diff options
Diffstat (limited to 'lib/emscripten/libwrapper.js')
-rw-r--r-- | lib/emscripten/libwrapper.js | 146142 |
1 files changed, 146142 insertions, 0 deletions
diff --git a/lib/emscripten/libwrapper.js b/lib/emscripten/libwrapper.js new file mode 100644 index 000000000..66b78e910 --- /dev/null +++ b/lib/emscripten/libwrapper.js @@ -0,0 +1,146142 @@ +// The Module object: Our interface to the outside world. We import +// and export values on it, and do the work to get that through +// closure compiler if necessary. There are various ways Module can be used: +// 1. Not defined. We create it here +// 2. A function parameter, function(Module) { ..generated code.. } +// 3. pre-run appended it, var Module = {}; ..generated code.. +// 4. External script tag defines var Module. +// We need to do an eval in order to handle the closure compiler +// case, where this code here is minified but Module was defined +// elsewhere (e.g. case 4 above). We also need to check if Module +// already exists (e.g. case 3 above). +// Note that if you want to run closure, and also to use Module +// after the generated code, you will need to define var Module = {}; +// before the code. Then that object will be used in the code, and you +// can continue to use Module afterwards as well. +var Module; +if (!Module) Module = (typeof Module !== 'undefined' ? Module : null) || {}; + +// Sometimes an existing Module object exists with properties +// meant to overwrite the default module functionality. Here +// we collect those properties and reapply _after_ we configure +// the current environment's defaults to avoid having to be so +// defensive during initialization. +var moduleOverrides = {}; +for (var key in Module) { + if (Module.hasOwnProperty(key)) { + moduleOverrides[key] = Module[key]; + } +} + +// The environment setup code below is customized to use Module. +// *** Environment setup code *** +var ENVIRONMENT_IS_WEB = typeof window === 'object'; +// Three configurations we can be running in: +// 1) We could be the application main() thread running in the main JS UI thread. (ENVIRONMENT_IS_WORKER == false and ENVIRONMENT_IS_PTHREAD == false) +// 2) We could be the application main() thread proxied to worker. (with Emscripten -s PROXY_TO_WORKER=1) (ENVIRONMENT_IS_WORKER == true, ENVIRONMENT_IS_PTHREAD == false) +// 3) We could be an application pthread running in a worker. (ENVIRONMENT_IS_WORKER == true and ENVIRONMENT_IS_PTHREAD == true) +var ENVIRONMENT_IS_WORKER = typeof importScripts === 'function'; +var ENVIRONMENT_IS_NODE = typeof process === 'object' && typeof require === 'function' && !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_WORKER; +var ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER; + +if (ENVIRONMENT_IS_NODE) { + // Expose functionality in the same simple way that the shells work + // Note that we pollute the global namespace here, otherwise we break in node + if (!Module['print']) Module['print'] = function print(x) { + process['stdout'].write(x + '\n'); + }; + if (!Module['printErr']) Module['printErr'] = function printErr(x) { + process['stderr'].write(x + '\n'); + }; + + var nodeFS = require('fs'); + var nodePath = require('path'); + + Module['read'] = function read(filename, binary) { + filename = nodePath['normalize'](filename); + var ret = nodeFS['readFileSync'](filename); + // The path is absolute if the normalized version is the same as the resolved. + if (!ret && filename != nodePath['resolve'](filename)) { + filename = path.join(__dirname, '..', 'src', filename); + ret = nodeFS['readFileSync'](filename); + } + if (ret && !binary) ret = ret.toString(); + return ret; + }; + + Module['readBinary'] = function readBinary(filename) { + var ret = Module['read'](filename, true); + if (!ret.buffer) { + ret = new Uint8Array(ret); + } + assert(ret.buffer); + return ret; + }; + + Module['load'] = function load(f) { + globalEval(read(f)); + }; + + if (!Module['thisProgram']) { + if (process['argv'].length > 1) { + Module['thisProgram'] = process['argv'][1].replace(/\\/g, '/'); + } else { + Module['thisProgram'] = 'unknown-program'; + } + } + + Module['arguments'] = process['argv'].slice(2); + + if (typeof module !== 'undefined') { + module['exports'] = Module; + } + + process['on']('uncaughtException', function(ex) { + // suppress ExitStatus exceptions from showing an error + if (!(ex instanceof ExitStatus)) { + throw ex; + } + }); + + Module['inspect'] = function () { return '[Emscripten Module object]'; }; +} +else if (ENVIRONMENT_IS_SHELL) { + if (!Module['print']) Module['print'] = print; + if (typeof printErr != 'undefined') Module['printErr'] = printErr; // not present in v8 or older sm + + if (typeof read != 'undefined') { + Module['read'] = read; + } else { + Module['read'] = function read() { throw 'no read() available (jsc?)' }; + } + + Module['readBinary'] = function readBinary(f) { + if (typeof readbuffer === 'function') { + return new Uint8Array(readbuffer(f)); + } + var data = read(f, 'binary'); + assert(typeof data === 'object'); + return data; + }; + + if (typeof scriptArgs != 'undefined') { + Module['arguments'] = scriptArgs; + } else if (typeof arguments != 'undefined') { + Module['arguments'] = arguments; + } + +} +else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) { + Module['read'] = function read(url) { + var xhr = new XMLHttpRequest(); + xhr.open('GET', url, false); + xhr.send(null); + return xhr.responseText; + }; + + if (typeof arguments != 'undefined') { + Module['arguments'] = arguments; + } + + if (typeof console !== 'undefined') { + if (!Module['print']) Module['print'] = function print(x) { + console.log(x); + }; + if (!Module['printErr']) Module['printErr'] = function printErr(x) { + console.log(x); + }; + } else { + // Probably a worker, and without console.log. We can do very little here... + var TRY_USE_DUMP = false; + if (!Module['print']) Module['print'] = (TRY_USE_DUMP && (typeof(dump) !== "undefined") ? (function(x) { + dump(x); + }) : (function(x) { + // self.postMessage(x); // enable this if you want stdout to be sent as messages + })); + } + + if (ENVIRONMENT_IS_WORKER) { + Module['load'] = importScripts; + } + + if (typeof Module['setWindowTitle'] === 'undefined') { + Module['setWindowTitle'] = function(title) { document.title = title }; + } +} +else { + // Unreachable because SHELL is dependant on the others + throw 'Unknown runtime environment. Where are we?'; +} + +function globalEval(x) { + abort('NO_DYNAMIC_EXECUTION=1 was set, cannot eval'); +} +if (!Module['load'] && Module['read']) { + Module['load'] = function load(f) { + globalEval(Module['read'](f)); + }; +} +if (!Module['print']) { + Module['print'] = function(){}; +} +if (!Module['printErr']) { + Module['printErr'] = Module['print']; +} +if (!Module['arguments']) { + Module['arguments'] = []; +} +if (!Module['thisProgram']) { + Module['thisProgram'] = './this.program'; +} + +// *** Environment setup code *** + +// Closure helpers +Module.print = Module['print']; +Module.printErr = Module['printErr']; + +// Callbacks +Module['preRun'] = []; +Module['postRun'] = []; + +// Merge back in the overrides +for (var key in moduleOverrides) { + if (moduleOverrides.hasOwnProperty(key)) { + Module[key] = moduleOverrides[key]; + } +} + + + +// {{PREAMBLE_ADDITIONS}} + +// === Preamble library stuff === + +// Documentation for the public APIs defined in this file must be updated in: +// site/source/docs/api_reference/preamble.js.rst +// A prebuilt local version of the documentation is available at: +// site/build/text/docs/api_reference/preamble.js.txt +// You can also build docs locally as HTML or other formats in site/ +// An online HTML version (which may be of a different version of Emscripten) +// is up at http://kripken.github.io/emscripten-site/docs/api_reference/preamble.js.html + +//======================================== +// Runtime code shared with compiler +//======================================== + +var Runtime = { + setTempRet0: function (value) { + tempRet0 = value; + }, + getTempRet0: function () { + return tempRet0; + }, + stackSave: function () { + return STACKTOP; + }, + stackRestore: function (stackTop) { + STACKTOP = stackTop; + }, + getNativeTypeSize: function (type) { + switch (type) { + case 'i1': case 'i8': return 1; + case 'i16': return 2; + case 'i32': return 4; + case 'i64': return 8; + case 'float': return 4; + case 'double': return 8; + default: { + if (type[type.length-1] === '*') { + return Runtime.QUANTUM_SIZE; // A pointer + } else if (type[0] === 'i') { + var bits = parseInt(type.substr(1)); + assert(bits % 8 === 0); + return bits/8; + } else { + return 0; + } + } + } + }, + getNativeFieldSize: function (type) { + return Math.max(Runtime.getNativeTypeSize(type), Runtime.QUANTUM_SIZE); + }, + STACK_ALIGN: 16, + prepVararg: function (ptr, type) { + if (type === 'double' || type === 'i64') { + // move so the load is aligned + if (ptr & 7) { + assert((ptr & 7) === 4); + ptr += 4; + } + } else { + assert((ptr & 3) === 0); + } + return ptr; + }, + getAlignSize: function (type, size, vararg) { + // we align i64s and doubles on 64-bit boundaries, unlike x86 + if (!vararg && (type == 'i64' || type == 'double')) return 8; + if (!type) return Math.min(size, 8); // align structures internally to 64 bits + return Math.min(size || (type ? Runtime.getNativeFieldSize(type) : 0), Runtime.QUANTUM_SIZE); + }, + dynCall: function (sig, ptr, args) { + if (args && args.length) { + assert(args.length == sig.length-1); + if (!args.splice) args = Array.prototype.slice.call(args); + args.splice(0, 0, ptr); + assert(('dynCall_' + sig) in Module, 'bad function pointer type - no table for sig \'' + sig + '\''); + return Module['dynCall_' + sig].apply(null, args); + } else { + assert(sig.length == 1); + assert(('dynCall_' + sig) in Module, 'bad function pointer type - no table for sig \'' + sig + '\''); + return Module['dynCall_' + sig].call(null, ptr); + } + }, + functionPointers: [], + addFunction: function (func) { + for (var i = 0; i < Runtime.functionPointers.length; i++) { + if (!Runtime.functionPointers[i]) { + Runtime.functionPointers[i] = func; + return 2*(1 + i); + } + } + throw 'Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS.'; + }, + removeFunction: function (index) { + Runtime.functionPointers[(index-2)/2] = null; + }, + warnOnce: function (text) { + if (!Runtime.warnOnce.shown) Runtime.warnOnce.shown = {}; + if (!Runtime.warnOnce.shown[text]) { + Runtime.warnOnce.shown[text] = 1; + Module.printErr(text); + } + }, + funcWrappers: {}, + getFuncWrapper: function (func, sig) { + assert(sig); + if (!Runtime.funcWrappers[sig]) { + Runtime.funcWrappers[sig] = {}; + } + var sigCache = Runtime.funcWrappers[sig]; + if (!sigCache[func]) { + sigCache[func] = function dynCall_wrapper() { + return Runtime.dynCall(sig, func, arguments); + }; + } + return sigCache[func]; + }, + getCompilerSetting: function (name) { + throw 'You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work'; + }, + stackAlloc: function (size) { var ret = STACKTOP;STACKTOP = (STACKTOP + size)|0;STACKTOP = (((STACKTOP)+15)&-16);(assert((((STACKTOP|0) < (STACK_MAX|0))|0))|0); return ret; }, + staticAlloc: function (size) { var ret = STATICTOP;STATICTOP = (STATICTOP + (assert(!staticSealed),size))|0;STATICTOP = (((STATICTOP)+15)&-16); return ret; }, + dynamicAlloc: function (size) { var ret = DYNAMICTOP;DYNAMICTOP = (DYNAMICTOP + (assert(DYNAMICTOP > 0),size))|0;DYNAMICTOP = (((DYNAMICTOP)+15)&-16); if (DYNAMICTOP >= TOTAL_MEMORY) { var success = enlargeMemory(); if (!success) { DYNAMICTOP = ret; return 0; } }; return ret; }, + alignMemory: function (size,quantum) { var ret = size = Math.ceil((size)/(quantum ? quantum : 16))*(quantum ? quantum : 16); return ret; }, + makeBigInt: function (low,high,unsigned) { var ret = (unsigned ? ((+((low>>>0)))+((+((high>>>0)))*4294967296.0)) : ((+((low>>>0)))+((+((high|0)))*4294967296.0))); return ret; }, + GLOBAL_BASE: 8, + QUANTUM_SIZE: 4, + __dummy__: 0 +} + + + +Module["Runtime"] = Runtime; + + + +//======================================== +// Runtime essentials +//======================================== + +var __THREW__ = 0; // Used in checking for thrown exceptions. + +var ABORT = false; // whether we are quitting the application. no code should run after this. set in exit() and abort() +var EXITSTATUS = 0; + +var undef = 0; +// tempInt is used for 32-bit signed values or smaller. tempBigInt is used +// for 32-bit unsigned values or more than 32 bits. TODO: audit all uses of tempInt +var tempValue, tempInt, tempBigInt, tempInt2, tempBigInt2, tempPair, tempBigIntI, tempBigIntR, tempBigIntS, tempBigIntP, tempBigIntD, tempDouble, tempFloat; +var tempI64, tempI64b; +var tempRet0, tempRet1, tempRet2, tempRet3, tempRet4, tempRet5, tempRet6, tempRet7, tempRet8, tempRet9; + +function assert(condition, text) { + if (!condition) { + abort('Assertion failed: ' + text); + } +} + +var globalScope = this; + +// Returns the C function with a specified identifier (for C++, you need to do manual name mangling) +function getCFunc(ident) { + var func = Module['_' + ident]; // closure exported function + if (!func) { + abort('NO_DYNAMIC_EXECUTION=1 was set, cannot eval'); + } + assert(func, 'Cannot call unknown function ' + ident + ' (perhaps LLVM optimizations or closure removed it?)'); + return func; +} + +var cwrap, ccall; +(function(){ + var JSfuncs = { + // Helpers for cwrap -- it can't refer to Runtime directly because it might + // be renamed by closure, instead it calls JSfuncs['stackSave'].body to find + // out what the minified function name is. + 'stackSave': function() { + Runtime.stackSave() + }, + 'stackRestore': function() { + Runtime.stackRestore() + }, + // type conversion from js to c + 'arrayToC' : function(arr) { + var ret = Runtime.stackAlloc(arr.length); + writeArrayToMemory(arr, ret); + return ret; + }, + 'stringToC' : function(str) { + var ret = 0; + if (str !== null && str !== undefined && str !== 0) { // null string + // at most 4 bytes per UTF-8 code point, +1 for the trailing '\0' + ret = Runtime.stackAlloc((str.length << 2) + 1); + writeStringToMemory(str, ret); + } + return ret; + } + }; + // For fast lookup of conversion functions + var toC = {'string' : JSfuncs['stringToC'], 'array' : JSfuncs['arrayToC']}; + + // C calling interface. + ccall = function ccallFunc(ident, returnType, argTypes, args, opts) { + var func = getCFunc(ident); + var cArgs = []; + var stack = 0; + assert(returnType !== 'array', 'Return type should not be "array".'); + if (args) { + for (var i = 0; i < args.length; i++) { + var converter = toC[argTypes[i]]; + if (converter) { + if (stack === 0) stack = Runtime.stackSave(); + cArgs[i] = converter(args[i]); + } else { + cArgs[i] = args[i]; + } + } + } + var ret = func.apply(null, cArgs); + if ((!opts || !opts.async) && typeof EmterpreterAsync === 'object') { + assert(!EmterpreterAsync.state, 'cannot start async op with normal JS calling ccall'); + } + if (opts && opts.async) assert(!returnType, 'async ccalls cannot return values'); + if (returnType === 'string') ret = Pointer_stringify(ret); + if (stack !== 0) { + if (opts && opts.async) { + EmterpreterAsync.asyncFinalizers.push(function() { + Runtime.stackRestore(stack); + }); + return; + } + Runtime.stackRestore(stack); + } + return ret; + } + + // NO_DYNAMIC_EXECUTION is on, so we can't use the fast version of cwrap. + // Fall back to returning a bound version of ccall. + cwrap = function cwrap(ident, returnType, argTypes) { + return function() { + Runtime.warnOnce('NO_DYNAMIC_EXECUTION was set, ' + + 'using slow cwrap implementation'); + return ccall(ident, returnType, argTypes, arguments); + } + } +})(); +Module["ccall"] = ccall; +Module["cwrap"] = cwrap; + +function setValue(ptr, value, type, noSafe) { + type = type || 'i8'; + if (type.charAt(type.length-1) === '*') type = 'i32'; // pointers are 32-bit + switch(type) { + case 'i1': HEAP8[((ptr)>>0)]=value; break; + case 'i8': HEAP8[((ptr)>>0)]=value; break; + case 'i16': HEAP16[((ptr)>>1)]=value; break; + case 'i32': HEAP32[((ptr)>>2)]=value; break; + case 'i64': (tempI64 = [value>>>0,(tempDouble=value,(+(Math_abs(tempDouble))) >= 1.0 ? (tempDouble > 0.0 ? ((Math_min((+(Math_floor((tempDouble)/4294967296.0))), 4294967295.0))|0)>>>0 : (~~((+(Math_ceil((tempDouble - +(((~~(tempDouble)))>>>0))/4294967296.0)))))>>>0) : 0)],HEAP32[((ptr)>>2)]=tempI64[0],HEAP32[(((ptr)+(4))>>2)]=tempI64[1]); break; + case 'float': HEAPF32[((ptr)>>2)]=value; break; + case 'double': HEAPF64[((ptr)>>3)]=value; break; + default: abort('invalid type for setValue: ' + type); + } +} +Module["setValue"] = setValue; + + +function getValue(ptr, type, noSafe) { + type = type || 'i8'; + if (type.charAt(type.length-1) === '*') type = 'i32'; // pointers are 32-bit + switch(type) { + case 'i1': return HEAP8[((ptr)>>0)]; + case 'i8': return HEAP8[((ptr)>>0)]; + case 'i16': return HEAP16[((ptr)>>1)]; + case 'i32': return HEAP32[((ptr)>>2)]; + case 'i64': return HEAP32[((ptr)>>2)]; + case 'float': return HEAPF32[((ptr)>>2)]; + case 'double': return HEAPF64[((ptr)>>3)]; + default: abort('invalid type for setValue: ' + type); + } + return null; +} +Module["getValue"] = getValue; + +var ALLOC_NORMAL = 0; // Tries to use _malloc() +var ALLOC_STACK = 1; // Lives for the duration of the current function call +var ALLOC_STATIC = 2; // Cannot be freed +var ALLOC_DYNAMIC = 3; // Cannot be freed except through sbrk +var ALLOC_NONE = 4; // Do not allocate +Module["ALLOC_NORMAL"] = ALLOC_NORMAL; +Module["ALLOC_STACK"] = ALLOC_STACK; +Module["ALLOC_STATIC"] = ALLOC_STATIC; +Module["ALLOC_DYNAMIC"] = ALLOC_DYNAMIC; +Module["ALLOC_NONE"] = ALLOC_NONE; + +// allocate(): This is for internal use. You can use it yourself as well, but the interface +// is a little tricky (see docs right below). The reason is that it is optimized +// for multiple syntaxes to save space in generated code. So you should +// normally not use allocate(), and instead allocate memory using _malloc(), +// initialize it with setValue(), and so forth. +// @slab: An array of data, or a number. If a number, then the size of the block to allocate, +// in *bytes* (note that this is sometimes confusing: the next parameter does not +// affect this!) +// @types: Either an array of types, one for each byte (or 0 if no type at that position), +// or a single type which is used for the entire block. This only matters if there +// is initial data - if @slab is a number, then this does not matter at all and is +// ignored. +// @allocator: How to allocate memory, see ALLOC_* +function allocate(slab, types, allocator, ptr) { + var zeroinit, size; + if (typeof slab === 'number') { + zeroinit = true; + size = slab; + } else { + zeroinit = false; + size = slab.length; + } + + var singleType = typeof types === 'string' ? types : null; + + var ret; + if (allocator == ALLOC_NONE) { + ret = ptr; + } else { + ret = [typeof _malloc === 'function' ? _malloc : Runtime.staticAlloc, Runtime.stackAlloc, Runtime.staticAlloc, Runtime.dynamicAlloc][allocator === undefined ? ALLOC_STATIC : allocator](Math.max(size, singleType ? 1 : types.length)); + } + + if (zeroinit) { + var ptr = ret, stop; + assert((ret & 3) == 0); + stop = ret + (size & ~3); + for (; ptr < stop; ptr += 4) { + HEAP32[((ptr)>>2)]=0; + } + stop = ret + size; + while (ptr < stop) { + HEAP8[((ptr++)>>0)]=0; + } + return ret; + } + + if (singleType === 'i8') { + if (slab.subarray || slab.slice) { + HEAPU8.set(slab, ret); + } else { + HEAPU8.set(new Uint8Array(slab), ret); + } + return ret; + } + + var i = 0, type, typeSize, previousType; + while (i < size) { + var curr = slab[i]; + + if (typeof curr === 'function') { + curr = Runtime.getFunctionIndex(curr); + } + + type = singleType || types[i]; + if (type === 0) { + i++; + continue; + } + assert(type, 'Must know what type to store in allocate!'); + + if (type == 'i64') type = 'i32'; // special case: we have one i32 here, and one i32 later + + setValue(ret+i, curr, type); + + // no need to look up size unless type changes, so cache it + if (previousType !== type) { + typeSize = Runtime.getNativeTypeSize(type); + previousType = type; + } + i += typeSize; + } + + return ret; +} +Module["allocate"] = allocate; + +// Allocate memory during any stage of startup - static memory early on, dynamic memory later, malloc when ready +function getMemory(size) { + if (!staticSealed) return Runtime.staticAlloc(size); + if ((typeof _sbrk !== 'undefined' && !_sbrk.called) || !runtimeInitialized) return Runtime.dynamicAlloc(size); + return _malloc(size); +} +Module["getMemory"] = getMemory; + +function Pointer_stringify(ptr, /* optional */ length) { + if (length === 0 || !ptr) return ''; + // TODO: use TextDecoder + // Find the length, and check for UTF while doing so + var hasUtf = 0; + var t; + var i = 0; + while (1) { + assert(ptr + i < TOTAL_MEMORY); + t = HEAPU8[(((ptr)+(i))>>0)]; + hasUtf |= t; + if (t == 0 && !length) break; + i++; + if (length && i == length) break; + } + if (!length) length = i; + + var ret = ''; + + if (hasUtf < 128) { + var MAX_CHUNK = 1024; // split up into chunks, because .apply on a huge string can overflow the stack + var curr; + while (length > 0) { + curr = String.fromCharCode.apply(String, HEAPU8.subarray(ptr, ptr + Math.min(length, MAX_CHUNK))); + ret = ret ? ret + curr : curr; + ptr += MAX_CHUNK; + length -= MAX_CHUNK; + } + return ret; + } + return Module['UTF8ToString'](ptr); +} +Module["Pointer_stringify"] = Pointer_stringify; + +// Given a pointer 'ptr' to a null-terminated ASCII-encoded string in the emscripten HEAP, returns +// a copy of that string as a Javascript String object. + +function AsciiToString(ptr) { + var str = ''; + while (1) { + var ch = HEAP8[((ptr++)>>0)]; + if (!ch) return str; + str += String.fromCharCode(ch); + } +} +Module["AsciiToString"] = AsciiToString; + +// Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', +// null-terminated and encoded in ASCII form. The copy will require at most str.length+1 bytes of space in the HEAP. + +function stringToAscii(str, outPtr) { + return writeAsciiToMemory(str, outPtr, false); +} +Module["stringToAscii"] = stringToAscii; + +// Given a pointer 'ptr' to a null-terminated UTF8-encoded string in the given array that contains uint8 values, returns +// a copy of that string as a Javascript String object. + +function UTF8ArrayToString(u8Array, idx) { + var u0, u1, u2, u3, u4, u5; + + var str = ''; + while (1) { + // For UTF8 byte structure, see http://en.wikipedia.org/wiki/UTF-8#Description and https://www.ietf.org/rfc/rfc2279.txt and https://tools.ietf.org/html/rfc3629 + u0 = u8Array[idx++]; + if (!u0) return str; + if (!(u0 & 0x80)) { str += String.fromCharCode(u0); continue; } + u1 = u8Array[idx++] & 63; + if ((u0 & 0xE0) == 0xC0) { str += String.fromCharCode(((u0 & 31) << 6) | u1); continue; } + u2 = u8Array[idx++] & 63; + if ((u0 & 0xF0) == 0xE0) { + u0 = ((u0 & 15) << 12) | (u1 << 6) | u2; + } else { + u3 = u8Array[idx++] & 63; + if ((u0 & 0xF8) == 0xF0) { + u0 = ((u0 & 7) << 18) | (u1 << 12) | (u2 << 6) | u3; + } else { + u4 = u8Array[idx++] & 63; + if ((u0 & 0xFC) == 0xF8) { + u0 = ((u0 & 3) << 24) | (u1 << 18) | (u2 << 12) | (u3 << 6) | u4; + } else { + u5 = u8Array[idx++] & 63; + u0 = ((u0 & 1) << 30) | (u1 << 24) | (u2 << 18) | (u3 << 12) | (u4 << 6) | u5; + } + } + } + if (u0 < 0x10000) { + str += String.fromCharCode(u0); + } else { + var ch = u0 - 0x10000; + str += String.fromCharCode(0xD800 | (ch >> 10), 0xDC00 | (ch & 0x3FF)); + } + } +} +Module["UTF8ArrayToString"] = UTF8ArrayToString; + +// Given a pointer 'ptr' to a null-terminated UTF8-encoded string in the emscripten HEAP, returns +// a copy of that string as a Javascript String object. + +function UTF8ToString(ptr) { + return UTF8ArrayToString(HEAPU8,ptr); +} +Module["UTF8ToString"] = UTF8ToString; + +// Copies the given Javascript String object 'str' to the given byte array at address 'outIdx', +// encoded in UTF8 form and null-terminated. The copy will require at most str.length*4+1 bytes of space in the HEAP. +// Use the function lengthBytesUTF8() to compute the exact number of bytes (excluding null terminator) that this function will write. +// Parameters: +// str: the Javascript string to copy. +// outU8Array: the array to copy to. Each index in this array is assumed to be one 8-byte element. +// outIdx: The starting offset in the array to begin the copying. +// maxBytesToWrite: The maximum number of bytes this function can write to the array. This count should include the null +// terminator, i.e. if maxBytesToWrite=1, only the null terminator will be written and nothing else. +// maxBytesToWrite=0 does not write any bytes to the output, not even the null terminator. +// Returns the number of bytes written, EXCLUDING the null terminator. + +function stringToUTF8Array(str, outU8Array, outIdx, maxBytesToWrite) { + if (!(maxBytesToWrite > 0)) // Parameter maxBytesToWrite is not optional. Negative values, 0, null, undefined and false each don't write out any bytes. + return 0; + + var startIdx = outIdx; + var endIdx = outIdx + maxBytesToWrite - 1; // -1 for string null terminator. + for (var i = 0; i < str.length; ++i) { + // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! So decode UTF16->UTF32->UTF8. + // See http://unicode.org/faq/utf_bom.html#utf16-3 + // For UTF8 byte structure, see http://en.wikipedia.org/wiki/UTF-8#Description and https://www.ietf.org/rfc/rfc2279.txt and https://tools.ietf.org/html/rfc3629 + var u = str.charCodeAt(i); // possibly a lead surrogate + if (u >= 0xD800 && u <= 0xDFFF) u = 0x10000 + ((u & 0x3FF) << 10) | (str.charCodeAt(++i) & 0x3FF); + if (u <= 0x7F) { + if (outIdx >= endIdx) break; + outU8Array[outIdx++] = u; + } else if (u <= 0x7FF) { + if (outIdx + 1 >= endIdx) break; + outU8Array[outIdx++] = 0xC0 | (u >> 6); + outU8Array[outIdx++] = 0x80 | (u & 63); + } else if (u <= 0xFFFF) { + if (outIdx + 2 >= endIdx) break; + outU8Array[outIdx++] = 0xE0 | (u >> 12); + outU8Array[outIdx++] = 0x80 | ((u >> 6) & 63); + outU8Array[outIdx++] = 0x80 | (u & 63); + } else if (u <= 0x1FFFFF) { + if (outIdx + 3 >= endIdx) break; + outU8Array[outIdx++] = 0xF0 | (u >> 18); + outU8Array[outIdx++] = 0x80 | ((u >> 12) & 63); + outU8Array[outIdx++] = 0x80 | ((u >> 6) & 63); + outU8Array[outIdx++] = 0x80 | (u & 63); + } else if (u <= 0x3FFFFFF) { + if (outIdx + 4 >= endIdx) break; + outU8Array[outIdx++] = 0xF8 | (u >> 24); + outU8Array[outIdx++] = 0x80 | ((u >> 18) & 63); + outU8Array[outIdx++] = 0x80 | ((u >> 12) & 63); + outU8Array[outIdx++] = 0x80 | ((u >> 6) & 63); + outU8Array[outIdx++] = 0x80 | (u & 63); + } else { + if (outIdx + 5 >= endIdx) break; + outU8Array[outIdx++] = 0xFC | (u >> 30); + outU8Array[outIdx++] = 0x80 | ((u >> 24) & 63); + outU8Array[outIdx++] = 0x80 | ((u >> 18) & 63); + outU8Array[outIdx++] = 0x80 | ((u >> 12) & 63); + outU8Array[outIdx++] = 0x80 | ((u >> 6) & 63); + outU8Array[outIdx++] = 0x80 | (u & 63); + } + } + // Null-terminate the pointer to the buffer. + outU8Array[outIdx] = 0; + return outIdx - startIdx; +} +Module["stringToUTF8Array"] = stringToUTF8Array; + +// Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', +// null-terminated and encoded in UTF8 form. The copy will require at most str.length*4+1 bytes of space in the HEAP. +// Use the function lengthBytesUTF8() to compute the exact number of bytes (excluding null terminator) that this function will write. +// Returns the number of bytes written, EXCLUDING the null terminator. + +function stringToUTF8(str, outPtr, maxBytesToWrite) { + assert(typeof maxBytesToWrite == 'number', 'stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!'); + return stringToUTF8Array(str, HEAPU8,outPtr, maxBytesToWrite); +} +Module["stringToUTF8"] = stringToUTF8; + +// Returns the number of bytes the given Javascript string takes if encoded as a UTF8 byte array, EXCLUDING the null terminator byte. + +function lengthBytesUTF8(str) { + var len = 0; + for (var i = 0; i < str.length; ++i) { + // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! So decode UTF16->UTF32->UTF8. + // See http://unicode.org/faq/utf_bom.html#utf16-3 + var u = str.charCodeAt(i); // possibly a lead surrogate + if (u >= 0xD800 && u <= 0xDFFF) u = 0x10000 + ((u & 0x3FF) << 10) | (str.charCodeAt(++i) & 0x3FF); + if (u <= 0x7F) { + ++len; + } else if (u <= 0x7FF) { + len += 2; + } else if (u <= 0xFFFF) { + len += 3; + } else if (u <= 0x1FFFFF) { + len += 4; + } else if (u <= 0x3FFFFFF) { + len += 5; + } else { + len += 6; + } + } + return len; +} +Module["lengthBytesUTF8"] = lengthBytesUTF8; + +// Given a pointer 'ptr' to a null-terminated UTF16LE-encoded string in the emscripten HEAP, returns +// a copy of that string as a Javascript String object. + +function UTF16ToString(ptr) { + var i = 0; + + var str = ''; + while (1) { + var codeUnit = HEAP16[(((ptr)+(i*2))>>1)]; + if (codeUnit == 0) + return str; + ++i; + // fromCharCode constructs a character from a UTF-16 code unit, so we can pass the UTF16 string right through. + str += String.fromCharCode(codeUnit); + } +} +Module["UTF16ToString"] = UTF16ToString; + +// Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', +// null-terminated and encoded in UTF16 form. The copy will require at most str.length*4+2 bytes of space in the HEAP. +// Use the function lengthBytesUTF16() to compute the exact number of bytes (excluding null terminator) that this function will write. +// Parameters: +// str: the Javascript string to copy. +// outPtr: Byte address in Emscripten HEAP where to write the string to. +// maxBytesToWrite: The maximum number of bytes this function can write to the array. This count should include the null +// terminator, i.e. if maxBytesToWrite=2, only the null terminator will be written and nothing else. +// maxBytesToWrite<2 does not write any bytes to the output, not even the null terminator. +// Returns the number of bytes written, EXCLUDING the null terminator. + +function stringToUTF16(str, outPtr, maxBytesToWrite) { + assert(typeof maxBytesToWrite == 'number', 'stringToUTF16(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!'); + // Backwards compatibility: if max bytes is not specified, assume unsafe unbounded write is allowed. + if (maxBytesToWrite === undefined) { + maxBytesToWrite = 0x7FFFFFFF; + } + if (maxBytesToWrite < 2) return 0; + maxBytesToWrite -= 2; // Null terminator. + var startPtr = outPtr; + var numCharsToWrite = (maxBytesToWrite < str.length*2) ? (maxBytesToWrite / 2) : str.length; + for (var i = 0; i < numCharsToWrite; ++i) { + // charCodeAt returns a UTF-16 encoded code unit, so it can be directly written to the HEAP. + var codeUnit = str.charCodeAt(i); // possibly a lead surrogate + HEAP16[((outPtr)>>1)]=codeUnit; + outPtr += 2; + } + // Null-terminate the pointer to the HEAP. + HEAP16[((outPtr)>>1)]=0; + return outPtr - startPtr; +} +Module["stringToUTF16"] = stringToUTF16; + +// Returns the number of bytes the given Javascript string takes if encoded as a UTF16 byte array, EXCLUDING the null terminator byte. + +function lengthBytesUTF16(str) { + return str.length*2; +} +Module["lengthBytesUTF16"] = lengthBytesUTF16; + +function UTF32ToString(ptr) { + var i = 0; + + var str = ''; + while (1) { + var utf32 = HEAP32[(((ptr)+(i*4))>>2)]; + if (utf32 == 0) + return str; + ++i; + // Gotcha: fromCharCode constructs a character from a UTF-16 encoded code (pair), not from a Unicode code point! So encode the code point to UTF-16 for constructing. + // See http://unicode.org/faq/utf_bom.html#utf16-3 + if (utf32 >= 0x10000) { + var ch = utf32 - 0x10000; + str += String.fromCharCode(0xD800 | (ch >> 10), 0xDC00 | (ch & 0x3FF)); + } else { + str += String.fromCharCode(utf32); + } + } +} +Module["UTF32ToString"] = UTF32ToString; + +// Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', +// null-terminated and encoded in UTF32 form. The copy will require at most str.length*4+4 bytes of space in the HEAP. +// Use the function lengthBytesUTF32() to compute the exact number of bytes (excluding null terminator) that this function will write. +// Parameters: +// str: the Javascript string to copy. +// outPtr: Byte address in Emscripten HEAP where to write the string to. +// maxBytesToWrite: The maximum number of bytes this function can write to the array. This count should include the null +// terminator, i.e. if maxBytesToWrite=4, only the null terminator will be written and nothing else. +// maxBytesToWrite<4 does not write any bytes to the output, not even the null terminator. +// Returns the number of bytes written, EXCLUDING the null terminator. + +function stringToUTF32(str, outPtr, maxBytesToWrite) { + assert(typeof maxBytesToWrite == 'number', 'stringToUTF32(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!'); + // Backwards compatibility: if max bytes is not specified, assume unsafe unbounded write is allowed. + if (maxBytesToWrite === undefined) { + maxBytesToWrite = 0x7FFFFFFF; + } + if (maxBytesToWrite < 4) return 0; + var startPtr = outPtr; + var endPtr = startPtr + maxBytesToWrite - 4; + for (var i = 0; i < str.length; ++i) { + // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! We must decode the string to UTF-32 to the heap. + // See http://unicode.org/faq/utf_bom.html#utf16-3 + var codeUnit = str.charCodeAt(i); // possibly a lead surrogate + if (codeUnit >= 0xD800 && codeUnit <= 0xDFFF) { + var trailSurrogate = str.charCodeAt(++i); + codeUnit = 0x10000 + ((codeUnit & 0x3FF) << 10) | (trailSurrogate & 0x3FF); + } + HEAP32[((outPtr)>>2)]=codeUnit; + outPtr += 4; + if (outPtr + 4 > endPtr) break; + } + // Null-terminate the pointer to the HEAP. + HEAP32[((outPtr)>>2)]=0; + return outPtr - startPtr; +} +Module["stringToUTF32"] = stringToUTF32; + +// Returns the number of bytes the given Javascript string takes if encoded as a UTF16 byte array, EXCLUDING the null terminator byte. + +function lengthBytesUTF32(str) { + var len = 0; + for (var i = 0; i < str.length; ++i) { + // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! We must decode the string to UTF-32 to the heap. + // See http://unicode.org/faq/utf_bom.html#utf16-3 + var codeUnit = str.charCodeAt(i); + if (codeUnit >= 0xD800 && codeUnit <= 0xDFFF) ++i; // possibly a lead surrogate, so skip over the tail surrogate. + len += 4; + } + + return len; +} +Module["lengthBytesUTF32"] = lengthBytesUTF32; + +function demangle(func) { + var hasLibcxxabi = !!Module['___cxa_demangle']; + if (hasLibcxxabi) { + try { + var buf = _malloc(func.length); + writeStringToMemory(func.substr(1), buf); + var status = _malloc(4); + var ret = Module['___cxa_demangle'](buf, 0, 0, status); + if (getValue(status, 'i32') === 0 && ret) { + return Pointer_stringify(ret); + } + // otherwise, libcxxabi failed, we can try ours which may return a partial result + } catch(e) { + // failure when using libcxxabi, we can try ours which may return a partial result + } finally { + if (buf) _free(buf); + if (status) _free(status); + if (ret) _free(ret); + } + } + var i = 3; + // params, etc. + var basicTypes = { + 'v': 'void', + 'b': 'bool', + 'c': 'char', + 's': 'short', + 'i': 'int', + 'l': 'long', + 'f': 'float', + 'd': 'double', + 'w': 'wchar_t', + 'a': 'signed char', + 'h': 'unsigned char', + 't': 'unsigned short', + 'j': 'unsigned int', + 'm': 'unsigned long', + 'x': 'long long', + 'y': 'unsigned long long', + 'z': '...' + }; + var subs = []; + var first = true; + function dump(x) { + //return; + if (x) Module.print(x); + Module.print(func); + var pre = ''; + for (var a = 0; a < i; a++) pre += ' '; + Module.print (pre + '^'); + } + function parseNested() { + i++; + if (func[i] === 'K') i++; // ignore const + var parts = []; + while (func[i] !== 'E') { + if (func[i] === 'S') { // substitution + i++; + var next = func.indexOf('_', i); + var num = func.substring(i, next) || 0; + parts.push(subs[num] || '?'); + i = next+1; + continue; + } + if (func[i] === 'C') { // constructor + parts.push(parts[parts.length-1]); + i += 2; + continue; + } + var size = parseInt(func.substr(i)); + var pre = size.toString().length; + if (!size || !pre) { i--; break; } // counter i++ below us + var curr = func.substr(i + pre, size); + parts.push(curr); + subs.push(curr); + i += pre + size; + } + i++; // skip E + return parts; + } + function parse(rawList, limit, allowVoid) { // main parser + limit = limit || Infinity; + var ret = '', list = []; + function flushList() { + return '(' + list.join(', ') + ')'; + } + var name; + if (func[i] === 'N') { + // namespaced N-E + name = parseNested().join('::'); + limit--; + if (limit === 0) return rawList ? [name] : name; + } else { + // not namespaced + if (func[i] === 'K' || (first && func[i] === 'L')) i++; // ignore const and first 'L' + var size = parseInt(func.substr(i)); + if (size) { + var pre = size.toString().length; + name = func.substr(i + pre, size); + i += pre + size; + } + } + first = false; + if (func[i] === 'I') { + i++; + var iList = parse(true); + var iRet = parse(true, 1, true); + ret += iRet[0] + ' ' + name + '<' + iList.join(', ') + '>'; + } else { + ret = name; + } + paramLoop: while (i < func.length && limit-- > 0) { + //dump('paramLoop'); + var c = func[i++]; + if (c in basicTypes) { + list.push(basicTypes[c]); + } else { + switch (c) { + case 'P': list.push(parse(true, 1, true)[0] + '*'); break; // pointer + case 'R': list.push(parse(true, 1, true)[0] + '&'); break; // reference + case 'L': { // literal + i++; // skip basic type + var end = func.indexOf('E', i); + var size = end - i; + list.push(func.substr(i, size)); + i += size + 2; // size + 'EE' + break; + } + case 'A': { // array + var size = parseInt(func.substr(i)); + i += size.toString().length; + if (func[i] !== '_') throw '?'; + i++; // skip _ + list.push(parse(true, 1, true)[0] + ' [' + size + ']'); + break; + } + case 'E': break paramLoop; + default: ret += '?' + c; break paramLoop; + } + } + } + if (!allowVoid && list.length === 1 && list[0] === 'void') list = []; // avoid (void) + if (rawList) { + if (ret) { + list.push(ret + '?'); + } + return list; + } else { + return ret + flushList(); + } + } + var parsed = func; + try { + // Special-case the entry point, since its name differs from other name mangling. + if (func == 'Object._main' || func == '_main') { + return 'main()'; + } + if (typeof func === 'number') func = Pointer_stringify(func); + if (func[0] !== '_') return func; + if (func[1] !== '_') return func; // C function + if (func[2] !== 'Z') return func; + switch (func[3]) { + case 'n': return 'operator new()'; + case 'd': return 'operator delete()'; + } + parsed = parse(); + } catch(e) { + parsed += '?'; + } + if (parsed.indexOf('?') >= 0 && !hasLibcxxabi) { + Runtime.warnOnce('warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling'); + } + return parsed; +} + +function demangleAll(text) { + return text.replace(/__Z[\w\d_]+/g, function(x) { var y = demangle(x); return x === y ? x : (x + ' [' + y + ']') }); +} + +function jsStackTrace() { + var err = new Error(); + if (!err.stack) { + // IE10+ special cases: It does have callstack info, but it is only populated if an Error object is thrown, + // so try that as a special-case. + try { + throw new Error(0); + } catch(e) { + err = e; + } + if (!err.stack) { + return '(no stack trace available)'; + } + } + return err.stack.toString(); +} + +function stackTrace() { + return demangleAll(jsStackTrace()); +} +Module["stackTrace"] = stackTrace; + +// Memory management + +var PAGE_SIZE = 4096; + +function alignMemoryPage(x) { + if (x % 4096 > 0) { + x += (4096 - (x % 4096)); + } + return x; +} + +var HEAP; +var buffer; +var HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64; + +function updateGlobalBuffer(buf) { + Module['buffer'] = buffer = buf; +} + +function updateGlobalBufferViews() { + Module['HEAP8'] = HEAP8 = new Int8Array(buffer); + Module['HEAP16'] = HEAP16 = new Int16Array(buffer); + Module['HEAP32'] = HEAP32 = new Int32Array(buffer); + Module['HEAPU8'] = HEAPU8 = new Uint8Array(buffer); + Module['HEAPU16'] = HEAPU16 = new Uint16Array(buffer); + Module['HEAPU32'] = HEAPU32 = new Uint32Array(buffer); + Module['HEAPF32'] = HEAPF32 = new Float32Array(buffer); + Module['HEAPF64'] = HEAPF64 = new Float64Array(buffer); +} + +var STATIC_BASE = 0, STATICTOP = 0, staticSealed = false; // static area +var STACK_BASE = 0, STACKTOP = 0, STACK_MAX = 0; // stack area +var DYNAMIC_BASE = 0, DYNAMICTOP = 0; // dynamic area handled by sbrk + + +function abortOnCannotGrowMemory() { + abort('Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value ' + TOTAL_MEMORY + ', (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 '); +} + +function enlargeMemory() { + abortOnCannotGrowMemory(); +} + + +var TOTAL_STACK = Module['TOTAL_STACK'] || 5242880; +var TOTAL_MEMORY = Module['TOTAL_MEMORY'] || 16777216; + +var totalMemory = 64*1024; +while (totalMemory < TOTAL_MEMORY || totalMemory < 2*TOTAL_STACK) { + if (totalMemory < 16*1024*1024) { + totalMemory *= 2; + } else { + totalMemory += 16*1024*1024 + } +} +if (totalMemory !== TOTAL_MEMORY) { + Module.printErr('increasing TOTAL_MEMORY to ' + totalMemory + ' to be compliant with the asm.js spec (and given that TOTAL_STACK=' + TOTAL_STACK + ')'); + TOTAL_MEMORY = totalMemory; +} + +// Initialize the runtime's memory +// check for full engine support (use string 'subarray' to avoid closure compiler confusion) +assert(typeof Int32Array !== 'undefined' && typeof Float64Array !== 'undefined' && !!(new Int32Array(1)['subarray']) && !!(new Int32Array(1)['set']), + 'JS engine does not provide full typed array support'); + + + +// Use a provided buffer, if there is one, or else allocate a new one +if (Module['buffer']) { + buffer = Module['buffer']; + assert(buffer.byteLength === TOTAL_MEMORY, 'provided buffer should be ' + TOTAL_MEMORY + ' bytes, but it is ' + buffer.byteLength); +} else { + buffer = new ArrayBuffer(TOTAL_MEMORY); +} +updateGlobalBufferViews(); + + +// Endianness check (note: assumes compiler arch was little-endian) +HEAP32[0] = 255; +assert(HEAPU8[0] === 255 && HEAPU8[3] === 0, 'Typed arrays 2 must be run on a little-endian system'); + +Module['HEAP'] = HEAP; +Module['buffer'] = buffer; +Module['HEAP8'] = HEAP8; +Module['HEAP16'] = HEAP16; +Module['HEAP32'] = HEAP32; +Module['HEAPU8'] = HEAPU8; +Module['HEAPU16'] = HEAPU16; +Module['HEAPU32'] = HEAPU32; +Module['HEAPF32'] = HEAPF32; +Module['HEAPF64'] = HEAPF64; + +function callRuntimeCallbacks(callbacks) { + while(callbacks.length > 0) { + var callback = callbacks.shift(); + if (typeof callback == 'function') { + callback(); + continue; + } + var func = callback.func; + if (typeof func === 'number') { + if (callback.arg === undefined) { + Runtime.dynCall('v', func); + } else { + Runtime.dynCall('vi', func, [callback.arg]); + } + } else { + func(callback.arg === undefined ? null : callback.arg); + } + } +} + +var __ATPRERUN__ = []; // functions called before the runtime is initialized +var __ATINIT__ = []; // functions called during startup +var __ATMAIN__ = []; // functions called when main() is to be run +var __ATEXIT__ = []; // functions called during shutdown +var __ATPOSTRUN__ = []; // functions called after the runtime has exited + +var runtimeInitialized = false; +var runtimeExited = false; + + +function preRun() { + // compatibility - merge in anything from Module['preRun'] at this time + if (Module['preRun']) { + if (typeof Module['preRun'] == 'function') Module['preRun'] = [Module['preRun']]; + while (Module['preRun'].length) { + addOnPreRun(Module['preRun'].shift()); + } + } + callRuntimeCallbacks(__ATPRERUN__); +} + +function ensureInitRuntime() { + if (runtimeInitialized) return; + runtimeInitialized = true; + callRuntimeCallbacks(__ATINIT__); +} + +function preMain() { + callRuntimeCallbacks(__ATMAIN__); +} + +function exitRuntime() { + callRuntimeCallbacks(__ATEXIT__); + runtimeExited = true; +} + +function postRun() { + // compatibility - merge in anything from Module['postRun'] at this time + if (Module['postRun']) { + if (typeof Module['postRun'] == 'function') Module['postRun'] = [Module['postRun']]; + while (Module['postRun'].length) { + addOnPostRun(Module['postRun'].shift()); + } + } + callRuntimeCallbacks(__ATPOSTRUN__); +} + +function addOnPreRun(cb) { + __ATPRERUN__.unshift(cb); +} +Module["addOnPreRun"] = addOnPreRun; + +function addOnInit(cb) { + __ATINIT__.unshift(cb); +} +Module["addOnInit"] = addOnInit; + +function addOnPreMain(cb) { + __ATMAIN__.unshift(cb); +} +Module["addOnPreMain"] = addOnPreMain; + +function addOnExit(cb) { + __ATEXIT__.unshift(cb); +} +Module["addOnExit"] = addOnExit; + +function addOnPostRun(cb) { + __ATPOSTRUN__.unshift(cb); +} +Module["addOnPostRun"] = addOnPostRun; + +// Tools + + +function intArrayFromString(stringy, dontAddNull, length /* optional */) { + var len = length > 0 ? length : lengthBytesUTF8(stringy)+1; + var u8array = new Array(len); + var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length); + if (dontAddNull) u8array.length = numBytesWritten; + return u8array; +} +Module["intArrayFromString"] = intArrayFromString; + +function intArrayToString(array) { + var ret = []; + for (var i = 0; i < array.length; i++) { + var chr = array[i]; + if (chr > 0xFF) { + assert(false, 'Character code ' + chr + ' (' + String.fromCharCode(chr) + ') at offset ' + i + ' not in 0x00-0xFF.'); + chr &= 0xFF; + } + ret.push(String.fromCharCode(chr)); + } + return ret.join(''); +} +Module["intArrayToString"] = intArrayToString; + +function writeStringToMemory(string, buffer, dontAddNull) { + var array = intArrayFromString(string, dontAddNull); + var i = 0; + while (i < array.length) { + var chr = array[i]; + HEAP8[(((buffer)+(i))>>0)]=chr; + i = i + 1; + } +} +Module["writeStringToMemory"] = writeStringToMemory; + +function writeArrayToMemory(array, buffer) { + for (var i = 0; i < array.length; i++) { + HEAP8[((buffer++)>>0)]=array[i]; + } +} +Module["writeArrayToMemory"] = writeArrayToMemory; + +function writeAsciiToMemory(str, buffer, dontAddNull) { + for (var i = 0; i < str.length; ++i) { + assert(str.charCodeAt(i) === str.charCodeAt(i)&0xff); + HEAP8[((buffer++)>>0)]=str.charCodeAt(i); + } + // Null-terminate the pointer to the HEAP. + if (!dontAddNull) HEAP8[((buffer)>>0)]=0; +} +Module["writeAsciiToMemory"] = writeAsciiToMemory; + +function unSign(value, bits, ignore) { + if (value >= 0) { + return value; + } + return bits <= 32 ? 2*Math.abs(1 << (bits-1)) + value // Need some trickery, since if bits == 32, we are right at the limit of the bits JS uses in bitshifts + : Math.pow(2, bits) + value; +} +function reSign(value, bits, ignore) { + if (value <= 0) { + return value; + } + var half = bits <= 32 ? Math.abs(1 << (bits-1)) // abs is needed if bits == 32 + : Math.pow(2, bits-1); + if (value >= half && (bits <= 32 || value > half)) { // for huge values, we can hit the precision limit and always get true here. so don't do that + // but, in general there is no perfect solution here. With 64-bit ints, we get rounding and errors + // TODO: In i64 mode 1, resign the two parts separately and safely + value = -2*half + value; // Cannot bitshift half, as it may be at the limit of the bits JS uses in bitshifts + } + return value; +} + + +// check for imul support, and also for correctness ( https://bugs.webkit.org/show_bug.cgi?id=126345 ) +if (!Math['imul'] || Math['imul'](0xffffffff, 5) !== -5) Math['imul'] = function imul(a, b) { + var ah = a >>> 16; + var al = a & 0xffff; + var bh = b >>> 16; + var bl = b & 0xffff; + return (al*bl + ((ah*bl + al*bh) << 16))|0; +}; +Math.imul = Math['imul']; + + +if (!Math['clz32']) Math['clz32'] = function(x) { + x = x >>> 0; + for (var i = 0; i < 32; i++) { + if (x & (1 << (31 - i))) return i; + } + return 32; +}; +Math.clz32 = Math['clz32'] + +var Math_abs = Math.abs; +var Math_cos = Math.cos; +var Math_sin = Math.sin; +var Math_tan = Math.tan; +var Math_acos = Math.acos; +var Math_asin = Math.asin; +var Math_atan = Math.atan; +var Math_atan2 = Math.atan2; +var Math_exp = Math.exp; +var Math_log = Math.log; +var Math_sqrt = Math.sqrt; +var Math_ceil = Math.ceil; +var Math_floor = Math.floor; +var Math_pow = Math.pow; +var Math_imul = Math.imul; +var Math_fround = Math.fround; +var Math_min = Math.min; +var Math_clz32 = Math.clz32; + +// A counter of dependencies for calling run(). If we need to +// do asynchronous work before running, increment this and +// decrement it. Incrementing must happen in a place like +// PRE_RUN_ADDITIONS (used by emcc to add file preloading). +// Note that you can add dependencies in preRun, even though +// it happens right before run - run will be postponed until +// the dependencies are met. +var runDependencies = 0; +var runDependencyWatcher = null; +var dependenciesFulfilled = null; // overridden to take different actions when all run dependencies are fulfilled +var runDependencyTracking = {}; + +function getUniqueRunDependency(id) { + var orig = id; + while (1) { + if (!runDependencyTracking[id]) return id; + id = orig + Math.random(); + } + return id; +} + +function addRunDependency(id) { + runDependencies++; + if (Module['monitorRunDependencies']) { + Module['monitorRunDependencies'](runDependencies); + } + if (id) { + assert(!runDependencyTracking[id]); + runDependencyTracking[id] = 1; + if (runDependencyWatcher === null && typeof setInterval !== 'undefined') { + // Check for missing dependencies every few seconds + runDependencyWatcher = setInterval(function() { + if (ABORT) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null; + return; + } + var shown = false; + for (var dep in runDependencyTracking) { + if (!shown) { + shown = true; + Module.printErr('still waiting on run dependencies:'); + } + Module.printErr('dependency: ' + dep); + } + if (shown) { + Module.printErr('(end of list)'); + } + }, 10000); + } + } else { + Module.printErr('warning: run dependency added without ID'); + } +} +Module["addRunDependency"] = addRunDependency; + +function removeRunDependency(id) { + runDependencies--; + if (Module['monitorRunDependencies']) { + Module['monitorRunDependencies'](runDependencies); + } + if (id) { + assert(runDependencyTracking[id]); + delete runDependencyTracking[id]; + } else { + Module.printErr('warning: run dependency removed without ID'); + } + if (runDependencies == 0) { + if (runDependencyWatcher !== null) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null; + } + if (dependenciesFulfilled) { + var callback = dependenciesFulfilled; + dependenciesFulfilled = null; + callback(); // can add another dependenciesFulfilled + } + } +} +Module["removeRunDependency"] = removeRunDependency; + +Module["preloadedImages"] = {}; // maps url to image data +Module["preloadedAudios"] = {}; // maps url to audio data + + + +var memoryInitializer = null; + + + +// === Body === + +var ASM_CONSTS = []; + + + + +STATIC_BASE = 8; + +STATICTOP = STATIC_BASE + 77584; + /* global initializers */ __ATINIT__.push({ func: function() { _GNUNET_util_cl_init() } }, { func: function() { _GNUNET_CRYPTO_random_init() } }, { func: function() { _gpg_err_init() } }); + + +/* memory initializer */ allocate([0,0,0,0,0,0,0,0,102,154,0,127,199,106,69,159,152,186,249,23,254,223,149,34,17,154,0,127,199,106,69,159,152,186,249,23,254,223,149,51,6,154,0,127,199,106,69,159,152,186,249,23,254,223,149,33,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,34,174,40,215,152,47,138,66,205,101,239,35,145,68,55,113,47,59,77,236,207,251,192,181,188,219,137,129,165,219,181,233,56,181,72,243,91,194,86,57,25,208,5,182,241,17,241,89,155,79,25,175,164,130,63,146,24,129,109,218,213,94,28,171,66,2,3,163,152,170,7,216,190,111,112,69,1,91,131,18,140,178,228,78,190,133,49,36,226,180,255,213,195,125,12,85,111,137,123,242,116,93,190,114,177,150,22,59,254,177,222,128,53,18,199,37,167,6,220,155,148,38,105,207,116,241,155,193,210,74,241,158,193,105,155,228,227,37,79,56,134,71,190,239,181,213,140,139,198,157,193,15,101,156,172,119,204,161,12,36,117,2,43,89,111,44,233,45,131,228,166,110,170,132,116,74,212,251,65,189,220,169,176,92,181,83,17,131,218,136,249,118,171,223,102,238,82,81,62,152,16,50,180,45,109,198,49,168,63,33,251,152,200,39,3,176,228,14,239,190,199,127,89,191,194,143,168,61,243,11,224,198,37,167,10,147,71,145,167,213,111,130,3,224,81,99,202,6,112,110,14,10,103,41,41,20,252,47,210,70,133,10,183,39,38,201,38,92,56,33,27,46,237,42,196,90,252,109,44,77,223,179,149,157,19,13,56,83,222,99,175,139,84,115,10,101,168,178,119,60,187,10,106,118,230,174,237,71,46,201,194,129,59,53,130,20,133,44,114,146,100,3,241,76,161,232,191,162,1,48,66,188,75,102,26,168,145,151,248,208,112,139,75,194,48,190,84,6,163,81,108,199,24,82,239,214,25,232,146,209,16,169,101,85,36,6,153,214,42,32,113,87,133,53,14,244,184,209,187,50,112,160,106,16,200,208,210,184,22,193,164,25,83,171,65,81,8,108,55,30,153,235,142,223,76,119,72,39,168,72,155,225,181,188,176,52,99,90,201,197,179,12,28,57,203,138,65,227,74,170,216,78,115,227,99,119,79,202,156,91,163,184,178,214,243,111,46,104,252,178,239,93,238,130,143,116,96,47,23,67,111,99,165,120,114,171,240,161,20,120,200,132,236,57,100,26,8,2,199,140,40,30,99,35,250,255,190,144,233,189,130,222,235,108,80,164,21,121,198,178,247,163,249,190,43,83,114,227,242,120,113,198,156,97,38,234,206,62,39,202,7,194,192,33,199,184,134,209,30,235,224,205,214,125,218,234,120,209,110,238,127,79,125,245,186,111,23,114,170,103,240,6,166,152,200,162,197,125,99,10,174,13,249,190,4,152,63,17,27,71,28,19,53,11,113,27,132,125,4,35,245,119,219,40,147,36,199,64,123,171,202,50,188,190,201,21,10,190,158,60,76,13,16,156,196,103,29,67,182,66,62,203,190,212,197,76,42,126,101,252,156,41,127,89,236,250,214,58,171,111,203,95,23,88,71,74,140,25,68,108,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,83,85,0,0,255,255,255,255,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,89,0,0,2,0,0,0,30,89,0,0,4,0,0,0,42,89,0,0,8,0,0,0,54,89,0,0,16,0,0,0,67,89,0,0,32,0,0,0,77,89,0,0,64,0,0,0,88,89,0,0,128,0,0,0,100,89,0,0,0,1,0,0,113,89,0,0,0,2,0,0,125,89,0,0,0,4,0,0,138,89,0,0,0,8,0,0,148,89,0,0,0,16,0,0,159,89,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,0,0,0,0,2,0,0,0,11,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,0,0,0,0,2,0,0,0,11,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,0,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,108,17,0,0,164,28,0,0,24,29,0,0,120,32,0,0,184,48,0,0,0,0,0,0,191,140,0,0,0,1,0,0,0,0,0,0,2,0,0,0,1,0,0,0,83,96,0,0,150,96,0,0,156,96,0,0,224,96,0,0,35,97,0,0,102,97,0,0,169,97,0,0,174,97,0,0,192,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,185,97,0,0,236,97,0,0,31,98,0,0,82,98,0,0,133,98,0,0,184,98,0,0,235,98,0,0,240,98,0,0,224,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,251,98,0,0,54,99,0,0,113,99,0,0,172,99,0,0,231,99,0,0,34,100,0,0,235,98,0,0,93,100,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,104,100,0,0,171,100,0,0,238,100,0,0,49,101,0,0,116,101,0,0,183,101,0,0,235,98,0,0,250,101,0,0,128,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,5,102,0,0,104,102,0,0,203,102,0,0,46,103,0,0,145,103,0,0,244,103,0,0,235,98,0,0,87,104,0,0,9,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,98,104,0,0,233,104,0,0,112,105,0,0,246,105,0,0,124,106,0,0,3,107,0,0,235,98,0,0,138,107,0,0,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,154,107,0,0,197,107,0,0,240,107,0,0,27,108,0,0,70,108,0,0,113,108,0,0,235,98,0,0,156,108,0,0,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,172,108,0,0,223,108,0,0,18,109,0,0,69,109,0,0,120,109,0,0,171,109,0,0,235,98,0,0,222,109,0,0,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,238,109,0,0,41,110,0,0,100,110,0,0,159,110,0,0,218,110,0,0,21,111,0,0,235,98,0,0,80,111,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,111,0,0,163,111,0,0,230,111,0,0,41,112,0,0,108,112,0,0,175,112,0,0,235,98,0,0,242,112,0,0,64,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,113,0,0,85,113,0,0,168,113,0,0,251,113,0,0,78,114,0,0,161,114,0,0,235,98,0,0,244,114,0,0,128,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,115,0,0,103,115,0,0,202,115,0,0,45,116,0,0,144,116,0,0,243,116,0,0,235,98,0,0,86,117,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,102,117,0,0,233,117,0,0,108,118,0,0,239,118,0,0,114,119,0,0,245,119,0,0,235,98,0,0,120,120,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,134,120,0,0,201,120,0,0,12,121,0,0,79,121,0,0,146,121,0,0,213,121,0,0,235,98,0,0,24,122,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,122,0,0,112,122,0,0,179,122,0,0,246,122,0,0,57,123,0,0,124,123,0,0,235,98,0,0,191,123,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,212,123,0,0,23,124,0,0,90,124,0,0,157,124,0,0,57,123,0,0,224,124,0,0,235,98,0,0,35,125,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,125,0,0,123,125,0,0,190,125,0,0,1,126,0,0,68,126,0,0,135,126,0,0,235,98,0,0,202,126,0,0,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,216,126,0,0,201,120,0,0,91,127,0,0,222,127,0,0,97,128,0,0,228,128,0,0,235,98,0,0,103,129,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,119,129,0,0,250,129,0,0,125,130,0,0,0,131,0,0,131,131,0,0,6,132,0,0,235,98,0,0,137,132,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,153,132,0,0,28,133,0,0,159,133,0,0,34,134,0,0,165,134,0,0,40,135,0,0,235,98,0,0,171,135,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,181,135,0,0,68,126,0,0,201,120,0,0,248,135,0,0,59,136,0,0,126,136,0,0,235,98,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,140,0,0,193,136,0,0,174,97,0,0,216,136,0,0,174,97,0,0,236,136,0,0,174,97,0,0,247,136,0,0,174,97,0,0,1,137,0,0,240,98,0,0,10,137,0,0,240,98,0,0,20,137,0,0,240,98,0,0,33,137,0,0,93,100,0,0,42,137,0,0,93,100,0,0,62,137,0,0,93,100,0,0,73,137,0,0,93,100,0,0,83,137,0,0,250,101,0,0,92,137,0,0,250,101,0,0,102,137,0,0,250,101,0,0,115,137,0,0,87,104,0,0,124,137,0,0,87,104,0,0,134,137,0,0,87,104,0,0,147,137,0,0,138,107,0,0,156,137,0,0,156,108,0,0,177,137,0,0,222,109,0,0,198,137,0,0,80,111,0,0,219,137,0,0,242,112,0,0,240,137,0,0,244,114,0,0,5,138,0,0,86,117,0,0,27,138,0,0,120,120,0,0,49,138,0,0,24,122,0,0,66,138,0,0,191,123,0,0,83,138,0,0,35,125,0,0,100,138,0,0,24,122,0,0,117,138,0,0,35,125,0,0,141,138,0,0,24,122,0,0,165,138,0,0,35,125,0,0,182,138,0,0,103,129,0,0,199,138,0,0,137,132,0,0,219,138,0,0,171,135,0,0,239,138,0,0,0,0,0,0,0,0,0,0,251,141,0,0,9,142,0,0,38,142,0,0,163,14,1,9,139,198,219,191,69,105,15,58,126,158,109,15,139,190,162,163,158,97,72,0,143,208,94,68,43,142,0,0,57,142,0,0,66,142,0,0,137,111,177,18,138,187,223,25,104,50,16,124,212,157,243,63,71,180,177,22,153,18,186,79,83,104,75,34,87,142,0,0,102,142,0,0,153,142,0,0,127,179,203,53,136,198,193,246,255,169,105,77,125,106,210,100,147,101,176,193,246,93,105,209,236,131,51,234,174,142,0,0,189,142,0,0,240,142,0,0,108,17,80,104,116,1,60,172,106,42,188,27,179,130,98,124,236,106,144,216,110,252,1,45,231,175,236,90,10,143,0,0,26,143,0,0,81,143,0,0,149,233,160,219,150,32,149,173,174,190,155,45,111,13,188,226,212,153,241,18,242,210,183,39,63,166,135,14,213,143,0,0,230,143,0,0,81,143,0,0,58,133,65,102,172,93,159,2,63,84,213,23,208,179,157,189,148,103,112,219,156,43,149,201,246,245,101,209,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,251,141,0,0,9,142,0,0,38,142,0,0,91,220,193,70,191,96,117,78,106,4,36,38,8,149,117,199,90,0,63,8,157,39,57,131,157,236,88,185,100,236,56,67,43,142,0,0,57,142,0,0,66,142,0,0,176,52,76,97,216,219,56,83,92,168,175,206,175,11,241,43,136,29,194,0,201,131,61,167,38,233,55,108,46,50,207,247,87,142,0,0,102,142,0,0,153,142,0,0,119,62,169,30,54,128,14,70,133,77,184,235,208,145,129,167,41,89,9,139,62,248,193,34,217,99,85,20,206,213,101,254,174,142,0,0,189,142,0,0,240,142,0,0,130,85,138,56,154,68,60,14,164,204,129,152,153,242,8,58,133,240,250,163,229,120,248,7,122,46,63,244,103,41,102,91,10,143,0,0,26,143,0,0,81,143,0,0,96,228,49,89,30,224,182,127,13,138,38,170,203,245,183,127,142,11,198,33,55,40,197,20,5,70,4,15,14,227,127,84,213,143,0,0,230,143,0,0,81,143,0,0,155,9,255,167,27,148,47,203,39,99,95,188,213,176,233,68,191,220,99,100,79,7,19,147,138,127,81,83,92,58,53,226,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,251,141,0,0,9,142,0,0,38,142,0,0,175,69,210,227,118,72,64,49,97,127,120,210,181,138,107,27,156,126,244,100,245,160,27,71,228,46,195,115,99,34,68,94,142,34,64,202,94,105,226,199,139,50,57,236,250,178,22,73,43,142,0,0,57,142,0,0,66,142,0,0,175,208,57,68,216,72,149,98,107,8,37,244,171,70,144,127,21,249,218,219,228,16,30,198,130,170,3,76,124,235,197,156,250,234,158,169,7,110,222,127,74,241,82,232,178,250,156,182,87,142,0,0,102,142,0,0,153,142,0,0,136,6,38,8,211,230,173,138,10,162,172,224,20,200,168,111,10,166,53,217,71,172,159,235,232,62,244,229,89,102,20,75,42,90,179,157,193,56,20,185,78,58,182,225,1,163,79,39,174,142,0,0,189,142,0,0,240,142,0,0,62,138,105,183,120,60,37,133,25,51,171,98,144,175,108,167,122,153,129,72,8,80,0,156,197,87,124,110,31,87,59,78,104,1,221,35,196,167,214,121,204,248,163,134,198,116,207,251,10,143,0,0,26,143,0,0,81,143,0,0,78,206,8,68,133,129,62,144,136,210,198,58,4,27,197,180,79,158,241,1,42,43,88,143,60,209,31,5,3,58,196,198,12,46,246,171,64,48,254,130,150,36,141,241,99,244,73,82,213,143,0,0,230,143,0,0,81,143,0,0,102,23,23,142,148,31,2,13,53,30,47,37,78,143,211,44,96,36,32,254,176,184,251,154,220,206,187,130,70,30,153,197,166,120,204,49,231,153,23,109,56,96,230,17,12,70,82,62,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,251,141,0,0,9,142,0,0,38,142,0,0,22,75,122,123,252,248,25,226,227,149,251,231,59,86,224,163,135,189,100,34,46,131,31,214,16,39,12,215,234,37,5,84,151,88,191,117,192,90,153,74,109,3,79,101,248,240,230,253,202,234,177,163,77,74,107,75,99,110,7,10,56,188,231,55,43,142,0,0,57,142,0,0,66,142,0,0,135,170,124,222,165,239,97,157,79,240,180,36,26,29,108,176,35,121,244,226,206,78,194,120,122,208,179,5,69,225,124,222,218,168,51,183,214,184,167,2,3,139,39,78,174,163,244,228,190,157,145,78,235,97,241,112,46,105,108,32,58,18,104,84,87,142,0,0,102,142,0,0,153,142,0,0,250,115,176,8,157,86,162,132,239,176,240,117,108,137,11,233,177,181,219,221,142,232,26,54,85,248,62,51,178,39,157,57,191,62,132,130,121,167,34,200,6,180,133,164,126,103,200,7,185,70,163,55,190,232,148,38,116,39,136,89,225,50,146,251,174,142,0,0,189,142,0,0,240,142,0,0,176,186,70,86,55,69,140,105,144,229,168,197,246,29,74,247,229,118,217,127,249,75,135,45,231,111,128,80,54,30,227,219,169,28,165,193,26,162,94,180,214,121,39,92,197,120,128,99,165,241,151,65,18,12,79,45,226,173,235,235,16,162,152,221,10,143,0,0,26,143,0,0,81,143,0,0,128,178,66,99,199,193,163,235,183,20,147,193,221,123,232,180,155,70,209,244,27,74,238,193,18,27,1,55,131,248,243,82,107,86,208,55,224,95,37,152,189,15,210,33,93,106,30,82,149,230,79,115,246,63,10,236,139,145,90,152,93,120,101,152,213,143,0,0,230,143,0,0,81,143,0,0,227,123,106,119,93,200,125,186,164,223,169,249,110,94,63,253,222,189,113,248,134,114,137,134,93,245,163,45,32,205,201,68,182,2,44,172,60,73,130,177,13,94,235,85,195,228,222,21,19,70,118,251,109,224,68,96,101,201,116,64,250,140,106,88,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,30,0,0,184,31,0,0,124,30,0,0,248,31,0,0,56,32,0,0,140,29,0,0,0,0,0,0,156,2,0,0,206,147,0,0,2,0,0,0,211,147,0,0,1,0,0,0,215,147,0,0,8,0,0,0,222,147,0,0,3,0,0,0,232,147,0,0,3,0,0,0,239,147,0,0,9,0,0,0,246,147,0,0,10,0,0,0,253,147,0,0,11,0,0,0,4,148,0,0,5,0,0,0,8,148,0,0,45,1,0,0,12,148,0,0,6,0,0,0,18,148,0,0,7,0,0,0,0,0,0,0,0,0,0,0,36,50,0,0,204,29,0,0,0,0,0,0,7,0,0,0,2,0,0,0,168,148,0,0,172,17,0,0,188,17,0,0,16,0,0,0,128,0,0,0,248,1,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,172,148,0,0,181,148,0,0,188,148,0,0,0,0,0,0,196,148,0,0,1,0,0,0,219,148,0,0,3,0,0,0,242,148,0,0,5,0,0,0,9,149,0,0,2,0,0,0,0,0,0,0,0,0,0,0,198,99,99,165,248,124,124,132,238,119,119,153,246,123,123,141,255,242,242,13,214,107,107,189,222,111,111,177,145,197,197,84,96,48,48,80,2,1,1,3,206,103,103,169,86,43,43,125,231,254,254,25,181,215,215,98,77,171,171,230,236,118,118,154,143,202,202,69,31,130,130,157,137,201,201,64,250,125,125,135,239,250,250,21,178,89,89,235,142,71,71,201,251,240,240,11,65,173,173,236,179,212,212,103,95,162,162,253,69,175,175,234,35,156,156,191,83,164,164,247,228,114,114,150,155,192,192,91,117,183,183,194,225,253,253,28,61,147,147,174,76,38,38,106,108,54,54,90,126,63,63,65,245,247,247,2,131,204,204,79,104,52,52,92,81,165,165,244,209,229,229,52,249,241,241,8,226,113,113,147,171,216,216,115,98,49,49,83,42,21,21,63,8,4,4,12,149,199,199,82,70,35,35,101,157,195,195,94,48,24,24,40,55,150,150,161,10,5,5,15,47,154,154,181,14,7,7,9,36,18,18,54,27,128,128,155,223,226,226,61,205,235,235,38,78,39,39,105,127,178,178,205,234,117,117,159,18,9,9,27,29,131,131,158,88,44,44,116,52,26,26,46,54,27,27,45,220,110,110,178,180,90,90,238,91,160,160,251,164,82,82,246,118,59,59,77,183,214,214,97,125,179,179,206,82,41,41,123,221,227,227,62,94,47,47,113,19,132,132,151,166,83,83,245,185,209,209,104,0,0,0,0,193,237,237,44,64,32,32,96,227,252,252,31,121,177,177,200,182,91,91,237,212,106,106,190,141,203,203,70,103,190,190,217,114,57,57,75,148,74,74,222,152,76,76,212,176,88,88,232,133,207,207,74,187,208,208,107,197,239,239,42,79,170,170,229,237,251,251,22,134,67,67,197,154,77,77,215,102,51,51,85,17,133,133,148,138,69,69,207,233,249,249,16,4,2,2,6,254,127,127,129,160,80,80,240,120,60,60,68,37,159,159,186,75,168,168,227,162,81,81,243,93,163,163,254,128,64,64,192,5,143,143,138,63,146,146,173,33,157,157,188,112,56,56,72,241,245,245,4,99,188,188,223,119,182,182,193,175,218,218,117,66,33,33,99,32,16,16,48,229,255,255,26,253,243,243,14,191,210,210,109,129,205,205,76,24,12,12,20,38,19,19,53,195,236,236,47,190,95,95,225,53,151,151,162,136,68,68,204,46,23,23,57,147,196,196,87,85,167,167,242,252,126,126,130,122,61,61,71,200,100,100,172,186,93,93,231,50,25,25,43,230,115,115,149,192,96,96,160,25,129,129,152,158,79,79,209,163,220,220,127,68,34,34,102,84,42,42,126,59,144,144,171,11,136,136,131,140,70,70,202,199,238,238,41,107,184,184,211,40,20,20,60,167,222,222,121,188,94,94,226,22,11,11,29,173,219,219,118,219,224,224,59,100,50,50,86,116,58,58,78,20,10,10,30,146,73,73,219,12,6,6,10,72,36,36,108,184,92,92,228,159,194,194,93,189,211,211,110,67,172,172,239,196,98,98,166,57,145,145,168,49,149,149,164,211,228,228,55,242,121,121,139,213,231,231,50,139,200,200,67,110,55,55,89,218,109,109,183,1,141,141,140,177,213,213,100,156,78,78,210,73,169,169,224,216,108,108,180,172,86,86,250,243,244,244,7,207,234,234,37,202,101,101,175,244,122,122,142,71,174,174,233,16,8,8,24,111,186,186,213,240,120,120,136,74,37,37,111,92,46,46,114,56,28,28,36,87,166,166,241,115,180,180,199,151,198,198,81,203,232,232,35,161,221,221,124,232,116,116,156,62,31,31,33,150,75,75,221,97,189,189,220,13,139,139,134,15,138,138,133,224,112,112,144,124,62,62,66,113,181,181,196,204,102,102,170,144,72,72,216,6,3,3,5,247,246,246,1,28,14,14,18,194,97,97,163,106,53,53,95,174,87,87,249,105,185,185,208,23,134,134,145,153,193,193,88,58,29,29,39,39,158,158,185,217,225,225,56,235,248,248,19,43,152,152,179,34,17,17,51,210,105,105,187,169,217,217,112,7,142,142,137,51,148,148,167,45,155,155,182,60,30,30,34,21,135,135,146,201,233,233,32,135,206,206,73,170,85,85,255,80,40,40,120,165,223,223,122,3,140,140,143,89,161,161,248,9,137,137,128,26,13,13,23,101,191,191,218,215,230,230,49,132,66,66,198,208,104,104,184,130,65,65,195,41,153,153,176,90,45,45,119,30,15,15,17,123,176,176,203,168,84,84,252,109,187,187,214,44,22,22,58,81,244,167,80,126,65,101,83,26,23,164,195,58,39,94,150,59,171,107,203,31,157,69,241,172,250,88,171,75,227,3,147,32,48,250,85,173,118,109,246,136,204,118,145,245,2,76,37,79,229,215,252,197,42,203,215,38,53,68,128,181,98,163,143,222,177,90,73,37,186,27,103,69,234,14,152,93,254,192,225,195,47,117,2,129,76,240,18,141,70,151,163,107,211,249,198,3,143,95,231,21,146,156,149,191,109,122,235,149,82,89,218,212,190,131,45,88,116,33,211,73,224,105,41,142,201,200,68,117,194,137,106,244,142,121,120,153,88,62,107,39,185,113,221,190,225,79,182,240,136,173,23,201,32,172,102,125,206,58,180,99,223,74,24,229,26,49,130,151,81,51,96,98,83,127,69,177,100,119,224,187,107,174,132,254,129,160,28,249,8,43,148,112,72,104,88,143,69,253,25,148,222,108,135,82,123,248,183,171,115,211,35,114,75,2,226,227,31,143,87,102,85,171,42,178,235,40,7,47,181,194,3,134,197,123,154,211,55,8,165,48,40,135,242,35,191,165,178,2,3,106,186,237,22,130,92,138,207,28,43,167,121,180,146,243,7,242,240,78,105,226,161,101,218,244,205,6,5,190,213,209,52,98,31,196,166,254,138,52,46,83,157,162,243,85,160,5,138,225,50,164,246,235,117,11,131,236,57,64,96,239,170,94,113,159,6,189,110,16,81,62,33,138,249,150,221,6,61,221,62,5,174,77,230,189,70,145,84,141,181,113,196,93,5,4,6,212,111,96,80,21,255,25,152,251,36,214,189,233,151,137,64,67,204,103,217,158,119,176,232,66,189,7,137,139,136,231,25,91,56,121,200,238,219,161,124,10,71,124,66,15,233,248,132,30,201,0,0,0,0,9,128,134,131,50,43,237,72,30,17,112,172,108,90,114,78,253,14,255,251,15,133,56,86,61,174,213,30,54,45,57,39,10,15,217,100,104,92,166,33,155,91,84,209,36,54,46,58,12,10,103,177,147,87,231,15,180,238,150,210,27,155,145,158,128,192,197,79,97,220,32,162,90,119,75,105,28,18,26,22,226,147,186,10,192,160,42,229,60,34,224,67,18,27,23,29,14,9,13,11,242,139,199,173,45,182,168,185,20,30,169,200,87,241,25,133,175,117,7,76,238,153,221,187,163,127,96,253,247,1,38,159,92,114,245,188,68,102,59,197,91,251,126,52,139,67,41,118,203,35,198,220,182,237,252,104,184,228,241,99,215,49,220,202,66,99,133,16,19,151,34,64,132,198,17,32,133,74,36,125,210,187,61,248,174,249,50,17,199,41,161,109,29,158,47,75,220,178,48,243,13,134,82,236,119,193,227,208,43,179,22,108,169,112,185,153,17,148,72,250,71,233,100,34,168,252,140,196,160,240,63,26,86,125,44,216,34,51,144,239,135,73,78,199,217,56,209,193,140,202,162,254,152,212,11,54,166,245,129,207,165,122,222,40,218,183,142,38,63,173,191,164,44,58,157,228,80,120,146,13,106,95,204,155,84,126,70,98,246,141,19,194,144,216,184,232,46,57,247,94,130,195,175,245,159,93,128,190,105,208,147,124,111,213,45,169,207,37,18,179,200,172,153,59,16,24,125,167,232,156,99,110,219,59,187,123,205,38,120,9,110,89,24,244,236,154,183,1,131,79,154,168,230,149,110,101,170,255,230,126,33,188,207,8,239,21,232,230,186,231,155,217,74,111,54,206,234,159,9,212,41,176,124,214,49,164,178,175,42,63,35,49,198,165,148,48,53,162,102,192,116,78,188,55,252,130,202,166,224,144,208,176,51,167,216,21,241,4,152,74,65,236,218,247,127,205,80,14,23,145,246,47,118,77,214,141,67,239,176,77,204,170,77,84,228,150,4,223,158,209,181,227,76,106,136,27,193,44,31,184,70,101,81,127,157,94,234,4,1,140,53,93,250,135,116,115,251,11,65,46,179,103,29,90,146,219,210,82,233,16,86,51,109,214,71,19,154,215,97,140,55,161,12,122,89,248,20,142,235,19,60,137,206,169,39,238,183,97,201,53,225,28,229,237,122,71,177,60,156,210,223,89,85,242,115,63,24,20,206,121,115,199,55,191,83,247,205,234,95,253,170,91,223,61,111,20,120,68,219,134,202,175,243,129,185,104,196,62,56,36,52,44,194,163,64,95,22,29,195,114,188,226,37,12,40,60,73,139,255,13,149,65,57,168,1,113,8,12,179,222,216,180,228,156,100,86,193,144,123,203,132,97,213,50,182,112,72,108,92,116,208,184,87,66,82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125,1,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,64,0,0,0,128,0,0,0,27,0,0,0,54,0,0,0,108,0,0,0,216,0,0,0,171,0,0,0,77,0,0,0,154,0,0,0,47,0,0,0,94,0,0,0,188,0,0,0,99,0,0,0,198,0,0,0,151,0,0,0,53,0,0,0,106,0,0,0,212,0,0,0,179,0,0,0,125,0,0,0,250,0,0,0,239,0,0,0,197,0,0,0,145,0,0,0,2,0,0,0,43,126,21,22,40,174,210,166,171,247,21,136,9,207,79,60,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,107,193,190,226,46,64,159,150,233,61,126,17,115,147,23,42,59,63,217,46,183,45,173,32,51,52,73,248,232,60,251,74,174,45,138,87,30,3,172,156,158,183,111,172,69,175,142,81,200,166,69,55,160,179,169,63,205,227,205,173,159,28,229,139,48,200,28,70,163,92,228,17,229,251,193,25,26,10,82,239,38,117,31,103,163,203,177,64,177,128,140,241,135,164,244,223,246,159,36,69,223,79,155,23,173,43,65,123,230,108,55,16,192,75,5,53,124,93,28,14,234,196,198,111,159,247,242,230,5,0,0,0,43,126,21,22,40,174,210,166,171,247,21,136,9,207,79,60,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,107,193,190,226,46,64,159,150,233,61,126,17,115,147,23,42,59,63,217,46,183,45,173,32,51,52,73,248,232,60,251,74,174,45,138,87,30,3,172,156,158,183,111,172,69,175,142,81,119,137,80,141,22,145,143,3,245,60,82,218,197,78,216,37,48,200,28,70,163,92,228,17,229,251,193,25,26,10,82,239,151,64,5,30,156,95,236,246,67,68,247,168,34,96,237,204,246,159,36,69,223,79,155,23,173,43,65,123,230,108,55,16,48,76,101,40,246,89,199,120,102,165,16,217,193,214,174,94,8,0,0,0,2,0,0,0,8,151,0,0,228,28,0,0,240,28,0,0,16,0,0,0,192,0,0,0,248,1,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,15,151,0,0,27,151,0,0,0,0,0,0,35,151,0,0,1,0,0,0,59,151,0,0,3,0,0,0,83,151,0,0,5,0,0,0,107,151,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,2,0,0,0,131,151,0,0,88,29,0,0,100,29,0,0,16,0,0,0,0,1,0,0,248,1,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,138,151,0,0,150,151,0,0,0,0,0,0,158,151,0,0,1,0,0,0,182,151,0,0,3,0,0,0,206,151,0,0,5,0,0,0,230,151,0,0,2,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,254,151,0,0,8,152,0,0,15,0,0,0,192,29,0,0,20,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,184,0,0,0,0,0,0,0,23,152,0,0,38,152,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,170,153,0,0,32,30,0,0,215,153,0,0,218,153,0,0,225,153,0,0,227,153,0,0,229,153,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,174,153,0,0,178,153,0,0,190,153,0,0,0,0,0,0,2,0,0,0,2,0,0,0,45,165,0,0,50,165,0,0,15,0,0,0,100,30,0,0,20,0,0,0,18,0,0,0,6,0,0,0,19,0,0,0,20,0,0,0,184,0,0,0,21,0,0,0,65,165,0,0,86,165,0,0,104,165,0,0,118,165,0,0,132,165,0,0,0,0,0,0,11,0,0,0,2,0,0,0,213,165,0,0,220,165,0,0,19,0,0,0,176,30,0,0,28,0,0,0,22,0,0,0,6,0,0,0,23,0,0,0,24,0,0,0,192,0,0,0,25,0,0,0,239,165,0,0,0,0,0,0,152,47,138,66,145,68,55,113,207,251,192,181,165,219,181,233,91,194,86,57,241,17,241,89,164,130,63,146,213,94,28,171,152,170,7,216,1,91,131,18,190,133,49,36,195,125,12,85,116,93,190,114,254,177,222,128,167,6,220,155,116,241,155,193,193,105,155,228,134,71,190,239,198,157,193,15,204,161,12,36,111,44,233,45,170,132,116,74,220,169,176,92,218,136,249,118,82,81,62,152,109,198,49,168,200,39,3,176,199,127,89,191,243,11,224,198,71,145,167,213,81,99,202,6,103,41,41,20,133,10,183,39,56,33,27,46,252,109,44,77,19,13,56,83,84,115,10,101,187,10,106,118,46,201,194,129,133,44,114,146,161,232,191,162,75,102,26,168,112,139,75,194,163,81,108,199,25,232,146,209,36,6,153,214,133,53,14,244,112,160,106,16,22,193,164,25,8,108,55,30,76,119,72,39,181,188,176,52,179,12,28,57,74,170,216,78,79,202,156,91,243,111,46,104,238,130,143,116,111,99,165,120,20,120,200,132,8,2,199,140,250,255,190,144,235,108,80,164,247,163,249,190,242,120,113,198,8,0,0,0,2,0,0,0,249,166,0,0,0,167,0,0,19,0,0,0,236,31,0,0,32,0,0,0,26,0,0,0,6,0,0,0,23,0,0,0,24,0,0,0,192,0,0,0,25,0,0,0,19,167,0,0,42,167,0,0,0,0,0,0,10,0,0,0,2,0,0,0,64,167,0,0,71,167,0,0,19,0,0,0,44,32,0,0,64,0,0,0,27,0,0,0,6,0,0,0,28,0,0,0,29,0,0,0,224,0,0,0,30,0,0,0,90,167,0,0,113,167,0,0,0,0,0,0,9,0,0,0,2,0,0,0,130,169,0,0,137,169,0,0,19,0,0,0,108,32,0,0,48,0,0,0,31,0,0,0,6,0,0,0,28,0,0,0,29,0,0,0,224,0,0,0,30,0,0,0,156,169,0,0,179,169,0,0,0,0,0,0,10,0,0,0,0,0,0,0,201,169,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,1,0,0,160,16,0,0,32,0,0,0,33,0,0,0,34,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,117,50,188,188,243,33,236,236,198,67,32,32,244,201,179,179,219,3,218,218,123,139,2,2,251,43,226,226,200,250,158,158,74,236,201,201,211,9,212,212,230,107,24,24,107,159,30,30,69,14,152,152,125,56,178,178,232,210,166,166,75,183,38,38,214,87,60,60,50,138,147,147,216,238,130,130,253,152,82,82,55,212,123,123,113,55,187,187,241,151,91,91,225,131,71,71,48,60,36,36,15,226,81,81,248,198,186,186,27,243,74,74,135,72,191,191,250,112,13,13,6,179,176,176,63,222,117,117,94,253,210,210,186,32,125,125,174,49,102,102,91,163,58,58,138,28,89,89,0,0,0,0,188,147,205,205,157,224,26,26,109,44,174,174,193,171,127,127,177,199,43,43,14,185,190,190,128,160,224,224,93,16,138,138,210,82,59,59,213,186,100,100,160,136,216,216,132,165,231,231,7,232,95,95,20,17,27,27,181,194,44,44,144,180,252,252,44,39,49,49,163,101,128,128,178,42,115,115,115,129,12,12,76,95,121,121,84,65,107,107,146,2,75,75,116,105,83,83,54,143,148,148,81,31,131,131,56,54,42,42,176,156,196,196,189,200,34,34,90,248,213,213,252,195,189,189,96,120,72,72,98,206,255,255,150,7,76,76,108,119,65,65,66,230,199,199,247,36,235,235,16,20,28,28,124,99,93,93,40,34,54,54,39,192,103,103,140,175,233,233,19,249,68,68,149,234,20,20,156,187,245,245,199,24,207,207,36,45,63,63,70,227,192,192,59,219,114,114,112,108,84,84,202,76,41,41,227,53,240,240,133,254,8,8,203,23,198,198,17,79,243,243,208,228,140,140,147,89,164,164,184,150,202,202,166,59,104,104,131,77,184,184,32,40,56,56,255,46,229,229,159,86,173,173,119,132,11,11,195,29,200,200,204,255,153,153,3,237,88,88,111,154,25,25,8,10,14,14,191,126,149,149,64,80,112,112,231,48,247,247,43,207,110,110,226,110,31,31,121,61,181,181,12,15,9,9,170,52,97,97,130,22,87,87,65,11,159,159,58,128,157,157,234,100,17,17,185,205,37,37,228,221,175,175,154,8,69,69,164,141,223,223,151,92,163,163,126,213,234,234,218,88,53,53,122,208,237,237,23,252,67,67,102,203,248,248,148,177,251,251,161,211,55,55,29,64,250,250,61,104,194,194,240,204,180,180,222,93,50,50,179,113,156,156,11,231,86,86,114,218,227,227,167,96,135,135,28,27,21,21,239,58,249,249,209,191,99,99,83,169,52,52,62,133,154,154,143,66,177,177,51,209,124,124,38,155,136,136,95,166,61,61,236,215,161,161,118,223,228,228,42,148,129,129,73,1,145,145,129,251,15,15,136,170,238,238,238,97,22,22,33,115,215,215,196,245,151,151,26,168,165,165,235,63,254,254,217,181,109,109,197,174,120,120,57,109,197,197,153,229,29,29,205,164,118,118,173,220,62,62,49,103,203,203,139,71,182,182,1,91,239,239,24,30,18,18,35,197,96,96,221,176,106,106,31,246,77,77,78,233,206,206,45,124,222,222,249,157,85,85,72,90,126,126,79,178,33,33,242,122,3,3,101,38,160,160,142,25,94,94,120,102,90,90,92,75,101,101,88,78,98,98,25,69,253,253,141,244,6,6,229,134,64,64,152,190,242,242,87,172,51,51,103,144,23,23,127,142,5,5,5,94,232,232,100,125,79,79,175,106,137,137,99,149,16,16,182,47,116,116,254,117,10,10,245,146,92,92,183,116,155,155,60,51,45,45,165,214,48,48,206,73,46,46,233,137,73,73,104,114,70,70,68,85,119,119,224,216,168,168,77,4,150,150,67,189,40,40,105,41,169,169,41,121,217,217,46,145,134,134,172,135,209,209,21,74,244,244,89,21,141,141,168,130,214,214,10,188,185,185,158,13,66,66,110,193,246,246,71,184,47,47,223,6,221,221,52,57,35,35,53,98,204,204,106,196,241,241,207,18,193,193,220,235,133,133,34,158,143,143,201,161,113,113,192,240,144,144,155,83,170,170,137,241,1,1,212,225,139,139,237,140,78,78,171,111,142,142,18,162,171,171,162,62,111,111,13,84,230,230,82,242,219,219,187,123,146,146,2,182,183,183,47,202,105,105,169,217,57,57,215,12,211,211,97,35,167,167,30,173,162,162,180,153,195,195,80,68,108,108,4,5,7,7,246,127,4,4,194,70,39,39,22,167,172,172,37,118,208,208,134,19,80,80,86,247,220,220,85,26,132,132,9,81,225,225,190,37,122,122,145,239,19,19,57,57,217,169,23,23,144,103,156,156,113,179,166,166,210,232,7,7,5,4,82,82,152,253,128,128,101,163,228,228,223,118,69,69,8,154,75,75,2,146,224,224,160,128,90,90,102,120,175,175,221,228,106,106,176,221,99,99,191,209,42,42,54,56,230,230,84,13,32,32,67,198,204,204,98,53,242,242,190,152,18,18,30,24,235,235,36,247,161,161,215,236,65,65,119,108,40,40,189,67,188,188,50,117,123,123,212,55,136,136,155,38,13,13,112,250,68,68,249,19,251,251,177,148,126,126,90,72,3,3,122,242,140,140,228,208,182,182,71,139,36,36,60,48,231,231,165,132,107,107,65,84,221,221,6,223,96,96,197,35,253,253,69,25,58,58,163,91,194,194,104,61,141,141,21,89,236,236,33,243,102,102,49,174,111,111,62,162,87,87,22,130,16,16,149,99,239,239,91,1,184,184,77,131,134,134,145,46,109,109,181,217,131,131,31,81,170,170,83,155,93,93,99,124,104,104,59,166,254,254,63,235,48,48,214,165,122,122,37,190,172,172,167,22,9,9,15,12,240,240,53,227,167,167,35,97,144,144,240,192,233,233,175,140,157,157,128,58,92,92,146,245,12,12,129,115,49,49,39,44,208,208,118,37,86,86,231,11,146,146,123,187,206,206,233,78,1,1,241,137,30,30,159,107,52,52,169,83,241,241,196,106,195,195,153,180,91,91,151,241,71,71,131,225,24,24,107,230,34,34,200,189,152,152,14,69,31,31,110,226,179,179,201,244,116,116,47,182,248,248,203,102,153,153,255,204,20,20,234,149,88,88,237,3,220,220,247,86,139,139,225,212,21,21,27,28,162,162,173,30,211,211,12,215,226,226,43,251,200,200,29,195,94,94,25,142,44,44,194,181,73,73,137,233,193,193,18,207,149,149,126,191,125,125,32,186,17,17,100,234,11,11,132,119,197,197,109,57,137,137,106,175,124,124,209,51,113,113,161,201,255,255,206,98,187,187,55,113,15,15,251,129,181,181,61,121,225,225,81,9,62,62,220,173,63,63,45,36,118,118,164,205,85,85,157,249,130,130,238,216,64,64,134,229,120,120,174,197,37,37,205,185,150,150,4,77,119,119,85,68,14,14,10,8,80,80,19,134,247,247,48,231,55,55,211,161,250,250,64,29,97,97,52,170,78,78,140,237,176,176,179,6,84,84,108,112,115,115,42,178,59,59,82,210,159,159,11,65,2,2,139,123,216,216,136,160,243,243,79,17,203,203,103,49,39,39,70,194,103,103,192,39,252,252,180,144,56,56,40,32,4,4,127,246,72,72,120,96,229,229,46,255,76,76,7,150,101,101,75,92,43,43,199,177,142,142,111,171,66,66,13,158,245,245,187,156,219,219,242,82,74,74,243,27,61,61,166,95,164,164,89,147,185,185,188,10,249,249,58,239,19,19,239,145,8,8,254,133,145,145,1,73,22,22,97,238,222,222,124,45,33,33,178,79,177,177,66,143,114,114,219,59,47,47,184,71,191,191,72,135,174,174,44,109,192,192,227,70,60,60,87,214,154,154,133,62,169,169,41,105,79,79,125,100,129,129,148,42,46,46,73,206,198,198,23,203,105,105,202,47,189,189,195,252,163,163,92,151,232,232,94,5,237,237,208,122,209,209,135,172,5,5,142,127,100,100,186,213,165,165,168,26,38,38,183,75,190,190,185,14,135,135,96,167,213,213,248,90,54,54,34,40,27,27,17,20,117,117,222,63,217,217,121,41,238,238,170,136,45,45,51,60,121,121,95,76,183,183,182,2,202,202,150,184,53,53,88,218,196,196,156,176,67,67,252,23,132,132,26,85,77,77,246,31,89,89,28,138,178,178,56,125,51,51,172,87,207,207,24,199,6,6,244,141,83,83,105,116], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE); +/* memory initializer */ allocate([155,155,116,183,151,151,245,196,173,173,86,159,227,227,218,114,234,234,213,126,244,244,74,21,143,143,158,34,171,171,162,18,98,98,78,88,95,95,232,7,29,29,229,153,35,35,57,52,246,246,193,110,108,108,68,80,50,50,93,222,70,70,114,104,160,160,38,101,205,205,147,188,218,218,3,219,186,186,198,248,158,158,250,200,214,214,130,168,110,110,207,43,112,112,80,64,133,133,235,220,10,10,117,254,147,147,138,50,223,223,141,164,41,41,76,202,28,28,20,16,215,215,115,33,180,180,204,240,212,212,9,211,138,138,16,93,81,81,226,15,0,0,0,0,25,25,154,111,26,26,224,157,148,148,143,54,199,199,230,66,201,201,236,74,210,210,253,94,127,127,171,193,168,168,216,224,50,188,117,188,33,236,243,236,67,32,198,32,201,179,244,179,3,218,219,218,139,2,123,2,43,226,251,226,250,158,200,158,236,201,74,201,9,212,211,212,107,24,230,24,159,30,107,30,14,152,69,152,56,178,125,178,210,166,232,166,183,38,75,38,87,60,214,60,138,147,50,147,238,130,216,130,152,82,253,82,212,123,55,123,55,187,113,187,151,91,241,91,131,71,225,71,60,36,48,36,226,81,15,81,198,186,248,186,243,74,27,74,72,191,135,191,112,13,250,13,179,176,6,176,222,117,63,117,253,210,94,210,32,125,186,125,49,102,174,102,163,58,91,58,28,89,138,89,0,0,0,0,147,205,188,205,224,26,157,26,44,174,109,174,171,127,193,127,199,43,177,43,185,190,14,190,160,224,128,224,16,138,93,138,82,59,210,59,186,100,213,100,136,216,160,216,165,231,132,231,232,95,7,95,17,27,20,27,194,44,181,44,180,252,144,252,39,49,44,49,101,128,163,128,42,115,178,115,129,12,115,12,95,121,76,121,65,107,84,107,2,75,146,75,105,83,116,83,143,148,54,148,31,131,81,131,54,42,56,42,156,196,176,196,200,34,189,34,248,213,90,213,195,189,252,189,120,72,96,72,206,255,98,255,7,76,150,76,119,65,108,65,230,199,66,199,36,235,247,235,20,28,16,28,99,93,124,93,34,54,40,54,192,103,39,103,175,233,140,233,249,68,19,68,234,20,149,20,187,245,156,245,24,207,199,207,45,63,36,63,227,192,70,192,219,114,59,114,108,84,112,84,76,41,202,41,53,240,227,240,254,8,133,8,23,198,203,198,79,243,17,243,228,140,208,140,89,164,147,164,150,202,184,202,59,104,166,104,77,184,131,184,40,56,32,56,46,229,255,229,86,173,159,173,132,11,119,11,29,200,195,200,255,153,204,153,237,88,3,88,154,25,111,25,10,14,8,14,126,149,191,149,80,112,64,112,48,247,231,247,207,110,43,110,110,31,226,31,61,181,121,181,15,9,12,9,52,97,170,97,22,87,130,87,11,159,65,159,128,157,58,157,100,17,234,17,205,37,185,37,221,175,228,175,8,69,154,69,141,223,164,223,92,163,151,163,213,234,126,234,88,53,218,53,208,237,122,237,252,67,23,67,203,248,102,248,177,251,148,251,211,55,161,55,64,250,29,250,104,194,61,194,204,180,240,180,93,50,222,50,113,156,179,156,231,86,11,86,218,227,114,227,96,135,167,135,27,21,28,21,58,249,239,249,191,99,209,99,169,52,83,52,133,154,62,154,66,177,143,177,209,124,51,124,155,136,38,136,166,61,95,61,215,161,236,161,223,228,118,228,148,129,42,129,1,145,73,145,251,15,129,15,170,238,136,238,97,22,238,22,115,215,33,215,245,151,196,151,168,165,26,165,63,254,235,254,181,109,217,109,174,120,197,120,109,197,57,197,229,29,153,29,164,118,205,118,220,62,173,62,103,203,49,203,71,182,139,182,91,239,1,239,30,18,24,18,197,96,35,96,176,106,221,106,246,77,31,77,233,206,78,206,124,222,45,222,157,85,249,85,90,126,72,126,178,33,79,33,122,3,242,3,38,160,101,160,25,94,142,94,102,90,120,90,75,101,92,101,78,98,88,98,69,253,25,253,244,6,141,6,134,64,229,64,190,242,152,242,172,51,87,51,144,23,103,23,142,5,127,5,94,232,5,232,125,79,100,79,106,137,175,137,149,16,99,16,47,116,182,116,117,10,254,10,146,92,245,92,116,155,183,155,51,45,60,45,214,48,165,48,73,46,206,46,137,73,233,73,114,70,104,70,85,119,68,119,216,168,224,168,4,150,77,150,189,40,67,40,41,169,105,169,121,217,41,217,145,134,46,134,135,209,172,209,74,244,21,244,21,141,89,141,130,214,168,214,188,185,10,185,13,66,158,66,193,246,110,246,184,47,71,47,6,221,223,221,57,35,52,35,98,204,53,204,196,241,106,241,18,193,207,193,235,133,220,133,158,143,34,143,161,113,201,113,240,144,192,144,83,170,155,170,241,1,137,1,225,139,212,139,140,78,237,78,111,142,171,142,162,171,18,171,62,111,162,111,84,230,13,230,242,219,82,219,123,146,187,146,182,183,2,183,202,105,47,105,217,57,169,57,12,211,215,211,35,167,97,167,173,162,30,162,153,195,180,195,68,108,80,108,5,7,4,7,127,4,246,4,70,39,194,39,167,172,22,172,118,208,37,208,19,80,134,80,247,220,86,220,26,132,85,132,81,225,9,225,37,122,190,122,239,19,145,19,217,169,57,217,144,103,23,144,113,179,156,113,210,232,166,210,5,4,7,5,152,253,82,152,101,163,128,101,223,118,228,223,8,154,69,8,2,146,75,2,160,128,224,160,102,120,90,102,221,228,175,221,176,221,106,176,191,209,99,191,54,56,42,54,84,13,230,84,67,198,32,67,98,53,204,98,190,152,242,190,30,24,18,30,36,247,235,36,215,236,161,215,119,108,65,119,189,67,40,189,50,117,188,50,212,55,123,212,155,38,136,155,112,250,13,112,249,19,68,249,177,148,251,177,90,72,126,90,122,242,3,122,228,208,140,228,71,139,182,71,60,48,36,60,165,132,231,165,65,84,107,65,6,223,221,6,197,35,96,197,69,25,253,69,163,91,58,163,104,61,194,104,21,89,141,21,33,243,236,33,49,174,102,49,62,162,111,62,22,130,87,22,149,99,16,149,91,1,239,91,77,131,184,77,145,46,134,145,181,217,109,181,31,81,131,31,83,155,170,83,99,124,93,99,59,166,104,59,63,235,254,63,214,165,48,214,37,190,122,37,167,22,172,167,15,12,9,15,53,227,240,53,35,97,167,35,240,192,144,240,175,140,233,175,128,58,157,128,146,245,92,146,129,115,12,129,39,44,49,39,118,37,208,118,231,11,86,231,123,187,146,123,233,78,206,233,241,137,1,241,159,107,30,159,169,83,52,169,196,106,241,196,153,180,195,153,151,241,91,151,131,225,71,131,107,230,24,107,200,189,34,200,14,69,152,14,110,226,31,110,201,244,179,201,47,182,116,47,203,102,248,203,255,204,153,255,234,149,20,234,237,3,88,237,247,86,220,247,225,212,139,225,27,28,21,27,173,30,162,173,12,215,211,12,43,251,226,43,29,195,200,29,25,142,94,25,194,181,44,194,137,233,73,137,18,207,193,18,126,191,149,126,32,186,125,32,100,234,17,100,132,119,11,132,109,57,197,109,106,175,137,106,209,51,124,209,161,201,113,161,206,98,255,206,55,113,187,55,251,129,15,251,61,121,181,61,81,9,225,81,220,173,62,220,45,36,63,45,164,205,118,164,157,249,85,157,238,216,130,238,134,229,64,134,174,197,120,174,205,185,37,205,4,77,150,4,85,68,119,85,10,8,14,10,19,134,80,19,48,231,247,48,211,161,55,211,64,29,250,64,52,170,97,52,140,237,78,140,179,6,176,179,108,112,84,108,42,178,115,42,82,210,59,82,11,65,159,11,139,123,2,139,136,160,216,136,79,17,243,79,103,49,203,103,70,194,39,70,192,39,103,192,180,144,252,180,40,32,56,40,127,246,4,127,120,96,72,120,46,255,229,46,7,150,76,7,75,92,101,75,199,177,43,199,111,171,142,111,13,158,66,13,187,156,245,187,242,82,219,242,243,27,74,243,166,95,61,166,89,147,164,89,188,10,185,188,58,239,249,58,239,145,19,239,254,133,8,254,1,73,145,1,97,238,22,97,124,45,222,124,178,79,33,178,66,143,177,66,219,59,114,219,184,71,47,184,72,135,191,72,44,109,174,44,227,70,192,227,87,214,60,87,133,62,154,133,41,105,169,41,125,100,79,125,148,42,129,148,73,206,46,73,23,203,198,23,202,47,105,202,195,252,189,195,92,151,163,92,94,5,232,94,208,122,237,208,135,172,209,135,142,127,5,142,186,213,100,186,168,26,165,168,183,75,38,183,185,14,190,185,96,167,135,96,248,90,213,248,34,40,54,34,17,20,27,17,222,63,117,222,121,41,217,121,170,136,238,170,51,60,45,51,95,76,121,95,182,2,183,182,150,184,202,150,88,218,53,88,156,176,196,156,252,23,67,252,26,85,132,26,246,31,77,246,28,138,89,28,56,125,178,56,172,87,51,172,24,199,207,24,244,141,6,244,105,116,83,105,116,183,155,116,245,196,151,245,86,159,173,86,218,114,227,218,213,126,234,213,74,21,244,74,158,34,143,158,162,18,171,162,78,88,98,78,232,7,95,232,229,153,29,229,57,52,35,57,193,110,246,193,68,80,108,68,93,222,50,93,114,104,70,114,38,101,160,38,147,188,205,147,3,219,218,3,198,248,186,198,250,200,158,250,130,168,214,130,207,43,110,207,80,64,112,80,235,220,133,235,117,254,10,117,138,50,147,138,141,164,223,141,76,202,41,76,20,16,28,20,115,33,215,115,204,240,180,204,9,211,212,9,16,93,138,16,226,15,81,226,0,0,0,0,154,111,25,154,224,157,26,224,143,54,148,143,230,66,199,230,236,74,201,236,253,94,210,253,171,193,127,171,216,224,168,216,47,1,0,0,0,0,0,0,192,177,0,0,0,0,0,0,0,0,0,0,16,0,0,0,128,0,0,0,160,16,0,0,32,0,0,0,33,0,0,0,34,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,152,47,138,66,145,68,55,113,207,251,192,181,165,219,181,233,91,194,86,57,241,17,241,89,164,130,63,146,213,94,28,171,152,170,7,216,1,91,131,18,190,133,49,36,195,125,12,85,116,93,190,114,254,177,222,128,167,6,220,155,116,241,155,193,193,105,155,228,134,71,190,239,198,157,193,15,204,161,12,36,111,44,233,45,170,132,116,74,220,169,176,92,218,136,249,118,82,81,62,152,109,198,49,168,200,39,3,176,199,127,89,191,243,11,224,198,71,145,167,213,81,99,202,6,103,41,41,20,133,10,183,39,56,33,27,46,252,109,44,77,19,13,56,83,84,115,10,101,187,10,106,118,46,201,194,129,133,44,114,146,161,232,191,162,75,102,26,168,112,139,75,194,163,81,108,199,25,232,146,209,36,6,153,214,133,53,14,244,112,160,106,16,22,193,164,25,8,108,55,30,76,119,72,39,181,188,176,52,179,12,28,57,74,170,216,78,79,202,156,91,243,111,46,104,238,130,143,116,111,99,165,120,20,120,200,132,8,2,199,140,250,255,190,144,235,108,80,164,247,163,249,190,242,120,113,198,18,0,0,0,0,0,0,0,3,0,0,0,27,184,0,0,120,50,0,0,57,184,0,0,65,184,0,0,74,184,0,0,77,184,0,0,57,184,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,31,184,0,0,35,184,0,0,41,184,0,0,46,184,0,0,52,184,0,0,0,0,0,0,16,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,22,0,0,0,37,0,0,0,63,0,0,0,92,0,0,0,117,0,0,0,132,0,0,0,147,0,0,0,161,0,0,0,175,0,0,0,190,0,0,0,205,0,0,0,230,0,0,0,243,0,0,0,2,1,0,0,16,1,0,0,27,1,0,0,41,1,0,0,63,1,0,0,79,1,0,0,109,1,0,0,129,1,0,0,153,1,0,0,179,1,0,0,204,1,0,0,222,1,0,0,231,1,0,0,241,1,0,0,1,2,0,0,14,2,0,0,28,2,0,0,47,2,0,0,71,2,0,0,91,2,0,0,107,2,0,0,122,2,0,0,138,2,0,0,154,2,0,0,171,2,0,0,185,2,0,0,201,2,0,0,228,2,0,0,245,2,0,0,9,3,0,0,28,3,0,0,45,3,0,0,65,3,0,0,77,3,0,0,91,3,0,0,104,3,0,0,120,3,0,0,139,3,0,0,158,3,0,0,178,3,0,0,198,3,0,0,212,3,0,0,234,3,0,0,254,3,0,0,6,4,0,0,10,4,0,0,24,4,0,0,47,4,0,0,55,4,0,0,70,4,0,0,83,4,0,0,98,4,0,0,127,4,0,0,156,4,0,0,179,4,0,0,195,4,0,0,211,4,0,0,231,4,0,0,244,4,0,0,3,5,0,0,20,5,0,0,36,5,0,0,53,5,0,0,70,5,0,0,82,5,0,0,95,5,0,0,126,5,0,0,147,5,0,0,167,5,0,0,188,5,0,0,210,5,0,0,222,5,0,0,237,5,0,0,245,5,0,0,2,6,0,0,11,6,0,0,29,6,0,0,40,6,0,0,51,6,0,0,65,6,0,0,85,6,0,0,98,6,0,0,110,6,0,0,124,6,0,0,136,6,0,0,156,6,0,0,175,6,0,0,195,6,0,0,217,6,0,0,241,6,0,0,6,7,0,0,29,7,0,0,50,7,0,0,65,7,0,0,76,7,0,0,96,7,0,0,109,7,0,0,122,7,0,0,139,7,0,0,161,7,0,0,175,7,0,0,195,7,0,0,211,7,0,0,225,7,0,0,236,7,0,0,0,8,0,0,23,8,0,0,44,8,0,0,59,8,0,0,80,8,0,0,102,8,0,0,118,8,0,0,132,8,0,0,148,8,0,0,162,8,0,0,179,8,0,0,191,8,0,0,223,8,0,0,243,8,0,0,255,8,0,0,9,9,0,0,21,9,0,0,39,9,0,0,60,9,0,0,72,9,0,0,87,9,0,0,104,9,0,0,119,9,0,0,135,9,0,0,149,9,0,0,168,9,0,0,187,9,0,0,210,9,0,0,231,9,0,0,255,9,0,0,17,10,0,0,39,10,0,0,62,10,0,0,80,10,0,0,92,10,0,0,110,10,0,0,127,10,0,0,141,10,0,0,158,10,0,0,173,10,0,0,196,10,0,0,215,10,0,0,228,10,0,0,247,10,0,0,15,11,0,0,42,11,0,0,55,11,0,0,80,11,0,0,91,11,0,0,110,11,0,0,122,11,0,0,138,11,0,0,156,11,0,0,183,11,0,0,190,11,0,0,205,11,0,0,221,11,0,0,237,11,0,0,1,12,0,0,14,12,0,0,26,12,0,0,43,12,0,0,55,12,0,0,72,12,0,0,86,12,0,0,102,12,0,0,129,12,0,0,152,12,0,0,175,12,0,0,198,12,0,0,213,12,0,0,230,12,0,0,248,12,0,0,13,13,0,0,32,13,0,0,63,13,0,0,81,13,0,0,99,13,0,0,121,13,0,0,147,13,0,0,174,13,0,0,191,13,0,0,232,13,0,0,8,14,0,0,46,14,0,0,73,14,0,0,103,14,0,0,133,14,0,0,161,14,0,0,198,14,0,0,222,14,0,0,14,15,0,0,56,15,0,0,96,15,0,0,132,15,0,0,143,15,0,0,161,15,0,0,178,15,0,0,209,15,0,0,230,15,0,0,255,15,0,0,14,16,0,0,38,16,0,0,57,16,0,0,93,16,0,0,114,16,0,0,143,16,0,0,163,16,0,0,190,16,0,0,218,16,0,0,233,16,0,0,244,16,0,0,5,17,0,0,42,17,0,0,87,17,0,0,131,17,0,0,171,17,0,0,209,17,0,0,247,17,0,0,33,18,0,0,67,18,0,0,112,18,0,0,157,18,0,0,170,18,0,0,180,18,0,0,193,18,0,0,228,18,0,0,248,18,0,0,10,19,0,0,33,19,0,0,57,19,0,0,78,19,0,0,106,19,0,0,136,19,0,0,164,19,0,0,184,19,0,0,208,19,0,0,235,19,0,0,253,19,0,0,15,20,0,0,43,20,0,0,58,20,0,0,74,20,0,0,102,20,0,0,125,20,0,0,145,20,0,0,162,20,0,0,190,20,0,0,214,20,0,0,239,20,0,0,3,21,0,0,23,21,0,0,42,21,0,0,71,21,0,0,95,21,0,0,123,21,0,0,150,21,0,0,176,21,0,0,205,21,0,0,229,21,0,0,254,21,0,0,25,22,0,0,54,22,0,0,71,22,0,0,96,22,0,0,119,22,0,0,141,22,0,0,160,22,0,0,182,22,0,0,215,22,0,0,245,22,0,0,12,23,0,0,47,23,0,0,63,23,0,0,83,23,0,0,103,23,0,0,120,23,0,0,147,23,0,0,160,23,0,0,182,23,0,0,202,23,0,0,230,23,0,0,2,24,0,0,21,24,0,0,39,24,0,0,80,24,0,0,120,24,0,0,159,24,0,0,173,24,0,0,208,24,0,0,247,24,0,0,24,25,0,0,51,25,0,0,74,25,0,0,104,25,0,0,135,25,0,0,164,25,0,0,190,25,0,0,213,25,0,0,233,25,0,0,252,25,0,0,22,26,0,0,43,26,0,0,76,26,0,0,113,26,0,0,147,26,0,0,172,26,0,0,201,26,0,0,221,26,0,0,248,26,0,0,28,27,0,0,50,27,0,0,72,27,0,0,100,27,0,0,139,27,0,0,173,27,0,0,195,27,0,0,227,27,0,0,250,27,0,0,31,28,0,0,60,28,0,0,77,28,0,0,105,28,0,0,132,28,0,0,153,28,0,0,180,28,0,0,204,28,0,0,219,28,0,0,247,28,0,0,15,29,0,0,34,29,0,0,56,29,0,0,93,29,0,0,119,29,0,0,145,29,0,0,171,29,0,0,197,29,0,0,223,29,0,0,249,29,0,0,19,30,0,0,45,30,0,0,71,30,0,0,98,30,0,0,125,30,0,0,152,30,0,0,179,30,0,0,206,30,0,0,233,30,0,0,4,31,0,0,27,31,0,0,48,31,0,0,60,31,0,0,7,0,0,0,13,0,0,0,98,0,0,0,99,0,0,0,68,0,0,0,97,0,0,0,11,0,0,0,114,0,0,0,0,0,0,0,0,0,0,0,52,0,0,0,9,0,0,0,77,0,0,0,74,0,0,0,53,0,0,0,0,0,0,0,56,0,0,0,57,0,0,0,59,0,0,0,16,0,0,0,125,0,0,0,10,0,0,0,44,0,0,0,70,0,0,0,103,0,0,0,111,0,0,0,104,0,0,0,0,0,0,0,35,0,0,0,35,0,0,0,89,0,0,0,0,0,0,0,33,0,0,0,73,0,0,0,122,0,0,0,17,0,0,0,14,0,0,0,27,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,0,0,0,113,0,0,0,43,0,0,0,0,0,0,0,84,0,0,0,115,0,0,0,4,0,0,0,22,0,0,0,5,0,0,0,106,0,0,0,21,0,0,0,120,0,0,0,51,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,79,0,0,0,80,0,0,0,83,0,0,0,82,0,0,0,81,0,0,0,48,0,0,0,40,0,0,0,124,0,0,0,24,0,0,0,31,0,0,0,90,0,0,0,72,0,0,0,36,0,0,0,119,0,0,0,0,0,0,0,100,0,0,0,102,0,0,0,101,0,0,0,23,0,0,0,55,0,0,0,105,0,0,0,50,0,0,0,61,0,0,0,19,0,0,0,2,0,0,0,8,0,0,0,37,0,0,0,67,0,0,0,123,0,0,0,12,0,0,0,42,0,0,0,64,0,0,0,65,0,0,0,92,0,0,0,28,0,0,0,63,0,0,0,60,0,0,0,38,0,0,0,15,0,0,0,107,0,0,0,20,0,0,0,39,0,0,0,118,0,0,0,88,0,0,0,95,0,0,0,25,0,0,0,76,0,0,0,6,0,0,0,95,0,0,0,75,0,0,0,1,0,0,0,96,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,71,0,0,0,93,0,0,0,91,0,0,0,34,0,0,0,78,0,0,0,66,0,0,0,121,0,0,0,85,0,0,0,30,0,0,0,0,0,0,0,108,0,0,0,94,0,0,0,29,0,0,0,3,0,0,0,69,0,0,0,116,0,0,0,86,0,0,0,62,0,0,0,110,0,0,0,109,0,0,0,26,0,0,0,117,0,0,0,49,0,0,0,87,0,0,0,11,0,0,0,18,0,0,0,54,0,0,0,107,128,0,0,81,128,0,0,127,128,0,0,47,128,0,0,49,128,0,0,104,128,0,0,0,128,0,0,82,128,0,0,11,128,0,0,21,128,0,0,6,128,0,0,138,128,0,0,86,128,0,0,1,128,0,0,36,128,0,0,95,128,0,0,19,128,0,0,35,128,0,0,139,128,0,0,80,128,0,0,97,128,0,0,51,128,0,0,48,128,0,0,75,128,0,0,65,128,0,0,102,128,0,0,134,128,0,0,37,128,0,0,91,128,0,0,126,128,0,0,122,128,0,0,66,128,0,0,109,128,0,0,32,128,0,0,117,128,0,0,28,128,0,0,29,128,0,0,69,128,0,0,83,128,0,0,94,128,0,0,98,128,0,0,63,128,0,0,87,128,0,0,43,128,0,0,22,128,0,0,54,128,0,0,55,128,0,0,56,128,0,0,62,128,0,0,136,128,0,0,78,128,0,0,53,128,0,0,10,128,0,0,14,128,0,0,140,128,0,0,76,128,0,0,16,128,0,0,17,128,0,0,18,128,0,0,93,128,0,0,79,128,0,0,131,128,0,0,92,128,0,0,88,128,0,0,89,128,0,0,119,128,0,0,84,128,0,0,4,128,0,0,128,128,0,0,23,128,0,0,114,128,0,0,68,128,0,0,33,128,0,0,13,128,0,0,106,128,0,0,103,128,0,0,12,128,0,0,118,128,0,0,57,128,0,0,58,128,0,0,61,128,0,0,60,128,0,0,59,128,0,0,45,128,0,0,121,128,0,0,130,128,0,0,137,128,0,0,100,128,0,0,30,128,0,0,67,128,0,0,116,128,0,0,90,128,0,0,115,128,0,0,125,128,0,0,101,128,0,0,105,128,0,0,108,128,0,0,5,128,0,0,2,128,0,0,3,128,0,0,72,128,0,0,74,128,0,0,73,128,0,0,24,128,0,0,26,128,0,0,77,128,0,0,50,128,0,0,96,128,0,0,124,128,0,0,133,128,0,0,132,128,0,0,25,128,0,0,41,128,0,0,42,128,0,0,7,128,0,0,46,128,0,0,129,128,0,0,135,128,0,0,99,128,0,0,70,128,0,0,52,128,0,0,120,128,0,0,34,128,0,0,85,128,0,0,64,128,0,0,20,128,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,120,61,0,0,5,0,0,0,0,0,0,0,0,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,0,0,0,51,0,0,0,8,43,1,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,120,61,0,0,240,61,0,0,5,0,0,0,0,0,0,0,0,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,52,0,0,0,51,0,0,0,16,47,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,192,3,0,0,192,4,0,0,192,5,0,0,192,6,0,0,192,7,0,0,192,8,0,0,192,9,0,0,192,10,0,0,192,11,0,0,192,12,0,0,192,13,0,0,192,14,0,0,192,15,0,0,192,16,0,0,192,17,0,0,192,18,0,0,192,19,0,0,192,20,0,0,192,21,0,0,192,22,0,0,192,23,0,0,192,24,0,0,192,25,0,0,192,26,0,0,192,27,0,0,192,28,0,0,192,29,0,0,192,30,0,0,192,31,0,0,192,0,0,0,179,1,0,0,195,2,0,0,195,3,0,0,195,4,0,0,195,5,0,0,195,6,0,0,195,7,0,0,195,8,0,0,195,9,0,0,195,10,0,0,195,11,0,0,195,12,0,0,195,13,0,0,211,14,0,0,195,15,0,0,195,0,0,12,187,1,0,12,195,2,0,12,195,3,0,12,195,4,0,12,211,32,0,0,0,9,0,0,0,10,0,0,0,13,0,0,0,11,0,0,0,12,0,0,0,133,0,0,0,0,32,0,0,1,32,0,0,2,32,0,0,3,32,0,0,4,32,0,0,5,32,0,0,6,32,0,0,8,32,0,0,9,32,0,0,10,32,0,0,40,32,0,0,41,32,0,0,95,32,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,53,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,0,64,0,0,0,0,0,0,45,244,81,88,207,140,177,192,70,246,181,203,41,49,3,199,4,91,112,48,180,93,253,32,120,127,139,154,216,89,41,80,104,72,137,171,167,86,3,108,255,183,205,136,63,212,119,180,43,165,163,112,241,186,228,168,252,65,131,253,217,111,225,138,122,47,45,116,150,7,31,13,9,94,3,118,44,112,247,64,165,44,167,111,87,65,168,170,116,223,160,88,100,3,74,199,196,60,83,174,175,95,24,4,21,177,227,109,40,134,171,12,164,191,67,240,233,80,129,57,87,22,82,55,3,0,0,0,3,0,5,0,7,0,11,0,13,0,17,0,19,0,23,0,29,0,31,0,37,0,41,0,43,0,47,0,53,0,59,0,61,0,67,0,71,0,73,0,79,0,83,0,89,0,97,0,101,0,103,0,107,0,109,0,113,0,127,0,131,0,137,0,139,0,149,0,151,0,157,0,163,0,167,0,173,0,179,0,181,0,191,0,193,0,197,0,199,0,211,0,223,0,227,0,229,0,233,0,239,0,241,0,251,0,1,1,7,1,13,1,15,1,21,1,25,1,27,1,37,1,51,1,55,1,57,1,61,1,75,1,81,1,91,1,93,1,97,1,103,1,111,1,117,1,123,1,127,1,133,1,141,1,145,1,153,1,163,1,165,1,175,1,177,1,183,1,187,1,193,1,201,1,205,1,207,1,211,1,223,1,231,1,235,1,243,1,247,1,253,1,9,2,11,2,29,2,35,2,45,2,51,2,57,2,59,2,65,2,75,2,81,2,87,2,89,2,95,2,101,2,105,2,107,2,119,2,129,2,131,2,135,2,141,2,147,2,149,2,161,2,165,2,171,2,179,2,189,2,197,2,207,2,215,2,221,2,227,2,231,2,239,2,245,2,249,2,1,3,5,3,19,3,29,3,41,3,43,3,53,3,55,3,59,3,61,3,71,3,85,3,89,3,91,3,95,3,109,3,113,3,115,3,119,3,139,3,143,3,151,3,161,3,169,3,173,3,179,3,185,3,199,3,203,3,209,3,215,3,223,3,229,3,241,3,245,3,251,3,253,3,7,4,9,4,15,4,25,4,27,4,37,4,39,4,45,4,63,4,67,4,69,4,73,4,79,4,85,4,93,4,99,4,105,4,127,4,129,4,139,4,147,4,157,4,163,4,169,4,177,4,189,4,193,4,199,4,205,4,207,4,213,4,225,4,235,4,253,4,255,4,3,5,9,5,11,5,17,5,21,5,23,5,27,5,39,5,41,5,47,5,81,5,87,5,93,5,101,5,119,5,129,5,143,5,147,5,149,5,153,5,159,5,167,5,171,5,173,5,179,5,191,5,201,5,203,5,207,5,209,5,213,5,219,5,231,5,243,5,251,5,7,6,13,6,17,6,23,6,31,6,35,6,43,6,47,6,61,6,65,6,71,6,73,6,77,6,83,6,85,6,91,6,101,6,121,6,127,6,131,6,133,6,157,6,161,6,163,6,173,6,185,6,187,6,197,6,205,6,211,6,217,6,223,6,241,6,247,6,251,6,253,6,9,7,19,7,31,7,39,7,55,7,69,7,75,7,79,7,81,7,85,7,87,7,97,7,109,7,115,7,121,7,139,7,141,7,157,7,159,7,181,7,187,7,195,7,201,7,205,7,207,7,211,7,219,7,225,7,235,7,237,7,247,7,5,8,15,8,21,8,33,8,35,8,39,8,41,8,51,8,63,8,65,8,81,8,83,8,89,8,93,8,95,8,105,8,113,8,131,8,155,8,159,8,165,8,173,8,189,8,191,8,195,8,203,8,219,8,221,8,225,8,233,8,239,8,245,8,249,8,5,9,7,9,29,9,35,9,37,9,43,9,47,9,53,9,67,9,73,9,77,9,79,9,85,9,89,9,95,9,107,9,113,9,119,9,133,9,137,9,143,9,155,9,163,9,169,9,173,9,199,9,217,9,227,9,235,9,239,9,245,9,247,9,253,9,19,10,31,10,33,10,49,10,57,10,61,10,73,10,87,10,97,10,99,10,103,10,111,10,117,10,123,10,127,10,129,10,133,10,139,10,147,10,151,10,153,10,159,10,169,10,171,10,181,10,189,10,193,10,207,10,217,10,229,10,231,10,237,10,241,10,243,10,3,11,17,11,21,11,27,11,35,11,41,11,45,11,63,11,71,11,81,11,87,11,93,11,101,11,111,11,123,11,137,11,141,11,147,11,153,11,155,11,183,11,185,11,195,11,203,11,207,11,221,11,225,11,233,11,245,11,251,11,7,12,11,12,17,12,37,12,47,12,49,12,65,12,91,12,95,12,97,12,109,12,115,12,119,12,131,12,137,12,145,12,149,12,157,12,179,12,181,12,185,12,187,12,199,12,227,12,229,12,235,12,241,12,247,12,251,12,1,13,3,13,15,13,19,13,31,13,33,13,43,13,45,13,61,13,63,13,79,13,85,13,105,13,121,13,129,13,133,13,135,13,139,13,141,13,163,13,171,13,183,13,189,13,199,13,201,13,205,13,211,13,213,13,219,13,229,13,231,13,243,13,253,13,255,13,9,14,23,14,29,14,33,14,39,14,47,14,53,14,59,14,75,14,87,14,89,14,93,14,107,14,113,14,117,14,125,14,135,14,143,14,149,14,155,14,177,14,183,14,185,14,195,14,209,14,213,14,219,14,237,14,239,14,249,14,7,15,11,15,13,15,23,15,37,15,41,15,49,15,67,15,71,15,77,15,79,15,83,15,89,15,91,15,103,15,107,15,127,15,149,15,161,15,163,15,167,15,173,15,179,15,181,15,187,15,209,15,211,15,217,15,233,15,239,15,251,15,253,15,3,16,15,16,31,16,33,16,37,16,43,16,57,16,61,16,63,16,81,16,105,16,115,16,121,16,123,16,133,16,135,16,145,16,147,16,157,16,163,16,165,16,175,16,177,16,187,16,193,16,201,16,231,16,241,16,243,16,253,16,5,17,11,17,21,17,39,17,45,17,57,17,69,17,71,17,89,17,95,17,99,17,105,17,111,17,129,17,131,17,141,17,155,17,161,17,165,17,167,17,171,17,195,17,197,17,209,17,215,17,231,17,239,17,245,17,251,17,13,18,29,18,31,18,35,18,41,18,43,18,49,18,55,18,65,18,71,18,83,18,95,18,113,18,115,18,121,18,125,18,143,18,151,18,175,18,179,18,181,18,185,18,191,18,193,18,205,18,209,18,223,18,253,18,7,19,13,19,25,19,39,19,45,19,55,19,67,19,69,19,73,19,79,19,87,19,93,19,103,19,105,19,109,19,123,19,129,19,135,19,0,0,0,0,194,1,132,3,70,2,8,7,202,6,140,4,78,5,16,14,210,15,148,13,86,12,24,9,218,8,156,10,94,11,32,28,226,29,164,31,102,30,40,27,234,26,172,24,110,25,48,18,242,19,180,17,118,16,56,21,250,20,188,22,126,23,64,56,130,57,196,59,6,58,72,63,138,62,204,60,14,61,80,54,146,55,212,53,22,52,88,49,154,48,220,50,30,51,96,36,162,37,228,39,38,38,104,35,170,34,236,32,46,33,112,42,178,43,244,41,54,40,120,45,186,44,252,46,62,47,128,112,66,113,4,115,198,114,136,119,74,118,12,116,206,117,144,126,82,127,20,125,214,124,152,121,90,120,28,122,222,123,160,108,98,109,36,111,230,110,168,107,106,106,44,104,238,105,176,98,114,99,52,97,246,96,184,101,122,100,60,102,254,103,192,72,2,73,68,75,134,74,200,79,10,78,76,76,142,77,208,70,18,71,84,69,150,68,216,65,26,64,92,66,158,67,224,84,34,85,100,87,166,86,232,83,42,82,108,80,174,81,240,90,50,91,116,89,182,88,248,93,58,92,124,94,190,95,0,225,194,224,132,226,70,227,8,230,202,231,140,229,78,228,16,239,210,238,148,236,86,237,24,232,218,233,156,235,94,234,32,253,226,252,164,254,102,255,40,250,234,251,172,249,110,248,48,243,242,242,180,240,118,241,56,244,250,245,188,247,126,246,64,217,130,216,196,218,6,219,72,222,138,223,204,221,14,220,80,215,146,214,212,212,22,213,88,208,154,209,220,211,30,210,96,197,162,196,228,198,38,199,104,194,170,195,236,193,46,192,112,203,178,202,244,200,54,201,120,204,186,205,252,207,62,206,128,145,66,144,4,146,198,147,136,150,74,151,12,149,206,148,144,159,82,158,20,156,214,157,152,152,90,153,28,155,222,154,160,141,98,140,36,142,230,143,168,138,106,139,44,137,238,136,176,131,114,130,52,128,246,129,184,132,122,133,60,135,254,134,192,169,2,168,68,170,134,171,200,174,10,175,76,173,142,172,208,167,18,166,84,164,150,165,216,160,26,161,92,163,158,162,224,181,34,180,100,182,166,183,232,178,42,179,108,177,174,176,240,187,50,186,116,184,182,185,248,188,58,189,124,191,190,190,73,0,49,1,83,0,127,1,48,1,105,0,120,1,255,0,129,1,83,2,130,1,131,1,132,1,133,1,134,1,84,2,135,1,136,1,137,1,86,2,138,1,87,2,139,1,140,1,142,1,221,1,143,1,89,2,144,1,91,2,145,1,146,1,147,1,96,2,148,1,99,2,150,1,105,2,151,1,104,2,152,1,153,1,156,1,111,2,157,1,114,2,159,1,117,2,166,1,128,2,167,1,168,1,169,1,131,2,172,1,173,1,174,1,136,2,175,1,176,1,177,1,138,2,178,1,139,2,183,1,146,2,184,1,185,1,188,1,189,1,196,1,198,1,196,1,197,1,197,1,198,1,199,1,201,1,199,1,200,1,200,1,201,1,202,1,204,1,202,1,203,1,203,1,204,1,241,1,243,1,241,1,242,1,242,1,243,1,244,1,245,1,246,1,149,1,247,1,191,1,32,2,158,1,134,3,172,3,136,3,173,3,137,3,174,3,138,3,175,3,140,3,204,3,142,3,205,3,143,3,206,3,153,3,69,3,153,3,190,31,163,3,194,3,247,3,248,3,250,3,251,3,96,30,155,30,223,0,223,0,158,30,223,0,89,31,81,31,91,31,83,31,93,31,85,31,95,31,87,31,188,31,179,31,204,31,195,31,236,31,229,31,252,31,243,31,58,2,101,44,59,2,60,2,61,2,154,1,62,2,102,44,65,2,66,2,67,2,128,1,68,2,137,2,69,2,140,2,244,3,184,3,249,3,242,3,253,3,123,3,254,3,124,3,255,3,125,3,192,4,207,4,38,33,201,3,42,33,107,0,43,33,229,0,50,33,78,33,131,33,132,33,96,44,97,44,98,44,107,2,99,44,125,29,100,44,125,2,109,44,81,2,110,44,113,2,111,44,80,2,112,44,82,2,114,44,115,44,117,44,118,44,126,44,63,2,127,44,64,2,242,44,243,44,125,167,121,29,139,167,140,167,141,167,101,2,170,167,102,2,199,16,39,45,205,16,45,45,118,3,119,3,156,3,181,0,146,3,208,3,152,3,209,3,166,3,213,3,160,3,214,3,154,3,240,3,161,3,241,3,149,3,245,3,207,3,215,3,0,0,0,0,65,0,32,26,192,0,32,31,0,1,1,47,50,1,1,5,57,1,1,15,74,1,1,45,121,1,1,5,112,3,1,3,145,3,32,17,163,3,32,9,0,4,80,16,16,4,32,32,96,4,1,33,138,4,1,53,193,4,1,13,208,4,1,63,20,5,1,19,49,5,48,38,160,1,1,5,179,1,1,3,205,1,1,15,222,1,1,17,248,1,1,39,34,2,1,17,216,3,1,23,0,30,1,149,160,30,1,95,8,31,248,8,24,31,248,6,40,31,248,8,56,31,248,8,72,31,248,6,104,31,248,8,136,31,248,8,152,31,248,8,168,31,248,8,184,31,248,2,186,31,182,2,200,31,170,4,216,31,248,2,218,31,156,2,232,31,248,2,234,31,144,2,248,31,128,2,250,31,130,2,70,2,1,9,16,5,1,3,96,33,16,16,0,44,48,47,103,44,1,5,128,44,1,99,235,44,1,3,64,166,1,45,128,166,1,23,34,167,1,13,50,167,1,61,121,167,1,3,126,167,1,9,144,167,1,3,160,167,1,9,33,255,32,26,0,0,0,0,119,114,97,112,46,99,0,97,109,111,117,110,116,32,115,116,111,114,101,100,32,97,116,32,37,112,44,32,105,115,32,37,115,32,37,108,108,117,46,37,108,117,10,0,109,105,110,116,95,119,105,116,104,100,114,97,119,97,108,0,109,101,114,99,104,95,99,111,110,116,114,97,99,116,0,109,97,115,116,101,114,95,100,101,110,111,109,105,110,97,116,105,111,110,95,107,101,121,95,118,97,108,105,100,105,116,121,0,109,105,110,116,95,116,101,115,116,95,101,100,100,115,97,0,116,105,109,101,95,102,114,111,109,95,115,101,99,111,110,100,115,0,72,101,108,108,111,44,32,119,111,114,108,100,32,40,98,121,32,84,97,108,101,114,32,101,109,115,99,114,105,112,116,101,100,32,99,111,100,101,41,10,0,99,111,109,109,111,110,95,97,108,108,111,99,97,116,105,111,110,46,99,0,71,78,85,78,69,84,95,120,109,97,108,108,111,99,95,0,109,97,108,108,111,99,0,71,78,85,78,69,84,95,120,102,114,101,101,95,0,71,78,85,78,69,84,95,120,115,116,114,100,117,112,95,0,71,78,85,78,69,84,95,115,110,112,114,105,110,116,102,0,68,69,66,85,71,0,73,78,70,79,0,87,65,82,78,73,78,71,0,69,82,82,79,82,0,78,79,78,69,0,99,111,109,109,111,110,95,108,111,103,103,105,110,103,46,99,0,37,115,45,37,100,0,37,115,37,100,37,115,0,97,98,0,115,101,116,117,112,95,108,111,103,95,102,105,108,101,0,71,78,85,78,69,84,95,108,111,103,95,115,107,105,112,0,109,121,108,111,103,0,108,111,99,97,108,116,105,109,101,32,101,114,114,111,114,0,37,98,32,37,100,32,37,72,58,37,77,58,37,83,45,37,37,48,54,117,0,77,101,115,115,97,103,101,32,96,37,46,42,115,39,32,114,101,112,101,97,116,101,100,32,37,117,32,116,105,109,101,115,32,105,110,32,116,104,101,32,108,97,115,116,32,37,115,10,0,73,78,86,65,76,73,68,0,37,115,32,37,115,32,37,115,32,37,115,0,96,37,115,39,32,102,97,105,108,101,100,32,111,110,32,102,105,108,101,32,96,37,115,39,32,97,116,32,37,115,58,37,100,32,119,105,116,104,32,101,114,114,111,114,58,32,37,115,10,0,99,114,121,112,116,111,95,115,121,109,109,101,116,114,105,99,46,99,0,115,101,116,117,112,95,99,105,112,104,101,114,95,97,101,115,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,115,121,109,109,101,116,114,105,99,95,101,110,99,114,121,112,116,0,115,101,116,117,112,95,99,105,112,104,101,114,95,116,119,111,102,105,115,104,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,115,121,109,109,101,116,114,105,99,95,100,101,99,114,121,112,116,0,40,112,114,105,118,97,116,101,45,107,101,121,40,101,99,99,40,99,117,114,118,101,32,34,69,100,50,53,53,49,57,34,41,40,100,32,37,98,41,41,41,0,99,114,121,112,116,111,95,101,99,99,46,99,0,103,99,114,121,95,115,101,120,112,95,98,117,105,108,100,0,113,64,101,100,100,115,97,0,40,112,114,105,118,97,116,101,45,107,101,121,40,101,99,99,40,99,117,114,118,101,32,34,69,100,50,53,53,49,57,34,41,40,102,108,97,103,115,32,101,100,100,115,97,41,40,100,32,37,98,41,41,41,0,100,101,99,111,100,101,95,112,114,105,118,97,116,101,95,101,100,100,115,97,95,107,101,121,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,101,100,100,115,97,95,107,101,121,95,103,101,116,95,112,117,98,108,105,99,0,100,101,99,111,100,101,95,112,114,105,118,97,116,101,95,101,99,100,104,101,95,107,101,121,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,101,99,100,104,101,95,107,101,121,95,103,101,116,95,112,117,98,108,105,99,0,40,103,101,110,107,101,121,40,101,99,99,40,99,117,114,118,101,32,34,69,100,50,53,53,49,57,34,41,40,102,108,97,103,115,32,101,100,100,115,97,32,110,111,45,107,101,121,116,101,115,116,41,41,41,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,101,99,100,104,101,95,107,101,121,95,99,114,101,97,116,101,0,103,99,114,121,95,112,107,95,103,101,110,107,101,121,0,107,101,121,95,102,114,111,109,95,115,101,120,112,0,40,103,101,110,107,101,121,40,101,99,99,40,99,117,114,118,101,32,34,69,100,50,53,53,49,57,34,41,40,102,108,97,103,115,32,101,100,100,115,97,41,41,41,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,101,100,100,115,97,95,107,101,121,95,99,114,101,97,116,101,0,40,100,97,116,97,40,102,108,97,103,115,32,101,100,100,115,97,41,40,104,97,115,104,45,97,108,103,111,32,37,115,41,40,118,97,108,117,101,32,37,98,41,41,0,100,97,116,97,95,116,111,95,101,100,100,115,97,95,118,97,108,117,101,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,101,100,100,115,97,95,115,105,103,110,0,69,100,68,83,65,32,115,105,103,110,105,110,103,32,102,97,105,108,101,100,32,97,116,32,37,115,58,37,100,58,32,37,115,10,0,40,112,117,98,108,105,99,45,107,101,121,40,101,99,99,40,99,117,114,118,101,32,69,100,50,53,53,49,57,41,40,113,32,37,98,41,41,41,0,40,115,105,103,45,118,97,108,40,101,100,100,115,97,40,114,32,37,98,41,40,115,32,37,98,41,41,41,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,101,100,100,115,97,95,118,101,114,105,102,121,0,40,112,117,98,108,105,99,45,107,101,121,40,101,99,99,40,99,117,114,118,101,32,69,100,50,53,53,49,57,41,40,102,108,97,103,115,32,101,100,100,115,97,41,40,113,32,37,98,41,41,41,0,69,100,68,83,65,32,115,105,103,110,97,116,117,114,101,32,118,101,114,105,102,105], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE+10240); +/* memory initializer */ allocate([99,97,116,105,111,110,32,102,97,105,108,101,100,32,97,116,32,37,115,58,37,100,58,32,37,115,10,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,101,99,99,95,101,99,100,104,0,103,101,116,95,97,102,102,105,110,101,32,102,97,105,108,101,100,0,99,114,121,112,116,111,95,104,97,115,104,46,99,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,104,97,115,104,95,99,111,110,116,101,120,116,95,115,116,97,114,116,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,104,97,115,104,95,99,111,110,116,101,120,116,95,102,105,110,105,115,104,0,99,114,121,112,116,111,95,109,112,105,46,99,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,109,112,105,95,112,114,105,110,116,95,117,110,115,105,103,110,101,100,0,96,37,115,39,32,102,97,105,108,101,100,32,97,116,32,37,115,58,37,100,32,119,105,116,104,32,101,114,114,111,114,58,32,37,115,10,0,103,99,114,121,95,109,112,105,95,112,114,105,110,116,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,109,112,105,95,115,99,97,110,95,117,110,115,105,103,110,101,100,0,103,99,114,121,95,109,112,105,95,115,99,97,110,0,49,46,54,46,48,0,108,105,98,103,99,114,121,112,116,32,104,97,115,32,110,111,116,32,116,104,101,32,101,120,112,101,99,116,101,100,32,118,101,114,115,105,111,110,32,40,118,101,114,115,105,111,110,32,37,115,32,105,115,32,114,101,113,117,105,114,101,100,41,46,10,0,99,114,121,112,116,111,95,114,97,110,100,111,109,46,99,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,97,110,100,111,109,95,105,110,105,116,0,70,97,105,108,101,100,32,116,111,32,115,101,116,32,108,105,98,103,99,114,121,112,116,32,111,112,116,105,111,110,32,37,115,58,32,37,115,10,0,68,73,83,65,66,76,69,95,83,69,67,77,69,77,0,69,78,65,66,76,69,95,81,85,73,67,75,95,82,65,78,68,79,77,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,97,110,100,111,109,95,117,51,50,0,40,103,101,110,107,101,121,40,114,115,97,40,110,98,105,116,115,32,37,100,41,41,41,0,99,114,121,112,116,111,95,114,115,97,46,99,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,112,114,105,118,97,116,101,95,107,101,121,95,99,114,101,97,116,101,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,112,114,105,118,97,116,101,95,107,101,121,95,101,110,99,111,100,101,0,117,116,105,108,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,112,114,105,118,97,116,101,95,107,101,121,95,100,101,99,111,100,101,0,68,101,99,111,100,101,100,32,112,114,105,118,97,116,101,32,107,101,121,32,105,115,32,110,111,116,32,118,97,108,105,100,10,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,112,114,105,118,97,116,101,95,107,101,121,95,103,101,116,95,112,117,98,108,105,99,0,69,120,116,101,114,110,97,108,32,112,114,111,116,111,99,111,108,32,118,105,111,108,97,116,105,111,110,32,100,101,116,101,99,116,101,100,32,97,116,32,37,115,58,37,100,46,10,0,40,112,117,98,108,105,99,45,107,101,121,40,114,115,97,40,110,32,37,109,41,40,101,32,37,109,41,41,41,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,112,117,98,108,105,99,95,107,101,121,95,101,110,99,111,100,101,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,112,117,98,108,105,99,95,107,101,121,95,100,101,99,111,100,101,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,115,105,103,110,97,116,117,114,101,95,101,110,99,111,100,101,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,98,108,105,110,100,105,110,103,95,107,101,121,95,101,110,99,111,100,101,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,98,108,105,110,100,105,110,103,95,107,101,121,95,100,101,99,111,100,101,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,98,108,105,110,100,0,100,97,116,97,95,116,111,95,115,101,120,112,0,40,100,97,116,97,32,40,102,108,97,103,115,32,114,97,119,41,32,40,118,97,108,117,101,32,37,77,41,41,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,115,105,103,110,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,115,105,103,110,97,116,117,114,101,95,100,101,99,111,100,101,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,117,110,98,108,105,110,100,0,40,115,105,103,45,118,97,108,32,40,114,115,97,32,40,115,32,37,77,41,41,41,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,118,101,114,105,102,121,0,82,83,65,32,115,105,103,110,97,116,117,114,101,32,118,101,114,105,102,105,99,97,116,105,111,110,32,102,97,105,108,101,100,32,97,116,32,37,115,58,37,100,58,32,37,115,10,0,115,116,114,105,110,103,115,46,99,0,37,108,108,117,32,37,115,0,102,111,114,101,118,101,114,0,109,115,0,109,0,100,97,121,0,100,97,121,115,0,101,110,100,32,111,102,32,116,105,109,101,0,37,97,32,37,98,32,37,100,32,37,72,58,37,77,58,37,83,32,37,89,0,194,181,115,0,48,32,109,115,0,71,78,85,78,69,84,95,83,84,82,73,78,71,83,95,100,97,116,97,95,116,111,95,115,116,114,105,110,103,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,71,72,74,75,77,78,80,81,82,83,84,86,87,88,89,90,0,71,78,85,78,69,84,95,83,84,82,73,78,71,83,95,115,116,114,105,110,103,95,116,111,95,100,97,116,97,0,118,105,115,105,98,105,108,105,116,121,46,99,0,103,99,114,121,95,109,100,95,104,97,115,104,95,98,117,102,102,101,114,0,99,97,108,108,101,100,32,105,110,32,110,111,110,45,111,112,101,114,97,116,105,111,110,97,108,32,115,116,97,116,101,0,103,99,114,121,95,109,100,95,103,101,116,95,97,108,103,111,0,117,115,101,100,32,105,110,32,110,111,110,45,111,112,101,114,97,116,105,111,110,97,108,32,115,116,97,116,101,0,103,99,114,121,95,114,97,110,100,111,109,105,122,101,0,103,99,114,121,95,99,114,101,97,116,101,95,110,111,110,99,101,0,109,105,115,99,46,99,0,95,103,99,114,121,95,102,97,116,97,108,95,101,114,114,111,114,0,10,70,97,116,97,108,32,101,114,114,111,114,58,32,0,70,97,116,97,108,58,32,0,79,104,104,104,104,32,106,101,101,101,101,58,32,0,68,66,71,58,32,0,91,85,110,107,110,111,119,110,32,108,111,103,32,108,101,118,101,108,32,37,100,93,58,32,0,95,103,99,114,121,95,108,111,103,118,0,105,110,116,101,114,110,97,108,32,101,114,114,111,114,32,40,102,97,116,97,108,32,111,114,32,98,117,103,41,0,46,46,46,32,116,104,105,115,32,105,115,32,97,32,98,117,103,32,40,37,115,58,37,100,58,37,115,41,10,0,65,115,115,101,114,116,105,111,110,32,96,37,115,39,32,102,97,105,108,101,100,32,40,37,115,58,37,100,58,37,115,41,10,0,32,0,37,115,58,37,115,0,37,42,115,32,32,0,37,48,50,120,0,32,92,10,0,37,42,115,32,37,42,115,0,32,40,110,117,108,108,41,0,32,91,37,117,32,98,105,116,93,0,32,91,111,117,116,32,111,102,32,99,111,114,101,93,0,45,0,43,0,100,105,118,105,100,101,32,98,121,32,122,101,114,111,0,103,108,111,98,97,108,46,99,0,103,108,111,98,97,108,95,105,110,105,116,0,49,46,55,46,48,45,98,101,116,97,50,51,48,0,118,101,114,115,105,111,110,58,37,115,58,10,0,99,105,112,104,101,114,115,58,37,115,58,10,0,97,101,115,58,116,119,111,102,105,115,104,0,112,117,98,107,101,121,115,58,37,115,58,10,0,114,115,97,58,101,99,99,0,100,105,103,101,115,116,115,58,37,115,58,10,0,115,104,97,50,53,54,58,115,104,97,53,49,50,0,114,110,100,45,109,111,100,58,108,105,110,117,120,58,10,0,99,112,117,45,97,114,99,104,58,58,10,0,109,112,105,45,97,115,109,58,37,115,58,10,0,104,119,102,108,105,115,116,58,0,37,115,58,0,10,0,102,105,112,115,45,109,111,100,101,58,37,99,58,37,99,58,10,0,115,116,97,110,100,97,114,100,0,102,105,112,115,0,115,121,115,116,101,109,0,112,114,105,110,116,95,99,111,110,102,105,103,0,114,110,103,45,116,121,112,101,58,37,115,58,37,100,58,10,0,111,117,116,32,111,102,32,99,111,114,101,32,105,110,32,115,101,99,117,114,101,32,109,101,109,111,114,121,0,92,120,37,48,50,120,0,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,48,49,50,51,52,53,54,55,56,57,45,46,47,95,58,42,43,61,0,115,101,120,112,46,99,0,100,111,95,118,115,101,120,112,95,115,115,99,97,110,0,37,100,0,37,117,0,38,92,0,95,103,99,114,121,95,115,101,120,112,95,102,105,110,100,95,116,111,107,101,110,0,95,103,99,114,121,95,115,101,120,112,95,110,116,104,0,3,4,0,8,9,11,10,12,13,34,39,92,0,45,46,47,95,58,42,43,61,0,37,48,50,88,0,37,117,58,0,95,103,99,114,121,95,115,101,120,112,95,115,112,114,105,110,116,0,112,97,100,108,111,99,107,45,114,110,103,0,112,97,100,108,111,99,107,45,97,101,115,0,112,97,100,108,111,99,107,45,115,104,97,0,112,97,100,108,111,99,107,45,109,109,117,108,0,105,110,116,101,108,45,99,112,117,0,105,110,116,101,108,45,98,109,105,50,0,105,110,116,101,108,45,115,115,115,101,51,0,105,110,116,101,108,45,112,99,108,109,117,108,0,105,110,116,101,108,45,97,101,115,110,105,0,105,110,116,101,108,45,114,100,114,97,110,100,0,105,110,116,101,108,45,97,118,120,0,105,110,116,101,108,45,97,118,120,50,0,97,114,109,45,110,101,111,110,0,47,101,116,99,47,103,99,114,121,112,116,47,104,119,102,46,100,101,110,121,0,109,101,109,111,114,121,32,97,116,32,37,112,32,99,111,114,114,117,112,116,101,100,32,40,117,110,100,101,114,102,108,111,119,61,37,48,50,120,41,10,0,109,101,109,111,114,121,32,97,116,32,37,112,32,99,111,114,114,117,112,116,101,100,32,40,111,118,101,114,102,108,111,119,61,37,48,50,120,41,10,0,87,97,114,110,105,110,103,58,32,117,115,105,110,103,32,105,110,115,101,99,117,114,101,32,109,101,109,111,114,121,33,10,0,102,97,105,108,101,100,32,116,111,32,100,114,111,112,32,115,101,116,117,105,100,10,0,115,101,99,117,114,101,32,109,101,109,111,114,121,32,105,115,32,100,105,115,97,98,108,101,100,0,99,97,110,39,116,32,109,109,97,112,32,112,111,111,108,32,111,102,32,37,117,32,98,121,116,101,115,58,32,37,115,32,45,32,117,115,105,110,103,32,109,97,108,108,111,99,10,0,99,97,110,39,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,112,111,111,108,32,111,102,32,37,117,32,98,121,116,101,115,10,0,80,108,101,97,115,101,32,110,111,116,101,32,116,104,97,116,32,121,111,117,32,100,111,110,39,116,32,104,97,118,101,32,115,101,99,117,114,101,32,109,101,109,111,114,121,32,111,110,32,116,104,105,115,32,115,121,115,116,101,109,10,0,79,111,112,115,44,32,115,101,99,117,114,101,32,109,101,109,111,114,121,32,112,111,111,108,32,97,108,114,101,97,100,121,32,105,110,105,116,105,97,108,105,122,101,100,10,0,111,112,101,114,97,116,105,111,110,32,105,115,32,110,111,116,32,112,111,115,115,105,98,108,101,32,119,105,116,104,111,117,116,32,105,110,105,116,105,97,108,105,122,101,100,32,115,101,99,117,114,101,32,109,101,109,111,114,121,10,0,115,101,99,117,114,101,32,109,101,109,111,114,121,32,112,111,111,108,32,105,115,32,110,111,116,32,108,111,99,107,101,100,32,119,104,105,108,101,32,105,110,32,70,73,80,83,32,109,111,100,101,10,0,115,101,99,109,101,109,32,117,115,97,103,101,58,32,37,117,47,37,108,117,32,98,121,116,101,115,32,105,110,32,37,117,32,98,108,111,99,107,115,10,0,70,65,84,65,76,58,32,102,97,105,108,101,100,32,116,111,32,97,99,113,117,105,114,101,32,116,104,101,32,70,83,77,32,108,111,99,107,32,105,110,32,108,105,98,103,114,121,112,116,58,32,37,115,10,0,70,65,84,65,76,58,32,102,97,105,108,101,100,32,116,111,32,114,101,108,101,97,115,101,32,116,104,101,32,70,83,77,32,108,111,99,107,32,105,110,32,108,105,98,103,114,121,112,116,58,32,37,115,10,0,80,111,119,101,114,45,79,110,0,73,110,105,116,0,83,101,108,102,45,84,101,115,116,0,79,112,101,114,97,116,105,111,110,97,108,0,69,114,114,111,114,0,70,97,116,97,108,45,69,114,114,111,114,0,83,104,117,116,100,111,119,110,0,103,114,97,110,116,101,100,0,100,101,110,105,101,100,0,108,105,98,103,99,114,121,112,116,32,115,116,97,116,101,32,116,114,97,110,115,105,116,105,111,110,32,37,115,32,61,62,32,37,115,32,37,115,10,0,33,100,111,110,101,0,102,105,112,115,46,99,0,95,103,99,114,121,95,105,110,105,116,105,97,108,105,122,101,95,102,105,112,115,95,109,111,100,101,0,33,110,111,95,102,105,112,115,95,109,111,100,101,95,114,101,113,117,105,114,101,100,0,47,101,116,99,47,103,99,114,121,112,116,47,102,105,112,115,95,101,110,97,98,108,101,100,0,47,112,114,111,99,47,115,121,115,47,99,114,121,112,116,111,47,102,105,112,115,95,101,110,97,98,108,101,100,0,114,0,47,112,114,111,99,47,118,101,114,115,105,111,110,0,70,65,84,65,76,58,32,101,114,114,111,114,32,114,101,97,100,105,110,103,32,96,37,115,39,32,105,110,32,108,105,98,103,99,114,121,112,116,58,32,37,115,10,0,70,65,84,65,76,58,32,102,97,105,108,101,100,32,116,111,32,99,114,101,97,116,101,32,116,104,101,32,70,83,77,32,108,111,99,107,32,105,110,32,108,105,98,103,99,114,121,112,116,58,32,37,115,10,0,95,103,99,114,121,95,102,105,112,115,95,109,111,100,101,32,40,41,0,95,103,99,114,121,95,105,110,97,99,116,105,118,97,116,101,95,102,105,112,115,95,109,111,100,101,0,102,97,116,97,108,32,0,44,32,102,117,110,99,116,105,111,110,32,0,110,111,32,100,101,115,99,114,105,112,116,105,111,110,32,97,118,97,105,108,97,98,108,101,0,37,115,101,114,114,111,114,32,105,110,32,108,105,98,103,99,114,121,112,116,44,32,102,105,108,101,32,37,115,44,32,108,105,110,101,32,37,100,37,115,37,115,58,32,37,115,10,0,72,77,65,67,45,0,79,107,97,121,0,32,40,0,108,105,98,103,99,114,121,112,116,32,115,101,108,102,116,101,115,116,58,32,37,115,32,37,115,37,115,32,40,37,100,41,58,32,37,115,37,115,37,115,37,115,10,0,98,97,100,32,99,111,110,116,101,120,116,32,116,121,112,101,32,37,100,32,103,105,118,101,110,32,116,111,32,95,103,99,114,121,95,99,116,120,95,97,108,108,111,99,10,0,99,84,120,0,98,97,100,32,112,111,105,110,116,101,114,32,37,112,32,112,97,115,115,101,100,32,116,111,32,95,103,99,114,121,95,99,116,120,95,103,101,116,95,112,111,105,110,116,101,114,10,0,119,114,111,110,103,32,99,111,110,116,101,120,116,32,116,121,112,101,32,37,100,32,114,101,113,117,101,115,116,32,102,111,114,32,99,111,110,116,101,120,116,32,37,112,32,111,102,32,116,121,112,101,32,37,100,10,0,98,97,100,32,112,111,105,110,116,101,114,32,37,112,32,112,97,115,115,101,100,32,116,111,32,103,99,114,121,95,99,116,120,95,114,101,108,97,115,101,10,0,98,97,100,32,99,111,110,116,101,120,116,32,116,121,112,101,32,37,100,32,100,101,116,101,99,116,101,100,32,105,110,32,103,99,114,121,95,99,116,120,95,114,101,108,97,115,101,10,0,103,99,114,121,95,99,105,112,104,101,114,95,99,108,111,115,101,58,32,97,108,114,101,97,100,121,32,99,108,111,115,101,100,47,105,110,118,97,108,105,100,32,104,97,110,100,108,101,0,99,105,112,104,101,114,46,99,0,99,105,112,104,101,114,95,101,110,99,114,121,112,116,0,99,105,112,104,101,114,32,109,111,100,101,32,78,79,78,69,32,117,115,101,100,0,99,105,112,104,101,114,95,101,110,99,114,121,112,116,58,32,105,110,118,97,108,105,100,32,109,111,100,101,32,37,100,10,0,99,105,112,104,101,114,95,100,101,99,114,121,112,116,0,99,105,112,104,101,114,95,100,101,99,114,121,112,116,58,32,105,110,118,97,108,105,100,32,109,111,100,101,32,37,100,10,0,87,65,82,78,73,78,71,58,32,99,105,112,104,101,114,95,115,101,116,105,118,58,32,105,118,108,101,110,61,37,117,32,98,108,107,108,101,110,61,37,117,10,0,99,105,112,104,101,114,95,115,101,116,105,118,0,73,86,32,108,101,110,103,116,104,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,98,108,111,99,107,108,101,110,103,116,104,0,48,120,55,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,69,68,0,45,48,120,48,49,0,45,48,120,50,68,70,67,57,51,49,49,68,52,57,48,48,49,56,67,55,51,51,56,66,70,56,54,56,56,56,54,49,55,54,55,70,70,56,70,70,53,66,50,66,69,66,69,50,55,53,52,56,65,49,52,66,50,51,53,69,67,65,54,56,55,52,65,0,48,120,49,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,49,52,68,69,70,57,68,69,65,50,70,55,57,67,68,54,53,56,49,50,54,51,49,65,53,67,70,53,68,51,69,68,0,48,120,50,49,54,57,51,54,68,51,67,68,54,69,53,51,70,69,67,48,65,52,69,50,51,49,70,68,68,54,68,67,53,67,54,57,50,67,67,55,54,48,57,53,50,53,65,55,66,50,67,57,53,54,50,68,54,48,56,70,50,53,68,53,49,65,0,48,120,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,53,56,0,48,120,48,56,0,78,73,83,84,32,80,45,49,57,50,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,101,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,101,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,99,0,48,120,54,52,50,49,48,53,49,57,101,53,57,99,56,48,101,55,48,102,97,55,101,57,97,98,55,50,50,52,51,48,52,57,102,101,98,56,100,101,101,99,99,49,52,54,98,57,98,49,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,57,57,100,101,102,56,51,54,49,52,54,98,99,57,98,49,98,52,100,50,50,56,51,49,0,48,120,49,56,56,100,97,56,48,101,98,48,51,48,57,48,102,54,55,99,98,102,50,48,101,98,52,51,97,49,56,56,48,48,102,52,102,102,48,97,102,100,56,50,102,102,49,48,49,50,0,48,120,48,55,49,57,50,98,57,53,102,102,99,56,100,97,55,56,54,51,49,48,49,49,101,100,54,98,50,52,99,100,100,53,55,51,102,57,55,55,97,49,49,101,55,57,52,56,49,49,0,48,120,48,49,0,78,73,83,84,32,80,45,50,50,52,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,49,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,101,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,101,0,48,120,98,52,48,53,48,97,56,53,48,99,48,52,98,51,97,98,102,53,52,49,51,50,53,54,53,48,52,52,98,48,98,55,100,55,98,102,100,56,98,97,50,55,48,98,51,57,52,51,50,51,53,53,102,102,98,52,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,49,54,97,50,101,48,98,56,102,48,51,101,49,51,100,100,50,57,52,53,53,99,53,99,50,97,51,100,0,48,120,98,55,48,101,48,99,98,100,54,98,98,52,98,102,55,102,51,50,49,51,57,48,98,57,52,97,48,51,99,49,100,51,53,54,99,50,49,49,50,50,51,52,51,50,56,48,100,54,49,49,53,99,49,100,50,49,0,48,120,98,100,51,55,54,51,56,56,98,53,102,55,50,51,102,98,52,99,50,50,100,102,101,54,99,100,52,51,55,53,97,48,53,97,48,55,52,55,54,52,52,52,100,53,56,49,57,57,56,53,48,48,55,101,51,52,0,78,73,83,84,32,80,45,50,53,54,0,48,120,102,102,102,102,102,102,102,102,48,48,48,48,48,48,48,49,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,0,48,120,102,102,102,102,102,102,102,102,48,48,48,48,48,48,48,49,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,99,0,48,120,53,97,99,54,51,53,100,56,97,97,51,97,57,51,101,55,98,51,101,98,98,100,53,53,55,54,57,56,56,54,98,99,54,53,49,100,48,54,98,48,99,99,53,51,98,48,102,54,51,98,99,101,51,99,51,101,50,55,100,50,54,48,52,98,0,48,120,102,102,102,102,102,102,102,102,48,48,48,48,48,48,48,48,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,98,99,101,54,102,97,97,100,97,55,49,55,57,101,56,52,102,51,98,57,99,97,99,50,102,99,54,51,50,53,53,49,0,48,120,54,98,49,55,100,49,102,50,101,49,50,99,52,50,52,55,102,56,98,99,101,54,101,53,54,51,97,52,52,48,102,50,55,55,48,51,55,100,56,49,50,100,101,98,51,51,97,48,102,52,97,49,51,57,52,53,100,56,57,56,99,50,57,54,0,48,120,52,102,101,51,52,50,101,50,102,101,49,97,55,102,57,98,56,101,101,55,101,98,52,97,55,99,48,102,57,101,49,54,50,98,99,101,51,51,53,55,54,98,51,49,53,101,99,101,99,98,98,54,52,48,54,56,51,55,98,102,53,49,102,53,0,78,73,83,84,32,80,45,51,56,52,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,101,102,102,102,102,102,102,102,102,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,102,102,102,102,102,102,102,102,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,101,102,102,102,102,102,102,102,102,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,102,102,102,102,102,102,102,99,0,48,120,98,51,51,49,50,102,97,55,101,50,51,101,101,55,101,52,57,56,56,101,48,53,54,98,101,51,102,56,50,100,49,57,49,56,49,100,57,99,54,101,102,101,56,49,52,49,49,50,48,51,49,52,48,56,56,102,53,48,49,51,56,55,53,97,99,54,53,54,51,57,56,100,56,97,50,101,100,49,57,100,50,97,56,53,99,56,101,100,100,51,101,99,50,97,101,102,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,99,55,54,51,52,100,56,49,102,52,51,55,50,100,100,102,53,56,49,97,48,100,98,50,52,56,98,48,97,55,55,97,101,99,101,99,49,57,54,97,99,99,99,53,50,57,55,51,0,48,120,97,97,56,55,99,97,50,50,98,101,56,98,48,53,51,55,56,101,98,49,99,55,49,101,102,51,50,48,97,100,55,52,54,101,49,100,51,98,54,50,56,98,97,55,57,98,57,56,53,57,102,55,52,49,101,48,56,50,53,52,50,97,51,56,53,53,48,50,102,50,53,100,98,102,53,53,50,57,54,99,51,97,53,52,53,101,51,56,55,50,55,54,48,97,98,55,0,48,120,51,54,49,55,100,101,52,97,57,54,50,54,50,99,54,102,53,100,57,101,57,56,98,102,57,50,57,50,100,99,50,57,102,56,102,52,49,100,98,100,50,56,57,97,49,52,55,99,101,57,100,97,51,49,49,51,98,53,102,48,98,56,99,48,48,97,54,48,98,49,99,101,49,100,55,101,56,49,57,100,55,97,52,51,49,100,55,99,57,48,101,97,48,101,53,102,0,78,73,83,84,32,80,45,53,50,49,0,48,120,48,49,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,0,48,120,48,49,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,99,0,48,120,48,53,49,57,53,51,101,98,57,54,49,56,101,49,99,57,97,49,102,57,50,57,97,50,49,97,48,98,54,56,53,52,48,101,101,97,50,100,97,55,50,53,98,57,57,98,51,49,53,102,51,98,56,98,52,56,57,57,49,56,101,102,49,48,57,101,49,53,54,49,57,51,57,53,49,101,99,55,101,57,51,55,98,49,54,53,50,99,48,98,100,51,98,98,49,98,102,48,55,51,53,55,51,100,102,56,56,51,100,50,99,51,52,102,49,101,102,52,53,49,102,100,52,54,98,53,48,51,102,48,48,0,48,120,49,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,97,53,49,56,54,56,55,56,51,98,102,50,102,57,54,54,98,55,102,99,99,48,49,52,56,102,55,48,57,97,53,100,48,51,98,98,53,99,57,98,56,56,57,57,99,52,55,97,101,98,98,54,102,98,55,49,101,57,49,51,56,54,52,48,57,0,48,120,48,48,99,54,56,53,56,101,48,54,98,55,48,52,48,52,101,57,99,100,57,101,51,101,99,98,54,54,50,51,57,53,98,52,52,50,57,99,54,52,56,49,51,57,48,53,51,102,98,53,50,49,102,56,50,56,97,102,54,48,54,98,52,100,51,100,98,97,97,49,52,98,53,101,55,55,101,102,101,55,53,57,50,56,102,101,49,100,99,49,50,55,97,50,102,102,97,56,100,101,51,51,52,56,98,51,99,49,56,53,54,97,52,50,57,98,102,57,55,101,55,101,51,49,99,50,101,53,98,100,54,54,0,48,120,48,49,49,56,51,57,50,57,54,97,55,56,57,97,51,98,99,48,48,52,53,99,56,97,53,102,98,52,50,99,55,100,49,98,100,57,57,56,102,53,52,52,52,57,53,55,57,98,52,52,54,56,49,55,97,102,98,100,49,55,50,55,51,101,54,54,50,99,57,55,101,101,55,50,57,57,53,101,102,52,50,54,52,48,99,53,53,48,98,57,48,49,51,102,97,100,48,55,54,49,51,53,51,99,55,48,56,54,97,50,55,50,99,50,52,48,56,56,98,101,57,52,55,54,57,102,100,49,54,54,53,48,0,98,114,97,105,110,112,111,111,108,80,49,54,48,114,49,0,48,120,101,57,53,101,52,97,53,102,55,51,55,48,53,57,100,99,54,48,100,102,99,55,97,100,57,53,98,51,100,56,49,51,57,53,49,53,54,50,48,102,0,48,120,51,52,48,101,55,98,101,50,97,50,56,48,101,98,55,52,101,50,98,101,54,49,98,97,100,97,55,52,53,100,57,55,101,56,102,55,99,51,48,48,0,48,120,49,101,53,56,57,97,56,53,57,53,52,50,51,52,49,50,49,51,52,102,97,97,50,100,98,100,101,99,57,53,99,56,100,56,54,55,53,101,53,56,0,48,120,101,57,53,101,52,97,53,102,55,51,55,48,53,57,100,99,54,48,100,102,53,57,57,49,100,52,53,48,50,57,52,48,57,101,54,48,102,99,48,57,0,48,120,98,101,100,53,97,102,49,54,101,97,51,102,54,97,52,102,54,50,57,51,56,99,52,54,51,49,101,98,53,97,102,55,98,100,98,99,100,98,99,51,0,48,120,49,54,54,55,99,98,52,55,55,97,49,97,56,101,99,51,51,56,102,57,52,55,52,49,54,54,57,99,57,55,54,51,49,54,100,97,54,51,50,49,0,98,114,97,105,110,112,111,111,108,80,49,57,50,114,49,0,48,120,99,51,48,50,102,52,49,100,57,51,50,97,51,54,99,100,97,55,97,51,52,54,51,48,57,51,100,49,56,100,98,55,56,102,99,101,52,55,54,100,101,49,97,56,54,50,57,55,0,48,120,54,97,57,49,49,55,52,48,55,54,98,49,101,48,101,49,57,99,51,57,99,48,51,49,102,101,56,54,56,53,99,49,99,97,101,48,52,48,101,53,99,54,57,97,50,56,101,102,0,48,120,52,54,57,97,50,56,101,102,55,99,50,56,99,99,97,51,100,99,55,50,49,100,48,52,52,102,52,52,57,54,98,99,99,97,55,101,102,52,49,52,54,102,98,102,50,53,99,57,0,48,120,99,51,48,50,102,52,49,100,57,51,50,97,51,54,99,100,97,55,97,51,52,54,50,102,57,101,57,101,57,49,54,98,53,98,101,56,102,49,48,50,57,97,99,52,97,99,99,49,0,48,120,99,48,97,48,54,52,55,101,97,97,98,54,97,52,56,55,53,51,98,48,51,51,99,53,54,99,98,48,102,48,57,48,48,97,50,102,53,99,52,56,53,51,51,55,53,102,100,54,0,48,120,49,52,98,54,57,48,56,54,54,97,98,100,53,98,98,56,56,98,53,102,52,56,50,56,99,49,52,57,48,48,48,50,101,54,55,55,51,102,97,50,102,97,50,57,57,98,56,102,0,98,114,97,105,110,112,111,111,108,80,50,50,52,114,49,0,48,120,100,55,99,49,51,52,97,97,50,54,52,51,54,54,56,54,50,97,49,56,51,48,50,53,55,53,100,49,100,55,56,55,98,48,57,102,48,55,53,55,57,55,100,97,56,57,102,53,55,101,99,56,99,48,102,102,0,48,120,54,56,97,53,101,54,50,99,97,57,99,101,54,99,49,99,50,57,57,56,48,51,97,54,99,49,53,51,48,98,53,49,52,101,49,56,50,97,100,56,98,48,48,52,50,97,53,57,99,97,100,50,57,102,52,51,0,48,120,50,53,56,48,102,54,51,99,99,102,101,52,52,49,51,56,56,55,48,55,49,51,98,49,97,57,50,51,54,57,101,51,51,101,50,49,51,53,100,50,54,54,100,98,98,51,55,50,51,56,54,99,52,48,48,98,0,48,120,100,55,99,49,51,52,97,97,50,54,52,51,54,54,56,54,50,97,49,56,51,48,50,53,55,53,100,48,102,98,57,56,100,49,49,54,98,99,52,98,54,100,100,101,98,99,97,51,97,53,97,55,57,51,57,102,0,48,120,48,100,57,48,50,57,97,100,50,99,55,101,53,99,102,52,51,52,48,56,50,51,98,50,97,56,55,100,99,54,56,99,57,101,52,99,101,51,49,55,52,99,49,101,54,101,102,100,101,101,49,50,99,48,55,100,0,48,120,53,56,97,97,53,54,102,55,55,50,99,48,55,50,54,102,50,52,99,54,98,56,57,101,52,101,99,100,97,99,50,52,51,53,52,98,57,101,57,57,99,97,97,51,102,54,100,51,55,54,49,52,48,50,99,100,0,98,114,97,105,110,112,111,111,108,80,50,53,54,114,49,0,48,120,97,57,102,98,53,55,100,98,97,49,101,101,97,57,98,99,51,101,54,54,48,97,57,48,57,100,56,51,56,100,55,50,54,101,51,98,102,54,50,51,100,53,50,54,50,48,50,56,50,48,49,51,52,56,49,100,49,102,54,101,53,51,55,55,0,48,120,55,100,53,97,48,57,55,53,102,99,50,99,51,48,53,55,101,101,102,54,55,53,51,48,52,49,55,97,102,102,101,55,102,98,56,48,53,53,99,49,50,54,100,99,53,99,54,99,101,57,52,97,52,98,52,52,102,51,51,48,98,53,100,57,0,48,120,50,54,100,99,53,99,54,99,101,57,52,97,52,98,52,52,102,51,51,48,98,53,100,57,98,98,100,55,55,99,98,102,57,53,56,52,49,54,50,57,53,99,102,55,101,49,99,101,54,98,99,99,100,99,49,56,102,102,56,99,48,55,98,54,0,48,120,97,57,102,98,53,55,100,98,97,49,101,101,97,57,98,99,51,101,54,54,48,97,57,48,57,100,56,51,56,100,55,49,56,99,51,57,55,97,97,51,98,53,54,49,97,54,102,55,57,48,49,101,48,101,56,50,57,55,52,56,53,54,97,55,0,48,120,56,98,100,50,97,101,98,57,99,98,55,101,53,55,99,98,50,99,52,98,52,56,50,102,102,99,56,49,98,55,97,102,98,57,100,101,50,55,101,49,101,51,98,100,50,51,99,50,51,97,52,52,53,51,98,100,57,97,99,101,51,50,54,50,0,48,120,53,52,55,101,102,56,51,53,99,51,100,97,99,52,102,100,57,55,102,56,52,54,49,97,49,52,54,49,49,100,99,57,99,50,55,55,52,53,49,51,50,100,101,100,56,101,53,52,53,99,49,100,53,52,99,55,50,102,48,52,54,57,57,55,0,98,114,97,105,110,112,111,111,108,80,51,50,48,114,49,0,48,120,100,51,53,101,52,55,50,48,51,54,98,99,52,102,98,55,101,49,51,99,55,56,53,101,100,50,48,49,101,48,54,53,102,57,56,102,99,102,97,54,102,54,102,52,48,100,101,102,52,102,57,50,98,57,101,99,55,56,57,51,101,99,50,56,102,99,100,52,49,50,98,49,102,49,98,51,50,101,50,55,0,48,120,51,101,101,51,48,98,53,54,56,102,98,97,98,48,102,56,56,51,99,99,101,98,100,52,54,100,51,102,51,98,98,56,97,50,97,55,51,53,49,51,102,53,101,98,55,57,100,97,54,54,49,57,48,101,98,48,56,53,102,102,97,57,102,52,57,50,102,51,55,53,97,57,55,100,56,54,48,101,98,52,0,48,120,53,50,48,56,56,51,57,52,57,100,102,100,98,99,52,50,100,51,97,100,49,57,56,54,52,48,54,56,56,97,54,102,101,49,51,102,52,49,51,52,57,53,53,52,98,52,57,97,99,99,51,49,100,99,99,100,56,56,52,53,51,57,56,49,54,102,53,101,98,52,97,99,56,102,98,49,102,49,97,54,0,48,120,100,51,53,101,52,55,50,48,51,54,98,99,52,102,98,55,101,49,51,99,55,56,53,101,100,50,48,49,101,48,54,53,102,57,56,102,99,102,97,53,98,54,56,102,49,50,97,51,50,100,52,56,50,101,99,55,101,101,56,54,53,56,101,57,56,54,57,49,53,53,53,98,52,52,99,53,57,51,49,49,0,48,120,52,51,98,100,55,101,57,97,102,98,53,51,100,56,98,56,53,50,56,57,98,99,99,52,56,101,101,53,98,102,101,54,102,50,48,49,51,55,100,49,48,97,48,56,55,101,98,54,101,55,56,55,49,101,50,97,49,48,97,53,57,57,99,55,49,48,97,102,56,100,48,100,51,57,101,50,48,54,49,49,0,48,120,49,52,102,100,100,48,53,53,52,53,101,99,49,99,99,56,97,98,52,48,57,51,50,52,55,102,55,55,50,55,53,101,48,55,52,51,102,102,101,100,49,49,55,49,56,50,101,97,97,57,99,55,55,56,55,55,97,97,97,99,54,97,99,55,100,51,53,50,52,53,100,49,54,57,50,101,56,101,101,49,0,98,114,97,105,110,112,111,111,108,80,51,56,52,114,49,0,48,120,56,99,98,57,49,101,56,50,97,51,51,56,54,100,50,56,48,102,53,100,54,102,55,101,53,48,101,54,52,49,100,102,49,53,50,102,55,49,48,57,101,100,53,52,53,54,98,52,49,50,98,49,100,97,49,57,55,102,98,55,49,49,50,51,97,99,100,51,97,55,50,57,57,48,49,100,49,97,55,49,56,55,52,55,48,48,49,51,51,49,48,55,101,99,53,51,0,48,120,55,98,99,51,56,50,99,54,51,100,56,99,49,53,48,99,51,99,55,50,48,56,48,97,99,101,48,53,97,102,97,48,99,50,98,101,97,50,56,101,52,102,98,50,50,55,56,55,49,51,57,49,54,53,101,102,98,97,57,49,102,57,48,102,56,97,97,53,56,49,52,97,53,48,51,97,100,52,101,98,48,52,97,56,99,55,100,100,50,50,99,101,50,56,50,54,0,48,120,48,52,97,56,99,55,100,100,50,50,99,101,50,56,50,54,56,98,51,57,98,53,53,52,49,54,102,48,52,52,55,99,50,102,98,55,55,100,101,49,48,55,100,99,100,50,97,54,50,101,56,56,48,101,97,53,51,101,101,98,54,50,100,53,55,99,98,52,51,57,48,50,57,53,100,98,99,57,57,52,51,97,98,55,56,54,57,54,102,97,53,48,52,99,49,49,0,48,120,56,99,98,57,49,101,56,50,97,51,51,56,54,100,50,56,48,102,53,100,54,102,55,101,53,48,101,54,52,49,100,102,49,53,50,102,55,49,48,57,101,100,53,52,53,54,98,51,49,102,49,54,54,101,54,99,97,99,48,52,50,53,97,55,99,102,51,97,98,54,97,102,54,98,55,102,99,51,49,48,51,98,56,56,51,50,48,50,101,57,48,52,54,53,54,53,0,48,120,49,100,49,99,54,52,102,48,54,56,99,102,52,53,102,102,97,50,97,54,51,97,56,49,98,55,99,49,51,102,54,98,56,56,52,55,97,51,101,55,55,101,102,49,52,102,101,51,100,98,55,102,99,97,102,101,48,99,98,100,49,48,101,56,101,56,50,54,101,48,51,52,51,54,100,54,52,54,97,97,101,102,56,55,98,50,101,50,52,55,100,52,97,102,49,101,0,48,120,56,97,98,101,49,100,55,53,50,48,102,57,99,50,97,52,53,99,98,49,101,98,56,101,57,53,99,102,100,53,53,50,54,50,98,55,48,98,50,57,102,101,101,99,53,56,54,52,101,49,57,99,48,53,52,102,102,57,57,49,50,57,50,56,48,101,52,54,52,54,50,49,55,55,57,49,56,49,49,49,52,50,56,50,48,51,52,49,50,54,51,99,53,51,49,53,0,98,114,97,105,110,112,111,111,108,80,53,49,50,114,49,0,48,120,97,97,100,100,57,100,98,56,100,98,101,57,99,52,56,98,51,102,100,52,101,54,97,101,51,51,99,57,102,99,48,55,99,98,51,48,56,100,98,51,98,51,99,57,100,50,48,101,100,54,54,51,57,99,99,97,55,48,51,51,48,56,55,49,55,100,52,100,57,98,48,48,57,98,99,54,54,56,52,50,97,101,99,100,97,49,50,97,101,54,97,51,56,48,101,54,50,56,56,49,102,102,50,102,50,100,56,50,99,54,56,53,50,56,97,97,54,48,53,54,53,56,51,97,52,56,102,51,0,48,120,55,56,51,48,97,51,51,49,56,98,54,48,51,98,56,57,101,50,51,50,55,49,52,53,97,99,50,51,52,99,99,53,57,52,99,98,100,100,56,100,51,100,102,57,49,54,49,48,97,56,51,52,52,49,99,97,101,97,57,56,54,51,98,99,50,100,101,100,53,100,53,97,97,56,50,53,51,97,97,49,48,97,50,101,102,49,99,57,56,98,57,97,99,56,98,53,55,102,49,49,49,55,97,55,50,98,102,50,99,55,98,57,101,55,99,49,97,99,52,100,55,55,102,99,57,52,99,97,0,48,120,51,100,102,57,49,54,49,48,97,56,51,52,52,49,99,97,101,97,57,56,54,51,98,99,50,100,101,100,53,100,53,97,97,56,50,53,51,97,97,49,48,97,50,101,102,49,99,57,56,98,57,97,99,56,98,53,55,102,49,49,49,55,97,55,50,98,102,50,99,55,98,57,101,55,99,49,97,99,52,100,55,55,102,99,57,52,99,97,100,99,48,56,51,101,54,55,57,56,52,48,53,48,98,55,53,101,98,97,101,53,100,100,50,56,48,57,98,100,54,51,56,48,49,54,102,55,50,51,0,48,120,97,97,100,100,57,100,98,56,100,98,101,57,99,52,56,98,51,102,100,52,101,54,97,101,51,51,99,57,102,99,48,55,99,98,51,48,56,100,98,51,98,51,99,57,100,50,48,101,100,54,54,51,57,99,99,97,55,48,51,51,48,56,55,48,53,53,51,101,53,99,52,49,52,99,97,57,50,54,49,57,52,49,56,54,54,49,49,57,55,102,97,99,49,48,52,55,49,100,98,49,100,51,56,49,48,56,53,100,100,97,100,100,98,53,56,55,57,54,56,50,57,99,97,57,48,48,54,57,0,48,120,56,49,97,101,101,52,98,100,100,56,50,101,100,57,54,52,53,97,50,49,51,50,50,101,57,99,52,99,54,97,57,51,56,53,101,100,57,102,55,48,98,53,100,57,49,54,99,49,98,52,51,98,54,50,101,101,102,52,100,48,48,57,56,101,102,102,51,98,49,102,55,56,101,50,100,48,100,52,56,100,53,48,100,49,54,56,55,98,57,51,98,57,55,100,53,102,55,99,54,100,53,48,52,55,52,48,54,97,53,101,54,56,56,98,51,53,50,50,48,57,98,99,98,57,102,56,50,50,0,48,120,55,100,100,101,51,56,53,100,53,54,54,51,51,50,101,99,99], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE+20480); +/* memory initializer */ allocate([48,101,97,98,102,97,57,99,102,55,56,50,50,102,100,102,50,48,57,102,55,48,48,50,52,97,53,55,98,49,97,97,48,48,48,99,53,53,98,56,56,49,102,56,49,49,49,98,50,100,99,100,101,52,57,52,97,53,102,52,56,53,101,53,98,99,97,52,98,100,56,56,97,50,55,54,51,97,101,100,49,99,97,50,98,50,102,97,56,102,48,53,52,48,54,55,56,99,100,49,101,48,102,51,97,100,56,48,56,57,50,0,71,79,83,84,50,48,48,49,45,116,101,115,116,0,48,120,56,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,52,51,49,0,48,120,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,55,0,48,120,53,102,98,102,102,52,57,56,97,97,57,51,56,99,101,55,51,57,98,56,101,48,50,50,102,98,97,102,101,102,52,48,53,54,51,102,54,101,54,97,51,52,55,50,102,99,50,97,53,49,52,99,48,99,101,57,100,97,101,50,51,98,55,101,0,48,120,56,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,49,53,48,102,101,56,97,49,56,57,50,57,55,54,49,53,52,99,53,57,99,102,99,49,57,51,97,99,99,102,53,98,51,0,48,120,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,50,0,48,120,48,56,101,50,97,56,97,48,101,54,53,49,52,55,100,52,98,100,54,51,49,54,48,51,48,101,49,54,100,49,57,99,56,53,99,57,55,102,48,97,57,99,97,50,54,55,49,50,50,98,57,54,97,98,98,99,101,97,55,101,56,102,99,56,0,71,79,83,84,50,48,48,49,45,67,114,121,112,116,111,80,114,111,45,65,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,100,57,55,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,100,57,52,0,48,120,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,97,54,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,54,99,54,49,49,48,55,48,57,57,53,97,100,49,48,48,52,53,56,52,49,98,48,57,98,55,54,49,98,56,57,51,0,48,120,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,49,0,48,120,56,100,57,49,101,52,55,49,101,48,57,56,57,99,100,97,50,55,100,102,53,48,53,97,52,53,51,102,50,98,55,54,51,53,50,57,52,102,50,100,100,102,50,51,101,51,98,49,50,50,97,99,99,57,57,99,57,101,57,102,49,101,49,52,0,71,79,83,84,50,48,48,49,45,67,114,121,112,116,111,80,114,111,45,66,0,48,120,56,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,99,57,57,0,48,120,56,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,99,57,54,0,48,120,51,101,49,97,102,52,49,57,97,50,54,57,97,53,102,56,54,54,97,55,100,51,99,50,53,99,51,100,102,56,48,97,101,57,55,57,50,53,57,51,55,51,102,102,50,98,49,56,50,102,52,57,100,52,99,101,55,101,49,98,98,99,56,98,0,48,120,56,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,49,53,102,55,48,48,99,102,102,102,49,97,54,50,52,101,53,101,52,57,55,49,54,49,98,99,99,56,97,49,57,56,102,0,48,120,51,102,97,56,49,50,52,51,53,57,102,57,54,54,56,48,98,56,51,100,49,99,51,101,98,50,99,48,55,48,101,53,99,53,52,53,99,57,56,53,56,100,48,51,101,99,102,98,55,52,52,98,102,56,100,55,49,55,55,49,55,101,102,99,0,71,79,83,84,50,48,48,49,45,67,114,121,112,116,111,80,114,111,45,67,0,48,120,57,98,57,102,54,48,53,102,53,97,56,53,56,49,48,55,97,98,49,101,99,56,53,101,54,98,52,49,99,56,97,97,99,102,56,52,54,101,56,54,55,56,57,48,53,49,100,51,55,57,57,56,102,55,98,57,48,50,50,100,55,53,57,98,0,48,120,57,98,57,102,54,48,53,102,53,97,56,53,56,49,48,55,97,98,49,101,99,56,53,101,54,98,52,49,99,56,97,97,99,102,56,52,54,101,56,54,55,56,57,48,53,49,100,51,55,57,57,56,102,55,98,57,48,50,50,100,55,53,57,56,0,48,120,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,56,48,53,97,0,48,120,57,98,57,102,54,48,53,102,53,97,56,53,56,49,48,55,97,98,49,101,99,56,53,101,54,98,52,49,99,56,97,97,53,56,50,99,97,51,53,49,49,101,100,100,102,98,55,52,102,48,50,102,51,97,54,53,57,56,57,56,48,98,98,57,0,48,120,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,0,48,120,52,49,101,99,101,53,53,55,52,51,55,49,49,97,56,99,51,99,98,102,51,55,56,51,99,100,48,56,99,48,101,101,52,100,52,100,99,52,52,48,100,52,54,52,49,97,56,102,51,54,54,101,53,53,48,100,102,100,98,51,98,98,54,55,0,71,79,83,84,50,48,49,50,45,116,101,115,116,0,48,120,52,53,51,49,97,99,100,49,102,101,48,48,50,51,99,55,53,53,48,100,50,54,55,98,54,98,50,102,101,101,56,48,57,50,50,98,49,52,98,50,102,102,98,57,48,102,48,52,100,52,101,98,55,99,48,57,98,53,100,50,100,49,53,100,102,49,100,56,53,50,55,52,49,97,102,52,55,48,52,97,48,52,53,56,48,52,55,101,56,48,101,52,53,52,54,100,51,53,98,56,51,51,54,102,97,99,50,50,52,100,100,56,49,54,54,52,98,98,102,53,50,56,98,101,54,51,55,51,0,48,120,49,99,102,102,48,56,48,54,97,51,49,49,49,54,100,97,50,57,100,56,99,102,97,53,52,101,53,55,101,98,55,52,56,98,99,53,102,51,55,55,101,52,57,52,48,48,102,100,100,55,56,56,98,54,52,57,101,99,97,49,97,99,52,51,54,49,56,51,52,48,49,51,98,50,97,100,55,51,50,50,52,56,48,97,56,57,99,97,53,56,101,48,99,102,55,52,98,99,57,101,53,52,48,99,50,97,100,100,54,56,57,55,102,97,100,48,97,51,48,56,52,102,51,48,50,97,100,99,0,48,120,52,53,51,49,97,99,100,49,102,101,48,48,50,51,99,55,53,53,48,100,50,54,55,98,54,98,50,102,101,101,56,48,57,50,50,98,49,52,98,50,102,102,98,57,48,102,48,52,100,52,101,98,55,99,48,57,98,53,100,50,100,49,53,100,97,56,50,102,50,100,55,101,99,98,49,100,98,97,99,55,49,57,57,48,53,99,53,101,101,99,99,52,50,51,102,49,100,56,54,101,50,53,101,100,98,101,50,51,99,53,57,53,100,54,52,52,97,97,102,49,56,55,101,54,101,54,100,102,0,48,120,50,52,100,49,57,99,99,54,52,53,55,50,101,101,51,48,102,51,57,54,98,102,54,101,98,98,102,100,55,97,54,99,53,50,49,51,98,51,98,51,100,55,48,53,55,99,99,56,50,53,102,57,49,48,57,51,97,54,56,99,100,55,54,50,102,100,54,48,54,49,49,50,54,50,99,100,56,51,56,100,99,54,98,54,48,97,97,55,101,101,101,56,48,52,101,50,56,98,99,56,52,57,57,55,55,102,97,99,51,51,98,52,98,53,51,48,102,49,98,49,50,48,50,52,56,97,57,97,0,48,120,50,98,98,51,49,50,97,52,51,98,100,50,99,101,54,101,48,100,48,50,48,54,49,51,99,56,53,55,97,99,100,100,99,102,98,102,48,54,49,101,57,49,101,53,102,50,99,51,102,51,50,52,52,55,99,50,53,57,102,51,57,98,50,99,56,51,97,98,49,53,54,100,55,55,102,49,52,57,54,98,102,55,101,98,51,51,53,49,101,49,101,101,52,101,52,51,100,99,49,97,49,56,98,57,49,98,50,52,54,52,48,98,54,100,98,98,57,50,99,98,49,97,100,100,51,55,49,101,0,71,79,83,84,50,48,49,50,45,116,99,50,54,45,65,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,100,99,55,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,100,99,52,0,48,120,101,56,99,50,53,48,53,100,101,100,102,99,56,54,100,100,99,49,98,100,48,98,50,98,54,54,54,55,102,49,100,97,51,52,98,56,50,53,55,52,55,54,49,99,98,48,101,56,55,57,98,100,48,56,49,99,102,100,48,98,54,50,54,53,101,101,51,99,98,48,57,48,102,51,48,100,50,55,54,49,52,99,98,52,53,55,52,48,49,48,100,97,57,48,100,100,56,54,50,101,102,57,100,52,101,98,101,101,52,55,54,49,53,48,51,49,57,48,55,56,53,97,55,49,99,55,54,48,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,50,55,101,54,57,53,51,50,102,52,56,100,56,57,49,49,54,102,102,50,50,98,56,100,52,101,48,53,54,48,54,48,57,98,52,98,51,56,97,98,102,97,100,50,98,56,53,100,99,97,99,100,98,49,52,49,49,102,49,48,98,50,55,53,0,48,120,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,51,0,48,120,55,53,48,51,99,102,101,56,55,97,56,51,54,97,101,51,97,54,49,98,56,56,49,54,101,50,53,52,53,48,101,54,99,101,53,101,49,99,57,51,97,99,102,49,97,98,99,49,55,55,56,48,54,52,102,100,99,98,101,102,97,57,50,49,100,102,49,54,50,54,98,101,52,102,100,48,51,54,101,57,51,100,55,53,101,54,97,53,48,101,51,97,52,49,101,57,56,48,50,56,102,101,53,102,99,50,51,53,102,53,98,56,56,57,97,53,56,57,99,98,53,50,49,53,102,50,97,52,0,71,79,83,84,50,48,49,50,45,116,99,50,54,45,66,0,48,120,56,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,54,102,0,48,120,56,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,54,99,0,48,120,54,56,55,100,49,98,52,53,57,100,99,56,52,49,52,53,55,101,51,101,48,54,99,102,54,102,53,101,50,53,49,55,98,57,55,99,55,100,54,49,52,97,102,49,51,56,98,99,98,102,56,53,100,99,56,48,54,99,52,98,50,56,57,102,51,101,57,54,53,100,50,100,98,49,52,49,54,100,50,49,55,102,56,98,50,55,54,102,97,100,49,97,98,54,57,99,53,48,102,55,56,98,101,101,49,102,97,51,49,48,54,101,102,98,56,99,99,98,99,55,99,53,49,52,48,49,49,54,0,48,120,56,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,49,52,57,97,49,101,99,49,52,50,53,54,53,97,53,52,53,97,99,102,100,98,55,55,98,100,57,100,52,48,99,102,97,56,98,57,57,54,55,49,50,49,48,49,98,101,97,48,101,99,54,51,52,54,99,53,52,51,55,52,102,50,53,98,100,0,48,120,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,50,0,48,120,49,97,56,102,55,101,100,97,51,56,57,98,48,57,52,99,50,99,48,55,49,101,51,54,52,55,97,56,57,52,48,102,51,99,49,50,51,98,54,57,55,53,55,56,99,50,49,51,98,101,54,100,100,57,101,54,99,56,101,99,55,51,51,53,100,99,98,50,50,56,102,100,49,101,100,102,52,97,51,57,49,53,50,99,98,99,97,97,102,56,99,48,51,57,56,56,50,56,48,52,49,48,53,53,102,57,52,99,101,101,101,99,55,101,50,49,51,52,48,55,56,48,102,101,52,49,98,100,0,115,101,99,112,50,53,54,107,49,0,48,120,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,69,70,70,70,70,70,67,50,70,0,48,120,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,69,66,65,65,69,68,67,69,54,65,70,52,56,65,48,51,66,66,70,68,50,53,69,56,67,68,48,51,54,52,49,52,49,0,48,120,55,57,66,69,54,54,55,69,70,57,68,67,66,66,65,67,53,53,65,48,54,50,57,53,67,69,56,55,48,66,48,55,48,50,57,66,70,67,68,66,50,68,67,69,50,56,68,57,53,57,70,50,56,49,53,66,49,54,70,56,49,55,57,56,0,48,120,52,56,51,65,68,65,55,55,50,54,65,51,67,52,54,53,53,68,65,52,70,66,70,67,48,69,49,49,48,56,65,56,70,68,49,55,66,52,52,56,65,54,56,53,53,52,49,57,57,67,52,55,68,48,56,70,70,66,49,48,68,52,66,56,0,49,46,51,46,54,46,49,46,52,46,49,46,49,49,53,57,49,46,49,53,46,49,0,49,46,50,46,56,52,48,46,49,48,48,52,53,46,51,46,49,46,49,0,112,114,105,109,101,49,57,50,118,49,0,115,101,99,112,49,57,50,114,49,0,110,105,115,116,112,49,57,50,0,115,101,99,112,50,50,52,114,49,0,49,46,51,46,49,51,50,46,48,46,51,51,0,110,105,115,116,112,50,50,52,0,49,46,50,46,56,52,48,46,49,48,48,52,53,46,51,46,49,46,55,0,112,114,105,109,101,50,53,54,118,49,0,115,101,99,112,50,53,54,114,49,0,110,105,115,116,112,50,53,54,0,115,101,99,112,51,56,52,114,49,0,49,46,51,46,49,51,50,46,48,46,51,52,0,110,105,115,116,112,51,56,52,0,115,101,99,112,53,50,49,114,49,0,49,46,51,46,49,51,50,46,48,46,51,53,0,110,105,115,116,112,53,50,49,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,49,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,51,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,53,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,55,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,57,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,49,49,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,49,51,0,49,46,50,46,54,52,51,46,50,46,50,46,51,53,46,48,0,49,46,50,46,54,52,51,46,50,46,50,46,51,53,46,49,0,49,46,50,46,54,52,51,46,50,46,50,46,51,53,46,50,0,49,46,50,46,54,52,51,46,50,46,50,46,51,53,46,51,0,71,79,83,84,50,48,48,49,45,67,114,121,112,116,111,80,114,111,45,88,99,104,65,0,71,79,83,84,50,48,48,49,45,67,114,121,112,116,111,80,114,111,45,88,99,104,66,0,49,46,50,46,54,52,51,46,50,46,50,46,51,54,46,48,0,49,46,50,46,54,52,51,46,50,46,50,46,51,54,46,49,0,49,46,50,46,54,52,51,46,55,46,49,46,50,46,49,46,50,46,49,0,49,46,50,46,54,52,51,46,55,46,49,46,50,46,49,46,50,46,50,0,49,46,51,46,49,51,50,46,48,46,49,48,0,48,120,48,52,0,45,112,97,98,103,110,104,0,98,0,103,0,46,120,0,46,121,0,46,122,0,104,0,100,0,101,99,99,32,103,101,116,32,112,97,114,97,109,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,10,0,40,112,117,98,108,105,99,45,107,101,121,40,101,99,99,40,112,37,109,41,40,97,37,109,41,40,98,37,109,41,40,103,37,109,41,40,110,37,109,41,40,104,37,109,41,41,41,0,103,46,120,0,103,46,121,0,113,46,120,0,113,46,121,0,101,100,100,115,97,95,101,110,99,111,100,101,112,111,105,110,116,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,10,0,48,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,68,0,115,99,97,110,110,105,110,103,32,69,67,67,32,112,97,114,97,109,101,116,101,114,32,102,97,105,108,101,100,58,32,37,115,10,0,50,66,56,51,50,52,56,48,52,70,67,49,68,70,48,66,50,66,52,68,48,48,57,57,51,68,70,66,68,55,65,55,50,70,52,51,49,56,48,54,65,68,50,70,69,52,55,56,67,52,69,69,49,66,50,55,52,65,48,69,65,48,66,48,0,101,99,103,101,110,32,32,32,32,32,32,112,107,0,42,32,101,95,112,107,0,32,32,101,95,112,107,0,32,32,32,32,32,109,0,32,32,32,114,0,32,32,32,101,95,114,0,32,72,40,82,43,41,0,32,32,32,101,95,115,0,87,101,105,101,114,115,116,114,97,115,115,0,69,100,119,97,114,100,115,0,83,116,97,110,100,97,114,100,0,69,100,50,53,53,49,57,0,109,112,105,95,112,114,105,110,116,32,102,97,105,108,101,100,58,32,37,115,10,0,109,112,105,95,115,99,97,110,32,102,97,105,108,101,100,58,32,37,115,10,0,70,73,80,83,45,49,57,56,97,44,32,65,46,49,0,83,97,109,112,108,101,32,35,49,0,79,76,163,213,214,139,167,204,10,18,8,201,198,30,156,93,160,64,60,10,0,105,110,118,97,108,105,100,32,116,101,115,116,115,32,100,97,116,97,0,103,99,114,121,95,109,100,95,115,101,116,107,101,121,32,102,97,105,108,101,100,0,103,99,114,121,95,109,100,95,114,101,97,100,32,102,97,105,108,101,100,0,100,111,101,115,32,110,111,116,32,109,97,116,99,104,0,70,73,80,83,45,49,57,56,97,44,32,65,46,50,0,83,97,109,112,108,101,32,35,50,0,9,34,211,64,95,170,61,25,79,130,164,88,48,115,125,92,198,199,93,36,0,70,73,80,83,45,49,57,56,97,44,32,65,46,51,0,83,97,109,112,108,101,32,35,51,0,188,244,30,171,139,178,216,2,243,208,92,175,124,176,146,236,248,209,163,170,0,70,73,80,83,45,49,57,56,97,44,32,65,46,52,0,83,97,109,112,108,101,32,35,52,0,158,168,134,239,226,104,219,236,206,66,12,117,36,223,50,224,117,26,42,38,0,104,109,97,99,0,100,97,116,97,45,50,56,32,107,101,121,45,52,0,119,104,97,116,32,100,111,32,121,97,32,119,97,110,116,32,102,111,114,32,110,111,116,104,105,110,103,63,0,74,101,102,101,0,100,97,116,97,45,57,32,107,101,121,45,50,48,0,72,105,32,84,104,101,114,101,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,100,97,116,97,45,53,48,32,107,101,121,45,50,48,0,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,0,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,0,100,97,116,97,45,53,48,32,107,101,121,45,50,54,0,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,0,100,97,116,97,45,53,52,32,107,101,121,45,49,51,49,0,84,101,115,116,32,85,115,105,110,103,32,76,97,114,103,101,114,32,84,104,97,110,32,66,108,111,99,107,45,83,105,122,101,32,75,101,121,32,45,32,72,97,115,104,32,75,101,121,32,70,105,114,115,116,0,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,0,100,97,116,97,45,49,53,50,32,107,101,121,45,49,51,49,0,84,104,105,115,32,105,115,32,97,32,116,101,115,116,32,117,115,105,110,103,32,97,32,108,97,114,103,101,114,32,116,104,97,110,32,98,108,111,99,107,45,115,105,122,101,32,107,101,121,32,97,110,100,32,97,32,108,97,114,103,101,114,32,116,104,97,110,32,98,108,111,99,107,45,115,105,122,101,32,100,97,116,97,46,32,84,104,101,32,107,101,121,32,110,101,101,100,115,32,116,111,32,98,101,32,104,97,115,104,101,100,32,98,101,102,111,114,101,32,98,101,105,110,103,32,117,115,101,100,32,98,121,32,116,104,101,32,72,77,65,67,32,97,108,103,111,114,105,116,104,109,46,0,95,103,99,114,121,95,104,109,97,99,50,53,54,95,110,101,119,32,102,97,105,108,101,100,0,95,103,99,114,121,95,104,109,97,99,50,53,54,95,102,105,110,97,108,105,122,101,32,102,97,105,108,101,100,0,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,105,110,32,115,101,99,111,110,100,32,105,109,112,108,101,109,101,110,116,97,116,105,111,110,0,97,108,103,111,114,105,116,104,109,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,111,105,100,46,0,79,73,68,46,0,109,100,46,99,0,109,100,95,119,114,105,116,101,0,109,100,95,101,110,97,98,108,101,58,32,97,108,103,111,114,105,116,104,109,32,37,100,32,110,111,116,32,97,118,97,105,108,97,98,108,101,10,0,77,68,53,32,117,115,101,100,0,79,111,112,115,58,32,109,100,32,100,101,98,117,103,32,97,108,114,101,97,100,121,32,115,116,97,114,116,101,100,10,0,100,98,103,109,100,45,37,48,53,100,46,37,46,49,48,115,0,119,0,109,100,32,100,101,98,117,103,58,32,99,97,110,39,116,32,111,112,101,110,32,37,115,10,0,109,100,95,103,101,116,95,97,108,103,111,0,112,111,115,115,105,98,108,101,32,117,115,97,103,101,32,101,114,114,111,114,0,87,65,82,78,73,78,71,58,32,109,111,114,101,32,116,104,97,110,32,111,110,101,32,97,108,103,111,114,105,116,104,109,32,105,110,32,109,100,95,103,101,116,95,97,108,103,111,40,41,10,0,109,111,114,101,32,116,104,97,110,32,111,110,101,32,97,108,103,111,114,105,116,104,109,32,105,110,32,109,100,95,114,101,97,100,40,48,41,10,0,109,100,95,114,101,97,100,0,103,99,114,121,95,109,100,95,111,112,101,110,32,102,97,105,108,101,100,32,102,111,114,32,97,108,103,111,32,37,100,58,32,37,115,0,107,101,121,108,101,110,32,60,61,32,104,100,45,62,99,116,120,45,62,109,97,99,112,97,100,115,95,66,115,105,122,101,0,112,114,101,112,97,114,101,95,109,97,99,112,97,100,115,0,110,111,32,65,83,78,46,49,32,79,73,68,32,102,111,114,32,109,100,32,97,108,103,111,32,37,100,10,0,99,97,110,39,116,32,103,101,110,101,114,97,116,101,32,97,32,112,114,105,109,101,32,119,105,116,104,32,108,101,115,115,32,116,104,97,110,32,37,100,32,98,105,116,115,10,0,95,103,99,114,121,95,109,112,105,95,99,109,112,40,32,40,120,41,44,32,40,110,109,105,110,117,115,49,41,32,41,32,60,32,48,32,38,38,32,95,103,99,114,121,95,109,112,105,95,99,109,112,95,117,105,40,32,40,120,41,44,32,40,49,41,32,41,32,62,32,48,0,112,114,105,109,101,103,101,110,46,99,0,105,115,95,112,114,105,109,101,0,112,114,105,109,101,103,101,110,0,111,118,101,114,102,108,111,119,32,105,110,32,112,114,105,109,101,32,103,101,110,101,114,97,116,105,111,110,10,0,112,115,115,0,114,97,119,0,99,111,109,112,0,111,97,101,112,0,112,107,99,115,49,0,112,97,114,97,109,0,110,111,99,111,109,112,0,114,102,99,54,57,55,57,0,110,111,112,97,114,97,109,0,112,107,99,115,49,45,114,97,119,0,105,103,110,105,110,118,102,108,97,103,0,110,111,45,107,101,121,116,101,115,116,0,110,111,45,98,108,105,110,100,105,110,103,0,117,115,101,45,102,105,112,115,49,56,54,0,117,115,101,45,102,105,112,115,49,56,54,45,50,0,110,98,105,116,115,0,114,115,97,45,117,115,101,45,101,0,115,105,103,45,118,97,108,0,104,97,115,104,45,97,108,103,111,0,115,104,97,49,0,109,100,53,0,115,104,97,50,53,54,0,114,105,112,101,109,100,49,54,48,0,114,109,100,49,54,48,0,115,104,97,51,56,52,0,115,104,97,53,49,50,0,115,104,97,50,50,52,0,109,100,50,0,109,100,52,0,116,105,103,101,114,0,104,97,118,97,108,0,108,97,98,101,108,0,114,97,110,100,111,109,45,111,118,101,114,114,105,100,101,0,100,97,116,97,0,104,97,115,104,0,115,97,108,116,45,108,101,110,103,116,104,0,63,0,112,114,105,118,97,116,101,45,107,101,121,0,112,117,98,108,105,99,45,107,101,121,0,103,101,110,107,101,121,0,97,108,103,111,114,105,116,104,109,32,100,105,115,97,98,108,101,100,0,97,108,103,111,114,105,116,104,109,32,110,111,116,32,102,111,117,110,100,0,110,111,32,115,101,108,102,116,101,115,116,32,97,118,97,105,108,97,98,108,101,0,109,111,100,117,108,101,0,65,69,83,0,82,73,74,78,68,65,69,76,0,65,69,83,49,50,56,0,65,69,83,45,49,50,56,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,49,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,50,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,51,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,52,0,232,233,234,235,237,238,239,240,242,243,244,245,247,248,249,250,1,75,175,34,120,166,157,51,29,81,128,16,54,67,233,154,103,67,195,209,81,154,180,242,205,154,120,171,9,165,17,189,65,69,83,45,49,50,56,32,116,101,115,116,32,101,110,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,65,69,83,45,49,50,56,32,116,101,115,116,32,100,101,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,4,5,6,7,9,10,11,12,14,15,16,17,19,20,21,22,24,25,26,27,29,30,31,32,118,119,116,117,241,242,243,244,248,249,230,231,119,112,113,114,93,30,242,13,206,214,188,188,18,19,26,199,197,71,136,170,65,69,83,45,49,57,50,32,116,101,115,116,32,101,110,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,65,69,83,45,49,57,50,32,116,101,115,116,32,100,101,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,8,9,10,11,13,14,15,16,18,19,20,21,23,24,25,26,28,29,30,31,33,34,35,36,38,39,40,41,43,44,45,46,6,154,0,127,199,106,69,159,152,186,249,23,254,223,149,33,8,14,149,23,235,22,119,113,154,207,114,128,134,4,10,227,65,69,83,45,50,53,54,32,116,101,115,116,32,101,110,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,65,69,83,45,50,53,54,32,116,101,115,116,32,100,101,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,99,102,98,0,110,111,32,116,101,115,116,32,100,97,116,97,32,102,111,114,32,116,104,105,115,32,109,111,100,101,0,111,112,101,110,0,115,101,116,32,107,101,121,0,115,101,116,32,73,86,0,101,110,99,114,121,112,116,32,99,111,109,109,97,110,100,0,101,110,99,114,121,112,116,32,109,105,115,109,97,116,99,104,0,100,101,99,114,121,112,116,32,99,111,109,109,97,110,100,0,100,101,99,114,121,112,116,32,109,105,115,109,97,116,99,104,0,111,102,98,0,99,105,112,104,101,114,0,65,69,83,49,57,50,0,82,73,74,78,68,65,69,76,49,57,50,0,65,69,83,45,49,57,50,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,50,49,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,50,50,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,50,51,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,50,52,0,65,69,83,50,53,54,0,82,73,74,78,68,65,69,76,50,53,54,0,65,69,83,45,50,53,54,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,52,49,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,52,50,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,52,51,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,52,52,0,82,73,80,69,77,68,49,54,48,0,48,33,48,9,6,5,43,36,3,2,1,5,0,4,20,49,46,51,46,51,54,46,51,46,51,46,49,46,50,0,49,46,51,46,51,54,46,51,46,50,46,49,0,105,32,62,32,48,0,114,115,97,45,99,111,109,109,111,110,46,99,0,95,103,99,114,121,95,114,115,97,95,112,107,99,115,49,95,101,110,99,111,100,101,95,102,111,114,95,101,110,99,0,110,32,61,61,32,110,102,114,97,109,101,0,80,75,67,83,35,49,32,98,108,111,99,107,32,116,121,112,101,32,50,32,101,110,99,111,100,101,100,32,100,97,116,97,0,118,97,108,117,101,32,101,120,116,114,97,99,116,101,100,32,102,114,111,109,32,80,75,67,83,35,49,32,98,108,111,99,107,32,116,121,112,101,32,50,32,101,110,99,111,100,101,100,32,100,97,116,97,0,105,32,62,32,49,0,95,103,99,114,121,95,114,115,97,95,112,107,99,115,49,95,101,110,99,111,100,101,95,102,111,114,95,115,105,103,0,80,75,67,83,35,49,32,98,108,111,99,107,32,116,121,112,101,32,49,32,101,110,99,111,100,101,100,32,100,97,116,97,0,95,103,99,114,121,95,114,115,97,95,112,107,99,115,49,95,101,110,99,111,100,101,95,114,97,119,95,102,111,114,95,115,105,103,0,79,65,69,80,32,101,110,99,111,100,101,100,32,100,97,116,97,0,118,97,108,117,101,32,101,120,116,114,97,99,116,101,100,32,102,114,111,109,32,79,65,69,80,32,101,110,99,111,100,101,100,32,100,97,116,97,0,104,108,101,110,0,95,103,99,114,121,95,114,115,97,95,112,115,115,95,101,110,99,111,100,101,0,80,83,83,32,101,110,99,111,100,101,100,32,100,97,116,97,0,95,103,99,114,121,95,114,115,97,95,112,115,115,95,118,101,114,105,102,121,0,82,83,65,0,114,115,97,0,111,112,101,110,112,103,112,45,114,115,97,0,111,105,100,46,49,46,50,46,56,52,48,46,49,49,51,53,52,57,46,49,46,49,46,49,0,110,101,0,110,101,100,112,113,117,0,97,0,115,0,110,0,100,101,114,105,118,101,45,112,97,114,109,115,0,117,115,101,45,120,57,51,49,0,95,103,99,114,121,95,109,112,105,95,103,101,116,95,110,98,105,116,115,32,40,40,120,112,41,41,32,61,61,32,110,98,105,116,115,0,114,115,97,46,99,0,103,101,110,95,120,57,51,49,95,112,97,114,109,95,120,112,0,95,103,99,114,121,95,109,112,105,95,103,101,116,95,110,98,105,116,115,32,40,40,120,105,41,41,32,61,61,32,49,48,49,0,103,101,110,95,120,57,51,49,95,112,97,114,109,95,120,105,0,88,112,49,0,88,112,50,0,88,112,0,88,113,49,0,88,113,50,0,88,113,0,95,103,99,114,121,95,109,112,105,95,103,99,100,32,40,32,40,103,41,44,32,40,101,41,44,32,40,112,104,105,41,32,41,0,103,101,110,101,114,97,116,101,95,120,57,51,49,0,112,32,97,110,100,32,113,32,97,114,101,32,115,119,97,112,112,101,100,10,0,32,32,113,0,32,32,110,0,32,32,101,0,32,32,100,0,32,32,117,0,115,101,108,102,45,116,101,115,116,32,97,102,116,101,114,32,107,101,121,32,103,101,110,101,114,97,116,105,111,110,32,102,97,105,108,101,100,0,40,109,105,115,99,45,107,101,121,45,105,110,102,111,40,112,45,113,45,115,119,97,112,112,101,100,41,41,0,103,101,110,101,114,97,116,101,95,115,116,100,0,32,32,112,61,32,0,32,32,113,61,32,0,112,104,105,61,32,0,32,32,103,61,32,0,32,32,102,61,32,0,32,32,110,61,32,0,32,32,101,61,32,0,32,32,100,61,32,0,32,32,117,61,32,0,40,107,101,121,45,100,97,116,97,32,40,112,117,98,108,105,99,45,107,101,121,32,32,40,114,115,97,40,110,37,109,41,40,101,37,109,41,41,41,32,40,112,114,105,118,97,116,101,45,107,101,121,32,32,40,114,115,97,40,110,37,109,41,40,101,37,109,41,40,100,37,109,41,40,112,37,109,41,40,113,37,109,41,40,117,37,109,41,41,41,32,37,83,41,0,114,115,97,95,116,101,115,116,107,101,121,32,32,32,32,61,62,32,37,115,10,0,114,115,97,95,101,110,99,114,121,112,116,32,100,97,116,97,0,114,115,97,95,101,110,99,114,121,112,116,32,32,32,32,110,0,114,115,97,95,101,110,99,114,121,112,116,32,32,32,32,101,0,114,115,97,95,101,110,99,114,121,112,116,32,32,114,101,115,0,40,101,110,99,45,118,97,108,40,114,115,97,40,97,37,98,41,41,41,0,40,101,110,99,45,118,97,108,40,114,115,97,40,97,37,109,41,41,41,0,114,115,97,95,101,110,99,114,121,112,116,32,32,32,32,61,62,32,37,115,10,0,114,115,97,95,100,101,99,114,121,112,116,32,100,97,116,97,0,110,101,100,112,63,113,63,117,63,0,114,115,97,95,100,101,99,114,121,112,116,32,32,32,32,110,0,114,115,97,95,100,101,99,114,121,112,116,32,32,32,32,101,0,114,115,97,95,100,101,99,114,121,112,116,32,32,32,32,100,0,114,115,97,95,100,101,99,114,121,112,116,32,32,32,32,112,0,114,115,97,95,100,101,99,114,121,112,116,32,32,32,32,113,0,114,115,97,95,100,101,99,114,121,112,116,32,32,32,32,117,0,114,115,97,95,100,101,99,114,121,112,116,32,32,114,101,115,0,40,118,97,108,117,101,32,37,98,41,0,37,109,0,114,115,97,95,100,101,99,114,121,112,116,32,32,32,32,61,62,32,37,115,10,0,114,115,97,95,115,105,103,110,32,32,32,100,97,116,97,0,114,115,97,95,115,105,103,110,32,32,32,32,32,32,110,0,114,115,97,95,115,105,103,110,32,32,32,32,32,32,101,0,114,115,97,95,115,105,103,110,32,32,32,32,32,32,100,0,114,115,97,95,115,105,103,110,32,32,32,32,32,32,112,0,114,115,97,95,115,105,103,110,32,32,32,32,32,32,113,0,114,115,97,95,115,105,103,110,32,32,32,32,32,32,117,0,114,115,97,95,115,105,103,110,32,32,32,32,114,101,115,0,40,115,105,103,45,118,97,108,40,114,115,97,40,115,37,98,41,41,41,0,40,115,105,103,45,118,97,108,40,114,115,97,40,115,37,77,41,41,41,0,114,115,97,95,115,105,103,110,32,32,32,32,32,32,61,62,32,37,115,10,0,114,115,97,95,118,101,114,105,102,121,32,100,97,116,97,0,114,115,97,95,118,101,114,105,102,121,32,32,115,105,103,0,114,115,97,95,118,101,114,105,102,121,32,32,32,32,110,0,114,115,97,95,118,101,114,105,102,121,32,32,32,32,101,0,114,115,97,95,118,101,114,105,102,121,32,32,99,109,112,0,114,115,97,95,118,101,114,105,102,121,32,32,32,32,61,62,32,37,115,10,0,99,111,110,118,101,114,116,0,40,112,114,105,118,97,116,101,45,107,101,121,32,40,114,115,97,32,32,40,110,32,35,48,48,101,48,99,101,57,54,102,57,48,98,54,99,57,101,48,50,102,51,57,50,50,98,101,97,100,97,57,51,102,101,53,48,97,56,55,53,101,97,99,54,98,99,99,49,56,98,98,57,97,57,99,102,50,101,56,52,57,54,53,99,97,97,32,32,32,32,32,32,50,100,49,102,102,57,53,97,55,102,53,52,50,52,54,53,99,54,99,48,99,49,57,100,50,55,54,101,52,53,50,54,99,101,48,52,56,56,54,56,97,55,97,57,49,52,102,100,51,52,51,99,99,51,97,56,55,100,100,55,52,50,57,49,32,32,32,32,32,32,102,102,99,53,54,53,53,48,54,100,53,98,98,98,50,53,99,98,97,99,54,97,48,101,50,100,100,49,102,56,98,99,97,97,98,48,100,52,97,50,57,99,50,102,51,55,99,57,53,48,102,51,54,51,52,56,52,98,102,50,54,57,102,55,32,32,32,32,32,32,56,57,49,52,52,48,52,54,52,98,97,102,55,57,56,50,55,101,48,51,97,51,54,101,55,48,98,56,49,52,57,51,56,101,101,98,100,99,54,51,101,57,54,52,50,52,55,98,101,55,53,100,99,53,56,98,48,49,52,98,55,101,97,50,53,49,35,41,32,32,40,101,32,35,48,49,48,48,48,49,35,41,32,32,40,100,32,35,48,52,54,49,50,57,102,50,52,56,57,100,55,49,53,55,57,98,101,48,97,55,53,102,101,48,50,57,98,100,54,99,100,98,53,55,52,101,98,102,53,55,101,97,56,97,53,98,48,102,100,97,57,52,50,99,97,98,57,52,51,98,49,49,32,32,32,32,32,32,55,100,55,98,98,57,53,101,53,100,50,56,56,55,53,101,48,102,57,102,99,53,102,99,99,48,54,97,55,50,102,54,100,53,48,50,52,54,52,100,97,98,100,101,100,55,56,101,102,54,98,55,49,54,49,55,55,98,56,51,100,53,98,100,32,32,32,32,32,32,99,53,52,51], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE+30720); +/* memory initializer */ allocate([100,99,53,100,51,102,101,100,57,51,50,101,53,57,102,53,56,57,55,101,57,50,101,54,102,53,56,97,48,102,51,51,52,50,52,49,48,54,97,51,98,54,102,97,50,99,98,102,56,55,55,53,49,48,101,52,97,99,50,49,32,32,32,32,32,32,99,51,101,101,52,55,56,53,49,101,57,55,100,49,50,57,57,54,50,50,50,97,99,51,53,54,54,100,52,99,99,98,48,98,56,51,100,49,54,52,48,55,52,97,98,102,55,100,101,54,53,53,102,99,50,52,52,54,100,97,49,55,56,49,35,41,32,32,40,112,32,35,48,48,101,56,54,49,98,55,48,48,101,49,55,101,56,97,102,101,54,56,51,55,101,55,53,49,50,101,51,53,98,54,99,97,49,49,100,48,97,101,52,55,100,56,98,56,53,49,54,49,99,54,55,98,97,102,54,52,51,55,55,50,49,51,32,32,32,32,32,32,102,101,53,50,100,55,55,50,102,50,48,51,53,98,51,99,97,56,51,48,97,102,52,49,100,56,97,52,49,50,48,101,49,99,49,99,55,48,100,49,50,99,99,50,50,102,48,48,100,50,56,100,51,49,100,100,52,56,97,56,100,52,50,52,102,49,35,41,32,32,40,113,32,35,48,48,102,55,97,55,99,97,53,51,54,55,99,54,54,49,102,56,101,54,50,100,102,51,52,102,48,100,48,53,99,49,48,99,56,56,101,53,52,57,50,51,52,56,100,100,55,98,100,100,99,57,52,50,99,57,97,56,102,51,54,57,102,57,32,32,32,32,32,32,51,53,97,48,55,55,56,53,100,50,100,98,56,48,53,50,49,53,101,100,55,56,54,101,52,50,56,53,100,102,49,54,53,56,101,101,100,51,99,101,56,52,102,52,54,57,98,56,49,98,53,48,100,51,53,56,52,48,55,98,52,97,100,51,54,49,35,41,32,32,40,117,32,35,51,48,52,53,53,57,97,57,101,97,100,53,54,100,50,51,48,57,100,50,48,51,56,49,49,97,54,52,49,98,98,49,97,48,57,54,50,54,98,99,56,101,98,51,54,102,102,102,97,50,51,99,57,54,56,101,99,53,98,100,56,57,49,101,32,32,32,32,32,32,101,98,98,97,102,99,55,51,97,101,54,54,54,101,48,49,98,97,55,99,56,57,57,48,98,97,101,48,54,99,99,50,98,98,101,49,48,98,55,53,101,54,57,102,99,97,99,98,51,53,51,97,54,52,55,51,48,55,57,100,56,101,57,98,35,41,41,41,0,40,112,117,98,108,105,99,45,107,101,121,32,40,114,115,97,32,32,40,110,32,35,48,48,101,48,99,101,57,54,102,57,48,98,54,99,57,101,48,50,102,51,57,50,50,98,101,97,100,97,57,51,102,101,53,48,97,56,55,53,101,97,99,54,98,99,99,49,56,98,98,57,97,57,99,102,50,101,56,52,57,54,53,99,97,97,32,32,32,32,32,32,50,100,49,102,102,57,53,97,55,102,53,52,50,52,54,53,99,54,99,48,99,49,57,100,50,55,54,101,52,53,50,54,99,101,48,52,56,56,54,56,97,55,97,57,49,52,102,100,51,52,51,99,99,51,97,56,55,100,100,55,52,50,57,49,32,32,32,32,32,32,102,102,99,53,54,53,53,48,54,100,53,98,98,98,50,53,99,98,97,99,54,97,48,101,50,100,100,49,102,56,98,99,97,97,98,48,100,52,97,50,57,99,50,102,51,55,99,57,53,48,102,51,54,51,52,56,52,98,102,50,54,57,102,55,32,32,32,32,32,32,56,57,49,52,52,48,52,54,52,98,97,102,55,57,56,50,55,101,48,51,97,51,54,101,55,48,98,56,49,52,57,51,56,101,101,98,100,99,54,51,101,57,54,52,50,52,55,98,101,55,53,100,99,53,56,98,48,49,52,98,55,101,97,50,53,49,35,41,32,32,40,101,32,35,48,49,48,48,48,49,35,41,41,41,0,107,101,121,32,99,111,110,115,105,115,116,101,110,99,121,0,115,105,103,110,0,40,100,97,116,97,32,40,102,108,97,103,115,32,112,107,99,115,49,41,32,40,104,97,115,104,32,115,104,97,49,32,35,49,49,50,50,51,51,52,52,53,53,54,54,55,55,56,56,57,57,48,48,97,97,98,98,99,99,100,100,101,101,102,102,49,48,50,48,51,48,52,48,35,41,41,0,40,100,97,116,97,32,40,102,108,97,103,115,32,112,107,99,115,49,41,32,40,104,97,115,104,32,115,104,97,49,32,35,49,49,50,50,51,51,52,52,53,53,54,54,55,55,56,56,57,57,48,48,97,97,98,98,99,99,100,100,101,101,102,102,56,48,50,48,51,48,52,48,35,41,41,0,99,111,110,118,101,114,116,105,110,103,32,100,97,116,97,32,102,97,105,108,101,100,0,115,105,103,110,105,110,103,32,102,97,105,108,101,100,0,118,101,114,105,102,121,32,102,97,105,108,101,100,0,98,97,100,32,115,105,103,110,97,116,117,114,101,32,110,111,116,32,100,101,116,101,99,116,101,100,0,101,110,99,114,121,112,116,0,40,100,97,116,97,32,40,102,108,97,103,115,32,114,97,119,41,32,40,118,97,108,117,101,32,37,109,41,41,0,101,110,99,114,121,112,116,32,102,97,105,108,101,100,0,101,110,99,45,118,97,108,0,103,99,114,121,95,112,107,95,100,101,99,114,121,112,116,32,114,101,116,117,114,110,101,100,32,103,97,114,98,97,103,101,0,99,105,112,104,101,114,116,101,120,116,32,109,97,116,99,104,101,115,32,112,108,97,105,110,116,101,120,116,0,100,101,99,114,121,112,116,32,102,97,105,108,101,100,0,118,97,108,117,101,0,100,101,99,114,121,112,116,32,114,101,116,117,114,110,101,100,32,110,111,32,112,108,97,105,110,116,101,120,116,0,109,105,115,109,97,116,99,104,0,83,72,65,49,0,48,33,48,9,6,5,43,14,3,2,26,5,0,4,20,49,46,50,46,56,52,48,46,49,49,51,53,52,57,46,49,46,49,46,53,0,49,46,50,46,56,52,48,46,49,48,48,52,48,46,52,46,51,0,49,46,51,46,49,52,46,51,46,50,46,50,54,0,49,46,51,46,49,52,46,51,46,50,46,50,57,0,49,46,50,46,56,52,48,46,49,48,48,52,53,46,52,46,49,0,169,153,62,54,71,6,129,106,186,62,37,113,120,80,194,108,156,208,216,157,0,132,152,62,68,28,59,210,110,186,174,74,161,249,81,41,229,229,70,112,241,0,52,170,151,60,212,196,218,164,246,30,235,43,219,173,39,49,101,52,1,111,0,83,72,65,50,50,52,0,48,45,48,13,6,9,96,134,72,1,101,3,4,2,4,5,0,4,28,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,50,46,52,0,35,9,125,34,52,5,216,34,134,66,164,119,189,162,85,179,42,173,188,228,189,160,179,247,227,108,157,167,0,97,98,99,100,98,99,100,101,99,100,101,102,100,101,102,103,101,102,103,104,102,103,104,105,103,104,105,106,104,105,106,107,105,106,107,108,106,107,108,109,107,108,109,110,108,109,110,111,109,110,111,112,110,111,112,113,0,117,56,139,22,81,39,118,204,93,186,93,161,253,137,1,80,176,198,69,92,180,245,139,25,82,82,37,37,0,32,121,70,85,152,12,145,216,187,180,193,234,151,97,138,75,240,63,66,88,25,72,178,238,78,231,173,103,0,186,120,22,191,143,1,207,234,65,65,64,222,93,174,34,35,176,3,97,163,150,23,122,156,180,16,255,97,242,0,21,173,0,36,141,106,97,210,6,56,184,229,192,38,147,12,62,96,57,163,60,228,89,100,255,33,103,246,236,237,212,25,219,6,193,0,205,199,110,92,153,20,251,146,129,161,199,226,132,215,62,103,241,128,154,72,164,151,32,14,4,109,57,204,199,17,44,208,0,83,72,65,50,53,54,0,48,49,48,13,6,9,96,134,72,1,101,3,4,2,1,5,0,4,32,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,50,46,49,0,49,46,50,46,56,52,48,46,49,49,51,53,52,57,46,49,46,49,46,49,49,0,83,72,65,53,49,50,0,48,81,48,13,6,9,96,134,72,1,101,3,4,2,3,5,0,4,64,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,50,46,51,0,49,46,50,46,56,52,48,46,49,49,51,53,52,57,46,49,46,49,46,49,51,0,115,104,111,114,116,32,115,116,114,105,110,103,0,97,98,99,0,203,0,117,63,69,163,94,139,181,160,61,105,154,198,80,7,39,44,50,171,14,222,209,99,26,139,96,90,67,255,91,237,128,134,7,43,161,231,204,35,88,186,236,161,52,200,37,167,0,108,111,110,103,32,115,116,114,105,110,103,0,97,98,99,100,101,102,103,104,98,99,100,101,102,103,104,105,99,100,101,102,103,104,105,106,100,101,102,103,104,105,106,107,101,102,103,104,105,106,107,108,102,103,104,105,106,107,108,109,103,104,105,106,107,108,109,110,104,105,106,107,108,109,110,111,105,106,107,108,109,110,111,112,106,107,108,109,110,111,112,113,107,108,109,110,111,112,113,114,108,109,110,111,112,113,114,115,109,110,111,112,113,114,115,116,110,111,112,113,114,115,116,117,0,9,51,12,51,247,17,71,232,61,25,47,199,130,205,27,71,83,17,27,23,59,59,5,210,47,160,128,134,227,176,247,18,252,199,199,26,85,126,45,185,102,195,233,250,145,116,96,57,0,111,110,101,32,109,105,108,108,105,111,110,32,34,97,34,0,157,14,24,9,113,100,116,203,8,110,131,78,49,10,74,28,237,20,158,156,0,242,72,82,121,114,206,197,112,76,42,91,7,184,179,220,56,236,196,235,174,151,221,216,127,61,137,133,0,100,105,103,101,115,116,0,221,175,53,161,147,97,122,186,204,65,115,73,174,32,65,49,18,230,250,78,137,169,126,162,10,158,238,230,75,85,211,154,33,146,153,42,39,79,193,168,54,186,60,35,163,254,235,189,69,77,68,35,100,60,232,14,42,154,201,79,165,76,164,159,0,142,149,155,117,218,227,19,218,140,244,247,40,20,252,20,63,143,119,121,198,235,159,127,161,114,153,174,173,182,136,144,24,80,29,40,158,73,0,247,228,51,27,153,222,196,181,67,58,199,211,41,238,182,221,38,84,94,150,229,91,135,75,233,9,0,231,24,72,61,12,231,105,100,78,46,66,199,188,21,180,99,142,31,152,177,59,32,68,40,86,50,168,3,175,169,115,235,222,15,242,68,135,126,166,10,76,176,67,44,229,119,195,27,235,0,156,92,44,73,170,46,78,173,178,23,173,140,192,155,0,83,72,65,51,56,52,0,48,65,48,13,6,9,96,134,72,1,101,3,4,2,2,5,0,4,48,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,50,46,50,0,49,46,50,46,56,52,48,46,49,49,51,53,52,57,46,49,46,49,46,49,50,0,84,87,79,70,73,83,72,0,159,88,159,92,246,18,44,50,182,191,236,47,42,232,195,90,212,145,219,22,231,177,195,158,134,203,8,107,120,159,84,25,1,159,152,9,222,23,17,133,143,170,195,163,186,32,251,195,84,119,111,102,105,115,104,45,49,50,56,32,116,101,115,116,32,101,110,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,84,119,111,102,105,115,104,45,49,50,56,32,116,101,115,116,32,100,101,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,212,59,183,85,110,163,46,70,242,162,130,183,212,91,78,13,87,255,115,157,77,201,44,27,215,252,1,112,12,200,33,111,144,175,233,27,178,136,84,79,44,50,220,35,155,38,53,230,108,180,86,28,64,191,10,151,5,147,28,182,212,8,231,250,84,119,111,102,105,115,104,45,50,53,54,32,116,101,115,116,32,101,110,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,84,119,111,102,105,115,104,45,50,53,54,32,116,101,115,116,32,100,101,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,37,115,10,0,0,1,23,2,46,24,83,3,106,47,147,25,52,84,69,4,92,107,182,48,166,148,75,26,140,53,129,85,170,70,13,5,36,93,135,108,155,183,193,49,43,167,163,149,152,76,202,27,230,141,115,54,205,130,18,86,98,171,240,71,79,14,189,6,212,37,210,94,39,136,102,109,214,156,121,184,8,194,223,50,104,44,253,168,138,164,90,150,41,153,34,77,96,203,228,28,123,231,59,142,158,116,244,55,216,206,249,131,111,19,178,87,225,99,220,172,196,241,175,72,10,80,66,15,186,190,199,7,222,213,120,38,101,211,209,95,227,40,33,137,89,103,252,110,177,215,248,157,243,122,58,185,198,9,65,195,174,224,219,51,68,105,146,45,82,254,22,169,12,139,128,165,74,91,181,151,201,42,162,154,192,35,134,78,188,97,239,204,17,229,114,29,61,124,235,232,233,60,234,143,125,159,236,117,30,245,62,56,246,217,63,207,118,250,31,132,160,112,237,20,144,179,126,88,251,226,32,100,208,221,119,173,218,197,64,242,57,176,247,73,180,11,127,81,21,67,145,16,113,187,238,191,133,200,161,1,2,4,8,16,32,64,128,77,154,121,242,169,31,62,124,248,189,55,110,220,245,167,3,6,12,24,48,96,192,205,215,227,139,91,182,33,66,132,69,138,89,178,41,82,164,5,10,20,40,80,160,13,26,52,104,208,237,151,99,198,193,207,211,235,155,123,246,161,15,30,60,120,240,173,23,46,92,184,61,122,244,165,7,14,28,56,112,224,141,87,174,17,34,68,136,93,186,57,114,228,133,71,142,81,162,9,18,36,72,144,109,218,249,191,51,102,204,213,231,131,75,150,97,194,201,223,243,171,27,54,108,216,253,183,35,70,140,85,170,25,50,100,200,221,247,163,11,22,44,88,176,45,90,180,37,74,148,101,202,217,255,179,43,86,172,21,42,84,168,29,58,116,232,157,119,238,145,111,222,241,175,19,38,76,152,125,250,185,63,126,252,181,39,78,156,117,234,153,127,254,177,47,94,188,53,106,212,229,135,67,134,65,130,73,146,105,210,233,159,115,230,129,79,158,113,226,137,95,190,49,98,196,197,199,195,203,219,251,187,59,118,236,149,103,206,209,239,147,107,214,225,143,83,166,1,2,4,8,16,32,64,128,77,154,121,242,169,31,62,124,248,189,55,110,220,245,167,3,6,12,24,48,96,192,205,215,227,139,91,182,33,66,132,69,138,89,178,41,82,164,5,10,20,40,80,160,13,26,52,104,208,237,151,99,198,193,207,211,235,155,123,246,161,15,30,60,120,240,173,23,46,92,184,61,122,244,165,7,14,28,56,112,224,141,87,174,17,34,68,136,93,186,57,114,228,133,71,142,81,162,9,18,36,72,144,109,218,249,191,51,102,204,213,231,131,75,150,97,194,201,223,243,171,27,54,108,216,253,183,35,70,140,85,170,25,50,100,200,221,247,163,11,22,44,88,176,45,90,180,37,74,148,101,202,217,255,179,43,86,172,21,42,84,168,29,58,116,232,157,119,238,145,111,222,241,175,19,38,76,152,125,250,185,63,126,252,181,39,78,156,117,234,153,127,254,177,47,94,188,53,106,212,229,135,67,134,65,130,73,146,105,210,233,159,115,230,129,79,158,113,226,137,95,190,49,98,196,197,199,195,203,169,117,103,243,179,198,232,244,4,219,253,123,163,251,118,200,154,74,146,211,128,230,120,107,228,69,221,125,209,232,56,75,13,214,198,50,53,216,152,253,24,55,247,113,236,241,108,225,67,48,117,15,55,248,38,27,250,135,19,250,148,6,72,63,242,94,208,186,139,174,48,91,132,138,84,0,223,188,35,157,25,109,91,193,61,177,89,14,243,128,174,93,162,210,130,213,99,160,1,132,131,7,46,20,217,181,81,144,155,44,124,163,166,178,235,115,165,76,190,84,22,146,12,116,227,54,97,81,192,56,140,176,58,189,245,90,115,252,44,96,37,98,11,150,187,108,78,66,137,247,107,16,83,124,106,40,180,39,241,140,225,19,230,149,189,156,69,199,226,36,244,70,182,59,102,112,204,202,149,227,3,133,86,203,212,17,28,208,30,147,215,184,251,166,195,131,142,32,181,255,233,159,207,119,191,195,186,204,234,3,119,111,57,8,175,191,51,64,201,231,98,43,113,226,129,121,121,12,9,170,173,130,36,65,205,58,249,234,216,185,229,228,197,154,185,164,77,151,68,126,8,218,134,122,231,23,161,102,29,148,170,161,237,29,6,61,112,240,178,222,210,179,65,11,123,114,160,167,17,28,49,239,194,209,39,83,144,62,32,143,246,51,96,38,255,95,150,236,92,118,177,42,171,73,158,129,156,136,82,238,27,33,95,196,147,26,10,235,239,217,145,197,133,57,73,153,238,205,45,173,79,49,143,139,59,1,71,24,135,35,109,221,70,31,214,78,62,45,105,249,100,72,42,79,206,242,203,101,47,142,252,120,151,92,5,88,122,25,172,141,127,229,213,152,26,87,75,103,14,127,167,5,90,100,40,175,20,99,63,182,41,254,136,245,60,183,76,60,2,165,184,206,218,233,176,104,23,68,85,224,31,77,138,67,125,105,87,41,199,46,141,172,116,21,183,89,196,168,159,10,114,158,126,110,21,71,34,223,18,52,88,53,7,106,153,207,52,220,110,34,80,201,222,192,104,155,101,137,188,212,219,237,248,171,200,18,168,162,43,13,64,82,220,187,254,2,50,47,164,169,202,215,16,97,33,30,240,180,211,80,93,4,15,246,0,194,111,22,157,37,54,134,66,86,74,85,94,9,193,190,224,145,117,243,198,244,219,123,251,200,74,211,230,107,69,125,232,75,214,50,216,253,55,113,241,225,48,15,248,27,135,250,6,63,94,186,174,91,138,0,188,157,109,193,177,14,128,93,210,213,160,132,7,20,181,144,44,163,178,115,76,84,146,116,54,81,56,176,189,90,252,96,98,150,108,66,247,16,124,40,39,140,19,149,156,199,36,70,59,112,202,227,133,203,17,208,147,184,166,131,32,255,159,119,195,204,3,111,8,191,64,231,43,226,121,12,170,130,65,58,234,185,228,154,164,151,126,218,122,23,102,148,161,29,61,240,222,179,11,114,167,28,239,209,83,62,143,51,38,95,236,118,42,73,129,136,238,33,196,26,235,217,197,57,153,205,173,49,139,1,24,35,221,31,78,45,249,72,79,242,101,142,120,92,88,25,141,229,152,87,103,127,5,100,175,99,182,254,245,183,60,165,206,233,104,68,224,77,67,105,41,46,172,21,89,168,10,158,110,71,223,52,53,106,207,220,34,201,192,155,137,212,237,171,18,162,13,82,187,2,47,169,215,97,30,180,80,4,246,194,22,37,134,86,85,9,190,145,169,103,179,232,4,253,163,118,154,146,128,120,228,221,209,56,13,198,53,152,24,247,236,108,67,117,55,38,250,19,148,72,242,208,139,48,132,84,223,35,25,91,61,89,243,174,162,130,99,1,131,46,217,81,155,124,166,235,165,190,22,12,227,97,192,140,58,245,115,44,37,11,187,78,137,107,83,106,180,241,225,230,189,69,226,244,182,102,204,149,3,86,212,28,30,215,251,195,142,181,233,207,191,186,234,119,57,175,51,201,98,113,129,121,9,173,36,205,249,216,229,197,185,77,68,8,134,231,161,29,170,237,6,112,178,210,65,123,160,17,49,194,39,144,32,246,96,255,150,92,177,171,158,156,82,27,95,147,10,239,145,133,73,238,45,79,143,59,71,135,109,70,214,62,105,100,42,206,203,47,252,151,5,122,172,127,213,26,75,14,167,90,40,20,63,41,136,60,76,2,184,218,176,23,85,31,138,125,87,199,141,116,183,196,159,114,126,21,34,18,88,7,153,52,110,80,222,104,101,188,219,248,200,168,43,64,220,254,50,164,202,16,33,240,211,93,15,0,111,157,54,66,74,94,193,224,84,87,79,70,73,83,72,49,50,56,0,102,97,105,108,101,100,32,116,111,32,97,99,113,117,105,114,101,32,116,104,101,32,110,111,110,99,101,32,98,117,102,102,101,114,32,108,111,99,107,58,32,37,115,10,0,102,97,105,108,101,100,32,116,111,32,114,101,108,101,97,115,101,32,116,104,101,32,110,111,110,99,101,32,98,117,102,102,101,114,32,108,111,99,107,58,32,37,115,10,0,37,115,46,42,0,37,115,46,88,0,101,99,95,105,110,118,109,58,32,105,110,118,101,114,115,101,32,100,111,101,115,32,110,111,116,32,101,120,105,115,116,58,10,0,32,32,97,0,32,32,112,0,37,115,58,32,71,101,116,116,105,110,103,32,89,45,99,111,111,114,100,105,110,97,116,101,32,111,110,32,37,115,32,105,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,10,0,95,103,99,114,121,95,109,112,105,95,101,99,95,103,101,116,95,97,102,102,105,110,101,0,77,111,110,116,103,111,109,101,114,121,0,71,67,82,89,80,84,95,66,65,82,82,69,84,84,0,37,115,58,32,37,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,95,103,99,114,121,95,109,112,105,95,101,99,95,100,117,112,95,112,111,105,110,116,0,95,103,99,114,121,95,109,112,105,95,101,99,95,97,100,100,95,112,111,105,110,116,115,0,0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,33,98,112,95,109,97,114,107,101,114,0,109,112,105,45,112,111,119,46,99,0,95,103,99,114,121,95,109,112,105,95,112,111,119,109,0,114,101,115,45,62,100,32,61,61,32,114,112,0,105,32,61,61,32,110,108,105,109,98,115,0,109,112,105,99,111,100,101,114,46,99,0,95,103,99,114,121,95,109,112,105,95,115,101,116,95,98,117,102,102,101,114,0,58,103,101,110,101,114,105,99,47,109,112,105,104,45,97,100,100,49,46,99,58,103,101,110,101,114,105,99,47,109,112,105,104,45,115,117,98,49,46,99,58,103,101,110,101,114,105,99,47,109,112,105,104,45,109,117,108,49,46,99,58,103,101,110,101,114,105,99,47,109,112,105,104,45,109,117,108,50,46,99,58,103,101,110,101,114,105,99,47,109,112,105,104,45,109,117,108,51,46,99,58,103,101,110,101,114,105,99,47,109,112,105,104,45,108,115,104,105,102,116,46,99,58,103,101,110,101,114,105,99,47,109,112,105,104,45,114,115,104,105,102,116,46,99,0,105,110,118,97,108,105,100,32,109,112,105,95,99,111,110,115,116,32,115,101,108,101,99,116,111,114,32,37,100,10,0,87,97,114,110,105,110,103,58,32,116,114,121,105,110,103,32,116,111,32,99,104,97,110,103,101,32,97,110,32,105,109,109,117,116,97,98,108,101,32,77,80,73,10,0,105,110,118,97,108,105,100,32,102,108,97,103,32,118,97,108,117,101,32,105,110,32,109,112,105,95,102,114,101,101,10,0,109,112,105,95,103,101,116,95,111,112,97,113,117,101,32,111,110,32,110,111,114,109,97,108,32,109,112,105,10,0,109,112,105,95,115,101,116,95,99,111,110,100,58,32,100,105,102,102,101,114,101,110,116,32,115,105,122,101,115,10,0,109,112,105,95,115,119,97,112,95,99,111,110,100,58,32,100,105,102,102,101,114,101,110,116,32,115,105,122,101,115,10,0,105,110,118,97,108,105,100,32,102,108,97,103,32,118,97,108,117,101,10,0,77,80,73,32,115,117,98,115,121,115,116,101,109,32,110,111,116,32,105,110,105,116,105,97,108,105,122,101,100,10,0,10,10,84,104,105,115,32,105,115,32,76,105,98,103,99,114,121,112,116,32,49,46,55,46,48,45,98,101,116,97,50,51,48,32,45,32,84,104,101,32,71,78,85,32,67,114,121,112,116,111,32,76,105,98,114,97,114,121,10,67,111,112,121,114,105,103,104,116,32,40,67,41,32,50,48,48,48,45,50,48,49,50,32,70,114,101,101,32,83,111,102,116,119,97,114,101,32,70,111,117,110,100,97,116,105,111,110,44,32,73,110,99,46,10,67,111,112,121,114,105,103,104,116,32,40,67,41,32,50,48,49,50,45,50,48,49,52,32,103,49,48,32,67,111,100,101,32,71,109,98,72,10,67,111,112,121,114,105,103,104,116,32,40,67,41,32,50,48,49,51,45,50,48,49,52,32,74,117,115,115,105,32,75,105,118,105,108,105,110,110,97,10,10,40,97,51,54,101,101,55,53,32,50,48,49,54,45,48,50,45,49,56,84,49,52,58,52,57,43,48,48,48,48,41,10,10,10,0,99,105,112,104,101,114,45,99,109,97,99,46,99,0,99,109,97,99,95,103,101,110,101,114,97,116,101,95,115,117,98,107,101,121,115,0,99,45,62,117,110,117,115,101,100,32,60,32,98,108,111,99,107,115,105,122,101,0,99,105,112,104,101,114,45,99,116,114,46,99,0,95,103,99,114,121,95,99,105,112,104,101,114,95,99,116,114,95,101,110,99,114,121,112,116,0,117,110,117,115,101,100,32,61,61,32,98,108,111,99,107,115,105,122,101,0,99,105,112,104,101,114,45,103,99,109,46,99,0,100,111,95,103,104,97,115,104,95,98,117,102,0,102,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,0,115,101,116,107,101,121,32,102,97,105,108,101,100,0,115,101,108,102,116,101,115,116,32,102,111,114,32,67,66,67,32,102,97,105,108,101,100,32,45,32,115,101,101,32,115,121,115,108,111,103,32,102,111,114,32,100,101,116,97,105,108,115,0,115,101,108,102,116,101,115,116,32,102,111,114,32,67,70,66,32,102,97,105,108,101,100,32,45,32,115,101,101,32,115,121,115,108,111,103,32,102,111,114,32,100,101,116,97,105,108,115,0,115,101,108,102,116,101,115,116,32,102,111,114,32,67,84,82,32,102,97,105,108,101,100,32,45,32,115,101,101,32,115,121,115,108,111,103,32,102,111,114,32,100,101,116,97,105,108,115,0,69,67,67,0,101,99,99,0,101,99,100,115,97,0,101,99,100,104,0,101,100,100,115,97,0,103,111,115,116,0,112,97,98,103,110,104,113,0,112,97,98,103,110,104,113,100,0,115,119,0,114,115,0,99,117,114,118,101,0,102,108,97,103,115,0,116,114,97,110,115,105,101,110,116,45,107,101,121,0,101,99,103,101,110,32,99,117,114,118,101,32,105,110,102,111,58,32,37,115,47,37,115,10,0,101,99,103,101,110,32,99,117,114,118,101,32,117,115,101,100,58,32,37,115,10,0,101,99,103,101,110,32,99,117,114,118,101,32,32,32,112,0,101,99,103,101,110,32,99,117,114,118,101,32,32,32,97,0,101,99,103,101,110,32,99,117,114,118,101,32,32,32,98,0,101,99,103,101,110,32,99,117,114,118,101,32,32,32,110,0,101,99,103,101,110,32,99,117,114,118,101,32,32,32,104,0,101,99,103,101,110,32,99,117,114,118,101,32,71,0,101,99,103,101,110,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,32,102,111,114,32,37,115,10,0,81,0,101,99,103,101,110,32,99,111,110,118,101,114,116,101,100,32,81,32,116,111,32,97,32,99,111,109,112,108,105,97,110,116,32,112,111,105,110,116,10,0,101,99,103,101,110,32,100,105,100,110,39,116,32,110,101,101,100,32,116,111,32,99,111,110,118,101,114,116,32,81,32,116,111,32,97,32,99,111,109,112,108,105,97,110,116,32,112,111,105,110,116,10,0,84,101,115,116,105,110,103,32,107,101,121,46,10,0,69,67,68,83,65,32,111,112,101,114,97,116,105,111,110,58,32,115,105,103,110,32,102,97,105,108,101,100,10,0,69,67,68,83,65,32,111,112,101,114,97,116,105,111,110,58,32,115,105,103,110,44,32,118,101,114,105,102,121,32,102,97,105,108,101,100,10,0,69,67,68,83,65,32,111,112,101,114,97,116,105,111,110,58,32,115,105,103,110,44,32,118,101,114,105,102,121,32,111,107,46,10,0,101,99,100,104,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,32,102,111,114,32,104,107,81,10,0,101,99,100,104,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,32,102,111,114,32,104,100,107,71,10,0,69,67,68,72,32,116,101,115,116,32,102,97,105,108,101,100,46,10,0,71,0,40,99,117,114,118,101,32,37,115,41,0,40,102,108,97,103,115,32,112,97,114,97,109,41,0,40,102,108,97,103,115,32,101,100,100,115,97,41,0,40,102,108,97,103,115,32,112,97,114,97,109,32,101,100,100,115,97,41,0,40,107,101,121,45,100,97,116,97,32,40,112,117,98,108,105,99,45,107,101,121,32,32,40,101,99,99,37,83,37,83,40,112,37,109,41,40,97,37,109,41,40,98,37,109,41,40,103,37,109,41,40,110,37,109,41,40,104,37,109,41,40,113,37,109,41,41,41,32,40,112,114,105,118,97,116,101,45,107,101,121,32,32,40,101,99,99,37,83,37,83,40,112,37,109,41,40,97,37,109,41,40,98,37,109,41,40,103,37,109,41,40,110,37,109,41,40,104,37,109,41,40,113,37,109,41,40,100,37,109,41,41,41,32,41,0,40,107,101,121,45,100,97,116,97,32,40,112,117,98,108,105,99,45,107,101,121,32,32,40,101,99,99,37,83,37,83,40,113,37,109,41,41,41,32,40,112,114,105,118,97,116,101,45,107,101,121,32,32,40,101,99,99,37,83,37,83,40,113,37,109,41,40,100,37,109,41,41,41,32,41,0,101,99,103,101,110,32,114,101,115,117,108,116,32,32,112,0,101,99,103,101,110,32,114,101,115,117,108,116,32,32,97,0,101,99,103,101,110,32,114,101,115,117,108,116,32,32,98,0,101,99,103,101,110,32,114,101,115,117,108,116,32,32,71,0,101,99,103,101,110,32,114,101,115,117,108,116,32,32,110,0,101,99,103,101,110,32,114,101,115,117,108,116,32,32,104,0,101,99,103,101,110,32,114,101,115,117,108,116,32,32,81,0,101,99,103,101,110,32,114,101,115,117,108,116,32,32,100,0,101,99,103,101,110,32,114,101,115,117,108,116,32,32,117,115,105,110,103,32,69,100,50,53,53,49,57,43,69,100,68,83,65,10,0,45,112,63,97,63,98,63,103,63,110,63,104,63,47,113,63,43,100,0,47,113,63,43,100,0,101,99,99,95,116,101,115,116,107,101,121,32,105,110,102,58,32,37,115,47,37,115,10,0,101,99,99,95,116,101,115,116,107,101,121,32,110,97,109,58,32,37,115,10,0,101,99,99,95,116,101,115,116,107,101,121,32,32,32,112,0,101,99,99,95,116,101,115,116,107,101,121,32,32,32,97,0,101,99,99,95,116,101,115,116,107,101,121,32,32,32,98,0,101,99,99,95,116,101,115,116,107,101,121,32,103,0,101,99,99,95,116,101,115,116,107,101,121,32,32,32,110,0,101,99,99,95,116,101,115,116,107,101,121,32,32,32,104,0,101,99,99,95,116,101,115,116,107,101,121,32,32,32,113,0,101,99,99,95,116,101,115,116,107,101,121,32,32,32,100,0,66,97,100,32,99,104,101,99,107,58,32,80,111,105,110,116,32,39,71,39,32,100,111,101,115,32,110,111,116,32,98,101,108,111,110,103,32,116,111,32,99,117,114,118,101,32,39,69,39,33,10,0,66,97,100,32,99,104,101,99,107,58,32,39,71,39,32,99,97,110,110,111,116,32,98,101,32,80,111,105,110,116,32,97,116,32,73,110,102,105,110,105,116,121,33,10,0,99,104,101,99,107,95,115,101,99,114,101,116,95,107,101,121,58,32,69,32,105,115,32,110,111,116,32,97,32,99,117,114,118,101,32,111,102,32,111,114,100,101,114,32,110,10,0,66,97,100,32,99,104,101,99,107,58,32,81,32,99,97,110,32,110,111,116,32,98,101,32,97,32,80,111,105,110,116,32,97,116,32,73,110,102,105,110,105,116,121,33,10,0,66,97,100,32,99,104,101,99,107,58,32,99,111,109,112,117,116,97,116,105,111,110,32,111,102,32,100,71,32,102,97,105,108,101,100,10,0,66,97,100,32,99,104,101,99,107,58,32,84,104,101,114,101,32,105,115,32,78,79,32,99,111,114,114,101,115,112,111,110,100,101,110,99,101,32,98,101,116,119,101,101,110,32,39,100,39,32,97,110,100,32,39,81,39,33,10,0,101,99,99,95,116,101,115,116,107,101,121,32,32,32,61,62,32,37,115,10,0,112,0,101,99,99,95,101,110,99,114,121,112,116,32,100,97,116,97,0,45,112,63,97,63,98,63,103,63,110,63,104,63,43,113,0,101,99,99,95,101,110,99,114,121,112,116,32,105,110,102,111,58,32,37,115,47,37,115,10,0,101,99,99,95,101,110,99,114,121,112,116,32,110,97,109,101,58,32,37,115,10,0,101,99,99,95,101,110,99,114,121,112,116,32,32,32,32,112,0,101,99,99,95,101,110,99,114,121,112,116,32,32,32,32,97,0,101,99,99,95,101,110,99,114,121,112,116,32,32,32,32,98,0,101,99,99,95,101,110,99,114,121,112,116,32,32,103,0,101,99,99,95,101,110,99,114,121,112,116,32,32,32,32,110,0,101,99,99,95,101,110,99,114,121,112,116,32,32,32,32,104,0,101,99,99,95,101,110,99,114,121,112,116,32,32,32,32,113,0,101,99,100,104,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,32,102,111,114,32,107,100,71,10,0,101,99,100,104,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,32,102,111,114,32,107,71,10,0,40,101,110,99,45,118,97,108,40,101,99,100,104,40,115,37,109,41,40,101,37,109,41,41,41,0,101,99,99,95,101,110,99,114,121,112,116,32,32,32,32,61,62,32,37,115,10,0,101,0,101,99,99,95,100,101,99,114,121,112,116,32,32,100,95,101,0,45,112,63,97,63,98,63,103,63,110,63,104,63,43,100,0,101,99,99,95,100,101,99,114,121,112,116,32,105,110,102,111,58,32,37,115,47,37,115,10,0,101,99,99,95,100,101,99,114,121,112,116,32,110,97,109,101,58,32,37,115,10,0,101,99,99,95,100,101,99,114,121,112,116,32,32,32,32,112,0,101,99,99,95,100,101,99,114,121,112,116,32,32,32,32,97,0,101,99,99,95,100,101,99,114,121,112,116,32,32,32,32,98,0,101,99,99,95,100,101,99,114,121,112,116,32,32,103,0,101,99,99,95,100,101,99,114,121,112,116,32,32,32,32,110,0,101,99,99,95,100,101,99,114,121,112,116,32,32,32,32,104,0,101,99,99,95,100,101,99,114,121,112,116,32,32,32,32,100,0,101,99,100,104,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,10,0,101,99,99,95,100,101,99,114,121,112,116,32,32,114,101,115,0,40,118,97,108,117,101,32,37,109,41,0,101,99,99,95,100,101,99,114,121,112,116,32,32,32,32,61,62,32,37,115,10,0,101,99,99,95,115,105,103,110,32,32,32,100,97,116,97,0,43,69,100,68,83,65,0,101,99,99,95,115,105,103,110,32,32,32,105,110,102,111,58,32,37,115,47,37,115,37,115,10,0,101,99,99,95,115,105,103,110,32,32,32,110,97,109,101,58,32,37,115,10,0,101,99,99,95,115,105,103,110,32,32,32,32,32,32,112,0,101,99,99,95,115,105,103,110,32,32,32,32,32,32,97,0,101,99,99,95,115,105,103,110,32,32,32,32,32,32,98,0,101,99,99,95,115,105,103,110,32,32,32,32,103,0,101,99,99,95,115,105,103,110,32,32,32,32,32,32,110,0,101,99,99,95,115,105,103,110,32,32,32,32,32,32,104,0,101,99,99,95,115,105,103,110,32,32,32,32,32,32,113,0,101,99,99,95,115,105,103,110,32,32,32,32,32,32,100,0,40,115,105,103,45,118,97,108,40,101,100,100,115,97,40,114,37,77,41,40,115,37,77,41,41,41,0,40,115,105,103,45,118,97,108,40,103,111,115,116,40,114,37,77,41,40,115,37,77,41,41,41,0,40,115,105,103,45,118,97,108,40,101,99,100,115,97,40,114,37,77,41,40,115,37,77,41,41,41,0,101,99,99,95,115,105,103,110,32,32,32,32,32,32,61,62,32,37,115,10,0,101,99,99,95,118,101,114,105,102,121,32,100,97,116,97,0,47,114,115,0,101,99,99,95,118,101,114,105,102,121,32,32,115,95,114,0,101,99,99,95,118,101,114,105,102,121,32,32,115,95,115,0,45,112,63,97,63,98,63,103,63,110,63,104,63,47,113,0,47,113,0,101,99,99,95,118,101,114,105,102,121,32,105,110,102,111,58,32,37,115,47,37,115,37,115,10,0,101,99,99,95,118,101,114,105,102,121,32,110,97,109,101,58,32,37,115,10,0,101,99,99,95,118,101,114,105,102,121,32,32,32,32,112,0,101,99,99,95,118,101,114,105,102,121,32,32,32,32,97,0,101,99,99,95,118,101,114,105,102,121,32,32,32,32,98,0,101,99,99,95,118,101,114,105,102,121,32,32,103,0,101,99,99,95,118,101,114,105,102,121,32,32,32,32,110,0,101,99,99,95,118,101,114,105,102,121,32,32,32,32,104,0,101,99,99,95,118,101,114,105,102,121,32,32,32,32,113,0,71,111,111,100,0,101,99,99,95,118,101,114,105,102,121,32,32,32,32,61,62,32,37,115,10,0,108,111,119,45,108,101,118,101,108,0,112,117,98,107,101,121,0,112,63,97,63,98,63,103,63,110,63,104,63,47,113,0,112,63,97,63,98,63,103,63,110,63,104,63,113,0,113,0,112,97,98,103,110,104,113,40,49,58,37,99,37,117,58,0,41,0,100,105,103,101,115,116,32,115,105,122,101,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,101,120,112,101,99,116,101,100,32,115,105,122,101,0,103,99,114,121,95,109,100,95,111,112,101,110,32,102,97,105,108,101,100,0,105,110,118,97,108,105,100,32,68,65,84,65,77,79,68,69,0,100,105,103,101,115,116,32,109,105,115,109,97,116,99,104,0,104,97,115,104,45,99,111,109,109,111,110,46,99,0,95,103,99,114,121,95,109,100,95,98,108,111,99,107,95,119,114,105,116,101,0,142,153,59,159,72,104,18,115,194,150,80,186,50,252,118,206,72,51,46,167,22,77,150,164,71,111,184,197,49,161,24,106,192,223,193,124,152,220,232,123,77,167,240,17,236,72,201,114,113,210,194,15,155,146,143,226,39,13,111,184,99,213,23,56,180,142,238,227,20,167,204,138,185,50,22,69,72,229,38,174,144,34,67,104,81,122,207,234,189,107,179,115,43,192,233,218,153,131,43,97,202,1,182,222,86,36,74,158,136,213,249,179,121,115,246,34,164,61,20,166,89,155,31,101,76,180,90,116,227,85,165,238,166,167,37,28,30,114,145,109,17,194,203,33,77,60,37,37,57,18,29,142,35,78,101,45,101,31,164,200,207,248,128,243,255,199,112,63,148,0,229,42,125,251,75,61,51,5,217,80,111,108,121,49,51,48,53,32,116,101,115,116,32,49,32,102,97,105,108,101,100,46,0,80,111,108,121,49,51,48,53,32,116,101,115,116,32,50,32,102,97,105,108,101,100,46,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,111,108,121,49,51,48,53,32,116,101,115,116,32,51,32,102,97,105,108,101,100,46,0,1,2,3,4,5,6,7,255,254,253,252,251,250,249,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,100,175,226,232,214,173,123,189,210,135,249,124,68,98,61,57,80,111,108,121,49,51,48,53,32,116,101,115,116,32,52,32,102,97,105,108,101,100,46,0,80,111,108,121,49,51,48,53,32,115,101,108,102,116,101,115,116,32,102,97,105,108,101,100,32,40,37,115,41,10,0,102,97,105,108,101,100,32,116,111,32,97,99,113,117,105,114,101,32,116,104,101,32,112,111,111,108,32,108,111,99,107,58,32,37,115,10,0,110,111,32,101,110,116,114,111,112,121,32,103,97,116,104,101,114,105,110,103,32,109,111,100,117,108,101,32,100,101,116,101,99,116,101,100,10,0,87,65,82,78,73,78,71,58,32,117,115,105,110,103,32,105,110,115,101,99,117,114,101,32,114,97,110,100,111,109,32,110,117,109,98,101,114,32,103,101,110,101,114,97,116,111,114,33,33,10,0,112,111,111,108,95,105,115,95,108,111,99,107,101,100,0,114,97,110,100,111,109,45,99,115,112,114,110,103,46,99,0,97,100,100,95,114,97,110,100,111,109,110,101,115,115,0,109,105,120,95,112,111,111,108,0,102,97,105,108,101,100,32,116,111,32,114,101,108,101,97,115,101,32,116,104,101,32,112,111,111,108,32,108,111,99,107,58,32,37,115,10,0,32,40,104,119,114,110,103,32,102,97,105,108,101,100,41,0,114,97,110,100,111,109,32,117,115,97,103,101,58,32,112,111,111,108,115,105,122,101,61,37,100,32,109,105,120,101,100,61,37,108,117,32,112,111,108,108,115,61,37,108,117,47,37,108,117,32,97,100,100,101,100,61,37,108,117,47,37,108,117,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,111,117,116,109,105,120,61,37,108,117,32,103,101,116,108,118,108,49,61,37,108,117,47,37,108,117,32,103,101,116,108,118,108,50,61,37,108,117,47,37,108,117,37,115,10,0,114,101,97,100,95,112,111,111,108,0,116,111,111,32,109,97,110,121,32,114,97,110,100,111,109,32,98,105,116,115,32,114,101,113,117,101,115,116,101,100,10,0,114,101,97,100,95,115,101,101,100,95,102,105,108,101,0,99,97,110,39,116,32,111,112,101,110,32,96,37,115,39,58,32,37,115,10,0,99,97,110,39,116,32,108,111,99,107,32,96,37,115,39,58,32,37,115,10,0,119,97,105,116,105,110,103,32,102,111,114,32,108,111,99,107,32,111,110,32,96,37,115,39,46,46,46,10,0,99,97,110,39,116,32,115,116,97,116,32,96,37,115,39,58,32,37,115,10,0,96,37,115,39,32,105,115,32,110,111,116,32,97,32,114,101,103,117,108,97,114,32,102,105,108,101,32,45,32,105,103,110,111,114,101,100,10,0,110,111,116,101,58,32,114,97,110,100,111,109,95,115,101,101,100,32,102,105,108,101,32,105,115,32,101,109,112,116,121,10,0,119,97,114,110,105,110,103,58,32,105,110,118,97,108,105,100,32,115,105,122,101,32,111,102,32,114,97,110,100,111,109,95,115,101,101,100,32,102,105,108,101,32,45,32,110,111,116,32,117,115,101,100,10,0,99,97,110,39,116,32,114,101,97,100,32,96,37,115,39,58,32,37,115,10,0,83,108,111,119,32,101,110,116,114,111,112,121,32,103,97,116,104,101,114,105,110,103,32,109,111,100,117,108,101,32,110,111,116,32,121,101,116,32,105,110,105,116,105,97,108,105,122,101,100,10,0,78,111,32,119,97,121,32,116,111,32,103,97,116,104,101,114,32,101,110,116,114,111,112,121,32,102,111,114,32,116,104,101,32,82,78,71,10,0,100,111,95,102], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE+40960); +/* memory initializer */ allocate([97,115,116,95,114,97,110,100,111,109,95,112,111,108,108,0,95,103,99,114,121,95,114,110,103,99,115,112,114,110,103,95,115,101,116,95,115,101,101,100,95,102,105,108,101,0,110,111,116,101,58,32,114,97,110,100,111,109,95,115,101,101,100,32,102,105,108,101,32,110,111,116,32,117,112,100,97,116,101,100,10,0,99,97,110,39,116,32,99,114,101,97,116,101,32,96,37,115,39,58,32,37,115,10,0,99,97,110,39,116,32,119,114,105,116,101,32,96,37,115,39,58,32,37,115,10,0,99,97,110,39,116,32,99,108,111,115,101,32,96,37,115,39,58,32,37,115,10,0,102,97,105,108,101,100,32,116,111,32,97,99,113,117,105,114,101,32,116,104,101,32,82,78,71,32,108,111,99,107,58,32,37,115,10,0,33,110,111,110,99,101,95,99,111,110,116,101,120,116,45,62,116,101,115,116,95,100,116,95,112,116,114,0,114,97,110,100,111,109,45,102,105,112,115,46,99,0,95,103,99,114,121,95,114,110,103,102,105,112,115,95,105,110,105,116,105,97,108,105,122,101,0,33,115,116,100,95,114,110,103,95,99,111,110,116,101,120,116,45,62,116,101,115,116,95,100,116,95,112,116,114,0,33,115,116,114,111,110,103,95,114,110,103,95,99,111,110,116,101,120,116,45,62,116,101,115,116,95,100,116,95,112,116,114,0,109,101,109,111,114,121,32,99,111,114,114,117,112,116,105,111,110,32,100,101,116,101,99,116,101,100,32,105,110,32,82,78,71,32,99,111,110,116,101,120,116,32,37,112,10,0,102,97,105,108,101,100,32,116,111,32,114,101,108,101,97,115,101,32,116,104,101,32,82,78,71,32,108,111,99,107,58,32,37,115,10,0,114,110,103,95,99,116,120,0,102,105,112,115,95,114,110,103,95,105,115,95,108,111,99,107,101,100,0,120,57,51,49,95,103,101,110,101,114,97,116,101,95,107,101,121,0,101,114,114,111,114,32,99,114,101,97,116,105,110,103,32,99,105,112,104,101,114,32,99,111,110,116,101,120,116,32,102,111,114,32,82,78,71,58,32,37,115,10,0,33,101,110,116,114,111,112,121,95,99,111,108,108,101,99,116,95,98,117,102,102,101,114,0,103,101,116,95,101,110,116,114,111,112,121,0,101,110,116,114,111,112,121,95,99,111,108,108,101,99,116,95,99,98,0,101,110,116,114,111,112,121,95,99,111,108,108,101,99,116,95,98,117,102,102,101,114,0,101,114,114,111,114,32,103,101,116,116,105,110,103,32,101,110,116,114,111,112,121,32,100,97,116,97,10,0,101,114,114,111,114,32,99,114,101,97,116,105,110,103,32,107,101,121,32,102,111,114,32,82,78,71,58,32,37,115,10,0,120,57,51,49,95,114,101,115,101,101,100,0,120,57,51,49,95,103,101,110,101,114,97,116,101,95,115,101,101,100,0,108,101,110,103,116,104,32,61,61,32,49,54,0,102,111,114,107,32,119,105,116,104,111,117,116,32,112,114,111,112,101,114,32,114,101,45,105,110,105,116,105,97,108,105,122,97,116,105,111,110,32,100,101,116,101,99,116,101,100,32,105,110,32,82,78,71,0,120,57,51,49,95,97,101,115,95,100,114,105,118,101,114,0,114,110,103,95,99,116,120,45,62,99,105,112,104,101,114,95,104,100,0,114,110,103,95,99,116,120,45,62,105,115,95,115,101,101,100,101,100,0,116,101,109,112,118,97,108,117,101,95,102,111,114,95,120,57,51,49,95,97,101,115,95,100,114,105,118,101,114,0,120,57,51,49,95,103,101,116,95,100,116,0,103,101,116,116,105,109,101,111,102,100,97,121,40,41,32,102,97,105,108,101,100,58,32,37,115,10,0,101,110,99,114,121,112,116,95,97,101,115,0,65,69,83,32,101,110,99,114,121,112,116,105,111,110,32,105,110,32,82,78,71,32,102,97,105,108,101,100,58,32,37,115,10,0,100,117,112,108,105,99,97,116,101,32,49,50,56,32,98,105,116,32,98,108,111,99,107,32,114,101,116,117,114,110,101,100,32,98,121,32,82,78,71,0,115,101,118,101,114,101,32,101,114,114,111,114,32,103,101,116,116,105,110,103,32,114,97,110,100,111,109,10,0,115,101,108,102,116,101,115,116,95,107,97,116,0,101,114,114,111,114,32,99,114,101,97,116,105,110,103,32,99,105,112,104,101,114,32,99,111,110,116,101,120,116,32,102,111,114,32,82,78,71,0,185,202,127,214,160,245,211,66,25,109,132,145,118,28,59,190,72,178,130,152,104,194,128,0,0,0,40,24,0,0,37,0,82,23,141,41,162,213,132,18,157,137,154,69,130,2,247,119,66,156,8,61,130,244,138,64,102,181,73,39,171,66,199,195,14,183,97,60,254,176,190,115,247,110,109,111,29,163,20,250,187,75,193,14,197,251,205,70,190,40,97,231,3,43,55,125,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,247,149,189,74,82,226,158,215,19,211,19,250,32,233,141,188,200,209,229,17,89,82,247,250,55,56,180,197,206,178,176,154,13,156,197,13,22,225,188,237,207,96,98,9,157,32,131,126,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,128,0,129,1,130,2,131,3,160,32,161,33,162,34,163,35,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,150,237,204,195,221,4,127,117,99,25,55,111,21,34,87,86,122,20,118,119,149,23,126,200,146,232,221,21,203,31,188,177,37,62,46,162,65,27,221,245,33,72,65,113,179,141,47,76,101,114,114,111,114,32,115,101,116,116,105,110,103,32,107,101,121,32,102,111,114,32,82,78,71,0,88,57,46,51,49,32,82,78,71,32,99,111,114,101,32,102,117,110,99,116,105,111,110,32,102,97,105,108,101,100,0,82,78,71,32,111,117,116,112,117,116,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,107,110,111,119,110,32,118,97,108,117,101,0,102,111,114,107,32,100,101,116,101,99,116,105,111,110,32,102,97,105,108,101,100,0,114,97,110,100,111,109,0,75,65,84,0,102,97,105,108,101,100,32,116,111,32,97,99,113,117,105,114,101,32,116,104,101,32,83,121,115,116,101,109,32,82,78,71,32,108,111,99,107,58,32,37,115,10,0,102,97,105,108,101,100,32,116,111,32,114,101,108,101,97,115,101,32,116,104,101,32,83,121,115,116,101,109,32,82,78,71,32,108,111,99,107,58,32,37,115,10,0,98,117,102,102,101,114,0,114,97,110,100,111,109,45,115,121,115,116,101,109,46,99,0,103,101,116,95,114,97,110,100,111,109,0,115,121,115,116,101,109,95,114,110,103,95,105,115,95,108,111,99,107,101,100,0,114,101,97,100,95,99,98,0,114,101,97,100,95,99,98,95,98,117,102,102,101,114,0,101,114,114,111,114,32,114,101,97,100,105,110,103,32,114,97,110,100,111,109,32,102,114,111,109,32,115,121,115,116,101,109,32,82,78,71,32,40,114,99,61,37,100,41,10,0,47,100,101,118,47,114,97,110,100,111,109,0,111,112,101,110,95,100,101,118,95,114,97,110,100,111,109,0,119,97,105,116,95,100,101,118,95,114,97,110,100,111,109,0,99,97,110,39,116,32,111,112,101,110,32,37,115,58,32,37,115,10,0,101,114,114,111,114,32,115,101,116,116,105,110,103,32,70,68,95,67,76,79,69,88,69,67,32,111,110,32,102,100,32,37,100,58,32,37,115,10,0,47,100,101,118,47,117,114,97,110,100,111,109,0,110,101,101,100,95,101,110,116,114,111,112,121,0,115,101,108,101,99,116,40,41,32,101,114,114,111,114,58,32,37,115,10,0,98,111,103,117,115,32,114,101,97,100,32,102,114,111,109,32,114,97,110,100,111,109,32,100,101,118,105,99,101,32,40,110,61,37,100,41,10,0,114,101,97,100,32,101,114,114,111,114,32,111,110,32,114,97,110,100,111,109,32,100,101,118,105,99,101,58,32,37,115,10,0,99,104,111,111,115,105,110,103,32,97,32,114,97,110,100,111,109,32,107,32,111,102,32,37,117,32,98,105,116,115,32,97,116,32,115,101,99,108,101,118,101,108,32,37,100,10,0,9,107,32,116,111,111,32,108,97,114,103,101,32,45,32,97,103,97,105,110,10,0,9,107,32,105,115,32,122,101,114,111,32,45,32,97,103,97,105,110,10,0,1,0,101,99,100,115,97,32,115,105,103,110,32,104,97,115,104,32,32,0,101,99,100,115,97,32,115,105,103,110,32,114,101,115,117,108,116,32,114,32,0,101,99,100,115,97,32,115,105,103,110,32,114,101,115,117,108,116,32,115,32,0,103,111,115,116,32,115,105,103,110,32,104,97,115,104,32,32,0,101,99,99,32,115,105,103,110,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,10,0,103,111,115,116,32,115,105,103,110,32,114,101,115,117,108,116,32,114,32,0,103,111,115,116,32,115,105,103,110,32,114,101,115,117,108,116,32,115,32,0,101,99,99,32,118,101,114,105,102,121,58,32,82,101,106,101,99,116,101,100,10,0,101,99,99,32,118,101,114,105,102,121,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,10,0,32,32,32,32,32,120,0,32,32,32,32,32,114,0,32,32,32,32,32,115,0,101,99,99,32,118,101,114,105,102,121,58,32,78,111,116,32,118,101,114,105,102,105,101,100,10,0,101,99,99,32,118,101,114,105,102,121,58,32,65,99,99,101,112,116,101,100,10,0,33,34,108,111,99,107,32,65,66,73,32,118,101,114,115,105,111,110,34,0,112,111,115,105,120,45,108,111,99,107,46,99,0,103,101,116,95,108,111,99,107,95,111,98,106,101,99,116,0,115,116,114,101,97,109,45,62,102,108,97,103,115,46,119,114,105,116,105,110,103,0,101,115,116,114,101,97,109,46,99,0,101,115,95,102,108,117,115,104,0,33,115,116,114,101,97,109,45,62,102,108,97,103,115,46,119,114,105,116,105,110,103,0,101,115,95,101,109,112,116,121,0,83,117,99,99,101,115,115,0,71,101,110,101,114,97,108,32,101,114,114,111,114,0,85,110,107,110,111,119,110,32,112,97,99,107,101,116,0,85,110,107,110,111,119,110,32,118,101,114,115,105,111,110,32,105,110,32,112,97,99,107,101,116,0,73,110,118,97,108,105,100,32,112,117,98,108,105,99,32,107,101,121,32,97,108,103,111,114,105,116,104,109,0,73,110,118,97,108,105,100,32,100,105,103,101,115,116,32,97,108,103,111,114,105,116,104,109,0,66,97,100,32,112,117,98,108,105,99,32,107,101,121,0,66,97,100,32,115,101,99,114,101,116,32,107,101,121,0,66,97,100,32,115,105,103,110,97,116,117,114,101,0,78,111,32,112,117,98,108,105,99,32,107,101,121,0,67,104,101,99,107,115,117,109,32,101,114,114,111,114,0,66,97,100,32,112,97,115,115,112,104,114,97,115,101,0,73,110,118,97,108,105,100,32,99,105,112,104,101,114,32,97,108,103,111,114,105,116,104,109,0,75,101,121,114,105,110,103,32,111,112,101,110,0,73,110,118,97,108,105,100,32,112,97,99,107,101,116,0,73,110,118,97,108,105,100,32,97,114,109,111,114,0,78,111,32,117,115,101,114,32,73,68,0,78,111,32,115,101,99,114,101,116,32,107,101,121,0,87,114,111,110,103,32,115,101,99,114,101,116,32,107,101,121,32,117,115,101,100,0,66,97,100,32,115,101,115,115,105,111,110,32,107,101,121,0,85,110,107,110,111,119,110,32,99,111,109,112,114,101,115,115,105,111,110,32,97,108,103,111,114,105,116,104,109,0,78,117,109,98,101,114,32,105,115,32,110,111,116,32,112,114,105,109,101,0,73,110,118,97,108,105,100,32,101,110,99,111,100,105,110,103,32,109,101,116,104,111,100,0,73,110,118,97,108,105,100,32,101,110,99,114,121,112,116,105,111,110,32,115,99,104,101,109,101,0,73,110,118,97,108,105,100,32,115,105,103,110,97,116,117,114,101,32,115,99,104,101,109,101,0,73,110,118,97,108,105,100,32,97,116,116,114,105,98,117,116,101,0,78,111,32,118,97,108,117,101,0,78,111,116,32,102,111,117,110,100,0,86,97,108,117,101,32,110,111,116,32,102,111,117,110,100,0,83,121,110,116,97,120,32,101,114,114,111,114,0,66,97,100,32,77,80,73,32,118,97,108,117,101,0,73,110,118,97,108,105,100,32,112,97,115,115,112,104,114,97,115,101,0,73,110,118,97,108,105,100,32,115,105,103,110,97,116,117,114,101,32,99,108,97,115,115,0,82,101,115,111,117,114,99,101,115,32,101,120,104,97,117,115,116,101,100,0,73,110,118,97,108,105,100,32,107,101,121,114,105,110,103,0,84,114,117,115,116,32,68,66,32,101,114,114,111,114,0,66,97,100,32,99,101,114,116,105,102,105,99,97,116,101,0,73,110,118,97,108,105,100,32,117,115,101,114,32,73,68,0,85,110,101,120,112,101,99,116,101,100,32,101,114,114,111,114,0,84,105,109,101,32,99,111,110,102,108,105,99,116,0,75,101,121,115,101,114,118,101,114,32,101,114,114,111,114,0,87,114,111,110,103,32,112,117,98,108,105,99,32,107,101,121,32,97,108,103,111,114,105,116,104,109,0,84,114,105,98,117,116,101,32,116,111,32,68,46,32,65,46,0,87,101,97,107,32,101,110,99,114,121,112,116,105,111,110,32,107,101,121,0,73,110,118,97,108,105,100,32,107,101,121,32,108,101,110,103,116,104,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,83,121,110,116,97,120,32,101,114,114,111,114,32,105,110,32,85,82,73,0,73,110,118,97,108,105,100,32,85,82,73,0,78,101,116,119,111,114,107,32,101,114,114,111,114,0,85,110,107,110,111,119,110,32,104,111,115,116,0,83,101,108,102,116,101,115,116,32,102,97,105,108,101,100,0,68,97,116,97,32,110,111,116,32,101,110,99,114,121,112,116,101,100,0,68,97,116,97,32,110,111,116,32,112,114,111,99,101,115,115,101,100,0,85,110,117,115,97,98,108,101,32,112,117,98,108,105,99,32,107,101,121,0,85,110,117,115,97,98,108,101,32,115,101,99,114,101,116,32,107,101,121,0,73,110,118,97,108,105,100,32,118,97,108,117,101,0,66,97,100,32,99,101,114,116,105,102,105,99,97,116,101,32,99,104,97,105,110,0,77,105,115,115,105,110,103,32,99,101,114,116,105,102,105,99,97,116,101,0,78,111,32,100,97,116,97,0,66,117,103,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,73,110,118,97,108,105,100,32,111,112,101,114,97,116,105,111,110,32,99,111,100,101,0,84,105,109,101,111,117,116,0,73,110,116,101,114,110,97,108,32,101,114,114,111,114,0,69,79,70,32,40,103,99,114,121,112,116,41,0,73,110,118,97,108,105,100,32,111,98,106,101,99,116,0,80,114,111,118,105,100,101,100,32,111,98,106,101,99,116,32,105,115,32,116,111,111,32,115,104,111,114,116,0,80,114,111,118,105,100,101,100,32,111,98,106,101,99,116,32,105,115,32,116,111,111,32,108,97,114,103,101,0,77,105,115,115,105,110,103,32,105,116,101,109,32,105,110,32,111,98,106,101,99,116,0,78,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,67,111,110,102,108,105,99,116,105,110,103,32,117,115,101,0,73,110,118,97,108,105,100,32,99,105,112,104,101,114,32,109,111,100,101,0,73,110,118,97,108,105,100,32,102,108,97,103,0,73,110,118,97,108,105,100,32,104,97,110,100,108,101,0,82,101,115,117,108,116,32,116,114,117,110,99,97,116,101,100,0,73,110,99,111,109,112,108,101,116,101,32,108,105,110,101,0,73,110,118,97,108,105,100,32,114,101,115,112,111,110,115,101,0,78,111,32,97,103,101,110,116,32,114,117,110,110,105,110,103,0,65,103,101,110,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,100,97,116,97,0,85,110,115,112,101,99,105,102,105,99,32,65,115,115,117,97,110,32,115,101,114,118,101,114,32,102,97,117,108,116,0,71,101,110,101,114,97,108,32,65,115,115,117,97,110,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,115,101,115,115,105,111,110,32,107,101,121,0,73,110,118,97,108,105,100,32,83,45,101,120,112,114,101,115,115,105,111,110,0,85,110,115,117,112,112,111,114,116,101,100,32,97,108,103,111,114,105,116,104,109,0,78,111,32,112,105,110,101,110,116,114,121,0,112,105,110,101,110,116,114,121,32,101,114,114,111,114,0,66,97,100,32,80,73,78,0,73,110,118,97,108,105,100,32,110,97,109,101,0,66,97,100,32,100,97,116,97,0,73,110,118,97,108,105,100,32,112,97,114,97,109,101,116,101,114,0,87,114,111,110,103,32,99,97,114,100,0,78,111,32,100,105,114,109,110,103,114,0,100,105,114,109,110,103,114,32,101,114,114,111,114,0,67,101,114,116,105,102,105,99,97,116,101,32,114,101,118,111,107,101,100,0,78,111,32,67,82,76,32,107,110,111,119,110,0,67,82,76,32,116,111,111,32,111,108,100,0,76,105,110,101,32,116,111,111,32,108,111,110,103,0,78,111,116,32,116,114,117,115,116,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,108,101,100,0,66,97,100,32,67,65,32,99,101,114,116,105,102,105,99,97,116,101,0,67,101,114,116,105,102,105,99,97,116,101,32,101,120,112,105,114,101,100,0,67,101,114,116,105,102,105,99,97,116,101,32,116,111,111,32,121,111,117,110,103,0,85,110,115,117,112,112,111,114,116,101,100,32,99,101,114,116,105,102,105,99,97,116,101,0,85,110,107,110,111,119,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,85,110,115,117,112,112,111,114,116,101,100,32,112,114,111,116,101,99,116,105,111,110,0,67,111,114,114,117,112,116,101,100,32,112,114,111,116,101,99,116,105,111,110,0,65,109,98,105,103,117,111,117,115,32,110,97,109,101,0,67,97,114,100,32,101,114,114,111,114,0,67,97,114,100,32,114,101,115,101,116,32,114,101,113,117,105,114,101,100,0,67,97,114,100,32,114,101,109,111,118,101,100,0,73,110,118,97,108,105,100,32,99,97,114,100,0,67,97,114,100,32,110,111,116,32,112,114,101,115,101,110,116,0,78,111,32,80,75,67,83,49,53,32,97,112,112,108,105,99,97,116,105,111,110,0,78,111,116,32,99,111,110,102,105,114,109,101,100,0,67,111,110,102,105,103,117,114,97,116,105,111,110,32,101,114,114,111,114,0,78,111,32,112,111,108,105,99,121,32,109,97,116,99,104,0,73,110,118,97,108,105,100,32,105,110,100,101,120,0,73,110,118,97,108,105,100,32,73,68,0,78,111,32,83,109,97,114,116,67,97,114,100,32,100,97,101,109,111,110,0,83,109,97,114,116,67,97,114,100,32,100,97,101,109,111,110,32,101,114,114,111,114,0,85,110,115,117,112,112,111,114,116,101,100,32,112,114,111,116,111,99,111,108,0,66,97,100,32,80,73,78,32,109,101,116,104,111,100,0,67,97,114,100,32,110,111,116,32,105,110,105,116,105,97,108,105,122,101,100,0,85,110,115,117,112,112,111,114,116,101,100,32,111,112,101,114,97,116,105,111,110,0,87,114,111,110,103,32,107,101,121,32,117,115,97,103,101,0,78,111,116,104,105,110,103,32,102,111,117,110,100,0,87,114,111,110,103,32,98,108,111,98,32,116,121,112,101,0,77,105,115,115,105,110,103,32,118,97,108,117,101,0,72,97,114,100,119,97,114,101,32,112,114,111,98,108,101,109,0,80,73,78,32,98,108,111,99,107,101,100,0,67,111,110,100,105,116,105,111,110,115,32,111,102,32,117,115,101,32,110,111,116,32,115,97,116,105,115,102,105,101,100,0,80,73,78,115,32,97,114,101,32,110,111,116,32,115,121,110,99,101,100,0,73,110,118,97,108,105,100,32,67,82,76,0,66,69,82,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,66,69,82,0,69,108,101,109,101,110,116,32,110,111,116,32,102,111,117,110,100,0,73,100,101,110,116,105,102,105,101,114,32,110,111,116,32,102,111,117,110,100,0,73,110,118,97,108,105,100,32,116,97,103,0,73,110,118,97,108,105,100,32,108,101,110,103,116,104,0,73,110,118,97,108,105,100,32,107,101,121,32,105,110,102,111,0,85,110,101,120,112,101,99,116,101,100,32,116,97,103,0,78,111,116,32,68,69,82,32,101,110,99,111,100,101,100,0,78,111,32,67,77,83,32,111,98,106,101,99,116,0,73,110,118,97,108,105,100,32,67,77,83,32,111,98,106,101,99,116,0,85,110,107,110,111,119,110,32,67,77,83,32,111,98,106,101,99,116,0,85,110,115,117,112,112,111,114,116,101,100,32,67,77,83,32,111,98,106,101,99,116,0,85,110,115,117,112,112,111,114,116,101,100,32,101,110,99,111,100,105,110,103,0,85,110,115,117,112,112,111,114,116,101,100,32,67,77,83,32,118,101,114,115,105,111,110,0,85,110,107,110,111,119,110,32,97,108,103,111,114,105,116,104,109,0,73,110,118,97,108,105,100,32,99,114,121,112,116,111,32,101,110,103,105,110,101,0,80,117,98,108,105,99,32,107,101,121,32,110,111,116,32,116,114,117,115,116,101,100,0,68,101,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,0,75,101,121,32,101,120,112,105,114,101,100,0,83,105,103,110,97,116,117,114,101,32,101,120,112,105,114,101,100,0,69,110,99,111,100,105,110,103,32,112,114,111,98,108,101,109,0,73,110,118,97,108,105,100,32,115,116,97,116,101,0,68,117,112,108,105,99,97,116,101,100,32,118,97,108,117,101,0,77,105,115,115,105,110,103,32,97,99,116,105,111,110,0,65,83,78,46,49,32,109,111,100,117,108,101,32,110,111,116,32,102,111,117,110,100,0,73,110,118,97,108,105,100,32,79,73,68,32,115,116,114,105,110,103,0,73,110,118,97,108,105,100,32,116,105,109,101,0,73,110,118,97,108,105,100,32,67,82,76,32,111,98,106,101,99,116,0,85,110,115,117,112,112,111,114,116,101,100,32,67,82,76,32,118,101,114,115,105,111,110,0,73,110,118,97,108,105,100,32,99,101,114,116,105,102,105,99,97,116,101,32,111,98,106,101,99,116,0,85,110,107,110,111,119,110,32,110,97,109,101,0,65,32,108,111,99,97,108,101,32,102,117,110,99,116,105,111,110,32,102,97,105,108,101,100,0,78,111,116,32,108,111,99,107,101,100,0,80,114,111,116,111,99,111,108,32,118,105,111,108,97,116,105,111,110,0,73,110,118,97,108,105,100,32,77,65,67,0,73,110,118,97,108,105,100,32,114,101,113,117,101,115,116,0,85,110,107,110,111,119,110,32,101,120,116,101,110,115,105,111,110,0,85,110,107,110,111,119,110,32,99,114,105,116,105,99,97,108,32,101,120,116,101,110,115,105,111,110,0,76,111,99,107,101,100,0,85,110,107,110,111,119,110,32,111,112,116,105,111,110,0,85,110,107,110,111,119,110,32,99,111,109,109,97,110,100,0,78,111,116,32,111,112,101,114,97,116,105,111,110,97,108,0,78,111,32,112,97,115,115,112,104,114,97,115,101,32,103,105,118,101,110,0,78,111,32,80,73,78,32,103,105,118,101,110,0,78,111,116,32,101,110,97,98,108,101,100,0,78,111,32,99,114,121,112,116,111,32,101,110,103,105,110,101,0,77,105,115,115,105,110,103,32,107,101,121,0,84,111,111,32,109,97,110,121,32,111,98,106,101,99,116,115,0,76,105,109,105,116,32,114,101,97,99,104,101,100,0,78,111,116,32,105,110,105,116,105,97,108,105,122,101,100,0,77,105,115,115,105,110,103,32,105,115,115,117,101,114,32,99,101,114,116,105,102,105,99,97,116,101,0,78,111,32,107,101,121,115,101,114,118,101,114,32,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,101,108,108,105,112,116,105,99,32,99,117,114,118,101,0,85,110,107,110,111,119,110,32,101,108,108,105,112,116,105,99,32,99,117,114,118,101,0,68,117,112,108,105,99,97,116,101,100,32,107,101,121,0,65,109,98,105,103,117,111,117,115,32,114,101,115,117,108,116,0,78,111,32,99,114,121,112,116,111,32,99,111,110,116,101,120,116,0,87,114,111,110,103,32,99,114,121,112,116,111,32,99,111,110,116,101,120,116,0,66,97,100,32,99,114,121,112,116,111,32,99,111,110,116,101,120,116,0,67,111,110,102,108,105,99,116,32,105,110,32,116,104,101,32,99,114,121,112,116,111,32,99,111,110,116,101,120,116,0,66,114,111,107,101,110,32,112,117,98,108,105,99,32,107,101,121,0,66,114,111,107,101,110,32,115,101,99,114,101,116,32,107,101,121,0,73,110,118,97,108,105,100,32,77,65,67,32,97,108,103,111,114,105,116,104,109,0,79,112,101,114,97,116,105,111,110,32,102,117,108,108,121,32,99,97,110,99,101,108,108,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,121,101,116,32,102,105,110,105,115,104,101,100,0,66,117,102,102,101,114,32,116,111,111,32,115,104,111,114,116,0,73,110,118,97,108,105,100,32,108,101,110,103,116,104,32,115,112,101,99,105,102,105,101,114,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,83,116,114,105,110,103,32,116,111,111,32,108,111,110,103,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,85,110,109,97,116,99,104,101,100,32,112,97,114,101,110,116,104,101,115,101,115,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,83,45,101,120,112,114,101,115,115,105,111,110,32,110,111,116,32,99,97,110,111,110,105,99,97,108,0,66,97,100,32,99,104,97,114,97,99,116,101,114,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,66,97,100,32,113,117,111,116,97,116,105,111,110,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,90,101,114,111,32,112,114,101,102,105,120,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,78,101,115,116,101,100,32,100,105,115,112,108,97,121,32,104,105,110,116,115,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,85,110,109,97,116,99,104,101,100,32,100,105,115,112,108,97,121,32,104,105,110,116,115,0,85,110,101,120,112,101,99,116,101,100,32,114,101,115,101,114,118,101,100,32,112,117,110,99,116,117,97,116,105,111,110,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,66,97,100,32,104,101,120,97,100,101,99,105,109,97,108,32,99,104,97,114,97,99,116,101,114,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,79,100,100,32,104,101,120,97,100,101,99,105,109,97,108,32,110,117,109,98,101,114,115,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,66,97,100,32,111,99,116,97,108,32,99,104,97,114,97,99,116,101,114,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,76,101,103,97,99,121,32,107,101,121,0,82,101,113,117,101,115,116,32,116,111,111,32,115,104,111,114,116,0,82,101,113,117,101,115,116,32,116,111,111,32,108,111,110,103,0,79,98,106,101,99,116,32,105,115,32,105,110,32,116,101,114,109,105,110,97,116,105,111,110,32,115,116,97,116,101,0,78,111,32,99,101,114,116,105,102,105,99,97,116,101,32,99,104,97,105,110,0,67,101,114,116,105,102,105,99,97,116,101,32,105,115,32,116,111,111,32,108,97,114,103,101,0,73,110,118,97,108,105,100,32,114,101,99,111,114,100,0,84,104,101,32,77,65,67,32,100,111,101,115,32,110,111,116,32,118,101,114,105,102,121,0,85,110,101,120,112,101,99,116,101,100,32,109,101,115,115,97,103,101,0,67,111,109,112,114,101,115,115,105,111,110,32,111,114,32,100,101,99,111,109,112,114,101,115,115,105,111,110,32,102,97,105,108,101,100,0,65,32,99,111,117,110,116,101,114,32,119,111,117,108,100,32,119,114,97,112,0,70,97,116,97,108,32,97,108,101,114,116,32,109,101,115,115,97,103,101,32,114,101,99,101,105,118,101,100,0,78,111,32,99,105,112,104,101,114,32,97,108,103,111,114,105,116,104,109,0,77,105,115,115,105,110,103,32,99,108,105,101,110,116,32,99,101,114,116,105,102,105,99,97,116,101,0,67,108,111,115,101,32,110,111,116,105,102,105,99,97,116,105,111,110,32,114,101,99,101,105,118,101,100,0,84,105,99,107,101,116,32,101,120,112,105,114,101,100,0,66,97,100,32,116,105,99,107,101,116,0,85,110,107,110,111,119,110,32,105,100,101,110,116,105,116,121,0,66,97,100,32,99,101,114,116,105,102,105,99,97,116,101,32,109,101,115,115,97,103,101,32,105,110,32,104,97,110,100,115,104,97,107,101,0,66,97,100,32,99,101,114,116,105,102,105,99,97,116,101,32,114,101,113,117,101,115,116,32,109,101,115,115,97,103,101,32,105,110,32,104,97,110,100,115,104,97,107,101,0,66,97,100,32,99,101,114,116,105,102,105,99,97,116,101,32,118,101,114,105,102,121,32,109,101,115,115,97,103,101,32,105,110,32,104,97,110,100,115,104,97,107,101,0,66,97,100,32,99,104,97,110,103,101,32,99,105,112,104,101,114,32,109,101,115,115,115,97,103,101,32,105,110,32,104,97,110,100,115,104,97,107,101,0,66,97,100,32,99,108,105,101,110,116,32,104,101,108,108,111,32,109,101,115,115,97,103,101,32,105,110,32,104,97,110,100,115,104,97,107,101,0,66,97,100,32,115,101,114,118,101,114,32,104,101,108,108,111,32,109,101,115,115,97,103,101,32,105,110,32,104,97,110,100,115,104,97,107,101,0,66,97,100,32,115,101,114,118,101,114,32,104,101,108,108,111,32,100,111,110,101,32,109,101,115,115,97,103,101,32,105,110,32,104,97,110,115,104,97,107,101,0,66,97,100,32,102,105,110,105,115,104,101,100,32,109,101,115,115,97,103,101,32,105,110,32,104,97,110,100,115,104,97,107,101,0,66,97,100,32,115,101,114,118,101,114,32,107,101,121,32,101,120,99,104,97,110,103,101,32,109,101,115,115,97,103,101,32,105,110,32,104,97,110,100,115,104,97,107,101,0,66,97,100,32,99,108,105,101,110,116,32,107,101,121,32,101,120,99,104,97,110,103,101,32,109,101,115,115,97,103,101,32,105,110,32,104,97,110,100,115,104,97,107,101,0,66,111,103,117,115,32,115,116,114,105,110,103,0,70,111,114,98,105,100,100,101,110,0,75,101,121,32,100,105,115,97,98,108,101,100,0,78,111,116,32,112,111,115,115,105,98,108,101,32,119,105,116,104,32,97,32,99,97,114,100,32,98,97,115,101,100,32,107,101,121,0,73,110,118,97,108,105,100,32,108,111,99,107,32,111,98,106,101,99,116,0,71,101,110,101,114,97,108,32,73,80,67,32,101,114,114,111,114,0,73,80,67,32,97,99,99,101,112,116,32,99,97,108,108,32,102,97,105,108,101,100,0,73,80,67,32,99,111,110,110,101,99,116,32,99,97,108,108,32,102,97,105,108,101,100,0,73,110,118,97,108,105,100,32,73,80,67,32,114,101,115,112,111,110,115,101,0,73,110,118,97,108,105,100,32,118,97,108,117,101,32,112,97,115,115,101,100,32,116,111,32,73,80,67,0,73,110,99,111,109,112,108,101,116,101,32,108,105,110,101,32,112,97,115,115,101,100,32,116,111,32,73,80,67,0,76,105,110,101,32,112,97,115,115,101,100,32,116,111,32,73,80,67,32,116,111,111,32,108,111,110,103,0,78,101,115,116,101,100,32,73,80,67,32,99,111,109,109,97,110,100,115,0,78,111,32,100,97,116,97,32,99,97,108,108,98,97,99,107,32,105,110,32,73,80,67,0,78,111,32,105,110,113,117,105,114,101,32,99,97,108,108,98,97,99,107,32,105,110,32,73,80,67,0,78,111,116,32,97,110,32,73,80,67,32,115,101,114,118,101,114,0,78,111,116,32,97,110,32,73,80,67,32,99,108,105,101,110,116,0,80,114,111,98,108,101,109,32,115,116,97,114,116,105,110,103,32,73,80,67,32,115,101,114,118,101,114,0,73,80,67,32,114,101,97,100,32,101,114,114,111,114,0,73,80,67,32,119,114,105,116,101,32,101,114,114,111,114,0,84,111,111,32,109,117,99,104,32,100,97,116,97,32,102,111,114,32,73,80,67,32,108,97,121,101,114,0,85,110,101,120,112,101,99,116,101,100,32,73,80,67,32,99,111,109,109,97,110,100,0,85,110,107,110,111,119,110,32,73,80,67,32,99,111,109,109,97,110,100,0,73,80,67,32,115,121,110,116,97,120,32,101,114,114,111,114,0,73,80,67,32,99,97,108,108,32,104,97,115,32,98,101,101,110,32,99,97,110,99,101,108,108,101,100,0,78,111,32,105,110,112,117,116,32,115,111,117,114,99,101,32,102,111,114,32,73,80,67,0,78,111,32,111,117,116,112,117,116,32,115,111,117,114,99,101,32,102,111,114,32,73,80,67,0,73,80,67,32,112,97,114,97,109,101,116,101,114,32,101,114,114,111,114,0,85,110,107,110,111,119,110,32,73,80,67,32,105,110,113,117,105,114,101,0,71,101,110,101,114,97,108,32,76,68,65,80,32,101,114,114,111,114,0,71,101,110,101,114,97,108,32,76,68,65,80,32,97,116,116,114,105,98,117,116,101,32,101,114,114,111,114,0,71,101,110,101,114,97,108,32,76,68,65,80,32,110,97,109,101,32,101,114,114,111,114,0,71,101,110,101,114,97,108,32,76,68,65,80,32,115,101,99,117,114,105,116,121,32,101,114,114,111,114,0,71,101,110,101,114,97,108,32,76,68,65,80,32,115,101,114,118,105,99,101,32,101,114,114,111,114,0,71,101,110,101,114,97,108,32,76,68,65,80,32,117,112,100,97,116,101,32,101,114,114,111,114,0,69,120,112,101,114,105,109,101,110,116,97,108,32,76,68,65,80,32,101,114,114,111,114,32,99,111,100,101,0,80,114,105,118,97,116,101,32,76,68,65,80,32,101,114,114,111,114,32,99,111,100,101,0,79,116,104,101,114,32,103,101,110,101,114,97,108,32,76,68,65,80,32,101,114,114,111,114,0,76,68,65,80,32,99,111,110,110,101,99,116,105,110,103,32,102,97,105,108,101,100,32,40,88,41,0,76,68,65,80,32,114,101,102,101,114,114,97,108,32,108,105,109,105,116,32,101,120,99,101,101,100,101,100,0,76,68,65,80,32,99,108,105,101,110,116,32,108,111,111,112,0,78,111,32,76,68,65,80,32,114,101,115,117,108,116,115,32,114,101,116,117,114,110,101,100,0,76,68,65,80,32,99,111,110,116,114,111,108,32,110,111,116,32,102,111,117,110,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,76,68,65,80,0,76,68,65,80,32,99,111,110,110,101,99,116,32,101,114,114,111,114,0,79,117,116,32,111,102,32,109,101,109,111,114,121,32,105,110,32,76,68,65,80,0,66,97,100,32,112,97,114,97,109,101,116,101,114,32,116,111,32,97,110,32,76,68,65,80,32,114,111,117,116,105,110,101,0,85,115,101,114,32,99,97,110,99,101,108,108,101,100,32,76,68,65,80,32,111,112,101,114,97,116,105,111,110,0,66,97,100,32,76,68,65,80,32,115,101,97,114,99,104,32,102,105,108,116,101,114,0,85,110,107,110,111,119,110,32,76,68,65,80,32,97,117,116,104,101,110,116,105,99,97,116,105,111,110,32,109,101,116,104,111,100,0,84,105,109,101,111,117,116,32,105,110,32,76,68,65,80,0,76,68,65,80,32,100,101,99,111,100,105,110,103,32,101,114,114,111,114,0,76,68,65,80,32,101,110,99,111,100,105,110,103,32,101,114,114,111,114,0,76,68,65,80,32,108,111,99,97,108,32,101,114,114,111,114,0,67,97,110,110,111,116,32,99,111,110,116,97,99,116,32,76,68,65,80,32,115,101,114,118,101,114,0,76,68,65,80,32,115,117,99,99,101,115,115,0,76,68,65,80,32,111,112,101,114,97,116,105,111,110,115,32,101,114,114,111,114,0,76,68,65,80,32,112,114,111,116,111,99,111,108,32,101,114,114,111,114,0,84,105,109,101,32,108,105,109,105,116,32,101,120,99,101,101,100,101,100,32,105,110,32,76,68,65,80,0,83,105,122,101,32,108,105,109,105,116,32,101,120,99,101,101,100,101,100,32,105,110,32,76,68,65,80,0,76,68,65,80,32,99,111,109,112,97,114,101,32,102,97,108,115,101,0,76,68,65,80,32,99,111,109,112,97,114,101,32,116,114,117,101,0,76,68,65,80,32,97,117,116,104,101,110,116,105,99,97,116,105,111,110,32,109,101,116,104,111,100,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,116,114,111,110,103,40,101,114,41,32,76,68,65,80,32,97,117,116,104,101,110,116,105,99,97,116,105,111,110,32,114,101,113,117,105,114,101,100,0,80,97,114,116,105,97,108,32,76,68,65,80,32,114,101,115,117,108,116,115,43,114,101,102,101,114,114,97,108,32,114,101,99,101,105,118,101,100,0,76,68,65,80,32,114,101,102,101,114,114,97,108,0,65,100,109,105,110,105,115,116,114,97,116,105,118,101,32,76,68,65,80,32,108,105,109,105,116,32,101,120,99,101,101,100,101,100,0,67,114,105,116,105,99,97,108,32,76,68,65,80,32,101,120,116,101,110,115,105,111,110,32,105,115,32,117,110,97,118,97,105,108,97,98,108,101,0,67,111,110,102,105,100,101,110,116,105,97,108,105,116,121,32,114,101,113,117,105,114,101,100,32,98,121,32,76,68,65,80,0,76,68,65,80,32,83,65,83,76,32,98,105,110,100,32,105,110,32,112,114,111,103,114,101,115,115,0,78,111,32,115,117,99,104,32,76,68,65,80,32,97,116,116,114,105,98,117,116,101,0,85,110,100,101,102,105,110,101,100,32,76,68,65,80,32,97,116,116,114,105,98,117,116,101,32,116,121,112,101,0,73,110,97,112,112,114,111,112,114,105,97,116,101,32,109,97,116,99,104,105,110,103,32,105,110,32,76,68,65,80,0,67,111,110,115,116,114,97,105,110,116,32,118,105,111,108,97,116,105,111,110,32,105,110,32,76,68,65,80,0,76,68,65,80,32,116,121,112,101,32,111,114,32,118,97,108,117,101,32,101,120,105,115,116,115,0,73,110,118,97,108,105,100,32,115,121,110,116,97,120,32,105,110,32,76,68,65,80,0,78,111,32,115,117,99,104,32,76,68,65,80,32,111,98,106,101,99,116,0,76,68,65,80,32,97,108,105,97,115,32,112,114,111,98,108,101,109,0,73,110,118,97,108,105,100,32,68,78,32,115,121,110,116,97,120,32,105,110,32,76,68,65,80,0,76,68,65,80,32,101,110,116,114,121,32,105,115,32,97,32,108,101,97,102,0,76,68,65,80,32,97,108,105,97,115,32,100,101,114,101,102,101,114,101,110,99,105,110,103,32,112,114,111,98,108,101,109,0,76,68,65,80,32,112,114,111,120,121,32,97,117,116,104,111,114,105,122,97,116,105,111,110,32,102,97,105,108,117,114,101,32,40,88,41,0,73,110,97,112,112,114,111,112,114,105,97,116,101,32,76,68,65,80,32,97,117,116,104,101,110,116,105,99,97,116,105,111,110,0,73,110,118,97,108,105,100,32,76,68,65,80,32,99,114,101,100,101,110,116,105,97,108,115,0,73,110,115,117,102,102,105,99,105,101,110,116,32,97,99,99,101,115,115,32,102,111,114,32,76,68,65,80,0,76,68,65,80,32,115,101,114,118,101,114,32,105,115,32,98,117,115,121,0,76,68,65,80,32,115,101,114,118,101,114,32,105,115,32,117,110,97,118,97,105,108,97,98,108,101,0,76,68,65,80,32,115,101,114,118,101,114,32,105,115,32,117,110,119,105,108,108,105,110,103,32,116,111,32,112,101,114,102,111,114,109,0,76,111,111,112,32,100,101,116,101,99,116,101,100,32,98,121,32,76,68,65,80,0,76,68,65,80,32,110,97,109,105,110,103,32,118,105,111,108,97,116,105,111,110,0,76,68,65,80,32,111,98,106,101,99,116,32,99,108,97,115,115,32,118,105,111,108,97,116,105,111,110,0,76,68,65,80,32,111,112,101,114,97,116,105,111,110,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,110,111,110,45,108,101,97,102,0,76,68,65,80,32,111,112,101,114,97,116,105,111,110,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,82,68,78,0,65,108,114,101,97,100,121,32,101,120,105,115,116,115,32,40,76,68,65,80,41,0,67,97,110,110,111,116,32,109,111,100,105,102,121,32,76,68,65,80,32,111,98,106,101,99,116,32,99,108,97,115,115,0,76,68,65,80,32,114,101,115,117,108,116,115,32,116,111,111,32,108,97,114,103,101,0,76,68,65,80,32,111,112,101,114,97,116,105,111,110,32,97,102,102,101,99,116,115,32,109,117,108,116,105,112,108,101,32,68,83,65,115,0,86,105,114,116,117,97,108,32,76,68,65,80,32,108,105,115,116,32,118,105,101,119,32,101,114,114,111,114,0,79,116,104,101,114,32,76,68,65,80,32,101,114,114,111,114,0,82,101,115,111,117,114,99,101,115,32,101,120,104,97,117,115,116,101,100,32,105,110,32,76,67,85,80,0,83,101,99,117,114,105,116,121,32,118,105,111,108,97,116,105,111,110,32,105,110,32,76,67,85,80,0,73,110,118,97,108,105,100,32,100,97,116,97,32,105,110,32,76,67,85,80,0,85,110,115,117,112,112,111,114,116,101,100,32,115,99,104,101,109,101,32,105,110,32,76,67,85,80,0,82,101,108,111,97,100,32,114,101,113,117,105,114,101,100,32,105,110,32,76,67,85,80,0,76,68,65,80,32,99,97,110,99,101,108,108,101,100,0,78,111,32,76,68,65,80,32,111,112,101,114,97,116,105,111,110,32,116,111,32,99,97,110,99,101,108,0,84,111,111,32,108,97,116,101,32,116,111,32,99,97,110,99,101,108,32,76,68,65,80,0,67,97,110,110,111,116,32,99,97,110,99,101,108,32,76,68,65,80,0,76,68,65,80,32,97,115,115,101,114,116,105,111,110,32,102,97,105,108,101,100,0,80,114,111,120,105,101,100,32,97,117,116,104,111,114,105,122,97,116,105,111,110,32,100,101,110,105,101,100,32,98,121,32,76,68,65,80,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,49,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,50,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,51,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,52,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,53,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,54,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,55,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,56,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,57,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,49,48,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,49,49,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,49,50,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,49,51,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE+51200); +/* memory initializer */ allocate([114,111,114,32,99,111,100,101,32,49,52,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,49,53,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,49,54,0,83,121,115,116,101,109,32,101,114,114,111,114,32,119,47,111,32,101,114,114,110,111,0,85,110,107,110,111,119,110,32,115,121,115,116,101,109,32,101,114,114,111,114,0,69,110,100,32,111,102,32,102,105,108,101,0,85,110,107,110,111,119,110,32,101,114,114,111,114,32,99,111,100,101,0,97,109,111,117,110,116,46,99,0,84,65,76,69,82,95,97,109,111,117,110,116,95,99,109,112,0,65,115,115,101,114,116,105,111,110,32,102,97,105,108,101,100,32,97,116,32,37,115,58,37,100,46,10,0,84,65,76,69,82,95,97,109,111,117,110,116,95,115,117,98,116,114,97,99,116,0,84,65,76,69,82,95,97,109,111,117,110,116,95,97,100,100,0,18,17,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,17,34,35,36,17,37,38,39,40,41,42,43,44,17,45,46,47,16,16,48,16,16,16,16,16,16,16,49,50,51,16,52,53,16,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,54,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,55,17,17,17,17,56,17,57,58,59,60,61,62,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,63,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,17,64,65,17,66,67,68,69,70,71,72,73,16,16,16,74,75,76,77,78,16,16,16,79,80,16,16,16,16,81,16,16,16,16,16,16,16,16,16,17,17,17,82,83,16,16,16,16,16,16,16,16,16,16,16,17,17,17,17,84,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,17,17,85,16,16,16,16,86,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,87,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,88,89,90,91,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,92,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,254,255,255,7,254,255,255,7,0,0,0,0,0,4,32,4,255,255,127,255,255,255,127,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,195,255,3,0,31,80,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,223,60,64,215,255,255,251,255,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,3,252,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,254,255,255,255,127,2,254,255,255,255,255,0,0,0,0,0,255,191,182,0,255,255,255,7,7,0,0,0,255,7,255,255,255,255,255,255,255,254,255,195,255,255,255,255,255,255,255,255,255,255,255,255,239,31,254,225,255,159,0,0,255,255,255,255,255,255,0,224,255,255,255,255,255,255,255,255,255,255,255,255,3,0,255,255,255,255,255,7,48,4,255,255,255,252,255,31,0,0,255,255,255,1,0,0,0,0,0,0,0,0,253,31,0,0,0,0,0,0,240,3,255,127,255,255,255,255,255,255,255,239,255,223,225,255,207,255,254,254,238,159,249,255,255,253,197,227,159,89,128,176,207,255,3,0,238,135,249,255,255,253,109,195,135,25,2,94,192,255,63,0,238,191,251,255,255,253,237,227,191,27,1,0,207,255,0,0,238,159,249,255,255,253,237,227,159,25,192,176,207,255,2,0,236,199,61,214,24,199,255,195,199,29,129,0,192,255,0,0,238,223,253,255,255,253,239,227,223,29,96,3,207,255,0,0,236,223,253,255,255,253,239,227,223,29,96,64,207,255,6,0,236,223,253,255,255,255,255,231,223,93,128,0,207,255,0,252,236,255,127,252,255,255,251,47,127,128,95,255,0,0,12,0,254,255,255,255,255,127,255,7,63,32,255,3,0,0,0,0,150,37,240,254,174,236,255,59,95,32,255,243,0,0,0,0,1,0,0,0,255,3,0,0,255,254,255,255,255,31,254,255,3,255,255,254,255,255,255,31,0,0,0,0,0,0,0,0,255,255,255,255,255,255,127,249,255,3,255,255,231,193,255,255,127,64,255,51,255,255,255,255,191,32,255,255,255,255,255,247,255,255,255,255,255,255,255,255,255,61,127,61,255,255,255,255,255,61,255,255,255,255,61,127,61,255,127,255,255,255,255,255,255,255,61,255,255,255,255,255,255,255,255,135,0,0,0,0,255,255,0,0,255,255,255,255,255,255,255,255,255,255,31,0,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,159,255,255,254,255,255,7,255,255,255,255,255,255,255,255,255,199,1,0,255,223,15,0,255,255,15,0,255,255,15,0,255,223,13,0,255,255,255,255,255,255,207,255,255,1,128,16,255,3,0,0,0,0,255,3,255,255,255,255,255,255,255,255,255,255,255,0,255,255,255,255,255,7,255,255,255,255,255,255,255,255,63,0,255,255,255,31,255,15,255,1,192,255,255,255,255,63,31,0,255,255,255,255,255,15,255,255,255,3,255,3,0,0,0,0,255,255,255,15,255,255,255,255,255,255,255,127,254,255,31,0,255,3,255,3,128,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,239,255,239,15,255,3,0,0,0,0,255,255,255,255,255,243,255,255,255,255,255,255,191,255,3,0,255,255,255,255,255,255,63,0,255,227,255,255,255,255,255,63,0,0,0,0,0,0,0,0,0,0,0,0,0,222,111,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,255,255,63,63,255,255,255,255,63,63,255,170,255,255,255,63,255,255,255,255,255,255,223,95,220,31,207,15,255,31,220,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,128,0,0,255,31,0,0,0,0,0,0,0,0,0,0,0,0,132,252,47,62,80,189,255,243,224,67,0,0,255,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,255,255,255,3,0,0,255,255,255,255,255,127,255,255,255,255,255,127,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,120,12,0,255,255,255,255,191,32,255,255,255,255,255,255,255,128,0,0,255,255,127,0,127,127,127,127,127,127,127,127,255,255,255,255,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,0,0,0,254,3,62,31,254,255,255,255,255,255,255,255,255,255,127,224,254,255,255,255,255,255,255,255,255,255,255,247,224,255,255,255,255,63,254,255,255,255,255,255,255,255,255,255,255,127,0,0,255,255,255,7,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,0,0,0,0,0,0,0,0,255,255,255,255,255,63,255,31,255,255,255,15,0,0,255,255,255,255,255,127,240,143,255,255,255,128,255,255,255,255,255,255,255,255,255,255,0,0,0,0,128,255,252,255,255,255,255,255,255,255,255,255,255,255,255,121,15,0,255,7,0,0,0,0,0,0,0,0,0,255,187,247,255,255,255,0,0,0,255,255,255,255,255,255,15,0,255,255,255,255,255,255,255,255,15,0,255,3,0,0,252,8,255,255,255,255,255,7,255,255,255,255,7,0,255,255,255,31,255,255,255,255,255,255,247,255,0,128,255,3,0,0,0,0,255,255,255,255,255,255,127,0,255,63,255,3,255,255,127,4,255,255,255,255,255,255,255,127,5,0,0,56,255,255,60,0,126,126,126,0,127,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,7,255,3,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,15,0,255,255,127,248,255,255,255,255,255,15,255,255,255,255,255,255,255,255,255,255,255,255,255,63,255,255,255,255,255,255,255,255,255,255,255,255,255,3,0,0,0,0,127,0,248,224,255,253,127,95,219,255,255,255,255,255,255,255,255,255,255,255,255,255,3,0,0,0,248,255,255,255,255,255,255,255,255,255,255,255,255,63,0,0,255,255,255,255,255,255,255,255,252,255,255,255,255,255,255,0,0,0,0,0,255,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,223,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,0,0,255,3,254,255,255,7,254,255,255,7,192,255,255,255,255,255,255,255,255,255,255,127,252,252,252,28,0,0,0,0,255,239,255,255,127,255,255,183,255,63,255,63,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,7,0,0,0,0,0,0,0,0,255,255,255,255,255,255,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,31,255,255,255,255,255,255,1,0,0,0,0,0,255,255,255,127,0,0,255,255,255,7,0,0,0,0,0,0,255,255,255,63,255,255,255,255,15,255,62,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,255,3,0,0,0,0,0,0,0,0,0,0,63,253,255,255,255,255,191,145,255,255,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,63,0,255,255,255,3,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,111,240,239,254,255,255,15,0,0,0,0,0,255,255,255,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,63,0,255,255,63,0,255,255,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,63,0,0,0,192,255,0,0,252,255,255,255,255,255,255,1,0,0,255,255,255,1,255,3,255,255,255,255,255,255,199,255,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,30,0,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,63,0,255,3,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,31,0,255,255,255,255,255,127,0,0,248,255,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,223,255,255,255,255,255,255,255,255,223,100,222,255,235,239,255,255,255,255,255,255,255,191,231,223,223,255,255,255,123,95,252,253,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,255,255,255,253,255,255,247,255,255,255,247,255,255,223,255,255,255,223,255,255,127,255,255,255,127,255,255,255,253,255,255,255,253,255,255,247,207,255,255,255,255,255,255,239,255,255,255,150,254,247,10,132,234,150,170,150,247,247,94,255,251,255,15,238,251,255,15,0,0,0,0,0,0,0,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0,18,16,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,16,16,34,35,16,36,37,38,39,40,41,42,43,16,44,45,46,17,47,48,17,17,49,17,17,17,50,51,52,53,54,55,56,57,17,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,58,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,59,16,60,61,62,63,64,65,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,66,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,67,16,16,68,16,69,70,71,16,72,16,73,16,16,16,16,74,75,76,77,16,16,78,16,79,80,16,16,16,16,81,16,16,16,16,16,16,16,16,16,16,16,16,16,82,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,83,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,84,85,86,87,16,16,88,89,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,90,16,91,92,93,94,95,96,97,98,16,16,16,16,16,16,16,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,254,255,0,252,1,0,0,248,1,0,0,120,0,0,0,0,255,251,223,251,0,0,128,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,60,0,252,255,224,175,255,255,255,255,255,255,255,255,255,255,223,255,255,255,255,255,32,64,176,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,0,0,0,0,0,134,254,255,255,255,0,64,73,0,0,0,0,0,24,0,223,255,0,200,0,0,0,0,0,0,0,1,0,60,0,0,0,0,0,0,0,0,0,0,0,0,16,224,1,30,0,96,255,191,0,0,0,0,0,0,255,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,207,3,0,0,0,3,0,32,255,127,0,0,0,78,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,0,0,0,0,0,0,0,0,0,16,0,32,30,0,48,0,1,0,0,0,0,0,0,0,0,16,0,32,0,0,0,0,252,15,0,0,0,0,0,0,0,16,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,32,0,0,0,0,3,0,0,0,0,0,0,0,0,16,0,32,0,0,0,0,253,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,255,7,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,255,0,0,0,0,0,0,0,16,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,63,2,0,0,0,0,0,0,0,0,0,4,0,0,0,0,16,0,0,0,0,0,0,128,0,128,192,223,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,0,0,0,254,255,255,255,0,252,255,255,0,0,0,0,0,0,0,0,252,0,0,0,0,0,0,192,255,223,255,7,0,0,0,0,0,0,0,0,0,0,128,6,0,252,0,0,24,62,0,0,128,191,0,204,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,96,255,255,255,31,0,0,255,3,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,0,0,1,0,0,24,0,0,0,0,0,0,0,0,0,56,0,0,0,0,16,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,0,0,254,127,47,0,0,255,3,255,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,196,255,255,255,255,0,0,0,192,0,0,0,0,0,0,0,0,1,0,224,159,0,0,0,0,127,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,16,0,0,252,255,255,255,31,0,0,0,0,0,12,0,0,0,0,0,0,64,0,12,240,0,0,0,0,0,0,192,248,0,0,0,0,0,0,0,192,0,0,0,0,0,0,0,0,255,0,255,255,255,33,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,127,0,0,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,3,224,0,224,0,224,0,96,128,248,255,255,255,252,255,255,255,255,255,127,31,252,241,127,255,127,0,0,255,255,255,3,0,0,255,255,255,255,1,0,123,3,208,193,175,66,0,12,31,188,255,255,0,0,0,0,0,2,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,15,0,255,255,255,255,127,0,0,0,255,7,0,0,255,255,255,255,255,255,255,255,255,255,63,0,0,0,0,0,0,252,255,255,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,135,3,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,127,255,15,0,0,0,0,0,0,0,0,255,255,255,251,255,255,255,255,255,255,255,255,255,255,15,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,0,0,0,255,15,30,255,255,255,1,252,193,224,0,0,0,0,0,0,0,0,0,0,0,30,1,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,0,0,0,0,255,255,255,255,15,0,0,0,255,255,255,127,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,127,0,0,0,0,0,0,192,0,224,0,0,0,0,0,0,0,0,0,0,0,128,15,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,0,255,255,127,0,3,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,8,0,0,0,15,255,3,0,0,0,0,0,0,240,0,0,0,0,0,0,0,0,0,16,192,0,0,255,255,3,7,0,0,0,0,0,248,0,0,0,0,8,128,0,0,0,0,0,0,0,0,0,0,8,0,255,63,0,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,0,0,128,11,0,0,0,0,0,0,0,128,2,0,0,192,0,0,67,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,255,255,255,3,127,0,255,255,255,255,247,255,127,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,254,255,0,252,1,0,0,248,1,0,0,248,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,127,0,48,135,255,255,255,255,255,143,255,0,0,0,0,0,0,224,255,255,7,255,15,0,0,0,0,0,0,255,255,255,255,255,63,0,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,143,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,135,255,0,255,1,0,0,0,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,254,0,0,0,255,0,0,0,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,63,252,255,63,0,0,0,3,0,0,0,0,0,0,254,3,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,225,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,7,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,0,255,255,255,255,127,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,0,0,0,0,255,255,255,255,255,255,255,255,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,127,0,255,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,8,0,0,0,8,0,0,32,0,0,0,32,0,0,128,0,0,0,128,0,0,0,2,0,0,0,2,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,255,255,255,255,255,15,255,255,255,255,255,255,255,255,255,255,255,255,15,0,255,127,254,127,254,255,254,255,0,0,0,0,255,7,255,255,255,127,255,255,255,255,255,255,255,15,255,255,255,255,255,7,0,0,0,0,0,0,0,0,192,255,255,255,7,0,255,255,255,255,255,7,255,1,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,1,0,191,255,255,255,255,255,255,255,255,31,255,255,15,0,255,255,255,255,223,7,0,0,255,255,1,0,255,255,255,255,255,255,255,127,253,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,30,255,255,255,255,255,255,255,63,15,0,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,255,255,255,255,255,255,255,255,225,255,0,0,0,0,0,0,255,255,255,255,255,255,255,255,63,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,4,7,3,6,5,0,114,119,97,0,47,112,114,111,99,47,115,101,108,102,47,102,100,47,0], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE+61440); + + + + + +/* no memory initializer */ +var tempDoublePtr = Runtime.alignMemory(allocate(12, "i8", ALLOC_STATIC), 8); + +assert(tempDoublePtr % 8 == 0); + +function copyTempFloat(ptr) { // functions, because inlining this code increases code size too much + + HEAP8[tempDoublePtr] = HEAP8[ptr]; + + HEAP8[tempDoublePtr+1] = HEAP8[ptr+1]; + + HEAP8[tempDoublePtr+2] = HEAP8[ptr+2]; + + HEAP8[tempDoublePtr+3] = HEAP8[ptr+3]; + +} + +function copyTempDouble(ptr) { + + HEAP8[tempDoublePtr] = HEAP8[ptr]; + + HEAP8[tempDoublePtr+1] = HEAP8[ptr+1]; + + HEAP8[tempDoublePtr+2] = HEAP8[ptr+2]; + + HEAP8[tempDoublePtr+3] = HEAP8[ptr+3]; + + HEAP8[tempDoublePtr+4] = HEAP8[ptr+4]; + + HEAP8[tempDoublePtr+5] = HEAP8[ptr+5]; + + HEAP8[tempDoublePtr+6] = HEAP8[ptr+6]; + + HEAP8[tempDoublePtr+7] = HEAP8[ptr+7]; + +} + +// {{PRE_LIBRARY}} + + + + Module["_i64Subtract"] = _i64Subtract; + + + Module["_i64Add"] = _i64Add; + + function _pthread_mutex_lock() {} + + + + + var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86}; + + var ERRNO_MESSAGES={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"}; + + function ___setErrNo(value) { + if (Module['___errno_location']) HEAP32[((Module['___errno_location']())>>2)]=value; + else Module.printErr('failed to set errno from JS'); + return value; + } + + var PATH={splitPath:function (filename) { + var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; + return splitPathRe.exec(filename).slice(1); + },normalizeArray:function (parts, allowAboveRoot) { + // if the path tries to go above the root, `up` ends up > 0 + var up = 0; + for (var i = parts.length - 1; i >= 0; i--) { + var last = parts[i]; + if (last === '.') { + parts.splice(i, 1); + } else if (last === '..') { + parts.splice(i, 1); + up++; + } else if (up) { + parts.splice(i, 1); + up--; + } + } + // if the path is allowed to go above the root, restore leading ..s + if (allowAboveRoot) { + for (; up--; up) { + parts.unshift('..'); + } + } + return parts; + },normalize:function (path) { + var isAbsolute = path.charAt(0) === '/', + trailingSlash = path.substr(-1) === '/'; + // Normalize the path + path = PATH.normalizeArray(path.split('/').filter(function(p) { + return !!p; + }), !isAbsolute).join('/'); + if (!path && !isAbsolute) { + path = '.'; + } + if (path && trailingSlash) { + path += '/'; + } + return (isAbsolute ? '/' : '') + path; + },dirname:function (path) { + var result = PATH.splitPath(path), + root = result[0], + dir = result[1]; + if (!root && !dir) { + // No dirname whatsoever + return '.'; + } + if (dir) { + // It has a dirname, strip trailing slash + dir = dir.substr(0, dir.length - 1); + } + return root + dir; + },basename:function (path) { + // EMSCRIPTEN return '/'' for '/', not an empty string + if (path === '/') return '/'; + var lastSlash = path.lastIndexOf('/'); + if (lastSlash === -1) return path; + return path.substr(lastSlash+1); + },extname:function (path) { + return PATH.splitPath(path)[3]; + },join:function () { + var paths = Array.prototype.slice.call(arguments, 0); + return PATH.normalize(paths.join('/')); + },join2:function (l, r) { + return PATH.normalize(l + '/' + r); + },resolve:function () { + var resolvedPath = '', + resolvedAbsolute = false; + for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { + var path = (i >= 0) ? arguments[i] : FS.cwd(); + // Skip empty and invalid entries + if (typeof path !== 'string') { + throw new TypeError('Arguments to path.resolve must be strings'); + } else if (!path) { + return ''; // an invalid portion invalidates the whole thing + } + resolvedPath = path + '/' + resolvedPath; + resolvedAbsolute = path.charAt(0) === '/'; + } + // At this point the path should be resolved to a full absolute path, but + // handle relative paths to be safe (might happen when process.cwd() fails) + resolvedPath = PATH.normalizeArray(resolvedPath.split('/').filter(function(p) { + return !!p; + }), !resolvedAbsolute).join('/'); + return ((resolvedAbsolute ? '/' : '') + resolvedPath) || '.'; + },relative:function (from, to) { + from = PATH.resolve(from).substr(1); + to = PATH.resolve(to).substr(1); + function trim(arr) { + var start = 0; + for (; start < arr.length; start++) { + if (arr[start] !== '') break; + } + var end = arr.length - 1; + for (; end >= 0; end--) { + if (arr[end] !== '') break; + } + if (start > end) return []; + return arr.slice(start, end - start + 1); + } + var fromParts = trim(from.split('/')); + var toParts = trim(to.split('/')); + var length = Math.min(fromParts.length, toParts.length); + var samePartsLength = length; + for (var i = 0; i < length; i++) { + if (fromParts[i] !== toParts[i]) { + samePartsLength = i; + break; + } + } + var outputParts = []; + for (var i = samePartsLength; i < fromParts.length; i++) { + outputParts.push('..'); + } + outputParts = outputParts.concat(toParts.slice(samePartsLength)); + return outputParts.join('/'); + }}; + + var TTY={ttys:[],init:function () { + // https://github.com/kripken/emscripten/pull/1555 + // if (ENVIRONMENT_IS_NODE) { + // // currently, FS.init does not distinguish if process.stdin is a file or TTY + // // device, it always assumes it's a TTY device. because of this, we're forcing + // // process.stdin to UTF8 encoding to at least make stdin reading compatible + // // with text files until FS.init can be refactored. + // process['stdin']['setEncoding']('utf8'); + // } + },shutdown:function () { + // https://github.com/kripken/emscripten/pull/1555 + // if (ENVIRONMENT_IS_NODE) { + // // inolen: any idea as to why node -e 'process.stdin.read()' wouldn't exit immediately (with process.stdin being a tty)? + // // isaacs: because now it's reading from the stream, you've expressed interest in it, so that read() kicks off a _read() which creates a ReadReq operation + // // inolen: I thought read() in that case was a synchronous operation that just grabbed some amount of buffered data if it exists? + // // isaacs: it is. but it also triggers a _read() call, which calls readStart() on the handle + // // isaacs: do process.stdin.pause() and i'd think it'd probably close the pending call + // process['stdin']['pause'](); + // } + },register:function (dev, ops) { + TTY.ttys[dev] = { input: [], output: [], ops: ops }; + FS.registerDevice(dev, TTY.stream_ops); + },stream_ops:{open:function (stream) { + var tty = TTY.ttys[stream.node.rdev]; + if (!tty) { + throw new FS.ErrnoError(ERRNO_CODES.ENODEV); + } + stream.tty = tty; + stream.seekable = false; + },close:function (stream) { + // flush any pending line data + stream.tty.ops.flush(stream.tty); + },flush:function (stream) { + stream.tty.ops.flush(stream.tty); + },read:function (stream, buffer, offset, length, pos /* ignored */) { + if (!stream.tty || !stream.tty.ops.get_char) { + throw new FS.ErrnoError(ERRNO_CODES.ENXIO); + } + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = stream.tty.ops.get_char(stream.tty); + } catch (e) { + throw new FS.ErrnoError(ERRNO_CODES.EIO); + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(ERRNO_CODES.EAGAIN); + } + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset+i] = result; + } + if (bytesRead) { + stream.node.timestamp = Date.now(); + } + return bytesRead; + },write:function (stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.put_char) { + throw new FS.ErrnoError(ERRNO_CODES.ENXIO); + } + for (var i = 0; i < length; i++) { + try { + stream.tty.ops.put_char(stream.tty, buffer[offset+i]); + } catch (e) { + throw new FS.ErrnoError(ERRNO_CODES.EIO); + } + } + if (length) { + stream.node.timestamp = Date.now(); + } + return i; + }},default_tty_ops:{get_char:function (tty) { + if (!tty.input.length) { + var result = null; + if (ENVIRONMENT_IS_NODE) { + // we will read data by chunks of BUFSIZE + var BUFSIZE = 256; + var buf = new Buffer(BUFSIZE); + var bytesRead = 0; + + var fd = process.stdin.fd; + // Linux and Mac cannot use process.stdin.fd (which isn't set up as sync) + var usingDevice = false; + try { + fd = fs.openSync('/dev/stdin', 'r'); + usingDevice = true; + } catch (e) {} + + bytesRead = fs.readSync(fd, buf, 0, BUFSIZE, null); + + if (usingDevice) { fs.closeSync(fd); } + if (bytesRead > 0) { + result = buf.slice(0, bytesRead).toString('utf-8'); + } else { + result = null; + } + + } else if (typeof window != 'undefined' && + typeof window.prompt == 'function') { + // Browser. + result = window.prompt('Input: '); // returns null on cancel + if (result !== null) { + result += '\n'; + } + } else if (typeof readline == 'function') { + // Command line. + result = readline(); + if (result !== null) { + result += '\n'; + } + } + if (!result) { + return null; + } + tty.input = intArrayFromString(result, true); + } + return tty.input.shift(); + },put_char:function (tty, val) { + if (val === null || val === 10) { + Module['print'](UTF8ArrayToString(tty.output, 0)); + tty.output = []; + } else { + if (val != 0) tty.output.push(val); // val == 0 would cut text output off in the middle. + } + },flush:function (tty) { + if (tty.output && tty.output.length > 0) { + Module['print'](UTF8ArrayToString(tty.output, 0)); + tty.output = []; + } + }},default_tty1_ops:{put_char:function (tty, val) { + if (val === null || val === 10) { + Module['printErr'](UTF8ArrayToString(tty.output, 0)); + tty.output = []; + } else { + if (val != 0) tty.output.push(val); + } + },flush:function (tty) { + if (tty.output && tty.output.length > 0) { + Module['printErr'](UTF8ArrayToString(tty.output, 0)); + tty.output = []; + } + }}}; + + var MEMFS={ops_table:null,mount:function (mount) { + return MEMFS.createNode(null, '/', 16384 | 511 /* 0777 */, 0); + },createNode:function (parent, name, mode, dev) { + if (FS.isBlkdev(mode) || FS.isFIFO(mode)) { + // no supported + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + } + if (!MEMFS.ops_table) { + MEMFS.ops_table = { + dir: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + lookup: MEMFS.node_ops.lookup, + mknod: MEMFS.node_ops.mknod, + rename: MEMFS.node_ops.rename, + unlink: MEMFS.node_ops.unlink, + rmdir: MEMFS.node_ops.rmdir, + readdir: MEMFS.node_ops.readdir, + symlink: MEMFS.node_ops.symlink + }, + stream: { + llseek: MEMFS.stream_ops.llseek + } + }, + file: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: { + llseek: MEMFS.stream_ops.llseek, + read: MEMFS.stream_ops.read, + write: MEMFS.stream_ops.write, + allocate: MEMFS.stream_ops.allocate, + mmap: MEMFS.stream_ops.mmap, + msync: MEMFS.stream_ops.msync + } + }, + link: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + readlink: MEMFS.node_ops.readlink + }, + stream: {} + }, + chrdev: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: FS.chrdev_stream_ops + } + }; + } + var node = FS.createNode(parent, name, mode, dev); + if (FS.isDir(node.mode)) { + node.node_ops = MEMFS.ops_table.dir.node; + node.stream_ops = MEMFS.ops_table.dir.stream; + node.contents = {}; + } else if (FS.isFile(node.mode)) { + node.node_ops = MEMFS.ops_table.file.node; + node.stream_ops = MEMFS.ops_table.file.stream; + node.usedBytes = 0; // The actual number of bytes used in the typed array, as opposed to contents.buffer.byteLength which gives the whole capacity. + // When the byte data of the file is populated, this will point to either a typed array, or a normal JS array. Typed arrays are preferred + // for performance, and used by default. However, typed arrays are not resizable like normal JS arrays are, so there is a small disk size + // penalty involved for appending file writes that continuously grow a file similar to std::vector capacity vs used -scheme. + node.contents = null; + } else if (FS.isLink(node.mode)) { + node.node_ops = MEMFS.ops_table.link.node; + node.stream_ops = MEMFS.ops_table.link.stream; + } else if (FS.isChrdev(node.mode)) { + node.node_ops = MEMFS.ops_table.chrdev.node; + node.stream_ops = MEMFS.ops_table.chrdev.stream; + } + node.timestamp = Date.now(); + // add the new node to the parent + if (parent) { + parent.contents[name] = node; + } + return node; + },getFileDataAsRegularArray:function (node) { + if (node.contents && node.contents.subarray) { + var arr = []; + for (var i = 0; i < node.usedBytes; ++i) arr.push(node.contents[i]); + return arr; // Returns a copy of the original data. + } + return node.contents; // No-op, the file contents are already in a JS array. Return as-is. + },getFileDataAsTypedArray:function (node) { + if (!node.contents) return new Uint8Array; + if (node.contents.subarray) return node.contents.subarray(0, node.usedBytes); // Make sure to not return excess unused bytes. + return new Uint8Array(node.contents); + },expandFileStorage:function (node, newCapacity) { + // If we are asked to expand the size of a file that already exists, revert to using a standard JS array to store the file + // instead of a typed array. This makes resizing the array more flexible because we can just .push() elements at the back to + // increase the size. + if (node.contents && node.contents.subarray && newCapacity > node.contents.length) { + node.contents = MEMFS.getFileDataAsRegularArray(node); + node.usedBytes = node.contents.length; // We might be writing to a lazy-loaded file which had overridden this property, so force-reset it. + } + + if (!node.contents || node.contents.subarray) { // Keep using a typed array if creating a new storage, or if old one was a typed array as well. + var prevCapacity = node.contents ? node.contents.buffer.byteLength : 0; + if (prevCapacity >= newCapacity) return; // No need to expand, the storage was already large enough. + // Don't expand strictly to the given requested limit if it's only a very small increase, but instead geometrically grow capacity. + // For small filesizes (<1MB), perform size*2 geometric increase, but for large sizes, do a much more conservative size*1.125 increase to + // avoid overshooting the allocation cap by a very large margin. + var CAPACITY_DOUBLING_MAX = 1024 * 1024; + newCapacity = Math.max(newCapacity, (prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2.0 : 1.125)) | 0); + if (prevCapacity != 0) newCapacity = Math.max(newCapacity, 256); // At minimum allocate 256b for each file when expanding. + var oldContents = node.contents; + node.contents = new Uint8Array(newCapacity); // Allocate new storage. + if (node.usedBytes > 0) node.contents.set(oldContents.subarray(0, node.usedBytes), 0); // Copy old data over to the new storage. + return; + } + // Not using a typed array to back the file storage. Use a standard JS array instead. + if (!node.contents && newCapacity > 0) node.contents = []; + while (node.contents.length < newCapacity) node.contents.push(0); + },resizeFileStorage:function (node, newSize) { + if (node.usedBytes == newSize) return; + if (newSize == 0) { + node.contents = null; // Fully decommit when requesting a resize to zero. + node.usedBytes = 0; + return; + } + if (!node.contents || node.contents.subarray) { // Resize a typed array if that is being used as the backing store. + var oldContents = node.contents; + node.contents = new Uint8Array(new ArrayBuffer(newSize)); // Allocate new storage. + if (oldContents) { + node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes))); // Copy old data over to the new storage. + } + node.usedBytes = newSize; + return; + } + // Backing with a JS array. + if (!node.contents) node.contents = []; + if (node.contents.length > newSize) node.contents.length = newSize; + else while (node.contents.length < newSize) node.contents.push(0); + node.usedBytes = newSize; + },node_ops:{getattr:function (node) { + var attr = {}; + // device numbers reuse inode numbers. + attr.dev = FS.isChrdev(node.mode) ? node.id : 1; + attr.ino = node.id; + attr.mode = node.mode; + attr.nlink = 1; + attr.uid = 0; + attr.gid = 0; + attr.rdev = node.rdev; + if (FS.isDir(node.mode)) { + attr.size = 4096; + } else if (FS.isFile(node.mode)) { + attr.size = node.usedBytes; + } else if (FS.isLink(node.mode)) { + attr.size = node.link.length; + } else { + attr.size = 0; + } + attr.atime = new Date(node.timestamp); + attr.mtime = new Date(node.timestamp); + attr.ctime = new Date(node.timestamp); + // NOTE: In our implementation, st_blocks = Math.ceil(st_size/st_blksize), + // but this is not required by the standard. + attr.blksize = 4096; + attr.blocks = Math.ceil(attr.size / attr.blksize); + return attr; + },setattr:function (node, attr) { + if (attr.mode !== undefined) { + node.mode = attr.mode; + } + if (attr.timestamp !== undefined) { + node.timestamp = attr.timestamp; + } + if (attr.size !== undefined) { + MEMFS.resizeFileStorage(node, attr.size); + } + },lookup:function (parent, name) { + throw FS.genericErrors[ERRNO_CODES.ENOENT]; + },mknod:function (parent, name, mode, dev) { + return MEMFS.createNode(parent, name, mode, dev); + },rename:function (old_node, new_dir, new_name) { + // if we're overwriting a directory at new_name, make sure it's empty. + if (FS.isDir(old_node.mode)) { + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name); + } catch (e) { + } + if (new_node) { + for (var i in new_node.contents) { + throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY); + } + } + } + // do the internal rewiring + delete old_node.parent.contents[old_node.name]; + old_node.name = new_name; + new_dir.contents[new_name] = old_node; + old_node.parent = new_dir; + },unlink:function (parent, name) { + delete parent.contents[name]; + },rmdir:function (parent, name) { + var node = FS.lookupNode(parent, name); + for (var i in node.contents) { + throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY); + } + delete parent.contents[name]; + },readdir:function (node) { + var entries = ['.', '..'] + for (var key in node.contents) { + if (!node.contents.hasOwnProperty(key)) { + continue; + } + entries.push(key); + } + return entries; + },symlink:function (parent, newname, oldpath) { + var node = MEMFS.createNode(parent, newname, 511 /* 0777 */ | 40960, 0); + node.link = oldpath; + return node; + },readlink:function (node) { + if (!FS.isLink(node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + return node.link; + }},stream_ops:{read:function (stream, buffer, offset, length, position) { + var contents = stream.node.contents; + if (position >= stream.node.usedBytes) return 0; + var size = Math.min(stream.node.usedBytes - position, length); + assert(size >= 0); + if (size > 8 && contents.subarray) { // non-trivial, and typed array + buffer.set(contents.subarray(position, position + size), offset); + } else { + for (var i = 0; i < size; i++) buffer[offset + i] = contents[position + i]; + } + return size; + },write:function (stream, buffer, offset, length, position, canOwn) { + if (!length) return 0; + var node = stream.node; + node.timestamp = Date.now(); + + if (buffer.subarray && (!node.contents || node.contents.subarray)) { // This write is from a typed array to a typed array? + if (canOwn) { // Can we just reuse the buffer we are given? + assert(position === 0, 'canOwn must imply no weird position inside the file'); + node.contents = buffer.subarray(offset, offset + length); + node.usedBytes = length; + return length; + } else if (node.usedBytes === 0 && position === 0) { // If this is a simple first write to an empty file, do a fast set since we don't need to care about old data. + node.contents = new Uint8Array(buffer.subarray(offset, offset + length)); + node.usedBytes = length; + return length; + } else if (position + length <= node.usedBytes) { // Writing to an already allocated and used subrange of the file? + node.contents.set(buffer.subarray(offset, offset + length), position); + return length; + } + } + + // Appending to an existing file and we need to reallocate, or source data did not come as a typed array. + MEMFS.expandFileStorage(node, position+length); + if (node.contents.subarray && buffer.subarray) node.contents.set(buffer.subarray(offset, offset + length), position); // Use typed array write if available. + else { + for (var i = 0; i < length; i++) { + node.contents[position + i] = buffer[offset + i]; // Or fall back to manual write if not. + } + } + node.usedBytes = Math.max(node.usedBytes, position+length); + return length; + },llseek:function (stream, offset, whence) { + var position = offset; + if (whence === 1) { // SEEK_CUR. + position += stream.position; + } else if (whence === 2) { // SEEK_END. + if (FS.isFile(stream.node.mode)) { + position += stream.node.usedBytes; + } + } + if (position < 0) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + return position; + },allocate:function (stream, offset, length) { + MEMFS.expandFileStorage(stream.node, offset + length); + stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + length); + },mmap:function (stream, buffer, offset, length, position, prot, flags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.ENODEV); + } + var ptr; + var allocated; + var contents = stream.node.contents; + // Only make a new copy when MAP_PRIVATE is specified. + if ( !(flags & 2) && + (contents.buffer === buffer || contents.buffer === buffer.buffer) ) { + // We can't emulate MAP_SHARED when the file is not backed by the buffer + // we're mapping to (e.g. the HEAP buffer). + allocated = false; + ptr = contents.byteOffset; + } else { + // Try to avoid unnecessary slices. + if (position > 0 || position + length < stream.node.usedBytes) { + if (contents.subarray) { + contents = contents.subarray(position, position + length); + } else { + contents = Array.prototype.slice.call(contents, position, position + length); + } + } + allocated = true; + ptr = _malloc(length); + if (!ptr) { + throw new FS.ErrnoError(ERRNO_CODES.ENOMEM); + } + buffer.set(contents, ptr); + } + return { ptr: ptr, allocated: allocated }; + },msync:function (stream, buffer, offset, length, mmapFlags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.ENODEV); + } + if (mmapFlags & 2) { + // MAP_PRIVATE calls need not to be synced back to underlying fs + return 0; + } + + var bytesWritten = MEMFS.stream_ops.write(stream, buffer, 0, length, offset, false); + // should we check if bytesWritten and length are the same? + return 0; + }}}; + + var IDBFS={dbs:{},indexedDB:function () { + if (typeof indexedDB !== 'undefined') return indexedDB; + var ret = null; + if (typeof window === 'object') ret = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB; + assert(ret, 'IDBFS used, but indexedDB not supported'); + return ret; + },DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:function (mount) { + // reuse all of the core MEMFS functionality + return MEMFS.mount.apply(null, arguments); + },syncfs:function (mount, populate, callback) { + IDBFS.getLocalSet(mount, function(err, local) { + if (err) return callback(err); + + IDBFS.getRemoteSet(mount, function(err, remote) { + if (err) return callback(err); + + var src = populate ? remote : local; + var dst = populate ? local : remote; + + IDBFS.reconcile(src, dst, callback); + }); + }); + },getDB:function (name, callback) { + // check the cache first + var db = IDBFS.dbs[name]; + if (db) { + return callback(null, db); + } + + var req; + try { + req = IDBFS.indexedDB().open(name, IDBFS.DB_VERSION); + } catch (e) { + return callback(e); + } + req.onupgradeneeded = function(e) { + var db = e.target.result; + var transaction = e.target.transaction; + + var fileStore; + + if (db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)) { + fileStore = transaction.objectStore(IDBFS.DB_STORE_NAME); + } else { + fileStore = db.createObjectStore(IDBFS.DB_STORE_NAME); + } + + if (!fileStore.indexNames.contains('timestamp')) { + fileStore.createIndex('timestamp', 'timestamp', { unique: false }); + } + }; + req.onsuccess = function() { + db = req.result; + + // add to the cache + IDBFS.dbs[name] = db; + callback(null, db); + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault(); + }; + },getLocalSet:function (mount, callback) { + var entries = {}; + + function isRealDir(p) { + return p !== '.' && p !== '..'; + }; + function toAbsolute(root) { + return function(p) { + return PATH.join2(root, p); + } + }; + + var check = FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint)); + + while (check.length) { + var path = check.pop(); + var stat; + + try { + stat = FS.stat(path); + } catch (e) { + return callback(e); + } + + if (FS.isDir(stat.mode)) { + check.push.apply(check, FS.readdir(path).filter(isRealDir).map(toAbsolute(path))); + } + + entries[path] = { timestamp: stat.mtime }; + } + + return callback(null, { type: 'local', entries: entries }); + },getRemoteSet:function (mount, callback) { + var entries = {}; + + IDBFS.getDB(mount.mountpoint, function(err, db) { + if (err) return callback(err); + + var transaction = db.transaction([IDBFS.DB_STORE_NAME], 'readonly'); + transaction.onerror = function(e) { + callback(this.error); + e.preventDefault(); + }; + + var store = transaction.objectStore(IDBFS.DB_STORE_NAME); + var index = store.index('timestamp'); + + index.openKeyCursor().onsuccess = function(event) { + var cursor = event.target.result; + + if (!cursor) { + return callback(null, { type: 'remote', db: db, entries: entries }); + } + + entries[cursor.primaryKey] = { timestamp: cursor.key }; + + cursor.continue(); + }; + }); + },loadLocalEntry:function (path, callback) { + var stat, node; + + try { + var lookup = FS.lookupPath(path); + node = lookup.node; + stat = FS.stat(path); + } catch (e) { + return callback(e); + } + + if (FS.isDir(stat.mode)) { + return callback(null, { timestamp: stat.mtime, mode: stat.mode }); + } else if (FS.isFile(stat.mode)) { + // Performance consideration: storing a normal JavaScript array to a IndexedDB is much slower than storing a typed array. + // Therefore always convert the file contents to a typed array first before writing the data to IndexedDB. + node.contents = MEMFS.getFileDataAsTypedArray(node); + return callback(null, { timestamp: stat.mtime, mode: stat.mode, contents: node.contents }); + } else { + return callback(new Error('node type not supported')); + } + },storeLocalEntry:function (path, entry, callback) { + try { + if (FS.isDir(entry.mode)) { + FS.mkdir(path, entry.mode); + } else if (FS.isFile(entry.mode)) { + FS.writeFile(path, entry.contents, { encoding: 'binary', canOwn: true }); + } else { + return callback(new Error('node type not supported')); + } + + FS.chmod(path, entry.mode); + FS.utime(path, entry.timestamp, entry.timestamp); + } catch (e) { + return callback(e); + } + + callback(null); + },removeLocalEntry:function (path, callback) { + try { + var lookup = FS.lookupPath(path); + var stat = FS.stat(path); + + if (FS.isDir(stat.mode)) { + FS.rmdir(path); + } else if (FS.isFile(stat.mode)) { + FS.unlink(path); + } + } catch (e) { + return callback(e); + } + + callback(null); + },loadRemoteEntry:function (store, path, callback) { + var req = store.get(path); + req.onsuccess = function(event) { callback(null, event.target.result); }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault(); + }; + },storeRemoteEntry:function (store, path, entry, callback) { + var req = store.put(entry, path); + req.onsuccess = function() { callback(null); }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault(); + }; + },removeRemoteEntry:function (store, path, callback) { + var req = store.delete(path); + req.onsuccess = function() { callback(null); }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault(); + }; + },reconcile:function (src, dst, callback) { + var total = 0; + + var create = []; + Object.keys(src.entries).forEach(function (key) { + var e = src.entries[key]; + var e2 = dst.entries[key]; + if (!e2 || e.timestamp > e2.timestamp) { + create.push(key); + total++; + } + }); + + var remove = []; + Object.keys(dst.entries).forEach(function (key) { + var e = dst.entries[key]; + var e2 = src.entries[key]; + if (!e2) { + remove.push(key); + total++; + } + }); + + if (!total) { + return callback(null); + } + + var errored = false; + var completed = 0; + var db = src.type === 'remote' ? src.db : dst.db; + var transaction = db.transaction([IDBFS.DB_STORE_NAME], 'readwrite'); + var store = transaction.objectStore(IDBFS.DB_STORE_NAME); + + function done(err) { + if (err) { + if (!done.errored) { + done.errored = true; + return callback(err); + } + return; + } + if (++completed >= total) { + return callback(null); + } + }; + + transaction.onerror = function(e) { + done(this.error); + e.preventDefault(); + }; + + // sort paths in ascending order so directory entries are created + // before the files inside them + create.sort().forEach(function (path) { + if (dst.type === 'local') { + IDBFS.loadRemoteEntry(store, path, function (err, entry) { + if (err) return done(err); + IDBFS.storeLocalEntry(path, entry, done); + }); + } else { + IDBFS.loadLocalEntry(path, function (err, entry) { + if (err) return done(err); + IDBFS.storeRemoteEntry(store, path, entry, done); + }); + } + }); + + // sort paths in descending order so files are deleted before their + // parent directories + remove.sort().reverse().forEach(function(path) { + if (dst.type === 'local') { + IDBFS.removeLocalEntry(path, done); + } else { + IDBFS.removeRemoteEntry(store, path, done); + } + }); + }}; + + var NODEFS={isWindows:false,staticInit:function () { + NODEFS.isWindows = !!process.platform.match(/^win/); + },mount:function (mount) { + assert(ENVIRONMENT_IS_NODE); + return NODEFS.createNode(null, '/', NODEFS.getMode(mount.opts.root), 0); + },createNode:function (parent, name, mode, dev) { + if (!FS.isDir(mode) && !FS.isFile(mode) && !FS.isLink(mode)) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + var node = FS.createNode(parent, name, mode); + node.node_ops = NODEFS.node_ops; + node.stream_ops = NODEFS.stream_ops; + return node; + },getMode:function (path) { + var stat; + try { + stat = fs.lstatSync(path); + if (NODEFS.isWindows) { + // On Windows, directories return permission bits 'rw-rw-rw-', even though they have 'rwxrwxrwx', so + // propagate write bits to execute bits. + stat.mode = stat.mode | ((stat.mode & 146) >> 1); + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + return stat.mode; + },realPath:function (node) { + var parts = []; + while (node.parent !== node) { + parts.push(node.name); + node = node.parent; + } + parts.push(node.mount.opts.root); + parts.reverse(); + return PATH.join.apply(null, parts); + },flagsToPermissionStringMap:{0:"r",1:"r+",2:"r+",64:"r",65:"r+",66:"r+",129:"rx+",193:"rx+",514:"w+",577:"w",578:"w+",705:"wx",706:"wx+",1024:"a",1025:"a",1026:"a+",1089:"a",1090:"a+",1153:"ax",1154:"ax+",1217:"ax",1218:"ax+",4096:"rs",4098:"rs+"},flagsToPermissionString:function (flags) { + flags &= ~0100000 /*O_LARGEFILE*/; // Ignore this flag from musl, otherwise node.js fails to open the file. + flags &= ~02000000 /*O_CLOEXEC*/; // Some applications may pass it; it makes no sense for a single process. + if (flags in NODEFS.flagsToPermissionStringMap) { + return NODEFS.flagsToPermissionStringMap[flags]; + } else { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + },node_ops:{getattr:function (node) { + var path = NODEFS.realPath(node); + var stat; + try { + stat = fs.lstatSync(path); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + // node.js v0.10.20 doesn't report blksize and blocks on Windows. Fake them with default blksize of 4096. + // See http://support.microsoft.com/kb/140365 + if (NODEFS.isWindows && !stat.blksize) { + stat.blksize = 4096; + } + if (NODEFS.isWindows && !stat.blocks) { + stat.blocks = (stat.size+stat.blksize-1)/stat.blksize|0; + } + return { + dev: stat.dev, + ino: stat.ino, + mode: stat.mode, + nlink: stat.nlink, + uid: stat.uid, + gid: stat.gid, + rdev: stat.rdev, + size: stat.size, + atime: stat.atime, + mtime: stat.mtime, + ctime: stat.ctime, + blksize: stat.blksize, + blocks: stat.blocks + }; + },setattr:function (node, attr) { + var path = NODEFS.realPath(node); + try { + if (attr.mode !== undefined) { + fs.chmodSync(path, attr.mode); + // update the common node structure mode as well + node.mode = attr.mode; + } + if (attr.timestamp !== undefined) { + var date = new Date(attr.timestamp); + fs.utimesSync(path, date, date); + } + if (attr.size !== undefined) { + fs.truncateSync(path, attr.size); + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + },lookup:function (parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + var mode = NODEFS.getMode(path); + return NODEFS.createNode(parent, name, mode); + },mknod:function (parent, name, mode, dev) { + var node = NODEFS.createNode(parent, name, mode, dev); + // create the backing node for this in the fs root as well + var path = NODEFS.realPath(node); + try { + if (FS.isDir(node.mode)) { + fs.mkdirSync(path, node.mode); + } else { + fs.writeFileSync(path, '', { mode: node.mode }); + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + return node; + },rename:function (oldNode, newDir, newName) { + var oldPath = NODEFS.realPath(oldNode); + var newPath = PATH.join2(NODEFS.realPath(newDir), newName); + try { + fs.renameSync(oldPath, newPath); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + },unlink:function (parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.unlinkSync(path); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + },rmdir:function (parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.rmdirSync(path); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + },readdir:function (node) { + var path = NODEFS.realPath(node); + try { + return fs.readdirSync(path); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + },symlink:function (parent, newName, oldPath) { + var newPath = PATH.join2(NODEFS.realPath(parent), newName); + try { + fs.symlinkSync(oldPath, newPath); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + },readlink:function (node) { + var path = NODEFS.realPath(node); + try { + path = fs.readlinkSync(path); + path = NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root), path); + return path; + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + }},stream_ops:{open:function (stream) { + var path = NODEFS.realPath(stream.node); + try { + if (FS.isFile(stream.node.mode)) { + stream.nfd = fs.openSync(path, NODEFS.flagsToPermissionString(stream.flags)); + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + },close:function (stream) { + try { + if (FS.isFile(stream.node.mode) && stream.nfd) { + fs.closeSync(stream.nfd); + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + },read:function (stream, buffer, offset, length, position) { + if (length === 0) return 0; // node errors on 0 length reads + // FIXME this is terrible. + var nbuffer = new Buffer(length); + var res; + try { + res = fs.readSync(stream.nfd, nbuffer, 0, length, position); + } catch (e) { + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + if (res > 0) { + for (var i = 0; i < res; i++) { + buffer[offset + i] = nbuffer[i]; + } + } + return res; + },write:function (stream, buffer, offset, length, position) { + // FIXME this is terrible. + var nbuffer = new Buffer(buffer.subarray(offset, offset + length)); + var res; + try { + res = fs.writeSync(stream.nfd, nbuffer, 0, length, position); + } catch (e) { + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + return res; + },llseek:function (stream, offset, whence) { + var position = offset; + if (whence === 1) { // SEEK_CUR. + position += stream.position; + } else if (whence === 2) { // SEEK_END. + if (FS.isFile(stream.node.mode)) { + try { + var stat = fs.fstatSync(stream.nfd); + position += stat.size; + } catch (e) { + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + } + } + + if (position < 0) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + + return position; + }}}; + + var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:function (mount) { + assert(ENVIRONMENT_IS_WORKER); + if (!WORKERFS.reader) WORKERFS.reader = new FileReaderSync(); + var root = WORKERFS.createNode(null, '/', WORKERFS.DIR_MODE, 0); + var createdParents = {}; + function ensureParent(path) { + // return the parent node, creating subdirs as necessary + var parts = path.split('/'); + var parent = root; + for (var i = 0; i < parts.length-1; i++) { + var curr = parts.slice(0, i+1).join('/'); + if (!createdParents[curr]) { + createdParents[curr] = WORKERFS.createNode(parent, curr, WORKERFS.DIR_MODE, 0); + } + parent = createdParents[curr]; + } + return parent; + } + function base(path) { + var parts = path.split('/'); + return parts[parts.length-1]; + } + // We also accept FileList here, by using Array.prototype + Array.prototype.forEach.call(mount.opts["files"] || [], function(file) { + WORKERFS.createNode(ensureParent(file.name), base(file.name), WORKERFS.FILE_MODE, 0, file, file.lastModifiedDate); + }); + (mount.opts["blobs"] || []).forEach(function(obj) { + WORKERFS.createNode(ensureParent(obj["name"]), base(obj["name"]), WORKERFS.FILE_MODE, 0, obj["data"]); + }); + (mount.opts["packages"] || []).forEach(function(pack) { + pack['metadata'].files.forEach(function(file) { + var name = file.filename.substr(1); // remove initial slash + WORKERFS.createNode(ensureParent(name), base(name), WORKERFS.FILE_MODE, 0, pack['blob'].slice(file.start, file.end)); + }); + }); + return root; + },createNode:function (parent, name, mode, dev, contents, mtime) { + var node = FS.createNode(parent, name, mode); + node.mode = mode; + node.node_ops = WORKERFS.node_ops; + node.stream_ops = WORKERFS.stream_ops; + node.timestamp = (mtime || new Date).getTime(); + assert(WORKERFS.FILE_MODE !== WORKERFS.DIR_MODE); + if (mode === WORKERFS.FILE_MODE) { + node.size = contents.size; + node.contents = contents; + } else { + node.size = 4096; + node.contents = {}; + } + if (parent) { + parent.contents[name] = node; + } + return node; + },node_ops:{getattr:function (node) { + return { + dev: 1, + ino: undefined, + mode: node.mode, + nlink: 1, + uid: 0, + gid: 0, + rdev: undefined, + size: node.size, + atime: new Date(node.timestamp), + mtime: new Date(node.timestamp), + ctime: new Date(node.timestamp), + blksize: 4096, + blocks: Math.ceil(node.size / 4096), + }; + },setattr:function (node, attr) { + if (attr.mode !== undefined) { + node.mode = attr.mode; + } + if (attr.timestamp !== undefined) { + node.timestamp = attr.timestamp; + } + },lookup:function (parent, name) { + throw new FS.ErrnoError(ERRNO_CODES.ENOENT); + },mknod:function (parent, name, mode, dev) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + },rename:function (oldNode, newDir, newName) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + },unlink:function (parent, name) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + },rmdir:function (parent, name) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + },readdir:function (node) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + },symlink:function (parent, newName, oldPath) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + },readlink:function (node) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + }},stream_ops:{read:function (stream, buffer, offset, length, position) { + if (position >= stream.node.size) return 0; + var chunk = stream.node.contents.slice(position, position + length); + var ab = WORKERFS.reader.readAsArrayBuffer(chunk); + buffer.set(new Uint8Array(ab), offset); + return chunk.size; + },write:function (stream, buffer, offset, length, position) { + throw new FS.ErrnoError(ERRNO_CODES.EIO); + },llseek:function (stream, offset, whence) { + var position = offset; + if (whence === 1) { // SEEK_CUR. + position += stream.position; + } else if (whence === 2) { // SEEK_END. + if (FS.isFile(stream.node.mode)) { + position += stream.node.size; + } + } + if (position < 0) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + return position; + }}}; + + var _stdin=allocate(1, "i32*", ALLOC_STATIC); + + var _stdout=allocate(1, "i32*", ALLOC_STATIC); + + var _stderr=allocate(1, "i32*", ALLOC_STATIC);var FS={root:null,mounts:[],devices:[null],streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:function (e) { + if (!(e instanceof FS.ErrnoError)) throw e + ' : ' + stackTrace(); + return ___setErrNo(e.errno); + },lookupPath:function (path, opts) { + path = PATH.resolve(FS.cwd(), path); + opts = opts || {}; + + if (!path) return { path: '', node: null }; + + var defaults = { + follow_mount: true, + recurse_count: 0 + }; + for (var key in defaults) { + if (opts[key] === undefined) { + opts[key] = defaults[key]; + } + } + + if (opts.recurse_count > 8) { // max recursive lookup of 8 + throw new FS.ErrnoError(ERRNO_CODES.ELOOP); + } + + // split the path + var parts = PATH.normalizeArray(path.split('/').filter(function(p) { + return !!p; + }), false); + + // start at the root + var current = FS.root; + var current_path = '/'; + + for (var i = 0; i < parts.length; i++) { + var islast = (i === parts.length-1); + if (islast && opts.parent) { + // stop resolving + break; + } + + current = FS.lookupNode(current, parts[i]); + current_path = PATH.join2(current_path, parts[i]); + + // jump to the mount's root node if this is a mountpoint + if (FS.isMountpoint(current)) { + if (!islast || (islast && opts.follow_mount)) { + current = current.mounted.root; + } + } + + // by default, lookupPath will not follow a symlink if it is the final path component. + // setting opts.follow = true will override this behavior. + if (!islast || opts.follow) { + var count = 0; + while (FS.isLink(current.mode)) { + var link = FS.readlink(current_path); + current_path = PATH.resolve(PATH.dirname(current_path), link); + + var lookup = FS.lookupPath(current_path, { recurse_count: opts.recurse_count }); + current = lookup.node; + + if (count++ > 40) { // limit max consecutive symlinks to 40 (SYMLOOP_MAX). + throw new FS.ErrnoError(ERRNO_CODES.ELOOP); + } + } + } + } + + return { path: current_path, node: current }; + },getPath:function (node) { + var path; + while (true) { + if (FS.isRoot(node)) { + var mount = node.mount.mountpoint; + if (!path) return mount; + return mount[mount.length-1] !== '/' ? mount + '/' + path : mount + path; + } + path = path ? node.name + '/' + path : node.name; + node = node.parent; + } + },hashName:function (parentid, name) { + var hash = 0; + + + for (var i = 0; i < name.length; i++) { + hash = ((hash << 5) - hash + name.charCodeAt(i)) | 0; + } + return ((parentid + hash) >>> 0) % FS.nameTable.length; + },hashAddNode:function (node) { + var hash = FS.hashName(node.parent.id, node.name); + node.name_next = FS.nameTable[hash]; + FS.nameTable[hash] = node; + },hashRemoveNode:function (node) { + var hash = FS.hashName(node.parent.id, node.name); + if (FS.nameTable[hash] === node) { + FS.nameTable[hash] = node.name_next; + } else { + var current = FS.nameTable[hash]; + while (current) { + if (current.name_next === node) { + current.name_next = node.name_next; + break; + } + current = current.name_next; + } + } + },lookupNode:function (parent, name) { + var err = FS.mayLookup(parent); + if (err) { + throw new FS.ErrnoError(err, parent); + } + var hash = FS.hashName(parent.id, name); + for (var node = FS.nameTable[hash]; node; node = node.name_next) { + var nodeName = node.name; + if (node.parent.id === parent.id && nodeName === name) { + return node; + } + } + // if we failed to find it in the cache, call into the VFS + return FS.lookup(parent, name); + },createNode:function (parent, name, mode, rdev) { + if (!FS.FSNode) { + FS.FSNode = function(parent, name, mode, rdev) { + if (!parent) { + parent = this; // root node sets parent to itself + } + this.parent = parent; + this.mount = parent.mount; + this.mounted = null; + this.id = FS.nextInode++; + this.name = name; + this.mode = mode; + this.node_ops = {}; + this.stream_ops = {}; + this.rdev = rdev; + }; + + FS.FSNode.prototype = {}; + + // compatibility + var readMode = 292 | 73; + var writeMode = 146; + + // NOTE we must use Object.defineProperties instead of individual calls to + // Object.defineProperty in order to make closure compiler happy + Object.defineProperties(FS.FSNode.prototype, { + read: { + get: function() { return (this.mode & readMode) === readMode; }, + set: function(val) { val ? this.mode |= readMode : this.mode &= ~readMode; } + }, + write: { + get: function() { return (this.mode & writeMode) === writeMode; }, + set: function(val) { val ? this.mode |= writeMode : this.mode &= ~writeMode; } + }, + isFolder: { + get: function() { return FS.isDir(this.mode); } + }, + isDevice: { + get: function() { return FS.isChrdev(this.mode); } + } + }); + } + + var node = new FS.FSNode(parent, name, mode, rdev); + + FS.hashAddNode(node); + + return node; + },destroyNode:function (node) { + FS.hashRemoveNode(node); + },isRoot:function (node) { + return node === node.parent; + },isMountpoint:function (node) { + return !!node.mounted; + },isFile:function (mode) { + return (mode & 61440) === 32768; + },isDir:function (mode) { + return (mode & 61440) === 16384; + },isLink:function (mode) { + return (mode & 61440) === 40960; + },isChrdev:function (mode) { + return (mode & 61440) === 8192; + },isBlkdev:function (mode) { + return (mode & 61440) === 24576; + },isFIFO:function (mode) { + return (mode & 61440) === 4096; + },isSocket:function (mode) { + return (mode & 49152) === 49152; + },flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:function (str) { + var flags = FS.flagModes[str]; + if (typeof flags === 'undefined') { + throw new Error('Unknown file open mode: ' + str); + } + return flags; + },flagsToPermissionString:function (flag) { + var perms = ['r', 'w', 'rw'][flag & 3]; + if ((flag & 512)) { + perms += 'w'; + } + return perms; + },nodePermissions:function (node, perms) { + if (FS.ignorePermissions) { + return 0; + } + // return 0 if any user, group or owner bits are set. + if (perms.indexOf('r') !== -1 && !(node.mode & 292)) { + return ERRNO_CODES.EACCES; + } else if (perms.indexOf('w') !== -1 && !(node.mode & 146)) { + return ERRNO_CODES.EACCES; + } else if (perms.indexOf('x') !== -1 && !(node.mode & 73)) { + return ERRNO_CODES.EACCES; + } + return 0; + },mayLookup:function (dir) { + var err = FS.nodePermissions(dir, 'x'); + if (err) return err; + if (!dir.node_ops.lookup) return ERRNO_CODES.EACCES; + return 0; + },mayCreate:function (dir, name) { + try { + var node = FS.lookupNode(dir, name); + return ERRNO_CODES.EEXIST; + } catch (e) { + } + return FS.nodePermissions(dir, 'wx'); + },mayDelete:function (dir, name, isdir) { + var node; + try { + node = FS.lookupNode(dir, name); + } catch (e) { + return e.errno; + } + var err = FS.nodePermissions(dir, 'wx'); + if (err) { + return err; + } + if (isdir) { + if (!FS.isDir(node.mode)) { + return ERRNO_CODES.ENOTDIR; + } + if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) { + return ERRNO_CODES.EBUSY; + } + } else { + if (FS.isDir(node.mode)) { + return ERRNO_CODES.EISDIR; + } + } + return 0; + },mayOpen:function (node, flags) { + if (!node) { + return ERRNO_CODES.ENOENT; + } + if (FS.isLink(node.mode)) { + return ERRNO_CODES.ELOOP; + } else if (FS.isDir(node.mode)) { + if (FS.flagsToPermissionString(flags) !== 'r' || // opening for write + (flags & 512)) { // TODO: check for O_SEARCH? (== search for dir only) + return ERRNO_CODES.EISDIR; + } + } + return FS.nodePermissions(node, FS.flagsToPermissionString(flags)); + },MAX_OPEN_FDS:4096,nextfd:function (fd_start, fd_end) { + fd_start = fd_start || 0; + fd_end = fd_end || FS.MAX_OPEN_FDS; + for (var fd = fd_start; fd <= fd_end; fd++) { + if (!FS.streams[fd]) { + return fd; + } + } + throw new FS.ErrnoError(ERRNO_CODES.EMFILE); + },getStream:function (fd) { + return FS.streams[fd]; + },createStream:function (stream, fd_start, fd_end) { + if (!FS.FSStream) { + FS.FSStream = function(){}; + FS.FSStream.prototype = {}; + // compatibility + Object.defineProperties(FS.FSStream.prototype, { + object: { + get: function() { return this.node; }, + set: function(val) { this.node = val; } + }, + isRead: { + get: function() { return (this.flags & 2097155) !== 1; } + }, + isWrite: { + get: function() { return (this.flags & 2097155) !== 0; } + }, + isAppend: { + get: function() { return (this.flags & 1024); } + } + }); + } + // clone it, so we can return an instance of FSStream + var newStream = new FS.FSStream(); + for (var p in stream) { + newStream[p] = stream[p]; + } + stream = newStream; + var fd = FS.nextfd(fd_start, fd_end); + stream.fd = fd; + FS.streams[fd] = stream; + return stream; + },closeStream:function (fd) { + FS.streams[fd] = null; + },chrdev_stream_ops:{open:function (stream) { + var device = FS.getDevice(stream.node.rdev); + // override node's stream ops with the device's + stream.stream_ops = device.stream_ops; + // forward the open call + if (stream.stream_ops.open) { + stream.stream_ops.open(stream); + } + },llseek:function () { + throw new FS.ErrnoError(ERRNO_CODES.ESPIPE); + }},major:function (dev) { + return ((dev) >> 8); + },minor:function (dev) { + return ((dev) & 0xff); + },makedev:function (ma, mi) { + return ((ma) << 8 | (mi)); + },registerDevice:function (dev, ops) { + FS.devices[dev] = { stream_ops: ops }; + },getDevice:function (dev) { + return FS.devices[dev]; + },getMounts:function (mount) { + var mounts = []; + var check = [mount]; + + while (check.length) { + var m = check.pop(); + + mounts.push(m); + + check.push.apply(check, m.mounts); + } + + return mounts; + },syncfs:function (populate, callback) { + if (typeof(populate) === 'function') { + callback = populate; + populate = false; + } + + FS.syncFSRequests++; + + if (FS.syncFSRequests > 1) { + console.log('warning: ' + FS.syncFSRequests + ' FS.syncfs operations in flight at once, probably just doing extra work'); + } + + var mounts = FS.getMounts(FS.root.mount); + var completed = 0; + + function doCallback(err) { + assert(FS.syncFSRequests > 0); + FS.syncFSRequests--; + return callback(err); + } + + function done(err) { + if (err) { + if (!done.errored) { + done.errored = true; + return doCallback(err); + } + return; + } + if (++completed >= mounts.length) { + doCallback(null); + } + }; + + // sync all mounts + mounts.forEach(function (mount) { + if (!mount.type.syncfs) { + return done(null); + } + mount.type.syncfs(mount, populate, done); + }); + },mount:function (type, opts, mountpoint) { + var root = mountpoint === '/'; + var pseudo = !mountpoint; + var node; + + if (root && FS.root) { + throw new FS.ErrnoError(ERRNO_CODES.EBUSY); + } else if (!root && !pseudo) { + var lookup = FS.lookupPath(mountpoint, { follow_mount: false }); + + mountpoint = lookup.path; // use the absolute path + node = lookup.node; + + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(ERRNO_CODES.EBUSY); + } + + if (!FS.isDir(node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR); + } + } + + var mount = { + type: type, + opts: opts, + mountpoint: mountpoint, + mounts: [] + }; + + // create a root node for the fs + var mountRoot = type.mount(mount); + mountRoot.mount = mount; + mount.root = mountRoot; + + if (root) { + FS.root = mountRoot; + } else if (node) { + // set as a mountpoint + node.mounted = mount; + + // add the new mount to the current mount's children + if (node.mount) { + node.mount.mounts.push(mount); + } + } + + return mountRoot; + },unmount:function (mountpoint) { + var lookup = FS.lookupPath(mountpoint, { follow_mount: false }); + + if (!FS.isMountpoint(lookup.node)) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + + // destroy the nodes for this mount, and all its child mounts + var node = lookup.node; + var mount = node.mounted; + var mounts = FS.getMounts(mount); + + Object.keys(FS.nameTable).forEach(function (hash) { + var current = FS.nameTable[hash]; + + while (current) { + var next = current.name_next; + + if (mounts.indexOf(current.mount) !== -1) { + FS.destroyNode(current); + } + + current = next; + } + }); + + // no longer a mountpoint + node.mounted = null; + + // remove this mount from the child mounts + var idx = node.mount.mounts.indexOf(mount); + assert(idx !== -1); + node.mount.mounts.splice(idx, 1); + },lookup:function (parent, name) { + return parent.node_ops.lookup(parent, name); + },mknod:function (path, mode, dev) { + var lookup = FS.lookupPath(path, { parent: true }); + var parent = lookup.node; + var name = PATH.basename(path); + if (!name || name === '.' || name === '..') { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + var err = FS.mayCreate(parent, name); + if (err) { + throw new FS.ErrnoError(err); + } + if (!parent.node_ops.mknod) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + } + return parent.node_ops.mknod(parent, name, mode, dev); + },create:function (path, mode) { + mode = mode !== undefined ? mode : 438 /* 0666 */; + mode &= 4095; + mode |= 32768; + return FS.mknod(path, mode, 0); + },mkdir:function (path, mode) { + mode = mode !== undefined ? mode : 511 /* 0777 */; + mode &= 511 | 512; + mode |= 16384; + return FS.mknod(path, mode, 0); + },mkdev:function (path, mode, dev) { + if (typeof(dev) === 'undefined') { + dev = mode; + mode = 438 /* 0666 */; + } + mode |= 8192; + return FS.mknod(path, mode, dev); + },symlink:function (oldpath, newpath) { + if (!PATH.resolve(oldpath)) { + throw new FS.ErrnoError(ERRNO_CODES.ENOENT); + } + var lookup = FS.lookupPath(newpath, { parent: true }); + var parent = lookup.node; + if (!parent) { + throw new FS.ErrnoError(ERRNO_CODES.ENOENT); + } + var newname = PATH.basename(newpath); + var err = FS.mayCreate(parent, newname); + if (err) { + throw new FS.ErrnoError(err); + } + if (!parent.node_ops.symlink) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + } + return parent.node_ops.symlink(parent, newname, oldpath); + },rename:function (old_path, new_path) { + var old_dirname = PATH.dirname(old_path); + var new_dirname = PATH.dirname(new_path); + var old_name = PATH.basename(old_path); + var new_name = PATH.basename(new_path); + // parents must exist + var lookup, old_dir, new_dir; + try { + lookup = FS.lookupPath(old_path, { parent: true }); + old_dir = lookup.node; + lookup = FS.lookupPath(new_path, { parent: true }); + new_dir = lookup.node; + } catch (e) { + throw new FS.ErrnoError(ERRNO_CODES.EBUSY); + } + if (!old_dir || !new_dir) throw new FS.ErrnoError(ERRNO_CODES.ENOENT); + // need to be part of the same mount + if (old_dir.mount !== new_dir.mount) { + throw new FS.ErrnoError(ERRNO_CODES.EXDEV); + } + // source must exist + var old_node = FS.lookupNode(old_dir, old_name); + // old path should not be an ancestor of the new path + var relative = PATH.relative(old_path, new_dirname); + if (relative.charAt(0) !== '.') { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + // new path should not be an ancestor of the old path + relative = PATH.relative(new_path, old_dirname); + if (relative.charAt(0) !== '.') { + throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY); + } + // see if the new path already exists + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name); + } catch (e) { + // not fatal + } + // early out if nothing needs to change + if (old_node === new_node) { + return; + } + // we'll need to delete the old entry + var isdir = FS.isDir(old_node.mode); + var err = FS.mayDelete(old_dir, old_name, isdir); + if (err) { + throw new FS.ErrnoError(err); + } + // need delete permissions if we'll be overwriting. + // need create permissions if new doesn't already exist. + err = new_node ? + FS.mayDelete(new_dir, new_name, isdir) : + FS.mayCreate(new_dir, new_name); + if (err) { + throw new FS.ErrnoError(err); + } + if (!old_dir.node_ops.rename) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + } + if (FS.isMountpoint(old_node) || (new_node && FS.isMountpoint(new_node))) { + throw new FS.ErrnoError(ERRNO_CODES.EBUSY); + } + // if we are going to change the parent, check write permissions + if (new_dir !== old_dir) { + err = FS.nodePermissions(old_dir, 'w'); + if (err) { + throw new FS.ErrnoError(err); + } + } + try { + if (FS.trackingDelegate['willMovePath']) { + FS.trackingDelegate['willMovePath'](old_path, new_path); + } + } catch(e) { + console.log("FS.trackingDelegate['willMovePath']('"+old_path+"', '"+new_path+"') threw an exception: " + e.message); + } + // remove the node from the lookup hash + FS.hashRemoveNode(old_node); + // do the underlying fs rename + try { + old_dir.node_ops.rename(old_node, new_dir, new_name); + } catch (e) { + throw e; + } finally { + // add the node back to the hash (in case node_ops.rename + // changed its name) + FS.hashAddNode(old_node); + } + try { + if (FS.trackingDelegate['onMovePath']) FS.trackingDelegate['onMovePath'](old_path, new_path); + } catch(e) { + console.log("FS.trackingDelegate['onMovePath']('"+old_path+"', '"+new_path+"') threw an exception: " + e.message); + } + },rmdir:function (path) { + var lookup = FS.lookupPath(path, { parent: true }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, true); + if (err) { + throw new FS.ErrnoError(err); + } + if (!parent.node_ops.rmdir) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(ERRNO_CODES.EBUSY); + } + try { + if (FS.trackingDelegate['willDeletePath']) { + FS.trackingDelegate['willDeletePath'](path); + } + } catch(e) { + console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: " + e.message); + } + parent.node_ops.rmdir(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate['onDeletePath']) FS.trackingDelegate['onDeletePath'](path); + } catch(e) { + console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: " + e.message); + } + },readdir:function (path) { + var lookup = FS.lookupPath(path, { follow: true }); + var node = lookup.node; + if (!node.node_ops.readdir) { + throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR); + } + return node.node_ops.readdir(node); + },unlink:function (path) { + var lookup = FS.lookupPath(path, { parent: true }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, false); + if (err) { + // POSIX says unlink should set EPERM, not EISDIR + if (err === ERRNO_CODES.EISDIR) err = ERRNO_CODES.EPERM; + throw new FS.ErrnoError(err); + } + if (!parent.node_ops.unlink) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(ERRNO_CODES.EBUSY); + } + try { + if (FS.trackingDelegate['willDeletePath']) { + FS.trackingDelegate['willDeletePath'](path); + } + } catch(e) { + console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: " + e.message); + } + parent.node_ops.unlink(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate['onDeletePath']) FS.trackingDelegate['onDeletePath'](path); + } catch(e) { + console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: " + e.message); + } + },readlink:function (path) { + var lookup = FS.lookupPath(path); + var link = lookup.node; + if (!link) { + throw new FS.ErrnoError(ERRNO_CODES.ENOENT); + } + if (!link.node_ops.readlink) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + return PATH.resolve(FS.getPath(link.parent), link.node_ops.readlink(link)); + },stat:function (path, dontFollow) { + var lookup = FS.lookupPath(path, { follow: !dontFollow }); + var node = lookup.node; + if (!node) { + throw new FS.ErrnoError(ERRNO_CODES.ENOENT); + } + if (!node.node_ops.getattr) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + } + return node.node_ops.getattr(node); + },lstat:function (path) { + return FS.stat(path, true); + },chmod:function (path, mode, dontFollow) { + var node; + if (typeof path === 'string') { + var lookup = FS.lookupPath(path, { follow: !dontFollow }); + node = lookup.node; + } else { + node = path; + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + } + node.node_ops.setattr(node, { + mode: (mode & 4095) | (node.mode & ~4095), + timestamp: Date.now() + }); + },lchmod:function (path, mode) { + FS.chmod(path, mode, true); + },fchmod:function (fd, mode) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(ERRNO_CODES.EBADF); + } + FS.chmod(stream.node, mode); + },chown:function (path, uid, gid, dontFollow) { + var node; + if (typeof path === 'string') { + var lookup = FS.lookupPath(path, { follow: !dontFollow }); + node = lookup.node; + } else { + node = path; + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + } + node.node_ops.setattr(node, { + timestamp: Date.now() + // we ignore the uid / gid for now + }); + },lchown:function (path, uid, gid) { + FS.chown(path, uid, gid, true); + },fchown:function (fd, uid, gid) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(ERRNO_CODES.EBADF); + } + FS.chown(stream.node, uid, gid); + },truncate:function (path, len) { + if (len < 0) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + var node; + if (typeof path === 'string') { + var lookup = FS.lookupPath(path, { follow: true }); + node = lookup.node; + } else { + node = path; + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + } + if (FS.isDir(node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.EISDIR); + } + if (!FS.isFile(node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + var err = FS.nodePermissions(node, 'w'); + if (err) { + throw new FS.ErrnoError(err); + } + node.node_ops.setattr(node, { + size: len, + timestamp: Date.now() + }); + },ftruncate:function (fd, len) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(ERRNO_CODES.EBADF); + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + FS.truncate(stream.node, len); + },utime:function (path, atime, mtime) { + var lookup = FS.lookupPath(path, { follow: true }); + var node = lookup.node; + node.node_ops.setattr(node, { + timestamp: Math.max(atime, mtime) + }); + },open:function (path, flags, mode, fd_start, fd_end) { + if (path === "") { + throw new FS.ErrnoError(ERRNO_CODES.ENOENT); + } + flags = typeof flags === 'string' ? FS.modeStringToFlags(flags) : flags; + mode = typeof mode === 'undefined' ? 438 /* 0666 */ : mode; + if ((flags & 64)) { + mode = (mode & 4095) | 32768; + } else { + mode = 0; + } + var node; + if (typeof path === 'object') { + node = path; + } else { + path = PATH.normalize(path); + try { + var lookup = FS.lookupPath(path, { + follow: !(flags & 131072) + }); + node = lookup.node; + } catch (e) { + // ignore + } + } + // perhaps we need to create the node + var created = false; + if ((flags & 64)) { + if (node) { + // if O_CREAT and O_EXCL are set, error out if the node already exists + if ((flags & 128)) { + throw new FS.ErrnoError(ERRNO_CODES.EEXIST); + } + } else { + // node doesn't exist, try to create it + node = FS.mknod(path, mode, 0); + created = true; + } + } + if (!node) { + throw new FS.ErrnoError(ERRNO_CODES.ENOENT); + } + // can't truncate a device + if (FS.isChrdev(node.mode)) { + flags &= ~512; + } + // if asked only for a directory, then this must be one + if ((flags & 65536) && !FS.isDir(node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR); + } + // check permissions, if this is not a file we just created now (it is ok to + // create and write to a file with read-only permissions; it is read-only + // for later use) + if (!created) { + var err = FS.mayOpen(node, flags); + if (err) { + throw new FS.ErrnoError(err); + } + } + // do truncation if necessary + if ((flags & 512)) { + FS.truncate(node, 0); + } + // we've already handled these, don't pass down to the underlying vfs + flags &= ~(128 | 512); + + // register the stream with the filesystem + var stream = FS.createStream({ + node: node, + path: FS.getPath(node), // we want the absolute path to the node + flags: flags, + seekable: true, + position: 0, + stream_ops: node.stream_ops, + // used by the file family libc calls (fopen, fwrite, ferror, etc.) + ungotten: [], + error: false + }, fd_start, fd_end); + // call the new stream's open function + if (stream.stream_ops.open) { + stream.stream_ops.open(stream); + } + if (Module['logReadFiles'] && !(flags & 1)) { + if (!FS.readFiles) FS.readFiles = {}; + if (!(path in FS.readFiles)) { + FS.readFiles[path] = 1; + Module['printErr']('read file: ' + path); + } + } + try { + if (FS.trackingDelegate['onOpenFile']) { + var trackingFlags = 0; + if ((flags & 2097155) !== 1) { + trackingFlags |= FS.tracking.openFlags.READ; + } + if ((flags & 2097155) !== 0) { + trackingFlags |= FS.tracking.openFlags.WRITE; + } + FS.trackingDelegate['onOpenFile'](path, trackingFlags); + } + } catch(e) { + console.log("FS.trackingDelegate['onOpenFile']('"+path+"', flags) threw an exception: " + e.message); + } + return stream; + },close:function (stream) { + if (stream.getdents) stream.getdents = null; // free readdir state + try { + if (stream.stream_ops.close) { + stream.stream_ops.close(stream); + } + } catch (e) { + throw e; + } finally { + FS.closeStream(stream.fd); + } + },llseek:function (stream, offset, whence) { + if (!stream.seekable || !stream.stream_ops.llseek) { + throw new FS.ErrnoError(ERRNO_CODES.ESPIPE); + } + stream.position = stream.stream_ops.llseek(stream, offset, whence); + stream.ungotten = []; + return stream.position; + },read:function (stream, buffer, offset, length, position) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(ERRNO_CODES.EBADF); + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.EISDIR); + } + if (!stream.stream_ops.read) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + var seeking = true; + if (typeof position === 'undefined') { + position = stream.position; + seeking = false; + } else if (!stream.seekable) { + throw new FS.ErrnoError(ERRNO_CODES.ESPIPE); + } + var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position); + if (!seeking) stream.position += bytesRead; + return bytesRead; + },write:function (stream, buffer, offset, length, position, canOwn) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(ERRNO_CODES.EBADF); + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.EISDIR); + } + if (!stream.stream_ops.write) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + if (stream.flags & 1024) { + // seek to the end before writing in append mode + FS.llseek(stream, 0, 2); + } + var seeking = true; + if (typeof position === 'undefined') { + position = stream.position; + seeking = false; + } else if (!stream.seekable) { + throw new FS.ErrnoError(ERRNO_CODES.ESPIPE); + } + var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn); + if (!seeking) stream.position += bytesWritten; + try { + if (stream.path && FS.trackingDelegate['onWriteToFile']) FS.trackingDelegate['onWriteToFile'](stream.path); + } catch(e) { + console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: " + e.message); + } + return bytesWritten; + },allocate:function (stream, offset, length) { + if (offset < 0 || length <= 0) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(ERRNO_CODES.EBADF); + } + if (!FS.isFile(stream.node.mode) && !FS.isDir(node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.ENODEV); + } + if (!stream.stream_ops.allocate) { + throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP); + } + stream.stream_ops.allocate(stream, offset, length); + },mmap:function (stream, buffer, offset, length, position, prot, flags) { + // TODO if PROT is PROT_WRITE, make sure we have write access + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(ERRNO_CODES.EACCES); + } + if (!stream.stream_ops.mmap) { + throw new FS.ErrnoError(ERRNO_CODES.ENODEV); + } + return stream.stream_ops.mmap(stream, buffer, offset, length, position, prot, flags); + },msync:function (stream, buffer, offset, length, mmapFlags) { + if (!stream || !stream.stream_ops.msync) { + return 0; + } + return stream.stream_ops.msync(stream, buffer, offset, length, mmapFlags); + },munmap:function (stream) { + return 0; + },ioctl:function (stream, cmd, arg) { + if (!stream.stream_ops.ioctl) { + throw new FS.ErrnoError(ERRNO_CODES.ENOTTY); + } + return stream.stream_ops.ioctl(stream, cmd, arg); + },readFile:function (path, opts) { + opts = opts || {}; + opts.flags = opts.flags || 'r'; + opts.encoding = opts.encoding || 'binary'; + if (opts.encoding !== 'utf8' && opts.encoding !== 'binary') { + throw new Error('Invalid encoding type "' + opts.encoding + '"'); + } + var ret; + var stream = FS.open(path, opts.flags); + var stat = FS.stat(path); + var length = stat.size; + var buf = new Uint8Array(length); + FS.read(stream, buf, 0, length, 0); + if (opts.encoding === 'utf8') { + ret = UTF8ArrayToString(buf, 0); + } else if (opts.encoding === 'binary') { + ret = buf; + } + FS.close(stream); + return ret; + },writeFile:function (path, data, opts) { + opts = opts || {}; + opts.flags = opts.flags || 'w'; + opts.encoding = opts.encoding || 'utf8'; + if (opts.encoding !== 'utf8' && opts.encoding !== 'binary') { + throw new Error('Invalid encoding type "' + opts.encoding + '"'); + } + var stream = FS.open(path, opts.flags, opts.mode); + if (opts.encoding === 'utf8') { + var buf = new Uint8Array(lengthBytesUTF8(data)+1); + var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length); + FS.write(stream, buf, 0, actualNumBytes, 0, opts.canOwn); + } else if (opts.encoding === 'binary') { + FS.write(stream, data, 0, data.length, 0, opts.canOwn); + } + FS.close(stream); + },cwd:function () { + return FS.currentPath; + },chdir:function (path) { + var lookup = FS.lookupPath(path, { follow: true }); + if (!FS.isDir(lookup.node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR); + } + var err = FS.nodePermissions(lookup.node, 'x'); + if (err) { + throw new FS.ErrnoError(err); + } + FS.currentPath = lookup.path; + },createDefaultDirectories:function () { + FS.mkdir('/tmp'); + FS.mkdir('/home'); + FS.mkdir('/home/web_user'); + },createDefaultDevices:function () { + // create /dev + FS.mkdir('/dev'); + // setup /dev/null + FS.registerDevice(FS.makedev(1, 3), { + read: function() { return 0; }, + write: function(stream, buffer, offset, length, pos) { return length; } + }); + FS.mkdev('/dev/null', FS.makedev(1, 3)); + // setup /dev/tty and /dev/tty1 + // stderr needs to print output using Module['printErr'] + // so we register a second tty just for it. + TTY.register(FS.makedev(5, 0), TTY.default_tty_ops); + TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops); + FS.mkdev('/dev/tty', FS.makedev(5, 0)); + FS.mkdev('/dev/tty1', FS.makedev(6, 0)); + // setup /dev/[u]random + var random_device; + if (typeof crypto !== 'undefined') { + // for modern web browsers + var randomBuffer = new Uint8Array(1); + random_device = function() { crypto.getRandomValues(randomBuffer); return randomBuffer[0]; }; + } else if (ENVIRONMENT_IS_NODE) { + // for nodejs + random_device = function() { return require('crypto').randomBytes(1)[0]; }; + } else { + // default for ES5 platforms + random_device = function() { return (Math.random()*256)|0; }; + } + FS.createDevice('/dev', 'random', random_device); + FS.createDevice('/dev', 'urandom', random_device); + // we're not going to emulate the actual shm device, + // just create the tmp dirs that reside in it commonly + FS.mkdir('/dev/shm'); + FS.mkdir('/dev/shm/tmp'); + },createSpecialDirectories:function () { + // create /proc/self/fd which allows /proc/self/fd/6 => readlink gives the name of the stream for fd 6 (see test_unistd_ttyname) + FS.mkdir('/proc'); + FS.mkdir('/proc/self'); + FS.mkdir('/proc/self/fd'); + FS.mount({ + mount: function() { + var node = FS.createNode('/proc/self', 'fd', 16384 | 0777, 73); + node.node_ops = { + lookup: function(parent, name) { + var fd = +name; + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(ERRNO_CODES.EBADF); + var ret = { + parent: null, + mount: { mountpoint: 'fake' }, + node_ops: { readlink: function() { return stream.path } } + }; + ret.parent = ret; // make it look like a simple root node + return ret; + } + }; + return node; + } + }, {}, '/proc/self/fd'); + },createStandardStreams:function () { + // TODO deprecate the old functionality of a single + // input / output callback and that utilizes FS.createDevice + // and instead require a unique set of stream ops + + // by default, we symlink the standard streams to the + // default tty devices. however, if the standard streams + // have been overwritten we create a unique device for + // them instead. + if (Module['stdin']) { + FS.createDevice('/dev', 'stdin', Module['stdin']); + } else { + FS.symlink('/dev/tty', '/dev/stdin'); + } + if (Module['stdout']) { + FS.createDevice('/dev', 'stdout', null, Module['stdout']); + } else { + FS.symlink('/dev/tty', '/dev/stdout'); + } + if (Module['stderr']) { + FS.createDevice('/dev', 'stderr', null, Module['stderr']); + } else { + FS.symlink('/dev/tty1', '/dev/stderr'); + } + + // open default streams for the stdin, stdout and stderr devices + var stdin = FS.open('/dev/stdin', 'r'); + assert(stdin.fd === 0, 'invalid handle for stdin (' + stdin.fd + ')'); + + var stdout = FS.open('/dev/stdout', 'w'); + assert(stdout.fd === 1, 'invalid handle for stdout (' + stdout.fd + ')'); + + var stderr = FS.open('/dev/stderr', 'w'); + assert(stderr.fd === 2, 'invalid handle for stderr (' + stderr.fd + ')'); + },ensureErrnoError:function () { + if (FS.ErrnoError) return; + FS.ErrnoError = function ErrnoError(errno, node) { + //Module.printErr(stackTrace()); // useful for debugging + this.node = node; + this.setErrno = function(errno) { + this.errno = errno; + for (var key in ERRNO_CODES) { + if (ERRNO_CODES[key] === errno) { + this.code = key; + break; + } + } + }; + this.setErrno(errno); + this.message = ERRNO_MESSAGES[errno]; + if (this.stack) this.stack = demangleAll(this.stack); + }; + FS.ErrnoError.prototype = new Error(); + FS.ErrnoError.prototype.constructor = FS.ErrnoError; + // Some errors may happen quite a bit, to avoid overhead we reuse them (and suffer a lack of stack info) + [ERRNO_CODES.ENOENT].forEach(function(code) { + FS.genericErrors[code] = new FS.ErrnoError(code); + FS.genericErrors[code].stack = '<generic error, no stack>'; + }); + },staticInit:function () { + FS.ensureErrnoError(); + + FS.nameTable = new Array(4096); + + FS.mount(MEMFS, {}, '/'); + + FS.createDefaultDirectories(); + FS.createDefaultDevices(); + FS.createSpecialDirectories(); + + FS.filesystems = { + 'MEMFS': MEMFS, + 'IDBFS': IDBFS, + 'NODEFS': NODEFS, + 'WORKERFS': WORKERFS, + }; + },init:function (input, output, error) { + assert(!FS.init.initialized, 'FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)'); + FS.init.initialized = true; + + FS.ensureErrnoError(); + + // Allow Module.stdin etc. to provide defaults, if none explicitly passed to us here + Module['stdin'] = input || Module['stdin']; + Module['stdout'] = output || Module['stdout']; + Module['stderr'] = error || Module['stderr']; + + FS.createStandardStreams(); + },quit:function () { + FS.init.initialized = false; + // force-flush all streams, so we get musl std streams printed out + var fflush = Module['_fflush']; + if (fflush) fflush(0); + // close all of our streams + for (var i = 0; i < FS.streams.length; i++) { + var stream = FS.streams[i]; + if (!stream) { + continue; + } + FS.close(stream); + } + },getMode:function (canRead, canWrite) { + var mode = 0; + if (canRead) mode |= 292 | 73; + if (canWrite) mode |= 146; + return mode; + },joinPath:function (parts, forceRelative) { + var path = PATH.join.apply(null, parts); + if (forceRelative && path[0] == '/') path = path.substr(1); + return path; + },absolutePath:function (relative, base) { + return PATH.resolve(base, relative); + },standardizePath:function (path) { + return PATH.normalize(path); + },findObject:function (path, dontResolveLastLink) { + var ret = FS.analyzePath(path, dontResolveLastLink); + if (ret.exists) { + return ret.object; + } else { + ___setErrNo(ret.error); + return null; + } + },analyzePath:function (path, dontResolveLastLink) { + // operate from within the context of the symlink's target + try { + var lookup = FS.lookupPath(path, { follow: !dontResolveLastLink }); + path = lookup.path; + } catch (e) { + } + var ret = { + isRoot: false, exists: false, error: 0, name: null, path: null, object: null, + parentExists: false, parentPath: null, parentObject: null + }; + try { + var lookup = FS.lookupPath(path, { parent: true }); + ret.parentExists = true; + ret.parentPath = lookup.path; + ret.parentObject = lookup.node; + ret.name = PATH.basename(path); + lookup = FS.lookupPath(path, { follow: !dontResolveLastLink }); + ret.exists = true; + ret.path = lookup.path; + ret.object = lookup.node; + ret.name = lookup.node.name; + ret.isRoot = lookup.path === '/'; + } catch (e) { + ret.error = e.errno; + }; + return ret; + },createFolder:function (parent, name, canRead, canWrite) { + var path = PATH.join2(typeof parent === 'string' ? parent : FS.getPath(parent), name); + var mode = FS.getMode(canRead, canWrite); + return FS.mkdir(path, mode); + },createPath:function (parent, path, canRead, canWrite) { + parent = typeof parent === 'string' ? parent : FS.getPath(parent); + var parts = path.split('/').reverse(); + while (parts.length) { + var part = parts.pop(); + if (!part) continue; + var current = PATH.join2(parent, part); + try { + FS.mkdir(current); + } catch (e) { + // ignore EEXIST + } + parent = current; + } + return current; + },createFile:function (parent, name, properties, canRead, canWrite) { + var path = PATH.join2(typeof parent === 'string' ? parent : FS.getPath(parent), name); + var mode = FS.getMode(canRead, canWrite); + return FS.create(path, mode); + },createDataFile:function (parent, name, data, canRead, canWrite, canOwn) { + var path = name ? PATH.join2(typeof parent === 'string' ? parent : FS.getPath(parent), name) : parent; + var mode = FS.getMode(canRead, canWrite); + var node = FS.create(path, mode); + if (data) { + if (typeof data === 'string') { + var arr = new Array(data.length); + for (var i = 0, len = data.length; i < len; ++i) arr[i] = data.charCodeAt(i); + data = arr; + } + // make sure we can write to the file + FS.chmod(node, mode | 146); + var stream = FS.open(node, 'w'); + FS.write(stream, data, 0, data.length, 0, canOwn); + FS.close(stream); + FS.chmod(node, mode); + } + return node; + },createDevice:function (parent, name, input, output) { + var path = PATH.join2(typeof parent === 'string' ? parent : FS.getPath(parent), name); + var mode = FS.getMode(!!input, !!output); + if (!FS.createDevice.major) FS.createDevice.major = 64; + var dev = FS.makedev(FS.createDevice.major++, 0); + // Create a fake device that a set of stream ops to emulate + // the old behavior. + FS.registerDevice(dev, { + open: function(stream) { + stream.seekable = false; + }, + close: function(stream) { + // flush any pending line data + if (output && output.buffer && output.buffer.length) { + output(10); + } + }, + read: function(stream, buffer, offset, length, pos /* ignored */) { + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = input(); + } catch (e) { + throw new FS.ErrnoError(ERRNO_CODES.EIO); + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(ERRNO_CODES.EAGAIN); + } + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset+i] = result; + } + if (bytesRead) { + stream.node.timestamp = Date.now(); + } + return bytesRead; + }, + write: function(stream, buffer, offset, length, pos) { + for (var i = 0; i < length; i++) { + try { + output(buffer[offset+i]); + } catch (e) { + throw new FS.ErrnoError(ERRNO_CODES.EIO); + } + } + if (length) { + stream.node.timestamp = Date.now(); + } + return i; + } + }); + return FS.mkdev(path, mode, dev); + },createLink:function (parent, name, target, canRead, canWrite) { + var path = PATH.join2(typeof parent === 'string' ? parent : FS.getPath(parent), name); + return FS.symlink(target, path); + },forceLoadFile:function (obj) { + if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return true; + var success = true; + if (typeof XMLHttpRequest !== 'undefined') { + throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread."); + } else if (Module['read']) { + // Command-line. + try { + // WARNING: Can't read binary files in V8's d8 or tracemonkey's js, as + // read() will try to parse UTF8. + obj.contents = intArrayFromString(Module['read'](obj.url), true); + obj.usedBytes = obj.contents.length; + } catch (e) { + success = false; + } + } else { + throw new Error('Cannot load without read() or XMLHttpRequest.'); + } + if (!success) ___setErrNo(ERRNO_CODES.EIO); + return success; + },createLazyFile:function (parent, name, url, canRead, canWrite) { + // Lazy chunked Uint8Array (implements get and length from Uint8Array). Actual getting is abstracted away for eventual reuse. + function LazyUint8Array() { + this.lengthKnown = false; + this.chunks = []; // Loaded chunks. Index is the chunk number + } + LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) { + if (idx > this.length-1 || idx < 0) { + return undefined; + } + var chunkOffset = idx % this.chunkSize; + var chunkNum = (idx / this.chunkSize)|0; + return this.getter(chunkNum)[chunkOffset]; + } + LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) { + this.getter = getter; + } + LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() { + // Find length + var xhr = new XMLHttpRequest(); + xhr.open('HEAD', url, false); + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + var datalength = Number(xhr.getResponseHeader("Content-length")); + var header; + var hasByteServing = (header = xhr.getResponseHeader("Accept-Ranges")) && header === "bytes"; + var usesGzip = (header = xhr.getResponseHeader("Content-Encoding")) && header === "gzip"; + + var chunkSize = 1024*1024; // Chunk size in bytes + + if (!hasByteServing) chunkSize = datalength; + + // Function to get a range from the remote URL. + var doXHR = (function(from, to) { + if (from > to) throw new Error("invalid range (" + from + ", " + to + ") or no bytes requested!"); + if (to > datalength-1) throw new Error("only " + datalength + " bytes available! programmer error!"); + + // TODO: Use mozResponseArrayBuffer, responseStream, etc. if available. + var xhr = new XMLHttpRequest(); + xhr.open('GET', url, false); + if (datalength !== chunkSize) xhr.setRequestHeader("Range", "bytes=" + from + "-" + to); + + // Some hints to the browser that we want binary data. + if (typeof Uint8Array != 'undefined') xhr.responseType = 'arraybuffer'; + if (xhr.overrideMimeType) { + xhr.overrideMimeType('text/plain; charset=x-user-defined'); + } + + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + if (xhr.response !== undefined) { + return new Uint8Array(xhr.response || []); + } else { + return intArrayFromString(xhr.responseText || '', true); + } + }); + var lazyArray = this; + lazyArray.setDataGetter(function(chunkNum) { + var start = chunkNum * chunkSize; + var end = (chunkNum+1) * chunkSize - 1; // including this byte + end = Math.min(end, datalength-1); // if datalength-1 is selected, this is the last block + if (typeof(lazyArray.chunks[chunkNum]) === "undefined") { + lazyArray.chunks[chunkNum] = doXHR(start, end); + } + if (typeof(lazyArray.chunks[chunkNum]) === "undefined") throw new Error("doXHR failed!"); + return lazyArray.chunks[chunkNum]; + }); + + if (usesGzip || !datalength) { + // if the server uses gzip or doesn't supply the length, we have to download the whole file to get the (uncompressed) length + chunkSize = datalength = 1; // this will force getter(0)/doXHR do download the whole file + datalength = this.getter(0).length; + chunkSize = datalength; + console.log("LazyFiles on gzip forces download of the whole file when length is accessed"); + } + + this._length = datalength; + this._chunkSize = chunkSize; + this.lengthKnown = true; + } + if (typeof XMLHttpRequest !== 'undefined') { + if (!ENVIRONMENT_IS_WORKER) throw 'Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc'; + var lazyArray = new LazyUint8Array(); + Object.defineProperties(lazyArray, { + length: { + get: function() { + if(!this.lengthKnown) { + this.cacheLength(); + } + return this._length; + } + }, + chunkSize: { + get: function() { + if(!this.lengthKnown) { + this.cacheLength(); + } + return this._chunkSize; + } + } + }); + + var properties = { isDevice: false, contents: lazyArray }; + } else { + var properties = { isDevice: false, url: url }; + } + + var node = FS.createFile(parent, name, properties, canRead, canWrite); + // This is a total hack, but I want to get this lazy file code out of the + // core of MEMFS. If we want to keep this lazy file concept I feel it should + // be its own thin LAZYFS proxying calls to MEMFS. + if (properties.contents) { + node.contents = properties.contents; + } else if (properties.url) { + node.contents = null; + node.url = properties.url; + } + // Add a function that defers querying the file size until it is asked the first time. + Object.defineProperties(node, { + usedBytes: { + get: function() { return this.contents.length; } + } + }); + // override each stream op with one that tries to force load the lazy file first + var stream_ops = {}; + var keys = Object.keys(node.stream_ops); + keys.forEach(function(key) { + var fn = node.stream_ops[key]; + stream_ops[key] = function forceLoadLazyFile() { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(ERRNO_CODES.EIO); + } + return fn.apply(null, arguments); + }; + }); + // use a custom read function + stream_ops.read = function stream_ops_read(stream, buffer, offset, length, position) { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(ERRNO_CODES.EIO); + } + var contents = stream.node.contents; + if (position >= contents.length) + return 0; + var size = Math.min(contents.length - position, length); + assert(size >= 0); + if (contents.slice) { // normal array + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents[position + i]; + } + } else { + for (var i = 0; i < size; i++) { // LazyUint8Array from sync binary XHR + buffer[offset + i] = contents.get(position + i); + } + } + return size; + }; + node.stream_ops = stream_ops; + return node; + },createPreloadedFile:function (parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) { + Browser.init(); + // TODO we should allow people to just pass in a complete filename instead + // of parent and name being that we just join them anyways + var fullname = name ? PATH.resolve(PATH.join2(parent, name)) : parent; + var dep = getUniqueRunDependency('cp ' + fullname); // might have several active requests for the same fullname + function processData(byteArray) { + function finish(byteArray) { + if (preFinish) preFinish(); + if (!dontCreateFile) { + FS.createDataFile(parent, name, byteArray, canRead, canWrite, canOwn); + } + if (onload) onload(); + removeRunDependency(dep); + } + var handled = false; + Module['preloadPlugins'].forEach(function(plugin) { + if (handled) return; + if (plugin['canHandle'](fullname)) { + plugin['handle'](byteArray, fullname, finish, function() { + if (onerror) onerror(); + removeRunDependency(dep); + }); + handled = true; + } + }); + if (!handled) finish(byteArray); + } + addRunDependency(dep); + if (typeof url == 'string') { + Browser.asyncLoad(url, function(byteArray) { + processData(byteArray); + }, onerror); + } else { + processData(url); + } + },indexedDB:function () { + return window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB; + },DB_NAME:function () { + return 'EM_FS_' + window.location.pathname; + },DB_VERSION:20,DB_STORE_NAME:"FILE_DATA",saveFilesToDB:function (paths, onload, onerror) { + onload = onload || function(){}; + onerror = onerror || function(){}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION); + } catch (e) { + return onerror(e); + } + openRequest.onupgradeneeded = function openRequest_onupgradeneeded() { + console.log('creating db'); + var db = openRequest.result; + db.createObjectStore(FS.DB_STORE_NAME); + }; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + var transaction = db.transaction([FS.DB_STORE_NAME], 'readwrite'); + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, fail = 0, total = paths.length; + function finish() { + if (fail == 0) onload(); else onerror(); + } + paths.forEach(function(path) { + var putRequest = files.put(FS.analyzePath(path).object.contents, path); + putRequest.onsuccess = function putRequest_onsuccess() { ok++; if (ok + fail == total) finish() }; + putRequest.onerror = function putRequest_onerror() { fail++; if (ok + fail == total) finish() }; + }); + transaction.onerror = onerror; + }; + openRequest.onerror = onerror; + },loadFilesFromDB:function (paths, onload, onerror) { + onload = onload || function(){}; + onerror = onerror || function(){}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION); + } catch (e) { + return onerror(e); + } + openRequest.onupgradeneeded = onerror; // no database to load from + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + try { + var transaction = db.transaction([FS.DB_STORE_NAME], 'readonly'); + } catch(e) { + onerror(e); + return; + } + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, fail = 0, total = paths.length; + function finish() { + if (fail == 0) onload(); else onerror(); + } + paths.forEach(function(path) { + var getRequest = files.get(path); + getRequest.onsuccess = function getRequest_onsuccess() { + if (FS.analyzePath(path).exists) { + FS.unlink(path); + } + FS.createDataFile(PATH.dirname(path), PATH.basename(path), getRequest.result, true, true, true); + ok++; + if (ok + fail == total) finish(); + }; + getRequest.onerror = function getRequest_onerror() { fail++; if (ok + fail == total) finish() }; + }); + transaction.onerror = onerror; + }; + openRequest.onerror = onerror; + }};var SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:function (dirfd, path) { + if (path[0] !== '/') { + // relative path + var dir; + if (dirfd === -100) { + dir = FS.cwd(); + } else { + var dirstream = FS.getStream(dirfd); + if (!dirstream) throw new FS.ErrnoError(ERRNO_CODES.EBADF); + dir = dirstream.path; + } + path = PATH.join2(dir, path); + } + return path; + },doStat:function (func, path, buf) { + try { + var stat = func(path); + } catch (e) { + if (e && e.node && PATH.normalize(path) !== PATH.normalize(FS.getPath(e.node))) { + // an error occurred while trying to look up the path; we should just report ENOTDIR + return -ERRNO_CODES.ENOTDIR; + } + throw e; + } + HEAP32[((buf)>>2)]=stat.dev; + HEAP32[(((buf)+(4))>>2)]=0; + HEAP32[(((buf)+(8))>>2)]=stat.ino; + HEAP32[(((buf)+(12))>>2)]=stat.mode; + HEAP32[(((buf)+(16))>>2)]=stat.nlink; + HEAP32[(((buf)+(20))>>2)]=stat.uid; + HEAP32[(((buf)+(24))>>2)]=stat.gid; + HEAP32[(((buf)+(28))>>2)]=stat.rdev; + HEAP32[(((buf)+(32))>>2)]=0; + HEAP32[(((buf)+(36))>>2)]=stat.size; + HEAP32[(((buf)+(40))>>2)]=4096; + HEAP32[(((buf)+(44))>>2)]=stat.blocks; + HEAP32[(((buf)+(48))>>2)]=(stat.atime.getTime() / 1000)|0; + HEAP32[(((buf)+(52))>>2)]=0; + HEAP32[(((buf)+(56))>>2)]=(stat.mtime.getTime() / 1000)|0; + HEAP32[(((buf)+(60))>>2)]=0; + HEAP32[(((buf)+(64))>>2)]=(stat.ctime.getTime() / 1000)|0; + HEAP32[(((buf)+(68))>>2)]=0; + HEAP32[(((buf)+(72))>>2)]=stat.ino; + return 0; + },doMsync:function (addr, stream, len, flags) { + var buffer = new Uint8Array(HEAPU8.subarray(addr, addr + len)); + FS.msync(stream, buffer, 0, len, flags); + },doMkdir:function (path, mode) { + // remove a trailing slash, if one - /a/b/ has basename of '', but + // we want to create b in the context of this function + path = PATH.normalize(path); + if (path[path.length-1] === '/') path = path.substr(0, path.length-1); + FS.mkdir(path, mode, 0); + return 0; + },doMknod:function (path, mode, dev) { + // we don't want this in the JS API as it uses mknod to create all nodes. + switch (mode & 61440) { + case 32768: + case 8192: + case 24576: + case 4096: + case 49152: + break; + default: return -ERRNO_CODES.EINVAL; + } + FS.mknod(path, mode, dev); + return 0; + },doReadlink:function (path, buf, bufsize) { + if (bufsize <= 0) return -ERRNO_CODES.EINVAL; + var ret = FS.readlink(path); + ret = ret.slice(0, Math.max(0, bufsize)); + writeStringToMemory(ret, buf, true); + return ret.length; + },doAccess:function (path, amode) { + if (amode & ~7) { + // need a valid mode + return -ERRNO_CODES.EINVAL; + } + var node; + var lookup = FS.lookupPath(path, { follow: true }); + node = lookup.node; + var perms = ''; + if (amode & 4) perms += 'r'; + if (amode & 2) perms += 'w'; + if (amode & 1) perms += 'x'; + if (perms /* otherwise, they've just passed F_OK */ && FS.nodePermissions(node, perms)) { + return -ERRNO_CODES.EACCES; + } + return 0; + },doDup:function (path, flags, suggestFD) { + var suggest = FS.getStream(suggestFD); + if (suggest) FS.close(suggest); + return FS.open(path, flags, 0, suggestFD, suggestFD).fd; + },doReadv:function (stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[(((iov)+(i*8))>>2)]; + var len = HEAP32[(((iov)+(i*8 + 4))>>2)]; + var curr = FS.read(stream, HEAP8,ptr, len, offset); + if (curr < 0) return -1; + ret += curr; + if (curr < len) break; // nothing more to read + } + return ret; + },doWritev:function (stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[(((iov)+(i*8))>>2)]; + var len = HEAP32[(((iov)+(i*8 + 4))>>2)]; + var curr = FS.write(stream, HEAP8,ptr, len, offset); + if (curr < 0) return -1; + ret += curr; + } + return ret; + },varargs:0,get:function (varargs) { + SYSCALLS.varargs += 4; + var ret = HEAP32[(((SYSCALLS.varargs)-(4))>>2)]; + return ret; + },getStr:function () { + var ret = Pointer_stringify(SYSCALLS.get()); + return ret; + },getStreamFromFD:function () { + var stream = FS.getStream(SYSCALLS.get()); + if (!stream) throw new FS.ErrnoError(ERRNO_CODES.EBADF); + return stream; + },getSocketFromFD:function () { + var socket = SOCKFS.getSocket(SYSCALLS.get()); + if (!socket) throw new FS.ErrnoError(ERRNO_CODES.EBADF); + return socket; + },getSocketAddress:function (allowNull) { + var addrp = SYSCALLS.get(), addrlen = SYSCALLS.get(); + if (allowNull && addrp === 0) return null; + var info = __read_sockaddr(addrp, addrlen); + if (info.errno) throw new FS.ErrnoError(info.errno); + info.addr = DNS.lookup_addr(info.addr) || info.addr; + return info; + },get64:function () { + var low = SYSCALLS.get(), high = SYSCALLS.get(); + if (low >= 0) assert(high === 0); + else assert(high === -1); + return low; + },getZero:function () { + assert(SYSCALLS.get() === 0); + }};function ___syscall192(which, varargs) {SYSCALLS.varargs = varargs; + try { + // mmap2 + var addr = SYSCALLS.get(), len = SYSCALLS.get(), prot = SYSCALLS.get(), flags = SYSCALLS.get(), fd = SYSCALLS.get(), off = SYSCALLS.get() + off <<= 12; // undo pgoffset + var ptr; + var allocated = false; + if (fd === -1) { + ptr = _malloc(len); + if (!ptr) return -ERRNO_CODES.ENOMEM; + _memset(ptr, 0, len); + allocated = true; + } else { + var info = FS.getStream(fd); + if (!info) return -ERRNO_CODES.EBADF; + var res = FS.mmap(info, HEAPU8, addr, len, off, prot, flags); + ptr = res.ptr; + allocated = res.allocated; + } + SYSCALLS.mappings[ptr] = { malloc: ptr, len: len, allocated: allocated, fd: fd, flags: flags }; + return ptr; + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + function ___syscall195(which, varargs) {SYSCALLS.varargs = varargs; + try { + // SYS_stat64 + var path = SYSCALLS.getStr(), buf = SYSCALLS.get(); + return SYSCALLS.doStat(FS.stat, path, buf); + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + function ___syscall194(which, varargs) {SYSCALLS.varargs = varargs; + try { + // ftruncate64 + var fd = SYSCALLS.get(), zero = SYSCALLS.getZero(), length = SYSCALLS.get64(); + FS.ftruncate(fd, length); + return 0; + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + function ___syscall197(which, varargs) {SYSCALLS.varargs = varargs; + try { + // SYS_fstat64 + var stream = SYSCALLS.getStreamFromFD(), buf = SYSCALLS.get(); + return SYSCALLS.doStat(FS.stat, stream.path, buf); + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + + function ___syscall202(which, varargs) {SYSCALLS.varargs = varargs; + try { + // getgid32 + return 0; + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + }function ___syscall199() { + return ___syscall202.apply(null, arguments) + } + + function ___assert_fail(condition, filename, line, func) { + ABORT = true; + throw 'Assertion failed: ' + Pointer_stringify(condition) + ', at: ' + [filename ? Pointer_stringify(filename) : 'unknown filename', line, func ? Pointer_stringify(func) : 'unknown function'] + ' at ' + stackTrace(); + } + + function _pthread_mutex_init() {} + + function ___syscall91(which, varargs) {SYSCALLS.varargs = varargs; + try { + // munmap + var addr = SYSCALLS.get(), len = SYSCALLS.get(); + // TODO: support unmmap'ing parts of allocations + var info = SYSCALLS.mappings[addr]; + if (!info) return 0; + if (len === info.len) { + var stream = FS.getStream(info.fd); + SYSCALLS.doMsync(addr, stream, len, info.flags) + FS.munmap(stream); + SYSCALLS.mappings[addr] = null; + if (info.allocated) { + _free(info.malloc); + } + } + return 0; + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + var _UItoD=true; + + function ___syscall6(which, varargs) {SYSCALLS.varargs = varargs; + try { + // close + var stream = SYSCALLS.getStreamFromFD(); + FS.close(stream); + return 0; + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + function ___syscall54(which, varargs) {SYSCALLS.varargs = varargs; + try { + // ioctl + var stream = SYSCALLS.getStreamFromFD(), op = SYSCALLS.get(); + switch (op) { + case 21505: { + if (!stream.tty) return -ERRNO_CODES.ENOTTY; + return 0; + } + case 21506: { + if (!stream.tty) return -ERRNO_CODES.ENOTTY; + return 0; // no-op, not actually adjusting terminal settings + } + case 21519: { + if (!stream.tty) return -ERRNO_CODES.ENOTTY; + var argp = SYSCALLS.get(); + HEAP32[((argp)>>2)]=0; + return 0; + } + case 21520: { + if (!stream.tty) return -ERRNO_CODES.ENOTTY; + return -ERRNO_CODES.EINVAL; // not supported + } + case 21531: { + var argp = SYSCALLS.get(); + return FS.ioctl(stream, op, argp); + } + default: abort('bad ioctl syscall ' + op); + } + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + + var ___tm_current=allocate(44, "i8", ALLOC_STATIC); + + + var ___tm_timezone=allocate(intArrayFromString("GMT"), "i8", ALLOC_STATIC); + + + var _tzname=allocate(8, "i32*", ALLOC_STATIC); + + var _daylight=allocate(1, "i32*", ALLOC_STATIC); + + var _timezone=allocate(1, "i32*", ALLOC_STATIC);function _tzset() { + // TODO: Use (malleable) environment variables instead of system settings. + if (_tzset.called) return; + _tzset.called = true; + + HEAP32[((_timezone)>>2)]=-(new Date()).getTimezoneOffset() * 60; + + var winter = new Date(2000, 0, 1); + var summer = new Date(2000, 6, 1); + HEAP32[((_daylight)>>2)]=Number(winter.getTimezoneOffset() != summer.getTimezoneOffset()); + + function extractZone(date) { + var match = date.toTimeString().match(/\(([A-Za-z ]+)\)$/); + return match ? match[1] : "GMT"; + }; + var winterName = extractZone(winter); + var summerName = extractZone(summer); + var winterNamePtr = allocate(intArrayFromString(winterName), 'i8', ALLOC_NORMAL); + var summerNamePtr = allocate(intArrayFromString(summerName), 'i8', ALLOC_NORMAL); + if (summer.getTimezoneOffset() < winter.getTimezoneOffset()) { + // Northern hemisphere + HEAP32[((_tzname)>>2)]=winterNamePtr; + HEAP32[(((_tzname)+(4))>>2)]=summerNamePtr; + } else { + HEAP32[((_tzname)>>2)]=summerNamePtr; + HEAP32[(((_tzname)+(4))>>2)]=winterNamePtr; + } + }function _localtime_r(time, tmPtr) { + _tzset(); + var date = new Date(HEAP32[((time)>>2)]*1000); + HEAP32[((tmPtr)>>2)]=date.getSeconds(); + HEAP32[(((tmPtr)+(4))>>2)]=date.getMinutes(); + HEAP32[(((tmPtr)+(8))>>2)]=date.getHours(); + HEAP32[(((tmPtr)+(12))>>2)]=date.getDate(); + HEAP32[(((tmPtr)+(16))>>2)]=date.getMonth(); + HEAP32[(((tmPtr)+(20))>>2)]=date.getFullYear()-1900; + HEAP32[(((tmPtr)+(24))>>2)]=date.getDay(); + + var start = new Date(date.getFullYear(), 0, 1); + var yday = ((date.getTime() - start.getTime()) / (1000 * 60 * 60 * 24))|0; + HEAP32[(((tmPtr)+(28))>>2)]=yday; + HEAP32[(((tmPtr)+(36))>>2)]=-(date.getTimezoneOffset() * 60); + + // DST is in December in South + var summerOffset = new Date(2000, 6, 1).getTimezoneOffset(); + var winterOffset = start.getTimezoneOffset(); + var dst = (date.getTimezoneOffset() == Math.min(winterOffset, summerOffset))|0; + HEAP32[(((tmPtr)+(32))>>2)]=dst; + + var zonePtr = HEAP32[(((_tzname)+(dst ? Runtime.QUANTUM_SIZE : 0))>>2)]; + HEAP32[(((tmPtr)+(40))>>2)]=zonePtr; + + return tmPtr; + }function _localtime(time) { + return _localtime_r(time, ___tm_current); + } + + function ___syscall77(which, varargs) {SYSCALLS.varargs = varargs; + try { + // getrusage + var who = SYSCALLS.get(), usage = SYSCALLS.get(); + _memset(usage, 0, 136); + HEAP32[((usage)>>2)]=1; // fake some values + HEAP32[(((usage)+(4))>>2)]=2; + HEAP32[(((usage)+(8))>>2)]=3; + HEAP32[(((usage)+(12))>>2)]=4; + return 0; + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + + Module["_bitshift64Ashr"] = _bitshift64Ashr; + + + Module["_bitshift64Lshr"] = _bitshift64Lshr; + + function ___syscall33(which, varargs) {SYSCALLS.varargs = varargs; + try { + // access + var path = SYSCALLS.getStr(), amode = SYSCALLS.get(); + return SYSCALLS.doAccess(path, amode); + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + var _BDtoIHigh=true; + + function _pthread_cleanup_push(routine, arg) { + __ATEXIT__.push(function() { Runtime.dynCall('vi', routine, [arg]) }) + _pthread_cleanup_push.level = __ATEXIT__.length; + } + + + + + + var _environ=allocate(1, "i32*", ALLOC_STATIC);var ___environ=_environ;function ___buildEnvironment(env) { + // WARNING: Arbitrary limit! + var MAX_ENV_VALUES = 64; + var TOTAL_ENV_SIZE = 1024; + + // Statically allocate memory for the environment. + var poolPtr; + var envPtr; + if (!___buildEnvironment.called) { + ___buildEnvironment.called = true; + // Set default values. Use string keys for Closure Compiler compatibility. + ENV['USER'] = ENV['LOGNAME'] = 'web_user'; + ENV['PATH'] = '/'; + ENV['PWD'] = '/'; + ENV['HOME'] = '/home/web_user'; + ENV['LANG'] = 'C'; + ENV['_'] = Module['thisProgram']; + // Allocate memory. + poolPtr = allocate(TOTAL_ENV_SIZE, 'i8', ALLOC_STATIC); + envPtr = allocate(MAX_ENV_VALUES * 4, + 'i8*', ALLOC_STATIC); + HEAP32[((envPtr)>>2)]=poolPtr; + HEAP32[((_environ)>>2)]=envPtr; + } else { + envPtr = HEAP32[((_environ)>>2)]; + poolPtr = HEAP32[((envPtr)>>2)]; + } + + // Collect key=value lines. + var strings = []; + var totalSize = 0; + for (var key in env) { + if (typeof env[key] === 'string') { + var line = key + '=' + env[key]; + strings.push(line); + totalSize += line.length; + } + } + if (totalSize > TOTAL_ENV_SIZE) { + throw new Error('Environment size exceeded TOTAL_ENV_SIZE!'); + } + + // Make new. + var ptrSize = 4; + for (var i = 0; i < strings.length; i++) { + var line = strings[i]; + writeAsciiToMemory(line, poolPtr); + HEAP32[(((envPtr)+(i * ptrSize))>>2)]=poolPtr; + poolPtr += line.length + 1; + } + HEAP32[(((envPtr)+(strings.length * ptrSize))>>2)]=0; + }var ENV={};function _getenv(name) { + // char *getenv(const char *name); + // http://pubs.opengroup.org/onlinepubs/009695399/functions/getenv.html + if (name === 0) return 0; + name = Pointer_stringify(name); + if (!ENV.hasOwnProperty(name)) return 0; + + if (_getenv.ret) _free(_getenv.ret); + _getenv.ret = allocate(intArrayFromString(ENV[name]), 'i8', ALLOC_NORMAL); + return _getenv.ret; + } + + function _gettimeofday(ptr) { + var now = Date.now(); + HEAP32[((ptr)>>2)]=(now/1000)|0; // seconds + HEAP32[(((ptr)+(4))>>2)]=((now % 1000)*1000)|0; // microseconds + return 0; + } + + function _pthread_mutex_unlock() {} + + + function _emscripten_memcpy_big(dest, src, num) { + HEAPU8.set(HEAPU8.subarray(src, src+num), dest); + return dest; + } + Module["_memcpy"] = _memcpy; + + function ___syscall191(which, varargs) {SYSCALLS.varargs = varargs; + try { + // ugetrlimit + var resource = SYSCALLS.get(), rlim = SYSCALLS.get(); + HEAP32[((rlim)>>2)]=-1; // RLIM_INFINITY + HEAP32[(((rlim)+(4))>>2)]=-1; // RLIM_INFINITY + HEAP32[(((rlim)+(8))>>2)]=-1; // RLIM_INFINITY + HEAP32[(((rlim)+(12))>>2)]=-1; // RLIM_INFINITY + return 0; // just report no limits + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + function _sbrk(bytes) { + // Implement a Linux-like 'memory area' for our 'process'. + // Changes the size of the memory area by |bytes|; returns the + // address of the previous top ('break') of the memory area + // We control the "dynamic" memory - DYNAMIC_BASE to DYNAMICTOP + var self = _sbrk; + if (!self.called) { + DYNAMICTOP = alignMemoryPage(DYNAMICTOP); // make sure we start out aligned + self.called = true; + assert(Runtime.dynamicAlloc); + self.alloc = Runtime.dynamicAlloc; + Runtime.dynamicAlloc = function() { abort('cannot dynamically allocate, sbrk now has control') }; + } + var ret = DYNAMICTOP; + if (bytes != 0) { + var success = self.alloc(bytes); + if (!success) return -1 >>> 0; // sbrk failure code + } + return ret; // Previous break location. + } + + + Module["_memmove"] = _memmove; + + var _BItoD=true; + + function _pthread_mutex_destroy() {} + + function ___syscall201() { + return ___syscall202.apply(null, arguments) + } + + + var PROCINFO={ppid:1,pid:42,sid:42,pgid:42};function ___syscall64(which, varargs) {SYSCALLS.varargs = varargs; + try { + // getppid + return PROCINFO.ppid; + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + function _sysconf(name) { + // long sysconf(int name); + // http://pubs.opengroup.org/onlinepubs/009695399/functions/sysconf.html + switch(name) { + case 30: return PAGE_SIZE; + case 85: return totalMemory / PAGE_SIZE; + case 132: + case 133: + case 12: + case 137: + case 138: + case 15: + case 235: + case 16: + case 17: + case 18: + case 19: + case 20: + case 149: + case 13: + case 10: + case 236: + case 153: + case 9: + case 21: + case 22: + case 159: + case 154: + case 14: + case 77: + case 78: + case 139: + case 80: + case 81: + case 82: + case 68: + case 67: + case 164: + case 11: + case 29: + case 47: + case 48: + case 95: + case 52: + case 51: + case 46: + return 200809; + case 79: + return 0; + case 27: + case 246: + case 127: + case 128: + case 23: + case 24: + case 160: + case 161: + case 181: + case 182: + case 242: + case 183: + case 184: + case 243: + case 244: + case 245: + case 165: + case 178: + case 179: + case 49: + case 50: + case 168: + case 169: + case 175: + case 170: + case 171: + case 172: + case 97: + case 76: + case 32: + case 173: + case 35: + return -1; + case 176: + case 177: + case 7: + case 155: + case 8: + case 157: + case 125: + case 126: + case 92: + case 93: + case 129: + case 130: + case 131: + case 94: + case 91: + return 1; + case 74: + case 60: + case 69: + case 70: + case 4: + return 1024; + case 31: + case 42: + case 72: + return 32; + case 87: + case 26: + case 33: + return 2147483647; + case 34: + case 1: + return 47839; + case 38: + case 36: + return 99; + case 43: + case 37: + return 2048; + case 0: return 2097152; + case 3: return 65536; + case 28: return 32768; + case 44: return 32767; + case 75: return 16384; + case 39: return 1000; + case 89: return 700; + case 71: return 256; + case 40: return 255; + case 2: return 100; + case 180: return 64; + case 25: return 20; + case 5: return 16; + case 6: return 6; + case 73: return 4; + case 84: { + if (typeof navigator === 'object') return navigator['hardwareConcurrency'] || 1; + return 1; + } + } + ___setErrNo(ERRNO_CODES.EINVAL); + return -1; + } + + function ___syscall63(which, varargs) {SYSCALLS.varargs = varargs; + try { + // dup2 + var old = SYSCALLS.getStreamFromFD(), suggestFD = SYSCALLS.get(); + if (old.fd === suggestFD) return suggestFD; + return SYSCALLS.doDup(old.path, old.flags, suggestFD); + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + function ___syscall20(which, varargs) {SYSCALLS.varargs = varargs; + try { + // getpid + return PROCINFO.pid; + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + + Module["_memset"] = _memset; + + var _BDtoILow=true; + + function ___syscall75(which, varargs) {SYSCALLS.varargs = varargs; + try { + // setrlimit + return 0; // no-op + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + function _atexit(func, arg) { + __ATEXIT__.unshift({ func: func, arg: arg }); + } + + function _abort() { + Module['abort'](); + } + + function ___lock() {} + + function ___unlock() {} + + var _floor=Math_floor; + + var cttz_i8 = allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0], "i8", ALLOC_STATIC); + Module["_llvm_cttz_i32"] = _llvm_cttz_i32; + + + + function _emscripten_set_main_loop_timing(mode, value) { + Browser.mainLoop.timingMode = mode; + Browser.mainLoop.timingValue = value; + + if (!Browser.mainLoop.func) { + console.error('emscripten_set_main_loop_timing: Cannot set timing mode for main loop since a main loop does not exist! Call emscripten_set_main_loop first to set one up.'); + return 1; // Return non-zero on failure, can't set timing mode when there is no main loop. + } + + if (mode == 0 /*EM_TIMING_SETTIMEOUT*/) { + Browser.mainLoop.scheduler = function Browser_mainLoop_scheduler_setTimeout() { + setTimeout(Browser.mainLoop.runner, value); // doing this each time means that on exception, we stop + }; + Browser.mainLoop.method = 'timeout'; + } else if (mode == 1 /*EM_TIMING_RAF*/) { + Browser.mainLoop.scheduler = function Browser_mainLoop_scheduler_rAF() { + Browser.requestAnimationFrame(Browser.mainLoop.runner); + }; + Browser.mainLoop.method = 'rAF'; + } else if (mode == 2 /*EM_TIMING_SETIMMEDIATE*/) { + if (!window['setImmediate']) { + // Emulate setImmediate. (note: not a complete polyfill, we don't emulate clearImmediate() to keep code size to minimum, since not needed) + var setImmediates = []; + var emscriptenMainLoopMessageId = '__emcc'; + function Browser_setImmediate_messageHandler(event) { + if (event.source === window && event.data === emscriptenMainLoopMessageId) { + event.stopPropagation(); + setImmediates.shift()(); + } + } + window.addEventListener("message", Browser_setImmediate_messageHandler, true); + window['setImmediate'] = function Browser_emulated_setImmediate(func) { + setImmediates.push(func); + window.postMessage(emscriptenMainLoopMessageId, "*"); + } + } + Browser.mainLoop.scheduler = function Browser_mainLoop_scheduler_setImmediate() { + window['setImmediate'](Browser.mainLoop.runner); + }; + Browser.mainLoop.method = 'immediate'; + } + return 0; + }function _emscripten_set_main_loop(func, fps, simulateInfiniteLoop, arg, noSetTiming) { + Module['noExitRuntime'] = true; + + assert(!Browser.mainLoop.func, 'emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.'); + + Browser.mainLoop.func = func; + Browser.mainLoop.arg = arg; + + var thisMainLoopId = Browser.mainLoop.currentlyRunningMainloop; + + Browser.mainLoop.runner = function Browser_mainLoop_runner() { + if (ABORT) return; + if (Browser.mainLoop.queue.length > 0) { + var start = Date.now(); + var blocker = Browser.mainLoop.queue.shift(); + blocker.func(blocker.arg); + if (Browser.mainLoop.remainingBlockers) { + var remaining = Browser.mainLoop.remainingBlockers; + var next = remaining%1 == 0 ? remaining-1 : Math.floor(remaining); + if (blocker.counted) { + Browser.mainLoop.remainingBlockers = next; + } else { + // not counted, but move the progress along a tiny bit + next = next + 0.5; // do not steal all the next one's progress + Browser.mainLoop.remainingBlockers = (8*remaining + next)/9; + } + } + console.log('main loop blocker "' + blocker.name + '" took ' + (Date.now() - start) + ' ms'); //, left: ' + Browser.mainLoop.remainingBlockers); + Browser.mainLoop.updateStatus(); + + // catches pause/resume main loop from blocker execution + if (thisMainLoopId < Browser.mainLoop.currentlyRunningMainloop) return; + + setTimeout(Browser.mainLoop.runner, 0); + return; + } + + // catch pauses from non-main loop sources + if (thisMainLoopId < Browser.mainLoop.currentlyRunningMainloop) return; + + // Implement very basic swap interval control + Browser.mainLoop.currentFrameNumber = Browser.mainLoop.currentFrameNumber + 1 | 0; + if (Browser.mainLoop.timingMode == 1/*EM_TIMING_RAF*/ && Browser.mainLoop.timingValue > 1 && Browser.mainLoop.currentFrameNumber % Browser.mainLoop.timingValue != 0) { + // Not the scheduled time to render this frame - skip. + Browser.mainLoop.scheduler(); + return; + } + + // Signal GL rendering layer that processing of a new frame is about to start. This helps it optimize + // VBO double-buffering and reduce GPU stalls. + + if (Browser.mainLoop.method === 'timeout' && Module.ctx) { + Module.printErr('Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!'); + Browser.mainLoop.method = ''; // just warn once per call to set main loop + } + + Browser.mainLoop.runIter(function() { + if (typeof arg !== 'undefined') { + Runtime.dynCall('vi', func, [arg]); + } else { + Runtime.dynCall('v', func); + } + }); + + // catch pauses from the main loop itself + if (thisMainLoopId < Browser.mainLoop.currentlyRunningMainloop) return; + + // Queue new audio data. This is important to be right after the main loop invocation, so that we will immediately be able + // to queue the newest produced audio samples. + // TODO: Consider adding pre- and post- rAF callbacks so that GL.newRenderingFrameStarted() and SDL.audio.queueNewAudioData() + // do not need to be hardcoded into this function, but can be more generic. + if (typeof SDL === 'object' && SDL.audio && SDL.audio.queueNewAudioData) SDL.audio.queueNewAudioData(); + + Browser.mainLoop.scheduler(); + } + + if (!noSetTiming) { + if (fps && fps > 0) _emscripten_set_main_loop_timing(0/*EM_TIMING_SETTIMEOUT*/, 1000.0 / fps); + else _emscripten_set_main_loop_timing(1/*EM_TIMING_RAF*/, 1); // Do rAF by rendering each frame (no decimating) + + Browser.mainLoop.scheduler(); + } + + if (simulateInfiniteLoop) { + throw 'SimulateInfiniteLoop'; + } + }var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function () { + Browser.mainLoop.scheduler = null; + Browser.mainLoop.currentlyRunningMainloop++; // Incrementing this signals the previous main loop that it's now become old, and it must return. + },resume:function () { + Browser.mainLoop.currentlyRunningMainloop++; + var timingMode = Browser.mainLoop.timingMode; + var timingValue = Browser.mainLoop.timingValue; + var func = Browser.mainLoop.func; + Browser.mainLoop.func = null; + _emscripten_set_main_loop(func, 0, false, Browser.mainLoop.arg, true /* do not set timing and call scheduler, we will do it on the next lines */); + _emscripten_set_main_loop_timing(timingMode, timingValue); + Browser.mainLoop.scheduler(); + },updateStatus:function () { + if (Module['setStatus']) { + var message = Module['statusMessage'] || 'Please wait...'; + var remaining = Browser.mainLoop.remainingBlockers; + var expected = Browser.mainLoop.expectedBlockers; + if (remaining) { + if (remaining < expected) { + Module['setStatus'](message + ' (' + (expected - remaining) + '/' + expected + ')'); + } else { + Module['setStatus'](message); + } + } else { + Module['setStatus'](''); + } + } + },runIter:function (func) { + if (ABORT) return; + if (Module['preMainLoop']) { + var preRet = Module['preMainLoop'](); + if (preRet === false) { + return; // |return false| skips a frame + } + } + try { + func(); + } catch (e) { + if (e instanceof ExitStatus) { + return; + } else { + if (e && typeof e === 'object' && e.stack) Module.printErr('exception thrown: ' + [e, e.stack]); + throw e; + } + } + if (Module['postMainLoop']) Module['postMainLoop'](); + }},isFullScreen:false,pointerLock:false,moduleContextCreatedCallbacks:[],workers:[],init:function () { + if (!Module["preloadPlugins"]) Module["preloadPlugins"] = []; // needs to exist even in workers + + if (Browser.initted) return; + Browser.initted = true; + + try { + new Blob(); + Browser.hasBlobConstructor = true; + } catch(e) { + Browser.hasBlobConstructor = false; + console.log("warning: no blob constructor, cannot create blobs with mimetypes"); + } + Browser.BlobBuilder = typeof MozBlobBuilder != "undefined" ? MozBlobBuilder : (typeof WebKitBlobBuilder != "undefined" ? WebKitBlobBuilder : (!Browser.hasBlobConstructor ? console.log("warning: no BlobBuilder") : null)); + Browser.URLObject = typeof window != "undefined" ? (window.URL ? window.URL : window.webkitURL) : undefined; + if (!Module.noImageDecoding && typeof Browser.URLObject === 'undefined') { + console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."); + Module.noImageDecoding = true; + } + + // Support for plugins that can process preloaded files. You can add more of these to + // your app by creating and appending to Module.preloadPlugins. + // + // Each plugin is asked if it can handle a file based on the file's name. If it can, + // it is given the file's raw data. When it is done, it calls a callback with the file's + // (possibly modified) data. For example, a plugin might decompress a file, or it + // might create some side data structure for use later (like an Image element, etc.). + + var imagePlugin = {}; + imagePlugin['canHandle'] = function imagePlugin_canHandle(name) { + return !Module.noImageDecoding && /\.(jpg|jpeg|png|bmp)$/i.test(name); + }; + imagePlugin['handle'] = function imagePlugin_handle(byteArray, name, onload, onerror) { + var b = null; + if (Browser.hasBlobConstructor) { + try { + b = new Blob([byteArray], { type: Browser.getMimetype(name) }); + if (b.size !== byteArray.length) { // Safari bug #118630 + // Safari's Blob can only take an ArrayBuffer + b = new Blob([(new Uint8Array(byteArray)).buffer], { type: Browser.getMimetype(name) }); + } + } catch(e) { + Runtime.warnOnce('Blob constructor present but fails: ' + e + '; falling back to blob builder'); + } + } + if (!b) { + var bb = new Browser.BlobBuilder(); + bb.append((new Uint8Array(byteArray)).buffer); // we need to pass a buffer, and must copy the array to get the right data range + b = bb.getBlob(); + } + var url = Browser.URLObject.createObjectURL(b); + assert(typeof url == 'string', 'createObjectURL must return a url as a string'); + var img = new Image(); + img.onload = function img_onload() { + assert(img.complete, 'Image ' + name + ' could not be decoded'); + var canvas = document.createElement('canvas'); + canvas.width = img.width; + canvas.height = img.height; + var ctx = canvas.getContext('2d'); + ctx.drawImage(img, 0, 0); + Module["preloadedImages"][name] = canvas; + Browser.URLObject.revokeObjectURL(url); + if (onload) onload(byteArray); + }; + img.onerror = function img_onerror(event) { + console.log('Image ' + url + ' could not be decoded'); + if (onerror) onerror(); + }; + img.src = url; + }; + Module['preloadPlugins'].push(imagePlugin); + + var audioPlugin = {}; + audioPlugin['canHandle'] = function audioPlugin_canHandle(name) { + return !Module.noAudioDecoding && name.substr(-4) in { '.ogg': 1, '.wav': 1, '.mp3': 1 }; + }; + audioPlugin['handle'] = function audioPlugin_handle(byteArray, name, onload, onerror) { + var done = false; + function finish(audio) { + if (done) return; + done = true; + Module["preloadedAudios"][name] = audio; + if (onload) onload(byteArray); + } + function fail() { + if (done) return; + done = true; + Module["preloadedAudios"][name] = new Audio(); // empty shim + if (onerror) onerror(); + } + if (Browser.hasBlobConstructor) { + try { + var b = new Blob([byteArray], { type: Browser.getMimetype(name) }); + } catch(e) { + return fail(); + } + var url = Browser.URLObject.createObjectURL(b); // XXX we never revoke this! + assert(typeof url == 'string', 'createObjectURL must return a url as a string'); + var audio = new Audio(); + audio.addEventListener('canplaythrough', function() { finish(audio) }, false); // use addEventListener due to chromium bug 124926 + audio.onerror = function audio_onerror(event) { + if (done) return; + console.log('warning: browser could not fully decode audio ' + name + ', trying slower base64 approach'); + function encode64(data) { + var BASE = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'; + var PAD = '='; + var ret = ''; + var leftchar = 0; + var leftbits = 0; + for (var i = 0; i < data.length; i++) { + leftchar = (leftchar << 8) | data[i]; + leftbits += 8; + while (leftbits >= 6) { + var curr = (leftchar >> (leftbits-6)) & 0x3f; + leftbits -= 6; + ret += BASE[curr]; + } + } + if (leftbits == 2) { + ret += BASE[(leftchar&3) << 4]; + ret += PAD + PAD; + } else if (leftbits == 4) { + ret += BASE[(leftchar&0xf) << 2]; + ret += PAD; + } + return ret; + } + audio.src = 'data:audio/x-' + name.substr(-3) + ';base64,' + encode64(byteArray); + finish(audio); // we don't wait for confirmation this worked - but it's worth trying + }; + audio.src = url; + // workaround for chrome bug 124926 - we do not always get oncanplaythrough or onerror + Browser.safeSetTimeout(function() { + finish(audio); // try to use it even though it is not necessarily ready to play + }, 10000); + } else { + return fail(); + } + }; + Module['preloadPlugins'].push(audioPlugin); + + // Canvas event setup + + var canvas = Module['canvas']; + function pointerLockChange() { + Browser.pointerLock = document['pointerLockElement'] === canvas || + document['mozPointerLockElement'] === canvas || + document['webkitPointerLockElement'] === canvas || + document['msPointerLockElement'] === canvas; + } + if (canvas) { + // forced aspect ratio can be enabled by defining 'forcedAspectRatio' on Module + // Module['forcedAspectRatio'] = 4 / 3; + + canvas.requestPointerLock = canvas['requestPointerLock'] || + canvas['mozRequestPointerLock'] || + canvas['webkitRequestPointerLock'] || + canvas['msRequestPointerLock'] || + function(){}; + canvas.exitPointerLock = document['exitPointerLock'] || + document['mozExitPointerLock'] || + document['webkitExitPointerLock'] || + document['msExitPointerLock'] || + function(){}; // no-op if function does not exist + canvas.exitPointerLock = canvas.exitPointerLock.bind(document); + + + document.addEventListener('pointerlockchange', pointerLockChange, false); + document.addEventListener('mozpointerlockchange', pointerLockChange, false); + document.addEventListener('webkitpointerlockchange', pointerLockChange, false); + document.addEventListener('mspointerlockchange', pointerLockChange, false); + + if (Module['elementPointerLock']) { + canvas.addEventListener("click", function(ev) { + if (!Browser.pointerLock && canvas.requestPointerLock) { + canvas.requestPointerLock(); + ev.preventDefault(); + } + }, false); + } + } + },createContext:function (canvas, useWebGL, setInModule, webGLContextAttributes) { + if (useWebGL && Module.ctx && canvas == Module.canvas) return Module.ctx; // no need to recreate GL context if it's already been created for this canvas. + + var ctx; + var contextHandle; + if (useWebGL) { + // For GLES2/desktop GL compatibility, adjust a few defaults to be different to WebGL defaults, so that they align better with the desktop defaults. + var contextAttributes = { + antialias: false, + alpha: false + }; + + if (webGLContextAttributes) { + for (var attribute in webGLContextAttributes) { + contextAttributes[attribute] = webGLContextAttributes[attribute]; + } + } + + contextHandle = GL.createContext(canvas, contextAttributes); + if (contextHandle) { + ctx = GL.getContext(contextHandle).GLctx; + } + // Set the background of the WebGL canvas to black + canvas.style.backgroundColor = "black"; + } else { + ctx = canvas.getContext('2d'); + } + + if (!ctx) return null; + + if (setInModule) { + if (!useWebGL) assert(typeof GLctx === 'undefined', 'cannot set in module if GLctx is used, but we are a non-GL context that would replace it'); + + Module.ctx = ctx; + if (useWebGL) GL.makeContextCurrent(contextHandle); + Module.useWebGL = useWebGL; + Browser.moduleContextCreatedCallbacks.forEach(function(callback) { callback() }); + Browser.init(); + } + return ctx; + },destroyContext:function (canvas, useWebGL, setInModule) {},fullScreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullScreen:function (lockPointer, resizeCanvas, vrDevice) { + Browser.lockPointer = lockPointer; + Browser.resizeCanvas = resizeCanvas; + Browser.vrDevice = vrDevice; + if (typeof Browser.lockPointer === 'undefined') Browser.lockPointer = true; + if (typeof Browser.resizeCanvas === 'undefined') Browser.resizeCanvas = false; + if (typeof Browser.vrDevice === 'undefined') Browser.vrDevice = null; + + var canvas = Module['canvas']; + function fullScreenChange() { + Browser.isFullScreen = false; + var canvasContainer = canvas.parentNode; + if ((document['webkitFullScreenElement'] || document['webkitFullscreenElement'] || + document['mozFullScreenElement'] || document['mozFullscreenElement'] || + document['fullScreenElement'] || document['fullscreenElement'] || + document['msFullScreenElement'] || document['msFullscreenElement'] || + document['webkitCurrentFullScreenElement']) === canvasContainer) { + canvas.cancelFullScreen = document['cancelFullScreen'] || + document['mozCancelFullScreen'] || + document['webkitCancelFullScreen'] || + document['msExitFullscreen'] || + document['exitFullscreen'] || + function() {}; + canvas.cancelFullScreen = canvas.cancelFullScreen.bind(document); + if (Browser.lockPointer) canvas.requestPointerLock(); + Browser.isFullScreen = true; + if (Browser.resizeCanvas) Browser.setFullScreenCanvasSize(); + } else { + + // remove the full screen specific parent of the canvas again to restore the HTML structure from before going full screen + canvasContainer.parentNode.insertBefore(canvas, canvasContainer); + canvasContainer.parentNode.removeChild(canvasContainer); + + if (Browser.resizeCanvas) Browser.setWindowedCanvasSize(); + } + if (Module['onFullScreen']) Module['onFullScreen'](Browser.isFullScreen); + Browser.updateCanvasDimensions(canvas); + } + + if (!Browser.fullScreenHandlersInstalled) { + Browser.fullScreenHandlersInstalled = true; + document.addEventListener('fullscreenchange', fullScreenChange, false); + document.addEventListener('mozfullscreenchange', fullScreenChange, false); + document.addEventListener('webkitfullscreenchange', fullScreenChange, false); + document.addEventListener('MSFullscreenChange', fullScreenChange, false); + } + + // create a new parent to ensure the canvas has no siblings. this allows browsers to optimize full screen performance when its parent is the full screen root + var canvasContainer = document.createElement("div"); + canvas.parentNode.insertBefore(canvasContainer, canvas); + canvasContainer.appendChild(canvas); + + // use parent of canvas as full screen root to allow aspect ratio correction (Firefox stretches the root to screen size) + canvasContainer.requestFullScreen = canvasContainer['requestFullScreen'] || + canvasContainer['mozRequestFullScreen'] || + canvasContainer['msRequestFullscreen'] || + (canvasContainer['webkitRequestFullScreen'] ? function() { canvasContainer['webkitRequestFullScreen'](Element['ALLOW_KEYBOARD_INPUT']) } : null); + + if (vrDevice) { + canvasContainer.requestFullScreen({ vrDisplay: vrDevice }); + } else { + canvasContainer.requestFullScreen(); + } + },nextRAF:0,fakeRequestAnimationFrame:function (func) { + // try to keep 60fps between calls to here + var now = Date.now(); + if (Browser.nextRAF === 0) { + Browser.nextRAF = now + 1000/60; + } else { + while (now + 2 >= Browser.nextRAF) { // fudge a little, to avoid timer jitter causing us to do lots of delay:0 + Browser.nextRAF += 1000/60; + } + } + var delay = Math.max(Browser.nextRAF - now, 0); + setTimeout(func, delay); + },requestAnimationFrame:function requestAnimationFrame(func) { + if (typeof window === 'undefined') { // Provide fallback to setTimeout if window is undefined (e.g. in Node.js) + Browser.fakeRequestAnimationFrame(func); + } else { + if (!window.requestAnimationFrame) { + window.requestAnimationFrame = window['requestAnimationFrame'] || + window['mozRequestAnimationFrame'] || + window['webkitRequestAnimationFrame'] || + window['msRequestAnimationFrame'] || + window['oRequestAnimationFrame'] || + Browser.fakeRequestAnimationFrame; + } + window.requestAnimationFrame(func); + } + },safeCallback:function (func) { + return function() { + if (!ABORT) return func.apply(null, arguments); + }; + },allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function () { + Browser.allowAsyncCallbacks = false; + },resumeAsyncCallbacks:function () { // marks future callbacks as ok to execute, and synchronously runs any remaining ones right now + Browser.allowAsyncCallbacks = true; + if (Browser.queuedAsyncCallbacks.length > 0) { + var callbacks = Browser.queuedAsyncCallbacks; + Browser.queuedAsyncCallbacks = []; + callbacks.forEach(function(func) { + func(); + }); + } + },safeRequestAnimationFrame:function (func) { + return Browser.requestAnimationFrame(function() { + if (ABORT) return; + if (Browser.allowAsyncCallbacks) { + func(); + } else { + Browser.queuedAsyncCallbacks.push(func); + } + }); + },safeSetTimeout:function (func, timeout) { + Module['noExitRuntime'] = true; + return setTimeout(function() { + if (ABORT) return; + if (Browser.allowAsyncCallbacks) { + func(); + } else { + Browser.queuedAsyncCallbacks.push(func); + } + }, timeout); + },safeSetInterval:function (func, timeout) { + Module['noExitRuntime'] = true; + return setInterval(function() { + if (ABORT) return; + if (Browser.allowAsyncCallbacks) { + func(); + } // drop it on the floor otherwise, next interval will kick in + }, timeout); + },getMimetype:function (name) { + return { + 'jpg': 'image/jpeg', + 'jpeg': 'image/jpeg', + 'png': 'image/png', + 'bmp': 'image/bmp', + 'ogg': 'audio/ogg', + 'wav': 'audio/wav', + 'mp3': 'audio/mpeg' + }[name.substr(name.lastIndexOf('.')+1)]; + },getUserMedia:function (func) { + if(!window.getUserMedia) { + window.getUserMedia = navigator['getUserMedia'] || + navigator['mozGetUserMedia']; + } + window.getUserMedia(func); + },getMovementX:function (event) { + return event['movementX'] || + event['mozMovementX'] || + event['webkitMovementX'] || + 0; + },getMovementY:function (event) { + return event['movementY'] || + event['mozMovementY'] || + event['webkitMovementY'] || + 0; + },getMouseWheelDelta:function (event) { + var delta = 0; + switch (event.type) { + case 'DOMMouseScroll': + delta = event.detail; + break; + case 'mousewheel': + delta = event.wheelDelta; + break; + case 'wheel': + delta = event['deltaY']; + break; + default: + throw 'unrecognized mouse wheel event: ' + event.type; + } + return delta; + },mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function (event) { // event should be mousemove, mousedown or mouseup + if (Browser.pointerLock) { + // When the pointer is locked, calculate the coordinates + // based on the movement of the mouse. + // Workaround for Firefox bug 764498 + if (event.type != 'mousemove' && + ('mozMovementX' in event)) { + Browser.mouseMovementX = Browser.mouseMovementY = 0; + } else { + Browser.mouseMovementX = Browser.getMovementX(event); + Browser.mouseMovementY = Browser.getMovementY(event); + } + + // check if SDL is available + if (typeof SDL != "undefined") { + Browser.mouseX = SDL.mouseX + Browser.mouseMovementX; + Browser.mouseY = SDL.mouseY + Browser.mouseMovementY; + } else { + // just add the mouse delta to the current absolut mouse position + // FIXME: ideally this should be clamped against the canvas size and zero + Browser.mouseX += Browser.mouseMovementX; + Browser.mouseY += Browser.mouseMovementY; + } + } else { + // Otherwise, calculate the movement based on the changes + // in the coordinates. + var rect = Module["canvas"].getBoundingClientRect(); + var cw = Module["canvas"].width; + var ch = Module["canvas"].height; + + // Neither .scrollX or .pageXOffset are defined in a spec, but + // we prefer .scrollX because it is currently in a spec draft. + // (see: http://www.w3.org/TR/2013/WD-cssom-view-20131217/) + var scrollX = ((typeof window.scrollX !== 'undefined') ? window.scrollX : window.pageXOffset); + var scrollY = ((typeof window.scrollY !== 'undefined') ? window.scrollY : window.pageYOffset); + // If this assert lands, it's likely because the browser doesn't support scrollX or pageXOffset + // and we have no viable fallback. + assert((typeof scrollX !== 'undefined') && (typeof scrollY !== 'undefined'), 'Unable to retrieve scroll position, mouse positions likely broken.'); + + if (event.type === 'touchstart' || event.type === 'touchend' || event.type === 'touchmove') { + var touch = event.touch; + if (touch === undefined) { + return; // the "touch" property is only defined in SDL + + } + var adjustedX = touch.pageX - (scrollX + rect.left); + var adjustedY = touch.pageY - (scrollY + rect.top); + + adjustedX = adjustedX * (cw / rect.width); + adjustedY = adjustedY * (ch / rect.height); + + var coords = { x: adjustedX, y: adjustedY }; + + if (event.type === 'touchstart') { + Browser.lastTouches[touch.identifier] = coords; + Browser.touches[touch.identifier] = coords; + } else if (event.type === 'touchend' || event.type === 'touchmove') { + var last = Browser.touches[touch.identifier]; + if (!last) last = coords; + Browser.lastTouches[touch.identifier] = last; + Browser.touches[touch.identifier] = coords; + } + return; + } + + var x = event.pageX - (scrollX + rect.left); + var y = event.pageY - (scrollY + rect.top); + + // the canvas might be CSS-scaled compared to its backbuffer; + // SDL-using content will want mouse coordinates in terms + // of backbuffer units. + x = x * (cw / rect.width); + y = y * (ch / rect.height); + + Browser.mouseMovementX = x - Browser.mouseX; + Browser.mouseMovementY = y - Browser.mouseY; + Browser.mouseX = x; + Browser.mouseY = y; + } + },xhrLoad:function (url, onload, onerror) { + var xhr = new XMLHttpRequest(); + xhr.open('GET', url, true); + xhr.responseType = 'arraybuffer'; + xhr.onload = function xhr_onload() { + if (xhr.status == 200 || (xhr.status == 0 && xhr.response)) { // file URLs can return 0 + onload(xhr.response); + } else { + onerror(); + } + }; + xhr.onerror = onerror; + xhr.send(null); + },asyncLoad:function (url, onload, onerror, noRunDep) { + Browser.xhrLoad(url, function(arrayBuffer) { + assert(arrayBuffer, 'Loading data file "' + url + '" failed (no arrayBuffer).'); + onload(new Uint8Array(arrayBuffer)); + if (!noRunDep) removeRunDependency('al ' + url); + }, function(event) { + if (onerror) { + onerror(); + } else { + throw 'Loading data file "' + url + '" failed.'; + } + }); + if (!noRunDep) addRunDependency('al ' + url); + },resizeListeners:[],updateResizeListeners:function () { + var canvas = Module['canvas']; + Browser.resizeListeners.forEach(function(listener) { + listener(canvas.width, canvas.height); + }); + },setCanvasSize:function (width, height, noUpdates) { + var canvas = Module['canvas']; + Browser.updateCanvasDimensions(canvas, width, height); + if (!noUpdates) Browser.updateResizeListeners(); + },windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:function () { + // check if SDL is available + if (typeof SDL != "undefined") { + var flags = HEAPU32[((SDL.screen+Runtime.QUANTUM_SIZE*0)>>2)]; + flags = flags | 0x00800000; // set SDL_FULLSCREEN flag + HEAP32[((SDL.screen+Runtime.QUANTUM_SIZE*0)>>2)]=flags + } + Browser.updateResizeListeners(); + },setWindowedCanvasSize:function () { + // check if SDL is available + if (typeof SDL != "undefined") { + var flags = HEAPU32[((SDL.screen+Runtime.QUANTUM_SIZE*0)>>2)]; + flags = flags & ~0x00800000; // clear SDL_FULLSCREEN flag + HEAP32[((SDL.screen+Runtime.QUANTUM_SIZE*0)>>2)]=flags + } + Browser.updateResizeListeners(); + },updateCanvasDimensions:function (canvas, wNative, hNative) { + if (wNative && hNative) { + canvas.widthNative = wNative; + canvas.heightNative = hNative; + } else { + wNative = canvas.widthNative; + hNative = canvas.heightNative; + } + var w = wNative; + var h = hNative; + if (Module['forcedAspectRatio'] && Module['forcedAspectRatio'] > 0) { + if (w/h < Module['forcedAspectRatio']) { + w = Math.round(h * Module['forcedAspectRatio']); + } else { + h = Math.round(w / Module['forcedAspectRatio']); + } + } + if (((document['webkitFullScreenElement'] || document['webkitFullscreenElement'] || + document['mozFullScreenElement'] || document['mozFullscreenElement'] || + document['fullScreenElement'] || document['fullscreenElement'] || + document['msFullScreenElement'] || document['msFullscreenElement'] || + document['webkitCurrentFullScreenElement']) === canvas.parentNode) && (typeof screen != 'undefined')) { + var factor = Math.min(screen.width / w, screen.height / h); + w = Math.round(w * factor); + h = Math.round(h * factor); + } + if (Browser.resizeCanvas) { + if (canvas.width != w) canvas.width = w; + if (canvas.height != h) canvas.height = h; + if (typeof canvas.style != 'undefined') { + canvas.style.removeProperty( "width"); + canvas.style.removeProperty("height"); + } + } else { + if (canvas.width != wNative) canvas.width = wNative; + if (canvas.height != hNative) canvas.height = hNative; + if (typeof canvas.style != 'undefined') { + if (w != wNative || h != hNative) { + canvas.style.setProperty( "width", w + "px", "important"); + canvas.style.setProperty("height", h + "px", "important"); + } else { + canvas.style.removeProperty( "width"); + canvas.style.removeProperty("height"); + } + } + } + },wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:function () { + var handle = Browser.nextWgetRequestHandle; + Browser.nextWgetRequestHandle++; + return handle; + }}; + + + Module["_llvm_bswap_i32"] = _llvm_bswap_i32; + + function ___syscall10(which, varargs) {SYSCALLS.varargs = varargs; + try { + // unlink + var path = SYSCALLS.getStr(); + FS.unlink(path); + return 0; + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + + Module["_bitshift64Shl"] = _bitshift64Shl; + + function ___syscall3(which, varargs) {SYSCALLS.varargs = varargs; + try { + // read + var stream = SYSCALLS.getStreamFromFD(), buf = SYSCALLS.get(), count = SYSCALLS.get(); + return FS.read(stream, HEAP8,buf, count); + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + function ___syscall5(which, varargs) {SYSCALLS.varargs = varargs; + try { + // open + var pathname = SYSCALLS.getStr(), flags = SYSCALLS.get(), mode = SYSCALLS.get() // optional TODO + var stream = FS.open(pathname, flags, mode); + return stream.fd; + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + function ___syscall4(which, varargs) {SYSCALLS.varargs = varargs; + try { + // write + var stream = SYSCALLS.getStreamFromFD(), buf = SYSCALLS.get(), count = SYSCALLS.get(); + return FS.write(stream, HEAP8,buf, count); + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + function _llvm_stackrestore(p) { + var self = _llvm_stacksave; + var ret = self.LLVM_SAVEDSTACKS[p]; + self.LLVM_SAVEDSTACKS.splice(p, 1); + Runtime.stackRestore(ret); + } + + function _llvm_stacksave() { + var self = _llvm_stacksave; + if (!self.LLVM_SAVEDSTACKS) { + self.LLVM_SAVEDSTACKS = []; + } + self.LLVM_SAVEDSTACKS.push(Runtime.stackSave()); + return self.LLVM_SAVEDSTACKS.length-1; + } + + function _clock() { + if (_clock.start === undefined) _clock.start = Date.now(); + return ((Date.now() - _clock.start) * (1000000 / 1000))|0; + } + + function _pthread_cleanup_pop() { + assert(_pthread_cleanup_push.level == __ATEXIT__.length, 'cannot pop if something else added meanwhile!'); + __ATEXIT__.pop(); + _pthread_cleanup_push.level = __ATEXIT__.length; + } + + function ___syscall340(which, varargs) {SYSCALLS.varargs = varargs; + try { + // prlimit64 + var pid = SYSCALLS.get(), resource = SYSCALLS.get(), new_limit = SYSCALLS.get(), old_limit = SYSCALLS.get(); + if (old_limit) { // just report no limits + HEAP32[((old_limit)>>2)]=-1; // RLIM_INFINITY + HEAP32[(((old_limit)+(4))>>2)]=-1; // RLIM_INFINITY + HEAP32[(((old_limit)+(8))>>2)]=-1; // RLIM_INFINITY + HEAP32[(((old_limit)+(12))>>2)]=-1; // RLIM_INFINITY + } + return 0; + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + + function __isLeapYear(year) { + return year%4 === 0 && (year%100 !== 0 || year%400 === 0); + } + + function __arraySum(array, index) { + var sum = 0; + for (var i = 0; i <= index; sum += array[i++]); + return sum; + } + + + var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31]; + + var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(date, days) { + var newDate = new Date(date.getTime()); + while(days > 0) { + var leap = __isLeapYear(newDate.getFullYear()); + var currentMonth = newDate.getMonth(); + var daysInCurrentMonth = (leap ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR)[currentMonth]; + + if (days > daysInCurrentMonth-newDate.getDate()) { + // we spill over to next month + days -= (daysInCurrentMonth-newDate.getDate()+1); + newDate.setDate(1); + if (currentMonth < 11) { + newDate.setMonth(currentMonth+1) + } else { + newDate.setMonth(0); + newDate.setFullYear(newDate.getFullYear()+1); + } + } else { + // we stay in current month + newDate.setDate(newDate.getDate()+days); + return newDate; + } + } + + return newDate; + }function _strftime(s, maxsize, format, tm) { + // size_t strftime(char *restrict s, size_t maxsize, const char *restrict format, const struct tm *restrict timeptr); + // http://pubs.opengroup.org/onlinepubs/009695399/functions/strftime.html + + var tm_zone = HEAP32[(((tm)+(40))>>2)]; + + var date = { + tm_sec: HEAP32[((tm)>>2)], + tm_min: HEAP32[(((tm)+(4))>>2)], + tm_hour: HEAP32[(((tm)+(8))>>2)], + tm_mday: HEAP32[(((tm)+(12))>>2)], + tm_mon: HEAP32[(((tm)+(16))>>2)], + tm_year: HEAP32[(((tm)+(20))>>2)], + tm_wday: HEAP32[(((tm)+(24))>>2)], + tm_yday: HEAP32[(((tm)+(28))>>2)], + tm_isdst: HEAP32[(((tm)+(32))>>2)], + tm_gmtoff: HEAP32[(((tm)+(36))>>2)], + tm_zone: tm_zone ? Pointer_stringify(tm_zone) : '' + }; + + var pattern = Pointer_stringify(format); + + // expand format + var EXPANSION_RULES_1 = { + '%c': '%a %b %d %H:%M:%S %Y', // Replaced by the locale's appropriate date and time representation - e.g., Mon Aug 3 14:02:01 2013 + '%D': '%m/%d/%y', // Equivalent to %m / %d / %y + '%F': '%Y-%m-%d', // Equivalent to %Y - %m - %d + '%h': '%b', // Equivalent to %b + '%r': '%I:%M:%S %p', // Replaced by the time in a.m. and p.m. notation + '%R': '%H:%M', // Replaced by the time in 24-hour notation + '%T': '%H:%M:%S', // Replaced by the time + '%x': '%m/%d/%y', // Replaced by the locale's appropriate date representation + '%X': '%H:%M:%S' // Replaced by the locale's appropriate date representation + }; + for (var rule in EXPANSION_RULES_1) { + pattern = pattern.replace(new RegExp(rule, 'g'), EXPANSION_RULES_1[rule]); + } + + var WEEKDAYS = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday']; + var MONTHS = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']; + + function leadingSomething(value, digits, character) { + var str = typeof value === 'number' ? value.toString() : (value || ''); + while (str.length < digits) { + str = character[0]+str; + } + return str; + }; + + function leadingNulls(value, digits) { + return leadingSomething(value, digits, '0'); + }; + + function compareByDay(date1, date2) { + function sgn(value) { + return value < 0 ? -1 : (value > 0 ? 1 : 0); + }; + + var compare; + if ((compare = sgn(date1.getFullYear()-date2.getFullYear())) === 0) { + if ((compare = sgn(date1.getMonth()-date2.getMonth())) === 0) { + compare = sgn(date1.getDate()-date2.getDate()); + } + } + return compare; + }; + + function getFirstWeekStartDate(janFourth) { + switch (janFourth.getDay()) { + case 0: // Sunday + return new Date(janFourth.getFullYear()-1, 11, 29); + case 1: // Monday + return janFourth; + case 2: // Tuesday + return new Date(janFourth.getFullYear(), 0, 3); + case 3: // Wednesday + return new Date(janFourth.getFullYear(), 0, 2); + case 4: // Thursday + return new Date(janFourth.getFullYear(), 0, 1); + case 5: // Friday + return new Date(janFourth.getFullYear()-1, 11, 31); + case 6: // Saturday + return new Date(janFourth.getFullYear()-1, 11, 30); + } + }; + + function getWeekBasedYear(date) { + var thisDate = __addDays(new Date(date.tm_year+1900, 0, 1), date.tm_yday); + + var janFourthThisYear = new Date(thisDate.getFullYear(), 0, 4); + var janFourthNextYear = new Date(thisDate.getFullYear()+1, 0, 4); + + var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); + var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); + + if (compareByDay(firstWeekStartThisYear, thisDate) <= 0) { + // this date is after the start of the first week of this year + if (compareByDay(firstWeekStartNextYear, thisDate) <= 0) { + return thisDate.getFullYear()+1; + } else { + return thisDate.getFullYear(); + } + } else { + return thisDate.getFullYear()-1; + } + }; + + var EXPANSION_RULES_2 = { + '%a': function(date) { + return WEEKDAYS[date.tm_wday].substring(0,3); + }, + '%A': function(date) { + return WEEKDAYS[date.tm_wday]; + }, + '%b': function(date) { + return MONTHS[date.tm_mon].substring(0,3); + }, + '%B': function(date) { + return MONTHS[date.tm_mon]; + }, + '%C': function(date) { + var year = date.tm_year+1900; + return leadingNulls((year/100)|0,2); + }, + '%d': function(date) { + return leadingNulls(date.tm_mday, 2); + }, + '%e': function(date) { + return leadingSomething(date.tm_mday, 2, ' '); + }, + '%g': function(date) { + // %g, %G, and %V give values according to the ISO 8601:2000 standard week-based year. + // In this system, weeks begin on a Monday and week 1 of the year is the week that includes + // January 4th, which is also the week that includes the first Thursday of the year, and + // is also the first week that contains at least four days in the year. + // If the first Monday of January is the 2nd, 3rd, or 4th, the preceding days are part of + // the last week of the preceding year; thus, for Saturday 2nd January 1999, + // %G is replaced by 1998 and %V is replaced by 53. If December 29th, 30th, + // or 31st is a Monday, it and any following days are part of week 1 of the following year. + // Thus, for Tuesday 30th December 1997, %G is replaced by 1998 and %V is replaced by 01. + + return getWeekBasedYear(date).toString().substring(2); + }, + '%G': function(date) { + return getWeekBasedYear(date); + }, + '%H': function(date) { + return leadingNulls(date.tm_hour, 2); + }, + '%I': function(date) { + var twelveHour = date.tm_hour; + if (twelveHour == 0) twelveHour = 12; + else if (twelveHour > 12) twelveHour -= 12; + return leadingNulls(twelveHour, 2); + }, + '%j': function(date) { + // Day of the year (001-366) + return leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, date.tm_mon-1), 3); + }, + '%m': function(date) { + return leadingNulls(date.tm_mon+1, 2); + }, + '%M': function(date) { + return leadingNulls(date.tm_min, 2); + }, + '%n': function() { + return '\n'; + }, + '%p': function(date) { + if (date.tm_hour >= 0 && date.tm_hour < 12) { + return 'AM'; + } else { + return 'PM'; + } + }, + '%S': function(date) { + return leadingNulls(date.tm_sec, 2); + }, + '%t': function() { + return '\t'; + }, + '%u': function(date) { + var day = new Date(date.tm_year+1900, date.tm_mon+1, date.tm_mday, 0, 0, 0, 0); + return day.getDay() || 7; + }, + '%U': function(date) { + // Replaced by the week number of the year as a decimal number [00,53]. + // The first Sunday of January is the first day of week 1; + // days in the new year before this are in week 0. [ tm_year, tm_wday, tm_yday] + var janFirst = new Date(date.tm_year+1900, 0, 1); + var firstSunday = janFirst.getDay() === 0 ? janFirst : __addDays(janFirst, 7-janFirst.getDay()); + var endDate = new Date(date.tm_year+1900, date.tm_mon, date.tm_mday); + + // is target date after the first Sunday? + if (compareByDay(firstSunday, endDate) < 0) { + // calculate difference in days between first Sunday and endDate + var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth()-1)-31; + var firstSundayUntilEndJanuary = 31-firstSunday.getDate(); + var days = firstSundayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate(); + return leadingNulls(Math.ceil(days/7), 2); + } + + return compareByDay(firstSunday, janFirst) === 0 ? '01': '00'; + }, + '%V': function(date) { + // Replaced by the week number of the year (Monday as the first day of the week) + // as a decimal number [01,53]. If the week containing 1 January has four + // or more days in the new year, then it is considered week 1. + // Otherwise, it is the last week of the previous year, and the next week is week 1. + // Both January 4th and the first Thursday of January are always in week 1. [ tm_year, tm_wday, tm_yday] + var janFourthThisYear = new Date(date.tm_year+1900, 0, 4); + var janFourthNextYear = new Date(date.tm_year+1901, 0, 4); + + var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); + var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); + + var endDate = __addDays(new Date(date.tm_year+1900, 0, 1), date.tm_yday); + + if (compareByDay(endDate, firstWeekStartThisYear) < 0) { + // if given date is before this years first week, then it belongs to the 53rd week of last year + return '53'; + } + + if (compareByDay(firstWeekStartNextYear, endDate) <= 0) { + // if given date is after next years first week, then it belongs to the 01th week of next year + return '01'; + } + + // given date is in between CW 01..53 of this calendar year + var daysDifference; + if (firstWeekStartThisYear.getFullYear() < date.tm_year+1900) { + // first CW of this year starts last year + daysDifference = date.tm_yday+32-firstWeekStartThisYear.getDate() + } else { + // first CW of this year starts this year + daysDifference = date.tm_yday+1-firstWeekStartThisYear.getDate(); + } + return leadingNulls(Math.ceil(daysDifference/7), 2); + }, + '%w': function(date) { + var day = new Date(date.tm_year+1900, date.tm_mon+1, date.tm_mday, 0, 0, 0, 0); + return day.getDay(); + }, + '%W': function(date) { + // Replaced by the week number of the year as a decimal number [00,53]. + // The first Monday of January is the first day of week 1; + // days in the new year before this are in week 0. [ tm_year, tm_wday, tm_yday] + var janFirst = new Date(date.tm_year, 0, 1); + var firstMonday = janFirst.getDay() === 1 ? janFirst : __addDays(janFirst, janFirst.getDay() === 0 ? 1 : 7-janFirst.getDay()+1); + var endDate = new Date(date.tm_year+1900, date.tm_mon, date.tm_mday); + + // is target date after the first Monday? + if (compareByDay(firstMonday, endDate) < 0) { + var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth()-1)-31; + var firstMondayUntilEndJanuary = 31-firstMonday.getDate(); + var days = firstMondayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate(); + return leadingNulls(Math.ceil(days/7), 2); + } + return compareByDay(firstMonday, janFirst) === 0 ? '01': '00'; + }, + '%y': function(date) { + // Replaced by the last two digits of the year as a decimal number [00,99]. [ tm_year] + return (date.tm_year+1900).toString().substring(2); + }, + '%Y': function(date) { + // Replaced by the year as a decimal number (for example, 1997). [ tm_year] + return date.tm_year+1900; + }, + '%z': function(date) { + // Replaced by the offset from UTC in the ISO 8601:2000 standard format ( +hhmm or -hhmm ). + // For example, "-0430" means 4 hours 30 minutes behind UTC (west of Greenwich). + var off = date.tm_gmtoff; + var ahead = off >= 0; + off = Math.abs(off) / 60; + // convert from minutes into hhmm format (which means 60 minutes = 100 units) + off = (off / 60)*100 + (off % 60); + return (ahead ? '+' : '-') + String("0000" + off).slice(-4); + }, + '%Z': function(date) { + return date.tm_zone; + }, + '%%': function() { + return '%'; + } + }; + for (var rule in EXPANSION_RULES_2) { + if (pattern.indexOf(rule) >= 0) { + pattern = pattern.replace(new RegExp(rule, 'g'), EXPANSION_RULES_2[rule](date)); + } + } + + var bytes = intArrayFromString(pattern, false); + if (bytes.length > maxsize) { + return 0; + } + + writeArrayToMemory(bytes, s); + return bytes.length-1; + } + + function _time(ptr) { + var ret = (Date.now()/1000)|0; + if (ptr) { + HEAP32[((ptr)>>2)]=ret; + } + return ret; + } + + function ___syscall142(which, varargs) {SYSCALLS.varargs = varargs; + try { + // newselect + // readfds are supported, + // writefds checks socket open status + // exceptfds not supported + // timeout is always 0 - fully async + var nfds = SYSCALLS.get(), readfds = SYSCALLS.get(), writefds = SYSCALLS.get(), exceptfds = SYSCALLS.get(), timeout = SYSCALLS.get(); + + assert(nfds <= 64, 'nfds must be less than or equal to 64'); // fd sets have 64 bits // TODO: this could be 1024 based on current musl headers + assert(!exceptfds, 'exceptfds not supported'); + + var total = 0; + + var srcReadLow = (readfds ? HEAP32[((readfds)>>2)] : 0), + srcReadHigh = (readfds ? HEAP32[(((readfds)+(4))>>2)] : 0); + var srcWriteLow = (writefds ? HEAP32[((writefds)>>2)] : 0), + srcWriteHigh = (writefds ? HEAP32[(((writefds)+(4))>>2)] : 0); + var srcExceptLow = (exceptfds ? HEAP32[((exceptfds)>>2)] : 0), + srcExceptHigh = (exceptfds ? HEAP32[(((exceptfds)+(4))>>2)] : 0); + + var dstReadLow = 0, + dstReadHigh = 0; + var dstWriteLow = 0, + dstWriteHigh = 0; + var dstExceptLow = 0, + dstExceptHigh = 0; + + var allLow = (readfds ? HEAP32[((readfds)>>2)] : 0) | + (writefds ? HEAP32[((writefds)>>2)] : 0) | + (exceptfds ? HEAP32[((exceptfds)>>2)] : 0); + var allHigh = (readfds ? HEAP32[(((readfds)+(4))>>2)] : 0) | + (writefds ? HEAP32[(((writefds)+(4))>>2)] : 0) | + (exceptfds ? HEAP32[(((exceptfds)+(4))>>2)] : 0); + + function check(fd, low, high, val) { + return (fd < 32 ? (low & val) : (high & val)); + } + + for (var fd = 0; fd < nfds; fd++) { + var mask = 1 << (fd % 32); + if (!(check(fd, allLow, allHigh, mask))) { + continue; // index isn't in the set + } + + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(ERRNO_CODES.EBADF); + + var flags = SYSCALLS.DEFAULT_POLLMASK; + + if (stream.stream_ops.poll) { + flags = stream.stream_ops.poll(stream); + } + + if ((flags & 1) && check(fd, srcReadLow, srcReadHigh, mask)) { + fd < 32 ? (dstReadLow = dstReadLow | mask) : (dstReadHigh = dstReadHigh | mask); + total++; + } + if ((flags & 4) && check(fd, srcWriteLow, srcWriteHigh, mask)) { + fd < 32 ? (dstWriteLow = dstWriteLow | mask) : (dstWriteHigh = dstWriteHigh | mask); + total++; + } + if ((flags & 2) && check(fd, srcExceptLow, srcExceptHigh, mask)) { + fd < 32 ? (dstExceptLow = dstExceptLow | mask) : (dstExceptHigh = dstExceptHigh | mask); + total++; + } + } + + if (readfds) { + HEAP32[((readfds)>>2)]=dstReadLow; + HEAP32[(((readfds)+(4))>>2)]=dstReadHigh; + } + if (writefds) { + HEAP32[((writefds)>>2)]=dstWriteLow; + HEAP32[(((writefds)+(4))>>2)]=dstWriteHigh; + } + if (exceptfds) { + HEAP32[((exceptfds)>>2)]=dstExceptLow; + HEAP32[(((exceptfds)+(4))>>2)]=dstExceptHigh; + } + + return total; + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + function _pthread_self() { + //FIXME: assumes only a single thread + return 0; + } + + function ___syscall140(which, varargs) {SYSCALLS.varargs = varargs; + try { + // llseek + var stream = SYSCALLS.getStreamFromFD(), offset_high = SYSCALLS.get(), offset_low = SYSCALLS.get(), result = SYSCALLS.get(), whence = SYSCALLS.get(); + var offset = offset_low; + assert(offset_high === 0); + FS.llseek(stream, offset, whence); + HEAP32[((result)>>2)]=stream.position; + if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null; // reset readdir state + return 0; + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + function ___syscall146(which, varargs) {SYSCALLS.varargs = varargs; + try { + // writev + var stream = SYSCALLS.getStreamFromFD(), iov = SYSCALLS.get(), iovcnt = SYSCALLS.get(); + return SYSCALLS.doWritev(stream, iov, iovcnt); + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + function ___syscall221(which, varargs) {SYSCALLS.varargs = varargs; + try { + // fcntl64 + var stream = SYSCALLS.getStreamFromFD(), cmd = SYSCALLS.get(); + switch (cmd) { + case 0: { + var arg = SYSCALLS.get(); + if (arg < 0) { + return -ERRNO_CODES.EINVAL; + } + var newStream; + newStream = FS.open(stream.path, stream.flags, 0, arg); + return newStream.fd; + } + case 1: + case 2: + return 0; // FD_CLOEXEC makes no sense for a single process. + case 3: + return stream.flags; + case 4: { + var arg = SYSCALLS.get(); + stream.flags |= arg; + return 0; + } + case 12: + case 12: { + var arg = SYSCALLS.get(); + var offset = 0; + // We're always unlocked. + HEAP16[(((arg)+(offset))>>1)]=2; + return 0; + } + case 13: + case 14: + case 13: + case 14: + return 0; // Pretend that the locking is successful. + case 16: + case 8: + return -ERRNO_CODES.EINVAL; // These are for sockets. We don't have them fully implemented yet. + case 9: + // musl trusts getown return values, due to a bug where they must be, as they overlap with errors. just return -1 here, so fnctl() returns that, and we set errno ourselves. + ___setErrNo(ERRNO_CODES.EINVAL); + return -1; + default: { + return -ERRNO_CODES.EINVAL; + } + } + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } + + function ___syscall145(which, varargs) {SYSCALLS.varargs = varargs; + try { + // readv + var stream = SYSCALLS.getStreamFromFD(), iov = SYSCALLS.get(), iovcnt = SYSCALLS.get(); + return SYSCALLS.doReadv(stream, iov, iovcnt); + } catch (e) { + if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } + } +FS.staticInit();__ATINIT__.unshift(function() { if (!Module["noFSInit"] && !FS.init.initialized) FS.init() });__ATMAIN__.push(function() { FS.ignorePermissions = false });__ATEXIT__.push(function() { FS.quit() });Module["FS_createFolder"] = FS.createFolder;Module["FS_createPath"] = FS.createPath;Module["FS_createDataFile"] = FS.createDataFile;Module["FS_createPreloadedFile"] = FS.createPreloadedFile;Module["FS_createLazyFile"] = FS.createLazyFile;Module["FS_createLink"] = FS.createLink;Module["FS_createDevice"] = FS.createDevice;Module["FS_unlink"] = FS.unlink; +__ATINIT__.unshift(function() { TTY.init() });__ATEXIT__.push(function() { TTY.shutdown() }); +if (ENVIRONMENT_IS_NODE) { var fs = require("fs"); var NODEJS_PATH = require("path"); NODEFS.staticInit(); } +___buildEnvironment(ENV); +Module["requestFullScreen"] = function Module_requestFullScreen(lockPointer, resizeCanvas, vrDevice) { Browser.requestFullScreen(lockPointer, resizeCanvas, vrDevice) }; + Module["requestAnimationFrame"] = function Module_requestAnimationFrame(func) { Browser.requestAnimationFrame(func) }; + Module["setCanvasSize"] = function Module_setCanvasSize(width, height, noUpdates) { Browser.setCanvasSize(width, height, noUpdates) }; + Module["pauseMainLoop"] = function Module_pauseMainLoop() { Browser.mainLoop.pause() }; + Module["resumeMainLoop"] = function Module_resumeMainLoop() { Browser.mainLoop.resume() }; + Module["getUserMedia"] = function Module_getUserMedia() { Browser.getUserMedia() } + Module["createContext"] = function Module_createContext(canvas, useWebGL, setInModule, webGLContextAttributes) { return Browser.createContext(canvas, useWebGL, setInModule, webGLContextAttributes) } +STACK_BASE = STACKTOP = Runtime.alignMemory(STATICTOP); + +staticSealed = true; // seal the static portion of memory + +STACK_MAX = STACK_BASE + TOTAL_STACK; + +DYNAMIC_BASE = DYNAMICTOP = Runtime.alignMemory(STACK_MAX); + +assert(DYNAMIC_BASE < TOTAL_MEMORY, "TOTAL_MEMORY not big enough for stack"); + + + +function nullFunc_iiii(x) { Module["printErr"]("Invalid function pointer called with signature 'iiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x) } + +function nullFunc_viiiii(x) { Module["printErr"]("Invalid function pointer called with signature 'viiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x) } + +function nullFunc_vi(x) { Module["printErr"]("Invalid function pointer called with signature 'vi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x) } + +function nullFunc_vii(x) { Module["printErr"]("Invalid function pointer called with signature 'vii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x) } + +function nullFunc_ii(x) { Module["printErr"]("Invalid function pointer called with signature 'ii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x) } + +function nullFunc_viii(x) { Module["printErr"]("Invalid function pointer called with signature 'viii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x) } + +function nullFunc_v(x) { Module["printErr"]("Invalid function pointer called with signature 'v'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x) } + +function nullFunc_iiiii(x) { Module["printErr"]("Invalid function pointer called with signature 'iiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x) } + +function nullFunc_viiiiii(x) { Module["printErr"]("Invalid function pointer called with signature 'viiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x) } + +function nullFunc_iii(x) { Module["printErr"]("Invalid function pointer called with signature 'iii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x) } + +function nullFunc_viiii(x) { Module["printErr"]("Invalid function pointer called with signature 'viiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x) } + +function invoke_iiii(index,a1,a2,a3) { + try { + return Module["dynCall_iiii"](index,a1,a2,a3); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_viiiii(index,a1,a2,a3,a4,a5) { + try { + Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_vi(index,a1) { + try { + Module["dynCall_vi"](index,a1); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_vii(index,a1,a2) { + try { + Module["dynCall_vii"](index,a1,a2); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_ii(index,a1) { + try { + return Module["dynCall_ii"](index,a1); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_viii(index,a1,a2,a3) { + try { + Module["dynCall_viii"](index,a1,a2,a3); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_v(index) { + try { + Module["dynCall_v"](index); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_iiiii(index,a1,a2,a3,a4) { + try { + return Module["dynCall_iiiii"](index,a1,a2,a3,a4); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6) { + try { + Module["dynCall_viiiiii"](index,a1,a2,a3,a4,a5,a6); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_iii(index,a1,a2) { + try { + return Module["dynCall_iii"](index,a1,a2); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_viiii(index,a1,a2,a3,a4) { + try { + Module["dynCall_viiii"](index,a1,a2,a3,a4); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +Module.asmGlobalArg = { "Math": Math, "Int8Array": Int8Array, "Int16Array": Int16Array, "Int32Array": Int32Array, "Uint8Array": Uint8Array, "Uint16Array": Uint16Array, "Uint32Array": Uint32Array, "Float32Array": Float32Array, "Float64Array": Float64Array, "NaN": NaN, "Infinity": Infinity }; + +Module.asmLibraryArg = { "abort": abort, "assert": assert, "nullFunc_iiii": nullFunc_iiii, "nullFunc_viiiii": nullFunc_viiiii, "nullFunc_vi": nullFunc_vi, "nullFunc_vii": nullFunc_vii, "nullFunc_ii": nullFunc_ii, "nullFunc_viii": nullFunc_viii, "nullFunc_v": nullFunc_v, "nullFunc_iiiii": nullFunc_iiiii, "nullFunc_viiiiii": nullFunc_viiiiii, "nullFunc_iii": nullFunc_iii, "nullFunc_viiii": nullFunc_viiii, "invoke_iiii": invoke_iiii, "invoke_viiiii": invoke_viiiii, "invoke_vi": invoke_vi, "invoke_vii": invoke_vii, "invoke_ii": invoke_ii, "invoke_viii": invoke_viii, "invoke_v": invoke_v, "invoke_iiiii": invoke_iiiii, "invoke_viiiiii": invoke_viiiiii, "invoke_iii": invoke_iii, "invoke_viiii": invoke_viiii, "_pthread_cleanup_pop": _pthread_cleanup_pop, "___syscall221": ___syscall221, "_pthread_mutex_init": _pthread_mutex_init, "___syscall64": ___syscall64, "___syscall63": ___syscall63, "___syscall6": ___syscall6, "___syscall202": ___syscall202, "___setErrNo": ___setErrNo, "___syscall20": ___syscall20, "_llvm_stackrestore": _llvm_stackrestore, "___assert_fail": ___assert_fail, "_floor": _floor, "__addDays": __addDays, "_localtime_r": _localtime_r, "_tzset": _tzset, "_emscripten_set_main_loop_timing": _emscripten_set_main_loop_timing, "_sbrk": _sbrk, "___syscall192": ___syscall192, "___syscall191": ___syscall191, "___syscall197": ___syscall197, "___syscall195": ___syscall195, "___syscall194": ___syscall194, "___syscall199": ___syscall199, "_sysconf": _sysconf, "_strftime": _strftime, "_clock": _clock, "__arraySum": __arraySum, "_emscripten_memcpy_big": _emscripten_memcpy_big, "___syscall91": ___syscall91, "___buildEnvironment": ___buildEnvironment, "_pthread_mutex_destroy": _pthread_mutex_destroy, "_pthread_self": _pthread_self, "___syscall75": ___syscall75, "_pthread_mutex_unlock": _pthread_mutex_unlock, "___syscall77": ___syscall77, "_llvm_stacksave": _llvm_stacksave, "_getenv": _getenv, "___syscall33": ___syscall33, "___syscall54": ___syscall54, "___unlock": ___unlock, "__isLeapYear": __isLeapYear, "_emscripten_set_main_loop": _emscripten_set_main_loop, "___syscall10": ___syscall10, "___syscall3": ___syscall3, "___syscall340": ___syscall340, "___lock": ___lock, "_abort": _abort, "___syscall5": ___syscall5, "___syscall4": ___syscall4, "_time": _time, "_pthread_mutex_lock": _pthread_mutex_lock, "_gettimeofday": _gettimeofday, "___syscall201": ___syscall201, "_atexit": _atexit, "___syscall140": ___syscall140, "_localtime": _localtime, "___syscall142": ___syscall142, "_pthread_cleanup_push": _pthread_cleanup_push, "___syscall145": ___syscall145, "___syscall146": ___syscall146, "STACKTOP": STACKTOP, "STACK_MAX": STACK_MAX, "tempDoublePtr": tempDoublePtr, "ABORT": ABORT, "cttz_i8": cttz_i8 }; +// EMSCRIPTEN_START_ASM +var asm = (function(global, env, buffer) { + 'almost asm'; + + + var HEAP8 = new global.Int8Array(buffer); + var HEAP16 = new global.Int16Array(buffer); + var HEAP32 = new global.Int32Array(buffer); + var HEAPU8 = new global.Uint8Array(buffer); + var HEAPU16 = new global.Uint16Array(buffer); + var HEAPU32 = new global.Uint32Array(buffer); + var HEAPF32 = new global.Float32Array(buffer); + var HEAPF64 = new global.Float64Array(buffer); + + + var STACKTOP=env.STACKTOP|0; + var STACK_MAX=env.STACK_MAX|0; + var tempDoublePtr=env.tempDoublePtr|0; + var ABORT=env.ABORT|0; + var cttz_i8=env.cttz_i8|0; + + var __THREW__ = 0; + var threwValue = 0; + var setjmpId = 0; + var undef = 0; + var nan = global.NaN, inf = global.Infinity; + var tempInt = 0, tempBigInt = 0, tempBigIntP = 0, tempBigIntS = 0, tempBigIntR = 0.0, tempBigIntI = 0, tempBigIntD = 0, tempValue = 0, tempDouble = 0.0; + + var tempRet0 = 0; + var tempRet1 = 0; + var tempRet2 = 0; + var tempRet3 = 0; + var tempRet4 = 0; + var tempRet5 = 0; + var tempRet6 = 0; + var tempRet7 = 0; + var tempRet8 = 0; + var tempRet9 = 0; + var Math_floor=global.Math.floor; + var Math_abs=global.Math.abs; + var Math_sqrt=global.Math.sqrt; + var Math_pow=global.Math.pow; + var Math_cos=global.Math.cos; + var Math_sin=global.Math.sin; + var Math_tan=global.Math.tan; + var Math_acos=global.Math.acos; + var Math_asin=global.Math.asin; + var Math_atan=global.Math.atan; + var Math_atan2=global.Math.atan2; + var Math_exp=global.Math.exp; + var Math_log=global.Math.log; + var Math_ceil=global.Math.ceil; + var Math_imul=global.Math.imul; + var Math_min=global.Math.min; + var Math_clz32=global.Math.clz32; + var abort=env.abort; + var assert=env.assert; + var nullFunc_iiii=env.nullFunc_iiii; + var nullFunc_viiiii=env.nullFunc_viiiii; + var nullFunc_vi=env.nullFunc_vi; + var nullFunc_vii=env.nullFunc_vii; + var nullFunc_ii=env.nullFunc_ii; + var nullFunc_viii=env.nullFunc_viii; + var nullFunc_v=env.nullFunc_v; + var nullFunc_iiiii=env.nullFunc_iiiii; + var nullFunc_viiiiii=env.nullFunc_viiiiii; + var nullFunc_iii=env.nullFunc_iii; + var nullFunc_viiii=env.nullFunc_viiii; + var invoke_iiii=env.invoke_iiii; + var invoke_viiiii=env.invoke_viiiii; + var invoke_vi=env.invoke_vi; + var invoke_vii=env.invoke_vii; + var invoke_ii=env.invoke_ii; + var invoke_viii=env.invoke_viii; + var invoke_v=env.invoke_v; + var invoke_iiiii=env.invoke_iiiii; + var invoke_viiiiii=env.invoke_viiiiii; + var invoke_iii=env.invoke_iii; + var invoke_viiii=env.invoke_viiii; + var _pthread_cleanup_pop=env._pthread_cleanup_pop; + var ___syscall221=env.___syscall221; + var _pthread_mutex_init=env._pthread_mutex_init; + var ___syscall64=env.___syscall64; + var ___syscall63=env.___syscall63; + var ___syscall6=env.___syscall6; + var ___syscall202=env.___syscall202; + var ___setErrNo=env.___setErrNo; + var ___syscall20=env.___syscall20; + var _llvm_stackrestore=env._llvm_stackrestore; + var ___assert_fail=env.___assert_fail; + var _floor=env._floor; + var __addDays=env.__addDays; + var _localtime_r=env._localtime_r; + var _tzset=env._tzset; + var _emscripten_set_main_loop_timing=env._emscripten_set_main_loop_timing; + var _sbrk=env._sbrk; + var ___syscall192=env.___syscall192; + var ___syscall191=env.___syscall191; + var ___syscall197=env.___syscall197; + var ___syscall195=env.___syscall195; + var ___syscall194=env.___syscall194; + var ___syscall199=env.___syscall199; + var _sysconf=env._sysconf; + var _strftime=env._strftime; + var _clock=env._clock; + var __arraySum=env.__arraySum; + var _emscripten_memcpy_big=env._emscripten_memcpy_big; + var ___syscall91=env.___syscall91; + var ___buildEnvironment=env.___buildEnvironment; + var _pthread_mutex_destroy=env._pthread_mutex_destroy; + var _pthread_self=env._pthread_self; + var ___syscall75=env.___syscall75; + var _pthread_mutex_unlock=env._pthread_mutex_unlock; + var ___syscall77=env.___syscall77; + var _llvm_stacksave=env._llvm_stacksave; + var _getenv=env._getenv; + var ___syscall33=env.___syscall33; + var ___syscall54=env.___syscall54; + var ___unlock=env.___unlock; + var __isLeapYear=env.__isLeapYear; + var _emscripten_set_main_loop=env._emscripten_set_main_loop; + var ___syscall10=env.___syscall10; + var ___syscall3=env.___syscall3; + var ___syscall340=env.___syscall340; + var ___lock=env.___lock; + var _abort=env._abort; + var ___syscall5=env.___syscall5; + var ___syscall4=env.___syscall4; + var _time=env._time; + var _pthread_mutex_lock=env._pthread_mutex_lock; + var _gettimeofday=env._gettimeofday; + var ___syscall201=env.___syscall201; + var _atexit=env._atexit; + var ___syscall140=env.___syscall140; + var _localtime=env._localtime; + var ___syscall142=env.___syscall142; + var _pthread_cleanup_push=env._pthread_cleanup_push; + var ___syscall145=env.___syscall145; + var ___syscall146=env.___syscall146; + var tempFloat = 0.0; + +// EMSCRIPTEN_START_FUNCS + +function stackAlloc(size) { + size = size|0; + var ret = 0; + ret = STACKTOP; + STACKTOP = (STACKTOP + size)|0; + STACKTOP = (STACKTOP + 15)&-16; +if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + + return ret|0; +} +function stackSave() { + return STACKTOP|0; +} +function stackRestore(top) { + top = top|0; + STACKTOP = top; +} +function establishStackSpace(stackBase, stackMax) { + stackBase = stackBase|0; + stackMax = stackMax|0; + STACKTOP = stackBase; + STACK_MAX = stackMax; +} + +function setThrew(threw, value) { + threw = threw|0; + value = value|0; + if ((__THREW__|0) == 0) { + __THREW__ = threw; + threwValue = value; + } +} +function copyTempFloat(ptr) { + ptr = ptr|0; + HEAP8[tempDoublePtr>>0] = HEAP8[ptr>>0]; + HEAP8[tempDoublePtr+1>>0] = HEAP8[ptr+1>>0]; + HEAP8[tempDoublePtr+2>>0] = HEAP8[ptr+2>>0]; + HEAP8[tempDoublePtr+3>>0] = HEAP8[ptr+3>>0]; +} +function copyTempDouble(ptr) { + ptr = ptr|0; + HEAP8[tempDoublePtr>>0] = HEAP8[ptr>>0]; + HEAP8[tempDoublePtr+1>>0] = HEAP8[ptr+1>>0]; + HEAP8[tempDoublePtr+2>>0] = HEAP8[ptr+2>>0]; + HEAP8[tempDoublePtr+3>>0] = HEAP8[ptr+3>>0]; + HEAP8[tempDoublePtr+4>>0] = HEAP8[ptr+4>>0]; + HEAP8[tempDoublePtr+5>>0] = HEAP8[ptr+5>>0]; + HEAP8[tempDoublePtr+6>>0] = HEAP8[ptr+6>>0]; + HEAP8[tempDoublePtr+7>>0] = HEAP8[ptr+7>>0]; +} + +function setTempRet0(value) { + value = value|0; + tempRet0 = value; +} +function getTempRet0() { + return tempRet0|0; +} + +function _TALER_WRALL_get_current_time() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $now = 0, $ptr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $now = sp + 8|0; + $0 = sp; + $1 = (_GNUNET_xmalloc_(8,19102,45)|0); + $ptr = $1; + $2 = (_GNUNET_TIME_absolute_get()|0); + $3 = tempRet0; + $4 = $0; + $5 = $4; + HEAP32[$5>>2] = $2; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $3; + ;HEAP32[$now>>2]=HEAP32[$0>>2]|0;HEAP32[$now+4>>2]=HEAP32[$0+4>>2]|0; + $8 = $ptr; + ;HEAP32[$8>>2]=HEAP32[$now>>2]|0;HEAP32[$8+4>>2]=HEAP32[$now+4>>2]|0; + $9 = $ptr; + STACKTOP = sp;return ($9|0); +} +function _TALER_WRALL_hash($buf,$size) { + $buf = $buf|0; + $size = $size|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $ptr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $buf; + $1 = $size; + $2 = (_GNUNET_xmalloc_(64,19102,64)|0); + $ptr = $2; + $3 = $0; + $4 = $1; + $5 = $ptr; + _GNUNET_CRYPTO_hash($3,$4,$5); + $6 = $ptr; + STACKTOP = sp;return ($6|0); +} +function _DEBUG_WR_dump_amount($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0; + var $vararg_ptr2 = 0, $vararg_ptr3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $a; + $1 = $0; + $2 = $0; + $3 = ((($2)) + 12|0); + $4 = $0; + $5 = $4; + $6 = $5; + $7 = HEAP32[$6>>2]|0; + $8 = (($5) + 4)|0; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $11 = $0; + $12 = ((($11)) + 8|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$vararg_buffer>>2] = $1; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $3; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + $14 = $vararg_ptr2; + $15 = $14; + HEAP32[$15>>2] = $7; + $16 = (($14) + 4)|0; + $17 = $16; + HEAP32[$17>>2] = $10; + $vararg_ptr3 = ((($vararg_buffer)) + 16|0); + HEAP32[$vararg_ptr3>>2] = $13; + (_printf(19109,$vararg_buffer)|0); + STACKTOP = sp;return; +} +function _TALER_WRALL_ecdhe_public_key_from_private_key($priv) { + $priv = $priv|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $ptr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $priv; + $1 = (_GNUNET_xmalloc_(32,19102,116)|0); + $ptr = $1; + $2 = $0; + $3 = $ptr; + _GNUNET_CRYPTO_ecdhe_key_get_public($2,$3); + $4 = $ptr; + STACKTOP = sp;return ($4|0); +} +function _TALER_WRALL_ecc_ecdh($priv,$pub) { + $priv = $priv|0; + $pub = $pub|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ptr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $priv; + $2 = $pub; + $3 = (_GNUNET_xmalloc_(64,19102,131)|0); + $ptr = $3; + $4 = $1; + $5 = $2; + $6 = $ptr; + $7 = (_GNUNET_CRYPTO_ecc_ecdh($4,$5,$6)|0); + $8 = (-1)==($7|0); + if ($8) { + $0 = 0; + $10 = $0; + STACKTOP = sp;return ($10|0); + } else { + $9 = $ptr; + $0 = $9; + $10 = $0; + STACKTOP = sp;return ($10|0); + } + return (0)|0; +} +function _TALER_WRALL_eddsa_private_key_from_string($priv) { + $priv = $priv|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $key_priv = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $priv; + $2 = (_GNUNET_xmalloc_(32,19102,151)|0); + $key_priv = $2; + $3 = $1; + $4 = $1; + $5 = (_strlen($4)|0); + $6 = $key_priv; + $7 = (_GNUNET_CRYPTO_eddsa_private_key_from_string($3,$5,$6)|0); + $8 = (1)!=($7|0); + if ($8) { + $0 = 0; + $10 = $0; + STACKTOP = sp;return ($10|0); + } else { + $9 = $key_priv; + $0 = $9; + $10 = $0; + STACKTOP = sp;return ($10|0); + } + return (0)|0; +} +function _TALER_WRALL_eddsa_public_key_from_priv_string($priv) { + $priv = $priv|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $key_priv = 0, $key_pub = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $key_priv = sp + 16|0; + $1 = $priv; + $2 = $1; + $3 = $1; + $4 = (_strlen($3)|0); + $5 = (_GNUNET_CRYPTO_eddsa_private_key_from_string($2,$4,$key_priv)|0); + $6 = (1)!=($5|0); + if ($6) { + $0 = 0; + $10 = $0; + STACKTOP = sp;return ($10|0); + } else { + $7 = (_GNUNET_xmalloc_(32,19102,173)|0); + $key_pub = $7; + $8 = $key_pub; + _GNUNET_CRYPTO_eddsa_key_get_public($key_priv,$8); + $9 = $key_pub; + $0 = $9; + $10 = $0; + STACKTOP = sp;return ($10|0); + } + return (0)|0; +} +function _TALER_WRALL_eddsa_public_key_from_private($priv) { + $priv = $priv|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $ptr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $priv; + $1 = (_GNUNET_xmalloc_(32,19102,190)|0); + $ptr = $1; + $2 = $0; + $3 = $ptr; + _GNUNET_CRYPTO_eddsa_key_get_public($2,$3); + $4 = $ptr; + STACKTOP = sp;return ($4|0); +} +function _TALER_WR_get_fancy_time($when) { + $when = $when|0; + var $$byval_copy = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $fancy_when = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $$byval_copy = sp; + $0 = $when; + $1 = $0; + ;HEAP32[$$byval_copy>>2]=HEAP32[$1>>2]|0;HEAP32[$$byval_copy+4>>2]=HEAP32[$1+4>>2]|0; + $2 = (_GNUNET_STRINGS_absolute_time_to_string($$byval_copy)|0); + $fancy_when = $2; + $3 = $fancy_when; + STACKTOP = sp;return ($3|0); +} +function _TALER_WR_GNUNET_free($ptr) { + $ptr = $ptr|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ptr; + $1 = $0; + _GNUNET_xfree_($1,19102,213); + STACKTOP = sp;return; +} +function _TALER_WRALL_sign_test($pk) { + $pk = $pk|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $sig = 0, $test = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $test = sp + 8|0; + $0 = $pk; + $1 = (_htonl(8)|0); + HEAP8[$test>>0]=$1&255;HEAP8[$test+1>>0]=($1>>8)&255;HEAP8[$test+2>>0]=($1>>16)&255;HEAP8[$test+3>>0]=$1>>24; + $2 = (_htonl(1302)|0); + $3 = ((($test)) + 4|0); + HEAP8[$3>>0]=$2&255;HEAP8[$3+1>>0]=($2>>8)&255;HEAP8[$3+2>>0]=($2>>16)&255;HEAP8[$3+3>>0]=$2>>24; + $4 = (_GNUNET_xmalloc_(64,19102,234)|0); + $sig = $4; + $5 = $0; + $6 = $sig; + (_GNUNET_CRYPTO_eddsa_sign($5,$test,$6)|0); + $7 = $sig; + STACKTOP = sp;return ($7|0); +} +function _WR_verify_test($sig,$pbk) { + $sig = $sig|0; + $pbk = $pbk|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $purpose = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $purpose = sp + 8|0; + $0 = $sig; + $1 = $pbk; + $2 = (_htonl(8)|0); + HEAP8[$purpose>>0]=$2&255;HEAP8[$purpose+1>>0]=($2>>8)&255;HEAP8[$purpose+2>>0]=($2>>16)&255;HEAP8[$purpose+3>>0]=$2>>24; + $3 = (_htonl(1303)|0); + $4 = ((($purpose)) + 4|0); + HEAP8[$4>>0]=$3&255;HEAP8[$4+1>>0]=($3>>8)&255;HEAP8[$4+2>>0]=($3>>16)&255;HEAP8[$4+3>>0]=$3>>24; + $5 = $0; + $6 = $1; + $7 = (_GNUNET_CRYPTO_eddsa_verify(1303,$purpose,$5,$6)|0); + STACKTOP = sp;return ($7|0); +} +function _TALER_WR_eddsa_verify($reason,$purpose,$sig,$pub) { + $reason = $reason|0; + $purpose = $purpose|0; + $sig = $sig|0; + $pub = $pub|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $reason; + $2 = $purpose; + $3 = $sig; + $4 = $pub; + $5 = $1; + $6 = (_strcmp($5,19146)|0); + $7 = ($6|0)==(0); + if ($7) { + $8 = $2; + $9 = $3; + $10 = $4; + $11 = (_GNUNET_CRYPTO_eddsa_verify(1200,$8,$9,$10)|0); + $0 = $11; + $19 = $0; + STACKTOP = sp;return ($19|0); + } + $12 = $1; + $13 = (_strcmp($12,19162)|0); + $14 = ($13|0)==(0); + if ($14) { + $15 = $2; + $16 = $3; + $17 = $4; + $18 = (_GNUNET_CRYPTO_eddsa_verify(1101,$15,$16,$17)|0); + $0 = $18; + $19 = $0; + STACKTOP = sp;return ($19|0); + } else { + $0 = -1; + $19 = $0; + STACKTOP = sp;return ($19|0); + } + return (0)|0; +} +function _WRALL_make_purpose($motivation,$motivation_len,$payload,$payload_size) { + $motivation = $motivation|0; + $motivation_len = $motivation_len|0; + $payload = $payload|0; + $payload_size = $payload_size|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ptr = 0, $purpose = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $purpose = sp + 24|0; + $1 = $motivation; + $2 = $motivation_len; + $3 = $payload; + $4 = $payload_size; + $5 = $2; + $6 = $1; + $7 = (($6) + ($5)|0); + HEAP8[$7>>0] = 0; + $8 = $1; + $9 = (_strcmp($8,19177)|0); + $10 = ($9|0)==(0); + do { + if ($10) { + $11 = (_htonl(1025)|0); + $12 = ((($purpose)) + 4|0); + HEAP8[$12>>0]=$11&255;HEAP8[$12+1>>0]=($11>>8)&255;HEAP8[$12+2>>0]=($11>>16)&255;HEAP8[$12+3>>0]=$11>>24; + } else { + $13 = $1; + $14 = (_strcmp($13,19210)|0); + $15 = ($14|0)==(0); + if ($15) { + $16 = (_htonl(1303)|0); + $17 = ((($purpose)) + 4|0); + HEAP8[$17>>0]=$16&255;HEAP8[$17+1>>0]=($16>>8)&255;HEAP8[$17+2>>0]=($16>>16)&255;HEAP8[$17+3>>0]=$16>>24; + break; + } + $18 = $1; + $19 = (_strcmp($18,19146)|0); + $20 = ($19|0)==(0); + if ($20) { + $21 = (_htonl(1200)|0); + $22 = ((($purpose)) + 4|0); + HEAP8[$22>>0]=$21&255;HEAP8[$22+1>>0]=($21>>8)&255;HEAP8[$22+2>>0]=($21>>16)&255;HEAP8[$22+3>>0]=$21>>24; + break; + } + $0 = 0; + $37 = $0; + STACKTOP = sp;return ($37|0); + } + } while(0); + $23 = $4; + $24 = (8 + ($23))|0; + $25 = (_htonl($24)|0); + HEAP8[$purpose>>0]=$25&255;HEAP8[$purpose+1>>0]=($25>>8)&255;HEAP8[$purpose+2>>0]=($25>>16)&255;HEAP8[$purpose+3>>0]=$25>>24; + $26 = $4; + $27 = (8 + ($26))|0; + $28 = (_GNUNET_xmalloc_($27,19102,329)|0); + $ptr = $28; + $29 = $ptr; + ;HEAP8[$29>>0]=HEAP8[$purpose>>0]|0;HEAP8[$29+1>>0]=HEAP8[$purpose+1>>0]|0;HEAP8[$29+2>>0]=HEAP8[$purpose+2>>0]|0;HEAP8[$29+3>>0]=HEAP8[$purpose+3>>0]|0;HEAP8[$29+4>>0]=HEAP8[$purpose+4>>0]|0;HEAP8[$29+5>>0]=HEAP8[$purpose+5>>0]|0;HEAP8[$29+6>>0]=HEAP8[$purpose+6>>0]|0;HEAP8[$29+7>>0]=HEAP8[$purpose+7>>0]|0; + $30 = $4; + $31 = ($30>>>0)>(0); + if ($31) { + $32 = $ptr; + $33 = ((($32)) + 64|0); + $34 = $3; + $35 = $4; + _memcpy(($33|0),($34|0),($35|0))|0; + } + $36 = $ptr; + $0 = $36; + $37 = $0; + STACKTOP = sp;return ($37|0); +} +function _TALER_WRALL_purpose_create($purpose,$payload,$payload_size) { + $purpose = $purpose|0; + $payload = $payload|0; + $payload_size = $payload_size|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0; + var $size = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $purpose; + $1 = $payload; + $2 = $payload_size; + $3 = $2; + $4 = (8 + ($3))|0; + $size = $4; + $5 = $size; + $6 = (_GNUNET_xmalloc_($5,19102,348)|0); + $p = $6; + $7 = $p; + $8 = ((($7)) + 8|0); + $9 = $1; + $10 = $2; + _memcpy(($8|0),($9|0),($10|0))|0; + $11 = $0; + $12 = (_htonl($11)|0); + $13 = $p; + $14 = ((($13)) + 4|0); + HEAP8[$14>>0]=$12&255;HEAP8[$14+1>>0]=($12>>8)&255;HEAP8[$14+2>>0]=($12>>16)&255;HEAP8[$14+3>>0]=$12>>24; + $15 = $size; + $16 = (_htonl($15)|0); + $17 = $p; + HEAP8[$17>>0]=$16&255;HEAP8[$17+1>>0]=($16>>8)&255;HEAP8[$17+2>>0]=($16>>16)&255;HEAP8[$17+3>>0]=$16>>24; + $18 = $p; + STACKTOP = sp;return ($18|0); +} +function _TALER_WRALL_rsa_public_key_decode_from_string($base32keyenc) { + $base32keyenc = $base32keyenc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0.0, $6 = 0.0, $7 = 0, $8 = 0, $9 = 0; + var $internal_enc = 0, $internal_enc_size = 0, $ptr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $base32keyenc; + $1 = $0; + $2 = (_strlen($1)|0); + $3 = ($2*5)|0; + $4 = (($3>>>0) / 8)&-1; + $5 = (+($4>>>0)); + $6 = (+Math_floor((+$5))); + $7 = (~~(($6))>>>0); + $internal_enc_size = $7; + $8 = $internal_enc_size; + $9 = (_GNUNET_xmalloc_($8,19102,373)|0); + $internal_enc = $9; + $10 = $0; + $11 = $0; + $12 = (_strlen($11)|0); + $13 = $internal_enc; + $14 = $internal_enc_size; + (_GNUNET_STRINGS_string_to_data($10,$12,$13,$14)|0); + $15 = $internal_enc; + $16 = $internal_enc_size; + $17 = (_GNUNET_CRYPTO_rsa_public_key_decode($15,$16)|0); + $ptr = $17; + $18 = $internal_enc; + _TALER_WR_GNUNET_free($18); + $19 = $ptr; + STACKTOP = sp;return ($19|0); +} +function _TALER_WRALL_get_encoding_from_rsa_signature($s) { + $s = $s|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $enca = 0, $encb = 0, $size = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $enca = sp + 8|0; + $0 = $s; + $1 = $0; + $2 = (_GNUNET_CRYPTO_rsa_signature_encode($1,$enca)|0); + $size = $2; + $3 = HEAP32[$enca>>2]|0; + $4 = $size; + $5 = (_GNUNET_STRINGS_data_to_string_alloc($3,$4)|0); + $encb = $5; + $6 = HEAP32[$enca>>2]|0; + _TALER_WR_GNUNET_free($6); + $7 = $encb; + STACKTOP = sp;return ($7|0); +} +function _TALER_WRALL_gen_symmetric_key($salt,$blob,$blob_size) { + $salt = $salt|0; + $blob = $blob|0; + $blob_size = $blob_size|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $skey = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $1 = $salt; + $2 = $blob; + $3 = $blob_size; + $4 = (_GNUNET_xmalloc_(64,19102,416)|0); + $skey = $4; + $5 = $skey; + $6 = $1; + $7 = $1; + $8 = (_strlen($7)|0); + $9 = $2; + $10 = $3; + HEAP32[$vararg_buffer>>2] = 0; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 0; + $11 = (_GNUNET_CRYPTO_kdf($5,64,$6,$8,$9,$10,$vararg_buffer)|0); + $12 = (1)!=($11|0); + if ($12) { + $0 = 0; + $14 = $0; + STACKTOP = sp;return ($14|0); + } else { + $13 = $skey; + $0 = $13; + $14 = $0; + STACKTOP = sp;return ($14|0); + } + return (0)|0; +} +function _TALER_WRALL_gen_init_vector($salt,$blob,$blob_size) { + $salt = $salt|0; + $blob = $blob|0; + $blob_size = $blob_size|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iv = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $1 = $salt; + $2 = $blob; + $3 = $blob_size; + $4 = (_GNUNET_xmalloc_(32,19102,441)|0); + $iv = $4; + $5 = $iv; + $6 = $1; + $7 = $1; + $8 = (_strlen($7)|0); + $9 = $2; + $10 = $3; + HEAP32[$vararg_buffer>>2] = 0; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 0; + $11 = (_GNUNET_CRYPTO_kdf($5,32,$6,$8,$9,$10,$vararg_buffer)|0); + $12 = (1)!=($11|0); + if ($12) { + $0 = 0; + $14 = $0; + STACKTOP = sp;return ($14|0); + } else { + $13 = $iv; + $0 = $13; + $14 = $0; + STACKTOP = sp;return ($14|0); + } + return (0)|0; +} +function _TALER_WRALL_gen_key_from_blob($salt,$blob,$blob_size) { + $salt = $salt|0; + $blob = $blob|0; + $blob_size = $blob_size|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $key = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $1 = $salt; + $2 = $blob; + $3 = $blob_size; + $4 = (_GNUNET_xmalloc_(64,19102,464)|0); + $key = $4; + $5 = $key; + $6 = $1; + $7 = $1; + $8 = (_strlen($7)|0); + $9 = $2; + $10 = $3; + HEAP32[$vararg_buffer>>2] = 0; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 0; + $11 = (_GNUNET_CRYPTO_kdf($5,64,$6,$8,$9,$10,$vararg_buffer)|0); + $12 = (1)!=($11|0); + if ($12) { + $0 = 0; + $14 = $0; + STACKTOP = sp;return ($14|0); + } else { + $13 = $key; + $0 = $13; + $14 = $0; + STACKTOP = sp;return ($14|0); + } + return (0)|0; +} +function _TALER_WRALL_amount_add($0,$1,$2,$3,$v1_frac,$v2_frac,$cur) { + $0 = $0|0; + $1 = $1|0; + $2 = $2|0; + $3 = $3|0; + $v1_frac = $v1_frac|0; + $v2_frac = $v2_frac|0; + $cur = $cur|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; + var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; + var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $amn1 = 0, $amn2 = 0, $ptr = 0, $sum = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $5 = sp + 80|0; + $6 = sp + 72|0; + $amn1 = sp + 48|0; + $amn2 = sp + 24|0; + $sum = sp; + $10 = $5; + $11 = $10; + HEAP32[$11>>2] = $0; + $12 = (($10) + 4)|0; + $13 = $12; + HEAP32[$13>>2] = $1; + $14 = $6; + $15 = $14; + HEAP32[$15>>2] = $2; + $16 = (($14) + 4)|0; + $17 = $16; + HEAP32[$17>>2] = $3; + $7 = $v1_frac; + $8 = $v2_frac; + $9 = $cur; + $18 = $9; + $19 = (_TALER_amount_get_zero($18,$amn1)|0); + $20 = (1)!=($19|0); + if (!($20)) { + $21 = $9; + $22 = (_TALER_amount_get_zero($21,$amn2)|0); + $23 = (1)!=($22|0); + if (!($23)) { + $24 = $9; + $25 = (_TALER_amount_get_zero($24,$sum)|0); + $26 = (1)!=($25|0); + if (!($26)) { + $27 = $5; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $30 = (($27) + 4)|0; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = $amn1; + $34 = $33; + HEAP32[$34>>2] = $29; + $35 = (($33) + 4)|0; + $36 = $35; + HEAP32[$36>>2] = $32; + $37 = $7; + $38 = ((($amn1)) + 8|0); + HEAP32[$38>>2] = $37; + $39 = $6; + $40 = $39; + $41 = HEAP32[$40>>2]|0; + $42 = (($39) + 4)|0; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = $amn2; + $46 = $45; + HEAP32[$46>>2] = $41; + $47 = (($45) + 4)|0; + $48 = $47; + HEAP32[$48>>2] = $44; + $49 = $8; + $50 = ((($amn2)) + 8|0); + HEAP32[$50>>2] = $49; + $51 = (_TALER_amount_add($sum,$amn1,$amn2)|0); + $52 = (1)!=($51|0); + if ($52) { + $4 = 0; + $56 = $4; + STACKTOP = sp;return ($56|0); + } else { + $53 = (_GNUNET_xmalloc_(24,19102,512)|0); + $ptr = $53; + $54 = $ptr; + ;HEAP32[$54>>2]=HEAP32[$sum>>2]|0;HEAP32[$54+4>>2]=HEAP32[$sum+4>>2]|0;HEAP32[$54+8>>2]=HEAP32[$sum+8>>2]|0;HEAP32[$54+12>>2]=HEAP32[$sum+12>>2]|0;HEAP32[$54+16>>2]=HEAP32[$sum+16>>2]|0;HEAP32[$54+20>>2]=HEAP32[$sum+20>>2]|0; + $55 = $ptr; + $4 = $55; + $56 = $4; + STACKTOP = sp;return ($56|0); + } + } + } + } + $4 = 0; + $56 = $4; + STACKTOP = sp;return ($56|0); +} +function _TALER_WRALL_make_withdraw_bundle($reserve_pub,$total,$fee,$denom_pub,$coin_env,$coin_env_size) { + $reserve_pub = $reserve_pub|0; + $total = $total|0; + $fee = $fee|0; + $denom_pub = $denom_pub|0; + $coin_env = $coin_env|0; + $coin_env_size = $coin_env_size|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $denomination_pub = 0, $payload_buf = 0, $wdrw = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 256|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $wdrw = sp + 32|0; + $denomination_pub = sp + 4|0; + $0 = $reserve_pub; + $1 = $total; + $2 = $fee; + $3 = $denom_pub; + $4 = $coin_env; + $5 = $coin_env_size; + $6 = $3; + HEAP32[$denomination_pub>>2] = $6; + $7 = HEAP32[$denomination_pub>>2]|0; + $8 = ((($wdrw)) + 88|0); + _GNUNET_CRYPTO_rsa_public_key_hash($7,$8); + $9 = ((($wdrw)) + 40|0); + $10 = $1; + _TALER_amount_hton($9,$10); + $11 = ((($wdrw)) + 64|0); + $12 = $2; + _TALER_amount_hton($11,$12); + $13 = ((($wdrw)) + 8|0); + $14 = $0; + dest=$13; src=$14; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $15 = (_htonl(216)|0); + HEAP8[$wdrw>>0]=$15&255;HEAP8[$wdrw+1>>0]=($15>>8)&255;HEAP8[$wdrw+2>>0]=($15>>16)&255;HEAP8[$wdrw+3>>0]=$15>>24; + $16 = (_htonl(1200)|0); + $17 = ((($wdrw)) + 4|0); + HEAP8[$17>>0]=$16&255;HEAP8[$17+1>>0]=($16>>8)&255;HEAP8[$17+2>>0]=($16>>16)&255;HEAP8[$17+3>>0]=$16>>24; + $18 = $4; + $19 = $5; + $20 = ((($wdrw)) + 152|0); + _GNUNET_CRYPTO_hash($18,$19,$20); + $21 = (_GNUNET_xmalloc_(216,19102,567)|0); + $payload_buf = $21; + $22 = $payload_buf; + _memcpy(($22|0),($wdrw|0),216)|0; + $23 = $payload_buf; + STACKTOP = sp;return ($23|0); +} +function _TALER_WRALL_sign_contract($contract,$coin_priv) { + $contract = $contract|0; + $coin_priv = $coin_priv|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $dep_perm = 0, $sig = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $dep_perm = sp; + $0 = $contract; + $1 = $coin_priv; + HEAP32[$dep_perm>>2] = 72; + $2 = ((($dep_perm)) + 4|0); + HEAP32[$2>>2] = 1201; + $3 = ((($dep_perm)) + 8|0); + $4 = $0; + dest=$3; src=$4; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $5 = (_GNUNET_xmalloc_(64,19102,593)|0); + $sig = $5; + $6 = $1; + $7 = $sig; + (_GNUNET_CRYPTO_eddsa_sign($6,$dep_perm,$7)|0); + $8 = $sig; + STACKTOP = sp;return ($8|0); +} +function _time_from_seconds($seconds,$abs) { + $seconds = $seconds|0; + $abs = $abs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $log_line = 0, $vararg_buffer = 0, $vararg_ptr1 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $1 = $seconds; + $2 = $abs; + $3 = $1; + $4 = (___muldi3(($3|0),0,1000,0)|0); + $5 = tempRet0; + $6 = (___muldi3(($4|0),($5|0),1000,0)|0); + $7 = tempRet0; + $8 = $2; + $9 = $8; + $10 = $9; + HEAP32[$10>>2] = $6; + $11 = (($9) + 4)|0; + $12 = $11; + HEAP32[$12>>2] = $7; + $13 = $2; + $14 = $13; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (___udivdi3(($16|0),($19|0),1000,0)|0); + $21 = tempRet0; + $22 = (___udivdi3(($20|0),($21|0),1000,0)|0); + $23 = tempRet0; + $24 = $1; + $25 = ($22|0)!=($24|0); + $26 = ($23|0)!=(0); + $27 = $25 | $26; + if (!($27)) { + $0 = 1; + $36 = $0; + STACKTOP = sp;return ($36|0); + } + $log_line = 618; + $28 = HEAP32[184]|0; + $29 = ($28|0)==(-1); + if ($29) { + $30 = $log_line; + $31 = (_GNUNET_get_log_call_status(2,0,19102,19226,$30)|0); + HEAP32[184] = $31; + } + $32 = (_GNUNET_get_log_skip()|0); + $33 = ($32|0)>(0); + if ($33) { + _GNUNET_log_skip(-1,0); + } else { + $34 = HEAP32[184]|0; + $35 = ($34|0)!=(0); + if ($35) { + HEAP32[$vararg_buffer>>2] = 19102; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 618; + _GNUNET_log_nocheck(34,21223,$vararg_buffer); + } + } + $0 = -1; + $36 = $0; + STACKTOP = sp;return ($36|0); +} +function _TALER_WRALL_rsa_public_key_hash($key) { + $key = $key|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $khc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $key; + $1 = (_GNUNET_xmalloc_(64,19102,635)|0); + $khc = $1; + $2 = $0; + $3 = $khc; + _GNUNET_CRYPTO_rsa_public_key_hash($2,$3); + $4 = $khc; + STACKTOP = sp;return ($4|0); +} +function _TALER_WR_verify_denom($denom,$master,$sig,$start,$exp_w,$exp_s,$exp_l,$value,$fee_w,$fee_d,$fee_r) { + $denom = $denom|0; + $master = $master|0; + $sig = $sig|0; + $start = $start|0; + $exp_w = $exp_w|0; + $exp_s = $exp_s|0; + $exp_l = $exp_l|0; + $value = $value|0; + $fee_w = $fee_w|0; + $fee_d = $fee_d|0; + $fee_r = $fee_r|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $8 = 0, $9 = 0, $dnv = 0, $exp_labs = 0, $exp_labs$byval_copy = 0, $exp_sabs = 0; + var $exp_sabs$byval_copy = 0, $exp_wabs = 0, $exp_wabs$byval_copy = 0, $master_in = 0, $start_abs = 0, $start_abs$byval_copy = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 416|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $exp_labs$byval_copy = sp + 56|0; + $exp_sabs$byval_copy = sp + 48|0; + $exp_wabs$byval_copy = sp + 40|0; + $start_abs$byval_copy = sp + 32|0; + $dnv = sp + 176|0; + $start_abs = sp + 24|0; + $exp_wabs = sp + 16|0; + $exp_sabs = sp + 8|0; + $exp_labs = sp; + $master_in = sp + 144|0; + $12 = sp + 136|0; + $13 = sp + 128|0; + $14 = sp + 120|0; + $15 = sp + 112|0; + $1 = $denom; + $2 = $master; + $3 = $sig; + $4 = $start; + $5 = $exp_w; + $6 = $exp_s; + $7 = $exp_l; + $8 = $value; + $9 = $fee_w; + $10 = $fee_d; + $11 = $fee_r; + $16 = $4; + $17 = (_time_from_seconds($16,$start_abs)|0); + $18 = (-1)==($17|0); + if ($18) { + $0 = -1; + $75 = $0; + STACKTOP = sp;return ($75|0); + } + $19 = $5; + $20 = (_time_from_seconds($19,$exp_wabs)|0); + $21 = (-1)==($20|0); + if ($21) { + $0 = -1; + $75 = $0; + STACKTOP = sp;return ($75|0); + } + $22 = $6; + $23 = (_time_from_seconds($22,$exp_sabs)|0); + $24 = (-1)==($23|0); + if ($24) { + $0 = -1; + $75 = $0; + STACKTOP = sp;return ($75|0); + } + $25 = $7; + $26 = (_time_from_seconds($25,$exp_labs)|0); + $27 = (-1)==($26|0); + if ($27) { + $0 = -1; + $75 = $0; + STACKTOP = sp;return ($75|0); + } + $28 = $1; + $29 = ((($dnv)) + 168|0); + _GNUNET_CRYPTO_rsa_public_key_hash($28,$29); + $30 = $2; + dest=$master_in; src=$30; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $31 = ((($dnv)) + 8|0); + dest=$31; src=$master_in; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $32 = ((($dnv)) + 40|0); + ;HEAP32[$start_abs$byval_copy>>2]=HEAP32[$start_abs>>2]|0;HEAP32[$start_abs$byval_copy+4>>2]=HEAP32[$start_abs+4>>2]|0; + $33 = (_GNUNET_TIME_absolute_hton($start_abs$byval_copy)|0); + $34 = tempRet0; + $35 = $12; + $36 = $35; + HEAP8[$36>>0]=$33&255;HEAP8[$36+1>>0]=($33>>8)&255;HEAP8[$36+2>>0]=($33>>16)&255;HEAP8[$36+3>>0]=$33>>24; + $37 = (($35) + 4)|0; + $38 = $37; + HEAP8[$38>>0]=$34&255;HEAP8[$38+1>>0]=($34>>8)&255;HEAP8[$38+2>>0]=($34>>16)&255;HEAP8[$38+3>>0]=$34>>24; + ;HEAP8[$32>>0]=HEAP8[$12>>0]|0;HEAP8[$32+1>>0]=HEAP8[$12+1>>0]|0;HEAP8[$32+2>>0]=HEAP8[$12+2>>0]|0;HEAP8[$32+3>>0]=HEAP8[$12+3>>0]|0;HEAP8[$32+4>>0]=HEAP8[$12+4>>0]|0;HEAP8[$32+5>>0]=HEAP8[$12+5>>0]|0;HEAP8[$32+6>>0]=HEAP8[$12+6>>0]|0;HEAP8[$32+7>>0]=HEAP8[$12+7>>0]|0; + $39 = ((($dnv)) + 48|0); + ;HEAP32[$exp_wabs$byval_copy>>2]=HEAP32[$exp_wabs>>2]|0;HEAP32[$exp_wabs$byval_copy+4>>2]=HEAP32[$exp_wabs+4>>2]|0; + $40 = (_GNUNET_TIME_absolute_hton($exp_wabs$byval_copy)|0); + $41 = tempRet0; + $42 = $13; + $43 = $42; + HEAP8[$43>>0]=$40&255;HEAP8[$43+1>>0]=($40>>8)&255;HEAP8[$43+2>>0]=($40>>16)&255;HEAP8[$43+3>>0]=$40>>24; + $44 = (($42) + 4)|0; + $45 = $44; + HEAP8[$45>>0]=$41&255;HEAP8[$45+1>>0]=($41>>8)&255;HEAP8[$45+2>>0]=($41>>16)&255;HEAP8[$45+3>>0]=$41>>24; + ;HEAP8[$39>>0]=HEAP8[$13>>0]|0;HEAP8[$39+1>>0]=HEAP8[$13+1>>0]|0;HEAP8[$39+2>>0]=HEAP8[$13+2>>0]|0;HEAP8[$39+3>>0]=HEAP8[$13+3>>0]|0;HEAP8[$39+4>>0]=HEAP8[$13+4>>0]|0;HEAP8[$39+5>>0]=HEAP8[$13+5>>0]|0;HEAP8[$39+6>>0]=HEAP8[$13+6>>0]|0;HEAP8[$39+7>>0]=HEAP8[$13+7>>0]|0; + $46 = ((($dnv)) + 56|0); + ;HEAP32[$exp_sabs$byval_copy>>2]=HEAP32[$exp_sabs>>2]|0;HEAP32[$exp_sabs$byval_copy+4>>2]=HEAP32[$exp_sabs+4>>2]|0; + $47 = (_GNUNET_TIME_absolute_hton($exp_sabs$byval_copy)|0); + $48 = tempRet0; + $49 = $14; + $50 = $49; + HEAP8[$50>>0]=$47&255;HEAP8[$50+1>>0]=($47>>8)&255;HEAP8[$50+2>>0]=($47>>16)&255;HEAP8[$50+3>>0]=$47>>24; + $51 = (($49) + 4)|0; + $52 = $51; + HEAP8[$52>>0]=$48&255;HEAP8[$52+1>>0]=($48>>8)&255;HEAP8[$52+2>>0]=($48>>16)&255;HEAP8[$52+3>>0]=$48>>24; + ;HEAP8[$46>>0]=HEAP8[$14>>0]|0;HEAP8[$46+1>>0]=HEAP8[$14+1>>0]|0;HEAP8[$46+2>>0]=HEAP8[$14+2>>0]|0;HEAP8[$46+3>>0]=HEAP8[$14+3>>0]|0;HEAP8[$46+4>>0]=HEAP8[$14+4>>0]|0;HEAP8[$46+5>>0]=HEAP8[$14+5>>0]|0;HEAP8[$46+6>>0]=HEAP8[$14+6>>0]|0;HEAP8[$46+7>>0]=HEAP8[$14+7>>0]|0; + $53 = ((($dnv)) + 64|0); + ;HEAP32[$exp_labs$byval_copy>>2]=HEAP32[$exp_labs>>2]|0;HEAP32[$exp_labs$byval_copy+4>>2]=HEAP32[$exp_labs+4>>2]|0; + $54 = (_GNUNET_TIME_absolute_hton($exp_labs$byval_copy)|0); + $55 = tempRet0; + $56 = $15; + $57 = $56; + HEAP8[$57>>0]=$54&255;HEAP8[$57+1>>0]=($54>>8)&255;HEAP8[$57+2>>0]=($54>>16)&255;HEAP8[$57+3>>0]=$54>>24; + $58 = (($56) + 4)|0; + $59 = $58; + HEAP8[$59>>0]=$55&255;HEAP8[$59+1>>0]=($55>>8)&255;HEAP8[$59+2>>0]=($55>>16)&255;HEAP8[$59+3>>0]=$55>>24; + ;HEAP8[$53>>0]=HEAP8[$15>>0]|0;HEAP8[$53+1>>0]=HEAP8[$15+1>>0]|0;HEAP8[$53+2>>0]=HEAP8[$15+2>>0]|0;HEAP8[$53+3>>0]=HEAP8[$15+3>>0]|0;HEAP8[$53+4>>0]=HEAP8[$15+4>>0]|0;HEAP8[$53+5>>0]=HEAP8[$15+5>>0]|0;HEAP8[$53+6>>0]=HEAP8[$15+6>>0]|0;HEAP8[$53+7>>0]=HEAP8[$15+7>>0]|0; + $60 = ((($dnv)) + 72|0); + $61 = $8; + _TALER_amount_hton($60,$61); + $62 = ((($dnv)) + 96|0); + $63 = $9; + _TALER_amount_hton($62,$63); + $64 = ((($dnv)) + 120|0); + $65 = $10; + _TALER_amount_hton($64,$65); + $66 = ((($dnv)) + 144|0); + $67 = $11; + _TALER_amount_hton($66,$67); + $68 = (_htonl(1025)|0); + $69 = ((($dnv)) + 4|0); + HEAP8[$69>>0]=$68&255;HEAP8[$69+1>>0]=($68>>8)&255;HEAP8[$69+2>>0]=($68>>16)&255;HEAP8[$69+3>>0]=$68>>24; + $70 = (_htonl(232)|0); + HEAP8[$dnv>>0]=$70&255;HEAP8[$dnv+1>>0]=($70>>8)&255;HEAP8[$dnv+2>>0]=($70>>16)&255;HEAP8[$dnv+3>>0]=$70>>24; + $71 = $3; + $72 = $2; + $73 = (_GNUNET_CRYPTO_eddsa_verify(1025,$dnv,$71,$72)|0); + $74 = (1)!=($73|0); + if ($74) { + $0 = 0; + $75 = $0; + STACKTOP = sp;return ($75|0); + } else { + $0 = 1; + $75 = $0; + STACKTOP = sp;return ($75|0); + } + return (0)|0; +} +function _TALER_WR_verify_denom_enc($denom_enc,$master_enc,$mastersig_enc,$start,$exp_w,$exp_s,$exp_l,$denom_value,$denom_fraction,$denom_currency,$withdraw_fee_value,$withdraw_fee_fraction,$withdraw_fee_currency,$deposit_fee_value,$deposit_fee_fraction,$deposit_fee_currency,$refresh_fee_value,$refresh_fee_fraction,$refresh_fee_currency) { + $denom_enc = $denom_enc|0; + $master_enc = $master_enc|0; + $mastersig_enc = $mastersig_enc|0; + $start = $start|0; + $exp_w = $exp_w|0; + $exp_s = $exp_s|0; + $exp_l = $exp_l|0; + $denom_value = $denom_value|0; + $denom_fraction = $denom_fraction|0; + $denom_currency = $denom_currency|0; + $withdraw_fee_value = $withdraw_fee_value|0; + $withdraw_fee_fraction = $withdraw_fee_fraction|0; + $withdraw_fee_currency = $withdraw_fee_currency|0; + $deposit_fee_value = $deposit_fee_value|0; + $deposit_fee_fraction = $deposit_fee_fraction|0; + $deposit_fee_currency = $deposit_fee_currency|0; + $refresh_fee_value = $refresh_fee_value|0; + $refresh_fee_fraction = $refresh_fee_fraction|0; + $refresh_fee_currency = $refresh_fee_currency|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $denom = 0, $denom_amount = 0, $deposit_fee = 0, $masterkey = 0, $mastersig = 0, $refresh_fee = 0, $ret = 0, $withdraw_fee = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 288|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $masterkey = sp + 248|0; + $mastersig = sp + 184|0; + $denom_amount = sp + 72|0; + $withdraw_fee = sp + 48|0; + $deposit_fee = sp + 24|0; + $refresh_fee = sp; + $0 = $denom_enc; + $1 = $master_enc; + $2 = $mastersig_enc; + $3 = $start; + $4 = $exp_w; + $5 = $exp_s; + $6 = $exp_l; + $7 = $denom_value; + $8 = $denom_fraction; + $9 = $denom_currency; + $10 = $withdraw_fee_value; + $11 = $withdraw_fee_fraction; + $12 = $withdraw_fee_currency; + $13 = $deposit_fee_value; + $14 = $deposit_fee_fraction; + $15 = $deposit_fee_currency; + $16 = $refresh_fee_value; + $17 = $refresh_fee_fraction; + $18 = $refresh_fee_currency; + $19 = $0; + $20 = (_TALER_WRALL_rsa_public_key_decode_from_string($19)|0); + $denom = $20; + $21 = $1; + $22 = $1; + $23 = (_strlen($22)|0); + (_GNUNET_STRINGS_string_to_data($21,$23,$masterkey,32)|0); + $24 = $2; + $25 = $2; + $26 = (_strlen($25)|0); + (_GNUNET_STRINGS_string_to_data($24,$26,$mastersig,64)|0); + $27 = $9; + (_TALER_amount_get_zero($27,$denom_amount)|0); + $28 = $7; + $29 = $denom_amount; + $30 = $29; + HEAP32[$30>>2] = $28; + $31 = (($29) + 4)|0; + $32 = $31; + HEAP32[$32>>2] = 0; + $33 = $8; + $34 = ((($denom_amount)) + 8|0); + HEAP32[$34>>2] = $33; + $35 = $12; + (_TALER_amount_get_zero($35,$withdraw_fee)|0); + $36 = $10; + $37 = $withdraw_fee; + $38 = $37; + HEAP32[$38>>2] = $36; + $39 = (($37) + 4)|0; + $40 = $39; + HEAP32[$40>>2] = 0; + $41 = $11; + $42 = ((($withdraw_fee)) + 8|0); + HEAP32[$42>>2] = $41; + $43 = $15; + (_TALER_amount_get_zero($43,$deposit_fee)|0); + $44 = $10; + $45 = $deposit_fee; + $46 = $45; + HEAP32[$46>>2] = $44; + $47 = (($45) + 4)|0; + $48 = $47; + HEAP32[$48>>2] = 0; + $49 = $11; + $50 = ((($deposit_fee)) + 8|0); + HEAP32[$50>>2] = $49; + $51 = $18; + (_TALER_amount_get_zero($51,$refresh_fee)|0); + $52 = $16; + $53 = $refresh_fee; + $54 = $53; + HEAP32[$54>>2] = $52; + $55 = (($53) + 4)|0; + $56 = $55; + HEAP32[$56>>2] = 0; + $57 = $17; + $58 = ((($refresh_fee)) + 8|0); + HEAP32[$58>>2] = $57; + $59 = $denom; + $60 = $3; + $61 = $4; + $62 = $5; + $63 = $6; + $64 = (_TALER_WR_verify_denom($59,$masterkey,$mastersig,$60,$61,$62,$63,$denom_amount,$withdraw_fee,$deposit_fee,$refresh_fee)|0); + $ret = $64; + $65 = $denom; + _GNUNET_CRYPTO_rsa_public_key_free($65); + $66 = $ret; + STACKTOP = sp;return ($66|0); +} +function _TALER_WR_verify_denoms($sign_key,$denoms,$issue_date,$ndenoms,$sig) { + $sign_key = $sign_key|0; + $denoms = $denoms|0; + $issue_date = $issue_date|0; + $ndenoms = $ndenoms|0; + $sig = $sig|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $hctx = 0, $i = 0; + var $issue = 0, $issue$byval_copy = 0, $khc = 0, $ks = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 208|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $issue$byval_copy = sp + 8|0; + $issue = sp; + $ks = sp + 128|0; + $khc = sp + 24|0; + $6 = sp + 120|0; + $1 = $sign_key; + $2 = $denoms; + $3 = $issue_date; + $4 = $ndenoms; + $5 = $sig; + $7 = $3; + $8 = (_time_from_seconds($7,$issue)|0); + $9 = (-1)==($8|0); + if ($9) { + $0 = -1; + $37 = $0; + STACKTOP = sp;return ($37|0); + } + $10 = ((($ks)) + 8|0); + ;HEAP32[$issue$byval_copy>>2]=HEAP32[$issue>>2]|0;HEAP32[$issue$byval_copy+4>>2]=HEAP32[$issue+4>>2]|0; + $11 = (_GNUNET_TIME_absolute_hton($issue$byval_copy)|0); + $12 = tempRet0; + $13 = $6; + $14 = $13; + HEAP8[$14>>0]=$11&255;HEAP8[$14+1>>0]=($11>>8)&255;HEAP8[$14+2>>0]=($11>>16)&255;HEAP8[$14+3>>0]=$11>>24; + $15 = (($13) + 4)|0; + $16 = $15; + HEAP8[$16>>0]=$12&255;HEAP8[$16+1>>0]=($12>>8)&255;HEAP8[$16+2>>0]=($12>>16)&255;HEAP8[$16+3>>0]=$12>>24; + ;HEAP8[$10>>0]=HEAP8[$6>>0]|0;HEAP8[$10+1>>0]=HEAP8[$6+1>>0]|0;HEAP8[$10+2>>0]=HEAP8[$6+2>>0]|0;HEAP8[$10+3>>0]=HEAP8[$6+3>>0]|0;HEAP8[$10+4>>0]=HEAP8[$6+4>>0]|0;HEAP8[$10+5>>0]=HEAP8[$6+5>>0]|0;HEAP8[$10+6>>0]=HEAP8[$6+6>>0]|0;HEAP8[$10+7>>0]=HEAP8[$6+7>>0]|0; + $17 = (_GNUNET_CRYPTO_hash_context_start()|0); + $hctx = $17; + $i = 0; + while(1) { + $18 = $i; + $19 = $4; + $20 = ($18>>>0)<($19>>>0); + if (!($20)) { + break; + } + $21 = $i; + $22 = $2; + $23 = (($22) + ($21<<2)|0); + $24 = HEAP32[$23>>2]|0; + _GNUNET_CRYPTO_rsa_public_key_hash($24,$khc); + $25 = $hctx; + _GNUNET_CRYPTO_hash_context_read($25,$khc,64); + $26 = $i; + $27 = (($26) + 1)|0; + $i = $27; + } + $28 = $hctx; + $29 = ((($ks)) + 16|0); + _GNUNET_CRYPTO_hash_context_finish($28,$29); + $30 = (_htonl(80)|0); + HEAP8[$ks>>0]=$30&255;HEAP8[$ks+1>>0]=($30>>8)&255;HEAP8[$ks+2>>0]=($30>>16)&255;HEAP8[$ks+3>>0]=$30>>24; + $31 = (_htonl(1035)|0); + $32 = ((($ks)) + 4|0); + HEAP8[$32>>0]=$31&255;HEAP8[$32+1>>0]=($31>>8)&255;HEAP8[$32+2>>0]=($31>>16)&255;HEAP8[$32+3>>0]=$31>>24; + $33 = $5; + $34 = $1; + $35 = (_GNUNET_CRYPTO_eddsa_verify(1035,$ks,$33,$34)|0); + $36 = (1)!=($35|0); + if ($36) { + $0 = 0; + $37 = $0; + STACKTOP = sp;return ($37|0); + } else { + $0 = 1; + $37 = $0; + STACKTOP = sp;return ($37|0); + } + return (0)|0; +} +function _TALER_WR_verify_denoms_enc($signkey_enc,$denoms_enc,$ndenoms,$issue_date,$sig_enc) { + $signkey_enc = $signkey_enc|0; + $denoms_enc = $denoms_enc|0; + $ndenoms = $ndenoms|0; + $issue_date = $issue_date|0; + $sig_enc = $sig_enc|0; + var $$alloca_mul = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $i = 0, $ret = 0, $sig = 0, $signkey = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $signkey = sp + 96|0; + $sig = sp + 32|0; + $0 = $signkey_enc; + $1 = $denoms_enc; + $2 = $ndenoms; + $3 = $issue_date; + $4 = $sig_enc; + $6 = $2; + $7 = (_llvm_stacksave()|0); + $5 = $7; + $$alloca_mul = $6<<2; + $8 = STACKTOP; STACKTOP = STACKTOP + ((((1*$$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort();; + $9 = $0; + $10 = $0; + $11 = (_strlen($10)|0); + (_GNUNET_STRINGS_string_to_data($9,$11,$signkey,32)|0); + $12 = $4; + $13 = $4; + $14 = (_strlen($13)|0); + (_GNUNET_STRINGS_string_to_data($12,$14,$sig,64)|0); + $i = 0; + while(1) { + $15 = $i; + $16 = $2; + $17 = ($15>>>0)<($16>>>0); + if (!($17)) { + break; + } + $18 = $i; + $19 = $1; + $20 = (($19) + ($18<<2)|0); + $21 = HEAP32[$20>>2]|0; + $22 = (_TALER_WRALL_rsa_public_key_decode_from_string($21)|0); + $23 = $i; + $24 = (($8) + ($23<<2)|0); + HEAP32[$24>>2] = $22; + $25 = $i; + $26 = (($25) + 1)|0; + $i = $26; + } + $27 = $3; + $28 = $2; + $29 = (_TALER_WR_verify_denoms($signkey,$8,$27,$28,$sig)|0); + $ret = $29; + $i = 0; + while(1) { + $30 = $i; + $31 = $2; + $32 = ($30>>>0)<($31>>>0); + if (!($32)) { + break; + } + $33 = $i; + $34 = (($8) + ($33<<2)|0); + $35 = HEAP32[$34>>2]|0; + _GNUNET_CRYPTO_rsa_public_key_free($35); + $36 = $i; + $37 = (($36) + 1)|0; + $i = $37; + } + $38 = $ret; + $39 = $5; + _llvm_stackrestore(($39|0)); + STACKTOP = sp;return ($38|0); +} +function _TALER_WR_verify_sign_key($master,$date,$expire,$end,$signkey,$sig) { + $master = $master|0; + $date = $date|0; + $expire = $expire|0; + $end = $end|0; + $signkey = $signkey|0; + $sig = $sig|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $date_abs = 0, $date_abs$byval_copy = 0, $end_abs = 0, $end_abs$byval_copy = 0, $expire_abs = 0; + var $expire_abs$byval_copy = 0, $master_key = 0, $signkey_key = 0, $skval = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 336|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $end_abs$byval_copy = sp + 40|0; + $expire_abs$byval_copy = sp + 32|0; + $date_abs$byval_copy = sp + 24|0; + $skval = sp + 168|0; + $date_abs = sp + 16|0; + $expire_abs = sp + 8|0; + $end_abs = sp; + $master_key = sp + 136|0; + $signkey_key = sp + 104|0; + $7 = sp + 96|0; + $8 = sp + 88|0; + $9 = sp + 80|0; + $1 = $master; + $2 = $date; + $3 = $expire; + $4 = $end; + $5 = $signkey; + $6 = $sig; + $10 = $1; + dest=$master_key; src=$10; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $11 = $5; + dest=$signkey_key; src=$11; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $12 = ((($skval)) + 72|0); + dest=$12; src=$master_key; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $13 = $2; + $14 = (_time_from_seconds($13,$date_abs)|0); + $15 = (-1)==($14|0); + if ($15) { + $0 = -1; + $54 = $0; + STACKTOP = sp;return ($54|0); + } + $16 = $3; + $17 = (_time_from_seconds($16,$expire_abs)|0); + $18 = (-1)==($17|0); + if ($18) { + $0 = -1; + $54 = $0; + STACKTOP = sp;return ($54|0); + } + $19 = $4; + $20 = (_time_from_seconds($19,$end_abs)|0); + $21 = (-1)==($20|0); + if ($21) { + $0 = -1; + $54 = $0; + STACKTOP = sp;return ($54|0); + } + $22 = ((($skval)) + 104|0); + ;HEAP32[$date_abs$byval_copy>>2]=HEAP32[$date_abs>>2]|0;HEAP32[$date_abs$byval_copy+4>>2]=HEAP32[$date_abs+4>>2]|0; + $23 = (_GNUNET_TIME_absolute_hton($date_abs$byval_copy)|0); + $24 = tempRet0; + $25 = $7; + $26 = $25; + HEAP8[$26>>0]=$23&255;HEAP8[$26+1>>0]=($23>>8)&255;HEAP8[$26+2>>0]=($23>>16)&255;HEAP8[$26+3>>0]=$23>>24; + $27 = (($25) + 4)|0; + $28 = $27; + HEAP8[$28>>0]=$24&255;HEAP8[$28+1>>0]=($24>>8)&255;HEAP8[$28+2>>0]=($24>>16)&255;HEAP8[$28+3>>0]=$24>>24; + ;HEAP8[$22>>0]=HEAP8[$7>>0]|0;HEAP8[$22+1>>0]=HEAP8[$7+1>>0]|0;HEAP8[$22+2>>0]=HEAP8[$7+2>>0]|0;HEAP8[$22+3>>0]=HEAP8[$7+3>>0]|0;HEAP8[$22+4>>0]=HEAP8[$7+4>>0]|0;HEAP8[$22+5>>0]=HEAP8[$7+5>>0]|0;HEAP8[$22+6>>0]=HEAP8[$7+6>>0]|0;HEAP8[$22+7>>0]=HEAP8[$7+7>>0]|0; + $29 = ((($skval)) + 112|0); + ;HEAP32[$expire_abs$byval_copy>>2]=HEAP32[$expire_abs>>2]|0;HEAP32[$expire_abs$byval_copy+4>>2]=HEAP32[$expire_abs+4>>2]|0; + $30 = (_GNUNET_TIME_absolute_hton($expire_abs$byval_copy)|0); + $31 = tempRet0; + $32 = $8; + $33 = $32; + HEAP8[$33>>0]=$30&255;HEAP8[$33+1>>0]=($30>>8)&255;HEAP8[$33+2>>0]=($30>>16)&255;HEAP8[$33+3>>0]=$30>>24; + $34 = (($32) + 4)|0; + $35 = $34; + HEAP8[$35>>0]=$31&255;HEAP8[$35+1>>0]=($31>>8)&255;HEAP8[$35+2>>0]=($31>>16)&255;HEAP8[$35+3>>0]=$31>>24; + ;HEAP8[$29>>0]=HEAP8[$8>>0]|0;HEAP8[$29+1>>0]=HEAP8[$8+1>>0]|0;HEAP8[$29+2>>0]=HEAP8[$8+2>>0]|0;HEAP8[$29+3>>0]=HEAP8[$8+3>>0]|0;HEAP8[$29+4>>0]=HEAP8[$8+4>>0]|0;HEAP8[$29+5>>0]=HEAP8[$8+5>>0]|0;HEAP8[$29+6>>0]=HEAP8[$8+6>>0]|0;HEAP8[$29+7>>0]=HEAP8[$8+7>>0]|0; + $36 = ((($skval)) + 120|0); + ;HEAP32[$end_abs$byval_copy>>2]=HEAP32[$end_abs>>2]|0;HEAP32[$end_abs$byval_copy+4>>2]=HEAP32[$end_abs+4>>2]|0; + $37 = (_GNUNET_TIME_absolute_hton($end_abs$byval_copy)|0); + $38 = tempRet0; + $39 = $9; + $40 = $39; + HEAP8[$40>>0]=$37&255;HEAP8[$40+1>>0]=($37>>8)&255;HEAP8[$40+2>>0]=($37>>16)&255;HEAP8[$40+3>>0]=$37>>24; + $41 = (($39) + 4)|0; + $42 = $41; + HEAP8[$42>>0]=$38&255;HEAP8[$42+1>>0]=($38>>8)&255;HEAP8[$42+2>>0]=($38>>16)&255;HEAP8[$42+3>>0]=$38>>24; + ;HEAP8[$36>>0]=HEAP8[$9>>0]|0;HEAP8[$36+1>>0]=HEAP8[$9+1>>0]|0;HEAP8[$36+2>>0]=HEAP8[$9+2>>0]|0;HEAP8[$36+3>>0]=HEAP8[$9+3>>0]|0;HEAP8[$36+4>>0]=HEAP8[$9+4>>0]|0;HEAP8[$36+5>>0]=HEAP8[$9+5>>0]|0;HEAP8[$36+6>>0]=HEAP8[$9+6>>0]|0;HEAP8[$36+7>>0]=HEAP8[$9+7>>0]|0; + $43 = ((($skval)) + 128|0); + dest=$43; src=$signkey_key; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $44 = (_htonl(1024)|0); + $45 = ((($skval)) + 64|0); + $46 = ((($45)) + 4|0); + HEAP8[$46>>0]=$44&255;HEAP8[$46+1>>0]=($44>>8)&255;HEAP8[$46+2>>0]=($44>>16)&255;HEAP8[$46+3>>0]=$44>>24; + $47 = (_htonl(96)|0); + $48 = ((($skval)) + 64|0); + HEAP8[$48>>0]=$47&255;HEAP8[$48+1>>0]=($47>>8)&255;HEAP8[$48+2>>0]=($47>>16)&255;HEAP8[$48+3>>0]=$47>>24; + $49 = ((($skval)) + 64|0); + $50 = $6; + $51 = $1; + $52 = (_GNUNET_CRYPTO_eddsa_verify(1024,$49,$50,$51)|0); + $53 = (1)!=($52|0); + if ($53) { + $0 = 0; + $54 = $0; + STACKTOP = sp;return ($54|0); + } else { + $0 = 1; + $54 = $0; + STACKTOP = sp;return ($54|0); + } + return (0)|0; +} +function _TALER_WR_verify_sign_key_enc($master_enc,$date,$expire,$end,$signkey_enc,$sig_enc) { + $master_enc = $master_enc|0; + $date = $date|0; + $expire = $expire|0; + $end = $end|0; + $signkey_enc = $signkey_enc|0; + $sig_enc = $sig_enc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $master = 0; + var $sig = 0, $signkey = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $master = sp + 120|0; + $signkey = sp + 88|0; + $sig = sp + 24|0; + $0 = $master_enc; + $1 = $date; + $2 = $expire; + $3 = $end; + $4 = $signkey_enc; + $5 = $sig_enc; + $6 = $0; + $7 = $0; + $8 = (_strlen($7)|0); + (_GNUNET_STRINGS_string_to_data($6,$8,$master,32)|0); + $9 = $4; + $10 = $4; + $11 = (_strlen($10)|0); + (_GNUNET_STRINGS_string_to_data($9,$11,$signkey,32)|0); + $12 = $5; + $13 = $5; + $14 = (_strlen($13)|0); + (_GNUNET_STRINGS_string_to_data($12,$14,$sig,64)|0); + $15 = $1; + $16 = $2; + $17 = $3; + $18 = (_TALER_WR_verify_sign_key($master,$15,$16,$17,$signkey,$sig)|0); + STACKTOP = sp;return ($18|0); +} +function _TALER_WRALL_sign_deposit_permission($h_contract,$h_wire,$timestamp,$refund,$trans_id,$amount_plus_fee,$deposit_fee,$merchant_pub,$coin_pub,$coin_priv) { + $h_contract = $h_contract|0; + $h_wire = $h_wire|0; + $timestamp = $timestamp|0; + $refund = $refund|0; + $trans_id = $trans_id|0; + $amount_plus_fee = $amount_plus_fee|0; + $deposit_fee = $deposit_fee|0; + $merchant_pub = $merchant_pub|0; + $coin_pub = $coin_pub|0; + $coin_priv = $coin_priv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; + var $9 = 0, $coin = 0, $depperm = 0, $merchant = 0, $refund_abs = 0, $refund_abs$byval_copy = 0, $signature = 0, $timestamp_abs = 0, $timestamp_abs$byval_copy = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 432|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $refund_abs$byval_copy = sp + 24|0; + $timestamp_abs$byval_copy = sp + 16|0; + $depperm = sp + 160|0; + $timestamp_abs = sp + 8|0; + $refund_abs = sp; + $coin = sp + 128|0; + $merchant = sp + 96|0; + $11 = sp + 88|0; + $12 = sp + 80|0; + $1 = $h_contract; + $2 = $h_wire; + $3 = $timestamp; + $4 = $refund; + $5 = $trans_id; + $6 = $amount_plus_fee; + $7 = $deposit_fee; + $8 = $merchant_pub; + $9 = $coin_pub; + $10 = $coin_priv; + $13 = ((($depperm)) + 8|0); + $14 = $1; + dest=$13; src=$14; stop=dest+64|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $15 = ((($depperm)) + 72|0); + $16 = $2; + dest=$15; src=$16; stop=dest+64|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $17 = $9; + dest=$coin; src=$17; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $18 = $8; + dest=$merchant; src=$18; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $19 = $3; + $20 = (_time_from_seconds($19,$timestamp_abs)|0); + $21 = (-1)==($20|0); + if ($21) { + $0 = 0; + $60 = $0; + STACKTOP = sp;return ($60|0); + } + $22 = $4; + $23 = (_time_from_seconds($22,$refund_abs)|0); + $24 = (-1)==($23|0); + if ($24) { + $0 = 0; + $60 = $0; + STACKTOP = sp;return ($60|0); + } else { + $25 = ((($depperm)) + 136|0); + ;HEAP32[$timestamp_abs$byval_copy>>2]=HEAP32[$timestamp_abs>>2]|0;HEAP32[$timestamp_abs$byval_copy+4>>2]=HEAP32[$timestamp_abs+4>>2]|0; + $26 = (_GNUNET_TIME_absolute_hton($timestamp_abs$byval_copy)|0); + $27 = tempRet0; + $28 = $11; + $29 = $28; + HEAP8[$29>>0]=$26&255;HEAP8[$29+1>>0]=($26>>8)&255;HEAP8[$29+2>>0]=($26>>16)&255;HEAP8[$29+3>>0]=$26>>24; + $30 = (($28) + 4)|0; + $31 = $30; + HEAP8[$31>>0]=$27&255;HEAP8[$31+1>>0]=($27>>8)&255;HEAP8[$31+2>>0]=($27>>16)&255;HEAP8[$31+3>>0]=$27>>24; + ;HEAP8[$25>>0]=HEAP8[$11>>0]|0;HEAP8[$25+1>>0]=HEAP8[$11+1>>0]|0;HEAP8[$25+2>>0]=HEAP8[$11+2>>0]|0;HEAP8[$25+3>>0]=HEAP8[$11+3>>0]|0;HEAP8[$25+4>>0]=HEAP8[$11+4>>0]|0;HEAP8[$25+5>>0]=HEAP8[$11+5>>0]|0;HEAP8[$25+6>>0]=HEAP8[$11+6>>0]|0;HEAP8[$25+7>>0]=HEAP8[$11+7>>0]|0; + $32 = ((($depperm)) + 144|0); + ;HEAP32[$refund_abs$byval_copy>>2]=HEAP32[$refund_abs>>2]|0;HEAP32[$refund_abs$byval_copy+4>>2]=HEAP32[$refund_abs+4>>2]|0; + $33 = (_GNUNET_TIME_absolute_hton($refund_abs$byval_copy)|0); + $34 = tempRet0; + $35 = $12; + $36 = $35; + HEAP8[$36>>0]=$33&255;HEAP8[$36+1>>0]=($33>>8)&255;HEAP8[$36+2>>0]=($33>>16)&255;HEAP8[$36+3>>0]=$33>>24; + $37 = (($35) + 4)|0; + $38 = $37; + HEAP8[$38>>0]=$34&255;HEAP8[$38+1>>0]=($34>>8)&255;HEAP8[$38+2>>0]=($34>>16)&255;HEAP8[$38+3>>0]=$34>>24; + ;HEAP8[$32>>0]=HEAP8[$12>>0]|0;HEAP8[$32+1>>0]=HEAP8[$12+1>>0]|0;HEAP8[$32+2>>0]=HEAP8[$12+2>>0]|0;HEAP8[$32+3>>0]=HEAP8[$12+3>>0]|0;HEAP8[$32+4>>0]=HEAP8[$12+4>>0]|0;HEAP8[$32+5>>0]=HEAP8[$12+5>>0]|0;HEAP8[$32+6>>0]=HEAP8[$12+6>>0]|0;HEAP8[$32+7>>0]=HEAP8[$12+7>>0]|0; + $39 = $5; + $40 = (_GNUNET_htonll($39,0)|0); + $41 = tempRet0; + $42 = ((($depperm)) + 152|0); + $43 = $42; + $44 = $43; + HEAP8[$44>>0]=$40&255;HEAP8[$44+1>>0]=($40>>8)&255;HEAP8[$44+2>>0]=($40>>16)&255;HEAP8[$44+3>>0]=$40>>24; + $45 = (($43) + 4)|0; + $46 = $45; + HEAP8[$46>>0]=$41&255;HEAP8[$46+1>>0]=($41>>8)&255;HEAP8[$46+2>>0]=($41>>16)&255;HEAP8[$46+3>>0]=$41>>24; + $47 = ((($depperm)) + 160|0); + $48 = $6; + _TALER_amount_hton($47,$48); + $49 = ((($depperm)) + 184|0); + $50 = $7; + _TALER_amount_hton($49,$50); + $51 = ((($depperm)) + 208|0); + dest=$51; src=$merchant; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $52 = ((($depperm)) + 240|0); + dest=$52; src=$coin; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $53 = (_htonl(272)|0); + HEAP8[$depperm>>0]=$53&255;HEAP8[$depperm+1>>0]=($53>>8)&255;HEAP8[$depperm+2>>0]=($53>>16)&255;HEAP8[$depperm+3>>0]=$53>>24; + $54 = (_htonl(1201)|0); + $55 = ((($depperm)) + 4|0); + HEAP8[$55>>0]=$54&255;HEAP8[$55+1>>0]=($54>>8)&255;HEAP8[$55+2>>0]=($54>>16)&255;HEAP8[$55+3>>0]=$54>>24; + $56 = (_GNUNET_xmalloc_(64,19102,1137)|0); + $signature = $56; + $57 = $10; + $58 = $signature; + (_GNUNET_CRYPTO_eddsa_sign($57,$depperm,$58)|0); + $59 = $signature; + $0 = $59; + $60 = $0; + STACKTOP = sp;return ($60|0); + } + return (0)|0; +} +function _TALER_WR_verify_confirmation($h_contract,$h_wire,$timestamp,$refund,$0,$1,$amount_minus_fee,$coin_pub,$merchant_pub,$sig,$mint_pub) { + $h_contract = $h_contract|0; + $h_wire = $h_wire|0; + $timestamp = $timestamp|0; + $refund = $refund|0; + $0 = $0|0; + $1 = $1|0; + $amount_minus_fee = $amount_minus_fee|0; + $coin_pub = $coin_pub|0; + $merchant_pub = $merchant_pub|0; + $sig = $sig|0; + $mint_pub = $mint_pub|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, $coin = 0, $dc = 0, $merchant = 0, $refund_abs = 0, $refund_abs$byval_copy = 0, $timestamp_abs = 0, $timestamp_abs$byval_copy = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 416|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $refund_abs$byval_copy = sp + 32|0; + $timestamp_abs$byval_copy = sp + 24|0; + $7 = sp + 16|0; + $dc = sp + 160|0; + $coin = sp + 128|0; + $merchant = sp + 96|0; + $timestamp_abs = sp + 8|0; + $refund_abs = sp; + $13 = sp + 88|0; + $14 = sp + 80|0; + $3 = $h_contract; + $4 = $h_wire; + $5 = $timestamp; + $6 = $refund; + $15 = $7; + $16 = $15; + HEAP32[$16>>2] = $0; + $17 = (($15) + 4)|0; + $18 = $17; + HEAP32[$18>>2] = $1; + $8 = $amount_minus_fee; + $9 = $coin_pub; + $10 = $merchant_pub; + $11 = $sig; + $12 = $mint_pub; + $19 = ((($dc)) + 8|0); + $20 = $3; + dest=$19; src=$20; stop=dest+64|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $21 = ((($dc)) + 72|0); + $22 = $4; + dest=$21; src=$22; stop=dest+64|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $23 = $9; + dest=$coin; src=$23; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $24 = $10; + dest=$merchant; src=$24; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $25 = ((($dc)) + 216|0); + dest=$25; src=$merchant; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $26 = ((($dc)) + 184|0); + dest=$26; src=$coin; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $27 = $5; + $28 = (_time_from_seconds($27,$timestamp_abs)|0); + $29 = (-1)==($28|0); + if ($29) { + $2 = -1; + $69 = $2; + STACKTOP = sp;return ($69|0); + } + $30 = $6; + $31 = (_time_from_seconds($30,$refund_abs)|0); + $32 = (-1)==($31|0); + if ($32) { + $2 = -1; + $69 = $2; + STACKTOP = sp;return ($69|0); + } + $33 = ((($dc)) + 144|0); + ;HEAP32[$timestamp_abs$byval_copy>>2]=HEAP32[$timestamp_abs>>2]|0;HEAP32[$timestamp_abs$byval_copy+4>>2]=HEAP32[$timestamp_abs+4>>2]|0; + $34 = (_GNUNET_TIME_absolute_hton($timestamp_abs$byval_copy)|0); + $35 = tempRet0; + $36 = $13; + $37 = $36; + HEAP8[$37>>0]=$34&255;HEAP8[$37+1>>0]=($34>>8)&255;HEAP8[$37+2>>0]=($34>>16)&255;HEAP8[$37+3>>0]=$34>>24; + $38 = (($36) + 4)|0; + $39 = $38; + HEAP8[$39>>0]=$35&255;HEAP8[$39+1>>0]=($35>>8)&255;HEAP8[$39+2>>0]=($35>>16)&255;HEAP8[$39+3>>0]=$35>>24; + ;HEAP8[$33>>0]=HEAP8[$13>>0]|0;HEAP8[$33+1>>0]=HEAP8[$13+1>>0]|0;HEAP8[$33+2>>0]=HEAP8[$13+2>>0]|0;HEAP8[$33+3>>0]=HEAP8[$13+3>>0]|0;HEAP8[$33+4>>0]=HEAP8[$13+4>>0]|0;HEAP8[$33+5>>0]=HEAP8[$13+5>>0]|0;HEAP8[$33+6>>0]=HEAP8[$13+6>>0]|0;HEAP8[$33+7>>0]=HEAP8[$13+7>>0]|0; + $40 = ((($dc)) + 152|0); + ;HEAP32[$refund_abs$byval_copy>>2]=HEAP32[$refund_abs>>2]|0;HEAP32[$refund_abs$byval_copy+4>>2]=HEAP32[$refund_abs+4>>2]|0; + $41 = (_GNUNET_TIME_absolute_hton($refund_abs$byval_copy)|0); + $42 = tempRet0; + $43 = $14; + $44 = $43; + HEAP8[$44>>0]=$41&255;HEAP8[$44+1>>0]=($41>>8)&255;HEAP8[$44+2>>0]=($41>>16)&255;HEAP8[$44+3>>0]=$41>>24; + $45 = (($43) + 4)|0; + $46 = $45; + HEAP8[$46>>0]=$42&255;HEAP8[$46+1>>0]=($42>>8)&255;HEAP8[$46+2>>0]=($42>>16)&255;HEAP8[$46+3>>0]=$42>>24; + ;HEAP8[$40>>0]=HEAP8[$14>>0]|0;HEAP8[$40+1>>0]=HEAP8[$14+1>>0]|0;HEAP8[$40+2>>0]=HEAP8[$14+2>>0]|0;HEAP8[$40+3>>0]=HEAP8[$14+3>>0]|0;HEAP8[$40+4>>0]=HEAP8[$14+4>>0]|0;HEAP8[$40+5>>0]=HEAP8[$14+5>>0]|0;HEAP8[$40+6>>0]=HEAP8[$14+6>>0]|0;HEAP8[$40+7>>0]=HEAP8[$14+7>>0]|0; + $47 = ((($dc)) + 160|0); + $48 = $8; + _TALER_amount_hton($47,$48); + $49 = $7; + $50 = $49; + $51 = HEAP32[$50>>2]|0; + $52 = (($49) + 4)|0; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + $55 = (_GNUNET_htonll($51,$54)|0); + $56 = tempRet0; + $57 = ((($dc)) + 136|0); + $58 = $57; + $59 = $58; + HEAP8[$59>>0]=$55&255;HEAP8[$59+1>>0]=($55>>8)&255;HEAP8[$59+2>>0]=($55>>16)&255;HEAP8[$59+3>>0]=$55>>24; + $60 = (($58) + 4)|0; + $61 = $60; + HEAP8[$61>>0]=$56&255;HEAP8[$61+1>>0]=($56>>8)&255;HEAP8[$61+2>>0]=($56>>16)&255;HEAP8[$61+3>>0]=$56>>24; + $62 = (_htonl(1033)|0); + $63 = ((($dc)) + 4|0); + HEAP8[$63>>0]=$62&255;HEAP8[$63+1>>0]=($62>>8)&255;HEAP8[$63+2>>0]=($62>>16)&255;HEAP8[$63+3>>0]=$62>>24; + $64 = (_htonl(248)|0); + HEAP8[$dc>>0]=$64&255;HEAP8[$dc+1>>0]=($64>>8)&255;HEAP8[$dc+2>>0]=($64>>16)&255;HEAP8[$dc+3>>0]=$64>>24; + $65 = $11; + $66 = $12; + $67 = (_GNUNET_CRYPTO_eddsa_verify(1033,$dc,$65,$66)|0); + $68 = (-1)==($67|0); + if ($68) { + $2 = 0; + $69 = $2; + STACKTOP = sp;return ($69|0); + } else { + $2 = 1; + $69 = $2; + STACKTOP = sp;return ($69|0); + } + return (0)|0; +} +function _TALER_WRALL_make_eddsa_signature($priv,$purp) { + $priv = $priv|0; + $purp = $purp|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $sig = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $priv; + $1 = $purp; + $2 = (_GNUNET_xmalloc_(64,19102,1248)|0); + $sig = $2; + $3 = $0; + $4 = $1; + $5 = $sig; + (_GNUNET_CRYPTO_eddsa_sign($3,$4,$5)|0); + $6 = $sig; + STACKTOP = sp;return ($6|0); +} +function _DEBUG_WR_get_purpose($test) { + $test = $test|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $test; + $1 = $0; + $2 = HEAPU8[$1>>0]|(HEAPU8[$1+1>>0]<<8)|(HEAPU8[$1+2>>0]<<16)|(HEAPU8[$1+3>>0]<<24); + $3 = (_ntohl($2)|0); + STACKTOP = sp;return ($3|0); +} +function _TALER_WRALL_get_amount($0,$1,$fraction,$cur) { + $0 = $0|0; + $1 = $1|0; + $fraction = $fraction|0; + $cur = $cur|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $amount = 0, $ptr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $3 = sp + 24|0; + $amount = sp; + $6 = $3; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + $4 = $fraction; + $5 = $cur; + $10 = $5; + $11 = (_TALER_amount_get_zero($10,$amount)|0); + $12 = (1)!=($11|0); + if ($12) { + $2 = 0; + $28 = $2; + STACKTOP = sp;return ($28|0); + } else { + $13 = $3; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = (($13) + 4)|0; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $19 = $amount; + $20 = $19; + HEAP32[$20>>2] = $15; + $21 = (($19) + 4)|0; + $22 = $21; + HEAP32[$22>>2] = $18; + $23 = $4; + $24 = ((($amount)) + 8|0); + HEAP32[$24>>2] = $23; + $25 = (_GNUNET_xmalloc_(24,19102,1291)|0); + $ptr = $25; + $26 = $ptr; + ;HEAP32[$26>>2]=HEAP32[$amount>>2]|0;HEAP32[$26+4>>2]=HEAP32[$amount+4>>2]|0;HEAP32[$26+8>>2]=HEAP32[$amount+8>>2]|0;HEAP32[$26+12>>2]=HEAP32[$amount+12>>2]|0;HEAP32[$26+16>>2]=HEAP32[$amount+16>>2]|0;HEAP32[$26+20>>2]=HEAP32[$amount+20>>2]|0; + $27 = $ptr; + $2 = $27; + $28 = $2; + STACKTOP = sp;return ($28|0); + } + return (0)|0; +} +function _TALER_WR_hello_world() { + var $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + (_printf(19244,$vararg_buffer)|0); + STACKTOP = sp;return; +} +function _TALER_WR_get_value($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $0; + $2 = $1; + $3 = $2; + $4 = HEAP32[$3>>2]|0; + $5 = (($2) + 4)|0; + $6 = $5; + $7 = HEAP32[$6>>2]|0; + tempRet0 = ($7); + STACKTOP = sp;return ($4|0); +} +function _TALER_WR_get_fraction($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $0; + $2 = ((($1)) + 8|0); + $3 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($3|0); +} +function _TALER_WR_get_currency($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $0; + $2 = ((($1)) + 12|0); + STACKTOP = sp;return ($2|0); +} +function _TALER_WR_multiply_amount($a,$factor) { + $a = $a|0; + $factor = $factor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $tmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $tmp = sp; + $1 = $a; + $2 = $factor; + $3 = $1; + $4 = ((($3)) + 12|0); + (_TALER_amount_get_zero($4,$tmp)|0); + $5 = $1; + $6 = (_TALER_amount_normalize($5)|0); + $7 = (-1)==($6|0); + if ($7) { + $0 = -1; + $56 = $0; + STACKTOP = sp;return ($56|0); + } + $8 = $1; + $9 = $8; + $10 = $9; + $11 = HEAP32[$10>>2]|0; + $12 = (($9) + 4)|0; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = $2; + $16 = (___muldi3(($11|0),($14|0),($15|0),0)|0); + $17 = tempRet0; + $18 = $tmp; + $19 = $18; + HEAP32[$19>>2] = $16; + $20 = (($18) + 4)|0; + $21 = $20; + HEAP32[$21>>2] = $17; + $22 = $tmp; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = (($22) + 4)|0; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = $2; + $29 = (___udivdi3(($24|0),($27|0),($28|0),0)|0); + $30 = tempRet0; + $31 = $1; + $32 = $31; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = (($32) + 4)|0; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = ($29|0)!=($34|0); + $39 = ($30|0)!=($37|0); + $40 = $38 | $39; + if ($40) { + $0 = -1; + $56 = $0; + STACKTOP = sp;return ($56|0); + } + $41 = $1; + $42 = ((($41)) + 8|0); + $43 = HEAP32[$42>>2]|0; + $44 = $2; + $45 = Math_imul($43, $44)|0; + $46 = ((($tmp)) + 8|0); + HEAP32[$46>>2] = $45; + $47 = ((($tmp)) + 8|0); + $48 = HEAP32[$47>>2]|0; + $49 = $2; + $50 = (($48>>>0) / ($49>>>0))&-1; + $51 = $1; + $52 = ((($51)) + 8|0); + $53 = HEAP32[$52>>2]|0; + $54 = ($50|0)!=($53|0); + if ($54) { + $0 = -1; + $56 = $0; + STACKTOP = sp;return ($56|0); + } else { + (_TALER_amount_normalize($tmp)|0); + $55 = $1; + ;HEAP32[$55>>2]=HEAP32[$tmp>>2]|0;HEAP32[$55+4>>2]=HEAP32[$tmp+4>>2]|0;HEAP32[$55+8>>2]=HEAP32[$tmp+8>>2]|0;HEAP32[$55+12>>2]=HEAP32[$tmp+12>>2]|0;HEAP32[$55+16>>2]=HEAP32[$tmp+16>>2]|0;HEAP32[$55+20>>2]=HEAP32[$tmp+20>>2]|0; + $0 = 1; + $56 = $0; + STACKTOP = sp;return ($56|0); + } + return (0)|0; +} +function _TALER_WR_multiply_amounts($a,$b) { + $a = $a|0; + $b = $b|0; + var $0 = 0.0, $1 = 0, $10 = 0, $11 = 0, $12 = 0.0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0.0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0.0; + var $27 = 0.0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0.0, $37 = 0.0, $38 = 0.0, $39 = 0.0, $4 = 0, $40 = 0.0, $41 = 0.0, $42 = 0.0, $43 = 0.0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ad = 0.0, $bd = 0.0, $ret = 0.0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $a; + $2 = $b; + $3 = $1; + $4 = (_TALER_amount_normalize($3)|0); + $5 = (-1)==($4|0); + if ($5) { + $0 = -1.0; + $43 = $0; + STACKTOP = sp;return (+$43); + } + $6 = $2; + $7 = (_TALER_amount_normalize($6)|0); + $8 = (-1)==($7|0); + if ($8) { + $0 = -1.0; + $43 = $0; + STACKTOP = sp;return (+$43); + } else { + $9 = $1; + $10 = ((($9)) + 8|0); + $11 = HEAP32[$10>>2]|0; + $12 = (+($11>>>0)); + $13 = $12 / 1.0E+6; + $ad = $13; + $14 = $2; + $15 = ((($14)) + 8|0); + $16 = HEAP32[$15>>2]|0; + $17 = (+($16>>>0)); + $18 = $17 / 1.0E+6; + $bd = $18; + $19 = $1; + $20 = $19; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = (($20) + 4)|0; + $24 = $23; + $25 = HEAP32[$24>>2]|0; + $26 = (+($22>>>0)) + (4294967296.0*(+($25>>>0))); + $27 = $ad; + $28 = $27 + $26; + $ad = $28; + $29 = $2; + $30 = $29; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = (+($32>>>0)) + (4294967296.0*(+($35>>>0))); + $37 = $bd; + $38 = $37 + $36; + $bd = $38; + $39 = $ad; + $40 = $bd; + $41 = $39 * $40; + $ret = $41; + $42 = $ret; + $0 = $42; + $43 = $0; + STACKTOP = sp;return (+$43); + } + return +(0.0); +} +function _GNUNET_xmalloc_($size,$filename,$linenumber) { + $size = $size|0; + $filename = $filename|0; + $linenumber = $linenumber|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $log_line = 0, $log_line1 = 0, $log_line2 = 0, $ret = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer8 = 0, $vararg_ptr1 = 0, $vararg_ptr11 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer8 = sp + 24|0; + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $0 = $size; + $1 = $filename; + $2 = $linenumber; + $3 = $0; + $4 = ($3>>>0)<=(41943040); + if (!($4)) { + $log_line = 74; + $5 = HEAP32[185]|0; + $6 = ($5|0)==(-1); + if ($6) { + $7 = $log_line; + $8 = (_GNUNET_get_log_call_status(1,0,19285,19305,$7)|0); + HEAP32[185] = $8; + } + $9 = (_GNUNET_get_log_skip()|0); + $10 = ($9|0)>(0); + if ($10) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $11 = HEAP32[185]|0; + $12 = ($11|0)!=(0); + if (!($12)) { + _GNUNET_abort_(); + // unreachable; + } + $13 = $1; + $14 = $2; + HEAP32[$vararg_buffer>>2] = $13; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $14; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + } + $15 = $0; + $16 = $1; + $17 = $2; + $18 = (_GNUNET_xmalloc_unchecked_($15,$16,$17)|0); + $ret = $18; + $19 = $ret; + $20 = (0|0)==($19|0); + if (!($20)) { + $40 = $ret; + STACKTOP = sp;return ($40|0); + } + $log_line1 = 81; + $21 = HEAP32[186]|0; + $22 = ($21|0)==(-1); + if ($22) { + $23 = $log_line1; + $24 = (_GNUNET_get_log_call_status(1,21106,19285,19305,$23)|0); + HEAP32[186] = $24; + } + $25 = (_GNUNET_get_log_skip()|0); + $26 = ($25|0)>(0); + if ($26) { + _GNUNET_log_skip(-1,0); + } else { + $27 = HEAP32[186]|0; + $28 = ($27|0)!=(0); + if ($28) { + $29 = (___errno_location()|0); + $30 = HEAP32[$29>>2]|0; + $31 = (_strerror($30)|0); + HEAP32[$vararg_buffer2>>2] = 19321; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = 19285; + $vararg_ptr6 = ((($vararg_buffer2)) + 8|0); + HEAP32[$vararg_ptr6>>2] = 81; + $vararg_ptr7 = ((($vararg_buffer2)) + 12|0); + HEAP32[$vararg_ptr7>>2] = $31; + _GNUNET_log_from_nocheck(1,21106,20684,$vararg_buffer2); + } + } + $log_line2 = 82; + $32 = HEAP32[187]|0; + $33 = ($32|0)==(-1); + if ($33) { + $34 = $log_line2; + $35 = (_GNUNET_get_log_call_status(1,0,19285,19305,$34)|0); + HEAP32[187] = $35; + } + $36 = (_GNUNET_get_log_skip()|0); + $37 = ($36|0)>(0); + if ($37) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $38 = HEAP32[187]|0; + $39 = ($38|0)!=(0); + if (!($39)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer8>>2] = 19285; + $vararg_ptr11 = ((($vararg_buffer8)) + 4|0); + HEAP32[$vararg_ptr11>>2] = 82; + _GNUNET_log_nocheck(1,61615,$vararg_buffer8); + _GNUNET_abort_(); + // unreachable; + return (0)|0; +} +function _GNUNET_xmalloc_unchecked_($size,$filename,$linenumber) { + $size = $size|0; + $filename = $filename|0; + $linenumber = $linenumber|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $result = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $size; + $2 = $filename; + $3 = $linenumber; + $4 = $1; + $5 = (_malloc($4)|0); + $result = $5; + $6 = $result; + $7 = (0|0)==($6|0); + if ($7) { + $0 = 0; + $11 = $0; + STACKTOP = sp;return ($11|0); + } else { + $8 = $result; + $9 = $1; + _memset(($8|0),0,($9|0))|0; + $10 = $result; + $0 = $10; + $11 = $0; + STACKTOP = sp;return ($11|0); + } + return (0)|0; +} +function _GNUNET_xfree_($ptr,$filename,$linenumber) { + $ptr = $ptr|0; + $filename = $filename|0; + $linenumber = $linenumber|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $log_line = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $ptr; + $1 = $filename; + $2 = $linenumber; + $3 = $0; + $4 = (0|0)!=($3|0); + if ($4) { + $15 = $0; + _free($15); + STACKTOP = sp;return; + } + $log_line = 237; + $5 = HEAP32[188]|0; + $6 = ($5|0)==(-1); + if ($6) { + $7 = $log_line; + $8 = (_GNUNET_get_log_call_status(1,0,19285,19328,$7)|0); + HEAP32[188] = $8; + } + $9 = (_GNUNET_get_log_skip()|0); + $10 = ($9|0)>(0); + if ($10) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $11 = HEAP32[188]|0; + $12 = ($11|0)!=(0); + if (!($12)) { + _GNUNET_abort_(); + // unreachable; + } + $13 = $1; + $14 = $2; + HEAP32[$vararg_buffer>>2] = $13; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $14; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; +} +function _GNUNET_xstrdup_($str,$filename,$linenumber) { + $str = $str|0; + $filename = $filename|0; + $linenumber = $linenumber|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $log_line = 0, $res = 0, $slen = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $str; + $1 = $filename; + $2 = $linenumber; + $3 = $0; + $4 = ($3|0)!=(0|0); + if ($4) { + $15 = $0; + $16 = (_strlen($15)|0); + $17 = (($16) + 1)|0; + $slen = $17; + $18 = $slen; + $19 = $1; + $20 = $2; + $21 = (_GNUNET_xmalloc_($18,$19,$20)|0); + $res = $21; + $22 = $res; + $23 = $0; + $24 = $slen; + _memcpy(($22|0),($23|0),($24|0))|0; + $25 = $res; + STACKTOP = sp;return ($25|0); + } + $log_line = 278; + $5 = HEAP32[189]|0; + $6 = ($5|0)==(-1); + if ($6) { + $7 = $log_line; + $8 = (_GNUNET_get_log_call_status(1,0,19285,19342,$7)|0); + HEAP32[189] = $8; + } + $9 = (_GNUNET_get_log_skip()|0); + $10 = ($9|0)>(0); + if ($10) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $11 = HEAP32[189]|0; + $12 = ($11|0)!=(0); + if (!($12)) { + _GNUNET_abort_(); + // unreachable; + } + $13 = $1; + $14 = $2; + HEAP32[$vararg_buffer>>2] = $13; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $14; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + return (0)|0; +} +function _GNUNET_snprintf($buf,$size,$format,$varargs) { + $buf = $buf|0; + $size = $size|0; + $format = $format|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $args = 0; + var $log_line = 0, $ret = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $args = sp + 16|0; + $0 = $buf; + $1 = $size; + $2 = $format; + HEAP32[$args>>2] = $varargs; + $3 = $0; + $4 = $1; + $5 = $2; + $6 = (_vsnprintf($3,$4,$5,$args)|0); + $ret = $6; + $7 = $ret; + $8 = $1; + $9 = ($7>>>0)<($8>>>0); + if ($9) { + $18 = $ret; + STACKTOP = sp;return ($18|0); + } + $log_line = 433; + $10 = HEAP32[190]|0; + $11 = ($10|0)==(-1); + if ($11) { + $12 = $log_line; + $13 = (_GNUNET_get_log_call_status(1,0,19285,19358,$12)|0); + HEAP32[190] = $13; + } + $14 = (_GNUNET_get_log_skip()|0); + $15 = ($14|0)>(0); + if ($15) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $16 = HEAP32[190]|0; + $17 = ($16|0)!=(0); + if (!($17)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 19285; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 433; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + return (0)|0; +} +function _GNUNET_htonll($0,$1) { + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $2 = sp; + $3 = $2; + $4 = $3; + HEAP32[$4>>2] = $0; + $5 = (($3) + 4)|0; + $6 = $5; + HEAP32[$6>>2] = $1; + $7 = $2; + $8 = $7; + $9 = HEAP32[$8>>2]|0; + $10 = (($7) + 4)|0; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (_htonl($9)|0); + $14 = $2; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (_htonl($19)|0); + $21 = (_i64Add(0,($13|0),($20|0),0)|0); + $22 = tempRet0; + tempRet0 = ($22); + STACKTOP = sp;return ($21|0); +} +function _GNUNET_ntohll($0,$1) { + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $2 = sp; + $3 = $2; + $4 = $3; + HEAP32[$4>>2] = $0; + $5 = (($3) + 4)|0; + $6 = $5; + HEAP32[$6>>2] = $1; + $7 = $2; + $8 = $7; + $9 = HEAP32[$8>>2]|0; + $10 = (($7) + 4)|0; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (_ntohl($9)|0); + $14 = $2; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (_ntohl($19)|0); + $21 = (_i64Add(0,($13|0),($20|0),0)|0); + $22 = tempRet0; + tempRet0 = ($22); + STACKTOP = sp;return ($21|0); +} +function _GNUNET_util_cl_init() { + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP32[3963]|0; + HEAP32[17644] = $0; + return; +} +function _GNUNET_util_cl_fini() { + var label = 0, sp = 0; + sp = STACKTOP; + return; +} +function _GNUNET_abort_() { + var label = 0, sp = 0; + sp = STACKTOP; + _abort(); + // unreachable; +} +function _GNUNET_get_log_call_status($caller_level,$comp,$file,$function,$line) { + $caller_level = $caller_level|0; + $comp = $comp|0; + $file = $file|0; + $function = $function|0; + $line = $line|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $force_only = 0, $i = 0, $ld = 0, $or$cond = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $caller_level; + $2 = $comp; + $3 = $file; + $4 = $function; + $5 = $line; + $6 = $2; + $7 = (0|0)==($6|0); + if ($7) { + $8 = HEAP32[17645]|0; + $2 = $8; + } + $9 = HEAP32[17646]|0; + $10 = ($9|0)>=(0); + $11 = HEAP32[17647]|0; + $12 = (0)==($11|0); + $or$cond = $10 & $12; + if ($or$cond) { + $13 = $1; + $14 = HEAP32[17646]|0; + $15 = ($13|0)<=($14|0); + $16 = $15&1; + $0 = $16; + $72 = $0; + STACKTOP = sp;return ($72|0); + } + $17 = HEAP32[17646]|0; + $18 = ($17|0)>=(0); + $19 = $18&1; + $force_only = $19; + $i = 0; + while(1) { + $20 = $i; + $21 = HEAP32[17648]|0; + $22 = ($20|0)<($21|0); + if (!($22)) { + break; + } + $23 = $i; + $24 = HEAP32[17649]|0; + $25 = (($24) + (($23*112)|0)|0); + $ld = $25; + $26 = $force_only; + $27 = ($26|0)!=(0); + if ($27) { + $28 = $ld; + $29 = ((($28)) + 108|0); + $30 = HEAP32[$29>>2]|0; + $31 = ($30|0)!=(0); + if ($31) { + label = 9; + } + } else { + label = 9; + } + if ((label|0) == 9) { + label = 0; + $32 = $5; + $33 = $ld; + $34 = ((($33)) + 96|0); + $35 = HEAP32[$34>>2]|0; + $36 = ($32|0)>=($35|0); + if ($36) { + $37 = $5; + $38 = $ld; + $39 = ((($38)) + 100|0); + $40 = HEAP32[$39>>2]|0; + $41 = ($37|0)<=($40|0); + if ($41) { + $42 = $ld; + $43 = $2; + $44 = (_regexec($42,$43,0,0,0)|0); + $45 = (0)==($44|0); + if ($45) { + $46 = $ld; + $47 = ((($46)) + 32|0); + $48 = $3; + $49 = (_regexec($47,$48,0,0,0)|0); + $50 = (0)==($49|0); + if ($50) { + $51 = $ld; + $52 = ((($51)) + 64|0); + $53 = $4; + $54 = (_regexec($52,$53,0,0,0)|0); + $55 = (0)==($54|0); + if ($55) { + label = 14; + break; + } + } + } + } + } + } + $62 = $i; + $63 = (($62) + 1)|0; + $i = $63; + } + if ((label|0) == 14) { + $56 = $1; + $57 = $ld; + $58 = ((($57)) + 104|0); + $59 = HEAP32[$58>>2]|0; + $60 = ($56|0)<=($59|0); + $61 = $60&1; + $0 = $61; + $72 = $0; + STACKTOP = sp;return ($72|0); + } + $64 = HEAP32[17646]|0; + $65 = ($64|0)>=(0); + $66 = $1; + if ($65) { + $67 = HEAP32[17646]|0; + $68 = ($66|0)<=($67|0); + $69 = $68&1; + $0 = $69; + $72 = $0; + STACKTOP = sp;return ($72|0); + } else { + $70 = ($66|0)<=(2); + $71 = $70&1; + $0 = $71; + $72 = $0; + STACKTOP = sp;return ($72|0); + } + return (0)|0; +} +function _setup_log_file($tm) { + $tm = $tm|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $altlog = 0, $altlog_fd = 0, $dup_return = 0, $fn = 0, $leftsquare = 0, $log_line = 0, $logfile_copy = 0, $vararg_buffer = 0, $vararg_buffer3 = 0; + var $vararg_buffer6 = 0, $vararg_ptr1 = 0, $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr12 = 0, $vararg_ptr2 = 0, $vararg_ptr9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 4176|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer6 = sp + 24|0; + $vararg_buffer3 = sp + 16|0; + $vararg_buffer = sp; + $fn = sp + 76|0; + $1 = $tm; + $2 = HEAP32[17651]|0; + $3 = (0|0)==($2|0); + if ($3) { + $0 = -1; + $70 = $0; + STACKTOP = sp;return ($70|0); + } + $4 = HEAP32[17651]|0; + $5 = $1; + $6 = (_strftime(($fn|0),4097,($4|0),($5|0))|0); + $7 = (0)==($6|0); + if ($7) { + $0 = -1; + $70 = $0; + STACKTOP = sp;return ($70|0); + } + $8 = (_strrchr($fn,91)|0); + $leftsquare = $8; + $9 = $leftsquare; + $10 = (0|0)!=($9|0); + if ($10) { + $11 = $leftsquare; + $12 = ((($11)) + 1|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13 << 24 >> 24; + $15 = (93)==($14|0); + if ($15) { + $16 = (_GNUNET_xstrdup_($fn,19404,344)|0); + $logfile_copy = $16; + $17 = $leftsquare; + $18 = $17; + $19 = $fn; + $20 = (($18) - ($19))|0; + $21 = $logfile_copy; + $22 = (($21) + ($20)|0); + HEAP8[$22>>0] = 0; + $23 = $leftsquare; + $24 = $23; + $25 = $fn; + $26 = (($24) - ($25))|0; + $27 = (($26) + 1)|0; + $28 = $logfile_copy; + $29 = (($28) + ($27)|0); + HEAP8[$29>>0] = 0; + $30 = $logfile_copy; + $31 = (_getpid()|0); + $32 = $leftsquare; + $33 = $32; + $34 = $fn; + $35 = (($33) - ($34))|0; + $36 = (($35) + 2)|0; + $37 = $logfile_copy; + $38 = (($37) + ($36)|0); + HEAP32[$vararg_buffer>>2] = $30; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $31; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $38; + (_snprintf($fn,4096,19427,$vararg_buffer)|0); + $39 = $logfile_copy; + _GNUNET_xfree_($39,19404,354); + } + } + $40 = (_strcmp($fn,71678)|0); + $41 = (0)==($40|0); + if ($41) { + $0 = 1; + $70 = $0; + STACKTOP = sp;return ($70|0); + } + _log_rotate(71678); + (_strcpy(71678,$fn)|0); + HEAP32[$vararg_buffer3>>2] = 420; + $42 = (_open($fn,1089,$vararg_buffer3)|0); + $altlog_fd = $42; + $43 = $altlog_fd; + $44 = (-1)!=($43|0); + do { + if ($44) { + $45 = HEAP32[17644]|0; + $46 = (0|0)!=($45|0); + if ($46) { + $47 = HEAP32[17644]|0; + (_fclose($47)|0); + } + $48 = $altlog_fd; + $49 = (_dup2($48,2)|0); + $dup_return = $49; + $50 = $altlog_fd; + (_close($50)|0); + $51 = $dup_return; + $52 = (-1)!=($51|0); + if (!($52)) { + $altlog_fd = -1; + break; + } + $53 = (___fdopen(2,19434)|0); + $altlog = $53; + $54 = $altlog; + $55 = (0|0)==($54|0); + if ($55) { + (_close(2)|0); + $altlog_fd = -1; + } + } + } while(0); + $56 = $altlog_fd; + $57 = (-1)==($56|0); + if (!($57)) { + $69 = $altlog; + HEAP32[17644] = $69; + $0 = 1; + $70 = $0; + STACKTOP = sp;return ($70|0); + } + $log_line = 392; + $58 = HEAP32[191]|0; + $59 = ($58|0)==(-1); + if ($59) { + $60 = $log_line; + $61 = (_GNUNET_get_log_call_status(1,0,19404,19437,$60)|0); + HEAP32[191] = $61; + } + $62 = (_GNUNET_get_log_skip()|0); + $63 = ($62|0)>(0); + if ($63) { + _GNUNET_log_skip(-1,0); + } else { + $64 = HEAP32[191]|0; + $65 = ($64|0)!=(0); + if ($65) { + $66 = (___errno_location()|0); + $67 = HEAP32[$66>>2]|0; + $68 = (_strerror($67)|0); + HEAP32[$vararg_buffer6>>2] = 38567; + $vararg_ptr9 = ((($vararg_buffer6)) + 4|0); + HEAP32[$vararg_ptr9>>2] = $fn; + $vararg_ptr10 = ((($vararg_buffer6)) + 8|0); + HEAP32[$vararg_ptr10>>2] = 19404; + $vararg_ptr11 = ((($vararg_buffer6)) + 12|0); + HEAP32[$vararg_ptr11>>2] = 392; + $vararg_ptr12 = ((($vararg_buffer6)) + 16|0); + HEAP32[$vararg_ptr12>>2] = $68; + _GNUNET_log_nocheck(1,19580,$vararg_buffer6); + } + } + $0 = -1; + $70 = $0; + STACKTOP = sp;return ($70|0); +} +function _log_rotate($new_name) { + $new_name = $new_name|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $discard = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $new_name; + $1 = $0; + $2 = HEAP8[$1>>0]|0; + $3 = $2 << 24 >> 24; + $4 = (0)==($3|0); + if ($4) { + STACKTOP = sp;return; + } + $5 = HEAP32[17652]|0; + $6 = (($5>>>0) % 3)&-1; + $7 = (70612 + ($6<<2)|0); + $8 = HEAP32[$7>>2]|0; + $discard = $8; + $9 = $discard; + $10 = (0|0)!=($9|0); + if ($10) { + $11 = $discard; + (_unlink($11)|0); + $12 = $discard; + _GNUNET_xfree_($12,19404,314); + } + $13 = $0; + $14 = (_GNUNET_xstrdup_($13,19404,316)|0); + $15 = HEAP32[17652]|0; + $16 = (($15>>>0) % 3)&-1; + $17 = (70612 + ($16<<2)|0); + HEAP32[$17>>2] = $14; + $18 = HEAP32[17652]|0; + $19 = (($18) + 1)|0; + HEAP32[17652] = $19; + STACKTOP = sp;return; +} +function _GNUNET_get_log_skip() { + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP32[17656]|0; + return ($0|0); +} +function _GNUNET_log_skip($n,$check_reset) { + $n = $n|0; + $check_reset = $check_reset|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $log_line = 0, $ok = 0, $or$cond = 0, $vararg_buffer = 0, $vararg_ptr2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $n; + $1 = $check_reset; + $2 = $0; + $3 = (0)==($2|0); + if (!($3)) { + $19 = $0; + $20 = HEAP32[17656]|0; + $21 = (($20) + ($19))|0; + HEAP32[17656] = $21; + STACKTOP = sp;return; + } + $4 = HEAP32[17656]|0; + $5 = (0)==($4|0); + $6 = $5&1; + $ok = $6; + HEAP32[17656] = 0; + $7 = $1; + $8 = ($7|0)==(0); + $9 = $ok; + $10 = ($9|0)!=(0); + $or$cond = $8 | $10; + if ($or$cond) { + STACKTOP = sp;return; + } + $log_line = 867; + $11 = HEAP32[192]|0; + $12 = ($11|0)==(-1); + if ($12) { + $13 = $log_line; + $14 = (_GNUNET_get_log_call_status(1,0,19404,19452,$13)|0); + HEAP32[192] = $14; + } + $15 = (_GNUNET_get_log_skip()|0); + $16 = ($15|0)>(0); + if ($16) { + _GNUNET_log_skip(-1,0); + STACKTOP = sp;return; + } + $17 = HEAP32[192]|0; + $18 = ($17|0)!=(0); + if (!($18)) { + STACKTOP = sp;return; + } + HEAP32[$vararg_buffer>>2] = 19404; + $vararg_ptr2 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr2>>2] = 867; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + STACKTOP = sp;return; +} +function _GNUNET_log_nocheck($kind,$message,$varargs) { + $kind = $kind|0; + $message = $message|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $va = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $va = sp; + $0 = $kind; + $1 = $message; + HEAP32[$va>>2] = $varargs; + $2 = $0; + $3 = HEAP32[17650]|0; + $4 = $1; + _mylog($2,$3,$4,$va); + STACKTOP = sp;return; +} +function _mylog($kind,$comp,$message,$va) { + $kind = $kind|0; + $comp = $comp|0; + $message = $message|0; + $va = $va|0; + var $$alloca_mul = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; + var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; + var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; + var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; + var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; + var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $date = 0, $date2 = 0, $last_bulk_time$byval_copy = 0, $log_line = 0, $offset = 0, $or$cond = 0; + var $or$cond3 = 0, $size = 0, $timeofday = 0, $tmptr = 0, $vacopy_currentptr = 0, $vacp = 0, $vararg_buffer = 0, $vararg_buffer5 = 0, $vararg_ptr4 = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 240|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $last_bulk_time$byval_copy = sp + 40|0; + $vararg_buffer5 = sp + 32|0; + $vararg_buffer = sp + 24|0; + $date = sp + 176|0; + $date2 = sp + 112|0; + $vacp = sp + 72|0; + $offset = sp + 16|0; + $timeofday = sp + 56|0; + $5 = sp + 8|0; + $7 = sp; + $0 = $kind; + $1 = $comp; + $2 = $message; + $3 = $va; + $8 = $3; + $vacopy_currentptr = HEAP32[$8>>2]|0; + HEAP32[$vacp>>2] = $vacopy_currentptr; + $9 = $2; + $10 = (_vsnprintf(0,0,$9,$vacp)|0); + $11 = (($10) + 1)|0; + $size = $11; + $12 = $size; + $13 = (0)!=($12|0); + if (!($13)) { + $log_line = 910; + $14 = HEAP32[193]|0; + $15 = ($14|0)==(-1); + if ($15) { + $16 = $log_line; + $17 = (_GNUNET_get_log_call_status(1,0,19404,19468,$16)|0); + HEAP32[193] = $17; + } + $18 = (_GNUNET_get_log_skip()|0); + $19 = ($18|0)>(0); + if ($19) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $20 = HEAP32[193]|0; + $21 = ($20|0)!=(0); + if (!($21)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 19404; + $vararg_ptr4 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr4>>2] = 910; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + } + dest=$date; stop=dest+64|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); + $22 = $size; + $23 = (_llvm_stacksave()|0); + $4 = $23; + $$alloca_mul = $22; + $24 = STACKTOP; STACKTOP = STACKTOP + ((((1*$$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort();; + (_gettimeofday(($timeofday|0),(0|0))|0); + $25 = (_GNUNET_TIME_get_offset()|0); + $26 = tempRet0; + $27 = $offset; + $28 = $27; + HEAP32[$28>>2] = $25; + $29 = (($27) + 4)|0; + $30 = $29; + HEAP32[$30>>2] = $26; + $31 = $offset; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = (($31) + 4)|0; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = ($36|0)>(0); + $38 = ($33>>>0)>(0); + $39 = ($36|0)==(0); + $40 = $39 & $38; + $41 = $37 | $40; + $42 = $offset; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = (___divdi3(($44|0),($47|0),1000,0)|0); + $49 = tempRet0; + $50 = HEAP32[$timeofday>>2]|0; + $51 = ($50|0)<(0); + $52 = $51 << 31 >> 31; + $53 = (_i64Add(($50|0),($52|0),($48|0),($49|0))|0); + $54 = tempRet0; + HEAP32[$timeofday>>2] = $53; + do { + if ($41) { + $55 = $offset; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + $58 = (($55) + 4)|0; + $59 = $58; + $60 = HEAP32[$59>>2]|0; + $61 = (___remdi3(($57|0),($60|0),1000,0)|0); + $62 = tempRet0; + $63 = (___muldi3(($61|0),($62|0),1000,0)|0); + $64 = tempRet0; + $65 = ((($timeofday)) + 4|0); + $66 = HEAP32[$65>>2]|0; + $67 = ($66|0)<(0); + $68 = $67 << 31 >> 31; + $69 = (_i64Add(($66|0),($68|0),($63|0),($64|0))|0); + $70 = tempRet0; + HEAP32[$65>>2] = $69; + $71 = ((($timeofday)) + 4|0); + $72 = HEAP32[$71>>2]|0; + $73 = ($72|0)<(0); + $74 = $73 << 31 >> 31; + $75 = ($74|0)>(0); + $76 = ($72>>>0)>(1000000); + $77 = ($74|0)==(0); + $78 = $77 & $76; + $79 = $75 | $78; + if ($79) { + $80 = ((($timeofday)) + 4|0); + $81 = HEAP32[$80>>2]|0; + $82 = ($81|0)<(0); + $83 = $82 << 31 >> 31; + $84 = (_i64Subtract(($81|0),($83|0),1000000,0)|0); + $85 = tempRet0; + HEAP32[$80>>2] = $84; + $86 = HEAP32[$timeofday>>2]|0; + $87 = (($86) + 1)|0; + HEAP32[$timeofday>>2] = $87; + } + } else { + $88 = ((($timeofday)) + 4|0); + $89 = HEAP32[$88>>2]|0; + $90 = ($89|0)<(0); + $91 = $90 << 31 >> 31; + $92 = $offset; + $93 = $92; + $94 = HEAP32[$93>>2]|0; + $95 = (($92) + 4)|0; + $96 = $95; + $97 = HEAP32[$96>>2]|0; + $98 = (___remdi3(($94|0),($97|0),1000,0)|0); + $99 = tempRet0; + $100 = (_i64Subtract(0,0,($98|0),($99|0))|0); + $101 = tempRet0; + $102 = (___muldi3(($100|0),($101|0),1000,0)|0); + $103 = tempRet0; + $104 = ($91|0)>($103|0); + $105 = ($89>>>0)>($102>>>0); + $106 = ($91|0)==($103|0); + $107 = $106 & $105; + $108 = $104 | $107; + $109 = $offset; + $110 = $109; + $111 = HEAP32[$110>>2]|0; + $112 = (($109) + 4)|0; + $113 = $112; + $114 = HEAP32[$113>>2]|0; + $115 = (___remdi3(($111|0),($114|0),1000,0)|0); + $116 = tempRet0; + $117 = (___muldi3(($115|0),($116|0),1000,0)|0); + $118 = tempRet0; + if ($108) { + $119 = ((($timeofday)) + 4|0); + $120 = HEAP32[$119>>2]|0; + $121 = ($120|0)<(0); + $122 = $121 << 31 >> 31; + $123 = (_i64Add(($120|0),($122|0),($117|0),($118|0))|0); + $124 = tempRet0; + HEAP32[$119>>2] = $123; + break; + } else { + $125 = (_i64Add(1000000,0,($117|0),($118|0))|0); + $126 = tempRet0; + $127 = ((($timeofday)) + 4|0); + $128 = HEAP32[$127>>2]|0; + $129 = ($128|0)<(0); + $130 = $129 << 31 >> 31; + $131 = (_i64Add(($128|0),($130|0),($125|0),($126|0))|0); + $132 = tempRet0; + HEAP32[$127>>2] = $131; + $133 = HEAP32[$timeofday>>2]|0; + $134 = (($133) + -1)|0; + HEAP32[$timeofday>>2] = $134; + break; + } + } + } while(0); + $135 = (_localtime(($timeofday|0))|0); + $tmptr = $135; + $136 = $tmptr; + $137 = (0|0)==($136|0); + if ($137) { + (_strcpy($date,19474)|0); + } else { + $138 = $tmptr; + (_strftime(($date2|0),64,(19490|0),($138|0))|0); + $139 = ((($timeofday)) + 4|0); + $140 = HEAP32[$139>>2]|0; + HEAP32[$vararg_buffer5>>2] = $140; + (_snprintf($date,64,$date2,$vararg_buffer5)|0); + } + $141 = $size; + $142 = $2; + $143 = $3; + (_vsnprintf($24,$141,$142,$143)|0); + $144 = $tmptr; + $145 = (0|0)!=($144|0); + if ($145) { + $146 = $tmptr; + (_setup_log_file($146)|0); + } + $147 = $0; + $148 = $147 & 32; + $149 = (0)!=($148|0); + $150 = 70544; + $151 = $150; + $152 = HEAP32[$151>>2]|0; + $153 = (($150) + 4)|0; + $154 = $153; + $155 = HEAP32[$154>>2]|0; + $156 = (0)!=($152|0); + $157 = (0)!=($155|0); + $158 = $156 | $157; + $or$cond = $149 & $158; + if ($or$cond) { + $159 = (_strncmp($24,75775,256)|0); + $160 = (0)==($159|0); + if ($160) { + $161 = HEAP32[17657]|0; + $162 = (($161) + 1)|0; + HEAP32[17657] = $162; + ;HEAP32[$last_bulk_time$byval_copy>>2]=HEAP32[70544>>2]|0;HEAP32[$last_bulk_time$byval_copy+4>>2]=HEAP32[70544+4>>2]|0; + $163 = (_GNUNET_TIME_absolute_get_duration($last_bulk_time$byval_copy)|0); + $164 = tempRet0; + $165 = $5; + $166 = $165; + HEAP32[$166>>2] = $163; + $167 = (($165) + 4)|0; + $168 = $167; + HEAP32[$168>>2] = $164; + $169 = $5; + $170 = $169; + $171 = HEAP32[$170>>2]|0; + $172 = (($169) + 4)|0; + $173 = $172; + $174 = HEAP32[$173>>2]|0; + $175 = ($174>>>0)>(10); + $176 = ($171>>>0)>(250327040); + $177 = ($174|0)==(10); + $178 = $177 & $176; + $179 = $175 | $178; + $180 = HEAP32[17657]|0; + $181 = ($180>>>0)>(1000); + $or$cond3 = $179 | $181; + if ($or$cond3) { + _flush_bulk($date); + } + $6 = 1; + $192 = $4; + _llvm_stackrestore(($192|0)); + STACKTOP = sp;return; + } + } + _flush_bulk($date); + (_strncpy(75775,$24,256)|0); + HEAP32[17657] = 0; + $182 = $0; + HEAP32[17658] = $182; + $183 = (_GNUNET_TIME_absolute_get()|0); + $184 = tempRet0; + $185 = $7; + $186 = $185; + HEAP32[$186>>2] = $183; + $187 = (($185) + 4)|0; + $188 = $187; + HEAP32[$188>>2] = $184; + ;HEAP32[70544>>2]=HEAP32[$7>>2]|0;HEAP32[70544+4>>2]=HEAP32[$7+4>>2]|0; + $189 = $1; + (_strncpy(76031,$189,32)|0); + $190 = $0; + $191 = $1; + _output_message($190,$191,$date,$24); + $6 = 0; + $192 = $4; + _llvm_stackrestore(($192|0)); + STACKTOP = sp;return; +} +function _flush_bulk($datestr) { + $datestr = $datestr|0; + var $$byval_copy = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ft = 0, $last = 0, $last_bulk_time$byval_copy = 0, $msg = 0, $or$cond = 0, $rev = 0, $vararg_buffer = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 640|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $$byval_copy = sp + 40|0; + $last_bulk_time$byval_copy = sp + 32|0; + $vararg_buffer = sp + 16|0; + $msg = sp + 64|0; + $1 = sp + 8|0; + $2 = sp; + $0 = $datestr; + $3 = 70544; + $4 = $3; + $5 = HEAP32[$4>>2]|0; + $6 = (($3) + 4)|0; + $7 = $6; + $8 = HEAP32[$7>>2]|0; + $9 = (0)==($5|0); + $10 = (0)==($8|0); + $11 = $9 & $10; + $12 = HEAP32[17657]|0; + $13 = (0)==($12|0); + $or$cond = $11 | $13; + if ($or$cond) { + STACKTOP = sp;return; + } + $rev = 0; + $14 = (_memchr(75775,0,256)|0); + $last = $14; + $15 = $last; + $16 = ($15|0)==(0|0); + if ($16) { + $last = (76030); + } else { + $17 = $last; + $18 = ($17|0)!=(75775|0); + if ($18) { + $19 = $last; + $20 = ((($19)) + -1|0); + $last = $20; + } + } + $21 = $last; + $22 = HEAP8[$21>>0]|0; + $23 = $22 << 24 >> 24; + $24 = ($23|0)==(10); + if ($24) { + $rev = 1; + $25 = $last; + HEAP8[$25>>0] = 0; + } + ;HEAP32[$last_bulk_time$byval_copy>>2]=HEAP32[70544>>2]|0;HEAP32[$last_bulk_time$byval_copy+4>>2]=HEAP32[70544+4>>2]|0; + $26 = (_GNUNET_TIME_absolute_get_duration($last_bulk_time$byval_copy)|0); + $27 = tempRet0; + $28 = $1; + $29 = $28; + HEAP32[$29>>2] = $26; + $30 = (($28) + 4)|0; + $31 = $30; + HEAP32[$31>>2] = $27; + ;HEAP32[$$byval_copy>>2]=HEAP32[$1>>2]|0;HEAP32[$$byval_copy+4>>2]=HEAP32[$1+4>>2]|0; + $32 = (_GNUNET_STRINGS_relative_time_to_string($$byval_copy,1)|0); + $ft = $32; + $33 = HEAP32[17657]|0; + $34 = $ft; + HEAP32[$vararg_buffer>>2] = 256; + $vararg_ptr2 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr2>>2] = 75775; + $vararg_ptr3 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr3>>2] = $33; + $vararg_ptr4 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr4>>2] = $34; + (_snprintf($msg,576,19511,$vararg_buffer)|0); + $35 = $rev; + $36 = ($35|0)==(1); + if ($36) { + $37 = $last; + HEAP8[$37>>0] = 10; + } + $38 = HEAP32[17658]|0; + $39 = $0; + _output_message($38,76031,$39,$msg); + $40 = (_GNUNET_TIME_absolute_get()|0); + $41 = tempRet0; + $42 = $2; + $43 = $42; + HEAP32[$43>>2] = $40; + $44 = (($42) + 4)|0; + $45 = $44; + HEAP32[$45>>2] = $41; + ;HEAP32[70544>>2]=HEAP32[$2>>2]|0;HEAP32[70544+4>>2]=HEAP32[$2+4>>2]|0; + HEAP32[17657] = 0; + STACKTOP = sp;return; +} +function _output_message($kind,$comp,$datestr,$msg) { + $kind = $kind|0; + $comp = $comp|0; + $datestr = $datestr|0; + $msg = $msg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $pos = 0, $vararg_buffer = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $kind; + $1 = $comp; + $2 = $datestr; + $3 = $msg; + $4 = HEAP32[17644]|0; + $5 = (0|0)!=($4|0); + $6 = HEAP32[17659]|0; + $7 = (0|0)==($6|0); + $or$cond = $5 & $7; + if ($or$cond) { + $8 = HEAP32[17644]|0; + $9 = $2; + $10 = $1; + $11 = $0; + $12 = (_GNUNET_error_type_to_string($11)|0); + $13 = $3; + HEAP32[$vararg_buffer>>2] = $9; + $vararg_ptr2 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr2>>2] = $10; + $vararg_ptr3 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr3>>2] = $12; + $vararg_ptr4 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr4>>2] = $13; + (_fprintf($8,19568,$vararg_buffer)|0); + $14 = HEAP32[17644]|0; + (_fflush($14)|0); + } + $15 = HEAP32[17659]|0; + $pos = $15; + while(1) { + $16 = $pos; + $17 = ($16|0)!=(0|0); + if (!($17)) { + break; + } + $18 = $pos; + $19 = ((($18)) + 4|0); + $20 = HEAP32[$19>>2]|0; + $21 = $pos; + $22 = ((($21)) + 8|0); + $23 = HEAP32[$22>>2]|0; + $24 = $0; + $25 = $1; + $26 = $2; + $27 = $3; + FUNCTION_TABLE_viiiii[$20 & 127]($23,$24,$25,$26,$27); + $28 = $pos; + $29 = HEAP32[$28>>2]|0; + $pos = $29; + } + STACKTOP = sp;return; +} +function _GNUNET_error_type_to_string($kind) { + $kind = $kind|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $kind; + $2 = $1; + $3 = $2 & 1; + $4 = ($3|0)>(0); + do { + if ($4) { + $0 = 19393; + } else { + $5 = $1; + $6 = $5 & 2; + $7 = ($6|0)>(0); + if ($7) { + $0 = 19385; + break; + } + $8 = $1; + $9 = $8 & 4; + $10 = ($9|0)>(0); + if ($10) { + $0 = 19380; + break; + } + $11 = $1; + $12 = $11 & 8; + $13 = ($12|0)>(0); + if ($13) { + $0 = 19374; + break; + } + $14 = $1; + $15 = $14 & -33; + $16 = ($15|0)==(0); + if ($16) { + $0 = 19399; + break; + } else { + $0 = 19560; + break; + } + } + } while(0); + $17 = $0; + STACKTOP = sp;return ($17|0); +} +function _GNUNET_log_from_nocheck($kind,$comp,$message,$varargs) { + $kind = $kind|0; + $comp = $comp|0; + $message = $message|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $comp_w_pid = 0, $va = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 176|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $va = sp + 8|0; + $comp_w_pid = sp + 40|0; + $0 = $kind; + $1 = $comp; + $2 = $message; + $3 = $1; + $4 = ($3|0)==(0|0); + if ($4) { + $5 = HEAP32[17645]|0; + $1 = $5; + } + HEAP32[$va>>2] = $varargs; + $6 = $1; + $7 = (_getpid()|0); + HEAP32[$vararg_buffer>>2] = $6; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $7; + (_GNUNET_snprintf($comp_w_pid,128,19421,$vararg_buffer)|0); + $8 = $0; + $9 = $2; + _mylog($8,$comp_w_pid,$9,$va); + STACKTOP = sp;return; +} +function _GNUNET_CRYPTO_symmetric_encrypt($block,$size,$sessionkey,$iv,$result) { + $block = $block|0; + $size = $size|0; + $sessionkey = $sessionkey|0; + $iv = $iv|0; + $result = $result|0; + var $$alloca_mul = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $handle = 0, $log_line = 0, $log_line1 = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $handle = sp + 32|0; + $1 = $block; + $2 = $size; + $3 = $sessionkey; + $4 = $iv; + $5 = $result; + $8 = $2; + $9 = (_llvm_stacksave()|0); + $6 = $9; + $$alloca_mul = $8; + $10 = STACKTOP; STACKTOP = STACKTOP + ((((1*$$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort();; + $11 = $3; + $12 = $4; + $13 = (_setup_cipher_aes($handle,$11,$12)|0); + $14 = (1)!=($13|0); + if ($14) { + $0 = -1; + $7 = 1; + $50 = $6; + _llvm_stackrestore(($50|0)); + $51 = $0; + STACKTOP = sp;return ($51|0); + } + $15 = HEAP32[$handle>>2]|0; + $16 = $2; + $17 = $1; + $18 = $2; + $19 = (_gcry_cipher_encrypt($15,$10,$16,$17,$18)|0); + $20 = (0)==($19|0); + if (!($20)) { + $log_line = 136; + $21 = HEAP32[197]|0; + $22 = ($21|0)==(-1); + if ($22) { + $23 = $log_line; + $24 = (_GNUNET_get_log_call_status(1,0,19630,19666,$23)|0); + HEAP32[197] = $24; + } + $25 = (_GNUNET_get_log_skip()|0); + $26 = ($25|0)>(0); + if ($26) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $27 = HEAP32[197]|0; + $28 = ($27|0)!=(0); + if (!($28)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 19630; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 136; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + } + $29 = HEAP32[$handle>>2]|0; + _gcry_cipher_close($29); + $30 = $3; + $31 = $4; + $32 = (_setup_cipher_twofish($handle,$30,$31)|0); + $33 = (1)!=($32|0); + if ($33) { + $0 = -1; + $7 = 1; + $50 = $6; + _llvm_stackrestore(($50|0)); + $51 = $0; + STACKTOP = sp;return ($51|0); + } + $34 = HEAP32[$handle>>2]|0; + $35 = $5; + $36 = $2; + $37 = $2; + $38 = (_gcry_cipher_encrypt($34,$35,$36,$10,$37)|0); + $39 = (0)==($38|0); + if ($39) { + $48 = HEAP32[$handle>>2]|0; + _gcry_cipher_close($48); + _memset(($10|0),0,($8|0))|0; + $49 = $2; + $0 = $49; + $7 = 1; + $50 = $6; + _llvm_stackrestore(($50|0)); + $51 = $0; + STACKTOP = sp;return ($51|0); + } + $log_line1 = 140; + $40 = HEAP32[201]|0; + $41 = ($40|0)==(-1); + if ($41) { + $42 = $log_line1; + $43 = (_GNUNET_get_log_call_status(1,0,19630,19666,$42)|0); + HEAP32[201] = $43; + } + $44 = (_GNUNET_get_log_skip()|0); + $45 = ($44|0)>(0); + if ($45) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $46 = HEAP32[201]|0; + $47 = ($46|0)!=(0); + if (!($47)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer2>>2] = 19630; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = 140; + _GNUNET_log_nocheck(1,61615,$vararg_buffer2); + _GNUNET_abort_(); + // unreachable; + return (0)|0; +} +function _setup_cipher_aes($handle,$sessionkey,$iv) { + $handle = $handle|0; + $sessionkey = $sessionkey|0; + $iv = $iv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $log_line = 0, $log_line1 = 0, $log_line2 = 0, $rc = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer6 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, $vararg_ptr9 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer6 = sp + 16|0; + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $0 = $handle; + $1 = $sessionkey; + $2 = $iv; + $3 = $0; + $4 = (_gcry_cipher_open($3,9,2,0)|0); + $5 = (0)==($4|0); + if (!($5)) { + $log_line = 68; + $6 = HEAP32[194]|0; + $7 = ($6|0)==(-1); + if ($7) { + $8 = $log_line; + $9 = (_GNUNET_get_log_call_status(1,0,19630,19649,$8)|0); + HEAP32[194] = $9; + } + $10 = (_GNUNET_get_log_skip()|0); + $11 = ($10|0)>(0); + if ($11) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $12 = HEAP32[194]|0; + $13 = ($12|0)!=(0); + if (!($13)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 19630; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 68; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + } + $14 = $0; + $15 = HEAP32[$14>>2]|0; + $16 = $1; + $17 = (_gcry_cipher_setkey($15,$16,32)|0); + $rc = $17; + $18 = $rc; + $19 = (0)==($18|0); + if (!($19)) { + $20 = $rc; + $21 = $20&255; + $22 = $21 << 24 >> 24; + $23 = ($22|0)==(43); + if (!($23)) { + $log_line1 = 72; + $24 = HEAP32[195]|0; + $25 = ($24|0)==(-1); + if ($25) { + $26 = $log_line1; + $27 = (_GNUNET_get_log_call_status(1,0,19630,19649,$26)|0); + HEAP32[195] = $27; + } + $28 = (_GNUNET_get_log_skip()|0); + $29 = ($28|0)>(0); + if ($29) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $30 = HEAP32[195]|0; + $31 = ($30|0)!=(0); + if (!($31)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer2>>2] = 19630; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = 72; + _GNUNET_log_nocheck(1,61615,$vararg_buffer2); + _GNUNET_abort_(); + // unreachable; + } + } + $32 = $0; + $33 = HEAP32[$32>>2]|0; + $34 = $2; + $35 = (_gcry_cipher_setiv($33,$34,16)|0); + $rc = $35; + $36 = $rc; + $37 = (0)==($36|0); + if ($37) { + STACKTOP = sp;return 1; + } + $38 = $rc; + $39 = $38&255; + $40 = $39 << 24 >> 24; + $41 = ($40|0)==(43); + if ($41) { + STACKTOP = sp;return 1; + } + $log_line2 = 76; + $42 = HEAP32[196]|0; + $43 = ($42|0)==(-1); + if ($43) { + $44 = $log_line2; + $45 = (_GNUNET_get_log_call_status(1,0,19630,19649,$44)|0); + HEAP32[196] = $45; + } + $46 = (_GNUNET_get_log_skip()|0); + $47 = ($46|0)>(0); + if ($47) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $48 = HEAP32[196]|0; + $49 = ($48|0)!=(0); + if (!($49)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer6>>2] = 19630; + $vararg_ptr9 = ((($vararg_buffer6)) + 4|0); + HEAP32[$vararg_ptr9>>2] = 76; + _GNUNET_log_nocheck(1,61615,$vararg_buffer6); + _GNUNET_abort_(); + // unreachable; + return (0)|0; +} +function _setup_cipher_twofish($handle,$sessionkey,$iv) { + $handle = $handle|0; + $sessionkey = $sessionkey|0; + $iv = $iv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $log_line = 0, $log_line1 = 0, $log_line2 = 0, $rc = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer6 = 0, $vararg_ptr1 = 0; + var $vararg_ptr5 = 0, $vararg_ptr9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer6 = sp + 16|0; + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $0 = $handle; + $1 = $sessionkey; + $2 = $iv; + $3 = $0; + $4 = (_gcry_cipher_open($3,10,2,0)|0); + $5 = (0)==($4|0); + if (!($5)) { + $log_line = 98; + $6 = HEAP32[198]|0; + $7 = ($6|0)==(-1); + if ($7) { + $8 = $log_line; + $9 = (_GNUNET_get_log_call_status(1,0,19630,19698,$8)|0); + HEAP32[198] = $9; + } + $10 = (_GNUNET_get_log_skip()|0); + $11 = ($10|0)>(0); + if ($11) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $12 = HEAP32[198]|0; + $13 = ($12|0)!=(0); + if (!($13)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 19630; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 98; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + } + $14 = $0; + $15 = HEAP32[$14>>2]|0; + $16 = $1; + $17 = ((($16)) + 32|0); + $18 = (_gcry_cipher_setkey($15,$17,32)|0); + $rc = $18; + $19 = $rc; + $20 = (0)==($19|0); + if (!($20)) { + $21 = $rc; + $22 = $21&255; + $23 = $22 << 24 >> 24; + $24 = ($23|0)==(43); + if (!($24)) { + $log_line1 = 102; + $25 = HEAP32[199]|0; + $26 = ($25|0)==(-1); + if ($26) { + $27 = $log_line1; + $28 = (_GNUNET_get_log_call_status(1,0,19630,19698,$27)|0); + HEAP32[199] = $28; + } + $29 = (_GNUNET_get_log_skip()|0); + $30 = ($29|0)>(0); + if ($30) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $31 = HEAP32[199]|0; + $32 = ($31|0)!=(0); + if (!($32)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer2>>2] = 19630; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = 102; + _GNUNET_log_nocheck(1,61615,$vararg_buffer2); + _GNUNET_abort_(); + // unreachable; + } + } + $33 = $0; + $34 = HEAP32[$33>>2]|0; + $35 = $2; + $36 = ((($35)) + 16|0); + $37 = (_gcry_cipher_setiv($34,$36,16)|0); + $rc = $37; + $38 = $rc; + $39 = (0)==($38|0); + if ($39) { + STACKTOP = sp;return 1; + } + $40 = $rc; + $41 = $40&255; + $42 = $41 << 24 >> 24; + $43 = ($42|0)==(43); + if ($43) { + STACKTOP = sp;return 1; + } + $log_line2 = 106; + $44 = HEAP32[200]|0; + $45 = ($44|0)==(-1); + if ($45) { + $46 = $log_line2; + $47 = (_GNUNET_get_log_call_status(1,0,19630,19698,$46)|0); + HEAP32[200] = $47; + } + $48 = (_GNUNET_get_log_skip()|0); + $49 = ($48|0)>(0); + if ($49) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $50 = HEAP32[200]|0; + $51 = ($50|0)!=(0); + if (!($51)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer6>>2] = 19630; + $vararg_ptr9 = ((($vararg_buffer6)) + 4|0); + HEAP32[$vararg_ptr9>>2] = 106; + _GNUNET_log_nocheck(1,61615,$vararg_buffer6); + _GNUNET_abort_(); + // unreachable; + return (0)|0; +} +function _GNUNET_CRYPTO_symmetric_decrypt($block,$size,$sessionkey,$iv,$result) { + $block = $block|0; + $size = $size|0; + $sessionkey = $sessionkey|0; + $iv = $iv|0; + $result = $result|0; + var $$alloca_mul = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $handle = 0, $log_line = 0, $log_line1 = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $handle = sp + 32|0; + $1 = $block; + $2 = $size; + $3 = $sessionkey; + $4 = $iv; + $5 = $result; + $8 = $2; + $9 = (_llvm_stacksave()|0); + $6 = $9; + $$alloca_mul = $8; + $10 = STACKTOP; STACKTOP = STACKTOP + ((((1*$$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort();; + $11 = $3; + $12 = $4; + $13 = (_setup_cipher_twofish($handle,$11,$12)|0); + $14 = (1)!=($13|0); + if ($14) { + $0 = -1; + $7 = 1; + $50 = $6; + _llvm_stackrestore(($50|0)); + $51 = $0; + STACKTOP = sp;return ($51|0); + } + $15 = HEAP32[$handle>>2]|0; + $16 = $2; + $17 = $1; + $18 = $2; + $19 = (_gcry_cipher_decrypt($15,$10,$16,$17,$18)|0); + $20 = (0)==($19|0); + if (!($20)) { + $log_line = 171; + $21 = HEAP32[202]|0; + $22 = ($21|0)==(-1); + if ($22) { + $23 = $log_line; + $24 = (_GNUNET_get_log_call_status(1,0,19630,19719,$23)|0); + HEAP32[202] = $24; + } + $25 = (_GNUNET_get_log_skip()|0); + $26 = ($25|0)>(0); + if ($26) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $27 = HEAP32[202]|0; + $28 = ($27|0)!=(0); + if (!($28)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 19630; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 171; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + } + $29 = HEAP32[$handle>>2]|0; + _gcry_cipher_close($29); + $30 = $3; + $31 = $4; + $32 = (_setup_cipher_aes($handle,$30,$31)|0); + $33 = (1)!=($32|0); + if ($33) { + $0 = -1; + $7 = 1; + $50 = $6; + _llvm_stackrestore(($50|0)); + $51 = $0; + STACKTOP = sp;return ($51|0); + } + $34 = HEAP32[$handle>>2]|0; + $35 = $5; + $36 = $2; + $37 = $2; + $38 = (_gcry_cipher_decrypt($34,$35,$36,$10,$37)|0); + $39 = (0)==($38|0); + if ($39) { + $48 = HEAP32[$handle>>2]|0; + _gcry_cipher_close($48); + _memset(($10|0),0,($8|0))|0; + $49 = $2; + $0 = $49; + $7 = 1; + $50 = $6; + _llvm_stackrestore(($50|0)); + $51 = $0; + STACKTOP = sp;return ($51|0); + } + $log_line1 = 175; + $40 = HEAP32[203]|0; + $41 = ($40|0)==(-1); + if ($41) { + $42 = $log_line1; + $43 = (_GNUNET_get_log_call_status(1,0,19630,19719,$42)|0); + HEAP32[203] = $43; + } + $44 = (_GNUNET_get_log_skip()|0); + $45 = ($44|0)>(0); + if ($45) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $46 = HEAP32[203]|0; + $47 = ($46|0)!=(0); + if (!($47)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer2>>2] = 19630; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = 175; + _GNUNET_log_nocheck(1,61615,$vararg_buffer2); + _GNUNET_abort_(); + // unreachable; + return (0)|0; +} +function _GNUNET_CRYPTO_eddsa_key_get_public($priv,$pub) { + $priv = $priv|0; + $pub = $pub|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $ctx = 0, $log_line = 0, $log_line1 = 0, $log_line2 = 0, $q = 0, $sexp = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer6 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, $vararg_ptr9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer6 = sp + 16|0; + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $ctx = sp + 40|0; + $0 = $priv; + $1 = $pub; + $2 = $0; + $3 = (_decode_private_eddsa_key($2)|0); + $sexp = $3; + $4 = $sexp; + $5 = (0|0)!=($4|0); + if (!($5)) { + $log_line = 257; + $6 = HEAP32[206]|0; + $7 = ($6|0)==(-1); + if ($7) { + $8 = $log_line; + $9 = (_GNUNET_get_log_call_status(1,0,19793,19910,$8)|0); + HEAP32[206] = $9; + } + $10 = (_GNUNET_get_log_skip()|0); + $11 = ($10|0)>(0); + if ($11) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $12 = HEAP32[206]|0; + $13 = ($12|0)!=(0); + if (!($13)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 19793; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 257; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + } + $14 = $sexp; + $15 = (_gcry_mpi_ec_new($ctx,$14,0)|0); + $16 = (0)==($15|0); + if (!($16)) { + $log_line1 = 258; + $17 = HEAP32[207]|0; + $18 = ($17|0)==(-1); + if ($18) { + $19 = $log_line1; + $20 = (_GNUNET_get_log_call_status(1,0,19793,19910,$19)|0); + HEAP32[207] = $20; + } + $21 = (_GNUNET_get_log_skip()|0); + $22 = ($21|0)>(0); + if ($22) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $23 = HEAP32[207]|0; + $24 = ($23|0)!=(0); + if (!($24)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer2>>2] = 19793; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = 258; + _GNUNET_log_nocheck(1,61615,$vararg_buffer2); + _GNUNET_abort_(); + // unreachable; + } + $25 = $sexp; + _gcry_sexp_release($25); + $26 = HEAP32[$ctx>>2]|0; + $27 = (_gcry_mpi_ec_get_mpi(19822,$26,0)|0); + $q = $27; + $28 = $q; + $29 = ($28|0)!=(0|0); + if ($29) { + $38 = $1; + $39 = $q; + _GNUNET_CRYPTO_mpi_print_unsigned($38,32,$39); + $40 = $q; + _gcry_mpi_release($40); + $41 = HEAP32[$ctx>>2]|0; + _gcry_ctx_release($41); + STACKTOP = sp;return; + } + $log_line2 = 261; + $30 = HEAP32[208]|0; + $31 = ($30|0)==(-1); + if ($31) { + $32 = $log_line2; + $33 = (_GNUNET_get_log_call_status(1,0,19793,19910,$32)|0); + HEAP32[208] = $33; + } + $34 = (_GNUNET_get_log_skip()|0); + $35 = ($34|0)>(0); + if ($35) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $36 = HEAP32[208]|0; + $37 = ($36|0)!=(0); + if (!($37)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer6>>2] = 19793; + $vararg_ptr9 = ((($vararg_buffer6)) + 4|0); + HEAP32[$vararg_ptr9>>2] = 261; + _GNUNET_log_nocheck(1,61615,$vararg_buffer6); + _GNUNET_abort_(); + // unreachable; +} +function _decode_private_eddsa_key($priv) { + $priv = $priv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $log_line = 0, $log_line1 = 0, $rc = 0, $result = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer8 = 0, $vararg_ptr1 = 0, $vararg_ptr11 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer8 = sp + 24|0; + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $result = sp + 44|0; + $0 = $priv; + $1 = $0; + HEAP32[$vararg_buffer>>2] = 32; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $1; + $2 = (_gcry_sexp_build($result,0,19830,$vararg_buffer)|0); + $rc = $2; + $3 = $rc; + $4 = (0)!=($3|0); + if (!($4)) { + $23 = HEAP32[$result>>2]|0; + STACKTOP = sp;return ($23|0); + } + $log_line = 169; + $5 = HEAP32[204]|0; + $6 = ($5|0)==(-1); + if ($6) { + $7 = $log_line; + $8 = (_GNUNET_get_log_call_status(1,21106,19793,19885,$7)|0); + HEAP32[204] = $8; + } + $9 = (_GNUNET_get_log_skip()|0); + $10 = ($9|0)>(0); + if ($10) { + _GNUNET_log_skip(-1,0); + } else { + $11 = HEAP32[204]|0; + $12 = ($11|0)!=(0); + if ($12) { + $13 = $rc; + $14 = (_gcry_strerror($13)|0); + HEAP32[$vararg_buffer2>>2] = 19806; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = 19793; + $vararg_ptr6 = ((($vararg_buffer2)) + 8|0); + HEAP32[$vararg_ptr6>>2] = 169; + $vararg_ptr7 = ((($vararg_buffer2)) + 12|0); + HEAP32[$vararg_ptr7>>2] = $14; + _GNUNET_log_from_nocheck(1,21106,20684,$vararg_buffer2); + } + } + $log_line1 = 170; + $15 = HEAP32[205]|0; + $16 = ($15|0)==(-1); + if ($16) { + $17 = $log_line1; + $18 = (_GNUNET_get_log_call_status(1,0,19793,19885,$17)|0); + HEAP32[205] = $18; + } + $19 = (_GNUNET_get_log_skip()|0); + $20 = ($19|0)>(0); + if ($20) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $21 = HEAP32[205]|0; + $22 = ($21|0)!=(0); + if (!($22)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer8>>2] = 19793; + $vararg_ptr11 = ((($vararg_buffer8)) + 4|0); + HEAP32[$vararg_ptr11>>2] = 170; + _GNUNET_log_nocheck(1,61615,$vararg_buffer8); + _GNUNET_abort_(); + // unreachable; + return (0)|0; +} +function _GNUNET_CRYPTO_ecdhe_key_get_public($priv,$pub) { + $priv = $priv|0; + $pub = $pub|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $ctx = 0, $log_line = 0, $log_line1 = 0, $log_line2 = 0, $q = 0, $sexp = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer6 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, $vararg_ptr9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer6 = sp + 16|0; + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $ctx = sp + 40|0; + $0 = $priv; + $1 = $pub; + $2 = $0; + $3 = (_decode_private_ecdhe_key($2)|0); + $sexp = $3; + $4 = $sexp; + $5 = (0|0)!=($4|0); + if (!($5)) { + $log_line = 283; + $6 = HEAP32[211]|0; + $7 = ($6|0)==(-1); + if ($7) { + $8 = $log_line; + $9 = (_GNUNET_get_log_call_status(1,0,19793,19970,$8)|0); + HEAP32[211] = $9; + } + $10 = (_GNUNET_get_log_skip()|0); + $11 = ($10|0)>(0); + if ($11) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $12 = HEAP32[211]|0; + $13 = ($12|0)!=(0); + if (!($13)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 19793; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 283; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + } + $14 = $sexp; + $15 = (_gcry_mpi_ec_new($ctx,$14,0)|0); + $16 = (0)==($15|0); + if (!($16)) { + $log_line1 = 284; + $17 = HEAP32[212]|0; + $18 = ($17|0)==(-1); + if ($18) { + $19 = $log_line1; + $20 = (_GNUNET_get_log_call_status(1,0,19793,19970,$19)|0); + HEAP32[212] = $20; + } + $21 = (_GNUNET_get_log_skip()|0); + $22 = ($21|0)>(0); + if ($22) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $23 = HEAP32[212]|0; + $24 = ($23|0)!=(0); + if (!($24)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer2>>2] = 19793; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = 284; + _GNUNET_log_nocheck(1,61615,$vararg_buffer2); + _GNUNET_abort_(); + // unreachable; + } + $25 = $sexp; + _gcry_sexp_release($25); + $26 = HEAP32[$ctx>>2]|0; + $27 = (_gcry_mpi_ec_get_mpi(19822,$26,0)|0); + $q = $27; + $28 = $q; + $29 = ($28|0)!=(0|0); + if ($29) { + $38 = $1; + $39 = $q; + _GNUNET_CRYPTO_mpi_print_unsigned($38,32,$39); + $40 = $q; + _gcry_mpi_release($40); + $41 = HEAP32[$ctx>>2]|0; + _gcry_ctx_release($41); + STACKTOP = sp;return; + } + $log_line2 = 287; + $30 = HEAP32[213]|0; + $31 = ($30|0)==(-1); + if ($31) { + $32 = $log_line2; + $33 = (_GNUNET_get_log_call_status(1,0,19793,19970,$32)|0); + HEAP32[213] = $33; + } + $34 = (_GNUNET_get_log_skip()|0); + $35 = ($34|0)>(0); + if ($35) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $36 = HEAP32[213]|0; + $37 = ($36|0)!=(0); + if (!($37)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer6>>2] = 19793; + $vararg_ptr9 = ((($vararg_buffer6)) + 4|0); + HEAP32[$vararg_ptr9>>2] = 287; + _GNUNET_log_nocheck(1,61615,$vararg_buffer6); + _GNUNET_abort_(); + // unreachable; +} +function _decode_private_ecdhe_key($priv) { + $priv = $priv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $log_line = 0, $log_line1 = 0, $rc = 0, $result = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer8 = 0, $vararg_ptr1 = 0, $vararg_ptr11 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer8 = sp + 24|0; + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $result = sp + 44|0; + $0 = $priv; + $1 = $0; + HEAP32[$vararg_buffer>>2] = 32; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $1; + $2 = (_gcry_sexp_build($result,0,19751,$vararg_buffer)|0); + $rc = $2; + $3 = $rc; + $4 = (0)!=($3|0); + if (!($4)) { + $23 = HEAP32[$result>>2]|0; + STACKTOP = sp;return ($23|0); + } + $log_line = 202; + $5 = HEAP32[209]|0; + $6 = ($5|0)==(-1); + if ($6) { + $7 = $log_line; + $8 = (_GNUNET_get_log_call_status(1,21106,19793,19945,$7)|0); + HEAP32[209] = $8; + } + $9 = (_GNUNET_get_log_skip()|0); + $10 = ($9|0)>(0); + if ($10) { + _GNUNET_log_skip(-1,0); + } else { + $11 = HEAP32[209]|0; + $12 = ($11|0)!=(0); + if ($12) { + $13 = $rc; + $14 = (_gcry_strerror($13)|0); + HEAP32[$vararg_buffer2>>2] = 19806; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = 19793; + $vararg_ptr6 = ((($vararg_buffer2)) + 8|0); + HEAP32[$vararg_ptr6>>2] = 202; + $vararg_ptr7 = ((($vararg_buffer2)) + 12|0); + HEAP32[$vararg_ptr7>>2] = $14; + _GNUNET_log_from_nocheck(1,21106,20684,$vararg_buffer2); + } + } + $log_line1 = 203; + $15 = HEAP32[210]|0; + $16 = ($15|0)==(-1); + if ($16) { + $17 = $log_line1; + $18 = (_GNUNET_get_log_call_status(1,0,19793,19945,$17)|0); + HEAP32[210] = $18; + } + $19 = (_GNUNET_get_log_skip()|0); + $20 = ($19|0)>(0); + if ($20) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $21 = HEAP32[210]|0; + $22 = ($21|0)!=(0); + if (!($22)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer8>>2] = 19793; + $vararg_ptr11 = ((($vararg_buffer8)) + 4|0); + HEAP32[$vararg_ptr11>>2] = 203; + _GNUNET_log_nocheck(1,61615,$vararg_buffer8); + _GNUNET_abort_(); + // unreachable; + return (0)|0; +} +function _GNUNET_CRYPTO_eddsa_private_key_from_string($enc,$enclen,$pub) { + $enc = $enc|0; + $enclen = $enclen|0; + $pub = $pub|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $keylen = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $enc; + $2 = $enclen; + $3 = $pub; + $keylen = 256; + $4 = $keylen; + $5 = (($4>>>0) % 5)&-1; + $6 = ($5>>>0)>(0); + if ($6) { + $7 = $keylen; + $8 = (($7>>>0) % 5)&-1; + $9 = (5 - ($8))|0; + $10 = $keylen; + $11 = (($10) + ($9))|0; + $keylen = $11; + } + $12 = $keylen; + $13 = (($12>>>0) / 5)&-1; + $keylen = $13; + $14 = $2; + $15 = $keylen; + $16 = ($14|0)!=($15|0); + if ($16) { + $0 = -1; + $22 = $0; + STACKTOP = sp;return ($22|0); + } + $17 = $1; + $18 = $2; + $19 = $3; + $20 = (_GNUNET_STRINGS_string_to_data($17,$18,$19,32)|0); + $21 = (1)!=($20|0); + if ($21) { + $0 = -1; + $22 = $0; + STACKTOP = sp;return ($22|0); + } else { + $0 = 1; + $22 = $0; + STACKTOP = sp;return ($22|0); + } + return (0)|0; +} +function _GNUNET_CRYPTO_ecdhe_key_create() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $d = 0, $log_line = 0, $log_line1 = 0, $log_line2 = 0, $priv = 0, $priv_sexp = 0, $rc = 0, $s_keyparam = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer12 = 0; + var $vararg_buffer6 = 0, $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr15 = 0, $vararg_ptr16 = 0, $vararg_ptr17 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer12 = sp + 40|0; + $vararg_buffer6 = sp + 24|0; + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $priv_sexp = sp + 80|0; + $s_keyparam = sp + 76|0; + $d = sp + 72|0; + $1 = (_gcry_sexp_build($s_keyparam,0,20005,$vararg_buffer)|0); + $rc = $1; + $2 = (0)!=($1|0); + if ($2) { + $log_line = 505; + $3 = HEAP32[214]|0; + $4 = ($3|0)==(-1); + if ($4) { + $5 = $log_line; + $6 = (_GNUNET_get_log_call_status(1,21106,19793,20060,$5)|0); + HEAP32[214] = $6; + } + $7 = (_GNUNET_get_log_skip()|0); + $8 = ($7|0)>(0); + if ($8) { + _GNUNET_log_skip(-1,0); + } else { + $9 = HEAP32[214]|0; + $10 = ($9|0)!=(0); + if ($10) { + $11 = $rc; + $12 = (_gcry_strerror($11)|0); + HEAP32[$vararg_buffer1>>2] = 19806; + $vararg_ptr3 = ((($vararg_buffer1)) + 4|0); + HEAP32[$vararg_ptr3>>2] = 19793; + $vararg_ptr4 = ((($vararg_buffer1)) + 8|0); + HEAP32[$vararg_ptr4>>2] = 505; + $vararg_ptr5 = ((($vararg_buffer1)) + 12|0); + HEAP32[$vararg_ptr5>>2] = $12; + _GNUNET_log_from_nocheck(1,21106,20684,$vararg_buffer1); + } + } + $0 = 0; + $48 = $0; + STACKTOP = sp;return ($48|0); + } + $13 = HEAP32[$s_keyparam>>2]|0; + $14 = (_gcry_pk_genkey($priv_sexp,$13)|0); + $rc = $14; + $15 = (0)!=($14|0); + if ($15) { + $log_line1 = 510; + $16 = HEAP32[215]|0; + $17 = ($16|0)==(-1); + if ($17) { + $18 = $log_line1; + $19 = (_GNUNET_get_log_call_status(1,21106,19793,20060,$18)|0); + HEAP32[215] = $19; + } + $20 = (_GNUNET_get_log_skip()|0); + $21 = ($20|0)>(0); + if ($21) { + _GNUNET_log_skip(-1,0); + } else { + $22 = HEAP32[215]|0; + $23 = ($22|0)!=(0); + if ($23) { + $24 = $rc; + $25 = (_gcry_strerror($24)|0); + HEAP32[$vararg_buffer6>>2] = 20091; + $vararg_ptr9 = ((($vararg_buffer6)) + 4|0); + HEAP32[$vararg_ptr9>>2] = 19793; + $vararg_ptr10 = ((($vararg_buffer6)) + 8|0); + HEAP32[$vararg_ptr10>>2] = 510; + $vararg_ptr11 = ((($vararg_buffer6)) + 12|0); + HEAP32[$vararg_ptr11>>2] = $25; + _GNUNET_log_from_nocheck(1,21106,20684,$vararg_buffer6); + } + } + $26 = HEAP32[$s_keyparam>>2]|0; + _gcry_sexp_release($26); + $0 = 0; + $48 = $0; + STACKTOP = sp;return ($48|0); + } + $27 = HEAP32[$s_keyparam>>2]|0; + _gcry_sexp_release($27); + $28 = HEAP32[$priv_sexp>>2]|0; + $29 = (_key_from_sexp($d,$28,37958,35608)|0); + $rc = $29; + $30 = (0)!=($29|0); + if (!($30)) { + $42 = HEAP32[$priv_sexp>>2]|0; + _gcry_sexp_release($42); + $43 = (_GNUNET_xmalloc_(32,19793,530)|0); + $priv = $43; + $44 = $priv; + $45 = HEAP32[$d>>2]|0; + _GNUNET_CRYPTO_mpi_print_unsigned($44,32,$45); + $46 = HEAP32[$d>>2]|0; + _gcry_mpi_release($46); + $47 = $priv; + $0 = $47; + $48 = $0; + STACKTOP = sp;return ($48|0); + } + $log_line2 = 525; + $31 = HEAP32[216]|0; + $32 = ($31|0)==(-1); + if ($32) { + $33 = $log_line2; + $34 = (_GNUNET_get_log_call_status(1,21106,19793,20060,$33)|0); + HEAP32[216] = $34; + } + $35 = (_GNUNET_get_log_skip()|0); + $36 = ($35|0)>(0); + if ($36) { + _GNUNET_log_skip(-1,0); + } else { + $37 = HEAP32[216]|0; + $38 = ($37|0)!=(0); + if ($38) { + $39 = $rc; + $40 = (_gcry_strerror($39)|0); + HEAP32[$vararg_buffer12>>2] = 20106; + $vararg_ptr15 = ((($vararg_buffer12)) + 4|0); + HEAP32[$vararg_ptr15>>2] = 19793; + $vararg_ptr16 = ((($vararg_buffer12)) + 8|0); + HEAP32[$vararg_ptr16>>2] = 525; + $vararg_ptr17 = ((($vararg_buffer12)) + 12|0); + HEAP32[$vararg_ptr17>>2] = $40; + _GNUNET_log_from_nocheck(1,21106,20684,$vararg_buffer12); + } + } + $41 = HEAP32[$priv_sexp>>2]|0; + _gcry_sexp_release($41); + $0 = 0; + $48 = $0; + STACKTOP = sp;return ($48|0); +} +function _key_from_sexp($array,$sexp,$topname,$elems) { + $array = $array|0; + $sexp = $sexp|0; + $topname = $topname|0; + $elems = $elems|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $idx = 0, $l2 = 0, $list = 0, $s = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $array; + $2 = $sexp; + $3 = $topname; + $4 = $elems; + $5 = $2; + $6 = $3; + $7 = (_gcry_sexp_find_token($5,$6,0)|0); + $list = $7; + $8 = $list; + $9 = ($8|0)!=(0|0); + if (!($9)) { + $0 = 1; + $66 = $0; + STACKTOP = sp;return ($66|0); + } + $10 = $list; + $11 = (_gcry_sexp_cadr($10)|0); + $l2 = $11; + $12 = $list; + _gcry_sexp_release($12); + $13 = $l2; + $list = $13; + $14 = $list; + $15 = ($14|0)!=(0|0); + if (!($15)) { + $0 = 2; + $66 = $0; + STACKTOP = sp;return ($66|0); + } + $idx = 0; + $16 = $4; + $s = $16; + while(1) { + $17 = $s; + $18 = HEAP8[$17>>0]|0; + $19 = ($18<<24>>24)!=(0); + $20 = $list; + if (!($19)) { + label = 18; + break; + } + $21 = $s; + $22 = (_gcry_sexp_find_token($20,$21,1)|0); + $l2 = $22; + $23 = $l2; + $24 = ($23|0)!=(0|0); + if (!($24)) { + label = 8; + break; + } + $38 = $l2; + $39 = (_gcry_sexp_nth_mpi($38,1,5)|0); + $40 = $idx; + $41 = $1; + $42 = (($41) + ($40<<2)|0); + HEAP32[$42>>2] = $39; + $43 = $l2; + _gcry_sexp_release($43); + $44 = $idx; + $45 = $1; + $46 = (($45) + ($44<<2)|0); + $47 = HEAP32[$46>>2]|0; + $48 = ($47|0)!=(0|0); + if (!($48)) { + label = 13; + break; + } + $62 = $s; + $63 = ((($62)) + 1|0); + $s = $63; + $64 = $idx; + $65 = (($64) + 1)|0; + $idx = $65; + } + if ((label|0) == 8) { + $i = 0; + while(1) { + $25 = $i; + $26 = $idx; + $27 = ($25>>>0)<($26>>>0); + if (!($27)) { + break; + } + $28 = $i; + $29 = $1; + $30 = (($29) + ($28<<2)|0); + $31 = HEAP32[$30>>2]|0; + _gcry_free($31); + $32 = $i; + $33 = $1; + $34 = (($33) + ($32<<2)|0); + HEAP32[$34>>2] = 0; + $35 = $i; + $36 = (($35) + 1)|0; + $i = $36; + } + $37 = $list; + _gcry_sexp_release($37); + $0 = 3; + $66 = $0; + STACKTOP = sp;return ($66|0); + } + else if ((label|0) == 13) { + $i = 0; + while(1) { + $49 = $i; + $50 = $idx; + $51 = ($49>>>0)<($50>>>0); + if (!($51)) { + break; + } + $52 = $i; + $53 = $1; + $54 = (($53) + ($52<<2)|0); + $55 = HEAP32[$54>>2]|0; + _gcry_free($55); + $56 = $i; + $57 = $1; + $58 = (($57) + ($56<<2)|0); + HEAP32[$58>>2] = 0; + $59 = $i; + $60 = (($59) + 1)|0; + $i = $60; + } + $61 = $list; + _gcry_sexp_release($61); + $0 = 4; + $66 = $0; + STACKTOP = sp;return ($66|0); + } + else if ((label|0) == 18) { + _gcry_sexp_release($20); + $0 = 0; + $66 = $0; + STACKTOP = sp;return ($66|0); + } + return (0)|0; +} +function _GNUNET_CRYPTO_eddsa_key_create() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $d = 0, $log_line = 0, $log_line1 = 0, $log_line2 = 0, $priv = 0, $priv_sexp = 0, $rc = 0, $s_keyparam = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer12 = 0; + var $vararg_buffer6 = 0, $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr15 = 0, $vararg_ptr16 = 0, $vararg_ptr17 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer12 = sp + 40|0; + $vararg_buffer6 = sp + 24|0; + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $priv_sexp = sp + 80|0; + $s_keyparam = sp + 76|0; + $d = sp + 72|0; + $1 = (_gcry_sexp_build($s_keyparam,0,20120,$vararg_buffer)|0); + $rc = $1; + $2 = (0)!=($1|0); + if ($2) { + $log_line = 604; + $3 = HEAP32[217]|0; + $4 = ($3|0)==(-1); + if ($4) { + $5 = $log_line; + $6 = (_GNUNET_get_log_call_status(1,21106,19793,20164,$5)|0); + HEAP32[217] = $6; + } + $7 = (_GNUNET_get_log_skip()|0); + $8 = ($7|0)>(0); + if ($8) { + _GNUNET_log_skip(-1,0); + } else { + $9 = HEAP32[217]|0; + $10 = ($9|0)!=(0); + if ($10) { + $11 = $rc; + $12 = (_gcry_strerror($11)|0); + HEAP32[$vararg_buffer1>>2] = 19806; + $vararg_ptr3 = ((($vararg_buffer1)) + 4|0); + HEAP32[$vararg_ptr3>>2] = 19793; + $vararg_ptr4 = ((($vararg_buffer1)) + 8|0); + HEAP32[$vararg_ptr4>>2] = 604; + $vararg_ptr5 = ((($vararg_buffer1)) + 12|0); + HEAP32[$vararg_ptr5>>2] = $12; + _GNUNET_log_from_nocheck(1,21106,20684,$vararg_buffer1); + } + } + $0 = 0; + $48 = $0; + STACKTOP = sp;return ($48|0); + } + $13 = HEAP32[$s_keyparam>>2]|0; + $14 = (_gcry_pk_genkey($priv_sexp,$13)|0); + $rc = $14; + $15 = (0)!=($14|0); + if ($15) { + $log_line1 = 609; + $16 = HEAP32[218]|0; + $17 = ($16|0)==(-1); + if ($17) { + $18 = $log_line1; + $19 = (_GNUNET_get_log_call_status(1,21106,19793,20164,$18)|0); + HEAP32[218] = $19; + } + $20 = (_GNUNET_get_log_skip()|0); + $21 = ($20|0)>(0); + if ($21) { + _GNUNET_log_skip(-1,0); + } else { + $22 = HEAP32[218]|0; + $23 = ($22|0)!=(0); + if ($23) { + $24 = $rc; + $25 = (_gcry_strerror($24)|0); + HEAP32[$vararg_buffer6>>2] = 20091; + $vararg_ptr9 = ((($vararg_buffer6)) + 4|0); + HEAP32[$vararg_ptr9>>2] = 19793; + $vararg_ptr10 = ((($vararg_buffer6)) + 8|0); + HEAP32[$vararg_ptr10>>2] = 609; + $vararg_ptr11 = ((($vararg_buffer6)) + 12|0); + HEAP32[$vararg_ptr11>>2] = $25; + _GNUNET_log_from_nocheck(1,21106,20684,$vararg_buffer6); + } + } + $26 = HEAP32[$s_keyparam>>2]|0; + _gcry_sexp_release($26); + $0 = 0; + $48 = $0; + STACKTOP = sp;return ($48|0); + } + $27 = HEAP32[$s_keyparam>>2]|0; + _gcry_sexp_release($27); + $28 = HEAP32[$priv_sexp>>2]|0; + $29 = (_key_from_sexp($d,$28,37958,35608)|0); + $rc = $29; + $30 = (0)!=($29|0); + if (!($30)) { + $42 = HEAP32[$priv_sexp>>2]|0; + _gcry_sexp_release($42); + $43 = (_GNUNET_xmalloc_(32,19793,629)|0); + $priv = $43; + $44 = $priv; + $45 = HEAP32[$d>>2]|0; + _GNUNET_CRYPTO_mpi_print_unsigned($44,32,$45); + $46 = HEAP32[$d>>2]|0; + _gcry_mpi_release($46); + $47 = $priv; + $0 = $47; + $48 = $0; + STACKTOP = sp;return ($48|0); + } + $log_line2 = 624; + $31 = HEAP32[219]|0; + $32 = ($31|0)==(-1); + if ($32) { + $33 = $log_line2; + $34 = (_GNUNET_get_log_call_status(1,21106,19793,20164,$33)|0); + HEAP32[219] = $34; + } + $35 = (_GNUNET_get_log_skip()|0); + $36 = ($35|0)>(0); + if ($36) { + _GNUNET_log_skip(-1,0); + } else { + $37 = HEAP32[219]|0; + $38 = ($37|0)!=(0); + if ($38) { + $39 = $rc; + $40 = (_gcry_strerror($39)|0); + HEAP32[$vararg_buffer12>>2] = 20106; + $vararg_ptr15 = ((($vararg_buffer12)) + 4|0); + HEAP32[$vararg_ptr15>>2] = 19793; + $vararg_ptr16 = ((($vararg_buffer12)) + 8|0); + HEAP32[$vararg_ptr16>>2] = 624; + $vararg_ptr17 = ((($vararg_buffer12)) + 12|0); + HEAP32[$vararg_ptr17>>2] = $40; + _GNUNET_log_from_nocheck(1,21106,20684,$vararg_buffer12); + } + } + $41 = HEAP32[$priv_sexp>>2]|0; + _gcry_sexp_release($41); + $0 = 0; + $48 = $0; + STACKTOP = sp;return ($48|0); +} +function _GNUNET_CRYPTO_eddsa_sign($priv,$purpose,$sig) { + $priv = $priv|0; + $purpose = $purpose|0; + $sig = $sig|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $data = 0, $log_line = 0, $log_line1 = 0, $priv_sexp = 0, $rc = 0, $rs = 0, $sig_sexp = 0, $vararg_buffer = 0, $vararg_buffer3 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0; + var $vararg_ptr6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer3 = sp + 16|0; + $vararg_buffer = sp; + $sig_sexp = sp + 48|0; + $rs = sp + 32|0; + $1 = $priv; + $2 = $purpose; + $3 = $sig; + $4 = $1; + $5 = (_decode_private_eddsa_key($4)|0); + $priv_sexp = $5; + $6 = $2; + $7 = (_data_to_eddsa_value($6)|0); + $data = $7; + $8 = $data; + $9 = $priv_sexp; + $10 = (_gcry_pk_sign($sig_sexp,$8,$9)|0); + $rc = $10; + $11 = (0)!=($10|0); + if ($11) { + $log_line = 807; + $12 = HEAP32[221]|0; + $13 = ($12|0)==(-1); + if ($13) { + $14 = $log_line; + $15 = (_GNUNET_get_log_call_status(2,21106,19793,20259,$14)|0); + HEAP32[221] = $15; + } + $16 = (_GNUNET_get_log_skip()|0); + $17 = ($16|0)>(0); + if ($17) { + _GNUNET_log_skip(-1,0); + } else { + $18 = HEAP32[221]|0; + $19 = ($18|0)!=(0); + if ($19) { + $20 = $rc; + $21 = (_gcry_strerror($20)|0); + HEAP32[$vararg_buffer>>2] = 19793; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 807; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $21; + _GNUNET_log_from_nocheck(2,21106,20284,$vararg_buffer); + } + } + $22 = $data; + _gcry_sexp_release($22); + $23 = $priv_sexp; + _gcry_sexp_release($23); + $0 = -1; + $48 = $0; + STACKTOP = sp;return ($48|0); + } + $24 = $priv_sexp; + _gcry_sexp_release($24); + $25 = $data; + _gcry_sexp_release($25); + $26 = HEAP32[$sig_sexp>>2]|0; + $27 = (_key_from_sexp($rs,$26,37820,47181)|0); + $rc = $27; + $28 = (0)!=($27|0); + if (!($28)) { + $38 = HEAP32[$sig_sexp>>2]|0; + _gcry_sexp_release($38); + $39 = $3; + $40 = HEAP32[$rs>>2]|0; + _GNUNET_CRYPTO_mpi_print_unsigned($39,32,$40); + $41 = $3; + $42 = ((($41)) + 32|0); + $43 = ((($rs)) + 4|0); + $44 = HEAP32[$43>>2]|0; + _GNUNET_CRYPTO_mpi_print_unsigned($42,32,$44); + $45 = HEAP32[$rs>>2]|0; + _gcry_mpi_release($45); + $46 = ((($rs)) + 4|0); + $47 = HEAP32[$46>>2]|0; + _gcry_mpi_release($47); + $0 = 1; + $48 = $0; + STACKTOP = sp;return ($48|0); + } + $log_line1 = 819; + $29 = HEAP32[222]|0; + $30 = ($29|0)==(-1); + if ($30) { + $31 = $log_line1; + $32 = (_GNUNET_get_log_call_status(1,0,19793,20259,$31)|0); + HEAP32[222] = $32; + } + $33 = (_GNUNET_get_log_skip()|0); + $34 = ($33|0)>(0); + if ($34) { + _GNUNET_log_skip(-1,0); + } else { + $35 = HEAP32[222]|0; + $36 = ($35|0)!=(0); + if ($36) { + HEAP32[$vararg_buffer3>>2] = 19793; + $vararg_ptr6 = ((($vararg_buffer3)) + 4|0); + HEAP32[$vararg_ptr6>>2] = 819; + _GNUNET_log_nocheck(1,61615,$vararg_buffer3); + } + } + $37 = HEAP32[$sig_sexp>>2]|0; + _gcry_sexp_release($37); + $0 = -1; + $48 = $0; + STACKTOP = sp;return ($48|0); +} +function _data_to_eddsa_value($purpose) { + $purpose = $purpose|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $data = 0, $hc = 0, $log_line = 0, $rc = 0, $vararg_buffer = 0, $vararg_buffer3 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer3 = sp + 16|0; + $vararg_buffer = sp; + $hc = sp + 48|0; + $data = sp + 40|0; + $1 = $purpose; + $2 = $1; + $3 = $1; + $4 = HEAPU8[$3>>0]|(HEAPU8[$3+1>>0]<<8)|(HEAPU8[$3+2>>0]<<16)|(HEAPU8[$3+3>>0]<<24); + $5 = (_ntohl($4)|0); + _GNUNET_CRYPTO_hash($2,$5,$hc); + HEAP32[$vararg_buffer>>2] = 37878; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 64; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $hc; + $6 = (_gcry_sexp_build($data,0,20195,$vararg_buffer)|0); + $rc = $6; + $7 = (0)!=($6|0); + if (!($7)) { + $18 = HEAP32[$data>>2]|0; + $0 = $18; + $19 = $0; + STACKTOP = sp;return ($19|0); + } + $log_line = 698; + $8 = HEAP32[220]|0; + $9 = ($8|0)==(-1); + if ($9) { + $10 = $log_line; + $11 = (_GNUNET_get_log_call_status(1,21106,19793,20239,$10)|0); + HEAP32[220] = $11; + } + $12 = (_GNUNET_get_log_skip()|0); + $13 = ($12|0)>(0); + if ($13) { + _GNUNET_log_skip(-1,0); + } else { + $14 = HEAP32[220]|0; + $15 = ($14|0)!=(0); + if ($15) { + $16 = $rc; + $17 = (_gcry_strerror($16)|0); + HEAP32[$vararg_buffer3>>2] = 19806; + $vararg_ptr6 = ((($vararg_buffer3)) + 4|0); + HEAP32[$vararg_ptr6>>2] = 19793; + $vararg_ptr7 = ((($vararg_buffer3)) + 8|0); + HEAP32[$vararg_ptr7>>2] = 698; + $vararg_ptr8 = ((($vararg_buffer3)) + 12|0); + HEAP32[$vararg_ptr8>>2] = $17; + _GNUNET_log_from_nocheck(1,21106,20684,$vararg_buffer3); + } + } + $0 = 0; + $19 = $0; + STACKTOP = sp;return ($19|0); +} +function _GNUNET_CRYPTO_eddsa_verify($purpose,$validate,$sig,$pub) { + $purpose = $purpose|0; + $validate = $validate|0; + $sig = $sig|0; + $pub = $pub|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $data = 0, $log_line = 0, $log_line1 = 0, $pub_sexpr = 0, $rc = 0, $sig_sexpr = 0, $vararg_buffer = 0; + var $vararg_buffer10 = 0, $vararg_buffer14 = 0, $vararg_buffer4 = 0, $vararg_ptr1 = 0, $vararg_ptr13 = 0, $vararg_ptr17 = 0, $vararg_ptr18 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer14 = sp + 40|0; + $vararg_buffer10 = sp + 32|0; + $vararg_buffer4 = sp + 16|0; + $vararg_buffer = sp; + $sig_sexpr = sp + 68|0; + $pub_sexpr = sp + 64|0; + $1 = $purpose; + $2 = $validate; + $3 = $sig; + $4 = $pub; + $5 = $1; + $6 = $2; + $7 = ((($6)) + 4|0); + $8 = HEAPU8[$7>>0]|(HEAPU8[$7+1>>0]<<8)|(HEAPU8[$7+2>>0]<<16)|(HEAPU8[$7+3>>0]<<24); + $9 = (_ntohl($8)|0); + $10 = ($5|0)!=($9|0); + if ($10) { + $0 = -1; + $52 = $0; + STACKTOP = sp;return ($52|0); + } + $11 = $3; + $12 = $3; + $13 = ((($12)) + 32|0); + HEAP32[$vararg_buffer>>2] = 32; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $11; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = 32; + $vararg_ptr3 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr3>>2] = $13; + $14 = (_gcry_sexp_build($sig_sexpr,0,20358,$vararg_buffer)|0); + $rc = $14; + $15 = (0)!=($14|0); + if ($15) { + $log_line = 918; + $16 = HEAP32[223]|0; + $17 = ($16|0)==(-1); + if ($17) { + $18 = $log_line; + $19 = (_GNUNET_get_log_call_status(1,21106,19793,20387,$18)|0); + HEAP32[223] = $19; + } + $20 = (_GNUNET_get_log_skip()|0); + $21 = ($20|0)>(0); + if ($21) { + _GNUNET_log_skip(-1,0); + } else { + $22 = HEAP32[223]|0; + $23 = ($22|0)!=(0); + if ($23) { + $24 = $rc; + $25 = (_gcry_strerror($24)|0); + HEAP32[$vararg_buffer4>>2] = 19806; + $vararg_ptr7 = ((($vararg_buffer4)) + 4|0); + HEAP32[$vararg_ptr7>>2] = 19793; + $vararg_ptr8 = ((($vararg_buffer4)) + 8|0); + HEAP32[$vararg_ptr8>>2] = 918; + $vararg_ptr9 = ((($vararg_buffer4)) + 12|0); + HEAP32[$vararg_ptr9>>2] = $25; + _GNUNET_log_from_nocheck(1,21106,20684,$vararg_buffer4); + } + } + $0 = -1; + $52 = $0; + STACKTOP = sp;return ($52|0); + } + $26 = $2; + $27 = (_data_to_eddsa_value($26)|0); + $data = $27; + $28 = $4; + HEAP32[$vararg_buffer10>>2] = 32; + $vararg_ptr13 = ((($vararg_buffer10)) + 4|0); + HEAP32[$vararg_ptr13>>2] = $28; + $29 = (_gcry_sexp_build($pub_sexpr,0,20414,$vararg_buffer10)|0); + $rc = $29; + $30 = (0)!=($29|0); + if ($30) { + $31 = $data; + _gcry_sexp_release($31); + $32 = HEAP32[$sig_sexpr>>2]|0; + _gcry_sexp_release($32); + $0 = -1; + $52 = $0; + STACKTOP = sp;return ($52|0); + } + $33 = HEAP32[$sig_sexpr>>2]|0; + $34 = $data; + $35 = HEAP32[$pub_sexpr>>2]|0; + $36 = (_gcry_pk_verify($33,$34,$35)|0); + $rc = $36; + $37 = HEAP32[$pub_sexpr>>2]|0; + _gcry_sexp_release($37); + $38 = $data; + _gcry_sexp_release($38); + $39 = HEAP32[$sig_sexpr>>2]|0; + _gcry_sexp_release($39); + $40 = $rc; + $41 = (0)!=($40|0); + if (!($41)) { + $0 = 1; + $52 = $0; + STACKTOP = sp;return ($52|0); + } + $log_line1 = 938; + $42 = HEAP32[224]|0; + $43 = ($42|0)==(-1); + if ($43) { + $44 = $log_line1; + $45 = (_GNUNET_get_log_call_status(4,21106,19793,20387,$44)|0); + HEAP32[224] = $45; + } + $46 = (_GNUNET_get_log_skip()|0); + $47 = ($46|0)>(0); + if ($47) { + _GNUNET_log_skip(-1,0); + } else { + $48 = HEAP32[224]|0; + $49 = ($48|0)!=(0); + if ($49) { + $50 = $rc; + $51 = (_gcry_strerror($50)|0); + HEAP32[$vararg_buffer14>>2] = 19793; + $vararg_ptr17 = ((($vararg_buffer14)) + 4|0); + HEAP32[$vararg_ptr17>>2] = 938; + $vararg_ptr18 = ((($vararg_buffer14)) + 8|0); + HEAP32[$vararg_ptr18>>2] = $51; + _GNUNET_log_from_nocheck(4,21106,20466,$vararg_buffer14); + } + } + $0 = -1; + $52 = $0; + STACKTOP = sp;return ($52|0); +} +function _GNUNET_CRYPTO_ecc_ecdh($priv,$pub,$key_material) { + $priv = $priv|0; + $pub = $pub|0; + $key_material = $key_material|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $8 = 0, $9 = 0, $ctx = 0, $d = 0, $log_line = 0, $log_line1 = 0, $log_line2 = 0; + var $log_line3 = 0, $pub_sexpr = 0, $q = 0, $result = 0, $result_x = 0, $rsize = 0, $vararg_buffer = 0, $vararg_buffer12 = 0, $vararg_buffer16 = 0, $vararg_buffer2 = 0, $vararg_buffer6 = 0, $vararg_ptr1 = 0, $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr15 = 0, $vararg_ptr19 = 0, $vararg_ptr5 = 0, $vararg_ptr9 = 0, $xbuf = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer16 = sp + 40|0; + $vararg_buffer12 = sp + 32|0; + $vararg_buffer6 = sp + 16|0; + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $d = sp + 80|0; + $ctx = sp + 76|0; + $pub_sexpr = sp + 72|0; + $xbuf = sp + 112|0; + $rsize = sp + 64|0; + $1 = $priv; + $2 = $pub; + $3 = $key_material; + $4 = $2; + HEAP32[$vararg_buffer>>2] = 32; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $4; + $5 = (_gcry_sexp_build($pub_sexpr,0,20319,$vararg_buffer)|0); + $6 = (0)!=($5|0); + if ($6) { + $0 = -1; + $74 = $0; + STACKTOP = sp;return ($74|0); + } + $7 = HEAP32[$pub_sexpr>>2]|0; + $8 = (_gcry_mpi_ec_new($ctx,$7,0)|0); + $9 = (0)==($8|0); + if (!($9)) { + $log_line = 972; + $10 = HEAP32[225]|0; + $11 = ($10|0)==(-1); + if ($11) { + $12 = $log_line; + $13 = (_GNUNET_get_log_call_status(1,0,19793,20516,$12)|0); + HEAP32[225] = $13; + } + $14 = (_GNUNET_get_log_skip()|0); + $15 = ($14|0)>(0); + if ($15) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $16 = HEAP32[225]|0; + $17 = ($16|0)!=(0); + if (!($17)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer2>>2] = 19793; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = 972; + _GNUNET_log_nocheck(1,61615,$vararg_buffer2); + _GNUNET_abort_(); + // unreachable; + } + $18 = HEAP32[$pub_sexpr>>2]|0; + _gcry_sexp_release($18); + $19 = HEAP32[$ctx>>2]|0; + $20 = (_gcry_mpi_ec_get_point(49895,$19,0)|0); + $q = $20; + $21 = $1; + _GNUNET_CRYPTO_mpi_scan_unsigned($d,$21,32); + $22 = (_gcry_mpi_point_new(0)|0); + $result = $22; + $23 = $result; + $24 = HEAP32[$d>>2]|0; + $25 = $q; + $26 = HEAP32[$ctx>>2]|0; + _gcry_mpi_ec_mul($23,$24,$25,$26); + $27 = $q; + _gcry_mpi_point_release($27); + $28 = HEAP32[$d>>2]|0; + _gcry_mpi_release($28); + $29 = (_gcry_mpi_new(256)|0); + $result_x = $29; + $30 = $result_x; + $31 = $result; + $32 = HEAP32[$ctx>>2]|0; + $33 = (_gcry_mpi_ec_get_affine($30,0,$31,$32)|0); + $34 = ($33|0)!=(0); + if ($34) { + $log_line1 = 989; + $35 = HEAP32[226]|0; + $36 = ($35|0)==(-1); + if ($36) { + $37 = $log_line1; + $38 = (_GNUNET_get_log_call_status(1,21106,19793,20516,$37)|0); + HEAP32[226] = $38; + } + $39 = (_GNUNET_get_log_skip()|0); + $40 = ($39|0)>(0); + if ($40) { + _GNUNET_log_skip(-1,0); + } else { + $41 = HEAP32[226]|0; + $42 = ($41|0)!=(0); + if ($42) { + $43 = (_gcry_strerror(0)|0); + HEAP32[$vararg_buffer6>>2] = 20539; + $vararg_ptr9 = ((($vararg_buffer6)) + 4|0); + HEAP32[$vararg_ptr9>>2] = 19793; + $vararg_ptr10 = ((($vararg_buffer6)) + 8|0); + HEAP32[$vararg_ptr10>>2] = 989; + $vararg_ptr11 = ((($vararg_buffer6)) + 12|0); + HEAP32[$vararg_ptr11>>2] = $43; + _GNUNET_log_from_nocheck(1,21106,20684,$vararg_buffer6); + } + } + $44 = $result; + _gcry_mpi_point_release($44); + $45 = HEAP32[$ctx>>2]|0; + _gcry_ctx_release($45); + $0 = -1; + $74 = $0; + STACKTOP = sp;return ($74|0); + } + $46 = $result; + _gcry_mpi_point_release($46); + $47 = HEAP32[$ctx>>2]|0; + _gcry_ctx_release($47); + HEAP32[$rsize>>2] = 32; + $48 = $result_x; + $49 = (_gcry_mpi_get_flag($48,2)|0); + $50 = ($49|0)!=(0); + if ($50) { + $log_line2 = 998; + $51 = HEAP32[227]|0; + $52 = ($51|0)==(-1); + if ($52) { + $53 = $log_line2; + $54 = (_GNUNET_get_log_call_status(1,0,19793,20516,$53)|0); + HEAP32[227] = $54; + } + $55 = (_GNUNET_get_log_skip()|0); + $56 = ($55|0)>(0); + if ($56) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $57 = HEAP32[227]|0; + $58 = ($57|0)!=(0); + if (!($58)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer12>>2] = 19793; + $vararg_ptr15 = ((($vararg_buffer12)) + 4|0); + HEAP32[$vararg_ptr15>>2] = 998; + _GNUNET_log_nocheck(1,61615,$vararg_buffer12); + _GNUNET_abort_(); + // unreachable; + } + $59 = HEAP32[$rsize>>2]|0; + $60 = $result_x; + $61 = (_gcry_mpi_print(1,$xbuf,$59,$rsize,$60)|0); + $62 = (0)==($61|0); + if ($62) { + $71 = HEAP32[$rsize>>2]|0; + $72 = $3; + _GNUNET_CRYPTO_hash($xbuf,$71,$72); + $73 = $result_x; + _gcry_mpi_release($73); + $0 = 1; + $74 = $0; + STACKTOP = sp;return ($74|0); + } + $log_line3 = 1005; + $63 = HEAP32[228]|0; + $64 = ($63|0)==(-1); + if ($64) { + $65 = $log_line3; + $66 = (_GNUNET_get_log_call_status(1,0,19793,20516,$65)|0); + HEAP32[228] = $66; + } + $67 = (_GNUNET_get_log_skip()|0); + $68 = ($67|0)>(0); + if ($68) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $69 = HEAP32[228]|0; + $70 = ($69|0)!=(0); + if (!($70)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer16>>2] = 19793; + $vararg_ptr19 = ((($vararg_buffer16)) + 4|0); + HEAP32[$vararg_ptr19>>2] = 1005; + _GNUNET_log_nocheck(1,61615,$vararg_buffer16); + _GNUNET_abort_(); + // unreachable; + return (0)|0; +} +function _GNUNET_CRYPTO_hash($block,$size,$ret) { + $block = $block|0; + $size = $size|0; + $ret = $ret|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $block; + $1 = $size; + $2 = $ret; + $3 = $2; + $4 = $0; + $5 = $1; + _gcry_md_hash_buffer(10,$3,$4,$5); + STACKTOP = sp;return; +} +function _GNUNET_CRYPTO_hash_create_random($mode,$result) { + $mode = $mode|0; + $result = $result|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $mode; + $1 = $result; + $i = 15; + while(1) { + $2 = $i; + $3 = ($2|0)>=(0); + if (!($3)) { + break; + } + $4 = $0; + $5 = (_GNUNET_CRYPTO_random_u32($4,-1)|0); + $6 = $i; + $7 = $1; + $8 = (($7) + ($6<<2)|0); + HEAP32[$8>>2] = $5; + $9 = $i; + $10 = (($9) + -1)|0; + $i = $10; + } + STACKTOP = sp;return; +} +function _GNUNET_CRYPTO_hash_context_start() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $hc = 0, $log_line = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = (_GNUNET_xmalloc_(4,20557,425)|0); + $hc = $0; + $1 = $hc; + $2 = (_gcry_md_open($1,10,0)|0); + $3 = (0)==($2|0); + if ($3) { + $12 = $hc; + STACKTOP = sp;return ($12|0); + } + $log_line = 429; + $4 = HEAP32[229]|0; + $5 = ($4|0)==(-1); + if ($5) { + $6 = $log_line; + $7 = (_GNUNET_get_log_call_status(1,0,20557,20571,$6)|0); + HEAP32[229] = $7; + } + $8 = (_GNUNET_get_log_skip()|0); + $9 = ($8|0)>(0); + if ($9) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $10 = HEAP32[229]|0; + $11 = ($10|0)!=(0); + if (!($11)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 20557; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 429; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + return (0)|0; +} +function _GNUNET_CRYPTO_hash_context_read($hc,$buf,$size) { + $hc = $hc|0; + $buf = $buf|0; + $size = $size|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $hc; + $1 = $buf; + $2 = $size; + $3 = $0; + $4 = HEAP32[$3>>2]|0; + $5 = $1; + $6 = $2; + _gcry_md_write($4,$5,$6); + STACKTOP = sp;return; +} +function _GNUNET_CRYPTO_hash_context_finish($hc,$r_hash) { + $hc = $hc|0; + $r_hash = $r_hash|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $log_line = 0, $res = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $hc; + $1 = $r_hash; + $2 = $0; + $3 = HEAP32[$2>>2]|0; + $4 = (_gcry_md_read($3,0)|0); + $res = $4; + $5 = $res; + $6 = (0|0)!=($5|0); + if ($6) { + $15 = $1; + $16 = (0|0)!=($15|0); + if (!($16)) { + $19 = $0; + _GNUNET_CRYPTO_hash_context_abort($19); + STACKTOP = sp;return; + } + $17 = $1; + $18 = $res; + dest=$17; src=$18; stop=dest+64|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $19 = $0; + _GNUNET_CRYPTO_hash_context_abort($19); + STACKTOP = sp;return; + } + $log_line = 462; + $7 = HEAP32[230]|0; + $8 = ($7|0)==(-1); + if ($8) { + $9 = $log_line; + $10 = (_GNUNET_get_log_call_status(1,0,20557,20604,$9)|0); + HEAP32[230] = $10; + } + $11 = (_GNUNET_get_log_skip()|0); + $12 = ($11|0)>(0); + if ($12) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $13 = HEAP32[230]|0; + $14 = ($13|0)!=(0); + if (!($14)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 20557; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 462; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; +} +function _GNUNET_CRYPTO_hash_context_abort($hc) { + $hc = $hc|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $hc; + $1 = $0; + $2 = HEAP32[$1>>2]|0; + _gcry_md_close($2); + $3 = $0; + _GNUNET_xfree_($3,20557,480); + STACKTOP = sp;return; +} +function _GNUNET_CRYPTO_hkdf_v($result,$out_len,$xtr_algo,$prf_algo,$xts,$xts_len,$skm,$skm_len,$argp) { + $result = $result|0; + $out_len = $out_len|0; + $xtr_algo = $xtr_algo|0; + $prf_algo = $prf_algo|0; + $xts = $xts|0; + $xts_len = $xts_len|0; + $skm = $skm|0; + $skm_len = $skm_len|0; + $argp = $argp|0; + var $$alloca_mul = 0, $$alloca_mul53 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0; + var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0; + var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0; + var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0; + var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $19 = 0, $2 = 0; + var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $arglist_current = 0, $arglist_current11 = 0, $arglist_current2 = 0, $arglist_current8 = 0, $arglist_next = 0, $arglist_next12 = 0, $arglist_next3 = 0, $arglist_next9 = 0, $args = 0, $cleanup$dest = 0, $ctx = 0, $ctx_len = 0, $d = 0; + var $dst = 0, $expanded = 0, $expanded13 = 0, $expanded15 = 0, $expanded16 = 0, $expanded17 = 0, $expanded19 = 0, $expanded20 = 0, $expanded22 = 0, $expanded23 = 0, $expanded24 = 0, $expanded26 = 0, $expanded27 = 0, $expanded29 = 0, $expanded30 = 0, $expanded31 = 0, $expanded33 = 0, $expanded34 = 0, $expanded36 = 0, $expanded37 = 0; + var $expanded38 = 0, $hc = 0, $i = 0, $k = 0, $len = 0, $plain_len = 0, $prf = 0, $ret = 0, $t = 0, $vacopy_currentptr = 0, $vacopy_currentptr6 = 0, $xtr = 0, $xtr_len = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $xtr = sp + 80|0; + $prf = sp + 76|0; + $args = sp + 24|0; + $1 = $result; + $2 = $out_len; + $3 = $xtr_algo; + $4 = $prf_algo; + $5 = $xts; + $6 = $xts_len; + $7 = $skm; + $8 = $skm_len; + $9 = $argp; + $13 = $4; + $14 = (_gcry_md_get_algo_dlen($13)|0); + $k = $14; + $15 = $3; + $16 = (_gcry_md_get_algo_dlen($15)|0); + $xtr_len = $16; + $17 = $xtr_len; + $18 = (_llvm_stacksave()|0); + $10 = $18; + $$alloca_mul = $17; + $19 = STACKTOP; STACKTOP = STACKTOP + ((((1*$$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort();; + $20 = $k; + $21 = (0)==($20|0); + if ($21) { + $0 = -1; + $11 = 1; + $183 = $10; + _llvm_stackrestore(($183|0)); + $184 = $0; + STACKTOP = sp;return ($184|0); + } + $22 = $3; + $23 = (_gcry_md_open($xtr,$22,2)|0); + $24 = (0)!=($23|0); + if ($24) { + $0 = -1; + $11 = 1; + $183 = $10; + _llvm_stackrestore(($183|0)); + $184 = $0; + STACKTOP = sp;return ($184|0); + } + $25 = $4; + $26 = (_gcry_md_open($prf,$25,2)|0); + $27 = (0)!=($26|0); + if ($27) { + $28 = HEAP32[$xtr>>2]|0; + _gcry_md_close($28); + $0 = -1; + $11 = 1; + $183 = $10; + _llvm_stackrestore(($183|0)); + $184 = $0; + STACKTOP = sp;return ($184|0); + } + $29 = $9; + $vacopy_currentptr = HEAP32[$29>>2]|0; + HEAP32[$args>>2] = $vacopy_currentptr; + $ctx_len = 0; + while(1) { + $arglist_current = HEAP32[$args>>2]|0; + $30 = $arglist_current; + $31 = ((0) + 4|0); + $expanded13 = $31; + $expanded = (($expanded13) - 1)|0; + $32 = (($30) + ($expanded))|0; + $33 = ((0) + 4|0); + $expanded17 = $33; + $expanded16 = (($expanded17) - 1)|0; + $expanded15 = $expanded16 ^ -1; + $34 = $32 & $expanded15; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $arglist_next = ((($35)) + 4|0); + HEAP32[$args>>2] = $arglist_next; + $37 = (0|0)!=($36|0); + if (!($37)) { + break; + } + $arglist_current2 = HEAP32[$args>>2]|0; + $38 = $arglist_current2; + $39 = ((0) + 4|0); + $expanded20 = $39; + $expanded19 = (($expanded20) - 1)|0; + $40 = (($38) + ($expanded19))|0; + $41 = ((0) + 4|0); + $expanded24 = $41; + $expanded23 = (($expanded24) - 1)|0; + $expanded22 = $expanded23 ^ -1; + $42 = $40 & $expanded22; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $arglist_next3 = ((($43)) + 4|0); + HEAP32[$args>>2] = $arglist_next3; + $45 = $ctx_len; + $46 = (($45) + ($44))|0; + $ctx_len = $46; + } + $47 = $1; + $48 = $2; + _memset(($47|0),0,($48|0))|0; + $49 = HEAP32[$xtr>>2]|0; + $50 = $5; + $51 = $6; + $52 = $7; + $53 = $8; + $54 = (_getPRK($49,$50,$51,$52,$53,$19)|0); + $55 = ($54|0)!=(1); + L17: do { + if ($55) { + label = 34; + } else { + $56 = $2; + $57 = $k; + $58 = (($56>>>0) / ($57>>>0))&-1; + $t = $58; + $59 = $2; + $60 = $k; + $61 = (($59>>>0) % ($60>>>0))&-1; + $d = $61; + $62 = $k; + $63 = $ctx_len; + $64 = (($62) + ($63))|0; + $65 = (($64) + 1)|0; + $plain_len = $65; + $66 = $plain_len; + $67 = (_llvm_stacksave()|0); + $12 = $67; + $$alloca_mul53 = $66; + $68 = STACKTOP; STACKTOP = STACKTOP + ((((1*$$alloca_mul53)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort();; + $69 = $k; + $70 = (($68) + ($69)|0); + $dst = $70; + $71 = $9; + $vacopy_currentptr6 = HEAP32[$71>>2]|0; + HEAP32[$args>>2] = $vacopy_currentptr6; + while(1) { + $arglist_current8 = HEAP32[$args>>2]|0; + $72 = $arglist_current8; + $73 = ((0) + 4|0); + $expanded27 = $73; + $expanded26 = (($expanded27) - 1)|0; + $74 = (($72) + ($expanded26))|0; + $75 = ((0) + 4|0); + $expanded31 = $75; + $expanded30 = (($expanded31) - 1)|0; + $expanded29 = $expanded30 ^ -1; + $76 = $74 & $expanded29; + $77 = $76; + $78 = HEAP32[$77>>2]|0; + $arglist_next9 = ((($77)) + 4|0); + HEAP32[$args>>2] = $arglist_next9; + $ctx = $78; + $79 = ($78|0)!=(0|0); + if (!($79)) { + break; + } + $arglist_current11 = HEAP32[$args>>2]|0; + $80 = $arglist_current11; + $81 = ((0) + 4|0); + $expanded34 = $81; + $expanded33 = (($expanded34) - 1)|0; + $82 = (($80) + ($expanded33))|0; + $83 = ((0) + 4|0); + $expanded38 = $83; + $expanded37 = (($expanded38) - 1)|0; + $expanded36 = $expanded37 ^ -1; + $84 = $82 & $expanded36; + $85 = $84; + $86 = HEAP32[$85>>2]|0; + $arglist_next12 = ((($85)) + 4|0); + HEAP32[$args>>2] = $arglist_next12; + $len = $86; + $87 = $dst; + $88 = $ctx; + $89 = $len; + _memcpy(($87|0),($88|0),($89|0))|0; + $90 = $len; + $91 = $dst; + $92 = (($91) + ($90)|0); + $dst = $92; + } + $93 = $t; + $94 = ($93>>>0)>(0); + do { + if ($94) { + $95 = $k; + $96 = (($68) + ($95)|0); + $97 = $ctx_len; + $98 = (($96) + ($97)|0); + ;HEAP8[$98>>0]=1|0; + $99 = HEAP32[$prf>>2]|0; + $100 = $xtr_len; + $101 = $k; + $102 = (($68) + ($101)|0); + $103 = $ctx_len; + $104 = (($103) + 1)|0; + $105 = (_doHMAC($99,$19,$100,$102,$104)|0); + $hc = $105; + $106 = $hc; + $107 = ($106|0)==(0|0); + if ($107) { + $11 = 4; + break; + } else { + $108 = $1; + $109 = $hc; + $110 = $k; + _memcpy(($108|0),($109|0),($110|0))|0; + $111 = $k; + $112 = $1; + $113 = (($112) + ($111)|0); + $1 = $113; + label = 18; + break; + } + } else { + label = 18; + } + } while(0); + L28: do { + if ((label|0) == 18) { + $i = 1; + while(1) { + $114 = $i; + $115 = $t; + $116 = ($114>>>0)<($115>>>0); + if (!($116)) { + break; + } + $117 = $1; + $118 = $k; + $119 = (0 - ($118))|0; + $120 = (($117) + ($119)|0); + $121 = $k; + _memcpy(($68|0),($120|0),($121|0))|0; + $122 = $k; + $123 = (($68) + ($122)|0); + $124 = $ctx_len; + $125 = (($123) + ($124)|0); + $126 = $i; + $127 = (($126) + 1)|0; + $128 = $127&255; + _memset(($125|0),($128|0),1)|0; + $129 = HEAP32[$prf>>2]|0; + _gcry_md_reset($129); + $130 = HEAP32[$prf>>2]|0; + $131 = $xtr_len; + $132 = $plain_len; + $133 = (_doHMAC($130,$19,$131,$68,$132)|0); + $hc = $133; + $134 = $hc; + $135 = ($134|0)==(0|0); + if ($135) { + label = 21; + break; + } + $136 = $1; + $137 = $hc; + $138 = $k; + _memcpy(($136|0),($137|0),($138|0))|0; + $139 = $k; + $140 = $1; + $141 = (($140) + ($139)|0); + $1 = $141; + $142 = $i; + $143 = (($142) + 1)|0; + $i = $143; + } + if ((label|0) == 21) { + $11 = 4; + break; + } + $144 = $d; + $145 = ($144>>>0)>(0); + do { + if ($145) { + $146 = $t; + $147 = ($146>>>0)>(0); + if ($147) { + $148 = $1; + $149 = $k; + $150 = (0 - ($149))|0; + $151 = (($148) + ($150)|0); + $152 = $k; + _memcpy(($68|0),($151|0),($152|0))|0; + $153 = $i; + $154 = (($153) + 1)|0; + $i = $154; + } + $155 = $k; + $156 = (($68) + ($155)|0); + $157 = $ctx_len; + $158 = (($156) + ($157)|0); + $159 = $i; + $160 = $159&255; + _memset(($158|0),($160|0),1)|0; + $161 = HEAP32[$prf>>2]|0; + _gcry_md_reset($161); + $162 = $t; + $163 = ($162>>>0)>(0); + $164 = HEAP32[$prf>>2]|0; + $165 = $xtr_len; + if ($163) { + $166 = $plain_len; + $167 = (_doHMAC($164,$19,$165,$68,$166)|0); + $hc = $167; + } else { + $168 = $k; + $169 = (($68) + ($168)|0); + $170 = $plain_len; + $171 = $k; + $172 = (($170) - ($171))|0; + $173 = (_doHMAC($164,$19,$165,$169,$172)|0); + $hc = $173; + } + $174 = $hc; + $175 = ($174|0)==(0|0); + if ($175) { + $11 = 4; + break L28; + } else { + $176 = $1; + $177 = $hc; + $178 = $d; + _memcpy(($176|0),($177|0),($178|0))|0; + break; + } + } + } while(0); + $ret = 1; + $11 = 10; + } + } while(0); + $179 = $12; + _llvm_stackrestore(($179|0)); + $cleanup$dest = $11; + switch ($cleanup$dest|0) { + case 4: { + label = 34; + break L17; + break; + } + case 10: { + break L17; + break; + } + default: { + } + } + $183 = $10; + _llvm_stackrestore(($183|0)); + $184 = $0; + STACKTOP = sp;return ($184|0); + } + } while(0); + if ((label|0) == 34) { + $ret = -1; + } + $180 = HEAP32[$xtr>>2]|0; + _gcry_md_close($180); + $181 = HEAP32[$prf>>2]|0; + _gcry_md_close($181); + $182 = $ret; + $0 = $182; + $11 = 1; + $183 = $10; + _llvm_stackrestore(($183|0)); + $184 = $0; + STACKTOP = sp;return ($184|0); +} +function _getPRK($mac,$xts,$xts_len,$skm,$skm_len,$prk) { + $mac = $mac|0; + $xts = $xts|0; + $xts_len = $xts_len|0; + $skm = $skm|0; + $skm_len = $skm_len|0; + $prk = $prk|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $ret = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $mac; + $2 = $xts; + $3 = $xts_len; + $4 = $skm; + $5 = $skm_len; + $6 = $prk; + $7 = $1; + $8 = $2; + $9 = $3; + $10 = $4; + $11 = $5; + $12 = (_doHMAC($7,$8,$9,$10,$11)|0); + $ret = $12; + $13 = $ret; + $14 = ($13|0)==(0|0); + if ($14) { + $0 = -1; + $20 = $0; + STACKTOP = sp;return ($20|0); + } else { + $15 = $6; + $16 = $ret; + $17 = $1; + $18 = (_gcry_md_get_algo($17)|0); + $19 = (_gcry_md_get_algo_dlen($18)|0); + _memcpy(($15|0),($16|0),($19|0))|0; + $0 = 1; + $20 = $0; + STACKTOP = sp;return ($20|0); + } + return (0)|0; +} +function _doHMAC($mac,$key,$key_len,$buf,$buf_len) { + $mac = $mac|0; + $key = $key|0; + $key_len = $key_len|0; + $buf = $buf|0; + $buf_len = $buf_len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $mac; + $1 = $key; + $2 = $key_len; + $3 = $buf; + $4 = $buf_len; + $5 = $0; + $6 = $1; + $7 = $2; + (_gcry_md_setkey($5,$6,$7)|0); + $8 = $0; + $9 = $3; + $10 = $4; + _gcry_md_write($8,$9,$10); + $11 = $0; + $12 = (_gcry_md_read($11,0)|0); + STACKTOP = sp;return ($12|0); +} +function _GNUNET_CRYPTO_hkdf($result,$out_len,$xtr_algo,$prf_algo,$xts,$xts_len,$skm,$skm_len,$varargs) { + $result = $result|0; + $out_len = $out_len|0; + $xtr_algo = $xtr_algo|0; + $prf_algo = $prf_algo|0; + $xts = $xts|0; + $xts_len = $xts_len|0; + $skm = $skm|0; + $skm_len = $skm_len|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $argp = 0, $ret = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $argp = sp + 8|0; + $0 = $result; + $1 = $out_len; + $2 = $xtr_algo; + $3 = $prf_algo; + $4 = $xts; + $5 = $xts_len; + $6 = $skm; + $7 = $skm_len; + HEAP32[$argp>>2] = $varargs; + $8 = $0; + $9 = $1; + $10 = $2; + $11 = $3; + $12 = $4; + $13 = $5; + $14 = $6; + $15 = $7; + $16 = (_GNUNET_CRYPTO_hkdf_v($8,$9,$10,$11,$12,$13,$14,$15,$argp)|0); + $ret = $16; + $17 = $ret; + STACKTOP = sp;return ($17|0); +} +function _GNUNET_CRYPTO_kdf_v($result,$out_len,$xts,$xts_len,$skm,$skm_len,$argp) { + $result = $result|0; + $out_len = $out_len|0; + $xts = $xts|0; + $xts_len = $xts_len|0; + $skm = $skm|0; + $skm_len = $skm_len|0; + $argp = $argp|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $result; + $1 = $out_len; + $2 = $xts; + $3 = $xts_len; + $4 = $skm; + $5 = $skm_len; + $6 = $argp; + $7 = $0; + $8 = $1; + $9 = $2; + $10 = $3; + $11 = $4; + $12 = $5; + $13 = $6; + $14 = (_GNUNET_CRYPTO_hkdf_v($7,$8,10,8,$9,$10,$11,$12,$13)|0); + STACKTOP = sp;return ($14|0); +} +function _GNUNET_CRYPTO_kdf($result,$out_len,$xts,$xts_len,$skm,$skm_len,$varargs) { + $result = $result|0; + $out_len = $out_len|0; + $xts = $xts|0; + $xts_len = $xts_len|0; + $skm = $skm|0; + $skm_len = $skm_len|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $argp = 0, $ret = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $argp = sp + 8|0; + $0 = $result; + $1 = $out_len; + $2 = $xts; + $3 = $xts_len; + $4 = $skm; + $5 = $skm_len; + HEAP32[$argp>>2] = $varargs; + $6 = $0; + $7 = $1; + $8 = $2; + $9 = $3; + $10 = $4; + $11 = $5; + $12 = (_GNUNET_CRYPTO_kdf_v($6,$7,$8,$9,$10,$11,$argp)|0); + $ret = $12; + $13 = $ret; + STACKTOP = sp;return ($13|0); +} +function _GNUNET_CRYPTO_mpi_print_unsigned($buf,$size,$val) { + $buf = $buf|0; + $size = $size|0; + $val = $val|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $log_line = 0, $log_line1 = 0, $log_line2 = 0, $nbits = 0, $p = 0, $rc = 0, $rsize = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer8 = 0, $vararg_ptr1 = 0, $vararg_ptr11 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer8 = sp + 24|0; + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $rsize = sp + 56|0; + $nbits = sp + 48|0; + $0 = $buf; + $1 = $size; + $2 = $val; + $3 = $2; + $4 = (_gcry_mpi_get_flag($3,2)|0); + $5 = ($4|0)!=(0); + if ($5) { + $6 = $2; + $7 = (_gcry_mpi_get_opaque($6,$nbits)|0); + $p = $7; + $8 = $p; + $9 = ($8|0)!=(0|0); + if ($9) { + $18 = HEAP32[$nbits>>2]|0; + $19 = (($18) + 7)|0; + $20 = (($19>>>0) / 8)&-1; + HEAP32[$rsize>>2] = $20; + $21 = HEAP32[$rsize>>2]|0; + $22 = $1; + $23 = ($21>>>0)>($22>>>0); + if ($23) { + $24 = $1; + HEAP32[$rsize>>2] = $24; + } + $25 = $0; + $26 = $p; + $27 = HEAP32[$rsize>>2]|0; + _memcpy(($25|0),($26|0),($27|0))|0; + $28 = HEAP32[$rsize>>2]|0; + $29 = $1; + $30 = ($28>>>0)<($29>>>0); + if (!($30)) { + STACKTOP = sp;return; + } + $31 = $0; + $32 = HEAP32[$rsize>>2]|0; + $33 = (($31) + ($32)|0); + $34 = $1; + $35 = HEAP32[$rsize>>2]|0; + $36 = (($34) - ($35))|0; + _memset(($33|0),0,($36|0))|0; + STACKTOP = sp;return; + } + $log_line = 89; + $10 = HEAP32[231]|0; + $11 = ($10|0)==(-1); + if ($11) { + $12 = $log_line; + $13 = (_GNUNET_get_log_call_status(1,0,20638,20651,$12)|0); + HEAP32[231] = $13; + } + $14 = (_GNUNET_get_log_skip()|0); + $15 = ($14|0)>(0); + if ($15) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $16 = HEAP32[231]|0; + $17 = ($16|0)!=(0); + if (!($17)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 20638; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 89; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + } + $37 = $1; + HEAP32[$rsize>>2] = $37; + $38 = $0; + $39 = HEAP32[$rsize>>2]|0; + $40 = $2; + $41 = (_gcry_mpi_print(5,$38,$39,$rsize,$40)|0); + $rc = $41; + $42 = (0)!=($41|0); + if (!($42)) { + $61 = $0; + $62 = HEAP32[$rsize>>2]|0; + $63 = $1; + _adjust($61,$62,$63); + STACKTOP = sp;return; + } + $log_line1 = 110; + $43 = HEAP32[232]|0; + $44 = ($43|0)==(-1); + if ($44) { + $45 = $log_line1; + $46 = (_GNUNET_get_log_call_status(1,21106,20638,20651,$45)|0); + HEAP32[232] = $46; + } + $47 = (_GNUNET_get_log_skip()|0); + $48 = ($47|0)>(0); + if ($48) { + _GNUNET_log_skip(-1,0); + } else { + $49 = HEAP32[232]|0; + $50 = ($49|0)!=(0); + if ($50) { + $51 = $rc; + $52 = (_gcry_strerror($51)|0); + HEAP32[$vararg_buffer2>>2] = 20721; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = 20638; + $vararg_ptr6 = ((($vararg_buffer2)) + 8|0); + HEAP32[$vararg_ptr6>>2] = 110; + $vararg_ptr7 = ((($vararg_buffer2)) + 12|0); + HEAP32[$vararg_ptr7>>2] = $52; + _GNUNET_log_from_nocheck(1,21106,20684,$vararg_buffer2); + } + } + $log_line2 = 111; + $53 = HEAP32[233]|0; + $54 = ($53|0)==(-1); + if ($54) { + $55 = $log_line2; + $56 = (_GNUNET_get_log_call_status(1,0,20638,20651,$55)|0); + HEAP32[233] = $56; + } + $57 = (_GNUNET_get_log_skip()|0); + $58 = ($57|0)>(0); + if ($58) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $59 = HEAP32[233]|0; + $60 = ($59|0)!=(0); + if (!($60)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer8>>2] = 20638; + $vararg_ptr11 = ((($vararg_buffer8)) + 4|0); + HEAP32[$vararg_ptr11>>2] = 111; + _GNUNET_log_nocheck(1,61615,$vararg_buffer8); + _GNUNET_abort_(); + // unreachable; +} +function _adjust($buf,$size,$target) { + $buf = $buf|0; + $size = $size|0; + $target = $target|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $buf; + $1 = $size; + $2 = $target; + $3 = $0; + $p = $3; + $4 = $1; + $5 = $2; + $6 = ($4>>>0)<($5>>>0); + if (!($6)) { + STACKTOP = sp;return; + } + $7 = $2; + $8 = $1; + $9 = (($7) - ($8))|0; + $10 = $p; + $11 = (($10) + ($9)|0); + $12 = $0; + $13 = $1; + _memmove(($11|0),($12|0),($13|0))|0; + $14 = $0; + $15 = $2; + $16 = $1; + $17 = (($15) - ($16))|0; + _memset(($14|0),0,($17|0))|0; + STACKTOP = sp;return; +} +function _GNUNET_CRYPTO_mpi_scan_unsigned($result,$data,$size) { + $result = $result|0; + $data = $data|0; + $size = $size|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $log_line = 0, $log_line1 = 0, $rc = 0, $vararg_buffer = 0, $vararg_buffer4 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer4 = sp + 16|0; + $vararg_buffer = sp; + $2 = sp + 36|0; + $0 = $result; + $1 = $data; + HEAP32[$2>>2] = $size; + $3 = $0; + $4 = $1; + $5 = HEAP32[$2>>2]|0; + $6 = (_gcry_mpi_scan($3,5,$4,$5,$2)|0); + $rc = $6; + $7 = (0)!=($6|0); + if (!($7)) { + STACKTOP = sp;return; + } + $log_line = 140; + $8 = HEAP32[234]|0; + $9 = ($8|0)==(-1); + if ($9) { + $10 = $log_line; + $11 = (_GNUNET_get_log_call_status(1,21106,20638,20736,$10)|0); + HEAP32[234] = $11; + } + $12 = (_GNUNET_get_log_skip()|0); + $13 = ($12|0)>(0); + if ($13) { + _GNUNET_log_skip(-1,0); + } else { + $14 = HEAP32[234]|0; + $15 = ($14|0)!=(0); + if ($15) { + $16 = $rc; + $17 = (_gcry_strerror($16)|0); + HEAP32[$vararg_buffer>>2] = 20768; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 20638; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = 140; + $vararg_ptr3 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr3>>2] = $17; + _GNUNET_log_from_nocheck(1,21106,20684,$vararg_buffer); + } + } + $log_line1 = 141; + $18 = HEAP32[235]|0; + $19 = ($18|0)==(-1); + if ($19) { + $20 = $log_line1; + $21 = (_GNUNET_get_log_call_status(1,0,20638,20736,$20)|0); + HEAP32[235] = $21; + } + $22 = (_GNUNET_get_log_skip()|0); + $23 = ($22|0)>(0); + if ($23) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $24 = HEAP32[235]|0; + $25 = ($24|0)!=(0); + if (!($25)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer4>>2] = 20638; + $vararg_ptr7 = ((($vararg_buffer4)) + 4|0); + HEAP32[$vararg_ptr7>>2] = 141; + _GNUNET_log_nocheck(1,61615,$vararg_buffer4); + _GNUNET_abort_(); + // unreachable; +} +function _GNUNET_CRYPTO_random_init() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $log_line = 0, $rc = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer12 = 0, $vararg_buffer15 = 0, $vararg_buffer19 = 0, $vararg_buffer22 = 0, $vararg_buffer5 = 0, $vararg_buffer8 = 0, $vararg_ptr11 = 0, $vararg_ptr18 = 0, $vararg_ptr4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer22 = sp + 56|0; + $vararg_buffer19 = sp + 48|0; + $vararg_buffer15 = sp + 40|0; + $vararg_buffer12 = sp + 32|0; + $vararg_buffer8 = sp + 24|0; + $vararg_buffer5 = sp + 16|0; + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $0 = (_gcry_check_version(20782)|0); + $1 = ($0|0)!=(0|0); + if ($1) { + HEAP32[$vararg_buffer5>>2] = 0; + $11 = (_gcry_control(37,$vararg_buffer5)|0); + $rc = $11; + $12 = ($11|0)!=(0); + if ($12) { + $13 = HEAP32[3963]|0; + $14 = $rc; + $15 = (_gcry_strerror($14)|0); + HEAP32[$vararg_buffer8>>2] = 20935; + $vararg_ptr11 = ((($vararg_buffer8)) + 4|0); + HEAP32[$vararg_ptr11>>2] = $15; + (_fprintf($13,20896,$vararg_buffer8)|0); + } + HEAP32[$vararg_buffer12>>2] = 0; + $16 = (_gcry_control(44,$vararg_buffer12)|0); + $rc = $16; + $17 = ($16|0)!=(0); + if (!($17)) { + HEAP32[$vararg_buffer19>>2] = 0; + (_gcry_control(38,$vararg_buffer19)|0); + HEAP32[$vararg_buffer22>>2] = 0; + (_gcry_control(48,$vararg_buffer22)|0); + $21 = (_time((0|0))|0); + $22 = (_GNUNET_CRYPTO_random_u32(2,-1)|0); + $23 = $21 ^ $22; + _GNUNET_CRYPTO_seed_weak_random($23); + STACKTOP = sp;return; + } + $18 = HEAP32[3963]|0; + $19 = $rc; + $20 = (_gcry_strerror($19)|0); + HEAP32[$vararg_buffer15>>2] = 20950; + $vararg_ptr18 = ((($vararg_buffer15)) + 4|0); + HEAP32[$vararg_ptr18>>2] = $20; + (_fprintf($18,20896,$vararg_buffer15)|0); + HEAP32[$vararg_buffer19>>2] = 0; + (_gcry_control(38,$vararg_buffer19)|0); + HEAP32[$vararg_buffer22>>2] = 0; + (_gcry_control(48,$vararg_buffer22)|0); + $21 = (_time((0|0))|0); + $22 = (_GNUNET_CRYPTO_random_u32(2,-1)|0); + $23 = $21 ^ $22; + _GNUNET_CRYPTO_seed_weak_random($23); + STACKTOP = sp;return; + } + $2 = HEAP32[3963]|0; + HEAP32[$vararg_buffer>>2] = 20782; + (_fprintf($2,20788,$vararg_buffer)|0); + $log_line = 286; + $3 = HEAP32[236]|0; + $4 = ($3|0)==(-1); + if ($4) { + $5 = $log_line; + $6 = (_GNUNET_get_log_call_status(1,0,20854,20870,$5)|0); + HEAP32[236] = $6; + } + $7 = (_GNUNET_get_log_skip()|0); + $8 = ($7|0)>(0); + if ($8) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $9 = HEAP32[236]|0; + $10 = ($9|0)!=(0); + if (!($10)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer1>>2] = 20854; + $vararg_ptr4 = ((($vararg_buffer1)) + 4|0); + HEAP32[$vararg_ptr4>>2] = 286; + _GNUNET_log_nocheck(1,61615,$vararg_buffer1); + _GNUNET_abort_(); + // unreachable; +} +function _GNUNET_CRYPTO_random_u32($mode,$i) { + $mode = $mode|0; + $i = $i|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0.0, $38 = 0.0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $log_line = 0, $log_line1 = 0, $ret = 0, $ul = 0; + var $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer5 = 0, $vararg_ptr1 = 0, $vararg_ptr8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer5 = sp + 16|0; + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $ret = sp + 36|0; + $1 = $mode; + $2 = $i; + $3 = $2; + $4 = ($3>>>0)>(0); + if (!($4)) { + $log_line = 157; + $5 = HEAP32[237]|0; + $6 = ($5|0)==(-1); + if ($6) { + $7 = $log_line; + $8 = (_GNUNET_get_log_call_status(1,0,20854,20970,$7)|0); + HEAP32[237] = $8; + } + $9 = (_GNUNET_get_log_skip()|0); + $10 = ($9|0)>(0); + if ($10) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $11 = HEAP32[237]|0; + $12 = ($11|0)!=(0); + if (!($12)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 20854; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 157; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + } + $13 = $1; + switch ($13|0) { + case 1: { + $14 = HEAP32[17660]|0; + $15 = (($14) + 1)|0; + HEAP32[17660] = $15; + $16 = (($14>>>0) % 256)&-1; + $17 = ($16|0)==(0); + if ($17) { + HEAP32[$vararg_buffer2>>2] = 0; + (_gcry_control(48,$vararg_buffer2)|0); + } + $18 = $2; + $19 = (4294967295 % ($18>>>0))&-1; + $20 = (-1 - ($19))|0; + $ul = $20; + while(1) { + _gcry_randomize($ret,4,1); + $21 = HEAP32[$ret>>2]|0; + $22 = $ul; + $23 = ($21>>>0)>=($22>>>0); + if (!($23)) { + break; + } + } + $24 = HEAP32[$ret>>2]|0; + $25 = $2; + $26 = (($24>>>0) % ($25>>>0))&-1; + $0 = $26; + $55 = $0; + STACKTOP = sp;return ($55|0); + break; + } + case 2: { + $27 = $2; + $28 = (4294967295 % ($27>>>0))&-1; + $29 = (-1 - ($28))|0; + $ul = $29; + while(1) { + _gcry_create_nonce($ret,4); + $30 = HEAP32[$ret>>2]|0; + $31 = $ul; + $32 = ($30>>>0)>=($31>>>0); + if (!($32)) { + break; + } + } + $33 = HEAP32[$ret>>2]|0; + $34 = $2; + $35 = (($33>>>0) % ($34>>>0))&-1; + $0 = $35; + $55 = $0; + STACKTOP = sp;return ($55|0); + break; + } + case 0: { + $36 = $2; + $37 = (+($36>>>0)); + $38 = (+_get_weak_random()); + $39 = $37 * $38; + $40 = (~~(($39))>>>0); + HEAP32[$ret>>2] = $40; + $41 = HEAP32[$ret>>2]|0; + $42 = $2; + $43 = ($41>>>0)>=($42>>>0); + if ($43) { + $44 = $2; + $45 = (($44) - 1)|0; + HEAP32[$ret>>2] = $45; + } + $46 = HEAP32[$ret>>2]|0; + $0 = $46; + $55 = $0; + STACKTOP = sp;return ($55|0); + break; + } + default: { + $log_line1 = 189; + $47 = HEAP32[238]|0; + $48 = ($47|0)==(-1); + if ($48) { + $49 = $log_line1; + $50 = (_GNUNET_get_log_call_status(1,0,20854,20970,$49)|0); + HEAP32[238] = $50; + } + $51 = (_GNUNET_get_log_skip()|0); + $52 = ($51|0)>(0); + if ($52) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $53 = HEAP32[238]|0; + $54 = ($53|0)!=(0); + if (!($54)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer5>>2] = 20854; + $vararg_ptr8 = ((($vararg_buffer5)) + 4|0); + HEAP32[$vararg_ptr8>>2] = 189; + _GNUNET_log_nocheck(1,61615,$vararg_buffer5); + _GNUNET_abort_(); + // unreachable; + } + } + return (0)|0; +} +function _get_weak_random() { + var $0 = 0, $1 = 0.0, $2 = 0.0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (_random()|0); + $1 = (+($0|0)); + $2 = $1 / 2147483647.0; + return (+$2); +} +function _GNUNET_CRYPTO_seed_weak_random($seed) { + $seed = $seed|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $seed; + $1 = $0; + _srandom($1); + STACKTOP = sp;return; +} +function _GNUNET_CRYPTO_random_fini() { + var label = 0, sp = 0; + sp = STACKTOP; + _gcry_set_progress_handler(0,0); + return; +} +function _GNUNET_CRYPTO_rsa_private_key_create($len) { + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $log_line = 0, $log_line1 = 0, $ret = 0, $s_key = 0, $s_keyparam = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer5 = 0, $vararg_ptr4 = 0, $vararg_ptr8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer5 = sp + 16|0; + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $s_key = sp + 36|0; + $s_keyparam = sp + 32|0; + $0 = $len; + $1 = $0; + HEAP32[$vararg_buffer>>2] = $1; + $2 = (_gcry_sexp_build($s_keyparam,0,20995,$vararg_buffer)|0); + $3 = (0)==($2|0); + if (!($3)) { + $log_line = 154; + $4 = HEAP32[239]|0; + $5 = ($4|0)==(-1); + if ($5) { + $6 = $log_line; + $7 = (_GNUNET_get_log_call_status(1,0,21019,21032,$6)|0); + HEAP32[239] = $7; + } + $8 = (_GNUNET_get_log_skip()|0); + $9 = ($8|0)>(0); + if ($9) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $10 = HEAP32[239]|0; + $11 = ($10|0)!=(0); + if (!($11)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer1>>2] = 21019; + $vararg_ptr4 = ((($vararg_buffer1)) + 4|0); + HEAP32[$vararg_ptr4>>2] = 154; + _GNUNET_log_nocheck(1,61615,$vararg_buffer1); + _GNUNET_abort_(); + // unreachable; + } + $12 = HEAP32[$s_keyparam>>2]|0; + $13 = (_gcry_pk_genkey($s_key,$12)|0); + $14 = (0)==($13|0); + if ($14) { + $23 = HEAP32[$s_keyparam>>2]|0; + _gcry_sexp_release($23); + $24 = (_GNUNET_xmalloc_(4,21019,163)|0); + $ret = $24; + $25 = HEAP32[$s_key>>2]|0; + $26 = $ret; + HEAP32[$26>>2] = $25; + $27 = $ret; + STACKTOP = sp;return ($27|0); + } + $log_line1 = 157; + $15 = HEAP32[240]|0; + $16 = ($15|0)==(-1); + if ($16) { + $17 = $log_line1; + $18 = (_GNUNET_get_log_call_status(1,0,21019,21032,$17)|0); + HEAP32[240] = $18; + } + $19 = (_GNUNET_get_log_skip()|0); + $20 = ($19|0)>(0); + if ($20) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $21 = HEAP32[240]|0; + $22 = ($21|0)!=(0); + if (!($22)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer5>>2] = 21019; + $vararg_ptr8 = ((($vararg_buffer5)) + 4|0); + HEAP32[$vararg_ptr8>>2] = 157; + _GNUNET_log_nocheck(1,61615,$vararg_buffer5); + _GNUNET_abort_(); + // unreachable; + return (0)|0; +} +function _GNUNET_CRYPTO_rsa_private_key_free($key) { + $key = $key|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $key; + $1 = $0; + $2 = HEAP32[$1>>2]|0; + _gcry_sexp_release($2); + $3 = $0; + _GNUNET_xfree_($3,21019,178); + STACKTOP = sp;return; +} +function _GNUNET_CRYPTO_rsa_private_key_encode($key,$buffer) { + $key = $key|0; + $buffer = $buffer|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $b = 0, $log_line = 0, $n = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $key; + $1 = $buffer; + $2 = $0; + $3 = HEAP32[$2>>2]|0; + $4 = (_gcry_sexp_sprint($3,0,0,0)|0); + $n = $4; + $5 = $n; + $6 = (_GNUNET_xmalloc_($5,21019,201)|0); + $b = $6; + $7 = $n; + $8 = (($7) - 1)|0; + $9 = $0; + $10 = HEAP32[$9>>2]|0; + $11 = $b; + $12 = $n; + $13 = (_gcry_sexp_sprint($10,0,$11,$12)|0); + $14 = ($8|0)==($13|0); + if ($14) { + $23 = $b; + $24 = $1; + HEAP32[$24>>2] = $23; + $25 = $n; + STACKTOP = sp;return ($25|0); + } + $log_line = 206; + $15 = HEAP32[241]|0; + $16 = ($15|0)==(-1); + if ($16) { + $17 = $log_line; + $18 = (_GNUNET_get_log_call_status(1,0,21019,21069,$17)|0); + HEAP32[241] = $18; + } + $19 = (_GNUNET_get_log_skip()|0); + $20 = ($19|0)>(0); + if ($20) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $21 = HEAP32[241]|0; + $22 = ($21|0)!=(0); + if (!($22)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 21019; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 206; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + return (0)|0; +} +function _GNUNET_CRYPTO_rsa_private_key_decode($buf,$len) { + $buf = $buf|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $key = 0, $log_line = 0, $log_line1 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $1 = $buf; + $2 = $len; + $3 = (_GNUNET_xmalloc_(4,21019,225)|0); + $key = $3; + $4 = $key; + $5 = $1; + $6 = $2; + $7 = (_gcry_sexp_new($4,$5,$6,0)|0); + $8 = (0)!=($7|0); + if ($8) { + $log_line = 233; + $9 = HEAP32[242]|0; + $10 = ($9|0)==(-1); + if ($10) { + $11 = $log_line; + $12 = (_GNUNET_get_log_call_status(2,21106,21019,21111,$11)|0); + HEAP32[242] = $12; + } + $13 = (_GNUNET_get_log_skip()|0); + $14 = ($13|0)>(0); + if ($14) { + _GNUNET_log_skip(-1,0); + } else { + $15 = HEAP32[242]|0; + $16 = ($15|0)!=(0); + if ($16) { + _GNUNET_log_from_nocheck(2,21106,21148,$vararg_buffer); + } + } + $17 = $key; + _GNUNET_xfree_($17,21019,234); + $0 = 0; + $32 = $0; + STACKTOP = sp;return ($32|0); + } + $18 = $key; + $19 = HEAP32[$18>>2]|0; + $20 = (_gcry_pk_testkey($19)|0); + $21 = (0)!=($20|0); + if (!($21)) { + $31 = $key; + $0 = $31; + $32 = $0; + STACKTOP = sp;return ($32|0); + } + $log_line1 = 240; + $22 = HEAP32[243]|0; + $23 = ($22|0)==(-1); + if ($23) { + $24 = $log_line1; + $25 = (_GNUNET_get_log_call_status(2,21106,21019,21111,$24)|0); + HEAP32[243] = $25; + } + $26 = (_GNUNET_get_log_skip()|0); + $27 = ($26|0)>(0); + if ($27) { + _GNUNET_log_skip(-1,0); + } else { + $28 = HEAP32[243]|0; + $29 = ($28|0)!=(0); + if ($29) { + _GNUNET_log_from_nocheck(2,21106,21148,$vararg_buffer1); + } + } + $30 = $key; + _GNUNET_CRYPTO_rsa_private_key_free($30); + $0 = 0; + $32 = $0; + STACKTOP = sp;return ($32|0); +} +function _GNUNET_CRYPTO_rsa_private_key_get_public($priv) { + $priv = $priv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $log_line = 0, $ne = 0, $pub = 0; + var $rc = 0, $result = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $ne = sp + 32|0; + $result = sp + 20|0; + $1 = $priv; + $2 = $1; + $3 = HEAP32[$2>>2]|0; + $4 = (_key_from_sexp_125($ne,$3,37970,39383)|0); + $rc = $4; + $5 = $rc; + $6 = (0)!=($5|0); + if ($6) { + $7 = $1; + $8 = HEAP32[$7>>2]|0; + $9 = (_key_from_sexp_125($ne,$8,37958,39383)|0); + $rc = $9; + } + $10 = $rc; + $11 = (0)!=($10|0); + if ($11) { + $12 = $1; + $13 = HEAP32[$12>>2]|0; + $14 = (_key_from_sexp_125($ne,$13,39342,39383)|0); + $rc = $14; + } + $15 = $rc; + $16 = (0)!=($15|0); + if (!($16)) { + $25 = HEAP32[$ne>>2]|0; + $26 = ((($ne)) + 4|0); + $27 = HEAP32[$26>>2]|0; + HEAP32[$vararg_buffer2>>2] = $25; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = $27; + $28 = (_gcry_sexp_build($result,0,21271,$vararg_buffer2)|0); + $rc = $28; + $29 = HEAP32[$ne>>2]|0; + _gcry_mpi_release($29); + $30 = ((($ne)) + 4|0); + $31 = HEAP32[$30>>2]|0; + _gcry_mpi_release($31); + $32 = (_GNUNET_xmalloc_(4,21019,279)|0); + $pub = $32; + $33 = HEAP32[$result>>2]|0; + $34 = $pub; + HEAP32[$34>>2] = $33; + $35 = $pub; + $0 = $35; + $36 = $0; + STACKTOP = sp;return ($36|0); + } + $log_line = 269; + $17 = HEAP32[244]|0; + $18 = ($17|0)==(-1); + if ($18) { + $19 = $log_line; + $20 = (_GNUNET_get_log_call_status(2,0,21019,21182,$19)|0); + HEAP32[244] = $20; + } + $21 = (_GNUNET_get_log_skip()|0); + $22 = ($21|0)>(0); + if ($22) { + _GNUNET_log_skip(-1,0); + } else { + $23 = HEAP32[244]|0; + $24 = ($23|0)!=(0); + if ($24) { + HEAP32[$vararg_buffer>>2] = 21019; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 269; + _GNUNET_log_nocheck(34,21223,$vararg_buffer); + } + } + $0 = 0; + $36 = $0; + STACKTOP = sp;return ($36|0); +} +function _key_from_sexp_125($array,$sexp,$topname,$elems) { + $array = $array|0; + $sexp = $sexp|0; + $topname = $topname|0; + $elems = $elems|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $idx = 0, $l2 = 0, $list = 0, $s = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $array; + $2 = $sexp; + $3 = $topname; + $4 = $elems; + $5 = $2; + $6 = $3; + $7 = (_gcry_sexp_find_token($5,$6,0)|0); + $list = $7; + $8 = ($7|0)!=(0|0); + if (!($8)) { + $0 = 1; + $64 = $0; + STACKTOP = sp;return ($64|0); + } + $9 = $list; + $10 = (_gcry_sexp_cadr($9)|0); + $l2 = $10; + $11 = $list; + _gcry_sexp_release($11); + $12 = $l2; + $list = $12; + $13 = $list; + $14 = ($13|0)!=(0|0); + if (!($14)) { + $0 = 2; + $64 = $0; + STACKTOP = sp;return ($64|0); + } + $idx = 0; + $15 = $4; + $s = $15; + while(1) { + $16 = $s; + $17 = HEAP8[$16>>0]|0; + $18 = ($17<<24>>24)!=(0); + $19 = $list; + if (!($18)) { + label = 18; + break; + } + $20 = $s; + $21 = (_gcry_sexp_find_token($19,$20,1)|0); + $l2 = $21; + $22 = ($21|0)!=(0|0); + if (!($22)) { + label = 8; + break; + } + $36 = $l2; + $37 = (_gcry_sexp_nth_mpi($36,1,5)|0); + $38 = $idx; + $39 = $1; + $40 = (($39) + ($38<<2)|0); + HEAP32[$40>>2] = $37; + $41 = $l2; + _gcry_sexp_release($41); + $42 = $idx; + $43 = $1; + $44 = (($43) + ($42<<2)|0); + $45 = HEAP32[$44>>2]|0; + $46 = ($45|0)!=(0|0); + if (!($46)) { + label = 13; + break; + } + $60 = $s; + $61 = ((($60)) + 1|0); + $s = $61; + $62 = $idx; + $63 = (($62) + 1)|0; + $idx = $63; + } + if ((label|0) == 8) { + $i = 0; + while(1) { + $23 = $i; + $24 = $idx; + $25 = ($23>>>0)<($24>>>0); + if (!($25)) { + break; + } + $26 = $i; + $27 = $1; + $28 = (($27) + ($26<<2)|0); + $29 = HEAP32[$28>>2]|0; + _gcry_free($29); + $30 = $i; + $31 = $1; + $32 = (($31) + ($30<<2)|0); + HEAP32[$32>>2] = 0; + $33 = $i; + $34 = (($33) + 1)|0; + $i = $34; + } + $35 = $list; + _gcry_sexp_release($35); + $0 = 3; + $64 = $0; + STACKTOP = sp;return ($64|0); + } + else if ((label|0) == 13) { + $i = 0; + while(1) { + $47 = $i; + $48 = $idx; + $49 = ($47>>>0)<($48>>>0); + if (!($49)) { + break; + } + $50 = $i; + $51 = $1; + $52 = (($51) + ($50<<2)|0); + $53 = HEAP32[$52>>2]|0; + _gcry_free($53); + $54 = $i; + $55 = $1; + $56 = (($55) + ($54<<2)|0); + HEAP32[$56>>2] = 0; + $57 = $i; + $58 = (($57) + 1)|0; + $i = $58; + } + $59 = $list; + _gcry_sexp_release($59); + $0 = 4; + $64 = $0; + STACKTOP = sp;return ($64|0); + } + else if ((label|0) == 18) { + _gcry_sexp_release($19); + $0 = 0; + $64 = $0; + STACKTOP = sp;return ($64|0); + } + return (0)|0; +} +function _GNUNET_CRYPTO_rsa_public_key_free($key) { + $key = $key|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $key; + $1 = $0; + $2 = HEAP32[$1>>2]|0; + _gcry_sexp_release($2); + $3 = $0; + _GNUNET_xfree_($3,21019,294); + STACKTOP = sp;return; +} +function _GNUNET_CRYPTO_rsa_public_key_encode($key,$buffer) { + $key = $key|0; + $buffer = $buffer|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $b = 0, $log_line = 0, $n = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $key; + $1 = $buffer; + $2 = $0; + $3 = HEAP32[$2>>2]|0; + $4 = (_gcry_sexp_sprint($3,3,0,0)|0); + $n = $4; + $5 = $n; + $6 = (_GNUNET_xmalloc_($5,21019,317)|0); + $b = $6; + $7 = $n; + $8 = (($7) - 1)|0; + $9 = $0; + $10 = HEAP32[$9>>2]|0; + $11 = $b; + $12 = $n; + $13 = (_gcry_sexp_sprint($10,3,$11,$12)|0); + $14 = ($8|0)==($13|0); + if ($14) { + $23 = $b; + $24 = $1; + HEAP32[$24>>2] = $23; + $25 = $n; + STACKTOP = sp;return ($25|0); + } + $log_line = 322; + $15 = HEAP32[245]|0; + $16 = ($15|0)==(-1); + if ($16) { + $17 = $log_line; + $18 = (_GNUNET_get_log_call_status(1,0,21019,21301,$17)|0); + HEAP32[245] = $18; + } + $19 = (_GNUNET_get_log_skip()|0); + $20 = ($19|0)>(0); + if ($20) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $21 = HEAP32[245]|0; + $22 = ($21|0)!=(0); + if (!($22)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 21019; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 322; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + return (0)|0; +} +function _GNUNET_CRYPTO_rsa_public_key_hash($key,$hc) { + $key = $key|0; + $hc = $hc|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $buf = 0, $buf_size = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $buf = sp + 4|0; + $0 = $key; + $1 = $hc; + $2 = $0; + $3 = (_GNUNET_CRYPTO_rsa_public_key_encode($2,$buf)|0); + $buf_size = $3; + $4 = HEAP32[$buf>>2]|0; + $5 = $buf_size; + $6 = $1; + _GNUNET_CRYPTO_hash($4,$5,$6); + $7 = HEAP32[$buf>>2]|0; + _GNUNET_xfree_($7,21019,346); + STACKTOP = sp;return; +} +function _GNUNET_CRYPTO_rsa_public_key_decode($buf,$len) { + $buf = $buf|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $key = 0, $log_line = 0, $log_line1 = 0, $n = 0, $ret = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $n = sp + 28|0; + $1 = $buf; + $2 = $len; + $3 = (_GNUNET_xmalloc_(4,21019,366)|0); + $key = $3; + $4 = $key; + $5 = $1; + $6 = $2; + $7 = (_gcry_sexp_new($4,$5,$6,0)|0); + $8 = (0)!=($7|0); + if ($8) { + $log_line = 373; + $9 = HEAP32[246]|0; + $10 = ($9|0)==(-1); + if ($10) { + $11 = $log_line; + $12 = (_GNUNET_get_log_call_status(2,0,21019,21337,$11)|0); + HEAP32[246] = $12; + } + $13 = (_GNUNET_get_log_skip()|0); + $14 = ($13|0)>(0); + if ($14) { + _GNUNET_log_skip(-1,0); + } else { + $15 = HEAP32[246]|0; + $16 = ($15|0)!=(0); + if ($16) { + HEAP32[$vararg_buffer>>2] = 21019; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 373; + _GNUNET_log_nocheck(34,21223,$vararg_buffer); + } + } + $17 = $key; + _GNUNET_xfree_($17,21019,374); + $0 = 0; + $41 = $0; + STACKTOP = sp;return ($41|0); + } + $18 = $key; + $19 = HEAP32[$18>>2]|0; + $20 = (_key_from_sexp_125($n,$19,37970,39397)|0); + $ret = $20; + $21 = $ret; + $22 = (0)!=($21|0); + if ($22) { + $23 = $key; + $24 = HEAP32[$23>>2]|0; + $25 = (_key_from_sexp_125($n,$24,39342,39397)|0); + $ret = $25; + } + $26 = $ret; + $27 = (0)!=($26|0); + if (!($27)) { + $39 = HEAP32[$n>>2]|0; + _gcry_mpi_release($39); + $40 = $key; + $0 = $40; + $41 = $0; + STACKTOP = sp;return ($41|0); + } + $log_line1 = 384; + $28 = HEAP32[247]|0; + $29 = ($28|0)==(-1); + if ($29) { + $30 = $log_line1; + $31 = (_GNUNET_get_log_call_status(1,0,21019,21337,$30)|0); + HEAP32[247] = $31; + } + $32 = (_GNUNET_get_log_skip()|0); + $33 = ($32|0)>(0); + if ($33) { + _GNUNET_log_skip(-1,0); + } else { + $34 = HEAP32[247]|0; + $35 = ($34|0)!=(0); + if ($35) { + HEAP32[$vararg_buffer2>>2] = 21019; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = 384; + _GNUNET_log_nocheck(1,61615,$vararg_buffer2); + } + } + $36 = $key; + $37 = HEAP32[$36>>2]|0; + _gcry_sexp_release($37); + $38 = $key; + _GNUNET_xfree_($38,21019,386); + $0 = 0; + $41 = $0; + STACKTOP = sp;return ($41|0); +} +function _GNUNET_CRYPTO_rsa_blinding_key_create($len) { + $len = $len|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $blind = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $len; + $1 = (_GNUNET_xmalloc_(4,21019,405)|0); + $blind = $1; + $2 = $0; + $3 = (_gcry_mpi_new($2)|0); + $4 = $blind; + HEAP32[$4>>2] = $3; + $5 = $blind; + $6 = HEAP32[$5>>2]|0; + $7 = $0; + _gcry_mpi_randomize($6,$7,1); + $8 = $blind; + STACKTOP = sp;return ($8|0); +} +function _GNUNET_CRYPTO_rsa_signature_encode($sig,$buffer) { + $sig = $sig|0; + $buffer = $buffer|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $b = 0, $log_line = 0, $n = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $sig; + $1 = $buffer; + $2 = $0; + $3 = HEAP32[$2>>2]|0; + $4 = (_gcry_sexp_sprint($3,3,0,0)|0); + $n = $4; + $5 = $n; + $6 = (_GNUNET_xmalloc_($5,21019,825)|0); + $b = $6; + $7 = $n; + $8 = (($7) - 1)|0; + $9 = $0; + $10 = HEAP32[$9>>2]|0; + $11 = $b; + $12 = $n; + $13 = (_gcry_sexp_sprint($10,3,$11,$12)|0); + $14 = ($8|0)==($13|0); + if ($14) { + $23 = $b; + $24 = $1; + HEAP32[$24>>2] = $23; + $25 = $n; + STACKTOP = sp;return ($25|0); + } + $log_line = 830; + $15 = HEAP32[248]|0; + $16 = ($15|0)==(-1); + if ($16) { + $17 = $log_line; + $18 = (_GNUNET_get_log_call_status(1,0,21019,21373,$17)|0); + HEAP32[248] = $18; + } + $19 = (_GNUNET_get_log_skip()|0); + $20 = ($19|0)>(0); + if ($20) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $21 = HEAP32[248]|0; + $22 = ($21|0)!=(0); + if (!($22)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 21019; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 830; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + return (0)|0; +} +function _GNUNET_CRYPTO_rsa_blinding_key_free($bkey) { + $bkey = $bkey|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $bkey; + $1 = $0; + $2 = HEAP32[$1>>2]|0; + _gcry_mpi_release($2); + $3 = $0; + _GNUNET_xfree_($3,21019,564); + STACKTOP = sp;return; +} +function _GNUNET_CRYPTO_rsa_blinding_key_encode($bkey,$buffer) { + $bkey = $bkey|0; + $buffer = $buffer|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $b = 0, $log_line = 0, $n = 0, $rsize = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $n = sp + 20|0; + $rsize = sp + 12|0; + $0 = $bkey; + $1 = $buffer; + $2 = $0; + $3 = HEAP32[$2>>2]|0; + (_gcry_mpi_print(5,0,0,$n,$3)|0); + $4 = HEAP32[$n>>2]|0; + $5 = (_GNUNET_xmalloc_($4,21019,589)|0); + $b = $5; + $6 = $b; + $7 = HEAP32[$n>>2]|0; + $8 = $0; + $9 = HEAP32[$8>>2]|0; + $10 = (_gcry_mpi_print(5,$6,$7,$rsize,$9)|0); + $11 = (0)==($10|0); + if ($11) { + $20 = $b; + $21 = $1; + HEAP32[$21>>2] = $20; + $22 = HEAP32[$n>>2]|0; + STACKTOP = sp;return ($22|0); + } + $log_line = 595; + $12 = HEAP32[249]|0; + $13 = ($12|0)==(-1); + if ($13) { + $14 = $log_line; + $15 = (_GNUNET_get_log_call_status(1,0,21019,21408,$14)|0); + HEAP32[249] = $15; + } + $16 = (_GNUNET_get_log_skip()|0); + $17 = ($16|0)>(0); + if ($17) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $18 = HEAP32[249]|0; + $19 = ($18|0)!=(0); + if (!($19)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 21019; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 595; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + return (0)|0; +} +function _GNUNET_CRYPTO_rsa_blinding_key_decode($buf,$len) { + $buf = $buf|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $bkey = 0, $log_line = 0, $rsize = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $rsize = sp + 12|0; + $1 = $buf; + $2 = $len; + $3 = (_GNUNET_xmalloc_(4,21019,616)|0); + $bkey = $3; + $4 = $bkey; + $5 = $1; + $6 = $2; + $7 = (_gcry_mpi_scan($4,5,$5,$6,$rsize)|0); + $8 = (0)!=($7|0); + if (!($8)) { + $18 = $bkey; + $0 = $18; + $19 = $0; + STACKTOP = sp;return ($19|0); + } + $log_line = 624; + $9 = HEAP32[250]|0; + $10 = ($9|0)==(-1); + if ($10) { + $11 = $log_line; + $12 = (_GNUNET_get_log_call_status(2,0,21019,21446,$11)|0); + HEAP32[250] = $12; + } + $13 = (_GNUNET_get_log_skip()|0); + $14 = ($13|0)>(0); + if ($14) { + _GNUNET_log_skip(-1,0); + } else { + $15 = HEAP32[250]|0; + $16 = ($15|0)!=(0); + if ($16) { + HEAP32[$vararg_buffer>>2] = 21019; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 624; + _GNUNET_log_nocheck(34,21223,$vararg_buffer); + } + } + $17 = $bkey; + _GNUNET_xfree_($17,21019,625); + $0 = 0; + $19 = $0; + STACKTOP = sp;return ($19|0); +} +function _GNUNET_CRYPTO_rsa_blind($hash,$bkey,$pkey,$buffer) { + $hash = $hash|0; + $bkey = $bkey|0; + $pkey = $pkey|0; + $buffer = $buffer|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $7 = 0, $8 = 0, $9 = 0, $b = 0, $data = 0, $data_r_e = 0, $log_line = 0, $log_line1 = 0, $n = 0, $ne = 0, $r_e = 0, $rc = 0, $ret = 0, $rsize = 0, $vararg_buffer = 0; + var $vararg_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $data = sp + 64|0; + $ne = sp + 56|0; + $rsize = sp + 40|0; + $n = sp + 36|0; + $1 = $hash; + $2 = $bkey; + $3 = $pkey; + $4 = $buffer; + $5 = $3; + $6 = HEAP32[$5>>2]|0; + $7 = (_key_from_sexp_125($ne,$6,37970,39383)|0); + $ret = $7; + $8 = $ret; + $9 = (0)!=($8|0); + if ($9) { + $10 = $3; + $11 = HEAP32[$10>>2]|0; + $12 = (_key_from_sexp_125($ne,$11,39342,39383)|0); + $ret = $12; + } + $13 = $ret; + $14 = (0)!=($13|0); + if ($14) { + $log_line = 662; + $15 = HEAP32[251]|0; + $16 = ($15|0)==(-1); + if ($16) { + $17 = $log_line; + $18 = (_GNUNET_get_log_call_status(1,0,21019,21484,$17)|0); + HEAP32[251] = $18; + } + $19 = (_GNUNET_get_log_skip()|0); + $20 = ($19|0)>(0); + if ($20) { + _GNUNET_log_skip(-1,0); + } else { + $21 = HEAP32[251]|0; + $22 = ($21|0)!=(0); + if ($22) { + HEAP32[$vararg_buffer>>2] = 21019; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 662; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + } + } + $23 = $4; + HEAP32[$23>>2] = 0; + $0 = 0; + $67 = $0; + STACKTOP = sp;return ($67|0); + } + $24 = $1; + $25 = (_gcry_mpi_scan($data,5,$24,64,$rsize)|0); + $rc = $25; + $26 = (0)!=($25|0); + if (!($26)) { + $39 = (_gcry_mpi_new(0)|0); + $r_e = $39; + $40 = $r_e; + $41 = $2; + $42 = HEAP32[$41>>2]|0; + $43 = ((($ne)) + 4|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$ne>>2]|0; + _gcry_mpi_powm($40,$42,$44,$45); + $46 = (_gcry_mpi_new(0)|0); + $data_r_e = $46; + $47 = $data_r_e; + $48 = HEAP32[$data>>2]|0; + $49 = $r_e; + $50 = HEAP32[$ne>>2]|0; + _gcry_mpi_mulm($47,$48,$49,$50); + $51 = HEAP32[$data>>2]|0; + _gcry_mpi_release($51); + $52 = HEAP32[$ne>>2]|0; + _gcry_mpi_release($52); + $53 = ((($ne)) + 4|0); + $54 = HEAP32[$53>>2]|0; + _gcry_mpi_release($54); + $55 = $r_e; + _gcry_mpi_release($55); + $56 = $data_r_e; + (_gcry_mpi_print(5,0,0,$n,$56)|0); + $57 = HEAP32[$n>>2]|0; + $58 = (_GNUNET_xmalloc_($57,21019,698)|0); + $b = $58; + $59 = $b; + $60 = HEAP32[$n>>2]|0; + $61 = $data_r_e; + $62 = (_gcry_mpi_print(5,$59,$60,$rsize,$61)|0); + $rc = $62; + $63 = $data_r_e; + _gcry_mpi_release($63); + $64 = $b; + $65 = $4; + HEAP32[$65>>2] = $64; + $66 = HEAP32[$n>>2]|0; + $0 = $66; + $67 = $0; + STACKTOP = sp;return ($67|0); + } + $log_line1 = 672; + $27 = HEAP32[252]|0; + $28 = ($27|0)==(-1); + if ($28) { + $29 = $log_line1; + $30 = (_GNUNET_get_log_call_status(1,0,21019,21484,$29)|0); + HEAP32[252] = $30; + } + $31 = (_GNUNET_get_log_skip()|0); + $32 = ($31|0)>(0); + if ($32) { + _GNUNET_log_skip(-1,0); + } else { + $33 = HEAP32[252]|0; + $34 = ($33|0)!=(0); + if ($34) { + HEAP32[$vararg_buffer2>>2] = 21019; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = 672; + _GNUNET_log_nocheck(1,61615,$vararg_buffer2); + } + } + $35 = HEAP32[$ne>>2]|0; + _gcry_mpi_release($35); + $36 = ((($ne)) + 4|0); + $37 = HEAP32[$36>>2]|0; + _gcry_mpi_release($37); + $38 = $4; + HEAP32[$38>>2] = 0; + $0 = 0; + $67 = $0; + STACKTOP = sp;return ($67|0); +} +function _GNUNET_CRYPTO_rsa_sign($key,$msg,$msg_len) { + $key = $key|0; + $msg = $msg|0; + $msg_len = $msg_len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $data = 0, $log_line = 0, $log_line1 = 0, $public_key = 0, $result = 0, $sig = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $result = sp + 28|0; + $1 = $key; + $2 = $msg; + $3 = $msg_len; + $4 = $2; + $5 = $3; + $6 = (_data_to_sexp($4,$5)|0); + $data = $6; + $7 = $data; + $8 = $1; + $9 = HEAP32[$8>>2]|0; + $10 = (_gcry_pk_sign($result,$7,$9)|0); + $11 = (0)!=($10|0); + if ($11) { + $log_line = 767; + $12 = HEAP32[255]|0; + $13 = ($12|0)==(-1); + if ($13) { + $14 = $log_line; + $15 = (_GNUNET_get_log_call_status(1,0,21019,21551,$14)|0); + HEAP32[255] = $15; + } + $16 = (_GNUNET_get_log_skip()|0); + $17 = ($16|0)>(0); + if ($17) { + _GNUNET_log_skip(-1,0); + } else { + $18 = HEAP32[255]|0; + $19 = ($18|0)!=(0); + if ($19) { + HEAP32[$vararg_buffer>>2] = 21019; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 767; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + } + } + $0 = 0; + $45 = $0; + STACKTOP = sp;return ($45|0); + } + $20 = $1; + $21 = (_GNUNET_CRYPTO_rsa_private_key_get_public($20)|0); + $public_key = $21; + $22 = HEAP32[$result>>2]|0; + $23 = $data; + $24 = $public_key; + $25 = HEAP32[$24>>2]|0; + $26 = (_gcry_pk_verify($22,$23,$25)|0); + $27 = (0)!=($26|0); + if (!($27)) { + $39 = $public_key; + _GNUNET_CRYPTO_rsa_public_key_free($39); + $40 = $data; + _gcry_sexp_release($40); + $41 = (_GNUNET_xmalloc_(4,21019,788)|0); + $sig = $41; + $42 = HEAP32[$result>>2]|0; + $43 = $sig; + HEAP32[$43>>2] = $42; + $44 = $sig; + $0 = $44; + $45 = $0; + STACKTOP = sp;return ($45|0); + } + $log_line1 = 778; + $28 = HEAP32[256]|0; + $29 = ($28|0)==(-1); + if ($29) { + $30 = $log_line1; + $31 = (_GNUNET_get_log_call_status(1,0,21019,21551,$30)|0); + HEAP32[256] = $31; + } + $32 = (_GNUNET_get_log_skip()|0); + $33 = ($32|0)>(0); + if ($33) { + _GNUNET_log_skip(-1,0); + } else { + $34 = HEAP32[256]|0; + $35 = ($34|0)!=(0); + if ($35) { + HEAP32[$vararg_buffer2>>2] = 21019; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = 778; + _GNUNET_log_nocheck(1,61615,$vararg_buffer2); + } + } + $36 = $public_key; + _GNUNET_CRYPTO_rsa_public_key_free($36); + $37 = $data; + _gcry_sexp_release($37); + $38 = HEAP32[$result>>2]|0; + _gcry_sexp_release($38); + $0 = 0; + $45 = $0; + STACKTOP = sp;return ($45|0); +} +function _data_to_sexp($ptr,$size) { + $ptr = $ptr|0; + $size = $size|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $data = 0, $log_line = 0, $log_line1 = 0, $value = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer5 = 0, $vararg_ptr1 = 0, $vararg_ptr8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer5 = sp + 16|0; + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $value = sp + 36|0; + $data = sp + 32|0; + $0 = $ptr; + $1 = $size; + HEAP32[$value>>2] = 0; + HEAP32[$data>>2] = 0; + $2 = $0; + $3 = $1; + $4 = (_gcry_mpi_scan($value,5,$2,$3,0)|0); + $5 = (0)==($4|0); + if (!($5)) { + $log_line = 731; + $6 = HEAP32[253]|0; + $7 = ($6|0)==(-1); + if ($7) { + $8 = $log_line; + $9 = (_GNUNET_get_log_call_status(1,0,21019,21508,$8)|0); + HEAP32[253] = $9; + } + $10 = (_GNUNET_get_log_skip()|0); + $11 = ($10|0)>(0); + if ($11) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $12 = HEAP32[253]|0; + $13 = ($12|0)!=(0); + if (!($13)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 21019; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 731; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + } + $14 = HEAP32[$value>>2]|0; + HEAP32[$vararg_buffer2>>2] = $14; + $15 = (_gcry_sexp_build($data,0,21521,$vararg_buffer2)|0); + $16 = (0)==($15|0); + if ($16) { + $25 = HEAP32[$value>>2]|0; + _gcry_mpi_release($25); + $26 = HEAP32[$data>>2]|0; + STACKTOP = sp;return ($26|0); + } + $log_line1 = 736; + $17 = HEAP32[254]|0; + $18 = ($17|0)==(-1); + if ($18) { + $19 = $log_line1; + $20 = (_GNUNET_get_log_call_status(1,0,21019,21508,$19)|0); + HEAP32[254] = $20; + } + $21 = (_GNUNET_get_log_skip()|0); + $22 = ($21|0)>(0); + if ($22) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $23 = HEAP32[254]|0; + $24 = ($23|0)!=(0); + if (!($24)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer5>>2] = 21019; + $vararg_ptr8 = ((($vararg_buffer5)) + 4|0); + HEAP32[$vararg_ptr8>>2] = 736; + _GNUNET_log_nocheck(1,61615,$vararg_buffer5); + _GNUNET_abort_(); + // unreachable; + return (0)|0; +} +function _GNUNET_CRYPTO_rsa_signature_free($sig) { + $sig = $sig|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $sig; + $1 = $0; + $2 = HEAP32[$1>>2]|0; + _gcry_sexp_release($2); + $3 = $0; + _GNUNET_xfree_($3,21019,803); + STACKTOP = sp;return; +} +function _GNUNET_CRYPTO_rsa_signature_decode($buf,$len) { + $buf = $buf|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $log_line = 0, $log_line1 = 0, $ret = 0, $s = 0, $sig = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $s = sp + 24|0; + $1 = $buf; + $2 = $len; + $3 = (_GNUNET_xmalloc_(4,21019,852)|0); + $sig = $3; + $4 = $sig; + $5 = $1; + $6 = $2; + $7 = (_gcry_sexp_new($4,$5,$6,0)|0); + $8 = (0)!=($7|0); + if ($8) { + $log_line = 859; + $9 = HEAP32[257]|0; + $10 = ($9|0)==(-1); + if ($10) { + $11 = $log_line; + $12 = (_GNUNET_get_log_call_status(2,0,21019,21574,$11)|0); + HEAP32[257] = $12; + } + $13 = (_GNUNET_get_log_skip()|0); + $14 = ($13|0)>(0); + if ($14) { + _GNUNET_log_skip(-1,0); + } else { + $15 = HEAP32[257]|0; + $16 = ($15|0)!=(0); + if ($16) { + HEAP32[$vararg_buffer>>2] = 21019; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 859; + _GNUNET_log_nocheck(34,21223,$vararg_buffer); + } + } + $17 = $sig; + _GNUNET_xfree_($17,21019,860); + $0 = 0; + $41 = $0; + STACKTOP = sp;return ($41|0); + } + $18 = $sig; + $19 = HEAP32[$18>>2]|0; + $20 = (_key_from_sexp_125($s,$19,37820,39395)|0); + $ret = $20; + $21 = $ret; + $22 = (0)!=($21|0); + if ($22) { + $23 = $sig; + $24 = HEAP32[$23>>2]|0; + $25 = (_key_from_sexp_125($s,$24,39342,39395)|0); + $ret = $25; + } + $26 = $ret; + $27 = (0)!=($26|0); + if (!($27)) { + $39 = HEAP32[$s>>2]|0; + _gcry_mpi_release($39); + $40 = $sig; + $0 = $40; + $41 = $0; + STACKTOP = sp;return ($41|0); + } + $log_line1 = 870; + $28 = HEAP32[258]|0; + $29 = ($28|0)==(-1); + if ($29) { + $30 = $log_line1; + $31 = (_GNUNET_get_log_call_status(2,0,21019,21574,$30)|0); + HEAP32[258] = $31; + } + $32 = (_GNUNET_get_log_skip()|0); + $33 = ($32|0)>(0); + if ($33) { + _GNUNET_log_skip(-1,0); + } else { + $34 = HEAP32[258]|0; + $35 = ($34|0)!=(0); + if ($35) { + HEAP32[$vararg_buffer2>>2] = 21019; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = 870; + _GNUNET_log_nocheck(34,21223,$vararg_buffer2); + } + } + $36 = $sig; + $37 = HEAP32[$36>>2]|0; + _gcry_sexp_release($37); + $38 = $sig; + _GNUNET_xfree_($38,21019,872); + $0 = 0; + $41 = $0; + STACKTOP = sp;return ($41|0); +} +function _GNUNET_CRYPTO_rsa_unblind($sig,$bkey,$pkey) { + $sig = $sig|0; + $bkey = $bkey|0; + $pkey = $pkey|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $9 = 0, $log_line = 0, $log_line1 = 0, $log_line2 = 0, $log_line3 = 0, $n = 0, $r_inv = 0, $ret = 0, $s = 0, $sret = 0, $ubsig = 0, $vararg_buffer = 0, $vararg_buffer10 = 0, $vararg_buffer13 = 0, $vararg_buffer2 = 0, $vararg_buffer6 = 0, $vararg_ptr1 = 0, $vararg_ptr16 = 0; + var $vararg_ptr5 = 0, $vararg_ptr9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer13 = sp + 32|0; + $vararg_buffer10 = sp + 24|0; + $vararg_buffer6 = sp + 16|0; + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $n = sp + 76|0; + $s = sp + 72|0; + $1 = $sig; + $2 = $bkey; + $3 = $pkey; + $4 = $3; + $5 = HEAP32[$4>>2]|0; + $6 = (_key_from_sexp_125($n,$5,37970,39397)|0); + $ret = $6; + $7 = $ret; + $8 = (0)!=($7|0); + if ($8) { + $9 = $3; + $10 = HEAP32[$9>>2]|0; + $11 = (_key_from_sexp_125($n,$10,39342,39397)|0); + $ret = $11; + } + $12 = $ret; + $13 = (0)!=($12|0); + if ($13) { + $log_line = 932; + $14 = HEAP32[259]|0; + $15 = ($14|0)==(-1); + if ($15) { + $16 = $log_line; + $17 = (_GNUNET_get_log_call_status(2,0,21019,21609,$16)|0); + HEAP32[259] = $17; + } + $18 = (_GNUNET_get_log_skip()|0); + $19 = ($18|0)>(0); + if ($19) { + _GNUNET_log_skip(-1,0); + } else { + $20 = HEAP32[259]|0; + $21 = ($20|0)!=(0); + if ($21) { + HEAP32[$vararg_buffer>>2] = 21019; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 932; + _GNUNET_log_nocheck(34,21223,$vararg_buffer); + } + } + $0 = 0; + $82 = $0; + STACKTOP = sp;return ($82|0); + } + $22 = $1; + $23 = HEAP32[$22>>2]|0; + $24 = (_key_from_sexp_125($s,$23,37820,39395)|0); + $ret = $24; + $25 = $ret; + $26 = (0)!=($25|0); + if ($26) { + $27 = $1; + $28 = HEAP32[$27>>2]|0; + $29 = (_key_from_sexp_125($s,$28,39342,39395)|0); + $ret = $29; + } + $30 = $ret; + $31 = (0)!=($30|0); + if ($31) { + $32 = HEAP32[$n>>2]|0; + _gcry_mpi_release($32); + $log_line1 = 941; + $33 = HEAP32[260]|0; + $34 = ($33|0)==(-1); + if ($34) { + $35 = $log_line1; + $36 = (_GNUNET_get_log_call_status(2,0,21019,21609,$35)|0); + HEAP32[260] = $36; + } + $37 = (_GNUNET_get_log_skip()|0); + $38 = ($37|0)>(0); + if ($38) { + _GNUNET_log_skip(-1,0); + } else { + $39 = HEAP32[260]|0; + $40 = ($39|0)!=(0); + if ($40) { + HEAP32[$vararg_buffer2>>2] = 21019; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = 941; + _GNUNET_log_nocheck(34,21223,$vararg_buffer2); + } + } + $0 = 0; + $82 = $0; + STACKTOP = sp;return ($82|0); + } + $41 = (_gcry_mpi_new(0)|0); + $r_inv = $41; + $42 = $r_inv; + $43 = $2; + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$n>>2]|0; + $46 = (_gcry_mpi_invm($42,$44,$45)|0); + $47 = (1)!=($46|0); + if ($47) { + $log_line2 = 950; + $48 = HEAP32[261]|0; + $49 = ($48|0)==(-1); + if ($49) { + $50 = $log_line2; + $51 = (_GNUNET_get_log_call_status(2,0,21019,21609,$50)|0); + HEAP32[261] = $51; + } + $52 = (_GNUNET_get_log_skip()|0); + $53 = ($52|0)>(0); + if ($53) { + _GNUNET_log_skip(-1,0); + } else { + $54 = HEAP32[261]|0; + $55 = ($54|0)!=(0); + if ($55) { + HEAP32[$vararg_buffer6>>2] = 21019; + $vararg_ptr9 = ((($vararg_buffer6)) + 4|0); + HEAP32[$vararg_ptr9>>2] = 950; + _GNUNET_log_nocheck(34,21223,$vararg_buffer6); + } + } + $56 = HEAP32[$n>>2]|0; + _gcry_mpi_release($56); + $57 = $r_inv; + _gcry_mpi_release($57); + $58 = HEAP32[$s>>2]|0; + _gcry_mpi_release($58); + $0 = 0; + $82 = $0; + STACKTOP = sp;return ($82|0); + } + $59 = (_gcry_mpi_new(0)|0); + $ubsig = $59; + $60 = $ubsig; + $61 = HEAP32[$s>>2]|0; + $62 = $r_inv; + $63 = HEAP32[$n>>2]|0; + _gcry_mpi_mulm($60,$61,$62,$63); + $64 = HEAP32[$n>>2]|0; + _gcry_mpi_release($64); + $65 = $r_inv; + _gcry_mpi_release($65); + $66 = HEAP32[$s>>2]|0; + _gcry_mpi_release($66); + $67 = (_GNUNET_xmalloc_(4,21019,962)|0); + $sret = $67; + $68 = $sret; + $69 = $ubsig; + HEAP32[$vararg_buffer10>>2] = $69; + $70 = (_gcry_sexp_build($68,0,21635,$vararg_buffer10)|0); + $71 = (0)==($70|0); + if ($71) { + $80 = $ubsig; + _gcry_mpi_release($80); + $81 = $sret; + $0 = $81; + $82 = $0; + STACKTOP = sp;return ($82|0); + } + $log_line3 = 967; + $72 = HEAP32[262]|0; + $73 = ($72|0)==(-1); + if ($73) { + $74 = $log_line3; + $75 = (_GNUNET_get_log_call_status(1,0,21019,21609,$74)|0); + HEAP32[262] = $75; + } + $76 = (_GNUNET_get_log_skip()|0); + $77 = ($76|0)>(0); + if ($77) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $78 = HEAP32[262]|0; + $79 = ($78|0)!=(0); + if (!($79)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer13>>2] = 21019; + $vararg_ptr16 = ((($vararg_buffer13)) + 4|0); + HEAP32[$vararg_ptr16>>2] = 967; + _GNUNET_log_nocheck(1,61615,$vararg_buffer13); + _GNUNET_abort_(); + // unreachable; + return (0)|0; +} +function _GNUNET_CRYPTO_rsa_verify($hash,$sig,$public_key) { + $hash = $hash|0; + $sig = $sig|0; + $public_key = $public_key|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $data = 0, $log_line = 0, $rc = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $1 = $hash; + $2 = $sig; + $3 = $public_key; + $4 = $1; + $5 = (_data_to_sexp($4,64)|0); + $data = $5; + $6 = $2; + $7 = HEAP32[$6>>2]|0; + $8 = $data; + $9 = $3; + $10 = HEAP32[$9>>2]|0; + $11 = (_gcry_pk_verify($7,$8,$10)|0); + $rc = $11; + $12 = $data; + _gcry_sexp_release($12); + $13 = $rc; + $14 = (0)!=($13|0); + if (!($14)) { + $0 = 1; + $25 = $0; + STACKTOP = sp;return ($25|0); + } + $log_line = 1002; + $15 = HEAP32[263]|0; + $16 = ($15|0)==(-1); + if ($16) { + $17 = $log_line; + $18 = (_GNUNET_get_log_call_status(2,21106,21019,21658,$17)|0); + HEAP32[263] = $18; + } + $19 = (_GNUNET_get_log_skip()|0); + $20 = ($19|0)>(0); + if ($20) { + _GNUNET_log_skip(-1,0); + } else { + $21 = HEAP32[263]|0; + $22 = ($21|0)!=(0); + if ($22) { + $23 = $rc; + $24 = (_gcry_strerror($23)|0); + HEAP32[$vararg_buffer>>2] = 21019; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 1001; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $24; + _GNUNET_log_from_nocheck(2,21106,21683,$vararg_buffer); + } + } + $0 = -1; + $25 = $0; + STACKTOP = sp;return ($25|0); +} +function _GNUNET_STRINGS_relative_time_to_string($delta,$do_round) { + $delta = $delta|0; + $do_round = $do_round|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; + var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; + var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; + var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; + var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $dval = 0, $or$cond = 0, $or$cond3 = 0, $or$cond5 = 0, $or$cond7 = 0, $or$cond9 = 0, $unit = 0, $vararg_buffer = 0, $vararg_ptr10 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp + 16|0; + $dval = sp + 8|0; + $2 = sp; + $1 = $do_round; + $unit = 21804; + $3 = $delta; + $4 = $3; + $5 = HEAP32[$4>>2]|0; + $6 = (($3) + 4)|0; + $7 = $6; + $8 = HEAP32[$7>>2]|0; + $9 = $dval; + $10 = $9; + HEAP32[$10>>2] = $5; + $11 = (($9) + 4)|0; + $12 = $11; + HEAP32[$12>>2] = $8; + $13 = (_GNUNET_TIME_relative_get_forever_()|0); + $14 = tempRet0; + $15 = $2; + $16 = $15; + HEAP32[$16>>2] = $13; + $17 = (($15) + 4)|0; + $18 = $17; + HEAP32[$18>>2] = $14; + $19 = $2; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = (($19) + 4)|0; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = $delta; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = ($21|0)==($27|0); + $32 = ($24|0)==($30|0); + $33 = $31 & $32; + if ($33) { + $0 = 21749; + $243 = $0; + STACKTOP = sp;return ($243|0); + } + $34 = $delta; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (($34) + 4)|0; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (0)==($36|0); + $41 = (0)==($39|0); + $42 = $40 & $41; + if ($42) { + $0 = 21808; + $243 = $0; + STACKTOP = sp;return ($243|0); + } + $43 = $1; + $44 = (1)==($43|0); + $45 = $dval; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = (($45) + 4)|0; + $49 = $48; + $50 = HEAP32[$49>>2]|0; + $51 = ($50>>>0)>(0); + $52 = ($47>>>0)>(5000); + $53 = ($50|0)==(0); + $54 = $53 & $52; + $55 = $51 | $54; + $or$cond = $44 & $55; + if ($or$cond) { + label = 7; + } else { + $56 = $dval; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = (($56) + 4)|0; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = (___uremdi3(($58|0),($61|0),1000,0)|0); + $63 = tempRet0; + $64 = (0)==($62|0); + $65 = (0)==($63|0); + $66 = $64 & $65; + if ($66) { + label = 7; + } + } + do { + if ((label|0) == 7) { + $67 = $dval; + $68 = $67; + $69 = HEAP32[$68>>2]|0; + $70 = (($67) + 4)|0; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = (___udivdi3(($69|0),($72|0),1000,0)|0); + $74 = tempRet0; + $75 = $dval; + $76 = $75; + HEAP32[$76>>2] = $73; + $77 = (($75) + 4)|0; + $78 = $77; + HEAP32[$78>>2] = $74; + $unit = 21757; + $79 = $1; + $80 = (1)==($79|0); + $81 = $dval; + $82 = $81; + $83 = HEAP32[$82>>2]|0; + $84 = (($81) + 4)|0; + $85 = $84; + $86 = HEAP32[$85>>2]|0; + $87 = ($86>>>0)>(0); + $88 = ($83>>>0)>(5000); + $89 = ($86|0)==(0); + $90 = $89 & $88; + $91 = $87 | $90; + $or$cond3 = $80 & $91; + if (!($or$cond3)) { + $92 = $dval; + $93 = $92; + $94 = HEAP32[$93>>2]|0; + $95 = (($92) + 4)|0; + $96 = $95; + $97 = HEAP32[$96>>2]|0; + $98 = (___uremdi3(($94|0),($97|0),1000,0)|0); + $99 = tempRet0; + $100 = (0)==($98|0); + $101 = (0)==($99|0); + $102 = $100 & $101; + if (!($102)) { + break; + } + } + $103 = $dval; + $104 = $103; + $105 = HEAP32[$104>>2]|0; + $106 = (($103) + 4)|0; + $107 = $106; + $108 = HEAP32[$107>>2]|0; + $109 = (___udivdi3(($105|0),($108|0),1000,0)|0); + $110 = tempRet0; + $111 = $dval; + $112 = $111; + HEAP32[$112>>2] = $109; + $113 = (($111) + 4)|0; + $114 = $113; + HEAP32[$114>>2] = $110; + $unit = 39395; + $115 = $1; + $116 = (1)==($115|0); + $117 = $dval; + $118 = $117; + $119 = HEAP32[$118>>2]|0; + $120 = (($117) + 4)|0; + $121 = $120; + $122 = HEAP32[$121>>2]|0; + $123 = ($122>>>0)>(0); + $124 = ($119>>>0)>(300); + $125 = ($122|0)==(0); + $126 = $125 & $124; + $127 = $123 | $126; + $or$cond5 = $116 & $127; + if (!($or$cond5)) { + $128 = $dval; + $129 = $128; + $130 = HEAP32[$129>>2]|0; + $131 = (($128) + 4)|0; + $132 = $131; + $133 = HEAP32[$132>>2]|0; + $134 = (___uremdi3(($130|0),($133|0),60,0)|0); + $135 = tempRet0; + $136 = (0)==($134|0); + $137 = (0)==($135|0); + $138 = $136 & $137; + if (!($138)) { + break; + } + } + $139 = $dval; + $140 = $139; + $141 = HEAP32[$140>>2]|0; + $142 = (($139) + 4)|0; + $143 = $142; + $144 = HEAP32[$143>>2]|0; + $145 = (___udivdi3(($141|0),($144|0),60,0)|0); + $146 = tempRet0; + $147 = $dval; + $148 = $147; + HEAP32[$148>>2] = $145; + $149 = (($147) + 4)|0; + $150 = $149; + HEAP32[$150>>2] = $146; + $unit = 21760; + $151 = $1; + $152 = (1)==($151|0); + $153 = $dval; + $154 = $153; + $155 = HEAP32[$154>>2]|0; + $156 = (($153) + 4)|0; + $157 = $156; + $158 = HEAP32[$157>>2]|0; + $159 = ($158>>>0)>(0); + $160 = ($155>>>0)>(300); + $161 = ($158|0)==(0); + $162 = $161 & $160; + $163 = $159 | $162; + $or$cond7 = $152 & $163; + if (!($or$cond7)) { + $164 = $dval; + $165 = $164; + $166 = HEAP32[$165>>2]|0; + $167 = (($164) + 4)|0; + $168 = $167; + $169 = HEAP32[$168>>2]|0; + $170 = (___uremdi3(($166|0),($169|0),60,0)|0); + $171 = tempRet0; + $172 = (0)==($170|0); + $173 = (0)==($171|0); + $174 = $172 & $173; + if (!($174)) { + break; + } + } + $175 = $dval; + $176 = $175; + $177 = HEAP32[$176>>2]|0; + $178 = (($175) + 4)|0; + $179 = $178; + $180 = HEAP32[$179>>2]|0; + $181 = (___udivdi3(($177|0),($180|0),60,0)|0); + $182 = tempRet0; + $183 = $dval; + $184 = $183; + HEAP32[$184>>2] = $181; + $185 = (($183) + 4)|0; + $186 = $185; + HEAP32[$186>>2] = $182; + $unit = 35606; + $187 = $1; + $188 = (1)==($187|0); + $189 = $dval; + $190 = $189; + $191 = HEAP32[$190>>2]|0; + $192 = (($189) + 4)|0; + $193 = $192; + $194 = HEAP32[$193>>2]|0; + $195 = ($194>>>0)>(0); + $196 = ($191>>>0)>(120); + $197 = ($194|0)==(0); + $198 = $197 & $196; + $199 = $195 | $198; + $or$cond9 = $188 & $199; + if (!($or$cond9)) { + $200 = $dval; + $201 = $200; + $202 = HEAP32[$201>>2]|0; + $203 = (($200) + 4)|0; + $204 = $203; + $205 = HEAP32[$204>>2]|0; + $206 = (___uremdi3(($202|0),($205|0),24,0)|0); + $207 = tempRet0; + $208 = (0)==($206|0); + $209 = (0)==($207|0); + $210 = $208 & $209; + if (!($210)) { + break; + } + } + $211 = $dval; + $212 = $211; + $213 = HEAP32[$212>>2]|0; + $214 = (($211) + 4)|0; + $215 = $214; + $216 = HEAP32[$215>>2]|0; + $217 = (___udivdi3(($213|0),($216|0),24,0)|0); + $218 = tempRet0; + $219 = $dval; + $220 = $219; + HEAP32[$220>>2] = $217; + $221 = (($219) + 4)|0; + $222 = $221; + HEAP32[$222>>2] = $218; + $223 = $dval; + $224 = $223; + $225 = HEAP32[$224>>2]|0; + $226 = (($223) + 4)|0; + $227 = $226; + $228 = HEAP32[$227>>2]|0; + $229 = (1)==($225|0); + $230 = (0)==($228|0); + $231 = $229 & $230; + if ($231) { + $unit = 21762; + break; + } else { + $unit = 21766; + break; + } + } + } while(0); + $232 = $dval; + $233 = $232; + $234 = HEAP32[$233>>2]|0; + $235 = (($232) + 4)|0; + $236 = $235; + $237 = HEAP32[$236>>2]|0; + $238 = $unit; + $239 = $vararg_buffer; + $240 = $239; + HEAP32[$240>>2] = $234; + $241 = (($239) + 4)|0; + $242 = $241; + HEAP32[$242>>2] = $237; + $vararg_ptr10 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr10>>2] = $238; + (_GNUNET_snprintf(76064,128,21741,$vararg_buffer)|0); + $0 = 76064; + $243 = $0; + STACKTOP = sp;return ($243|0); +} +function _GNUNET_STRINGS_absolute_time_to_string($t) { + $t = $t|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $tp = 0, $tt = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $tt = sp + 12|0; + $1 = sp; + $2 = $t; + $3 = $2; + $4 = HEAP32[$3>>2]|0; + $5 = (($2) + 4)|0; + $6 = $5; + $7 = HEAP32[$6>>2]|0; + $8 = (_GNUNET_TIME_absolute_get_forever_()|0); + $9 = tempRet0; + $10 = $1; + $11 = $10; + HEAP32[$11>>2] = $8; + $12 = (($10) + 4)|0; + $13 = $12; + HEAP32[$13>>2] = $9; + $14 = $1; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = ($4|0)==($16|0); + $21 = ($7|0)==($19|0); + $22 = $20 & $21; + if ($22) { + $0 = 21771; + $35 = $0; + STACKTOP = sp;return ($35|0); + } else { + $23 = $t; + $24 = $23; + $25 = HEAP32[$24>>2]|0; + $26 = (($23) + 4)|0; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = (___udivdi3(($25|0),($28|0),1000,0)|0); + $30 = tempRet0; + $31 = (___udivdi3(($29|0),($30|0),1000,0)|0); + $32 = tempRet0; + HEAP32[$tt>>2] = $31; + $33 = (_localtime(($tt|0))|0); + $tp = $33; + $34 = $tp; + (_strftime((76192|0),255,(21783|0),($34|0))|0); + $0 = 76192; + $35 = $0; + STACKTOP = sp;return ($35|0); + } + return (0)|0; +} +function _GNUNET_STRINGS_data_to_string($data,$size,$out,$out_size) { + $data = $data|0; + $size = $size|0; + $out = $out|0; + $out_size = $out_size|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bits = 0, $log_line = 0, $log_line1 = 0, $log_line2 = 0, $log_line3 = 0, $or$cond = 0, $rpos = 0, $udata = 0, $vararg_buffer = 0, $vararg_buffer11 = 0, $vararg_buffer3 = 0, $vararg_buffer7 = 0, $vararg_ptr10 = 0, $vararg_ptr14 = 0; + var $vararg_ptr2 = 0, $vararg_ptr6 = 0, $vbit = 0, $wpos = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer11 = sp + 24|0; + $vararg_buffer7 = sp + 16|0; + $vararg_buffer3 = sp + 8|0; + $vararg_buffer = sp; + $1 = $data; + $2 = $size; + $3 = $out; + $4 = $out_size; + $5 = $1; + $udata = $5; + $6 = $4; + $7 = $2; + $8 = $7<<3; + $9 = (($8) + 4)|0; + $10 = (($9>>>0) / 5)&-1; + $11 = ($6>>>0)<($10>>>0); + if ($11) { + $log_line = 873; + $12 = HEAP32[264]|0; + $13 = ($12|0)==(-1); + if ($13) { + $14 = $log_line; + $15 = (_GNUNET_get_log_call_status(1,0,21731,21813,$14)|0); + HEAP32[264] = $15; + } + $16 = (_GNUNET_get_log_skip()|0); + $17 = ($16|0)>(0); + if ($17) { + _GNUNET_log_skip(-1,0); + } else { + $18 = HEAP32[264]|0; + $19 = ($18|0)!=(0); + if ($19) { + HEAP32[$vararg_buffer>>2] = 21731; + $vararg_ptr2 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr2>>2] = 873; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + } + } + $0 = 0; + $105 = $0; + STACKTOP = sp;return ($105|0); + } + $vbit = 0; + $wpos = 0; + $rpos = 0; + $bits = 0; + while(1) { + $20 = $rpos; + $21 = $2; + $22 = ($20>>>0)<($21>>>0); + $23 = $vbit; + $24 = ($23>>>0)>(0); + $25 = $22 ? 1 : $24; + if (!($25)) { + label = 32; + break; + } + $26 = $rpos; + $27 = $2; + $28 = ($26>>>0)<($27>>>0); + $29 = $vbit; + $30 = ($29>>>0)<(5); + $or$cond = $28 & $30; + if ($or$cond) { + $31 = $bits; + $32 = $31 << 8; + $33 = $rpos; + $34 = (($33) + 1)|0; + $rpos = $34; + $35 = $udata; + $36 = (($35) + ($33)|0); + $37 = HEAP8[$36>>0]|0; + $38 = $37&255; + $39 = $32 | $38; + $bits = $39; + $40 = $vbit; + $41 = (($40) + 8)|0; + $vbit = $41; + } + $42 = $vbit; + $43 = ($42>>>0)<(5); + if ($43) { + $44 = $vbit; + $45 = (5 - ($44))|0; + $46 = $bits; + $47 = $46 << $45; + $bits = $47; + $48 = $vbit; + $49 = $2; + $50 = $49<<3; + $51 = (($50>>>0) % 5)&-1; + $52 = ($48|0)==($51|0); + if (!($52)) { + label = 15; + break; + } + $vbit = 5; + } + $61 = $wpos; + $62 = $4; + $63 = ($61>>>0)>=($62>>>0); + if ($63) { + label = 24; + break; + } + $72 = $bits; + $73 = $vbit; + $74 = (($73) - 5)|0; + $75 = $72 >>> $74; + $76 = $75 & 31; + $77 = HEAP32[267]|0; + $78 = (($77) + ($76)|0); + $79 = HEAP8[$78>>0]|0; + $80 = $wpos; + $81 = (($80) + 1)|0; + $wpos = $81; + $82 = $3; + $83 = (($82) + ($80)|0); + HEAP8[$83>>0] = $79; + $84 = $vbit; + $85 = (($84) - 5)|0; + $vbit = $85; + } + if ((label|0) == 15) { + $log_line1 = 890; + $53 = HEAP32[265]|0; + $54 = ($53|0)==(-1); + if ($54) { + $55 = $log_line1; + $56 = (_GNUNET_get_log_call_status(1,0,21731,21813,$55)|0); + HEAP32[265] = $56; + } + $57 = (_GNUNET_get_log_skip()|0); + $58 = ($57|0)>(0); + if ($58) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $59 = HEAP32[265]|0; + $60 = ($59|0)!=(0); + if (!($60)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer3>>2] = 21731; + $vararg_ptr6 = ((($vararg_buffer3)) + 4|0); + HEAP32[$vararg_ptr6>>2] = 890; + _GNUNET_log_nocheck(1,61615,$vararg_buffer3); + _GNUNET_abort_(); + // unreachable; + } + else if ((label|0) == 24) { + $log_line2 = 895; + $64 = HEAP32[266]|0; + $65 = ($64|0)==(-1); + if ($65) { + $66 = $log_line2; + $67 = (_GNUNET_get_log_call_status(1,0,21731,21813,$66)|0); + HEAP32[266] = $67; + } + $68 = (_GNUNET_get_log_skip()|0); + $69 = ($68|0)>(0); + if ($69) { + _GNUNET_log_skip(-1,0); + } else { + $70 = HEAP32[266]|0; + $71 = ($70|0)!=(0); + if ($71) { + HEAP32[$vararg_buffer7>>2] = 21731; + $vararg_ptr10 = ((($vararg_buffer7)) + 4|0); + HEAP32[$vararg_ptr10>>2] = 895; + _GNUNET_log_nocheck(1,61615,$vararg_buffer7); + } + } + $0 = 0; + $105 = $0; + STACKTOP = sp;return ($105|0); + } + else if ((label|0) == 32) { + $86 = $vbit; + $87 = (0)==($86|0); + if ($87) { + $96 = $wpos; + $97 = $4; + $98 = ($96>>>0)<($97>>>0); + if ($98) { + $99 = $wpos; + $100 = $3; + $101 = (($100) + ($99)|0); + HEAP8[$101>>0] = 0; + } + $102 = $wpos; + $103 = $3; + $104 = (($103) + ($102)|0); + $0 = $104; + $105 = $0; + STACKTOP = sp;return ($105|0); + } + $log_line3 = 901; + $88 = HEAP32[268]|0; + $89 = ($88|0)==(-1); + if ($89) { + $90 = $log_line3; + $91 = (_GNUNET_get_log_call_status(1,0,21731,21813,$90)|0); + HEAP32[268] = $91; + } + $92 = (_GNUNET_get_log_skip()|0); + $93 = ($92|0)>(0); + if ($93) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $94 = HEAP32[268]|0; + $95 = ($94|0)!=(0); + if (!($95)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer11>>2] = 21731; + $vararg_ptr14 = ((($vararg_buffer11)) + 4|0); + HEAP32[$vararg_ptr14>>2] = 901; + _GNUNET_log_nocheck(1,61615,$vararg_buffer11); + _GNUNET_abort_(); + // unreachable; + } + return (0)|0; +} +function _GNUNET_STRINGS_data_to_string_alloc($buf,$size) { + $buf = $buf|0; + $size = $size|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $end = 0, $len = 0, $str_buf = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $buf; + $2 = $size; + $3 = $2; + $4 = $3<<3; + $len = $4; + $5 = $len; + $6 = (($5>>>0) % 5)&-1; + $7 = ($6>>>0)>(0); + if ($7) { + $8 = $len; + $9 = (($8>>>0) % 5)&-1; + $10 = (5 - ($9))|0; + $11 = $len; + $12 = (($11) + ($10))|0; + $len = $12; + } + $13 = $len; + $14 = (($13>>>0) / 5)&-1; + $len = $14; + $15 = $len; + $16 = (($15) + 1)|0; + $17 = (_GNUNET_xmalloc_($16,21731,929)|0); + $str_buf = $17; + $18 = $1; + $19 = $2; + $20 = $str_buf; + $21 = $len; + $22 = (_GNUNET_STRINGS_data_to_string($18,$19,$20,$21)|0); + $end = $22; + $23 = $end; + $24 = (0|0)==($23|0); + if ($24) { + $25 = $str_buf; + _GNUNET_xfree_($25,21731,933); + $0 = 0; + $28 = $0; + STACKTOP = sp;return ($28|0); + } else { + $26 = $end; + HEAP8[$26>>0] = 0; + $27 = $str_buf; + $0 = $27; + $28 = $0; + STACKTOP = sp;return ($28|0); + } + return (0)|0; +} +function _GNUNET_STRINGS_string_to_data($enc,$enclen,$out,$out_size) { + $enc = $enc|0; + $enclen = $enclen|0; + $out = $out|0; + $out_size = $out_size|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $9 = 0, $bits = 0, $encoded_len = 0, $log_line = 0, $or$cond = 0, $ret = 0, $rpos = 0, $shift = 0, $uout = 0, $vararg_buffer = 0, $vararg_ptr2 = 0, $vbit = 0, $wpos = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $1 = $enc; + $2 = $enclen; + $3 = $out; + $4 = $out_size; + $5 = $4; + $6 = $5<<3; + $encoded_len = $6; + $7 = $2; + $8 = (0)==($7|0); + if ($8) { + $9 = $4; + $10 = (0)==($9|0); + if ($10) { + $0 = 1; + $84 = $0; + STACKTOP = sp;return ($84|0); + } else { + $0 = -1; + $84 = $0; + STACKTOP = sp;return ($84|0); + } + } + $11 = $3; + $uout = $11; + $12 = $4; + $wpos = $12; + $13 = $2; + $rpos = $13; + $14 = $encoded_len; + $15 = (($14>>>0) % 5)&-1; + $16 = ($15>>>0)>(0); + if ($16) { + $17 = $encoded_len; + $18 = (($17>>>0) % 5)&-1; + $vbit = $18; + $19 = $vbit; + $20 = (5 - ($19))|0; + $shift = $20; + $21 = $rpos; + $22 = (($21) + -1)|0; + $rpos = $22; + $23 = $1; + $24 = (($23) + ($22)|0); + $25 = HEAP8[$24>>0]|0; + $26 = (_getValue__($25)|0); + $ret = $26; + $27 = $shift; + $28 = $26 >> $27; + $bits = $28; + } else { + $vbit = 5; + $shift = 0; + $29 = $rpos; + $30 = (($29) + -1)|0; + $rpos = $30; + $31 = $1; + $32 = (($31) + ($30)|0); + $33 = HEAP8[$32>>0]|0; + $34 = (_getValue__($33)|0); + $ret = $34; + $bits = $34; + } + $35 = $encoded_len; + $36 = $shift; + $37 = (($35) + ($36))|0; + $38 = (($37>>>0) / 5)&-1; + $39 = $2; + $40 = ($38|0)!=($39|0); + if ($40) { + $0 = -1; + $84 = $0; + STACKTOP = sp;return ($84|0); + } + $41 = $ret; + $42 = (-1)==($41|0); + if ($42) { + $0 = -1; + $84 = $0; + STACKTOP = sp;return ($84|0); + } + while(1) { + $43 = $wpos; + $44 = ($43>>>0)>(0); + $45 = $rpos; + if (!($44)) { + label = 25; + break; + } + $46 = (0)==($45|0); + if ($46) { + label = 14; + break; + } + $55 = $rpos; + $56 = (($55) + -1)|0; + $rpos = $56; + $57 = $1; + $58 = (($57) + ($56)|0); + $59 = HEAP8[$58>>0]|0; + $60 = (_getValue__($59)|0); + $ret = $60; + $61 = $vbit; + $62 = $60 << $61; + $63 = $bits; + $64 = $62 | $63; + $bits = $64; + $65 = $ret; + $66 = (-1)==($65|0); + if ($66) { + label = 22; + break; + } + $67 = $vbit; + $68 = (($67) + 5)|0; + $vbit = $68; + $69 = $vbit; + $70 = ($69>>>0)>=(8); + if (!($70)) { + continue; + } + $71 = $bits; + $72 = $71&255; + $73 = $wpos; + $74 = (($73) + -1)|0; + $wpos = $74; + $75 = $uout; + $76 = (($75) + ($74)|0); + HEAP8[$76>>0] = $72; + $77 = $bits; + $78 = $77 >>> 8; + $bits = $78; + $79 = $vbit; + $80 = (($79) - 8)|0; + $vbit = $80; + } + if ((label|0) == 14) { + $log_line = 993; + $47 = HEAP32[269]|0; + $48 = ($47|0)==(-1); + if ($48) { + $49 = $log_line; + $50 = (_GNUNET_get_log_call_status(1,0,21731,21876,$49)|0); + HEAP32[269] = $50; + } + $51 = (_GNUNET_get_log_skip()|0); + $52 = ($51|0)>(0); + if ($52) { + _GNUNET_log_skip(-1,0); + } else { + $53 = HEAP32[269]|0; + $54 = ($53|0)!=(0); + if ($54) { + HEAP32[$vararg_buffer>>2] = 21731; + $vararg_ptr2 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr2>>2] = 993; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + } + } + $0 = -1; + $84 = $0; + STACKTOP = sp;return ($84|0); + } + else if ((label|0) == 22) { + $0 = -1; + $84 = $0; + STACKTOP = sp;return ($84|0); + } + else if ((label|0) == 25) { + $81 = (0)!=($45|0); + $82 = $vbit; + $83 = (0)!=($82|0); + $or$cond = $81 | $83; + if ($or$cond) { + $0 = -1; + $84 = $0; + STACKTOP = sp;return ($84|0); + } else { + $0 = 1; + $84 = $0; + STACKTOP = sp;return ($84|0); + } + } + return (0)|0; +} +function _getValue__($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $a; + $2 = $1; + $3 = $2&255; + switch ($3|0) { + case 111: case 79: { + $1 = 48; + break; + } + case 76: case 108: case 73: case 105: { + $1 = 49; + break; + } + case 85: case 117: { + $1 = 86; + break; + } + default: { + } + } + $4 = $1; + $5 = $4&255; + $6 = ($5|0)>=(48); + if ($6) { + $7 = $1; + $8 = $7&255; + $9 = ($8|0)<=(57); + if ($9) { + $10 = $1; + $11 = $10&255; + $12 = (($11) - 48)|0; + $0 = $12; + $55 = $0; + STACKTOP = sp;return ($55|0); + } + } + $13 = $1; + $14 = $13&255; + $15 = ($14|0)>=(97); + if ($15) { + $16 = $1; + $17 = $16&255; + $18 = ($17|0)<=(122); + if ($18) { + $19 = $1; + $20 = $19&255; + $21 = (_toupper($20)|0); + $22 = $21&255; + $1 = $22; + } + } + $dec = 0; + $23 = $1; + $24 = $23&255; + $25 = ($24|0)>=(65); + if ($25) { + $26 = $1; + $27 = $26&255; + $28 = ($27|0)<=(90); + if ($28) { + $29 = $1; + $30 = $29&255; + $31 = (73)<($30|0); + if ($31) { + $32 = $dec; + $33 = (($32) + 1)|0; + $dec = $33; + } + $34 = $1; + $35 = $34&255; + $36 = (76)<($35|0); + if ($36) { + $37 = $dec; + $38 = (($37) + 1)|0; + $dec = $38; + } + $39 = $1; + $40 = $39&255; + $41 = (79)<($40|0); + if ($41) { + $42 = $dec; + $43 = (($42) + 1)|0; + $dec = $43; + } + $44 = $1; + $45 = $44&255; + $46 = (85)<($45|0); + if ($46) { + $47 = $dec; + $48 = (($47) + 1)|0; + $dec = $48; + } + $49 = $1; + $50 = $49&255; + $51 = (($50) - 65)|0; + $52 = (($51) + 10)|0; + $53 = $dec; + $54 = (($52) - ($53))|0; + $0 = $54; + $55 = $0; + STACKTOP = sp;return ($55|0); + } + } + $0 = -1; + $55 = $0; + STACKTOP = sp;return ($55|0); +} +function _GNUNET_TIME_get_offset() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = 70552; + $1 = $0; + $2 = HEAP32[$1>>2]|0; + $3 = (($0) + 4)|0; + $4 = $3; + $5 = HEAP32[$4>>2]|0; + tempRet0 = ($5); + return ($2|0); +} +function _GNUNET_TIME_absolute_get() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ret = 0, $tv = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = sp + 8|0; + $ret = sp; + $tv = sp + 16|0; + (_gettimeofday(($tv|0),(0|0))|0); + $1 = HEAP32[$tv>>2]|0; + $2 = ($1|0)<(0); + $3 = $2 << 31 >> 31; + $4 = (___muldi3(($1|0),($3|0),1000,0)|0); + $5 = tempRet0; + $6 = (___muldi3(($4|0),($5|0),1000,0)|0); + $7 = tempRet0; + $8 = ((($tv)) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)<(0); + $11 = $10 << 31 >> 31; + $12 = (_i64Add(($6|0),($7|0),($9|0),($11|0))|0); + $13 = tempRet0; + $14 = 70552; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (_i64Add(($12|0),($13|0),($16|0),($19|0))|0); + $21 = tempRet0; + $22 = $ret; + $23 = $22; + HEAP32[$23>>2] = $20; + $24 = (($22) + 4)|0; + $25 = $24; + HEAP32[$25>>2] = $21; + ;HEAP32[$0>>2]=HEAP32[$ret>>2]|0;HEAP32[$0+4>>2]=HEAP32[$ret+4>>2]|0; + $26 = $0; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = (($26) + 4)|0; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + tempRet0 = ($31); + STACKTOP = sp;return ($28|0); +} +function _GNUNET_TIME_relative_get_zero_() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = sp; + ;HEAP32[$0>>2]=HEAP32[70560>>2]|0;HEAP32[$0+4>>2]=HEAP32[70560+4>>2]|0; + $1 = $0; + $2 = $1; + $3 = HEAP32[$2>>2]|0; + $4 = (($1) + 4)|0; + $5 = $4; + $6 = HEAP32[$5>>2]|0; + tempRet0 = ($6); + STACKTOP = sp;return ($3|0); +} +function _GNUNET_TIME_relative_get_forever_() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = sp; + ;HEAP32[$0>>2]=HEAP32[64>>2]|0;HEAP32[$0+4>>2]=HEAP32[64+4>>2]|0; + $1 = $0; + $2 = $1; + $3 = HEAP32[$2>>2]|0; + $4 = (($1) + 4)|0; + $5 = $4; + $6 = HEAP32[$5>>2]|0; + tempRet0 = ($6); + STACKTOP = sp;return ($3|0); +} +function _GNUNET_TIME_absolute_get_forever_() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = sp; + ;HEAP32[$0>>2]=HEAP32[72>>2]|0;HEAP32[$0+4>>2]=HEAP32[72+4>>2]|0; + $1 = $0; + $2 = $1; + $3 = HEAP32[$2>>2]|0; + $4 = (($1) + 4)|0; + $5 = $4; + $6 = HEAP32[$5>>2]|0; + tempRet0 = ($6); + STACKTOP = sp;return ($3|0); +} +function _GNUNET_TIME_absolute_get_duration($whence) { + $whence = $whence|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $now = 0, $ret = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = sp + 24|0; + $now = sp + 16|0; + $ret = sp + 8|0; + $1 = sp; + $2 = (_GNUNET_TIME_absolute_get()|0); + $3 = tempRet0; + $4 = $1; + $5 = $4; + HEAP32[$5>>2] = $2; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $3; + ;HEAP32[$now>>2]=HEAP32[$1>>2]|0;HEAP32[$now+4>>2]=HEAP32[$1+4>>2]|0; + $8 = $whence; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $11 = (($8) + 4)|0; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = $now; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = ($13>>>0)>($19>>>0); + $21 = ($10>>>0)>($16>>>0); + $22 = ($13|0)==($19|0); + $23 = $22 & $21; + $24 = $20 | $23; + if ($24) { + $25 = (_GNUNET_TIME_relative_get_zero_()|0); + $26 = tempRet0; + $27 = $0; + $28 = $27; + HEAP32[$28>>2] = $25; + $29 = (($27) + 4)|0; + $30 = $29; + HEAP32[$30>>2] = $26; + $49 = $0; + $50 = $49; + $51 = HEAP32[$50>>2]|0; + $52 = (($49) + 4)|0; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + tempRet0 = ($54); + STACKTOP = sp;return ($51|0); + } else { + $31 = $now; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = (($31) + 4)|0; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = $whence; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (($37) + 4)|0; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $43 = (_i64Subtract(($33|0),($36|0),($39|0),($42|0))|0); + $44 = tempRet0; + $45 = $ret; + $46 = $45; + HEAP32[$46>>2] = $43; + $47 = (($45) + 4)|0; + $48 = $47; + HEAP32[$48>>2] = $44; + ;HEAP32[$0>>2]=HEAP32[$ret>>2]|0;HEAP32[$0+4>>2]=HEAP32[$ret+4>>2]|0; + $49 = $0; + $50 = $49; + $51 = HEAP32[$50>>2]|0; + $52 = (($49) + 4)|0; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + tempRet0 = ($54); + STACKTOP = sp;return ($51|0); + } + return (0)|0; +} +function _GNUNET_TIME_absolute_hton($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ret = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = sp + 8|0; + $ret = sp; + $1 = $a; + $2 = $1; + $3 = HEAP32[$2>>2]|0; + $4 = (($1) + 4)|0; + $5 = $4; + $6 = HEAP32[$5>>2]|0; + $7 = (_GNUNET_htonll($3,$6)|0); + $8 = tempRet0; + $9 = $ret; + $10 = $9; + HEAP8[$10>>0]=$7&255;HEAP8[$10+1>>0]=($7>>8)&255;HEAP8[$10+2>>0]=($7>>16)&255;HEAP8[$10+3>>0]=$7>>24; + $11 = (($9) + 4)|0; + $12 = $11; + HEAP8[$12>>0]=$8&255;HEAP8[$12+1>>0]=($8>>8)&255;HEAP8[$12+2>>0]=($8>>16)&255;HEAP8[$12+3>>0]=$8>>24; + ;HEAP8[$0>>0]=HEAP8[$ret>>0]|0;HEAP8[$0+1>>0]=HEAP8[$ret+1>>0]|0;HEAP8[$0+2>>0]=HEAP8[$ret+2>>0]|0;HEAP8[$0+3>>0]=HEAP8[$ret+3>>0]|0;HEAP8[$0+4>>0]=HEAP8[$ret+4>>0]|0;HEAP8[$0+5>>0]=HEAP8[$ret+5>>0]|0;HEAP8[$0+6>>0]=HEAP8[$ret+6>>0]|0;HEAP8[$0+7>>0]=HEAP8[$ret+7>>0]|0; + $13 = $0; + $14 = $13; + $15 = HEAPU8[$14>>0]|(HEAPU8[$14+1>>0]<<8)|(HEAPU8[$14+2>>0]<<16)|(HEAPU8[$14+3>>0]<<24); + $16 = (($13) + 4)|0; + $17 = $16; + $18 = HEAPU8[$17>>0]|(HEAPU8[$17+1>>0]<<8)|(HEAPU8[$17+2>>0]<<16)|(HEAPU8[$17+3>>0]<<24); + tempRet0 = ($18); + STACKTOP = sp;return ($15|0); +} +function _gcry_strerror($err) { + $err = $err|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $err; + $1 = $0; + $2 = (__gcry_strerror($1)|0); + STACKTOP = sp;return ($2|0); +} +function __gcry_strerror($err) { + $err = $err|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $err; + $1 = $0; + $2 = (_gpg_strerror($1)|0); + STACKTOP = sp;return ($2|0); +} +function _gpg_err_make($source,$code) { + $source = $source|0; + $code = $code|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $source; + $1 = $code; + $2 = $1; + $3 = ($2|0)==(0); + if ($3) { + $10 = 0; + STACKTOP = sp;return ($10|0); + } + $4 = $0; + $5 = $4 & 127; + $6 = $5 << 24; + $7 = $1; + $8 = $7 & 65535; + $9 = $6 | $8; + $10 = $9; + STACKTOP = sp;return ($10|0); +} +function _gpg_error($code) { + $code = $code|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $code; + $1 = $0; + $2 = (_gpg_err_make(1,$1)|0); + STACKTOP = sp;return ($2|0); +} +function _gcry_check_version($req_version) { + $req_version = $req_version|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $req_version; + $1 = $0; + $2 = (__gcry_check_version($1)|0); + STACKTOP = sp;return ($2|0); +} +function _gcry_control($cmd,$varargs) { + $cmd = $cmd|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $arg_ptr = 0, $err = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $arg_ptr = sp; + $0 = $cmd; + HEAP32[$arg_ptr>>2] = $varargs; + $1 = $0; + $2 = (__gcry_vcontrol($1,$arg_ptr)|0); + $3 = (_gpg_error($2)|0); + $err = $3; + $4 = $err; + STACKTOP = sp;return ($4|0); +} +function _gcry_sexp_new($retsexp,$buffer,$length,$autodetect) { + $retsexp = $retsexp|0; + $buffer = $buffer|0; + $length = $length|0; + $autodetect = $autodetect|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $retsexp; + $1 = $buffer; + $2 = $length; + $3 = $autodetect; + $4 = $0; + $5 = $1; + $6 = $2; + $7 = $3; + $8 = (__gcry_sexp_new($4,$5,$6,$7)|0); + $9 = (_gpg_error($8)|0); + STACKTOP = sp;return ($9|0); +} +function _gcry_sexp_build($retsexp,$erroff,$format,$varargs) { + $retsexp = $retsexp|0; + $erroff = $erroff|0; + $format = $format|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $arg_ptr = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $arg_ptr = sp; + $0 = $retsexp; + $1 = $erroff; + $2 = $format; + HEAP32[$arg_ptr>>2] = $varargs; + $3 = $0; + $4 = $1; + $5 = $2; + $6 = (__gcry_sexp_vbuild($3,$4,$5,$arg_ptr)|0); + $rc = $6; + $7 = $rc; + $8 = (_gpg_error($7)|0); + STACKTOP = sp;return ($8|0); +} +function _gcry_sexp_release($sexp) { + $sexp = $sexp|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $sexp; + $1 = $0; + __gcry_sexp_release($1); + STACKTOP = sp;return; +} +function _gcry_sexp_sprint($sexp,$mode,$buffer,$maxlength) { + $sexp = $sexp|0; + $mode = $mode|0; + $buffer = $buffer|0; + $maxlength = $maxlength|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $sexp; + $1 = $mode; + $2 = $buffer; + $3 = $maxlength; + $4 = $0; + $5 = $1; + $6 = $2; + $7 = $3; + $8 = (__gcry_sexp_sprint($4,$5,$6,$7)|0); + STACKTOP = sp;return ($8|0); +} +function _gcry_sexp_find_token($list,$tok,$toklen) { + $list = $list|0; + $tok = $tok|0; + $toklen = $toklen|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $list; + $1 = $tok; + $2 = $toklen; + $3 = $0; + $4 = $1; + $5 = $2; + $6 = (__gcry_sexp_find_token($3,$4,$5)|0); + STACKTOP = sp;return ($6|0); +} +function _gcry_sexp_cadr($list) { + $list = $list|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $list; + $1 = $0; + $2 = (__gcry_sexp_cadr($1)|0); + STACKTOP = sp;return ($2|0); +} +function _gcry_sexp_nth_mpi($list,$number,$mpifmt) { + $list = $list|0; + $number = $number|0; + $mpifmt = $mpifmt|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $list; + $1 = $number; + $2 = $mpifmt; + $3 = $0; + $4 = $1; + $5 = $2; + $6 = (__gcry_sexp_nth_mpi($3,$4,$5)|0); + STACKTOP = sp;return ($6|0); +} +function _gcry_mpi_new($nbits) { + $nbits = $nbits|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $nbits; + $1 = $0; + $2 = (__gcry_mpi_new($1)|0); + STACKTOP = sp;return ($2|0); +} +function _gcry_mpi_release($a) { + $a = $a|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $0; + __gcry_mpi_release($1); + STACKTOP = sp;return; +} +function _gcry_mpi_scan($ret_mpi,$format,$buffer,$buflen,$nscanned) { + $ret_mpi = $ret_mpi|0; + $format = $format|0; + $buffer = $buffer|0; + $buflen = $buflen|0; + $nscanned = $nscanned|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ret_mpi; + $1 = $format; + $2 = $buffer; + $3 = $buflen; + $4 = $nscanned; + $5 = $0; + $6 = $1; + $7 = $2; + $8 = $3; + $9 = $4; + $10 = (__gcry_mpi_scan($5,$6,$7,$8,$9)|0); + $11 = (_gpg_error($10)|0); + STACKTOP = sp;return ($11|0); +} +function _gcry_mpi_print($format,$buffer,$buflen,$nwritten,$a) { + $format = $format|0; + $buffer = $buffer|0; + $buflen = $buflen|0; + $nwritten = $nwritten|0; + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $format; + $1 = $buffer; + $2 = $buflen; + $3 = $nwritten; + $4 = $a; + $5 = $0; + $6 = $1; + $7 = $2; + $8 = $3; + $9 = $4; + $10 = (__gcry_mpi_print($5,$6,$7,$8,$9)|0); + $11 = (_gpg_error($10)|0); + STACKTOP = sp;return ($11|0); +} +function _gcry_mpi_mulm($w,$u,$v,$m) { + $w = $w|0; + $u = $u|0; + $v = $v|0; + $m = $m|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $u; + $2 = $v; + $3 = $m; + $4 = $0; + $5 = $1; + $6 = $2; + $7 = $3; + __gcry_mpi_mulm($4,$5,$6,$7); + STACKTOP = sp;return; +} +function _gcry_mpi_powm($w,$b,$e,$m) { + $w = $w|0; + $b = $b|0; + $e = $e|0; + $m = $m|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $b; + $2 = $e; + $3 = $m; + $4 = $0; + $5 = $1; + $6 = $2; + $7 = $3; + __gcry_mpi_powm($4,$5,$6,$7); + STACKTOP = sp;return; +} +function _gcry_mpi_invm($x,$a,$m) { + $x = $x|0; + $a = $a|0; + $m = $m|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $x; + $1 = $a; + $2 = $m; + $3 = $0; + $4 = $1; + $5 = $2; + $6 = (__gcry_mpi_invm($3,$4,$5)|0); + STACKTOP = sp;return ($6|0); +} +function _gcry_mpi_point_new($nbits) { + $nbits = $nbits|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $nbits; + $1 = $0; + $2 = (__gcry_mpi_point_new($1)|0); + STACKTOP = sp;return ($2|0); +} +function _gcry_mpi_point_release($point) { + $point = $point|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $point; + $1 = $0; + __gcry_mpi_point_release($1); + STACKTOP = sp;return; +} +function _gcry_mpi_ec_new($r_ctx,$keyparam,$curvename) { + $r_ctx = $r_ctx|0; + $keyparam = $keyparam|0; + $curvename = $curvename|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $r_ctx; + $1 = $keyparam; + $2 = $curvename; + $3 = $0; + $4 = $1; + $5 = $2; + $6 = (__gcry_mpi_ec_new($3,$4,$5)|0); + $7 = (_gpg_error($6)|0); + STACKTOP = sp;return ($7|0); +} +function _gcry_mpi_ec_get_mpi($name,$ctx,$copy) { + $name = $name|0; + $ctx = $ctx|0; + $copy = $copy|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $name; + $1 = $ctx; + $2 = $copy; + $3 = $0; + $4 = $1; + $5 = $2; + $6 = (__gcry_mpi_ec_get_mpi($3,$4,$5)|0); + STACKTOP = sp;return ($6|0); +} +function _gcry_mpi_ec_get_point($name,$ctx,$copy) { + $name = $name|0; + $ctx = $ctx|0; + $copy = $copy|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $name; + $1 = $ctx; + $2 = $copy; + $3 = $0; + $4 = $1; + $5 = $2; + $6 = (__gcry_mpi_ec_get_point($3,$4,$5)|0); + STACKTOP = sp;return ($6|0); +} +function _gcry_mpi_ec_get_affine($x,$y,$point,$ctx) { + $x = $x|0; + $y = $y|0; + $point = $point|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $x; + $1 = $y; + $2 = $point; + $3 = $ctx; + $4 = $0; + $5 = $1; + $6 = $2; + $7 = $3; + $8 = (__gcry_ctx_get_pointer($7,1)|0); + $9 = (__gcry_mpi_ec_get_affine($4,$5,$6,$8)|0); + STACKTOP = sp;return ($9|0); +} +function _gcry_mpi_ec_mul($w,$n,$u,$ctx) { + $w = $w|0; + $n = $n|0; + $u = $u|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $n; + $2 = $u; + $3 = $ctx; + $4 = $0; + $5 = $1; + $6 = $2; + $7 = $3; + $8 = (__gcry_ctx_get_pointer($7,1)|0); + __gcry_mpi_ec_mul_point($4,$5,$6,$8); + STACKTOP = sp;return; +} +function _gcry_mpi_get_opaque($a,$nbits) { + $a = $a|0; + $nbits = $nbits|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $nbits; + $2 = $0; + $3 = $1; + $4 = (__gcry_mpi_get_opaque($2,$3)|0); + STACKTOP = sp;return ($4|0); +} +function _gcry_mpi_get_flag($a,$flag) { + $a = $a|0; + $flag = $flag|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $flag; + $2 = $0; + $3 = $1; + $4 = (__gcry_mpi_get_flag($2,$3)|0); + STACKTOP = sp;return ($4|0); +} +function _gcry_cipher_open($handle,$algo,$mode,$flags) { + $handle = $handle|0; + $algo = $algo|0; + $mode = $mode|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $handle; + $2 = $algo; + $3 = $mode; + $4 = $flags; + $5 = (__gcry_global_is_operational()|0); + $6 = ($5|0)!=(0); + $7 = $1; + if ($6) { + $9 = $2; + $10 = $3; + $11 = $4; + $12 = (__gcry_cipher_open($7,$9,$10,$11)|0); + $13 = (_gpg_error($12)|0); + $0 = $13; + $14 = $0; + STACKTOP = sp;return ($14|0); + } else { + HEAP32[$7>>2] = 0; + $8 = (_gpg_error(176)|0); + $0 = $8; + $14 = $0; + STACKTOP = sp;return ($14|0); + } + return (0)|0; +} +function _gcry_cipher_close($h) { + $h = $h|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $h; + $1 = $0; + __gcry_cipher_close($1); + STACKTOP = sp;return; +} +function _gcry_cipher_setkey($hd,$key,$keylen) { + $hd = $hd|0; + $key = $key|0; + $keylen = $keylen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $hd; + $2 = $key; + $3 = $keylen; + $4 = (__gcry_global_is_operational()|0); + $5 = ($4|0)!=(0); + if ($5) { + $7 = $1; + $8 = $2; + $9 = $3; + $10 = (__gcry_cipher_setkey($7,$8,$9)|0); + $11 = (_gcry_error($10)|0); + $0 = $11; + $12 = $0; + STACKTOP = sp;return ($12|0); + } else { + $6 = (_gpg_error(176)|0); + $0 = $6; + $12 = $0; + STACKTOP = sp;return ($12|0); + } + return (0)|0; +} +function _gcry_error($code) { + $code = $code|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $code; + $1 = $0; + $2 = (_gcry_err_make(32,$1)|0); + STACKTOP = sp;return ($2|0); +} +function _gcry_err_make($source,$code) { + $source = $source|0; + $code = $code|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $source; + $1 = $code; + $2 = $0; + $3 = $1; + $4 = (_gpg_err_make($2,$3)|0); + STACKTOP = sp;return ($4|0); +} +function _gcry_cipher_setiv($hd,$iv,$ivlen) { + $hd = $hd|0; + $iv = $iv|0; + $ivlen = $ivlen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $hd; + $2 = $iv; + $3 = $ivlen; + $4 = (__gcry_global_is_operational()|0); + $5 = ($4|0)!=(0); + if ($5) { + $7 = $1; + $8 = $2; + $9 = $3; + $10 = (__gcry_cipher_setiv($7,$8,$9)|0); + $11 = (_gcry_error($10)|0); + $0 = $11; + $12 = $0; + STACKTOP = sp;return ($12|0); + } else { + $6 = (_gpg_error(176)|0); + $0 = $6; + $12 = $0; + STACKTOP = sp;return ($12|0); + } + return (0)|0; +} +function _gcry_cipher_encrypt($h,$out,$outsize,$in,$inlen) { + $h = $h|0; + $out = $out|0; + $outsize = $outsize|0; + $in = $in|0; + $inlen = $inlen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $h; + $2 = $out; + $3 = $outsize; + $4 = $in; + $5 = $inlen; + $6 = (__gcry_global_is_operational()|0); + $7 = ($6|0)!=(0); + if ($7) { + $13 = $1; + $14 = $2; + $15 = $3; + $16 = $4; + $17 = $5; + $18 = (__gcry_cipher_encrypt($13,$14,$15,$16,$17)|0); + $19 = (_gpg_error($18)|0); + $0 = $19; + $20 = $0; + STACKTOP = sp;return ($20|0); + } + $8 = $2; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = $2; + $11 = $3; + _memset(($10|0),66,($11|0))|0; + } + $12 = (_gpg_error(176)|0); + $0 = $12; + $20 = $0; + STACKTOP = sp;return ($20|0); +} +function _gcry_cipher_decrypt($h,$out,$outsize,$in,$inlen) { + $h = $h|0; + $out = $out|0; + $outsize = $outsize|0; + $in = $in|0; + $inlen = $inlen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $h; + $2 = $out; + $3 = $outsize; + $4 = $in; + $5 = $inlen; + $6 = (__gcry_global_is_operational()|0); + $7 = ($6|0)!=(0); + if ($7) { + $9 = $1; + $10 = $2; + $11 = $3; + $12 = $4; + $13 = $5; + $14 = (__gcry_cipher_decrypt($9,$10,$11,$12,$13)|0); + $15 = (_gpg_error($14)|0); + $0 = $15; + $16 = $0; + STACKTOP = sp;return ($16|0); + } else { + $8 = (_gpg_error(176)|0); + $0 = $8; + $16 = $0; + STACKTOP = sp;return ($16|0); + } + return (0)|0; +} +function _gcry_pk_sign($result,$data,$skey) { + $result = $result|0; + $data = $data|0; + $skey = $skey|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $result; + $2 = $data; + $3 = $skey; + $4 = (__gcry_global_is_operational()|0); + $5 = ($4|0)!=(0); + $6 = $1; + if ($5) { + $8 = $2; + $9 = $3; + $10 = (__gcry_pk_sign($6,$8,$9)|0); + $11 = (_gpg_error($10)|0); + $0 = $11; + $12 = $0; + STACKTOP = sp;return ($12|0); + } else { + HEAP32[$6>>2] = 0; + $7 = (_gpg_error(176)|0); + $0 = $7; + $12 = $0; + STACKTOP = sp;return ($12|0); + } + return (0)|0; +} +function _gcry_pk_verify($sigval,$data,$pkey) { + $sigval = $sigval|0; + $data = $data|0; + $pkey = $pkey|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $sigval; + $2 = $data; + $3 = $pkey; + $4 = (__gcry_global_is_operational()|0); + $5 = ($4|0)!=(0); + if ($5) { + $7 = $1; + $8 = $2; + $9 = $3; + $10 = (__gcry_pk_verify($7,$8,$9)|0); + $11 = (_gpg_error($10)|0); + $0 = $11; + $12 = $0; + STACKTOP = sp;return ($12|0); + } else { + $6 = (_gpg_error(176)|0); + $0 = $6; + $12 = $0; + STACKTOP = sp;return ($12|0); + } + return (0)|0; +} +function _gcry_pk_testkey($key) { + $key = $key|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $key; + $2 = (__gcry_global_is_operational()|0); + $3 = ($2|0)!=(0); + if ($3) { + $5 = $1; + $6 = (__gcry_pk_testkey($5)|0); + $7 = (_gpg_error($6)|0); + $0 = $7; + $8 = $0; + STACKTOP = sp;return ($8|0); + } else { + $4 = (_gpg_error(176)|0); + $0 = $4; + $8 = $0; + STACKTOP = sp;return ($8|0); + } + return (0)|0; +} +function _gcry_pk_genkey($r_key,$s_parms) { + $r_key = $r_key|0; + $s_parms = $s_parms|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $r_key; + $2 = $s_parms; + $3 = (__gcry_global_is_operational()|0); + $4 = ($3|0)!=(0); + $5 = $1; + if ($4) { + $7 = $2; + $8 = (__gcry_pk_genkey($5,$7)|0); + $9 = (_gpg_error($8)|0); + $0 = $9; + $10 = $0; + STACKTOP = sp;return ($10|0); + } else { + HEAP32[$5>>2] = 0; + $6 = (_gpg_error(176)|0); + $0 = $6; + $10 = $0; + STACKTOP = sp;return ($10|0); + } + return (0)|0; +} +function _gcry_md_open($h,$algo,$flags) { + $h = $h|0; + $algo = $algo|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $h; + $2 = $algo; + $3 = $flags; + $4 = (__gcry_global_is_operational()|0); + $5 = ($4|0)!=(0); + $6 = $1; + if ($5) { + $8 = $2; + $9 = $3; + $10 = (__gcry_md_open($6,$8,$9)|0); + $11 = (_gpg_error($10)|0); + $0 = $11; + $12 = $0; + STACKTOP = sp;return ($12|0); + } else { + HEAP32[$6>>2] = 0; + $7 = (_gpg_error(176)|0); + $0 = $7; + $12 = $0; + STACKTOP = sp;return ($12|0); + } + return (0)|0; +} +function _gcry_md_close($hd) { + $hd = $hd|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $hd; + $1 = $0; + __gcry_md_close($1); + STACKTOP = sp;return; +} +function _gcry_md_reset($hd) { + $hd = $hd|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $hd; + $1 = $0; + __gcry_md_reset($1); + STACKTOP = sp;return; +} +function _gcry_md_write($hd,$buffer,$length) { + $hd = $hd|0; + $buffer = $buffer|0; + $length = $length|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $hd; + $1 = $buffer; + $2 = $length; + $3 = (__gcry_global_is_operational()|0); + $4 = ($3|0)!=(0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = $0; + $6 = $1; + $7 = $2; + __gcry_md_write($5,$6,$7); + STACKTOP = sp;return; +} +function _gcry_md_read($hd,$algo) { + $hd = $hd|0; + $algo = $algo|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $hd; + $1 = $algo; + $2 = $0; + $3 = $1; + $4 = (__gcry_md_read($2,$3)|0); + STACKTOP = sp;return ($4|0); +} +function _gcry_md_hash_buffer($algo,$digest,$buffer,$length) { + $algo = $algo|0; + $digest = $digest|0; + $buffer = $buffer|0; + $length = $length|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $algo; + $1 = $digest; + $2 = $buffer; + $3 = $length; + $4 = (__gcry_global_is_operational()|0); + $5 = ($4|0)!=(0); + if (!($5)) { + __gcry_fips_signal_error(21906,1175,21919,0,21939); + } + $6 = $0; + $7 = $1; + $8 = $2; + $9 = $3; + __gcry_md_hash_buffer($6,$7,$8,$9); + STACKTOP = sp;return; +} +function _gcry_md_get_algo($hd) { + $hd = $hd|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $hd; + $2 = (__gcry_global_is_operational()|0); + $3 = ($2|0)!=(0); + if ($3) { + $4 = $1; + $5 = (__gcry_md_get_algo($4)|0); + $0 = $5; + $6 = $0; + STACKTOP = sp;return ($6|0); + } else { + __gcry_fips_signal_error(21906,1198,21971,0,21988); + $0 = 0; + $6 = $0; + STACKTOP = sp;return ($6|0); + } + return (0)|0; +} +function _gcry_md_get_algo_dlen($algo) { + $algo = $algo|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $algo; + $1 = $0; + $2 = (__gcry_md_get_algo_dlen($1)|0); + STACKTOP = sp;return ($2|0); +} +function _gcry_md_setkey($hd,$key,$keylen) { + $hd = $hd|0; + $key = $key|0; + $keylen = $keylen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $hd; + $2 = $key; + $3 = $keylen; + $4 = (__gcry_global_is_operational()|0); + $5 = ($4|0)!=(0); + if ($5) { + $7 = $1; + $8 = $2; + $9 = $3; + $10 = (__gcry_md_setkey($7,$8,$9)|0); + $11 = (_gpg_error($10)|0); + $0 = $11; + $12 = $0; + STACKTOP = sp;return ($12|0); + } else { + $6 = (_gpg_error(176)|0); + $0 = $6; + $12 = $0; + STACKTOP = sp;return ($12|0); + } + return (0)|0; +} +function _gcry_randomize($buffer,$length,$level) { + $buffer = $buffer|0; + $length = $length|0; + $level = $level|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $buffer; + $1 = $length; + $2 = $level; + $3 = (__gcry_global_is_operational()|0); + $4 = ($3|0)!=(0); + if (!($4)) { + __gcry_fips_signal_error(21906,1287,22018,1,21939); + __gcry_fips_noreturn(); + } + $5 = $0; + $6 = $1; + $7 = $2; + __gcry_randomize($5,$6,$7); + STACKTOP = sp;return; +} +function _gcry_mpi_randomize($w,$nbits,$level) { + $w = $w|0; + $nbits = $nbits|0; + $level = $level|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $nbits; + $2 = $level; + $3 = $0; + $4 = $1; + $5 = $2; + __gcry_mpi_randomize($3,$4,$5); + STACKTOP = sp;return; +} +function _gcry_create_nonce($buffer,$length) { + $buffer = $buffer|0; + $length = $length|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $buffer; + $1 = $length; + $2 = (__gcry_global_is_operational()|0); + $3 = ($2|0)!=(0); + if (!($3)) { + __gcry_fips_signal_error(21906,1340,22033,1,21939); + __gcry_fips_noreturn(); + } + $4 = $0; + $5 = $1; + __gcry_create_nonce($4,$5); + STACKTOP = sp;return; +} +function _gcry_ctx_release($ctx) { + $ctx = $ctx|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $1 = $0; + __gcry_ctx_release($1); + STACKTOP = sp;return; +} +function _gcry_set_progress_handler($cb,$cb_data) { + $cb = $cb|0; + $cb_data = $cb_data|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $cb; + $1 = $cb_data; + $2 = $0; + $3 = $1; + __gcry_set_progress_handler($2,$3); + STACKTOP = sp;return; +} +function _gcry_free($a) { + $a = $a|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $0; + __gcry_free($1); + STACKTOP = sp;return; +} +function __gcry_gettext($key) { + $key = $key|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $key; + $2 = HEAP32[17661]|0; + $3 = ($2|0)!=(0|0); + if ($3) { + $4 = HEAP32[17661]|0; + $5 = $1; + $6 = (FUNCTION_TABLE_ii[$4 & 63]($5)|0); + $0 = $6; + $8 = $0; + STACKTOP = sp;return ($8|0); + } else { + $7 = $1; + $0 = $7; + $8 = $0; + STACKTOP = sp;return ($8|0); + } + return (0)|0; +} +function __gcry_fatal_error($rc,$text) { + $rc = $rc|0; + $text = $text|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $rc; + $1 = $text; + $2 = $1; + $3 = ($2|0)!=(0|0); + if (!($3)) { + $4 = $0; + $5 = (_gpg_strerror($4)|0); + $1 = $5; + } + $6 = HEAP32[17663]|0; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = (__gcry_fips_mode()|0); + $9 = ($8|0)!=(0); + if (!($9)) { + $10 = HEAP32[17663]|0; + $11 = HEAP32[17662]|0; + $12 = $0; + $13 = $1; + FUNCTION_TABLE_viii[$10 & 127]($11,$12,$13); + } + } + $14 = $1; + __gcry_fips_signal_error(22051,86,22058,1,$14); + _write2stderr(22076); + $15 = $1; + _write2stderr($15); + _write2stderr(22507); + __gcry_secmem_term(); + _abort(); + // unreachable; +} +function _write2stderr($s) { + $s = $s|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $res = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $s; + $1 = $0; + $2 = $0; + $3 = (_strlen($2)|0); + $4 = (_write(2,$1,$3)|0); + $res = $4; + STACKTOP = sp;return; +} +function __gcry_set_log_verbosity($level) { + $level = $level|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $level; + $1 = $0; + HEAP32[17666] = $1; + STACKTOP = sp;return; +} +function __gcry_log_verbosity($level) { + $level = $level|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $level; + $1 = HEAP32[17666]|0; + $2 = $0; + $3 = ($1|0)>=($2|0); + $4 = $3&1; + STACKTOP = sp;return ($4|0); +} +function __gcry_logv($level,$fmt,$arg_ptr) { + $level = $level|0; + $fmt = $fmt|0; + $arg_ptr = $arg_ptr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $level; + $1 = $fmt; + $2 = $arg_ptr; + $3 = HEAP32[17664]|0; + $4 = ($3|0)!=(0|0); + if ($4) { + $5 = HEAP32[17664]|0; + $6 = HEAP32[17665]|0; + $7 = $0; + $8 = $1; + $9 = $2; + FUNCTION_TABLE_viiii[$5 & 63]($6,$7,$8,$9); + } else { + $10 = $0; + switch ($10|0) { + case 30: case 20: case 10: case 0: { + break; + } + case 40: { + $11 = HEAP32[3963]|0; + (_fputs(22091,$11)|0); + break; + } + case 50: { + $12 = HEAP32[3963]|0; + (_fputs(22099,$12)|0); + break; + } + case 100: { + $13 = HEAP32[3963]|0; + (_fputs(22113,$13)|0); + break; + } + default: { + $14 = HEAP32[3963]|0; + $15 = $0; + HEAP32[$vararg_buffer>>2] = $15; + (_fprintf($14,22119,$vararg_buffer)|0); + } + } + $16 = HEAP32[3963]|0; + $17 = $1; + $18 = $2; + (_vfprintf($16,$17,$18)|0); + } + $19 = $0; + $20 = ($19|0)==(40); + $21 = $0; + $22 = ($21|0)==(50); + $or$cond = $20 | $22; + if ($or$cond) { + __gcry_fips_signal_error(22051,140,22144,1,22155); + __gcry_secmem_term(); + _abort(); + // unreachable; + } else { + STACKTOP = sp;return; + } +} +function __gcry_log($level,$fmt,$varargs) { + $level = $level|0; + $fmt = $fmt|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $arg_ptr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $arg_ptr = sp; + $0 = $level; + $1 = $fmt; + HEAP32[$arg_ptr>>2] = $varargs; + $2 = $0; + $3 = $1; + __gcry_logv($2,$3,$arg_ptr); + STACKTOP = sp;return; +} +function __gcry_bug($file,$line,$func) { + $file = $file|0; + $line = $line|0; + $func = $func|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $file; + $1 = $line; + $2 = $func; + $3 = $0; + $4 = $1; + $5 = $2; + HEAP32[$vararg_buffer>>2] = $3; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $4; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $5; + __gcry_log(50,22185,$vararg_buffer); + _abort(); + // unreachable; +} +function __gcry_assert_failed($expr,$file,$line,$func) { + $expr = $expr|0; + $file = $file|0; + $line = $line|0; + $func = $func|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $expr; + $1 = $file; + $2 = $line; + $3 = $func; + $4 = $0; + $5 = $1; + $6 = $2; + $7 = $3; + HEAP32[$vararg_buffer>>2] = $4; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $5; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $6; + $vararg_ptr3 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr3>>2] = $7; + __gcry_log(50,22215,$vararg_buffer); + _abort(); + // unreachable; +} +function __gcry_log_info($fmt,$varargs) { + $fmt = $fmt|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $arg_ptr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $arg_ptr = sp; + $0 = $fmt; + HEAP32[$arg_ptr>>2] = $varargs; + $1 = $0; + __gcry_logv(10,$1,$arg_ptr); + STACKTOP = sp;return; +} +function __gcry_log_info_with_dummy_fp($fp,$fmt,$varargs) { + $fp = $fp|0; + $fmt = $fmt|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $2 = 0, $arg_ptr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $arg_ptr = sp; + $0 = $fp; + $1 = $fmt; + HEAP32[$arg_ptr>>2] = $varargs; + $2 = $1; + __gcry_logv(10,$2,$arg_ptr); + STACKTOP = sp;return 0; +} +function __gcry_log_error($fmt,$varargs) { + $fmt = $fmt|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $arg_ptr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $arg_ptr = sp; + $0 = $fmt; + HEAP32[$arg_ptr>>2] = $varargs; + $1 = $0; + __gcry_logv(30,$1,$arg_ptr); + STACKTOP = sp;return; +} +function __gcry_log_fatal($fmt,$varargs) { + $fmt = $fmt|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $arg_ptr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $arg_ptr = sp; + $0 = $fmt; + HEAP32[$arg_ptr>>2] = $varargs; + $1 = $0; + __gcry_logv(40,$1,$arg_ptr); + _abort(); + // unreachable; +} +function __gcry_log_bug($fmt,$varargs) { + $fmt = $fmt|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $arg_ptr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $arg_ptr = sp; + $0 = $fmt; + HEAP32[$arg_ptr>>2] = $varargs; + $1 = $0; + __gcry_logv(50,$1,$arg_ptr); + _abort(); + // unreachable; +} +function __gcry_log_debug($fmt,$varargs) { + $fmt = $fmt|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $arg_ptr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $arg_ptr = sp; + $0 = $fmt; + HEAP32[$arg_ptr>>2] = $varargs; + $1 = $0; + __gcry_logv(100,$1,$arg_ptr); + STACKTOP = sp;return; +} +function __gcry_log_printf($fmt,$varargs) { + $fmt = $fmt|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $arg_ptr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $arg_ptr = sp; + $0 = $fmt; + $1 = $0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + HEAP32[$arg_ptr>>2] = $varargs; + $3 = $0; + __gcry_logv(0,$3,$arg_ptr); + STACKTOP = sp;return; +} +function __gcry_log_printhex($text,$buffer,$length) { + $text = $text|0; + $buffer = $buffer|0; + $length = $length|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $text; + $1 = $buffer; + $2 = $length; + $3 = $0; + $4 = $1; + $5 = $2; + _do_printhex($3,22249,$4,$5); + STACKTOP = sp;return; +} +function _do_printhex($text,$text2,$buffer,$length) { + $text = $text|0; + $text2 = $text2|0; + $buffer = $buffer|0; + $length = $length|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $cnt = 0, $or$cond = 0, $or$cond3 = 0, $or$cond5 = 0, $p = 0, $vararg_buffer = 0, $vararg_buffer13 = 0, $vararg_buffer16 = 0, $vararg_buffer18 = 0, $vararg_buffer24 = 0, $vararg_buffer7 = 0, $vararg_buffer9 = 0, $vararg_ptr12 = 0; + var $vararg_ptr21 = 0, $vararg_ptr22 = 0, $vararg_ptr23 = 0, $vararg_ptr6 = 0, $wrap = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer24 = sp + 56|0; + $vararg_buffer18 = sp + 40|0; + $vararg_buffer16 = sp + 32|0; + $vararg_buffer13 = sp + 24|0; + $vararg_buffer9 = sp + 16|0; + $vararg_buffer7 = sp + 8|0; + $vararg_buffer = sp; + $0 = $text; + $1 = $text2; + $2 = $buffer; + $3 = $length; + $wrap = 0; + $cnt = 0; + $4 = $0; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = $0; + $7 = HEAP8[$6>>0]|0; + $8 = $7 << 24 >> 24; + $9 = ($8|0)!=(0); + if ($9) { + $wrap = 1; + $10 = $0; + $11 = $1; + HEAP32[$vararg_buffer>>2] = $10; + $vararg_ptr6 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr6>>2] = $11; + __gcry_log_debug(22251,$vararg_buffer); + $12 = $1; + $13 = ((($12)) + 1|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14 << 24 >> 24; + $16 = ($15|0)==(91); + $17 = $3; + $18 = ($17|0)!=(0); + $or$cond = $16 & $18; + $19 = $2; + $20 = ($19|0)!=(0|0); + $or$cond3 = $or$cond & $20; + if ($or$cond3) { + __gcry_log_printf(22507,$vararg_buffer7); + $1 = 22249; + $21 = $0; + $22 = (_strlen($21)|0); + HEAP32[$vararg_buffer9>>2] = $22; + $vararg_ptr12 = ((($vararg_buffer9)) + 4|0); + HEAP32[$vararg_ptr12>>2] = 76543; + __gcry_log_debug(22257,$vararg_buffer9); + } + } + } + $23 = $3; + $24 = ($23|0)!=(0); + L6: do { + if ($24) { + $25 = $2; + $p = $25; + while(1) { + $26 = $3; + $27 = (($26) + -1)|0; + $3 = $27; + $28 = ($26|0)!=(0); + if (!($28)) { + break L6; + } + $29 = $p; + $30 = HEAP8[$29>>0]|0; + $31 = $30&255; + HEAP32[$vararg_buffer13>>2] = $31; + __gcry_log_printf(22263,$vararg_buffer13); + $32 = $wrap; + $33 = ($32|0)!=(0); + if ($33) { + $34 = $cnt; + $35 = (($34) + 1)|0; + $cnt = $35; + $36 = ($35|0)==(32); + $37 = $3; + $38 = ($37|0)!=(0); + $or$cond5 = $36 & $38; + if ($or$cond5) { + $cnt = 0; + __gcry_log_printf(22268,$vararg_buffer16); + $39 = $0; + $40 = (_strlen($39)|0); + $41 = $1; + $42 = (_strlen($41)|0); + HEAP32[$vararg_buffer18>>2] = $40; + $vararg_ptr21 = ((($vararg_buffer18)) + 4|0); + HEAP32[$vararg_ptr21>>2] = 76543; + $vararg_ptr22 = ((($vararg_buffer18)) + 8|0); + HEAP32[$vararg_ptr22>>2] = $42; + $vararg_ptr23 = ((($vararg_buffer18)) + 12|0); + HEAP32[$vararg_ptr23>>2] = 76543; + __gcry_log_debug(22272,$vararg_buffer18); + } + } + $43 = $p; + $44 = ((($43)) + 1|0); + $p = $44; + } + } + } while(0); + $45 = $0; + $46 = ($45|0)!=(0|0); + if (!($46)) { + STACKTOP = sp;return; + } + __gcry_log_printf(22507,$vararg_buffer24); + STACKTOP = sp;return; +} +function __gcry_log_printmpi($text,$mpi) { + $text = $text|0; + $mpi = $mpi|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $nbits = 0, $p = 0, $prefix = 0, $rawmpi = 0, $rawmpilen = 0, $sign = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $rawmpilen = sp + 16|0; + $sign = sp + 12|0; + $nbits = sp + 8|0; + $prefix = sp + 32|0; + $0 = $text; + $1 = $mpi; + $2 = $1; + $3 = ($2|0)!=(0|0); + if (!($3)) { + $4 = $0; + $5 = ($4|0)!=(0|0); + $6 = $0; + $7 = $5 ? $6 : 22249; + _do_printhex($7,22280,0,0); + STACKTOP = sp;return; + } + $8 = $1; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = $1; + $11 = ((($10)) + 12|0); + $12 = HEAP32[$11>>2]|0; + $13 = $12 & 4; + $14 = ($13|0)!=(0); + if ($14) { + $15 = $1; + $16 = (__gcry_mpi_get_opaque($15,$nbits)|0); + $p = $16; + $17 = HEAP32[$nbits>>2]|0; + HEAP32[$vararg_buffer>>2] = $17; + (_snprintf($prefix,30,22288,$vararg_buffer)|0); + $18 = $0; + $19 = ($18|0)!=(0|0); + $20 = $0; + $21 = $19 ? $20 : 22249; + $22 = $p; + $23 = HEAP32[$nbits>>2]|0; + $24 = (($23) + 7)|0; + $25 = (($24>>>0) / 8)&-1; + _do_printhex($21,$prefix,$22,$25); + STACKTOP = sp;return; + } + } + $26 = $1; + $27 = (__gcry_mpi_get_buffer($26,0,$rawmpilen,$sign)|0); + $rawmpi = $27; + $28 = $rawmpi; + $29 = ($28|0)!=(0|0); + if (!($29)) { + $30 = $0; + $31 = ($30|0)!=(0|0); + $32 = $0; + $33 = $31 ? $32 : 22249; + _do_printhex($33,22298,0,0); + STACKTOP = sp;return; + } + $34 = HEAP32[$rawmpilen>>2]|0; + $35 = ($34|0)!=(0); + $36 = $0; + $37 = HEAP32[$sign>>2]|0; + $38 = ($37|0)!=(0); + $39 = $38 ? 22313 : 22315; + if ($35) { + $40 = $rawmpi; + $41 = HEAP32[$rawmpilen>>2]|0; + _do_printhex($36,$39,$40,$41); + } else { + _do_printhex($36,$39,76543,1); + } + $42 = $rawmpi; + __gcry_free($42); + STACKTOP = sp;return; +} +function ___gcry_burn_stack($bytes) { + $bytes = $bytes|0; + var $$alloca_mul = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $_vlen = 0, $_vptr = 0, $_vptr_long = 0, $_vset = 0, $_vset_long = 0, $buflen = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $_vset_long = sp; + $0 = $bytes; + $2 = $0; + $3 = ($2|0)!=(0); + $4 = $3 ^ 1; + $5 = $4&1; + $6 = $0; + $7 = (($5) + ($6))|0; + $8 = (($7) + 63)|0; + $9 = $8 & -64; + $buflen = $9; + $10 = $buflen; + $11 = (_llvm_stacksave()|0); + $1 = $11; + $$alloca_mul = $10; + $12 = STACKTOP; STACKTOP = STACKTOP + ((((1*$$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort();; + $_vptr = $12; + $_vlen = $10; + $_vset = 0; + $13 = $_vset; + $14 = $13&255; + $15 = $_vset_long; + $16 = $15; + HEAP32[$16>>2] = $14; + $17 = (($15) + 4)|0; + $18 = $17; + HEAP32[$18>>2] = 0; + while(1) { + $19 = $_vptr; + $20 = $19; + $21 = $20 & 7; + $22 = ($21|0)!=(0); + $23 = $_vlen; + $24 = ($23|0)!=(0); + $25 = $22 ? $24 : 0; + if (!($25)) { + break; + } + $26 = $_vset; + $27 = $_vptr; + HEAP8[$27>>0] = $26; + $28 = $_vptr; + $29 = ((($28)) + 1|0); + $_vptr = $29; + $30 = $_vlen; + $31 = (($30) + -1)|0; + $_vlen = $31; + } + $32 = $_vlen; + $33 = ($32>>>0)<(8); + if (!($33)) { + $34 = $_vset_long; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (($34) + 4)|0; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (___muldi3(($36|0),($39|0),16843009,16843009)|0); + $41 = tempRet0; + $42 = $_vset_long; + $43 = $42; + HEAP32[$43>>2] = $40; + $44 = (($42) + 4)|0; + $45 = $44; + HEAP32[$45>>2] = $41; + while(1) { + $46 = $_vptr; + $_vptr_long = $46; + $47 = $_vset_long; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + $50 = (($47) + 4)|0; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = $_vptr_long; + $54 = $53; + $55 = $54; + HEAP32[$55>>2] = $49; + $56 = (($54) + 4)|0; + $57 = $56; + HEAP32[$57>>2] = $52; + $58 = $_vlen; + $59 = (($58) - 8)|0; + $_vlen = $59; + $60 = $_vptr; + $61 = ((($60)) + 8|0); + $_vptr = $61; + $62 = $_vlen; + $63 = ($62>>>0)>=(8); + if (!($63)) { + break; + } + } + } + while(1) { + $64 = $_vlen; + $65 = ($64|0)!=(0); + if (!($65)) { + break; + } + $66 = $_vset; + $67 = $_vptr; + HEAP8[$67>>0] = $66; + $68 = $_vptr; + $69 = ((($68)) + 1|0); + $_vptr = $69; + $70 = $_vlen; + $71 = (($70) + -1)|0; + $_vlen = $71; + } + $72 = $1; + _llvm_stackrestore(($72|0)); + STACKTOP = sp;return; +} +function ___gcry_burn_stack_dummy() { + var label = 0, sp = 0; + sp = STACKTOP; + return; +} +function __gcry_divide_by_zero() { + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + _gpg_err_set_errno(33); + $0 = (___errno_location()|0); + $1 = HEAP32[$0>>2]|0; + $2 = (_gpg_err_code_from_errno($1)|0); + __gcry_fatal_error($2,22317); + // unreachable; +} +function __gcry_global_is_operational() { + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP32[17667]|0; + $1 = ($0|0)!=(0); + if (!($1)) { + _global_init(); + } + $2 = (__gcry_fips_is_operational()|0); + return ($2|0); +} +function _global_init() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $err = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $err = 0; + $0 = HEAP32[17667]|0; + $1 = ($0|0)!=(0); + if ($1) { + STACKTOP = sp;return; + } + HEAP32[17667] = 1; + __gcry_set_preferred_rng_type(0); + $2 = HEAP32[17668]|0; + __gcry_initialize_fips_mode($2); + __gcry_detect_hw_features(); + $3 = (__gcry_cipher_init()|0); + $err = $3; + $4 = $err; + $5 = ($4|0)!=(0); + if (!($5)) { + $6 = (__gcry_md_init()|0); + $err = $6; + $7 = $err; + $8 = ($7|0)!=(0); + if (!($8)) { + $9 = (__gcry_pk_init()|0); + $err = $9; + $10 = $err; + $11 = ($10|0)!=(0); + if (!($11)) { + $12 = (__gcry_primegen_init()|0); + $err = $12; + $13 = $err; + $14 = ($13|0)!=(0); + if (!($14)) { + $15 = (__gcry_secmem_module_init()|0); + $err = $15; + $16 = $err; + $17 = ($16|0)!=(0); + if (!($17)) { + $18 = (__gcry_mpi_init()|0); + $err = $18; + $19 = $err; + $20 = ($19|0)!=(0); + if (!($20)) { + STACKTOP = sp;return; + } + } + } + } + } + } + __gcry_bug(22332,123,22341); + // unreachable; +} +function __gcry_check_version($req_version) { + $req_version = $req_version|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $my_major = 0, $my_micro = 0, $my_minor = 0, $my_plvl = 0, $rq_major = 0, $rq_micro = 0, $rq_minor = 0, $ver = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $my_major = sp + 24|0; + $my_minor = sp + 20|0; + $my_micro = sp + 16|0; + $rq_major = sp + 12|0; + $rq_minor = sp + 8|0; + $rq_micro = sp + 4|0; + $1 = $req_version; + $ver = 22353; + $2 = $1; + $3 = ($2|0)!=(0|0); + if ($3) { + $4 = $1; + $5 = HEAP8[$4>>0]|0; + $6 = $5 << 24 >> 24; + $7 = ($6|0)==(1); + if ($7) { + $8 = $1; + $9 = ((($8)) + 1|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10 << 24 >> 24; + $12 = ($11|0)==(1); + if ($12) { + $13 = (__gcry_compat_identification()|0); + $0 = $13; + $51 = $0; + STACKTOP = sp;return ($51|0); + } + } + } + _global_init(); + $14 = $1; + $15 = ($14|0)!=(0|0); + $16 = $ver; + if (!($15)) { + $0 = $16; + $51 = $0; + STACKTOP = sp;return ($51|0); + } + $17 = (_parse_version_string($16,$my_major,$my_minor,$my_micro)|0); + $my_plvl = $17; + $18 = $my_plvl; + $19 = ($18|0)!=(0|0); + if (!($19)) { + $0 = 0; + $51 = $0; + STACKTOP = sp;return ($51|0); + } + $20 = $1; + $21 = (_parse_version_string($20,$rq_major,$rq_minor,$rq_micro)|0); + $22 = ($21|0)!=(0|0); + if (!($22)) { + $0 = 0; + $51 = $0; + STACKTOP = sp;return ($51|0); + } + $23 = HEAP32[$my_major>>2]|0; + $24 = HEAP32[$rq_major>>2]|0; + $25 = ($23|0)>($24|0); + do { + if (!($25)) { + $26 = HEAP32[$my_major>>2]|0; + $27 = HEAP32[$rq_major>>2]|0; + $28 = ($26|0)==($27|0); + if ($28) { + $29 = HEAP32[$my_minor>>2]|0; + $30 = HEAP32[$rq_minor>>2]|0; + $31 = ($29|0)>($30|0); + if ($31) { + break; + } + } + $32 = HEAP32[$my_major>>2]|0; + $33 = HEAP32[$rq_major>>2]|0; + $34 = ($32|0)==($33|0); + if ($34) { + $35 = HEAP32[$my_minor>>2]|0; + $36 = HEAP32[$rq_minor>>2]|0; + $37 = ($35|0)==($36|0); + if ($37) { + $38 = HEAP32[$my_micro>>2]|0; + $39 = HEAP32[$rq_micro>>2]|0; + $40 = ($38|0)>($39|0); + if ($40) { + break; + } + } + } + $41 = HEAP32[$my_major>>2]|0; + $42 = HEAP32[$rq_major>>2]|0; + $43 = ($41|0)==($42|0); + if ($43) { + $44 = HEAP32[$my_minor>>2]|0; + $45 = HEAP32[$rq_minor>>2]|0; + $46 = ($44|0)==($45|0); + if ($46) { + $47 = HEAP32[$my_micro>>2]|0; + $48 = HEAP32[$rq_micro>>2]|0; + $49 = ($47|0)==($48|0); + if ($49) { + break; + } + } + } + $0 = 0; + $51 = $0; + STACKTOP = sp;return ($51|0); + } + } while(0); + $50 = $ver; + $0 = $50; + $51 = $0; + STACKTOP = sp;return ($51|0); +} +function _parse_version_string($s,$major,$minor,$micro) { + $s = $s|0; + $major = $major|0; + $minor = $minor|0; + $micro = $micro|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $s; + $2 = $major; + $3 = $minor; + $4 = $micro; + $5 = $1; + $6 = $2; + $7 = (_parse_version_number($5,$6)|0); + $1 = $7; + $8 = $1; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = $1; + $11 = HEAP8[$10>>0]|0; + $12 = $11 << 24 >> 24; + $13 = ($12|0)!=(46); + if (!($13)) { + $14 = $1; + $15 = ((($14)) + 1|0); + $1 = $15; + $16 = $1; + $17 = $3; + $18 = (_parse_version_number($16,$17)|0); + $1 = $18; + $19 = $1; + $20 = ($19|0)!=(0|0); + if ($20) { + $21 = $1; + $22 = HEAP8[$21>>0]|0; + $23 = $22 << 24 >> 24; + $24 = ($23|0)!=(46); + if (!($24)) { + $25 = $1; + $26 = ((($25)) + 1|0); + $1 = $26; + $27 = $1; + $28 = $4; + $29 = (_parse_version_number($27,$28)|0); + $1 = $29; + $30 = $1; + $31 = ($30|0)!=(0|0); + if ($31) { + $32 = $1; + $0 = $32; + $33 = $0; + STACKTOP = sp;return ($33|0); + } else { + $0 = 0; + $33 = $0; + STACKTOP = sp;return ($33|0); + } + } + } + $0 = 0; + $33 = $0; + STACKTOP = sp;return ($33|0); + } + } + $0 = 0; + $33 = $0; + STACKTOP = sp;return ($33|0); +} +function _parse_version_number($s,$number) { + $s = $s|0; + $number = $number|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $val = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $s; + $2 = $number; + $val = 0; + $3 = $1; + $4 = HEAP8[$3>>0]|0; + $5 = $4 << 24 >> 24; + $6 = ($5|0)==(48); + if ($6) { + $7 = $1; + $8 = ((($7)) + 1|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9 << 24 >> 24; + $11 = (_isdigit($10)|0); + $12 = ($11|0)!=(0); + if ($12) { + $0 = 0; + $33 = $0; + STACKTOP = sp;return ($33|0); + } + } + while(1) { + $13 = $1; + $14 = HEAP8[$13>>0]|0; + $15 = $14 << 24 >> 24; + $16 = (_isdigit($15)|0); + $17 = ($16|0)!=(0); + $18 = $val; + if (!($17)) { + break; + } + $19 = ($18*10)|0; + $val = $19; + $20 = $1; + $21 = HEAP8[$20>>0]|0; + $22 = $21 << 24 >> 24; + $23 = (($22) - 48)|0; + $24 = $val; + $25 = (($24) + ($23))|0; + $val = $25; + $26 = $1; + $27 = ((($26)) + 1|0); + $1 = $27; + } + $28 = $2; + HEAP32[$28>>2] = $18; + $29 = $val; + $30 = ($29|0)<(0); + $31 = $1; + $32 = $30 ? 0 : $31; + $0 = $32; + $33 = $0; + STACKTOP = sp;return ($33|0); +} +function __gcry_vcontrol($cmd,$arg_ptr) { + $cmd = $cmd|0; + $arg_ptr = $arg_ptr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; + var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; + var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; + var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; + var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $arglist_current = 0, $arglist_current12 = 0, $arglist_current15 = 0, $arglist_current18 = 0, $arglist_current21 = 0, $arglist_current24 = 0, $arglist_current27 = 0, $arglist_current3 = 0, $arglist_current30 = 0, $arglist_current33 = 0, $arglist_current36 = 0, $arglist_current39 = 0, $arglist_current42 = 0, $arglist_current45 = 0, $arglist_current48 = 0, $arglist_current51 = 0; + var $arglist_current54 = 0, $arglist_current57 = 0, $arglist_current6 = 0, $arglist_current60 = 0, $arglist_current63 = 0, $arglist_current66 = 0, $arglist_current69 = 0, $arglist_current9 = 0, $arglist_next = 0, $arglist_next10 = 0, $arglist_next13 = 0, $arglist_next16 = 0, $arglist_next19 = 0, $arglist_next22 = 0, $arglist_next25 = 0, $arglist_next28 = 0, $arglist_next31 = 0, $arglist_next34 = 0, $arglist_next37 = 0, $arglist_next4 = 0; + var $arglist_next40 = 0, $arglist_next43 = 0, $arglist_next46 = 0, $arglist_next49 = 0, $arglist_next52 = 0, $arglist_next55 = 0, $arglist_next58 = 0, $arglist_next61 = 0, $arglist_next64 = 0, $arglist_next67 = 0, $arglist_next7 = 0, $arglist_next70 = 0, $buffer = 0, $buflen = 0, $ctx = 0, $ctx1 = 0, $dt = 0, $dtlen = 0, $expanded = 0, $expanded101 = 0; + var $expanded102 = 0, $expanded103 = 0, $expanded105 = 0, $expanded106 = 0, $expanded108 = 0, $expanded109 = 0, $expanded110 = 0, $expanded112 = 0, $expanded113 = 0, $expanded115 = 0, $expanded116 = 0, $expanded117 = 0, $expanded119 = 0, $expanded120 = 0, $expanded122 = 0, $expanded123 = 0, $expanded124 = 0, $expanded126 = 0, $expanded127 = 0, $expanded129 = 0; + var $expanded130 = 0, $expanded131 = 0, $expanded133 = 0, $expanded134 = 0, $expanded136 = 0, $expanded137 = 0, $expanded138 = 0, $expanded140 = 0, $expanded141 = 0, $expanded143 = 0, $expanded144 = 0, $expanded145 = 0, $expanded147 = 0, $expanded148 = 0, $expanded150 = 0, $expanded151 = 0, $expanded152 = 0, $expanded154 = 0, $expanded155 = 0, $expanded157 = 0; + var $expanded158 = 0, $expanded159 = 0, $expanded161 = 0, $expanded162 = 0, $expanded164 = 0, $expanded165 = 0, $expanded166 = 0, $expanded168 = 0, $expanded169 = 0, $expanded171 = 0, $expanded172 = 0, $expanded173 = 0, $expanded175 = 0, $expanded176 = 0, $expanded178 = 0, $expanded179 = 0, $expanded180 = 0, $expanded182 = 0, $expanded183 = 0, $expanded185 = 0; + var $expanded186 = 0, $expanded187 = 0, $expanded189 = 0, $expanded190 = 0, $expanded192 = 0, $expanded193 = 0, $expanded194 = 0, $expanded196 = 0, $expanded197 = 0, $expanded199 = 0, $expanded200 = 0, $expanded201 = 0, $expanded203 = 0, $expanded204 = 0, $expanded206 = 0, $expanded207 = 0, $expanded208 = 0, $expanded210 = 0, $expanded211 = 0, $expanded213 = 0; + var $expanded214 = 0, $expanded215 = 0, $expanded217 = 0, $expanded218 = 0, $expanded220 = 0, $expanded221 = 0, $expanded222 = 0, $expanded224 = 0, $expanded225 = 0, $expanded227 = 0, $expanded228 = 0, $expanded229 = 0, $expanded231 = 0, $expanded232 = 0, $expanded234 = 0, $expanded235 = 0, $expanded236 = 0, $expanded71 = 0, $expanded73 = 0, $expanded74 = 0; + var $expanded75 = 0, $expanded77 = 0, $expanded78 = 0, $expanded80 = 0, $expanded81 = 0, $expanded82 = 0, $expanded84 = 0, $expanded85 = 0, $expanded87 = 0, $expanded88 = 0, $expanded89 = 0, $expanded91 = 0, $expanded92 = 0, $expanded94 = 0, $expanded95 = 0, $expanded96 = 0, $expanded98 = 0, $expanded99 = 0, $flags = 0, $fp = 0; + var $i = 0, $ip = 0, $key = 0, $keylen = 0, $name = 0, $or$cond = 0, $rc = 0, $rctx = 0, $seed = 0, $seedlen = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $cmd; + $1 = $arg_ptr; + $rc = 0; + $2 = $0; + do { + switch ($2|0) { + case 31: { + __gcry_private_enable_m_guard(); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 44: { + __gcry_set_preferred_rng_type(0); + __gcry_enable_quick_random_gen(); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 51: { + $3 = (__gcry_random_is_faked()|0); + $4 = ($3|0)!=(0); + if (!($4)) { + $283 = $rc; + STACKTOP = sp;return ($283|0); + } + $rc = 1; + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 13: { + __gcry_random_dump_stats(); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 14: { + __gcry_secmem_dump_stats(); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 30: { + _global_init(); + __gcry_secmem_init(0); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 37: { + _global_init(); + HEAP32[17669] = 1; + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 24: { + _global_init(); + $5 = $1; + $arglist_current = HEAP32[$5>>2]|0; + $6 = $arglist_current; + $7 = ((0) + 4|0); + $expanded71 = $7; + $expanded = (($expanded71) - 1)|0; + $8 = (($6) + ($expanded))|0; + $9 = ((0) + 4|0); + $expanded75 = $9; + $expanded74 = (($expanded75) - 1)|0; + $expanded73 = $expanded74 ^ -1; + $10 = $8 & $expanded73; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $arglist_next = ((($11)) + 4|0); + HEAP32[$5>>2] = $arglist_next; + __gcry_secmem_init($12); + $13 = (__gcry_secmem_get_flags()|0); + $14 = $13 & 4; + $15 = ($14|0)!=(0); + if (!($15)) { + $283 = $rc; + STACKTOP = sp;return ($283|0); + } + $rc = 1; + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 25: { + _global_init(); + __gcry_secmem_term(); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 27: { + __gcry_set_preferred_rng_type(0); + $16 = (__gcry_secmem_get_flags()|0); + $17 = $16 | 1; + __gcry_secmem_set_flags($17); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 28: { + __gcry_set_preferred_rng_type(0); + $18 = (__gcry_secmem_get_flags()|0); + $19 = $18 | 2; + __gcry_secmem_set_flags($19); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 29: { + __gcry_set_preferred_rng_type(0); + $20 = (__gcry_secmem_get_flags()|0); + $21 = $20 & -3; + __gcry_secmem_set_flags($21); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 22: { + _global_init(); + __gcry_secure_random_alloc(); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 45: { + __gcry_set_preferred_rng_type(0); + $22 = $1; + $arglist_current3 = HEAP32[$22>>2]|0; + $23 = $arglist_current3; + $24 = ((0) + 4|0); + $expanded78 = $24; + $expanded77 = (($expanded78) - 1)|0; + $25 = (($23) + ($expanded77))|0; + $26 = ((0) + 4|0); + $expanded82 = $26; + $expanded81 = (($expanded82) - 1)|0; + $expanded80 = $expanded81 ^ -1; + $27 = $25 & $expanded80; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $arglist_next4 = ((($28)) + 4|0); + HEAP32[$22>>2] = $arglist_next4; + __gcry_set_random_seed_file($29); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 46: { + __gcry_set_preferred_rng_type(0); + $30 = (__gcry_global_is_operational()|0); + $31 = ($30|0)!=(0); + if (!($31)) { + $283 = $rc; + STACKTOP = sp;return ($283|0); + } + __gcry_update_random_seed_file(); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 19: { + __gcry_set_preferred_rng_type(0); + $32 = $1; + $arglist_current6 = HEAP32[$32>>2]|0; + $33 = $arglist_current6; + $34 = ((0) + 4|0); + $expanded85 = $34; + $expanded84 = (($expanded85) - 1)|0; + $35 = (($33) + ($expanded84))|0; + $36 = ((0) + 4|0); + $expanded89 = $36; + $expanded88 = (($expanded89) - 1)|0; + $expanded87 = $expanded88 ^ -1; + $37 = $35 & $expanded87; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $arglist_next7 = ((($38)) + 4|0); + HEAP32[$32>>2] = $arglist_next7; + __gcry_set_log_verbosity($39); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 20: { + $40 = $1; + $arglist_current9 = HEAP32[$40>>2]|0; + $41 = $arglist_current9; + $42 = ((0) + 4|0); + $expanded92 = $42; + $expanded91 = (($expanded92) - 1)|0; + $43 = (($41) + ($expanded91))|0; + $44 = ((0) + 4|0); + $expanded96 = $44; + $expanded95 = (($expanded96) - 1)|0; + $expanded94 = $expanded95 ^ -1; + $45 = $43 & $expanded94; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $arglist_next10 = ((($46)) + 4|0); + HEAP32[$40>>2] = $arglist_next10; + $48 = HEAP32[17670]|0; + $49 = $48 | $47; + HEAP32[17670] = $49; + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 21: { + $50 = $1; + $arglist_current12 = HEAP32[$50>>2]|0; + $51 = $arglist_current12; + $52 = ((0) + 4|0); + $expanded99 = $52; + $expanded98 = (($expanded99) - 1)|0; + $53 = (($51) + ($expanded98))|0; + $54 = ((0) + 4|0); + $expanded103 = $54; + $expanded102 = (($expanded103) - 1)|0; + $expanded101 = $expanded102 ^ -1; + $55 = $53 & $expanded101; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + $arglist_next13 = ((($56)) + 4|0); + HEAP32[$50>>2] = $arglist_next13; + $58 = $57 ^ -1; + $59 = HEAP32[17670]|0; + $60 = $59 & $58; + HEAP32[17670] = $60; + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 36: { + _global_init(); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 40: { + $61 = HEAP32[17667]|0; + $62 = ($61|0)!=(0); + if (!($62)) { + $283 = $rc; + STACKTOP = sp;return ($283|0); + } + $rc = 1; + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 39: { + $63 = HEAP32[17671]|0; + $64 = ($63|0)!=(0); + if (!($64)) { + $283 = $rc; + STACKTOP = sp;return ($283|0); + } + $rc = 1; + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 38: { + $65 = HEAP32[17671]|0; + $66 = ($65|0)!=(0); + if ($66) { + $283 = $rc; + STACKTOP = sp;return ($283|0); + } + _global_init(); + __gcry_random_initialize(0); + HEAP32[17671] = 1; + (__gcry_global_is_operational()|0); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 47: { + __gcry_set_preferred_rng_type(0); + _global_init(); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 48: { + __gcry_set_preferred_rng_type(0); + __gcry_random_initialize(1); + $67 = (__gcry_global_is_operational()|0); + $68 = ($67|0)!=(0); + if (!($68)) { + $283 = $rc; + STACKTOP = sp;return ($283|0); + } + __gcry_fast_random_poll(); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 52: { + $69 = (_gpg_error_398(60)|0); + $rc = $69; + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 49: { + __gcry_set_preferred_rng_type(0); + $70 = $1; + $arglist_current15 = HEAP32[$70>>2]|0; + $71 = $arglist_current15; + $72 = ((0) + 4|0); + $expanded106 = $72; + $expanded105 = (($expanded106) - 1)|0; + $73 = (($71) + ($expanded105))|0; + $74 = ((0) + 4|0); + $expanded110 = $74; + $expanded109 = (($expanded110) - 1)|0; + $expanded108 = $expanded109 ^ -1; + $75 = $73 & $expanded108; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $arglist_next16 = ((($76)) + 4|0); + HEAP32[$70>>2] = $arglist_next16; + __gcry_set_random_daemon_socket($77); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 50: { + __gcry_set_preferred_rng_type(0); + __gcry_random_initialize(1); + $78 = $1; + $arglist_current18 = HEAP32[$78>>2]|0; + $79 = $arglist_current18; + $80 = ((0) + 4|0); + $expanded113 = $80; + $expanded112 = (($expanded113) - 1)|0; + $81 = (($79) + ($expanded112))|0; + $82 = ((0) + 4|0); + $expanded117 = $82; + $expanded116 = (($expanded117) - 1)|0; + $expanded115 = $expanded116 ^ -1; + $83 = $81 & $expanded115; + $84 = $83; + $85 = HEAP32[$84>>2]|0; + $arglist_next19 = ((($84)) + 4|0); + HEAP32[$78>>2] = $arglist_next19; + $86 = ($85|0)!=(0); + $87 = $86 ^ 1; + $88 = $87 ^ 1; + $89 = $88&1; + (__gcry_use_random_daemon($89)|0); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 70: { + __gcry_random_close_fds(); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 53: { + $90 = $1; + $arglist_current21 = HEAP32[$90>>2]|0; + $91 = $arglist_current21; + $92 = ((0) + 4|0); + $expanded120 = $92; + $expanded119 = (($expanded120) - 1)|0; + $93 = (($91) + ($expanded119))|0; + $94 = ((0) + 4|0); + $expanded124 = $94; + $expanded123 = (($expanded124) - 1)|0; + $expanded122 = $expanded123 ^ -1; + $95 = $93 & $expanded122; + $96 = $95; + $97 = HEAP32[$96>>2]|0; + $arglist_next22 = ((($96)) + 4|0); + HEAP32[$90>>2] = $arglist_next22; + $fp = $97; + __gcry_set_preferred_rng_type(0); + $98 = $fp; + $99 = ($98|0)!=(0|0); + $100 = $99 ? 55 : 54; + $101 = $fp; + _print_config($100,$101); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 54: { + __gcry_set_preferred_rng_type(0); + $102 = (__gcry_fips_test_operational()|0); + $103 = ($102|0)!=(0); + if (!($103)) { + $283 = $rc; + STACKTOP = sp;return ($283|0); + } + $rc = 1; + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 55: { + $104 = (__gcry_fips_mode()|0); + $105 = ($104|0)!=(0); + if (!($105)) { + $283 = $rc; + STACKTOP = sp;return ($283|0); + } + $106 = (__gcry_is_fips_mode_inactive()|0); + $107 = ($106|0)!=(0); + $108 = HEAP32[17669]|0; + $109 = ($108|0)!=(0); + $or$cond = $107 | $109; + if ($or$cond) { + $283 = $rc; + STACKTOP = sp;return ($283|0); + } + $rc = 1; + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 56: { + __gcry_set_preferred_rng_type(0); + $110 = HEAP32[17667]|0; + $111 = ($110|0)!=(0); + if (!($111)) { + HEAP32[17668] = 1; + $283 = $rc; + STACKTOP = sp;return ($283|0); + } + $112 = (__gcry_fips_test_error_or_operational()|0); + $113 = ($112|0)!=(0); + if ($113) { + (__gcry_fips_run_selftests(1)|0); + } + $114 = (__gcry_fips_is_operational()|0); + $115 = ($114|0)!=(0); + if (!($115)) { + $283 = $rc; + STACKTOP = sp;return ($283|0); + } + $rc = 1; + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 57: { + _global_init(); + $116 = (__gcry_fips_run_selftests(1)|0); + $rc = $116; + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 58: { + $117 = $1; + $arglist_current24 = HEAP32[$117>>2]|0; + $118 = $arglist_current24; + $119 = ((0) + 4|0); + $expanded127 = $119; + $expanded126 = (($expanded127) - 1)|0; + $120 = (($118) + ($expanded126))|0; + $121 = ((0) + 4|0); + $expanded131 = $121; + $expanded130 = (($expanded131) - 1)|0; + $expanded129 = $expanded130 ^ -1; + $122 = $120 & $expanded129; + $123 = $122; + $124 = HEAP32[$123>>2]|0; + $arglist_next25 = ((($123)) + 4|0); + HEAP32[$117>>2] = $arglist_next25; + $rctx = $124; + $125 = $1; + $arglist_current27 = HEAP32[$125>>2]|0; + $126 = $arglist_current27; + $127 = ((0) + 4|0); + $expanded134 = $127; + $expanded133 = (($expanded134) - 1)|0; + $128 = (($126) + ($expanded133))|0; + $129 = ((0) + 4|0); + $expanded138 = $129; + $expanded137 = (($expanded138) - 1)|0; + $expanded136 = $expanded137 ^ -1; + $130 = $128 & $expanded136; + $131 = $130; + $132 = HEAP32[$131>>2]|0; + $arglist_next28 = ((($131)) + 4|0); + HEAP32[$125>>2] = $arglist_next28; + $flags = $132; + $133 = $1; + $arglist_current30 = HEAP32[$133>>2]|0; + $134 = $arglist_current30; + $135 = ((0) + 4|0); + $expanded141 = $135; + $expanded140 = (($expanded141) - 1)|0; + $136 = (($134) + ($expanded140))|0; + $137 = ((0) + 4|0); + $expanded145 = $137; + $expanded144 = (($expanded145) - 1)|0; + $expanded143 = $expanded144 ^ -1; + $138 = $136 & $expanded143; + $139 = $138; + $140 = HEAP32[$139>>2]|0; + $arglist_next31 = ((($139)) + 4|0); + HEAP32[$133>>2] = $arglist_next31; + $key = $140; + $141 = $1; + $arglist_current33 = HEAP32[$141>>2]|0; + $142 = $arglist_current33; + $143 = ((0) + 4|0); + $expanded148 = $143; + $expanded147 = (($expanded148) - 1)|0; + $144 = (($142) + ($expanded147))|0; + $145 = ((0) + 4|0); + $expanded152 = $145; + $expanded151 = (($expanded152) - 1)|0; + $expanded150 = $expanded151 ^ -1; + $146 = $144 & $expanded150; + $147 = $146; + $148 = HEAP32[$147>>2]|0; + $arglist_next34 = ((($147)) + 4|0); + HEAP32[$141>>2] = $arglist_next34; + $keylen = $148; + $149 = $1; + $arglist_current36 = HEAP32[$149>>2]|0; + $150 = $arglist_current36; + $151 = ((0) + 4|0); + $expanded155 = $151; + $expanded154 = (($expanded155) - 1)|0; + $152 = (($150) + ($expanded154))|0; + $153 = ((0) + 4|0); + $expanded159 = $153; + $expanded158 = (($expanded159) - 1)|0; + $expanded157 = $expanded158 ^ -1; + $154 = $152 & $expanded157; + $155 = $154; + $156 = HEAP32[$155>>2]|0; + $arglist_next37 = ((($155)) + 4|0); + HEAP32[$149>>2] = $arglist_next37; + $seed = $156; + $157 = $1; + $arglist_current39 = HEAP32[$157>>2]|0; + $158 = $arglist_current39; + $159 = ((0) + 4|0); + $expanded162 = $159; + $expanded161 = (($expanded162) - 1)|0; + $160 = (($158) + ($expanded161))|0; + $161 = ((0) + 4|0); + $expanded166 = $161; + $expanded165 = (($expanded166) - 1)|0; + $expanded164 = $expanded165 ^ -1; + $162 = $160 & $expanded164; + $163 = $162; + $164 = HEAP32[$163>>2]|0; + $arglist_next40 = ((($163)) + 4|0); + HEAP32[$157>>2] = $arglist_next40; + $seedlen = $164; + $165 = $1; + $arglist_current42 = HEAP32[$165>>2]|0; + $166 = $arglist_current42; + $167 = ((0) + 4|0); + $expanded169 = $167; + $expanded168 = (($expanded169) - 1)|0; + $168 = (($166) + ($expanded168))|0; + $169 = ((0) + 4|0); + $expanded173 = $169; + $expanded172 = (($expanded173) - 1)|0; + $expanded171 = $expanded172 ^ -1; + $170 = $168 & $expanded171; + $171 = $170; + $172 = HEAP32[$171>>2]|0; + $arglist_next43 = ((($171)) + 4|0); + HEAP32[$165>>2] = $arglist_next43; + $dt = $172; + $173 = $1; + $arglist_current45 = HEAP32[$173>>2]|0; + $174 = $arglist_current45; + $175 = ((0) + 4|0); + $expanded176 = $175; + $expanded175 = (($expanded176) - 1)|0; + $176 = (($174) + ($expanded175))|0; + $177 = ((0) + 4|0); + $expanded180 = $177; + $expanded179 = (($expanded180) - 1)|0; + $expanded178 = $expanded179 ^ -1; + $178 = $176 & $expanded178; + $179 = $178; + $180 = HEAP32[$179>>2]|0; + $arglist_next46 = ((($179)) + 4|0); + HEAP32[$173>>2] = $arglist_next46; + $dtlen = $180; + $181 = (__gcry_global_is_operational()|0); + $182 = ($181|0)!=(0); + if ($182) { + $183 = $rctx; + $184 = $flags; + $185 = $key; + $186 = $keylen; + $187 = $seed; + $188 = $seedlen; + $189 = $dt; + $190 = $dtlen; + $191 = (__gcry_random_init_external_test($183,$184,$185,$186,$187,$188,$189,$190)|0); + $rc = $191; + $283 = $rc; + STACKTOP = sp;return ($283|0); + } else { + $rc = 176; + $283 = $rc; + STACKTOP = sp;return ($283|0); + } + break; + } + case 59: { + $192 = $1; + $arglist_current48 = HEAP32[$192>>2]|0; + $193 = $arglist_current48; + $194 = ((0) + 4|0); + $expanded183 = $194; + $expanded182 = (($expanded183) - 1)|0; + $195 = (($193) + ($expanded182))|0; + $196 = ((0) + 4|0); + $expanded187 = $196; + $expanded186 = (($expanded187) - 1)|0; + $expanded185 = $expanded186 ^ -1; + $197 = $195 & $expanded185; + $198 = $197; + $199 = HEAP32[$198>>2]|0; + $arglist_next49 = ((($198)) + 4|0); + HEAP32[$192>>2] = $arglist_next49; + $ctx = $199; + $200 = $1; + $arglist_current51 = HEAP32[$200>>2]|0; + $201 = $arglist_current51; + $202 = ((0) + 4|0); + $expanded190 = $202; + $expanded189 = (($expanded190) - 1)|0; + $203 = (($201) + ($expanded189))|0; + $204 = ((0) + 4|0); + $expanded194 = $204; + $expanded193 = (($expanded194) - 1)|0; + $expanded192 = $expanded193 ^ -1; + $205 = $203 & $expanded192; + $206 = $205; + $207 = HEAP32[$206>>2]|0; + $arglist_next52 = ((($206)) + 4|0); + HEAP32[$200>>2] = $arglist_next52; + $buffer = $207; + $208 = $1; + $arglist_current54 = HEAP32[$208>>2]|0; + $209 = $arglist_current54; + $210 = ((0) + 4|0); + $expanded197 = $210; + $expanded196 = (($expanded197) - 1)|0; + $211 = (($209) + ($expanded196))|0; + $212 = ((0) + 4|0); + $expanded201 = $212; + $expanded200 = (($expanded201) - 1)|0; + $expanded199 = $expanded200 ^ -1; + $213 = $211 & $expanded199; + $214 = $213; + $215 = HEAP32[$214>>2]|0; + $arglist_next55 = ((($214)) + 4|0); + HEAP32[$208>>2] = $arglist_next55; + $buflen = $215; + $216 = (__gcry_global_is_operational()|0); + $217 = ($216|0)!=(0); + if ($217) { + $218 = $ctx; + $219 = $buffer; + $220 = $buflen; + $221 = (__gcry_random_run_external_test($218,$219,$220)|0); + $rc = $221; + $283 = $rc; + STACKTOP = sp;return ($283|0); + } else { + $rc = 176; + $283 = $rc; + STACKTOP = sp;return ($283|0); + } + break; + } + case 60: { + $222 = $1; + $arglist_current57 = HEAP32[$222>>2]|0; + $223 = $arglist_current57; + $224 = ((0) + 4|0); + $expanded204 = $224; + $expanded203 = (($expanded204) - 1)|0; + $225 = (($223) + ($expanded203))|0; + $226 = ((0) + 4|0); + $expanded208 = $226; + $expanded207 = (($expanded208) - 1)|0; + $expanded206 = $expanded207 ^ -1; + $227 = $225 & $expanded206; + $228 = $227; + $229 = HEAP32[$228>>2]|0; + $arglist_next58 = ((($228)) + 4|0); + HEAP32[$222>>2] = $arglist_next58; + $ctx1 = $229; + $230 = $ctx1; + __gcry_random_deinit_external_test($230); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 61: { + $231 = $1; + $arglist_current60 = HEAP32[$231>>2]|0; + $232 = $arglist_current60; + $233 = ((0) + 4|0); + $expanded211 = $233; + $expanded210 = (($expanded211) - 1)|0; + $234 = (($232) + ($expanded210))|0; + $235 = ((0) + 4|0); + $expanded215 = $235; + $expanded214 = (($expanded215) - 1)|0; + $expanded213 = $expanded214 ^ -1; + $236 = $234 & $expanded213; + $237 = $236; + $238 = HEAP32[$237>>2]|0; + $arglist_next61 = ((($237)) + 4|0); + HEAP32[$231>>2] = $arglist_next61; + $239 = (_external_lock_test($238)|0); + $rc = $239; + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 63: { + $240 = $1; + $arglist_current63 = HEAP32[$240>>2]|0; + $241 = $arglist_current63; + $242 = ((0) + 4|0); + $expanded218 = $242; + $expanded217 = (($expanded218) - 1)|0; + $243 = (($241) + ($expanded217))|0; + $244 = ((0) + 4|0); + $expanded222 = $244; + $expanded221 = (($expanded222) - 1)|0; + $expanded220 = $expanded221 ^ -1; + $245 = $243 & $expanded220; + $246 = $245; + $247 = HEAP32[$246>>2]|0; + $arglist_next64 = ((($246)) + 4|0); + HEAP32[$240>>2] = $arglist_next64; + $name = $247; + $248 = $name; + $249 = (__gcry_disable_hw_feature($248)|0); + $rc = $249; + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 64: { + $250 = HEAP32[17667]|0; + $251 = ($250|0)!=(0); + if ($251) { + $rc = 1; + $283 = $rc; + STACKTOP = sp;return ($283|0); + } else { + __gcry_set_preferred_rng_type(0); + __gcry_set_enforced_fips_mode(); + $283 = $rc; + STACKTOP = sp;return ($283|0); + } + break; + } + case 65: { + $252 = $1; + $arglist_current66 = HEAP32[$252>>2]|0; + $253 = $arglist_current66; + $254 = ((0) + 4|0); + $expanded225 = $254; + $expanded224 = (($expanded225) - 1)|0; + $255 = (($253) + ($expanded224))|0; + $256 = ((0) + 4|0); + $expanded229 = $256; + $expanded228 = (($expanded229) - 1)|0; + $expanded227 = $expanded228 ^ -1; + $257 = $255 & $expanded227; + $258 = $257; + $259 = HEAP32[$258>>2]|0; + $arglist_next67 = ((($258)) + 4|0); + HEAP32[$252>>2] = $arglist_next67; + $i = $259; + $260 = $i; + $261 = ($260|0)>(0); + if (!($261)) { + $283 = $rc; + STACKTOP = sp;return ($283|0); + } + $262 = $i; + __gcry_set_preferred_rng_type($262); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 66: { + $263 = $1; + $arglist_current69 = HEAP32[$263>>2]|0; + $264 = $arglist_current69; + $265 = ((0) + 4|0); + $expanded232 = $265; + $expanded231 = (($expanded232) - 1)|0; + $266 = (($264) + ($expanded231))|0; + $267 = ((0) + 4|0); + $expanded236 = $267; + $expanded235 = (($expanded236) - 1)|0; + $expanded234 = $expanded235 ^ -1; + $268 = $266 & $expanded234; + $269 = $268; + $270 = HEAP32[$269>>2]|0; + $arglist_next70 = ((($269)) + 4|0); + HEAP32[$263>>2] = $arglist_next70; + $ip = $270; + $271 = $ip; + $272 = ($271|0)!=(0|0); + if (!($272)) { + $283 = $rc; + STACKTOP = sp;return ($283|0); + } + $273 = HEAP32[17667]|0; + $274 = ($273|0)!=(0); + $275 = $274 ^ 1; + $276 = $275&1; + $277 = (__gcry_get_rng_type($276)|0); + $278 = $ip; + HEAP32[$278>>2] = $277; + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 67: { + __gcry_set_preferred_rng_type(0); + $279 = (__gcry_secmem_get_flags()|0); + $280 = $279 | 8; + __gcry_secmem_set_flags($280); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 68: { + __gcry_set_preferred_rng_type(0); + $281 = (__gcry_secmem_get_flags()|0); + $282 = $281 | 16; + __gcry_secmem_set_flags($282); + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 72: case 71: { + $rc = 69; + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + case 62: case 23: { + $283 = $rc; + STACKTOP = sp;return ($283|0); + break; + } + default: { + __gcry_set_preferred_rng_type(0); + $rc = 61; + $283 = $rc; + STACKTOP = sp;return ($283|0); + } + } + } while(0); + return (0)|0; +} +function _gpg_error_398($code) { + $code = $code|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $code; + $1 = $0; + $2 = (_gpg_err_make_399(1,$1)|0); + STACKTOP = sp;return ($2|0); +} +function _gpg_err_make_399($source,$code) { + $source = $source|0; + $code = $code|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $source; + $1 = $code; + $2 = $1; + $3 = ($2|0)==(0); + if ($3) { + $10 = 0; + STACKTOP = sp;return ($10|0); + } + $4 = $0; + $5 = $4 & 127; + $6 = $5 << 24; + $7 = $1; + $8 = $7 & 65535; + $9 = $6 | $8; + $10 = $9; + STACKTOP = sp;return ($10|0); +} +function _print_config($fnc,$fp) { + $fnc = $fnc|0; + $fp = $fp|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $afeature = 0, $hwfeatures = 0, $i = 0, $s = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer13 = 0, $vararg_buffer16 = 0, $vararg_buffer19 = 0, $vararg_buffer23 = 0, $vararg_buffer26 = 0, $vararg_buffer30 = 0; + var $vararg_buffer33 = 0, $vararg_buffer38 = 0, $vararg_buffer5 = 0, $vararg_buffer9 = 0, $vararg_ptr36 = 0, $vararg_ptr41 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer38 = sp + 88|0; + $vararg_buffer33 = sp + 80|0; + $vararg_buffer30 = sp + 72|0; + $vararg_buffer26 = sp + 64|0; + $vararg_buffer23 = sp + 56|0; + $vararg_buffer19 = sp + 48|0; + $vararg_buffer16 = sp + 40|0; + $vararg_buffer13 = sp + 32|0; + $vararg_buffer9 = sp + 24|0; + $vararg_buffer5 = sp + 16|0; + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $afeature = sp + 104|0; + $0 = $fnc; + $1 = $fp; + $2 = $0; + $3 = $1; + HEAP32[$vararg_buffer>>2] = 22353; + (FUNCTION_TABLE_iiii[$2 & 127]($3,22367,$vararg_buffer)|0); + $4 = $0; + $5 = $1; + HEAP32[$vararg_buffer1>>2] = 22393; + (FUNCTION_TABLE_iiii[$4 & 127]($5,22380,$vararg_buffer1)|0); + $6 = $0; + $7 = $1; + HEAP32[$vararg_buffer5>>2] = 22418; + (FUNCTION_TABLE_iiii[$6 & 127]($7,22405,$vararg_buffer5)|0); + $8 = $0; + $9 = $1; + HEAP32[$vararg_buffer9>>2] = 22439; + (FUNCTION_TABLE_iiii[$8 & 127]($9,22426,$vararg_buffer9)|0); + $10 = $0; + $11 = $1; + (FUNCTION_TABLE_iiii[$10 & 127]($11,22453,$vararg_buffer13)|0); + $12 = $0; + $13 = $1; + (FUNCTION_TABLE_iiii[$12 & 127]($13,22469,$vararg_buffer16)|0); + $14 = $0; + $15 = $1; + $16 = (__gcry_mpi_get_hw_config()|0); + HEAP32[$vararg_buffer19>>2] = $16; + (FUNCTION_TABLE_iiii[$14 & 127]($15,22481,$vararg_buffer19)|0); + $17 = (__gcry_get_hw_features()|0); + $hwfeatures = $17; + $18 = $0; + $19 = $1; + (FUNCTION_TABLE_iiii[$18 & 127]($19,22494,$vararg_buffer23)|0); + $i = 0; + while(1) { + $20 = $i; + $21 = (__gcry_enum_hw_features($20,$afeature)|0); + $s = $21; + $22 = ($21|0)!=(0|0); + if (!($22)) { + break; + } + $23 = $hwfeatures; + $24 = HEAP32[$afeature>>2]|0; + $25 = $23 & $24; + $26 = ($25|0)!=(0); + if ($26) { + $27 = $0; + $28 = $1; + $29 = $s; + HEAP32[$vararg_buffer26>>2] = $29; + (FUNCTION_TABLE_iiii[$27 & 127]($28,22503,$vararg_buffer26)|0); + } + $30 = $i; + $31 = (($30) + 1)|0; + $i = $31; + } + $32 = $0; + $33 = $1; + (FUNCTION_TABLE_iiii[$32 & 127]($33,22507,$vararg_buffer30)|0); + $34 = $0; + $35 = $1; + $36 = (__gcry_fips_mode()|0); + $37 = ($36|0)!=(0); + $38 = $37 ? 121 : 110; + $39 = (__gcry_enforced_fips_mode()|0); + $40 = ($39|0)!=(0); + $41 = $40 ? 121 : 110; + HEAP32[$vararg_buffer33>>2] = $38; + $vararg_ptr36 = ((($vararg_buffer33)) + 4|0); + HEAP32[$vararg_ptr36>>2] = $41; + (FUNCTION_TABLE_iiii[$34 & 127]($35,22509,$vararg_buffer33)|0); + $42 = (__gcry_get_rng_type(0)|0); + $i = $42; + $43 = $i; + switch ($43|0) { + case 1: { + $s = 22527; + $44 = $0; + $45 = $1; + $46 = $s; + $47 = $i; + HEAP32[$vararg_buffer38>>2] = $46; + $vararg_ptr41 = ((($vararg_buffer38)) + 4|0); + HEAP32[$vararg_ptr41>>2] = $47; + (FUNCTION_TABLE_iiii[$44 & 127]($45,22561,$vararg_buffer38)|0); + STACKTOP = sp;return; + break; + } + case 2: { + $s = 22536; + $44 = $0; + $45 = $1; + $46 = $s; + $47 = $i; + HEAP32[$vararg_buffer38>>2] = $46; + $vararg_ptr41 = ((($vararg_buffer38)) + 4|0); + HEAP32[$vararg_ptr41>>2] = $47; + (FUNCTION_TABLE_iiii[$44 & 127]($45,22561,$vararg_buffer38)|0); + STACKTOP = sp;return; + break; + } + case 3: { + $s = 22541; + $44 = $0; + $45 = $1; + $46 = $s; + $47 = $i; + HEAP32[$vararg_buffer38>>2] = $46; + $vararg_ptr41 = ((($vararg_buffer38)) + 4|0); + HEAP32[$vararg_ptr41>>2] = $47; + (FUNCTION_TABLE_iiii[$44 & 127]($45,22561,$vararg_buffer38)|0); + STACKTOP = sp;return; + break; + } + default: { + __gcry_bug(22332,321,22548); + // unreachable; + } + } +} +function _external_lock_test($cmd) { + $cmd = $cmd|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $cmd; + $rc = 0; + $1 = $0; + switch ($1|0) { + case 30111: { + $2 = (_gpgrt_lock_init(1080)|0); + $rc = $2; + break; + } + case 30112: { + $3 = (_gpgrt_lock_lock(1080)|0); + $rc = $3; + break; + } + case 30113: { + $4 = (_gpgrt_lock_unlock(1080)|0); + $rc = $4; + break; + } + case 30114: { + $5 = (_gpgrt_lock_destroy(1080)|0); + $rc = $5; + break; + } + default: { + $rc = 61; + } + } + $6 = $rc; + STACKTOP = sp;return ($6|0); +} +function __gcry_malloc($n) { + $n = $n|0; + var $0 = 0, $1 = 0, $2 = 0, $mem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $mem = sp; + $0 = $n; + HEAP32[$mem>>2] = 0; + $1 = $0; + (_do_malloc($1,0,$mem)|0); + $2 = HEAP32[$mem>>2]|0; + STACKTOP = sp;return ($2|0); +} +function _do_malloc($n,$flags,$mem) { + $n = $n|0; + $flags = $flags|0; + $mem = $mem|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $err = 0, $m = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $n; + $1 = $flags; + $2 = $mem; + $err = 0; + $3 = $1; + $4 = $3 & 1; + $5 = ($4|0)!=(0); + do { + if ($5) { + $6 = (_get_no_secure_memory()|0); + $7 = ($6|0)!=(0); + if ($7) { + label = 6; + } else { + $8 = HEAP32[17673]|0; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = HEAP32[17673]|0; + $11 = $0; + $12 = (FUNCTION_TABLE_ii[$10 & 63]($11)|0); + $m = $12; + break; + } else { + $13 = $0; + $14 = (__gcry_private_malloc_secure($13)|0); + $m = $14; + break; + } + } + } else { + label = 6; + } + } while(0); + do { + if ((label|0) == 6) { + $15 = HEAP32[17672]|0; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = HEAP32[17672]|0; + $18 = $0; + $19 = (FUNCTION_TABLE_ii[$17 & 63]($18)|0); + $m = $19; + break; + } else { + $20 = $0; + $21 = (__gcry_private_malloc($20)|0); + $m = $21; + break; + } + } + } while(0); + $22 = $m; + $23 = ($22|0)!=(0|0); + if ($23) { + $30 = $m; + $31 = $2; + HEAP32[$31>>2] = $30; + $32 = $err; + STACKTOP = sp;return ($32|0); + } + $24 = (___errno_location()|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($25|0)!=(0); + if (!($26)) { + _gpg_err_set_errno(12); + } + $27 = (___errno_location()|0); + $28 = HEAP32[$27>>2]|0; + $29 = (_gpg_err_code_from_errno($28)|0); + $err = $29; + $32 = $err; + STACKTOP = sp;return ($32|0); +} +function _get_no_secure_memory() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = HEAP32[17669]|0; + $2 = ($1|0)!=(0); + do { + if ($2) { + $3 = (__gcry_enforced_fips_mode()|0); + $4 = ($3|0)!=(0); + if ($4) { + HEAP32[17669] = 0; + $0 = 0; + break; + } else { + $5 = HEAP32[17669]|0; + $0 = $5; + break; + } + } else { + $0 = 0; + } + } while(0); + $6 = $0; + STACKTOP = sp;return ($6|0); +} +function __gcry_malloc_secure($n) { + $n = $n|0; + var $0 = 0, $1 = 0, $2 = 0, $mem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $mem = sp; + $0 = $n; + HEAP32[$mem>>2] = 0; + $1 = $0; + (_do_malloc($1,1,$mem)|0); + $2 = HEAP32[$mem>>2]|0; + STACKTOP = sp;return ($2|0); +} +function __gcry_is_secure($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $a; + $2 = (_get_no_secure_memory()|0); + $3 = ($2|0)!=(0); + do { + if ($3) { + $0 = 0; + } else { + $4 = HEAP32[17674]|0; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = HEAP32[17674]|0; + $7 = $1; + $8 = (FUNCTION_TABLE_ii[$6 & 63]($7)|0); + $0 = $8; + break; + } else { + $9 = $1; + $10 = (__gcry_private_is_secure($9)|0); + $0 = $10; + break; + } + } + } while(0); + $11 = $0; + STACKTOP = sp;return ($11|0); +} +function __gcry_realloc($a,$n) { + $a = $a|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $a; + $2 = $n; + $3 = $1; + $4 = ($3|0)!=(0|0); + $5 = $2; + if (!($4)) { + $6 = (__gcry_malloc($5)|0); + $0 = $6; + $24 = $0; + STACKTOP = sp;return ($24|0); + } + $7 = ($5|0)!=(0); + if (!($7)) { + $8 = $1; + __gcry_free($8); + $0 = 0; + $24 = $0; + STACKTOP = sp;return ($24|0); + } + $9 = HEAP32[17675]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + $11 = HEAP32[17675]|0; + $12 = $1; + $13 = $2; + $14 = (FUNCTION_TABLE_iii[$11 & 127]($12,$13)|0); + $p = $14; + } else { + $15 = $1; + $16 = $2; + $17 = (__gcry_private_realloc($15,$16)|0); + $p = $17; + } + $18 = $p; + $19 = ($18|0)!=(0|0); + if (!($19)) { + $20 = (___errno_location()|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)!=(0); + if (!($22)) { + _gpg_err_set_errno(12); + } + } + $23 = $p; + $0 = $23; + $24 = $0; + STACKTOP = sp;return ($24|0); +} +function __gcry_free($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $save_errno = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $p; + $1 = $0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = (___errno_location()|0); + $4 = HEAP32[$3>>2]|0; + $save_errno = $4; + $5 = HEAP32[17676]|0; + $6 = ($5|0)!=(0|0); + if ($6) { + $7 = HEAP32[17676]|0; + $8 = $0; + FUNCTION_TABLE_vi[$7 & 127]($8); + } else { + $9 = $0; + __gcry_private_free($9); + } + $10 = $save_errno; + $11 = ($10|0)!=(0); + if (!($11)) { + STACKTOP = sp;return; + } + $12 = $save_errno; + _gpg_err_set_errno($12); + STACKTOP = sp;return; +} +function __gcry_calloc($n,$m) { + $n = $n|0; + $m = $m|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $bytes = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $n; + $2 = $m; + $3 = $1; + $4 = $2; + $5 = Math_imul($3, $4)|0; + $bytes = $5; + $6 = $2; + $7 = ($6|0)!=(0); + if ($7) { + $8 = $bytes; + $9 = $2; + $10 = (($8>>>0) / ($9>>>0))&-1; + $11 = $1; + $12 = ($10|0)!=($11|0); + if ($12) { + _gpg_err_set_errno(12); + $0 = 0; + $20 = $0; + STACKTOP = sp;return ($20|0); + } + } + $13 = $bytes; + $14 = (__gcry_malloc($13)|0); + $p = $14; + $15 = $p; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = $p; + $18 = $bytes; + _memset(($17|0),0,($18|0))|0; + } + $19 = $p; + $0 = $19; + $20 = $0; + STACKTOP = sp;return ($20|0); +} +function __gcry_calloc_secure($n,$m) { + $n = $n|0; + $m = $m|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $bytes = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $n; + $2 = $m; + $3 = $1; + $4 = $2; + $5 = Math_imul($3, $4)|0; + $bytes = $5; + $6 = $2; + $7 = ($6|0)!=(0); + if ($7) { + $8 = $bytes; + $9 = $2; + $10 = (($8>>>0) / ($9>>>0))&-1; + $11 = $1; + $12 = ($10|0)!=($11|0); + if ($12) { + _gpg_err_set_errno(12); + $0 = 0; + $20 = $0; + STACKTOP = sp;return ($20|0); + } + } + $13 = $bytes; + $14 = (__gcry_malloc_secure($13)|0); + $p = $14; + $15 = $p; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = $p; + $18 = $bytes; + _memset(($17|0),0,($18|0))|0; + } + $19 = $p; + $0 = $19; + $20 = $0; + STACKTOP = sp;return ($20|0); +} +function __gcry_strdup($string) { + $string = $string|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $string_cp = 0, $string_n = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $string; + $string_cp = 0; + $string_n = 0; + $1 = $0; + $2 = (_strlen($1)|0); + $string_n = $2; + $3 = $0; + $4 = (__gcry_is_secure($3)|0); + $5 = ($4|0)!=(0); + $6 = $string_n; + $7 = (($6) + 1)|0; + if ($5) { + $8 = (__gcry_malloc_secure($7)|0); + $string_cp = $8; + } else { + $9 = (__gcry_malloc($7)|0); + $string_cp = $9; + } + $10 = $string_cp; + $11 = ($10|0)!=(0|0); + if (!($11)) { + $14 = $string_cp; + STACKTOP = sp;return ($14|0); + } + $12 = $string_cp; + $13 = $0; + (_strcpy($12,$13)|0); + $14 = $string_cp; + STACKTOP = sp;return ($14|0); +} +function __gcry_xmalloc($n) { + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $p = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $n; + while(1) { + $1 = $0; + $2 = (__gcry_malloc($1)|0); + $p = $2; + $3 = ($2|0)!=(0|0); + $4 = $3 ^ 1; + if (!($4)) { + label = 6; + break; + } + $5 = (__gcry_fips_mode()|0); + $6 = ($5|0)==(0); + $7 = HEAP32[17677]|0; + $8 = ($7|0)!=(0|0); + $or$cond = $6 & $8; + if (!($or$cond)) { + label = 5; + break; + } + $9 = HEAP32[17677]|0; + $10 = HEAP32[17678]|0; + $11 = $0; + $12 = (FUNCTION_TABLE_iiii[$9 & 127]($10,$11,0)|0); + $13 = ($12|0)!=(0); + if (!($13)) { + label = 5; + break; + } + } + if ((label|0) == 5) { + $14 = (___errno_location()|0); + $15 = HEAP32[$14>>2]|0; + $16 = (_gpg_err_code_from_errno($15)|0); + __gcry_fatal_error($16,0); + // unreachable; + } + else if ((label|0) == 6) { + $17 = $p; + STACKTOP = sp;return ($17|0); + } + return (0)|0; +} +function __gcry_xrealloc($a,$n) { + $a = $a|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $n; + while(1) { + $2 = $0; + $3 = $1; + $4 = (__gcry_realloc($2,$3)|0); + $p = $4; + $5 = ($4|0)!=(0|0); + $6 = $5 ^ 1; + if (!($6)) { + label = 6; + break; + } + $7 = (__gcry_fips_mode()|0); + $8 = ($7|0)==(0); + $9 = HEAP32[17677]|0; + $10 = ($9|0)!=(0|0); + $or$cond = $8 & $10; + if (!($or$cond)) { + label = 5; + break; + } + $11 = HEAP32[17677]|0; + $12 = HEAP32[17678]|0; + $13 = $1; + $14 = $0; + $15 = (__gcry_is_secure($14)|0); + $16 = ($15|0)!=(0); + $17 = $16 ? 3 : 2; + $18 = (FUNCTION_TABLE_iiii[$11 & 127]($12,$13,$17)|0); + $19 = ($18|0)!=(0); + if (!($19)) { + label = 5; + break; + } + } + if ((label|0) == 5) { + $20 = (___errno_location()|0); + $21 = HEAP32[$20>>2]|0; + $22 = (_gpg_err_code_from_errno($21)|0); + __gcry_fatal_error($22,0); + // unreachable; + } + else if ((label|0) == 6) { + $23 = $p; + STACKTOP = sp;return ($23|0); + } + return (0)|0; +} +function __gcry_xmalloc_secure($n) { + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0; + var $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $n; + while(1) { + $1 = $0; + $2 = (__gcry_malloc_secure($1)|0); + $p = $2; + $3 = ($2|0)!=(0|0); + $4 = $3 ^ 1; + if (!($4)) { + label = 6; + break; + } + $5 = (__gcry_fips_mode()|0); + $6 = ($5|0)==(0); + $7 = HEAP32[17677]|0; + $8 = ($7|0)!=(0|0); + $or$cond = $6 & $8; + if (!($or$cond)) { + label = 5; + break; + } + $9 = HEAP32[17677]|0; + $10 = HEAP32[17678]|0; + $11 = $0; + $12 = (FUNCTION_TABLE_iiii[$9 & 127]($10,$11,1)|0); + $13 = ($12|0)!=(0); + if (!($13)) { + label = 5; + break; + } + } + if ((label|0) == 5) { + $14 = (___errno_location()|0); + $15 = HEAP32[$14>>2]|0; + $16 = (_gpg_err_code_from_errno($15)|0); + $17 = (__gcry_gettext(22578)|0); + __gcry_fatal_error($16,$17); + // unreachable; + } + else if ((label|0) == 6) { + $18 = $p; + STACKTOP = sp;return ($18|0); + } + return (0)|0; +} +function __gcry_xcalloc($n,$m) { + $n = $n|0; + $m = $m|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $nbytes = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $n; + $1 = $m; + $2 = $0; + $3 = $1; + $4 = Math_imul($2, $3)|0; + $nbytes = $4; + $5 = $1; + $6 = ($5|0)!=(0); + if ($6) { + $7 = $nbytes; + $8 = $1; + $9 = (($7>>>0) / ($8>>>0))&-1; + $10 = $0; + $11 = ($9|0)!=($10|0); + if ($11) { + _gpg_err_set_errno(12); + $12 = (___errno_location()|0); + $13 = HEAP32[$12>>2]|0; + $14 = (_gpg_err_code_from_errno($13)|0); + __gcry_fatal_error($14,0); + // unreachable; + } + } + $15 = $nbytes; + $16 = (__gcry_xmalloc($15)|0); + $p = $16; + $17 = $p; + $18 = $nbytes; + _memset(($17|0),0,($18|0))|0; + $19 = $p; + STACKTOP = sp;return ($19|0); +} +function __gcry_xcalloc_secure($n,$m) { + $n = $n|0; + $m = $m|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $nbytes = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $n; + $1 = $m; + $2 = $0; + $3 = $1; + $4 = Math_imul($2, $3)|0; + $nbytes = $4; + $5 = $1; + $6 = ($5|0)!=(0); + if ($6) { + $7 = $nbytes; + $8 = $1; + $9 = (($7>>>0) / ($8>>>0))&-1; + $10 = $0; + $11 = ($9|0)!=($10|0); + if ($11) { + _gpg_err_set_errno(12); + $12 = (___errno_location()|0); + $13 = HEAP32[$12>>2]|0; + $14 = (_gpg_err_code_from_errno($13)|0); + __gcry_fatal_error($14,0); + // unreachable; + } + } + $15 = $nbytes; + $16 = (__gcry_xmalloc_secure($15)|0); + $p = $16; + $17 = $p; + $18 = $nbytes; + _memset(($17|0),0,($18|0))|0; + $19 = $p; + STACKTOP = sp;return ($19|0); +} +function __gcry_xstrdup($string) { + $string = $string|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $is_sec = 0, $n = 0, $or$cond = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $string; + while(1) { + $1 = $0; + $2 = (__gcry_strdup($1)|0); + $p = $2; + $3 = ($2|0)!=(0|0); + $4 = $3 ^ 1; + if (!($4)) { + label = 8; + break; + } + $5 = $0; + $6 = (_strlen($5)|0); + $n = $6; + $7 = $0; + $8 = (__gcry_is_secure($7)|0); + $9 = ($8|0)!=(0); + $10 = $9 ^ 1; + $11 = $10 ^ 1; + $12 = $11&1; + $is_sec = $12; + $13 = (__gcry_fips_mode()|0); + $14 = ($13|0)==(0); + $15 = HEAP32[17677]|0; + $16 = ($15|0)!=(0|0); + $or$cond = $14 & $16; + if (!($or$cond)) { + break; + } + $17 = HEAP32[17677]|0; + $18 = HEAP32[17678]|0; + $19 = $n; + $20 = $is_sec; + $21 = (FUNCTION_TABLE_iiii[$17 & 127]($18,$19,$20)|0); + $22 = ($21|0)!=(0); + if (!($22)) { + break; + } + } + if ((label|0) == 8) { + $30 = $p; + STACKTOP = sp;return ($30|0); + } + $23 = (___errno_location()|0); + $24 = HEAP32[$23>>2]|0; + $25 = (_gpg_err_code_from_errno($24)|0); + $26 = $is_sec; + $27 = ($26|0)!=(0); + if (!($27)) { + $29 = 0; + __gcry_fatal_error($25,$29); + // unreachable; + } + $28 = (__gcry_gettext(22578)|0); + $29 = $28; + __gcry_fatal_error($25,$29); + // unreachable; + return (0)|0; +} +function __gcry_get_debug_flag($mask) { + $mask = $mask|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $mask; + $2 = (__gcry_fips_mode()|0); + $3 = ($2|0)!=(0); + if ($3) { + $0 = 0; + } else { + $4 = HEAP32[17670]|0; + $5 = $1; + $6 = $4 & $5; + $0 = $6; + } + $7 = $0; + STACKTOP = sp;return ($7|0); +} +function __gcry_set_progress_handler($cb,$cb_data) { + $cb = $cb|0; + $cb_data = $cb_data|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $cb; + $1 = $cb_data; + $2 = $0; + $3 = $1; + __gcry_register_primegen_progress($2,$3); + $4 = $0; + $5 = $1; + __gcry_register_random_progress($4,$5); + STACKTOP = sp;return; +} +function __gcry_sexp_create($retsexp,$buffer,$length,$autodetect,$freefnc) { + $retsexp = $retsexp|0; + $buffer = $buffer|0; + $length = $length|0; + $autodetect = $autodetect|0; + $freefnc = $freefnc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $errcode = 0, $or$cond = 0, $or$cond$not = 0, $or$cond3 = 0, $or$cond5 = 0, $or$cond7 = 0, $se = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $errcode = sp + 8|0; + $se = sp + 4|0; + $1 = $retsexp; + $2 = $buffer; + $3 = $length; + $4 = $autodetect; + $5 = $freefnc; + $6 = $1; + $7 = ($6|0)!=(0|0); + if (!($7)) { + $0 = 45; + $42 = $0; + STACKTOP = sp;return ($42|0); + } + $8 = $1; + HEAP32[$8>>2] = 0; + $9 = $4; + $10 = ($9|0)<(0); + $11 = $4; + $12 = ($11|0)>(1); + $or$cond = $10 | $12; + $or$cond$not = $or$cond ^ 1; + $13 = $2; + $14 = ($13|0)!=(0|0); + $or$cond3 = $or$cond$not & $14; + if (!($or$cond3)) { + $0 = 45; + $42 = $0; + STACKTOP = sp;return ($42|0); + } + $15 = $3; + $16 = ($15|0)!=(0); + $17 = $4; + $18 = ($17|0)!=(0); + $or$cond5 = $16 | $18; + if ($or$cond5) { + $24 = $3; + $25 = ($24|0)==(0); + $26 = $4; + $27 = ($26|0)!=(0); + $or$cond7 = $25 & $27; + if ($or$cond7) { + $28 = $2; + $29 = (_strlen($28)|0); + $3 = $29; + } + } else { + $19 = $2; + $20 = (__gcry_sexp_canon_len($19,0,0,$errcode)|0); + $3 = $20; + $21 = $3; + $22 = ($21|0)!=(0); + if (!($22)) { + $23 = HEAP32[$errcode>>2]|0; + $0 = $23; + $42 = $0; + STACKTOP = sp;return ($42|0); + } + } + $30 = $2; + $31 = $3; + $32 = (_do_sexp_sscan($se,0,$30,$31,0,0,$vararg_buffer)|0); + HEAP32[$errcode>>2] = $32; + $33 = HEAP32[$errcode>>2]|0; + $34 = ($33|0)!=(0); + if ($34) { + $35 = HEAP32[$errcode>>2]|0; + $0 = $35; + $42 = $0; + STACKTOP = sp;return ($42|0); + } + $36 = HEAP32[$se>>2]|0; + $37 = $1; + HEAP32[$37>>2] = $36; + $38 = $5; + $39 = ($38|0)!=(0|0); + if ($39) { + $40 = $5; + $41 = $2; + FUNCTION_TABLE_vi[$40 & 127]($41); + } + $0 = 0; + $42 = $0; + STACKTOP = sp;return ($42|0); +} +function __gcry_sexp_canon_len($buffer,$length,$erroff,$errcode) { + $buffer = $buffer|0; + $length = $length|0; + $erroff = $erroff|0; + $errcode = $errcode|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $16 = 0; + var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; + var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $count = 0, $datalen = 0, $disphint = 0, $dummy_errcode = 0, $dummy_erroff = 0, $level = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $dummy_erroff = sp + 12|0; + $dummy_errcode = sp + 8|0; + $1 = $buffer; + $2 = $length; + $3 = $erroff; + $4 = $errcode; + $disphint = 0; + $datalen = 0; + $count = 0; + $level = 0; + $5 = $3; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $3 = $dummy_erroff; + } + $7 = $4; + $8 = ($7|0)!=(0|0); + if (!($8)) { + $4 = $dummy_errcode; + } + $9 = $4; + HEAP32[$9>>2] = 0; + $10 = $3; + HEAP32[$10>>2] = 0; + $11 = $1; + $12 = ($11|0)!=(0|0); + if (!($12)) { + $0 = 0; + $150 = $0; + STACKTOP = sp;return ($150|0); + } + $13 = $1; + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = ($15|0)!=(40); + if ($16) { + $17 = $4; + HEAP32[$17>>2] = 204; + $0 = 0; + $150 = $0; + STACKTOP = sp;return ($150|0); + } + $18 = $1; + $p = $18; + L15: while(1) { + $19 = $2; + $20 = ($19|0)!=(0); + if ($20) { + $21 = $count; + $22 = $2; + $23 = ($21>>>0)>=($22>>>0); + if ($23) { + label = 12; + break; + } + } + $27 = $datalen; + $28 = ($27|0)!=(0); + $29 = $p; + $30 = HEAP8[$29>>0]|0; + $31 = $30&255; + do { + if ($28) { + $32 = ($31|0)==(58); + if ($32) { + $33 = $2; + $34 = ($33|0)!=(0); + if ($34) { + $35 = $count; + $36 = $datalen; + $37 = (($35) + ($36))|0; + $38 = $2; + $39 = ($37>>>0)>=($38>>>0); + if ($39) { + label = 17; + break L15; + } + } + $43 = $datalen; + $44 = $count; + $45 = (($44) + ($43))|0; + $count = $45; + $46 = $datalen; + $47 = $p; + $48 = (($47) + ($46)|0); + $p = $48; + $datalen = 0; + break; + } else { + $49 = $p; + $50 = HEAP8[$49>>0]|0; + $51 = $50&255; + $52 = ($51|0)>=(48); + if (!($52)) { + label = 22; + break L15; + } + $53 = $p; + $54 = HEAP8[$53>>0]|0; + $55 = $54&255; + $56 = ($55|0)<=(57); + if (!($56)) { + label = 22; + break L15; + } + $57 = $datalen; + $58 = ($57*10)|0; + $59 = $p; + $60 = HEAP8[$59>>0]|0; + $61 = $60&255; + $62 = (($61) - 48)|0; + $63 = (($58) + ($62))|0; + $datalen = $63; + break; + } + } else { + $67 = ($31|0)==(40); + if ($67) { + $68 = $disphint; + $69 = ($68|0)!=(0|0); + if ($69) { + label = 25; + break L15; + } + $73 = $level; + $74 = (($73) + 1)|0; + $level = $74; + break; + } + $75 = $p; + $76 = HEAP8[$75>>0]|0; + $77 = $76&255; + $78 = ($77|0)==(41); + if ($78) { + $79 = $level; + $80 = ($79|0)!=(0); + if (!($80)) { + label = 29; + break L15; + } + $84 = $disphint; + $85 = ($84|0)!=(0|0); + if ($85) { + label = 31; + break L15; + } + $89 = $level; + $90 = (($89) + -1)|0; + $level = $90; + $91 = ($90|0)!=(0); + if ($91) { + break; + } else { + label = 33; + break L15; + } + } + $94 = $p; + $95 = HEAP8[$94>>0]|0; + $96 = $95&255; + $97 = ($96|0)==(91); + if ($97) { + $98 = $disphint; + $99 = ($98|0)!=(0|0); + if ($99) { + label = 36; + break L15; + } + $103 = $p; + $disphint = $103; + break; + } + $104 = $p; + $105 = HEAP8[$104>>0]|0; + $106 = $105&255; + $107 = ($106|0)==(93); + if ($107) { + $108 = $disphint; + $109 = ($108|0)!=(0|0); + if (!($109)) { + label = 40; + break L15; + } + $disphint = 0; + break; + } + $113 = $p; + $114 = HEAP8[$113>>0]|0; + $115 = $114&255; + $116 = ($115|0)>=(48); + if (!($116)) { + label = 47; + break L15; + } + $117 = $p; + $118 = HEAP8[$117>>0]|0; + $119 = $118&255; + $120 = ($119|0)<=(57); + if (!($120)) { + label = 47; + break L15; + } + $121 = $p; + $122 = HEAP8[$121>>0]|0; + $123 = $122&255; + $124 = ($123|0)==(48); + if ($124) { + label = 45; + break L15; + } + $128 = $p; + $129 = HEAP8[$128>>0]|0; + $130 = $129&255; + $131 = (($130) - 48)|0; + $datalen = $131; + } + } while(0); + $146 = $p; + $147 = ((($146)) + 1|0); + $p = $147; + $148 = $count; + $149 = (($148) + 1)|0; + $count = $149; + } + switch (label|0) { + case 12: { + $24 = $count; + $25 = $3; + HEAP32[$25>>2] = $24; + $26 = $4; + HEAP32[$26>>2] = 202; + $0 = 0; + $150 = $0; + STACKTOP = sp;return ($150|0); + break; + } + case 17: { + $40 = $count; + $41 = $3; + HEAP32[$41>>2] = $40; + $42 = $4; + HEAP32[$42>>2] = 202; + $0 = 0; + $150 = $0; + STACKTOP = sp;return ($150|0); + break; + } + case 22: { + $64 = $count; + $65 = $3; + HEAP32[$65>>2] = $64; + $66 = $4; + HEAP32[$66>>2] = 201; + $0 = 0; + $150 = $0; + STACKTOP = sp;return ($150|0); + break; + } + case 25: { + $70 = $count; + $71 = $3; + HEAP32[$71>>2] = $70; + $72 = $4; + HEAP32[$72>>2] = 209; + $0 = 0; + $150 = $0; + STACKTOP = sp;return ($150|0); + break; + } + case 29: { + $81 = $count; + $82 = $3; + HEAP32[$82>>2] = $81; + $83 = $4; + HEAP32[$83>>2] = 203; + $0 = 0; + $150 = $0; + STACKTOP = sp;return ($150|0); + break; + } + case 31: { + $86 = $count; + $87 = $3; + HEAP32[$87>>2] = $86; + $88 = $4; + HEAP32[$88>>2] = 209; + $0 = 0; + $150 = $0; + STACKTOP = sp;return ($150|0); + break; + } + case 33: { + $92 = $count; + $93 = (($92) + 1)|0; + $count = $93; + $0 = $93; + $150 = $0; + STACKTOP = sp;return ($150|0); + break; + } + case 36: { + $100 = $count; + $101 = $3; + HEAP32[$101>>2] = $100; + $102 = $4; + HEAP32[$102>>2] = 208; + $0 = 0; + $150 = $0; + STACKTOP = sp;return ($150|0); + break; + } + case 40: { + $110 = $count; + $111 = $3; + HEAP32[$111>>2] = $110; + $112 = $4; + HEAP32[$112>>2] = 209; + $0 = 0; + $150 = $0; + STACKTOP = sp;return ($150|0); + break; + } + case 45: { + $125 = $count; + $126 = $3; + HEAP32[$126>>2] = $125; + $127 = $4; + HEAP32[$127>>2] = 207; + $0 = 0; + $150 = $0; + STACKTOP = sp;return ($150|0); + break; + } + case 47: { + $132 = $p; + $133 = HEAP8[$132>>0]|0; + $134 = $133&255; + $135 = ($134|0)==(38); + if (!($135)) { + $136 = $p; + $137 = HEAP8[$136>>0]|0; + $138 = $137&255; + $139 = ($138|0)==(92); + if (!($139)) { + $143 = $count; + $144 = $3; + HEAP32[$144>>2] = $143; + $145 = $4; + HEAP32[$145>>2] = 205; + $0 = 0; + $150 = $0; + STACKTOP = sp;return ($150|0); + } + } + $140 = $count; + $141 = $3; + HEAP32[$141>>2] = $140; + $142 = $4; + HEAP32[$142>>2] = 210; + $0 = 0; + $150 = $0; + STACKTOP = sp;return ($150|0); + break; + } + } + return (0)|0; +} +function _do_sexp_sscan($retsexp,$erroff,$buffer,$length,$argflag,$arg_list,$varargs) { + $retsexp = $retsexp|0; + $erroff = $erroff|0; + $buffer = $buffer|0; + $length = $length|0; + $argflag = $argflag|0; + $arg_list = $arg_list|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $arg_ptr = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $arg_ptr = sp; + $0 = $retsexp; + $1 = $erroff; + $2 = $buffer; + $3 = $length; + $4 = $argflag; + $5 = $arg_list; + HEAP32[$arg_ptr>>2] = $varargs; + $6 = $0; + $7 = $1; + $8 = $2; + $9 = $3; + $10 = $4; + $11 = $5; + $12 = (_do_vsexp_sscan($6,$7,$8,$9,$10,$11,$arg_ptr)|0); + $rc = $12; + $13 = $rc; + STACKTOP = sp;return ($13|0); +} +function _do_vsexp_sscan($retsexp,$erroff,$buffer,$length,$argflag,$arg_list,$arg_ptr) { + $retsexp = $retsexp|0; + $erroff = $erroff|0; + $buffer = $buffer|0; + $length = $length|0; + $argflag = $argflag|0; + $arg_list = $arg_list|0; + $arg_ptr = $arg_ptr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0; + var $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0; + var $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0; + var $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0; + var $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0; + var $1088 = 0, $1089 = 0, $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 0, $1094 = 0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0, $11 = 0, $110 = 0, $1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0; + var $1105 = 0, $1106 = 0, $1107 = 0, $1108 = 0, $1109 = 0, $111 = 0, $1110 = 0, $1111 = 0, $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 0, $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0; + var $1123 = 0, $1124 = 0, $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0; + var $1141 = 0, $1142 = 0, $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0; + var $116 = 0, $1160 = 0, $1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 0, $1166 = 0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0; + var $1178 = 0, $1179 = 0, $118 = 0, $1180 = 0, $1181 = 0, $1182 = 0, $1183 = 0, $1184 = 0, $1185 = 0, $1186 = 0, $1187 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0; + var $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0; + var $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0; + var $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0; + var $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0; + var $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0; + var $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0; + var $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0; + var $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0; + var $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0; + var $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0; + var $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0; + var $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0; + var $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0; + var $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0; + var $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0; + var $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0; + var $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0; + var $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0; + var $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0; + var $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0; + var $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0; + var $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0; + var $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0; + var $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0; + var $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0; + var $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0; + var $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0; + var $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0; + var $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0; + var $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0; + var $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0; + var $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0; + var $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0; + var $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0; + var $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0; + var $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0; + var $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0; + var $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0; + var $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0; + var $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0; + var $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0; + var $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0; + var $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0; + var $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0; + var $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0; + var $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0; + var $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0, $963 = 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0; + var $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0, $981 = 0, $982 = 0, $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0; + var $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0, $_ms_err = 0, $_ms_err1 = 0, $_ms_err10 = 0, $_ms_err14 = 0, $_ms_err18 = 0, $_ms_err23 = 0, $_ms_err28 = 0, $_ms_err31 = 0, $_ms_err32 = 0, $_ms_err33 = 0, $_ms_err34 = 0, $_ms_err4 = 0; + var $_ms_err6 = 0, $_ms_err8 = 0, $_vlen = 0, $_vptr = 0, $_vptr_long = 0, $_vset = 0, $_vset_long = 0, $aint = 0, $aint25 = 0, $alen = 0, $alen17 = 0, $alen22 = 0, $alen26 = 0, $alen30 = 0, $aoff = 0, $arg_counter = 0, $arglist_current = 0, $arglist_current10 = 0, $arglist_current13 = 0, $arglist_current16 = 0; + var $arglist_current19 = 0, $arglist_current25 = 0, $arglist_current7 = 0, $arglist_next = 0, $arglist_next11 = 0, $arglist_next14 = 0, $arglist_next17 = 0, $arglist_next20 = 0, $arglist_next26 = 0, $arglist_next8 = 0, $asexp = 0, $ashort = 0, $ashort13 = 0, $ashort15 = 0, $ashort2 = 0, $ashort21 = 0, $ashort24 = 0, $ashort29 = 0, $ashort3 = 0, $ashort5 = 0; + var $ashort7 = 0, $ashort9 = 0, $astr = 0, $astr16 = 0, $base64 = 0, $buf = 0, $buf27 = 0, $c = 0, $datalen = 0, $digptr = 0, $disphint = 0, $dummy_erroff = 0, $err = 0, $expanded = 0, $expanded27 = 0, $expanded29 = 0, $expanded30 = 0, $expanded31 = 0, $expanded33 = 0, $expanded34 = 0; + var $expanded36 = 0, $expanded37 = 0, $expanded38 = 0, $expanded40 = 0, $expanded41 = 0, $expanded43 = 0, $expanded44 = 0, $expanded45 = 0, $expanded47 = 0, $expanded48 = 0, $expanded50 = 0, $expanded51 = 0, $expanded52 = 0, $expanded54 = 0, $expanded55 = 0, $expanded57 = 0, $expanded58 = 0, $expanded59 = 0, $expanded61 = 0, $expanded62 = 0; + var $expanded64 = 0, $expanded65 = 0, $expanded66 = 0, $expanded68 = 0, $expanded69 = 0, $expanded71 = 0, $expanded72 = 0, $expanded73 = 0, $hexcount = 0, $hexfmt = 0, $len = 0, $level = 0, $m = 0, $mp = 0, $mpifmt = 0, $n = 0, $nbits = 0, $newhead = 0, $newhead12 = 0, $newhead20 = 0; + var $newsexp = 0, $newsexp11 = 0, $newsexp19 = 0, $nm = 0, $or$cond = 0, $or$cond3 = 0, $or$cond5 = 0, $p = 0, $percent = 0, $quoted = 0, $quoted_esc = 0, $save = 0, $tmpc = 0, $tokenp = 0, $vararg_buffer = 0, $vararg_buffer21 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 400|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer21 = sp + 16|0; + $vararg_buffer = sp + 8|0; + $dummy_erroff = sp + 208|0; + $c = sp + 196|0; + $ashort = sp + 316|0; + $ashort2 = sp + 314|0; + $ashort3 = sp + 312|0; + $ashort5 = sp + 310|0; + $ashort7 = sp + 308|0; + $nm = sp + 152|0; + $nbits = sp + 140|0; + $ashort9 = sp + 306|0; + $ashort13 = sp + 304|0; + $ashort15 = sp + 302|0; + $ashort21 = sp + 300|0; + $buf = sp + 354|0; + $ashort24 = sp + 298|0; + $buf27 = sp + 319|0; + $ashort29 = sp + 296|0; + $aoff = sp + 48|0; + $_vset_long = sp; + $1 = $retsexp; + $2 = $erroff; + $3 = $buffer; + $4 = $length; + $5 = $argflag; + $6 = $arg_list; + $7 = $arg_ptr; + $err = 0; + $digptr = 0; + $quoted = 0; + $tokenp = 0; + $hexfmt = 0; + $base64 = 0; + $disphint = 0; + $percent = 0; + $hexcount = 0; + $quoted_esc = 0; + $datalen = 0; + $arg_counter = 0; + $level = 0; + $8 = $1; + $9 = ($8|0)!=(0|0); + if (!($9)) { + $0 = 45; + $1187 = $0; + STACKTOP = sp;return ($1187|0); + } + $10 = $1; + HEAP32[$10>>2] = 0; + $11 = $3; + $12 = ($11|0)!=(0|0); + if (!($12)) { + $0 = 45; + $1187 = $0; + STACKTOP = sp;return ($1187|0); + } + $13 = $2; + $14 = ($13|0)!=(0|0); + if (!($14)) { + $2 = $dummy_erroff; + } + $15 = $4; + $16 = (($15) + 2)|0; + $17 = ((($c)) + 4|0); + HEAP32[$17>>2] = $16; + $18 = $4; + $19 = ($18|0)!=(0); + if ($19) { + $20 = $3; + $21 = (__gcry_is_secure($20)|0); + $22 = ($21|0)!=(0); + if ($22) { + $23 = ((($c)) + 4|0); + $24 = HEAP32[$23>>2]|0; + $25 = (1 + ($24))|0; + $26 = (($25) - 1)|0; + $27 = (__gcry_malloc_secure($26)|0); + HEAP32[$c>>2] = $27; + } else { + label = 10; + } + } else { + label = 10; + } + if ((label|0) == 10) { + $28 = ((($c)) + 4|0); + $29 = HEAP32[$28>>2]|0; + $30 = (1 + ($29))|0; + $31 = (($30) - 1)|0; + $32 = (__gcry_malloc($31)|0); + HEAP32[$c>>2] = $32; + } + $33 = HEAP32[$c>>2]|0; + $34 = ($33|0)!=(0|0); + L18: do { + if ($34) { + $39 = HEAP32[$c>>2]|0; + $40 = ((($c)) + 8|0); + HEAP32[$40>>2] = $39; + $41 = $3; + $p = $41; + $42 = $4; + $n = $42; + L20: while(1) { + $43 = $n; + $44 = ($43|0)!=(0); + if (!($44)) { + label = 220; + break; + } + $45 = $tokenp; + $46 = ($45|0)==(0|0); + $47 = $hexfmt; + $48 = ($47|0)!=(0|0); + $or$cond = $46 | $48; + if ($or$cond) { + label = 20; + } else { + $49 = $p; + $50 = HEAP8[$49>>0]|0; + $51 = $50 << 24 >> 24; + $52 = (_strchr(22614,$51)|0); + $53 = ($52|0)!=(0|0); + if (!($53)) { + $54 = $p; + $55 = $tokenp; + $56 = $54; + $57 = $55; + $58 = (($56) - ($57))|0; + $datalen = $58; + $59 = $datalen; + $60 = (_make_space($c,$59)|0); + $_ms_err = $60; + $61 = $_ms_err; + $62 = ($61|0)!=(0); + if ($62) { + label = 18; + break; + } + $70 = ((($c)) + 8|0); + $71 = HEAP32[$70>>2]|0; + $72 = ((($71)) + 1|0); + HEAP32[$70>>2] = $72; + HEAP8[$71>>0] = 1; + $73 = $datalen; + $74 = $73&65535; + HEAP16[$ashort>>1] = $74; + $75 = ((($c)) + 8|0); + $76 = HEAP32[$75>>2]|0; + ;HEAP8[$76>>0]=HEAP8[$ashort>>0]|0;HEAP8[$76+1>>0]=HEAP8[$ashort+1>>0]|0; + $77 = ((($c)) + 8|0); + $78 = HEAP32[$77>>2]|0; + $79 = ((($78)) + 2|0); + HEAP32[$77>>2] = $79; + $80 = ((($c)) + 8|0); + $81 = HEAP32[$80>>2]|0; + $82 = $tokenp; + $83 = $datalen; + _memcpy(($81|0),($82|0),($83|0))|0; + $84 = $datalen; + $85 = ((($c)) + 8|0); + $86 = HEAP32[$85>>2]|0; + $87 = (($86) + ($84)|0); + HEAP32[$85>>2] = $87; + $tokenp = 0; + label = 20; + } + } + L27: do { + if ((label|0) == 20) { + label = 0; + $88 = $quoted; + $89 = ($88|0)!=(0|0); + if ($89) { + $90 = $quoted_esc; + $91 = ($90|0)!=(0); + $92 = $p; + $93 = HEAP8[$92>>0]|0; + $94 = $93 << 24 >> 24; + if (!($91)) { + $227 = ($94|0)==(92); + if ($227) { + $quoted_esc = 1; + break; + } + $228 = $p; + $229 = HEAP8[$228>>0]|0; + $230 = $229 << 24 >> 24; + $231 = ($230|0)==(34); + if (!($231)) { + break; + } + $232 = $quoted; + $233 = ((($232)) + 1|0); + $quoted = $233; + $234 = $p; + $235 = $quoted; + $236 = $234; + $237 = $235; + $238 = (($236) - ($237))|0; + $239 = (_make_space($c,$238)|0); + $_ms_err1 = $239; + $240 = $_ms_err1; + $241 = ($240|0)!=(0); + if ($241) { + label = 59; + break L20; + } + $249 = ((($c)) + 8|0); + $250 = HEAP32[$249>>2]|0; + $251 = ((($250)) + 1|0); + HEAP32[$249>>2] = $251; + HEAP8[$250>>0] = 1; + $252 = ((($c)) + 8|0); + $253 = HEAP32[$252>>2]|0; + $save = $253; + HEAP16[$ashort2>>1] = 0; + $254 = ((($c)) + 8|0); + $255 = HEAP32[$254>>2]|0; + ;HEAP8[$255>>0]=HEAP8[$ashort2>>0]|0;HEAP8[$255+1>>0]=HEAP8[$ashort2+1>>0]|0; + $256 = ((($c)) + 8|0); + $257 = HEAP32[$256>>2]|0; + $258 = ((($257)) + 2|0); + HEAP32[$256>>2] = $258; + $259 = $quoted; + $260 = $p; + $261 = $quoted; + $262 = $260; + $263 = $261; + $264 = (($262) - ($263))|0; + $265 = ((($c)) + 8|0); + $266 = HEAP32[$265>>2]|0; + $267 = (_unquote_string($259,$264,$266)|0); + $len = $267; + $268 = $len; + $269 = ((($c)) + 8|0); + $270 = HEAP32[$269>>2]|0; + $271 = (($270) + ($268)|0); + HEAP32[$269>>2] = $271; + $272 = $len; + $273 = $272&65535; + HEAP16[$ashort3>>1] = $273; + $274 = $save; + ;HEAP8[$274>>0]=HEAP8[$ashort3>>0]|0;HEAP8[$274+1>>0]=HEAP8[$ashort3+1>>0]|0; + $275 = $save; + $276 = ((($275)) + 2|0); + $save = $276; + $quoted = 0; + break; + } + switch ($94|0) { + case 92: case 39: case 34: case 114: case 102: case 110: case 118: case 116: case 98: { + $quoted_esc = 0; + break L27; + break; + } + case 55: case 54: case 53: case 52: case 51: case 50: case 49: case 48: { + $95 = $n; + $96 = ($95>>>0)>(2); + if (!($96)) { + label = 29; + break L20; + } + $97 = $p; + $98 = ((($97)) + 1|0); + $99 = HEAP8[$98>>0]|0; + $100 = $99 << 24 >> 24; + $101 = ($100|0)>=(48); + if (!($101)) { + label = 29; + break L20; + } + $102 = $p; + $103 = ((($102)) + 1|0); + $104 = HEAP8[$103>>0]|0; + $105 = $104 << 24 >> 24; + $106 = ($105|0)<=(55); + if (!($106)) { + label = 29; + break L20; + } + $107 = $p; + $108 = ((($107)) + 2|0); + $109 = HEAP8[$108>>0]|0; + $110 = $109 << 24 >> 24; + $111 = ($110|0)>=(48); + if (!($111)) { + label = 29; + break L20; + } + $112 = $p; + $113 = ((($112)) + 2|0); + $114 = HEAP8[$113>>0]|0; + $115 = $114 << 24 >> 24; + $116 = ($115|0)<=(55); + if (!($116)) { + label = 29; + break L20; + } + $123 = $p; + $124 = ((($123)) + 2|0); + $p = $124; + $125 = $n; + $126 = (($125) - 2)|0; + $n = $126; + $quoted_esc = 0; + break L27; + break; + } + case 120: { + $127 = $n; + $128 = ($127>>>0)>(2); + if (!($128)) { + label = 44; + break L20; + } + $129 = $p; + $130 = ((($129)) + 1|0); + $131 = HEAP8[$130>>0]|0; + $132 = $131 << 24 >> 24; + $133 = ($132|0)>=(48); + if ($133) { + $134 = $p; + $135 = ((($134)) + 1|0); + $136 = HEAP8[$135>>0]|0; + $137 = $136 << 24 >> 24; + $138 = ($137|0)<=(57); + if (!($138)) { + label = 34; + } + } else { + label = 34; + } + do { + if ((label|0) == 34) { + label = 0; + $139 = $p; + $140 = ((($139)) + 1|0); + $141 = HEAP8[$140>>0]|0; + $142 = $141 << 24 >> 24; + $143 = ($142|0)>=(65); + if ($143) { + $144 = $p; + $145 = ((($144)) + 1|0); + $146 = HEAP8[$145>>0]|0; + $147 = $146 << 24 >> 24; + $148 = ($147|0)<=(70); + if ($148) { + break; + } + } + $149 = $p; + $150 = ((($149)) + 1|0); + $151 = HEAP8[$150>>0]|0; + $152 = $151 << 24 >> 24; + $153 = ($152|0)>=(97); + if (!($153)) { + label = 44; + break L20; + } + $154 = $p; + $155 = ((($154)) + 1|0); + $156 = HEAP8[$155>>0]|0; + $157 = $156 << 24 >> 24; + $158 = ($157|0)<=(102); + if (!($158)) { + label = 44; + break L20; + } + } + } while(0); + $159 = $p; + $160 = ((($159)) + 2|0); + $161 = HEAP8[$160>>0]|0; + $162 = $161 << 24 >> 24; + $163 = ($162|0)>=(48); + if ($163) { + $164 = $p; + $165 = ((($164)) + 2|0); + $166 = HEAP8[$165>>0]|0; + $167 = $166 << 24 >> 24; + $168 = ($167|0)<=(57); + if (!($168)) { + label = 40; + } + } else { + label = 40; + } + do { + if ((label|0) == 40) { + label = 0; + $169 = $p; + $170 = ((($169)) + 2|0); + $171 = HEAP8[$170>>0]|0; + $172 = $171 << 24 >> 24; + $173 = ($172|0)>=(65); + if ($173) { + $174 = $p; + $175 = ((($174)) + 2|0); + $176 = HEAP8[$175>>0]|0; + $177 = $176 << 24 >> 24; + $178 = ($177|0)<=(70); + if ($178) { + break; + } + } + $179 = $p; + $180 = ((($179)) + 2|0); + $181 = HEAP8[$180>>0]|0; + $182 = $181 << 24 >> 24; + $183 = ($182|0)>=(97); + if (!($183)) { + label = 44; + break L20; + } + $184 = $p; + $185 = ((($184)) + 2|0); + $186 = HEAP8[$185>>0]|0; + $187 = $186 << 24 >> 24; + $188 = ($187|0)<=(102); + if (!($188)) { + label = 44; + break L20; + } + } + } while(0); + $195 = $p; + $196 = ((($195)) + 2|0); + $p = $196; + $197 = $n; + $198 = (($197) - 2)|0; + $n = $198; + $quoted_esc = 0; + break L27; + break; + } + case 13: { + $199 = $n; + $200 = ($199|0)!=(0); + if ($200) { + $201 = $p; + $202 = ((($201)) + 1|0); + $203 = HEAP8[$202>>0]|0; + $204 = $203 << 24 >> 24; + $205 = ($204|0)==(10); + if ($205) { + $206 = $p; + $207 = ((($206)) + 1|0); + $p = $207; + $208 = $n; + $209 = (($208) + -1)|0; + $n = $209; + } + } + $quoted_esc = 0; + break L27; + break; + } + case 10: { + $210 = $n; + $211 = ($210|0)!=(0); + if ($211) { + $212 = $p; + $213 = ((($212)) + 1|0); + $214 = HEAP8[$213>>0]|0; + $215 = $214 << 24 >> 24; + $216 = ($215|0)==(13); + if ($216) { + $217 = $p; + $218 = ((($217)) + 1|0); + $p = $218; + $219 = $n; + $220 = (($219) + -1)|0; + $n = $220; + } + } + $quoted_esc = 0; + break L27; + break; + } + default: { + label = 54; + break L20; + } + } + } + $277 = $hexfmt; + $278 = ($277|0)!=(0|0); + if ($278) { + $279 = $p; + $280 = HEAP8[$279>>0]|0; + $281 = $280 << 24 >> 24; + $282 = (_isxdigit($281)|0); + $283 = ($282|0)!=(0); + if ($283) { + $284 = $hexcount; + $285 = (($284) + 1)|0; + $hexcount = $285; + break; + } + $286 = $p; + $287 = HEAP8[$286>>0]|0; + $288 = $287 << 24 >> 24; + $289 = ($288|0)==(35); + if (!($289)) { + $362 = $p; + $363 = (_whitespacep($362)|0); + $364 = ($363|0)!=(0); + if ($364) { + break; + } else { + label = 82; + break L20; + } + } + $290 = $hexcount; + $291 = $290 & 1; + $292 = ($291|0)!=(0); + if ($292) { + label = 66; + break L20; + } + $299 = $hexcount; + $300 = (($299|0) / 2)&-1; + $datalen = $300; + $301 = $datalen; + $302 = (_make_space($c,$301)|0); + $_ms_err4 = $302; + $303 = $_ms_err4; + $304 = ($303|0)!=(0); + if ($304) { + label = 68; + break L20; + } + $312 = ((($c)) + 8|0); + $313 = HEAP32[$312>>2]|0; + $314 = ((($313)) + 1|0); + HEAP32[$312>>2] = $314; + HEAP8[$313>>0] = 1; + $315 = $datalen; + $316 = $315&65535; + HEAP16[$ashort5>>1] = $316; + $317 = ((($c)) + 8|0); + $318 = HEAP32[$317>>2]|0; + ;HEAP8[$318>>0]=HEAP8[$ashort5>>0]|0;HEAP8[$318+1>>0]=HEAP8[$ashort5+1>>0]|0; + $319 = ((($c)) + 8|0); + $320 = HEAP32[$319>>2]|0; + $321 = ((($320)) + 2|0); + HEAP32[$319>>2] = $321; + $322 = $hexfmt; + $323 = ((($322)) + 1|0); + $hexfmt = $323; + while(1) { + $324 = $hexfmt; + $325 = $p; + $326 = ($324>>>0)<($325>>>0); + if (!($326)) { + break; + } + $327 = $hexfmt; + $328 = (_whitespacep($327)|0); + $329 = ($328|0)!=(0); + if (!($329)) { + $330 = $hexfmt; + $331 = HEAP8[$330>>0]|0; + $332 = $331&255; + $333 = (_hextonibble($332)|0); + $tmpc = $333; + $334 = $hexfmt; + $335 = ((($334)) + 1|0); + $hexfmt = $335; + while(1) { + $336 = $hexfmt; + $337 = $p; + $338 = ($336>>>0)<($337>>>0); + if (!($338)) { + break; + } + $339 = $hexfmt; + $340 = (_whitespacep($339)|0); + $341 = ($340|0)!=(0); + if (!($341)) { + break; + } + $342 = $hexfmt; + $343 = ((($342)) + 1|0); + $hexfmt = $343; + } + $344 = $hexfmt; + $345 = $p; + $346 = ($344>>>0)<($345>>>0); + if ($346) { + $347 = $tmpc; + $348 = $347<<4; + $tmpc = $348; + $349 = $hexfmt; + $350 = HEAP8[$349>>0]|0; + $351 = $350&255; + $352 = (_hextonibble($351)|0); + $353 = $tmpc; + $354 = (($353) + ($352))|0; + $tmpc = $354; + } + $355 = $tmpc; + $356 = $355&255; + $357 = ((($c)) + 8|0); + $358 = HEAP32[$357>>2]|0; + $359 = ((($358)) + 1|0); + HEAP32[$357>>2] = $359; + HEAP8[$358>>0] = $356; + } + $360 = $hexfmt; + $361 = ((($360)) + 1|0); + $hexfmt = $361; + } + $hexfmt = 0; + break; + } + $371 = $base64; + $372 = ($371|0)!=(0|0); + if ($372) { + $373 = $p; + $374 = HEAP8[$373>>0]|0; + $375 = $374 << 24 >> 24; + $376 = ($375|0)==(124); + if (!($376)) { + break; + } + $base64 = 0; + break; + } + $377 = $digptr; + $378 = ($377|0)!=(0|0); + if ($378) { + $379 = $p; + $380 = HEAP8[$379>>0]|0; + $381 = $380 << 24 >> 24; + $382 = ($381|0)>=(48); + if ($382) { + $383 = $p; + $384 = HEAP8[$383>>0]|0; + $385 = $384 << 24 >> 24; + $386 = ($385|0)<=(57); + if ($386) { + break; + } + } + $387 = $p; + $388 = HEAP8[$387>>0]|0; + $389 = $388 << 24 >> 24; + $390 = ($389|0)==(58); + if ($390) { + $391 = $digptr; + $392 = (_atoi($391)|0); + $datalen = $392; + $digptr = 0; + $393 = $datalen; + $394 = $n; + $395 = (($394) - 1)|0; + $396 = ($393>>>0)>($395>>>0); + if ($396) { + label = 91; + break L20; + } + $403 = $datalen; + $404 = (_make_space($c,$403)|0); + $_ms_err6 = $404; + $405 = $_ms_err6; + $406 = ($405|0)!=(0); + if ($406) { + label = 93; + break L20; + } + $414 = ((($c)) + 8|0); + $415 = HEAP32[$414>>2]|0; + $416 = ((($415)) + 1|0); + HEAP32[$414>>2] = $416; + HEAP8[$415>>0] = 1; + $417 = $datalen; + $418 = $417&65535; + HEAP16[$ashort7>>1] = $418; + $419 = ((($c)) + 8|0); + $420 = HEAP32[$419>>2]|0; + ;HEAP8[$420>>0]=HEAP8[$ashort7>>0]|0;HEAP8[$420+1>>0]=HEAP8[$ashort7+1>>0]|0; + $421 = ((($c)) + 8|0); + $422 = HEAP32[$421>>2]|0; + $423 = ((($422)) + 2|0); + HEAP32[$421>>2] = $423; + $424 = ((($c)) + 8|0); + $425 = HEAP32[$424>>2]|0; + $426 = $p; + $427 = ((($426)) + 1|0); + $428 = $datalen; + _memcpy(($425|0),($427|0),($428|0))|0; + $429 = $datalen; + $430 = ((($c)) + 8|0); + $431 = HEAP32[$430>>2]|0; + $432 = (($431) + ($429)|0); + HEAP32[$430>>2] = $432; + $433 = $datalen; + $434 = $n; + $435 = (($434) - ($433))|0; + $n = $435; + $436 = $datalen; + $437 = $p; + $438 = (($437) + ($436)|0); + $p = $438; + break; + } + $439 = $p; + $440 = HEAP8[$439>>0]|0; + $441 = $440 << 24 >> 24; + $442 = ($441|0)==(34); + if ($442) { + $digptr = 0; + $443 = $p; + $quoted = $443; + $quoted_esc = 0; + break; + } + $444 = $p; + $445 = HEAP8[$444>>0]|0; + $446 = $445 << 24 >> 24; + $447 = ($446|0)==(35); + if ($447) { + $digptr = 0; + $448 = $p; + $hexfmt = $448; + $hexcount = 0; + break; + } + $449 = $p; + $450 = HEAP8[$449>>0]|0; + $451 = $450 << 24 >> 24; + $452 = ($451|0)==(124); + if (!($452)) { + label = 101; + break L20; + } + $digptr = 0; + $453 = $p; + $base64 = $453; + break; + } + $460 = $percent; + $461 = ($460|0)!=(0|0); + $462 = $p; + $463 = HEAP8[$462>>0]|0; + $464 = $463 << 24 >> 24; + if (!($461)) { + $945 = ($464|0)==(40); + if ($945) { + $946 = $disphint; + $947 = ($946|0)!=(0|0); + if ($947) { + label = 179; + break L20; + } + $954 = (_make_space($c,0)|0); + $_ms_err32 = $954; + $955 = $_ms_err32; + $956 = ($955|0)!=(0); + if ($956) { + label = 181; + break L20; + } + $964 = ((($c)) + 8|0); + $965 = HEAP32[$964>>2]|0; + $966 = ((($965)) + 1|0); + HEAP32[$964>>2] = $966; + HEAP8[$965>>0] = 3; + $967 = $level; + $968 = (($967) + 1)|0; + $level = $968; + break; + } + $969 = $p; + $970 = HEAP8[$969>>0]|0; + $971 = $970 << 24 >> 24; + $972 = ($971|0)==(41); + if ($972) { + $973 = $disphint; + $974 = ($973|0)!=(0|0); + if ($974) { + label = 185; + break L20; + } + $981 = (_make_space($c,0)|0); + $_ms_err33 = $981; + $982 = $_ms_err33; + $983 = ($982|0)!=(0); + if ($983) { + label = 187; + break L20; + } + $991 = ((($c)) + 8|0); + $992 = HEAP32[$991>>2]|0; + $993 = ((($992)) + 1|0); + HEAP32[$991>>2] = $993; + HEAP8[$992>>0] = 4; + $994 = $level; + $995 = (($994) + -1)|0; + $level = $995; + break; + } + $996 = $p; + $997 = HEAP8[$996>>0]|0; + $998 = $997 << 24 >> 24; + $999 = ($998|0)==(34); + $1000 = $p; + if ($999) { + $quoted = $1000; + $quoted_esc = 0; + break; + } + $1001 = HEAP8[$1000>>0]|0; + $1002 = $1001 << 24 >> 24; + $1003 = ($1002|0)==(35); + $1004 = $p; + if ($1003) { + $hexfmt = $1004; + $hexcount = 0; + break; + } + $1005 = HEAP8[$1004>>0]|0; + $1006 = $1005 << 24 >> 24; + $1007 = ($1006|0)==(124); + $1008 = $p; + if ($1007) { + $base64 = $1008; + break; + } + $1009 = HEAP8[$1008>>0]|0; + $1010 = $1009 << 24 >> 24; + $1011 = ($1010|0)==(91); + if ($1011) { + $1012 = $disphint; + $1013 = ($1012|0)!=(0|0); + $1014 = $p; + if ($1013) { + label = 197; + break L20; + } + $disphint = $1014; + break; + } + $1020 = $p; + $1021 = HEAP8[$1020>>0]|0; + $1022 = $1021 << 24 >> 24; + $1023 = ($1022|0)==(93); + if ($1023) { + $1024 = $disphint; + $1025 = ($1024|0)!=(0|0); + if (!($1025)) { + label = 201; + break L20; + } + $disphint = 0; + break; + } + $1032 = $p; + $1033 = HEAP8[$1032>>0]|0; + $1034 = $1033 << 24 >> 24; + $1035 = ($1034|0)>=(48); + do { + if ($1035) { + $1036 = $p; + $1037 = HEAP8[$1036>>0]|0; + $1038 = $1037 << 24 >> 24; + $1039 = ($1038|0)<=(57); + if (!($1039)) { + break; + } + $1040 = $p; + $1041 = HEAP8[$1040>>0]|0; + $1042 = $1041 << 24 >> 24; + $1043 = ($1042|0)==(48); + $1044 = $p; + if ($1043) { + label = 206; + break L20; + } + $digptr = $1044; + break L27; + } + } while(0); + $1050 = $p; + $1051 = HEAP8[$1050>>0]|0; + $1052 = $1051 << 24 >> 24; + $1053 = (_strchr(22614,$1052)|0); + $1054 = ($1053|0)!=(0|0); + $1055 = $p; + if ($1054) { + $tokenp = $1055; + break; + } + $1056 = (_whitespacep($1055)|0); + $1057 = ($1056|0)!=(0); + if ($1057) { + break; + } + $1058 = $p; + $1059 = HEAP8[$1058>>0]|0; + $1060 = $1059 << 24 >> 24; + $1061 = ($1060|0)==(123); + $1062 = $p; + if ($1061) { + label = 212; + break L20; + } + $1068 = HEAP8[$1062>>0]|0; + $1069 = $1068 << 24 >> 24; + $1070 = (_strchr(22713,$1069)|0); + $1071 = ($1070|0)!=(0|0); + if ($1071) { + label = 214; + break L20; + } + $1078 = $5; + $1079 = ($1078|0)!=(0); + if (!($1079)) { + label = 218; + break L20; + } + $1080 = $p; + $1081 = HEAP8[$1080>>0]|0; + $1082 = $1081 << 24 >> 24; + $1083 = ($1082|0)==(37); + if (!($1083)) { + label = 218; + break L20; + } + $1084 = $p; + $percent = $1084; + break; + } + $465 = ($464|0)==(109); + do { + if ($465) { + label = 105; + } else { + $466 = $p; + $467 = HEAP8[$466>>0]|0; + $468 = $467 << 24 >> 24; + $469 = ($468|0)==(77); + if ($469) { + label = 105; + } else { + $640 = $p; + $641 = HEAP8[$640>>0]|0; + $642 = $641 << 24 >> 24; + $643 = ($642|0)==(115); + if ($643) { + $644 = $6; + $645 = ($644|0)!=(0|0); + if ($645) { + $654 = $arg_counter; + $655 = (($654) + 1)|0; + $arg_counter = $655; + $656 = $6; + $657 = (($656) + ($654<<2)|0); + $658 = HEAP32[$657>>2]|0; + $659 = HEAP32[$658>>2]|0; + $astr = $659; + } else { + $646 = $7; + $arglist_current7 = HEAP32[$646>>2]|0; + $647 = $arglist_current7; + $648 = ((0) + 4|0); + $expanded34 = $648; + $expanded33 = (($expanded34) - 1)|0; + $649 = (($647) + ($expanded33))|0; + $650 = ((0) + 4|0); + $expanded38 = $650; + $expanded37 = (($expanded38) - 1)|0; + $expanded36 = $expanded37 ^ -1; + $651 = $649 & $expanded36; + $652 = $651; + $653 = HEAP32[$652>>2]|0; + $arglist_next8 = ((($652)) + 4|0); + HEAP32[$646>>2] = $arglist_next8; + $astr = $653; + } + $660 = $astr; + $661 = (_strlen($660)|0); + $alen = $661; + $662 = $alen; + $663 = (_make_space($c,$662)|0); + $_ms_err14 = $663; + $664 = $_ms_err14; + $665 = ($664|0)!=(0); + if ($665) { + label = 135; + break L20; + } + $673 = ((($c)) + 8|0); + $674 = HEAP32[$673>>2]|0; + $675 = ((($674)) + 1|0); + HEAP32[$673>>2] = $675; + HEAP8[$674>>0] = 1; + $676 = $alen; + $677 = $676&65535; + HEAP16[$ashort15>>1] = $677; + $678 = ((($c)) + 8|0); + $679 = HEAP32[$678>>2]|0; + ;HEAP8[$679>>0]=HEAP8[$ashort15>>0]|0;HEAP8[$679+1>>0]=HEAP8[$ashort15+1>>0]|0; + $680 = ((($c)) + 8|0); + $681 = HEAP32[$680>>2]|0; + $682 = ((($681)) + 2|0); + HEAP32[$680>>2] = $682; + $683 = ((($c)) + 8|0); + $684 = HEAP32[$683>>2]|0; + $685 = $astr; + $686 = $alen; + _memcpy(($684|0),($685|0),($686|0))|0; + $687 = $alen; + $688 = ((($c)) + 8|0); + $689 = HEAP32[$688>>2]|0; + $690 = (($689) + ($687)|0); + HEAP32[$688>>2] = $690; + break; + } + $691 = $p; + $692 = HEAP8[$691>>0]|0; + $693 = $692 << 24 >> 24; + $694 = ($693|0)==(98); + if ($694) { + $695 = $6; + $696 = ($695|0)!=(0|0); + if ($696) { + $705 = $arg_counter; + $706 = (($705) + 1)|0; + $arg_counter = $706; + $707 = $6; + $708 = (($707) + ($705<<2)|0); + $709 = HEAP32[$708>>2]|0; + $710 = HEAP32[$709>>2]|0; + $alen17 = $710; + } else { + $697 = $7; + $arglist_current10 = HEAP32[$697>>2]|0; + $698 = $arglist_current10; + $699 = ((0) + 4|0); + $expanded41 = $699; + $expanded40 = (($expanded41) - 1)|0; + $700 = (($698) + ($expanded40))|0; + $701 = ((0) + 4|0); + $expanded45 = $701; + $expanded44 = (($expanded45) - 1)|0; + $expanded43 = $expanded44 ^ -1; + $702 = $700 & $expanded43; + $703 = $702; + $704 = HEAP32[$703>>2]|0; + $arglist_next11 = ((($703)) + 4|0); + HEAP32[$697>>2] = $arglist_next11; + $alen17 = $704; + } + $711 = $6; + $712 = ($711|0)!=(0|0); + if ($712) { + $721 = $arg_counter; + $722 = (($721) + 1)|0; + $arg_counter = $722; + $723 = $6; + $724 = (($723) + ($721<<2)|0); + $725 = HEAP32[$724>>2]|0; + $726 = HEAP32[$725>>2]|0; + $astr16 = $726; + } else { + $713 = $7; + $arglist_current13 = HEAP32[$713>>2]|0; + $714 = $arglist_current13; + $715 = ((0) + 4|0); + $expanded48 = $715; + $expanded47 = (($expanded48) - 1)|0; + $716 = (($714) + ($expanded47))|0; + $717 = ((0) + 4|0); + $expanded52 = $717; + $expanded51 = (($expanded52) - 1)|0; + $expanded50 = $expanded51 ^ -1; + $718 = $716 & $expanded50; + $719 = $718; + $720 = HEAP32[$719>>2]|0; + $arglist_next14 = ((($719)) + 4|0); + HEAP32[$713>>2] = $arglist_next14; + $astr16 = $720; + } + $727 = $alen17; + $728 = (_make_space($c,$727)|0); + $_ms_err18 = $728; + $729 = $_ms_err18; + $730 = ($729|0)!=(0); + if ($730) { + label = 145; + break L20; + } + $738 = $alen17; + $739 = ($738|0)!=(0); + do { + if ($739) { + $740 = HEAP32[$c>>2]|0; + $741 = (__gcry_is_secure($740)|0); + $742 = ($741|0)!=(0); + if ($742) { + break; + } + $743 = $astr16; + $744 = (__gcry_is_secure($743)|0); + $745 = ($744|0)!=(0); + if (!($745)) { + break; + } + $746 = ((($c)) + 4|0); + $747 = HEAP32[$746>>2]|0; + $748 = (1 + ($747))|0; + $749 = (($748) - 1)|0; + $750 = (__gcry_malloc_secure($749)|0); + $newsexp19 = $750; + $751 = $newsexp19; + $752 = ($751|0)!=(0|0); + if (!($752)) { + label = 150; + break L20; + } + $756 = $newsexp19; + $newhead20 = $756; + $757 = $newhead20; + $758 = HEAP32[$c>>2]|0; + $759 = ((($c)) + 8|0); + $760 = HEAP32[$759>>2]|0; + $761 = HEAP32[$c>>2]|0; + $762 = $760; + $763 = $761; + $764 = (($762) - ($763))|0; + _memcpy(($757|0),($758|0),($764|0))|0; + $765 = $newhead20; + $766 = ((($c)) + 8|0); + $767 = HEAP32[$766>>2]|0; + $768 = HEAP32[$c>>2]|0; + $769 = $767; + $770 = $768; + $771 = (($769) - ($770))|0; + $772 = (($765) + ($771)|0); + $773 = ((($c)) + 8|0); + HEAP32[$773>>2] = $772; + $774 = HEAP32[$c>>2]|0; + __gcry_free($774); + $775 = $newsexp19; + HEAP32[$c>>2] = $775; + } + } while(0); + $776 = ((($c)) + 8|0); + $777 = HEAP32[$776>>2]|0; + $778 = ((($777)) + 1|0); + HEAP32[$776>>2] = $778; + HEAP8[$777>>0] = 1; + $779 = $alen17; + $780 = $779&65535; + HEAP16[$ashort21>>1] = $780; + $781 = ((($c)) + 8|0); + $782 = HEAP32[$781>>2]|0; + ;HEAP8[$782>>0]=HEAP8[$ashort21>>0]|0;HEAP8[$782+1>>0]=HEAP8[$ashort21+1>>0]|0; + $783 = ((($c)) + 8|0); + $784 = HEAP32[$783>>2]|0; + $785 = ((($784)) + 2|0); + HEAP32[$783>>2] = $785; + $786 = ((($c)) + 8|0); + $787 = HEAP32[$786>>2]|0; + $788 = $astr16; + $789 = $alen17; + _memcpy(($787|0),($788|0),($789|0))|0; + $790 = $alen17; + $791 = ((($c)) + 8|0); + $792 = HEAP32[$791>>2]|0; + $793 = (($792) + ($790)|0); + HEAP32[$791>>2] = $793; + break; + } + $794 = $p; + $795 = HEAP8[$794>>0]|0; + $796 = $795 << 24 >> 24; + $797 = ($796|0)==(100); + if ($797) { + $798 = $6; + $799 = ($798|0)!=(0|0); + if ($799) { + $808 = $arg_counter; + $809 = (($808) + 1)|0; + $arg_counter = $809; + $810 = $6; + $811 = (($810) + ($808<<2)|0); + $812 = HEAP32[$811>>2]|0; + $813 = HEAP32[$812>>2]|0; + $aint = $813; + } else { + $800 = $7; + $arglist_current16 = HEAP32[$800>>2]|0; + $801 = $arglist_current16; + $802 = ((0) + 4|0); + $expanded55 = $802; + $expanded54 = (($expanded55) - 1)|0; + $803 = (($801) + ($expanded54))|0; + $804 = ((0) + 4|0); + $expanded59 = $804; + $expanded58 = (($expanded59) - 1)|0; + $expanded57 = $expanded58 ^ -1; + $805 = $803 & $expanded57; + $806 = $805; + $807 = HEAP32[$806>>2]|0; + $arglist_next17 = ((($806)) + 4|0); + HEAP32[$800>>2] = $arglist_next17; + $aint = $807; + } + $814 = $aint; + HEAP32[$vararg_buffer>>2] = $814; + (_sprintf($buf,22707,$vararg_buffer)|0); + $815 = (_strlen($buf)|0); + $alen22 = $815; + $816 = $alen22; + $817 = (_make_space($c,$816)|0); + $_ms_err23 = $817; + $818 = $_ms_err23; + $819 = ($818|0)!=(0); + if ($819) { + label = 158; + break L20; + } + $827 = ((($c)) + 8|0); + $828 = HEAP32[$827>>2]|0; + $829 = ((($828)) + 1|0); + HEAP32[$827>>2] = $829; + HEAP8[$828>>0] = 1; + $830 = $alen22; + $831 = $830&65535; + HEAP16[$ashort24>>1] = $831; + $832 = ((($c)) + 8|0); + $833 = HEAP32[$832>>2]|0; + ;HEAP8[$833>>0]=HEAP8[$ashort24>>0]|0;HEAP8[$833+1>>0]=HEAP8[$ashort24+1>>0]|0; + $834 = ((($c)) + 8|0); + $835 = HEAP32[$834>>2]|0; + $836 = ((($835)) + 2|0); + HEAP32[$834>>2] = $836; + $837 = ((($c)) + 8|0); + $838 = HEAP32[$837>>2]|0; + $839 = $alen22; + _memcpy(($838|0),($buf|0),($839|0))|0; + $840 = $alen22; + $841 = ((($c)) + 8|0); + $842 = HEAP32[$841>>2]|0; + $843 = (($842) + ($840)|0); + HEAP32[$841>>2] = $843; + break; + } + $844 = $p; + $845 = HEAP8[$844>>0]|0; + $846 = $845 << 24 >> 24; + $847 = ($846|0)==(117); + if ($847) { + $848 = $6; + $849 = ($848|0)!=(0|0); + if ($849) { + $858 = $arg_counter; + $859 = (($858) + 1)|0; + $arg_counter = $859; + $860 = $6; + $861 = (($860) + ($858<<2)|0); + $862 = HEAP32[$861>>2]|0; + $863 = HEAP32[$862>>2]|0; + $aint25 = $863; + } else { + $850 = $7; + $arglist_current19 = HEAP32[$850>>2]|0; + $851 = $arglist_current19; + $852 = ((0) + 4|0); + $expanded62 = $852; + $expanded61 = (($expanded62) - 1)|0; + $853 = (($851) + ($expanded61))|0; + $854 = ((0) + 4|0); + $expanded66 = $854; + $expanded65 = (($expanded66) - 1)|0; + $expanded64 = $expanded65 ^ -1; + $855 = $853 & $expanded64; + $856 = $855; + $857 = HEAP32[$856>>2]|0; + $arglist_next20 = ((($856)) + 4|0); + HEAP32[$850>>2] = $arglist_next20; + $aint25 = $857; + } + $864 = $aint25; + HEAP32[$vararg_buffer21>>2] = $864; + (_sprintf($buf27,22710,$vararg_buffer21)|0); + $865 = (_strlen($buf27)|0); + $alen26 = $865; + $866 = $alen26; + $867 = (_make_space($c,$866)|0); + $_ms_err28 = $867; + $868 = $_ms_err28; + $869 = ($868|0)!=(0); + if ($869) { + label = 165; + break L20; + } + $877 = ((($c)) + 8|0); + $878 = HEAP32[$877>>2]|0; + $879 = ((($878)) + 1|0); + HEAP32[$877>>2] = $879; + HEAP8[$878>>0] = 1; + $880 = $alen26; + $881 = $880&65535; + HEAP16[$ashort29>>1] = $881; + $882 = ((($c)) + 8|0); + $883 = HEAP32[$882>>2]|0; + ;HEAP8[$883>>0]=HEAP8[$ashort29>>0]|0;HEAP8[$883+1>>0]=HEAP8[$ashort29+1>>0]|0; + $884 = ((($c)) + 8|0); + $885 = HEAP32[$884>>2]|0; + $886 = ((($885)) + 2|0); + HEAP32[$884>>2] = $886; + $887 = ((($c)) + 8|0); + $888 = HEAP32[$887>>2]|0; + $889 = $alen26; + _memcpy(($888|0),($buf27|0),($889|0))|0; + $890 = $alen26; + $891 = ((($c)) + 8|0); + $892 = HEAP32[$891>>2]|0; + $893 = (($892) + ($890)|0); + HEAP32[$891>>2] = $893; + break; + } + $894 = $p; + $895 = HEAP8[$894>>0]|0; + $896 = $895 << 24 >> 24; + $897 = ($896|0)==(83); + if (!($897)) { + label = 175; + break L20; + } + $898 = $6; + $899 = ($898|0)!=(0|0); + if ($899) { + $908 = $arg_counter; + $909 = (($908) + 1)|0; + $arg_counter = $909; + $910 = $6; + $911 = (($910) + ($908<<2)|0); + $912 = HEAP32[$911>>2]|0; + $913 = HEAP32[$912>>2]|0; + $asexp = $913; + } else { + $900 = $7; + $arglist_current25 = HEAP32[$900>>2]|0; + $901 = $arglist_current25; + $902 = ((0) + 4|0); + $expanded69 = $902; + $expanded68 = (($expanded69) - 1)|0; + $903 = (($901) + ($expanded68))|0; + $904 = ((0) + 4|0); + $expanded73 = $904; + $expanded72 = (($expanded73) - 1)|0; + $expanded71 = $expanded72 ^ -1; + $905 = $903 & $expanded71; + $906 = $905; + $907 = HEAP32[$906>>2]|0; + $arglist_next26 = ((($906)) + 4|0); + HEAP32[$900>>2] = $arglist_next26; + $asexp = $907; + } + $914 = $asexp; + $915 = (_get_internal_buffer($914,$aoff)|0); + $alen30 = $915; + $916 = $alen30; + $917 = ($916|0)!=(0); + if (!($917)) { + break; + } + $918 = $alen30; + $919 = (_make_space($c,$918)|0); + $_ms_err31 = $919; + $920 = $_ms_err31; + $921 = ($920|0)!=(0); + if ($921) { + label = 173; + break L20; + } + $929 = ((($c)) + 8|0); + $930 = HEAP32[$929>>2]|0; + $931 = $asexp; + $932 = HEAP32[$aoff>>2]|0; + $933 = (($931) + ($932)|0); + $934 = $alen30; + _memcpy(($930|0),($933|0),($934|0))|0; + $935 = $alen30; + $936 = ((($c)) + 8|0); + $937 = HEAP32[$936>>2]|0; + $938 = (($937) + ($935)|0); + HEAP32[$936>>2] = $938; + } + } + } while(0); + do { + if ((label|0) == 105) { + label = 0; + HEAP32[$nm>>2] = 0; + $470 = $p; + $471 = HEAP8[$470>>0]|0; + $472 = $471 << 24 >> 24; + $473 = ($472|0)==(109); + $474 = $473 ? 1 : 5; + $mpifmt = $474; + $475 = $6; + $476 = ($475|0)!=(0|0); + if ($476) { + $485 = $arg_counter; + $486 = (($485) + 1)|0; + $arg_counter = $486; + $487 = $6; + $488 = (($487) + ($485<<2)|0); + $489 = HEAP32[$488>>2]|0; + $490 = HEAP32[$489>>2]|0; + $m = $490; + } else { + $477 = $7; + $arglist_current = HEAP32[$477>>2]|0; + $478 = $arglist_current; + $479 = ((0) + 4|0); + $expanded27 = $479; + $expanded = (($expanded27) - 1)|0; + $480 = (($478) + ($expanded))|0; + $481 = ((0) + 4|0); + $expanded31 = $481; + $expanded30 = (($expanded31) - 1)|0; + $expanded29 = $expanded30 ^ -1; + $482 = $480 & $expanded29; + $483 = $482; + $484 = HEAP32[$483>>2]|0; + $arglist_next = ((($483)) + 4|0); + HEAP32[$477>>2] = $arglist_next; + $m = $484; + } + $491 = $m; + $492 = (__gcry_mpi_get_flag($491,2)|0); + $493 = ($492|0)!=(0); + if ($493) { + $494 = $m; + $495 = (__gcry_mpi_get_opaque($494,$nbits)|0); + $mp = $495; + $496 = HEAP32[$nbits>>2]|0; + $497 = (($496) + 7)|0; + $498 = (($497>>>0) / 8)&-1; + HEAP32[$nm>>2] = $498; + $499 = $mp; + $500 = ($499|0)!=(0|0); + $501 = HEAP32[$nm>>2]|0; + $502 = ($501|0)!=(0); + $or$cond3 = $500 & $502; + if (!($or$cond3)) { + break; + } + $503 = HEAP32[$nm>>2]|0; + $504 = (_make_space($c,$503)|0); + $_ms_err8 = $504; + $505 = $_ms_err8; + $506 = ($505|0)!=(0); + if ($506) { + label = 111; + break L20; + } + $514 = HEAP32[$c>>2]|0; + $515 = (__gcry_is_secure($514)|0); + $516 = ($515|0)!=(0); + do { + if (!($516)) { + $517 = $m; + $518 = (__gcry_mpi_get_flag($517,1)|0); + $519 = ($518|0)!=(0); + if (!($519)) { + break; + } + $520 = ((($c)) + 4|0); + $521 = HEAP32[$520>>2]|0; + $522 = (1 + ($521))|0; + $523 = (($522) - 1)|0; + $524 = (__gcry_malloc_secure($523)|0); + $newsexp = $524; + $525 = $newsexp; + $526 = ($525|0)!=(0|0); + if (!($526)) { + label = 115; + break L20; + } + $530 = $newsexp; + $newhead = $530; + $531 = $newhead; + $532 = HEAP32[$c>>2]|0; + $533 = ((($c)) + 8|0); + $534 = HEAP32[$533>>2]|0; + $535 = HEAP32[$c>>2]|0; + $536 = $534; + $537 = $535; + $538 = (($536) - ($537))|0; + _memcpy(($531|0),($532|0),($538|0))|0; + $539 = $newhead; + $540 = ((($c)) + 8|0); + $541 = HEAP32[$540>>2]|0; + $542 = HEAP32[$c>>2]|0; + $543 = $541; + $544 = $542; + $545 = (($543) - ($544))|0; + $546 = (($539) + ($545)|0); + $547 = ((($c)) + 8|0); + HEAP32[$547>>2] = $546; + $548 = HEAP32[$c>>2]|0; + __gcry_free($548); + $549 = $newsexp; + HEAP32[$c>>2] = $549; + } + } while(0); + $550 = ((($c)) + 8|0); + $551 = HEAP32[$550>>2]|0; + $552 = ((($551)) + 1|0); + HEAP32[$550>>2] = $552; + HEAP8[$551>>0] = 1; + $553 = HEAP32[$nm>>2]|0; + $554 = $553&65535; + HEAP16[$ashort9>>1] = $554; + $555 = ((($c)) + 8|0); + $556 = HEAP32[$555>>2]|0; + ;HEAP8[$556>>0]=HEAP8[$ashort9>>0]|0;HEAP8[$556+1>>0]=HEAP8[$ashort9+1>>0]|0; + $557 = ((($c)) + 8|0); + $558 = HEAP32[$557>>2]|0; + $559 = ((($558)) + 2|0); + HEAP32[$557>>2] = $559; + $560 = ((($c)) + 8|0); + $561 = HEAP32[$560>>2]|0; + $562 = $mp; + $563 = HEAP32[$nm>>2]|0; + _memcpy(($561|0),($562|0),($563|0))|0; + $564 = HEAP32[$nm>>2]|0; + $565 = ((($c)) + 8|0); + $566 = HEAP32[$565>>2]|0; + $567 = (($566) + ($564)|0); + HEAP32[$565>>2] = $567; + break; + } + $568 = $mpifmt; + $569 = $m; + $570 = (__gcry_mpi_print($568,0,0,$nm,$569)|0); + $571 = ($570|0)!=(0); + if ($571) { + label = 119; + break L20; + } + $572 = HEAP32[$nm>>2]|0; + $573 = (_make_space($c,$572)|0); + $_ms_err10 = $573; + $574 = $_ms_err10; + $575 = ($574|0)!=(0); + if ($575) { + label = 121; + break L20; + } + $583 = HEAP32[$c>>2]|0; + $584 = (__gcry_is_secure($583)|0); + $585 = ($584|0)!=(0); + do { + if (!($585)) { + $586 = $m; + $587 = (__gcry_mpi_get_flag($586,1)|0); + $588 = ($587|0)!=(0); + if (!($588)) { + break; + } + $589 = ((($c)) + 4|0); + $590 = HEAP32[$589>>2]|0; + $591 = (1 + ($590))|0; + $592 = (($591) - 1)|0; + $593 = (__gcry_malloc_secure($592)|0); + $newsexp11 = $593; + $594 = $newsexp11; + $595 = ($594|0)!=(0|0); + if (!($595)) { + label = 125; + break L20; + } + $599 = $newsexp11; + $newhead12 = $599; + $600 = $newhead12; + $601 = HEAP32[$c>>2]|0; + $602 = ((($c)) + 8|0); + $603 = HEAP32[$602>>2]|0; + $604 = HEAP32[$c>>2]|0; + $605 = $603; + $606 = $604; + $607 = (($605) - ($606))|0; + _memcpy(($600|0),($601|0),($607|0))|0; + $608 = $newhead12; + $609 = ((($c)) + 8|0); + $610 = HEAP32[$609>>2]|0; + $611 = HEAP32[$c>>2]|0; + $612 = $610; + $613 = $611; + $614 = (($612) - ($613))|0; + $615 = (($608) + ($614)|0); + $616 = ((($c)) + 8|0); + HEAP32[$616>>2] = $615; + $617 = HEAP32[$c>>2]|0; + __gcry_free($617); + $618 = $newsexp11; + HEAP32[$c>>2] = $618; + } + } while(0); + $619 = ((($c)) + 8|0); + $620 = HEAP32[$619>>2]|0; + $621 = ((($620)) + 1|0); + HEAP32[$619>>2] = $621; + HEAP8[$620>>0] = 1; + $622 = HEAP32[$nm>>2]|0; + $623 = $622&65535; + HEAP16[$ashort13>>1] = $623; + $624 = ((($c)) + 8|0); + $625 = HEAP32[$624>>2]|0; + ;HEAP8[$625>>0]=HEAP8[$ashort13>>0]|0;HEAP8[$625+1>>0]=HEAP8[$ashort13+1>>0]|0; + $626 = ((($c)) + 8|0); + $627 = HEAP32[$626>>2]|0; + $628 = ((($627)) + 2|0); + HEAP32[$626>>2] = $628; + $629 = $mpifmt; + $630 = ((($c)) + 8|0); + $631 = HEAP32[$630>>2]|0; + $632 = HEAP32[$nm>>2]|0; + $633 = $m; + $634 = (__gcry_mpi_print($629,$631,$632,$nm,$633)|0); + $635 = ($634|0)!=(0); + if ($635) { + label = 128; + break L20; + } + $636 = HEAP32[$nm>>2]|0; + $637 = ((($c)) + 8|0); + $638 = HEAP32[$637>>2]|0; + $639 = (($638) + ($636)|0); + HEAP32[$637>>2] = $639; + } + } while(0); + $percent = 0; + } + } while(0); + $1091 = $p; + $1092 = ((($1091)) + 1|0); + $p = $1092; + $1093 = $n; + $1094 = (($1093) + -1)|0; + $n = $1094; + } + switch (label|0) { + case 18: { + $63 = $_ms_err; + $err = $63; + $64 = $p; + $65 = $3; + $66 = $64; + $67 = $65; + $68 = (($66) - ($67))|0; + $69 = $2; + HEAP32[$69>>2] = $68; + break L18; + break; + } + case 29: { + $117 = $p; + $118 = $3; + $119 = $117; + $120 = $118; + $121 = (($119) - ($120))|0; + $122 = $2; + HEAP32[$122>>2] = $121; + $err = 206; + break L18; + break; + } + case 44: { + $189 = $p; + $190 = $3; + $191 = $189; + $192 = $190; + $193 = (($191) - ($192))|0; + $194 = $2; + HEAP32[$194>>2] = $193; + $err = 206; + break L18; + break; + } + case 54: { + $221 = $p; + $222 = $3; + $223 = $221; + $224 = $222; + $225 = (($223) - ($224))|0; + $226 = $2; + HEAP32[$226>>2] = $225; + $err = 206; + break L18; + break; + } + case 59: { + $242 = $_ms_err1; + $err = $242; + $243 = $p; + $244 = $3; + $245 = $243; + $246 = $244; + $247 = (($245) - ($246))|0; + $248 = $2; + HEAP32[$248>>2] = $247; + break L18; + break; + } + case 66: { + $293 = $p; + $294 = $3; + $295 = $293; + $296 = $294; + $297 = (($295) - ($296))|0; + $298 = $2; + HEAP32[$298>>2] = $297; + $err = 212; + break L18; + break; + } + case 68: { + $305 = $_ms_err4; + $err = $305; + $306 = $p; + $307 = $3; + $308 = $306; + $309 = $307; + $310 = (($308) - ($309))|0; + $311 = $2; + HEAP32[$311>>2] = $310; + break L18; + break; + } + case 82: { + $365 = $p; + $366 = $3; + $367 = $365; + $368 = $366; + $369 = (($367) - ($368))|0; + $370 = $2; + HEAP32[$370>>2] = $369; + $err = 211; + break L18; + break; + } + case 91: { + $397 = $p; + $398 = $3; + $399 = $397; + $400 = $398; + $401 = (($399) - ($400))|0; + $402 = $2; + HEAP32[$402>>2] = $401; + $err = 202; + break L18; + break; + } + case 93: { + $407 = $_ms_err6; + $err = $407; + $408 = $p; + $409 = $3; + $410 = $408; + $411 = $409; + $412 = (($410) - ($411))|0; + $413 = $2; + HEAP32[$413>>2] = $412; + break L18; + break; + } + case 101: { + $454 = $p; + $455 = $3; + $456 = $454; + $457 = $455; + $458 = (($456) - ($457))|0; + $459 = $2; + HEAP32[$459>>2] = $458; + $err = 201; + break L18; + break; + } + case 111: { + $507 = $_ms_err8; + $err = $507; + $508 = $p; + $509 = $3; + $510 = $508; + $511 = $509; + $512 = (($510) - ($511))|0; + $513 = $2; + HEAP32[$513>>2] = $512; + break L18; + break; + } + case 115: { + $527 = (___errno_location()|0); + $528 = HEAP32[$527>>2]|0; + $529 = (_gpg_err_code_from_errno($528)|0); + $err = $529; + break L18; + break; + } + case 119: { + __gcry_bug(22685,1433,22692); + // unreachable; + break; + } + case 121: { + $576 = $_ms_err10; + $err = $576; + $577 = $p; + $578 = $3; + $579 = $577; + $580 = $578; + $581 = (($579) - ($580))|0; + $582 = $2; + HEAP32[$582>>2] = $581; + break L18; + break; + } + case 125: { + $596 = (___errno_location()|0); + $597 = HEAP32[$596>>2]|0; + $598 = (_gpg_err_code_from_errno($597)|0); + $err = $598; + break L18; + break; + } + case 128: { + __gcry_bug(22685,1460,22692); + // unreachable; + break; + } + case 135: { + $666 = $_ms_err14; + $err = $666; + $667 = $p; + $668 = $3; + $669 = $667; + $670 = $668; + $671 = (($669) - ($670))|0; + $672 = $2; + HEAP32[$672>>2] = $671; + break L18; + break; + } + case 145: { + $731 = $_ms_err18; + $err = $731; + $732 = $p; + $733 = $3; + $734 = $732; + $735 = $733; + $736 = (($734) - ($735))|0; + $737 = $2; + HEAP32[$737>>2] = $736; + break L18; + break; + } + case 150: { + $753 = (___errno_location()|0); + $754 = HEAP32[$753>>2]|0; + $755 = (_gpg_err_code_from_errno($754)|0); + $err = $755; + break L18; + break; + } + case 158: { + $820 = $_ms_err23; + $err = $820; + $821 = $p; + $822 = $3; + $823 = $821; + $824 = $822; + $825 = (($823) - ($824))|0; + $826 = $2; + HEAP32[$826>>2] = $825; + break L18; + break; + } + case 165: { + $870 = $_ms_err28; + $err = $870; + $871 = $p; + $872 = $3; + $873 = $871; + $874 = $872; + $875 = (($873) - ($874))|0; + $876 = $2; + HEAP32[$876>>2] = $875; + break L18; + break; + } + case 173: { + $922 = $_ms_err31; + $err = $922; + $923 = $p; + $924 = $3; + $925 = $923; + $926 = $924; + $927 = (($925) - ($926))|0; + $928 = $2; + HEAP32[$928>>2] = $927; + break L18; + break; + } + case 175: { + $939 = $p; + $940 = $3; + $941 = $939; + $942 = $940; + $943 = (($941) - ($942))|0; + $944 = $2; + HEAP32[$944>>2] = $943; + $err = 201; + break L18; + break; + } + case 179: { + $948 = $p; + $949 = $3; + $950 = $948; + $951 = $949; + $952 = (($950) - ($951))|0; + $953 = $2; + HEAP32[$953>>2] = $952; + $err = 209; + break L18; + break; + } + case 181: { + $957 = $_ms_err32; + $err = $957; + $958 = $p; + $959 = $3; + $960 = $958; + $961 = $959; + $962 = (($960) - ($961))|0; + $963 = $2; + HEAP32[$963>>2] = $962; + break L18; + break; + } + case 185: { + $975 = $p; + $976 = $3; + $977 = $975; + $978 = $976; + $979 = (($977) - ($978))|0; + $980 = $2; + HEAP32[$980>>2] = $979; + $err = 209; + break L18; + break; + } + case 187: { + $984 = $_ms_err33; + $err = $984; + $985 = $p; + $986 = $3; + $987 = $985; + $988 = $986; + $989 = (($987) - ($988))|0; + $990 = $2; + HEAP32[$990>>2] = $989; + break L18; + break; + } + case 197: { + $1015 = $3; + $1016 = $1014; + $1017 = $1015; + $1018 = (($1016) - ($1017))|0; + $1019 = $2; + HEAP32[$1019>>2] = $1018; + $err = 208; + break L18; + break; + } + case 201: { + $1026 = $p; + $1027 = $3; + $1028 = $1026; + $1029 = $1027; + $1030 = (($1028) - ($1029))|0; + $1031 = $2; + HEAP32[$1031>>2] = $1030; + $err = 209; + break L18; + break; + } + case 206: { + $1045 = $3; + $1046 = $1044; + $1047 = $1045; + $1048 = (($1046) - ($1047))|0; + $1049 = $2; + HEAP32[$1049>>2] = $1048; + $err = 207; + break L18; + break; + } + case 212: { + $1063 = $3; + $1064 = $1062; + $1065 = $1063; + $1066 = (($1064) - ($1065))|0; + $1067 = $2; + HEAP32[$1067>>2] = $1066; + $err = 210; + break L18; + break; + } + case 214: { + $1072 = $p; + $1073 = $3; + $1074 = $1072; + $1075 = $1073; + $1076 = (($1074) - ($1075))|0; + $1077 = $2; + HEAP32[$1077>>2] = $1076; + $err = 210; + break L18; + break; + } + case 218: { + $1085 = $p; + $1086 = $3; + $1087 = $1085; + $1088 = $1086; + $1089 = (($1087) - ($1088))|0; + $1090 = $2; + HEAP32[$1090>>2] = $1089; + $err = 205; + break L18; + break; + } + case 220: { + $1095 = (_make_space($c,0)|0); + $_ms_err34 = $1095; + $1096 = $_ms_err34; + $1097 = ($1096|0)!=(0); + if ($1097) { + $1098 = $_ms_err34; + $err = $1098; + $1099 = $p; + $1100 = $3; + $1101 = $1099; + $1102 = $1100; + $1103 = (($1101) - ($1102))|0; + $1104 = $2; + HEAP32[$1104>>2] = $1103; + break L18; + } + $1105 = ((($c)) + 8|0); + $1106 = HEAP32[$1105>>2]|0; + $1107 = ((($1106)) + 1|0); + HEAP32[$1105>>2] = $1107; + HEAP8[$1106>>0] = 0; + $1108 = $level; + $1109 = ($1108|0)==(0); + $1110 = $err; + $1111 = ($1110|0)!=(0); + $or$cond5 = $1109 | $1111; + if ($or$cond5) { + break L18; + } + $err = 203; + break L18; + break; + } + } + } else { + $35 = (___errno_location()|0); + $36 = HEAP32[$35>>2]|0; + $37 = (_gpg_err_code_from_errno($36)|0); + $err = $37; + $38 = $2; + HEAP32[$38>>2] = 0; + } + } while(0); + $1112 = $err; + $1113 = ($1112|0)!=(0); + $1114 = HEAP32[$c>>2]|0; + if ($1113) { + $1115 = ($1114|0)!=(0|0); + if ($1115) { + $1116 = HEAP32[$c>>2]|0; + $1117 = (__gcry_is_secure($1116)|0); + $1118 = ($1117|0)!=(0); + L292: do { + if ($1118) { + $1119 = HEAP32[$c>>2]|0; + $_vptr = $1119; + $1120 = ((($c)) + 4|0); + $1121 = HEAP32[$1120>>2]|0; + $1122 = (1 + ($1121))|0; + $1123 = (($1122) - 1)|0; + $_vlen = $1123; + $_vset = 0; + $1124 = $_vset; + $1125 = $1124&255; + $1126 = $_vset_long; + $1127 = $1126; + HEAP32[$1127>>2] = $1125; + $1128 = (($1126) + 4)|0; + $1129 = $1128; + HEAP32[$1129>>2] = 0; + while(1) { + $1130 = $_vptr; + $1131 = $1130; + $1132 = $1131 & 7; + $1133 = ($1132|0)!=(0); + $1134 = $_vlen; + $1135 = ($1134|0)!=(0); + $1136 = $1133 ? $1135 : 0; + if (!($1136)) { + break; + } + $1137 = $_vset; + $1138 = $_vptr; + HEAP8[$1138>>0] = $1137; + $1139 = $_vptr; + $1140 = ((($1139)) + 1|0); + $_vptr = $1140; + $1141 = $_vlen; + $1142 = (($1141) + -1)|0; + $_vlen = $1142; + } + $1143 = $_vlen; + $1144 = ($1143>>>0)<(8); + if (!($1144)) { + $1145 = $_vset_long; + $1146 = $1145; + $1147 = HEAP32[$1146>>2]|0; + $1148 = (($1145) + 4)|0; + $1149 = $1148; + $1150 = HEAP32[$1149>>2]|0; + $1151 = (___muldi3(($1147|0),($1150|0),16843009,16843009)|0); + $1152 = tempRet0; + $1153 = $_vset_long; + $1154 = $1153; + HEAP32[$1154>>2] = $1151; + $1155 = (($1153) + 4)|0; + $1156 = $1155; + HEAP32[$1156>>2] = $1152; + while(1) { + $1157 = $_vptr; + $_vptr_long = $1157; + $1158 = $_vset_long; + $1159 = $1158; + $1160 = HEAP32[$1159>>2]|0; + $1161 = (($1158) + 4)|0; + $1162 = $1161; + $1163 = HEAP32[$1162>>2]|0; + $1164 = $_vptr_long; + $1165 = $1164; + $1166 = $1165; + HEAP32[$1166>>2] = $1160; + $1167 = (($1165) + 4)|0; + $1168 = $1167; + HEAP32[$1168>>2] = $1163; + $1169 = $_vlen; + $1170 = (($1169) - 8)|0; + $_vlen = $1170; + $1171 = $_vptr; + $1172 = ((($1171)) + 8|0); + $_vptr = $1172; + $1173 = $_vlen; + $1174 = ($1173>>>0)>=(8); + if (!($1174)) { + break; + } + } + } + while(1) { + $1175 = $_vlen; + $1176 = ($1175|0)!=(0); + if (!($1176)) { + break L292; + } + $1177 = $_vset; + $1178 = $_vptr; + HEAP8[$1178>>0] = $1177; + $1179 = $_vptr; + $1180 = ((($1179)) + 1|0); + $_vptr = $1180; + $1181 = $_vlen; + $1182 = (($1181) + -1)|0; + $_vlen = $1182; + } + } + } while(0); + $1183 = HEAP32[$c>>2]|0; + __gcry_free($1183); + } + } else { + $1184 = (_normalize($1114)|0); + $1185 = $1; + HEAP32[$1185>>2] = $1184; + } + $1186 = $err; + $0 = $1186; + $1187 = $0; + STACKTOP = sp;return ($1187|0); +} +function _make_space($c,$n) { + $c = $c|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $newhead = 0, $newsexp = 0, $newsize = 0, $used = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $c; + $2 = $n; + $3 = $1; + $4 = ((($3)) + 8|0); + $5 = HEAP32[$4>>2]|0; + $6 = $1; + $7 = HEAP32[$6>>2]|0; + $8 = $5; + $9 = $7; + $10 = (($8) - ($9))|0; + $used = $10; + $11 = $used; + $12 = $2; + $13 = (($11) + ($12))|0; + $14 = (($13) + 2)|0; + $15 = (($14) + 1)|0; + $16 = $1; + $17 = ((($16)) + 4|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($15>>>0)>=($18>>>0); + do { + if ($19) { + $20 = $1; + $21 = ((($20)) + 4|0); + $22 = HEAP32[$21>>2]|0; + $23 = $2; + $24 = (($23) + 2)|0; + $25 = (($24) + 1)|0; + $26 = $25<<1; + $27 = (($22) + ($26))|0; + $newsize = $27; + $28 = $newsize; + $29 = $1; + $30 = ((($29)) + 4|0); + $31 = HEAP32[$30>>2]|0; + $32 = ($28>>>0)<=($31>>>0); + if ($32) { + $0 = 67; + $55 = $0; + STACKTOP = sp;return ($55|0); + } + $33 = $1; + $34 = HEAP32[$33>>2]|0; + $35 = $newsize; + $36 = (1 + ($35))|0; + $37 = (($36) - 1)|0; + $38 = (__gcry_realloc($34,$37)|0); + $newsexp = $38; + $39 = $newsexp; + $40 = ($39|0)!=(0|0); + if ($40) { + $44 = $newsize; + $45 = $1; + $46 = ((($45)) + 4|0); + HEAP32[$46>>2] = $44; + $47 = $newsexp; + $newhead = $47; + $48 = $newhead; + $49 = $used; + $50 = (($48) + ($49)|0); + $51 = $1; + $52 = ((($51)) + 8|0); + HEAP32[$52>>2] = $50; + $53 = $newsexp; + $54 = $1; + HEAP32[$54>>2] = $53; + break; + } + $41 = (___errno_location()|0); + $42 = HEAP32[$41>>2]|0; + $43 = (_gpg_err_code_from_errno($42)|0); + $0 = $43; + $55 = $0; + STACKTOP = sp;return ($55|0); + } + } while(0); + $0 = 0; + $55 = $0; + STACKTOP = sp;return ($55|0); +} +function _unquote_string($string,$length,$buf) { + $string = $string|0; + $length = $length|0; + $buf = $buf|0; + var $$sink = 0, $$sink1 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0; + var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0; + var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0; + var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0; + var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0; + var $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0; + var $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0; + var $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $d = 0, $esc = 0, $n = 0, $s = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $string; + $1 = $length; + $2 = $buf; + $esc = 0; + $3 = $0; + $s = $3; + $4 = $2; + $d = $4; + $5 = $1; + $n = $5; + while(1) { + $6 = $n; + $7 = ($6|0)!=(0); + if (!($7)) { + break; + } + $8 = $esc; + $9 = ($8|0)!=(0); + $10 = $s; + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + do { + if ($9) { + L6: do { + switch ($12|0) { + case 98: { + $13 = $d; + $14 = ((($13)) + 1|0); + $d = $14; + HEAP8[$13>>0] = 8; + break; + } + case 116: { + $15 = $d; + $16 = ((($15)) + 1|0); + $d = $16; + HEAP8[$15>>0] = 9; + break; + } + case 118: { + $17 = $d; + $18 = ((($17)) + 1|0); + $d = $18; + HEAP8[$17>>0] = 11; + break; + } + case 110: { + $19 = $d; + $20 = ((($19)) + 1|0); + $d = $20; + HEAP8[$19>>0] = 10; + break; + } + case 102: { + $21 = $d; + $22 = ((($21)) + 1|0); + $d = $22; + HEAP8[$21>>0] = 12; + break; + } + case 114: { + $23 = $d; + $24 = ((($23)) + 1|0); + $d = $24; + HEAP8[$23>>0] = 13; + break; + } + case 34: { + $25 = $d; + $26 = ((($25)) + 1|0); + $d = $26; + HEAP8[$25>>0] = 34; + break; + } + case 39: { + $27 = $d; + $28 = ((($27)) + 1|0); + $d = $28; + HEAP8[$27>>0] = 39; + break; + } + case 92: { + $29 = $d; + $30 = ((($29)) + 1|0); + $d = $30; + HEAP8[$29>>0] = 92; + break; + } + case 13: { + $31 = $n; + $32 = ($31>>>0)>(1); + if ($32) { + $33 = $s; + $34 = ((($33)) + 1|0); + $35 = HEAP8[$34>>0]|0; + $36 = $35&255; + $37 = ($36|0)==(10); + if ($37) { + $38 = $s; + $39 = ((($38)) + 1|0); + $s = $39; + $40 = $n; + $41 = (($40) + -1)|0; + $n = $41; + } + } + break; + } + case 10: { + $42 = $n; + $43 = ($42>>>0)>(1); + if ($43) { + $44 = $s; + $45 = ((($44)) + 1|0); + $46 = HEAP8[$45>>0]|0; + $47 = $46&255; + $48 = ($47|0)==(13); + if ($48) { + $49 = $s; + $50 = ((($49)) + 1|0); + $s = $50; + $51 = $n; + $52 = (($51) + -1)|0; + $n = $52; + } + } + break; + } + case 120: { + $53 = $n; + $54 = ($53>>>0)>(2); + if ($54) { + $55 = $s; + $56 = ((($55)) + 1|0); + $57 = HEAP8[$56>>0]|0; + $58 = $57&255; + $59 = ($58|0)>=(48); + if ($59) { + $60 = $s; + $61 = ((($60)) + 1|0); + $62 = HEAP8[$61>>0]|0; + $63 = $62&255; + $64 = ($63|0)<=(57); + if (!($64)) { + label = 23; + } + } else { + label = 23; + } + do { + if ((label|0) == 23) { + label = 0; + $65 = $s; + $66 = ((($65)) + 1|0); + $67 = HEAP8[$66>>0]|0; + $68 = $67&255; + $69 = ($68|0)>=(65); + if ($69) { + $70 = $s; + $71 = ((($70)) + 1|0); + $72 = HEAP8[$71>>0]|0; + $73 = $72&255; + $74 = ($73|0)<=(70); + if ($74) { + break; + } + } + $75 = $s; + $76 = ((($75)) + 1|0); + $77 = HEAP8[$76>>0]|0; + $78 = $77&255; + $79 = ($78|0)>=(97); + if (!($79)) { + break L6; + } + $80 = $s; + $81 = ((($80)) + 1|0); + $82 = HEAP8[$81>>0]|0; + $83 = $82&255; + $84 = ($83|0)<=(102); + if (!($84)) { + break L6; + } + } + } while(0); + $85 = $s; + $86 = ((($85)) + 2|0); + $87 = HEAP8[$86>>0]|0; + $88 = $87&255; + $89 = ($88|0)>=(48); + if ($89) { + $90 = $s; + $91 = ((($90)) + 2|0); + $92 = HEAP8[$91>>0]|0; + $93 = $92&255; + $94 = ($93|0)<=(57); + if (!($94)) { + label = 29; + } + } else { + label = 29; + } + do { + if ((label|0) == 29) { + label = 0; + $95 = $s; + $96 = ((($95)) + 2|0); + $97 = HEAP8[$96>>0]|0; + $98 = $97&255; + $99 = ($98|0)>=(65); + if ($99) { + $100 = $s; + $101 = ((($100)) + 2|0); + $102 = HEAP8[$101>>0]|0; + $103 = $102&255; + $104 = ($103|0)<=(70); + if ($104) { + break; + } + } + $105 = $s; + $106 = ((($105)) + 2|0); + $107 = HEAP8[$106>>0]|0; + $108 = $107&255; + $109 = ($108|0)>=(97); + if (!($109)) { + break L6; + } + $110 = $s; + $111 = ((($110)) + 2|0); + $112 = HEAP8[$111>>0]|0; + $113 = $112&255; + $114 = ($113|0)<=(102); + if (!($114)) { + break L6; + } + } + } while(0); + $115 = $s; + $116 = ((($115)) + 1|0); + $s = $116; + $117 = $n; + $118 = (($117) + -1)|0; + $n = $118; + $119 = $s; + $120 = HEAP8[$119>>0]|0; + $121 = $120&255; + $122 = ($121|0)<=(57); + $123 = $s; + $124 = HEAP8[$123>>0]|0; + $125 = $124&255; + if ($122) { + $126 = (($125) - 48)|0; + $135 = $126; + } else { + $127 = ($125|0)<=(70); + $128 = $s; + $129 = HEAP8[$128>>0]|0; + $130 = $129&255; + $131 = (($130) - 65)|0; + $132 = (($130) - 97)|0; + $$sink = $127 ? $131 : $132; + $133 = (($$sink) + 10)|0; + $135 = $133; + } + $134 = $135<<4; + $136 = $s; + $137 = ((($136)) + 1|0); + $138 = HEAP8[$137>>0]|0; + $139 = $138&255; + $140 = ($139|0)<=(57); + $141 = $s; + $142 = ((($141)) + 1|0); + $143 = HEAP8[$142>>0]|0; + $144 = $143&255; + if ($140) { + $145 = (($144) - 48)|0; + $155 = $145; + } else { + $146 = ($144|0)<=(70); + $147 = $s; + $148 = ((($147)) + 1|0); + $149 = HEAP8[$148>>0]|0; + $150 = $149&255; + $151 = (($150) - 65)|0; + $152 = (($150) - 97)|0; + $$sink1 = $146 ? $151 : $152; + $153 = (($$sink1) + 10)|0; + $155 = $153; + } + $154 = (($134) + ($155))|0; + $156 = $154&255; + $157 = $d; + $158 = ((($157)) + 1|0); + $d = $158; + HEAP8[$157>>0] = $156; + $159 = $s; + $160 = ((($159)) + 1|0); + $s = $160; + $161 = $n; + $162 = (($161) + -1)|0; + $n = $162; + } + break; + } + default: { + $163 = $n; + $164 = ($163>>>0)>(2); + if ($164) { + $165 = $s; + $166 = HEAP8[$165>>0]|0; + $167 = $166&255; + $168 = ($167|0)>=(48); + if ($168) { + $169 = $s; + $170 = HEAP8[$169>>0]|0; + $171 = $170&255; + $172 = ($171|0)<=(55); + if ($172) { + $173 = $s; + $174 = ((($173)) + 1|0); + $175 = HEAP8[$174>>0]|0; + $176 = $175&255; + $177 = ($176|0)>=(48); + if ($177) { + $178 = $s; + $179 = ((($178)) + 1|0); + $180 = HEAP8[$179>>0]|0; + $181 = $180&255; + $182 = ($181|0)<=(55); + if ($182) { + $183 = $s; + $184 = ((($183)) + 2|0); + $185 = HEAP8[$184>>0]|0; + $186 = $185&255; + $187 = ($186|0)>=(48); + if ($187) { + $188 = $s; + $189 = ((($188)) + 2|0); + $190 = HEAP8[$189>>0]|0; + $191 = $190&255; + $192 = ($191|0)<=(55); + if ($192) { + $193 = $s; + $194 = HEAP8[$193>>0]|0; + $195 = $194&255; + $196 = (($195) - 48)|0; + $197 = $196<<6; + $198 = $s; + $199 = ((($198)) + 1|0); + $200 = HEAP8[$199>>0]|0; + $201 = $200&255; + $202 = (($201) - 48)|0; + $203 = $202<<3; + $204 = (($197) + ($203))|0; + $205 = $s; + $206 = ((($205)) + 2|0); + $207 = HEAP8[$206>>0]|0; + $208 = $207&255; + $209 = (($208) - 48)|0; + $210 = (($204) + ($209))|0; + $211 = $210&255; + $212 = $d; + $213 = ((($212)) + 1|0); + $d = $213; + HEAP8[$212>>0] = $211; + $214 = $s; + $215 = ((($214)) + 2|0); + $s = $215; + $216 = $n; + $217 = (($216) - 2)|0; + $n = $217; + } + } + } + } + } + } + } + } + } + } while(0); + $esc = 0; + } else { + $218 = ($12|0)==(92); + if ($218) { + $esc = 1; + break; + } else { + $219 = $s; + $220 = HEAP8[$219>>0]|0; + $221 = $d; + $222 = ((($221)) + 1|0); + $d = $222; + HEAP8[$221>>0] = $220; + break; + } + } + } while(0); + $223 = $n; + $224 = (($223) + -1)|0; + $n = $224; + $225 = $s; + $226 = ((($225)) + 1|0); + $s = $226; + } + $227 = $d; + $228 = $2; + $229 = $227; + $230 = $228; + $231 = (($229) - ($230))|0; + STACKTOP = sp;return ($231|0); +} +function _whitespacep($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $p; + $2 = $1; + $3 = HEAP8[$2>>0]|0; + $4 = $3 << 24 >> 24; + switch ($4|0) { + case 10: case 13: case 12: case 11: case 9: case 32: { + $0 = 1; + break; + } + default: { + $0 = 0; + } + } + $5 = $0; + STACKTOP = sp;return ($5|0); +} +function _hextonibble($s) { + $s = $s|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $or$cond = 0, $or$cond3 = 0, $or$cond5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $s; + $2 = $1; + $3 = ($2|0)>=(48); + $4 = $1; + $5 = ($4|0)<=(57); + $or$cond = $3 & $5; + $6 = $1; + do { + if ($or$cond) { + $7 = (($6) - 48)|0; + $0 = $7; + } else { + $8 = ($6|0)>=(65); + $9 = $1; + $10 = ($9|0)<=(70); + $or$cond3 = $8 & $10; + $11 = $1; + if ($or$cond3) { + $12 = (10 + ($11))|0; + $13 = (($12) - 65)|0; + $0 = $13; + break; + } + $14 = ($11|0)>=(97); + $15 = $1; + $16 = ($15|0)<=(102); + $or$cond5 = $14 & $16; + if ($or$cond5) { + $17 = $1; + $18 = (10 + ($17))|0; + $19 = (($18) - 97)|0; + $0 = $19; + break; + } else { + $0 = 0; + break; + } + } + } while(0); + $20 = $0; + STACKTOP = sp;return ($20|0); +} +function _get_internal_buffer($list,$r_off) { + $list = $list|0; + $r_off = $r_off|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $level = 0, $n = 0, $p = 0, $type = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $n = sp + 24|0; + $1 = $list; + $2 = $r_off; + $level = 0; + $3 = $2; + HEAP32[$3>>2] = 0; + $4 = $1; + $5 = ($4|0)!=(0|0); + L1: do { + if ($5) { + $6 = $1; + $p = $6; + while(1) { + $7 = $p; + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $type = $9; + $10 = ($9|0)!=(0); + if (!($10)) { + break L1; + } + $11 = $p; + $12 = ((($11)) + 1|0); + $p = $12; + $13 = $type; + $14 = ($13|0)==(1); + if ($14) { + $15 = $p; + ;HEAP8[$n>>0]=HEAP8[$15>>0]|0;HEAP8[$n+1>>0]=HEAP8[$15+1>>0]|0; + $16 = HEAP16[$n>>1]|0; + $17 = $16&65535; + $18 = (2 + ($17))|0; + $19 = $p; + $20 = (($19) + ($18)|0); + $p = $20; + continue; + } + $21 = $type; + $22 = ($21|0)==(3); + if (!($22)) { + $34 = $type; + $35 = ($34|0)==(4); + if (!($35)) { + continue; + } + $36 = $level; + $37 = (($36) + -1)|0; + $level = $37; + $38 = $level; + $39 = ($38|0)!=(0); + if ($39) { + continue; + } else { + break; + } + } + $23 = $level; + $24 = ($23|0)!=(0); + if (!($24)) { + $25 = $p; + $26 = ((($25)) + -1|0); + $27 = $1; + $28 = $26; + $29 = $27; + $30 = (($28) - ($29))|0; + $31 = $2; + HEAP32[$31>>2] = $30; + } + $32 = $level; + $33 = (($32) + 1)|0; + $level = $33; + } + $40 = $p; + $41 = $1; + $42 = $40; + $43 = $41; + $44 = (($42) - ($43))|0; + $0 = $44; + $45 = $0; + STACKTOP = sp;return ($45|0); + } + } while(0); + $0 = 0; + $45 = $0; + STACKTOP = sp;return ($45|0); +} +function _normalize($list) { + $list = $list|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $list; + $2 = $1; + $3 = ($2|0)!=(0|0); + do { + if ($3) { + $4 = $1; + $p = $4; + $5 = $p; + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = ($7|0)==(0); + if ($8) { + $9 = $1; + __gcry_sexp_release($9); + $0 = 0; + break; + } + $10 = $p; + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = ($12|0)==(3); + if ($13) { + $14 = $p; + $15 = ((($14)) + 1|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16&255; + $18 = ($17|0)==(4); + if ($18) { + $19 = $1; + __gcry_sexp_release($19); + $0 = 0; + break; + } + } + $20 = $1; + $0 = $20; + } else { + $0 = 0; + } + } while(0); + $21 = $0; + STACKTOP = sp;return ($21|0); +} +function __gcry_sexp_release($sexp) { + $sexp = $sexp|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $9 = 0, $_vlen = 0, $_vptr = 0, $_vptr_long = 0, $_vset = 0, $_vset_long = 0, $cond = 0, $n = 0, $p = 0, $type = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $n = sp + 32|0; + $_vset_long = sp; + $0 = $sexp; + $1 = $0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = $0; + $4 = (__gcry_is_secure($3)|0); + $5 = ($4|0)!=(0); + L4: do { + if ($5) { + $6 = $0; + $p = $6; + while(1) { + $7 = $p; + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $type = $9; + $10 = ($9|0)!=(0); + if (!($10)) { + break; + } + $11 = $p; + $12 = ((($11)) + 1|0); + $p = $12; + $13 = $type; + $cond = ($13|0)==(1); + if (!($cond)) { + continue; + } + $14 = $p; + ;HEAP8[$n>>0]=HEAP8[$14>>0]|0;HEAP8[$n+1>>0]=HEAP8[$14+1>>0]|0; + $15 = $p; + $16 = ((($15)) + 2|0); + $p = $16; + $17 = HEAP16[$n>>1]|0; + $18 = $17&65535; + $19 = $p; + $20 = (($19) + ($18)|0); + $p = $20; + } + $21 = $0; + $_vptr = $21; + $22 = $p; + $23 = $0; + $24 = $22; + $25 = $23; + $26 = (($24) - ($25))|0; + $_vlen = $26; + $_vset = 0; + $27 = $_vset; + $28 = $27&255; + $29 = $_vset_long; + $30 = $29; + HEAP32[$30>>2] = $28; + $31 = (($29) + 4)|0; + $32 = $31; + HEAP32[$32>>2] = 0; + while(1) { + $33 = $_vptr; + $34 = $33; + $35 = $34 & 7; + $36 = ($35|0)!=(0); + $37 = $_vlen; + $38 = ($37|0)!=(0); + $39 = $36 ? $38 : 0; + if (!($39)) { + break; + } + $40 = $_vset; + $41 = $_vptr; + HEAP8[$41>>0] = $40; + $42 = $_vptr; + $43 = ((($42)) + 1|0); + $_vptr = $43; + $44 = $_vlen; + $45 = (($44) + -1)|0; + $_vlen = $45; + } + $46 = $_vlen; + $47 = ($46>>>0)<(8); + if (!($47)) { + $48 = $_vset_long; + $49 = $48; + $50 = HEAP32[$49>>2]|0; + $51 = (($48) + 4)|0; + $52 = $51; + $53 = HEAP32[$52>>2]|0; + $54 = (___muldi3(($50|0),($53|0),16843009,16843009)|0); + $55 = tempRet0; + $56 = $_vset_long; + $57 = $56; + HEAP32[$57>>2] = $54; + $58 = (($56) + 4)|0; + $59 = $58; + HEAP32[$59>>2] = $55; + while(1) { + $60 = $_vptr; + $_vptr_long = $60; + $61 = $_vset_long; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = (($61) + 4)|0; + $65 = $64; + $66 = HEAP32[$65>>2]|0; + $67 = $_vptr_long; + $68 = $67; + $69 = $68; + HEAP32[$69>>2] = $63; + $70 = (($68) + 4)|0; + $71 = $70; + HEAP32[$71>>2] = $66; + $72 = $_vlen; + $73 = (($72) - 8)|0; + $_vlen = $73; + $74 = $_vptr; + $75 = ((($74)) + 8|0); + $_vptr = $75; + $76 = $_vlen; + $77 = ($76>>>0)>=(8); + if (!($77)) { + break; + } + } + } + while(1) { + $78 = $_vlen; + $79 = ($78|0)!=(0); + if (!($79)) { + break L4; + } + $80 = $_vset; + $81 = $_vptr; + HEAP8[$81>>0] = $80; + $82 = $_vptr; + $83 = ((($82)) + 1|0); + $_vptr = $83; + $84 = $_vlen; + $85 = (($84) + -1)|0; + $_vlen = $85; + } + } + } while(0); + $86 = $0; + __gcry_free($86); + STACKTOP = sp;return; +} +function __gcry_sexp_new($retsexp,$buffer,$length,$autodetect) { + $retsexp = $retsexp|0; + $buffer = $buffer|0; + $length = $length|0; + $autodetect = $autodetect|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $retsexp; + $1 = $buffer; + $2 = $length; + $3 = $autodetect; + $4 = $0; + $5 = $1; + $6 = $2; + $7 = $3; + $8 = (__gcry_sexp_create($4,$5,$6,$7,0)|0); + STACKTOP = sp;return ($8|0); +} +function __gcry_sexp_find_token($list,$tok,$toklen) { + $list = $list|0; + $tok = $tok|0; + $toklen = $toklen|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; + var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; + var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $d = 0; + var $head = 0, $level = 0, $n = 0, $newlist = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $n = sp + 36|0; + $1 = $list; + $2 = $tok; + $3 = $toklen; + $4 = $1; + $5 = ($4|0)!=(0|0); + if (!($5)) { + $0 = 0; + $118 = $0; + STACKTOP = sp;return ($118|0); + } + $6 = $3; + $7 = ($6|0)!=(0); + if (!($7)) { + $8 = $2; + $9 = (_strlen($8)|0); + $3 = $9; + } + $10 = $1; + $p = $10; + while(1) { + $11 = $p; + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = ($13|0)!=(0); + if (!($14)) { + label = 29; + break; + } + $15 = $p; + $16 = HEAP8[$15>>0]|0; + $17 = $16&255; + $18 = ($17|0)==(3); + if ($18) { + $19 = $p; + $20 = ((($19)) + 1|0); + $21 = HEAP8[$20>>0]|0; + $22 = $21&255; + $23 = ($22|0)==(1); + if ($23) { + $24 = $p; + $head = $24; + $25 = $p; + $26 = ((($25)) + 2|0); + $p = $26; + $27 = $p; + ;HEAP8[$n>>0]=HEAP8[$27>>0]|0;HEAP8[$n+1>>0]=HEAP8[$27+1>>0]|0; + $28 = $p; + $29 = ((($28)) + 2|0); + $p = $29; + $30 = HEAP16[$n>>1]|0; + $31 = $30&65535; + $32 = $3; + $33 = ($31|0)==($32|0); + if ($33) { + $34 = $p; + $35 = $2; + $36 = $3; + $37 = (_memcmp($34,$35,$36)|0); + $38 = ($37|0)!=(0); + if (!($38)) { + break; + } + } + $100 = HEAP16[$n>>1]|0; + $101 = $100&65535; + $102 = $p; + $103 = (($102) + ($101)|0); + $p = $103; + continue; + } + } + $104 = $p; + $105 = HEAP8[$104>>0]|0; + $106 = $105&255; + $107 = ($106|0)==(1); + if ($107) { + $108 = $p; + $109 = ((($108)) + 1|0); + $p = $109; + ;HEAP8[$n>>0]=HEAP8[$109>>0]|0;HEAP8[$n+1>>0]=HEAP8[$109+1>>0]|0; + $110 = $p; + $111 = ((($110)) + 2|0); + $p = $111; + $112 = HEAP16[$n>>1]|0; + $113 = $112&65535; + $114 = $p; + $115 = (($114) + ($113)|0); + $p = $115; + continue; + } else { + $116 = $p; + $117 = ((($116)) + 1|0); + $p = $117; + continue; + } + } + if ((label|0) == 29) { + $0 = 0; + $118 = $0; + STACKTOP = sp;return ($118|0); + } + $level = 1; + $39 = HEAP16[$n>>1]|0; + $40 = $39&65535; + $41 = $p; + $42 = (($41) + ($40)|0); + $p = $42; + L25: while(1) { + $43 = $level; + $44 = ($43|0)!=(0); + $45 = $p; + if (!($44)) { + break; + } + $46 = HEAP8[$45>>0]|0; + $47 = $46&255; + $48 = ($47|0)==(1); + do { + if ($48) { + $49 = $p; + $50 = ((($49)) + 1|0); + $p = $50; + ;HEAP8[$n>>0]=HEAP8[$50>>0]|0;HEAP8[$n+1>>0]=HEAP8[$50+1>>0]|0; + $51 = HEAP16[$n>>1]|0; + $52 = $51&65535; + $53 = (2 + ($52))|0; + $54 = $p; + $55 = (($54) + ($53)|0); + $p = $55; + $56 = $p; + $57 = ((($56)) + -1|0); + $p = $57; + } else { + $58 = $p; + $59 = HEAP8[$58>>0]|0; + $60 = $59&255; + $61 = ($60|0)==(3); + if ($61) { + $62 = $level; + $63 = (($62) + 1)|0; + $level = $63; + break; + } + $64 = $p; + $65 = HEAP8[$64>>0]|0; + $66 = $65&255; + $67 = ($66|0)==(4); + if ($67) { + $68 = $level; + $69 = (($68) + -1)|0; + $level = $69; + break; + } else { + $70 = $p; + $71 = HEAP8[$70>>0]|0; + $72 = $71&255; + $73 = ($72|0)==(0); + if ($73) { + label = 20; + break L25; + } else { + break; + } + } + } + } while(0); + $74 = $p; + $75 = ((($74)) + 1|0); + $p = $75; + } + if ((label|0) == 20) { + __gcry_bug(22685,481,22716); + // unreachable; + } + $76 = $head; + $77 = $45; + $78 = $76; + $79 = (($77) - ($78))|0; + $80 = $79&65535; + HEAP16[$n>>1] = $80; + $81 = HEAP16[$n>>1]|0; + $82 = $81&65535; + $83 = (1 + ($82))|0; + $84 = (__gcry_malloc($83)|0); + $newlist = $84; + $85 = $newlist; + $86 = ($85|0)!=(0|0); + if ($86) { + $87 = $newlist; + $d = $87; + $88 = $d; + $89 = $head; + $90 = HEAP16[$n>>1]|0; + $91 = $90&65535; + _memcpy(($88|0),($89|0),($91|0))|0; + $92 = HEAP16[$n>>1]|0; + $93 = $92&65535; + $94 = $d; + $95 = (($94) + ($93)|0); + $d = $95; + $96 = $d; + $97 = ((($96)) + 1|0); + $d = $97; + HEAP8[$96>>0] = 0; + $98 = $newlist; + $99 = (_normalize($98)|0); + $0 = $99; + $118 = $0; + STACKTOP = sp;return ($118|0); + } else { + $0 = 0; + $118 = $0; + STACKTOP = sp;return ($118|0); + } + return (0)|0; +} +function __gcry_sexp_length($list) { + $list = $list|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $length = 0, $level = 0, $n = 0; + var $p = 0, $type = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $n = sp + 24|0; + $1 = $list; + $length = 0; + $level = 0; + $2 = $1; + $3 = ($2|0)!=(0|0); + if (!($3)) { + $0 = 0; + $36 = $0; + STACKTOP = sp;return ($36|0); + } + $4 = $1; + $p = $4; + while(1) { + $5 = $p; + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $type = $7; + $8 = ($7|0)!=(0); + if (!($8)) { + break; + } + $9 = $p; + $10 = ((($9)) + 1|0); + $p = $10; + $11 = $type; + $12 = ($11|0)==(1); + if ($12) { + $13 = $p; + ;HEAP8[$n>>0]=HEAP8[$13>>0]|0;HEAP8[$n+1>>0]=HEAP8[$13+1>>0]|0; + $14 = HEAP16[$n>>1]|0; + $15 = $14&65535; + $16 = (2 + ($15))|0; + $17 = $p; + $18 = (($17) + ($16)|0); + $p = $18; + $19 = $level; + $20 = ($19|0)==(1); + if (!($20)) { + continue; + } + $21 = $length; + $22 = (($21) + 1)|0; + $length = $22; + continue; + } + $23 = $type; + $24 = ($23|0)==(3); + if (!($24)) { + $31 = $type; + $32 = ($31|0)==(4); + if (!($32)) { + continue; + } + $33 = $level; + $34 = (($33) + -1)|0; + $level = $34; + continue; + } + $25 = $level; + $26 = ($25|0)==(1); + if ($26) { + $27 = $length; + $28 = (($27) + 1)|0; + $length = $28; + } + $29 = $level; + $30 = (($29) + 1)|0; + $level = $30; + } + $35 = $length; + $0 = $35; + $36 = $0; + STACKTOP = sp;return ($36|0); +} +function __gcry_sexp_nth($list,$number) { + $list = $list|0; + $number = $number|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $d = 0, $head = 0, $level = 0, $n = 0, $newlist = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $n = sp + 32|0; + $1 = $list; + $2 = $number; + $level = 0; + $3 = $1; + $4 = ($3|0)!=(0|0); + if ($4) { + $5 = $1; + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = ($7|0)!=(3); + if (!($8)) { + $9 = $1; + $p = $9; + while(1) { + $10 = $2; + $11 = ($10|0)>(0); + $12 = $p; + $13 = ((($12)) + 1|0); + $p = $13; + $14 = $p; + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = ($16|0)==(1); + if (!($11)) { + break; + } + if ($17) { + $18 = $p; + $19 = ((($18)) + 1|0); + $p = $19; + ;HEAP8[$n>>0]=HEAP8[$19>>0]|0;HEAP8[$n+1>>0]=HEAP8[$19+1>>0]|0; + $20 = HEAP16[$n>>1]|0; + $21 = $20&65535; + $22 = (2 + ($21))|0; + $23 = $p; + $24 = (($23) + ($22)|0); + $p = $24; + $25 = $p; + $26 = ((($25)) + -1|0); + $p = $26; + $27 = $level; + $28 = ($27|0)!=(0); + if ($28) { + continue; + } + $29 = $2; + $30 = (($29) + -1)|0; + $2 = $30; + continue; + } + $31 = $p; + $32 = HEAP8[$31>>0]|0; + $33 = $32&255; + $34 = ($33|0)==(3); + if ($34) { + $35 = $level; + $36 = (($35) + 1)|0; + $level = $36; + continue; + } + $37 = $p; + $38 = HEAP8[$37>>0]|0; + $39 = $38&255; + $40 = ($39|0)==(4); + if (!($40)) { + $47 = $p; + $48 = HEAP8[$47>>0]|0; + $49 = $48&255; + $50 = ($49|0)==(0); + if ($50) { + label = 15; + break; + } else { + continue; + } + } + $41 = $level; + $42 = (($41) + -1)|0; + $level = $42; + $43 = $level; + $44 = ($43|0)!=(0); + if ($44) { + continue; + } + $45 = $2; + $46 = (($45) + -1)|0; + $2 = $46; + } + if ((label|0) == 15) { + $0 = 0; + $140 = $0; + STACKTOP = sp;return ($140|0); + } + do { + if ($17) { + $51 = $p; + $52 = ((($51)) + 1|0); + ;HEAP8[$n>>0]=HEAP8[$52>>0]|0;HEAP8[$n+1>>0]=HEAP8[$52+1>>0]|0; + $53 = HEAP16[$n>>1]|0; + $54 = $53&65535; + $55 = (5 + ($54))|0; + $56 = (($55) + 1)|0; + $57 = (__gcry_malloc($56)|0); + $newlist = $57; + $58 = $newlist; + $59 = ($58|0)!=(0|0); + if ($59) { + $60 = $newlist; + $d = $60; + $61 = $d; + $62 = ((($61)) + 1|0); + $d = $62; + HEAP8[$61>>0] = 3; + $63 = $d; + $64 = $p; + $65 = HEAP16[$n>>1]|0; + $66 = $65&65535; + $67 = (3 + ($66))|0; + _memcpy(($63|0),($64|0),($67|0))|0; + $68 = HEAP16[$n>>1]|0; + $69 = $68&65535; + $70 = (3 + ($69))|0; + $71 = $d; + $72 = (($71) + ($70)|0); + $d = $72; + $73 = $d; + $74 = ((($73)) + 1|0); + $d = $74; + HEAP8[$73>>0] = 4; + $75 = $d; + HEAP8[$75>>0] = 0; + break; + } + $0 = 0; + $140 = $0; + STACKTOP = sp;return ($140|0); + } else { + $76 = $p; + $77 = HEAP8[$76>>0]|0; + $78 = $77&255; + $79 = ($78|0)==(3); + if (!($79)) { + $newlist = 0; + break; + } + $80 = $p; + $head = $80; + $level = 1; + L32: while(1) { + $81 = $p; + $82 = ((($81)) + 1|0); + $p = $82; + $83 = $p; + $84 = HEAP8[$83>>0]|0; + $85 = $84&255; + $86 = ($85|0)==(1); + do { + if ($86) { + $87 = $p; + $88 = ((($87)) + 1|0); + $p = $88; + ;HEAP8[$n>>0]=HEAP8[$88>>0]|0;HEAP8[$n+1>>0]=HEAP8[$88+1>>0]|0; + $89 = HEAP16[$n>>1]|0; + $90 = $89&65535; + $91 = (2 + ($90))|0; + $92 = $p; + $93 = (($92) + ($91)|0); + $p = $93; + $94 = $p; + $95 = ((($94)) + -1|0); + $p = $95; + } else { + $96 = $p; + $97 = HEAP8[$96>>0]|0; + $98 = $97&255; + $99 = ($98|0)==(3); + if ($99) { + $100 = $level; + $101 = (($100) + 1)|0; + $level = $101; + break; + } + $102 = $p; + $103 = HEAP8[$102>>0]|0; + $104 = $103&255; + $105 = ($104|0)==(4); + if ($105) { + $106 = $level; + $107 = (($106) + -1)|0; + $level = $107; + break; + } else { + $108 = $p; + $109 = HEAP8[$108>>0]|0; + $110 = $109&255; + $111 = ($110|0)==(0); + if ($111) { + label = 29; + break L32; + } else { + break; + } + } + } + } while(0); + $112 = $level; + $113 = ($112|0)!=(0); + if (!($113)) { + break; + } + } + if ((label|0) == 29) { + __gcry_bug(22685,673,22738); + // unreachable; + } + $114 = $p; + $115 = ((($114)) + 1|0); + $116 = $head; + $117 = $115; + $118 = $116; + $119 = (($117) - ($118))|0; + $120 = $119&65535; + HEAP16[$n>>1] = $120; + $121 = HEAP16[$n>>1]|0; + $122 = $121&65535; + $123 = (1 + ($122))|0; + $124 = (__gcry_malloc($123)|0); + $newlist = $124; + $125 = $newlist; + $126 = ($125|0)!=(0|0); + if ($126) { + $127 = $newlist; + $d = $127; + $128 = $d; + $129 = $head; + $130 = HEAP16[$n>>1]|0; + $131 = $130&65535; + _memcpy(($128|0),($129|0),($131|0))|0; + $132 = HEAP16[$n>>1]|0; + $133 = $132&65535; + $134 = $d; + $135 = (($134) + ($133)|0); + $d = $135; + $136 = $d; + $137 = ((($136)) + 1|0); + $d = $137; + HEAP8[$136>>0] = 0; + break; + } + $0 = 0; + $140 = $0; + STACKTOP = sp;return ($140|0); + } + } while(0); + $138 = $newlist; + $139 = (_normalize($138)|0); + $0 = $139; + $140 = $0; + STACKTOP = sp;return ($140|0); + } + } + $0 = 0; + $140 = $0; + STACKTOP = sp;return ($140|0); +} +function __gcry_sexp_car($list) { + $list = $list|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $list; + $1 = $0; + $2 = (__gcry_sexp_nth($1,0)|0); + STACKTOP = sp;return ($2|0); +} +function __gcry_sexp_nth_data($list,$number,$datalen) { + $list = $list|0; + $number = $number|0; + $datalen = $datalen|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $list; + $1 = $number; + $2 = $datalen; + $3 = $0; + $4 = $1; + $5 = $2; + $6 = (_do_sexp_nth_data($3,$4,$5)|0); + STACKTOP = sp;return ($6|0); +} +function _do_sexp_nth_data($list,$number,$datalen) { + $list = $list|0; + $number = $number|0; + $datalen = $datalen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $level = 0, $n = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $n = sp + 24|0; + $1 = $list; + $2 = $number; + $3 = $datalen; + $level = 0; + $4 = $3; + HEAP32[$4>>2] = 0; + $5 = $1; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $0 = 0; + $64 = $0; + STACKTOP = sp;return ($64|0); + } + $7 = $1; + $p = $7; + $8 = $p; + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = ($10|0)==(3); + if ($11) { + $12 = $p; + $13 = ((($12)) + 1|0); + $p = $13; + } else { + $14 = $2; + $15 = ($14|0)!=(0); + if ($15) { + $0 = 0; + $64 = $0; + STACKTOP = sp;return ($64|0); + } + } + L10: while(1) { + $16 = $2; + $17 = ($16|0)>(0); + $18 = $p; + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = ($20|0)==(1); + if (!($17)) { + break; + } + do { + if ($21) { + $22 = $p; + $23 = ((($22)) + 1|0); + $p = $23; + ;HEAP8[$n>>0]=HEAP8[$23>>0]|0;HEAP8[$n+1>>0]=HEAP8[$23+1>>0]|0; + $24 = HEAP16[$n>>1]|0; + $25 = $24&65535; + $26 = (2 + ($25))|0; + $27 = $p; + $28 = (($27) + ($26)|0); + $p = $28; + $29 = $p; + $30 = ((($29)) + -1|0); + $p = $30; + $31 = $level; + $32 = ($31|0)!=(0); + if (!($32)) { + $33 = $2; + $34 = (($33) + -1)|0; + $2 = $34; + } + } else { + $35 = $p; + $36 = HEAP8[$35>>0]|0; + $37 = $36&255; + $38 = ($37|0)==(3); + if ($38) { + $39 = $level; + $40 = (($39) + 1)|0; + $level = $40; + break; + } + $41 = $p; + $42 = HEAP8[$41>>0]|0; + $43 = $42&255; + $44 = ($43|0)==(4); + if (!($44)) { + $51 = $p; + $52 = HEAP8[$51>>0]|0; + $53 = $52&255; + $54 = ($53|0)==(0); + if ($54) { + label = 17; + break L10; + } else { + break; + } + } + $45 = $level; + $46 = (($45) + -1)|0; + $level = $46; + $47 = $level; + $48 = ($47|0)!=(0); + if (!($48)) { + $49 = $2; + $50 = (($49) + -1)|0; + $2 = $50; + } + } + } while(0); + $55 = $p; + $56 = ((($55)) + 1|0); + $p = $56; + } + if ((label|0) == 17) { + $0 = 0; + $64 = $0; + STACKTOP = sp;return ($64|0); + } + if ($21) { + $57 = $p; + $58 = ((($57)) + 1|0); + $p = $58; + ;HEAP8[$n>>0]=HEAP8[$58>>0]|0;HEAP8[$n+1>>0]=HEAP8[$58+1>>0]|0; + $59 = HEAP16[$n>>1]|0; + $60 = $59&65535; + $61 = $3; + HEAP32[$61>>2] = $60; + $62 = $p; + $63 = ((($62)) + 2|0); + $0 = $63; + $64 = $0; + STACKTOP = sp;return ($64|0); + } else { + $0 = 0; + $64 = $0; + STACKTOP = sp;return ($64|0); + } + return (0)|0; +} +function __gcry_sexp_nth_buffer($list,$number,$rlength) { + $list = $list|0; + $number = $number|0; + $rlength = $rlength|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $buf = 0, $n = 0, $or$cond = 0, $s = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $n = sp + 4|0; + $1 = $list; + $2 = $number; + $3 = $rlength; + $4 = $3; + HEAP32[$4>>2] = 0; + $5 = $1; + $6 = $2; + $7 = (_do_sexp_nth_data($5,$6,$n)|0); + $s = $7; + $8 = $s; + $9 = ($8|0)!=(0|0); + $10 = HEAP32[$n>>2]|0; + $11 = ($10|0)!=(0); + $or$cond = $9 & $11; + if (!($or$cond)) { + $0 = 0; + $22 = $0; + STACKTOP = sp;return ($22|0); + } + $12 = HEAP32[$n>>2]|0; + $13 = (__gcry_malloc($12)|0); + $buf = $13; + $14 = $buf; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = $buf; + $17 = $s; + $18 = HEAP32[$n>>2]|0; + _memcpy(($16|0),($17|0),($18|0))|0; + $19 = HEAP32[$n>>2]|0; + $20 = $3; + HEAP32[$20>>2] = $19; + $21 = $buf; + $0 = $21; + $22 = $0; + STACKTOP = sp;return ($22|0); + } else { + $0 = 0; + $22 = $0; + STACKTOP = sp;return ($22|0); + } + return (0)|0; +} +function __gcry_sexp_nth_string($list,$number) { + $list = $list|0; + $number = $number|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $buf = 0, $n = 0, $or$cond = 0, $s = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $n = sp + 4|0; + $1 = $list; + $2 = $number; + $3 = $1; + $4 = $2; + $5 = (_do_sexp_nth_data($3,$4,$n)|0); + $s = $5; + $6 = $s; + $7 = ($6|0)==(0|0); + $8 = HEAP32[$n>>2]|0; + $9 = ($8>>>0)<(1); + $or$cond = $7 | $9; + if (!($or$cond)) { + $10 = HEAP32[$n>>2]|0; + $11 = (($10) + 1)|0; + $12 = ($11>>>0)<(1); + if (!($12)) { + $13 = HEAP32[$n>>2]|0; + $14 = (($13) + 1)|0; + $15 = (__gcry_malloc($14)|0); + $buf = $15; + $16 = $buf; + $17 = ($16|0)!=(0|0); + if ($17) { + $18 = $buf; + $19 = $s; + $20 = HEAP32[$n>>2]|0; + _memcpy(($18|0),($19|0),($20|0))|0; + $21 = HEAP32[$n>>2]|0; + $22 = $buf; + $23 = (($22) + ($21)|0); + HEAP8[$23>>0] = 0; + $24 = $buf; + $0 = $24; + $25 = $0; + STACKTOP = sp;return ($25|0); + } else { + $0 = 0; + $25 = $0; + STACKTOP = sp;return ($25|0); + } + } + } + $0 = 0; + $25 = $0; + STACKTOP = sp;return ($25|0); +} +function __gcry_sexp_nth_mpi($list,$number,$mpifmt) { + $list = $list|0; + $number = $number|0; + $mpifmt = $mpifmt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $n = 0; + var $p = 0, $s = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $n = sp + 12|0; + $a = sp + 8|0; + $1 = $list; + $2 = $number; + $3 = $mpifmt; + $4 = $3; + $5 = ($4|0)==(8); + do { + if ($5) { + $6 = $1; + $7 = $2; + $8 = (__gcry_sexp_nth_buffer($6,$7,$n)|0); + $p = $8; + $9 = $p; + $10 = ($9|0)!=(0|0); + if (!($10)) { + $0 = 0; + $37 = $0; + STACKTOP = sp;return ($37|0); + } + $11 = $1; + $12 = (__gcry_is_secure($11)|0); + $13 = ($12|0)!=(0); + if ($13) { + $14 = (__gcry_mpi_snew(0)|0); + $16 = $14; + } else { + $15 = (__gcry_mpi_new(0)|0); + $16 = $15; + } + HEAP32[$a>>2] = $16; + $17 = HEAP32[$a>>2]|0; + $18 = ($17|0)!=(0|0); + if ($18) { + $19 = HEAP32[$a>>2]|0; + $20 = $p; + $21 = HEAP32[$n>>2]|0; + $22 = $21<<3; + (__gcry_mpi_set_opaque($19,$20,$22)|0); + break; + } else { + $23 = $p; + __gcry_free($23); + break; + } + } else { + $24 = $3; + $25 = ($24|0)!=(0); + if (!($25)) { + $3 = 1; + } + $26 = $1; + $27 = $2; + $28 = (_do_sexp_nth_data($26,$27,$n)|0); + $s = $28; + $29 = $s; + $30 = ($29|0)!=(0|0); + if (!($30)) { + $0 = 0; + $37 = $0; + STACKTOP = sp;return ($37|0); + } + $31 = $3; + $32 = $s; + $33 = HEAP32[$n>>2]|0; + $34 = (__gcry_mpi_scan($a,$31,$32,$33,0)|0); + $35 = ($34|0)!=(0); + if ($35) { + $0 = 0; + $37 = $0; + STACKTOP = sp;return ($37|0); + } + } + } while(0); + $36 = HEAP32[$a>>2]|0; + $0 = $36; + $37 = $0; + STACKTOP = sp;return ($37|0); +} +function __gcry_sexp_cdr($list) { + $list = $list|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $12 = 0, $13 = 0; + var $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $d = 0, $head = 0, $level = 0, $n = 0, $newlist = 0, $p = 0; + var $skip = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $n = sp + 32|0; + $1 = $list; + $level = 0; + $skip = 1; + $2 = $1; + $3 = ($2|0)!=(0|0); + if ($3) { + $4 = $1; + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = ($6|0)!=(3); + if (!($7)) { + $8 = $1; + $p = $8; + while(1) { + $9 = $skip; + $10 = ($9|0)>(0); + $11 = $p; + $12 = ((($11)) + 1|0); + $p = $12; + $13 = $p; + if (!($10)) { + break; + } + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = ($15|0)==(1); + if ($16) { + $17 = $p; + $18 = ((($17)) + 1|0); + $p = $18; + ;HEAP8[$n>>0]=HEAP8[$18>>0]|0;HEAP8[$n+1>>0]=HEAP8[$18+1>>0]|0; + $19 = HEAP16[$n>>1]|0; + $20 = $19&65535; + $21 = (2 + ($20))|0; + $22 = $p; + $23 = (($22) + ($21)|0); + $p = $23; + $24 = $p; + $25 = ((($24)) + -1|0); + $p = $25; + $26 = $level; + $27 = ($26|0)!=(0); + if ($27) { + continue; + } + $28 = $skip; + $29 = (($28) + -1)|0; + $skip = $29; + continue; + } + $30 = $p; + $31 = HEAP8[$30>>0]|0; + $32 = $31&255; + $33 = ($32|0)==(3); + if ($33) { + $34 = $level; + $35 = (($34) + 1)|0; + $level = $35; + continue; + } + $36 = $p; + $37 = HEAP8[$36>>0]|0; + $38 = $37&255; + $39 = ($38|0)==(4); + if (!($39)) { + $46 = $p; + $47 = HEAP8[$46>>0]|0; + $48 = $47&255; + $49 = ($48|0)==(0); + if ($49) { + label = 15; + break; + } else { + continue; + } + } + $40 = $level; + $41 = (($40) + -1)|0; + $level = $41; + $42 = $level; + $43 = ($42|0)!=(0); + if ($43) { + continue; + } + $44 = $skip; + $45 = (($44) + -1)|0; + $skip = $45; + } + if ((label|0) == 15) { + $0 = 0; + $113 = $0; + STACKTOP = sp;return ($113|0); + } + $head = $13; + $level = 0; + L22: while(1) { + $50 = $p; + $51 = HEAP8[$50>>0]|0; + $52 = $51&255; + $53 = ($52|0)==(1); + do { + if ($53) { + $54 = $p; + $55 = ((($54)) + 1|0); + $p = $55; + ;HEAP8[$n>>0]=HEAP8[$55>>0]|0;HEAP8[$n+1>>0]=HEAP8[$55+1>>0]|0; + $56 = HEAP16[$n>>1]|0; + $57 = $56&65535; + $58 = (2 + ($57))|0; + $59 = $p; + $60 = (($59) + ($58)|0); + $p = $60; + $61 = $p; + $62 = ((($61)) + -1|0); + $p = $62; + } else { + $63 = $p; + $64 = HEAP8[$63>>0]|0; + $65 = $64&255; + $66 = ($65|0)==(3); + if ($66) { + $67 = $level; + $68 = (($67) + 1)|0; + $level = $68; + break; + } + $69 = $p; + $70 = HEAP8[$69>>0]|0; + $71 = $70&255; + $72 = ($71|0)==(4); + if ($72) { + $73 = $level; + $74 = (($73) + -1)|0; + $level = $74; + break; + } else { + $75 = $p; + $76 = HEAP8[$75>>0]|0; + $77 = $76&255; + $78 = ($77|0)==(0); + if ($78) { + label = 24; + break L22; + } else { + break; + } + } + } + } while(0); + $79 = $p; + $80 = ((($79)) + 1|0); + $p = $80; + $81 = $level; + $82 = ($81|0)!=(0); + if (!($82)) { + break; + } + } + if ((label|0) == 24) { + $0 = 0; + $113 = $0; + STACKTOP = sp;return ($113|0); + } + $83 = $p; + $84 = $head; + $85 = $83; + $86 = $84; + $87 = (($85) - ($86))|0; + $88 = $87&65535; + HEAP16[$n>>1] = $88; + $89 = HEAP16[$n>>1]|0; + $90 = $89&65535; + $91 = (1 + ($90))|0; + $92 = (($91) + 2)|0; + $93 = (__gcry_malloc($92)|0); + $newlist = $93; + $94 = $newlist; + $95 = ($94|0)!=(0|0); + if ($95) { + $96 = $newlist; + $d = $96; + $97 = $d; + $98 = ((($97)) + 1|0); + $d = $98; + HEAP8[$97>>0] = 3; + $99 = $d; + $100 = $head; + $101 = HEAP16[$n>>1]|0; + $102 = $101&65535; + _memcpy(($99|0),($100|0),($102|0))|0; + $103 = HEAP16[$n>>1]|0; + $104 = $103&65535; + $105 = $d; + $106 = (($105) + ($104)|0); + $d = $106; + $107 = $d; + $108 = ((($107)) + 1|0); + $d = $108; + HEAP8[$107>>0] = 4; + $109 = $d; + $110 = ((($109)) + 1|0); + $d = $110; + HEAP8[$109>>0] = 0; + $111 = $newlist; + $112 = (_normalize($111)|0); + $0 = $112; + $113 = $0; + STACKTOP = sp;return ($113|0); + } else { + $0 = 0; + $113 = $0; + STACKTOP = sp;return ($113|0); + } + } + } + $0 = 0; + $113 = $0; + STACKTOP = sp;return ($113|0); +} +function __gcry_sexp_cadr($list) { + $list = $list|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $a = 0, $b = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $list; + $1 = $0; + $2 = (__gcry_sexp_cdr($1)|0); + $a = $2; + $3 = $a; + $4 = (__gcry_sexp_car($3)|0); + $b = $4; + $5 = $a; + __gcry_sexp_release($5); + $6 = $b; + STACKTOP = sp;return ($6|0); +} +function __gcry_sexp_build($retsexp,$erroff,$format,$varargs) { + $retsexp = $retsexp|0; + $erroff = $erroff|0; + $format = $format|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $arg_ptr = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $arg_ptr = sp; + $0 = $retsexp; + $1 = $erroff; + $2 = $format; + HEAP32[$arg_ptr>>2] = $varargs; + $3 = $0; + $4 = $1; + $5 = $2; + $6 = $2; + $7 = (_strlen($6)|0); + $8 = (_do_vsexp_sscan($3,$4,$5,$7,1,0,$arg_ptr)|0); + $rc = $8; + $9 = $rc; + STACKTOP = sp;return ($9|0); +} +function __gcry_sexp_vbuild($retsexp,$erroff,$format,$arg_ptr) { + $retsexp = $retsexp|0; + $erroff = $erroff|0; + $format = $format|0; + $arg_ptr = $arg_ptr|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $retsexp; + $1 = $erroff; + $2 = $format; + $3 = $arg_ptr; + $4 = $0; + $5 = $1; + $6 = $2; + $7 = $2; + $8 = (_strlen($7)|0); + $9 = $3; + $10 = (_do_vsexp_sscan($4,$5,$6,$8,1,0,$9)|0); + STACKTOP = sp;return ($10|0); +} +function __gcry_sexp_sscan($retsexp,$erroff,$buffer,$length) { + $retsexp = $retsexp|0; + $erroff = $erroff|0; + $buffer = $buffer|0; + $length = $length|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $retsexp; + $1 = $erroff; + $2 = $buffer; + $3 = $length; + $4 = $0; + $5 = $1; + $6 = $2; + $7 = $3; + $8 = (_do_sexp_sscan($4,$5,$6,$7,0,0,$vararg_buffer)|0); + STACKTOP = sp;return ($8|0); +} +function __gcry_sexp_sprint($list,$mode,$buffer,$maxlength) { + $list = $list|0; + $mode = $mode|0; + $buffer = $buffer|0; + $maxlength = $maxlength|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $21 = 0; + var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $d = 0, $i = 0, $indent = 0, $len = 0, $n = 0, $nn = 0, $numbuf = 0, $or$cond = 0, $s = 0, $type = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $n = sp + 52|0; + $numbuf = sp + 56|0; + $1 = $list; + $2 = $mode; + $3 = $buffer; + $4 = $maxlength; + $len = 0; + $indent = 0; + $5 = $1; + $6 = ($5|0)!=(0|0); + $7 = $1; + $8 = $6 ? $7 : 22753; + $s = $8; + $9 = $3; + $d = $9; + L1: while(1) { + $10 = $s; + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = ($12|0)!=(0); + if (!($13)) { + label = 55; + break; + } + $14 = $s; + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + switch ($16|0) { + case 3: { + $17 = $s; + $18 = ((($17)) + 1|0); + $s = $18; + $19 = $2; + $20 = ($19|0)!=(1); + if ($20) { + $21 = $indent; + $22 = ($21|0)!=(0); + if ($22) { + $23 = $len; + $24 = (($23) + 1)|0; + $len = $24; + } + $25 = $indent; + $26 = $len; + $27 = (($26) + ($25))|0; + $len = $27; + } + $28 = $len; + $29 = (($28) + 1)|0; + $len = $29; + $30 = $3; + $31 = ($30|0)!=(0|0); + if ($31) { + $32 = $len; + $33 = $4; + $34 = ($32>>>0)>=($33>>>0); + if ($34) { + label = 10; + break L1; + } + $35 = $2; + $36 = ($35|0)!=(1); + L15: do { + if ($36) { + $37 = $indent; + $38 = ($37|0)!=(0); + if ($38) { + $39 = $d; + $40 = ((($39)) + 1|0); + $d = $40; + HEAP8[$39>>0] = 10; + } + $i = 0; + while(1) { + $41 = $i; + $42 = $indent; + $43 = ($41|0)<($42|0); + if (!($43)) { + break L15; + } + $44 = $d; + $45 = ((($44)) + 1|0); + $d = $45; + HEAP8[$44>>0] = 32; + $46 = $i; + $47 = (($46) + 1)|0; + $i = $47; + } + } + } while(0); + $48 = $d; + $49 = ((($48)) + 1|0); + $d = $49; + HEAP8[$48>>0] = 40; + } + $50 = $indent; + $51 = (($50) + 1)|0; + $indent = $51; + continue L1; + break; + } + case 4: { + $52 = $s; + $53 = ((($52)) + 1|0); + $s = $53; + $54 = $len; + $55 = (($54) + 1)|0; + $len = $55; + $56 = $3; + $57 = ($56|0)!=(0|0); + if ($57) { + $58 = $len; + $59 = $4; + $60 = ($58>>>0)>=($59>>>0); + if ($60) { + label = 21; + break L1; + } + $61 = $d; + $62 = ((($61)) + 1|0); + $d = $62; + HEAP8[$61>>0] = 41; + } + $63 = $indent; + $64 = (($63) + -1)|0; + $indent = $64; + $65 = $s; + $66 = HEAP8[$65>>0]|0; + $67 = $66&255; + $68 = ($67|0)!=(3); + if (!($68)) { + continue L1; + } + $69 = $s; + $70 = HEAP8[$69>>0]|0; + $71 = $70&255; + $72 = ($71|0)!=(0); + $73 = $2; + $74 = ($73|0)!=(1); + $or$cond = $72 & $74; + if (!($or$cond)) { + continue L1; + } + $75 = $len; + $76 = (($75) + 1)|0; + $len = $76; + $77 = $indent; + $78 = $len; + $79 = (($78) + ($77))|0; + $len = $79; + $80 = $3; + $81 = ($80|0)!=(0|0); + if (!($81)) { + continue L1; + } + $82 = $len; + $83 = $4; + $84 = ($82>>>0)>=($83>>>0); + if ($84) { + label = 27; + break L1; + } + $85 = $d; + $86 = ((($85)) + 1|0); + $d = $86; + HEAP8[$85>>0] = 10; + $i = 0; + while(1) { + $87 = $i; + $88 = $indent; + $89 = ($87|0)<($88|0); + if (!($89)) { + continue L1; + } + $90 = $d; + $91 = ((($90)) + 1|0); + $d = $91; + HEAP8[$90>>0] = 32; + $92 = $i; + $93 = (($92) + 1)|0; + $i = $93; + } + break; + } + case 1: { + $94 = $s; + $95 = ((($94)) + 1|0); + $s = $95; + $96 = $s; + ;HEAP8[$n>>0]=HEAP8[$96>>0]|0;HEAP8[$n+1>>0]=HEAP8[$96+1>>0]|0; + $97 = $s; + $98 = ((($97)) + 2|0); + $s = $98; + $99 = $2; + $100 = ($99|0)==(3); + if ($100) { + $101 = $s; + $102 = HEAP16[$n>>1]|0; + $103 = $102&65535; + $104 = (_suitable_encoding($101,$103)|0); + $type = $104; + switch ($104|0) { + case 1: { + $105 = $s; + $106 = HEAP16[$n>>1]|0; + $107 = $106&65535; + $108 = (_convert_to_string($105,$107,0)|0); + $nn = $108; + break; + } + case 2: { + $109 = $s; + $110 = HEAP16[$n>>1]|0; + $111 = $110&65535; + $112 = (_convert_to_token($109,$111,0)|0); + $nn = $112; + break; + } + default: { + $113 = $s; + $114 = HEAP16[$n>>1]|0; + $115 = $114&65535; + $116 = (_convert_to_hex($113,$115,0)|0); + $nn = $116; + } + } + $117 = $nn; + $118 = $len; + $119 = (($118) + ($117))|0; + $len = $119; + $120 = $3; + $121 = ($120|0)!=(0|0); + if ($121) { + $122 = $len; + $123 = $4; + $124 = ($122>>>0)>=($123>>>0); + if ($124) { + label = 38; + break L1; + } + $125 = $type; + switch ($125|0) { + case 1: { + $126 = $s; + $127 = HEAP16[$n>>1]|0; + $128 = $127&65535; + $129 = $d; + (_convert_to_string($126,$128,$129)|0); + break; + } + case 2: { + $130 = $s; + $131 = HEAP16[$n>>1]|0; + $132 = $131&65535; + $133 = $d; + (_convert_to_token($130,$132,$133)|0); + break; + } + default: { + $134 = $s; + $135 = HEAP16[$n>>1]|0; + $136 = $135&65535; + $137 = $d; + (_convert_to_hex($134,$136,$137)|0); + } + } + $138 = $nn; + $139 = $d; + $140 = (($139) + ($138)|0); + $d = $140; + } + $141 = HEAP16[$n>>1]|0; + $142 = $141&65535; + $143 = $s; + $144 = (($143) + ($142)|0); + $145 = HEAP8[$144>>0]|0; + $146 = $145&255; + $147 = ($146|0)!=(4); + if ($147) { + $148 = $len; + $149 = (($148) + 1)|0; + $len = $149; + $150 = $3; + $151 = ($150|0)!=(0|0); + if ($151) { + $152 = $len; + $153 = $4; + $154 = ($152>>>0)>=($153>>>0); + if ($154) { + label = 47; + break L1; + } + $155 = $d; + $156 = ((($155)) + 1|0); + $d = $156; + HEAP8[$155>>0] = 32; + } + } + } else { + $157 = HEAP16[$n>>1]|0; + $158 = $157&65535; + HEAP32[$vararg_buffer>>2] = $158; + (_sprintf($numbuf,22780,$vararg_buffer)|0); + $159 = (_strlen($numbuf)|0); + $160 = HEAP16[$n>>1]|0; + $161 = $160&65535; + $162 = (($159) + ($161))|0; + $163 = $len; + $164 = (($163) + ($162))|0; + $len = $164; + $165 = $3; + $166 = ($165|0)!=(0|0); + if ($166) { + $167 = $len; + $168 = $4; + $169 = ($167>>>0)>=($168>>>0); + if ($169) { + label = 51; + break L1; + } + $170 = $d; + $171 = (___stpcpy($170,$numbuf)|0); + $d = $171; + $172 = $d; + $173 = $s; + $174 = HEAP16[$n>>1]|0; + $175 = $174&65535; + _memcpy(($172|0),($173|0),($175|0))|0; + $176 = HEAP16[$n>>1]|0; + $177 = $176&65535; + $178 = $d; + $179 = (($178) + ($177)|0); + $d = $179; + } + } + $180 = HEAP16[$n>>1]|0; + $181 = $180&65535; + $182 = $s; + $183 = (($182) + ($181)|0); + $s = $183; + continue L1; + break; + } + default: { + label = 54; + break L1; + } + } + } + if ((label|0) == 10) { + $0 = 0; + $204 = $0; + STACKTOP = sp;return ($204|0); + } + else if ((label|0) == 21) { + $0 = 0; + $204 = $0; + STACKTOP = sp;return ($204|0); + } + else if ((label|0) == 27) { + $0 = 0; + $204 = $0; + STACKTOP = sp;return ($204|0); + } + else if ((label|0) == 38) { + $0 = 0; + $204 = $0; + STACKTOP = sp;return ($204|0); + } + else if ((label|0) == 47) { + $0 = 0; + $204 = $0; + STACKTOP = sp;return ($204|0); + } + else if ((label|0) == 51) { + $0 = 0; + $204 = $0; + STACKTOP = sp;return ($204|0); + } + else if ((label|0) == 54) { + __gcry_bug(22685,2008,22784); + // unreachable; + } + else if ((label|0) == 55) { + $184 = $2; + $185 = ($184|0)!=(1); + do { + if ($185) { + $186 = $len; + $187 = (($186) + 1)|0; + $len = $187; + $188 = $3; + $189 = ($188|0)!=(0|0); + if ($189) { + $190 = $len; + $191 = $4; + $192 = ($190>>>0)>=($191>>>0); + if (!($192)) { + $193 = $d; + $194 = ((($193)) + 1|0); + $d = $194; + HEAP8[$193>>0] = 10; + break; + } + $0 = 0; + $204 = $0; + STACKTOP = sp;return ($204|0); + } + } + } while(0); + $195 = $3; + $196 = ($195|0)!=(0|0); + $197 = $len; + do { + if ($196) { + $198 = $4; + $199 = ($197>>>0)>=($198>>>0); + if (!($199)) { + $200 = $d; + $201 = ((($200)) + 1|0); + $d = $201; + HEAP8[$200>>0] = 0; + break; + } + $0 = 0; + $204 = $0; + STACKTOP = sp;return ($204|0); + } else { + $202 = (($197) + 1)|0; + $len = $202; + } + } while(0); + $203 = $len; + $0 = $203; + $204 = $0; + STACKTOP = sp;return ($204|0); + } + return (0)|0; +} +function _suitable_encoding($buffer,$length) { + $buffer = $buffer|0; + $length = $length|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $9 = 0; + var $maybe_token = 0, $s = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $buffer; + $2 = $length; + $maybe_token = 1; + $3 = $2; + $4 = ($3|0)!=(0); + if (!($4)) { + $0 = 1; + $79 = $0; + STACKTOP = sp;return ($79|0); + } + $5 = $1; + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = $7 & 128; + $9 = ($8|0)!=(0); + if ($9) { + $0 = 0; + $79 = $0; + STACKTOP = sp;return ($79|0); + } + $10 = $1; + $11 = HEAP8[$10>>0]|0; + $12 = ($11<<24>>24)!=(0); + if (!($12)) { + $0 = 0; + $79 = $0; + STACKTOP = sp;return ($79|0); + } + $13 = $1; + $s = $13; + while(1) { + $14 = $2; + $15 = ($14|0)!=(0); + if (!($15)) { + break; + } + $16 = $s; + $17 = HEAP8[$16>>0]|0; + $18 = $17&255; + $19 = ($18|0)<(32); + if ($19) { + label = 12; + } else { + $20 = $s; + $21 = HEAP8[$20>>0]|0; + $22 = $21&255; + $23 = ($22|0)>=(127); + if ($23) { + $24 = $s; + $25 = HEAP8[$24>>0]|0; + $26 = $25&255; + $27 = ($26|0)<=(160); + if ($27) { + label = 12; + } + } + } + if ((label|0) == 12) { + label = 0; + $28 = $s; + $29 = HEAP8[$28>>0]|0; + $30 = $29&255; + $31 = (_strchr(22756,$30)|0); + $32 = ($31|0)!=(0|0); + if (!($32)) { + label = 13; + break; + } + } + $33 = $maybe_token; + $34 = ($33|0)!=(0); + do { + if ($34) { + $35 = $s; + $36 = HEAP8[$35>>0]|0; + $37 = $36&255; + $38 = ($37|0)>=(65); + if ($38) { + $39 = $s; + $40 = HEAP8[$39>>0]|0; + $41 = $40&255; + $42 = ($41|0)<=(90); + if ($42) { + break; + } + } + $43 = $s; + $44 = HEAP8[$43>>0]|0; + $45 = $44&255; + $46 = ($45|0)>=(97); + if ($46) { + $47 = $s; + $48 = HEAP8[$47>>0]|0; + $49 = $48&255; + $50 = ($49|0)<=(122); + if ($50) { + break; + } + } + $51 = $s; + $52 = HEAP8[$51>>0]|0; + $53 = $52&255; + $54 = ($53|0)>=(48); + if ($54) { + $55 = $s; + $56 = HEAP8[$55>>0]|0; + $57 = $56&255; + $58 = ($57|0)<=(57); + if ($58) { + break; + } + } + $59 = $s; + $60 = HEAP8[$59>>0]|0; + $61 = $60&255; + $62 = (_strchr(22766,$61)|0); + $63 = ($62|0)!=(0|0); + if (!($63)) { + $maybe_token = 0; + } + } + } while(0); + $64 = $s; + $65 = ((($64)) + 1|0); + $s = $65; + $66 = $2; + $67 = (($66) + -1)|0; + $2 = $67; + } + if ((label|0) == 13) { + $0 = 0; + $79 = $0; + STACKTOP = sp;return ($79|0); + } + $68 = $1; + $s = $68; + $69 = $maybe_token; + $70 = ($69|0)!=(0); + do { + if ($70) { + $71 = $s; + $72 = HEAP8[$71>>0]|0; + $73 = $72&255; + $74 = ($73|0)>=(48); + if ($74) { + $75 = $s; + $76 = HEAP8[$75>>0]|0; + $77 = $76&255; + $78 = ($77|0)<=(57); + if ($78) { + break; + } + } + $0 = 2; + $79 = $0; + STACKTOP = sp;return ($79|0); + } + } while(0); + $0 = 1; + $79 = $0; + STACKTOP = sp;return ($79|0); +} +function _convert_to_string($s,$len,$dest) { + $s = $s|0; + $len = $len|0; + $dest = $dest|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0; + var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $count = 0, $p = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $1 = $s; + $2 = $len; + $3 = $dest; + $4 = $3; + $5 = ($4|0)!=(0|0); + if (!($5)) { + $count = 2; + while(1) { + $83 = $2; + $84 = ($83|0)!=(0); + if (!($84)) { + break; + } + $85 = $1; + $86 = HEAP8[$85>>0]|0; + $87 = $86&255; + L6: do { + switch ($87|0) { + case 92: case 39: case 34: case 13: case 12: case 10: case 11: case 9: case 8: { + $88 = $count; + $89 = (($88) + 2)|0; + $count = $89; + break; + } + default: { + $90 = $1; + $91 = HEAP8[$90>>0]|0; + $92 = $91&255; + $93 = ($92|0)<(32); + do { + if (!($93)) { + $94 = $1; + $95 = HEAP8[$94>>0]|0; + $96 = $95&255; + $97 = ($96|0)>=(127); + if ($97) { + $98 = $1; + $99 = HEAP8[$98>>0]|0; + $100 = $99&255; + $101 = ($100|0)<=(160); + if ($101) { + break; + } + } + $104 = $count; + $105 = (($104) + 1)|0; + $count = $105; + break L6; + } + } while(0); + $102 = $count; + $103 = (($102) + 4)|0; + $count = $103; + } + } + } while(0); + $106 = $2; + $107 = (($106) + -1)|0; + $2 = $107; + $108 = $1; + $109 = ((($108)) + 1|0); + $1 = $109; + } + $110 = $count; + $0 = $110; + $111 = $0; + STACKTOP = sp;return ($111|0); + } + $6 = $3; + $p = $6; + $7 = $p; + $8 = ((($7)) + 1|0); + $p = $8; + HEAP8[$7>>0] = 34; + while(1) { + $9 = $2; + $10 = ($9|0)!=(0); + if (!($10)) { + break; + } + $11 = $1; + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + L22: do { + switch ($13|0) { + case 8: { + $14 = $p; + $15 = ((($14)) + 1|0); + $p = $15; + HEAP8[$14>>0] = 92; + $16 = $p; + $17 = ((($16)) + 1|0); + $p = $17; + HEAP8[$16>>0] = 98; + break; + } + case 9: { + $18 = $p; + $19 = ((($18)) + 1|0); + $p = $19; + HEAP8[$18>>0] = 92; + $20 = $p; + $21 = ((($20)) + 1|0); + $p = $21; + HEAP8[$20>>0] = 116; + break; + } + case 11: { + $22 = $p; + $23 = ((($22)) + 1|0); + $p = $23; + HEAP8[$22>>0] = 92; + $24 = $p; + $25 = ((($24)) + 1|0); + $p = $25; + HEAP8[$24>>0] = 118; + break; + } + case 10: { + $26 = $p; + $27 = ((($26)) + 1|0); + $p = $27; + HEAP8[$26>>0] = 92; + $28 = $p; + $29 = ((($28)) + 1|0); + $p = $29; + HEAP8[$28>>0] = 110; + break; + } + case 12: { + $30 = $p; + $31 = ((($30)) + 1|0); + $p = $31; + HEAP8[$30>>0] = 92; + $32 = $p; + $33 = ((($32)) + 1|0); + $p = $33; + HEAP8[$32>>0] = 102; + break; + } + case 13: { + $34 = $p; + $35 = ((($34)) + 1|0); + $p = $35; + HEAP8[$34>>0] = 92; + $36 = $p; + $37 = ((($36)) + 1|0); + $p = $37; + HEAP8[$36>>0] = 114; + break; + } + case 34: { + $38 = $p; + $39 = ((($38)) + 1|0); + $p = $39; + HEAP8[$38>>0] = 92; + $40 = $p; + $41 = ((($40)) + 1|0); + $p = $41; + HEAP8[$40>>0] = 34; + break; + } + case 39: { + $42 = $p; + $43 = ((($42)) + 1|0); + $p = $43; + HEAP8[$42>>0] = 92; + $44 = $p; + $45 = ((($44)) + 1|0); + $p = $45; + HEAP8[$44>>0] = 39; + break; + } + case 92: { + $46 = $p; + $47 = ((($46)) + 1|0); + $p = $47; + HEAP8[$46>>0] = 92; + $48 = $p; + $49 = ((($48)) + 1|0); + $p = $49; + HEAP8[$48>>0] = 92; + break; + } + default: { + $50 = $1; + $51 = HEAP8[$50>>0]|0; + $52 = $51&255; + $53 = ($52|0)<(32); + do { + if (!($53)) { + $54 = $1; + $55 = HEAP8[$54>>0]|0; + $56 = $55&255; + $57 = ($56|0)>=(127); + if ($57) { + $58 = $1; + $59 = HEAP8[$58>>0]|0; + $60 = $59&255; + $61 = ($60|0)<=(160); + if ($61) { + break; + } + } + $68 = $1; + $69 = HEAP8[$68>>0]|0; + $70 = $p; + $71 = ((($70)) + 1|0); + $p = $71; + HEAP8[$70>>0] = $69; + break L22; + } + } while(0); + $62 = $p; + $63 = $1; + $64 = HEAP8[$63>>0]|0; + $65 = $64&255; + HEAP32[$vararg_buffer>>2] = $65; + (_sprintf($62,22607,$vararg_buffer)|0); + $66 = $p; + $67 = ((($66)) + 4|0); + $p = $67; + } + } + } while(0); + $72 = $2; + $73 = (($72) + -1)|0; + $2 = $73; + $74 = $1; + $75 = ((($74)) + 1|0); + $1 = $75; + } + $76 = $p; + $77 = ((($76)) + 1|0); + $p = $77; + HEAP8[$76>>0] = 34; + $78 = $p; + $79 = $3; + $80 = $78; + $81 = $79; + $82 = (($80) - ($81))|0; + $0 = $82; + $111 = $0; + STACKTOP = sp;return ($111|0); +} +function _convert_to_token($src,$len,$dest) { + $src = $src|0; + $len = $len|0; + $dest = $dest|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $src; + $1 = $len; + $2 = $dest; + $3 = $2; + $4 = ($3|0)!=(0|0); + if ($4) { + $5 = $2; + $6 = $0; + $7 = $1; + _memcpy(($5|0),($6|0),($7|0))|0; + } + $8 = $1; + STACKTOP = sp;return ($8|0); +} +function _convert_to_hex($src,$len,$dest) { + $src = $src|0; + $len = $len|0; + $dest = $dest|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $src; + $1 = $len; + $2 = $dest; + $3 = $2; + $4 = ($3|0)!=(0|0); + if (!($4)) { + $21 = $1; + $22 = $21<<1; + $23 = (($22) + 2)|0; + STACKTOP = sp;return ($23|0); + } + $5 = $2; + $6 = ((($5)) + 1|0); + $2 = $6; + HEAP8[$5>>0] = 35; + $i = 0; + while(1) { + $7 = $i; + $8 = $1; + $9 = ($7>>>0)<($8>>>0); + $10 = $2; + if (!($9)) { + break; + } + $11 = $i; + $12 = $0; + $13 = (($12) + ($11)|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + HEAP32[$vararg_buffer>>2] = $15; + (_sprintf($10,22775,$vararg_buffer)|0); + $16 = $i; + $17 = (($16) + 1)|0; + $i = $17; + $18 = $2; + $19 = ((($18)) + 2|0); + $2 = $19; + } + $20 = ((($10)) + 1|0); + $2 = $20; + HEAP8[$10>>0] = 35; + $21 = $1; + $22 = $21<<1; + $23 = (($22) + 2)|0; + STACKTOP = sp;return ($23|0); +} +function __gcry_sexp_vextract_param($sexp,$path,$list,$arg_ptr) { + $sexp = $sexp|0; + $path = $path|0; + $list = $list|0; + $arg_ptr = $arg_ptr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $32 = 0, $33 = 0, $34 = 0; + var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $arglist_current = 0, $arglist_current3 = 0, $arglist_next = 0, $arglist_next4 = 0, $array = 0, $arrayisdesc = 0, $expanded = 0, $expanded11 = 0, $expanded12 = 0; + var $expanded14 = 0, $expanded15 = 0, $expanded16 = 0, $expanded5 = 0, $expanded7 = 0, $expanded8 = 0, $expanded9 = 0, $freethis = 0, $idx = 0, $l1 = 0, $mode = 0, $n = 0, $nbuf = 0, $or$cond = 0, $pbuf = 0, $rc = 0, $s = 0, $s2 = 0, $spec = 0, $spec1 = 0; + var $spec2 = 0, $spec3 = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 192|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $array = sp + 48|0; + $arrayisdesc = sp + 160|0; + $nbuf = sp + 8|0; + $1 = $sexp; + $2 = $path; + $3 = $list; + $4 = $arg_ptr; + $mode = 43; + $freethis = 0; + dest=$arrayisdesc; stop=dest+20|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); + $5 = $3; + $s = $5; + $idx = 0; + while(1) { + $6 = $s; + $7 = HEAP8[$6>>0]|0; + $8 = $7 << 24 >> 24; + $9 = ($8|0)!=(0); + $10 = $idx; + $11 = ($10>>>0)<(20); + $12 = $9 ? $11 : 0; + $13 = $s; + $14 = HEAP8[$13>>0]|0; + if (!($12)) { + label = 18; + break; + } + $15 = $14 << 24 >> 24; + $16 = ($15|0)==(38); + if (!($16)) { + $17 = $s; + $18 = HEAP8[$17>>0]|0; + $19 = $18 << 24 >> 24; + $20 = ($19|0)==(43); + if (!($20)) { + $21 = $s; + $22 = HEAP8[$21>>0]|0; + $23 = $22 << 24 >> 24; + $24 = ($23|0)==(45); + if (!($24)) { + $25 = $s; + $26 = HEAP8[$25>>0]|0; + $27 = $26 << 24 >> 24; + $28 = ($27|0)==(47); + if (!($28)) { + $29 = $s; + $30 = HEAP8[$29>>0]|0; + $31 = $30 << 24 >> 24; + $32 = ($31|0)==(63); + if (!($32)) { + $33 = $s; + $34 = (_whitespacep($33)|0); + $35 = ($34|0)!=(0); + if (!($35)) { + $36 = $s; + $37 = HEAP8[$36>>0]|0; + $38 = $37 << 24 >> 24; + $39 = ($38|0)==(39); + if ($39) { + $40 = $s; + $41 = ((($40)) + 1|0); + $s = $41; + $42 = $s; + $43 = (_strchr($42,39)|0); + $s2 = $43; + $44 = $s2; + $45 = ($44|0)!=(0|0); + if (!($45)) { + label = 12; + break; + } + $46 = $s2; + $47 = $s; + $48 = ($46|0)==($47|0); + if ($48) { + label = 12; + break; + } + $49 = $s2; + $s = $49; + } + $50 = $4; + $arglist_current = HEAP32[$50>>2]|0; + $51 = $arglist_current; + $52 = ((0) + 4|0); + $expanded5 = $52; + $expanded = (($expanded5) - 1)|0; + $53 = (($51) + ($expanded))|0; + $54 = ((0) + 4|0); + $expanded9 = $54; + $expanded8 = (($expanded9) - 1)|0; + $expanded7 = $expanded8 ^ -1; + $55 = $53 & $expanded7; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + $arglist_next = ((($56)) + 4|0); + HEAP32[$50>>2] = $arglist_next; + $58 = $idx; + $59 = (($array) + ($58<<2)|0); + HEAP32[$59>>2] = $57; + $60 = $idx; + $61 = (($array) + ($60<<2)|0); + $62 = HEAP32[$61>>2]|0; + $63 = ($62|0)!=(0|0); + if (!($63)) { + label = 15; + break; + } + $64 = $idx; + $65 = (($64) + 1)|0; + $idx = $65; + } + } + } + } + } + } + $66 = $s; + $67 = ((($66)) + 1|0); + $s = $67; + } + if ((label|0) == 12) { + $0 = 29; + $310 = $0; + STACKTOP = sp;return ($310|0); + } + else if ((label|0) == 15) { + $0 = 128; + $310 = $0; + STACKTOP = sp;return ($310|0); + } + else if ((label|0) == 18) { + $68 = ($14<<24>>24)!=(0); + if ($68) { + $0 = 183; + $310 = $0; + STACKTOP = sp;return ($310|0); + } + $69 = $4; + $arglist_current3 = HEAP32[$69>>2]|0; + $70 = $arglist_current3; + $71 = ((0) + 4|0); + $expanded12 = $71; + $expanded11 = (($expanded12) - 1)|0; + $72 = (($70) + ($expanded11))|0; + $73 = ((0) + 4|0); + $expanded16 = $73; + $expanded15 = (($expanded16) - 1)|0; + $expanded14 = $expanded15 ^ -1; + $74 = $72 & $expanded14; + $75 = $74; + $76 = HEAP32[$75>>2]|0; + $arglist_next4 = ((($75)) + 4|0); + HEAP32[$69>>2] = $arglist_next4; + $77 = ($76|0)!=(0|0); + if ($77) { + $0 = 45; + $310 = $0; + STACKTOP = sp;return ($310|0); + } + while(1) { + $78 = $2; + $79 = ($78|0)!=(0|0); + if (!($79)) { + label = 33; + break; + } + $80 = $2; + $81 = HEAP8[$80>>0]|0; + $82 = $81 << 24 >> 24; + $83 = ($82|0)!=(0); + if (!($83)) { + label = 33; + break; + } + $84 = $2; + $85 = (_strchr($84,33)|0); + $s = $85; + $86 = $s; + $87 = $2; + $88 = ($86|0)==($87|0); + if ($88) { + label = 25; + break; + } + $89 = $s; + $90 = ($89|0)!=(0|0); + if ($90) { + $91 = $s; + $92 = $2; + $93 = $91; + $94 = $92; + $95 = (($93) - ($94))|0; + $96 = $95; + } else { + $96 = 0; + } + $n = $96; + $97 = $1; + $98 = $2; + $99 = $n; + $100 = (__gcry_sexp_find_token($97,$98,$99)|0); + $l1 = $100; + $101 = $l1; + $102 = ($101|0)!=(0|0); + if (!($102)) { + label = 29; + break; + } + $103 = $l1; + $1 = $103; + $l1 = 0; + $104 = $freethis; + __gcry_sexp_release($104); + $105 = $1; + $freethis = $105; + $106 = $n; + $107 = ($106|0)!=(0); + if ($107) { + $108 = $n; + $109 = (($108) + 1)|0; + $110 = $2; + $111 = (($110) + ($109)|0); + $2 = $111; + continue; + } else { + $2 = 0; + continue; + } + } + do { + if ((label|0) == 25) { + $rc = 27; + } + else if ((label|0) == 29) { + $rc = 27; + } + else if ((label|0) == 33) { + $112 = $3; + $s = $112; + $idx = 0; + L41: while(1) { + $113 = $s; + $114 = HEAP8[$113>>0]|0; + $115 = ($114<<24>>24)!=(0); + if (!($115)) { + label = 76; + break; + } + $116 = $s; + $117 = HEAP8[$116>>0]|0; + $118 = $117 << 24 >> 24; + $119 = ($118|0)==(38); + if ($119) { + label = 39; + } else { + $120 = $s; + $121 = HEAP8[$120>>0]|0; + $122 = $121 << 24 >> 24; + $123 = ($122|0)==(43); + if ($123) { + label = 39; + } else { + $124 = $s; + $125 = HEAP8[$124>>0]|0; + $126 = $125 << 24 >> 24; + $127 = ($126|0)==(45); + if ($127) { + label = 39; + } else { + $128 = $s; + $129 = HEAP8[$128>>0]|0; + $130 = $129 << 24 >> 24; + $131 = ($130|0)==(47); + if ($131) { + label = 39; + } else { + $135 = $s; + $136 = (_whitespacep($135)|0); + $137 = ($136|0)!=(0); + if (!($137)) { + $138 = $s; + $139 = HEAP8[$138>>0]|0; + $140 = $139 << 24 >> 24; + $141 = ($140|0)==(63); + if (!($141)) { + $142 = $s; + $143 = HEAP8[$142>>0]|0; + $144 = $143 << 24 >> 24; + $145 = ($144|0)==(39); + if ($145) { + $146 = $s; + $147 = ((($146)) + 1|0); + $s = $147; + $148 = $s; + $149 = (_strchr($148,39)|0); + $s2 = $149; + $150 = $s2; + $151 = ($150|0)!=(0|0); + if (!($151)) { + label = 45; + break; + } + $152 = $s2; + $153 = $s; + $154 = ($152|0)==($153|0); + if ($154) { + label = 45; + break; + } + $155 = $1; + $156 = $s; + $157 = $s2; + $158 = $s; + $159 = $157; + $160 = $158; + $161 = (($159) - ($160))|0; + $162 = (__gcry_sexp_find_token($155,$156,$161)|0); + $l1 = $162; + $163 = $s2; + $s = $163; + } else { + $164 = $1; + $165 = $s; + $166 = (__gcry_sexp_find_token($164,$165,1)|0); + $l1 = $166; + } + $167 = $l1; + $168 = ($167|0)!=(0|0); + do { + if ($168) { + label = 55; + } else { + $169 = $s; + $170 = ((($169)) + 1|0); + $171 = HEAP8[$170>>0]|0; + $172 = $171 << 24 >> 24; + $173 = ($172|0)==(63); + if ($173) { + $174 = $mode; + $175 = ($174|0)==(38); + $176 = $idx; + $177 = (($array) + ($176<<2)|0); + $178 = HEAP32[$177>>2]|0; + if (!($175)) { + HEAP32[$178>>2] = 0; + break; + } + $spec = $178; + $179 = $spec; + $180 = ((($179)) + 12|0); + $181 = HEAP32[$180>>2]|0; + $182 = ($181|0)!=(0|0); + if (!($182)) { + $183 = $spec; + HEAP32[$183>>2] = 0; + $184 = $spec; + $185 = ((($184)) + 4|0); + HEAP32[$185>>2] = 0; + } + $186 = $spec; + $187 = ((($186)) + 8|0); + HEAP32[$187>>2] = 0; + } else { + label = 55; + } + } + } while(0); + if ((label|0) == 55) { + label = 0; + $188 = $l1; + $189 = ($188|0)!=(0|0); + if (!($189)) { + label = 56; + break; + } + $190 = $mode; + $191 = ($190|0)==(38); + do { + if ($191) { + $192 = $idx; + $193 = (($array) + ($192<<2)|0); + $194 = HEAP32[$193>>2]|0; + $spec1 = $194; + $195 = $spec1; + $196 = ((($195)) + 12|0); + $197 = HEAP32[$196>>2]|0; + $198 = ($197|0)!=(0|0); + $199 = $l1; + if (!($198)) { + $227 = $spec1; + $228 = (__gcry_sexp_nth_buffer($199,1,$227)|0); + $229 = $spec1; + $230 = ((($229)) + 12|0); + HEAP32[$230>>2] = $228; + $231 = $spec1; + $232 = ((($231)) + 12|0); + $233 = HEAP32[$232>>2]|0; + $234 = ($233|0)!=(0|0); + if (!($234)) { + label = 65; + break L41; + } + $235 = $spec1; + $236 = HEAP32[$235>>2]|0; + $237 = $spec1; + $238 = ((($237)) + 8|0); + HEAP32[$238>>2] = $236; + $239 = $spec1; + $240 = ((($239)) + 4|0); + HEAP32[$240>>2] = 0; + $241 = $idx; + $242 = (($arrayisdesc) + ($241)|0); + HEAP8[$242>>0] = 2; + break; + } + $200 = (__gcry_sexp_nth_data($199,1,$nbuf)|0); + $pbuf = $200; + $201 = $pbuf; + $202 = ($201|0)!=(0|0); + $203 = HEAP32[$nbuf>>2]|0; + $204 = ($203|0)!=(0); + $or$cond = $202 & $204; + if (!($or$cond)) { + label = 60; + break L41; + } + $205 = $spec1; + $206 = ((($205)) + 4|0); + $207 = HEAP32[$206>>2]|0; + $208 = HEAP32[$nbuf>>2]|0; + $209 = (($207) + ($208))|0; + $210 = $spec1; + $211 = HEAP32[$210>>2]|0; + $212 = ($209>>>0)>($211>>>0); + if ($212) { + label = 62; + break L41; + } + $213 = $spec1; + $214 = ((($213)) + 12|0); + $215 = HEAP32[$214>>2]|0; + $216 = $spec1; + $217 = ((($216)) + 4|0); + $218 = HEAP32[$217>>2]|0; + $219 = (($215) + ($218)|0); + $220 = $pbuf; + $221 = HEAP32[$nbuf>>2]|0; + _memcpy(($219|0),($220|0),($221|0))|0; + $222 = HEAP32[$nbuf>>2]|0; + $223 = $spec1; + $224 = ((($223)) + 8|0); + HEAP32[$224>>2] = $222; + $225 = $idx; + $226 = (($arrayisdesc) + ($225)|0); + HEAP8[$226>>0] = 1; + } else { + $243 = $mode; + $244 = ($243|0)==(47); + if ($244) { + $245 = $l1; + $246 = (__gcry_sexp_nth_mpi($245,1,8)|0); + $247 = $idx; + $248 = (($array) + ($247<<2)|0); + $249 = HEAP32[$248>>2]|0; + HEAP32[$249>>2] = $246; + break; + } + $250 = $mode; + $251 = ($250|0)==(45); + $252 = $l1; + if ($251) { + $253 = (__gcry_sexp_nth_mpi($252,1,1)|0); + $254 = $idx; + $255 = (($array) + ($254<<2)|0); + $256 = HEAP32[$255>>2]|0; + HEAP32[$256>>2] = $253; + break; + } else { + $257 = (__gcry_sexp_nth_mpi($252,1,5)|0); + $258 = $idx; + $259 = (($array) + ($258<<2)|0); + $260 = HEAP32[$259>>2]|0; + HEAP32[$260>>2] = $257; + break; + } + } + } while(0); + $261 = $l1; + __gcry_sexp_release($261); + $l1 = 0; + $262 = $idx; + $263 = (($array) + ($262<<2)|0); + $264 = HEAP32[$263>>2]|0; + $265 = HEAP32[$264>>2]|0; + $266 = ($265|0)!=(0|0); + if (!($266)) { + label = 73; + break; + } + } + $267 = $idx; + $268 = (($267) + 1)|0; + $idx = $268; + } + } + } + } + } + } + if ((label|0) == 39) { + label = 0; + $132 = $s; + $133 = HEAP8[$132>>0]|0; + $134 = $133 << 24 >> 24; + $mode = $134; + } + $269 = $s; + $270 = ((($269)) + 1|0); + $s = $270; + } + if ((label|0) == 45) { + $rc = 29; + break; + } + else if ((label|0) == 56) { + $rc = 68; + break; + } + else if ((label|0) == 60) { + $rc = 65; + break; + } + else if ((label|0) == 62) { + $rc = 200; + break; + } + else if ((label|0) == 65) { + $rc = 65; + break; + } + else if ((label|0) == 73) { + $rc = 65; + break; + } + else if ((label|0) == 76) { + $271 = $freethis; + __gcry_sexp_release($271); + $0 = 0; + $310 = $0; + STACKTOP = sp;return ($310|0); + } + } + } while(0); + $272 = $freethis; + __gcry_sexp_release($272); + $273 = $l1; + __gcry_sexp_release($273); + while(1) { + $274 = $idx; + $275 = (($274) + -1)|0; + $idx = $275; + $276 = ($274|0)!=(0); + if (!($276)) { + break; + } + $277 = $idx; + $278 = (($arrayisdesc) + ($277)|0); + $279 = HEAP8[$278>>0]|0; + $280 = ($279<<24>>24)!=(0); + $281 = $idx; + if (!($280)) { + $282 = (($array) + ($281<<2)|0); + $283 = HEAP32[$282>>2]|0; + $284 = HEAP32[$283>>2]|0; + __gcry_mpi_release($284); + $285 = $idx; + $286 = (($array) + ($285<<2)|0); + $287 = HEAP32[$286>>2]|0; + HEAP32[$287>>2] = 0; + continue; + } + $288 = (($arrayisdesc) + ($281)|0); + $289 = HEAP8[$288>>0]|0; + $290 = ($289<<24>>24)!=(0); + $291 = $290 ^ 1; + $292 = $291&1; + $293 = ($292|0)==(1); + $294 = $idx; + $295 = (($array) + ($294<<2)|0); + $296 = HEAP32[$295>>2]|0; + if ($293) { + $spec2 = $296; + $297 = $spec2; + $298 = ((($297)) + 8|0); + HEAP32[$298>>2] = 0; + continue; + } else { + $spec3 = $296; + $299 = $spec3; + $300 = ((($299)) + 12|0); + $301 = HEAP32[$300>>2]|0; + __gcry_free($301); + $302 = $spec3; + $303 = ((($302)) + 12|0); + HEAP32[$303>>2] = 0; + $304 = $spec3; + $305 = ((($304)) + 8|0); + HEAP32[$305>>2] = 0; + $306 = $spec3; + $307 = ((($306)) + 4|0); + HEAP32[$307>>2] = 0; + $308 = $spec3; + HEAP32[$308>>2] = 0; + continue; + } + } + $309 = $rc; + $0 = $309; + $310 = $0; + STACKTOP = sp;return ($310|0); + } + return (0)|0; +} +function __gcry_sexp_extract_param($sexp,$path,$list,$varargs) { + $sexp = $sexp|0; + $path = $path|0; + $list = $list|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $arg_ptr = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $arg_ptr = sp; + $0 = $sexp; + $1 = $path; + $2 = $list; + HEAP32[$arg_ptr>>2] = $varargs; + $3 = $0; + $4 = $1; + $5 = $2; + $6 = (__gcry_sexp_vextract_param($3,$4,$5,$arg_ptr)|0); + $rc = $6; + $7 = $rc; + $8 = (_gpg_error_526($7)|0); + STACKTOP = sp;return ($8|0); +} +function _gpg_error_526($code) { + $code = $code|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $code; + $1 = $0; + $2 = (_gpg_err_make_527(1,$1)|0); + STACKTOP = sp;return ($2|0); +} +function _gpg_err_make_527($source,$code) { + $source = $source|0; + $code = $code|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $source; + $1 = $code; + $2 = $1; + $3 = ($2|0)==(0); + if ($3) { + $10 = 0; + STACKTOP = sp;return ($10|0); + } + $4 = $0; + $5 = $4 & 127; + $6 = $5 << 24; + $7 = $1; + $8 = $7 & 65535; + $9 = $6 | $8; + $10 = $9; + STACKTOP = sp;return ($10|0); +} +function __gcry_disable_hw_feature($name) { + $name = $name|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $name; + $i = 0; + while(1) { + $2 = $i; + $3 = ($2>>>0)<(13); + if (!($3)) { + label = 6; + break; + } + $4 = $i; + $5 = (1124 + ($4<<3)|0); + $6 = ((($5)) + 4|0); + $7 = HEAP32[$6>>2]|0; + $8 = $1; + $9 = (_strcmp($7,$8)|0); + $10 = ($9|0)!=(0); + $11 = $i; + if (!($10)) { + label = 4; + break; + } + $16 = (($11) + 1)|0; + $i = $16; + } + if ((label|0) == 4) { + $12 = (1124 + ($11<<3)|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[17679]|0; + $15 = $14 | $13; + HEAP32[17679] = $15; + $0 = 0; + $17 = $0; + STACKTOP = sp;return ($17|0); + } + else if ((label|0) == 6) { + $0 = 88; + $17 = $0; + STACKTOP = sp;return ($17|0); + } + return (0)|0; +} +function __gcry_get_hw_features() { + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP32[17680]|0; + return ($0|0); +} +function __gcry_enum_hw_features($idx,$r_feature) { + $idx = $idx|0; + $r_feature = $r_feature|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $idx; + $2 = $r_feature; + $3 = $1; + $4 = ($3|0)<(0); + $5 = $1; + $6 = ($5>>>0)>=(13); + $or$cond = $4 | $6; + if ($or$cond) { + $0 = 0; + $17 = $0; + STACKTOP = sp;return ($17|0); + } + $7 = $2; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = $1; + $10 = (1124 + ($9<<3)|0); + $11 = HEAP32[$10>>2]|0; + $12 = $2; + HEAP32[$12>>2] = $11; + } + $13 = $1; + $14 = (1124 + ($13<<3)|0); + $15 = ((($14)) + 4|0); + $16 = HEAP32[$15>>2]|0; + $0 = $16; + $17 = $0; + STACKTOP = sp;return ($17|0); +} +function __gcry_detect_hw_features() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + HEAP32[17680] = 0; + $0 = (__gcry_fips_mode()|0); + $1 = ($0|0)!=(0); + if ($1) { + return; + } + _parse_hwf_deny_file(); + $2 = HEAP32[17679]|0; + $3 = $2 ^ -1; + $4 = HEAP32[17680]|0; + $5 = $4 & $3; + HEAP32[17680] = $5; + return; +} +function _parse_hwf_deny_file() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $8 = 0, $9 = 0, $buffer = 0, $fname = 0, $fp = 0, $i = 0; + var $lnr = 0, $p = 0, $pend = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 288|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $buffer = sp + 24|0; + $fname = 22952; + $lnr = 0; + $0 = $fname; + $1 = (_fopen($0,23833)|0); + $fp = $1; + $2 = $fp; + $3 = ($2|0)!=(0|0); + if (!($3)) { + STACKTOP = sp;return; + } + while(1) { + $4 = $fp; + $5 = (_fgets($buffer,256,$4)|0); + $6 = ($5|0)!=(0|0); + if (!($6)) { + break; + } + $9 = $lnr; + $10 = (($9) + 1)|0; + $lnr = $10; + $p = $buffer; + while(1) { + $11 = $p; + $12 = HEAP8[$11>>0]|0; + $13 = $12 << 24 >> 24; + $14 = $13 & 128; + $15 = ($14|0)!=(0); + if ($15) { + break; + } + $16 = $p; + $17 = HEAP8[$16>>0]|0; + $18 = $17 << 24 >> 24; + $19 = (_isspace($18)|0); + $20 = ($19|0)!=(0); + if (!($20)) { + break; + } + $21 = $p; + $22 = ((($21)) + 1|0); + $p = $22; + } + $23 = $p; + $24 = (_strchr($23,10)|0); + $pend = $24; + $25 = $pend; + $26 = ($25|0)!=(0|0); + if ($26) { + $27 = $pend; + HEAP8[$27>>0] = 0; + } + $28 = $p; + $29 = $p; + $30 = HEAP8[$29>>0]|0; + $31 = $30 << 24 >> 24; + $32 = ($31|0)!=(0); + if ($32) { + $33 = $p; + $34 = (_strlen($33)|0); + $35 = (($34) - 1)|0; + $37 = $35; + } else { + $37 = 0; + } + $36 = (($28) + ($37)|0); + $pend = $36; + while(1) { + $38 = $pend; + $39 = $p; + $40 = ($38>>>0)>($39>>>0); + if (!($40)) { + break; + } + $41 = $pend; + $42 = HEAP8[$41>>0]|0; + $43 = $42 << 24 >> 24; + $44 = $43 & 128; + $45 = ($44|0)!=(0); + if (!($45)) { + $46 = $pend; + $47 = HEAP8[$46>>0]|0; + $48 = $47 << 24 >> 24; + $49 = (_isspace($48)|0); + $50 = ($49|0)!=(0); + if ($50) { + $51 = $pend; + HEAP8[$51>>0] = 0; + } + } + $52 = $pend; + $53 = ((($52)) + -1|0); + $pend = $53; + } + $54 = $p; + $55 = HEAP8[$54>>0]|0; + $56 = ($55<<24>>24)!=(0); + if (!($56)) { + continue; + } + $57 = $p; + $58 = HEAP8[$57>>0]|0; + $59 = $58 << 24 >> 24; + $60 = ($59|0)==(35); + if ($60) { + continue; + } + $i = 0; + while(1) { + $61 = $i; + $62 = ($61>>>0)<(13); + if (!($62)) { + break; + } + $63 = $i; + $64 = (1124 + ($63<<3)|0); + $65 = ((($64)) + 4|0); + $66 = HEAP32[$65>>2]|0; + $67 = $p; + $68 = (_strcmp($66,$67)|0); + $69 = ($68|0)!=(0); + $70 = $i; + if (!($69)) { + label = 23; + break; + } + $75 = (($70) + 1)|0; + $i = $75; + } + if ((label|0) == 23) { + label = 0; + $71 = (1124 + ($70<<3)|0); + $72 = HEAP32[$71>>2]|0; + $73 = HEAP32[17679]|0; + $74 = $73 | $72; + HEAP32[17679] = $74; + } + } + $7 = $fp; + (_feof($7)|0); + $8 = $fp; + (_fclose($8)|0); + STACKTOP = sp;return; +} +function __gcry_private_enable_m_guard() { + var label = 0, sp = 0; + sp = STACKTOP; + HEAP32[17681] = 1; + return; +} +function __gcry_private_malloc($n) { + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $n; + $2 = $1; + $3 = ($2|0)!=(0); + if (!($3)) { + _gpg_err_set_errno(22); + $0 = 0; + $33 = $0; + STACKTOP = sp;return ($33|0); + } + $4 = HEAP32[17681]|0; + $5 = ($4|0)!=(0); + $6 = $1; + if (!($5)) { + $32 = (_malloc($6)|0); + $0 = $32; + $33 = $0; + STACKTOP = sp;return ($33|0); + } + $7 = (($6) + 0)|0; + $8 = (($7) + 5)|0; + $9 = (_malloc($8)|0); + $p = $9; + $10 = ($9|0)!=(0|0); + if ($10) { + $11 = $1; + $12 = $11&255; + $13 = $p; + HEAP8[$13>>0] = $12; + $14 = $1; + $15 = $14 >>> 8; + $16 = $15&255; + $17 = $p; + $18 = ((($17)) + 1|0); + HEAP8[$18>>0] = $16; + $19 = $1; + $20 = $19 >>> 16; + $21 = $20&255; + $22 = $p; + $23 = ((($22)) + 2|0); + HEAP8[$23>>0] = $21; + $24 = $p; + $25 = ((($24)) + 3|0); + HEAP8[$25>>0] = 85; + $26 = $1; + $27 = (4 + ($26))|0; + $28 = $p; + $29 = (($28) + ($27)|0); + HEAP8[$29>>0] = -86; + $30 = $p; + $31 = ((($30)) + 4|0); + $0 = $31; + $33 = $0; + STACKTOP = sp;return ($33|0); + } else { + $0 = 0; + $33 = $0; + STACKTOP = sp;return ($33|0); + } + return (0)|0; +} +function __gcry_private_malloc_secure($n) { + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $n; + $2 = $1; + $3 = ($2|0)!=(0); + if (!($3)) { + _gpg_err_set_errno(22); + $0 = 0; + $33 = $0; + STACKTOP = sp;return ($33|0); + } + $4 = HEAP32[17681]|0; + $5 = ($4|0)!=(0); + $6 = $1; + if (!($5)) { + $32 = (__gcry_secmem_malloc($6)|0); + $0 = $32; + $33 = $0; + STACKTOP = sp;return ($33|0); + } + $7 = (($6) + 0)|0; + $8 = (($7) + 5)|0; + $9 = (__gcry_secmem_malloc($8)|0); + $p = $9; + $10 = ($9|0)!=(0|0); + if ($10) { + $11 = $1; + $12 = $11&255; + $13 = $p; + HEAP8[$13>>0] = $12; + $14 = $1; + $15 = $14 >>> 8; + $16 = $15&255; + $17 = $p; + $18 = ((($17)) + 1|0); + HEAP8[$18>>0] = $16; + $19 = $1; + $20 = $19 >>> 16; + $21 = $20&255; + $22 = $p; + $23 = ((($22)) + 2|0); + HEAP8[$23>>0] = $21; + $24 = $p; + $25 = ((($24)) + 3|0); + HEAP8[$25>>0] = -52; + $26 = $1; + $27 = (4 + ($26))|0; + $28 = $p; + $29 = (($28) + ($27)|0); + HEAP8[$29>>0] = -86; + $30 = $p; + $31 = ((($30)) + 4|0); + $0 = $31; + $33 = $0; + STACKTOP = sp;return ($33|0); + } else { + $0 = 0; + $33 = $0; + STACKTOP = sp;return ($33|0); + } + return (0)|0; +} +function __gcry_private_realloc($a,$n) { + $a = $a|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; + var $9 = 0, $b = 0, $len = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $a; + $2 = $n; + $3 = HEAP32[17681]|0; + $4 = ($3|0)!=(0); + $5 = $1; + if (!($4)) { + $54 = (__gcry_private_is_secure($5)|0); + $55 = ($54|0)!=(0); + $56 = $1; + $57 = $2; + if ($55) { + $58 = (__gcry_secmem_realloc($56,$57)|0); + $0 = $58; + $60 = $0; + STACKTOP = sp;return ($60|0); + } else { + $59 = (_realloc($56,$57)|0); + $0 = $59; + $60 = $0; + STACKTOP = sp;return ($60|0); + } + } + $p = $5; + $6 = $1; + $7 = ($6|0)!=(0|0); + if (!($7)) { + $8 = $2; + $9 = (__gcry_private_malloc($8)|0); + $0 = $9; + $60 = $0; + STACKTOP = sp;return ($60|0); + } + $10 = $p; + __gcry_private_check_heap($10); + $11 = $p; + $12 = ((($11)) + -4|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $len = $14; + $15 = $p; + $16 = ((($15)) + -3|0); + $17 = HEAP8[$16>>0]|0; + $18 = $17&255; + $19 = $18 << 8; + $20 = $len; + $21 = $20 | $19; + $len = $21; + $22 = $p; + $23 = ((($22)) + -2|0); + $24 = HEAP8[$23>>0]|0; + $25 = $24&255; + $26 = $25 << 16; + $27 = $len; + $28 = $27 | $26; + $len = $28; + $29 = $len; + $30 = $2; + $31 = ($29>>>0)>=($30>>>0); + if ($31) { + $32 = $1; + $0 = $32; + $60 = $0; + STACKTOP = sp;return ($60|0); + } + $33 = $p; + $34 = ((($33)) + -1|0); + $35 = HEAP8[$34>>0]|0; + $36 = $35&255; + $37 = ($36|0)==(204); + $38 = $2; + if ($37) { + $39 = (__gcry_private_malloc_secure($38)|0); + $b = $39; + } else { + $40 = (__gcry_private_malloc($38)|0); + $b = $40; + } + $41 = $b; + $42 = ($41|0)!=(0|0); + if ($42) { + $43 = $b; + $44 = $1; + $45 = $len; + _memcpy(($43|0),($44|0),($45|0))|0; + $46 = $b; + $47 = $len; + $48 = (($46) + ($47)|0); + $49 = $2; + $50 = $len; + $51 = (($49) - ($50))|0; + _memset(($48|0),0,($51|0))|0; + $52 = $p; + __gcry_private_free($52); + $53 = $b; + $0 = $53; + $60 = $0; + STACKTOP = sp;return ($60|0); + } else { + $0 = 0; + $60 = $0; + STACKTOP = sp;return ($60|0); + } + return (0)|0; +} +function __gcry_private_check_heap($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $len = 0, $p = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $0 = $a; + $1 = HEAP32[17681]|0; + $2 = ($1|0)!=(0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = $0; + $p = $3; + $4 = $p; + $5 = ($4|0)!=(0|0); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = $p; + $7 = ((($6)) + -1|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = ($9|0)==(85); + if (!($10)) { + $11 = $p; + $12 = ((($11)) + -1|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = ($14|0)==(204); + if (!($15)) { + $16 = $p; + $17 = $p; + $18 = ((($17)) + -1|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + HEAP32[$vararg_buffer>>2] = $16; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $20; + __gcry_log_fatal(22973,$vararg_buffer); + // unreachable; + } + } + $21 = $p; + $22 = ((($21)) + -4|0); + $23 = HEAP8[$22>>0]|0; + $24 = $23&255; + $len = $24; + $25 = $p; + $26 = ((($25)) + -3|0); + $27 = HEAP8[$26>>0]|0; + $28 = $27&255; + $29 = $28 << 8; + $30 = $len; + $31 = $30 | $29; + $len = $31; + $32 = $p; + $33 = ((($32)) + -2|0); + $34 = HEAP8[$33>>0]|0; + $35 = $34&255; + $36 = $35 << 16; + $37 = $len; + $38 = $37 | $36; + $len = $38; + $39 = $len; + $40 = $p; + $41 = (($40) + ($39)|0); + $42 = HEAP8[$41>>0]|0; + $43 = $42&255; + $44 = ($43|0)!=(170); + if ($44) { + $45 = $p; + $46 = $p; + $47 = ((($46)) + -1|0); + $48 = HEAP8[$47>>0]|0; + $49 = $48&255; + HEAP32[$vararg_buffer2>>2] = $45; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = $49; + __gcry_log_fatal(23014,$vararg_buffer2); + // unreachable; + } else { + STACKTOP = sp;return; + } +} +function __gcry_private_free($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $0; + $p = $1; + $2 = $p; + $3 = ($2|0)!=(0|0); + do { + if ($3) { + $4 = HEAP32[17681]|0; + $5 = ($4|0)!=(0); + if ($5) { + $6 = $p; + __gcry_private_check_heap($6); + $7 = $0; + $8 = (__gcry_private_is_secure($7)|0); + $9 = ($8|0)!=(0); + $10 = $p; + $11 = ((($10)) + -4|0); + if ($9) { + __gcry_secmem_free($11); + break; + } else { + _free($11); + break; + } + } else { + $12 = $0; + $13 = (__gcry_private_is_secure($12)|0); + $14 = ($13|0)!=(0); + $15 = $p; + if ($14) { + __gcry_secmem_free($15); + break; + } else { + _free($15); + break; + } + } + } + } while(0); + STACKTOP = sp;return; +} +function __gcry_secmem_set_flags($flags) { + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $or$cond$not = 0, $or$cond3 = 0, $was_susp = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $flags; + (_gpgrt_lock_lock(1228)|0); + $1 = HEAP32[17682]|0; + $was_susp = $1; + $2 = $0; + $3 = $2 & 1; + HEAP32[17683] = $3; + $4 = $0; + $5 = $4 & 2; + HEAP32[17682] = $5; + $6 = $0; + $7 = $6 & 8; + HEAP32[17684] = $7; + $8 = $0; + $9 = $8 & 16; + HEAP32[17685] = $9; + $10 = $was_susp; + $11 = ($10|0)==(0); + $12 = HEAP32[17682]|0; + $13 = ($12|0)!=(0); + $or$cond = $11 | $13; + $or$cond$not = $or$cond ^ 1; + $14 = HEAP32[17686]|0; + $15 = ($14|0)!=(0); + $or$cond3 = $or$cond$not & $15; + if (!($or$cond3)) { + (_gpgrt_lock_unlock(1228)|0); + STACKTOP = sp;return; + } + HEAP32[17686] = 0; + _print_warn(); + (_gpgrt_lock_unlock(1228)|0); + STACKTOP = sp;return; +} +function _print_warn() { + var $0 = 0, $1 = 0, $2 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = HEAP32[17683]|0; + $1 = ($0|0)!=(0); + if ($1) { + STACKTOP = sp;return; + } + $2 = (__gcry_gettext(23054)|0); + __gcry_log_info($2,$vararg_buffer); + STACKTOP = sp;return; +} +function __gcry_secmem_get_flags() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $flags = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + (_gpgrt_lock_lock(1228)|0); + $0 = HEAP32[17683]|0; + $1 = ($0|0)!=(0); + $2 = $1 ? 1 : 0; + $flags = $2; + $3 = HEAP32[17682]|0; + $4 = ($3|0)!=(0); + $5 = $4 ? 2 : 0; + $6 = $flags; + $7 = $6 | $5; + $flags = $7; + $8 = HEAP32[17687]|0; + $9 = ($8|0)!=(0); + $10 = $9 ? 4 : 0; + $11 = $flags; + $12 = $11 | $10; + $flags = $12; + $13 = HEAP32[17684]|0; + $14 = ($13|0)!=(0); + $15 = $14 ? 8 : 0; + $16 = $flags; + $17 = $16 | $15; + $flags = $17; + $18 = HEAP32[17685]|0; + $19 = ($18|0)!=(0); + $20 = $19 ? 16 : 0; + $21 = $flags; + $22 = $21 | $20; + $flags = $22; + (_gpgrt_lock_unlock(1228)|0); + $23 = $flags; + STACKTOP = sp;return ($23|0); +} +function __gcry_secmem_init($n) { + $n = $n|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $n; + (_gpgrt_lock_lock(1228)|0); + $1 = $0; + _secmem_init($1); + (_gpgrt_lock_unlock(1228)|0); + STACKTOP = sp;return; +} +function _secmem_init($n) { + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $uid = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $0 = $n; + $1 = $0; + $2 = ($1|0)!=(0); + if ($2) { + $15 = $0; + $16 = ($15>>>0)<(16384); + if ($16) { + $0 = 16384; + } + $17 = HEAP32[17689]|0; + $18 = ($17|0)!=(0); + if ($18) { + __gcry_log_error(23286,$vararg_buffer1); + STACKTOP = sp;return; + } else { + $19 = $0; + _init_pool($19); + $20 = HEAP32[17691]|0; + $21 = $0; + _lock_pool($20,$21); + STACKTOP = sp;return; + } + } + HEAP32[17688] = 1; + $3 = (_getuid()|0); + $uid = $3; + $4 = $uid; + $5 = (_geteuid()|0); + $6 = ($4|0)!=($5|0); + if (!($6)) { + STACKTOP = sp;return; + } + $7 = $uid; + $8 = (_setuid($7)|0); + $9 = ($8|0)!=(0); + if ($9) { + __gcry_log_fatal(23087,$vararg_buffer); + // unreachable; + } + $10 = (_getuid()|0); + $11 = (_geteuid()|0); + $12 = ($10|0)!=($11|0); + if ($12) { + __gcry_log_fatal(23087,$vararg_buffer); + // unreachable; + } + $13 = (_setuid(0)|0); + $14 = ($13|0)!=(0); + if ($14) { + STACKTOP = sp;return; + } else { + __gcry_log_fatal(23087,$vararg_buffer); + // unreachable; + } +} +function _init_pool($n) { + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $mb = 0; + var $or$cond = 0, $pgsize = 0, $pgsize_val = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer5 = 0, $vararg_ptr4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer5 = sp + 16|0; + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $0 = $n; + $1 = $0; + HEAP32[17690] = $1; + $2 = HEAP32[17688]|0; + $3 = ($2|0)!=(0); + if ($3) { + __gcry_log_bug(23110,$vararg_buffer); + // unreachable; + } + $4 = (_sysconf(30)|0); + $pgsize_val = $4; + $5 = $pgsize_val; + $6 = ($5|0)!=(-1); + $7 = $pgsize_val; + $8 = ($7|0)>(0); + $or$cond = $6 & $8; + $9 = $pgsize_val; + $10 = $or$cond ? $9 : 4096; + $pgsize = $10; + $11 = HEAP32[17690]|0; + $12 = $pgsize; + $13 = (($11) + ($12))|0; + $14 = (($13) - 1)|0; + $15 = $pgsize; + $16 = (($15) - 1)|0; + $17 = $16 ^ -1; + $18 = $14 & $17; + HEAP32[17690] = $18; + $19 = HEAP32[17690]|0; + $20 = (___mmap(0,$19,3,34,-1,0)|0); + HEAP32[17691] = $20; + $21 = HEAP32[17691]|0; + $22 = ($21|0)==((-1)|0); + if ($22) { + $23 = HEAP32[17690]|0; + $24 = (___errno_location()|0); + $25 = HEAP32[$24>>2]|0; + $26 = (_strerror($25)|0); + HEAP32[$vararg_buffer2>>2] = $23; + $vararg_ptr4 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr4>>2] = $26; + __gcry_log_info(23136,$vararg_buffer2); + } else { + HEAP32[17692] = 1; + HEAP32[17689] = 1; + } + $27 = HEAP32[17689]|0; + $28 = ($27|0)!=(0); + if ($28) { + $34 = HEAP32[17691]|0; + $mb = $34; + $35 = HEAP32[17690]|0; + $36 = $mb; + HEAP32[$36>>2] = $35; + $37 = $mb; + $38 = ((($37)) + 4|0); + HEAP32[$38>>2] = 0; + STACKTOP = sp;return; + } + $29 = HEAP32[17690]|0; + $30 = (_malloc($29)|0); + HEAP32[17691] = $30; + $31 = HEAP32[17691]|0; + $32 = ($31|0)!=(0|0); + if (!($32)) { + $33 = HEAP32[17690]|0; + HEAP32[$vararg_buffer5>>2] = $33; + __gcry_log_fatal(23184,$vararg_buffer5); + // unreachable; + } + HEAP32[17689] = 1; + $34 = HEAP32[17691]|0; + $mb = $34; + $35 = HEAP32[17690]|0; + $36 = $mb; + HEAP32[$36>>2] = $35; + $37 = $mb; + $38 = ((($37)) + 4|0); + HEAP32[$38>>2] = 0; + STACKTOP = sp;return; +} +function _lock_pool($p,$n) { + $p = $p|0; + $n = $n|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $p; + $1 = $n; + $2 = HEAP32[17684]|0; + $3 = ($2|0)!=(0); + if ($3) { + STACKTOP = sp;return; + } + __gcry_log_info(23224,$vararg_buffer); + STACKTOP = sp;return; +} +function __gcry_secmem_module_init() { + var label = 0, sp = 0; + sp = STACKTOP; + return 0; +} +function __gcry_secmem_malloc($size) { + $size = $size|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $size; + (_gpgrt_lock_lock(1228)|0); + $1 = $0; + $2 = (__gcry_secmem_malloc_internal($1)|0); + $p = $2; + (_gpgrt_lock_unlock(1228)|0); + $3 = $p; + STACKTOP = sp;return ($3|0); +} +function __gcry_secmem_malloc_internal($size) { + $size = $size|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $mb = 0, $or$cond = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $1 = $size; + $2 = HEAP32[17689]|0; + $3 = ($2|0)!=(0); + if (!($3)) { + _secmem_init(32768); + $4 = HEAP32[17689]|0; + $5 = ($4|0)!=(0); + if (!($5)) { + $6 = (__gcry_gettext(23332)|0); + __gcry_log_info($6,$vararg_buffer); + _gpg_err_set_errno(12); + $0 = 0; + $31 = $0; + STACKTOP = sp;return ($31|0); + } + } + $7 = HEAP32[17687]|0; + $8 = ($7|0)!=(0); + if ($8) { + $9 = (__gcry_fips_mode()|0); + $10 = ($9|0)!=(0); + if ($10) { + $11 = (__gcry_gettext(23393)|0); + __gcry_log_info($11,$vararg_buffer2); + _gpg_err_set_errno(12); + $0 = 0; + $31 = $0; + STACKTOP = sp;return ($31|0); + } + } + $12 = HEAP32[17686]|0; + $13 = ($12|0)==(0); + $14 = HEAP32[17682]|0; + $15 = ($14|0)!=(0); + $or$cond = $13 | $15; + if (!($or$cond)) { + HEAP32[17686] = 0; + _print_warn(); + } + $16 = $1; + $17 = (($16) + 31)|0; + $18 = (($17>>>0) / 32)&-1; + $19 = $18<<5; + $1 = $19; + $20 = HEAP32[17691]|0; + $21 = $1; + $22 = (_mb_get_new($20,$21)|0); + $mb = $22; + $23 = $mb; + $24 = ($23|0)!=(0|0); + if ($24) { + $25 = $1; + _stats_update($25,0); + } + $26 = $mb; + $27 = ($26|0)!=(0|0); + $28 = $mb; + $29 = ((($28)) + 8|0); + $30 = $27 ? $29 : 0; + $0 = $30; + $31 = $0; + STACKTOP = sp;return ($31|0); +} +function _mb_get_new($block,$size) { + $block = $block|0; + $size = $size|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $mb = 0, $mb_split = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $block; + $1 = $size; + $2 = $0; + $mb = $2; + while(1) { + $3 = $mb; + $4 = (_ptr_into_pool_p($3)|0); + $5 = ($4|0)!=(0); + if (!($5)) { + break; + } + $6 = $mb; + $7 = ((($6)) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = $8 & 1; + $10 = ($9|0)!=(0); + if (!($10)) { + $11 = $mb; + $12 = HEAP32[$11>>2]|0; + $13 = $1; + $14 = ($12>>>0)>=($13>>>0); + if ($14) { + label = 5; + break; + } + } + $39 = $mb; + $40 = (_mb_get_next($39)|0); + $mb = $40; + } + if ((label|0) == 5) { + $15 = $mb; + $16 = ((($15)) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = $17 | 1; + HEAP32[$16>>2] = $18; + $19 = $mb; + $20 = HEAP32[$19>>2]|0; + $21 = $1; + $22 = (($20) - ($21))|0; + $23 = ($22>>>0)>(8); + if ($23) { + $24 = $mb; + $25 = ((($24)) + 8|0); + $26 = $1; + $27 = (($25) + ($26)|0); + $mb_split = $27; + $28 = $mb; + $29 = HEAP32[$28>>2]|0; + $30 = $1; + $31 = (($29) - ($30))|0; + $32 = (($31) - 8)|0; + $33 = $mb_split; + HEAP32[$33>>2] = $32; + $34 = $mb_split; + $35 = ((($34)) + 4|0); + HEAP32[$35>>2] = 0; + $36 = $1; + $37 = $mb; + HEAP32[$37>>2] = $36; + $38 = $mb_split; + _mb_merge($38); + } + } + $41 = $mb; + $42 = (_ptr_into_pool_p($41)|0); + $43 = ($42|0)!=(0); + if ($43) { + $44 = $mb; + STACKTOP = sp;return ($44|0); + } + _gpg_err_set_errno(12); + $mb = 0; + $44 = $mb; + STACKTOP = sp;return ($44|0); +} +function _ptr_into_pool_p($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p_addr = 0, $pool_addr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $p; + $1 = $0; + $2 = $1; + $p_addr = $2; + $3 = HEAP32[17691]|0; + $4 = $3; + $pool_addr = $4; + $5 = $p_addr; + $6 = $pool_addr; + $7 = ($5>>>0)>=($6>>>0); + if (!($7)) { + $14 = 0; + $13 = $14&1; + STACKTOP = sp;return ($13|0); + } + $8 = $p_addr; + $9 = $pool_addr; + $10 = HEAP32[17690]|0; + $11 = (($9) + ($10))|0; + $12 = ($8>>>0)<($11>>>0); + $14 = $12; + $13 = $14&1; + STACKTOP = sp;return ($13|0); +} +function _mb_merge($mb) { + $mb = $mb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $mb_next = 0, $mb_prev = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $mb; + $1 = $0; + $2 = (_mb_get_prev($1)|0); + $mb_prev = $2; + $3 = $0; + $4 = (_mb_get_next($3)|0); + $mb_next = $4; + $5 = $mb_prev; + $6 = ($5|0)!=(0|0); + if ($6) { + $7 = $mb_prev; + $8 = ((($7)) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = $9 & 1; + $11 = ($10|0)!=(0); + if (!($11)) { + $12 = $0; + $13 = HEAP32[$12>>2]|0; + $14 = (8 + ($13))|0; + $15 = $mb_prev; + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + ($14))|0; + HEAP32[$15>>2] = $17; + $18 = $mb_prev; + $0 = $18; + } + } + $19 = $mb_next; + $20 = ($19|0)!=(0|0); + if (!($20)) { + STACKTOP = sp;return; + } + $21 = $mb_next; + $22 = ((($21)) + 4|0); + $23 = HEAP32[$22>>2]|0; + $24 = $23 & 1; + $25 = ($24|0)!=(0); + if ($25) { + STACKTOP = sp;return; + } + $26 = $mb_next; + $27 = HEAP32[$26>>2]|0; + $28 = (8 + ($27))|0; + $29 = $0; + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + ($28))|0; + HEAP32[$29>>2] = $31; + STACKTOP = sp;return; +} +function _mb_get_prev($mb) { + $mb = $mb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $mb_next = 0, $mb_prev = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $mb; + $1 = $0; + $2 = HEAP32[17691]|0; + $3 = ($1|0)==($2|0); + if ($3) { + $mb_prev = 0; + $11 = $mb_prev; + STACKTOP = sp;return ($11|0); + } + $4 = HEAP32[17691]|0; + $mb_prev = $4; + while(1) { + $5 = $mb_prev; + $6 = (_mb_get_next($5)|0); + $mb_next = $6; + $7 = $mb_next; + $8 = $0; + $9 = ($7|0)==($8|0); + if ($9) { + break; + } + $10 = $mb_next; + $mb_prev = $10; + } + $11 = $mb_prev; + STACKTOP = sp;return ($11|0); +} +function _mb_get_next($mb) { + $mb = $mb|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $mb_next = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $mb; + $1 = $0; + $2 = ((($1)) + 8|0); + $3 = $0; + $4 = HEAP32[$3>>2]|0; + $5 = (($2) + ($4)|0); + $mb_next = $5; + $6 = $mb_next; + $7 = (_ptr_into_pool_p($6)|0); + $8 = ($7|0)!=(0); + if ($8) { + $9 = $mb_next; + STACKTOP = sp;return ($9|0); + } + $mb_next = 0; + $9 = $mb_next; + STACKTOP = sp;return ($9|0); +} +function _stats_update($add,$sub) { + $add = $add|0; + $sub = $sub|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $add; + $1 = $sub; + $2 = $0; + $3 = ($2|0)!=(0); + if ($3) { + $4 = $0; + $5 = HEAP32[17693]|0; + $6 = (($5) + ($4))|0; + HEAP32[17693] = $6; + $7 = HEAP32[17694]|0; + $8 = (($7) + 1)|0; + HEAP32[17694] = $8; + } + $9 = $1; + $10 = ($9|0)!=(0); + if (!($10)) { + STACKTOP = sp;return; + } + $11 = $1; + $12 = HEAP32[17693]|0; + $13 = (($12) - ($11))|0; + HEAP32[17693] = $13; + $14 = HEAP32[17694]|0; + $15 = (($14) + -1)|0; + HEAP32[17694] = $15; + STACKTOP = sp;return; +} +function __gcry_secmem_free($a) { + $a = $a|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + (_gpgrt_lock_lock(1228)|0); + $1 = $0; + __gcry_secmem_free_internal($1); + (_gpgrt_lock_unlock(1228)|0); + STACKTOP = sp;return; +} +function __gcry_secmem_free_internal($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $_vlen = 0, $_vlen12 = 0, $_vlen2 = 0, $_vlen7 = 0, $_vptr = 0, $_vptr1 = 0, $_vptr11 = 0, $_vptr6 = 0, $_vptr_long = 0, $_vptr_long10 = 0, $_vptr_long15 = 0, $_vptr_long5 = 0, $_vset = 0, $_vset13 = 0, $_vset3 = 0, $_vset8 = 0, $_vset_long = 0, $_vset_long14 = 0, $_vset_long4 = 0; + var $_vset_long9 = 0, $mb = 0, $size = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $_vset_long = sp + 24|0; + $_vset_long4 = sp + 16|0; + $_vset_long9 = sp + 8|0; + $_vset_long14 = sp; + $0 = $a; + $1 = $0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = $0; + $4 = ((($3)) + -8|0); + $mb = $4; + $5 = $mb; + $6 = HEAP32[$5>>2]|0; + $size = $6; + $7 = $mb; + $8 = ((($7)) + 8|0); + $_vptr = $8; + $9 = $size; + $_vlen = $9; + $_vset = -1; + $10 = $_vset; + $11 = $10&255; + $12 = $_vset_long; + $13 = $12; + HEAP32[$13>>2] = $11; + $14 = (($12) + 4)|0; + $15 = $14; + HEAP32[$15>>2] = 0; + while(1) { + $16 = $_vptr; + $17 = $16; + $18 = $17 & 7; + $19 = ($18|0)!=(0); + $20 = $_vlen; + $21 = ($20|0)!=(0); + $22 = $19 ? $21 : 0; + if (!($22)) { + break; + } + $23 = $_vset; + $24 = $_vptr; + HEAP8[$24>>0] = $23; + $25 = $_vptr; + $26 = ((($25)) + 1|0); + $_vptr = $26; + $27 = $_vlen; + $28 = (($27) + -1)|0; + $_vlen = $28; + } + $29 = $_vlen; + $30 = ($29>>>0)<(8); + if (!($30)) { + $31 = $_vset_long; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = (($31) + 4)|0; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (___muldi3(($33|0),($36|0),16843009,16843009)|0); + $38 = tempRet0; + $39 = $_vset_long; + $40 = $39; + HEAP32[$40>>2] = $37; + $41 = (($39) + 4)|0; + $42 = $41; + HEAP32[$42>>2] = $38; + while(1) { + $43 = $_vptr; + $_vptr_long = $43; + $44 = $_vset_long; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = (($44) + 4)|0; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + $50 = $_vptr_long; + $51 = $50; + $52 = $51; + HEAP32[$52>>2] = $46; + $53 = (($51) + 4)|0; + $54 = $53; + HEAP32[$54>>2] = $49; + $55 = $_vlen; + $56 = (($55) - 8)|0; + $_vlen = $56; + $57 = $_vptr; + $58 = ((($57)) + 8|0); + $_vptr = $58; + $59 = $_vlen; + $60 = ($59>>>0)>=(8); + if (!($60)) { + break; + } + } + } + while(1) { + $61 = $_vlen; + $62 = ($61|0)!=(0); + if (!($62)) { + break; + } + $63 = $_vset; + $64 = $_vptr; + HEAP8[$64>>0] = $63; + $65 = $_vptr; + $66 = ((($65)) + 1|0); + $_vptr = $66; + $67 = $_vlen; + $68 = (($67) + -1)|0; + $_vlen = $68; + } + $69 = $mb; + $70 = ((($69)) + 8|0); + $_vptr1 = $70; + $71 = $size; + $_vlen2 = $71; + $_vset3 = -86; + $72 = $_vset3; + $73 = $72&255; + $74 = $_vset_long4; + $75 = $74; + HEAP32[$75>>2] = $73; + $76 = (($74) + 4)|0; + $77 = $76; + HEAP32[$77>>2] = 0; + while(1) { + $78 = $_vptr1; + $79 = $78; + $80 = $79 & 7; + $81 = ($80|0)!=(0); + $82 = $_vlen2; + $83 = ($82|0)!=(0); + $84 = $81 ? $83 : 0; + if (!($84)) { + break; + } + $85 = $_vset3; + $86 = $_vptr1; + HEAP8[$86>>0] = $85; + $87 = $_vptr1; + $88 = ((($87)) + 1|0); + $_vptr1 = $88; + $89 = $_vlen2; + $90 = (($89) + -1)|0; + $_vlen2 = $90; + } + $91 = $_vlen2; + $92 = ($91>>>0)<(8); + if (!($92)) { + $93 = $_vset_long4; + $94 = $93; + $95 = HEAP32[$94>>2]|0; + $96 = (($93) + 4)|0; + $97 = $96; + $98 = HEAP32[$97>>2]|0; + $99 = (___muldi3(($95|0),($98|0),16843009,16843009)|0); + $100 = tempRet0; + $101 = $_vset_long4; + $102 = $101; + HEAP32[$102>>2] = $99; + $103 = (($101) + 4)|0; + $104 = $103; + HEAP32[$104>>2] = $100; + while(1) { + $105 = $_vptr1; + $_vptr_long5 = $105; + $106 = $_vset_long4; + $107 = $106; + $108 = HEAP32[$107>>2]|0; + $109 = (($106) + 4)|0; + $110 = $109; + $111 = HEAP32[$110>>2]|0; + $112 = $_vptr_long5; + $113 = $112; + $114 = $113; + HEAP32[$114>>2] = $108; + $115 = (($113) + 4)|0; + $116 = $115; + HEAP32[$116>>2] = $111; + $117 = $_vlen2; + $118 = (($117) - 8)|0; + $_vlen2 = $118; + $119 = $_vptr1; + $120 = ((($119)) + 8|0); + $_vptr1 = $120; + $121 = $_vlen2; + $122 = ($121>>>0)>=(8); + if (!($122)) { + break; + } + } + } + while(1) { + $123 = $_vlen2; + $124 = ($123|0)!=(0); + if (!($124)) { + break; + } + $125 = $_vset3; + $126 = $_vptr1; + HEAP8[$126>>0] = $125; + $127 = $_vptr1; + $128 = ((($127)) + 1|0); + $_vptr1 = $128; + $129 = $_vlen2; + $130 = (($129) + -1)|0; + $_vlen2 = $130; + } + $131 = $mb; + $132 = ((($131)) + 8|0); + $_vptr6 = $132; + $133 = $size; + $_vlen7 = $133; + $_vset8 = 85; + $134 = $_vset8; + $135 = $134&255; + $136 = $_vset_long9; + $137 = $136; + HEAP32[$137>>2] = $135; + $138 = (($136) + 4)|0; + $139 = $138; + HEAP32[$139>>2] = 0; + while(1) { + $140 = $_vptr6; + $141 = $140; + $142 = $141 & 7; + $143 = ($142|0)!=(0); + $144 = $_vlen7; + $145 = ($144|0)!=(0); + $146 = $143 ? $145 : 0; + if (!($146)) { + break; + } + $147 = $_vset8; + $148 = $_vptr6; + HEAP8[$148>>0] = $147; + $149 = $_vptr6; + $150 = ((($149)) + 1|0); + $_vptr6 = $150; + $151 = $_vlen7; + $152 = (($151) + -1)|0; + $_vlen7 = $152; + } + $153 = $_vlen7; + $154 = ($153>>>0)<(8); + if (!($154)) { + $155 = $_vset_long9; + $156 = $155; + $157 = HEAP32[$156>>2]|0; + $158 = (($155) + 4)|0; + $159 = $158; + $160 = HEAP32[$159>>2]|0; + $161 = (___muldi3(($157|0),($160|0),16843009,16843009)|0); + $162 = tempRet0; + $163 = $_vset_long9; + $164 = $163; + HEAP32[$164>>2] = $161; + $165 = (($163) + 4)|0; + $166 = $165; + HEAP32[$166>>2] = $162; + while(1) { + $167 = $_vptr6; + $_vptr_long10 = $167; + $168 = $_vset_long9; + $169 = $168; + $170 = HEAP32[$169>>2]|0; + $171 = (($168) + 4)|0; + $172 = $171; + $173 = HEAP32[$172>>2]|0; + $174 = $_vptr_long10; + $175 = $174; + $176 = $175; + HEAP32[$176>>2] = $170; + $177 = (($175) + 4)|0; + $178 = $177; + HEAP32[$178>>2] = $173; + $179 = $_vlen7; + $180 = (($179) - 8)|0; + $_vlen7 = $180; + $181 = $_vptr6; + $182 = ((($181)) + 8|0); + $_vptr6 = $182; + $183 = $_vlen7; + $184 = ($183>>>0)>=(8); + if (!($184)) { + break; + } + } + } + while(1) { + $185 = $_vlen7; + $186 = ($185|0)!=(0); + if (!($186)) { + break; + } + $187 = $_vset8; + $188 = $_vptr6; + HEAP8[$188>>0] = $187; + $189 = $_vptr6; + $190 = ((($189)) + 1|0); + $_vptr6 = $190; + $191 = $_vlen7; + $192 = (($191) + -1)|0; + $_vlen7 = $192; + } + $193 = $mb; + $194 = ((($193)) + 8|0); + $_vptr11 = $194; + $195 = $size; + $_vlen12 = $195; + $_vset13 = 0; + $196 = $_vset13; + $197 = $196&255; + $198 = $_vset_long14; + $199 = $198; + HEAP32[$199>>2] = $197; + $200 = (($198) + 4)|0; + $201 = $200; + HEAP32[$201>>2] = 0; + while(1) { + $202 = $_vptr11; + $203 = $202; + $204 = $203 & 7; + $205 = ($204|0)!=(0); + $206 = $_vlen12; + $207 = ($206|0)!=(0); + $208 = $205 ? $207 : 0; + if (!($208)) { + break; + } + $209 = $_vset13; + $210 = $_vptr11; + HEAP8[$210>>0] = $209; + $211 = $_vptr11; + $212 = ((($211)) + 1|0); + $_vptr11 = $212; + $213 = $_vlen12; + $214 = (($213) + -1)|0; + $_vlen12 = $214; + } + $215 = $_vlen12; + $216 = ($215>>>0)<(8); + if (!($216)) { + $217 = $_vset_long14; + $218 = $217; + $219 = HEAP32[$218>>2]|0; + $220 = (($217) + 4)|0; + $221 = $220; + $222 = HEAP32[$221>>2]|0; + $223 = (___muldi3(($219|0),($222|0),16843009,16843009)|0); + $224 = tempRet0; + $225 = $_vset_long14; + $226 = $225; + HEAP32[$226>>2] = $223; + $227 = (($225) + 4)|0; + $228 = $227; + HEAP32[$228>>2] = $224; + while(1) { + $229 = $_vptr11; + $_vptr_long15 = $229; + $230 = $_vset_long14; + $231 = $230; + $232 = HEAP32[$231>>2]|0; + $233 = (($230) + 4)|0; + $234 = $233; + $235 = HEAP32[$234>>2]|0; + $236 = $_vptr_long15; + $237 = $236; + $238 = $237; + HEAP32[$238>>2] = $232; + $239 = (($237) + 4)|0; + $240 = $239; + HEAP32[$240>>2] = $235; + $241 = $_vlen12; + $242 = (($241) - 8)|0; + $_vlen12 = $242; + $243 = $_vptr11; + $244 = ((($243)) + 8|0); + $_vptr11 = $244; + $245 = $_vlen12; + $246 = ($245>>>0)>=(8); + if (!($246)) { + break; + } + } + } + while(1) { + $247 = $_vlen12; + $248 = ($247|0)!=(0); + if (!($248)) { + break; + } + $249 = $_vset13; + $250 = $_vptr11; + HEAP8[$250>>0] = $249; + $251 = $_vptr11; + $252 = ((($251)) + 1|0); + $_vptr11 = $252; + $253 = $_vlen12; + $254 = (($253) + -1)|0; + $_vlen12 = $254; + } + $255 = $size; + _stats_update(0,$255); + $256 = $mb; + $257 = ((($256)) + 4|0); + $258 = HEAP32[$257>>2]|0; + $259 = $258 & -2; + HEAP32[$257>>2] = $259; + $260 = $mb; + _mb_merge($260); + STACKTOP = sp;return; +} +function __gcry_secmem_realloc($p,$newsize) { + $p = $p|0; + $newsize = $newsize|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $mb = 0, $size = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $p; + $1 = $newsize; + (_gpgrt_lock_lock(1228)|0); + $2 = $0; + $3 = (($2) + (((0 - ((((0) + 8|0))))|0))|0); + $mb = $3; + $4 = $mb; + $5 = HEAP32[$4>>2]|0; + $size = $5; + $6 = $1; + $7 = $size; + $8 = ($6>>>0)<($7>>>0); + if ($8) { + $9 = $0; + $a = $9; + } else { + $10 = $1; + $11 = (__gcry_secmem_malloc_internal($10)|0); + $a = $11; + $12 = $a; + $13 = ($12|0)!=(0|0); + if ($13) { + $14 = $a; + $15 = $0; + $16 = $size; + _memcpy(($14|0),($15|0),($16|0))|0; + $17 = $a; + $18 = $size; + $19 = (($17) + ($18)|0); + $20 = $1; + $21 = $size; + $22 = (($20) - ($21))|0; + _memset(($19|0),0,($22|0))|0; + $23 = $0; + __gcry_secmem_free_internal($23); + } + } + (_gpgrt_lock_unlock(1228)|0); + $24 = $a; + STACKTOP = sp;return ($24|0); +} +function __gcry_private_is_secure($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $p; + $1 = HEAP32[17689]|0; + $2 = ($1|0)!=(0); + if ($2) { + $3 = $0; + $4 = (_ptr_into_pool_p($3)|0); + $5 = ($4|0)!=(0); + $7 = $5; + } else { + $7 = 0; + } + $6 = $7&1; + STACKTOP = sp;return ($6|0); +} +function __gcry_secmem_term() { + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $_vlen = 0, $_vlen12 = 0, $_vlen2 = 0, $_vlen7 = 0, $_vptr = 0, $_vptr1 = 0, $_vptr11 = 0, $_vptr6 = 0, $_vptr_long = 0, $_vptr_long10 = 0; + var $_vptr_long15 = 0, $_vptr_long5 = 0, $_vset = 0, $_vset13 = 0, $_vset3 = 0, $_vset8 = 0, $_vset_long = 0, $_vset_long14 = 0, $_vset_long4 = 0, $_vset_long9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $_vset_long = sp + 24|0; + $_vset_long4 = sp + 16|0; + $_vset_long9 = sp + 8|0; + $_vset_long14 = sp; + $0 = HEAP32[17689]|0; + $1 = ($0|0)!=(0); + if (!($1)) { + STACKTOP = sp;return; + } + $2 = HEAP32[17691]|0; + $_vptr = $2; + $3 = HEAP32[17690]|0; + $_vlen = $3; + $_vset = -1; + $4 = $_vset; + $5 = $4&255; + $6 = $_vset_long; + $7 = $6; + HEAP32[$7>>2] = $5; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = 0; + while(1) { + $10 = $_vptr; + $11 = $10; + $12 = $11 & 7; + $13 = ($12|0)!=(0); + $14 = $_vlen; + $15 = ($14|0)!=(0); + $16 = $13 ? $15 : 0; + if (!($16)) { + break; + } + $17 = $_vset; + $18 = $_vptr; + HEAP8[$18>>0] = $17; + $19 = $_vptr; + $20 = ((($19)) + 1|0); + $_vptr = $20; + $21 = $_vlen; + $22 = (($21) + -1)|0; + $_vlen = $22; + } + $23 = $_vlen; + $24 = ($23>>>0)<(8); + if (!($24)) { + $25 = $_vset_long; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = (___muldi3(($27|0),($30|0),16843009,16843009)|0); + $32 = tempRet0; + $33 = $_vset_long; + $34 = $33; + HEAP32[$34>>2] = $31; + $35 = (($33) + 4)|0; + $36 = $35; + HEAP32[$36>>2] = $32; + while(1) { + $37 = $_vptr; + $_vptr_long = $37; + $38 = $_vset_long; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = (($38) + 4)|0; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $44 = $_vptr_long; + $45 = $44; + $46 = $45; + HEAP32[$46>>2] = $40; + $47 = (($45) + 4)|0; + $48 = $47; + HEAP32[$48>>2] = $43; + $49 = $_vlen; + $50 = (($49) - 8)|0; + $_vlen = $50; + $51 = $_vptr; + $52 = ((($51)) + 8|0); + $_vptr = $52; + $53 = $_vlen; + $54 = ($53>>>0)>=(8); + if (!($54)) { + break; + } + } + } + while(1) { + $55 = $_vlen; + $56 = ($55|0)!=(0); + if (!($56)) { + break; + } + $57 = $_vset; + $58 = $_vptr; + HEAP8[$58>>0] = $57; + $59 = $_vptr; + $60 = ((($59)) + 1|0); + $_vptr = $60; + $61 = $_vlen; + $62 = (($61) + -1)|0; + $_vlen = $62; + } + $63 = HEAP32[17691]|0; + $_vptr1 = $63; + $64 = HEAP32[17690]|0; + $_vlen2 = $64; + $_vset3 = -86; + $65 = $_vset3; + $66 = $65&255; + $67 = $_vset_long4; + $68 = $67; + HEAP32[$68>>2] = $66; + $69 = (($67) + 4)|0; + $70 = $69; + HEAP32[$70>>2] = 0; + while(1) { + $71 = $_vptr1; + $72 = $71; + $73 = $72 & 7; + $74 = ($73|0)!=(0); + $75 = $_vlen2; + $76 = ($75|0)!=(0); + $77 = $74 ? $76 : 0; + if (!($77)) { + break; + } + $78 = $_vset3; + $79 = $_vptr1; + HEAP8[$79>>0] = $78; + $80 = $_vptr1; + $81 = ((($80)) + 1|0); + $_vptr1 = $81; + $82 = $_vlen2; + $83 = (($82) + -1)|0; + $_vlen2 = $83; + } + $84 = $_vlen2; + $85 = ($84>>>0)<(8); + if (!($85)) { + $86 = $_vset_long4; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + $89 = (($86) + 4)|0; + $90 = $89; + $91 = HEAP32[$90>>2]|0; + $92 = (___muldi3(($88|0),($91|0),16843009,16843009)|0); + $93 = tempRet0; + $94 = $_vset_long4; + $95 = $94; + HEAP32[$95>>2] = $92; + $96 = (($94) + 4)|0; + $97 = $96; + HEAP32[$97>>2] = $93; + while(1) { + $98 = $_vptr1; + $_vptr_long5 = $98; + $99 = $_vset_long4; + $100 = $99; + $101 = HEAP32[$100>>2]|0; + $102 = (($99) + 4)|0; + $103 = $102; + $104 = HEAP32[$103>>2]|0; + $105 = $_vptr_long5; + $106 = $105; + $107 = $106; + HEAP32[$107>>2] = $101; + $108 = (($106) + 4)|0; + $109 = $108; + HEAP32[$109>>2] = $104; + $110 = $_vlen2; + $111 = (($110) - 8)|0; + $_vlen2 = $111; + $112 = $_vptr1; + $113 = ((($112)) + 8|0); + $_vptr1 = $113; + $114 = $_vlen2; + $115 = ($114>>>0)>=(8); + if (!($115)) { + break; + } + } + } + while(1) { + $116 = $_vlen2; + $117 = ($116|0)!=(0); + if (!($117)) { + break; + } + $118 = $_vset3; + $119 = $_vptr1; + HEAP8[$119>>0] = $118; + $120 = $_vptr1; + $121 = ((($120)) + 1|0); + $_vptr1 = $121; + $122 = $_vlen2; + $123 = (($122) + -1)|0; + $_vlen2 = $123; + } + $124 = HEAP32[17691]|0; + $_vptr6 = $124; + $125 = HEAP32[17690]|0; + $_vlen7 = $125; + $_vset8 = 85; + $126 = $_vset8; + $127 = $126&255; + $128 = $_vset_long9; + $129 = $128; + HEAP32[$129>>2] = $127; + $130 = (($128) + 4)|0; + $131 = $130; + HEAP32[$131>>2] = 0; + while(1) { + $132 = $_vptr6; + $133 = $132; + $134 = $133 & 7; + $135 = ($134|0)!=(0); + $136 = $_vlen7; + $137 = ($136|0)!=(0); + $138 = $135 ? $137 : 0; + if (!($138)) { + break; + } + $139 = $_vset8; + $140 = $_vptr6; + HEAP8[$140>>0] = $139; + $141 = $_vptr6; + $142 = ((($141)) + 1|0); + $_vptr6 = $142; + $143 = $_vlen7; + $144 = (($143) + -1)|0; + $_vlen7 = $144; + } + $145 = $_vlen7; + $146 = ($145>>>0)<(8); + if (!($146)) { + $147 = $_vset_long9; + $148 = $147; + $149 = HEAP32[$148>>2]|0; + $150 = (($147) + 4)|0; + $151 = $150; + $152 = HEAP32[$151>>2]|0; + $153 = (___muldi3(($149|0),($152|0),16843009,16843009)|0); + $154 = tempRet0; + $155 = $_vset_long9; + $156 = $155; + HEAP32[$156>>2] = $153; + $157 = (($155) + 4)|0; + $158 = $157; + HEAP32[$158>>2] = $154; + while(1) { + $159 = $_vptr6; + $_vptr_long10 = $159; + $160 = $_vset_long9; + $161 = $160; + $162 = HEAP32[$161>>2]|0; + $163 = (($160) + 4)|0; + $164 = $163; + $165 = HEAP32[$164>>2]|0; + $166 = $_vptr_long10; + $167 = $166; + $168 = $167; + HEAP32[$168>>2] = $162; + $169 = (($167) + 4)|0; + $170 = $169; + HEAP32[$170>>2] = $165; + $171 = $_vlen7; + $172 = (($171) - 8)|0; + $_vlen7 = $172; + $173 = $_vptr6; + $174 = ((($173)) + 8|0); + $_vptr6 = $174; + $175 = $_vlen7; + $176 = ($175>>>0)>=(8); + if (!($176)) { + break; + } + } + } + while(1) { + $177 = $_vlen7; + $178 = ($177|0)!=(0); + if (!($178)) { + break; + } + $179 = $_vset8; + $180 = $_vptr6; + HEAP8[$180>>0] = $179; + $181 = $_vptr6; + $182 = ((($181)) + 1|0); + $_vptr6 = $182; + $183 = $_vlen7; + $184 = (($183) + -1)|0; + $_vlen7 = $184; + } + $185 = HEAP32[17691]|0; + $_vptr11 = $185; + $186 = HEAP32[17690]|0; + $_vlen12 = $186; + $_vset13 = 0; + $187 = $_vset13; + $188 = $187&255; + $189 = $_vset_long14; + $190 = $189; + HEAP32[$190>>2] = $188; + $191 = (($189) + 4)|0; + $192 = $191; + HEAP32[$192>>2] = 0; + while(1) { + $193 = $_vptr11; + $194 = $193; + $195 = $194 & 7; + $196 = ($195|0)!=(0); + $197 = $_vlen12; + $198 = ($197|0)!=(0); + $199 = $196 ? $198 : 0; + if (!($199)) { + break; + } + $200 = $_vset13; + $201 = $_vptr11; + HEAP8[$201>>0] = $200; + $202 = $_vptr11; + $203 = ((($202)) + 1|0); + $_vptr11 = $203; + $204 = $_vlen12; + $205 = (($204) + -1)|0; + $_vlen12 = $205; + } + $206 = $_vlen12; + $207 = ($206>>>0)<(8); + if (!($207)) { + $208 = $_vset_long14; + $209 = $208; + $210 = HEAP32[$209>>2]|0; + $211 = (($208) + 4)|0; + $212 = $211; + $213 = HEAP32[$212>>2]|0; + $214 = (___muldi3(($210|0),($213|0),16843009,16843009)|0); + $215 = tempRet0; + $216 = $_vset_long14; + $217 = $216; + HEAP32[$217>>2] = $214; + $218 = (($216) + 4)|0; + $219 = $218; + HEAP32[$219>>2] = $215; + while(1) { + $220 = $_vptr11; + $_vptr_long15 = $220; + $221 = $_vset_long14; + $222 = $221; + $223 = HEAP32[$222>>2]|0; + $224 = (($221) + 4)|0; + $225 = $224; + $226 = HEAP32[$225>>2]|0; + $227 = $_vptr_long15; + $228 = $227; + $229 = $228; + HEAP32[$229>>2] = $223; + $230 = (($228) + 4)|0; + $231 = $230; + HEAP32[$231>>2] = $226; + $232 = $_vlen12; + $233 = (($232) - 8)|0; + $_vlen12 = $233; + $234 = $_vptr11; + $235 = ((($234)) + 8|0); + $_vptr11 = $235; + $236 = $_vlen12; + $237 = ($236>>>0)>=(8); + if (!($237)) { + break; + } + } + } + while(1) { + $238 = $_vlen12; + $239 = ($238|0)!=(0); + if (!($239)) { + break; + } + $240 = $_vset13; + $241 = $_vptr11; + HEAP8[$241>>0] = $240; + $242 = $_vptr11; + $243 = ((($242)) + 1|0); + $_vptr11 = $243; + $244 = $_vlen12; + $245 = (($244) + -1)|0; + $_vlen12 = $245; + } + $246 = HEAP32[17692]|0; + $247 = ($246|0)!=(0); + if ($247) { + $248 = HEAP32[17691]|0; + $249 = HEAP32[17690]|0; + (___munmap($248,$249)|0); + } + HEAP32[17691] = 0; + HEAP32[17689] = 0; + HEAP32[17690] = 0; + HEAP32[17687] = 0; + STACKTOP = sp;return; +} +function __gcry_secmem_dump_stats() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + (_gpgrt_lock_lock(1228)|0); + $0 = HEAP32[17689]|0; + $1 = ($0|0)!=(0); + if (!($1)) { + (_gpgrt_lock_unlock(1228)|0); + STACKTOP = sp;return; + } + $2 = HEAP32[17693]|0; + $3 = HEAP32[17690]|0; + $4 = HEAP32[17694]|0; + HEAP32[$vararg_buffer>>2] = $2; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $3; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $4; + __gcry_log_info(23446,$vararg_buffer); + (_gpgrt_lock_unlock(1228)|0); + STACKTOP = sp;return; +} +function __gcry_initialize_fips_mode($force) { + $force = $force|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $err = 0, $fp = 0, $fp1 = 0, $line = 0, $line2 = 0, $or$cond = 0, $saved_errno = 0, $vararg_buffer = 0; + var $vararg_buffer3 = 0, $vararg_ptr2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 544|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer3 = sp + 8|0; + $vararg_buffer = sp; + $line = sp + 288|0; + $line2 = sp + 32|0; + $0 = $force; + $1 = HEAP32[17695]|0; + $2 = ($1|0)!=(0); + if ($2) { + $3 = (__gcry_fips_mode()|0); + $4 = ($3|0)!=(0); + if ($4) { + _fips_new_state(5); + __gcry_fips_noreturn(); + } + $5 = HEAP32[17695]|0; + $6 = ($5|0)!=(0); + if ($6) { + __gcry_assert_failed(23715,23721,114,23728); + // unreachable; + } + } + HEAP32[17695] = 1; + $7 = $0; + $8 = ($7|0)!=(0); + do { + if ($8) { + $9 = HEAP32[17696]|0; + $10 = ($9|0)!=(0); + if ($10) { + __gcry_assert_failed(23755,23721,121,23728); + // unreachable; + } + } else { + $11 = (_access(23778,0)|0); + $12 = ($11|0)!=(0); + if (!($12)) { + $13 = HEAP32[17696]|0; + $14 = ($13|0)!=(0); + if (!($14)) { + break; + } + __gcry_assert_failed(23755,23721,132,23728); + // unreachable; + } + $15 = (_fopen(23803,23833)|0); + $fp = $15; + $16 = $fp; + $17 = ($16|0)!=(0|0); + if ($17) { + $18 = $fp; + $19 = (_fgets($line,256,$18)|0); + $20 = ($19|0)!=(0|0); + if ($20) { + $21 = (_atoi($line)|0); + $22 = ($21|0)!=(0); + if ($22) { + $23 = $fp; + (_fclose($23)|0); + $24 = HEAP32[17696]|0; + $25 = ($24|0)!=(0); + if (!($25)) { + break; + } + __gcry_assert_failed(23755,23721,151,23728); + // unreachable; + } + } + $26 = $fp; + (_fclose($26)|0); + } else { + $27 = (___errno_location()|0); + $28 = HEAP32[$27>>2]|0; + $saved_errno = $28; + $29 = ($28|0)!=(2); + $30 = $saved_errno; + $31 = ($30|0)!=(13); + $or$cond = $29 & $31; + if ($or$cond) { + $32 = (_access(23835,0)|0); + $33 = ($32|0)!=(0); + if (!($33)) { + $34 = $saved_errno; + $35 = (_strerror($34)|0); + HEAP32[$vararg_buffer>>2] = 23803; + $vararg_ptr2 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr2>>2] = $35; + __gcry_log_info(23849,$vararg_buffer); + _abort(); + // unreachable; + } + } + } + HEAP32[17696] = 1; + } + } while(0); + $36 = HEAP32[17696]|0; + $37 = ($36|0)!=(0); + if ($37) { + STACKTOP = sp;return; + } + $38 = (_gpgrt_lock_init(1272)|0); + $err = $38; + $39 = $err; + $40 = ($39|0)!=(0); + if ($40) { + $41 = $err; + $42 = (_gpg_strerror($41)|0); + HEAP32[$vararg_buffer3>>2] = $42; + __gcry_log_info(23893,$vararg_buffer3); + _abort(); + // unreachable; + } + $43 = (_fopen(23778,23833)|0); + $fp1 = $43; + $44 = $fp1; + $45 = ($44|0)!=(0|0); + if ($45) { + $46 = $fp1; + $47 = (_fgets($line2,256,$46)|0); + $48 = ($47|0)!=(0|0); + if ($48) { + $49 = (_atoi($line2)|0); + $50 = ($49|0)!=(0); + if ($50) { + HEAP32[17698] = 1; + } + } + $51 = $fp1; + (_fclose($51)|0); + } + _fips_new_state(1); + STACKTOP = sp;return; +} +function __gcry_fips_mode() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP32[17696]|0; + $1 = ($0|0)!=(0); + $2 = $1 ^ 1; + $3 = $2&1; + return ($3|0); +} +function _fips_new_state($new_state) { + $new_state = $new_state|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $last_state = 0, $ok = 0, $or$cond = 0, $or$cond11 = 0, $or$cond13 = 0; + var $or$cond15 = 0, $or$cond17 = 0, $or$cond19 = 0, $or$cond21 = 0, $or$cond23 = 0, $or$cond3 = 0, $or$cond5 = 0, $or$cond7 = 0, $or$cond9 = 0, $vararg_buffer = 0, $vararg_ptr26 = 0, $vararg_ptr27 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $new_state; + $ok = 0; + _lock_fsm(); + $1 = HEAP32[17697]|0; + $last_state = $1; + $2 = HEAP32[17697]|0; + switch ($2|0) { + case 0: { + $3 = $0; + $4 = ($3|0)==(1); + $5 = $0; + $6 = ($5|0)==(4); + $or$cond = $4 | $6; + $7 = $0; + $8 = ($7|0)==(5); + $or$cond3 = $or$cond | $8; + if ($or$cond3) { + $ok = 1; + } + break; + } + case 1: { + $9 = $0; + $10 = ($9|0)==(2); + $11 = $0; + $12 = ($11|0)==(4); + $or$cond5 = $10 | $12; + $13 = $0; + $14 = ($13|0)==(5); + $or$cond7 = $or$cond5 | $14; + if ($or$cond7) { + $ok = 1; + } + break; + } + case 2: { + $15 = $0; + $16 = ($15|0)==(3); + $17 = $0; + $18 = ($17|0)==(4); + $or$cond9 = $16 | $18; + $19 = $0; + $20 = ($19|0)==(5); + $or$cond11 = $or$cond9 | $20; + if ($or$cond11) { + $ok = 1; + } + break; + } + case 3: { + $21 = $0; + $22 = ($21|0)==(6); + $23 = $0; + $24 = ($23|0)==(2); + $or$cond13 = $22 | $24; + $25 = $0; + $26 = ($25|0)==(4); + $or$cond15 = $or$cond13 | $26; + $27 = $0; + $28 = ($27|0)==(5); + $or$cond17 = $or$cond15 | $28; + if ($or$cond17) { + $ok = 1; + } + break; + } + case 4: { + $29 = $0; + $30 = ($29|0)==(6); + $31 = $0; + $32 = ($31|0)==(4); + $or$cond19 = $30 | $32; + $33 = $0; + $34 = ($33|0)==(5); + $or$cond21 = $or$cond19 | $34; + $35 = $0; + $36 = ($35|0)==(2); + $or$cond23 = $or$cond21 | $36; + if ($or$cond23) { + $ok = 1; + } + break; + } + case 5: { + $37 = $0; + $38 = ($37|0)==(6); + if ($38) { + $ok = 1; + } + break; + } + default: { + } + } + $39 = $ok; + $40 = ($39|0)!=(0); + if ($40) { + $41 = $0; + HEAP32[17697] = $41; + } + _unlock_fsm(); + $42 = $ok; + $43 = ($42|0)!=(0); + if ($43) { + $44 = (__gcry_log_verbosity(2)|0); + $45 = ($44|0)!=(0); + if ($45) { + label = 18; + } + } else { + label = 18; + } + if ((label|0) == 18) { + $46 = $last_state; + $47 = (_state2str($46)|0); + $48 = $0; + $49 = (_state2str($48)|0); + $50 = $ok; + $51 = ($50|0)!=(0); + $52 = $51 ? 23660 : 23668; + HEAP32[$vararg_buffer>>2] = $47; + $vararg_ptr26 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr26>>2] = $49; + $vararg_ptr27 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr27>>2] = $52; + __gcry_log_info(23675,$vararg_buffer); + } + $53 = $ok; + $54 = ($53|0)!=(0); + if ($54) { + STACKTOP = sp;return; + } else { + __gcry_fips_noreturn(); + STACKTOP = sp;return; + } +} +function _lock_fsm() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $err = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = (_gpgrt_lock_lock(1272)|0); + $err = $0; + $1 = $err; + $2 = ($1|0)!=(0); + if ($2) { + $3 = $err; + $4 = (_gpg_strerror($3)|0); + HEAP32[$vararg_buffer>>2] = $4; + __gcry_log_info(23487,$vararg_buffer); + _abort(); + // unreachable; + } else { + STACKTOP = sp;return; + } +} +function _unlock_fsm() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $err = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = (_gpgrt_lock_unlock(1272)|0); + $err = $0; + $1 = $err; + $2 = ($1|0)!=(0); + if ($2) { + $3 = $err; + $4 = (_gpg_strerror($3)|0); + HEAP32[$vararg_buffer>>2] = $4; + __gcry_log_info(23542,$vararg_buffer); + _abort(); + // unreachable; + } else { + STACKTOP = sp;return; + } +} +function _state2str($state) { + $state = $state|0; + var $0 = 0, $1 = 0, $2 = 0, $s = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $state; + $1 = $0; + switch ($1|0) { + case 0: { + $s = 23597; + break; + } + case 1: { + $s = 23606; + break; + } + case 2: { + $s = 23611; + break; + } + case 3: { + $s = 23621; + break; + } + case 4: { + $s = 23633; + break; + } + case 5: { + $s = 23639; + break; + } + case 6: { + $s = 23651; + break; + } + default: { + $s = 37956; + } + } + $2 = $s; + STACKTOP = sp;return ($2|0); +} +function __gcry_fips_noreturn() { + var label = 0, sp = 0; + sp = STACKTOP; + (_fflush(0)|0); + _abort(); + // unreachable; +} +function __gcry_enforced_fips_mode() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = (__gcry_fips_mode()|0); + $2 = ($1|0)!=(0); + if ($2) { + $3 = HEAP32[17698]|0; + $0 = $3; + } else { + $0 = 0; + } + $4 = $0; + STACKTOP = sp;return ($4|0); +} +function __gcry_set_enforced_fips_mode() { + var label = 0, sp = 0; + sp = STACKTOP; + HEAP32[17698] = 1; + return; +} +function __gcry_inactivate_fips_mode($text) { + $text = $text|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $text; + $1 = (__gcry_fips_mode()|0); + $2 = ($1|0)!=(0); + if (!($2)) { + __gcry_assert_failed(23948,23721,295,23967); + // unreachable; + } + $3 = (__gcry_enforced_fips_mode()|0); + $4 = ($3|0)!=(0); + if ($4) { + $5 = $0; + __gcry_fips_signal_error(23721,300,23967,0,$5); + STACKTOP = sp;return; + } + _lock_fsm(); + $6 = HEAP32[17699]|0; + $7 = ($6|0)!=(0); + if ($7) { + _unlock_fsm(); + STACKTOP = sp;return; + } else { + HEAP32[17699] = 1; + _unlock_fsm(); + STACKTOP = sp;return; + } +} +function __gcry_fips_signal_error($srcfile,$srcline,$srcfunc,$is_fatal,$description) { + $srcfile = $srcfile|0; + $srcline = $srcline|0; + $srcfunc = $srcfunc|0; + $is_fatal = $is_fatal|0; + $description = $description|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $srcfile; + $1 = $srcline; + $2 = $srcfunc; + $3 = $is_fatal; + $4 = $description; + $5 = (__gcry_fips_mode()|0); + $6 = ($5|0)!=(0); + if (!($6)) { + STACKTOP = sp;return; + } + $7 = $3; + $8 = ($7|0)!=(0); + $9 = $8 ? 5 : 4; + _fips_new_state($9); + $10 = $3; + $11 = ($10|0)!=(0); + $12 = $11 ? 23994 : 76543; + $13 = $0; + $14 = $1; + $15 = $2; + $16 = ($15|0)!=(0|0); + $17 = $16 ? 24001 : 76543; + $18 = $2; + $19 = ($18|0)!=(0|0); + $20 = $2; + $21 = $19 ? $20 : 76543; + $22 = $4; + $23 = ($22|0)!=(0|0); + $24 = $4; + $25 = $23 ? $24 : 24013; + HEAP32[$vararg_buffer>>2] = $12; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $13; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $14; + $vararg_ptr3 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr3>>2] = $17; + $vararg_ptr4 = ((($vararg_buffer)) + 16|0); + HEAP32[$vararg_ptr4>>2] = $21; + $vararg_ptr5 = ((($vararg_buffer)) + 20|0); + HEAP32[$vararg_ptr5>>2] = $25; + __gcry_log_info(24038,$vararg_buffer); + STACKTOP = sp;return; +} +function __gcry_is_fips_mode_inactive() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $flag = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = (__gcry_fips_mode()|0); + $2 = ($1|0)!=(0); + if ($2) { + _lock_fsm(); + $3 = HEAP32[17699]|0; + $flag = $3; + _unlock_fsm(); + $4 = $flag; + $0 = $4; + } else { + $0 = 0; + } + $5 = $0; + STACKTOP = sp;return ($5|0); +} +function __gcry_fips_is_operational() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $result = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = (__gcry_fips_mode()|0); + $1 = ($0|0)!=(0); + if (!($1)) { + $result = 1; + $7 = $result; + STACKTOP = sp;return ($7|0); + } + _lock_fsm(); + $2 = HEAP32[17697]|0; + $3 = ($2|0)==(1); + if ($3) { + _unlock_fsm(); + (__gcry_fips_run_selftests(0)|0); + _lock_fsm(); + } + $4 = HEAP32[17697]|0; + $5 = ($4|0)==(3); + $6 = $5&1; + $result = $6; + _unlock_fsm(); + $7 = $result; + STACKTOP = sp;return ($7|0); +} +function __gcry_fips_run_selftests($extended) { + $extended = $extended|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $ec = 0, $result = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $extended; + $result = 4; + $ec = 50; + $1 = (__gcry_fips_mode()|0); + $2 = ($1|0)!=(0); + if ($2) { + _fips_new_state(2); + } + $3 = $0; + $4 = (_run_cipher_selftests($3)|0); + $5 = ($4|0)!=(0); + if (!($5)) { + $6 = $0; + $7 = (_run_digest_selftests($6)|0); + $8 = ($7|0)!=(0); + if (!($8)) { + $9 = $0; + $10 = (_run_hmac_selftests($9)|0); + $11 = ($10|0)!=(0); + if (!($11)) { + $12 = (_run_random_selftests()|0); + $13 = ($12|0)!=(0); + if (!($13)) { + $14 = $0; + $15 = (_run_pubkey_selftests($14)|0); + $16 = ($15|0)!=(0); + if (!($16)) { + $17 = (_check_binary_integrity()|0); + $18 = ($17|0)!=(0); + if (!($18)) { + $result = 3; + $ec = 0; + } + } + } + } + } + } + $19 = (__gcry_fips_mode()|0); + $20 = ($19|0)!=(0); + if (!($20)) { + $22 = $ec; + STACKTOP = sp;return ($22|0); + } + $21 = $result; + _fips_new_state($21); + $22 = $ec; + STACKTOP = sp;return ($22|0); +} +function _run_cipher_selftests($extended) { + $extended = $extended|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $anyerr = 0, $err = 0, $idx = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $extended; + $anyerr = 0; + $idx = 0; + while(1) { + $1 = $idx; + $2 = (1316 + ($1<<2)|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0); + if (!($4)) { + break; + } + $5 = $idx; + $6 = (1316 + ($5<<2)|0); + $7 = HEAP32[$6>>2]|0; + $8 = $0; + $9 = (__gcry_cipher_selftest($7,$8,56)|0); + $err = $9; + $10 = $idx; + $11 = (1316 + ($10<<2)|0); + $12 = HEAP32[$11>>2]|0; + $13 = $err; + $14 = ($13|0)!=(0); + if ($14) { + $15 = $err; + $16 = (_gpg_strerror($15)|0); + $17 = $16; + } else { + $17 = 0; + } + _reporter(38657,$12,0,$17); + $18 = $err; + $19 = ($18|0)!=(0); + if ($19) { + $anyerr = 1; + } + $20 = $idx; + $21 = (($20) + 1)|0; + $idx = $21; + } + $22 = $anyerr; + STACKTOP = sp;return ($22|0); +} +function _reporter($domain,$algo,$what,$errtxt) { + $domain = $domain|0; + $algo = $algo|0; + $what = $what|0; + $errtxt = $errtxt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0; + var $vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $domain; + $1 = $algo; + $2 = $what; + $3 = $errtxt; + $4 = $3; + $5 = ($4|0)!=(0|0); + if (!($5)) { + $6 = (__gcry_log_verbosity(2)|0); + $7 = ($6|0)!=(0); + if (!($7)) { + STACKTOP = sp;return; + } + } + $8 = $0; + $9 = (_strcmp($8,36342)|0); + $10 = ($9|0)!=(0); + $11 = $0; + $12 = $10 ? $11 : 43192; + $13 = $0; + $14 = (_strcmp($13,36342)|0); + $15 = ($14|0)!=(0); + $16 = $15 ^ 1; + $17 = $16 ? 24086 : 76543; + $18 = $0; + $19 = (_strcmp($18,38657)|0); + $20 = ($19|0)!=(0); + do { + if ($20) { + $23 = $0; + $24 = (_strcmp($23,43192)|0); + $25 = ($24|0)!=(0); + if (!($25)) { + $26 = $1; + $27 = (__gcry_md_algo_name($26)|0); + $53 = $27; + break; + } + $28 = $0; + $29 = (_strcmp($28,36342)|0); + $30 = ($29|0)!=(0); + if (!($30)) { + $31 = $1; + $32 = (__gcry_md_algo_name($31)|0); + $53 = $32; + break; + } + $33 = $0; + $34 = (_strcmp($33,49859)|0); + $35 = ($34|0)!=(0); + if ($35) { + $53 = 76543; + } else { + $36 = $1; + $37 = (__gcry_pk_algo_name($36)|0); + $53 = $37; + } + } else { + $21 = $1; + $22 = (__gcry_cipher_algo_name($21)|0); + $53 = $22; + } + } while(0); + $38 = $1; + $39 = $3; + $40 = ($39|0)!=(0|0); + $41 = $3; + $42 = $40 ? $41 : 24092; + $43 = $2; + $44 = ($43|0)!=(0|0); + $45 = $44 ? 24097 : 76543; + $46 = $2; + $47 = ($46|0)!=(0|0); + $48 = $2; + $49 = $47 ? $48 : 76543; + $50 = $2; + $51 = ($50|0)!=(0|0); + $52 = $51 ? 49913 : 76543; + HEAP32[$vararg_buffer>>2] = $12; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $17; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $53; + $vararg_ptr3 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr3>>2] = $38; + $vararg_ptr4 = ((($vararg_buffer)) + 16|0); + HEAP32[$vararg_ptr4>>2] = $42; + $vararg_ptr5 = ((($vararg_buffer)) + 20|0); + HEAP32[$vararg_ptr5>>2] = $45; + $vararg_ptr6 = ((($vararg_buffer)) + 24|0); + HEAP32[$vararg_ptr6>>2] = $49; + $vararg_ptr7 = ((($vararg_buffer)) + 28|0); + HEAP32[$vararg_ptr7>>2] = $52; + __gcry_log_info(24100,$vararg_buffer); + STACKTOP = sp;return; +} +function _run_digest_selftests($extended) { + $extended = $extended|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $anyerr = 0, $err = 0, $idx = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $extended; + $anyerr = 0; + $idx = 0; + while(1) { + $1 = $idx; + $2 = (1336 + ($1<<2)|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0); + if (!($4)) { + break; + } + $5 = $idx; + $6 = (1336 + ($5<<2)|0); + $7 = HEAP32[$6>>2]|0; + $8 = $0; + $9 = (__gcry_md_selftest($7,$8,56)|0); + $err = $9; + $10 = $idx; + $11 = (1336 + ($10<<2)|0); + $12 = HEAP32[$11>>2]|0; + $13 = $err; + $14 = ($13|0)!=(0); + if ($14) { + $15 = $err; + $16 = (_gpg_strerror($15)|0); + $17 = $16; + } else { + $17 = 0; + } + _reporter(43192,$12,0,$17); + $18 = $err; + $19 = ($18|0)!=(0); + if ($19) { + $anyerr = 1; + } + $20 = $idx; + $21 = (($20) + 1)|0; + $idx = $21; + } + $22 = $anyerr; + STACKTOP = sp;return ($22|0); +} +function _run_hmac_selftests($extended) { + $extended = $extended|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $anyerr = 0, $err = 0, $idx = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $extended; + $anyerr = 0; + $idx = 0; + while(1) { + $1 = $idx; + $2 = (1360 + ($1<<2)|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0); + if (!($4)) { + break; + } + $5 = $idx; + $6 = (1360 + ($5<<2)|0); + $7 = HEAP32[$6>>2]|0; + $8 = $0; + $9 = (__gcry_hmac_selftest($7,$8,56)|0); + $err = $9; + $10 = $idx; + $11 = (1360 + ($10<<2)|0); + $12 = HEAP32[$11>>2]|0; + $13 = $err; + $14 = ($13|0)!=(0); + if ($14) { + $15 = $err; + $16 = (_gpg_strerror($15)|0); + $17 = $16; + } else { + $17 = 0; + } + _reporter(36342,$12,0,$17); + $18 = $err; + $19 = ($18|0)!=(0); + if ($19) { + $anyerr = 1; + } + $20 = $idx; + $21 = (($20) + 1)|0; + $idx = $21; + } + $22 = $anyerr; + STACKTOP = sp;return ($22|0); +} +function _run_random_selftests() { + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $err = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = (__gcry_random_selftest(56)|0); + $err = $0; + $1 = $err; + $2 = ($1|0)!=(0); + if ($2) { + $3 = $err; + $4 = (_gpg_strerror($3)|0); + $5 = $4; + } else { + $5 = 0; + } + _reporter(52623,0,0,$5); + $6 = $err; + $7 = ($6|0)!=(0); + $8 = $7 ^ 1; + $9 = $8 ^ 1; + $10 = $9&1; + STACKTOP = sp;return ($10|0); +} +function _run_pubkey_selftests($extended) { + $extended = $extended|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $anyerr = 0, $err = 0, $idx = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $extended; + $anyerr = 0; + $idx = 0; + while(1) { + $1 = $idx; + $2 = (1384 + ($1<<2)|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0); + if (!($4)) { + break; + } + $5 = $idx; + $6 = (1384 + ($5<<2)|0); + $7 = HEAP32[$6>>2]|0; + $8 = $0; + $9 = (__gcry_pk_selftest($7,$8,56)|0); + $err = $9; + $10 = $idx; + $11 = (1384 + ($10<<2)|0); + $12 = HEAP32[$11>>2]|0; + $13 = $err; + $14 = ($13|0)!=(0); + if ($14) { + $15 = $err; + $16 = (_gpg_strerror($15)|0); + $17 = $16; + } else { + $17 = 0; + } + _reporter(49859,$12,0,$17); + $18 = $err; + $19 = ($18|0)!=(0); + if ($19) { + $anyerr = 1; + } + $20 = $idx; + $21 = (($20) + 1)|0; + $idx = $21; + } + $22 = $anyerr; + STACKTOP = sp;return ($22|0); +} +function _check_binary_integrity() { + var label = 0, sp = 0; + sp = STACKTOP; + return 0; +} +function __gcry_fips_test_operational() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $result = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = (__gcry_fips_mode()|0); + $1 = ($0|0)!=(0); + if ($1) { + _lock_fsm(); + $2 = HEAP32[17697]|0; + $3 = ($2|0)==(3); + $4 = $3&1; + $result = $4; + _unlock_fsm(); + } else { + $result = 1; + } + $5 = $result; + STACKTOP = sp;return ($5|0); +} +function __gcry_fips_test_error_or_operational() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $result = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = (__gcry_fips_mode()|0); + $1 = ($0|0)!=(0); + if ($1) { + _lock_fsm(); + $2 = HEAP32[17697]|0; + $3 = ($2|0)==(3); + $4 = HEAP32[17697]|0; + $5 = ($4|0)==(4); + $6 = $3 ? 1 : $5; + $7 = $6&1; + $result = $7; + _unlock_fsm(); + $8 = $result; + STACKTOP = sp;return ($8|0); + } else { + $result = 1; + $8 = $result; + STACKTOP = sp;return ($8|0); + } + return (0)|0; +} +function __gcry_ctx_alloc($type,$length,$deinit) { + $type = $type|0; + $length = $length|0; + $deinit = $deinit|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $cond = 0, $ctx = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $1 = $type; + $2 = $length; + $3 = $deinit; + $4 = $1; + $cond = ($4|0)==(1); + if (!($cond)) { + $5 = $1; + HEAP32[$vararg_buffer>>2] = $5; + __gcry_log_bug(24144,$vararg_buffer); + // unreachable; + } + $6 = $2; + $7 = ($6>>>0)<(8); + if ($7) { + $2 = 8; + } + $8 = $2; + $9 = (8 + ($8))|0; + $10 = (__gcry_calloc(1,$9)|0); + $ctx = $10; + $11 = $ctx; + $12 = ($11|0)!=(0|0); + if ($12) { + $13 = $ctx; + ;HEAP8[$13>>0]=HEAP8[24190>>0]|0;HEAP8[$13+1>>0]=HEAP8[24190+1>>0]|0;HEAP8[$13+2>>0]=HEAP8[24190+2>>0]|0; + $14 = $1; + $15 = $14&255; + $16 = $ctx; + $17 = ((($16)) + 3|0); + HEAP8[$17>>0] = $15; + $18 = $3; + $19 = $ctx; + $20 = ((($19)) + 4|0); + HEAP32[$20>>2] = $18; + $21 = $ctx; + $0 = $21; + $22 = $0; + STACKTOP = sp;return ($22|0); + } else { + $0 = 0; + $22 = $0; + STACKTOP = sp;return ($22|0); + } + return (0)|0; +} +function __gcry_ctx_get_pointer($ctx,$type) { + $ctx = $ctx|0; + $type = $type|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $0 = $ctx; + $1 = $type; + $2 = $0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + $7 = $0; + HEAP32[$vararg_buffer>>2] = $7; + __gcry_log_fatal(24194,$vararg_buffer); + // unreachable; + } + $4 = $0; + $5 = (_memcmp($4,24190,3)|0); + $6 = ($5|0)!=(0); + if ($6) { + $7 = $0; + HEAP32[$vararg_buffer>>2] = $7; + __gcry_log_fatal(24194,$vararg_buffer); + // unreachable; + } + $8 = $0; + $9 = ((($8)) + 3|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10 << 24 >> 24; + $12 = $1; + $13 = ($11|0)!=($12|0); + if ($13) { + $14 = $1; + $15 = $0; + $16 = $0; + $17 = ((($16)) + 3|0); + $18 = HEAP8[$17>>0]|0; + $19 = $18 << 24 >> 24; + HEAP32[$vararg_buffer1>>2] = $14; + $vararg_ptr4 = ((($vararg_buffer1)) + 4|0); + HEAP32[$vararg_ptr4>>2] = $15; + $vararg_ptr5 = ((($vararg_buffer1)) + 8|0); + HEAP32[$vararg_ptr5>>2] = $19; + __gcry_log_fatal(24242,$vararg_buffer1); + // unreachable; + } else { + $20 = $0; + $21 = ((($20)) + 8|0); + STACKTOP = sp;return ($21|0); + } + return (0)|0; +} +function __gcry_ctx_release($ctx) { + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $cond = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $0 = $ctx; + $1 = $0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = $0; + $4 = (_memcmp($3,24190,3)|0); + $5 = ($4|0)!=(0); + $6 = $0; + if ($5) { + HEAP32[$vararg_buffer>>2] = $6; + __gcry_log_fatal(24299,$vararg_buffer); + // unreachable; + } + $7 = ((($6)) + 3|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8 << 24 >> 24; + $cond = ($9|0)==(1); + $10 = $0; + if (!($cond)) { + $11 = ((($10)) + 3|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12 << 24 >> 24; + HEAP32[$vararg_buffer1>>2] = $13; + __gcry_log_fatal(24341,$vararg_buffer1); + // unreachable; + } + $14 = ((($10)) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = $0; + $18 = ((($17)) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = $0; + $21 = ((($20)) + 8|0); + FUNCTION_TABLE_vi[$19 & 127]($21); + } + $22 = $0; + __gcry_free($22); + STACKTOP = sp;return; +} +function __gcry_cipher_algo_name($algorithm) { + $algorithm = $algorithm|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $algorithm; + $1 = $0; + $2 = (_spec_from_algo($1)|0); + $spec = $2; + $3 = $spec; + $4 = ($3|0)!=(0|0); + if (!($4)) { + $8 = 37956; + STACKTOP = sp;return ($8|0); + } + $5 = $spec; + $6 = ((($5)) + 8|0); + $7 = HEAP32[$6>>2]|0; + $8 = $7; + STACKTOP = sp;return ($8|0); +} +function _spec_from_algo($algo) { + $algo = $algo|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $idx = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $algo; + $2 = $1; + $3 = (_map_algo($2)|0); + $1 = $3; + $idx = 0; + while(1) { + $4 = $idx; + $5 = (1396 + ($4<<2)|0); + $6 = HEAP32[$5>>2]|0; + $spec = $6; + $7 = ($6|0)!=(0|0); + if (!($7)) { + label = 6; + break; + } + $8 = $1; + $9 = $spec; + $10 = HEAP32[$9>>2]|0; + $11 = ($8|0)==($10|0); + if ($11) { + label = 4; + break; + } + $13 = $idx; + $14 = (($13) + 1)|0; + $idx = $14; + } + if ((label|0) == 4) { + $12 = $spec; + $0 = $12; + $15 = $0; + STACKTOP = sp;return ($15|0); + } + else if ((label|0) == 6) { + $0 = 0; + $15 = $0; + STACKTOP = sp;return ($15|0); + } + return (0)|0; +} +function _map_algo($algo) { + $algo = $algo|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $algo; + $1 = $0; + STACKTOP = sp;return ($1|0); +} +function __gcry_cipher_open($handle,$algo,$mode,$flags) { + $handle = $handle|0; + $algo = $algo|0; + $mode = $mode|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $h = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $h = sp; + $0 = $handle; + $1 = $algo; + $2 = $mode; + $3 = $flags; + HEAP32[$h>>2] = 0; + $4 = $2; + $5 = ($4|0)>=(65536); + if ($5) { + $rc = 71; + } else { + $6 = $1; + $7 = $2; + $8 = $3; + $9 = (__gcry_cipher_open_internal($h,$6,$7,$8)|0); + $rc = $9; + } + $10 = $rc; + $11 = ($10|0)!=(0); + $12 = HEAP32[$h>>2]|0; + $13 = $11 ? 0 : $12; + $14 = $0; + HEAP32[$14>>2] = $13; + $15 = $rc; + STACKTOP = sp;return ($15|0); +} +function __gcry_cipher_open_internal($handle,$algo,$mode,$flags) { + $handle = $handle|0; + $algo = $algo|0; + $mode = $mode|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $cond = 0, $err = 0, $h = 0, $off = 0, $secure = 0, $size = 0, $spec = 0, $switch$split102D = 0, $switch$split2D = 0, $switch$split42D = 0, $switch$split72D = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $handle; + $1 = $algo; + $2 = $mode; + $3 = $flags; + $4 = $3; + $5 = $4 & 1; + $secure = $5; + $h = 0; + __gcry_fast_random_poll(); + $6 = $1; + $7 = (_spec_from_algo($6)|0); + $spec = $7; + $8 = $spec; + $9 = ($8|0)!=(0|0); + do { + if ($9) { + $10 = $spec; + $11 = ((($10)) + 4|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12 & 1; + $14 = $13&255; + $15 = ($14|0)!=(0); + if ($15) { + $err = 12; + break; + } else { + $err = 0; + break; + } + } else { + $err = 12; + } + } while(0); + $16 = $err; + $17 = ($16|0)!=(0); + do { + if (!($17)) { + $18 = $3; + $19 = $18 & -16; + $20 = ($19|0)!=(0); + if (!($20)) { + $21 = $3; + $22 = $21 & 4; + $23 = $22 & 8; + $24 = ($23|0)!=(0); + if (!($24)) { + break; + } + } + $err = 12; + } + } while(0); + $25 = $err; + $26 = ($25|0)!=(0); + L14: do { + if (!($26)) { + $27 = $2; + $switch$split2D = ($27|0)<(6); + L16: do { + if ($switch$split2D) { + switch ($27|0) { + case 5: case 2: case 3: case 1: { + break L16; + break; + } + case 4: { + $75 = $spec; + $76 = ((($75)) + 44|0); + $77 = HEAP32[$76>>2]|0; + $78 = ($77|0)!=(0|0); + if ($78) { + $79 = $spec; + $80 = ((($79)) + 48|0); + $81 = HEAP32[$80>>2]|0; + $82 = ($81|0)!=(0|0); + if ($82) { + break L14; + } + } + $err = 71; + break L14; + break; + } + case 0: { + $83 = (__gcry_fips_mode()|0); + $84 = ($83|0)!=(0); + if (!($84)) { + $85 = (__gcry_get_debug_flag(0)|0); + $86 = ($85|0)!=(0); + if ($86) { + break L14; + } + } + $err = 71; + break L14; + break; + } + default: { + label = 37; + break L16; + } + } + } else { + $switch$split42D = ($27|0)<(9); + if ($switch$split42D) { + switch ($27|0) { + case 7: case 6: { + break L16; + break; + } + case 8: { + break; + } + default: { + label = 37; + break L16; + } + } + $28 = $spec; + $29 = ((($28)) + 20|0); + $30 = HEAP32[$29>>2]|0; + $31 = ($30|0)!=(16); + if ($31) { + $err = 71; + } + $32 = $spec; + $33 = ((($32)) + 36|0); + $34 = HEAP32[$33>>2]|0; + $35 = ($34|0)!=(0|0); + if ($35) { + $36 = $spec; + $37 = ((($36)) + 40|0); + $38 = HEAP32[$37>>2]|0; + $39 = ($38|0)!=(0|0); + if ($39) { + break L14; + } + } + $err = 71; + break L14; + } + $switch$split72D = ($27|0)<(11); + if ($switch$split72D) { + switch ($27|0) { + case 9: { + break L16; + break; + } + case 10: { + break; + } + default: { + label = 37; + break L16; + } + } + $48 = $spec; + $49 = ((($48)) + 44|0); + $50 = HEAP32[$49>>2]|0; + $51 = ($50|0)!=(0|0); + if ($51) { + $52 = $spec; + $53 = ((($52)) + 48|0); + $54 = HEAP32[$53>>2]|0; + $55 = ($54|0)!=(0|0); + if ($55) { + $56 = $spec; + $57 = ((($56)) + 60|0); + $58 = HEAP32[$57>>2]|0; + $59 = ($58|0)!=(0|0); + if ($59) { + $60 = $spec; + $61 = HEAP32[$60>>2]|0; + $62 = ($61|0)!=(316); + if (!($62)) { + break L14; + } + $err = 71; + break L14; + } + } + } + $err = 71; + break L14; + } + $switch$split102D = ($27|0)<(65537); + if (!($switch$split102D)) { + switch ($27|0) { + case 65537: { + break L16; + break; + } + default: { + label = 37; + break L16; + } + } + } + switch ($27|0) { + case 11: { + break; + } + default: { + label = 37; + break L16; + } + } + $63 = $spec; + $64 = ((($63)) + 36|0); + $65 = HEAP32[$64>>2]|0; + $66 = ($65|0)!=(0|0); + if ($66) { + $67 = $spec; + $68 = ((($67)) + 40|0); + $69 = HEAP32[$68>>2]|0; + $70 = ($69|0)!=(0|0); + if ($70) { + $71 = $spec; + $72 = ((($71)) + 20|0); + $73 = HEAP32[$72>>2]|0; + $74 = ($73|0)!=(16); + if (!($74)) { + break L14; + } + $err = 71; + break L14; + } + } + $err = 71; + break L14; + } + } while(0); + if ((label|0) == 37) { + $err = 71; + break; + } + $40 = $spec; + $41 = ((($40)) + 36|0); + $42 = HEAP32[$41>>2]|0; + $43 = ($42|0)!=(0|0); + if ($43) { + $44 = $spec; + $45 = ((($44)) + 40|0); + $46 = HEAP32[$45>>2]|0; + $47 = ($46|0)!=(0|0); + if ($47) { + break; + } + } + $err = 71; + } + } while(0); + $87 = $err; + $88 = ($87|0)!=(0); + if ($88) { + $173 = $err; + $174 = ($173|0)!=(0); + $175 = $h; + $176 = $174 ? 0 : $175; + $177 = $0; + HEAP32[$177>>2] = $176; + $178 = $err; + $179 = (_gcry_error_675($178)|0); + STACKTOP = sp;return ($179|0); + } + $89 = $spec; + $90 = ((($89)) + 28|0); + $91 = HEAP32[$90>>2]|0; + $92 = $91<<1; + $93 = (512 + ($92))|0; + $94 = (($93) - 16)|0; + $95 = (($94) + 15)|0; + $size = $95; + $96 = $secure; + $97 = ($96|0)!=(0); + $98 = $size; + if ($97) { + $99 = (__gcry_calloc_secure(1,$98)|0); + $h = $99; + } else { + $100 = (__gcry_calloc(1,$98)|0); + $h = $100; + } + $101 = $h; + $102 = ($101|0)!=(0|0); + if (!($102)) { + $103 = (_gpg_err_code_from_syserror()|0); + $err = $103; + $173 = $err; + $174 = ($173|0)!=(0); + $175 = $h; + $176 = $174 ? 0 : $175; + $177 = $0; + HEAP32[$177>>2] = $176; + $178 = $err; + $179 = (_gcry_error_675($178)|0); + STACKTOP = sp;return ($179|0); + } + $off = 0; + $104 = $h; + $105 = $104; + $106 = $105 & 15; + $107 = ($106|0)!=(0); + if ($107) { + $108 = $h; + $109 = $108; + $110 = $109 & 15; + $111 = (16 - ($110))|0; + $off = $111; + $112 = $h; + $113 = $off; + $114 = (($112) + ($113)|0); + $h = $114; + } + $115 = $secure; + $116 = ($115|0)!=(0); + $117 = $116 ? 1183944770 : 604576100; + $118 = $h; + HEAP32[$118>>2] = $117; + $119 = $size; + $120 = $off; + $121 = (($119) - ($120))|0; + $122 = $h; + $123 = ((($122)) + 4|0); + HEAP32[$123>>2] = $121; + $124 = $off; + $125 = $h; + $126 = ((($125)) + 8|0); + HEAP32[$126>>2] = $124; + $127 = $spec; + $128 = $h; + $129 = ((($128)) + 12|0); + HEAP32[$129>>2] = $127; + $130 = $1; + $131 = $h; + $132 = ((($131)) + 16|0); + HEAP32[$132>>2] = $130; + $133 = $2; + $134 = $h; + $135 = ((($134)) + 48|0); + HEAP32[$135>>2] = $133; + $136 = $3; + $137 = $h; + $138 = ((($137)) + 52|0); + HEAP32[$138>>2] = $136; + $139 = $1; + switch ($139|0) { + case 9: case 8: case 7: { + $140 = $h; + $141 = ((($140)) + 20|0); + HEAP32[$141>>2] = 57; + $142 = $h; + $143 = ((($142)) + 20|0); + $144 = ((($143)) + 4|0); + HEAP32[$144>>2] = 58; + $145 = $h; + $146 = ((($145)) + 20|0); + $147 = ((($146)) + 8|0); + HEAP32[$147>>2] = 59; + $148 = $h; + $149 = ((($148)) + 20|0); + $150 = ((($149)) + 12|0); + HEAP32[$150>>2] = 60; + $151 = $h; + $152 = ((($151)) + 20|0); + $153 = ((($152)) + 16|0); + HEAP32[$153>>2] = 61; + $154 = $h; + $155 = ((($154)) + 20|0); + $156 = ((($155)) + 20|0); + HEAP32[$156>>2] = 62; + $157 = $h; + $158 = ((($157)) + 20|0); + $159 = ((($158)) + 24|0); + HEAP32[$159>>2] = 63; + break; + } + case 303: case 10: { + $160 = $h; + $161 = ((($160)) + 20|0); + $162 = ((($161)) + 12|0); + HEAP32[$162>>2] = 64; + $163 = $h; + $164 = ((($163)) + 20|0); + $165 = ((($164)) + 4|0); + HEAP32[$165>>2] = 65; + $166 = $h; + $167 = ((($166)) + 20|0); + $168 = ((($167)) + 16|0); + HEAP32[$168>>2] = 66; + break; + } + default: { + } + } + $169 = $2; + $cond = ($169|0)==(11); + if (!($cond)) { + $173 = $err; + $174 = ($173|0)!=(0); + $175 = $h; + $176 = $174 ? 0 : $175; + $177 = $0; + HEAP32[$177>>2] = $176; + $178 = $err; + $179 = (_gcry_error_675($178)|0); + STACKTOP = sp;return ($179|0); + } + $170 = $h; + $171 = ((($170)) + 128|0); + $172 = ((($171)) + 352|0); + HEAP8[$172>>0] = 16; + $173 = $err; + $174 = ($173|0)!=(0); + $175 = $h; + $176 = $174 ? 0 : $175; + $177 = $0; + HEAP32[$177>>2] = $176; + $178 = $err; + $179 = (_gcry_error_675($178)|0); + STACKTOP = sp;return ($179|0); +} +function _gcry_error_675($code) { + $code = $code|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $code; + $1 = $0; + $2 = (_gcry_err_make_676(32,$1)|0); + STACKTOP = sp;return ($2|0); +} +function _gcry_err_make_676($source,$code) { + $source = $source|0; + $code = $code|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $source; + $1 = $code; + $2 = $0; + $3 = $1; + $4 = (_gpg_err_make_677($2,$3)|0); + STACKTOP = sp;return ($4|0); +} +function _gpg_err_make_677($source,$code) { + $source = $source|0; + $code = $code|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $source; + $1 = $code; + $2 = $1; + $3 = ($2|0)==(0); + if ($3) { + $10 = 0; + STACKTOP = sp;return ($10|0); + } + $4 = $0; + $5 = $4 & 127; + $6 = $5 << 24; + $7 = $1; + $8 = $7 & 65535; + $9 = $6 | $8; + $10 = $9; + STACKTOP = sp;return ($10|0); +} +function __gcry_cipher_close($h) { + $h = $h|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $9 = 0; + var $_vlen = 0, $_vptr = 0, $_vptr_long = 0, $_vset = 0, $_vset_long = 0, $off = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $_vset_long = sp; + $0 = $h; + $1 = $0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = $0; + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(1183944770); + if ($5) { + $6 = $0; + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(604576100); + if ($8) { + __gcry_fatal_error(63,24390); + // unreachable; + } + } + $9 = $0; + HEAP32[$9>>2] = 0; + $10 = $0; + $11 = ((($10)) + 8|0); + $12 = HEAP32[$11>>2]|0; + $off = $12; + $13 = $0; + $_vptr = $13; + $14 = $0; + $15 = ((($14)) + 4|0); + $16 = HEAP32[$15>>2]|0; + $_vlen = $16; + $_vset = 0; + $17 = $_vset; + $18 = $17&255; + $19 = $_vset_long; + $20 = $19; + HEAP32[$20>>2] = $18; + $21 = (($19) + 4)|0; + $22 = $21; + HEAP32[$22>>2] = 0; + while(1) { + $23 = $_vptr; + $24 = $23; + $25 = $24 & 7; + $26 = ($25|0)!=(0); + $27 = $_vlen; + $28 = ($27|0)!=(0); + $29 = $26 ? $28 : 0; + if (!($29)) { + break; + } + $30 = $_vset; + $31 = $_vptr; + HEAP8[$31>>0] = $30; + $32 = $_vptr; + $33 = ((($32)) + 1|0); + $_vptr = $33; + $34 = $_vlen; + $35 = (($34) + -1)|0; + $_vlen = $35; + } + $36 = $_vlen; + $37 = ($36>>>0)<(8); + if (!($37)) { + $38 = $_vset_long; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = (($38) + 4)|0; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $44 = (___muldi3(($40|0),($43|0),16843009,16843009)|0); + $45 = tempRet0; + $46 = $_vset_long; + $47 = $46; + HEAP32[$47>>2] = $44; + $48 = (($46) + 4)|0; + $49 = $48; + HEAP32[$49>>2] = $45; + while(1) { + $50 = $_vptr; + $_vptr_long = $50; + $51 = $_vset_long; + $52 = $51; + $53 = HEAP32[$52>>2]|0; + $54 = (($51) + 4)|0; + $55 = $54; + $56 = HEAP32[$55>>2]|0; + $57 = $_vptr_long; + $58 = $57; + $59 = $58; + HEAP32[$59>>2] = $53; + $60 = (($58) + 4)|0; + $61 = $60; + HEAP32[$61>>2] = $56; + $62 = $_vlen; + $63 = (($62) - 8)|0; + $_vlen = $63; + $64 = $_vptr; + $65 = ((($64)) + 8|0); + $_vptr = $65; + $66 = $_vlen; + $67 = ($66>>>0)>=(8); + if (!($67)) { + break; + } + } + } + while(1) { + $68 = $_vlen; + $69 = ($68|0)!=(0); + if (!($69)) { + break; + } + $70 = $_vset; + $71 = $_vptr; + HEAP8[$71>>0] = $70; + $72 = $_vptr; + $73 = ((($72)) + 1|0); + $_vptr = $73; + $74 = $_vlen; + $75 = (($74) + -1)|0; + $_vlen = $75; + } + $76 = $0; + $77 = $off; + $78 = (0 - ($77))|0; + $79 = (($76) + ($78)|0); + __gcry_free($79); + STACKTOP = sp;return; +} +function __gcry_cipher_encrypt($h,$out,$outsize,$in,$inlen) { + $h = $h|0; + $out = $out|0; + $outsize = $outsize|0; + $in = $in|0; + $inlen = $inlen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $or$cond = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $h; + $1 = $out; + $2 = $outsize; + $3 = $in; + $4 = $inlen; + $5 = $3; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $7 = $1; + $3 = $7; + $8 = $2; + $4 = $8; + } + $9 = $0; + $10 = $1; + $11 = $2; + $12 = $3; + $13 = $4; + $14 = (_cipher_encrypt($9,$10,$11,$12,$13)|0); + $rc = $14; + $15 = $rc; + $16 = ($15|0)!=(0); + $17 = $1; + $18 = ($17|0)!=(0|0); + $or$cond = $16 & $18; + if (!($or$cond)) { + $21 = $rc; + STACKTOP = sp;return ($21|0); + } + $19 = $1; + $20 = $2; + _memset(($19|0),66,($20|0))|0; + $21 = $rc; + STACKTOP = sp;return ($21|0); +} +function _cipher_encrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $rc = 0, $switch$split112D = 0, $switch$split2D = 0, $switch$split52D = 0, $switch$split82D = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $c; + $1 = $outbuf; + $2 = $outbuflen; + $3 = $inbuf; + $4 = $inbuflen; + $5 = $0; + $6 = ((($5)) + 48|0); + $7 = HEAP32[$6>>2]|0; + $switch$split2D = ($7|0)<(6); + L1: do { + if ($switch$split2D) { + switch ($7|0) { + case 1: { + $8 = $0; + $9 = $1; + $10 = $2; + $11 = $3; + $12 = $4; + $13 = (_do_ecb_encrypt($8,$9,$10,$11,$12)|0); + $rc = $13; + label = 21; + break L1; + break; + } + case 3: { + $14 = $0; + $15 = $1; + $16 = $2; + $17 = $3; + $18 = $4; + $19 = (__gcry_cipher_cbc_encrypt($14,$15,$16,$17,$18)|0); + $rc = $19; + label = 21; + break L1; + break; + } + case 2: { + $20 = $0; + $21 = $1; + $22 = $2; + $23 = $3; + $24 = $4; + $25 = (__gcry_cipher_cfb_encrypt($20,$21,$22,$23,$24)|0); + $rc = $25; + label = 21; + break L1; + break; + } + case 5: { + $26 = $0; + $27 = $1; + $28 = $2; + $29 = $3; + $30 = $4; + $31 = (__gcry_cipher_ofb_encrypt($26,$27,$28,$29,$30)|0); + $rc = $31; + label = 21; + break L1; + break; + } + case 4: { + $68 = $0; + $69 = ((($68)) + 12|0); + $70 = HEAP32[$69>>2]|0; + $71 = ((($70)) + 44|0); + $72 = HEAP32[$71>>2]|0; + $73 = $0; + $74 = ((($73)) + 496|0); + $75 = $1; + $76 = $3; + $77 = $4; + FUNCTION_TABLE_viiii[$72 & 63]($74,$75,$76,$77); + $rc = 0; + label = 21; + break L1; + break; + } + case 0: { + $78 = (__gcry_fips_mode()|0); + $79 = ($78|0)!=(0); + if (!($79)) { + $80 = (__gcry_get_debug_flag(0)|0); + $81 = ($80|0)!=(0); + if ($81) { + $82 = $3; + $83 = $1; + $84 = ($82|0)!=($83|0); + if ($84) { + $85 = $1; + $86 = $3; + $87 = $4; + _memmove(($85|0),($86|0),($87|0))|0; + } + $rc = 0; + label = 21; + break L1; + } + } + __gcry_fips_signal_error(24439,875,24448,0,24463); + $rc = 71; + label = 21; + break L1; + break; + } + default: { + label = 20; + break L1; + } + } + } else { + $switch$split52D = ($7|0)<(9); + if ($switch$split52D) { + switch ($7|0) { + case 6: { + $32 = $0; + $33 = $1; + $34 = $2; + $35 = $3; + $36 = $4; + $37 = (__gcry_cipher_ctr_encrypt($32,$33,$34,$35,$36)|0); + $rc = $37; + label = 21; + break L1; + break; + } + case 7: { + $38 = $0; + $39 = $1; + $40 = $2; + $41 = $3; + $42 = $4; + $43 = (__gcry_cipher_aeswrap_encrypt($38,$39,$40,$41,$42)|0); + $rc = $43; + label = 21; + break L1; + break; + } + case 8: { + $44 = $0; + $45 = $1; + $46 = $2; + $47 = $3; + $48 = $4; + $49 = (__gcry_cipher_ccm_encrypt($44,$45,$46,$47,$48)|0); + $rc = $49; + label = 21; + break L1; + break; + } + default: { + label = 20; + break L1; + } + } + } + $switch$split82D = ($7|0)<(11); + if ($switch$split82D) { + switch ($7|0) { + case 9: { + $50 = $0; + $51 = $1; + $52 = $2; + $53 = $3; + $54 = $4; + $55 = (__gcry_cipher_gcm_encrypt($50,$51,$52,$53,$54)|0); + $rc = $55; + label = 21; + break L1; + break; + } + case 10: { + $56 = $0; + $57 = $1; + $58 = $2; + $59 = $3; + $60 = $4; + $61 = (__gcry_cipher_poly1305_encrypt($56,$57,$58,$59,$60)|0); + $rc = $61; + label = 21; + break L1; + break; + } + default: { + label = 20; + break L1; + } + } + } + $switch$split112D = ($7|0)<(65537); + if ($switch$split112D) { + switch ($7|0) { + case 11: { + break; + } + default: { + label = 20; + break L1; + } + } + $62 = $0; + $63 = $1; + $64 = $2; + $65 = $3; + $66 = $4; + $67 = (__gcry_cipher_ocb_encrypt($62,$63,$64,$65,$66)|0); + $rc = $67; + label = 21; + break; + } else { + switch ($7|0) { + case 65537: { + break; + } + default: { + label = 20; + break L1; + } + } + $rc = 71; + label = 21; + break; + } + } + } while(0); + if ((label|0) == 20) { + $88 = $0; + $89 = ((($88)) + 48|0); + $90 = HEAP32[$89>>2]|0; + HEAP32[$vararg_buffer>>2] = $90; + __gcry_log_fatal(24485,$vararg_buffer); + // unreachable; + } + else if ((label|0) == 21) { + $91 = $rc; + STACKTOP = sp;return ($91|0); + } + return (0)|0; +} +function _do_ecb_encrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $c; + $1 = $outbuf; + $2 = $outbuflen; + $3 = $inbuf; + $4 = $inbuflen; + $5 = $0; + $6 = $1; + $7 = $2; + $8 = $3; + $9 = $4; + $10 = $0; + $11 = ((($10)) + 12|0); + $12 = HEAP32[$11>>2]|0; + $13 = ((($12)) + 36|0); + $14 = HEAP32[$13>>2]|0; + $15 = (_do_ecb_crypt($5,$6,$7,$8,$9,$14)|0); + STACKTOP = sp;return ($15|0); +} +function _do_ecb_crypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen,$crypt_fn) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + $crypt_fn = $crypt_fn|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $blocksize = 0, $burn = 0, $n = 0, $nblocks = 0, $nburn = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $c; + $2 = $outbuf; + $3 = $outbuflen; + $4 = $inbuf; + $5 = $inbuflen; + $6 = $crypt_fn; + $7 = $1; + $8 = ((($7)) + 12|0); + $9 = HEAP32[$8>>2]|0; + $10 = ((($9)) + 20|0); + $11 = HEAP32[$10>>2]|0; + $blocksize = $11; + $12 = $3; + $13 = $5; + $14 = ($12>>>0)<($13>>>0); + if ($14) { + $0 = 200; + $49 = $0; + STACKTOP = sp;return ($49|0); + } + $15 = $5; + $16 = $blocksize; + $17 = (($15>>>0) % ($16>>>0))&-1; + $18 = ($17|0)!=(0); + if ($18) { + $0 = 139; + $49 = $0; + STACKTOP = sp;return ($49|0); + } + $19 = $5; + $20 = $blocksize; + $21 = (($19>>>0) / ($20>>>0))&-1; + $nblocks = $21; + $burn = 0; + $n = 0; + while(1) { + $22 = $n; + $23 = $nblocks; + $24 = ($22>>>0)<($23>>>0); + if (!($24)) { + break; + } + $25 = $6; + $26 = $1; + $27 = ((($26)) + 496|0); + $28 = $2; + $29 = $4; + $30 = (FUNCTION_TABLE_iiii[$25 & 127]($27,$28,$29)|0); + $nburn = $30; + $31 = $nburn; + $32 = $burn; + $33 = ($31>>>0)>($32>>>0); + $34 = $nburn; + $35 = $burn; + $36 = $33 ? $34 : $35; + $burn = $36; + $37 = $blocksize; + $38 = $4; + $39 = (($38) + ($37)|0); + $4 = $39; + $40 = $blocksize; + $41 = $2; + $42 = (($41) + ($40)|0); + $2 = $42; + $43 = $n; + $44 = (($43) + 1)|0; + $n = $44; + } + $45 = $burn; + $46 = ($45>>>0)>(0); + if ($46) { + $47 = $burn; + $48 = (($47) + 16)|0; + ___gcry_burn_stack($48); + ___gcry_burn_stack_dummy(); + } + $0 = 0; + $49 = $0; + STACKTOP = sp;return ($49|0); +} +function __gcry_cipher_decrypt($h,$out,$outsize,$in,$inlen) { + $h = $h|0; + $out = $out|0; + $outsize = $outsize|0; + $in = $in|0; + $inlen = $inlen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $h; + $1 = $out; + $2 = $outsize; + $3 = $in; + $4 = $inlen; + $5 = $3; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $7 = $1; + $3 = $7; + $8 = $2; + $4 = $8; + } + $9 = $0; + $10 = $1; + $11 = $2; + $12 = $3; + $13 = $4; + $14 = (_cipher_decrypt($9,$10,$11,$12,$13)|0); + STACKTOP = sp;return ($14|0); +} +function _cipher_decrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $rc = 0, $switch$split112D = 0, $switch$split2D = 0, $switch$split52D = 0, $switch$split82D = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $c; + $1 = $outbuf; + $2 = $outbuflen; + $3 = $inbuf; + $4 = $inbuflen; + $5 = $0; + $6 = ((($5)) + 48|0); + $7 = HEAP32[$6>>2]|0; + $switch$split2D = ($7|0)<(6); + L1: do { + if ($switch$split2D) { + switch ($7|0) { + case 1: { + $8 = $0; + $9 = $1; + $10 = $2; + $11 = $3; + $12 = $4; + $13 = (_do_ecb_decrypt($8,$9,$10,$11,$12)|0); + $rc = $13; + label = 21; + break L1; + break; + } + case 3: { + $14 = $0; + $15 = $1; + $16 = $2; + $17 = $3; + $18 = $4; + $19 = (__gcry_cipher_cbc_decrypt($14,$15,$16,$17,$18)|0); + $rc = $19; + label = 21; + break L1; + break; + } + case 2: { + $20 = $0; + $21 = $1; + $22 = $2; + $23 = $3; + $24 = $4; + $25 = (__gcry_cipher_cfb_decrypt($20,$21,$22,$23,$24)|0); + $rc = $25; + label = 21; + break L1; + break; + } + case 5: { + $26 = $0; + $27 = $1; + $28 = $2; + $29 = $3; + $30 = $4; + $31 = (__gcry_cipher_ofb_encrypt($26,$27,$28,$29,$30)|0); + $rc = $31; + label = 21; + break L1; + break; + } + case 4: { + $68 = $0; + $69 = ((($68)) + 12|0); + $70 = HEAP32[$69>>2]|0; + $71 = ((($70)) + 48|0); + $72 = HEAP32[$71>>2]|0; + $73 = $0; + $74 = ((($73)) + 496|0); + $75 = $1; + $76 = $3; + $77 = $4; + FUNCTION_TABLE_viiii[$72 & 63]($74,$75,$76,$77); + $rc = 0; + label = 21; + break L1; + break; + } + case 0: { + $78 = (__gcry_fips_mode()|0); + $79 = ($78|0)!=(0); + if (!($79)) { + $80 = (__gcry_get_debug_flag(0)|0); + $81 = ($80|0)!=(0); + if ($81) { + $82 = $3; + $83 = $1; + $84 = ($82|0)!=($83|0); + if ($84) { + $85 = $1; + $86 = $3; + $87 = $4; + _memmove(($85|0),($86|0),($87|0))|0; + } + $rc = 0; + label = 21; + break L1; + } + } + __gcry_fips_signal_error(24439,992,24518,0,24463); + $rc = 71; + label = 21; + break L1; + break; + } + default: { + label = 20; + break L1; + } + } + } else { + $switch$split52D = ($7|0)<(9); + if ($switch$split52D) { + switch ($7|0) { + case 6: { + $32 = $0; + $33 = $1; + $34 = $2; + $35 = $3; + $36 = $4; + $37 = (__gcry_cipher_ctr_encrypt($32,$33,$34,$35,$36)|0); + $rc = $37; + label = 21; + break L1; + break; + } + case 7: { + $38 = $0; + $39 = $1; + $40 = $2; + $41 = $3; + $42 = $4; + $43 = (__gcry_cipher_aeswrap_decrypt($38,$39,$40,$41,$42)|0); + $rc = $43; + label = 21; + break L1; + break; + } + case 8: { + $44 = $0; + $45 = $1; + $46 = $2; + $47 = $3; + $48 = $4; + $49 = (__gcry_cipher_ccm_decrypt($44,$45,$46,$47,$48)|0); + $rc = $49; + label = 21; + break L1; + break; + } + default: { + label = 20; + break L1; + } + } + } + $switch$split82D = ($7|0)<(11); + if ($switch$split82D) { + switch ($7|0) { + case 9: { + $50 = $0; + $51 = $1; + $52 = $2; + $53 = $3; + $54 = $4; + $55 = (__gcry_cipher_gcm_decrypt($50,$51,$52,$53,$54)|0); + $rc = $55; + label = 21; + break L1; + break; + } + case 10: { + $56 = $0; + $57 = $1; + $58 = $2; + $59 = $3; + $60 = $4; + $61 = (__gcry_cipher_poly1305_decrypt($56,$57,$58,$59,$60)|0); + $rc = $61; + label = 21; + break L1; + break; + } + default: { + label = 20; + break L1; + } + } + } + $switch$split112D = ($7|0)<(65537); + if ($switch$split112D) { + switch ($7|0) { + case 11: { + break; + } + default: { + label = 20; + break L1; + } + } + $62 = $0; + $63 = $1; + $64 = $2; + $65 = $3; + $66 = $4; + $67 = (__gcry_cipher_ocb_decrypt($62,$63,$64,$65,$66)|0); + $rc = $67; + label = 21; + break; + } else { + switch ($7|0) { + case 65537: { + break; + } + default: { + label = 20; + break L1; + } + } + $rc = 71; + label = 21; + break; + } + } + } while(0); + if ((label|0) == 20) { + $88 = $0; + $89 = ((($88)) + 48|0); + $90 = HEAP32[$89>>2]|0; + HEAP32[$vararg_buffer>>2] = $90; + __gcry_log_fatal(24533,$vararg_buffer); + // unreachable; + } + else if ((label|0) == 21) { + $91 = $rc; + STACKTOP = sp;return ($91|0); + } + return (0)|0; +} +function _do_ecb_decrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $c; + $1 = $outbuf; + $2 = $outbuflen; + $3 = $inbuf; + $4 = $inbuflen; + $5 = $0; + $6 = $1; + $7 = $2; + $8 = $3; + $9 = $4; + $10 = $0; + $11 = ((($10)) + 12|0); + $12 = HEAP32[$11>>2]|0; + $13 = ((($12)) + 40|0); + $14 = HEAP32[$13>>2]|0; + $15 = (_do_ecb_crypt($5,$6,$7,$8,$9,$14)|0); + STACKTOP = sp;return ($15|0); +} +function __gcry_cipher_setkey($hd,$key,$keylen) { + $hd = $hd|0; + $key = $key|0; + $keylen = $keylen|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $hd; + $1 = $key; + $2 = $keylen; + $3 = $0; + $4 = $1; + $5 = $2; + $6 = (_cipher_setkey($3,$4,$5)|0); + STACKTOP = sp;return ($6|0); +} +function _cipher_setkey($c,$key,$keylen) { + $c = $c|0; + $key = $key|0; + $keylen = $keylen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $switch$split2D = 0, $switch$split32D = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $c; + $1 = $key; + $2 = $keylen; + $3 = $0; + $4 = ((($3)) + 12|0); + $5 = HEAP32[$4>>2]|0; + $6 = ((($5)) + 32|0); + $7 = HEAP32[$6>>2]|0; + $8 = $0; + $9 = ((($8)) + 496|0); + $10 = $1; + $11 = $2; + $12 = (FUNCTION_TABLE_iiii[$7 & 127]($9,$10,$11)|0); + $rc = $12; + $13 = $rc; + $14 = ($13|0)!=(0); + $15 = $0; + L1: do { + if ($14) { + $41 = ((($15)) + 56|0); + $42 = HEAP8[$41>>0]|0; + $43 = $42 & -2; + HEAP8[$41>>0] = $43; + } else { + $16 = ((($15)) + 496|0); + $17 = $0; + $18 = ((($17)) + 12|0); + $19 = HEAP32[$18>>2]|0; + $20 = ((($19)) + 28|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($16) + ($21)|0); + $23 = $0; + $24 = ((($23)) + 496|0); + $25 = $0; + $26 = ((($25)) + 12|0); + $27 = HEAP32[$26>>2]|0; + $28 = ((($27)) + 28|0); + $29 = HEAP32[$28>>2]|0; + _memcpy(($22|0),($24|0),($29|0))|0; + $30 = $0; + $31 = ((($30)) + 56|0); + $32 = HEAP8[$31>>0]|0; + $33 = $32 & -2; + $34 = $33 | 1; + HEAP8[$31>>0] = $34; + $35 = $0; + $36 = ((($35)) + 48|0); + $37 = HEAP32[$36>>2]|0; + $switch$split2D = ($37|0)<(10); + if ($switch$split2D) { + switch ($37|0) { + case 9: { + break; + } + default: { + break L1; + } + } + $39 = $0; + __gcry_cipher_gcm_setkey($39); + break; + } + $switch$split32D = ($37|0)<(65537); + if ($switch$split32D) { + switch ($37|0) { + case 10: { + break; + } + default: { + break L1; + } + } + $40 = $0; + __gcry_cipher_poly1305_setkey($40); + break; + } else { + switch ($37|0) { + case 65537: { + break; + } + default: { + break L1; + } + } + $38 = $0; + (__gcry_cipher_cmac_set_subkeys($38)|0); + break; + } + } + } while(0); + $44 = $rc; + STACKTOP = sp;return ($44|0); +} +function __gcry_cipher_setiv($hd,$iv,$ivlen) { + $hd = $hd|0; + $iv = $iv|0; + $ivlen = $ivlen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $hd; + $1 = $iv; + $2 = $ivlen; + $rc = 0; + $3 = $0; + $4 = ((($3)) + 48|0); + $5 = HEAP32[$4>>2]|0; + switch ($5|0) { + case 8: { + $6 = $0; + $7 = $1; + $8 = $2; + $9 = (__gcry_cipher_ccm_set_nonce($6,$7,$8)|0); + $rc = $9; + break; + } + case 9: { + $10 = $0; + $11 = $1; + $12 = $2; + $13 = (__gcry_cipher_gcm_setiv($10,$11,$12)|0); + $rc = $13; + break; + } + case 10: { + $14 = $0; + $15 = $1; + $16 = $2; + $17 = (__gcry_cipher_poly1305_setiv($14,$15,$16)|0); + $rc = $17; + break; + } + case 11: { + $18 = $0; + $19 = $1; + $20 = $2; + $21 = (__gcry_cipher_ocb_set_nonce($18,$19,$20)|0); + $rc = $21; + break; + } + default: { + $22 = $0; + $23 = $1; + $24 = $2; + $25 = (_cipher_setiv($22,$23,$24)|0); + $rc = $25; + } + } + $26 = $rc; + STACKTOP = sp;return ($26|0); +} +function _cipher_setiv($c,$iv,$ivlen) { + $c = $c|0; + $iv = $iv|0; + $ivlen = $ivlen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $1 = $c; + $2 = $iv; + $3 = $ivlen; + $4 = $1; + $5 = ((($4)) + 12|0); + $6 = HEAP32[$5>>2]|0; + $7 = ((($6)) + 60|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0|0); + $10 = $1; + if ($9) { + $11 = ((($10)) + 12|0); + $12 = HEAP32[$11>>2]|0; + $13 = ((($12)) + 60|0); + $14 = HEAP32[$13>>2]|0; + $15 = $1; + $16 = ((($15)) + 496|0); + $17 = $2; + $18 = $3; + FUNCTION_TABLE_viii[$14 & 127]($16,$17,$18); + $0 = 0; + $67 = $0; + STACKTOP = sp;return ($67|0); + } + $19 = ((($10)) + 64|0); + $20 = $1; + $21 = ((($20)) + 12|0); + $22 = HEAP32[$21>>2]|0; + $23 = ((($22)) + 20|0); + $24 = HEAP32[$23>>2]|0; + _memset(($19|0),0,($24|0))|0; + $25 = $2; + $26 = ($25|0)!=(0|0); + if ($26) { + $27 = $3; + $28 = $1; + $29 = ((($28)) + 12|0); + $30 = HEAP32[$29>>2]|0; + $31 = ((($30)) + 20|0); + $32 = HEAP32[$31>>2]|0; + $33 = ($27|0)!=($32|0); + if ($33) { + $34 = $3; + $35 = $1; + $36 = ((($35)) + 12|0); + $37 = HEAP32[$36>>2]|0; + $38 = ((($37)) + 20|0); + $39 = HEAP32[$38>>2]|0; + HEAP32[$vararg_buffer>>2] = $34; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $39; + __gcry_log_info(24566,$vararg_buffer); + __gcry_fips_signal_error(24439,682,24609,0,24622); + } + $40 = $3; + $41 = $1; + $42 = ((($41)) + 12|0); + $43 = HEAP32[$42>>2]|0; + $44 = ((($43)) + 20|0); + $45 = HEAP32[$44>>2]|0; + $46 = ($40>>>0)>($45>>>0); + if ($46) { + $47 = $1; + $48 = ((($47)) + 12|0); + $49 = HEAP32[$48>>2]|0; + $50 = ((($49)) + 20|0); + $51 = HEAP32[$50>>2]|0; + $3 = $51; + } + $52 = $1; + $53 = ((($52)) + 64|0); + $54 = $2; + $55 = $3; + _memcpy(($53|0),($54|0),($55|0))|0; + $56 = $1; + $57 = ((($56)) + 56|0); + $58 = HEAP8[$57>>0]|0; + $59 = $58 & -3; + $60 = $59 | 2; + HEAP8[$57>>0] = $60; + } else { + $61 = $1; + $62 = ((($61)) + 56|0); + $63 = HEAP8[$62>>0]|0; + $64 = $63 & -3; + HEAP8[$62>>0] = $64; + } + $65 = $1; + $66 = ((($65)) + 112|0); + HEAP32[$66>>2] = 0; + $0 = 0; + $67 = $0; + STACKTOP = sp;return ($67|0); +} +function __gcry_cipher_init() { + var label = 0, sp = 0; + sp = STACKTOP; + return 0; +} +function __gcry_cipher_selftest($algo,$extended,$report) { + $algo = $algo|0; + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $ec = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $algo; + $1 = $extended; + $2 = $report; + $ec = 0; + $3 = $0; + $4 = (_spec_from_algo($3)|0); + $spec = $4; + $5 = $spec; + $6 = ($5|0)!=(0|0); + if ($6) { + $7 = $spec; + $8 = ((($7)) + 4|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9 & 1; + $11 = $10&255; + $12 = ($11|0)!=(0); + if (!($12)) { + $13 = $spec; + $14 = ((($13)) + 52|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = $spec; + $18 = ((($17)) + 52|0); + $19 = HEAP32[$18>>2]|0; + $20 = $0; + $21 = $1; + $22 = $2; + $23 = (FUNCTION_TABLE_iiii[$19 & 127]($20,$21,$22)|0); + $ec = $23; + $40 = $ec; + $41 = (_gpg_error_728($40)|0); + STACKTOP = sp;return ($41|0); + } + } + } + $ec = 12; + $24 = $2; + $25 = ($24|0)!=(0|0); + if (!($25)) { + $40 = $ec; + $41 = (_gpg_error_728($40)|0); + STACKTOP = sp;return ($41|0); + } + $26 = $2; + $27 = $0; + $28 = $spec; + $29 = ($28|0)!=(0|0); + if ($29) { + $30 = $spec; + $31 = ((($30)) + 4|0); + $32 = HEAP8[$31>>0]|0; + $33 = $32 & 1; + $34 = $33&255; + $35 = ($34|0)!=(0); + if ($35) { + label = 8; + } else { + $39 = 38027; + } + } else { + label = 8; + } + if ((label|0) == 8) { + $36 = $spec; + $37 = ($36|0)!=(0|0); + $38 = $37 ? 37988 : 38007; + $39 = $38; + } + FUNCTION_TABLE_viiii[$26 & 63](38657,$27,38049,$39); + $40 = $ec; + $41 = (_gpg_error_728($40)|0); + STACKTOP = sp;return ($41|0); +} +function _gpg_error_728($code) { + $code = $code|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $code; + $1 = $0; + $2 = (_gpg_err_make_677(1,$1)|0); + STACKTOP = sp;return ($2|0); +} +function __gcry_ecc_fill_in_curve($nbits,$name,$curve,$r_nbits) { + $nbits = $nbits|0; + $name = $name|0; + $curve = $curve|0; + $r_nbits = $r_nbits|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0; + var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; + var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; + var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; + var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; + var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $idx = 0, $resname = 0, $switch = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $nbits; + $2 = $name; + $3 = $curve; + $4 = $r_nbits; + $resname = 0; + $5 = $2; + $6 = ($5|0)!=(0|0); + if ($6) { + $7 = $2; + $8 = (_find_domain_parms_idx($7)|0); + $idx = $8; + } else { + $idx = 0; + while(1) { + $9 = $idx; + $10 = (1420 + (($9*48)|0)|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)!=(0|0); + if (!($12)) { + break; + } + $13 = $1; + $14 = $idx; + $15 = (1420 + (($14*48)|0)|0); + $16 = ((($15)) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($13|0)==($17|0); + if ($18) { + $19 = $idx; + $20 = (1420 + (($19*48)|0)|0); + $21 = ((($20)) + 12|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($22|0)==(0); + if ($23) { + break; + } + } + $24 = $idx; + $25 = (($24) + 1)|0; + $idx = $25; + } + $26 = $idx; + $27 = (1420 + (($26*48)|0)|0); + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)!=(0|0); + if (!($29)) { + $idx = -1; + } + } + $30 = $idx; + $31 = ($30|0)<(0); + if ($31) { + $0 = 188; + $163 = $0; + STACKTOP = sp;return ($163|0); + } + $32 = $idx; + $33 = (1420 + (($32*48)|0)|0); + $34 = HEAP32[$33>>2]|0; + $resname = $34; + $35 = (__gcry_fips_mode()|0); + $36 = ($35|0)!=(0); + if ($36) { + $37 = $idx; + $38 = (1420 + (($37*48)|0)|0); + $39 = ((($38)) + 8|0); + $40 = HEAP8[$39>>0]|0; + $41 = $40 & 1; + $42 = $41&255; + $43 = ($42|0)!=(0); + if (!($43)) { + $0 = 60; + $163 = $0; + STACKTOP = sp;return ($163|0); + } + } + $44 = $idx; + $45 = (1420 + (($44*48)|0)|0); + $46 = ((($45)) + 12|0); + $47 = HEAP32[$46>>2]|0; + $switch = ($47>>>0)<(3); + if (!($switch)) { + $0 = 59; + $163 = $0; + STACKTOP = sp;return ($163|0); + } + $48 = $4; + $49 = ($48|0)!=(0|0); + if ($49) { + $50 = $idx; + $51 = (1420 + (($50*48)|0)|0); + $52 = ((($51)) + 4|0); + $53 = HEAP32[$52>>2]|0; + $54 = $4; + HEAP32[$54>>2] = $53; + } + $55 = $3; + $56 = ($55|0)!=(0|0); + if ($56) { + $57 = $idx; + $58 = (1420 + (($57*48)|0)|0); + $59 = ((($58)) + 12|0); + $60 = HEAP32[$59>>2]|0; + $61 = $3; + HEAP32[$61>>2] = $60; + $62 = $idx; + $63 = (1420 + (($62*48)|0)|0); + $64 = ((($63)) + 16|0); + $65 = HEAP32[$64>>2]|0; + $66 = $3; + $67 = ((($66)) + 4|0); + HEAP32[$67>>2] = $65; + $68 = $3; + $69 = ((($68)) + 8|0); + $70 = HEAP32[$69>>2]|0; + $71 = ($70|0)!=(0|0); + if (!($71)) { + $72 = $idx; + $73 = (1420 + (($72*48)|0)|0); + $74 = ((($73)) + 20|0); + $75 = HEAP32[$74>>2]|0; + $76 = (_scanval($75)|0); + $77 = $3; + $78 = ((($77)) + 8|0); + HEAP32[$78>>2] = $76; + } + $79 = $3; + $80 = ((($79)) + 12|0); + $81 = HEAP32[$80>>2]|0; + $82 = ($81|0)!=(0|0); + if (!($82)) { + $83 = $idx; + $84 = (1420 + (($83*48)|0)|0); + $85 = ((($84)) + 24|0); + $86 = HEAP32[$85>>2]|0; + $87 = (_scanval($86)|0); + $88 = $3; + $89 = ((($88)) + 12|0); + HEAP32[$89>>2] = $87; + } + $90 = $3; + $91 = ((($90)) + 16|0); + $92 = HEAP32[$91>>2]|0; + $93 = ($92|0)!=(0|0); + if (!($93)) { + $94 = $idx; + $95 = (1420 + (($94*48)|0)|0); + $96 = ((($95)) + 28|0); + $97 = HEAP32[$96>>2]|0; + $98 = (_scanval($97)|0); + $99 = $3; + $100 = ((($99)) + 16|0); + HEAP32[$100>>2] = $98; + } + $101 = $3; + $102 = ((($101)) + 32|0); + $103 = HEAP32[$102>>2]|0; + $104 = ($103|0)!=(0|0); + if (!($104)) { + $105 = $idx; + $106 = (1420 + (($105*48)|0)|0); + $107 = ((($106)) + 32|0); + $108 = HEAP32[$107>>2]|0; + $109 = (_scanval($108)|0); + $110 = $3; + $111 = ((($110)) + 32|0); + HEAP32[$111>>2] = $109; + } + $112 = $3; + $113 = ((($112)) + 36|0); + $114 = HEAP32[$113>>2]|0; + $115 = ($114|0)!=(0|0); + if (!($115)) { + $116 = $idx; + $117 = (1420 + (($116*48)|0)|0); + $118 = ((($117)) + 44|0); + $119 = HEAP32[$118>>2]|0; + $120 = (_scanval($119)|0); + $121 = $3; + $122 = ((($121)) + 36|0); + HEAP32[$122>>2] = $120; + } + $123 = $3; + $124 = ((($123)) + 20|0); + $125 = HEAP32[$124>>2]|0; + $126 = ($125|0)!=(0|0); + if (!($126)) { + $127 = $idx; + $128 = (1420 + (($127*48)|0)|0); + $129 = ((($128)) + 36|0); + $130 = HEAP32[$129>>2]|0; + $131 = (_scanval($130)|0); + $132 = $3; + $133 = ((($132)) + 20|0); + HEAP32[$133>>2] = $131; + } + $134 = $3; + $135 = ((($134)) + 20|0); + $136 = ((($135)) + 4|0); + $137 = HEAP32[$136>>2]|0; + $138 = ($137|0)!=(0|0); + if (!($138)) { + $139 = $idx; + $140 = (1420 + (($139*48)|0)|0); + $141 = ((($140)) + 40|0); + $142 = HEAP32[$141>>2]|0; + $143 = (_scanval($142)|0); + $144 = $3; + $145 = ((($144)) + 20|0); + $146 = ((($145)) + 4|0); + HEAP32[$146>>2] = $143; + } + $147 = $3; + $148 = ((($147)) + 20|0); + $149 = ((($148)) + 8|0); + $150 = HEAP32[$149>>2]|0; + $151 = ($150|0)!=(0|0); + if (!($151)) { + $152 = (__gcry_mpi_alloc_set_ui(1)|0); + $153 = $3; + $154 = ((($153)) + 20|0); + $155 = ((($154)) + 8|0); + HEAP32[$155>>2] = $152; + } + $156 = $3; + $157 = ((($156)) + 40|0); + $158 = HEAP32[$157>>2]|0; + $159 = ($158|0)!=(0|0); + if (!($159)) { + $160 = $resname; + $161 = $3; + $162 = ((($161)) + 40|0); + HEAP32[$162>>2] = $160; + } + } + $0 = 0; + $163 = $0; + STACKTOP = sp;return ($163|0); +} +function _find_domain_parms_idx($name) { + $name = $name|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aliasno = 0, $idx = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $name; + $idx = 0; + while(1) { + $2 = $idx; + $3 = (1420 + (($2*48)|0)|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + break; + } + $6 = $1; + $7 = $idx; + $8 = (1420 + (($7*48)|0)|0); + $9 = HEAP32[$8>>2]|0; + $10 = (_strcmp($6,$9)|0); + $11 = ($10|0)!=(0); + $12 = $idx; + if (!($11)) { + label = 4; + break; + } + $13 = (($12) + 1)|0; + $idx = $13; + } + if ((label|0) == 4) { + $0 = $12; + $49 = $0; + STACKTOP = sp;return ($49|0); + } + $14 = $idx; + $15 = (1420 + (($14*48)|0)|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)!=(0|0); + L9: do { + if (!($17)) { + $aliasno = 0; + while(1) { + $18 = $aliasno; + $19 = (2476 + ($18<<3)|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)!=(0|0); + if (!($21)) { + break; + } + $22 = $1; + $23 = $aliasno; + $24 = (2476 + ($23<<3)|0); + $25 = ((($24)) + 4|0); + $26 = HEAP32[$25>>2]|0; + $27 = (_strcmp($22,$26)|0); + $28 = ($27|0)!=(0); + if (!($28)) { + break; + } + $29 = $aliasno; + $30 = (($29) + 1)|0; + $aliasno = $30; + } + $31 = $aliasno; + $32 = (2476 + ($31<<3)|0); + $33 = HEAP32[$32>>2]|0; + $34 = ($33|0)!=(0|0); + if ($34) { + $idx = 0; + while(1) { + $35 = $idx; + $36 = (1420 + (($35*48)|0)|0); + $37 = HEAP32[$36>>2]|0; + $38 = ($37|0)!=(0|0); + if (!($38)) { + break L9; + } + $39 = $aliasno; + $40 = (2476 + ($39<<3)|0); + $41 = HEAP32[$40>>2]|0; + $42 = $idx; + $43 = (1420 + (($42*48)|0)|0); + $44 = HEAP32[$43>>2]|0; + $45 = (_strcmp($41,$44)|0); + $46 = ($45|0)!=(0); + $47 = $idx; + if (!($46)) { + break; + } + $48 = (($47) + 1)|0; + $idx = $48; + } + $0 = $47; + $49 = $0; + STACKTOP = sp;return ($49|0); + } + } + } while(0); + $0 = -1; + $49 = $0; + STACKTOP = sp;return ($49|0); +} +function _scanval($string) { + $string = $string|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $rc = 0, $val = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $val = sp + 4|0; + $0 = $string; + $1 = $0; + $2 = (__gcry_mpi_scan($val,4,$1,0,0)|0); + $rc = $2; + $3 = $rc; + $4 = ($3|0)!=(0); + if ($4) { + $5 = $rc; + $6 = (_gpg_strerror($5)|0); + HEAP32[$vararg_buffer>>2] = $6; + __gcry_log_fatal(35841,$vararg_buffer); + // unreachable; + } else { + $7 = HEAP32[$val>>2]|0; + STACKTOP = sp;return ($7|0); + } + return (0)|0; +} +function __gcry_ecc_update_curve_param($name,$model,$dialect,$p,$a,$b,$g,$n,$h) { + $name = $name|0; + $model = $model|0; + $dialect = $dialect|0; + $p = $p|0; + $a = $a|0; + $b = $b|0; + $g = $g|0; + $n = $n|0; + $h = $h|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $buf = 0, $idx = 0, $len = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $name; + $2 = $model; + $3 = $dialect; + $4 = $p; + $5 = $a; + $6 = $b; + $7 = $g; + $8 = $n; + $9 = $h; + $10 = $1; + $11 = (_find_domain_parms_idx($10)|0); + $idx = $11; + $12 = $idx; + $13 = ($12|0)<(0); + if ($13) { + $0 = 188; + $122 = $0; + STACKTOP = sp;return ($122|0); + } + $14 = $7; + $15 = ($14|0)!=(0|0); + do { + if ($15) { + $len = 4; + $16 = $idx; + $17 = (1420 + (($16*48)|0)|0); + $18 = ((($17)) + 36|0); + $19 = HEAP32[$18>>2]|0; + $20 = ((($19)) + 2|0); + $21 = (_strlen($20)|0); + $22 = $len; + $23 = (($22) + ($21))|0; + $len = $23; + $24 = $idx; + $25 = (1420 + (($24*48)|0)|0); + $26 = ((($25)) + 40|0); + $27 = HEAP32[$26>>2]|0; + $28 = ((($27)) + 2|0); + $29 = (_strlen($28)|0); + $30 = $len; + $31 = (($30) + ($29))|0; + $len = $31; + $32 = $len; + $33 = (($32) + 1)|0; + $len = $33; + $34 = $len; + $35 = (__gcry_malloc($34)|0); + $buf = $35; + $36 = $buf; + $37 = ($36|0)!=(0|0); + if ($37) { + $39 = $buf; + $40 = (___stpcpy($39,35580)|0); + $41 = $idx; + $42 = (1420 + (($41*48)|0)|0); + $43 = ((($42)) + 36|0); + $44 = HEAP32[$43>>2]|0; + $45 = ((($44)) + 2|0); + $46 = (___stpcpy($40,$45)|0); + $47 = $idx; + $48 = (1420 + (($47*48)|0)|0); + $49 = ((($48)) + 40|0); + $50 = HEAP32[$49>>2]|0; + $51 = ((($50)) + 2|0); + (_strcpy($46,$51)|0); + $52 = $7; + $53 = HEAP32[$52>>2]|0; + __gcry_mpi_release($53); + $54 = $buf; + $55 = (_scanval($54)|0); + $56 = $7; + HEAP32[$56>>2] = $55; + $57 = $buf; + __gcry_free($57); + break; + } + $38 = (_gpg_err_code_from_syserror()|0); + $0 = $38; + $122 = $0; + STACKTOP = sp;return ($122|0); + } + } while(0); + $58 = $2; + $59 = ($58|0)!=(0|0); + if ($59) { + $60 = $idx; + $61 = (1420 + (($60*48)|0)|0); + $62 = ((($61)) + 12|0); + $63 = HEAP32[$62>>2]|0; + $64 = $2; + HEAP32[$64>>2] = $63; + } + $65 = $3; + $66 = ($65|0)!=(0|0); + if ($66) { + $67 = $idx; + $68 = (1420 + (($67*48)|0)|0); + $69 = ((($68)) + 16|0); + $70 = HEAP32[$69>>2]|0; + $71 = $3; + HEAP32[$71>>2] = $70; + } + $72 = $4; + $73 = ($72|0)!=(0|0); + if ($73) { + $74 = $4; + $75 = HEAP32[$74>>2]|0; + __gcry_mpi_release($75); + $76 = $idx; + $77 = (1420 + (($76*48)|0)|0); + $78 = ((($77)) + 20|0); + $79 = HEAP32[$78>>2]|0; + $80 = (_scanval($79)|0); + $81 = $4; + HEAP32[$81>>2] = $80; + } + $82 = $5; + $83 = ($82|0)!=(0|0); + if ($83) { + $84 = $5; + $85 = HEAP32[$84>>2]|0; + __gcry_mpi_release($85); + $86 = $idx; + $87 = (1420 + (($86*48)|0)|0); + $88 = ((($87)) + 24|0); + $89 = HEAP32[$88>>2]|0; + $90 = (_scanval($89)|0); + $91 = $5; + HEAP32[$91>>2] = $90; + } + $92 = $6; + $93 = ($92|0)!=(0|0); + if ($93) { + $94 = $6; + $95 = HEAP32[$94>>2]|0; + __gcry_mpi_release($95); + $96 = $idx; + $97 = (1420 + (($96*48)|0)|0); + $98 = ((($97)) + 28|0); + $99 = HEAP32[$98>>2]|0; + $100 = (_scanval($99)|0); + $101 = $6; + HEAP32[$101>>2] = $100; + } + $102 = $8; + $103 = ($102|0)!=(0|0); + if ($103) { + $104 = $8; + $105 = HEAP32[$104>>2]|0; + __gcry_mpi_release($105); + $106 = $idx; + $107 = (1420 + (($106*48)|0)|0); + $108 = ((($107)) + 32|0); + $109 = HEAP32[$108>>2]|0; + $110 = (_scanval($109)|0); + $111 = $8; + HEAP32[$111>>2] = $110; + } + $112 = $9; + $113 = ($112|0)!=(0|0); + if ($113) { + $114 = $9; + $115 = HEAP32[$114>>2]|0; + __gcry_mpi_release($115); + $116 = $idx; + $117 = (1420 + (($116*48)|0)|0); + $118 = ((($117)) + 44|0); + $119 = HEAP32[$118>>2]|0; + $120 = (_scanval($119)|0); + $121 = $9; + HEAP32[$121>>2] = $120; + } + $0 = 0; + $122 = $0; + STACKTOP = sp;return ($122|0); +} +function __gcry_ecc_get_curve($keyparms,$iterator,$r_nbits) { + $keyparms = $keyparms|0; + $iterator = $iterator|0; + $r_nbits = $r_nbits|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $E = 0, $idx = 0; + var $l1 = 0, $mpi_g = 0, $name = 0, $or$cond = 0, $rc = 0, $result = 0, $tmp = 0, $vararg_buffer = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $E = sp + 48|0; + $mpi_g = sp + 44|0; + $1 = $keyparms; + $2 = $iterator; + $3 = $r_nbits; + $result = 0; + HEAP32[$mpi_g>>2] = 0; + $tmp = 0; + dest=$E; stop=dest+44|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $4 = $3; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = $3; + HEAP32[$6>>2] = 0; + } + $7 = $1; + $8 = ($7|0)!=(0|0); + if (!($8)) { + $9 = $2; + $idx = $9; + $10 = $idx; + $11 = ($10|0)>=(0); + $12 = $idx; + $13 = ($12>>>0)<(22); + $or$cond = $11 & $13; + if ($or$cond) { + $14 = $idx; + $15 = (1420 + (($14*48)|0)|0); + $16 = HEAP32[$15>>2]|0; + $result = $16; + $17 = $3; + $18 = ($17|0)!=(0|0); + if ($18) { + $19 = $idx; + $20 = (1420 + (($19*48)|0)|0); + $21 = ((($20)) + 4|0); + $22 = HEAP32[$21>>2]|0; + $23 = $3; + HEAP32[$23>>2] = $22; + } + } + $24 = $result; + $0 = $24; + $177 = $0; + STACKTOP = sp;return ($177|0); + } + $25 = $1; + $26 = ((($E)) + 8|0); + $27 = ((($E)) + 12|0); + $28 = ((($E)) + 16|0); + $29 = ((($E)) + 32|0); + $30 = ((($E)) + 36|0); + HEAP32[$vararg_buffer>>2] = $26; + $vararg_ptr2 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr2>>2] = $27; + $vararg_ptr3 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr3>>2] = $28; + $vararg_ptr4 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr4>>2] = $mpi_g; + $vararg_ptr5 = ((($vararg_buffer)) + 16|0); + HEAP32[$vararg_ptr5>>2] = $29; + $vararg_ptr6 = ((($vararg_buffer)) + 20|0); + HEAP32[$vararg_ptr6>>2] = $30; + $vararg_ptr7 = ((($vararg_buffer)) + 24|0); + HEAP32[$vararg_ptr7>>2] = 0; + $31 = (__gcry_sexp_extract_param($25,0,35585,$vararg_buffer)|0); + $32 = (_gpg_err_code($31)|0); + $rc = $32; + $33 = $rc; + $34 = ($33|0)==(68); + L12: do { + if ($34) { + $35 = $1; + $36 = (__gcry_sexp_find_token($35,47184,5)|0); + $l1 = $36; + $37 = $l1; + $38 = ($37|0)!=(0|0); + if ($38) { + $39 = $l1; + $40 = (__gcry_sexp_nth_string($39,1)|0); + $name = $40; + $41 = $l1; + __gcry_sexp_release($41); + $42 = $name; + $43 = ($42|0)!=(0|0); + if ($43) { + $44 = $name; + $45 = (_find_domain_parms_idx($44)|0); + $idx = $45; + $46 = $name; + __gcry_free($46); + $47 = $idx; + $48 = ($47|0)>=(0); + if ($48) { + $49 = $idx; + $50 = (1420 + (($49*48)|0)|0); + $51 = HEAP32[$50>>2]|0; + $result = $51; + $52 = $3; + $53 = ($52|0)!=(0|0); + if ($53) { + $54 = $idx; + $55 = (1420 + (($54*48)|0)|0); + $56 = ((($55)) + 4|0); + $57 = HEAP32[$56>>2]|0; + $58 = $3; + HEAP32[$58>>2] = $57; + } + } + $59 = $result; + $0 = $59; + $177 = $0; + STACKTOP = sp;return ($177|0); + } + } + } else { + $60 = $rc; + $61 = ($60|0)!=(0); + if (!($61)) { + $62 = HEAP32[$mpi_g>>2]|0; + $63 = ($62|0)!=(0|0); + if ($63) { + $64 = ((($E)) + 20|0); + __gcry_mpi_point_init($64); + $65 = ((($E)) + 20|0); + $66 = HEAP32[$mpi_g>>2]|0; + $67 = (__gcry_ecc_os2ec($65,$66)|0); + $68 = ($67|0)!=(0); + if ($68) { + break; + } + } + $idx = 0; + while(1) { + $69 = $idx; + $70 = (1420 + (($69*48)|0)|0); + $71 = HEAP32[$70>>2]|0; + $72 = ($71|0)!=(0|0); + if (!($72)) { + break L12; + } + $73 = $tmp; + __gcry_mpi_free($73); + $74 = $idx; + $75 = (1420 + (($74*48)|0)|0); + $76 = ((($75)) + 20|0); + $77 = HEAP32[$76>>2]|0; + $78 = (_scanval($77)|0); + $tmp = $78; + $79 = $tmp; + $80 = ((($E)) + 8|0); + $81 = HEAP32[$80>>2]|0; + $82 = (__gcry_mpi_cmp($79,$81)|0); + $83 = ($82|0)!=(0); + if (!($83)) { + $84 = $tmp; + __gcry_mpi_free($84); + $85 = $idx; + $86 = (1420 + (($85*48)|0)|0); + $87 = ((($86)) + 24|0); + $88 = HEAP32[$87>>2]|0; + $89 = (_scanval($88)|0); + $tmp = $89; + $90 = $tmp; + $91 = ((($E)) + 12|0); + $92 = HEAP32[$91>>2]|0; + $93 = (__gcry_mpi_cmp($90,$92)|0); + $94 = ($93|0)!=(0); + if (!($94)) { + $95 = $tmp; + __gcry_mpi_free($95); + $96 = $idx; + $97 = (1420 + (($96*48)|0)|0); + $98 = ((($97)) + 28|0); + $99 = HEAP32[$98>>2]|0; + $100 = (_scanval($99)|0); + $tmp = $100; + $101 = $tmp; + $102 = ((($E)) + 16|0); + $103 = HEAP32[$102>>2]|0; + $104 = (__gcry_mpi_cmp($101,$103)|0); + $105 = ($104|0)!=(0); + if (!($105)) { + $106 = $tmp; + __gcry_mpi_free($106); + $107 = $idx; + $108 = (1420 + (($107*48)|0)|0); + $109 = ((($108)) + 32|0); + $110 = HEAP32[$109>>2]|0; + $111 = (_scanval($110)|0); + $tmp = $111; + $112 = $tmp; + $113 = ((($E)) + 32|0); + $114 = HEAP32[$113>>2]|0; + $115 = (__gcry_mpi_cmp($112,$114)|0); + $116 = ($115|0)!=(0); + if (!($116)) { + $117 = $tmp; + __gcry_mpi_free($117); + $118 = $idx; + $119 = (1420 + (($118*48)|0)|0); + $120 = ((($119)) + 44|0); + $121 = HEAP32[$120>>2]|0; + $122 = (_scanval($121)|0); + $tmp = $122; + $123 = $tmp; + $124 = ((($E)) + 36|0); + $125 = HEAP32[$124>>2]|0; + $126 = (__gcry_mpi_cmp($123,$125)|0); + $127 = ($126|0)!=(0); + if (!($127)) { + $128 = $tmp; + __gcry_mpi_free($128); + $129 = $idx; + $130 = (1420 + (($129*48)|0)|0); + $131 = ((($130)) + 36|0); + $132 = HEAP32[$131>>2]|0; + $133 = (_scanval($132)|0); + $tmp = $133; + $134 = $tmp; + $135 = ((($E)) + 20|0); + $136 = HEAP32[$135>>2]|0; + $137 = (__gcry_mpi_cmp($134,$136)|0); + $138 = ($137|0)!=(0); + if (!($138)) { + $139 = $tmp; + __gcry_mpi_free($139); + $140 = $idx; + $141 = (1420 + (($140*48)|0)|0); + $142 = ((($141)) + 40|0); + $143 = HEAP32[$142>>2]|0; + $144 = (_scanval($143)|0); + $tmp = $144; + $145 = $tmp; + $146 = ((($E)) + 20|0); + $147 = ((($146)) + 4|0); + $148 = HEAP32[$147>>2]|0; + $149 = (__gcry_mpi_cmp($145,$148)|0); + $150 = ($149|0)!=(0); + if (!($150)) { + break; + } + } + } + } + } + } + } + $161 = $idx; + $162 = (($161) + 1)|0; + $idx = $162; + } + $151 = $idx; + $152 = (1420 + (($151*48)|0)|0); + $153 = HEAP32[$152>>2]|0; + $result = $153; + $154 = $3; + $155 = ($154|0)!=(0|0); + if ($155) { + $156 = $idx; + $157 = (1420 + (($156*48)|0)|0); + $158 = ((($157)) + 4|0); + $159 = HEAP32[$158>>2]|0; + $160 = $3; + HEAP32[$160>>2] = $159; + } + } + } + } while(0); + $163 = $tmp; + __gcry_mpi_release($163); + $164 = ((($E)) + 8|0); + $165 = HEAP32[$164>>2]|0; + __gcry_mpi_release($165); + $166 = ((($E)) + 12|0); + $167 = HEAP32[$166>>2]|0; + __gcry_mpi_release($167); + $168 = ((($E)) + 16|0); + $169 = HEAP32[$168>>2]|0; + __gcry_mpi_release($169); + $170 = HEAP32[$mpi_g>>2]|0; + __gcry_mpi_release($170); + $171 = ((($E)) + 20|0); + __gcry_mpi_point_free_parts($171); + $172 = ((($E)) + 32|0); + $173 = HEAP32[$172>>2]|0; + __gcry_mpi_release($173); + $174 = ((($E)) + 36|0); + $175 = HEAP32[$174>>2]|0; + __gcry_mpi_release($175); + $176 = $result; + $0 = $176; + $177 = $0; + STACKTOP = sp;return ($177|0); +} +function _gpg_err_code($err) { + $err = $err|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $err; + $1 = $0; + $2 = $1 & 65535; + STACKTOP = sp;return ($2|0); +} +function __gcry_mpi_ec_new($r_ctx,$keyparam,$curvename) { + $r_ctx = $r_ctx|0; + $keyparam = $keyparam|0; + $curvename = $curvename|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $21 = 0, $22 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $E = 0, $G = 0, $Q = 0, $a = 0, $b = 0, $ctx = 0, $d = 0, $dialect = 0, $ec = 0, $errc = 0, $flags = 0, $h = 0, $l1 = 0, $model = 0, $n = 0, $name = 0, $or$cond = 0; + var $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $ctx = sp + 60|0; + $p = sp + 48|0; + $a = sp + 44|0; + $b = sp + 40|0; + $G = sp + 36|0; + $n = sp + 32|0; + $h = sp + 28|0; + $Q = sp + 24|0; + $d = sp + 20|0; + $flags = sp + 16|0; + $0 = $r_ctx; + $1 = $keyparam; + $2 = $curvename; + HEAP32[$ctx>>2] = 0; + $model = 0; + $dialect = 0; + HEAP32[$p>>2] = 0; + HEAP32[$a>>2] = 0; + HEAP32[$b>>2] = 0; + HEAP32[$G>>2] = 0; + HEAP32[$n>>2] = 0; + HEAP32[$h>>2] = 0; + HEAP32[$Q>>2] = 0; + HEAP32[$d>>2] = 0; + HEAP32[$flags>>2] = 0; + $3 = $0; + HEAP32[$3>>2] = 0; + $4 = $1; + $5 = ($4|0)!=(0|0); + do { + if ($5) { + $6 = $1; + $7 = (__gcry_sexp_find_token($6,47190,0)|0); + $l1 = $7; + $8 = $l1; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = $l1; + $11 = (__gcry_pk_util_parse_flaglist($10,$flags,0)|0); + $errc = $11; + $12 = $l1; + __gcry_sexp_release($12); + $l1 = 0; + $13 = $errc; + $14 = ($13|0)!=(0); + if ($14) { + break; + } + } + $15 = $1; + $16 = (__gcry_sexp_find_token($15,47184,5)|0); + $l1 = $16; + $17 = $l1; + $18 = ($17|0)!=(0|0); + if ($18) { + $19 = HEAP32[$flags>>2]|0; + $20 = $19 & 512; + $21 = ($20|0)!=(0); + if (!($21)) { + label = 13; + break; + } + } + $22 = $1; + $23 = (_mpi_from_keyparam($p,$22,48667)|0); + $errc = $23; + $24 = $errc; + $25 = ($24|0)!=(0); + if (!($25)) { + $26 = $1; + $27 = (_mpi_from_keyparam($a,$26,39393)|0); + $errc = $27; + $28 = $errc; + $29 = ($28|0)!=(0); + if (!($29)) { + $30 = $1; + $31 = (_mpi_from_keyparam($b,$30,35593)|0); + $errc = $31; + $32 = $errc; + $33 = ($32|0)!=(0); + if (!($33)) { + $34 = $1; + $35 = (_point_from_keyparam($G,$34,35595,0)|0); + $errc = $35; + $36 = $errc; + $37 = ($36|0)!=(0); + if (!($37)) { + $38 = $1; + $39 = (_mpi_from_keyparam($n,$38,39397)|0); + $errc = $39; + $40 = $errc; + $41 = ($40|0)!=(0); + if (!($41)) { + $42 = $1; + $43 = (_mpi_from_keyparam($h,$42,35606)|0); + $errc = $43; + $44 = $errc; + $45 = ($44|0)!=(0); + if (!($45)) { + label = 13; + } + } + } + } + } + } + } else { + $l1 = 0; + label = 13; + } + } while(0); + do { + if ((label|0) == 13) { + $46 = $l1; + $47 = ($46|0)!=(0|0); + $48 = $2; + $49 = ($48|0)!=(0|0); + $or$cond = $47 | $49; + if ($or$cond) { + $50 = $l1; + $51 = ($50|0)!=(0|0); + if ($51) { + $52 = $l1; + $53 = (__gcry_sexp_nth_string($52,1)|0); + $name = $53; + $54 = $l1; + __gcry_sexp_release($54); + $55 = $name; + $56 = ($55|0)!=(0|0); + if (!($56)) { + $errc = 65; + break; + } + } else { + $name = 0; + } + $57 = (__gcry_calloc(1,44)|0); + $E = $57; + $58 = $E; + $59 = ($58|0)!=(0|0); + if (!($59)) { + $60 = (_gpg_err_code_from_syserror()|0); + $errc = $60; + $61 = $name; + __gcry_free($61); + break; + } + $62 = $name; + $63 = ($62|0)!=(0|0); + $64 = $name; + $65 = $2; + $66 = $63 ? $64 : $65; + $67 = $E; + $68 = (__gcry_ecc_fill_in_curve(0,$66,$67,0)|0); + $errc = $68; + $69 = $name; + __gcry_free($69); + $70 = $errc; + $71 = ($70|0)!=(0); + $72 = $E; + if ($71) { + __gcry_free($72); + break; + } + $73 = HEAP32[$72>>2]|0; + $model = $73; + $74 = $E; + $75 = ((($74)) + 4|0); + $76 = HEAP32[$75>>2]|0; + $dialect = $76; + $77 = HEAP32[$p>>2]|0; + $78 = ($77|0)!=(0|0); + if (!($78)) { + $79 = $E; + $80 = ((($79)) + 8|0); + $81 = HEAP32[$80>>2]|0; + HEAP32[$p>>2] = $81; + $82 = $E; + $83 = ((($82)) + 8|0); + HEAP32[$83>>2] = 0; + } + $84 = HEAP32[$a>>2]|0; + $85 = ($84|0)!=(0|0); + if (!($85)) { + $86 = $E; + $87 = ((($86)) + 12|0); + $88 = HEAP32[$87>>2]|0; + HEAP32[$a>>2] = $88; + $89 = $E; + $90 = ((($89)) + 12|0); + HEAP32[$90>>2] = 0; + } + $91 = HEAP32[$b>>2]|0; + $92 = ($91|0)!=(0|0); + if (!($92)) { + $93 = $E; + $94 = ((($93)) + 16|0); + $95 = HEAP32[$94>>2]|0; + HEAP32[$b>>2] = $95; + $96 = $E; + $97 = ((($96)) + 16|0); + HEAP32[$97>>2] = 0; + } + $98 = HEAP32[$G>>2]|0; + $99 = ($98|0)!=(0|0); + if (!($99)) { + $100 = $E; + $101 = ((($100)) + 20|0); + $102 = HEAP32[$101>>2]|0; + $103 = $E; + $104 = ((($103)) + 20|0); + $105 = ((($104)) + 4|0); + $106 = HEAP32[$105>>2]|0; + $107 = $E; + $108 = ((($107)) + 20|0); + $109 = ((($108)) + 8|0); + $110 = HEAP32[$109>>2]|0; + $111 = (__gcry_mpi_point_snatch_set(0,$102,$106,$110)|0); + HEAP32[$G>>2] = $111; + $112 = $E; + $113 = ((($112)) + 20|0); + HEAP32[$113>>2] = 0; + $114 = $E; + $115 = ((($114)) + 20|0); + $116 = ((($115)) + 4|0); + HEAP32[$116>>2] = 0; + $117 = $E; + $118 = ((($117)) + 20|0); + $119 = ((($118)) + 8|0); + HEAP32[$119>>2] = 0; + } + $120 = HEAP32[$n>>2]|0; + $121 = ($120|0)!=(0|0); + if (!($121)) { + $122 = $E; + $123 = ((($122)) + 32|0); + $124 = HEAP32[$123>>2]|0; + HEAP32[$n>>2] = $124; + $125 = $E; + $126 = ((($125)) + 32|0); + HEAP32[$126>>2] = 0; + } + $127 = HEAP32[$h>>2]|0; + $128 = ($127|0)!=(0|0); + if (!($128)) { + $129 = $E; + $130 = ((($129)) + 36|0); + $131 = HEAP32[$130>>2]|0; + HEAP32[$h>>2] = $131; + $132 = $E; + $133 = ((($132)) + 36|0); + HEAP32[$133>>2] = 0; + } + $134 = $E; + __gcry_ecc_curve_free($134); + $135 = $E; + __gcry_free($135); + } + $136 = $model; + $137 = $dialect; + $138 = HEAP32[$flags>>2]|0; + $139 = HEAP32[$p>>2]|0; + $140 = HEAP32[$a>>2]|0; + $141 = HEAP32[$b>>2]|0; + $142 = (__gcry_mpi_ec_p_new($ctx,$136,$137,$138,$139,$140,$141)|0); + $errc = $142; + $143 = $errc; + $144 = ($143|0)!=(0); + if (!($144)) { + $145 = HEAP32[$ctx>>2]|0; + $146 = (__gcry_ctx_get_pointer($145,1)|0); + $ec = $146; + $147 = HEAP32[$b>>2]|0; + $148 = ($147|0)!=(0|0); + if ($148) { + $149 = $ec; + $150 = ((($149)) + 24|0); + $151 = HEAP32[$150>>2]|0; + __gcry_mpi_free($151); + $152 = HEAP32[$b>>2]|0; + $153 = $ec; + $154 = ((($153)) + 24|0); + HEAP32[$154>>2] = $152; + HEAP32[$b>>2] = 0; + } + $155 = HEAP32[$G>>2]|0; + $156 = ($155|0)!=(0|0); + if ($156) { + $157 = HEAP32[$G>>2]|0; + $158 = $ec; + $159 = ((($158)) + 28|0); + HEAP32[$159>>2] = $157; + HEAP32[$G>>2] = 0; + } + $160 = HEAP32[$n>>2]|0; + $161 = ($160|0)!=(0|0); + if ($161) { + $162 = HEAP32[$n>>2]|0; + $163 = $ec; + $164 = ((($163)) + 32|0); + HEAP32[$164>>2] = $162; + HEAP32[$n>>2] = 0; + } + $165 = HEAP32[$h>>2]|0; + $166 = ($165|0)!=(0|0); + if ($166) { + $167 = HEAP32[$h>>2]|0; + $168 = $ec; + $169 = ((($168)) + 36|0); + HEAP32[$169>>2] = $167; + HEAP32[$h>>2] = 0; + } + $170 = $1; + $171 = ($170|0)!=(0|0); + if ($171) { + $172 = $1; + $173 = $ec; + $174 = (_point_from_keyparam($Q,$172,49895,$173)|0); + $errc = $174; + $175 = $errc; + $176 = ($175|0)!=(0); + if ($176) { + break; + } + $177 = $1; + $178 = (_mpi_from_keyparam($d,$177,35608)|0); + $errc = $178; + $179 = $errc; + $180 = ($179|0)!=(0); + if ($180) { + break; + } + } + $181 = HEAP32[$Q>>2]|0; + $182 = ($181|0)!=(0|0); + if ($182) { + $183 = HEAP32[$Q>>2]|0; + $184 = $ec; + $185 = ((($184)) + 40|0); + HEAP32[$185>>2] = $183; + HEAP32[$Q>>2] = 0; + } + $186 = HEAP32[$d>>2]|0; + $187 = ($186|0)!=(0|0); + if ($187) { + $188 = HEAP32[$d>>2]|0; + $189 = $ec; + $190 = ((($189)) + 44|0); + HEAP32[$190>>2] = $188; + HEAP32[$d>>2] = 0; + } + $191 = HEAP32[$ctx>>2]|0; + $192 = $0; + HEAP32[$192>>2] = $191; + HEAP32[$ctx>>2] = 0; + } + } + } while(0); + $193 = HEAP32[$ctx>>2]|0; + __gcry_ctx_release($193); + $194 = HEAP32[$p>>2]|0; + __gcry_mpi_free($194); + $195 = HEAP32[$a>>2]|0; + __gcry_mpi_free($195); + $196 = HEAP32[$b>>2]|0; + __gcry_mpi_free($196); + $197 = HEAP32[$G>>2]|0; + __gcry_mpi_point_release($197); + $198 = HEAP32[$n>>2]|0; + __gcry_mpi_free($198); + $199 = HEAP32[$h>>2]|0; + __gcry_mpi_free($199); + $200 = HEAP32[$Q>>2]|0; + __gcry_mpi_point_release($200); + $201 = HEAP32[$d>>2]|0; + __gcry_mpi_free($201); + $202 = $errc; + STACKTOP = sp;return ($202|0); +} +function _mpi_from_keyparam($r_a,$keyparam,$name) { + $r_a = $r_a|0; + $keyparam = $keyparam|0; + $name = $name|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ec = 0, $l1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $r_a; + $1 = $keyparam; + $2 = $name; + $ec = 0; + $3 = $1; + $4 = $2; + $5 = (__gcry_sexp_find_token($3,$4,0)|0); + $l1 = $5; + $6 = $l1; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = $l1; + $9 = (__gcry_sexp_nth_mpi($8,1,5)|0); + $10 = $0; + HEAP32[$10>>2] = $9; + $11 = $l1; + __gcry_sexp_release($11); + $12 = $0; + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)!=(0|0); + if (!($14)) { + $ec = 65; + } + } + $15 = $ec; + STACKTOP = sp;return ($15|0); +} +function _point_from_keyparam($r_a,$keyparam,$name,$ec) { + $r_a = $r_a|0; + $keyparam = $keyparam|0; + $name = $name|0; + $ec = $ec|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $a = 0, $l1 = 0, $or$cond = 0, $point = 0, $rc = 0, $tmpname = 0, $x = 0; + var $y = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $x = sp + 8|0; + $y = sp + 4|0; + $z = sp; + $1 = $r_a; + $2 = $keyparam; + $3 = $name; + $4 = $ec; + $5 = $2; + $6 = $3; + $7 = (__gcry_sexp_find_token($5,$6,0)|0); + $l1 = $7; + $8 = $l1; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = $l1; + $11 = (__gcry_sexp_nth_mpi($10,1,8)|0); + $a = $11; + $12 = $l1; + __gcry_sexp_release($12); + $13 = $a; + $14 = ($13|0)!=(0|0); + if (!($14)) { + $0 = 65; + $92 = $0; + STACKTOP = sp;return ($92|0); + } + $15 = (__gcry_mpi_point_new(0)|0); + $point = $15; + $16 = $4; + $17 = ($16|0)!=(0|0); + if ($17) { + $18 = $4; + $19 = ((($18)) + 4|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)==(1); + if ($21) { + $22 = $a; + $23 = $4; + $24 = $point; + $25 = (__gcry_ecc_eddsa_decodepoint($22,$23,$24,0,0)|0); + $rc = $25; + } else { + label = 7; + } + } else { + label = 7; + } + if ((label|0) == 7) { + $26 = $point; + $27 = $a; + $28 = (__gcry_ecc_os2ec($26,$27)|0); + $rc = $28; + } + $29 = $a; + __gcry_mpi_free($29); + $30 = $rc; + $31 = ($30|0)!=(0); + if ($31) { + $32 = $point; + __gcry_mpi_point_release($32); + $point = 0; + $33 = $rc; + $0 = $33; + $92 = $0; + STACKTOP = sp;return ($92|0); + } + } else { + HEAP32[$x>>2] = 0; + HEAP32[$y>>2] = 0; + HEAP32[$z>>2] = 0; + $34 = $3; + $35 = (_strlen($34)|0); + $36 = (($35) + 2)|0; + $37 = (($36) + 1)|0; + $38 = (__gcry_malloc($37)|0); + $tmpname = $38; + $39 = $tmpname; + $40 = ($39|0)!=(0|0); + if (!($40)) { + $41 = (_gpg_err_code_from_syserror()|0); + $0 = $41; + $92 = $0; + STACKTOP = sp;return ($92|0); + } + $42 = $tmpname; + $43 = $3; + $44 = (___stpcpy($42,$43)|0); + (_strcpy($44,35597)|0); + $45 = $2; + $46 = $tmpname; + $47 = (_mpi_from_keyparam($x,$45,$46)|0); + $rc = $47; + $48 = $rc; + $49 = ($48|0)!=(0); + $50 = $tmpname; + if ($49) { + __gcry_free($50); + $51 = $rc; + $0 = $51; + $92 = $0; + STACKTOP = sp;return ($92|0); + } + $52 = $3; + $53 = (___stpcpy($50,$52)|0); + (_strcpy($53,35600)|0); + $54 = $2; + $55 = $tmpname; + $56 = (_mpi_from_keyparam($y,$54,$55)|0); + $rc = $56; + $57 = $rc; + $58 = ($57|0)!=(0); + if ($58) { + $59 = HEAP32[$x>>2]|0; + __gcry_mpi_free($59); + $60 = $tmpname; + __gcry_free($60); + $61 = $rc; + $0 = $61; + $92 = $0; + STACKTOP = sp;return ($92|0); + } + $62 = $tmpname; + $63 = $3; + $64 = (___stpcpy($62,$63)|0); + (_strcpy($64,35603)|0); + $65 = $2; + $66 = $tmpname; + $67 = (_mpi_from_keyparam($z,$65,$66)|0); + $rc = $67; + $68 = $rc; + $69 = ($68|0)!=(0); + if ($69) { + $70 = HEAP32[$y>>2]|0; + __gcry_mpi_free($70); + $71 = HEAP32[$x>>2]|0; + __gcry_mpi_free($71); + $72 = $tmpname; + __gcry_free($72); + $73 = $rc; + $0 = $73; + $92 = $0; + STACKTOP = sp;return ($92|0); + } + $74 = HEAP32[$z>>2]|0; + $75 = ($74|0)!=(0|0); + if (!($75)) { + $76 = (__gcry_mpi_set_ui(0,1)|0); + HEAP32[$z>>2] = $76; + } + $77 = HEAP32[$x>>2]|0; + $78 = ($77|0)!=(0|0); + $79 = HEAP32[$y>>2]|0; + $80 = ($79|0)!=(0|0); + $or$cond = $78 & $80; + $81 = HEAP32[$x>>2]|0; + if ($or$cond) { + $82 = HEAP32[$y>>2]|0; + $83 = HEAP32[$z>>2]|0; + $84 = (__gcry_mpi_point_snatch_set(0,$81,$82,$83)|0); + $point = $84; + } else { + __gcry_mpi_free($81); + $85 = HEAP32[$y>>2]|0; + __gcry_mpi_free($85); + $86 = HEAP32[$z>>2]|0; + __gcry_mpi_free($86); + $point = 0; + } + $87 = $tmpname; + __gcry_free($87); + } + $88 = $point; + $89 = ($88|0)!=(0|0); + if ($89) { + $90 = $point; + $91 = $1; + HEAP32[$91>>2] = $90; + } + $0 = 0; + $92 = $0; + STACKTOP = sp;return ($92|0); +} +function __gcry_ecc_get_param_sexp($name) { + $name = $name|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $E = 0, $ctx = 0, $g_x = 0, $g_y = 0, $i = 0, $nbits = 0, $pkey = 0, $result = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0; + var $vararg_ptr6 = 0, $vararg_ptr7 = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $nbits = sp + 124|0; + $E = sp + 80|0; + $pkey = sp + 40|0; + $result = sp + 36|0; + $1 = $name; + dest=$E; stop=dest+44|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $2 = $1; + $3 = (__gcry_ecc_fill_in_curve(0,$2,$E,$nbits)|0); + $4 = ($3|0)!=(0); + if ($4) { + $0 = 0; + $66 = $0; + STACKTOP = sp;return ($66|0); + } + $5 = (__gcry_mpi_new(0)|0); + $g_x = $5; + $6 = (__gcry_mpi_new(0)|0); + $g_y = $6; + $7 = ((($E)) + 8|0); + $8 = HEAP32[$7>>2]|0; + $9 = ((($E)) + 12|0); + $10 = HEAP32[$9>>2]|0; + $11 = (__gcry_mpi_ec_p_internal_new(0,0,0,$8,$10,0)|0); + $ctx = $11; + $12 = $g_x; + $13 = $g_y; + $14 = ((($E)) + 20|0); + $15 = $ctx; + $16 = (__gcry_mpi_ec_get_affine($12,$13,$14,$15)|0); + $17 = ($16|0)!=(0); + if ($17) { + __gcry_log_fatal(35610,$vararg_buffer); + // unreachable; + } + $18 = $ctx; + __gcry_mpi_ec_free($18); + $19 = ((($E)) + 20|0); + __gcry_mpi_point_free_parts($19); + $20 = ((($E)) + 8|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$pkey>>2] = $21; + $22 = ((($E)) + 12|0); + $23 = HEAP32[$22>>2]|0; + $24 = ((($pkey)) + 4|0); + HEAP32[$24>>2] = $23; + $25 = ((($E)) + 16|0); + $26 = HEAP32[$25>>2]|0; + $27 = ((($pkey)) + 8|0); + HEAP32[$27>>2] = $26; + $28 = $g_x; + $29 = $g_y; + $30 = ((($E)) + 8|0); + $31 = HEAP32[$30>>2]|0; + $32 = (__gcry_ecc_ec2os($28,$29,$31)|0); + $33 = ((($pkey)) + 12|0); + HEAP32[$33>>2] = $32; + $34 = ((($E)) + 32|0); + $35 = HEAP32[$34>>2]|0; + $36 = ((($pkey)) + 16|0); + HEAP32[$36>>2] = $35; + $37 = ((($E)) + 36|0); + $38 = HEAP32[$37>>2]|0; + $39 = ((($pkey)) + 20|0); + HEAP32[$39>>2] = $38; + $40 = ((($pkey)) + 24|0); + HEAP32[$40>>2] = 0; + $41 = $g_x; + __gcry_mpi_free($41); + $42 = $g_y; + __gcry_mpi_free($42); + $43 = HEAP32[$pkey>>2]|0; + $44 = ((($pkey)) + 4|0); + $45 = HEAP32[$44>>2]|0; + $46 = ((($pkey)) + 8|0); + $47 = HEAP32[$46>>2]|0; + $48 = ((($pkey)) + 12|0); + $49 = HEAP32[$48>>2]|0; + $50 = ((($pkey)) + 16|0); + $51 = HEAP32[$50>>2]|0; + $52 = ((($pkey)) + 20|0); + $53 = HEAP32[$52>>2]|0; + HEAP32[$vararg_buffer1>>2] = $43; + $vararg_ptr3 = ((($vararg_buffer1)) + 4|0); + HEAP32[$vararg_ptr3>>2] = $45; + $vararg_ptr4 = ((($vararg_buffer1)) + 8|0); + HEAP32[$vararg_ptr4>>2] = $47; + $vararg_ptr5 = ((($vararg_buffer1)) + 12|0); + HEAP32[$vararg_ptr5>>2] = $49; + $vararg_ptr6 = ((($vararg_buffer1)) + 16|0); + HEAP32[$vararg_ptr6>>2] = $51; + $vararg_ptr7 = ((($vararg_buffer1)) + 20|0); + HEAP32[$vararg_ptr7>>2] = $53; + $54 = (__gcry_sexp_build($result,0,35659,$vararg_buffer1)|0); + $55 = ($54|0)!=(0); + if ($55) { + HEAP32[$result>>2] = 0; + } + $i = 0; + while(1) { + $56 = $i; + $57 = (($pkey) + ($56<<2)|0); + $58 = HEAP32[$57>>2]|0; + $59 = ($58|0)!=(0|0); + if (!($59)) { + break; + } + $60 = $i; + $61 = (($pkey) + ($60<<2)|0); + $62 = HEAP32[$61>>2]|0; + __gcry_mpi_release($62); + $63 = $i; + $64 = (($63) + 1)|0; + $i = $64; + } + $65 = HEAP32[$result>>2]|0; + $0 = $65; + $66 = $0; + STACKTOP = sp;return ($66|0); +} +function __gcry_ecc_get_mpi($name,$ec,$copy) { + $name = $name|0; + $ec = $ec|0; + $copy = $copy|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $encpk = 0, $encpklen = 0; + var $or$cond = 0, $or$cond11 = 0, $or$cond13 = 0, $or$cond15 = 0, $or$cond17 = 0, $or$cond19 = 0, $or$cond3 = 0, $or$cond5 = 0, $or$cond7 = 0, $or$cond9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $encpk = sp + 4|0; + $encpklen = sp; + $1 = $name; + $2 = $ec; + $3 = $copy; + $4 = $1; + $5 = HEAP8[$4>>0]|0; + $6 = ($5<<24>>24)!=(0); + if (!($6)) { + $0 = 0; + $397 = $0; + STACKTOP = sp;return ($397|0); + } + $7 = $1; + $8 = (_strcmp($7,48667)|0); + $9 = ($8|0)!=(0); + if (!($9)) { + $10 = $2; + $11 = ((($10)) + 16|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)!=(0|0); + if ($13) { + $14 = $2; + $15 = ((($14)) + 16|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)!=(0|0); + if ($17) { + $18 = $2; + $19 = ((($18)) + 16|0); + $20 = HEAP32[$19>>2]|0; + $21 = ((($20)) + 12|0); + $22 = HEAP32[$21>>2]|0; + $23 = $22 & 32; + $24 = ($23|0)==(0); + $25 = $3; + $26 = ($25|0)!=(0); + $or$cond = $24 | $26; + if ($or$cond) { + label = 8; + } else { + $27 = $2; + $28 = ((($27)) + 16|0); + $29 = HEAP32[$28>>2]|0; + $34 = $29; + } + } else { + label = 8; + } + if ((label|0) == 8) { + $30 = $2; + $31 = ((($30)) + 16|0); + $32 = HEAP32[$31>>2]|0; + $33 = (__gcry_mpi_copy($32)|0); + $34 = $33; + } + $0 = $34; + $397 = $0; + STACKTOP = sp;return ($397|0); + } + } + $35 = $1; + $36 = (_strcmp($35,39393)|0); + $37 = ($36|0)!=(0); + if (!($37)) { + $38 = $2; + $39 = ((($38)) + 20|0); + $40 = HEAP32[$39>>2]|0; + $41 = ($40|0)!=(0|0); + if ($41) { + $42 = $2; + $43 = ((($42)) + 20|0); + $44 = HEAP32[$43>>2]|0; + $45 = ($44|0)!=(0|0); + if ($45) { + $46 = $2; + $47 = ((($46)) + 20|0); + $48 = HEAP32[$47>>2]|0; + $49 = ((($48)) + 12|0); + $50 = HEAP32[$49>>2]|0; + $51 = $50 & 32; + $52 = ($51|0)==(0); + $53 = $3; + $54 = ($53|0)!=(0); + $or$cond3 = $52 | $54; + if ($or$cond3) { + label = 15; + } else { + $55 = $2; + $56 = ((($55)) + 20|0); + $57 = HEAP32[$56>>2]|0; + $62 = $57; + } + } else { + label = 15; + } + if ((label|0) == 15) { + $58 = $2; + $59 = ((($58)) + 20|0); + $60 = HEAP32[$59>>2]|0; + $61 = (__gcry_mpi_copy($60)|0); + $62 = $61; + } + $0 = $62; + $397 = $0; + STACKTOP = sp;return ($397|0); + } + } + $63 = $1; + $64 = (_strcmp($63,35593)|0); + $65 = ($64|0)!=(0); + if (!($65)) { + $66 = $2; + $67 = ((($66)) + 24|0); + $68 = HEAP32[$67>>2]|0; + $69 = ($68|0)!=(0|0); + if ($69) { + $70 = $2; + $71 = ((($70)) + 24|0); + $72 = HEAP32[$71>>2]|0; + $73 = ($72|0)!=(0|0); + if ($73) { + $74 = $2; + $75 = ((($74)) + 24|0); + $76 = HEAP32[$75>>2]|0; + $77 = ((($76)) + 12|0); + $78 = HEAP32[$77>>2]|0; + $79 = $78 & 32; + $80 = ($79|0)==(0); + $81 = $3; + $82 = ($81|0)!=(0); + $or$cond5 = $80 | $82; + if ($or$cond5) { + label = 22; + } else { + $83 = $2; + $84 = ((($83)) + 24|0); + $85 = HEAP32[$84>>2]|0; + $90 = $85; + } + } else { + label = 22; + } + if ((label|0) == 22) { + $86 = $2; + $87 = ((($86)) + 24|0); + $88 = HEAP32[$87>>2]|0; + $89 = (__gcry_mpi_copy($88)|0); + $90 = $89; + } + $0 = $90; + $397 = $0; + STACKTOP = sp;return ($397|0); + } + } + $91 = $1; + $92 = (_strcmp($91,39397)|0); + $93 = ($92|0)!=(0); + if (!($93)) { + $94 = $2; + $95 = ((($94)) + 32|0); + $96 = HEAP32[$95>>2]|0; + $97 = ($96|0)!=(0|0); + if ($97) { + $98 = $2; + $99 = ((($98)) + 32|0); + $100 = HEAP32[$99>>2]|0; + $101 = ($100|0)!=(0|0); + if ($101) { + $102 = $2; + $103 = ((($102)) + 32|0); + $104 = HEAP32[$103>>2]|0; + $105 = ((($104)) + 12|0); + $106 = HEAP32[$105>>2]|0; + $107 = $106 & 32; + $108 = ($107|0)==(0); + $109 = $3; + $110 = ($109|0)!=(0); + $or$cond7 = $108 | $110; + if ($or$cond7) { + label = 29; + } else { + $111 = $2; + $112 = ((($111)) + 32|0); + $113 = HEAP32[$112>>2]|0; + $118 = $113; + } + } else { + label = 29; + } + if ((label|0) == 29) { + $114 = $2; + $115 = ((($114)) + 32|0); + $116 = HEAP32[$115>>2]|0; + $117 = (__gcry_mpi_copy($116)|0); + $118 = $117; + } + $0 = $118; + $397 = $0; + STACKTOP = sp;return ($397|0); + } + } + $119 = $1; + $120 = (_strcmp($119,35606)|0); + $121 = ($120|0)!=(0); + if (!($121)) { + $122 = $2; + $123 = ((($122)) + 36|0); + $124 = HEAP32[$123>>2]|0; + $125 = ($124|0)!=(0|0); + if ($125) { + $126 = $2; + $127 = ((($126)) + 36|0); + $128 = HEAP32[$127>>2]|0; + $129 = ($128|0)!=(0|0); + if ($129) { + $130 = $2; + $131 = ((($130)) + 36|0); + $132 = HEAP32[$131>>2]|0; + $133 = ((($132)) + 12|0); + $134 = HEAP32[$133>>2]|0; + $135 = $134 & 32; + $136 = ($135|0)==(0); + $137 = $3; + $138 = ($137|0)!=(0); + $or$cond9 = $136 | $138; + if ($or$cond9) { + label = 36; + } else { + $139 = $2; + $140 = ((($139)) + 36|0); + $141 = HEAP32[$140>>2]|0; + $146 = $141; + } + } else { + label = 36; + } + if ((label|0) == 36) { + $142 = $2; + $143 = ((($142)) + 36|0); + $144 = HEAP32[$143>>2]|0; + $145 = (__gcry_mpi_copy($144)|0); + $146 = $145; + } + $0 = $146; + $397 = $0; + STACKTOP = sp;return ($397|0); + } + } + $147 = $1; + $148 = (_strcmp($147,35608)|0); + $149 = ($148|0)!=(0); + if (!($149)) { + $150 = $2; + $151 = ((($150)) + 44|0); + $152 = HEAP32[$151>>2]|0; + $153 = ($152|0)!=(0|0); + if ($153) { + $154 = $2; + $155 = ((($154)) + 44|0); + $156 = HEAP32[$155>>2]|0; + $157 = ($156|0)!=(0|0); + if ($157) { + $158 = $2; + $159 = ((($158)) + 44|0); + $160 = HEAP32[$159>>2]|0; + $161 = ((($160)) + 12|0); + $162 = HEAP32[$161>>2]|0; + $163 = $162 & 32; + $164 = ($163|0)==(0); + $165 = $3; + $166 = ($165|0)!=(0); + $or$cond11 = $164 | $166; + if ($or$cond11) { + label = 43; + } else { + $167 = $2; + $168 = ((($167)) + 44|0); + $169 = HEAP32[$168>>2]|0; + $174 = $169; + } + } else { + label = 43; + } + if ((label|0) == 43) { + $170 = $2; + $171 = ((($170)) + 44|0); + $172 = HEAP32[$171>>2]|0; + $173 = (__gcry_mpi_copy($172)|0); + $174 = $173; + } + $0 = $174; + $397 = $0; + STACKTOP = sp;return ($397|0); + } + } + $175 = $1; + $176 = (_strcmp($175,35707)|0); + $177 = ($176|0)!=(0); + if (!($177)) { + $178 = $2; + $179 = ((($178)) + 28|0); + $180 = HEAP32[$179>>2]|0; + $181 = ($180|0)!=(0|0); + if ($181) { + $182 = $2; + $183 = ((($182)) + 28|0); + $184 = HEAP32[$183>>2]|0; + $185 = HEAP32[$184>>2]|0; + $186 = ($185|0)!=(0|0); + if ($186) { + $187 = $2; + $188 = ((($187)) + 28|0); + $189 = HEAP32[$188>>2]|0; + $190 = HEAP32[$189>>2]|0; + $191 = ($190|0)!=(0|0); + if ($191) { + $192 = $2; + $193 = ((($192)) + 28|0); + $194 = HEAP32[$193>>2]|0; + $195 = HEAP32[$194>>2]|0; + $196 = ((($195)) + 12|0); + $197 = HEAP32[$196>>2]|0; + $198 = $197 & 32; + $199 = ($198|0)==(0); + $200 = $3; + $201 = ($200|0)!=(0); + $or$cond13 = $199 | $201; + if ($or$cond13) { + label = 51; + } else { + $202 = $2; + $203 = ((($202)) + 28|0); + $204 = HEAP32[$203>>2]|0; + $205 = HEAP32[$204>>2]|0; + $211 = $205; + } + } else { + label = 51; + } + if ((label|0) == 51) { + $206 = $2; + $207 = ((($206)) + 28|0); + $208 = HEAP32[$207>>2]|0; + $209 = HEAP32[$208>>2]|0; + $210 = (__gcry_mpi_copy($209)|0); + $211 = $210; + } + $0 = $211; + $397 = $0; + STACKTOP = sp;return ($397|0); + } + } + } + $212 = $1; + $213 = (_strcmp($212,35711)|0); + $214 = ($213|0)!=(0); + if (!($214)) { + $215 = $2; + $216 = ((($215)) + 28|0); + $217 = HEAP32[$216>>2]|0; + $218 = ($217|0)!=(0|0); + if ($218) { + $219 = $2; + $220 = ((($219)) + 28|0); + $221 = HEAP32[$220>>2]|0; + $222 = ((($221)) + 4|0); + $223 = HEAP32[$222>>2]|0; + $224 = ($223|0)!=(0|0); + if ($224) { + $225 = $2; + $226 = ((($225)) + 28|0); + $227 = HEAP32[$226>>2]|0; + $228 = ((($227)) + 4|0); + $229 = HEAP32[$228>>2]|0; + $230 = ($229|0)!=(0|0); + if ($230) { + $231 = $2; + $232 = ((($231)) + 28|0); + $233 = HEAP32[$232>>2]|0; + $234 = ((($233)) + 4|0); + $235 = HEAP32[$234>>2]|0; + $236 = ((($235)) + 12|0); + $237 = HEAP32[$236>>2]|0; + $238 = $237 & 32; + $239 = ($238|0)==(0); + $240 = $3; + $241 = ($240|0)!=(0); + $or$cond15 = $239 | $241; + if ($or$cond15) { + label = 59; + } else { + $242 = $2; + $243 = ((($242)) + 28|0); + $244 = HEAP32[$243>>2]|0; + $245 = ((($244)) + 4|0); + $246 = HEAP32[$245>>2]|0; + $253 = $246; + } + } else { + label = 59; + } + if ((label|0) == 59) { + $247 = $2; + $248 = ((($247)) + 28|0); + $249 = HEAP32[$248>>2]|0; + $250 = ((($249)) + 4|0); + $251 = HEAP32[$250>>2]|0; + $252 = (__gcry_mpi_copy($251)|0); + $253 = $252; + } + $0 = $253; + $397 = $0; + STACKTOP = sp;return ($397|0); + } + } + } + $254 = $1; + $255 = (_strcmp($254,35715)|0); + $256 = ($255|0)!=(0); + if (!($256)) { + $257 = $2; + $258 = ((($257)) + 40|0); + $259 = HEAP32[$258>>2]|0; + $260 = ($259|0)!=(0|0); + if ($260) { + $261 = $2; + $262 = ((($261)) + 40|0); + $263 = HEAP32[$262>>2]|0; + $264 = HEAP32[$263>>2]|0; + $265 = ($264|0)!=(0|0); + if ($265) { + $266 = $2; + $267 = ((($266)) + 40|0); + $268 = HEAP32[$267>>2]|0; + $269 = HEAP32[$268>>2]|0; + $270 = ($269|0)!=(0|0); + if ($270) { + $271 = $2; + $272 = ((($271)) + 40|0); + $273 = HEAP32[$272>>2]|0; + $274 = HEAP32[$273>>2]|0; + $275 = ((($274)) + 12|0); + $276 = HEAP32[$275>>2]|0; + $277 = $276 & 32; + $278 = ($277|0)==(0); + $279 = $3; + $280 = ($279|0)!=(0); + $or$cond17 = $278 | $280; + if ($or$cond17) { + label = 67; + } else { + $281 = $2; + $282 = ((($281)) + 40|0); + $283 = HEAP32[$282>>2]|0; + $284 = HEAP32[$283>>2]|0; + $290 = $284; + } + } else { + label = 67; + } + if ((label|0) == 67) { + $285 = $2; + $286 = ((($285)) + 40|0); + $287 = HEAP32[$286>>2]|0; + $288 = HEAP32[$287>>2]|0; + $289 = (__gcry_mpi_copy($288)|0); + $290 = $289; + } + $0 = $290; + $397 = $0; + STACKTOP = sp;return ($397|0); + } + } + } + $291 = $1; + $292 = (_strcmp($291,35719)|0); + $293 = ($292|0)!=(0); + if (!($293)) { + $294 = $2; + $295 = ((($294)) + 40|0); + $296 = HEAP32[$295>>2]|0; + $297 = ($296|0)!=(0|0); + if ($297) { + $298 = $2; + $299 = ((($298)) + 40|0); + $300 = HEAP32[$299>>2]|0; + $301 = ((($300)) + 4|0); + $302 = HEAP32[$301>>2]|0; + $303 = ($302|0)!=(0|0); + if ($303) { + $304 = $2; + $305 = ((($304)) + 28|0); + $306 = HEAP32[$305>>2]|0; + $307 = ((($306)) + 4|0); + $308 = HEAP32[$307>>2]|0; + $309 = ($308|0)!=(0|0); + if ($309) { + $310 = $2; + $311 = ((($310)) + 28|0); + $312 = HEAP32[$311>>2]|0; + $313 = ((($312)) + 4|0); + $314 = HEAP32[$313>>2]|0; + $315 = ((($314)) + 12|0); + $316 = HEAP32[$315>>2]|0; + $317 = $316 & 32; + $318 = ($317|0)==(0); + $319 = $3; + $320 = ($319|0)!=(0); + $or$cond19 = $318 | $320; + if ($or$cond19) { + label = 75; + } else { + $321 = $2; + $322 = ((($321)) + 40|0); + $323 = HEAP32[$322>>2]|0; + $324 = ((($323)) + 4|0); + $325 = HEAP32[$324>>2]|0; + $332 = $325; + } + } else { + label = 75; + } + if ((label|0) == 75) { + $326 = $2; + $327 = ((($326)) + 40|0); + $328 = HEAP32[$327>>2]|0; + $329 = ((($328)) + 4|0); + $330 = HEAP32[$329>>2]|0; + $331 = (__gcry_mpi_copy($330)|0); + $332 = $331; + } + $0 = $332; + $397 = $0; + STACKTOP = sp;return ($397|0); + } + } + } + $333 = $1; + $334 = (_strcmp($333,35595)|0); + $335 = ($334|0)!=(0); + if (!($335)) { + $336 = $2; + $337 = ((($336)) + 28|0); + $338 = HEAP32[$337>>2]|0; + $339 = ($338|0)!=(0|0); + if ($339) { + $340 = $2; + $341 = ((($340)) + 28|0); + $342 = HEAP32[$341>>2]|0; + $343 = $2; + $344 = (__gcry_mpi_ec_ec2os($342,$343)|0); + $0 = $344; + $397 = $0; + STACKTOP = sp;return ($397|0); + } + } + $345 = $1; + $346 = HEAP8[$345>>0]|0; + $347 = $346 << 24 >> 24; + $348 = ($347|0)==(113); + do { + if ($348) { + $349 = $1; + $350 = ((($349)) + 1|0); + $351 = HEAP8[$350>>0]|0; + $352 = ($351<<24>>24)!=(0); + if ($352) { + $353 = $1; + $354 = ((($353)) + 1|0); + $355 = HEAP8[$354>>0]|0; + $356 = $355 << 24 >> 24; + $357 = ($356|0)==(64); + if (!($357)) { + break; + } + } + $358 = $2; + $359 = ((($358)) + 40|0); + $360 = HEAP32[$359>>2]|0; + $361 = ($360|0)!=(0|0); + if (!($361)) { + $362 = $2; + $363 = (__gcry_ecc_compute_public(0,$362,0,0)|0); + $364 = $2; + $365 = ((($364)) + 40|0); + HEAP32[$365>>2] = $363; + } + $366 = $2; + $367 = ((($366)) + 40|0); + $368 = HEAP32[$367>>2]|0; + $369 = ($368|0)!=(0|0); + if (!($369)) { + $0 = 0; + $397 = $0; + STACKTOP = sp;return ($397|0); + } + $370 = $1; + $371 = ((($370)) + 1|0); + $372 = HEAP8[$371>>0]|0; + $373 = $372 << 24 >> 24; + $374 = ($373|0)!=(64); + if ($374) { + $375 = $2; + $376 = ((($375)) + 40|0); + $377 = HEAP32[$376>>2]|0; + $378 = $2; + $379 = (__gcry_mpi_ec_ec2os($377,$378)|0); + $0 = $379; + $397 = $0; + STACKTOP = sp;return ($397|0); + } + $380 = $1; + $381 = ((($380)) + 2|0); + $382 = (_strcmp($381,47150)|0); + $383 = ($382|0)!=(0); + if (!($383)) { + $384 = $2; + $385 = HEAP32[$384>>2]|0; + $386 = ($385|0)==(2); + if ($386) { + $387 = $2; + $388 = ((($387)) + 40|0); + $389 = HEAP32[$388>>2]|0; + $390 = $2; + $391 = (__gcry_ecc_eddsa_encodepoint($389,$390,0,0,0,$encpk,$encpklen)|0); + $392 = ($391|0)!=(0); + if ($392) { + break; + } + $393 = HEAP32[$encpk>>2]|0; + $394 = HEAP32[$encpklen>>2]|0; + $395 = $394<<3; + $396 = (__gcry_mpi_set_opaque(0,$393,$395)|0); + $0 = $396; + $397 = $0; + STACKTOP = sp;return ($397|0); + } + } + } + } while(0); + $0 = 0; + $397 = $0; + STACKTOP = sp;return ($397|0); +} +function __gcry_ecc_get_point($name,$ec) { + $name = $name|0; + $ec = $ec|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $name; + $2 = $ec; + $3 = $1; + $4 = (_strcmp($3,35595)|0); + $5 = ($4|0)!=(0); + if (!($5)) { + $6 = $2; + $7 = ((($6)) + 28|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = $2; + $11 = ((($10)) + 28|0); + $12 = HEAP32[$11>>2]|0; + $13 = (_point_copy($12)|0); + $0 = $13; + $33 = $0; + STACKTOP = sp;return ($33|0); + } + } + $14 = $1; + $15 = (_strcmp($14,49895)|0); + $16 = ($15|0)!=(0); + if (!($16)) { + $17 = $2; + $18 = ((($17)) + 40|0); + $19 = HEAP32[$18>>2]|0; + $20 = ($19|0)!=(0|0); + if (!($20)) { + $21 = $2; + $22 = (__gcry_ecc_compute_public(0,$21,0,0)|0); + $23 = $2; + $24 = ((($23)) + 40|0); + HEAP32[$24>>2] = $22; + } + $25 = $2; + $26 = ((($25)) + 40|0); + $27 = HEAP32[$26>>2]|0; + $28 = ($27|0)!=(0|0); + if ($28) { + $29 = $2; + $30 = ((($29)) + 40|0); + $31 = HEAP32[$30>>2]|0; + $32 = (_point_copy($31)|0); + $0 = $32; + $33 = $0; + STACKTOP = sp;return ($33|0); + } + } + $0 = 0; + $33 = $0; + STACKTOP = sp;return ($33|0); +} +function _point_copy($point) { + $point = $point|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $newpoint = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $point; + $1 = $0; + $2 = ($1|0)!=(0|0); + if ($2) { + $3 = (__gcry_mpi_point_new(0)|0); + $newpoint = $3; + $4 = $newpoint; + $5 = $0; + _point_set($4,$5); + } else { + $newpoint = 0; + } + $6 = $newpoint; + STACKTOP = sp;return ($6|0); +} +function _point_set($d,$s) { + $d = $d|0; + $s = $s|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $d; + $1 = $s; + $2 = $0; + $3 = HEAP32[$2>>2]|0; + $4 = $1; + $5 = HEAP32[$4>>2]|0; + (__gcry_mpi_set($3,$5)|0); + $6 = $0; + $7 = ((($6)) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = $1; + $10 = ((($9)) + 4|0); + $11 = HEAP32[$10>>2]|0; + (__gcry_mpi_set($8,$11)|0); + $12 = $0; + $13 = ((($12)) + 8|0); + $14 = HEAP32[$13>>2]|0; + $15 = $1; + $16 = ((($15)) + 8|0); + $17 = HEAP32[$16>>2]|0; + (__gcry_mpi_set($14,$17)|0); + STACKTOP = sp;return; +} +function __gcry_ecc_eddsa_encodepoint($point,$ec,$x_in,$y_in,$with_prefix,$r_buffer,$r_buflen) { + $point = $point|0; + $ec = $ec|0; + $x_in = $x_in|0; + $y_in = $y_in|0; + $with_prefix = $with_prefix|0; + $r_buffer = $r_buffer|0; + $r_buflen = $r_buflen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $rc = 0, $vararg_buffer = 0, $x = 0, $y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $point; + $1 = $ec; + $2 = $x_in; + $3 = $y_in; + $4 = $with_prefix; + $5 = $r_buffer; + $6 = $r_buflen; + $7 = $2; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = $2; + $11 = $9; + } else { + $10 = (__gcry_mpi_new(0)|0); + $11 = $10; + } + $x = $11; + $12 = $3; + $13 = ($12|0)!=(0|0); + if ($13) { + $14 = $3; + $16 = $14; + } else { + $15 = (__gcry_mpi_new(0)|0); + $16 = $15; + } + $y = $16; + $17 = $x; + $18 = $y; + $19 = $0; + $20 = $1; + $21 = (__gcry_mpi_ec_get_affine($17,$18,$19,$20)|0); + $22 = ($21|0)!=(0); + if ($22) { + __gcry_log_error(35723,$vararg_buffer); + $rc = 63; + } else { + $23 = $x; + $24 = $y; + $25 = $1; + $26 = ((($25)) + 12|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27>>>0) / 8)&-1; + $29 = $4; + $30 = $5; + $31 = $6; + $32 = (_eddsa_encode_x_y($23,$24,$28,$29,$30,$31)|0); + $rc = $32; + } + $33 = $2; + $34 = ($33|0)!=(0|0); + if (!($34)) { + $35 = $x; + __gcry_mpi_free($35); + } + $36 = $3; + $37 = ($36|0)!=(0|0); + if ($37) { + $39 = $rc; + STACKTOP = sp;return ($39|0); + } + $38 = $y; + __gcry_mpi_free($38); + $39 = $rc; + STACKTOP = sp;return ($39|0); +} +function _eddsa_encode_x_y($x,$y,$minlen,$with_prefix,$r_buffer,$r_buflen) { + $x = $x|0; + $y = $y|0; + $minlen = $minlen|0; + $with_prefix = $with_prefix|0; + $r_buffer = $r_buffer|0; + $r_buflen = $r_buflen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $off = 0, $or$cond = 0, $rawmpi = 0, $rawmpilen = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $rawmpilen = sp + 4|0; + $1 = $x; + $2 = $y; + $3 = $minlen; + $4 = $with_prefix; + $5 = $r_buffer; + $6 = $r_buflen; + $7 = $4; + $8 = ($7|0)!=(0); + $9 = $8 ? 1 : 0; + $off = $9; + $10 = $2; + $11 = $3; + $12 = $off; + $13 = ($12|0)!=(0); + $14 = $13 ? -1 : 0; + $15 = (__gcry_mpi_get_buffer_extra($10,$11,$14,$rawmpilen,0)|0); + $rawmpi = $15; + $16 = $rawmpi; + $17 = ($16|0)!=(0|0); + if (!($17)) { + $18 = (_gpg_err_code_from_syserror()|0); + $0 = $18; + $43 = $0; + STACKTOP = sp;return ($43|0); + } + $19 = $1; + $20 = (__gcry_mpi_test_bit($19,0)|0); + $21 = ($20|0)!=(0); + $22 = HEAP32[$rawmpilen>>2]|0; + $23 = ($22|0)!=(0); + $or$cond = $21 & $23; + if ($or$cond) { + $24 = $off; + $25 = HEAP32[$rawmpilen>>2]|0; + $26 = (($24) + ($25))|0; + $27 = (($26) - 1)|0; + $28 = $rawmpi; + $29 = (($28) + ($27)|0); + $30 = HEAP8[$29>>0]|0; + $31 = $30&255; + $32 = $31 | 128; + $33 = $32&255; + HEAP8[$29>>0] = $33; + } + $34 = $off; + $35 = ($34|0)!=(0); + if ($35) { + $36 = $rawmpi; + HEAP8[$36>>0] = 64; + } + $37 = $rawmpi; + $38 = $5; + HEAP32[$38>>2] = $37; + $39 = HEAP32[$rawmpilen>>2]|0; + $40 = $off; + $41 = (($39) + ($40))|0; + $42 = $6; + HEAP32[$42>>2] = $41; + $0 = 0; + $43 = $0; + STACKTOP = sp;return ($43|0); +} +function __gcry_ecc_eddsa_ensure_compact($value,$nbits) { + $value = $value|0; + $nbits = $nbits|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $8 = 0, $9 = 0, $buf = 0, $enc = 0, $enclen = 0, $rawmpilen = 0, $rc = 0; + var $x = 0, $y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $rawmpilen = sp + 16|0; + $x = sp + 12|0; + $y = sp + 8|0; + $enc = sp + 4|0; + $enclen = sp; + $1 = $value; + $2 = $nbits; + $3 = $1; + $4 = ($3|0)!=(0|0); + if ($4) { + $5 = $1; + $6 = ((($5)) + 12|0); + $7 = HEAP32[$6>>2]|0; + $8 = $7 & 4; + $9 = ($8|0)!=(0); + if ($9) { + $10 = $1; + $11 = (__gcry_mpi_get_opaque($10,$rawmpilen)|0); + $buf = $11; + $12 = $buf; + $13 = ($12|0)!=(0|0); + if (!($13)) { + $0 = 65; + $74 = $0; + STACKTOP = sp;return ($74|0); + } + $14 = HEAP32[$rawmpilen>>2]|0; + $15 = (($14) + 7)|0; + $16 = (($15>>>0) / 8)&-1; + HEAP32[$rawmpilen>>2] = $16; + $17 = HEAP32[$rawmpilen>>2]|0; + $18 = ($17>>>0)>(1); + do { + if ($18) { + $19 = HEAP32[$rawmpilen>>2]|0; + $20 = (($19>>>0) % 2)&-1; + $21 = ($20|0)!=(0); + if ($21) { + $22 = $buf; + $23 = HEAP8[$22>>0]|0; + $24 = $23&255; + $25 = ($24|0)==(4); + $26 = $buf; + if (!($25)) { + $62 = HEAP8[$26>>0]|0; + $63 = $62&255; + $64 = ($63|0)==(64); + if (!($64)) { + break; + } + $65 = $1; + $66 = $buf; + $67 = ((($66)) + 1|0); + $68 = HEAP32[$rawmpilen>>2]|0; + $69 = (($68) - 1)|0; + $70 = $69<<3; + $71 = (__gcry_mpi_set_opaque_copy($65,$67,$70)|0); + $72 = ($71|0)!=(0|0); + if ($72) { + break; + } + $73 = (_gpg_err_code_from_syserror()|0); + $0 = $73; + $74 = $0; + STACKTOP = sp;return ($74|0); + } + $27 = ((($26)) + 1|0); + $28 = HEAP32[$rawmpilen>>2]|0; + $29 = (($28) - 1)|0; + $30 = (($29>>>0) / 2)&-1; + $31 = (__gcry_mpi_scan($x,1,$27,$30,0)|0); + $rc = $31; + $32 = $rc; + $33 = ($32|0)!=(0); + if ($33) { + $34 = $rc; + $0 = $34; + $74 = $0; + STACKTOP = sp;return ($74|0); + } + $35 = $buf; + $36 = ((($35)) + 1|0); + $37 = HEAP32[$rawmpilen>>2]|0; + $38 = (($37) - 1)|0; + $39 = (($38>>>0) / 2)&-1; + $40 = (($36) + ($39)|0); + $41 = HEAP32[$rawmpilen>>2]|0; + $42 = (($41) - 1)|0; + $43 = (($42>>>0) / 2)&-1; + $44 = (__gcry_mpi_scan($y,1,$40,$43,0)|0); + $rc = $44; + $45 = $rc; + $46 = ($45|0)!=(0); + $47 = HEAP32[$x>>2]|0; + if ($46) { + __gcry_mpi_free($47); + $48 = $rc; + $0 = $48; + $74 = $0; + STACKTOP = sp;return ($74|0); + } + $49 = HEAP32[$y>>2]|0; + $50 = $2; + $51 = (($50>>>0) / 8)&-1; + $52 = (_eddsa_encode_x_y($47,$49,$51,0,$enc,$enclen)|0); + $rc = $52; + $53 = HEAP32[$x>>2]|0; + __gcry_mpi_free($53); + $54 = HEAP32[$y>>2]|0; + __gcry_mpi_free($54); + $55 = $rc; + $56 = ($55|0)!=(0); + if (!($56)) { + $58 = $1; + $59 = HEAP32[$enc>>2]|0; + $60 = HEAP32[$enclen>>2]|0; + $61 = $60<<3; + (__gcry_mpi_set_opaque($58,$59,$61)|0); + break; + } + $57 = $rc; + $0 = $57; + $74 = $0; + STACKTOP = sp;return ($74|0); + } + } + } while(0); + $0 = 0; + $74 = $0; + STACKTOP = sp;return ($74|0); + } + } + $0 = 65; + $74 = $0; + STACKTOP = sp;return ($74|0); +} +function __gcry_ecc_eddsa_recover_x($x,$y,$sign,$ec) { + $x = $x|0; + $y = $y|0; + $sign = $sign|0; + $ec = $ec|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; + var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; + var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; + var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; + var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $rc = 0, $t = 0, $u = 0; + var $v = 0, $v3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $x; + $2 = $y; + $3 = $sign; + $4 = $ec; + $rc = 0; + $5 = $4; + $6 = ((($5)) + 4|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(1); + if ($8) { + $0 = 69; + $136 = $0; + STACKTOP = sp;return ($136|0); + } + $9 = HEAP32[17700]|0; + $10 = ($9|0)!=(0|0); + if (!($10)) { + $11 = (_scanval_826(35776)|0); + HEAP32[17700] = $11; + } + $12 = HEAP32[17701]|0; + $13 = ($12|0)!=(0|0); + if (!($13)) { + $14 = (__gcry_mpi_set_ui(0,7)|0); + HEAP32[17701] = $14; + } + $15 = (__gcry_mpi_new(0)|0); + $u = $15; + $16 = (__gcry_mpi_new(0)|0); + $v = $16; + $17 = (__gcry_mpi_new(0)|0); + $v3 = $17; + $18 = (__gcry_mpi_new(0)|0); + $t = $18; + $19 = $u; + $20 = $2; + $21 = $2; + $22 = $4; + $23 = ((($22)) + 16|0); + $24 = HEAP32[$23>>2]|0; + __gcry_mpi_mulm($19,$20,$21,$24); + $25 = $v; + $26 = $4; + $27 = ((($26)) + 24|0); + $28 = HEAP32[$27>>2]|0; + $29 = $u; + $30 = $4; + $31 = ((($30)) + 16|0); + $32 = HEAP32[$31>>2]|0; + __gcry_mpi_mulm($25,$28,$29,$32); + $33 = $u; + $34 = $u; + __gcry_mpi_sub_ui($33,$34,1); + $35 = $v; + $36 = $v; + __gcry_mpi_add_ui($35,$36,1); + $37 = $v3; + $38 = $v; + $39 = (__gcry_mpi_const(3)|0); + $40 = $4; + $41 = ((($40)) + 16|0); + $42 = HEAP32[$41>>2]|0; + __gcry_mpi_powm($37,$38,$39,$42); + $43 = $t; + $44 = $v; + $45 = HEAP32[17701]|0; + $46 = $4; + $47 = ((($46)) + 16|0); + $48 = HEAP32[$47>>2]|0; + __gcry_mpi_powm($43,$44,$45,$48); + $49 = $t; + $50 = $t; + $51 = $u; + $52 = $4; + $53 = ((($52)) + 16|0); + $54 = HEAP32[$53>>2]|0; + __gcry_mpi_mulm($49,$50,$51,$54); + $55 = $t; + $56 = $t; + $57 = HEAP32[17700]|0; + $58 = $4; + $59 = ((($58)) + 16|0); + $60 = HEAP32[$59>>2]|0; + __gcry_mpi_powm($55,$56,$57,$60); + $61 = $t; + $62 = $t; + $63 = $u; + $64 = $4; + $65 = ((($64)) + 16|0); + $66 = HEAP32[$65>>2]|0; + __gcry_mpi_mulm($61,$62,$63,$66); + $67 = $1; + $68 = $t; + $69 = $v3; + $70 = $4; + $71 = ((($70)) + 16|0); + $72 = HEAP32[$71>>2]|0; + __gcry_mpi_mulm($67,$68,$69,$72); + $73 = $t; + $74 = $1; + $75 = $1; + $76 = $4; + $77 = ((($76)) + 16|0); + $78 = HEAP32[$77>>2]|0; + __gcry_mpi_mulm($73,$74,$75,$78); + $79 = $t; + $80 = $t; + $81 = $v; + $82 = $4; + $83 = ((($82)) + 16|0); + $84 = HEAP32[$83>>2]|0; + __gcry_mpi_mulm($79,$80,$81,$84); + $85 = $t; + $86 = $t; + __gcry_mpi_neg($85,$86); + $87 = $t; + $88 = $u; + $89 = (__gcry_mpi_cmp($87,$88)|0); + $90 = ($89|0)!=(0); + if (!($90)) { + $91 = HEAP32[17702]|0; + $92 = ($91|0)!=(0|0); + if (!($92)) { + $93 = (_scanval_826(35876)|0); + HEAP32[17702] = $93; + } + $94 = $1; + $95 = $1; + $96 = HEAP32[17702]|0; + $97 = $4; + $98 = ((($97)) + 16|0); + $99 = HEAP32[$98>>2]|0; + __gcry_mpi_mulm($94,$95,$96,$99); + $100 = $t; + $101 = $1; + $102 = $1; + $103 = $4; + $104 = ((($103)) + 16|0); + $105 = HEAP32[$104>>2]|0; + __gcry_mpi_mulm($100,$101,$102,$105); + $106 = $t; + $107 = $t; + $108 = $v; + $109 = $4; + $110 = ((($109)) + 16|0); + $111 = HEAP32[$110>>2]|0; + __gcry_mpi_mulm($106,$107,$108,$111); + $112 = $t; + $113 = $t; + __gcry_mpi_neg($112,$113); + $114 = $t; + $115 = $u; + $116 = (__gcry_mpi_cmp($114,$115)|0); + $117 = ($116|0)!=(0); + if (!($117)) { + $rc = 65; + } + } + $118 = $1; + $119 = (__gcry_mpi_test_bit($118,0)|0); + $120 = $3; + $121 = ($120|0)!=(0); + $122 = $121 ^ 1; + $123 = $122 ^ 1; + $124 = $123&1; + $125 = ($119|0)!=($124|0); + if ($125) { + $126 = $1; + $127 = $4; + $128 = ((($127)) + 16|0); + $129 = HEAP32[$128>>2]|0; + $130 = $1; + __gcry_mpi_sub($126,$129,$130); + } + $131 = $t; + __gcry_mpi_free($131); + $132 = $v3; + __gcry_mpi_free($132); + $133 = $v; + __gcry_mpi_free($133); + $134 = $u; + __gcry_mpi_free($134); + $135 = $rc; + $0 = $135; + $136 = $0; + STACKTOP = sp;return ($136|0); +} +function _scanval_826($string) { + $string = $string|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $rc = 0, $val = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $val = sp + 4|0; + $0 = $string; + $1 = $0; + $2 = (__gcry_mpi_scan($val,4,$1,0,0)|0); + $rc = $2; + $3 = $rc; + $4 = ($3|0)!=(0); + if ($4) { + $5 = $rc; + $6 = (_gpg_strerror($5)|0); + HEAP32[$vararg_buffer>>2] = $6; + __gcry_log_fatal(35841,$vararg_buffer); + // unreachable; + } else { + $7 = HEAP32[$val>>2]|0; + STACKTOP = sp;return ($7|0); + } + return (0)|0; +} +function __gcry_ecc_eddsa_decodepoint($pk,$ctx,$result,$r_encpk,$r_encpklen) { + $pk = $pk|0; + $ctx = $ctx|0; + $result = $result|0; + $r_encpk = $r_encpk|0; + $r_encpklen = $r_encpklen|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $buf = 0, $or$cond = 0, $rawmpi = 0, $rawmpilen = 0, $rc = 0, $sign = 0, $x = 0, $y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $rawmpilen = sp + 16|0; + $x = sp + 4|0; + $y = sp; + $1 = $pk; + $2 = $ctx; + $3 = $result; + $4 = $r_encpk; + $5 = $r_encpklen; + $6 = $1; + $7 = ($6|0)!=(0|0); + do { + if ($7) { + $8 = $1; + $9 = ((($8)) + 12|0); + $10 = HEAP32[$9>>2]|0; + $11 = $10 & 4; + $12 = ($11|0)!=(0); + if ($12) { + $13 = $1; + $14 = (__gcry_mpi_get_opaque($13,$rawmpilen)|0); + $buf = $14; + $15 = $buf; + $16 = ($15|0)!=(0|0); + if (!($16)) { + $0 = 65; + $159 = $0; + STACKTOP = sp;return ($159|0); + } + $17 = HEAP32[$rawmpilen>>2]|0; + $18 = (($17) + 7)|0; + $19 = (($18>>>0) / 8)&-1; + HEAP32[$rawmpilen>>2] = $19; + $20 = HEAP32[$rawmpilen>>2]|0; + $21 = ($20>>>0)>(1); + do { + if ($21) { + $22 = HEAP32[$rawmpilen>>2]|0; + $23 = (($22>>>0) % 2)&-1; + $24 = ($23|0)!=(0); + if ($24) { + $25 = $buf; + $26 = HEAP8[$25>>0]|0; + $27 = $26&255; + $28 = ($27|0)==(4); + $29 = $buf; + if (!($28)) { + $78 = HEAP8[$29>>0]|0; + $79 = $78&255; + $80 = ($79|0)==(64); + if (!($80)) { + break; + } + $81 = HEAP32[$rawmpilen>>2]|0; + $82 = (($81) + -1)|0; + HEAP32[$rawmpilen>>2] = $82; + $83 = $buf; + $84 = ((($83)) + 1|0); + $buf = $84; + break; + } + $30 = ((($29)) + 1|0); + $31 = HEAP32[$rawmpilen>>2]|0; + $32 = (($31) - 1)|0; + $33 = (($32>>>0) / 2)&-1; + $34 = (__gcry_mpi_scan($x,1,$30,$33,0)|0); + $rc = $34; + $35 = $rc; + $36 = ($35|0)!=(0); + if ($36) { + $37 = $rc; + $0 = $37; + $159 = $0; + STACKTOP = sp;return ($159|0); + } + $38 = $buf; + $39 = ((($38)) + 1|0); + $40 = HEAP32[$rawmpilen>>2]|0; + $41 = (($40) - 1)|0; + $42 = (($41>>>0) / 2)&-1; + $43 = (($39) + ($42)|0); + $44 = HEAP32[$rawmpilen>>2]|0; + $45 = (($44) - 1)|0; + $46 = (($45>>>0) / 2)&-1; + $47 = (__gcry_mpi_scan($y,1,$43,$46,0)|0); + $rc = $47; + $48 = $rc; + $49 = ($48|0)!=(0); + if ($49) { + $50 = HEAP32[$x>>2]|0; + __gcry_mpi_free($50); + $51 = $rc; + $0 = $51; + $159 = $0; + STACKTOP = sp;return ($159|0); + } + $52 = $4; + $53 = ($52|0)!=(0|0); + if ($53) { + $54 = HEAP32[$x>>2]|0; + $55 = HEAP32[$y>>2]|0; + $56 = $2; + $57 = ((($56)) + 12|0); + $58 = HEAP32[$57>>2]|0; + $59 = (($58>>>0) / 8)&-1; + $60 = $4; + $61 = $5; + $62 = (_eddsa_encode_x_y($54,$55,$59,0,$60,$61)|0); + $rc = $62; + $63 = $rc; + $64 = ($63|0)!=(0); + if ($64) { + $65 = HEAP32[$x>>2]|0; + __gcry_mpi_free($65); + $66 = HEAP32[$y>>2]|0; + __gcry_mpi_free($66); + $67 = $rc; + $0 = $67; + $159 = $0; + STACKTOP = sp;return ($159|0); + } + } + $68 = $3; + $69 = HEAP32[$68>>2]|0; + $70 = HEAP32[$x>>2]|0; + __gcry_mpi_snatch($69,$70); + $71 = $3; + $72 = ((($71)) + 4|0); + $73 = HEAP32[$72>>2]|0; + $74 = HEAP32[$y>>2]|0; + __gcry_mpi_snatch($73,$74); + $75 = $3; + $76 = ((($75)) + 8|0); + $77 = HEAP32[$76>>2]|0; + (__gcry_mpi_set_ui($77,1)|0); + $0 = 0; + $159 = $0; + STACKTOP = sp;return ($159|0); + } + } + } while(0); + $85 = HEAP32[$rawmpilen>>2]|0; + $86 = ($85|0)!=(0); + $87 = HEAP32[$rawmpilen>>2]|0; + $88 = $86 ? $87 : 1; + $89 = (__gcry_malloc($88)|0); + $rawmpi = $89; + $90 = $rawmpi; + $91 = ($90|0)!=(0|0); + if ($91) { + $93 = $rawmpi; + $94 = $buf; + $95 = HEAP32[$rawmpilen>>2]|0; + _memcpy(($93|0),($94|0),($95|0))|0; + $96 = $rawmpi; + $97 = HEAP32[$rawmpilen>>2]|0; + _reverse_buffer_831($96,$97); + break; + } + $92 = (_gpg_err_code_from_syserror()|0); + $0 = $92; + $159 = $0; + STACKTOP = sp;return ($159|0); + } else { + label = 21; + } + } else { + label = 21; + } + } while(0); + if ((label|0) == 21) { + $98 = $1; + $99 = $2; + $100 = ((($99)) + 12|0); + $101 = HEAP32[$100>>2]|0; + $102 = (($101>>>0) / 8)&-1; + $103 = (__gcry_mpi_get_buffer($98,$102,$rawmpilen,0)|0); + $rawmpi = $103; + $104 = $rawmpi; + $105 = ($104|0)!=(0|0); + if (!($105)) { + $106 = (_gpg_err_code_from_syserror()|0); + $0 = $106; + $159 = $0; + STACKTOP = sp;return ($159|0); + } + } + $107 = HEAP32[$rawmpilen>>2]|0; + $108 = ($107|0)!=(0); + if ($108) { + $109 = $rawmpi; + $110 = HEAP8[$109>>0]|0; + $111 = $110&255; + $112 = $111 & 128; + $113 = ($112|0)!=(0); + $114 = $113 ^ 1; + $115 = $114 ^ 1; + $116 = $115&1; + $sign = $116; + $117 = $rawmpi; + $118 = HEAP8[$117>>0]|0; + $119 = $118&255; + $120 = $119 & 127; + $121 = $120&255; + HEAP8[$117>>0] = $121; + } else { + $sign = 0; + } + $122 = $3; + $123 = ((($122)) + 4|0); + $124 = HEAP32[$123>>2]|0; + $125 = $rawmpi; + $126 = HEAP32[$rawmpilen>>2]|0; + __gcry_mpi_set_buffer($124,$125,$126,0); + $127 = $4; + $128 = ($127|0)!=(0|0); + if ($128) { + $129 = $sign; + $130 = ($129|0)!=(0); + $131 = HEAP32[$rawmpilen>>2]|0; + $132 = ($131|0)!=(0); + $or$cond = $130 & $132; + if ($or$cond) { + $133 = $rawmpi; + $134 = HEAP8[$133>>0]|0; + $135 = $134&255; + $136 = $135 | 128; + $137 = $136&255; + HEAP8[$133>>0] = $137; + } + $138 = $rawmpi; + $139 = HEAP32[$rawmpilen>>2]|0; + _reverse_buffer_831($138,$139); + $140 = $rawmpi; + $141 = $4; + HEAP32[$141>>2] = $140; + $142 = $5; + $143 = ($142|0)!=(0|0); + if ($143) { + $144 = HEAP32[$rawmpilen>>2]|0; + $145 = $5; + HEAP32[$145>>2] = $144; + } + } else { + $146 = $rawmpi; + __gcry_free($146); + } + $147 = $3; + $148 = HEAP32[$147>>2]|0; + $149 = $3; + $150 = ((($149)) + 4|0); + $151 = HEAP32[$150>>2]|0; + $152 = $sign; + $153 = $2; + $154 = (__gcry_ecc_eddsa_recover_x($148,$151,$152,$153)|0); + $rc = $154; + $155 = $3; + $156 = ((($155)) + 8|0); + $157 = HEAP32[$156>>2]|0; + (__gcry_mpi_set_ui($157,1)|0); + $158 = $rc; + $0 = $158; + $159 = $0; + STACKTOP = sp;return ($159|0); +} +function _reverse_buffer_831($buffer,$length) { + $buffer = $buffer|0; + $length = $length|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $tmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $buffer; + $1 = $length; + $i = 0; + while(1) { + $2 = $i; + $3 = $1; + $4 = (($3>>>0) / 2)&-1; + $5 = ($2>>>0)<($4>>>0); + if (!($5)) { + break; + } + $6 = $i; + $7 = $0; + $8 = (($7) + ($6)|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $tmp = $10; + $11 = $1; + $12 = (($11) - 1)|0; + $13 = $i; + $14 = (($12) - ($13))|0; + $15 = $0; + $16 = (($15) + ($14)|0); + $17 = HEAP8[$16>>0]|0; + $18 = $i; + $19 = $0; + $20 = (($19) + ($18)|0); + HEAP8[$20>>0] = $17; + $21 = $tmp; + $22 = $21&255; + $23 = $1; + $24 = (($23) - 1)|0; + $25 = $i; + $26 = (($24) - ($25))|0; + $27 = $0; + $28 = (($27) + ($26)|0); + HEAP8[$28>>0] = $22; + $29 = $i; + $30 = (($29) + 1)|0; + $i = $30; + } + STACKTOP = sp;return; +} +function __gcry_ecc_eddsa_compute_h_d($r_digest,$d,$ec) { + $r_digest = $r_digest|0; + $d = $d|0; + $ec = $ec|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $b = 0, $digest = 0, $hashalgo = 0, $hvec = 0, $rawmpi = 0, $rawmpilen = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $rawmpilen = sp + 44|0; + $hvec = sp + 8|0; + $1 = $r_digest; + $2 = $d; + $3 = $ec; + $rawmpi = 0; + $4 = $1; + HEAP32[$4>>2] = 0; + $hashalgo = 10; + $5 = $hashalgo; + $6 = ($5|0)!=(10); + if ($6) { + $0 = 5; + $66 = $0; + STACKTOP = sp;return ($66|0); + } + $7 = $3; + $8 = ((($7)) + 12|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 7)|0; + $11 = (($10>>>0) / 8)&-1; + $b = $11; + $12 = $b; + $13 = ($12|0)!=(32); + if ($13) { + $0 = 63; + $66 = $0; + STACKTOP = sp;return ($66|0); + } + $14 = $b; + $15 = (__gcry_calloc_secure(2,$14)|0); + $digest = $15; + $16 = $digest; + $17 = ($16|0)!=(0|0); + if (!($17)) { + $18 = (_gpg_err_code_from_syserror()|0); + $0 = $18; + $66 = $0; + STACKTOP = sp;return ($66|0); + } + ;HEAP32[$hvec>>2]=0|0;HEAP32[$hvec+4>>2]=0|0;HEAP32[$hvec+8>>2]=0|0;HEAP32[$hvec+12>>2]=0|0;HEAP32[$hvec+16>>2]=0|0;HEAP32[$hvec+20>>2]=0|0;HEAP32[$hvec+24>>2]=0|0;HEAP32[$hvec+28>>2]=0|0; + $19 = $2; + $20 = (__gcry_mpi_get_buffer($19,0,$rawmpilen,0)|0); + $rawmpi = $20; + $21 = $rawmpi; + $22 = ($21|0)!=(0|0); + $23 = $digest; + if (!($22)) { + __gcry_free($23); + $24 = (_gpg_err_code_from_syserror()|0); + $0 = $24; + $66 = $0; + STACKTOP = sp;return ($66|0); + } + $25 = ((($hvec)) + 12|0); + HEAP32[$25>>2] = $23; + $26 = ((($hvec)) + 4|0); + HEAP32[$26>>2] = 0; + $27 = $b; + $28 = HEAP32[$rawmpilen>>2]|0; + $29 = ($27>>>0)>($28>>>0); + if ($29) { + $30 = $b; + $31 = HEAP32[$rawmpilen>>2]|0; + $32 = (($30) - ($31))|0; + $34 = $32; + } else { + $34 = 0; + } + $33 = ((($hvec)) + 8|0); + HEAP32[$33>>2] = $34; + $35 = $rawmpi; + $36 = ((($hvec)) + 16|0); + $37 = ((($36)) + 12|0); + HEAP32[$37>>2] = $35; + $38 = ((($hvec)) + 16|0); + $39 = ((($38)) + 4|0); + HEAP32[$39>>2] = 0; + $40 = HEAP32[$rawmpilen>>2]|0; + $41 = ((($hvec)) + 16|0); + $42 = ((($41)) + 8|0); + HEAP32[$42>>2] = $40; + $43 = $hashalgo; + $44 = $digest; + $45 = (__gcry_md_hash_buffers($43,0,$44,$hvec,2)|0); + $rc = $45; + $46 = $rawmpi; + __gcry_free($46); + $47 = $rc; + $48 = ($47|0)!=(0); + $49 = $digest; + if ($48) { + __gcry_free($49); + $50 = $rc; + $0 = $50; + $66 = $0; + STACKTOP = sp;return ($66|0); + } else { + _reverse_buffer_831($49,32); + $51 = $digest; + $52 = HEAP8[$51>>0]|0; + $53 = $52&255; + $54 = $53 & 127; + $55 = $54 | 64; + $56 = $55&255; + $57 = $digest; + HEAP8[$57>>0] = $56; + $58 = $digest; + $59 = ((($58)) + 31|0); + $60 = HEAP8[$59>>0]|0; + $61 = $60&255; + $62 = $61 & 248; + $63 = $62&255; + HEAP8[$59>>0] = $63; + $64 = $digest; + $65 = $1; + HEAP32[$65>>2] = $64; + $0 = 0; + $66 = $0; + STACKTOP = sp;return ($66|0); + } + return (0)|0; +} +function __gcry_ecc_eddsa_genkey($sk,$E,$ctx,$flags) { + $sk = $sk|0; + $E = $E|0; + $ctx = $ctx|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0; + var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; + var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $Q = 0, $a = 0, $b = 0, $dbuf = 0, $dlen = 0, $hash_d = 0, $hvec = 0, $random_level = 0, $rc = 0; + var $x = 0, $y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $Q = sp + 36|0; + $hvec = sp + 8|0; + $0 = $sk; + $1 = $E; + $2 = $ctx; + $3 = $flags; + $b = 32; + $hash_d = 0; + __gcry_mpi_point_init($Q); + ;HEAP32[$hvec>>2]=0|0;HEAP32[$hvec+4>>2]=0|0;HEAP32[$hvec+8>>2]=0|0;HEAP32[$hvec+12>>2]=0|0; + $4 = $3; + $5 = $4 & 32; + $6 = ($5|0)!=(0); + if ($6) { + $random_level = 1; + } else { + $random_level = 2; + } + $7 = (__gcry_mpi_snew(0)|0); + $a = $7; + $8 = (__gcry_mpi_new(0)|0); + $x = $8; + $9 = (__gcry_mpi_new(0)|0); + $y = $9; + $10 = $b; + $11 = $10<<1; + $12 = (__gcry_malloc_secure($11)|0); + $hash_d = $12; + $13 = $hash_d; + $14 = ($13|0)!=(0|0); + if (!($14)) { + $15 = (_gpg_error_from_syserror()|0); + $rc = $15; + __gcry_mpi_point_free_parts($Q); + $106 = $a; + __gcry_mpi_release($106); + $107 = $x; + __gcry_mpi_release($107); + $108 = $y; + __gcry_mpi_release($108); + $109 = $hash_d; + __gcry_free($109); + $110 = $rc; + STACKTOP = sp;return ($110|0); + } + $16 = $b; + $dlen = $16; + $17 = $dlen; + $18 = $random_level; + $19 = (__gcry_random_bytes_secure($17,$18)|0); + $dbuf = $19; + $20 = $dbuf; + $21 = ((($hvec)) + 12|0); + HEAP32[$21>>2] = $20; + $22 = $dlen; + $23 = ((($hvec)) + 8|0); + HEAP32[$23>>2] = $22; + $24 = $hash_d; + $25 = (__gcry_md_hash_buffers(10,0,$24,$hvec,1)|0); + $rc = $25; + $26 = $rc; + $27 = ($26|0)!=(0); + if ($27) { + __gcry_mpi_point_free_parts($Q); + $106 = $a; + __gcry_mpi_release($106); + $107 = $x; + __gcry_mpi_release($107); + $108 = $y; + __gcry_mpi_release($108); + $109 = $hash_d; + __gcry_free($109); + $110 = $rc; + STACKTOP = sp;return ($110|0); + } + $28 = $dbuf; + $29 = $dlen; + $30 = $29<<3; + $31 = (__gcry_mpi_set_opaque(0,$28,$30)|0); + $32 = $0; + $33 = ((($32)) + 56|0); + HEAP32[$33>>2] = $31; + $dbuf = 0; + $34 = $hash_d; + _reverse_buffer_831($34,32); + $35 = $hash_d; + $36 = HEAP8[$35>>0]|0; + $37 = $36&255; + $38 = $37 & 127; + $39 = $38 | 64; + $40 = $39&255; + $41 = $hash_d; + HEAP8[$41>>0] = $40; + $42 = $hash_d; + $43 = ((($42)) + 31|0); + $44 = HEAP8[$43>>0]|0; + $45 = $44&255; + $46 = $45 & 248; + $47 = $46&255; + HEAP8[$43>>0] = $47; + $48 = $a; + $49 = $hash_d; + __gcry_mpi_set_buffer($48,$49,32,0); + $50 = $hash_d; + __gcry_free($50); + $hash_d = 0; + $51 = $a; + $52 = $1; + $53 = ((($52)) + 20|0); + $54 = $2; + __gcry_mpi_ec_mul_point($Q,$51,$53,$54); + $55 = (__gcry_get_debug_flag(1)|0); + $56 = ($55|0)!=(0); + if ($56) { + $57 = $2; + __gcry_mpi_point_log(35941,$Q,$57); + } + $58 = $1; + $59 = HEAP32[$58>>2]|0; + $60 = $0; + HEAP32[$60>>2] = $59; + $61 = $1; + $62 = ((($61)) + 4|0); + $63 = HEAP32[$62>>2]|0; + $64 = $0; + $65 = ((($64)) + 4|0); + HEAP32[$65>>2] = $63; + $66 = $1; + $67 = ((($66)) + 8|0); + $68 = HEAP32[$67>>2]|0; + $69 = (__gcry_mpi_copy($68)|0); + $70 = $0; + $71 = ((($70)) + 8|0); + HEAP32[$71>>2] = $69; + $72 = $1; + $73 = ((($72)) + 12|0); + $74 = HEAP32[$73>>2]|0; + $75 = (__gcry_mpi_copy($74)|0); + $76 = $0; + $77 = ((($76)) + 12|0); + HEAP32[$77>>2] = $75; + $78 = $1; + $79 = ((($78)) + 16|0); + $80 = HEAP32[$79>>2]|0; + $81 = (__gcry_mpi_copy($80)|0); + $82 = $0; + $83 = ((($82)) + 16|0); + HEAP32[$83>>2] = $81; + $84 = $0; + $85 = ((($84)) + 20|0); + __gcry_mpi_point_init($85); + $86 = $0; + $87 = ((($86)) + 20|0); + $88 = $1; + $89 = ((($88)) + 20|0); + _point_set_835($87,$89); + $90 = $1; + $91 = ((($90)) + 32|0); + $92 = HEAP32[$91>>2]|0; + $93 = (__gcry_mpi_copy($92)|0); + $94 = $0; + $95 = ((($94)) + 32|0); + HEAP32[$95>>2] = $93; + $96 = $1; + $97 = ((($96)) + 36|0); + $98 = HEAP32[$97>>2]|0; + $99 = (__gcry_mpi_copy($98)|0); + $100 = $0; + $101 = ((($100)) + 36|0); + HEAP32[$101>>2] = $99; + $102 = $0; + $103 = ((($102)) + 44|0); + __gcry_mpi_point_init($103); + $104 = $0; + $105 = ((($104)) + 44|0); + _point_set_835($105,$Q); + __gcry_mpi_point_free_parts($Q); + $106 = $a; + __gcry_mpi_release($106); + $107 = $x; + __gcry_mpi_release($107); + $108 = $y; + __gcry_mpi_release($108); + $109 = $hash_d; + __gcry_free($109); + $110 = $rc; + STACKTOP = sp;return ($110|0); +} +function _gpg_error_from_syserror() { + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (_gpg_err_code_from_syserror()|0); + $1 = (_gpg_error_832($0)|0); + return ($1|0); +} +function _gpg_error_832($code) { + $code = $code|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $code; + $1 = $0; + $2 = (_gpg_err_make_833(1,$1)|0); + STACKTOP = sp;return ($2|0); +} +function _gpg_err_make_833($source,$code) { + $source = $source|0; + $code = $code|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $source; + $1 = $code; + $2 = $1; + $3 = ($2|0)==(0); + if ($3) { + $10 = 0; + STACKTOP = sp;return ($10|0); + } + $4 = $0; + $5 = $4 & 127; + $6 = $5 << 24; + $7 = $1; + $8 = $7 & 65535; + $9 = $6 | $8; + $10 = $9; + STACKTOP = sp;return ($10|0); +} +function _point_set_835($d,$s) { + $d = $d|0; + $s = $s|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $d; + $1 = $s; + $2 = $0; + $3 = HEAP32[$2>>2]|0; + $4 = $1; + $5 = HEAP32[$4>>2]|0; + (__gcry_mpi_set($3,$5)|0); + $6 = $0; + $7 = ((($6)) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = $1; + $10 = ((($9)) + 4|0); + $11 = HEAP32[$10>>2]|0; + (__gcry_mpi_set($8,$11)|0); + $12 = $0; + $13 = ((($12)) + 8|0); + $14 = HEAP32[$13>>2]|0; + $15 = $1; + $16 = ((($15)) + 8|0); + $17 = HEAP32[$16>>2]|0; + (__gcry_mpi_set($14,$17)|0); + STACKTOP = sp;return; +} +function __gcry_ecc_eddsa_sign($input,$skey,$r_r,$s,$hashalgo,$pk) { + $input = $input|0; + $skey = $skey|0; + $r_r = $r_r|0; + $s = $s|0; + $hashalgo = $hashalgo|0; + $pk = $pk|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $I = 0, $Q = 0, $a = 0, $b = 0, $ctx = 0; + var $digest = 0, $encpk = 0, $encpklen = 0, $hvec = 0, $mbuf = 0, $mlen = 0, $r = 0, $rawmpi = 0, $rawmpilen = 0, $rc = 0, $tmp = 0, $x = 0, $y = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $tmp = sp + 116|0; + $digest = sp + 112|0; + $hvec = sp + 64|0; + $rawmpi = sp + 52|0; + $rawmpilen = sp + 48|0; + $encpk = sp + 44|0; + $encpklen = sp + 40|0; + $I = sp + 28|0; + $Q = sp + 16|0; + $1 = $input; + $2 = $skey; + $3 = $r_r; + $4 = $s; + $5 = $hashalgo; + $6 = $pk; + $ctx = 0; + HEAP32[$rawmpi>>2] = 0; + HEAP32[$encpk>>2] = 0; + dest=$hvec; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $7 = $1; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = $1; + $10 = ((($9)) + 12|0); + $11 = HEAP32[$10>>2]|0; + $12 = $11 & 4; + $13 = ($12|0)!=(0); + if ($13) { + __gcry_mpi_point_init($I); + __gcry_mpi_point_init($Q); + $14 = (__gcry_mpi_snew(0)|0); + $a = $14; + $15 = (__gcry_mpi_new(0)|0); + $x = $15; + $16 = (__gcry_mpi_new(0)|0); + $y = $16; + $17 = (__gcry_mpi_new(0)|0); + $r = $17; + $18 = $2; + $19 = HEAP32[$18>>2]|0; + $20 = $2; + $21 = ((($20)) + 4|0); + $22 = HEAP32[$21>>2]|0; + $23 = $2; + $24 = ((($23)) + 8|0); + $25 = HEAP32[$24>>2]|0; + $26 = $2; + $27 = ((($26)) + 12|0); + $28 = HEAP32[$27>>2]|0; + $29 = $2; + $30 = ((($29)) + 16|0); + $31 = HEAP32[$30>>2]|0; + $32 = (__gcry_mpi_ec_p_internal_new($19,$22,0,$25,$28,$31)|0); + $ctx = $32; + $33 = $ctx; + $34 = ((($33)) + 12|0); + $35 = HEAP32[$34>>2]|0; + $36 = (($35) + 7)|0; + $37 = (($36>>>0) / 8)&-1; + $b = $37; + $38 = $b; + $39 = ($38|0)!=(32); + if ($39) { + $0 = 63; + $194 = $0; + STACKTOP = sp;return ($194|0); + } + $40 = $2; + $41 = ((($40)) + 56|0); + $42 = HEAP32[$41>>2]|0; + $43 = $ctx; + $44 = (__gcry_ecc_eddsa_compute_h_d($digest,$42,$43)|0); + $rc = $44; + $45 = $rc; + $46 = ($45|0)!=(0); + do { + if (!($46)) { + $47 = $a; + $48 = HEAP32[$digest>>2]|0; + __gcry_mpi_set_buffer($47,$48,32,0); + $49 = $6; + $50 = ($49|0)!=(0|0); + if ($50) { + $51 = $6; + $52 = $ctx; + $53 = (__gcry_ecc_eddsa_decodepoint($51,$52,$Q,$encpk,$encpklen)|0); + $rc = $53; + $54 = $rc; + $55 = ($54|0)!=(0); + if ($55) { + break; + } + $56 = (__gcry_get_debug_flag(1)|0); + $57 = ($56|0)!=(0); + if ($57) { + $58 = HEAP32[$encpk>>2]|0; + $59 = HEAP32[$encpklen>>2]|0; + __gcry_log_printhex(35955,$58,$59); + } + $60 = $ctx; + $61 = (__gcry_mpi_ec_curve_point($Q,$60)|0); + $62 = ($61|0)!=(0); + if (!($62)) { + $rc = 195; + break; + } + } else { + $63 = $a; + $64 = $2; + $65 = ((($64)) + 20|0); + $66 = $ctx; + __gcry_mpi_ec_mul_point($Q,$63,$65,$66); + $67 = $ctx; + $68 = $x; + $69 = $y; + $70 = (__gcry_ecc_eddsa_encodepoint($Q,$67,$68,$69,0,$encpk,$encpklen)|0); + $rc = $70; + $71 = $rc; + $72 = ($71|0)!=(0); + if ($72) { + break; + } + $73 = (__gcry_get_debug_flag(1)|0); + $74 = ($73|0)!=(0); + if ($74) { + $75 = HEAP32[$encpk>>2]|0; + $76 = HEAP32[$encpklen>>2]|0; + __gcry_log_printhex(35962,$75,$76); + } + } + $77 = $1; + $78 = (__gcry_mpi_get_opaque($77,$tmp)|0); + $mbuf = $78; + $79 = HEAP32[$tmp>>2]|0; + $80 = (($79) + 7)|0; + $81 = (($80>>>0) / 8)&-1; + $mlen = $81; + $82 = (__gcry_get_debug_flag(1)|0); + $83 = ($82|0)!=(0); + if ($83) { + $84 = $mbuf; + $85 = $mlen; + __gcry_log_printhex(35969,$84,$85); + } + $86 = HEAP32[$digest>>2]|0; + $87 = ((($hvec)) + 12|0); + HEAP32[$87>>2] = $86; + $88 = ((($hvec)) + 4|0); + HEAP32[$88>>2] = 32; + $89 = ((($hvec)) + 8|0); + HEAP32[$89>>2] = 32; + $90 = $mbuf; + $91 = ((($hvec)) + 16|0); + $92 = ((($91)) + 12|0); + HEAP32[$92>>2] = $90; + $93 = $mlen; + $94 = ((($hvec)) + 16|0); + $95 = ((($94)) + 8|0); + HEAP32[$95>>2] = $93; + $96 = $5; + $97 = HEAP32[$digest>>2]|0; + $98 = (__gcry_md_hash_buffers($96,0,$97,$hvec,2)|0); + $rc = $98; + $99 = $rc; + $100 = ($99|0)!=(0); + if (!($100)) { + $101 = HEAP32[$digest>>2]|0; + _reverse_buffer_831($101,64); + $102 = (__gcry_get_debug_flag(1)|0); + $103 = ($102|0)!=(0); + if ($103) { + $104 = HEAP32[$digest>>2]|0; + __gcry_log_printhex(53390,$104,64); + } + $105 = $r; + $106 = HEAP32[$digest>>2]|0; + __gcry_mpi_set_buffer($105,$106,64,0); + $107 = $r; + $108 = $2; + $109 = ((($108)) + 20|0); + $110 = $ctx; + __gcry_mpi_ec_mul_point($I,$107,$109,$110); + $111 = (__gcry_get_debug_flag(1)|0); + $112 = ($111|0)!=(0); + if ($112) { + $113 = $ctx; + __gcry_mpi_point_log(35976,$I,$113); + } + $114 = $ctx; + $115 = $x; + $116 = $y; + $117 = (__gcry_ecc_eddsa_encodepoint($I,$114,$115,$116,0,$rawmpi,$rawmpilen)|0); + $rc = $117; + $118 = $rc; + $119 = ($118|0)!=(0); + if (!($119)) { + $120 = (__gcry_get_debug_flag(1)|0); + $121 = ($120|0)!=(0); + if ($121) { + $122 = HEAP32[$rawmpi>>2]|0; + $123 = HEAP32[$rawmpilen>>2]|0; + __gcry_log_printhex(35981,$122,$123); + } + $124 = HEAP32[$rawmpi>>2]|0; + $125 = ((($hvec)) + 12|0); + HEAP32[$125>>2] = $124; + $126 = ((($hvec)) + 4|0); + HEAP32[$126>>2] = 0; + $127 = HEAP32[$rawmpilen>>2]|0; + $128 = ((($hvec)) + 8|0); + HEAP32[$128>>2] = $127; + $129 = HEAP32[$encpk>>2]|0; + $130 = ((($hvec)) + 16|0); + $131 = ((($130)) + 12|0); + HEAP32[$131>>2] = $129; + $132 = ((($hvec)) + 16|0); + $133 = ((($132)) + 4|0); + HEAP32[$133>>2] = 0; + $134 = HEAP32[$encpklen>>2]|0; + $135 = ((($hvec)) + 16|0); + $136 = ((($135)) + 8|0); + HEAP32[$136>>2] = $134; + $137 = $mbuf; + $138 = ((($hvec)) + 32|0); + $139 = ((($138)) + 12|0); + HEAP32[$139>>2] = $137; + $140 = ((($hvec)) + 32|0); + $141 = ((($140)) + 4|0); + HEAP32[$141>>2] = 0; + $142 = $mlen; + $143 = ((($hvec)) + 32|0); + $144 = ((($143)) + 8|0); + HEAP32[$144>>2] = $142; + $145 = $5; + $146 = HEAP32[$digest>>2]|0; + $147 = (__gcry_md_hash_buffers($145,0,$146,$hvec,3)|0); + $rc = $147; + $148 = $rc; + $149 = ($148|0)!=(0); + if (!($149)) { + $150 = $3; + $151 = HEAP32[$rawmpi>>2]|0; + $152 = HEAP32[$rawmpilen>>2]|0; + $153 = $152<<3; + (__gcry_mpi_set_opaque($150,$151,$153)|0); + HEAP32[$rawmpi>>2] = 0; + $154 = HEAP32[$digest>>2]|0; + _reverse_buffer_831($154,64); + $155 = (__gcry_get_debug_flag(1)|0); + $156 = ($155|0)!=(0); + if ($156) { + $157 = HEAP32[$digest>>2]|0; + __gcry_log_printhex(35988,$157,64); + } + $158 = $4; + $159 = HEAP32[$digest>>2]|0; + __gcry_mpi_set_buffer($158,$159,64,0); + $160 = $4; + $161 = $4; + $162 = $a; + $163 = $2; + $164 = ((($163)) + 32|0); + $165 = HEAP32[$164>>2]|0; + __gcry_mpi_mulm($160,$161,$162,$165); + $166 = $4; + $167 = $4; + $168 = $r; + $169 = $2; + $170 = ((($169)) + 32|0); + $171 = HEAP32[$170>>2]|0; + __gcry_mpi_addm($166,$167,$168,$171); + $172 = $4; + $173 = $b; + $174 = (_eddsa_encodempi($172,$173,$rawmpi,$rawmpilen)|0); + $rc = $174; + $175 = $rc; + $176 = ($175|0)!=(0); + if (!($176)) { + $177 = (__gcry_get_debug_flag(1)|0); + $178 = ($177|0)!=(0); + if ($178) { + $179 = HEAP32[$rawmpi>>2]|0; + $180 = HEAP32[$rawmpilen>>2]|0; + __gcry_log_printhex(35995,$179,$180); + } + $181 = $4; + $182 = HEAP32[$rawmpi>>2]|0; + $183 = HEAP32[$rawmpilen>>2]|0; + $184 = $183<<3; + (__gcry_mpi_set_opaque($181,$182,$184)|0); + HEAP32[$rawmpi>>2] = 0; + $rc = 0; + } + } + } + } + } + } while(0); + $185 = $a; + __gcry_mpi_release($185); + $186 = $x; + __gcry_mpi_release($186); + $187 = $y; + __gcry_mpi_release($187); + $188 = $r; + __gcry_mpi_release($188); + $189 = HEAP32[$digest>>2]|0; + __gcry_free($189); + $190 = $ctx; + __gcry_mpi_ec_free($190); + __gcry_mpi_point_free_parts($I); + __gcry_mpi_point_free_parts($Q); + $191 = HEAP32[$encpk>>2]|0; + __gcry_free($191); + $192 = HEAP32[$rawmpi>>2]|0; + __gcry_free($192); + $193 = $rc; + $0 = $193; + $194 = $0; + STACKTOP = sp;return ($194|0); + } + } + $0 = 79; + $194 = $0; + STACKTOP = sp;return ($194|0); +} +function _eddsa_encodempi($mpi,$minlen,$r_buffer,$r_buflen) { + $mpi = $mpi|0; + $minlen = $minlen|0; + $r_buffer = $r_buffer|0; + $r_buflen = $r_buflen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rawmpi = 0, $rawmpilen = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $rawmpilen = sp; + $1 = $mpi; + $2 = $minlen; + $3 = $r_buffer; + $4 = $r_buflen; + $5 = $1; + $6 = $2; + $7 = (__gcry_mpi_get_buffer($5,$6,$rawmpilen,0)|0); + $rawmpi = $7; + $8 = $rawmpi; + $9 = ($8|0)!=(0|0); + if ($9) { + $11 = $rawmpi; + $12 = $3; + HEAP32[$12>>2] = $11; + $13 = HEAP32[$rawmpilen>>2]|0; + $14 = $4; + HEAP32[$14>>2] = $13; + $0 = 0; + $15 = $0; + STACKTOP = sp;return ($15|0); + } else { + $10 = (_gpg_err_code_from_syserror()|0); + $0 = $10; + $15 = $0; + STACKTOP = sp;return ($15|0); + } + return (0)|0; +} +function __gcry_ecc_eddsa_verify($input,$pkey,$r_in,$s_in,$hashalgo,$pk) { + $input = $input|0; + $pkey = $pkey|0; + $r_in = $r_in|0; + $s_in = $s_in|0; + $hashalgo = $hashalgo|0; + $pk = $pk|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; + var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $Ia = 0, $Ib = 0, $Q = 0, $b = 0, $ctx = 0, $digest = 0, $encpk = 0, $encpklen = 0, $h = 0, $hvec = 0, $mbuf = 0, $mlen = 0, $or$cond = 0, $or$cond3 = 0, $rbuf = 0; + var $rc = 0, $rlen = 0, $s = 0, $sbuf = 0, $slen = 0, $tbuf = 0, $tlen = 0, $tmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 240|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $tmp = sp + 132|0; + $Q = sp + 120|0; + $encpk = sp + 116|0; + $encpklen = sp + 112|0; + $tbuf = sp + 100|0; + $tlen = sp + 88|0; + $digest = sp + 176|0; + $hvec = sp + 40|0; + $Ia = sp + 20|0; + $Ib = sp + 8|0; + $1 = $input; + $2 = $pkey; + $3 = $r_in; + $4 = $s_in; + $5 = $hashalgo; + $6 = $pk; + $ctx = 0; + HEAP32[$encpk>>2] = 0; + HEAP32[$tbuf>>2] = 0; + $7 = $1; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = $1; + $10 = ((($9)) + 12|0); + $11 = HEAP32[$10>>2]|0; + $12 = $11 & 4; + $13 = ($12|0)!=(0); + $14 = $3; + $15 = ($14|0)!=(0|0); + $or$cond = $13 & $15; + if ($or$cond) { + $16 = $3; + $17 = ((($16)) + 12|0); + $18 = HEAP32[$17>>2]|0; + $19 = $18 & 4; + $20 = ($19|0)!=(0); + $21 = $4; + $22 = ($21|0)!=(0|0); + $or$cond3 = $20 & $22; + if ($or$cond3) { + $23 = $4; + $24 = ((($23)) + 12|0); + $25 = HEAP32[$24>>2]|0; + $26 = $25 & 4; + $27 = ($26|0)!=(0); + if ($27) { + $28 = $5; + $29 = ($28|0)!=(10); + if ($29) { + $0 = 5; + $164 = $0; + STACKTOP = sp;return ($164|0); + } + __gcry_mpi_point_init($Q); + __gcry_mpi_point_init($Ia); + __gcry_mpi_point_init($Ib); + $30 = (__gcry_mpi_new(0)|0); + $h = $30; + $31 = (__gcry_mpi_new(0)|0); + $s = $31; + $32 = $2; + $33 = HEAP32[$32>>2]|0; + $34 = $2; + $35 = ((($34)) + 4|0); + $36 = HEAP32[$35>>2]|0; + $37 = $2; + $38 = ((($37)) + 8|0); + $39 = HEAP32[$38>>2]|0; + $40 = $2; + $41 = ((($40)) + 12|0); + $42 = HEAP32[$41>>2]|0; + $43 = $2; + $44 = ((($43)) + 16|0); + $45 = HEAP32[$44>>2]|0; + $46 = (__gcry_mpi_ec_p_internal_new($33,$36,0,$39,$42,$45)|0); + $ctx = $46; + $47 = $ctx; + $48 = ((($47)) + 12|0); + $49 = HEAP32[$48>>2]|0; + $50 = (($49>>>0) / 8)&-1; + $b = $50; + $51 = $b; + $52 = ($51|0)!=(32); + if ($52) { + $0 = 63; + $164 = $0; + STACKTOP = sp;return ($164|0); + } + $53 = $6; + $54 = $ctx; + $55 = (__gcry_ecc_eddsa_decodepoint($53,$54,$Q,$encpk,$encpklen)|0); + $rc = $55; + $56 = $rc; + $57 = ($56|0)!=(0); + L14: do { + if (!($57)) { + $58 = $ctx; + $59 = (__gcry_mpi_ec_curve_point($Q,$58)|0); + $60 = ($59|0)!=(0); + if (!($60)) { + $rc = 195; + break; + } + $61 = (__gcry_get_debug_flag(1)|0); + $62 = ($61|0)!=(0); + if ($62) { + $63 = HEAP32[$encpk>>2]|0; + $64 = HEAP32[$encpklen>>2]|0; + __gcry_log_printhex(35962,$63,$64); + } + $65 = HEAP32[$encpklen>>2]|0; + $66 = $b; + $67 = ($65|0)!=($66|0); + if ($67) { + $rc = 139; + break; + } + $68 = $1; + $69 = (__gcry_mpi_get_opaque($68,$tmp)|0); + $mbuf = $69; + $70 = HEAP32[$tmp>>2]|0; + $71 = (($70) + 7)|0; + $72 = (($71>>>0) / 8)&-1; + $mlen = $72; + $73 = (__gcry_get_debug_flag(1)|0); + $74 = ($73|0)!=(0); + if ($74) { + $75 = $mbuf; + $76 = $mlen; + __gcry_log_printhex(35969,$75,$76); + } + $77 = $3; + $78 = (__gcry_mpi_get_opaque($77,$tmp)|0); + $rbuf = $78; + $79 = HEAP32[$tmp>>2]|0; + $80 = (($79) + 7)|0; + $81 = (($80>>>0) / 8)&-1; + $rlen = $81; + $82 = (__gcry_get_debug_flag(1)|0); + $83 = ($82|0)!=(0); + if ($83) { + $84 = $rbuf; + $85 = $rlen; + __gcry_log_printhex(53390,$84,$85); + } + $86 = $rlen; + $87 = $b; + $88 = ($86|0)!=($87|0); + if ($88) { + $rc = 139; + break; + } + $89 = $rbuf; + $90 = ((($hvec)) + 12|0); + HEAP32[$90>>2] = $89; + $91 = ((($hvec)) + 4|0); + HEAP32[$91>>2] = 0; + $92 = $rlen; + $93 = ((($hvec)) + 8|0); + HEAP32[$93>>2] = $92; + $94 = HEAP32[$encpk>>2]|0; + $95 = ((($hvec)) + 16|0); + $96 = ((($95)) + 12|0); + HEAP32[$96>>2] = $94; + $97 = ((($hvec)) + 16|0); + $98 = ((($97)) + 4|0); + HEAP32[$98>>2] = 0; + $99 = HEAP32[$encpklen>>2]|0; + $100 = ((($hvec)) + 16|0); + $101 = ((($100)) + 8|0); + HEAP32[$101>>2] = $99; + $102 = $mbuf; + $103 = ((($hvec)) + 32|0); + $104 = ((($103)) + 12|0); + HEAP32[$104>>2] = $102; + $105 = ((($hvec)) + 32|0); + $106 = ((($105)) + 4|0); + HEAP32[$106>>2] = 0; + $107 = $mlen; + $108 = ((($hvec)) + 32|0); + $109 = ((($108)) + 8|0); + HEAP32[$109>>2] = $107; + $110 = $5; + $111 = (__gcry_md_hash_buffers($110,0,$digest,$hvec,3)|0); + $rc = $111; + $112 = $rc; + $113 = ($112|0)!=(0); + if (!($113)) { + _reverse_buffer_831($digest,64); + $114 = (__gcry_get_debug_flag(1)|0); + $115 = ($114|0)!=(0); + if ($115) { + __gcry_log_printhex(35988,$digest,64); + } + $116 = $h; + __gcry_mpi_set_buffer($116,$digest,64,0); + $117 = $4; + $118 = (__gcry_mpi_get_opaque_copy($117,$tmp)|0); + $sbuf = $118; + $119 = HEAP32[$tmp>>2]|0; + $120 = (($119) + 7)|0; + $121 = (($120>>>0) / 8)&-1; + $slen = $121; + $122 = $sbuf; + $123 = $slen; + _reverse_buffer_831($122,$123); + $124 = (__gcry_get_debug_flag(1)|0); + $125 = ($124|0)!=(0); + if ($125) { + $126 = $sbuf; + $127 = $slen; + __gcry_log_printhex(53397,$126,$127); + } + $128 = $s; + $129 = $sbuf; + $130 = $slen; + __gcry_mpi_set_buffer($128,$129,$130,0); + $131 = $sbuf; + __gcry_free($131); + $132 = $slen; + $133 = $b; + $134 = ($132|0)!=($133|0); + if ($134) { + $rc = 139; + break; + } + $135 = $s; + $136 = $2; + $137 = ((($136)) + 20|0); + $138 = $ctx; + __gcry_mpi_ec_mul_point($Ia,$135,$137,$138); + $139 = $h; + $140 = $ctx; + __gcry_mpi_ec_mul_point($Ib,$139,$Q,$140); + $141 = HEAP32[$Ib>>2]|0; + $142 = HEAP32[$Ib>>2]|0; + __gcry_mpi_neg($141,$142); + $143 = $ctx; + __gcry_mpi_ec_add_points($Ia,$Ia,$Ib,$143); + $144 = $ctx; + $145 = $s; + $146 = $h; + $147 = (__gcry_ecc_eddsa_encodepoint($Ia,$144,$145,$146,0,$tbuf,$tlen)|0); + $rc = $147; + $148 = $rc; + $149 = ($148|0)!=(0); + if (!($149)) { + $150 = HEAP32[$tlen>>2]|0; + $151 = $rlen; + $152 = ($150|0)!=($151|0); + do { + if (!($152)) { + $153 = HEAP32[$tbuf>>2]|0; + $154 = $rbuf; + $155 = HEAP32[$tlen>>2]|0; + $156 = (_memcmp($153,$154,$155)|0); + $157 = ($156|0)!=(0); + if ($157) { + break; + } + $rc = 0; + break L14; + } + } while(0); + $rc = 8; + } + } + } + } while(0); + $158 = HEAP32[$encpk>>2]|0; + __gcry_free($158); + $159 = HEAP32[$tbuf>>2]|0; + __gcry_free($159); + $160 = $ctx; + __gcry_mpi_ec_free($160); + $161 = $s; + __gcry_mpi_release($161); + $162 = $h; + __gcry_mpi_release($162); + __gcry_mpi_point_free_parts($Ia); + __gcry_mpi_point_free_parts($Ib); + __gcry_mpi_point_free_parts($Q); + $163 = $rc; + $0 = $163; + $164 = $0; + STACKTOP = sp;return ($164|0); + } + } + } + } + $0 = 79; + $164 = $0; + STACKTOP = sp;return ($164|0); +} +function __gcry_ecc_curve_free($E) { + $E = $E|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $E; + $1 = $0; + $2 = ((($1)) + 8|0); + $3 = HEAP32[$2>>2]|0; + __gcry_mpi_free($3); + $4 = $0; + $5 = ((($4)) + 8|0); + HEAP32[$5>>2] = 0; + $6 = $0; + $7 = ((($6)) + 12|0); + $8 = HEAP32[$7>>2]|0; + __gcry_mpi_free($8); + $9 = $0; + $10 = ((($9)) + 12|0); + HEAP32[$10>>2] = 0; + $11 = $0; + $12 = ((($11)) + 16|0); + $13 = HEAP32[$12>>2]|0; + __gcry_mpi_free($13); + $14 = $0; + $15 = ((($14)) + 16|0); + HEAP32[$15>>2] = 0; + $16 = $0; + $17 = ((($16)) + 20|0); + __gcry_mpi_point_free_parts($17); + $18 = $0; + $19 = ((($18)) + 32|0); + $20 = HEAP32[$19>>2]|0; + __gcry_mpi_free($20); + $21 = $0; + $22 = ((($21)) + 32|0); + HEAP32[$22>>2] = 0; + $23 = $0; + $24 = ((($23)) + 36|0); + $25 = HEAP32[$24>>2]|0; + __gcry_mpi_free($25); + $26 = $0; + $27 = ((($26)) + 36|0); + HEAP32[$27>>2] = 0; + STACKTOP = sp;return; +} +function __gcry_ecc_curve_copy($agg$result,$E) { + $agg$result = $agg$result|0; + $E = $E|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $R = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $R = sp; + $0 = HEAP32[$E>>2]|0; + HEAP32[$R>>2] = $0; + $1 = ((($E)) + 4|0); + $2 = HEAP32[$1>>2]|0; + $3 = ((($R)) + 4|0); + HEAP32[$3>>2] = $2; + $4 = ((($E)) + 40|0); + $5 = HEAP32[$4>>2]|0; + $6 = ((($R)) + 40|0); + HEAP32[$6>>2] = $5; + $7 = ((($E)) + 8|0); + $8 = HEAP32[$7>>2]|0; + $9 = (__gcry_mpi_copy($8)|0); + $10 = ((($R)) + 8|0); + HEAP32[$10>>2] = $9; + $11 = ((($E)) + 12|0); + $12 = HEAP32[$11>>2]|0; + $13 = (__gcry_mpi_copy($12)|0); + $14 = ((($R)) + 12|0); + HEAP32[$14>>2] = $13; + $15 = ((($E)) + 16|0); + $16 = HEAP32[$15>>2]|0; + $17 = (__gcry_mpi_copy($16)|0); + $18 = ((($R)) + 16|0); + HEAP32[$18>>2] = $17; + $19 = ((($R)) + 20|0); + __gcry_mpi_point_init($19); + $20 = ((($R)) + 20|0); + $21 = ((($E)) + 20|0); + _point_set_847($20,$21); + $22 = ((($E)) + 32|0); + $23 = HEAP32[$22>>2]|0; + $24 = (__gcry_mpi_copy($23)|0); + $25 = ((($R)) + 32|0); + HEAP32[$25>>2] = $24; + $26 = ((($E)) + 36|0); + $27 = HEAP32[$26>>2]|0; + $28 = (__gcry_mpi_copy($27)|0); + $29 = ((($R)) + 36|0); + HEAP32[$29>>2] = $28; + dest=$agg$result; src=$R; stop=dest+44|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + STACKTOP = sp;return; +} +function _point_set_847($d,$s) { + $d = $d|0; + $s = $s|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $d; + $1 = $s; + $2 = $0; + $3 = HEAP32[$2>>2]|0; + $4 = $1; + $5 = HEAP32[$4>>2]|0; + (__gcry_mpi_set($3,$5)|0); + $6 = $0; + $7 = ((($6)) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = $1; + $10 = ((($9)) + 4|0); + $11 = HEAP32[$10>>2]|0; + (__gcry_mpi_set($8,$11)|0); + $12 = $0; + $13 = ((($12)) + 8|0); + $14 = HEAP32[$13>>2]|0; + $15 = $1; + $16 = ((($15)) + 8|0); + $17 = HEAP32[$16>>2]|0; + (__gcry_mpi_set($14,$17)|0); + STACKTOP = sp;return; +} +function __gcry_ecc_model2str($model) { + $model = $model|0; + var $0 = 0, $1 = 0, $2 = 0, $str = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $model; + $str = 37956; + $1 = $0; + switch ($1|0) { + case 0: { + $str = 36002; + break; + } + case 1: { + $str = 45730; + break; + } + case 2: { + $str = 36014; + break; + } + default: { + } + } + $2 = $str; + STACKTOP = sp;return ($2|0); +} +function __gcry_ecc_dialect2str($dialect) { + $dialect = $dialect|0; + var $0 = 0, $1 = 0, $2 = 0, $str = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $dialect; + $str = 37956; + $1 = $0; + switch ($1|0) { + case 0: { + $str = 36022; + break; + } + case 1: { + $str = 36031; + break; + } + default: { + } + } + $2 = $str; + STACKTOP = sp;return ($2|0); +} +function __gcry_ecc_ec2os($x,$y,$p) { + $x = $x|0; + $y = $y|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $8 = 0, $9 = 0, $buf = 0, $n = 0, $pbytes = 0, $ptr = 0, $rc = 0, $result = 0, $vararg_buffer = 0, $vararg_buffer1 = 0; + var $vararg_buffer4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer4 = sp + 16|0; + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $n = sp + 32|0; + $result = sp + 20|0; + $0 = $x; + $1 = $y; + $2 = $p; + $3 = $2; + $4 = (__gcry_mpi_get_nbits($3)|0); + $5 = (($4) + 7)|0; + $6 = (($5>>>0) / 8)&-1; + $pbytes = $6; + $7 = $pbytes; + $8 = $7<<1; + $9 = (1 + ($8))|0; + $10 = (__gcry_xmalloc($9)|0); + $buf = $10; + $11 = $buf; + HEAP8[$11>>0] = 4; + $12 = $buf; + $13 = ((($12)) + 1|0); + $ptr = $13; + $14 = $ptr; + $15 = $pbytes; + $16 = $0; + $17 = (__gcry_mpi_print(5,$14,$15,$n,$16)|0); + $rc = $17; + $18 = $rc; + $19 = ($18|0)!=(0); + if ($19) { + $20 = $rc; + $21 = (_gpg_strerror($20)|0); + HEAP32[$vararg_buffer>>2] = $21; + __gcry_log_fatal(36039,$vararg_buffer); + // unreachable; + } + $22 = HEAP32[$n>>2]|0; + $23 = $pbytes; + $24 = ($22>>>0)<($23>>>0); + if ($24) { + $25 = $ptr; + $26 = $pbytes; + $27 = HEAP32[$n>>2]|0; + $28 = (($26) - ($27))|0; + $29 = (($25) + ($28)|0); + $30 = $ptr; + $31 = HEAP32[$n>>2]|0; + _memmove(($29|0),($30|0),($31|0))|0; + $32 = $ptr; + $33 = $pbytes; + $34 = HEAP32[$n>>2]|0; + $35 = (($33) - ($34))|0; + _memset(($32|0),0,($35|0))|0; + } + $36 = $pbytes; + $37 = $ptr; + $38 = (($37) + ($36)|0); + $ptr = $38; + $39 = $ptr; + $40 = $pbytes; + $41 = $1; + $42 = (__gcry_mpi_print(5,$39,$40,$n,$41)|0); + $rc = $42; + $43 = $rc; + $44 = ($43|0)!=(0); + if ($44) { + $45 = $rc; + $46 = (_gpg_strerror($45)|0); + HEAP32[$vararg_buffer1>>2] = $46; + __gcry_log_fatal(36039,$vararg_buffer1); + // unreachable; + } + $47 = HEAP32[$n>>2]|0; + $48 = $pbytes; + $49 = ($47>>>0)<($48>>>0); + if ($49) { + $50 = $ptr; + $51 = $pbytes; + $52 = HEAP32[$n>>2]|0; + $53 = (($51) - ($52))|0; + $54 = (($50) + ($53)|0); + $55 = $ptr; + $56 = HEAP32[$n>>2]|0; + _memmove(($54|0),($55|0),($56|0))|0; + $57 = $ptr; + $58 = $pbytes; + $59 = HEAP32[$n>>2]|0; + $60 = (($58) - ($59))|0; + _memset(($57|0),0,($60|0))|0; + } + $61 = $buf; + $62 = $pbytes; + $63 = $62<<1; + $64 = (1 + ($63))|0; + $65 = (__gcry_mpi_scan($result,5,$61,$64,0)|0); + $rc = $65; + $66 = $rc; + $67 = ($66|0)!=(0); + if ($67) { + $68 = $rc; + $69 = (_gpg_strerror($68)|0); + HEAP32[$vararg_buffer4>>2] = $69; + __gcry_log_fatal(36061,$vararg_buffer4); + // unreachable; + } else { + $70 = $buf; + __gcry_free($70); + $71 = HEAP32[$result>>2]|0; + STACKTOP = sp;return ($71|0); + } + return (0)|0; +} +function __gcry_mpi_ec_ec2os($point,$ectx) { + $point = $point|0; + $ectx = $ectx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $g_x = 0; + var $g_y = 0, $result = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $point; + $1 = $ectx; + $2 = (__gcry_mpi_new(0)|0); + $g_x = $2; + $3 = (__gcry_mpi_new(0)|0); + $g_y = $3; + $4 = $g_x; + $5 = $g_y; + $6 = $0; + $7 = $1; + $8 = (__gcry_mpi_ec_get_affine($4,$5,$6,$7)|0); + $9 = ($8|0)!=(0); + if ($9) { + $result = 0; + } else { + $10 = $g_x; + $11 = $g_y; + $12 = $1; + $13 = ((($12)) + 16|0); + $14 = HEAP32[$13>>2]|0; + $15 = (__gcry_ecc_ec2os($10,$11,$14)|0); + $result = $15; + } + $16 = $g_x; + __gcry_mpi_free($16); + $17 = $g_y; + __gcry_mpi_free($17); + $18 = $result; + STACKTOP = sp;return ($18|0); +} +function __gcry_ecc_os2ec($result,$value) { + $result = $result|0; + $value = $value|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $8 = 0, $9 = 0, $buf = 0; + var $buf_memory = 0, $n = 0, $nbits = 0, $rc = 0, $x = 0, $y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $n = sp + 20|0; + $x = sp + 8|0; + $y = sp + 4|0; + $nbits = sp; + $1 = $result; + $2 = $value; + $3 = $2; + $4 = ($3|0)!=(0|0); + do { + if ($4) { + $5 = $2; + $6 = ((($5)) + 12|0); + $7 = HEAP32[$6>>2]|0; + $8 = $7 & 4; + $9 = ($8|0)!=(0); + if ($9) { + $10 = $2; + $11 = (__gcry_mpi_get_opaque($10,$nbits)|0); + $buf = $11; + $12 = $buf; + $13 = ($12|0)!=(0|0); + if ($13) { + $14 = HEAP32[$nbits>>2]|0; + $15 = (($14) + 7)|0; + $16 = (($15>>>0) / 8)&-1; + HEAP32[$n>>2] = $16; + $buf_memory = 0; + break; + } + $0 = 65; + $78 = $0; + STACKTOP = sp;return ($78|0); + } else { + label = 6; + } + } else { + label = 6; + } + } while(0); + do { + if ((label|0) == 6) { + $17 = $2; + $18 = (__gcry_mpi_get_nbits($17)|0); + $19 = (($18) + 7)|0; + $20 = (($19>>>0) / 8)&-1; + HEAP32[$n>>2] = $20; + $21 = HEAP32[$n>>2]|0; + $22 = (__gcry_xmalloc($21)|0); + $buf_memory = $22; + $23 = $buf_memory; + $24 = HEAP32[$n>>2]|0; + $25 = $2; + $26 = (__gcry_mpi_print(5,$23,$24,$n,$25)|0); + $rc = $26; + $27 = $rc; + $28 = ($27|0)!=(0); + $29 = $buf_memory; + if (!($28)) { + $buf = $29; + break; + } + __gcry_free($29); + $30 = $rc; + $0 = $30; + $78 = $0; + STACKTOP = sp;return ($78|0); + } + } while(0); + $31 = HEAP32[$n>>2]|0; + $32 = ($31>>>0)<(1); + if ($32) { + $33 = $buf_memory; + __gcry_free($33); + $0 = 65; + $78 = $0; + STACKTOP = sp;return ($78|0); + } + $34 = $buf; + $35 = HEAP8[$34>>0]|0; + $36 = $35&255; + $37 = ($36|0)!=(4); + if ($37) { + $38 = $buf_memory; + __gcry_free($38); + $0 = 69; + $78 = $0; + STACKTOP = sp;return ($78|0); + } + $39 = HEAP32[$n>>2]|0; + $40 = (($39) - 1)|0; + $41 = (($40>>>0) % 2)&-1; + $42 = ($41|0)!=(0); + if ($42) { + $43 = $buf_memory; + __gcry_free($43); + $0 = 65; + $78 = $0; + STACKTOP = sp;return ($78|0); + } + $44 = HEAP32[$n>>2]|0; + $45 = (($44) - 1)|0; + $46 = (($45>>>0) / 2)&-1; + HEAP32[$n>>2] = $46; + $47 = $buf; + $48 = ((($47)) + 1|0); + $49 = HEAP32[$n>>2]|0; + $50 = (__gcry_mpi_scan($x,5,$48,$49,0)|0); + $rc = $50; + $51 = $rc; + $52 = ($51|0)!=(0); + if ($52) { + $53 = $buf_memory; + __gcry_free($53); + $54 = $rc; + $0 = $54; + $78 = $0; + STACKTOP = sp;return ($78|0); + } + $55 = $buf; + $56 = ((($55)) + 1|0); + $57 = HEAP32[$n>>2]|0; + $58 = (($56) + ($57)|0); + $59 = HEAP32[$n>>2]|0; + $60 = (__gcry_mpi_scan($y,5,$58,$59,0)|0); + $rc = $60; + $61 = $buf_memory; + __gcry_free($61); + $62 = $rc; + $63 = ($62|0)!=(0); + if ($63) { + $64 = HEAP32[$x>>2]|0; + __gcry_mpi_free($64); + $65 = $rc; + $0 = $65; + $78 = $0; + STACKTOP = sp;return ($78|0); + } else { + $66 = $1; + $67 = HEAP32[$66>>2]|0; + $68 = HEAP32[$x>>2]|0; + (__gcry_mpi_set($67,$68)|0); + $69 = $1; + $70 = ((($69)) + 4|0); + $71 = HEAP32[$70>>2]|0; + $72 = HEAP32[$y>>2]|0; + (__gcry_mpi_set($71,$72)|0); + $73 = $1; + $74 = ((($73)) + 8|0); + $75 = HEAP32[$74>>2]|0; + (__gcry_mpi_set_ui($75,1)|0); + $76 = HEAP32[$x>>2]|0; + __gcry_mpi_free($76); + $77 = HEAP32[$y>>2]|0; + __gcry_mpi_free($77); + $0 = 0; + $78 = $0; + STACKTOP = sp;return ($78|0); + } + return (0)|0; +} +function __gcry_ecc_compute_public($Q,$ec,$G,$d) { + $Q = $Q|0; + $ec = $ec|0; + $G = $G|0; + $d = $d|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $8 = 0, $9 = 0, $a = 0, $digest = 0, $or$cond = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $digest = sp; + $1 = $Q; + $2 = $ec; + $3 = $G; + $4 = $d; + $5 = $3; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $7 = $2; + $8 = ((($7)) + 28|0); + $9 = HEAP32[$8>>2]|0; + $3 = $9; + } + $10 = $4; + $11 = ($10|0)!=(0|0); + if (!($11)) { + $12 = $2; + $13 = ((($12)) + 44|0); + $14 = HEAP32[$13>>2]|0; + $4 = $14; + } + $15 = $4; + $16 = ($15|0)!=(0|0); + $17 = $3; + $18 = ($17|0)!=(0|0); + $or$cond = $16 & $18; + if ($or$cond) { + $19 = $2; + $20 = ((($19)) + 16|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)!=(0|0); + if ($22) { + $23 = $2; + $24 = ((($23)) + 20|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($25|0)!=(0|0); + if ($26) { + $27 = $2; + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)==(2); + if ($29) { + $30 = $2; + $31 = ((($30)) + 24|0); + $32 = HEAP32[$31>>2]|0; + $33 = ($32|0)!=(0|0); + if (!($33)) { + $0 = 0; + $71 = $0; + STACKTOP = sp;return ($71|0); + } + } + $34 = $2; + $35 = ((($34)) + 4|0); + $36 = HEAP32[$35>>2]|0; + $37 = ($36|0)==(1); + if ($37) { + $38 = $2; + $39 = ((($38)) + 8|0); + $40 = HEAP32[$39>>2]|0; + $41 = $40 & 4096; + $42 = ($41|0)!=(0); + if ($42) { + $43 = $4; + $44 = $2; + $45 = (__gcry_ecc_eddsa_compute_h_d($digest,$43,$44)|0); + $46 = ($45|0)!=(0); + if ($46) { + $0 = 0; + $71 = $0; + STACKTOP = sp;return ($71|0); + } + $47 = (__gcry_mpi_snew(0)|0); + $a = $47; + $48 = $a; + $49 = HEAP32[$digest>>2]|0; + __gcry_mpi_set_buffer($48,$49,32,0); + $50 = HEAP32[$digest>>2]|0; + __gcry_free($50); + $51 = $1; + $52 = ($51|0)!=(0|0); + if (!($52)) { + $53 = (__gcry_mpi_point_new(0)|0); + $1 = $53; + } + $54 = $1; + $55 = ($54|0)!=(0|0); + if ($55) { + $56 = $1; + $57 = $a; + $58 = $3; + $59 = $2; + __gcry_mpi_ec_mul_point($56,$57,$58,$59); + } + $60 = $a; + __gcry_mpi_free($60); + } else { + label = 21; + } + } else { + label = 21; + } + if ((label|0) == 21) { + $61 = $1; + $62 = ($61|0)!=(0|0); + if (!($62)) { + $63 = (__gcry_mpi_point_new(0)|0); + $1 = $63; + } + $64 = $1; + $65 = ($64|0)!=(0|0); + if ($65) { + $66 = $1; + $67 = $4; + $68 = $3; + $69 = $2; + __gcry_mpi_ec_mul_point($66,$67,$68,$69); + } + } + $70 = $1; + $0 = $70; + $71 = $0; + STACKTOP = sp;return ($71|0); + } + } + } + $0 = 0; + $71 = $0; + STACKTOP = sp;return ($71|0); +} +function __gcry_hmac_selftest($algo,$extended,$report) { + $algo = $algo|0; + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $algo; + $1 = $extended; + $2 = $report; + $ec = 0; + $3 = $0; + $4 = (__gcry_md_algo_info($3,8,0,0)|0); + $5 = ($4|0)!=(0); + if ($5) { + $ec = 5; + $10 = $2; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = $2; + $13 = $0; + FUNCTION_TABLE_viiii[$12 & 63](36342,$13,38049,37086); + } + } else { + $6 = $0; + $7 = $1; + $8 = $2; + $9 = (_run_selftests($6,$7,$8)|0); + $ec = $9; + } + $14 = $ec; + $15 = (_gpg_error_906($14)|0); + STACKTOP = sp;return ($15|0); +} +function _run_selftests($algo,$extended,$report) { + $algo = $algo|0; + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $ec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $algo; + $1 = $extended; + $2 = $report; + $3 = $0; + switch ($3|0) { + case 2: { + $4 = $1; + $5 = $2; + $6 = (_selftests_sha1($4,$5)|0); + $ec = $6; + break; + } + case 11: { + $7 = $1; + $8 = $2; + $9 = (_selftests_sha224($7,$8)|0); + $ec = $9; + break; + } + case 8: { + $10 = $1; + $11 = $2; + $12 = (_selftests_sha256($10,$11)|0); + $ec = $12; + break; + } + case 9: { + $13 = $1; + $14 = $2; + $15 = (_selftests_sha384($13,$14)|0); + $ec = $15; + break; + } + case 10: { + $16 = $1; + $17 = $2; + $18 = (_selftests_sha512($16,$17)|0); + $ec = $18; + break; + } + default: { + $ec = 5; + } + } + $19 = $ec; + STACKTOP = sp;return ($19|0); +} +function _selftests_sha1($extended,$report) { + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $errtxt = 0, $i = 0; + var $j = 0, $key = 0, $what = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $key = sp + 32|0; + $1 = $extended; + $2 = $report; + $what = 36082; + $i = 0; + while(1) { + $3 = $i; + $4 = ($3|0)<(64); + if (!($4)) { + break; + } + $5 = $i; + $6 = $5&255; + $7 = $i; + $8 = (($key) + ($7)|0); + HEAP8[$8>>0] = $6; + $9 = $i; + $10 = (($9) + 1)|0; + $i = $10; + } + $11 = (_check_one(2,36097,9,$key,64,36107,20)|0); + $errtxt = $11; + $12 = $errtxt; + $13 = ($12|0)!=(0|0); + do { + if (!($13)) { + $14 = $1; + $15 = ($14|0)!=(0); + if ($15) { + $what = 36204; + $i = 0; + $j = 48; + while(1) { + $16 = $i; + $17 = ($16|0)<(20); + if (!($17)) { + break; + } + $18 = $j; + $19 = (($18) + 1)|0; + $j = $19; + $20 = $18&255; + $21 = $i; + $22 = (($key) + ($21)|0); + HEAP8[$22>>0] = $20; + $23 = $i; + $24 = (($23) + 1)|0; + $i = $24; + } + $25 = (_check_one(2,36219,9,$key,20,36229,20)|0); + $errtxt = $25; + $26 = $errtxt; + $27 = ($26|0)!=(0|0); + if ($27) { + break; + } + $what = 36250; + $i = 0; + $j = 80; + while(1) { + $28 = $i; + $29 = ($28|0)<(100); + if (!($29)) { + break; + } + $30 = $j; + $31 = (($30) + 1)|0; + $j = $31; + $32 = $30&255; + $33 = $i; + $34 = (($key) + ($33)|0); + HEAP8[$34>>0] = $32; + $35 = $i; + $36 = (($35) + 1)|0; + $i = $36; + } + $37 = (_check_one(2,36265,9,$key,100,36275,20)|0); + $errtxt = $37; + $38 = $errtxt; + $39 = ($38|0)!=(0|0); + if ($39) { + break; + } + $what = 36296; + $i = 0; + $j = 112; + while(1) { + $40 = $i; + $41 = ($40|0)<(49); + if (!($41)) { + break; + } + $42 = $j; + $43 = (($42) + 1)|0; + $j = $43; + $44 = $42&255; + $45 = $i; + $46 = (($key) + ($45)|0); + HEAP8[$46>>0] = $44; + $47 = $i; + $48 = (($47) + 1)|0; + $i = $48; + } + $49 = (_check_one(2,36311,9,$key,49,36321,20)|0); + $errtxt = $49; + $50 = $errtxt; + $51 = ($50|0)!=(0|0); + if ($51) { + break; + } + } + $0 = 0; + $57 = $0; + STACKTOP = sp;return ($57|0); + } + } while(0); + $52 = $2; + $53 = ($52|0)!=(0|0); + if ($53) { + $54 = $2; + $55 = $what; + $56 = $errtxt; + FUNCTION_TABLE_viiii[$54 & 63](36342,2,$55,$56); + } + $0 = 50; + $57 = $0; + STACKTOP = sp;return ($57|0); +} +function _check_one($algo,$data,$datalen,$key,$keylen,$expect,$expectlen) { + $algo = $algo|0; + $data = $data|0; + $datalen = $datalen|0; + $key = $key|0; + $keylen = $keylen|0; + $expect = $expect|0; + $expectlen = $expectlen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $digest = 0, $hd = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $hd = sp + 4|0; + $1 = $algo; + $2 = $data; + $3 = $datalen; + $4 = $key; + $5 = $keylen; + $6 = $expect; + $7 = $expectlen; + $8 = $1; + $9 = (__gcry_md_get_algo_dlen($8)|0); + $10 = $7; + $11 = ($9|0)!=($10|0); + do { + if ($11) { + $0 = 36128; + } else { + $12 = $1; + $13 = (__gcry_md_open($hd,$12,2)|0); + $14 = ($13|0)!=(0); + if ($14) { + $0 = 49956; + break; + } + $15 = HEAP32[$hd>>2]|0; + $16 = $4; + $17 = $5; + $18 = (__gcry_md_setkey($15,$16,$17)|0); + $19 = ($18|0)!=(0); + $20 = HEAP32[$hd>>2]|0; + if ($19) { + __gcry_md_close($20); + $0 = 36147; + break; + } + $21 = $2; + $22 = $3; + __gcry_md_write($20,$21,$22); + $23 = HEAP32[$hd>>2]|0; + $24 = $1; + $25 = (__gcry_md_read($23,$24)|0); + $digest = $25; + $26 = $digest; + $27 = ($26|0)!=(0|0); + if (!($27)) { + $28 = HEAP32[$hd>>2]|0; + __gcry_md_close($28); + $0 = 36169; + break; + } + $29 = $digest; + $30 = $6; + $31 = $7; + $32 = (_memcmp($29,$30,$31)|0); + $33 = ($32|0)!=(0); + $34 = HEAP32[$hd>>2]|0; + __gcry_md_close($34); + if ($33) { + $0 = 36189; + break; + } else { + $0 = 0; + break; + } + } + } while(0); + $35 = $0; + STACKTOP = sp;return ($35|0); +} +function _selftests_sha224($extended,$report) { + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $errtxt = 0, $tvidx = 0, $what = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $extended; + $2 = $report; + $tvidx = 0; + while(1) { + $3 = $tvidx; + $4 = (2772 + (($3*40)|0)|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + label = 6; + break; + } + $7 = $tvidx; + $8 = (2772 + (($7*40)|0)|0); + $9 = HEAP32[$8>>2]|0; + $what = $9; + $10 = $tvidx; + $11 = (2772 + (($10*40)|0)|0); + $12 = ((($11)) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = $tvidx; + $15 = (2772 + (($14*40)|0)|0); + $16 = ((($15)) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = (_strlen($17)|0); + $19 = $tvidx; + $20 = (2772 + (($19*40)|0)|0); + $21 = ((($20)) + 8|0); + $22 = HEAP32[$21>>2]|0; + $23 = $tvidx; + $24 = (2772 + (($23*40)|0)|0); + $25 = ((($24)) + 8|0); + $26 = HEAP32[$25>>2]|0; + $27 = (_strlen($26)|0); + $28 = $tvidx; + $29 = (2772 + (($28*40)|0)|0); + $30 = ((($29)) + 12|0); + $31 = (_check_one(11,$13,$18,$22,$27,$30,28)|0); + $errtxt = $31; + $32 = $errtxt; + $33 = ($32|0)!=(0|0); + if ($33) { + break; + } + $34 = $1; + $35 = ($34|0)!=(0); + if (!($35)) { + label = 6; + break; + } + $36 = $tvidx; + $37 = (($36) + 1)|0; + $tvidx = $37; + } + if ((label|0) == 6) { + $0 = 0; + $43 = $0; + STACKTOP = sp;return ($43|0); + } + $38 = $2; + $39 = ($38|0)!=(0|0); + if ($39) { + $40 = $2; + $41 = $what; + $42 = $errtxt; + FUNCTION_TABLE_viiii[$40 & 63](36342,11,$41,$42); + } + $0 = 50; + $43 = $0; + STACKTOP = sp;return ($43|0); +} +function _selftests_sha256($extended,$report) { + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $9 = 0, $digest = 0, $dlen = 0, $errtxt = 0, $hmachd = 0, $tvidx = 0, $what = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $dlen = sp; + $1 = $extended; + $2 = $report; + $tvidx = 0; + while(1) { + $3 = $tvidx; + $4 = (3052 + (($3*44)|0)|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + label = 13; + break; + } + $7 = $tvidx; + $8 = (3052 + (($7*44)|0)|0); + $9 = HEAP32[$8>>2]|0; + $what = $9; + $10 = $tvidx; + $11 = (3052 + (($10*44)|0)|0); + $12 = ((($11)) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = $tvidx; + $15 = (3052 + (($14*44)|0)|0); + $16 = ((($15)) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = (_strlen($17)|0); + $19 = $tvidx; + $20 = (3052 + (($19*44)|0)|0); + $21 = ((($20)) + 8|0); + $22 = HEAP32[$21>>2]|0; + $23 = $tvidx; + $24 = (3052 + (($23*44)|0)|0); + $25 = ((($24)) + 8|0); + $26 = HEAP32[$25>>2]|0; + $27 = (_strlen($26)|0); + $28 = $tvidx; + $29 = (3052 + (($28*44)|0)|0); + $30 = ((($29)) + 12|0); + $31 = (_check_one(8,$13,$18,$22,$27,$30,32)|0); + $errtxt = $31; + $32 = $errtxt; + $33 = ($32|0)!=(0|0); + if ($33) { + break; + } + $34 = $tvidx; + $35 = (3052 + (($34*44)|0)|0); + $36 = ((($35)) + 8|0); + $37 = HEAP32[$36>>2]|0; + $38 = $tvidx; + $39 = (3052 + (($38*44)|0)|0); + $40 = ((($39)) + 8|0); + $41 = HEAP32[$40>>2]|0; + $42 = (_strlen($41)|0); + $43 = (__gcry_hmac256_new($37,$42)|0); + $hmachd = $43; + $44 = $hmachd; + $45 = ($44|0)!=(0|0); + if (!($45)) { + label = 5; + break; + } + $46 = $hmachd; + $47 = $tvidx; + $48 = (3052 + (($47*44)|0)|0); + $49 = ((($48)) + 4|0); + $50 = HEAP32[$49>>2]|0; + $51 = $tvidx; + $52 = (3052 + (($51*44)|0)|0); + $53 = ((($52)) + 4|0); + $54 = HEAP32[$53>>2]|0; + $55 = (_strlen($54)|0); + __gcry_hmac256_update($46,$50,$55); + $56 = $hmachd; + $57 = (__gcry_hmac256_finalize($56,$dlen)|0); + $digest = $57; + $58 = $digest; + $59 = ($58|0)!=(0|0); + if (!($59)) { + label = 7; + break; + } + $61 = HEAP32[$dlen>>2]|0; + $62 = ($61|0)!=(32); + if ($62) { + label = 10; + break; + } + $63 = $digest; + $64 = $tvidx; + $65 = (3052 + (($64*44)|0)|0); + $66 = ((($65)) + 12|0); + $67 = (_memcmp($63,$66,32)|0); + $68 = ($67|0)!=(0); + if ($68) { + label = 10; + break; + } + $70 = $hmachd; + __gcry_hmac256_release($70); + $71 = $1; + $72 = ($71|0)!=(0); + if (!($72)) { + label = 13; + break; + } + $73 = $tvidx; + $74 = (($73) + 1)|0; + $tvidx = $74; + } + if ((label|0) == 5) { + $errtxt = 36991; + } + else if ((label|0) == 7) { + $errtxt = 37016; + $60 = $hmachd; + __gcry_hmac256_release($60); + } + else if ((label|0) == 10) { + $errtxt = 37046; + $69 = $hmachd; + __gcry_hmac256_release($69); + } + else if ((label|0) == 13) { + $0 = 0; + $80 = $0; + STACKTOP = sp;return ($80|0); + } + $75 = $2; + $76 = ($75|0)!=(0|0); + if ($76) { + $77 = $2; + $78 = $what; + $79 = $errtxt; + FUNCTION_TABLE_viiii[$77 & 63](36342,8,$78,$79); + } + $0 = 50; + $80 = $0; + STACKTOP = sp;return ($80|0); +} +function _selftests_sha384($extended,$report) { + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $errtxt = 0, $tvidx = 0, $what = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $extended; + $2 = $report; + $tvidx = 0; + while(1) { + $3 = $tvidx; + $4 = (3360 + (($3*60)|0)|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + label = 6; + break; + } + $7 = $tvidx; + $8 = (3360 + (($7*60)|0)|0); + $9 = HEAP32[$8>>2]|0; + $what = $9; + $10 = $tvidx; + $11 = (3360 + (($10*60)|0)|0); + $12 = ((($11)) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = $tvidx; + $15 = (3360 + (($14*60)|0)|0); + $16 = ((($15)) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = (_strlen($17)|0); + $19 = $tvidx; + $20 = (3360 + (($19*60)|0)|0); + $21 = ((($20)) + 8|0); + $22 = HEAP32[$21>>2]|0; + $23 = $tvidx; + $24 = (3360 + (($23*60)|0)|0); + $25 = ((($24)) + 8|0); + $26 = HEAP32[$25>>2]|0; + $27 = (_strlen($26)|0); + $28 = $tvidx; + $29 = (3360 + (($28*60)|0)|0); + $30 = ((($29)) + 12|0); + $31 = (_check_one(9,$13,$18,$22,$27,$30,48)|0); + $errtxt = $31; + $32 = $errtxt; + $33 = ($32|0)!=(0|0); + if ($33) { + break; + } + $34 = $1; + $35 = ($34|0)!=(0); + if (!($35)) { + label = 6; + break; + } + $36 = $tvidx; + $37 = (($36) + 1)|0; + $tvidx = $37; + } + if ((label|0) == 6) { + $0 = 0; + $43 = $0; + STACKTOP = sp;return ($43|0); + } + $38 = $2; + $39 = ($38|0)!=(0|0); + if ($39) { + $40 = $2; + $41 = $what; + $42 = $errtxt; + FUNCTION_TABLE_viiii[$40 & 63](36342,9,$41,$42); + } + $0 = 50; + $43 = $0; + STACKTOP = sp;return ($43|0); +} +function _selftests_sha512($extended,$report) { + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $errtxt = 0, $tvidx = 0, $what = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $extended; + $2 = $report; + $tvidx = 0; + while(1) { + $3 = $tvidx; + $4 = (3780 + (($3*76)|0)|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + label = 6; + break; + } + $7 = $tvidx; + $8 = (3780 + (($7*76)|0)|0); + $9 = HEAP32[$8>>2]|0; + $what = $9; + $10 = $tvidx; + $11 = (3780 + (($10*76)|0)|0); + $12 = ((($11)) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = $tvidx; + $15 = (3780 + (($14*76)|0)|0); + $16 = ((($15)) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = (_strlen($17)|0); + $19 = $tvidx; + $20 = (3780 + (($19*76)|0)|0); + $21 = ((($20)) + 8|0); + $22 = HEAP32[$21>>2]|0; + $23 = $tvidx; + $24 = (3780 + (($23*76)|0)|0); + $25 = ((($24)) + 8|0); + $26 = HEAP32[$25>>2]|0; + $27 = (_strlen($26)|0); + $28 = $tvidx; + $29 = (3780 + (($28*76)|0)|0); + $30 = ((($29)) + 12|0); + $31 = (_check_one(10,$13,$18,$22,$27,$30,64)|0); + $errtxt = $31; + $32 = $errtxt; + $33 = ($32|0)!=(0|0); + if ($33) { + break; + } + $34 = $1; + $35 = ($34|0)!=(0); + if (!($35)) { + label = 6; + break; + } + $36 = $tvidx; + $37 = (($36) + 1)|0; + $tvidx = $37; + } + if ((label|0) == 6) { + $0 = 0; + $43 = $0; + STACKTOP = sp;return ($43|0); + } + $38 = $2; + $39 = ($38|0)!=(0|0); + if ($39) { + $40 = $2; + $41 = $what; + $42 = $errtxt; + FUNCTION_TABLE_viiii[$40 & 63](36342,10,$41,$42); + } + $0 = 50; + $43 = $0; + STACKTOP = sp;return ($43|0); +} +function _gpg_error_906($code) { + $code = $code|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $code; + $1 = $0; + $2 = (_gpg_err_make_907(1,$1)|0); + STACKTOP = sp;return ($2|0); +} +function _gpg_err_make_907($source,$code) { + $source = $source|0; + $code = $code|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $source; + $1 = $code; + $2 = $1; + $3 = ($2|0)==(0); + if ($3) { + $10 = 0; + STACKTOP = sp;return ($10|0); + } + $4 = $0; + $5 = $4 & 127; + $6 = $5 << 24; + $7 = $1; + $8 = $7 & 65535; + $9 = $6 | $8; + $10 = $9; + STACKTOP = sp;return ($10|0); +} +function __gcry_md_map_name($string) { + $string = $string|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $string; + $2 = $1; + $3 = ($2|0)!=(0|0); + do { + if ($3) { + $4 = $1; + $5 = (_search_oid_943($4,0)|0); + $spec = $5; + $6 = $spec; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = $spec; + $9 = HEAP32[$8>>2]|0; + $0 = $9; + break; + } + $10 = $1; + $11 = (_spec_from_name_947($10)|0); + $spec = $11; + $12 = $spec; + $13 = ($12|0)!=(0|0); + if ($13) { + $14 = $spec; + $15 = HEAP32[$14>>2]|0; + $0 = $15; + break; + } else { + $0 = 0; + break; + } + } else { + $0 = 0; + } + } while(0); + $16 = $0; + STACKTOP = sp;return ($16|0); +} +function _search_oid_943($oid,$oid_spec) { + $oid = $oid|0; + $oid_spec = $oid_spec|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $oid; + $2 = $oid_spec; + $3 = $1; + $4 = ($3|0)!=(0|0); + do { + if ($4) { + $5 = $1; + $6 = (_strncmp($5,37110,4)|0); + $7 = ($6|0)!=(0); + if ($7) { + $8 = $1; + $9 = (_strncmp($8,37115,4)|0); + $10 = ($9|0)!=(0); + if ($10) { + break; + } + } + $11 = $1; + $12 = ((($11)) + 4|0); + $1 = $12; + } + } while(0); + $13 = $1; + $14 = (_spec_from_oid_946($13)|0); + $spec = $14; + $15 = $spec; + $16 = ($15|0)!=(0|0); + L7: do { + if ($16) { + $17 = $spec; + $18 = ((($17)) + 20|0); + $19 = HEAP32[$18>>2]|0; + $20 = ($19|0)!=(0|0); + if ($20) { + $i = 0; + while(1) { + $21 = $i; + $22 = $spec; + $23 = ((($22)) + 20|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + ($21<<2)|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)!=(0|0); + if (!($27)) { + break L7; + } + $28 = $1; + $29 = $i; + $30 = $spec; + $31 = ((($30)) + 20|0); + $32 = HEAP32[$31>>2]|0; + $33 = (($32) + ($29<<2)|0); + $34 = HEAP32[$33>>2]|0; + $35 = (_strcasecmp($28,$34)|0); + $36 = ($35|0)!=(0); + if (!($36)) { + break; + } + $46 = $i; + $47 = (($46) + 1)|0; + $i = $47; + } + $37 = $2; + $38 = ($37|0)!=(0|0); + if ($38) { + $39 = $2; + $40 = $i; + $41 = $spec; + $42 = ((($41)) + 20|0); + $43 = HEAP32[$42>>2]|0; + $44 = (($43) + ($40<<2)|0); + ;HEAP32[$39>>2]=HEAP32[$44>>2]|0; + } + $45 = $spec; + $0 = $45; + $48 = $0; + STACKTOP = sp;return ($48|0); + } + } + } while(0); + $0 = 0; + $48 = $0; + STACKTOP = sp;return ($48|0); +} +function _spec_from_oid_946($oid) { + $oid = $oid|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $idx = 0, $j = 0, $oid_specs = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $oid; + $idx = 0; + L1: while(1) { + $2 = $idx; + $3 = (4312 + ($2<<2)|0); + $4 = HEAP32[$3>>2]|0; + $spec = $4; + $5 = ($4|0)!=(0|0); + if (!($5)) { + label = 10; + break; + } + $6 = $spec; + $7 = ((($6)) + 20|0); + $8 = HEAP32[$7>>2]|0; + $oid_specs = $8; + $9 = $oid_specs; + $10 = ($9|0)!=(0|0); + L4: do { + if ($10) { + $j = 0; + while(1) { + $11 = $j; + $12 = $oid_specs; + $13 = (($12) + ($11<<2)|0); + $14 = HEAP32[$13>>2]|0; + $15 = ($14|0)!=(0|0); + if (!($15)) { + break L4; + } + $16 = $1; + $17 = $j; + $18 = $oid_specs; + $19 = (($18) + ($17<<2)|0); + $20 = HEAP32[$19>>2]|0; + $21 = (_strcasecmp($16,$20)|0); + $22 = ($21|0)!=(0); + if (!($22)) { + label = 7; + break L1; + } + $24 = $j; + $25 = (($24) + 1)|0; + $j = $25; + } + } + } while(0); + $26 = $idx; + $27 = (($26) + 1)|0; + $idx = $27; + } + if ((label|0) == 7) { + $23 = $spec; + $0 = $23; + $28 = $0; + STACKTOP = sp;return ($28|0); + } + else if ((label|0) == 10) { + $0 = 0; + $28 = $0; + STACKTOP = sp;return ($28|0); + } + return (0)|0; +} +function _spec_from_name_947($name) { + $name = $name|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $idx = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $name; + $idx = 0; + while(1) { + $2 = $idx; + $3 = (4312 + ($2<<2)|0); + $4 = HEAP32[$3>>2]|0; + $spec = $4; + $5 = ($4|0)!=(0|0); + if (!($5)) { + label = 6; + break; + } + $6 = $1; + $7 = $spec; + $8 = ((($7)) + 8|0); + $9 = HEAP32[$8>>2]|0; + $10 = (_strcasecmp($6,$9)|0); + $11 = ($10|0)!=(0); + if (!($11)) { + label = 4; + break; + } + $13 = $idx; + $14 = (($13) + 1)|0; + $idx = $14; + } + if ((label|0) == 4) { + $12 = $spec; + $0 = $12; + $15 = $0; + STACKTOP = sp;return ($15|0); + } + else if ((label|0) == 6) { + $0 = 0; + $15 = $0; + STACKTOP = sp;return ($15|0); + } + return (0)|0; +} +function __gcry_md_algo_name($algorithm) { + $algorithm = $algorithm|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $algorithm; + $1 = $0; + $2 = (_spec_from_algo_950($1)|0); + $spec = $2; + $3 = $spec; + $4 = ($3|0)!=(0|0); + if (!($4)) { + $8 = 37956; + STACKTOP = sp;return ($8|0); + } + $5 = $spec; + $6 = ((($5)) + 8|0); + $7 = HEAP32[$6>>2]|0; + $8 = $7; + STACKTOP = sp;return ($8|0); +} +function _spec_from_algo_950($algo) { + $algo = $algo|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $idx = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $algo; + $2 = $1; + $3 = (_map_algo_951($2)|0); + $1 = $3; + $idx = 0; + while(1) { + $4 = $idx; + $5 = (4312 + ($4<<2)|0); + $6 = HEAP32[$5>>2]|0; + $spec = $6; + $7 = ($6|0)!=(0|0); + if (!($7)) { + label = 6; + break; + } + $8 = $1; + $9 = $spec; + $10 = HEAP32[$9>>2]|0; + $11 = ($8|0)==($10|0); + if ($11) { + label = 4; + break; + } + $13 = $idx; + $14 = (($13) + 1)|0; + $idx = $14; + } + if ((label|0) == 4) { + $12 = $spec; + $0 = $12; + $15 = $0; + STACKTOP = sp;return ($15|0); + } + else if ((label|0) == 6) { + $0 = 0; + $15 = $0; + STACKTOP = sp;return ($15|0); + } + return (0)|0; +} +function _map_algo_951($algo) { + $algo = $algo|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $algo; + $1 = $0; + STACKTOP = sp;return ($1|0); +} +function __gcry_md_open($h,$algo,$flags) { + $h = $h|0; + $algo = $algo|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $hd = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $hd = sp; + $0 = $h; + $1 = $algo; + $2 = $flags; + $3 = $2; + $4 = $3 & -260; + $5 = ($4|0)!=(0); + if ($5) { + $rc = 45; + } else { + $6 = $1; + $7 = $2; + $8 = (_md_open($hd,$6,$7)|0); + $rc = $8; + } + $9 = $rc; + $10 = ($9|0)!=(0); + $11 = HEAP32[$hd>>2]|0; + $12 = $10 ? 0 : $11; + $13 = $0; + HEAP32[$13>>2] = $12; + $14 = $rc; + STACKTOP = sp;return ($14|0); +} +function _md_open($h,$algo,$flags) { + $h = $h|0; + $algo = $algo|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $bufsize = 0, $ctx = 0, $err = 0, $hd = 0, $hmac = 0, $n = 0, $secure = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $h; + $1 = $algo; + $2 = $flags; + $err = 0; + $3 = $2; + $4 = $3 & 1; + $5 = ($4|0)!=(0); + $6 = $5 ^ 1; + $7 = $6 ^ 1; + $8 = $7&1; + $secure = $8; + $9 = $2; + $10 = $9 & 2; + $11 = ($10|0)!=(0); + $12 = $11 ^ 1; + $13 = $12 ^ 1; + $14 = $13&1; + $hmac = $14; + $15 = $secure; + $16 = ($15|0)!=(0); + $17 = $16 ? 512 : 1024; + $bufsize = $17; + $18 = $bufsize; + $19 = (16 + ($18))|0; + $n = $19; + $20 = $n; + $21 = (($20) + 8)|0; + $22 = (($21) - 1)|0; + $23 = (($22>>>0) / 8)&-1; + $24 = $23<<3; + $n = $24; + $25 = $secure; + $26 = ($25|0)!=(0); + $27 = $n; + $28 = (($27) + 28)|0; + if ($26) { + $29 = (__gcry_malloc_secure($28)|0); + $hd = $29; + } else { + $30 = (__gcry_malloc($28)|0); + $hd = $30; + } + $31 = $hd; + $32 = ($31|0)!=(0|0); + if (!($32)) { + $33 = (___errno_location()|0); + $34 = HEAP32[$33>>2]|0; + $35 = (_gpg_err_code_from_errno($34)|0); + $err = $35; + } + $36 = $err; + $37 = ($36|0)!=(0); + if (!($37)) { + $38 = $hd; + $39 = $n; + $40 = (($38) + ($39)|0); + $ctx = $40; + $41 = $hd; + HEAP32[$41>>2] = $40; + $42 = $n; + $43 = (($42) - 16)|0; + $44 = (($43) + 1)|0; + $45 = $hd; + $46 = ((($45)) + 8|0); + HEAP32[$46>>2] = $44; + $47 = $hd; + $48 = ((($47)) + 4|0); + HEAP32[$48>>2] = 0; + $49 = $hd; + $50 = HEAP32[$49>>2]|0; + ;HEAP32[$50>>2]=0|0;HEAP32[$50+4>>2]=0|0;HEAP32[$50+8>>2]=0|0;HEAP32[$50+12>>2]=0|0;HEAP32[$50+16>>2]=0|0;HEAP32[$50+20>>2]=0|0;HEAP32[$50+24>>2]=0|0; + $51 = $secure; + $52 = ($51|0)!=(0); + $53 = $52 ? 378630161 : 285677921; + $54 = $ctx; + HEAP32[$54>>2] = $53; + $55 = $n; + $56 = (($55) + 28)|0; + $57 = $ctx; + $58 = ((($57)) + 4|0); + HEAP32[$58>>2] = $56; + $59 = $secure; + $60 = $ctx; + $61 = ((($60)) + 12|0); + $62 = $59&255; + $63 = HEAP8[$61>>0]|0; + $64 = $62 & 1; + $65 = $63 & -2; + $66 = $65 | $64; + HEAP8[$61>>0] = $66; + $67 = $2; + $68 = $67 & 256; + $69 = ($68|0)!=(0); + $70 = $69 ^ 1; + $71 = $70 ^ 1; + $72 = $71&1; + $73 = $ctx; + $74 = ((($73)) + 12|0); + $75 = $72&255; + $76 = HEAP8[$74>>0]|0; + $77 = $75 & 1; + $78 = ($77 << 2)&255; + $79 = $76 & -5; + $80 = $79 | $78; + HEAP8[$74>>0] = $80; + $81 = $hmac; + $82 = ($81|0)!=(0); + if ($82) { + $83 = $1; + switch ($83|0) { + case 10: case 9: { + $84 = $ctx; + $85 = ((($84)) + 24|0); + HEAP32[$85>>2] = 128; + break; + } + case 311: case 308: { + $86 = $ctx; + $87 = ((($86)) + 24|0); + HEAP32[$87>>2] = 32; + break; + } + default: { + $88 = $ctx; + $89 = ((($88)) + 24|0); + HEAP32[$89>>2] = 64; + } + } + $90 = $ctx; + $91 = ((($90)) + 24|0); + $92 = HEAP32[$91>>2]|0; + $93 = $92<<1; + $94 = (__gcry_malloc_secure($93)|0); + $95 = $ctx; + $96 = ((($95)) + 20|0); + HEAP32[$96>>2] = $94; + $97 = $ctx; + $98 = ((($97)) + 20|0); + $99 = HEAP32[$98>>2]|0; + $100 = ($99|0)!=(0|0); + if (!($100)) { + $101 = (___errno_location()|0); + $102 = HEAP32[$101>>2]|0; + $103 = (_gpg_err_code_from_errno($102)|0); + $err = $103; + $104 = $hd; + _md_close($104); + } + } + } + $105 = $err; + $106 = ($105|0)!=(0); + if (!($106)) { + __gcry_fast_random_poll(); + $107 = $1; + $108 = ($107|0)!=(0); + if ($108) { + $109 = $hd; + $110 = $1; + $111 = (_md_enable($109,$110)|0); + $err = $111; + $112 = $err; + $113 = ($112|0)!=(0); + if ($113) { + $114 = $hd; + _md_close($114); + } + } + } + $115 = $err; + $116 = ($115|0)!=(0); + if ($116) { + $119 = $err; + STACKTOP = sp;return ($119|0); + } + $117 = $hd; + $118 = $0; + HEAP32[$118>>2] = $117; + $119 = $err; + STACKTOP = sp;return ($119|0); +} +function _md_close($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $_vlen = 0, $_vlen2 = 0, $_vlen7 = 0, $_vptr = 0, $_vptr1 = 0, $_vptr6 = 0, $_vptr_long = 0, $_vptr_long10 = 0, $_vptr_long5 = 0, $_vset = 0, $_vset3 = 0, $_vset8 = 0, $_vset_long = 0, $_vset_long4 = 0, $_vset_long9 = 0; + var $r = 0, $r2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $_vset_long = sp + 16|0; + $_vset_long4 = sp + 8|0; + $_vset_long9 = sp; + $0 = $a; + $1 = $0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = $0; + $4 = HEAP32[$3>>2]|0; + $5 = ((($4)) + 8|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = $0; + _md_stop_debug($8); + } + $9 = $0; + $10 = HEAP32[$9>>2]|0; + $11 = ((($10)) + 16|0); + $12 = HEAP32[$11>>2]|0; + $r = $12; + while(1) { + $13 = $r; + $14 = ($13|0)!=(0|0); + if (!($14)) { + break; + } + $15 = $r; + $16 = ((($15)) + 4|0); + $17 = HEAP32[$16>>2]|0; + $r2 = $17; + $18 = $r; + $_vptr = $18; + $19 = $r; + $20 = ((($19)) + 8|0); + $21 = HEAP32[$20>>2]|0; + $_vlen = $21; + $_vset = 0; + $22 = $_vset; + $23 = $22&255; + $24 = $_vset_long; + $25 = $24; + HEAP32[$25>>2] = $23; + $26 = (($24) + 4)|0; + $27 = $26; + HEAP32[$27>>2] = 0; + while(1) { + $28 = $_vptr; + $29 = $28; + $30 = $29 & 7; + $31 = ($30|0)!=(0); + $32 = $_vlen; + $33 = ($32|0)!=(0); + $34 = $31 ? $33 : 0; + if (!($34)) { + break; + } + $35 = $_vset; + $36 = $_vptr; + HEAP8[$36>>0] = $35; + $37 = $_vptr; + $38 = ((($37)) + 1|0); + $_vptr = $38; + $39 = $_vlen; + $40 = (($39) + -1)|0; + $_vlen = $40; + } + $41 = $_vlen; + $42 = ($41>>>0)<(8); + if (!($42)) { + $43 = $_vset_long; + $44 = $43; + $45 = HEAP32[$44>>2]|0; + $46 = (($43) + 4)|0; + $47 = $46; + $48 = HEAP32[$47>>2]|0; + $49 = (___muldi3(($45|0),($48|0),16843009,16843009)|0); + $50 = tempRet0; + $51 = $_vset_long; + $52 = $51; + HEAP32[$52>>2] = $49; + $53 = (($51) + 4)|0; + $54 = $53; + HEAP32[$54>>2] = $50; + while(1) { + $55 = $_vptr; + $_vptr_long = $55; + $56 = $_vset_long; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = (($56) + 4)|0; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = $_vptr_long; + $63 = $62; + $64 = $63; + HEAP32[$64>>2] = $58; + $65 = (($63) + 4)|0; + $66 = $65; + HEAP32[$66>>2] = $61; + $67 = $_vlen; + $68 = (($67) - 8)|0; + $_vlen = $68; + $69 = $_vptr; + $70 = ((($69)) + 8|0); + $_vptr = $70; + $71 = $_vlen; + $72 = ($71>>>0)>=(8); + if (!($72)) { + break; + } + } + } + while(1) { + $73 = $_vlen; + $74 = ($73|0)!=(0); + if (!($74)) { + break; + } + $75 = $_vset; + $76 = $_vptr; + HEAP8[$76>>0] = $75; + $77 = $_vptr; + $78 = ((($77)) + 1|0); + $_vptr = $78; + $79 = $_vlen; + $80 = (($79) + -1)|0; + $_vlen = $80; + } + $81 = $r; + __gcry_free($81); + $82 = $r2; + $r = $82; + } + $83 = $0; + $84 = HEAP32[$83>>2]|0; + $85 = ((($84)) + 20|0); + $86 = HEAP32[$85>>2]|0; + $87 = ($86|0)!=(0|0); + if ($87) { + $88 = $0; + $89 = HEAP32[$88>>2]|0; + $90 = ((($89)) + 20|0); + $91 = HEAP32[$90>>2]|0; + $_vptr1 = $91; + $92 = $0; + $93 = HEAP32[$92>>2]|0; + $94 = ((($93)) + 24|0); + $95 = HEAP32[$94>>2]|0; + $96 = $95<<1; + $_vlen2 = $96; + $_vset3 = 0; + $97 = $_vset3; + $98 = $97&255; + $99 = $_vset_long4; + $100 = $99; + HEAP32[$100>>2] = $98; + $101 = (($99) + 4)|0; + $102 = $101; + HEAP32[$102>>2] = 0; + while(1) { + $103 = $_vptr1; + $104 = $103; + $105 = $104 & 7; + $106 = ($105|0)!=(0); + $107 = $_vlen2; + $108 = ($107|0)!=(0); + $109 = $106 ? $108 : 0; + if (!($109)) { + break; + } + $110 = $_vset3; + $111 = $_vptr1; + HEAP8[$111>>0] = $110; + $112 = $_vptr1; + $113 = ((($112)) + 1|0); + $_vptr1 = $113; + $114 = $_vlen2; + $115 = (($114) + -1)|0; + $_vlen2 = $115; + } + $116 = $_vlen2; + $117 = ($116>>>0)<(8); + if (!($117)) { + $118 = $_vset_long4; + $119 = $118; + $120 = HEAP32[$119>>2]|0; + $121 = (($118) + 4)|0; + $122 = $121; + $123 = HEAP32[$122>>2]|0; + $124 = (___muldi3(($120|0),($123|0),16843009,16843009)|0); + $125 = tempRet0; + $126 = $_vset_long4; + $127 = $126; + HEAP32[$127>>2] = $124; + $128 = (($126) + 4)|0; + $129 = $128; + HEAP32[$129>>2] = $125; + while(1) { + $130 = $_vptr1; + $_vptr_long5 = $130; + $131 = $_vset_long4; + $132 = $131; + $133 = HEAP32[$132>>2]|0; + $134 = (($131) + 4)|0; + $135 = $134; + $136 = HEAP32[$135>>2]|0; + $137 = $_vptr_long5; + $138 = $137; + $139 = $138; + HEAP32[$139>>2] = $133; + $140 = (($138) + 4)|0; + $141 = $140; + HEAP32[$141>>2] = $136; + $142 = $_vlen2; + $143 = (($142) - 8)|0; + $_vlen2 = $143; + $144 = $_vptr1; + $145 = ((($144)) + 8|0); + $_vptr1 = $145; + $146 = $_vlen2; + $147 = ($146>>>0)>=(8); + if (!($147)) { + break; + } + } + } + while(1) { + $148 = $_vlen2; + $149 = ($148|0)!=(0); + if (!($149)) { + break; + } + $150 = $_vset3; + $151 = $_vptr1; + HEAP8[$151>>0] = $150; + $152 = $_vptr1; + $153 = ((($152)) + 1|0); + $_vptr1 = $153; + $154 = $_vlen2; + $155 = (($154) + -1)|0; + $_vlen2 = $155; + } + $156 = $0; + $157 = HEAP32[$156>>2]|0; + $158 = ((($157)) + 20|0); + $159 = HEAP32[$158>>2]|0; + __gcry_free($159); + } + $160 = $0; + $_vptr6 = $160; + $161 = $0; + $162 = HEAP32[$161>>2]|0; + $163 = ((($162)) + 4|0); + $164 = HEAP32[$163>>2]|0; + $_vlen7 = $164; + $_vset8 = 0; + $165 = $_vset8; + $166 = $165&255; + $167 = $_vset_long9; + $168 = $167; + HEAP32[$168>>2] = $166; + $169 = (($167) + 4)|0; + $170 = $169; + HEAP32[$170>>2] = 0; + while(1) { + $171 = $_vptr6; + $172 = $171; + $173 = $172 & 7; + $174 = ($173|0)!=(0); + $175 = $_vlen7; + $176 = ($175|0)!=(0); + $177 = $174 ? $176 : 0; + if (!($177)) { + break; + } + $178 = $_vset8; + $179 = $_vptr6; + HEAP8[$179>>0] = $178; + $180 = $_vptr6; + $181 = ((($180)) + 1|0); + $_vptr6 = $181; + $182 = $_vlen7; + $183 = (($182) + -1)|0; + $_vlen7 = $183; + } + $184 = $_vlen7; + $185 = ($184>>>0)<(8); + if (!($185)) { + $186 = $_vset_long9; + $187 = $186; + $188 = HEAP32[$187>>2]|0; + $189 = (($186) + 4)|0; + $190 = $189; + $191 = HEAP32[$190>>2]|0; + $192 = (___muldi3(($188|0),($191|0),16843009,16843009)|0); + $193 = tempRet0; + $194 = $_vset_long9; + $195 = $194; + HEAP32[$195>>2] = $192; + $196 = (($194) + 4)|0; + $197 = $196; + HEAP32[$197>>2] = $193; + while(1) { + $198 = $_vptr6; + $_vptr_long10 = $198; + $199 = $_vset_long9; + $200 = $199; + $201 = HEAP32[$200>>2]|0; + $202 = (($199) + 4)|0; + $203 = $202; + $204 = HEAP32[$203>>2]|0; + $205 = $_vptr_long10; + $206 = $205; + $207 = $206; + HEAP32[$207>>2] = $201; + $208 = (($206) + 4)|0; + $209 = $208; + HEAP32[$209>>2] = $204; + $210 = $_vlen7; + $211 = (($210) - 8)|0; + $_vlen7 = $211; + $212 = $_vptr6; + $213 = ((($212)) + 8|0); + $_vptr6 = $213; + $214 = $_vlen7; + $215 = ($214>>>0)>=(8); + if (!($215)) { + break; + } + } + } + while(1) { + $216 = $_vlen7; + $217 = ($216|0)!=(0); + if (!($217)) { + break; + } + $218 = $_vset8; + $219 = $_vptr6; + HEAP8[$219>>0] = $218; + $220 = $_vptr6; + $221 = ((($220)) + 1|0); + $_vptr6 = $221; + $222 = $_vlen7; + $223 = (($222) + -1)|0; + $_vlen7 = $223; + } + $224 = $0; + __gcry_free($224); + STACKTOP = sp;return; +} +function _md_stop_debug($md) { + $md = $md|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $a = 0, $b = 0, $c = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $b = sp + 8|0; + $c = sp; + $0 = $md; + $1 = $0; + $2 = HEAP32[$1>>2]|0; + $3 = ((($2)) + 8|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = $0; + $7 = ((($6)) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0); + if ($9) { + $10 = $0; + _md_write($10,0,0); + } + $11 = $0; + $12 = HEAP32[$11>>2]|0; + $13 = ((($12)) + 8|0); + $14 = HEAP32[$13>>2]|0; + (_fclose($14)|0); + $15 = $0; + $16 = HEAP32[$15>>2]|0; + $17 = ((($16)) + 8|0); + HEAP32[$17>>2] = 0; + } + $18 = $0; + $19 = $18; + $a = $19; + $20 = $b; + $21 = $20; + HEAP32[$21>>2] = 42; + $22 = (($20) + 4)|0; + $23 = $22; + HEAP32[$23>>2] = 0; + $24 = $a; + $25 = $b; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = (___muldi3(($24|0),0,($27|0),($30|0))|0); + $32 = tempRet0; + $33 = $c; + $34 = $33; + HEAP32[$34>>2] = $31; + $35 = (($33) + 4)|0; + $36 = $35; + HEAP32[$36>>2] = $32; + $37 = $c; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (($37) + 4)|0; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + STACKTOP = sp;return; +} +function _md_write($a,$inbuf,$inlen) { + $a = $a|0; + $inbuf = $inbuf|0; + $inlen = $inlen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $r = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $inbuf; + $2 = $inlen; + $3 = $0; + $4 = HEAP32[$3>>2]|0; + $5 = ((($4)) + 8|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = $0; + $9 = ((($8)) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0); + if ($11) { + $12 = $0; + $13 = ((($12)) + 12|0); + $14 = $0; + $15 = ((($14)) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = $0; + $18 = HEAP32[$17>>2]|0; + $19 = ((($18)) + 8|0); + $20 = HEAP32[$19>>2]|0; + $21 = (_fwrite($13,$16,1,$20)|0); + $22 = ($21|0)!=(1); + if ($22) { + __gcry_bug(37120,630,37125); + // unreachable; + } + } + $23 = $2; + $24 = ($23|0)!=(0); + if ($24) { + $25 = $1; + $26 = $2; + $27 = $0; + $28 = HEAP32[$27>>2]|0; + $29 = ((($28)) + 8|0); + $30 = HEAP32[$29>>2]|0; + $31 = (_fwrite($25,$26,1,$30)|0); + $32 = ($31|0)!=(1); + if ($32) { + __gcry_bug(37120,632,37125); + // unreachable; + } + } + } + $33 = $0; + $34 = HEAP32[$33>>2]|0; + $35 = ((($34)) + 16|0); + $36 = HEAP32[$35>>2]|0; + $r = $36; + while(1) { + $37 = $r; + $38 = ($37|0)!=(0|0); + $39 = $0; + $40 = ((($39)) + 4|0); + if (!($38)) { + break; + } + $41 = HEAP32[$40>>2]|0; + $42 = ($41|0)!=(0); + if ($42) { + $43 = $r; + $44 = HEAP32[$43>>2]|0; + $45 = ((($44)) + 32|0); + $46 = HEAP32[$45>>2]|0; + $47 = $r; + $48 = ((($47)) + 16|0); + $49 = $0; + $50 = ((($49)) + 12|0); + $51 = $0; + $52 = ((($51)) + 4|0); + $53 = HEAP32[$52>>2]|0; + FUNCTION_TABLE_viii[$46 & 127]($48,$50,$53); + } + $54 = $r; + $55 = HEAP32[$54>>2]|0; + $56 = ((($55)) + 32|0); + $57 = HEAP32[$56>>2]|0; + $58 = $r; + $59 = ((($58)) + 16|0); + $60 = $1; + $61 = $2; + FUNCTION_TABLE_viii[$57 & 127]($59,$60,$61); + $62 = $r; + $63 = ((($62)) + 4|0); + $64 = HEAP32[$63>>2]|0; + $r = $64; + } + HEAP32[$40>>2] = 0; + STACKTOP = sp;return; +} +function _md_enable($hd,$algorithm) { + $hd = $hd|0; + $algorithm = $algorithm|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $9 = 0, $entry = 0, $err = 0, $h = 0, $or$cond = 0, $size = 0, $spec = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $1 = $hd; + $2 = $algorithm; + $3 = $1; + $4 = HEAP32[$3>>2]|0; + $h = $4; + $err = 0; + $5 = $h; + $6 = ((($5)) + 16|0); + $7 = HEAP32[$6>>2]|0; + $entry = $7; + while(1) { + $8 = $entry; + $9 = ($8|0)!=(0|0); + if (!($9)) { + break; + } + $10 = $entry; + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = $2; + $14 = ($12|0)==($13|0); + if ($14) { + label = 4; + break; + } + $15 = $entry; + $16 = ((($15)) + 4|0); + $17 = HEAP32[$16>>2]|0; + $entry = $17; + } + if ((label|0) == 4) { + $0 = 0; + $80 = $0; + STACKTOP = sp;return ($80|0); + } + $18 = $2; + $19 = (_spec_from_algo_950($18)|0); + $spec = $19; + $20 = $spec; + $21 = ($20|0)!=(0|0); + if (!($21)) { + $22 = $2; + HEAP32[$vararg_buffer>>2] = $22; + __gcry_log_debug(37134,$vararg_buffer); + $err = 5; + } + $23 = $err; + $24 = ($23|0)==(0); + $25 = $2; + $26 = ($25|0)==(1); + $or$cond = $24 & $26; + if ($or$cond) { + $27 = (__gcry_fips_mode()|0); + $28 = ($27|0)!=(0); + if ($28) { + __gcry_inactivate_fips_mode(37173); + $29 = (__gcry_enforced_fips_mode()|0); + $30 = ($29|0)!=(0); + if ($30) { + $err = 5; + } + } + } + $31 = $err; + $32 = ($31|0)!=(0); + do { + if (!($32)) { + $33 = $spec; + $34 = ((($33)) + 44|0); + $35 = HEAP32[$34>>2]|0; + $36 = (24 + ($35))|0; + $37 = (($36) - 8)|0; + $size = $37; + $38 = $h; + $39 = ((($38)) + 12|0); + $40 = HEAP8[$39>>0]|0; + $41 = $40 & 1; + $42 = $41&255; + $43 = ($42|0)!=(0); + $44 = $size; + if ($43) { + $45 = (__gcry_malloc_secure($44)|0); + $entry = $45; + } else { + $46 = (__gcry_malloc($44)|0); + $entry = $46; + } + $47 = $entry; + $48 = ($47|0)!=(0|0); + if ($48) { + $52 = $spec; + $53 = $entry; + HEAP32[$53>>2] = $52; + $54 = $h; + $55 = ((($54)) + 16|0); + $56 = HEAP32[$55>>2]|0; + $57 = $entry; + $58 = ((($57)) + 4|0); + HEAP32[$58>>2] = $56; + $59 = $size; + $60 = $entry; + $61 = ((($60)) + 8|0); + HEAP32[$61>>2] = $59; + $62 = $entry; + $63 = $h; + $64 = ((($63)) + 16|0); + HEAP32[$64>>2] = $62; + $65 = $entry; + $66 = HEAP32[$65>>2]|0; + $67 = ((($66)) + 28|0); + $68 = HEAP32[$67>>2]|0; + $69 = $entry; + $70 = ((($69)) + 16|0); + $71 = $h; + $72 = ((($71)) + 12|0); + $73 = HEAP8[$72>>0]|0; + $74 = ($73&255) >>> 2; + $75 = $74 & 1; + $76 = $75&255; + $77 = ($76|0)!=(0); + $78 = $77 ? 256 : 0; + FUNCTION_TABLE_vii[$68 & 63]($70,$78); + break; + } else { + $49 = (___errno_location()|0); + $50 = HEAP32[$49>>2]|0; + $51 = (_gpg_err_code_from_errno($50)|0); + $err = $51; + break; + } + } + } while(0); + $79 = $err; + $0 = $79; + $80 = $0; + STACKTOP = sp;return ($80|0); +} +function _md_start_debug($md,$suffix) { + $md = $md|0; + $suffix = $suffix|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $buf = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer4 = 0, $vararg_ptr3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer4 = sp + 16|0; + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $buf = sp + 28|0; + $0 = $md; + $1 = $suffix; + $2 = (__gcry_fips_mode()|0); + $3 = ($2|0)!=(0); + if ($3) { + STACKTOP = sp;return; + } + $4 = $0; + $5 = HEAP32[$4>>2]|0; + $6 = ((($5)) + 8|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0|0); + if ($8) { + __gcry_log_debug(37182,$vararg_buffer); + STACKTOP = sp;return; + } + $9 = HEAP32[17703]|0; + $10 = (($9) + 1)|0; + HEAP32[17703] = $10; + $11 = HEAP32[17703]|0; + $12 = $1; + HEAP32[$vararg_buffer1>>2] = $11; + $vararg_ptr3 = ((($vararg_buffer1)) + 4|0); + HEAP32[$vararg_ptr3>>2] = $12; + (_snprintf($buf,49,37214,$vararg_buffer1)|0); + $13 = (_fopen($buf,37231)|0); + $14 = $0; + $15 = HEAP32[$14>>2]|0; + $16 = ((($15)) + 8|0); + HEAP32[$16>>2] = $13; + $17 = $0; + $18 = HEAP32[$17>>2]|0; + $19 = ((($18)) + 8|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)!=(0|0); + if ($21) { + STACKTOP = sp;return; + } + HEAP32[$vararg_buffer4>>2] = $buf; + __gcry_log_debug(37233,$vararg_buffer4); + STACKTOP = sp;return; +} +function __gcry_md_reset($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $r = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $0; + $2 = HEAP32[$1>>2]|0; + $3 = ((($2)) + 12|0); + $4 = HEAP8[$3>>0]|0; + $5 = $4 & -3; + HEAP8[$3>>0] = $5; + $6 = $0; + $7 = ((($6)) + 4|0); + HEAP32[$7>>2] = 0; + $8 = $0; + $9 = HEAP32[$8>>2]|0; + $10 = ((($9)) + 16|0); + $11 = HEAP32[$10>>2]|0; + $r = $11; + while(1) { + $12 = $r; + $13 = ($12|0)!=(0|0); + if (!($13)) { + break; + } + $14 = $r; + $15 = ((($14)) + 16|0); + $16 = $r; + $17 = HEAP32[$16>>2]|0; + $18 = ((($17)) + 44|0); + $19 = HEAP32[$18>>2]|0; + _memset(($15|0),0,($19|0))|0; + $20 = $r; + $21 = HEAP32[$20>>2]|0; + $22 = ((($21)) + 28|0); + $23 = HEAP32[$22>>2]|0; + $24 = $r; + $25 = ((($24)) + 16|0); + $26 = $0; + $27 = HEAP32[$26>>2]|0; + $28 = ((($27)) + 12|0); + $29 = HEAP8[$28>>0]|0; + $30 = ($29&255) >>> 2; + $31 = $30 & 1; + $32 = $31&255; + $33 = ($32|0)!=(0); + $34 = $33 ? 256 : 0; + FUNCTION_TABLE_vii[$23 & 63]($25,$34); + $35 = $r; + $36 = ((($35)) + 4|0); + $37 = HEAP32[$36>>2]|0; + $r = $37; + } + $38 = $0; + $39 = HEAP32[$38>>2]|0; + $40 = ((($39)) + 20|0); + $41 = HEAP32[$40>>2]|0; + $42 = ($41|0)!=(0|0); + if (!($42)) { + STACKTOP = sp;return; + } + $43 = $0; + $44 = $0; + $45 = HEAP32[$44>>2]|0; + $46 = ((($45)) + 20|0); + $47 = HEAP32[$46>>2]|0; + $48 = $0; + $49 = HEAP32[$48>>2]|0; + $50 = ((($49)) + 24|0); + $51 = HEAP32[$50>>2]|0; + _md_write($43,$47,$51); + STACKTOP = sp;return; +} +function __gcry_md_close($hd) { + $hd = $hd|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $hd; + $1 = $0; + _md_close($1); + STACKTOP = sp;return; +} +function __gcry_md_write($hd,$inbuf,$inlen) { + $hd = $hd|0; + $inbuf = $inbuf|0; + $inlen = $inlen|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $hd; + $1 = $inbuf; + $2 = $inlen; + $3 = $0; + $4 = $1; + $5 = $2; + _md_write($3,$4,$5); + STACKTOP = sp;return; +} +function __gcry_md_ctl($hd,$cmd,$buffer,$buflen) { + $hd = $hd|0; + $cmd = $cmd|0; + $buffer = $buffer|0; + $buflen = $buflen|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $hd; + $1 = $cmd; + $2 = $buffer; + $3 = $buflen; + $rc = 0; + $4 = $1; + switch ($4|0) { + case 5: { + $5 = $0; + _md_final($5); + break; + } + case 32: { + $6 = $0; + $7 = $2; + _md_start_debug($6,$7); + break; + } + case 33: { + $8 = $0; + _md_stop_debug($8); + break; + } + default: { + $rc = 61; + } + } + $9 = $rc; + STACKTOP = sp;return ($9|0); +} +function _md_final($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $algo = 0, $dlen = 0, $err = 0, $om = 0, $p = 0, $r = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $om = sp + 4|0; + $0 = $a; + $1 = $0; + $2 = HEAP32[$1>>2]|0; + $3 = ((($2)) + 12|0); + $4 = HEAP8[$3>>0]|0; + $5 = ($4&255) >>> 1; + $6 = $5 & 1; + $7 = $6&255; + $8 = ($7|0)!=(0); + if ($8) { + STACKTOP = sp;return; + } + $9 = $0; + $10 = ((($9)) + 4|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)!=(0); + if ($12) { + $13 = $0; + _md_write($13,0,0); + } + $14 = $0; + $15 = HEAP32[$14>>2]|0; + $16 = ((($15)) + 16|0); + $17 = HEAP32[$16>>2]|0; + $r = $17; + while(1) { + $18 = $r; + $19 = ($18|0)!=(0|0); + if (!($19)) { + break; + } + $20 = $r; + $21 = HEAP32[$20>>2]|0; + $22 = ((($21)) + 36|0); + $23 = HEAP32[$22>>2]|0; + $24 = $r; + $25 = ((($24)) + 16|0); + FUNCTION_TABLE_vi[$23 & 127]($25); + $26 = $r; + $27 = ((($26)) + 4|0); + $28 = HEAP32[$27>>2]|0; + $r = $28; + } + $29 = $0; + $30 = HEAP32[$29>>2]|0; + $31 = ((($30)) + 12|0); + $32 = HEAP8[$31>>0]|0; + $33 = $32 & -3; + $34 = $33 | 2; + HEAP8[$31>>0] = $34; + $35 = $0; + $36 = HEAP32[$35>>2]|0; + $37 = ((($36)) + 20|0); + $38 = HEAP32[$37>>2]|0; + $39 = ($38|0)!=(0|0); + if (!($39)) { + STACKTOP = sp;return; + } + $40 = $0; + $41 = (_md_get_algo($40)|0); + $algo = $41; + $42 = $0; + $43 = $algo; + $44 = (_md_read($42,$43)|0); + $p = $44; + $45 = $algo; + $46 = (_md_digest_length($45)|0); + $dlen = $46; + $47 = $algo; + $48 = $0; + $49 = HEAP32[$48>>2]|0; + $50 = ((($49)) + 12|0); + $51 = HEAP8[$50>>0]|0; + $52 = $51 & 1; + $53 = $52&255; + $54 = ($53|0)!=(0); + $55 = $54 ? 1 : 0; + $56 = $0; + $57 = HEAP32[$56>>2]|0; + $58 = ((($57)) + 12|0); + $59 = HEAP8[$58>>0]|0; + $60 = ($59&255) >>> 2; + $61 = $60 & 1; + $62 = $61&255; + $63 = ($62|0)!=(0); + $64 = $63 ? 256 : 0; + $65 = $55 | $64; + $66 = (_md_open($om,$47,$65)|0); + $err = $66; + $67 = $err; + $68 = ($67|0)!=(0); + if ($68) { + $69 = $err; + __gcry_fatal_error($69,0); + // unreachable; + } + $70 = HEAP32[$om>>2]|0; + $71 = $0; + $72 = HEAP32[$71>>2]|0; + $73 = ((($72)) + 20|0); + $74 = HEAP32[$73>>2]|0; + $75 = $0; + $76 = HEAP32[$75>>2]|0; + $77 = ((($76)) + 24|0); + $78 = HEAP32[$77>>2]|0; + $79 = (($74) + ($78)|0); + $80 = $0; + $81 = HEAP32[$80>>2]|0; + $82 = ((($81)) + 24|0); + $83 = HEAP32[$82>>2]|0; + _md_write($70,$79,$83); + $84 = HEAP32[$om>>2]|0; + $85 = $p; + $86 = $dlen; + _md_write($84,$85,$86); + $87 = HEAP32[$om>>2]|0; + _md_final($87); + $88 = $p; + $89 = HEAP32[$om>>2]|0; + $90 = $algo; + $91 = (_md_read($89,$90)|0); + $92 = $dlen; + _memcpy(($88|0),($91|0),($92|0))|0; + $93 = HEAP32[$om>>2]|0; + _md_close($93); + STACKTOP = sp;return; +} +function _md_get_algo($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $r = 0, $vararg_buffer = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $a; + $1 = $0; + $2 = HEAP32[$1>>2]|0; + $3 = ((($2)) + 16|0); + $4 = HEAP32[$3>>2]|0; + $r = $4; + $5 = $r; + $6 = ($5|0)!=(0|0); + if ($6) { + $7 = $r; + $8 = ((($7)) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + __gcry_fips_signal_error(37120,980,37258,0,37270); + __gcry_log_error(37291,$vararg_buffer); + } + } + $11 = $r; + $12 = ($11|0)!=(0|0); + if (!($12)) { + $16 = 0; + STACKTOP = sp;return ($16|0); + } + $13 = $r; + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = $15; + STACKTOP = sp;return ($16|0); +} +function _md_read($a,$algo) { + $a = $a|0; + $algo = $algo|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $r = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $1 = $a; + $2 = $algo; + $3 = $1; + $4 = HEAP32[$3>>2]|0; + $5 = ((($4)) + 16|0); + $6 = HEAP32[$5>>2]|0; + $r = $6; + $7 = $2; + $8 = ($7|0)!=(0); + if (!($8)) { + $9 = $r; + $10 = ($9|0)!=(0|0); + if (!($10)) { + __gcry_bug(37120,816,37381); + // unreachable; + } + $11 = $r; + $12 = ((($11)) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)!=(0|0); + if ($14) { + __gcry_log_debug(37342,$vararg_buffer); + } + $15 = $r; + $16 = HEAP32[$15>>2]|0; + $17 = ((($16)) + 40|0); + $18 = HEAP32[$17>>2]|0; + $19 = $r; + $20 = ((($19)) + 16|0); + $21 = (FUNCTION_TABLE_ii[$18 & 63]($20)|0); + $0 = $21; + $42 = $0; + STACKTOP = sp;return ($42|0); + } + $22 = $1; + $23 = HEAP32[$22>>2]|0; + $24 = ((($23)) + 16|0); + $25 = HEAP32[$24>>2]|0; + $r = $25; + while(1) { + $26 = $r; + $27 = ($26|0)!=(0|0); + if (!($27)) { + label = 11; + break; + } + $28 = $r; + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$29>>2]|0; + $31 = $2; + $32 = ($30|0)==($31|0); + $33 = $r; + if ($32) { + break; + } + $40 = ((($33)) + 4|0); + $41 = HEAP32[$40>>2]|0; + $r = $41; + } + if ((label|0) == 11) { + __gcry_bug(37120,816,37381); + // unreachable; + } + $34 = HEAP32[$33>>2]|0; + $35 = ((($34)) + 40|0); + $36 = HEAP32[$35>>2]|0; + $37 = $r; + $38 = ((($37)) + 16|0); + $39 = (FUNCTION_TABLE_ii[$36 & 63]($38)|0); + $0 = $39; + $42 = $0; + STACKTOP = sp;return ($42|0); +} +function _md_digest_length($algorithm) { + $algorithm = $algorithm|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $algorithm; + $1 = $0; + $2 = (_spec_from_algo_950($1)|0); + $spec = $2; + $3 = $spec; + $4 = ($3|0)!=(0|0); + if (!($4)) { + $8 = 0; + STACKTOP = sp;return ($8|0); + } + $5 = $spec; + $6 = ((($5)) + 24|0); + $7 = HEAP32[$6>>2]|0; + $8 = $7; + STACKTOP = sp;return ($8|0); +} +function __gcry_md_setkey($hd,$key,$keylen) { + $hd = $hd|0; + $key = $key|0; + $keylen = $keylen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $hd; + $1 = $key; + $2 = $keylen; + $3 = $0; + $4 = HEAP32[$3>>2]|0; + $5 = ((($4)) + 20|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = $0; + $9 = $1; + $10 = $2; + $11 = (_prepare_macpads($8,$9,$10)|0); + $rc = $11; + $12 = $rc; + $13 = ($12|0)!=(0); + if (!($13)) { + $14 = $0; + __gcry_md_reset($14); + } + } else { + $rc = 70; + } + $15 = $rc; + STACKTOP = sp;return ($15|0); +} +function _prepare_macpads($hd,$key,$keylen) { + $hd = $hd|0; + $key = $key|0; + $keylen = $keylen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $9 = 0, $algo = 0, $helpkey = 0, $i = 0, $ipad = 0, $opad = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $hd; + $2 = $key; + $3 = $keylen; + $4 = $1; + $5 = (_md_get_algo($4)|0); + $algo = $5; + $helpkey = 0; + $6 = $algo; + $7 = ($6|0)!=(0); + if (!($7)) { + $0 = 5; + $86 = $0; + STACKTOP = sp;return ($86|0); + } + $8 = $3; + $9 = $1; + $10 = HEAP32[$9>>2]|0; + $11 = ((($10)) + 24|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($8>>>0)>($12>>>0); + do { + if ($13) { + $14 = $algo; + $15 = (_md_digest_length($14)|0); + $16 = (__gcry_malloc_secure($15)|0); + $helpkey = $16; + $17 = $helpkey; + $18 = ($17|0)!=(0|0); + if ($18) { + $22 = $algo; + $23 = $helpkey; + $24 = $2; + $25 = $3; + __gcry_md_hash_buffer($22,$23,$24,$25); + $26 = $helpkey; + $2 = $26; + $27 = $algo; + $28 = (_md_digest_length($27)|0); + $3 = $28; + $29 = $3; + $30 = $1; + $31 = HEAP32[$30>>2]|0; + $32 = ((($31)) + 24|0); + $33 = HEAP32[$32>>2]|0; + $34 = ($29>>>0)<=($33>>>0); + if ($34) { + break; + } + __gcry_assert_failed(37425,37120,716,37458); + // unreachable; + } else { + $19 = (___errno_location()|0); + $20 = HEAP32[$19>>2]|0; + $21 = (_gpg_err_code_from_errno($20)|0); + $0 = $21; + $86 = $0; + STACKTOP = sp;return ($86|0); + } + } + } while(0); + $35 = $1; + $36 = HEAP32[$35>>2]|0; + $37 = ((($36)) + 20|0); + $38 = HEAP32[$37>>2]|0; + $39 = $1; + $40 = HEAP32[$39>>2]|0; + $41 = ((($40)) + 24|0); + $42 = HEAP32[$41>>2]|0; + $43 = $42<<1; + _memset(($38|0),0,($43|0))|0; + $44 = $1; + $45 = HEAP32[$44>>2]|0; + $46 = ((($45)) + 20|0); + $47 = HEAP32[$46>>2]|0; + $ipad = $47; + $48 = $1; + $49 = HEAP32[$48>>2]|0; + $50 = ((($49)) + 20|0); + $51 = HEAP32[$50>>2]|0; + $52 = $1; + $53 = HEAP32[$52>>2]|0; + $54 = ((($53)) + 24|0); + $55 = HEAP32[$54>>2]|0; + $56 = (($51) + ($55)|0); + $opad = $56; + $57 = $ipad; + $58 = $2; + $59 = $3; + _memcpy(($57|0),($58|0),($59|0))|0; + $60 = $opad; + $61 = $2; + $62 = $3; + _memcpy(($60|0),($61|0),($62|0))|0; + $i = 0; + while(1) { + $63 = $i; + $64 = $1; + $65 = HEAP32[$64>>2]|0; + $66 = ((($65)) + 24|0); + $67 = HEAP32[$66>>2]|0; + $68 = ($63|0)<($67|0); + if (!($68)) { + break; + } + $69 = $i; + $70 = $ipad; + $71 = (($70) + ($69)|0); + $72 = HEAP8[$71>>0]|0; + $73 = $72&255; + $74 = $73 ^ 54; + $75 = $74&255; + HEAP8[$71>>0] = $75; + $76 = $i; + $77 = $opad; + $78 = (($77) + ($76)|0); + $79 = HEAP8[$78>>0]|0; + $80 = $79&255; + $81 = $80 ^ 92; + $82 = $81&255; + HEAP8[$78>>0] = $82; + $83 = $i; + $84 = (($83) + 1)|0; + $i = $84; + } + $85 = $helpkey; + __gcry_free($85); + $0 = 0; + $86 = $0; + STACKTOP = sp;return ($86|0); +} +function __gcry_md_hash_buffer($algo,$digest,$buffer,$length) { + $algo = $algo|0; + $digest = $digest|0; + $buffer = $buffer|0; + $length = $length|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $err = 0, $h = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $h = sp + 12|0; + $0 = $algo; + $1 = $digest; + $2 = $buffer; + $3 = $length; + $4 = $0; + $5 = ($4|0)==(2); + if ($5) { + $6 = $1; + $7 = $2; + $8 = $3; + __gcry_sha1_hash_buffer($6,$7,$8); + STACKTOP = sp;return; + } + $9 = $0; + $10 = ($9|0)==(3); + if ($10) { + $11 = (__gcry_fips_mode()|0); + $12 = ($11|0)!=(0); + if (!($12)) { + $13 = $1; + $14 = $2; + $15 = $3; + __gcry_rmd160_hash_buffer($13,$14,$15); + STACKTOP = sp;return; + } + } + $16 = $0; + $17 = ($16|0)==(1); + if ($17) { + $18 = (__gcry_fips_mode()|0); + $19 = ($18|0)!=(0); + if ($19) { + __gcry_inactivate_fips_mode(37173); + $20 = (__gcry_enforced_fips_mode()|0); + $21 = ($20|0)!=(0); + if ($21) { + __gcry_fips_noreturn(); + } + } + } + $22 = $0; + $23 = (_md_open($h,$22,0)|0); + $err = $23; + $24 = $err; + $25 = ($24|0)!=(0); + if ($25) { + $26 = $0; + $27 = $err; + $28 = (_gcry_error_984($27)|0); + $29 = (_gpg_strerror($28)|0); + HEAP32[$vararg_buffer>>2] = $26; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $29; + __gcry_log_bug(37389,$vararg_buffer); + // unreachable; + } + $30 = HEAP32[$h>>2]|0; + $31 = $2; + $32 = $3; + _md_write($30,$31,$32); + $33 = HEAP32[$h>>2]|0; + _md_final($33); + $34 = $1; + $35 = HEAP32[$h>>2]|0; + $36 = $0; + $37 = (_md_read($35,$36)|0); + $38 = $0; + $39 = (_md_digest_length($38)|0); + _memcpy(($34|0),($37|0),($39|0))|0; + $40 = HEAP32[$h>>2]|0; + _md_close($40); + STACKTOP = sp;return; +} +function _gcry_error_984($code) { + $code = $code|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $code; + $1 = $0; + $2 = (_gcry_err_make_985(32,$1)|0); + STACKTOP = sp;return ($2|0); +} +function _gcry_err_make_985($source,$code) { + $source = $source|0; + $code = $code|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $source; + $1 = $code; + $2 = $0; + $3 = $1; + $4 = (_gpg_err_make_986($2,$3)|0); + STACKTOP = sp;return ($4|0); +} +function _gpg_err_make_986($source,$code) { + $source = $source|0; + $code = $code|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $source; + $1 = $code; + $2 = $1; + $3 = ($2|0)==(0); + if ($3) { + $10 = 0; + STACKTOP = sp;return ($10|0); + } + $4 = $0; + $5 = $4 & 127; + $6 = $5 << 24; + $7 = $1; + $8 = $7 & 65535; + $9 = $6 | $8; + $10 = $9; + STACKTOP = sp;return ($10|0); +} +function __gcry_md_read($hd,$algo) { + $hd = $hd|0; + $algo = $algo|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $hd; + $1 = $algo; + $2 = $0; + (__gcry_md_ctl($2,5,0,0)|0); + $3 = $0; + $4 = $1; + $5 = (_md_read($3,$4)|0); + STACKTOP = sp;return ($5|0); +} +function __gcry_md_hash_buffers($algo,$flags,$digest,$iov,$iovcnt) { + $algo = $algo|0; + $flags = $flags|0; + $digest = $digest|0; + $iov = $iov|0; + $iovcnt = $iovcnt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $h = 0, $hmac = 0, $or$cond = 0, $or$cond3 = 0, $or$cond5 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $h = sp + 4|0; + $1 = $algo; + $2 = $flags; + $3 = $digest; + $4 = $iov; + $5 = $iovcnt; + $6 = $4; + $7 = ($6|0)==(0|0); + $8 = $5; + $9 = ($8|0)<(0); + $or$cond = $7 | $9; + if ($or$cond) { + $0 = 45; + $90 = $0; + STACKTOP = sp;return ($90|0); + } + $10 = $2; + $11 = $10 & -3; + $12 = ($11|0)!=(0); + if ($12) { + $0 = 45; + $90 = $0; + STACKTOP = sp;return ($90|0); + } + $13 = $2; + $14 = $13 & 2; + $15 = ($14|0)!=(0); + $16 = $15 ^ 1; + $17 = $16 ^ 1; + $18 = $17&1; + $hmac = $18; + $19 = $hmac; + $20 = ($19|0)!=(0); + $21 = $5; + $22 = ($21|0)<(1); + $or$cond3 = $20 & $22; + if ($or$cond3) { + $0 = 45; + $90 = $0; + STACKTOP = sp;return ($90|0); + } + $23 = $1; + $24 = ($23|0)!=(2); + $25 = $hmac; + $26 = ($25|0)!=(0); + $or$cond5 = $24 | $26; + if ($or$cond5) { + $30 = $1; + $31 = ($30|0)==(1); + if ($31) { + $32 = (__gcry_fips_mode()|0); + $33 = ($32|0)!=(0); + if ($33) { + __gcry_inactivate_fips_mode(37173); + $34 = (__gcry_enforced_fips_mode()|0); + $35 = ($34|0)!=(0); + if ($35) { + __gcry_fips_noreturn(); + } + } + } + $36 = $1; + $37 = $hmac; + $38 = ($37|0)!=(0); + $39 = $38 ? 2 : 0; + $40 = (_md_open($h,$36,$39)|0); + $rc = $40; + $41 = $rc; + $42 = ($41|0)!=(0); + if ($42) { + $43 = $rc; + $0 = $43; + $90 = $0; + STACKTOP = sp;return ($90|0); + } + $44 = $hmac; + $45 = ($44|0)!=(0); + do { + if ($45) { + $46 = HEAP32[$h>>2]|0; + $47 = $4; + $48 = ((($47)) + 12|0); + $49 = HEAP32[$48>>2]|0; + $50 = $4; + $51 = ((($50)) + 4|0); + $52 = HEAP32[$51>>2]|0; + $53 = (($49) + ($52)|0); + $54 = $4; + $55 = ((($54)) + 8|0); + $56 = HEAP32[$55>>2]|0; + $57 = (__gcry_md_setkey($46,$53,$56)|0); + $rc = $57; + $58 = $rc; + $59 = ($58|0)!=(0); + if (!($59)) { + $62 = $4; + $63 = ((($62)) + 16|0); + $4 = $63; + $64 = $5; + $65 = (($64) + -1)|0; + $5 = $65; + break; + } + $60 = HEAP32[$h>>2]|0; + _md_close($60); + $61 = $rc; + $0 = $61; + $90 = $0; + STACKTOP = sp;return ($90|0); + } + } while(0); + while(1) { + $66 = $5; + $67 = ($66|0)!=(0); + $68 = HEAP32[$h>>2]|0; + if (!($67)) { + break; + } + $69 = $4; + $70 = ((($69)) + 12|0); + $71 = HEAP32[$70>>2]|0; + $72 = $4; + $73 = ((($72)) + 4|0); + $74 = HEAP32[$73>>2]|0; + $75 = (($71) + ($74)|0); + $76 = $4; + $77 = ((($76)) + 8|0); + $78 = HEAP32[$77>>2]|0; + _md_write($68,$75,$78); + $79 = $4; + $80 = ((($79)) + 16|0); + $4 = $80; + $81 = $5; + $82 = (($81) + -1)|0; + $5 = $82; + } + _md_final($68); + $83 = $3; + $84 = HEAP32[$h>>2]|0; + $85 = $1; + $86 = (_md_read($84,$85)|0); + $87 = $1; + $88 = (_md_digest_length($87)|0); + _memcpy(($83|0),($86|0),($88|0))|0; + $89 = HEAP32[$h>>2]|0; + _md_close($89); + } else { + $27 = $3; + $28 = $4; + $29 = $5; + __gcry_sha1_hash_buffers($27,$28,$29); + } + $0 = 0; + $90 = $0; + STACKTOP = sp;return ($90|0); +} +function __gcry_md_get_algo($hd) { + $hd = $hd|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $hd; + $1 = $0; + $2 = (_md_get_algo($1)|0); + STACKTOP = sp;return ($2|0); +} +function __gcry_md_get_algo_dlen($algorithm) { + $algorithm = $algorithm|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $algorithm; + $1 = $0; + $2 = (_md_digest_length($1)|0); + STACKTOP = sp;return ($2|0); +} +function __gcry_md_algo_info($algo,$what,$buffer,$nbytes) { + $algo = $algo|0; + $what = $what|0; + $buffer = $buffer|0; + $nbytes = $nbytes|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $asn = 0, $asnlen = 0, $or$cond = 0, $or$cond3 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $asnlen = sp; + $0 = $algo; + $1 = $what; + $2 = $buffer; + $3 = $nbytes; + $4 = $1; + L1: do { + switch ($4|0) { + case 8: { + $5 = $2; + $6 = ($5|0)!=(0|0); + $7 = $3; + $8 = ($7|0)!=(0|0); + $or$cond = $6 | $8; + if ($or$cond) { + $rc = 45; + break L1; + } else { + $9 = $0; + $10 = (_check_digest_algo($9)|0); + $rc = $10; + break L1; + } + break; + } + case 10: { + $11 = $0; + $12 = (_check_digest_algo($11)|0); + $rc = $12; + $13 = $rc; + $14 = ($13|0)!=(0); + if (!($14)) { + $15 = $0; + $16 = (_md_asn_oid($15,$asnlen,0)|0); + $asn = $16; + $17 = $2; + $18 = ($17|0)!=(0|0); + if ($18) { + $19 = $3; + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$asnlen>>2]|0; + $22 = ($20>>>0)>=($21>>>0); + if ($22) { + $23 = $2; + $24 = $asn; + $25 = HEAP32[$asnlen>>2]|0; + _memcpy(($23|0),($24|0),($25|0))|0; + $26 = HEAP32[$asnlen>>2]|0; + $27 = $3; + HEAP32[$27>>2] = $26; + break L1; + } + } + $28 = $2; + $29 = ($28|0)==(0|0); + $30 = $3; + $31 = ($30|0)!=(0|0); + $or$cond3 = $29 & $31; + if ($or$cond3) { + $32 = HEAP32[$asnlen>>2]|0; + $33 = $3; + HEAP32[$33>>2] = $32; + break L1; + } + $34 = $2; + $35 = ($34|0)!=(0|0); + if ($35) { + $rc = 66; + break L1; + } else { + $rc = 45; + break L1; + } + } + break; + } + case 57: { + $36 = $0; + $37 = $3; + $38 = ($37|0)!=(0|0); + if ($38) { + $39 = $3; + $40 = HEAP32[$39>>2]|0; + $41 = $40; + } else { + $41 = 0; + } + $42 = (__gcry_md_selftest($36,$41,0)|0); + $43 = (_gpg_err_code_1011($42)|0); + $rc = $43; + break; + } + default: { + $rc = 61; + } + } + } while(0); + $44 = $rc; + STACKTOP = sp;return ($44|0); +} +function _check_digest_algo($algorithm) { + $algorithm = $algorithm|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $algorithm; + $2 = $1; + $3 = (_spec_from_algo_950($2)|0); + $spec = $3; + $4 = $spec; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = $spec; + $7 = ((($6)) + 4|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8 & 1; + $10 = $9&255; + $11 = ($10|0)!=(0); + if (!($11)) { + $0 = 0; + $12 = $0; + STACKTOP = sp;return ($12|0); + } + } + $0 = 5; + $12 = $0; + STACKTOP = sp;return ($12|0); +} +function _md_asn_oid($algorithm,$asnlen,$mdlen) { + $algorithm = $algorithm|0; + $asnlen = $asnlen|0; + $mdlen = $mdlen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $asnoid = 0, $spec = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $algorithm; + $1 = $asnlen; + $2 = $mdlen; + $asnoid = 0; + $3 = $0; + $4 = (_spec_from_algo_950($3)|0); + $spec = $4; + $5 = $spec; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $23 = $0; + HEAP32[$vararg_buffer>>2] = $23; + __gcry_log_bug(37474,$vararg_buffer); + // unreachable; + } + $7 = $1; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = $spec; + $10 = ((($9)) + 16|0); + $11 = HEAP32[$10>>2]|0; + $12 = $1; + HEAP32[$12>>2] = $11; + } + $13 = $2; + $14 = ($13|0)!=(0|0); + if (!($14)) { + $19 = $spec; + $20 = ((($19)) + 12|0); + $21 = HEAP32[$20>>2]|0; + $asnoid = $21; + $22 = $asnoid; + STACKTOP = sp;return ($22|0); + } + $15 = $spec; + $16 = ((($15)) + 24|0); + $17 = HEAP32[$16>>2]|0; + $18 = $2; + HEAP32[$18>>2] = $17; + $19 = $spec; + $20 = ((($19)) + 12|0); + $21 = HEAP32[$20>>2]|0; + $asnoid = $21; + $22 = $asnoid; + STACKTOP = sp;return ($22|0); +} +function __gcry_md_selftest($algo,$extended,$report) { + $algo = $algo|0; + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ec = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $algo; + $1 = $extended; + $2 = $report; + $ec = 0; + $3 = $0; + $4 = (_spec_from_algo_950($3)|0); + $spec = $4; + $5 = $spec; + $6 = ($5|0)!=(0|0); + if ($6) { + $7 = $spec; + $8 = ((($7)) + 4|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9 & 1; + $11 = $10&255; + $12 = ($11|0)!=(0); + if (!($12)) { + $13 = $spec; + $14 = ((($13)) + 48|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = $spec; + $18 = ((($17)) + 48|0); + $19 = HEAP32[$18>>2]|0; + $20 = $0; + $21 = $1; + $22 = $2; + $23 = (FUNCTION_TABLE_iiii[$19 & 127]($20,$21,$22)|0); + $ec = $23; + $48 = $ec; + $49 = (_gpg_error_1010($48)|0); + STACKTOP = sp;return ($49|0); + } + } + } + $24 = $spec; + $25 = ($24|0)!=(0|0); + if ($25) { + $26 = $spec; + $27 = ((($26)) + 48|0); + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)!=(0|0); + $30 = $29; + } else { + $30 = 0; + } + $31 = $30 ? 5 : 69; + $ec = $31; + $32 = $2; + $33 = ($32|0)!=(0|0); + if (!($33)) { + $48 = $ec; + $49 = (_gpg_error_1010($48)|0); + STACKTOP = sp;return ($49|0); + } + $34 = $2; + $35 = $0; + $36 = $spec; + $37 = ($36|0)!=(0|0); + if ($37) { + $38 = $spec; + $39 = ((($38)) + 4|0); + $40 = HEAP8[$39>>0]|0; + $41 = $40 & 1; + $42 = $41&255; + $43 = ($42|0)!=(0); + if ($43) { + label = 10; + } else { + $47 = 38027; + } + } else { + label = 10; + } + if ((label|0) == 10) { + $44 = $spec; + $45 = ($44|0)!=(0|0); + $46 = $45 ? 37988 : 38007; + $47 = $46; + } + FUNCTION_TABLE_viiii[$34 & 63](43192,$35,38049,$47); + $48 = $ec; + $49 = (_gpg_error_1010($48)|0); + STACKTOP = sp;return ($49|0); +} +function _gpg_error_1010($code) { + $code = $code|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $code; + $1 = $0; + $2 = (_gpg_err_make_986(1,$1)|0); + STACKTOP = sp;return ($2|0); +} +function _gpg_err_code_1011($err) { + $err = $err|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $err; + $1 = $0; + $2 = $1 & 65535; + STACKTOP = sp;return ($2|0); +} +function __gcry_md_init() { + var label = 0, sp = 0; + sp = STACKTOP; + return 0; +} +function __gcry_primegen_init() { + var label = 0, sp = 0; + sp = STACKTOP; + return 0; +} +function __gcry_register_primegen_progress($cb,$cb_data) { + $cb = $cb|0; + $cb_data = $cb_data|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $cb; + $1 = $cb_data; + $2 = $0; + HEAP32[17704] = $2; + $3 = $1; + HEAP32[17705] = $3; + STACKTOP = sp;return; +} +function __gcry_generate_secret_prime($nbits,$random_level,$extra_check,$extra_check_arg) { + $nbits = $nbits|0; + $random_level = $random_level|0; + $extra_check = $extra_check|0; + $extra_check_arg = $extra_check_arg|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $prime = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $nbits; + $1 = $random_level; + $2 = $extra_check; + $3 = $extra_check_arg; + $4 = $0; + $5 = $1; + $6 = $2; + $7 = $3; + $8 = (_gen_prime($4,1,$5,$6,$7)|0); + $prime = $8; + _progress(10); + $9 = $prime; + STACKTOP = sp;return ($9|0); +} +function _gen_prime($nbits,$secret,$randomlevel,$extra_check,$extra_check_arg) { + $nbits = $nbits|0; + $secret = $secret|0; + $randomlevel = $randomlevel|0; + $extra_check = $extra_check|0; + $extra_check_arg = $extra_check_arg|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $count1 = 0, $count2 = 0, $dotcount = 0, $i = 0, $mods = 0, $pminus1 = 0, $prime = 0, $ptest = 0, $result = 0, $step = 0, $val_2 = 0, $val_3 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0; + var $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $count2 = sp + 20|0; + $0 = $nbits; + $1 = $secret; + $2 = $randomlevel; + $3 = $extra_check; + $4 = $extra_check_arg; + $5 = $0; + $6 = ($5>>>0)<(16); + if ($6) { + HEAP32[$vararg_buffer>>2] = 16; + __gcry_log_fatal(37503,$vararg_buffer); + // unreachable; + } + $7 = HEAP32[1085]|0; + $8 = $7<<2; + $9 = (__gcry_xmalloc($8)|0); + $mods = $9; + $10 = (__gcry_mpi_alloc_set_ui(2)|0); + $val_2 = $10; + $11 = (__gcry_mpi_alloc_set_ui(3)|0); + $val_3 = $11; + $12 = $1; + $13 = ($12|0)!=(0); + $14 = $0; + if ($13) { + $15 = (__gcry_mpi_snew($14)|0); + $17 = $15; + } else { + $16 = (__gcry_mpi_new($14)|0); + $17 = $16; + } + $prime = $17; + $18 = $prime; + $19 = (__gcry_mpi_alloc_like($18)|0); + $result = $19; + $20 = $prime; + $21 = (__gcry_mpi_alloc_like($20)|0); + $pminus1 = $21; + $22 = $prime; + $23 = (__gcry_mpi_alloc_like($22)|0); + $ptest = $23; + HEAP32[$count2>>2] = 0; + $count1 = 0; + L8: while(1) { + $dotcount = 0; + $24 = $prime; + $25 = $0; + $26 = $2; + __gcry_mpi_randomize($24,$25,$26); + $27 = $prime; + $28 = $0; + $29 = (($28) - 1)|0; + __gcry_mpi_set_highbit($27,$29); + $30 = $1; + $31 = ($30|0)!=(0); + if ($31) { + $32 = $prime; + $33 = $0; + $34 = (($33) - 2)|0; + __gcry_mpi_set_bit($32,$34); + } + $35 = $prime; + __gcry_mpi_set_bit($35,0); + $i = 0; + while(1) { + $36 = $i; + $37 = (16512 + ($36<<1)|0); + $38 = HEAP16[$37>>1]|0; + $39 = $38&65535; + $x = $39; + $40 = ($39|0)!=(0); + if (!($40)) { + break; + } + $41 = $prime; + $42 = $x; + $43 = (__gcry_mpi_fdiv_r_ui(0,$41,$42)|0); + $44 = $i; + $45 = $mods; + $46 = (($45) + ($44<<2)|0); + HEAP32[$46>>2] = $43; + $47 = $i; + $48 = (($47) + 1)|0; + $i = $48; + } + $step = 0; + while(1) { + $49 = $step; + $50 = ($49>>>0)<(20000); + if (!($50)) { + break; + } + $51 = $count1; + $52 = (($51) + 1)|0; + $count1 = $52; + $i = 0; + while(1) { + $53 = $i; + $54 = (16512 + ($53<<1)|0); + $55 = HEAP16[$54>>1]|0; + $56 = $55&65535; + $x = $56; + $57 = ($56|0)!=(0); + if (!($57)) { + break; + } + while(1) { + $58 = $i; + $59 = $mods; + $60 = (($59) + ($58<<2)|0); + $61 = HEAP32[$60>>2]|0; + $62 = $step; + $63 = (($61) + ($62))|0; + $64 = $x; + $65 = ($63>>>0)>=($64>>>0); + if (!($65)) { + break; + } + $66 = $x; + $67 = $i; + $68 = $mods; + $69 = (($68) + ($67<<2)|0); + $70 = HEAP32[$69>>2]|0; + $71 = (($70) - ($66))|0; + HEAP32[$69>>2] = $71; + } + $72 = $i; + $73 = $mods; + $74 = (($73) + ($72<<2)|0); + $75 = HEAP32[$74>>2]|0; + $76 = $step; + $77 = (($75) + ($76))|0; + $78 = ($77|0)!=(0); + if (!($78)) { + break; + } + $79 = $i; + $80 = (($79) + 1)|0; + $i = $80; + } + $81 = $x; + $82 = ($81|0)!=(0); + if (!($82)) { + $83 = $ptest; + $84 = $prime; + $85 = $step; + __gcry_mpi_add_ui($83,$84,$85); + $86 = HEAP32[$count2>>2]|0; + $87 = (($86) + 1)|0; + HEAP32[$count2>>2] = $87; + $88 = $pminus1; + $89 = $ptest; + __gcry_mpi_sub_ui($88,$89,1); + $90 = $result; + $91 = $val_2; + $92 = $pminus1; + $93 = $ptest; + __gcry_mpi_powm($90,$91,$92,$93); + $94 = $result; + $95 = (__gcry_mpi_cmp_ui($94,1)|0); + $96 = ($95|0)!=(0); + if (!($96)) { + $97 = $ptest; + $98 = (_is_prime($97,5,$count2)|0); + $99 = ($98|0)!=(0); + if ($99) { + $100 = $ptest; + $101 = $0; + $102 = (($101) - 1)|0; + $103 = $1; + $104 = (($102) - ($103))|0; + $105 = (__gcry_mpi_test_bit($100,$104)|0); + $106 = ($105|0)!=(0); + if (!($106)) { + label = 24; + break; + } + $107 = $3; + $108 = ($107|0)!=(0|0); + if (!($108)) { + label = 28; + break L8; + } + $109 = $3; + $110 = $4; + $111 = $ptest; + $112 = (FUNCTION_TABLE_iii[$109 & 127]($110,$111)|0); + $113 = ($112|0)!=(0); + if (!($113)) { + label = 28; + break L8; + } + _progress(47); + } + } + $121 = $dotcount; + $122 = (($121) + 1)|0; + $dotcount = $122; + $123 = ($122|0)==(10); + if ($123) { + _progress(46); + $dotcount = 0; + } + } + $124 = $step; + $125 = (($124) + 2)|0; + $step = $125; + } + if ((label|0) == 24) { + label = 0; + _progress(10); + __gcry_log_debug(37651,$vararg_buffer1); + } + _progress(58); + } + if ((label|0) == 28) { + $114 = $val_2; + __gcry_mpi_free($114); + $115 = $val_3; + __gcry_mpi_free($115); + $116 = $result; + __gcry_mpi_free($116); + $117 = $pminus1; + __gcry_mpi_free($117); + $118 = $prime; + __gcry_mpi_free($118); + $119 = $mods; + __gcry_free($119); + $120 = $ptest; + STACKTOP = sp;return ($120|0); + } + return (0)|0; +} +function _is_prime($n,$steps,$count) { + $n = $n|0; + $steps = $steps|0; + $count = $count|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $a2 = 0, $i = 0, $j = 0, $k = 0, $nbits = 0, $nminus1 = 0, $q = 0, $rc = 0, $x = 0, $y = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $n; + $1 = $steps; + $2 = $count; + $3 = $0; + $4 = ((($3)) + 4|0); + $5 = HEAP32[$4>>2]|0; + $6 = (__gcry_mpi_alloc($5)|0); + $x = $6; + $7 = $0; + $8 = ((($7)) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = (__gcry_mpi_alloc($9)|0); + $y = $10; + $11 = $0; + $12 = ((($11)) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = (__gcry_mpi_alloc($13)|0); + $z = $14; + $15 = $0; + $16 = ((($15)) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = (__gcry_mpi_alloc($17)|0); + $nminus1 = $18; + $19 = (__gcry_mpi_alloc_set_ui(2)|0); + $a2 = $19; + $rc = 0; + $20 = $0; + $21 = (__gcry_mpi_get_nbits($20)|0); + $nbits = $21; + $22 = $1; + $23 = ($22|0)<(5); + if ($23) { + $1 = 5; + } + $24 = $nminus1; + $25 = $0; + __gcry_mpi_sub_ui($24,$25,1); + $26 = $nminus1; + $27 = (__gcry_mpi_copy($26)|0); + $q = $27; + $28 = $q; + $29 = (__gcry_mpi_trailing_zeros($28)|0); + $k = $29; + $30 = $q; + $31 = $q; + $32 = $k; + __gcry_mpi_tdiv_q_2exp($30,$31,$32); + $i = 0; + L4: while(1) { + $33 = $i; + $34 = $1; + $35 = ($33>>>0)<($34>>>0); + if (!($35)) { + label = 22; + break; + } + $36 = $2; + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + 1)|0; + HEAP32[$36>>2] = $38; + $39 = $i; + $40 = ($39|0)!=(0); + $41 = $x; + if ($40) { + $42 = $nbits; + __gcry_mpi_randomize($41,$42,0); + $43 = $x; + $44 = $nbits; + $45 = (($44) - 2)|0; + $46 = (__gcry_mpi_test_bit($43,$45)|0); + $47 = ($46|0)!=(0); + $48 = $x; + $49 = $nbits; + $50 = (($49) - 2)|0; + __gcry_mpi_set_highbit($48,$50); + if (!($47)) { + $51 = $x; + $52 = $nbits; + $53 = (($52) - 2)|0; + __gcry_mpi_clear_bit($51,$53); + } + $54 = $x; + $55 = $nminus1; + $56 = (__gcry_mpi_cmp($54,$55)|0); + $57 = ($56|0)<(0); + if (!($57)) { + label = 11; + break; + } + $58 = $x; + $59 = (__gcry_mpi_cmp_ui($58,1)|0); + $60 = ($59|0)>(0); + if (!($60)) { + label = 11; + break; + } + } else { + (__gcry_mpi_set_ui($41,2)|0); + } + $61 = $y; + $62 = $x; + $63 = $q; + $64 = $0; + __gcry_mpi_powm($61,$62,$63,$64); + $65 = $y; + $66 = (__gcry_mpi_cmp_ui($65,1)|0); + $67 = ($66|0)!=(0); + if ($67) { + $68 = $y; + $69 = $nminus1; + $70 = (__gcry_mpi_cmp($68,$69)|0); + $71 = ($70|0)!=(0); + if ($71) { + $j = 1; + while(1) { + $72 = $j; + $73 = $k; + $74 = ($72>>>0)<($73>>>0); + if ($74) { + $75 = $y; + $76 = $nminus1; + $77 = (__gcry_mpi_cmp($75,$76)|0); + $78 = ($77|0)!=(0); + $100 = $78; + } else { + $100 = 0; + } + $79 = $y; + if (!($100)) { + break; + } + $80 = $y; + $81 = $a2; + $82 = $0; + __gcry_mpi_powm($79,$80,$81,$82); + $83 = $y; + $84 = (__gcry_mpi_cmp_ui($83,1)|0); + $85 = ($84|0)!=(0); + if (!($85)) { + label = 23; + break L4; + } + $86 = $j; + $87 = (($86) + 1)|0; + $j = $87; + } + $88 = $nminus1; + $89 = (__gcry_mpi_cmp($79,$88)|0); + $90 = ($89|0)!=(0); + if ($90) { + label = 23; + break; + } + } + } + _progress(43); + $91 = $i; + $92 = (($91) + 1)|0; + $i = $92; + } + if ((label|0) == 11) { + __gcry_assert_failed(37550,37622,951,37633); + // unreachable; + } + else if ((label|0) == 22) { + $rc = 1; + $93 = $x; + __gcry_mpi_free($93); + $94 = $y; + __gcry_mpi_free($94); + $95 = $z; + __gcry_mpi_free($95); + $96 = $nminus1; + __gcry_mpi_free($96); + $97 = $q; + __gcry_mpi_free($97); + $98 = $a2; + __gcry_mpi_free($98); + $99 = $rc; + STACKTOP = sp;return ($99|0); + } + else if ((label|0) == 23) { + $93 = $x; + __gcry_mpi_free($93); + $94 = $y; + __gcry_mpi_free($94); + $95 = $z; + __gcry_mpi_free($95); + $96 = $nminus1; + __gcry_mpi_free($96); + $97 = $q; + __gcry_mpi_free($97); + $98 = $a2; + __gcry_mpi_free($98); + $99 = $rc; + STACKTOP = sp;return ($99|0); + } + return (0)|0; +} +function _progress($c) { + $c = $c|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $c; + $1 = HEAP32[17704]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = HEAP32[17704]|0; + $4 = HEAP32[17705]|0; + $5 = $0; + FUNCTION_TABLE_viiiii[$3 & 127]($4,37642,$5,0,0); + STACKTOP = sp;return; +} +function _check_prime($prime,$val_2,$rm_rounds,$cb_func,$cb_arg) { + $prime = $prime|0; + $val_2 = $val_2|0; + $rm_rounds = $rm_rounds|0; + $cb_func = $cb_func|0; + $cb_arg = $cb_arg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $count = 0, $i = 0, $pminus1 = 0, $result = 0; + var $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $count = sp + 8|0; + $1 = $prime; + $2 = $val_2; + $3 = $rm_rounds; + $4 = $cb_func; + $5 = $cb_arg; + HEAP32[$count>>2] = 0; + $i = 0; + while(1) { + $6 = $i; + $7 = (16512 + ($6<<1)|0); + $8 = HEAP16[$7>>1]|0; + $9 = $8&65535; + $x = $9; + $10 = ($9|0)!=(0); + $11 = $1; + if (!($10)) { + break; + } + $12 = $x; + $13 = (__gcry_mpi_divisible_ui($11,$12)|0); + $14 = ($13|0)!=(0); + if ($14) { + label = 4; + break; + } + $21 = $i; + $22 = (($21) + 1)|0; + $i = $22; + } + if ((label|0) == 4) { + $15 = $1; + $16 = $x; + $17 = (__gcry_mpi_cmp_ui($15,$16)|0); + $18 = ($17|0)!=(0); + $19 = $18 ^ 1; + $20 = $19&1; + $0 = $20; + $55 = $0; + STACKTOP = sp;return ($55|0); + } + $23 = (__gcry_mpi_alloc_like($11)|0); + $result = $23; + $24 = $1; + $25 = (__gcry_mpi_alloc_like($24)|0); + $pminus1 = $25; + $26 = $pminus1; + $27 = $1; + __gcry_mpi_sub_ui($26,$27,1); + $28 = $result; + $29 = $2; + $30 = $pminus1; + $31 = $1; + __gcry_mpi_powm($28,$29,$30,$31); + $32 = $pminus1; + __gcry_mpi_free($32); + $33 = $result; + $34 = (__gcry_mpi_cmp_ui($33,1)|0); + $35 = ($34|0)!=(0); + $36 = $result; + __gcry_mpi_free($36); + if ($35) { + _progress(46); + $0 = 0; + $55 = $0; + STACKTOP = sp;return ($55|0); + } + $37 = $4; + $38 = ($37|0)!=(0|0); + if ($38) { + $39 = $4; + $40 = $5; + $41 = $1; + $42 = (FUNCTION_TABLE_iiii[$39 & 127]($40,2,$41)|0); + $43 = ($42|0)!=(0); + if ($43) { + label = 10; + } + } else { + label = 10; + } + do { + if ((label|0) == 10) { + $44 = $1; + $45 = $3; + $46 = (_is_prime($44,$45,$count)|0); + $47 = ($46|0)!=(0); + if ($47) { + $48 = $4; + $49 = ($48|0)!=(0|0); + if ($49) { + $50 = $4; + $51 = $5; + $52 = $1; + $53 = (FUNCTION_TABLE_iiii[$50 & 127]($51,1,$52)|0); + $54 = ($53|0)!=(0); + if (!($54)) { + break; + } + } + $0 = 1; + $55 = $0; + STACKTOP = sp;return ($55|0); + } + } + } while(0); + _progress(46); + $0 = 0; + $55 = $0; + STACKTOP = sp;return ($55|0); +} +function __gcry_derive_x931_prime($xp,$xp1,$xp2,$e,$r_p1,$r_p2) { + $xp = $xp|0; + $xp1 = $xp1|0; + $xp2 = $xp2|0; + $e = $e|0; + $r_p1 = $r_p1|0; + $r_p2 = $r_p2|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; + var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $gcdres = 0, $gcdtmp = 0, $or$cond = 0, $or$cond3 = 0, $p1 = 0, $p1p2 = 0, $p2 = 0, $r1 = 0, $tmp = 0, $val_2 = 0, $yp0 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $xp; + $2 = $xp1; + $3 = $xp2; + $4 = $e; + $5 = $r_p1; + $6 = $r_p2; + $7 = $1; + $8 = ($7|0)!=(0|0); + $9 = $2; + $10 = ($9|0)!=(0|0); + $or$cond = $8 & $10; + $11 = $3; + $12 = ($11|0)!=(0|0); + $or$cond3 = $or$cond & $12; + if (!($or$cond3)) { + $0 = 0; + $104 = $0; + STACKTOP = sp;return ($104|0); + } + $13 = $4; + $14 = ($13|0)!=(0|0); + if ($14) { + $15 = $4; + $16 = (__gcry_mpi_test_bit($15,0)|0); + $17 = ($16|0)!=(0); + if ($17) { + $18 = $2; + $19 = (_find_x931_prime($18)|0); + $p1 = $19; + $20 = $3; + $21 = (_find_x931_prime($20)|0); + $p2 = $21; + $22 = $1; + $23 = (__gcry_mpi_alloc_like($22)|0); + $p1p2 = $23; + $24 = $p1p2; + $25 = $p1; + $26 = $p2; + __gcry_mpi_mul($24,$25,$26); + $27 = $p1; + $28 = (__gcry_mpi_alloc_like($27)|0); + $tmp = $28; + $29 = $tmp; + $30 = $p2; + $31 = $p1; + (__gcry_mpi_invm($29,$30,$31)|0); + $32 = $tmp; + $33 = $tmp; + $34 = $p2; + __gcry_mpi_mul($32,$33,$34); + $35 = $tmp; + $r1 = $35; + $36 = $p2; + $37 = (__gcry_mpi_alloc_like($36)|0); + $tmp = $37; + $38 = $tmp; + $39 = $p1; + $40 = $p2; + (__gcry_mpi_invm($38,$39,$40)|0); + $41 = $tmp; + $42 = $tmp; + $43 = $p1; + __gcry_mpi_mul($41,$42,$43); + $44 = $r1; + $45 = $r1; + $46 = $tmp; + __gcry_mpi_sub($44,$45,$46); + $47 = $r1; + $48 = ((($47)) + 8|0); + $49 = HEAP32[$48>>2]|0; + $50 = ($49|0)!=(0); + if ($50) { + $51 = $r1; + $52 = $r1; + $53 = $p1p2; + __gcry_mpi_add($51,$52,$53); + } + $54 = $tmp; + $yp0 = $54; + $tmp = 0; + $55 = $yp0; + $56 = $r1; + $57 = $1; + $58 = $p1p2; + __gcry_mpi_subm($55,$56,$57,$58); + $59 = $yp0; + $60 = $yp0; + $61 = $1; + __gcry_mpi_add($59,$60,$61); + $62 = $r1; + __gcry_mpi_free($62); + $63 = $yp0; + $64 = $1; + $65 = (__gcry_mpi_cmp($63,$64)|0); + $66 = ($65|0)<(0); + if ($66) { + $67 = $yp0; + $68 = $yp0; + $69 = $p1p2; + __gcry_mpi_add($67,$68,$69); + } + $70 = (__gcry_mpi_alloc_set_ui(2)|0); + $val_2 = $70; + $71 = $yp0; + $72 = (__gcry_mpi_alloc_like($71)|0); + $gcdtmp = $72; + $73 = $p1p2; + $74 = $p1p2; + __gcry_mpi_sub_ui($73,$74,1); + $75 = $yp0; + $76 = $yp0; + __gcry_mpi_sub_ui($75,$76,1); + while(1) { + $77 = $gcdtmp; + $78 = $4; + $79 = $yp0; + $80 = (__gcry_mpi_gcd($77,$78,$79)|0); + $gcdres = $80; + $81 = $yp0; + $82 = $yp0; + __gcry_mpi_add_ui($81,$82,1); + $83 = $gcdres; + $84 = ($83|0)!=(0); + if ($84) { + $85 = $yp0; + $86 = $val_2; + $87 = (_check_prime($85,$86,64,0,0)|0); + $88 = ($87|0)!=(0); + if ($88) { + break; + } + } else { + _progress(47); + } + $89 = $yp0; + $90 = $yp0; + $91 = $p1p2; + __gcry_mpi_add($89,$90,$91); + } + $92 = $gcdtmp; + __gcry_mpi_free($92); + $93 = $val_2; + __gcry_mpi_free($93); + $94 = $p1p2; + __gcry_mpi_free($94); + _progress(10); + $95 = $5; + $96 = ($95|0)!=(0|0); + $97 = $p1; + if ($96) { + $98 = $5; + HEAP32[$98>>2] = $97; + } else { + __gcry_mpi_free($97); + } + $99 = $6; + $100 = ($99|0)!=(0|0); + $101 = $p2; + if ($100) { + $102 = $6; + HEAP32[$102>>2] = $101; + } else { + __gcry_mpi_free($101); + } + $103 = $yp0; + $0 = $103; + $104 = $0; + STACKTOP = sp;return ($104|0); + } + } + $0 = 0; + $104 = $0; + STACKTOP = sp;return ($104|0); +} +function _find_x931_prime($pfirst) { + $pfirst = $pfirst|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $prime = 0, $val_2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $pfirst; + $1 = (__gcry_mpi_alloc_set_ui(2)|0); + $val_2 = $1; + $2 = $0; + $3 = (__gcry_mpi_copy($2)|0); + $prime = $3; + $4 = $prime; + __gcry_mpi_set_bit($4,0); + while(1) { + $5 = $prime; + $6 = $val_2; + $7 = (_check_prime($5,$6,64,0,0)|0); + $8 = ($7|0)!=(0); + $9 = $8 ^ 1; + if (!($9)) { + break; + } + $10 = $prime; + $11 = $prime; + __gcry_mpi_add_ui($10,$11,2); + } + $12 = $val_2; + __gcry_mpi_free($12); + $13 = $prime; + STACKTOP = sp;return ($13|0); +} +function __gcry_pk_util_parse_flaglist($list,$r_flags,$r_encoding) { + $list = $list|0; + $r_flags = $r_flags|0; + $r_encoding = $r_encoding|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $16 = 0; + var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; + var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $encoding = 0, $flags = 0, $i = 0, $igninvflag = 0, $n = 0, $or$cond = 0, $or$cond11 = 0, $or$cond3 = 0, $or$cond5 = 0; + var $or$cond7 = 0, $or$cond9 = 0, $rc = 0, $s = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $n = sp + 16|0; + $0 = $list; + $1 = $r_flags; + $2 = $r_encoding; + $rc = 0; + $encoding = 5; + $flags = 0; + $igninvflag = 0; + $3 = $0; + $4 = ($3|0)!=(0|0); + if ($4) { + $5 = $0; + $6 = (__gcry_sexp_length($5)|0); + $7 = (($6) - 1)|0; + $8 = $7; + } else { + $8 = 0; + } + $i = $8; + while(1) { + $9 = $i; + $10 = ($9|0)>(0); + if (!($10)) { + break; + } + $11 = $0; + $12 = $i; + $13 = (__gcry_sexp_nth_data($11,$12,$n)|0); + $s = $13; + $14 = $s; + $15 = ($14|0)!=(0|0); + L7: do { + if ($15) { + $16 = HEAP32[$n>>2]|0; + do { + switch ($16|0) { + case 3: { + $17 = $s; + $18 = (_memcmp($17,37681,3)|0); + $19 = ($18|0)==(0); + $20 = $encoding; + $21 = ($20|0)==(5); + $or$cond = $19 & $21; + if ($or$cond) { + $encoding = 4; + $22 = $flags; + $23 = $22 | 4; + $flags = $23; + break L7; + } + $24 = $s; + $25 = (_memcmp($24,37685,3)|0); + $26 = ($25|0)==(0); + $27 = $encoding; + $28 = ($27|0)==(5); + $or$cond3 = $26 & $28; + if ($or$cond3) { + $encoding = 0; + $29 = $flags; + $30 = $29 | 16; + $flags = $30; + break L7; + } + $31 = $igninvflag; + $32 = ($31|0)!=(0); + if ($32) { + break L7; + } + $rc = 72; + break L7; + break; + } + case 4: { + $33 = $s; + $34 = (_memcmp($33,37689,4)|0); + $35 = ($34|0)!=(0); + if (!($35)) { + $36 = $flags; + $37 = $36 | 1024; + $flags = $37; + break L7; + } + $38 = $s; + $39 = (_memcmp($38,37694,4)|0); + $40 = ($39|0)==(0); + $41 = $encoding; + $42 = ($41|0)==(5); + $or$cond5 = $40 & $42; + if ($or$cond5) { + $encoding = 3; + $43 = $flags; + $44 = $43 | 4; + $flags = $44; + break L7; + } + $45 = $s; + $46 = (_memcmp($45,47156,4)|0); + $47 = ($46|0)!=(0); + if (!($47)) { + $encoding = 0; + $48 = $flags; + $49 = $48 | 8192; + $flags = $49; + break L7; + } + $50 = $igninvflag; + $51 = ($50|0)!=(0); + if ($51) { + break L7; + } + $rc = 72; + break L7; + break; + } + case 5: { + $52 = $s; + $53 = (_memcmp($52,47150,5)|0); + $54 = ($53|0)!=(0); + if (!($54)) { + $encoding = 0; + $55 = $flags; + $56 = $55 | 4096; + $flags = $56; + break L7; + } + $57 = $s; + $58 = (_memcmp($57,37699,5)|0); + $59 = ($58|0)==(0); + $60 = $encoding; + $61 = ($60|0)==(5); + $or$cond7 = $59 & $61; + if ($or$cond7) { + $encoding = 1; + $62 = $flags; + $63 = $62 | 4; + $flags = $63; + break L7; + } + $64 = $s; + $65 = (_memcmp($64,37705,5)|0); + $66 = ($65|0)!=(0); + if (!($66)) { + $67 = $flags; + $68 = $67 | 512; + $flags = $68; + break L7; + } + $69 = $igninvflag; + $70 = ($69|0)!=(0); + if ($70) { + break L7; + } + $rc = 72; + break L7; + break; + } + case 6: { + $71 = $s; + $72 = (_memcmp($71,37711,6)|0); + $73 = ($72|0)!=(0); + if (!($73)) { + $74 = $flags; + $75 = $74 | 2048; + $flags = $75; + break L7; + } + $76 = $igninvflag; + $77 = ($76|0)!=(0); + if ($77) { + break L7; + } + $rc = 72; + break L7; + break; + } + case 7: { + $78 = $s; + $79 = (_memcmp($78,37718,7)|0); + $80 = ($79|0)!=(0); + if (!($80)) { + $81 = $flags; + $82 = $81 | 2; + $flags = $82; + break L7; + } + $83 = $s; + $84 = (_memcmp($83,37726,7)|0); + $85 = ($84|0)==(0); + $86 = $igninvflag; + $87 = ($86|0)!=(0); + $or$cond11 = $85 | $87; + if ($or$cond11) { + break L7; + } + $rc = 72; + break L7; + break; + } + case 8: { + $88 = $s; + $89 = (_memcmp($88,39412,8)|0); + $90 = ($89|0)!=(0); + if (!($90)) { + $91 = $flags; + $92 = $91 | 64; + $flags = $92; + break L7; + } + $93 = $igninvflag; + $94 = ($93|0)!=(0); + if ($94) { + break L7; + } + $rc = 72; + break L7; + break; + } + case 9: { + $95 = $s; + $96 = (_memcmp($95,37734,9)|0); + $97 = ($96|0)==(0); + $98 = $encoding; + $99 = ($98|0)==(5); + $or$cond9 = $97 & $99; + if ($or$cond9) { + $encoding = 2; + $100 = $flags; + $101 = $100 | 4; + $flags = $101; + break L7; + } + $102 = $igninvflag; + $103 = ($102|0)!=(0); + if ($103) { + break L7; + } + $rc = 72; + break L7; + break; + } + case 10: { + $104 = $s; + $105 = (_memcmp($104,37744,10)|0); + $106 = ($105|0)!=(0); + if (!($106)) { + $igninvflag = 1; + break L7; + } + $107 = $s; + $108 = (_memcmp($107,37755,10)|0); + $109 = ($108|0)!=(0); + if (!($109)) { + $110 = $flags; + $111 = $110 | 16384; + $flags = $111; + break L7; + } + $112 = $igninvflag; + $113 = ($112|0)!=(0); + if ($113) { + break L7; + } + $rc = 72; + break L7; + break; + } + case 11: { + $114 = $s; + $115 = (_memcmp($114,37766,11)|0); + $116 = ($115|0)!=(0); + if (!($116)) { + $117 = $flags; + $118 = $117 | 1; + $flags = $118; + break L7; + } + $119 = $s; + $120 = (_memcmp($119,37778,11)|0); + $121 = ($120|0)!=(0); + if (!($121)) { + $122 = $flags; + $123 = $122 | 128; + $flags = $123; + break L7; + } + $124 = $igninvflag; + $125 = ($124|0)!=(0); + if ($125) { + break L7; + } + $rc = 72; + break L7; + break; + } + case 13: { + $126 = $s; + $127 = (_memcmp($126,37790,13)|0); + $128 = ($127|0)!=(0); + if (!($128)) { + $129 = $flags; + $130 = $129 | 256; + $flags = $130; + break L7; + } + $131 = $s; + $132 = (_memcmp($131,47196,13)|0); + $133 = ($132|0)!=(0); + if (!($133)) { + $134 = $flags; + $135 = $134 | 32; + $flags = $135; + break L7; + } + $136 = $igninvflag; + $137 = ($136|0)!=(0); + if ($137) { + break L7; + } + $rc = 72; + break L7; + break; + } + default: { + $138 = $igninvflag; + $139 = ($138|0)!=(0); + if ($139) { + break L7; + } + $rc = 72; + break L7; + } + } + } while(0); + } + } while(0); + $140 = $i; + $141 = (($140) + -1)|0; + $i = $141; + } + $142 = $1; + $143 = ($142|0)!=(0|0); + if ($143) { + $144 = $flags; + $145 = $1; + HEAP32[$145>>2] = $144; + } + $146 = $2; + $147 = ($146|0)!=(0|0); + if (!($147)) { + $150 = $rc; + STACKTOP = sp;return ($150|0); + } + $148 = $encoding; + $149 = $2; + HEAP32[$149>>2] = $148; + $150 = $rc; + STACKTOP = sp;return ($150|0); +} +function __gcry_pk_util_get_nbits($list,$r_nbits) { + $list = $list|0; + $r_nbits = $r_nbits|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $buf = 0, $n = 0, $or$cond = 0, $s = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $buf = sp + 20|0; + $n = sp; + $1 = $list; + $2 = $r_nbits; + $3 = $2; + HEAP32[$3>>2] = 0; + $4 = $1; + $5 = (__gcry_sexp_find_token($4,37804,0)|0); + $1 = $5; + $6 = $1; + $7 = ($6|0)!=(0|0); + if (!($7)) { + $0 = 0; + $22 = $0; + STACKTOP = sp;return ($22|0); + } + $8 = $1; + $9 = (__gcry_sexp_nth_data($8,1,$n)|0); + $s = $9; + $10 = $s; + $11 = ($10|0)==(0|0); + $12 = HEAP32[$n>>2]|0; + $13 = ($12>>>0)>=(49); + $or$cond = $11 | $13; + if ($or$cond) { + $14 = $1; + __gcry_sexp_release($14); + $0 = 65; + $22 = $0; + STACKTOP = sp;return ($22|0); + } else { + $15 = $s; + $16 = HEAP32[$n>>2]|0; + _memcpy(($buf|0),($15|0),($16|0))|0; + $17 = HEAP32[$n>>2]|0; + $18 = (($buf) + ($17)|0); + HEAP8[$18>>0] = 0; + $19 = (_strtoul($buf,0,0)|0); + $20 = $2; + HEAP32[$20>>2] = $19; + $21 = $1; + __gcry_sexp_release($21); + $0 = 0; + $22 = $0; + STACKTOP = sp;return ($22|0); + } + return (0)|0; +} +function __gcry_pk_util_get_rsa_use_e($list,$r_e) { + $list = $list|0; + $r_e = $r_e|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $buf = 0, $n = 0, $or$cond = 0, $s = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $buf = sp + 20|0; + $n = sp; + $1 = $list; + $2 = $r_e; + $3 = $2; + HEAP32[$3>>2] = 0; + $4 = $1; + $5 = (__gcry_sexp_find_token($4,37810,0)|0); + $1 = $5; + $6 = $1; + $7 = ($6|0)!=(0|0); + if (!($7)) { + $8 = $2; + HEAP32[$8>>2] = 65537; + $0 = 0; + $23 = $0; + STACKTOP = sp;return ($23|0); + } + $9 = $1; + $10 = (__gcry_sexp_nth_data($9,1,$n)|0); + $s = $10; + $11 = $s; + $12 = ($11|0)==(0|0); + $13 = HEAP32[$n>>2]|0; + $14 = ($13>>>0)>=(49); + $or$cond = $12 | $14; + if ($or$cond) { + $15 = $1; + __gcry_sexp_release($15); + $0 = 65; + $23 = $0; + STACKTOP = sp;return ($23|0); + } else { + $16 = $s; + $17 = HEAP32[$n>>2]|0; + _memcpy(($buf|0),($16|0),($17|0))|0; + $18 = HEAP32[$n>>2]|0; + $19 = (($buf) + ($18)|0); + HEAP8[$19>>0] = 0; + $20 = (_strtoul($buf,0,0)|0); + $21 = $2; + HEAP32[$21>>2] = $20; + $22 = $1; + __gcry_sexp_release($22); + $0 = 0; + $23 = $0; + STACKTOP = sp;return ($23|0); + } + return (0)|0; +} +function __gcry_pk_util_preparse_sigval($s_sig,$algo_names,$r_parms,$r_eccflags) { + $s_sig = $s_sig|0; + $algo_names = $algo_names|0; + $r_parms = $r_parms|0; + $r_eccflags = $r_eccflags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $l1 = 0, $l2 = 0, $name = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $s_sig; + $1 = $algo_names; + $2 = $r_parms; + $3 = $r_eccflags; + $l1 = 0; + $l2 = 0; + $name = 0; + $4 = $2; + HEAP32[$4>>2] = 0; + $5 = $3; + $6 = ($5|0)!=(0|0); + if ($6) { + $7 = $3; + HEAP32[$7>>2] = 0; + } + $8 = $0; + $9 = (__gcry_sexp_find_token($8,37820,0)|0); + $l1 = $9; + $10 = $l1; + $11 = ($10|0)!=(0|0); + do { + if ($11) { + $12 = $l1; + $13 = (__gcry_sexp_nth($12,1)|0); + $l2 = $13; + $14 = $l2; + $15 = ($14|0)!=(0|0); + if (!($15)) { + $rc = 68; + break; + } + $16 = $l2; + $17 = (__gcry_sexp_nth_string($16,0)|0); + $name = $17; + $18 = $name; + $19 = ($18|0)!=(0|0); + if (!($19)) { + $rc = 65; + break; + } + $20 = $name; + $21 = (_strcmp($20,47190)|0); + $22 = ($21|0)!=(0); + if (!($22)) { + $23 = $l2; + __gcry_sexp_release($23); + $24 = $l1; + $25 = (__gcry_sexp_nth($24,2)|0); + $l2 = $25; + $26 = $l2; + $27 = ($26|0)!=(0|0); + if (!($27)) { + $rc = 65; + break; + } + $28 = $name; + __gcry_free($28); + $29 = $l2; + $30 = (__gcry_sexp_nth_string($29,0)|0); + $name = $30; + $31 = $name; + $32 = ($31|0)!=(0|0); + if (!($32)) { + $rc = 65; + break; + } + } + $i = 0; + while(1) { + $33 = $i; + $34 = $1; + $35 = (($34) + ($33<<2)|0); + $36 = HEAP32[$35>>2]|0; + $37 = ($36|0)!=(0|0); + if (!($37)) { + break; + } + $38 = $name; + $39 = $i; + $40 = $1; + $41 = (($40) + ($39<<2)|0); + $42 = HEAP32[$41>>2]|0; + $43 = (_strcasecmp($38,$42)|0); + $44 = ($43|0)!=(0); + if (!($44)) { + break; + } + $45 = $i; + $46 = (($45) + 1)|0; + $i = $46; + } + $47 = $i; + $48 = $1; + $49 = (($48) + ($47<<2)|0); + $50 = HEAP32[$49>>2]|0; + $51 = ($50|0)!=(0|0); + if (!($51)) { + $rc = 70; + break; + } + $52 = $3; + $53 = ($52|0)!=(0|0); + if ($53) { + $54 = $name; + $55 = (_strcmp($54,47150)|0); + $56 = ($55|0)!=(0); + if (!($56)) { + $57 = $3; + HEAP32[$57>>2] = 4096; + } + $58 = $name; + $59 = (_strcmp($58,47156)|0); + $60 = ($59|0)!=(0); + if (!($60)) { + $61 = $3; + HEAP32[$61>>2] = 8192; + } + } + $62 = $l2; + $63 = $2; + HEAP32[$63>>2] = $62; + $l2 = 0; + $rc = 0; + } else { + $rc = 65; + } + } while(0); + $64 = $name; + __gcry_free($64); + $65 = $l2; + __gcry_sexp_release($65); + $66 = $l1; + __gcry_sexp_release($66); + $67 = $rc; + STACKTOP = sp;return ($67|0); +} +function __gcry_pk_util_preparse_encval($sexp,$algo_names,$r_parms,$ctx) { + $sexp = $sexp|0; + $algo_names = $algo_names|0; + $r_parms = $r_parms|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0; + var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $l1 = 0, $l2 = 0, $n = 0, $name = 0, $parsed_flags = 0, $rc = 0, $s = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $n = sp + 12|0; + $parsed_flags = sp + 8|0; + $0 = $sexp; + $1 = $algo_names; + $2 = $r_parms; + $3 = $ctx; + $rc = 0; + $l1 = 0; + $l2 = 0; + $name = 0; + HEAP32[$parsed_flags>>2] = 0; + $4 = $2; + HEAP32[$4>>2] = 0; + $5 = $0; + $6 = (__gcry_sexp_find_token($5,42155,0)|0); + $l1 = $6; + $7 = $l1; + $8 = ($7|0)!=(0|0); + do { + if ($8) { + $9 = $l1; + $10 = (__gcry_sexp_nth($9,1)|0); + $l2 = $10; + $11 = $l2; + $12 = ($11|0)!=(0|0); + if (!($12)) { + $rc = 68; + break; + } + $13 = $l2; + $14 = (__gcry_sexp_nth_string($13,0)|0); + $name = $14; + $15 = $name; + $16 = ($15|0)!=(0|0); + if (!($16)) { + $rc = 65; + break; + } + $17 = $name; + $18 = (_strcmp($17,47190)|0); + $19 = ($18|0)!=(0); + if ($19) { + $115 = HEAP32[$parsed_flags>>2]|0; + $116 = $115 | 8; + HEAP32[$parsed_flags>>2] = $116; + } else { + $20 = $l2; + $21 = $3; + $22 = ((($21)) + 8|0); + $23 = (__gcry_pk_util_parse_flaglist($20,$parsed_flags,$22)|0); + $rc = $23; + $24 = $rc; + $25 = ($24|0)!=(0); + if ($25) { + break; + } + $26 = $3; + $27 = ((($26)) + 8|0); + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)==(4); + if ($29) { + $rc = 70; + break; + } + $30 = $3; + $31 = ((($30)) + 8|0); + $32 = HEAP32[$31>>2]|0; + $33 = ($32|0)==(3); + if ($33) { + $34 = $l2; + __gcry_sexp_release($34); + $35 = $l1; + $36 = (__gcry_sexp_find_token($35,37828,0)|0); + $l2 = $36; + $37 = $l2; + $38 = ($37|0)!=(0|0); + if ($38) { + $39 = $l2; + $40 = (__gcry_sexp_nth_data($39,1,$n)|0); + $s = $40; + $41 = $s; + $42 = ($41|0)!=(0|0); + if ($42) { + $43 = $s; + $44 = HEAP32[$n>>2]|0; + $45 = (_get_hash_algo($43,$44)|0); + $46 = $3; + $47 = ((($46)) + 16|0); + HEAP32[$47>>2] = $45; + $48 = $3; + $49 = ((($48)) + 16|0); + $50 = HEAP32[$49>>2]|0; + $51 = ($50|0)!=(0); + if (!($51)) { + $rc = 5; + } + } else { + $rc = 68; + } + $52 = $rc; + $53 = ($52|0)!=(0); + if ($53) { + break; + } + } + $54 = $l2; + __gcry_sexp_release($54); + $55 = $l1; + $56 = (__gcry_sexp_find_token($55,37912,0)|0); + $l2 = $56; + $57 = $l2; + $58 = ($57|0)!=(0|0); + if ($58) { + $59 = $l2; + $60 = (__gcry_sexp_nth_data($59,1,$n)|0); + $s = $60; + $61 = $s; + $62 = ($61|0)!=(0|0); + do { + if ($62) { + $63 = HEAP32[$n>>2]|0; + $64 = ($63>>>0)>(0); + if ($64) { + $65 = HEAP32[$n>>2]|0; + $66 = (__gcry_malloc($65)|0); + $67 = $3; + $68 = ((($67)) + 20|0); + HEAP32[$68>>2] = $66; + $69 = $3; + $70 = ((($69)) + 20|0); + $71 = HEAP32[$70>>2]|0; + $72 = ($71|0)!=(0|0); + if ($72) { + $74 = $3; + $75 = ((($74)) + 20|0); + $76 = HEAP32[$75>>2]|0; + $77 = $s; + $78 = HEAP32[$n>>2]|0; + _memcpy(($76|0),($77|0),($78|0))|0; + $79 = HEAP32[$n>>2]|0; + $80 = $3; + $81 = ((($80)) + 24|0); + HEAP32[$81>>2] = $79; + break; + } else { + $73 = (_gpg_err_code_from_syserror()|0); + $rc = $73; + break; + } + } + } else { + $rc = 68; + } + } while(0); + $82 = $rc; + $83 = ($82|0)!=(0); + if ($83) { + break; + } + } + } + $i = 2; + L36: while(1) { + $84 = $l2; + __gcry_sexp_release($84); + $85 = $l1; + $86 = $i; + $87 = (__gcry_sexp_nth($85,$86)|0); + $l2 = $87; + $88 = ($87|0)!=(0|0); + if (!($88)) { + break; + } + $89 = $l2; + $90 = (__gcry_sexp_nth_data($89,0,$n)|0); + $s = $90; + $91 = HEAP32[$n>>2]|0; + $92 = ($91|0)==(9); + if ($92) { + $93 = $s; + $94 = (_memcmp($93,37828,9)|0); + $95 = ($94|0)!=(0); + if ($95) { + label = 30; + } + } else { + label = 30; + } + do { + if ((label|0) == 30) { + label = 0; + $96 = HEAP32[$n>>2]|0; + $97 = ($96|0)==(5); + if ($97) { + $98 = $s; + $99 = (_memcmp($98,37912,5)|0); + $100 = ($99|0)!=(0); + if (!($100)) { + break; + } + } + $101 = HEAP32[$n>>2]|0; + $102 = ($101|0)==(15); + if (!($102)) { + break L36; + } + $103 = $s; + $104 = (_memcmp($103,37918,15)|0); + $105 = ($104|0)!=(0); + if ($105) { + break L36; + } + } + } while(0); + $106 = $i; + $107 = (($106) + 1)|0; + $i = $107; + } + $108 = $l2; + $109 = ($108|0)!=(0|0); + if (!($109)) { + $rc = 68; + break; + } + $110 = $name; + __gcry_free($110); + $111 = $l2; + $112 = (__gcry_sexp_nth_string($111,0)|0); + $name = $112; + $113 = $name; + $114 = ($113|0)!=(0|0); + if (!($114)) { + $rc = 65; + break; + } + } + $i = 0; + while(1) { + $117 = $i; + $118 = $1; + $119 = (($118) + ($117<<2)|0); + $120 = HEAP32[$119>>2]|0; + $121 = ($120|0)!=(0|0); + if (!($121)) { + break; + } + $122 = $name; + $123 = $i; + $124 = $1; + $125 = (($124) + ($123<<2)|0); + $126 = HEAP32[$125>>2]|0; + $127 = (_strcasecmp($122,$126)|0); + $128 = ($127|0)!=(0); + if (!($128)) { + break; + } + $129 = $i; + $130 = (($129) + 1)|0; + $i = $130; + } + $131 = $i; + $132 = $1; + $133 = (($132) + ($131<<2)|0); + $134 = HEAP32[$133>>2]|0; + $135 = ($134|0)!=(0|0); + if ($135) { + $136 = $l2; + $137 = $2; + HEAP32[$137>>2] = $136; + $l2 = 0; + $138 = HEAP32[$parsed_flags>>2]|0; + $139 = $3; + $140 = ((($139)) + 12|0); + $141 = HEAP32[$140>>2]|0; + $142 = $141 | $138; + HEAP32[$140>>2] = $142; + $rc = 0; + break; + } else { + $rc = 70; + break; + } + } else { + $rc = 65; + } + } while(0); + $143 = $name; + __gcry_free($143); + $144 = $l2; + __gcry_sexp_release($144); + $145 = $l1; + __gcry_sexp_release($145); + $146 = $rc; + STACKTOP = sp;return ($146|0); +} +function _get_hash_algo($s,$n) { + $s = $s|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $algo = 0, $i = 0, $tmpname = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $s; + $1 = $n; + $i = 0; + while(1) { + $2 = $i; + $3 = (4344 + ($2<<3)|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + break; + } + $6 = $i; + $7 = (4344 + ($6<<3)|0); + $8 = HEAP32[$7>>2]|0; + $9 = (_strlen($8)|0); + $10 = $1; + $11 = ($9|0)==($10|0); + if ($11) { + $12 = $i; + $13 = (4344 + ($12<<3)|0); + $14 = HEAP32[$13>>2]|0; + $15 = $0; + $16 = $1; + $17 = (_memcmp($14,$15,$16)|0); + $18 = ($17|0)!=(0); + if (!($18)) { + break; + } + } + $19 = $i; + $20 = (($19) + 1)|0; + $i = $20; + } + $21 = $i; + $22 = (4344 + ($21<<3)|0); + $23 = HEAP32[$22>>2]|0; + $24 = ($23|0)!=(0|0); + if ($24) { + $25 = $i; + $26 = (4344 + ($25<<3)|0); + $27 = ((($26)) + 4|0); + $28 = HEAP32[$27>>2]|0; + $algo = $28; + $43 = $algo; + STACKTOP = sp;return ($43|0); + } + $29 = $1; + $30 = (($29) + 1)|0; + $31 = (__gcry_malloc($30)|0); + $tmpname = $31; + $32 = $tmpname; + $33 = ($32|0)!=(0|0); + if ($33) { + $34 = $tmpname; + $35 = $0; + $36 = $1; + _memcpy(($34|0),($35|0),($36|0))|0; + $37 = $1; + $38 = $tmpname; + $39 = (($38) + ($37)|0); + HEAP8[$39>>0] = 0; + $40 = $tmpname; + $41 = (__gcry_md_map_name($40)|0); + $algo = $41; + $42 = $tmpname; + __gcry_free($42); + $43 = $algo; + STACKTOP = sp;return ($43|0); + } else { + $algo = 0; + $43 = $algo; + STACKTOP = sp;return ($43|0); + } + return (0)|0; +} +function __gcry_pk_util_init_encoding_ctx($ctx,$op,$nbits) { + $ctx = $ctx|0; + $op = $op|0; + $nbits = $nbits|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $1 = $op; + $2 = $nbits; + $3 = $1; + $4 = $0; + HEAP32[$4>>2] = $3; + $5 = $2; + $6 = $0; + $7 = ((($6)) + 4|0); + HEAP32[$7>>2] = $5; + $8 = $0; + $9 = ((($8)) + 8|0); + HEAP32[$9>>2] = 5; + $10 = $0; + $11 = ((($10)) + 12|0); + HEAP32[$11>>2] = 0; + $12 = $0; + $13 = ((($12)) + 16|0); + HEAP32[$13>>2] = 2; + $14 = $0; + $15 = ((($14)) + 20|0); + HEAP32[$15>>2] = 0; + $16 = $0; + $17 = ((($16)) + 24|0); + HEAP32[$17>>2] = 0; + $18 = $0; + $19 = ((($18)) + 28|0); + HEAP32[$19>>2] = 20; + $20 = $0; + $21 = ((($20)) + 32|0); + HEAP32[$21>>2] = 0; + $22 = $0; + $23 = ((($22)) + 36|0); + HEAP32[$23>>2] = 0; + STACKTOP = sp;return; +} +function __gcry_pk_util_free_encoding_ctx($ctx) { + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $1 = $0; + $2 = ((($1)) + 20|0); + $3 = HEAP32[$2>>2]|0; + __gcry_free($3); + STACKTOP = sp;return; +} +function __gcry_pk_util_data_to_mpi($input,$ret_mpi,$ctx) { + $input = $input|0; + $ret_mpi = $ret_mpi|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $ldata = 0, $lflags = 0, $lhash = 0, $list = 0, $list12 = 0, $list19 = 0; + var $list5 = 0, $lvalue = 0, $n = 0, $or$cond = 0, $or$cond11 = 0, $or$cond13 = 0, $or$cond15 = 0, $or$cond17 = 0, $or$cond19 = 0, $or$cond21 = 0, $or$cond23 = 0, $or$cond25 = 0, $or$cond27 = 0, $or$cond29 = 0, $or$cond3 = 0, $or$cond31 = 0, $or$cond33 = 0, $or$cond5 = 0, $or$cond7 = 0, $or$cond9 = 0; + var $parsed_flags = 0, $random_override = 0, $random_override13 = 0, $random_override17 = 0, $random_override_len = 0, $random_override_len14 = 0, $random_override_len18 = 0, $rc = 0, $s = 0, $unknown_flag = 0, $value = 0, $value1 = 0, $value10 = 0, $value15 = 0, $value3 = 0, $value6 = 0, $value8 = 0, $valuelen = 0, $valuelen11 = 0, $valuelen16 = 0; + var $valuelen2 = 0, $valuelen4 = 0, $valuelen7 = 0, $valuelen9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $n = sp + 112|0; + $parsed_flags = sp + 100|0; + $valuelen = sp + 84|0; + $valuelen2 = sp + 76|0; + $valuelen4 = sp + 68|0; + $valuelen7 = sp + 48|0; + $valuelen9 = sp + 40|0; + $valuelen11 = sp + 32|0; + $valuelen16 = sp + 12|0; + $1 = $input; + $2 = $ret_mpi; + $3 = $ctx; + $rc = 0; + $unknown_flag = 0; + HEAP32[$parsed_flags>>2] = 0; + $4 = $2; + HEAP32[$4>>2] = 0; + $5 = $1; + $6 = (__gcry_sexp_find_token($5,37934,0)|0); + $ldata = $6; + $7 = $ldata; + $8 = ($7|0)!=(0|0); + if (!($8)) { + $9 = $1; + $10 = (__gcry_sexp_nth_mpi($9,0,0)|0); + $11 = $2; + HEAP32[$11>>2] = $10; + $12 = $2; + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)!=(0|0); + $15 = $14 ? 0 : 65; + $0 = $15; + $513 = $0; + STACKTOP = sp;return ($513|0); + } + $16 = $ldata; + $17 = (__gcry_sexp_find_token($16,47190,0)|0); + $lflags = $17; + $18 = $lflags; + $19 = ($18|0)!=(0|0); + if ($19) { + $20 = $lflags; + $21 = $3; + $22 = ((($21)) + 8|0); + $23 = (__gcry_pk_util_parse_flaglist($20,$parsed_flags,$22)|0); + $24 = ($23|0)!=(0); + if ($24) { + $unknown_flag = 1; + } + $25 = $lflags; + __gcry_sexp_release($25); + } + $26 = $3; + $27 = ((($26)) + 8|0); + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)==(5); + if ($29) { + $30 = $3; + $31 = ((($30)) + 8|0); + HEAP32[$31>>2] = 0; + } + $32 = $ldata; + $33 = (__gcry_sexp_find_token($32,37939,0)|0); + $lhash = $33; + $34 = $lhash; + $35 = ($34|0)!=(0|0); + if ($35) { + $38 = 0; + } else { + $36 = $ldata; + $37 = (__gcry_sexp_find_token($36,42240,0)|0); + $38 = $37; + } + $lvalue = $38; + $39 = $lhash; + $40 = ($39|0)!=(0|0); + $41 = $40 ^ 1; + $42 = $41&1; + $43 = $lvalue; + $44 = ($43|0)!=(0|0); + $45 = $44 ^ 1; + $46 = $45&1; + $47 = $42 ^ $46; + $48 = ($47|0)!=(0); + L17: do { + if ($48) { + $49 = $unknown_flag; + $50 = ($49|0)!=(0); + if ($50) { + $rc = 72; + break; + } + $51 = $3; + $52 = ((($51)) + 8|0); + $53 = HEAP32[$52>>2]|0; + $54 = ($53|0)==(0); + if ($54) { + $55 = HEAP32[$parsed_flags>>2]|0; + $56 = $55 & 4096; + $57 = ($56|0)!=(0); + if ($57) { + $58 = $lvalue; + $59 = ($58|0)!=(0|0); + if (!($59)) { + $rc = 65; + break; + } + $60 = $ldata; + $61 = (__gcry_sexp_find_token($60,37828,0)|0); + $list = $61; + $62 = $list; + $63 = ($62|0)!=(0|0); + if ($63) { + $64 = $list; + $65 = (__gcry_sexp_nth_data($64,1,$n)|0); + $s = $65; + $66 = $s; + $67 = ($66|0)!=(0|0); + if ($67) { + $68 = $s; + $69 = HEAP32[$n>>2]|0; + $70 = (_get_hash_algo($68,$69)|0); + $71 = $3; + $72 = ((($71)) + 16|0); + HEAP32[$72>>2] = $70; + $73 = $3; + $74 = ((($73)) + 16|0); + $75 = HEAP32[$74>>2]|0; + $76 = ($75|0)!=(0); + if (!($76)) { + $rc = 5; + } + } else { + $rc = 68; + } + $77 = $list; + __gcry_sexp_release($77); + } else { + $rc = 65; + } + $78 = $rc; + $79 = ($78|0)!=(0); + if ($79) { + break; + } + $80 = $lvalue; + $81 = (__gcry_sexp_nth_buffer($80,1,$valuelen)|0); + $value = $81; + $82 = $value; + $83 = ($82|0)!=(0|0); + if ($83) { + $88 = HEAP32[$valuelen>>2]|0; + $89 = $88<<3; + $90 = HEAP32[$valuelen>>2]|0; + $91 = ($89>>>0)<($90>>>0); + if ($91) { + $92 = $value; + __gcry_free($92); + $rc = 67; + } + } else { + HEAP32[$valuelen>>2] = 0; + $84 = (__gcry_malloc(1)|0); + $value = $84; + $85 = $value; + $86 = ($85|0)!=(0|0); + if (!($86)) { + $87 = (_gpg_err_code_from_syserror()|0); + $rc = $87; + } + } + $93 = $rc; + $94 = ($93|0)!=(0); + if ($94) { + break; + } + $95 = $value; + $96 = HEAP32[$valuelen>>2]|0; + $97 = $96<<3; + $98 = (__gcry_mpi_set_opaque(0,$95,$97)|0); + $99 = $2; + HEAP32[$99>>2] = $98; + break; + } + } + $100 = $3; + $101 = ((($100)) + 8|0); + $102 = HEAP32[$101>>2]|0; + $103 = ($102|0)==(0); + $104 = $lhash; + $105 = ($104|0)!=(0|0); + $or$cond = $103 & $105; + do { + if ($or$cond) { + $106 = HEAP32[$parsed_flags>>2]|0; + $107 = $106 & 16; + $108 = ($107|0)!=(0); + if (!($108)) { + $109 = HEAP32[$parsed_flags>>2]|0; + $110 = $109 & 2; + $111 = ($110|0)!=(0); + if (!($111)) { + break; + } + } + $112 = $lhash; + $113 = (__gcry_sexp_length($112)|0); + $114 = ($113|0)!=(3); + if ($114) { + $rc = 65; + break L17; + } + $115 = $lhash; + $116 = (__gcry_sexp_nth_data($115,1,$n)|0); + $s = $116; + $117 = ($116|0)!=(0|0); + $118 = HEAP32[$n>>2]|0; + $119 = ($118|0)!=(0); + $or$cond3 = $117 & $119; + if (!($or$cond3)) { + $rc = 65; + break L17; + } + $120 = $s; + $121 = HEAP32[$n>>2]|0; + $122 = (_get_hash_algo($120,$121)|0); + $123 = $3; + $124 = ((($123)) + 16|0); + HEAP32[$124>>2] = $122; + $125 = $3; + $126 = ((($125)) + 16|0); + $127 = HEAP32[$126>>2]|0; + $128 = ($127|0)!=(0); + if (!($128)) { + $rc = 5; + break L17; + } + $129 = $lhash; + $130 = (__gcry_sexp_nth_buffer($129,2,$valuelen2)|0); + $value1 = $130; + $131 = ($130|0)!=(0|0); + if (!($131)) { + $rc = 65; + break L17; + } + $132 = HEAP32[$valuelen2>>2]|0; + $133 = $132<<3; + $134 = HEAP32[$valuelen2>>2]|0; + $135 = ($133>>>0)<($134>>>0); + $136 = $value1; + if ($135) { + __gcry_free($136); + $rc = 67; + break L17; + } else { + $137 = HEAP32[$valuelen2>>2]|0; + $138 = $137<<3; + $139 = (__gcry_mpi_set_opaque(0,$136,$138)|0); + $140 = $2; + HEAP32[$140>>2] = $139; + break L17; + } + } + } while(0); + $141 = $3; + $142 = ((($141)) + 8|0); + $143 = HEAP32[$142>>2]|0; + $144 = ($143|0)==(0); + $145 = $lvalue; + $146 = ($145|0)!=(0|0); + $or$cond5 = $144 & $146; + if ($or$cond5) { + $147 = HEAP32[$parsed_flags>>2]|0; + $148 = $147 & 2; + $149 = ($148|0)!=(0); + if ($149) { + $rc = 70; + break; + } + $150 = $lvalue; + $151 = (__gcry_sexp_nth_mpi($150,1,5)|0); + $152 = $2; + HEAP32[$152>>2] = $151; + $153 = $2; + $154 = HEAP32[$153>>2]|0; + $155 = ($154|0)!=(0|0); + if ($155) { + break; + } + $rc = 65; + break; + } + $156 = $3; + $157 = ((($156)) + 8|0); + $158 = HEAP32[$157>>2]|0; + $159 = ($158|0)==(1); + $160 = $lvalue; + $161 = ($160|0)!=(0|0); + $or$cond7 = $159 & $161; + if ($or$cond7) { + $162 = $3; + $163 = HEAP32[$162>>2]|0; + $164 = ($163|0)==(0); + if ($164) { + $random_override = 0; + $random_override_len = 0; + $165 = $lvalue; + $166 = (__gcry_sexp_nth_data($165,1,$valuelen4)|0); + $value3 = $166; + $167 = ($166|0)!=(0|0); + $168 = HEAP32[$valuelen4>>2]|0; + $169 = ($168|0)!=(0); + $or$cond9 = $167 & $169; + if (!($or$cond9)) { + $rc = 65; + break; + } + $170 = $ldata; + $171 = (__gcry_sexp_find_token($170,37918,0)|0); + $list5 = $171; + $172 = $list5; + $173 = ($172|0)!=(0|0); + if ($173) { + $174 = $list5; + $175 = (__gcry_sexp_nth_data($174,1,$n)|0); + $s = $175; + $176 = $s; + $177 = ($176|0)!=(0|0); + do { + if ($177) { + $178 = HEAP32[$n>>2]|0; + $179 = ($178>>>0)>(0); + if ($179) { + $180 = HEAP32[$n>>2]|0; + $181 = (__gcry_malloc($180)|0); + $random_override = $181; + $182 = $random_override; + $183 = ($182|0)!=(0|0); + if ($183) { + $185 = $random_override; + $186 = $s; + $187 = HEAP32[$n>>2]|0; + _memcpy(($185|0),($186|0),($187|0))|0; + $188 = HEAP32[$n>>2]|0; + $random_override_len = $188; + break; + } else { + $184 = (_gpg_err_code_from_syserror()|0); + $rc = $184; + break; + } + } + } else { + $rc = 68; + } + } while(0); + $189 = $list5; + __gcry_sexp_release($189); + $190 = $rc; + $191 = ($190|0)!=(0); + if ($191) { + break; + } + } + $192 = $2; + $193 = $3; + $194 = ((($193)) + 4|0); + $195 = HEAP32[$194>>2]|0; + $196 = $value3; + $197 = HEAP32[$valuelen4>>2]|0; + $198 = $random_override; + $199 = $random_override_len; + $200 = (__gcry_rsa_pkcs1_encode_for_enc($192,$195,$196,$197,$198,$199)|0); + $rc = $200; + $201 = $random_override; + __gcry_free($201); + break; + } + } + $202 = $3; + $203 = ((($202)) + 8|0); + $204 = HEAP32[$203>>2]|0; + $205 = ($204|0)==(1); + $206 = $lhash; + $207 = ($206|0)!=(0|0); + $or$cond11 = $205 & $207; + do { + if ($or$cond11) { + $208 = $3; + $209 = HEAP32[$208>>2]|0; + $210 = ($209|0)==(2); + if (!($210)) { + $211 = $3; + $212 = HEAP32[$211>>2]|0; + $213 = ($212|0)==(3); + if (!($213)) { + break; + } + } + $214 = $lhash; + $215 = (__gcry_sexp_length($214)|0); + $216 = ($215|0)!=(3); + if ($216) { + $rc = 65; + break L17; + } + $217 = $lhash; + $218 = (__gcry_sexp_nth_data($217,1,$n)|0); + $s = $218; + $219 = ($218|0)!=(0|0); + $220 = HEAP32[$n>>2]|0; + $221 = ($220|0)!=(0); + $or$cond13 = $219 & $221; + if (!($or$cond13)) { + $rc = 65; + break L17; + } + $222 = $s; + $223 = HEAP32[$n>>2]|0; + $224 = (_get_hash_algo($222,$223)|0); + $225 = $3; + $226 = ((($225)) + 16|0); + HEAP32[$226>>2] = $224; + $227 = $3; + $228 = ((($227)) + 16|0); + $229 = HEAP32[$228>>2]|0; + $230 = ($229|0)!=(0); + if (!($230)) { + $rc = 5; + break L17; + } + $231 = $lhash; + $232 = (__gcry_sexp_nth_data($231,2,$valuelen7)|0); + $value6 = $232; + $233 = ($232|0)!=(0|0); + $234 = HEAP32[$valuelen7>>2]|0; + $235 = ($234|0)!=(0); + $or$cond15 = $233 & $235; + if ($or$cond15) { + $236 = $2; + $237 = $3; + $238 = ((($237)) + 4|0); + $239 = HEAP32[$238>>2]|0; + $240 = $value6; + $241 = HEAP32[$valuelen7>>2]|0; + $242 = $3; + $243 = ((($242)) + 16|0); + $244 = HEAP32[$243>>2]|0; + $245 = (__gcry_rsa_pkcs1_encode_for_sig($236,$239,$240,$241,$244)|0); + $rc = $245; + break L17; + } else { + $rc = 65; + break L17; + } + } + } while(0); + $246 = $3; + $247 = ((($246)) + 8|0); + $248 = HEAP32[$247>>2]|0; + $249 = ($248|0)==(2); + $250 = $lvalue; + $251 = ($250|0)!=(0|0); + $or$cond17 = $249 & $251; + do { + if ($or$cond17) { + $252 = $3; + $253 = HEAP32[$252>>2]|0; + $254 = ($253|0)==(2); + if (!($254)) { + $255 = $3; + $256 = HEAP32[$255>>2]|0; + $257 = ($256|0)==(3); + if (!($257)) { + break; + } + } + $258 = $lvalue; + $259 = (__gcry_sexp_length($258)|0); + $260 = ($259|0)!=(2); + if ($260) { + $rc = 65; + break L17; + } + $261 = $lvalue; + $262 = (__gcry_sexp_nth_data($261,1,$valuelen9)|0); + $value8 = $262; + $263 = ($262|0)!=(0|0); + $264 = HEAP32[$valuelen9>>2]|0; + $265 = ($264|0)!=(0); + $or$cond19 = $263 & $265; + if ($or$cond19) { + $266 = $2; + $267 = $3; + $268 = ((($267)) + 4|0); + $269 = HEAP32[$268>>2]|0; + $270 = $value8; + $271 = HEAP32[$valuelen9>>2]|0; + $272 = (__gcry_rsa_pkcs1_encode_raw_for_sig($266,$269,$270,$271)|0); + $rc = $272; + break L17; + } else { + $rc = 65; + break L17; + } + } + } while(0); + $273 = $3; + $274 = ((($273)) + 8|0); + $275 = HEAP32[$274>>2]|0; + $276 = ($275|0)==(3); + $277 = $lvalue; + $278 = ($277|0)!=(0|0); + $or$cond21 = $276 & $278; + if ($or$cond21) { + $279 = $3; + $280 = HEAP32[$279>>2]|0; + $281 = ($280|0)==(0); + if ($281) { + $282 = $lvalue; + $283 = (__gcry_sexp_nth_data($282,1,$valuelen11)|0); + $value10 = $283; + $284 = ($283|0)!=(0|0); + $285 = HEAP32[$valuelen11>>2]|0; + $286 = ($285|0)!=(0); + $or$cond23 = $284 & $286; + if (!($or$cond23)) { + $rc = 65; + break; + } + $random_override13 = 0; + $random_override_len14 = 0; + $287 = $ldata; + $288 = (__gcry_sexp_find_token($287,37828,0)|0); + $list12 = $288; + $289 = $list12; + $290 = ($289|0)!=(0|0); + if ($290) { + $291 = $list12; + $292 = (__gcry_sexp_nth_data($291,1,$n)|0); + $s = $292; + $293 = $s; + $294 = ($293|0)!=(0|0); + do { + if ($294) { + $295 = $s; + $296 = HEAP32[$n>>2]|0; + $297 = (_get_hash_algo($295,$296)|0); + $298 = $3; + $299 = ((($298)) + 16|0); + HEAP32[$299>>2] = $297; + $300 = $3; + $301 = ((($300)) + 16|0); + $302 = HEAP32[$301>>2]|0; + $303 = ($302|0)!=(0); + if ($303) { + break; + } + $rc = 5; + } else { + $rc = 68; + } + } while(0); + $304 = $list12; + __gcry_sexp_release($304); + $305 = $rc; + $306 = ($305|0)!=(0); + if ($306) { + break; + } + } + $307 = $ldata; + $308 = (__gcry_sexp_find_token($307,37912,0)|0); + $list12 = $308; + $309 = $list12; + $310 = ($309|0)!=(0|0); + if ($310) { + $311 = $list12; + $312 = (__gcry_sexp_nth_data($311,1,$n)|0); + $s = $312; + $313 = $s; + $314 = ($313|0)!=(0|0); + do { + if ($314) { + $315 = HEAP32[$n>>2]|0; + $316 = ($315>>>0)>(0); + if (!($316)) { + break; + } + $317 = HEAP32[$n>>2]|0; + $318 = (__gcry_malloc($317)|0); + $319 = $3; + $320 = ((($319)) + 20|0); + HEAP32[$320>>2] = $318; + $321 = $3; + $322 = ((($321)) + 20|0); + $323 = HEAP32[$322>>2]|0; + $324 = ($323|0)!=(0|0); + if ($324) { + $326 = $3; + $327 = ((($326)) + 20|0); + $328 = HEAP32[$327>>2]|0; + $329 = $s; + $330 = HEAP32[$n>>2]|0; + _memcpy(($328|0),($329|0),($330|0))|0; + $331 = HEAP32[$n>>2]|0; + $332 = $3; + $333 = ((($332)) + 24|0); + HEAP32[$333>>2] = $331; + break; + } else { + $325 = (_gpg_err_code_from_syserror()|0); + $rc = $325; + break; + } + } else { + $rc = 68; + } + } while(0); + $334 = $list12; + __gcry_sexp_release($334); + $335 = $rc; + $336 = ($335|0)!=(0); + if ($336) { + break; + } + } + $337 = $ldata; + $338 = (__gcry_sexp_find_token($337,37918,0)|0); + $list12 = $338; + $339 = $list12; + $340 = ($339|0)!=(0|0); + if ($340) { + $341 = $list12; + $342 = (__gcry_sexp_nth_data($341,1,$n)|0); + $s = $342; + $343 = $s; + $344 = ($343|0)!=(0|0); + do { + if ($344) { + $345 = HEAP32[$n>>2]|0; + $346 = ($345>>>0)>(0); + if (!($346)) { + break; + } + $347 = HEAP32[$n>>2]|0; + $348 = (__gcry_malloc($347)|0); + $random_override13 = $348; + $349 = $random_override13; + $350 = ($349|0)!=(0|0); + if ($350) { + $352 = $random_override13; + $353 = $s; + $354 = HEAP32[$n>>2]|0; + _memcpy(($352|0),($353|0),($354|0))|0; + $355 = HEAP32[$n>>2]|0; + $random_override_len14 = $355; + break; + } else { + $351 = (_gpg_err_code_from_syserror()|0); + $rc = $351; + break; + } + } else { + $rc = 68; + } + } while(0); + $356 = $list12; + __gcry_sexp_release($356); + $357 = $rc; + $358 = ($357|0)!=(0); + if ($358) { + break; + } + } + $359 = $2; + $360 = $3; + $361 = ((($360)) + 4|0); + $362 = HEAP32[$361>>2]|0; + $363 = $3; + $364 = ((($363)) + 16|0); + $365 = HEAP32[$364>>2]|0; + $366 = $value10; + $367 = HEAP32[$valuelen11>>2]|0; + $368 = $3; + $369 = ((($368)) + 20|0); + $370 = HEAP32[$369>>2]|0; + $371 = $3; + $372 = ((($371)) + 24|0); + $373 = HEAP32[$372>>2]|0; + $374 = $random_override13; + $375 = $random_override_len14; + $376 = (__gcry_rsa_oaep_encode($359,$362,$365,$366,$367,$370,$373,$374,$375)|0); + $rc = $376; + $377 = $random_override13; + __gcry_free($377); + break; + } + } + $378 = $3; + $379 = ((($378)) + 8|0); + $380 = HEAP32[$379>>2]|0; + $381 = ($380|0)==(4); + $382 = $lhash; + $383 = ($382|0)!=(0|0); + $or$cond25 = $381 & $383; + if ($or$cond25) { + $384 = $3; + $385 = HEAP32[$384>>2]|0; + $386 = ($385|0)==(2); + if ($386) { + $387 = $lhash; + $388 = (__gcry_sexp_length($387)|0); + $389 = ($388|0)!=(3); + if ($389) { + $rc = 65; + break; + } + $390 = $lhash; + $391 = (__gcry_sexp_nth_data($390,1,$n)|0); + $s = $391; + $392 = ($391|0)!=(0|0); + $393 = HEAP32[$n>>2]|0; + $394 = ($393|0)!=(0); + $or$cond27 = $392 & $394; + if (!($or$cond27)) { + $rc = 65; + break; + } + $random_override17 = 0; + $random_override_len18 = 0; + $395 = $s; + $396 = HEAP32[$n>>2]|0; + $397 = (_get_hash_algo($395,$396)|0); + $398 = $3; + $399 = ((($398)) + 16|0); + HEAP32[$399>>2] = $397; + $400 = $3; + $401 = ((($400)) + 16|0); + $402 = HEAP32[$401>>2]|0; + $403 = ($402|0)!=(0); + if (!($403)) { + $rc = 5; + break; + } + $404 = $lhash; + $405 = (__gcry_sexp_nth_data($404,2,$valuelen16)|0); + $value15 = $405; + $406 = ($405|0)!=(0|0); + $407 = HEAP32[$valuelen16>>2]|0; + $408 = ($407|0)!=(0); + $or$cond29 = $406 & $408; + if (!($or$cond29)) { + $rc = 65; + break; + } + $409 = $ldata; + $410 = (__gcry_sexp_find_token($409,37944,0)|0); + $list19 = $410; + $411 = $list19; + $412 = ($411|0)!=(0|0); + do { + if ($412) { + $413 = $list19; + $414 = (__gcry_sexp_nth_data($413,1,$n)|0); + $s = $414; + $415 = $s; + $416 = ($415|0)!=(0|0); + if ($416) { + $417 = $s; + $418 = (_strtoul($417,0,10)|0); + $419 = $3; + $420 = ((($419)) + 28|0); + HEAP32[$420>>2] = $418; + $421 = $list19; + __gcry_sexp_release($421); + break; + } else { + $rc = 68; + break L17; + } + } + } while(0); + $422 = $ldata; + $423 = (__gcry_sexp_find_token($422,37918,0)|0); + $list19 = $423; + $424 = $list19; + $425 = ($424|0)!=(0|0); + if ($425) { + $426 = $list19; + $427 = (__gcry_sexp_nth_data($426,1,$n)|0); + $s = $427; + $428 = $s; + $429 = ($428|0)!=(0|0); + do { + if ($429) { + $430 = HEAP32[$n>>2]|0; + $431 = ($430>>>0)>(0); + if (!($431)) { + break; + } + $432 = HEAP32[$n>>2]|0; + $433 = (__gcry_malloc($432)|0); + $random_override17 = $433; + $434 = $random_override17; + $435 = ($434|0)!=(0|0); + if ($435) { + $437 = $random_override17; + $438 = $s; + $439 = HEAP32[$n>>2]|0; + _memcpy(($437|0),($438|0),($439|0))|0; + $440 = HEAP32[$n>>2]|0; + $random_override_len18 = $440; + break; + } else { + $436 = (_gpg_err_code_from_syserror()|0); + $rc = $436; + break; + } + } else { + $rc = 68; + } + } while(0); + $441 = $list19; + __gcry_sexp_release($441); + $442 = $rc; + $443 = ($442|0)!=(0); + if ($443) { + break; + } + } + $444 = $2; + $445 = $3; + $446 = ((($445)) + 4|0); + $447 = HEAP32[$446>>2]|0; + $448 = (($447) - 1)|0; + $449 = $3; + $450 = ((($449)) + 16|0); + $451 = HEAP32[$450>>2]|0; + $452 = $value15; + $453 = HEAP32[$valuelen16>>2]|0; + $454 = $3; + $455 = ((($454)) + 28|0); + $456 = HEAP32[$455>>2]|0; + $457 = $random_override17; + $458 = $random_override_len18; + $459 = (__gcry_rsa_pss_encode($444,$448,$451,$452,$453,$456,$457,$458)|0); + $rc = $459; + $460 = $random_override17; + __gcry_free($460); + break; + } + } + $461 = $3; + $462 = ((($461)) + 8|0); + $463 = HEAP32[$462>>2]|0; + $464 = ($463|0)==(4); + $465 = $lhash; + $466 = ($465|0)!=(0|0); + $or$cond31 = $464 & $466; + if ($or$cond31) { + $467 = $3; + $468 = HEAP32[$467>>2]|0; + $469 = ($468|0)==(3); + if ($469) { + $470 = $lhash; + $471 = (__gcry_sexp_length($470)|0); + $472 = ($471|0)!=(3); + if ($472) { + $rc = 65; + break; + } + $473 = $lhash; + $474 = (__gcry_sexp_nth_data($473,1,$n)|0); + $s = $474; + $475 = ($474|0)!=(0|0); + $476 = HEAP32[$n>>2]|0; + $477 = ($476|0)!=(0); + $or$cond33 = $475 & $477; + if (!($or$cond33)) { + $rc = 65; + break; + } + $478 = $s; + $479 = HEAP32[$n>>2]|0; + $480 = (_get_hash_algo($478,$479)|0); + $481 = $3; + $482 = ((($481)) + 16|0); + HEAP32[$482>>2] = $480; + $483 = $3; + $484 = ((($483)) + 16|0); + $485 = HEAP32[$484>>2]|0; + $486 = ($485|0)!=(0); + if (!($486)) { + $rc = 5; + break; + } + $487 = $lhash; + $488 = (__gcry_sexp_nth_mpi($487,2,5)|0); + $489 = $2; + HEAP32[$489>>2] = $488; + $490 = $2; + $491 = HEAP32[$490>>2]|0; + $492 = ($491|0)!=(0|0); + if (!($492)) { + $rc = 65; + } + $493 = $3; + $494 = ((($493)) + 32|0); + HEAP32[$494>>2] = 67; + $495 = $2; + $496 = HEAP32[$495>>2]|0; + $497 = $3; + $498 = ((($497)) + 36|0); + HEAP32[$498>>2] = $496; + break; + } + } + $rc = 70; + } else { + $rc = 65; + } + } while(0); + $499 = $ldata; + __gcry_sexp_release($499); + $500 = $lhash; + __gcry_sexp_release($500); + $501 = $lvalue; + __gcry_sexp_release($501); + $502 = $rc; + $503 = ($502|0)!=(0); + if ($503) { + $507 = $3; + $508 = ((($507)) + 20|0); + $509 = HEAP32[$508>>2]|0; + __gcry_free($509); + $510 = $3; + $511 = ((($510)) + 20|0); + HEAP32[$511>>2] = 0; + } else { + $504 = HEAP32[$parsed_flags>>2]|0; + $505 = $3; + $506 = ((($505)) + 12|0); + HEAP32[$506>>2] = $504; + } + $512 = $rc; + $0 = $512; + $513 = $0; + STACKTOP = sp;return ($513|0); +} +function _pss_verify_cmp($opaque,$tmp) { + $opaque = $opaque|0; + $tmp = $tmp|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ctx = 0; + var $hash = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $opaque; + $1 = $tmp; + $2 = $0; + $ctx = $2; + $3 = $ctx; + $4 = ((($3)) + 36|0); + $5 = HEAP32[$4>>2]|0; + $hash = $5; + $6 = $hash; + $7 = $1; + $8 = $ctx; + $9 = ((($8)) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) - 1)|0; + $12 = $ctx; + $13 = ((($12)) + 16|0); + $14 = HEAP32[$13>>2]|0; + $15 = $ctx; + $16 = ((($15)) + 28|0); + $17 = HEAP32[$16>>2]|0; + $18 = (__gcry_rsa_pss_verify($6,$7,$11,$14,$17)|0); + STACKTOP = sp;return ($18|0); +} +function _spec_from_name_1102($name) { + $name = $name|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aliases = 0, $idx = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $name; + $idx = 0; + L1: while(1) { + $2 = $idx; + $3 = (4448 + ($2<<2)|0); + $4 = HEAP32[$3>>2]|0; + $spec = $4; + $5 = ($4|0)!=(0|0); + if (!($5)) { + label = 11; + break; + } + $6 = $1; + $7 = $spec; + $8 = ((($7)) + 12|0); + $9 = HEAP32[$8>>2]|0; + $10 = (_strcasecmp($6,$9)|0); + $11 = ($10|0)!=(0); + $12 = $spec; + if (!($11)) { + label = 4; + break; + } + $13 = ((($12)) + 16|0); + $14 = HEAP32[$13>>2]|0; + $aliases = $14; + while(1) { + $15 = $aliases; + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)!=(0|0); + if (!($17)) { + break; + } + $18 = $1; + $19 = $aliases; + $20 = HEAP32[$19>>2]|0; + $21 = (_strcasecmp($18,$20)|0); + $22 = ($21|0)!=(0); + if (!($22)) { + label = 8; + break L1; + } + $24 = $aliases; + $25 = ((($24)) + 4|0); + $aliases = $25; + } + $26 = $idx; + $27 = (($26) + 1)|0; + $idx = $27; + } + if ((label|0) == 4) { + $0 = $12; + $28 = $0; + STACKTOP = sp;return ($28|0); + } + else if ((label|0) == 8) { + $23 = $spec; + $0 = $23; + $28 = $0; + STACKTOP = sp;return ($28|0); + } + else if ((label|0) == 11) { + $0 = 0; + $28 = $0; + STACKTOP = sp;return ($28|0); + } + return (0)|0; +} +function __gcry_pk_algo_name($algo) { + $algo = $algo|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $algo; + $2 = $1; + $3 = (_spec_from_algo_1105($2)|0); + $spec = $3; + $4 = $spec; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = $spec; + $7 = ((($6)) + 12|0); + $8 = HEAP32[$7>>2]|0; + $0 = $8; + $9 = $0; + STACKTOP = sp;return ($9|0); + } else { + $0 = 37956; + $9 = $0; + STACKTOP = sp;return ($9|0); + } + return (0)|0; +} +function _spec_from_algo_1105($algo) { + $algo = $algo|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $idx = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $algo; + $2 = $1; + $3 = (_map_algo_1106($2)|0); + $1 = $3; + $idx = 0; + while(1) { + $4 = $idx; + $5 = (4448 + ($4<<2)|0); + $6 = HEAP32[$5>>2]|0; + $spec = $6; + $7 = ($6|0)!=(0|0); + if (!($7)) { + label = 6; + break; + } + $8 = $1; + $9 = $spec; + $10 = HEAP32[$9>>2]|0; + $11 = ($8|0)==($10|0); + if ($11) { + label = 4; + break; + } + $13 = $idx; + $14 = (($13) + 1)|0; + $idx = $14; + } + if ((label|0) == 4) { + $12 = $spec; + $0 = $12; + $15 = $0; + STACKTOP = sp;return ($15|0); + } + else if ((label|0) == 6) { + $0 = 0; + $15 = $0; + STACKTOP = sp;return ($15|0); + } + return (0)|0; +} +function _map_algo_1106($algo) { + $algo = $algo|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $algo; + $2 = $1; + switch ($2|0) { + case 2: { + $0 = 1; + break; + } + case 3: { + $0 = 1; + break; + } + case 16: { + $0 = 20; + break; + } + case 301: { + $0 = 18; + break; + } + case 302: { + $0 = 18; + break; + } + default: { + $3 = $1; + $0 = $3; + } + } + $4 = $0; + STACKTOP = sp;return ($4|0); +} +function __gcry_pk_encrypt($r_ciph,$s_data,$s_pkey) { + $r_ciph = $r_ciph|0; + $s_data = $s_data|0; + $s_pkey = $s_pkey|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $keyparms = 0, $rc = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $spec = sp + 4|0; + $keyparms = sp; + $0 = $r_ciph; + $1 = $s_data; + $2 = $s_pkey; + $3 = $0; + HEAP32[$3>>2] = 0; + $4 = $2; + $5 = (_spec_from_sexp($4,0,$spec,$keyparms)|0); + $rc = $5; + $6 = $rc; + $7 = ($6|0)!=(0); + do { + if (!($7)) { + $8 = HEAP32[$spec>>2]|0; + $9 = ((($8)) + 48|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = HEAP32[$spec>>2]|0; + $13 = ((($12)) + 48|0); + $14 = HEAP32[$13>>2]|0; + $15 = $0; + $16 = $1; + $17 = HEAP32[$keyparms>>2]|0; + $18 = (FUNCTION_TABLE_iiii[$14 & 127]($15,$16,$17)|0); + $rc = $18; + break; + } else { + $rc = 69; + break; + } + } + } while(0); + $19 = HEAP32[$keyparms>>2]|0; + __gcry_sexp_release($19); + $20 = $rc; + STACKTOP = sp;return ($20|0); +} +function _spec_from_sexp($sexp,$want_private,$r_spec,$r_parms) { + $sexp = $sexp|0; + $want_private = $want_private|0; + $r_spec = $r_spec|0; + $r_parms = $r_parms|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $l2 = 0, $list = 0, $name = 0, $or$cond = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $sexp; + $2 = $want_private; + $3 = $r_spec; + $4 = $r_parms; + $5 = $3; + HEAP32[$5>>2] = 0; + $6 = $4; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = $4; + HEAP32[$8>>2] = 0; + } + $9 = $1; + $10 = $2; + $11 = ($10|0)!=(0); + $12 = $11 ? 37958 : 37970; + $13 = (__gcry_sexp_find_token($9,$12,0)|0); + $list = $13; + $14 = $list; + $15 = ($14|0)!=(0|0); + $16 = $2; + $17 = ($16|0)!=(0); + $or$cond = $15 | $17; + if (!($or$cond)) { + $18 = $1; + $19 = (__gcry_sexp_find_token($18,37958,0)|0); + $list = $19; + } + $20 = $list; + $21 = ($20|0)!=(0|0); + if (!($21)) { + $0 = 65; + $43 = $0; + STACKTOP = sp;return ($43|0); + } + $22 = $list; + $23 = (__gcry_sexp_cadr($22)|0); + $l2 = $23; + $24 = $list; + __gcry_sexp_release($24); + $25 = $l2; + $list = $25; + $26 = $list; + $27 = (__gcry_sexp_nth_string($26,0)|0); + $name = $27; + $28 = $name; + $29 = ($28|0)!=(0|0); + if (!($29)) { + $30 = $list; + __gcry_sexp_release($30); + $0 = 65; + $43 = $0; + STACKTOP = sp;return ($43|0); + } + $31 = $name; + $32 = (_spec_from_name_1102($31)|0); + $spec = $32; + $33 = $name; + __gcry_free($33); + $34 = $spec; + $35 = ($34|0)!=(0|0); + if (!($35)) { + $36 = $list; + __gcry_sexp_release($36); + $0 = 4; + $43 = $0; + STACKTOP = sp;return ($43|0); + } + $37 = $spec; + $38 = $3; + HEAP32[$38>>2] = $37; + $39 = $4; + $40 = ($39|0)!=(0|0); + $41 = $list; + if ($40) { + $42 = $4; + HEAP32[$42>>2] = $41; + } else { + __gcry_sexp_release($41); + } + $0 = 0; + $43 = $0; + STACKTOP = sp;return ($43|0); +} +function __gcry_pk_decrypt($r_plain,$s_data,$s_skey) { + $r_plain = $r_plain|0; + $s_data = $s_data|0; + $s_skey = $s_skey|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $keyparms = 0, $rc = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $spec = sp + 4|0; + $keyparms = sp; + $0 = $r_plain; + $1 = $s_data; + $2 = $s_skey; + $3 = $0; + HEAP32[$3>>2] = 0; + $4 = $2; + $5 = (_spec_from_sexp($4,1,$spec,$keyparms)|0); + $rc = $5; + $6 = $rc; + $7 = ($6|0)!=(0); + do { + if (!($7)) { + $8 = HEAP32[$spec>>2]|0; + $9 = ((($8)) + 52|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = HEAP32[$spec>>2]|0; + $13 = ((($12)) + 52|0); + $14 = HEAP32[$13>>2]|0; + $15 = $0; + $16 = $1; + $17 = HEAP32[$keyparms>>2]|0; + $18 = (FUNCTION_TABLE_iiii[$14 & 127]($15,$16,$17)|0); + $rc = $18; + break; + } else { + $rc = 69; + break; + } + } + } while(0); + $19 = HEAP32[$keyparms>>2]|0; + __gcry_sexp_release($19); + $20 = $rc; + STACKTOP = sp;return ($20|0); +} +function __gcry_pk_sign($r_sig,$s_hash,$s_skey) { + $r_sig = $r_sig|0; + $s_hash = $s_hash|0; + $s_skey = $s_skey|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $keyparms = 0, $rc = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $spec = sp + 4|0; + $keyparms = sp; + $0 = $r_sig; + $1 = $s_hash; + $2 = $s_skey; + $3 = $0; + HEAP32[$3>>2] = 0; + $4 = $2; + $5 = (_spec_from_sexp($4,1,$spec,$keyparms)|0); + $rc = $5; + $6 = $rc; + $7 = ($6|0)!=(0); + do { + if (!($7)) { + $8 = HEAP32[$spec>>2]|0; + $9 = ((($8)) + 56|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = HEAP32[$spec>>2]|0; + $13 = ((($12)) + 56|0); + $14 = HEAP32[$13>>2]|0; + $15 = $0; + $16 = $1; + $17 = HEAP32[$keyparms>>2]|0; + $18 = (FUNCTION_TABLE_iiii[$14 & 127]($15,$16,$17)|0); + $rc = $18; + break; + } else { + $rc = 69; + break; + } + } + } while(0); + $19 = HEAP32[$keyparms>>2]|0; + __gcry_sexp_release($19); + $20 = $rc; + STACKTOP = sp;return ($20|0); +} +function __gcry_pk_verify($s_sig,$s_hash,$s_pkey) { + $s_sig = $s_sig|0; + $s_hash = $s_hash|0; + $s_pkey = $s_pkey|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $keyparms = 0, $rc = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $spec = sp + 4|0; + $keyparms = sp; + $0 = $s_sig; + $1 = $s_hash; + $2 = $s_pkey; + $3 = $2; + $4 = (_spec_from_sexp($3,0,$spec,$keyparms)|0); + $rc = $4; + $5 = $rc; + $6 = ($5|0)!=(0); + do { + if (!($6)) { + $7 = HEAP32[$spec>>2]|0; + $8 = ((($7)) + 60|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + $11 = HEAP32[$spec>>2]|0; + $12 = ((($11)) + 60|0); + $13 = HEAP32[$12>>2]|0; + $14 = $0; + $15 = $1; + $16 = HEAP32[$keyparms>>2]|0; + $17 = (FUNCTION_TABLE_iiii[$13 & 127]($14,$15,$16)|0); + $rc = $17; + break; + } else { + $rc = 69; + break; + } + } + } while(0); + $18 = HEAP32[$keyparms>>2]|0; + __gcry_sexp_release($18); + $19 = $rc; + STACKTOP = sp;return ($19|0); +} +function __gcry_pk_testkey($s_key) { + $s_key = $s_key|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $keyparms = 0, $rc = 0, $spec = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $spec = sp + 4|0; + $keyparms = sp; + $0 = $s_key; + $1 = $0; + $2 = (_spec_from_sexp($1,1,$spec,$keyparms)|0); + $rc = $2; + $3 = $rc; + $4 = ($3|0)!=(0); + do { + if (!($4)) { + $5 = HEAP32[$spec>>2]|0; + $6 = ((($5)) + 44|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = HEAP32[$spec>>2]|0; + $10 = ((($9)) + 44|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$keyparms>>2]|0; + $13 = (FUNCTION_TABLE_ii[$11 & 63]($12)|0); + $rc = $13; + break; + } else { + $rc = 69; + break; + } + } + } while(0); + $14 = HEAP32[$keyparms>>2]|0; + __gcry_sexp_release($14); + $15 = $rc; + STACKTOP = sp;return ($15|0); +} +function __gcry_pk_genkey($r_key,$s_parms) { + $r_key = $r_key|0; + $s_parms = $s_parms|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $l2 = 0, $list = 0, $name = 0, $rc = 0; + var $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $r_key; + $1 = $s_parms; + $spec = 0; + $list = 0; + $l2 = 0; + $name = 0; + $2 = $0; + HEAP32[$2>>2] = 0; + $3 = $1; + $4 = (__gcry_sexp_find_token($3,37981,0)|0); + $list = $4; + $5 = $list; + $6 = ($5|0)!=(0|0); + do { + if ($6) { + $7 = $list; + $8 = (__gcry_sexp_cadr($7)|0); + $l2 = $8; + $9 = $list; + __gcry_sexp_release($9); + $10 = $l2; + $list = $10; + $l2 = 0; + $11 = $list; + $12 = ($11|0)!=(0|0); + if (!($12)) { + $rc = 68; + break; + } + $13 = $list; + $14 = (__gcry_sexp_nth_string($13,0)|0); + $name = $14; + $15 = $name; + $16 = ($15|0)!=(0|0); + if (!($16)) { + $rc = 65; + break; + } + $17 = $name; + $18 = (_spec_from_name_1102($17)|0); + $spec = $18; + $19 = $name; + __gcry_free($19); + $name = 0; + $20 = $spec; + $21 = ($20|0)!=(0|0); + if (!($21)) { + $rc = 4; + break; + } + $22 = $spec; + $23 = ((($22)) + 40|0); + $24 = HEAP32[$23>>2]|0; + $25 = ($24|0)!=(0|0); + if ($25) { + $26 = $spec; + $27 = ((($26)) + 40|0); + $28 = HEAP32[$27>>2]|0; + $29 = $list; + $30 = $0; + $31 = (FUNCTION_TABLE_iii[$28 & 127]($29,$30)|0); + $rc = $31; + break; + } else { + $rc = 69; + break; + } + } else { + $rc = 65; + } + } while(0); + $32 = $list; + __gcry_sexp_release($32); + $33 = $name; + __gcry_free($33); + $34 = $l2; + __gcry_sexp_release($34); + $35 = $rc; + STACKTOP = sp;return ($35|0); +} +function __gcry_pk_init() { + var label = 0, sp = 0; + sp = STACKTOP; + return 0; +} +function __gcry_pk_selftest($algo,$extended,$report) { + $algo = $algo|0; + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ec = 0, $spec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $algo; + $1 = $extended; + $2 = $report; + $3 = $0; + $4 = (_map_algo_1106($3)|0); + $0 = $4; + $5 = $0; + $6 = (_spec_from_algo_1105($5)|0); + $spec = $6; + $7 = $spec; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = $spec; + $10 = ((($9)) + 4|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11 & 1; + $13 = $12&255; + $14 = ($13|0)!=(0); + if (!($14)) { + $15 = $spec; + $16 = ((($15)) + 68|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($17|0)!=(0|0); + if ($18) { + $19 = $spec; + $20 = ((($19)) + 68|0); + $21 = HEAP32[$20>>2]|0; + $22 = $0; + $23 = $1; + $24 = $2; + $25 = (FUNCTION_TABLE_iiii[$21 & 127]($22,$23,$24)|0); + $ec = $25; + $42 = $ec; + $43 = (_gpg_error_1151($42)|0); + STACKTOP = sp;return ($43|0); + } + } + } + $ec = 4; + $26 = $2; + $27 = ($26|0)!=(0|0); + if (!($27)) { + $42 = $ec; + $43 = (_gpg_error_1151($42)|0); + STACKTOP = sp;return ($43|0); + } + $28 = $2; + $29 = $0; + $30 = $spec; + $31 = ($30|0)!=(0|0); + if ($31) { + $32 = $spec; + $33 = ((($32)) + 4|0); + $34 = HEAP8[$33>>0]|0; + $35 = $34 & 1; + $36 = $35&255; + $37 = ($36|0)!=(0); + if ($37) { + label = 8; + } else { + $41 = 38027; + } + } else { + label = 8; + } + if ((label|0) == 8) { + $38 = $spec; + $39 = ($38|0)!=(0|0); + $40 = $39 ? 37988 : 38007; + $41 = $40; + } + FUNCTION_TABLE_viiii[$28 & 63](49859,$29,38049,$41); + $42 = $ec; + $43 = (_gpg_error_1151($42)|0); + STACKTOP = sp;return ($43|0); +} +function _gpg_error_1151($code) { + $code = $code|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $code; + $1 = $0; + $2 = (_gpg_err_make_1152(1,$1)|0); + STACKTOP = sp;return ($2|0); +} +function _gpg_err_make_1152($source,$code) { + $source = $source|0; + $code = $code|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $source; + $1 = $code; + $2 = $1; + $3 = ($2|0)==(0); + if ($3) { + $10 = 0; + STACKTOP = sp;return ($10|0); + } + $4 = $0; + $5 = $4 & 127; + $6 = $5 << 24; + $7 = $1; + $8 = $7 & 65535; + $9 = $6 | $8; + $10 = $9; + STACKTOP = sp;return ($10|0); +} +function _rijndael_setkey($context,$key,$keylen) { + $context = $context|0; + $key = $key|0; + $keylen = $keylen|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $ctx = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $key; + $2 = $keylen; + $3 = $0; + $ctx = $3; + $4 = $ctx; + $5 = $1; + $6 = $2; + $7 = (_do_setkey($4,$5,$6)|0); + STACKTOP = sp;return ($7|0); +} +function _do_setkey($ctx,$key,$keylen) { + $ctx = $ctx|0; + $key = $key|0; + $keylen = $keylen|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $KC = 0, $_vlen = 0, $_vptr = 0, $_vptr_long = 0, $_vset = 0, $_vset_long = 0, $i = 0, $j = 0, $or$cond = 0, $r = 0, $rconpointer = 0, $rounds = 0, $sbox = 0, $t = 0, $tkk = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp + 72|0; + $tkk = sp + 8|0; + $_vset_long = sp; + $1 = $ctx; + $2 = $key; + $3 = $keylen; + $rconpointer = 0; + $4 = (__gcry_fips_mode()|0); + $5 = ($4|0)!=(0); + $6 = HEAP32[17706]|0; + $7 = ($6|0)!=(0); + $or$cond = $5 | $7; + if (!($or$cond)) { + HEAP32[17706] = 1; + $8 = (_selftest()|0); + HEAP32[17707] = $8; + $9 = HEAP32[17707]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + $11 = HEAP32[17707]|0; + HEAP32[$vararg_buffer>>2] = $11; + __gcry_log_error(43729,$vararg_buffer); + } + } + $12 = HEAP32[17707]|0; + $13 = ($12|0)!=(0|0); + if ($13) { + $0 = 50; + $401 = $0; + STACKTOP = sp;return ($401|0); + } + $14 = $3; + $15 = ($14|0)==(16); + do { + if ($15) { + $rounds = 10; + $KC = 4; + } else { + $16 = $3; + $17 = ($16|0)==(24); + if ($17) { + $rounds = 12; + $KC = 6; + break; + } + $18 = $3; + $19 = ($18|0)==(32); + if ($19) { + $rounds = 14; + $KC = 8; + break; + } + $0 = 44; + $401 = $0; + STACKTOP = sp;return ($401|0); + } + } while(0); + $20 = $rounds; + $21 = $1; + $22 = ((($21)) + 480|0); + HEAP32[$22>>2] = $20; + $23 = $1; + $24 = ((($23)) + 484|0); + $25 = HEAP8[$24>>0]|0; + $26 = $25 & -2; + HEAP8[$24>>0] = $26; + $27 = $1; + $28 = ((($27)) + 488|0); + HEAP32[$28>>2] = 68; + $29 = $1; + $30 = ((($29)) + 492|0); + HEAP32[$30>>2] = 69; + $31 = $1; + $32 = ((($31)) + 496|0); + HEAP32[$32>>2] = 70; + $33 = $1; + $34 = ((($33)) + 500|0); + HEAP32[$34>>2] = 71; + $sbox = (4581); + _prefetch_enc(); + $i = 0; + while(1) { + $35 = $i; + $36 = $3; + $37 = ($35>>>0)<($36>>>0); + if (!($37)) { + break; + } + $38 = $i; + $39 = $2; + $40 = (($39) + ($38)|0); + $41 = HEAP8[$40>>0]|0; + $42 = $i; + $43 = $42 & 3; + $44 = $i; + $45 = $44 >> 2; + $46 = (($tkk) + ($45<<2)|0); + $47 = (($46) + ($43)|0); + HEAP8[$47>>0] = $41; + $48 = $i; + $49 = (($48) + 1)|0; + $i = $49; + } + $50 = $KC; + $51 = (($50) - 1)|0; + $j = $51; + while(1) { + $52 = $j; + $53 = ($52|0)>=(0); + if (!($53)) { + break; + } + $54 = $j; + $55 = (($tkk) + ($54<<2)|0); + $56 = HEAP32[$55>>2]|0; + $57 = $j; + $58 = ((($tkk)) + 32|0); + $59 = (($58) + ($57<<2)|0); + HEAP32[$59>>2] = $56; + $60 = $j; + $61 = (($60) + -1)|0; + $j = $61; + } + $r = 0; + $t = 0; + $j = 0; + while(1) { + $62 = $j; + $63 = $KC; + $64 = ($62|0)<($63|0); + if (!($64)) { + break; + } + $65 = $r; + $66 = $rounds; + $67 = (($66) + 1)|0; + $68 = ($65|0)<($67|0); + if (!($68)) { + break; + } + while(1) { + $69 = $j; + $70 = $KC; + $71 = ($69|0)<($70|0); + $72 = $t; + $73 = ($72|0)<(4); + $74 = $71 ? $73 : 0; + if (!($74)) { + break; + } + $75 = $j; + $76 = ((($tkk)) + 32|0); + $77 = (($76) + ($75<<2)|0); + $78 = HEAP32[$77>>2]|0; + $79 = $t; + $80 = $r; + $81 = $1; + $82 = (($81) + ($80<<4)|0); + $83 = (($82) + ($79<<2)|0); + HEAP32[$83>>2] = $78; + $84 = $j; + $85 = (($84) + 1)|0; + $j = $85; + $86 = $t; + $87 = (($86) + 1)|0; + $t = $87; + } + $88 = $t; + $89 = ($88|0)==(4); + if (!($89)) { + continue; + } + $90 = $r; + $91 = (($90) + 1)|0; + $r = $91; + $t = 0; + } + L36: while(1) { + $92 = $r; + $93 = $rounds; + $94 = (($93) + 1)|0; + $95 = ($92|0)<($94|0); + if (!($95)) { + break; + } + $96 = $KC; + $97 = (($96) - 1)|0; + $98 = ((($tkk)) + 32|0); + $99 = (($98) + ($97<<2)|0); + $100 = ((($99)) + 1|0); + $101 = HEAP8[$100>>0]|0; + $102 = $101&255; + $103 = $102<<2; + $104 = $sbox; + $105 = (($104) + ($103)|0); + $106 = HEAP8[$105>>0]|0; + $107 = $106&255; + $108 = ((($tkk)) + 32|0); + $109 = HEAP8[$108>>0]|0; + $110 = $109&255; + $111 = $110 ^ $107; + $112 = $111&255; + HEAP8[$108>>0] = $112; + $113 = $KC; + $114 = (($113) - 1)|0; + $115 = ((($tkk)) + 32|0); + $116 = (($115) + ($114<<2)|0); + $117 = ((($116)) + 2|0); + $118 = HEAP8[$117>>0]|0; + $119 = $118&255; + $120 = $119<<2; + $121 = $sbox; + $122 = (($121) + ($120)|0); + $123 = HEAP8[$122>>0]|0; + $124 = $123&255; + $125 = ((($tkk)) + 32|0); + $126 = ((($125)) + 1|0); + $127 = HEAP8[$126>>0]|0; + $128 = $127&255; + $129 = $128 ^ $124; + $130 = $129&255; + HEAP8[$126>>0] = $130; + $131 = $KC; + $132 = (($131) - 1)|0; + $133 = ((($tkk)) + 32|0); + $134 = (($133) + ($132<<2)|0); + $135 = ((($134)) + 3|0); + $136 = HEAP8[$135>>0]|0; + $137 = $136&255; + $138 = $137<<2; + $139 = $sbox; + $140 = (($139) + ($138)|0); + $141 = HEAP8[$140>>0]|0; + $142 = $141&255; + $143 = ((($tkk)) + 32|0); + $144 = ((($143)) + 2|0); + $145 = HEAP8[$144>>0]|0; + $146 = $145&255; + $147 = $146 ^ $142; + $148 = $147&255; + HEAP8[$144>>0] = $148; + $149 = $KC; + $150 = (($149) - 1)|0; + $151 = ((($tkk)) + 32|0); + $152 = (($151) + ($150<<2)|0); + $153 = HEAP8[$152>>0]|0; + $154 = $153&255; + $155 = $154<<2; + $156 = $sbox; + $157 = (($156) + ($155)|0); + $158 = HEAP8[$157>>0]|0; + $159 = $158&255; + $160 = ((($tkk)) + 32|0); + $161 = ((($160)) + 3|0); + $162 = HEAP8[$161>>0]|0; + $163 = $162&255; + $164 = $163 ^ $159; + $165 = $164&255; + HEAP8[$161>>0] = $165; + $166 = $rconpointer; + $167 = (($166) + 1)|0; + $rconpointer = $167; + $168 = (6884 + ($166<<2)|0); + $169 = HEAP32[$168>>2]|0; + $170 = ((($tkk)) + 32|0); + $171 = HEAP8[$170>>0]|0; + $172 = $171&255; + $173 = $172 ^ $169; + $174 = $173&255; + HEAP8[$170>>0] = $174; + $175 = $KC; + $176 = ($175|0)!=(8); + $j = 1; + L39: do { + if ($176) { + while(1) { + $177 = $j; + $178 = $KC; + $179 = ($177|0)<($178|0); + if (!($179)) { + break L39; + } + $180 = $j; + $181 = (($180) - 1)|0; + $182 = ((($tkk)) + 32|0); + $183 = (($182) + ($181<<2)|0); + $184 = HEAP32[$183>>2]|0; + $185 = $j; + $186 = ((($tkk)) + 32|0); + $187 = (($186) + ($185<<2)|0); + $188 = HEAP32[$187>>2]|0; + $189 = $188 ^ $184; + HEAP32[$187>>2] = $189; + $190 = $j; + $191 = (($190) + 1)|0; + $j = $191; + } + } else { + while(1) { + $192 = $j; + $193 = $KC; + $194 = (($193|0) / 2)&-1; + $195 = ($192|0)<($194|0); + if (!($195)) { + break; + } + $196 = $j; + $197 = (($196) - 1)|0; + $198 = ((($tkk)) + 32|0); + $199 = (($198) + ($197<<2)|0); + $200 = HEAP32[$199>>2]|0; + $201 = $j; + $202 = ((($tkk)) + 32|0); + $203 = (($202) + ($201<<2)|0); + $204 = HEAP32[$203>>2]|0; + $205 = $204 ^ $200; + HEAP32[$203>>2] = $205; + $206 = $j; + $207 = (($206) + 1)|0; + $j = $207; + } + $208 = $KC; + $209 = (($208|0) / 2)&-1; + $210 = (($209) - 1)|0; + $211 = ((($tkk)) + 32|0); + $212 = (($211) + ($210<<2)|0); + $213 = HEAP8[$212>>0]|0; + $214 = $213&255; + $215 = $214<<2; + $216 = $sbox; + $217 = (($216) + ($215)|0); + $218 = HEAP8[$217>>0]|0; + $219 = $218&255; + $220 = $KC; + $221 = (($220|0) / 2)&-1; + $222 = ((($tkk)) + 32|0); + $223 = (($222) + ($221<<2)|0); + $224 = HEAP8[$223>>0]|0; + $225 = $224&255; + $226 = $225 ^ $219; + $227 = $226&255; + HEAP8[$223>>0] = $227; + $228 = $KC; + $229 = (($228|0) / 2)&-1; + $230 = (($229) - 1)|0; + $231 = ((($tkk)) + 32|0); + $232 = (($231) + ($230<<2)|0); + $233 = ((($232)) + 1|0); + $234 = HEAP8[$233>>0]|0; + $235 = $234&255; + $236 = $235<<2; + $237 = $sbox; + $238 = (($237) + ($236)|0); + $239 = HEAP8[$238>>0]|0; + $240 = $239&255; + $241 = $KC; + $242 = (($241|0) / 2)&-1; + $243 = ((($tkk)) + 32|0); + $244 = (($243) + ($242<<2)|0); + $245 = ((($244)) + 1|0); + $246 = HEAP8[$245>>0]|0; + $247 = $246&255; + $248 = $247 ^ $240; + $249 = $248&255; + HEAP8[$245>>0] = $249; + $250 = $KC; + $251 = (($250|0) / 2)&-1; + $252 = (($251) - 1)|0; + $253 = ((($tkk)) + 32|0); + $254 = (($253) + ($252<<2)|0); + $255 = ((($254)) + 2|0); + $256 = HEAP8[$255>>0]|0; + $257 = $256&255; + $258 = $257<<2; + $259 = $sbox; + $260 = (($259) + ($258)|0); + $261 = HEAP8[$260>>0]|0; + $262 = $261&255; + $263 = $KC; + $264 = (($263|0) / 2)&-1; + $265 = ((($tkk)) + 32|0); + $266 = (($265) + ($264<<2)|0); + $267 = ((($266)) + 2|0); + $268 = HEAP8[$267>>0]|0; + $269 = $268&255; + $270 = $269 ^ $262; + $271 = $270&255; + HEAP8[$267>>0] = $271; + $272 = $KC; + $273 = (($272|0) / 2)&-1; + $274 = (($273) - 1)|0; + $275 = ((($tkk)) + 32|0); + $276 = (($275) + ($274<<2)|0); + $277 = ((($276)) + 3|0); + $278 = HEAP8[$277>>0]|0; + $279 = $278&255; + $280 = $279<<2; + $281 = $sbox; + $282 = (($281) + ($280)|0); + $283 = HEAP8[$282>>0]|0; + $284 = $283&255; + $285 = $KC; + $286 = (($285|0) / 2)&-1; + $287 = ((($tkk)) + 32|0); + $288 = (($287) + ($286<<2)|0); + $289 = ((($288)) + 3|0); + $290 = HEAP8[$289>>0]|0; + $291 = $290&255; + $292 = $291 ^ $284; + $293 = $292&255; + HEAP8[$289>>0] = $293; + $294 = $KC; + $295 = (($294|0) / 2)&-1; + $296 = (($295) + 1)|0; + $j = $296; + while(1) { + $297 = $j; + $298 = $KC; + $299 = ($297|0)<($298|0); + if (!($299)) { + break L39; + } + $300 = $j; + $301 = (($300) - 1)|0; + $302 = ((($tkk)) + 32|0); + $303 = (($302) + ($301<<2)|0); + $304 = HEAP32[$303>>2]|0; + $305 = $j; + $306 = ((($tkk)) + 32|0); + $307 = (($306) + ($305<<2)|0); + $308 = HEAP32[$307>>2]|0; + $309 = $308 ^ $304; + HEAP32[$307>>2] = $309; + $310 = $j; + $311 = (($310) + 1)|0; + $j = $311; + } + } + } while(0); + $j = 0; + while(1) { + $312 = $j; + $313 = $KC; + $314 = ($312|0)<($313|0); + if (!($314)) { + continue L36; + } + $315 = $r; + $316 = $rounds; + $317 = (($316) + 1)|0; + $318 = ($315|0)<($317|0); + if (!($318)) { + continue L36; + } + while(1) { + $319 = $j; + $320 = $KC; + $321 = ($319|0)<($320|0); + $322 = $t; + $323 = ($322|0)<(4); + $324 = $321 ? $323 : 0; + if (!($324)) { + break; + } + $325 = $j; + $326 = ((($tkk)) + 32|0); + $327 = (($326) + ($325<<2)|0); + $328 = HEAP32[$327>>2]|0; + $329 = $t; + $330 = $r; + $331 = $1; + $332 = (($331) + ($330<<4)|0); + $333 = (($332) + ($329<<2)|0); + HEAP32[$333>>2] = $328; + $334 = $j; + $335 = (($334) + 1)|0; + $j = $335; + $336 = $t; + $337 = (($336) + 1)|0; + $t = $337; + } + $338 = $t; + $339 = ($338|0)==(4); + if (!($339)) { + continue; + } + $340 = $r; + $341 = (($340) + 1)|0; + $r = $341; + $t = 0; + } + } + $_vptr = $tkk; + $_vlen = 64; + $_vset = 0; + $342 = $_vset; + $343 = $342&255; + $344 = $_vset_long; + $345 = $344; + HEAP32[$345>>2] = $343; + $346 = (($344) + 4)|0; + $347 = $346; + HEAP32[$347>>2] = 0; + while(1) { + $348 = $_vptr; + $349 = $348; + $350 = $349 & 7; + $351 = ($350|0)!=(0); + $352 = $_vlen; + $353 = ($352|0)!=(0); + $354 = $351 ? $353 : 0; + if (!($354)) { + break; + } + $355 = $_vset; + $356 = $_vptr; + HEAP8[$356>>0] = $355; + $357 = $_vptr; + $358 = ((($357)) + 1|0); + $_vptr = $358; + $359 = $_vlen; + $360 = (($359) + -1)|0; + $_vlen = $360; + } + $361 = $_vlen; + $362 = ($361>>>0)<(8); + if (!($362)) { + $363 = $_vset_long; + $364 = $363; + $365 = HEAP32[$364>>2]|0; + $366 = (($363) + 4)|0; + $367 = $366; + $368 = HEAP32[$367>>2]|0; + $369 = (___muldi3(($365|0),($368|0),16843009,16843009)|0); + $370 = tempRet0; + $371 = $_vset_long; + $372 = $371; + HEAP32[$372>>2] = $369; + $373 = (($371) + 4)|0; + $374 = $373; + HEAP32[$374>>2] = $370; + while(1) { + $375 = $_vptr; + $_vptr_long = $375; + $376 = $_vset_long; + $377 = $376; + $378 = HEAP32[$377>>2]|0; + $379 = (($376) + 4)|0; + $380 = $379; + $381 = HEAP32[$380>>2]|0; + $382 = $_vptr_long; + $383 = $382; + $384 = $383; + HEAP32[$384>>2] = $378; + $385 = (($383) + 4)|0; + $386 = $385; + HEAP32[$386>>2] = $381; + $387 = $_vlen; + $388 = (($387) - 8)|0; + $_vlen = $388; + $389 = $_vptr; + $390 = ((($389)) + 8|0); + $_vptr = $390; + $391 = $_vlen; + $392 = ($391>>>0)>=(8); + if (!($392)) { + break; + } + } + } + while(1) { + $393 = $_vlen; + $394 = ($393|0)!=(0); + if (!($394)) { + break; + } + $395 = $_vset; + $396 = $_vptr; + HEAP8[$396>>0] = $395; + $397 = $_vptr; + $398 = ((($397)) + 1|0); + $_vptr = $398; + $399 = $_vlen; + $400 = (($399) + -1)|0; + $_vlen = $400; + } + $0 = 0; + $401 = $0; + STACKTOP = sp;return ($401|0); +} +function _selftest() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $r = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = (_selftest_basic_128()|0); + $r = $1; + $2 = ($1|0)!=(0|0); + do { + if ($2) { + label = 4; + } else { + $3 = (_selftest_basic_192()|0); + $r = $3; + $4 = ($3|0)!=(0|0); + if ($4) { + label = 4; + } else { + $5 = (_selftest_basic_256()|0); + $r = $5; + $6 = ($5|0)!=(0|0); + if ($6) { + label = 4; + } else { + $8 = (_selftest_ctr_128()|0); + $r = $8; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = $r; + $0 = $10; + break; + } + $11 = (_selftest_cbc_128()|0); + $r = $11; + $12 = ($11|0)!=(0|0); + if ($12) { + $13 = $r; + $0 = $13; + break; + } else { + $14 = (_selftest_cfb_128()|0); + $r = $14; + $15 = $r; + $0 = $15; + break; + } + } + } + } + } while(0); + if ((label|0) == 4) { + $7 = $r; + $0 = $7; + } + $16 = $0; + STACKTOP = sp;return ($16|0); +} +function _selftest_basic_128() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $ctx = 0, $scratch = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 528|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $ctx = sp; + $scratch = sp + 512|0; + (_rijndael_setkey($ctx,38176,16)|0); + (_rijndael_encrypt($ctx,$scratch,38192)|0); + $1 = (_memcmp($scratch,38208,16)|0); + $2 = ($1|0)!=(0); + do { + if ($2) { + $0 = 38224; + } else { + (_rijndael_decrypt($ctx,$scratch,$scratch)|0); + $3 = (_memcmp($scratch,38192,16)|0); + $4 = ($3|0)!=(0); + if ($4) { + $0 = 38256; + break; + } else { + $0 = 0; + break; + } + } + } while(0); + $5 = $0; + STACKTOP = sp;return ($5|0); +} +function _rijndael_encrypt($context,$b,$a) { + $context = $context|0; + $b = $b|0; + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ctx = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $b; + $2 = $a; + $3 = $0; + $ctx = $3; + $4 = $ctx; + $5 = ((($4)) + 496|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = $ctx; + $9 = ((($8)) + 496|0); + $10 = HEAP32[$9>>2]|0; + FUNCTION_TABLE_v[$10 & 127](); + } + $11 = $ctx; + $12 = ((($11)) + 488|0); + $13 = HEAP32[$12>>2]|0; + $14 = $ctx; + $15 = $1; + $16 = $2; + $17 = (FUNCTION_TABLE_iiii[$13 & 127]($14,$15,$16)|0); + STACKTOP = sp;return ($17|0); +} +function _rijndael_decrypt($context,$b,$a) { + $context = $context|0; + $b = $b|0; + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ctx = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $b; + $2 = $a; + $3 = $0; + $ctx = $3; + $4 = $ctx; + _check_decryption_preparation($4); + $5 = $ctx; + $6 = ((($5)) + 500|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = $ctx; + $10 = ((($9)) + 500|0); + $11 = HEAP32[$10>>2]|0; + FUNCTION_TABLE_v[$11 & 127](); + } + $12 = $ctx; + $13 = ((($12)) + 492|0); + $14 = HEAP32[$13>>2]|0; + $15 = $ctx; + $16 = $1; + $17 = $2; + $18 = (FUNCTION_TABLE_iiii[$14 & 127]($15,$16,$17)|0); + STACKTOP = sp;return ($18|0); +} +function _check_decryption_preparation($ctx) { + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $1 = $0; + $2 = ((($1)) + 484|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3 & 1; + $5 = $4&255; + $6 = ($5|0)!=(0); + if ($6) { + STACKTOP = sp;return; + } + $7 = $0; + _prepare_decryption($7); + $8 = $0; + $9 = ((($8)) + 484|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10 & -2; + $12 = $11 | 1; + HEAP8[$9>>0] = $12; + STACKTOP = sp;return; +} +function _prepare_decryption($ctx) { + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $r = 0, $sbox = 0, $wi = 0, $wo = 0, $wt = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $sbox = (4581); + _prefetch_enc(); + _prefetch_dec(); + $1 = $0; + $2 = HEAP32[$1>>2]|0; + $3 = $0; + $4 = ((($3)) + 240|0); + HEAP32[$4>>2] = $2; + $5 = $0; + $6 = ((($5)) + 4|0); + $7 = HEAP32[$6>>2]|0; + $8 = $0; + $9 = ((($8)) + 240|0); + $10 = ((($9)) + 4|0); + HEAP32[$10>>2] = $7; + $11 = $0; + $12 = ((($11)) + 8|0); + $13 = HEAP32[$12>>2]|0; + $14 = $0; + $15 = ((($14)) + 240|0); + $16 = ((($15)) + 8|0); + HEAP32[$16>>2] = $13; + $17 = $0; + $18 = ((($17)) + 12|0); + $19 = HEAP32[$18>>2]|0; + $20 = $0; + $21 = ((($20)) + 240|0); + $22 = ((($21)) + 12|0); + HEAP32[$22>>2] = $19; + $r = 1; + while(1) { + $23 = $r; + $24 = $0; + $25 = ((($24)) + 480|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($23|0)<($26|0); + $28 = $r; + $29 = $0; + $30 = (($29) + ($28<<4)|0); + if (!($27)) { + break; + } + $wi = $30; + $31 = $r; + $32 = $0; + $33 = ((($32)) + 240|0); + $34 = (($33) + ($31<<4)|0); + $wo = $34; + $35 = $wi; + $36 = HEAP32[$35>>2]|0; + $wt = $36; + $37 = $wt; + $38 = $37 >>> 0; + $39 = $38&255; + $40 = $39&255; + $41 = $40<<2; + $42 = $sbox; + $43 = (($42) + ($41)|0); + $44 = HEAP8[$43>>0]|0; + $45 = $44&255; + $46 = (5604 + ($45<<2)|0); + $47 = HEAP32[$46>>2]|0; + $48 = (_rol($47,0)|0); + $49 = $wt; + $50 = $49 >>> 8; + $51 = $50&255; + $52 = $51&255; + $53 = $52<<2; + $54 = $sbox; + $55 = (($54) + ($53)|0); + $56 = HEAP8[$55>>0]|0; + $57 = $56&255; + $58 = (5604 + ($57<<2)|0); + $59 = HEAP32[$58>>2]|0; + $60 = (_rol($59,8)|0); + $61 = $48 ^ $60; + $62 = $wt; + $63 = $62 >>> 16; + $64 = $63&255; + $65 = $64&255; + $66 = $65<<2; + $67 = $sbox; + $68 = (($67) + ($66)|0); + $69 = HEAP8[$68>>0]|0; + $70 = $69&255; + $71 = (5604 + ($70<<2)|0); + $72 = HEAP32[$71>>2]|0; + $73 = (_rol($72,16)|0); + $74 = $61 ^ $73; + $75 = $wt; + $76 = $75 >>> 24; + $77 = $76&255; + $78 = $77&255; + $79 = $78<<2; + $80 = $sbox; + $81 = (($80) + ($79)|0); + $82 = HEAP8[$81>>0]|0; + $83 = $82&255; + $84 = (5604 + ($83<<2)|0); + $85 = HEAP32[$84>>2]|0; + $86 = (_rol($85,24)|0); + $87 = $74 ^ $86; + $88 = $wo; + HEAP32[$88>>2] = $87; + $89 = $wi; + $90 = ((($89)) + 4|0); + $91 = HEAP32[$90>>2]|0; + $wt = $91; + $92 = $wt; + $93 = $92 >>> 0; + $94 = $93&255; + $95 = $94&255; + $96 = $95<<2; + $97 = $sbox; + $98 = (($97) + ($96)|0); + $99 = HEAP8[$98>>0]|0; + $100 = $99&255; + $101 = (5604 + ($100<<2)|0); + $102 = HEAP32[$101>>2]|0; + $103 = (_rol($102,0)|0); + $104 = $wt; + $105 = $104 >>> 8; + $106 = $105&255; + $107 = $106&255; + $108 = $107<<2; + $109 = $sbox; + $110 = (($109) + ($108)|0); + $111 = HEAP8[$110>>0]|0; + $112 = $111&255; + $113 = (5604 + ($112<<2)|0); + $114 = HEAP32[$113>>2]|0; + $115 = (_rol($114,8)|0); + $116 = $103 ^ $115; + $117 = $wt; + $118 = $117 >>> 16; + $119 = $118&255; + $120 = $119&255; + $121 = $120<<2; + $122 = $sbox; + $123 = (($122) + ($121)|0); + $124 = HEAP8[$123>>0]|0; + $125 = $124&255; + $126 = (5604 + ($125<<2)|0); + $127 = HEAP32[$126>>2]|0; + $128 = (_rol($127,16)|0); + $129 = $116 ^ $128; + $130 = $wt; + $131 = $130 >>> 24; + $132 = $131&255; + $133 = $132&255; + $134 = $133<<2; + $135 = $sbox; + $136 = (($135) + ($134)|0); + $137 = HEAP8[$136>>0]|0; + $138 = $137&255; + $139 = (5604 + ($138<<2)|0); + $140 = HEAP32[$139>>2]|0; + $141 = (_rol($140,24)|0); + $142 = $129 ^ $141; + $143 = $wo; + $144 = ((($143)) + 4|0); + HEAP32[$144>>2] = $142; + $145 = $wi; + $146 = ((($145)) + 8|0); + $147 = HEAP32[$146>>2]|0; + $wt = $147; + $148 = $wt; + $149 = $148 >>> 0; + $150 = $149&255; + $151 = $150&255; + $152 = $151<<2; + $153 = $sbox; + $154 = (($153) + ($152)|0); + $155 = HEAP8[$154>>0]|0; + $156 = $155&255; + $157 = (5604 + ($156<<2)|0); + $158 = HEAP32[$157>>2]|0; + $159 = (_rol($158,0)|0); + $160 = $wt; + $161 = $160 >>> 8; + $162 = $161&255; + $163 = $162&255; + $164 = $163<<2; + $165 = $sbox; + $166 = (($165) + ($164)|0); + $167 = HEAP8[$166>>0]|0; + $168 = $167&255; + $169 = (5604 + ($168<<2)|0); + $170 = HEAP32[$169>>2]|0; + $171 = (_rol($170,8)|0); + $172 = $159 ^ $171; + $173 = $wt; + $174 = $173 >>> 16; + $175 = $174&255; + $176 = $175&255; + $177 = $176<<2; + $178 = $sbox; + $179 = (($178) + ($177)|0); + $180 = HEAP8[$179>>0]|0; + $181 = $180&255; + $182 = (5604 + ($181<<2)|0); + $183 = HEAP32[$182>>2]|0; + $184 = (_rol($183,16)|0); + $185 = $172 ^ $184; + $186 = $wt; + $187 = $186 >>> 24; + $188 = $187&255; + $189 = $188&255; + $190 = $189<<2; + $191 = $sbox; + $192 = (($191) + ($190)|0); + $193 = HEAP8[$192>>0]|0; + $194 = $193&255; + $195 = (5604 + ($194<<2)|0); + $196 = HEAP32[$195>>2]|0; + $197 = (_rol($196,24)|0); + $198 = $185 ^ $197; + $199 = $wo; + $200 = ((($199)) + 8|0); + HEAP32[$200>>2] = $198; + $201 = $wi; + $202 = ((($201)) + 12|0); + $203 = HEAP32[$202>>2]|0; + $wt = $203; + $204 = $wt; + $205 = $204 >>> 0; + $206 = $205&255; + $207 = $206&255; + $208 = $207<<2; + $209 = $sbox; + $210 = (($209) + ($208)|0); + $211 = HEAP8[$210>>0]|0; + $212 = $211&255; + $213 = (5604 + ($212<<2)|0); + $214 = HEAP32[$213>>2]|0; + $215 = (_rol($214,0)|0); + $216 = $wt; + $217 = $216 >>> 8; + $218 = $217&255; + $219 = $218&255; + $220 = $219<<2; + $221 = $sbox; + $222 = (($221) + ($220)|0); + $223 = HEAP8[$222>>0]|0; + $224 = $223&255; + $225 = (5604 + ($224<<2)|0); + $226 = HEAP32[$225>>2]|0; + $227 = (_rol($226,8)|0); + $228 = $215 ^ $227; + $229 = $wt; + $230 = $229 >>> 16; + $231 = $230&255; + $232 = $231&255; + $233 = $232<<2; + $234 = $sbox; + $235 = (($234) + ($233)|0); + $236 = HEAP8[$235>>0]|0; + $237 = $236&255; + $238 = (5604 + ($237<<2)|0); + $239 = HEAP32[$238>>2]|0; + $240 = (_rol($239,16)|0); + $241 = $228 ^ $240; + $242 = $wt; + $243 = $242 >>> 24; + $244 = $243&255; + $245 = $244&255; + $246 = $245<<2; + $247 = $sbox; + $248 = (($247) + ($246)|0); + $249 = HEAP8[$248>>0]|0; + $250 = $249&255; + $251 = (5604 + ($250<<2)|0); + $252 = HEAP32[$251>>2]|0; + $253 = (_rol($252,24)|0); + $254 = $241 ^ $253; + $255 = $wo; + $256 = ((($255)) + 12|0); + HEAP32[$256>>2] = $254; + $257 = $r; + $258 = (($257) + 1)|0; + $r = $258; + } + $259 = HEAP32[$30>>2]|0; + $260 = $r; + $261 = $0; + $262 = ((($261)) + 240|0); + $263 = (($262) + ($260<<4)|0); + HEAP32[$263>>2] = $259; + $264 = $r; + $265 = $0; + $266 = (($265) + ($264<<4)|0); + $267 = ((($266)) + 4|0); + $268 = HEAP32[$267>>2]|0; + $269 = $r; + $270 = $0; + $271 = ((($270)) + 240|0); + $272 = (($271) + ($269<<4)|0); + $273 = ((($272)) + 4|0); + HEAP32[$273>>2] = $268; + $274 = $r; + $275 = $0; + $276 = (($275) + ($274<<4)|0); + $277 = ((($276)) + 8|0); + $278 = HEAP32[$277>>2]|0; + $279 = $r; + $280 = $0; + $281 = ((($280)) + 240|0); + $282 = (($281) + ($279<<4)|0); + $283 = ((($282)) + 8|0); + HEAP32[$283>>2] = $278; + $284 = $r; + $285 = $0; + $286 = (($285) + ($284<<4)|0); + $287 = ((($286)) + 12|0); + $288 = HEAP32[$287>>2]|0; + $289 = $r; + $290 = $0; + $291 = ((($290)) + 240|0); + $292 = (($291) + ($289<<4)|0); + $293 = ((($292)) + 12|0); + HEAP32[$293>>2] = $288; + STACKTOP = sp;return; +} +function _prefetch_enc() { + var label = 0, sp = 0; + sp = STACKTOP; + _prefetch_table(4580,1024); + return; +} +function _prefetch_table($tab,$len) { + $tab = $tab|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $tab; + $1 = $len; + $i = 0; + while(1) { + $2 = $i; + $3 = $1; + $4 = ($2>>>0)<($3>>>0); + if (!($4)) { + break; + } + $5 = $i; + $6 = (($5) + 0)|0; + $7 = $0; + $8 = (($7) + ($6)|0); + $9 = HEAP8[$8>>0]|0; + $10 = $i; + $11 = (($10) + 32)|0; + $12 = $0; + $13 = (($12) + ($11)|0); + $14 = HEAP8[$13>>0]|0; + $15 = $i; + $16 = (($15) + 64)|0; + $17 = $0; + $18 = (($17) + ($16)|0); + $19 = HEAP8[$18>>0]|0; + $20 = $i; + $21 = (($20) + 96)|0; + $22 = $0; + $23 = (($22) + ($21)|0); + $24 = HEAP8[$23>>0]|0; + $25 = $i; + $26 = (($25) + 128)|0; + $27 = $0; + $28 = (($27) + ($26)|0); + $29 = HEAP8[$28>>0]|0; + $30 = $i; + $31 = (($30) + 160)|0; + $32 = $0; + $33 = (($32) + ($31)|0); + $34 = HEAP8[$33>>0]|0; + $35 = $i; + $36 = (($35) + 192)|0; + $37 = $0; + $38 = (($37) + ($36)|0); + $39 = HEAP8[$38>>0]|0; + $40 = $i; + $41 = (($40) + 224)|0; + $42 = $0; + $43 = (($42) + ($41)|0); + $44 = HEAP8[$43>>0]|0; + $45 = $i; + $46 = (($45) + 256)|0; + $i = $46; + } + $47 = $1; + $48 = (($47) - 1)|0; + $49 = $0; + $50 = (($49) + ($48)|0); + $51 = HEAP8[$50>>0]|0; + STACKTOP = sp;return; +} +function _prefetch_dec() { + var label = 0, sp = 0; + sp = STACKTOP; + _prefetch_table(5604,1280); + return; +} +function _rol($x,$n) { + $x = $x|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $x; + $1 = $n; + $2 = $0; + $3 = $1; + $4 = $3 & 31; + $5 = $2 << $4; + $6 = $0; + $7 = $1; + $8 = (32 - ($7))|0; + $9 = $8 & 31; + $10 = $6 >>> $9; + $11 = $5 | $10; + STACKTOP = sp;return ($11|0); +} +function _selftest_basic_192() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $ctx = 0, $scratch = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 528|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $ctx = sp; + $scratch = sp + 512|0; + (_rijndael_setkey($ctx,38288,24)|0); + (_rijndael_encrypt($ctx,$scratch,38312)|0); + $1 = (_memcmp($scratch,38328,16)|0); + $2 = ($1|0)!=(0); + do { + if ($2) { + $0 = 38344; + } else { + (_rijndael_decrypt($ctx,$scratch,$scratch)|0); + $3 = (_memcmp($scratch,38312,16)|0); + $4 = ($3|0)!=(0); + if ($4) { + $0 = 38376; + break; + } else { + $0 = 0; + break; + } + } + } while(0); + $5 = $0; + STACKTOP = sp;return ($5|0); +} +function _selftest_basic_256() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $ctx = 0, $scratch = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 528|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $ctx = sp; + $scratch = sp + 512|0; + (_rijndael_setkey($ctx,38408,32)|0); + (_rijndael_encrypt($ctx,$scratch,38440)|0); + $1 = (_memcmp($scratch,38456,16)|0); + $2 = ($1|0)!=(0); + do { + if ($2) { + $0 = 38472; + } else { + (_rijndael_decrypt($ctx,$scratch,$scratch)|0); + $3 = (_memcmp($scratch,38440,16)|0); + $4 = ($3|0)!=(0); + if ($4) { + $0 = 38504; + break; + } else { + $0 = 0; + break; + } + } + } while(0); + $5 = $0; + STACKTOP = sp;return ($5|0); +} +function _selftest_ctr_128() { + var $0 = 0, $blocksize = 0, $context_size = 0, $nblocks = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $nblocks = 9; + $blocksize = 16; + $context_size = 504; + $0 = (__gcry_selftest_helper_ctr(38056,1,2,61,9,16,504)|0); + STACKTOP = sp;return ($0|0); +} +function __gcry_aes_ctr_enc($context,$ctr,$outbuf_arg,$inbuf_arg,$nblocks) { + $context = $context|0; + $ctr = $ctr|0; + $outbuf_arg = $outbuf_arg|0; + $inbuf_arg = $inbuf_arg|0; + $nblocks = $nblocks|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0; + var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; + var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $_vlen = 0, $_vptr = 0, $_vptr_long = 0, $_vset = 0, $_vset_long = 0, $burn_depth = 0, $ctx = 0, $encrypt_fn = 0, $i = 0; + var $inbuf = 0, $outbuf = 0, $tmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $tmp = sp; + $_vset_long = sp + 16|0; + $0 = $context; + $1 = $ctr; + $2 = $outbuf_arg; + $3 = $inbuf_arg; + $4 = $nblocks; + $5 = $0; + $ctx = $5; + $6 = $2; + $outbuf = $6; + $7 = $3; + $inbuf = $7; + $burn_depth = 0; + $8 = $ctx; + $9 = ((($8)) + 496|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = $ctx; + $13 = ((($12)) + 496|0); + $14 = HEAP32[$13>>2]|0; + FUNCTION_TABLE_v[$14 & 127](); + } + $15 = $ctx; + $16 = ((($15)) + 488|0); + $17 = HEAP32[$16>>2]|0; + $encrypt_fn = $17; + while(1) { + $18 = $4; + $19 = ($18|0)!=(0); + if (!($19)) { + break; + } + $20 = $encrypt_fn; + $21 = $ctx; + $22 = $1; + $23 = (FUNCTION_TABLE_iiii[$20 & 127]($21,$tmp,$22)|0); + $burn_depth = $23; + $24 = $outbuf; + $25 = $inbuf; + _buf_xor($24,$tmp,$25,16); + $26 = $outbuf; + $27 = ((($26)) + 16|0); + $outbuf = $27; + $28 = $inbuf; + $29 = ((($28)) + 16|0); + $inbuf = $29; + $i = 16; + while(1) { + $30 = $i; + $31 = ($30|0)>(0); + if (!($31)) { + break; + } + $32 = $i; + $33 = (($32) - 1)|0; + $34 = $1; + $35 = (($34) + ($33)|0); + $36 = HEAP8[$35>>0]|0; + $37 = (($36) + 1)<<24>>24; + HEAP8[$35>>0] = $37; + $38 = $i; + $39 = (($38) - 1)|0; + $40 = $1; + $41 = (($40) + ($39)|0); + $42 = HEAP8[$41>>0]|0; + $43 = ($42<<24>>24)!=(0); + if ($43) { + break; + } + $44 = $i; + $45 = (($44) + -1)|0; + $i = $45; + } + $46 = $4; + $47 = (($46) + -1)|0; + $4 = $47; + } + $_vptr = $tmp; + $_vlen = 16; + $_vset = 0; + $48 = $_vset; + $49 = $48&255; + $50 = $_vset_long; + $51 = $50; + HEAP32[$51>>2] = $49; + $52 = (($50) + 4)|0; + $53 = $52; + HEAP32[$53>>2] = 0; + while(1) { + $54 = $_vptr; + $55 = $54; + $56 = $55 & 7; + $57 = ($56|0)!=(0); + $58 = $_vlen; + $59 = ($58|0)!=(0); + $60 = $57 ? $59 : 0; + if (!($60)) { + break; + } + $61 = $_vset; + $62 = $_vptr; + HEAP8[$62>>0] = $61; + $63 = $_vptr; + $64 = ((($63)) + 1|0); + $_vptr = $64; + $65 = $_vlen; + $66 = (($65) + -1)|0; + $_vlen = $66; + } + $67 = $_vlen; + $68 = ($67>>>0)<(8); + if (!($68)) { + $69 = $_vset_long; + $70 = $69; + $71 = HEAP32[$70>>2]|0; + $72 = (($69) + 4)|0; + $73 = $72; + $74 = HEAP32[$73>>2]|0; + $75 = (___muldi3(($71|0),($74|0),16843009,16843009)|0); + $76 = tempRet0; + $77 = $_vset_long; + $78 = $77; + HEAP32[$78>>2] = $75; + $79 = (($77) + 4)|0; + $80 = $79; + HEAP32[$80>>2] = $76; + while(1) { + $81 = $_vptr; + $_vptr_long = $81; + $82 = $_vset_long; + $83 = $82; + $84 = HEAP32[$83>>2]|0; + $85 = (($82) + 4)|0; + $86 = $85; + $87 = HEAP32[$86>>2]|0; + $88 = $_vptr_long; + $89 = $88; + $90 = $89; + HEAP32[$90>>2] = $84; + $91 = (($89) + 4)|0; + $92 = $91; + HEAP32[$92>>2] = $87; + $93 = $_vlen; + $94 = (($93) - 8)|0; + $_vlen = $94; + $95 = $_vptr; + $96 = ((($95)) + 8|0); + $_vptr = $96; + $97 = $_vlen; + $98 = ($97>>>0)>=(8); + if (!($98)) { + break; + } + } + } + while(1) { + $99 = $_vlen; + $100 = ($99|0)!=(0); + if (!($100)) { + break; + } + $101 = $_vset; + $102 = $_vptr; + HEAP8[$102>>0] = $101; + $103 = $_vptr; + $104 = ((($103)) + 1|0); + $_vptr = $104; + $105 = $_vlen; + $106 = (($105) + -1)|0; + $_vlen = $106; + } + $107 = $burn_depth; + $108 = ($107|0)!=(0); + if (!($108)) { + STACKTOP = sp;return; + } + $109 = $burn_depth; + $110 = (($109) + 16)|0; + ___gcry_burn_stack($110); + ___gcry_burn_stack_dummy(); + STACKTOP = sp;return; +} +function _buf_xor($_dst,$_src1,$_src2,$len) { + $_dst = $_dst|0; + $_src1 = $_src1|0; + $_src2 = $_src2|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst = 0, $ldst = 0, $longmask = 0, $lsrc1 = 0, $lsrc2 = 0, $src1 = 0, $src2 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst; + $1 = $_src1; + $2 = $_src2; + $3 = $len; + $4 = $0; + $dst = $4; + $5 = $1; + $src1 = $5; + $6 = $2; + $src2 = $6; + $longmask = 3; + $7 = $dst; + $8 = $7; + $9 = $src1; + $10 = $9; + $11 = $8 | $10; + $12 = $src2; + $13 = $12; + $14 = $11 | $13; + $15 = $14 & 3; + $16 = ($15|0)!=(0); + if (!($16)) { + $17 = $dst; + $ldst = $17; + $18 = $src1; + $lsrc1 = $18; + $19 = $src2; + $lsrc2 = $19; + while(1) { + $20 = $3; + $21 = ($20>>>0)>=(4); + if (!($21)) { + break; + } + $22 = $lsrc1; + $23 = ((($22)) + 4|0); + $lsrc1 = $23; + $24 = HEAP32[$22>>2]|0; + $25 = $lsrc2; + $26 = ((($25)) + 4|0); + $lsrc2 = $26; + $27 = HEAP32[$25>>2]|0; + $28 = $24 ^ $27; + $29 = $ldst; + $30 = ((($29)) + 4|0); + $ldst = $30; + HEAP32[$29>>2] = $28; + $31 = $3; + $32 = (($31) - 4)|0; + $3 = $32; + } + $33 = $ldst; + $dst = $33; + $34 = $lsrc1; + $src1 = $34; + $35 = $lsrc2; + $src2 = $35; + } + while(1) { + $36 = $3; + $37 = ($36|0)!=(0); + if (!($37)) { + break; + } + $38 = $src1; + $39 = ((($38)) + 1|0); + $src1 = $39; + $40 = HEAP8[$38>>0]|0; + $41 = $40&255; + $42 = $src2; + $43 = ((($42)) + 1|0); + $src2 = $43; + $44 = HEAP8[$42>>0]|0; + $45 = $44&255; + $46 = $41 ^ $45; + $47 = $46&255; + $48 = $dst; + $49 = ((($48)) + 1|0); + $dst = $49; + HEAP8[$48>>0] = $47; + $50 = $3; + $51 = (($50) + -1)|0; + $3 = $51; + } + STACKTOP = sp;return; +} +function _selftest_cbc_128() { + var $0 = 0, $blocksize = 0, $context_size = 0, $nblocks = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $nblocks = 10; + $blocksize = 16; + $context_size = 504; + $0 = (__gcry_selftest_helper_cbc(38056,1,2,60,10,16,504)|0); + STACKTOP = sp;return ($0|0); +} +function __gcry_aes_cbc_dec($context,$iv,$outbuf_arg,$inbuf_arg,$nblocks) { + $context = $context|0; + $iv = $iv|0; + $outbuf_arg = $outbuf_arg|0; + $inbuf_arg = $inbuf_arg|0; + $nblocks = $nblocks|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $_vlen = 0, $_vptr = 0, $_vptr_long = 0; + var $_vset = 0, $_vset_long = 0, $burn_depth = 0, $ctx = 0, $decrypt_fn = 0, $inbuf = 0, $outbuf = 0, $savebuf = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $savebuf = sp; + $_vset_long = sp + 16|0; + $0 = $context; + $1 = $iv; + $2 = $outbuf_arg; + $3 = $inbuf_arg; + $4 = $nblocks; + $5 = $0; + $ctx = $5; + $6 = $2; + $outbuf = $6; + $7 = $3; + $inbuf = $7; + $burn_depth = 0; + $8 = $ctx; + _check_decryption_preparation($8); + $9 = $ctx; + $10 = ((($9)) + 500|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)!=(0|0); + if ($12) { + $13 = $ctx; + $14 = ((($13)) + 500|0); + $15 = HEAP32[$14>>2]|0; + FUNCTION_TABLE_v[$15 & 127](); + } + $16 = $ctx; + $17 = ((($16)) + 492|0); + $18 = HEAP32[$17>>2]|0; + $decrypt_fn = $18; + while(1) { + $19 = $4; + $20 = ($19|0)!=(0); + if (!($20)) { + break; + } + $21 = $decrypt_fn; + $22 = $ctx; + $23 = $inbuf; + $24 = (FUNCTION_TABLE_iiii[$21 & 127]($22,$savebuf,$23)|0); + $burn_depth = $24; + $25 = $outbuf; + $26 = $1; + $27 = $inbuf; + _buf_xor_n_copy_2($25,$savebuf,$26,$27,16); + $28 = $inbuf; + $29 = ((($28)) + 16|0); + $inbuf = $29; + $30 = $outbuf; + $31 = ((($30)) + 16|0); + $outbuf = $31; + $32 = $4; + $33 = (($32) + -1)|0; + $4 = $33; + } + $_vptr = $savebuf; + $_vlen = 16; + $_vset = 0; + $34 = $_vset; + $35 = $34&255; + $36 = $_vset_long; + $37 = $36; + HEAP32[$37>>2] = $35; + $38 = (($36) + 4)|0; + $39 = $38; + HEAP32[$39>>2] = 0; + while(1) { + $40 = $_vptr; + $41 = $40; + $42 = $41 & 7; + $43 = ($42|0)!=(0); + $44 = $_vlen; + $45 = ($44|0)!=(0); + $46 = $43 ? $45 : 0; + if (!($46)) { + break; + } + $47 = $_vset; + $48 = $_vptr; + HEAP8[$48>>0] = $47; + $49 = $_vptr; + $50 = ((($49)) + 1|0); + $_vptr = $50; + $51 = $_vlen; + $52 = (($51) + -1)|0; + $_vlen = $52; + } + $53 = $_vlen; + $54 = ($53>>>0)<(8); + if (!($54)) { + $55 = $_vset_long; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + $58 = (($55) + 4)|0; + $59 = $58; + $60 = HEAP32[$59>>2]|0; + $61 = (___muldi3(($57|0),($60|0),16843009,16843009)|0); + $62 = tempRet0; + $63 = $_vset_long; + $64 = $63; + HEAP32[$64>>2] = $61; + $65 = (($63) + 4)|0; + $66 = $65; + HEAP32[$66>>2] = $62; + while(1) { + $67 = $_vptr; + $_vptr_long = $67; + $68 = $_vset_long; + $69 = $68; + $70 = HEAP32[$69>>2]|0; + $71 = (($68) + 4)|0; + $72 = $71; + $73 = HEAP32[$72>>2]|0; + $74 = $_vptr_long; + $75 = $74; + $76 = $75; + HEAP32[$76>>2] = $70; + $77 = (($75) + 4)|0; + $78 = $77; + HEAP32[$78>>2] = $73; + $79 = $_vlen; + $80 = (($79) - 8)|0; + $_vlen = $80; + $81 = $_vptr; + $82 = ((($81)) + 8|0); + $_vptr = $82; + $83 = $_vlen; + $84 = ($83>>>0)>=(8); + if (!($84)) { + break; + } + } + } + while(1) { + $85 = $_vlen; + $86 = ($85|0)!=(0); + if (!($86)) { + break; + } + $87 = $_vset; + $88 = $_vptr; + HEAP8[$88>>0] = $87; + $89 = $_vptr; + $90 = ((($89)) + 1|0); + $_vptr = $90; + $91 = $_vlen; + $92 = (($91) + -1)|0; + $_vlen = $92; + } + $93 = $burn_depth; + $94 = ($93|0)!=(0); + if (!($94)) { + STACKTOP = sp;return; + } + $95 = $burn_depth; + $96 = (($95) + 16)|0; + ___gcry_burn_stack($96); + ___gcry_burn_stack_dummy(); + STACKTOP = sp;return; +} +function _buf_xor_n_copy_2($_dst_xor,$_src_xor,$_srcdst_cpy,$_src_cpy,$len) { + $_dst_xor = $_dst_xor|0; + $_src_xor = $_src_xor|0; + $_srcdst_cpy = $_srcdst_cpy|0; + $_src_cpy = $_src_cpy|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 = 0, $dst_xor = 0, $ldst_xor = 0, $longmask = 0, $lsrc_cpy = 0, $lsrc_xor = 0, $lsrcdst_cpy = 0, $ltemp = 0, $src_cpy = 0, $src_xor = 0, $srcdst_cpy = 0, $temp = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst_xor; + $1 = $_src_xor; + $2 = $_srcdst_cpy; + $3 = $_src_cpy; + $4 = $len; + $5 = $0; + $dst_xor = $5; + $6 = $2; + $srcdst_cpy = $6; + $7 = $1; + $src_xor = $7; + $8 = $3; + $src_cpy = $8; + $longmask = 3; + $9 = $src_cpy; + $10 = $9; + $11 = $src_xor; + $12 = $11; + $13 = $10 | $12; + $14 = $dst_xor; + $15 = $14; + $16 = $13 | $15; + $17 = $srcdst_cpy; + $18 = $17; + $19 = $16 | $18; + $20 = $19 & 3; + $21 = ($20|0)!=(0); + if (!($21)) { + $22 = $dst_xor; + $ldst_xor = $22; + $23 = $src_xor; + $lsrc_xor = $23; + $24 = $srcdst_cpy; + $lsrcdst_cpy = $24; + $25 = $src_cpy; + $lsrc_cpy = $25; + while(1) { + $26 = $4; + $27 = ($26>>>0)>=(4); + if (!($27)) { + break; + } + $28 = $lsrc_cpy; + $29 = ((($28)) + 4|0); + $lsrc_cpy = $29; + $30 = HEAP32[$28>>2]|0; + $ltemp = $30; + $31 = $lsrcdst_cpy; + $32 = HEAP32[$31>>2]|0; + $33 = $lsrc_xor; + $34 = ((($33)) + 4|0); + $lsrc_xor = $34; + $35 = HEAP32[$33>>2]|0; + $36 = $32 ^ $35; + $37 = $ldst_xor; + $38 = ((($37)) + 4|0); + $ldst_xor = $38; + HEAP32[$37>>2] = $36; + $39 = $ltemp; + $40 = $lsrcdst_cpy; + $41 = ((($40)) + 4|0); + $lsrcdst_cpy = $41; + HEAP32[$40>>2] = $39; + $42 = $4; + $43 = (($42) - 4)|0; + $4 = $43; + } + $44 = $ldst_xor; + $dst_xor = $44; + $45 = $lsrc_xor; + $src_xor = $45; + $46 = $lsrcdst_cpy; + $srcdst_cpy = $46; + $47 = $lsrc_cpy; + $src_cpy = $47; + } + while(1) { + $48 = $4; + $49 = ($48|0)!=(0); + if (!($49)) { + break; + } + $50 = $src_cpy; + $51 = ((($50)) + 1|0); + $src_cpy = $51; + $52 = HEAP8[$50>>0]|0; + $temp = $52; + $53 = $srcdst_cpy; + $54 = HEAP8[$53>>0]|0; + $55 = $54&255; + $56 = $src_xor; + $57 = ((($56)) + 1|0); + $src_xor = $57; + $58 = HEAP8[$56>>0]|0; + $59 = $58&255; + $60 = $55 ^ $59; + $61 = $60&255; + $62 = $dst_xor; + $63 = ((($62)) + 1|0); + $dst_xor = $63; + HEAP8[$62>>0] = $61; + $64 = $temp; + $65 = $srcdst_cpy; + $66 = ((($65)) + 1|0); + $srcdst_cpy = $66; + HEAP8[$65>>0] = $64; + $67 = $4; + $68 = (($67) + -1)|0; + $4 = $68; + } + STACKTOP = sp;return; +} +function _selftest_cfb_128() { + var $0 = 0, $blocksize = 0, $context_size = 0, $nblocks = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $nblocks = 10; + $blocksize = 16; + $context_size = 504; + $0 = (__gcry_selftest_helper_cfb(38056,1,2,58,10,16,504)|0); + STACKTOP = sp;return ($0|0); +} +function __gcry_aes_cfb_dec($context,$iv,$outbuf_arg,$inbuf_arg,$nblocks) { + $context = $context|0; + $iv = $iv|0; + $outbuf_arg = $outbuf_arg|0; + $inbuf_arg = $inbuf_arg|0; + $nblocks = $nblocks|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $burn_depth = 0, $ctx = 0; + var $encrypt_fn = 0, $inbuf = 0, $outbuf = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $iv; + $2 = $outbuf_arg; + $3 = $inbuf_arg; + $4 = $nblocks; + $5 = $0; + $ctx = $5; + $6 = $2; + $outbuf = $6; + $7 = $3; + $inbuf = $7; + $burn_depth = 0; + $8 = $ctx; + $9 = ((($8)) + 496|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = $ctx; + $13 = ((($12)) + 496|0); + $14 = HEAP32[$13>>2]|0; + FUNCTION_TABLE_v[$14 & 127](); + } + $15 = $ctx; + $16 = ((($15)) + 488|0); + $17 = HEAP32[$16>>2]|0; + $encrypt_fn = $17; + while(1) { + $18 = $4; + $19 = ($18|0)!=(0); + if (!($19)) { + break; + } + $20 = $encrypt_fn; + $21 = $ctx; + $22 = $1; + $23 = $1; + $24 = (FUNCTION_TABLE_iiii[$20 & 127]($21,$22,$23)|0); + $burn_depth = $24; + $25 = $outbuf; + $26 = $1; + $27 = $inbuf; + _buf_xor_n_copy($25,$26,$27,16); + $28 = $outbuf; + $29 = ((($28)) + 16|0); + $outbuf = $29; + $30 = $inbuf; + $31 = ((($30)) + 16|0); + $inbuf = $31; + $32 = $4; + $33 = (($32) + -1)|0; + $4 = $33; + } + $34 = $burn_depth; + $35 = ($34|0)!=(0); + if (!($35)) { + STACKTOP = sp;return; + } + $36 = $burn_depth; + $37 = (($36) + 16)|0; + ___gcry_burn_stack($37); + ___gcry_burn_stack_dummy(); + STACKTOP = sp;return; +} +function _buf_xor_n_copy($_dst_xor,$_srcdst_cpy,$_src,$len) { + $_dst_xor = $_dst_xor|0; + $_srcdst_cpy = $_srcdst_cpy|0; + $_src = $_src|0; + $len = $len|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst_xor; + $1 = $_srcdst_cpy; + $2 = $_src; + $3 = $len; + $4 = $0; + $5 = $2; + $6 = $1; + $7 = $2; + $8 = $3; + _buf_xor_n_copy_2($4,$5,$6,$7,$8); + STACKTOP = sp;return; +} +function _do_encrypt($ctx,$bx,$ax) { + $ctx = $ctx|0; + $bx = $bx|0; + $ax = $ax|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $1 = $bx; + $2 = $ax; + $3 = $0; + $4 = $1; + $5 = $2; + $6 = (_do_encrypt_fn($3,$4,$5)|0); + STACKTOP = sp;return ($6|0); +} +function _do_encrypt_fn($ctx,$b,$a) { + $ctx = $ctx|0; + $b = $b|0; + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; + var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; + var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; + var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; + var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; + var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; + var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; + var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; + var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; + var $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0; + var $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0; + var $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0; + var $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0; + var $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0; + var $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0; + var $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0; + var $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0; + var $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0; + var $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0; + var $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0; + var $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $r = 0, $rounds = 0; + var $sa = 0, $sb = 0, $sbox = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $sa = sp + 16|0; + $sb = sp; + $0 = $ctx; + $1 = $b; + $2 = $a; + $sbox = (4581); + $3 = $0; + $4 = ((($3)) + 480|0); + $5 = HEAP32[$4>>2]|0; + $rounds = $5; + $6 = $2; + $7 = (_buf_get_le32($6)|0); + HEAP32[$sb>>2] = $7; + $8 = $2; + $9 = ((($8)) + 4|0); + $10 = (_buf_get_le32($9)|0); + $11 = ((($sb)) + 4|0); + HEAP32[$11>>2] = $10; + $12 = $2; + $13 = ((($12)) + 8|0); + $14 = (_buf_get_le32($13)|0); + $15 = ((($sb)) + 8|0); + HEAP32[$15>>2] = $14; + $16 = $2; + $17 = ((($16)) + 12|0); + $18 = (_buf_get_le32($17)|0); + $19 = ((($sb)) + 12|0); + HEAP32[$19>>2] = $18; + $20 = HEAP32[$sb>>2]|0; + $21 = $0; + $22 = HEAP32[$21>>2]|0; + $23 = $20 ^ $22; + HEAP32[$sa>>2] = $23; + $24 = ((($sb)) + 4|0); + $25 = HEAP32[$24>>2]|0; + $26 = $0; + $27 = ((($26)) + 4|0); + $28 = HEAP32[$27>>2]|0; + $29 = $25 ^ $28; + $30 = ((($sa)) + 4|0); + HEAP32[$30>>2] = $29; + $31 = ((($sb)) + 8|0); + $32 = HEAP32[$31>>2]|0; + $33 = $0; + $34 = ((($33)) + 8|0); + $35 = HEAP32[$34>>2]|0; + $36 = $32 ^ $35; + $37 = ((($sa)) + 8|0); + HEAP32[$37>>2] = $36; + $38 = ((($sb)) + 12|0); + $39 = HEAP32[$38>>2]|0; + $40 = $0; + $41 = ((($40)) + 12|0); + $42 = HEAP32[$41>>2]|0; + $43 = $39 ^ $42; + $44 = ((($sa)) + 12|0); + HEAP32[$44>>2] = $43; + $45 = HEAP32[$sa>>2]|0; + $46 = $45 >>> 0; + $47 = $46&255; + $48 = $47&255; + $49 = (4580 + ($48<<2)|0); + $50 = HEAP32[$49>>2]|0; + $51 = (_rol($50,0)|0); + HEAP32[$sb>>2] = $51; + $52 = HEAP32[$sa>>2]|0; + $53 = $52 >>> 8; + $54 = $53&255; + $55 = $54&255; + $56 = (4580 + ($55<<2)|0); + $57 = HEAP32[$56>>2]|0; + $58 = (_rol($57,8)|0); + $59 = ((($sb)) + 12|0); + HEAP32[$59>>2] = $58; + $60 = HEAP32[$sa>>2]|0; + $61 = $60 >>> 16; + $62 = $61&255; + $63 = $62&255; + $64 = (4580 + ($63<<2)|0); + $65 = HEAP32[$64>>2]|0; + $66 = (_rol($65,16)|0); + $67 = ((($sb)) + 8|0); + HEAP32[$67>>2] = $66; + $68 = HEAP32[$sa>>2]|0; + $69 = $68 >>> 24; + $70 = $69&255; + $71 = $70&255; + $72 = (4580 + ($71<<2)|0); + $73 = HEAP32[$72>>2]|0; + $74 = (_rol($73,24)|0); + $75 = ((($sb)) + 4|0); + HEAP32[$75>>2] = $74; + $76 = $0; + $77 = ((($76)) + 16|0); + $78 = HEAP32[$77>>2]|0; + $79 = HEAP32[$sb>>2]|0; + $80 = $78 ^ $79; + HEAP32[$sa>>2] = $80; + $81 = ((($sa)) + 4|0); + $82 = HEAP32[$81>>2]|0; + $83 = $82 >>> 0; + $84 = $83&255; + $85 = $84&255; + $86 = (4580 + ($85<<2)|0); + $87 = HEAP32[$86>>2]|0; + $88 = (_rol($87,0)|0); + $89 = ((($sb)) + 4|0); + $90 = HEAP32[$89>>2]|0; + $91 = $90 ^ $88; + HEAP32[$89>>2] = $91; + $92 = ((($sa)) + 4|0); + $93 = HEAP32[$92>>2]|0; + $94 = $93 >>> 8; + $95 = $94&255; + $96 = $95&255; + $97 = (4580 + ($96<<2)|0); + $98 = HEAP32[$97>>2]|0; + $99 = (_rol($98,8)|0); + $100 = HEAP32[$sa>>2]|0; + $101 = $100 ^ $99; + HEAP32[$sa>>2] = $101; + $102 = ((($sa)) + 4|0); + $103 = HEAP32[$102>>2]|0; + $104 = $103 >>> 16; + $105 = $104&255; + $106 = $105&255; + $107 = (4580 + ($106<<2)|0); + $108 = HEAP32[$107>>2]|0; + $109 = (_rol($108,16)|0); + $110 = ((($sb)) + 12|0); + $111 = HEAP32[$110>>2]|0; + $112 = $111 ^ $109; + HEAP32[$110>>2] = $112; + $113 = ((($sa)) + 4|0); + $114 = HEAP32[$113>>2]|0; + $115 = $114 >>> 24; + $116 = $115&255; + $117 = $116&255; + $118 = (4580 + ($117<<2)|0); + $119 = HEAP32[$118>>2]|0; + $120 = (_rol($119,24)|0); + $121 = ((($sb)) + 8|0); + $122 = HEAP32[$121>>2]|0; + $123 = $122 ^ $120; + HEAP32[$121>>2] = $123; + $124 = $0; + $125 = ((($124)) + 16|0); + $126 = ((($125)) + 4|0); + $127 = HEAP32[$126>>2]|0; + $128 = ((($sb)) + 4|0); + $129 = HEAP32[$128>>2]|0; + $130 = $127 ^ $129; + $131 = ((($sa)) + 4|0); + HEAP32[$131>>2] = $130; + $132 = ((($sa)) + 8|0); + $133 = HEAP32[$132>>2]|0; + $134 = $133 >>> 0; + $135 = $134&255; + $136 = $135&255; + $137 = (4580 + ($136<<2)|0); + $138 = HEAP32[$137>>2]|0; + $139 = (_rol($138,0)|0); + $140 = ((($sb)) + 8|0); + $141 = HEAP32[$140>>2]|0; + $142 = $141 ^ $139; + HEAP32[$140>>2] = $142; + $143 = ((($sa)) + 8|0); + $144 = HEAP32[$143>>2]|0; + $145 = $144 >>> 8; + $146 = $145&255; + $147 = $146&255; + $148 = (4580 + ($147<<2)|0); + $149 = HEAP32[$148>>2]|0; + $150 = (_rol($149,8)|0); + $151 = ((($sa)) + 4|0); + $152 = HEAP32[$151>>2]|0; + $153 = $152 ^ $150; + HEAP32[$151>>2] = $153; + $154 = ((($sa)) + 8|0); + $155 = HEAP32[$154>>2]|0; + $156 = $155 >>> 16; + $157 = $156&255; + $158 = $157&255; + $159 = (4580 + ($158<<2)|0); + $160 = HEAP32[$159>>2]|0; + $161 = (_rol($160,16)|0); + $162 = HEAP32[$sa>>2]|0; + $163 = $162 ^ $161; + HEAP32[$sa>>2] = $163; + $164 = ((($sa)) + 8|0); + $165 = HEAP32[$164>>2]|0; + $166 = $165 >>> 24; + $167 = $166&255; + $168 = $167&255; + $169 = (4580 + ($168<<2)|0); + $170 = HEAP32[$169>>2]|0; + $171 = (_rol($170,24)|0); + $172 = ((($sb)) + 12|0); + $173 = HEAP32[$172>>2]|0; + $174 = $173 ^ $171; + HEAP32[$172>>2] = $174; + $175 = $0; + $176 = ((($175)) + 16|0); + $177 = ((($176)) + 8|0); + $178 = HEAP32[$177>>2]|0; + $179 = ((($sb)) + 8|0); + $180 = HEAP32[$179>>2]|0; + $181 = $178 ^ $180; + $182 = ((($sa)) + 8|0); + HEAP32[$182>>2] = $181; + $183 = ((($sa)) + 12|0); + $184 = HEAP32[$183>>2]|0; + $185 = $184 >>> 0; + $186 = $185&255; + $187 = $186&255; + $188 = (4580 + ($187<<2)|0); + $189 = HEAP32[$188>>2]|0; + $190 = (_rol($189,0)|0); + $191 = ((($sb)) + 12|0); + $192 = HEAP32[$191>>2]|0; + $193 = $192 ^ $190; + HEAP32[$191>>2] = $193; + $194 = ((($sa)) + 12|0); + $195 = HEAP32[$194>>2]|0; + $196 = $195 >>> 8; + $197 = $196&255; + $198 = $197&255; + $199 = (4580 + ($198<<2)|0); + $200 = HEAP32[$199>>2]|0; + $201 = (_rol($200,8)|0); + $202 = ((($sa)) + 8|0); + $203 = HEAP32[$202>>2]|0; + $204 = $203 ^ $201; + HEAP32[$202>>2] = $204; + $205 = ((($sa)) + 12|0); + $206 = HEAP32[$205>>2]|0; + $207 = $206 >>> 16; + $208 = $207&255; + $209 = $208&255; + $210 = (4580 + ($209<<2)|0); + $211 = HEAP32[$210>>2]|0; + $212 = (_rol($211,16)|0); + $213 = ((($sa)) + 4|0); + $214 = HEAP32[$213>>2]|0; + $215 = $214 ^ $212; + HEAP32[$213>>2] = $215; + $216 = ((($sa)) + 12|0); + $217 = HEAP32[$216>>2]|0; + $218 = $217 >>> 24; + $219 = $218&255; + $220 = $219&255; + $221 = (4580 + ($220<<2)|0); + $222 = HEAP32[$221>>2]|0; + $223 = (_rol($222,24)|0); + $224 = HEAP32[$sa>>2]|0; + $225 = $224 ^ $223; + HEAP32[$sa>>2] = $225; + $226 = $0; + $227 = ((($226)) + 16|0); + $228 = ((($227)) + 12|0); + $229 = HEAP32[$228>>2]|0; + $230 = ((($sb)) + 12|0); + $231 = HEAP32[$230>>2]|0; + $232 = $229 ^ $231; + $233 = ((($sa)) + 12|0); + HEAP32[$233>>2] = $232; + $r = 2; + while(1) { + $234 = $r; + $235 = $rounds; + $236 = ($234|0)<($235|0); + $237 = HEAP32[$sa>>2]|0; + $238 = $237 >>> 0; + $239 = $238&255; + $240 = $239&255; + if (!($236)) { + break; + } + $241 = (4580 + ($240<<2)|0); + $242 = HEAP32[$241>>2]|0; + $243 = (_rol($242,0)|0); + HEAP32[$sb>>2] = $243; + $244 = HEAP32[$sa>>2]|0; + $245 = $244 >>> 8; + $246 = $245&255; + $247 = $246&255; + $248 = (4580 + ($247<<2)|0); + $249 = HEAP32[$248>>2]|0; + $250 = (_rol($249,8)|0); + $251 = ((($sb)) + 12|0); + HEAP32[$251>>2] = $250; + $252 = HEAP32[$sa>>2]|0; + $253 = $252 >>> 16; + $254 = $253&255; + $255 = $254&255; + $256 = (4580 + ($255<<2)|0); + $257 = HEAP32[$256>>2]|0; + $258 = (_rol($257,16)|0); + $259 = ((($sb)) + 8|0); + HEAP32[$259>>2] = $258; + $260 = HEAP32[$sa>>2]|0; + $261 = $260 >>> 24; + $262 = $261&255; + $263 = $262&255; + $264 = (4580 + ($263<<2)|0); + $265 = HEAP32[$264>>2]|0; + $266 = (_rol($265,24)|0); + $267 = ((($sb)) + 4|0); + HEAP32[$267>>2] = $266; + $268 = $r; + $269 = $0; + $270 = (($269) + ($268<<4)|0); + $271 = HEAP32[$270>>2]|0; + $272 = HEAP32[$sb>>2]|0; + $273 = $271 ^ $272; + HEAP32[$sa>>2] = $273; + $274 = ((($sa)) + 4|0); + $275 = HEAP32[$274>>2]|0; + $276 = $275 >>> 0; + $277 = $276&255; + $278 = $277&255; + $279 = (4580 + ($278<<2)|0); + $280 = HEAP32[$279>>2]|0; + $281 = (_rol($280,0)|0); + $282 = ((($sb)) + 4|0); + $283 = HEAP32[$282>>2]|0; + $284 = $283 ^ $281; + HEAP32[$282>>2] = $284; + $285 = ((($sa)) + 4|0); + $286 = HEAP32[$285>>2]|0; + $287 = $286 >>> 8; + $288 = $287&255; + $289 = $288&255; + $290 = (4580 + ($289<<2)|0); + $291 = HEAP32[$290>>2]|0; + $292 = (_rol($291,8)|0); + $293 = HEAP32[$sa>>2]|0; + $294 = $293 ^ $292; + HEAP32[$sa>>2] = $294; + $295 = ((($sa)) + 4|0); + $296 = HEAP32[$295>>2]|0; + $297 = $296 >>> 16; + $298 = $297&255; + $299 = $298&255; + $300 = (4580 + ($299<<2)|0); + $301 = HEAP32[$300>>2]|0; + $302 = (_rol($301,16)|0); + $303 = ((($sb)) + 12|0); + $304 = HEAP32[$303>>2]|0; + $305 = $304 ^ $302; + HEAP32[$303>>2] = $305; + $306 = ((($sa)) + 4|0); + $307 = HEAP32[$306>>2]|0; + $308 = $307 >>> 24; + $309 = $308&255; + $310 = $309&255; + $311 = (4580 + ($310<<2)|0); + $312 = HEAP32[$311>>2]|0; + $313 = (_rol($312,24)|0); + $314 = ((($sb)) + 8|0); + $315 = HEAP32[$314>>2]|0; + $316 = $315 ^ $313; + HEAP32[$314>>2] = $316; + $317 = $r; + $318 = $0; + $319 = (($318) + ($317<<4)|0); + $320 = ((($319)) + 4|0); + $321 = HEAP32[$320>>2]|0; + $322 = ((($sb)) + 4|0); + $323 = HEAP32[$322>>2]|0; + $324 = $321 ^ $323; + $325 = ((($sa)) + 4|0); + HEAP32[$325>>2] = $324; + $326 = ((($sa)) + 8|0); + $327 = HEAP32[$326>>2]|0; + $328 = $327 >>> 0; + $329 = $328&255; + $330 = $329&255; + $331 = (4580 + ($330<<2)|0); + $332 = HEAP32[$331>>2]|0; + $333 = (_rol($332,0)|0); + $334 = ((($sb)) + 8|0); + $335 = HEAP32[$334>>2]|0; + $336 = $335 ^ $333; + HEAP32[$334>>2] = $336; + $337 = ((($sa)) + 8|0); + $338 = HEAP32[$337>>2]|0; + $339 = $338 >>> 8; + $340 = $339&255; + $341 = $340&255; + $342 = (4580 + ($341<<2)|0); + $343 = HEAP32[$342>>2]|0; + $344 = (_rol($343,8)|0); + $345 = ((($sa)) + 4|0); + $346 = HEAP32[$345>>2]|0; + $347 = $346 ^ $344; + HEAP32[$345>>2] = $347; + $348 = ((($sa)) + 8|0); + $349 = HEAP32[$348>>2]|0; + $350 = $349 >>> 16; + $351 = $350&255; + $352 = $351&255; + $353 = (4580 + ($352<<2)|0); + $354 = HEAP32[$353>>2]|0; + $355 = (_rol($354,16)|0); + $356 = HEAP32[$sa>>2]|0; + $357 = $356 ^ $355; + HEAP32[$sa>>2] = $357; + $358 = ((($sa)) + 8|0); + $359 = HEAP32[$358>>2]|0; + $360 = $359 >>> 24; + $361 = $360&255; + $362 = $361&255; + $363 = (4580 + ($362<<2)|0); + $364 = HEAP32[$363>>2]|0; + $365 = (_rol($364,24)|0); + $366 = ((($sb)) + 12|0); + $367 = HEAP32[$366>>2]|0; + $368 = $367 ^ $365; + HEAP32[$366>>2] = $368; + $369 = $r; + $370 = $0; + $371 = (($370) + ($369<<4)|0); + $372 = ((($371)) + 8|0); + $373 = HEAP32[$372>>2]|0; + $374 = ((($sb)) + 8|0); + $375 = HEAP32[$374>>2]|0; + $376 = $373 ^ $375; + $377 = ((($sa)) + 8|0); + HEAP32[$377>>2] = $376; + $378 = ((($sa)) + 12|0); + $379 = HEAP32[$378>>2]|0; + $380 = $379 >>> 0; + $381 = $380&255; + $382 = $381&255; + $383 = (4580 + ($382<<2)|0); + $384 = HEAP32[$383>>2]|0; + $385 = (_rol($384,0)|0); + $386 = ((($sb)) + 12|0); + $387 = HEAP32[$386>>2]|0; + $388 = $387 ^ $385; + HEAP32[$386>>2] = $388; + $389 = ((($sa)) + 12|0); + $390 = HEAP32[$389>>2]|0; + $391 = $390 >>> 8; + $392 = $391&255; + $393 = $392&255; + $394 = (4580 + ($393<<2)|0); + $395 = HEAP32[$394>>2]|0; + $396 = (_rol($395,8)|0); + $397 = ((($sa)) + 8|0); + $398 = HEAP32[$397>>2]|0; + $399 = $398 ^ $396; + HEAP32[$397>>2] = $399; + $400 = ((($sa)) + 12|0); + $401 = HEAP32[$400>>2]|0; + $402 = $401 >>> 16; + $403 = $402&255; + $404 = $403&255; + $405 = (4580 + ($404<<2)|0); + $406 = HEAP32[$405>>2]|0; + $407 = (_rol($406,16)|0); + $408 = ((($sa)) + 4|0); + $409 = HEAP32[$408>>2]|0; + $410 = $409 ^ $407; + HEAP32[$408>>2] = $410; + $411 = ((($sa)) + 12|0); + $412 = HEAP32[$411>>2]|0; + $413 = $412 >>> 24; + $414 = $413&255; + $415 = $414&255; + $416 = (4580 + ($415<<2)|0); + $417 = HEAP32[$416>>2]|0; + $418 = (_rol($417,24)|0); + $419 = HEAP32[$sa>>2]|0; + $420 = $419 ^ $418; + HEAP32[$sa>>2] = $420; + $421 = $r; + $422 = $0; + $423 = (($422) + ($421<<4)|0); + $424 = ((($423)) + 12|0); + $425 = HEAP32[$424>>2]|0; + $426 = ((($sb)) + 12|0); + $427 = HEAP32[$426>>2]|0; + $428 = $425 ^ $427; + $429 = ((($sa)) + 12|0); + HEAP32[$429>>2] = $428; + $430 = $r; + $431 = (($430) + 1)|0; + $r = $431; + $432 = HEAP32[$sa>>2]|0; + $433 = $432 >>> 0; + $434 = $433&255; + $435 = $434&255; + $436 = (4580 + ($435<<2)|0); + $437 = HEAP32[$436>>2]|0; + $438 = (_rol($437,0)|0); + HEAP32[$sb>>2] = $438; + $439 = HEAP32[$sa>>2]|0; + $440 = $439 >>> 8; + $441 = $440&255; + $442 = $441&255; + $443 = (4580 + ($442<<2)|0); + $444 = HEAP32[$443>>2]|0; + $445 = (_rol($444,8)|0); + $446 = ((($sb)) + 12|0); + HEAP32[$446>>2] = $445; + $447 = HEAP32[$sa>>2]|0; + $448 = $447 >>> 16; + $449 = $448&255; + $450 = $449&255; + $451 = (4580 + ($450<<2)|0); + $452 = HEAP32[$451>>2]|0; + $453 = (_rol($452,16)|0); + $454 = ((($sb)) + 8|0); + HEAP32[$454>>2] = $453; + $455 = HEAP32[$sa>>2]|0; + $456 = $455 >>> 24; + $457 = $456&255; + $458 = $457&255; + $459 = (4580 + ($458<<2)|0); + $460 = HEAP32[$459>>2]|0; + $461 = (_rol($460,24)|0); + $462 = ((($sb)) + 4|0); + HEAP32[$462>>2] = $461; + $463 = $r; + $464 = $0; + $465 = (($464) + ($463<<4)|0); + $466 = HEAP32[$465>>2]|0; + $467 = HEAP32[$sb>>2]|0; + $468 = $466 ^ $467; + HEAP32[$sa>>2] = $468; + $469 = ((($sa)) + 4|0); + $470 = HEAP32[$469>>2]|0; + $471 = $470 >>> 0; + $472 = $471&255; + $473 = $472&255; + $474 = (4580 + ($473<<2)|0); + $475 = HEAP32[$474>>2]|0; + $476 = (_rol($475,0)|0); + $477 = ((($sb)) + 4|0); + $478 = HEAP32[$477>>2]|0; + $479 = $478 ^ $476; + HEAP32[$477>>2] = $479; + $480 = ((($sa)) + 4|0); + $481 = HEAP32[$480>>2]|0; + $482 = $481 >>> 8; + $483 = $482&255; + $484 = $483&255; + $485 = (4580 + ($484<<2)|0); + $486 = HEAP32[$485>>2]|0; + $487 = (_rol($486,8)|0); + $488 = HEAP32[$sa>>2]|0; + $489 = $488 ^ $487; + HEAP32[$sa>>2] = $489; + $490 = ((($sa)) + 4|0); + $491 = HEAP32[$490>>2]|0; + $492 = $491 >>> 16; + $493 = $492&255; + $494 = $493&255; + $495 = (4580 + ($494<<2)|0); + $496 = HEAP32[$495>>2]|0; + $497 = (_rol($496,16)|0); + $498 = ((($sb)) + 12|0); + $499 = HEAP32[$498>>2]|0; + $500 = $499 ^ $497; + HEAP32[$498>>2] = $500; + $501 = ((($sa)) + 4|0); + $502 = HEAP32[$501>>2]|0; + $503 = $502 >>> 24; + $504 = $503&255; + $505 = $504&255; + $506 = (4580 + ($505<<2)|0); + $507 = HEAP32[$506>>2]|0; + $508 = (_rol($507,24)|0); + $509 = ((($sb)) + 8|0); + $510 = HEAP32[$509>>2]|0; + $511 = $510 ^ $508; + HEAP32[$509>>2] = $511; + $512 = $r; + $513 = $0; + $514 = (($513) + ($512<<4)|0); + $515 = ((($514)) + 4|0); + $516 = HEAP32[$515>>2]|0; + $517 = ((($sb)) + 4|0); + $518 = HEAP32[$517>>2]|0; + $519 = $516 ^ $518; + $520 = ((($sa)) + 4|0); + HEAP32[$520>>2] = $519; + $521 = ((($sa)) + 8|0); + $522 = HEAP32[$521>>2]|0; + $523 = $522 >>> 0; + $524 = $523&255; + $525 = $524&255; + $526 = (4580 + ($525<<2)|0); + $527 = HEAP32[$526>>2]|0; + $528 = (_rol($527,0)|0); + $529 = ((($sb)) + 8|0); + $530 = HEAP32[$529>>2]|0; + $531 = $530 ^ $528; + HEAP32[$529>>2] = $531; + $532 = ((($sa)) + 8|0); + $533 = HEAP32[$532>>2]|0; + $534 = $533 >>> 8; + $535 = $534&255; + $536 = $535&255; + $537 = (4580 + ($536<<2)|0); + $538 = HEAP32[$537>>2]|0; + $539 = (_rol($538,8)|0); + $540 = ((($sa)) + 4|0); + $541 = HEAP32[$540>>2]|0; + $542 = $541 ^ $539; + HEAP32[$540>>2] = $542; + $543 = ((($sa)) + 8|0); + $544 = HEAP32[$543>>2]|0; + $545 = $544 >>> 16; + $546 = $545&255; + $547 = $546&255; + $548 = (4580 + ($547<<2)|0); + $549 = HEAP32[$548>>2]|0; + $550 = (_rol($549,16)|0); + $551 = HEAP32[$sa>>2]|0; + $552 = $551 ^ $550; + HEAP32[$sa>>2] = $552; + $553 = ((($sa)) + 8|0); + $554 = HEAP32[$553>>2]|0; + $555 = $554 >>> 24; + $556 = $555&255; + $557 = $556&255; + $558 = (4580 + ($557<<2)|0); + $559 = HEAP32[$558>>2]|0; + $560 = (_rol($559,24)|0); + $561 = ((($sb)) + 12|0); + $562 = HEAP32[$561>>2]|0; + $563 = $562 ^ $560; + HEAP32[$561>>2] = $563; + $564 = $r; + $565 = $0; + $566 = (($565) + ($564<<4)|0); + $567 = ((($566)) + 8|0); + $568 = HEAP32[$567>>2]|0; + $569 = ((($sb)) + 8|0); + $570 = HEAP32[$569>>2]|0; + $571 = $568 ^ $570; + $572 = ((($sa)) + 8|0); + HEAP32[$572>>2] = $571; + $573 = ((($sa)) + 12|0); + $574 = HEAP32[$573>>2]|0; + $575 = $574 >>> 0; + $576 = $575&255; + $577 = $576&255; + $578 = (4580 + ($577<<2)|0); + $579 = HEAP32[$578>>2]|0; + $580 = (_rol($579,0)|0); + $581 = ((($sb)) + 12|0); + $582 = HEAP32[$581>>2]|0; + $583 = $582 ^ $580; + HEAP32[$581>>2] = $583; + $584 = ((($sa)) + 12|0); + $585 = HEAP32[$584>>2]|0; + $586 = $585 >>> 8; + $587 = $586&255; + $588 = $587&255; + $589 = (4580 + ($588<<2)|0); + $590 = HEAP32[$589>>2]|0; + $591 = (_rol($590,8)|0); + $592 = ((($sa)) + 8|0); + $593 = HEAP32[$592>>2]|0; + $594 = $593 ^ $591; + HEAP32[$592>>2] = $594; + $595 = ((($sa)) + 12|0); + $596 = HEAP32[$595>>2]|0; + $597 = $596 >>> 16; + $598 = $597&255; + $599 = $598&255; + $600 = (4580 + ($599<<2)|0); + $601 = HEAP32[$600>>2]|0; + $602 = (_rol($601,16)|0); + $603 = ((($sa)) + 4|0); + $604 = HEAP32[$603>>2]|0; + $605 = $604 ^ $602; + HEAP32[$603>>2] = $605; + $606 = ((($sa)) + 12|0); + $607 = HEAP32[$606>>2]|0; + $608 = $607 >>> 24; + $609 = $608&255; + $610 = $609&255; + $611 = (4580 + ($610<<2)|0); + $612 = HEAP32[$611>>2]|0; + $613 = (_rol($612,24)|0); + $614 = HEAP32[$sa>>2]|0; + $615 = $614 ^ $613; + HEAP32[$sa>>2] = $615; + $616 = $r; + $617 = $0; + $618 = (($617) + ($616<<4)|0); + $619 = ((($618)) + 12|0); + $620 = HEAP32[$619>>2]|0; + $621 = ((($sb)) + 12|0); + $622 = HEAP32[$621>>2]|0; + $623 = $620 ^ $622; + $624 = ((($sa)) + 12|0); + HEAP32[$624>>2] = $623; + $625 = $r; + $626 = (($625) + 1)|0; + $r = $626; + } + $627 = $240<<2; + $628 = $sbox; + $629 = (($628) + ($627)|0); + $630 = HEAP8[$629>>0]|0; + $631 = $630&255; + $632 = $631 << 0; + HEAP32[$sb>>2] = $632; + $633 = HEAP32[$sa>>2]|0; + $634 = $633 >>> 8; + $635 = $634&255; + $636 = $635&255; + $637 = $636<<2; + $638 = $sbox; + $639 = (($638) + ($637)|0); + $640 = HEAP8[$639>>0]|0; + $641 = $640&255; + $642 = $641 << 8; + $643 = ((($sb)) + 12|0); + HEAP32[$643>>2] = $642; + $644 = HEAP32[$sa>>2]|0; + $645 = $644 >>> 16; + $646 = $645&255; + $647 = $646&255; + $648 = $647<<2; + $649 = $sbox; + $650 = (($649) + ($648)|0); + $651 = HEAP8[$650>>0]|0; + $652 = $651&255; + $653 = $652 << 16; + $654 = ((($sb)) + 8|0); + HEAP32[$654>>2] = $653; + $655 = HEAP32[$sa>>2]|0; + $656 = $655 >>> 24; + $657 = $656&255; + $658 = $657&255; + $659 = $658<<2; + $660 = $sbox; + $661 = (($660) + ($659)|0); + $662 = HEAP8[$661>>0]|0; + $663 = $662&255; + $664 = $663 << 24; + $665 = ((($sb)) + 4|0); + HEAP32[$665>>2] = $664; + $666 = $r; + $667 = $0; + $668 = (($667) + ($666<<4)|0); + $669 = HEAP32[$668>>2]|0; + $670 = HEAP32[$sb>>2]|0; + $671 = $669 ^ $670; + HEAP32[$sa>>2] = $671; + $672 = ((($sa)) + 4|0); + $673 = HEAP32[$672>>2]|0; + $674 = $673 >>> 0; + $675 = $674&255; + $676 = $675&255; + $677 = $676<<2; + $678 = $sbox; + $679 = (($678) + ($677)|0); + $680 = HEAP8[$679>>0]|0; + $681 = $680&255; + $682 = $681 << 0; + $683 = ((($sb)) + 4|0); + $684 = HEAP32[$683>>2]|0; + $685 = $684 ^ $682; + HEAP32[$683>>2] = $685; + $686 = ((($sa)) + 4|0); + $687 = HEAP32[$686>>2]|0; + $688 = $687 >>> 8; + $689 = $688&255; + $690 = $689&255; + $691 = $690<<2; + $692 = $sbox; + $693 = (($692) + ($691)|0); + $694 = HEAP8[$693>>0]|0; + $695 = $694&255; + $696 = $695 << 8; + $697 = HEAP32[$sa>>2]|0; + $698 = $697 ^ $696; + HEAP32[$sa>>2] = $698; + $699 = ((($sa)) + 4|0); + $700 = HEAP32[$699>>2]|0; + $701 = $700 >>> 16; + $702 = $701&255; + $703 = $702&255; + $704 = $703<<2; + $705 = $sbox; + $706 = (($705) + ($704)|0); + $707 = HEAP8[$706>>0]|0; + $708 = $707&255; + $709 = $708 << 16; + $710 = ((($sb)) + 12|0); + $711 = HEAP32[$710>>2]|0; + $712 = $711 ^ $709; + HEAP32[$710>>2] = $712; + $713 = ((($sa)) + 4|0); + $714 = HEAP32[$713>>2]|0; + $715 = $714 >>> 24; + $716 = $715&255; + $717 = $716&255; + $718 = $717<<2; + $719 = $sbox; + $720 = (($719) + ($718)|0); + $721 = HEAP8[$720>>0]|0; + $722 = $721&255; + $723 = $722 << 24; + $724 = ((($sb)) + 8|0); + $725 = HEAP32[$724>>2]|0; + $726 = $725 ^ $723; + HEAP32[$724>>2] = $726; + $727 = $r; + $728 = $0; + $729 = (($728) + ($727<<4)|0); + $730 = ((($729)) + 4|0); + $731 = HEAP32[$730>>2]|0; + $732 = ((($sb)) + 4|0); + $733 = HEAP32[$732>>2]|0; + $734 = $731 ^ $733; + $735 = ((($sa)) + 4|0); + HEAP32[$735>>2] = $734; + $736 = ((($sa)) + 8|0); + $737 = HEAP32[$736>>2]|0; + $738 = $737 >>> 0; + $739 = $738&255; + $740 = $739&255; + $741 = $740<<2; + $742 = $sbox; + $743 = (($742) + ($741)|0); + $744 = HEAP8[$743>>0]|0; + $745 = $744&255; + $746 = $745 << 0; + $747 = ((($sb)) + 8|0); + $748 = HEAP32[$747>>2]|0; + $749 = $748 ^ $746; + HEAP32[$747>>2] = $749; + $750 = ((($sa)) + 8|0); + $751 = HEAP32[$750>>2]|0; + $752 = $751 >>> 8; + $753 = $752&255; + $754 = $753&255; + $755 = $754<<2; + $756 = $sbox; + $757 = (($756) + ($755)|0); + $758 = HEAP8[$757>>0]|0; + $759 = $758&255; + $760 = $759 << 8; + $761 = ((($sa)) + 4|0); + $762 = HEAP32[$761>>2]|0; + $763 = $762 ^ $760; + HEAP32[$761>>2] = $763; + $764 = ((($sa)) + 8|0); + $765 = HEAP32[$764>>2]|0; + $766 = $765 >>> 16; + $767 = $766&255; + $768 = $767&255; + $769 = $768<<2; + $770 = $sbox; + $771 = (($770) + ($769)|0); + $772 = HEAP8[$771>>0]|0; + $773 = $772&255; + $774 = $773 << 16; + $775 = HEAP32[$sa>>2]|0; + $776 = $775 ^ $774; + HEAP32[$sa>>2] = $776; + $777 = ((($sa)) + 8|0); + $778 = HEAP32[$777>>2]|0; + $779 = $778 >>> 24; + $780 = $779&255; + $781 = $780&255; + $782 = $781<<2; + $783 = $sbox; + $784 = (($783) + ($782)|0); + $785 = HEAP8[$784>>0]|0; + $786 = $785&255; + $787 = $786 << 24; + $788 = ((($sb)) + 12|0); + $789 = HEAP32[$788>>2]|0; + $790 = $789 ^ $787; + HEAP32[$788>>2] = $790; + $791 = $r; + $792 = $0; + $793 = (($792) + ($791<<4)|0); + $794 = ((($793)) + 8|0); + $795 = HEAP32[$794>>2]|0; + $796 = ((($sb)) + 8|0); + $797 = HEAP32[$796>>2]|0; + $798 = $795 ^ $797; + $799 = ((($sa)) + 8|0); + HEAP32[$799>>2] = $798; + $800 = ((($sa)) + 12|0); + $801 = HEAP32[$800>>2]|0; + $802 = $801 >>> 0; + $803 = $802&255; + $804 = $803&255; + $805 = $804<<2; + $806 = $sbox; + $807 = (($806) + ($805)|0); + $808 = HEAP8[$807>>0]|0; + $809 = $808&255; + $810 = $809 << 0; + $811 = ((($sb)) + 12|0); + $812 = HEAP32[$811>>2]|0; + $813 = $812 ^ $810; + HEAP32[$811>>2] = $813; + $814 = ((($sa)) + 12|0); + $815 = HEAP32[$814>>2]|0; + $816 = $815 >>> 8; + $817 = $816&255; + $818 = $817&255; + $819 = $818<<2; + $820 = $sbox; + $821 = (($820) + ($819)|0); + $822 = HEAP8[$821>>0]|0; + $823 = $822&255; + $824 = $823 << 8; + $825 = ((($sa)) + 8|0); + $826 = HEAP32[$825>>2]|0; + $827 = $826 ^ $824; + HEAP32[$825>>2] = $827; + $828 = ((($sa)) + 12|0); + $829 = HEAP32[$828>>2]|0; + $830 = $829 >>> 16; + $831 = $830&255; + $832 = $831&255; + $833 = $832<<2; + $834 = $sbox; + $835 = (($834) + ($833)|0); + $836 = HEAP8[$835>>0]|0; + $837 = $836&255; + $838 = $837 << 16; + $839 = ((($sa)) + 4|0); + $840 = HEAP32[$839>>2]|0; + $841 = $840 ^ $838; + HEAP32[$839>>2] = $841; + $842 = ((($sa)) + 12|0); + $843 = HEAP32[$842>>2]|0; + $844 = $843 >>> 24; + $845 = $844&255; + $846 = $845&255; + $847 = $846<<2; + $848 = $sbox; + $849 = (($848) + ($847)|0); + $850 = HEAP8[$849>>0]|0; + $851 = $850&255; + $852 = $851 << 24; + $853 = HEAP32[$sa>>2]|0; + $854 = $853 ^ $852; + HEAP32[$sa>>2] = $854; + $855 = $r; + $856 = $0; + $857 = (($856) + ($855<<4)|0); + $858 = ((($857)) + 12|0); + $859 = HEAP32[$858>>2]|0; + $860 = ((($sb)) + 12|0); + $861 = HEAP32[$860>>2]|0; + $862 = $859 ^ $861; + $863 = ((($sa)) + 12|0); + HEAP32[$863>>2] = $862; + $864 = $1; + $865 = HEAP32[$sa>>2]|0; + _buf_put_le32($864,$865); + $866 = $1; + $867 = ((($866)) + 4|0); + $868 = ((($sa)) + 4|0); + $869 = HEAP32[$868>>2]|0; + _buf_put_le32($867,$869); + $870 = $1; + $871 = ((($870)) + 8|0); + $872 = ((($sa)) + 8|0); + $873 = HEAP32[$872>>2]|0; + _buf_put_le32($871,$873); + $874 = $1; + $875 = ((($874)) + 12|0); + $876 = ((($sa)) + 12|0); + $877 = HEAP32[$876>>2]|0; + _buf_put_le32($875,$877); + STACKTOP = sp;return 64; +} +function _buf_get_le32($_buf) { + $_buf = $_buf|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $in = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_buf; + $1 = $0; + $in = $1; + $2 = $in; + $3 = ((($2)) + 3|0); + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = $5 << 24; + $7 = $in; + $8 = ((($7)) + 2|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = $10 << 16; + $12 = $6 | $11; + $13 = $in; + $14 = ((($13)) + 1|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = $16 << 8; + $18 = $12 | $17; + $19 = $in; + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = $18 | $21; + STACKTOP = sp;return ($22|0); +} +function _buf_put_le32($_buf,$val) { + $_buf = $_buf|0; + $val = $val|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $out = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_buf; + $1 = $val; + $2 = $0; + $out = $2; + $3 = $1; + $4 = $3 >>> 24; + $5 = $4&255; + $6 = $out; + $7 = ((($6)) + 3|0); + HEAP8[$7>>0] = $5; + $8 = $1; + $9 = $8 >>> 16; + $10 = $9&255; + $11 = $out; + $12 = ((($11)) + 2|0); + HEAP8[$12>>0] = $10; + $13 = $1; + $14 = $13 >>> 8; + $15 = $14&255; + $16 = $out; + $17 = ((($16)) + 1|0); + HEAP8[$17>>0] = $15; + $18 = $1; + $19 = $18&255; + $20 = $out; + HEAP8[$20>>0] = $19; + STACKTOP = sp;return; +} +function _do_decrypt($ctx,$bx,$ax) { + $ctx = $ctx|0; + $bx = $bx|0; + $ax = $ax|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $1 = $bx; + $2 = $ax; + $3 = $0; + $4 = $1; + $5 = $2; + $6 = (_do_decrypt_fn($3,$4,$5)|0); + STACKTOP = sp;return ($6|0); +} +function _do_decrypt_fn($ctx,$b,$a) { + $ctx = $ctx|0; + $b = $b|0; + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; + var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; + var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; + var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; + var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; + var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; + var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; + var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; + var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; + var $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0; + var $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0; + var $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0; + var $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0; + var $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0; + var $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0; + var $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0; + var $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0; + var $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0; + var $837 = 0, $838 = 0, $839 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $r = 0, $rounds = 0, $sa = 0, $sb = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $sa = sp + 16|0; + $sb = sp; + $0 = $ctx; + $1 = $b; + $2 = $a; + $3 = $0; + $4 = ((($3)) + 480|0); + $5 = HEAP32[$4>>2]|0; + $rounds = $5; + $6 = $2; + $7 = (_buf_get_le32($6)|0); + HEAP32[$sb>>2] = $7; + $8 = $2; + $9 = ((($8)) + 4|0); + $10 = (_buf_get_le32($9)|0); + $11 = ((($sb)) + 4|0); + HEAP32[$11>>2] = $10; + $12 = $2; + $13 = ((($12)) + 8|0); + $14 = (_buf_get_le32($13)|0); + $15 = ((($sb)) + 8|0); + HEAP32[$15>>2] = $14; + $16 = $2; + $17 = ((($16)) + 12|0); + $18 = (_buf_get_le32($17)|0); + $19 = ((($sb)) + 12|0); + HEAP32[$19>>2] = $18; + $20 = HEAP32[$sb>>2]|0; + $21 = $rounds; + $22 = $0; + $23 = ((($22)) + 240|0); + $24 = (($23) + ($21<<4)|0); + $25 = HEAP32[$24>>2]|0; + $26 = $20 ^ $25; + HEAP32[$sa>>2] = $26; + $27 = ((($sb)) + 4|0); + $28 = HEAP32[$27>>2]|0; + $29 = $rounds; + $30 = $0; + $31 = ((($30)) + 240|0); + $32 = (($31) + ($29<<4)|0); + $33 = ((($32)) + 4|0); + $34 = HEAP32[$33>>2]|0; + $35 = $28 ^ $34; + $36 = ((($sa)) + 4|0); + HEAP32[$36>>2] = $35; + $37 = ((($sb)) + 8|0); + $38 = HEAP32[$37>>2]|0; + $39 = $rounds; + $40 = $0; + $41 = ((($40)) + 240|0); + $42 = (($41) + ($39<<4)|0); + $43 = ((($42)) + 8|0); + $44 = HEAP32[$43>>2]|0; + $45 = $38 ^ $44; + $46 = ((($sa)) + 8|0); + HEAP32[$46>>2] = $45; + $47 = ((($sb)) + 12|0); + $48 = HEAP32[$47>>2]|0; + $49 = $rounds; + $50 = $0; + $51 = ((($50)) + 240|0); + $52 = (($51) + ($49<<4)|0); + $53 = ((($52)) + 12|0); + $54 = HEAP32[$53>>2]|0; + $55 = $48 ^ $54; + $56 = ((($sa)) + 12|0); + HEAP32[$56>>2] = $55; + $57 = $rounds; + $58 = (($57) - 1)|0; + $r = $58; + while(1) { + $59 = $r; + $60 = ($59|0)>(1); + $61 = HEAP32[$sa>>2]|0; + $62 = $61 >>> 0; + $63 = $62&255; + $64 = $63&255; + $65 = (5604 + ($64<<2)|0); + $66 = HEAP32[$65>>2]|0; + $67 = (_rol($66,0)|0); + HEAP32[$sb>>2] = $67; + $68 = HEAP32[$sa>>2]|0; + $69 = $68 >>> 8; + $70 = $69&255; + $71 = $70&255; + $72 = (5604 + ($71<<2)|0); + $73 = HEAP32[$72>>2]|0; + $74 = (_rol($73,8)|0); + $75 = ((($sb)) + 4|0); + HEAP32[$75>>2] = $74; + $76 = HEAP32[$sa>>2]|0; + $77 = $76 >>> 16; + $78 = $77&255; + $79 = $78&255; + $80 = (5604 + ($79<<2)|0); + $81 = HEAP32[$80>>2]|0; + $82 = (_rol($81,16)|0); + $83 = ((($sb)) + 8|0); + HEAP32[$83>>2] = $82; + $84 = HEAP32[$sa>>2]|0; + $85 = $84 >>> 24; + $86 = $85&255; + $87 = $86&255; + $88 = (5604 + ($87<<2)|0); + $89 = HEAP32[$88>>2]|0; + $90 = (_rol($89,24)|0); + $91 = ((($sb)) + 12|0); + HEAP32[$91>>2] = $90; + if (!($60)) { + break; + } + $92 = $r; + $93 = $0; + $94 = ((($93)) + 240|0); + $95 = (($94) + ($92<<4)|0); + $96 = HEAP32[$95>>2]|0; + $97 = HEAP32[$sb>>2]|0; + $98 = $96 ^ $97; + HEAP32[$sa>>2] = $98; + $99 = ((($sa)) + 4|0); + $100 = HEAP32[$99>>2]|0; + $101 = $100 >>> 0; + $102 = $101&255; + $103 = $102&255; + $104 = (5604 + ($103<<2)|0); + $105 = HEAP32[$104>>2]|0; + $106 = (_rol($105,0)|0); + $107 = ((($sb)) + 4|0); + $108 = HEAP32[$107>>2]|0; + $109 = $108 ^ $106; + HEAP32[$107>>2] = $109; + $110 = ((($sa)) + 4|0); + $111 = HEAP32[$110>>2]|0; + $112 = $111 >>> 8; + $113 = $112&255; + $114 = $113&255; + $115 = (5604 + ($114<<2)|0); + $116 = HEAP32[$115>>2]|0; + $117 = (_rol($116,8)|0); + $118 = ((($sb)) + 8|0); + $119 = HEAP32[$118>>2]|0; + $120 = $119 ^ $117; + HEAP32[$118>>2] = $120; + $121 = ((($sa)) + 4|0); + $122 = HEAP32[$121>>2]|0; + $123 = $122 >>> 16; + $124 = $123&255; + $125 = $124&255; + $126 = (5604 + ($125<<2)|0); + $127 = HEAP32[$126>>2]|0; + $128 = (_rol($127,16)|0); + $129 = ((($sb)) + 12|0); + $130 = HEAP32[$129>>2]|0; + $131 = $130 ^ $128; + HEAP32[$129>>2] = $131; + $132 = ((($sa)) + 4|0); + $133 = HEAP32[$132>>2]|0; + $134 = $133 >>> 24; + $135 = $134&255; + $136 = $135&255; + $137 = (5604 + ($136<<2)|0); + $138 = HEAP32[$137>>2]|0; + $139 = (_rol($138,24)|0); + $140 = HEAP32[$sa>>2]|0; + $141 = $140 ^ $139; + HEAP32[$sa>>2] = $141; + $142 = $r; + $143 = $0; + $144 = ((($143)) + 240|0); + $145 = (($144) + ($142<<4)|0); + $146 = ((($145)) + 4|0); + $147 = HEAP32[$146>>2]|0; + $148 = ((($sb)) + 4|0); + $149 = HEAP32[$148>>2]|0; + $150 = $147 ^ $149; + $151 = ((($sa)) + 4|0); + HEAP32[$151>>2] = $150; + $152 = ((($sa)) + 8|0); + $153 = HEAP32[$152>>2]|0; + $154 = $153 >>> 0; + $155 = $154&255; + $156 = $155&255; + $157 = (5604 + ($156<<2)|0); + $158 = HEAP32[$157>>2]|0; + $159 = (_rol($158,0)|0); + $160 = ((($sb)) + 8|0); + $161 = HEAP32[$160>>2]|0; + $162 = $161 ^ $159; + HEAP32[$160>>2] = $162; + $163 = ((($sa)) + 8|0); + $164 = HEAP32[$163>>2]|0; + $165 = $164 >>> 8; + $166 = $165&255; + $167 = $166&255; + $168 = (5604 + ($167<<2)|0); + $169 = HEAP32[$168>>2]|0; + $170 = (_rol($169,8)|0); + $171 = ((($sb)) + 12|0); + $172 = HEAP32[$171>>2]|0; + $173 = $172 ^ $170; + HEAP32[$171>>2] = $173; + $174 = ((($sa)) + 8|0); + $175 = HEAP32[$174>>2]|0; + $176 = $175 >>> 16; + $177 = $176&255; + $178 = $177&255; + $179 = (5604 + ($178<<2)|0); + $180 = HEAP32[$179>>2]|0; + $181 = (_rol($180,16)|0); + $182 = HEAP32[$sa>>2]|0; + $183 = $182 ^ $181; + HEAP32[$sa>>2] = $183; + $184 = ((($sa)) + 8|0); + $185 = HEAP32[$184>>2]|0; + $186 = $185 >>> 24; + $187 = $186&255; + $188 = $187&255; + $189 = (5604 + ($188<<2)|0); + $190 = HEAP32[$189>>2]|0; + $191 = (_rol($190,24)|0); + $192 = ((($sa)) + 4|0); + $193 = HEAP32[$192>>2]|0; + $194 = $193 ^ $191; + HEAP32[$192>>2] = $194; + $195 = $r; + $196 = $0; + $197 = ((($196)) + 240|0); + $198 = (($197) + ($195<<4)|0); + $199 = ((($198)) + 8|0); + $200 = HEAP32[$199>>2]|0; + $201 = ((($sb)) + 8|0); + $202 = HEAP32[$201>>2]|0; + $203 = $200 ^ $202; + $204 = ((($sa)) + 8|0); + HEAP32[$204>>2] = $203; + $205 = ((($sa)) + 12|0); + $206 = HEAP32[$205>>2]|0; + $207 = $206 >>> 0; + $208 = $207&255; + $209 = $208&255; + $210 = (5604 + ($209<<2)|0); + $211 = HEAP32[$210>>2]|0; + $212 = (_rol($211,0)|0); + $213 = ((($sb)) + 12|0); + $214 = HEAP32[$213>>2]|0; + $215 = $214 ^ $212; + HEAP32[$213>>2] = $215; + $216 = ((($sa)) + 12|0); + $217 = HEAP32[$216>>2]|0; + $218 = $217 >>> 8; + $219 = $218&255; + $220 = $219&255; + $221 = (5604 + ($220<<2)|0); + $222 = HEAP32[$221>>2]|0; + $223 = (_rol($222,8)|0); + $224 = HEAP32[$sa>>2]|0; + $225 = $224 ^ $223; + HEAP32[$sa>>2] = $225; + $226 = ((($sa)) + 12|0); + $227 = HEAP32[$226>>2]|0; + $228 = $227 >>> 16; + $229 = $228&255; + $230 = $229&255; + $231 = (5604 + ($230<<2)|0); + $232 = HEAP32[$231>>2]|0; + $233 = (_rol($232,16)|0); + $234 = ((($sa)) + 4|0); + $235 = HEAP32[$234>>2]|0; + $236 = $235 ^ $233; + HEAP32[$234>>2] = $236; + $237 = ((($sa)) + 12|0); + $238 = HEAP32[$237>>2]|0; + $239 = $238 >>> 24; + $240 = $239&255; + $241 = $240&255; + $242 = (5604 + ($241<<2)|0); + $243 = HEAP32[$242>>2]|0; + $244 = (_rol($243,24)|0); + $245 = ((($sa)) + 8|0); + $246 = HEAP32[$245>>2]|0; + $247 = $246 ^ $244; + HEAP32[$245>>2] = $247; + $248 = $r; + $249 = $0; + $250 = ((($249)) + 240|0); + $251 = (($250) + ($248<<4)|0); + $252 = ((($251)) + 12|0); + $253 = HEAP32[$252>>2]|0; + $254 = ((($sb)) + 12|0); + $255 = HEAP32[$254>>2]|0; + $256 = $253 ^ $255; + $257 = ((($sa)) + 12|0); + HEAP32[$257>>2] = $256; + $258 = $r; + $259 = (($258) + -1)|0; + $r = $259; + $260 = HEAP32[$sa>>2]|0; + $261 = $260 >>> 0; + $262 = $261&255; + $263 = $262&255; + $264 = (5604 + ($263<<2)|0); + $265 = HEAP32[$264>>2]|0; + $266 = (_rol($265,0)|0); + HEAP32[$sb>>2] = $266; + $267 = HEAP32[$sa>>2]|0; + $268 = $267 >>> 8; + $269 = $268&255; + $270 = $269&255; + $271 = (5604 + ($270<<2)|0); + $272 = HEAP32[$271>>2]|0; + $273 = (_rol($272,8)|0); + $274 = ((($sb)) + 4|0); + HEAP32[$274>>2] = $273; + $275 = HEAP32[$sa>>2]|0; + $276 = $275 >>> 16; + $277 = $276&255; + $278 = $277&255; + $279 = (5604 + ($278<<2)|0); + $280 = HEAP32[$279>>2]|0; + $281 = (_rol($280,16)|0); + $282 = ((($sb)) + 8|0); + HEAP32[$282>>2] = $281; + $283 = HEAP32[$sa>>2]|0; + $284 = $283 >>> 24; + $285 = $284&255; + $286 = $285&255; + $287 = (5604 + ($286<<2)|0); + $288 = HEAP32[$287>>2]|0; + $289 = (_rol($288,24)|0); + $290 = ((($sb)) + 12|0); + HEAP32[$290>>2] = $289; + $291 = $r; + $292 = $0; + $293 = ((($292)) + 240|0); + $294 = (($293) + ($291<<4)|0); + $295 = HEAP32[$294>>2]|0; + $296 = HEAP32[$sb>>2]|0; + $297 = $295 ^ $296; + HEAP32[$sa>>2] = $297; + $298 = ((($sa)) + 4|0); + $299 = HEAP32[$298>>2]|0; + $300 = $299 >>> 0; + $301 = $300&255; + $302 = $301&255; + $303 = (5604 + ($302<<2)|0); + $304 = HEAP32[$303>>2]|0; + $305 = (_rol($304,0)|0); + $306 = ((($sb)) + 4|0); + $307 = HEAP32[$306>>2]|0; + $308 = $307 ^ $305; + HEAP32[$306>>2] = $308; + $309 = ((($sa)) + 4|0); + $310 = HEAP32[$309>>2]|0; + $311 = $310 >>> 8; + $312 = $311&255; + $313 = $312&255; + $314 = (5604 + ($313<<2)|0); + $315 = HEAP32[$314>>2]|0; + $316 = (_rol($315,8)|0); + $317 = ((($sb)) + 8|0); + $318 = HEAP32[$317>>2]|0; + $319 = $318 ^ $316; + HEAP32[$317>>2] = $319; + $320 = ((($sa)) + 4|0); + $321 = HEAP32[$320>>2]|0; + $322 = $321 >>> 16; + $323 = $322&255; + $324 = $323&255; + $325 = (5604 + ($324<<2)|0); + $326 = HEAP32[$325>>2]|0; + $327 = (_rol($326,16)|0); + $328 = ((($sb)) + 12|0); + $329 = HEAP32[$328>>2]|0; + $330 = $329 ^ $327; + HEAP32[$328>>2] = $330; + $331 = ((($sa)) + 4|0); + $332 = HEAP32[$331>>2]|0; + $333 = $332 >>> 24; + $334 = $333&255; + $335 = $334&255; + $336 = (5604 + ($335<<2)|0); + $337 = HEAP32[$336>>2]|0; + $338 = (_rol($337,24)|0); + $339 = HEAP32[$sa>>2]|0; + $340 = $339 ^ $338; + HEAP32[$sa>>2] = $340; + $341 = $r; + $342 = $0; + $343 = ((($342)) + 240|0); + $344 = (($343) + ($341<<4)|0); + $345 = ((($344)) + 4|0); + $346 = HEAP32[$345>>2]|0; + $347 = ((($sb)) + 4|0); + $348 = HEAP32[$347>>2]|0; + $349 = $346 ^ $348; + $350 = ((($sa)) + 4|0); + HEAP32[$350>>2] = $349; + $351 = ((($sa)) + 8|0); + $352 = HEAP32[$351>>2]|0; + $353 = $352 >>> 0; + $354 = $353&255; + $355 = $354&255; + $356 = (5604 + ($355<<2)|0); + $357 = HEAP32[$356>>2]|0; + $358 = (_rol($357,0)|0); + $359 = ((($sb)) + 8|0); + $360 = HEAP32[$359>>2]|0; + $361 = $360 ^ $358; + HEAP32[$359>>2] = $361; + $362 = ((($sa)) + 8|0); + $363 = HEAP32[$362>>2]|0; + $364 = $363 >>> 8; + $365 = $364&255; + $366 = $365&255; + $367 = (5604 + ($366<<2)|0); + $368 = HEAP32[$367>>2]|0; + $369 = (_rol($368,8)|0); + $370 = ((($sb)) + 12|0); + $371 = HEAP32[$370>>2]|0; + $372 = $371 ^ $369; + HEAP32[$370>>2] = $372; + $373 = ((($sa)) + 8|0); + $374 = HEAP32[$373>>2]|0; + $375 = $374 >>> 16; + $376 = $375&255; + $377 = $376&255; + $378 = (5604 + ($377<<2)|0); + $379 = HEAP32[$378>>2]|0; + $380 = (_rol($379,16)|0); + $381 = HEAP32[$sa>>2]|0; + $382 = $381 ^ $380; + HEAP32[$sa>>2] = $382; + $383 = ((($sa)) + 8|0); + $384 = HEAP32[$383>>2]|0; + $385 = $384 >>> 24; + $386 = $385&255; + $387 = $386&255; + $388 = (5604 + ($387<<2)|0); + $389 = HEAP32[$388>>2]|0; + $390 = (_rol($389,24)|0); + $391 = ((($sa)) + 4|0); + $392 = HEAP32[$391>>2]|0; + $393 = $392 ^ $390; + HEAP32[$391>>2] = $393; + $394 = $r; + $395 = $0; + $396 = ((($395)) + 240|0); + $397 = (($396) + ($394<<4)|0); + $398 = ((($397)) + 8|0); + $399 = HEAP32[$398>>2]|0; + $400 = ((($sb)) + 8|0); + $401 = HEAP32[$400>>2]|0; + $402 = $399 ^ $401; + $403 = ((($sa)) + 8|0); + HEAP32[$403>>2] = $402; + $404 = ((($sa)) + 12|0); + $405 = HEAP32[$404>>2]|0; + $406 = $405 >>> 0; + $407 = $406&255; + $408 = $407&255; + $409 = (5604 + ($408<<2)|0); + $410 = HEAP32[$409>>2]|0; + $411 = (_rol($410,0)|0); + $412 = ((($sb)) + 12|0); + $413 = HEAP32[$412>>2]|0; + $414 = $413 ^ $411; + HEAP32[$412>>2] = $414; + $415 = ((($sa)) + 12|0); + $416 = HEAP32[$415>>2]|0; + $417 = $416 >>> 8; + $418 = $417&255; + $419 = $418&255; + $420 = (5604 + ($419<<2)|0); + $421 = HEAP32[$420>>2]|0; + $422 = (_rol($421,8)|0); + $423 = HEAP32[$sa>>2]|0; + $424 = $423 ^ $422; + HEAP32[$sa>>2] = $424; + $425 = ((($sa)) + 12|0); + $426 = HEAP32[$425>>2]|0; + $427 = $426 >>> 16; + $428 = $427&255; + $429 = $428&255; + $430 = (5604 + ($429<<2)|0); + $431 = HEAP32[$430>>2]|0; + $432 = (_rol($431,16)|0); + $433 = ((($sa)) + 4|0); + $434 = HEAP32[$433>>2]|0; + $435 = $434 ^ $432; + HEAP32[$433>>2] = $435; + $436 = ((($sa)) + 12|0); + $437 = HEAP32[$436>>2]|0; + $438 = $437 >>> 24; + $439 = $438&255; + $440 = $439&255; + $441 = (5604 + ($440<<2)|0); + $442 = HEAP32[$441>>2]|0; + $443 = (_rol($442,24)|0); + $444 = ((($sa)) + 8|0); + $445 = HEAP32[$444>>2]|0; + $446 = $445 ^ $443; + HEAP32[$444>>2] = $446; + $447 = $r; + $448 = $0; + $449 = ((($448)) + 240|0); + $450 = (($449) + ($447<<4)|0); + $451 = ((($450)) + 12|0); + $452 = HEAP32[$451>>2]|0; + $453 = ((($sb)) + 12|0); + $454 = HEAP32[$453>>2]|0; + $455 = $452 ^ $454; + $456 = ((($sa)) + 12|0); + HEAP32[$456>>2] = $455; + $457 = $r; + $458 = (($457) + -1)|0; + $r = $458; + } + $459 = $0; + $460 = ((($459)) + 240|0); + $461 = ((($460)) + 16|0); + $462 = HEAP32[$461>>2]|0; + $463 = HEAP32[$sb>>2]|0; + $464 = $462 ^ $463; + HEAP32[$sa>>2] = $464; + $465 = ((($sa)) + 4|0); + $466 = HEAP32[$465>>2]|0; + $467 = $466 >>> 0; + $468 = $467&255; + $469 = $468&255; + $470 = (5604 + ($469<<2)|0); + $471 = HEAP32[$470>>2]|0; + $472 = (_rol($471,0)|0); + $473 = ((($sb)) + 4|0); + $474 = HEAP32[$473>>2]|0; + $475 = $474 ^ $472; + HEAP32[$473>>2] = $475; + $476 = ((($sa)) + 4|0); + $477 = HEAP32[$476>>2]|0; + $478 = $477 >>> 8; + $479 = $478&255; + $480 = $479&255; + $481 = (5604 + ($480<<2)|0); + $482 = HEAP32[$481>>2]|0; + $483 = (_rol($482,8)|0); + $484 = ((($sb)) + 8|0); + $485 = HEAP32[$484>>2]|0; + $486 = $485 ^ $483; + HEAP32[$484>>2] = $486; + $487 = ((($sa)) + 4|0); + $488 = HEAP32[$487>>2]|0; + $489 = $488 >>> 16; + $490 = $489&255; + $491 = $490&255; + $492 = (5604 + ($491<<2)|0); + $493 = HEAP32[$492>>2]|0; + $494 = (_rol($493,16)|0); + $495 = ((($sb)) + 12|0); + $496 = HEAP32[$495>>2]|0; + $497 = $496 ^ $494; + HEAP32[$495>>2] = $497; + $498 = ((($sa)) + 4|0); + $499 = HEAP32[$498>>2]|0; + $500 = $499 >>> 24; + $501 = $500&255; + $502 = $501&255; + $503 = (5604 + ($502<<2)|0); + $504 = HEAP32[$503>>2]|0; + $505 = (_rol($504,24)|0); + $506 = HEAP32[$sa>>2]|0; + $507 = $506 ^ $505; + HEAP32[$sa>>2] = $507; + $508 = $0; + $509 = ((($508)) + 240|0); + $510 = ((($509)) + 16|0); + $511 = ((($510)) + 4|0); + $512 = HEAP32[$511>>2]|0; + $513 = ((($sb)) + 4|0); + $514 = HEAP32[$513>>2]|0; + $515 = $512 ^ $514; + $516 = ((($sa)) + 4|0); + HEAP32[$516>>2] = $515; + $517 = ((($sa)) + 8|0); + $518 = HEAP32[$517>>2]|0; + $519 = $518 >>> 0; + $520 = $519&255; + $521 = $520&255; + $522 = (5604 + ($521<<2)|0); + $523 = HEAP32[$522>>2]|0; + $524 = (_rol($523,0)|0); + $525 = ((($sb)) + 8|0); + $526 = HEAP32[$525>>2]|0; + $527 = $526 ^ $524; + HEAP32[$525>>2] = $527; + $528 = ((($sa)) + 8|0); + $529 = HEAP32[$528>>2]|0; + $530 = $529 >>> 8; + $531 = $530&255; + $532 = $531&255; + $533 = (5604 + ($532<<2)|0); + $534 = HEAP32[$533>>2]|0; + $535 = (_rol($534,8)|0); + $536 = ((($sb)) + 12|0); + $537 = HEAP32[$536>>2]|0; + $538 = $537 ^ $535; + HEAP32[$536>>2] = $538; + $539 = ((($sa)) + 8|0); + $540 = HEAP32[$539>>2]|0; + $541 = $540 >>> 16; + $542 = $541&255; + $543 = $542&255; + $544 = (5604 + ($543<<2)|0); + $545 = HEAP32[$544>>2]|0; + $546 = (_rol($545,16)|0); + $547 = HEAP32[$sa>>2]|0; + $548 = $547 ^ $546; + HEAP32[$sa>>2] = $548; + $549 = ((($sa)) + 8|0); + $550 = HEAP32[$549>>2]|0; + $551 = $550 >>> 24; + $552 = $551&255; + $553 = $552&255; + $554 = (5604 + ($553<<2)|0); + $555 = HEAP32[$554>>2]|0; + $556 = (_rol($555,24)|0); + $557 = ((($sa)) + 4|0); + $558 = HEAP32[$557>>2]|0; + $559 = $558 ^ $556; + HEAP32[$557>>2] = $559; + $560 = $0; + $561 = ((($560)) + 240|0); + $562 = ((($561)) + 16|0); + $563 = ((($562)) + 8|0); + $564 = HEAP32[$563>>2]|0; + $565 = ((($sb)) + 8|0); + $566 = HEAP32[$565>>2]|0; + $567 = $564 ^ $566; + $568 = ((($sa)) + 8|0); + HEAP32[$568>>2] = $567; + $569 = ((($sa)) + 12|0); + $570 = HEAP32[$569>>2]|0; + $571 = $570 >>> 0; + $572 = $571&255; + $573 = $572&255; + $574 = (5604 + ($573<<2)|0); + $575 = HEAP32[$574>>2]|0; + $576 = (_rol($575,0)|0); + $577 = ((($sb)) + 12|0); + $578 = HEAP32[$577>>2]|0; + $579 = $578 ^ $576; + HEAP32[$577>>2] = $579; + $580 = ((($sa)) + 12|0); + $581 = HEAP32[$580>>2]|0; + $582 = $581 >>> 8; + $583 = $582&255; + $584 = $583&255; + $585 = (5604 + ($584<<2)|0); + $586 = HEAP32[$585>>2]|0; + $587 = (_rol($586,8)|0); + $588 = HEAP32[$sa>>2]|0; + $589 = $588 ^ $587; + HEAP32[$sa>>2] = $589; + $590 = ((($sa)) + 12|0); + $591 = HEAP32[$590>>2]|0; + $592 = $591 >>> 16; + $593 = $592&255; + $594 = $593&255; + $595 = (5604 + ($594<<2)|0); + $596 = HEAP32[$595>>2]|0; + $597 = (_rol($596,16)|0); + $598 = ((($sa)) + 4|0); + $599 = HEAP32[$598>>2]|0; + $600 = $599 ^ $597; + HEAP32[$598>>2] = $600; + $601 = ((($sa)) + 12|0); + $602 = HEAP32[$601>>2]|0; + $603 = $602 >>> 24; + $604 = $603&255; + $605 = $604&255; + $606 = (5604 + ($605<<2)|0); + $607 = HEAP32[$606>>2]|0; + $608 = (_rol($607,24)|0); + $609 = ((($sa)) + 8|0); + $610 = HEAP32[$609>>2]|0; + $611 = $610 ^ $608; + HEAP32[$609>>2] = $611; + $612 = $0; + $613 = ((($612)) + 240|0); + $614 = ((($613)) + 16|0); + $615 = ((($614)) + 12|0); + $616 = HEAP32[$615>>2]|0; + $617 = ((($sb)) + 12|0); + $618 = HEAP32[$617>>2]|0; + $619 = $616 ^ $618; + $620 = ((($sa)) + 12|0); + HEAP32[$620>>2] = $619; + $621 = HEAP32[$sa>>2]|0; + $622 = $621 >>> 0; + $623 = $622&255; + $624 = $623&255; + $625 = ((6628) + ($624)|0); + $626 = HEAP8[$625>>0]|0; + $627 = $626&255; + $628 = $627 << 0; + HEAP32[$sb>>2] = $628; + $629 = HEAP32[$sa>>2]|0; + $630 = $629 >>> 8; + $631 = $630&255; + $632 = $631&255; + $633 = ((6628) + ($632)|0); + $634 = HEAP8[$633>>0]|0; + $635 = $634&255; + $636 = $635 << 8; + $637 = ((($sb)) + 4|0); + HEAP32[$637>>2] = $636; + $638 = HEAP32[$sa>>2]|0; + $639 = $638 >>> 16; + $640 = $639&255; + $641 = $640&255; + $642 = ((6628) + ($641)|0); + $643 = HEAP8[$642>>0]|0; + $644 = $643&255; + $645 = $644 << 16; + $646 = ((($sb)) + 8|0); + HEAP32[$646>>2] = $645; + $647 = HEAP32[$sa>>2]|0; + $648 = $647 >>> 24; + $649 = $648&255; + $650 = $649&255; + $651 = ((6628) + ($650)|0); + $652 = HEAP8[$651>>0]|0; + $653 = $652&255; + $654 = $653 << 24; + $655 = ((($sb)) + 12|0); + HEAP32[$655>>2] = $654; + $656 = HEAP32[$sb>>2]|0; + $657 = $0; + $658 = ((($657)) + 240|0); + $659 = HEAP32[$658>>2]|0; + $660 = $656 ^ $659; + HEAP32[$sa>>2] = $660; + $661 = ((($sa)) + 4|0); + $662 = HEAP32[$661>>2]|0; + $663 = $662 >>> 0; + $664 = $663&255; + $665 = $664&255; + $666 = ((6628) + ($665)|0); + $667 = HEAP8[$666>>0]|0; + $668 = $667&255; + $669 = $668 << 0; + $670 = ((($sb)) + 4|0); + $671 = HEAP32[$670>>2]|0; + $672 = $671 ^ $669; + HEAP32[$670>>2] = $672; + $673 = ((($sa)) + 4|0); + $674 = HEAP32[$673>>2]|0; + $675 = $674 >>> 8; + $676 = $675&255; + $677 = $676&255; + $678 = ((6628) + ($677)|0); + $679 = HEAP8[$678>>0]|0; + $680 = $679&255; + $681 = $680 << 8; + $682 = ((($sb)) + 8|0); + $683 = HEAP32[$682>>2]|0; + $684 = $683 ^ $681; + HEAP32[$682>>2] = $684; + $685 = ((($sa)) + 4|0); + $686 = HEAP32[$685>>2]|0; + $687 = $686 >>> 16; + $688 = $687&255; + $689 = $688&255; + $690 = ((6628) + ($689)|0); + $691 = HEAP8[$690>>0]|0; + $692 = $691&255; + $693 = $692 << 16; + $694 = ((($sb)) + 12|0); + $695 = HEAP32[$694>>2]|0; + $696 = $695 ^ $693; + HEAP32[$694>>2] = $696; + $697 = ((($sa)) + 4|0); + $698 = HEAP32[$697>>2]|0; + $699 = $698 >>> 24; + $700 = $699&255; + $701 = $700&255; + $702 = ((6628) + ($701)|0); + $703 = HEAP8[$702>>0]|0; + $704 = $703&255; + $705 = $704 << 24; + $706 = HEAP32[$sa>>2]|0; + $707 = $706 ^ $705; + HEAP32[$sa>>2] = $707; + $708 = ((($sb)) + 4|0); + $709 = HEAP32[$708>>2]|0; + $710 = $0; + $711 = ((($710)) + 240|0); + $712 = ((($711)) + 4|0); + $713 = HEAP32[$712>>2]|0; + $714 = $709 ^ $713; + $715 = ((($sa)) + 4|0); + HEAP32[$715>>2] = $714; + $716 = ((($sa)) + 8|0); + $717 = HEAP32[$716>>2]|0; + $718 = $717 >>> 0; + $719 = $718&255; + $720 = $719&255; + $721 = ((6628) + ($720)|0); + $722 = HEAP8[$721>>0]|0; + $723 = $722&255; + $724 = $723 << 0; + $725 = ((($sb)) + 8|0); + $726 = HEAP32[$725>>2]|0; + $727 = $726 ^ $724; + HEAP32[$725>>2] = $727; + $728 = ((($sa)) + 8|0); + $729 = HEAP32[$728>>2]|0; + $730 = $729 >>> 8; + $731 = $730&255; + $732 = $731&255; + $733 = ((6628) + ($732)|0); + $734 = HEAP8[$733>>0]|0; + $735 = $734&255; + $736 = $735 << 8; + $737 = ((($sb)) + 12|0); + $738 = HEAP32[$737>>2]|0; + $739 = $738 ^ $736; + HEAP32[$737>>2] = $739; + $740 = ((($sa)) + 8|0); + $741 = HEAP32[$740>>2]|0; + $742 = $741 >>> 16; + $743 = $742&255; + $744 = $743&255; + $745 = ((6628) + ($744)|0); + $746 = HEAP8[$745>>0]|0; + $747 = $746&255; + $748 = $747 << 16; + $749 = HEAP32[$sa>>2]|0; + $750 = $749 ^ $748; + HEAP32[$sa>>2] = $750; + $751 = ((($sa)) + 8|0); + $752 = HEAP32[$751>>2]|0; + $753 = $752 >>> 24; + $754 = $753&255; + $755 = $754&255; + $756 = ((6628) + ($755)|0); + $757 = HEAP8[$756>>0]|0; + $758 = $757&255; + $759 = $758 << 24; + $760 = ((($sa)) + 4|0); + $761 = HEAP32[$760>>2]|0; + $762 = $761 ^ $759; + HEAP32[$760>>2] = $762; + $763 = ((($sb)) + 8|0); + $764 = HEAP32[$763>>2]|0; + $765 = $0; + $766 = ((($765)) + 240|0); + $767 = ((($766)) + 8|0); + $768 = HEAP32[$767>>2]|0; + $769 = $764 ^ $768; + $770 = ((($sa)) + 8|0); + HEAP32[$770>>2] = $769; + $771 = ((($sa)) + 12|0); + $772 = HEAP32[$771>>2]|0; + $773 = $772 >>> 0; + $774 = $773&255; + $775 = $774&255; + $776 = ((6628) + ($775)|0); + $777 = HEAP8[$776>>0]|0; + $778 = $777&255; + $779 = $778 << 0; + $780 = ((($sb)) + 12|0); + $781 = HEAP32[$780>>2]|0; + $782 = $781 ^ $779; + HEAP32[$780>>2] = $782; + $783 = ((($sa)) + 12|0); + $784 = HEAP32[$783>>2]|0; + $785 = $784 >>> 8; + $786 = $785&255; + $787 = $786&255; + $788 = ((6628) + ($787)|0); + $789 = HEAP8[$788>>0]|0; + $790 = $789&255; + $791 = $790 << 8; + $792 = HEAP32[$sa>>2]|0; + $793 = $792 ^ $791; + HEAP32[$sa>>2] = $793; + $794 = ((($sa)) + 12|0); + $795 = HEAP32[$794>>2]|0; + $796 = $795 >>> 16; + $797 = $796&255; + $798 = $797&255; + $799 = ((6628) + ($798)|0); + $800 = HEAP8[$799>>0]|0; + $801 = $800&255; + $802 = $801 << 16; + $803 = ((($sa)) + 4|0); + $804 = HEAP32[$803>>2]|0; + $805 = $804 ^ $802; + HEAP32[$803>>2] = $805; + $806 = ((($sa)) + 12|0); + $807 = HEAP32[$806>>2]|0; + $808 = $807 >>> 24; + $809 = $808&255; + $810 = $809&255; + $811 = ((6628) + ($810)|0); + $812 = HEAP8[$811>>0]|0; + $813 = $812&255; + $814 = $813 << 24; + $815 = ((($sa)) + 8|0); + $816 = HEAP32[$815>>2]|0; + $817 = $816 ^ $814; + HEAP32[$815>>2] = $817; + $818 = ((($sb)) + 12|0); + $819 = HEAP32[$818>>2]|0; + $820 = $0; + $821 = ((($820)) + 240|0); + $822 = ((($821)) + 12|0); + $823 = HEAP32[$822>>2]|0; + $824 = $819 ^ $823; + $825 = ((($sa)) + 12|0); + HEAP32[$825>>2] = $824; + $826 = $1; + $827 = HEAP32[$sa>>2]|0; + _buf_put_le32($826,$827); + $828 = $1; + $829 = ((($828)) + 4|0); + $830 = ((($sa)) + 4|0); + $831 = HEAP32[$830>>2]|0; + _buf_put_le32($829,$831); + $832 = $1; + $833 = ((($832)) + 8|0); + $834 = ((($sa)) + 8|0); + $835 = HEAP32[$834>>2]|0; + _buf_put_le32($833,$835); + $836 = $1; + $837 = ((($836)) + 12|0); + $838 = ((($sa)) + 12|0); + $839 = HEAP32[$838>>2]|0; + _buf_put_le32($837,$839); + STACKTOP = sp;return 64; +} +function _run_selftests_1176($algo,$extended,$report) { + $algo = $algo|0; + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $algo; + $1 = $extended; + $2 = $report; + $3 = $0; + switch ($3|0) { + case 7: { + $4 = $1; + $5 = $2; + $6 = (_selftest_fips_128($4,$5)|0); + $ec = $6; + break; + } + case 8: { + $7 = $1; + $8 = $2; + $9 = (_selftest_fips_192($7,$8)|0); + $ec = $9; + break; + } + case 9: { + $10 = $1; + $11 = $2; + $12 = (_selftest_fips_256($10,$11)|0); + $ec = $12; + break; + } + default: { + $ec = 12; + } + } + $13 = $ec; + STACKTOP = sp;return ($13|0); +} +function _selftest_fips_128($extended,$report) { + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $errtxt = 0, $what = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $extended; + $2 = $report; + $what = 49849; + $3 = (_selftest_basic_128()|0); + $errtxt = $3; + $4 = $errtxt; + $5 = ($4|0)!=(0|0); + do { + if (!($5)) { + $6 = $1; + $7 = ($6|0)!=(0); + if ($7) { + $what = 38536; + $8 = (_selftest_fips_128_38a(2)|0); + $errtxt = $8; + $9 = $errtxt; + $10 = ($9|0)!=(0|0); + if ($10) { + break; + } + $what = 38653; + $11 = (_selftest_fips_128_38a(5)|0); + $errtxt = $11; + $12 = $errtxt; + $13 = ($12|0)!=(0|0); + if ($13) { + break; + } + } + $0 = 0; + $19 = $0; + STACKTOP = sp;return ($19|0); + } + } while(0); + $14 = $2; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = $2; + $17 = $what; + $18 = $errtxt; + FUNCTION_TABLE_viiii[$16 & 63](38657,7,$17,$18); + } + $0 = 50; + $19 = $0; + STACKTOP = sp;return ($19|0); +} +function _selftest_fips_128_38a($requested_mode) { + $requested_mode = $requested_mode|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; + var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $err = 0, $hddec = 0, $hdenc = 0, $idx = 0, $scratch = 0, $tvi = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $scratch = sp + 32|0; + $hdenc = sp + 4|0; + $hddec = sp; + $1 = $requested_mode; + HEAP32[$hdenc>>2] = 0; + HEAP32[$hddec>>2] = 0; + $tvi = 0; + while(1) { + $2 = $tvi; + $3 = ($2>>>0)<(2); + if (!($3)) { + break; + } + $4 = $tvi; + $5 = (7004 + (($4*164)|0)|0); + $6 = HEAP32[$5>>2]|0; + $7 = $1; + $8 = ($6|0)==($7|0); + if ($8) { + break; + } + $9 = $tvi; + $10 = (($9) + 1)|0; + $tvi = $10; + } + $11 = $tvi; + $12 = ($11|0)==(2); + if ($12) { + $13 = HEAP32[$hdenc>>2]|0; + __gcry_cipher_close($13); + $14 = HEAP32[$hddec>>2]|0; + __gcry_cipher_close($14); + $0 = 38540; + $108 = $0; + STACKTOP = sp;return ($108|0); + } + $15 = $tvi; + $16 = (7004 + (($15*164)|0)|0); + $17 = HEAP32[$16>>2]|0; + $18 = (__gcry_cipher_open($hdenc,7,$17,0)|0); + $err = $18; + $19 = $err; + $20 = ($19|0)!=(0); + if ($20) { + $21 = HEAP32[$hdenc>>2]|0; + __gcry_cipher_close($21); + $22 = HEAP32[$hddec>>2]|0; + __gcry_cipher_close($22); + $0 = 38567; + $108 = $0; + STACKTOP = sp;return ($108|0); + } + $23 = $tvi; + $24 = (7004 + (($23*164)|0)|0); + $25 = HEAP32[$24>>2]|0; + $26 = (__gcry_cipher_open($hddec,7,$25,0)|0); + $err = $26; + $27 = $err; + $28 = ($27|0)!=(0); + $29 = HEAP32[$hdenc>>2]|0; + if ($28) { + __gcry_cipher_close($29); + $30 = HEAP32[$hddec>>2]|0; + __gcry_cipher_close($30); + $0 = 38567; + $108 = $0; + STACKTOP = sp;return ($108|0); + } + $31 = $tvi; + $32 = (7004 + (($31*164)|0)|0); + $33 = ((($32)) + 4|0); + $34 = (__gcry_cipher_setkey($29,$33,16)|0); + $err = $34; + $35 = $err; + $36 = ($35|0)!=(0); + if (!($36)) { + $37 = HEAP32[$hddec>>2]|0; + $38 = $tvi; + $39 = (7004 + (($38*164)|0)|0); + $40 = ((($39)) + 4|0); + $41 = (__gcry_cipher_setkey($37,$40,16)|0); + $err = $41; + } + $42 = $err; + $43 = ($42|0)!=(0); + $44 = HEAP32[$hdenc>>2]|0; + if ($43) { + __gcry_cipher_close($44); + $45 = HEAP32[$hddec>>2]|0; + __gcry_cipher_close($45); + $0 = 38572; + $108 = $0; + STACKTOP = sp;return ($108|0); + } + $46 = $tvi; + $47 = (7004 + (($46*164)|0)|0); + $48 = ((($47)) + 20|0); + $49 = (__gcry_cipher_setiv($44,$48,16)|0); + $err = $49; + $50 = $err; + $51 = ($50|0)!=(0); + if (!($51)) { + $52 = HEAP32[$hddec>>2]|0; + $53 = $tvi; + $54 = (7004 + (($53*164)|0)|0); + $55 = ((($54)) + 20|0); + $56 = (__gcry_cipher_setiv($52,$55,16)|0); + $err = $56; + } + $57 = $err; + $58 = ($57|0)!=(0); + if ($58) { + $59 = HEAP32[$hdenc>>2]|0; + __gcry_cipher_close($59); + $60 = HEAP32[$hddec>>2]|0; + __gcry_cipher_close($60); + $0 = 38580; + $108 = $0; + STACKTOP = sp;return ($108|0); + } + $idx = 0; + while(1) { + $61 = $idx; + $62 = ($61>>>0)<(4); + $63 = HEAP32[$hdenc>>2]|0; + if (!($62)) { + label = 30; + break; + } + $64 = $idx; + $65 = $tvi; + $66 = (7004 + (($65*164)|0)|0); + $67 = ((($66)) + 36|0); + $68 = (($67) + ($64<<5)|0); + $69 = (__gcry_cipher_encrypt($63,$scratch,16,$68,16)|0); + $err = $69; + $70 = $err; + $71 = ($70|0)!=(0); + if ($71) { + label = 22; + break; + } + $74 = $idx; + $75 = $tvi; + $76 = (7004 + (($75*164)|0)|0); + $77 = ((($76)) + 36|0); + $78 = (($77) + ($74<<5)|0); + $79 = ((($78)) + 16|0); + $80 = (_memcmp($scratch,$79,16)|0); + $81 = ($80|0)!=(0); + if ($81) { + label = 24; + break; + } + $84 = HEAP32[$hddec>>2]|0; + $85 = $idx; + $86 = $tvi; + $87 = (7004 + (($86*164)|0)|0); + $88 = ((($87)) + 36|0); + $89 = (($88) + ($85<<5)|0); + $90 = ((($89)) + 16|0); + $91 = (__gcry_cipher_decrypt($84,$scratch,16,$90,16)|0); + $err = $91; + $92 = $err; + $93 = ($92|0)!=(0); + if ($93) { + label = 26; + break; + } + $96 = $idx; + $97 = $tvi; + $98 = (7004 + (($97*164)|0)|0); + $99 = ((($98)) + 36|0); + $100 = (($99) + ($96<<5)|0); + $101 = (_memcmp($scratch,$100,16)|0); + $102 = ($101|0)!=(0); + if ($102) { + label = 28; + break; + } + $105 = $idx; + $106 = (($105) + 1)|0; + $idx = $106; + } + if ((label|0) == 22) { + $72 = HEAP32[$hdenc>>2]|0; + __gcry_cipher_close($72); + $73 = HEAP32[$hddec>>2]|0; + __gcry_cipher_close($73); + $0 = 38587; + $108 = $0; + STACKTOP = sp;return ($108|0); + } + else if ((label|0) == 24) { + $82 = HEAP32[$hdenc>>2]|0; + __gcry_cipher_close($82); + $83 = HEAP32[$hddec>>2]|0; + __gcry_cipher_close($83); + $0 = 38603; + $108 = $0; + STACKTOP = sp;return ($108|0); + } + else if ((label|0) == 26) { + $94 = HEAP32[$hdenc>>2]|0; + __gcry_cipher_close($94); + $95 = HEAP32[$hddec>>2]|0; + __gcry_cipher_close($95); + $0 = 38620; + $108 = $0; + STACKTOP = sp;return ($108|0); + } + else if ((label|0) == 28) { + $103 = HEAP32[$hdenc>>2]|0; + __gcry_cipher_close($103); + $104 = HEAP32[$hddec>>2]|0; + __gcry_cipher_close($104); + $0 = 38636; + $108 = $0; + STACKTOP = sp;return ($108|0); + } + else if ((label|0) == 30) { + __gcry_cipher_close($63); + $107 = HEAP32[$hddec>>2]|0; + __gcry_cipher_close($107); + $0 = 0; + $108 = $0; + STACKTOP = sp;return ($108|0); + } + return (0)|0; +} +function _selftest_fips_192($extended,$report) { + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $errtxt = 0, $what = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $extended; + $2 = $report; + $what = 49849; + $3 = (_selftest_basic_192()|0); + $errtxt = $3; + $4 = $errtxt; + $5 = ($4|0)!=(0|0); + if (!($5)) { + $0 = 0; + $11 = $0; + STACKTOP = sp;return ($11|0); + } + $6 = $2; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = $2; + $9 = $what; + $10 = $errtxt; + FUNCTION_TABLE_viiii[$8 & 63](38657,8,$9,$10); + } + $0 = 50; + $11 = $0; + STACKTOP = sp;return ($11|0); +} +function _selftest_fips_256($extended,$report) { + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $errtxt = 0, $what = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $extended; + $2 = $report; + $what = 49849; + $3 = (_selftest_basic_256()|0); + $errtxt = $3; + $4 = $errtxt; + $5 = ($4|0)!=(0|0); + if (!($5)) { + $0 = 0; + $11 = $0; + STACKTOP = sp;return ($11|0); + } + $6 = $2; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = $2; + $9 = $what; + $10 = $errtxt; + FUNCTION_TABLE_viiii[$8 & 63](38657,9,$9,$10); + } + $0 = 50; + $11 = $0; + STACKTOP = sp;return ($11|0); +} +function __gcry_aes_cfb_enc($context,$iv,$outbuf_arg,$inbuf_arg,$nblocks) { + $context = $context|0; + $iv = $iv|0; + $outbuf_arg = $outbuf_arg|0; + $inbuf_arg = $inbuf_arg|0; + $nblocks = $nblocks|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $burn_depth = 0, $ctx = 0; + var $encrypt_fn = 0, $inbuf = 0, $outbuf = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $iv; + $2 = $outbuf_arg; + $3 = $inbuf_arg; + $4 = $nblocks; + $5 = $0; + $ctx = $5; + $6 = $2; + $outbuf = $6; + $7 = $3; + $inbuf = $7; + $burn_depth = 0; + $8 = $ctx; + $9 = ((($8)) + 496|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = $ctx; + $13 = ((($12)) + 496|0); + $14 = HEAP32[$13>>2]|0; + FUNCTION_TABLE_v[$14 & 127](); + } + $15 = $ctx; + $16 = ((($15)) + 488|0); + $17 = HEAP32[$16>>2]|0; + $encrypt_fn = $17; + while(1) { + $18 = $4; + $19 = ($18|0)!=(0); + if (!($19)) { + break; + } + $20 = $encrypt_fn; + $21 = $ctx; + $22 = $1; + $23 = $1; + $24 = (FUNCTION_TABLE_iiii[$20 & 127]($21,$22,$23)|0); + $burn_depth = $24; + $25 = $outbuf; + $26 = $1; + $27 = $inbuf; + _buf_xor_2dst($25,$26,$27,16); + $28 = $outbuf; + $29 = ((($28)) + 16|0); + $outbuf = $29; + $30 = $inbuf; + $31 = ((($30)) + 16|0); + $inbuf = $31; + $32 = $4; + $33 = (($32) + -1)|0; + $4 = $33; + } + $34 = $burn_depth; + $35 = ($34|0)!=(0); + if (!($35)) { + STACKTOP = sp;return; + } + $36 = $burn_depth; + $37 = (($36) + 16)|0; + ___gcry_burn_stack($37); + ___gcry_burn_stack_dummy(); + STACKTOP = sp;return; +} +function _buf_xor_2dst($_dst1,$_dst2,$_src,$len) { + $_dst1 = $_dst1|0; + $_dst2 = $_dst2|0; + $_src = $_src|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst1 = 0, $dst2 = 0, $ldst1 = 0, $ldst2 = 0, $longmask = 0, $lsrc = 0, $src = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst1; + $1 = $_dst2; + $2 = $_src; + $3 = $len; + $4 = $0; + $dst1 = $4; + $5 = $1; + $dst2 = $5; + $6 = $2; + $src = $6; + $longmask = 3; + $7 = $src; + $8 = $7; + $9 = $dst1; + $10 = $9; + $11 = $8 | $10; + $12 = $dst2; + $13 = $12; + $14 = $11 | $13; + $15 = $14 & 3; + $16 = ($15|0)!=(0); + if (!($16)) { + $17 = $dst1; + $ldst1 = $17; + $18 = $dst2; + $ldst2 = $18; + $19 = $src; + $lsrc = $19; + while(1) { + $20 = $3; + $21 = ($20>>>0)>=(4); + if (!($21)) { + break; + } + $22 = $lsrc; + $23 = ((($22)) + 4|0); + $lsrc = $23; + $24 = HEAP32[$22>>2]|0; + $25 = $ldst2; + $26 = ((($25)) + 4|0); + $ldst2 = $26; + $27 = HEAP32[$25>>2]|0; + $28 = $27 ^ $24; + HEAP32[$25>>2] = $28; + $29 = $ldst1; + $30 = ((($29)) + 4|0); + $ldst1 = $30; + HEAP32[$29>>2] = $28; + $31 = $3; + $32 = (($31) - 4)|0; + $3 = $32; + } + $33 = $ldst1; + $dst1 = $33; + $34 = $ldst2; + $dst2 = $34; + $35 = $lsrc; + $src = $35; + } + while(1) { + $36 = $3; + $37 = ($36|0)!=(0); + if (!($37)) { + break; + } + $38 = $src; + $39 = ((($38)) + 1|0); + $src = $39; + $40 = HEAP8[$38>>0]|0; + $41 = $40&255; + $42 = $dst2; + $43 = ((($42)) + 1|0); + $dst2 = $43; + $44 = HEAP8[$42>>0]|0; + $45 = $44&255; + $46 = $45 ^ $41; + $47 = $46&255; + HEAP8[$42>>0] = $47; + $48 = $dst1; + $49 = ((($48)) + 1|0); + $dst1 = $49; + HEAP8[$48>>0] = $47; + $50 = $3; + $51 = (($50) + -1)|0; + $3 = $51; + } + STACKTOP = sp;return; +} +function __gcry_aes_cbc_enc($context,$iv,$outbuf_arg,$inbuf_arg,$nblocks,$cbc_mac) { + $context = $context|0; + $iv = $iv|0; + $outbuf_arg = $outbuf_arg|0; + $inbuf_arg = $inbuf_arg|0; + $nblocks = $nblocks|0; + $cbc_mac = $cbc_mac|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $burn_depth = 0, $ctx = 0, $encrypt_fn = 0, $inbuf = 0, $last_iv = 0, $outbuf = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $iv; + $2 = $outbuf_arg; + $3 = $inbuf_arg; + $4 = $nblocks; + $5 = $cbc_mac; + $6 = $0; + $ctx = $6; + $7 = $2; + $outbuf = $7; + $8 = $3; + $inbuf = $8; + $burn_depth = 0; + $9 = $ctx; + $10 = ((($9)) + 496|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)!=(0|0); + if ($12) { + $13 = $ctx; + $14 = ((($13)) + 496|0); + $15 = HEAP32[$14>>2]|0; + FUNCTION_TABLE_v[$15 & 127](); + } + $16 = $ctx; + $17 = ((($16)) + 488|0); + $18 = HEAP32[$17>>2]|0; + $encrypt_fn = $18; + $19 = $1; + $last_iv = $19; + while(1) { + $20 = $4; + $21 = ($20|0)!=(0); + if (!($21)) { + break; + } + $22 = $outbuf; + $23 = $inbuf; + $24 = $last_iv; + _buf_xor($22,$23,$24,16); + $25 = $encrypt_fn; + $26 = $ctx; + $27 = $outbuf; + $28 = $outbuf; + $29 = (FUNCTION_TABLE_iiii[$25 & 127]($26,$27,$28)|0); + $burn_depth = $29; + $30 = $outbuf; + $last_iv = $30; + $31 = $inbuf; + $32 = ((($31)) + 16|0); + $inbuf = $32; + $33 = $5; + $34 = ($33|0)!=(0); + if (!($34)) { + $35 = $outbuf; + $36 = ((($35)) + 16|0); + $outbuf = $36; + } + $37 = $4; + $38 = (($37) + -1)|0; + $4 = $38; + } + $39 = $last_iv; + $40 = $1; + $41 = ($39|0)!=($40|0); + if ($41) { + $42 = $1; + $43 = $last_iv; + _buf_cpy($42,$43,16); + } + $44 = $burn_depth; + $45 = ($44|0)!=(0); + if (!($45)) { + STACKTOP = sp;return; + } + $46 = $burn_depth; + $47 = (($46) + 16)|0; + ___gcry_burn_stack($47); + ___gcry_burn_stack_dummy(); + STACKTOP = sp;return; +} +function _buf_cpy($_dst,$_src,$len) { + $_dst = $_dst|0; + $_src = $_src|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst = 0, $ldst = 0, $longmask = 0, $lsrc = 0, $src = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst; + $1 = $_src; + $2 = $len; + $3 = $0; + $dst = $3; + $4 = $1; + $src = $4; + $longmask = 3; + $5 = $dst; + $6 = $5; + $7 = $src; + $8 = $7; + $9 = $6 | $8; + $10 = $9 & 3; + $11 = ($10|0)!=(0); + if (!($11)) { + $12 = $dst; + $ldst = $12; + $13 = $src; + $lsrc = $13; + while(1) { + $14 = $2; + $15 = ($14>>>0)>=(4); + if (!($15)) { + break; + } + $16 = $lsrc; + $17 = ((($16)) + 4|0); + $lsrc = $17; + $18 = HEAP32[$16>>2]|0; + $19 = $ldst; + $20 = ((($19)) + 4|0); + $ldst = $20; + HEAP32[$19>>2] = $18; + $21 = $2; + $22 = (($21) - 4)|0; + $2 = $22; + } + $23 = $ldst; + $dst = $23; + $24 = $lsrc; + $src = $24; + } + while(1) { + $25 = $2; + $26 = ($25|0)!=(0); + if (!($26)) { + break; + } + $27 = $src; + $28 = ((($27)) + 1|0); + $src = $28; + $29 = HEAP8[$27>>0]|0; + $30 = $dst; + $31 = ((($30)) + 1|0); + $dst = $31; + HEAP8[$30>>0] = $29; + $32 = $2; + $33 = (($32) + -1)|0; + $2 = $33; + } + STACKTOP = sp;return; +} +function __gcry_aes_ocb_crypt($c,$outbuf_arg,$inbuf_arg,$nblocks,$encrypt) { + $c = $c|0; + $outbuf_arg = $outbuf_arg|0; + $inbuf_arg = $inbuf_arg|0; + $nblocks = $nblocks|0; + $encrypt = $encrypt|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $burn_depth = 0, $ctx = 0, $decrypt_fn = 0, $encrypt_fn = 0, $i = 0, $i2 = 0, $inbuf = 0, $l = 0, $l4 = 0, $l_tmp = 0, $l_tmp1 = 0, $ntz = 0, $ntz3 = 0, $outbuf = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $l_tmp = sp + 16|0; + $i = sp + 40|0; + $l_tmp1 = sp; + $i2 = sp + 32|0; + $0 = $c; + $1 = $outbuf_arg; + $2 = $inbuf_arg; + $3 = $nblocks; + $4 = $encrypt; + $5 = $0; + $6 = ((($5)) + 496|0); + $ctx = $6; + $7 = $1; + $outbuf = $7; + $8 = $2; + $inbuf = $8; + $burn_depth = 0; + $9 = $4; + $10 = ($9|0)!=(0); + $11 = $ctx; + if ($10) { + $12 = ((($11)) + 496|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)!=(0|0); + if ($14) { + $15 = $ctx; + $16 = ((($15)) + 496|0); + $17 = HEAP32[$16>>2]|0; + FUNCTION_TABLE_v[$17 & 127](); + } + } else { + _check_decryption_preparation($11); + $18 = $ctx; + $19 = ((($18)) + 500|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)!=(0|0); + if ($21) { + $22 = $ctx; + $23 = ((($22)) + 500|0); + $24 = HEAP32[$23>>2]|0; + FUNCTION_TABLE_v[$24 & 127](); + } + } + $25 = $4; + $26 = ($25|0)!=(0); + $27 = $ctx; + L7: do { + if ($26) { + $28 = ((($27)) + 488|0); + $29 = HEAP32[$28>>2]|0; + $encrypt_fn = $29; + while(1) { + $30 = $3; + $31 = ($30|0)!=(0); + if (!($31)) { + break L7; + } + $32 = $0; + $33 = ((($32)) + 128|0); + $34 = ((($33)) + 336|0); + $35 = $34; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = (($35) + 4)|0; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = (_i64Add(($37|0),($40|0),1,0)|0); + $42 = tempRet0; + $43 = $34; + $44 = $43; + HEAP32[$44>>2] = $41; + $45 = (($43) + 4)|0; + $46 = $45; + HEAP32[$46>>2] = $42; + $47 = $i; + $48 = $47; + HEAP32[$48>>2] = $41; + $49 = (($47) + 4)|0; + $50 = $49; + HEAP32[$50>>2] = $42; + $51 = $i; + $52 = $51; + $53 = HEAP32[$52>>2]|0; + $54 = (($51) + 4)|0; + $55 = $54; + $56 = HEAP32[$55>>2]|0; + $57 = (__gcry_ctz64($53,$56)|0); + $ntz = $57; + $58 = $ntz; + $59 = ($58>>>0)<(16); + if ($59) { + $60 = $ntz; + $61 = $0; + $62 = ((($61)) + 128|0); + $63 = ((($62)) + 32|0); + $64 = (($63) + ($60<<4)|0); + $l = $64; + } else { + $65 = $0; + $66 = $i; + $67 = $66; + $68 = HEAP32[$67>>2]|0; + $69 = (($66) + 4)|0; + $70 = $69; + $71 = HEAP32[$70>>2]|0; + $72 = (__gcry_cipher_ocb_get_l($65,$l_tmp,$68,$71)|0); + $l = $72; + } + $73 = $0; + $74 = ((($73)) + 64|0); + $75 = $l; + _buf_xor_1($74,$75,16); + $76 = $inbuf; + _buf_cpy($l_tmp,$76,16); + $77 = $0; + $78 = ((($77)) + 80|0); + _buf_xor_1($78,$l_tmp,16); + $79 = $0; + $80 = ((($79)) + 64|0); + _buf_xor_1($l_tmp,$80,16); + $81 = $encrypt_fn; + $82 = $ctx; + $83 = (FUNCTION_TABLE_iiii[$81 & 127]($82,$l_tmp,$l_tmp)|0); + $burn_depth = $83; + $84 = $0; + $85 = ((($84)) + 64|0); + _buf_xor_1($l_tmp,$85,16); + $86 = $outbuf; + _buf_cpy($86,$l_tmp,16); + $87 = $inbuf; + $88 = ((($87)) + 16|0); + $inbuf = $88; + $89 = $outbuf; + $90 = ((($89)) + 16|0); + $outbuf = $90; + $91 = $3; + $92 = (($91) + -1)|0; + $3 = $92; + } + } else { + $93 = ((($27)) + 492|0); + $94 = HEAP32[$93>>2]|0; + $decrypt_fn = $94; + while(1) { + $95 = $3; + $96 = ($95|0)!=(0); + if (!($96)) { + break L7; + } + $97 = $0; + $98 = ((($97)) + 128|0); + $99 = ((($98)) + 336|0); + $100 = $99; + $101 = $100; + $102 = HEAP32[$101>>2]|0; + $103 = (($100) + 4)|0; + $104 = $103; + $105 = HEAP32[$104>>2]|0; + $106 = (_i64Add(($102|0),($105|0),1,0)|0); + $107 = tempRet0; + $108 = $99; + $109 = $108; + HEAP32[$109>>2] = $106; + $110 = (($108) + 4)|0; + $111 = $110; + HEAP32[$111>>2] = $107; + $112 = $i2; + $113 = $112; + HEAP32[$113>>2] = $106; + $114 = (($112) + 4)|0; + $115 = $114; + HEAP32[$115>>2] = $107; + $116 = $i2; + $117 = $116; + $118 = HEAP32[$117>>2]|0; + $119 = (($116) + 4)|0; + $120 = $119; + $121 = HEAP32[$120>>2]|0; + $122 = (__gcry_ctz64($118,$121)|0); + $ntz3 = $122; + $123 = $ntz3; + $124 = ($123>>>0)<(16); + if ($124) { + $125 = $ntz3; + $126 = $0; + $127 = ((($126)) + 128|0); + $128 = ((($127)) + 32|0); + $129 = (($128) + ($125<<4)|0); + $l4 = $129; + } else { + $130 = $0; + $131 = $i2; + $132 = $131; + $133 = HEAP32[$132>>2]|0; + $134 = (($131) + 4)|0; + $135 = $134; + $136 = HEAP32[$135>>2]|0; + $137 = (__gcry_cipher_ocb_get_l($130,$l_tmp1,$133,$136)|0); + $l4 = $137; + } + $138 = $0; + $139 = ((($138)) + 64|0); + $140 = $l4; + _buf_xor_1($139,$140,16); + $141 = $inbuf; + _buf_cpy($l_tmp1,$141,16); + $142 = $0; + $143 = ((($142)) + 64|0); + _buf_xor_1($l_tmp1,$143,16); + $144 = $decrypt_fn; + $145 = $ctx; + $146 = (FUNCTION_TABLE_iiii[$144 & 127]($145,$l_tmp1,$l_tmp1)|0); + $burn_depth = $146; + $147 = $0; + $148 = ((($147)) + 64|0); + _buf_xor_1($l_tmp1,$148,16); + $149 = $0; + $150 = ((($149)) + 80|0); + _buf_xor_1($150,$l_tmp1,16); + $151 = $outbuf; + _buf_cpy($151,$l_tmp1,16); + $152 = $inbuf; + $153 = ((($152)) + 16|0); + $inbuf = $153; + $154 = $outbuf; + $155 = ((($154)) + 16|0); + $outbuf = $155; + $156 = $3; + $157 = (($156) + -1)|0; + $3 = $157; + } + } + } while(0); + $158 = $burn_depth; + $159 = ($158|0)!=(0); + if (!($159)) { + STACKTOP = sp;return; + } + $160 = $burn_depth; + $161 = (($160) + 16)|0; + ___gcry_burn_stack($161); + ___gcry_burn_stack_dummy(); + STACKTOP = sp;return; +} +function __gcry_ctz64($0,$1) { + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $3 = sp; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + $8 = $3; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $11 = (($8) + 4)|0; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = ($10|0)!=(0); + $15 = (0)!=(0); + $16 = $14 | $15; + $17 = $3; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (($17) + 4)|0; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + if ($16) { + $23 = (__gcry_ctz($19)|0); + $2 = $23; + $26 = $2; + STACKTOP = sp;return ($26|0); + } else { + $24 = (__gcry_ctz($22)|0); + $25 = (32 + ($24))|0; + $2 = $25; + $26 = $2; + STACKTOP = sp;return ($26|0); + } + return (0)|0; +} +function __gcry_ctz($x) { + $x = $x|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $x; + $1 = $0; + $2 = ($1|0)!=(0); + $3 = $0; + $4 = (_llvm_cttz_i32(($3|0))|0); + $5 = $2 ? $4 : 32; + STACKTOP = sp;return ($5|0); +} +function _buf_xor_1($_dst,$_src,$len) { + $_dst = $_dst|0; + $_src = $_src|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $dst = 0, $ldst = 0, $longmask = 0, $lsrc = 0, $src = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst; + $1 = $_src; + $2 = $len; + $3 = $0; + $dst = $3; + $4 = $1; + $src = $4; + $longmask = 3; + $5 = $dst; + $6 = $5; + $7 = $src; + $8 = $7; + $9 = $6 | $8; + $10 = $9 & 3; + $11 = ($10|0)!=(0); + if (!($11)) { + $12 = $dst; + $ldst = $12; + $13 = $src; + $lsrc = $13; + while(1) { + $14 = $2; + $15 = ($14>>>0)>=(4); + if (!($15)) { + break; + } + $16 = $lsrc; + $17 = ((($16)) + 4|0); + $lsrc = $17; + $18 = HEAP32[$16>>2]|0; + $19 = $ldst; + $20 = ((($19)) + 4|0); + $ldst = $20; + $21 = HEAP32[$19>>2]|0; + $22 = $21 ^ $18; + HEAP32[$19>>2] = $22; + $23 = $2; + $24 = (($23) - 4)|0; + $2 = $24; + } + $25 = $ldst; + $dst = $25; + $26 = $lsrc; + $src = $26; + } + while(1) { + $27 = $2; + $28 = ($27|0)!=(0); + if (!($28)) { + break; + } + $29 = $src; + $30 = ((($29)) + 1|0); + $src = $30; + $31 = HEAP8[$29>>0]|0; + $32 = $31&255; + $33 = $dst; + $34 = ((($33)) + 1|0); + $dst = $34; + $35 = HEAP8[$33>>0]|0; + $36 = $35&255; + $37 = $36 ^ $32; + $38 = $37&255; + HEAP8[$33>>0] = $38; + $39 = $2; + $40 = (($39) + -1)|0; + $2 = $40; + } + STACKTOP = sp;return; +} +function __gcry_aes_ocb_auth($c,$abuf_arg,$nblocks) { + $c = $c|0; + $abuf_arg = $abuf_arg|0; + $nblocks = $nblocks|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $_vlen = 0, $_vptr = 0, $_vptr_long = 0, $_vset = 0, $_vset_long = 0, $abuf = 0, $burn_depth = 0, $ctx = 0, $encrypt_fn = 0, $i = 0, $l = 0, $l_tmp = 0, $ntz = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $l_tmp = sp; + $i = sp + 24|0; + $_vset_long = sp + 16|0; + $0 = $c; + $1 = $abuf_arg; + $2 = $nblocks; + $3 = $0; + $4 = ((($3)) + 496|0); + $ctx = $4; + $5 = $1; + $abuf = $5; + $burn_depth = 0; + $6 = $ctx; + $7 = ((($6)) + 496|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = $ctx; + $11 = ((($10)) + 496|0); + $12 = HEAP32[$11>>2]|0; + FUNCTION_TABLE_v[$12 & 127](); + } + $13 = $ctx; + $14 = ((($13)) + 488|0); + $15 = HEAP32[$14>>2]|0; + $encrypt_fn = $15; + while(1) { + $16 = $2; + $17 = ($16|0)!=(0); + if (!($17)) { + break; + } + $18 = $0; + $19 = ((($18)) + 128|0); + $20 = ((($19)) + 344|0); + $21 = $20; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = (($21) + 4)|0; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + $27 = (_i64Add(($23|0),($26|0),1,0)|0); + $28 = tempRet0; + $29 = $20; + $30 = $29; + HEAP32[$30>>2] = $27; + $31 = (($29) + 4)|0; + $32 = $31; + HEAP32[$32>>2] = $28; + $33 = $i; + $34 = $33; + HEAP32[$34>>2] = $27; + $35 = (($33) + 4)|0; + $36 = $35; + HEAP32[$36>>2] = $28; + $37 = $i; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (($37) + 4)|0; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $43 = (__gcry_ctz64($39,$42)|0); + $ntz = $43; + $44 = $ntz; + $45 = ($44>>>0)<(16); + if ($45) { + $46 = $ntz; + $47 = $0; + $48 = ((($47)) + 128|0); + $49 = ((($48)) + 32|0); + $50 = (($49) + ($46<<4)|0); + $l = $50; + } else { + $51 = $0; + $52 = $i; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + $55 = (($52) + 4)|0; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + $58 = (__gcry_cipher_ocb_get_l($51,$l_tmp,$54,$57)|0); + $l = $58; + } + $59 = $0; + $60 = ((($59)) + 128|0); + $61 = ((($60)) + 304|0); + $62 = $l; + _buf_xor_1($61,$62,16); + $63 = $0; + $64 = ((($63)) + 128|0); + $65 = ((($64)) + 304|0); + $66 = $abuf; + _buf_xor($l_tmp,$65,$66,16); + $67 = $encrypt_fn; + $68 = $ctx; + $69 = (FUNCTION_TABLE_iiii[$67 & 127]($68,$l_tmp,$l_tmp)|0); + $burn_depth = $69; + $70 = $0; + $71 = ((($70)) + 128|0); + $72 = ((($71)) + 320|0); + _buf_xor_1($72,$l_tmp,16); + $73 = $abuf; + $74 = ((($73)) + 16|0); + $abuf = $74; + $75 = $2; + $76 = (($75) + -1)|0; + $2 = $76; + } + $_vptr = $l_tmp; + $_vlen = 16; + $_vset = 0; + $77 = $_vset; + $78 = $77&255; + $79 = $_vset_long; + $80 = $79; + HEAP32[$80>>2] = $78; + $81 = (($79) + 4)|0; + $82 = $81; + HEAP32[$82>>2] = 0; + while(1) { + $83 = $_vptr; + $84 = $83; + $85 = $84 & 7; + $86 = ($85|0)!=(0); + $87 = $_vlen; + $88 = ($87|0)!=(0); + $89 = $86 ? $88 : 0; + if (!($89)) { + break; + } + $90 = $_vset; + $91 = $_vptr; + HEAP8[$91>>0] = $90; + $92 = $_vptr; + $93 = ((($92)) + 1|0); + $_vptr = $93; + $94 = $_vlen; + $95 = (($94) + -1)|0; + $_vlen = $95; + } + $96 = $_vlen; + $97 = ($96>>>0)<(8); + if (!($97)) { + $98 = $_vset_long; + $99 = $98; + $100 = HEAP32[$99>>2]|0; + $101 = (($98) + 4)|0; + $102 = $101; + $103 = HEAP32[$102>>2]|0; + $104 = (___muldi3(($100|0),($103|0),16843009,16843009)|0); + $105 = tempRet0; + $106 = $_vset_long; + $107 = $106; + HEAP32[$107>>2] = $104; + $108 = (($106) + 4)|0; + $109 = $108; + HEAP32[$109>>2] = $105; + while(1) { + $110 = $_vptr; + $_vptr_long = $110; + $111 = $_vset_long; + $112 = $111; + $113 = HEAP32[$112>>2]|0; + $114 = (($111) + 4)|0; + $115 = $114; + $116 = HEAP32[$115>>2]|0; + $117 = $_vptr_long; + $118 = $117; + $119 = $118; + HEAP32[$119>>2] = $113; + $120 = (($118) + 4)|0; + $121 = $120; + HEAP32[$121>>2] = $116; + $122 = $_vlen; + $123 = (($122) - 8)|0; + $_vlen = $123; + $124 = $_vptr; + $125 = ((($124)) + 8|0); + $_vptr = $125; + $126 = $_vlen; + $127 = ($126>>>0)>=(8); + if (!($127)) { + break; + } + } + } + while(1) { + $128 = $_vlen; + $129 = ($128|0)!=(0); + if (!($129)) { + break; + } + $130 = $_vset; + $131 = $_vptr; + HEAP8[$131>>0] = $130; + $132 = $_vptr; + $133 = ((($132)) + 1|0); + $_vptr = $133; + $134 = $_vlen; + $135 = (($134) + -1)|0; + $_vlen = $135; + } + $136 = $burn_depth; + $137 = ($136|0)!=(0); + if (!($137)) { + STACKTOP = sp;return; + } + $138 = $burn_depth; + $139 = (($138) + 16)|0; + ___gcry_burn_stack($139); + ___gcry_burn_stack_dummy(); + STACKTOP = sp;return; +} +function _rmd160_init($context,$flags) { + $context = $context|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $hd = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $flags; + $2 = $0; + $hd = $2; + $3 = $hd; + $4 = ((($3)) + 160|0); + HEAP32[$4>>2] = 1732584193; + $5 = $hd; + $6 = ((($5)) + 164|0); + HEAP32[$6>>2] = -271733879; + $7 = $hd; + $8 = ((($7)) + 168|0); + HEAP32[$8>>2] = -1732584194; + $9 = $hd; + $10 = ((($9)) + 172|0); + HEAP32[$10>>2] = 271733878; + $11 = $hd; + $12 = ((($11)) + 176|0); + HEAP32[$12>>2] = -1009589776; + $13 = $hd; + $14 = ((($13)) + 128|0); + $15 = $14; + $16 = $15; + HEAP32[$16>>2] = 0; + $17 = (($15) + 4)|0; + $18 = $17; + HEAP32[$18>>2] = 0; + $19 = $hd; + $20 = ((($19)) + 136|0); + $21 = $20; + $22 = $21; + HEAP32[$22>>2] = 0; + $23 = (($21) + 4)|0; + $24 = $23; + HEAP32[$24>>2] = 0; + $25 = $hd; + $26 = ((($25)) + 144|0); + HEAP32[$26>>2] = 0; + $27 = $hd; + $28 = ((($27)) + 148|0); + HEAP32[$28>>2] = 64; + $29 = $hd; + $30 = ((($29)) + 152|0); + HEAP32[$30>>2] = 72; + STACKTOP = sp;return; +} +function _transform($c,$data,$nblks) { + $c = $c|0; + $data = $data|0; + $nblks = $nblks|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $burn = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $c; + $1 = $data; + $2 = $nblks; + while(1) { + $3 = $0; + $4 = $1; + $5 = (_transform_blk($3,$4)|0); + $burn = $5; + $6 = $1; + $7 = ((($6)) + 64|0); + $1 = $7; + $8 = $2; + $9 = (($8) + -1)|0; + $2 = $9; + $10 = ($9|0)!=(0); + if (!($10)) { + break; + } + } + $11 = $burn; + STACKTOP = sp;return ($11|0); +} +function _transform_blk($ctx,$data) { + $ctx = $ctx|0; + $data = $data|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0; + var $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0; + var $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0; + var $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0; + var $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0; + var $1088 = 0, $1089 = 0, $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 0, $1094 = 0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0, $11 = 0, $110 = 0, $1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0; + var $1105 = 0, $1106 = 0, $1107 = 0, $1108 = 0, $1109 = 0, $111 = 0, $1110 = 0, $1111 = 0, $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 0, $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0; + var $1123 = 0, $1124 = 0, $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0; + var $1141 = 0, $1142 = 0, $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0; + var $116 = 0, $1160 = 0, $1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 0, $1166 = 0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0; + var $1178 = 0, $1179 = 0, $118 = 0, $1180 = 0, $1181 = 0, $1182 = 0, $1183 = 0, $1184 = 0, $1185 = 0, $1186 = 0, $1187 = 0, $1188 = 0, $1189 = 0, $119 = 0, $1190 = 0, $1191 = 0, $1192 = 0, $1193 = 0, $1194 = 0, $1195 = 0; + var $1196 = 0, $1197 = 0, $1198 = 0, $1199 = 0, $12 = 0, $120 = 0, $1200 = 0, $1201 = 0, $1202 = 0, $1203 = 0, $1204 = 0, $1205 = 0, $1206 = 0, $1207 = 0, $1208 = 0, $1209 = 0, $121 = 0, $1210 = 0, $1211 = 0, $1212 = 0; + var $1213 = 0, $1214 = 0, $1215 = 0, $1216 = 0, $1217 = 0, $1218 = 0, $1219 = 0, $122 = 0, $1220 = 0, $1221 = 0, $1222 = 0, $1223 = 0, $1224 = 0, $1225 = 0, $1226 = 0, $1227 = 0, $1228 = 0, $1229 = 0, $123 = 0, $1230 = 0; + var $1231 = 0, $1232 = 0, $1233 = 0, $1234 = 0, $1235 = 0, $1236 = 0, $1237 = 0, $1238 = 0, $1239 = 0, $124 = 0, $1240 = 0, $1241 = 0, $1242 = 0, $1243 = 0, $1244 = 0, $1245 = 0, $1246 = 0, $1247 = 0, $1248 = 0, $1249 = 0; + var $125 = 0, $1250 = 0, $1251 = 0, $1252 = 0, $1253 = 0, $1254 = 0, $1255 = 0, $1256 = 0, $1257 = 0, $1258 = 0, $1259 = 0, $126 = 0, $1260 = 0, $1261 = 0, $1262 = 0, $1263 = 0, $1264 = 0, $1265 = 0, $1266 = 0, $1267 = 0; + var $1268 = 0, $1269 = 0, $127 = 0, $1270 = 0, $1271 = 0, $1272 = 0, $1273 = 0, $1274 = 0, $1275 = 0, $1276 = 0, $1277 = 0, $1278 = 0, $1279 = 0, $128 = 0, $1280 = 0, $1281 = 0, $1282 = 0, $1283 = 0, $1284 = 0, $1285 = 0; + var $1286 = 0, $1287 = 0, $1288 = 0, $1289 = 0, $129 = 0, $1290 = 0, $1291 = 0, $1292 = 0, $1293 = 0, $1294 = 0, $1295 = 0, $1296 = 0, $1297 = 0, $1298 = 0, $1299 = 0, $13 = 0, $130 = 0, $1300 = 0, $1301 = 0, $1302 = 0; + var $1303 = 0, $1304 = 0, $1305 = 0, $1306 = 0, $1307 = 0, $1308 = 0, $1309 = 0, $131 = 0, $1310 = 0, $1311 = 0, $1312 = 0, $1313 = 0, $1314 = 0, $1315 = 0, $1316 = 0, $1317 = 0, $1318 = 0, $1319 = 0, $132 = 0, $1320 = 0; + var $1321 = 0, $1322 = 0, $1323 = 0, $1324 = 0, $1325 = 0, $1326 = 0, $1327 = 0, $1328 = 0, $1329 = 0, $133 = 0, $1330 = 0, $1331 = 0, $1332 = 0, $1333 = 0, $1334 = 0, $1335 = 0, $1336 = 0, $1337 = 0, $1338 = 0, $1339 = 0; + var $134 = 0, $1340 = 0, $1341 = 0, $1342 = 0, $1343 = 0, $1344 = 0, $1345 = 0, $1346 = 0, $1347 = 0, $1348 = 0, $1349 = 0, $135 = 0, $1350 = 0, $1351 = 0, $1352 = 0, $1353 = 0, $1354 = 0, $1355 = 0, $1356 = 0, $1357 = 0; + var $1358 = 0, $1359 = 0, $136 = 0, $1360 = 0, $1361 = 0, $1362 = 0, $1363 = 0, $1364 = 0, $1365 = 0, $1366 = 0, $1367 = 0, $1368 = 0, $1369 = 0, $137 = 0, $1370 = 0, $1371 = 0, $1372 = 0, $1373 = 0, $1374 = 0, $1375 = 0; + var $1376 = 0, $1377 = 0, $1378 = 0, $1379 = 0, $138 = 0, $1380 = 0, $1381 = 0, $1382 = 0, $1383 = 0, $1384 = 0, $1385 = 0, $1386 = 0, $1387 = 0, $1388 = 0, $1389 = 0, $139 = 0, $1390 = 0, $1391 = 0, $1392 = 0, $1393 = 0; + var $1394 = 0, $1395 = 0, $1396 = 0, $1397 = 0, $1398 = 0, $1399 = 0, $14 = 0, $140 = 0, $1400 = 0, $1401 = 0, $1402 = 0, $1403 = 0, $1404 = 0, $1405 = 0, $1406 = 0, $1407 = 0, $1408 = 0, $1409 = 0, $141 = 0, $1410 = 0; + var $1411 = 0, $1412 = 0, $1413 = 0, $1414 = 0, $1415 = 0, $1416 = 0, $1417 = 0, $1418 = 0, $1419 = 0, $142 = 0, $1420 = 0, $1421 = 0, $1422 = 0, $1423 = 0, $1424 = 0, $1425 = 0, $1426 = 0, $1427 = 0, $1428 = 0, $1429 = 0; + var $143 = 0, $1430 = 0, $1431 = 0, $1432 = 0, $1433 = 0, $1434 = 0, $1435 = 0, $1436 = 0, $1437 = 0, $1438 = 0, $1439 = 0, $144 = 0, $1440 = 0, $1441 = 0, $1442 = 0, $1443 = 0, $1444 = 0, $1445 = 0, $1446 = 0, $1447 = 0; + var $1448 = 0, $1449 = 0, $145 = 0, $1450 = 0, $1451 = 0, $1452 = 0, $1453 = 0, $1454 = 0, $1455 = 0, $1456 = 0, $1457 = 0, $1458 = 0, $1459 = 0, $146 = 0, $1460 = 0, $1461 = 0, $1462 = 0, $1463 = 0, $1464 = 0, $1465 = 0; + var $1466 = 0, $1467 = 0, $1468 = 0, $1469 = 0, $147 = 0, $1470 = 0, $1471 = 0, $1472 = 0, $1473 = 0, $1474 = 0, $1475 = 0, $1476 = 0, $1477 = 0, $1478 = 0, $1479 = 0, $148 = 0, $1480 = 0, $1481 = 0, $1482 = 0, $1483 = 0; + var $1484 = 0, $1485 = 0, $1486 = 0, $1487 = 0, $1488 = 0, $1489 = 0, $149 = 0, $1490 = 0, $1491 = 0, $1492 = 0, $1493 = 0, $1494 = 0, $1495 = 0, $1496 = 0, $1497 = 0, $1498 = 0, $1499 = 0, $15 = 0, $150 = 0, $1500 = 0; + var $1501 = 0, $1502 = 0, $1503 = 0, $1504 = 0, $1505 = 0, $1506 = 0, $1507 = 0, $1508 = 0, $1509 = 0, $151 = 0, $1510 = 0, $1511 = 0, $1512 = 0, $1513 = 0, $1514 = 0, $1515 = 0, $1516 = 0, $1517 = 0, $1518 = 0, $1519 = 0; + var $152 = 0, $1520 = 0, $1521 = 0, $1522 = 0, $1523 = 0, $1524 = 0, $1525 = 0, $1526 = 0, $1527 = 0, $1528 = 0, $1529 = 0, $153 = 0, $1530 = 0, $1531 = 0, $1532 = 0, $1533 = 0, $1534 = 0, $1535 = 0, $1536 = 0, $1537 = 0; + var $1538 = 0, $1539 = 0, $154 = 0, $1540 = 0, $1541 = 0, $1542 = 0, $1543 = 0, $1544 = 0, $1545 = 0, $1546 = 0, $1547 = 0, $1548 = 0, $1549 = 0, $155 = 0, $1550 = 0, $1551 = 0, $1552 = 0, $1553 = 0, $1554 = 0, $1555 = 0; + var $1556 = 0, $1557 = 0, $1558 = 0, $1559 = 0, $156 = 0, $1560 = 0, $1561 = 0, $1562 = 0, $1563 = 0, $1564 = 0, $1565 = 0, $1566 = 0, $1567 = 0, $1568 = 0, $1569 = 0, $157 = 0, $1570 = 0, $1571 = 0, $1572 = 0, $1573 = 0; + var $1574 = 0, $1575 = 0, $1576 = 0, $1577 = 0, $1578 = 0, $1579 = 0, $158 = 0, $1580 = 0, $1581 = 0, $1582 = 0, $1583 = 0, $1584 = 0, $1585 = 0, $1586 = 0, $1587 = 0, $1588 = 0, $1589 = 0, $159 = 0, $1590 = 0, $1591 = 0; + var $1592 = 0, $1593 = 0, $1594 = 0, $1595 = 0, $1596 = 0, $1597 = 0, $1598 = 0, $1599 = 0, $16 = 0, $160 = 0, $1600 = 0, $1601 = 0, $1602 = 0, $1603 = 0, $1604 = 0, $1605 = 0, $1606 = 0, $1607 = 0, $1608 = 0, $1609 = 0; + var $161 = 0, $1610 = 0, $1611 = 0, $1612 = 0, $1613 = 0, $1614 = 0, $1615 = 0, $1616 = 0, $1617 = 0, $1618 = 0, $1619 = 0, $162 = 0, $1620 = 0, $1621 = 0, $1622 = 0, $1623 = 0, $1624 = 0, $1625 = 0, $1626 = 0, $1627 = 0; + var $1628 = 0, $1629 = 0, $163 = 0, $1630 = 0, $1631 = 0, $1632 = 0, $1633 = 0, $1634 = 0, $1635 = 0, $1636 = 0, $1637 = 0, $1638 = 0, $1639 = 0, $164 = 0, $1640 = 0, $1641 = 0, $1642 = 0, $1643 = 0, $1644 = 0, $1645 = 0; + var $1646 = 0, $1647 = 0, $1648 = 0, $1649 = 0, $165 = 0, $1650 = 0, $1651 = 0, $1652 = 0, $1653 = 0, $1654 = 0, $1655 = 0, $1656 = 0, $1657 = 0, $1658 = 0, $1659 = 0, $166 = 0, $1660 = 0, $1661 = 0, $1662 = 0, $1663 = 0; + var $1664 = 0, $1665 = 0, $1666 = 0, $1667 = 0, $1668 = 0, $1669 = 0, $167 = 0, $1670 = 0, $1671 = 0, $1672 = 0, $1673 = 0, $1674 = 0, $1675 = 0, $1676 = 0, $1677 = 0, $1678 = 0, $1679 = 0, $168 = 0, $1680 = 0, $1681 = 0; + var $1682 = 0, $1683 = 0, $1684 = 0, $1685 = 0, $1686 = 0, $1687 = 0, $1688 = 0, $1689 = 0, $169 = 0, $1690 = 0, $1691 = 0, $1692 = 0, $1693 = 0, $1694 = 0, $1695 = 0, $1696 = 0, $1697 = 0, $1698 = 0, $1699 = 0, $17 = 0; + var $170 = 0, $1700 = 0, $1701 = 0, $1702 = 0, $1703 = 0, $1704 = 0, $1705 = 0, $1706 = 0, $1707 = 0, $1708 = 0, $1709 = 0, $171 = 0, $1710 = 0, $1711 = 0, $1712 = 0, $1713 = 0, $1714 = 0, $1715 = 0, $1716 = 0, $1717 = 0; + var $1718 = 0, $1719 = 0, $172 = 0, $1720 = 0, $1721 = 0, $1722 = 0, $1723 = 0, $1724 = 0, $1725 = 0, $1726 = 0, $1727 = 0, $1728 = 0, $1729 = 0, $173 = 0, $1730 = 0, $1731 = 0, $1732 = 0, $1733 = 0, $1734 = 0, $1735 = 0; + var $1736 = 0, $1737 = 0, $1738 = 0, $1739 = 0, $174 = 0, $1740 = 0, $1741 = 0, $1742 = 0, $1743 = 0, $1744 = 0, $1745 = 0, $1746 = 0, $1747 = 0, $1748 = 0, $1749 = 0, $175 = 0, $1750 = 0, $1751 = 0, $1752 = 0, $1753 = 0; + var $1754 = 0, $1755 = 0, $1756 = 0, $1757 = 0, $1758 = 0, $1759 = 0, $176 = 0, $1760 = 0, $1761 = 0, $1762 = 0, $1763 = 0, $1764 = 0, $1765 = 0, $1766 = 0, $1767 = 0, $1768 = 0, $1769 = 0, $177 = 0, $1770 = 0, $1771 = 0; + var $1772 = 0, $1773 = 0, $1774 = 0, $1775 = 0, $1776 = 0, $1777 = 0, $1778 = 0, $1779 = 0, $178 = 0, $1780 = 0, $1781 = 0, $1782 = 0, $1783 = 0, $1784 = 0, $1785 = 0, $1786 = 0, $1787 = 0, $1788 = 0, $1789 = 0, $179 = 0; + var $1790 = 0, $1791 = 0, $1792 = 0, $1793 = 0, $1794 = 0, $1795 = 0, $1796 = 0, $1797 = 0, $1798 = 0, $1799 = 0, $18 = 0, $180 = 0, $1800 = 0, $1801 = 0, $1802 = 0, $1803 = 0, $1804 = 0, $1805 = 0, $1806 = 0, $1807 = 0; + var $1808 = 0, $1809 = 0, $181 = 0, $1810 = 0, $1811 = 0, $1812 = 0, $1813 = 0, $1814 = 0, $1815 = 0, $1816 = 0, $1817 = 0, $1818 = 0, $1819 = 0, $182 = 0, $1820 = 0, $1821 = 0, $1822 = 0, $1823 = 0, $1824 = 0, $1825 = 0; + var $1826 = 0, $1827 = 0, $1828 = 0, $1829 = 0, $183 = 0, $1830 = 0, $1831 = 0, $1832 = 0, $1833 = 0, $1834 = 0, $1835 = 0, $1836 = 0, $1837 = 0, $1838 = 0, $1839 = 0, $184 = 0, $1840 = 0, $1841 = 0, $1842 = 0, $1843 = 0; + var $1844 = 0, $1845 = 0, $1846 = 0, $1847 = 0, $1848 = 0, $1849 = 0, $185 = 0, $1850 = 0, $1851 = 0, $1852 = 0, $1853 = 0, $1854 = 0, $1855 = 0, $1856 = 0, $1857 = 0, $1858 = 0, $1859 = 0, $186 = 0, $1860 = 0, $1861 = 0; + var $1862 = 0, $1863 = 0, $1864 = 0, $1865 = 0, $1866 = 0, $1867 = 0, $1868 = 0, $1869 = 0, $187 = 0, $1870 = 0, $1871 = 0, $1872 = 0, $1873 = 0, $1874 = 0, $1875 = 0, $1876 = 0, $1877 = 0, $1878 = 0, $1879 = 0, $188 = 0; + var $1880 = 0, $1881 = 0, $1882 = 0, $1883 = 0, $1884 = 0, $1885 = 0, $1886 = 0, $1887 = 0, $1888 = 0, $1889 = 0, $189 = 0, $1890 = 0, $1891 = 0, $1892 = 0, $1893 = 0, $1894 = 0, $1895 = 0, $1896 = 0, $1897 = 0, $1898 = 0; + var $1899 = 0, $19 = 0, $190 = 0, $1900 = 0, $1901 = 0, $1902 = 0, $1903 = 0, $1904 = 0, $1905 = 0, $1906 = 0, $1907 = 0, $1908 = 0, $1909 = 0, $191 = 0, $1910 = 0, $1911 = 0, $1912 = 0, $1913 = 0, $1914 = 0, $1915 = 0; + var $1916 = 0, $1917 = 0, $1918 = 0, $1919 = 0, $192 = 0, $1920 = 0, $1921 = 0, $1922 = 0, $1923 = 0, $1924 = 0, $1925 = 0, $1926 = 0, $1927 = 0, $1928 = 0, $1929 = 0, $193 = 0, $1930 = 0, $1931 = 0, $1932 = 0, $1933 = 0; + var $1934 = 0, $1935 = 0, $1936 = 0, $1937 = 0, $1938 = 0, $1939 = 0, $194 = 0, $1940 = 0, $1941 = 0, $1942 = 0, $1943 = 0, $1944 = 0, $1945 = 0, $1946 = 0, $1947 = 0, $1948 = 0, $1949 = 0, $195 = 0, $1950 = 0, $1951 = 0; + var $1952 = 0, $1953 = 0, $1954 = 0, $1955 = 0, $1956 = 0, $1957 = 0, $1958 = 0, $1959 = 0, $196 = 0, $1960 = 0, $1961 = 0, $1962 = 0, $1963 = 0, $1964 = 0, $1965 = 0, $1966 = 0, $1967 = 0, $1968 = 0, $1969 = 0, $197 = 0; + var $1970 = 0, $1971 = 0, $1972 = 0, $1973 = 0, $1974 = 0, $1975 = 0, $1976 = 0, $1977 = 0, $1978 = 0, $1979 = 0, $198 = 0, $1980 = 0, $1981 = 0, $1982 = 0, $1983 = 0, $1984 = 0, $1985 = 0, $1986 = 0, $1987 = 0, $1988 = 0; + var $1989 = 0, $199 = 0, $1990 = 0, $1991 = 0, $1992 = 0, $1993 = 0, $1994 = 0, $1995 = 0, $1996 = 0, $1997 = 0, $1998 = 0, $1999 = 0, $2 = 0, $20 = 0, $200 = 0, $2000 = 0, $2001 = 0, $2002 = 0, $2003 = 0, $2004 = 0; + var $2005 = 0, $2006 = 0, $2007 = 0, $2008 = 0, $2009 = 0, $201 = 0, $2010 = 0, $2011 = 0, $2012 = 0, $2013 = 0, $2014 = 0, $2015 = 0, $2016 = 0, $2017 = 0, $2018 = 0, $2019 = 0, $202 = 0, $2020 = 0, $2021 = 0, $2022 = 0; + var $2023 = 0, $2024 = 0, $2025 = 0, $2026 = 0, $2027 = 0, $2028 = 0, $2029 = 0, $203 = 0, $2030 = 0, $2031 = 0, $2032 = 0, $2033 = 0, $2034 = 0, $2035 = 0, $2036 = 0, $2037 = 0, $2038 = 0, $2039 = 0, $204 = 0, $2040 = 0; + var $2041 = 0, $2042 = 0, $2043 = 0, $2044 = 0, $2045 = 0, $2046 = 0, $2047 = 0, $2048 = 0, $2049 = 0, $205 = 0, $2050 = 0, $2051 = 0, $2052 = 0, $2053 = 0, $2054 = 0, $2055 = 0, $2056 = 0, $2057 = 0, $2058 = 0, $2059 = 0; + var $206 = 0, $2060 = 0, $2061 = 0, $2062 = 0, $2063 = 0, $2064 = 0, $2065 = 0, $2066 = 0, $2067 = 0, $2068 = 0, $2069 = 0, $207 = 0, $2070 = 0, $2071 = 0, $2072 = 0, $2073 = 0, $2074 = 0, $2075 = 0, $2076 = 0, $2077 = 0; + var $2078 = 0, $2079 = 0, $208 = 0, $2080 = 0, $2081 = 0, $2082 = 0, $2083 = 0, $2084 = 0, $2085 = 0, $2086 = 0, $2087 = 0, $2088 = 0, $2089 = 0, $209 = 0, $2090 = 0, $2091 = 0, $2092 = 0, $2093 = 0, $2094 = 0, $2095 = 0; + var $2096 = 0, $2097 = 0, $2098 = 0, $2099 = 0, $21 = 0, $210 = 0, $2100 = 0, $2101 = 0, $2102 = 0, $2103 = 0, $2104 = 0, $2105 = 0, $2106 = 0, $2107 = 0, $2108 = 0, $2109 = 0, $211 = 0, $2110 = 0, $2111 = 0, $2112 = 0; + var $2113 = 0, $2114 = 0, $2115 = 0, $2116 = 0, $2117 = 0, $2118 = 0, $2119 = 0, $212 = 0, $2120 = 0, $2121 = 0, $2122 = 0, $2123 = 0, $2124 = 0, $2125 = 0, $2126 = 0, $2127 = 0, $2128 = 0, $2129 = 0, $213 = 0, $2130 = 0; + var $2131 = 0, $2132 = 0, $2133 = 0, $2134 = 0, $2135 = 0, $2136 = 0, $2137 = 0, $2138 = 0, $2139 = 0, $214 = 0, $2140 = 0, $2141 = 0, $2142 = 0, $2143 = 0, $2144 = 0, $2145 = 0, $2146 = 0, $2147 = 0, $2148 = 0, $2149 = 0; + var $215 = 0, $2150 = 0, $2151 = 0, $2152 = 0, $2153 = 0, $2154 = 0, $2155 = 0, $2156 = 0, $2157 = 0, $2158 = 0, $2159 = 0, $216 = 0, $2160 = 0, $2161 = 0, $2162 = 0, $2163 = 0, $2164 = 0, $2165 = 0, $2166 = 0, $2167 = 0; + var $2168 = 0, $2169 = 0, $217 = 0, $2170 = 0, $2171 = 0, $2172 = 0, $2173 = 0, $2174 = 0, $2175 = 0, $2176 = 0, $2177 = 0, $2178 = 0, $2179 = 0, $218 = 0, $2180 = 0, $2181 = 0, $2182 = 0, $2183 = 0, $2184 = 0, $2185 = 0; + var $2186 = 0, $2187 = 0, $2188 = 0, $2189 = 0, $219 = 0, $2190 = 0, $2191 = 0, $2192 = 0, $2193 = 0, $2194 = 0, $2195 = 0, $2196 = 0, $2197 = 0, $2198 = 0, $2199 = 0, $22 = 0, $220 = 0, $2200 = 0, $2201 = 0, $2202 = 0; + var $2203 = 0, $2204 = 0, $2205 = 0, $2206 = 0, $2207 = 0, $2208 = 0, $2209 = 0, $221 = 0, $2210 = 0, $2211 = 0, $2212 = 0, $2213 = 0, $2214 = 0, $2215 = 0, $2216 = 0, $2217 = 0, $2218 = 0, $2219 = 0, $222 = 0, $2220 = 0; + var $2221 = 0, $2222 = 0, $2223 = 0, $2224 = 0, $2225 = 0, $2226 = 0, $2227 = 0, $2228 = 0, $2229 = 0, $223 = 0, $2230 = 0, $2231 = 0, $2232 = 0, $2233 = 0, $2234 = 0, $2235 = 0, $2236 = 0, $2237 = 0, $2238 = 0, $2239 = 0; + var $224 = 0, $2240 = 0, $2241 = 0, $2242 = 0, $2243 = 0, $2244 = 0, $2245 = 0, $2246 = 0, $2247 = 0, $2248 = 0, $2249 = 0, $225 = 0, $2250 = 0, $2251 = 0, $2252 = 0, $2253 = 0, $2254 = 0, $2255 = 0, $2256 = 0, $2257 = 0; + var $2258 = 0, $2259 = 0, $226 = 0, $2260 = 0, $2261 = 0, $2262 = 0, $2263 = 0, $2264 = 0, $2265 = 0, $2266 = 0, $2267 = 0, $2268 = 0, $2269 = 0, $227 = 0, $2270 = 0, $2271 = 0, $2272 = 0, $2273 = 0, $2274 = 0, $2275 = 0; + var $2276 = 0, $2277 = 0, $2278 = 0, $2279 = 0, $228 = 0, $2280 = 0, $2281 = 0, $2282 = 0, $2283 = 0, $2284 = 0, $2285 = 0, $2286 = 0, $2287 = 0, $2288 = 0, $2289 = 0, $229 = 0, $2290 = 0, $2291 = 0, $2292 = 0, $2293 = 0; + var $2294 = 0, $2295 = 0, $2296 = 0, $2297 = 0, $2298 = 0, $2299 = 0, $23 = 0, $230 = 0, $2300 = 0, $2301 = 0, $2302 = 0, $2303 = 0, $2304 = 0, $2305 = 0, $2306 = 0, $2307 = 0, $2308 = 0, $2309 = 0, $231 = 0, $2310 = 0; + var $2311 = 0, $2312 = 0, $2313 = 0, $2314 = 0, $2315 = 0, $2316 = 0, $2317 = 0, $2318 = 0, $2319 = 0, $232 = 0, $2320 = 0, $2321 = 0, $2322 = 0, $2323 = 0, $2324 = 0, $2325 = 0, $2326 = 0, $2327 = 0, $2328 = 0, $2329 = 0; + var $233 = 0, $2330 = 0, $2331 = 0, $2332 = 0, $2333 = 0, $2334 = 0, $2335 = 0, $2336 = 0, $2337 = 0, $2338 = 0, $2339 = 0, $234 = 0, $2340 = 0, $2341 = 0, $2342 = 0, $2343 = 0, $2344 = 0, $2345 = 0, $2346 = 0, $2347 = 0; + var $2348 = 0, $2349 = 0, $235 = 0, $2350 = 0, $2351 = 0, $2352 = 0, $2353 = 0, $2354 = 0, $2355 = 0, $2356 = 0, $2357 = 0, $2358 = 0, $2359 = 0, $236 = 0, $2360 = 0, $2361 = 0, $2362 = 0, $2363 = 0, $2364 = 0, $2365 = 0; + var $2366 = 0, $2367 = 0, $2368 = 0, $2369 = 0, $237 = 0, $2370 = 0, $2371 = 0, $2372 = 0, $2373 = 0, $2374 = 0, $2375 = 0, $2376 = 0, $2377 = 0, $2378 = 0, $2379 = 0, $238 = 0, $2380 = 0, $2381 = 0, $2382 = 0, $2383 = 0; + var $2384 = 0, $2385 = 0, $2386 = 0, $2387 = 0, $2388 = 0, $2389 = 0, $239 = 0, $2390 = 0, $2391 = 0, $2392 = 0, $2393 = 0, $2394 = 0, $2395 = 0, $2396 = 0, $2397 = 0, $2398 = 0, $2399 = 0, $24 = 0, $240 = 0, $2400 = 0; + var $2401 = 0, $2402 = 0, $2403 = 0, $2404 = 0, $2405 = 0, $2406 = 0, $2407 = 0, $2408 = 0, $2409 = 0, $241 = 0, $2410 = 0, $2411 = 0, $2412 = 0, $2413 = 0, $2414 = 0, $2415 = 0, $2416 = 0, $2417 = 0, $2418 = 0, $2419 = 0; + var $242 = 0, $2420 = 0, $2421 = 0, $2422 = 0, $2423 = 0, $2424 = 0, $2425 = 0, $2426 = 0, $2427 = 0, $2428 = 0, $2429 = 0, $243 = 0, $2430 = 0, $2431 = 0, $2432 = 0, $2433 = 0, $2434 = 0, $2435 = 0, $2436 = 0, $2437 = 0; + var $2438 = 0, $2439 = 0, $244 = 0, $2440 = 0, $2441 = 0, $2442 = 0, $2443 = 0, $2444 = 0, $2445 = 0, $2446 = 0, $2447 = 0, $2448 = 0, $2449 = 0, $245 = 0, $2450 = 0, $2451 = 0, $2452 = 0, $2453 = 0, $2454 = 0, $2455 = 0; + var $2456 = 0, $2457 = 0, $2458 = 0, $2459 = 0, $246 = 0, $2460 = 0, $2461 = 0, $2462 = 0, $2463 = 0, $2464 = 0, $2465 = 0, $2466 = 0, $2467 = 0, $2468 = 0, $2469 = 0, $247 = 0, $2470 = 0, $2471 = 0, $2472 = 0, $2473 = 0; + var $2474 = 0, $2475 = 0, $2476 = 0, $2477 = 0, $2478 = 0, $2479 = 0, $248 = 0, $2480 = 0, $2481 = 0, $2482 = 0, $2483 = 0, $2484 = 0, $2485 = 0, $2486 = 0, $2487 = 0, $2488 = 0, $2489 = 0, $249 = 0, $2490 = 0, $2491 = 0; + var $2492 = 0, $2493 = 0, $2494 = 0, $2495 = 0, $2496 = 0, $2497 = 0, $2498 = 0, $2499 = 0, $25 = 0, $250 = 0, $2500 = 0, $2501 = 0, $2502 = 0, $2503 = 0, $2504 = 0, $2505 = 0, $2506 = 0, $2507 = 0, $2508 = 0, $2509 = 0; + var $251 = 0, $2510 = 0, $2511 = 0, $2512 = 0, $2513 = 0, $2514 = 0, $2515 = 0, $2516 = 0, $2517 = 0, $2518 = 0, $2519 = 0, $252 = 0, $2520 = 0, $2521 = 0, $2522 = 0, $2523 = 0, $2524 = 0, $2525 = 0, $2526 = 0, $2527 = 0; + var $2528 = 0, $2529 = 0, $253 = 0, $2530 = 0, $2531 = 0, $2532 = 0, $2533 = 0, $2534 = 0, $2535 = 0, $2536 = 0, $2537 = 0, $2538 = 0, $2539 = 0, $254 = 0, $2540 = 0, $2541 = 0, $2542 = 0, $2543 = 0, $2544 = 0, $2545 = 0; + var $2546 = 0, $2547 = 0, $2548 = 0, $2549 = 0, $255 = 0, $2550 = 0, $2551 = 0, $2552 = 0, $2553 = 0, $2554 = 0, $2555 = 0, $2556 = 0, $2557 = 0, $2558 = 0, $2559 = 0, $256 = 0, $2560 = 0, $2561 = 0, $2562 = 0, $2563 = 0; + var $2564 = 0, $2565 = 0, $2566 = 0, $2567 = 0, $2568 = 0, $2569 = 0, $257 = 0, $2570 = 0, $2571 = 0, $2572 = 0, $2573 = 0, $2574 = 0, $2575 = 0, $2576 = 0, $2577 = 0, $2578 = 0, $2579 = 0, $258 = 0, $2580 = 0, $2581 = 0; + var $2582 = 0, $2583 = 0, $2584 = 0, $2585 = 0, $2586 = 0, $2587 = 0, $2588 = 0, $2589 = 0, $259 = 0, $2590 = 0, $2591 = 0, $2592 = 0, $2593 = 0, $2594 = 0, $2595 = 0, $2596 = 0, $2597 = 0, $2598 = 0, $2599 = 0, $26 = 0; + var $260 = 0, $2600 = 0, $2601 = 0, $2602 = 0, $2603 = 0, $2604 = 0, $2605 = 0, $2606 = 0, $2607 = 0, $2608 = 0, $2609 = 0, $261 = 0, $2610 = 0, $2611 = 0, $2612 = 0, $2613 = 0, $2614 = 0, $2615 = 0, $2616 = 0, $2617 = 0; + var $2618 = 0, $2619 = 0, $262 = 0, $2620 = 0, $2621 = 0, $2622 = 0, $2623 = 0, $2624 = 0, $2625 = 0, $2626 = 0, $2627 = 0, $2628 = 0, $2629 = 0, $263 = 0, $2630 = 0, $2631 = 0, $2632 = 0, $2633 = 0, $2634 = 0, $2635 = 0; + var $2636 = 0, $2637 = 0, $2638 = 0, $2639 = 0, $264 = 0, $2640 = 0, $2641 = 0, $2642 = 0, $2643 = 0, $2644 = 0, $2645 = 0, $2646 = 0, $2647 = 0, $2648 = 0, $2649 = 0, $265 = 0, $2650 = 0, $2651 = 0, $2652 = 0, $2653 = 0; + var $2654 = 0, $2655 = 0, $2656 = 0, $2657 = 0, $2658 = 0, $2659 = 0, $266 = 0, $2660 = 0, $2661 = 0, $2662 = 0, $2663 = 0, $2664 = 0, $2665 = 0, $2666 = 0, $2667 = 0, $2668 = 0, $2669 = 0, $267 = 0, $2670 = 0, $2671 = 0; + var $2672 = 0, $2673 = 0, $2674 = 0, $2675 = 0, $2676 = 0, $2677 = 0, $2678 = 0, $2679 = 0, $268 = 0, $2680 = 0, $2681 = 0, $2682 = 0, $2683 = 0, $2684 = 0, $2685 = 0, $2686 = 0, $2687 = 0, $2688 = 0, $2689 = 0, $269 = 0; + var $2690 = 0, $2691 = 0, $2692 = 0, $2693 = 0, $2694 = 0, $2695 = 0, $2696 = 0, $2697 = 0, $2698 = 0, $2699 = 0, $27 = 0, $270 = 0, $2700 = 0, $2701 = 0, $2702 = 0, $2703 = 0, $2704 = 0, $2705 = 0, $2706 = 0, $2707 = 0; + var $2708 = 0, $2709 = 0, $271 = 0, $2710 = 0, $2711 = 0, $2712 = 0, $2713 = 0, $2714 = 0, $2715 = 0, $2716 = 0, $2717 = 0, $2718 = 0, $2719 = 0, $272 = 0, $2720 = 0, $2721 = 0, $2722 = 0, $2723 = 0, $2724 = 0, $2725 = 0; + var $2726 = 0, $2727 = 0, $2728 = 0, $2729 = 0, $273 = 0, $2730 = 0, $2731 = 0, $2732 = 0, $2733 = 0, $2734 = 0, $2735 = 0, $2736 = 0, $2737 = 0, $2738 = 0, $2739 = 0, $274 = 0, $2740 = 0, $2741 = 0, $2742 = 0, $2743 = 0; + var $2744 = 0, $2745 = 0, $2746 = 0, $2747 = 0, $2748 = 0, $2749 = 0, $275 = 0, $2750 = 0, $2751 = 0, $2752 = 0, $2753 = 0, $2754 = 0, $2755 = 0, $2756 = 0, $2757 = 0, $2758 = 0, $2759 = 0, $276 = 0, $2760 = 0, $2761 = 0; + var $2762 = 0, $2763 = 0, $2764 = 0, $2765 = 0, $2766 = 0, $2767 = 0, $2768 = 0, $2769 = 0, $277 = 0, $2770 = 0, $2771 = 0, $2772 = 0, $2773 = 0, $2774 = 0, $2775 = 0, $2776 = 0, $2777 = 0, $2778 = 0, $2779 = 0, $278 = 0; + var $2780 = 0, $2781 = 0, $2782 = 0, $2783 = 0, $2784 = 0, $2785 = 0, $2786 = 0, $2787 = 0, $2788 = 0, $2789 = 0, $279 = 0, $2790 = 0, $2791 = 0, $2792 = 0, $2793 = 0, $2794 = 0, $2795 = 0, $2796 = 0, $2797 = 0, $2798 = 0; + var $2799 = 0, $28 = 0, $280 = 0, $2800 = 0, $2801 = 0, $2802 = 0, $2803 = 0, $2804 = 0, $2805 = 0, $2806 = 0, $2807 = 0, $2808 = 0, $2809 = 0, $281 = 0, $2810 = 0, $2811 = 0, $2812 = 0, $2813 = 0, $2814 = 0, $2815 = 0; + var $2816 = 0, $2817 = 0, $2818 = 0, $2819 = 0, $282 = 0, $2820 = 0, $2821 = 0, $2822 = 0, $2823 = 0, $2824 = 0, $2825 = 0, $2826 = 0, $2827 = 0, $2828 = 0, $2829 = 0, $283 = 0, $2830 = 0, $2831 = 0, $2832 = 0, $2833 = 0; + var $2834 = 0, $2835 = 0, $2836 = 0, $2837 = 0, $2838 = 0, $2839 = 0, $284 = 0, $2840 = 0, $2841 = 0, $2842 = 0, $2843 = 0, $2844 = 0, $2845 = 0, $2846 = 0, $2847 = 0, $2848 = 0, $2849 = 0, $285 = 0, $2850 = 0, $2851 = 0; + var $2852 = 0, $2853 = 0, $2854 = 0, $2855 = 0, $2856 = 0, $2857 = 0, $2858 = 0, $2859 = 0, $286 = 0, $2860 = 0, $2861 = 0, $2862 = 0, $2863 = 0, $2864 = 0, $2865 = 0, $2866 = 0, $2867 = 0, $2868 = 0, $2869 = 0, $287 = 0; + var $2870 = 0, $2871 = 0, $2872 = 0, $2873 = 0, $2874 = 0, $2875 = 0, $2876 = 0, $2877 = 0, $2878 = 0, $2879 = 0, $288 = 0, $2880 = 0, $2881 = 0, $2882 = 0, $2883 = 0, $2884 = 0, $2885 = 0, $2886 = 0, $2887 = 0, $2888 = 0; + var $2889 = 0, $289 = 0, $2890 = 0, $2891 = 0, $2892 = 0, $2893 = 0, $2894 = 0, $2895 = 0, $2896 = 0, $2897 = 0, $2898 = 0, $2899 = 0, $29 = 0, $290 = 0, $2900 = 0, $2901 = 0, $2902 = 0, $2903 = 0, $2904 = 0, $2905 = 0; + var $2906 = 0, $2907 = 0, $2908 = 0, $2909 = 0, $291 = 0, $2910 = 0, $2911 = 0, $2912 = 0, $2913 = 0, $2914 = 0, $2915 = 0, $2916 = 0, $2917 = 0, $2918 = 0, $2919 = 0, $292 = 0, $2920 = 0, $2921 = 0, $2922 = 0, $2923 = 0; + var $2924 = 0, $2925 = 0, $2926 = 0, $2927 = 0, $2928 = 0, $2929 = 0, $293 = 0, $2930 = 0, $2931 = 0, $2932 = 0, $2933 = 0, $2934 = 0, $2935 = 0, $2936 = 0, $2937 = 0, $2938 = 0, $2939 = 0, $294 = 0, $2940 = 0, $2941 = 0; + var $2942 = 0, $2943 = 0, $2944 = 0, $2945 = 0, $2946 = 0, $2947 = 0, $2948 = 0, $2949 = 0, $295 = 0, $2950 = 0, $2951 = 0, $2952 = 0, $2953 = 0, $2954 = 0, $2955 = 0, $2956 = 0, $2957 = 0, $2958 = 0, $2959 = 0, $296 = 0; + var $2960 = 0, $2961 = 0, $2962 = 0, $2963 = 0, $2964 = 0, $2965 = 0, $2966 = 0, $2967 = 0, $2968 = 0, $2969 = 0, $297 = 0, $2970 = 0, $2971 = 0, $2972 = 0, $2973 = 0, $2974 = 0, $2975 = 0, $2976 = 0, $2977 = 0, $2978 = 0; + var $2979 = 0, $298 = 0, $2980 = 0, $2981 = 0, $2982 = 0, $2983 = 0, $2984 = 0, $2985 = 0, $2986 = 0, $2987 = 0, $2988 = 0, $2989 = 0, $299 = 0, $2990 = 0, $2991 = 0, $2992 = 0, $2993 = 0, $2994 = 0, $2995 = 0, $2996 = 0; + var $2997 = 0, $2998 = 0, $2999 = 0, $3 = 0, $30 = 0, $300 = 0, $3000 = 0, $3001 = 0, $3002 = 0, $3003 = 0, $3004 = 0, $3005 = 0, $3006 = 0, $3007 = 0, $3008 = 0, $3009 = 0, $301 = 0, $3010 = 0, $3011 = 0, $3012 = 0; + var $3013 = 0, $3014 = 0, $3015 = 0, $3016 = 0, $3017 = 0, $3018 = 0, $3019 = 0, $302 = 0, $3020 = 0, $3021 = 0, $3022 = 0, $3023 = 0, $3024 = 0, $3025 = 0, $3026 = 0, $3027 = 0, $3028 = 0, $3029 = 0, $303 = 0, $3030 = 0; + var $3031 = 0, $3032 = 0, $3033 = 0, $3034 = 0, $3035 = 0, $3036 = 0, $3037 = 0, $3038 = 0, $3039 = 0, $304 = 0, $3040 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0; + var $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0; + var $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0; + var $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0; + var $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0; + var $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0; + var $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0; + var $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0; + var $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0; + var $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0; + var $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0; + var $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0; + var $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0; + var $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0; + var $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0; + var $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0; + var $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0; + var $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0; + var $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0; + var $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0; + var $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0; + var $674 = 0, $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0; + var $692 = 0, $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0; + var $71 = 0, $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0; + var $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0; + var $746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0; + var $764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0; + var $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0; + var $80 = 0, $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0; + var $818 = 0, $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0; + var $836 = 0, $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0; + var $854 = 0, $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0; + var $872 = 0, $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0; + var $890 = 0, $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0; + var $908 = 0, $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0; + var $926 = 0, $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0; + var $944 = 0, $945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0; + var $962 = 0, $963 = 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0; + var $980 = 0, $981 = 0, $982 = 0, $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0; + var $999 = 0, $al = 0, $ar = 0, $bl = 0, $br = 0, $cl = 0, $cr = 0, $dl = 0, $dr = 0, $el = 0, $er = 0, $hd = 0, $i = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $x = sp + 8|0; + $0 = $ctx; + $1 = $data; + $2 = $0; + $hd = $2; + $i = 0; + while(1) { + $3 = $i; + $4 = ($3|0)<(16); + if (!($4)) { + break; + } + $5 = $1; + $6 = $i; + $7 = $6<<2; + $8 = (($5) + ($7)|0); + $9 = (_buf_get_le32_1220($8)|0); + $10 = $i; + $11 = (($x) + ($10<<2)|0); + HEAP32[$11>>2] = $9; + $12 = $i; + $13 = (($12) + 1)|0; + $i = $13; + } + $14 = $hd; + $15 = ((($14)) + 160|0); + $16 = HEAP32[$15>>2]|0; + $ar = $16; + $al = $16; + $17 = $hd; + $18 = ((($17)) + 164|0); + $19 = HEAP32[$18>>2]|0; + $br = $19; + $bl = $19; + $20 = $hd; + $21 = ((($20)) + 168|0); + $22 = HEAP32[$21>>2]|0; + $cr = $22; + $cl = $22; + $23 = $hd; + $24 = ((($23)) + 172|0); + $25 = HEAP32[$24>>2]|0; + $dr = $25; + $dl = $25; + $26 = $hd; + $27 = ((($26)) + 176|0); + $28 = HEAP32[$27>>2]|0; + $er = $28; + $el = $28; + $29 = $bl; + $30 = $cl; + $31 = $29 ^ $30; + $32 = $dl; + $33 = $31 ^ $32; + $34 = (($33) + 0)|0; + $35 = HEAP32[$x>>2]|0; + $36 = (($34) + ($35))|0; + $37 = $al; + $38 = (($37) + ($36))|0; + $al = $38; + $39 = $al; + $40 = (_rol_1221($39,11)|0); + $41 = $el; + $42 = (($40) + ($41))|0; + $al = $42; + $43 = $cl; + $44 = (_rol_1221($43,10)|0); + $cl = $44; + $45 = $br; + $46 = $cr; + $47 = $dr; + $48 = $47 ^ -1; + $49 = $46 | $48; + $50 = $45 ^ $49; + $51 = (($50) + 1352829926)|0; + $52 = ((($x)) + 20|0); + $53 = HEAP32[$52>>2]|0; + $54 = (($51) + ($53))|0; + $55 = $ar; + $56 = (($55) + ($54))|0; + $ar = $56; + $57 = $ar; + $58 = (_rol_1221($57,8)|0); + $59 = $er; + $60 = (($58) + ($59))|0; + $ar = $60; + $61 = $cr; + $62 = (_rol_1221($61,10)|0); + $cr = $62; + $63 = $al; + $64 = $bl; + $65 = $63 ^ $64; + $66 = $cl; + $67 = $65 ^ $66; + $68 = (($67) + 0)|0; + $69 = ((($x)) + 4|0); + $70 = HEAP32[$69>>2]|0; + $71 = (($68) + ($70))|0; + $72 = $el; + $73 = (($72) + ($71))|0; + $el = $73; + $74 = $el; + $75 = (_rol_1221($74,14)|0); + $76 = $dl; + $77 = (($75) + ($76))|0; + $el = $77; + $78 = $bl; + $79 = (_rol_1221($78,10)|0); + $bl = $79; + $80 = $ar; + $81 = $br; + $82 = $cr; + $83 = $82 ^ -1; + $84 = $81 | $83; + $85 = $80 ^ $84; + $86 = (($85) + 1352829926)|0; + $87 = ((($x)) + 56|0); + $88 = HEAP32[$87>>2]|0; + $89 = (($86) + ($88))|0; + $90 = $er; + $91 = (($90) + ($89))|0; + $er = $91; + $92 = $er; + $93 = (_rol_1221($92,9)|0); + $94 = $dr; + $95 = (($93) + ($94))|0; + $er = $95; + $96 = $br; + $97 = (_rol_1221($96,10)|0); + $br = $97; + $98 = $el; + $99 = $al; + $100 = $98 ^ $99; + $101 = $bl; + $102 = $100 ^ $101; + $103 = (($102) + 0)|0; + $104 = ((($x)) + 8|0); + $105 = HEAP32[$104>>2]|0; + $106 = (($103) + ($105))|0; + $107 = $dl; + $108 = (($107) + ($106))|0; + $dl = $108; + $109 = $dl; + $110 = (_rol_1221($109,15)|0); + $111 = $cl; + $112 = (($110) + ($111))|0; + $dl = $112; + $113 = $al; + $114 = (_rol_1221($113,10)|0); + $al = $114; + $115 = $er; + $116 = $ar; + $117 = $br; + $118 = $117 ^ -1; + $119 = $116 | $118; + $120 = $115 ^ $119; + $121 = (($120) + 1352829926)|0; + $122 = ((($x)) + 28|0); + $123 = HEAP32[$122>>2]|0; + $124 = (($121) + ($123))|0; + $125 = $dr; + $126 = (($125) + ($124))|0; + $dr = $126; + $127 = $dr; + $128 = (_rol_1221($127,9)|0); + $129 = $cr; + $130 = (($128) + ($129))|0; + $dr = $130; + $131 = $ar; + $132 = (_rol_1221($131,10)|0); + $ar = $132; + $133 = $dl; + $134 = $el; + $135 = $133 ^ $134; + $136 = $al; + $137 = $135 ^ $136; + $138 = (($137) + 0)|0; + $139 = ((($x)) + 12|0); + $140 = HEAP32[$139>>2]|0; + $141 = (($138) + ($140))|0; + $142 = $cl; + $143 = (($142) + ($141))|0; + $cl = $143; + $144 = $cl; + $145 = (_rol_1221($144,12)|0); + $146 = $bl; + $147 = (($145) + ($146))|0; + $cl = $147; + $148 = $el; + $149 = (_rol_1221($148,10)|0); + $el = $149; + $150 = $dr; + $151 = $er; + $152 = $ar; + $153 = $152 ^ -1; + $154 = $151 | $153; + $155 = $150 ^ $154; + $156 = (($155) + 1352829926)|0; + $157 = HEAP32[$x>>2]|0; + $158 = (($156) + ($157))|0; + $159 = $cr; + $160 = (($159) + ($158))|0; + $cr = $160; + $161 = $cr; + $162 = (_rol_1221($161,11)|0); + $163 = $br; + $164 = (($162) + ($163))|0; + $cr = $164; + $165 = $er; + $166 = (_rol_1221($165,10)|0); + $er = $166; + $167 = $cl; + $168 = $dl; + $169 = $167 ^ $168; + $170 = $el; + $171 = $169 ^ $170; + $172 = (($171) + 0)|0; + $173 = ((($x)) + 16|0); + $174 = HEAP32[$173>>2]|0; + $175 = (($172) + ($174))|0; + $176 = $bl; + $177 = (($176) + ($175))|0; + $bl = $177; + $178 = $bl; + $179 = (_rol_1221($178,5)|0); + $180 = $al; + $181 = (($179) + ($180))|0; + $bl = $181; + $182 = $dl; + $183 = (_rol_1221($182,10)|0); + $dl = $183; + $184 = $cr; + $185 = $dr; + $186 = $er; + $187 = $186 ^ -1; + $188 = $185 | $187; + $189 = $184 ^ $188; + $190 = (($189) + 1352829926)|0; + $191 = ((($x)) + 36|0); + $192 = HEAP32[$191>>2]|0; + $193 = (($190) + ($192))|0; + $194 = $br; + $195 = (($194) + ($193))|0; + $br = $195; + $196 = $br; + $197 = (_rol_1221($196,13)|0); + $198 = $ar; + $199 = (($197) + ($198))|0; + $br = $199; + $200 = $dr; + $201 = (_rol_1221($200,10)|0); + $dr = $201; + $202 = $bl; + $203 = $cl; + $204 = $202 ^ $203; + $205 = $dl; + $206 = $204 ^ $205; + $207 = (($206) + 0)|0; + $208 = ((($x)) + 20|0); + $209 = HEAP32[$208>>2]|0; + $210 = (($207) + ($209))|0; + $211 = $al; + $212 = (($211) + ($210))|0; + $al = $212; + $213 = $al; + $214 = (_rol_1221($213,8)|0); + $215 = $el; + $216 = (($214) + ($215))|0; + $al = $216; + $217 = $cl; + $218 = (_rol_1221($217,10)|0); + $cl = $218; + $219 = $br; + $220 = $cr; + $221 = $dr; + $222 = $221 ^ -1; + $223 = $220 | $222; + $224 = $219 ^ $223; + $225 = (($224) + 1352829926)|0; + $226 = ((($x)) + 8|0); + $227 = HEAP32[$226>>2]|0; + $228 = (($225) + ($227))|0; + $229 = $ar; + $230 = (($229) + ($228))|0; + $ar = $230; + $231 = $ar; + $232 = (_rol_1221($231,15)|0); + $233 = $er; + $234 = (($232) + ($233))|0; + $ar = $234; + $235 = $cr; + $236 = (_rol_1221($235,10)|0); + $cr = $236; + $237 = $al; + $238 = $bl; + $239 = $237 ^ $238; + $240 = $cl; + $241 = $239 ^ $240; + $242 = (($241) + 0)|0; + $243 = ((($x)) + 24|0); + $244 = HEAP32[$243>>2]|0; + $245 = (($242) + ($244))|0; + $246 = $el; + $247 = (($246) + ($245))|0; + $el = $247; + $248 = $el; + $249 = (_rol_1221($248,7)|0); + $250 = $dl; + $251 = (($249) + ($250))|0; + $el = $251; + $252 = $bl; + $253 = (_rol_1221($252,10)|0); + $bl = $253; + $254 = $ar; + $255 = $br; + $256 = $cr; + $257 = $256 ^ -1; + $258 = $255 | $257; + $259 = $254 ^ $258; + $260 = (($259) + 1352829926)|0; + $261 = ((($x)) + 44|0); + $262 = HEAP32[$261>>2]|0; + $263 = (($260) + ($262))|0; + $264 = $er; + $265 = (($264) + ($263))|0; + $er = $265; + $266 = $er; + $267 = (_rol_1221($266,15)|0); + $268 = $dr; + $269 = (($267) + ($268))|0; + $er = $269; + $270 = $br; + $271 = (_rol_1221($270,10)|0); + $br = $271; + $272 = $el; + $273 = $al; + $274 = $272 ^ $273; + $275 = $bl; + $276 = $274 ^ $275; + $277 = (($276) + 0)|0; + $278 = ((($x)) + 28|0); + $279 = HEAP32[$278>>2]|0; + $280 = (($277) + ($279))|0; + $281 = $dl; + $282 = (($281) + ($280))|0; + $dl = $282; + $283 = $dl; + $284 = (_rol_1221($283,9)|0); + $285 = $cl; + $286 = (($284) + ($285))|0; + $dl = $286; + $287 = $al; + $288 = (_rol_1221($287,10)|0); + $al = $288; + $289 = $er; + $290 = $ar; + $291 = $br; + $292 = $291 ^ -1; + $293 = $290 | $292; + $294 = $289 ^ $293; + $295 = (($294) + 1352829926)|0; + $296 = ((($x)) + 16|0); + $297 = HEAP32[$296>>2]|0; + $298 = (($295) + ($297))|0; + $299 = $dr; + $300 = (($299) + ($298))|0; + $dr = $300; + $301 = $dr; + $302 = (_rol_1221($301,5)|0); + $303 = $cr; + $304 = (($302) + ($303))|0; + $dr = $304; + $305 = $ar; + $306 = (_rol_1221($305,10)|0); + $ar = $306; + $307 = $dl; + $308 = $el; + $309 = $307 ^ $308; + $310 = $al; + $311 = $309 ^ $310; + $312 = (($311) + 0)|0; + $313 = ((($x)) + 32|0); + $314 = HEAP32[$313>>2]|0; + $315 = (($312) + ($314))|0; + $316 = $cl; + $317 = (($316) + ($315))|0; + $cl = $317; + $318 = $cl; + $319 = (_rol_1221($318,11)|0); + $320 = $bl; + $321 = (($319) + ($320))|0; + $cl = $321; + $322 = $el; + $323 = (_rol_1221($322,10)|0); + $el = $323; + $324 = $dr; + $325 = $er; + $326 = $ar; + $327 = $326 ^ -1; + $328 = $325 | $327; + $329 = $324 ^ $328; + $330 = (($329) + 1352829926)|0; + $331 = ((($x)) + 52|0); + $332 = HEAP32[$331>>2]|0; + $333 = (($330) + ($332))|0; + $334 = $cr; + $335 = (($334) + ($333))|0; + $cr = $335; + $336 = $cr; + $337 = (_rol_1221($336,7)|0); + $338 = $br; + $339 = (($337) + ($338))|0; + $cr = $339; + $340 = $er; + $341 = (_rol_1221($340,10)|0); + $er = $341; + $342 = $cl; + $343 = $dl; + $344 = $342 ^ $343; + $345 = $el; + $346 = $344 ^ $345; + $347 = (($346) + 0)|0; + $348 = ((($x)) + 36|0); + $349 = HEAP32[$348>>2]|0; + $350 = (($347) + ($349))|0; + $351 = $bl; + $352 = (($351) + ($350))|0; + $bl = $352; + $353 = $bl; + $354 = (_rol_1221($353,13)|0); + $355 = $al; + $356 = (($354) + ($355))|0; + $bl = $356; + $357 = $dl; + $358 = (_rol_1221($357,10)|0); + $dl = $358; + $359 = $cr; + $360 = $dr; + $361 = $er; + $362 = $361 ^ -1; + $363 = $360 | $362; + $364 = $359 ^ $363; + $365 = (($364) + 1352829926)|0; + $366 = ((($x)) + 24|0); + $367 = HEAP32[$366>>2]|0; + $368 = (($365) + ($367))|0; + $369 = $br; + $370 = (($369) + ($368))|0; + $br = $370; + $371 = $br; + $372 = (_rol_1221($371,7)|0); + $373 = $ar; + $374 = (($372) + ($373))|0; + $br = $374; + $375 = $dr; + $376 = (_rol_1221($375,10)|0); + $dr = $376; + $377 = $bl; + $378 = $cl; + $379 = $377 ^ $378; + $380 = $dl; + $381 = $379 ^ $380; + $382 = (($381) + 0)|0; + $383 = ((($x)) + 40|0); + $384 = HEAP32[$383>>2]|0; + $385 = (($382) + ($384))|0; + $386 = $al; + $387 = (($386) + ($385))|0; + $al = $387; + $388 = $al; + $389 = (_rol_1221($388,14)|0); + $390 = $el; + $391 = (($389) + ($390))|0; + $al = $391; + $392 = $cl; + $393 = (_rol_1221($392,10)|0); + $cl = $393; + $394 = $br; + $395 = $cr; + $396 = $dr; + $397 = $396 ^ -1; + $398 = $395 | $397; + $399 = $394 ^ $398; + $400 = (($399) + 1352829926)|0; + $401 = ((($x)) + 60|0); + $402 = HEAP32[$401>>2]|0; + $403 = (($400) + ($402))|0; + $404 = $ar; + $405 = (($404) + ($403))|0; + $ar = $405; + $406 = $ar; + $407 = (_rol_1221($406,8)|0); + $408 = $er; + $409 = (($407) + ($408))|0; + $ar = $409; + $410 = $cr; + $411 = (_rol_1221($410,10)|0); + $cr = $411; + $412 = $al; + $413 = $bl; + $414 = $412 ^ $413; + $415 = $cl; + $416 = $414 ^ $415; + $417 = (($416) + 0)|0; + $418 = ((($x)) + 44|0); + $419 = HEAP32[$418>>2]|0; + $420 = (($417) + ($419))|0; + $421 = $el; + $422 = (($421) + ($420))|0; + $el = $422; + $423 = $el; + $424 = (_rol_1221($423,15)|0); + $425 = $dl; + $426 = (($424) + ($425))|0; + $el = $426; + $427 = $bl; + $428 = (_rol_1221($427,10)|0); + $bl = $428; + $429 = $ar; + $430 = $br; + $431 = $cr; + $432 = $431 ^ -1; + $433 = $430 | $432; + $434 = $429 ^ $433; + $435 = (($434) + 1352829926)|0; + $436 = ((($x)) + 32|0); + $437 = HEAP32[$436>>2]|0; + $438 = (($435) + ($437))|0; + $439 = $er; + $440 = (($439) + ($438))|0; + $er = $440; + $441 = $er; + $442 = (_rol_1221($441,11)|0); + $443 = $dr; + $444 = (($442) + ($443))|0; + $er = $444; + $445 = $br; + $446 = (_rol_1221($445,10)|0); + $br = $446; + $447 = $el; + $448 = $al; + $449 = $447 ^ $448; + $450 = $bl; + $451 = $449 ^ $450; + $452 = (($451) + 0)|0; + $453 = ((($x)) + 48|0); + $454 = HEAP32[$453>>2]|0; + $455 = (($452) + ($454))|0; + $456 = $dl; + $457 = (($456) + ($455))|0; + $dl = $457; + $458 = $dl; + $459 = (_rol_1221($458,6)|0); + $460 = $cl; + $461 = (($459) + ($460))|0; + $dl = $461; + $462 = $al; + $463 = (_rol_1221($462,10)|0); + $al = $463; + $464 = $er; + $465 = $ar; + $466 = $br; + $467 = $466 ^ -1; + $468 = $465 | $467; + $469 = $464 ^ $468; + $470 = (($469) + 1352829926)|0; + $471 = ((($x)) + 4|0); + $472 = HEAP32[$471>>2]|0; + $473 = (($470) + ($472))|0; + $474 = $dr; + $475 = (($474) + ($473))|0; + $dr = $475; + $476 = $dr; + $477 = (_rol_1221($476,14)|0); + $478 = $cr; + $479 = (($477) + ($478))|0; + $dr = $479; + $480 = $ar; + $481 = (_rol_1221($480,10)|0); + $ar = $481; + $482 = $dl; + $483 = $el; + $484 = $482 ^ $483; + $485 = $al; + $486 = $484 ^ $485; + $487 = (($486) + 0)|0; + $488 = ((($x)) + 52|0); + $489 = HEAP32[$488>>2]|0; + $490 = (($487) + ($489))|0; + $491 = $cl; + $492 = (($491) + ($490))|0; + $cl = $492; + $493 = $cl; + $494 = (_rol_1221($493,7)|0); + $495 = $bl; + $496 = (($494) + ($495))|0; + $cl = $496; + $497 = $el; + $498 = (_rol_1221($497,10)|0); + $el = $498; + $499 = $dr; + $500 = $er; + $501 = $ar; + $502 = $501 ^ -1; + $503 = $500 | $502; + $504 = $499 ^ $503; + $505 = (($504) + 1352829926)|0; + $506 = ((($x)) + 40|0); + $507 = HEAP32[$506>>2]|0; + $508 = (($505) + ($507))|0; + $509 = $cr; + $510 = (($509) + ($508))|0; + $cr = $510; + $511 = $cr; + $512 = (_rol_1221($511,14)|0); + $513 = $br; + $514 = (($512) + ($513))|0; + $cr = $514; + $515 = $er; + $516 = (_rol_1221($515,10)|0); + $er = $516; + $517 = $cl; + $518 = $dl; + $519 = $517 ^ $518; + $520 = $el; + $521 = $519 ^ $520; + $522 = (($521) + 0)|0; + $523 = ((($x)) + 56|0); + $524 = HEAP32[$523>>2]|0; + $525 = (($522) + ($524))|0; + $526 = $bl; + $527 = (($526) + ($525))|0; + $bl = $527; + $528 = $bl; + $529 = (_rol_1221($528,9)|0); + $530 = $al; + $531 = (($529) + ($530))|0; + $bl = $531; + $532 = $dl; + $533 = (_rol_1221($532,10)|0); + $dl = $533; + $534 = $cr; + $535 = $dr; + $536 = $er; + $537 = $536 ^ -1; + $538 = $535 | $537; + $539 = $534 ^ $538; + $540 = (($539) + 1352829926)|0; + $541 = ((($x)) + 12|0); + $542 = HEAP32[$541>>2]|0; + $543 = (($540) + ($542))|0; + $544 = $br; + $545 = (($544) + ($543))|0; + $br = $545; + $546 = $br; + $547 = (_rol_1221($546,12)|0); + $548 = $ar; + $549 = (($547) + ($548))|0; + $br = $549; + $550 = $dr; + $551 = (_rol_1221($550,10)|0); + $dr = $551; + $552 = $bl; + $553 = $cl; + $554 = $552 ^ $553; + $555 = $dl; + $556 = $554 ^ $555; + $557 = (($556) + 0)|0; + $558 = ((($x)) + 60|0); + $559 = HEAP32[$558>>2]|0; + $560 = (($557) + ($559))|0; + $561 = $al; + $562 = (($561) + ($560))|0; + $al = $562; + $563 = $al; + $564 = (_rol_1221($563,8)|0); + $565 = $el; + $566 = (($564) + ($565))|0; + $al = $566; + $567 = $cl; + $568 = (_rol_1221($567,10)|0); + $cl = $568; + $569 = $br; + $570 = $cr; + $571 = $dr; + $572 = $571 ^ -1; + $573 = $570 | $572; + $574 = $569 ^ $573; + $575 = (($574) + 1352829926)|0; + $576 = ((($x)) + 48|0); + $577 = HEAP32[$576>>2]|0; + $578 = (($575) + ($577))|0; + $579 = $ar; + $580 = (($579) + ($578))|0; + $ar = $580; + $581 = $ar; + $582 = (_rol_1221($581,6)|0); + $583 = $er; + $584 = (($582) + ($583))|0; + $ar = $584; + $585 = $cr; + $586 = (_rol_1221($585,10)|0); + $cr = $586; + $587 = $al; + $588 = $bl; + $589 = $587 & $588; + $590 = $al; + $591 = $590 ^ -1; + $592 = $cl; + $593 = $591 & $592; + $594 = $589 | $593; + $595 = (($594) + 1518500249)|0; + $596 = ((($x)) + 28|0); + $597 = HEAP32[$596>>2]|0; + $598 = (($595) + ($597))|0; + $599 = $el; + $600 = (($599) + ($598))|0; + $el = $600; + $601 = $el; + $602 = (_rol_1221($601,7)|0); + $603 = $dl; + $604 = (($602) + ($603))|0; + $el = $604; + $605 = $bl; + $606 = (_rol_1221($605,10)|0); + $bl = $606; + $607 = $ar; + $608 = $cr; + $609 = $607 & $608; + $610 = $br; + $611 = $cr; + $612 = $611 ^ -1; + $613 = $610 & $612; + $614 = $609 | $613; + $615 = (($614) + 1548603684)|0; + $616 = ((($x)) + 24|0); + $617 = HEAP32[$616>>2]|0; + $618 = (($615) + ($617))|0; + $619 = $er; + $620 = (($619) + ($618))|0; + $er = $620; + $621 = $er; + $622 = (_rol_1221($621,9)|0); + $623 = $dr; + $624 = (($622) + ($623))|0; + $er = $624; + $625 = $br; + $626 = (_rol_1221($625,10)|0); + $br = $626; + $627 = $el; + $628 = $al; + $629 = $627 & $628; + $630 = $el; + $631 = $630 ^ -1; + $632 = $bl; + $633 = $631 & $632; + $634 = $629 | $633; + $635 = (($634) + 1518500249)|0; + $636 = ((($x)) + 16|0); + $637 = HEAP32[$636>>2]|0; + $638 = (($635) + ($637))|0; + $639 = $dl; + $640 = (($639) + ($638))|0; + $dl = $640; + $641 = $dl; + $642 = (_rol_1221($641,6)|0); + $643 = $cl; + $644 = (($642) + ($643))|0; + $dl = $644; + $645 = $al; + $646 = (_rol_1221($645,10)|0); + $al = $646; + $647 = $er; + $648 = $br; + $649 = $647 & $648; + $650 = $ar; + $651 = $br; + $652 = $651 ^ -1; + $653 = $650 & $652; + $654 = $649 | $653; + $655 = (($654) + 1548603684)|0; + $656 = ((($x)) + 44|0); + $657 = HEAP32[$656>>2]|0; + $658 = (($655) + ($657))|0; + $659 = $dr; + $660 = (($659) + ($658))|0; + $dr = $660; + $661 = $dr; + $662 = (_rol_1221($661,13)|0); + $663 = $cr; + $664 = (($662) + ($663))|0; + $dr = $664; + $665 = $ar; + $666 = (_rol_1221($665,10)|0); + $ar = $666; + $667 = $dl; + $668 = $el; + $669 = $667 & $668; + $670 = $dl; + $671 = $670 ^ -1; + $672 = $al; + $673 = $671 & $672; + $674 = $669 | $673; + $675 = (($674) + 1518500249)|0; + $676 = ((($x)) + 52|0); + $677 = HEAP32[$676>>2]|0; + $678 = (($675) + ($677))|0; + $679 = $cl; + $680 = (($679) + ($678))|0; + $cl = $680; + $681 = $cl; + $682 = (_rol_1221($681,8)|0); + $683 = $bl; + $684 = (($682) + ($683))|0; + $cl = $684; + $685 = $el; + $686 = (_rol_1221($685,10)|0); + $el = $686; + $687 = $dr; + $688 = $ar; + $689 = $687 & $688; + $690 = $er; + $691 = $ar; + $692 = $691 ^ -1; + $693 = $690 & $692; + $694 = $689 | $693; + $695 = (($694) + 1548603684)|0; + $696 = ((($x)) + 12|0); + $697 = HEAP32[$696>>2]|0; + $698 = (($695) + ($697))|0; + $699 = $cr; + $700 = (($699) + ($698))|0; + $cr = $700; + $701 = $cr; + $702 = (_rol_1221($701,15)|0); + $703 = $br; + $704 = (($702) + ($703))|0; + $cr = $704; + $705 = $er; + $706 = (_rol_1221($705,10)|0); + $er = $706; + $707 = $cl; + $708 = $dl; + $709 = $707 & $708; + $710 = $cl; + $711 = $710 ^ -1; + $712 = $el; + $713 = $711 & $712; + $714 = $709 | $713; + $715 = (($714) + 1518500249)|0; + $716 = ((($x)) + 4|0); + $717 = HEAP32[$716>>2]|0; + $718 = (($715) + ($717))|0; + $719 = $bl; + $720 = (($719) + ($718))|0; + $bl = $720; + $721 = $bl; + $722 = (_rol_1221($721,13)|0); + $723 = $al; + $724 = (($722) + ($723))|0; + $bl = $724; + $725 = $dl; + $726 = (_rol_1221($725,10)|0); + $dl = $726; + $727 = $cr; + $728 = $er; + $729 = $727 & $728; + $730 = $dr; + $731 = $er; + $732 = $731 ^ -1; + $733 = $730 & $732; + $734 = $729 | $733; + $735 = (($734) + 1548603684)|0; + $736 = ((($x)) + 28|0); + $737 = HEAP32[$736>>2]|0; + $738 = (($735) + ($737))|0; + $739 = $br; + $740 = (($739) + ($738))|0; + $br = $740; + $741 = $br; + $742 = (_rol_1221($741,7)|0); + $743 = $ar; + $744 = (($742) + ($743))|0; + $br = $744; + $745 = $dr; + $746 = (_rol_1221($745,10)|0); + $dr = $746; + $747 = $bl; + $748 = $cl; + $749 = $747 & $748; + $750 = $bl; + $751 = $750 ^ -1; + $752 = $dl; + $753 = $751 & $752; + $754 = $749 | $753; + $755 = (($754) + 1518500249)|0; + $756 = ((($x)) + 40|0); + $757 = HEAP32[$756>>2]|0; + $758 = (($755) + ($757))|0; + $759 = $al; + $760 = (($759) + ($758))|0; + $al = $760; + $761 = $al; + $762 = (_rol_1221($761,11)|0); + $763 = $el; + $764 = (($762) + ($763))|0; + $al = $764; + $765 = $cl; + $766 = (_rol_1221($765,10)|0); + $cl = $766; + $767 = $br; + $768 = $dr; + $769 = $767 & $768; + $770 = $cr; + $771 = $dr; + $772 = $771 ^ -1; + $773 = $770 & $772; + $774 = $769 | $773; + $775 = (($774) + 1548603684)|0; + $776 = HEAP32[$x>>2]|0; + $777 = (($775) + ($776))|0; + $778 = $ar; + $779 = (($778) + ($777))|0; + $ar = $779; + $780 = $ar; + $781 = (_rol_1221($780,12)|0); + $782 = $er; + $783 = (($781) + ($782))|0; + $ar = $783; + $784 = $cr; + $785 = (_rol_1221($784,10)|0); + $cr = $785; + $786 = $al; + $787 = $bl; + $788 = $786 & $787; + $789 = $al; + $790 = $789 ^ -1; + $791 = $cl; + $792 = $790 & $791; + $793 = $788 | $792; + $794 = (($793) + 1518500249)|0; + $795 = ((($x)) + 24|0); + $796 = HEAP32[$795>>2]|0; + $797 = (($794) + ($796))|0; + $798 = $el; + $799 = (($798) + ($797))|0; + $el = $799; + $800 = $el; + $801 = (_rol_1221($800,9)|0); + $802 = $dl; + $803 = (($801) + ($802))|0; + $el = $803; + $804 = $bl; + $805 = (_rol_1221($804,10)|0); + $bl = $805; + $806 = $ar; + $807 = $cr; + $808 = $806 & $807; + $809 = $br; + $810 = $cr; + $811 = $810 ^ -1; + $812 = $809 & $811; + $813 = $808 | $812; + $814 = (($813) + 1548603684)|0; + $815 = ((($x)) + 52|0); + $816 = HEAP32[$815>>2]|0; + $817 = (($814) + ($816))|0; + $818 = $er; + $819 = (($818) + ($817))|0; + $er = $819; + $820 = $er; + $821 = (_rol_1221($820,8)|0); + $822 = $dr; + $823 = (($821) + ($822))|0; + $er = $823; + $824 = $br; + $825 = (_rol_1221($824,10)|0); + $br = $825; + $826 = $el; + $827 = $al; + $828 = $826 & $827; + $829 = $el; + $830 = $829 ^ -1; + $831 = $bl; + $832 = $830 & $831; + $833 = $828 | $832; + $834 = (($833) + 1518500249)|0; + $835 = ((($x)) + 60|0); + $836 = HEAP32[$835>>2]|0; + $837 = (($834) + ($836))|0; + $838 = $dl; + $839 = (($838) + ($837))|0; + $dl = $839; + $840 = $dl; + $841 = (_rol_1221($840,7)|0); + $842 = $cl; + $843 = (($841) + ($842))|0; + $dl = $843; + $844 = $al; + $845 = (_rol_1221($844,10)|0); + $al = $845; + $846 = $er; + $847 = $br; + $848 = $846 & $847; + $849 = $ar; + $850 = $br; + $851 = $850 ^ -1; + $852 = $849 & $851; + $853 = $848 | $852; + $854 = (($853) + 1548603684)|0; + $855 = ((($x)) + 20|0); + $856 = HEAP32[$855>>2]|0; + $857 = (($854) + ($856))|0; + $858 = $dr; + $859 = (($858) + ($857))|0; + $dr = $859; + $860 = $dr; + $861 = (_rol_1221($860,9)|0); + $862 = $cr; + $863 = (($861) + ($862))|0; + $dr = $863; + $864 = $ar; + $865 = (_rol_1221($864,10)|0); + $ar = $865; + $866 = $dl; + $867 = $el; + $868 = $866 & $867; + $869 = $dl; + $870 = $869 ^ -1; + $871 = $al; + $872 = $870 & $871; + $873 = $868 | $872; + $874 = (($873) + 1518500249)|0; + $875 = ((($x)) + 12|0); + $876 = HEAP32[$875>>2]|0; + $877 = (($874) + ($876))|0; + $878 = $cl; + $879 = (($878) + ($877))|0; + $cl = $879; + $880 = $cl; + $881 = (_rol_1221($880,15)|0); + $882 = $bl; + $883 = (($881) + ($882))|0; + $cl = $883; + $884 = $el; + $885 = (_rol_1221($884,10)|0); + $el = $885; + $886 = $dr; + $887 = $ar; + $888 = $886 & $887; + $889 = $er; + $890 = $ar; + $891 = $890 ^ -1; + $892 = $889 & $891; + $893 = $888 | $892; + $894 = (($893) + 1548603684)|0; + $895 = ((($x)) + 40|0); + $896 = HEAP32[$895>>2]|0; + $897 = (($894) + ($896))|0; + $898 = $cr; + $899 = (($898) + ($897))|0; + $cr = $899; + $900 = $cr; + $901 = (_rol_1221($900,11)|0); + $902 = $br; + $903 = (($901) + ($902))|0; + $cr = $903; + $904 = $er; + $905 = (_rol_1221($904,10)|0); + $er = $905; + $906 = $cl; + $907 = $dl; + $908 = $906 & $907; + $909 = $cl; + $910 = $909 ^ -1; + $911 = $el; + $912 = $910 & $911; + $913 = $908 | $912; + $914 = (($913) + 1518500249)|0; + $915 = ((($x)) + 48|0); + $916 = HEAP32[$915>>2]|0; + $917 = (($914) + ($916))|0; + $918 = $bl; + $919 = (($918) + ($917))|0; + $bl = $919; + $920 = $bl; + $921 = (_rol_1221($920,7)|0); + $922 = $al; + $923 = (($921) + ($922))|0; + $bl = $923; + $924 = $dl; + $925 = (_rol_1221($924,10)|0); + $dl = $925; + $926 = $cr; + $927 = $er; + $928 = $926 & $927; + $929 = $dr; + $930 = $er; + $931 = $930 ^ -1; + $932 = $929 & $931; + $933 = $928 | $932; + $934 = (($933) + 1548603684)|0; + $935 = ((($x)) + 56|0); + $936 = HEAP32[$935>>2]|0; + $937 = (($934) + ($936))|0; + $938 = $br; + $939 = (($938) + ($937))|0; + $br = $939; + $940 = $br; + $941 = (_rol_1221($940,7)|0); + $942 = $ar; + $943 = (($941) + ($942))|0; + $br = $943; + $944 = $dr; + $945 = (_rol_1221($944,10)|0); + $dr = $945; + $946 = $bl; + $947 = $cl; + $948 = $946 & $947; + $949 = $bl; + $950 = $949 ^ -1; + $951 = $dl; + $952 = $950 & $951; + $953 = $948 | $952; + $954 = (($953) + 1518500249)|0; + $955 = HEAP32[$x>>2]|0; + $956 = (($954) + ($955))|0; + $957 = $al; + $958 = (($957) + ($956))|0; + $al = $958; + $959 = $al; + $960 = (_rol_1221($959,12)|0); + $961 = $el; + $962 = (($960) + ($961))|0; + $al = $962; + $963 = $cl; + $964 = (_rol_1221($963,10)|0); + $cl = $964; + $965 = $br; + $966 = $dr; + $967 = $965 & $966; + $968 = $cr; + $969 = $dr; + $970 = $969 ^ -1; + $971 = $968 & $970; + $972 = $967 | $971; + $973 = (($972) + 1548603684)|0; + $974 = ((($x)) + 60|0); + $975 = HEAP32[$974>>2]|0; + $976 = (($973) + ($975))|0; + $977 = $ar; + $978 = (($977) + ($976))|0; + $ar = $978; + $979 = $ar; + $980 = (_rol_1221($979,7)|0); + $981 = $er; + $982 = (($980) + ($981))|0; + $ar = $982; + $983 = $cr; + $984 = (_rol_1221($983,10)|0); + $cr = $984; + $985 = $al; + $986 = $bl; + $987 = $985 & $986; + $988 = $al; + $989 = $988 ^ -1; + $990 = $cl; + $991 = $989 & $990; + $992 = $987 | $991; + $993 = (($992) + 1518500249)|0; + $994 = ((($x)) + 36|0); + $995 = HEAP32[$994>>2]|0; + $996 = (($993) + ($995))|0; + $997 = $el; + $998 = (($997) + ($996))|0; + $el = $998; + $999 = $el; + $1000 = (_rol_1221($999,15)|0); + $1001 = $dl; + $1002 = (($1000) + ($1001))|0; + $el = $1002; + $1003 = $bl; + $1004 = (_rol_1221($1003,10)|0); + $bl = $1004; + $1005 = $ar; + $1006 = $cr; + $1007 = $1005 & $1006; + $1008 = $br; + $1009 = $cr; + $1010 = $1009 ^ -1; + $1011 = $1008 & $1010; + $1012 = $1007 | $1011; + $1013 = (($1012) + 1548603684)|0; + $1014 = ((($x)) + 32|0); + $1015 = HEAP32[$1014>>2]|0; + $1016 = (($1013) + ($1015))|0; + $1017 = $er; + $1018 = (($1017) + ($1016))|0; + $er = $1018; + $1019 = $er; + $1020 = (_rol_1221($1019,12)|0); + $1021 = $dr; + $1022 = (($1020) + ($1021))|0; + $er = $1022; + $1023 = $br; + $1024 = (_rol_1221($1023,10)|0); + $br = $1024; + $1025 = $el; + $1026 = $al; + $1027 = $1025 & $1026; + $1028 = $el; + $1029 = $1028 ^ -1; + $1030 = $bl; + $1031 = $1029 & $1030; + $1032 = $1027 | $1031; + $1033 = (($1032) + 1518500249)|0; + $1034 = ((($x)) + 20|0); + $1035 = HEAP32[$1034>>2]|0; + $1036 = (($1033) + ($1035))|0; + $1037 = $dl; + $1038 = (($1037) + ($1036))|0; + $dl = $1038; + $1039 = $dl; + $1040 = (_rol_1221($1039,9)|0); + $1041 = $cl; + $1042 = (($1040) + ($1041))|0; + $dl = $1042; + $1043 = $al; + $1044 = (_rol_1221($1043,10)|0); + $al = $1044; + $1045 = $er; + $1046 = $br; + $1047 = $1045 & $1046; + $1048 = $ar; + $1049 = $br; + $1050 = $1049 ^ -1; + $1051 = $1048 & $1050; + $1052 = $1047 | $1051; + $1053 = (($1052) + 1548603684)|0; + $1054 = ((($x)) + 48|0); + $1055 = HEAP32[$1054>>2]|0; + $1056 = (($1053) + ($1055))|0; + $1057 = $dr; + $1058 = (($1057) + ($1056))|0; + $dr = $1058; + $1059 = $dr; + $1060 = (_rol_1221($1059,7)|0); + $1061 = $cr; + $1062 = (($1060) + ($1061))|0; + $dr = $1062; + $1063 = $ar; + $1064 = (_rol_1221($1063,10)|0); + $ar = $1064; + $1065 = $dl; + $1066 = $el; + $1067 = $1065 & $1066; + $1068 = $dl; + $1069 = $1068 ^ -1; + $1070 = $al; + $1071 = $1069 & $1070; + $1072 = $1067 | $1071; + $1073 = (($1072) + 1518500249)|0; + $1074 = ((($x)) + 8|0); + $1075 = HEAP32[$1074>>2]|0; + $1076 = (($1073) + ($1075))|0; + $1077 = $cl; + $1078 = (($1077) + ($1076))|0; + $cl = $1078; + $1079 = $cl; + $1080 = (_rol_1221($1079,11)|0); + $1081 = $bl; + $1082 = (($1080) + ($1081))|0; + $cl = $1082; + $1083 = $el; + $1084 = (_rol_1221($1083,10)|0); + $el = $1084; + $1085 = $dr; + $1086 = $ar; + $1087 = $1085 & $1086; + $1088 = $er; + $1089 = $ar; + $1090 = $1089 ^ -1; + $1091 = $1088 & $1090; + $1092 = $1087 | $1091; + $1093 = (($1092) + 1548603684)|0; + $1094 = ((($x)) + 16|0); + $1095 = HEAP32[$1094>>2]|0; + $1096 = (($1093) + ($1095))|0; + $1097 = $cr; + $1098 = (($1097) + ($1096))|0; + $cr = $1098; + $1099 = $cr; + $1100 = (_rol_1221($1099,6)|0); + $1101 = $br; + $1102 = (($1100) + ($1101))|0; + $cr = $1102; + $1103 = $er; + $1104 = (_rol_1221($1103,10)|0); + $er = $1104; + $1105 = $cl; + $1106 = $dl; + $1107 = $1105 & $1106; + $1108 = $cl; + $1109 = $1108 ^ -1; + $1110 = $el; + $1111 = $1109 & $1110; + $1112 = $1107 | $1111; + $1113 = (($1112) + 1518500249)|0; + $1114 = ((($x)) + 56|0); + $1115 = HEAP32[$1114>>2]|0; + $1116 = (($1113) + ($1115))|0; + $1117 = $bl; + $1118 = (($1117) + ($1116))|0; + $bl = $1118; + $1119 = $bl; + $1120 = (_rol_1221($1119,7)|0); + $1121 = $al; + $1122 = (($1120) + ($1121))|0; + $bl = $1122; + $1123 = $dl; + $1124 = (_rol_1221($1123,10)|0); + $dl = $1124; + $1125 = $cr; + $1126 = $er; + $1127 = $1125 & $1126; + $1128 = $dr; + $1129 = $er; + $1130 = $1129 ^ -1; + $1131 = $1128 & $1130; + $1132 = $1127 | $1131; + $1133 = (($1132) + 1548603684)|0; + $1134 = ((($x)) + 36|0); + $1135 = HEAP32[$1134>>2]|0; + $1136 = (($1133) + ($1135))|0; + $1137 = $br; + $1138 = (($1137) + ($1136))|0; + $br = $1138; + $1139 = $br; + $1140 = (_rol_1221($1139,15)|0); + $1141 = $ar; + $1142 = (($1140) + ($1141))|0; + $br = $1142; + $1143 = $dr; + $1144 = (_rol_1221($1143,10)|0); + $dr = $1144; + $1145 = $bl; + $1146 = $cl; + $1147 = $1145 & $1146; + $1148 = $bl; + $1149 = $1148 ^ -1; + $1150 = $dl; + $1151 = $1149 & $1150; + $1152 = $1147 | $1151; + $1153 = (($1152) + 1518500249)|0; + $1154 = ((($x)) + 44|0); + $1155 = HEAP32[$1154>>2]|0; + $1156 = (($1153) + ($1155))|0; + $1157 = $al; + $1158 = (($1157) + ($1156))|0; + $al = $1158; + $1159 = $al; + $1160 = (_rol_1221($1159,13)|0); + $1161 = $el; + $1162 = (($1160) + ($1161))|0; + $al = $1162; + $1163 = $cl; + $1164 = (_rol_1221($1163,10)|0); + $cl = $1164; + $1165 = $br; + $1166 = $dr; + $1167 = $1165 & $1166; + $1168 = $cr; + $1169 = $dr; + $1170 = $1169 ^ -1; + $1171 = $1168 & $1170; + $1172 = $1167 | $1171; + $1173 = (($1172) + 1548603684)|0; + $1174 = ((($x)) + 4|0); + $1175 = HEAP32[$1174>>2]|0; + $1176 = (($1173) + ($1175))|0; + $1177 = $ar; + $1178 = (($1177) + ($1176))|0; + $ar = $1178; + $1179 = $ar; + $1180 = (_rol_1221($1179,13)|0); + $1181 = $er; + $1182 = (($1180) + ($1181))|0; + $ar = $1182; + $1183 = $cr; + $1184 = (_rol_1221($1183,10)|0); + $cr = $1184; + $1185 = $al; + $1186 = $bl; + $1187 = $1185 & $1186; + $1188 = $al; + $1189 = $1188 ^ -1; + $1190 = $cl; + $1191 = $1189 & $1190; + $1192 = $1187 | $1191; + $1193 = (($1192) + 1518500249)|0; + $1194 = ((($x)) + 32|0); + $1195 = HEAP32[$1194>>2]|0; + $1196 = (($1193) + ($1195))|0; + $1197 = $el; + $1198 = (($1197) + ($1196))|0; + $el = $1198; + $1199 = $el; + $1200 = (_rol_1221($1199,12)|0); + $1201 = $dl; + $1202 = (($1200) + ($1201))|0; + $el = $1202; + $1203 = $bl; + $1204 = (_rol_1221($1203,10)|0); + $bl = $1204; + $1205 = $ar; + $1206 = $cr; + $1207 = $1205 & $1206; + $1208 = $br; + $1209 = $cr; + $1210 = $1209 ^ -1; + $1211 = $1208 & $1210; + $1212 = $1207 | $1211; + $1213 = (($1212) + 1548603684)|0; + $1214 = ((($x)) + 8|0); + $1215 = HEAP32[$1214>>2]|0; + $1216 = (($1213) + ($1215))|0; + $1217 = $er; + $1218 = (($1217) + ($1216))|0; + $er = $1218; + $1219 = $er; + $1220 = (_rol_1221($1219,11)|0); + $1221 = $dr; + $1222 = (($1220) + ($1221))|0; + $er = $1222; + $1223 = $br; + $1224 = (_rol_1221($1223,10)|0); + $br = $1224; + $1225 = $el; + $1226 = $al; + $1227 = $1226 ^ -1; + $1228 = $1225 | $1227; + $1229 = $bl; + $1230 = $1228 ^ $1229; + $1231 = (($1230) + 1859775393)|0; + $1232 = ((($x)) + 12|0); + $1233 = HEAP32[$1232>>2]|0; + $1234 = (($1231) + ($1233))|0; + $1235 = $dl; + $1236 = (($1235) + ($1234))|0; + $dl = $1236; + $1237 = $dl; + $1238 = (_rol_1221($1237,11)|0); + $1239 = $cl; + $1240 = (($1238) + ($1239))|0; + $dl = $1240; + $1241 = $al; + $1242 = (_rol_1221($1241,10)|0); + $al = $1242; + $1243 = $er; + $1244 = $ar; + $1245 = $1244 ^ -1; + $1246 = $1243 | $1245; + $1247 = $br; + $1248 = $1246 ^ $1247; + $1249 = (($1248) + 1836072691)|0; + $1250 = ((($x)) + 60|0); + $1251 = HEAP32[$1250>>2]|0; + $1252 = (($1249) + ($1251))|0; + $1253 = $dr; + $1254 = (($1253) + ($1252))|0; + $dr = $1254; + $1255 = $dr; + $1256 = (_rol_1221($1255,9)|0); + $1257 = $cr; + $1258 = (($1256) + ($1257))|0; + $dr = $1258; + $1259 = $ar; + $1260 = (_rol_1221($1259,10)|0); + $ar = $1260; + $1261 = $dl; + $1262 = $el; + $1263 = $1262 ^ -1; + $1264 = $1261 | $1263; + $1265 = $al; + $1266 = $1264 ^ $1265; + $1267 = (($1266) + 1859775393)|0; + $1268 = ((($x)) + 40|0); + $1269 = HEAP32[$1268>>2]|0; + $1270 = (($1267) + ($1269))|0; + $1271 = $cl; + $1272 = (($1271) + ($1270))|0; + $cl = $1272; + $1273 = $cl; + $1274 = (_rol_1221($1273,13)|0); + $1275 = $bl; + $1276 = (($1274) + ($1275))|0; + $cl = $1276; + $1277 = $el; + $1278 = (_rol_1221($1277,10)|0); + $el = $1278; + $1279 = $dr; + $1280 = $er; + $1281 = $1280 ^ -1; + $1282 = $1279 | $1281; + $1283 = $ar; + $1284 = $1282 ^ $1283; + $1285 = (($1284) + 1836072691)|0; + $1286 = ((($x)) + 20|0); + $1287 = HEAP32[$1286>>2]|0; + $1288 = (($1285) + ($1287))|0; + $1289 = $cr; + $1290 = (($1289) + ($1288))|0; + $cr = $1290; + $1291 = $cr; + $1292 = (_rol_1221($1291,7)|0); + $1293 = $br; + $1294 = (($1292) + ($1293))|0; + $cr = $1294; + $1295 = $er; + $1296 = (_rol_1221($1295,10)|0); + $er = $1296; + $1297 = $cl; + $1298 = $dl; + $1299 = $1298 ^ -1; + $1300 = $1297 | $1299; + $1301 = $el; + $1302 = $1300 ^ $1301; + $1303 = (($1302) + 1859775393)|0; + $1304 = ((($x)) + 56|0); + $1305 = HEAP32[$1304>>2]|0; + $1306 = (($1303) + ($1305))|0; + $1307 = $bl; + $1308 = (($1307) + ($1306))|0; + $bl = $1308; + $1309 = $bl; + $1310 = (_rol_1221($1309,6)|0); + $1311 = $al; + $1312 = (($1310) + ($1311))|0; + $bl = $1312; + $1313 = $dl; + $1314 = (_rol_1221($1313,10)|0); + $dl = $1314; + $1315 = $cr; + $1316 = $dr; + $1317 = $1316 ^ -1; + $1318 = $1315 | $1317; + $1319 = $er; + $1320 = $1318 ^ $1319; + $1321 = (($1320) + 1836072691)|0; + $1322 = ((($x)) + 4|0); + $1323 = HEAP32[$1322>>2]|0; + $1324 = (($1321) + ($1323))|0; + $1325 = $br; + $1326 = (($1325) + ($1324))|0; + $br = $1326; + $1327 = $br; + $1328 = (_rol_1221($1327,15)|0); + $1329 = $ar; + $1330 = (($1328) + ($1329))|0; + $br = $1330; + $1331 = $dr; + $1332 = (_rol_1221($1331,10)|0); + $dr = $1332; + $1333 = $bl; + $1334 = $cl; + $1335 = $1334 ^ -1; + $1336 = $1333 | $1335; + $1337 = $dl; + $1338 = $1336 ^ $1337; + $1339 = (($1338) + 1859775393)|0; + $1340 = ((($x)) + 16|0); + $1341 = HEAP32[$1340>>2]|0; + $1342 = (($1339) + ($1341))|0; + $1343 = $al; + $1344 = (($1343) + ($1342))|0; + $al = $1344; + $1345 = $al; + $1346 = (_rol_1221($1345,7)|0); + $1347 = $el; + $1348 = (($1346) + ($1347))|0; + $al = $1348; + $1349 = $cl; + $1350 = (_rol_1221($1349,10)|0); + $cl = $1350; + $1351 = $br; + $1352 = $cr; + $1353 = $1352 ^ -1; + $1354 = $1351 | $1353; + $1355 = $dr; + $1356 = $1354 ^ $1355; + $1357 = (($1356) + 1836072691)|0; + $1358 = ((($x)) + 12|0); + $1359 = HEAP32[$1358>>2]|0; + $1360 = (($1357) + ($1359))|0; + $1361 = $ar; + $1362 = (($1361) + ($1360))|0; + $ar = $1362; + $1363 = $ar; + $1364 = (_rol_1221($1363,11)|0); + $1365 = $er; + $1366 = (($1364) + ($1365))|0; + $ar = $1366; + $1367 = $cr; + $1368 = (_rol_1221($1367,10)|0); + $cr = $1368; + $1369 = $al; + $1370 = $bl; + $1371 = $1370 ^ -1; + $1372 = $1369 | $1371; + $1373 = $cl; + $1374 = $1372 ^ $1373; + $1375 = (($1374) + 1859775393)|0; + $1376 = ((($x)) + 36|0); + $1377 = HEAP32[$1376>>2]|0; + $1378 = (($1375) + ($1377))|0; + $1379 = $el; + $1380 = (($1379) + ($1378))|0; + $el = $1380; + $1381 = $el; + $1382 = (_rol_1221($1381,14)|0); + $1383 = $dl; + $1384 = (($1382) + ($1383))|0; + $el = $1384; + $1385 = $bl; + $1386 = (_rol_1221($1385,10)|0); + $bl = $1386; + $1387 = $ar; + $1388 = $br; + $1389 = $1388 ^ -1; + $1390 = $1387 | $1389; + $1391 = $cr; + $1392 = $1390 ^ $1391; + $1393 = (($1392) + 1836072691)|0; + $1394 = ((($x)) + 28|0); + $1395 = HEAP32[$1394>>2]|0; + $1396 = (($1393) + ($1395))|0; + $1397 = $er; + $1398 = (($1397) + ($1396))|0; + $er = $1398; + $1399 = $er; + $1400 = (_rol_1221($1399,8)|0); + $1401 = $dr; + $1402 = (($1400) + ($1401))|0; + $er = $1402; + $1403 = $br; + $1404 = (_rol_1221($1403,10)|0); + $br = $1404; + $1405 = $el; + $1406 = $al; + $1407 = $1406 ^ -1; + $1408 = $1405 | $1407; + $1409 = $bl; + $1410 = $1408 ^ $1409; + $1411 = (($1410) + 1859775393)|0; + $1412 = ((($x)) + 60|0); + $1413 = HEAP32[$1412>>2]|0; + $1414 = (($1411) + ($1413))|0; + $1415 = $dl; + $1416 = (($1415) + ($1414))|0; + $dl = $1416; + $1417 = $dl; + $1418 = (_rol_1221($1417,9)|0); + $1419 = $cl; + $1420 = (($1418) + ($1419))|0; + $dl = $1420; + $1421 = $al; + $1422 = (_rol_1221($1421,10)|0); + $al = $1422; + $1423 = $er; + $1424 = $ar; + $1425 = $1424 ^ -1; + $1426 = $1423 | $1425; + $1427 = $br; + $1428 = $1426 ^ $1427; + $1429 = (($1428) + 1836072691)|0; + $1430 = ((($x)) + 56|0); + $1431 = HEAP32[$1430>>2]|0; + $1432 = (($1429) + ($1431))|0; + $1433 = $dr; + $1434 = (($1433) + ($1432))|0; + $dr = $1434; + $1435 = $dr; + $1436 = (_rol_1221($1435,6)|0); + $1437 = $cr; + $1438 = (($1436) + ($1437))|0; + $dr = $1438; + $1439 = $ar; + $1440 = (_rol_1221($1439,10)|0); + $ar = $1440; + $1441 = $dl; + $1442 = $el; + $1443 = $1442 ^ -1; + $1444 = $1441 | $1443; + $1445 = $al; + $1446 = $1444 ^ $1445; + $1447 = (($1446) + 1859775393)|0; + $1448 = ((($x)) + 32|0); + $1449 = HEAP32[$1448>>2]|0; + $1450 = (($1447) + ($1449))|0; + $1451 = $cl; + $1452 = (($1451) + ($1450))|0; + $cl = $1452; + $1453 = $cl; + $1454 = (_rol_1221($1453,13)|0); + $1455 = $bl; + $1456 = (($1454) + ($1455))|0; + $cl = $1456; + $1457 = $el; + $1458 = (_rol_1221($1457,10)|0); + $el = $1458; + $1459 = $dr; + $1460 = $er; + $1461 = $1460 ^ -1; + $1462 = $1459 | $1461; + $1463 = $ar; + $1464 = $1462 ^ $1463; + $1465 = (($1464) + 1836072691)|0; + $1466 = ((($x)) + 24|0); + $1467 = HEAP32[$1466>>2]|0; + $1468 = (($1465) + ($1467))|0; + $1469 = $cr; + $1470 = (($1469) + ($1468))|0; + $cr = $1470; + $1471 = $cr; + $1472 = (_rol_1221($1471,6)|0); + $1473 = $br; + $1474 = (($1472) + ($1473))|0; + $cr = $1474; + $1475 = $er; + $1476 = (_rol_1221($1475,10)|0); + $er = $1476; + $1477 = $cl; + $1478 = $dl; + $1479 = $1478 ^ -1; + $1480 = $1477 | $1479; + $1481 = $el; + $1482 = $1480 ^ $1481; + $1483 = (($1482) + 1859775393)|0; + $1484 = ((($x)) + 4|0); + $1485 = HEAP32[$1484>>2]|0; + $1486 = (($1483) + ($1485))|0; + $1487 = $bl; + $1488 = (($1487) + ($1486))|0; + $bl = $1488; + $1489 = $bl; + $1490 = (_rol_1221($1489,15)|0); + $1491 = $al; + $1492 = (($1490) + ($1491))|0; + $bl = $1492; + $1493 = $dl; + $1494 = (_rol_1221($1493,10)|0); + $dl = $1494; + $1495 = $cr; + $1496 = $dr; + $1497 = $1496 ^ -1; + $1498 = $1495 | $1497; + $1499 = $er; + $1500 = $1498 ^ $1499; + $1501 = (($1500) + 1836072691)|0; + $1502 = ((($x)) + 36|0); + $1503 = HEAP32[$1502>>2]|0; + $1504 = (($1501) + ($1503))|0; + $1505 = $br; + $1506 = (($1505) + ($1504))|0; + $br = $1506; + $1507 = $br; + $1508 = (_rol_1221($1507,14)|0); + $1509 = $ar; + $1510 = (($1508) + ($1509))|0; + $br = $1510; + $1511 = $dr; + $1512 = (_rol_1221($1511,10)|0); + $dr = $1512; + $1513 = $bl; + $1514 = $cl; + $1515 = $1514 ^ -1; + $1516 = $1513 | $1515; + $1517 = $dl; + $1518 = $1516 ^ $1517; + $1519 = (($1518) + 1859775393)|0; + $1520 = ((($x)) + 8|0); + $1521 = HEAP32[$1520>>2]|0; + $1522 = (($1519) + ($1521))|0; + $1523 = $al; + $1524 = (($1523) + ($1522))|0; + $al = $1524; + $1525 = $al; + $1526 = (_rol_1221($1525,14)|0); + $1527 = $el; + $1528 = (($1526) + ($1527))|0; + $al = $1528; + $1529 = $cl; + $1530 = (_rol_1221($1529,10)|0); + $cl = $1530; + $1531 = $br; + $1532 = $cr; + $1533 = $1532 ^ -1; + $1534 = $1531 | $1533; + $1535 = $dr; + $1536 = $1534 ^ $1535; + $1537 = (($1536) + 1836072691)|0; + $1538 = ((($x)) + 44|0); + $1539 = HEAP32[$1538>>2]|0; + $1540 = (($1537) + ($1539))|0; + $1541 = $ar; + $1542 = (($1541) + ($1540))|0; + $ar = $1542; + $1543 = $ar; + $1544 = (_rol_1221($1543,12)|0); + $1545 = $er; + $1546 = (($1544) + ($1545))|0; + $ar = $1546; + $1547 = $cr; + $1548 = (_rol_1221($1547,10)|0); + $cr = $1548; + $1549 = $al; + $1550 = $bl; + $1551 = $1550 ^ -1; + $1552 = $1549 | $1551; + $1553 = $cl; + $1554 = $1552 ^ $1553; + $1555 = (($1554) + 1859775393)|0; + $1556 = ((($x)) + 28|0); + $1557 = HEAP32[$1556>>2]|0; + $1558 = (($1555) + ($1557))|0; + $1559 = $el; + $1560 = (($1559) + ($1558))|0; + $el = $1560; + $1561 = $el; + $1562 = (_rol_1221($1561,8)|0); + $1563 = $dl; + $1564 = (($1562) + ($1563))|0; + $el = $1564; + $1565 = $bl; + $1566 = (_rol_1221($1565,10)|0); + $bl = $1566; + $1567 = $ar; + $1568 = $br; + $1569 = $1568 ^ -1; + $1570 = $1567 | $1569; + $1571 = $cr; + $1572 = $1570 ^ $1571; + $1573 = (($1572) + 1836072691)|0; + $1574 = ((($x)) + 32|0); + $1575 = HEAP32[$1574>>2]|0; + $1576 = (($1573) + ($1575))|0; + $1577 = $er; + $1578 = (($1577) + ($1576))|0; + $er = $1578; + $1579 = $er; + $1580 = (_rol_1221($1579,13)|0); + $1581 = $dr; + $1582 = (($1580) + ($1581))|0; + $er = $1582; + $1583 = $br; + $1584 = (_rol_1221($1583,10)|0); + $br = $1584; + $1585 = $el; + $1586 = $al; + $1587 = $1586 ^ -1; + $1588 = $1585 | $1587; + $1589 = $bl; + $1590 = $1588 ^ $1589; + $1591 = (($1590) + 1859775393)|0; + $1592 = HEAP32[$x>>2]|0; + $1593 = (($1591) + ($1592))|0; + $1594 = $dl; + $1595 = (($1594) + ($1593))|0; + $dl = $1595; + $1596 = $dl; + $1597 = (_rol_1221($1596,13)|0); + $1598 = $cl; + $1599 = (($1597) + ($1598))|0; + $dl = $1599; + $1600 = $al; + $1601 = (_rol_1221($1600,10)|0); + $al = $1601; + $1602 = $er; + $1603 = $ar; + $1604 = $1603 ^ -1; + $1605 = $1602 | $1604; + $1606 = $br; + $1607 = $1605 ^ $1606; + $1608 = (($1607) + 1836072691)|0; + $1609 = ((($x)) + 48|0); + $1610 = HEAP32[$1609>>2]|0; + $1611 = (($1608) + ($1610))|0; + $1612 = $dr; + $1613 = (($1612) + ($1611))|0; + $dr = $1613; + $1614 = $dr; + $1615 = (_rol_1221($1614,5)|0); + $1616 = $cr; + $1617 = (($1615) + ($1616))|0; + $dr = $1617; + $1618 = $ar; + $1619 = (_rol_1221($1618,10)|0); + $ar = $1619; + $1620 = $dl; + $1621 = $el; + $1622 = $1621 ^ -1; + $1623 = $1620 | $1622; + $1624 = $al; + $1625 = $1623 ^ $1624; + $1626 = (($1625) + 1859775393)|0; + $1627 = ((($x)) + 24|0); + $1628 = HEAP32[$1627>>2]|0; + $1629 = (($1626) + ($1628))|0; + $1630 = $cl; + $1631 = (($1630) + ($1629))|0; + $cl = $1631; + $1632 = $cl; + $1633 = (_rol_1221($1632,6)|0); + $1634 = $bl; + $1635 = (($1633) + ($1634))|0; + $cl = $1635; + $1636 = $el; + $1637 = (_rol_1221($1636,10)|0); + $el = $1637; + $1638 = $dr; + $1639 = $er; + $1640 = $1639 ^ -1; + $1641 = $1638 | $1640; + $1642 = $ar; + $1643 = $1641 ^ $1642; + $1644 = (($1643) + 1836072691)|0; + $1645 = ((($x)) + 8|0); + $1646 = HEAP32[$1645>>2]|0; + $1647 = (($1644) + ($1646))|0; + $1648 = $cr; + $1649 = (($1648) + ($1647))|0; + $cr = $1649; + $1650 = $cr; + $1651 = (_rol_1221($1650,14)|0); + $1652 = $br; + $1653 = (($1651) + ($1652))|0; + $cr = $1653; + $1654 = $er; + $1655 = (_rol_1221($1654,10)|0); + $er = $1655; + $1656 = $cl; + $1657 = $dl; + $1658 = $1657 ^ -1; + $1659 = $1656 | $1658; + $1660 = $el; + $1661 = $1659 ^ $1660; + $1662 = (($1661) + 1859775393)|0; + $1663 = ((($x)) + 52|0); + $1664 = HEAP32[$1663>>2]|0; + $1665 = (($1662) + ($1664))|0; + $1666 = $bl; + $1667 = (($1666) + ($1665))|0; + $bl = $1667; + $1668 = $bl; + $1669 = (_rol_1221($1668,5)|0); + $1670 = $al; + $1671 = (($1669) + ($1670))|0; + $bl = $1671; + $1672 = $dl; + $1673 = (_rol_1221($1672,10)|0); + $dl = $1673; + $1674 = $cr; + $1675 = $dr; + $1676 = $1675 ^ -1; + $1677 = $1674 | $1676; + $1678 = $er; + $1679 = $1677 ^ $1678; + $1680 = (($1679) + 1836072691)|0; + $1681 = ((($x)) + 40|0); + $1682 = HEAP32[$1681>>2]|0; + $1683 = (($1680) + ($1682))|0; + $1684 = $br; + $1685 = (($1684) + ($1683))|0; + $br = $1685; + $1686 = $br; + $1687 = (_rol_1221($1686,13)|0); + $1688 = $ar; + $1689 = (($1687) + ($1688))|0; + $br = $1689; + $1690 = $dr; + $1691 = (_rol_1221($1690,10)|0); + $dr = $1691; + $1692 = $bl; + $1693 = $cl; + $1694 = $1693 ^ -1; + $1695 = $1692 | $1694; + $1696 = $dl; + $1697 = $1695 ^ $1696; + $1698 = (($1697) + 1859775393)|0; + $1699 = ((($x)) + 44|0); + $1700 = HEAP32[$1699>>2]|0; + $1701 = (($1698) + ($1700))|0; + $1702 = $al; + $1703 = (($1702) + ($1701))|0; + $al = $1703; + $1704 = $al; + $1705 = (_rol_1221($1704,12)|0); + $1706 = $el; + $1707 = (($1705) + ($1706))|0; + $al = $1707; + $1708 = $cl; + $1709 = (_rol_1221($1708,10)|0); + $cl = $1709; + $1710 = $br; + $1711 = $cr; + $1712 = $1711 ^ -1; + $1713 = $1710 | $1712; + $1714 = $dr; + $1715 = $1713 ^ $1714; + $1716 = (($1715) + 1836072691)|0; + $1717 = HEAP32[$x>>2]|0; + $1718 = (($1716) + ($1717))|0; + $1719 = $ar; + $1720 = (($1719) + ($1718))|0; + $ar = $1720; + $1721 = $ar; + $1722 = (_rol_1221($1721,13)|0); + $1723 = $er; + $1724 = (($1722) + ($1723))|0; + $ar = $1724; + $1725 = $cr; + $1726 = (_rol_1221($1725,10)|0); + $cr = $1726; + $1727 = $al; + $1728 = $bl; + $1729 = $1728 ^ -1; + $1730 = $1727 | $1729; + $1731 = $cl; + $1732 = $1730 ^ $1731; + $1733 = (($1732) + 1859775393)|0; + $1734 = ((($x)) + 20|0); + $1735 = HEAP32[$1734>>2]|0; + $1736 = (($1733) + ($1735))|0; + $1737 = $el; + $1738 = (($1737) + ($1736))|0; + $el = $1738; + $1739 = $el; + $1740 = (_rol_1221($1739,7)|0); + $1741 = $dl; + $1742 = (($1740) + ($1741))|0; + $el = $1742; + $1743 = $bl; + $1744 = (_rol_1221($1743,10)|0); + $bl = $1744; + $1745 = $ar; + $1746 = $br; + $1747 = $1746 ^ -1; + $1748 = $1745 | $1747; + $1749 = $cr; + $1750 = $1748 ^ $1749; + $1751 = (($1750) + 1836072691)|0; + $1752 = ((($x)) + 16|0); + $1753 = HEAP32[$1752>>2]|0; + $1754 = (($1751) + ($1753))|0; + $1755 = $er; + $1756 = (($1755) + ($1754))|0; + $er = $1756; + $1757 = $er; + $1758 = (_rol_1221($1757,7)|0); + $1759 = $dr; + $1760 = (($1758) + ($1759))|0; + $er = $1760; + $1761 = $br; + $1762 = (_rol_1221($1761,10)|0); + $br = $1762; + $1763 = $el; + $1764 = $al; + $1765 = $1764 ^ -1; + $1766 = $1763 | $1765; + $1767 = $bl; + $1768 = $1766 ^ $1767; + $1769 = (($1768) + 1859775393)|0; + $1770 = ((($x)) + 48|0); + $1771 = HEAP32[$1770>>2]|0; + $1772 = (($1769) + ($1771))|0; + $1773 = $dl; + $1774 = (($1773) + ($1772))|0; + $dl = $1774; + $1775 = $dl; + $1776 = (_rol_1221($1775,5)|0); + $1777 = $cl; + $1778 = (($1776) + ($1777))|0; + $dl = $1778; + $1779 = $al; + $1780 = (_rol_1221($1779,10)|0); + $al = $1780; + $1781 = $er; + $1782 = $ar; + $1783 = $1782 ^ -1; + $1784 = $1781 | $1783; + $1785 = $br; + $1786 = $1784 ^ $1785; + $1787 = (($1786) + 1836072691)|0; + $1788 = ((($x)) + 52|0); + $1789 = HEAP32[$1788>>2]|0; + $1790 = (($1787) + ($1789))|0; + $1791 = $dr; + $1792 = (($1791) + ($1790))|0; + $dr = $1792; + $1793 = $dr; + $1794 = (_rol_1221($1793,5)|0); + $1795 = $cr; + $1796 = (($1794) + ($1795))|0; + $dr = $1796; + $1797 = $ar; + $1798 = (_rol_1221($1797,10)|0); + $ar = $1798; + $1799 = $dl; + $1800 = $al; + $1801 = $1799 & $1800; + $1802 = $el; + $1803 = $al; + $1804 = $1803 ^ -1; + $1805 = $1802 & $1804; + $1806 = $1801 | $1805; + $1807 = (($1806) + -1894007588)|0; + $1808 = ((($x)) + 4|0); + $1809 = HEAP32[$1808>>2]|0; + $1810 = (($1807) + ($1809))|0; + $1811 = $cl; + $1812 = (($1811) + ($1810))|0; + $cl = $1812; + $1813 = $cl; + $1814 = (_rol_1221($1813,11)|0); + $1815 = $bl; + $1816 = (($1814) + ($1815))|0; + $cl = $1816; + $1817 = $el; + $1818 = (_rol_1221($1817,10)|0); + $el = $1818; + $1819 = $dr; + $1820 = $er; + $1821 = $1819 & $1820; + $1822 = $dr; + $1823 = $1822 ^ -1; + $1824 = $ar; + $1825 = $1823 & $1824; + $1826 = $1821 | $1825; + $1827 = (($1826) + 2053994217)|0; + $1828 = ((($x)) + 32|0); + $1829 = HEAP32[$1828>>2]|0; + $1830 = (($1827) + ($1829))|0; + $1831 = $cr; + $1832 = (($1831) + ($1830))|0; + $cr = $1832; + $1833 = $cr; + $1834 = (_rol_1221($1833,15)|0); + $1835 = $br; + $1836 = (($1834) + ($1835))|0; + $cr = $1836; + $1837 = $er; + $1838 = (_rol_1221($1837,10)|0); + $er = $1838; + $1839 = $cl; + $1840 = $el; + $1841 = $1839 & $1840; + $1842 = $dl; + $1843 = $el; + $1844 = $1843 ^ -1; + $1845 = $1842 & $1844; + $1846 = $1841 | $1845; + $1847 = (($1846) + -1894007588)|0; + $1848 = ((($x)) + 36|0); + $1849 = HEAP32[$1848>>2]|0; + $1850 = (($1847) + ($1849))|0; + $1851 = $bl; + $1852 = (($1851) + ($1850))|0; + $bl = $1852; + $1853 = $bl; + $1854 = (_rol_1221($1853,12)|0); + $1855 = $al; + $1856 = (($1854) + ($1855))|0; + $bl = $1856; + $1857 = $dl; + $1858 = (_rol_1221($1857,10)|0); + $dl = $1858; + $1859 = $cr; + $1860 = $dr; + $1861 = $1859 & $1860; + $1862 = $cr; + $1863 = $1862 ^ -1; + $1864 = $er; + $1865 = $1863 & $1864; + $1866 = $1861 | $1865; + $1867 = (($1866) + 2053994217)|0; + $1868 = ((($x)) + 24|0); + $1869 = HEAP32[$1868>>2]|0; + $1870 = (($1867) + ($1869))|0; + $1871 = $br; + $1872 = (($1871) + ($1870))|0; + $br = $1872; + $1873 = $br; + $1874 = (_rol_1221($1873,5)|0); + $1875 = $ar; + $1876 = (($1874) + ($1875))|0; + $br = $1876; + $1877 = $dr; + $1878 = (_rol_1221($1877,10)|0); + $dr = $1878; + $1879 = $bl; + $1880 = $dl; + $1881 = $1879 & $1880; + $1882 = $cl; + $1883 = $dl; + $1884 = $1883 ^ -1; + $1885 = $1882 & $1884; + $1886 = $1881 | $1885; + $1887 = (($1886) + -1894007588)|0; + $1888 = ((($x)) + 44|0); + $1889 = HEAP32[$1888>>2]|0; + $1890 = (($1887) + ($1889))|0; + $1891 = $al; + $1892 = (($1891) + ($1890))|0; + $al = $1892; + $1893 = $al; + $1894 = (_rol_1221($1893,14)|0); + $1895 = $el; + $1896 = (($1894) + ($1895))|0; + $al = $1896; + $1897 = $cl; + $1898 = (_rol_1221($1897,10)|0); + $cl = $1898; + $1899 = $br; + $1900 = $cr; + $1901 = $1899 & $1900; + $1902 = $br; + $1903 = $1902 ^ -1; + $1904 = $dr; + $1905 = $1903 & $1904; + $1906 = $1901 | $1905; + $1907 = (($1906) + 2053994217)|0; + $1908 = ((($x)) + 16|0); + $1909 = HEAP32[$1908>>2]|0; + $1910 = (($1907) + ($1909))|0; + $1911 = $ar; + $1912 = (($1911) + ($1910))|0; + $ar = $1912; + $1913 = $ar; + $1914 = (_rol_1221($1913,8)|0); + $1915 = $er; + $1916 = (($1914) + ($1915))|0; + $ar = $1916; + $1917 = $cr; + $1918 = (_rol_1221($1917,10)|0); + $cr = $1918; + $1919 = $al; + $1920 = $cl; + $1921 = $1919 & $1920; + $1922 = $bl; + $1923 = $cl; + $1924 = $1923 ^ -1; + $1925 = $1922 & $1924; + $1926 = $1921 | $1925; + $1927 = (($1926) + -1894007588)|0; + $1928 = ((($x)) + 40|0); + $1929 = HEAP32[$1928>>2]|0; + $1930 = (($1927) + ($1929))|0; + $1931 = $el; + $1932 = (($1931) + ($1930))|0; + $el = $1932; + $1933 = $el; + $1934 = (_rol_1221($1933,15)|0); + $1935 = $dl; + $1936 = (($1934) + ($1935))|0; + $el = $1936; + $1937 = $bl; + $1938 = (_rol_1221($1937,10)|0); + $bl = $1938; + $1939 = $ar; + $1940 = $br; + $1941 = $1939 & $1940; + $1942 = $ar; + $1943 = $1942 ^ -1; + $1944 = $cr; + $1945 = $1943 & $1944; + $1946 = $1941 | $1945; + $1947 = (($1946) + 2053994217)|0; + $1948 = ((($x)) + 4|0); + $1949 = HEAP32[$1948>>2]|0; + $1950 = (($1947) + ($1949))|0; + $1951 = $er; + $1952 = (($1951) + ($1950))|0; + $er = $1952; + $1953 = $er; + $1954 = (_rol_1221($1953,11)|0); + $1955 = $dr; + $1956 = (($1954) + ($1955))|0; + $er = $1956; + $1957 = $br; + $1958 = (_rol_1221($1957,10)|0); + $br = $1958; + $1959 = $el; + $1960 = $bl; + $1961 = $1959 & $1960; + $1962 = $al; + $1963 = $bl; + $1964 = $1963 ^ -1; + $1965 = $1962 & $1964; + $1966 = $1961 | $1965; + $1967 = (($1966) + -1894007588)|0; + $1968 = HEAP32[$x>>2]|0; + $1969 = (($1967) + ($1968))|0; + $1970 = $dl; + $1971 = (($1970) + ($1969))|0; + $dl = $1971; + $1972 = $dl; + $1973 = (_rol_1221($1972,14)|0); + $1974 = $cl; + $1975 = (($1973) + ($1974))|0; + $dl = $1975; + $1976 = $al; + $1977 = (_rol_1221($1976,10)|0); + $al = $1977; + $1978 = $er; + $1979 = $ar; + $1980 = $1978 & $1979; + $1981 = $er; + $1982 = $1981 ^ -1; + $1983 = $br; + $1984 = $1982 & $1983; + $1985 = $1980 | $1984; + $1986 = (($1985) + 2053994217)|0; + $1987 = ((($x)) + 12|0); + $1988 = HEAP32[$1987>>2]|0; + $1989 = (($1986) + ($1988))|0; + $1990 = $dr; + $1991 = (($1990) + ($1989))|0; + $dr = $1991; + $1992 = $dr; + $1993 = (_rol_1221($1992,14)|0); + $1994 = $cr; + $1995 = (($1993) + ($1994))|0; + $dr = $1995; + $1996 = $ar; + $1997 = (_rol_1221($1996,10)|0); + $ar = $1997; + $1998 = $dl; + $1999 = $al; + $2000 = $1998 & $1999; + $2001 = $el; + $2002 = $al; + $2003 = $2002 ^ -1; + $2004 = $2001 & $2003; + $2005 = $2000 | $2004; + $2006 = (($2005) + -1894007588)|0; + $2007 = ((($x)) + 32|0); + $2008 = HEAP32[$2007>>2]|0; + $2009 = (($2006) + ($2008))|0; + $2010 = $cl; + $2011 = (($2010) + ($2009))|0; + $cl = $2011; + $2012 = $cl; + $2013 = (_rol_1221($2012,15)|0); + $2014 = $bl; + $2015 = (($2013) + ($2014))|0; + $cl = $2015; + $2016 = $el; + $2017 = (_rol_1221($2016,10)|0); + $el = $2017; + $2018 = $dr; + $2019 = $er; + $2020 = $2018 & $2019; + $2021 = $dr; + $2022 = $2021 ^ -1; + $2023 = $ar; + $2024 = $2022 & $2023; + $2025 = $2020 | $2024; + $2026 = (($2025) + 2053994217)|0; + $2027 = ((($x)) + 44|0); + $2028 = HEAP32[$2027>>2]|0; + $2029 = (($2026) + ($2028))|0; + $2030 = $cr; + $2031 = (($2030) + ($2029))|0; + $cr = $2031; + $2032 = $cr; + $2033 = (_rol_1221($2032,14)|0); + $2034 = $br; + $2035 = (($2033) + ($2034))|0; + $cr = $2035; + $2036 = $er; + $2037 = (_rol_1221($2036,10)|0); + $er = $2037; + $2038 = $cl; + $2039 = $el; + $2040 = $2038 & $2039; + $2041 = $dl; + $2042 = $el; + $2043 = $2042 ^ -1; + $2044 = $2041 & $2043; + $2045 = $2040 | $2044; + $2046 = (($2045) + -1894007588)|0; + $2047 = ((($x)) + 48|0); + $2048 = HEAP32[$2047>>2]|0; + $2049 = (($2046) + ($2048))|0; + $2050 = $bl; + $2051 = (($2050) + ($2049))|0; + $bl = $2051; + $2052 = $bl; + $2053 = (_rol_1221($2052,9)|0); + $2054 = $al; + $2055 = (($2053) + ($2054))|0; + $bl = $2055; + $2056 = $dl; + $2057 = (_rol_1221($2056,10)|0); + $dl = $2057; + $2058 = $cr; + $2059 = $dr; + $2060 = $2058 & $2059; + $2061 = $cr; + $2062 = $2061 ^ -1; + $2063 = $er; + $2064 = $2062 & $2063; + $2065 = $2060 | $2064; + $2066 = (($2065) + 2053994217)|0; + $2067 = ((($x)) + 60|0); + $2068 = HEAP32[$2067>>2]|0; + $2069 = (($2066) + ($2068))|0; + $2070 = $br; + $2071 = (($2070) + ($2069))|0; + $br = $2071; + $2072 = $br; + $2073 = (_rol_1221($2072,6)|0); + $2074 = $ar; + $2075 = (($2073) + ($2074))|0; + $br = $2075; + $2076 = $dr; + $2077 = (_rol_1221($2076,10)|0); + $dr = $2077; + $2078 = $bl; + $2079 = $dl; + $2080 = $2078 & $2079; + $2081 = $cl; + $2082 = $dl; + $2083 = $2082 ^ -1; + $2084 = $2081 & $2083; + $2085 = $2080 | $2084; + $2086 = (($2085) + -1894007588)|0; + $2087 = ((($x)) + 16|0); + $2088 = HEAP32[$2087>>2]|0; + $2089 = (($2086) + ($2088))|0; + $2090 = $al; + $2091 = (($2090) + ($2089))|0; + $al = $2091; + $2092 = $al; + $2093 = (_rol_1221($2092,8)|0); + $2094 = $el; + $2095 = (($2093) + ($2094))|0; + $al = $2095; + $2096 = $cl; + $2097 = (_rol_1221($2096,10)|0); + $cl = $2097; + $2098 = $br; + $2099 = $cr; + $2100 = $2098 & $2099; + $2101 = $br; + $2102 = $2101 ^ -1; + $2103 = $dr; + $2104 = $2102 & $2103; + $2105 = $2100 | $2104; + $2106 = (($2105) + 2053994217)|0; + $2107 = HEAP32[$x>>2]|0; + $2108 = (($2106) + ($2107))|0; + $2109 = $ar; + $2110 = (($2109) + ($2108))|0; + $ar = $2110; + $2111 = $ar; + $2112 = (_rol_1221($2111,14)|0); + $2113 = $er; + $2114 = (($2112) + ($2113))|0; + $ar = $2114; + $2115 = $cr; + $2116 = (_rol_1221($2115,10)|0); + $cr = $2116; + $2117 = $al; + $2118 = $cl; + $2119 = $2117 & $2118; + $2120 = $bl; + $2121 = $cl; + $2122 = $2121 ^ -1; + $2123 = $2120 & $2122; + $2124 = $2119 | $2123; + $2125 = (($2124) + -1894007588)|0; + $2126 = ((($x)) + 52|0); + $2127 = HEAP32[$2126>>2]|0; + $2128 = (($2125) + ($2127))|0; + $2129 = $el; + $2130 = (($2129) + ($2128))|0; + $el = $2130; + $2131 = $el; + $2132 = (_rol_1221($2131,9)|0); + $2133 = $dl; + $2134 = (($2132) + ($2133))|0; + $el = $2134; + $2135 = $bl; + $2136 = (_rol_1221($2135,10)|0); + $bl = $2136; + $2137 = $ar; + $2138 = $br; + $2139 = $2137 & $2138; + $2140 = $ar; + $2141 = $2140 ^ -1; + $2142 = $cr; + $2143 = $2141 & $2142; + $2144 = $2139 | $2143; + $2145 = (($2144) + 2053994217)|0; + $2146 = ((($x)) + 20|0); + $2147 = HEAP32[$2146>>2]|0; + $2148 = (($2145) + ($2147))|0; + $2149 = $er; + $2150 = (($2149) + ($2148))|0; + $er = $2150; + $2151 = $er; + $2152 = (_rol_1221($2151,6)|0); + $2153 = $dr; + $2154 = (($2152) + ($2153))|0; + $er = $2154; + $2155 = $br; + $2156 = (_rol_1221($2155,10)|0); + $br = $2156; + $2157 = $el; + $2158 = $bl; + $2159 = $2157 & $2158; + $2160 = $al; + $2161 = $bl; + $2162 = $2161 ^ -1; + $2163 = $2160 & $2162; + $2164 = $2159 | $2163; + $2165 = (($2164) + -1894007588)|0; + $2166 = ((($x)) + 12|0); + $2167 = HEAP32[$2166>>2]|0; + $2168 = (($2165) + ($2167))|0; + $2169 = $dl; + $2170 = (($2169) + ($2168))|0; + $dl = $2170; + $2171 = $dl; + $2172 = (_rol_1221($2171,14)|0); + $2173 = $cl; + $2174 = (($2172) + ($2173))|0; + $dl = $2174; + $2175 = $al; + $2176 = (_rol_1221($2175,10)|0); + $al = $2176; + $2177 = $er; + $2178 = $ar; + $2179 = $2177 & $2178; + $2180 = $er; + $2181 = $2180 ^ -1; + $2182 = $br; + $2183 = $2181 & $2182; + $2184 = $2179 | $2183; + $2185 = (($2184) + 2053994217)|0; + $2186 = ((($x)) + 48|0); + $2187 = HEAP32[$2186>>2]|0; + $2188 = (($2185) + ($2187))|0; + $2189 = $dr; + $2190 = (($2189) + ($2188))|0; + $dr = $2190; + $2191 = $dr; + $2192 = (_rol_1221($2191,9)|0); + $2193 = $cr; + $2194 = (($2192) + ($2193))|0; + $dr = $2194; + $2195 = $ar; + $2196 = (_rol_1221($2195,10)|0); + $ar = $2196; + $2197 = $dl; + $2198 = $al; + $2199 = $2197 & $2198; + $2200 = $el; + $2201 = $al; + $2202 = $2201 ^ -1; + $2203 = $2200 & $2202; + $2204 = $2199 | $2203; + $2205 = (($2204) + -1894007588)|0; + $2206 = ((($x)) + 28|0); + $2207 = HEAP32[$2206>>2]|0; + $2208 = (($2205) + ($2207))|0; + $2209 = $cl; + $2210 = (($2209) + ($2208))|0; + $cl = $2210; + $2211 = $cl; + $2212 = (_rol_1221($2211,5)|0); + $2213 = $bl; + $2214 = (($2212) + ($2213))|0; + $cl = $2214; + $2215 = $el; + $2216 = (_rol_1221($2215,10)|0); + $el = $2216; + $2217 = $dr; + $2218 = $er; + $2219 = $2217 & $2218; + $2220 = $dr; + $2221 = $2220 ^ -1; + $2222 = $ar; + $2223 = $2221 & $2222; + $2224 = $2219 | $2223; + $2225 = (($2224) + 2053994217)|0; + $2226 = ((($x)) + 8|0); + $2227 = HEAP32[$2226>>2]|0; + $2228 = (($2225) + ($2227))|0; + $2229 = $cr; + $2230 = (($2229) + ($2228))|0; + $cr = $2230; + $2231 = $cr; + $2232 = (_rol_1221($2231,12)|0); + $2233 = $br; + $2234 = (($2232) + ($2233))|0; + $cr = $2234; + $2235 = $er; + $2236 = (_rol_1221($2235,10)|0); + $er = $2236; + $2237 = $cl; + $2238 = $el; + $2239 = $2237 & $2238; + $2240 = $dl; + $2241 = $el; + $2242 = $2241 ^ -1; + $2243 = $2240 & $2242; + $2244 = $2239 | $2243; + $2245 = (($2244) + -1894007588)|0; + $2246 = ((($x)) + 60|0); + $2247 = HEAP32[$2246>>2]|0; + $2248 = (($2245) + ($2247))|0; + $2249 = $bl; + $2250 = (($2249) + ($2248))|0; + $bl = $2250; + $2251 = $bl; + $2252 = (_rol_1221($2251,6)|0); + $2253 = $al; + $2254 = (($2252) + ($2253))|0; + $bl = $2254; + $2255 = $dl; + $2256 = (_rol_1221($2255,10)|0); + $dl = $2256; + $2257 = $cr; + $2258 = $dr; + $2259 = $2257 & $2258; + $2260 = $cr; + $2261 = $2260 ^ -1; + $2262 = $er; + $2263 = $2261 & $2262; + $2264 = $2259 | $2263; + $2265 = (($2264) + 2053994217)|0; + $2266 = ((($x)) + 52|0); + $2267 = HEAP32[$2266>>2]|0; + $2268 = (($2265) + ($2267))|0; + $2269 = $br; + $2270 = (($2269) + ($2268))|0; + $br = $2270; + $2271 = $br; + $2272 = (_rol_1221($2271,9)|0); + $2273 = $ar; + $2274 = (($2272) + ($2273))|0; + $br = $2274; + $2275 = $dr; + $2276 = (_rol_1221($2275,10)|0); + $dr = $2276; + $2277 = $bl; + $2278 = $dl; + $2279 = $2277 & $2278; + $2280 = $cl; + $2281 = $dl; + $2282 = $2281 ^ -1; + $2283 = $2280 & $2282; + $2284 = $2279 | $2283; + $2285 = (($2284) + -1894007588)|0; + $2286 = ((($x)) + 56|0); + $2287 = HEAP32[$2286>>2]|0; + $2288 = (($2285) + ($2287))|0; + $2289 = $al; + $2290 = (($2289) + ($2288))|0; + $al = $2290; + $2291 = $al; + $2292 = (_rol_1221($2291,8)|0); + $2293 = $el; + $2294 = (($2292) + ($2293))|0; + $al = $2294; + $2295 = $cl; + $2296 = (_rol_1221($2295,10)|0); + $cl = $2296; + $2297 = $br; + $2298 = $cr; + $2299 = $2297 & $2298; + $2300 = $br; + $2301 = $2300 ^ -1; + $2302 = $dr; + $2303 = $2301 & $2302; + $2304 = $2299 | $2303; + $2305 = (($2304) + 2053994217)|0; + $2306 = ((($x)) + 36|0); + $2307 = HEAP32[$2306>>2]|0; + $2308 = (($2305) + ($2307))|0; + $2309 = $ar; + $2310 = (($2309) + ($2308))|0; + $ar = $2310; + $2311 = $ar; + $2312 = (_rol_1221($2311,12)|0); + $2313 = $er; + $2314 = (($2312) + ($2313))|0; + $ar = $2314; + $2315 = $cr; + $2316 = (_rol_1221($2315,10)|0); + $cr = $2316; + $2317 = $al; + $2318 = $cl; + $2319 = $2317 & $2318; + $2320 = $bl; + $2321 = $cl; + $2322 = $2321 ^ -1; + $2323 = $2320 & $2322; + $2324 = $2319 | $2323; + $2325 = (($2324) + -1894007588)|0; + $2326 = ((($x)) + 20|0); + $2327 = HEAP32[$2326>>2]|0; + $2328 = (($2325) + ($2327))|0; + $2329 = $el; + $2330 = (($2329) + ($2328))|0; + $el = $2330; + $2331 = $el; + $2332 = (_rol_1221($2331,6)|0); + $2333 = $dl; + $2334 = (($2332) + ($2333))|0; + $el = $2334; + $2335 = $bl; + $2336 = (_rol_1221($2335,10)|0); + $bl = $2336; + $2337 = $ar; + $2338 = $br; + $2339 = $2337 & $2338; + $2340 = $ar; + $2341 = $2340 ^ -1; + $2342 = $cr; + $2343 = $2341 & $2342; + $2344 = $2339 | $2343; + $2345 = (($2344) + 2053994217)|0; + $2346 = ((($x)) + 28|0); + $2347 = HEAP32[$2346>>2]|0; + $2348 = (($2345) + ($2347))|0; + $2349 = $er; + $2350 = (($2349) + ($2348))|0; + $er = $2350; + $2351 = $er; + $2352 = (_rol_1221($2351,5)|0); + $2353 = $dr; + $2354 = (($2352) + ($2353))|0; + $er = $2354; + $2355 = $br; + $2356 = (_rol_1221($2355,10)|0); + $br = $2356; + $2357 = $el; + $2358 = $bl; + $2359 = $2357 & $2358; + $2360 = $al; + $2361 = $bl; + $2362 = $2361 ^ -1; + $2363 = $2360 & $2362; + $2364 = $2359 | $2363; + $2365 = (($2364) + -1894007588)|0; + $2366 = ((($x)) + 24|0); + $2367 = HEAP32[$2366>>2]|0; + $2368 = (($2365) + ($2367))|0; + $2369 = $dl; + $2370 = (($2369) + ($2368))|0; + $dl = $2370; + $2371 = $dl; + $2372 = (_rol_1221($2371,5)|0); + $2373 = $cl; + $2374 = (($2372) + ($2373))|0; + $dl = $2374; + $2375 = $al; + $2376 = (_rol_1221($2375,10)|0); + $al = $2376; + $2377 = $er; + $2378 = $ar; + $2379 = $2377 & $2378; + $2380 = $er; + $2381 = $2380 ^ -1; + $2382 = $br; + $2383 = $2381 & $2382; + $2384 = $2379 | $2383; + $2385 = (($2384) + 2053994217)|0; + $2386 = ((($x)) + 40|0); + $2387 = HEAP32[$2386>>2]|0; + $2388 = (($2385) + ($2387))|0; + $2389 = $dr; + $2390 = (($2389) + ($2388))|0; + $dr = $2390; + $2391 = $dr; + $2392 = (_rol_1221($2391,15)|0); + $2393 = $cr; + $2394 = (($2392) + ($2393))|0; + $dr = $2394; + $2395 = $ar; + $2396 = (_rol_1221($2395,10)|0); + $ar = $2396; + $2397 = $dl; + $2398 = $al; + $2399 = $2397 & $2398; + $2400 = $el; + $2401 = $al; + $2402 = $2401 ^ -1; + $2403 = $2400 & $2402; + $2404 = $2399 | $2403; + $2405 = (($2404) + -1894007588)|0; + $2406 = ((($x)) + 8|0); + $2407 = HEAP32[$2406>>2]|0; + $2408 = (($2405) + ($2407))|0; + $2409 = $cl; + $2410 = (($2409) + ($2408))|0; + $cl = $2410; + $2411 = $cl; + $2412 = (_rol_1221($2411,12)|0); + $2413 = $bl; + $2414 = (($2412) + ($2413))|0; + $cl = $2414; + $2415 = $el; + $2416 = (_rol_1221($2415,10)|0); + $el = $2416; + $2417 = $dr; + $2418 = $er; + $2419 = $2417 & $2418; + $2420 = $dr; + $2421 = $2420 ^ -1; + $2422 = $ar; + $2423 = $2421 & $2422; + $2424 = $2419 | $2423; + $2425 = (($2424) + 2053994217)|0; + $2426 = ((($x)) + 56|0); + $2427 = HEAP32[$2426>>2]|0; + $2428 = (($2425) + ($2427))|0; + $2429 = $cr; + $2430 = (($2429) + ($2428))|0; + $cr = $2430; + $2431 = $cr; + $2432 = (_rol_1221($2431,8)|0); + $2433 = $br; + $2434 = (($2432) + ($2433))|0; + $cr = $2434; + $2435 = $er; + $2436 = (_rol_1221($2435,10)|0); + $er = $2436; + $2437 = $cl; + $2438 = $dl; + $2439 = $el; + $2440 = $2439 ^ -1; + $2441 = $2438 | $2440; + $2442 = $2437 ^ $2441; + $2443 = (($2442) + -1454113458)|0; + $2444 = ((($x)) + 16|0); + $2445 = HEAP32[$2444>>2]|0; + $2446 = (($2443) + ($2445))|0; + $2447 = $bl; + $2448 = (($2447) + ($2446))|0; + $bl = $2448; + $2449 = $bl; + $2450 = (_rol_1221($2449,9)|0); + $2451 = $al; + $2452 = (($2450) + ($2451))|0; + $bl = $2452; + $2453 = $dl; + $2454 = (_rol_1221($2453,10)|0); + $dl = $2454; + $2455 = $cr; + $2456 = $dr; + $2457 = $2455 ^ $2456; + $2458 = $er; + $2459 = $2457 ^ $2458; + $2460 = (($2459) + 0)|0; + $2461 = ((($x)) + 48|0); + $2462 = HEAP32[$2461>>2]|0; + $2463 = (($2460) + ($2462))|0; + $2464 = $br; + $2465 = (($2464) + ($2463))|0; + $br = $2465; + $2466 = $br; + $2467 = (_rol_1221($2466,8)|0); + $2468 = $ar; + $2469 = (($2467) + ($2468))|0; + $br = $2469; + $2470 = $dr; + $2471 = (_rol_1221($2470,10)|0); + $dr = $2471; + $2472 = $bl; + $2473 = $cl; + $2474 = $dl; + $2475 = $2474 ^ -1; + $2476 = $2473 | $2475; + $2477 = $2472 ^ $2476; + $2478 = (($2477) + -1454113458)|0; + $2479 = HEAP32[$x>>2]|0; + $2480 = (($2478) + ($2479))|0; + $2481 = $al; + $2482 = (($2481) + ($2480))|0; + $al = $2482; + $2483 = $al; + $2484 = (_rol_1221($2483,15)|0); + $2485 = $el; + $2486 = (($2484) + ($2485))|0; + $al = $2486; + $2487 = $cl; + $2488 = (_rol_1221($2487,10)|0); + $cl = $2488; + $2489 = $br; + $2490 = $cr; + $2491 = $2489 ^ $2490; + $2492 = $dr; + $2493 = $2491 ^ $2492; + $2494 = (($2493) + 0)|0; + $2495 = ((($x)) + 60|0); + $2496 = HEAP32[$2495>>2]|0; + $2497 = (($2494) + ($2496))|0; + $2498 = $ar; + $2499 = (($2498) + ($2497))|0; + $ar = $2499; + $2500 = $ar; + $2501 = (_rol_1221($2500,5)|0); + $2502 = $er; + $2503 = (($2501) + ($2502))|0; + $ar = $2503; + $2504 = $cr; + $2505 = (_rol_1221($2504,10)|0); + $cr = $2505; + $2506 = $al; + $2507 = $bl; + $2508 = $cl; + $2509 = $2508 ^ -1; + $2510 = $2507 | $2509; + $2511 = $2506 ^ $2510; + $2512 = (($2511) + -1454113458)|0; + $2513 = ((($x)) + 20|0); + $2514 = HEAP32[$2513>>2]|0; + $2515 = (($2512) + ($2514))|0; + $2516 = $el; + $2517 = (($2516) + ($2515))|0; + $el = $2517; + $2518 = $el; + $2519 = (_rol_1221($2518,5)|0); + $2520 = $dl; + $2521 = (($2519) + ($2520))|0; + $el = $2521; + $2522 = $bl; + $2523 = (_rol_1221($2522,10)|0); + $bl = $2523; + $2524 = $ar; + $2525 = $br; + $2526 = $2524 ^ $2525; + $2527 = $cr; + $2528 = $2526 ^ $2527; + $2529 = (($2528) + 0)|0; + $2530 = ((($x)) + 40|0); + $2531 = HEAP32[$2530>>2]|0; + $2532 = (($2529) + ($2531))|0; + $2533 = $er; + $2534 = (($2533) + ($2532))|0; + $er = $2534; + $2535 = $er; + $2536 = (_rol_1221($2535,12)|0); + $2537 = $dr; + $2538 = (($2536) + ($2537))|0; + $er = $2538; + $2539 = $br; + $2540 = (_rol_1221($2539,10)|0); + $br = $2540; + $2541 = $el; + $2542 = $al; + $2543 = $bl; + $2544 = $2543 ^ -1; + $2545 = $2542 | $2544; + $2546 = $2541 ^ $2545; + $2547 = (($2546) + -1454113458)|0; + $2548 = ((($x)) + 36|0); + $2549 = HEAP32[$2548>>2]|0; + $2550 = (($2547) + ($2549))|0; + $2551 = $dl; + $2552 = (($2551) + ($2550))|0; + $dl = $2552; + $2553 = $dl; + $2554 = (_rol_1221($2553,11)|0); + $2555 = $cl; + $2556 = (($2554) + ($2555))|0; + $dl = $2556; + $2557 = $al; + $2558 = (_rol_1221($2557,10)|0); + $al = $2558; + $2559 = $er; + $2560 = $ar; + $2561 = $2559 ^ $2560; + $2562 = $br; + $2563 = $2561 ^ $2562; + $2564 = (($2563) + 0)|0; + $2565 = ((($x)) + 16|0); + $2566 = HEAP32[$2565>>2]|0; + $2567 = (($2564) + ($2566))|0; + $2568 = $dr; + $2569 = (($2568) + ($2567))|0; + $dr = $2569; + $2570 = $dr; + $2571 = (_rol_1221($2570,9)|0); + $2572 = $cr; + $2573 = (($2571) + ($2572))|0; + $dr = $2573; + $2574 = $ar; + $2575 = (_rol_1221($2574,10)|0); + $ar = $2575; + $2576 = $dl; + $2577 = $el; + $2578 = $al; + $2579 = $2578 ^ -1; + $2580 = $2577 | $2579; + $2581 = $2576 ^ $2580; + $2582 = (($2581) + -1454113458)|0; + $2583 = ((($x)) + 28|0); + $2584 = HEAP32[$2583>>2]|0; + $2585 = (($2582) + ($2584))|0; + $2586 = $cl; + $2587 = (($2586) + ($2585))|0; + $cl = $2587; + $2588 = $cl; + $2589 = (_rol_1221($2588,6)|0); + $2590 = $bl; + $2591 = (($2589) + ($2590))|0; + $cl = $2591; + $2592 = $el; + $2593 = (_rol_1221($2592,10)|0); + $el = $2593; + $2594 = $dr; + $2595 = $er; + $2596 = $2594 ^ $2595; + $2597 = $ar; + $2598 = $2596 ^ $2597; + $2599 = (($2598) + 0)|0; + $2600 = ((($x)) + 4|0); + $2601 = HEAP32[$2600>>2]|0; + $2602 = (($2599) + ($2601))|0; + $2603 = $cr; + $2604 = (($2603) + ($2602))|0; + $cr = $2604; + $2605 = $cr; + $2606 = (_rol_1221($2605,12)|0); + $2607 = $br; + $2608 = (($2606) + ($2607))|0; + $cr = $2608; + $2609 = $er; + $2610 = (_rol_1221($2609,10)|0); + $er = $2610; + $2611 = $cl; + $2612 = $dl; + $2613 = $el; + $2614 = $2613 ^ -1; + $2615 = $2612 | $2614; + $2616 = $2611 ^ $2615; + $2617 = (($2616) + -1454113458)|0; + $2618 = ((($x)) + 48|0); + $2619 = HEAP32[$2618>>2]|0; + $2620 = (($2617) + ($2619))|0; + $2621 = $bl; + $2622 = (($2621) + ($2620))|0; + $bl = $2622; + $2623 = $bl; + $2624 = (_rol_1221($2623,8)|0); + $2625 = $al; + $2626 = (($2624) + ($2625))|0; + $bl = $2626; + $2627 = $dl; + $2628 = (_rol_1221($2627,10)|0); + $dl = $2628; + $2629 = $cr; + $2630 = $dr; + $2631 = $2629 ^ $2630; + $2632 = $er; + $2633 = $2631 ^ $2632; + $2634 = (($2633) + 0)|0; + $2635 = ((($x)) + 20|0); + $2636 = HEAP32[$2635>>2]|0; + $2637 = (($2634) + ($2636))|0; + $2638 = $br; + $2639 = (($2638) + ($2637))|0; + $br = $2639; + $2640 = $br; + $2641 = (_rol_1221($2640,5)|0); + $2642 = $ar; + $2643 = (($2641) + ($2642))|0; + $br = $2643; + $2644 = $dr; + $2645 = (_rol_1221($2644,10)|0); + $dr = $2645; + $2646 = $bl; + $2647 = $cl; + $2648 = $dl; + $2649 = $2648 ^ -1; + $2650 = $2647 | $2649; + $2651 = $2646 ^ $2650; + $2652 = (($2651) + -1454113458)|0; + $2653 = ((($x)) + 8|0); + $2654 = HEAP32[$2653>>2]|0; + $2655 = (($2652) + ($2654))|0; + $2656 = $al; + $2657 = (($2656) + ($2655))|0; + $al = $2657; + $2658 = $al; + $2659 = (_rol_1221($2658,13)|0); + $2660 = $el; + $2661 = (($2659) + ($2660))|0; + $al = $2661; + $2662 = $cl; + $2663 = (_rol_1221($2662,10)|0); + $cl = $2663; + $2664 = $br; + $2665 = $cr; + $2666 = $2664 ^ $2665; + $2667 = $dr; + $2668 = $2666 ^ $2667; + $2669 = (($2668) + 0)|0; + $2670 = ((($x)) + 32|0); + $2671 = HEAP32[$2670>>2]|0; + $2672 = (($2669) + ($2671))|0; + $2673 = $ar; + $2674 = (($2673) + ($2672))|0; + $ar = $2674; + $2675 = $ar; + $2676 = (_rol_1221($2675,14)|0); + $2677 = $er; + $2678 = (($2676) + ($2677))|0; + $ar = $2678; + $2679 = $cr; + $2680 = (_rol_1221($2679,10)|0); + $cr = $2680; + $2681 = $al; + $2682 = $bl; + $2683 = $cl; + $2684 = $2683 ^ -1; + $2685 = $2682 | $2684; + $2686 = $2681 ^ $2685; + $2687 = (($2686) + -1454113458)|0; + $2688 = ((($x)) + 40|0); + $2689 = HEAP32[$2688>>2]|0; + $2690 = (($2687) + ($2689))|0; + $2691 = $el; + $2692 = (($2691) + ($2690))|0; + $el = $2692; + $2693 = $el; + $2694 = (_rol_1221($2693,12)|0); + $2695 = $dl; + $2696 = (($2694) + ($2695))|0; + $el = $2696; + $2697 = $bl; + $2698 = (_rol_1221($2697,10)|0); + $bl = $2698; + $2699 = $ar; + $2700 = $br; + $2701 = $2699 ^ $2700; + $2702 = $cr; + $2703 = $2701 ^ $2702; + $2704 = (($2703) + 0)|0; + $2705 = ((($x)) + 28|0); + $2706 = HEAP32[$2705>>2]|0; + $2707 = (($2704) + ($2706))|0; + $2708 = $er; + $2709 = (($2708) + ($2707))|0; + $er = $2709; + $2710 = $er; + $2711 = (_rol_1221($2710,6)|0); + $2712 = $dr; + $2713 = (($2711) + ($2712))|0; + $er = $2713; + $2714 = $br; + $2715 = (_rol_1221($2714,10)|0); + $br = $2715; + $2716 = $el; + $2717 = $al; + $2718 = $bl; + $2719 = $2718 ^ -1; + $2720 = $2717 | $2719; + $2721 = $2716 ^ $2720; + $2722 = (($2721) + -1454113458)|0; + $2723 = ((($x)) + 56|0); + $2724 = HEAP32[$2723>>2]|0; + $2725 = (($2722) + ($2724))|0; + $2726 = $dl; + $2727 = (($2726) + ($2725))|0; + $dl = $2727; + $2728 = $dl; + $2729 = (_rol_1221($2728,5)|0); + $2730 = $cl; + $2731 = (($2729) + ($2730))|0; + $dl = $2731; + $2732 = $al; + $2733 = (_rol_1221($2732,10)|0); + $al = $2733; + $2734 = $er; + $2735 = $ar; + $2736 = $2734 ^ $2735; + $2737 = $br; + $2738 = $2736 ^ $2737; + $2739 = (($2738) + 0)|0; + $2740 = ((($x)) + 24|0); + $2741 = HEAP32[$2740>>2]|0; + $2742 = (($2739) + ($2741))|0; + $2743 = $dr; + $2744 = (($2743) + ($2742))|0; + $dr = $2744; + $2745 = $dr; + $2746 = (_rol_1221($2745,8)|0); + $2747 = $cr; + $2748 = (($2746) + ($2747))|0; + $dr = $2748; + $2749 = $ar; + $2750 = (_rol_1221($2749,10)|0); + $ar = $2750; + $2751 = $dl; + $2752 = $el; + $2753 = $al; + $2754 = $2753 ^ -1; + $2755 = $2752 | $2754; + $2756 = $2751 ^ $2755; + $2757 = (($2756) + -1454113458)|0; + $2758 = ((($x)) + 4|0); + $2759 = HEAP32[$2758>>2]|0; + $2760 = (($2757) + ($2759))|0; + $2761 = $cl; + $2762 = (($2761) + ($2760))|0; + $cl = $2762; + $2763 = $cl; + $2764 = (_rol_1221($2763,12)|0); + $2765 = $bl; + $2766 = (($2764) + ($2765))|0; + $cl = $2766; + $2767 = $el; + $2768 = (_rol_1221($2767,10)|0); + $el = $2768; + $2769 = $dr; + $2770 = $er; + $2771 = $2769 ^ $2770; + $2772 = $ar; + $2773 = $2771 ^ $2772; + $2774 = (($2773) + 0)|0; + $2775 = ((($x)) + 8|0); + $2776 = HEAP32[$2775>>2]|0; + $2777 = (($2774) + ($2776))|0; + $2778 = $cr; + $2779 = (($2778) + ($2777))|0; + $cr = $2779; + $2780 = $cr; + $2781 = (_rol_1221($2780,13)|0); + $2782 = $br; + $2783 = (($2781) + ($2782))|0; + $cr = $2783; + $2784 = $er; + $2785 = (_rol_1221($2784,10)|0); + $er = $2785; + $2786 = $cl; + $2787 = $dl; + $2788 = $el; + $2789 = $2788 ^ -1; + $2790 = $2787 | $2789; + $2791 = $2786 ^ $2790; + $2792 = (($2791) + -1454113458)|0; + $2793 = ((($x)) + 12|0); + $2794 = HEAP32[$2793>>2]|0; + $2795 = (($2792) + ($2794))|0; + $2796 = $bl; + $2797 = (($2796) + ($2795))|0; + $bl = $2797; + $2798 = $bl; + $2799 = (_rol_1221($2798,13)|0); + $2800 = $al; + $2801 = (($2799) + ($2800))|0; + $bl = $2801; + $2802 = $dl; + $2803 = (_rol_1221($2802,10)|0); + $dl = $2803; + $2804 = $cr; + $2805 = $dr; + $2806 = $2804 ^ $2805; + $2807 = $er; + $2808 = $2806 ^ $2807; + $2809 = (($2808) + 0)|0; + $2810 = ((($x)) + 52|0); + $2811 = HEAP32[$2810>>2]|0; + $2812 = (($2809) + ($2811))|0; + $2813 = $br; + $2814 = (($2813) + ($2812))|0; + $br = $2814; + $2815 = $br; + $2816 = (_rol_1221($2815,6)|0); + $2817 = $ar; + $2818 = (($2816) + ($2817))|0; + $br = $2818; + $2819 = $dr; + $2820 = (_rol_1221($2819,10)|0); + $dr = $2820; + $2821 = $bl; + $2822 = $cl; + $2823 = $dl; + $2824 = $2823 ^ -1; + $2825 = $2822 | $2824; + $2826 = $2821 ^ $2825; + $2827 = (($2826) + -1454113458)|0; + $2828 = ((($x)) + 32|0); + $2829 = HEAP32[$2828>>2]|0; + $2830 = (($2827) + ($2829))|0; + $2831 = $al; + $2832 = (($2831) + ($2830))|0; + $al = $2832; + $2833 = $al; + $2834 = (_rol_1221($2833,14)|0); + $2835 = $el; + $2836 = (($2834) + ($2835))|0; + $al = $2836; + $2837 = $cl; + $2838 = (_rol_1221($2837,10)|0); + $cl = $2838; + $2839 = $br; + $2840 = $cr; + $2841 = $2839 ^ $2840; + $2842 = $dr; + $2843 = $2841 ^ $2842; + $2844 = (($2843) + 0)|0; + $2845 = ((($x)) + 56|0); + $2846 = HEAP32[$2845>>2]|0; + $2847 = (($2844) + ($2846))|0; + $2848 = $ar; + $2849 = (($2848) + ($2847))|0; + $ar = $2849; + $2850 = $ar; + $2851 = (_rol_1221($2850,5)|0); + $2852 = $er; + $2853 = (($2851) + ($2852))|0; + $ar = $2853; + $2854 = $cr; + $2855 = (_rol_1221($2854,10)|0); + $cr = $2855; + $2856 = $al; + $2857 = $bl; + $2858 = $cl; + $2859 = $2858 ^ -1; + $2860 = $2857 | $2859; + $2861 = $2856 ^ $2860; + $2862 = (($2861) + -1454113458)|0; + $2863 = ((($x)) + 44|0); + $2864 = HEAP32[$2863>>2]|0; + $2865 = (($2862) + ($2864))|0; + $2866 = $el; + $2867 = (($2866) + ($2865))|0; + $el = $2867; + $2868 = $el; + $2869 = (_rol_1221($2868,11)|0); + $2870 = $dl; + $2871 = (($2869) + ($2870))|0; + $el = $2871; + $2872 = $bl; + $2873 = (_rol_1221($2872,10)|0); + $bl = $2873; + $2874 = $ar; + $2875 = $br; + $2876 = $2874 ^ $2875; + $2877 = $cr; + $2878 = $2876 ^ $2877; + $2879 = (($2878) + 0)|0; + $2880 = HEAP32[$x>>2]|0; + $2881 = (($2879) + ($2880))|0; + $2882 = $er; + $2883 = (($2882) + ($2881))|0; + $er = $2883; + $2884 = $er; + $2885 = (_rol_1221($2884,15)|0); + $2886 = $dr; + $2887 = (($2885) + ($2886))|0; + $er = $2887; + $2888 = $br; + $2889 = (_rol_1221($2888,10)|0); + $br = $2889; + $2890 = $el; + $2891 = $al; + $2892 = $bl; + $2893 = $2892 ^ -1; + $2894 = $2891 | $2893; + $2895 = $2890 ^ $2894; + $2896 = (($2895) + -1454113458)|0; + $2897 = ((($x)) + 24|0); + $2898 = HEAP32[$2897>>2]|0; + $2899 = (($2896) + ($2898))|0; + $2900 = $dl; + $2901 = (($2900) + ($2899))|0; + $dl = $2901; + $2902 = $dl; + $2903 = (_rol_1221($2902,8)|0); + $2904 = $cl; + $2905 = (($2903) + ($2904))|0; + $dl = $2905; + $2906 = $al; + $2907 = (_rol_1221($2906,10)|0); + $al = $2907; + $2908 = $er; + $2909 = $ar; + $2910 = $2908 ^ $2909; + $2911 = $br; + $2912 = $2910 ^ $2911; + $2913 = (($2912) + 0)|0; + $2914 = ((($x)) + 12|0); + $2915 = HEAP32[$2914>>2]|0; + $2916 = (($2913) + ($2915))|0; + $2917 = $dr; + $2918 = (($2917) + ($2916))|0; + $dr = $2918; + $2919 = $dr; + $2920 = (_rol_1221($2919,13)|0); + $2921 = $cr; + $2922 = (($2920) + ($2921))|0; + $dr = $2922; + $2923 = $ar; + $2924 = (_rol_1221($2923,10)|0); + $ar = $2924; + $2925 = $dl; + $2926 = $el; + $2927 = $al; + $2928 = $2927 ^ -1; + $2929 = $2926 | $2928; + $2930 = $2925 ^ $2929; + $2931 = (($2930) + -1454113458)|0; + $2932 = ((($x)) + 60|0); + $2933 = HEAP32[$2932>>2]|0; + $2934 = (($2931) + ($2933))|0; + $2935 = $cl; + $2936 = (($2935) + ($2934))|0; + $cl = $2936; + $2937 = $cl; + $2938 = (_rol_1221($2937,5)|0); + $2939 = $bl; + $2940 = (($2938) + ($2939))|0; + $cl = $2940; + $2941 = $el; + $2942 = (_rol_1221($2941,10)|0); + $el = $2942; + $2943 = $dr; + $2944 = $er; + $2945 = $2943 ^ $2944; + $2946 = $ar; + $2947 = $2945 ^ $2946; + $2948 = (($2947) + 0)|0; + $2949 = ((($x)) + 36|0); + $2950 = HEAP32[$2949>>2]|0; + $2951 = (($2948) + ($2950))|0; + $2952 = $cr; + $2953 = (($2952) + ($2951))|0; + $cr = $2953; + $2954 = $cr; + $2955 = (_rol_1221($2954,11)|0); + $2956 = $br; + $2957 = (($2955) + ($2956))|0; + $cr = $2957; + $2958 = $er; + $2959 = (_rol_1221($2958,10)|0); + $er = $2959; + $2960 = $cl; + $2961 = $dl; + $2962 = $el; + $2963 = $2962 ^ -1; + $2964 = $2961 | $2963; + $2965 = $2960 ^ $2964; + $2966 = (($2965) + -1454113458)|0; + $2967 = ((($x)) + 52|0); + $2968 = HEAP32[$2967>>2]|0; + $2969 = (($2966) + ($2968))|0; + $2970 = $bl; + $2971 = (($2970) + ($2969))|0; + $bl = $2971; + $2972 = $bl; + $2973 = (_rol_1221($2972,6)|0); + $2974 = $al; + $2975 = (($2973) + ($2974))|0; + $bl = $2975; + $2976 = $dl; + $2977 = (_rol_1221($2976,10)|0); + $dl = $2977; + $2978 = $cr; + $2979 = $dr; + $2980 = $2978 ^ $2979; + $2981 = $er; + $2982 = $2980 ^ $2981; + $2983 = (($2982) + 0)|0; + $2984 = ((($x)) + 44|0); + $2985 = HEAP32[$2984>>2]|0; + $2986 = (($2983) + ($2985))|0; + $2987 = $br; + $2988 = (($2987) + ($2986))|0; + $br = $2988; + $2989 = $br; + $2990 = (_rol_1221($2989,11)|0); + $2991 = $ar; + $2992 = (($2990) + ($2991))|0; + $br = $2992; + $2993 = $dr; + $2994 = (_rol_1221($2993,10)|0); + $dr = $2994; + $2995 = $cl; + $2996 = $hd; + $2997 = ((($2996)) + 164|0); + $2998 = HEAP32[$2997>>2]|0; + $2999 = (($2995) + ($2998))|0; + $3000 = $dr; + $3001 = (($3000) + ($2999))|0; + $dr = $3001; + $3002 = $hd; + $3003 = ((($3002)) + 168|0); + $3004 = HEAP32[$3003>>2]|0; + $3005 = $dl; + $3006 = (($3004) + ($3005))|0; + $3007 = $er; + $3008 = (($3006) + ($3007))|0; + $3009 = $hd; + $3010 = ((($3009)) + 164|0); + HEAP32[$3010>>2] = $3008; + $3011 = $hd; + $3012 = ((($3011)) + 172|0); + $3013 = HEAP32[$3012>>2]|0; + $3014 = $el; + $3015 = (($3013) + ($3014))|0; + $3016 = $ar; + $3017 = (($3015) + ($3016))|0; + $3018 = $hd; + $3019 = ((($3018)) + 168|0); + HEAP32[$3019>>2] = $3017; + $3020 = $hd; + $3021 = ((($3020)) + 176|0); + $3022 = HEAP32[$3021>>2]|0; + $3023 = $al; + $3024 = (($3022) + ($3023))|0; + $3025 = $br; + $3026 = (($3024) + ($3025))|0; + $3027 = $hd; + $3028 = ((($3027)) + 172|0); + HEAP32[$3028>>2] = $3026; + $3029 = $hd; + $3030 = ((($3029)) + 160|0); + $3031 = HEAP32[$3030>>2]|0; + $3032 = $bl; + $3033 = (($3031) + ($3032))|0; + $3034 = $cr; + $3035 = (($3033) + ($3034))|0; + $3036 = $hd; + $3037 = ((($3036)) + 176|0); + HEAP32[$3037>>2] = $3035; + $3038 = $dr; + $3039 = $hd; + $3040 = ((($3039)) + 160|0); + HEAP32[$3040>>2] = $3038; + STACKTOP = sp;return 124; +} +function _buf_get_le32_1220($_buf) { + $_buf = $_buf|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $in = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_buf; + $1 = $0; + $in = $1; + $2 = $in; + $3 = ((($2)) + 3|0); + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = $5 << 24; + $7 = $in; + $8 = ((($7)) + 2|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = $10 << 16; + $12 = $6 | $11; + $13 = $in; + $14 = ((($13)) + 1|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = $16 << 8; + $18 = $12 | $17; + $19 = $in; + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = $18 | $21; + STACKTOP = sp;return ($22|0); +} +function _rol_1221($x,$n) { + $x = $x|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $x; + $1 = $n; + $2 = $0; + $3 = $1; + $4 = $3 & 31; + $5 = $2 << $4; + $6 = $0; + $7 = $1; + $8 = (32 - ($7))|0; + $9 = $8 & 31; + $10 = $6 >>> $9; + $11 = $5 | $10; + STACKTOP = sp;return ($11|0); +} +function _rmd160_final($context) { + $context = $context|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; + var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; + var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; + var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; + var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $burn = 0, $hd = 0, $lsb = 0; + var $msb = 0, $p = 0, $t = 0, $th = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $0; + $hd = $1; + $2 = $hd; + __gcry_md_block_write($2,0,0); + $3 = $hd; + $4 = ((($3)) + 128|0); + $5 = $4; + $6 = $5; + $7 = HEAP32[$6>>2]|0; + $8 = (($5) + 4)|0; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $t = $7; + $11 = $hd; + $12 = ((($11)) + 128|0); + $13 = $12; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = (($13) + 4)|0; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $th = $18; + $19 = $t; + $20 = $19 << 6; + $lsb = $20; + $21 = $th; + $22 = $21 << 6; + $23 = $t; + $24 = $23 >>> 26; + $25 = $22 | $24; + $msb = $25; + $26 = $lsb; + $t = $26; + $27 = $hd; + $28 = ((($27)) + 144|0); + $29 = HEAP32[$28>>2]|0; + $30 = $lsb; + $31 = (($30) + ($29))|0; + $lsb = $31; + $32 = $t; + $33 = ($31>>>0)<($32>>>0); + if ($33) { + $34 = $msb; + $35 = (($34) + 1)|0; + $msb = $35; + } + $36 = $lsb; + $t = $36; + $37 = $lsb; + $38 = $37 << 3; + $lsb = $38; + $39 = $msb; + $40 = $39 << 3; + $msb = $40; + $41 = $t; + $42 = $41 >>> 29; + $43 = $msb; + $44 = $43 | $42; + $msb = $44; + $45 = $hd; + $46 = ((($45)) + 144|0); + $47 = HEAP32[$46>>2]|0; + $48 = ($47|0)<(56); + $49 = $hd; + $50 = ((($49)) + 144|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + 1)|0; + HEAP32[$50>>2] = $52; + $53 = $hd; + $54 = (($53) + ($51)|0); + HEAP8[$54>>0] = -128; + L4: do { + if ($48) { + while(1) { + $55 = $hd; + $56 = ((($55)) + 144|0); + $57 = HEAP32[$56>>2]|0; + $58 = ($57|0)<(56); + if (!($58)) { + break L4; + } + $59 = $hd; + $60 = ((($59)) + 144|0); + $61 = HEAP32[$60>>2]|0; + $62 = (($61) + 1)|0; + HEAP32[$60>>2] = $62; + $63 = $hd; + $64 = (($63) + ($61)|0); + HEAP8[$64>>0] = 0; + } + } else { + while(1) { + $65 = $hd; + $66 = ((($65)) + 144|0); + $67 = HEAP32[$66>>2]|0; + $68 = ($67|0)<(64); + $69 = $hd; + if (!($68)) { + break; + } + $70 = ((($69)) + 144|0); + $71 = HEAP32[$70>>2]|0; + $72 = (($71) + 1)|0; + HEAP32[$70>>2] = $72; + $73 = $hd; + $74 = (($73) + ($71)|0); + HEAP8[$74>>0] = 0; + } + __gcry_md_block_write($69,0,0); + $75 = $hd; + dest=$75; stop=dest+56|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + } + } while(0); + $76 = $hd; + $77 = ((($76)) + 56|0); + $78 = $lsb; + _buf_put_le32_1222($77,$78); + $79 = $hd; + $80 = ((($79)) + 60|0); + $81 = $msb; + _buf_put_le32_1222($80,$81); + $82 = $hd; + $83 = $hd; + $84 = (_transform($82,$83,1)|0); + $burn = $84; + $85 = $burn; + ___gcry_burn_stack($85); + ___gcry_burn_stack_dummy(); + $86 = $hd; + $p = $86; + $87 = $p; + $88 = $hd; + $89 = ((($88)) + 160|0); + $90 = HEAP32[$89>>2]|0; + _buf_put_le32_1222($87,$90); + $91 = $p; + $92 = ((($91)) + 4|0); + $p = $92; + $93 = $p; + $94 = $hd; + $95 = ((($94)) + 164|0); + $96 = HEAP32[$95>>2]|0; + _buf_put_le32_1222($93,$96); + $97 = $p; + $98 = ((($97)) + 4|0); + $p = $98; + $99 = $p; + $100 = $hd; + $101 = ((($100)) + 168|0); + $102 = HEAP32[$101>>2]|0; + _buf_put_le32_1222($99,$102); + $103 = $p; + $104 = ((($103)) + 4|0); + $p = $104; + $105 = $p; + $106 = $hd; + $107 = ((($106)) + 172|0); + $108 = HEAP32[$107>>2]|0; + _buf_put_le32_1222($105,$108); + $109 = $p; + $110 = ((($109)) + 4|0); + $p = $110; + $111 = $p; + $112 = $hd; + $113 = ((($112)) + 176|0); + $114 = HEAP32[$113>>2]|0; + _buf_put_le32_1222($111,$114); + $115 = $p; + $116 = ((($115)) + 4|0); + $p = $116; + STACKTOP = sp;return; +} +function _buf_put_le32_1222($_buf,$val) { + $_buf = $_buf|0; + $val = $val|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $out = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_buf; + $1 = $val; + $2 = $0; + $out = $2; + $3 = $1; + $4 = $3 >>> 24; + $5 = $4&255; + $6 = $out; + $7 = ((($6)) + 3|0); + HEAP8[$7>>0] = $5; + $8 = $1; + $9 = $8 >>> 16; + $10 = $9&255; + $11 = $out; + $12 = ((($11)) + 2|0); + HEAP8[$12>>0] = $10; + $13 = $1; + $14 = $13 >>> 8; + $15 = $14&255; + $16 = $out; + $17 = ((($16)) + 1|0); + HEAP8[$17>>0] = $15; + $18 = $1; + $19 = $18&255; + $20 = $out; + HEAP8[$20>>0] = $19; + STACKTOP = sp;return; +} +function _rmd160_read($context) { + $context = $context|0; + var $0 = 0, $1 = 0, $2 = 0, $hd = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $0; + $hd = $1; + $2 = $hd; + STACKTOP = sp;return ($2|0); +} +function __gcry_rmd160_init($context) { + $context = $context|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $0; + _rmd160_init($1,0); + STACKTOP = sp;return; +} +function __gcry_rmd160_mixblock($hd,$blockof64byte) { + $hd = $hd|0; + $blockof64byte = $blockof64byte|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $hd; + $1 = $blockof64byte; + $2 = $1; + $p = $2; + $3 = $0; + $4 = $1; + (_transform($3,$4,1)|0); + $5 = $0; + $6 = ((($5)) + 160|0); + $7 = HEAP32[$6>>2]|0; + $8 = $p; + HEAP32[$8>>2] = $7; + $9 = $0; + $10 = ((($9)) + 164|0); + $11 = HEAP32[$10>>2]|0; + $12 = $p; + $13 = ((($12)) + 4|0); + HEAP32[$13>>2] = $11; + $14 = $0; + $15 = ((($14)) + 168|0); + $16 = HEAP32[$15>>2]|0; + $17 = $p; + $18 = ((($17)) + 8|0); + HEAP32[$18>>2] = $16; + $19 = $0; + $20 = ((($19)) + 172|0); + $21 = HEAP32[$20>>2]|0; + $22 = $p; + $23 = ((($22)) + 12|0); + HEAP32[$23>>2] = $21; + $24 = $0; + $25 = ((($24)) + 176|0); + $26 = HEAP32[$25>>2]|0; + $27 = $p; + $28 = ((($27)) + 16|0); + HEAP32[$28>>2] = $26; + STACKTOP = sp;return; +} +function __gcry_rmd160_hash_buffer($outbuf,$buffer,$length) { + $outbuf = $outbuf|0; + $buffer = $buffer|0; + $length = $length|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $hd = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 208|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $hd = sp; + $0 = $outbuf; + $1 = $buffer; + $2 = $length; + __gcry_rmd160_init($hd); + $3 = $1; + $4 = $2; + __gcry_md_block_write($hd,$3,$4); + _rmd160_final($hd); + $5 = $0; + dest=$5; src=$hd; stop=dest+20|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + STACKTOP = sp;return; +} +function __gcry_rsa_pkcs1_encode_for_enc($r_result,$nbits,$value,$valuelen,$random_override,$random_override_len) { + $r_result = $r_result|0; + $nbits = $nbits|0; + $value = $value|0; + $valuelen = $valuelen|0; + $random_override = $random_override|0; + $random_override_len = $random_override_len|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $frame = 0, $i = 0, $j = 0, $j1 = 0, $k = 0, $n = 0, $nframe = 0, $or$cond = 0, $p = 0, $pp = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $nframe = sp + 28|0; + $1 = $r_result; + $2 = $nbits; + $3 = $value; + $4 = $valuelen; + $5 = $random_override; + $6 = $random_override_len; + $rc = 0; + $frame = 0; + $7 = $2; + $8 = (($7) + 7)|0; + $9 = (($8>>>0) / 8)&-1; + HEAP32[$nframe>>2] = $9; + $10 = $4; + $11 = (($10) + 7)|0; + $12 = HEAP32[$nframe>>2]|0; + $13 = ($11>>>0)<=($12>>>0); + $14 = HEAP32[$nframe>>2]|0; + $15 = ($14|0)!=(0); + $or$cond = $13 & $15; + if (!($or$cond)) { + $0 = 66; + $145 = $0; + STACKTOP = sp;return ($145|0); + } + $16 = HEAP32[$nframe>>2]|0; + $17 = (__gcry_malloc_secure($16)|0); + $frame = $17; + $18 = ($17|0)!=(0|0); + if (!($18)) { + $19 = (_gpg_err_code_from_syserror()|0); + $0 = $19; + $145 = $0; + STACKTOP = sp;return ($145|0); + } + $n = 0; + $20 = $n; + $21 = (($20) + 1)|0; + $n = $21; + $22 = $frame; + $23 = (($22) + ($20)|0); + HEAP8[$23>>0] = 0; + $24 = $n; + $25 = (($24) + 1)|0; + $n = $25; + $26 = $frame; + $27 = (($26) + ($24)|0); + HEAP8[$27>>0] = 2; + $28 = HEAP32[$nframe>>2]|0; + $29 = (($28) - 3)|0; + $30 = $4; + $31 = (($29) - ($30))|0; + $i = $31; + $32 = $i; + $33 = ($32|0)>(0); + if (!($33)) { + __gcry_assert_failed(38963,38969,95,38982); + // unreachable; + } + $34 = $5; + $35 = ($34|0)!=(0|0); + do { + if ($35) { + $36 = $6; + $37 = $i; + $38 = ($36|0)!=($37|0); + if ($38) { + $39 = $frame; + __gcry_free($39); + $0 = 45; + $145 = $0; + STACKTOP = sp;return ($145|0); + } + $j = 0; + while(1) { + $40 = $j; + $41 = $6; + $42 = ($40>>>0)<($41>>>0); + if (!($42)) { + label = 15; + break; + } + $43 = $j; + $44 = $5; + $45 = (($44) + ($43)|0); + $46 = HEAP8[$45>>0]|0; + $47 = ($46<<24>>24)!=(0); + if (!($47)) { + break; + } + $49 = $j; + $50 = (($49) + 1)|0; + $j = $50; + } + if ((label|0) == 15) { + $51 = $frame; + $52 = $n; + $53 = (($51) + ($52)|0); + $54 = $5; + $55 = $6; + _memcpy(($53|0),($54|0),($55|0))|0; + $56 = $6; + $57 = $n; + $58 = (($57) + ($56))|0; + $n = $58; + break; + } + $48 = $frame; + __gcry_free($48); + $0 = 45; + $145 = $0; + STACKTOP = sp;return ($145|0); + } else { + $59 = $i; + $60 = (__gcry_random_bytes_secure($59,1)|0); + $p = $60; + while(1) { + $k = 0; + $j1 = 0; + while(1) { + $61 = $j1; + $62 = $i; + $63 = ($61|0)<($62|0); + if (!($63)) { + break; + } + $64 = $j1; + $65 = $p; + $66 = (($65) + ($64)|0); + $67 = HEAP8[$66>>0]|0; + $68 = ($67<<24>>24)!=(0); + if (!($68)) { + $69 = $k; + $70 = (($69) + 1)|0; + $k = $70; + } + $71 = $j1; + $72 = (($71) + 1)|0; + $j1 = $72; + } + $73 = $k; + $74 = ($73|0)!=(0); + if (!($74)) { + break; + } + $75 = $k; + $76 = (($75|0) / 128)&-1; + $77 = (($76) + 3)|0; + $78 = $k; + $79 = (($78) + ($77))|0; + $k = $79; + $80 = $k; + $81 = (__gcry_random_bytes_secure($80,1)|0); + $pp = $81; + $j1 = 0; + while(1) { + $82 = $j1; + $83 = $i; + $84 = ($82|0)<($83|0); + $85 = $k; + $86 = ($85|0)!=(0); + $87 = $84 ? $86 : 0; + if (!($87)) { + break; + } + $88 = $j1; + $89 = $p; + $90 = (($89) + ($88)|0); + $91 = HEAP8[$90>>0]|0; + $92 = ($91<<24>>24)!=(0); + if (!($92)) { + $93 = $k; + $94 = (($93) + -1)|0; + $k = $94; + $95 = $pp; + $96 = (($95) + ($94)|0); + $97 = HEAP8[$96>>0]|0; + $98 = $j1; + $99 = $p; + $100 = (($99) + ($98)|0); + HEAP8[$100>>0] = $97; + } + $101 = $j1; + $102 = $p; + $103 = (($102) + ($101)|0); + $104 = HEAP8[$103>>0]|0; + $105 = ($104<<24>>24)!=(0); + if (!($105)) { + continue; + } + $106 = $j1; + $107 = (($106) + 1)|0; + $j1 = $107; + } + $108 = $pp; + __gcry_free($108); + } + $109 = $frame; + $110 = $n; + $111 = (($109) + ($110)|0); + $112 = $p; + $113 = $i; + _memcpy(($111|0),($112|0),($113|0))|0; + $114 = $i; + $115 = $n; + $116 = (($115) + ($114))|0; + $n = $116; + $117 = $p; + __gcry_free($117); + } + } while(0); + $118 = $n; + $119 = (($118) + 1)|0; + $n = $119; + $120 = $frame; + $121 = (($120) + ($118)|0); + HEAP8[$121>>0] = 0; + $122 = $frame; + $123 = $n; + $124 = (($122) + ($123)|0); + $125 = $3; + $126 = $4; + _memcpy(($124|0),($125|0),($126|0))|0; + $127 = $4; + $128 = $n; + $129 = (($128) + ($127))|0; + $n = $129; + $130 = $n; + $131 = HEAP32[$nframe>>2]|0; + $132 = ($130|0)==($131|0); + if (!($132)) { + __gcry_assert_failed(39013,38969,153,38982); + // unreachable; + } + $133 = $1; + $134 = $frame; + $135 = $n; + $136 = (__gcry_mpi_scan($133,5,$134,$135,$nframe)|0); + $rc = $136; + $137 = $rc; + $138 = ($137|0)!=(0); + if (!($138)) { + $139 = (__gcry_get_debug_flag(1)|0); + $140 = ($139|0)!=(0); + if ($140) { + $141 = $1; + $142 = HEAP32[$141>>2]|0; + __gcry_log_printmpi(39025,$142); + } + } + $143 = $frame; + __gcry_free($143); + $144 = $rc; + $0 = $144; + $145 = $0; + STACKTOP = sp;return ($145|0); +} +function __gcry_rsa_pkcs1_decode_for_enc($r_result,$r_resultlen,$nbits,$value) { + $r_result = $r_result|0; + $r_resultlen = $r_resultlen|0; + $nbits = $nbits|0; + $value = $value|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $8 = 0, $9 = 0, $err = 0, $frame = 0, $n = 0; + var $nframe = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $n = sp; + $1 = $r_result; + $2 = $r_resultlen; + $3 = $nbits; + $4 = $value; + $frame = 0; + $5 = $3; + $6 = (($5) + 7)|0; + $7 = (($6>>>0) / 8)&-1; + $nframe = $7; + $8 = $1; + HEAP32[$8>>2] = 0; + $9 = $nframe; + $10 = (__gcry_malloc_secure($9)|0); + $frame = $10; + $11 = ($10|0)!=(0|0); + if (!($11)) { + $12 = (_gpg_err_code_from_syserror()|0); + $0 = $12; + $76 = $0; + STACKTOP = sp;return ($76|0); + } + $13 = $frame; + $14 = $nframe; + $15 = $4; + $16 = (__gcry_mpi_print(5,$13,$14,$n,$15)|0); + $err = $16; + $17 = $err; + $18 = ($17|0)!=(0); + if ($18) { + $19 = $frame; + __gcry_free($19); + $20 = $err; + $21 = (_gcry_err_code($20)|0); + $0 = $21; + $76 = $0; + STACKTOP = sp;return ($76|0); + } + $22 = HEAP32[$n>>2]|0; + $nframe = $22; + $23 = $nframe; + $24 = ($23>>>0)<(4); + if ($24) { + $25 = $frame; + __gcry_free($25); + $0 = 155; + $76 = $0; + STACKTOP = sp;return ($76|0); + } + HEAP32[$n>>2] = 0; + $26 = $frame; + $27 = HEAP8[$26>>0]|0; + $28 = ($27<<24>>24)!=(0); + if (!($28)) { + $29 = HEAP32[$n>>2]|0; + $30 = (($29) + 1)|0; + HEAP32[$n>>2] = $30; + } + $31 = HEAP32[$n>>2]|0; + $32 = (($31) + 1)|0; + HEAP32[$n>>2] = $32; + $33 = $frame; + $34 = (($33) + ($31)|0); + $35 = HEAP8[$34>>0]|0; + $36 = $35&255; + $37 = ($36|0)!=(2); + if ($37) { + $38 = $frame; + __gcry_free($38); + $0 = 155; + $76 = $0; + STACKTOP = sp;return ($76|0); + } + while(1) { + $39 = HEAP32[$n>>2]|0; + $40 = $nframe; + $41 = ($39>>>0)<($40>>>0); + if (!($41)) { + break; + } + $42 = HEAP32[$n>>2]|0; + $43 = $frame; + $44 = (($43) + ($42)|0); + $45 = HEAP8[$44>>0]|0; + $46 = $45&255; + $47 = ($46|0)!=(0); + if (!($47)) { + break; + } + $48 = HEAP32[$n>>2]|0; + $49 = (($48) + 1)|0; + HEAP32[$n>>2] = $49; + } + $50 = HEAP32[$n>>2]|0; + $51 = (($50) + 1)|0; + $52 = $nframe; + $53 = ($51>>>0)>=($52>>>0); + if ($53) { + $54 = $frame; + __gcry_free($54); + $0 = 155; + $76 = $0; + STACKTOP = sp;return ($76|0); + } + $55 = HEAP32[$n>>2]|0; + $56 = (($55) + 1)|0; + HEAP32[$n>>2] = $56; + $57 = $frame; + $58 = $frame; + $59 = HEAP32[$n>>2]|0; + $60 = (($58) + ($59)|0); + $61 = $nframe; + $62 = HEAP32[$n>>2]|0; + $63 = (($61) - ($62))|0; + _memmove(($57|0),($60|0),($63|0))|0; + $64 = $frame; + $65 = $1; + HEAP32[$65>>2] = $64; + $66 = $nframe; + $67 = HEAP32[$n>>2]|0; + $68 = (($66) - ($67))|0; + $69 = $2; + HEAP32[$69>>2] = $68; + $70 = (__gcry_get_debug_flag(1)|0); + $71 = ($70|0)!=(0); + if ($71) { + $72 = $1; + $73 = HEAP32[$72>>2]|0; + $74 = $2; + $75 = HEAP32[$74>>2]|0; + __gcry_log_printhex(39058,$73,$75); + } + $0 = 0; + $76 = $0; + STACKTOP = sp;return ($76|0); +} +function _gcry_err_code($err) { + $err = $err|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $err; + $1 = $0; + $2 = (_gpg_err_code_1231($1)|0); + STACKTOP = sp;return ($2|0); +} +function _gpg_err_code_1231($err) { + $err = $err|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $err; + $1 = $0; + $2 = $1 & 65535; + STACKTOP = sp;return ($2|0); +} +function __gcry_rsa_pkcs1_encode_for_sig($r_result,$nbits,$value,$valuelen,$algo) { + $r_result = $r_result|0; + $nbits = $nbits|0; + $value = $value|0; + $valuelen = $valuelen|0; + $algo = $algo|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $9 = 0, $asn = 0, $asnlen = 0, $dlen = 0, $frame = 0, $i = 0, $n = 0, $nframe = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $asn = sp + 52|0; + $nframe = sp + 16|0; + $asnlen = sp + 4|0; + $1 = $r_result; + $2 = $nbits; + $3 = $value; + $4 = $valuelen; + $5 = $algo; + $rc = 0; + $frame = 0; + $6 = $2; + $7 = (($6) + 7)|0; + $8 = (($7>>>0) / 8)&-1; + HEAP32[$nframe>>2] = $8; + HEAP32[$asnlen>>2] = 100; + $9 = $5; + $10 = (__gcry_md_get_algo_dlen($9)|0); + $dlen = $10; + $11 = $5; + $12 = (__gcry_md_algo_info($11,10,$asn,$asnlen)|0); + $13 = ($12|0)!=(0); + if ($13) { + $0 = 69; + $86 = $0; + STACKTOP = sp;return ($86|0); + } + $14 = $4; + $15 = $dlen; + $16 = ($14|0)!=($15|0); + if ($16) { + $0 = 70; + $86 = $0; + STACKTOP = sp;return ($86|0); + } + $17 = $dlen; + $18 = ($17|0)!=(0); + if ($18) { + $19 = $dlen; + $20 = HEAP32[$asnlen>>2]|0; + $21 = (($19) + ($20))|0; + $22 = (($21) + 4)|0; + $23 = HEAP32[$nframe>>2]|0; + $24 = ($22>>>0)>($23>>>0); + if (!($24)) { + $25 = HEAP32[$nframe>>2]|0; + $26 = (__gcry_malloc($25)|0); + $frame = $26; + $27 = ($26|0)!=(0|0); + if (!($27)) { + $28 = (_gpg_err_code_from_syserror()|0); + $0 = $28; + $86 = $0; + STACKTOP = sp;return ($86|0); + } + $n = 0; + $29 = $n; + $30 = (($29) + 1)|0; + $n = $30; + $31 = $frame; + $32 = (($31) + ($29)|0); + HEAP8[$32>>0] = 0; + $33 = $n; + $34 = (($33) + 1)|0; + $n = $34; + $35 = $frame; + $36 = (($35) + ($33)|0); + HEAP8[$36>>0] = 1; + $37 = HEAP32[$nframe>>2]|0; + $38 = $4; + $39 = (($37) - ($38))|0; + $40 = HEAP32[$asnlen>>2]|0; + $41 = (($39) - ($40))|0; + $42 = (($41) - 3)|0; + $i = $42; + $43 = $i; + $44 = ($43|0)>(1); + if (!($44)) { + __gcry_assert_failed(39112,38969,303,39118); + // unreachable; + } + $45 = $frame; + $46 = $n; + $47 = (($45) + ($46)|0); + $48 = $i; + _memset(($47|0),-1,($48|0))|0; + $49 = $i; + $50 = $n; + $51 = (($50) + ($49))|0; + $n = $51; + $52 = $n; + $53 = (($52) + 1)|0; + $n = $53; + $54 = $frame; + $55 = (($54) + ($52)|0); + HEAP8[$55>>0] = 0; + $56 = $frame; + $57 = $n; + $58 = (($56) + ($57)|0); + $59 = HEAP32[$asnlen>>2]|0; + _memcpy(($58|0),($asn|0),($59|0))|0; + $60 = HEAP32[$asnlen>>2]|0; + $61 = $n; + $62 = (($61) + ($60))|0; + $n = $62; + $63 = $frame; + $64 = $n; + $65 = (($63) + ($64)|0); + $66 = $3; + $67 = $4; + _memcpy(($65|0),($66|0),($67|0))|0; + $68 = $4; + $69 = $n; + $70 = (($69) + ($68))|0; + $n = $70; + $71 = $n; + $72 = HEAP32[$nframe>>2]|0; + $73 = ($71|0)==($72|0); + if (!($73)) { + __gcry_assert_failed(39013,38969,311,39118); + // unreachable; + } + $74 = $1; + $75 = $frame; + $76 = $n; + $77 = (__gcry_mpi_scan($74,5,$75,$76,$nframe)|0); + $rc = $77; + $78 = $rc; + $79 = ($78|0)!=(0); + if (!($79)) { + $80 = (__gcry_get_debug_flag(1)|0); + $81 = ($80|0)!=(0); + if ($81) { + $82 = $1; + $83 = HEAP32[$82>>2]|0; + __gcry_log_printmpi(39149,$83); + } + } + $84 = $frame; + __gcry_free($84); + $85 = $rc; + $0 = $85; + $86 = $0; + STACKTOP = sp;return ($86|0); + } + } + $0 = 66; + $86 = $0; + STACKTOP = sp;return ($86|0); +} +function __gcry_rsa_pkcs1_encode_raw_for_sig($r_result,$nbits,$value,$valuelen) { + $r_result = $r_result|0; + $nbits = $nbits|0; + $value = $value|0; + $valuelen = $valuelen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 = 0, $err = 0, $frame = 0, $i = 0, $n = 0, $nframe = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $nframe = sp + 8|0; + $1 = $r_result; + $2 = $nbits; + $3 = $value; + $4 = $valuelen; + $rc = 0; + $frame = 0; + $5 = $2; + $6 = (($5) + 7)|0; + $7 = (($6>>>0) / 8)&-1; + HEAP32[$nframe>>2] = $7; + $8 = $4; + $9 = ($8|0)!=(0); + if ($9) { + $10 = $4; + $11 = (($10) + 4)|0; + $12 = HEAP32[$nframe>>2]|0; + $13 = ($11>>>0)>($12>>>0); + if (!($13)) { + $14 = HEAP32[$nframe>>2]|0; + $15 = (__gcry_malloc($14)|0); + $frame = $15; + $16 = ($15|0)!=(0|0); + if (!($16)) { + $17 = (_gpg_err_code_from_syserror()|0); + $0 = $17; + $68 = $0; + STACKTOP = sp;return ($68|0); + } + $n = 0; + $18 = $n; + $19 = (($18) + 1)|0; + $n = $19; + $20 = $frame; + $21 = (($20) + ($18)|0); + HEAP8[$21>>0] = 0; + $22 = $n; + $23 = (($22) + 1)|0; + $n = $23; + $24 = $frame; + $25 = (($24) + ($22)|0); + HEAP8[$25>>0] = 1; + $26 = HEAP32[$nframe>>2]|0; + $27 = $4; + $28 = (($26) - ($27))|0; + $29 = (($28) - 3)|0; + $i = $29; + $30 = $i; + $31 = ($30|0)>(1); + if (!($31)) { + __gcry_assert_failed(39112,38969,368,39182); + // unreachable; + } + $32 = $frame; + $33 = $n; + $34 = (($32) + ($33)|0); + $35 = $i; + _memset(($34|0),-1,($35|0))|0; + $36 = $i; + $37 = $n; + $38 = (($37) + ($36))|0; + $n = $38; + $39 = $n; + $40 = (($39) + 1)|0; + $n = $40; + $41 = $frame; + $42 = (($41) + ($39)|0); + HEAP8[$42>>0] = 0; + $43 = $frame; + $44 = $n; + $45 = (($43) + ($44)|0); + $46 = $3; + $47 = $4; + _memcpy(($45|0),($46|0),($47|0))|0; + $48 = $4; + $49 = $n; + $50 = (($49) + ($48))|0; + $n = $50; + $51 = $n; + $52 = HEAP32[$nframe>>2]|0; + $53 = ($51|0)==($52|0); + if (!($53)) { + __gcry_assert_failed(39013,38969,374,39182); + // unreachable; + } + $54 = $1; + $55 = $frame; + $56 = $n; + $57 = (__gcry_mpi_scan($54,5,$55,$56,$nframe)|0); + $err = $57; + $58 = $err; + $59 = ($58|0)!=(0); + if ($59) { + $60 = $err; + $61 = (_gcry_err_code($60)|0); + $rc = $61; + } else { + $62 = (__gcry_get_debug_flag(1)|0); + $63 = ($62|0)!=(0); + if ($63) { + $64 = $1; + $65 = HEAP32[$64>>2]|0; + __gcry_log_printmpi(39149,$65); + } + } + $66 = $frame; + __gcry_free($66); + $67 = $rc; + $0 = $67; + $68 = $0; + STACKTOP = sp;return ($68|0); + } + } + $0 = 66; + $68 = $0; + STACKTOP = sp;return ($68|0); +} +function __gcry_rsa_oaep_encode($r_result,$nbits,$algo,$value,$valuelen,$label,$labellen,$random_override,$random_override_len) { + $r_result = $r_result|0; + $nbits = $nbits|0; + $algo = $algo|0; + $value = $value|0; + $valuelen = $valuelen|0; + $label = $label|0; + $labellen = $labellen|0; + $random_override = $random_override|0; + $random_override_len = $random_override_len|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0; + var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $dmask = 0, $frame = 0, $hlen = 0, $n = 0, $nframe = 0, $or$cond = 0, $or$cond3 = 0, $p = 0, $rc = 0, $smask = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $r_result; + $2 = $nbits; + $3 = $algo; + $4 = $value; + $5 = $valuelen; + $6 = $label; + $7 = $labellen; + $8 = $random_override; + $9 = $random_override_len; + $rc = 0; + $frame = 0; + $10 = $2; + $11 = (($10) + 7)|0; + $12 = (($11>>>0) / 8)&-1; + $nframe = $12; + $13 = $1; + HEAP32[$13>>2] = 0; + $14 = $6; + $15 = ($14|0)!=(0|0); + $16 = $7; + $17 = ($16|0)!=(0); + $or$cond = $15 & $17; + if (!($or$cond)) { + $6 = 76543; + $7 = 0; + } + $18 = $3; + $19 = (__gcry_md_get_algo_dlen($18)|0); + $hlen = $19; + $20 = $5; + $21 = $nframe; + $22 = $hlen; + $23 = $22<<1; + $24 = (($21) - ($23))|0; + $25 = (($24) - 2)|0; + $26 = ($20>>>0)<=($25>>>0); + $27 = $nframe; + $28 = ($27|0)!=(0); + $or$cond3 = $26 & $28; + if (!($or$cond3)) { + $0 = 66; + $166 = $0; + STACKTOP = sp;return ($166|0); + } + $29 = $nframe; + $30 = (__gcry_calloc_secure(1,$29)|0); + $frame = $30; + $31 = $frame; + $32 = ($31|0)!=(0|0); + if (!($32)) { + $33 = (_gpg_err_code_from_syserror()|0); + $0 = $33; + $166 = $0; + STACKTOP = sp;return ($166|0); + } + $34 = $3; + $35 = $frame; + $36 = ((($35)) + 1|0); + $37 = $hlen; + $38 = (($36) + ($37)|0); + $39 = $6; + $40 = $7; + __gcry_md_hash_buffer($34,$38,$39,$40); + $41 = $nframe; + $42 = $5; + $43 = (($41) - ($42))|0; + $44 = (($43) - 1)|0; + $n = $44; + $45 = $n; + $46 = $frame; + $47 = (($46) + ($45)|0); + HEAP8[$47>>0] = 1; + $48 = $frame; + $49 = $n; + $50 = (($48) + ($49)|0); + $51 = ((($50)) + 1|0); + $52 = $4; + $53 = $5; + _memcpy(($51|0),($52|0),($53|0))|0; + $54 = $8; + $55 = ($54|0)!=(0|0); + do { + if ($55) { + $56 = $9; + $57 = $hlen; + $58 = ($56|0)!=($57|0); + $59 = $frame; + if (!($58)) { + $60 = ((($59)) + 1|0); + $61 = $8; + $62 = $hlen; + _memcpy(($60|0),($61|0),($62|0))|0; + break; + } + __gcry_free($59); + $0 = 45; + $166 = $0; + STACKTOP = sp;return ($166|0); + } else { + $63 = $frame; + $64 = ((($63)) + 1|0); + $65 = $hlen; + __gcry_randomize($64,$65,1); + } + } while(0); + $66 = $nframe; + $67 = $hlen; + $68 = (($66) - ($67))|0; + $69 = (($68) - 1)|0; + $70 = (__gcry_malloc_secure($69)|0); + $dmask = $70; + $71 = $dmask; + $72 = ($71|0)!=(0|0); + if (!($72)) { + $73 = (_gpg_err_code_from_syserror()|0); + $rc = $73; + $74 = $frame; + __gcry_free($74); + $75 = $rc; + $0 = $75; + $166 = $0; + STACKTOP = sp;return ($166|0); + } + $76 = $dmask; + $77 = $nframe; + $78 = $hlen; + $79 = (($77) - ($78))|0; + $80 = (($79) - 1)|0; + $81 = $frame; + $82 = ((($81)) + 1|0); + $83 = $hlen; + $84 = $3; + $85 = (_mgf1($76,$80,$82,$83,$84)|0); + $rc = $85; + $86 = $rc; + $87 = ($86|0)!=(0); + if ($87) { + $88 = $dmask; + __gcry_free($88); + $89 = $frame; + __gcry_free($89); + $90 = $rc; + $0 = $90; + $166 = $0; + STACKTOP = sp;return ($166|0); + } + $91 = $hlen; + $92 = (1 + ($91))|0; + $n = $92; + $93 = $dmask; + $p = $93; + while(1) { + $94 = $n; + $95 = $nframe; + $96 = ($94>>>0)<($95>>>0); + if (!($96)) { + break; + } + $97 = $p; + $98 = ((($97)) + 1|0); + $p = $98; + $99 = HEAP8[$97>>0]|0; + $100 = $99&255; + $101 = $n; + $102 = $frame; + $103 = (($102) + ($101)|0); + $104 = HEAP8[$103>>0]|0; + $105 = $104&255; + $106 = $105 ^ $100; + $107 = $106&255; + HEAP8[$103>>0] = $107; + $108 = $n; + $109 = (($108) + 1)|0; + $n = $109; + } + $110 = $dmask; + __gcry_free($110); + $111 = $hlen; + $112 = (__gcry_malloc_secure($111)|0); + $smask = $112; + $113 = $smask; + $114 = ($113|0)!=(0|0); + if (!($114)) { + $115 = (_gpg_err_code_from_syserror()|0); + $rc = $115; + $116 = $frame; + __gcry_free($116); + $117 = $rc; + $0 = $117; + $166 = $0; + STACKTOP = sp;return ($166|0); + } + $118 = $smask; + $119 = $hlen; + $120 = $frame; + $121 = ((($120)) + 1|0); + $122 = $hlen; + $123 = (($121) + ($122)|0); + $124 = $nframe; + $125 = $hlen; + $126 = (($124) - ($125))|0; + $127 = (($126) - 1)|0; + $128 = $3; + $129 = (_mgf1($118,$119,$123,$127,$128)|0); + $rc = $129; + $130 = $rc; + $131 = ($130|0)!=(0); + if ($131) { + $132 = $smask; + __gcry_free($132); + $133 = $frame; + __gcry_free($133); + $134 = $rc; + $0 = $134; + $166 = $0; + STACKTOP = sp;return ($166|0); + } + $n = 1; + $135 = $smask; + $p = $135; + while(1) { + $136 = $n; + $137 = $hlen; + $138 = (1 + ($137))|0; + $139 = ($136>>>0)<($138>>>0); + if (!($139)) { + break; + } + $140 = $p; + $141 = ((($140)) + 1|0); + $p = $141; + $142 = HEAP8[$140>>0]|0; + $143 = $142&255; + $144 = $n; + $145 = $frame; + $146 = (($145) + ($144)|0); + $147 = HEAP8[$146>>0]|0; + $148 = $147&255; + $149 = $148 ^ $143; + $150 = $149&255; + HEAP8[$146>>0] = $150; + $151 = $n; + $152 = (($151) + 1)|0; + $n = $152; + } + $153 = $smask; + __gcry_free($153); + $154 = $1; + $155 = $frame; + $156 = $nframe; + $157 = (__gcry_mpi_scan($154,5,$155,$156,0)|0); + $rc = $157; + $158 = $rc; + $159 = ($158|0)!=(0); + if (!($159)) { + $160 = (__gcry_get_debug_flag(1)|0); + $161 = ($160|0)!=(0); + if ($161) { + $162 = $1; + $163 = HEAP32[$162>>2]|0; + __gcry_log_printmpi(39217,$163); + } + } + $164 = $frame; + __gcry_free($164); + $165 = $rc; + $0 = $165; + $166 = $0; + STACKTOP = sp;return ($166|0); +} +function _mgf1($output,$outlen,$seed,$seedlen,$algo) { + $output = $output|0; + $outlen = $outlen|0; + $seed = $seed|0; + $seedlen = $seedlen|0; + $algo = $algo|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, $digest = 0, $dlen = 0, $err = 0, $hd = 0, $idx = 0, $n = 0, $nbytes = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $hd = sp + 8|0; + $c = sp + 52|0; + $1 = $output; + $2 = $outlen; + $3 = $seed; + $4 = $seedlen; + $5 = $algo; + $6 = $5; + $7 = (__gcry_md_open($hd,$6,0)|0); + $err = $7; + $8 = $err; + $9 = ($8|0)!=(0); + if ($9) { + $10 = $err; + $0 = $10; + $64 = $0; + STACKTOP = sp;return ($64|0); + } + $11 = $5; + $12 = (__gcry_md_get_algo_dlen($11)|0); + $dlen = $12; + $nbytes = 0; + $idx = 0; + while(1) { + $13 = $nbytes; + $14 = $2; + $15 = ($13>>>0)<($14>>>0); + if (!($15)) { + break; + } + $16 = $idx; + $17 = ($16|0)!=(0); + if ($17) { + $18 = HEAP32[$hd>>2]|0; + __gcry_md_reset($18); + } + $19 = $idx; + $20 = $19 >> 24; + $21 = $20 & 255; + $22 = $21&255; + HEAP8[$c>>0] = $22; + $23 = $idx; + $24 = $23 >> 16; + $25 = $24 & 255; + $26 = $25&255; + $27 = ((($c)) + 1|0); + HEAP8[$27>>0] = $26; + $28 = $idx; + $29 = $28 >> 8; + $30 = $29 & 255; + $31 = $30&255; + $32 = ((($c)) + 2|0); + HEAP8[$32>>0] = $31; + $33 = $idx; + $34 = $33 & 255; + $35 = $34&255; + $36 = ((($c)) + 3|0); + HEAP8[$36>>0] = $35; + $37 = $idx; + $38 = (($37) + 1)|0; + $idx = $38; + $39 = HEAP32[$hd>>2]|0; + $40 = $3; + $41 = $4; + __gcry_md_write($39,$40,$41); + $42 = HEAP32[$hd>>2]|0; + __gcry_md_write($42,$c,4); + $43 = HEAP32[$hd>>2]|0; + $44 = (__gcry_md_read($43,0)|0); + $digest = $44; + $45 = $2; + $46 = $nbytes; + $47 = (($45) - ($46))|0; + $48 = $dlen; + $49 = ($47>>>0)<($48>>>0); + if ($49) { + $50 = $2; + $51 = $nbytes; + $52 = (($50) - ($51))|0; + $54 = $52; + } else { + $53 = $dlen; + $54 = $53; + } + $n = $54; + $55 = $1; + $56 = $nbytes; + $57 = (($55) + ($56)|0); + $58 = $digest; + $59 = $n; + _memcpy(($57|0),($58|0),($59|0))|0; + $60 = $n; + $61 = $nbytes; + $62 = (($61) + ($60))|0; + $nbytes = $62; + } + $63 = HEAP32[$hd>>2]|0; + __gcry_md_close($63); + $0 = 0; + $64 = $0; + STACKTOP = sp;return ($64|0); +} +function __gcry_rsa_oaep_decode($r_result,$r_resultlen,$nbits,$algo,$value,$label,$labellen) { + $r_result = $r_result|0; + $r_resultlen = $r_resultlen|0; + $nbits = $nbits|0; + $algo = $algo|0; + $value = $value|0; + $label = $label|0; + $labellen = $labellen|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $db = 0, $db_len = 0, $failed = 0, $frame = 0, $hlen = 0, $lhash = 0, $masked_db = 0, $masked_seed = 0, $n = 0, $nframe = 0, $nkey = 0, $or$cond = 0, $rc = 0, $seed = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $frame = sp + 44|0; + $1 = $r_result; + $2 = $r_resultlen; + $3 = $nbits; + $4 = $algo; + $5 = $value; + $6 = $label; + $7 = $labellen; + HEAP32[$frame>>2] = 0; + $seed = 0; + $lhash = 0; + $8 = $3; + $9 = (($8) + 7)|0; + $10 = (($9>>>0) / 8)&-1; + $nkey = $10; + $failed = 0; + $11 = $1; + HEAP32[$11>>2] = 0; + $12 = $6; + $13 = ($12|0)!=(0|0); + $14 = $7; + $15 = ($14|0)!=(0); + $or$cond = $13 & $15; + if (!($or$cond)) { + $6 = 76543; + $7 = 0; + } + $16 = $4; + $17 = (__gcry_md_get_algo_dlen($16)|0); + $hlen = $17; + $18 = $hlen; + $19 = (__gcry_malloc($18)|0); + $lhash = $19; + $20 = $lhash; + $21 = ($20|0)!=(0|0); + if (!($21)) { + $22 = (_gpg_err_code_from_syserror()|0); + $0 = $22; + $160 = $0; + STACKTOP = sp;return ($160|0); + } + $23 = $4; + $24 = $lhash; + $25 = $6; + $26 = $7; + __gcry_md_hash_buffer($23,$24,$25,$26); + $27 = $5; + $28 = $nkey; + $29 = (_octet_string_from_mpi($frame,0,$27,$28)|0); + $rc = $29; + $30 = $rc; + $31 = ($30|0)!=(0); + if ($31) { + $32 = $lhash; + __gcry_free($32); + $0 = 155; + $160 = $0; + STACKTOP = sp;return ($160|0); + } + $33 = $nkey; + $nframe = $33; + $34 = $nframe; + $35 = $hlen; + $36 = $35<<1; + $37 = (($36) + 2)|0; + $38 = ($34>>>0)<($37>>>0); + if ($38) { + $39 = HEAP32[$frame>>2]|0; + __gcry_free($39); + $40 = $lhash; + __gcry_free($40); + $0 = 155; + $160 = $0; + STACKTOP = sp;return ($160|0); + } + $41 = $nframe; + $42 = (($41) - 1)|0; + $43 = (__gcry_malloc_secure($42)|0); + $seed = $43; + $44 = $seed; + $45 = ($44|0)!=(0|0); + if (!($45)) { + $46 = (_gpg_err_code_from_syserror()|0); + $rc = $46; + $47 = HEAP32[$frame>>2]|0; + __gcry_free($47); + $48 = $lhash; + __gcry_free($48); + $49 = $rc; + $0 = $49; + $160 = $0; + STACKTOP = sp;return ($160|0); + } + $50 = $seed; + $51 = $hlen; + $52 = (($50) + ($51)|0); + $db = $52; + $53 = HEAP32[$frame>>2]|0; + $54 = ((($53)) + 1|0); + $masked_seed = $54; + $55 = HEAP32[$frame>>2]|0; + $56 = ((($55)) + 1|0); + $57 = $hlen; + $58 = (($56) + ($57)|0); + $masked_db = $58; + $59 = $nframe; + $60 = (($59) - 1)|0; + $61 = $hlen; + $62 = (($60) - ($61))|0; + $db_len = $62; + $63 = $seed; + $64 = $hlen; + $65 = $masked_db; + $66 = $db_len; + $67 = $4; + $68 = (_mgf1($63,$64,$65,$66,$67)|0); + $69 = ($68|0)!=(0); + if ($69) { + $failed = 1; + } + $n = 0; + while(1) { + $70 = $n; + $71 = $hlen; + $72 = ($70>>>0)<($71>>>0); + if (!($72)) { + break; + } + $73 = $n; + $74 = $masked_seed; + $75 = (($74) + ($73)|0); + $76 = HEAP8[$75>>0]|0; + $77 = $76&255; + $78 = $n; + $79 = $seed; + $80 = (($79) + ($78)|0); + $81 = HEAP8[$80>>0]|0; + $82 = $81&255; + $83 = $82 ^ $77; + $84 = $83&255; + HEAP8[$80>>0] = $84; + $85 = $n; + $86 = (($85) + 1)|0; + $n = $86; + } + $87 = $db; + $88 = $db_len; + $89 = $seed; + $90 = $hlen; + $91 = $4; + $92 = (_mgf1($87,$88,$89,$90,$91)|0); + $93 = ($92|0)!=(0); + if ($93) { + $failed = 1; + } + $n = 0; + while(1) { + $94 = $n; + $95 = $db_len; + $96 = ($94>>>0)<($95>>>0); + if (!($96)) { + break; + } + $97 = $n; + $98 = $masked_db; + $99 = (($98) + ($97)|0); + $100 = HEAP8[$99>>0]|0; + $101 = $100&255; + $102 = $n; + $103 = $db; + $104 = (($103) + ($102)|0); + $105 = HEAP8[$104>>0]|0; + $106 = $105&255; + $107 = $106 ^ $101; + $108 = $107&255; + HEAP8[$104>>0] = $108; + $109 = $n; + $110 = (($109) + 1)|0; + $n = $110; + } + $111 = $lhash; + $112 = $db; + $113 = $hlen; + $114 = (_memcmp($111,$112,$113)|0); + $115 = ($114|0)!=(0); + if ($115) { + $failed = 1; + } + $116 = $hlen; + $n = $116; + while(1) { + $117 = $n; + $118 = $db_len; + $119 = ($117>>>0)<($118>>>0); + if (!($119)) { + break; + } + $120 = $n; + $121 = $db; + $122 = (($121) + ($120)|0); + $123 = HEAP8[$122>>0]|0; + $124 = $123&255; + $125 = ($124|0)==(1); + if ($125) { + break; + } + $126 = $n; + $127 = (($126) + 1)|0; + $n = $127; + } + $128 = $n; + $129 = $db_len; + $130 = ($128|0)==($129|0); + if ($130) { + $failed = 1; + } + $131 = HEAP32[$frame>>2]|0; + $132 = HEAP8[$131>>0]|0; + $133 = ($132<<24>>24)!=(0); + if ($133) { + $failed = 1; + } + $134 = $lhash; + __gcry_free($134); + $135 = HEAP32[$frame>>2]|0; + __gcry_free($135); + $136 = $failed; + $137 = ($136|0)!=(0); + if ($137) { + $138 = $seed; + __gcry_free($138); + $0 = 155; + $160 = $0; + STACKTOP = sp;return ($160|0); + } + $139 = $n; + $140 = (($139) + 1)|0; + $n = $140; + $141 = $seed; + $142 = $db; + $143 = $n; + $144 = (($142) + ($143)|0); + $145 = $db_len; + $146 = $n; + $147 = (($145) - ($146))|0; + _memmove(($141|0),($144|0),($147|0))|0; + $148 = $seed; + $149 = $1; + HEAP32[$149>>2] = $148; + $150 = $db_len; + $151 = $n; + $152 = (($150) - ($151))|0; + $153 = $2; + HEAP32[$153>>2] = $152; + $seed = 0; + $154 = (__gcry_get_debug_flag(1)|0); + $155 = ($154|0)!=(0); + if ($155) { + $156 = $1; + $157 = HEAP32[$156>>2]|0; + $158 = $2; + $159 = HEAP32[$158>>2]|0; + __gcry_log_printhex(39235,$157,$159); + } + $0 = 0; + $160 = $0; + STACKTOP = sp;return ($160|0); +} +function _octet_string_from_mpi($r_frame,$space,$value,$nbytes) { + $r_frame = $r_frame|0; + $space = $space|0; + $value = $value|0; + $nbytes = $nbytes|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $r_frame; + $1 = $space; + $2 = $value; + $3 = $nbytes; + $4 = $0; + $5 = $1; + $6 = $2; + $7 = $3; + $8 = (__gcry_mpi_to_octet_string($4,$5,$6,$7)|0); + STACKTOP = sp;return ($8|0); +} +function __gcry_rsa_pss_encode($r_result,$nbits,$algo,$value,$valuelen,$saltlen,$random_override,$random_override_len) { + $r_result = $r_result|0; + $nbits = $nbits|0; + $algo = $algo|0; + $value = $value|0; + $valuelen = $valuelen|0; + $saltlen = $saltlen|0; + $random_override = $random_override|0; + $random_override_len = $random_override_len|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $_vlen = 0, $_vlen2 = 0, $_vptr = 0, $_vptr1 = 0, $_vptr_long = 0, $_vptr_long5 = 0, $_vset = 0, $_vset3 = 0, $_vset_long = 0, $_vset_long4 = 0, $buf = 0, $buflen = 0, $dbmask = 0, $em = 0, $emlen = 0; + var $h = 0, $hlen = 0, $mhash = 0, $n = 0, $p = 0, $rc = 0, $salt = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $_vset_long = sp + 8|0; + $_vset_long4 = sp; + $0 = $r_result; + $1 = $nbits; + $2 = $algo; + $3 = $value; + $4 = $valuelen; + $5 = $saltlen; + $6 = $random_override; + $7 = $random_override_len; + $rc = 0; + $em = 0; + $8 = $1; + $9 = (($8) + 7)|0; + $10 = (($9>>>0) / 8)&-1; + $emlen = $10; + $buf = 0; + $11 = $2; + $12 = (__gcry_md_get_algo_dlen($11)|0); + $hlen = $12; + $13 = $hlen; + $14 = ($13|0)!=(0); + if (!($14)) { + __gcry_assert_failed(39274,38969,800,39279); + // unreachable; + } + $15 = $hlen; + $16 = (8 + ($15))|0; + $17 = $5; + $18 = (($16) + ($17))|0; + $19 = $emlen; + $20 = $hlen; + $21 = (($19) - ($20))|0; + $22 = (($21) - 1)|0; + $23 = (($18) + ($22))|0; + $buflen = $23; + $24 = $buflen; + $25 = (__gcry_malloc($24)|0); + $buf = $25; + $26 = $buf; + $27 = ($26|0)!=(0|0); + L4: do { + if ($27) { + $29 = $buf; + $30 = ((($29)) + 8|0); + $mhash = $30; + $31 = $mhash; + $32 = $hlen; + $33 = (($31) + ($32)|0); + $salt = $33; + $34 = $salt; + $35 = $5; + $36 = (($34) + ($35)|0); + $dbmask = $36; + $37 = $4; + $38 = $hlen; + $39 = ($37|0)!=($38|0); + if ($39) { + $rc = 139; + break; + } + $40 = $mhash; + $41 = $3; + $42 = $hlen; + _memcpy(($40|0),($41|0),($42|0))|0; + $43 = $emlen; + $44 = $hlen; + $45 = $5; + $46 = (($44) + ($45))|0; + $47 = (($46) + 2)|0; + $48 = ($43>>>0)<($47>>>0); + if ($48) { + $rc = 66; + break; + } + $49 = $emlen; + $50 = (__gcry_malloc($49)|0); + $em = $50; + $51 = $em; + $52 = ($51|0)!=(0|0); + if (!($52)) { + $53 = (_gpg_err_code_from_syserror()|0); + $rc = $53; + break; + } + $54 = $em; + $55 = $emlen; + $56 = (($54) + ($55)|0); + $57 = ((($56)) + -1|0); + $58 = $hlen; + $59 = (0 - ($58))|0; + $60 = (($57) + ($59)|0); + $h = $60; + $61 = $5; + $62 = ($61|0)!=(0); + do { + if ($62) { + $63 = $6; + $64 = ($63|0)!=(0|0); + if (!($64)) { + $71 = $salt; + $72 = $5; + __gcry_randomize($71,$72,1); + break; + } + $65 = $7; + $66 = $5; + $67 = ($65|0)!=($66|0); + if ($67) { + $rc = 45; + break L4; + } else { + $68 = $salt; + $69 = $6; + $70 = $5; + _memcpy(($68|0),($69|0),($70|0))|0; + break; + } + } + } while(0); + $73 = $buf; + ;HEAP8[$73>>0]=0|0;HEAP8[$73+1>>0]=0|0;HEAP8[$73+2>>0]=0|0;HEAP8[$73+3>>0]=0|0;HEAP8[$73+4>>0]=0|0;HEAP8[$73+5>>0]=0|0;HEAP8[$73+6>>0]=0|0;HEAP8[$73+7>>0]=0|0; + $74 = $2; + $75 = $h; + $76 = $buf; + $77 = $hlen; + $78 = (8 + ($77))|0; + $79 = $5; + $80 = (($78) + ($79))|0; + __gcry_md_hash_buffer($74,$75,$76,$80); + $81 = $em; + $82 = $emlen; + $83 = (($81) + ($82)|0); + $84 = ((($83)) + -1|0); + $85 = $hlen; + $86 = (0 - ($85))|0; + $87 = (($84) + ($86)|0); + $88 = $5; + $89 = (0 - ($88))|0; + $90 = (($87) + ($89)|0); + $91 = ((($90)) + -1|0); + $p = $91; + $92 = $em; + $93 = $p; + $94 = $em; + $95 = $93; + $96 = $94; + $97 = (($95) - ($96))|0; + _memset(($92|0),0,($97|0))|0; + $98 = $p; + $99 = ((($98)) + 1|0); + $p = $99; + HEAP8[$98>>0] = 1; + $100 = $p; + $101 = $salt; + $102 = $5; + _memcpy(($100|0),($101|0),($102|0))|0; + $103 = $dbmask; + $104 = $emlen; + $105 = $hlen; + $106 = (($104) - ($105))|0; + $107 = (($106) - 1)|0; + $108 = $h; + $109 = $hlen; + $110 = $2; + (_mgf1($103,$107,$108,$109,$110)|0); + $n = 0; + $111 = $dbmask; + $p = $111; + while(1) { + $112 = $n; + $113 = $emlen; + $114 = $hlen; + $115 = (($113) - ($114))|0; + $116 = (($115) - 1)|0; + $117 = ($112>>>0)<($116>>>0); + if (!($117)) { + break; + } + $118 = $p; + $119 = HEAP8[$118>>0]|0; + $120 = $119&255; + $121 = $n; + $122 = $em; + $123 = (($122) + ($121)|0); + $124 = HEAP8[$123>>0]|0; + $125 = $124&255; + $126 = $125 ^ $120; + $127 = $126&255; + HEAP8[$123>>0] = $127; + $128 = $n; + $129 = (($128) + 1)|0; + $n = $129; + $130 = $p; + $131 = ((($130)) + 1|0); + $p = $131; + } + $132 = $emlen; + $133 = $132<<3; + $134 = $1; + $135 = (($133) - ($134))|0; + $136 = 255 >> $135; + $137 = $em; + $138 = HEAP8[$137>>0]|0; + $139 = $138&255; + $140 = $139 & $136; + $141 = $140&255; + HEAP8[$137>>0] = $141; + $142 = $emlen; + $143 = (($142) - 1)|0; + $144 = $em; + $145 = (($144) + ($143)|0); + HEAP8[$145>>0] = -68; + $146 = $0; + $147 = $em; + $148 = $emlen; + $149 = (__gcry_mpi_scan($146,5,$147,$148,0)|0); + $rc = $149; + $150 = $rc; + $151 = ($150|0)!=(0); + if (!($151)) { + $152 = (__gcry_get_debug_flag(1)|0); + $153 = ($152|0)!=(0); + if ($153) { + $154 = $0; + $155 = HEAP32[$154>>2]|0; + __gcry_log_printmpi(39300,$155); + } + } + } else { + $28 = (_gpg_err_code_from_syserror()|0); + $rc = $28; + } + } while(0); + $156 = $em; + $157 = ($156|0)!=(0|0); + if ($157) { + $158 = $em; + $_vptr = $158; + $159 = $emlen; + $_vlen = $159; + $_vset = 0; + $160 = $_vset; + $161 = $160&255; + $162 = $_vset_long; + $163 = $162; + HEAP32[$163>>2] = $161; + $164 = (($162) + 4)|0; + $165 = $164; + HEAP32[$165>>2] = 0; + while(1) { + $166 = $_vptr; + $167 = $166; + $168 = $167 & 7; + $169 = ($168|0)!=(0); + $170 = $_vlen; + $171 = ($170|0)!=(0); + $172 = $169 ? $171 : 0; + if (!($172)) { + break; + } + $173 = $_vset; + $174 = $_vptr; + HEAP8[$174>>0] = $173; + $175 = $_vptr; + $176 = ((($175)) + 1|0); + $_vptr = $176; + $177 = $_vlen; + $178 = (($177) + -1)|0; + $_vlen = $178; + } + $179 = $_vlen; + $180 = ($179>>>0)<(8); + if (!($180)) { + $181 = $_vset_long; + $182 = $181; + $183 = HEAP32[$182>>2]|0; + $184 = (($181) + 4)|0; + $185 = $184; + $186 = HEAP32[$185>>2]|0; + $187 = (___muldi3(($183|0),($186|0),16843009,16843009)|0); + $188 = tempRet0; + $189 = $_vset_long; + $190 = $189; + HEAP32[$190>>2] = $187; + $191 = (($189) + 4)|0; + $192 = $191; + HEAP32[$192>>2] = $188; + while(1) { + $193 = $_vptr; + $_vptr_long = $193; + $194 = $_vset_long; + $195 = $194; + $196 = HEAP32[$195>>2]|0; + $197 = (($194) + 4)|0; + $198 = $197; + $199 = HEAP32[$198>>2]|0; + $200 = $_vptr_long; + $201 = $200; + $202 = $201; + HEAP32[$202>>2] = $196; + $203 = (($201) + 4)|0; + $204 = $203; + HEAP32[$204>>2] = $199; + $205 = $_vlen; + $206 = (($205) - 8)|0; + $_vlen = $206; + $207 = $_vptr; + $208 = ((($207)) + 8|0); + $_vptr = $208; + $209 = $_vlen; + $210 = ($209>>>0)>=(8); + if (!($210)) { + break; + } + } + } + while(1) { + $211 = $_vlen; + $212 = ($211|0)!=(0); + if (!($212)) { + break; + } + $213 = $_vset; + $214 = $_vptr; + HEAP8[$214>>0] = $213; + $215 = $_vptr; + $216 = ((($215)) + 1|0); + $_vptr = $216; + $217 = $_vlen; + $218 = (($217) + -1)|0; + $_vlen = $218; + } + $219 = $em; + __gcry_free($219); + } + $220 = $buf; + $221 = ($220|0)!=(0|0); + if (!($221)) { + $284 = $rc; + STACKTOP = sp;return ($284|0); + } + $222 = $buf; + $_vptr1 = $222; + $223 = $buflen; + $_vlen2 = $223; + $_vset3 = 0; + $224 = $_vset3; + $225 = $224&255; + $226 = $_vset_long4; + $227 = $226; + HEAP32[$227>>2] = $225; + $228 = (($226) + 4)|0; + $229 = $228; + HEAP32[$229>>2] = 0; + while(1) { + $230 = $_vptr1; + $231 = $230; + $232 = $231 & 7; + $233 = ($232|0)!=(0); + $234 = $_vlen2; + $235 = ($234|0)!=(0); + $236 = $233 ? $235 : 0; + if (!($236)) { + break; + } + $237 = $_vset3; + $238 = $_vptr1; + HEAP8[$238>>0] = $237; + $239 = $_vptr1; + $240 = ((($239)) + 1|0); + $_vptr1 = $240; + $241 = $_vlen2; + $242 = (($241) + -1)|0; + $_vlen2 = $242; + } + $243 = $_vlen2; + $244 = ($243>>>0)<(8); + if (!($244)) { + $245 = $_vset_long4; + $246 = $245; + $247 = HEAP32[$246>>2]|0; + $248 = (($245) + 4)|0; + $249 = $248; + $250 = HEAP32[$249>>2]|0; + $251 = (___muldi3(($247|0),($250|0),16843009,16843009)|0); + $252 = tempRet0; + $253 = $_vset_long4; + $254 = $253; + HEAP32[$254>>2] = $251; + $255 = (($253) + 4)|0; + $256 = $255; + HEAP32[$256>>2] = $252; + while(1) { + $257 = $_vptr1; + $_vptr_long5 = $257; + $258 = $_vset_long4; + $259 = $258; + $260 = HEAP32[$259>>2]|0; + $261 = (($258) + 4)|0; + $262 = $261; + $263 = HEAP32[$262>>2]|0; + $264 = $_vptr_long5; + $265 = $264; + $266 = $265; + HEAP32[$266>>2] = $260; + $267 = (($265) + 4)|0; + $268 = $267; + HEAP32[$268>>2] = $263; + $269 = $_vlen2; + $270 = (($269) - 8)|0; + $_vlen2 = $270; + $271 = $_vptr1; + $272 = ((($271)) + 8|0); + $_vptr1 = $272; + $273 = $_vlen2; + $274 = ($273>>>0)>=(8); + if (!($274)) { + break; + } + } + } + while(1) { + $275 = $_vlen2; + $276 = ($275|0)!=(0); + if (!($276)) { + break; + } + $277 = $_vset3; + $278 = $_vptr1; + HEAP8[$278>>0] = $277; + $279 = $_vptr1; + $280 = ((($279)) + 1|0); + $_vptr1 = $280; + $281 = $_vlen2; + $282 = (($281) + -1)|0; + $_vlen2 = $282; + } + $283 = $buf; + __gcry_free($283); + $284 = $rc; + STACKTOP = sp;return ($284|0); +} +function __gcry_rsa_pss_verify($value,$encoded,$nbits,$algo,$saltlen) { + $value = $value|0; + $encoded = $encoded|0; + $nbits = $nbits|0; + $algo = $algo|0; + $saltlen = $saltlen|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $_vlen = 0, $_vlen2 = 0, $_vptr = 0, $_vptr1 = 0, $_vptr_long = 0, $_vptr_long5 = 0, $_vset = 0, $_vset3 = 0, $_vset_long = 0, $_vset_long4 = 0, $buf = 0; + var $buflen = 0, $dbmask = 0, $em = 0, $emlen = 0, $h = 0, $hlen = 0, $mhash = 0, $n = 0, $p = 0, $rc = 0, $salt = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $em = sp + 76|0; + $_vset_long = sp + 8|0; + $_vset_long4 = sp; + $0 = $value; + $1 = $encoded; + $2 = $nbits; + $3 = $algo; + $4 = $saltlen; + $rc = 0; + HEAP32[$em>>2] = 0; + $5 = $2; + $6 = (($5) + 7)|0; + $7 = (($6>>>0) / 8)&-1; + $emlen = $7; + $buf = 0; + $8 = $3; + $9 = (__gcry_md_get_algo_dlen($8)|0); + $hlen = $9; + $10 = $hlen; + $11 = ($10|0)!=(0); + if (!($11)) { + __gcry_assert_failed(39274,38969,926,39317); + // unreachable; + } + $12 = $hlen; + $13 = (8 + ($12))|0; + $14 = $4; + $15 = (($13) + ($14))|0; + $buflen = $15; + $16 = $buflen; + $17 = $emlen; + $18 = $hlen; + $19 = (($17) - ($18))|0; + $20 = (($19) - 1)|0; + $21 = ($16>>>0)<($20>>>0); + if ($21) { + $22 = $emlen; + $23 = $hlen; + $24 = (($22) - ($23))|0; + $25 = (($24) - 1)|0; + $buflen = $25; + } + $26 = $hlen; + $27 = $buflen; + $28 = (($27) + ($26))|0; + $buflen = $28; + $29 = $buflen; + $30 = (__gcry_malloc($29)|0); + $buf = $30; + $31 = $buf; + $32 = ($31|0)!=(0|0); + do { + if ($32) { + $34 = $buf; + $dbmask = $34; + $35 = $buf; + $36 = $buflen; + $37 = (($35) + ($36)|0); + $38 = $hlen; + $39 = (0 - ($38))|0; + $40 = (($37) + ($39)|0); + $mhash = $40; + $41 = $mhash; + $42 = $0; + $43 = $hlen; + $44 = (_octet_string_from_mpi(0,$41,$42,$43)|0); + $rc = $44; + $45 = $rc; + $46 = ($45|0)!=(0); + if (!($46)) { + $47 = $1; + $48 = $emlen; + $49 = (_octet_string_from_mpi($em,0,$47,$48)|0); + $rc = $49; + $50 = $rc; + $51 = ($50|0)!=(0); + if (!($51)) { + $52 = $emlen; + $53 = $hlen; + $54 = $4; + $55 = (($53) + ($54))|0; + $56 = (($55) + 2)|0; + $57 = ($52>>>0)<($56>>>0); + if ($57) { + $rc = 66; + break; + } + $58 = $emlen; + $59 = (($58) - 1)|0; + $60 = HEAP32[$em>>2]|0; + $61 = (($60) + ($59)|0); + $62 = HEAP8[$61>>0]|0; + $63 = $62&255; + $64 = ($63|0)!=(188); + if ($64) { + $rc = 8; + break; + } + $65 = HEAP32[$em>>2]|0; + $66 = $emlen; + $67 = (($65) + ($66)|0); + $68 = ((($67)) + -1|0); + $69 = $hlen; + $70 = (0 - ($69))|0; + $71 = (($68) + ($70)|0); + $h = $71; + $72 = HEAP32[$em>>2]|0; + $73 = HEAP8[$72>>0]|0; + $74 = $73&255; + $75 = $emlen; + $76 = $75<<3; + $77 = $2; + $78 = (($76) - ($77))|0; + $79 = 255 >> $78; + $80 = $79 ^ -1; + $81 = $74 & $80; + $82 = ($81|0)!=(0); + if ($82) { + $rc = 8; + break; + } + $83 = $dbmask; + $84 = $emlen; + $85 = $hlen; + $86 = (($84) - ($85))|0; + $87 = (($86) - 1)|0; + $88 = $h; + $89 = $hlen; + $90 = $3; + (_mgf1($83,$87,$88,$89,$90)|0); + $n = 0; + $91 = $dbmask; + $p = $91; + while(1) { + $92 = $n; + $93 = $emlen; + $94 = $hlen; + $95 = (($93) - ($94))|0; + $96 = (($95) - 1)|0; + $97 = ($92>>>0)<($96>>>0); + if (!($97)) { + break; + } + $98 = $p; + $99 = HEAP8[$98>>0]|0; + $100 = $99&255; + $101 = $n; + $102 = HEAP32[$em>>2]|0; + $103 = (($102) + ($101)|0); + $104 = HEAP8[$103>>0]|0; + $105 = $104&255; + $106 = $105 ^ $100; + $107 = $106&255; + HEAP8[$103>>0] = $107; + $108 = $n; + $109 = (($108) + 1)|0; + $n = $109; + $110 = $p; + $111 = ((($110)) + 1|0); + $p = $111; + } + $112 = $emlen; + $113 = $112<<3; + $114 = $2; + $115 = (($113) - ($114))|0; + $116 = 255 >> $115; + $117 = HEAP32[$em>>2]|0; + $118 = HEAP8[$117>>0]|0; + $119 = $118&255; + $120 = $119 & $116; + $121 = $120&255; + HEAP8[$117>>0] = $121; + $n = 0; + while(1) { + $122 = $n; + $123 = $emlen; + $124 = $hlen; + $125 = (($123) - ($124))|0; + $126 = $4; + $127 = (($125) - ($126))|0; + $128 = (($127) - 2)|0; + $129 = ($122>>>0)<($128>>>0); + if (!($129)) { + break; + } + $130 = $n; + $131 = HEAP32[$em>>2]|0; + $132 = (($131) + ($130)|0); + $133 = HEAP8[$132>>0]|0; + $134 = ($133<<24>>24)!=(0); + $135 = $134 ^ 1; + if (!($135)) { + break; + } + $136 = $n; + $137 = (($136) + 1)|0; + $n = $137; + } + $138 = $n; + $139 = $emlen; + $140 = $hlen; + $141 = (($139) - ($140))|0; + $142 = $4; + $143 = (($141) - ($142))|0; + $144 = (($143) - 2)|0; + $145 = ($138|0)!=($144|0); + if (!($145)) { + $146 = $n; + $147 = (($146) + 1)|0; + $n = $147; + $148 = HEAP32[$em>>2]|0; + $149 = (($148) + ($146)|0); + $150 = HEAP8[$149>>0]|0; + $151 = $150&255; + $152 = ($151|0)!=(1); + if (!($152)) { + $153 = HEAP32[$em>>2]|0; + $154 = $n; + $155 = (($153) + ($154)|0); + $salt = $155; + $156 = $buf; + ;HEAP8[$156>>0]=0|0;HEAP8[$156+1>>0]=0|0;HEAP8[$156+2>>0]=0|0;HEAP8[$156+3>>0]=0|0;HEAP8[$156+4>>0]=0|0;HEAP8[$156+5>>0]=0|0;HEAP8[$156+6>>0]=0|0;HEAP8[$156+7>>0]=0|0; + $157 = $buf; + $158 = ((($157)) + 8|0); + $159 = $mhash; + $160 = $hlen; + _memcpy(($158|0),($159|0),($160|0))|0; + $161 = $buf; + $162 = ((($161)) + 8|0); + $163 = $hlen; + $164 = (($162) + ($163)|0); + $165 = $salt; + $166 = $4; + _memcpy(($164|0),($165|0),($166|0))|0; + $167 = $3; + $168 = $buf; + $169 = $buf; + $170 = $hlen; + $171 = (8 + ($170))|0; + $172 = $4; + $173 = (($171) + ($172))|0; + __gcry_md_hash_buffer($167,$168,$169,$173); + $174 = $h; + $175 = $buf; + $176 = $hlen; + $177 = (_memcmp($174,$175,$176)|0); + $178 = ($177|0)!=(0); + $179 = $178 ? 8 : 0; + $rc = $179; + break; + } + } + $rc = 8; + } + } + } else { + $33 = (_gpg_err_code_from_syserror()|0); + $rc = $33; + } + } while(0); + $180 = HEAP32[$em>>2]|0; + $181 = ($180|0)!=(0|0); + if ($181) { + $182 = HEAP32[$em>>2]|0; + $_vptr = $182; + $183 = $emlen; + $_vlen = $183; + $_vset = 0; + $184 = $_vset; + $185 = $184&255; + $186 = $_vset_long; + $187 = $186; + HEAP32[$187>>2] = $185; + $188 = (($186) + 4)|0; + $189 = $188; + HEAP32[$189>>2] = 0; + while(1) { + $190 = $_vptr; + $191 = $190; + $192 = $191 & 7; + $193 = ($192|0)!=(0); + $194 = $_vlen; + $195 = ($194|0)!=(0); + $196 = $193 ? $195 : 0; + if (!($196)) { + break; + } + $197 = $_vset; + $198 = $_vptr; + HEAP8[$198>>0] = $197; + $199 = $_vptr; + $200 = ((($199)) + 1|0); + $_vptr = $200; + $201 = $_vlen; + $202 = (($201) + -1)|0; + $_vlen = $202; + } + $203 = $_vlen; + $204 = ($203>>>0)<(8); + if (!($204)) { + $205 = $_vset_long; + $206 = $205; + $207 = HEAP32[$206>>2]|0; + $208 = (($205) + 4)|0; + $209 = $208; + $210 = HEAP32[$209>>2]|0; + $211 = (___muldi3(($207|0),($210|0),16843009,16843009)|0); + $212 = tempRet0; + $213 = $_vset_long; + $214 = $213; + HEAP32[$214>>2] = $211; + $215 = (($213) + 4)|0; + $216 = $215; + HEAP32[$216>>2] = $212; + while(1) { + $217 = $_vptr; + $_vptr_long = $217; + $218 = $_vset_long; + $219 = $218; + $220 = HEAP32[$219>>2]|0; + $221 = (($218) + 4)|0; + $222 = $221; + $223 = HEAP32[$222>>2]|0; + $224 = $_vptr_long; + $225 = $224; + $226 = $225; + HEAP32[$226>>2] = $220; + $227 = (($225) + 4)|0; + $228 = $227; + HEAP32[$228>>2] = $223; + $229 = $_vlen; + $230 = (($229) - 8)|0; + $_vlen = $230; + $231 = $_vptr; + $232 = ((($231)) + 8|0); + $_vptr = $232; + $233 = $_vlen; + $234 = ($233>>>0)>=(8); + if (!($234)) { + break; + } + } + } + while(1) { + $235 = $_vlen; + $236 = ($235|0)!=(0); + if (!($236)) { + break; + } + $237 = $_vset; + $238 = $_vptr; + HEAP8[$238>>0] = $237; + $239 = $_vptr; + $240 = ((($239)) + 1|0); + $_vptr = $240; + $241 = $_vlen; + $242 = (($241) + -1)|0; + $_vlen = $242; + } + $243 = HEAP32[$em>>2]|0; + __gcry_free($243); + } + $244 = $buf; + $245 = ($244|0)!=(0|0); + if (!($245)) { + $308 = $rc; + STACKTOP = sp;return ($308|0); + } + $246 = $buf; + $_vptr1 = $246; + $247 = $buflen; + $_vlen2 = $247; + $_vset3 = 0; + $248 = $_vset3; + $249 = $248&255; + $250 = $_vset_long4; + $251 = $250; + HEAP32[$251>>2] = $249; + $252 = (($250) + 4)|0; + $253 = $252; + HEAP32[$253>>2] = 0; + while(1) { + $254 = $_vptr1; + $255 = $254; + $256 = $255 & 7; + $257 = ($256|0)!=(0); + $258 = $_vlen2; + $259 = ($258|0)!=(0); + $260 = $257 ? $259 : 0; + if (!($260)) { + break; + } + $261 = $_vset3; + $262 = $_vptr1; + HEAP8[$262>>0] = $261; + $263 = $_vptr1; + $264 = ((($263)) + 1|0); + $_vptr1 = $264; + $265 = $_vlen2; + $266 = (($265) + -1)|0; + $_vlen2 = $266; + } + $267 = $_vlen2; + $268 = ($267>>>0)<(8); + if (!($268)) { + $269 = $_vset_long4; + $270 = $269; + $271 = HEAP32[$270>>2]|0; + $272 = (($269) + 4)|0; + $273 = $272; + $274 = HEAP32[$273>>2]|0; + $275 = (___muldi3(($271|0),($274|0),16843009,16843009)|0); + $276 = tempRet0; + $277 = $_vset_long4; + $278 = $277; + HEAP32[$278>>2] = $275; + $279 = (($277) + 4)|0; + $280 = $279; + HEAP32[$280>>2] = $276; + while(1) { + $281 = $_vptr1; + $_vptr_long5 = $281; + $282 = $_vset_long4; + $283 = $282; + $284 = HEAP32[$283>>2]|0; + $285 = (($282) + 4)|0; + $286 = $285; + $287 = HEAP32[$286>>2]|0; + $288 = $_vptr_long5; + $289 = $288; + $290 = $289; + HEAP32[$290>>2] = $284; + $291 = (($289) + 4)|0; + $292 = $291; + HEAP32[$292>>2] = $287; + $293 = $_vlen2; + $294 = (($293) - 8)|0; + $_vlen2 = $294; + $295 = $_vptr1; + $296 = ((($295)) + 8|0); + $_vptr1 = $296; + $297 = $_vlen2; + $298 = ($297>>>0)>=(8); + if (!($298)) { + break; + } + } + } + while(1) { + $299 = $_vlen2; + $300 = ($299|0)!=(0); + if (!($300)) { + break; + } + $301 = $_vset3; + $302 = $_vptr1; + HEAP8[$302>>0] = $301; + $303 = $_vptr1; + $304 = ((($303)) + 1|0); + $_vptr1 = $304; + $305 = $_vlen2; + $306 = (($305) + -1)|0; + $_vlen2 = $306; + } + $307 = $buf; + __gcry_free($307); + $308 = $rc; + STACKTOP = sp;return ($308|0); +} +function _rsa_generate($genparms,$r_skey) { + $genparms = $genparms|0; + $r_skey = $r_skey|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $deriveparms = 0, $ec = 0, $evalue = 0, $flags = 0, $l1 = 0, $nbits = 0, $or$cond = 0, $sk = 0, $swap_info = 0, $swapped = 0, $vararg_buffer = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0; + var $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $nbits = sp + 84|0; + $evalue = sp + 80|0; + $sk = sp + 56|0; + $flags = sp + 48|0; + $swap_info = sp + 40|0; + $swapped = sp + 36|0; + $1 = $genparms; + $2 = $r_skey; + HEAP32[$flags>>2] = 0; + HEAP32[$swap_info>>2] = 0; + ;HEAP32[$sk>>2]=0|0;HEAP32[$sk+4>>2]=0|0;HEAP32[$sk+8>>2]=0|0;HEAP32[$sk+12>>2]=0|0;HEAP32[$sk+16>>2]=0|0;HEAP32[$sk+20>>2]=0|0; + $3 = $1; + $4 = (__gcry_pk_util_get_nbits($3,$nbits)|0); + $ec = $4; + $5 = $ec; + $6 = ($5|0)!=(0); + if ($6) { + $7 = $ec; + $0 = $7; + $105 = $0; + STACKTOP = sp;return ($105|0); + } + $8 = $1; + $9 = (__gcry_pk_util_get_rsa_use_e($8,$evalue)|0); + $ec = $9; + $10 = $ec; + $11 = ($10|0)!=(0); + if ($11) { + $12 = $ec; + $0 = $12; + $105 = $0; + STACKTOP = sp;return ($105|0); + } + $13 = $1; + $14 = (__gcry_sexp_find_token($13,47190,0)|0); + $l1 = $14; + $15 = $l1; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = $l1; + $18 = (__gcry_pk_util_parse_flaglist($17,$flags,0)|0); + $ec = $18; + $19 = $l1; + __gcry_sexp_release($19); + $20 = $ec; + $21 = ($20|0)!=(0); + if ($21) { + $22 = $ec; + $0 = $22; + $105 = $0; + STACKTOP = sp;return ($105|0); + } + } + $23 = $1; + $24 = ($23|0)!=(0|0); + if ($24) { + $25 = $1; + $26 = (__gcry_sexp_find_token($25,39399,0)|0); + $27 = $26; + } else { + $27 = 0; + } + $deriveparms = $27; + $28 = $deriveparms; + $29 = ($28|0)!=(0|0); + if (!($29)) { + $30 = $1; + $31 = (__gcry_sexp_find_token($30,39412,0)|0); + $l1 = $31; + $32 = $l1; + $33 = ($32|0)!=(0|0); + if ($33) { + $34 = HEAP32[$flags>>2]|0; + $35 = $34 | 64; + HEAP32[$flags>>2] = $35; + $36 = $l1; + __gcry_sexp_release($36); + } + } + $37 = $deriveparms; + $38 = ($37|0)!=(0|0); + if ($38) { + label = 16; + } else { + $39 = HEAP32[$flags>>2]|0; + $40 = $39 & 64; + $41 = ($40|0)!=(0); + if ($41) { + label = 16; + } else { + $42 = (__gcry_fips_mode()|0); + $43 = ($42|0)!=(0); + if ($43) { + label = 16; + } else { + $54 = HEAP32[$flags>>2]|0; + $55 = $54 & 32; + $56 = ($55|0)!=(0); + if (!($56)) { + $57 = $1; + $58 = (__gcry_sexp_find_token($57,47196,0)|0); + $l1 = $58; + $59 = $l1; + $60 = ($59|0)!=(0|0); + if ($60) { + $61 = HEAP32[$flags>>2]|0; + $62 = $61 | 32; + HEAP32[$flags>>2] = $62; + $63 = $l1; + __gcry_sexp_release($63); + } + } + $64 = HEAP32[$nbits>>2]|0; + $65 = HEAP32[$evalue>>2]|0; + $66 = HEAP32[$flags>>2]|0; + $67 = $66 & 32; + $68 = ($67|0)!=(0); + $69 = $68 ^ 1; + $70 = $69 ^ 1; + $71 = $70&1; + $72 = (_generate_std($sk,$64,$65,$71)|0); + $ec = $72; + } + } + } + if ((label|0) == 16) { + $44 = HEAP32[$nbits>>2]|0; + $45 = HEAP32[$evalue>>2]|0; + $46 = $deriveparms; + $47 = (_generate_x931($sk,$44,$45,$46,$swapped)|0); + $ec = $47; + $48 = $deriveparms; + __gcry_sexp_release($48); + $49 = $ec; + $50 = ($49|0)==(0); + $51 = HEAP32[$swapped>>2]|0; + $52 = ($51|0)!=(0); + $or$cond = $50 & $52; + if ($or$cond) { + $53 = (__gcry_sexp_new($swap_info,39680,0,1)|0); + $ec = $53; + } + } + $73 = $ec; + $74 = ($73|0)!=(0); + if (!($74)) { + $75 = $2; + $76 = HEAP32[$sk>>2]|0; + $77 = ((($sk)) + 4|0); + $78 = HEAP32[$77>>2]|0; + $79 = HEAP32[$sk>>2]|0; + $80 = ((($sk)) + 4|0); + $81 = HEAP32[$80>>2]|0; + $82 = ((($sk)) + 8|0); + $83 = HEAP32[$82>>2]|0; + $84 = ((($sk)) + 12|0); + $85 = HEAP32[$84>>2]|0; + $86 = ((($sk)) + 16|0); + $87 = HEAP32[$86>>2]|0; + $88 = ((($sk)) + 20|0); + $89 = HEAP32[$88>>2]|0; + $90 = HEAP32[$swap_info>>2]|0; + HEAP32[$vararg_buffer>>2] = $76; + $vararg_ptr2 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr2>>2] = $78; + $vararg_ptr3 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr3>>2] = $79; + $vararg_ptr4 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr4>>2] = $81; + $vararg_ptr5 = ((($vararg_buffer)) + 16|0); + HEAP32[$vararg_ptr5>>2] = $83; + $vararg_ptr6 = ((($vararg_buffer)) + 20|0); + HEAP32[$vararg_ptr6>>2] = $85; + $vararg_ptr7 = ((($vararg_buffer)) + 24|0); + HEAP32[$vararg_ptr7>>2] = $87; + $vararg_ptr8 = ((($vararg_buffer)) + 28|0); + HEAP32[$vararg_ptr8>>2] = $89; + $vararg_ptr9 = ((($vararg_buffer)) + 32|0); + HEAP32[$vararg_ptr9>>2] = $90; + $91 = (__gcry_sexp_build($75,0,39776,$vararg_buffer)|0); + $ec = $91; + } + $92 = HEAP32[$sk>>2]|0; + __gcry_mpi_free($92); + $93 = ((($sk)) + 4|0); + $94 = HEAP32[$93>>2]|0; + __gcry_mpi_free($94); + $95 = ((($sk)) + 12|0); + $96 = HEAP32[$95>>2]|0; + __gcry_mpi_free($96); + $97 = ((($sk)) + 16|0); + $98 = HEAP32[$97>>2]|0; + __gcry_mpi_free($98); + $99 = ((($sk)) + 8|0); + $100 = HEAP32[$99>>2]|0; + __gcry_mpi_free($100); + $101 = ((($sk)) + 20|0); + $102 = HEAP32[$101>>2]|0; + __gcry_mpi_free($102); + $103 = HEAP32[$swap_info>>2]|0; + __gcry_sexp_release($103); + $104 = $ec; + $0 = $104; + $105 = $0; + STACKTOP = sp;return ($105|0); +} +function _generate_x931($sk,$nbits,$e_value,$deriveparms,$swapped) { + $sk = $sk|0; + $nbits = $nbits|0; + $e_value = $e_value|0; + $deriveparms = $deriveparms|0; + $swapped = $swapped|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $d = 0, $e = 0, $f = 0, $g = 0, $idx = 0, $n = 0, $oneparm = 0, $or$cond = 0, $p = 0, $phi = 0, $pm1 = 0, $q = 0, $qm1 = 0, $tbl = 0, $tmpval = 0; + var $u = 0, $vararg_buffer = 0, $xp = 0, $xp1 = 0, $xp2 = 0, $xq = 0, $xq1 = 0, $xq2 = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 176|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $xp1 = sp + 96|0; + $xp2 = sp + 92|0; + $xp = sp + 88|0; + $xq1 = sp + 84|0; + $xq2 = sp + 80|0; + $xq = sp + 76|0; + $tbl = sp + 16|0; + $1 = $sk; + $2 = $nbits; + $3 = $e_value; + $4 = $deriveparms; + $5 = $swapped; + $6 = $5; + HEAP32[$6>>2] = 0; + $7 = $3; + $8 = ($7|0)==(1); + if ($8) { + $3 = 65537; + } + $9 = $2; + $10 = ($9>>>0)<(1024); + if (!($10)) { + $11 = $2; + $12 = (($11>>>0) % 256)&-1; + $13 = ($12|0)!=(0); + if (!($13)) { + $14 = $3; + $15 = ($14>>>0)<(3); + if ($15) { + $0 = 55; + $244 = $0; + STACKTOP = sp;return ($244|0); + } + $16 = $3; + $17 = $16 & 1; + $18 = ($17|0)!=(0); + if (!($18)) { + $0 = 55; + $244 = $0; + STACKTOP = sp;return ($244|0); + } + HEAP32[$xp1>>2] = 0; + HEAP32[$xp2>>2] = 0; + HEAP32[$xp>>2] = 0; + HEAP32[$xq1>>2] = 0; + HEAP32[$xq2>>2] = 0; + HEAP32[$xq>>2] = 0; + $19 = $4; + $20 = ($19|0)!=(0|0); + if ($20) { + dest=$tbl; stop=dest+56|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + HEAP32[$tbl>>2] = 39531; + $45 = ((($tbl)) + 8|0); + HEAP32[$45>>2] = 39535; + $46 = ((($tbl)) + 16|0); + HEAP32[$46>>2] = 39539; + $47 = ((($tbl)) + 24|0); + HEAP32[$47>>2] = 39542; + $48 = ((($tbl)) + 32|0); + HEAP32[$48>>2] = 39546; + $49 = ((($tbl)) + 40|0); + HEAP32[$49>>2] = 39550; + $50 = ((($tbl)) + 4|0); + HEAP32[$50>>2] = $xp1; + $51 = ((($tbl)) + 8|0); + $52 = ((($51)) + 4|0); + HEAP32[$52>>2] = $xp2; + $53 = ((($tbl)) + 16|0); + $54 = ((($53)) + 4|0); + HEAP32[$54>>2] = $xp; + $55 = ((($tbl)) + 24|0); + $56 = ((($55)) + 4|0); + HEAP32[$56>>2] = $xq1; + $57 = ((($tbl)) + 32|0); + $58 = ((($57)) + 4|0); + HEAP32[$58>>2] = $xq2; + $59 = ((($tbl)) + 40|0); + $60 = ((($59)) + 4|0); + HEAP32[$60>>2] = $xq; + $idx = 0; + while(1) { + $61 = $idx; + $62 = (($tbl) + ($61<<3)|0); + $63 = HEAP32[$62>>2]|0; + $64 = ($63|0)!=(0|0); + if (!($64)) { + break; + } + $65 = $4; + $66 = $idx; + $67 = (($tbl) + ($66<<3)|0); + $68 = HEAP32[$67>>2]|0; + $69 = (__gcry_sexp_find_token($65,$68,0)|0); + $oneparm = $69; + $70 = $oneparm; + $71 = ($70|0)!=(0|0); + if ($71) { + $72 = $oneparm; + $73 = (__gcry_sexp_nth_mpi($72,1,5)|0); + $74 = $idx; + $75 = (($tbl) + ($74<<3)|0); + $76 = ((($75)) + 4|0); + $77 = HEAP32[$76>>2]|0; + HEAP32[$77>>2] = $73; + $78 = $oneparm; + __gcry_sexp_release($78); + } + $79 = $idx; + $80 = (($79) + 1)|0; + $idx = $80; + } + $idx = 0; + while(1) { + $81 = $idx; + $82 = (($tbl) + ($81<<3)|0); + $83 = HEAP32[$82>>2]|0; + $84 = ($83|0)!=(0|0); + if (!($84)) { + break; + } + $85 = $idx; + $86 = (($tbl) + ($85<<3)|0); + $87 = ((($86)) + 4|0); + $88 = HEAP32[$87>>2]|0; + $89 = HEAP32[$88>>2]|0; + $90 = ($89|0)!=(0|0); + if (!($90)) { + break; + } + $91 = $idx; + $92 = (($91) + 1)|0; + $idx = $92; + } + $93 = $idx; + $94 = (($tbl) + ($93<<3)|0); + $95 = HEAP32[$94>>2]|0; + $96 = ($95|0)!=(0|0); + if ($96) { + $idx = 0; + while(1) { + $97 = $idx; + $98 = (($tbl) + ($97<<3)|0); + $99 = HEAP32[$98>>2]|0; + $100 = ($99|0)!=(0|0); + if (!($100)) { + break; + } + $101 = $idx; + $102 = (($tbl) + ($101<<3)|0); + $103 = ((($102)) + 4|0); + $104 = HEAP32[$103>>2]|0; + $105 = HEAP32[$104>>2]|0; + __gcry_mpi_release($105); + $106 = $idx; + $107 = (($106) + 1)|0; + $idx = $107; + } + $0 = 128; + $244 = $0; + STACKTOP = sp;return ($244|0); + } + } else { + $21 = $2; + $22 = (($21>>>0) / 2)&-1; + $23 = (_gen_x931_parm_xp($22)|0); + HEAP32[$xp>>2] = $23; + $24 = $2; + $25 = (($24>>>0) / 2)&-1; + $26 = (__gcry_mpi_snew($25)|0); + $tmpval = $26; + while(1) { + $27 = HEAP32[$xq>>2]|0; + __gcry_mpi_release($27); + $28 = $2; + $29 = (($28>>>0) / 2)&-1; + $30 = (_gen_x931_parm_xp($29)|0); + HEAP32[$xq>>2] = $30; + $31 = $tmpval; + $32 = HEAP32[$xp>>2]|0; + $33 = HEAP32[$xq>>2]|0; + __gcry_mpi_sub($31,$32,$33); + $34 = $tmpval; + $35 = (__gcry_mpi_get_nbits($34)|0); + $36 = $2; + $37 = (($36>>>0) / 2)&-1; + $38 = (($37) - 100)|0; + $39 = ($35>>>0)<=($38>>>0); + if (!($39)) { + break; + } + } + $40 = $tmpval; + __gcry_mpi_release($40); + $41 = (_gen_x931_parm_xi()|0); + HEAP32[$xp1>>2] = $41; + $42 = (_gen_x931_parm_xi()|0); + HEAP32[$xp2>>2] = $42; + $43 = (_gen_x931_parm_xi()|0); + HEAP32[$xq1>>2] = $43; + $44 = (_gen_x931_parm_xi()|0); + HEAP32[$xq2>>2] = $44; + } + $108 = $3; + $109 = (__gcry_mpi_alloc_set_ui($108)|0); + $e = $109; + $110 = HEAP32[$xp>>2]|0; + $111 = HEAP32[$xp1>>2]|0; + $112 = HEAP32[$xp2>>2]|0; + $113 = $e; + $114 = (__gcry_derive_x931_prime($110,$111,$112,$113,0,0)|0); + $p = $114; + $115 = HEAP32[$xq>>2]|0; + $116 = HEAP32[$xq1>>2]|0; + $117 = HEAP32[$xq2>>2]|0; + $118 = $e; + $119 = (__gcry_derive_x931_prime($115,$116,$117,$118,0,0)|0); + $q = $119; + $120 = HEAP32[$xp>>2]|0; + __gcry_mpi_release($120); + HEAP32[$xp>>2] = 0; + $121 = HEAP32[$xp1>>2]|0; + __gcry_mpi_release($121); + HEAP32[$xp1>>2] = 0; + $122 = HEAP32[$xp2>>2]|0; + __gcry_mpi_release($122); + HEAP32[$xp2>>2] = 0; + $123 = HEAP32[$xq>>2]|0; + __gcry_mpi_release($123); + HEAP32[$xq>>2] = 0; + $124 = HEAP32[$xq1>>2]|0; + __gcry_mpi_release($124); + HEAP32[$xq1>>2] = 0; + $125 = HEAP32[$xq2>>2]|0; + __gcry_mpi_release($125); + HEAP32[$xq2>>2] = 0; + $126 = $p; + $127 = ($126|0)!=(0|0); + $128 = $q; + $129 = ($128|0)!=(0|0); + $or$cond = $127 & $129; + $130 = $p; + if (!($or$cond)) { + __gcry_mpi_release($130); + $131 = $q; + __gcry_mpi_release($131); + $132 = $e; + __gcry_mpi_release($132); + $0 = 21; + $244 = $0; + STACKTOP = sp;return ($244|0); + } + $133 = $q; + $134 = (__gcry_mpi_cmp($130,$133)|0); + $135 = ($134|0)>(0); + if ($135) { + $136 = $p; + $137 = $q; + __gcry_mpi_swap($136,$137); + $138 = $5; + HEAP32[$138>>2] = 1; + } + $139 = $2; + $140 = (__gcry_mpi_new($139)|0); + $n = $140; + $141 = $n; + $142 = $p; + $143 = $q; + __gcry_mpi_mul($141,$142,$143); + $144 = $2; + $145 = (($144>>>0) / 2)&-1; + $146 = (__gcry_mpi_snew($145)|0); + $pm1 = $146; + $147 = $2; + $148 = (($147>>>0) / 2)&-1; + $149 = (__gcry_mpi_snew($148)|0); + $qm1 = $149; + $150 = $2; + $151 = (__gcry_mpi_snew($150)|0); + $phi = $151; + $152 = $pm1; + $153 = $p; + __gcry_mpi_sub_ui($152,$153,1); + $154 = $qm1; + $155 = $q; + __gcry_mpi_sub_ui($154,$155,1); + $156 = $phi; + $157 = $pm1; + $158 = $qm1; + __gcry_mpi_mul($156,$157,$158); + $159 = $2; + $160 = (__gcry_mpi_snew($159)|0); + $g = $160; + $161 = $g; + $162 = $e; + $163 = $phi; + $164 = (__gcry_mpi_gcd($161,$162,$163)|0); + $165 = ($164|0)!=(0); + if (!($165)) { + __gcry_assert_failed(39553,39457,541,39587); + // unreachable; + } + $166 = $g; + $167 = $pm1; + $168 = $qm1; + (__gcry_mpi_gcd($166,$167,$168)|0); + $169 = $pm1; + $f = $169; + $pm1 = 0; + $170 = $qm1; + __gcry_mpi_release($170); + $qm1 = 0; + $171 = $f; + $172 = $phi; + $173 = $g; + __gcry_mpi_fdiv_q($171,$172,$173); + $174 = $phi; + __gcry_mpi_release($174); + $phi = 0; + $175 = $g; + $d = $175; + $g = 0; + $176 = $d; + $177 = $e; + $178 = $f; + (__gcry_mpi_invm($176,$177,$178)|0); + $179 = $f; + $u = $179; + $f = 0; + $180 = $u; + $181 = $p; + $182 = $q; + (__gcry_mpi_invm($180,$181,$182)|0); + $183 = (__gcry_get_debug_flag(1)|0); + $184 = ($183|0)!=(0); + if ($184) { + $185 = $5; + $186 = HEAP32[$185>>2]|0; + $187 = ($186|0)!=(0); + if ($187) { + __gcry_log_debug(39601,$vararg_buffer); + } + $188 = $p; + __gcry_log_printmpi(45653,$188); + $189 = $q; + __gcry_log_printmpi(39622,$189); + $190 = $n; + __gcry_log_printmpi(39626,$190); + $191 = $e; + __gcry_log_printmpi(39630,$191); + $192 = $d; + __gcry_log_printmpi(39634,$192); + $193 = $u; + __gcry_log_printmpi(39638,$193); + } + $194 = $n; + $195 = $1; + HEAP32[$195>>2] = $194; + $196 = $e; + $197 = $1; + $198 = ((($197)) + 4|0); + HEAP32[$198>>2] = $196; + $199 = $p; + $200 = $1; + $201 = ((($200)) + 12|0); + HEAP32[$201>>2] = $199; + $202 = $q; + $203 = $1; + $204 = ((($203)) + 16|0); + HEAP32[$204>>2] = $202; + $205 = $d; + $206 = $1; + $207 = ((($206)) + 8|0); + HEAP32[$207>>2] = $205; + $208 = $u; + $209 = $1; + $210 = ((($209)) + 20|0); + HEAP32[$210>>2] = $208; + $211 = $1; + $212 = $2; + $213 = (($212) - 64)|0; + $214 = (_test_keys($211,$213)|0); + $215 = ($214|0)!=(0); + if ($215) { + $216 = $1; + $217 = HEAP32[$216>>2]|0; + __gcry_mpi_release($217); + $218 = $1; + HEAP32[$218>>2] = 0; + $219 = $1; + $220 = ((($219)) + 4|0); + $221 = HEAP32[$220>>2]|0; + __gcry_mpi_release($221); + $222 = $1; + $223 = ((($222)) + 4|0); + HEAP32[$223>>2] = 0; + $224 = $1; + $225 = ((($224)) + 12|0); + $226 = HEAP32[$225>>2]|0; + __gcry_mpi_release($226); + $227 = $1; + $228 = ((($227)) + 12|0); + HEAP32[$228>>2] = 0; + $229 = $1; + $230 = ((($229)) + 16|0); + $231 = HEAP32[$230>>2]|0; + __gcry_mpi_release($231); + $232 = $1; + $233 = ((($232)) + 16|0); + HEAP32[$233>>2] = 0; + $234 = $1; + $235 = ((($234)) + 8|0); + $236 = HEAP32[$235>>2]|0; + __gcry_mpi_release($236); + $237 = $1; + $238 = ((($237)) + 8|0); + HEAP32[$238>>2] = 0; + $239 = $1; + $240 = ((($239)) + 20|0); + $241 = HEAP32[$240>>2]|0; + __gcry_mpi_release($241); + $242 = $1; + $243 = ((($242)) + 20|0); + HEAP32[$243>>2] = 0; + __gcry_fips_signal_error(39457,586,39587,0,39642); + $0 = 50; + $244 = $0; + STACKTOP = sp;return ($244|0); + } else { + $0 = 0; + $244 = $0; + STACKTOP = sp;return ($244|0); + } + } + } + $0 = 55; + $244 = $0; + STACKTOP = sp;return ($244|0); +} +function _gen_x931_parm_xp($nbits) { + $nbits = $nbits|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $xp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $nbits; + $1 = $0; + $2 = (__gcry_mpi_snew($1)|0); + $xp = $2; + $3 = $xp; + $4 = $0; + __gcry_mpi_randomize($3,$4,2); + $5 = $xp; + $6 = $0; + $7 = (($6) - 1)|0; + __gcry_mpi_set_highbit($5,$7); + $8 = $xp; + $9 = $0; + $10 = (($9) - 2)|0; + __gcry_mpi_set_bit($8,$10); + $11 = $xp; + $12 = (__gcry_mpi_get_nbits($11)|0); + $13 = $0; + $14 = ($12|0)==($13|0); + if ($14) { + $15 = $xp; + STACKTOP = sp;return ($15|0); + } else { + __gcry_assert_failed(39421,39457,360,39463); + // unreachable; + } + return (0)|0; +} +function _gen_x931_parm_xi() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $xi = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = (__gcry_mpi_snew(101)|0); + $xi = $0; + $1 = $xi; + __gcry_mpi_randomize($1,101,2); + $2 = $xi; + __gcry_mpi_set_highbit($2,100); + $3 = $xi; + $4 = (__gcry_mpi_get_nbits($3)|0); + $5 = ($4|0)==(101); + if ($5) { + $6 = $xi; + STACKTOP = sp;return ($6|0); + } else { + __gcry_assert_failed(39480,39457,375,39514); + // unreachable; + } + return (0)|0; +} +function _test_keys($sk,$nbits) { + $sk = $sk|0; + $nbits = $nbits|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ciphertext = 0, $decr_plaintext = 0, $pk = 0, $plaintext = 0, $result = 0; + var $signature = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $pk = sp + 16|0; + $0 = $sk; + $1 = $nbits; + $result = -1; + $2 = $1; + $3 = (__gcry_mpi_new($2)|0); + $plaintext = $3; + $4 = $1; + $5 = (__gcry_mpi_new($4)|0); + $ciphertext = $5; + $6 = $1; + $7 = (__gcry_mpi_new($6)|0); + $decr_plaintext = $7; + $8 = $1; + $9 = (__gcry_mpi_new($8)|0); + $signature = $9; + $10 = $0; + $11 = HEAP32[$10>>2]|0; + HEAP32[$pk>>2] = $11; + $12 = $0; + $13 = ((($12)) + 4|0); + $14 = HEAP32[$13>>2]|0; + $15 = ((($pk)) + 4|0); + HEAP32[$15>>2] = $14; + $16 = $plaintext; + $17 = $1; + __gcry_mpi_randomize($16,$17,0); + $18 = $ciphertext; + $19 = $plaintext; + _public($18,$19,$pk); + $20 = $ciphertext; + $21 = $plaintext; + $22 = (__gcry_mpi_cmp($20,$21)|0); + $23 = ($22|0)!=(0); + if ($23) { + $24 = $decr_plaintext; + $25 = $ciphertext; + $26 = $0; + _secret($24,$25,$26); + $27 = $decr_plaintext; + $28 = $plaintext; + $29 = (__gcry_mpi_cmp($27,$28)|0); + $30 = ($29|0)!=(0); + if (!($30)) { + $31 = $plaintext; + $32 = $1; + __gcry_mpi_randomize($31,$32,0); + $33 = $signature; + $34 = $plaintext; + $35 = $0; + _secret($33,$34,$35); + $36 = $decr_plaintext; + $37 = $signature; + _public($36,$37,$pk); + $38 = $decr_plaintext; + $39 = $plaintext; + $40 = (__gcry_mpi_cmp($38,$39)|0); + $41 = ($40|0)!=(0); + if (!($41)) { + $42 = $signature; + $43 = $signature; + __gcry_mpi_add_ui($42,$43,1); + $44 = $decr_plaintext; + $45 = $signature; + _public($44,$45,$pk); + $46 = $decr_plaintext; + $47 = $plaintext; + $48 = (__gcry_mpi_cmp($46,$47)|0); + $49 = ($48|0)!=(0); + if ($49) { + $result = 0; + } + } + } + } + $50 = $signature; + __gcry_mpi_release($50); + $51 = $decr_plaintext; + __gcry_mpi_release($51); + $52 = $ciphertext; + __gcry_mpi_release($52); + $53 = $plaintext; + __gcry_mpi_release($53); + $54 = $result; + STACKTOP = sp;return ($54|0); +} +function _public($output,$input,$pkey) { + $output = $output|0; + $input = $input|0; + $pkey = $pkey|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $output; + $1 = $input; + $2 = $pkey; + $3 = $0; + $4 = $1; + $5 = ($3|0)==($4|0); + if ($5) { + $6 = $1; + $7 = ((($6)) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = $8<<1; + $10 = (__gcry_mpi_alloc($9)|0); + $x = $10; + $11 = $x; + $12 = $1; + $13 = $2; + $14 = ((($13)) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = $2; + $17 = HEAP32[$16>>2]|0; + __gcry_mpi_powm($11,$12,$15,$17); + $18 = $0; + $19 = $x; + (__gcry_mpi_set($18,$19)|0); + $20 = $x; + __gcry_mpi_free($20); + STACKTOP = sp;return; + } else { + $21 = $0; + $22 = $1; + $23 = $2; + $24 = ((($23)) + 4|0); + $25 = HEAP32[$24>>2]|0; + $26 = $2; + $27 = HEAP32[$26>>2]|0; + __gcry_mpi_powm($21,$22,$25,$27); + STACKTOP = sp;return; + } +} +function _secret($output,$input,$skey) { + $output = $output|0; + $input = $input|0; + $skey = $skey|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $h = 0, $m1 = 0, $m2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $output; + $1 = $input; + $2 = $skey; + $3 = $1; + __gcry_mpi_normalize($3); + $4 = $2; + $5 = ((($4)) + 12|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = $2; + $9 = ((($8)) + 16|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = $2; + $13 = ((($12)) + 20|0); + $14 = HEAP32[$13>>2]|0; + $15 = ($14|0)!=(0|0); + if ($15) { + $23 = $2; + $24 = HEAP32[$23>>2]|0; + $25 = ((($24)) + 4|0); + $26 = HEAP32[$25>>2]|0; + $27 = (($26) + 1)|0; + $28 = (__gcry_mpi_alloc_secure($27)|0); + $m1 = $28; + $29 = $2; + $30 = HEAP32[$29>>2]|0; + $31 = ((($30)) + 4|0); + $32 = HEAP32[$31>>2]|0; + $33 = (($32) + 1)|0; + $34 = (__gcry_mpi_alloc_secure($33)|0); + $m2 = $34; + $35 = $2; + $36 = HEAP32[$35>>2]|0; + $37 = ((($36)) + 4|0); + $38 = HEAP32[$37>>2]|0; + $39 = (($38) + 1)|0; + $40 = (__gcry_mpi_alloc_secure($39)|0); + $h = $40; + $41 = $h; + $42 = $2; + $43 = ((($42)) + 12|0); + $44 = HEAP32[$43>>2]|0; + __gcry_mpi_sub_ui($41,$44,1); + $45 = $h; + $46 = $2; + $47 = ((($46)) + 8|0); + $48 = HEAP32[$47>>2]|0; + $49 = $h; + __gcry_mpi_fdiv_r($45,$48,$49); + $50 = $m1; + $51 = $1; + $52 = $h; + $53 = $2; + $54 = ((($53)) + 12|0); + $55 = HEAP32[$54>>2]|0; + __gcry_mpi_powm($50,$51,$52,$55); + $56 = $h; + $57 = $2; + $58 = ((($57)) + 16|0); + $59 = HEAP32[$58>>2]|0; + __gcry_mpi_sub_ui($56,$59,1); + $60 = $h; + $61 = $2; + $62 = ((($61)) + 8|0); + $63 = HEAP32[$62>>2]|0; + $64 = $h; + __gcry_mpi_fdiv_r($60,$63,$64); + $65 = $m2; + $66 = $1; + $67 = $h; + $68 = $2; + $69 = ((($68)) + 16|0); + $70 = HEAP32[$69>>2]|0; + __gcry_mpi_powm($65,$66,$67,$70); + $71 = $h; + $72 = $m2; + $73 = $m1; + __gcry_mpi_sub($71,$72,$73); + $74 = $h; + $75 = ((($74)) + 8|0); + $76 = HEAP32[$75>>2]|0; + $77 = ($76|0)!=(0); + if ($77) { + $78 = $h; + $79 = $h; + $80 = $2; + $81 = ((($80)) + 16|0); + $82 = HEAP32[$81>>2]|0; + __gcry_mpi_add($78,$79,$82); + } + $83 = $h; + $84 = $2; + $85 = ((($84)) + 20|0); + $86 = HEAP32[$85>>2]|0; + $87 = $h; + $88 = $2; + $89 = ((($88)) + 16|0); + $90 = HEAP32[$89>>2]|0; + __gcry_mpi_mulm($83,$86,$87,$90); + $91 = $h; + $92 = $h; + $93 = $2; + $94 = ((($93)) + 12|0); + $95 = HEAP32[$94>>2]|0; + __gcry_mpi_mul($91,$92,$95); + $96 = $0; + $97 = $m1; + $98 = $h; + __gcry_mpi_add($96,$97,$98); + $99 = $h; + __gcry_mpi_free($99); + $100 = $m1; + __gcry_mpi_free($100); + $101 = $m2; + __gcry_mpi_free($101); + STACKTOP = sp;return; + } + } + } + $16 = $0; + $17 = $1; + $18 = $2; + $19 = ((($18)) + 8|0); + $20 = HEAP32[$19>>2]|0; + $21 = $2; + $22 = HEAP32[$21>>2]|0; + __gcry_mpi_powm($16,$17,$20,$22); + STACKTOP = sp;return; +} +function _generate_std($sk,$nbits,$use_e,$transient_key) { + $sk = $sk|0; + $nbits = $nbits|0; + $use_e = $use_e|0; + $transient_key = $transient_key|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $d = 0, $e = 0, $f = 0, $g = 0, $n = 0, $p = 0, $phi = 0, $q = 0, $random_level = 0, $t1 = 0, $t2 = 0, $u = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $sk; + $2 = $nbits; + $3 = $use_e; + $4 = $transient_key; + $5 = (__gcry_fips_mode()|0); + $6 = ($5|0)!=(0); + if ($6) { + $7 = $2; + $8 = ($7>>>0)<(1024); + if ($8) { + $0 = 55; + $180 = $0; + STACKTOP = sp;return ($180|0); + } + $9 = $4; + $10 = ($9|0)!=(0); + if ($10) { + $0 = 55; + $180 = $0; + STACKTOP = sp;return ($180|0); + } + } + $11 = $4; + $12 = ($11|0)!=(0); + $13 = $12 ? 1 : 2; + $random_level = $13; + $14 = $2; + $15 = $14 & 1; + $16 = ($15|0)!=(0); + if ($16) { + $17 = $2; + $18 = (($17) + 1)|0; + $2 = $18; + } + $19 = $3; + $20 = ($19|0)==(1); + if ($20) { + $3 = 65537; + } + $21 = (__gcry_mpi_alloc(1)|0); + $e = $21; + $22 = $3; + $23 = ($22|0)!=(0); + if ($23) { + $25 = $3; + $26 = $25 | 1; + $3 = $26; + $27 = $e; + $28 = $3; + (__gcry_mpi_set_ui($27,$28)|0); + } else { + $24 = $e; + (__gcry_mpi_set_ui($24,41)|0); + } + $29 = $2; + $30 = (__gcry_mpi_new($29)|0); + $n = $30; + $q = 0; + $p = 0; + while(1) { + $31 = $p; + $32 = ($31|0)!=(0|0); + if ($32) { + $33 = $p; + __gcry_mpi_release($33); + } + $34 = $q; + $35 = ($34|0)!=(0|0); + if ($35) { + $36 = $q; + __gcry_mpi_release($36); + } + $37 = $3; + $38 = ($37|0)!=(0); + $39 = $2; + $40 = (($39>>>0) / 2)&-1; + $41 = $random_level; + if ($38) { + $42 = $e; + $43 = (__gcry_generate_secret_prime($40,$41,73,$42)|0); + $p = $43; + $44 = $2; + $45 = (($44>>>0) / 2)&-1; + $46 = $random_level; + $47 = $e; + $48 = (__gcry_generate_secret_prime($45,$46,73,$47)|0); + $q = $48; + } else { + $49 = (__gcry_generate_secret_prime($40,$41,0,0)|0); + $p = $49; + $50 = $2; + $51 = (($50>>>0) / 2)&-1; + $52 = $random_level; + $53 = (__gcry_generate_secret_prime($51,$52,0,0)|0); + $q = $53; + } + $54 = $p; + $55 = $q; + $56 = (__gcry_mpi_cmp($54,$55)|0); + $57 = ($56|0)>(0); + if ($57) { + $58 = $p; + $59 = $q; + __gcry_mpi_swap($58,$59); + } + $60 = $n; + $61 = $p; + $62 = $q; + __gcry_mpi_mul($60,$61,$62); + $63 = $n; + $64 = (__gcry_mpi_get_nbits($63)|0); + $65 = $2; + $66 = ($64|0)!=($65|0); + if (!($66)) { + break; + } + } + $67 = $p; + $68 = ((($67)) + 4|0); + $69 = HEAP32[$68>>2]|0; + $70 = (__gcry_mpi_alloc_secure($69)|0); + $t1 = $70; + $71 = $p; + $72 = ((($71)) + 4|0); + $73 = HEAP32[$72>>2]|0; + $74 = (__gcry_mpi_alloc_secure($73)|0); + $t2 = $74; + $75 = $2; + $76 = (__gcry_mpi_snew($75)|0); + $phi = $76; + $77 = $2; + $78 = (__gcry_mpi_snew($77)|0); + $g = $78; + $79 = $2; + $80 = (__gcry_mpi_snew($79)|0); + $f = $80; + $81 = $t1; + $82 = $p; + __gcry_mpi_sub_ui($81,$82,1); + $83 = $t2; + $84 = $q; + __gcry_mpi_sub_ui($83,$84,1); + $85 = $phi; + $86 = $t1; + $87 = $t2; + __gcry_mpi_mul($85,$86,$87); + $88 = $g; + $89 = $t1; + $90 = $t2; + (__gcry_mpi_gcd($88,$89,$90)|0); + $91 = $f; + $92 = $phi; + $93 = $g; + __gcry_mpi_fdiv_q($91,$92,$93); + while(1) { + $94 = $t1; + $95 = $e; + $96 = $phi; + $97 = (__gcry_mpi_gcd($94,$95,$96)|0); + $98 = ($97|0)!=(0); + $99 = $98 ^ 1; + if (!($99)) { + break; + } + $100 = $3; + $101 = ($100|0)!=(0); + if ($101) { + label = 27; + break; + } + $102 = $e; + $103 = $e; + __gcry_mpi_add_ui($102,$103,2); + } + if ((label|0) == 27) { + __gcry_bug(39457,287,39709); + // unreachable; + } + $104 = $2; + $105 = (__gcry_mpi_snew($104)|0); + $d = $105; + $106 = $d; + $107 = $e; + $108 = $f; + (__gcry_mpi_invm($106,$107,$108)|0); + $109 = $2; + $110 = (__gcry_mpi_snew($109)|0); + $u = $110; + $111 = $u; + $112 = $p; + $113 = $q; + (__gcry_mpi_invm($111,$112,$113)|0); + $114 = (__gcry_get_debug_flag(1)|0); + $115 = ($114|0)!=(0); + if ($115) { + $116 = $p; + __gcry_log_printmpi(39722,$116); + $117 = $q; + __gcry_log_printmpi(39728,$117); + $118 = $phi; + __gcry_log_printmpi(39734,$118); + $119 = $g; + __gcry_log_printmpi(39740,$119); + $120 = $f; + __gcry_log_printmpi(39746,$120); + $121 = $n; + __gcry_log_printmpi(39752,$121); + $122 = $e; + __gcry_log_printmpi(39758,$122); + $123 = $d; + __gcry_log_printmpi(39764,$123); + $124 = $u; + __gcry_log_printmpi(39770,$124); + } + $125 = $t1; + __gcry_mpi_release($125); + $126 = $t2; + __gcry_mpi_release($126); + $127 = $phi; + __gcry_mpi_release($127); + $128 = $f; + __gcry_mpi_release($128); + $129 = $g; + __gcry_mpi_release($129); + $130 = $n; + $131 = $1; + HEAP32[$131>>2] = $130; + $132 = $e; + $133 = $1; + $134 = ((($133)) + 4|0); + HEAP32[$134>>2] = $132; + $135 = $p; + $136 = $1; + $137 = ((($136)) + 12|0); + HEAP32[$137>>2] = $135; + $138 = $q; + $139 = $1; + $140 = ((($139)) + 16|0); + HEAP32[$140>>2] = $138; + $141 = $d; + $142 = $1; + $143 = ((($142)) + 8|0); + HEAP32[$143>>2] = $141; + $144 = $u; + $145 = $1; + $146 = ((($145)) + 20|0); + HEAP32[$146>>2] = $144; + $147 = $1; + $148 = $2; + $149 = (($148) - 64)|0; + $150 = (_test_keys($147,$149)|0); + $151 = ($150|0)!=(0); + if ($151) { + $152 = $1; + $153 = HEAP32[$152>>2]|0; + __gcry_mpi_release($153); + $154 = $1; + HEAP32[$154>>2] = 0; + $155 = $1; + $156 = ((($155)) + 4|0); + $157 = HEAP32[$156>>2]|0; + __gcry_mpi_release($157); + $158 = $1; + $159 = ((($158)) + 4|0); + HEAP32[$159>>2] = 0; + $160 = $1; + $161 = ((($160)) + 12|0); + $162 = HEAP32[$161>>2]|0; + __gcry_mpi_release($162); + $163 = $1; + $164 = ((($163)) + 12|0); + HEAP32[$164>>2] = 0; + $165 = $1; + $166 = ((($165)) + 16|0); + $167 = HEAP32[$166>>2]|0; + __gcry_mpi_release($167); + $168 = $1; + $169 = ((($168)) + 16|0); + HEAP32[$169>>2] = 0; + $170 = $1; + $171 = ((($170)) + 8|0); + $172 = HEAP32[$171>>2]|0; + __gcry_mpi_release($172); + $173 = $1; + $174 = ((($173)) + 8|0); + HEAP32[$174>>2] = 0; + $175 = $1; + $176 = ((($175)) + 20|0); + $177 = HEAP32[$176>>2]|0; + __gcry_mpi_release($177); + $178 = $1; + $179 = ((($178)) + 20|0); + HEAP32[$179>>2] = 0; + __gcry_fips_signal_error(39457,334,39709,0,39642); + $0 = 50; + $180 = $0; + STACKTOP = sp;return ($180|0); + } else { + $0 = 0; + $180 = $0; + STACKTOP = sp;return ($180|0); + } + return (0)|0; +} +function _check_exponent($arg,$a) { + $arg = $arg|0; + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $e = 0, $result = 0; + var $tmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $arg; + $1 = $a; + $2 = $0; + $e = $2; + $3 = $1; + $4 = $1; + __gcry_mpi_sub_ui($3,$4,1); + $5 = $1; + $6 = (__gcry_mpi_alloc_like($5)|0); + $tmp = $6; + $7 = $tmp; + $8 = $e; + $9 = $1; + $10 = (__gcry_mpi_gcd($7,$8,$9)|0); + $11 = ($10|0)!=(0); + $12 = $11 ^ 1; + $13 = $12&1; + $result = $13; + $14 = $tmp; + __gcry_mpi_release($14); + $15 = $1; + $16 = $1; + __gcry_mpi_add_ui($15,$16,1); + $17 = $result; + STACKTOP = sp;return ($17|0); +} +function _rsa_check_secret_key($keyparms) { + $keyparms = $keyparms|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $sk = 0, $vararg_buffer = 0, $vararg_buffer7 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer7 = sp + 32|0; + $vararg_buffer = sp; + $sk = sp + 40|0; + $0 = $keyparms; + ;HEAP32[$sk>>2]=0|0;HEAP32[$sk+4>>2]=0|0;HEAP32[$sk+8>>2]=0|0;HEAP32[$sk+12>>2]=0|0;HEAP32[$sk+16>>2]=0|0;HEAP32[$sk+20>>2]=0|0; + $1 = $0; + $2 = ((($sk)) + 4|0); + $3 = ((($sk)) + 8|0); + $4 = ((($sk)) + 12|0); + $5 = ((($sk)) + 16|0); + $6 = ((($sk)) + 20|0); + HEAP32[$vararg_buffer>>2] = $sk; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $2; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $3; + $vararg_ptr3 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr3>>2] = $4; + $vararg_ptr4 = ((($vararg_buffer)) + 16|0); + HEAP32[$vararg_ptr4>>2] = $5; + $vararg_ptr5 = ((($vararg_buffer)) + 20|0); + HEAP32[$vararg_ptr5>>2] = $6; + $vararg_ptr6 = ((($vararg_buffer)) + 24|0); + HEAP32[$vararg_ptr6>>2] = 0; + $7 = (__gcry_sexp_extract_param($1,0,39386,$vararg_buffer)|0); + $rc = $7; + $8 = $rc; + $9 = ($8|0)!=(0); + if (!($9)) { + $10 = (_check_secret_key($sk)|0); + $11 = ($10|0)!=(0); + if (!($11)) { + $rc = 7; + } + } + $12 = HEAP32[$sk>>2]|0; + __gcry_mpi_release($12); + $13 = ((($sk)) + 4|0); + $14 = HEAP32[$13>>2]|0; + __gcry_mpi_release($14); + $15 = ((($sk)) + 8|0); + $16 = HEAP32[$15>>2]|0; + __gcry_mpi_release($16); + $17 = ((($sk)) + 12|0); + $18 = HEAP32[$17>>2]|0; + __gcry_mpi_release($18); + $19 = ((($sk)) + 16|0); + $20 = HEAP32[$19>>2]|0; + __gcry_mpi_release($20); + $21 = ((($sk)) + 20|0); + $22 = HEAP32[$21>>2]|0; + __gcry_mpi_release($22); + $23 = (__gcry_get_debug_flag(1)|0); + $24 = ($23|0)!=(0); + if (!($24)) { + $27 = $rc; + STACKTOP = sp;return ($27|0); + } + $25 = $rc; + $26 = (_gpg_strerror($25)|0); + HEAP32[$vararg_buffer7>>2] = $26; + __gcry_log_debug(39871,$vararg_buffer7); + $27 = $rc; + STACKTOP = sp;return ($27|0); +} +function _check_secret_key($sk) { + $sk = $sk|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $temp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $sk; + $1 = $0; + $2 = ((($1)) + 12|0); + $3 = HEAP32[$2>>2]|0; + $4 = ((($3)) + 4|0); + $5 = HEAP32[$4>>2]|0; + $6 = $5<<1; + $7 = (__gcry_mpi_alloc($6)|0); + $temp = $7; + $8 = $temp; + $9 = $0; + $10 = ((($9)) + 12|0); + $11 = HEAP32[$10>>2]|0; + $12 = $0; + $13 = ((($12)) + 16|0); + $14 = HEAP32[$13>>2]|0; + __gcry_mpi_mul($8,$11,$14); + $15 = $temp; + $16 = $0; + $17 = HEAP32[$16>>2]|0; + $18 = (__gcry_mpi_cmp($15,$17)|0); + $rc = $18; + $19 = $temp; + __gcry_mpi_free($19); + $20 = $rc; + $21 = ($20|0)!=(0); + $22 = $21 ^ 1; + $23 = $22&1; + STACKTOP = sp;return ($23|0); +} +function _rsa_encrypt($r_ciph,$s_data,$keyparms) { + $r_ciph = $r_ciph|0; + $s_data = $s_data|0; + $keyparms = $keyparms|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $7 = 0, $8 = 0, $9 = 0, $ciph = 0, $ctx = 0, $data = 0, $em = 0, $emlen = 0, $pk = 0, $rc = 0, $vararg_buffer = 0, $vararg_buffer10 = 0, $vararg_buffer3 = 0, $vararg_buffer7 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr6 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer10 = sp + 32|0; + $vararg_buffer7 = sp + 24|0; + $vararg_buffer3 = sp + 16|0; + $vararg_buffer = sp; + $ctx = sp + 64|0; + $data = sp + 56|0; + $pk = sp + 48|0; + $em = sp + 40|0; + $0 = $r_ciph; + $1 = $s_data; + $2 = $keyparms; + HEAP32[$data>>2] = 0; + ;HEAP32[$pk>>2]=0|0;HEAP32[$pk+4>>2]=0|0; + $ciph = 0; + $3 = $2; + $4 = (_rsa_get_nbits($3)|0); + __gcry_pk_util_init_encoding_ctx($ctx,0,$4); + $5 = $1; + $6 = (__gcry_pk_util_data_to_mpi($5,$data,$ctx)|0); + $rc = $6; + $7 = $rc; + $8 = ($7|0)!=(0); + do { + if (!($8)) { + $9 = (__gcry_get_debug_flag(1)|0); + $10 = ($9|0)!=(0); + if ($10) { + $11 = HEAP32[$data>>2]|0; + __gcry_log_printmpi(39893,$11); + } + $12 = HEAP32[$data>>2]|0; + $13 = ($12|0)!=(0|0); + if ($13) { + $14 = HEAP32[$data>>2]|0; + $15 = ((($14)) + 12|0); + $16 = HEAP32[$15>>2]|0; + $17 = $16 & 4; + $18 = ($17|0)!=(0); + if ($18) { + $rc = 79; + break; + } + } + $19 = $2; + $20 = ((($pk)) + 4|0); + HEAP32[$vararg_buffer>>2] = $pk; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $20; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = 0; + $21 = (__gcry_sexp_extract_param($19,0,39383,$vararg_buffer)|0); + $rc = $21; + $22 = $rc; + $23 = ($22|0)!=(0); + if (!($23)) { + $24 = (__gcry_get_debug_flag(1)|0); + $25 = ($24|0)!=(0); + if ($25) { + $26 = HEAP32[$pk>>2]|0; + __gcry_log_printmpi(39910,$26); + $27 = ((($pk)) + 4|0); + $28 = HEAP32[$27>>2]|0; + __gcry_log_printmpi(39927,$28); + } + $29 = (__gcry_mpi_new(0)|0); + $ciph = $29; + $30 = $ciph; + $31 = HEAP32[$data>>2]|0; + _public($30,$31,$pk); + $32 = (__gcry_get_debug_flag(1)|0); + $33 = ($32|0)!=(0); + if ($33) { + $34 = $ciph; + __gcry_log_printmpi(39944,$34); + } + $35 = ((($ctx)) + 12|0); + $36 = HEAP32[$35>>2]|0; + $37 = $36 & 4; + $38 = ($37|0)!=(0); + if (!($38)) { + $53 = $0; + $54 = $ciph; + HEAP32[$vararg_buffer7>>2] = $54; + $55 = (__gcry_sexp_build($53,0,39981,$vararg_buffer7)|0); + $rc = $55; + break; + } + $39 = HEAP32[$pk>>2]|0; + $40 = (__gcry_mpi_get_nbits($39)|0); + $41 = (($40) + 7)|0; + $42 = (($41>>>0) / 8)&-1; + $emlen = $42; + $43 = $ciph; + $44 = $emlen; + $45 = (__gcry_mpi_to_octet_string($em,0,$43,$44)|0); + $rc = $45; + $46 = $rc; + $47 = ($46|0)!=(0); + if (!($47)) { + $48 = $0; + $49 = $emlen; + $50 = HEAP32[$em>>2]|0; + HEAP32[$vararg_buffer3>>2] = $49; + $vararg_ptr6 = ((($vararg_buffer3)) + 4|0); + HEAP32[$vararg_ptr6>>2] = $50; + $51 = (__gcry_sexp_build($48,0,39961,$vararg_buffer3)|0); + $rc = $51; + $52 = HEAP32[$em>>2]|0; + __gcry_free($52); + } + } + } + } while(0); + $56 = $ciph; + __gcry_mpi_release($56); + $57 = HEAP32[$pk>>2]|0; + __gcry_mpi_release($57); + $58 = ((($pk)) + 4|0); + $59 = HEAP32[$58>>2]|0; + __gcry_mpi_release($59); + $60 = HEAP32[$data>>2]|0; + __gcry_mpi_release($60); + __gcry_pk_util_free_encoding_ctx($ctx); + $61 = (__gcry_get_debug_flag(1)|0); + $62 = ($61|0)!=(0); + if (!($62)) { + $65 = $rc; + STACKTOP = sp;return ($65|0); + } + $63 = $rc; + $64 = (_gpg_strerror($63)|0); + HEAP32[$vararg_buffer10>>2] = $64; + __gcry_log_debug(40001,$vararg_buffer10); + $65 = $rc; + STACKTOP = sp;return ($65|0); +} +function _rsa_get_nbits($parms) { + $parms = $parms|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $l1 = 0, $n = 0, $nbits = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $parms; + $2 = $1; + $3 = (__gcry_sexp_find_token($2,39397,1)|0); + $l1 = $3; + $4 = $l1; + $5 = ($4|0)!=(0|0); + if (!($5)) { + $0 = 0; + $16 = $0; + STACKTOP = sp;return ($16|0); + } + $6 = $l1; + $7 = (__gcry_sexp_nth_mpi($6,1,5)|0); + $n = $7; + $8 = $l1; + __gcry_sexp_release($8); + $9 = $n; + $10 = ($9|0)!=(0|0); + if ($10) { + $11 = $n; + $12 = (__gcry_mpi_get_nbits($11)|0); + $13 = $12; + } else { + $13 = 0; + } + $nbits = $13; + $14 = $n; + __gcry_mpi_release($14); + $15 = $nbits; + $0 = $15; + $16 = $0; + STACKTOP = sp;return ($16|0); +} +function _rsa_decrypt($r_plain,$s_data,$keyparms) { + $r_plain = $r_plain|0; + $s_data = $s_data|0; + $keyparms = $keyparms|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $bldata = 0, $ctx = 0, $data = 0, $l1 = 0, $plain = 0, $r = 0, $rc = 0, $ri = 0, $sk = 0, $unpad = 0, $unpadlen = 0, $vararg_buffer = 0, $vararg_buffer11 = 0, $vararg_buffer15 = 0, $vararg_buffer19 = 0, $vararg_buffer2 = 0, $vararg_buffer22 = 0; + var $vararg_ptr1 = 0, $vararg_ptr10 = 0, $vararg_ptr14 = 0, $vararg_ptr18 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 192|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer22 = sp + 64|0; + $vararg_buffer19 = sp + 56|0; + $vararg_buffer15 = sp + 48|0; + $vararg_buffer11 = sp + 40|0; + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $ctx = sp + 128|0; + $l1 = sp + 124|0; + $data = sp + 120|0; + $sk = sp + 96|0; + $unpad = sp + 72|0; + $unpadlen = sp + 68|0; + $0 = $r_plain; + $1 = $s_data; + $2 = $keyparms; + HEAP32[$l1>>2] = 0; + HEAP32[$data>>2] = 0; + ;HEAP32[$sk>>2]=0|0;HEAP32[$sk+4>>2]=0|0;HEAP32[$sk+8>>2]=0|0;HEAP32[$sk+12>>2]=0|0;HEAP32[$sk+16>>2]=0|0;HEAP32[$sk+20>>2]=0|0; + $plain = 0; + $r = 0; + $ri = 0; + $bldata = 0; + HEAP32[$unpad>>2] = 0; + HEAP32[$unpadlen>>2] = 0; + $3 = $2; + $4 = (_rsa_get_nbits($3)|0); + __gcry_pk_util_init_encoding_ctx($ctx,1,$4); + $5 = $1; + $6 = (__gcry_pk_util_preparse_encval($5,7712,$l1,$ctx)|0); + $rc = $6; + $7 = $rc; + $8 = ($7|0)!=(0); + L1: do { + if (!($8)) { + $9 = HEAP32[$l1>>2]|0; + HEAP32[$vararg_buffer>>2] = $data; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 0; + $10 = (__gcry_sexp_extract_param($9,0,39393,$vararg_buffer)|0); + $rc = $10; + $11 = $rc; + $12 = ($11|0)!=(0); + if (!($12)) { + $13 = (__gcry_get_debug_flag(1)|0); + $14 = ($13|0)!=(0); + if ($14) { + $15 = HEAP32[$data>>2]|0; + __gcry_log_printmpi(40023,$15); + } + $16 = HEAP32[$data>>2]|0; + $17 = ($16|0)!=(0|0); + if ($17) { + $18 = HEAP32[$data>>2]|0; + $19 = ((($18)) + 12|0); + $20 = HEAP32[$19>>2]|0; + $21 = $20 & 4; + $22 = ($21|0)!=(0); + if ($22) { + $rc = 79; + break; + } + } + $23 = $2; + $24 = ((($sk)) + 4|0); + $25 = ((($sk)) + 8|0); + $26 = ((($sk)) + 12|0); + $27 = ((($sk)) + 16|0); + $28 = ((($sk)) + 20|0); + HEAP32[$vararg_buffer2>>2] = $sk; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = $24; + $vararg_ptr6 = ((($vararg_buffer2)) + 8|0); + HEAP32[$vararg_ptr6>>2] = $25; + $vararg_ptr7 = ((($vararg_buffer2)) + 12|0); + HEAP32[$vararg_ptr7>>2] = $26; + $vararg_ptr8 = ((($vararg_buffer2)) + 16|0); + HEAP32[$vararg_ptr8>>2] = $27; + $vararg_ptr9 = ((($vararg_buffer2)) + 20|0); + HEAP32[$vararg_ptr9>>2] = $28; + $vararg_ptr10 = ((($vararg_buffer2)) + 24|0); + HEAP32[$vararg_ptr10>>2] = 0; + $29 = (__gcry_sexp_extract_param($23,0,40040,$vararg_buffer2)|0); + $rc = $29; + $30 = $rc; + $31 = ($30|0)!=(0); + if (!($31)) { + $32 = (__gcry_get_debug_flag(1)|0); + $33 = ($32|0)!=(0); + if ($33) { + $34 = HEAP32[$sk>>2]|0; + __gcry_log_printmpi(40050,$34); + $35 = ((($sk)) + 4|0); + $36 = HEAP32[$35>>2]|0; + __gcry_log_printmpi(40067,$36); + $37 = (__gcry_fips_mode()|0); + $38 = ($37|0)!=(0); + if (!($38)) { + $39 = ((($sk)) + 8|0); + $40 = HEAP32[$39>>2]|0; + __gcry_log_printmpi(40084,$40); + $41 = ((($sk)) + 12|0); + $42 = HEAP32[$41>>2]|0; + __gcry_log_printmpi(40101,$42); + $43 = ((($sk)) + 16|0); + $44 = HEAP32[$43>>2]|0; + __gcry_log_printmpi(40118,$44); + $45 = ((($sk)) + 20|0); + $46 = HEAP32[$45>>2]|0; + __gcry_log_printmpi(40135,$46); + } + } + $47 = HEAP32[$data>>2]|0; + __gcry_mpi_normalize($47); + $48 = HEAP32[$data>>2]|0; + $49 = HEAP32[$data>>2]|0; + $50 = HEAP32[$sk>>2]|0; + __gcry_mpi_fdiv_r($48,$49,$50); + $51 = ((($ctx)) + 4|0); + $52 = HEAP32[$51>>2]|0; + $53 = (__gcry_mpi_snew($52)|0); + $plain = $53; + $54 = ((($ctx)) + 12|0); + $55 = HEAP32[$54>>2]|0; + $56 = $55 & 1; + $57 = ($56|0)!=(0); + if ($57) { + $97 = $plain; + $98 = HEAP32[$data>>2]|0; + _secret($97,$98,$sk); + } else { + $58 = ((($ctx)) + 4|0); + $59 = HEAP32[$58>>2]|0; + $60 = (__gcry_mpi_snew($59)|0); + $r = $60; + $61 = ((($ctx)) + 4|0); + $62 = HEAP32[$61>>2]|0; + $63 = (__gcry_mpi_snew($62)|0); + $ri = $63; + $64 = ((($ctx)) + 4|0); + $65 = HEAP32[$64>>2]|0; + $66 = (__gcry_mpi_snew($65)|0); + $bldata = $66; + while(1) { + $67 = $r; + $68 = ((($ctx)) + 4|0); + $69 = HEAP32[$68>>2]|0; + __gcry_mpi_randomize($67,$69,0); + $70 = $r; + $71 = $r; + $72 = HEAP32[$sk>>2]|0; + __gcry_mpi_mod($70,$71,$72); + $73 = $ri; + $74 = $r; + $75 = HEAP32[$sk>>2]|0; + $76 = (__gcry_mpi_invm($73,$74,$75)|0); + $77 = ($76|0)!=(0); + $78 = $77 ^ 1; + if (!($78)) { + break; + } + } + $79 = $bldata; + $80 = $r; + $81 = ((($sk)) + 4|0); + $82 = HEAP32[$81>>2]|0; + $83 = HEAP32[$sk>>2]|0; + __gcry_mpi_powm($79,$80,$82,$83); + $84 = $bldata; + $85 = $bldata; + $86 = HEAP32[$data>>2]|0; + $87 = HEAP32[$sk>>2]|0; + __gcry_mpi_mulm($84,$85,$86,$87); + $88 = $plain; + $89 = $bldata; + _secret($88,$89,$sk); + $90 = $bldata; + __gcry_mpi_release($90); + $bldata = 0; + $91 = $plain; + $92 = $plain; + $93 = $ri; + $94 = HEAP32[$sk>>2]|0; + __gcry_mpi_mulm($91,$92,$93,$94); + $95 = $r; + __gcry_mpi_release($95); + $r = 0; + $96 = $ri; + __gcry_mpi_release($96); + $ri = 0; + } + $99 = (__gcry_get_debug_flag(1)|0); + $100 = ($99|0)!=(0); + if ($100) { + $101 = $plain; + __gcry_log_printmpi(40152,$101); + } + $102 = ((($ctx)) + 8|0); + $103 = HEAP32[$102>>2]|0; + switch ($103|0) { + case 1: { + $104 = ((($ctx)) + 4|0); + $105 = HEAP32[$104>>2]|0; + $106 = $plain; + $107 = (__gcry_rsa_pkcs1_decode_for_enc($unpad,$unpadlen,$105,$106)|0); + $rc = $107; + $108 = $plain; + __gcry_mpi_free($108); + $plain = 0; + $109 = $rc; + $110 = ($109|0)!=(0); + if ($110) { + break L1; + } + $111 = $0; + $112 = HEAP32[$unpadlen>>2]|0; + $113 = HEAP32[$unpad>>2]|0; + HEAP32[$vararg_buffer11>>2] = $112; + $vararg_ptr14 = ((($vararg_buffer11)) + 4|0); + HEAP32[$vararg_ptr14>>2] = $113; + $114 = (__gcry_sexp_build($111,0,40169,$vararg_buffer11)|0); + $rc = $114; + break L1; + break; + } + case 3: { + $115 = ((($ctx)) + 4|0); + $116 = HEAP32[$115>>2]|0; + $117 = ((($ctx)) + 16|0); + $118 = HEAP32[$117>>2]|0; + $119 = $plain; + $120 = ((($ctx)) + 20|0); + $121 = HEAP32[$120>>2]|0; + $122 = ((($ctx)) + 24|0); + $123 = HEAP32[$122>>2]|0; + $124 = (__gcry_rsa_oaep_decode($unpad,$unpadlen,$116,$118,$119,$121,$123)|0); + $rc = $124; + $125 = $plain; + __gcry_mpi_free($125); + $plain = 0; + $126 = $rc; + $127 = ($126|0)!=(0); + if ($127) { + break L1; + } + $128 = $0; + $129 = HEAP32[$unpadlen>>2]|0; + $130 = HEAP32[$unpad>>2]|0; + HEAP32[$vararg_buffer15>>2] = $129; + $vararg_ptr18 = ((($vararg_buffer15)) + 4|0); + HEAP32[$vararg_ptr18>>2] = $130; + $131 = (__gcry_sexp_build($128,0,40169,$vararg_buffer15)|0); + $rc = $131; + break L1; + break; + } + default: { + $132 = $0; + $133 = ((($ctx)) + 12|0); + $134 = HEAP32[$133>>2]|0; + $135 = $134 & 8; + $136 = ($135|0)!=(0); + $137 = $136 ? 40180 : 49265; + $138 = $plain; + HEAP32[$vararg_buffer19>>2] = $138; + $139 = (__gcry_sexp_build($132,0,$137,$vararg_buffer19)|0); + $rc = $139; + break L1; + } + } + } + } + } + } while(0); + $140 = HEAP32[$unpad>>2]|0; + __gcry_free($140); + $141 = $plain; + __gcry_mpi_release($141); + $142 = HEAP32[$sk>>2]|0; + __gcry_mpi_release($142); + $143 = ((($sk)) + 4|0); + $144 = HEAP32[$143>>2]|0; + __gcry_mpi_release($144); + $145 = ((($sk)) + 8|0); + $146 = HEAP32[$145>>2]|0; + __gcry_mpi_release($146); + $147 = ((($sk)) + 12|0); + $148 = HEAP32[$147>>2]|0; + __gcry_mpi_release($148); + $149 = ((($sk)) + 16|0); + $150 = HEAP32[$149>>2]|0; + __gcry_mpi_release($150); + $151 = ((($sk)) + 20|0); + $152 = HEAP32[$151>>2]|0; + __gcry_mpi_release($152); + $153 = HEAP32[$data>>2]|0; + __gcry_mpi_release($153); + $154 = $r; + __gcry_mpi_release($154); + $155 = $ri; + __gcry_mpi_release($155); + $156 = $bldata; + __gcry_mpi_release($156); + $157 = HEAP32[$l1>>2]|0; + __gcry_sexp_release($157); + __gcry_pk_util_free_encoding_ctx($ctx); + $158 = (__gcry_get_debug_flag(1)|0); + $159 = ($158|0)!=(0); + if (!($159)) { + $162 = $rc; + STACKTOP = sp;return ($162|0); + } + $160 = $rc; + $161 = (_gpg_strerror($160)|0); + HEAP32[$vararg_buffer22>>2] = $161; + __gcry_log_debug(40183,$vararg_buffer22); + $162 = $rc; + STACKTOP = sp;return ($162|0); +} +function _rsa_sign($r_sig,$s_data,$keyparms) { + $r_sig = $r_sig|0; + $s_data = $s_data|0; + $keyparms = $keyparms|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $9 = 0, $ctx = 0, $data = 0, $em = 0, $emlen = 0, $rc = 0, $sig = 0, $sk = 0, $vararg_buffer = 0, $vararg_buffer11 = 0, $vararg_buffer14 = 0, $vararg_buffer7 = 0, $vararg_ptr1 = 0; + var $vararg_ptr10 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer14 = sp + 48|0; + $vararg_buffer11 = sp + 40|0; + $vararg_buffer7 = sp + 32|0; + $vararg_buffer = sp; + $ctx = sp + 96|0; + $data = sp + 88|0; + $sk = sp + 64|0; + $em = sp + 56|0; + $0 = $r_sig; + $1 = $s_data; + $2 = $keyparms; + HEAP32[$data>>2] = 0; + ;HEAP32[$sk>>2]=0|0;HEAP32[$sk+4>>2]=0|0;HEAP32[$sk+8>>2]=0|0;HEAP32[$sk+12>>2]=0|0;HEAP32[$sk+16>>2]=0|0;HEAP32[$sk+20>>2]=0|0; + $sig = 0; + $3 = $2; + $4 = (_rsa_get_nbits($3)|0); + __gcry_pk_util_init_encoding_ctx($ctx,2,$4); + $5 = $1; + $6 = (__gcry_pk_util_data_to_mpi($5,$data,$ctx)|0); + $rc = $6; + $7 = $rc; + $8 = ($7|0)!=(0); + do { + if (!($8)) { + $9 = (__gcry_get_debug_flag(1)|0); + $10 = ($9|0)!=(0); + if ($10) { + $11 = HEAP32[$data>>2]|0; + __gcry_log_printmpi(40205,$11); + } + $12 = HEAP32[$data>>2]|0; + $13 = ($12|0)!=(0|0); + if ($13) { + $14 = HEAP32[$data>>2]|0; + $15 = ((($14)) + 12|0); + $16 = HEAP32[$15>>2]|0; + $17 = $16 & 4; + $18 = ($17|0)!=(0); + if ($18) { + $rc = 79; + break; + } + } + $19 = $2; + $20 = ((($sk)) + 4|0); + $21 = ((($sk)) + 8|0); + $22 = ((($sk)) + 12|0); + $23 = ((($sk)) + 16|0); + $24 = ((($sk)) + 20|0); + HEAP32[$vararg_buffer>>2] = $sk; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $20; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $21; + $vararg_ptr3 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr3>>2] = $22; + $vararg_ptr4 = ((($vararg_buffer)) + 16|0); + HEAP32[$vararg_ptr4>>2] = $23; + $vararg_ptr5 = ((($vararg_buffer)) + 20|0); + HEAP32[$vararg_ptr5>>2] = $24; + $vararg_ptr6 = ((($vararg_buffer)) + 24|0); + HEAP32[$vararg_ptr6>>2] = 0; + $25 = (__gcry_sexp_extract_param($19,0,40040,$vararg_buffer)|0); + $rc = $25; + $26 = $rc; + $27 = ($26|0)!=(0); + if (!($27)) { + $28 = (__gcry_get_debug_flag(1)|0); + $29 = ($28|0)!=(0); + if ($29) { + $30 = HEAP32[$sk>>2]|0; + __gcry_log_printmpi(40221,$30); + $31 = ((($sk)) + 4|0); + $32 = HEAP32[$31>>2]|0; + __gcry_log_printmpi(40237,$32); + $33 = (__gcry_fips_mode()|0); + $34 = ($33|0)!=(0); + if (!($34)) { + $35 = ((($sk)) + 8|0); + $36 = HEAP32[$35>>2]|0; + __gcry_log_printmpi(40253,$36); + $37 = ((($sk)) + 12|0); + $38 = HEAP32[$37>>2]|0; + __gcry_log_printmpi(40269,$38); + $39 = ((($sk)) + 16|0); + $40 = HEAP32[$39>>2]|0; + __gcry_log_printmpi(40285,$40); + $41 = ((($sk)) + 20|0); + $42 = HEAP32[$41>>2]|0; + __gcry_log_printmpi(40301,$42); + } + } + $43 = (__gcry_mpi_new(0)|0); + $sig = $43; + $44 = $sig; + $45 = HEAP32[$data>>2]|0; + _secret($44,$45,$sk); + $46 = (__gcry_get_debug_flag(1)|0); + $47 = ($46|0)!=(0); + if ($47) { + $48 = $sig; + __gcry_log_printmpi(40317,$48); + } + $49 = ((($ctx)) + 12|0); + $50 = HEAP32[$49>>2]|0; + $51 = $50 & 4; + $52 = ($51|0)!=(0); + if (!($52)) { + $67 = $0; + $68 = $sig; + HEAP32[$vararg_buffer11>>2] = $68; + $69 = (__gcry_sexp_build($67,0,40353,$vararg_buffer11)|0); + $rc = $69; + break; + } + $53 = HEAP32[$sk>>2]|0; + $54 = (__gcry_mpi_get_nbits($53)|0); + $55 = (($54) + 7)|0; + $56 = (($55>>>0) / 8)&-1; + $emlen = $56; + $57 = $sig; + $58 = $emlen; + $59 = (__gcry_mpi_to_octet_string($em,0,$57,$58)|0); + $rc = $59; + $60 = $rc; + $61 = ($60|0)!=(0); + if (!($61)) { + $62 = $0; + $63 = $emlen; + $64 = HEAP32[$em>>2]|0; + HEAP32[$vararg_buffer7>>2] = $63; + $vararg_ptr10 = ((($vararg_buffer7)) + 4|0); + HEAP32[$vararg_ptr10>>2] = $64; + $65 = (__gcry_sexp_build($62,0,40333,$vararg_buffer7)|0); + $rc = $65; + $66 = HEAP32[$em>>2]|0; + __gcry_free($66); + } + } + } + } while(0); + $70 = $sig; + __gcry_mpi_release($70); + $71 = HEAP32[$sk>>2]|0; + __gcry_mpi_release($71); + $72 = ((($sk)) + 4|0); + $73 = HEAP32[$72>>2]|0; + __gcry_mpi_release($73); + $74 = ((($sk)) + 8|0); + $75 = HEAP32[$74>>2]|0; + __gcry_mpi_release($75); + $76 = ((($sk)) + 12|0); + $77 = HEAP32[$76>>2]|0; + __gcry_mpi_release($77); + $78 = ((($sk)) + 16|0); + $79 = HEAP32[$78>>2]|0; + __gcry_mpi_release($79); + $80 = ((($sk)) + 20|0); + $81 = HEAP32[$80>>2]|0; + __gcry_mpi_release($81); + $82 = HEAP32[$data>>2]|0; + __gcry_mpi_release($82); + __gcry_pk_util_free_encoding_ctx($ctx); + $83 = (__gcry_get_debug_flag(1)|0); + $84 = ($83|0)!=(0); + if (!($84)) { + $87 = $rc; + STACKTOP = sp;return ($87|0); + } + $85 = $rc; + $86 = (_gpg_strerror($85)|0); + HEAP32[$vararg_buffer14>>2] = $86; + __gcry_log_debug(40373,$vararg_buffer14); + $87 = $rc; + STACKTOP = sp;return ($87|0); +} +function _rsa_verify($s_sig,$s_data,$keyparms) { + $s_sig = $s_sig|0; + $s_data = $s_data|0; + $keyparms = $keyparms|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $ctx = 0, $data = 0, $l1 = 0, $pk = 0, $rc = 0, $result = 0, $sig = 0; + var $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer7 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer7 = sp + 24|0; + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $ctx = sp + 56|0; + $l1 = sp + 48|0; + $sig = sp + 44|0; + $data = sp + 40|0; + $pk = sp + 32|0; + $0 = $s_sig; + $1 = $s_data; + $2 = $keyparms; + HEAP32[$l1>>2] = 0; + HEAP32[$sig>>2] = 0; + HEAP32[$data>>2] = 0; + ;HEAP32[$pk>>2]=0|0;HEAP32[$pk+4>>2]=0|0; + $result = 0; + $3 = $2; + $4 = (_rsa_get_nbits($3)|0); + __gcry_pk_util_init_encoding_ctx($ctx,3,$4); + $5 = $1; + $6 = (__gcry_pk_util_data_to_mpi($5,$data,$ctx)|0); + $rc = $6; + $7 = $rc; + $8 = ($7|0)!=(0); + do { + if (!($8)) { + $9 = (__gcry_get_debug_flag(1)|0); + $10 = ($9|0)!=(0); + if ($10) { + $11 = HEAP32[$data>>2]|0; + __gcry_log_printmpi(40394,$11); + } + $12 = HEAP32[$data>>2]|0; + $13 = ($12|0)!=(0|0); + if ($13) { + $14 = HEAP32[$data>>2]|0; + $15 = ((($14)) + 12|0); + $16 = HEAP32[$15>>2]|0; + $17 = $16 & 4; + $18 = ($17|0)!=(0); + if ($18) { + $rc = 79; + break; + } + } + $19 = $0; + $20 = (__gcry_pk_util_preparse_sigval($19,7712,$l1,0)|0); + $rc = $20; + $21 = $rc; + $22 = ($21|0)!=(0); + if (!($22)) { + $23 = HEAP32[$l1>>2]|0; + HEAP32[$vararg_buffer>>2] = $sig; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 0; + $24 = (__gcry_sexp_extract_param($23,0,39395,$vararg_buffer)|0); + $rc = $24; + $25 = $rc; + $26 = ($25|0)!=(0); + if (!($26)) { + $27 = (__gcry_get_debug_flag(1)|0); + $28 = ($27|0)!=(0); + if ($28) { + $29 = HEAP32[$sig>>2]|0; + __gcry_log_printmpi(40410,$29); + } + $30 = $2; + $31 = ((($pk)) + 4|0); + HEAP32[$vararg_buffer2>>2] = $pk; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = $31; + $vararg_ptr6 = ((($vararg_buffer2)) + 8|0); + HEAP32[$vararg_ptr6>>2] = 0; + $32 = (__gcry_sexp_extract_param($30,0,39383,$vararg_buffer2)|0); + $rc = $32; + $33 = $rc; + $34 = ($33|0)!=(0); + if (!($34)) { + $35 = (__gcry_get_debug_flag(1)|0); + $36 = ($35|0)!=(0); + if ($36) { + $37 = HEAP32[$pk>>2]|0; + __gcry_log_printmpi(40426,$37); + $38 = ((($pk)) + 4|0); + $39 = HEAP32[$38>>2]|0; + __gcry_log_printmpi(40442,$39); + } + $40 = (__gcry_mpi_new(0)|0); + $result = $40; + $41 = $result; + $42 = HEAP32[$sig>>2]|0; + _public($41,$42,$pk); + $43 = (__gcry_get_debug_flag(1)|0); + $44 = ($43|0)!=(0); + if ($44) { + $45 = $result; + __gcry_log_printmpi(40458,$45); + } + $46 = ((($ctx)) + 32|0); + $47 = HEAP32[$46>>2]|0; + $48 = ($47|0)!=(0|0); + if ($48) { + $49 = ((($ctx)) + 32|0); + $50 = HEAP32[$49>>2]|0; + $51 = $result; + $52 = (FUNCTION_TABLE_iii[$50 & 127]($ctx,$51)|0); + $rc = $52; + break; + } else { + $53 = $result; + $54 = HEAP32[$data>>2]|0; + $55 = (__gcry_mpi_cmp($53,$54)|0); + $56 = ($55|0)!=(0); + $57 = $56 ? 8 : 0; + $rc = $57; + break; + } + } + } + } + } + } while(0); + $58 = $result; + __gcry_mpi_release($58); + $59 = HEAP32[$pk>>2]|0; + __gcry_mpi_release($59); + $60 = ((($pk)) + 4|0); + $61 = HEAP32[$60>>2]|0; + __gcry_mpi_release($61); + $62 = HEAP32[$data>>2]|0; + __gcry_mpi_release($62); + $63 = HEAP32[$sig>>2]|0; + __gcry_mpi_release($63); + $64 = HEAP32[$l1>>2]|0; + __gcry_sexp_release($64); + __gcry_pk_util_free_encoding_ctx($ctx); + $65 = (__gcry_get_debug_flag(1)|0); + $66 = ($65|0)!=(0); + if (!($66)) { + $72 = $rc; + STACKTOP = sp;return ($72|0); + } + $67 = $rc; + $68 = ($67|0)!=(0); + if ($68) { + $69 = $rc; + $70 = (_gpg_strerror($69)|0); + $71 = $70; + } else { + $71 = 49823; + } + HEAP32[$vararg_buffer7>>2] = $71; + __gcry_log_debug(40474,$vararg_buffer7); + $72 = $rc; + STACKTOP = sp;return ($72|0); +} +function _run_selftests_1333($algo,$extended,$report) { + $algo = $algo|0; + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $cond = 0, $ec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $algo; + $1 = $extended; + $2 = $report; + $3 = $0; + $cond = ($3|0)==(1); + if ($cond) { + $4 = $2; + $5 = (_selftests_rsa($4)|0); + $ec = $5; + } else { + $ec = 4; + } + $6 = $ec; + STACKTOP = sp;return ($6|0); +} +function _selftests_rsa($report) { + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $err = 0, $errtxt = 0; + var $pkey = 0, $skey = 0, $what = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $skey = sp + 4|0; + $pkey = sp; + $1 = $report; + HEAP32[$skey>>2] = 0; + HEAP32[$pkey>>2] = 0; + $what = 40495; + $2 = (_strlen(40503)|0); + $3 = (__gcry_sexp_sscan($skey,0,40503,$2)|0); + $err = $3; + $4 = $err; + $5 = ($4|0)!=(0); + if (!($5)) { + $6 = (_strlen(41533)|0); + $7 = (__gcry_sexp_sscan($pkey,0,41533,$6)|0); + $err = $7; + } + $8 = $err; + $9 = ($8|0)!=(0); + do { + if ($9) { + $10 = $err; + $11 = (__gcry_strerror_1335($10)|0); + $errtxt = $11; + } else { + $what = 41850; + $12 = HEAP32[$skey>>2]|0; + $13 = (__gcry_pk_testkey($12)|0); + $err = $13; + $14 = $err; + $15 = ($14|0)!=(0); + if ($15) { + $16 = $err; + $17 = (__gcry_strerror_1335($16)|0); + $errtxt = $17; + break; + } + $what = 41866; + $18 = HEAP32[$pkey>>2]|0; + $19 = HEAP32[$skey>>2]|0; + $20 = (_selftest_sign_1024($18,$19)|0); + $errtxt = $20; + $21 = $errtxt; + $22 = ($21|0)!=(0|0); + if (!($22)) { + $what = 42102; + $23 = HEAP32[$pkey>>2]|0; + $24 = HEAP32[$skey>>2]|0; + $25 = (_selftest_encr_1024($23,$24)|0); + $errtxt = $25; + $26 = $errtxt; + $27 = ($26|0)!=(0|0); + if (!($27)) { + $28 = HEAP32[$pkey>>2]|0; + __gcry_sexp_release($28); + $29 = HEAP32[$skey>>2]|0; + __gcry_sexp_release($29); + $0 = 0; + $37 = $0; + STACKTOP = sp;return ($37|0); + } + } + } + } while(0); + $30 = HEAP32[$pkey>>2]|0; + __gcry_sexp_release($30); + $31 = HEAP32[$skey>>2]|0; + __gcry_sexp_release($31); + $32 = $1; + $33 = ($32|0)!=(0|0); + if ($33) { + $34 = $1; + $35 = $what; + $36 = $errtxt; + FUNCTION_TABLE_viiii[$34 & 63](49859,1,$35,$36); + } + $0 = 50; + $37 = $0; + STACKTOP = sp;return ($37|0); +} +function __gcry_strerror_1335($err) { + $err = $err|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $err; + $1 = $0; + $2 = (_gpg_strerror($1)|0); + STACKTOP = sp;return ($2|0); +} +function _selftest_sign_1024($pkey,$skey) { + $pkey = $pkey|0; + $skey = $skey|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $data = 0, $data_bad = 0, $err = 0, $errtxt = 0, $sig = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $data = sp + 8|0; + $data_bad = sp + 4|0; + $sig = sp; + $0 = $pkey; + $1 = $skey; + $errtxt = 0; + HEAP32[$data>>2] = 0; + HEAP32[$data_bad>>2] = 0; + HEAP32[$sig>>2] = 0; + $2 = (_strlen(41871)|0); + $3 = (__gcry_sexp_sscan($data,0,41871,$2)|0); + $err = $3; + $4 = $err; + $5 = ($4|0)!=(0); + if (!($5)) { + $6 = (_strlen(41947)|0); + $7 = (__gcry_sexp_sscan($data_bad,0,41947,$6)|0); + $err = $7; + } + $8 = $err; + $9 = ($8|0)!=(0); + do { + if ($9) { + $errtxt = 42023; + } else { + $10 = HEAP32[$data>>2]|0; + $11 = $1; + $12 = (__gcry_pk_sign($sig,$10,$11)|0); + $err = $12; + $13 = $err; + $14 = ($13|0)!=(0); + if ($14) { + $errtxt = 42046; + break; + } + $15 = HEAP32[$sig>>2]|0; + $16 = HEAP32[$data>>2]|0; + $17 = $0; + $18 = (__gcry_pk_verify($15,$16,$17)|0); + $err = $18; + $19 = $err; + $20 = ($19|0)!=(0); + if ($20) { + $errtxt = 42061; + break; + } + $21 = HEAP32[$sig>>2]|0; + $22 = HEAP32[$data_bad>>2]|0; + $23 = $0; + $24 = (__gcry_pk_verify($21,$22,$23)|0); + $err = $24; + $25 = $err; + $26 = (_gcry_err_code_1341($25)|0); + $27 = ($26|0)!=(8); + if ($27) { + $errtxt = 42075; + } + } + } while(0); + $28 = HEAP32[$sig>>2]|0; + __gcry_sexp_release($28); + $29 = HEAP32[$data_bad>>2]|0; + __gcry_sexp_release($29); + $30 = HEAP32[$data>>2]|0; + __gcry_sexp_release($30); + $31 = $errtxt; + STACKTOP = sp;return ($31|0); +} +function _gcry_err_code_1341($err) { + $err = $err|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $err; + $1 = $0; + $2 = (_gpg_err_code_1342($1)|0); + STACKTOP = sp;return ($2|0); +} +function _gpg_err_code_1342($err) { + $err = $err|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $err; + $1 = $0; + $2 = $1 & 65535; + STACKTOP = sp;return ($2|0); +} +function _selftest_encr_1024($pkey,$skey) { + $pkey = $pkey|0; + $skey = $skey|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ciphertext = 0, $decr = 0, $decr_plaintext = 0, $encr = 0, $err = 0, $errtxt = 0, $nbits = 0, $plain = 0, $plaintext = 0, $tmplist = 0, $vararg_buffer = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $plain = sp + 24|0; + $encr = sp + 20|0; + $decr = sp + 12|0; + $0 = $pkey; + $1 = $skey; + $errtxt = 0; + $nbits = 1000; + $plaintext = 0; + HEAP32[$plain>>2] = 0; + HEAP32[$encr>>2] = 0; + $ciphertext = 0; + HEAP32[$decr>>2] = 0; + $decr_plaintext = 0; + $tmplist = 0; + $2 = (__gcry_mpi_new(1000)|0); + $plaintext = $2; + $3 = $plaintext; + __gcry_mpi_randomize($3,1000,0); + $4 = $plaintext; + HEAP32[$vararg_buffer>>2] = $4; + $5 = (__gcry_sexp_build($plain,0,42110,$vararg_buffer)|0); + $err = $5; + $6 = $err; + $7 = ($6|0)!=(0); + do { + if ($7) { + $errtxt = 42023; + } else { + $8 = HEAP32[$plain>>2]|0; + $9 = $0; + $10 = (__gcry_pk_encrypt($encr,$8,$9)|0); + $err = $10; + $11 = $err; + $12 = ($11|0)!=(0); + if ($12) { + $errtxt = 42140; + break; + } + $13 = HEAP32[$encr>>2]|0; + $14 = (_extract_a_from_sexp($13)|0); + $ciphertext = $14; + $15 = $ciphertext; + $16 = ($15|0)!=(0|0); + if (!($16)) { + $errtxt = 42163; + break; + } + $17 = $plaintext; + $18 = $ciphertext; + $19 = (__gcry_mpi_cmp($17,$18)|0); + $20 = ($19|0)!=(0); + if (!($20)) { + $errtxt = 42196; + break; + } + $21 = HEAP32[$encr>>2]|0; + $22 = $1; + $23 = (__gcry_pk_decrypt($decr,$21,$22)|0); + $err = $23; + $24 = $err; + $25 = ($24|0)!=(0); + if ($25) { + $errtxt = 42225; + break; + } + $26 = HEAP32[$decr>>2]|0; + $27 = (__gcry_sexp_find_token($26,42240,0)|0); + $tmplist = $27; + $28 = $tmplist; + $29 = ($28|0)!=(0|0); + if ($29) { + $30 = $tmplist; + $31 = (__gcry_sexp_nth_mpi($30,1,5)|0); + $decr_plaintext = $31; + } else { + $32 = HEAP32[$decr>>2]|0; + $33 = (__gcry_sexp_nth_mpi($32,0,5)|0); + $decr_plaintext = $33; + } + $34 = $decr_plaintext; + $35 = ($34|0)!=(0|0); + if (!($35)) { + $errtxt = 42246; + break; + } + $36 = $plaintext; + $37 = $decr_plaintext; + $38 = (__gcry_mpi_cmp($36,$37)|0); + $39 = ($38|0)!=(0); + if ($39) { + $errtxt = 42276; + } + } + } while(0); + $40 = $tmplist; + __gcry_sexp_release($40); + $41 = $decr_plaintext; + __gcry_mpi_release($41); + $42 = HEAP32[$decr>>2]|0; + __gcry_sexp_release($42); + $43 = $ciphertext; + __gcry_mpi_release($43); + $44 = HEAP32[$encr>>2]|0; + __gcry_sexp_release($44); + $45 = HEAP32[$plain>>2]|0; + __gcry_sexp_release($45); + $46 = $plaintext; + __gcry_mpi_release($46); + $47 = $errtxt; + STACKTOP = sp;return ($47|0); +} +function _extract_a_from_sexp($encr_data) { + $encr_data = $encr_data|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $a_value = 0, $l1 = 0, $l2 = 0, $l3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $encr_data; + $2 = $1; + $3 = (__gcry_sexp_find_token($2,42155,0)|0); + $l1 = $3; + $4 = $l1; + $5 = ($4|0)!=(0|0); + do { + if ($5) { + $6 = $l1; + $7 = (__gcry_sexp_find_token($6,39342,0)|0); + $l2 = $7; + $8 = $l1; + __gcry_sexp_release($8); + $9 = $l2; + $10 = ($9|0)!=(0|0); + if (!($10)) { + $0 = 0; + break; + } + $11 = $l2; + $12 = (__gcry_sexp_find_token($11,39393,0)|0); + $l3 = $12; + $13 = $l2; + __gcry_sexp_release($13); + $14 = $l3; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = $l3; + $17 = (__gcry_sexp_nth_mpi($16,1,0)|0); + $a_value = $17; + $18 = $l3; + __gcry_sexp_release($18); + $19 = $a_value; + $0 = $19; + break; + } else { + $0 = 0; + break; + } + } else { + $0 = 0; + } + } while(0); + $20 = $0; + STACKTOP = sp;return ($20|0); +} +function _compute_keygrip($md,$keyparam) { + $md = $md|0; + $keyparam = $keyparam|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $data = 0, $datalen = 0, $l1 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $datalen = sp; + $1 = $md; + $2 = $keyparam; + $3 = $2; + $4 = (__gcry_sexp_find_token($3,39397,1)|0); + $l1 = $4; + $5 = $l1; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $0 = 68; + $16 = $0; + STACKTOP = sp;return ($16|0); + } + $7 = $l1; + $8 = (__gcry_sexp_nth_data($7,1,$datalen)|0); + $data = $8; + $9 = $data; + $10 = ($9|0)!=(0|0); + if ($10) { + $12 = $1; + $13 = $data; + $14 = HEAP32[$datalen>>2]|0; + __gcry_md_write($12,$13,$14); + $15 = $l1; + __gcry_sexp_release($15); + $0 = 0; + $16 = $0; + STACKTOP = sp;return ($16|0); + } else { + $11 = $l1; + __gcry_sexp_release($11); + $0 = 68; + $16 = $0; + STACKTOP = sp;return ($16|0); + } + return (0)|0; +} +function _sha1_init($context,$flags) { + $context = $context|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $features = 0, $hd = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $flags; + $2 = $0; + $hd = $2; + $3 = (__gcry_get_hw_features()|0); + $features = $3; + $4 = $hd; + $5 = ((($4)) + 160|0); + HEAP32[$5>>2] = 1732584193; + $6 = $hd; + $7 = ((($6)) + 164|0); + HEAP32[$7>>2] = -271733879; + $8 = $hd; + $9 = ((($8)) + 168|0); + HEAP32[$9>>2] = -1732584194; + $10 = $hd; + $11 = ((($10)) + 172|0); + HEAP32[$11>>2] = 271733878; + $12 = $hd; + $13 = ((($12)) + 176|0); + HEAP32[$13>>2] = -1009589776; + $14 = $hd; + $15 = ((($14)) + 128|0); + $16 = $15; + $17 = $16; + HEAP32[$17>>2] = 0; + $18 = (($16) + 4)|0; + $19 = $18; + HEAP32[$19>>2] = 0; + $20 = $hd; + $21 = ((($20)) + 136|0); + $22 = $21; + $23 = $22; + HEAP32[$23>>2] = 0; + $24 = (($22) + 4)|0; + $25 = $24; + HEAP32[$25>>2] = 0; + $26 = $hd; + $27 = ((($26)) + 144|0); + HEAP32[$27>>2] = 0; + $28 = $hd; + $29 = ((($28)) + 148|0); + HEAP32[$29>>2] = 64; + $30 = $hd; + $31 = ((($30)) + 152|0); + HEAP32[$31>>2] = 74; + STACKTOP = sp;return; +} +function _transform_1369($ctx,$data,$nblks) { + $ctx = $ctx|0; + $data = $data|0; + $nblks = $nblks|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $burn = 0, $hd = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $1 = $data; + $2 = $nblks; + $3 = $0; + $hd = $3; + while(1) { + $4 = $hd; + $5 = $1; + $6 = (_transform_blk_1370($4,$5)|0); + $burn = $6; + $7 = $1; + $8 = ((($7)) + 64|0); + $1 = $8; + $9 = $2; + $10 = (($9) + -1)|0; + $2 = $10; + $11 = ($10|0)!=(0); + if (!($11)) { + break; + } + } + $12 = $burn; + STACKTOP = sp;return ($12|0); +} +function _transform_blk_1370($ctx,$data) { + $ctx = $ctx|0; + $data = $data|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0; + var $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0; + var $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0; + var $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0; + var $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0; + var $1088 = 0, $1089 = 0, $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 0, $1094 = 0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0, $11 = 0, $110 = 0, $1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0; + var $1105 = 0, $1106 = 0, $1107 = 0, $1108 = 0, $1109 = 0, $111 = 0, $1110 = 0, $1111 = 0, $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 0, $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0; + var $1123 = 0, $1124 = 0, $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0; + var $1141 = 0, $1142 = 0, $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0; + var $116 = 0, $1160 = 0, $1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 0, $1166 = 0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0; + var $1178 = 0, $1179 = 0, $118 = 0, $1180 = 0, $1181 = 0, $1182 = 0, $1183 = 0, $1184 = 0, $1185 = 0, $1186 = 0, $1187 = 0, $1188 = 0, $1189 = 0, $119 = 0, $1190 = 0, $1191 = 0, $1192 = 0, $1193 = 0, $1194 = 0, $1195 = 0; + var $1196 = 0, $1197 = 0, $1198 = 0, $1199 = 0, $12 = 0, $120 = 0, $1200 = 0, $1201 = 0, $1202 = 0, $1203 = 0, $1204 = 0, $1205 = 0, $1206 = 0, $1207 = 0, $1208 = 0, $1209 = 0, $121 = 0, $1210 = 0, $1211 = 0, $1212 = 0; + var $1213 = 0, $1214 = 0, $1215 = 0, $1216 = 0, $1217 = 0, $1218 = 0, $1219 = 0, $122 = 0, $1220 = 0, $1221 = 0, $1222 = 0, $1223 = 0, $1224 = 0, $1225 = 0, $1226 = 0, $1227 = 0, $1228 = 0, $1229 = 0, $123 = 0, $1230 = 0; + var $1231 = 0, $1232 = 0, $1233 = 0, $1234 = 0, $1235 = 0, $1236 = 0, $1237 = 0, $1238 = 0, $1239 = 0, $124 = 0, $1240 = 0, $1241 = 0, $1242 = 0, $1243 = 0, $1244 = 0, $1245 = 0, $1246 = 0, $1247 = 0, $1248 = 0, $1249 = 0; + var $125 = 0, $1250 = 0, $1251 = 0, $1252 = 0, $1253 = 0, $1254 = 0, $1255 = 0, $1256 = 0, $1257 = 0, $1258 = 0, $1259 = 0, $126 = 0, $1260 = 0, $1261 = 0, $1262 = 0, $1263 = 0, $1264 = 0, $1265 = 0, $1266 = 0, $1267 = 0; + var $1268 = 0, $1269 = 0, $127 = 0, $1270 = 0, $1271 = 0, $1272 = 0, $1273 = 0, $1274 = 0, $1275 = 0, $1276 = 0, $1277 = 0, $1278 = 0, $1279 = 0, $128 = 0, $1280 = 0, $1281 = 0, $1282 = 0, $1283 = 0, $1284 = 0, $1285 = 0; + var $1286 = 0, $1287 = 0, $1288 = 0, $1289 = 0, $129 = 0, $1290 = 0, $1291 = 0, $1292 = 0, $1293 = 0, $1294 = 0, $1295 = 0, $1296 = 0, $1297 = 0, $1298 = 0, $1299 = 0, $13 = 0, $130 = 0, $1300 = 0, $1301 = 0, $1302 = 0; + var $1303 = 0, $1304 = 0, $1305 = 0, $1306 = 0, $1307 = 0, $1308 = 0, $1309 = 0, $131 = 0, $1310 = 0, $1311 = 0, $1312 = 0, $1313 = 0, $1314 = 0, $1315 = 0, $1316 = 0, $1317 = 0, $1318 = 0, $1319 = 0, $132 = 0, $1320 = 0; + var $1321 = 0, $1322 = 0, $1323 = 0, $1324 = 0, $1325 = 0, $1326 = 0, $1327 = 0, $1328 = 0, $1329 = 0, $133 = 0, $1330 = 0, $1331 = 0, $1332 = 0, $1333 = 0, $1334 = 0, $1335 = 0, $1336 = 0, $1337 = 0, $1338 = 0, $1339 = 0; + var $134 = 0, $1340 = 0, $1341 = 0, $1342 = 0, $1343 = 0, $1344 = 0, $1345 = 0, $1346 = 0, $1347 = 0, $1348 = 0, $1349 = 0, $135 = 0, $1350 = 0, $1351 = 0, $1352 = 0, $1353 = 0, $1354 = 0, $1355 = 0, $1356 = 0, $1357 = 0; + var $1358 = 0, $1359 = 0, $136 = 0, $1360 = 0, $1361 = 0, $1362 = 0, $1363 = 0, $1364 = 0, $1365 = 0, $1366 = 0, $1367 = 0, $1368 = 0, $1369 = 0, $137 = 0, $1370 = 0, $1371 = 0, $1372 = 0, $1373 = 0, $1374 = 0, $1375 = 0; + var $1376 = 0, $1377 = 0, $1378 = 0, $1379 = 0, $138 = 0, $1380 = 0, $1381 = 0, $1382 = 0, $1383 = 0, $1384 = 0, $1385 = 0, $1386 = 0, $1387 = 0, $1388 = 0, $1389 = 0, $139 = 0, $1390 = 0, $1391 = 0, $1392 = 0, $1393 = 0; + var $1394 = 0, $1395 = 0, $1396 = 0, $1397 = 0, $1398 = 0, $1399 = 0, $14 = 0, $140 = 0, $1400 = 0, $1401 = 0, $1402 = 0, $1403 = 0, $1404 = 0, $1405 = 0, $1406 = 0, $1407 = 0, $1408 = 0, $1409 = 0, $141 = 0, $1410 = 0; + var $1411 = 0, $1412 = 0, $1413 = 0, $1414 = 0, $1415 = 0, $1416 = 0, $1417 = 0, $1418 = 0, $1419 = 0, $142 = 0, $1420 = 0, $1421 = 0, $1422 = 0, $1423 = 0, $1424 = 0, $1425 = 0, $1426 = 0, $1427 = 0, $1428 = 0, $1429 = 0; + var $143 = 0, $1430 = 0, $1431 = 0, $1432 = 0, $1433 = 0, $1434 = 0, $1435 = 0, $1436 = 0, $1437 = 0, $1438 = 0, $1439 = 0, $144 = 0, $1440 = 0, $1441 = 0, $1442 = 0, $1443 = 0, $1444 = 0, $1445 = 0, $1446 = 0, $1447 = 0; + var $1448 = 0, $1449 = 0, $145 = 0, $1450 = 0, $1451 = 0, $1452 = 0, $1453 = 0, $1454 = 0, $1455 = 0, $1456 = 0, $1457 = 0, $1458 = 0, $1459 = 0, $146 = 0, $1460 = 0, $1461 = 0, $1462 = 0, $1463 = 0, $1464 = 0, $1465 = 0; + var $1466 = 0, $1467 = 0, $1468 = 0, $1469 = 0, $147 = 0, $1470 = 0, $1471 = 0, $1472 = 0, $1473 = 0, $1474 = 0, $1475 = 0, $1476 = 0, $1477 = 0, $1478 = 0, $1479 = 0, $148 = 0, $1480 = 0, $1481 = 0, $1482 = 0, $1483 = 0; + var $1484 = 0, $1485 = 0, $1486 = 0, $1487 = 0, $1488 = 0, $1489 = 0, $149 = 0, $1490 = 0, $1491 = 0, $1492 = 0, $1493 = 0, $1494 = 0, $1495 = 0, $1496 = 0, $1497 = 0, $1498 = 0, $1499 = 0, $15 = 0, $150 = 0, $1500 = 0; + var $1501 = 0, $1502 = 0, $1503 = 0, $1504 = 0, $1505 = 0, $1506 = 0, $1507 = 0, $1508 = 0, $1509 = 0, $151 = 0, $1510 = 0, $1511 = 0, $1512 = 0, $1513 = 0, $1514 = 0, $1515 = 0, $1516 = 0, $1517 = 0, $1518 = 0, $1519 = 0; + var $152 = 0, $1520 = 0, $1521 = 0, $1522 = 0, $1523 = 0, $1524 = 0, $1525 = 0, $1526 = 0, $1527 = 0, $1528 = 0, $1529 = 0, $153 = 0, $1530 = 0, $1531 = 0, $1532 = 0, $1533 = 0, $1534 = 0, $1535 = 0, $1536 = 0, $1537 = 0; + var $1538 = 0, $1539 = 0, $154 = 0, $1540 = 0, $1541 = 0, $1542 = 0, $1543 = 0, $1544 = 0, $1545 = 0, $1546 = 0, $1547 = 0, $1548 = 0, $1549 = 0, $155 = 0, $1550 = 0, $1551 = 0, $1552 = 0, $1553 = 0, $1554 = 0, $1555 = 0; + var $1556 = 0, $1557 = 0, $1558 = 0, $1559 = 0, $156 = 0, $1560 = 0, $1561 = 0, $1562 = 0, $1563 = 0, $1564 = 0, $1565 = 0, $1566 = 0, $1567 = 0, $1568 = 0, $1569 = 0, $157 = 0, $1570 = 0, $1571 = 0, $1572 = 0, $1573 = 0; + var $1574 = 0, $1575 = 0, $1576 = 0, $1577 = 0, $1578 = 0, $1579 = 0, $158 = 0, $1580 = 0, $1581 = 0, $1582 = 0, $1583 = 0, $1584 = 0, $1585 = 0, $1586 = 0, $1587 = 0, $1588 = 0, $1589 = 0, $159 = 0, $1590 = 0, $1591 = 0; + var $1592 = 0, $1593 = 0, $1594 = 0, $1595 = 0, $1596 = 0, $1597 = 0, $1598 = 0, $1599 = 0, $16 = 0, $160 = 0, $1600 = 0, $1601 = 0, $1602 = 0, $1603 = 0, $1604 = 0, $1605 = 0, $1606 = 0, $1607 = 0, $1608 = 0, $1609 = 0; + var $161 = 0, $1610 = 0, $1611 = 0, $1612 = 0, $1613 = 0, $1614 = 0, $1615 = 0, $1616 = 0, $1617 = 0, $1618 = 0, $1619 = 0, $162 = 0, $1620 = 0, $1621 = 0, $1622 = 0, $1623 = 0, $1624 = 0, $1625 = 0, $1626 = 0, $1627 = 0; + var $1628 = 0, $1629 = 0, $163 = 0, $1630 = 0, $1631 = 0, $1632 = 0, $1633 = 0, $1634 = 0, $1635 = 0, $1636 = 0, $1637 = 0, $1638 = 0, $1639 = 0, $164 = 0, $1640 = 0, $1641 = 0, $1642 = 0, $1643 = 0, $1644 = 0, $1645 = 0; + var $1646 = 0, $1647 = 0, $1648 = 0, $1649 = 0, $165 = 0, $1650 = 0, $1651 = 0, $1652 = 0, $1653 = 0, $1654 = 0, $1655 = 0, $1656 = 0, $1657 = 0, $1658 = 0, $1659 = 0, $166 = 0, $1660 = 0, $1661 = 0, $1662 = 0, $1663 = 0; + var $1664 = 0, $1665 = 0, $1666 = 0, $1667 = 0, $1668 = 0, $1669 = 0, $167 = 0, $1670 = 0, $1671 = 0, $1672 = 0, $1673 = 0, $1674 = 0, $1675 = 0, $1676 = 0, $1677 = 0, $1678 = 0, $1679 = 0, $168 = 0, $1680 = 0, $1681 = 0; + var $1682 = 0, $1683 = 0, $1684 = 0, $1685 = 0, $1686 = 0, $1687 = 0, $1688 = 0, $1689 = 0, $169 = 0, $1690 = 0, $1691 = 0, $1692 = 0, $1693 = 0, $1694 = 0, $1695 = 0, $1696 = 0, $1697 = 0, $1698 = 0, $1699 = 0, $17 = 0; + var $170 = 0, $1700 = 0, $1701 = 0, $1702 = 0, $1703 = 0, $1704 = 0, $1705 = 0, $1706 = 0, $1707 = 0, $1708 = 0, $1709 = 0, $171 = 0, $1710 = 0, $1711 = 0, $1712 = 0, $1713 = 0, $1714 = 0, $1715 = 0, $1716 = 0, $1717 = 0; + var $1718 = 0, $1719 = 0, $172 = 0, $1720 = 0, $1721 = 0, $1722 = 0, $1723 = 0, $1724 = 0, $1725 = 0, $1726 = 0, $1727 = 0, $1728 = 0, $1729 = 0, $173 = 0, $1730 = 0, $1731 = 0, $1732 = 0, $1733 = 0, $1734 = 0, $1735 = 0; + var $1736 = 0, $1737 = 0, $1738 = 0, $1739 = 0, $174 = 0, $1740 = 0, $1741 = 0, $1742 = 0, $1743 = 0, $1744 = 0, $1745 = 0, $1746 = 0, $1747 = 0, $1748 = 0, $1749 = 0, $175 = 0, $1750 = 0, $1751 = 0, $1752 = 0, $1753 = 0; + var $1754 = 0, $1755 = 0, $1756 = 0, $1757 = 0, $1758 = 0, $1759 = 0, $176 = 0, $1760 = 0, $1761 = 0, $1762 = 0, $1763 = 0, $1764 = 0, $1765 = 0, $1766 = 0, $1767 = 0, $1768 = 0, $1769 = 0, $177 = 0, $1770 = 0, $1771 = 0; + var $1772 = 0, $1773 = 0, $1774 = 0, $1775 = 0, $1776 = 0, $1777 = 0, $1778 = 0, $1779 = 0, $178 = 0, $1780 = 0, $1781 = 0, $1782 = 0, $1783 = 0, $1784 = 0, $1785 = 0, $1786 = 0, $1787 = 0, $1788 = 0, $1789 = 0, $179 = 0; + var $1790 = 0, $1791 = 0, $1792 = 0, $1793 = 0, $1794 = 0, $1795 = 0, $1796 = 0, $1797 = 0, $1798 = 0, $1799 = 0, $18 = 0, $180 = 0, $1800 = 0, $1801 = 0, $1802 = 0, $1803 = 0, $1804 = 0, $1805 = 0, $1806 = 0, $1807 = 0; + var $1808 = 0, $1809 = 0, $181 = 0, $1810 = 0, $1811 = 0, $1812 = 0, $1813 = 0, $1814 = 0, $1815 = 0, $1816 = 0, $1817 = 0, $1818 = 0, $1819 = 0, $182 = 0, $1820 = 0, $1821 = 0, $1822 = 0, $1823 = 0, $1824 = 0, $1825 = 0; + var $1826 = 0, $1827 = 0, $1828 = 0, $1829 = 0, $183 = 0, $1830 = 0, $1831 = 0, $1832 = 0, $1833 = 0, $1834 = 0, $1835 = 0, $1836 = 0, $1837 = 0, $1838 = 0, $1839 = 0, $184 = 0, $1840 = 0, $1841 = 0, $1842 = 0, $1843 = 0; + var $1844 = 0, $1845 = 0, $1846 = 0, $1847 = 0, $1848 = 0, $1849 = 0, $185 = 0, $1850 = 0, $1851 = 0, $1852 = 0, $1853 = 0, $1854 = 0, $1855 = 0, $1856 = 0, $1857 = 0, $1858 = 0, $1859 = 0, $186 = 0, $1860 = 0, $1861 = 0; + var $1862 = 0, $1863 = 0, $1864 = 0, $1865 = 0, $1866 = 0, $1867 = 0, $1868 = 0, $1869 = 0, $187 = 0, $1870 = 0, $1871 = 0, $1872 = 0, $1873 = 0, $1874 = 0, $1875 = 0, $1876 = 0, $1877 = 0, $1878 = 0, $1879 = 0, $188 = 0; + var $1880 = 0, $1881 = 0, $1882 = 0, $1883 = 0, $1884 = 0, $1885 = 0, $1886 = 0, $1887 = 0, $1888 = 0, $1889 = 0, $189 = 0, $1890 = 0, $1891 = 0, $1892 = 0, $1893 = 0, $1894 = 0, $1895 = 0, $1896 = 0, $1897 = 0, $1898 = 0; + var $1899 = 0, $19 = 0, $190 = 0, $1900 = 0, $1901 = 0, $1902 = 0, $1903 = 0, $1904 = 0, $1905 = 0, $1906 = 0, $1907 = 0, $1908 = 0, $1909 = 0, $191 = 0, $1910 = 0, $1911 = 0, $1912 = 0, $1913 = 0, $1914 = 0, $1915 = 0; + var $1916 = 0, $1917 = 0, $1918 = 0, $1919 = 0, $192 = 0, $1920 = 0, $1921 = 0, $1922 = 0, $1923 = 0, $1924 = 0, $1925 = 0, $1926 = 0, $1927 = 0, $1928 = 0, $1929 = 0, $193 = 0, $1930 = 0, $1931 = 0, $1932 = 0, $1933 = 0; + var $1934 = 0, $1935 = 0, $1936 = 0, $1937 = 0, $1938 = 0, $1939 = 0, $194 = 0, $1940 = 0, $1941 = 0, $1942 = 0, $1943 = 0, $1944 = 0, $1945 = 0, $1946 = 0, $1947 = 0, $1948 = 0, $1949 = 0, $195 = 0, $1950 = 0, $1951 = 0; + var $1952 = 0, $1953 = 0, $1954 = 0, $1955 = 0, $1956 = 0, $1957 = 0, $1958 = 0, $1959 = 0, $196 = 0, $1960 = 0, $1961 = 0, $1962 = 0, $1963 = 0, $1964 = 0, $1965 = 0, $1966 = 0, $1967 = 0, $1968 = 0, $1969 = 0, $197 = 0; + var $1970 = 0, $1971 = 0, $1972 = 0, $1973 = 0, $1974 = 0, $1975 = 0, $1976 = 0, $1977 = 0, $1978 = 0, $1979 = 0, $198 = 0, $1980 = 0, $1981 = 0, $1982 = 0, $1983 = 0, $1984 = 0, $1985 = 0, $1986 = 0, $1987 = 0, $1988 = 0; + var $1989 = 0, $199 = 0, $1990 = 0, $1991 = 0, $1992 = 0, $1993 = 0, $1994 = 0, $1995 = 0, $1996 = 0, $1997 = 0, $1998 = 0, $1999 = 0, $2 = 0, $20 = 0, $200 = 0, $2000 = 0, $2001 = 0, $2002 = 0, $2003 = 0, $2004 = 0; + var $2005 = 0, $2006 = 0, $2007 = 0, $2008 = 0, $2009 = 0, $201 = 0, $2010 = 0, $2011 = 0, $2012 = 0, $2013 = 0, $2014 = 0, $2015 = 0, $2016 = 0, $2017 = 0, $2018 = 0, $2019 = 0, $202 = 0, $2020 = 0, $2021 = 0, $2022 = 0; + var $2023 = 0, $2024 = 0, $2025 = 0, $2026 = 0, $2027 = 0, $2028 = 0, $2029 = 0, $203 = 0, $2030 = 0, $2031 = 0, $2032 = 0, $2033 = 0, $2034 = 0, $2035 = 0, $2036 = 0, $2037 = 0, $2038 = 0, $2039 = 0, $204 = 0, $2040 = 0; + var $2041 = 0, $2042 = 0, $2043 = 0, $2044 = 0, $2045 = 0, $2046 = 0, $2047 = 0, $2048 = 0, $2049 = 0, $205 = 0, $2050 = 0, $2051 = 0, $2052 = 0, $2053 = 0, $2054 = 0, $2055 = 0, $2056 = 0, $2057 = 0, $2058 = 0, $2059 = 0; + var $206 = 0, $2060 = 0, $2061 = 0, $2062 = 0, $2063 = 0, $2064 = 0, $2065 = 0, $2066 = 0, $2067 = 0, $2068 = 0, $2069 = 0, $207 = 0, $2070 = 0, $2071 = 0, $2072 = 0, $2073 = 0, $2074 = 0, $2075 = 0, $2076 = 0, $2077 = 0; + var $2078 = 0, $2079 = 0, $208 = 0, $2080 = 0, $2081 = 0, $2082 = 0, $2083 = 0, $2084 = 0, $2085 = 0, $2086 = 0, $2087 = 0, $2088 = 0, $2089 = 0, $209 = 0, $2090 = 0, $2091 = 0, $2092 = 0, $2093 = 0, $2094 = 0, $2095 = 0; + var $2096 = 0, $2097 = 0, $2098 = 0, $2099 = 0, $21 = 0, $210 = 0, $2100 = 0, $2101 = 0, $2102 = 0, $2103 = 0, $2104 = 0, $2105 = 0, $2106 = 0, $2107 = 0, $2108 = 0, $2109 = 0, $211 = 0, $2110 = 0, $2111 = 0, $2112 = 0; + var $2113 = 0, $2114 = 0, $2115 = 0, $2116 = 0, $2117 = 0, $2118 = 0, $2119 = 0, $212 = 0, $2120 = 0, $2121 = 0, $2122 = 0, $2123 = 0, $2124 = 0, $2125 = 0, $2126 = 0, $2127 = 0, $2128 = 0, $2129 = 0, $213 = 0, $2130 = 0; + var $2131 = 0, $2132 = 0, $2133 = 0, $2134 = 0, $2135 = 0, $2136 = 0, $2137 = 0, $2138 = 0, $2139 = 0, $214 = 0, $2140 = 0, $2141 = 0, $2142 = 0, $2143 = 0, $2144 = 0, $2145 = 0, $2146 = 0, $2147 = 0, $2148 = 0, $2149 = 0; + var $215 = 0, $2150 = 0, $2151 = 0, $2152 = 0, $2153 = 0, $2154 = 0, $2155 = 0, $2156 = 0, $2157 = 0, $2158 = 0, $2159 = 0, $216 = 0, $2160 = 0, $2161 = 0, $2162 = 0, $2163 = 0, $2164 = 0, $2165 = 0, $2166 = 0, $2167 = 0; + var $2168 = 0, $2169 = 0, $217 = 0, $2170 = 0, $2171 = 0, $2172 = 0, $2173 = 0, $2174 = 0, $2175 = 0, $2176 = 0, $2177 = 0, $2178 = 0, $2179 = 0, $218 = 0, $2180 = 0, $2181 = 0, $2182 = 0, $2183 = 0, $2184 = 0, $2185 = 0; + var $2186 = 0, $2187 = 0, $2188 = 0, $2189 = 0, $219 = 0, $2190 = 0, $2191 = 0, $2192 = 0, $2193 = 0, $2194 = 0, $2195 = 0, $2196 = 0, $2197 = 0, $2198 = 0, $2199 = 0, $22 = 0, $220 = 0, $2200 = 0, $2201 = 0, $2202 = 0; + var $2203 = 0, $2204 = 0, $2205 = 0, $2206 = 0, $2207 = 0, $2208 = 0, $2209 = 0, $221 = 0, $2210 = 0, $2211 = 0, $2212 = 0, $2213 = 0, $2214 = 0, $2215 = 0, $2216 = 0, $2217 = 0, $2218 = 0, $2219 = 0, $222 = 0, $2220 = 0; + var $2221 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0; + var $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0; + var $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0; + var $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0; + var $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0; + var $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0; + var $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0; + var $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0; + var $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0; + var $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0; + var $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0; + var $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0; + var $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0; + var $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0; + var $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0; + var $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0; + var $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0; + var $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0; + var $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0; + var $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0; + var $583 = 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0; + var $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0; + var $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0; + var $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0; + var $655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0; + var $673 = 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0; + var $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0; + var $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0; + var $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0; + var $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0; + var $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0; + var $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0; + var $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0; + var $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0; + var $835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0; + var $853 = 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0; + var $871 = 0, $872 = 0, $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0; + var $89 = 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0; + var $907 = 0, $908 = 0, $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0; + var $925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0; + var $943 = 0, $944 = 0, $945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0; + var $961 = 0, $962 = 0, $963 = 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0; + var $98 = 0, $980 = 0, $981 = 0, $982 = 0, $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0; + var $998 = 0, $999 = 0, $a = 0, $b = 0, $c = 0, $d = 0, $e = 0, $hd = 0, $idata = 0, $tm = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $x = sp; + $0 = $ctx; + $1 = $data; + $2 = $0; + $hd = $2; + $3 = $1; + $idata = $3; + $4 = $hd; + $5 = ((($4)) + 160|0); + $6 = HEAP32[$5>>2]|0; + $a = $6; + $7 = $hd; + $8 = ((($7)) + 164|0); + $9 = HEAP32[$8>>2]|0; + $b = $9; + $10 = $hd; + $11 = ((($10)) + 168|0); + $12 = HEAP32[$11>>2]|0; + $c = $12; + $13 = $hd; + $14 = ((($13)) + 172|0); + $15 = HEAP32[$14>>2]|0; + $d = $15; + $16 = $hd; + $17 = ((($16)) + 176|0); + $18 = HEAP32[$17>>2]|0; + $e = $18; + $19 = $a; + $20 = (_rol_1371($19,5)|0); + $21 = $d; + $22 = $b; + $23 = $c; + $24 = $d; + $25 = $23 ^ $24; + $26 = $22 & $25; + $27 = $21 ^ $26; + $28 = (($20) + ($27))|0; + $29 = (($28) + 1518500249)|0; + $30 = $idata; + $31 = (_buf_get_be32($30)|0); + HEAP32[$x>>2] = $31; + $32 = (($29) + ($31))|0; + $33 = $e; + $34 = (($33) + ($32))|0; + $e = $34; + $35 = $b; + $36 = (_rol_1371($35,30)|0); + $b = $36; + $37 = $e; + $38 = (_rol_1371($37,5)|0); + $39 = $c; + $40 = $a; + $41 = $b; + $42 = $c; + $43 = $41 ^ $42; + $44 = $40 & $43; + $45 = $39 ^ $44; + $46 = (($38) + ($45))|0; + $47 = (($46) + 1518500249)|0; + $48 = $idata; + $49 = ((($48)) + 4|0); + $50 = (_buf_get_be32($49)|0); + $51 = ((($x)) + 4|0); + HEAP32[$51>>2] = $50; + $52 = (($47) + ($50))|0; + $53 = $d; + $54 = (($53) + ($52))|0; + $d = $54; + $55 = $a; + $56 = (_rol_1371($55,30)|0); + $a = $56; + $57 = $d; + $58 = (_rol_1371($57,5)|0); + $59 = $b; + $60 = $e; + $61 = $a; + $62 = $b; + $63 = $61 ^ $62; + $64 = $60 & $63; + $65 = $59 ^ $64; + $66 = (($58) + ($65))|0; + $67 = (($66) + 1518500249)|0; + $68 = $idata; + $69 = ((($68)) + 8|0); + $70 = (_buf_get_be32($69)|0); + $71 = ((($x)) + 8|0); + HEAP32[$71>>2] = $70; + $72 = (($67) + ($70))|0; + $73 = $c; + $74 = (($73) + ($72))|0; + $c = $74; + $75 = $e; + $76 = (_rol_1371($75,30)|0); + $e = $76; + $77 = $c; + $78 = (_rol_1371($77,5)|0); + $79 = $a; + $80 = $d; + $81 = $e; + $82 = $a; + $83 = $81 ^ $82; + $84 = $80 & $83; + $85 = $79 ^ $84; + $86 = (($78) + ($85))|0; + $87 = (($86) + 1518500249)|0; + $88 = $idata; + $89 = ((($88)) + 12|0); + $90 = (_buf_get_be32($89)|0); + $91 = ((($x)) + 12|0); + HEAP32[$91>>2] = $90; + $92 = (($87) + ($90))|0; + $93 = $b; + $94 = (($93) + ($92))|0; + $b = $94; + $95 = $d; + $96 = (_rol_1371($95,30)|0); + $d = $96; + $97 = $b; + $98 = (_rol_1371($97,5)|0); + $99 = $e; + $100 = $c; + $101 = $d; + $102 = $e; + $103 = $101 ^ $102; + $104 = $100 & $103; + $105 = $99 ^ $104; + $106 = (($98) + ($105))|0; + $107 = (($106) + 1518500249)|0; + $108 = $idata; + $109 = ((($108)) + 16|0); + $110 = (_buf_get_be32($109)|0); + $111 = ((($x)) + 16|0); + HEAP32[$111>>2] = $110; + $112 = (($107) + ($110))|0; + $113 = $a; + $114 = (($113) + ($112))|0; + $a = $114; + $115 = $c; + $116 = (_rol_1371($115,30)|0); + $c = $116; + $117 = $a; + $118 = (_rol_1371($117,5)|0); + $119 = $d; + $120 = $b; + $121 = $c; + $122 = $d; + $123 = $121 ^ $122; + $124 = $120 & $123; + $125 = $119 ^ $124; + $126 = (($118) + ($125))|0; + $127 = (($126) + 1518500249)|0; + $128 = $idata; + $129 = ((($128)) + 20|0); + $130 = (_buf_get_be32($129)|0); + $131 = ((($x)) + 20|0); + HEAP32[$131>>2] = $130; + $132 = (($127) + ($130))|0; + $133 = $e; + $134 = (($133) + ($132))|0; + $e = $134; + $135 = $b; + $136 = (_rol_1371($135,30)|0); + $b = $136; + $137 = $e; + $138 = (_rol_1371($137,5)|0); + $139 = $c; + $140 = $a; + $141 = $b; + $142 = $c; + $143 = $141 ^ $142; + $144 = $140 & $143; + $145 = $139 ^ $144; + $146 = (($138) + ($145))|0; + $147 = (($146) + 1518500249)|0; + $148 = $idata; + $149 = ((($148)) + 24|0); + $150 = (_buf_get_be32($149)|0); + $151 = ((($x)) + 24|0); + HEAP32[$151>>2] = $150; + $152 = (($147) + ($150))|0; + $153 = $d; + $154 = (($153) + ($152))|0; + $d = $154; + $155 = $a; + $156 = (_rol_1371($155,30)|0); + $a = $156; + $157 = $d; + $158 = (_rol_1371($157,5)|0); + $159 = $b; + $160 = $e; + $161 = $a; + $162 = $b; + $163 = $161 ^ $162; + $164 = $160 & $163; + $165 = $159 ^ $164; + $166 = (($158) + ($165))|0; + $167 = (($166) + 1518500249)|0; + $168 = $idata; + $169 = ((($168)) + 28|0); + $170 = (_buf_get_be32($169)|0); + $171 = ((($x)) + 28|0); + HEAP32[$171>>2] = $170; + $172 = (($167) + ($170))|0; + $173 = $c; + $174 = (($173) + ($172))|0; + $c = $174; + $175 = $e; + $176 = (_rol_1371($175,30)|0); + $e = $176; + $177 = $c; + $178 = (_rol_1371($177,5)|0); + $179 = $a; + $180 = $d; + $181 = $e; + $182 = $a; + $183 = $181 ^ $182; + $184 = $180 & $183; + $185 = $179 ^ $184; + $186 = (($178) + ($185))|0; + $187 = (($186) + 1518500249)|0; + $188 = $idata; + $189 = ((($188)) + 32|0); + $190 = (_buf_get_be32($189)|0); + $191 = ((($x)) + 32|0); + HEAP32[$191>>2] = $190; + $192 = (($187) + ($190))|0; + $193 = $b; + $194 = (($193) + ($192))|0; + $b = $194; + $195 = $d; + $196 = (_rol_1371($195,30)|0); + $d = $196; + $197 = $b; + $198 = (_rol_1371($197,5)|0); + $199 = $e; + $200 = $c; + $201 = $d; + $202 = $e; + $203 = $201 ^ $202; + $204 = $200 & $203; + $205 = $199 ^ $204; + $206 = (($198) + ($205))|0; + $207 = (($206) + 1518500249)|0; + $208 = $idata; + $209 = ((($208)) + 36|0); + $210 = (_buf_get_be32($209)|0); + $211 = ((($x)) + 36|0); + HEAP32[$211>>2] = $210; + $212 = (($207) + ($210))|0; + $213 = $a; + $214 = (($213) + ($212))|0; + $a = $214; + $215 = $c; + $216 = (_rol_1371($215,30)|0); + $c = $216; + $217 = $a; + $218 = (_rol_1371($217,5)|0); + $219 = $d; + $220 = $b; + $221 = $c; + $222 = $d; + $223 = $221 ^ $222; + $224 = $220 & $223; + $225 = $219 ^ $224; + $226 = (($218) + ($225))|0; + $227 = (($226) + 1518500249)|0; + $228 = $idata; + $229 = ((($228)) + 40|0); + $230 = (_buf_get_be32($229)|0); + $231 = ((($x)) + 40|0); + HEAP32[$231>>2] = $230; + $232 = (($227) + ($230))|0; + $233 = $e; + $234 = (($233) + ($232))|0; + $e = $234; + $235 = $b; + $236 = (_rol_1371($235,30)|0); + $b = $236; + $237 = $e; + $238 = (_rol_1371($237,5)|0); + $239 = $c; + $240 = $a; + $241 = $b; + $242 = $c; + $243 = $241 ^ $242; + $244 = $240 & $243; + $245 = $239 ^ $244; + $246 = (($238) + ($245))|0; + $247 = (($246) + 1518500249)|0; + $248 = $idata; + $249 = ((($248)) + 44|0); + $250 = (_buf_get_be32($249)|0); + $251 = ((($x)) + 44|0); + HEAP32[$251>>2] = $250; + $252 = (($247) + ($250))|0; + $253 = $d; + $254 = (($253) + ($252))|0; + $d = $254; + $255 = $a; + $256 = (_rol_1371($255,30)|0); + $a = $256; + $257 = $d; + $258 = (_rol_1371($257,5)|0); + $259 = $b; + $260 = $e; + $261 = $a; + $262 = $b; + $263 = $261 ^ $262; + $264 = $260 & $263; + $265 = $259 ^ $264; + $266 = (($258) + ($265))|0; + $267 = (($266) + 1518500249)|0; + $268 = $idata; + $269 = ((($268)) + 48|0); + $270 = (_buf_get_be32($269)|0); + $271 = ((($x)) + 48|0); + HEAP32[$271>>2] = $270; + $272 = (($267) + ($270))|0; + $273 = $c; + $274 = (($273) + ($272))|0; + $c = $274; + $275 = $e; + $276 = (_rol_1371($275,30)|0); + $e = $276; + $277 = $c; + $278 = (_rol_1371($277,5)|0); + $279 = $a; + $280 = $d; + $281 = $e; + $282 = $a; + $283 = $281 ^ $282; + $284 = $280 & $283; + $285 = $279 ^ $284; + $286 = (($278) + ($285))|0; + $287 = (($286) + 1518500249)|0; + $288 = $idata; + $289 = ((($288)) + 52|0); + $290 = (_buf_get_be32($289)|0); + $291 = ((($x)) + 52|0); + HEAP32[$291>>2] = $290; + $292 = (($287) + ($290))|0; + $293 = $b; + $294 = (($293) + ($292))|0; + $b = $294; + $295 = $d; + $296 = (_rol_1371($295,30)|0); + $d = $296; + $297 = $b; + $298 = (_rol_1371($297,5)|0); + $299 = $e; + $300 = $c; + $301 = $d; + $302 = $e; + $303 = $301 ^ $302; + $304 = $300 & $303; + $305 = $299 ^ $304; + $306 = (($298) + ($305))|0; + $307 = (($306) + 1518500249)|0; + $308 = $idata; + $309 = ((($308)) + 56|0); + $310 = (_buf_get_be32($309)|0); + $311 = ((($x)) + 56|0); + HEAP32[$311>>2] = $310; + $312 = (($307) + ($310))|0; + $313 = $a; + $314 = (($313) + ($312))|0; + $a = $314; + $315 = $c; + $316 = (_rol_1371($315,30)|0); + $c = $316; + $317 = $a; + $318 = (_rol_1371($317,5)|0); + $319 = $d; + $320 = $b; + $321 = $c; + $322 = $d; + $323 = $321 ^ $322; + $324 = $320 & $323; + $325 = $319 ^ $324; + $326 = (($318) + ($325))|0; + $327 = (($326) + 1518500249)|0; + $328 = $idata; + $329 = ((($328)) + 60|0); + $330 = (_buf_get_be32($329)|0); + $331 = ((($x)) + 60|0); + HEAP32[$331>>2] = $330; + $332 = (($327) + ($330))|0; + $333 = $e; + $334 = (($333) + ($332))|0; + $e = $334; + $335 = $b; + $336 = (_rol_1371($335,30)|0); + $b = $336; + $337 = $e; + $338 = (_rol_1371($337,5)|0); + $339 = $c; + $340 = $a; + $341 = $b; + $342 = $c; + $343 = $341 ^ $342; + $344 = $340 & $343; + $345 = $339 ^ $344; + $346 = (($338) + ($345))|0; + $347 = (($346) + 1518500249)|0; + $348 = HEAP32[$x>>2]|0; + $349 = ((($x)) + 8|0); + $350 = HEAP32[$349>>2]|0; + $351 = $348 ^ $350; + $352 = ((($x)) + 32|0); + $353 = HEAP32[$352>>2]|0; + $354 = $351 ^ $353; + $355 = ((($x)) + 52|0); + $356 = HEAP32[$355>>2]|0; + $357 = $354 ^ $356; + $tm = $357; + $358 = $tm; + $359 = (_rol_1371($358,1)|0); + HEAP32[$x>>2] = $359; + $360 = (($347) + ($359))|0; + $361 = $d; + $362 = (($361) + ($360))|0; + $d = $362; + $363 = $a; + $364 = (_rol_1371($363,30)|0); + $a = $364; + $365 = $d; + $366 = (_rol_1371($365,5)|0); + $367 = $b; + $368 = $e; + $369 = $a; + $370 = $b; + $371 = $369 ^ $370; + $372 = $368 & $371; + $373 = $367 ^ $372; + $374 = (($366) + ($373))|0; + $375 = (($374) + 1518500249)|0; + $376 = ((($x)) + 4|0); + $377 = HEAP32[$376>>2]|0; + $378 = ((($x)) + 12|0); + $379 = HEAP32[$378>>2]|0; + $380 = $377 ^ $379; + $381 = ((($x)) + 36|0); + $382 = HEAP32[$381>>2]|0; + $383 = $380 ^ $382; + $384 = ((($x)) + 56|0); + $385 = HEAP32[$384>>2]|0; + $386 = $383 ^ $385; + $tm = $386; + $387 = $tm; + $388 = (_rol_1371($387,1)|0); + $389 = ((($x)) + 4|0); + HEAP32[$389>>2] = $388; + $390 = (($375) + ($388))|0; + $391 = $c; + $392 = (($391) + ($390))|0; + $c = $392; + $393 = $e; + $394 = (_rol_1371($393,30)|0); + $e = $394; + $395 = $c; + $396 = (_rol_1371($395,5)|0); + $397 = $a; + $398 = $d; + $399 = $e; + $400 = $a; + $401 = $399 ^ $400; + $402 = $398 & $401; + $403 = $397 ^ $402; + $404 = (($396) + ($403))|0; + $405 = (($404) + 1518500249)|0; + $406 = ((($x)) + 8|0); + $407 = HEAP32[$406>>2]|0; + $408 = ((($x)) + 16|0); + $409 = HEAP32[$408>>2]|0; + $410 = $407 ^ $409; + $411 = ((($x)) + 40|0); + $412 = HEAP32[$411>>2]|0; + $413 = $410 ^ $412; + $414 = ((($x)) + 60|0); + $415 = HEAP32[$414>>2]|0; + $416 = $413 ^ $415; + $tm = $416; + $417 = $tm; + $418 = (_rol_1371($417,1)|0); + $419 = ((($x)) + 8|0); + HEAP32[$419>>2] = $418; + $420 = (($405) + ($418))|0; + $421 = $b; + $422 = (($421) + ($420))|0; + $b = $422; + $423 = $d; + $424 = (_rol_1371($423,30)|0); + $d = $424; + $425 = $b; + $426 = (_rol_1371($425,5)|0); + $427 = $e; + $428 = $c; + $429 = $d; + $430 = $e; + $431 = $429 ^ $430; + $432 = $428 & $431; + $433 = $427 ^ $432; + $434 = (($426) + ($433))|0; + $435 = (($434) + 1518500249)|0; + $436 = ((($x)) + 12|0); + $437 = HEAP32[$436>>2]|0; + $438 = ((($x)) + 20|0); + $439 = HEAP32[$438>>2]|0; + $440 = $437 ^ $439; + $441 = ((($x)) + 44|0); + $442 = HEAP32[$441>>2]|0; + $443 = $440 ^ $442; + $444 = HEAP32[$x>>2]|0; + $445 = $443 ^ $444; + $tm = $445; + $446 = $tm; + $447 = (_rol_1371($446,1)|0); + $448 = ((($x)) + 12|0); + HEAP32[$448>>2] = $447; + $449 = (($435) + ($447))|0; + $450 = $a; + $451 = (($450) + ($449))|0; + $a = $451; + $452 = $c; + $453 = (_rol_1371($452,30)|0); + $c = $453; + $454 = $a; + $455 = (_rol_1371($454,5)|0); + $456 = $b; + $457 = $c; + $458 = $456 ^ $457; + $459 = $d; + $460 = $458 ^ $459; + $461 = (($455) + ($460))|0; + $462 = (($461) + 1859775393)|0; + $463 = ((($x)) + 16|0); + $464 = HEAP32[$463>>2]|0; + $465 = ((($x)) + 24|0); + $466 = HEAP32[$465>>2]|0; + $467 = $464 ^ $466; + $468 = ((($x)) + 48|0); + $469 = HEAP32[$468>>2]|0; + $470 = $467 ^ $469; + $471 = ((($x)) + 4|0); + $472 = HEAP32[$471>>2]|0; + $473 = $470 ^ $472; + $tm = $473; + $474 = $tm; + $475 = (_rol_1371($474,1)|0); + $476 = ((($x)) + 16|0); + HEAP32[$476>>2] = $475; + $477 = (($462) + ($475))|0; + $478 = $e; + $479 = (($478) + ($477))|0; + $e = $479; + $480 = $b; + $481 = (_rol_1371($480,30)|0); + $b = $481; + $482 = $e; + $483 = (_rol_1371($482,5)|0); + $484 = $a; + $485 = $b; + $486 = $484 ^ $485; + $487 = $c; + $488 = $486 ^ $487; + $489 = (($483) + ($488))|0; + $490 = (($489) + 1859775393)|0; + $491 = ((($x)) + 20|0); + $492 = HEAP32[$491>>2]|0; + $493 = ((($x)) + 28|0); + $494 = HEAP32[$493>>2]|0; + $495 = $492 ^ $494; + $496 = ((($x)) + 52|0); + $497 = HEAP32[$496>>2]|0; + $498 = $495 ^ $497; + $499 = ((($x)) + 8|0); + $500 = HEAP32[$499>>2]|0; + $501 = $498 ^ $500; + $tm = $501; + $502 = $tm; + $503 = (_rol_1371($502,1)|0); + $504 = ((($x)) + 20|0); + HEAP32[$504>>2] = $503; + $505 = (($490) + ($503))|0; + $506 = $d; + $507 = (($506) + ($505))|0; + $d = $507; + $508 = $a; + $509 = (_rol_1371($508,30)|0); + $a = $509; + $510 = $d; + $511 = (_rol_1371($510,5)|0); + $512 = $e; + $513 = $a; + $514 = $512 ^ $513; + $515 = $b; + $516 = $514 ^ $515; + $517 = (($511) + ($516))|0; + $518 = (($517) + 1859775393)|0; + $519 = ((($x)) + 24|0); + $520 = HEAP32[$519>>2]|0; + $521 = ((($x)) + 32|0); + $522 = HEAP32[$521>>2]|0; + $523 = $520 ^ $522; + $524 = ((($x)) + 56|0); + $525 = HEAP32[$524>>2]|0; + $526 = $523 ^ $525; + $527 = ((($x)) + 12|0); + $528 = HEAP32[$527>>2]|0; + $529 = $526 ^ $528; + $tm = $529; + $530 = $tm; + $531 = (_rol_1371($530,1)|0); + $532 = ((($x)) + 24|0); + HEAP32[$532>>2] = $531; + $533 = (($518) + ($531))|0; + $534 = $c; + $535 = (($534) + ($533))|0; + $c = $535; + $536 = $e; + $537 = (_rol_1371($536,30)|0); + $e = $537; + $538 = $c; + $539 = (_rol_1371($538,5)|0); + $540 = $d; + $541 = $e; + $542 = $540 ^ $541; + $543 = $a; + $544 = $542 ^ $543; + $545 = (($539) + ($544))|0; + $546 = (($545) + 1859775393)|0; + $547 = ((($x)) + 28|0); + $548 = HEAP32[$547>>2]|0; + $549 = ((($x)) + 36|0); + $550 = HEAP32[$549>>2]|0; + $551 = $548 ^ $550; + $552 = ((($x)) + 60|0); + $553 = HEAP32[$552>>2]|0; + $554 = $551 ^ $553; + $555 = ((($x)) + 16|0); + $556 = HEAP32[$555>>2]|0; + $557 = $554 ^ $556; + $tm = $557; + $558 = $tm; + $559 = (_rol_1371($558,1)|0); + $560 = ((($x)) + 28|0); + HEAP32[$560>>2] = $559; + $561 = (($546) + ($559))|0; + $562 = $b; + $563 = (($562) + ($561))|0; + $b = $563; + $564 = $d; + $565 = (_rol_1371($564,30)|0); + $d = $565; + $566 = $b; + $567 = (_rol_1371($566,5)|0); + $568 = $c; + $569 = $d; + $570 = $568 ^ $569; + $571 = $e; + $572 = $570 ^ $571; + $573 = (($567) + ($572))|0; + $574 = (($573) + 1859775393)|0; + $575 = ((($x)) + 32|0); + $576 = HEAP32[$575>>2]|0; + $577 = ((($x)) + 40|0); + $578 = HEAP32[$577>>2]|0; + $579 = $576 ^ $578; + $580 = HEAP32[$x>>2]|0; + $581 = $579 ^ $580; + $582 = ((($x)) + 20|0); + $583 = HEAP32[$582>>2]|0; + $584 = $581 ^ $583; + $tm = $584; + $585 = $tm; + $586 = (_rol_1371($585,1)|0); + $587 = ((($x)) + 32|0); + HEAP32[$587>>2] = $586; + $588 = (($574) + ($586))|0; + $589 = $a; + $590 = (($589) + ($588))|0; + $a = $590; + $591 = $c; + $592 = (_rol_1371($591,30)|0); + $c = $592; + $593 = $a; + $594 = (_rol_1371($593,5)|0); + $595 = $b; + $596 = $c; + $597 = $595 ^ $596; + $598 = $d; + $599 = $597 ^ $598; + $600 = (($594) + ($599))|0; + $601 = (($600) + 1859775393)|0; + $602 = ((($x)) + 36|0); + $603 = HEAP32[$602>>2]|0; + $604 = ((($x)) + 44|0); + $605 = HEAP32[$604>>2]|0; + $606 = $603 ^ $605; + $607 = ((($x)) + 4|0); + $608 = HEAP32[$607>>2]|0; + $609 = $606 ^ $608; + $610 = ((($x)) + 24|0); + $611 = HEAP32[$610>>2]|0; + $612 = $609 ^ $611; + $tm = $612; + $613 = $tm; + $614 = (_rol_1371($613,1)|0); + $615 = ((($x)) + 36|0); + HEAP32[$615>>2] = $614; + $616 = (($601) + ($614))|0; + $617 = $e; + $618 = (($617) + ($616))|0; + $e = $618; + $619 = $b; + $620 = (_rol_1371($619,30)|0); + $b = $620; + $621 = $e; + $622 = (_rol_1371($621,5)|0); + $623 = $a; + $624 = $b; + $625 = $623 ^ $624; + $626 = $c; + $627 = $625 ^ $626; + $628 = (($622) + ($627))|0; + $629 = (($628) + 1859775393)|0; + $630 = ((($x)) + 40|0); + $631 = HEAP32[$630>>2]|0; + $632 = ((($x)) + 48|0); + $633 = HEAP32[$632>>2]|0; + $634 = $631 ^ $633; + $635 = ((($x)) + 8|0); + $636 = HEAP32[$635>>2]|0; + $637 = $634 ^ $636; + $638 = ((($x)) + 28|0); + $639 = HEAP32[$638>>2]|0; + $640 = $637 ^ $639; + $tm = $640; + $641 = $tm; + $642 = (_rol_1371($641,1)|0); + $643 = ((($x)) + 40|0); + HEAP32[$643>>2] = $642; + $644 = (($629) + ($642))|0; + $645 = $d; + $646 = (($645) + ($644))|0; + $d = $646; + $647 = $a; + $648 = (_rol_1371($647,30)|0); + $a = $648; + $649 = $d; + $650 = (_rol_1371($649,5)|0); + $651 = $e; + $652 = $a; + $653 = $651 ^ $652; + $654 = $b; + $655 = $653 ^ $654; + $656 = (($650) + ($655))|0; + $657 = (($656) + 1859775393)|0; + $658 = ((($x)) + 44|0); + $659 = HEAP32[$658>>2]|0; + $660 = ((($x)) + 52|0); + $661 = HEAP32[$660>>2]|0; + $662 = $659 ^ $661; + $663 = ((($x)) + 12|0); + $664 = HEAP32[$663>>2]|0; + $665 = $662 ^ $664; + $666 = ((($x)) + 32|0); + $667 = HEAP32[$666>>2]|0; + $668 = $665 ^ $667; + $tm = $668; + $669 = $tm; + $670 = (_rol_1371($669,1)|0); + $671 = ((($x)) + 44|0); + HEAP32[$671>>2] = $670; + $672 = (($657) + ($670))|0; + $673 = $c; + $674 = (($673) + ($672))|0; + $c = $674; + $675 = $e; + $676 = (_rol_1371($675,30)|0); + $e = $676; + $677 = $c; + $678 = (_rol_1371($677,5)|0); + $679 = $d; + $680 = $e; + $681 = $679 ^ $680; + $682 = $a; + $683 = $681 ^ $682; + $684 = (($678) + ($683))|0; + $685 = (($684) + 1859775393)|0; + $686 = ((($x)) + 48|0); + $687 = HEAP32[$686>>2]|0; + $688 = ((($x)) + 56|0); + $689 = HEAP32[$688>>2]|0; + $690 = $687 ^ $689; + $691 = ((($x)) + 16|0); + $692 = HEAP32[$691>>2]|0; + $693 = $690 ^ $692; + $694 = ((($x)) + 36|0); + $695 = HEAP32[$694>>2]|0; + $696 = $693 ^ $695; + $tm = $696; + $697 = $tm; + $698 = (_rol_1371($697,1)|0); + $699 = ((($x)) + 48|0); + HEAP32[$699>>2] = $698; + $700 = (($685) + ($698))|0; + $701 = $b; + $702 = (($701) + ($700))|0; + $b = $702; + $703 = $d; + $704 = (_rol_1371($703,30)|0); + $d = $704; + $705 = $b; + $706 = (_rol_1371($705,5)|0); + $707 = $c; + $708 = $d; + $709 = $707 ^ $708; + $710 = $e; + $711 = $709 ^ $710; + $712 = (($706) + ($711))|0; + $713 = (($712) + 1859775393)|0; + $714 = ((($x)) + 52|0); + $715 = HEAP32[$714>>2]|0; + $716 = ((($x)) + 60|0); + $717 = HEAP32[$716>>2]|0; + $718 = $715 ^ $717; + $719 = ((($x)) + 20|0); + $720 = HEAP32[$719>>2]|0; + $721 = $718 ^ $720; + $722 = ((($x)) + 40|0); + $723 = HEAP32[$722>>2]|0; + $724 = $721 ^ $723; + $tm = $724; + $725 = $tm; + $726 = (_rol_1371($725,1)|0); + $727 = ((($x)) + 52|0); + HEAP32[$727>>2] = $726; + $728 = (($713) + ($726))|0; + $729 = $a; + $730 = (($729) + ($728))|0; + $a = $730; + $731 = $c; + $732 = (_rol_1371($731,30)|0); + $c = $732; + $733 = $a; + $734 = (_rol_1371($733,5)|0); + $735 = $b; + $736 = $c; + $737 = $735 ^ $736; + $738 = $d; + $739 = $737 ^ $738; + $740 = (($734) + ($739))|0; + $741 = (($740) + 1859775393)|0; + $742 = ((($x)) + 56|0); + $743 = HEAP32[$742>>2]|0; + $744 = HEAP32[$x>>2]|0; + $745 = $743 ^ $744; + $746 = ((($x)) + 24|0); + $747 = HEAP32[$746>>2]|0; + $748 = $745 ^ $747; + $749 = ((($x)) + 44|0); + $750 = HEAP32[$749>>2]|0; + $751 = $748 ^ $750; + $tm = $751; + $752 = $tm; + $753 = (_rol_1371($752,1)|0); + $754 = ((($x)) + 56|0); + HEAP32[$754>>2] = $753; + $755 = (($741) + ($753))|0; + $756 = $e; + $757 = (($756) + ($755))|0; + $e = $757; + $758 = $b; + $759 = (_rol_1371($758,30)|0); + $b = $759; + $760 = $e; + $761 = (_rol_1371($760,5)|0); + $762 = $a; + $763 = $b; + $764 = $762 ^ $763; + $765 = $c; + $766 = $764 ^ $765; + $767 = (($761) + ($766))|0; + $768 = (($767) + 1859775393)|0; + $769 = ((($x)) + 60|0); + $770 = HEAP32[$769>>2]|0; + $771 = ((($x)) + 4|0); + $772 = HEAP32[$771>>2]|0; + $773 = $770 ^ $772; + $774 = ((($x)) + 28|0); + $775 = HEAP32[$774>>2]|0; + $776 = $773 ^ $775; + $777 = ((($x)) + 48|0); + $778 = HEAP32[$777>>2]|0; + $779 = $776 ^ $778; + $tm = $779; + $780 = $tm; + $781 = (_rol_1371($780,1)|0); + $782 = ((($x)) + 60|0); + HEAP32[$782>>2] = $781; + $783 = (($768) + ($781))|0; + $784 = $d; + $785 = (($784) + ($783))|0; + $d = $785; + $786 = $a; + $787 = (_rol_1371($786,30)|0); + $a = $787; + $788 = $d; + $789 = (_rol_1371($788,5)|0); + $790 = $e; + $791 = $a; + $792 = $790 ^ $791; + $793 = $b; + $794 = $792 ^ $793; + $795 = (($789) + ($794))|0; + $796 = (($795) + 1859775393)|0; + $797 = HEAP32[$x>>2]|0; + $798 = ((($x)) + 8|0); + $799 = HEAP32[$798>>2]|0; + $800 = $797 ^ $799; + $801 = ((($x)) + 32|0); + $802 = HEAP32[$801>>2]|0; + $803 = $800 ^ $802; + $804 = ((($x)) + 52|0); + $805 = HEAP32[$804>>2]|0; + $806 = $803 ^ $805; + $tm = $806; + $807 = $tm; + $808 = (_rol_1371($807,1)|0); + HEAP32[$x>>2] = $808; + $809 = (($796) + ($808))|0; + $810 = $c; + $811 = (($810) + ($809))|0; + $c = $811; + $812 = $e; + $813 = (_rol_1371($812,30)|0); + $e = $813; + $814 = $c; + $815 = (_rol_1371($814,5)|0); + $816 = $d; + $817 = $e; + $818 = $816 ^ $817; + $819 = $a; + $820 = $818 ^ $819; + $821 = (($815) + ($820))|0; + $822 = (($821) + 1859775393)|0; + $823 = ((($x)) + 4|0); + $824 = HEAP32[$823>>2]|0; + $825 = ((($x)) + 12|0); + $826 = HEAP32[$825>>2]|0; + $827 = $824 ^ $826; + $828 = ((($x)) + 36|0); + $829 = HEAP32[$828>>2]|0; + $830 = $827 ^ $829; + $831 = ((($x)) + 56|0); + $832 = HEAP32[$831>>2]|0; + $833 = $830 ^ $832; + $tm = $833; + $834 = $tm; + $835 = (_rol_1371($834,1)|0); + $836 = ((($x)) + 4|0); + HEAP32[$836>>2] = $835; + $837 = (($822) + ($835))|0; + $838 = $b; + $839 = (($838) + ($837))|0; + $b = $839; + $840 = $d; + $841 = (_rol_1371($840,30)|0); + $d = $841; + $842 = $b; + $843 = (_rol_1371($842,5)|0); + $844 = $c; + $845 = $d; + $846 = $844 ^ $845; + $847 = $e; + $848 = $846 ^ $847; + $849 = (($843) + ($848))|0; + $850 = (($849) + 1859775393)|0; + $851 = ((($x)) + 8|0); + $852 = HEAP32[$851>>2]|0; + $853 = ((($x)) + 16|0); + $854 = HEAP32[$853>>2]|0; + $855 = $852 ^ $854; + $856 = ((($x)) + 40|0); + $857 = HEAP32[$856>>2]|0; + $858 = $855 ^ $857; + $859 = ((($x)) + 60|0); + $860 = HEAP32[$859>>2]|0; + $861 = $858 ^ $860; + $tm = $861; + $862 = $tm; + $863 = (_rol_1371($862,1)|0); + $864 = ((($x)) + 8|0); + HEAP32[$864>>2] = $863; + $865 = (($850) + ($863))|0; + $866 = $a; + $867 = (($866) + ($865))|0; + $a = $867; + $868 = $c; + $869 = (_rol_1371($868,30)|0); + $c = $869; + $870 = $a; + $871 = (_rol_1371($870,5)|0); + $872 = $b; + $873 = $c; + $874 = $872 ^ $873; + $875 = $d; + $876 = $874 ^ $875; + $877 = (($871) + ($876))|0; + $878 = (($877) + 1859775393)|0; + $879 = ((($x)) + 12|0); + $880 = HEAP32[$879>>2]|0; + $881 = ((($x)) + 20|0); + $882 = HEAP32[$881>>2]|0; + $883 = $880 ^ $882; + $884 = ((($x)) + 44|0); + $885 = HEAP32[$884>>2]|0; + $886 = $883 ^ $885; + $887 = HEAP32[$x>>2]|0; + $888 = $886 ^ $887; + $tm = $888; + $889 = $tm; + $890 = (_rol_1371($889,1)|0); + $891 = ((($x)) + 12|0); + HEAP32[$891>>2] = $890; + $892 = (($878) + ($890))|0; + $893 = $e; + $894 = (($893) + ($892))|0; + $e = $894; + $895 = $b; + $896 = (_rol_1371($895,30)|0); + $b = $896; + $897 = $e; + $898 = (_rol_1371($897,5)|0); + $899 = $a; + $900 = $b; + $901 = $899 ^ $900; + $902 = $c; + $903 = $901 ^ $902; + $904 = (($898) + ($903))|0; + $905 = (($904) + 1859775393)|0; + $906 = ((($x)) + 16|0); + $907 = HEAP32[$906>>2]|0; + $908 = ((($x)) + 24|0); + $909 = HEAP32[$908>>2]|0; + $910 = $907 ^ $909; + $911 = ((($x)) + 48|0); + $912 = HEAP32[$911>>2]|0; + $913 = $910 ^ $912; + $914 = ((($x)) + 4|0); + $915 = HEAP32[$914>>2]|0; + $916 = $913 ^ $915; + $tm = $916; + $917 = $tm; + $918 = (_rol_1371($917,1)|0); + $919 = ((($x)) + 16|0); + HEAP32[$919>>2] = $918; + $920 = (($905) + ($918))|0; + $921 = $d; + $922 = (($921) + ($920))|0; + $d = $922; + $923 = $a; + $924 = (_rol_1371($923,30)|0); + $a = $924; + $925 = $d; + $926 = (_rol_1371($925,5)|0); + $927 = $e; + $928 = $a; + $929 = $927 ^ $928; + $930 = $b; + $931 = $929 ^ $930; + $932 = (($926) + ($931))|0; + $933 = (($932) + 1859775393)|0; + $934 = ((($x)) + 20|0); + $935 = HEAP32[$934>>2]|0; + $936 = ((($x)) + 28|0); + $937 = HEAP32[$936>>2]|0; + $938 = $935 ^ $937; + $939 = ((($x)) + 52|0); + $940 = HEAP32[$939>>2]|0; + $941 = $938 ^ $940; + $942 = ((($x)) + 8|0); + $943 = HEAP32[$942>>2]|0; + $944 = $941 ^ $943; + $tm = $944; + $945 = $tm; + $946 = (_rol_1371($945,1)|0); + $947 = ((($x)) + 20|0); + HEAP32[$947>>2] = $946; + $948 = (($933) + ($946))|0; + $949 = $c; + $950 = (($949) + ($948))|0; + $c = $950; + $951 = $e; + $952 = (_rol_1371($951,30)|0); + $e = $952; + $953 = $c; + $954 = (_rol_1371($953,5)|0); + $955 = $d; + $956 = $e; + $957 = $955 ^ $956; + $958 = $a; + $959 = $957 ^ $958; + $960 = (($954) + ($959))|0; + $961 = (($960) + 1859775393)|0; + $962 = ((($x)) + 24|0); + $963 = HEAP32[$962>>2]|0; + $964 = ((($x)) + 32|0); + $965 = HEAP32[$964>>2]|0; + $966 = $963 ^ $965; + $967 = ((($x)) + 56|0); + $968 = HEAP32[$967>>2]|0; + $969 = $966 ^ $968; + $970 = ((($x)) + 12|0); + $971 = HEAP32[$970>>2]|0; + $972 = $969 ^ $971; + $tm = $972; + $973 = $tm; + $974 = (_rol_1371($973,1)|0); + $975 = ((($x)) + 24|0); + HEAP32[$975>>2] = $974; + $976 = (($961) + ($974))|0; + $977 = $b; + $978 = (($977) + ($976))|0; + $b = $978; + $979 = $d; + $980 = (_rol_1371($979,30)|0); + $d = $980; + $981 = $b; + $982 = (_rol_1371($981,5)|0); + $983 = $c; + $984 = $d; + $985 = $983 ^ $984; + $986 = $e; + $987 = $985 ^ $986; + $988 = (($982) + ($987))|0; + $989 = (($988) + 1859775393)|0; + $990 = ((($x)) + 28|0); + $991 = HEAP32[$990>>2]|0; + $992 = ((($x)) + 36|0); + $993 = HEAP32[$992>>2]|0; + $994 = $991 ^ $993; + $995 = ((($x)) + 60|0); + $996 = HEAP32[$995>>2]|0; + $997 = $994 ^ $996; + $998 = ((($x)) + 16|0); + $999 = HEAP32[$998>>2]|0; + $1000 = $997 ^ $999; + $tm = $1000; + $1001 = $tm; + $1002 = (_rol_1371($1001,1)|0); + $1003 = ((($x)) + 28|0); + HEAP32[$1003>>2] = $1002; + $1004 = (($989) + ($1002))|0; + $1005 = $a; + $1006 = (($1005) + ($1004))|0; + $a = $1006; + $1007 = $c; + $1008 = (_rol_1371($1007,30)|0); + $c = $1008; + $1009 = $a; + $1010 = (_rol_1371($1009,5)|0); + $1011 = $b; + $1012 = $c; + $1013 = $1011 & $1012; + $1014 = $d; + $1015 = $b; + $1016 = $c; + $1017 = $1015 | $1016; + $1018 = $1014 & $1017; + $1019 = $1013 | $1018; + $1020 = (($1010) + ($1019))|0; + $1021 = (($1020) + -1894007588)|0; + $1022 = ((($x)) + 32|0); + $1023 = HEAP32[$1022>>2]|0; + $1024 = ((($x)) + 40|0); + $1025 = HEAP32[$1024>>2]|0; + $1026 = $1023 ^ $1025; + $1027 = HEAP32[$x>>2]|0; + $1028 = $1026 ^ $1027; + $1029 = ((($x)) + 20|0); + $1030 = HEAP32[$1029>>2]|0; + $1031 = $1028 ^ $1030; + $tm = $1031; + $1032 = $tm; + $1033 = (_rol_1371($1032,1)|0); + $1034 = ((($x)) + 32|0); + HEAP32[$1034>>2] = $1033; + $1035 = (($1021) + ($1033))|0; + $1036 = $e; + $1037 = (($1036) + ($1035))|0; + $e = $1037; + $1038 = $b; + $1039 = (_rol_1371($1038,30)|0); + $b = $1039; + $1040 = $e; + $1041 = (_rol_1371($1040,5)|0); + $1042 = $a; + $1043 = $b; + $1044 = $1042 & $1043; + $1045 = $c; + $1046 = $a; + $1047 = $b; + $1048 = $1046 | $1047; + $1049 = $1045 & $1048; + $1050 = $1044 | $1049; + $1051 = (($1041) + ($1050))|0; + $1052 = (($1051) + -1894007588)|0; + $1053 = ((($x)) + 36|0); + $1054 = HEAP32[$1053>>2]|0; + $1055 = ((($x)) + 44|0); + $1056 = HEAP32[$1055>>2]|0; + $1057 = $1054 ^ $1056; + $1058 = ((($x)) + 4|0); + $1059 = HEAP32[$1058>>2]|0; + $1060 = $1057 ^ $1059; + $1061 = ((($x)) + 24|0); + $1062 = HEAP32[$1061>>2]|0; + $1063 = $1060 ^ $1062; + $tm = $1063; + $1064 = $tm; + $1065 = (_rol_1371($1064,1)|0); + $1066 = ((($x)) + 36|0); + HEAP32[$1066>>2] = $1065; + $1067 = (($1052) + ($1065))|0; + $1068 = $d; + $1069 = (($1068) + ($1067))|0; + $d = $1069; + $1070 = $a; + $1071 = (_rol_1371($1070,30)|0); + $a = $1071; + $1072 = $d; + $1073 = (_rol_1371($1072,5)|0); + $1074 = $e; + $1075 = $a; + $1076 = $1074 & $1075; + $1077 = $b; + $1078 = $e; + $1079 = $a; + $1080 = $1078 | $1079; + $1081 = $1077 & $1080; + $1082 = $1076 | $1081; + $1083 = (($1073) + ($1082))|0; + $1084 = (($1083) + -1894007588)|0; + $1085 = ((($x)) + 40|0); + $1086 = HEAP32[$1085>>2]|0; + $1087 = ((($x)) + 48|0); + $1088 = HEAP32[$1087>>2]|0; + $1089 = $1086 ^ $1088; + $1090 = ((($x)) + 8|0); + $1091 = HEAP32[$1090>>2]|0; + $1092 = $1089 ^ $1091; + $1093 = ((($x)) + 28|0); + $1094 = HEAP32[$1093>>2]|0; + $1095 = $1092 ^ $1094; + $tm = $1095; + $1096 = $tm; + $1097 = (_rol_1371($1096,1)|0); + $1098 = ((($x)) + 40|0); + HEAP32[$1098>>2] = $1097; + $1099 = (($1084) + ($1097))|0; + $1100 = $c; + $1101 = (($1100) + ($1099))|0; + $c = $1101; + $1102 = $e; + $1103 = (_rol_1371($1102,30)|0); + $e = $1103; + $1104 = $c; + $1105 = (_rol_1371($1104,5)|0); + $1106 = $d; + $1107 = $e; + $1108 = $1106 & $1107; + $1109 = $a; + $1110 = $d; + $1111 = $e; + $1112 = $1110 | $1111; + $1113 = $1109 & $1112; + $1114 = $1108 | $1113; + $1115 = (($1105) + ($1114))|0; + $1116 = (($1115) + -1894007588)|0; + $1117 = ((($x)) + 44|0); + $1118 = HEAP32[$1117>>2]|0; + $1119 = ((($x)) + 52|0); + $1120 = HEAP32[$1119>>2]|0; + $1121 = $1118 ^ $1120; + $1122 = ((($x)) + 12|0); + $1123 = HEAP32[$1122>>2]|0; + $1124 = $1121 ^ $1123; + $1125 = ((($x)) + 32|0); + $1126 = HEAP32[$1125>>2]|0; + $1127 = $1124 ^ $1126; + $tm = $1127; + $1128 = $tm; + $1129 = (_rol_1371($1128,1)|0); + $1130 = ((($x)) + 44|0); + HEAP32[$1130>>2] = $1129; + $1131 = (($1116) + ($1129))|0; + $1132 = $b; + $1133 = (($1132) + ($1131))|0; + $b = $1133; + $1134 = $d; + $1135 = (_rol_1371($1134,30)|0); + $d = $1135; + $1136 = $b; + $1137 = (_rol_1371($1136,5)|0); + $1138 = $c; + $1139 = $d; + $1140 = $1138 & $1139; + $1141 = $e; + $1142 = $c; + $1143 = $d; + $1144 = $1142 | $1143; + $1145 = $1141 & $1144; + $1146 = $1140 | $1145; + $1147 = (($1137) + ($1146))|0; + $1148 = (($1147) + -1894007588)|0; + $1149 = ((($x)) + 48|0); + $1150 = HEAP32[$1149>>2]|0; + $1151 = ((($x)) + 56|0); + $1152 = HEAP32[$1151>>2]|0; + $1153 = $1150 ^ $1152; + $1154 = ((($x)) + 16|0); + $1155 = HEAP32[$1154>>2]|0; + $1156 = $1153 ^ $1155; + $1157 = ((($x)) + 36|0); + $1158 = HEAP32[$1157>>2]|0; + $1159 = $1156 ^ $1158; + $tm = $1159; + $1160 = $tm; + $1161 = (_rol_1371($1160,1)|0); + $1162 = ((($x)) + 48|0); + HEAP32[$1162>>2] = $1161; + $1163 = (($1148) + ($1161))|0; + $1164 = $a; + $1165 = (($1164) + ($1163))|0; + $a = $1165; + $1166 = $c; + $1167 = (_rol_1371($1166,30)|0); + $c = $1167; + $1168 = $a; + $1169 = (_rol_1371($1168,5)|0); + $1170 = $b; + $1171 = $c; + $1172 = $1170 & $1171; + $1173 = $d; + $1174 = $b; + $1175 = $c; + $1176 = $1174 | $1175; + $1177 = $1173 & $1176; + $1178 = $1172 | $1177; + $1179 = (($1169) + ($1178))|0; + $1180 = (($1179) + -1894007588)|0; + $1181 = ((($x)) + 52|0); + $1182 = HEAP32[$1181>>2]|0; + $1183 = ((($x)) + 60|0); + $1184 = HEAP32[$1183>>2]|0; + $1185 = $1182 ^ $1184; + $1186 = ((($x)) + 20|0); + $1187 = HEAP32[$1186>>2]|0; + $1188 = $1185 ^ $1187; + $1189 = ((($x)) + 40|0); + $1190 = HEAP32[$1189>>2]|0; + $1191 = $1188 ^ $1190; + $tm = $1191; + $1192 = $tm; + $1193 = (_rol_1371($1192,1)|0); + $1194 = ((($x)) + 52|0); + HEAP32[$1194>>2] = $1193; + $1195 = (($1180) + ($1193))|0; + $1196 = $e; + $1197 = (($1196) + ($1195))|0; + $e = $1197; + $1198 = $b; + $1199 = (_rol_1371($1198,30)|0); + $b = $1199; + $1200 = $e; + $1201 = (_rol_1371($1200,5)|0); + $1202 = $a; + $1203 = $b; + $1204 = $1202 & $1203; + $1205 = $c; + $1206 = $a; + $1207 = $b; + $1208 = $1206 | $1207; + $1209 = $1205 & $1208; + $1210 = $1204 | $1209; + $1211 = (($1201) + ($1210))|0; + $1212 = (($1211) + -1894007588)|0; + $1213 = ((($x)) + 56|0); + $1214 = HEAP32[$1213>>2]|0; + $1215 = HEAP32[$x>>2]|0; + $1216 = $1214 ^ $1215; + $1217 = ((($x)) + 24|0); + $1218 = HEAP32[$1217>>2]|0; + $1219 = $1216 ^ $1218; + $1220 = ((($x)) + 44|0); + $1221 = HEAP32[$1220>>2]|0; + $1222 = $1219 ^ $1221; + $tm = $1222; + $1223 = $tm; + $1224 = (_rol_1371($1223,1)|0); + $1225 = ((($x)) + 56|0); + HEAP32[$1225>>2] = $1224; + $1226 = (($1212) + ($1224))|0; + $1227 = $d; + $1228 = (($1227) + ($1226))|0; + $d = $1228; + $1229 = $a; + $1230 = (_rol_1371($1229,30)|0); + $a = $1230; + $1231 = $d; + $1232 = (_rol_1371($1231,5)|0); + $1233 = $e; + $1234 = $a; + $1235 = $1233 & $1234; + $1236 = $b; + $1237 = $e; + $1238 = $a; + $1239 = $1237 | $1238; + $1240 = $1236 & $1239; + $1241 = $1235 | $1240; + $1242 = (($1232) + ($1241))|0; + $1243 = (($1242) + -1894007588)|0; + $1244 = ((($x)) + 60|0); + $1245 = HEAP32[$1244>>2]|0; + $1246 = ((($x)) + 4|0); + $1247 = HEAP32[$1246>>2]|0; + $1248 = $1245 ^ $1247; + $1249 = ((($x)) + 28|0); + $1250 = HEAP32[$1249>>2]|0; + $1251 = $1248 ^ $1250; + $1252 = ((($x)) + 48|0); + $1253 = HEAP32[$1252>>2]|0; + $1254 = $1251 ^ $1253; + $tm = $1254; + $1255 = $tm; + $1256 = (_rol_1371($1255,1)|0); + $1257 = ((($x)) + 60|0); + HEAP32[$1257>>2] = $1256; + $1258 = (($1243) + ($1256))|0; + $1259 = $c; + $1260 = (($1259) + ($1258))|0; + $c = $1260; + $1261 = $e; + $1262 = (_rol_1371($1261,30)|0); + $e = $1262; + $1263 = $c; + $1264 = (_rol_1371($1263,5)|0); + $1265 = $d; + $1266 = $e; + $1267 = $1265 & $1266; + $1268 = $a; + $1269 = $d; + $1270 = $e; + $1271 = $1269 | $1270; + $1272 = $1268 & $1271; + $1273 = $1267 | $1272; + $1274 = (($1264) + ($1273))|0; + $1275 = (($1274) + -1894007588)|0; + $1276 = HEAP32[$x>>2]|0; + $1277 = ((($x)) + 8|0); + $1278 = HEAP32[$1277>>2]|0; + $1279 = $1276 ^ $1278; + $1280 = ((($x)) + 32|0); + $1281 = HEAP32[$1280>>2]|0; + $1282 = $1279 ^ $1281; + $1283 = ((($x)) + 52|0); + $1284 = HEAP32[$1283>>2]|0; + $1285 = $1282 ^ $1284; + $tm = $1285; + $1286 = $tm; + $1287 = (_rol_1371($1286,1)|0); + HEAP32[$x>>2] = $1287; + $1288 = (($1275) + ($1287))|0; + $1289 = $b; + $1290 = (($1289) + ($1288))|0; + $b = $1290; + $1291 = $d; + $1292 = (_rol_1371($1291,30)|0); + $d = $1292; + $1293 = $b; + $1294 = (_rol_1371($1293,5)|0); + $1295 = $c; + $1296 = $d; + $1297 = $1295 & $1296; + $1298 = $e; + $1299 = $c; + $1300 = $d; + $1301 = $1299 | $1300; + $1302 = $1298 & $1301; + $1303 = $1297 | $1302; + $1304 = (($1294) + ($1303))|0; + $1305 = (($1304) + -1894007588)|0; + $1306 = ((($x)) + 4|0); + $1307 = HEAP32[$1306>>2]|0; + $1308 = ((($x)) + 12|0); + $1309 = HEAP32[$1308>>2]|0; + $1310 = $1307 ^ $1309; + $1311 = ((($x)) + 36|0); + $1312 = HEAP32[$1311>>2]|0; + $1313 = $1310 ^ $1312; + $1314 = ((($x)) + 56|0); + $1315 = HEAP32[$1314>>2]|0; + $1316 = $1313 ^ $1315; + $tm = $1316; + $1317 = $tm; + $1318 = (_rol_1371($1317,1)|0); + $1319 = ((($x)) + 4|0); + HEAP32[$1319>>2] = $1318; + $1320 = (($1305) + ($1318))|0; + $1321 = $a; + $1322 = (($1321) + ($1320))|0; + $a = $1322; + $1323 = $c; + $1324 = (_rol_1371($1323,30)|0); + $c = $1324; + $1325 = $a; + $1326 = (_rol_1371($1325,5)|0); + $1327 = $b; + $1328 = $c; + $1329 = $1327 & $1328; + $1330 = $d; + $1331 = $b; + $1332 = $c; + $1333 = $1331 | $1332; + $1334 = $1330 & $1333; + $1335 = $1329 | $1334; + $1336 = (($1326) + ($1335))|0; + $1337 = (($1336) + -1894007588)|0; + $1338 = ((($x)) + 8|0); + $1339 = HEAP32[$1338>>2]|0; + $1340 = ((($x)) + 16|0); + $1341 = HEAP32[$1340>>2]|0; + $1342 = $1339 ^ $1341; + $1343 = ((($x)) + 40|0); + $1344 = HEAP32[$1343>>2]|0; + $1345 = $1342 ^ $1344; + $1346 = ((($x)) + 60|0); + $1347 = HEAP32[$1346>>2]|0; + $1348 = $1345 ^ $1347; + $tm = $1348; + $1349 = $tm; + $1350 = (_rol_1371($1349,1)|0); + $1351 = ((($x)) + 8|0); + HEAP32[$1351>>2] = $1350; + $1352 = (($1337) + ($1350))|0; + $1353 = $e; + $1354 = (($1353) + ($1352))|0; + $e = $1354; + $1355 = $b; + $1356 = (_rol_1371($1355,30)|0); + $b = $1356; + $1357 = $e; + $1358 = (_rol_1371($1357,5)|0); + $1359 = $a; + $1360 = $b; + $1361 = $1359 & $1360; + $1362 = $c; + $1363 = $a; + $1364 = $b; + $1365 = $1363 | $1364; + $1366 = $1362 & $1365; + $1367 = $1361 | $1366; + $1368 = (($1358) + ($1367))|0; + $1369 = (($1368) + -1894007588)|0; + $1370 = ((($x)) + 12|0); + $1371 = HEAP32[$1370>>2]|0; + $1372 = ((($x)) + 20|0); + $1373 = HEAP32[$1372>>2]|0; + $1374 = $1371 ^ $1373; + $1375 = ((($x)) + 44|0); + $1376 = HEAP32[$1375>>2]|0; + $1377 = $1374 ^ $1376; + $1378 = HEAP32[$x>>2]|0; + $1379 = $1377 ^ $1378; + $tm = $1379; + $1380 = $tm; + $1381 = (_rol_1371($1380,1)|0); + $1382 = ((($x)) + 12|0); + HEAP32[$1382>>2] = $1381; + $1383 = (($1369) + ($1381))|0; + $1384 = $d; + $1385 = (($1384) + ($1383))|0; + $d = $1385; + $1386 = $a; + $1387 = (_rol_1371($1386,30)|0); + $a = $1387; + $1388 = $d; + $1389 = (_rol_1371($1388,5)|0); + $1390 = $e; + $1391 = $a; + $1392 = $1390 & $1391; + $1393 = $b; + $1394 = $e; + $1395 = $a; + $1396 = $1394 | $1395; + $1397 = $1393 & $1396; + $1398 = $1392 | $1397; + $1399 = (($1389) + ($1398))|0; + $1400 = (($1399) + -1894007588)|0; + $1401 = ((($x)) + 16|0); + $1402 = HEAP32[$1401>>2]|0; + $1403 = ((($x)) + 24|0); + $1404 = HEAP32[$1403>>2]|0; + $1405 = $1402 ^ $1404; + $1406 = ((($x)) + 48|0); + $1407 = HEAP32[$1406>>2]|0; + $1408 = $1405 ^ $1407; + $1409 = ((($x)) + 4|0); + $1410 = HEAP32[$1409>>2]|0; + $1411 = $1408 ^ $1410; + $tm = $1411; + $1412 = $tm; + $1413 = (_rol_1371($1412,1)|0); + $1414 = ((($x)) + 16|0); + HEAP32[$1414>>2] = $1413; + $1415 = (($1400) + ($1413))|0; + $1416 = $c; + $1417 = (($1416) + ($1415))|0; + $c = $1417; + $1418 = $e; + $1419 = (_rol_1371($1418,30)|0); + $e = $1419; + $1420 = $c; + $1421 = (_rol_1371($1420,5)|0); + $1422 = $d; + $1423 = $e; + $1424 = $1422 & $1423; + $1425 = $a; + $1426 = $d; + $1427 = $e; + $1428 = $1426 | $1427; + $1429 = $1425 & $1428; + $1430 = $1424 | $1429; + $1431 = (($1421) + ($1430))|0; + $1432 = (($1431) + -1894007588)|0; + $1433 = ((($x)) + 20|0); + $1434 = HEAP32[$1433>>2]|0; + $1435 = ((($x)) + 28|0); + $1436 = HEAP32[$1435>>2]|0; + $1437 = $1434 ^ $1436; + $1438 = ((($x)) + 52|0); + $1439 = HEAP32[$1438>>2]|0; + $1440 = $1437 ^ $1439; + $1441 = ((($x)) + 8|0); + $1442 = HEAP32[$1441>>2]|0; + $1443 = $1440 ^ $1442; + $tm = $1443; + $1444 = $tm; + $1445 = (_rol_1371($1444,1)|0); + $1446 = ((($x)) + 20|0); + HEAP32[$1446>>2] = $1445; + $1447 = (($1432) + ($1445))|0; + $1448 = $b; + $1449 = (($1448) + ($1447))|0; + $b = $1449; + $1450 = $d; + $1451 = (_rol_1371($1450,30)|0); + $d = $1451; + $1452 = $b; + $1453 = (_rol_1371($1452,5)|0); + $1454 = $c; + $1455 = $d; + $1456 = $1454 & $1455; + $1457 = $e; + $1458 = $c; + $1459 = $d; + $1460 = $1458 | $1459; + $1461 = $1457 & $1460; + $1462 = $1456 | $1461; + $1463 = (($1453) + ($1462))|0; + $1464 = (($1463) + -1894007588)|0; + $1465 = ((($x)) + 24|0); + $1466 = HEAP32[$1465>>2]|0; + $1467 = ((($x)) + 32|0); + $1468 = HEAP32[$1467>>2]|0; + $1469 = $1466 ^ $1468; + $1470 = ((($x)) + 56|0); + $1471 = HEAP32[$1470>>2]|0; + $1472 = $1469 ^ $1471; + $1473 = ((($x)) + 12|0); + $1474 = HEAP32[$1473>>2]|0; + $1475 = $1472 ^ $1474; + $tm = $1475; + $1476 = $tm; + $1477 = (_rol_1371($1476,1)|0); + $1478 = ((($x)) + 24|0); + HEAP32[$1478>>2] = $1477; + $1479 = (($1464) + ($1477))|0; + $1480 = $a; + $1481 = (($1480) + ($1479))|0; + $a = $1481; + $1482 = $c; + $1483 = (_rol_1371($1482,30)|0); + $c = $1483; + $1484 = $a; + $1485 = (_rol_1371($1484,5)|0); + $1486 = $b; + $1487 = $c; + $1488 = $1486 & $1487; + $1489 = $d; + $1490 = $b; + $1491 = $c; + $1492 = $1490 | $1491; + $1493 = $1489 & $1492; + $1494 = $1488 | $1493; + $1495 = (($1485) + ($1494))|0; + $1496 = (($1495) + -1894007588)|0; + $1497 = ((($x)) + 28|0); + $1498 = HEAP32[$1497>>2]|0; + $1499 = ((($x)) + 36|0); + $1500 = HEAP32[$1499>>2]|0; + $1501 = $1498 ^ $1500; + $1502 = ((($x)) + 60|0); + $1503 = HEAP32[$1502>>2]|0; + $1504 = $1501 ^ $1503; + $1505 = ((($x)) + 16|0); + $1506 = HEAP32[$1505>>2]|0; + $1507 = $1504 ^ $1506; + $tm = $1507; + $1508 = $tm; + $1509 = (_rol_1371($1508,1)|0); + $1510 = ((($x)) + 28|0); + HEAP32[$1510>>2] = $1509; + $1511 = (($1496) + ($1509))|0; + $1512 = $e; + $1513 = (($1512) + ($1511))|0; + $e = $1513; + $1514 = $b; + $1515 = (_rol_1371($1514,30)|0); + $b = $1515; + $1516 = $e; + $1517 = (_rol_1371($1516,5)|0); + $1518 = $a; + $1519 = $b; + $1520 = $1518 & $1519; + $1521 = $c; + $1522 = $a; + $1523 = $b; + $1524 = $1522 | $1523; + $1525 = $1521 & $1524; + $1526 = $1520 | $1525; + $1527 = (($1517) + ($1526))|0; + $1528 = (($1527) + -1894007588)|0; + $1529 = ((($x)) + 32|0); + $1530 = HEAP32[$1529>>2]|0; + $1531 = ((($x)) + 40|0); + $1532 = HEAP32[$1531>>2]|0; + $1533 = $1530 ^ $1532; + $1534 = HEAP32[$x>>2]|0; + $1535 = $1533 ^ $1534; + $1536 = ((($x)) + 20|0); + $1537 = HEAP32[$1536>>2]|0; + $1538 = $1535 ^ $1537; + $tm = $1538; + $1539 = $tm; + $1540 = (_rol_1371($1539,1)|0); + $1541 = ((($x)) + 32|0); + HEAP32[$1541>>2] = $1540; + $1542 = (($1528) + ($1540))|0; + $1543 = $d; + $1544 = (($1543) + ($1542))|0; + $d = $1544; + $1545 = $a; + $1546 = (_rol_1371($1545,30)|0); + $a = $1546; + $1547 = $d; + $1548 = (_rol_1371($1547,5)|0); + $1549 = $e; + $1550 = $a; + $1551 = $1549 & $1550; + $1552 = $b; + $1553 = $e; + $1554 = $a; + $1555 = $1553 | $1554; + $1556 = $1552 & $1555; + $1557 = $1551 | $1556; + $1558 = (($1548) + ($1557))|0; + $1559 = (($1558) + -1894007588)|0; + $1560 = ((($x)) + 36|0); + $1561 = HEAP32[$1560>>2]|0; + $1562 = ((($x)) + 44|0); + $1563 = HEAP32[$1562>>2]|0; + $1564 = $1561 ^ $1563; + $1565 = ((($x)) + 4|0); + $1566 = HEAP32[$1565>>2]|0; + $1567 = $1564 ^ $1566; + $1568 = ((($x)) + 24|0); + $1569 = HEAP32[$1568>>2]|0; + $1570 = $1567 ^ $1569; + $tm = $1570; + $1571 = $tm; + $1572 = (_rol_1371($1571,1)|0); + $1573 = ((($x)) + 36|0); + HEAP32[$1573>>2] = $1572; + $1574 = (($1559) + ($1572))|0; + $1575 = $c; + $1576 = (($1575) + ($1574))|0; + $c = $1576; + $1577 = $e; + $1578 = (_rol_1371($1577,30)|0); + $e = $1578; + $1579 = $c; + $1580 = (_rol_1371($1579,5)|0); + $1581 = $d; + $1582 = $e; + $1583 = $1581 & $1582; + $1584 = $a; + $1585 = $d; + $1586 = $e; + $1587 = $1585 | $1586; + $1588 = $1584 & $1587; + $1589 = $1583 | $1588; + $1590 = (($1580) + ($1589))|0; + $1591 = (($1590) + -1894007588)|0; + $1592 = ((($x)) + 40|0); + $1593 = HEAP32[$1592>>2]|0; + $1594 = ((($x)) + 48|0); + $1595 = HEAP32[$1594>>2]|0; + $1596 = $1593 ^ $1595; + $1597 = ((($x)) + 8|0); + $1598 = HEAP32[$1597>>2]|0; + $1599 = $1596 ^ $1598; + $1600 = ((($x)) + 28|0); + $1601 = HEAP32[$1600>>2]|0; + $1602 = $1599 ^ $1601; + $tm = $1602; + $1603 = $tm; + $1604 = (_rol_1371($1603,1)|0); + $1605 = ((($x)) + 40|0); + HEAP32[$1605>>2] = $1604; + $1606 = (($1591) + ($1604))|0; + $1607 = $b; + $1608 = (($1607) + ($1606))|0; + $b = $1608; + $1609 = $d; + $1610 = (_rol_1371($1609,30)|0); + $d = $1610; + $1611 = $b; + $1612 = (_rol_1371($1611,5)|0); + $1613 = $c; + $1614 = $d; + $1615 = $1613 & $1614; + $1616 = $e; + $1617 = $c; + $1618 = $d; + $1619 = $1617 | $1618; + $1620 = $1616 & $1619; + $1621 = $1615 | $1620; + $1622 = (($1612) + ($1621))|0; + $1623 = (($1622) + -1894007588)|0; + $1624 = ((($x)) + 44|0); + $1625 = HEAP32[$1624>>2]|0; + $1626 = ((($x)) + 52|0); + $1627 = HEAP32[$1626>>2]|0; + $1628 = $1625 ^ $1627; + $1629 = ((($x)) + 12|0); + $1630 = HEAP32[$1629>>2]|0; + $1631 = $1628 ^ $1630; + $1632 = ((($x)) + 32|0); + $1633 = HEAP32[$1632>>2]|0; + $1634 = $1631 ^ $1633; + $tm = $1634; + $1635 = $tm; + $1636 = (_rol_1371($1635,1)|0); + $1637 = ((($x)) + 44|0); + HEAP32[$1637>>2] = $1636; + $1638 = (($1623) + ($1636))|0; + $1639 = $a; + $1640 = (($1639) + ($1638))|0; + $a = $1640; + $1641 = $c; + $1642 = (_rol_1371($1641,30)|0); + $c = $1642; + $1643 = $a; + $1644 = (_rol_1371($1643,5)|0); + $1645 = $b; + $1646 = $c; + $1647 = $1645 ^ $1646; + $1648 = $d; + $1649 = $1647 ^ $1648; + $1650 = (($1644) + ($1649))|0; + $1651 = (($1650) + -899497514)|0; + $1652 = ((($x)) + 48|0); + $1653 = HEAP32[$1652>>2]|0; + $1654 = ((($x)) + 56|0); + $1655 = HEAP32[$1654>>2]|0; + $1656 = $1653 ^ $1655; + $1657 = ((($x)) + 16|0); + $1658 = HEAP32[$1657>>2]|0; + $1659 = $1656 ^ $1658; + $1660 = ((($x)) + 36|0); + $1661 = HEAP32[$1660>>2]|0; + $1662 = $1659 ^ $1661; + $tm = $1662; + $1663 = $tm; + $1664 = (_rol_1371($1663,1)|0); + $1665 = ((($x)) + 48|0); + HEAP32[$1665>>2] = $1664; + $1666 = (($1651) + ($1664))|0; + $1667 = $e; + $1668 = (($1667) + ($1666))|0; + $e = $1668; + $1669 = $b; + $1670 = (_rol_1371($1669,30)|0); + $b = $1670; + $1671 = $e; + $1672 = (_rol_1371($1671,5)|0); + $1673 = $a; + $1674 = $b; + $1675 = $1673 ^ $1674; + $1676 = $c; + $1677 = $1675 ^ $1676; + $1678 = (($1672) + ($1677))|0; + $1679 = (($1678) + -899497514)|0; + $1680 = ((($x)) + 52|0); + $1681 = HEAP32[$1680>>2]|0; + $1682 = ((($x)) + 60|0); + $1683 = HEAP32[$1682>>2]|0; + $1684 = $1681 ^ $1683; + $1685 = ((($x)) + 20|0); + $1686 = HEAP32[$1685>>2]|0; + $1687 = $1684 ^ $1686; + $1688 = ((($x)) + 40|0); + $1689 = HEAP32[$1688>>2]|0; + $1690 = $1687 ^ $1689; + $tm = $1690; + $1691 = $tm; + $1692 = (_rol_1371($1691,1)|0); + $1693 = ((($x)) + 52|0); + HEAP32[$1693>>2] = $1692; + $1694 = (($1679) + ($1692))|0; + $1695 = $d; + $1696 = (($1695) + ($1694))|0; + $d = $1696; + $1697 = $a; + $1698 = (_rol_1371($1697,30)|0); + $a = $1698; + $1699 = $d; + $1700 = (_rol_1371($1699,5)|0); + $1701 = $e; + $1702 = $a; + $1703 = $1701 ^ $1702; + $1704 = $b; + $1705 = $1703 ^ $1704; + $1706 = (($1700) + ($1705))|0; + $1707 = (($1706) + -899497514)|0; + $1708 = ((($x)) + 56|0); + $1709 = HEAP32[$1708>>2]|0; + $1710 = HEAP32[$x>>2]|0; + $1711 = $1709 ^ $1710; + $1712 = ((($x)) + 24|0); + $1713 = HEAP32[$1712>>2]|0; + $1714 = $1711 ^ $1713; + $1715 = ((($x)) + 44|0); + $1716 = HEAP32[$1715>>2]|0; + $1717 = $1714 ^ $1716; + $tm = $1717; + $1718 = $tm; + $1719 = (_rol_1371($1718,1)|0); + $1720 = ((($x)) + 56|0); + HEAP32[$1720>>2] = $1719; + $1721 = (($1707) + ($1719))|0; + $1722 = $c; + $1723 = (($1722) + ($1721))|0; + $c = $1723; + $1724 = $e; + $1725 = (_rol_1371($1724,30)|0); + $e = $1725; + $1726 = $c; + $1727 = (_rol_1371($1726,5)|0); + $1728 = $d; + $1729 = $e; + $1730 = $1728 ^ $1729; + $1731 = $a; + $1732 = $1730 ^ $1731; + $1733 = (($1727) + ($1732))|0; + $1734 = (($1733) + -899497514)|0; + $1735 = ((($x)) + 60|0); + $1736 = HEAP32[$1735>>2]|0; + $1737 = ((($x)) + 4|0); + $1738 = HEAP32[$1737>>2]|0; + $1739 = $1736 ^ $1738; + $1740 = ((($x)) + 28|0); + $1741 = HEAP32[$1740>>2]|0; + $1742 = $1739 ^ $1741; + $1743 = ((($x)) + 48|0); + $1744 = HEAP32[$1743>>2]|0; + $1745 = $1742 ^ $1744; + $tm = $1745; + $1746 = $tm; + $1747 = (_rol_1371($1746,1)|0); + $1748 = ((($x)) + 60|0); + HEAP32[$1748>>2] = $1747; + $1749 = (($1734) + ($1747))|0; + $1750 = $b; + $1751 = (($1750) + ($1749))|0; + $b = $1751; + $1752 = $d; + $1753 = (_rol_1371($1752,30)|0); + $d = $1753; + $1754 = $b; + $1755 = (_rol_1371($1754,5)|0); + $1756 = $c; + $1757 = $d; + $1758 = $1756 ^ $1757; + $1759 = $e; + $1760 = $1758 ^ $1759; + $1761 = (($1755) + ($1760))|0; + $1762 = (($1761) + -899497514)|0; + $1763 = HEAP32[$x>>2]|0; + $1764 = ((($x)) + 8|0); + $1765 = HEAP32[$1764>>2]|0; + $1766 = $1763 ^ $1765; + $1767 = ((($x)) + 32|0); + $1768 = HEAP32[$1767>>2]|0; + $1769 = $1766 ^ $1768; + $1770 = ((($x)) + 52|0); + $1771 = HEAP32[$1770>>2]|0; + $1772 = $1769 ^ $1771; + $tm = $1772; + $1773 = $tm; + $1774 = (_rol_1371($1773,1)|0); + HEAP32[$x>>2] = $1774; + $1775 = (($1762) + ($1774))|0; + $1776 = $a; + $1777 = (($1776) + ($1775))|0; + $a = $1777; + $1778 = $c; + $1779 = (_rol_1371($1778,30)|0); + $c = $1779; + $1780 = $a; + $1781 = (_rol_1371($1780,5)|0); + $1782 = $b; + $1783 = $c; + $1784 = $1782 ^ $1783; + $1785 = $d; + $1786 = $1784 ^ $1785; + $1787 = (($1781) + ($1786))|0; + $1788 = (($1787) + -899497514)|0; + $1789 = ((($x)) + 4|0); + $1790 = HEAP32[$1789>>2]|0; + $1791 = ((($x)) + 12|0); + $1792 = HEAP32[$1791>>2]|0; + $1793 = $1790 ^ $1792; + $1794 = ((($x)) + 36|0); + $1795 = HEAP32[$1794>>2]|0; + $1796 = $1793 ^ $1795; + $1797 = ((($x)) + 56|0); + $1798 = HEAP32[$1797>>2]|0; + $1799 = $1796 ^ $1798; + $tm = $1799; + $1800 = $tm; + $1801 = (_rol_1371($1800,1)|0); + $1802 = ((($x)) + 4|0); + HEAP32[$1802>>2] = $1801; + $1803 = (($1788) + ($1801))|0; + $1804 = $e; + $1805 = (($1804) + ($1803))|0; + $e = $1805; + $1806 = $b; + $1807 = (_rol_1371($1806,30)|0); + $b = $1807; + $1808 = $e; + $1809 = (_rol_1371($1808,5)|0); + $1810 = $a; + $1811 = $b; + $1812 = $1810 ^ $1811; + $1813 = $c; + $1814 = $1812 ^ $1813; + $1815 = (($1809) + ($1814))|0; + $1816 = (($1815) + -899497514)|0; + $1817 = ((($x)) + 8|0); + $1818 = HEAP32[$1817>>2]|0; + $1819 = ((($x)) + 16|0); + $1820 = HEAP32[$1819>>2]|0; + $1821 = $1818 ^ $1820; + $1822 = ((($x)) + 40|0); + $1823 = HEAP32[$1822>>2]|0; + $1824 = $1821 ^ $1823; + $1825 = ((($x)) + 60|0); + $1826 = HEAP32[$1825>>2]|0; + $1827 = $1824 ^ $1826; + $tm = $1827; + $1828 = $tm; + $1829 = (_rol_1371($1828,1)|0); + $1830 = ((($x)) + 8|0); + HEAP32[$1830>>2] = $1829; + $1831 = (($1816) + ($1829))|0; + $1832 = $d; + $1833 = (($1832) + ($1831))|0; + $d = $1833; + $1834 = $a; + $1835 = (_rol_1371($1834,30)|0); + $a = $1835; + $1836 = $d; + $1837 = (_rol_1371($1836,5)|0); + $1838 = $e; + $1839 = $a; + $1840 = $1838 ^ $1839; + $1841 = $b; + $1842 = $1840 ^ $1841; + $1843 = (($1837) + ($1842))|0; + $1844 = (($1843) + -899497514)|0; + $1845 = ((($x)) + 12|0); + $1846 = HEAP32[$1845>>2]|0; + $1847 = ((($x)) + 20|0); + $1848 = HEAP32[$1847>>2]|0; + $1849 = $1846 ^ $1848; + $1850 = ((($x)) + 44|0); + $1851 = HEAP32[$1850>>2]|0; + $1852 = $1849 ^ $1851; + $1853 = HEAP32[$x>>2]|0; + $1854 = $1852 ^ $1853; + $tm = $1854; + $1855 = $tm; + $1856 = (_rol_1371($1855,1)|0); + $1857 = ((($x)) + 12|0); + HEAP32[$1857>>2] = $1856; + $1858 = (($1844) + ($1856))|0; + $1859 = $c; + $1860 = (($1859) + ($1858))|0; + $c = $1860; + $1861 = $e; + $1862 = (_rol_1371($1861,30)|0); + $e = $1862; + $1863 = $c; + $1864 = (_rol_1371($1863,5)|0); + $1865 = $d; + $1866 = $e; + $1867 = $1865 ^ $1866; + $1868 = $a; + $1869 = $1867 ^ $1868; + $1870 = (($1864) + ($1869))|0; + $1871 = (($1870) + -899497514)|0; + $1872 = ((($x)) + 16|0); + $1873 = HEAP32[$1872>>2]|0; + $1874 = ((($x)) + 24|0); + $1875 = HEAP32[$1874>>2]|0; + $1876 = $1873 ^ $1875; + $1877 = ((($x)) + 48|0); + $1878 = HEAP32[$1877>>2]|0; + $1879 = $1876 ^ $1878; + $1880 = ((($x)) + 4|0); + $1881 = HEAP32[$1880>>2]|0; + $1882 = $1879 ^ $1881; + $tm = $1882; + $1883 = $tm; + $1884 = (_rol_1371($1883,1)|0); + $1885 = ((($x)) + 16|0); + HEAP32[$1885>>2] = $1884; + $1886 = (($1871) + ($1884))|0; + $1887 = $b; + $1888 = (($1887) + ($1886))|0; + $b = $1888; + $1889 = $d; + $1890 = (_rol_1371($1889,30)|0); + $d = $1890; + $1891 = $b; + $1892 = (_rol_1371($1891,5)|0); + $1893 = $c; + $1894 = $d; + $1895 = $1893 ^ $1894; + $1896 = $e; + $1897 = $1895 ^ $1896; + $1898 = (($1892) + ($1897))|0; + $1899 = (($1898) + -899497514)|0; + $1900 = ((($x)) + 20|0); + $1901 = HEAP32[$1900>>2]|0; + $1902 = ((($x)) + 28|0); + $1903 = HEAP32[$1902>>2]|0; + $1904 = $1901 ^ $1903; + $1905 = ((($x)) + 52|0); + $1906 = HEAP32[$1905>>2]|0; + $1907 = $1904 ^ $1906; + $1908 = ((($x)) + 8|0); + $1909 = HEAP32[$1908>>2]|0; + $1910 = $1907 ^ $1909; + $tm = $1910; + $1911 = $tm; + $1912 = (_rol_1371($1911,1)|0); + $1913 = ((($x)) + 20|0); + HEAP32[$1913>>2] = $1912; + $1914 = (($1899) + ($1912))|0; + $1915 = $a; + $1916 = (($1915) + ($1914))|0; + $a = $1916; + $1917 = $c; + $1918 = (_rol_1371($1917,30)|0); + $c = $1918; + $1919 = $a; + $1920 = (_rol_1371($1919,5)|0); + $1921 = $b; + $1922 = $c; + $1923 = $1921 ^ $1922; + $1924 = $d; + $1925 = $1923 ^ $1924; + $1926 = (($1920) + ($1925))|0; + $1927 = (($1926) + -899497514)|0; + $1928 = ((($x)) + 24|0); + $1929 = HEAP32[$1928>>2]|0; + $1930 = ((($x)) + 32|0); + $1931 = HEAP32[$1930>>2]|0; + $1932 = $1929 ^ $1931; + $1933 = ((($x)) + 56|0); + $1934 = HEAP32[$1933>>2]|0; + $1935 = $1932 ^ $1934; + $1936 = ((($x)) + 12|0); + $1937 = HEAP32[$1936>>2]|0; + $1938 = $1935 ^ $1937; + $tm = $1938; + $1939 = $tm; + $1940 = (_rol_1371($1939,1)|0); + $1941 = ((($x)) + 24|0); + HEAP32[$1941>>2] = $1940; + $1942 = (($1927) + ($1940))|0; + $1943 = $e; + $1944 = (($1943) + ($1942))|0; + $e = $1944; + $1945 = $b; + $1946 = (_rol_1371($1945,30)|0); + $b = $1946; + $1947 = $e; + $1948 = (_rol_1371($1947,5)|0); + $1949 = $a; + $1950 = $b; + $1951 = $1949 ^ $1950; + $1952 = $c; + $1953 = $1951 ^ $1952; + $1954 = (($1948) + ($1953))|0; + $1955 = (($1954) + -899497514)|0; + $1956 = ((($x)) + 28|0); + $1957 = HEAP32[$1956>>2]|0; + $1958 = ((($x)) + 36|0); + $1959 = HEAP32[$1958>>2]|0; + $1960 = $1957 ^ $1959; + $1961 = ((($x)) + 60|0); + $1962 = HEAP32[$1961>>2]|0; + $1963 = $1960 ^ $1962; + $1964 = ((($x)) + 16|0); + $1965 = HEAP32[$1964>>2]|0; + $1966 = $1963 ^ $1965; + $tm = $1966; + $1967 = $tm; + $1968 = (_rol_1371($1967,1)|0); + $1969 = ((($x)) + 28|0); + HEAP32[$1969>>2] = $1968; + $1970 = (($1955) + ($1968))|0; + $1971 = $d; + $1972 = (($1971) + ($1970))|0; + $d = $1972; + $1973 = $a; + $1974 = (_rol_1371($1973,30)|0); + $a = $1974; + $1975 = $d; + $1976 = (_rol_1371($1975,5)|0); + $1977 = $e; + $1978 = $a; + $1979 = $1977 ^ $1978; + $1980 = $b; + $1981 = $1979 ^ $1980; + $1982 = (($1976) + ($1981))|0; + $1983 = (($1982) + -899497514)|0; + $1984 = ((($x)) + 32|0); + $1985 = HEAP32[$1984>>2]|0; + $1986 = ((($x)) + 40|0); + $1987 = HEAP32[$1986>>2]|0; + $1988 = $1985 ^ $1987; + $1989 = HEAP32[$x>>2]|0; + $1990 = $1988 ^ $1989; + $1991 = ((($x)) + 20|0); + $1992 = HEAP32[$1991>>2]|0; + $1993 = $1990 ^ $1992; + $tm = $1993; + $1994 = $tm; + $1995 = (_rol_1371($1994,1)|0); + $1996 = ((($x)) + 32|0); + HEAP32[$1996>>2] = $1995; + $1997 = (($1983) + ($1995))|0; + $1998 = $c; + $1999 = (($1998) + ($1997))|0; + $c = $1999; + $2000 = $e; + $2001 = (_rol_1371($2000,30)|0); + $e = $2001; + $2002 = $c; + $2003 = (_rol_1371($2002,5)|0); + $2004 = $d; + $2005 = $e; + $2006 = $2004 ^ $2005; + $2007 = $a; + $2008 = $2006 ^ $2007; + $2009 = (($2003) + ($2008))|0; + $2010 = (($2009) + -899497514)|0; + $2011 = ((($x)) + 36|0); + $2012 = HEAP32[$2011>>2]|0; + $2013 = ((($x)) + 44|0); + $2014 = HEAP32[$2013>>2]|0; + $2015 = $2012 ^ $2014; + $2016 = ((($x)) + 4|0); + $2017 = HEAP32[$2016>>2]|0; + $2018 = $2015 ^ $2017; + $2019 = ((($x)) + 24|0); + $2020 = HEAP32[$2019>>2]|0; + $2021 = $2018 ^ $2020; + $tm = $2021; + $2022 = $tm; + $2023 = (_rol_1371($2022,1)|0); + $2024 = ((($x)) + 36|0); + HEAP32[$2024>>2] = $2023; + $2025 = (($2010) + ($2023))|0; + $2026 = $b; + $2027 = (($2026) + ($2025))|0; + $b = $2027; + $2028 = $d; + $2029 = (_rol_1371($2028,30)|0); + $d = $2029; + $2030 = $b; + $2031 = (_rol_1371($2030,5)|0); + $2032 = $c; + $2033 = $d; + $2034 = $2032 ^ $2033; + $2035 = $e; + $2036 = $2034 ^ $2035; + $2037 = (($2031) + ($2036))|0; + $2038 = (($2037) + -899497514)|0; + $2039 = ((($x)) + 40|0); + $2040 = HEAP32[$2039>>2]|0; + $2041 = ((($x)) + 48|0); + $2042 = HEAP32[$2041>>2]|0; + $2043 = $2040 ^ $2042; + $2044 = ((($x)) + 8|0); + $2045 = HEAP32[$2044>>2]|0; + $2046 = $2043 ^ $2045; + $2047 = ((($x)) + 28|0); + $2048 = HEAP32[$2047>>2]|0; + $2049 = $2046 ^ $2048; + $tm = $2049; + $2050 = $tm; + $2051 = (_rol_1371($2050,1)|0); + $2052 = ((($x)) + 40|0); + HEAP32[$2052>>2] = $2051; + $2053 = (($2038) + ($2051))|0; + $2054 = $a; + $2055 = (($2054) + ($2053))|0; + $a = $2055; + $2056 = $c; + $2057 = (_rol_1371($2056,30)|0); + $c = $2057; + $2058 = $a; + $2059 = (_rol_1371($2058,5)|0); + $2060 = $b; + $2061 = $c; + $2062 = $2060 ^ $2061; + $2063 = $d; + $2064 = $2062 ^ $2063; + $2065 = (($2059) + ($2064))|0; + $2066 = (($2065) + -899497514)|0; + $2067 = ((($x)) + 44|0); + $2068 = HEAP32[$2067>>2]|0; + $2069 = ((($x)) + 52|0); + $2070 = HEAP32[$2069>>2]|0; + $2071 = $2068 ^ $2070; + $2072 = ((($x)) + 12|0); + $2073 = HEAP32[$2072>>2]|0; + $2074 = $2071 ^ $2073; + $2075 = ((($x)) + 32|0); + $2076 = HEAP32[$2075>>2]|0; + $2077 = $2074 ^ $2076; + $tm = $2077; + $2078 = $tm; + $2079 = (_rol_1371($2078,1)|0); + $2080 = ((($x)) + 44|0); + HEAP32[$2080>>2] = $2079; + $2081 = (($2066) + ($2079))|0; + $2082 = $e; + $2083 = (($2082) + ($2081))|0; + $e = $2083; + $2084 = $b; + $2085 = (_rol_1371($2084,30)|0); + $b = $2085; + $2086 = $e; + $2087 = (_rol_1371($2086,5)|0); + $2088 = $a; + $2089 = $b; + $2090 = $2088 ^ $2089; + $2091 = $c; + $2092 = $2090 ^ $2091; + $2093 = (($2087) + ($2092))|0; + $2094 = (($2093) + -899497514)|0; + $2095 = ((($x)) + 48|0); + $2096 = HEAP32[$2095>>2]|0; + $2097 = ((($x)) + 56|0); + $2098 = HEAP32[$2097>>2]|0; + $2099 = $2096 ^ $2098; + $2100 = ((($x)) + 16|0); + $2101 = HEAP32[$2100>>2]|0; + $2102 = $2099 ^ $2101; + $2103 = ((($x)) + 36|0); + $2104 = HEAP32[$2103>>2]|0; + $2105 = $2102 ^ $2104; + $tm = $2105; + $2106 = $tm; + $2107 = (_rol_1371($2106,1)|0); + $2108 = ((($x)) + 48|0); + HEAP32[$2108>>2] = $2107; + $2109 = (($2094) + ($2107))|0; + $2110 = $d; + $2111 = (($2110) + ($2109))|0; + $d = $2111; + $2112 = $a; + $2113 = (_rol_1371($2112,30)|0); + $a = $2113; + $2114 = $d; + $2115 = (_rol_1371($2114,5)|0); + $2116 = $e; + $2117 = $a; + $2118 = $2116 ^ $2117; + $2119 = $b; + $2120 = $2118 ^ $2119; + $2121 = (($2115) + ($2120))|0; + $2122 = (($2121) + -899497514)|0; + $2123 = ((($x)) + 52|0); + $2124 = HEAP32[$2123>>2]|0; + $2125 = ((($x)) + 60|0); + $2126 = HEAP32[$2125>>2]|0; + $2127 = $2124 ^ $2126; + $2128 = ((($x)) + 20|0); + $2129 = HEAP32[$2128>>2]|0; + $2130 = $2127 ^ $2129; + $2131 = ((($x)) + 40|0); + $2132 = HEAP32[$2131>>2]|0; + $2133 = $2130 ^ $2132; + $tm = $2133; + $2134 = $tm; + $2135 = (_rol_1371($2134,1)|0); + $2136 = ((($x)) + 52|0); + HEAP32[$2136>>2] = $2135; + $2137 = (($2122) + ($2135))|0; + $2138 = $c; + $2139 = (($2138) + ($2137))|0; + $c = $2139; + $2140 = $e; + $2141 = (_rol_1371($2140,30)|0); + $e = $2141; + $2142 = $c; + $2143 = (_rol_1371($2142,5)|0); + $2144 = $d; + $2145 = $e; + $2146 = $2144 ^ $2145; + $2147 = $a; + $2148 = $2146 ^ $2147; + $2149 = (($2143) + ($2148))|0; + $2150 = (($2149) + -899497514)|0; + $2151 = ((($x)) + 56|0); + $2152 = HEAP32[$2151>>2]|0; + $2153 = HEAP32[$x>>2]|0; + $2154 = $2152 ^ $2153; + $2155 = ((($x)) + 24|0); + $2156 = HEAP32[$2155>>2]|0; + $2157 = $2154 ^ $2156; + $2158 = ((($x)) + 44|0); + $2159 = HEAP32[$2158>>2]|0; + $2160 = $2157 ^ $2159; + $tm = $2160; + $2161 = $tm; + $2162 = (_rol_1371($2161,1)|0); + $2163 = ((($x)) + 56|0); + HEAP32[$2163>>2] = $2162; + $2164 = (($2150) + ($2162))|0; + $2165 = $b; + $2166 = (($2165) + ($2164))|0; + $b = $2166; + $2167 = $d; + $2168 = (_rol_1371($2167,30)|0); + $d = $2168; + $2169 = $b; + $2170 = (_rol_1371($2169,5)|0); + $2171 = $c; + $2172 = $d; + $2173 = $2171 ^ $2172; + $2174 = $e; + $2175 = $2173 ^ $2174; + $2176 = (($2170) + ($2175))|0; + $2177 = (($2176) + -899497514)|0; + $2178 = ((($x)) + 60|0); + $2179 = HEAP32[$2178>>2]|0; + $2180 = ((($x)) + 4|0); + $2181 = HEAP32[$2180>>2]|0; + $2182 = $2179 ^ $2181; + $2183 = ((($x)) + 28|0); + $2184 = HEAP32[$2183>>2]|0; + $2185 = $2182 ^ $2184; + $2186 = ((($x)) + 48|0); + $2187 = HEAP32[$2186>>2]|0; + $2188 = $2185 ^ $2187; + $tm = $2188; + $2189 = $tm; + $2190 = (_rol_1371($2189,1)|0); + $2191 = ((($x)) + 60|0); + HEAP32[$2191>>2] = $2190; + $2192 = (($2177) + ($2190))|0; + $2193 = $a; + $2194 = (($2193) + ($2192))|0; + $a = $2194; + $2195 = $c; + $2196 = (_rol_1371($2195,30)|0); + $c = $2196; + $2197 = $a; + $2198 = $hd; + $2199 = ((($2198)) + 160|0); + $2200 = HEAP32[$2199>>2]|0; + $2201 = (($2200) + ($2197))|0; + HEAP32[$2199>>2] = $2201; + $2202 = $b; + $2203 = $hd; + $2204 = ((($2203)) + 164|0); + $2205 = HEAP32[$2204>>2]|0; + $2206 = (($2205) + ($2202))|0; + HEAP32[$2204>>2] = $2206; + $2207 = $c; + $2208 = $hd; + $2209 = ((($2208)) + 168|0); + $2210 = HEAP32[$2209>>2]|0; + $2211 = (($2210) + ($2207))|0; + HEAP32[$2209>>2] = $2211; + $2212 = $d; + $2213 = $hd; + $2214 = ((($2213)) + 172|0); + $2215 = HEAP32[$2214>>2]|0; + $2216 = (($2215) + ($2212))|0; + HEAP32[$2214>>2] = $2216; + $2217 = $e; + $2218 = $hd; + $2219 = ((($2218)) + 176|0); + $2220 = HEAP32[$2219>>2]|0; + $2221 = (($2220) + ($2217))|0; + HEAP32[$2219>>2] = $2221; + STACKTOP = sp;return 104; +} +function _rol_1371($x,$n) { + $x = $x|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $x; + $1 = $n; + $2 = $0; + $3 = $1; + $4 = $3 & 31; + $5 = $2 << $4; + $6 = $0; + $7 = $1; + $8 = (32 - ($7))|0; + $9 = $8 & 31; + $10 = $6 >>> $9; + $11 = $5 | $10; + STACKTOP = sp;return ($11|0); +} +function _buf_get_be32($_buf) { + $_buf = $_buf|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $in = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_buf; + $1 = $0; + $in = $1; + $2 = $in; + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = $4 << 24; + $6 = $in; + $7 = ((($6)) + 1|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = $9 << 16; + $11 = $5 | $10; + $12 = $in; + $13 = ((($12)) + 2|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = $15 << 8; + $17 = $11 | $16; + $18 = $in; + $19 = ((($18)) + 3|0); + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = $17 | $21; + STACKTOP = sp;return ($22|0); +} +function _sha1_final($context) { + $context = $context|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; + var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; + var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; + var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; + var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $burn = 0, $hd = 0, $lsb = 0; + var $msb = 0, $p = 0, $t = 0, $th = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $0; + $hd = $1; + $2 = $hd; + __gcry_md_block_write($2,0,0); + $3 = $hd; + $4 = ((($3)) + 128|0); + $5 = $4; + $6 = $5; + $7 = HEAP32[$6>>2]|0; + $8 = (($5) + 4)|0; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $t = $7; + $11 = $hd; + $12 = ((($11)) + 128|0); + $13 = $12; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = (($13) + 4)|0; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $th = $18; + $19 = $t; + $20 = $19 << 6; + $lsb = $20; + $21 = $th; + $22 = $21 << 6; + $23 = $t; + $24 = $23 >>> 26; + $25 = $22 | $24; + $msb = $25; + $26 = $lsb; + $t = $26; + $27 = $hd; + $28 = ((($27)) + 144|0); + $29 = HEAP32[$28>>2]|0; + $30 = $lsb; + $31 = (($30) + ($29))|0; + $lsb = $31; + $32 = $t; + $33 = ($31>>>0)<($32>>>0); + if ($33) { + $34 = $msb; + $35 = (($34) + 1)|0; + $msb = $35; + } + $36 = $lsb; + $t = $36; + $37 = $lsb; + $38 = $37 << 3; + $lsb = $38; + $39 = $msb; + $40 = $39 << 3; + $msb = $40; + $41 = $t; + $42 = $41 >>> 29; + $43 = $msb; + $44 = $43 | $42; + $msb = $44; + $45 = $hd; + $46 = ((($45)) + 144|0); + $47 = HEAP32[$46>>2]|0; + $48 = ($47|0)<(56); + $49 = $hd; + $50 = ((($49)) + 144|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + 1)|0; + HEAP32[$50>>2] = $52; + $53 = $hd; + $54 = (($53) + ($51)|0); + HEAP8[$54>>0] = -128; + L4: do { + if ($48) { + while(1) { + $55 = $hd; + $56 = ((($55)) + 144|0); + $57 = HEAP32[$56>>2]|0; + $58 = ($57|0)<(56); + if (!($58)) { + break L4; + } + $59 = $hd; + $60 = ((($59)) + 144|0); + $61 = HEAP32[$60>>2]|0; + $62 = (($61) + 1)|0; + HEAP32[$60>>2] = $62; + $63 = $hd; + $64 = (($63) + ($61)|0); + HEAP8[$64>>0] = 0; + } + } else { + while(1) { + $65 = $hd; + $66 = ((($65)) + 144|0); + $67 = HEAP32[$66>>2]|0; + $68 = ($67|0)<(64); + $69 = $hd; + if (!($68)) { + break; + } + $70 = ((($69)) + 144|0); + $71 = HEAP32[$70>>2]|0; + $72 = (($71) + 1)|0; + HEAP32[$70>>2] = $72; + $73 = $hd; + $74 = (($73) + ($71)|0); + HEAP8[$74>>0] = 0; + } + __gcry_md_block_write($69,0,0); + $75 = $hd; + dest=$75; stop=dest+56|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + } + } while(0); + $76 = $hd; + $77 = ((($76)) + 56|0); + $78 = $msb; + _buf_put_be32($77,$78); + $79 = $hd; + $80 = ((($79)) + 60|0); + $81 = $lsb; + _buf_put_be32($80,$81); + $82 = $hd; + $83 = $hd; + $84 = (_transform_1369($82,$83,1)|0); + $burn = $84; + $85 = $burn; + ___gcry_burn_stack($85); + ___gcry_burn_stack_dummy(); + $86 = $hd; + $p = $86; + $87 = $p; + $88 = $hd; + $89 = ((($88)) + 160|0); + $90 = HEAP32[$89>>2]|0; + _buf_put_be32($87,$90); + $91 = $p; + $92 = ((($91)) + 4|0); + $p = $92; + $93 = $p; + $94 = $hd; + $95 = ((($94)) + 164|0); + $96 = HEAP32[$95>>2]|0; + _buf_put_be32($93,$96); + $97 = $p; + $98 = ((($97)) + 4|0); + $p = $98; + $99 = $p; + $100 = $hd; + $101 = ((($100)) + 168|0); + $102 = HEAP32[$101>>2]|0; + _buf_put_be32($99,$102); + $103 = $p; + $104 = ((($103)) + 4|0); + $p = $104; + $105 = $p; + $106 = $hd; + $107 = ((($106)) + 172|0); + $108 = HEAP32[$107>>2]|0; + _buf_put_be32($105,$108); + $109 = $p; + $110 = ((($109)) + 4|0); + $p = $110; + $111 = $p; + $112 = $hd; + $113 = ((($112)) + 176|0); + $114 = HEAP32[$113>>2]|0; + _buf_put_be32($111,$114); + $115 = $p; + $116 = ((($115)) + 4|0); + $p = $116; + STACKTOP = sp;return; +} +function _buf_put_be32($_buf,$val) { + $_buf = $_buf|0; + $val = $val|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $out = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_buf; + $1 = $val; + $2 = $0; + $out = $2; + $3 = $1; + $4 = $3 >>> 24; + $5 = $4&255; + $6 = $out; + HEAP8[$6>>0] = $5; + $7 = $1; + $8 = $7 >>> 16; + $9 = $8&255; + $10 = $out; + $11 = ((($10)) + 1|0); + HEAP8[$11>>0] = $9; + $12 = $1; + $13 = $12 >>> 8; + $14 = $13&255; + $15 = $out; + $16 = ((($15)) + 2|0); + HEAP8[$16>>0] = $14; + $17 = $1; + $18 = $17&255; + $19 = $out; + $20 = ((($19)) + 3|0); + HEAP8[$20>>0] = $18; + STACKTOP = sp;return; +} +function _sha1_read($context) { + $context = $context|0; + var $0 = 0, $1 = 0, $2 = 0, $hd = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $0; + $hd = $1; + $2 = $hd; + STACKTOP = sp;return ($2|0); +} +function _run_selftests_1372($algo,$extended,$report) { + $algo = $algo|0; + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $cond = 0, $ec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $algo; + $1 = $extended; + $2 = $report; + $3 = $0; + $cond = ($3|0)==(2); + if ($cond) { + $4 = $1; + $5 = $2; + $6 = (_selftests_sha1_1373($4,$5)|0); + $ec = $6; + } else { + $ec = 5; + } + $7 = $ec; + STACKTOP = sp;return ($7|0); +} +function _selftests_sha1_1373($extended,$report) { + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $errtxt = 0, $what = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $extended; + $2 = $report; + $what = 42887; + $3 = (__gcry_hash_selftest_check_one(2,0,42900,3,42390,20)|0); + $errtxt = $3; + $4 = $errtxt; + $5 = ($4|0)!=(0|0); + do { + if (!($5)) { + $6 = $1; + $7 = ($6|0)!=(0); + if ($7) { + $what = 42953; + $8 = (__gcry_hash_selftest_check_one(2,0,42531,56,42411,20)|0); + $errtxt = $8; + $9 = $errtxt; + $10 = ($9|0)!=(0|0); + if ($10) { + break; + } + $what = 43127; + $11 = (__gcry_hash_selftest_check_one(2,1,0,0,42432,20)|0); + $errtxt = $11; + $12 = $errtxt; + $13 = ($12|0)!=(0|0); + if ($13) { + break; + } + } + $0 = 0; + $19 = $0; + STACKTOP = sp;return ($19|0); + } + } while(0); + $14 = $2; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = $2; + $17 = $what; + $18 = $errtxt; + FUNCTION_TABLE_viiii[$16 & 63](43192,2,$17,$18); + } + $0 = 50; + $19 = $0; + STACKTOP = sp;return ($19|0); +} +function __gcry_sha1_hash_buffer($outbuf,$buffer,$length) { + $outbuf = $outbuf|0; + $buffer = $buffer|0; + $length = $length|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $hd = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 208|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $hd = sp; + $0 = $outbuf; + $1 = $buffer; + $2 = $length; + _sha1_init($hd,0); + $3 = $1; + $4 = $2; + __gcry_md_block_write($hd,$3,$4); + _sha1_final($hd); + $5 = $0; + dest=$5; src=$hd; stop=dest+20|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + STACKTOP = sp;return; +} +function __gcry_sha1_hash_buffers($outbuf,$iov,$iovcnt) { + $outbuf = $outbuf|0; + $iov = $iov|0; + $iovcnt = $iovcnt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $hd = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 208|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $hd = sp; + $0 = $outbuf; + $1 = $iov; + $2 = $iovcnt; + _sha1_init($hd,0); + while(1) { + $3 = $2; + $4 = ($3|0)>(0); + if (!($4)) { + break; + } + $5 = $1; + $6 = ((($5)) + 12|0); + $7 = HEAP32[$6>>2]|0; + $8 = $1; + $9 = ((($8)) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($7) + ($10)|0); + $12 = $1; + $13 = ((($12)) + 8|0); + $14 = HEAP32[$13>>2]|0; + __gcry_md_block_write($hd,$11,$14); + $15 = $1; + $16 = ((($15)) + 16|0); + $1 = $16; + $17 = $2; + $18 = (($17) + -1)|0; + $2 = $18; + } + _sha1_final($hd); + $19 = $0; + dest=$19; src=$hd; stop=dest+20|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + STACKTOP = sp;return; +} +function _sha224_init($context,$flags) { + $context = $context|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $features = 0, $hd = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $flags; + $2 = $0; + $hd = $2; + $3 = (__gcry_get_hw_features()|0); + $features = $3; + $4 = $hd; + $5 = ((($4)) + 160|0); + HEAP32[$5>>2] = -1056596264; + $6 = $hd; + $7 = ((($6)) + 164|0); + HEAP32[$7>>2] = 914150663; + $8 = $hd; + $9 = ((($8)) + 168|0); + HEAP32[$9>>2] = 812702999; + $10 = $hd; + $11 = ((($10)) + 172|0); + HEAP32[$11>>2] = -150054599; + $12 = $hd; + $13 = ((($12)) + 176|0); + HEAP32[$13>>2] = -4191439; + $14 = $hd; + $15 = ((($14)) + 180|0); + HEAP32[$15>>2] = 1750603025; + $16 = $hd; + $17 = ((($16)) + 184|0); + HEAP32[$17>>2] = 1694076839; + $18 = $hd; + $19 = ((($18)) + 188|0); + HEAP32[$19>>2] = -1090891868; + $20 = $hd; + $21 = ((($20)) + 128|0); + $22 = $21; + $23 = $22; + HEAP32[$23>>2] = 0; + $24 = (($22) + 4)|0; + $25 = $24; + HEAP32[$25>>2] = 0; + $26 = $hd; + $27 = ((($26)) + 136|0); + $28 = $27; + $29 = $28; + HEAP32[$29>>2] = 0; + $30 = (($28) + 4)|0; + $31 = $30; + HEAP32[$31>>2] = 0; + $32 = $hd; + $33 = ((($32)) + 144|0); + HEAP32[$33>>2] = 0; + $34 = $hd; + $35 = ((($34)) + 148|0); + HEAP32[$35>>2] = 64; + $36 = $hd; + $37 = ((($36)) + 152|0); + HEAP32[$37>>2] = 75; + STACKTOP = sp;return; +} +function _transform_1391($ctx,$data,$nblks) { + $ctx = $ctx|0; + $data = $data|0; + $nblks = $nblks|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $burn = 0, $hd = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $1 = $data; + $2 = $nblks; + $3 = $0; + $hd = $3; + while(1) { + $4 = $hd; + $5 = $1; + $6 = (_transform_blk_1392($4,$5)|0); + $burn = $6; + $7 = $1; + $8 = ((($7)) + 64|0); + $1 = $8; + $9 = $2; + $10 = (($9) + -1)|0; + $2 = $10; + $11 = ($10|0)!=(0); + if (!($11)) { + break; + } + } + $12 = $burn; + STACKTOP = sp;return ($12|0); +} +function _transform_blk_1392($ctx,$data) { + $ctx = $ctx|0; + $data = $data|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $a = 0, $b = 0, $c = 0, $d = 0, $e = 0, $f = 0, $g = 0, $h = 0, $hd = 0, $i = 0, $t1 = 0, $t2 = 0, $w = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 320|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $w = sp + 8|0; + $0 = $ctx; + $1 = $data; + $2 = $0; + $hd = $2; + $3 = $hd; + $4 = ((($3)) + 160|0); + $5 = HEAP32[$4>>2]|0; + $a = $5; + $6 = $hd; + $7 = ((($6)) + 164|0); + $8 = HEAP32[$7>>2]|0; + $b = $8; + $9 = $hd; + $10 = ((($9)) + 168|0); + $11 = HEAP32[$10>>2]|0; + $c = $11; + $12 = $hd; + $13 = ((($12)) + 172|0); + $14 = HEAP32[$13>>2]|0; + $d = $14; + $15 = $hd; + $16 = ((($15)) + 176|0); + $17 = HEAP32[$16>>2]|0; + $e = $17; + $18 = $hd; + $19 = ((($18)) + 180|0); + $20 = HEAP32[$19>>2]|0; + $f = $20; + $21 = $hd; + $22 = ((($21)) + 184|0); + $23 = HEAP32[$22>>2]|0; + $g = $23; + $24 = $hd; + $25 = ((($24)) + 188|0); + $26 = HEAP32[$25>>2]|0; + $h = $26; + $i = 0; + while(1) { + $27 = $i; + $28 = ($27|0)<(16); + if (!($28)) { + break; + } + $29 = $1; + $30 = $i; + $31 = $30<<2; + $32 = (($29) + ($31)|0); + $33 = (_buf_get_be32_1393($32)|0); + $34 = $i; + $35 = (($w) + ($34<<2)|0); + HEAP32[$35>>2] = $33; + $36 = $i; + $37 = (($36) + 1)|0; + $i = $37; + } + while(1) { + $38 = $i; + $39 = ($38|0)<(64); + if (!($39)) { + break; + } + $40 = $i; + $41 = (($40) - 2)|0; + $42 = (($w) + ($41<<2)|0); + $43 = HEAP32[$42>>2]|0; + $44 = (_ror($43,17)|0); + $45 = $i; + $46 = (($45) - 2)|0; + $47 = (($w) + ($46<<2)|0); + $48 = HEAP32[$47>>2]|0; + $49 = (_ror($48,19)|0); + $50 = $44 ^ $49; + $51 = $i; + $52 = (($51) - 2)|0; + $53 = (($w) + ($52<<2)|0); + $54 = HEAP32[$53>>2]|0; + $55 = $54 >>> 10; + $56 = $50 ^ $55; + $57 = $i; + $58 = (($57) - 7)|0; + $59 = (($w) + ($58<<2)|0); + $60 = HEAP32[$59>>2]|0; + $61 = (($56) + ($60))|0; + $62 = $i; + $63 = (($62) - 15)|0; + $64 = (($w) + ($63<<2)|0); + $65 = HEAP32[$64>>2]|0; + $66 = (_ror($65,7)|0); + $67 = $i; + $68 = (($67) - 15)|0; + $69 = (($w) + ($68<<2)|0); + $70 = HEAP32[$69>>2]|0; + $71 = (_ror($70,18)|0); + $72 = $66 ^ $71; + $73 = $i; + $74 = (($73) - 15)|0; + $75 = (($w) + ($74<<2)|0); + $76 = HEAP32[$75>>2]|0; + $77 = $76 >>> 3; + $78 = $72 ^ $77; + $79 = (($61) + ($78))|0; + $80 = $i; + $81 = (($80) - 16)|0; + $82 = (($w) + ($81<<2)|0); + $83 = HEAP32[$82>>2]|0; + $84 = (($79) + ($83))|0; + $85 = $i; + $86 = (($w) + ($85<<2)|0); + HEAP32[$86>>2] = $84; + $87 = $i; + $88 = (($87) + 1)|0; + $i = $88; + } + $i = 0; + while(1) { + $89 = $i; + $90 = ($89|0)<(64); + if (!($90)) { + break; + } + $91 = $h; + $92 = $e; + $93 = (_Sum1($92)|0); + $94 = (($91) + ($93))|0; + $95 = $e; + $96 = $f; + $97 = $g; + $98 = (_Cho($95,$96,$97)|0); + $99 = (($94) + ($98))|0; + $100 = $i; + $101 = (7864 + ($100<<2)|0); + $102 = HEAP32[$101>>2]|0; + $103 = (($99) + ($102))|0; + $104 = $i; + $105 = (($w) + ($104<<2)|0); + $106 = HEAP32[$105>>2]|0; + $107 = (($103) + ($106))|0; + $t1 = $107; + $108 = $a; + $109 = (_Sum0($108)|0); + $110 = $a; + $111 = $b; + $112 = $c; + $113 = (_Maj($110,$111,$112)|0); + $114 = (($109) + ($113))|0; + $t2 = $114; + $115 = $t1; + $116 = $d; + $117 = (($116) + ($115))|0; + $d = $117; + $118 = $t1; + $119 = $t2; + $120 = (($118) + ($119))|0; + $h = $120; + $121 = $g; + $122 = $d; + $123 = (_Sum1($122)|0); + $124 = (($121) + ($123))|0; + $125 = $d; + $126 = $e; + $127 = $f; + $128 = (_Cho($125,$126,$127)|0); + $129 = (($124) + ($128))|0; + $130 = $i; + $131 = (($130) + 1)|0; + $132 = (7864 + ($131<<2)|0); + $133 = HEAP32[$132>>2]|0; + $134 = (($129) + ($133))|0; + $135 = $i; + $136 = (($135) + 1)|0; + $137 = (($w) + ($136<<2)|0); + $138 = HEAP32[$137>>2]|0; + $139 = (($134) + ($138))|0; + $t1 = $139; + $140 = $h; + $141 = (_Sum0($140)|0); + $142 = $h; + $143 = $a; + $144 = $b; + $145 = (_Maj($142,$143,$144)|0); + $146 = (($141) + ($145))|0; + $t2 = $146; + $147 = $t1; + $148 = $c; + $149 = (($148) + ($147))|0; + $c = $149; + $150 = $t1; + $151 = $t2; + $152 = (($150) + ($151))|0; + $g = $152; + $153 = $f; + $154 = $c; + $155 = (_Sum1($154)|0); + $156 = (($153) + ($155))|0; + $157 = $c; + $158 = $d; + $159 = $e; + $160 = (_Cho($157,$158,$159)|0); + $161 = (($156) + ($160))|0; + $162 = $i; + $163 = (($162) + 2)|0; + $164 = (7864 + ($163<<2)|0); + $165 = HEAP32[$164>>2]|0; + $166 = (($161) + ($165))|0; + $167 = $i; + $168 = (($167) + 2)|0; + $169 = (($w) + ($168<<2)|0); + $170 = HEAP32[$169>>2]|0; + $171 = (($166) + ($170))|0; + $t1 = $171; + $172 = $g; + $173 = (_Sum0($172)|0); + $174 = $g; + $175 = $h; + $176 = $a; + $177 = (_Maj($174,$175,$176)|0); + $178 = (($173) + ($177))|0; + $t2 = $178; + $179 = $t1; + $180 = $b; + $181 = (($180) + ($179))|0; + $b = $181; + $182 = $t1; + $183 = $t2; + $184 = (($182) + ($183))|0; + $f = $184; + $185 = $e; + $186 = $b; + $187 = (_Sum1($186)|0); + $188 = (($185) + ($187))|0; + $189 = $b; + $190 = $c; + $191 = $d; + $192 = (_Cho($189,$190,$191)|0); + $193 = (($188) + ($192))|0; + $194 = $i; + $195 = (($194) + 3)|0; + $196 = (7864 + ($195<<2)|0); + $197 = HEAP32[$196>>2]|0; + $198 = (($193) + ($197))|0; + $199 = $i; + $200 = (($199) + 3)|0; + $201 = (($w) + ($200<<2)|0); + $202 = HEAP32[$201>>2]|0; + $203 = (($198) + ($202))|0; + $t1 = $203; + $204 = $f; + $205 = (_Sum0($204)|0); + $206 = $f; + $207 = $g; + $208 = $h; + $209 = (_Maj($206,$207,$208)|0); + $210 = (($205) + ($209))|0; + $t2 = $210; + $211 = $t1; + $212 = $a; + $213 = (($212) + ($211))|0; + $a = $213; + $214 = $t1; + $215 = $t2; + $216 = (($214) + ($215))|0; + $e = $216; + $217 = $d; + $218 = $a; + $219 = (_Sum1($218)|0); + $220 = (($217) + ($219))|0; + $221 = $a; + $222 = $b; + $223 = $c; + $224 = (_Cho($221,$222,$223)|0); + $225 = (($220) + ($224))|0; + $226 = $i; + $227 = (($226) + 4)|0; + $228 = (7864 + ($227<<2)|0); + $229 = HEAP32[$228>>2]|0; + $230 = (($225) + ($229))|0; + $231 = $i; + $232 = (($231) + 4)|0; + $233 = (($w) + ($232<<2)|0); + $234 = HEAP32[$233>>2]|0; + $235 = (($230) + ($234))|0; + $t1 = $235; + $236 = $e; + $237 = (_Sum0($236)|0); + $238 = $e; + $239 = $f; + $240 = $g; + $241 = (_Maj($238,$239,$240)|0); + $242 = (($237) + ($241))|0; + $t2 = $242; + $243 = $t1; + $244 = $h; + $245 = (($244) + ($243))|0; + $h = $245; + $246 = $t1; + $247 = $t2; + $248 = (($246) + ($247))|0; + $d = $248; + $249 = $c; + $250 = $h; + $251 = (_Sum1($250)|0); + $252 = (($249) + ($251))|0; + $253 = $h; + $254 = $a; + $255 = $b; + $256 = (_Cho($253,$254,$255)|0); + $257 = (($252) + ($256))|0; + $258 = $i; + $259 = (($258) + 5)|0; + $260 = (7864 + ($259<<2)|0); + $261 = HEAP32[$260>>2]|0; + $262 = (($257) + ($261))|0; + $263 = $i; + $264 = (($263) + 5)|0; + $265 = (($w) + ($264<<2)|0); + $266 = HEAP32[$265>>2]|0; + $267 = (($262) + ($266))|0; + $t1 = $267; + $268 = $d; + $269 = (_Sum0($268)|0); + $270 = $d; + $271 = $e; + $272 = $f; + $273 = (_Maj($270,$271,$272)|0); + $274 = (($269) + ($273))|0; + $t2 = $274; + $275 = $t1; + $276 = $g; + $277 = (($276) + ($275))|0; + $g = $277; + $278 = $t1; + $279 = $t2; + $280 = (($278) + ($279))|0; + $c = $280; + $281 = $b; + $282 = $g; + $283 = (_Sum1($282)|0); + $284 = (($281) + ($283))|0; + $285 = $g; + $286 = $h; + $287 = $a; + $288 = (_Cho($285,$286,$287)|0); + $289 = (($284) + ($288))|0; + $290 = $i; + $291 = (($290) + 6)|0; + $292 = (7864 + ($291<<2)|0); + $293 = HEAP32[$292>>2]|0; + $294 = (($289) + ($293))|0; + $295 = $i; + $296 = (($295) + 6)|0; + $297 = (($w) + ($296<<2)|0); + $298 = HEAP32[$297>>2]|0; + $299 = (($294) + ($298))|0; + $t1 = $299; + $300 = $c; + $301 = (_Sum0($300)|0); + $302 = $c; + $303 = $d; + $304 = $e; + $305 = (_Maj($302,$303,$304)|0); + $306 = (($301) + ($305))|0; + $t2 = $306; + $307 = $t1; + $308 = $f; + $309 = (($308) + ($307))|0; + $f = $309; + $310 = $t1; + $311 = $t2; + $312 = (($310) + ($311))|0; + $b = $312; + $313 = $a; + $314 = $f; + $315 = (_Sum1($314)|0); + $316 = (($313) + ($315))|0; + $317 = $f; + $318 = $g; + $319 = $h; + $320 = (_Cho($317,$318,$319)|0); + $321 = (($316) + ($320))|0; + $322 = $i; + $323 = (($322) + 7)|0; + $324 = (7864 + ($323<<2)|0); + $325 = HEAP32[$324>>2]|0; + $326 = (($321) + ($325))|0; + $327 = $i; + $328 = (($327) + 7)|0; + $329 = (($w) + ($328<<2)|0); + $330 = HEAP32[$329>>2]|0; + $331 = (($326) + ($330))|0; + $t1 = $331; + $332 = $b; + $333 = (_Sum0($332)|0); + $334 = $b; + $335 = $c; + $336 = $d; + $337 = (_Maj($334,$335,$336)|0); + $338 = (($333) + ($337))|0; + $t2 = $338; + $339 = $t1; + $340 = $e; + $341 = (($340) + ($339))|0; + $e = $341; + $342 = $t1; + $343 = $t2; + $344 = (($342) + ($343))|0; + $a = $344; + $345 = $i; + $346 = (($345) + 8)|0; + $i = $346; + } + $347 = $a; + $348 = $hd; + $349 = ((($348)) + 160|0); + $350 = HEAP32[$349>>2]|0; + $351 = (($350) + ($347))|0; + HEAP32[$349>>2] = $351; + $352 = $b; + $353 = $hd; + $354 = ((($353)) + 164|0); + $355 = HEAP32[$354>>2]|0; + $356 = (($355) + ($352))|0; + HEAP32[$354>>2] = $356; + $357 = $c; + $358 = $hd; + $359 = ((($358)) + 168|0); + $360 = HEAP32[$359>>2]|0; + $361 = (($360) + ($357))|0; + HEAP32[$359>>2] = $361; + $362 = $d; + $363 = $hd; + $364 = ((($363)) + 172|0); + $365 = HEAP32[$364>>2]|0; + $366 = (($365) + ($362))|0; + HEAP32[$364>>2] = $366; + $367 = $e; + $368 = $hd; + $369 = ((($368)) + 176|0); + $370 = HEAP32[$369>>2]|0; + $371 = (($370) + ($367))|0; + HEAP32[$369>>2] = $371; + $372 = $f; + $373 = $hd; + $374 = ((($373)) + 180|0); + $375 = HEAP32[$374>>2]|0; + $376 = (($375) + ($372))|0; + HEAP32[$374>>2] = $376; + $377 = $g; + $378 = $hd; + $379 = ((($378)) + 184|0); + $380 = HEAP32[$379>>2]|0; + $381 = (($380) + ($377))|0; + HEAP32[$379>>2] = $381; + $382 = $h; + $383 = $hd; + $384 = ((($383)) + 188|0); + $385 = HEAP32[$384>>2]|0; + $386 = (($385) + ($382))|0; + HEAP32[$384>>2] = $386; + STACKTOP = sp;return 328; +} +function _buf_get_be32_1393($_buf) { + $_buf = $_buf|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $in = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_buf; + $1 = $0; + $in = $1; + $2 = $in; + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = $4 << 24; + $6 = $in; + $7 = ((($6)) + 1|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = $9 << 16; + $11 = $5 | $10; + $12 = $in; + $13 = ((($12)) + 2|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = $15 << 8; + $17 = $11 | $16; + $18 = $in; + $19 = ((($18)) + 3|0); + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = $17 | $21; + STACKTOP = sp;return ($22|0); +} +function _ror($x,$n) { + $x = $x|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $x; + $1 = $n; + $2 = $0; + $3 = $1; + $4 = $3 & 31; + $5 = $2 >>> $4; + $6 = $0; + $7 = $1; + $8 = (32 - ($7))|0; + $9 = $8 & 31; + $10 = $6 << $9; + $11 = $5 | $10; + STACKTOP = sp;return ($11|0); +} +function _Sum1($x) { + $x = $x|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $x; + $1 = $0; + $2 = (_ror($1,6)|0); + $3 = $0; + $4 = (_ror($3,11)|0); + $5 = $2 ^ $4; + $6 = $0; + $7 = (_ror($6,25)|0); + $8 = $5 ^ $7; + STACKTOP = sp;return ($8|0); +} +function _Cho($x,$y,$z) { + $x = $x|0; + $y = $y|0; + $z = $z|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $x; + $1 = $y; + $2 = $z; + $3 = $2; + $4 = $0; + $5 = $1; + $6 = $2; + $7 = $5 ^ $6; + $8 = $4 & $7; + $9 = $3 ^ $8; + STACKTOP = sp;return ($9|0); +} +function _Sum0($x) { + $x = $x|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $x; + $1 = $0; + $2 = (_ror($1,2)|0); + $3 = $0; + $4 = (_ror($3,13)|0); + $5 = $2 ^ $4; + $6 = $0; + $7 = (_ror($6,22)|0); + $8 = $5 ^ $7; + STACKTOP = sp;return ($8|0); +} +function _Maj($x,$y,$z) { + $x = $x|0; + $y = $y|0; + $z = $z|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $x; + $1 = $y; + $2 = $z; + $3 = $0; + $4 = $1; + $5 = $3 & $4; + $6 = $2; + $7 = $0; + $8 = $1; + $9 = $7 | $8; + $10 = $6 & $9; + $11 = $5 | $10; + STACKTOP = sp;return ($11|0); +} +function _sha256_final($context) { + $context = $context|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $burn = 0, $hd = 0, $lsb = 0, $msb = 0, $p = 0; + var $t = 0, $th = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $0; + $hd = $1; + $2 = $hd; + __gcry_md_block_write($2,0,0); + $3 = $hd; + $4 = ((($3)) + 128|0); + $5 = $4; + $6 = $5; + $7 = HEAP32[$6>>2]|0; + $8 = (($5) + 4)|0; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $t = $7; + $11 = $hd; + $12 = ((($11)) + 128|0); + $13 = $12; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = (($13) + 4)|0; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $th = $18; + $19 = $t; + $20 = $19 << 6; + $lsb = $20; + $21 = $th; + $22 = $21 << 6; + $23 = $t; + $24 = $23 >>> 26; + $25 = $22 | $24; + $msb = $25; + $26 = $lsb; + $t = $26; + $27 = $hd; + $28 = ((($27)) + 144|0); + $29 = HEAP32[$28>>2]|0; + $30 = $lsb; + $31 = (($30) + ($29))|0; + $lsb = $31; + $32 = $t; + $33 = ($31>>>0)<($32>>>0); + if ($33) { + $34 = $msb; + $35 = (($34) + 1)|0; + $msb = $35; + } + $36 = $lsb; + $t = $36; + $37 = $lsb; + $38 = $37 << 3; + $lsb = $38; + $39 = $msb; + $40 = $39 << 3; + $msb = $40; + $41 = $t; + $42 = $41 >>> 29; + $43 = $msb; + $44 = $43 | $42; + $msb = $44; + $45 = $hd; + $46 = ((($45)) + 144|0); + $47 = HEAP32[$46>>2]|0; + $48 = ($47|0)<(56); + $49 = $hd; + $50 = ((($49)) + 144|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + 1)|0; + HEAP32[$50>>2] = $52; + $53 = $hd; + $54 = (($53) + ($51)|0); + HEAP8[$54>>0] = -128; + L4: do { + if ($48) { + while(1) { + $55 = $hd; + $56 = ((($55)) + 144|0); + $57 = HEAP32[$56>>2]|0; + $58 = ($57|0)<(56); + if (!($58)) { + break L4; + } + $59 = $hd; + $60 = ((($59)) + 144|0); + $61 = HEAP32[$60>>2]|0; + $62 = (($61) + 1)|0; + HEAP32[$60>>2] = $62; + $63 = $hd; + $64 = (($63) + ($61)|0); + HEAP8[$64>>0] = 0; + } + } else { + while(1) { + $65 = $hd; + $66 = ((($65)) + 144|0); + $67 = HEAP32[$66>>2]|0; + $68 = ($67|0)<(64); + $69 = $hd; + if (!($68)) { + break; + } + $70 = ((($69)) + 144|0); + $71 = HEAP32[$70>>2]|0; + $72 = (($71) + 1)|0; + HEAP32[$70>>2] = $72; + $73 = $hd; + $74 = (($73) + ($71)|0); + HEAP8[$74>>0] = 0; + } + __gcry_md_block_write($69,0,0); + $75 = $hd; + dest=$75; stop=dest+56|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + } + } while(0); + $76 = $hd; + $77 = ((($76)) + 56|0); + $78 = $msb; + _buf_put_be32_1394($77,$78); + $79 = $hd; + $80 = ((($79)) + 60|0); + $81 = $lsb; + _buf_put_be32_1394($80,$81); + $82 = $hd; + $83 = $hd; + $84 = (_transform_1391($82,$83,1)|0); + $burn = $84; + $85 = $burn; + ___gcry_burn_stack($85); + ___gcry_burn_stack_dummy(); + $86 = $hd; + $p = $86; + $87 = $p; + $88 = $hd; + $89 = ((($88)) + 160|0); + $90 = HEAP32[$89>>2]|0; + _buf_put_be32_1394($87,$90); + $91 = $p; + $92 = ((($91)) + 4|0); + $p = $92; + $93 = $p; + $94 = $hd; + $95 = ((($94)) + 164|0); + $96 = HEAP32[$95>>2]|0; + _buf_put_be32_1394($93,$96); + $97 = $p; + $98 = ((($97)) + 4|0); + $p = $98; + $99 = $p; + $100 = $hd; + $101 = ((($100)) + 168|0); + $102 = HEAP32[$101>>2]|0; + _buf_put_be32_1394($99,$102); + $103 = $p; + $104 = ((($103)) + 4|0); + $p = $104; + $105 = $p; + $106 = $hd; + $107 = ((($106)) + 172|0); + $108 = HEAP32[$107>>2]|0; + _buf_put_be32_1394($105,$108); + $109 = $p; + $110 = ((($109)) + 4|0); + $p = $110; + $111 = $p; + $112 = $hd; + $113 = ((($112)) + 176|0); + $114 = HEAP32[$113>>2]|0; + _buf_put_be32_1394($111,$114); + $115 = $p; + $116 = ((($115)) + 4|0); + $p = $116; + $117 = $p; + $118 = $hd; + $119 = ((($118)) + 180|0); + $120 = HEAP32[$119>>2]|0; + _buf_put_be32_1394($117,$120); + $121 = $p; + $122 = ((($121)) + 4|0); + $p = $122; + $123 = $p; + $124 = $hd; + $125 = ((($124)) + 184|0); + $126 = HEAP32[$125>>2]|0; + _buf_put_be32_1394($123,$126); + $127 = $p; + $128 = ((($127)) + 4|0); + $p = $128; + $129 = $p; + $130 = $hd; + $131 = ((($130)) + 188|0); + $132 = HEAP32[$131>>2]|0; + _buf_put_be32_1394($129,$132); + $133 = $p; + $134 = ((($133)) + 4|0); + $p = $134; + STACKTOP = sp;return; +} +function _buf_put_be32_1394($_buf,$val) { + $_buf = $_buf|0; + $val = $val|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $out = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_buf; + $1 = $val; + $2 = $0; + $out = $2; + $3 = $1; + $4 = $3 >>> 24; + $5 = $4&255; + $6 = $out; + HEAP8[$6>>0] = $5; + $7 = $1; + $8 = $7 >>> 16; + $9 = $8&255; + $10 = $out; + $11 = ((($10)) + 1|0); + HEAP8[$11>>0] = $9; + $12 = $1; + $13 = $12 >>> 8; + $14 = $13&255; + $15 = $out; + $16 = ((($15)) + 2|0); + HEAP8[$16>>0] = $14; + $17 = $1; + $18 = $17&255; + $19 = $out; + $20 = ((($19)) + 3|0); + HEAP8[$20>>0] = $18; + STACKTOP = sp;return; +} +function _sha256_read($context) { + $context = $context|0; + var $0 = 0, $1 = 0, $2 = 0, $hd = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $0; + $hd = $1; + $2 = $hd; + STACKTOP = sp;return ($2|0); +} +function _run_selftests_1395($algo,$extended,$report) { + $algo = $algo|0; + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $algo; + $1 = $extended; + $2 = $report; + $3 = $0; + switch ($3|0) { + case 11: { + $4 = $1; + $5 = $2; + $6 = (_selftests_sha224_1396($4,$5)|0); + $ec = $6; + break; + } + case 8: { + $7 = $1; + $8 = $2; + $9 = (_selftests_sha256_1406($7,$8)|0); + $ec = $9; + break; + } + default: { + $ec = 5; + } + } + $10 = $ec; + STACKTOP = sp;return ($10|0); +} +function _selftests_sha224_1396($extended,$report) { + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $errtxt = 0, $what = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $extended; + $2 = $report; + $what = 42887; + $3 = (__gcry_hash_selftest_check_one(11,0,42900,3,42502,28)|0); + $errtxt = $3; + $4 = $errtxt; + $5 = ($4|0)!=(0|0); + do { + if (!($5)) { + $6 = $1; + $7 = ($6|0)!=(0); + if ($7) { + $what = 42953; + $8 = (__gcry_hash_selftest_check_one(11,0,42531,56,42588,28)|0); + $errtxt = $8; + $9 = $errtxt; + $10 = ($9|0)!=(0|0); + if ($10) { + break; + } + $what = 43127; + $11 = (__gcry_hash_selftest_check_one(11,1,0,0,42617,28)|0); + $errtxt = $11; + $12 = $errtxt; + $13 = ($12|0)!=(0|0); + if ($13) { + break; + } + } + $0 = 0; + $19 = $0; + STACKTOP = sp;return ($19|0); + } + } while(0); + $14 = $2; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = $2; + $17 = $what; + $18 = $errtxt; + FUNCTION_TABLE_viiii[$16 & 63](43192,11,$17,$18); + } + $0 = 50; + $19 = $0; + STACKTOP = sp;return ($19|0); +} +function _selftests_sha256_1406($extended,$report) { + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $errtxt = 0, $what = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $extended; + $2 = $report; + $what = 42887; + $3 = (__gcry_hash_selftest_check_one(8,0,42900,3,42646,32)|0); + $errtxt = $3; + $4 = $errtxt; + $5 = ($4|0)!=(0|0); + do { + if (!($5)) { + $6 = $1; + $7 = ($6|0)!=(0); + if ($7) { + $what = 42953; + $8 = (__gcry_hash_selftest_check_one(8,0,42531,56,42679,32)|0); + $errtxt = $8; + $9 = $errtxt; + $10 = ($9|0)!=(0|0); + if ($10) { + break; + } + $what = 43127; + $11 = (__gcry_hash_selftest_check_one(8,1,0,0,42712,32)|0); + $errtxt = $11; + $12 = $errtxt; + $13 = ($12|0)!=(0|0); + if ($13) { + break; + } + } + $0 = 0; + $19 = $0; + STACKTOP = sp;return ($19|0); + } + } while(0); + $14 = $2; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = $2; + $17 = $what; + $18 = $errtxt; + FUNCTION_TABLE_viiii[$16 & 63](43192,8,$17,$18); + } + $0 = 50; + $19 = $0; + STACKTOP = sp;return ($19|0); +} +function _sha256_init($context,$flags) { + $context = $context|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $features = 0, $hd = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $flags; + $2 = $0; + $hd = $2; + $3 = (__gcry_get_hw_features()|0); + $features = $3; + $4 = $hd; + $5 = ((($4)) + 160|0); + HEAP32[$5>>2] = 1779033703; + $6 = $hd; + $7 = ((($6)) + 164|0); + HEAP32[$7>>2] = -1150833019; + $8 = $hd; + $9 = ((($8)) + 168|0); + HEAP32[$9>>2] = 1013904242; + $10 = $hd; + $11 = ((($10)) + 172|0); + HEAP32[$11>>2] = -1521486534; + $12 = $hd; + $13 = ((($12)) + 176|0); + HEAP32[$13>>2] = 1359893119; + $14 = $hd; + $15 = ((($14)) + 180|0); + HEAP32[$15>>2] = -1694144372; + $16 = $hd; + $17 = ((($16)) + 184|0); + HEAP32[$17>>2] = 528734635; + $18 = $hd; + $19 = ((($18)) + 188|0); + HEAP32[$19>>2] = 1541459225; + $20 = $hd; + $21 = ((($20)) + 128|0); + $22 = $21; + $23 = $22; + HEAP32[$23>>2] = 0; + $24 = (($22) + 4)|0; + $25 = $24; + HEAP32[$25>>2] = 0; + $26 = $hd; + $27 = ((($26)) + 136|0); + $28 = $27; + $29 = $28; + HEAP32[$29>>2] = 0; + $30 = (($28) + 4)|0; + $31 = $30; + HEAP32[$31>>2] = 0; + $32 = $hd; + $33 = ((($32)) + 144|0); + HEAP32[$33>>2] = 0; + $34 = $hd; + $35 = ((($34)) + 148|0); + HEAP32[$35>>2] = 64; + $36 = $hd; + $37 = ((($36)) + 152|0); + HEAP32[$37>>2] = 75; + STACKTOP = sp;return; +} +function _sha512_init($context,$flags) { + $context = $context|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $ctx = 0, $features = 0, $hd = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $flags; + $2 = $0; + $ctx = $2; + $3 = $ctx; + $4 = ((($3)) + 160|0); + $hd = $4; + $5 = (__gcry_get_hw_features()|0); + $features = $5; + $6 = $hd; + $7 = $6; + $8 = $7; + HEAP32[$8>>2] = -205731576; + $9 = (($7) + 4)|0; + $10 = $9; + HEAP32[$10>>2] = 1779033703; + $11 = $hd; + $12 = ((($11)) + 8|0); + $13 = $12; + $14 = $13; + HEAP32[$14>>2] = -2067093701; + $15 = (($13) + 4)|0; + $16 = $15; + HEAP32[$16>>2] = -1150833019; + $17 = $hd; + $18 = ((($17)) + 16|0); + $19 = $18; + $20 = $19; + HEAP32[$20>>2] = -23791573; + $21 = (($19) + 4)|0; + $22 = $21; + HEAP32[$22>>2] = 1013904242; + $23 = $hd; + $24 = ((($23)) + 24|0); + $25 = $24; + $26 = $25; + HEAP32[$26>>2] = 1595750129; + $27 = (($25) + 4)|0; + $28 = $27; + HEAP32[$28>>2] = -1521486534; + $29 = $hd; + $30 = ((($29)) + 32|0); + $31 = $30; + $32 = $31; + HEAP32[$32>>2] = -1377402159; + $33 = (($31) + 4)|0; + $34 = $33; + HEAP32[$34>>2] = 1359893119; + $35 = $hd; + $36 = ((($35)) + 40|0); + $37 = $36; + $38 = $37; + HEAP32[$38>>2] = 725511199; + $39 = (($37) + 4)|0; + $40 = $39; + HEAP32[$40>>2] = -1694144372; + $41 = $hd; + $42 = ((($41)) + 48|0); + $43 = $42; + $44 = $43; + HEAP32[$44>>2] = -79577749; + $45 = (($43) + 4)|0; + $46 = $45; + HEAP32[$46>>2] = 528734635; + $47 = $hd; + $48 = ((($47)) + 56|0); + $49 = $48; + $50 = $49; + HEAP32[$50>>2] = 327033209; + $51 = (($49) + 4)|0; + $52 = $51; + HEAP32[$52>>2] = 1541459225; + $53 = $ctx; + $54 = ((($53)) + 128|0); + $55 = $54; + $56 = $55; + HEAP32[$56>>2] = 0; + $57 = (($55) + 4)|0; + $58 = $57; + HEAP32[$58>>2] = 0; + $59 = $ctx; + $60 = ((($59)) + 136|0); + $61 = $60; + $62 = $61; + HEAP32[$62>>2] = 0; + $63 = (($61) + 4)|0; + $64 = $63; + HEAP32[$64>>2] = 0; + $65 = $ctx; + $66 = ((($65)) + 144|0); + HEAP32[$66>>2] = 0; + $67 = $ctx; + $68 = ((($67)) + 148|0); + HEAP32[$68>>2] = 128; + $69 = $ctx; + $70 = ((($69)) + 152|0); + HEAP32[$70>>2] = 76; + STACKTOP = sp;return; +} +function _transform_1420($context,$data,$nblks) { + $context = $context|0; + $data = $data|0; + $nblks = $nblks|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $burn = 0, $ctx = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $data; + $2 = $nblks; + $3 = $0; + $ctx = $3; + while(1) { + $4 = $ctx; + $5 = ((($4)) + 160|0); + $6 = $1; + $7 = (_transform_blk_1421($5,$6)|0); + $8 = (($7) + 12)|0; + $burn = $8; + $9 = $1; + $10 = ((($9)) + 128|0); + $1 = $10; + $11 = $2; + $12 = (($11) + -1)|0; + $2 = $12; + $13 = ($12|0)!=(0); + if (!($13)) { + break; + } + } + $14 = $burn; + STACKTOP = sp;return ($14|0); +} +function _transform_blk_1421($hd,$data) { + $hd = $hd|0; + $data = $data|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0; + var $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0; + var $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0; + var $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0; + var $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0; + var $1088 = 0, $1089 = 0, $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 0, $1094 = 0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0, $11 = 0, $110 = 0, $1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0; + var $1105 = 0, $1106 = 0, $1107 = 0, $1108 = 0, $1109 = 0, $111 = 0, $1110 = 0, $1111 = 0, $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 0, $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0; + var $1123 = 0, $1124 = 0, $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0; + var $1141 = 0, $1142 = 0, $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0; + var $116 = 0, $1160 = 0, $1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 0, $1166 = 0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0; + var $1178 = 0, $1179 = 0, $118 = 0, $1180 = 0, $1181 = 0, $1182 = 0, $1183 = 0, $1184 = 0, $1185 = 0, $1186 = 0, $1187 = 0, $1188 = 0, $1189 = 0, $119 = 0, $1190 = 0, $1191 = 0, $1192 = 0, $1193 = 0, $1194 = 0, $1195 = 0; + var $1196 = 0, $1197 = 0, $1198 = 0, $1199 = 0, $12 = 0, $120 = 0, $1200 = 0, $1201 = 0, $1202 = 0, $1203 = 0, $1204 = 0, $1205 = 0, $1206 = 0, $1207 = 0, $1208 = 0, $1209 = 0, $121 = 0, $1210 = 0, $1211 = 0, $1212 = 0; + var $1213 = 0, $1214 = 0, $1215 = 0, $1216 = 0, $1217 = 0, $1218 = 0, $1219 = 0, $122 = 0, $1220 = 0, $1221 = 0, $1222 = 0, $1223 = 0, $1224 = 0, $1225 = 0, $1226 = 0, $1227 = 0, $1228 = 0, $1229 = 0, $123 = 0, $1230 = 0; + var $1231 = 0, $1232 = 0, $1233 = 0, $1234 = 0, $1235 = 0, $1236 = 0, $1237 = 0, $1238 = 0, $1239 = 0, $124 = 0, $1240 = 0, $1241 = 0, $1242 = 0, $1243 = 0, $1244 = 0, $1245 = 0, $1246 = 0, $1247 = 0, $1248 = 0, $1249 = 0; + var $125 = 0, $1250 = 0, $1251 = 0, $1252 = 0, $1253 = 0, $1254 = 0, $1255 = 0, $1256 = 0, $1257 = 0, $1258 = 0, $1259 = 0, $126 = 0, $1260 = 0, $1261 = 0, $1262 = 0, $1263 = 0, $1264 = 0, $1265 = 0, $1266 = 0, $1267 = 0; + var $1268 = 0, $1269 = 0, $127 = 0, $1270 = 0, $1271 = 0, $1272 = 0, $1273 = 0, $1274 = 0, $1275 = 0, $1276 = 0, $1277 = 0, $1278 = 0, $1279 = 0, $128 = 0, $1280 = 0, $1281 = 0, $1282 = 0, $1283 = 0, $1284 = 0, $1285 = 0; + var $1286 = 0, $1287 = 0, $1288 = 0, $1289 = 0, $129 = 0, $1290 = 0, $1291 = 0, $1292 = 0, $1293 = 0, $1294 = 0, $1295 = 0, $1296 = 0, $1297 = 0, $1298 = 0, $1299 = 0, $13 = 0, $130 = 0, $1300 = 0, $1301 = 0, $1302 = 0; + var $1303 = 0, $1304 = 0, $1305 = 0, $1306 = 0, $1307 = 0, $1308 = 0, $1309 = 0, $131 = 0, $1310 = 0, $1311 = 0, $1312 = 0, $1313 = 0, $1314 = 0, $1315 = 0, $1316 = 0, $1317 = 0, $1318 = 0, $1319 = 0, $132 = 0, $1320 = 0; + var $1321 = 0, $1322 = 0, $1323 = 0, $1324 = 0, $1325 = 0, $1326 = 0, $1327 = 0, $1328 = 0, $1329 = 0, $133 = 0, $1330 = 0, $1331 = 0, $1332 = 0, $1333 = 0, $1334 = 0, $1335 = 0, $1336 = 0, $1337 = 0, $1338 = 0, $1339 = 0; + var $134 = 0, $1340 = 0, $1341 = 0, $1342 = 0, $1343 = 0, $1344 = 0, $1345 = 0, $1346 = 0, $1347 = 0, $1348 = 0, $1349 = 0, $135 = 0, $1350 = 0, $1351 = 0, $1352 = 0, $1353 = 0, $1354 = 0, $1355 = 0, $1356 = 0, $1357 = 0; + var $1358 = 0, $1359 = 0, $136 = 0, $1360 = 0, $1361 = 0, $1362 = 0, $1363 = 0, $1364 = 0, $1365 = 0, $1366 = 0, $1367 = 0, $1368 = 0, $1369 = 0, $137 = 0, $1370 = 0, $1371 = 0, $1372 = 0, $1373 = 0, $1374 = 0, $1375 = 0; + var $1376 = 0, $1377 = 0, $1378 = 0, $1379 = 0, $138 = 0, $1380 = 0, $1381 = 0, $1382 = 0, $1383 = 0, $1384 = 0, $1385 = 0, $1386 = 0, $1387 = 0, $1388 = 0, $1389 = 0, $139 = 0, $1390 = 0, $1391 = 0, $1392 = 0, $1393 = 0; + var $1394 = 0, $1395 = 0, $1396 = 0, $1397 = 0, $1398 = 0, $1399 = 0, $14 = 0, $140 = 0, $1400 = 0, $1401 = 0, $1402 = 0, $1403 = 0, $1404 = 0, $1405 = 0, $1406 = 0, $1407 = 0, $1408 = 0, $1409 = 0, $141 = 0, $1410 = 0; + var $1411 = 0, $1412 = 0, $1413 = 0, $1414 = 0, $1415 = 0, $1416 = 0, $1417 = 0, $1418 = 0, $1419 = 0, $142 = 0, $1420 = 0, $1421 = 0, $1422 = 0, $1423 = 0, $1424 = 0, $1425 = 0, $1426 = 0, $1427 = 0, $1428 = 0, $1429 = 0; + var $143 = 0, $1430 = 0, $1431 = 0, $1432 = 0, $1433 = 0, $1434 = 0, $1435 = 0, $1436 = 0, $1437 = 0, $1438 = 0, $1439 = 0, $144 = 0, $1440 = 0, $1441 = 0, $1442 = 0, $1443 = 0, $1444 = 0, $1445 = 0, $1446 = 0, $1447 = 0; + var $1448 = 0, $1449 = 0, $145 = 0, $1450 = 0, $1451 = 0, $1452 = 0, $1453 = 0, $1454 = 0, $1455 = 0, $1456 = 0, $1457 = 0, $1458 = 0, $1459 = 0, $146 = 0, $1460 = 0, $1461 = 0, $1462 = 0, $1463 = 0, $1464 = 0, $1465 = 0; + var $1466 = 0, $1467 = 0, $1468 = 0, $1469 = 0, $147 = 0, $1470 = 0, $1471 = 0, $1472 = 0, $1473 = 0, $1474 = 0, $1475 = 0, $1476 = 0, $1477 = 0, $1478 = 0, $1479 = 0, $148 = 0, $1480 = 0, $1481 = 0, $1482 = 0, $1483 = 0; + var $1484 = 0, $1485 = 0, $1486 = 0, $1487 = 0, $1488 = 0, $1489 = 0, $149 = 0, $1490 = 0, $1491 = 0, $1492 = 0, $1493 = 0, $1494 = 0, $1495 = 0, $1496 = 0, $1497 = 0, $1498 = 0, $1499 = 0, $15 = 0, $150 = 0, $1500 = 0; + var $1501 = 0, $1502 = 0, $1503 = 0, $1504 = 0, $1505 = 0, $1506 = 0, $1507 = 0, $1508 = 0, $1509 = 0, $151 = 0, $1510 = 0, $1511 = 0, $1512 = 0, $1513 = 0, $1514 = 0, $1515 = 0, $1516 = 0, $1517 = 0, $1518 = 0, $1519 = 0; + var $152 = 0, $1520 = 0, $1521 = 0, $1522 = 0, $1523 = 0, $1524 = 0, $1525 = 0, $1526 = 0, $1527 = 0, $1528 = 0, $1529 = 0, $153 = 0, $1530 = 0, $1531 = 0, $1532 = 0, $1533 = 0, $1534 = 0, $1535 = 0, $1536 = 0, $1537 = 0; + var $1538 = 0, $1539 = 0, $154 = 0, $1540 = 0, $1541 = 0, $1542 = 0, $1543 = 0, $1544 = 0, $1545 = 0, $1546 = 0, $1547 = 0, $1548 = 0, $1549 = 0, $155 = 0, $1550 = 0, $1551 = 0, $1552 = 0, $1553 = 0, $1554 = 0, $1555 = 0; + var $1556 = 0, $1557 = 0, $1558 = 0, $1559 = 0, $156 = 0, $1560 = 0, $1561 = 0, $1562 = 0, $1563 = 0, $1564 = 0, $1565 = 0, $1566 = 0, $1567 = 0, $1568 = 0, $1569 = 0, $157 = 0, $1570 = 0, $1571 = 0, $1572 = 0, $1573 = 0; + var $1574 = 0, $1575 = 0, $1576 = 0, $1577 = 0, $1578 = 0, $1579 = 0, $158 = 0, $1580 = 0, $1581 = 0, $1582 = 0, $1583 = 0, $1584 = 0, $1585 = 0, $1586 = 0, $1587 = 0, $1588 = 0, $1589 = 0, $159 = 0, $1590 = 0, $1591 = 0; + var $1592 = 0, $1593 = 0, $1594 = 0, $1595 = 0, $1596 = 0, $1597 = 0, $1598 = 0, $1599 = 0, $16 = 0, $160 = 0, $1600 = 0, $1601 = 0, $1602 = 0, $1603 = 0, $1604 = 0, $1605 = 0, $1606 = 0, $1607 = 0, $1608 = 0, $1609 = 0; + var $161 = 0, $1610 = 0, $1611 = 0, $1612 = 0, $1613 = 0, $1614 = 0, $1615 = 0, $1616 = 0, $1617 = 0, $1618 = 0, $1619 = 0, $162 = 0, $1620 = 0, $1621 = 0, $1622 = 0, $1623 = 0, $1624 = 0, $1625 = 0, $1626 = 0, $1627 = 0; + var $1628 = 0, $1629 = 0, $163 = 0, $1630 = 0, $1631 = 0, $1632 = 0, $1633 = 0, $1634 = 0, $1635 = 0, $1636 = 0, $1637 = 0, $1638 = 0, $1639 = 0, $164 = 0, $1640 = 0, $1641 = 0, $1642 = 0, $1643 = 0, $1644 = 0, $1645 = 0; + var $1646 = 0, $1647 = 0, $1648 = 0, $1649 = 0, $165 = 0, $1650 = 0, $1651 = 0, $1652 = 0, $1653 = 0, $1654 = 0, $1655 = 0, $1656 = 0, $1657 = 0, $1658 = 0, $1659 = 0, $166 = 0, $1660 = 0, $1661 = 0, $1662 = 0, $1663 = 0; + var $1664 = 0, $1665 = 0, $1666 = 0, $1667 = 0, $1668 = 0, $1669 = 0, $167 = 0, $1670 = 0, $1671 = 0, $1672 = 0, $1673 = 0, $1674 = 0, $1675 = 0, $1676 = 0, $1677 = 0, $1678 = 0, $1679 = 0, $168 = 0, $1680 = 0, $1681 = 0; + var $1682 = 0, $1683 = 0, $1684 = 0, $1685 = 0, $1686 = 0, $1687 = 0, $1688 = 0, $1689 = 0, $169 = 0, $1690 = 0, $1691 = 0, $1692 = 0, $1693 = 0, $1694 = 0, $1695 = 0, $1696 = 0, $1697 = 0, $1698 = 0, $1699 = 0, $17 = 0; + var $170 = 0, $1700 = 0, $1701 = 0, $1702 = 0, $1703 = 0, $1704 = 0, $1705 = 0, $1706 = 0, $1707 = 0, $1708 = 0, $1709 = 0, $171 = 0, $1710 = 0, $1711 = 0, $1712 = 0, $1713 = 0, $1714 = 0, $1715 = 0, $1716 = 0, $1717 = 0; + var $1718 = 0, $1719 = 0, $172 = 0, $1720 = 0, $1721 = 0, $1722 = 0, $1723 = 0, $1724 = 0, $1725 = 0, $1726 = 0, $1727 = 0, $1728 = 0, $1729 = 0, $173 = 0, $1730 = 0, $1731 = 0, $1732 = 0, $1733 = 0, $1734 = 0, $1735 = 0; + var $1736 = 0, $1737 = 0, $1738 = 0, $1739 = 0, $174 = 0, $1740 = 0, $1741 = 0, $1742 = 0, $1743 = 0, $1744 = 0, $1745 = 0, $1746 = 0, $1747 = 0, $1748 = 0, $1749 = 0, $175 = 0, $1750 = 0, $1751 = 0, $1752 = 0, $1753 = 0; + var $1754 = 0, $1755 = 0, $1756 = 0, $1757 = 0, $1758 = 0, $1759 = 0, $176 = 0, $1760 = 0, $1761 = 0, $1762 = 0, $1763 = 0, $1764 = 0, $1765 = 0, $1766 = 0, $1767 = 0, $1768 = 0, $1769 = 0, $177 = 0, $1770 = 0, $1771 = 0; + var $1772 = 0, $1773 = 0, $1774 = 0, $1775 = 0, $1776 = 0, $1777 = 0, $1778 = 0, $1779 = 0, $178 = 0, $1780 = 0, $1781 = 0, $1782 = 0, $1783 = 0, $1784 = 0, $1785 = 0, $1786 = 0, $1787 = 0, $1788 = 0, $1789 = 0, $179 = 0; + var $1790 = 0, $1791 = 0, $1792 = 0, $1793 = 0, $1794 = 0, $1795 = 0, $1796 = 0, $1797 = 0, $1798 = 0, $1799 = 0, $18 = 0, $180 = 0, $1800 = 0, $1801 = 0, $1802 = 0, $1803 = 0, $1804 = 0, $1805 = 0, $1806 = 0, $1807 = 0; + var $1808 = 0, $1809 = 0, $181 = 0, $1810 = 0, $1811 = 0, $1812 = 0, $1813 = 0, $1814 = 0, $1815 = 0, $1816 = 0, $1817 = 0, $1818 = 0, $1819 = 0, $182 = 0, $1820 = 0, $1821 = 0, $1822 = 0, $1823 = 0, $1824 = 0, $1825 = 0; + var $1826 = 0, $1827 = 0, $1828 = 0, $1829 = 0, $183 = 0, $1830 = 0, $1831 = 0, $1832 = 0, $1833 = 0, $1834 = 0, $1835 = 0, $1836 = 0, $1837 = 0, $1838 = 0, $1839 = 0, $184 = 0, $1840 = 0, $1841 = 0, $1842 = 0, $1843 = 0; + var $1844 = 0, $1845 = 0, $1846 = 0, $1847 = 0, $1848 = 0, $1849 = 0, $185 = 0, $1850 = 0, $1851 = 0, $1852 = 0, $1853 = 0, $1854 = 0, $1855 = 0, $1856 = 0, $1857 = 0, $1858 = 0, $1859 = 0, $186 = 0, $1860 = 0, $1861 = 0; + var $1862 = 0, $1863 = 0, $1864 = 0, $1865 = 0, $1866 = 0, $1867 = 0, $1868 = 0, $1869 = 0, $187 = 0, $1870 = 0, $1871 = 0, $1872 = 0, $1873 = 0, $1874 = 0, $1875 = 0, $1876 = 0, $1877 = 0, $1878 = 0, $1879 = 0, $188 = 0; + var $1880 = 0, $1881 = 0, $1882 = 0, $1883 = 0, $1884 = 0, $1885 = 0, $1886 = 0, $1887 = 0, $1888 = 0, $1889 = 0, $189 = 0, $1890 = 0, $1891 = 0, $1892 = 0, $1893 = 0, $1894 = 0, $1895 = 0, $1896 = 0, $1897 = 0, $1898 = 0; + var $1899 = 0, $19 = 0, $190 = 0, $1900 = 0, $1901 = 0, $1902 = 0, $1903 = 0, $1904 = 0, $1905 = 0, $1906 = 0, $1907 = 0, $1908 = 0, $1909 = 0, $191 = 0, $1910 = 0, $1911 = 0, $1912 = 0, $1913 = 0, $1914 = 0, $1915 = 0; + var $1916 = 0, $1917 = 0, $1918 = 0, $1919 = 0, $192 = 0, $1920 = 0, $1921 = 0, $1922 = 0, $1923 = 0, $1924 = 0, $1925 = 0, $1926 = 0, $1927 = 0, $1928 = 0, $1929 = 0, $193 = 0, $1930 = 0, $1931 = 0, $1932 = 0, $1933 = 0; + var $1934 = 0, $1935 = 0, $1936 = 0, $1937 = 0, $1938 = 0, $1939 = 0, $194 = 0, $1940 = 0, $1941 = 0, $1942 = 0, $1943 = 0, $1944 = 0, $1945 = 0, $1946 = 0, $1947 = 0, $1948 = 0, $1949 = 0, $195 = 0, $1950 = 0, $1951 = 0; + var $1952 = 0, $1953 = 0, $1954 = 0, $1955 = 0, $1956 = 0, $1957 = 0, $1958 = 0, $1959 = 0, $196 = 0, $1960 = 0, $1961 = 0, $1962 = 0, $1963 = 0, $1964 = 0, $1965 = 0, $1966 = 0, $1967 = 0, $1968 = 0, $1969 = 0, $197 = 0; + var $1970 = 0, $1971 = 0, $1972 = 0, $1973 = 0, $1974 = 0, $1975 = 0, $1976 = 0, $1977 = 0, $1978 = 0, $1979 = 0, $198 = 0, $1980 = 0, $1981 = 0, $1982 = 0, $1983 = 0, $1984 = 0, $1985 = 0, $1986 = 0, $1987 = 0, $1988 = 0; + var $1989 = 0, $199 = 0, $1990 = 0, $1991 = 0, $1992 = 0, $1993 = 0, $1994 = 0, $1995 = 0, $1996 = 0, $1997 = 0, $1998 = 0, $1999 = 0, $2 = 0, $20 = 0, $200 = 0, $2000 = 0, $2001 = 0, $2002 = 0, $2003 = 0, $2004 = 0; + var $2005 = 0, $2006 = 0, $2007 = 0, $2008 = 0, $2009 = 0, $201 = 0, $2010 = 0, $2011 = 0, $2012 = 0, $2013 = 0, $2014 = 0, $2015 = 0, $2016 = 0, $2017 = 0, $2018 = 0, $2019 = 0, $202 = 0, $2020 = 0, $2021 = 0, $2022 = 0; + var $2023 = 0, $2024 = 0, $2025 = 0, $2026 = 0, $2027 = 0, $2028 = 0, $2029 = 0, $203 = 0, $2030 = 0, $2031 = 0, $2032 = 0, $2033 = 0, $2034 = 0, $2035 = 0, $2036 = 0, $2037 = 0, $2038 = 0, $2039 = 0, $204 = 0, $2040 = 0; + var $2041 = 0, $2042 = 0, $2043 = 0, $2044 = 0, $2045 = 0, $2046 = 0, $2047 = 0, $2048 = 0, $2049 = 0, $205 = 0, $2050 = 0, $2051 = 0, $2052 = 0, $2053 = 0, $2054 = 0, $2055 = 0, $2056 = 0, $2057 = 0, $2058 = 0, $2059 = 0; + var $206 = 0, $2060 = 0, $2061 = 0, $2062 = 0, $2063 = 0, $2064 = 0, $2065 = 0, $2066 = 0, $2067 = 0, $2068 = 0, $2069 = 0, $207 = 0, $2070 = 0, $2071 = 0, $2072 = 0, $2073 = 0, $2074 = 0, $2075 = 0, $2076 = 0, $2077 = 0; + var $2078 = 0, $2079 = 0, $208 = 0, $2080 = 0, $2081 = 0, $2082 = 0, $2083 = 0, $2084 = 0, $2085 = 0, $2086 = 0, $2087 = 0, $2088 = 0, $2089 = 0, $209 = 0, $2090 = 0, $2091 = 0, $2092 = 0, $2093 = 0, $2094 = 0, $2095 = 0; + var $2096 = 0, $2097 = 0, $2098 = 0, $2099 = 0, $21 = 0, $210 = 0, $2100 = 0, $2101 = 0, $2102 = 0, $2103 = 0, $2104 = 0, $2105 = 0, $2106 = 0, $2107 = 0, $2108 = 0, $2109 = 0, $211 = 0, $2110 = 0, $2111 = 0, $2112 = 0; + var $2113 = 0, $2114 = 0, $2115 = 0, $2116 = 0, $2117 = 0, $2118 = 0, $2119 = 0, $212 = 0, $2120 = 0, $2121 = 0, $2122 = 0, $2123 = 0, $2124 = 0, $2125 = 0, $2126 = 0, $2127 = 0, $2128 = 0, $2129 = 0, $213 = 0, $2130 = 0; + var $2131 = 0, $2132 = 0, $2133 = 0, $2134 = 0, $2135 = 0, $2136 = 0, $2137 = 0, $2138 = 0, $2139 = 0, $214 = 0, $2140 = 0, $2141 = 0, $2142 = 0, $2143 = 0, $2144 = 0, $2145 = 0, $2146 = 0, $2147 = 0, $2148 = 0, $2149 = 0; + var $215 = 0, $2150 = 0, $2151 = 0, $2152 = 0, $2153 = 0, $2154 = 0, $2155 = 0, $2156 = 0, $2157 = 0, $2158 = 0, $2159 = 0, $216 = 0, $2160 = 0, $2161 = 0, $2162 = 0, $2163 = 0, $2164 = 0, $2165 = 0, $2166 = 0, $2167 = 0; + var $2168 = 0, $2169 = 0, $217 = 0, $2170 = 0, $2171 = 0, $2172 = 0, $2173 = 0, $2174 = 0, $2175 = 0, $2176 = 0, $2177 = 0, $2178 = 0, $2179 = 0, $218 = 0, $2180 = 0, $2181 = 0, $2182 = 0, $2183 = 0, $2184 = 0, $2185 = 0; + var $2186 = 0, $2187 = 0, $2188 = 0, $2189 = 0, $219 = 0, $2190 = 0, $2191 = 0, $2192 = 0, $2193 = 0, $2194 = 0, $2195 = 0, $2196 = 0, $2197 = 0, $2198 = 0, $2199 = 0, $22 = 0, $220 = 0, $2200 = 0, $2201 = 0, $2202 = 0; + var $2203 = 0, $2204 = 0, $2205 = 0, $2206 = 0, $2207 = 0, $2208 = 0, $2209 = 0, $221 = 0, $2210 = 0, $2211 = 0, $2212 = 0, $2213 = 0, $2214 = 0, $2215 = 0, $2216 = 0, $2217 = 0, $2218 = 0, $2219 = 0, $222 = 0, $2220 = 0; + var $2221 = 0, $2222 = 0, $2223 = 0, $2224 = 0, $2225 = 0, $2226 = 0, $2227 = 0, $2228 = 0, $2229 = 0, $223 = 0, $2230 = 0, $2231 = 0, $2232 = 0, $2233 = 0, $2234 = 0, $2235 = 0, $2236 = 0, $2237 = 0, $2238 = 0, $2239 = 0; + var $224 = 0, $2240 = 0, $2241 = 0, $2242 = 0, $2243 = 0, $2244 = 0, $2245 = 0, $2246 = 0, $2247 = 0, $2248 = 0, $2249 = 0, $225 = 0, $2250 = 0, $2251 = 0, $2252 = 0, $2253 = 0, $2254 = 0, $2255 = 0, $2256 = 0, $2257 = 0; + var $2258 = 0, $2259 = 0, $226 = 0, $2260 = 0, $2261 = 0, $2262 = 0, $2263 = 0, $2264 = 0, $2265 = 0, $2266 = 0, $2267 = 0, $2268 = 0, $2269 = 0, $227 = 0, $2270 = 0, $2271 = 0, $2272 = 0, $2273 = 0, $2274 = 0, $2275 = 0; + var $2276 = 0, $2277 = 0, $2278 = 0, $2279 = 0, $228 = 0, $2280 = 0, $2281 = 0, $2282 = 0, $2283 = 0, $2284 = 0, $2285 = 0, $2286 = 0, $2287 = 0, $2288 = 0, $2289 = 0, $229 = 0, $2290 = 0, $2291 = 0, $2292 = 0, $2293 = 0; + var $2294 = 0, $2295 = 0, $2296 = 0, $2297 = 0, $2298 = 0, $2299 = 0, $23 = 0, $230 = 0, $2300 = 0, $2301 = 0, $2302 = 0, $2303 = 0, $2304 = 0, $2305 = 0, $2306 = 0, $2307 = 0, $2308 = 0, $2309 = 0, $231 = 0, $2310 = 0; + var $2311 = 0, $2312 = 0, $2313 = 0, $2314 = 0, $2315 = 0, $2316 = 0, $2317 = 0, $2318 = 0, $2319 = 0, $232 = 0, $2320 = 0, $2321 = 0, $2322 = 0, $2323 = 0, $2324 = 0, $2325 = 0, $2326 = 0, $2327 = 0, $2328 = 0, $2329 = 0; + var $233 = 0, $2330 = 0, $2331 = 0, $2332 = 0, $2333 = 0, $2334 = 0, $2335 = 0, $2336 = 0, $2337 = 0, $2338 = 0, $2339 = 0, $234 = 0, $2340 = 0, $2341 = 0, $2342 = 0, $2343 = 0, $2344 = 0, $2345 = 0, $2346 = 0, $2347 = 0; + var $2348 = 0, $2349 = 0, $235 = 0, $2350 = 0, $2351 = 0, $2352 = 0, $2353 = 0, $2354 = 0, $2355 = 0, $2356 = 0, $2357 = 0, $2358 = 0, $2359 = 0, $236 = 0, $2360 = 0, $2361 = 0, $2362 = 0, $2363 = 0, $2364 = 0, $2365 = 0; + var $2366 = 0, $2367 = 0, $2368 = 0, $2369 = 0, $237 = 0, $2370 = 0, $2371 = 0, $2372 = 0, $2373 = 0, $2374 = 0, $2375 = 0, $2376 = 0, $2377 = 0, $2378 = 0, $2379 = 0, $238 = 0, $2380 = 0, $2381 = 0, $2382 = 0, $2383 = 0; + var $2384 = 0, $2385 = 0, $2386 = 0, $2387 = 0, $2388 = 0, $2389 = 0, $239 = 0, $2390 = 0, $2391 = 0, $2392 = 0, $2393 = 0, $2394 = 0, $2395 = 0, $2396 = 0, $2397 = 0, $2398 = 0, $2399 = 0, $24 = 0, $240 = 0, $2400 = 0; + var $2401 = 0, $2402 = 0, $2403 = 0, $2404 = 0, $2405 = 0, $2406 = 0, $2407 = 0, $2408 = 0, $2409 = 0, $241 = 0, $2410 = 0, $2411 = 0, $2412 = 0, $2413 = 0, $2414 = 0, $2415 = 0, $2416 = 0, $2417 = 0, $2418 = 0, $2419 = 0; + var $242 = 0, $2420 = 0, $2421 = 0, $2422 = 0, $2423 = 0, $2424 = 0, $2425 = 0, $2426 = 0, $2427 = 0, $2428 = 0, $2429 = 0, $243 = 0, $2430 = 0, $2431 = 0, $2432 = 0, $2433 = 0, $2434 = 0, $2435 = 0, $2436 = 0, $2437 = 0; + var $2438 = 0, $2439 = 0, $244 = 0, $2440 = 0, $2441 = 0, $2442 = 0, $2443 = 0, $2444 = 0, $2445 = 0, $2446 = 0, $2447 = 0, $2448 = 0, $2449 = 0, $245 = 0, $2450 = 0, $2451 = 0, $2452 = 0, $2453 = 0, $2454 = 0, $2455 = 0; + var $2456 = 0, $2457 = 0, $2458 = 0, $2459 = 0, $246 = 0, $2460 = 0, $2461 = 0, $2462 = 0, $2463 = 0, $2464 = 0, $2465 = 0, $2466 = 0, $2467 = 0, $2468 = 0, $2469 = 0, $247 = 0, $2470 = 0, $2471 = 0, $2472 = 0, $2473 = 0; + var $2474 = 0, $2475 = 0, $2476 = 0, $2477 = 0, $2478 = 0, $2479 = 0, $248 = 0, $2480 = 0, $2481 = 0, $2482 = 0, $2483 = 0, $2484 = 0, $2485 = 0, $2486 = 0, $2487 = 0, $2488 = 0, $2489 = 0, $249 = 0, $2490 = 0, $2491 = 0; + var $2492 = 0, $2493 = 0, $2494 = 0, $2495 = 0, $2496 = 0, $2497 = 0, $2498 = 0, $2499 = 0, $25 = 0, $250 = 0, $2500 = 0, $2501 = 0, $2502 = 0, $2503 = 0, $2504 = 0, $2505 = 0, $2506 = 0, $2507 = 0, $2508 = 0, $2509 = 0; + var $251 = 0, $2510 = 0, $2511 = 0, $2512 = 0, $2513 = 0, $2514 = 0, $2515 = 0, $2516 = 0, $2517 = 0, $2518 = 0, $2519 = 0, $252 = 0, $2520 = 0, $2521 = 0, $2522 = 0, $2523 = 0, $2524 = 0, $2525 = 0, $2526 = 0, $2527 = 0; + var $2528 = 0, $2529 = 0, $253 = 0, $2530 = 0, $2531 = 0, $2532 = 0, $2533 = 0, $2534 = 0, $2535 = 0, $2536 = 0, $2537 = 0, $2538 = 0, $2539 = 0, $254 = 0, $2540 = 0, $2541 = 0, $2542 = 0, $2543 = 0, $2544 = 0, $2545 = 0; + var $2546 = 0, $2547 = 0, $2548 = 0, $2549 = 0, $255 = 0, $2550 = 0, $2551 = 0, $2552 = 0, $2553 = 0, $2554 = 0, $2555 = 0, $2556 = 0, $2557 = 0, $2558 = 0, $2559 = 0, $256 = 0, $2560 = 0, $2561 = 0, $2562 = 0, $2563 = 0; + var $2564 = 0, $2565 = 0, $2566 = 0, $2567 = 0, $2568 = 0, $2569 = 0, $257 = 0, $2570 = 0, $2571 = 0, $2572 = 0, $2573 = 0, $2574 = 0, $2575 = 0, $2576 = 0, $2577 = 0, $2578 = 0, $2579 = 0, $258 = 0, $2580 = 0, $2581 = 0; + var $2582 = 0, $2583 = 0, $2584 = 0, $2585 = 0, $2586 = 0, $2587 = 0, $2588 = 0, $2589 = 0, $259 = 0, $2590 = 0, $2591 = 0, $2592 = 0, $2593 = 0, $2594 = 0, $2595 = 0, $2596 = 0, $2597 = 0, $2598 = 0, $2599 = 0, $26 = 0; + var $260 = 0, $2600 = 0, $2601 = 0, $2602 = 0, $2603 = 0, $2604 = 0, $2605 = 0, $2606 = 0, $2607 = 0, $2608 = 0, $2609 = 0, $261 = 0, $2610 = 0, $2611 = 0, $2612 = 0, $2613 = 0, $2614 = 0, $2615 = 0, $2616 = 0, $2617 = 0; + var $2618 = 0, $2619 = 0, $262 = 0, $2620 = 0, $2621 = 0, $2622 = 0, $2623 = 0, $2624 = 0, $2625 = 0, $2626 = 0, $2627 = 0, $2628 = 0, $2629 = 0, $263 = 0, $2630 = 0, $2631 = 0, $2632 = 0, $2633 = 0, $2634 = 0, $2635 = 0; + var $2636 = 0, $2637 = 0, $2638 = 0, $2639 = 0, $264 = 0, $2640 = 0, $2641 = 0, $2642 = 0, $2643 = 0, $2644 = 0, $2645 = 0, $2646 = 0, $2647 = 0, $2648 = 0, $2649 = 0, $265 = 0, $2650 = 0, $2651 = 0, $2652 = 0, $2653 = 0; + var $2654 = 0, $2655 = 0, $2656 = 0, $2657 = 0, $2658 = 0, $2659 = 0, $266 = 0, $2660 = 0, $2661 = 0, $2662 = 0, $2663 = 0, $2664 = 0, $2665 = 0, $2666 = 0, $2667 = 0, $2668 = 0, $2669 = 0, $267 = 0, $2670 = 0, $2671 = 0; + var $2672 = 0, $2673 = 0, $2674 = 0, $2675 = 0, $2676 = 0, $2677 = 0, $2678 = 0, $2679 = 0, $268 = 0, $2680 = 0, $2681 = 0, $2682 = 0, $2683 = 0, $2684 = 0, $2685 = 0, $2686 = 0, $2687 = 0, $2688 = 0, $2689 = 0, $269 = 0; + var $2690 = 0, $2691 = 0, $2692 = 0, $2693 = 0, $2694 = 0, $2695 = 0, $2696 = 0, $2697 = 0, $2698 = 0, $2699 = 0, $27 = 0, $270 = 0, $2700 = 0, $2701 = 0, $2702 = 0, $2703 = 0, $2704 = 0, $2705 = 0, $2706 = 0, $2707 = 0; + var $2708 = 0, $2709 = 0, $271 = 0, $2710 = 0, $2711 = 0, $2712 = 0, $2713 = 0, $2714 = 0, $2715 = 0, $2716 = 0, $2717 = 0, $2718 = 0, $2719 = 0, $272 = 0, $2720 = 0, $2721 = 0, $2722 = 0, $2723 = 0, $2724 = 0, $2725 = 0; + var $2726 = 0, $2727 = 0, $2728 = 0, $2729 = 0, $273 = 0, $2730 = 0, $2731 = 0, $2732 = 0, $2733 = 0, $2734 = 0, $2735 = 0, $2736 = 0, $2737 = 0, $2738 = 0, $2739 = 0, $274 = 0, $2740 = 0, $2741 = 0, $2742 = 0, $2743 = 0; + var $2744 = 0, $2745 = 0, $2746 = 0, $2747 = 0, $2748 = 0, $2749 = 0, $275 = 0, $2750 = 0, $2751 = 0, $2752 = 0, $2753 = 0, $2754 = 0, $2755 = 0, $2756 = 0, $2757 = 0, $2758 = 0, $2759 = 0, $276 = 0, $2760 = 0, $2761 = 0; + var $2762 = 0, $2763 = 0, $2764 = 0, $2765 = 0, $2766 = 0, $2767 = 0, $2768 = 0, $2769 = 0, $277 = 0, $2770 = 0, $2771 = 0, $2772 = 0, $2773 = 0, $2774 = 0, $2775 = 0, $2776 = 0, $2777 = 0, $2778 = 0, $2779 = 0, $278 = 0; + var $2780 = 0, $2781 = 0, $2782 = 0, $2783 = 0, $2784 = 0, $2785 = 0, $2786 = 0, $2787 = 0, $2788 = 0, $2789 = 0, $279 = 0, $2790 = 0, $2791 = 0, $2792 = 0, $2793 = 0, $2794 = 0, $2795 = 0, $2796 = 0, $2797 = 0, $2798 = 0; + var $2799 = 0, $28 = 0, $280 = 0, $2800 = 0, $2801 = 0, $2802 = 0, $2803 = 0, $2804 = 0, $2805 = 0, $2806 = 0, $2807 = 0, $2808 = 0, $2809 = 0, $281 = 0, $2810 = 0, $2811 = 0, $2812 = 0, $2813 = 0, $2814 = 0, $2815 = 0; + var $2816 = 0, $2817 = 0, $2818 = 0, $2819 = 0, $282 = 0, $2820 = 0, $2821 = 0, $2822 = 0, $2823 = 0, $2824 = 0, $2825 = 0, $2826 = 0, $2827 = 0, $2828 = 0, $2829 = 0, $283 = 0, $2830 = 0, $2831 = 0, $2832 = 0, $2833 = 0; + var $2834 = 0, $2835 = 0, $2836 = 0, $2837 = 0, $2838 = 0, $2839 = 0, $284 = 0, $2840 = 0, $2841 = 0, $2842 = 0, $2843 = 0, $2844 = 0, $2845 = 0, $2846 = 0, $2847 = 0, $2848 = 0, $2849 = 0, $285 = 0, $2850 = 0, $2851 = 0; + var $2852 = 0, $2853 = 0, $2854 = 0, $2855 = 0, $2856 = 0, $2857 = 0, $2858 = 0, $2859 = 0, $286 = 0, $2860 = 0, $2861 = 0, $2862 = 0, $2863 = 0, $2864 = 0, $2865 = 0, $2866 = 0, $2867 = 0, $2868 = 0, $2869 = 0, $287 = 0; + var $2870 = 0, $2871 = 0, $2872 = 0, $2873 = 0, $2874 = 0, $2875 = 0, $2876 = 0, $2877 = 0, $2878 = 0, $2879 = 0, $288 = 0, $2880 = 0, $2881 = 0, $2882 = 0, $2883 = 0, $2884 = 0, $2885 = 0, $2886 = 0, $2887 = 0, $2888 = 0; + var $2889 = 0, $289 = 0, $2890 = 0, $2891 = 0, $2892 = 0, $2893 = 0, $2894 = 0, $2895 = 0, $2896 = 0, $2897 = 0, $2898 = 0, $2899 = 0, $29 = 0, $290 = 0, $2900 = 0, $2901 = 0, $2902 = 0, $2903 = 0, $2904 = 0, $2905 = 0; + var $2906 = 0, $2907 = 0, $2908 = 0, $2909 = 0, $291 = 0, $2910 = 0, $2911 = 0, $2912 = 0, $2913 = 0, $2914 = 0, $2915 = 0, $2916 = 0, $2917 = 0, $2918 = 0, $2919 = 0, $292 = 0, $2920 = 0, $2921 = 0, $2922 = 0, $2923 = 0; + var $2924 = 0, $2925 = 0, $2926 = 0, $2927 = 0, $2928 = 0, $2929 = 0, $293 = 0, $2930 = 0, $2931 = 0, $2932 = 0, $2933 = 0, $2934 = 0, $2935 = 0, $2936 = 0, $2937 = 0, $2938 = 0, $2939 = 0, $294 = 0, $2940 = 0, $2941 = 0; + var $2942 = 0, $2943 = 0, $2944 = 0, $2945 = 0, $2946 = 0, $2947 = 0, $2948 = 0, $2949 = 0, $295 = 0, $2950 = 0, $2951 = 0, $2952 = 0, $2953 = 0, $2954 = 0, $2955 = 0, $2956 = 0, $2957 = 0, $2958 = 0, $2959 = 0, $296 = 0; + var $2960 = 0, $2961 = 0, $2962 = 0, $2963 = 0, $2964 = 0, $2965 = 0, $2966 = 0, $2967 = 0, $2968 = 0, $2969 = 0, $297 = 0, $2970 = 0, $2971 = 0, $2972 = 0, $2973 = 0, $2974 = 0, $2975 = 0, $2976 = 0, $2977 = 0, $2978 = 0; + var $2979 = 0, $298 = 0, $2980 = 0, $2981 = 0, $2982 = 0, $2983 = 0, $2984 = 0, $2985 = 0, $2986 = 0, $2987 = 0, $2988 = 0, $2989 = 0, $299 = 0, $2990 = 0, $2991 = 0, $2992 = 0, $2993 = 0, $2994 = 0, $2995 = 0, $2996 = 0; + var $2997 = 0, $2998 = 0, $2999 = 0, $3 = 0, $30 = 0, $300 = 0, $3000 = 0, $3001 = 0, $3002 = 0, $3003 = 0, $3004 = 0, $3005 = 0, $3006 = 0, $3007 = 0, $3008 = 0, $3009 = 0, $301 = 0, $3010 = 0, $3011 = 0, $3012 = 0; + var $3013 = 0, $3014 = 0, $3015 = 0, $3016 = 0, $3017 = 0, $3018 = 0, $3019 = 0, $302 = 0, $3020 = 0, $3021 = 0, $3022 = 0, $3023 = 0, $3024 = 0, $3025 = 0, $3026 = 0, $3027 = 0, $3028 = 0, $3029 = 0, $303 = 0, $3030 = 0; + var $3031 = 0, $3032 = 0, $3033 = 0, $3034 = 0, $3035 = 0, $3036 = 0, $3037 = 0, $3038 = 0, $3039 = 0, $304 = 0, $3040 = 0, $3041 = 0, $3042 = 0, $3043 = 0, $3044 = 0, $3045 = 0, $3046 = 0, $3047 = 0, $3048 = 0, $3049 = 0; + var $305 = 0, $3050 = 0, $3051 = 0, $3052 = 0, $3053 = 0, $3054 = 0, $3055 = 0, $3056 = 0, $3057 = 0, $3058 = 0, $3059 = 0, $306 = 0, $3060 = 0, $3061 = 0, $3062 = 0, $3063 = 0, $3064 = 0, $3065 = 0, $3066 = 0, $3067 = 0; + var $3068 = 0, $3069 = 0, $307 = 0, $3070 = 0, $3071 = 0, $3072 = 0, $3073 = 0, $3074 = 0, $3075 = 0, $3076 = 0, $3077 = 0, $3078 = 0, $3079 = 0, $308 = 0, $3080 = 0, $3081 = 0, $3082 = 0, $3083 = 0, $3084 = 0, $3085 = 0; + var $3086 = 0, $3087 = 0, $3088 = 0, $3089 = 0, $309 = 0, $3090 = 0, $3091 = 0, $3092 = 0, $3093 = 0, $3094 = 0, $3095 = 0, $3096 = 0, $3097 = 0, $3098 = 0, $3099 = 0, $31 = 0, $310 = 0, $3100 = 0, $3101 = 0, $3102 = 0; + var $3103 = 0, $3104 = 0, $3105 = 0, $3106 = 0, $3107 = 0, $3108 = 0, $3109 = 0, $311 = 0, $3110 = 0, $3111 = 0, $3112 = 0, $3113 = 0, $3114 = 0, $3115 = 0, $3116 = 0, $3117 = 0, $3118 = 0, $3119 = 0, $312 = 0, $3120 = 0; + var $3121 = 0, $3122 = 0, $3123 = 0, $3124 = 0, $3125 = 0, $3126 = 0, $3127 = 0, $3128 = 0, $3129 = 0, $313 = 0, $3130 = 0, $3131 = 0, $3132 = 0, $3133 = 0, $3134 = 0, $3135 = 0, $3136 = 0, $3137 = 0, $3138 = 0, $3139 = 0; + var $314 = 0, $3140 = 0, $3141 = 0, $3142 = 0, $3143 = 0, $3144 = 0, $3145 = 0, $3146 = 0, $3147 = 0, $3148 = 0, $3149 = 0, $315 = 0, $3150 = 0, $3151 = 0, $3152 = 0, $3153 = 0, $3154 = 0, $3155 = 0, $3156 = 0, $3157 = 0; + var $3158 = 0, $3159 = 0, $316 = 0, $3160 = 0, $3161 = 0, $3162 = 0, $3163 = 0, $3164 = 0, $3165 = 0, $3166 = 0, $3167 = 0, $3168 = 0, $3169 = 0, $317 = 0, $3170 = 0, $3171 = 0, $3172 = 0, $3173 = 0, $3174 = 0, $3175 = 0; + var $3176 = 0, $3177 = 0, $3178 = 0, $3179 = 0, $318 = 0, $3180 = 0, $3181 = 0, $3182 = 0, $3183 = 0, $3184 = 0, $3185 = 0, $3186 = 0, $3187 = 0, $3188 = 0, $3189 = 0, $319 = 0, $3190 = 0, $3191 = 0, $3192 = 0, $3193 = 0; + var $3194 = 0, $3195 = 0, $3196 = 0, $3197 = 0, $3198 = 0, $3199 = 0, $32 = 0, $320 = 0, $3200 = 0, $3201 = 0, $3202 = 0, $3203 = 0, $3204 = 0, $3205 = 0, $3206 = 0, $3207 = 0, $3208 = 0, $3209 = 0, $321 = 0, $3210 = 0; + var $3211 = 0, $3212 = 0, $3213 = 0, $3214 = 0, $3215 = 0, $3216 = 0, $3217 = 0, $3218 = 0, $3219 = 0, $322 = 0, $3220 = 0, $3221 = 0, $3222 = 0, $3223 = 0, $3224 = 0, $3225 = 0, $3226 = 0, $3227 = 0, $3228 = 0, $3229 = 0; + var $323 = 0, $3230 = 0, $3231 = 0, $3232 = 0, $3233 = 0, $3234 = 0, $3235 = 0, $3236 = 0, $3237 = 0, $3238 = 0, $3239 = 0, $324 = 0, $3240 = 0, $3241 = 0, $3242 = 0, $3243 = 0, $3244 = 0, $3245 = 0, $3246 = 0, $3247 = 0; + var $3248 = 0, $3249 = 0, $325 = 0, $3250 = 0, $3251 = 0, $3252 = 0, $3253 = 0, $3254 = 0, $3255 = 0, $3256 = 0, $3257 = 0, $3258 = 0, $3259 = 0, $326 = 0, $3260 = 0, $3261 = 0, $3262 = 0, $3263 = 0, $3264 = 0, $3265 = 0; + var $3266 = 0, $3267 = 0, $3268 = 0, $3269 = 0, $327 = 0, $3270 = 0, $3271 = 0, $3272 = 0, $3273 = 0, $3274 = 0, $3275 = 0, $3276 = 0, $3277 = 0, $3278 = 0, $3279 = 0, $328 = 0, $3280 = 0, $3281 = 0, $3282 = 0, $3283 = 0; + var $3284 = 0, $3285 = 0, $3286 = 0, $3287 = 0, $3288 = 0, $3289 = 0, $329 = 0, $3290 = 0, $3291 = 0, $3292 = 0, $3293 = 0, $3294 = 0, $3295 = 0, $3296 = 0, $3297 = 0, $3298 = 0, $3299 = 0, $33 = 0, $330 = 0, $3300 = 0; + var $3301 = 0, $3302 = 0, $3303 = 0, $3304 = 0, $3305 = 0, $3306 = 0, $3307 = 0, $3308 = 0, $3309 = 0, $331 = 0, $3310 = 0, $3311 = 0, $3312 = 0, $3313 = 0, $3314 = 0, $3315 = 0, $3316 = 0, $3317 = 0, $3318 = 0, $3319 = 0; + var $332 = 0, $3320 = 0, $3321 = 0, $3322 = 0, $3323 = 0, $3324 = 0, $3325 = 0, $3326 = 0, $3327 = 0, $3328 = 0, $3329 = 0, $333 = 0, $3330 = 0, $3331 = 0, $3332 = 0, $3333 = 0, $3334 = 0, $3335 = 0, $3336 = 0, $3337 = 0; + var $3338 = 0, $3339 = 0, $334 = 0, $3340 = 0, $3341 = 0, $3342 = 0, $3343 = 0, $3344 = 0, $3345 = 0, $3346 = 0, $3347 = 0, $3348 = 0, $3349 = 0, $335 = 0, $3350 = 0, $3351 = 0, $3352 = 0, $3353 = 0, $3354 = 0, $3355 = 0; + var $3356 = 0, $3357 = 0, $3358 = 0, $3359 = 0, $336 = 0, $3360 = 0, $3361 = 0, $3362 = 0, $3363 = 0, $3364 = 0, $3365 = 0, $3366 = 0, $3367 = 0, $3368 = 0, $3369 = 0, $337 = 0, $3370 = 0, $3371 = 0, $3372 = 0, $3373 = 0; + var $3374 = 0, $3375 = 0, $3376 = 0, $3377 = 0, $3378 = 0, $3379 = 0, $338 = 0, $3380 = 0, $3381 = 0, $3382 = 0, $3383 = 0, $3384 = 0, $3385 = 0, $3386 = 0, $3387 = 0, $3388 = 0, $3389 = 0, $339 = 0, $3390 = 0, $3391 = 0; + var $3392 = 0, $3393 = 0, $3394 = 0, $3395 = 0, $3396 = 0, $3397 = 0, $3398 = 0, $3399 = 0, $34 = 0, $340 = 0, $3400 = 0, $3401 = 0, $3402 = 0, $3403 = 0, $3404 = 0, $3405 = 0, $3406 = 0, $3407 = 0, $3408 = 0, $3409 = 0; + var $341 = 0, $3410 = 0, $3411 = 0, $3412 = 0, $3413 = 0, $3414 = 0, $3415 = 0, $3416 = 0, $3417 = 0, $3418 = 0, $3419 = 0, $342 = 0, $3420 = 0, $3421 = 0, $3422 = 0, $3423 = 0, $3424 = 0, $3425 = 0, $3426 = 0, $3427 = 0; + var $3428 = 0, $3429 = 0, $343 = 0, $3430 = 0, $3431 = 0, $3432 = 0, $3433 = 0, $3434 = 0, $3435 = 0, $3436 = 0, $3437 = 0, $3438 = 0, $3439 = 0, $344 = 0, $3440 = 0, $3441 = 0, $3442 = 0, $3443 = 0, $3444 = 0, $3445 = 0; + var $3446 = 0, $3447 = 0, $3448 = 0, $3449 = 0, $345 = 0, $3450 = 0, $3451 = 0, $3452 = 0, $3453 = 0, $3454 = 0, $3455 = 0, $3456 = 0, $3457 = 0, $3458 = 0, $3459 = 0, $346 = 0, $3460 = 0, $3461 = 0, $3462 = 0, $3463 = 0; + var $3464 = 0, $3465 = 0, $3466 = 0, $3467 = 0, $3468 = 0, $3469 = 0, $347 = 0, $3470 = 0, $3471 = 0, $3472 = 0, $3473 = 0, $3474 = 0, $3475 = 0, $3476 = 0, $3477 = 0, $3478 = 0, $3479 = 0, $348 = 0, $3480 = 0, $3481 = 0; + var $3482 = 0, $3483 = 0, $3484 = 0, $3485 = 0, $3486 = 0, $3487 = 0, $3488 = 0, $3489 = 0, $349 = 0, $3490 = 0, $3491 = 0, $3492 = 0, $3493 = 0, $3494 = 0, $3495 = 0, $3496 = 0, $3497 = 0, $3498 = 0, $3499 = 0, $35 = 0; + var $350 = 0, $3500 = 0, $3501 = 0, $3502 = 0, $3503 = 0, $3504 = 0, $3505 = 0, $3506 = 0, $3507 = 0, $3508 = 0, $3509 = 0, $351 = 0, $3510 = 0, $3511 = 0, $3512 = 0, $3513 = 0, $3514 = 0, $3515 = 0, $3516 = 0, $3517 = 0; + var $3518 = 0, $3519 = 0, $352 = 0, $3520 = 0, $3521 = 0, $3522 = 0, $3523 = 0, $3524 = 0, $3525 = 0, $3526 = 0, $3527 = 0, $3528 = 0, $3529 = 0, $353 = 0, $3530 = 0, $3531 = 0, $3532 = 0, $3533 = 0, $3534 = 0, $3535 = 0; + var $3536 = 0, $3537 = 0, $3538 = 0, $3539 = 0, $354 = 0, $3540 = 0, $3541 = 0, $3542 = 0, $3543 = 0, $3544 = 0, $3545 = 0, $3546 = 0, $3547 = 0, $3548 = 0, $3549 = 0, $355 = 0, $3550 = 0, $3551 = 0, $3552 = 0, $3553 = 0; + var $3554 = 0, $3555 = 0, $3556 = 0, $3557 = 0, $3558 = 0, $3559 = 0, $356 = 0, $3560 = 0, $3561 = 0, $3562 = 0, $3563 = 0, $3564 = 0, $3565 = 0, $3566 = 0, $3567 = 0, $3568 = 0, $3569 = 0, $357 = 0, $3570 = 0, $3571 = 0; + var $3572 = 0, $3573 = 0, $3574 = 0, $3575 = 0, $3576 = 0, $3577 = 0, $3578 = 0, $3579 = 0, $358 = 0, $3580 = 0, $3581 = 0, $3582 = 0, $3583 = 0, $3584 = 0, $3585 = 0, $3586 = 0, $3587 = 0, $3588 = 0, $3589 = 0, $359 = 0; + var $3590 = 0, $3591 = 0, $3592 = 0, $3593 = 0, $3594 = 0, $3595 = 0, $3596 = 0, $3597 = 0, $3598 = 0, $3599 = 0, $36 = 0, $360 = 0, $3600 = 0, $3601 = 0, $3602 = 0, $3603 = 0, $3604 = 0, $3605 = 0, $3606 = 0, $3607 = 0; + var $3608 = 0, $3609 = 0, $361 = 0, $3610 = 0, $3611 = 0, $3612 = 0, $3613 = 0, $3614 = 0, $3615 = 0, $3616 = 0, $3617 = 0, $3618 = 0, $3619 = 0, $362 = 0, $3620 = 0, $3621 = 0, $3622 = 0, $3623 = 0, $3624 = 0, $3625 = 0; + var $3626 = 0, $3627 = 0, $3628 = 0, $3629 = 0, $363 = 0, $3630 = 0, $3631 = 0, $3632 = 0, $3633 = 0, $3634 = 0, $3635 = 0, $3636 = 0, $3637 = 0, $3638 = 0, $3639 = 0, $364 = 0, $3640 = 0, $3641 = 0, $3642 = 0, $3643 = 0; + var $3644 = 0, $3645 = 0, $3646 = 0, $3647 = 0, $3648 = 0, $3649 = 0, $365 = 0, $3650 = 0, $3651 = 0, $3652 = 0, $3653 = 0, $3654 = 0, $3655 = 0, $3656 = 0, $3657 = 0, $3658 = 0, $3659 = 0, $366 = 0, $3660 = 0, $3661 = 0; + var $3662 = 0, $3663 = 0, $3664 = 0, $3665 = 0, $3666 = 0, $3667 = 0, $3668 = 0, $3669 = 0, $367 = 0, $3670 = 0, $3671 = 0, $3672 = 0, $3673 = 0, $3674 = 0, $3675 = 0, $3676 = 0, $3677 = 0, $3678 = 0, $3679 = 0, $368 = 0; + var $3680 = 0, $3681 = 0, $3682 = 0, $3683 = 0, $3684 = 0, $3685 = 0, $3686 = 0, $3687 = 0, $3688 = 0, $3689 = 0, $369 = 0, $3690 = 0, $3691 = 0, $3692 = 0, $3693 = 0, $3694 = 0, $3695 = 0, $3696 = 0, $3697 = 0, $3698 = 0; + var $3699 = 0, $37 = 0, $370 = 0, $3700 = 0, $3701 = 0, $3702 = 0, $3703 = 0, $3704 = 0, $3705 = 0, $3706 = 0, $3707 = 0, $3708 = 0, $3709 = 0, $371 = 0, $3710 = 0, $3711 = 0, $3712 = 0, $3713 = 0, $3714 = 0, $3715 = 0; + var $3716 = 0, $3717 = 0, $3718 = 0, $3719 = 0, $372 = 0, $3720 = 0, $3721 = 0, $3722 = 0, $3723 = 0, $3724 = 0, $3725 = 0, $3726 = 0, $3727 = 0, $3728 = 0, $3729 = 0, $373 = 0, $3730 = 0, $3731 = 0, $3732 = 0, $3733 = 0; + var $3734 = 0, $3735 = 0, $3736 = 0, $3737 = 0, $3738 = 0, $3739 = 0, $374 = 0, $3740 = 0, $3741 = 0, $3742 = 0, $3743 = 0, $3744 = 0, $3745 = 0, $3746 = 0, $3747 = 0, $3748 = 0, $3749 = 0, $375 = 0, $3750 = 0, $3751 = 0; + var $3752 = 0, $3753 = 0, $3754 = 0, $3755 = 0, $3756 = 0, $3757 = 0, $3758 = 0, $3759 = 0, $376 = 0, $3760 = 0, $3761 = 0, $3762 = 0, $3763 = 0, $3764 = 0, $3765 = 0, $3766 = 0, $3767 = 0, $3768 = 0, $3769 = 0, $377 = 0; + var $3770 = 0, $3771 = 0, $3772 = 0, $3773 = 0, $3774 = 0, $3775 = 0, $3776 = 0, $3777 = 0, $3778 = 0, $3779 = 0, $378 = 0, $3780 = 0, $3781 = 0, $3782 = 0, $3783 = 0, $3784 = 0, $3785 = 0, $3786 = 0, $3787 = 0, $3788 = 0; + var $3789 = 0, $379 = 0, $3790 = 0, $3791 = 0, $3792 = 0, $3793 = 0, $3794 = 0, $3795 = 0, $3796 = 0, $3797 = 0, $3798 = 0, $3799 = 0, $38 = 0, $380 = 0, $3800 = 0, $3801 = 0, $3802 = 0, $3803 = 0, $3804 = 0, $3805 = 0; + var $3806 = 0, $3807 = 0, $3808 = 0, $3809 = 0, $381 = 0, $3810 = 0, $3811 = 0, $3812 = 0, $3813 = 0, $3814 = 0, $3815 = 0, $3816 = 0, $3817 = 0, $3818 = 0, $3819 = 0, $382 = 0, $3820 = 0, $3821 = 0, $3822 = 0, $3823 = 0; + var $3824 = 0, $3825 = 0, $3826 = 0, $3827 = 0, $3828 = 0, $3829 = 0, $383 = 0, $3830 = 0, $3831 = 0, $3832 = 0, $3833 = 0, $3834 = 0, $3835 = 0, $3836 = 0, $3837 = 0, $3838 = 0, $3839 = 0, $384 = 0, $3840 = 0, $3841 = 0; + var $3842 = 0, $3843 = 0, $3844 = 0, $3845 = 0, $3846 = 0, $3847 = 0, $3848 = 0, $3849 = 0, $385 = 0, $3850 = 0, $3851 = 0, $3852 = 0, $3853 = 0, $3854 = 0, $3855 = 0, $3856 = 0, $3857 = 0, $3858 = 0, $3859 = 0, $386 = 0; + var $3860 = 0, $3861 = 0, $3862 = 0, $3863 = 0, $3864 = 0, $3865 = 0, $3866 = 0, $3867 = 0, $3868 = 0, $3869 = 0, $387 = 0, $3870 = 0, $3871 = 0, $3872 = 0, $3873 = 0, $3874 = 0, $3875 = 0, $3876 = 0, $3877 = 0, $3878 = 0; + var $3879 = 0, $388 = 0, $3880 = 0, $3881 = 0, $3882 = 0, $3883 = 0, $3884 = 0, $3885 = 0, $3886 = 0, $3887 = 0, $3888 = 0, $3889 = 0, $389 = 0, $3890 = 0, $3891 = 0, $3892 = 0, $3893 = 0, $3894 = 0, $3895 = 0, $3896 = 0; + var $3897 = 0, $3898 = 0, $3899 = 0, $39 = 0, $390 = 0, $3900 = 0, $3901 = 0, $3902 = 0, $3903 = 0, $3904 = 0, $3905 = 0, $3906 = 0, $3907 = 0, $3908 = 0, $3909 = 0, $391 = 0, $3910 = 0, $3911 = 0, $3912 = 0, $3913 = 0; + var $3914 = 0, $3915 = 0, $3916 = 0, $3917 = 0, $3918 = 0, $3919 = 0, $392 = 0, $3920 = 0, $3921 = 0, $3922 = 0, $3923 = 0, $3924 = 0, $3925 = 0, $3926 = 0, $3927 = 0, $3928 = 0, $3929 = 0, $393 = 0, $3930 = 0, $3931 = 0; + var $3932 = 0, $3933 = 0, $3934 = 0, $3935 = 0, $3936 = 0, $3937 = 0, $3938 = 0, $3939 = 0, $394 = 0, $3940 = 0, $3941 = 0, $3942 = 0, $3943 = 0, $3944 = 0, $3945 = 0, $3946 = 0, $3947 = 0, $3948 = 0, $3949 = 0, $395 = 0; + var $3950 = 0, $3951 = 0, $3952 = 0, $3953 = 0, $3954 = 0, $3955 = 0, $3956 = 0, $3957 = 0, $3958 = 0, $3959 = 0, $396 = 0, $3960 = 0, $3961 = 0, $3962 = 0, $3963 = 0, $3964 = 0, $3965 = 0, $3966 = 0, $3967 = 0, $3968 = 0; + var $3969 = 0, $397 = 0, $3970 = 0, $3971 = 0, $3972 = 0, $3973 = 0, $3974 = 0, $3975 = 0, $3976 = 0, $3977 = 0, $3978 = 0, $3979 = 0, $398 = 0, $3980 = 0, $3981 = 0, $3982 = 0, $3983 = 0, $3984 = 0, $3985 = 0, $3986 = 0; + var $3987 = 0, $3988 = 0, $3989 = 0, $399 = 0, $3990 = 0, $3991 = 0, $3992 = 0, $3993 = 0, $3994 = 0, $3995 = 0, $3996 = 0, $3997 = 0, $3998 = 0, $3999 = 0, $4 = 0, $40 = 0, $400 = 0, $4000 = 0, $4001 = 0, $4002 = 0; + var $4003 = 0, $4004 = 0, $4005 = 0, $4006 = 0, $4007 = 0, $4008 = 0, $4009 = 0, $401 = 0, $4010 = 0, $4011 = 0, $4012 = 0, $4013 = 0, $4014 = 0, $4015 = 0, $4016 = 0, $4017 = 0, $4018 = 0, $4019 = 0, $402 = 0, $4020 = 0; + var $4021 = 0, $4022 = 0, $4023 = 0, $4024 = 0, $4025 = 0, $4026 = 0, $4027 = 0, $4028 = 0, $4029 = 0, $403 = 0, $4030 = 0, $4031 = 0, $4032 = 0, $4033 = 0, $4034 = 0, $4035 = 0, $4036 = 0, $4037 = 0, $4038 = 0, $4039 = 0; + var $404 = 0, $4040 = 0, $4041 = 0, $4042 = 0, $4043 = 0, $4044 = 0, $4045 = 0, $4046 = 0, $4047 = 0, $4048 = 0, $4049 = 0, $405 = 0, $4050 = 0, $4051 = 0, $4052 = 0, $4053 = 0, $4054 = 0, $4055 = 0, $4056 = 0, $4057 = 0; + var $4058 = 0, $4059 = 0, $406 = 0, $4060 = 0, $4061 = 0, $4062 = 0, $4063 = 0, $4064 = 0, $4065 = 0, $4066 = 0, $4067 = 0, $4068 = 0, $4069 = 0, $407 = 0, $4070 = 0, $4071 = 0, $4072 = 0, $4073 = 0, $4074 = 0, $4075 = 0; + var $4076 = 0, $4077 = 0, $4078 = 0, $4079 = 0, $408 = 0, $4080 = 0, $4081 = 0, $4082 = 0, $4083 = 0, $4084 = 0, $4085 = 0, $4086 = 0, $4087 = 0, $4088 = 0, $4089 = 0, $409 = 0, $4090 = 0, $4091 = 0, $4092 = 0, $4093 = 0; + var $4094 = 0, $4095 = 0, $4096 = 0, $4097 = 0, $4098 = 0, $4099 = 0, $41 = 0, $410 = 0, $4100 = 0, $4101 = 0, $4102 = 0, $4103 = 0, $4104 = 0, $4105 = 0, $4106 = 0, $4107 = 0, $4108 = 0, $4109 = 0, $411 = 0, $4110 = 0; + var $4111 = 0, $4112 = 0, $4113 = 0, $4114 = 0, $4115 = 0, $4116 = 0, $4117 = 0, $4118 = 0, $4119 = 0, $412 = 0, $4120 = 0, $4121 = 0, $4122 = 0, $4123 = 0, $4124 = 0, $4125 = 0, $4126 = 0, $4127 = 0, $4128 = 0, $4129 = 0; + var $413 = 0, $4130 = 0, $4131 = 0, $4132 = 0, $4133 = 0, $4134 = 0, $4135 = 0, $4136 = 0, $4137 = 0, $4138 = 0, $4139 = 0, $414 = 0, $4140 = 0, $4141 = 0, $4142 = 0, $4143 = 0, $4144 = 0, $4145 = 0, $4146 = 0, $4147 = 0; + var $4148 = 0, $4149 = 0, $415 = 0, $4150 = 0, $4151 = 0, $4152 = 0, $4153 = 0, $4154 = 0, $4155 = 0, $4156 = 0, $4157 = 0, $4158 = 0, $4159 = 0, $416 = 0, $4160 = 0, $4161 = 0, $4162 = 0, $4163 = 0, $4164 = 0, $4165 = 0; + var $4166 = 0, $4167 = 0, $4168 = 0, $4169 = 0, $417 = 0, $4170 = 0, $4171 = 0, $4172 = 0, $4173 = 0, $4174 = 0, $4175 = 0, $4176 = 0, $4177 = 0, $4178 = 0, $4179 = 0, $418 = 0, $4180 = 0, $4181 = 0, $4182 = 0, $4183 = 0; + var $4184 = 0, $4185 = 0, $4186 = 0, $4187 = 0, $4188 = 0, $4189 = 0, $419 = 0, $4190 = 0, $4191 = 0, $4192 = 0, $4193 = 0, $4194 = 0, $4195 = 0, $4196 = 0, $4197 = 0, $4198 = 0, $4199 = 0, $42 = 0, $420 = 0, $4200 = 0; + var $4201 = 0, $4202 = 0, $4203 = 0, $4204 = 0, $4205 = 0, $4206 = 0, $4207 = 0, $4208 = 0, $4209 = 0, $421 = 0, $4210 = 0, $4211 = 0, $4212 = 0, $4213 = 0, $4214 = 0, $4215 = 0, $4216 = 0, $4217 = 0, $4218 = 0, $4219 = 0; + var $422 = 0, $4220 = 0, $4221 = 0, $4222 = 0, $4223 = 0, $4224 = 0, $4225 = 0, $4226 = 0, $4227 = 0, $4228 = 0, $4229 = 0, $423 = 0, $4230 = 0, $4231 = 0, $4232 = 0, $4233 = 0, $4234 = 0, $4235 = 0, $4236 = 0, $4237 = 0; + var $4238 = 0, $4239 = 0, $424 = 0, $4240 = 0, $4241 = 0, $4242 = 0, $4243 = 0, $4244 = 0, $4245 = 0, $4246 = 0, $4247 = 0, $4248 = 0, $4249 = 0, $425 = 0, $4250 = 0, $4251 = 0, $4252 = 0, $4253 = 0, $4254 = 0, $4255 = 0; + var $4256 = 0, $4257 = 0, $4258 = 0, $4259 = 0, $426 = 0, $4260 = 0, $4261 = 0, $4262 = 0, $4263 = 0, $4264 = 0, $4265 = 0, $4266 = 0, $4267 = 0, $4268 = 0, $4269 = 0, $427 = 0, $4270 = 0, $4271 = 0, $4272 = 0, $4273 = 0; + var $4274 = 0, $4275 = 0, $4276 = 0, $4277 = 0, $4278 = 0, $4279 = 0, $428 = 0, $4280 = 0, $4281 = 0, $4282 = 0, $4283 = 0, $4284 = 0, $4285 = 0, $4286 = 0, $4287 = 0, $4288 = 0, $4289 = 0, $429 = 0, $4290 = 0, $4291 = 0; + var $4292 = 0, $4293 = 0, $4294 = 0, $4295 = 0, $4296 = 0, $4297 = 0, $4298 = 0, $4299 = 0, $43 = 0, $430 = 0, $4300 = 0, $4301 = 0, $4302 = 0, $4303 = 0, $4304 = 0, $4305 = 0, $4306 = 0, $4307 = 0, $4308 = 0, $4309 = 0; + var $431 = 0, $4310 = 0, $4311 = 0, $4312 = 0, $4313 = 0, $4314 = 0, $4315 = 0, $4316 = 0, $4317 = 0, $4318 = 0, $4319 = 0, $432 = 0, $4320 = 0, $4321 = 0, $4322 = 0, $4323 = 0, $4324 = 0, $4325 = 0, $4326 = 0, $4327 = 0; + var $4328 = 0, $4329 = 0, $433 = 0, $4330 = 0, $4331 = 0, $4332 = 0, $4333 = 0, $4334 = 0, $4335 = 0, $4336 = 0, $4337 = 0, $4338 = 0, $4339 = 0, $434 = 0, $4340 = 0, $4341 = 0, $4342 = 0, $4343 = 0, $4344 = 0, $4345 = 0; + var $4346 = 0, $4347 = 0, $4348 = 0, $4349 = 0, $435 = 0, $4350 = 0, $4351 = 0, $4352 = 0, $4353 = 0, $4354 = 0, $4355 = 0, $4356 = 0, $4357 = 0, $4358 = 0, $4359 = 0, $436 = 0, $4360 = 0, $4361 = 0, $4362 = 0, $4363 = 0; + var $4364 = 0, $4365 = 0, $4366 = 0, $4367 = 0, $4368 = 0, $4369 = 0, $437 = 0, $4370 = 0, $4371 = 0, $4372 = 0, $4373 = 0, $4374 = 0, $4375 = 0, $4376 = 0, $4377 = 0, $4378 = 0, $4379 = 0, $438 = 0, $4380 = 0, $4381 = 0; + var $4382 = 0, $4383 = 0, $4384 = 0, $4385 = 0, $4386 = 0, $4387 = 0, $4388 = 0, $4389 = 0, $439 = 0, $4390 = 0, $4391 = 0, $4392 = 0, $4393 = 0, $4394 = 0, $4395 = 0, $4396 = 0, $4397 = 0, $4398 = 0, $4399 = 0, $44 = 0; + var $440 = 0, $4400 = 0, $4401 = 0, $4402 = 0, $4403 = 0, $4404 = 0, $4405 = 0, $4406 = 0, $4407 = 0, $4408 = 0, $4409 = 0, $441 = 0, $4410 = 0, $4411 = 0, $4412 = 0, $4413 = 0, $4414 = 0, $4415 = 0, $4416 = 0, $4417 = 0; + var $4418 = 0, $4419 = 0, $442 = 0, $4420 = 0, $4421 = 0, $4422 = 0, $4423 = 0, $4424 = 0, $4425 = 0, $4426 = 0, $4427 = 0, $4428 = 0, $4429 = 0, $443 = 0, $4430 = 0, $4431 = 0, $4432 = 0, $4433 = 0, $4434 = 0, $4435 = 0; + var $4436 = 0, $4437 = 0, $4438 = 0, $4439 = 0, $444 = 0, $4440 = 0, $4441 = 0, $4442 = 0, $4443 = 0, $4444 = 0, $4445 = 0, $4446 = 0, $4447 = 0, $4448 = 0, $4449 = 0, $445 = 0, $4450 = 0, $4451 = 0, $4452 = 0, $4453 = 0; + var $4454 = 0, $4455 = 0, $4456 = 0, $4457 = 0, $4458 = 0, $4459 = 0, $446 = 0, $4460 = 0, $4461 = 0, $4462 = 0, $4463 = 0, $4464 = 0, $4465 = 0, $4466 = 0, $4467 = 0, $4468 = 0, $4469 = 0, $447 = 0, $4470 = 0, $4471 = 0; + var $4472 = 0, $4473 = 0, $4474 = 0, $4475 = 0, $4476 = 0, $4477 = 0, $4478 = 0, $4479 = 0, $448 = 0, $4480 = 0, $4481 = 0, $4482 = 0, $4483 = 0, $4484 = 0, $4485 = 0, $4486 = 0, $4487 = 0, $4488 = 0, $4489 = 0, $449 = 0; + var $4490 = 0, $4491 = 0, $4492 = 0, $4493 = 0, $4494 = 0, $4495 = 0, $4496 = 0, $4497 = 0, $4498 = 0, $4499 = 0, $45 = 0, $450 = 0, $4500 = 0, $4501 = 0, $4502 = 0, $4503 = 0, $4504 = 0, $4505 = 0, $4506 = 0, $4507 = 0; + var $4508 = 0, $4509 = 0, $451 = 0, $4510 = 0, $4511 = 0, $4512 = 0, $4513 = 0, $4514 = 0, $4515 = 0, $4516 = 0, $4517 = 0, $4518 = 0, $4519 = 0, $452 = 0, $4520 = 0, $4521 = 0, $4522 = 0, $4523 = 0, $4524 = 0, $4525 = 0; + var $4526 = 0, $4527 = 0, $4528 = 0, $4529 = 0, $453 = 0, $4530 = 0, $4531 = 0, $4532 = 0, $4533 = 0, $4534 = 0, $4535 = 0, $4536 = 0, $4537 = 0, $4538 = 0, $4539 = 0, $454 = 0, $4540 = 0, $4541 = 0, $4542 = 0, $4543 = 0; + var $4544 = 0, $4545 = 0, $4546 = 0, $4547 = 0, $4548 = 0, $4549 = 0, $455 = 0, $4550 = 0, $4551 = 0, $4552 = 0, $4553 = 0, $4554 = 0, $4555 = 0, $4556 = 0, $4557 = 0, $4558 = 0, $4559 = 0, $456 = 0, $4560 = 0, $4561 = 0; + var $4562 = 0, $4563 = 0, $4564 = 0, $4565 = 0, $4566 = 0, $4567 = 0, $4568 = 0, $4569 = 0, $457 = 0, $4570 = 0, $4571 = 0, $4572 = 0, $4573 = 0, $4574 = 0, $4575 = 0, $4576 = 0, $4577 = 0, $4578 = 0, $4579 = 0, $458 = 0; + var $4580 = 0, $4581 = 0, $4582 = 0, $4583 = 0, $4584 = 0, $4585 = 0, $4586 = 0, $4587 = 0, $4588 = 0, $4589 = 0, $459 = 0, $4590 = 0, $4591 = 0, $4592 = 0, $4593 = 0, $4594 = 0, $4595 = 0, $4596 = 0, $4597 = 0, $4598 = 0; + var $4599 = 0, $46 = 0, $460 = 0, $4600 = 0, $4601 = 0, $4602 = 0, $4603 = 0, $4604 = 0, $4605 = 0, $4606 = 0, $4607 = 0, $4608 = 0, $4609 = 0, $461 = 0, $4610 = 0, $4611 = 0, $4612 = 0, $4613 = 0, $4614 = 0, $4615 = 0; + var $4616 = 0, $4617 = 0, $4618 = 0, $4619 = 0, $462 = 0, $4620 = 0, $4621 = 0, $4622 = 0, $4623 = 0, $4624 = 0, $4625 = 0, $4626 = 0, $4627 = 0, $4628 = 0, $4629 = 0, $463 = 0, $4630 = 0, $4631 = 0, $4632 = 0, $4633 = 0; + var $4634 = 0, $4635 = 0, $4636 = 0, $4637 = 0, $4638 = 0, $4639 = 0, $464 = 0, $4640 = 0, $4641 = 0, $4642 = 0, $4643 = 0, $4644 = 0, $4645 = 0, $4646 = 0, $4647 = 0, $4648 = 0, $4649 = 0, $465 = 0, $4650 = 0, $4651 = 0; + var $4652 = 0, $4653 = 0, $4654 = 0, $4655 = 0, $4656 = 0, $4657 = 0, $4658 = 0, $4659 = 0, $466 = 0, $4660 = 0, $4661 = 0, $4662 = 0, $4663 = 0, $4664 = 0, $4665 = 0, $4666 = 0, $4667 = 0, $4668 = 0, $4669 = 0, $467 = 0; + var $4670 = 0, $4671 = 0, $4672 = 0, $4673 = 0, $4674 = 0, $4675 = 0, $4676 = 0, $4677 = 0, $4678 = 0, $4679 = 0, $468 = 0, $4680 = 0, $4681 = 0, $4682 = 0, $4683 = 0, $4684 = 0, $4685 = 0, $4686 = 0, $4687 = 0, $4688 = 0; + var $4689 = 0, $469 = 0, $4690 = 0, $4691 = 0, $4692 = 0, $4693 = 0, $4694 = 0, $4695 = 0, $4696 = 0, $4697 = 0, $4698 = 0, $4699 = 0, $47 = 0, $470 = 0, $4700 = 0, $4701 = 0, $4702 = 0, $4703 = 0, $4704 = 0, $4705 = 0; + var $4706 = 0, $4707 = 0, $4708 = 0, $4709 = 0, $471 = 0, $4710 = 0, $4711 = 0, $4712 = 0, $4713 = 0, $4714 = 0, $4715 = 0, $4716 = 0, $4717 = 0, $4718 = 0, $4719 = 0, $472 = 0, $4720 = 0, $4721 = 0, $4722 = 0, $4723 = 0; + var $4724 = 0, $4725 = 0, $4726 = 0, $4727 = 0, $4728 = 0, $4729 = 0, $473 = 0, $4730 = 0, $4731 = 0, $4732 = 0, $4733 = 0, $4734 = 0, $4735 = 0, $4736 = 0, $4737 = 0, $4738 = 0, $4739 = 0, $474 = 0, $4740 = 0, $4741 = 0; + var $4742 = 0, $4743 = 0, $4744 = 0, $4745 = 0, $4746 = 0, $4747 = 0, $4748 = 0, $4749 = 0, $475 = 0, $4750 = 0, $4751 = 0, $4752 = 0, $4753 = 0, $4754 = 0, $4755 = 0, $4756 = 0, $4757 = 0, $4758 = 0, $4759 = 0, $476 = 0; + var $4760 = 0, $4761 = 0, $4762 = 0, $4763 = 0, $4764 = 0, $4765 = 0, $4766 = 0, $4767 = 0, $4768 = 0, $4769 = 0, $477 = 0, $4770 = 0, $4771 = 0, $4772 = 0, $4773 = 0, $4774 = 0, $4775 = 0, $4776 = 0, $4777 = 0, $4778 = 0; + var $4779 = 0, $478 = 0, $4780 = 0, $4781 = 0, $4782 = 0, $4783 = 0, $4784 = 0, $4785 = 0, $4786 = 0, $4787 = 0, $4788 = 0, $4789 = 0, $479 = 0, $4790 = 0, $4791 = 0, $4792 = 0, $4793 = 0, $4794 = 0, $4795 = 0, $4796 = 0; + var $4797 = 0, $4798 = 0, $4799 = 0, $48 = 0, $480 = 0, $4800 = 0, $4801 = 0, $4802 = 0, $4803 = 0, $4804 = 0, $4805 = 0, $4806 = 0, $4807 = 0, $4808 = 0, $4809 = 0, $481 = 0, $4810 = 0, $4811 = 0, $4812 = 0, $4813 = 0; + var $4814 = 0, $4815 = 0, $4816 = 0, $4817 = 0, $4818 = 0, $4819 = 0, $482 = 0, $4820 = 0, $4821 = 0, $4822 = 0, $4823 = 0, $4824 = 0, $4825 = 0, $4826 = 0, $4827 = 0, $4828 = 0, $4829 = 0, $483 = 0, $4830 = 0, $4831 = 0; + var $4832 = 0, $4833 = 0, $4834 = 0, $4835 = 0, $4836 = 0, $4837 = 0, $4838 = 0, $4839 = 0, $484 = 0, $4840 = 0, $4841 = 0, $4842 = 0, $4843 = 0, $4844 = 0, $4845 = 0, $4846 = 0, $4847 = 0, $4848 = 0, $4849 = 0, $485 = 0; + var $4850 = 0, $4851 = 0, $4852 = 0, $4853 = 0, $4854 = 0, $4855 = 0, $4856 = 0, $4857 = 0, $4858 = 0, $4859 = 0, $486 = 0, $4860 = 0, $4861 = 0, $4862 = 0, $4863 = 0, $4864 = 0, $4865 = 0, $4866 = 0, $4867 = 0, $4868 = 0; + var $4869 = 0, $487 = 0, $4870 = 0, $4871 = 0, $4872 = 0, $4873 = 0, $4874 = 0, $4875 = 0, $4876 = 0, $4877 = 0, $4878 = 0, $4879 = 0, $488 = 0, $4880 = 0, $4881 = 0, $4882 = 0, $4883 = 0, $4884 = 0, $4885 = 0, $4886 = 0; + var $4887 = 0, $4888 = 0, $4889 = 0, $489 = 0, $4890 = 0, $4891 = 0, $4892 = 0, $4893 = 0, $4894 = 0, $4895 = 0, $4896 = 0, $4897 = 0, $4898 = 0, $4899 = 0, $49 = 0, $490 = 0, $4900 = 0, $4901 = 0, $4902 = 0, $4903 = 0; + var $4904 = 0, $4905 = 0, $4906 = 0, $4907 = 0, $4908 = 0, $4909 = 0, $491 = 0, $4910 = 0, $4911 = 0, $4912 = 0, $4913 = 0, $4914 = 0, $4915 = 0, $4916 = 0, $4917 = 0, $4918 = 0, $4919 = 0, $492 = 0, $4920 = 0, $4921 = 0; + var $4922 = 0, $4923 = 0, $4924 = 0, $4925 = 0, $4926 = 0, $4927 = 0, $4928 = 0, $4929 = 0, $493 = 0, $4930 = 0, $4931 = 0, $4932 = 0, $4933 = 0, $4934 = 0, $4935 = 0, $4936 = 0, $4937 = 0, $4938 = 0, $4939 = 0, $494 = 0; + var $4940 = 0, $4941 = 0, $4942 = 0, $4943 = 0, $4944 = 0, $4945 = 0, $4946 = 0, $4947 = 0, $4948 = 0, $4949 = 0, $495 = 0, $4950 = 0, $4951 = 0, $4952 = 0, $4953 = 0, $4954 = 0, $4955 = 0, $4956 = 0, $4957 = 0, $4958 = 0; + var $4959 = 0, $496 = 0, $4960 = 0, $4961 = 0, $4962 = 0, $4963 = 0, $4964 = 0, $4965 = 0, $4966 = 0, $4967 = 0, $4968 = 0, $4969 = 0, $497 = 0, $4970 = 0, $4971 = 0, $4972 = 0, $4973 = 0, $4974 = 0, $4975 = 0, $4976 = 0; + var $4977 = 0, $4978 = 0, $4979 = 0, $498 = 0, $4980 = 0, $4981 = 0, $4982 = 0, $4983 = 0, $4984 = 0, $4985 = 0, $4986 = 0, $4987 = 0, $4988 = 0, $4989 = 0, $499 = 0, $4990 = 0, $4991 = 0, $4992 = 0, $4993 = 0, $4994 = 0; + var $4995 = 0, $4996 = 0, $4997 = 0, $4998 = 0, $4999 = 0, $5 = 0, $50 = 0, $500 = 0, $5000 = 0, $5001 = 0, $5002 = 0, $5003 = 0, $5004 = 0, $5005 = 0, $5006 = 0, $5007 = 0, $5008 = 0, $5009 = 0, $501 = 0, $5010 = 0; + var $5011 = 0, $5012 = 0, $5013 = 0, $5014 = 0, $5015 = 0, $5016 = 0, $5017 = 0, $5018 = 0, $5019 = 0, $502 = 0, $5020 = 0, $5021 = 0, $5022 = 0, $5023 = 0, $5024 = 0, $5025 = 0, $5026 = 0, $5027 = 0, $5028 = 0, $5029 = 0; + var $503 = 0, $5030 = 0, $5031 = 0, $5032 = 0, $5033 = 0, $5034 = 0, $5035 = 0, $5036 = 0, $5037 = 0, $5038 = 0, $5039 = 0, $504 = 0, $5040 = 0, $5041 = 0, $5042 = 0, $5043 = 0, $5044 = 0, $5045 = 0, $5046 = 0, $5047 = 0; + var $5048 = 0, $5049 = 0, $505 = 0, $5050 = 0, $5051 = 0, $5052 = 0, $5053 = 0, $5054 = 0, $5055 = 0, $5056 = 0, $5057 = 0, $5058 = 0, $5059 = 0, $506 = 0, $5060 = 0, $5061 = 0, $5062 = 0, $5063 = 0, $5064 = 0, $5065 = 0; + var $5066 = 0, $5067 = 0, $5068 = 0, $5069 = 0, $507 = 0, $5070 = 0, $5071 = 0, $5072 = 0, $5073 = 0, $5074 = 0, $5075 = 0, $5076 = 0, $5077 = 0, $5078 = 0, $5079 = 0, $508 = 0, $5080 = 0, $5081 = 0, $5082 = 0, $5083 = 0; + var $5084 = 0, $5085 = 0, $5086 = 0, $5087 = 0, $5088 = 0, $5089 = 0, $509 = 0, $5090 = 0, $5091 = 0, $5092 = 0, $5093 = 0, $5094 = 0, $5095 = 0, $5096 = 0, $5097 = 0, $5098 = 0, $5099 = 0, $51 = 0, $510 = 0, $5100 = 0; + var $5101 = 0, $5102 = 0, $5103 = 0, $5104 = 0, $5105 = 0, $5106 = 0, $5107 = 0, $5108 = 0, $5109 = 0, $511 = 0, $5110 = 0, $5111 = 0, $5112 = 0, $5113 = 0, $5114 = 0, $5115 = 0, $5116 = 0, $5117 = 0, $5118 = 0, $5119 = 0; + var $512 = 0, $5120 = 0, $5121 = 0, $5122 = 0, $5123 = 0, $5124 = 0, $5125 = 0, $5126 = 0, $5127 = 0, $5128 = 0, $5129 = 0, $513 = 0, $5130 = 0, $5131 = 0, $5132 = 0, $5133 = 0, $5134 = 0, $5135 = 0, $5136 = 0, $5137 = 0; + var $5138 = 0, $5139 = 0, $514 = 0, $5140 = 0, $5141 = 0, $5142 = 0, $5143 = 0, $5144 = 0, $5145 = 0, $5146 = 0, $5147 = 0, $5148 = 0, $5149 = 0, $515 = 0, $5150 = 0, $5151 = 0, $5152 = 0, $5153 = 0, $5154 = 0, $5155 = 0; + var $5156 = 0, $5157 = 0, $5158 = 0, $5159 = 0, $516 = 0, $5160 = 0, $5161 = 0, $5162 = 0, $5163 = 0, $5164 = 0, $5165 = 0, $5166 = 0, $5167 = 0, $5168 = 0, $5169 = 0, $517 = 0, $5170 = 0, $5171 = 0, $5172 = 0, $5173 = 0; + var $5174 = 0, $5175 = 0, $5176 = 0, $5177 = 0, $5178 = 0, $5179 = 0, $518 = 0, $5180 = 0, $5181 = 0, $5182 = 0, $5183 = 0, $5184 = 0, $5185 = 0, $5186 = 0, $5187 = 0, $5188 = 0, $5189 = 0, $519 = 0, $5190 = 0, $5191 = 0; + var $5192 = 0, $5193 = 0, $5194 = 0, $5195 = 0, $5196 = 0, $5197 = 0, $5198 = 0, $5199 = 0, $52 = 0, $520 = 0, $5200 = 0, $5201 = 0, $5202 = 0, $5203 = 0, $5204 = 0, $5205 = 0, $5206 = 0, $5207 = 0, $5208 = 0, $5209 = 0; + var $521 = 0, $5210 = 0, $5211 = 0, $5212 = 0, $5213 = 0, $5214 = 0, $5215 = 0, $5216 = 0, $5217 = 0, $5218 = 0, $5219 = 0, $522 = 0, $5220 = 0, $5221 = 0, $5222 = 0, $5223 = 0, $5224 = 0, $5225 = 0, $5226 = 0, $5227 = 0; + var $5228 = 0, $5229 = 0, $523 = 0, $5230 = 0, $5231 = 0, $5232 = 0, $5233 = 0, $5234 = 0, $5235 = 0, $5236 = 0, $5237 = 0, $5238 = 0, $5239 = 0, $524 = 0, $5240 = 0, $5241 = 0, $5242 = 0, $5243 = 0, $5244 = 0, $5245 = 0; + var $5246 = 0, $5247 = 0, $5248 = 0, $5249 = 0, $525 = 0, $5250 = 0, $5251 = 0, $5252 = 0, $5253 = 0, $5254 = 0, $5255 = 0, $5256 = 0, $5257 = 0, $5258 = 0, $5259 = 0, $526 = 0, $5260 = 0, $5261 = 0, $5262 = 0, $5263 = 0; + var $5264 = 0, $5265 = 0, $5266 = 0, $5267 = 0, $5268 = 0, $5269 = 0, $527 = 0, $5270 = 0, $5271 = 0, $5272 = 0, $5273 = 0, $5274 = 0, $5275 = 0, $5276 = 0, $5277 = 0, $5278 = 0, $5279 = 0, $528 = 0, $5280 = 0, $5281 = 0; + var $5282 = 0, $5283 = 0, $5284 = 0, $5285 = 0, $5286 = 0, $5287 = 0, $5288 = 0, $5289 = 0, $529 = 0, $5290 = 0, $5291 = 0, $5292 = 0, $5293 = 0, $5294 = 0, $5295 = 0, $5296 = 0, $5297 = 0, $5298 = 0, $5299 = 0, $53 = 0; + var $530 = 0, $5300 = 0, $5301 = 0, $5302 = 0, $5303 = 0, $5304 = 0, $5305 = 0, $5306 = 0, $5307 = 0, $5308 = 0, $5309 = 0, $531 = 0, $5310 = 0, $5311 = 0, $5312 = 0, $5313 = 0, $5314 = 0, $5315 = 0, $5316 = 0, $5317 = 0; + var $5318 = 0, $5319 = 0, $532 = 0, $5320 = 0, $5321 = 0, $5322 = 0, $5323 = 0, $5324 = 0, $5325 = 0, $5326 = 0, $5327 = 0, $5328 = 0, $5329 = 0, $533 = 0, $5330 = 0, $5331 = 0, $5332 = 0, $5333 = 0, $5334 = 0, $5335 = 0; + var $5336 = 0, $5337 = 0, $5338 = 0, $5339 = 0, $534 = 0, $5340 = 0, $5341 = 0, $5342 = 0, $5343 = 0, $5344 = 0, $5345 = 0, $5346 = 0, $5347 = 0, $5348 = 0, $5349 = 0, $535 = 0, $5350 = 0, $5351 = 0, $5352 = 0, $5353 = 0; + var $5354 = 0, $5355 = 0, $5356 = 0, $5357 = 0, $5358 = 0, $5359 = 0, $536 = 0, $5360 = 0, $5361 = 0, $5362 = 0, $5363 = 0, $5364 = 0, $5365 = 0, $5366 = 0, $5367 = 0, $5368 = 0, $5369 = 0, $537 = 0, $5370 = 0, $5371 = 0; + var $5372 = 0, $5373 = 0, $5374 = 0, $5375 = 0, $5376 = 0, $5377 = 0, $5378 = 0, $5379 = 0, $538 = 0, $5380 = 0, $5381 = 0, $5382 = 0, $5383 = 0, $5384 = 0, $5385 = 0, $5386 = 0, $5387 = 0, $5388 = 0, $5389 = 0, $539 = 0; + var $5390 = 0, $5391 = 0, $5392 = 0, $5393 = 0, $5394 = 0, $5395 = 0, $5396 = 0, $5397 = 0, $5398 = 0, $5399 = 0, $54 = 0, $540 = 0, $5400 = 0, $5401 = 0, $5402 = 0, $5403 = 0, $5404 = 0, $5405 = 0, $5406 = 0, $5407 = 0; + var $5408 = 0, $5409 = 0, $541 = 0, $5410 = 0, $5411 = 0, $5412 = 0, $5413 = 0, $5414 = 0, $5415 = 0, $5416 = 0, $5417 = 0, $5418 = 0, $5419 = 0, $542 = 0, $5420 = 0, $5421 = 0, $5422 = 0, $5423 = 0, $5424 = 0, $5425 = 0; + var $5426 = 0, $5427 = 0, $5428 = 0, $5429 = 0, $543 = 0, $5430 = 0, $5431 = 0, $5432 = 0, $5433 = 0, $5434 = 0, $5435 = 0, $5436 = 0, $5437 = 0, $5438 = 0, $5439 = 0, $544 = 0, $5440 = 0, $5441 = 0, $5442 = 0, $5443 = 0; + var $5444 = 0, $5445 = 0, $5446 = 0, $5447 = 0, $5448 = 0, $5449 = 0, $545 = 0, $5450 = 0, $5451 = 0, $5452 = 0, $5453 = 0, $5454 = 0, $5455 = 0, $5456 = 0, $5457 = 0, $5458 = 0, $5459 = 0, $546 = 0, $5460 = 0, $5461 = 0; + var $5462 = 0, $5463 = 0, $5464 = 0, $5465 = 0, $5466 = 0, $5467 = 0, $5468 = 0, $5469 = 0, $547 = 0, $5470 = 0, $5471 = 0, $5472 = 0, $5473 = 0, $5474 = 0, $5475 = 0, $5476 = 0, $5477 = 0, $5478 = 0, $5479 = 0, $548 = 0; + var $5480 = 0, $5481 = 0, $5482 = 0, $5483 = 0, $5484 = 0, $5485 = 0, $5486 = 0, $5487 = 0, $5488 = 0, $5489 = 0, $549 = 0, $5490 = 0, $5491 = 0, $5492 = 0, $5493 = 0, $5494 = 0, $5495 = 0, $5496 = 0, $5497 = 0, $5498 = 0; + var $5499 = 0, $55 = 0, $550 = 0, $5500 = 0, $5501 = 0, $5502 = 0, $5503 = 0, $5504 = 0, $5505 = 0, $5506 = 0, $5507 = 0, $5508 = 0, $5509 = 0, $551 = 0, $5510 = 0, $5511 = 0, $5512 = 0, $5513 = 0, $5514 = 0, $5515 = 0; + var $5516 = 0, $5517 = 0, $5518 = 0, $5519 = 0, $552 = 0, $5520 = 0, $5521 = 0, $5522 = 0, $5523 = 0, $5524 = 0, $5525 = 0, $5526 = 0, $5527 = 0, $5528 = 0, $5529 = 0, $553 = 0, $5530 = 0, $5531 = 0, $5532 = 0, $5533 = 0; + var $5534 = 0, $5535 = 0, $5536 = 0, $5537 = 0, $5538 = 0, $5539 = 0, $554 = 0, $5540 = 0, $5541 = 0, $5542 = 0, $5543 = 0, $5544 = 0, $5545 = 0, $5546 = 0, $5547 = 0, $5548 = 0, $5549 = 0, $555 = 0, $5550 = 0, $5551 = 0; + var $5552 = 0, $5553 = 0, $5554 = 0, $5555 = 0, $5556 = 0, $5557 = 0, $5558 = 0, $5559 = 0, $556 = 0, $5560 = 0, $5561 = 0, $5562 = 0, $5563 = 0, $5564 = 0, $5565 = 0, $5566 = 0, $5567 = 0, $5568 = 0, $5569 = 0, $557 = 0; + var $5570 = 0, $5571 = 0, $5572 = 0, $5573 = 0, $5574 = 0, $5575 = 0, $5576 = 0, $5577 = 0, $5578 = 0, $5579 = 0, $558 = 0, $5580 = 0, $5581 = 0, $5582 = 0, $5583 = 0, $5584 = 0, $5585 = 0, $5586 = 0, $5587 = 0, $5588 = 0; + var $5589 = 0, $559 = 0, $5590 = 0, $5591 = 0, $5592 = 0, $5593 = 0, $5594 = 0, $5595 = 0, $5596 = 0, $5597 = 0, $5598 = 0, $5599 = 0, $56 = 0, $560 = 0, $5600 = 0, $5601 = 0, $5602 = 0, $5603 = 0, $5604 = 0, $5605 = 0; + var $5606 = 0, $5607 = 0, $5608 = 0, $5609 = 0, $561 = 0, $5610 = 0, $5611 = 0, $5612 = 0, $5613 = 0, $5614 = 0, $5615 = 0, $5616 = 0, $5617 = 0, $5618 = 0, $5619 = 0, $562 = 0, $5620 = 0, $5621 = 0, $5622 = 0, $5623 = 0; + var $5624 = 0, $5625 = 0, $5626 = 0, $5627 = 0, $5628 = 0, $5629 = 0, $563 = 0, $5630 = 0, $5631 = 0, $5632 = 0, $5633 = 0, $5634 = 0, $5635 = 0, $5636 = 0, $5637 = 0, $5638 = 0, $5639 = 0, $564 = 0, $5640 = 0, $5641 = 0; + var $5642 = 0, $5643 = 0, $5644 = 0, $5645 = 0, $5646 = 0, $5647 = 0, $5648 = 0, $5649 = 0, $565 = 0, $5650 = 0, $5651 = 0, $5652 = 0, $5653 = 0, $5654 = 0, $5655 = 0, $5656 = 0, $5657 = 0, $5658 = 0, $5659 = 0, $566 = 0; + var $5660 = 0, $5661 = 0, $5662 = 0, $5663 = 0, $5664 = 0, $5665 = 0, $5666 = 0, $5667 = 0, $5668 = 0, $5669 = 0, $567 = 0, $5670 = 0, $5671 = 0, $5672 = 0, $5673 = 0, $5674 = 0, $5675 = 0, $5676 = 0, $5677 = 0, $5678 = 0; + var $5679 = 0, $568 = 0, $5680 = 0, $5681 = 0, $5682 = 0, $5683 = 0, $5684 = 0, $5685 = 0, $5686 = 0, $5687 = 0, $5688 = 0, $5689 = 0, $569 = 0, $5690 = 0, $5691 = 0, $5692 = 0, $5693 = 0, $5694 = 0, $5695 = 0, $5696 = 0; + var $5697 = 0, $5698 = 0, $5699 = 0, $57 = 0, $570 = 0, $5700 = 0, $5701 = 0, $5702 = 0, $5703 = 0, $5704 = 0, $5705 = 0, $5706 = 0, $5707 = 0, $5708 = 0, $5709 = 0, $571 = 0, $5710 = 0, $5711 = 0, $5712 = 0, $5713 = 0; + var $5714 = 0, $5715 = 0, $5716 = 0, $5717 = 0, $5718 = 0, $5719 = 0, $572 = 0, $5720 = 0, $5721 = 0, $5722 = 0, $5723 = 0, $5724 = 0, $5725 = 0, $5726 = 0, $5727 = 0, $5728 = 0, $5729 = 0, $573 = 0, $5730 = 0, $5731 = 0; + var $5732 = 0, $5733 = 0, $5734 = 0, $5735 = 0, $5736 = 0, $5737 = 0, $5738 = 0, $5739 = 0, $574 = 0, $5740 = 0, $5741 = 0, $5742 = 0, $5743 = 0, $5744 = 0, $5745 = 0, $5746 = 0, $5747 = 0, $5748 = 0, $5749 = 0, $575 = 0; + var $5750 = 0, $5751 = 0, $5752 = 0, $5753 = 0, $5754 = 0, $5755 = 0, $5756 = 0, $5757 = 0, $5758 = 0, $5759 = 0, $576 = 0, $5760 = 0, $5761 = 0, $5762 = 0, $5763 = 0, $5764 = 0, $5765 = 0, $5766 = 0, $5767 = 0, $5768 = 0; + var $5769 = 0, $577 = 0, $5770 = 0, $5771 = 0, $5772 = 0, $5773 = 0, $5774 = 0, $5775 = 0, $5776 = 0, $5777 = 0, $5778 = 0, $5779 = 0, $578 = 0, $5780 = 0, $5781 = 0, $5782 = 0, $5783 = 0, $5784 = 0, $5785 = 0, $5786 = 0; + var $5787 = 0, $5788 = 0, $5789 = 0, $579 = 0, $5790 = 0, $5791 = 0, $5792 = 0, $5793 = 0, $5794 = 0, $5795 = 0, $5796 = 0, $5797 = 0, $5798 = 0, $5799 = 0, $58 = 0, $580 = 0, $5800 = 0, $5801 = 0, $5802 = 0, $5803 = 0; + var $5804 = 0, $5805 = 0, $5806 = 0, $5807 = 0, $5808 = 0, $5809 = 0, $581 = 0, $5810 = 0, $5811 = 0, $5812 = 0, $5813 = 0, $5814 = 0, $5815 = 0, $5816 = 0, $5817 = 0, $5818 = 0, $5819 = 0, $582 = 0, $5820 = 0, $5821 = 0; + var $5822 = 0, $5823 = 0, $5824 = 0, $5825 = 0, $5826 = 0, $5827 = 0, $5828 = 0, $5829 = 0, $583 = 0, $5830 = 0, $5831 = 0, $5832 = 0, $5833 = 0, $5834 = 0, $5835 = 0, $5836 = 0, $5837 = 0, $5838 = 0, $5839 = 0, $584 = 0; + var $5840 = 0, $5841 = 0, $5842 = 0, $5843 = 0, $5844 = 0, $5845 = 0, $5846 = 0, $5847 = 0, $5848 = 0, $5849 = 0, $585 = 0, $5850 = 0, $5851 = 0, $5852 = 0, $5853 = 0, $5854 = 0, $5855 = 0, $5856 = 0, $5857 = 0, $5858 = 0; + var $5859 = 0, $586 = 0, $5860 = 0, $5861 = 0, $5862 = 0, $5863 = 0, $5864 = 0, $5865 = 0, $5866 = 0, $5867 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0; + var $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0; + var $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0; + var $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0; + var $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0; + var $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0; + var $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0; + var $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0; + var $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0; + var $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0; + var $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0; + var $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0; + var $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0; + var $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0; + var $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0; + var $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0; + var $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0; + var $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0; + var $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0; + var $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0; + var $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0; + var $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0, $963 = 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0; + var $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0, $981 = 0, $982 = 0, $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0; + var $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0, $a = 0, $b = 0, $c = 0, $d = 0, $e = 0, $f = 0, $g = 0, $h = 0, $t = 0, $t1 = 0, $t11 = 0, $t2 = 0; + var $t22 = 0, $w = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 240|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $a = sp + 216|0; + $b = sp + 208|0; + $c = sp + 200|0; + $d = sp + 192|0; + $e = sp + 184|0; + $f = sp + 176|0; + $g = sp + 168|0; + $h = sp + 160|0; + $w = sp + 32|0; + $t1 = sp + 24|0; + $t2 = sp + 16|0; + $t11 = sp + 8|0; + $t22 = sp; + $0 = $hd; + $1 = $data; + $2 = $0; + $3 = $2; + $4 = $3; + $5 = HEAP32[$4>>2]|0; + $6 = (($3) + 4)|0; + $7 = $6; + $8 = HEAP32[$7>>2]|0; + $9 = $a; + $10 = $9; + HEAP32[$10>>2] = $5; + $11 = (($9) + 4)|0; + $12 = $11; + HEAP32[$12>>2] = $8; + $13 = $0; + $14 = ((($13)) + 8|0); + $15 = $14; + $16 = $15; + $17 = HEAP32[$16>>2]|0; + $18 = (($15) + 4)|0; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + $21 = $b; + $22 = $21; + HEAP32[$22>>2] = $17; + $23 = (($21) + 4)|0; + $24 = $23; + HEAP32[$24>>2] = $20; + $25 = $0; + $26 = ((($25)) + 16|0); + $27 = $26; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $30 = (($27) + 4)|0; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = $c; + $34 = $33; + HEAP32[$34>>2] = $29; + $35 = (($33) + 4)|0; + $36 = $35; + HEAP32[$36>>2] = $32; + $37 = $0; + $38 = ((($37)) + 24|0); + $39 = $38; + $40 = $39; + $41 = HEAP32[$40>>2]|0; + $42 = (($39) + 4)|0; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = $d; + $46 = $45; + HEAP32[$46>>2] = $41; + $47 = (($45) + 4)|0; + $48 = $47; + HEAP32[$48>>2] = $44; + $49 = $0; + $50 = ((($49)) + 32|0); + $51 = $50; + $52 = $51; + $53 = HEAP32[$52>>2]|0; + $54 = (($51) + 4)|0; + $55 = $54; + $56 = HEAP32[$55>>2]|0; + $57 = $e; + $58 = $57; + HEAP32[$58>>2] = $53; + $59 = (($57) + 4)|0; + $60 = $59; + HEAP32[$60>>2] = $56; + $61 = $0; + $62 = ((($61)) + 40|0); + $63 = $62; + $64 = $63; + $65 = HEAP32[$64>>2]|0; + $66 = (($63) + 4)|0; + $67 = $66; + $68 = HEAP32[$67>>2]|0; + $69 = $f; + $70 = $69; + HEAP32[$70>>2] = $65; + $71 = (($69) + 4)|0; + $72 = $71; + HEAP32[$72>>2] = $68; + $73 = $0; + $74 = ((($73)) + 48|0); + $75 = $74; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $78 = (($75) + 4)|0; + $79 = $78; + $80 = HEAP32[$79>>2]|0; + $81 = $g; + $82 = $81; + HEAP32[$82>>2] = $77; + $83 = (($81) + 4)|0; + $84 = $83; + HEAP32[$84>>2] = $80; + $85 = $0; + $86 = ((($85)) + 56|0); + $87 = $86; + $88 = $87; + $89 = HEAP32[$88>>2]|0; + $90 = (($87) + 4)|0; + $91 = $90; + $92 = HEAP32[$91>>2]|0; + $93 = $h; + $94 = $93; + HEAP32[$94>>2] = $89; + $95 = (($93) + 4)|0; + $96 = $95; + HEAP32[$96>>2] = $92; + $t = 0; + while(1) { + $97 = $t; + $98 = ($97|0)<(16); + if (!($98)) { + break; + } + $99 = $1; + $100 = $t; + $101 = $100<<3; + $102 = (($99) + ($101)|0); + $103 = (_buf_get_be64($102)|0); + $104 = tempRet0; + $105 = $t; + $106 = (($w) + ($105<<3)|0); + $107 = $106; + $108 = $107; + HEAP32[$108>>2] = $103; + $109 = (($107) + 4)|0; + $110 = $109; + HEAP32[$110>>2] = $104; + $111 = $t; + $112 = (($111) + 1)|0; + $t = $112; + } + $t = 0; + while(1) { + $113 = $t; + $114 = ($113|0)<(64); + if (!($114)) { + break; + } + $115 = $h; + $116 = $115; + $117 = HEAP32[$116>>2]|0; + $118 = (($115) + 4)|0; + $119 = $118; + $120 = HEAP32[$119>>2]|0; + $121 = $e; + $122 = $121; + $123 = HEAP32[$122>>2]|0; + $124 = (($121) + 4)|0; + $125 = $124; + $126 = HEAP32[$125>>2]|0; + $127 = (_Sum1_1422($123,$126)|0); + $128 = tempRet0; + $129 = (_i64Add(($117|0),($120|0),($127|0),($128|0))|0); + $130 = tempRet0; + $131 = $e; + $132 = $131; + $133 = HEAP32[$132>>2]|0; + $134 = (($131) + 4)|0; + $135 = $134; + $136 = HEAP32[$135>>2]|0; + $137 = $f; + $138 = $137; + $139 = HEAP32[$138>>2]|0; + $140 = (($137) + 4)|0; + $141 = $140; + $142 = HEAP32[$141>>2]|0; + $143 = $g; + $144 = $143; + $145 = HEAP32[$144>>2]|0; + $146 = (($143) + 4)|0; + $147 = $146; + $148 = HEAP32[$147>>2]|0; + $149 = (_Ch($133,$136,$139,$142,$145,$148)|0); + $150 = tempRet0; + $151 = (_i64Add(($129|0),($130|0),($149|0),($150|0))|0); + $152 = tempRet0; + $153 = $t; + $154 = (80 + ($153<<3)|0); + $155 = $154; + $156 = $155; + $157 = HEAP32[$156>>2]|0; + $158 = (($155) + 4)|0; + $159 = $158; + $160 = HEAP32[$159>>2]|0; + $161 = (_i64Add(($151|0),($152|0),($157|0),($160|0))|0); + $162 = tempRet0; + $163 = $w; + $164 = $163; + $165 = HEAP32[$164>>2]|0; + $166 = (($163) + 4)|0; + $167 = $166; + $168 = HEAP32[$167>>2]|0; + $169 = (_i64Add(($161|0),($162|0),($165|0),($168|0))|0); + $170 = tempRet0; + $171 = $t1; + $172 = $171; + HEAP32[$172>>2] = $169; + $173 = (($171) + 4)|0; + $174 = $173; + HEAP32[$174>>2] = $170; + $175 = ((($w)) + 112|0); + $176 = $175; + $177 = $176; + $178 = HEAP32[$177>>2]|0; + $179 = (($176) + 4)|0; + $180 = $179; + $181 = HEAP32[$180>>2]|0; + $182 = (_ROTR($178,$181,19,0)|0); + $183 = tempRet0; + $184 = ((($w)) + 112|0); + $185 = $184; + $186 = $185; + $187 = HEAP32[$186>>2]|0; + $188 = (($185) + 4)|0; + $189 = $188; + $190 = HEAP32[$189>>2]|0; + $191 = (_ROTR($187,$190,61,0)|0); + $192 = tempRet0; + $193 = $182 ^ $191; + $194 = $183 ^ $192; + $195 = ((($w)) + 112|0); + $196 = $195; + $197 = $196; + $198 = HEAP32[$197>>2]|0; + $199 = (($196) + 4)|0; + $200 = $199; + $201 = HEAP32[$200>>2]|0; + $202 = (_bitshift64Lshr(($198|0),($201|0),6)|0); + $203 = tempRet0; + $204 = $193 ^ $202; + $205 = $194 ^ $203; + $206 = ((($w)) + 72|0); + $207 = $206; + $208 = $207; + $209 = HEAP32[$208>>2]|0; + $210 = (($207) + 4)|0; + $211 = $210; + $212 = HEAP32[$211>>2]|0; + $213 = (_i64Add(($204|0),($205|0),($209|0),($212|0))|0); + $214 = tempRet0; + $215 = ((($w)) + 8|0); + $216 = $215; + $217 = $216; + $218 = HEAP32[$217>>2]|0; + $219 = (($216) + 4)|0; + $220 = $219; + $221 = HEAP32[$220>>2]|0; + $222 = (_ROTR($218,$221,1,0)|0); + $223 = tempRet0; + $224 = ((($w)) + 8|0); + $225 = $224; + $226 = $225; + $227 = HEAP32[$226>>2]|0; + $228 = (($225) + 4)|0; + $229 = $228; + $230 = HEAP32[$229>>2]|0; + $231 = (_ROTR($227,$230,8,0)|0); + $232 = tempRet0; + $233 = $222 ^ $231; + $234 = $223 ^ $232; + $235 = ((($w)) + 8|0); + $236 = $235; + $237 = $236; + $238 = HEAP32[$237>>2]|0; + $239 = (($236) + 4)|0; + $240 = $239; + $241 = HEAP32[$240>>2]|0; + $242 = (_bitshift64Lshr(($238|0),($241|0),7)|0); + $243 = tempRet0; + $244 = $233 ^ $242; + $245 = $234 ^ $243; + $246 = (_i64Add(($213|0),($214|0),($244|0),($245|0))|0); + $247 = tempRet0; + $248 = $w; + $249 = $248; + $250 = HEAP32[$249>>2]|0; + $251 = (($248) + 4)|0; + $252 = $251; + $253 = HEAP32[$252>>2]|0; + $254 = (_i64Add(($250|0),($253|0),($246|0),($247|0))|0); + $255 = tempRet0; + $256 = $w; + $257 = $256; + HEAP32[$257>>2] = $254; + $258 = (($256) + 4)|0; + $259 = $258; + HEAP32[$259>>2] = $255; + $260 = $a; + $261 = $260; + $262 = HEAP32[$261>>2]|0; + $263 = (($260) + 4)|0; + $264 = $263; + $265 = HEAP32[$264>>2]|0; + $266 = (_Sum0_1423($262,$265)|0); + $267 = tempRet0; + $268 = $a; + $269 = $268; + $270 = HEAP32[$269>>2]|0; + $271 = (($268) + 4)|0; + $272 = $271; + $273 = HEAP32[$272>>2]|0; + $274 = $b; + $275 = $274; + $276 = HEAP32[$275>>2]|0; + $277 = (($274) + 4)|0; + $278 = $277; + $279 = HEAP32[$278>>2]|0; + $280 = $c; + $281 = $280; + $282 = HEAP32[$281>>2]|0; + $283 = (($280) + 4)|0; + $284 = $283; + $285 = HEAP32[$284>>2]|0; + $286 = (_Maj_1424($270,$273,$276,$279,$282,$285)|0); + $287 = tempRet0; + $288 = (_i64Add(($266|0),($267|0),($286|0),($287|0))|0); + $289 = tempRet0; + $290 = $t2; + $291 = $290; + HEAP32[$291>>2] = $288; + $292 = (($290) + 4)|0; + $293 = $292; + HEAP32[$293>>2] = $289; + $294 = $t1; + $295 = $294; + $296 = HEAP32[$295>>2]|0; + $297 = (($294) + 4)|0; + $298 = $297; + $299 = HEAP32[$298>>2]|0; + $300 = $d; + $301 = $300; + $302 = HEAP32[$301>>2]|0; + $303 = (($300) + 4)|0; + $304 = $303; + $305 = HEAP32[$304>>2]|0; + $306 = (_i64Add(($302|0),($305|0),($296|0),($299|0))|0); + $307 = tempRet0; + $308 = $d; + $309 = $308; + HEAP32[$309>>2] = $306; + $310 = (($308) + 4)|0; + $311 = $310; + HEAP32[$311>>2] = $307; + $312 = $t1; + $313 = $312; + $314 = HEAP32[$313>>2]|0; + $315 = (($312) + 4)|0; + $316 = $315; + $317 = HEAP32[$316>>2]|0; + $318 = $t2; + $319 = $318; + $320 = HEAP32[$319>>2]|0; + $321 = (($318) + 4)|0; + $322 = $321; + $323 = HEAP32[$322>>2]|0; + $324 = (_i64Add(($314|0),($317|0),($320|0),($323|0))|0); + $325 = tempRet0; + $326 = $h; + $327 = $326; + HEAP32[$327>>2] = $324; + $328 = (($326) + 4)|0; + $329 = $328; + HEAP32[$329>>2] = $325; + $330 = $g; + $331 = $330; + $332 = HEAP32[$331>>2]|0; + $333 = (($330) + 4)|0; + $334 = $333; + $335 = HEAP32[$334>>2]|0; + $336 = $d; + $337 = $336; + $338 = HEAP32[$337>>2]|0; + $339 = (($336) + 4)|0; + $340 = $339; + $341 = HEAP32[$340>>2]|0; + $342 = (_Sum1_1422($338,$341)|0); + $343 = tempRet0; + $344 = (_i64Add(($332|0),($335|0),($342|0),($343|0))|0); + $345 = tempRet0; + $346 = $d; + $347 = $346; + $348 = HEAP32[$347>>2]|0; + $349 = (($346) + 4)|0; + $350 = $349; + $351 = HEAP32[$350>>2]|0; + $352 = $e; + $353 = $352; + $354 = HEAP32[$353>>2]|0; + $355 = (($352) + 4)|0; + $356 = $355; + $357 = HEAP32[$356>>2]|0; + $358 = $f; + $359 = $358; + $360 = HEAP32[$359>>2]|0; + $361 = (($358) + 4)|0; + $362 = $361; + $363 = HEAP32[$362>>2]|0; + $364 = (_Ch($348,$351,$354,$357,$360,$363)|0); + $365 = tempRet0; + $366 = (_i64Add(($344|0),($345|0),($364|0),($365|0))|0); + $367 = tempRet0; + $368 = $t; + $369 = (($368) + 1)|0; + $370 = (80 + ($369<<3)|0); + $371 = $370; + $372 = $371; + $373 = HEAP32[$372>>2]|0; + $374 = (($371) + 4)|0; + $375 = $374; + $376 = HEAP32[$375>>2]|0; + $377 = (_i64Add(($366|0),($367|0),($373|0),($376|0))|0); + $378 = tempRet0; + $379 = ((($w)) + 8|0); + $380 = $379; + $381 = $380; + $382 = HEAP32[$381>>2]|0; + $383 = (($380) + 4)|0; + $384 = $383; + $385 = HEAP32[$384>>2]|0; + $386 = (_i64Add(($377|0),($378|0),($382|0),($385|0))|0); + $387 = tempRet0; + $388 = $t1; + $389 = $388; + HEAP32[$389>>2] = $386; + $390 = (($388) + 4)|0; + $391 = $390; + HEAP32[$391>>2] = $387; + $392 = ((($w)) + 120|0); + $393 = $392; + $394 = $393; + $395 = HEAP32[$394>>2]|0; + $396 = (($393) + 4)|0; + $397 = $396; + $398 = HEAP32[$397>>2]|0; + $399 = (_ROTR($395,$398,19,0)|0); + $400 = tempRet0; + $401 = ((($w)) + 120|0); + $402 = $401; + $403 = $402; + $404 = HEAP32[$403>>2]|0; + $405 = (($402) + 4)|0; + $406 = $405; + $407 = HEAP32[$406>>2]|0; + $408 = (_ROTR($404,$407,61,0)|0); + $409 = tempRet0; + $410 = $399 ^ $408; + $411 = $400 ^ $409; + $412 = ((($w)) + 120|0); + $413 = $412; + $414 = $413; + $415 = HEAP32[$414>>2]|0; + $416 = (($413) + 4)|0; + $417 = $416; + $418 = HEAP32[$417>>2]|0; + $419 = (_bitshift64Lshr(($415|0),($418|0),6)|0); + $420 = tempRet0; + $421 = $410 ^ $419; + $422 = $411 ^ $420; + $423 = ((($w)) + 80|0); + $424 = $423; + $425 = $424; + $426 = HEAP32[$425>>2]|0; + $427 = (($424) + 4)|0; + $428 = $427; + $429 = HEAP32[$428>>2]|0; + $430 = (_i64Add(($421|0),($422|0),($426|0),($429|0))|0); + $431 = tempRet0; + $432 = ((($w)) + 16|0); + $433 = $432; + $434 = $433; + $435 = HEAP32[$434>>2]|0; + $436 = (($433) + 4)|0; + $437 = $436; + $438 = HEAP32[$437>>2]|0; + $439 = (_ROTR($435,$438,1,0)|0); + $440 = tempRet0; + $441 = ((($w)) + 16|0); + $442 = $441; + $443 = $442; + $444 = HEAP32[$443>>2]|0; + $445 = (($442) + 4)|0; + $446 = $445; + $447 = HEAP32[$446>>2]|0; + $448 = (_ROTR($444,$447,8,0)|0); + $449 = tempRet0; + $450 = $439 ^ $448; + $451 = $440 ^ $449; + $452 = ((($w)) + 16|0); + $453 = $452; + $454 = $453; + $455 = HEAP32[$454>>2]|0; + $456 = (($453) + 4)|0; + $457 = $456; + $458 = HEAP32[$457>>2]|0; + $459 = (_bitshift64Lshr(($455|0),($458|0),7)|0); + $460 = tempRet0; + $461 = $450 ^ $459; + $462 = $451 ^ $460; + $463 = (_i64Add(($430|0),($431|0),($461|0),($462|0))|0); + $464 = tempRet0; + $465 = ((($w)) + 8|0); + $466 = $465; + $467 = $466; + $468 = HEAP32[$467>>2]|0; + $469 = (($466) + 4)|0; + $470 = $469; + $471 = HEAP32[$470>>2]|0; + $472 = (_i64Add(($468|0),($471|0),($463|0),($464|0))|0); + $473 = tempRet0; + $474 = $465; + $475 = $474; + HEAP32[$475>>2] = $472; + $476 = (($474) + 4)|0; + $477 = $476; + HEAP32[$477>>2] = $473; + $478 = $h; + $479 = $478; + $480 = HEAP32[$479>>2]|0; + $481 = (($478) + 4)|0; + $482 = $481; + $483 = HEAP32[$482>>2]|0; + $484 = (_Sum0_1423($480,$483)|0); + $485 = tempRet0; + $486 = $h; + $487 = $486; + $488 = HEAP32[$487>>2]|0; + $489 = (($486) + 4)|0; + $490 = $489; + $491 = HEAP32[$490>>2]|0; + $492 = $a; + $493 = $492; + $494 = HEAP32[$493>>2]|0; + $495 = (($492) + 4)|0; + $496 = $495; + $497 = HEAP32[$496>>2]|0; + $498 = $b; + $499 = $498; + $500 = HEAP32[$499>>2]|0; + $501 = (($498) + 4)|0; + $502 = $501; + $503 = HEAP32[$502>>2]|0; + $504 = (_Maj_1424($488,$491,$494,$497,$500,$503)|0); + $505 = tempRet0; + $506 = (_i64Add(($484|0),($485|0),($504|0),($505|0))|0); + $507 = tempRet0; + $508 = $t2; + $509 = $508; + HEAP32[$509>>2] = $506; + $510 = (($508) + 4)|0; + $511 = $510; + HEAP32[$511>>2] = $507; + $512 = $t1; + $513 = $512; + $514 = HEAP32[$513>>2]|0; + $515 = (($512) + 4)|0; + $516 = $515; + $517 = HEAP32[$516>>2]|0; + $518 = $c; + $519 = $518; + $520 = HEAP32[$519>>2]|0; + $521 = (($518) + 4)|0; + $522 = $521; + $523 = HEAP32[$522>>2]|0; + $524 = (_i64Add(($520|0),($523|0),($514|0),($517|0))|0); + $525 = tempRet0; + $526 = $c; + $527 = $526; + HEAP32[$527>>2] = $524; + $528 = (($526) + 4)|0; + $529 = $528; + HEAP32[$529>>2] = $525; + $530 = $t1; + $531 = $530; + $532 = HEAP32[$531>>2]|0; + $533 = (($530) + 4)|0; + $534 = $533; + $535 = HEAP32[$534>>2]|0; + $536 = $t2; + $537 = $536; + $538 = HEAP32[$537>>2]|0; + $539 = (($536) + 4)|0; + $540 = $539; + $541 = HEAP32[$540>>2]|0; + $542 = (_i64Add(($532|0),($535|0),($538|0),($541|0))|0); + $543 = tempRet0; + $544 = $g; + $545 = $544; + HEAP32[$545>>2] = $542; + $546 = (($544) + 4)|0; + $547 = $546; + HEAP32[$547>>2] = $543; + $548 = $f; + $549 = $548; + $550 = HEAP32[$549>>2]|0; + $551 = (($548) + 4)|0; + $552 = $551; + $553 = HEAP32[$552>>2]|0; + $554 = $c; + $555 = $554; + $556 = HEAP32[$555>>2]|0; + $557 = (($554) + 4)|0; + $558 = $557; + $559 = HEAP32[$558>>2]|0; + $560 = (_Sum1_1422($556,$559)|0); + $561 = tempRet0; + $562 = (_i64Add(($550|0),($553|0),($560|0),($561|0))|0); + $563 = tempRet0; + $564 = $c; + $565 = $564; + $566 = HEAP32[$565>>2]|0; + $567 = (($564) + 4)|0; + $568 = $567; + $569 = HEAP32[$568>>2]|0; + $570 = $d; + $571 = $570; + $572 = HEAP32[$571>>2]|0; + $573 = (($570) + 4)|0; + $574 = $573; + $575 = HEAP32[$574>>2]|0; + $576 = $e; + $577 = $576; + $578 = HEAP32[$577>>2]|0; + $579 = (($576) + 4)|0; + $580 = $579; + $581 = HEAP32[$580>>2]|0; + $582 = (_Ch($566,$569,$572,$575,$578,$581)|0); + $583 = tempRet0; + $584 = (_i64Add(($562|0),($563|0),($582|0),($583|0))|0); + $585 = tempRet0; + $586 = $t; + $587 = (($586) + 2)|0; + $588 = (80 + ($587<<3)|0); + $589 = $588; + $590 = $589; + $591 = HEAP32[$590>>2]|0; + $592 = (($589) + 4)|0; + $593 = $592; + $594 = HEAP32[$593>>2]|0; + $595 = (_i64Add(($584|0),($585|0),($591|0),($594|0))|0); + $596 = tempRet0; + $597 = ((($w)) + 16|0); + $598 = $597; + $599 = $598; + $600 = HEAP32[$599>>2]|0; + $601 = (($598) + 4)|0; + $602 = $601; + $603 = HEAP32[$602>>2]|0; + $604 = (_i64Add(($595|0),($596|0),($600|0),($603|0))|0); + $605 = tempRet0; + $606 = $t1; + $607 = $606; + HEAP32[$607>>2] = $604; + $608 = (($606) + 4)|0; + $609 = $608; + HEAP32[$609>>2] = $605; + $610 = $w; + $611 = $610; + $612 = HEAP32[$611>>2]|0; + $613 = (($610) + 4)|0; + $614 = $613; + $615 = HEAP32[$614>>2]|0; + $616 = (_ROTR($612,$615,19,0)|0); + $617 = tempRet0; + $618 = $w; + $619 = $618; + $620 = HEAP32[$619>>2]|0; + $621 = (($618) + 4)|0; + $622 = $621; + $623 = HEAP32[$622>>2]|0; + $624 = (_ROTR($620,$623,61,0)|0); + $625 = tempRet0; + $626 = $616 ^ $624; + $627 = $617 ^ $625; + $628 = $w; + $629 = $628; + $630 = HEAP32[$629>>2]|0; + $631 = (($628) + 4)|0; + $632 = $631; + $633 = HEAP32[$632>>2]|0; + $634 = (_bitshift64Lshr(($630|0),($633|0),6)|0); + $635 = tempRet0; + $636 = $626 ^ $634; + $637 = $627 ^ $635; + $638 = ((($w)) + 88|0); + $639 = $638; + $640 = $639; + $641 = HEAP32[$640>>2]|0; + $642 = (($639) + 4)|0; + $643 = $642; + $644 = HEAP32[$643>>2]|0; + $645 = (_i64Add(($636|0),($637|0),($641|0),($644|0))|0); + $646 = tempRet0; + $647 = ((($w)) + 24|0); + $648 = $647; + $649 = $648; + $650 = HEAP32[$649>>2]|0; + $651 = (($648) + 4)|0; + $652 = $651; + $653 = HEAP32[$652>>2]|0; + $654 = (_ROTR($650,$653,1,0)|0); + $655 = tempRet0; + $656 = ((($w)) + 24|0); + $657 = $656; + $658 = $657; + $659 = HEAP32[$658>>2]|0; + $660 = (($657) + 4)|0; + $661 = $660; + $662 = HEAP32[$661>>2]|0; + $663 = (_ROTR($659,$662,8,0)|0); + $664 = tempRet0; + $665 = $654 ^ $663; + $666 = $655 ^ $664; + $667 = ((($w)) + 24|0); + $668 = $667; + $669 = $668; + $670 = HEAP32[$669>>2]|0; + $671 = (($668) + 4)|0; + $672 = $671; + $673 = HEAP32[$672>>2]|0; + $674 = (_bitshift64Lshr(($670|0),($673|0),7)|0); + $675 = tempRet0; + $676 = $665 ^ $674; + $677 = $666 ^ $675; + $678 = (_i64Add(($645|0),($646|0),($676|0),($677|0))|0); + $679 = tempRet0; + $680 = ((($w)) + 16|0); + $681 = $680; + $682 = $681; + $683 = HEAP32[$682>>2]|0; + $684 = (($681) + 4)|0; + $685 = $684; + $686 = HEAP32[$685>>2]|0; + $687 = (_i64Add(($683|0),($686|0),($678|0),($679|0))|0); + $688 = tempRet0; + $689 = $680; + $690 = $689; + HEAP32[$690>>2] = $687; + $691 = (($689) + 4)|0; + $692 = $691; + HEAP32[$692>>2] = $688; + $693 = $g; + $694 = $693; + $695 = HEAP32[$694>>2]|0; + $696 = (($693) + 4)|0; + $697 = $696; + $698 = HEAP32[$697>>2]|0; + $699 = (_Sum0_1423($695,$698)|0); + $700 = tempRet0; + $701 = $g; + $702 = $701; + $703 = HEAP32[$702>>2]|0; + $704 = (($701) + 4)|0; + $705 = $704; + $706 = HEAP32[$705>>2]|0; + $707 = $h; + $708 = $707; + $709 = HEAP32[$708>>2]|0; + $710 = (($707) + 4)|0; + $711 = $710; + $712 = HEAP32[$711>>2]|0; + $713 = $a; + $714 = $713; + $715 = HEAP32[$714>>2]|0; + $716 = (($713) + 4)|0; + $717 = $716; + $718 = HEAP32[$717>>2]|0; + $719 = (_Maj_1424($703,$706,$709,$712,$715,$718)|0); + $720 = tempRet0; + $721 = (_i64Add(($699|0),($700|0),($719|0),($720|0))|0); + $722 = tempRet0; + $723 = $t2; + $724 = $723; + HEAP32[$724>>2] = $721; + $725 = (($723) + 4)|0; + $726 = $725; + HEAP32[$726>>2] = $722; + $727 = $t1; + $728 = $727; + $729 = HEAP32[$728>>2]|0; + $730 = (($727) + 4)|0; + $731 = $730; + $732 = HEAP32[$731>>2]|0; + $733 = $b; + $734 = $733; + $735 = HEAP32[$734>>2]|0; + $736 = (($733) + 4)|0; + $737 = $736; + $738 = HEAP32[$737>>2]|0; + $739 = (_i64Add(($735|0),($738|0),($729|0),($732|0))|0); + $740 = tempRet0; + $741 = $b; + $742 = $741; + HEAP32[$742>>2] = $739; + $743 = (($741) + 4)|0; + $744 = $743; + HEAP32[$744>>2] = $740; + $745 = $t1; + $746 = $745; + $747 = HEAP32[$746>>2]|0; + $748 = (($745) + 4)|0; + $749 = $748; + $750 = HEAP32[$749>>2]|0; + $751 = $t2; + $752 = $751; + $753 = HEAP32[$752>>2]|0; + $754 = (($751) + 4)|0; + $755 = $754; + $756 = HEAP32[$755>>2]|0; + $757 = (_i64Add(($747|0),($750|0),($753|0),($756|0))|0); + $758 = tempRet0; + $759 = $f; + $760 = $759; + HEAP32[$760>>2] = $757; + $761 = (($759) + 4)|0; + $762 = $761; + HEAP32[$762>>2] = $758; + $763 = $e; + $764 = $763; + $765 = HEAP32[$764>>2]|0; + $766 = (($763) + 4)|0; + $767 = $766; + $768 = HEAP32[$767>>2]|0; + $769 = $b; + $770 = $769; + $771 = HEAP32[$770>>2]|0; + $772 = (($769) + 4)|0; + $773 = $772; + $774 = HEAP32[$773>>2]|0; + $775 = (_Sum1_1422($771,$774)|0); + $776 = tempRet0; + $777 = (_i64Add(($765|0),($768|0),($775|0),($776|0))|0); + $778 = tempRet0; + $779 = $b; + $780 = $779; + $781 = HEAP32[$780>>2]|0; + $782 = (($779) + 4)|0; + $783 = $782; + $784 = HEAP32[$783>>2]|0; + $785 = $c; + $786 = $785; + $787 = HEAP32[$786>>2]|0; + $788 = (($785) + 4)|0; + $789 = $788; + $790 = HEAP32[$789>>2]|0; + $791 = $d; + $792 = $791; + $793 = HEAP32[$792>>2]|0; + $794 = (($791) + 4)|0; + $795 = $794; + $796 = HEAP32[$795>>2]|0; + $797 = (_Ch($781,$784,$787,$790,$793,$796)|0); + $798 = tempRet0; + $799 = (_i64Add(($777|0),($778|0),($797|0),($798|0))|0); + $800 = tempRet0; + $801 = $t; + $802 = (($801) + 3)|0; + $803 = (80 + ($802<<3)|0); + $804 = $803; + $805 = $804; + $806 = HEAP32[$805>>2]|0; + $807 = (($804) + 4)|0; + $808 = $807; + $809 = HEAP32[$808>>2]|0; + $810 = (_i64Add(($799|0),($800|0),($806|0),($809|0))|0); + $811 = tempRet0; + $812 = ((($w)) + 24|0); + $813 = $812; + $814 = $813; + $815 = HEAP32[$814>>2]|0; + $816 = (($813) + 4)|0; + $817 = $816; + $818 = HEAP32[$817>>2]|0; + $819 = (_i64Add(($810|0),($811|0),($815|0),($818|0))|0); + $820 = tempRet0; + $821 = $t1; + $822 = $821; + HEAP32[$822>>2] = $819; + $823 = (($821) + 4)|0; + $824 = $823; + HEAP32[$824>>2] = $820; + $825 = ((($w)) + 8|0); + $826 = $825; + $827 = $826; + $828 = HEAP32[$827>>2]|0; + $829 = (($826) + 4)|0; + $830 = $829; + $831 = HEAP32[$830>>2]|0; + $832 = (_ROTR($828,$831,19,0)|0); + $833 = tempRet0; + $834 = ((($w)) + 8|0); + $835 = $834; + $836 = $835; + $837 = HEAP32[$836>>2]|0; + $838 = (($835) + 4)|0; + $839 = $838; + $840 = HEAP32[$839>>2]|0; + $841 = (_ROTR($837,$840,61,0)|0); + $842 = tempRet0; + $843 = $832 ^ $841; + $844 = $833 ^ $842; + $845 = ((($w)) + 8|0); + $846 = $845; + $847 = $846; + $848 = HEAP32[$847>>2]|0; + $849 = (($846) + 4)|0; + $850 = $849; + $851 = HEAP32[$850>>2]|0; + $852 = (_bitshift64Lshr(($848|0),($851|0),6)|0); + $853 = tempRet0; + $854 = $843 ^ $852; + $855 = $844 ^ $853; + $856 = ((($w)) + 96|0); + $857 = $856; + $858 = $857; + $859 = HEAP32[$858>>2]|0; + $860 = (($857) + 4)|0; + $861 = $860; + $862 = HEAP32[$861>>2]|0; + $863 = (_i64Add(($854|0),($855|0),($859|0),($862|0))|0); + $864 = tempRet0; + $865 = ((($w)) + 32|0); + $866 = $865; + $867 = $866; + $868 = HEAP32[$867>>2]|0; + $869 = (($866) + 4)|0; + $870 = $869; + $871 = HEAP32[$870>>2]|0; + $872 = (_ROTR($868,$871,1,0)|0); + $873 = tempRet0; + $874 = ((($w)) + 32|0); + $875 = $874; + $876 = $875; + $877 = HEAP32[$876>>2]|0; + $878 = (($875) + 4)|0; + $879 = $878; + $880 = HEAP32[$879>>2]|0; + $881 = (_ROTR($877,$880,8,0)|0); + $882 = tempRet0; + $883 = $872 ^ $881; + $884 = $873 ^ $882; + $885 = ((($w)) + 32|0); + $886 = $885; + $887 = $886; + $888 = HEAP32[$887>>2]|0; + $889 = (($886) + 4)|0; + $890 = $889; + $891 = HEAP32[$890>>2]|0; + $892 = (_bitshift64Lshr(($888|0),($891|0),7)|0); + $893 = tempRet0; + $894 = $883 ^ $892; + $895 = $884 ^ $893; + $896 = (_i64Add(($863|0),($864|0),($894|0),($895|0))|0); + $897 = tempRet0; + $898 = ((($w)) + 24|0); + $899 = $898; + $900 = $899; + $901 = HEAP32[$900>>2]|0; + $902 = (($899) + 4)|0; + $903 = $902; + $904 = HEAP32[$903>>2]|0; + $905 = (_i64Add(($901|0),($904|0),($896|0),($897|0))|0); + $906 = tempRet0; + $907 = $898; + $908 = $907; + HEAP32[$908>>2] = $905; + $909 = (($907) + 4)|0; + $910 = $909; + HEAP32[$910>>2] = $906; + $911 = $f; + $912 = $911; + $913 = HEAP32[$912>>2]|0; + $914 = (($911) + 4)|0; + $915 = $914; + $916 = HEAP32[$915>>2]|0; + $917 = (_Sum0_1423($913,$916)|0); + $918 = tempRet0; + $919 = $f; + $920 = $919; + $921 = HEAP32[$920>>2]|0; + $922 = (($919) + 4)|0; + $923 = $922; + $924 = HEAP32[$923>>2]|0; + $925 = $g; + $926 = $925; + $927 = HEAP32[$926>>2]|0; + $928 = (($925) + 4)|0; + $929 = $928; + $930 = HEAP32[$929>>2]|0; + $931 = $h; + $932 = $931; + $933 = HEAP32[$932>>2]|0; + $934 = (($931) + 4)|0; + $935 = $934; + $936 = HEAP32[$935>>2]|0; + $937 = (_Maj_1424($921,$924,$927,$930,$933,$936)|0); + $938 = tempRet0; + $939 = (_i64Add(($917|0),($918|0),($937|0),($938|0))|0); + $940 = tempRet0; + $941 = $t2; + $942 = $941; + HEAP32[$942>>2] = $939; + $943 = (($941) + 4)|0; + $944 = $943; + HEAP32[$944>>2] = $940; + $945 = $t1; + $946 = $945; + $947 = HEAP32[$946>>2]|0; + $948 = (($945) + 4)|0; + $949 = $948; + $950 = HEAP32[$949>>2]|0; + $951 = $a; + $952 = $951; + $953 = HEAP32[$952>>2]|0; + $954 = (($951) + 4)|0; + $955 = $954; + $956 = HEAP32[$955>>2]|0; + $957 = (_i64Add(($953|0),($956|0),($947|0),($950|0))|0); + $958 = tempRet0; + $959 = $a; + $960 = $959; + HEAP32[$960>>2] = $957; + $961 = (($959) + 4)|0; + $962 = $961; + HEAP32[$962>>2] = $958; + $963 = $t1; + $964 = $963; + $965 = HEAP32[$964>>2]|0; + $966 = (($963) + 4)|0; + $967 = $966; + $968 = HEAP32[$967>>2]|0; + $969 = $t2; + $970 = $969; + $971 = HEAP32[$970>>2]|0; + $972 = (($969) + 4)|0; + $973 = $972; + $974 = HEAP32[$973>>2]|0; + $975 = (_i64Add(($965|0),($968|0),($971|0),($974|0))|0); + $976 = tempRet0; + $977 = $e; + $978 = $977; + HEAP32[$978>>2] = $975; + $979 = (($977) + 4)|0; + $980 = $979; + HEAP32[$980>>2] = $976; + $981 = $d; + $982 = $981; + $983 = HEAP32[$982>>2]|0; + $984 = (($981) + 4)|0; + $985 = $984; + $986 = HEAP32[$985>>2]|0; + $987 = $a; + $988 = $987; + $989 = HEAP32[$988>>2]|0; + $990 = (($987) + 4)|0; + $991 = $990; + $992 = HEAP32[$991>>2]|0; + $993 = (_Sum1_1422($989,$992)|0); + $994 = tempRet0; + $995 = (_i64Add(($983|0),($986|0),($993|0),($994|0))|0); + $996 = tempRet0; + $997 = $a; + $998 = $997; + $999 = HEAP32[$998>>2]|0; + $1000 = (($997) + 4)|0; + $1001 = $1000; + $1002 = HEAP32[$1001>>2]|0; + $1003 = $b; + $1004 = $1003; + $1005 = HEAP32[$1004>>2]|0; + $1006 = (($1003) + 4)|0; + $1007 = $1006; + $1008 = HEAP32[$1007>>2]|0; + $1009 = $c; + $1010 = $1009; + $1011 = HEAP32[$1010>>2]|0; + $1012 = (($1009) + 4)|0; + $1013 = $1012; + $1014 = HEAP32[$1013>>2]|0; + $1015 = (_Ch($999,$1002,$1005,$1008,$1011,$1014)|0); + $1016 = tempRet0; + $1017 = (_i64Add(($995|0),($996|0),($1015|0),($1016|0))|0); + $1018 = tempRet0; + $1019 = $t; + $1020 = (($1019) + 4)|0; + $1021 = (80 + ($1020<<3)|0); + $1022 = $1021; + $1023 = $1022; + $1024 = HEAP32[$1023>>2]|0; + $1025 = (($1022) + 4)|0; + $1026 = $1025; + $1027 = HEAP32[$1026>>2]|0; + $1028 = (_i64Add(($1017|0),($1018|0),($1024|0),($1027|0))|0); + $1029 = tempRet0; + $1030 = ((($w)) + 32|0); + $1031 = $1030; + $1032 = $1031; + $1033 = HEAP32[$1032>>2]|0; + $1034 = (($1031) + 4)|0; + $1035 = $1034; + $1036 = HEAP32[$1035>>2]|0; + $1037 = (_i64Add(($1028|0),($1029|0),($1033|0),($1036|0))|0); + $1038 = tempRet0; + $1039 = $t1; + $1040 = $1039; + HEAP32[$1040>>2] = $1037; + $1041 = (($1039) + 4)|0; + $1042 = $1041; + HEAP32[$1042>>2] = $1038; + $1043 = ((($w)) + 16|0); + $1044 = $1043; + $1045 = $1044; + $1046 = HEAP32[$1045>>2]|0; + $1047 = (($1044) + 4)|0; + $1048 = $1047; + $1049 = HEAP32[$1048>>2]|0; + $1050 = (_ROTR($1046,$1049,19,0)|0); + $1051 = tempRet0; + $1052 = ((($w)) + 16|0); + $1053 = $1052; + $1054 = $1053; + $1055 = HEAP32[$1054>>2]|0; + $1056 = (($1053) + 4)|0; + $1057 = $1056; + $1058 = HEAP32[$1057>>2]|0; + $1059 = (_ROTR($1055,$1058,61,0)|0); + $1060 = tempRet0; + $1061 = $1050 ^ $1059; + $1062 = $1051 ^ $1060; + $1063 = ((($w)) + 16|0); + $1064 = $1063; + $1065 = $1064; + $1066 = HEAP32[$1065>>2]|0; + $1067 = (($1064) + 4)|0; + $1068 = $1067; + $1069 = HEAP32[$1068>>2]|0; + $1070 = (_bitshift64Lshr(($1066|0),($1069|0),6)|0); + $1071 = tempRet0; + $1072 = $1061 ^ $1070; + $1073 = $1062 ^ $1071; + $1074 = ((($w)) + 104|0); + $1075 = $1074; + $1076 = $1075; + $1077 = HEAP32[$1076>>2]|0; + $1078 = (($1075) + 4)|0; + $1079 = $1078; + $1080 = HEAP32[$1079>>2]|0; + $1081 = (_i64Add(($1072|0),($1073|0),($1077|0),($1080|0))|0); + $1082 = tempRet0; + $1083 = ((($w)) + 40|0); + $1084 = $1083; + $1085 = $1084; + $1086 = HEAP32[$1085>>2]|0; + $1087 = (($1084) + 4)|0; + $1088 = $1087; + $1089 = HEAP32[$1088>>2]|0; + $1090 = (_ROTR($1086,$1089,1,0)|0); + $1091 = tempRet0; + $1092 = ((($w)) + 40|0); + $1093 = $1092; + $1094 = $1093; + $1095 = HEAP32[$1094>>2]|0; + $1096 = (($1093) + 4)|0; + $1097 = $1096; + $1098 = HEAP32[$1097>>2]|0; + $1099 = (_ROTR($1095,$1098,8,0)|0); + $1100 = tempRet0; + $1101 = $1090 ^ $1099; + $1102 = $1091 ^ $1100; + $1103 = ((($w)) + 40|0); + $1104 = $1103; + $1105 = $1104; + $1106 = HEAP32[$1105>>2]|0; + $1107 = (($1104) + 4)|0; + $1108 = $1107; + $1109 = HEAP32[$1108>>2]|0; + $1110 = (_bitshift64Lshr(($1106|0),($1109|0),7)|0); + $1111 = tempRet0; + $1112 = $1101 ^ $1110; + $1113 = $1102 ^ $1111; + $1114 = (_i64Add(($1081|0),($1082|0),($1112|0),($1113|0))|0); + $1115 = tempRet0; + $1116 = ((($w)) + 32|0); + $1117 = $1116; + $1118 = $1117; + $1119 = HEAP32[$1118>>2]|0; + $1120 = (($1117) + 4)|0; + $1121 = $1120; + $1122 = HEAP32[$1121>>2]|0; + $1123 = (_i64Add(($1119|0),($1122|0),($1114|0),($1115|0))|0); + $1124 = tempRet0; + $1125 = $1116; + $1126 = $1125; + HEAP32[$1126>>2] = $1123; + $1127 = (($1125) + 4)|0; + $1128 = $1127; + HEAP32[$1128>>2] = $1124; + $1129 = $e; + $1130 = $1129; + $1131 = HEAP32[$1130>>2]|0; + $1132 = (($1129) + 4)|0; + $1133 = $1132; + $1134 = HEAP32[$1133>>2]|0; + $1135 = (_Sum0_1423($1131,$1134)|0); + $1136 = tempRet0; + $1137 = $e; + $1138 = $1137; + $1139 = HEAP32[$1138>>2]|0; + $1140 = (($1137) + 4)|0; + $1141 = $1140; + $1142 = HEAP32[$1141>>2]|0; + $1143 = $f; + $1144 = $1143; + $1145 = HEAP32[$1144>>2]|0; + $1146 = (($1143) + 4)|0; + $1147 = $1146; + $1148 = HEAP32[$1147>>2]|0; + $1149 = $g; + $1150 = $1149; + $1151 = HEAP32[$1150>>2]|0; + $1152 = (($1149) + 4)|0; + $1153 = $1152; + $1154 = HEAP32[$1153>>2]|0; + $1155 = (_Maj_1424($1139,$1142,$1145,$1148,$1151,$1154)|0); + $1156 = tempRet0; + $1157 = (_i64Add(($1135|0),($1136|0),($1155|0),($1156|0))|0); + $1158 = tempRet0; + $1159 = $t2; + $1160 = $1159; + HEAP32[$1160>>2] = $1157; + $1161 = (($1159) + 4)|0; + $1162 = $1161; + HEAP32[$1162>>2] = $1158; + $1163 = $t1; + $1164 = $1163; + $1165 = HEAP32[$1164>>2]|0; + $1166 = (($1163) + 4)|0; + $1167 = $1166; + $1168 = HEAP32[$1167>>2]|0; + $1169 = $h; + $1170 = $1169; + $1171 = HEAP32[$1170>>2]|0; + $1172 = (($1169) + 4)|0; + $1173 = $1172; + $1174 = HEAP32[$1173>>2]|0; + $1175 = (_i64Add(($1171|0),($1174|0),($1165|0),($1168|0))|0); + $1176 = tempRet0; + $1177 = $h; + $1178 = $1177; + HEAP32[$1178>>2] = $1175; + $1179 = (($1177) + 4)|0; + $1180 = $1179; + HEAP32[$1180>>2] = $1176; + $1181 = $t1; + $1182 = $1181; + $1183 = HEAP32[$1182>>2]|0; + $1184 = (($1181) + 4)|0; + $1185 = $1184; + $1186 = HEAP32[$1185>>2]|0; + $1187 = $t2; + $1188 = $1187; + $1189 = HEAP32[$1188>>2]|0; + $1190 = (($1187) + 4)|0; + $1191 = $1190; + $1192 = HEAP32[$1191>>2]|0; + $1193 = (_i64Add(($1183|0),($1186|0),($1189|0),($1192|0))|0); + $1194 = tempRet0; + $1195 = $d; + $1196 = $1195; + HEAP32[$1196>>2] = $1193; + $1197 = (($1195) + 4)|0; + $1198 = $1197; + HEAP32[$1198>>2] = $1194; + $1199 = $c; + $1200 = $1199; + $1201 = HEAP32[$1200>>2]|0; + $1202 = (($1199) + 4)|0; + $1203 = $1202; + $1204 = HEAP32[$1203>>2]|0; + $1205 = $h; + $1206 = $1205; + $1207 = HEAP32[$1206>>2]|0; + $1208 = (($1205) + 4)|0; + $1209 = $1208; + $1210 = HEAP32[$1209>>2]|0; + $1211 = (_Sum1_1422($1207,$1210)|0); + $1212 = tempRet0; + $1213 = (_i64Add(($1201|0),($1204|0),($1211|0),($1212|0))|0); + $1214 = tempRet0; + $1215 = $h; + $1216 = $1215; + $1217 = HEAP32[$1216>>2]|0; + $1218 = (($1215) + 4)|0; + $1219 = $1218; + $1220 = HEAP32[$1219>>2]|0; + $1221 = $a; + $1222 = $1221; + $1223 = HEAP32[$1222>>2]|0; + $1224 = (($1221) + 4)|0; + $1225 = $1224; + $1226 = HEAP32[$1225>>2]|0; + $1227 = $b; + $1228 = $1227; + $1229 = HEAP32[$1228>>2]|0; + $1230 = (($1227) + 4)|0; + $1231 = $1230; + $1232 = HEAP32[$1231>>2]|0; + $1233 = (_Ch($1217,$1220,$1223,$1226,$1229,$1232)|0); + $1234 = tempRet0; + $1235 = (_i64Add(($1213|0),($1214|0),($1233|0),($1234|0))|0); + $1236 = tempRet0; + $1237 = $t; + $1238 = (($1237) + 5)|0; + $1239 = (80 + ($1238<<3)|0); + $1240 = $1239; + $1241 = $1240; + $1242 = HEAP32[$1241>>2]|0; + $1243 = (($1240) + 4)|0; + $1244 = $1243; + $1245 = HEAP32[$1244>>2]|0; + $1246 = (_i64Add(($1235|0),($1236|0),($1242|0),($1245|0))|0); + $1247 = tempRet0; + $1248 = ((($w)) + 40|0); + $1249 = $1248; + $1250 = $1249; + $1251 = HEAP32[$1250>>2]|0; + $1252 = (($1249) + 4)|0; + $1253 = $1252; + $1254 = HEAP32[$1253>>2]|0; + $1255 = (_i64Add(($1246|0),($1247|0),($1251|0),($1254|0))|0); + $1256 = tempRet0; + $1257 = $t1; + $1258 = $1257; + HEAP32[$1258>>2] = $1255; + $1259 = (($1257) + 4)|0; + $1260 = $1259; + HEAP32[$1260>>2] = $1256; + $1261 = ((($w)) + 24|0); + $1262 = $1261; + $1263 = $1262; + $1264 = HEAP32[$1263>>2]|0; + $1265 = (($1262) + 4)|0; + $1266 = $1265; + $1267 = HEAP32[$1266>>2]|0; + $1268 = (_ROTR($1264,$1267,19,0)|0); + $1269 = tempRet0; + $1270 = ((($w)) + 24|0); + $1271 = $1270; + $1272 = $1271; + $1273 = HEAP32[$1272>>2]|0; + $1274 = (($1271) + 4)|0; + $1275 = $1274; + $1276 = HEAP32[$1275>>2]|0; + $1277 = (_ROTR($1273,$1276,61,0)|0); + $1278 = tempRet0; + $1279 = $1268 ^ $1277; + $1280 = $1269 ^ $1278; + $1281 = ((($w)) + 24|0); + $1282 = $1281; + $1283 = $1282; + $1284 = HEAP32[$1283>>2]|0; + $1285 = (($1282) + 4)|0; + $1286 = $1285; + $1287 = HEAP32[$1286>>2]|0; + $1288 = (_bitshift64Lshr(($1284|0),($1287|0),6)|0); + $1289 = tempRet0; + $1290 = $1279 ^ $1288; + $1291 = $1280 ^ $1289; + $1292 = ((($w)) + 112|0); + $1293 = $1292; + $1294 = $1293; + $1295 = HEAP32[$1294>>2]|0; + $1296 = (($1293) + 4)|0; + $1297 = $1296; + $1298 = HEAP32[$1297>>2]|0; + $1299 = (_i64Add(($1290|0),($1291|0),($1295|0),($1298|0))|0); + $1300 = tempRet0; + $1301 = ((($w)) + 48|0); + $1302 = $1301; + $1303 = $1302; + $1304 = HEAP32[$1303>>2]|0; + $1305 = (($1302) + 4)|0; + $1306 = $1305; + $1307 = HEAP32[$1306>>2]|0; + $1308 = (_ROTR($1304,$1307,1,0)|0); + $1309 = tempRet0; + $1310 = ((($w)) + 48|0); + $1311 = $1310; + $1312 = $1311; + $1313 = HEAP32[$1312>>2]|0; + $1314 = (($1311) + 4)|0; + $1315 = $1314; + $1316 = HEAP32[$1315>>2]|0; + $1317 = (_ROTR($1313,$1316,8,0)|0); + $1318 = tempRet0; + $1319 = $1308 ^ $1317; + $1320 = $1309 ^ $1318; + $1321 = ((($w)) + 48|0); + $1322 = $1321; + $1323 = $1322; + $1324 = HEAP32[$1323>>2]|0; + $1325 = (($1322) + 4)|0; + $1326 = $1325; + $1327 = HEAP32[$1326>>2]|0; + $1328 = (_bitshift64Lshr(($1324|0),($1327|0),7)|0); + $1329 = tempRet0; + $1330 = $1319 ^ $1328; + $1331 = $1320 ^ $1329; + $1332 = (_i64Add(($1299|0),($1300|0),($1330|0),($1331|0))|0); + $1333 = tempRet0; + $1334 = ((($w)) + 40|0); + $1335 = $1334; + $1336 = $1335; + $1337 = HEAP32[$1336>>2]|0; + $1338 = (($1335) + 4)|0; + $1339 = $1338; + $1340 = HEAP32[$1339>>2]|0; + $1341 = (_i64Add(($1337|0),($1340|0),($1332|0),($1333|0))|0); + $1342 = tempRet0; + $1343 = $1334; + $1344 = $1343; + HEAP32[$1344>>2] = $1341; + $1345 = (($1343) + 4)|0; + $1346 = $1345; + HEAP32[$1346>>2] = $1342; + $1347 = $d; + $1348 = $1347; + $1349 = HEAP32[$1348>>2]|0; + $1350 = (($1347) + 4)|0; + $1351 = $1350; + $1352 = HEAP32[$1351>>2]|0; + $1353 = (_Sum0_1423($1349,$1352)|0); + $1354 = tempRet0; + $1355 = $d; + $1356 = $1355; + $1357 = HEAP32[$1356>>2]|0; + $1358 = (($1355) + 4)|0; + $1359 = $1358; + $1360 = HEAP32[$1359>>2]|0; + $1361 = $e; + $1362 = $1361; + $1363 = HEAP32[$1362>>2]|0; + $1364 = (($1361) + 4)|0; + $1365 = $1364; + $1366 = HEAP32[$1365>>2]|0; + $1367 = $f; + $1368 = $1367; + $1369 = HEAP32[$1368>>2]|0; + $1370 = (($1367) + 4)|0; + $1371 = $1370; + $1372 = HEAP32[$1371>>2]|0; + $1373 = (_Maj_1424($1357,$1360,$1363,$1366,$1369,$1372)|0); + $1374 = tempRet0; + $1375 = (_i64Add(($1353|0),($1354|0),($1373|0),($1374|0))|0); + $1376 = tempRet0; + $1377 = $t2; + $1378 = $1377; + HEAP32[$1378>>2] = $1375; + $1379 = (($1377) + 4)|0; + $1380 = $1379; + HEAP32[$1380>>2] = $1376; + $1381 = $t1; + $1382 = $1381; + $1383 = HEAP32[$1382>>2]|0; + $1384 = (($1381) + 4)|0; + $1385 = $1384; + $1386 = HEAP32[$1385>>2]|0; + $1387 = $g; + $1388 = $1387; + $1389 = HEAP32[$1388>>2]|0; + $1390 = (($1387) + 4)|0; + $1391 = $1390; + $1392 = HEAP32[$1391>>2]|0; + $1393 = (_i64Add(($1389|0),($1392|0),($1383|0),($1386|0))|0); + $1394 = tempRet0; + $1395 = $g; + $1396 = $1395; + HEAP32[$1396>>2] = $1393; + $1397 = (($1395) + 4)|0; + $1398 = $1397; + HEAP32[$1398>>2] = $1394; + $1399 = $t1; + $1400 = $1399; + $1401 = HEAP32[$1400>>2]|0; + $1402 = (($1399) + 4)|0; + $1403 = $1402; + $1404 = HEAP32[$1403>>2]|0; + $1405 = $t2; + $1406 = $1405; + $1407 = HEAP32[$1406>>2]|0; + $1408 = (($1405) + 4)|0; + $1409 = $1408; + $1410 = HEAP32[$1409>>2]|0; + $1411 = (_i64Add(($1401|0),($1404|0),($1407|0),($1410|0))|0); + $1412 = tempRet0; + $1413 = $c; + $1414 = $1413; + HEAP32[$1414>>2] = $1411; + $1415 = (($1413) + 4)|0; + $1416 = $1415; + HEAP32[$1416>>2] = $1412; + $1417 = $b; + $1418 = $1417; + $1419 = HEAP32[$1418>>2]|0; + $1420 = (($1417) + 4)|0; + $1421 = $1420; + $1422 = HEAP32[$1421>>2]|0; + $1423 = $g; + $1424 = $1423; + $1425 = HEAP32[$1424>>2]|0; + $1426 = (($1423) + 4)|0; + $1427 = $1426; + $1428 = HEAP32[$1427>>2]|0; + $1429 = (_Sum1_1422($1425,$1428)|0); + $1430 = tempRet0; + $1431 = (_i64Add(($1419|0),($1422|0),($1429|0),($1430|0))|0); + $1432 = tempRet0; + $1433 = $g; + $1434 = $1433; + $1435 = HEAP32[$1434>>2]|0; + $1436 = (($1433) + 4)|0; + $1437 = $1436; + $1438 = HEAP32[$1437>>2]|0; + $1439 = $h; + $1440 = $1439; + $1441 = HEAP32[$1440>>2]|0; + $1442 = (($1439) + 4)|0; + $1443 = $1442; + $1444 = HEAP32[$1443>>2]|0; + $1445 = $a; + $1446 = $1445; + $1447 = HEAP32[$1446>>2]|0; + $1448 = (($1445) + 4)|0; + $1449 = $1448; + $1450 = HEAP32[$1449>>2]|0; + $1451 = (_Ch($1435,$1438,$1441,$1444,$1447,$1450)|0); + $1452 = tempRet0; + $1453 = (_i64Add(($1431|0),($1432|0),($1451|0),($1452|0))|0); + $1454 = tempRet0; + $1455 = $t; + $1456 = (($1455) + 6)|0; + $1457 = (80 + ($1456<<3)|0); + $1458 = $1457; + $1459 = $1458; + $1460 = HEAP32[$1459>>2]|0; + $1461 = (($1458) + 4)|0; + $1462 = $1461; + $1463 = HEAP32[$1462>>2]|0; + $1464 = (_i64Add(($1453|0),($1454|0),($1460|0),($1463|0))|0); + $1465 = tempRet0; + $1466 = ((($w)) + 48|0); + $1467 = $1466; + $1468 = $1467; + $1469 = HEAP32[$1468>>2]|0; + $1470 = (($1467) + 4)|0; + $1471 = $1470; + $1472 = HEAP32[$1471>>2]|0; + $1473 = (_i64Add(($1464|0),($1465|0),($1469|0),($1472|0))|0); + $1474 = tempRet0; + $1475 = $t1; + $1476 = $1475; + HEAP32[$1476>>2] = $1473; + $1477 = (($1475) + 4)|0; + $1478 = $1477; + HEAP32[$1478>>2] = $1474; + $1479 = ((($w)) + 32|0); + $1480 = $1479; + $1481 = $1480; + $1482 = HEAP32[$1481>>2]|0; + $1483 = (($1480) + 4)|0; + $1484 = $1483; + $1485 = HEAP32[$1484>>2]|0; + $1486 = (_ROTR($1482,$1485,19,0)|0); + $1487 = tempRet0; + $1488 = ((($w)) + 32|0); + $1489 = $1488; + $1490 = $1489; + $1491 = HEAP32[$1490>>2]|0; + $1492 = (($1489) + 4)|0; + $1493 = $1492; + $1494 = HEAP32[$1493>>2]|0; + $1495 = (_ROTR($1491,$1494,61,0)|0); + $1496 = tempRet0; + $1497 = $1486 ^ $1495; + $1498 = $1487 ^ $1496; + $1499 = ((($w)) + 32|0); + $1500 = $1499; + $1501 = $1500; + $1502 = HEAP32[$1501>>2]|0; + $1503 = (($1500) + 4)|0; + $1504 = $1503; + $1505 = HEAP32[$1504>>2]|0; + $1506 = (_bitshift64Lshr(($1502|0),($1505|0),6)|0); + $1507 = tempRet0; + $1508 = $1497 ^ $1506; + $1509 = $1498 ^ $1507; + $1510 = ((($w)) + 120|0); + $1511 = $1510; + $1512 = $1511; + $1513 = HEAP32[$1512>>2]|0; + $1514 = (($1511) + 4)|0; + $1515 = $1514; + $1516 = HEAP32[$1515>>2]|0; + $1517 = (_i64Add(($1508|0),($1509|0),($1513|0),($1516|0))|0); + $1518 = tempRet0; + $1519 = ((($w)) + 56|0); + $1520 = $1519; + $1521 = $1520; + $1522 = HEAP32[$1521>>2]|0; + $1523 = (($1520) + 4)|0; + $1524 = $1523; + $1525 = HEAP32[$1524>>2]|0; + $1526 = (_ROTR($1522,$1525,1,0)|0); + $1527 = tempRet0; + $1528 = ((($w)) + 56|0); + $1529 = $1528; + $1530 = $1529; + $1531 = HEAP32[$1530>>2]|0; + $1532 = (($1529) + 4)|0; + $1533 = $1532; + $1534 = HEAP32[$1533>>2]|0; + $1535 = (_ROTR($1531,$1534,8,0)|0); + $1536 = tempRet0; + $1537 = $1526 ^ $1535; + $1538 = $1527 ^ $1536; + $1539 = ((($w)) + 56|0); + $1540 = $1539; + $1541 = $1540; + $1542 = HEAP32[$1541>>2]|0; + $1543 = (($1540) + 4)|0; + $1544 = $1543; + $1545 = HEAP32[$1544>>2]|0; + $1546 = (_bitshift64Lshr(($1542|0),($1545|0),7)|0); + $1547 = tempRet0; + $1548 = $1537 ^ $1546; + $1549 = $1538 ^ $1547; + $1550 = (_i64Add(($1517|0),($1518|0),($1548|0),($1549|0))|0); + $1551 = tempRet0; + $1552 = ((($w)) + 48|0); + $1553 = $1552; + $1554 = $1553; + $1555 = HEAP32[$1554>>2]|0; + $1556 = (($1553) + 4)|0; + $1557 = $1556; + $1558 = HEAP32[$1557>>2]|0; + $1559 = (_i64Add(($1555|0),($1558|0),($1550|0),($1551|0))|0); + $1560 = tempRet0; + $1561 = $1552; + $1562 = $1561; + HEAP32[$1562>>2] = $1559; + $1563 = (($1561) + 4)|0; + $1564 = $1563; + HEAP32[$1564>>2] = $1560; + $1565 = $c; + $1566 = $1565; + $1567 = HEAP32[$1566>>2]|0; + $1568 = (($1565) + 4)|0; + $1569 = $1568; + $1570 = HEAP32[$1569>>2]|0; + $1571 = (_Sum0_1423($1567,$1570)|0); + $1572 = tempRet0; + $1573 = $c; + $1574 = $1573; + $1575 = HEAP32[$1574>>2]|0; + $1576 = (($1573) + 4)|0; + $1577 = $1576; + $1578 = HEAP32[$1577>>2]|0; + $1579 = $d; + $1580 = $1579; + $1581 = HEAP32[$1580>>2]|0; + $1582 = (($1579) + 4)|0; + $1583 = $1582; + $1584 = HEAP32[$1583>>2]|0; + $1585 = $e; + $1586 = $1585; + $1587 = HEAP32[$1586>>2]|0; + $1588 = (($1585) + 4)|0; + $1589 = $1588; + $1590 = HEAP32[$1589>>2]|0; + $1591 = (_Maj_1424($1575,$1578,$1581,$1584,$1587,$1590)|0); + $1592 = tempRet0; + $1593 = (_i64Add(($1571|0),($1572|0),($1591|0),($1592|0))|0); + $1594 = tempRet0; + $1595 = $t2; + $1596 = $1595; + HEAP32[$1596>>2] = $1593; + $1597 = (($1595) + 4)|0; + $1598 = $1597; + HEAP32[$1598>>2] = $1594; + $1599 = $t1; + $1600 = $1599; + $1601 = HEAP32[$1600>>2]|0; + $1602 = (($1599) + 4)|0; + $1603 = $1602; + $1604 = HEAP32[$1603>>2]|0; + $1605 = $f; + $1606 = $1605; + $1607 = HEAP32[$1606>>2]|0; + $1608 = (($1605) + 4)|0; + $1609 = $1608; + $1610 = HEAP32[$1609>>2]|0; + $1611 = (_i64Add(($1607|0),($1610|0),($1601|0),($1604|0))|0); + $1612 = tempRet0; + $1613 = $f; + $1614 = $1613; + HEAP32[$1614>>2] = $1611; + $1615 = (($1613) + 4)|0; + $1616 = $1615; + HEAP32[$1616>>2] = $1612; + $1617 = $t1; + $1618 = $1617; + $1619 = HEAP32[$1618>>2]|0; + $1620 = (($1617) + 4)|0; + $1621 = $1620; + $1622 = HEAP32[$1621>>2]|0; + $1623 = $t2; + $1624 = $1623; + $1625 = HEAP32[$1624>>2]|0; + $1626 = (($1623) + 4)|0; + $1627 = $1626; + $1628 = HEAP32[$1627>>2]|0; + $1629 = (_i64Add(($1619|0),($1622|0),($1625|0),($1628|0))|0); + $1630 = tempRet0; + $1631 = $b; + $1632 = $1631; + HEAP32[$1632>>2] = $1629; + $1633 = (($1631) + 4)|0; + $1634 = $1633; + HEAP32[$1634>>2] = $1630; + $1635 = $a; + $1636 = $1635; + $1637 = HEAP32[$1636>>2]|0; + $1638 = (($1635) + 4)|0; + $1639 = $1638; + $1640 = HEAP32[$1639>>2]|0; + $1641 = $f; + $1642 = $1641; + $1643 = HEAP32[$1642>>2]|0; + $1644 = (($1641) + 4)|0; + $1645 = $1644; + $1646 = HEAP32[$1645>>2]|0; + $1647 = (_Sum1_1422($1643,$1646)|0); + $1648 = tempRet0; + $1649 = (_i64Add(($1637|0),($1640|0),($1647|0),($1648|0))|0); + $1650 = tempRet0; + $1651 = $f; + $1652 = $1651; + $1653 = HEAP32[$1652>>2]|0; + $1654 = (($1651) + 4)|0; + $1655 = $1654; + $1656 = HEAP32[$1655>>2]|0; + $1657 = $g; + $1658 = $1657; + $1659 = HEAP32[$1658>>2]|0; + $1660 = (($1657) + 4)|0; + $1661 = $1660; + $1662 = HEAP32[$1661>>2]|0; + $1663 = $h; + $1664 = $1663; + $1665 = HEAP32[$1664>>2]|0; + $1666 = (($1663) + 4)|0; + $1667 = $1666; + $1668 = HEAP32[$1667>>2]|0; + $1669 = (_Ch($1653,$1656,$1659,$1662,$1665,$1668)|0); + $1670 = tempRet0; + $1671 = (_i64Add(($1649|0),($1650|0),($1669|0),($1670|0))|0); + $1672 = tempRet0; + $1673 = $t; + $1674 = (($1673) + 7)|0; + $1675 = (80 + ($1674<<3)|0); + $1676 = $1675; + $1677 = $1676; + $1678 = HEAP32[$1677>>2]|0; + $1679 = (($1676) + 4)|0; + $1680 = $1679; + $1681 = HEAP32[$1680>>2]|0; + $1682 = (_i64Add(($1671|0),($1672|0),($1678|0),($1681|0))|0); + $1683 = tempRet0; + $1684 = ((($w)) + 56|0); + $1685 = $1684; + $1686 = $1685; + $1687 = HEAP32[$1686>>2]|0; + $1688 = (($1685) + 4)|0; + $1689 = $1688; + $1690 = HEAP32[$1689>>2]|0; + $1691 = (_i64Add(($1682|0),($1683|0),($1687|0),($1690|0))|0); + $1692 = tempRet0; + $1693 = $t1; + $1694 = $1693; + HEAP32[$1694>>2] = $1691; + $1695 = (($1693) + 4)|0; + $1696 = $1695; + HEAP32[$1696>>2] = $1692; + $1697 = ((($w)) + 40|0); + $1698 = $1697; + $1699 = $1698; + $1700 = HEAP32[$1699>>2]|0; + $1701 = (($1698) + 4)|0; + $1702 = $1701; + $1703 = HEAP32[$1702>>2]|0; + $1704 = (_ROTR($1700,$1703,19,0)|0); + $1705 = tempRet0; + $1706 = ((($w)) + 40|0); + $1707 = $1706; + $1708 = $1707; + $1709 = HEAP32[$1708>>2]|0; + $1710 = (($1707) + 4)|0; + $1711 = $1710; + $1712 = HEAP32[$1711>>2]|0; + $1713 = (_ROTR($1709,$1712,61,0)|0); + $1714 = tempRet0; + $1715 = $1704 ^ $1713; + $1716 = $1705 ^ $1714; + $1717 = ((($w)) + 40|0); + $1718 = $1717; + $1719 = $1718; + $1720 = HEAP32[$1719>>2]|0; + $1721 = (($1718) + 4)|0; + $1722 = $1721; + $1723 = HEAP32[$1722>>2]|0; + $1724 = (_bitshift64Lshr(($1720|0),($1723|0),6)|0); + $1725 = tempRet0; + $1726 = $1715 ^ $1724; + $1727 = $1716 ^ $1725; + $1728 = $w; + $1729 = $1728; + $1730 = HEAP32[$1729>>2]|0; + $1731 = (($1728) + 4)|0; + $1732 = $1731; + $1733 = HEAP32[$1732>>2]|0; + $1734 = (_i64Add(($1726|0),($1727|0),($1730|0),($1733|0))|0); + $1735 = tempRet0; + $1736 = ((($w)) + 64|0); + $1737 = $1736; + $1738 = $1737; + $1739 = HEAP32[$1738>>2]|0; + $1740 = (($1737) + 4)|0; + $1741 = $1740; + $1742 = HEAP32[$1741>>2]|0; + $1743 = (_ROTR($1739,$1742,1,0)|0); + $1744 = tempRet0; + $1745 = ((($w)) + 64|0); + $1746 = $1745; + $1747 = $1746; + $1748 = HEAP32[$1747>>2]|0; + $1749 = (($1746) + 4)|0; + $1750 = $1749; + $1751 = HEAP32[$1750>>2]|0; + $1752 = (_ROTR($1748,$1751,8,0)|0); + $1753 = tempRet0; + $1754 = $1743 ^ $1752; + $1755 = $1744 ^ $1753; + $1756 = ((($w)) + 64|0); + $1757 = $1756; + $1758 = $1757; + $1759 = HEAP32[$1758>>2]|0; + $1760 = (($1757) + 4)|0; + $1761 = $1760; + $1762 = HEAP32[$1761>>2]|0; + $1763 = (_bitshift64Lshr(($1759|0),($1762|0),7)|0); + $1764 = tempRet0; + $1765 = $1754 ^ $1763; + $1766 = $1755 ^ $1764; + $1767 = (_i64Add(($1734|0),($1735|0),($1765|0),($1766|0))|0); + $1768 = tempRet0; + $1769 = ((($w)) + 56|0); + $1770 = $1769; + $1771 = $1770; + $1772 = HEAP32[$1771>>2]|0; + $1773 = (($1770) + 4)|0; + $1774 = $1773; + $1775 = HEAP32[$1774>>2]|0; + $1776 = (_i64Add(($1772|0),($1775|0),($1767|0),($1768|0))|0); + $1777 = tempRet0; + $1778 = $1769; + $1779 = $1778; + HEAP32[$1779>>2] = $1776; + $1780 = (($1778) + 4)|0; + $1781 = $1780; + HEAP32[$1781>>2] = $1777; + $1782 = $b; + $1783 = $1782; + $1784 = HEAP32[$1783>>2]|0; + $1785 = (($1782) + 4)|0; + $1786 = $1785; + $1787 = HEAP32[$1786>>2]|0; + $1788 = (_Sum0_1423($1784,$1787)|0); + $1789 = tempRet0; + $1790 = $b; + $1791 = $1790; + $1792 = HEAP32[$1791>>2]|0; + $1793 = (($1790) + 4)|0; + $1794 = $1793; + $1795 = HEAP32[$1794>>2]|0; + $1796 = $c; + $1797 = $1796; + $1798 = HEAP32[$1797>>2]|0; + $1799 = (($1796) + 4)|0; + $1800 = $1799; + $1801 = HEAP32[$1800>>2]|0; + $1802 = $d; + $1803 = $1802; + $1804 = HEAP32[$1803>>2]|0; + $1805 = (($1802) + 4)|0; + $1806 = $1805; + $1807 = HEAP32[$1806>>2]|0; + $1808 = (_Maj_1424($1792,$1795,$1798,$1801,$1804,$1807)|0); + $1809 = tempRet0; + $1810 = (_i64Add(($1788|0),($1789|0),($1808|0),($1809|0))|0); + $1811 = tempRet0; + $1812 = $t2; + $1813 = $1812; + HEAP32[$1813>>2] = $1810; + $1814 = (($1812) + 4)|0; + $1815 = $1814; + HEAP32[$1815>>2] = $1811; + $1816 = $t1; + $1817 = $1816; + $1818 = HEAP32[$1817>>2]|0; + $1819 = (($1816) + 4)|0; + $1820 = $1819; + $1821 = HEAP32[$1820>>2]|0; + $1822 = $e; + $1823 = $1822; + $1824 = HEAP32[$1823>>2]|0; + $1825 = (($1822) + 4)|0; + $1826 = $1825; + $1827 = HEAP32[$1826>>2]|0; + $1828 = (_i64Add(($1824|0),($1827|0),($1818|0),($1821|0))|0); + $1829 = tempRet0; + $1830 = $e; + $1831 = $1830; + HEAP32[$1831>>2] = $1828; + $1832 = (($1830) + 4)|0; + $1833 = $1832; + HEAP32[$1833>>2] = $1829; + $1834 = $t1; + $1835 = $1834; + $1836 = HEAP32[$1835>>2]|0; + $1837 = (($1834) + 4)|0; + $1838 = $1837; + $1839 = HEAP32[$1838>>2]|0; + $1840 = $t2; + $1841 = $1840; + $1842 = HEAP32[$1841>>2]|0; + $1843 = (($1840) + 4)|0; + $1844 = $1843; + $1845 = HEAP32[$1844>>2]|0; + $1846 = (_i64Add(($1836|0),($1839|0),($1842|0),($1845|0))|0); + $1847 = tempRet0; + $1848 = $a; + $1849 = $1848; + HEAP32[$1849>>2] = $1846; + $1850 = (($1848) + 4)|0; + $1851 = $1850; + HEAP32[$1851>>2] = $1847; + $1852 = $h; + $1853 = $1852; + $1854 = HEAP32[$1853>>2]|0; + $1855 = (($1852) + 4)|0; + $1856 = $1855; + $1857 = HEAP32[$1856>>2]|0; + $1858 = $e; + $1859 = $1858; + $1860 = HEAP32[$1859>>2]|0; + $1861 = (($1858) + 4)|0; + $1862 = $1861; + $1863 = HEAP32[$1862>>2]|0; + $1864 = (_Sum1_1422($1860,$1863)|0); + $1865 = tempRet0; + $1866 = (_i64Add(($1854|0),($1857|0),($1864|0),($1865|0))|0); + $1867 = tempRet0; + $1868 = $e; + $1869 = $1868; + $1870 = HEAP32[$1869>>2]|0; + $1871 = (($1868) + 4)|0; + $1872 = $1871; + $1873 = HEAP32[$1872>>2]|0; + $1874 = $f; + $1875 = $1874; + $1876 = HEAP32[$1875>>2]|0; + $1877 = (($1874) + 4)|0; + $1878 = $1877; + $1879 = HEAP32[$1878>>2]|0; + $1880 = $g; + $1881 = $1880; + $1882 = HEAP32[$1881>>2]|0; + $1883 = (($1880) + 4)|0; + $1884 = $1883; + $1885 = HEAP32[$1884>>2]|0; + $1886 = (_Ch($1870,$1873,$1876,$1879,$1882,$1885)|0); + $1887 = tempRet0; + $1888 = (_i64Add(($1866|0),($1867|0),($1886|0),($1887|0))|0); + $1889 = tempRet0; + $1890 = $t; + $1891 = (($1890) + 8)|0; + $1892 = (80 + ($1891<<3)|0); + $1893 = $1892; + $1894 = $1893; + $1895 = HEAP32[$1894>>2]|0; + $1896 = (($1893) + 4)|0; + $1897 = $1896; + $1898 = HEAP32[$1897>>2]|0; + $1899 = (_i64Add(($1888|0),($1889|0),($1895|0),($1898|0))|0); + $1900 = tempRet0; + $1901 = ((($w)) + 64|0); + $1902 = $1901; + $1903 = $1902; + $1904 = HEAP32[$1903>>2]|0; + $1905 = (($1902) + 4)|0; + $1906 = $1905; + $1907 = HEAP32[$1906>>2]|0; + $1908 = (_i64Add(($1899|0),($1900|0),($1904|0),($1907|0))|0); + $1909 = tempRet0; + $1910 = $t1; + $1911 = $1910; + HEAP32[$1911>>2] = $1908; + $1912 = (($1910) + 4)|0; + $1913 = $1912; + HEAP32[$1913>>2] = $1909; + $1914 = ((($w)) + 48|0); + $1915 = $1914; + $1916 = $1915; + $1917 = HEAP32[$1916>>2]|0; + $1918 = (($1915) + 4)|0; + $1919 = $1918; + $1920 = HEAP32[$1919>>2]|0; + $1921 = (_ROTR($1917,$1920,19,0)|0); + $1922 = tempRet0; + $1923 = ((($w)) + 48|0); + $1924 = $1923; + $1925 = $1924; + $1926 = HEAP32[$1925>>2]|0; + $1927 = (($1924) + 4)|0; + $1928 = $1927; + $1929 = HEAP32[$1928>>2]|0; + $1930 = (_ROTR($1926,$1929,61,0)|0); + $1931 = tempRet0; + $1932 = $1921 ^ $1930; + $1933 = $1922 ^ $1931; + $1934 = ((($w)) + 48|0); + $1935 = $1934; + $1936 = $1935; + $1937 = HEAP32[$1936>>2]|0; + $1938 = (($1935) + 4)|0; + $1939 = $1938; + $1940 = HEAP32[$1939>>2]|0; + $1941 = (_bitshift64Lshr(($1937|0),($1940|0),6)|0); + $1942 = tempRet0; + $1943 = $1932 ^ $1941; + $1944 = $1933 ^ $1942; + $1945 = ((($w)) + 8|0); + $1946 = $1945; + $1947 = $1946; + $1948 = HEAP32[$1947>>2]|0; + $1949 = (($1946) + 4)|0; + $1950 = $1949; + $1951 = HEAP32[$1950>>2]|0; + $1952 = (_i64Add(($1943|0),($1944|0),($1948|0),($1951|0))|0); + $1953 = tempRet0; + $1954 = ((($w)) + 72|0); + $1955 = $1954; + $1956 = $1955; + $1957 = HEAP32[$1956>>2]|0; + $1958 = (($1955) + 4)|0; + $1959 = $1958; + $1960 = HEAP32[$1959>>2]|0; + $1961 = (_ROTR($1957,$1960,1,0)|0); + $1962 = tempRet0; + $1963 = ((($w)) + 72|0); + $1964 = $1963; + $1965 = $1964; + $1966 = HEAP32[$1965>>2]|0; + $1967 = (($1964) + 4)|0; + $1968 = $1967; + $1969 = HEAP32[$1968>>2]|0; + $1970 = (_ROTR($1966,$1969,8,0)|0); + $1971 = tempRet0; + $1972 = $1961 ^ $1970; + $1973 = $1962 ^ $1971; + $1974 = ((($w)) + 72|0); + $1975 = $1974; + $1976 = $1975; + $1977 = HEAP32[$1976>>2]|0; + $1978 = (($1975) + 4)|0; + $1979 = $1978; + $1980 = HEAP32[$1979>>2]|0; + $1981 = (_bitshift64Lshr(($1977|0),($1980|0),7)|0); + $1982 = tempRet0; + $1983 = $1972 ^ $1981; + $1984 = $1973 ^ $1982; + $1985 = (_i64Add(($1952|0),($1953|0),($1983|0),($1984|0))|0); + $1986 = tempRet0; + $1987 = ((($w)) + 64|0); + $1988 = $1987; + $1989 = $1988; + $1990 = HEAP32[$1989>>2]|0; + $1991 = (($1988) + 4)|0; + $1992 = $1991; + $1993 = HEAP32[$1992>>2]|0; + $1994 = (_i64Add(($1990|0),($1993|0),($1985|0),($1986|0))|0); + $1995 = tempRet0; + $1996 = $1987; + $1997 = $1996; + HEAP32[$1997>>2] = $1994; + $1998 = (($1996) + 4)|0; + $1999 = $1998; + HEAP32[$1999>>2] = $1995; + $2000 = $a; + $2001 = $2000; + $2002 = HEAP32[$2001>>2]|0; + $2003 = (($2000) + 4)|0; + $2004 = $2003; + $2005 = HEAP32[$2004>>2]|0; + $2006 = (_Sum0_1423($2002,$2005)|0); + $2007 = tempRet0; + $2008 = $a; + $2009 = $2008; + $2010 = HEAP32[$2009>>2]|0; + $2011 = (($2008) + 4)|0; + $2012 = $2011; + $2013 = HEAP32[$2012>>2]|0; + $2014 = $b; + $2015 = $2014; + $2016 = HEAP32[$2015>>2]|0; + $2017 = (($2014) + 4)|0; + $2018 = $2017; + $2019 = HEAP32[$2018>>2]|0; + $2020 = $c; + $2021 = $2020; + $2022 = HEAP32[$2021>>2]|0; + $2023 = (($2020) + 4)|0; + $2024 = $2023; + $2025 = HEAP32[$2024>>2]|0; + $2026 = (_Maj_1424($2010,$2013,$2016,$2019,$2022,$2025)|0); + $2027 = tempRet0; + $2028 = (_i64Add(($2006|0),($2007|0),($2026|0),($2027|0))|0); + $2029 = tempRet0; + $2030 = $t2; + $2031 = $2030; + HEAP32[$2031>>2] = $2028; + $2032 = (($2030) + 4)|0; + $2033 = $2032; + HEAP32[$2033>>2] = $2029; + $2034 = $t1; + $2035 = $2034; + $2036 = HEAP32[$2035>>2]|0; + $2037 = (($2034) + 4)|0; + $2038 = $2037; + $2039 = HEAP32[$2038>>2]|0; + $2040 = $d; + $2041 = $2040; + $2042 = HEAP32[$2041>>2]|0; + $2043 = (($2040) + 4)|0; + $2044 = $2043; + $2045 = HEAP32[$2044>>2]|0; + $2046 = (_i64Add(($2042|0),($2045|0),($2036|0),($2039|0))|0); + $2047 = tempRet0; + $2048 = $d; + $2049 = $2048; + HEAP32[$2049>>2] = $2046; + $2050 = (($2048) + 4)|0; + $2051 = $2050; + HEAP32[$2051>>2] = $2047; + $2052 = $t1; + $2053 = $2052; + $2054 = HEAP32[$2053>>2]|0; + $2055 = (($2052) + 4)|0; + $2056 = $2055; + $2057 = HEAP32[$2056>>2]|0; + $2058 = $t2; + $2059 = $2058; + $2060 = HEAP32[$2059>>2]|0; + $2061 = (($2058) + 4)|0; + $2062 = $2061; + $2063 = HEAP32[$2062>>2]|0; + $2064 = (_i64Add(($2054|0),($2057|0),($2060|0),($2063|0))|0); + $2065 = tempRet0; + $2066 = $h; + $2067 = $2066; + HEAP32[$2067>>2] = $2064; + $2068 = (($2066) + 4)|0; + $2069 = $2068; + HEAP32[$2069>>2] = $2065; + $2070 = $g; + $2071 = $2070; + $2072 = HEAP32[$2071>>2]|0; + $2073 = (($2070) + 4)|0; + $2074 = $2073; + $2075 = HEAP32[$2074>>2]|0; + $2076 = $d; + $2077 = $2076; + $2078 = HEAP32[$2077>>2]|0; + $2079 = (($2076) + 4)|0; + $2080 = $2079; + $2081 = HEAP32[$2080>>2]|0; + $2082 = (_Sum1_1422($2078,$2081)|0); + $2083 = tempRet0; + $2084 = (_i64Add(($2072|0),($2075|0),($2082|0),($2083|0))|0); + $2085 = tempRet0; + $2086 = $d; + $2087 = $2086; + $2088 = HEAP32[$2087>>2]|0; + $2089 = (($2086) + 4)|0; + $2090 = $2089; + $2091 = HEAP32[$2090>>2]|0; + $2092 = $e; + $2093 = $2092; + $2094 = HEAP32[$2093>>2]|0; + $2095 = (($2092) + 4)|0; + $2096 = $2095; + $2097 = HEAP32[$2096>>2]|0; + $2098 = $f; + $2099 = $2098; + $2100 = HEAP32[$2099>>2]|0; + $2101 = (($2098) + 4)|0; + $2102 = $2101; + $2103 = HEAP32[$2102>>2]|0; + $2104 = (_Ch($2088,$2091,$2094,$2097,$2100,$2103)|0); + $2105 = tempRet0; + $2106 = (_i64Add(($2084|0),($2085|0),($2104|0),($2105|0))|0); + $2107 = tempRet0; + $2108 = $t; + $2109 = (($2108) + 9)|0; + $2110 = (80 + ($2109<<3)|0); + $2111 = $2110; + $2112 = $2111; + $2113 = HEAP32[$2112>>2]|0; + $2114 = (($2111) + 4)|0; + $2115 = $2114; + $2116 = HEAP32[$2115>>2]|0; + $2117 = (_i64Add(($2106|0),($2107|0),($2113|0),($2116|0))|0); + $2118 = tempRet0; + $2119 = ((($w)) + 72|0); + $2120 = $2119; + $2121 = $2120; + $2122 = HEAP32[$2121>>2]|0; + $2123 = (($2120) + 4)|0; + $2124 = $2123; + $2125 = HEAP32[$2124>>2]|0; + $2126 = (_i64Add(($2117|0),($2118|0),($2122|0),($2125|0))|0); + $2127 = tempRet0; + $2128 = $t1; + $2129 = $2128; + HEAP32[$2129>>2] = $2126; + $2130 = (($2128) + 4)|0; + $2131 = $2130; + HEAP32[$2131>>2] = $2127; + $2132 = ((($w)) + 56|0); + $2133 = $2132; + $2134 = $2133; + $2135 = HEAP32[$2134>>2]|0; + $2136 = (($2133) + 4)|0; + $2137 = $2136; + $2138 = HEAP32[$2137>>2]|0; + $2139 = (_ROTR($2135,$2138,19,0)|0); + $2140 = tempRet0; + $2141 = ((($w)) + 56|0); + $2142 = $2141; + $2143 = $2142; + $2144 = HEAP32[$2143>>2]|0; + $2145 = (($2142) + 4)|0; + $2146 = $2145; + $2147 = HEAP32[$2146>>2]|0; + $2148 = (_ROTR($2144,$2147,61,0)|0); + $2149 = tempRet0; + $2150 = $2139 ^ $2148; + $2151 = $2140 ^ $2149; + $2152 = ((($w)) + 56|0); + $2153 = $2152; + $2154 = $2153; + $2155 = HEAP32[$2154>>2]|0; + $2156 = (($2153) + 4)|0; + $2157 = $2156; + $2158 = HEAP32[$2157>>2]|0; + $2159 = (_bitshift64Lshr(($2155|0),($2158|0),6)|0); + $2160 = tempRet0; + $2161 = $2150 ^ $2159; + $2162 = $2151 ^ $2160; + $2163 = ((($w)) + 16|0); + $2164 = $2163; + $2165 = $2164; + $2166 = HEAP32[$2165>>2]|0; + $2167 = (($2164) + 4)|0; + $2168 = $2167; + $2169 = HEAP32[$2168>>2]|0; + $2170 = (_i64Add(($2161|0),($2162|0),($2166|0),($2169|0))|0); + $2171 = tempRet0; + $2172 = ((($w)) + 80|0); + $2173 = $2172; + $2174 = $2173; + $2175 = HEAP32[$2174>>2]|0; + $2176 = (($2173) + 4)|0; + $2177 = $2176; + $2178 = HEAP32[$2177>>2]|0; + $2179 = (_ROTR($2175,$2178,1,0)|0); + $2180 = tempRet0; + $2181 = ((($w)) + 80|0); + $2182 = $2181; + $2183 = $2182; + $2184 = HEAP32[$2183>>2]|0; + $2185 = (($2182) + 4)|0; + $2186 = $2185; + $2187 = HEAP32[$2186>>2]|0; + $2188 = (_ROTR($2184,$2187,8,0)|0); + $2189 = tempRet0; + $2190 = $2179 ^ $2188; + $2191 = $2180 ^ $2189; + $2192 = ((($w)) + 80|0); + $2193 = $2192; + $2194 = $2193; + $2195 = HEAP32[$2194>>2]|0; + $2196 = (($2193) + 4)|0; + $2197 = $2196; + $2198 = HEAP32[$2197>>2]|0; + $2199 = (_bitshift64Lshr(($2195|0),($2198|0),7)|0); + $2200 = tempRet0; + $2201 = $2190 ^ $2199; + $2202 = $2191 ^ $2200; + $2203 = (_i64Add(($2170|0),($2171|0),($2201|0),($2202|0))|0); + $2204 = tempRet0; + $2205 = ((($w)) + 72|0); + $2206 = $2205; + $2207 = $2206; + $2208 = HEAP32[$2207>>2]|0; + $2209 = (($2206) + 4)|0; + $2210 = $2209; + $2211 = HEAP32[$2210>>2]|0; + $2212 = (_i64Add(($2208|0),($2211|0),($2203|0),($2204|0))|0); + $2213 = tempRet0; + $2214 = $2205; + $2215 = $2214; + HEAP32[$2215>>2] = $2212; + $2216 = (($2214) + 4)|0; + $2217 = $2216; + HEAP32[$2217>>2] = $2213; + $2218 = $h; + $2219 = $2218; + $2220 = HEAP32[$2219>>2]|0; + $2221 = (($2218) + 4)|0; + $2222 = $2221; + $2223 = HEAP32[$2222>>2]|0; + $2224 = (_Sum0_1423($2220,$2223)|0); + $2225 = tempRet0; + $2226 = $h; + $2227 = $2226; + $2228 = HEAP32[$2227>>2]|0; + $2229 = (($2226) + 4)|0; + $2230 = $2229; + $2231 = HEAP32[$2230>>2]|0; + $2232 = $a; + $2233 = $2232; + $2234 = HEAP32[$2233>>2]|0; + $2235 = (($2232) + 4)|0; + $2236 = $2235; + $2237 = HEAP32[$2236>>2]|0; + $2238 = $b; + $2239 = $2238; + $2240 = HEAP32[$2239>>2]|0; + $2241 = (($2238) + 4)|0; + $2242 = $2241; + $2243 = HEAP32[$2242>>2]|0; + $2244 = (_Maj_1424($2228,$2231,$2234,$2237,$2240,$2243)|0); + $2245 = tempRet0; + $2246 = (_i64Add(($2224|0),($2225|0),($2244|0),($2245|0))|0); + $2247 = tempRet0; + $2248 = $t2; + $2249 = $2248; + HEAP32[$2249>>2] = $2246; + $2250 = (($2248) + 4)|0; + $2251 = $2250; + HEAP32[$2251>>2] = $2247; + $2252 = $t1; + $2253 = $2252; + $2254 = HEAP32[$2253>>2]|0; + $2255 = (($2252) + 4)|0; + $2256 = $2255; + $2257 = HEAP32[$2256>>2]|0; + $2258 = $c; + $2259 = $2258; + $2260 = HEAP32[$2259>>2]|0; + $2261 = (($2258) + 4)|0; + $2262 = $2261; + $2263 = HEAP32[$2262>>2]|0; + $2264 = (_i64Add(($2260|0),($2263|0),($2254|0),($2257|0))|0); + $2265 = tempRet0; + $2266 = $c; + $2267 = $2266; + HEAP32[$2267>>2] = $2264; + $2268 = (($2266) + 4)|0; + $2269 = $2268; + HEAP32[$2269>>2] = $2265; + $2270 = $t1; + $2271 = $2270; + $2272 = HEAP32[$2271>>2]|0; + $2273 = (($2270) + 4)|0; + $2274 = $2273; + $2275 = HEAP32[$2274>>2]|0; + $2276 = $t2; + $2277 = $2276; + $2278 = HEAP32[$2277>>2]|0; + $2279 = (($2276) + 4)|0; + $2280 = $2279; + $2281 = HEAP32[$2280>>2]|0; + $2282 = (_i64Add(($2272|0),($2275|0),($2278|0),($2281|0))|0); + $2283 = tempRet0; + $2284 = $g; + $2285 = $2284; + HEAP32[$2285>>2] = $2282; + $2286 = (($2284) + 4)|0; + $2287 = $2286; + HEAP32[$2287>>2] = $2283; + $2288 = $f; + $2289 = $2288; + $2290 = HEAP32[$2289>>2]|0; + $2291 = (($2288) + 4)|0; + $2292 = $2291; + $2293 = HEAP32[$2292>>2]|0; + $2294 = $c; + $2295 = $2294; + $2296 = HEAP32[$2295>>2]|0; + $2297 = (($2294) + 4)|0; + $2298 = $2297; + $2299 = HEAP32[$2298>>2]|0; + $2300 = (_Sum1_1422($2296,$2299)|0); + $2301 = tempRet0; + $2302 = (_i64Add(($2290|0),($2293|0),($2300|0),($2301|0))|0); + $2303 = tempRet0; + $2304 = $c; + $2305 = $2304; + $2306 = HEAP32[$2305>>2]|0; + $2307 = (($2304) + 4)|0; + $2308 = $2307; + $2309 = HEAP32[$2308>>2]|0; + $2310 = $d; + $2311 = $2310; + $2312 = HEAP32[$2311>>2]|0; + $2313 = (($2310) + 4)|0; + $2314 = $2313; + $2315 = HEAP32[$2314>>2]|0; + $2316 = $e; + $2317 = $2316; + $2318 = HEAP32[$2317>>2]|0; + $2319 = (($2316) + 4)|0; + $2320 = $2319; + $2321 = HEAP32[$2320>>2]|0; + $2322 = (_Ch($2306,$2309,$2312,$2315,$2318,$2321)|0); + $2323 = tempRet0; + $2324 = (_i64Add(($2302|0),($2303|0),($2322|0),($2323|0))|0); + $2325 = tempRet0; + $2326 = $t; + $2327 = (($2326) + 10)|0; + $2328 = (80 + ($2327<<3)|0); + $2329 = $2328; + $2330 = $2329; + $2331 = HEAP32[$2330>>2]|0; + $2332 = (($2329) + 4)|0; + $2333 = $2332; + $2334 = HEAP32[$2333>>2]|0; + $2335 = (_i64Add(($2324|0),($2325|0),($2331|0),($2334|0))|0); + $2336 = tempRet0; + $2337 = ((($w)) + 80|0); + $2338 = $2337; + $2339 = $2338; + $2340 = HEAP32[$2339>>2]|0; + $2341 = (($2338) + 4)|0; + $2342 = $2341; + $2343 = HEAP32[$2342>>2]|0; + $2344 = (_i64Add(($2335|0),($2336|0),($2340|0),($2343|0))|0); + $2345 = tempRet0; + $2346 = $t1; + $2347 = $2346; + HEAP32[$2347>>2] = $2344; + $2348 = (($2346) + 4)|0; + $2349 = $2348; + HEAP32[$2349>>2] = $2345; + $2350 = ((($w)) + 64|0); + $2351 = $2350; + $2352 = $2351; + $2353 = HEAP32[$2352>>2]|0; + $2354 = (($2351) + 4)|0; + $2355 = $2354; + $2356 = HEAP32[$2355>>2]|0; + $2357 = (_ROTR($2353,$2356,19,0)|0); + $2358 = tempRet0; + $2359 = ((($w)) + 64|0); + $2360 = $2359; + $2361 = $2360; + $2362 = HEAP32[$2361>>2]|0; + $2363 = (($2360) + 4)|0; + $2364 = $2363; + $2365 = HEAP32[$2364>>2]|0; + $2366 = (_ROTR($2362,$2365,61,0)|0); + $2367 = tempRet0; + $2368 = $2357 ^ $2366; + $2369 = $2358 ^ $2367; + $2370 = ((($w)) + 64|0); + $2371 = $2370; + $2372 = $2371; + $2373 = HEAP32[$2372>>2]|0; + $2374 = (($2371) + 4)|0; + $2375 = $2374; + $2376 = HEAP32[$2375>>2]|0; + $2377 = (_bitshift64Lshr(($2373|0),($2376|0),6)|0); + $2378 = tempRet0; + $2379 = $2368 ^ $2377; + $2380 = $2369 ^ $2378; + $2381 = ((($w)) + 24|0); + $2382 = $2381; + $2383 = $2382; + $2384 = HEAP32[$2383>>2]|0; + $2385 = (($2382) + 4)|0; + $2386 = $2385; + $2387 = HEAP32[$2386>>2]|0; + $2388 = (_i64Add(($2379|0),($2380|0),($2384|0),($2387|0))|0); + $2389 = tempRet0; + $2390 = ((($w)) + 88|0); + $2391 = $2390; + $2392 = $2391; + $2393 = HEAP32[$2392>>2]|0; + $2394 = (($2391) + 4)|0; + $2395 = $2394; + $2396 = HEAP32[$2395>>2]|0; + $2397 = (_ROTR($2393,$2396,1,0)|0); + $2398 = tempRet0; + $2399 = ((($w)) + 88|0); + $2400 = $2399; + $2401 = $2400; + $2402 = HEAP32[$2401>>2]|0; + $2403 = (($2400) + 4)|0; + $2404 = $2403; + $2405 = HEAP32[$2404>>2]|0; + $2406 = (_ROTR($2402,$2405,8,0)|0); + $2407 = tempRet0; + $2408 = $2397 ^ $2406; + $2409 = $2398 ^ $2407; + $2410 = ((($w)) + 88|0); + $2411 = $2410; + $2412 = $2411; + $2413 = HEAP32[$2412>>2]|0; + $2414 = (($2411) + 4)|0; + $2415 = $2414; + $2416 = HEAP32[$2415>>2]|0; + $2417 = (_bitshift64Lshr(($2413|0),($2416|0),7)|0); + $2418 = tempRet0; + $2419 = $2408 ^ $2417; + $2420 = $2409 ^ $2418; + $2421 = (_i64Add(($2388|0),($2389|0),($2419|0),($2420|0))|0); + $2422 = tempRet0; + $2423 = ((($w)) + 80|0); + $2424 = $2423; + $2425 = $2424; + $2426 = HEAP32[$2425>>2]|0; + $2427 = (($2424) + 4)|0; + $2428 = $2427; + $2429 = HEAP32[$2428>>2]|0; + $2430 = (_i64Add(($2426|0),($2429|0),($2421|0),($2422|0))|0); + $2431 = tempRet0; + $2432 = $2423; + $2433 = $2432; + HEAP32[$2433>>2] = $2430; + $2434 = (($2432) + 4)|0; + $2435 = $2434; + HEAP32[$2435>>2] = $2431; + $2436 = $g; + $2437 = $2436; + $2438 = HEAP32[$2437>>2]|0; + $2439 = (($2436) + 4)|0; + $2440 = $2439; + $2441 = HEAP32[$2440>>2]|0; + $2442 = (_Sum0_1423($2438,$2441)|0); + $2443 = tempRet0; + $2444 = $g; + $2445 = $2444; + $2446 = HEAP32[$2445>>2]|0; + $2447 = (($2444) + 4)|0; + $2448 = $2447; + $2449 = HEAP32[$2448>>2]|0; + $2450 = $h; + $2451 = $2450; + $2452 = HEAP32[$2451>>2]|0; + $2453 = (($2450) + 4)|0; + $2454 = $2453; + $2455 = HEAP32[$2454>>2]|0; + $2456 = $a; + $2457 = $2456; + $2458 = HEAP32[$2457>>2]|0; + $2459 = (($2456) + 4)|0; + $2460 = $2459; + $2461 = HEAP32[$2460>>2]|0; + $2462 = (_Maj_1424($2446,$2449,$2452,$2455,$2458,$2461)|0); + $2463 = tempRet0; + $2464 = (_i64Add(($2442|0),($2443|0),($2462|0),($2463|0))|0); + $2465 = tempRet0; + $2466 = $t2; + $2467 = $2466; + HEAP32[$2467>>2] = $2464; + $2468 = (($2466) + 4)|0; + $2469 = $2468; + HEAP32[$2469>>2] = $2465; + $2470 = $t1; + $2471 = $2470; + $2472 = HEAP32[$2471>>2]|0; + $2473 = (($2470) + 4)|0; + $2474 = $2473; + $2475 = HEAP32[$2474>>2]|0; + $2476 = $b; + $2477 = $2476; + $2478 = HEAP32[$2477>>2]|0; + $2479 = (($2476) + 4)|0; + $2480 = $2479; + $2481 = HEAP32[$2480>>2]|0; + $2482 = (_i64Add(($2478|0),($2481|0),($2472|0),($2475|0))|0); + $2483 = tempRet0; + $2484 = $b; + $2485 = $2484; + HEAP32[$2485>>2] = $2482; + $2486 = (($2484) + 4)|0; + $2487 = $2486; + HEAP32[$2487>>2] = $2483; + $2488 = $t1; + $2489 = $2488; + $2490 = HEAP32[$2489>>2]|0; + $2491 = (($2488) + 4)|0; + $2492 = $2491; + $2493 = HEAP32[$2492>>2]|0; + $2494 = $t2; + $2495 = $2494; + $2496 = HEAP32[$2495>>2]|0; + $2497 = (($2494) + 4)|0; + $2498 = $2497; + $2499 = HEAP32[$2498>>2]|0; + $2500 = (_i64Add(($2490|0),($2493|0),($2496|0),($2499|0))|0); + $2501 = tempRet0; + $2502 = $f; + $2503 = $2502; + HEAP32[$2503>>2] = $2500; + $2504 = (($2502) + 4)|0; + $2505 = $2504; + HEAP32[$2505>>2] = $2501; + $2506 = $e; + $2507 = $2506; + $2508 = HEAP32[$2507>>2]|0; + $2509 = (($2506) + 4)|0; + $2510 = $2509; + $2511 = HEAP32[$2510>>2]|0; + $2512 = $b; + $2513 = $2512; + $2514 = HEAP32[$2513>>2]|0; + $2515 = (($2512) + 4)|0; + $2516 = $2515; + $2517 = HEAP32[$2516>>2]|0; + $2518 = (_Sum1_1422($2514,$2517)|0); + $2519 = tempRet0; + $2520 = (_i64Add(($2508|0),($2511|0),($2518|0),($2519|0))|0); + $2521 = tempRet0; + $2522 = $b; + $2523 = $2522; + $2524 = HEAP32[$2523>>2]|0; + $2525 = (($2522) + 4)|0; + $2526 = $2525; + $2527 = HEAP32[$2526>>2]|0; + $2528 = $c; + $2529 = $2528; + $2530 = HEAP32[$2529>>2]|0; + $2531 = (($2528) + 4)|0; + $2532 = $2531; + $2533 = HEAP32[$2532>>2]|0; + $2534 = $d; + $2535 = $2534; + $2536 = HEAP32[$2535>>2]|0; + $2537 = (($2534) + 4)|0; + $2538 = $2537; + $2539 = HEAP32[$2538>>2]|0; + $2540 = (_Ch($2524,$2527,$2530,$2533,$2536,$2539)|0); + $2541 = tempRet0; + $2542 = (_i64Add(($2520|0),($2521|0),($2540|0),($2541|0))|0); + $2543 = tempRet0; + $2544 = $t; + $2545 = (($2544) + 11)|0; + $2546 = (80 + ($2545<<3)|0); + $2547 = $2546; + $2548 = $2547; + $2549 = HEAP32[$2548>>2]|0; + $2550 = (($2547) + 4)|0; + $2551 = $2550; + $2552 = HEAP32[$2551>>2]|0; + $2553 = (_i64Add(($2542|0),($2543|0),($2549|0),($2552|0))|0); + $2554 = tempRet0; + $2555 = ((($w)) + 88|0); + $2556 = $2555; + $2557 = $2556; + $2558 = HEAP32[$2557>>2]|0; + $2559 = (($2556) + 4)|0; + $2560 = $2559; + $2561 = HEAP32[$2560>>2]|0; + $2562 = (_i64Add(($2553|0),($2554|0),($2558|0),($2561|0))|0); + $2563 = tempRet0; + $2564 = $t1; + $2565 = $2564; + HEAP32[$2565>>2] = $2562; + $2566 = (($2564) + 4)|0; + $2567 = $2566; + HEAP32[$2567>>2] = $2563; + $2568 = ((($w)) + 72|0); + $2569 = $2568; + $2570 = $2569; + $2571 = HEAP32[$2570>>2]|0; + $2572 = (($2569) + 4)|0; + $2573 = $2572; + $2574 = HEAP32[$2573>>2]|0; + $2575 = (_ROTR($2571,$2574,19,0)|0); + $2576 = tempRet0; + $2577 = ((($w)) + 72|0); + $2578 = $2577; + $2579 = $2578; + $2580 = HEAP32[$2579>>2]|0; + $2581 = (($2578) + 4)|0; + $2582 = $2581; + $2583 = HEAP32[$2582>>2]|0; + $2584 = (_ROTR($2580,$2583,61,0)|0); + $2585 = tempRet0; + $2586 = $2575 ^ $2584; + $2587 = $2576 ^ $2585; + $2588 = ((($w)) + 72|0); + $2589 = $2588; + $2590 = $2589; + $2591 = HEAP32[$2590>>2]|0; + $2592 = (($2589) + 4)|0; + $2593 = $2592; + $2594 = HEAP32[$2593>>2]|0; + $2595 = (_bitshift64Lshr(($2591|0),($2594|0),6)|0); + $2596 = tempRet0; + $2597 = $2586 ^ $2595; + $2598 = $2587 ^ $2596; + $2599 = ((($w)) + 32|0); + $2600 = $2599; + $2601 = $2600; + $2602 = HEAP32[$2601>>2]|0; + $2603 = (($2600) + 4)|0; + $2604 = $2603; + $2605 = HEAP32[$2604>>2]|0; + $2606 = (_i64Add(($2597|0),($2598|0),($2602|0),($2605|0))|0); + $2607 = tempRet0; + $2608 = ((($w)) + 96|0); + $2609 = $2608; + $2610 = $2609; + $2611 = HEAP32[$2610>>2]|0; + $2612 = (($2609) + 4)|0; + $2613 = $2612; + $2614 = HEAP32[$2613>>2]|0; + $2615 = (_ROTR($2611,$2614,1,0)|0); + $2616 = tempRet0; + $2617 = ((($w)) + 96|0); + $2618 = $2617; + $2619 = $2618; + $2620 = HEAP32[$2619>>2]|0; + $2621 = (($2618) + 4)|0; + $2622 = $2621; + $2623 = HEAP32[$2622>>2]|0; + $2624 = (_ROTR($2620,$2623,8,0)|0); + $2625 = tempRet0; + $2626 = $2615 ^ $2624; + $2627 = $2616 ^ $2625; + $2628 = ((($w)) + 96|0); + $2629 = $2628; + $2630 = $2629; + $2631 = HEAP32[$2630>>2]|0; + $2632 = (($2629) + 4)|0; + $2633 = $2632; + $2634 = HEAP32[$2633>>2]|0; + $2635 = (_bitshift64Lshr(($2631|0),($2634|0),7)|0); + $2636 = tempRet0; + $2637 = $2626 ^ $2635; + $2638 = $2627 ^ $2636; + $2639 = (_i64Add(($2606|0),($2607|0),($2637|0),($2638|0))|0); + $2640 = tempRet0; + $2641 = ((($w)) + 88|0); + $2642 = $2641; + $2643 = $2642; + $2644 = HEAP32[$2643>>2]|0; + $2645 = (($2642) + 4)|0; + $2646 = $2645; + $2647 = HEAP32[$2646>>2]|0; + $2648 = (_i64Add(($2644|0),($2647|0),($2639|0),($2640|0))|0); + $2649 = tempRet0; + $2650 = $2641; + $2651 = $2650; + HEAP32[$2651>>2] = $2648; + $2652 = (($2650) + 4)|0; + $2653 = $2652; + HEAP32[$2653>>2] = $2649; + $2654 = $f; + $2655 = $2654; + $2656 = HEAP32[$2655>>2]|0; + $2657 = (($2654) + 4)|0; + $2658 = $2657; + $2659 = HEAP32[$2658>>2]|0; + $2660 = (_Sum0_1423($2656,$2659)|0); + $2661 = tempRet0; + $2662 = $f; + $2663 = $2662; + $2664 = HEAP32[$2663>>2]|0; + $2665 = (($2662) + 4)|0; + $2666 = $2665; + $2667 = HEAP32[$2666>>2]|0; + $2668 = $g; + $2669 = $2668; + $2670 = HEAP32[$2669>>2]|0; + $2671 = (($2668) + 4)|0; + $2672 = $2671; + $2673 = HEAP32[$2672>>2]|0; + $2674 = $h; + $2675 = $2674; + $2676 = HEAP32[$2675>>2]|0; + $2677 = (($2674) + 4)|0; + $2678 = $2677; + $2679 = HEAP32[$2678>>2]|0; + $2680 = (_Maj_1424($2664,$2667,$2670,$2673,$2676,$2679)|0); + $2681 = tempRet0; + $2682 = (_i64Add(($2660|0),($2661|0),($2680|0),($2681|0))|0); + $2683 = tempRet0; + $2684 = $t2; + $2685 = $2684; + HEAP32[$2685>>2] = $2682; + $2686 = (($2684) + 4)|0; + $2687 = $2686; + HEAP32[$2687>>2] = $2683; + $2688 = $t1; + $2689 = $2688; + $2690 = HEAP32[$2689>>2]|0; + $2691 = (($2688) + 4)|0; + $2692 = $2691; + $2693 = HEAP32[$2692>>2]|0; + $2694 = $a; + $2695 = $2694; + $2696 = HEAP32[$2695>>2]|0; + $2697 = (($2694) + 4)|0; + $2698 = $2697; + $2699 = HEAP32[$2698>>2]|0; + $2700 = (_i64Add(($2696|0),($2699|0),($2690|0),($2693|0))|0); + $2701 = tempRet0; + $2702 = $a; + $2703 = $2702; + HEAP32[$2703>>2] = $2700; + $2704 = (($2702) + 4)|0; + $2705 = $2704; + HEAP32[$2705>>2] = $2701; + $2706 = $t1; + $2707 = $2706; + $2708 = HEAP32[$2707>>2]|0; + $2709 = (($2706) + 4)|0; + $2710 = $2709; + $2711 = HEAP32[$2710>>2]|0; + $2712 = $t2; + $2713 = $2712; + $2714 = HEAP32[$2713>>2]|0; + $2715 = (($2712) + 4)|0; + $2716 = $2715; + $2717 = HEAP32[$2716>>2]|0; + $2718 = (_i64Add(($2708|0),($2711|0),($2714|0),($2717|0))|0); + $2719 = tempRet0; + $2720 = $e; + $2721 = $2720; + HEAP32[$2721>>2] = $2718; + $2722 = (($2720) + 4)|0; + $2723 = $2722; + HEAP32[$2723>>2] = $2719; + $2724 = $d; + $2725 = $2724; + $2726 = HEAP32[$2725>>2]|0; + $2727 = (($2724) + 4)|0; + $2728 = $2727; + $2729 = HEAP32[$2728>>2]|0; + $2730 = $a; + $2731 = $2730; + $2732 = HEAP32[$2731>>2]|0; + $2733 = (($2730) + 4)|0; + $2734 = $2733; + $2735 = HEAP32[$2734>>2]|0; + $2736 = (_Sum1_1422($2732,$2735)|0); + $2737 = tempRet0; + $2738 = (_i64Add(($2726|0),($2729|0),($2736|0),($2737|0))|0); + $2739 = tempRet0; + $2740 = $a; + $2741 = $2740; + $2742 = HEAP32[$2741>>2]|0; + $2743 = (($2740) + 4)|0; + $2744 = $2743; + $2745 = HEAP32[$2744>>2]|0; + $2746 = $b; + $2747 = $2746; + $2748 = HEAP32[$2747>>2]|0; + $2749 = (($2746) + 4)|0; + $2750 = $2749; + $2751 = HEAP32[$2750>>2]|0; + $2752 = $c; + $2753 = $2752; + $2754 = HEAP32[$2753>>2]|0; + $2755 = (($2752) + 4)|0; + $2756 = $2755; + $2757 = HEAP32[$2756>>2]|0; + $2758 = (_Ch($2742,$2745,$2748,$2751,$2754,$2757)|0); + $2759 = tempRet0; + $2760 = (_i64Add(($2738|0),($2739|0),($2758|0),($2759|0))|0); + $2761 = tempRet0; + $2762 = $t; + $2763 = (($2762) + 12)|0; + $2764 = (80 + ($2763<<3)|0); + $2765 = $2764; + $2766 = $2765; + $2767 = HEAP32[$2766>>2]|0; + $2768 = (($2765) + 4)|0; + $2769 = $2768; + $2770 = HEAP32[$2769>>2]|0; + $2771 = (_i64Add(($2760|0),($2761|0),($2767|0),($2770|0))|0); + $2772 = tempRet0; + $2773 = ((($w)) + 96|0); + $2774 = $2773; + $2775 = $2774; + $2776 = HEAP32[$2775>>2]|0; + $2777 = (($2774) + 4)|0; + $2778 = $2777; + $2779 = HEAP32[$2778>>2]|0; + $2780 = (_i64Add(($2771|0),($2772|0),($2776|0),($2779|0))|0); + $2781 = tempRet0; + $2782 = $t1; + $2783 = $2782; + HEAP32[$2783>>2] = $2780; + $2784 = (($2782) + 4)|0; + $2785 = $2784; + HEAP32[$2785>>2] = $2781; + $2786 = ((($w)) + 80|0); + $2787 = $2786; + $2788 = $2787; + $2789 = HEAP32[$2788>>2]|0; + $2790 = (($2787) + 4)|0; + $2791 = $2790; + $2792 = HEAP32[$2791>>2]|0; + $2793 = (_ROTR($2789,$2792,19,0)|0); + $2794 = tempRet0; + $2795 = ((($w)) + 80|0); + $2796 = $2795; + $2797 = $2796; + $2798 = HEAP32[$2797>>2]|0; + $2799 = (($2796) + 4)|0; + $2800 = $2799; + $2801 = HEAP32[$2800>>2]|0; + $2802 = (_ROTR($2798,$2801,61,0)|0); + $2803 = tempRet0; + $2804 = $2793 ^ $2802; + $2805 = $2794 ^ $2803; + $2806 = ((($w)) + 80|0); + $2807 = $2806; + $2808 = $2807; + $2809 = HEAP32[$2808>>2]|0; + $2810 = (($2807) + 4)|0; + $2811 = $2810; + $2812 = HEAP32[$2811>>2]|0; + $2813 = (_bitshift64Lshr(($2809|0),($2812|0),6)|0); + $2814 = tempRet0; + $2815 = $2804 ^ $2813; + $2816 = $2805 ^ $2814; + $2817 = ((($w)) + 40|0); + $2818 = $2817; + $2819 = $2818; + $2820 = HEAP32[$2819>>2]|0; + $2821 = (($2818) + 4)|0; + $2822 = $2821; + $2823 = HEAP32[$2822>>2]|0; + $2824 = (_i64Add(($2815|0),($2816|0),($2820|0),($2823|0))|0); + $2825 = tempRet0; + $2826 = ((($w)) + 104|0); + $2827 = $2826; + $2828 = $2827; + $2829 = HEAP32[$2828>>2]|0; + $2830 = (($2827) + 4)|0; + $2831 = $2830; + $2832 = HEAP32[$2831>>2]|0; + $2833 = (_ROTR($2829,$2832,1,0)|0); + $2834 = tempRet0; + $2835 = ((($w)) + 104|0); + $2836 = $2835; + $2837 = $2836; + $2838 = HEAP32[$2837>>2]|0; + $2839 = (($2836) + 4)|0; + $2840 = $2839; + $2841 = HEAP32[$2840>>2]|0; + $2842 = (_ROTR($2838,$2841,8,0)|0); + $2843 = tempRet0; + $2844 = $2833 ^ $2842; + $2845 = $2834 ^ $2843; + $2846 = ((($w)) + 104|0); + $2847 = $2846; + $2848 = $2847; + $2849 = HEAP32[$2848>>2]|0; + $2850 = (($2847) + 4)|0; + $2851 = $2850; + $2852 = HEAP32[$2851>>2]|0; + $2853 = (_bitshift64Lshr(($2849|0),($2852|0),7)|0); + $2854 = tempRet0; + $2855 = $2844 ^ $2853; + $2856 = $2845 ^ $2854; + $2857 = (_i64Add(($2824|0),($2825|0),($2855|0),($2856|0))|0); + $2858 = tempRet0; + $2859 = ((($w)) + 96|0); + $2860 = $2859; + $2861 = $2860; + $2862 = HEAP32[$2861>>2]|0; + $2863 = (($2860) + 4)|0; + $2864 = $2863; + $2865 = HEAP32[$2864>>2]|0; + $2866 = (_i64Add(($2862|0),($2865|0),($2857|0),($2858|0))|0); + $2867 = tempRet0; + $2868 = $2859; + $2869 = $2868; + HEAP32[$2869>>2] = $2866; + $2870 = (($2868) + 4)|0; + $2871 = $2870; + HEAP32[$2871>>2] = $2867; + $2872 = $e; + $2873 = $2872; + $2874 = HEAP32[$2873>>2]|0; + $2875 = (($2872) + 4)|0; + $2876 = $2875; + $2877 = HEAP32[$2876>>2]|0; + $2878 = (_Sum0_1423($2874,$2877)|0); + $2879 = tempRet0; + $2880 = $e; + $2881 = $2880; + $2882 = HEAP32[$2881>>2]|0; + $2883 = (($2880) + 4)|0; + $2884 = $2883; + $2885 = HEAP32[$2884>>2]|0; + $2886 = $f; + $2887 = $2886; + $2888 = HEAP32[$2887>>2]|0; + $2889 = (($2886) + 4)|0; + $2890 = $2889; + $2891 = HEAP32[$2890>>2]|0; + $2892 = $g; + $2893 = $2892; + $2894 = HEAP32[$2893>>2]|0; + $2895 = (($2892) + 4)|0; + $2896 = $2895; + $2897 = HEAP32[$2896>>2]|0; + $2898 = (_Maj_1424($2882,$2885,$2888,$2891,$2894,$2897)|0); + $2899 = tempRet0; + $2900 = (_i64Add(($2878|0),($2879|0),($2898|0),($2899|0))|0); + $2901 = tempRet0; + $2902 = $t2; + $2903 = $2902; + HEAP32[$2903>>2] = $2900; + $2904 = (($2902) + 4)|0; + $2905 = $2904; + HEAP32[$2905>>2] = $2901; + $2906 = $t1; + $2907 = $2906; + $2908 = HEAP32[$2907>>2]|0; + $2909 = (($2906) + 4)|0; + $2910 = $2909; + $2911 = HEAP32[$2910>>2]|0; + $2912 = $h; + $2913 = $2912; + $2914 = HEAP32[$2913>>2]|0; + $2915 = (($2912) + 4)|0; + $2916 = $2915; + $2917 = HEAP32[$2916>>2]|0; + $2918 = (_i64Add(($2914|0),($2917|0),($2908|0),($2911|0))|0); + $2919 = tempRet0; + $2920 = $h; + $2921 = $2920; + HEAP32[$2921>>2] = $2918; + $2922 = (($2920) + 4)|0; + $2923 = $2922; + HEAP32[$2923>>2] = $2919; + $2924 = $t1; + $2925 = $2924; + $2926 = HEAP32[$2925>>2]|0; + $2927 = (($2924) + 4)|0; + $2928 = $2927; + $2929 = HEAP32[$2928>>2]|0; + $2930 = $t2; + $2931 = $2930; + $2932 = HEAP32[$2931>>2]|0; + $2933 = (($2930) + 4)|0; + $2934 = $2933; + $2935 = HEAP32[$2934>>2]|0; + $2936 = (_i64Add(($2926|0),($2929|0),($2932|0),($2935|0))|0); + $2937 = tempRet0; + $2938 = $d; + $2939 = $2938; + HEAP32[$2939>>2] = $2936; + $2940 = (($2938) + 4)|0; + $2941 = $2940; + HEAP32[$2941>>2] = $2937; + $2942 = $c; + $2943 = $2942; + $2944 = HEAP32[$2943>>2]|0; + $2945 = (($2942) + 4)|0; + $2946 = $2945; + $2947 = HEAP32[$2946>>2]|0; + $2948 = $h; + $2949 = $2948; + $2950 = HEAP32[$2949>>2]|0; + $2951 = (($2948) + 4)|0; + $2952 = $2951; + $2953 = HEAP32[$2952>>2]|0; + $2954 = (_Sum1_1422($2950,$2953)|0); + $2955 = tempRet0; + $2956 = (_i64Add(($2944|0),($2947|0),($2954|0),($2955|0))|0); + $2957 = tempRet0; + $2958 = $h; + $2959 = $2958; + $2960 = HEAP32[$2959>>2]|0; + $2961 = (($2958) + 4)|0; + $2962 = $2961; + $2963 = HEAP32[$2962>>2]|0; + $2964 = $a; + $2965 = $2964; + $2966 = HEAP32[$2965>>2]|0; + $2967 = (($2964) + 4)|0; + $2968 = $2967; + $2969 = HEAP32[$2968>>2]|0; + $2970 = $b; + $2971 = $2970; + $2972 = HEAP32[$2971>>2]|0; + $2973 = (($2970) + 4)|0; + $2974 = $2973; + $2975 = HEAP32[$2974>>2]|0; + $2976 = (_Ch($2960,$2963,$2966,$2969,$2972,$2975)|0); + $2977 = tempRet0; + $2978 = (_i64Add(($2956|0),($2957|0),($2976|0),($2977|0))|0); + $2979 = tempRet0; + $2980 = $t; + $2981 = (($2980) + 13)|0; + $2982 = (80 + ($2981<<3)|0); + $2983 = $2982; + $2984 = $2983; + $2985 = HEAP32[$2984>>2]|0; + $2986 = (($2983) + 4)|0; + $2987 = $2986; + $2988 = HEAP32[$2987>>2]|0; + $2989 = (_i64Add(($2978|0),($2979|0),($2985|0),($2988|0))|0); + $2990 = tempRet0; + $2991 = ((($w)) + 104|0); + $2992 = $2991; + $2993 = $2992; + $2994 = HEAP32[$2993>>2]|0; + $2995 = (($2992) + 4)|0; + $2996 = $2995; + $2997 = HEAP32[$2996>>2]|0; + $2998 = (_i64Add(($2989|0),($2990|0),($2994|0),($2997|0))|0); + $2999 = tempRet0; + $3000 = $t1; + $3001 = $3000; + HEAP32[$3001>>2] = $2998; + $3002 = (($3000) + 4)|0; + $3003 = $3002; + HEAP32[$3003>>2] = $2999; + $3004 = ((($w)) + 88|0); + $3005 = $3004; + $3006 = $3005; + $3007 = HEAP32[$3006>>2]|0; + $3008 = (($3005) + 4)|0; + $3009 = $3008; + $3010 = HEAP32[$3009>>2]|0; + $3011 = (_ROTR($3007,$3010,19,0)|0); + $3012 = tempRet0; + $3013 = ((($w)) + 88|0); + $3014 = $3013; + $3015 = $3014; + $3016 = HEAP32[$3015>>2]|0; + $3017 = (($3014) + 4)|0; + $3018 = $3017; + $3019 = HEAP32[$3018>>2]|0; + $3020 = (_ROTR($3016,$3019,61,0)|0); + $3021 = tempRet0; + $3022 = $3011 ^ $3020; + $3023 = $3012 ^ $3021; + $3024 = ((($w)) + 88|0); + $3025 = $3024; + $3026 = $3025; + $3027 = HEAP32[$3026>>2]|0; + $3028 = (($3025) + 4)|0; + $3029 = $3028; + $3030 = HEAP32[$3029>>2]|0; + $3031 = (_bitshift64Lshr(($3027|0),($3030|0),6)|0); + $3032 = tempRet0; + $3033 = $3022 ^ $3031; + $3034 = $3023 ^ $3032; + $3035 = ((($w)) + 48|0); + $3036 = $3035; + $3037 = $3036; + $3038 = HEAP32[$3037>>2]|0; + $3039 = (($3036) + 4)|0; + $3040 = $3039; + $3041 = HEAP32[$3040>>2]|0; + $3042 = (_i64Add(($3033|0),($3034|0),($3038|0),($3041|0))|0); + $3043 = tempRet0; + $3044 = ((($w)) + 112|0); + $3045 = $3044; + $3046 = $3045; + $3047 = HEAP32[$3046>>2]|0; + $3048 = (($3045) + 4)|0; + $3049 = $3048; + $3050 = HEAP32[$3049>>2]|0; + $3051 = (_ROTR($3047,$3050,1,0)|0); + $3052 = tempRet0; + $3053 = ((($w)) + 112|0); + $3054 = $3053; + $3055 = $3054; + $3056 = HEAP32[$3055>>2]|0; + $3057 = (($3054) + 4)|0; + $3058 = $3057; + $3059 = HEAP32[$3058>>2]|0; + $3060 = (_ROTR($3056,$3059,8,0)|0); + $3061 = tempRet0; + $3062 = $3051 ^ $3060; + $3063 = $3052 ^ $3061; + $3064 = ((($w)) + 112|0); + $3065 = $3064; + $3066 = $3065; + $3067 = HEAP32[$3066>>2]|0; + $3068 = (($3065) + 4)|0; + $3069 = $3068; + $3070 = HEAP32[$3069>>2]|0; + $3071 = (_bitshift64Lshr(($3067|0),($3070|0),7)|0); + $3072 = tempRet0; + $3073 = $3062 ^ $3071; + $3074 = $3063 ^ $3072; + $3075 = (_i64Add(($3042|0),($3043|0),($3073|0),($3074|0))|0); + $3076 = tempRet0; + $3077 = ((($w)) + 104|0); + $3078 = $3077; + $3079 = $3078; + $3080 = HEAP32[$3079>>2]|0; + $3081 = (($3078) + 4)|0; + $3082 = $3081; + $3083 = HEAP32[$3082>>2]|0; + $3084 = (_i64Add(($3080|0),($3083|0),($3075|0),($3076|0))|0); + $3085 = tempRet0; + $3086 = $3077; + $3087 = $3086; + HEAP32[$3087>>2] = $3084; + $3088 = (($3086) + 4)|0; + $3089 = $3088; + HEAP32[$3089>>2] = $3085; + $3090 = $d; + $3091 = $3090; + $3092 = HEAP32[$3091>>2]|0; + $3093 = (($3090) + 4)|0; + $3094 = $3093; + $3095 = HEAP32[$3094>>2]|0; + $3096 = (_Sum0_1423($3092,$3095)|0); + $3097 = tempRet0; + $3098 = $d; + $3099 = $3098; + $3100 = HEAP32[$3099>>2]|0; + $3101 = (($3098) + 4)|0; + $3102 = $3101; + $3103 = HEAP32[$3102>>2]|0; + $3104 = $e; + $3105 = $3104; + $3106 = HEAP32[$3105>>2]|0; + $3107 = (($3104) + 4)|0; + $3108 = $3107; + $3109 = HEAP32[$3108>>2]|0; + $3110 = $f; + $3111 = $3110; + $3112 = HEAP32[$3111>>2]|0; + $3113 = (($3110) + 4)|0; + $3114 = $3113; + $3115 = HEAP32[$3114>>2]|0; + $3116 = (_Maj_1424($3100,$3103,$3106,$3109,$3112,$3115)|0); + $3117 = tempRet0; + $3118 = (_i64Add(($3096|0),($3097|0),($3116|0),($3117|0))|0); + $3119 = tempRet0; + $3120 = $t2; + $3121 = $3120; + HEAP32[$3121>>2] = $3118; + $3122 = (($3120) + 4)|0; + $3123 = $3122; + HEAP32[$3123>>2] = $3119; + $3124 = $t1; + $3125 = $3124; + $3126 = HEAP32[$3125>>2]|0; + $3127 = (($3124) + 4)|0; + $3128 = $3127; + $3129 = HEAP32[$3128>>2]|0; + $3130 = $g; + $3131 = $3130; + $3132 = HEAP32[$3131>>2]|0; + $3133 = (($3130) + 4)|0; + $3134 = $3133; + $3135 = HEAP32[$3134>>2]|0; + $3136 = (_i64Add(($3132|0),($3135|0),($3126|0),($3129|0))|0); + $3137 = tempRet0; + $3138 = $g; + $3139 = $3138; + HEAP32[$3139>>2] = $3136; + $3140 = (($3138) + 4)|0; + $3141 = $3140; + HEAP32[$3141>>2] = $3137; + $3142 = $t1; + $3143 = $3142; + $3144 = HEAP32[$3143>>2]|0; + $3145 = (($3142) + 4)|0; + $3146 = $3145; + $3147 = HEAP32[$3146>>2]|0; + $3148 = $t2; + $3149 = $3148; + $3150 = HEAP32[$3149>>2]|0; + $3151 = (($3148) + 4)|0; + $3152 = $3151; + $3153 = HEAP32[$3152>>2]|0; + $3154 = (_i64Add(($3144|0),($3147|0),($3150|0),($3153|0))|0); + $3155 = tempRet0; + $3156 = $c; + $3157 = $3156; + HEAP32[$3157>>2] = $3154; + $3158 = (($3156) + 4)|0; + $3159 = $3158; + HEAP32[$3159>>2] = $3155; + $3160 = $b; + $3161 = $3160; + $3162 = HEAP32[$3161>>2]|0; + $3163 = (($3160) + 4)|0; + $3164 = $3163; + $3165 = HEAP32[$3164>>2]|0; + $3166 = $g; + $3167 = $3166; + $3168 = HEAP32[$3167>>2]|0; + $3169 = (($3166) + 4)|0; + $3170 = $3169; + $3171 = HEAP32[$3170>>2]|0; + $3172 = (_Sum1_1422($3168,$3171)|0); + $3173 = tempRet0; + $3174 = (_i64Add(($3162|0),($3165|0),($3172|0),($3173|0))|0); + $3175 = tempRet0; + $3176 = $g; + $3177 = $3176; + $3178 = HEAP32[$3177>>2]|0; + $3179 = (($3176) + 4)|0; + $3180 = $3179; + $3181 = HEAP32[$3180>>2]|0; + $3182 = $h; + $3183 = $3182; + $3184 = HEAP32[$3183>>2]|0; + $3185 = (($3182) + 4)|0; + $3186 = $3185; + $3187 = HEAP32[$3186>>2]|0; + $3188 = $a; + $3189 = $3188; + $3190 = HEAP32[$3189>>2]|0; + $3191 = (($3188) + 4)|0; + $3192 = $3191; + $3193 = HEAP32[$3192>>2]|0; + $3194 = (_Ch($3178,$3181,$3184,$3187,$3190,$3193)|0); + $3195 = tempRet0; + $3196 = (_i64Add(($3174|0),($3175|0),($3194|0),($3195|0))|0); + $3197 = tempRet0; + $3198 = $t; + $3199 = (($3198) + 14)|0; + $3200 = (80 + ($3199<<3)|0); + $3201 = $3200; + $3202 = $3201; + $3203 = HEAP32[$3202>>2]|0; + $3204 = (($3201) + 4)|0; + $3205 = $3204; + $3206 = HEAP32[$3205>>2]|0; + $3207 = (_i64Add(($3196|0),($3197|0),($3203|0),($3206|0))|0); + $3208 = tempRet0; + $3209 = ((($w)) + 112|0); + $3210 = $3209; + $3211 = $3210; + $3212 = HEAP32[$3211>>2]|0; + $3213 = (($3210) + 4)|0; + $3214 = $3213; + $3215 = HEAP32[$3214>>2]|0; + $3216 = (_i64Add(($3207|0),($3208|0),($3212|0),($3215|0))|0); + $3217 = tempRet0; + $3218 = $t1; + $3219 = $3218; + HEAP32[$3219>>2] = $3216; + $3220 = (($3218) + 4)|0; + $3221 = $3220; + HEAP32[$3221>>2] = $3217; + $3222 = ((($w)) + 96|0); + $3223 = $3222; + $3224 = $3223; + $3225 = HEAP32[$3224>>2]|0; + $3226 = (($3223) + 4)|0; + $3227 = $3226; + $3228 = HEAP32[$3227>>2]|0; + $3229 = (_ROTR($3225,$3228,19,0)|0); + $3230 = tempRet0; + $3231 = ((($w)) + 96|0); + $3232 = $3231; + $3233 = $3232; + $3234 = HEAP32[$3233>>2]|0; + $3235 = (($3232) + 4)|0; + $3236 = $3235; + $3237 = HEAP32[$3236>>2]|0; + $3238 = (_ROTR($3234,$3237,61,0)|0); + $3239 = tempRet0; + $3240 = $3229 ^ $3238; + $3241 = $3230 ^ $3239; + $3242 = ((($w)) + 96|0); + $3243 = $3242; + $3244 = $3243; + $3245 = HEAP32[$3244>>2]|0; + $3246 = (($3243) + 4)|0; + $3247 = $3246; + $3248 = HEAP32[$3247>>2]|0; + $3249 = (_bitshift64Lshr(($3245|0),($3248|0),6)|0); + $3250 = tempRet0; + $3251 = $3240 ^ $3249; + $3252 = $3241 ^ $3250; + $3253 = ((($w)) + 56|0); + $3254 = $3253; + $3255 = $3254; + $3256 = HEAP32[$3255>>2]|0; + $3257 = (($3254) + 4)|0; + $3258 = $3257; + $3259 = HEAP32[$3258>>2]|0; + $3260 = (_i64Add(($3251|0),($3252|0),($3256|0),($3259|0))|0); + $3261 = tempRet0; + $3262 = ((($w)) + 120|0); + $3263 = $3262; + $3264 = $3263; + $3265 = HEAP32[$3264>>2]|0; + $3266 = (($3263) + 4)|0; + $3267 = $3266; + $3268 = HEAP32[$3267>>2]|0; + $3269 = (_ROTR($3265,$3268,1,0)|0); + $3270 = tempRet0; + $3271 = ((($w)) + 120|0); + $3272 = $3271; + $3273 = $3272; + $3274 = HEAP32[$3273>>2]|0; + $3275 = (($3272) + 4)|0; + $3276 = $3275; + $3277 = HEAP32[$3276>>2]|0; + $3278 = (_ROTR($3274,$3277,8,0)|0); + $3279 = tempRet0; + $3280 = $3269 ^ $3278; + $3281 = $3270 ^ $3279; + $3282 = ((($w)) + 120|0); + $3283 = $3282; + $3284 = $3283; + $3285 = HEAP32[$3284>>2]|0; + $3286 = (($3283) + 4)|0; + $3287 = $3286; + $3288 = HEAP32[$3287>>2]|0; + $3289 = (_bitshift64Lshr(($3285|0),($3288|0),7)|0); + $3290 = tempRet0; + $3291 = $3280 ^ $3289; + $3292 = $3281 ^ $3290; + $3293 = (_i64Add(($3260|0),($3261|0),($3291|0),($3292|0))|0); + $3294 = tempRet0; + $3295 = ((($w)) + 112|0); + $3296 = $3295; + $3297 = $3296; + $3298 = HEAP32[$3297>>2]|0; + $3299 = (($3296) + 4)|0; + $3300 = $3299; + $3301 = HEAP32[$3300>>2]|0; + $3302 = (_i64Add(($3298|0),($3301|0),($3293|0),($3294|0))|0); + $3303 = tempRet0; + $3304 = $3295; + $3305 = $3304; + HEAP32[$3305>>2] = $3302; + $3306 = (($3304) + 4)|0; + $3307 = $3306; + HEAP32[$3307>>2] = $3303; + $3308 = $c; + $3309 = $3308; + $3310 = HEAP32[$3309>>2]|0; + $3311 = (($3308) + 4)|0; + $3312 = $3311; + $3313 = HEAP32[$3312>>2]|0; + $3314 = (_Sum0_1423($3310,$3313)|0); + $3315 = tempRet0; + $3316 = $c; + $3317 = $3316; + $3318 = HEAP32[$3317>>2]|0; + $3319 = (($3316) + 4)|0; + $3320 = $3319; + $3321 = HEAP32[$3320>>2]|0; + $3322 = $d; + $3323 = $3322; + $3324 = HEAP32[$3323>>2]|0; + $3325 = (($3322) + 4)|0; + $3326 = $3325; + $3327 = HEAP32[$3326>>2]|0; + $3328 = $e; + $3329 = $3328; + $3330 = HEAP32[$3329>>2]|0; + $3331 = (($3328) + 4)|0; + $3332 = $3331; + $3333 = HEAP32[$3332>>2]|0; + $3334 = (_Maj_1424($3318,$3321,$3324,$3327,$3330,$3333)|0); + $3335 = tempRet0; + $3336 = (_i64Add(($3314|0),($3315|0),($3334|0),($3335|0))|0); + $3337 = tempRet0; + $3338 = $t2; + $3339 = $3338; + HEAP32[$3339>>2] = $3336; + $3340 = (($3338) + 4)|0; + $3341 = $3340; + HEAP32[$3341>>2] = $3337; + $3342 = $t1; + $3343 = $3342; + $3344 = HEAP32[$3343>>2]|0; + $3345 = (($3342) + 4)|0; + $3346 = $3345; + $3347 = HEAP32[$3346>>2]|0; + $3348 = $f; + $3349 = $3348; + $3350 = HEAP32[$3349>>2]|0; + $3351 = (($3348) + 4)|0; + $3352 = $3351; + $3353 = HEAP32[$3352>>2]|0; + $3354 = (_i64Add(($3350|0),($3353|0),($3344|0),($3347|0))|0); + $3355 = tempRet0; + $3356 = $f; + $3357 = $3356; + HEAP32[$3357>>2] = $3354; + $3358 = (($3356) + 4)|0; + $3359 = $3358; + HEAP32[$3359>>2] = $3355; + $3360 = $t1; + $3361 = $3360; + $3362 = HEAP32[$3361>>2]|0; + $3363 = (($3360) + 4)|0; + $3364 = $3363; + $3365 = HEAP32[$3364>>2]|0; + $3366 = $t2; + $3367 = $3366; + $3368 = HEAP32[$3367>>2]|0; + $3369 = (($3366) + 4)|0; + $3370 = $3369; + $3371 = HEAP32[$3370>>2]|0; + $3372 = (_i64Add(($3362|0),($3365|0),($3368|0),($3371|0))|0); + $3373 = tempRet0; + $3374 = $b; + $3375 = $3374; + HEAP32[$3375>>2] = $3372; + $3376 = (($3374) + 4)|0; + $3377 = $3376; + HEAP32[$3377>>2] = $3373; + $3378 = $a; + $3379 = $3378; + $3380 = HEAP32[$3379>>2]|0; + $3381 = (($3378) + 4)|0; + $3382 = $3381; + $3383 = HEAP32[$3382>>2]|0; + $3384 = $f; + $3385 = $3384; + $3386 = HEAP32[$3385>>2]|0; + $3387 = (($3384) + 4)|0; + $3388 = $3387; + $3389 = HEAP32[$3388>>2]|0; + $3390 = (_Sum1_1422($3386,$3389)|0); + $3391 = tempRet0; + $3392 = (_i64Add(($3380|0),($3383|0),($3390|0),($3391|0))|0); + $3393 = tempRet0; + $3394 = $f; + $3395 = $3394; + $3396 = HEAP32[$3395>>2]|0; + $3397 = (($3394) + 4)|0; + $3398 = $3397; + $3399 = HEAP32[$3398>>2]|0; + $3400 = $g; + $3401 = $3400; + $3402 = HEAP32[$3401>>2]|0; + $3403 = (($3400) + 4)|0; + $3404 = $3403; + $3405 = HEAP32[$3404>>2]|0; + $3406 = $h; + $3407 = $3406; + $3408 = HEAP32[$3407>>2]|0; + $3409 = (($3406) + 4)|0; + $3410 = $3409; + $3411 = HEAP32[$3410>>2]|0; + $3412 = (_Ch($3396,$3399,$3402,$3405,$3408,$3411)|0); + $3413 = tempRet0; + $3414 = (_i64Add(($3392|0),($3393|0),($3412|0),($3413|0))|0); + $3415 = tempRet0; + $3416 = $t; + $3417 = (($3416) + 15)|0; + $3418 = (80 + ($3417<<3)|0); + $3419 = $3418; + $3420 = $3419; + $3421 = HEAP32[$3420>>2]|0; + $3422 = (($3419) + 4)|0; + $3423 = $3422; + $3424 = HEAP32[$3423>>2]|0; + $3425 = (_i64Add(($3414|0),($3415|0),($3421|0),($3424|0))|0); + $3426 = tempRet0; + $3427 = ((($w)) + 120|0); + $3428 = $3427; + $3429 = $3428; + $3430 = HEAP32[$3429>>2]|0; + $3431 = (($3428) + 4)|0; + $3432 = $3431; + $3433 = HEAP32[$3432>>2]|0; + $3434 = (_i64Add(($3425|0),($3426|0),($3430|0),($3433|0))|0); + $3435 = tempRet0; + $3436 = $t1; + $3437 = $3436; + HEAP32[$3437>>2] = $3434; + $3438 = (($3436) + 4)|0; + $3439 = $3438; + HEAP32[$3439>>2] = $3435; + $3440 = ((($w)) + 104|0); + $3441 = $3440; + $3442 = $3441; + $3443 = HEAP32[$3442>>2]|0; + $3444 = (($3441) + 4)|0; + $3445 = $3444; + $3446 = HEAP32[$3445>>2]|0; + $3447 = (_ROTR($3443,$3446,19,0)|0); + $3448 = tempRet0; + $3449 = ((($w)) + 104|0); + $3450 = $3449; + $3451 = $3450; + $3452 = HEAP32[$3451>>2]|0; + $3453 = (($3450) + 4)|0; + $3454 = $3453; + $3455 = HEAP32[$3454>>2]|0; + $3456 = (_ROTR($3452,$3455,61,0)|0); + $3457 = tempRet0; + $3458 = $3447 ^ $3456; + $3459 = $3448 ^ $3457; + $3460 = ((($w)) + 104|0); + $3461 = $3460; + $3462 = $3461; + $3463 = HEAP32[$3462>>2]|0; + $3464 = (($3461) + 4)|0; + $3465 = $3464; + $3466 = HEAP32[$3465>>2]|0; + $3467 = (_bitshift64Lshr(($3463|0),($3466|0),6)|0); + $3468 = tempRet0; + $3469 = $3458 ^ $3467; + $3470 = $3459 ^ $3468; + $3471 = ((($w)) + 64|0); + $3472 = $3471; + $3473 = $3472; + $3474 = HEAP32[$3473>>2]|0; + $3475 = (($3472) + 4)|0; + $3476 = $3475; + $3477 = HEAP32[$3476>>2]|0; + $3478 = (_i64Add(($3469|0),($3470|0),($3474|0),($3477|0))|0); + $3479 = tempRet0; + $3480 = $w; + $3481 = $3480; + $3482 = HEAP32[$3481>>2]|0; + $3483 = (($3480) + 4)|0; + $3484 = $3483; + $3485 = HEAP32[$3484>>2]|0; + $3486 = (_ROTR($3482,$3485,1,0)|0); + $3487 = tempRet0; + $3488 = $w; + $3489 = $3488; + $3490 = HEAP32[$3489>>2]|0; + $3491 = (($3488) + 4)|0; + $3492 = $3491; + $3493 = HEAP32[$3492>>2]|0; + $3494 = (_ROTR($3490,$3493,8,0)|0); + $3495 = tempRet0; + $3496 = $3486 ^ $3494; + $3497 = $3487 ^ $3495; + $3498 = $w; + $3499 = $3498; + $3500 = HEAP32[$3499>>2]|0; + $3501 = (($3498) + 4)|0; + $3502 = $3501; + $3503 = HEAP32[$3502>>2]|0; + $3504 = (_bitshift64Lshr(($3500|0),($3503|0),7)|0); + $3505 = tempRet0; + $3506 = $3496 ^ $3504; + $3507 = $3497 ^ $3505; + $3508 = (_i64Add(($3478|0),($3479|0),($3506|0),($3507|0))|0); + $3509 = tempRet0; + $3510 = ((($w)) + 120|0); + $3511 = $3510; + $3512 = $3511; + $3513 = HEAP32[$3512>>2]|0; + $3514 = (($3511) + 4)|0; + $3515 = $3514; + $3516 = HEAP32[$3515>>2]|0; + $3517 = (_i64Add(($3513|0),($3516|0),($3508|0),($3509|0))|0); + $3518 = tempRet0; + $3519 = $3510; + $3520 = $3519; + HEAP32[$3520>>2] = $3517; + $3521 = (($3519) + 4)|0; + $3522 = $3521; + HEAP32[$3522>>2] = $3518; + $3523 = $b; + $3524 = $3523; + $3525 = HEAP32[$3524>>2]|0; + $3526 = (($3523) + 4)|0; + $3527 = $3526; + $3528 = HEAP32[$3527>>2]|0; + $3529 = (_Sum0_1423($3525,$3528)|0); + $3530 = tempRet0; + $3531 = $b; + $3532 = $3531; + $3533 = HEAP32[$3532>>2]|0; + $3534 = (($3531) + 4)|0; + $3535 = $3534; + $3536 = HEAP32[$3535>>2]|0; + $3537 = $c; + $3538 = $3537; + $3539 = HEAP32[$3538>>2]|0; + $3540 = (($3537) + 4)|0; + $3541 = $3540; + $3542 = HEAP32[$3541>>2]|0; + $3543 = $d; + $3544 = $3543; + $3545 = HEAP32[$3544>>2]|0; + $3546 = (($3543) + 4)|0; + $3547 = $3546; + $3548 = HEAP32[$3547>>2]|0; + $3549 = (_Maj_1424($3533,$3536,$3539,$3542,$3545,$3548)|0); + $3550 = tempRet0; + $3551 = (_i64Add(($3529|0),($3530|0),($3549|0),($3550|0))|0); + $3552 = tempRet0; + $3553 = $t2; + $3554 = $3553; + HEAP32[$3554>>2] = $3551; + $3555 = (($3553) + 4)|0; + $3556 = $3555; + HEAP32[$3556>>2] = $3552; + $3557 = $t1; + $3558 = $3557; + $3559 = HEAP32[$3558>>2]|0; + $3560 = (($3557) + 4)|0; + $3561 = $3560; + $3562 = HEAP32[$3561>>2]|0; + $3563 = $e; + $3564 = $3563; + $3565 = HEAP32[$3564>>2]|0; + $3566 = (($3563) + 4)|0; + $3567 = $3566; + $3568 = HEAP32[$3567>>2]|0; + $3569 = (_i64Add(($3565|0),($3568|0),($3559|0),($3562|0))|0); + $3570 = tempRet0; + $3571 = $e; + $3572 = $3571; + HEAP32[$3572>>2] = $3569; + $3573 = (($3571) + 4)|0; + $3574 = $3573; + HEAP32[$3574>>2] = $3570; + $3575 = $t1; + $3576 = $3575; + $3577 = HEAP32[$3576>>2]|0; + $3578 = (($3575) + 4)|0; + $3579 = $3578; + $3580 = HEAP32[$3579>>2]|0; + $3581 = $t2; + $3582 = $3581; + $3583 = HEAP32[$3582>>2]|0; + $3584 = (($3581) + 4)|0; + $3585 = $3584; + $3586 = HEAP32[$3585>>2]|0; + $3587 = (_i64Add(($3577|0),($3580|0),($3583|0),($3586|0))|0); + $3588 = tempRet0; + $3589 = $a; + $3590 = $3589; + HEAP32[$3590>>2] = $3587; + $3591 = (($3589) + 4)|0; + $3592 = $3591; + HEAP32[$3592>>2] = $3588; + $3593 = $t; + $3594 = (($3593) + 16)|0; + $t = $3594; + } + while(1) { + $3595 = $t; + $3596 = ($3595|0)<(80); + if (!($3596)) { + break; + } + $3597 = $h; + $3598 = $3597; + $3599 = HEAP32[$3598>>2]|0; + $3600 = (($3597) + 4)|0; + $3601 = $3600; + $3602 = HEAP32[$3601>>2]|0; + $3603 = $e; + $3604 = $3603; + $3605 = HEAP32[$3604>>2]|0; + $3606 = (($3603) + 4)|0; + $3607 = $3606; + $3608 = HEAP32[$3607>>2]|0; + $3609 = (_Sum1_1422($3605,$3608)|0); + $3610 = tempRet0; + $3611 = (_i64Add(($3599|0),($3602|0),($3609|0),($3610|0))|0); + $3612 = tempRet0; + $3613 = $e; + $3614 = $3613; + $3615 = HEAP32[$3614>>2]|0; + $3616 = (($3613) + 4)|0; + $3617 = $3616; + $3618 = HEAP32[$3617>>2]|0; + $3619 = $f; + $3620 = $3619; + $3621 = HEAP32[$3620>>2]|0; + $3622 = (($3619) + 4)|0; + $3623 = $3622; + $3624 = HEAP32[$3623>>2]|0; + $3625 = $g; + $3626 = $3625; + $3627 = HEAP32[$3626>>2]|0; + $3628 = (($3625) + 4)|0; + $3629 = $3628; + $3630 = HEAP32[$3629>>2]|0; + $3631 = (_Ch($3615,$3618,$3621,$3624,$3627,$3630)|0); + $3632 = tempRet0; + $3633 = (_i64Add(($3611|0),($3612|0),($3631|0),($3632|0))|0); + $3634 = tempRet0; + $3635 = $t; + $3636 = (80 + ($3635<<3)|0); + $3637 = $3636; + $3638 = $3637; + $3639 = HEAP32[$3638>>2]|0; + $3640 = (($3637) + 4)|0; + $3641 = $3640; + $3642 = HEAP32[$3641>>2]|0; + $3643 = (_i64Add(($3633|0),($3634|0),($3639|0),($3642|0))|0); + $3644 = tempRet0; + $3645 = $w; + $3646 = $3645; + $3647 = HEAP32[$3646>>2]|0; + $3648 = (($3645) + 4)|0; + $3649 = $3648; + $3650 = HEAP32[$3649>>2]|0; + $3651 = (_i64Add(($3643|0),($3644|0),($3647|0),($3650|0))|0); + $3652 = tempRet0; + $3653 = $t11; + $3654 = $3653; + HEAP32[$3654>>2] = $3651; + $3655 = (($3653) + 4)|0; + $3656 = $3655; + HEAP32[$3656>>2] = $3652; + $3657 = $a; + $3658 = $3657; + $3659 = HEAP32[$3658>>2]|0; + $3660 = (($3657) + 4)|0; + $3661 = $3660; + $3662 = HEAP32[$3661>>2]|0; + $3663 = (_Sum0_1423($3659,$3662)|0); + $3664 = tempRet0; + $3665 = $a; + $3666 = $3665; + $3667 = HEAP32[$3666>>2]|0; + $3668 = (($3665) + 4)|0; + $3669 = $3668; + $3670 = HEAP32[$3669>>2]|0; + $3671 = $b; + $3672 = $3671; + $3673 = HEAP32[$3672>>2]|0; + $3674 = (($3671) + 4)|0; + $3675 = $3674; + $3676 = HEAP32[$3675>>2]|0; + $3677 = $c; + $3678 = $3677; + $3679 = HEAP32[$3678>>2]|0; + $3680 = (($3677) + 4)|0; + $3681 = $3680; + $3682 = HEAP32[$3681>>2]|0; + $3683 = (_Maj_1424($3667,$3670,$3673,$3676,$3679,$3682)|0); + $3684 = tempRet0; + $3685 = (_i64Add(($3663|0),($3664|0),($3683|0),($3684|0))|0); + $3686 = tempRet0; + $3687 = $t22; + $3688 = $3687; + HEAP32[$3688>>2] = $3685; + $3689 = (($3687) + 4)|0; + $3690 = $3689; + HEAP32[$3690>>2] = $3686; + $3691 = $t11; + $3692 = $3691; + $3693 = HEAP32[$3692>>2]|0; + $3694 = (($3691) + 4)|0; + $3695 = $3694; + $3696 = HEAP32[$3695>>2]|0; + $3697 = $d; + $3698 = $3697; + $3699 = HEAP32[$3698>>2]|0; + $3700 = (($3697) + 4)|0; + $3701 = $3700; + $3702 = HEAP32[$3701>>2]|0; + $3703 = (_i64Add(($3699|0),($3702|0),($3693|0),($3696|0))|0); + $3704 = tempRet0; + $3705 = $d; + $3706 = $3705; + HEAP32[$3706>>2] = $3703; + $3707 = (($3705) + 4)|0; + $3708 = $3707; + HEAP32[$3708>>2] = $3704; + $3709 = $t11; + $3710 = $3709; + $3711 = HEAP32[$3710>>2]|0; + $3712 = (($3709) + 4)|0; + $3713 = $3712; + $3714 = HEAP32[$3713>>2]|0; + $3715 = $t22; + $3716 = $3715; + $3717 = HEAP32[$3716>>2]|0; + $3718 = (($3715) + 4)|0; + $3719 = $3718; + $3720 = HEAP32[$3719>>2]|0; + $3721 = (_i64Add(($3711|0),($3714|0),($3717|0),($3720|0))|0); + $3722 = tempRet0; + $3723 = $h; + $3724 = $3723; + HEAP32[$3724>>2] = $3721; + $3725 = (($3723) + 4)|0; + $3726 = $3725; + HEAP32[$3726>>2] = $3722; + $3727 = $g; + $3728 = $3727; + $3729 = HEAP32[$3728>>2]|0; + $3730 = (($3727) + 4)|0; + $3731 = $3730; + $3732 = HEAP32[$3731>>2]|0; + $3733 = $d; + $3734 = $3733; + $3735 = HEAP32[$3734>>2]|0; + $3736 = (($3733) + 4)|0; + $3737 = $3736; + $3738 = HEAP32[$3737>>2]|0; + $3739 = (_Sum1_1422($3735,$3738)|0); + $3740 = tempRet0; + $3741 = (_i64Add(($3729|0),($3732|0),($3739|0),($3740|0))|0); + $3742 = tempRet0; + $3743 = $d; + $3744 = $3743; + $3745 = HEAP32[$3744>>2]|0; + $3746 = (($3743) + 4)|0; + $3747 = $3746; + $3748 = HEAP32[$3747>>2]|0; + $3749 = $e; + $3750 = $3749; + $3751 = HEAP32[$3750>>2]|0; + $3752 = (($3749) + 4)|0; + $3753 = $3752; + $3754 = HEAP32[$3753>>2]|0; + $3755 = $f; + $3756 = $3755; + $3757 = HEAP32[$3756>>2]|0; + $3758 = (($3755) + 4)|0; + $3759 = $3758; + $3760 = HEAP32[$3759>>2]|0; + $3761 = (_Ch($3745,$3748,$3751,$3754,$3757,$3760)|0); + $3762 = tempRet0; + $3763 = (_i64Add(($3741|0),($3742|0),($3761|0),($3762|0))|0); + $3764 = tempRet0; + $3765 = $t; + $3766 = (($3765) + 1)|0; + $3767 = (80 + ($3766<<3)|0); + $3768 = $3767; + $3769 = $3768; + $3770 = HEAP32[$3769>>2]|0; + $3771 = (($3768) + 4)|0; + $3772 = $3771; + $3773 = HEAP32[$3772>>2]|0; + $3774 = (_i64Add(($3763|0),($3764|0),($3770|0),($3773|0))|0); + $3775 = tempRet0; + $3776 = ((($w)) + 8|0); + $3777 = $3776; + $3778 = $3777; + $3779 = HEAP32[$3778>>2]|0; + $3780 = (($3777) + 4)|0; + $3781 = $3780; + $3782 = HEAP32[$3781>>2]|0; + $3783 = (_i64Add(($3774|0),($3775|0),($3779|0),($3782|0))|0); + $3784 = tempRet0; + $3785 = $t11; + $3786 = $3785; + HEAP32[$3786>>2] = $3783; + $3787 = (($3785) + 4)|0; + $3788 = $3787; + HEAP32[$3788>>2] = $3784; + $3789 = $h; + $3790 = $3789; + $3791 = HEAP32[$3790>>2]|0; + $3792 = (($3789) + 4)|0; + $3793 = $3792; + $3794 = HEAP32[$3793>>2]|0; + $3795 = (_Sum0_1423($3791,$3794)|0); + $3796 = tempRet0; + $3797 = $h; + $3798 = $3797; + $3799 = HEAP32[$3798>>2]|0; + $3800 = (($3797) + 4)|0; + $3801 = $3800; + $3802 = HEAP32[$3801>>2]|0; + $3803 = $a; + $3804 = $3803; + $3805 = HEAP32[$3804>>2]|0; + $3806 = (($3803) + 4)|0; + $3807 = $3806; + $3808 = HEAP32[$3807>>2]|0; + $3809 = $b; + $3810 = $3809; + $3811 = HEAP32[$3810>>2]|0; + $3812 = (($3809) + 4)|0; + $3813 = $3812; + $3814 = HEAP32[$3813>>2]|0; + $3815 = (_Maj_1424($3799,$3802,$3805,$3808,$3811,$3814)|0); + $3816 = tempRet0; + $3817 = (_i64Add(($3795|0),($3796|0),($3815|0),($3816|0))|0); + $3818 = tempRet0; + $3819 = $t22; + $3820 = $3819; + HEAP32[$3820>>2] = $3817; + $3821 = (($3819) + 4)|0; + $3822 = $3821; + HEAP32[$3822>>2] = $3818; + $3823 = $t11; + $3824 = $3823; + $3825 = HEAP32[$3824>>2]|0; + $3826 = (($3823) + 4)|0; + $3827 = $3826; + $3828 = HEAP32[$3827>>2]|0; + $3829 = $c; + $3830 = $3829; + $3831 = HEAP32[$3830>>2]|0; + $3832 = (($3829) + 4)|0; + $3833 = $3832; + $3834 = HEAP32[$3833>>2]|0; + $3835 = (_i64Add(($3831|0),($3834|0),($3825|0),($3828|0))|0); + $3836 = tempRet0; + $3837 = $c; + $3838 = $3837; + HEAP32[$3838>>2] = $3835; + $3839 = (($3837) + 4)|0; + $3840 = $3839; + HEAP32[$3840>>2] = $3836; + $3841 = $t11; + $3842 = $3841; + $3843 = HEAP32[$3842>>2]|0; + $3844 = (($3841) + 4)|0; + $3845 = $3844; + $3846 = HEAP32[$3845>>2]|0; + $3847 = $t22; + $3848 = $3847; + $3849 = HEAP32[$3848>>2]|0; + $3850 = (($3847) + 4)|0; + $3851 = $3850; + $3852 = HEAP32[$3851>>2]|0; + $3853 = (_i64Add(($3843|0),($3846|0),($3849|0),($3852|0))|0); + $3854 = tempRet0; + $3855 = $g; + $3856 = $3855; + HEAP32[$3856>>2] = $3853; + $3857 = (($3855) + 4)|0; + $3858 = $3857; + HEAP32[$3858>>2] = $3854; + $3859 = $f; + $3860 = $3859; + $3861 = HEAP32[$3860>>2]|0; + $3862 = (($3859) + 4)|0; + $3863 = $3862; + $3864 = HEAP32[$3863>>2]|0; + $3865 = $c; + $3866 = $3865; + $3867 = HEAP32[$3866>>2]|0; + $3868 = (($3865) + 4)|0; + $3869 = $3868; + $3870 = HEAP32[$3869>>2]|0; + $3871 = (_Sum1_1422($3867,$3870)|0); + $3872 = tempRet0; + $3873 = (_i64Add(($3861|0),($3864|0),($3871|0),($3872|0))|0); + $3874 = tempRet0; + $3875 = $c; + $3876 = $3875; + $3877 = HEAP32[$3876>>2]|0; + $3878 = (($3875) + 4)|0; + $3879 = $3878; + $3880 = HEAP32[$3879>>2]|0; + $3881 = $d; + $3882 = $3881; + $3883 = HEAP32[$3882>>2]|0; + $3884 = (($3881) + 4)|0; + $3885 = $3884; + $3886 = HEAP32[$3885>>2]|0; + $3887 = $e; + $3888 = $3887; + $3889 = HEAP32[$3888>>2]|0; + $3890 = (($3887) + 4)|0; + $3891 = $3890; + $3892 = HEAP32[$3891>>2]|0; + $3893 = (_Ch($3877,$3880,$3883,$3886,$3889,$3892)|0); + $3894 = tempRet0; + $3895 = (_i64Add(($3873|0),($3874|0),($3893|0),($3894|0))|0); + $3896 = tempRet0; + $3897 = $t; + $3898 = (($3897) + 2)|0; + $3899 = (80 + ($3898<<3)|0); + $3900 = $3899; + $3901 = $3900; + $3902 = HEAP32[$3901>>2]|0; + $3903 = (($3900) + 4)|0; + $3904 = $3903; + $3905 = HEAP32[$3904>>2]|0; + $3906 = (_i64Add(($3895|0),($3896|0),($3902|0),($3905|0))|0); + $3907 = tempRet0; + $3908 = ((($w)) + 16|0); + $3909 = $3908; + $3910 = $3909; + $3911 = HEAP32[$3910>>2]|0; + $3912 = (($3909) + 4)|0; + $3913 = $3912; + $3914 = HEAP32[$3913>>2]|0; + $3915 = (_i64Add(($3906|0),($3907|0),($3911|0),($3914|0))|0); + $3916 = tempRet0; + $3917 = $t11; + $3918 = $3917; + HEAP32[$3918>>2] = $3915; + $3919 = (($3917) + 4)|0; + $3920 = $3919; + HEAP32[$3920>>2] = $3916; + $3921 = $g; + $3922 = $3921; + $3923 = HEAP32[$3922>>2]|0; + $3924 = (($3921) + 4)|0; + $3925 = $3924; + $3926 = HEAP32[$3925>>2]|0; + $3927 = (_Sum0_1423($3923,$3926)|0); + $3928 = tempRet0; + $3929 = $g; + $3930 = $3929; + $3931 = HEAP32[$3930>>2]|0; + $3932 = (($3929) + 4)|0; + $3933 = $3932; + $3934 = HEAP32[$3933>>2]|0; + $3935 = $h; + $3936 = $3935; + $3937 = HEAP32[$3936>>2]|0; + $3938 = (($3935) + 4)|0; + $3939 = $3938; + $3940 = HEAP32[$3939>>2]|0; + $3941 = $a; + $3942 = $3941; + $3943 = HEAP32[$3942>>2]|0; + $3944 = (($3941) + 4)|0; + $3945 = $3944; + $3946 = HEAP32[$3945>>2]|0; + $3947 = (_Maj_1424($3931,$3934,$3937,$3940,$3943,$3946)|0); + $3948 = tempRet0; + $3949 = (_i64Add(($3927|0),($3928|0),($3947|0),($3948|0))|0); + $3950 = tempRet0; + $3951 = $t22; + $3952 = $3951; + HEAP32[$3952>>2] = $3949; + $3953 = (($3951) + 4)|0; + $3954 = $3953; + HEAP32[$3954>>2] = $3950; + $3955 = $t11; + $3956 = $3955; + $3957 = HEAP32[$3956>>2]|0; + $3958 = (($3955) + 4)|0; + $3959 = $3958; + $3960 = HEAP32[$3959>>2]|0; + $3961 = $b; + $3962 = $3961; + $3963 = HEAP32[$3962>>2]|0; + $3964 = (($3961) + 4)|0; + $3965 = $3964; + $3966 = HEAP32[$3965>>2]|0; + $3967 = (_i64Add(($3963|0),($3966|0),($3957|0),($3960|0))|0); + $3968 = tempRet0; + $3969 = $b; + $3970 = $3969; + HEAP32[$3970>>2] = $3967; + $3971 = (($3969) + 4)|0; + $3972 = $3971; + HEAP32[$3972>>2] = $3968; + $3973 = $t11; + $3974 = $3973; + $3975 = HEAP32[$3974>>2]|0; + $3976 = (($3973) + 4)|0; + $3977 = $3976; + $3978 = HEAP32[$3977>>2]|0; + $3979 = $t22; + $3980 = $3979; + $3981 = HEAP32[$3980>>2]|0; + $3982 = (($3979) + 4)|0; + $3983 = $3982; + $3984 = HEAP32[$3983>>2]|0; + $3985 = (_i64Add(($3975|0),($3978|0),($3981|0),($3984|0))|0); + $3986 = tempRet0; + $3987 = $f; + $3988 = $3987; + HEAP32[$3988>>2] = $3985; + $3989 = (($3987) + 4)|0; + $3990 = $3989; + HEAP32[$3990>>2] = $3986; + $3991 = $e; + $3992 = $3991; + $3993 = HEAP32[$3992>>2]|0; + $3994 = (($3991) + 4)|0; + $3995 = $3994; + $3996 = HEAP32[$3995>>2]|0; + $3997 = $b; + $3998 = $3997; + $3999 = HEAP32[$3998>>2]|0; + $4000 = (($3997) + 4)|0; + $4001 = $4000; + $4002 = HEAP32[$4001>>2]|0; + $4003 = (_Sum1_1422($3999,$4002)|0); + $4004 = tempRet0; + $4005 = (_i64Add(($3993|0),($3996|0),($4003|0),($4004|0))|0); + $4006 = tempRet0; + $4007 = $b; + $4008 = $4007; + $4009 = HEAP32[$4008>>2]|0; + $4010 = (($4007) + 4)|0; + $4011 = $4010; + $4012 = HEAP32[$4011>>2]|0; + $4013 = $c; + $4014 = $4013; + $4015 = HEAP32[$4014>>2]|0; + $4016 = (($4013) + 4)|0; + $4017 = $4016; + $4018 = HEAP32[$4017>>2]|0; + $4019 = $d; + $4020 = $4019; + $4021 = HEAP32[$4020>>2]|0; + $4022 = (($4019) + 4)|0; + $4023 = $4022; + $4024 = HEAP32[$4023>>2]|0; + $4025 = (_Ch($4009,$4012,$4015,$4018,$4021,$4024)|0); + $4026 = tempRet0; + $4027 = (_i64Add(($4005|0),($4006|0),($4025|0),($4026|0))|0); + $4028 = tempRet0; + $4029 = $t; + $4030 = (($4029) + 3)|0; + $4031 = (80 + ($4030<<3)|0); + $4032 = $4031; + $4033 = $4032; + $4034 = HEAP32[$4033>>2]|0; + $4035 = (($4032) + 4)|0; + $4036 = $4035; + $4037 = HEAP32[$4036>>2]|0; + $4038 = (_i64Add(($4027|0),($4028|0),($4034|0),($4037|0))|0); + $4039 = tempRet0; + $4040 = ((($w)) + 24|0); + $4041 = $4040; + $4042 = $4041; + $4043 = HEAP32[$4042>>2]|0; + $4044 = (($4041) + 4)|0; + $4045 = $4044; + $4046 = HEAP32[$4045>>2]|0; + $4047 = (_i64Add(($4038|0),($4039|0),($4043|0),($4046|0))|0); + $4048 = tempRet0; + $4049 = $t11; + $4050 = $4049; + HEAP32[$4050>>2] = $4047; + $4051 = (($4049) + 4)|0; + $4052 = $4051; + HEAP32[$4052>>2] = $4048; + $4053 = $f; + $4054 = $4053; + $4055 = HEAP32[$4054>>2]|0; + $4056 = (($4053) + 4)|0; + $4057 = $4056; + $4058 = HEAP32[$4057>>2]|0; + $4059 = (_Sum0_1423($4055,$4058)|0); + $4060 = tempRet0; + $4061 = $f; + $4062 = $4061; + $4063 = HEAP32[$4062>>2]|0; + $4064 = (($4061) + 4)|0; + $4065 = $4064; + $4066 = HEAP32[$4065>>2]|0; + $4067 = $g; + $4068 = $4067; + $4069 = HEAP32[$4068>>2]|0; + $4070 = (($4067) + 4)|0; + $4071 = $4070; + $4072 = HEAP32[$4071>>2]|0; + $4073 = $h; + $4074 = $4073; + $4075 = HEAP32[$4074>>2]|0; + $4076 = (($4073) + 4)|0; + $4077 = $4076; + $4078 = HEAP32[$4077>>2]|0; + $4079 = (_Maj_1424($4063,$4066,$4069,$4072,$4075,$4078)|0); + $4080 = tempRet0; + $4081 = (_i64Add(($4059|0),($4060|0),($4079|0),($4080|0))|0); + $4082 = tempRet0; + $4083 = $t22; + $4084 = $4083; + HEAP32[$4084>>2] = $4081; + $4085 = (($4083) + 4)|0; + $4086 = $4085; + HEAP32[$4086>>2] = $4082; + $4087 = $t11; + $4088 = $4087; + $4089 = HEAP32[$4088>>2]|0; + $4090 = (($4087) + 4)|0; + $4091 = $4090; + $4092 = HEAP32[$4091>>2]|0; + $4093 = $a; + $4094 = $4093; + $4095 = HEAP32[$4094>>2]|0; + $4096 = (($4093) + 4)|0; + $4097 = $4096; + $4098 = HEAP32[$4097>>2]|0; + $4099 = (_i64Add(($4095|0),($4098|0),($4089|0),($4092|0))|0); + $4100 = tempRet0; + $4101 = $a; + $4102 = $4101; + HEAP32[$4102>>2] = $4099; + $4103 = (($4101) + 4)|0; + $4104 = $4103; + HEAP32[$4104>>2] = $4100; + $4105 = $t11; + $4106 = $4105; + $4107 = HEAP32[$4106>>2]|0; + $4108 = (($4105) + 4)|0; + $4109 = $4108; + $4110 = HEAP32[$4109>>2]|0; + $4111 = $t22; + $4112 = $4111; + $4113 = HEAP32[$4112>>2]|0; + $4114 = (($4111) + 4)|0; + $4115 = $4114; + $4116 = HEAP32[$4115>>2]|0; + $4117 = (_i64Add(($4107|0),($4110|0),($4113|0),($4116|0))|0); + $4118 = tempRet0; + $4119 = $e; + $4120 = $4119; + HEAP32[$4120>>2] = $4117; + $4121 = (($4119) + 4)|0; + $4122 = $4121; + HEAP32[$4122>>2] = $4118; + $4123 = $d; + $4124 = $4123; + $4125 = HEAP32[$4124>>2]|0; + $4126 = (($4123) + 4)|0; + $4127 = $4126; + $4128 = HEAP32[$4127>>2]|0; + $4129 = $a; + $4130 = $4129; + $4131 = HEAP32[$4130>>2]|0; + $4132 = (($4129) + 4)|0; + $4133 = $4132; + $4134 = HEAP32[$4133>>2]|0; + $4135 = (_Sum1_1422($4131,$4134)|0); + $4136 = tempRet0; + $4137 = (_i64Add(($4125|0),($4128|0),($4135|0),($4136|0))|0); + $4138 = tempRet0; + $4139 = $a; + $4140 = $4139; + $4141 = HEAP32[$4140>>2]|0; + $4142 = (($4139) + 4)|0; + $4143 = $4142; + $4144 = HEAP32[$4143>>2]|0; + $4145 = $b; + $4146 = $4145; + $4147 = HEAP32[$4146>>2]|0; + $4148 = (($4145) + 4)|0; + $4149 = $4148; + $4150 = HEAP32[$4149>>2]|0; + $4151 = $c; + $4152 = $4151; + $4153 = HEAP32[$4152>>2]|0; + $4154 = (($4151) + 4)|0; + $4155 = $4154; + $4156 = HEAP32[$4155>>2]|0; + $4157 = (_Ch($4141,$4144,$4147,$4150,$4153,$4156)|0); + $4158 = tempRet0; + $4159 = (_i64Add(($4137|0),($4138|0),($4157|0),($4158|0))|0); + $4160 = tempRet0; + $4161 = $t; + $4162 = (($4161) + 4)|0; + $4163 = (80 + ($4162<<3)|0); + $4164 = $4163; + $4165 = $4164; + $4166 = HEAP32[$4165>>2]|0; + $4167 = (($4164) + 4)|0; + $4168 = $4167; + $4169 = HEAP32[$4168>>2]|0; + $4170 = (_i64Add(($4159|0),($4160|0),($4166|0),($4169|0))|0); + $4171 = tempRet0; + $4172 = ((($w)) + 32|0); + $4173 = $4172; + $4174 = $4173; + $4175 = HEAP32[$4174>>2]|0; + $4176 = (($4173) + 4)|0; + $4177 = $4176; + $4178 = HEAP32[$4177>>2]|0; + $4179 = (_i64Add(($4170|0),($4171|0),($4175|0),($4178|0))|0); + $4180 = tempRet0; + $4181 = $t11; + $4182 = $4181; + HEAP32[$4182>>2] = $4179; + $4183 = (($4181) + 4)|0; + $4184 = $4183; + HEAP32[$4184>>2] = $4180; + $4185 = $e; + $4186 = $4185; + $4187 = HEAP32[$4186>>2]|0; + $4188 = (($4185) + 4)|0; + $4189 = $4188; + $4190 = HEAP32[$4189>>2]|0; + $4191 = (_Sum0_1423($4187,$4190)|0); + $4192 = tempRet0; + $4193 = $e; + $4194 = $4193; + $4195 = HEAP32[$4194>>2]|0; + $4196 = (($4193) + 4)|0; + $4197 = $4196; + $4198 = HEAP32[$4197>>2]|0; + $4199 = $f; + $4200 = $4199; + $4201 = HEAP32[$4200>>2]|0; + $4202 = (($4199) + 4)|0; + $4203 = $4202; + $4204 = HEAP32[$4203>>2]|0; + $4205 = $g; + $4206 = $4205; + $4207 = HEAP32[$4206>>2]|0; + $4208 = (($4205) + 4)|0; + $4209 = $4208; + $4210 = HEAP32[$4209>>2]|0; + $4211 = (_Maj_1424($4195,$4198,$4201,$4204,$4207,$4210)|0); + $4212 = tempRet0; + $4213 = (_i64Add(($4191|0),($4192|0),($4211|0),($4212|0))|0); + $4214 = tempRet0; + $4215 = $t22; + $4216 = $4215; + HEAP32[$4216>>2] = $4213; + $4217 = (($4215) + 4)|0; + $4218 = $4217; + HEAP32[$4218>>2] = $4214; + $4219 = $t11; + $4220 = $4219; + $4221 = HEAP32[$4220>>2]|0; + $4222 = (($4219) + 4)|0; + $4223 = $4222; + $4224 = HEAP32[$4223>>2]|0; + $4225 = $h; + $4226 = $4225; + $4227 = HEAP32[$4226>>2]|0; + $4228 = (($4225) + 4)|0; + $4229 = $4228; + $4230 = HEAP32[$4229>>2]|0; + $4231 = (_i64Add(($4227|0),($4230|0),($4221|0),($4224|0))|0); + $4232 = tempRet0; + $4233 = $h; + $4234 = $4233; + HEAP32[$4234>>2] = $4231; + $4235 = (($4233) + 4)|0; + $4236 = $4235; + HEAP32[$4236>>2] = $4232; + $4237 = $t11; + $4238 = $4237; + $4239 = HEAP32[$4238>>2]|0; + $4240 = (($4237) + 4)|0; + $4241 = $4240; + $4242 = HEAP32[$4241>>2]|0; + $4243 = $t22; + $4244 = $4243; + $4245 = HEAP32[$4244>>2]|0; + $4246 = (($4243) + 4)|0; + $4247 = $4246; + $4248 = HEAP32[$4247>>2]|0; + $4249 = (_i64Add(($4239|0),($4242|0),($4245|0),($4248|0))|0); + $4250 = tempRet0; + $4251 = $d; + $4252 = $4251; + HEAP32[$4252>>2] = $4249; + $4253 = (($4251) + 4)|0; + $4254 = $4253; + HEAP32[$4254>>2] = $4250; + $4255 = $c; + $4256 = $4255; + $4257 = HEAP32[$4256>>2]|0; + $4258 = (($4255) + 4)|0; + $4259 = $4258; + $4260 = HEAP32[$4259>>2]|0; + $4261 = $h; + $4262 = $4261; + $4263 = HEAP32[$4262>>2]|0; + $4264 = (($4261) + 4)|0; + $4265 = $4264; + $4266 = HEAP32[$4265>>2]|0; + $4267 = (_Sum1_1422($4263,$4266)|0); + $4268 = tempRet0; + $4269 = (_i64Add(($4257|0),($4260|0),($4267|0),($4268|0))|0); + $4270 = tempRet0; + $4271 = $h; + $4272 = $4271; + $4273 = HEAP32[$4272>>2]|0; + $4274 = (($4271) + 4)|0; + $4275 = $4274; + $4276 = HEAP32[$4275>>2]|0; + $4277 = $a; + $4278 = $4277; + $4279 = HEAP32[$4278>>2]|0; + $4280 = (($4277) + 4)|0; + $4281 = $4280; + $4282 = HEAP32[$4281>>2]|0; + $4283 = $b; + $4284 = $4283; + $4285 = HEAP32[$4284>>2]|0; + $4286 = (($4283) + 4)|0; + $4287 = $4286; + $4288 = HEAP32[$4287>>2]|0; + $4289 = (_Ch($4273,$4276,$4279,$4282,$4285,$4288)|0); + $4290 = tempRet0; + $4291 = (_i64Add(($4269|0),($4270|0),($4289|0),($4290|0))|0); + $4292 = tempRet0; + $4293 = $t; + $4294 = (($4293) + 5)|0; + $4295 = (80 + ($4294<<3)|0); + $4296 = $4295; + $4297 = $4296; + $4298 = HEAP32[$4297>>2]|0; + $4299 = (($4296) + 4)|0; + $4300 = $4299; + $4301 = HEAP32[$4300>>2]|0; + $4302 = (_i64Add(($4291|0),($4292|0),($4298|0),($4301|0))|0); + $4303 = tempRet0; + $4304 = ((($w)) + 40|0); + $4305 = $4304; + $4306 = $4305; + $4307 = HEAP32[$4306>>2]|0; + $4308 = (($4305) + 4)|0; + $4309 = $4308; + $4310 = HEAP32[$4309>>2]|0; + $4311 = (_i64Add(($4302|0),($4303|0),($4307|0),($4310|0))|0); + $4312 = tempRet0; + $4313 = $t11; + $4314 = $4313; + HEAP32[$4314>>2] = $4311; + $4315 = (($4313) + 4)|0; + $4316 = $4315; + HEAP32[$4316>>2] = $4312; + $4317 = $d; + $4318 = $4317; + $4319 = HEAP32[$4318>>2]|0; + $4320 = (($4317) + 4)|0; + $4321 = $4320; + $4322 = HEAP32[$4321>>2]|0; + $4323 = (_Sum0_1423($4319,$4322)|0); + $4324 = tempRet0; + $4325 = $d; + $4326 = $4325; + $4327 = HEAP32[$4326>>2]|0; + $4328 = (($4325) + 4)|0; + $4329 = $4328; + $4330 = HEAP32[$4329>>2]|0; + $4331 = $e; + $4332 = $4331; + $4333 = HEAP32[$4332>>2]|0; + $4334 = (($4331) + 4)|0; + $4335 = $4334; + $4336 = HEAP32[$4335>>2]|0; + $4337 = $f; + $4338 = $4337; + $4339 = HEAP32[$4338>>2]|0; + $4340 = (($4337) + 4)|0; + $4341 = $4340; + $4342 = HEAP32[$4341>>2]|0; + $4343 = (_Maj_1424($4327,$4330,$4333,$4336,$4339,$4342)|0); + $4344 = tempRet0; + $4345 = (_i64Add(($4323|0),($4324|0),($4343|0),($4344|0))|0); + $4346 = tempRet0; + $4347 = $t22; + $4348 = $4347; + HEAP32[$4348>>2] = $4345; + $4349 = (($4347) + 4)|0; + $4350 = $4349; + HEAP32[$4350>>2] = $4346; + $4351 = $t11; + $4352 = $4351; + $4353 = HEAP32[$4352>>2]|0; + $4354 = (($4351) + 4)|0; + $4355 = $4354; + $4356 = HEAP32[$4355>>2]|0; + $4357 = $g; + $4358 = $4357; + $4359 = HEAP32[$4358>>2]|0; + $4360 = (($4357) + 4)|0; + $4361 = $4360; + $4362 = HEAP32[$4361>>2]|0; + $4363 = (_i64Add(($4359|0),($4362|0),($4353|0),($4356|0))|0); + $4364 = tempRet0; + $4365 = $g; + $4366 = $4365; + HEAP32[$4366>>2] = $4363; + $4367 = (($4365) + 4)|0; + $4368 = $4367; + HEAP32[$4368>>2] = $4364; + $4369 = $t11; + $4370 = $4369; + $4371 = HEAP32[$4370>>2]|0; + $4372 = (($4369) + 4)|0; + $4373 = $4372; + $4374 = HEAP32[$4373>>2]|0; + $4375 = $t22; + $4376 = $4375; + $4377 = HEAP32[$4376>>2]|0; + $4378 = (($4375) + 4)|0; + $4379 = $4378; + $4380 = HEAP32[$4379>>2]|0; + $4381 = (_i64Add(($4371|0),($4374|0),($4377|0),($4380|0))|0); + $4382 = tempRet0; + $4383 = $c; + $4384 = $4383; + HEAP32[$4384>>2] = $4381; + $4385 = (($4383) + 4)|0; + $4386 = $4385; + HEAP32[$4386>>2] = $4382; + $4387 = $b; + $4388 = $4387; + $4389 = HEAP32[$4388>>2]|0; + $4390 = (($4387) + 4)|0; + $4391 = $4390; + $4392 = HEAP32[$4391>>2]|0; + $4393 = $g; + $4394 = $4393; + $4395 = HEAP32[$4394>>2]|0; + $4396 = (($4393) + 4)|0; + $4397 = $4396; + $4398 = HEAP32[$4397>>2]|0; + $4399 = (_Sum1_1422($4395,$4398)|0); + $4400 = tempRet0; + $4401 = (_i64Add(($4389|0),($4392|0),($4399|0),($4400|0))|0); + $4402 = tempRet0; + $4403 = $g; + $4404 = $4403; + $4405 = HEAP32[$4404>>2]|0; + $4406 = (($4403) + 4)|0; + $4407 = $4406; + $4408 = HEAP32[$4407>>2]|0; + $4409 = $h; + $4410 = $4409; + $4411 = HEAP32[$4410>>2]|0; + $4412 = (($4409) + 4)|0; + $4413 = $4412; + $4414 = HEAP32[$4413>>2]|0; + $4415 = $a; + $4416 = $4415; + $4417 = HEAP32[$4416>>2]|0; + $4418 = (($4415) + 4)|0; + $4419 = $4418; + $4420 = HEAP32[$4419>>2]|0; + $4421 = (_Ch($4405,$4408,$4411,$4414,$4417,$4420)|0); + $4422 = tempRet0; + $4423 = (_i64Add(($4401|0),($4402|0),($4421|0),($4422|0))|0); + $4424 = tempRet0; + $4425 = $t; + $4426 = (($4425) + 6)|0; + $4427 = (80 + ($4426<<3)|0); + $4428 = $4427; + $4429 = $4428; + $4430 = HEAP32[$4429>>2]|0; + $4431 = (($4428) + 4)|0; + $4432 = $4431; + $4433 = HEAP32[$4432>>2]|0; + $4434 = (_i64Add(($4423|0),($4424|0),($4430|0),($4433|0))|0); + $4435 = tempRet0; + $4436 = ((($w)) + 48|0); + $4437 = $4436; + $4438 = $4437; + $4439 = HEAP32[$4438>>2]|0; + $4440 = (($4437) + 4)|0; + $4441 = $4440; + $4442 = HEAP32[$4441>>2]|0; + $4443 = (_i64Add(($4434|0),($4435|0),($4439|0),($4442|0))|0); + $4444 = tempRet0; + $4445 = $t11; + $4446 = $4445; + HEAP32[$4446>>2] = $4443; + $4447 = (($4445) + 4)|0; + $4448 = $4447; + HEAP32[$4448>>2] = $4444; + $4449 = $c; + $4450 = $4449; + $4451 = HEAP32[$4450>>2]|0; + $4452 = (($4449) + 4)|0; + $4453 = $4452; + $4454 = HEAP32[$4453>>2]|0; + $4455 = (_Sum0_1423($4451,$4454)|0); + $4456 = tempRet0; + $4457 = $c; + $4458 = $4457; + $4459 = HEAP32[$4458>>2]|0; + $4460 = (($4457) + 4)|0; + $4461 = $4460; + $4462 = HEAP32[$4461>>2]|0; + $4463 = $d; + $4464 = $4463; + $4465 = HEAP32[$4464>>2]|0; + $4466 = (($4463) + 4)|0; + $4467 = $4466; + $4468 = HEAP32[$4467>>2]|0; + $4469 = $e; + $4470 = $4469; + $4471 = HEAP32[$4470>>2]|0; + $4472 = (($4469) + 4)|0; + $4473 = $4472; + $4474 = HEAP32[$4473>>2]|0; + $4475 = (_Maj_1424($4459,$4462,$4465,$4468,$4471,$4474)|0); + $4476 = tempRet0; + $4477 = (_i64Add(($4455|0),($4456|0),($4475|0),($4476|0))|0); + $4478 = tempRet0; + $4479 = $t22; + $4480 = $4479; + HEAP32[$4480>>2] = $4477; + $4481 = (($4479) + 4)|0; + $4482 = $4481; + HEAP32[$4482>>2] = $4478; + $4483 = $t11; + $4484 = $4483; + $4485 = HEAP32[$4484>>2]|0; + $4486 = (($4483) + 4)|0; + $4487 = $4486; + $4488 = HEAP32[$4487>>2]|0; + $4489 = $f; + $4490 = $4489; + $4491 = HEAP32[$4490>>2]|0; + $4492 = (($4489) + 4)|0; + $4493 = $4492; + $4494 = HEAP32[$4493>>2]|0; + $4495 = (_i64Add(($4491|0),($4494|0),($4485|0),($4488|0))|0); + $4496 = tempRet0; + $4497 = $f; + $4498 = $4497; + HEAP32[$4498>>2] = $4495; + $4499 = (($4497) + 4)|0; + $4500 = $4499; + HEAP32[$4500>>2] = $4496; + $4501 = $t11; + $4502 = $4501; + $4503 = HEAP32[$4502>>2]|0; + $4504 = (($4501) + 4)|0; + $4505 = $4504; + $4506 = HEAP32[$4505>>2]|0; + $4507 = $t22; + $4508 = $4507; + $4509 = HEAP32[$4508>>2]|0; + $4510 = (($4507) + 4)|0; + $4511 = $4510; + $4512 = HEAP32[$4511>>2]|0; + $4513 = (_i64Add(($4503|0),($4506|0),($4509|0),($4512|0))|0); + $4514 = tempRet0; + $4515 = $b; + $4516 = $4515; + HEAP32[$4516>>2] = $4513; + $4517 = (($4515) + 4)|0; + $4518 = $4517; + HEAP32[$4518>>2] = $4514; + $4519 = $a; + $4520 = $4519; + $4521 = HEAP32[$4520>>2]|0; + $4522 = (($4519) + 4)|0; + $4523 = $4522; + $4524 = HEAP32[$4523>>2]|0; + $4525 = $f; + $4526 = $4525; + $4527 = HEAP32[$4526>>2]|0; + $4528 = (($4525) + 4)|0; + $4529 = $4528; + $4530 = HEAP32[$4529>>2]|0; + $4531 = (_Sum1_1422($4527,$4530)|0); + $4532 = tempRet0; + $4533 = (_i64Add(($4521|0),($4524|0),($4531|0),($4532|0))|0); + $4534 = tempRet0; + $4535 = $f; + $4536 = $4535; + $4537 = HEAP32[$4536>>2]|0; + $4538 = (($4535) + 4)|0; + $4539 = $4538; + $4540 = HEAP32[$4539>>2]|0; + $4541 = $g; + $4542 = $4541; + $4543 = HEAP32[$4542>>2]|0; + $4544 = (($4541) + 4)|0; + $4545 = $4544; + $4546 = HEAP32[$4545>>2]|0; + $4547 = $h; + $4548 = $4547; + $4549 = HEAP32[$4548>>2]|0; + $4550 = (($4547) + 4)|0; + $4551 = $4550; + $4552 = HEAP32[$4551>>2]|0; + $4553 = (_Ch($4537,$4540,$4543,$4546,$4549,$4552)|0); + $4554 = tempRet0; + $4555 = (_i64Add(($4533|0),($4534|0),($4553|0),($4554|0))|0); + $4556 = tempRet0; + $4557 = $t; + $4558 = (($4557) + 7)|0; + $4559 = (80 + ($4558<<3)|0); + $4560 = $4559; + $4561 = $4560; + $4562 = HEAP32[$4561>>2]|0; + $4563 = (($4560) + 4)|0; + $4564 = $4563; + $4565 = HEAP32[$4564>>2]|0; + $4566 = (_i64Add(($4555|0),($4556|0),($4562|0),($4565|0))|0); + $4567 = tempRet0; + $4568 = ((($w)) + 56|0); + $4569 = $4568; + $4570 = $4569; + $4571 = HEAP32[$4570>>2]|0; + $4572 = (($4569) + 4)|0; + $4573 = $4572; + $4574 = HEAP32[$4573>>2]|0; + $4575 = (_i64Add(($4566|0),($4567|0),($4571|0),($4574|0))|0); + $4576 = tempRet0; + $4577 = $t11; + $4578 = $4577; + HEAP32[$4578>>2] = $4575; + $4579 = (($4577) + 4)|0; + $4580 = $4579; + HEAP32[$4580>>2] = $4576; + $4581 = $b; + $4582 = $4581; + $4583 = HEAP32[$4582>>2]|0; + $4584 = (($4581) + 4)|0; + $4585 = $4584; + $4586 = HEAP32[$4585>>2]|0; + $4587 = (_Sum0_1423($4583,$4586)|0); + $4588 = tempRet0; + $4589 = $b; + $4590 = $4589; + $4591 = HEAP32[$4590>>2]|0; + $4592 = (($4589) + 4)|0; + $4593 = $4592; + $4594 = HEAP32[$4593>>2]|0; + $4595 = $c; + $4596 = $4595; + $4597 = HEAP32[$4596>>2]|0; + $4598 = (($4595) + 4)|0; + $4599 = $4598; + $4600 = HEAP32[$4599>>2]|0; + $4601 = $d; + $4602 = $4601; + $4603 = HEAP32[$4602>>2]|0; + $4604 = (($4601) + 4)|0; + $4605 = $4604; + $4606 = HEAP32[$4605>>2]|0; + $4607 = (_Maj_1424($4591,$4594,$4597,$4600,$4603,$4606)|0); + $4608 = tempRet0; + $4609 = (_i64Add(($4587|0),($4588|0),($4607|0),($4608|0))|0); + $4610 = tempRet0; + $4611 = $t22; + $4612 = $4611; + HEAP32[$4612>>2] = $4609; + $4613 = (($4611) + 4)|0; + $4614 = $4613; + HEAP32[$4614>>2] = $4610; + $4615 = $t11; + $4616 = $4615; + $4617 = HEAP32[$4616>>2]|0; + $4618 = (($4615) + 4)|0; + $4619 = $4618; + $4620 = HEAP32[$4619>>2]|0; + $4621 = $e; + $4622 = $4621; + $4623 = HEAP32[$4622>>2]|0; + $4624 = (($4621) + 4)|0; + $4625 = $4624; + $4626 = HEAP32[$4625>>2]|0; + $4627 = (_i64Add(($4623|0),($4626|0),($4617|0),($4620|0))|0); + $4628 = tempRet0; + $4629 = $e; + $4630 = $4629; + HEAP32[$4630>>2] = $4627; + $4631 = (($4629) + 4)|0; + $4632 = $4631; + HEAP32[$4632>>2] = $4628; + $4633 = $t11; + $4634 = $4633; + $4635 = HEAP32[$4634>>2]|0; + $4636 = (($4633) + 4)|0; + $4637 = $4636; + $4638 = HEAP32[$4637>>2]|0; + $4639 = $t22; + $4640 = $4639; + $4641 = HEAP32[$4640>>2]|0; + $4642 = (($4639) + 4)|0; + $4643 = $4642; + $4644 = HEAP32[$4643>>2]|0; + $4645 = (_i64Add(($4635|0),($4638|0),($4641|0),($4644|0))|0); + $4646 = tempRet0; + $4647 = $a; + $4648 = $4647; + HEAP32[$4648>>2] = $4645; + $4649 = (($4647) + 4)|0; + $4650 = $4649; + HEAP32[$4650>>2] = $4646; + $4651 = $h; + $4652 = $4651; + $4653 = HEAP32[$4652>>2]|0; + $4654 = (($4651) + 4)|0; + $4655 = $4654; + $4656 = HEAP32[$4655>>2]|0; + $4657 = $e; + $4658 = $4657; + $4659 = HEAP32[$4658>>2]|0; + $4660 = (($4657) + 4)|0; + $4661 = $4660; + $4662 = HEAP32[$4661>>2]|0; + $4663 = (_Sum1_1422($4659,$4662)|0); + $4664 = tempRet0; + $4665 = (_i64Add(($4653|0),($4656|0),($4663|0),($4664|0))|0); + $4666 = tempRet0; + $4667 = $e; + $4668 = $4667; + $4669 = HEAP32[$4668>>2]|0; + $4670 = (($4667) + 4)|0; + $4671 = $4670; + $4672 = HEAP32[$4671>>2]|0; + $4673 = $f; + $4674 = $4673; + $4675 = HEAP32[$4674>>2]|0; + $4676 = (($4673) + 4)|0; + $4677 = $4676; + $4678 = HEAP32[$4677>>2]|0; + $4679 = $g; + $4680 = $4679; + $4681 = HEAP32[$4680>>2]|0; + $4682 = (($4679) + 4)|0; + $4683 = $4682; + $4684 = HEAP32[$4683>>2]|0; + $4685 = (_Ch($4669,$4672,$4675,$4678,$4681,$4684)|0); + $4686 = tempRet0; + $4687 = (_i64Add(($4665|0),($4666|0),($4685|0),($4686|0))|0); + $4688 = tempRet0; + $4689 = $t; + $4690 = (($4689) + 8)|0; + $4691 = (80 + ($4690<<3)|0); + $4692 = $4691; + $4693 = $4692; + $4694 = HEAP32[$4693>>2]|0; + $4695 = (($4692) + 4)|0; + $4696 = $4695; + $4697 = HEAP32[$4696>>2]|0; + $4698 = (_i64Add(($4687|0),($4688|0),($4694|0),($4697|0))|0); + $4699 = tempRet0; + $4700 = ((($w)) + 64|0); + $4701 = $4700; + $4702 = $4701; + $4703 = HEAP32[$4702>>2]|0; + $4704 = (($4701) + 4)|0; + $4705 = $4704; + $4706 = HEAP32[$4705>>2]|0; + $4707 = (_i64Add(($4698|0),($4699|0),($4703|0),($4706|0))|0); + $4708 = tempRet0; + $4709 = $t11; + $4710 = $4709; + HEAP32[$4710>>2] = $4707; + $4711 = (($4709) + 4)|0; + $4712 = $4711; + HEAP32[$4712>>2] = $4708; + $4713 = $a; + $4714 = $4713; + $4715 = HEAP32[$4714>>2]|0; + $4716 = (($4713) + 4)|0; + $4717 = $4716; + $4718 = HEAP32[$4717>>2]|0; + $4719 = (_Sum0_1423($4715,$4718)|0); + $4720 = tempRet0; + $4721 = $a; + $4722 = $4721; + $4723 = HEAP32[$4722>>2]|0; + $4724 = (($4721) + 4)|0; + $4725 = $4724; + $4726 = HEAP32[$4725>>2]|0; + $4727 = $b; + $4728 = $4727; + $4729 = HEAP32[$4728>>2]|0; + $4730 = (($4727) + 4)|0; + $4731 = $4730; + $4732 = HEAP32[$4731>>2]|0; + $4733 = $c; + $4734 = $4733; + $4735 = HEAP32[$4734>>2]|0; + $4736 = (($4733) + 4)|0; + $4737 = $4736; + $4738 = HEAP32[$4737>>2]|0; + $4739 = (_Maj_1424($4723,$4726,$4729,$4732,$4735,$4738)|0); + $4740 = tempRet0; + $4741 = (_i64Add(($4719|0),($4720|0),($4739|0),($4740|0))|0); + $4742 = tempRet0; + $4743 = $t22; + $4744 = $4743; + HEAP32[$4744>>2] = $4741; + $4745 = (($4743) + 4)|0; + $4746 = $4745; + HEAP32[$4746>>2] = $4742; + $4747 = $t11; + $4748 = $4747; + $4749 = HEAP32[$4748>>2]|0; + $4750 = (($4747) + 4)|0; + $4751 = $4750; + $4752 = HEAP32[$4751>>2]|0; + $4753 = $d; + $4754 = $4753; + $4755 = HEAP32[$4754>>2]|0; + $4756 = (($4753) + 4)|0; + $4757 = $4756; + $4758 = HEAP32[$4757>>2]|0; + $4759 = (_i64Add(($4755|0),($4758|0),($4749|0),($4752|0))|0); + $4760 = tempRet0; + $4761 = $d; + $4762 = $4761; + HEAP32[$4762>>2] = $4759; + $4763 = (($4761) + 4)|0; + $4764 = $4763; + HEAP32[$4764>>2] = $4760; + $4765 = $t11; + $4766 = $4765; + $4767 = HEAP32[$4766>>2]|0; + $4768 = (($4765) + 4)|0; + $4769 = $4768; + $4770 = HEAP32[$4769>>2]|0; + $4771 = $t22; + $4772 = $4771; + $4773 = HEAP32[$4772>>2]|0; + $4774 = (($4771) + 4)|0; + $4775 = $4774; + $4776 = HEAP32[$4775>>2]|0; + $4777 = (_i64Add(($4767|0),($4770|0),($4773|0),($4776|0))|0); + $4778 = tempRet0; + $4779 = $h; + $4780 = $4779; + HEAP32[$4780>>2] = $4777; + $4781 = (($4779) + 4)|0; + $4782 = $4781; + HEAP32[$4782>>2] = $4778; + $4783 = $g; + $4784 = $4783; + $4785 = HEAP32[$4784>>2]|0; + $4786 = (($4783) + 4)|0; + $4787 = $4786; + $4788 = HEAP32[$4787>>2]|0; + $4789 = $d; + $4790 = $4789; + $4791 = HEAP32[$4790>>2]|0; + $4792 = (($4789) + 4)|0; + $4793 = $4792; + $4794 = HEAP32[$4793>>2]|0; + $4795 = (_Sum1_1422($4791,$4794)|0); + $4796 = tempRet0; + $4797 = (_i64Add(($4785|0),($4788|0),($4795|0),($4796|0))|0); + $4798 = tempRet0; + $4799 = $d; + $4800 = $4799; + $4801 = HEAP32[$4800>>2]|0; + $4802 = (($4799) + 4)|0; + $4803 = $4802; + $4804 = HEAP32[$4803>>2]|0; + $4805 = $e; + $4806 = $4805; + $4807 = HEAP32[$4806>>2]|0; + $4808 = (($4805) + 4)|0; + $4809 = $4808; + $4810 = HEAP32[$4809>>2]|0; + $4811 = $f; + $4812 = $4811; + $4813 = HEAP32[$4812>>2]|0; + $4814 = (($4811) + 4)|0; + $4815 = $4814; + $4816 = HEAP32[$4815>>2]|0; + $4817 = (_Ch($4801,$4804,$4807,$4810,$4813,$4816)|0); + $4818 = tempRet0; + $4819 = (_i64Add(($4797|0),($4798|0),($4817|0),($4818|0))|0); + $4820 = tempRet0; + $4821 = $t; + $4822 = (($4821) + 9)|0; + $4823 = (80 + ($4822<<3)|0); + $4824 = $4823; + $4825 = $4824; + $4826 = HEAP32[$4825>>2]|0; + $4827 = (($4824) + 4)|0; + $4828 = $4827; + $4829 = HEAP32[$4828>>2]|0; + $4830 = (_i64Add(($4819|0),($4820|0),($4826|0),($4829|0))|0); + $4831 = tempRet0; + $4832 = ((($w)) + 72|0); + $4833 = $4832; + $4834 = $4833; + $4835 = HEAP32[$4834>>2]|0; + $4836 = (($4833) + 4)|0; + $4837 = $4836; + $4838 = HEAP32[$4837>>2]|0; + $4839 = (_i64Add(($4830|0),($4831|0),($4835|0),($4838|0))|0); + $4840 = tempRet0; + $4841 = $t11; + $4842 = $4841; + HEAP32[$4842>>2] = $4839; + $4843 = (($4841) + 4)|0; + $4844 = $4843; + HEAP32[$4844>>2] = $4840; + $4845 = $h; + $4846 = $4845; + $4847 = HEAP32[$4846>>2]|0; + $4848 = (($4845) + 4)|0; + $4849 = $4848; + $4850 = HEAP32[$4849>>2]|0; + $4851 = (_Sum0_1423($4847,$4850)|0); + $4852 = tempRet0; + $4853 = $h; + $4854 = $4853; + $4855 = HEAP32[$4854>>2]|0; + $4856 = (($4853) + 4)|0; + $4857 = $4856; + $4858 = HEAP32[$4857>>2]|0; + $4859 = $a; + $4860 = $4859; + $4861 = HEAP32[$4860>>2]|0; + $4862 = (($4859) + 4)|0; + $4863 = $4862; + $4864 = HEAP32[$4863>>2]|0; + $4865 = $b; + $4866 = $4865; + $4867 = HEAP32[$4866>>2]|0; + $4868 = (($4865) + 4)|0; + $4869 = $4868; + $4870 = HEAP32[$4869>>2]|0; + $4871 = (_Maj_1424($4855,$4858,$4861,$4864,$4867,$4870)|0); + $4872 = tempRet0; + $4873 = (_i64Add(($4851|0),($4852|0),($4871|0),($4872|0))|0); + $4874 = tempRet0; + $4875 = $t22; + $4876 = $4875; + HEAP32[$4876>>2] = $4873; + $4877 = (($4875) + 4)|0; + $4878 = $4877; + HEAP32[$4878>>2] = $4874; + $4879 = $t11; + $4880 = $4879; + $4881 = HEAP32[$4880>>2]|0; + $4882 = (($4879) + 4)|0; + $4883 = $4882; + $4884 = HEAP32[$4883>>2]|0; + $4885 = $c; + $4886 = $4885; + $4887 = HEAP32[$4886>>2]|0; + $4888 = (($4885) + 4)|0; + $4889 = $4888; + $4890 = HEAP32[$4889>>2]|0; + $4891 = (_i64Add(($4887|0),($4890|0),($4881|0),($4884|0))|0); + $4892 = tempRet0; + $4893 = $c; + $4894 = $4893; + HEAP32[$4894>>2] = $4891; + $4895 = (($4893) + 4)|0; + $4896 = $4895; + HEAP32[$4896>>2] = $4892; + $4897 = $t11; + $4898 = $4897; + $4899 = HEAP32[$4898>>2]|0; + $4900 = (($4897) + 4)|0; + $4901 = $4900; + $4902 = HEAP32[$4901>>2]|0; + $4903 = $t22; + $4904 = $4903; + $4905 = HEAP32[$4904>>2]|0; + $4906 = (($4903) + 4)|0; + $4907 = $4906; + $4908 = HEAP32[$4907>>2]|0; + $4909 = (_i64Add(($4899|0),($4902|0),($4905|0),($4908|0))|0); + $4910 = tempRet0; + $4911 = $g; + $4912 = $4911; + HEAP32[$4912>>2] = $4909; + $4913 = (($4911) + 4)|0; + $4914 = $4913; + HEAP32[$4914>>2] = $4910; + $4915 = $f; + $4916 = $4915; + $4917 = HEAP32[$4916>>2]|0; + $4918 = (($4915) + 4)|0; + $4919 = $4918; + $4920 = HEAP32[$4919>>2]|0; + $4921 = $c; + $4922 = $4921; + $4923 = HEAP32[$4922>>2]|0; + $4924 = (($4921) + 4)|0; + $4925 = $4924; + $4926 = HEAP32[$4925>>2]|0; + $4927 = (_Sum1_1422($4923,$4926)|0); + $4928 = tempRet0; + $4929 = (_i64Add(($4917|0),($4920|0),($4927|0),($4928|0))|0); + $4930 = tempRet0; + $4931 = $c; + $4932 = $4931; + $4933 = HEAP32[$4932>>2]|0; + $4934 = (($4931) + 4)|0; + $4935 = $4934; + $4936 = HEAP32[$4935>>2]|0; + $4937 = $d; + $4938 = $4937; + $4939 = HEAP32[$4938>>2]|0; + $4940 = (($4937) + 4)|0; + $4941 = $4940; + $4942 = HEAP32[$4941>>2]|0; + $4943 = $e; + $4944 = $4943; + $4945 = HEAP32[$4944>>2]|0; + $4946 = (($4943) + 4)|0; + $4947 = $4946; + $4948 = HEAP32[$4947>>2]|0; + $4949 = (_Ch($4933,$4936,$4939,$4942,$4945,$4948)|0); + $4950 = tempRet0; + $4951 = (_i64Add(($4929|0),($4930|0),($4949|0),($4950|0))|0); + $4952 = tempRet0; + $4953 = $t; + $4954 = (($4953) + 10)|0; + $4955 = (80 + ($4954<<3)|0); + $4956 = $4955; + $4957 = $4956; + $4958 = HEAP32[$4957>>2]|0; + $4959 = (($4956) + 4)|0; + $4960 = $4959; + $4961 = HEAP32[$4960>>2]|0; + $4962 = (_i64Add(($4951|0),($4952|0),($4958|0),($4961|0))|0); + $4963 = tempRet0; + $4964 = ((($w)) + 80|0); + $4965 = $4964; + $4966 = $4965; + $4967 = HEAP32[$4966>>2]|0; + $4968 = (($4965) + 4)|0; + $4969 = $4968; + $4970 = HEAP32[$4969>>2]|0; + $4971 = (_i64Add(($4962|0),($4963|0),($4967|0),($4970|0))|0); + $4972 = tempRet0; + $4973 = $t11; + $4974 = $4973; + HEAP32[$4974>>2] = $4971; + $4975 = (($4973) + 4)|0; + $4976 = $4975; + HEAP32[$4976>>2] = $4972; + $4977 = $g; + $4978 = $4977; + $4979 = HEAP32[$4978>>2]|0; + $4980 = (($4977) + 4)|0; + $4981 = $4980; + $4982 = HEAP32[$4981>>2]|0; + $4983 = (_Sum0_1423($4979,$4982)|0); + $4984 = tempRet0; + $4985 = $g; + $4986 = $4985; + $4987 = HEAP32[$4986>>2]|0; + $4988 = (($4985) + 4)|0; + $4989 = $4988; + $4990 = HEAP32[$4989>>2]|0; + $4991 = $h; + $4992 = $4991; + $4993 = HEAP32[$4992>>2]|0; + $4994 = (($4991) + 4)|0; + $4995 = $4994; + $4996 = HEAP32[$4995>>2]|0; + $4997 = $a; + $4998 = $4997; + $4999 = HEAP32[$4998>>2]|0; + $5000 = (($4997) + 4)|0; + $5001 = $5000; + $5002 = HEAP32[$5001>>2]|0; + $5003 = (_Maj_1424($4987,$4990,$4993,$4996,$4999,$5002)|0); + $5004 = tempRet0; + $5005 = (_i64Add(($4983|0),($4984|0),($5003|0),($5004|0))|0); + $5006 = tempRet0; + $5007 = $t22; + $5008 = $5007; + HEAP32[$5008>>2] = $5005; + $5009 = (($5007) + 4)|0; + $5010 = $5009; + HEAP32[$5010>>2] = $5006; + $5011 = $t11; + $5012 = $5011; + $5013 = HEAP32[$5012>>2]|0; + $5014 = (($5011) + 4)|0; + $5015 = $5014; + $5016 = HEAP32[$5015>>2]|0; + $5017 = $b; + $5018 = $5017; + $5019 = HEAP32[$5018>>2]|0; + $5020 = (($5017) + 4)|0; + $5021 = $5020; + $5022 = HEAP32[$5021>>2]|0; + $5023 = (_i64Add(($5019|0),($5022|0),($5013|0),($5016|0))|0); + $5024 = tempRet0; + $5025 = $b; + $5026 = $5025; + HEAP32[$5026>>2] = $5023; + $5027 = (($5025) + 4)|0; + $5028 = $5027; + HEAP32[$5028>>2] = $5024; + $5029 = $t11; + $5030 = $5029; + $5031 = HEAP32[$5030>>2]|0; + $5032 = (($5029) + 4)|0; + $5033 = $5032; + $5034 = HEAP32[$5033>>2]|0; + $5035 = $t22; + $5036 = $5035; + $5037 = HEAP32[$5036>>2]|0; + $5038 = (($5035) + 4)|0; + $5039 = $5038; + $5040 = HEAP32[$5039>>2]|0; + $5041 = (_i64Add(($5031|0),($5034|0),($5037|0),($5040|0))|0); + $5042 = tempRet0; + $5043 = $f; + $5044 = $5043; + HEAP32[$5044>>2] = $5041; + $5045 = (($5043) + 4)|0; + $5046 = $5045; + HEAP32[$5046>>2] = $5042; + $5047 = $e; + $5048 = $5047; + $5049 = HEAP32[$5048>>2]|0; + $5050 = (($5047) + 4)|0; + $5051 = $5050; + $5052 = HEAP32[$5051>>2]|0; + $5053 = $b; + $5054 = $5053; + $5055 = HEAP32[$5054>>2]|0; + $5056 = (($5053) + 4)|0; + $5057 = $5056; + $5058 = HEAP32[$5057>>2]|0; + $5059 = (_Sum1_1422($5055,$5058)|0); + $5060 = tempRet0; + $5061 = (_i64Add(($5049|0),($5052|0),($5059|0),($5060|0))|0); + $5062 = tempRet0; + $5063 = $b; + $5064 = $5063; + $5065 = HEAP32[$5064>>2]|0; + $5066 = (($5063) + 4)|0; + $5067 = $5066; + $5068 = HEAP32[$5067>>2]|0; + $5069 = $c; + $5070 = $5069; + $5071 = HEAP32[$5070>>2]|0; + $5072 = (($5069) + 4)|0; + $5073 = $5072; + $5074 = HEAP32[$5073>>2]|0; + $5075 = $d; + $5076 = $5075; + $5077 = HEAP32[$5076>>2]|0; + $5078 = (($5075) + 4)|0; + $5079 = $5078; + $5080 = HEAP32[$5079>>2]|0; + $5081 = (_Ch($5065,$5068,$5071,$5074,$5077,$5080)|0); + $5082 = tempRet0; + $5083 = (_i64Add(($5061|0),($5062|0),($5081|0),($5082|0))|0); + $5084 = tempRet0; + $5085 = $t; + $5086 = (($5085) + 11)|0; + $5087 = (80 + ($5086<<3)|0); + $5088 = $5087; + $5089 = $5088; + $5090 = HEAP32[$5089>>2]|0; + $5091 = (($5088) + 4)|0; + $5092 = $5091; + $5093 = HEAP32[$5092>>2]|0; + $5094 = (_i64Add(($5083|0),($5084|0),($5090|0),($5093|0))|0); + $5095 = tempRet0; + $5096 = ((($w)) + 88|0); + $5097 = $5096; + $5098 = $5097; + $5099 = HEAP32[$5098>>2]|0; + $5100 = (($5097) + 4)|0; + $5101 = $5100; + $5102 = HEAP32[$5101>>2]|0; + $5103 = (_i64Add(($5094|0),($5095|0),($5099|0),($5102|0))|0); + $5104 = tempRet0; + $5105 = $t11; + $5106 = $5105; + HEAP32[$5106>>2] = $5103; + $5107 = (($5105) + 4)|0; + $5108 = $5107; + HEAP32[$5108>>2] = $5104; + $5109 = $f; + $5110 = $5109; + $5111 = HEAP32[$5110>>2]|0; + $5112 = (($5109) + 4)|0; + $5113 = $5112; + $5114 = HEAP32[$5113>>2]|0; + $5115 = (_Sum0_1423($5111,$5114)|0); + $5116 = tempRet0; + $5117 = $f; + $5118 = $5117; + $5119 = HEAP32[$5118>>2]|0; + $5120 = (($5117) + 4)|0; + $5121 = $5120; + $5122 = HEAP32[$5121>>2]|0; + $5123 = $g; + $5124 = $5123; + $5125 = HEAP32[$5124>>2]|0; + $5126 = (($5123) + 4)|0; + $5127 = $5126; + $5128 = HEAP32[$5127>>2]|0; + $5129 = $h; + $5130 = $5129; + $5131 = HEAP32[$5130>>2]|0; + $5132 = (($5129) + 4)|0; + $5133 = $5132; + $5134 = HEAP32[$5133>>2]|0; + $5135 = (_Maj_1424($5119,$5122,$5125,$5128,$5131,$5134)|0); + $5136 = tempRet0; + $5137 = (_i64Add(($5115|0),($5116|0),($5135|0),($5136|0))|0); + $5138 = tempRet0; + $5139 = $t22; + $5140 = $5139; + HEAP32[$5140>>2] = $5137; + $5141 = (($5139) + 4)|0; + $5142 = $5141; + HEAP32[$5142>>2] = $5138; + $5143 = $t11; + $5144 = $5143; + $5145 = HEAP32[$5144>>2]|0; + $5146 = (($5143) + 4)|0; + $5147 = $5146; + $5148 = HEAP32[$5147>>2]|0; + $5149 = $a; + $5150 = $5149; + $5151 = HEAP32[$5150>>2]|0; + $5152 = (($5149) + 4)|0; + $5153 = $5152; + $5154 = HEAP32[$5153>>2]|0; + $5155 = (_i64Add(($5151|0),($5154|0),($5145|0),($5148|0))|0); + $5156 = tempRet0; + $5157 = $a; + $5158 = $5157; + HEAP32[$5158>>2] = $5155; + $5159 = (($5157) + 4)|0; + $5160 = $5159; + HEAP32[$5160>>2] = $5156; + $5161 = $t11; + $5162 = $5161; + $5163 = HEAP32[$5162>>2]|0; + $5164 = (($5161) + 4)|0; + $5165 = $5164; + $5166 = HEAP32[$5165>>2]|0; + $5167 = $t22; + $5168 = $5167; + $5169 = HEAP32[$5168>>2]|0; + $5170 = (($5167) + 4)|0; + $5171 = $5170; + $5172 = HEAP32[$5171>>2]|0; + $5173 = (_i64Add(($5163|0),($5166|0),($5169|0),($5172|0))|0); + $5174 = tempRet0; + $5175 = $e; + $5176 = $5175; + HEAP32[$5176>>2] = $5173; + $5177 = (($5175) + 4)|0; + $5178 = $5177; + HEAP32[$5178>>2] = $5174; + $5179 = $d; + $5180 = $5179; + $5181 = HEAP32[$5180>>2]|0; + $5182 = (($5179) + 4)|0; + $5183 = $5182; + $5184 = HEAP32[$5183>>2]|0; + $5185 = $a; + $5186 = $5185; + $5187 = HEAP32[$5186>>2]|0; + $5188 = (($5185) + 4)|0; + $5189 = $5188; + $5190 = HEAP32[$5189>>2]|0; + $5191 = (_Sum1_1422($5187,$5190)|0); + $5192 = tempRet0; + $5193 = (_i64Add(($5181|0),($5184|0),($5191|0),($5192|0))|0); + $5194 = tempRet0; + $5195 = $a; + $5196 = $5195; + $5197 = HEAP32[$5196>>2]|0; + $5198 = (($5195) + 4)|0; + $5199 = $5198; + $5200 = HEAP32[$5199>>2]|0; + $5201 = $b; + $5202 = $5201; + $5203 = HEAP32[$5202>>2]|0; + $5204 = (($5201) + 4)|0; + $5205 = $5204; + $5206 = HEAP32[$5205>>2]|0; + $5207 = $c; + $5208 = $5207; + $5209 = HEAP32[$5208>>2]|0; + $5210 = (($5207) + 4)|0; + $5211 = $5210; + $5212 = HEAP32[$5211>>2]|0; + $5213 = (_Ch($5197,$5200,$5203,$5206,$5209,$5212)|0); + $5214 = tempRet0; + $5215 = (_i64Add(($5193|0),($5194|0),($5213|0),($5214|0))|0); + $5216 = tempRet0; + $5217 = $t; + $5218 = (($5217) + 12)|0; + $5219 = (80 + ($5218<<3)|0); + $5220 = $5219; + $5221 = $5220; + $5222 = HEAP32[$5221>>2]|0; + $5223 = (($5220) + 4)|0; + $5224 = $5223; + $5225 = HEAP32[$5224>>2]|0; + $5226 = (_i64Add(($5215|0),($5216|0),($5222|0),($5225|0))|0); + $5227 = tempRet0; + $5228 = ((($w)) + 96|0); + $5229 = $5228; + $5230 = $5229; + $5231 = HEAP32[$5230>>2]|0; + $5232 = (($5229) + 4)|0; + $5233 = $5232; + $5234 = HEAP32[$5233>>2]|0; + $5235 = (_i64Add(($5226|0),($5227|0),($5231|0),($5234|0))|0); + $5236 = tempRet0; + $5237 = $t11; + $5238 = $5237; + HEAP32[$5238>>2] = $5235; + $5239 = (($5237) + 4)|0; + $5240 = $5239; + HEAP32[$5240>>2] = $5236; + $5241 = $e; + $5242 = $5241; + $5243 = HEAP32[$5242>>2]|0; + $5244 = (($5241) + 4)|0; + $5245 = $5244; + $5246 = HEAP32[$5245>>2]|0; + $5247 = (_Sum0_1423($5243,$5246)|0); + $5248 = tempRet0; + $5249 = $e; + $5250 = $5249; + $5251 = HEAP32[$5250>>2]|0; + $5252 = (($5249) + 4)|0; + $5253 = $5252; + $5254 = HEAP32[$5253>>2]|0; + $5255 = $f; + $5256 = $5255; + $5257 = HEAP32[$5256>>2]|0; + $5258 = (($5255) + 4)|0; + $5259 = $5258; + $5260 = HEAP32[$5259>>2]|0; + $5261 = $g; + $5262 = $5261; + $5263 = HEAP32[$5262>>2]|0; + $5264 = (($5261) + 4)|0; + $5265 = $5264; + $5266 = HEAP32[$5265>>2]|0; + $5267 = (_Maj_1424($5251,$5254,$5257,$5260,$5263,$5266)|0); + $5268 = tempRet0; + $5269 = (_i64Add(($5247|0),($5248|0),($5267|0),($5268|0))|0); + $5270 = tempRet0; + $5271 = $t22; + $5272 = $5271; + HEAP32[$5272>>2] = $5269; + $5273 = (($5271) + 4)|0; + $5274 = $5273; + HEAP32[$5274>>2] = $5270; + $5275 = $t11; + $5276 = $5275; + $5277 = HEAP32[$5276>>2]|0; + $5278 = (($5275) + 4)|0; + $5279 = $5278; + $5280 = HEAP32[$5279>>2]|0; + $5281 = $h; + $5282 = $5281; + $5283 = HEAP32[$5282>>2]|0; + $5284 = (($5281) + 4)|0; + $5285 = $5284; + $5286 = HEAP32[$5285>>2]|0; + $5287 = (_i64Add(($5283|0),($5286|0),($5277|0),($5280|0))|0); + $5288 = tempRet0; + $5289 = $h; + $5290 = $5289; + HEAP32[$5290>>2] = $5287; + $5291 = (($5289) + 4)|0; + $5292 = $5291; + HEAP32[$5292>>2] = $5288; + $5293 = $t11; + $5294 = $5293; + $5295 = HEAP32[$5294>>2]|0; + $5296 = (($5293) + 4)|0; + $5297 = $5296; + $5298 = HEAP32[$5297>>2]|0; + $5299 = $t22; + $5300 = $5299; + $5301 = HEAP32[$5300>>2]|0; + $5302 = (($5299) + 4)|0; + $5303 = $5302; + $5304 = HEAP32[$5303>>2]|0; + $5305 = (_i64Add(($5295|0),($5298|0),($5301|0),($5304|0))|0); + $5306 = tempRet0; + $5307 = $d; + $5308 = $5307; + HEAP32[$5308>>2] = $5305; + $5309 = (($5307) + 4)|0; + $5310 = $5309; + HEAP32[$5310>>2] = $5306; + $5311 = $c; + $5312 = $5311; + $5313 = HEAP32[$5312>>2]|0; + $5314 = (($5311) + 4)|0; + $5315 = $5314; + $5316 = HEAP32[$5315>>2]|0; + $5317 = $h; + $5318 = $5317; + $5319 = HEAP32[$5318>>2]|0; + $5320 = (($5317) + 4)|0; + $5321 = $5320; + $5322 = HEAP32[$5321>>2]|0; + $5323 = (_Sum1_1422($5319,$5322)|0); + $5324 = tempRet0; + $5325 = (_i64Add(($5313|0),($5316|0),($5323|0),($5324|0))|0); + $5326 = tempRet0; + $5327 = $h; + $5328 = $5327; + $5329 = HEAP32[$5328>>2]|0; + $5330 = (($5327) + 4)|0; + $5331 = $5330; + $5332 = HEAP32[$5331>>2]|0; + $5333 = $a; + $5334 = $5333; + $5335 = HEAP32[$5334>>2]|0; + $5336 = (($5333) + 4)|0; + $5337 = $5336; + $5338 = HEAP32[$5337>>2]|0; + $5339 = $b; + $5340 = $5339; + $5341 = HEAP32[$5340>>2]|0; + $5342 = (($5339) + 4)|0; + $5343 = $5342; + $5344 = HEAP32[$5343>>2]|0; + $5345 = (_Ch($5329,$5332,$5335,$5338,$5341,$5344)|0); + $5346 = tempRet0; + $5347 = (_i64Add(($5325|0),($5326|0),($5345|0),($5346|0))|0); + $5348 = tempRet0; + $5349 = $t; + $5350 = (($5349) + 13)|0; + $5351 = (80 + ($5350<<3)|0); + $5352 = $5351; + $5353 = $5352; + $5354 = HEAP32[$5353>>2]|0; + $5355 = (($5352) + 4)|0; + $5356 = $5355; + $5357 = HEAP32[$5356>>2]|0; + $5358 = (_i64Add(($5347|0),($5348|0),($5354|0),($5357|0))|0); + $5359 = tempRet0; + $5360 = ((($w)) + 104|0); + $5361 = $5360; + $5362 = $5361; + $5363 = HEAP32[$5362>>2]|0; + $5364 = (($5361) + 4)|0; + $5365 = $5364; + $5366 = HEAP32[$5365>>2]|0; + $5367 = (_i64Add(($5358|0),($5359|0),($5363|0),($5366|0))|0); + $5368 = tempRet0; + $5369 = $t11; + $5370 = $5369; + HEAP32[$5370>>2] = $5367; + $5371 = (($5369) + 4)|0; + $5372 = $5371; + HEAP32[$5372>>2] = $5368; + $5373 = $d; + $5374 = $5373; + $5375 = HEAP32[$5374>>2]|0; + $5376 = (($5373) + 4)|0; + $5377 = $5376; + $5378 = HEAP32[$5377>>2]|0; + $5379 = (_Sum0_1423($5375,$5378)|0); + $5380 = tempRet0; + $5381 = $d; + $5382 = $5381; + $5383 = HEAP32[$5382>>2]|0; + $5384 = (($5381) + 4)|0; + $5385 = $5384; + $5386 = HEAP32[$5385>>2]|0; + $5387 = $e; + $5388 = $5387; + $5389 = HEAP32[$5388>>2]|0; + $5390 = (($5387) + 4)|0; + $5391 = $5390; + $5392 = HEAP32[$5391>>2]|0; + $5393 = $f; + $5394 = $5393; + $5395 = HEAP32[$5394>>2]|0; + $5396 = (($5393) + 4)|0; + $5397 = $5396; + $5398 = HEAP32[$5397>>2]|0; + $5399 = (_Maj_1424($5383,$5386,$5389,$5392,$5395,$5398)|0); + $5400 = tempRet0; + $5401 = (_i64Add(($5379|0),($5380|0),($5399|0),($5400|0))|0); + $5402 = tempRet0; + $5403 = $t22; + $5404 = $5403; + HEAP32[$5404>>2] = $5401; + $5405 = (($5403) + 4)|0; + $5406 = $5405; + HEAP32[$5406>>2] = $5402; + $5407 = $t11; + $5408 = $5407; + $5409 = HEAP32[$5408>>2]|0; + $5410 = (($5407) + 4)|0; + $5411 = $5410; + $5412 = HEAP32[$5411>>2]|0; + $5413 = $g; + $5414 = $5413; + $5415 = HEAP32[$5414>>2]|0; + $5416 = (($5413) + 4)|0; + $5417 = $5416; + $5418 = HEAP32[$5417>>2]|0; + $5419 = (_i64Add(($5415|0),($5418|0),($5409|0),($5412|0))|0); + $5420 = tempRet0; + $5421 = $g; + $5422 = $5421; + HEAP32[$5422>>2] = $5419; + $5423 = (($5421) + 4)|0; + $5424 = $5423; + HEAP32[$5424>>2] = $5420; + $5425 = $t11; + $5426 = $5425; + $5427 = HEAP32[$5426>>2]|0; + $5428 = (($5425) + 4)|0; + $5429 = $5428; + $5430 = HEAP32[$5429>>2]|0; + $5431 = $t22; + $5432 = $5431; + $5433 = HEAP32[$5432>>2]|0; + $5434 = (($5431) + 4)|0; + $5435 = $5434; + $5436 = HEAP32[$5435>>2]|0; + $5437 = (_i64Add(($5427|0),($5430|0),($5433|0),($5436|0))|0); + $5438 = tempRet0; + $5439 = $c; + $5440 = $5439; + HEAP32[$5440>>2] = $5437; + $5441 = (($5439) + 4)|0; + $5442 = $5441; + HEAP32[$5442>>2] = $5438; + $5443 = $b; + $5444 = $5443; + $5445 = HEAP32[$5444>>2]|0; + $5446 = (($5443) + 4)|0; + $5447 = $5446; + $5448 = HEAP32[$5447>>2]|0; + $5449 = $g; + $5450 = $5449; + $5451 = HEAP32[$5450>>2]|0; + $5452 = (($5449) + 4)|0; + $5453 = $5452; + $5454 = HEAP32[$5453>>2]|0; + $5455 = (_Sum1_1422($5451,$5454)|0); + $5456 = tempRet0; + $5457 = (_i64Add(($5445|0),($5448|0),($5455|0),($5456|0))|0); + $5458 = tempRet0; + $5459 = $g; + $5460 = $5459; + $5461 = HEAP32[$5460>>2]|0; + $5462 = (($5459) + 4)|0; + $5463 = $5462; + $5464 = HEAP32[$5463>>2]|0; + $5465 = $h; + $5466 = $5465; + $5467 = HEAP32[$5466>>2]|0; + $5468 = (($5465) + 4)|0; + $5469 = $5468; + $5470 = HEAP32[$5469>>2]|0; + $5471 = $a; + $5472 = $5471; + $5473 = HEAP32[$5472>>2]|0; + $5474 = (($5471) + 4)|0; + $5475 = $5474; + $5476 = HEAP32[$5475>>2]|0; + $5477 = (_Ch($5461,$5464,$5467,$5470,$5473,$5476)|0); + $5478 = tempRet0; + $5479 = (_i64Add(($5457|0),($5458|0),($5477|0),($5478|0))|0); + $5480 = tempRet0; + $5481 = $t; + $5482 = (($5481) + 14)|0; + $5483 = (80 + ($5482<<3)|0); + $5484 = $5483; + $5485 = $5484; + $5486 = HEAP32[$5485>>2]|0; + $5487 = (($5484) + 4)|0; + $5488 = $5487; + $5489 = HEAP32[$5488>>2]|0; + $5490 = (_i64Add(($5479|0),($5480|0),($5486|0),($5489|0))|0); + $5491 = tempRet0; + $5492 = ((($w)) + 112|0); + $5493 = $5492; + $5494 = $5493; + $5495 = HEAP32[$5494>>2]|0; + $5496 = (($5493) + 4)|0; + $5497 = $5496; + $5498 = HEAP32[$5497>>2]|0; + $5499 = (_i64Add(($5490|0),($5491|0),($5495|0),($5498|0))|0); + $5500 = tempRet0; + $5501 = $t11; + $5502 = $5501; + HEAP32[$5502>>2] = $5499; + $5503 = (($5501) + 4)|0; + $5504 = $5503; + HEAP32[$5504>>2] = $5500; + $5505 = $c; + $5506 = $5505; + $5507 = HEAP32[$5506>>2]|0; + $5508 = (($5505) + 4)|0; + $5509 = $5508; + $5510 = HEAP32[$5509>>2]|0; + $5511 = (_Sum0_1423($5507,$5510)|0); + $5512 = tempRet0; + $5513 = $c; + $5514 = $5513; + $5515 = HEAP32[$5514>>2]|0; + $5516 = (($5513) + 4)|0; + $5517 = $5516; + $5518 = HEAP32[$5517>>2]|0; + $5519 = $d; + $5520 = $5519; + $5521 = HEAP32[$5520>>2]|0; + $5522 = (($5519) + 4)|0; + $5523 = $5522; + $5524 = HEAP32[$5523>>2]|0; + $5525 = $e; + $5526 = $5525; + $5527 = HEAP32[$5526>>2]|0; + $5528 = (($5525) + 4)|0; + $5529 = $5528; + $5530 = HEAP32[$5529>>2]|0; + $5531 = (_Maj_1424($5515,$5518,$5521,$5524,$5527,$5530)|0); + $5532 = tempRet0; + $5533 = (_i64Add(($5511|0),($5512|0),($5531|0),($5532|0))|0); + $5534 = tempRet0; + $5535 = $t22; + $5536 = $5535; + HEAP32[$5536>>2] = $5533; + $5537 = (($5535) + 4)|0; + $5538 = $5537; + HEAP32[$5538>>2] = $5534; + $5539 = $t11; + $5540 = $5539; + $5541 = HEAP32[$5540>>2]|0; + $5542 = (($5539) + 4)|0; + $5543 = $5542; + $5544 = HEAP32[$5543>>2]|0; + $5545 = $f; + $5546 = $5545; + $5547 = HEAP32[$5546>>2]|0; + $5548 = (($5545) + 4)|0; + $5549 = $5548; + $5550 = HEAP32[$5549>>2]|0; + $5551 = (_i64Add(($5547|0),($5550|0),($5541|0),($5544|0))|0); + $5552 = tempRet0; + $5553 = $f; + $5554 = $5553; + HEAP32[$5554>>2] = $5551; + $5555 = (($5553) + 4)|0; + $5556 = $5555; + HEAP32[$5556>>2] = $5552; + $5557 = $t11; + $5558 = $5557; + $5559 = HEAP32[$5558>>2]|0; + $5560 = (($5557) + 4)|0; + $5561 = $5560; + $5562 = HEAP32[$5561>>2]|0; + $5563 = $t22; + $5564 = $5563; + $5565 = HEAP32[$5564>>2]|0; + $5566 = (($5563) + 4)|0; + $5567 = $5566; + $5568 = HEAP32[$5567>>2]|0; + $5569 = (_i64Add(($5559|0),($5562|0),($5565|0),($5568|0))|0); + $5570 = tempRet0; + $5571 = $b; + $5572 = $5571; + HEAP32[$5572>>2] = $5569; + $5573 = (($5571) + 4)|0; + $5574 = $5573; + HEAP32[$5574>>2] = $5570; + $5575 = $a; + $5576 = $5575; + $5577 = HEAP32[$5576>>2]|0; + $5578 = (($5575) + 4)|0; + $5579 = $5578; + $5580 = HEAP32[$5579>>2]|0; + $5581 = $f; + $5582 = $5581; + $5583 = HEAP32[$5582>>2]|0; + $5584 = (($5581) + 4)|0; + $5585 = $5584; + $5586 = HEAP32[$5585>>2]|0; + $5587 = (_Sum1_1422($5583,$5586)|0); + $5588 = tempRet0; + $5589 = (_i64Add(($5577|0),($5580|0),($5587|0),($5588|0))|0); + $5590 = tempRet0; + $5591 = $f; + $5592 = $5591; + $5593 = HEAP32[$5592>>2]|0; + $5594 = (($5591) + 4)|0; + $5595 = $5594; + $5596 = HEAP32[$5595>>2]|0; + $5597 = $g; + $5598 = $5597; + $5599 = HEAP32[$5598>>2]|0; + $5600 = (($5597) + 4)|0; + $5601 = $5600; + $5602 = HEAP32[$5601>>2]|0; + $5603 = $h; + $5604 = $5603; + $5605 = HEAP32[$5604>>2]|0; + $5606 = (($5603) + 4)|0; + $5607 = $5606; + $5608 = HEAP32[$5607>>2]|0; + $5609 = (_Ch($5593,$5596,$5599,$5602,$5605,$5608)|0); + $5610 = tempRet0; + $5611 = (_i64Add(($5589|0),($5590|0),($5609|0),($5610|0))|0); + $5612 = tempRet0; + $5613 = $t; + $5614 = (($5613) + 15)|0; + $5615 = (80 + ($5614<<3)|0); + $5616 = $5615; + $5617 = $5616; + $5618 = HEAP32[$5617>>2]|0; + $5619 = (($5616) + 4)|0; + $5620 = $5619; + $5621 = HEAP32[$5620>>2]|0; + $5622 = (_i64Add(($5611|0),($5612|0),($5618|0),($5621|0))|0); + $5623 = tempRet0; + $5624 = ((($w)) + 120|0); + $5625 = $5624; + $5626 = $5625; + $5627 = HEAP32[$5626>>2]|0; + $5628 = (($5625) + 4)|0; + $5629 = $5628; + $5630 = HEAP32[$5629>>2]|0; + $5631 = (_i64Add(($5622|0),($5623|0),($5627|0),($5630|0))|0); + $5632 = tempRet0; + $5633 = $t11; + $5634 = $5633; + HEAP32[$5634>>2] = $5631; + $5635 = (($5633) + 4)|0; + $5636 = $5635; + HEAP32[$5636>>2] = $5632; + $5637 = $b; + $5638 = $5637; + $5639 = HEAP32[$5638>>2]|0; + $5640 = (($5637) + 4)|0; + $5641 = $5640; + $5642 = HEAP32[$5641>>2]|0; + $5643 = (_Sum0_1423($5639,$5642)|0); + $5644 = tempRet0; + $5645 = $b; + $5646 = $5645; + $5647 = HEAP32[$5646>>2]|0; + $5648 = (($5645) + 4)|0; + $5649 = $5648; + $5650 = HEAP32[$5649>>2]|0; + $5651 = $c; + $5652 = $5651; + $5653 = HEAP32[$5652>>2]|0; + $5654 = (($5651) + 4)|0; + $5655 = $5654; + $5656 = HEAP32[$5655>>2]|0; + $5657 = $d; + $5658 = $5657; + $5659 = HEAP32[$5658>>2]|0; + $5660 = (($5657) + 4)|0; + $5661 = $5660; + $5662 = HEAP32[$5661>>2]|0; + $5663 = (_Maj_1424($5647,$5650,$5653,$5656,$5659,$5662)|0); + $5664 = tempRet0; + $5665 = (_i64Add(($5643|0),($5644|0),($5663|0),($5664|0))|0); + $5666 = tempRet0; + $5667 = $t22; + $5668 = $5667; + HEAP32[$5668>>2] = $5665; + $5669 = (($5667) + 4)|0; + $5670 = $5669; + HEAP32[$5670>>2] = $5666; + $5671 = $t11; + $5672 = $5671; + $5673 = HEAP32[$5672>>2]|0; + $5674 = (($5671) + 4)|0; + $5675 = $5674; + $5676 = HEAP32[$5675>>2]|0; + $5677 = $e; + $5678 = $5677; + $5679 = HEAP32[$5678>>2]|0; + $5680 = (($5677) + 4)|0; + $5681 = $5680; + $5682 = HEAP32[$5681>>2]|0; + $5683 = (_i64Add(($5679|0),($5682|0),($5673|0),($5676|0))|0); + $5684 = tempRet0; + $5685 = $e; + $5686 = $5685; + HEAP32[$5686>>2] = $5683; + $5687 = (($5685) + 4)|0; + $5688 = $5687; + HEAP32[$5688>>2] = $5684; + $5689 = $t11; + $5690 = $5689; + $5691 = HEAP32[$5690>>2]|0; + $5692 = (($5689) + 4)|0; + $5693 = $5692; + $5694 = HEAP32[$5693>>2]|0; + $5695 = $t22; + $5696 = $5695; + $5697 = HEAP32[$5696>>2]|0; + $5698 = (($5695) + 4)|0; + $5699 = $5698; + $5700 = HEAP32[$5699>>2]|0; + $5701 = (_i64Add(($5691|0),($5694|0),($5697|0),($5700|0))|0); + $5702 = tempRet0; + $5703 = $a; + $5704 = $5703; + HEAP32[$5704>>2] = $5701; + $5705 = (($5703) + 4)|0; + $5706 = $5705; + HEAP32[$5706>>2] = $5702; + $5707 = $t; + $5708 = (($5707) + 16)|0; + $t = $5708; + } + $5709 = $a; + $5710 = $5709; + $5711 = HEAP32[$5710>>2]|0; + $5712 = (($5709) + 4)|0; + $5713 = $5712; + $5714 = HEAP32[$5713>>2]|0; + $5715 = $0; + $5716 = $5715; + $5717 = $5716; + $5718 = HEAP32[$5717>>2]|0; + $5719 = (($5716) + 4)|0; + $5720 = $5719; + $5721 = HEAP32[$5720>>2]|0; + $5722 = (_i64Add(($5718|0),($5721|0),($5711|0),($5714|0))|0); + $5723 = tempRet0; + $5724 = $5715; + $5725 = $5724; + HEAP32[$5725>>2] = $5722; + $5726 = (($5724) + 4)|0; + $5727 = $5726; + HEAP32[$5727>>2] = $5723; + $5728 = $b; + $5729 = $5728; + $5730 = HEAP32[$5729>>2]|0; + $5731 = (($5728) + 4)|0; + $5732 = $5731; + $5733 = HEAP32[$5732>>2]|0; + $5734 = $0; + $5735 = ((($5734)) + 8|0); + $5736 = $5735; + $5737 = $5736; + $5738 = HEAP32[$5737>>2]|0; + $5739 = (($5736) + 4)|0; + $5740 = $5739; + $5741 = HEAP32[$5740>>2]|0; + $5742 = (_i64Add(($5738|0),($5741|0),($5730|0),($5733|0))|0); + $5743 = tempRet0; + $5744 = $5735; + $5745 = $5744; + HEAP32[$5745>>2] = $5742; + $5746 = (($5744) + 4)|0; + $5747 = $5746; + HEAP32[$5747>>2] = $5743; + $5748 = $c; + $5749 = $5748; + $5750 = HEAP32[$5749>>2]|0; + $5751 = (($5748) + 4)|0; + $5752 = $5751; + $5753 = HEAP32[$5752>>2]|0; + $5754 = $0; + $5755 = ((($5754)) + 16|0); + $5756 = $5755; + $5757 = $5756; + $5758 = HEAP32[$5757>>2]|0; + $5759 = (($5756) + 4)|0; + $5760 = $5759; + $5761 = HEAP32[$5760>>2]|0; + $5762 = (_i64Add(($5758|0),($5761|0),($5750|0),($5753|0))|0); + $5763 = tempRet0; + $5764 = $5755; + $5765 = $5764; + HEAP32[$5765>>2] = $5762; + $5766 = (($5764) + 4)|0; + $5767 = $5766; + HEAP32[$5767>>2] = $5763; + $5768 = $d; + $5769 = $5768; + $5770 = HEAP32[$5769>>2]|0; + $5771 = (($5768) + 4)|0; + $5772 = $5771; + $5773 = HEAP32[$5772>>2]|0; + $5774 = $0; + $5775 = ((($5774)) + 24|0); + $5776 = $5775; + $5777 = $5776; + $5778 = HEAP32[$5777>>2]|0; + $5779 = (($5776) + 4)|0; + $5780 = $5779; + $5781 = HEAP32[$5780>>2]|0; + $5782 = (_i64Add(($5778|0),($5781|0),($5770|0),($5773|0))|0); + $5783 = tempRet0; + $5784 = $5775; + $5785 = $5784; + HEAP32[$5785>>2] = $5782; + $5786 = (($5784) + 4)|0; + $5787 = $5786; + HEAP32[$5787>>2] = $5783; + $5788 = $e; + $5789 = $5788; + $5790 = HEAP32[$5789>>2]|0; + $5791 = (($5788) + 4)|0; + $5792 = $5791; + $5793 = HEAP32[$5792>>2]|0; + $5794 = $0; + $5795 = ((($5794)) + 32|0); + $5796 = $5795; + $5797 = $5796; + $5798 = HEAP32[$5797>>2]|0; + $5799 = (($5796) + 4)|0; + $5800 = $5799; + $5801 = HEAP32[$5800>>2]|0; + $5802 = (_i64Add(($5798|0),($5801|0),($5790|0),($5793|0))|0); + $5803 = tempRet0; + $5804 = $5795; + $5805 = $5804; + HEAP32[$5805>>2] = $5802; + $5806 = (($5804) + 4)|0; + $5807 = $5806; + HEAP32[$5807>>2] = $5803; + $5808 = $f; + $5809 = $5808; + $5810 = HEAP32[$5809>>2]|0; + $5811 = (($5808) + 4)|0; + $5812 = $5811; + $5813 = HEAP32[$5812>>2]|0; + $5814 = $0; + $5815 = ((($5814)) + 40|0); + $5816 = $5815; + $5817 = $5816; + $5818 = HEAP32[$5817>>2]|0; + $5819 = (($5816) + 4)|0; + $5820 = $5819; + $5821 = HEAP32[$5820>>2]|0; + $5822 = (_i64Add(($5818|0),($5821|0),($5810|0),($5813|0))|0); + $5823 = tempRet0; + $5824 = $5815; + $5825 = $5824; + HEAP32[$5825>>2] = $5822; + $5826 = (($5824) + 4)|0; + $5827 = $5826; + HEAP32[$5827>>2] = $5823; + $5828 = $g; + $5829 = $5828; + $5830 = HEAP32[$5829>>2]|0; + $5831 = (($5828) + 4)|0; + $5832 = $5831; + $5833 = HEAP32[$5832>>2]|0; + $5834 = $0; + $5835 = ((($5834)) + 48|0); + $5836 = $5835; + $5837 = $5836; + $5838 = HEAP32[$5837>>2]|0; + $5839 = (($5836) + 4)|0; + $5840 = $5839; + $5841 = HEAP32[$5840>>2]|0; + $5842 = (_i64Add(($5838|0),($5841|0),($5830|0),($5833|0))|0); + $5843 = tempRet0; + $5844 = $5835; + $5845 = $5844; + HEAP32[$5845>>2] = $5842; + $5846 = (($5844) + 4)|0; + $5847 = $5846; + HEAP32[$5847>>2] = $5843; + $5848 = $h; + $5849 = $5848; + $5850 = HEAP32[$5849>>2]|0; + $5851 = (($5848) + 4)|0; + $5852 = $5851; + $5853 = HEAP32[$5852>>2]|0; + $5854 = $0; + $5855 = ((($5854)) + 56|0); + $5856 = $5855; + $5857 = $5856; + $5858 = HEAP32[$5857>>2]|0; + $5859 = (($5856) + 4)|0; + $5860 = $5859; + $5861 = HEAP32[$5860>>2]|0; + $5862 = (_i64Add(($5858|0),($5861|0),($5850|0),($5853|0))|0); + $5863 = tempRet0; + $5864 = $5855; + $5865 = $5864; + HEAP32[$5865>>2] = $5862; + $5866 = (($5864) + 4)|0; + $5867 = $5866; + HEAP32[$5867>>2] = $5863; + STACKTOP = sp;return 208; +} +function _buf_get_be64($_buf) { + $_buf = $_buf|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $in = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_buf; + $1 = $0; + $in = $1; + $2 = $in; + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = (_bitshift64Shl(($4|0),0,56)|0); + $6 = tempRet0; + $7 = $in; + $8 = ((($7)) + 1|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = (_bitshift64Shl(($10|0),0,48)|0); + $12 = tempRet0; + $13 = $5 | $11; + $14 = $6 | $12; + $15 = $in; + $16 = ((($15)) + 2|0); + $17 = HEAP8[$16>>0]|0; + $18 = $17&255; + $19 = (_bitshift64Shl(($18|0),0,40)|0); + $20 = tempRet0; + $21 = $13 | $19; + $22 = $14 | $20; + $23 = $in; + $24 = ((($23)) + 3|0); + $25 = HEAP8[$24>>0]|0; + $26 = $25&255; + $27 = $22 | $26; + $28 = $in; + $29 = ((($28)) + 4|0); + $30 = HEAP8[$29>>0]|0; + $31 = $30&255; + $32 = (_bitshift64Shl(($31|0),0,24)|0); + $33 = tempRet0; + $34 = $21 | $32; + $35 = $27 | $33; + $36 = $in; + $37 = ((($36)) + 5|0); + $38 = HEAP8[$37>>0]|0; + $39 = $38&255; + $40 = (_bitshift64Shl(($39|0),0,16)|0); + $41 = tempRet0; + $42 = $34 | $40; + $43 = $35 | $41; + $44 = $in; + $45 = ((($44)) + 6|0); + $46 = HEAP8[$45>>0]|0; + $47 = $46&255; + $48 = (_bitshift64Shl(($47|0),0,8)|0); + $49 = tempRet0; + $50 = $42 | $48; + $51 = $43 | $49; + $52 = $in; + $53 = ((($52)) + 7|0); + $54 = HEAP8[$53>>0]|0; + $55 = $54&255; + $56 = $50 | $55; + tempRet0 = ($51); + STACKTOP = sp;return ($56|0); +} +function _Sum1_1422($0,$1) { + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $2 = sp; + $3 = $2; + $4 = $3; + HEAP32[$4>>2] = $0; + $5 = (($3) + 4)|0; + $6 = $5; + HEAP32[$6>>2] = $1; + $7 = $2; + $8 = $7; + $9 = HEAP32[$8>>2]|0; + $10 = (($7) + 4)|0; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (_ROTR($9,$12,14,0)|0); + $14 = tempRet0; + $15 = $2; + $16 = $15; + $17 = HEAP32[$16>>2]|0; + $18 = (($15) + 4)|0; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + $21 = (_ROTR($17,$20,18,0)|0); + $22 = tempRet0; + $23 = $13 ^ $21; + $24 = $14 ^ $22; + $25 = $2; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = (_ROTR($27,$30,41,0)|0); + $32 = tempRet0; + $33 = $23 ^ $31; + $34 = $24 ^ $32; + tempRet0 = ($34); + STACKTOP = sp;return ($33|0); +} +function _ROTR($0,$1,$2,$3) { + $0 = $0|0; + $1 = $1|0; + $2 = $2|0; + $3 = $3|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; + var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $4 = sp + 8|0; + $5 = sp; + $6 = $4; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + $10 = $5; + $11 = $10; + HEAP32[$11>>2] = $2; + $12 = (($10) + 4)|0; + $13 = $12; + HEAP32[$13>>2] = $3; + $14 = $4; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = $5; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = (($20) + 4)|0; + $24 = $23; + $25 = HEAP32[$24>>2]|0; + $26 = (_bitshift64Lshr(($16|0),($19|0),($22|0))|0); + $27 = tempRet0; + $28 = $4; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = (($28) + 4)|0; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = $5; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (($34) + 4)|0; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (_i64Subtract(64,0,($36|0),($39|0))|0); + $41 = tempRet0; + $42 = (_bitshift64Shl(($30|0),($33|0),($40|0))|0); + $43 = tempRet0; + $44 = $26 | $42; + $45 = $27 | $43; + tempRet0 = ($45); + STACKTOP = sp;return ($44|0); +} +function _Ch($0,$1,$2,$3,$4,$5) { + $0 = $0|0; + $1 = $1|0; + $2 = $2|0; + $3 = $3|0; + $4 = $4|0; + $5 = $5|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; + var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $6 = sp + 16|0; + $7 = sp + 8|0; + $8 = sp; + $9 = $6; + $10 = $9; + HEAP32[$10>>2] = $0; + $11 = (($9) + 4)|0; + $12 = $11; + HEAP32[$12>>2] = $1; + $13 = $7; + $14 = $13; + HEAP32[$14>>2] = $2; + $15 = (($13) + 4)|0; + $16 = $15; + HEAP32[$16>>2] = $3; + $17 = $8; + $18 = $17; + HEAP32[$18>>2] = $4; + $19 = (($17) + 4)|0; + $20 = $19; + HEAP32[$20>>2] = $5; + $21 = $6; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = (($21) + 4)|0; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + $27 = $7; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $30 = (($27) + 4)|0; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = $23 & $29; + $34 = $26 & $32; + $35 = $6; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = (($35) + 4)|0; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = $37 ^ -1; + $42 = $40 ^ -1; + $43 = $8; + $44 = $43; + $45 = HEAP32[$44>>2]|0; + $46 = (($43) + 4)|0; + $47 = $46; + $48 = HEAP32[$47>>2]|0; + $49 = $41 & $45; + $50 = $42 & $48; + $51 = $33 ^ $49; + $52 = $34 ^ $50; + tempRet0 = ($52); + STACKTOP = sp;return ($51|0); +} +function _Sum0_1423($0,$1) { + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $2 = sp; + $3 = $2; + $4 = $3; + HEAP32[$4>>2] = $0; + $5 = (($3) + 4)|0; + $6 = $5; + HEAP32[$6>>2] = $1; + $7 = $2; + $8 = $7; + $9 = HEAP32[$8>>2]|0; + $10 = (($7) + 4)|0; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (_ROTR($9,$12,28,0)|0); + $14 = tempRet0; + $15 = $2; + $16 = $15; + $17 = HEAP32[$16>>2]|0; + $18 = (($15) + 4)|0; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + $21 = (_ROTR($17,$20,34,0)|0); + $22 = tempRet0; + $23 = $13 ^ $21; + $24 = $14 ^ $22; + $25 = $2; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = (_ROTR($27,$30,39,0)|0); + $32 = tempRet0; + $33 = $23 ^ $31; + $34 = $24 ^ $32; + tempRet0 = ($34); + STACKTOP = sp;return ($33|0); +} +function _Maj_1424($0,$1,$2,$3,$4,$5) { + $0 = $0|0; + $1 = $1|0; + $2 = $2|0; + $3 = $3|0; + $4 = $4|0; + $5 = $5|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; + var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0; + var $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $6 = sp + 16|0; + $7 = sp + 8|0; + $8 = sp; + $9 = $6; + $10 = $9; + HEAP32[$10>>2] = $0; + $11 = (($9) + 4)|0; + $12 = $11; + HEAP32[$12>>2] = $1; + $13 = $7; + $14 = $13; + HEAP32[$14>>2] = $2; + $15 = (($13) + 4)|0; + $16 = $15; + HEAP32[$16>>2] = $3; + $17 = $8; + $18 = $17; + HEAP32[$18>>2] = $4; + $19 = (($17) + 4)|0; + $20 = $19; + HEAP32[$20>>2] = $5; + $21 = $6; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = (($21) + 4)|0; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + $27 = $7; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $30 = (($27) + 4)|0; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = $23 & $29; + $34 = $26 & $32; + $35 = $6; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = (($35) + 4)|0; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = $8; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $44 = (($41) + 4)|0; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = $37 & $43; + $48 = $40 & $46; + $49 = $33 ^ $47; + $50 = $34 ^ $48; + $51 = $7; + $52 = $51; + $53 = HEAP32[$52>>2]|0; + $54 = (($51) + 4)|0; + $55 = $54; + $56 = HEAP32[$55>>2]|0; + $57 = $8; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = (($57) + 4)|0; + $61 = $60; + $62 = HEAP32[$61>>2]|0; + $63 = $53 & $59; + $64 = $56 & $62; + $65 = $49 ^ $63; + $66 = $50 ^ $64; + tempRet0 = ($66); + STACKTOP = sp;return ($65|0); +} +function _sha512_final($context) { + $context = $context|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $32 = 0; + var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; + var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; + var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; + var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $hd = 0, $lsb = 0, $msb = 0, $p = 0, $stack_burn_depth = 0, $t = 0, $th = 0; + var dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $t = sp + 24|0; + $th = sp + 16|0; + $msb = sp + 8|0; + $lsb = sp; + $0 = $context; + $1 = $0; + $hd = $1; + $2 = $0; + __gcry_md_block_write($2,0,0); + $3 = $hd; + $4 = ((($3)) + 128|0); + $5 = $4; + $6 = $5; + $7 = HEAP32[$6>>2]|0; + $8 = (($5) + 4)|0; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $11 = $t; + $12 = $11; + HEAP32[$12>>2] = $7; + $13 = (($11) + 4)|0; + $14 = $13; + HEAP32[$14>>2] = $10; + $15 = $hd; + $16 = ((($15)) + 136|0); + $17 = $16; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (($17) + 4)|0; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = $th; + $24 = $23; + HEAP32[$24>>2] = $19; + $25 = (($23) + 4)|0; + $26 = $25; + HEAP32[$26>>2] = $22; + $27 = $t; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $30 = (($27) + 4)|0; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (_bitshift64Shl(($29|0),($32|0),7)|0); + $34 = tempRet0; + $35 = $lsb; + $36 = $35; + HEAP32[$36>>2] = $33; + $37 = (($35) + 4)|0; + $38 = $37; + HEAP32[$38>>2] = $34; + $39 = $th; + $40 = $39; + $41 = HEAP32[$40>>2]|0; + $42 = (($39) + 4)|0; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (_bitshift64Shl(($41|0),($44|0),7)|0); + $46 = tempRet0; + $47 = $t; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + $50 = (($47) + 4)|0; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = (_bitshift64Lshr(($49|0),($52|0),57)|0); + $54 = tempRet0; + $55 = $45 | $53; + $56 = $46 | $54; + $57 = $msb; + $58 = $57; + HEAP32[$58>>2] = $55; + $59 = (($57) + 4)|0; + $60 = $59; + HEAP32[$60>>2] = $56; + $61 = $lsb; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = (($61) + 4)|0; + $65 = $64; + $66 = HEAP32[$65>>2]|0; + $67 = $t; + $68 = $67; + HEAP32[$68>>2] = $63; + $69 = (($67) + 4)|0; + $70 = $69; + HEAP32[$70>>2] = $66; + $71 = $hd; + $72 = ((($71)) + 144|0); + $73 = HEAP32[$72>>2]|0; + $74 = ($73|0)<(0); + $75 = $74 << 31 >> 31; + $76 = $lsb; + $77 = $76; + $78 = HEAP32[$77>>2]|0; + $79 = (($76) + 4)|0; + $80 = $79; + $81 = HEAP32[$80>>2]|0; + $82 = (_i64Add(($78|0),($81|0),($73|0),($75|0))|0); + $83 = tempRet0; + $84 = $lsb; + $85 = $84; + HEAP32[$85>>2] = $82; + $86 = (($84) + 4)|0; + $87 = $86; + HEAP32[$87>>2] = $83; + $88 = $t; + $89 = $88; + $90 = HEAP32[$89>>2]|0; + $91 = (($88) + 4)|0; + $92 = $91; + $93 = HEAP32[$92>>2]|0; + $94 = ($83>>>0)<($93>>>0); + $95 = ($82>>>0)<($90>>>0); + $96 = ($83|0)==($93|0); + $97 = $96 & $95; + $98 = $94 | $97; + if ($98) { + $99 = $msb; + $100 = $99; + $101 = HEAP32[$100>>2]|0; + $102 = (($99) + 4)|0; + $103 = $102; + $104 = HEAP32[$103>>2]|0; + $105 = (_i64Add(($101|0),($104|0),1,0)|0); + $106 = tempRet0; + $107 = $msb; + $108 = $107; + HEAP32[$108>>2] = $105; + $109 = (($107) + 4)|0; + $110 = $109; + HEAP32[$110>>2] = $106; + } + $111 = $lsb; + $112 = $111; + $113 = HEAP32[$112>>2]|0; + $114 = (($111) + 4)|0; + $115 = $114; + $116 = HEAP32[$115>>2]|0; + $117 = $t; + $118 = $117; + HEAP32[$118>>2] = $113; + $119 = (($117) + 4)|0; + $120 = $119; + HEAP32[$120>>2] = $116; + $121 = $lsb; + $122 = $121; + $123 = HEAP32[$122>>2]|0; + $124 = (($121) + 4)|0; + $125 = $124; + $126 = HEAP32[$125>>2]|0; + $127 = (_bitshift64Shl(($123|0),($126|0),3)|0); + $128 = tempRet0; + $129 = $lsb; + $130 = $129; + HEAP32[$130>>2] = $127; + $131 = (($129) + 4)|0; + $132 = $131; + HEAP32[$132>>2] = $128; + $133 = $msb; + $134 = $133; + $135 = HEAP32[$134>>2]|0; + $136 = (($133) + 4)|0; + $137 = $136; + $138 = HEAP32[$137>>2]|0; + $139 = (_bitshift64Shl(($135|0),($138|0),3)|0); + $140 = tempRet0; + $141 = $msb; + $142 = $141; + HEAP32[$142>>2] = $139; + $143 = (($141) + 4)|0; + $144 = $143; + HEAP32[$144>>2] = $140; + $145 = $t; + $146 = $145; + $147 = HEAP32[$146>>2]|0; + $148 = (($145) + 4)|0; + $149 = $148; + $150 = HEAP32[$149>>2]|0; + $151 = (_bitshift64Lshr(($147|0),($150|0),61)|0); + $152 = tempRet0; + $153 = $msb; + $154 = $153; + $155 = HEAP32[$154>>2]|0; + $156 = (($153) + 4)|0; + $157 = $156; + $158 = HEAP32[$157>>2]|0; + $159 = $155 | $151; + $160 = $158 | $152; + $161 = $msb; + $162 = $161; + HEAP32[$162>>2] = $159; + $163 = (($161) + 4)|0; + $164 = $163; + HEAP32[$164>>2] = $160; + $165 = $hd; + $166 = ((($165)) + 144|0); + $167 = HEAP32[$166>>2]|0; + $168 = ($167|0)<(112); + $169 = $hd; + $170 = ((($169)) + 144|0); + $171 = HEAP32[$170>>2]|0; + $172 = (($171) + 1)|0; + HEAP32[$170>>2] = $172; + $173 = $hd; + $174 = (($173) + ($171)|0); + HEAP8[$174>>0] = -128; + L4: do { + if ($168) { + while(1) { + $175 = $hd; + $176 = ((($175)) + 144|0); + $177 = HEAP32[$176>>2]|0; + $178 = ($177|0)<(112); + if (!($178)) { + break L4; + } + $179 = $hd; + $180 = ((($179)) + 144|0); + $181 = HEAP32[$180>>2]|0; + $182 = (($181) + 1)|0; + HEAP32[$180>>2] = $182; + $183 = $hd; + $184 = (($183) + ($181)|0); + HEAP8[$184>>0] = 0; + } + } else { + while(1) { + $185 = $hd; + $186 = ((($185)) + 144|0); + $187 = HEAP32[$186>>2]|0; + $188 = ($187|0)<(128); + if (!($188)) { + break; + } + $189 = $hd; + $190 = ((($189)) + 144|0); + $191 = HEAP32[$190>>2]|0; + $192 = (($191) + 1)|0; + HEAP32[$190>>2] = $192; + $193 = $hd; + $194 = (($193) + ($191)|0); + HEAP8[$194>>0] = 0; + } + $195 = $0; + __gcry_md_block_write($195,0,0); + $196 = $hd; + dest=$196; stop=dest+112|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + } + } while(0); + $197 = $hd; + $198 = ((($197)) + 112|0); + $199 = $msb; + $200 = $199; + $201 = HEAP32[$200>>2]|0; + $202 = (($199) + 4)|0; + $203 = $202; + $204 = HEAP32[$203>>2]|0; + _buf_put_be64($198,$201,$204); + $205 = $hd; + $206 = ((($205)) + 120|0); + $207 = $lsb; + $208 = $207; + $209 = HEAP32[$208>>2]|0; + $210 = (($207) + 4)|0; + $211 = $210; + $212 = HEAP32[$211>>2]|0; + _buf_put_be64($206,$209,$212); + $213 = $hd; + $214 = $hd; + $215 = (_transform_1420($213,$214,1)|0); + $stack_burn_depth = $215; + $216 = $stack_burn_depth; + ___gcry_burn_stack($216); + ___gcry_burn_stack_dummy(); + $217 = $hd; + $p = $217; + $218 = $p; + $219 = $hd; + $220 = ((($219)) + 160|0); + $221 = $220; + $222 = $221; + $223 = HEAP32[$222>>2]|0; + $224 = (($221) + 4)|0; + $225 = $224; + $226 = HEAP32[$225>>2]|0; + _buf_put_be64($218,$223,$226); + $227 = $p; + $228 = ((($227)) + 8|0); + $p = $228; + $229 = $p; + $230 = $hd; + $231 = ((($230)) + 160|0); + $232 = ((($231)) + 8|0); + $233 = $232; + $234 = $233; + $235 = HEAP32[$234>>2]|0; + $236 = (($233) + 4)|0; + $237 = $236; + $238 = HEAP32[$237>>2]|0; + _buf_put_be64($229,$235,$238); + $239 = $p; + $240 = ((($239)) + 8|0); + $p = $240; + $241 = $p; + $242 = $hd; + $243 = ((($242)) + 160|0); + $244 = ((($243)) + 16|0); + $245 = $244; + $246 = $245; + $247 = HEAP32[$246>>2]|0; + $248 = (($245) + 4)|0; + $249 = $248; + $250 = HEAP32[$249>>2]|0; + _buf_put_be64($241,$247,$250); + $251 = $p; + $252 = ((($251)) + 8|0); + $p = $252; + $253 = $p; + $254 = $hd; + $255 = ((($254)) + 160|0); + $256 = ((($255)) + 24|0); + $257 = $256; + $258 = $257; + $259 = HEAP32[$258>>2]|0; + $260 = (($257) + 4)|0; + $261 = $260; + $262 = HEAP32[$261>>2]|0; + _buf_put_be64($253,$259,$262); + $263 = $p; + $264 = ((($263)) + 8|0); + $p = $264; + $265 = $p; + $266 = $hd; + $267 = ((($266)) + 160|0); + $268 = ((($267)) + 32|0); + $269 = $268; + $270 = $269; + $271 = HEAP32[$270>>2]|0; + $272 = (($269) + 4)|0; + $273 = $272; + $274 = HEAP32[$273>>2]|0; + _buf_put_be64($265,$271,$274); + $275 = $p; + $276 = ((($275)) + 8|0); + $p = $276; + $277 = $p; + $278 = $hd; + $279 = ((($278)) + 160|0); + $280 = ((($279)) + 40|0); + $281 = $280; + $282 = $281; + $283 = HEAP32[$282>>2]|0; + $284 = (($281) + 4)|0; + $285 = $284; + $286 = HEAP32[$285>>2]|0; + _buf_put_be64($277,$283,$286); + $287 = $p; + $288 = ((($287)) + 8|0); + $p = $288; + $289 = $p; + $290 = $hd; + $291 = ((($290)) + 160|0); + $292 = ((($291)) + 48|0); + $293 = $292; + $294 = $293; + $295 = HEAP32[$294>>2]|0; + $296 = (($293) + 4)|0; + $297 = $296; + $298 = HEAP32[$297>>2]|0; + _buf_put_be64($289,$295,$298); + $299 = $p; + $300 = ((($299)) + 8|0); + $p = $300; + $301 = $p; + $302 = $hd; + $303 = ((($302)) + 160|0); + $304 = ((($303)) + 56|0); + $305 = $304; + $306 = $305; + $307 = HEAP32[$306>>2]|0; + $308 = (($305) + 4)|0; + $309 = $308; + $310 = HEAP32[$309>>2]|0; + _buf_put_be64($301,$307,$310); + $311 = $p; + $312 = ((($311)) + 8|0); + $p = $312; + STACKTOP = sp;return; +} +function _buf_put_be64($_buf,$0,$1) { + $_buf = $_buf|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $out = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $3 = sp; + $2 = $_buf; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + $8 = $2; + $out = $8; + $9 = $3; + $10 = $9; + $11 = HEAP32[$10>>2]|0; + $12 = (($9) + 4)|0; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = (_bitshift64Lshr(($11|0),($14|0),56)|0); + $16 = tempRet0; + $17 = $15&255; + $18 = $out; + HEAP8[$18>>0] = $17; + $19 = $3; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = (($19) + 4)|0; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = (_bitshift64Lshr(($21|0),($24|0),48)|0); + $26 = tempRet0; + $27 = $25&255; + $28 = $out; + $29 = ((($28)) + 1|0); + HEAP8[$29>>0] = $27; + $30 = $3; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = (_bitshift64Lshr(($32|0),($35|0),40)|0); + $37 = tempRet0; + $38 = $36&255; + $39 = $out; + $40 = ((($39)) + 2|0); + HEAP8[$40>>0] = $38; + $41 = $3; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $44 = (($41) + 4)|0; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = $46&255; + $48 = $out; + $49 = ((($48)) + 3|0); + HEAP8[$49>>0] = $47; + $50 = $3; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = (($50) + 4)|0; + $54 = $53; + $55 = HEAP32[$54>>2]|0; + $56 = (_bitshift64Lshr(($52|0),($55|0),24)|0); + $57 = tempRet0; + $58 = $56&255; + $59 = $out; + $60 = ((($59)) + 4|0); + HEAP8[$60>>0] = $58; + $61 = $3; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = (($61) + 4)|0; + $65 = $64; + $66 = HEAP32[$65>>2]|0; + $67 = (_bitshift64Lshr(($63|0),($66|0),16)|0); + $68 = tempRet0; + $69 = $67&255; + $70 = $out; + $71 = ((($70)) + 5|0); + HEAP8[$71>>0] = $69; + $72 = $3; + $73 = $72; + $74 = HEAP32[$73>>2]|0; + $75 = (($72) + 4)|0; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $78 = (_bitshift64Lshr(($74|0),($77|0),8)|0); + $79 = tempRet0; + $80 = $78&255; + $81 = $out; + $82 = ((($81)) + 6|0); + HEAP8[$82>>0] = $80; + $83 = $3; + $84 = $83; + $85 = HEAP32[$84>>2]|0; + $86 = (($83) + 4)|0; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + $89 = $85&255; + $90 = $out; + $91 = ((($90)) + 7|0); + HEAP8[$91>>0] = $89; + STACKTOP = sp;return; +} +function _sha512_read($context) { + $context = $context|0; + var $0 = 0, $1 = 0, $2 = 0, $hd = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $0; + $hd = $1; + $2 = $hd; + STACKTOP = sp;return ($2|0); +} +function _run_selftests_1425($algo,$extended,$report) { + $algo = $algo|0; + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $algo; + $1 = $extended; + $2 = $report; + $3 = $0; + switch ($3|0) { + case 9: { + $4 = $1; + $5 = $2; + $6 = (_selftests_sha384_1426($4,$5)|0); + $ec = $6; + break; + } + case 10: { + $7 = $1; + $8 = $2; + $9 = (_selftests_sha512_1436($7,$8)|0); + $ec = $9; + break; + } + default: { + $ec = 5; + } + } + $10 = $ec; + STACKTOP = sp;return ($10|0); +} +function _selftests_sha384_1426($extended,$report) { + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $errtxt = 0, $what = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $extended; + $2 = $report; + $what = 42887; + $3 = (__gcry_hash_selftest_check_one(9,0,42900,3,42904,48)|0); + $errtxt = $3; + $4 = $errtxt; + $5 = ($4|0)!=(0|0); + do { + if (!($5)) { + $6 = $1; + $7 = ($6|0)!=(0); + if ($7) { + $what = 42953; + $8 = (__gcry_hash_selftest_check_one(9,0,42965,112,43078,48)|0); + $errtxt = $8; + $9 = $errtxt; + $10 = ($9|0)!=(0|0); + if ($10) { + break; + } + $what = 43127; + $11 = (__gcry_hash_selftest_check_one(9,1,0,0,43143,48)|0); + $errtxt = $11; + $12 = $errtxt; + $13 = ($12|0)!=(0|0); + if ($13) { + break; + } + } + $0 = 0; + $19 = $0; + STACKTOP = sp;return ($19|0); + } + } while(0); + $14 = $2; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = $2; + $17 = $what; + $18 = $errtxt; + FUNCTION_TABLE_viiii[$16 & 63](43192,9,$17,$18); + } + $0 = 50; + $19 = $0; + STACKTOP = sp;return ($19|0); +} +function _selftests_sha512_1436($extended,$report) { + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $errtxt = 0, $what = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $extended; + $2 = $report; + $what = 42887; + $3 = (__gcry_hash_selftest_check_one(10,0,42900,3,43199,64)|0); + $errtxt = $3; + $4 = $errtxt; + $5 = ($4|0)!=(0|0); + do { + if (!($5)) { + $6 = $1; + $7 = ($6|0)!=(0); + if ($7) { + $what = 42953; + $8 = (__gcry_hash_selftest_check_one(10,0,42965,112,43264,64)|0); + $errtxt = $8; + $9 = $errtxt; + $10 = ($9|0)!=(0|0); + if ($10) { + break; + } + $what = 43127; + $11 = (__gcry_hash_selftest_check_one(10,1,0,0,43329,64)|0); + $errtxt = $11; + $12 = $errtxt; + $13 = ($12|0)!=(0|0); + if ($13) { + break; + } + } + $0 = 0; + $19 = $0; + STACKTOP = sp;return ($19|0); + } + } while(0); + $14 = $2; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = $2; + $17 = $what; + $18 = $errtxt; + FUNCTION_TABLE_viiii[$16 & 63](43192,10,$17,$18); + } + $0 = 50; + $19 = $0; + STACKTOP = sp;return ($19|0); +} +function _sha384_init($context,$flags) { + $context = $context|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $ctx = 0, $features = 0, $hd = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $flags; + $2 = $0; + $ctx = $2; + $3 = $ctx; + $4 = ((($3)) + 160|0); + $hd = $4; + $5 = (__gcry_get_hw_features()|0); + $features = $5; + $6 = $hd; + $7 = $6; + $8 = $7; + HEAP32[$8>>2] = -1056596264; + $9 = (($7) + 4)|0; + $10 = $9; + HEAP32[$10>>2] = -876896931; + $11 = $hd; + $12 = ((($11)) + 8|0); + $13 = $12; + $14 = $13; + HEAP32[$14>>2] = 914150663; + $15 = (($13) + 4)|0; + $16 = $15; + HEAP32[$16>>2] = 1654270250; + $17 = $hd; + $18 = ((($17)) + 16|0); + $19 = $18; + $20 = $19; + HEAP32[$20>>2] = 812702999; + $21 = (($19) + 4)|0; + $22 = $21; + HEAP32[$22>>2] = -1856437926; + $23 = $hd; + $24 = ((($23)) + 24|0); + $25 = $24; + $26 = $25; + HEAP32[$26>>2] = -150054599; + $27 = (($25) + 4)|0; + $28 = $27; + HEAP32[$28>>2] = 355462360; + $29 = $hd; + $30 = ((($29)) + 32|0); + $31 = $30; + $32 = $31; + HEAP32[$32>>2] = -4191439; + $33 = (($31) + 4)|0; + $34 = $33; + HEAP32[$34>>2] = 1731405415; + $35 = $hd; + $36 = ((($35)) + 40|0); + $37 = $36; + $38 = $37; + HEAP32[$38>>2] = 1750603025; + $39 = (($37) + 4)|0; + $40 = $39; + HEAP32[$40>>2] = -1900787065; + $41 = $hd; + $42 = ((($41)) + 48|0); + $43 = $42; + $44 = $43; + HEAP32[$44>>2] = 1694076839; + $45 = (($43) + 4)|0; + $46 = $45; + HEAP32[$46>>2] = -619958771; + $47 = $hd; + $48 = ((($47)) + 56|0); + $49 = $48; + $50 = $49; + HEAP32[$50>>2] = -1090891868; + $51 = (($49) + 4)|0; + $52 = $51; + HEAP32[$52>>2] = 1203062813; + $53 = $ctx; + $54 = ((($53)) + 128|0); + $55 = $54; + $56 = $55; + HEAP32[$56>>2] = 0; + $57 = (($55) + 4)|0; + $58 = $57; + HEAP32[$58>>2] = 0; + $59 = $ctx; + $60 = ((($59)) + 136|0); + $61 = $60; + $62 = $61; + HEAP32[$62>>2] = 0; + $63 = (($61) + 4)|0; + $64 = $63; + HEAP32[$64>>2] = 0; + $65 = $ctx; + $66 = ((($65)) + 144|0); + HEAP32[$66>>2] = 0; + $67 = $ctx; + $68 = ((($67)) + 148|0); + HEAP32[$68>>2] = 128; + $69 = $ctx; + $70 = ((($69)) + 152|0); + HEAP32[$70>>2] = 76; + STACKTOP = sp;return; +} +function _twofish_setkey($context,$key,$keylen) { + $context = $context|0; + $key = $key|0; + $keylen = $keylen|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $ctx = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $key; + $2 = $keylen; + $3 = $0; + $ctx = $3; + $4 = $ctx; + $5 = $1; + $6 = $2; + $7 = (_do_twofish_setkey($4,$5,$6)|0); + $rc = $7; + ___gcry_burn_stack(47); + ___gcry_burn_stack_dummy(); + $8 = $rc; + STACKTOP = sp;return ($8|0); +} +function _do_twofish_setkey($ctx,$key,$keylen) { + $ctx = $ctx|0; + $key = $key|0; + $keylen = $keylen|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $10000 = 0, $10001 = 0, $10002 = 0, $10003 = 0, $10004 = 0, $10005 = 0, $10006 = 0, $10007 = 0, $10008 = 0, $10009 = 0, $1001 = 0, $10010 = 0, $10011 = 0, $10012 = 0, $10013 = 0; + var $10014 = 0, $10015 = 0, $10016 = 0, $10017 = 0, $10018 = 0, $10019 = 0, $1002 = 0, $10020 = 0, $10021 = 0, $10022 = 0, $10023 = 0, $10024 = 0, $10025 = 0, $10026 = 0, $10027 = 0, $10028 = 0, $10029 = 0, $1003 = 0, $10030 = 0, $10031 = 0; + var $10032 = 0, $10033 = 0, $10034 = 0, $10035 = 0, $10036 = 0, $10037 = 0, $10038 = 0, $10039 = 0, $1004 = 0, $10040 = 0, $10041 = 0, $10042 = 0, $10043 = 0, $10044 = 0, $10045 = 0, $10046 = 0, $10047 = 0, $10048 = 0, $10049 = 0, $1005 = 0; + var $10050 = 0, $10051 = 0, $10052 = 0, $10053 = 0, $10054 = 0, $10055 = 0, $10056 = 0, $10057 = 0, $10058 = 0, $10059 = 0, $1006 = 0, $10060 = 0, $10061 = 0, $10062 = 0, $10063 = 0, $10064 = 0, $10065 = 0, $10066 = 0, $10067 = 0, $10068 = 0; + var $10069 = 0, $1007 = 0, $10070 = 0, $10071 = 0, $10072 = 0, $10073 = 0, $10074 = 0, $10075 = 0, $10076 = 0, $10077 = 0, $10078 = 0, $10079 = 0, $1008 = 0, $10080 = 0, $10081 = 0, $10082 = 0, $10083 = 0, $10084 = 0, $10085 = 0, $10086 = 0; + var $10087 = 0, $10088 = 0, $10089 = 0, $1009 = 0, $10090 = 0, $10091 = 0, $10092 = 0, $10093 = 0, $10094 = 0, $10095 = 0, $10096 = 0, $10097 = 0, $10098 = 0, $10099 = 0, $101 = 0, $1010 = 0, $10100 = 0, $10101 = 0, $10102 = 0, $10103 = 0; + var $10104 = 0, $10105 = 0, $10106 = 0, $10107 = 0, $10108 = 0, $10109 = 0, $1011 = 0, $10110 = 0, $10111 = 0, $10112 = 0, $10113 = 0, $10114 = 0, $10115 = 0, $10116 = 0, $10117 = 0, $10118 = 0, $10119 = 0, $1012 = 0, $10120 = 0, $10121 = 0; + var $10122 = 0, $10123 = 0, $10124 = 0, $10125 = 0, $10126 = 0, $10127 = 0, $10128 = 0, $10129 = 0, $1013 = 0, $10130 = 0, $10131 = 0, $10132 = 0, $10133 = 0, $10134 = 0, $10135 = 0, $10136 = 0, $10137 = 0, $10138 = 0, $10139 = 0, $1014 = 0; + var $10140 = 0, $10141 = 0, $10142 = 0, $10143 = 0, $10144 = 0, $10145 = 0, $10146 = 0, $10147 = 0, $10148 = 0, $10149 = 0, $1015 = 0, $10150 = 0, $10151 = 0, $10152 = 0, $10153 = 0, $10154 = 0, $10155 = 0, $10156 = 0, $10157 = 0, $10158 = 0; + var $10159 = 0, $1016 = 0, $10160 = 0, $10161 = 0, $10162 = 0, $10163 = 0, $10164 = 0, $10165 = 0, $10166 = 0, $10167 = 0, $10168 = 0, $10169 = 0, $1017 = 0, $10170 = 0, $10171 = 0, $10172 = 0, $10173 = 0, $10174 = 0, $10175 = 0, $10176 = 0; + var $10177 = 0, $10178 = 0, $10179 = 0, $1018 = 0, $10180 = 0, $10181 = 0, $10182 = 0, $10183 = 0, $10184 = 0, $10185 = 0, $10186 = 0, $10187 = 0, $10188 = 0, $10189 = 0, $1019 = 0, $10190 = 0, $10191 = 0, $10192 = 0, $10193 = 0, $10194 = 0; + var $10195 = 0, $10196 = 0, $10197 = 0, $10198 = 0, $10199 = 0, $102 = 0, $1020 = 0, $10200 = 0, $10201 = 0, $10202 = 0, $10203 = 0, $10204 = 0, $10205 = 0, $10206 = 0, $10207 = 0, $10208 = 0, $10209 = 0, $1021 = 0, $10210 = 0, $10211 = 0; + var $10212 = 0, $10213 = 0, $10214 = 0, $10215 = 0, $10216 = 0, $10217 = 0, $10218 = 0, $10219 = 0, $1022 = 0, $10220 = 0, $10221 = 0, $10222 = 0, $10223 = 0, $10224 = 0, $10225 = 0, $10226 = 0, $10227 = 0, $10228 = 0, $10229 = 0, $1023 = 0; + var $10230 = 0, $10231 = 0, $10232 = 0, $10233 = 0, $10234 = 0, $10235 = 0, $10236 = 0, $10237 = 0, $10238 = 0, $10239 = 0, $1024 = 0, $10240 = 0, $10241 = 0, $10242 = 0, $10243 = 0, $10244 = 0, $10245 = 0, $10246 = 0, $10247 = 0, $10248 = 0; + var $10249 = 0, $1025 = 0, $10250 = 0, $10251 = 0, $10252 = 0, $10253 = 0, $10254 = 0, $10255 = 0, $10256 = 0, $10257 = 0, $10258 = 0, $10259 = 0, $1026 = 0, $10260 = 0, $10261 = 0, $10262 = 0, $10263 = 0, $10264 = 0, $10265 = 0, $10266 = 0; + var $10267 = 0, $10268 = 0, $10269 = 0, $1027 = 0, $10270 = 0, $10271 = 0, $10272 = 0, $10273 = 0, $10274 = 0, $10275 = 0, $10276 = 0, $10277 = 0, $10278 = 0, $10279 = 0, $1028 = 0, $10280 = 0, $10281 = 0, $10282 = 0, $10283 = 0, $10284 = 0; + var $10285 = 0, $10286 = 0, $10287 = 0, $10288 = 0, $10289 = 0, $1029 = 0, $10290 = 0, $10291 = 0, $10292 = 0, $10293 = 0, $10294 = 0, $10295 = 0, $10296 = 0, $10297 = 0, $10298 = 0, $10299 = 0, $103 = 0, $1030 = 0, $10300 = 0, $10301 = 0; + var $10302 = 0, $10303 = 0, $10304 = 0, $10305 = 0, $10306 = 0, $10307 = 0, $10308 = 0, $10309 = 0, $1031 = 0, $10310 = 0, $10311 = 0, $10312 = 0, $10313 = 0, $10314 = 0, $10315 = 0, $10316 = 0, $10317 = 0, $10318 = 0, $10319 = 0, $1032 = 0; + var $10320 = 0, $10321 = 0, $10322 = 0, $10323 = 0, $10324 = 0, $10325 = 0, $10326 = 0, $10327 = 0, $10328 = 0, $10329 = 0, $1033 = 0, $10330 = 0, $10331 = 0, $10332 = 0, $10333 = 0, $10334 = 0, $10335 = 0, $10336 = 0, $10337 = 0, $10338 = 0; + var $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0, $1051 = 0; + var $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0, $107 = 0; + var $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0, $1088 = 0; + var $1089 = 0, $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 0, $1094 = 0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0, $11 = 0, $110 = 0, $1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0, $1105 = 0; + var $1106 = 0, $1107 = 0, $1108 = 0, $1109 = 0, $111 = 0, $1110 = 0, $1111 = 0, $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 0, $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0, $1123 = 0; + var $1124 = 0, $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0, $1141 = 0; + var $1142 = 0, $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0, $116 = 0; + var $1160 = 0, $1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 0, $1166 = 0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0, $1178 = 0; + var $1179 = 0, $118 = 0, $1180 = 0, $1181 = 0, $1182 = 0, $1183 = 0, $1184 = 0, $1185 = 0, $1186 = 0, $1187 = 0, $1188 = 0, $1189 = 0, $119 = 0, $1190 = 0, $1191 = 0, $1192 = 0, $1193 = 0, $1194 = 0, $1195 = 0, $1196 = 0; + var $1197 = 0, $1198 = 0, $1199 = 0, $12 = 0, $120 = 0, $1200 = 0, $1201 = 0, $1202 = 0, $1203 = 0, $1204 = 0, $1205 = 0, $1206 = 0, $1207 = 0, $1208 = 0, $1209 = 0, $121 = 0, $1210 = 0, $1211 = 0, $1212 = 0, $1213 = 0; + var $1214 = 0, $1215 = 0, $1216 = 0, $1217 = 0, $1218 = 0, $1219 = 0, $122 = 0, $1220 = 0, $1221 = 0, $1222 = 0, $1223 = 0, $1224 = 0, $1225 = 0, $1226 = 0, $1227 = 0, $1228 = 0, $1229 = 0, $123 = 0, $1230 = 0, $1231 = 0; + var $1232 = 0, $1233 = 0, $1234 = 0, $1235 = 0, $1236 = 0, $1237 = 0, $1238 = 0, $1239 = 0, $124 = 0, $1240 = 0, $1241 = 0, $1242 = 0, $1243 = 0, $1244 = 0, $1245 = 0, $1246 = 0, $1247 = 0, $1248 = 0, $1249 = 0, $125 = 0; + var $1250 = 0, $1251 = 0, $1252 = 0, $1253 = 0, $1254 = 0, $1255 = 0, $1256 = 0, $1257 = 0, $1258 = 0, $1259 = 0, $126 = 0, $1260 = 0, $1261 = 0, $1262 = 0, $1263 = 0, $1264 = 0, $1265 = 0, $1266 = 0, $1267 = 0, $1268 = 0; + var $1269 = 0, $127 = 0, $1270 = 0, $1271 = 0, $1272 = 0, $1273 = 0, $1274 = 0, $1275 = 0, $1276 = 0, $1277 = 0, $1278 = 0, $1279 = 0, $128 = 0, $1280 = 0, $1281 = 0, $1282 = 0, $1283 = 0, $1284 = 0, $1285 = 0, $1286 = 0; + var $1287 = 0, $1288 = 0, $1289 = 0, $129 = 0, $1290 = 0, $1291 = 0, $1292 = 0, $1293 = 0, $1294 = 0, $1295 = 0, $1296 = 0, $1297 = 0, $1298 = 0, $1299 = 0, $13 = 0, $130 = 0, $1300 = 0, $1301 = 0, $1302 = 0, $1303 = 0; + var $1304 = 0, $1305 = 0, $1306 = 0, $1307 = 0, $1308 = 0, $1309 = 0, $131 = 0, $1310 = 0, $1311 = 0, $1312 = 0, $1313 = 0, $1314 = 0, $1315 = 0, $1316 = 0, $1317 = 0, $1318 = 0, $1319 = 0, $132 = 0, $1320 = 0, $1321 = 0; + var $1322 = 0, $1323 = 0, $1324 = 0, $1325 = 0, $1326 = 0, $1327 = 0, $1328 = 0, $1329 = 0, $133 = 0, $1330 = 0, $1331 = 0, $1332 = 0, $1333 = 0, $1334 = 0, $1335 = 0, $1336 = 0, $1337 = 0, $1338 = 0, $1339 = 0, $134 = 0; + var $1340 = 0, $1341 = 0, $1342 = 0, $1343 = 0, $1344 = 0, $1345 = 0, $1346 = 0, $1347 = 0, $1348 = 0, $1349 = 0, $135 = 0, $1350 = 0, $1351 = 0, $1352 = 0, $1353 = 0, $1354 = 0, $1355 = 0, $1356 = 0, $1357 = 0, $1358 = 0; + var $1359 = 0, $136 = 0, $1360 = 0, $1361 = 0, $1362 = 0, $1363 = 0, $1364 = 0, $1365 = 0, $1366 = 0, $1367 = 0, $1368 = 0, $1369 = 0, $137 = 0, $1370 = 0, $1371 = 0, $1372 = 0, $1373 = 0, $1374 = 0, $1375 = 0, $1376 = 0; + var $1377 = 0, $1378 = 0, $1379 = 0, $138 = 0, $1380 = 0, $1381 = 0, $1382 = 0, $1383 = 0, $1384 = 0, $1385 = 0, $1386 = 0, $1387 = 0, $1388 = 0, $1389 = 0, $139 = 0, $1390 = 0, $1391 = 0, $1392 = 0, $1393 = 0, $1394 = 0; + var $1395 = 0, $1396 = 0, $1397 = 0, $1398 = 0, $1399 = 0, $14 = 0, $140 = 0, $1400 = 0, $1401 = 0, $1402 = 0, $1403 = 0, $1404 = 0, $1405 = 0, $1406 = 0, $1407 = 0, $1408 = 0, $1409 = 0, $141 = 0, $1410 = 0, $1411 = 0; + var $1412 = 0, $1413 = 0, $1414 = 0, $1415 = 0, $1416 = 0, $1417 = 0, $1418 = 0, $1419 = 0, $142 = 0, $1420 = 0, $1421 = 0, $1422 = 0, $1423 = 0, $1424 = 0, $1425 = 0, $1426 = 0, $1427 = 0, $1428 = 0, $1429 = 0, $143 = 0; + var $1430 = 0, $1431 = 0, $1432 = 0, $1433 = 0, $1434 = 0, $1435 = 0, $1436 = 0, $1437 = 0, $1438 = 0, $1439 = 0, $144 = 0, $1440 = 0, $1441 = 0, $1442 = 0, $1443 = 0, $1444 = 0, $1445 = 0, $1446 = 0, $1447 = 0, $1448 = 0; + var $1449 = 0, $145 = 0, $1450 = 0, $1451 = 0, $1452 = 0, $1453 = 0, $1454 = 0, $1455 = 0, $1456 = 0, $1457 = 0, $1458 = 0, $1459 = 0, $146 = 0, $1460 = 0, $1461 = 0, $1462 = 0, $1463 = 0, $1464 = 0, $1465 = 0, $1466 = 0; + var $1467 = 0, $1468 = 0, $1469 = 0, $147 = 0, $1470 = 0, $1471 = 0, $1472 = 0, $1473 = 0, $1474 = 0, $1475 = 0, $1476 = 0, $1477 = 0, $1478 = 0, $1479 = 0, $148 = 0, $1480 = 0, $1481 = 0, $1482 = 0, $1483 = 0, $1484 = 0; + var $1485 = 0, $1486 = 0, $1487 = 0, $1488 = 0, $1489 = 0, $149 = 0, $1490 = 0, $1491 = 0, $1492 = 0, $1493 = 0, $1494 = 0, $1495 = 0, $1496 = 0, $1497 = 0, $1498 = 0, $1499 = 0, $15 = 0, $150 = 0, $1500 = 0, $1501 = 0; + var $1502 = 0, $1503 = 0, $1504 = 0, $1505 = 0, $1506 = 0, $1507 = 0, $1508 = 0, $1509 = 0, $151 = 0, $1510 = 0, $1511 = 0, $1512 = 0, $1513 = 0, $1514 = 0, $1515 = 0, $1516 = 0, $1517 = 0, $1518 = 0, $1519 = 0, $152 = 0; + var $1520 = 0, $1521 = 0, $1522 = 0, $1523 = 0, $1524 = 0, $1525 = 0, $1526 = 0, $1527 = 0, $1528 = 0, $1529 = 0, $153 = 0, $1530 = 0, $1531 = 0, $1532 = 0, $1533 = 0, $1534 = 0, $1535 = 0, $1536 = 0, $1537 = 0, $1538 = 0; + var $1539 = 0, $154 = 0, $1540 = 0, $1541 = 0, $1542 = 0, $1543 = 0, $1544 = 0, $1545 = 0, $1546 = 0, $1547 = 0, $1548 = 0, $1549 = 0, $155 = 0, $1550 = 0, $1551 = 0, $1552 = 0, $1553 = 0, $1554 = 0, $1555 = 0, $1556 = 0; + var $1557 = 0, $1558 = 0, $1559 = 0, $156 = 0, $1560 = 0, $1561 = 0, $1562 = 0, $1563 = 0, $1564 = 0, $1565 = 0, $1566 = 0, $1567 = 0, $1568 = 0, $1569 = 0, $157 = 0, $1570 = 0, $1571 = 0, $1572 = 0, $1573 = 0, $1574 = 0; + var $1575 = 0, $1576 = 0, $1577 = 0, $1578 = 0, $1579 = 0, $158 = 0, $1580 = 0, $1581 = 0, $1582 = 0, $1583 = 0, $1584 = 0, $1585 = 0, $1586 = 0, $1587 = 0, $1588 = 0, $1589 = 0, $159 = 0, $1590 = 0, $1591 = 0, $1592 = 0; + var $1593 = 0, $1594 = 0, $1595 = 0, $1596 = 0, $1597 = 0, $1598 = 0, $1599 = 0, $16 = 0, $160 = 0, $1600 = 0, $1601 = 0, $1602 = 0, $1603 = 0, $1604 = 0, $1605 = 0, $1606 = 0, $1607 = 0, $1608 = 0, $1609 = 0, $161 = 0; + var $1610 = 0, $1611 = 0, $1612 = 0, $1613 = 0, $1614 = 0, $1615 = 0, $1616 = 0, $1617 = 0, $1618 = 0, $1619 = 0, $162 = 0, $1620 = 0, $1621 = 0, $1622 = 0, $1623 = 0, $1624 = 0, $1625 = 0, $1626 = 0, $1627 = 0, $1628 = 0; + var $1629 = 0, $163 = 0, $1630 = 0, $1631 = 0, $1632 = 0, $1633 = 0, $1634 = 0, $1635 = 0, $1636 = 0, $1637 = 0, $1638 = 0, $1639 = 0, $164 = 0, $1640 = 0, $1641 = 0, $1642 = 0, $1643 = 0, $1644 = 0, $1645 = 0, $1646 = 0; + var $1647 = 0, $1648 = 0, $1649 = 0, $165 = 0, $1650 = 0, $1651 = 0, $1652 = 0, $1653 = 0, $1654 = 0, $1655 = 0, $1656 = 0, $1657 = 0, $1658 = 0, $1659 = 0, $166 = 0, $1660 = 0, $1661 = 0, $1662 = 0, $1663 = 0, $1664 = 0; + var $1665 = 0, $1666 = 0, $1667 = 0, $1668 = 0, $1669 = 0, $167 = 0, $1670 = 0, $1671 = 0, $1672 = 0, $1673 = 0, $1674 = 0, $1675 = 0, $1676 = 0, $1677 = 0, $1678 = 0, $1679 = 0, $168 = 0, $1680 = 0, $1681 = 0, $1682 = 0; + var $1683 = 0, $1684 = 0, $1685 = 0, $1686 = 0, $1687 = 0, $1688 = 0, $1689 = 0, $169 = 0, $1690 = 0, $1691 = 0, $1692 = 0, $1693 = 0, $1694 = 0, $1695 = 0, $1696 = 0, $1697 = 0, $1698 = 0, $1699 = 0, $17 = 0, $170 = 0; + var $1700 = 0, $1701 = 0, $1702 = 0, $1703 = 0, $1704 = 0, $1705 = 0, $1706 = 0, $1707 = 0, $1708 = 0, $1709 = 0, $171 = 0, $1710 = 0, $1711 = 0, $1712 = 0, $1713 = 0, $1714 = 0, $1715 = 0, $1716 = 0, $1717 = 0, $1718 = 0; + var $1719 = 0, $172 = 0, $1720 = 0, $1721 = 0, $1722 = 0, $1723 = 0, $1724 = 0, $1725 = 0, $1726 = 0, $1727 = 0, $1728 = 0, $1729 = 0, $173 = 0, $1730 = 0, $1731 = 0, $1732 = 0, $1733 = 0, $1734 = 0, $1735 = 0, $1736 = 0; + var $1737 = 0, $1738 = 0, $1739 = 0, $174 = 0, $1740 = 0, $1741 = 0, $1742 = 0, $1743 = 0, $1744 = 0, $1745 = 0, $1746 = 0, $1747 = 0, $1748 = 0, $1749 = 0, $175 = 0, $1750 = 0, $1751 = 0, $1752 = 0, $1753 = 0, $1754 = 0; + var $1755 = 0, $1756 = 0, $1757 = 0, $1758 = 0, $1759 = 0, $176 = 0, $1760 = 0, $1761 = 0, $1762 = 0, $1763 = 0, $1764 = 0, $1765 = 0, $1766 = 0, $1767 = 0, $1768 = 0, $1769 = 0, $177 = 0, $1770 = 0, $1771 = 0, $1772 = 0; + var $1773 = 0, $1774 = 0, $1775 = 0, $1776 = 0, $1777 = 0, $1778 = 0, $1779 = 0, $178 = 0, $1780 = 0, $1781 = 0, $1782 = 0, $1783 = 0, $1784 = 0, $1785 = 0, $1786 = 0, $1787 = 0, $1788 = 0, $1789 = 0, $179 = 0, $1790 = 0; + var $1791 = 0, $1792 = 0, $1793 = 0, $1794 = 0, $1795 = 0, $1796 = 0, $1797 = 0, $1798 = 0, $1799 = 0, $18 = 0, $180 = 0, $1800 = 0, $1801 = 0, $1802 = 0, $1803 = 0, $1804 = 0, $1805 = 0, $1806 = 0, $1807 = 0, $1808 = 0; + var $1809 = 0, $181 = 0, $1810 = 0, $1811 = 0, $1812 = 0, $1813 = 0, $1814 = 0, $1815 = 0, $1816 = 0, $1817 = 0, $1818 = 0, $1819 = 0, $182 = 0, $1820 = 0, $1821 = 0, $1822 = 0, $1823 = 0, $1824 = 0, $1825 = 0, $1826 = 0; + var $1827 = 0, $1828 = 0, $1829 = 0, $183 = 0, $1830 = 0, $1831 = 0, $1832 = 0, $1833 = 0, $1834 = 0, $1835 = 0, $1836 = 0, $1837 = 0, $1838 = 0, $1839 = 0, $184 = 0, $1840 = 0, $1841 = 0, $1842 = 0, $1843 = 0, $1844 = 0; + var $1845 = 0, $1846 = 0, $1847 = 0, $1848 = 0, $1849 = 0, $185 = 0, $1850 = 0, $1851 = 0, $1852 = 0, $1853 = 0, $1854 = 0, $1855 = 0, $1856 = 0, $1857 = 0, $1858 = 0, $1859 = 0, $186 = 0, $1860 = 0, $1861 = 0, $1862 = 0; + var $1863 = 0, $1864 = 0, $1865 = 0, $1866 = 0, $1867 = 0, $1868 = 0, $1869 = 0, $187 = 0, $1870 = 0, $1871 = 0, $1872 = 0, $1873 = 0, $1874 = 0, $1875 = 0, $1876 = 0, $1877 = 0, $1878 = 0, $1879 = 0, $188 = 0, $1880 = 0; + var $1881 = 0, $1882 = 0, $1883 = 0, $1884 = 0, $1885 = 0, $1886 = 0, $1887 = 0, $1888 = 0, $1889 = 0, $189 = 0, $1890 = 0, $1891 = 0, $1892 = 0, $1893 = 0, $1894 = 0, $1895 = 0, $1896 = 0, $1897 = 0, $1898 = 0, $1899 = 0; + var $19 = 0, $190 = 0, $1900 = 0, $1901 = 0, $1902 = 0, $1903 = 0, $1904 = 0, $1905 = 0, $1906 = 0, $1907 = 0, $1908 = 0, $1909 = 0, $191 = 0, $1910 = 0, $1911 = 0, $1912 = 0, $1913 = 0, $1914 = 0, $1915 = 0, $1916 = 0; + var $1917 = 0, $1918 = 0, $1919 = 0, $192 = 0, $1920 = 0, $1921 = 0, $1922 = 0, $1923 = 0, $1924 = 0, $1925 = 0, $1926 = 0, $1927 = 0, $1928 = 0, $1929 = 0, $193 = 0, $1930 = 0, $1931 = 0, $1932 = 0, $1933 = 0, $1934 = 0; + var $1935 = 0, $1936 = 0, $1937 = 0, $1938 = 0, $1939 = 0, $194 = 0, $1940 = 0, $1941 = 0, $1942 = 0, $1943 = 0, $1944 = 0, $1945 = 0, $1946 = 0, $1947 = 0, $1948 = 0, $1949 = 0, $195 = 0, $1950 = 0, $1951 = 0, $1952 = 0; + var $1953 = 0, $1954 = 0, $1955 = 0, $1956 = 0, $1957 = 0, $1958 = 0, $1959 = 0, $196 = 0, $1960 = 0, $1961 = 0, $1962 = 0, $1963 = 0, $1964 = 0, $1965 = 0, $1966 = 0, $1967 = 0, $1968 = 0, $1969 = 0, $197 = 0, $1970 = 0; + var $1971 = 0, $1972 = 0, $1973 = 0, $1974 = 0, $1975 = 0, $1976 = 0, $1977 = 0, $1978 = 0, $1979 = 0, $198 = 0, $1980 = 0, $1981 = 0, $1982 = 0, $1983 = 0, $1984 = 0, $1985 = 0, $1986 = 0, $1987 = 0, $1988 = 0, $1989 = 0; + var $199 = 0, $1990 = 0, $1991 = 0, $1992 = 0, $1993 = 0, $1994 = 0, $1995 = 0, $1996 = 0, $1997 = 0, $1998 = 0, $1999 = 0, $2 = 0, $20 = 0, $200 = 0, $2000 = 0, $2001 = 0, $2002 = 0, $2003 = 0, $2004 = 0, $2005 = 0; + var $2006 = 0, $2007 = 0, $2008 = 0, $2009 = 0, $201 = 0, $2010 = 0, $2011 = 0, $2012 = 0, $2013 = 0, $2014 = 0, $2015 = 0, $2016 = 0, $2017 = 0, $2018 = 0, $2019 = 0, $202 = 0, $2020 = 0, $2021 = 0, $2022 = 0, $2023 = 0; + var $2024 = 0, $2025 = 0, $2026 = 0, $2027 = 0, $2028 = 0, $2029 = 0, $203 = 0, $2030 = 0, $2031 = 0, $2032 = 0, $2033 = 0, $2034 = 0, $2035 = 0, $2036 = 0, $2037 = 0, $2038 = 0, $2039 = 0, $204 = 0, $2040 = 0, $2041 = 0; + var $2042 = 0, $2043 = 0, $2044 = 0, $2045 = 0, $2046 = 0, $2047 = 0, $2048 = 0, $2049 = 0, $205 = 0, $2050 = 0, $2051 = 0, $2052 = 0, $2053 = 0, $2054 = 0, $2055 = 0, $2056 = 0, $2057 = 0, $2058 = 0, $2059 = 0, $206 = 0; + var $2060 = 0, $2061 = 0, $2062 = 0, $2063 = 0, $2064 = 0, $2065 = 0, $2066 = 0, $2067 = 0, $2068 = 0, $2069 = 0, $207 = 0, $2070 = 0, $2071 = 0, $2072 = 0, $2073 = 0, $2074 = 0, $2075 = 0, $2076 = 0, $2077 = 0, $2078 = 0; + var $2079 = 0, $208 = 0, $2080 = 0, $2081 = 0, $2082 = 0, $2083 = 0, $2084 = 0, $2085 = 0, $2086 = 0, $2087 = 0, $2088 = 0, $2089 = 0, $209 = 0, $2090 = 0, $2091 = 0, $2092 = 0, $2093 = 0, $2094 = 0, $2095 = 0, $2096 = 0; + var $2097 = 0, $2098 = 0, $2099 = 0, $21 = 0, $210 = 0, $2100 = 0, $2101 = 0, $2102 = 0, $2103 = 0, $2104 = 0, $2105 = 0, $2106 = 0, $2107 = 0, $2108 = 0, $2109 = 0, $211 = 0, $2110 = 0, $2111 = 0, $2112 = 0, $2113 = 0; + var $2114 = 0, $2115 = 0, $2116 = 0, $2117 = 0, $2118 = 0, $2119 = 0, $212 = 0, $2120 = 0, $2121 = 0, $2122 = 0, $2123 = 0, $2124 = 0, $2125 = 0, $2126 = 0, $2127 = 0, $2128 = 0, $2129 = 0, $213 = 0, $2130 = 0, $2131 = 0; + var $2132 = 0, $2133 = 0, $2134 = 0, $2135 = 0, $2136 = 0, $2137 = 0, $2138 = 0, $2139 = 0, $214 = 0, $2140 = 0, $2141 = 0, $2142 = 0, $2143 = 0, $2144 = 0, $2145 = 0, $2146 = 0, $2147 = 0, $2148 = 0, $2149 = 0, $215 = 0; + var $2150 = 0, $2151 = 0, $2152 = 0, $2153 = 0, $2154 = 0, $2155 = 0, $2156 = 0, $2157 = 0, $2158 = 0, $2159 = 0, $216 = 0, $2160 = 0, $2161 = 0, $2162 = 0, $2163 = 0, $2164 = 0, $2165 = 0, $2166 = 0, $2167 = 0, $2168 = 0; + var $2169 = 0, $217 = 0, $2170 = 0, $2171 = 0, $2172 = 0, $2173 = 0, $2174 = 0, $2175 = 0, $2176 = 0, $2177 = 0, $2178 = 0, $2179 = 0, $218 = 0, $2180 = 0, $2181 = 0, $2182 = 0, $2183 = 0, $2184 = 0, $2185 = 0, $2186 = 0; + var $2187 = 0, $2188 = 0, $2189 = 0, $219 = 0, $2190 = 0, $2191 = 0, $2192 = 0, $2193 = 0, $2194 = 0, $2195 = 0, $2196 = 0, $2197 = 0, $2198 = 0, $2199 = 0, $22 = 0, $220 = 0, $2200 = 0, $2201 = 0, $2202 = 0, $2203 = 0; + var $2204 = 0, $2205 = 0, $2206 = 0, $2207 = 0, $2208 = 0, $2209 = 0, $221 = 0, $2210 = 0, $2211 = 0, $2212 = 0, $2213 = 0, $2214 = 0, $2215 = 0, $2216 = 0, $2217 = 0, $2218 = 0, $2219 = 0, $222 = 0, $2220 = 0, $2221 = 0; + var $2222 = 0, $2223 = 0, $2224 = 0, $2225 = 0, $2226 = 0, $2227 = 0, $2228 = 0, $2229 = 0, $223 = 0, $2230 = 0, $2231 = 0, $2232 = 0, $2233 = 0, $2234 = 0, $2235 = 0, $2236 = 0, $2237 = 0, $2238 = 0, $2239 = 0, $224 = 0; + var $2240 = 0, $2241 = 0, $2242 = 0, $2243 = 0, $2244 = 0, $2245 = 0, $2246 = 0, $2247 = 0, $2248 = 0, $2249 = 0, $225 = 0, $2250 = 0, $2251 = 0, $2252 = 0, $2253 = 0, $2254 = 0, $2255 = 0, $2256 = 0, $2257 = 0, $2258 = 0; + var $2259 = 0, $226 = 0, $2260 = 0, $2261 = 0, $2262 = 0, $2263 = 0, $2264 = 0, $2265 = 0, $2266 = 0, $2267 = 0, $2268 = 0, $2269 = 0, $227 = 0, $2270 = 0, $2271 = 0, $2272 = 0, $2273 = 0, $2274 = 0, $2275 = 0, $2276 = 0; + var $2277 = 0, $2278 = 0, $2279 = 0, $228 = 0, $2280 = 0, $2281 = 0, $2282 = 0, $2283 = 0, $2284 = 0, $2285 = 0, $2286 = 0, $2287 = 0, $2288 = 0, $2289 = 0, $229 = 0, $2290 = 0, $2291 = 0, $2292 = 0, $2293 = 0, $2294 = 0; + var $2295 = 0, $2296 = 0, $2297 = 0, $2298 = 0, $2299 = 0, $23 = 0, $230 = 0, $2300 = 0, $2301 = 0, $2302 = 0, $2303 = 0, $2304 = 0, $2305 = 0, $2306 = 0, $2307 = 0, $2308 = 0, $2309 = 0, $231 = 0, $2310 = 0, $2311 = 0; + var $2312 = 0, $2313 = 0, $2314 = 0, $2315 = 0, $2316 = 0, $2317 = 0, $2318 = 0, $2319 = 0, $232 = 0, $2320 = 0, $2321 = 0, $2322 = 0, $2323 = 0, $2324 = 0, $2325 = 0, $2326 = 0, $2327 = 0, $2328 = 0, $2329 = 0, $233 = 0; + var $2330 = 0, $2331 = 0, $2332 = 0, $2333 = 0, $2334 = 0, $2335 = 0, $2336 = 0, $2337 = 0, $2338 = 0, $2339 = 0, $234 = 0, $2340 = 0, $2341 = 0, $2342 = 0, $2343 = 0, $2344 = 0, $2345 = 0, $2346 = 0, $2347 = 0, $2348 = 0; + var $2349 = 0, $235 = 0, $2350 = 0, $2351 = 0, $2352 = 0, $2353 = 0, $2354 = 0, $2355 = 0, $2356 = 0, $2357 = 0, $2358 = 0, $2359 = 0, $236 = 0, $2360 = 0, $2361 = 0, $2362 = 0, $2363 = 0, $2364 = 0, $2365 = 0, $2366 = 0; + var $2367 = 0, $2368 = 0, $2369 = 0, $237 = 0, $2370 = 0, $2371 = 0, $2372 = 0, $2373 = 0, $2374 = 0, $2375 = 0, $2376 = 0, $2377 = 0, $2378 = 0, $2379 = 0, $238 = 0, $2380 = 0, $2381 = 0, $2382 = 0, $2383 = 0, $2384 = 0; + var $2385 = 0, $2386 = 0, $2387 = 0, $2388 = 0, $2389 = 0, $239 = 0, $2390 = 0, $2391 = 0, $2392 = 0, $2393 = 0, $2394 = 0, $2395 = 0, $2396 = 0, $2397 = 0, $2398 = 0, $2399 = 0, $24 = 0, $240 = 0, $2400 = 0, $2401 = 0; + var $2402 = 0, $2403 = 0, $2404 = 0, $2405 = 0, $2406 = 0, $2407 = 0, $2408 = 0, $2409 = 0, $241 = 0, $2410 = 0, $2411 = 0, $2412 = 0, $2413 = 0, $2414 = 0, $2415 = 0, $2416 = 0, $2417 = 0, $2418 = 0, $2419 = 0, $242 = 0; + var $2420 = 0, $2421 = 0, $2422 = 0, $2423 = 0, $2424 = 0, $2425 = 0, $2426 = 0, $2427 = 0, $2428 = 0, $2429 = 0, $243 = 0, $2430 = 0, $2431 = 0, $2432 = 0, $2433 = 0, $2434 = 0, $2435 = 0, $2436 = 0, $2437 = 0, $2438 = 0; + var $2439 = 0, $244 = 0, $2440 = 0, $2441 = 0, $2442 = 0, $2443 = 0, $2444 = 0, $2445 = 0, $2446 = 0, $2447 = 0, $2448 = 0, $2449 = 0, $245 = 0, $2450 = 0, $2451 = 0, $2452 = 0, $2453 = 0, $2454 = 0, $2455 = 0, $2456 = 0; + var $2457 = 0, $2458 = 0, $2459 = 0, $246 = 0, $2460 = 0, $2461 = 0, $2462 = 0, $2463 = 0, $2464 = 0, $2465 = 0, $2466 = 0, $2467 = 0, $2468 = 0, $2469 = 0, $247 = 0, $2470 = 0, $2471 = 0, $2472 = 0, $2473 = 0, $2474 = 0; + var $2475 = 0, $2476 = 0, $2477 = 0, $2478 = 0, $2479 = 0, $248 = 0, $2480 = 0, $2481 = 0, $2482 = 0, $2483 = 0, $2484 = 0, $2485 = 0, $2486 = 0, $2487 = 0, $2488 = 0, $2489 = 0, $249 = 0, $2490 = 0, $2491 = 0, $2492 = 0; + var $2493 = 0, $2494 = 0, $2495 = 0, $2496 = 0, $2497 = 0, $2498 = 0, $2499 = 0, $25 = 0, $250 = 0, $2500 = 0, $2501 = 0, $2502 = 0, $2503 = 0, $2504 = 0, $2505 = 0, $2506 = 0, $2507 = 0, $2508 = 0, $2509 = 0, $251 = 0; + var $2510 = 0, $2511 = 0, $2512 = 0, $2513 = 0, $2514 = 0, $2515 = 0, $2516 = 0, $2517 = 0, $2518 = 0, $2519 = 0, $252 = 0, $2520 = 0, $2521 = 0, $2522 = 0, $2523 = 0, $2524 = 0, $2525 = 0, $2526 = 0, $2527 = 0, $2528 = 0; + var $2529 = 0, $253 = 0, $2530 = 0, $2531 = 0, $2532 = 0, $2533 = 0, $2534 = 0, $2535 = 0, $2536 = 0, $2537 = 0, $2538 = 0, $2539 = 0, $254 = 0, $2540 = 0, $2541 = 0, $2542 = 0, $2543 = 0, $2544 = 0, $2545 = 0, $2546 = 0; + var $2547 = 0, $2548 = 0, $2549 = 0, $255 = 0, $2550 = 0, $2551 = 0, $2552 = 0, $2553 = 0, $2554 = 0, $2555 = 0, $2556 = 0, $2557 = 0, $2558 = 0, $2559 = 0, $256 = 0, $2560 = 0, $2561 = 0, $2562 = 0, $2563 = 0, $2564 = 0; + var $2565 = 0, $2566 = 0, $2567 = 0, $2568 = 0, $2569 = 0, $257 = 0, $2570 = 0, $2571 = 0, $2572 = 0, $2573 = 0, $2574 = 0, $2575 = 0, $2576 = 0, $2577 = 0, $2578 = 0, $2579 = 0, $258 = 0, $2580 = 0, $2581 = 0, $2582 = 0; + var $2583 = 0, $2584 = 0, $2585 = 0, $2586 = 0, $2587 = 0, $2588 = 0, $2589 = 0, $259 = 0, $2590 = 0, $2591 = 0, $2592 = 0, $2593 = 0, $2594 = 0, $2595 = 0, $2596 = 0, $2597 = 0, $2598 = 0, $2599 = 0, $26 = 0, $260 = 0; + var $2600 = 0, $2601 = 0, $2602 = 0, $2603 = 0, $2604 = 0, $2605 = 0, $2606 = 0, $2607 = 0, $2608 = 0, $2609 = 0, $261 = 0, $2610 = 0, $2611 = 0, $2612 = 0, $2613 = 0, $2614 = 0, $2615 = 0, $2616 = 0, $2617 = 0, $2618 = 0; + var $2619 = 0, $262 = 0, $2620 = 0, $2621 = 0, $2622 = 0, $2623 = 0, $2624 = 0, $2625 = 0, $2626 = 0, $2627 = 0, $2628 = 0, $2629 = 0, $263 = 0, $2630 = 0, $2631 = 0, $2632 = 0, $2633 = 0, $2634 = 0, $2635 = 0, $2636 = 0; + var $2637 = 0, $2638 = 0, $2639 = 0, $264 = 0, $2640 = 0, $2641 = 0, $2642 = 0, $2643 = 0, $2644 = 0, $2645 = 0, $2646 = 0, $2647 = 0, $2648 = 0, $2649 = 0, $265 = 0, $2650 = 0, $2651 = 0, $2652 = 0, $2653 = 0, $2654 = 0; + var $2655 = 0, $2656 = 0, $2657 = 0, $2658 = 0, $2659 = 0, $266 = 0, $2660 = 0, $2661 = 0, $2662 = 0, $2663 = 0, $2664 = 0, $2665 = 0, $2666 = 0, $2667 = 0, $2668 = 0, $2669 = 0, $267 = 0, $2670 = 0, $2671 = 0, $2672 = 0; + var $2673 = 0, $2674 = 0, $2675 = 0, $2676 = 0, $2677 = 0, $2678 = 0, $2679 = 0, $268 = 0, $2680 = 0, $2681 = 0, $2682 = 0, $2683 = 0, $2684 = 0, $2685 = 0, $2686 = 0, $2687 = 0, $2688 = 0, $2689 = 0, $269 = 0, $2690 = 0; + var $2691 = 0, $2692 = 0, $2693 = 0, $2694 = 0, $2695 = 0, $2696 = 0, $2697 = 0, $2698 = 0, $2699 = 0, $27 = 0, $270 = 0, $2700 = 0, $2701 = 0, $2702 = 0, $2703 = 0, $2704 = 0, $2705 = 0, $2706 = 0, $2707 = 0, $2708 = 0; + var $2709 = 0, $271 = 0, $2710 = 0, $2711 = 0, $2712 = 0, $2713 = 0, $2714 = 0, $2715 = 0, $2716 = 0, $2717 = 0, $2718 = 0, $2719 = 0, $272 = 0, $2720 = 0, $2721 = 0, $2722 = 0, $2723 = 0, $2724 = 0, $2725 = 0, $2726 = 0; + var $2727 = 0, $2728 = 0, $2729 = 0, $273 = 0, $2730 = 0, $2731 = 0, $2732 = 0, $2733 = 0, $2734 = 0, $2735 = 0, $2736 = 0, $2737 = 0, $2738 = 0, $2739 = 0, $274 = 0, $2740 = 0, $2741 = 0, $2742 = 0, $2743 = 0, $2744 = 0; + var $2745 = 0, $2746 = 0, $2747 = 0, $2748 = 0, $2749 = 0, $275 = 0, $2750 = 0, $2751 = 0, $2752 = 0, $2753 = 0, $2754 = 0, $2755 = 0, $2756 = 0, $2757 = 0, $2758 = 0, $2759 = 0, $276 = 0, $2760 = 0, $2761 = 0, $2762 = 0; + var $2763 = 0, $2764 = 0, $2765 = 0, $2766 = 0, $2767 = 0, $2768 = 0, $2769 = 0, $277 = 0, $2770 = 0, $2771 = 0, $2772 = 0, $2773 = 0, $2774 = 0, $2775 = 0, $2776 = 0, $2777 = 0, $2778 = 0, $2779 = 0, $278 = 0, $2780 = 0; + var $2781 = 0, $2782 = 0, $2783 = 0, $2784 = 0, $2785 = 0, $2786 = 0, $2787 = 0, $2788 = 0, $2789 = 0, $279 = 0, $2790 = 0, $2791 = 0, $2792 = 0, $2793 = 0, $2794 = 0, $2795 = 0, $2796 = 0, $2797 = 0, $2798 = 0, $2799 = 0; + var $28 = 0, $280 = 0, $2800 = 0, $2801 = 0, $2802 = 0, $2803 = 0, $2804 = 0, $2805 = 0, $2806 = 0, $2807 = 0, $2808 = 0, $2809 = 0, $281 = 0, $2810 = 0, $2811 = 0, $2812 = 0, $2813 = 0, $2814 = 0, $2815 = 0, $2816 = 0; + var $2817 = 0, $2818 = 0, $2819 = 0, $282 = 0, $2820 = 0, $2821 = 0, $2822 = 0, $2823 = 0, $2824 = 0, $2825 = 0, $2826 = 0, $2827 = 0, $2828 = 0, $2829 = 0, $283 = 0, $2830 = 0, $2831 = 0, $2832 = 0, $2833 = 0, $2834 = 0; + var $2835 = 0, $2836 = 0, $2837 = 0, $2838 = 0, $2839 = 0, $284 = 0, $2840 = 0, $2841 = 0, $2842 = 0, $2843 = 0, $2844 = 0, $2845 = 0, $2846 = 0, $2847 = 0, $2848 = 0, $2849 = 0, $285 = 0, $2850 = 0, $2851 = 0, $2852 = 0; + var $2853 = 0, $2854 = 0, $2855 = 0, $2856 = 0, $2857 = 0, $2858 = 0, $2859 = 0, $286 = 0, $2860 = 0, $2861 = 0, $2862 = 0, $2863 = 0, $2864 = 0, $2865 = 0, $2866 = 0, $2867 = 0, $2868 = 0, $2869 = 0, $287 = 0, $2870 = 0; + var $2871 = 0, $2872 = 0, $2873 = 0, $2874 = 0, $2875 = 0, $2876 = 0, $2877 = 0, $2878 = 0, $2879 = 0, $288 = 0, $2880 = 0, $2881 = 0, $2882 = 0, $2883 = 0, $2884 = 0, $2885 = 0, $2886 = 0, $2887 = 0, $2888 = 0, $2889 = 0; + var $289 = 0, $2890 = 0, $2891 = 0, $2892 = 0, $2893 = 0, $2894 = 0, $2895 = 0, $2896 = 0, $2897 = 0, $2898 = 0, $2899 = 0, $29 = 0, $290 = 0, $2900 = 0, $2901 = 0, $2902 = 0, $2903 = 0, $2904 = 0, $2905 = 0, $2906 = 0; + var $2907 = 0, $2908 = 0, $2909 = 0, $291 = 0, $2910 = 0, $2911 = 0, $2912 = 0, $2913 = 0, $2914 = 0, $2915 = 0, $2916 = 0, $2917 = 0, $2918 = 0, $2919 = 0, $292 = 0, $2920 = 0, $2921 = 0, $2922 = 0, $2923 = 0, $2924 = 0; + var $2925 = 0, $2926 = 0, $2927 = 0, $2928 = 0, $2929 = 0, $293 = 0, $2930 = 0, $2931 = 0, $2932 = 0, $2933 = 0, $2934 = 0, $2935 = 0, $2936 = 0, $2937 = 0, $2938 = 0, $2939 = 0, $294 = 0, $2940 = 0, $2941 = 0, $2942 = 0; + var $2943 = 0, $2944 = 0, $2945 = 0, $2946 = 0, $2947 = 0, $2948 = 0, $2949 = 0, $295 = 0, $2950 = 0, $2951 = 0, $2952 = 0, $2953 = 0, $2954 = 0, $2955 = 0, $2956 = 0, $2957 = 0, $2958 = 0, $2959 = 0, $296 = 0, $2960 = 0; + var $2961 = 0, $2962 = 0, $2963 = 0, $2964 = 0, $2965 = 0, $2966 = 0, $2967 = 0, $2968 = 0, $2969 = 0, $297 = 0, $2970 = 0, $2971 = 0, $2972 = 0, $2973 = 0, $2974 = 0, $2975 = 0, $2976 = 0, $2977 = 0, $2978 = 0, $2979 = 0; + var $298 = 0, $2980 = 0, $2981 = 0, $2982 = 0, $2983 = 0, $2984 = 0, $2985 = 0, $2986 = 0, $2987 = 0, $2988 = 0, $2989 = 0, $299 = 0, $2990 = 0, $2991 = 0, $2992 = 0, $2993 = 0, $2994 = 0, $2995 = 0, $2996 = 0, $2997 = 0; + var $2998 = 0, $2999 = 0, $3 = 0, $30 = 0, $300 = 0, $3000 = 0, $3001 = 0, $3002 = 0, $3003 = 0, $3004 = 0, $3005 = 0, $3006 = 0, $3007 = 0, $3008 = 0, $3009 = 0, $301 = 0, $3010 = 0, $3011 = 0, $3012 = 0, $3013 = 0; + var $3014 = 0, $3015 = 0, $3016 = 0, $3017 = 0, $3018 = 0, $3019 = 0, $302 = 0, $3020 = 0, $3021 = 0, $3022 = 0, $3023 = 0, $3024 = 0, $3025 = 0, $3026 = 0, $3027 = 0, $3028 = 0, $3029 = 0, $303 = 0, $3030 = 0, $3031 = 0; + var $3032 = 0, $3033 = 0, $3034 = 0, $3035 = 0, $3036 = 0, $3037 = 0, $3038 = 0, $3039 = 0, $304 = 0, $3040 = 0, $3041 = 0, $3042 = 0, $3043 = 0, $3044 = 0, $3045 = 0, $3046 = 0, $3047 = 0, $3048 = 0, $3049 = 0, $305 = 0; + var $3050 = 0, $3051 = 0, $3052 = 0, $3053 = 0, $3054 = 0, $3055 = 0, $3056 = 0, $3057 = 0, $3058 = 0, $3059 = 0, $306 = 0, $3060 = 0, $3061 = 0, $3062 = 0, $3063 = 0, $3064 = 0, $3065 = 0, $3066 = 0, $3067 = 0, $3068 = 0; + var $3069 = 0, $307 = 0, $3070 = 0, $3071 = 0, $3072 = 0, $3073 = 0, $3074 = 0, $3075 = 0, $3076 = 0, $3077 = 0, $3078 = 0, $3079 = 0, $308 = 0, $3080 = 0, $3081 = 0, $3082 = 0, $3083 = 0, $3084 = 0, $3085 = 0, $3086 = 0; + var $3087 = 0, $3088 = 0, $3089 = 0, $309 = 0, $3090 = 0, $3091 = 0, $3092 = 0, $3093 = 0, $3094 = 0, $3095 = 0, $3096 = 0, $3097 = 0, $3098 = 0, $3099 = 0, $31 = 0, $310 = 0, $3100 = 0, $3101 = 0, $3102 = 0, $3103 = 0; + var $3104 = 0, $3105 = 0, $3106 = 0, $3107 = 0, $3108 = 0, $3109 = 0, $311 = 0, $3110 = 0, $3111 = 0, $3112 = 0, $3113 = 0, $3114 = 0, $3115 = 0, $3116 = 0, $3117 = 0, $3118 = 0, $3119 = 0, $312 = 0, $3120 = 0, $3121 = 0; + var $3122 = 0, $3123 = 0, $3124 = 0, $3125 = 0, $3126 = 0, $3127 = 0, $3128 = 0, $3129 = 0, $313 = 0, $3130 = 0, $3131 = 0, $3132 = 0, $3133 = 0, $3134 = 0, $3135 = 0, $3136 = 0, $3137 = 0, $3138 = 0, $3139 = 0, $314 = 0; + var $3140 = 0, $3141 = 0, $3142 = 0, $3143 = 0, $3144 = 0, $3145 = 0, $3146 = 0, $3147 = 0, $3148 = 0, $3149 = 0, $315 = 0, $3150 = 0, $3151 = 0, $3152 = 0, $3153 = 0, $3154 = 0, $3155 = 0, $3156 = 0, $3157 = 0, $3158 = 0; + var $3159 = 0, $316 = 0, $3160 = 0, $3161 = 0, $3162 = 0, $3163 = 0, $3164 = 0, $3165 = 0, $3166 = 0, $3167 = 0, $3168 = 0, $3169 = 0, $317 = 0, $3170 = 0, $3171 = 0, $3172 = 0, $3173 = 0, $3174 = 0, $3175 = 0, $3176 = 0; + var $3177 = 0, $3178 = 0, $3179 = 0, $318 = 0, $3180 = 0, $3181 = 0, $3182 = 0, $3183 = 0, $3184 = 0, $3185 = 0, $3186 = 0, $3187 = 0, $3188 = 0, $3189 = 0, $319 = 0, $3190 = 0, $3191 = 0, $3192 = 0, $3193 = 0, $3194 = 0; + var $3195 = 0, $3196 = 0, $3197 = 0, $3198 = 0, $3199 = 0, $32 = 0, $320 = 0, $3200 = 0, $3201 = 0, $3202 = 0, $3203 = 0, $3204 = 0, $3205 = 0, $3206 = 0, $3207 = 0, $3208 = 0, $3209 = 0, $321 = 0, $3210 = 0, $3211 = 0; + var $3212 = 0, $3213 = 0, $3214 = 0, $3215 = 0, $3216 = 0, $3217 = 0, $3218 = 0, $3219 = 0, $322 = 0, $3220 = 0, $3221 = 0, $3222 = 0, $3223 = 0, $3224 = 0, $3225 = 0, $3226 = 0, $3227 = 0, $3228 = 0, $3229 = 0, $323 = 0; + var $3230 = 0, $3231 = 0, $3232 = 0, $3233 = 0, $3234 = 0, $3235 = 0, $3236 = 0, $3237 = 0, $3238 = 0, $3239 = 0, $324 = 0, $3240 = 0, $3241 = 0, $3242 = 0, $3243 = 0, $3244 = 0, $3245 = 0, $3246 = 0, $3247 = 0, $3248 = 0; + var $3249 = 0, $325 = 0, $3250 = 0, $3251 = 0, $3252 = 0, $3253 = 0, $3254 = 0, $3255 = 0, $3256 = 0, $3257 = 0, $3258 = 0, $3259 = 0, $326 = 0, $3260 = 0, $3261 = 0, $3262 = 0, $3263 = 0, $3264 = 0, $3265 = 0, $3266 = 0; + var $3267 = 0, $3268 = 0, $3269 = 0, $327 = 0, $3270 = 0, $3271 = 0, $3272 = 0, $3273 = 0, $3274 = 0, $3275 = 0, $3276 = 0, $3277 = 0, $3278 = 0, $3279 = 0, $328 = 0, $3280 = 0, $3281 = 0, $3282 = 0, $3283 = 0, $3284 = 0; + var $3285 = 0, $3286 = 0, $3287 = 0, $3288 = 0, $3289 = 0, $329 = 0, $3290 = 0, $3291 = 0, $3292 = 0, $3293 = 0, $3294 = 0, $3295 = 0, $3296 = 0, $3297 = 0, $3298 = 0, $3299 = 0, $33 = 0, $330 = 0, $3300 = 0, $3301 = 0; + var $3302 = 0, $3303 = 0, $3304 = 0, $3305 = 0, $3306 = 0, $3307 = 0, $3308 = 0, $3309 = 0, $331 = 0, $3310 = 0, $3311 = 0, $3312 = 0, $3313 = 0, $3314 = 0, $3315 = 0, $3316 = 0, $3317 = 0, $3318 = 0, $3319 = 0, $332 = 0; + var $3320 = 0, $3321 = 0, $3322 = 0, $3323 = 0, $3324 = 0, $3325 = 0, $3326 = 0, $3327 = 0, $3328 = 0, $3329 = 0, $333 = 0, $3330 = 0, $3331 = 0, $3332 = 0, $3333 = 0, $3334 = 0, $3335 = 0, $3336 = 0, $3337 = 0, $3338 = 0; + var $3339 = 0, $334 = 0, $3340 = 0, $3341 = 0, $3342 = 0, $3343 = 0, $3344 = 0, $3345 = 0, $3346 = 0, $3347 = 0, $3348 = 0, $3349 = 0, $335 = 0, $3350 = 0, $3351 = 0, $3352 = 0, $3353 = 0, $3354 = 0, $3355 = 0, $3356 = 0; + var $3357 = 0, $3358 = 0, $3359 = 0, $336 = 0, $3360 = 0, $3361 = 0, $3362 = 0, $3363 = 0, $3364 = 0, $3365 = 0, $3366 = 0, $3367 = 0, $3368 = 0, $3369 = 0, $337 = 0, $3370 = 0, $3371 = 0, $3372 = 0, $3373 = 0, $3374 = 0; + var $3375 = 0, $3376 = 0, $3377 = 0, $3378 = 0, $3379 = 0, $338 = 0, $3380 = 0, $3381 = 0, $3382 = 0, $3383 = 0, $3384 = 0, $3385 = 0, $3386 = 0, $3387 = 0, $3388 = 0, $3389 = 0, $339 = 0, $3390 = 0, $3391 = 0, $3392 = 0; + var $3393 = 0, $3394 = 0, $3395 = 0, $3396 = 0, $3397 = 0, $3398 = 0, $3399 = 0, $34 = 0, $340 = 0, $3400 = 0, $3401 = 0, $3402 = 0, $3403 = 0, $3404 = 0, $3405 = 0, $3406 = 0, $3407 = 0, $3408 = 0, $3409 = 0, $341 = 0; + var $3410 = 0, $3411 = 0, $3412 = 0, $3413 = 0, $3414 = 0, $3415 = 0, $3416 = 0, $3417 = 0, $3418 = 0, $3419 = 0, $342 = 0, $3420 = 0, $3421 = 0, $3422 = 0, $3423 = 0, $3424 = 0, $3425 = 0, $3426 = 0, $3427 = 0, $3428 = 0; + var $3429 = 0, $343 = 0, $3430 = 0, $3431 = 0, $3432 = 0, $3433 = 0, $3434 = 0, $3435 = 0, $3436 = 0, $3437 = 0, $3438 = 0, $3439 = 0, $344 = 0, $3440 = 0, $3441 = 0, $3442 = 0, $3443 = 0, $3444 = 0, $3445 = 0, $3446 = 0; + var $3447 = 0, $3448 = 0, $3449 = 0, $345 = 0, $3450 = 0, $3451 = 0, $3452 = 0, $3453 = 0, $3454 = 0, $3455 = 0, $3456 = 0, $3457 = 0, $3458 = 0, $3459 = 0, $346 = 0, $3460 = 0, $3461 = 0, $3462 = 0, $3463 = 0, $3464 = 0; + var $3465 = 0, $3466 = 0, $3467 = 0, $3468 = 0, $3469 = 0, $347 = 0, $3470 = 0, $3471 = 0, $3472 = 0, $3473 = 0, $3474 = 0, $3475 = 0, $3476 = 0, $3477 = 0, $3478 = 0, $3479 = 0, $348 = 0, $3480 = 0, $3481 = 0, $3482 = 0; + var $3483 = 0, $3484 = 0, $3485 = 0, $3486 = 0, $3487 = 0, $3488 = 0, $3489 = 0, $349 = 0, $3490 = 0, $3491 = 0, $3492 = 0, $3493 = 0, $3494 = 0, $3495 = 0, $3496 = 0, $3497 = 0, $3498 = 0, $3499 = 0, $35 = 0, $350 = 0; + var $3500 = 0, $3501 = 0, $3502 = 0, $3503 = 0, $3504 = 0, $3505 = 0, $3506 = 0, $3507 = 0, $3508 = 0, $3509 = 0, $351 = 0, $3510 = 0, $3511 = 0, $3512 = 0, $3513 = 0, $3514 = 0, $3515 = 0, $3516 = 0, $3517 = 0, $3518 = 0; + var $3519 = 0, $352 = 0, $3520 = 0, $3521 = 0, $3522 = 0, $3523 = 0, $3524 = 0, $3525 = 0, $3526 = 0, $3527 = 0, $3528 = 0, $3529 = 0, $353 = 0, $3530 = 0, $3531 = 0, $3532 = 0, $3533 = 0, $3534 = 0, $3535 = 0, $3536 = 0; + var $3537 = 0, $3538 = 0, $3539 = 0, $354 = 0, $3540 = 0, $3541 = 0, $3542 = 0, $3543 = 0, $3544 = 0, $3545 = 0, $3546 = 0, $3547 = 0, $3548 = 0, $3549 = 0, $355 = 0, $3550 = 0, $3551 = 0, $3552 = 0, $3553 = 0, $3554 = 0; + var $3555 = 0, $3556 = 0, $3557 = 0, $3558 = 0, $3559 = 0, $356 = 0, $3560 = 0, $3561 = 0, $3562 = 0, $3563 = 0, $3564 = 0, $3565 = 0, $3566 = 0, $3567 = 0, $3568 = 0, $3569 = 0, $357 = 0, $3570 = 0, $3571 = 0, $3572 = 0; + var $3573 = 0, $3574 = 0, $3575 = 0, $3576 = 0, $3577 = 0, $3578 = 0, $3579 = 0, $358 = 0, $3580 = 0, $3581 = 0, $3582 = 0, $3583 = 0, $3584 = 0, $3585 = 0, $3586 = 0, $3587 = 0, $3588 = 0, $3589 = 0, $359 = 0, $3590 = 0; + var $3591 = 0, $3592 = 0, $3593 = 0, $3594 = 0, $3595 = 0, $3596 = 0, $3597 = 0, $3598 = 0, $3599 = 0, $36 = 0, $360 = 0, $3600 = 0, $3601 = 0, $3602 = 0, $3603 = 0, $3604 = 0, $3605 = 0, $3606 = 0, $3607 = 0, $3608 = 0; + var $3609 = 0, $361 = 0, $3610 = 0, $3611 = 0, $3612 = 0, $3613 = 0, $3614 = 0, $3615 = 0, $3616 = 0, $3617 = 0, $3618 = 0, $3619 = 0, $362 = 0, $3620 = 0, $3621 = 0, $3622 = 0, $3623 = 0, $3624 = 0, $3625 = 0, $3626 = 0; + var $3627 = 0, $3628 = 0, $3629 = 0, $363 = 0, $3630 = 0, $3631 = 0, $3632 = 0, $3633 = 0, $3634 = 0, $3635 = 0, $3636 = 0, $3637 = 0, $3638 = 0, $3639 = 0, $364 = 0, $3640 = 0, $3641 = 0, $3642 = 0, $3643 = 0, $3644 = 0; + var $3645 = 0, $3646 = 0, $3647 = 0, $3648 = 0, $3649 = 0, $365 = 0, $3650 = 0, $3651 = 0, $3652 = 0, $3653 = 0, $3654 = 0, $3655 = 0, $3656 = 0, $3657 = 0, $3658 = 0, $3659 = 0, $366 = 0, $3660 = 0, $3661 = 0, $3662 = 0; + var $3663 = 0, $3664 = 0, $3665 = 0, $3666 = 0, $3667 = 0, $3668 = 0, $3669 = 0, $367 = 0, $3670 = 0, $3671 = 0, $3672 = 0, $3673 = 0, $3674 = 0, $3675 = 0, $3676 = 0, $3677 = 0, $3678 = 0, $3679 = 0, $368 = 0, $3680 = 0; + var $3681 = 0, $3682 = 0, $3683 = 0, $3684 = 0, $3685 = 0, $3686 = 0, $3687 = 0, $3688 = 0, $3689 = 0, $369 = 0, $3690 = 0, $3691 = 0, $3692 = 0, $3693 = 0, $3694 = 0, $3695 = 0, $3696 = 0, $3697 = 0, $3698 = 0, $3699 = 0; + var $37 = 0, $370 = 0, $3700 = 0, $3701 = 0, $3702 = 0, $3703 = 0, $3704 = 0, $3705 = 0, $3706 = 0, $3707 = 0, $3708 = 0, $3709 = 0, $371 = 0, $3710 = 0, $3711 = 0, $3712 = 0, $3713 = 0, $3714 = 0, $3715 = 0, $3716 = 0; + var $3717 = 0, $3718 = 0, $3719 = 0, $372 = 0, $3720 = 0, $3721 = 0, $3722 = 0, $3723 = 0, $3724 = 0, $3725 = 0, $3726 = 0, $3727 = 0, $3728 = 0, $3729 = 0, $373 = 0, $3730 = 0, $3731 = 0, $3732 = 0, $3733 = 0, $3734 = 0; + var $3735 = 0, $3736 = 0, $3737 = 0, $3738 = 0, $3739 = 0, $374 = 0, $3740 = 0, $3741 = 0, $3742 = 0, $3743 = 0, $3744 = 0, $3745 = 0, $3746 = 0, $3747 = 0, $3748 = 0, $3749 = 0, $375 = 0, $3750 = 0, $3751 = 0, $3752 = 0; + var $3753 = 0, $3754 = 0, $3755 = 0, $3756 = 0, $3757 = 0, $3758 = 0, $3759 = 0, $376 = 0, $3760 = 0, $3761 = 0, $3762 = 0, $3763 = 0, $3764 = 0, $3765 = 0, $3766 = 0, $3767 = 0, $3768 = 0, $3769 = 0, $377 = 0, $3770 = 0; + var $3771 = 0, $3772 = 0, $3773 = 0, $3774 = 0, $3775 = 0, $3776 = 0, $3777 = 0, $3778 = 0, $3779 = 0, $378 = 0, $3780 = 0, $3781 = 0, $3782 = 0, $3783 = 0, $3784 = 0, $3785 = 0, $3786 = 0, $3787 = 0, $3788 = 0, $3789 = 0; + var $379 = 0, $3790 = 0, $3791 = 0, $3792 = 0, $3793 = 0, $3794 = 0, $3795 = 0, $3796 = 0, $3797 = 0, $3798 = 0, $3799 = 0, $38 = 0, $380 = 0, $3800 = 0, $3801 = 0, $3802 = 0, $3803 = 0, $3804 = 0, $3805 = 0, $3806 = 0; + var $3807 = 0, $3808 = 0, $3809 = 0, $381 = 0, $3810 = 0, $3811 = 0, $3812 = 0, $3813 = 0, $3814 = 0, $3815 = 0, $3816 = 0, $3817 = 0, $3818 = 0, $3819 = 0, $382 = 0, $3820 = 0, $3821 = 0, $3822 = 0, $3823 = 0, $3824 = 0; + var $3825 = 0, $3826 = 0, $3827 = 0, $3828 = 0, $3829 = 0, $383 = 0, $3830 = 0, $3831 = 0, $3832 = 0, $3833 = 0, $3834 = 0, $3835 = 0, $3836 = 0, $3837 = 0, $3838 = 0, $3839 = 0, $384 = 0, $3840 = 0, $3841 = 0, $3842 = 0; + var $3843 = 0, $3844 = 0, $3845 = 0, $3846 = 0, $3847 = 0, $3848 = 0, $3849 = 0, $385 = 0, $3850 = 0, $3851 = 0, $3852 = 0, $3853 = 0, $3854 = 0, $3855 = 0, $3856 = 0, $3857 = 0, $3858 = 0, $3859 = 0, $386 = 0, $3860 = 0; + var $3861 = 0, $3862 = 0, $3863 = 0, $3864 = 0, $3865 = 0, $3866 = 0, $3867 = 0, $3868 = 0, $3869 = 0, $387 = 0, $3870 = 0, $3871 = 0, $3872 = 0, $3873 = 0, $3874 = 0, $3875 = 0, $3876 = 0, $3877 = 0, $3878 = 0, $3879 = 0; + var $388 = 0, $3880 = 0, $3881 = 0, $3882 = 0, $3883 = 0, $3884 = 0, $3885 = 0, $3886 = 0, $3887 = 0, $3888 = 0, $3889 = 0, $389 = 0, $3890 = 0, $3891 = 0, $3892 = 0, $3893 = 0, $3894 = 0, $3895 = 0, $3896 = 0, $3897 = 0; + var $3898 = 0, $3899 = 0, $39 = 0, $390 = 0, $3900 = 0, $3901 = 0, $3902 = 0, $3903 = 0, $3904 = 0, $3905 = 0, $3906 = 0, $3907 = 0, $3908 = 0, $3909 = 0, $391 = 0, $3910 = 0, $3911 = 0, $3912 = 0, $3913 = 0, $3914 = 0; + var $3915 = 0, $3916 = 0, $3917 = 0, $3918 = 0, $3919 = 0, $392 = 0, $3920 = 0, $3921 = 0, $3922 = 0, $3923 = 0, $3924 = 0, $3925 = 0, $3926 = 0, $3927 = 0, $3928 = 0, $3929 = 0, $393 = 0, $3930 = 0, $3931 = 0, $3932 = 0; + var $3933 = 0, $3934 = 0, $3935 = 0, $3936 = 0, $3937 = 0, $3938 = 0, $3939 = 0, $394 = 0, $3940 = 0, $3941 = 0, $3942 = 0, $3943 = 0, $3944 = 0, $3945 = 0, $3946 = 0, $3947 = 0, $3948 = 0, $3949 = 0, $395 = 0, $3950 = 0; + var $3951 = 0, $3952 = 0, $3953 = 0, $3954 = 0, $3955 = 0, $3956 = 0, $3957 = 0, $3958 = 0, $3959 = 0, $396 = 0, $3960 = 0, $3961 = 0, $3962 = 0, $3963 = 0, $3964 = 0, $3965 = 0, $3966 = 0, $3967 = 0, $3968 = 0, $3969 = 0; + var $397 = 0, $3970 = 0, $3971 = 0, $3972 = 0, $3973 = 0, $3974 = 0, $3975 = 0, $3976 = 0, $3977 = 0, $3978 = 0, $3979 = 0, $398 = 0, $3980 = 0, $3981 = 0, $3982 = 0, $3983 = 0, $3984 = 0, $3985 = 0, $3986 = 0, $3987 = 0; + var $3988 = 0, $3989 = 0, $399 = 0, $3990 = 0, $3991 = 0, $3992 = 0, $3993 = 0, $3994 = 0, $3995 = 0, $3996 = 0, $3997 = 0, $3998 = 0, $3999 = 0, $4 = 0, $40 = 0, $400 = 0, $4000 = 0, $4001 = 0, $4002 = 0, $4003 = 0; + var $4004 = 0, $4005 = 0, $4006 = 0, $4007 = 0, $4008 = 0, $4009 = 0, $401 = 0, $4010 = 0, $4011 = 0, $4012 = 0, $4013 = 0, $4014 = 0, $4015 = 0, $4016 = 0, $4017 = 0, $4018 = 0, $4019 = 0, $402 = 0, $4020 = 0, $4021 = 0; + var $4022 = 0, $4023 = 0, $4024 = 0, $4025 = 0, $4026 = 0, $4027 = 0, $4028 = 0, $4029 = 0, $403 = 0, $4030 = 0, $4031 = 0, $4032 = 0, $4033 = 0, $4034 = 0, $4035 = 0, $4036 = 0, $4037 = 0, $4038 = 0, $4039 = 0, $404 = 0; + var $4040 = 0, $4041 = 0, $4042 = 0, $4043 = 0, $4044 = 0, $4045 = 0, $4046 = 0, $4047 = 0, $4048 = 0, $4049 = 0, $405 = 0, $4050 = 0, $4051 = 0, $4052 = 0, $4053 = 0, $4054 = 0, $4055 = 0, $4056 = 0, $4057 = 0, $4058 = 0; + var $4059 = 0, $406 = 0, $4060 = 0, $4061 = 0, $4062 = 0, $4063 = 0, $4064 = 0, $4065 = 0, $4066 = 0, $4067 = 0, $4068 = 0, $4069 = 0, $407 = 0, $4070 = 0, $4071 = 0, $4072 = 0, $4073 = 0, $4074 = 0, $4075 = 0, $4076 = 0; + var $4077 = 0, $4078 = 0, $4079 = 0, $408 = 0, $4080 = 0, $4081 = 0, $4082 = 0, $4083 = 0, $4084 = 0, $4085 = 0, $4086 = 0, $4087 = 0, $4088 = 0, $4089 = 0, $409 = 0, $4090 = 0, $4091 = 0, $4092 = 0, $4093 = 0, $4094 = 0; + var $4095 = 0, $4096 = 0, $4097 = 0, $4098 = 0, $4099 = 0, $41 = 0, $410 = 0, $4100 = 0, $4101 = 0, $4102 = 0, $4103 = 0, $4104 = 0, $4105 = 0, $4106 = 0, $4107 = 0, $4108 = 0, $4109 = 0, $411 = 0, $4110 = 0, $4111 = 0; + var $4112 = 0, $4113 = 0, $4114 = 0, $4115 = 0, $4116 = 0, $4117 = 0, $4118 = 0, $4119 = 0, $412 = 0, $4120 = 0, $4121 = 0, $4122 = 0, $4123 = 0, $4124 = 0, $4125 = 0, $4126 = 0, $4127 = 0, $4128 = 0, $4129 = 0, $413 = 0; + var $4130 = 0, $4131 = 0, $4132 = 0, $4133 = 0, $4134 = 0, $4135 = 0, $4136 = 0, $4137 = 0, $4138 = 0, $4139 = 0, $414 = 0, $4140 = 0, $4141 = 0, $4142 = 0, $4143 = 0, $4144 = 0, $4145 = 0, $4146 = 0, $4147 = 0, $4148 = 0; + var $4149 = 0, $415 = 0, $4150 = 0, $4151 = 0, $4152 = 0, $4153 = 0, $4154 = 0, $4155 = 0, $4156 = 0, $4157 = 0, $4158 = 0, $4159 = 0, $416 = 0, $4160 = 0, $4161 = 0, $4162 = 0, $4163 = 0, $4164 = 0, $4165 = 0, $4166 = 0; + var $4167 = 0, $4168 = 0, $4169 = 0, $417 = 0, $4170 = 0, $4171 = 0, $4172 = 0, $4173 = 0, $4174 = 0, $4175 = 0, $4176 = 0, $4177 = 0, $4178 = 0, $4179 = 0, $418 = 0, $4180 = 0, $4181 = 0, $4182 = 0, $4183 = 0, $4184 = 0; + var $4185 = 0, $4186 = 0, $4187 = 0, $4188 = 0, $4189 = 0, $419 = 0, $4190 = 0, $4191 = 0, $4192 = 0, $4193 = 0, $4194 = 0, $4195 = 0, $4196 = 0, $4197 = 0, $4198 = 0, $4199 = 0, $42 = 0, $420 = 0, $4200 = 0, $4201 = 0; + var $4202 = 0, $4203 = 0, $4204 = 0, $4205 = 0, $4206 = 0, $4207 = 0, $4208 = 0, $4209 = 0, $421 = 0, $4210 = 0, $4211 = 0, $4212 = 0, $4213 = 0, $4214 = 0, $4215 = 0, $4216 = 0, $4217 = 0, $4218 = 0, $4219 = 0, $422 = 0; + var $4220 = 0, $4221 = 0, $4222 = 0, $4223 = 0, $4224 = 0, $4225 = 0, $4226 = 0, $4227 = 0, $4228 = 0, $4229 = 0, $423 = 0, $4230 = 0, $4231 = 0, $4232 = 0, $4233 = 0, $4234 = 0, $4235 = 0, $4236 = 0, $4237 = 0, $4238 = 0; + var $4239 = 0, $424 = 0, $4240 = 0, $4241 = 0, $4242 = 0, $4243 = 0, $4244 = 0, $4245 = 0, $4246 = 0, $4247 = 0, $4248 = 0, $4249 = 0, $425 = 0, $4250 = 0, $4251 = 0, $4252 = 0, $4253 = 0, $4254 = 0, $4255 = 0, $4256 = 0; + var $4257 = 0, $4258 = 0, $4259 = 0, $426 = 0, $4260 = 0, $4261 = 0, $4262 = 0, $4263 = 0, $4264 = 0, $4265 = 0, $4266 = 0, $4267 = 0, $4268 = 0, $4269 = 0, $427 = 0, $4270 = 0, $4271 = 0, $4272 = 0, $4273 = 0, $4274 = 0; + var $4275 = 0, $4276 = 0, $4277 = 0, $4278 = 0, $4279 = 0, $428 = 0, $4280 = 0, $4281 = 0, $4282 = 0, $4283 = 0, $4284 = 0, $4285 = 0, $4286 = 0, $4287 = 0, $4288 = 0, $4289 = 0, $429 = 0, $4290 = 0, $4291 = 0, $4292 = 0; + var $4293 = 0, $4294 = 0, $4295 = 0, $4296 = 0, $4297 = 0, $4298 = 0, $4299 = 0, $43 = 0, $430 = 0, $4300 = 0, $4301 = 0, $4302 = 0, $4303 = 0, $4304 = 0, $4305 = 0, $4306 = 0, $4307 = 0, $4308 = 0, $4309 = 0, $431 = 0; + var $4310 = 0, $4311 = 0, $4312 = 0, $4313 = 0, $4314 = 0, $4315 = 0, $4316 = 0, $4317 = 0, $4318 = 0, $4319 = 0, $432 = 0, $4320 = 0, $4321 = 0, $4322 = 0, $4323 = 0, $4324 = 0, $4325 = 0, $4326 = 0, $4327 = 0, $4328 = 0; + var $4329 = 0, $433 = 0, $4330 = 0, $4331 = 0, $4332 = 0, $4333 = 0, $4334 = 0, $4335 = 0, $4336 = 0, $4337 = 0, $4338 = 0, $4339 = 0, $434 = 0, $4340 = 0, $4341 = 0, $4342 = 0, $4343 = 0, $4344 = 0, $4345 = 0, $4346 = 0; + var $4347 = 0, $4348 = 0, $4349 = 0, $435 = 0, $4350 = 0, $4351 = 0, $4352 = 0, $4353 = 0, $4354 = 0, $4355 = 0, $4356 = 0, $4357 = 0, $4358 = 0, $4359 = 0, $436 = 0, $4360 = 0, $4361 = 0, $4362 = 0, $4363 = 0, $4364 = 0; + var $4365 = 0, $4366 = 0, $4367 = 0, $4368 = 0, $4369 = 0, $437 = 0, $4370 = 0, $4371 = 0, $4372 = 0, $4373 = 0, $4374 = 0, $4375 = 0, $4376 = 0, $4377 = 0, $4378 = 0, $4379 = 0, $438 = 0, $4380 = 0, $4381 = 0, $4382 = 0; + var $4383 = 0, $4384 = 0, $4385 = 0, $4386 = 0, $4387 = 0, $4388 = 0, $4389 = 0, $439 = 0, $4390 = 0, $4391 = 0, $4392 = 0, $4393 = 0, $4394 = 0, $4395 = 0, $4396 = 0, $4397 = 0, $4398 = 0, $4399 = 0, $44 = 0, $440 = 0; + var $4400 = 0, $4401 = 0, $4402 = 0, $4403 = 0, $4404 = 0, $4405 = 0, $4406 = 0, $4407 = 0, $4408 = 0, $4409 = 0, $441 = 0, $4410 = 0, $4411 = 0, $4412 = 0, $4413 = 0, $4414 = 0, $4415 = 0, $4416 = 0, $4417 = 0, $4418 = 0; + var $4419 = 0, $442 = 0, $4420 = 0, $4421 = 0, $4422 = 0, $4423 = 0, $4424 = 0, $4425 = 0, $4426 = 0, $4427 = 0, $4428 = 0, $4429 = 0, $443 = 0, $4430 = 0, $4431 = 0, $4432 = 0, $4433 = 0, $4434 = 0, $4435 = 0, $4436 = 0; + var $4437 = 0, $4438 = 0, $4439 = 0, $444 = 0, $4440 = 0, $4441 = 0, $4442 = 0, $4443 = 0, $4444 = 0, $4445 = 0, $4446 = 0, $4447 = 0, $4448 = 0, $4449 = 0, $445 = 0, $4450 = 0, $4451 = 0, $4452 = 0, $4453 = 0, $4454 = 0; + var $4455 = 0, $4456 = 0, $4457 = 0, $4458 = 0, $4459 = 0, $446 = 0, $4460 = 0, $4461 = 0, $4462 = 0, $4463 = 0, $4464 = 0, $4465 = 0, $4466 = 0, $4467 = 0, $4468 = 0, $4469 = 0, $447 = 0, $4470 = 0, $4471 = 0, $4472 = 0; + var $4473 = 0, $4474 = 0, $4475 = 0, $4476 = 0, $4477 = 0, $4478 = 0, $4479 = 0, $448 = 0, $4480 = 0, $4481 = 0, $4482 = 0, $4483 = 0, $4484 = 0, $4485 = 0, $4486 = 0, $4487 = 0, $4488 = 0, $4489 = 0, $449 = 0, $4490 = 0; + var $4491 = 0, $4492 = 0, $4493 = 0, $4494 = 0, $4495 = 0, $4496 = 0, $4497 = 0, $4498 = 0, $4499 = 0, $45 = 0, $450 = 0, $4500 = 0, $4501 = 0, $4502 = 0, $4503 = 0, $4504 = 0, $4505 = 0, $4506 = 0, $4507 = 0, $4508 = 0; + var $4509 = 0, $451 = 0, $4510 = 0, $4511 = 0, $4512 = 0, $4513 = 0, $4514 = 0, $4515 = 0, $4516 = 0, $4517 = 0, $4518 = 0, $4519 = 0, $452 = 0, $4520 = 0, $4521 = 0, $4522 = 0, $4523 = 0, $4524 = 0, $4525 = 0, $4526 = 0; + var $4527 = 0, $4528 = 0, $4529 = 0, $453 = 0, $4530 = 0, $4531 = 0, $4532 = 0, $4533 = 0, $4534 = 0, $4535 = 0, $4536 = 0, $4537 = 0, $4538 = 0, $4539 = 0, $454 = 0, $4540 = 0, $4541 = 0, $4542 = 0, $4543 = 0, $4544 = 0; + var $4545 = 0, $4546 = 0, $4547 = 0, $4548 = 0, $4549 = 0, $455 = 0, $4550 = 0, $4551 = 0, $4552 = 0, $4553 = 0, $4554 = 0, $4555 = 0, $4556 = 0, $4557 = 0, $4558 = 0, $4559 = 0, $456 = 0, $4560 = 0, $4561 = 0, $4562 = 0; + var $4563 = 0, $4564 = 0, $4565 = 0, $4566 = 0, $4567 = 0, $4568 = 0, $4569 = 0, $457 = 0, $4570 = 0, $4571 = 0, $4572 = 0, $4573 = 0, $4574 = 0, $4575 = 0, $4576 = 0, $4577 = 0, $4578 = 0, $4579 = 0, $458 = 0, $4580 = 0; + var $4581 = 0, $4582 = 0, $4583 = 0, $4584 = 0, $4585 = 0, $4586 = 0, $4587 = 0, $4588 = 0, $4589 = 0, $459 = 0, $4590 = 0, $4591 = 0, $4592 = 0, $4593 = 0, $4594 = 0, $4595 = 0, $4596 = 0, $4597 = 0, $4598 = 0, $4599 = 0; + var $46 = 0, $460 = 0, $4600 = 0, $4601 = 0, $4602 = 0, $4603 = 0, $4604 = 0, $4605 = 0, $4606 = 0, $4607 = 0, $4608 = 0, $4609 = 0, $461 = 0, $4610 = 0, $4611 = 0, $4612 = 0, $4613 = 0, $4614 = 0, $4615 = 0, $4616 = 0; + var $4617 = 0, $4618 = 0, $4619 = 0, $462 = 0, $4620 = 0, $4621 = 0, $4622 = 0, $4623 = 0, $4624 = 0, $4625 = 0, $4626 = 0, $4627 = 0, $4628 = 0, $4629 = 0, $463 = 0, $4630 = 0, $4631 = 0, $4632 = 0, $4633 = 0, $4634 = 0; + var $4635 = 0, $4636 = 0, $4637 = 0, $4638 = 0, $4639 = 0, $464 = 0, $4640 = 0, $4641 = 0, $4642 = 0, $4643 = 0, $4644 = 0, $4645 = 0, $4646 = 0, $4647 = 0, $4648 = 0, $4649 = 0, $465 = 0, $4650 = 0, $4651 = 0, $4652 = 0; + var $4653 = 0, $4654 = 0, $4655 = 0, $4656 = 0, $4657 = 0, $4658 = 0, $4659 = 0, $466 = 0, $4660 = 0, $4661 = 0, $4662 = 0, $4663 = 0, $4664 = 0, $4665 = 0, $4666 = 0, $4667 = 0, $4668 = 0, $4669 = 0, $467 = 0, $4670 = 0; + var $4671 = 0, $4672 = 0, $4673 = 0, $4674 = 0, $4675 = 0, $4676 = 0, $4677 = 0, $4678 = 0, $4679 = 0, $468 = 0, $4680 = 0, $4681 = 0, $4682 = 0, $4683 = 0, $4684 = 0, $4685 = 0, $4686 = 0, $4687 = 0, $4688 = 0, $4689 = 0; + var $469 = 0, $4690 = 0, $4691 = 0, $4692 = 0, $4693 = 0, $4694 = 0, $4695 = 0, $4696 = 0, $4697 = 0, $4698 = 0, $4699 = 0, $47 = 0, $470 = 0, $4700 = 0, $4701 = 0, $4702 = 0, $4703 = 0, $4704 = 0, $4705 = 0, $4706 = 0; + var $4707 = 0, $4708 = 0, $4709 = 0, $471 = 0, $4710 = 0, $4711 = 0, $4712 = 0, $4713 = 0, $4714 = 0, $4715 = 0, $4716 = 0, $4717 = 0, $4718 = 0, $4719 = 0, $472 = 0, $4720 = 0, $4721 = 0, $4722 = 0, $4723 = 0, $4724 = 0; + var $4725 = 0, $4726 = 0, $4727 = 0, $4728 = 0, $4729 = 0, $473 = 0, $4730 = 0, $4731 = 0, $4732 = 0, $4733 = 0, $4734 = 0, $4735 = 0, $4736 = 0, $4737 = 0, $4738 = 0, $4739 = 0, $474 = 0, $4740 = 0, $4741 = 0, $4742 = 0; + var $4743 = 0, $4744 = 0, $4745 = 0, $4746 = 0, $4747 = 0, $4748 = 0, $4749 = 0, $475 = 0, $4750 = 0, $4751 = 0, $4752 = 0, $4753 = 0, $4754 = 0, $4755 = 0, $4756 = 0, $4757 = 0, $4758 = 0, $4759 = 0, $476 = 0, $4760 = 0; + var $4761 = 0, $4762 = 0, $4763 = 0, $4764 = 0, $4765 = 0, $4766 = 0, $4767 = 0, $4768 = 0, $4769 = 0, $477 = 0, $4770 = 0, $4771 = 0, $4772 = 0, $4773 = 0, $4774 = 0, $4775 = 0, $4776 = 0, $4777 = 0, $4778 = 0, $4779 = 0; + var $478 = 0, $4780 = 0, $4781 = 0, $4782 = 0, $4783 = 0, $4784 = 0, $4785 = 0, $4786 = 0, $4787 = 0, $4788 = 0, $4789 = 0, $479 = 0, $4790 = 0, $4791 = 0, $4792 = 0, $4793 = 0, $4794 = 0, $4795 = 0, $4796 = 0, $4797 = 0; + var $4798 = 0, $4799 = 0, $48 = 0, $480 = 0, $4800 = 0, $4801 = 0, $4802 = 0, $4803 = 0, $4804 = 0, $4805 = 0, $4806 = 0, $4807 = 0, $4808 = 0, $4809 = 0, $481 = 0, $4810 = 0, $4811 = 0, $4812 = 0, $4813 = 0, $4814 = 0; + var $4815 = 0, $4816 = 0, $4817 = 0, $4818 = 0, $4819 = 0, $482 = 0, $4820 = 0, $4821 = 0, $4822 = 0, $4823 = 0, $4824 = 0, $4825 = 0, $4826 = 0, $4827 = 0, $4828 = 0, $4829 = 0, $483 = 0, $4830 = 0, $4831 = 0, $4832 = 0; + var $4833 = 0, $4834 = 0, $4835 = 0, $4836 = 0, $4837 = 0, $4838 = 0, $4839 = 0, $484 = 0, $4840 = 0, $4841 = 0, $4842 = 0, $4843 = 0, $4844 = 0, $4845 = 0, $4846 = 0, $4847 = 0, $4848 = 0, $4849 = 0, $485 = 0, $4850 = 0; + var $4851 = 0, $4852 = 0, $4853 = 0, $4854 = 0, $4855 = 0, $4856 = 0, $4857 = 0, $4858 = 0, $4859 = 0, $486 = 0, $4860 = 0, $4861 = 0, $4862 = 0, $4863 = 0, $4864 = 0, $4865 = 0, $4866 = 0, $4867 = 0, $4868 = 0, $4869 = 0; + var $487 = 0, $4870 = 0, $4871 = 0, $4872 = 0, $4873 = 0, $4874 = 0, $4875 = 0, $4876 = 0, $4877 = 0, $4878 = 0, $4879 = 0, $488 = 0, $4880 = 0, $4881 = 0, $4882 = 0, $4883 = 0, $4884 = 0, $4885 = 0, $4886 = 0, $4887 = 0; + var $4888 = 0, $4889 = 0, $489 = 0, $4890 = 0, $4891 = 0, $4892 = 0, $4893 = 0, $4894 = 0, $4895 = 0, $4896 = 0, $4897 = 0, $4898 = 0, $4899 = 0, $49 = 0, $490 = 0, $4900 = 0, $4901 = 0, $4902 = 0, $4903 = 0, $4904 = 0; + var $4905 = 0, $4906 = 0, $4907 = 0, $4908 = 0, $4909 = 0, $491 = 0, $4910 = 0, $4911 = 0, $4912 = 0, $4913 = 0, $4914 = 0, $4915 = 0, $4916 = 0, $4917 = 0, $4918 = 0, $4919 = 0, $492 = 0, $4920 = 0, $4921 = 0, $4922 = 0; + var $4923 = 0, $4924 = 0, $4925 = 0, $4926 = 0, $4927 = 0, $4928 = 0, $4929 = 0, $493 = 0, $4930 = 0, $4931 = 0, $4932 = 0, $4933 = 0, $4934 = 0, $4935 = 0, $4936 = 0, $4937 = 0, $4938 = 0, $4939 = 0, $494 = 0, $4940 = 0; + var $4941 = 0, $4942 = 0, $4943 = 0, $4944 = 0, $4945 = 0, $4946 = 0, $4947 = 0, $4948 = 0, $4949 = 0, $495 = 0, $4950 = 0, $4951 = 0, $4952 = 0, $4953 = 0, $4954 = 0, $4955 = 0, $4956 = 0, $4957 = 0, $4958 = 0, $4959 = 0; + var $496 = 0, $4960 = 0, $4961 = 0, $4962 = 0, $4963 = 0, $4964 = 0, $4965 = 0, $4966 = 0, $4967 = 0, $4968 = 0, $4969 = 0, $497 = 0, $4970 = 0, $4971 = 0, $4972 = 0, $4973 = 0, $4974 = 0, $4975 = 0, $4976 = 0, $4977 = 0; + var $4978 = 0, $4979 = 0, $498 = 0, $4980 = 0, $4981 = 0, $4982 = 0, $4983 = 0, $4984 = 0, $4985 = 0, $4986 = 0, $4987 = 0, $4988 = 0, $4989 = 0, $499 = 0, $4990 = 0, $4991 = 0, $4992 = 0, $4993 = 0, $4994 = 0, $4995 = 0; + var $4996 = 0, $4997 = 0, $4998 = 0, $4999 = 0, $5 = 0, $50 = 0, $500 = 0, $5000 = 0, $5001 = 0, $5002 = 0, $5003 = 0, $5004 = 0, $5005 = 0, $5006 = 0, $5007 = 0, $5008 = 0, $5009 = 0, $501 = 0, $5010 = 0, $5011 = 0; + var $5012 = 0, $5013 = 0, $5014 = 0, $5015 = 0, $5016 = 0, $5017 = 0, $5018 = 0, $5019 = 0, $502 = 0, $5020 = 0, $5021 = 0, $5022 = 0, $5023 = 0, $5024 = 0, $5025 = 0, $5026 = 0, $5027 = 0, $5028 = 0, $5029 = 0, $503 = 0; + var $5030 = 0, $5031 = 0, $5032 = 0, $5033 = 0, $5034 = 0, $5035 = 0, $5036 = 0, $5037 = 0, $5038 = 0, $5039 = 0, $504 = 0, $5040 = 0, $5041 = 0, $5042 = 0, $5043 = 0, $5044 = 0, $5045 = 0, $5046 = 0, $5047 = 0, $5048 = 0; + var $5049 = 0, $505 = 0, $5050 = 0, $5051 = 0, $5052 = 0, $5053 = 0, $5054 = 0, $5055 = 0, $5056 = 0, $5057 = 0, $5058 = 0, $5059 = 0, $506 = 0, $5060 = 0, $5061 = 0, $5062 = 0, $5063 = 0, $5064 = 0, $5065 = 0, $5066 = 0; + var $5067 = 0, $5068 = 0, $5069 = 0, $507 = 0, $5070 = 0, $5071 = 0, $5072 = 0, $5073 = 0, $5074 = 0, $5075 = 0, $5076 = 0, $5077 = 0, $5078 = 0, $5079 = 0, $508 = 0, $5080 = 0, $5081 = 0, $5082 = 0, $5083 = 0, $5084 = 0; + var $5085 = 0, $5086 = 0, $5087 = 0, $5088 = 0, $5089 = 0, $509 = 0, $5090 = 0, $5091 = 0, $5092 = 0, $5093 = 0, $5094 = 0, $5095 = 0, $5096 = 0, $5097 = 0, $5098 = 0, $5099 = 0, $51 = 0, $510 = 0, $5100 = 0, $5101 = 0; + var $5102 = 0, $5103 = 0, $5104 = 0, $5105 = 0, $5106 = 0, $5107 = 0, $5108 = 0, $5109 = 0, $511 = 0, $5110 = 0, $5111 = 0, $5112 = 0, $5113 = 0, $5114 = 0, $5115 = 0, $5116 = 0, $5117 = 0, $5118 = 0, $5119 = 0, $512 = 0; + var $5120 = 0, $5121 = 0, $5122 = 0, $5123 = 0, $5124 = 0, $5125 = 0, $5126 = 0, $5127 = 0, $5128 = 0, $5129 = 0, $513 = 0, $5130 = 0, $5131 = 0, $5132 = 0, $5133 = 0, $5134 = 0, $5135 = 0, $5136 = 0, $5137 = 0, $5138 = 0; + var $5139 = 0, $514 = 0, $5140 = 0, $5141 = 0, $5142 = 0, $5143 = 0, $5144 = 0, $5145 = 0, $5146 = 0, $5147 = 0, $5148 = 0, $5149 = 0, $515 = 0, $5150 = 0, $5151 = 0, $5152 = 0, $5153 = 0, $5154 = 0, $5155 = 0, $5156 = 0; + var $5157 = 0, $5158 = 0, $5159 = 0, $516 = 0, $5160 = 0, $5161 = 0, $5162 = 0, $5163 = 0, $5164 = 0, $5165 = 0, $5166 = 0, $5167 = 0, $5168 = 0, $5169 = 0, $517 = 0, $5170 = 0, $5171 = 0, $5172 = 0, $5173 = 0, $5174 = 0; + var $5175 = 0, $5176 = 0, $5177 = 0, $5178 = 0, $5179 = 0, $518 = 0, $5180 = 0, $5181 = 0, $5182 = 0, $5183 = 0, $5184 = 0, $5185 = 0, $5186 = 0, $5187 = 0, $5188 = 0, $5189 = 0, $519 = 0, $5190 = 0, $5191 = 0, $5192 = 0; + var $5193 = 0, $5194 = 0, $5195 = 0, $5196 = 0, $5197 = 0, $5198 = 0, $5199 = 0, $52 = 0, $520 = 0, $5200 = 0, $5201 = 0, $5202 = 0, $5203 = 0, $5204 = 0, $5205 = 0, $5206 = 0, $5207 = 0, $5208 = 0, $5209 = 0, $521 = 0; + var $5210 = 0, $5211 = 0, $5212 = 0, $5213 = 0, $5214 = 0, $5215 = 0, $5216 = 0, $5217 = 0, $5218 = 0, $5219 = 0, $522 = 0, $5220 = 0, $5221 = 0, $5222 = 0, $5223 = 0, $5224 = 0, $5225 = 0, $5226 = 0, $5227 = 0, $5228 = 0; + var $5229 = 0, $523 = 0, $5230 = 0, $5231 = 0, $5232 = 0, $5233 = 0, $5234 = 0, $5235 = 0, $5236 = 0, $5237 = 0, $5238 = 0, $5239 = 0, $524 = 0, $5240 = 0, $5241 = 0, $5242 = 0, $5243 = 0, $5244 = 0, $5245 = 0, $5246 = 0; + var $5247 = 0, $5248 = 0, $5249 = 0, $525 = 0, $5250 = 0, $5251 = 0, $5252 = 0, $5253 = 0, $5254 = 0, $5255 = 0, $5256 = 0, $5257 = 0, $5258 = 0, $5259 = 0, $526 = 0, $5260 = 0, $5261 = 0, $5262 = 0, $5263 = 0, $5264 = 0; + var $5265 = 0, $5266 = 0, $5267 = 0, $5268 = 0, $5269 = 0, $527 = 0, $5270 = 0, $5271 = 0, $5272 = 0, $5273 = 0, $5274 = 0, $5275 = 0, $5276 = 0, $5277 = 0, $5278 = 0, $5279 = 0, $528 = 0, $5280 = 0, $5281 = 0, $5282 = 0; + var $5283 = 0, $5284 = 0, $5285 = 0, $5286 = 0, $5287 = 0, $5288 = 0, $5289 = 0, $529 = 0, $5290 = 0, $5291 = 0, $5292 = 0, $5293 = 0, $5294 = 0, $5295 = 0, $5296 = 0, $5297 = 0, $5298 = 0, $5299 = 0, $53 = 0, $530 = 0; + var $5300 = 0, $5301 = 0, $5302 = 0, $5303 = 0, $5304 = 0, $5305 = 0, $5306 = 0, $5307 = 0, $5308 = 0, $5309 = 0, $531 = 0, $5310 = 0, $5311 = 0, $5312 = 0, $5313 = 0, $5314 = 0, $5315 = 0, $5316 = 0, $5317 = 0, $5318 = 0; + var $5319 = 0, $532 = 0, $5320 = 0, $5321 = 0, $5322 = 0, $5323 = 0, $5324 = 0, $5325 = 0, $5326 = 0, $5327 = 0, $5328 = 0, $5329 = 0, $533 = 0, $5330 = 0, $5331 = 0, $5332 = 0, $5333 = 0, $5334 = 0, $5335 = 0, $5336 = 0; + var $5337 = 0, $5338 = 0, $5339 = 0, $534 = 0, $5340 = 0, $5341 = 0, $5342 = 0, $5343 = 0, $5344 = 0, $5345 = 0, $5346 = 0, $5347 = 0, $5348 = 0, $5349 = 0, $535 = 0, $5350 = 0, $5351 = 0, $5352 = 0, $5353 = 0, $5354 = 0; + var $5355 = 0, $5356 = 0, $5357 = 0, $5358 = 0, $5359 = 0, $536 = 0, $5360 = 0, $5361 = 0, $5362 = 0, $5363 = 0, $5364 = 0, $5365 = 0, $5366 = 0, $5367 = 0, $5368 = 0, $5369 = 0, $537 = 0, $5370 = 0, $5371 = 0, $5372 = 0; + var $5373 = 0, $5374 = 0, $5375 = 0, $5376 = 0, $5377 = 0, $5378 = 0, $5379 = 0, $538 = 0, $5380 = 0, $5381 = 0, $5382 = 0, $5383 = 0, $5384 = 0, $5385 = 0, $5386 = 0, $5387 = 0, $5388 = 0, $5389 = 0, $539 = 0, $5390 = 0; + var $5391 = 0, $5392 = 0, $5393 = 0, $5394 = 0, $5395 = 0, $5396 = 0, $5397 = 0, $5398 = 0, $5399 = 0, $54 = 0, $540 = 0, $5400 = 0, $5401 = 0, $5402 = 0, $5403 = 0, $5404 = 0, $5405 = 0, $5406 = 0, $5407 = 0, $5408 = 0; + var $5409 = 0, $541 = 0, $5410 = 0, $5411 = 0, $5412 = 0, $5413 = 0, $5414 = 0, $5415 = 0, $5416 = 0, $5417 = 0, $5418 = 0, $5419 = 0, $542 = 0, $5420 = 0, $5421 = 0, $5422 = 0, $5423 = 0, $5424 = 0, $5425 = 0, $5426 = 0; + var $5427 = 0, $5428 = 0, $5429 = 0, $543 = 0, $5430 = 0, $5431 = 0, $5432 = 0, $5433 = 0, $5434 = 0, $5435 = 0, $5436 = 0, $5437 = 0, $5438 = 0, $5439 = 0, $544 = 0, $5440 = 0, $5441 = 0, $5442 = 0, $5443 = 0, $5444 = 0; + var $5445 = 0, $5446 = 0, $5447 = 0, $5448 = 0, $5449 = 0, $545 = 0, $5450 = 0, $5451 = 0, $5452 = 0, $5453 = 0, $5454 = 0, $5455 = 0, $5456 = 0, $5457 = 0, $5458 = 0, $5459 = 0, $546 = 0, $5460 = 0, $5461 = 0, $5462 = 0; + var $5463 = 0, $5464 = 0, $5465 = 0, $5466 = 0, $5467 = 0, $5468 = 0, $5469 = 0, $547 = 0, $5470 = 0, $5471 = 0, $5472 = 0, $5473 = 0, $5474 = 0, $5475 = 0, $5476 = 0, $5477 = 0, $5478 = 0, $5479 = 0, $548 = 0, $5480 = 0; + var $5481 = 0, $5482 = 0, $5483 = 0, $5484 = 0, $5485 = 0, $5486 = 0, $5487 = 0, $5488 = 0, $5489 = 0, $549 = 0, $5490 = 0, $5491 = 0, $5492 = 0, $5493 = 0, $5494 = 0, $5495 = 0, $5496 = 0, $5497 = 0, $5498 = 0, $5499 = 0; + var $55 = 0, $550 = 0, $5500 = 0, $5501 = 0, $5502 = 0, $5503 = 0, $5504 = 0, $5505 = 0, $5506 = 0, $5507 = 0, $5508 = 0, $5509 = 0, $551 = 0, $5510 = 0, $5511 = 0, $5512 = 0, $5513 = 0, $5514 = 0, $5515 = 0, $5516 = 0; + var $5517 = 0, $5518 = 0, $5519 = 0, $552 = 0, $5520 = 0, $5521 = 0, $5522 = 0, $5523 = 0, $5524 = 0, $5525 = 0, $5526 = 0, $5527 = 0, $5528 = 0, $5529 = 0, $553 = 0, $5530 = 0, $5531 = 0, $5532 = 0, $5533 = 0, $5534 = 0; + var $5535 = 0, $5536 = 0, $5537 = 0, $5538 = 0, $5539 = 0, $554 = 0, $5540 = 0, $5541 = 0, $5542 = 0, $5543 = 0, $5544 = 0, $5545 = 0, $5546 = 0, $5547 = 0, $5548 = 0, $5549 = 0, $555 = 0, $5550 = 0, $5551 = 0, $5552 = 0; + var $5553 = 0, $5554 = 0, $5555 = 0, $5556 = 0, $5557 = 0, $5558 = 0, $5559 = 0, $556 = 0, $5560 = 0, $5561 = 0, $5562 = 0, $5563 = 0, $5564 = 0, $5565 = 0, $5566 = 0, $5567 = 0, $5568 = 0, $5569 = 0, $557 = 0, $5570 = 0; + var $5571 = 0, $5572 = 0, $5573 = 0, $5574 = 0, $5575 = 0, $5576 = 0, $5577 = 0, $5578 = 0, $5579 = 0, $558 = 0, $5580 = 0, $5581 = 0, $5582 = 0, $5583 = 0, $5584 = 0, $5585 = 0, $5586 = 0, $5587 = 0, $5588 = 0, $5589 = 0; + var $559 = 0, $5590 = 0, $5591 = 0, $5592 = 0, $5593 = 0, $5594 = 0, $5595 = 0, $5596 = 0, $5597 = 0, $5598 = 0, $5599 = 0, $56 = 0, $560 = 0, $5600 = 0, $5601 = 0, $5602 = 0, $5603 = 0, $5604 = 0, $5605 = 0, $5606 = 0; + var $5607 = 0, $5608 = 0, $5609 = 0, $561 = 0, $5610 = 0, $5611 = 0, $5612 = 0, $5613 = 0, $5614 = 0, $5615 = 0, $5616 = 0, $5617 = 0, $5618 = 0, $5619 = 0, $562 = 0, $5620 = 0, $5621 = 0, $5622 = 0, $5623 = 0, $5624 = 0; + var $5625 = 0, $5626 = 0, $5627 = 0, $5628 = 0, $5629 = 0, $563 = 0, $5630 = 0, $5631 = 0, $5632 = 0, $5633 = 0, $5634 = 0, $5635 = 0, $5636 = 0, $5637 = 0, $5638 = 0, $5639 = 0, $564 = 0, $5640 = 0, $5641 = 0, $5642 = 0; + var $5643 = 0, $5644 = 0, $5645 = 0, $5646 = 0, $5647 = 0, $5648 = 0, $5649 = 0, $565 = 0, $5650 = 0, $5651 = 0, $5652 = 0, $5653 = 0, $5654 = 0, $5655 = 0, $5656 = 0, $5657 = 0, $5658 = 0, $5659 = 0, $566 = 0, $5660 = 0; + var $5661 = 0, $5662 = 0, $5663 = 0, $5664 = 0, $5665 = 0, $5666 = 0, $5667 = 0, $5668 = 0, $5669 = 0, $567 = 0, $5670 = 0, $5671 = 0, $5672 = 0, $5673 = 0, $5674 = 0, $5675 = 0, $5676 = 0, $5677 = 0, $5678 = 0, $5679 = 0; + var $568 = 0, $5680 = 0, $5681 = 0, $5682 = 0, $5683 = 0, $5684 = 0, $5685 = 0, $5686 = 0, $5687 = 0, $5688 = 0, $5689 = 0, $569 = 0, $5690 = 0, $5691 = 0, $5692 = 0, $5693 = 0, $5694 = 0, $5695 = 0, $5696 = 0, $5697 = 0; + var $5698 = 0, $5699 = 0, $57 = 0, $570 = 0, $5700 = 0, $5701 = 0, $5702 = 0, $5703 = 0, $5704 = 0, $5705 = 0, $5706 = 0, $5707 = 0, $5708 = 0, $5709 = 0, $571 = 0, $5710 = 0, $5711 = 0, $5712 = 0, $5713 = 0, $5714 = 0; + var $5715 = 0, $5716 = 0, $5717 = 0, $5718 = 0, $5719 = 0, $572 = 0, $5720 = 0, $5721 = 0, $5722 = 0, $5723 = 0, $5724 = 0, $5725 = 0, $5726 = 0, $5727 = 0, $5728 = 0, $5729 = 0, $573 = 0, $5730 = 0, $5731 = 0, $5732 = 0; + var $5733 = 0, $5734 = 0, $5735 = 0, $5736 = 0, $5737 = 0, $5738 = 0, $5739 = 0, $574 = 0, $5740 = 0, $5741 = 0, $5742 = 0, $5743 = 0, $5744 = 0, $5745 = 0, $5746 = 0, $5747 = 0, $5748 = 0, $5749 = 0, $575 = 0, $5750 = 0; + var $5751 = 0, $5752 = 0, $5753 = 0, $5754 = 0, $5755 = 0, $5756 = 0, $5757 = 0, $5758 = 0, $5759 = 0, $576 = 0, $5760 = 0, $5761 = 0, $5762 = 0, $5763 = 0, $5764 = 0, $5765 = 0, $5766 = 0, $5767 = 0, $5768 = 0, $5769 = 0; + var $577 = 0, $5770 = 0, $5771 = 0, $5772 = 0, $5773 = 0, $5774 = 0, $5775 = 0, $5776 = 0, $5777 = 0, $5778 = 0, $5779 = 0, $578 = 0, $5780 = 0, $5781 = 0, $5782 = 0, $5783 = 0, $5784 = 0, $5785 = 0, $5786 = 0, $5787 = 0; + var $5788 = 0, $5789 = 0, $579 = 0, $5790 = 0, $5791 = 0, $5792 = 0, $5793 = 0, $5794 = 0, $5795 = 0, $5796 = 0, $5797 = 0, $5798 = 0, $5799 = 0, $58 = 0, $580 = 0, $5800 = 0, $5801 = 0, $5802 = 0, $5803 = 0, $5804 = 0; + var $5805 = 0, $5806 = 0, $5807 = 0, $5808 = 0, $5809 = 0, $581 = 0, $5810 = 0, $5811 = 0, $5812 = 0, $5813 = 0, $5814 = 0, $5815 = 0, $5816 = 0, $5817 = 0, $5818 = 0, $5819 = 0, $582 = 0, $5820 = 0, $5821 = 0, $5822 = 0; + var $5823 = 0, $5824 = 0, $5825 = 0, $5826 = 0, $5827 = 0, $5828 = 0, $5829 = 0, $583 = 0, $5830 = 0, $5831 = 0, $5832 = 0, $5833 = 0, $5834 = 0, $5835 = 0, $5836 = 0, $5837 = 0, $5838 = 0, $5839 = 0, $584 = 0, $5840 = 0; + var $5841 = 0, $5842 = 0, $5843 = 0, $5844 = 0, $5845 = 0, $5846 = 0, $5847 = 0, $5848 = 0, $5849 = 0, $585 = 0, $5850 = 0, $5851 = 0, $5852 = 0, $5853 = 0, $5854 = 0, $5855 = 0, $5856 = 0, $5857 = 0, $5858 = 0, $5859 = 0; + var $586 = 0, $5860 = 0, $5861 = 0, $5862 = 0, $5863 = 0, $5864 = 0, $5865 = 0, $5866 = 0, $5867 = 0, $5868 = 0, $5869 = 0, $587 = 0, $5870 = 0, $5871 = 0, $5872 = 0, $5873 = 0, $5874 = 0, $5875 = 0, $5876 = 0, $5877 = 0; + var $5878 = 0, $5879 = 0, $588 = 0, $5880 = 0, $5881 = 0, $5882 = 0, $5883 = 0, $5884 = 0, $5885 = 0, $5886 = 0, $5887 = 0, $5888 = 0, $5889 = 0, $589 = 0, $5890 = 0, $5891 = 0, $5892 = 0, $5893 = 0, $5894 = 0, $5895 = 0; + var $5896 = 0, $5897 = 0, $5898 = 0, $5899 = 0, $59 = 0, $590 = 0, $5900 = 0, $5901 = 0, $5902 = 0, $5903 = 0, $5904 = 0, $5905 = 0, $5906 = 0, $5907 = 0, $5908 = 0, $5909 = 0, $591 = 0, $5910 = 0, $5911 = 0, $5912 = 0; + var $5913 = 0, $5914 = 0, $5915 = 0, $5916 = 0, $5917 = 0, $5918 = 0, $5919 = 0, $592 = 0, $5920 = 0, $5921 = 0, $5922 = 0, $5923 = 0, $5924 = 0, $5925 = 0, $5926 = 0, $5927 = 0, $5928 = 0, $5929 = 0, $593 = 0, $5930 = 0; + var $5931 = 0, $5932 = 0, $5933 = 0, $5934 = 0, $5935 = 0, $5936 = 0, $5937 = 0, $5938 = 0, $5939 = 0, $594 = 0, $5940 = 0, $5941 = 0, $5942 = 0, $5943 = 0, $5944 = 0, $5945 = 0, $5946 = 0, $5947 = 0, $5948 = 0, $5949 = 0; + var $595 = 0, $5950 = 0, $5951 = 0, $5952 = 0, $5953 = 0, $5954 = 0, $5955 = 0, $5956 = 0, $5957 = 0, $5958 = 0, $5959 = 0, $596 = 0, $5960 = 0, $5961 = 0, $5962 = 0, $5963 = 0, $5964 = 0, $5965 = 0, $5966 = 0, $5967 = 0; + var $5968 = 0, $5969 = 0, $597 = 0, $5970 = 0, $5971 = 0, $5972 = 0, $5973 = 0, $5974 = 0, $5975 = 0, $5976 = 0, $5977 = 0, $5978 = 0, $5979 = 0, $598 = 0, $5980 = 0, $5981 = 0, $5982 = 0, $5983 = 0, $5984 = 0, $5985 = 0; + var $5986 = 0, $5987 = 0, $5988 = 0, $5989 = 0, $599 = 0, $5990 = 0, $5991 = 0, $5992 = 0, $5993 = 0, $5994 = 0, $5995 = 0, $5996 = 0, $5997 = 0, $5998 = 0, $5999 = 0, $6 = 0, $60 = 0, $600 = 0, $6000 = 0, $6001 = 0; + var $6002 = 0, $6003 = 0, $6004 = 0, $6005 = 0, $6006 = 0, $6007 = 0, $6008 = 0, $6009 = 0, $601 = 0, $6010 = 0, $6011 = 0, $6012 = 0, $6013 = 0, $6014 = 0, $6015 = 0, $6016 = 0, $6017 = 0, $6018 = 0, $6019 = 0, $602 = 0; + var $6020 = 0, $6021 = 0, $6022 = 0, $6023 = 0, $6024 = 0, $6025 = 0, $6026 = 0, $6027 = 0, $6028 = 0, $6029 = 0, $603 = 0, $6030 = 0, $6031 = 0, $6032 = 0, $6033 = 0, $6034 = 0, $6035 = 0, $6036 = 0, $6037 = 0, $6038 = 0; + var $6039 = 0, $604 = 0, $6040 = 0, $6041 = 0, $6042 = 0, $6043 = 0, $6044 = 0, $6045 = 0, $6046 = 0, $6047 = 0, $6048 = 0, $6049 = 0, $605 = 0, $6050 = 0, $6051 = 0, $6052 = 0, $6053 = 0, $6054 = 0, $6055 = 0, $6056 = 0; + var $6057 = 0, $6058 = 0, $6059 = 0, $606 = 0, $6060 = 0, $6061 = 0, $6062 = 0, $6063 = 0, $6064 = 0, $6065 = 0, $6066 = 0, $6067 = 0, $6068 = 0, $6069 = 0, $607 = 0, $6070 = 0, $6071 = 0, $6072 = 0, $6073 = 0, $6074 = 0; + var $6075 = 0, $6076 = 0, $6077 = 0, $6078 = 0, $6079 = 0, $608 = 0, $6080 = 0, $6081 = 0, $6082 = 0, $6083 = 0, $6084 = 0, $6085 = 0, $6086 = 0, $6087 = 0, $6088 = 0, $6089 = 0, $609 = 0, $6090 = 0, $6091 = 0, $6092 = 0; + var $6093 = 0, $6094 = 0, $6095 = 0, $6096 = 0, $6097 = 0, $6098 = 0, $6099 = 0, $61 = 0, $610 = 0, $6100 = 0, $6101 = 0, $6102 = 0, $6103 = 0, $6104 = 0, $6105 = 0, $6106 = 0, $6107 = 0, $6108 = 0, $6109 = 0, $611 = 0; + var $6110 = 0, $6111 = 0, $6112 = 0, $6113 = 0, $6114 = 0, $6115 = 0, $6116 = 0, $6117 = 0, $6118 = 0, $6119 = 0, $612 = 0, $6120 = 0, $6121 = 0, $6122 = 0, $6123 = 0, $6124 = 0, $6125 = 0, $6126 = 0, $6127 = 0, $6128 = 0; + var $6129 = 0, $613 = 0, $6130 = 0, $6131 = 0, $6132 = 0, $6133 = 0, $6134 = 0, $6135 = 0, $6136 = 0, $6137 = 0, $6138 = 0, $6139 = 0, $614 = 0, $6140 = 0, $6141 = 0, $6142 = 0, $6143 = 0, $6144 = 0, $6145 = 0, $6146 = 0; + var $6147 = 0, $6148 = 0, $6149 = 0, $615 = 0, $6150 = 0, $6151 = 0, $6152 = 0, $6153 = 0, $6154 = 0, $6155 = 0, $6156 = 0, $6157 = 0, $6158 = 0, $6159 = 0, $616 = 0, $6160 = 0, $6161 = 0, $6162 = 0, $6163 = 0, $6164 = 0; + var $6165 = 0, $6166 = 0, $6167 = 0, $6168 = 0, $6169 = 0, $617 = 0, $6170 = 0, $6171 = 0, $6172 = 0, $6173 = 0, $6174 = 0, $6175 = 0, $6176 = 0, $6177 = 0, $6178 = 0, $6179 = 0, $618 = 0, $6180 = 0, $6181 = 0, $6182 = 0; + var $6183 = 0, $6184 = 0, $6185 = 0, $6186 = 0, $6187 = 0, $6188 = 0, $6189 = 0, $619 = 0, $6190 = 0, $6191 = 0, $6192 = 0, $6193 = 0, $6194 = 0, $6195 = 0, $6196 = 0, $6197 = 0, $6198 = 0, $6199 = 0, $62 = 0, $620 = 0; + var $6200 = 0, $6201 = 0, $6202 = 0, $6203 = 0, $6204 = 0, $6205 = 0, $6206 = 0, $6207 = 0, $6208 = 0, $6209 = 0, $621 = 0, $6210 = 0, $6211 = 0, $6212 = 0, $6213 = 0, $6214 = 0, $6215 = 0, $6216 = 0, $6217 = 0, $6218 = 0; + var $6219 = 0, $622 = 0, $6220 = 0, $6221 = 0, $6222 = 0, $6223 = 0, $6224 = 0, $6225 = 0, $6226 = 0, $6227 = 0, $6228 = 0, $6229 = 0, $623 = 0, $6230 = 0, $6231 = 0, $6232 = 0, $6233 = 0, $6234 = 0, $6235 = 0, $6236 = 0; + var $6237 = 0, $6238 = 0, $6239 = 0, $624 = 0, $6240 = 0, $6241 = 0, $6242 = 0, $6243 = 0, $6244 = 0, $6245 = 0, $6246 = 0, $6247 = 0, $6248 = 0, $6249 = 0, $625 = 0, $6250 = 0, $6251 = 0, $6252 = 0, $6253 = 0, $6254 = 0; + var $6255 = 0, $6256 = 0, $6257 = 0, $6258 = 0, $6259 = 0, $626 = 0, $6260 = 0, $6261 = 0, $6262 = 0, $6263 = 0, $6264 = 0, $6265 = 0, $6266 = 0, $6267 = 0, $6268 = 0, $6269 = 0, $627 = 0, $6270 = 0, $6271 = 0, $6272 = 0; + var $6273 = 0, $6274 = 0, $6275 = 0, $6276 = 0, $6277 = 0, $6278 = 0, $6279 = 0, $628 = 0, $6280 = 0, $6281 = 0, $6282 = 0, $6283 = 0, $6284 = 0, $6285 = 0, $6286 = 0, $6287 = 0, $6288 = 0, $6289 = 0, $629 = 0, $6290 = 0; + var $6291 = 0, $6292 = 0, $6293 = 0, $6294 = 0, $6295 = 0, $6296 = 0, $6297 = 0, $6298 = 0, $6299 = 0, $63 = 0, $630 = 0, $6300 = 0, $6301 = 0, $6302 = 0, $6303 = 0, $6304 = 0, $6305 = 0, $6306 = 0, $6307 = 0, $6308 = 0; + var $6309 = 0, $631 = 0, $6310 = 0, $6311 = 0, $6312 = 0, $6313 = 0, $6314 = 0, $6315 = 0, $6316 = 0, $6317 = 0, $6318 = 0, $6319 = 0, $632 = 0, $6320 = 0, $6321 = 0, $6322 = 0, $6323 = 0, $6324 = 0, $6325 = 0, $6326 = 0; + var $6327 = 0, $6328 = 0, $6329 = 0, $633 = 0, $6330 = 0, $6331 = 0, $6332 = 0, $6333 = 0, $6334 = 0, $6335 = 0, $6336 = 0, $6337 = 0, $6338 = 0, $6339 = 0, $634 = 0, $6340 = 0, $6341 = 0, $6342 = 0, $6343 = 0, $6344 = 0; + var $6345 = 0, $6346 = 0, $6347 = 0, $6348 = 0, $6349 = 0, $635 = 0, $6350 = 0, $6351 = 0, $6352 = 0, $6353 = 0, $6354 = 0, $6355 = 0, $6356 = 0, $6357 = 0, $6358 = 0, $6359 = 0, $636 = 0, $6360 = 0, $6361 = 0, $6362 = 0; + var $6363 = 0, $6364 = 0, $6365 = 0, $6366 = 0, $6367 = 0, $6368 = 0, $6369 = 0, $637 = 0, $6370 = 0, $6371 = 0, $6372 = 0, $6373 = 0, $6374 = 0, $6375 = 0, $6376 = 0, $6377 = 0, $6378 = 0, $6379 = 0, $638 = 0, $6380 = 0; + var $6381 = 0, $6382 = 0, $6383 = 0, $6384 = 0, $6385 = 0, $6386 = 0, $6387 = 0, $6388 = 0, $6389 = 0, $639 = 0, $6390 = 0, $6391 = 0, $6392 = 0, $6393 = 0, $6394 = 0, $6395 = 0, $6396 = 0, $6397 = 0, $6398 = 0, $6399 = 0; + var $64 = 0, $640 = 0, $6400 = 0, $6401 = 0, $6402 = 0, $6403 = 0, $6404 = 0, $6405 = 0, $6406 = 0, $6407 = 0, $6408 = 0, $6409 = 0, $641 = 0, $6410 = 0, $6411 = 0, $6412 = 0, $6413 = 0, $6414 = 0, $6415 = 0, $6416 = 0; + var $6417 = 0, $6418 = 0, $6419 = 0, $642 = 0, $6420 = 0, $6421 = 0, $6422 = 0, $6423 = 0, $6424 = 0, $6425 = 0, $6426 = 0, $6427 = 0, $6428 = 0, $6429 = 0, $643 = 0, $6430 = 0, $6431 = 0, $6432 = 0, $6433 = 0, $6434 = 0; + var $6435 = 0, $6436 = 0, $6437 = 0, $6438 = 0, $6439 = 0, $644 = 0, $6440 = 0, $6441 = 0, $6442 = 0, $6443 = 0, $6444 = 0, $6445 = 0, $6446 = 0, $6447 = 0, $6448 = 0, $6449 = 0, $645 = 0, $6450 = 0, $6451 = 0, $6452 = 0; + var $6453 = 0, $6454 = 0, $6455 = 0, $6456 = 0, $6457 = 0, $6458 = 0, $6459 = 0, $646 = 0, $6460 = 0, $6461 = 0, $6462 = 0, $6463 = 0, $6464 = 0, $6465 = 0, $6466 = 0, $6467 = 0, $6468 = 0, $6469 = 0, $647 = 0, $6470 = 0; + var $6471 = 0, $6472 = 0, $6473 = 0, $6474 = 0, $6475 = 0, $6476 = 0, $6477 = 0, $6478 = 0, $6479 = 0, $648 = 0, $6480 = 0, $6481 = 0, $6482 = 0, $6483 = 0, $6484 = 0, $6485 = 0, $6486 = 0, $6487 = 0, $6488 = 0, $6489 = 0; + var $649 = 0, $6490 = 0, $6491 = 0, $6492 = 0, $6493 = 0, $6494 = 0, $6495 = 0, $6496 = 0, $6497 = 0, $6498 = 0, $6499 = 0, $65 = 0, $650 = 0, $6500 = 0, $6501 = 0, $6502 = 0, $6503 = 0, $6504 = 0, $6505 = 0, $6506 = 0; + var $6507 = 0, $6508 = 0, $6509 = 0, $651 = 0, $6510 = 0, $6511 = 0, $6512 = 0, $6513 = 0, $6514 = 0, $6515 = 0, $6516 = 0, $6517 = 0, $6518 = 0, $6519 = 0, $652 = 0, $6520 = 0, $6521 = 0, $6522 = 0, $6523 = 0, $6524 = 0; + var $6525 = 0, $6526 = 0, $6527 = 0, $6528 = 0, $6529 = 0, $653 = 0, $6530 = 0, $6531 = 0, $6532 = 0, $6533 = 0, $6534 = 0, $6535 = 0, $6536 = 0, $6537 = 0, $6538 = 0, $6539 = 0, $654 = 0, $6540 = 0, $6541 = 0, $6542 = 0; + var $6543 = 0, $6544 = 0, $6545 = 0, $6546 = 0, $6547 = 0, $6548 = 0, $6549 = 0, $655 = 0, $6550 = 0, $6551 = 0, $6552 = 0, $6553 = 0, $6554 = 0, $6555 = 0, $6556 = 0, $6557 = 0, $6558 = 0, $6559 = 0, $656 = 0, $6560 = 0; + var $6561 = 0, $6562 = 0, $6563 = 0, $6564 = 0, $6565 = 0, $6566 = 0, $6567 = 0, $6568 = 0, $6569 = 0, $657 = 0, $6570 = 0, $6571 = 0, $6572 = 0, $6573 = 0, $6574 = 0, $6575 = 0, $6576 = 0, $6577 = 0, $6578 = 0, $6579 = 0; + var $658 = 0, $6580 = 0, $6581 = 0, $6582 = 0, $6583 = 0, $6584 = 0, $6585 = 0, $6586 = 0, $6587 = 0, $6588 = 0, $6589 = 0, $659 = 0, $6590 = 0, $6591 = 0, $6592 = 0, $6593 = 0, $6594 = 0, $6595 = 0, $6596 = 0, $6597 = 0; + var $6598 = 0, $6599 = 0, $66 = 0, $660 = 0, $6600 = 0, $6601 = 0, $6602 = 0, $6603 = 0, $6604 = 0, $6605 = 0, $6606 = 0, $6607 = 0, $6608 = 0, $6609 = 0, $661 = 0, $6610 = 0, $6611 = 0, $6612 = 0, $6613 = 0, $6614 = 0; + var $6615 = 0, $6616 = 0, $6617 = 0, $6618 = 0, $6619 = 0, $662 = 0, $6620 = 0, $6621 = 0, $6622 = 0, $6623 = 0, $6624 = 0, $6625 = 0, $6626 = 0, $6627 = 0, $6628 = 0, $6629 = 0, $663 = 0, $6630 = 0, $6631 = 0, $6632 = 0; + var $6633 = 0, $6634 = 0, $6635 = 0, $6636 = 0, $6637 = 0, $6638 = 0, $6639 = 0, $664 = 0, $6640 = 0, $6641 = 0, $6642 = 0, $6643 = 0, $6644 = 0, $6645 = 0, $6646 = 0, $6647 = 0, $6648 = 0, $6649 = 0, $665 = 0, $6650 = 0; + var $6651 = 0, $6652 = 0, $6653 = 0, $6654 = 0, $6655 = 0, $6656 = 0, $6657 = 0, $6658 = 0, $6659 = 0, $666 = 0, $6660 = 0, $6661 = 0, $6662 = 0, $6663 = 0, $6664 = 0, $6665 = 0, $6666 = 0, $6667 = 0, $6668 = 0, $6669 = 0; + var $667 = 0, $6670 = 0, $6671 = 0, $6672 = 0, $6673 = 0, $6674 = 0, $6675 = 0, $6676 = 0, $6677 = 0, $6678 = 0, $6679 = 0, $668 = 0, $6680 = 0, $6681 = 0, $6682 = 0, $6683 = 0, $6684 = 0, $6685 = 0, $6686 = 0, $6687 = 0; + var $6688 = 0, $6689 = 0, $669 = 0, $6690 = 0, $6691 = 0, $6692 = 0, $6693 = 0, $6694 = 0, $6695 = 0, $6696 = 0, $6697 = 0, $6698 = 0, $6699 = 0, $67 = 0, $670 = 0, $6700 = 0, $6701 = 0, $6702 = 0, $6703 = 0, $6704 = 0; + var $6705 = 0, $6706 = 0, $6707 = 0, $6708 = 0, $6709 = 0, $671 = 0, $6710 = 0, $6711 = 0, $6712 = 0, $6713 = 0, $6714 = 0, $6715 = 0, $6716 = 0, $6717 = 0, $6718 = 0, $6719 = 0, $672 = 0, $6720 = 0, $6721 = 0, $6722 = 0; + var $6723 = 0, $6724 = 0, $6725 = 0, $6726 = 0, $6727 = 0, $6728 = 0, $6729 = 0, $673 = 0, $6730 = 0, $6731 = 0, $6732 = 0, $6733 = 0, $6734 = 0, $6735 = 0, $6736 = 0, $6737 = 0, $6738 = 0, $6739 = 0, $674 = 0, $6740 = 0; + var $6741 = 0, $6742 = 0, $6743 = 0, $6744 = 0, $6745 = 0, $6746 = 0, $6747 = 0, $6748 = 0, $6749 = 0, $675 = 0, $6750 = 0, $6751 = 0, $6752 = 0, $6753 = 0, $6754 = 0, $6755 = 0, $6756 = 0, $6757 = 0, $6758 = 0, $6759 = 0; + var $676 = 0, $6760 = 0, $6761 = 0, $6762 = 0, $6763 = 0, $6764 = 0, $6765 = 0, $6766 = 0, $6767 = 0, $6768 = 0, $6769 = 0, $677 = 0, $6770 = 0, $6771 = 0, $6772 = 0, $6773 = 0, $6774 = 0, $6775 = 0, $6776 = 0, $6777 = 0; + var $6778 = 0, $6779 = 0, $678 = 0, $6780 = 0, $6781 = 0, $6782 = 0, $6783 = 0, $6784 = 0, $6785 = 0, $6786 = 0, $6787 = 0, $6788 = 0, $6789 = 0, $679 = 0, $6790 = 0, $6791 = 0, $6792 = 0, $6793 = 0, $6794 = 0, $6795 = 0; + var $6796 = 0, $6797 = 0, $6798 = 0, $6799 = 0, $68 = 0, $680 = 0, $6800 = 0, $6801 = 0, $6802 = 0, $6803 = 0, $6804 = 0, $6805 = 0, $6806 = 0, $6807 = 0, $6808 = 0, $6809 = 0, $681 = 0, $6810 = 0, $6811 = 0, $6812 = 0; + var $6813 = 0, $6814 = 0, $6815 = 0, $6816 = 0, $6817 = 0, $6818 = 0, $6819 = 0, $682 = 0, $6820 = 0, $6821 = 0, $6822 = 0, $6823 = 0, $6824 = 0, $6825 = 0, $6826 = 0, $6827 = 0, $6828 = 0, $6829 = 0, $683 = 0, $6830 = 0; + var $6831 = 0, $6832 = 0, $6833 = 0, $6834 = 0, $6835 = 0, $6836 = 0, $6837 = 0, $6838 = 0, $6839 = 0, $684 = 0, $6840 = 0, $6841 = 0, $6842 = 0, $6843 = 0, $6844 = 0, $6845 = 0, $6846 = 0, $6847 = 0, $6848 = 0, $6849 = 0; + var $685 = 0, $6850 = 0, $6851 = 0, $6852 = 0, $6853 = 0, $6854 = 0, $6855 = 0, $6856 = 0, $6857 = 0, $6858 = 0, $6859 = 0, $686 = 0, $6860 = 0, $6861 = 0, $6862 = 0, $6863 = 0, $6864 = 0, $6865 = 0, $6866 = 0, $6867 = 0; + var $6868 = 0, $6869 = 0, $687 = 0, $6870 = 0, $6871 = 0, $6872 = 0, $6873 = 0, $6874 = 0, $6875 = 0, $6876 = 0, $6877 = 0, $6878 = 0, $6879 = 0, $688 = 0, $6880 = 0, $6881 = 0, $6882 = 0, $6883 = 0, $6884 = 0, $6885 = 0; + var $6886 = 0, $6887 = 0, $6888 = 0, $6889 = 0, $689 = 0, $6890 = 0, $6891 = 0, $6892 = 0, $6893 = 0, $6894 = 0, $6895 = 0, $6896 = 0, $6897 = 0, $6898 = 0, $6899 = 0, $69 = 0, $690 = 0, $6900 = 0, $6901 = 0, $6902 = 0; + var $6903 = 0, $6904 = 0, $6905 = 0, $6906 = 0, $6907 = 0, $6908 = 0, $6909 = 0, $691 = 0, $6910 = 0, $6911 = 0, $6912 = 0, $6913 = 0, $6914 = 0, $6915 = 0, $6916 = 0, $6917 = 0, $6918 = 0, $6919 = 0, $692 = 0, $6920 = 0; + var $6921 = 0, $6922 = 0, $6923 = 0, $6924 = 0, $6925 = 0, $6926 = 0, $6927 = 0, $6928 = 0, $6929 = 0, $693 = 0, $6930 = 0, $6931 = 0, $6932 = 0, $6933 = 0, $6934 = 0, $6935 = 0, $6936 = 0, $6937 = 0, $6938 = 0, $6939 = 0; + var $694 = 0, $6940 = 0, $6941 = 0, $6942 = 0, $6943 = 0, $6944 = 0, $6945 = 0, $6946 = 0, $6947 = 0, $6948 = 0, $6949 = 0, $695 = 0, $6950 = 0, $6951 = 0, $6952 = 0, $6953 = 0, $6954 = 0, $6955 = 0, $6956 = 0, $6957 = 0; + var $6958 = 0, $6959 = 0, $696 = 0, $6960 = 0, $6961 = 0, $6962 = 0, $6963 = 0, $6964 = 0, $6965 = 0, $6966 = 0, $6967 = 0, $6968 = 0, $6969 = 0, $697 = 0, $6970 = 0, $6971 = 0, $6972 = 0, $6973 = 0, $6974 = 0, $6975 = 0; + var $6976 = 0, $6977 = 0, $6978 = 0, $6979 = 0, $698 = 0, $6980 = 0, $6981 = 0, $6982 = 0, $6983 = 0, $6984 = 0, $6985 = 0, $6986 = 0, $6987 = 0, $6988 = 0, $6989 = 0, $699 = 0, $6990 = 0, $6991 = 0, $6992 = 0, $6993 = 0; + var $6994 = 0, $6995 = 0, $6996 = 0, $6997 = 0, $6998 = 0, $6999 = 0, $7 = 0, $70 = 0, $700 = 0, $7000 = 0, $7001 = 0, $7002 = 0, $7003 = 0, $7004 = 0, $7005 = 0, $7006 = 0, $7007 = 0, $7008 = 0, $7009 = 0, $701 = 0; + var $7010 = 0, $7011 = 0, $7012 = 0, $7013 = 0, $7014 = 0, $7015 = 0, $7016 = 0, $7017 = 0, $7018 = 0, $7019 = 0, $702 = 0, $7020 = 0, $7021 = 0, $7022 = 0, $7023 = 0, $7024 = 0, $7025 = 0, $7026 = 0, $7027 = 0, $7028 = 0; + var $7029 = 0, $703 = 0, $7030 = 0, $7031 = 0, $7032 = 0, $7033 = 0, $7034 = 0, $7035 = 0, $7036 = 0, $7037 = 0, $7038 = 0, $7039 = 0, $704 = 0, $7040 = 0, $7041 = 0, $7042 = 0, $7043 = 0, $7044 = 0, $7045 = 0, $7046 = 0; + var $7047 = 0, $7048 = 0, $7049 = 0, $705 = 0, $7050 = 0, $7051 = 0, $7052 = 0, $7053 = 0, $7054 = 0, $7055 = 0, $7056 = 0, $7057 = 0, $7058 = 0, $7059 = 0, $706 = 0, $7060 = 0, $7061 = 0, $7062 = 0, $7063 = 0, $7064 = 0; + var $7065 = 0, $7066 = 0, $7067 = 0, $7068 = 0, $7069 = 0, $707 = 0, $7070 = 0, $7071 = 0, $7072 = 0, $7073 = 0, $7074 = 0, $7075 = 0, $7076 = 0, $7077 = 0, $7078 = 0, $7079 = 0, $708 = 0, $7080 = 0, $7081 = 0, $7082 = 0; + var $7083 = 0, $7084 = 0, $7085 = 0, $7086 = 0, $7087 = 0, $7088 = 0, $7089 = 0, $709 = 0, $7090 = 0, $7091 = 0, $7092 = 0, $7093 = 0, $7094 = 0, $7095 = 0, $7096 = 0, $7097 = 0, $7098 = 0, $7099 = 0, $71 = 0, $710 = 0; + var $7100 = 0, $7101 = 0, $7102 = 0, $7103 = 0, $7104 = 0, $7105 = 0, $7106 = 0, $7107 = 0, $7108 = 0, $7109 = 0, $711 = 0, $7110 = 0, $7111 = 0, $7112 = 0, $7113 = 0, $7114 = 0, $7115 = 0, $7116 = 0, $7117 = 0, $7118 = 0; + var $7119 = 0, $712 = 0, $7120 = 0, $7121 = 0, $7122 = 0, $7123 = 0, $7124 = 0, $7125 = 0, $7126 = 0, $7127 = 0, $7128 = 0, $7129 = 0, $713 = 0, $7130 = 0, $7131 = 0, $7132 = 0, $7133 = 0, $7134 = 0, $7135 = 0, $7136 = 0; + var $7137 = 0, $7138 = 0, $7139 = 0, $714 = 0, $7140 = 0, $7141 = 0, $7142 = 0, $7143 = 0, $7144 = 0, $7145 = 0, $7146 = 0, $7147 = 0, $7148 = 0, $7149 = 0, $715 = 0, $7150 = 0, $7151 = 0, $7152 = 0, $7153 = 0, $7154 = 0; + var $7155 = 0, $7156 = 0, $7157 = 0, $7158 = 0, $7159 = 0, $716 = 0, $7160 = 0, $7161 = 0, $7162 = 0, $7163 = 0, $7164 = 0, $7165 = 0, $7166 = 0, $7167 = 0, $7168 = 0, $7169 = 0, $717 = 0, $7170 = 0, $7171 = 0, $7172 = 0; + var $7173 = 0, $7174 = 0, $7175 = 0, $7176 = 0, $7177 = 0, $7178 = 0, $7179 = 0, $718 = 0, $7180 = 0, $7181 = 0, $7182 = 0, $7183 = 0, $7184 = 0, $7185 = 0, $7186 = 0, $7187 = 0, $7188 = 0, $7189 = 0, $719 = 0, $7190 = 0; + var $7191 = 0, $7192 = 0, $7193 = 0, $7194 = 0, $7195 = 0, $7196 = 0, $7197 = 0, $7198 = 0, $7199 = 0, $72 = 0, $720 = 0, $7200 = 0, $7201 = 0, $7202 = 0, $7203 = 0, $7204 = 0, $7205 = 0, $7206 = 0, $7207 = 0, $7208 = 0; + var $7209 = 0, $721 = 0, $7210 = 0, $7211 = 0, $7212 = 0, $7213 = 0, $7214 = 0, $7215 = 0, $7216 = 0, $7217 = 0, $7218 = 0, $7219 = 0, $722 = 0, $7220 = 0, $7221 = 0, $7222 = 0, $7223 = 0, $7224 = 0, $7225 = 0, $7226 = 0; + var $7227 = 0, $7228 = 0, $7229 = 0, $723 = 0, $7230 = 0, $7231 = 0, $7232 = 0, $7233 = 0, $7234 = 0, $7235 = 0, $7236 = 0, $7237 = 0, $7238 = 0, $7239 = 0, $724 = 0, $7240 = 0, $7241 = 0, $7242 = 0, $7243 = 0, $7244 = 0; + var $7245 = 0, $7246 = 0, $7247 = 0, $7248 = 0, $7249 = 0, $725 = 0, $7250 = 0, $7251 = 0, $7252 = 0, $7253 = 0, $7254 = 0, $7255 = 0, $7256 = 0, $7257 = 0, $7258 = 0, $7259 = 0, $726 = 0, $7260 = 0, $7261 = 0, $7262 = 0; + var $7263 = 0, $7264 = 0, $7265 = 0, $7266 = 0, $7267 = 0, $7268 = 0, $7269 = 0, $727 = 0, $7270 = 0, $7271 = 0, $7272 = 0, $7273 = 0, $7274 = 0, $7275 = 0, $7276 = 0, $7277 = 0, $7278 = 0, $7279 = 0, $728 = 0, $7280 = 0; + var $7281 = 0, $7282 = 0, $7283 = 0, $7284 = 0, $7285 = 0, $7286 = 0, $7287 = 0, $7288 = 0, $7289 = 0, $729 = 0, $7290 = 0, $7291 = 0, $7292 = 0, $7293 = 0, $7294 = 0, $7295 = 0, $7296 = 0, $7297 = 0, $7298 = 0, $7299 = 0; + var $73 = 0, $730 = 0, $7300 = 0, $7301 = 0, $7302 = 0, $7303 = 0, $7304 = 0, $7305 = 0, $7306 = 0, $7307 = 0, $7308 = 0, $7309 = 0, $731 = 0, $7310 = 0, $7311 = 0, $7312 = 0, $7313 = 0, $7314 = 0, $7315 = 0, $7316 = 0; + var $7317 = 0, $7318 = 0, $7319 = 0, $732 = 0, $7320 = 0, $7321 = 0, $7322 = 0, $7323 = 0, $7324 = 0, $7325 = 0, $7326 = 0, $7327 = 0, $7328 = 0, $7329 = 0, $733 = 0, $7330 = 0, $7331 = 0, $7332 = 0, $7333 = 0, $7334 = 0; + var $7335 = 0, $7336 = 0, $7337 = 0, $7338 = 0, $7339 = 0, $734 = 0, $7340 = 0, $7341 = 0, $7342 = 0, $7343 = 0, $7344 = 0, $7345 = 0, $7346 = 0, $7347 = 0, $7348 = 0, $7349 = 0, $735 = 0, $7350 = 0, $7351 = 0, $7352 = 0; + var $7353 = 0, $7354 = 0, $7355 = 0, $7356 = 0, $7357 = 0, $7358 = 0, $7359 = 0, $736 = 0, $7360 = 0, $7361 = 0, $7362 = 0, $7363 = 0, $7364 = 0, $7365 = 0, $7366 = 0, $7367 = 0, $7368 = 0, $7369 = 0, $737 = 0, $7370 = 0; + var $7371 = 0, $7372 = 0, $7373 = 0, $7374 = 0, $7375 = 0, $7376 = 0, $7377 = 0, $7378 = 0, $7379 = 0, $738 = 0, $7380 = 0, $7381 = 0, $7382 = 0, $7383 = 0, $7384 = 0, $7385 = 0, $7386 = 0, $7387 = 0, $7388 = 0, $7389 = 0; + var $739 = 0, $7390 = 0, $7391 = 0, $7392 = 0, $7393 = 0, $7394 = 0, $7395 = 0, $7396 = 0, $7397 = 0, $7398 = 0, $7399 = 0, $74 = 0, $740 = 0, $7400 = 0, $7401 = 0, $7402 = 0, $7403 = 0, $7404 = 0, $7405 = 0, $7406 = 0; + var $7407 = 0, $7408 = 0, $7409 = 0, $741 = 0, $7410 = 0, $7411 = 0, $7412 = 0, $7413 = 0, $7414 = 0, $7415 = 0, $7416 = 0, $7417 = 0, $7418 = 0, $7419 = 0, $742 = 0, $7420 = 0, $7421 = 0, $7422 = 0, $7423 = 0, $7424 = 0; + var $7425 = 0, $7426 = 0, $7427 = 0, $7428 = 0, $7429 = 0, $743 = 0, $7430 = 0, $7431 = 0, $7432 = 0, $7433 = 0, $7434 = 0, $7435 = 0, $7436 = 0, $7437 = 0, $7438 = 0, $7439 = 0, $744 = 0, $7440 = 0, $7441 = 0, $7442 = 0; + var $7443 = 0, $7444 = 0, $7445 = 0, $7446 = 0, $7447 = 0, $7448 = 0, $7449 = 0, $745 = 0, $7450 = 0, $7451 = 0, $7452 = 0, $7453 = 0, $7454 = 0, $7455 = 0, $7456 = 0, $7457 = 0, $7458 = 0, $7459 = 0, $746 = 0, $7460 = 0; + var $7461 = 0, $7462 = 0, $7463 = 0, $7464 = 0, $7465 = 0, $7466 = 0, $7467 = 0, $7468 = 0, $7469 = 0, $747 = 0, $7470 = 0, $7471 = 0, $7472 = 0, $7473 = 0, $7474 = 0, $7475 = 0, $7476 = 0, $7477 = 0, $7478 = 0, $7479 = 0; + var $748 = 0, $7480 = 0, $7481 = 0, $7482 = 0, $7483 = 0, $7484 = 0, $7485 = 0, $7486 = 0, $7487 = 0, $7488 = 0, $7489 = 0, $749 = 0, $7490 = 0, $7491 = 0, $7492 = 0, $7493 = 0, $7494 = 0, $7495 = 0, $7496 = 0, $7497 = 0; + var $7498 = 0, $7499 = 0, $75 = 0, $750 = 0, $7500 = 0, $7501 = 0, $7502 = 0, $7503 = 0, $7504 = 0, $7505 = 0, $7506 = 0, $7507 = 0, $7508 = 0, $7509 = 0, $751 = 0, $7510 = 0, $7511 = 0, $7512 = 0, $7513 = 0, $7514 = 0; + var $7515 = 0, $7516 = 0, $7517 = 0, $7518 = 0, $7519 = 0, $752 = 0, $7520 = 0, $7521 = 0, $7522 = 0, $7523 = 0, $7524 = 0, $7525 = 0, $7526 = 0, $7527 = 0, $7528 = 0, $7529 = 0, $753 = 0, $7530 = 0, $7531 = 0, $7532 = 0; + var $7533 = 0, $7534 = 0, $7535 = 0, $7536 = 0, $7537 = 0, $7538 = 0, $7539 = 0, $754 = 0, $7540 = 0, $7541 = 0, $7542 = 0, $7543 = 0, $7544 = 0, $7545 = 0, $7546 = 0, $7547 = 0, $7548 = 0, $7549 = 0, $755 = 0, $7550 = 0; + var $7551 = 0, $7552 = 0, $7553 = 0, $7554 = 0, $7555 = 0, $7556 = 0, $7557 = 0, $7558 = 0, $7559 = 0, $756 = 0, $7560 = 0, $7561 = 0, $7562 = 0, $7563 = 0, $7564 = 0, $7565 = 0, $7566 = 0, $7567 = 0, $7568 = 0, $7569 = 0; + var $757 = 0, $7570 = 0, $7571 = 0, $7572 = 0, $7573 = 0, $7574 = 0, $7575 = 0, $7576 = 0, $7577 = 0, $7578 = 0, $7579 = 0, $758 = 0, $7580 = 0, $7581 = 0, $7582 = 0, $7583 = 0, $7584 = 0, $7585 = 0, $7586 = 0, $7587 = 0; + var $7588 = 0, $7589 = 0, $759 = 0, $7590 = 0, $7591 = 0, $7592 = 0, $7593 = 0, $7594 = 0, $7595 = 0, $7596 = 0, $7597 = 0, $7598 = 0, $7599 = 0, $76 = 0, $760 = 0, $7600 = 0, $7601 = 0, $7602 = 0, $7603 = 0, $7604 = 0; + var $7605 = 0, $7606 = 0, $7607 = 0, $7608 = 0, $7609 = 0, $761 = 0, $7610 = 0, $7611 = 0, $7612 = 0, $7613 = 0, $7614 = 0, $7615 = 0, $7616 = 0, $7617 = 0, $7618 = 0, $7619 = 0, $762 = 0, $7620 = 0, $7621 = 0, $7622 = 0; + var $7623 = 0, $7624 = 0, $7625 = 0, $7626 = 0, $7627 = 0, $7628 = 0, $7629 = 0, $763 = 0, $7630 = 0, $7631 = 0, $7632 = 0, $7633 = 0, $7634 = 0, $7635 = 0, $7636 = 0, $7637 = 0, $7638 = 0, $7639 = 0, $764 = 0, $7640 = 0; + var $7641 = 0, $7642 = 0, $7643 = 0, $7644 = 0, $7645 = 0, $7646 = 0, $7647 = 0, $7648 = 0, $7649 = 0, $765 = 0, $7650 = 0, $7651 = 0, $7652 = 0, $7653 = 0, $7654 = 0, $7655 = 0, $7656 = 0, $7657 = 0, $7658 = 0, $7659 = 0; + var $766 = 0, $7660 = 0, $7661 = 0, $7662 = 0, $7663 = 0, $7664 = 0, $7665 = 0, $7666 = 0, $7667 = 0, $7668 = 0, $7669 = 0, $767 = 0, $7670 = 0, $7671 = 0, $7672 = 0, $7673 = 0, $7674 = 0, $7675 = 0, $7676 = 0, $7677 = 0; + var $7678 = 0, $7679 = 0, $768 = 0, $7680 = 0, $7681 = 0, $7682 = 0, $7683 = 0, $7684 = 0, $7685 = 0, $7686 = 0, $7687 = 0, $7688 = 0, $7689 = 0, $769 = 0, $7690 = 0, $7691 = 0, $7692 = 0, $7693 = 0, $7694 = 0, $7695 = 0; + var $7696 = 0, $7697 = 0, $7698 = 0, $7699 = 0, $77 = 0, $770 = 0, $7700 = 0, $7701 = 0, $7702 = 0, $7703 = 0, $7704 = 0, $7705 = 0, $7706 = 0, $7707 = 0, $7708 = 0, $7709 = 0, $771 = 0, $7710 = 0, $7711 = 0, $7712 = 0; + var $7713 = 0, $7714 = 0, $7715 = 0, $7716 = 0, $7717 = 0, $7718 = 0, $7719 = 0, $772 = 0, $7720 = 0, $7721 = 0, $7722 = 0, $7723 = 0, $7724 = 0, $7725 = 0, $7726 = 0, $7727 = 0, $7728 = 0, $7729 = 0, $773 = 0, $7730 = 0; + var $7731 = 0, $7732 = 0, $7733 = 0, $7734 = 0, $7735 = 0, $7736 = 0, $7737 = 0, $7738 = 0, $7739 = 0, $774 = 0, $7740 = 0, $7741 = 0, $7742 = 0, $7743 = 0, $7744 = 0, $7745 = 0, $7746 = 0, $7747 = 0, $7748 = 0, $7749 = 0; + var $775 = 0, $7750 = 0, $7751 = 0, $7752 = 0, $7753 = 0, $7754 = 0, $7755 = 0, $7756 = 0, $7757 = 0, $7758 = 0, $7759 = 0, $776 = 0, $7760 = 0, $7761 = 0, $7762 = 0, $7763 = 0, $7764 = 0, $7765 = 0, $7766 = 0, $7767 = 0; + var $7768 = 0, $7769 = 0, $777 = 0, $7770 = 0, $7771 = 0, $7772 = 0, $7773 = 0, $7774 = 0, $7775 = 0, $7776 = 0, $7777 = 0, $7778 = 0, $7779 = 0, $778 = 0, $7780 = 0, $7781 = 0, $7782 = 0, $7783 = 0, $7784 = 0, $7785 = 0; + var $7786 = 0, $7787 = 0, $7788 = 0, $7789 = 0, $779 = 0, $7790 = 0, $7791 = 0, $7792 = 0, $7793 = 0, $7794 = 0, $7795 = 0, $7796 = 0, $7797 = 0, $7798 = 0, $7799 = 0, $78 = 0, $780 = 0, $7800 = 0, $7801 = 0, $7802 = 0; + var $7803 = 0, $7804 = 0, $7805 = 0, $7806 = 0, $7807 = 0, $7808 = 0, $7809 = 0, $781 = 0, $7810 = 0, $7811 = 0, $7812 = 0, $7813 = 0, $7814 = 0, $7815 = 0, $7816 = 0, $7817 = 0, $7818 = 0, $7819 = 0, $782 = 0, $7820 = 0; + var $7821 = 0, $7822 = 0, $7823 = 0, $7824 = 0, $7825 = 0, $7826 = 0, $7827 = 0, $7828 = 0, $7829 = 0, $783 = 0, $7830 = 0, $7831 = 0, $7832 = 0, $7833 = 0, $7834 = 0, $7835 = 0, $7836 = 0, $7837 = 0, $7838 = 0, $7839 = 0; + var $784 = 0, $7840 = 0, $7841 = 0, $7842 = 0, $7843 = 0, $7844 = 0, $7845 = 0, $7846 = 0, $7847 = 0, $7848 = 0, $7849 = 0, $785 = 0, $7850 = 0, $7851 = 0, $7852 = 0, $7853 = 0, $7854 = 0, $7855 = 0, $7856 = 0, $7857 = 0; + var $7858 = 0, $7859 = 0, $786 = 0, $7860 = 0, $7861 = 0, $7862 = 0, $7863 = 0, $7864 = 0, $7865 = 0, $7866 = 0, $7867 = 0, $7868 = 0, $7869 = 0, $787 = 0, $7870 = 0, $7871 = 0, $7872 = 0, $7873 = 0, $7874 = 0, $7875 = 0; + var $7876 = 0, $7877 = 0, $7878 = 0, $7879 = 0, $788 = 0, $7880 = 0, $7881 = 0, $7882 = 0, $7883 = 0, $7884 = 0, $7885 = 0, $7886 = 0, $7887 = 0, $7888 = 0, $7889 = 0, $789 = 0, $7890 = 0, $7891 = 0, $7892 = 0, $7893 = 0; + var $7894 = 0, $7895 = 0, $7896 = 0, $7897 = 0, $7898 = 0, $7899 = 0, $79 = 0, $790 = 0, $7900 = 0, $7901 = 0, $7902 = 0, $7903 = 0, $7904 = 0, $7905 = 0, $7906 = 0, $7907 = 0, $7908 = 0, $7909 = 0, $791 = 0, $7910 = 0; + var $7911 = 0, $7912 = 0, $7913 = 0, $7914 = 0, $7915 = 0, $7916 = 0, $7917 = 0, $7918 = 0, $7919 = 0, $792 = 0, $7920 = 0, $7921 = 0, $7922 = 0, $7923 = 0, $7924 = 0, $7925 = 0, $7926 = 0, $7927 = 0, $7928 = 0, $7929 = 0; + var $793 = 0, $7930 = 0, $7931 = 0, $7932 = 0, $7933 = 0, $7934 = 0, $7935 = 0, $7936 = 0, $7937 = 0, $7938 = 0, $7939 = 0, $794 = 0, $7940 = 0, $7941 = 0, $7942 = 0, $7943 = 0, $7944 = 0, $7945 = 0, $7946 = 0, $7947 = 0; + var $7948 = 0, $7949 = 0, $795 = 0, $7950 = 0, $7951 = 0, $7952 = 0, $7953 = 0, $7954 = 0, $7955 = 0, $7956 = 0, $7957 = 0, $7958 = 0, $7959 = 0, $796 = 0, $7960 = 0, $7961 = 0, $7962 = 0, $7963 = 0, $7964 = 0, $7965 = 0; + var $7966 = 0, $7967 = 0, $7968 = 0, $7969 = 0, $797 = 0, $7970 = 0, $7971 = 0, $7972 = 0, $7973 = 0, $7974 = 0, $7975 = 0, $7976 = 0, $7977 = 0, $7978 = 0, $7979 = 0, $798 = 0, $7980 = 0, $7981 = 0, $7982 = 0, $7983 = 0; + var $7984 = 0, $7985 = 0, $7986 = 0, $7987 = 0, $7988 = 0, $7989 = 0, $799 = 0, $7990 = 0, $7991 = 0, $7992 = 0, $7993 = 0, $7994 = 0, $7995 = 0, $7996 = 0, $7997 = 0, $7998 = 0, $7999 = 0, $8 = 0, $80 = 0, $800 = 0; + var $8000 = 0, $8001 = 0, $8002 = 0, $8003 = 0, $8004 = 0, $8005 = 0, $8006 = 0, $8007 = 0, $8008 = 0, $8009 = 0, $801 = 0, $8010 = 0, $8011 = 0, $8012 = 0, $8013 = 0, $8014 = 0, $8015 = 0, $8016 = 0, $8017 = 0, $8018 = 0; + var $8019 = 0, $802 = 0, $8020 = 0, $8021 = 0, $8022 = 0, $8023 = 0, $8024 = 0, $8025 = 0, $8026 = 0, $8027 = 0, $8028 = 0, $8029 = 0, $803 = 0, $8030 = 0, $8031 = 0, $8032 = 0, $8033 = 0, $8034 = 0, $8035 = 0, $8036 = 0; + var $8037 = 0, $8038 = 0, $8039 = 0, $804 = 0, $8040 = 0, $8041 = 0, $8042 = 0, $8043 = 0, $8044 = 0, $8045 = 0, $8046 = 0, $8047 = 0, $8048 = 0, $8049 = 0, $805 = 0, $8050 = 0, $8051 = 0, $8052 = 0, $8053 = 0, $8054 = 0; + var $8055 = 0, $8056 = 0, $8057 = 0, $8058 = 0, $8059 = 0, $806 = 0, $8060 = 0, $8061 = 0, $8062 = 0, $8063 = 0, $8064 = 0, $8065 = 0, $8066 = 0, $8067 = 0, $8068 = 0, $8069 = 0, $807 = 0, $8070 = 0, $8071 = 0, $8072 = 0; + var $8073 = 0, $8074 = 0, $8075 = 0, $8076 = 0, $8077 = 0, $8078 = 0, $8079 = 0, $808 = 0, $8080 = 0, $8081 = 0, $8082 = 0, $8083 = 0, $8084 = 0, $8085 = 0, $8086 = 0, $8087 = 0, $8088 = 0, $8089 = 0, $809 = 0, $8090 = 0; + var $8091 = 0, $8092 = 0, $8093 = 0, $8094 = 0, $8095 = 0, $8096 = 0, $8097 = 0, $8098 = 0, $8099 = 0, $81 = 0, $810 = 0, $8100 = 0, $8101 = 0, $8102 = 0, $8103 = 0, $8104 = 0, $8105 = 0, $8106 = 0, $8107 = 0, $8108 = 0; + var $8109 = 0, $811 = 0, $8110 = 0, $8111 = 0, $8112 = 0, $8113 = 0, $8114 = 0, $8115 = 0, $8116 = 0, $8117 = 0, $8118 = 0, $8119 = 0, $812 = 0, $8120 = 0, $8121 = 0, $8122 = 0, $8123 = 0, $8124 = 0, $8125 = 0, $8126 = 0; + var $8127 = 0, $8128 = 0, $8129 = 0, $813 = 0, $8130 = 0, $8131 = 0, $8132 = 0, $8133 = 0, $8134 = 0, $8135 = 0, $8136 = 0, $8137 = 0, $8138 = 0, $8139 = 0, $814 = 0, $8140 = 0, $8141 = 0, $8142 = 0, $8143 = 0, $8144 = 0; + var $8145 = 0, $8146 = 0, $8147 = 0, $8148 = 0, $8149 = 0, $815 = 0, $8150 = 0, $8151 = 0, $8152 = 0, $8153 = 0, $8154 = 0, $8155 = 0, $8156 = 0, $8157 = 0, $8158 = 0, $8159 = 0, $816 = 0, $8160 = 0, $8161 = 0, $8162 = 0; + var $8163 = 0, $8164 = 0, $8165 = 0, $8166 = 0, $8167 = 0, $8168 = 0, $8169 = 0, $817 = 0, $8170 = 0, $8171 = 0, $8172 = 0, $8173 = 0, $8174 = 0, $8175 = 0, $8176 = 0, $8177 = 0, $8178 = 0, $8179 = 0, $818 = 0, $8180 = 0; + var $8181 = 0, $8182 = 0, $8183 = 0, $8184 = 0, $8185 = 0, $8186 = 0, $8187 = 0, $8188 = 0, $8189 = 0, $819 = 0, $8190 = 0, $8191 = 0, $8192 = 0, $8193 = 0, $8194 = 0, $8195 = 0, $8196 = 0, $8197 = 0, $8198 = 0, $8199 = 0; + var $82 = 0, $820 = 0, $8200 = 0, $8201 = 0, $8202 = 0, $8203 = 0, $8204 = 0, $8205 = 0, $8206 = 0, $8207 = 0, $8208 = 0, $8209 = 0, $821 = 0, $8210 = 0, $8211 = 0, $8212 = 0, $8213 = 0, $8214 = 0, $8215 = 0, $8216 = 0; + var $8217 = 0, $8218 = 0, $8219 = 0, $822 = 0, $8220 = 0, $8221 = 0, $8222 = 0, $8223 = 0, $8224 = 0, $8225 = 0, $8226 = 0, $8227 = 0, $8228 = 0, $8229 = 0, $823 = 0, $8230 = 0, $8231 = 0, $8232 = 0, $8233 = 0, $8234 = 0; + var $8235 = 0, $8236 = 0, $8237 = 0, $8238 = 0, $8239 = 0, $824 = 0, $8240 = 0, $8241 = 0, $8242 = 0, $8243 = 0, $8244 = 0, $8245 = 0, $8246 = 0, $8247 = 0, $8248 = 0, $8249 = 0, $825 = 0, $8250 = 0, $8251 = 0, $8252 = 0; + var $8253 = 0, $8254 = 0, $8255 = 0, $8256 = 0, $8257 = 0, $8258 = 0, $8259 = 0, $826 = 0, $8260 = 0, $8261 = 0, $8262 = 0, $8263 = 0, $8264 = 0, $8265 = 0, $8266 = 0, $8267 = 0, $8268 = 0, $8269 = 0, $827 = 0, $8270 = 0; + var $8271 = 0, $8272 = 0, $8273 = 0, $8274 = 0, $8275 = 0, $8276 = 0, $8277 = 0, $8278 = 0, $8279 = 0, $828 = 0, $8280 = 0, $8281 = 0, $8282 = 0, $8283 = 0, $8284 = 0, $8285 = 0, $8286 = 0, $8287 = 0, $8288 = 0, $8289 = 0; + var $829 = 0, $8290 = 0, $8291 = 0, $8292 = 0, $8293 = 0, $8294 = 0, $8295 = 0, $8296 = 0, $8297 = 0, $8298 = 0, $8299 = 0, $83 = 0, $830 = 0, $8300 = 0, $8301 = 0, $8302 = 0, $8303 = 0, $8304 = 0, $8305 = 0, $8306 = 0; + var $8307 = 0, $8308 = 0, $8309 = 0, $831 = 0, $8310 = 0, $8311 = 0, $8312 = 0, $8313 = 0, $8314 = 0, $8315 = 0, $8316 = 0, $8317 = 0, $8318 = 0, $8319 = 0, $832 = 0, $8320 = 0, $8321 = 0, $8322 = 0, $8323 = 0, $8324 = 0; + var $8325 = 0, $8326 = 0, $8327 = 0, $8328 = 0, $8329 = 0, $833 = 0, $8330 = 0, $8331 = 0, $8332 = 0, $8333 = 0, $8334 = 0, $8335 = 0, $8336 = 0, $8337 = 0, $8338 = 0, $8339 = 0, $834 = 0, $8340 = 0, $8341 = 0, $8342 = 0; + var $8343 = 0, $8344 = 0, $8345 = 0, $8346 = 0, $8347 = 0, $8348 = 0, $8349 = 0, $835 = 0, $8350 = 0, $8351 = 0, $8352 = 0, $8353 = 0, $8354 = 0, $8355 = 0, $8356 = 0, $8357 = 0, $8358 = 0, $8359 = 0, $836 = 0, $8360 = 0; + var $8361 = 0, $8362 = 0, $8363 = 0, $8364 = 0, $8365 = 0, $8366 = 0, $8367 = 0, $8368 = 0, $8369 = 0, $837 = 0, $8370 = 0, $8371 = 0, $8372 = 0, $8373 = 0, $8374 = 0, $8375 = 0, $8376 = 0, $8377 = 0, $8378 = 0, $8379 = 0; + var $838 = 0, $8380 = 0, $8381 = 0, $8382 = 0, $8383 = 0, $8384 = 0, $8385 = 0, $8386 = 0, $8387 = 0, $8388 = 0, $8389 = 0, $839 = 0, $8390 = 0, $8391 = 0, $8392 = 0, $8393 = 0, $8394 = 0, $8395 = 0, $8396 = 0, $8397 = 0; + var $8398 = 0, $8399 = 0, $84 = 0, $840 = 0, $8400 = 0, $8401 = 0, $8402 = 0, $8403 = 0, $8404 = 0, $8405 = 0, $8406 = 0, $8407 = 0, $8408 = 0, $8409 = 0, $841 = 0, $8410 = 0, $8411 = 0, $8412 = 0, $8413 = 0, $8414 = 0; + var $8415 = 0, $8416 = 0, $8417 = 0, $8418 = 0, $8419 = 0, $842 = 0, $8420 = 0, $8421 = 0, $8422 = 0, $8423 = 0, $8424 = 0, $8425 = 0, $8426 = 0, $8427 = 0, $8428 = 0, $8429 = 0, $843 = 0, $8430 = 0, $8431 = 0, $8432 = 0; + var $8433 = 0, $8434 = 0, $8435 = 0, $8436 = 0, $8437 = 0, $8438 = 0, $8439 = 0, $844 = 0, $8440 = 0, $8441 = 0, $8442 = 0, $8443 = 0, $8444 = 0, $8445 = 0, $8446 = 0, $8447 = 0, $8448 = 0, $8449 = 0, $845 = 0, $8450 = 0; + var $8451 = 0, $8452 = 0, $8453 = 0, $8454 = 0, $8455 = 0, $8456 = 0, $8457 = 0, $8458 = 0, $8459 = 0, $846 = 0, $8460 = 0, $8461 = 0, $8462 = 0, $8463 = 0, $8464 = 0, $8465 = 0, $8466 = 0, $8467 = 0, $8468 = 0, $8469 = 0; + var $847 = 0, $8470 = 0, $8471 = 0, $8472 = 0, $8473 = 0, $8474 = 0, $8475 = 0, $8476 = 0, $8477 = 0, $8478 = 0, $8479 = 0, $848 = 0, $8480 = 0, $8481 = 0, $8482 = 0, $8483 = 0, $8484 = 0, $8485 = 0, $8486 = 0, $8487 = 0; + var $8488 = 0, $8489 = 0, $849 = 0, $8490 = 0, $8491 = 0, $8492 = 0, $8493 = 0, $8494 = 0, $8495 = 0, $8496 = 0, $8497 = 0, $8498 = 0, $8499 = 0, $85 = 0, $850 = 0, $8500 = 0, $8501 = 0, $8502 = 0, $8503 = 0, $8504 = 0; + var $8505 = 0, $8506 = 0, $8507 = 0, $8508 = 0, $8509 = 0, $851 = 0, $8510 = 0, $8511 = 0, $8512 = 0, $8513 = 0, $8514 = 0, $8515 = 0, $8516 = 0, $8517 = 0, $8518 = 0, $8519 = 0, $852 = 0, $8520 = 0, $8521 = 0, $8522 = 0; + var $8523 = 0, $8524 = 0, $8525 = 0, $8526 = 0, $8527 = 0, $8528 = 0, $8529 = 0, $853 = 0, $8530 = 0, $8531 = 0, $8532 = 0, $8533 = 0, $8534 = 0, $8535 = 0, $8536 = 0, $8537 = 0, $8538 = 0, $8539 = 0, $854 = 0, $8540 = 0; + var $8541 = 0, $8542 = 0, $8543 = 0, $8544 = 0, $8545 = 0, $8546 = 0, $8547 = 0, $8548 = 0, $8549 = 0, $855 = 0, $8550 = 0, $8551 = 0, $8552 = 0, $8553 = 0, $8554 = 0, $8555 = 0, $8556 = 0, $8557 = 0, $8558 = 0, $8559 = 0; + var $856 = 0, $8560 = 0, $8561 = 0, $8562 = 0, $8563 = 0, $8564 = 0, $8565 = 0, $8566 = 0, $8567 = 0, $8568 = 0, $8569 = 0, $857 = 0, $8570 = 0, $8571 = 0, $8572 = 0, $8573 = 0, $8574 = 0, $8575 = 0, $8576 = 0, $8577 = 0; + var $8578 = 0, $8579 = 0, $858 = 0, $8580 = 0, $8581 = 0, $8582 = 0, $8583 = 0, $8584 = 0, $8585 = 0, $8586 = 0, $8587 = 0, $8588 = 0, $8589 = 0, $859 = 0, $8590 = 0, $8591 = 0, $8592 = 0, $8593 = 0, $8594 = 0, $8595 = 0; + var $8596 = 0, $8597 = 0, $8598 = 0, $8599 = 0, $86 = 0, $860 = 0, $8600 = 0, $8601 = 0, $8602 = 0, $8603 = 0, $8604 = 0, $8605 = 0, $8606 = 0, $8607 = 0, $8608 = 0, $8609 = 0, $861 = 0, $8610 = 0, $8611 = 0, $8612 = 0; + var $8613 = 0, $8614 = 0, $8615 = 0, $8616 = 0, $8617 = 0, $8618 = 0, $8619 = 0, $862 = 0, $8620 = 0, $8621 = 0, $8622 = 0, $8623 = 0, $8624 = 0, $8625 = 0, $8626 = 0, $8627 = 0, $8628 = 0, $8629 = 0, $863 = 0, $8630 = 0; + var $8631 = 0, $8632 = 0, $8633 = 0, $8634 = 0, $8635 = 0, $8636 = 0, $8637 = 0, $8638 = 0, $8639 = 0, $864 = 0, $8640 = 0, $8641 = 0, $8642 = 0, $8643 = 0, $8644 = 0, $8645 = 0, $8646 = 0, $8647 = 0, $8648 = 0, $8649 = 0; + var $865 = 0, $8650 = 0, $8651 = 0, $8652 = 0, $8653 = 0, $8654 = 0, $8655 = 0, $8656 = 0, $8657 = 0, $8658 = 0, $8659 = 0, $866 = 0, $8660 = 0, $8661 = 0, $8662 = 0, $8663 = 0, $8664 = 0, $8665 = 0, $8666 = 0, $8667 = 0; + var $8668 = 0, $8669 = 0, $867 = 0, $8670 = 0, $8671 = 0, $8672 = 0, $8673 = 0, $8674 = 0, $8675 = 0, $8676 = 0, $8677 = 0, $8678 = 0, $8679 = 0, $868 = 0, $8680 = 0, $8681 = 0, $8682 = 0, $8683 = 0, $8684 = 0, $8685 = 0; + var $8686 = 0, $8687 = 0, $8688 = 0, $8689 = 0, $869 = 0, $8690 = 0, $8691 = 0, $8692 = 0, $8693 = 0, $8694 = 0, $8695 = 0, $8696 = 0, $8697 = 0, $8698 = 0, $8699 = 0, $87 = 0, $870 = 0, $8700 = 0, $8701 = 0, $8702 = 0; + var $8703 = 0, $8704 = 0, $8705 = 0, $8706 = 0, $8707 = 0, $8708 = 0, $8709 = 0, $871 = 0, $8710 = 0, $8711 = 0, $8712 = 0, $8713 = 0, $8714 = 0, $8715 = 0, $8716 = 0, $8717 = 0, $8718 = 0, $8719 = 0, $872 = 0, $8720 = 0; + var $8721 = 0, $8722 = 0, $8723 = 0, $8724 = 0, $8725 = 0, $8726 = 0, $8727 = 0, $8728 = 0, $8729 = 0, $873 = 0, $8730 = 0, $8731 = 0, $8732 = 0, $8733 = 0, $8734 = 0, $8735 = 0, $8736 = 0, $8737 = 0, $8738 = 0, $8739 = 0; + var $874 = 0, $8740 = 0, $8741 = 0, $8742 = 0, $8743 = 0, $8744 = 0, $8745 = 0, $8746 = 0, $8747 = 0, $8748 = 0, $8749 = 0, $875 = 0, $8750 = 0, $8751 = 0, $8752 = 0, $8753 = 0, $8754 = 0, $8755 = 0, $8756 = 0, $8757 = 0; + var $8758 = 0, $8759 = 0, $876 = 0, $8760 = 0, $8761 = 0, $8762 = 0, $8763 = 0, $8764 = 0, $8765 = 0, $8766 = 0, $8767 = 0, $8768 = 0, $8769 = 0, $877 = 0, $8770 = 0, $8771 = 0, $8772 = 0, $8773 = 0, $8774 = 0, $8775 = 0; + var $8776 = 0, $8777 = 0, $8778 = 0, $8779 = 0, $878 = 0, $8780 = 0, $8781 = 0, $8782 = 0, $8783 = 0, $8784 = 0, $8785 = 0, $8786 = 0, $8787 = 0, $8788 = 0, $8789 = 0, $879 = 0, $8790 = 0, $8791 = 0, $8792 = 0, $8793 = 0; + var $8794 = 0, $8795 = 0, $8796 = 0, $8797 = 0, $8798 = 0, $8799 = 0, $88 = 0, $880 = 0, $8800 = 0, $8801 = 0, $8802 = 0, $8803 = 0, $8804 = 0, $8805 = 0, $8806 = 0, $8807 = 0, $8808 = 0, $8809 = 0, $881 = 0, $8810 = 0; + var $8811 = 0, $8812 = 0, $8813 = 0, $8814 = 0, $8815 = 0, $8816 = 0, $8817 = 0, $8818 = 0, $8819 = 0, $882 = 0, $8820 = 0, $8821 = 0, $8822 = 0, $8823 = 0, $8824 = 0, $8825 = 0, $8826 = 0, $8827 = 0, $8828 = 0, $8829 = 0; + var $883 = 0, $8830 = 0, $8831 = 0, $8832 = 0, $8833 = 0, $8834 = 0, $8835 = 0, $8836 = 0, $8837 = 0, $8838 = 0, $8839 = 0, $884 = 0, $8840 = 0, $8841 = 0, $8842 = 0, $8843 = 0, $8844 = 0, $8845 = 0, $8846 = 0, $8847 = 0; + var $8848 = 0, $8849 = 0, $885 = 0, $8850 = 0, $8851 = 0, $8852 = 0, $8853 = 0, $8854 = 0, $8855 = 0, $8856 = 0, $8857 = 0, $8858 = 0, $8859 = 0, $886 = 0, $8860 = 0, $8861 = 0, $8862 = 0, $8863 = 0, $8864 = 0, $8865 = 0; + var $8866 = 0, $8867 = 0, $8868 = 0, $8869 = 0, $887 = 0, $8870 = 0, $8871 = 0, $8872 = 0, $8873 = 0, $8874 = 0, $8875 = 0, $8876 = 0, $8877 = 0, $8878 = 0, $8879 = 0, $888 = 0, $8880 = 0, $8881 = 0, $8882 = 0, $8883 = 0; + var $8884 = 0, $8885 = 0, $8886 = 0, $8887 = 0, $8888 = 0, $8889 = 0, $889 = 0, $8890 = 0, $8891 = 0, $8892 = 0, $8893 = 0, $8894 = 0, $8895 = 0, $8896 = 0, $8897 = 0, $8898 = 0, $8899 = 0, $89 = 0, $890 = 0, $8900 = 0; + var $8901 = 0, $8902 = 0, $8903 = 0, $8904 = 0, $8905 = 0, $8906 = 0, $8907 = 0, $8908 = 0, $8909 = 0, $891 = 0, $8910 = 0, $8911 = 0, $8912 = 0, $8913 = 0, $8914 = 0, $8915 = 0, $8916 = 0, $8917 = 0, $8918 = 0, $8919 = 0; + var $892 = 0, $8920 = 0, $8921 = 0, $8922 = 0, $8923 = 0, $8924 = 0, $8925 = 0, $8926 = 0, $8927 = 0, $8928 = 0, $8929 = 0, $893 = 0, $8930 = 0, $8931 = 0, $8932 = 0, $8933 = 0, $8934 = 0, $8935 = 0, $8936 = 0, $8937 = 0; + var $8938 = 0, $8939 = 0, $894 = 0, $8940 = 0, $8941 = 0, $8942 = 0, $8943 = 0, $8944 = 0, $8945 = 0, $8946 = 0, $8947 = 0, $8948 = 0, $8949 = 0, $895 = 0, $8950 = 0, $8951 = 0, $8952 = 0, $8953 = 0, $8954 = 0, $8955 = 0; + var $8956 = 0, $8957 = 0, $8958 = 0, $8959 = 0, $896 = 0, $8960 = 0, $8961 = 0, $8962 = 0, $8963 = 0, $8964 = 0, $8965 = 0, $8966 = 0, $8967 = 0, $8968 = 0, $8969 = 0, $897 = 0, $8970 = 0, $8971 = 0, $8972 = 0, $8973 = 0; + var $8974 = 0, $8975 = 0, $8976 = 0, $8977 = 0, $8978 = 0, $8979 = 0, $898 = 0, $8980 = 0, $8981 = 0, $8982 = 0, $8983 = 0, $8984 = 0, $8985 = 0, $8986 = 0, $8987 = 0, $8988 = 0, $8989 = 0, $899 = 0, $8990 = 0, $8991 = 0; + var $8992 = 0, $8993 = 0, $8994 = 0, $8995 = 0, $8996 = 0, $8997 = 0, $8998 = 0, $8999 = 0, $9 = 0, $90 = 0, $900 = 0, $9000 = 0, $9001 = 0, $9002 = 0, $9003 = 0, $9004 = 0, $9005 = 0, $9006 = 0, $9007 = 0, $9008 = 0; + var $9009 = 0, $901 = 0, $9010 = 0, $9011 = 0, $9012 = 0, $9013 = 0, $9014 = 0, $9015 = 0, $9016 = 0, $9017 = 0, $9018 = 0, $9019 = 0, $902 = 0, $9020 = 0, $9021 = 0, $9022 = 0, $9023 = 0, $9024 = 0, $9025 = 0, $9026 = 0; + var $9027 = 0, $9028 = 0, $9029 = 0, $903 = 0, $9030 = 0, $9031 = 0, $9032 = 0, $9033 = 0, $9034 = 0, $9035 = 0, $9036 = 0, $9037 = 0, $9038 = 0, $9039 = 0, $904 = 0, $9040 = 0, $9041 = 0, $9042 = 0, $9043 = 0, $9044 = 0; + var $9045 = 0, $9046 = 0, $9047 = 0, $9048 = 0, $9049 = 0, $905 = 0, $9050 = 0, $9051 = 0, $9052 = 0, $9053 = 0, $9054 = 0, $9055 = 0, $9056 = 0, $9057 = 0, $9058 = 0, $9059 = 0, $906 = 0, $9060 = 0, $9061 = 0, $9062 = 0; + var $9063 = 0, $9064 = 0, $9065 = 0, $9066 = 0, $9067 = 0, $9068 = 0, $9069 = 0, $907 = 0, $9070 = 0, $9071 = 0, $9072 = 0, $9073 = 0, $9074 = 0, $9075 = 0, $9076 = 0, $9077 = 0, $9078 = 0, $9079 = 0, $908 = 0, $9080 = 0; + var $9081 = 0, $9082 = 0, $9083 = 0, $9084 = 0, $9085 = 0, $9086 = 0, $9087 = 0, $9088 = 0, $9089 = 0, $909 = 0, $9090 = 0, $9091 = 0, $9092 = 0, $9093 = 0, $9094 = 0, $9095 = 0, $9096 = 0, $9097 = 0, $9098 = 0, $9099 = 0; + var $91 = 0, $910 = 0, $9100 = 0, $9101 = 0, $9102 = 0, $9103 = 0, $9104 = 0, $9105 = 0, $9106 = 0, $9107 = 0, $9108 = 0, $9109 = 0, $911 = 0, $9110 = 0, $9111 = 0, $9112 = 0, $9113 = 0, $9114 = 0, $9115 = 0, $9116 = 0; + var $9117 = 0, $9118 = 0, $9119 = 0, $912 = 0, $9120 = 0, $9121 = 0, $9122 = 0, $9123 = 0, $9124 = 0, $9125 = 0, $9126 = 0, $9127 = 0, $9128 = 0, $9129 = 0, $913 = 0, $9130 = 0, $9131 = 0, $9132 = 0, $9133 = 0, $9134 = 0; + var $9135 = 0, $9136 = 0, $9137 = 0, $9138 = 0, $9139 = 0, $914 = 0, $9140 = 0, $9141 = 0, $9142 = 0, $9143 = 0, $9144 = 0, $9145 = 0, $9146 = 0, $9147 = 0, $9148 = 0, $9149 = 0, $915 = 0, $9150 = 0, $9151 = 0, $9152 = 0; + var $9153 = 0, $9154 = 0, $9155 = 0, $9156 = 0, $9157 = 0, $9158 = 0, $9159 = 0, $916 = 0, $9160 = 0, $9161 = 0, $9162 = 0, $9163 = 0, $9164 = 0, $9165 = 0, $9166 = 0, $9167 = 0, $9168 = 0, $9169 = 0, $917 = 0, $9170 = 0; + var $9171 = 0, $9172 = 0, $9173 = 0, $9174 = 0, $9175 = 0, $9176 = 0, $9177 = 0, $9178 = 0, $9179 = 0, $918 = 0, $9180 = 0, $9181 = 0, $9182 = 0, $9183 = 0, $9184 = 0, $9185 = 0, $9186 = 0, $9187 = 0, $9188 = 0, $9189 = 0; + var $919 = 0, $9190 = 0, $9191 = 0, $9192 = 0, $9193 = 0, $9194 = 0, $9195 = 0, $9196 = 0, $9197 = 0, $9198 = 0, $9199 = 0, $92 = 0, $920 = 0, $9200 = 0, $9201 = 0, $9202 = 0, $9203 = 0, $9204 = 0, $9205 = 0, $9206 = 0; + var $9207 = 0, $9208 = 0, $9209 = 0, $921 = 0, $9210 = 0, $9211 = 0, $9212 = 0, $9213 = 0, $9214 = 0, $9215 = 0, $9216 = 0, $9217 = 0, $9218 = 0, $9219 = 0, $922 = 0, $9220 = 0, $9221 = 0, $9222 = 0, $9223 = 0, $9224 = 0; + var $9225 = 0, $9226 = 0, $9227 = 0, $9228 = 0, $9229 = 0, $923 = 0, $9230 = 0, $9231 = 0, $9232 = 0, $9233 = 0, $9234 = 0, $9235 = 0, $9236 = 0, $9237 = 0, $9238 = 0, $9239 = 0, $924 = 0, $9240 = 0, $9241 = 0, $9242 = 0; + var $9243 = 0, $9244 = 0, $9245 = 0, $9246 = 0, $9247 = 0, $9248 = 0, $9249 = 0, $925 = 0, $9250 = 0, $9251 = 0, $9252 = 0, $9253 = 0, $9254 = 0, $9255 = 0, $9256 = 0, $9257 = 0, $9258 = 0, $9259 = 0, $926 = 0, $9260 = 0; + var $9261 = 0, $9262 = 0, $9263 = 0, $9264 = 0, $9265 = 0, $9266 = 0, $9267 = 0, $9268 = 0, $9269 = 0, $927 = 0, $9270 = 0, $9271 = 0, $9272 = 0, $9273 = 0, $9274 = 0, $9275 = 0, $9276 = 0, $9277 = 0, $9278 = 0, $9279 = 0; + var $928 = 0, $9280 = 0, $9281 = 0, $9282 = 0, $9283 = 0, $9284 = 0, $9285 = 0, $9286 = 0, $9287 = 0, $9288 = 0, $9289 = 0, $929 = 0, $9290 = 0, $9291 = 0, $9292 = 0, $9293 = 0, $9294 = 0, $9295 = 0, $9296 = 0, $9297 = 0; + var $9298 = 0, $9299 = 0, $93 = 0, $930 = 0, $9300 = 0, $9301 = 0, $9302 = 0, $9303 = 0, $9304 = 0, $9305 = 0, $9306 = 0, $9307 = 0, $9308 = 0, $9309 = 0, $931 = 0, $9310 = 0, $9311 = 0, $9312 = 0, $9313 = 0, $9314 = 0; + var $9315 = 0, $9316 = 0, $9317 = 0, $9318 = 0, $9319 = 0, $932 = 0, $9320 = 0, $9321 = 0, $9322 = 0, $9323 = 0, $9324 = 0, $9325 = 0, $9326 = 0, $9327 = 0, $9328 = 0, $9329 = 0, $933 = 0, $9330 = 0, $9331 = 0, $9332 = 0; + var $9333 = 0, $9334 = 0, $9335 = 0, $9336 = 0, $9337 = 0, $9338 = 0, $9339 = 0, $934 = 0, $9340 = 0, $9341 = 0, $9342 = 0, $9343 = 0, $9344 = 0, $9345 = 0, $9346 = 0, $9347 = 0, $9348 = 0, $9349 = 0, $935 = 0, $9350 = 0; + var $9351 = 0, $9352 = 0, $9353 = 0, $9354 = 0, $9355 = 0, $9356 = 0, $9357 = 0, $9358 = 0, $9359 = 0, $936 = 0, $9360 = 0, $9361 = 0, $9362 = 0, $9363 = 0, $9364 = 0, $9365 = 0, $9366 = 0, $9367 = 0, $9368 = 0, $9369 = 0; + var $937 = 0, $9370 = 0, $9371 = 0, $9372 = 0, $9373 = 0, $9374 = 0, $9375 = 0, $9376 = 0, $9377 = 0, $9378 = 0, $9379 = 0, $938 = 0, $9380 = 0, $9381 = 0, $9382 = 0, $9383 = 0, $9384 = 0, $9385 = 0, $9386 = 0, $9387 = 0; + var $9388 = 0, $9389 = 0, $939 = 0, $9390 = 0, $9391 = 0, $9392 = 0, $9393 = 0, $9394 = 0, $9395 = 0, $9396 = 0, $9397 = 0, $9398 = 0, $9399 = 0, $94 = 0, $940 = 0, $9400 = 0, $9401 = 0, $9402 = 0, $9403 = 0, $9404 = 0; + var $9405 = 0, $9406 = 0, $9407 = 0, $9408 = 0, $9409 = 0, $941 = 0, $9410 = 0, $9411 = 0, $9412 = 0, $9413 = 0, $9414 = 0, $9415 = 0, $9416 = 0, $9417 = 0, $9418 = 0, $9419 = 0, $942 = 0, $9420 = 0, $9421 = 0, $9422 = 0; + var $9423 = 0, $9424 = 0, $9425 = 0, $9426 = 0, $9427 = 0, $9428 = 0, $9429 = 0, $943 = 0, $9430 = 0, $9431 = 0, $9432 = 0, $9433 = 0, $9434 = 0, $9435 = 0, $9436 = 0, $9437 = 0, $9438 = 0, $9439 = 0, $944 = 0, $9440 = 0; + var $9441 = 0, $9442 = 0, $9443 = 0, $9444 = 0, $9445 = 0, $9446 = 0, $9447 = 0, $9448 = 0, $9449 = 0, $945 = 0, $9450 = 0, $9451 = 0, $9452 = 0, $9453 = 0, $9454 = 0, $9455 = 0, $9456 = 0, $9457 = 0, $9458 = 0, $9459 = 0; + var $946 = 0, $9460 = 0, $9461 = 0, $9462 = 0, $9463 = 0, $9464 = 0, $9465 = 0, $9466 = 0, $9467 = 0, $9468 = 0, $9469 = 0, $947 = 0, $9470 = 0, $9471 = 0, $9472 = 0, $9473 = 0, $9474 = 0, $9475 = 0, $9476 = 0, $9477 = 0; + var $9478 = 0, $9479 = 0, $948 = 0, $9480 = 0, $9481 = 0, $9482 = 0, $9483 = 0, $9484 = 0, $9485 = 0, $9486 = 0, $9487 = 0, $9488 = 0, $9489 = 0, $949 = 0, $9490 = 0, $9491 = 0, $9492 = 0, $9493 = 0, $9494 = 0, $9495 = 0; + var $9496 = 0, $9497 = 0, $9498 = 0, $9499 = 0, $95 = 0, $950 = 0, $9500 = 0, $9501 = 0, $9502 = 0, $9503 = 0, $9504 = 0, $9505 = 0, $9506 = 0, $9507 = 0, $9508 = 0, $9509 = 0, $951 = 0, $9510 = 0, $9511 = 0, $9512 = 0; + var $9513 = 0, $9514 = 0, $9515 = 0, $9516 = 0, $9517 = 0, $9518 = 0, $9519 = 0, $952 = 0, $9520 = 0, $9521 = 0, $9522 = 0, $9523 = 0, $9524 = 0, $9525 = 0, $9526 = 0, $9527 = 0, $9528 = 0, $9529 = 0, $953 = 0, $9530 = 0; + var $9531 = 0, $9532 = 0, $9533 = 0, $9534 = 0, $9535 = 0, $9536 = 0, $9537 = 0, $9538 = 0, $9539 = 0, $954 = 0, $9540 = 0, $9541 = 0, $9542 = 0, $9543 = 0, $9544 = 0, $9545 = 0, $9546 = 0, $9547 = 0, $9548 = 0, $9549 = 0; + var $955 = 0, $9550 = 0, $9551 = 0, $9552 = 0, $9553 = 0, $9554 = 0, $9555 = 0, $9556 = 0, $9557 = 0, $9558 = 0, $9559 = 0, $956 = 0, $9560 = 0, $9561 = 0, $9562 = 0, $9563 = 0, $9564 = 0, $9565 = 0, $9566 = 0, $9567 = 0; + var $9568 = 0, $9569 = 0, $957 = 0, $9570 = 0, $9571 = 0, $9572 = 0, $9573 = 0, $9574 = 0, $9575 = 0, $9576 = 0, $9577 = 0, $9578 = 0, $9579 = 0, $958 = 0, $9580 = 0, $9581 = 0, $9582 = 0, $9583 = 0, $9584 = 0, $9585 = 0; + var $9586 = 0, $9587 = 0, $9588 = 0, $9589 = 0, $959 = 0, $9590 = 0, $9591 = 0, $9592 = 0, $9593 = 0, $9594 = 0, $9595 = 0, $9596 = 0, $9597 = 0, $9598 = 0, $9599 = 0, $96 = 0, $960 = 0, $9600 = 0, $9601 = 0, $9602 = 0; + var $9603 = 0, $9604 = 0, $9605 = 0, $9606 = 0, $9607 = 0, $9608 = 0, $9609 = 0, $961 = 0, $9610 = 0, $9611 = 0, $9612 = 0, $9613 = 0, $9614 = 0, $9615 = 0, $9616 = 0, $9617 = 0, $9618 = 0, $9619 = 0, $962 = 0, $9620 = 0; + var $9621 = 0, $9622 = 0, $9623 = 0, $9624 = 0, $9625 = 0, $9626 = 0, $9627 = 0, $9628 = 0, $9629 = 0, $963 = 0, $9630 = 0, $9631 = 0, $9632 = 0, $9633 = 0, $9634 = 0, $9635 = 0, $9636 = 0, $9637 = 0, $9638 = 0, $9639 = 0; + var $964 = 0, $9640 = 0, $9641 = 0, $9642 = 0, $9643 = 0, $9644 = 0, $9645 = 0, $9646 = 0, $9647 = 0, $9648 = 0, $9649 = 0, $965 = 0, $9650 = 0, $9651 = 0, $9652 = 0, $9653 = 0, $9654 = 0, $9655 = 0, $9656 = 0, $9657 = 0; + var $9658 = 0, $9659 = 0, $966 = 0, $9660 = 0, $9661 = 0, $9662 = 0, $9663 = 0, $9664 = 0, $9665 = 0, $9666 = 0, $9667 = 0, $9668 = 0, $9669 = 0, $967 = 0, $9670 = 0, $9671 = 0, $9672 = 0, $9673 = 0, $9674 = 0, $9675 = 0; + var $9676 = 0, $9677 = 0, $9678 = 0, $9679 = 0, $968 = 0, $9680 = 0, $9681 = 0, $9682 = 0, $9683 = 0, $9684 = 0, $9685 = 0, $9686 = 0, $9687 = 0, $9688 = 0, $9689 = 0, $969 = 0, $9690 = 0, $9691 = 0, $9692 = 0, $9693 = 0; + var $9694 = 0, $9695 = 0, $9696 = 0, $9697 = 0, $9698 = 0, $9699 = 0, $97 = 0, $970 = 0, $9700 = 0, $9701 = 0, $9702 = 0, $9703 = 0, $9704 = 0, $9705 = 0, $9706 = 0, $9707 = 0, $9708 = 0, $9709 = 0, $971 = 0, $9710 = 0; + var $9711 = 0, $9712 = 0, $9713 = 0, $9714 = 0, $9715 = 0, $9716 = 0, $9717 = 0, $9718 = 0, $9719 = 0, $972 = 0, $9720 = 0, $9721 = 0, $9722 = 0, $9723 = 0, $9724 = 0, $9725 = 0, $9726 = 0, $9727 = 0, $9728 = 0, $9729 = 0; + var $973 = 0, $9730 = 0, $9731 = 0, $9732 = 0, $9733 = 0, $9734 = 0, $9735 = 0, $9736 = 0, $9737 = 0, $9738 = 0, $9739 = 0, $974 = 0, $9740 = 0, $9741 = 0, $9742 = 0, $9743 = 0, $9744 = 0, $9745 = 0, $9746 = 0, $9747 = 0; + var $9748 = 0, $9749 = 0, $975 = 0, $9750 = 0, $9751 = 0, $9752 = 0, $9753 = 0, $9754 = 0, $9755 = 0, $9756 = 0, $9757 = 0, $9758 = 0, $9759 = 0, $976 = 0, $9760 = 0, $9761 = 0, $9762 = 0, $9763 = 0, $9764 = 0, $9765 = 0; + var $9766 = 0, $9767 = 0, $9768 = 0, $9769 = 0, $977 = 0, $9770 = 0, $9771 = 0, $9772 = 0, $9773 = 0, $9774 = 0, $9775 = 0, $9776 = 0, $9777 = 0, $9778 = 0, $9779 = 0, $978 = 0, $9780 = 0, $9781 = 0, $9782 = 0, $9783 = 0; + var $9784 = 0, $9785 = 0, $9786 = 0, $9787 = 0, $9788 = 0, $9789 = 0, $979 = 0, $9790 = 0, $9791 = 0, $9792 = 0, $9793 = 0, $9794 = 0, $9795 = 0, $9796 = 0, $9797 = 0, $9798 = 0, $9799 = 0, $98 = 0, $980 = 0, $9800 = 0; + var $9801 = 0, $9802 = 0, $9803 = 0, $9804 = 0, $9805 = 0, $9806 = 0, $9807 = 0, $9808 = 0, $9809 = 0, $981 = 0, $9810 = 0, $9811 = 0, $9812 = 0, $9813 = 0, $9814 = 0, $9815 = 0, $9816 = 0, $9817 = 0, $9818 = 0, $9819 = 0; + var $982 = 0, $9820 = 0, $9821 = 0, $9822 = 0, $9823 = 0, $9824 = 0, $9825 = 0, $9826 = 0, $9827 = 0, $9828 = 0, $9829 = 0, $983 = 0, $9830 = 0, $9831 = 0, $9832 = 0, $9833 = 0, $9834 = 0, $9835 = 0, $9836 = 0, $9837 = 0; + var $9838 = 0, $9839 = 0, $984 = 0, $9840 = 0, $9841 = 0, $9842 = 0, $9843 = 0, $9844 = 0, $9845 = 0, $9846 = 0, $9847 = 0, $9848 = 0, $9849 = 0, $985 = 0, $9850 = 0, $9851 = 0, $9852 = 0, $9853 = 0, $9854 = 0, $9855 = 0; + var $9856 = 0, $9857 = 0, $9858 = 0, $9859 = 0, $986 = 0, $9860 = 0, $9861 = 0, $9862 = 0, $9863 = 0, $9864 = 0, $9865 = 0, $9866 = 0, $9867 = 0, $9868 = 0, $9869 = 0, $987 = 0, $9870 = 0, $9871 = 0, $9872 = 0, $9873 = 0; + var $9874 = 0, $9875 = 0, $9876 = 0, $9877 = 0, $9878 = 0, $9879 = 0, $988 = 0, $9880 = 0, $9881 = 0, $9882 = 0, $9883 = 0, $9884 = 0, $9885 = 0, $9886 = 0, $9887 = 0, $9888 = 0, $9889 = 0, $989 = 0, $9890 = 0, $9891 = 0; + var $9892 = 0, $9893 = 0, $9894 = 0, $9895 = 0, $9896 = 0, $9897 = 0, $9898 = 0, $9899 = 0, $99 = 0, $990 = 0, $9900 = 0, $9901 = 0, $9902 = 0, $9903 = 0, $9904 = 0, $9905 = 0, $9906 = 0, $9907 = 0, $9908 = 0, $9909 = 0; + var $991 = 0, $9910 = 0, $9911 = 0, $9912 = 0, $9913 = 0, $9914 = 0, $9915 = 0, $9916 = 0, $9917 = 0, $9918 = 0, $9919 = 0, $992 = 0, $9920 = 0, $9921 = 0, $9922 = 0, $9923 = 0, $9924 = 0, $9925 = 0, $9926 = 0, $9927 = 0; + var $9928 = 0, $9929 = 0, $993 = 0, $9930 = 0, $9931 = 0, $9932 = 0, $9933 = 0, $9934 = 0, $9935 = 0, $9936 = 0, $9937 = 0, $9938 = 0, $9939 = 0, $994 = 0, $9940 = 0, $9941 = 0, $9942 = 0, $9943 = 0, $9944 = 0, $9945 = 0; + var $9946 = 0, $9947 = 0, $9948 = 0, $9949 = 0, $995 = 0, $9950 = 0, $9951 = 0, $9952 = 0, $9953 = 0, $9954 = 0, $9955 = 0, $9956 = 0, $9957 = 0, $9958 = 0, $9959 = 0, $996 = 0, $9960 = 0, $9961 = 0, $9962 = 0, $9963 = 0; + var $9964 = 0, $9965 = 0, $9966 = 0, $9967 = 0, $9968 = 0, $9969 = 0, $997 = 0, $9970 = 0, $9971 = 0, $9972 = 0, $9973 = 0, $9974 = 0, $9975 = 0, $9976 = 0, $9977 = 0, $9978 = 0, $9979 = 0, $998 = 0, $9980 = 0, $9981 = 0; + var $9982 = 0, $9983 = 0, $9984 = 0, $9985 = 0, $9986 = 0, $9987 = 0, $9988 = 0, $9989 = 0, $999 = 0, $9990 = 0, $9991 = 0, $9992 = 0, $9993 = 0, $9994 = 0, $9995 = 0, $9996 = 0, $9997 = 0, $9998 = 0, $9999 = 0, $i = 0; + var $j = 0, $k = 0, $sa = 0, $sb = 0, $sc = 0, $sd = 0, $se = 0, $sf = 0, $sg = 0, $sh = 0, $si = 0, $sj = 0, $sk = 0, $sl = 0, $sm = 0, $sn = 0, $so = 0, $sp = 0, $tmp = 0, $vararg_buffer = 0; + var $x = 0, $y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $1 = $ctx; + $2 = $key; + $3 = $keylen; + $sa = 0; + $sb = 0; + $sc = 0; + $sd = 0; + $se = 0; + $sf = 0; + $sg = 0; + $sh = 0; + $si = 0; + $sj = 0; + $sk = 0; + $sl = 0; + $sm = 0; + $sn = 0; + $so = 0; + $sp = 0; + $4 = $3; + $5 = (($4) - 16)|0; + $6 = $5 | 16; + $7 = ($6|0)!=(16); + if ($7) { + $0 = 44; + $10338 = $0; + STACKTOP = sp;return ($10338|0); + } + $8 = HEAP32[17708]|0; + $9 = ($8|0)!=(0); + if (!($9)) { + HEAP32[17708] = 1; + $10 = (_selftest_1448()|0); + HEAP32[17709] = $10; + $11 = HEAP32[17709]|0; + $12 = ($11|0)!=(0|0); + if ($12) { + $13 = HEAP32[17709]|0; + HEAP32[$vararg_buffer>>2] = $13; + __gcry_log_error(43729,$vararg_buffer); + } + } + $14 = HEAP32[17709]|0; + $15 = ($14|0)!=(0|0); + if ($15) { + $0 = 50; + $10338 = $0; + STACKTOP = sp;return ($10338|0); + } + $16 = $2; + $17 = HEAP8[$16>>0]|0; + $18 = ($17<<24>>24)!=(0); + if ($18) { + $19 = $2; + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = (($21) - 1)|0; + $23 = (43733 + ($22)|0); + $24 = HEAP8[$23>>0]|0; + $tmp = $24; + $25 = $tmp; + $26 = $25&255; + $27 = (($26) + 0)|0; + $28 = (43988 + ($27)|0); + $29 = HEAP8[$28>>0]|0; + $30 = $29&255; + $31 = $sa; + $32 = $31&255; + $33 = $32 ^ $30; + $34 = $33&255; + $sa = $34; + $35 = $tmp; + $36 = $35&255; + $37 = (($36) + 45)|0; + $38 = (43988 + ($37)|0); + $39 = HEAP8[$38>>0]|0; + $40 = $39&255; + $41 = $sb; + $42 = $41&255; + $43 = $42 ^ $40; + $44 = $43&255; + $sb = $44; + $45 = $tmp; + $46 = $45&255; + $47 = (($46) + 1)|0; + $48 = (43988 + ($47)|0); + $49 = HEAP8[$48>>0]|0; + $50 = $49&255; + $51 = $sc; + $52 = $51&255; + $53 = $52 ^ $50; + $54 = $53&255; + $sc = $54; + $55 = $tmp; + $56 = $55&255; + $57 = (($56) + 45)|0; + $58 = (43988 + ($57)|0); + $59 = HEAP8[$58>>0]|0; + $60 = $59&255; + $61 = $sd; + $62 = $61&255; + $63 = $62 ^ $60; + $64 = $63&255; + $sd = $64; + } + $65 = $2; + $66 = ((($65)) + 1|0); + $67 = HEAP8[$66>>0]|0; + $68 = ($67<<24>>24)!=(0); + if ($68) { + $69 = $2; + $70 = ((($69)) + 1|0); + $71 = HEAP8[$70>>0]|0; + $72 = $71&255; + $73 = (($72) - 1)|0; + $74 = (43733 + ($73)|0); + $75 = HEAP8[$74>>0]|0; + $tmp = $75; + $76 = $tmp; + $77 = $76&255; + $78 = (($77) + 45)|0; + $79 = (43988 + ($78)|0); + $80 = HEAP8[$79>>0]|0; + $81 = $80&255; + $82 = $sa; + $83 = $82&255; + $84 = $83 ^ $81; + $85 = $84&255; + $sa = $85; + $86 = $tmp; + $87 = $86&255; + $88 = (($87) + 164)|0; + $89 = (43988 + ($88)|0); + $90 = HEAP8[$89>>0]|0; + $91 = $90&255; + $92 = $sb; + $93 = $92&255; + $94 = $93 ^ $91; + $95 = $94&255; + $sb = $95; + $96 = $tmp; + $97 = $96&255; + $98 = (($97) + 68)|0; + $99 = (43988 + ($98)|0); + $100 = HEAP8[$99>>0]|0; + $101 = $100&255; + $102 = $sc; + $103 = $102&255; + $104 = $103 ^ $101; + $105 = $104&255; + $sc = $105; + $106 = $tmp; + $107 = $106&255; + $108 = (($107) + 138)|0; + $109 = (43988 + ($108)|0); + $110 = HEAP8[$109>>0]|0; + $111 = $110&255; + $112 = $sd; + $113 = $112&255; + $114 = $113 ^ $111; + $115 = $114&255; + $sd = $115; + } + $116 = $2; + $117 = ((($116)) + 2|0); + $118 = HEAP8[$117>>0]|0; + $119 = ($118<<24>>24)!=(0); + if ($119) { + $120 = $2; + $121 = ((($120)) + 2|0); + $122 = HEAP8[$121>>0]|0; + $123 = $122&255; + $124 = (($123) - 1)|0; + $125 = (43733 + ($124)|0); + $126 = HEAP8[$125>>0]|0; + $tmp = $126; + $127 = $tmp; + $128 = $127&255; + $129 = (($128) + 138)|0; + $130 = (43988 + ($129)|0); + $131 = HEAP8[$130>>0]|0; + $132 = $131&255; + $133 = $sa; + $134 = $133&255; + $135 = $134 ^ $132; + $136 = $135&255; + $sa = $136; + $137 = $tmp; + $138 = $137&255; + $139 = (($138) + 213)|0; + $140 = (43988 + ($139)|0); + $141 = HEAP8[$140>>0]|0; + $142 = $141&255; + $143 = $sb; + $144 = $143&255; + $145 = $144 ^ $142; + $146 = $145&255; + $sb = $146; + $147 = $tmp; + $148 = $147&255; + $149 = (($148) + 191)|0; + $150 = (43988 + ($149)|0); + $151 = HEAP8[$150>>0]|0; + $152 = $151&255; + $153 = $sc; + $154 = $153&255; + $155 = $154 ^ $152; + $156 = $155&255; + $sc = $156; + $157 = $tmp; + $158 = $157&255; + $159 = (($158) + 209)|0; + $160 = (43988 + ($159)|0); + $161 = HEAP8[$160>>0]|0; + $162 = $161&255; + $163 = $sd; + $164 = $163&255; + $165 = $164 ^ $162; + $166 = $165&255; + $sd = $166; + } + $167 = $2; + $168 = ((($167)) + 3|0); + $169 = HEAP8[$168>>0]|0; + $170 = ($169<<24>>24)!=(0); + if ($170) { + $171 = $2; + $172 = ((($171)) + 3|0); + $173 = HEAP8[$172>>0]|0; + $174 = $173&255; + $175 = (($174) - 1)|0; + $176 = (43733 + ($175)|0); + $177 = HEAP8[$176>>0]|0; + $tmp = $177; + $178 = $tmp; + $179 = $178&255; + $180 = (($179) + 209)|0; + $181 = (43988 + ($180)|0); + $182 = HEAP8[$181>>0]|0; + $183 = $182&255; + $184 = $sa; + $185 = $184&255; + $186 = $185 ^ $183; + $187 = $186&255; + $sa = $187; + $188 = $tmp; + $189 = $188&255; + $190 = (($189) + 127)|0; + $191 = (43988 + ($190)|0); + $192 = HEAP8[$191>>0]|0; + $193 = $192&255; + $194 = $sb; + $195 = $194&255; + $196 = $195 ^ $193; + $197 = $196&255; + $sb = $197; + $198 = $tmp; + $199 = $198&255; + $200 = (($199) + 61)|0; + $201 = (43988 + ($200)|0); + $202 = HEAP8[$201>>0]|0; + $203 = $202&255; + $204 = $sc; + $205 = $204&255; + $206 = $205 ^ $203; + $207 = $206&255; + $sc = $207; + $208 = $tmp; + $209 = $208&255; + $210 = (($209) + 153)|0; + $211 = (43988 + ($210)|0); + $212 = HEAP8[$211>>0]|0; + $213 = $212&255; + $214 = $sd; + $215 = $214&255; + $216 = $215 ^ $213; + $217 = $216&255; + $sd = $217; + } + $218 = $2; + $219 = ((($218)) + 4|0); + $220 = HEAP8[$219>>0]|0; + $221 = ($220<<24>>24)!=(0); + if ($221) { + $222 = $2; + $223 = ((($222)) + 4|0); + $224 = HEAP8[$223>>0]|0; + $225 = $224&255; + $226 = (($225) - 1)|0; + $227 = (43733 + ($226)|0); + $228 = HEAP8[$227>>0]|0; + $tmp = $228; + $229 = $tmp; + $230 = $229&255; + $231 = (($230) + 153)|0; + $232 = (43988 + ($231)|0); + $233 = HEAP8[$232>>0]|0; + $234 = $233&255; + $235 = $sa; + $236 = $235&255; + $237 = $236 ^ $234; + $238 = $237&255; + $sa = $238; + $239 = $tmp; + $240 = $239&255; + $241 = (($240) + 70)|0; + $242 = (43988 + ($241)|0); + $243 = HEAP8[$242>>0]|0; + $244 = $243&255; + $245 = $sb; + $246 = $245&255; + $247 = $246 ^ $244; + $248 = $247&255; + $sb = $248; + $249 = $tmp; + $250 = $249&255; + $251 = (($250) + 102)|0; + $252 = (43988 + ($251)|0); + $253 = HEAP8[$252>>0]|0; + $254 = $253&255; + $255 = $sc; + $256 = $255&255; + $257 = $256 ^ $254; + $258 = $257&255; + $sc = $258; + $259 = $tmp; + $260 = $259&255; + $261 = (($260) + 150)|0; + $262 = (43988 + ($261)|0); + $263 = HEAP8[$262>>0]|0; + $264 = $263&255; + $265 = $sd; + $266 = $265&255; + $267 = $266 ^ $264; + $268 = $267&255; + $sd = $268; + } + $269 = $2; + $270 = ((($269)) + 5|0); + $271 = HEAP8[$270>>0]|0; + $272 = ($271<<24>>24)!=(0); + if ($272) { + $273 = $2; + $274 = ((($273)) + 5|0); + $275 = HEAP8[$274>>0]|0; + $276 = $275&255; + $277 = (($276) - 1)|0; + $278 = (43733 + ($277)|0); + $279 = HEAP8[$278>>0]|0; + $tmp = $279; + $280 = $tmp; + $281 = $280&255; + $282 = (($281) + 150)|0; + $283 = (43988 + ($282)|0); + $284 = HEAP8[$283>>0]|0; + $285 = $284&255; + $286 = $sa; + $287 = $286&255; + $288 = $287 ^ $285; + $289 = $288&255; + $sa = $289; + $290 = $tmp; + $291 = $290&255; + $292 = (($291) + 60)|0; + $293 = (43988 + ($292)|0); + $294 = HEAP8[$293>>0]|0; + $295 = $294&255; + $296 = $sb; + $297 = $296&255; + $298 = $297 ^ $295; + $299 = $298&255; + $sb = $299; + $300 = $tmp; + $301 = $300&255; + $302 = (($301) + 91)|0; + $303 = (43988 + ($302)|0); + $304 = HEAP8[$303>>0]|0; + $305 = $304&255; + $306 = $sc; + $307 = $306&255; + $308 = $307 ^ $305; + $309 = $308&255; + $sc = $309; + $310 = $tmp; + $311 = $310&255; + $312 = (($311) + 237)|0; + $313 = (43988 + ($312)|0); + $314 = HEAP8[$313>>0]|0; + $315 = $314&255; + $316 = $sd; + $317 = $316&255; + $318 = $317 ^ $315; + $319 = $318&255; + $sd = $319; + } + $320 = $2; + $321 = ((($320)) + 6|0); + $322 = HEAP8[$321>>0]|0; + $323 = ($322<<24>>24)!=(0); + if ($323) { + $324 = $2; + $325 = ((($324)) + 6|0); + $326 = HEAP8[$325>>0]|0; + $327 = $326&255; + $328 = (($327) - 1)|0; + $329 = (43733 + ($328)|0); + $330 = HEAP8[$329>>0]|0; + $tmp = $330; + $331 = $tmp; + $332 = $331&255; + $333 = (($332) + 237)|0; + $334 = (43988 + ($333)|0); + $335 = HEAP8[$334>>0]|0; + $336 = $335&255; + $337 = $sa; + $338 = $337&255; + $339 = $338 ^ $336; + $340 = $339&255; + $sa = $340; + $341 = $tmp; + $342 = $341&255; + $343 = (($342) + 55)|0; + $344 = (43988 + ($343)|0); + $345 = HEAP8[$344>>0]|0; + $346 = $345&255; + $347 = $sb; + $348 = $347&255; + $349 = $348 ^ $346; + $350 = $349&255; + $sb = $350; + $351 = $tmp; + $352 = $351&255; + $353 = (($352) + 79)|0; + $354 = (43988 + ($353)|0); + $355 = HEAP8[$354>>0]|0; + $356 = $355&255; + $357 = $sc; + $358 = $357&255; + $359 = $358 ^ $356; + $360 = $359&255; + $sc = $360; + $361 = $tmp; + $362 = $361&255; + $363 = (($362) + 224)|0; + $364 = (43988 + ($363)|0); + $365 = HEAP8[$364>>0]|0; + $366 = $365&255; + $367 = $sd; + $368 = $367&255; + $369 = $368 ^ $366; + $370 = $369&255; + $sd = $370; + } + $371 = $2; + $372 = ((($371)) + 7|0); + $373 = HEAP8[$372>>0]|0; + $374 = ($373<<24>>24)!=(0); + if ($374) { + $375 = $2; + $376 = ((($375)) + 7|0); + $377 = HEAP8[$376>>0]|0; + $378 = $377&255; + $379 = (($378) - 1)|0; + $380 = (43733 + ($379)|0); + $381 = HEAP8[$380>>0]|0; + $tmp = $381; + $382 = $tmp; + $383 = $382&255; + $384 = (($383) + 224)|0; + $385 = (43988 + ($384)|0); + $386 = HEAP8[$385>>0]|0; + $387 = $386&255; + $388 = $sa; + $389 = $388&255; + $390 = $389 ^ $387; + $391 = $390&255; + $sa = $391; + $392 = $tmp; + $393 = $392&255; + $394 = (($393) + 208)|0; + $395 = (43988 + ($394)|0); + $396 = HEAP8[$395>>0]|0; + $397 = $396&255; + $398 = $sb; + $399 = $398&255; + $400 = $399 ^ $397; + $401 = $400&255; + $sb = $401; + $402 = $tmp; + $403 = $402&255; + $404 = (($403) + 140)|0; + $405 = (43988 + ($404)|0); + $406 = HEAP8[$405>>0]|0; + $407 = $406&255; + $408 = $sc; + $409 = $408&255; + $410 = $409 ^ $407; + $411 = $410&255; + $sc = $411; + $412 = $tmp; + $413 = $412&255; + $414 = (($413) + 23)|0; + $415 = (43988 + ($414)|0); + $416 = HEAP8[$415>>0]|0; + $417 = $416&255; + $418 = $sd; + $419 = $418&255; + $420 = $419 ^ $417; + $421 = $420&255; + $sd = $421; + } + $422 = $2; + $423 = ((($422)) + 8|0); + $424 = HEAP8[$423>>0]|0; + $425 = ($424<<24>>24)!=(0); + if ($425) { + $426 = $2; + $427 = ((($426)) + 8|0); + $428 = HEAP8[$427>>0]|0; + $429 = $428&255; + $430 = (($429) - 1)|0; + $431 = (43733 + ($430)|0); + $432 = HEAP8[$431>>0]|0; + $tmp = $432; + $433 = $tmp; + $434 = $433&255; + $435 = (($434) + 0)|0; + $436 = (43988 + ($435)|0); + $437 = HEAP8[$436>>0]|0; + $438 = $437&255; + $439 = $se; + $440 = $439&255; + $441 = $440 ^ $438; + $442 = $441&255; + $se = $442; + $443 = $tmp; + $444 = $443&255; + $445 = (($444) + 45)|0; + $446 = (43988 + ($445)|0); + $447 = HEAP8[$446>>0]|0; + $448 = $447&255; + $449 = $sf; + $450 = $449&255; + $451 = $450 ^ $448; + $452 = $451&255; + $sf = $452; + $453 = $tmp; + $454 = $453&255; + $455 = (($454) + 1)|0; + $456 = (43988 + ($455)|0); + $457 = HEAP8[$456>>0]|0; + $458 = $457&255; + $459 = $sg; + $460 = $459&255; + $461 = $460 ^ $458; + $462 = $461&255; + $sg = $462; + $463 = $tmp; + $464 = $463&255; + $465 = (($464) + 45)|0; + $466 = (43988 + ($465)|0); + $467 = HEAP8[$466>>0]|0; + $468 = $467&255; + $469 = $sh; + $470 = $469&255; + $471 = $470 ^ $468; + $472 = $471&255; + $sh = $472; + } + $473 = $2; + $474 = ((($473)) + 9|0); + $475 = HEAP8[$474>>0]|0; + $476 = ($475<<24>>24)!=(0); + if ($476) { + $477 = $2; + $478 = ((($477)) + 9|0); + $479 = HEAP8[$478>>0]|0; + $480 = $479&255; + $481 = (($480) - 1)|0; + $482 = (43733 + ($481)|0); + $483 = HEAP8[$482>>0]|0; + $tmp = $483; + $484 = $tmp; + $485 = $484&255; + $486 = (($485) + 45)|0; + $487 = (43988 + ($486)|0); + $488 = HEAP8[$487>>0]|0; + $489 = $488&255; + $490 = $se; + $491 = $490&255; + $492 = $491 ^ $489; + $493 = $492&255; + $se = $493; + $494 = $tmp; + $495 = $494&255; + $496 = (($495) + 164)|0; + $497 = (43988 + ($496)|0); + $498 = HEAP8[$497>>0]|0; + $499 = $498&255; + $500 = $sf; + $501 = $500&255; + $502 = $501 ^ $499; + $503 = $502&255; + $sf = $503; + $504 = $tmp; + $505 = $504&255; + $506 = (($505) + 68)|0; + $507 = (43988 + ($506)|0); + $508 = HEAP8[$507>>0]|0; + $509 = $508&255; + $510 = $sg; + $511 = $510&255; + $512 = $511 ^ $509; + $513 = $512&255; + $sg = $513; + $514 = $tmp; + $515 = $514&255; + $516 = (($515) + 138)|0; + $517 = (43988 + ($516)|0); + $518 = HEAP8[$517>>0]|0; + $519 = $518&255; + $520 = $sh; + $521 = $520&255; + $522 = $521 ^ $519; + $523 = $522&255; + $sh = $523; + } + $524 = $2; + $525 = ((($524)) + 10|0); + $526 = HEAP8[$525>>0]|0; + $527 = ($526<<24>>24)!=(0); + if ($527) { + $528 = $2; + $529 = ((($528)) + 10|0); + $530 = HEAP8[$529>>0]|0; + $531 = $530&255; + $532 = (($531) - 1)|0; + $533 = (43733 + ($532)|0); + $534 = HEAP8[$533>>0]|0; + $tmp = $534; + $535 = $tmp; + $536 = $535&255; + $537 = (($536) + 138)|0; + $538 = (43988 + ($537)|0); + $539 = HEAP8[$538>>0]|0; + $540 = $539&255; + $541 = $se; + $542 = $541&255; + $543 = $542 ^ $540; + $544 = $543&255; + $se = $544; + $545 = $tmp; + $546 = $545&255; + $547 = (($546) + 213)|0; + $548 = (43988 + ($547)|0); + $549 = HEAP8[$548>>0]|0; + $550 = $549&255; + $551 = $sf; + $552 = $551&255; + $553 = $552 ^ $550; + $554 = $553&255; + $sf = $554; + $555 = $tmp; + $556 = $555&255; + $557 = (($556) + 191)|0; + $558 = (43988 + ($557)|0); + $559 = HEAP8[$558>>0]|0; + $560 = $559&255; + $561 = $sg; + $562 = $561&255; + $563 = $562 ^ $560; + $564 = $563&255; + $sg = $564; + $565 = $tmp; + $566 = $565&255; + $567 = (($566) + 209)|0; + $568 = (43988 + ($567)|0); + $569 = HEAP8[$568>>0]|0; + $570 = $569&255; + $571 = $sh; + $572 = $571&255; + $573 = $572 ^ $570; + $574 = $573&255; + $sh = $574; + } + $575 = $2; + $576 = ((($575)) + 11|0); + $577 = HEAP8[$576>>0]|0; + $578 = ($577<<24>>24)!=(0); + if ($578) { + $579 = $2; + $580 = ((($579)) + 11|0); + $581 = HEAP8[$580>>0]|0; + $582 = $581&255; + $583 = (($582) - 1)|0; + $584 = (43733 + ($583)|0); + $585 = HEAP8[$584>>0]|0; + $tmp = $585; + $586 = $tmp; + $587 = $586&255; + $588 = (($587) + 209)|0; + $589 = (43988 + ($588)|0); + $590 = HEAP8[$589>>0]|0; + $591 = $590&255; + $592 = $se; + $593 = $592&255; + $594 = $593 ^ $591; + $595 = $594&255; + $se = $595; + $596 = $tmp; + $597 = $596&255; + $598 = (($597) + 127)|0; + $599 = (43988 + ($598)|0); + $600 = HEAP8[$599>>0]|0; + $601 = $600&255; + $602 = $sf; + $603 = $602&255; + $604 = $603 ^ $601; + $605 = $604&255; + $sf = $605; + $606 = $tmp; + $607 = $606&255; + $608 = (($607) + 61)|0; + $609 = (43988 + ($608)|0); + $610 = HEAP8[$609>>0]|0; + $611 = $610&255; + $612 = $sg; + $613 = $612&255; + $614 = $613 ^ $611; + $615 = $614&255; + $sg = $615; + $616 = $tmp; + $617 = $616&255; + $618 = (($617) + 153)|0; + $619 = (43988 + ($618)|0); + $620 = HEAP8[$619>>0]|0; + $621 = $620&255; + $622 = $sh; + $623 = $622&255; + $624 = $623 ^ $621; + $625 = $624&255; + $sh = $625; + } + $626 = $2; + $627 = ((($626)) + 12|0); + $628 = HEAP8[$627>>0]|0; + $629 = ($628<<24>>24)!=(0); + if ($629) { + $630 = $2; + $631 = ((($630)) + 12|0); + $632 = HEAP8[$631>>0]|0; + $633 = $632&255; + $634 = (($633) - 1)|0; + $635 = (43733 + ($634)|0); + $636 = HEAP8[$635>>0]|0; + $tmp = $636; + $637 = $tmp; + $638 = $637&255; + $639 = (($638) + 153)|0; + $640 = (43988 + ($639)|0); + $641 = HEAP8[$640>>0]|0; + $642 = $641&255; + $643 = $se; + $644 = $643&255; + $645 = $644 ^ $642; + $646 = $645&255; + $se = $646; + $647 = $tmp; + $648 = $647&255; + $649 = (($648) + 70)|0; + $650 = (43988 + ($649)|0); + $651 = HEAP8[$650>>0]|0; + $652 = $651&255; + $653 = $sf; + $654 = $653&255; + $655 = $654 ^ $652; + $656 = $655&255; + $sf = $656; + $657 = $tmp; + $658 = $657&255; + $659 = (($658) + 102)|0; + $660 = (43988 + ($659)|0); + $661 = HEAP8[$660>>0]|0; + $662 = $661&255; + $663 = $sg; + $664 = $663&255; + $665 = $664 ^ $662; + $666 = $665&255; + $sg = $666; + $667 = $tmp; + $668 = $667&255; + $669 = (($668) + 150)|0; + $670 = (43988 + ($669)|0); + $671 = HEAP8[$670>>0]|0; + $672 = $671&255; + $673 = $sh; + $674 = $673&255; + $675 = $674 ^ $672; + $676 = $675&255; + $sh = $676; + } + $677 = $2; + $678 = ((($677)) + 13|0); + $679 = HEAP8[$678>>0]|0; + $680 = ($679<<24>>24)!=(0); + if ($680) { + $681 = $2; + $682 = ((($681)) + 13|0); + $683 = HEAP8[$682>>0]|0; + $684 = $683&255; + $685 = (($684) - 1)|0; + $686 = (43733 + ($685)|0); + $687 = HEAP8[$686>>0]|0; + $tmp = $687; + $688 = $tmp; + $689 = $688&255; + $690 = (($689) + 150)|0; + $691 = (43988 + ($690)|0); + $692 = HEAP8[$691>>0]|0; + $693 = $692&255; + $694 = $se; + $695 = $694&255; + $696 = $695 ^ $693; + $697 = $696&255; + $se = $697; + $698 = $tmp; + $699 = $698&255; + $700 = (($699) + 60)|0; + $701 = (43988 + ($700)|0); + $702 = HEAP8[$701>>0]|0; + $703 = $702&255; + $704 = $sf; + $705 = $704&255; + $706 = $705 ^ $703; + $707 = $706&255; + $sf = $707; + $708 = $tmp; + $709 = $708&255; + $710 = (($709) + 91)|0; + $711 = (43988 + ($710)|0); + $712 = HEAP8[$711>>0]|0; + $713 = $712&255; + $714 = $sg; + $715 = $714&255; + $716 = $715 ^ $713; + $717 = $716&255; + $sg = $717; + $718 = $tmp; + $719 = $718&255; + $720 = (($719) + 237)|0; + $721 = (43988 + ($720)|0); + $722 = HEAP8[$721>>0]|0; + $723 = $722&255; + $724 = $sh; + $725 = $724&255; + $726 = $725 ^ $723; + $727 = $726&255; + $sh = $727; + } + $728 = $2; + $729 = ((($728)) + 14|0); + $730 = HEAP8[$729>>0]|0; + $731 = ($730<<24>>24)!=(0); + if ($731) { + $732 = $2; + $733 = ((($732)) + 14|0); + $734 = HEAP8[$733>>0]|0; + $735 = $734&255; + $736 = (($735) - 1)|0; + $737 = (43733 + ($736)|0); + $738 = HEAP8[$737>>0]|0; + $tmp = $738; + $739 = $tmp; + $740 = $739&255; + $741 = (($740) + 237)|0; + $742 = (43988 + ($741)|0); + $743 = HEAP8[$742>>0]|0; + $744 = $743&255; + $745 = $se; + $746 = $745&255; + $747 = $746 ^ $744; + $748 = $747&255; + $se = $748; + $749 = $tmp; + $750 = $749&255; + $751 = (($750) + 55)|0; + $752 = (43988 + ($751)|0); + $753 = HEAP8[$752>>0]|0; + $754 = $753&255; + $755 = $sf; + $756 = $755&255; + $757 = $756 ^ $754; + $758 = $757&255; + $sf = $758; + $759 = $tmp; + $760 = $759&255; + $761 = (($760) + 79)|0; + $762 = (43988 + ($761)|0); + $763 = HEAP8[$762>>0]|0; + $764 = $763&255; + $765 = $sg; + $766 = $765&255; + $767 = $766 ^ $764; + $768 = $767&255; + $sg = $768; + $769 = $tmp; + $770 = $769&255; + $771 = (($770) + 224)|0; + $772 = (43988 + ($771)|0); + $773 = HEAP8[$772>>0]|0; + $774 = $773&255; + $775 = $sh; + $776 = $775&255; + $777 = $776 ^ $774; + $778 = $777&255; + $sh = $778; + } + $779 = $2; + $780 = ((($779)) + 15|0); + $781 = HEAP8[$780>>0]|0; + $782 = ($781<<24>>24)!=(0); + if ($782) { + $783 = $2; + $784 = ((($783)) + 15|0); + $785 = HEAP8[$784>>0]|0; + $786 = $785&255; + $787 = (($786) - 1)|0; + $788 = (43733 + ($787)|0); + $789 = HEAP8[$788>>0]|0; + $tmp = $789; + $790 = $tmp; + $791 = $790&255; + $792 = (($791) + 224)|0; + $793 = (43988 + ($792)|0); + $794 = HEAP8[$793>>0]|0; + $795 = $794&255; + $796 = $se; + $797 = $796&255; + $798 = $797 ^ $795; + $799 = $798&255; + $se = $799; + $800 = $tmp; + $801 = $800&255; + $802 = (($801) + 208)|0; + $803 = (43988 + ($802)|0); + $804 = HEAP8[$803>>0]|0; + $805 = $804&255; + $806 = $sf; + $807 = $806&255; + $808 = $807 ^ $805; + $809 = $808&255; + $sf = $809; + $810 = $tmp; + $811 = $810&255; + $812 = (($811) + 140)|0; + $813 = (43988 + ($812)|0); + $814 = HEAP8[$813>>0]|0; + $815 = $814&255; + $816 = $sg; + $817 = $816&255; + $818 = $817 ^ $815; + $819 = $818&255; + $sg = $819; + $820 = $tmp; + $821 = $820&255; + $822 = (($821) + 23)|0; + $823 = (43988 + ($822)|0); + $824 = HEAP8[$823>>0]|0; + $825 = $824&255; + $826 = $sh; + $827 = $826&255; + $828 = $827 ^ $825; + $829 = $828&255; + $sh = $829; + } + $830 = $3; + $831 = ($830|0)==(32); + if ($831) { + $832 = $2; + $833 = ((($832)) + 16|0); + $834 = HEAP8[$833>>0]|0; + $835 = ($834<<24>>24)!=(0); + if ($835) { + $836 = $2; + $837 = ((($836)) + 16|0); + $838 = HEAP8[$837>>0]|0; + $839 = $838&255; + $840 = (($839) - 1)|0; + $841 = (43733 + ($840)|0); + $842 = HEAP8[$841>>0]|0; + $tmp = $842; + $843 = $tmp; + $844 = $843&255; + $845 = (($844) + 0)|0; + $846 = (43988 + ($845)|0); + $847 = HEAP8[$846>>0]|0; + $848 = $847&255; + $849 = $si; + $850 = $849&255; + $851 = $850 ^ $848; + $852 = $851&255; + $si = $852; + $853 = $tmp; + $854 = $853&255; + $855 = (($854) + 45)|0; + $856 = (43988 + ($855)|0); + $857 = HEAP8[$856>>0]|0; + $858 = $857&255; + $859 = $sj; + $860 = $859&255; + $861 = $860 ^ $858; + $862 = $861&255; + $sj = $862; + $863 = $tmp; + $864 = $863&255; + $865 = (($864) + 1)|0; + $866 = (43988 + ($865)|0); + $867 = HEAP8[$866>>0]|0; + $868 = $867&255; + $869 = $sk; + $870 = $869&255; + $871 = $870 ^ $868; + $872 = $871&255; + $sk = $872; + $873 = $tmp; + $874 = $873&255; + $875 = (($874) + 45)|0; + $876 = (43988 + ($875)|0); + $877 = HEAP8[$876>>0]|0; + $878 = $877&255; + $879 = $sl; + $880 = $879&255; + $881 = $880 ^ $878; + $882 = $881&255; + $sl = $882; + } + $883 = $2; + $884 = ((($883)) + 17|0); + $885 = HEAP8[$884>>0]|0; + $886 = ($885<<24>>24)!=(0); + if ($886) { + $887 = $2; + $888 = ((($887)) + 17|0); + $889 = HEAP8[$888>>0]|0; + $890 = $889&255; + $891 = (($890) - 1)|0; + $892 = (43733 + ($891)|0); + $893 = HEAP8[$892>>0]|0; + $tmp = $893; + $894 = $tmp; + $895 = $894&255; + $896 = (($895) + 45)|0; + $897 = (43988 + ($896)|0); + $898 = HEAP8[$897>>0]|0; + $899 = $898&255; + $900 = $si; + $901 = $900&255; + $902 = $901 ^ $899; + $903 = $902&255; + $si = $903; + $904 = $tmp; + $905 = $904&255; + $906 = (($905) + 164)|0; + $907 = (43988 + ($906)|0); + $908 = HEAP8[$907>>0]|0; + $909 = $908&255; + $910 = $sj; + $911 = $910&255; + $912 = $911 ^ $909; + $913 = $912&255; + $sj = $913; + $914 = $tmp; + $915 = $914&255; + $916 = (($915) + 68)|0; + $917 = (43988 + ($916)|0); + $918 = HEAP8[$917>>0]|0; + $919 = $918&255; + $920 = $sk; + $921 = $920&255; + $922 = $921 ^ $919; + $923 = $922&255; + $sk = $923; + $924 = $tmp; + $925 = $924&255; + $926 = (($925) + 138)|0; + $927 = (43988 + ($926)|0); + $928 = HEAP8[$927>>0]|0; + $929 = $928&255; + $930 = $sl; + $931 = $930&255; + $932 = $931 ^ $929; + $933 = $932&255; + $sl = $933; + } + $934 = $2; + $935 = ((($934)) + 18|0); + $936 = HEAP8[$935>>0]|0; + $937 = ($936<<24>>24)!=(0); + if ($937) { + $938 = $2; + $939 = ((($938)) + 18|0); + $940 = HEAP8[$939>>0]|0; + $941 = $940&255; + $942 = (($941) - 1)|0; + $943 = (43733 + ($942)|0); + $944 = HEAP8[$943>>0]|0; + $tmp = $944; + $945 = $tmp; + $946 = $945&255; + $947 = (($946) + 138)|0; + $948 = (43988 + ($947)|0); + $949 = HEAP8[$948>>0]|0; + $950 = $949&255; + $951 = $si; + $952 = $951&255; + $953 = $952 ^ $950; + $954 = $953&255; + $si = $954; + $955 = $tmp; + $956 = $955&255; + $957 = (($956) + 213)|0; + $958 = (43988 + ($957)|0); + $959 = HEAP8[$958>>0]|0; + $960 = $959&255; + $961 = $sj; + $962 = $961&255; + $963 = $962 ^ $960; + $964 = $963&255; + $sj = $964; + $965 = $tmp; + $966 = $965&255; + $967 = (($966) + 191)|0; + $968 = (43988 + ($967)|0); + $969 = HEAP8[$968>>0]|0; + $970 = $969&255; + $971 = $sk; + $972 = $971&255; + $973 = $972 ^ $970; + $974 = $973&255; + $sk = $974; + $975 = $tmp; + $976 = $975&255; + $977 = (($976) + 209)|0; + $978 = (43988 + ($977)|0); + $979 = HEAP8[$978>>0]|0; + $980 = $979&255; + $981 = $sl; + $982 = $981&255; + $983 = $982 ^ $980; + $984 = $983&255; + $sl = $984; + } + $985 = $2; + $986 = ((($985)) + 19|0); + $987 = HEAP8[$986>>0]|0; + $988 = ($987<<24>>24)!=(0); + if ($988) { + $989 = $2; + $990 = ((($989)) + 19|0); + $991 = HEAP8[$990>>0]|0; + $992 = $991&255; + $993 = (($992) - 1)|0; + $994 = (43733 + ($993)|0); + $995 = HEAP8[$994>>0]|0; + $tmp = $995; + $996 = $tmp; + $997 = $996&255; + $998 = (($997) + 209)|0; + $999 = (43988 + ($998)|0); + $1000 = HEAP8[$999>>0]|0; + $1001 = $1000&255; + $1002 = $si; + $1003 = $1002&255; + $1004 = $1003 ^ $1001; + $1005 = $1004&255; + $si = $1005; + $1006 = $tmp; + $1007 = $1006&255; + $1008 = (($1007) + 127)|0; + $1009 = (43988 + ($1008)|0); + $1010 = HEAP8[$1009>>0]|0; + $1011 = $1010&255; + $1012 = $sj; + $1013 = $1012&255; + $1014 = $1013 ^ $1011; + $1015 = $1014&255; + $sj = $1015; + $1016 = $tmp; + $1017 = $1016&255; + $1018 = (($1017) + 61)|0; + $1019 = (43988 + ($1018)|0); + $1020 = HEAP8[$1019>>0]|0; + $1021 = $1020&255; + $1022 = $sk; + $1023 = $1022&255; + $1024 = $1023 ^ $1021; + $1025 = $1024&255; + $sk = $1025; + $1026 = $tmp; + $1027 = $1026&255; + $1028 = (($1027) + 153)|0; + $1029 = (43988 + ($1028)|0); + $1030 = HEAP8[$1029>>0]|0; + $1031 = $1030&255; + $1032 = $sl; + $1033 = $1032&255; + $1034 = $1033 ^ $1031; + $1035 = $1034&255; + $sl = $1035; + } + $1036 = $2; + $1037 = ((($1036)) + 20|0); + $1038 = HEAP8[$1037>>0]|0; + $1039 = ($1038<<24>>24)!=(0); + if ($1039) { + $1040 = $2; + $1041 = ((($1040)) + 20|0); + $1042 = HEAP8[$1041>>0]|0; + $1043 = $1042&255; + $1044 = (($1043) - 1)|0; + $1045 = (43733 + ($1044)|0); + $1046 = HEAP8[$1045>>0]|0; + $tmp = $1046; + $1047 = $tmp; + $1048 = $1047&255; + $1049 = (($1048) + 153)|0; + $1050 = (43988 + ($1049)|0); + $1051 = HEAP8[$1050>>0]|0; + $1052 = $1051&255; + $1053 = $si; + $1054 = $1053&255; + $1055 = $1054 ^ $1052; + $1056 = $1055&255; + $si = $1056; + $1057 = $tmp; + $1058 = $1057&255; + $1059 = (($1058) + 70)|0; + $1060 = (43988 + ($1059)|0); + $1061 = HEAP8[$1060>>0]|0; + $1062 = $1061&255; + $1063 = $sj; + $1064 = $1063&255; + $1065 = $1064 ^ $1062; + $1066 = $1065&255; + $sj = $1066; + $1067 = $tmp; + $1068 = $1067&255; + $1069 = (($1068) + 102)|0; + $1070 = (43988 + ($1069)|0); + $1071 = HEAP8[$1070>>0]|0; + $1072 = $1071&255; + $1073 = $sk; + $1074 = $1073&255; + $1075 = $1074 ^ $1072; + $1076 = $1075&255; + $sk = $1076; + $1077 = $tmp; + $1078 = $1077&255; + $1079 = (($1078) + 150)|0; + $1080 = (43988 + ($1079)|0); + $1081 = HEAP8[$1080>>0]|0; + $1082 = $1081&255; + $1083 = $sl; + $1084 = $1083&255; + $1085 = $1084 ^ $1082; + $1086 = $1085&255; + $sl = $1086; + } + $1087 = $2; + $1088 = ((($1087)) + 21|0); + $1089 = HEAP8[$1088>>0]|0; + $1090 = ($1089<<24>>24)!=(0); + if ($1090) { + $1091 = $2; + $1092 = ((($1091)) + 21|0); + $1093 = HEAP8[$1092>>0]|0; + $1094 = $1093&255; + $1095 = (($1094) - 1)|0; + $1096 = (43733 + ($1095)|0); + $1097 = HEAP8[$1096>>0]|0; + $tmp = $1097; + $1098 = $tmp; + $1099 = $1098&255; + $1100 = (($1099) + 150)|0; + $1101 = (43988 + ($1100)|0); + $1102 = HEAP8[$1101>>0]|0; + $1103 = $1102&255; + $1104 = $si; + $1105 = $1104&255; + $1106 = $1105 ^ $1103; + $1107 = $1106&255; + $si = $1107; + $1108 = $tmp; + $1109 = $1108&255; + $1110 = (($1109) + 60)|0; + $1111 = (43988 + ($1110)|0); + $1112 = HEAP8[$1111>>0]|0; + $1113 = $1112&255; + $1114 = $sj; + $1115 = $1114&255; + $1116 = $1115 ^ $1113; + $1117 = $1116&255; + $sj = $1117; + $1118 = $tmp; + $1119 = $1118&255; + $1120 = (($1119) + 91)|0; + $1121 = (43988 + ($1120)|0); + $1122 = HEAP8[$1121>>0]|0; + $1123 = $1122&255; + $1124 = $sk; + $1125 = $1124&255; + $1126 = $1125 ^ $1123; + $1127 = $1126&255; + $sk = $1127; + $1128 = $tmp; + $1129 = $1128&255; + $1130 = (($1129) + 237)|0; + $1131 = (43988 + ($1130)|0); + $1132 = HEAP8[$1131>>0]|0; + $1133 = $1132&255; + $1134 = $sl; + $1135 = $1134&255; + $1136 = $1135 ^ $1133; + $1137 = $1136&255; + $sl = $1137; + } + $1138 = $2; + $1139 = ((($1138)) + 22|0); + $1140 = HEAP8[$1139>>0]|0; + $1141 = ($1140<<24>>24)!=(0); + if ($1141) { + $1142 = $2; + $1143 = ((($1142)) + 22|0); + $1144 = HEAP8[$1143>>0]|0; + $1145 = $1144&255; + $1146 = (($1145) - 1)|0; + $1147 = (43733 + ($1146)|0); + $1148 = HEAP8[$1147>>0]|0; + $tmp = $1148; + $1149 = $tmp; + $1150 = $1149&255; + $1151 = (($1150) + 237)|0; + $1152 = (43988 + ($1151)|0); + $1153 = HEAP8[$1152>>0]|0; + $1154 = $1153&255; + $1155 = $si; + $1156 = $1155&255; + $1157 = $1156 ^ $1154; + $1158 = $1157&255; + $si = $1158; + $1159 = $tmp; + $1160 = $1159&255; + $1161 = (($1160) + 55)|0; + $1162 = (43988 + ($1161)|0); + $1163 = HEAP8[$1162>>0]|0; + $1164 = $1163&255; + $1165 = $sj; + $1166 = $1165&255; + $1167 = $1166 ^ $1164; + $1168 = $1167&255; + $sj = $1168; + $1169 = $tmp; + $1170 = $1169&255; + $1171 = (($1170) + 79)|0; + $1172 = (43988 + ($1171)|0); + $1173 = HEAP8[$1172>>0]|0; + $1174 = $1173&255; + $1175 = $sk; + $1176 = $1175&255; + $1177 = $1176 ^ $1174; + $1178 = $1177&255; + $sk = $1178; + $1179 = $tmp; + $1180 = $1179&255; + $1181 = (($1180) + 224)|0; + $1182 = (43988 + ($1181)|0); + $1183 = HEAP8[$1182>>0]|0; + $1184 = $1183&255; + $1185 = $sl; + $1186 = $1185&255; + $1187 = $1186 ^ $1184; + $1188 = $1187&255; + $sl = $1188; + } + $1189 = $2; + $1190 = ((($1189)) + 23|0); + $1191 = HEAP8[$1190>>0]|0; + $1192 = ($1191<<24>>24)!=(0); + if ($1192) { + $1193 = $2; + $1194 = ((($1193)) + 23|0); + $1195 = HEAP8[$1194>>0]|0; + $1196 = $1195&255; + $1197 = (($1196) - 1)|0; + $1198 = (43733 + ($1197)|0); + $1199 = HEAP8[$1198>>0]|0; + $tmp = $1199; + $1200 = $tmp; + $1201 = $1200&255; + $1202 = (($1201) + 224)|0; + $1203 = (43988 + ($1202)|0); + $1204 = HEAP8[$1203>>0]|0; + $1205 = $1204&255; + $1206 = $si; + $1207 = $1206&255; + $1208 = $1207 ^ $1205; + $1209 = $1208&255; + $si = $1209; + $1210 = $tmp; + $1211 = $1210&255; + $1212 = (($1211) + 208)|0; + $1213 = (43988 + ($1212)|0); + $1214 = HEAP8[$1213>>0]|0; + $1215 = $1214&255; + $1216 = $sj; + $1217 = $1216&255; + $1218 = $1217 ^ $1215; + $1219 = $1218&255; + $sj = $1219; + $1220 = $tmp; + $1221 = $1220&255; + $1222 = (($1221) + 140)|0; + $1223 = (43988 + ($1222)|0); + $1224 = HEAP8[$1223>>0]|0; + $1225 = $1224&255; + $1226 = $sk; + $1227 = $1226&255; + $1228 = $1227 ^ $1225; + $1229 = $1228&255; + $sk = $1229; + $1230 = $tmp; + $1231 = $1230&255; + $1232 = (($1231) + 23)|0; + $1233 = (43988 + ($1232)|0); + $1234 = HEAP8[$1233>>0]|0; + $1235 = $1234&255; + $1236 = $sl; + $1237 = $1236&255; + $1238 = $1237 ^ $1235; + $1239 = $1238&255; + $sl = $1239; + } + $1240 = $2; + $1241 = ((($1240)) + 24|0); + $1242 = HEAP8[$1241>>0]|0; + $1243 = ($1242<<24>>24)!=(0); + if ($1243) { + $1244 = $2; + $1245 = ((($1244)) + 24|0); + $1246 = HEAP8[$1245>>0]|0; + $1247 = $1246&255; + $1248 = (($1247) - 1)|0; + $1249 = (43733 + ($1248)|0); + $1250 = HEAP8[$1249>>0]|0; + $tmp = $1250; + $1251 = $tmp; + $1252 = $1251&255; + $1253 = (($1252) + 0)|0; + $1254 = (43988 + ($1253)|0); + $1255 = HEAP8[$1254>>0]|0; + $1256 = $1255&255; + $1257 = $sm; + $1258 = $1257&255; + $1259 = $1258 ^ $1256; + $1260 = $1259&255; + $sm = $1260; + $1261 = $tmp; + $1262 = $1261&255; + $1263 = (($1262) + 45)|0; + $1264 = (43988 + ($1263)|0); + $1265 = HEAP8[$1264>>0]|0; + $1266 = $1265&255; + $1267 = $sn; + $1268 = $1267&255; + $1269 = $1268 ^ $1266; + $1270 = $1269&255; + $sn = $1270; + $1271 = $tmp; + $1272 = $1271&255; + $1273 = (($1272) + 1)|0; + $1274 = (43988 + ($1273)|0); + $1275 = HEAP8[$1274>>0]|0; + $1276 = $1275&255; + $1277 = $so; + $1278 = $1277&255; + $1279 = $1278 ^ $1276; + $1280 = $1279&255; + $so = $1280; + $1281 = $tmp; + $1282 = $1281&255; + $1283 = (($1282) + 45)|0; + $1284 = (43988 + ($1283)|0); + $1285 = HEAP8[$1284>>0]|0; + $1286 = $1285&255; + $1287 = $sp; + $1288 = $1287&255; + $1289 = $1288 ^ $1286; + $1290 = $1289&255; + $sp = $1290; + } + $1291 = $2; + $1292 = ((($1291)) + 25|0); + $1293 = HEAP8[$1292>>0]|0; + $1294 = ($1293<<24>>24)!=(0); + if ($1294) { + $1295 = $2; + $1296 = ((($1295)) + 25|0); + $1297 = HEAP8[$1296>>0]|0; + $1298 = $1297&255; + $1299 = (($1298) - 1)|0; + $1300 = (43733 + ($1299)|0); + $1301 = HEAP8[$1300>>0]|0; + $tmp = $1301; + $1302 = $tmp; + $1303 = $1302&255; + $1304 = (($1303) + 45)|0; + $1305 = (43988 + ($1304)|0); + $1306 = HEAP8[$1305>>0]|0; + $1307 = $1306&255; + $1308 = $sm; + $1309 = $1308&255; + $1310 = $1309 ^ $1307; + $1311 = $1310&255; + $sm = $1311; + $1312 = $tmp; + $1313 = $1312&255; + $1314 = (($1313) + 164)|0; + $1315 = (43988 + ($1314)|0); + $1316 = HEAP8[$1315>>0]|0; + $1317 = $1316&255; + $1318 = $sn; + $1319 = $1318&255; + $1320 = $1319 ^ $1317; + $1321 = $1320&255; + $sn = $1321; + $1322 = $tmp; + $1323 = $1322&255; + $1324 = (($1323) + 68)|0; + $1325 = (43988 + ($1324)|0); + $1326 = HEAP8[$1325>>0]|0; + $1327 = $1326&255; + $1328 = $so; + $1329 = $1328&255; + $1330 = $1329 ^ $1327; + $1331 = $1330&255; + $so = $1331; + $1332 = $tmp; + $1333 = $1332&255; + $1334 = (($1333) + 138)|0; + $1335 = (43988 + ($1334)|0); + $1336 = HEAP8[$1335>>0]|0; + $1337 = $1336&255; + $1338 = $sp; + $1339 = $1338&255; + $1340 = $1339 ^ $1337; + $1341 = $1340&255; + $sp = $1341; + } + $1342 = $2; + $1343 = ((($1342)) + 26|0); + $1344 = HEAP8[$1343>>0]|0; + $1345 = ($1344<<24>>24)!=(0); + if ($1345) { + $1346 = $2; + $1347 = ((($1346)) + 26|0); + $1348 = HEAP8[$1347>>0]|0; + $1349 = $1348&255; + $1350 = (($1349) - 1)|0; + $1351 = (43733 + ($1350)|0); + $1352 = HEAP8[$1351>>0]|0; + $tmp = $1352; + $1353 = $tmp; + $1354 = $1353&255; + $1355 = (($1354) + 138)|0; + $1356 = (43988 + ($1355)|0); + $1357 = HEAP8[$1356>>0]|0; + $1358 = $1357&255; + $1359 = $sm; + $1360 = $1359&255; + $1361 = $1360 ^ $1358; + $1362 = $1361&255; + $sm = $1362; + $1363 = $tmp; + $1364 = $1363&255; + $1365 = (($1364) + 213)|0; + $1366 = (43988 + ($1365)|0); + $1367 = HEAP8[$1366>>0]|0; + $1368 = $1367&255; + $1369 = $sn; + $1370 = $1369&255; + $1371 = $1370 ^ $1368; + $1372 = $1371&255; + $sn = $1372; + $1373 = $tmp; + $1374 = $1373&255; + $1375 = (($1374) + 191)|0; + $1376 = (43988 + ($1375)|0); + $1377 = HEAP8[$1376>>0]|0; + $1378 = $1377&255; + $1379 = $so; + $1380 = $1379&255; + $1381 = $1380 ^ $1378; + $1382 = $1381&255; + $so = $1382; + $1383 = $tmp; + $1384 = $1383&255; + $1385 = (($1384) + 209)|0; + $1386 = (43988 + ($1385)|0); + $1387 = HEAP8[$1386>>0]|0; + $1388 = $1387&255; + $1389 = $sp; + $1390 = $1389&255; + $1391 = $1390 ^ $1388; + $1392 = $1391&255; + $sp = $1392; + } + $1393 = $2; + $1394 = ((($1393)) + 27|0); + $1395 = HEAP8[$1394>>0]|0; + $1396 = ($1395<<24>>24)!=(0); + if ($1396) { + $1397 = $2; + $1398 = ((($1397)) + 27|0); + $1399 = HEAP8[$1398>>0]|0; + $1400 = $1399&255; + $1401 = (($1400) - 1)|0; + $1402 = (43733 + ($1401)|0); + $1403 = HEAP8[$1402>>0]|0; + $tmp = $1403; + $1404 = $tmp; + $1405 = $1404&255; + $1406 = (($1405) + 209)|0; + $1407 = (43988 + ($1406)|0); + $1408 = HEAP8[$1407>>0]|0; + $1409 = $1408&255; + $1410 = $sm; + $1411 = $1410&255; + $1412 = $1411 ^ $1409; + $1413 = $1412&255; + $sm = $1413; + $1414 = $tmp; + $1415 = $1414&255; + $1416 = (($1415) + 127)|0; + $1417 = (43988 + ($1416)|0); + $1418 = HEAP8[$1417>>0]|0; + $1419 = $1418&255; + $1420 = $sn; + $1421 = $1420&255; + $1422 = $1421 ^ $1419; + $1423 = $1422&255; + $sn = $1423; + $1424 = $tmp; + $1425 = $1424&255; + $1426 = (($1425) + 61)|0; + $1427 = (43988 + ($1426)|0); + $1428 = HEAP8[$1427>>0]|0; + $1429 = $1428&255; + $1430 = $so; + $1431 = $1430&255; + $1432 = $1431 ^ $1429; + $1433 = $1432&255; + $so = $1433; + $1434 = $tmp; + $1435 = $1434&255; + $1436 = (($1435) + 153)|0; + $1437 = (43988 + ($1436)|0); + $1438 = HEAP8[$1437>>0]|0; + $1439 = $1438&255; + $1440 = $sp; + $1441 = $1440&255; + $1442 = $1441 ^ $1439; + $1443 = $1442&255; + $sp = $1443; + } + $1444 = $2; + $1445 = ((($1444)) + 28|0); + $1446 = HEAP8[$1445>>0]|0; + $1447 = ($1446<<24>>24)!=(0); + if ($1447) { + $1448 = $2; + $1449 = ((($1448)) + 28|0); + $1450 = HEAP8[$1449>>0]|0; + $1451 = $1450&255; + $1452 = (($1451) - 1)|0; + $1453 = (43733 + ($1452)|0); + $1454 = HEAP8[$1453>>0]|0; + $tmp = $1454; + $1455 = $tmp; + $1456 = $1455&255; + $1457 = (($1456) + 153)|0; + $1458 = (43988 + ($1457)|0); + $1459 = HEAP8[$1458>>0]|0; + $1460 = $1459&255; + $1461 = $sm; + $1462 = $1461&255; + $1463 = $1462 ^ $1460; + $1464 = $1463&255; + $sm = $1464; + $1465 = $tmp; + $1466 = $1465&255; + $1467 = (($1466) + 70)|0; + $1468 = (43988 + ($1467)|0); + $1469 = HEAP8[$1468>>0]|0; + $1470 = $1469&255; + $1471 = $sn; + $1472 = $1471&255; + $1473 = $1472 ^ $1470; + $1474 = $1473&255; + $sn = $1474; + $1475 = $tmp; + $1476 = $1475&255; + $1477 = (($1476) + 102)|0; + $1478 = (43988 + ($1477)|0); + $1479 = HEAP8[$1478>>0]|0; + $1480 = $1479&255; + $1481 = $so; + $1482 = $1481&255; + $1483 = $1482 ^ $1480; + $1484 = $1483&255; + $so = $1484; + $1485 = $tmp; + $1486 = $1485&255; + $1487 = (($1486) + 150)|0; + $1488 = (43988 + ($1487)|0); + $1489 = HEAP8[$1488>>0]|0; + $1490 = $1489&255; + $1491 = $sp; + $1492 = $1491&255; + $1493 = $1492 ^ $1490; + $1494 = $1493&255; + $sp = $1494; + } + $1495 = $2; + $1496 = ((($1495)) + 29|0); + $1497 = HEAP8[$1496>>0]|0; + $1498 = ($1497<<24>>24)!=(0); + if ($1498) { + $1499 = $2; + $1500 = ((($1499)) + 29|0); + $1501 = HEAP8[$1500>>0]|0; + $1502 = $1501&255; + $1503 = (($1502) - 1)|0; + $1504 = (43733 + ($1503)|0); + $1505 = HEAP8[$1504>>0]|0; + $tmp = $1505; + $1506 = $tmp; + $1507 = $1506&255; + $1508 = (($1507) + 150)|0; + $1509 = (43988 + ($1508)|0); + $1510 = HEAP8[$1509>>0]|0; + $1511 = $1510&255; + $1512 = $sm; + $1513 = $1512&255; + $1514 = $1513 ^ $1511; + $1515 = $1514&255; + $sm = $1515; + $1516 = $tmp; + $1517 = $1516&255; + $1518 = (($1517) + 60)|0; + $1519 = (43988 + ($1518)|0); + $1520 = HEAP8[$1519>>0]|0; + $1521 = $1520&255; + $1522 = $sn; + $1523 = $1522&255; + $1524 = $1523 ^ $1521; + $1525 = $1524&255; + $sn = $1525; + $1526 = $tmp; + $1527 = $1526&255; + $1528 = (($1527) + 91)|0; + $1529 = (43988 + ($1528)|0); + $1530 = HEAP8[$1529>>0]|0; + $1531 = $1530&255; + $1532 = $so; + $1533 = $1532&255; + $1534 = $1533 ^ $1531; + $1535 = $1534&255; + $so = $1535; + $1536 = $tmp; + $1537 = $1536&255; + $1538 = (($1537) + 237)|0; + $1539 = (43988 + ($1538)|0); + $1540 = HEAP8[$1539>>0]|0; + $1541 = $1540&255; + $1542 = $sp; + $1543 = $1542&255; + $1544 = $1543 ^ $1541; + $1545 = $1544&255; + $sp = $1545; + } + $1546 = $2; + $1547 = ((($1546)) + 30|0); + $1548 = HEAP8[$1547>>0]|0; + $1549 = ($1548<<24>>24)!=(0); + if ($1549) { + $1550 = $2; + $1551 = ((($1550)) + 30|0); + $1552 = HEAP8[$1551>>0]|0; + $1553 = $1552&255; + $1554 = (($1553) - 1)|0; + $1555 = (43733 + ($1554)|0); + $1556 = HEAP8[$1555>>0]|0; + $tmp = $1556; + $1557 = $tmp; + $1558 = $1557&255; + $1559 = (($1558) + 237)|0; + $1560 = (43988 + ($1559)|0); + $1561 = HEAP8[$1560>>0]|0; + $1562 = $1561&255; + $1563 = $sm; + $1564 = $1563&255; + $1565 = $1564 ^ $1562; + $1566 = $1565&255; + $sm = $1566; + $1567 = $tmp; + $1568 = $1567&255; + $1569 = (($1568) + 55)|0; + $1570 = (43988 + ($1569)|0); + $1571 = HEAP8[$1570>>0]|0; + $1572 = $1571&255; + $1573 = $sn; + $1574 = $1573&255; + $1575 = $1574 ^ $1572; + $1576 = $1575&255; + $sn = $1576; + $1577 = $tmp; + $1578 = $1577&255; + $1579 = (($1578) + 79)|0; + $1580 = (43988 + ($1579)|0); + $1581 = HEAP8[$1580>>0]|0; + $1582 = $1581&255; + $1583 = $so; + $1584 = $1583&255; + $1585 = $1584 ^ $1582; + $1586 = $1585&255; + $so = $1586; + $1587 = $tmp; + $1588 = $1587&255; + $1589 = (($1588) + 224)|0; + $1590 = (43988 + ($1589)|0); + $1591 = HEAP8[$1590>>0]|0; + $1592 = $1591&255; + $1593 = $sp; + $1594 = $1593&255; + $1595 = $1594 ^ $1592; + $1596 = $1595&255; + $sp = $1596; + } + $1597 = $2; + $1598 = ((($1597)) + 31|0); + $1599 = HEAP8[$1598>>0]|0; + $1600 = ($1599<<24>>24)!=(0); + if ($1600) { + $1601 = $2; + $1602 = ((($1601)) + 31|0); + $1603 = HEAP8[$1602>>0]|0; + $1604 = $1603&255; + $1605 = (($1604) - 1)|0; + $1606 = (43733 + ($1605)|0); + $1607 = HEAP8[$1606>>0]|0; + $tmp = $1607; + $1608 = $tmp; + $1609 = $1608&255; + $1610 = (($1609) + 224)|0; + $1611 = (43988 + ($1610)|0); + $1612 = HEAP8[$1611>>0]|0; + $1613 = $1612&255; + $1614 = $sm; + $1615 = $1614&255; + $1616 = $1615 ^ $1613; + $1617 = $1616&255; + $sm = $1617; + $1618 = $tmp; + $1619 = $1618&255; + $1620 = (($1619) + 208)|0; + $1621 = (43988 + ($1620)|0); + $1622 = HEAP8[$1621>>0]|0; + $1623 = $1622&255; + $1624 = $sn; + $1625 = $1624&255; + $1626 = $1625 ^ $1623; + $1627 = $1626&255; + $sn = $1627; + $1628 = $tmp; + $1629 = $1628&255; + $1630 = (($1629) + 140)|0; + $1631 = (43988 + ($1630)|0); + $1632 = HEAP8[$1631>>0]|0; + $1633 = $1632&255; + $1634 = $so; + $1635 = $1634&255; + $1636 = $1635 ^ $1633; + $1637 = $1636&255; + $so = $1637; + $1638 = $tmp; + $1639 = $1638&255; + $1640 = (($1639) + 23)|0; + $1641 = (43988 + ($1640)|0); + $1642 = HEAP8[$1641>>0]|0; + $1643 = $1642&255; + $1644 = $sp; + $1645 = $1644&255; + $1646 = $1645 ^ $1643; + $1647 = $1646&255; + $sp = $1647; + } + $j = 0; + $i = 0; + $k = 1; + while(1) { + $1648 = $i; + $1649 = ($1648|0)<(256); + if (!($1649)) { + break; + } + $1650 = $k; + $1651 = (44480 + ($1650)|0); + $1652 = HEAP8[$1651>>0]|0; + $1653 = $1652&255; + $1654 = $sa; + $1655 = $1654&255; + $1656 = $1653 ^ $1655; + $1657 = (44992 + ($1656)|0); + $1658 = HEAP8[$1657>>0]|0; + $1659 = $1658&255; + $1660 = $se; + $1661 = $1660&255; + $1662 = $1659 ^ $1661; + $1663 = (45248 + ($1662)|0); + $1664 = HEAP8[$1663>>0]|0; + $1665 = $1664&255; + $1666 = $si; + $1667 = $1666&255; + $1668 = $1665 ^ $1667; + $1669 = (45248 + ($1668)|0); + $1670 = HEAP8[$1669>>0]|0; + $1671 = $1670&255; + $1672 = $sm; + $1673 = $1672&255; + $1674 = $1671 ^ $1673; + $1675 = (8376 + ($1674<<2)|0); + $1676 = HEAP32[$1675>>2]|0; + $1677 = $i; + $1678 = $1; + $1679 = (($1678) + ($1677<<2)|0); + HEAP32[$1679>>2] = $1676; + $1680 = $j; + $1681 = (44480 + ($1680)|0); + $1682 = HEAP8[$1681>>0]|0; + $1683 = $1682&255; + $1684 = $sb; + $1685 = $1684&255; + $1686 = $1683 ^ $1685; + $1687 = (44992 + ($1686)|0); + $1688 = HEAP8[$1687>>0]|0; + $1689 = $1688&255; + $1690 = $sf; + $1691 = $1690&255; + $1692 = $1689 ^ $1691; + $1693 = (44992 + ($1692)|0); + $1694 = HEAP8[$1693>>0]|0; + $1695 = $1694&255; + $1696 = $sj; + $1697 = $1696&255; + $1698 = $1695 ^ $1697; + $1699 = (45248 + ($1698)|0); + $1700 = HEAP8[$1699>>0]|0; + $1701 = $1700&255; + $1702 = $sn; + $1703 = $1702&255; + $1704 = $1701 ^ $1703; + $1705 = ((9400) + ($1704<<2)|0); + $1706 = HEAP32[$1705>>2]|0; + $1707 = $i; + $1708 = $1; + $1709 = ((($1708)) + 1024|0); + $1710 = (($1709) + ($1707<<2)|0); + HEAP32[$1710>>2] = $1706; + $1711 = $j; + $1712 = (44480 + ($1711)|0); + $1713 = HEAP8[$1712>>0]|0; + $1714 = $1713&255; + $1715 = $sc; + $1716 = $1715&255; + $1717 = $1714 ^ $1716; + $1718 = (45248 + ($1717)|0); + $1719 = HEAP8[$1718>>0]|0; + $1720 = $1719&255; + $1721 = $sg; + $1722 = $1721&255; + $1723 = $1720 ^ $1722; + $1724 = (45248 + ($1723)|0); + $1725 = HEAP8[$1724>>0]|0; + $1726 = $1725&255; + $1727 = $sk; + $1728 = $1727&255; + $1729 = $1726 ^ $1728; + $1730 = (44992 + ($1729)|0); + $1731 = HEAP8[$1730>>0]|0; + $1732 = $1731&255; + $1733 = $so; + $1734 = $1733&255; + $1735 = $1732 ^ $1734; + $1736 = ((10424) + ($1735<<2)|0); + $1737 = HEAP32[$1736>>2]|0; + $1738 = $i; + $1739 = $1; + $1740 = ((($1739)) + 2048|0); + $1741 = (($1740) + ($1738<<2)|0); + HEAP32[$1741>>2] = $1737; + $1742 = $k; + $1743 = (44480 + ($1742)|0); + $1744 = HEAP8[$1743>>0]|0; + $1745 = $1744&255; + $1746 = $sd; + $1747 = $1746&255; + $1748 = $1745 ^ $1747; + $1749 = (45248 + ($1748)|0); + $1750 = HEAP8[$1749>>0]|0; + $1751 = $1750&255; + $1752 = $sh; + $1753 = $1752&255; + $1754 = $1751 ^ $1753; + $1755 = (44992 + ($1754)|0); + $1756 = HEAP8[$1755>>0]|0; + $1757 = $1756&255; + $1758 = $sl; + $1759 = $1758&255; + $1760 = $1757 ^ $1759; + $1761 = (44992 + ($1760)|0); + $1762 = HEAP8[$1761>>0]|0; + $1763 = $1762&255; + $1764 = $sp; + $1765 = $1764&255; + $1766 = $1763 ^ $1765; + $1767 = ((11448) + ($1766<<2)|0); + $1768 = HEAP32[$1767>>2]|0; + $1769 = $i; + $1770 = $1; + $1771 = ((($1770)) + 3072|0); + $1772 = (($1771) + ($1769<<2)|0); + HEAP32[$1772>>2] = $1768; + $1773 = $i; + $1774 = (($1773) + 1)|0; + $i = $1774; + $1775 = $j; + $1776 = (($1775) + 2)|0; + $j = $1776; + $1777 = $k; + $1778 = (($1777) + 2)|0; + $k = $1778; + } + $1779 = $2; + $1780 = ((($1779)) + 24|0); + $1781 = HEAP8[$1780>>0]|0; + $1782 = $1781&255; + $1783 = 117 ^ $1782; + $1784 = (44992 + ($1783)|0); + $1785 = HEAP8[$1784>>0]|0; + $1786 = $1785&255; + $1787 = $2; + $1788 = ((($1787)) + 16|0); + $1789 = HEAP8[$1788>>0]|0; + $1790 = $1789&255; + $1791 = $1786 ^ $1790; + $1792 = (45248 + ($1791)|0); + $1793 = HEAP8[$1792>>0]|0; + $1794 = $1793&255; + $1795 = $2; + $1796 = ((($1795)) + 8|0); + $1797 = HEAP8[$1796>>0]|0; + $1798 = $1797&255; + $1799 = $1794 ^ $1798; + $1800 = (45248 + ($1799)|0); + $1801 = HEAP8[$1800>>0]|0; + $1802 = $1801&255; + $1803 = $2; + $1804 = HEAP8[$1803>>0]|0; + $1805 = $1804&255; + $1806 = $1802 ^ $1805; + $1807 = (8376 + ($1806<<2)|0); + $1808 = HEAP32[$1807>>2]|0; + $1809 = $2; + $1810 = ((($1809)) + 25|0); + $1811 = HEAP8[$1810>>0]|0; + $1812 = $1811&255; + $1813 = 169 ^ $1812; + $1814 = (44992 + ($1813)|0); + $1815 = HEAP8[$1814>>0]|0; + $1816 = $1815&255; + $1817 = $2; + $1818 = ((($1817)) + 17|0); + $1819 = HEAP8[$1818>>0]|0; + $1820 = $1819&255; + $1821 = $1816 ^ $1820; + $1822 = (44992 + ($1821)|0); + $1823 = HEAP8[$1822>>0]|0; + $1824 = $1823&255; + $1825 = $2; + $1826 = ((($1825)) + 9|0); + $1827 = HEAP8[$1826>>0]|0; + $1828 = $1827&255; + $1829 = $1824 ^ $1828; + $1830 = (45248 + ($1829)|0); + $1831 = HEAP8[$1830>>0]|0; + $1832 = $1831&255; + $1833 = $2; + $1834 = ((($1833)) + 1|0); + $1835 = HEAP8[$1834>>0]|0; + $1836 = $1835&255; + $1837 = $1832 ^ $1836; + $1838 = ((9400) + ($1837<<2)|0); + $1839 = HEAP32[$1838>>2]|0; + $1840 = $1808 ^ $1839; + $1841 = $2; + $1842 = ((($1841)) + 26|0); + $1843 = HEAP8[$1842>>0]|0; + $1844 = $1843&255; + $1845 = 169 ^ $1844; + $1846 = (45248 + ($1845)|0); + $1847 = HEAP8[$1846>>0]|0; + $1848 = $1847&255; + $1849 = $2; + $1850 = ((($1849)) + 18|0); + $1851 = HEAP8[$1850>>0]|0; + $1852 = $1851&255; + $1853 = $1848 ^ $1852; + $1854 = (45248 + ($1853)|0); + $1855 = HEAP8[$1854>>0]|0; + $1856 = $1855&255; + $1857 = $2; + $1858 = ((($1857)) + 10|0); + $1859 = HEAP8[$1858>>0]|0; + $1860 = $1859&255; + $1861 = $1856 ^ $1860; + $1862 = (44992 + ($1861)|0); + $1863 = HEAP8[$1862>>0]|0; + $1864 = $1863&255; + $1865 = $2; + $1866 = ((($1865)) + 2|0); + $1867 = HEAP8[$1866>>0]|0; + $1868 = $1867&255; + $1869 = $1864 ^ $1868; + $1870 = ((10424) + ($1869<<2)|0); + $1871 = HEAP32[$1870>>2]|0; + $1872 = $1840 ^ $1871; + $1873 = $2; + $1874 = ((($1873)) + 27|0); + $1875 = HEAP8[$1874>>0]|0; + $1876 = $1875&255; + $1877 = 117 ^ $1876; + $1878 = (45248 + ($1877)|0); + $1879 = HEAP8[$1878>>0]|0; + $1880 = $1879&255; + $1881 = $2; + $1882 = ((($1881)) + 19|0); + $1883 = HEAP8[$1882>>0]|0; + $1884 = $1883&255; + $1885 = $1880 ^ $1884; + $1886 = (44992 + ($1885)|0); + $1887 = HEAP8[$1886>>0]|0; + $1888 = $1887&255; + $1889 = $2; + $1890 = ((($1889)) + 11|0); + $1891 = HEAP8[$1890>>0]|0; + $1892 = $1891&255; + $1893 = $1888 ^ $1892; + $1894 = (44992 + ($1893)|0); + $1895 = HEAP8[$1894>>0]|0; + $1896 = $1895&255; + $1897 = $2; + $1898 = ((($1897)) + 3|0); + $1899 = HEAP8[$1898>>0]|0; + $1900 = $1899&255; + $1901 = $1896 ^ $1900; + $1902 = ((11448) + ($1901<<2)|0); + $1903 = HEAP32[$1902>>2]|0; + $1904 = $1872 ^ $1903; + $x = $1904; + $1905 = $2; + $1906 = ((($1905)) + 28|0); + $1907 = HEAP8[$1906>>0]|0; + $1908 = $1907&255; + $1909 = 243 ^ $1908; + $1910 = (44992 + ($1909)|0); + $1911 = HEAP8[$1910>>0]|0; + $1912 = $1911&255; + $1913 = $2; + $1914 = ((($1913)) + 20|0); + $1915 = HEAP8[$1914>>0]|0; + $1916 = $1915&255; + $1917 = $1912 ^ $1916; + $1918 = (45248 + ($1917)|0); + $1919 = HEAP8[$1918>>0]|0; + $1920 = $1919&255; + $1921 = $2; + $1922 = ((($1921)) + 12|0); + $1923 = HEAP8[$1922>>0]|0; + $1924 = $1923&255; + $1925 = $1920 ^ $1924; + $1926 = (45248 + ($1925)|0); + $1927 = HEAP8[$1926>>0]|0; + $1928 = $1927&255; + $1929 = $2; + $1930 = ((($1929)) + 4|0); + $1931 = HEAP8[$1930>>0]|0; + $1932 = $1931&255; + $1933 = $1928 ^ $1932; + $1934 = (8376 + ($1933<<2)|0); + $1935 = HEAP32[$1934>>2]|0; + $1936 = $2; + $1937 = ((($1936)) + 29|0); + $1938 = HEAP8[$1937>>0]|0; + $1939 = $1938&255; + $1940 = 103 ^ $1939; + $1941 = (44992 + ($1940)|0); + $1942 = HEAP8[$1941>>0]|0; + $1943 = $1942&255; + $1944 = $2; + $1945 = ((($1944)) + 21|0); + $1946 = HEAP8[$1945>>0]|0; + $1947 = $1946&255; + $1948 = $1943 ^ $1947; + $1949 = (44992 + ($1948)|0); + $1950 = HEAP8[$1949>>0]|0; + $1951 = $1950&255; + $1952 = $2; + $1953 = ((($1952)) + 13|0); + $1954 = HEAP8[$1953>>0]|0; + $1955 = $1954&255; + $1956 = $1951 ^ $1955; + $1957 = (45248 + ($1956)|0); + $1958 = HEAP8[$1957>>0]|0; + $1959 = $1958&255; + $1960 = $2; + $1961 = ((($1960)) + 5|0); + $1962 = HEAP8[$1961>>0]|0; + $1963 = $1962&255; + $1964 = $1959 ^ $1963; + $1965 = ((9400) + ($1964<<2)|0); + $1966 = HEAP32[$1965>>2]|0; + $1967 = $1935 ^ $1966; + $1968 = $2; + $1969 = ((($1968)) + 30|0); + $1970 = HEAP8[$1969>>0]|0; + $1971 = $1970&255; + $1972 = 103 ^ $1971; + $1973 = (45248 + ($1972)|0); + $1974 = HEAP8[$1973>>0]|0; + $1975 = $1974&255; + $1976 = $2; + $1977 = ((($1976)) + 22|0); + $1978 = HEAP8[$1977>>0]|0; + $1979 = $1978&255; + $1980 = $1975 ^ $1979; + $1981 = (45248 + ($1980)|0); + $1982 = HEAP8[$1981>>0]|0; + $1983 = $1982&255; + $1984 = $2; + $1985 = ((($1984)) + 14|0); + $1986 = HEAP8[$1985>>0]|0; + $1987 = $1986&255; + $1988 = $1983 ^ $1987; + $1989 = (44992 + ($1988)|0); + $1990 = HEAP8[$1989>>0]|0; + $1991 = $1990&255; + $1992 = $2; + $1993 = ((($1992)) + 6|0); + $1994 = HEAP8[$1993>>0]|0; + $1995 = $1994&255; + $1996 = $1991 ^ $1995; + $1997 = ((10424) + ($1996<<2)|0); + $1998 = HEAP32[$1997>>2]|0; + $1999 = $1967 ^ $1998; + $2000 = $2; + $2001 = ((($2000)) + 31|0); + $2002 = HEAP8[$2001>>0]|0; + $2003 = $2002&255; + $2004 = 243 ^ $2003; + $2005 = (45248 + ($2004)|0); + $2006 = HEAP8[$2005>>0]|0; + $2007 = $2006&255; + $2008 = $2; + $2009 = ((($2008)) + 23|0); + $2010 = HEAP8[$2009>>0]|0; + $2011 = $2010&255; + $2012 = $2007 ^ $2011; + $2013 = (44992 + ($2012)|0); + $2014 = HEAP8[$2013>>0]|0; + $2015 = $2014&255; + $2016 = $2; + $2017 = ((($2016)) + 15|0); + $2018 = HEAP8[$2017>>0]|0; + $2019 = $2018&255; + $2020 = $2015 ^ $2019; + $2021 = (44992 + ($2020)|0); + $2022 = HEAP8[$2021>>0]|0; + $2023 = $2022&255; + $2024 = $2; + $2025 = ((($2024)) + 7|0); + $2026 = HEAP8[$2025>>0]|0; + $2027 = $2026&255; + $2028 = $2023 ^ $2027; + $2029 = ((11448) + ($2028<<2)|0); + $2030 = HEAP32[$2029>>2]|0; + $2031 = $1999 ^ $2030; + $y = $2031; + $2032 = $y; + $2033 = $2032 << 8; + $2034 = $y; + $2035 = $2034 >>> 24; + $2036 = (($2033) + ($2035))|0; + $y = $2036; + $2037 = $y; + $2038 = $x; + $2039 = (($2038) + ($2037))|0; + $x = $2039; + $2040 = $x; + $2041 = $y; + $2042 = (($2041) + ($2040))|0; + $y = $2042; + $2043 = $x; + $2044 = $1; + $2045 = ((($2044)) + 4096|0); + HEAP32[$2045>>2] = $2043; + $2046 = $y; + $2047 = $2046 << 9; + $2048 = $y; + $2049 = $2048 >>> 23; + $2050 = (($2047) + ($2049))|0; + $2051 = $1; + $2052 = ((($2051)) + 4096|0); + $2053 = ((($2052)) + 4|0); + HEAP32[$2053>>2] = $2050; + $2054 = $2; + $2055 = ((($2054)) + 24|0); + $2056 = HEAP8[$2055>>0]|0; + $2057 = $2056&255; + $2058 = 198 ^ $2057; + $2059 = (44992 + ($2058)|0); + $2060 = HEAP8[$2059>>0]|0; + $2061 = $2060&255; + $2062 = $2; + $2063 = ((($2062)) + 16|0); + $2064 = HEAP8[$2063>>0]|0; + $2065 = $2064&255; + $2066 = $2061 ^ $2065; + $2067 = (45248 + ($2066)|0); + $2068 = HEAP8[$2067>>0]|0; + $2069 = $2068&255; + $2070 = $2; + $2071 = ((($2070)) + 8|0); + $2072 = HEAP8[$2071>>0]|0; + $2073 = $2072&255; + $2074 = $2069 ^ $2073; + $2075 = (45248 + ($2074)|0); + $2076 = HEAP8[$2075>>0]|0; + $2077 = $2076&255; + $2078 = $2; + $2079 = HEAP8[$2078>>0]|0; + $2080 = $2079&255; + $2081 = $2077 ^ $2080; + $2082 = (8376 + ($2081<<2)|0); + $2083 = HEAP32[$2082>>2]|0; + $2084 = $2; + $2085 = ((($2084)) + 25|0); + $2086 = HEAP8[$2085>>0]|0; + $2087 = $2086&255; + $2088 = 179 ^ $2087; + $2089 = (44992 + ($2088)|0); + $2090 = HEAP8[$2089>>0]|0; + $2091 = $2090&255; + $2092 = $2; + $2093 = ((($2092)) + 17|0); + $2094 = HEAP8[$2093>>0]|0; + $2095 = $2094&255; + $2096 = $2091 ^ $2095; + $2097 = (44992 + ($2096)|0); + $2098 = HEAP8[$2097>>0]|0; + $2099 = $2098&255; + $2100 = $2; + $2101 = ((($2100)) + 9|0); + $2102 = HEAP8[$2101>>0]|0; + $2103 = $2102&255; + $2104 = $2099 ^ $2103; + $2105 = (45248 + ($2104)|0); + $2106 = HEAP8[$2105>>0]|0; + $2107 = $2106&255; + $2108 = $2; + $2109 = ((($2108)) + 1|0); + $2110 = HEAP8[$2109>>0]|0; + $2111 = $2110&255; + $2112 = $2107 ^ $2111; + $2113 = ((9400) + ($2112<<2)|0); + $2114 = HEAP32[$2113>>2]|0; + $2115 = $2083 ^ $2114; + $2116 = $2; + $2117 = ((($2116)) + 26|0); + $2118 = HEAP8[$2117>>0]|0; + $2119 = $2118&255; + $2120 = 179 ^ $2119; + $2121 = (45248 + ($2120)|0); + $2122 = HEAP8[$2121>>0]|0; + $2123 = $2122&255; + $2124 = $2; + $2125 = ((($2124)) + 18|0); + $2126 = HEAP8[$2125>>0]|0; + $2127 = $2126&255; + $2128 = $2123 ^ $2127; + $2129 = (45248 + ($2128)|0); + $2130 = HEAP8[$2129>>0]|0; + $2131 = $2130&255; + $2132 = $2; + $2133 = ((($2132)) + 10|0); + $2134 = HEAP8[$2133>>0]|0; + $2135 = $2134&255; + $2136 = $2131 ^ $2135; + $2137 = (44992 + ($2136)|0); + $2138 = HEAP8[$2137>>0]|0; + $2139 = $2138&255; + $2140 = $2; + $2141 = ((($2140)) + 2|0); + $2142 = HEAP8[$2141>>0]|0; + $2143 = $2142&255; + $2144 = $2139 ^ $2143; + $2145 = ((10424) + ($2144<<2)|0); + $2146 = HEAP32[$2145>>2]|0; + $2147 = $2115 ^ $2146; + $2148 = $2; + $2149 = ((($2148)) + 27|0); + $2150 = HEAP8[$2149>>0]|0; + $2151 = $2150&255; + $2152 = 198 ^ $2151; + $2153 = (45248 + ($2152)|0); + $2154 = HEAP8[$2153>>0]|0; + $2155 = $2154&255; + $2156 = $2; + $2157 = ((($2156)) + 19|0); + $2158 = HEAP8[$2157>>0]|0; + $2159 = $2158&255; + $2160 = $2155 ^ $2159; + $2161 = (44992 + ($2160)|0); + $2162 = HEAP8[$2161>>0]|0; + $2163 = $2162&255; + $2164 = $2; + $2165 = ((($2164)) + 11|0); + $2166 = HEAP8[$2165>>0]|0; + $2167 = $2166&255; + $2168 = $2163 ^ $2167; + $2169 = (44992 + ($2168)|0); + $2170 = HEAP8[$2169>>0]|0; + $2171 = $2170&255; + $2172 = $2; + $2173 = ((($2172)) + 3|0); + $2174 = HEAP8[$2173>>0]|0; + $2175 = $2174&255; + $2176 = $2171 ^ $2175; + $2177 = ((11448) + ($2176<<2)|0); + $2178 = HEAP32[$2177>>2]|0; + $2179 = $2147 ^ $2178; + $x = $2179; + $2180 = $2; + $2181 = ((($2180)) + 28|0); + $2182 = HEAP8[$2181>>0]|0; + $2183 = $2182&255; + $2184 = 244 ^ $2183; + $2185 = (44992 + ($2184)|0); + $2186 = HEAP8[$2185>>0]|0; + $2187 = $2186&255; + $2188 = $2; + $2189 = ((($2188)) + 20|0); + $2190 = HEAP8[$2189>>0]|0; + $2191 = $2190&255; + $2192 = $2187 ^ $2191; + $2193 = (45248 + ($2192)|0); + $2194 = HEAP8[$2193>>0]|0; + $2195 = $2194&255; + $2196 = $2; + $2197 = ((($2196)) + 12|0); + $2198 = HEAP8[$2197>>0]|0; + $2199 = $2198&255; + $2200 = $2195 ^ $2199; + $2201 = (45248 + ($2200)|0); + $2202 = HEAP8[$2201>>0]|0; + $2203 = $2202&255; + $2204 = $2; + $2205 = ((($2204)) + 4|0); + $2206 = HEAP8[$2205>>0]|0; + $2207 = $2206&255; + $2208 = $2203 ^ $2207; + $2209 = (8376 + ($2208<<2)|0); + $2210 = HEAP32[$2209>>2]|0; + $2211 = $2; + $2212 = ((($2211)) + 29|0); + $2213 = HEAP8[$2212>>0]|0; + $2214 = $2213&255; + $2215 = 232 ^ $2214; + $2216 = (44992 + ($2215)|0); + $2217 = HEAP8[$2216>>0]|0; + $2218 = $2217&255; + $2219 = $2; + $2220 = ((($2219)) + 21|0); + $2221 = HEAP8[$2220>>0]|0; + $2222 = $2221&255; + $2223 = $2218 ^ $2222; + $2224 = (44992 + ($2223)|0); + $2225 = HEAP8[$2224>>0]|0; + $2226 = $2225&255; + $2227 = $2; + $2228 = ((($2227)) + 13|0); + $2229 = HEAP8[$2228>>0]|0; + $2230 = $2229&255; + $2231 = $2226 ^ $2230; + $2232 = (45248 + ($2231)|0); + $2233 = HEAP8[$2232>>0]|0; + $2234 = $2233&255; + $2235 = $2; + $2236 = ((($2235)) + 5|0); + $2237 = HEAP8[$2236>>0]|0; + $2238 = $2237&255; + $2239 = $2234 ^ $2238; + $2240 = ((9400) + ($2239<<2)|0); + $2241 = HEAP32[$2240>>2]|0; + $2242 = $2210 ^ $2241; + $2243 = $2; + $2244 = ((($2243)) + 30|0); + $2245 = HEAP8[$2244>>0]|0; + $2246 = $2245&255; + $2247 = 232 ^ $2246; + $2248 = (45248 + ($2247)|0); + $2249 = HEAP8[$2248>>0]|0; + $2250 = $2249&255; + $2251 = $2; + $2252 = ((($2251)) + 22|0); + $2253 = HEAP8[$2252>>0]|0; + $2254 = $2253&255; + $2255 = $2250 ^ $2254; + $2256 = (45248 + ($2255)|0); + $2257 = HEAP8[$2256>>0]|0; + $2258 = $2257&255; + $2259 = $2; + $2260 = ((($2259)) + 14|0); + $2261 = HEAP8[$2260>>0]|0; + $2262 = $2261&255; + $2263 = $2258 ^ $2262; + $2264 = (44992 + ($2263)|0); + $2265 = HEAP8[$2264>>0]|0; + $2266 = $2265&255; + $2267 = $2; + $2268 = ((($2267)) + 6|0); + $2269 = HEAP8[$2268>>0]|0; + $2270 = $2269&255; + $2271 = $2266 ^ $2270; + $2272 = ((10424) + ($2271<<2)|0); + $2273 = HEAP32[$2272>>2]|0; + $2274 = $2242 ^ $2273; + $2275 = $2; + $2276 = ((($2275)) + 31|0); + $2277 = HEAP8[$2276>>0]|0; + $2278 = $2277&255; + $2279 = 244 ^ $2278; + $2280 = (45248 + ($2279)|0); + $2281 = HEAP8[$2280>>0]|0; + $2282 = $2281&255; + $2283 = $2; + $2284 = ((($2283)) + 23|0); + $2285 = HEAP8[$2284>>0]|0; + $2286 = $2285&255; + $2287 = $2282 ^ $2286; + $2288 = (44992 + ($2287)|0); + $2289 = HEAP8[$2288>>0]|0; + $2290 = $2289&255; + $2291 = $2; + $2292 = ((($2291)) + 15|0); + $2293 = HEAP8[$2292>>0]|0; + $2294 = $2293&255; + $2295 = $2290 ^ $2294; + $2296 = (44992 + ($2295)|0); + $2297 = HEAP8[$2296>>0]|0; + $2298 = $2297&255; + $2299 = $2; + $2300 = ((($2299)) + 7|0); + $2301 = HEAP8[$2300>>0]|0; + $2302 = $2301&255; + $2303 = $2298 ^ $2302; + $2304 = ((11448) + ($2303<<2)|0); + $2305 = HEAP32[$2304>>2]|0; + $2306 = $2274 ^ $2305; + $y = $2306; + $2307 = $y; + $2308 = $2307 << 8; + $2309 = $y; + $2310 = $2309 >>> 24; + $2311 = (($2308) + ($2310))|0; + $y = $2311; + $2312 = $y; + $2313 = $x; + $2314 = (($2313) + ($2312))|0; + $x = $2314; + $2315 = $x; + $2316 = $y; + $2317 = (($2316) + ($2315))|0; + $y = $2317; + $2318 = $x; + $2319 = $1; + $2320 = ((($2319)) + 4096|0); + $2321 = ((($2320)) + 8|0); + HEAP32[$2321>>2] = $2318; + $2322 = $y; + $2323 = $2322 << 9; + $2324 = $y; + $2325 = $2324 >>> 23; + $2326 = (($2323) + ($2325))|0; + $2327 = $1; + $2328 = ((($2327)) + 4096|0); + $2329 = ((($2328)) + 12|0); + HEAP32[$2329>>2] = $2326; + $2330 = $2; + $2331 = ((($2330)) + 24|0); + $2332 = HEAP8[$2331>>0]|0; + $2333 = $2332&255; + $2334 = 219 ^ $2333; + $2335 = (44992 + ($2334)|0); + $2336 = HEAP8[$2335>>0]|0; + $2337 = $2336&255; + $2338 = $2; + $2339 = ((($2338)) + 16|0); + $2340 = HEAP8[$2339>>0]|0; + $2341 = $2340&255; + $2342 = $2337 ^ $2341; + $2343 = (45248 + ($2342)|0); + $2344 = HEAP8[$2343>>0]|0; + $2345 = $2344&255; + $2346 = $2; + $2347 = ((($2346)) + 8|0); + $2348 = HEAP8[$2347>>0]|0; + $2349 = $2348&255; + $2350 = $2345 ^ $2349; + $2351 = (45248 + ($2350)|0); + $2352 = HEAP8[$2351>>0]|0; + $2353 = $2352&255; + $2354 = $2; + $2355 = HEAP8[$2354>>0]|0; + $2356 = $2355&255; + $2357 = $2353 ^ $2356; + $2358 = (8376 + ($2357<<2)|0); + $2359 = HEAP32[$2358>>2]|0; + $2360 = $2; + $2361 = ((($2360)) + 25|0); + $2362 = HEAP8[$2361>>0]|0; + $2363 = $2362&255; + $2364 = 4 ^ $2363; + $2365 = (44992 + ($2364)|0); + $2366 = HEAP8[$2365>>0]|0; + $2367 = $2366&255; + $2368 = $2; + $2369 = ((($2368)) + 17|0); + $2370 = HEAP8[$2369>>0]|0; + $2371 = $2370&255; + $2372 = $2367 ^ $2371; + $2373 = (44992 + ($2372)|0); + $2374 = HEAP8[$2373>>0]|0; + $2375 = $2374&255; + $2376 = $2; + $2377 = ((($2376)) + 9|0); + $2378 = HEAP8[$2377>>0]|0; + $2379 = $2378&255; + $2380 = $2375 ^ $2379; + $2381 = (45248 + ($2380)|0); + $2382 = HEAP8[$2381>>0]|0; + $2383 = $2382&255; + $2384 = $2; + $2385 = ((($2384)) + 1|0); + $2386 = HEAP8[$2385>>0]|0; + $2387 = $2386&255; + $2388 = $2383 ^ $2387; + $2389 = ((9400) + ($2388<<2)|0); + $2390 = HEAP32[$2389>>2]|0; + $2391 = $2359 ^ $2390; + $2392 = $2; + $2393 = ((($2392)) + 26|0); + $2394 = HEAP8[$2393>>0]|0; + $2395 = $2394&255; + $2396 = 4 ^ $2395; + $2397 = (45248 + ($2396)|0); + $2398 = HEAP8[$2397>>0]|0; + $2399 = $2398&255; + $2400 = $2; + $2401 = ((($2400)) + 18|0); + $2402 = HEAP8[$2401>>0]|0; + $2403 = $2402&255; + $2404 = $2399 ^ $2403; + $2405 = (45248 + ($2404)|0); + $2406 = HEAP8[$2405>>0]|0; + $2407 = $2406&255; + $2408 = $2; + $2409 = ((($2408)) + 10|0); + $2410 = HEAP8[$2409>>0]|0; + $2411 = $2410&255; + $2412 = $2407 ^ $2411; + $2413 = (44992 + ($2412)|0); + $2414 = HEAP8[$2413>>0]|0; + $2415 = $2414&255; + $2416 = $2; + $2417 = ((($2416)) + 2|0); + $2418 = HEAP8[$2417>>0]|0; + $2419 = $2418&255; + $2420 = $2415 ^ $2419; + $2421 = ((10424) + ($2420<<2)|0); + $2422 = HEAP32[$2421>>2]|0; + $2423 = $2391 ^ $2422; + $2424 = $2; + $2425 = ((($2424)) + 27|0); + $2426 = HEAP8[$2425>>0]|0; + $2427 = $2426&255; + $2428 = 219 ^ $2427; + $2429 = (45248 + ($2428)|0); + $2430 = HEAP8[$2429>>0]|0; + $2431 = $2430&255; + $2432 = $2; + $2433 = ((($2432)) + 19|0); + $2434 = HEAP8[$2433>>0]|0; + $2435 = $2434&255; + $2436 = $2431 ^ $2435; + $2437 = (44992 + ($2436)|0); + $2438 = HEAP8[$2437>>0]|0; + $2439 = $2438&255; + $2440 = $2; + $2441 = ((($2440)) + 11|0); + $2442 = HEAP8[$2441>>0]|0; + $2443 = $2442&255; + $2444 = $2439 ^ $2443; + $2445 = (44992 + ($2444)|0); + $2446 = HEAP8[$2445>>0]|0; + $2447 = $2446&255; + $2448 = $2; + $2449 = ((($2448)) + 3|0); + $2450 = HEAP8[$2449>>0]|0; + $2451 = $2450&255; + $2452 = $2447 ^ $2451; + $2453 = ((11448) + ($2452<<2)|0); + $2454 = HEAP32[$2453>>2]|0; + $2455 = $2423 ^ $2454; + $x = $2455; + $2456 = $2; + $2457 = ((($2456)) + 28|0); + $2458 = HEAP8[$2457>>0]|0; + $2459 = $2458&255; + $2460 = 123 ^ $2459; + $2461 = (44992 + ($2460)|0); + $2462 = HEAP8[$2461>>0]|0; + $2463 = $2462&255; + $2464 = $2; + $2465 = ((($2464)) + 20|0); + $2466 = HEAP8[$2465>>0]|0; + $2467 = $2466&255; + $2468 = $2463 ^ $2467; + $2469 = (45248 + ($2468)|0); + $2470 = HEAP8[$2469>>0]|0; + $2471 = $2470&255; + $2472 = $2; + $2473 = ((($2472)) + 12|0); + $2474 = HEAP8[$2473>>0]|0; + $2475 = $2474&255; + $2476 = $2471 ^ $2475; + $2477 = (45248 + ($2476)|0); + $2478 = HEAP8[$2477>>0]|0; + $2479 = $2478&255; + $2480 = $2; + $2481 = ((($2480)) + 4|0); + $2482 = HEAP8[$2481>>0]|0; + $2483 = $2482&255; + $2484 = $2479 ^ $2483; + $2485 = (8376 + ($2484<<2)|0); + $2486 = HEAP32[$2485>>2]|0; + $2487 = $2; + $2488 = ((($2487)) + 29|0); + $2489 = HEAP8[$2488>>0]|0; + $2490 = $2489&255; + $2491 = 253 ^ $2490; + $2492 = (44992 + ($2491)|0); + $2493 = HEAP8[$2492>>0]|0; + $2494 = $2493&255; + $2495 = $2; + $2496 = ((($2495)) + 21|0); + $2497 = HEAP8[$2496>>0]|0; + $2498 = $2497&255; + $2499 = $2494 ^ $2498; + $2500 = (44992 + ($2499)|0); + $2501 = HEAP8[$2500>>0]|0; + $2502 = $2501&255; + $2503 = $2; + $2504 = ((($2503)) + 13|0); + $2505 = HEAP8[$2504>>0]|0; + $2506 = $2505&255; + $2507 = $2502 ^ $2506; + $2508 = (45248 + ($2507)|0); + $2509 = HEAP8[$2508>>0]|0; + $2510 = $2509&255; + $2511 = $2; + $2512 = ((($2511)) + 5|0); + $2513 = HEAP8[$2512>>0]|0; + $2514 = $2513&255; + $2515 = $2510 ^ $2514; + $2516 = ((9400) + ($2515<<2)|0); + $2517 = HEAP32[$2516>>2]|0; + $2518 = $2486 ^ $2517; + $2519 = $2; + $2520 = ((($2519)) + 30|0); + $2521 = HEAP8[$2520>>0]|0; + $2522 = $2521&255; + $2523 = 253 ^ $2522; + $2524 = (45248 + ($2523)|0); + $2525 = HEAP8[$2524>>0]|0; + $2526 = $2525&255; + $2527 = $2; + $2528 = ((($2527)) + 22|0); + $2529 = HEAP8[$2528>>0]|0; + $2530 = $2529&255; + $2531 = $2526 ^ $2530; + $2532 = (45248 + ($2531)|0); + $2533 = HEAP8[$2532>>0]|0; + $2534 = $2533&255; + $2535 = $2; + $2536 = ((($2535)) + 14|0); + $2537 = HEAP8[$2536>>0]|0; + $2538 = $2537&255; + $2539 = $2534 ^ $2538; + $2540 = (44992 + ($2539)|0); + $2541 = HEAP8[$2540>>0]|0; + $2542 = $2541&255; + $2543 = $2; + $2544 = ((($2543)) + 6|0); + $2545 = HEAP8[$2544>>0]|0; + $2546 = $2545&255; + $2547 = $2542 ^ $2546; + $2548 = ((10424) + ($2547<<2)|0); + $2549 = HEAP32[$2548>>2]|0; + $2550 = $2518 ^ $2549; + $2551 = $2; + $2552 = ((($2551)) + 31|0); + $2553 = HEAP8[$2552>>0]|0; + $2554 = $2553&255; + $2555 = 123 ^ $2554; + $2556 = (45248 + ($2555)|0); + $2557 = HEAP8[$2556>>0]|0; + $2558 = $2557&255; + $2559 = $2; + $2560 = ((($2559)) + 23|0); + $2561 = HEAP8[$2560>>0]|0; + $2562 = $2561&255; + $2563 = $2558 ^ $2562; + $2564 = (44992 + ($2563)|0); + $2565 = HEAP8[$2564>>0]|0; + $2566 = $2565&255; + $2567 = $2; + $2568 = ((($2567)) + 15|0); + $2569 = HEAP8[$2568>>0]|0; + $2570 = $2569&255; + $2571 = $2566 ^ $2570; + $2572 = (44992 + ($2571)|0); + $2573 = HEAP8[$2572>>0]|0; + $2574 = $2573&255; + $2575 = $2; + $2576 = ((($2575)) + 7|0); + $2577 = HEAP8[$2576>>0]|0; + $2578 = $2577&255; + $2579 = $2574 ^ $2578; + $2580 = ((11448) + ($2579<<2)|0); + $2581 = HEAP32[$2580>>2]|0; + $2582 = $2550 ^ $2581; + $y = $2582; + $2583 = $y; + $2584 = $2583 << 8; + $2585 = $y; + $2586 = $2585 >>> 24; + $2587 = (($2584) + ($2586))|0; + $y = $2587; + $2588 = $y; + $2589 = $x; + $2590 = (($2589) + ($2588))|0; + $x = $2590; + $2591 = $x; + $2592 = $y; + $2593 = (($2592) + ($2591))|0; + $y = $2593; + $2594 = $x; + $2595 = $1; + $2596 = ((($2595)) + 4096|0); + $2597 = ((($2596)) + 16|0); + HEAP32[$2597>>2] = $2594; + $2598 = $y; + $2599 = $2598 << 9; + $2600 = $y; + $2601 = $2600 >>> 23; + $2602 = (($2599) + ($2601))|0; + $2603 = $1; + $2604 = ((($2603)) + 4096|0); + $2605 = ((($2604)) + 20|0); + HEAP32[$2605>>2] = $2602; + $2606 = $2; + $2607 = ((($2606)) + 24|0); + $2608 = HEAP8[$2607>>0]|0; + $2609 = $2608&255; + $2610 = 251 ^ $2609; + $2611 = (44992 + ($2610)|0); + $2612 = HEAP8[$2611>>0]|0; + $2613 = $2612&255; + $2614 = $2; + $2615 = ((($2614)) + 16|0); + $2616 = HEAP8[$2615>>0]|0; + $2617 = $2616&255; + $2618 = $2613 ^ $2617; + $2619 = (45248 + ($2618)|0); + $2620 = HEAP8[$2619>>0]|0; + $2621 = $2620&255; + $2622 = $2; + $2623 = ((($2622)) + 8|0); + $2624 = HEAP8[$2623>>0]|0; + $2625 = $2624&255; + $2626 = $2621 ^ $2625; + $2627 = (45248 + ($2626)|0); + $2628 = HEAP8[$2627>>0]|0; + $2629 = $2628&255; + $2630 = $2; + $2631 = HEAP8[$2630>>0]|0; + $2632 = $2631&255; + $2633 = $2629 ^ $2632; + $2634 = (8376 + ($2633<<2)|0); + $2635 = HEAP32[$2634>>2]|0; + $2636 = $2; + $2637 = ((($2636)) + 25|0); + $2638 = HEAP8[$2637>>0]|0; + $2639 = $2638&255; + $2640 = 163 ^ $2639; + $2641 = (44992 + ($2640)|0); + $2642 = HEAP8[$2641>>0]|0; + $2643 = $2642&255; + $2644 = $2; + $2645 = ((($2644)) + 17|0); + $2646 = HEAP8[$2645>>0]|0; + $2647 = $2646&255; + $2648 = $2643 ^ $2647; + $2649 = (44992 + ($2648)|0); + $2650 = HEAP8[$2649>>0]|0; + $2651 = $2650&255; + $2652 = $2; + $2653 = ((($2652)) + 9|0); + $2654 = HEAP8[$2653>>0]|0; + $2655 = $2654&255; + $2656 = $2651 ^ $2655; + $2657 = (45248 + ($2656)|0); + $2658 = HEAP8[$2657>>0]|0; + $2659 = $2658&255; + $2660 = $2; + $2661 = ((($2660)) + 1|0); + $2662 = HEAP8[$2661>>0]|0; + $2663 = $2662&255; + $2664 = $2659 ^ $2663; + $2665 = ((9400) + ($2664<<2)|0); + $2666 = HEAP32[$2665>>2]|0; + $2667 = $2635 ^ $2666; + $2668 = $2; + $2669 = ((($2668)) + 26|0); + $2670 = HEAP8[$2669>>0]|0; + $2671 = $2670&255; + $2672 = 163 ^ $2671; + $2673 = (45248 + ($2672)|0); + $2674 = HEAP8[$2673>>0]|0; + $2675 = $2674&255; + $2676 = $2; + $2677 = ((($2676)) + 18|0); + $2678 = HEAP8[$2677>>0]|0; + $2679 = $2678&255; + $2680 = $2675 ^ $2679; + $2681 = (45248 + ($2680)|0); + $2682 = HEAP8[$2681>>0]|0; + $2683 = $2682&255; + $2684 = $2; + $2685 = ((($2684)) + 10|0); + $2686 = HEAP8[$2685>>0]|0; + $2687 = $2686&255; + $2688 = $2683 ^ $2687; + $2689 = (44992 + ($2688)|0); + $2690 = HEAP8[$2689>>0]|0; + $2691 = $2690&255; + $2692 = $2; + $2693 = ((($2692)) + 2|0); + $2694 = HEAP8[$2693>>0]|0; + $2695 = $2694&255; + $2696 = $2691 ^ $2695; + $2697 = ((10424) + ($2696<<2)|0); + $2698 = HEAP32[$2697>>2]|0; + $2699 = $2667 ^ $2698; + $2700 = $2; + $2701 = ((($2700)) + 27|0); + $2702 = HEAP8[$2701>>0]|0; + $2703 = $2702&255; + $2704 = 251 ^ $2703; + $2705 = (45248 + ($2704)|0); + $2706 = HEAP8[$2705>>0]|0; + $2707 = $2706&255; + $2708 = $2; + $2709 = ((($2708)) + 19|0); + $2710 = HEAP8[$2709>>0]|0; + $2711 = $2710&255; + $2712 = $2707 ^ $2711; + $2713 = (44992 + ($2712)|0); + $2714 = HEAP8[$2713>>0]|0; + $2715 = $2714&255; + $2716 = $2; + $2717 = ((($2716)) + 11|0); + $2718 = HEAP8[$2717>>0]|0; + $2719 = $2718&255; + $2720 = $2715 ^ $2719; + $2721 = (44992 + ($2720)|0); + $2722 = HEAP8[$2721>>0]|0; + $2723 = $2722&255; + $2724 = $2; + $2725 = ((($2724)) + 3|0); + $2726 = HEAP8[$2725>>0]|0; + $2727 = $2726&255; + $2728 = $2723 ^ $2727; + $2729 = ((11448) + ($2728<<2)|0); + $2730 = HEAP32[$2729>>2]|0; + $2731 = $2699 ^ $2730; + $x = $2731; + $2732 = $2; + $2733 = ((($2732)) + 28|0); + $2734 = HEAP8[$2733>>0]|0; + $2735 = $2734&255; + $2736 = 200 ^ $2735; + $2737 = (44992 + ($2736)|0); + $2738 = HEAP8[$2737>>0]|0; + $2739 = $2738&255; + $2740 = $2; + $2741 = ((($2740)) + 20|0); + $2742 = HEAP8[$2741>>0]|0; + $2743 = $2742&255; + $2744 = $2739 ^ $2743; + $2745 = (45248 + ($2744)|0); + $2746 = HEAP8[$2745>>0]|0; + $2747 = $2746&255; + $2748 = $2; + $2749 = ((($2748)) + 12|0); + $2750 = HEAP8[$2749>>0]|0; + $2751 = $2750&255; + $2752 = $2747 ^ $2751; + $2753 = (45248 + ($2752)|0); + $2754 = HEAP8[$2753>>0]|0; + $2755 = $2754&255; + $2756 = $2; + $2757 = ((($2756)) + 4|0); + $2758 = HEAP8[$2757>>0]|0; + $2759 = $2758&255; + $2760 = $2755 ^ $2759; + $2761 = (8376 + ($2760<<2)|0); + $2762 = HEAP32[$2761>>2]|0; + $2763 = $2; + $2764 = ((($2763)) + 29|0); + $2765 = HEAP8[$2764>>0]|0; + $2766 = $2765&255; + $2767 = 118 ^ $2766; + $2768 = (44992 + ($2767)|0); + $2769 = HEAP8[$2768>>0]|0; + $2770 = $2769&255; + $2771 = $2; + $2772 = ((($2771)) + 21|0); + $2773 = HEAP8[$2772>>0]|0; + $2774 = $2773&255; + $2775 = $2770 ^ $2774; + $2776 = (44992 + ($2775)|0); + $2777 = HEAP8[$2776>>0]|0; + $2778 = $2777&255; + $2779 = $2; + $2780 = ((($2779)) + 13|0); + $2781 = HEAP8[$2780>>0]|0; + $2782 = $2781&255; + $2783 = $2778 ^ $2782; + $2784 = (45248 + ($2783)|0); + $2785 = HEAP8[$2784>>0]|0; + $2786 = $2785&255; + $2787 = $2; + $2788 = ((($2787)) + 5|0); + $2789 = HEAP8[$2788>>0]|0; + $2790 = $2789&255; + $2791 = $2786 ^ $2790; + $2792 = ((9400) + ($2791<<2)|0); + $2793 = HEAP32[$2792>>2]|0; + $2794 = $2762 ^ $2793; + $2795 = $2; + $2796 = ((($2795)) + 30|0); + $2797 = HEAP8[$2796>>0]|0; + $2798 = $2797&255; + $2799 = 118 ^ $2798; + $2800 = (45248 + ($2799)|0); + $2801 = HEAP8[$2800>>0]|0; + $2802 = $2801&255; + $2803 = $2; + $2804 = ((($2803)) + 22|0); + $2805 = HEAP8[$2804>>0]|0; + $2806 = $2805&255; + $2807 = $2802 ^ $2806; + $2808 = (45248 + ($2807)|0); + $2809 = HEAP8[$2808>>0]|0; + $2810 = $2809&255; + $2811 = $2; + $2812 = ((($2811)) + 14|0); + $2813 = HEAP8[$2812>>0]|0; + $2814 = $2813&255; + $2815 = $2810 ^ $2814; + $2816 = (44992 + ($2815)|0); + $2817 = HEAP8[$2816>>0]|0; + $2818 = $2817&255; + $2819 = $2; + $2820 = ((($2819)) + 6|0); + $2821 = HEAP8[$2820>>0]|0; + $2822 = $2821&255; + $2823 = $2818 ^ $2822; + $2824 = ((10424) + ($2823<<2)|0); + $2825 = HEAP32[$2824>>2]|0; + $2826 = $2794 ^ $2825; + $2827 = $2; + $2828 = ((($2827)) + 31|0); + $2829 = HEAP8[$2828>>0]|0; + $2830 = $2829&255; + $2831 = 200 ^ $2830; + $2832 = (45248 + ($2831)|0); + $2833 = HEAP8[$2832>>0]|0; + $2834 = $2833&255; + $2835 = $2; + $2836 = ((($2835)) + 23|0); + $2837 = HEAP8[$2836>>0]|0; + $2838 = $2837&255; + $2839 = $2834 ^ $2838; + $2840 = (44992 + ($2839)|0); + $2841 = HEAP8[$2840>>0]|0; + $2842 = $2841&255; + $2843 = $2; + $2844 = ((($2843)) + 15|0); + $2845 = HEAP8[$2844>>0]|0; + $2846 = $2845&255; + $2847 = $2842 ^ $2846; + $2848 = (44992 + ($2847)|0); + $2849 = HEAP8[$2848>>0]|0; + $2850 = $2849&255; + $2851 = $2; + $2852 = ((($2851)) + 7|0); + $2853 = HEAP8[$2852>>0]|0; + $2854 = $2853&255; + $2855 = $2850 ^ $2854; + $2856 = ((11448) + ($2855<<2)|0); + $2857 = HEAP32[$2856>>2]|0; + $2858 = $2826 ^ $2857; + $y = $2858; + $2859 = $y; + $2860 = $2859 << 8; + $2861 = $y; + $2862 = $2861 >>> 24; + $2863 = (($2860) + ($2862))|0; + $y = $2863; + $2864 = $y; + $2865 = $x; + $2866 = (($2865) + ($2864))|0; + $x = $2866; + $2867 = $x; + $2868 = $y; + $2869 = (($2868) + ($2867))|0; + $y = $2869; + $2870 = $x; + $2871 = $1; + $2872 = ((($2871)) + 4096|0); + $2873 = ((($2872)) + 24|0); + HEAP32[$2873>>2] = $2870; + $2874 = $y; + $2875 = $2874 << 9; + $2876 = $y; + $2877 = $2876 >>> 23; + $2878 = (($2875) + ($2877))|0; + $2879 = $1; + $2880 = ((($2879)) + 4096|0); + $2881 = ((($2880)) + 28|0); + HEAP32[$2881>>2] = $2878; + $2882 = $2; + $2883 = ((($2882)) + 24|0); + $2884 = HEAP8[$2883>>0]|0; + $2885 = $2884&255; + $2886 = 74 ^ $2885; + $2887 = (44992 + ($2886)|0); + $2888 = HEAP8[$2887>>0]|0; + $2889 = $2888&255; + $2890 = $2; + $2891 = ((($2890)) + 16|0); + $2892 = HEAP8[$2891>>0]|0; + $2893 = $2892&255; + $2894 = $2889 ^ $2893; + $2895 = (45248 + ($2894)|0); + $2896 = HEAP8[$2895>>0]|0; + $2897 = $2896&255; + $2898 = $2; + $2899 = ((($2898)) + 8|0); + $2900 = HEAP8[$2899>>0]|0; + $2901 = $2900&255; + $2902 = $2897 ^ $2901; + $2903 = (45248 + ($2902)|0); + $2904 = HEAP8[$2903>>0]|0; + $2905 = $2904&255; + $2906 = $2; + $2907 = HEAP8[$2906>>0]|0; + $2908 = $2907&255; + $2909 = $2905 ^ $2908; + $2910 = (8376 + ($2909<<2)|0); + $2911 = HEAP32[$2910>>2]|0; + $2912 = $2; + $2913 = ((($2912)) + 25|0); + $2914 = HEAP8[$2913>>0]|0; + $2915 = $2914&255; + $2916 = 154 ^ $2915; + $2917 = (44992 + ($2916)|0); + $2918 = HEAP8[$2917>>0]|0; + $2919 = $2918&255; + $2920 = $2; + $2921 = ((($2920)) + 17|0); + $2922 = HEAP8[$2921>>0]|0; + $2923 = $2922&255; + $2924 = $2919 ^ $2923; + $2925 = (44992 + ($2924)|0); + $2926 = HEAP8[$2925>>0]|0; + $2927 = $2926&255; + $2928 = $2; + $2929 = ((($2928)) + 9|0); + $2930 = HEAP8[$2929>>0]|0; + $2931 = $2930&255; + $2932 = $2927 ^ $2931; + $2933 = (45248 + ($2932)|0); + $2934 = HEAP8[$2933>>0]|0; + $2935 = $2934&255; + $2936 = $2; + $2937 = ((($2936)) + 1|0); + $2938 = HEAP8[$2937>>0]|0; + $2939 = $2938&255; + $2940 = $2935 ^ $2939; + $2941 = ((9400) + ($2940<<2)|0); + $2942 = HEAP32[$2941>>2]|0; + $2943 = $2911 ^ $2942; + $2944 = $2; + $2945 = ((($2944)) + 26|0); + $2946 = HEAP8[$2945>>0]|0; + $2947 = $2946&255; + $2948 = 154 ^ $2947; + $2949 = (45248 + ($2948)|0); + $2950 = HEAP8[$2949>>0]|0; + $2951 = $2950&255; + $2952 = $2; + $2953 = ((($2952)) + 18|0); + $2954 = HEAP8[$2953>>0]|0; + $2955 = $2954&255; + $2956 = $2951 ^ $2955; + $2957 = (45248 + ($2956)|0); + $2958 = HEAP8[$2957>>0]|0; + $2959 = $2958&255; + $2960 = $2; + $2961 = ((($2960)) + 10|0); + $2962 = HEAP8[$2961>>0]|0; + $2963 = $2962&255; + $2964 = $2959 ^ $2963; + $2965 = (44992 + ($2964)|0); + $2966 = HEAP8[$2965>>0]|0; + $2967 = $2966&255; + $2968 = $2; + $2969 = ((($2968)) + 2|0); + $2970 = HEAP8[$2969>>0]|0; + $2971 = $2970&255; + $2972 = $2967 ^ $2971; + $2973 = ((10424) + ($2972<<2)|0); + $2974 = HEAP32[$2973>>2]|0; + $2975 = $2943 ^ $2974; + $2976 = $2; + $2977 = ((($2976)) + 27|0); + $2978 = HEAP8[$2977>>0]|0; + $2979 = $2978&255; + $2980 = 74 ^ $2979; + $2981 = (45248 + ($2980)|0); + $2982 = HEAP8[$2981>>0]|0; + $2983 = $2982&255; + $2984 = $2; + $2985 = ((($2984)) + 19|0); + $2986 = HEAP8[$2985>>0]|0; + $2987 = $2986&255; + $2988 = $2983 ^ $2987; + $2989 = (44992 + ($2988)|0); + $2990 = HEAP8[$2989>>0]|0; + $2991 = $2990&255; + $2992 = $2; + $2993 = ((($2992)) + 11|0); + $2994 = HEAP8[$2993>>0]|0; + $2995 = $2994&255; + $2996 = $2991 ^ $2995; + $2997 = (44992 + ($2996)|0); + $2998 = HEAP8[$2997>>0]|0; + $2999 = $2998&255; + $3000 = $2; + $3001 = ((($3000)) + 3|0); + $3002 = HEAP8[$3001>>0]|0; + $3003 = $3002&255; + $3004 = $2999 ^ $3003; + $3005 = ((11448) + ($3004<<2)|0); + $3006 = HEAP32[$3005>>2]|0; + $3007 = $2975 ^ $3006; + $x = $3007; + $3008 = $2; + $3009 = ((($3008)) + 28|0); + $3010 = HEAP8[$3009>>0]|0; + $3011 = $3010&255; + $3012 = 211 ^ $3011; + $3013 = (44992 + ($3012)|0); + $3014 = HEAP8[$3013>>0]|0; + $3015 = $3014&255; + $3016 = $2; + $3017 = ((($3016)) + 20|0); + $3018 = HEAP8[$3017>>0]|0; + $3019 = $3018&255; + $3020 = $3015 ^ $3019; + $3021 = (45248 + ($3020)|0); + $3022 = HEAP8[$3021>>0]|0; + $3023 = $3022&255; + $3024 = $2; + $3025 = ((($3024)) + 12|0); + $3026 = HEAP8[$3025>>0]|0; + $3027 = $3026&255; + $3028 = $3023 ^ $3027; + $3029 = (45248 + ($3028)|0); + $3030 = HEAP8[$3029>>0]|0; + $3031 = $3030&255; + $3032 = $2; + $3033 = ((($3032)) + 4|0); + $3034 = HEAP8[$3033>>0]|0; + $3035 = $3034&255; + $3036 = $3031 ^ $3035; + $3037 = (8376 + ($3036<<2)|0); + $3038 = HEAP32[$3037>>2]|0; + $3039 = $2; + $3040 = ((($3039)) + 29|0); + $3041 = HEAP8[$3040>>0]|0; + $3042 = $3041&255; + $3043 = 146 ^ $3042; + $3044 = (44992 + ($3043)|0); + $3045 = HEAP8[$3044>>0]|0; + $3046 = $3045&255; + $3047 = $2; + $3048 = ((($3047)) + 21|0); + $3049 = HEAP8[$3048>>0]|0; + $3050 = $3049&255; + $3051 = $3046 ^ $3050; + $3052 = (44992 + ($3051)|0); + $3053 = HEAP8[$3052>>0]|0; + $3054 = $3053&255; + $3055 = $2; + $3056 = ((($3055)) + 13|0); + $3057 = HEAP8[$3056>>0]|0; + $3058 = $3057&255; + $3059 = $3054 ^ $3058; + $3060 = (45248 + ($3059)|0); + $3061 = HEAP8[$3060>>0]|0; + $3062 = $3061&255; + $3063 = $2; + $3064 = ((($3063)) + 5|0); + $3065 = HEAP8[$3064>>0]|0; + $3066 = $3065&255; + $3067 = $3062 ^ $3066; + $3068 = ((9400) + ($3067<<2)|0); + $3069 = HEAP32[$3068>>2]|0; + $3070 = $3038 ^ $3069; + $3071 = $2; + $3072 = ((($3071)) + 30|0); + $3073 = HEAP8[$3072>>0]|0; + $3074 = $3073&255; + $3075 = 146 ^ $3074; + $3076 = (45248 + ($3075)|0); + $3077 = HEAP8[$3076>>0]|0; + $3078 = $3077&255; + $3079 = $2; + $3080 = ((($3079)) + 22|0); + $3081 = HEAP8[$3080>>0]|0; + $3082 = $3081&255; + $3083 = $3078 ^ $3082; + $3084 = (45248 + ($3083)|0); + $3085 = HEAP8[$3084>>0]|0; + $3086 = $3085&255; + $3087 = $2; + $3088 = ((($3087)) + 14|0); + $3089 = HEAP8[$3088>>0]|0; + $3090 = $3089&255; + $3091 = $3086 ^ $3090; + $3092 = (44992 + ($3091)|0); + $3093 = HEAP8[$3092>>0]|0; + $3094 = $3093&255; + $3095 = $2; + $3096 = ((($3095)) + 6|0); + $3097 = HEAP8[$3096>>0]|0; + $3098 = $3097&255; + $3099 = $3094 ^ $3098; + $3100 = ((10424) + ($3099<<2)|0); + $3101 = HEAP32[$3100>>2]|0; + $3102 = $3070 ^ $3101; + $3103 = $2; + $3104 = ((($3103)) + 31|0); + $3105 = HEAP8[$3104>>0]|0; + $3106 = $3105&255; + $3107 = 211 ^ $3106; + $3108 = (45248 + ($3107)|0); + $3109 = HEAP8[$3108>>0]|0; + $3110 = $3109&255; + $3111 = $2; + $3112 = ((($3111)) + 23|0); + $3113 = HEAP8[$3112>>0]|0; + $3114 = $3113&255; + $3115 = $3110 ^ $3114; + $3116 = (44992 + ($3115)|0); + $3117 = HEAP8[$3116>>0]|0; + $3118 = $3117&255; + $3119 = $2; + $3120 = ((($3119)) + 15|0); + $3121 = HEAP8[$3120>>0]|0; + $3122 = $3121&255; + $3123 = $3118 ^ $3122; + $3124 = (44992 + ($3123)|0); + $3125 = HEAP8[$3124>>0]|0; + $3126 = $3125&255; + $3127 = $2; + $3128 = ((($3127)) + 7|0); + $3129 = HEAP8[$3128>>0]|0; + $3130 = $3129&255; + $3131 = $3126 ^ $3130; + $3132 = ((11448) + ($3131<<2)|0); + $3133 = HEAP32[$3132>>2]|0; + $3134 = $3102 ^ $3133; + $y = $3134; + $3135 = $y; + $3136 = $3135 << 8; + $3137 = $y; + $3138 = $3137 >>> 24; + $3139 = (($3136) + ($3138))|0; + $y = $3139; + $3140 = $y; + $3141 = $x; + $3142 = (($3141) + ($3140))|0; + $x = $3142; + $3143 = $x; + $3144 = $y; + $3145 = (($3144) + ($3143))|0; + $y = $3145; + $3146 = $x; + $3147 = $1; + $3148 = ((($3147)) + 4128|0); + HEAP32[$3148>>2] = $3146; + $3149 = $y; + $3150 = $3149 << 9; + $3151 = $y; + $3152 = $3151 >>> 23; + $3153 = (($3150) + ($3152))|0; + $3154 = $1; + $3155 = ((($3154)) + 4128|0); + $3156 = ((($3155)) + 4|0); + HEAP32[$3156>>2] = $3153; + $3157 = $2; + $3158 = ((($3157)) + 24|0); + $3159 = HEAP8[$3158>>0]|0; + $3160 = $3159&255; + $3161 = 230 ^ $3160; + $3162 = (44992 + ($3161)|0); + $3163 = HEAP8[$3162>>0]|0; + $3164 = $3163&255; + $3165 = $2; + $3166 = ((($3165)) + 16|0); + $3167 = HEAP8[$3166>>0]|0; + $3168 = $3167&255; + $3169 = $3164 ^ $3168; + $3170 = (45248 + ($3169)|0); + $3171 = HEAP8[$3170>>0]|0; + $3172 = $3171&255; + $3173 = $2; + $3174 = ((($3173)) + 8|0); + $3175 = HEAP8[$3174>>0]|0; + $3176 = $3175&255; + $3177 = $3172 ^ $3176; + $3178 = (45248 + ($3177)|0); + $3179 = HEAP8[$3178>>0]|0; + $3180 = $3179&255; + $3181 = $2; + $3182 = HEAP8[$3181>>0]|0; + $3183 = $3182&255; + $3184 = $3180 ^ $3183; + $3185 = (8376 + ($3184<<2)|0); + $3186 = HEAP32[$3185>>2]|0; + $3187 = $2; + $3188 = ((($3187)) + 25|0); + $3189 = HEAP8[$3188>>0]|0; + $3190 = $3189&255; + $3191 = 128 ^ $3190; + $3192 = (44992 + ($3191)|0); + $3193 = HEAP8[$3192>>0]|0; + $3194 = $3193&255; + $3195 = $2; + $3196 = ((($3195)) + 17|0); + $3197 = HEAP8[$3196>>0]|0; + $3198 = $3197&255; + $3199 = $3194 ^ $3198; + $3200 = (44992 + ($3199)|0); + $3201 = HEAP8[$3200>>0]|0; + $3202 = $3201&255; + $3203 = $2; + $3204 = ((($3203)) + 9|0); + $3205 = HEAP8[$3204>>0]|0; + $3206 = $3205&255; + $3207 = $3202 ^ $3206; + $3208 = (45248 + ($3207)|0); + $3209 = HEAP8[$3208>>0]|0; + $3210 = $3209&255; + $3211 = $2; + $3212 = ((($3211)) + 1|0); + $3213 = HEAP8[$3212>>0]|0; + $3214 = $3213&255; + $3215 = $3210 ^ $3214; + $3216 = ((9400) + ($3215<<2)|0); + $3217 = HEAP32[$3216>>2]|0; + $3218 = $3186 ^ $3217; + $3219 = $2; + $3220 = ((($3219)) + 26|0); + $3221 = HEAP8[$3220>>0]|0; + $3222 = $3221&255; + $3223 = 128 ^ $3222; + $3224 = (45248 + ($3223)|0); + $3225 = HEAP8[$3224>>0]|0; + $3226 = $3225&255; + $3227 = $2; + $3228 = ((($3227)) + 18|0); + $3229 = HEAP8[$3228>>0]|0; + $3230 = $3229&255; + $3231 = $3226 ^ $3230; + $3232 = (45248 + ($3231)|0); + $3233 = HEAP8[$3232>>0]|0; + $3234 = $3233&255; + $3235 = $2; + $3236 = ((($3235)) + 10|0); + $3237 = HEAP8[$3236>>0]|0; + $3238 = $3237&255; + $3239 = $3234 ^ $3238; + $3240 = (44992 + ($3239)|0); + $3241 = HEAP8[$3240>>0]|0; + $3242 = $3241&255; + $3243 = $2; + $3244 = ((($3243)) + 2|0); + $3245 = HEAP8[$3244>>0]|0; + $3246 = $3245&255; + $3247 = $3242 ^ $3246; + $3248 = ((10424) + ($3247<<2)|0); + $3249 = HEAP32[$3248>>2]|0; + $3250 = $3218 ^ $3249; + $3251 = $2; + $3252 = ((($3251)) + 27|0); + $3253 = HEAP8[$3252>>0]|0; + $3254 = $3253&255; + $3255 = 230 ^ $3254; + $3256 = (45248 + ($3255)|0); + $3257 = HEAP8[$3256>>0]|0; + $3258 = $3257&255; + $3259 = $2; + $3260 = ((($3259)) + 19|0); + $3261 = HEAP8[$3260>>0]|0; + $3262 = $3261&255; + $3263 = $3258 ^ $3262; + $3264 = (44992 + ($3263)|0); + $3265 = HEAP8[$3264>>0]|0; + $3266 = $3265&255; + $3267 = $2; + $3268 = ((($3267)) + 11|0); + $3269 = HEAP8[$3268>>0]|0; + $3270 = $3269&255; + $3271 = $3266 ^ $3270; + $3272 = (44992 + ($3271)|0); + $3273 = HEAP8[$3272>>0]|0; + $3274 = $3273&255; + $3275 = $2; + $3276 = ((($3275)) + 3|0); + $3277 = HEAP8[$3276>>0]|0; + $3278 = $3277&255; + $3279 = $3274 ^ $3278; + $3280 = ((11448) + ($3279<<2)|0); + $3281 = HEAP32[$3280>>2]|0; + $3282 = $3250 ^ $3281; + $x = $3282; + $3283 = $2; + $3284 = ((($3283)) + 28|0); + $3285 = HEAP8[$3284>>0]|0; + $3286 = $3285&255; + $3287 = 107 ^ $3286; + $3288 = (44992 + ($3287)|0); + $3289 = HEAP8[$3288>>0]|0; + $3290 = $3289&255; + $3291 = $2; + $3292 = ((($3291)) + 20|0); + $3293 = HEAP8[$3292>>0]|0; + $3294 = $3293&255; + $3295 = $3290 ^ $3294; + $3296 = (45248 + ($3295)|0); + $3297 = HEAP8[$3296>>0]|0; + $3298 = $3297&255; + $3299 = $2; + $3300 = ((($3299)) + 12|0); + $3301 = HEAP8[$3300>>0]|0; + $3302 = $3301&255; + $3303 = $3298 ^ $3302; + $3304 = (45248 + ($3303)|0); + $3305 = HEAP8[$3304>>0]|0; + $3306 = $3305&255; + $3307 = $2; + $3308 = ((($3307)) + 4|0); + $3309 = HEAP8[$3308>>0]|0; + $3310 = $3309&255; + $3311 = $3306 ^ $3310; + $3312 = (8376 + ($3311<<2)|0); + $3313 = HEAP32[$3312>>2]|0; + $3314 = $2; + $3315 = ((($3314)) + 29|0); + $3316 = HEAP8[$3315>>0]|0; + $3317 = $3316&255; + $3318 = 120 ^ $3317; + $3319 = (44992 + ($3318)|0); + $3320 = HEAP8[$3319>>0]|0; + $3321 = $3320&255; + $3322 = $2; + $3323 = ((($3322)) + 21|0); + $3324 = HEAP8[$3323>>0]|0; + $3325 = $3324&255; + $3326 = $3321 ^ $3325; + $3327 = (44992 + ($3326)|0); + $3328 = HEAP8[$3327>>0]|0; + $3329 = $3328&255; + $3330 = $2; + $3331 = ((($3330)) + 13|0); + $3332 = HEAP8[$3331>>0]|0; + $3333 = $3332&255; + $3334 = $3329 ^ $3333; + $3335 = (45248 + ($3334)|0); + $3336 = HEAP8[$3335>>0]|0; + $3337 = $3336&255; + $3338 = $2; + $3339 = ((($3338)) + 5|0); + $3340 = HEAP8[$3339>>0]|0; + $3341 = $3340&255; + $3342 = $3337 ^ $3341; + $3343 = ((9400) + ($3342<<2)|0); + $3344 = HEAP32[$3343>>2]|0; + $3345 = $3313 ^ $3344; + $3346 = $2; + $3347 = ((($3346)) + 30|0); + $3348 = HEAP8[$3347>>0]|0; + $3349 = $3348&255; + $3350 = 120 ^ $3349; + $3351 = (45248 + ($3350)|0); + $3352 = HEAP8[$3351>>0]|0; + $3353 = $3352&255; + $3354 = $2; + $3355 = ((($3354)) + 22|0); + $3356 = HEAP8[$3355>>0]|0; + $3357 = $3356&255; + $3358 = $3353 ^ $3357; + $3359 = (45248 + ($3358)|0); + $3360 = HEAP8[$3359>>0]|0; + $3361 = $3360&255; + $3362 = $2; + $3363 = ((($3362)) + 14|0); + $3364 = HEAP8[$3363>>0]|0; + $3365 = $3364&255; + $3366 = $3361 ^ $3365; + $3367 = (44992 + ($3366)|0); + $3368 = HEAP8[$3367>>0]|0; + $3369 = $3368&255; + $3370 = $2; + $3371 = ((($3370)) + 6|0); + $3372 = HEAP8[$3371>>0]|0; + $3373 = $3372&255; + $3374 = $3369 ^ $3373; + $3375 = ((10424) + ($3374<<2)|0); + $3376 = HEAP32[$3375>>2]|0; + $3377 = $3345 ^ $3376; + $3378 = $2; + $3379 = ((($3378)) + 31|0); + $3380 = HEAP8[$3379>>0]|0; + $3381 = $3380&255; + $3382 = 107 ^ $3381; + $3383 = (45248 + ($3382)|0); + $3384 = HEAP8[$3383>>0]|0; + $3385 = $3384&255; + $3386 = $2; + $3387 = ((($3386)) + 23|0); + $3388 = HEAP8[$3387>>0]|0; + $3389 = $3388&255; + $3390 = $3385 ^ $3389; + $3391 = (44992 + ($3390)|0); + $3392 = HEAP8[$3391>>0]|0; + $3393 = $3392&255; + $3394 = $2; + $3395 = ((($3394)) + 15|0); + $3396 = HEAP8[$3395>>0]|0; + $3397 = $3396&255; + $3398 = $3393 ^ $3397; + $3399 = (44992 + ($3398)|0); + $3400 = HEAP8[$3399>>0]|0; + $3401 = $3400&255; + $3402 = $2; + $3403 = ((($3402)) + 7|0); + $3404 = HEAP8[$3403>>0]|0; + $3405 = $3404&255; + $3406 = $3401 ^ $3405; + $3407 = ((11448) + ($3406<<2)|0); + $3408 = HEAP32[$3407>>2]|0; + $3409 = $3377 ^ $3408; + $y = $3409; + $3410 = $y; + $3411 = $3410 << 8; + $3412 = $y; + $3413 = $3412 >>> 24; + $3414 = (($3411) + ($3413))|0; + $y = $3414; + $3415 = $y; + $3416 = $x; + $3417 = (($3416) + ($3415))|0; + $x = $3417; + $3418 = $x; + $3419 = $y; + $3420 = (($3419) + ($3418))|0; + $y = $3420; + $3421 = $x; + $3422 = $1; + $3423 = ((($3422)) + 4128|0); + $3424 = ((($3423)) + 8|0); + HEAP32[$3424>>2] = $3421; + $3425 = $y; + $3426 = $3425 << 9; + $3427 = $y; + $3428 = $3427 >>> 23; + $3429 = (($3426) + ($3428))|0; + $3430 = $1; + $3431 = ((($3430)) + 4128|0); + $3432 = ((($3431)) + 12|0); + HEAP32[$3432>>2] = $3429; + $3433 = $2; + $3434 = ((($3433)) + 24|0); + $3435 = HEAP8[$3434>>0]|0; + $3436 = $3435&255; + $3437 = 69 ^ $3436; + $3438 = (44992 + ($3437)|0); + $3439 = HEAP8[$3438>>0]|0; + $3440 = $3439&255; + $3441 = $2; + $3442 = ((($3441)) + 16|0); + $3443 = HEAP8[$3442>>0]|0; + $3444 = $3443&255; + $3445 = $3440 ^ $3444; + $3446 = (45248 + ($3445)|0); + $3447 = HEAP8[$3446>>0]|0; + $3448 = $3447&255; + $3449 = $2; + $3450 = ((($3449)) + 8|0); + $3451 = HEAP8[$3450>>0]|0; + $3452 = $3451&255; + $3453 = $3448 ^ $3452; + $3454 = (45248 + ($3453)|0); + $3455 = HEAP8[$3454>>0]|0; + $3456 = $3455&255; + $3457 = $2; + $3458 = HEAP8[$3457>>0]|0; + $3459 = $3458&255; + $3460 = $3456 ^ $3459; + $3461 = (8376 + ($3460<<2)|0); + $3462 = HEAP32[$3461>>2]|0; + $3463 = $2; + $3464 = ((($3463)) + 25|0); + $3465 = HEAP8[$3464>>0]|0; + $3466 = $3465&255; + $3467 = 228 ^ $3466; + $3468 = (44992 + ($3467)|0); + $3469 = HEAP8[$3468>>0]|0; + $3470 = $3469&255; + $3471 = $2; + $3472 = ((($3471)) + 17|0); + $3473 = HEAP8[$3472>>0]|0; + $3474 = $3473&255; + $3475 = $3470 ^ $3474; + $3476 = (44992 + ($3475)|0); + $3477 = HEAP8[$3476>>0]|0; + $3478 = $3477&255; + $3479 = $2; + $3480 = ((($3479)) + 9|0); + $3481 = HEAP8[$3480>>0]|0; + $3482 = $3481&255; + $3483 = $3478 ^ $3482; + $3484 = (45248 + ($3483)|0); + $3485 = HEAP8[$3484>>0]|0; + $3486 = $3485&255; + $3487 = $2; + $3488 = ((($3487)) + 1|0); + $3489 = HEAP8[$3488>>0]|0; + $3490 = $3489&255; + $3491 = $3486 ^ $3490; + $3492 = ((9400) + ($3491<<2)|0); + $3493 = HEAP32[$3492>>2]|0; + $3494 = $3462 ^ $3493; + $3495 = $2; + $3496 = ((($3495)) + 26|0); + $3497 = HEAP8[$3496>>0]|0; + $3498 = $3497&255; + $3499 = 228 ^ $3498; + $3500 = (45248 + ($3499)|0); + $3501 = HEAP8[$3500>>0]|0; + $3502 = $3501&255; + $3503 = $2; + $3504 = ((($3503)) + 18|0); + $3505 = HEAP8[$3504>>0]|0; + $3506 = $3505&255; + $3507 = $3502 ^ $3506; + $3508 = (45248 + ($3507)|0); + $3509 = HEAP8[$3508>>0]|0; + $3510 = $3509&255; + $3511 = $2; + $3512 = ((($3511)) + 10|0); + $3513 = HEAP8[$3512>>0]|0; + $3514 = $3513&255; + $3515 = $3510 ^ $3514; + $3516 = (44992 + ($3515)|0); + $3517 = HEAP8[$3516>>0]|0; + $3518 = $3517&255; + $3519 = $2; + $3520 = ((($3519)) + 2|0); + $3521 = HEAP8[$3520>>0]|0; + $3522 = $3521&255; + $3523 = $3518 ^ $3522; + $3524 = ((10424) + ($3523<<2)|0); + $3525 = HEAP32[$3524>>2]|0; + $3526 = $3494 ^ $3525; + $3527 = $2; + $3528 = ((($3527)) + 27|0); + $3529 = HEAP8[$3528>>0]|0; + $3530 = $3529&255; + $3531 = 69 ^ $3530; + $3532 = (45248 + ($3531)|0); + $3533 = HEAP8[$3532>>0]|0; + $3534 = $3533&255; + $3535 = $2; + $3536 = ((($3535)) + 19|0); + $3537 = HEAP8[$3536>>0]|0; + $3538 = $3537&255; + $3539 = $3534 ^ $3538; + $3540 = (44992 + ($3539)|0); + $3541 = HEAP8[$3540>>0]|0; + $3542 = $3541&255; + $3543 = $2; + $3544 = ((($3543)) + 11|0); + $3545 = HEAP8[$3544>>0]|0; + $3546 = $3545&255; + $3547 = $3542 ^ $3546; + $3548 = (44992 + ($3547)|0); + $3549 = HEAP8[$3548>>0]|0; + $3550 = $3549&255; + $3551 = $2; + $3552 = ((($3551)) + 3|0); + $3553 = HEAP8[$3552>>0]|0; + $3554 = $3553&255; + $3555 = $3550 ^ $3554; + $3556 = ((11448) + ($3555<<2)|0); + $3557 = HEAP32[$3556>>2]|0; + $3558 = $3526 ^ $3557; + $x = $3558; + $3559 = $2; + $3560 = ((($3559)) + 28|0); + $3561 = HEAP8[$3560>>0]|0; + $3562 = $3561&255; + $3563 = 125 ^ $3562; + $3564 = (44992 + ($3563)|0); + $3565 = HEAP8[$3564>>0]|0; + $3566 = $3565&255; + $3567 = $2; + $3568 = ((($3567)) + 20|0); + $3569 = HEAP8[$3568>>0]|0; + $3570 = $3569&255; + $3571 = $3566 ^ $3570; + $3572 = (45248 + ($3571)|0); + $3573 = HEAP8[$3572>>0]|0; + $3574 = $3573&255; + $3575 = $2; + $3576 = ((($3575)) + 12|0); + $3577 = HEAP8[$3576>>0]|0; + $3578 = $3577&255; + $3579 = $3574 ^ $3578; + $3580 = (45248 + ($3579)|0); + $3581 = HEAP8[$3580>>0]|0; + $3582 = $3581&255; + $3583 = $2; + $3584 = ((($3583)) + 4|0); + $3585 = HEAP8[$3584>>0]|0; + $3586 = $3585&255; + $3587 = $3582 ^ $3586; + $3588 = (8376 + ($3587<<2)|0); + $3589 = HEAP32[$3588>>2]|0; + $3590 = $2; + $3591 = ((($3590)) + 29|0); + $3592 = HEAP8[$3591>>0]|0; + $3593 = $3592&255; + $3594 = 221 ^ $3593; + $3595 = (44992 + ($3594)|0); + $3596 = HEAP8[$3595>>0]|0; + $3597 = $3596&255; + $3598 = $2; + $3599 = ((($3598)) + 21|0); + $3600 = HEAP8[$3599>>0]|0; + $3601 = $3600&255; + $3602 = $3597 ^ $3601; + $3603 = (44992 + ($3602)|0); + $3604 = HEAP8[$3603>>0]|0; + $3605 = $3604&255; + $3606 = $2; + $3607 = ((($3606)) + 13|0); + $3608 = HEAP8[$3607>>0]|0; + $3609 = $3608&255; + $3610 = $3605 ^ $3609; + $3611 = (45248 + ($3610)|0); + $3612 = HEAP8[$3611>>0]|0; + $3613 = $3612&255; + $3614 = $2; + $3615 = ((($3614)) + 5|0); + $3616 = HEAP8[$3615>>0]|0; + $3617 = $3616&255; + $3618 = $3613 ^ $3617; + $3619 = ((9400) + ($3618<<2)|0); + $3620 = HEAP32[$3619>>2]|0; + $3621 = $3589 ^ $3620; + $3622 = $2; + $3623 = ((($3622)) + 30|0); + $3624 = HEAP8[$3623>>0]|0; + $3625 = $3624&255; + $3626 = 221 ^ $3625; + $3627 = (45248 + ($3626)|0); + $3628 = HEAP8[$3627>>0]|0; + $3629 = $3628&255; + $3630 = $2; + $3631 = ((($3630)) + 22|0); + $3632 = HEAP8[$3631>>0]|0; + $3633 = $3632&255; + $3634 = $3629 ^ $3633; + $3635 = (45248 + ($3634)|0); + $3636 = HEAP8[$3635>>0]|0; + $3637 = $3636&255; + $3638 = $2; + $3639 = ((($3638)) + 14|0); + $3640 = HEAP8[$3639>>0]|0; + $3641 = $3640&255; + $3642 = $3637 ^ $3641; + $3643 = (44992 + ($3642)|0); + $3644 = HEAP8[$3643>>0]|0; + $3645 = $3644&255; + $3646 = $2; + $3647 = ((($3646)) + 6|0); + $3648 = HEAP8[$3647>>0]|0; + $3649 = $3648&255; + $3650 = $3645 ^ $3649; + $3651 = ((10424) + ($3650<<2)|0); + $3652 = HEAP32[$3651>>2]|0; + $3653 = $3621 ^ $3652; + $3654 = $2; + $3655 = ((($3654)) + 31|0); + $3656 = HEAP8[$3655>>0]|0; + $3657 = $3656&255; + $3658 = 125 ^ $3657; + $3659 = (45248 + ($3658)|0); + $3660 = HEAP8[$3659>>0]|0; + $3661 = $3660&255; + $3662 = $2; + $3663 = ((($3662)) + 23|0); + $3664 = HEAP8[$3663>>0]|0; + $3665 = $3664&255; + $3666 = $3661 ^ $3665; + $3667 = (44992 + ($3666)|0); + $3668 = HEAP8[$3667>>0]|0; + $3669 = $3668&255; + $3670 = $2; + $3671 = ((($3670)) + 15|0); + $3672 = HEAP8[$3671>>0]|0; + $3673 = $3672&255; + $3674 = $3669 ^ $3673; + $3675 = (44992 + ($3674)|0); + $3676 = HEAP8[$3675>>0]|0; + $3677 = $3676&255; + $3678 = $2; + $3679 = ((($3678)) + 7|0); + $3680 = HEAP8[$3679>>0]|0; + $3681 = $3680&255; + $3682 = $3677 ^ $3681; + $3683 = ((11448) + ($3682<<2)|0); + $3684 = HEAP32[$3683>>2]|0; + $3685 = $3653 ^ $3684; + $y = $3685; + $3686 = $y; + $3687 = $3686 << 8; + $3688 = $y; + $3689 = $3688 >>> 24; + $3690 = (($3687) + ($3689))|0; + $y = $3690; + $3691 = $y; + $3692 = $x; + $3693 = (($3692) + ($3691))|0; + $x = $3693; + $3694 = $x; + $3695 = $y; + $3696 = (($3695) + ($3694))|0; + $y = $3696; + $3697 = $x; + $3698 = $1; + $3699 = ((($3698)) + 4128|0); + $3700 = ((($3699)) + 16|0); + HEAP32[$3700>>2] = $3697; + $3701 = $y; + $3702 = $3701 << 9; + $3703 = $y; + $3704 = $3703 >>> 23; + $3705 = (($3702) + ($3704))|0; + $3706 = $1; + $3707 = ((($3706)) + 4128|0); + $3708 = ((($3707)) + 20|0); + HEAP32[$3708>>2] = $3705; + $3709 = $2; + $3710 = ((($3709)) + 24|0); + $3711 = HEAP8[$3710>>0]|0; + $3712 = $3711&255; + $3713 = 232 ^ $3712; + $3714 = (44992 + ($3713)|0); + $3715 = HEAP8[$3714>>0]|0; + $3716 = $3715&255; + $3717 = $2; + $3718 = ((($3717)) + 16|0); + $3719 = HEAP8[$3718>>0]|0; + $3720 = $3719&255; + $3721 = $3716 ^ $3720; + $3722 = (45248 + ($3721)|0); + $3723 = HEAP8[$3722>>0]|0; + $3724 = $3723&255; + $3725 = $2; + $3726 = ((($3725)) + 8|0); + $3727 = HEAP8[$3726>>0]|0; + $3728 = $3727&255; + $3729 = $3724 ^ $3728; + $3730 = (45248 + ($3729)|0); + $3731 = HEAP8[$3730>>0]|0; + $3732 = $3731&255; + $3733 = $2; + $3734 = HEAP8[$3733>>0]|0; + $3735 = $3734&255; + $3736 = $3732 ^ $3735; + $3737 = (8376 + ($3736<<2)|0); + $3738 = HEAP32[$3737>>2]|0; + $3739 = $2; + $3740 = ((($3739)) + 25|0); + $3741 = HEAP8[$3740>>0]|0; + $3742 = $3741&255; + $3743 = 209 ^ $3742; + $3744 = (44992 + ($3743)|0); + $3745 = HEAP8[$3744>>0]|0; + $3746 = $3745&255; + $3747 = $2; + $3748 = ((($3747)) + 17|0); + $3749 = HEAP8[$3748>>0]|0; + $3750 = $3749&255; + $3751 = $3746 ^ $3750; + $3752 = (44992 + ($3751)|0); + $3753 = HEAP8[$3752>>0]|0; + $3754 = $3753&255; + $3755 = $2; + $3756 = ((($3755)) + 9|0); + $3757 = HEAP8[$3756>>0]|0; + $3758 = $3757&255; + $3759 = $3754 ^ $3758; + $3760 = (45248 + ($3759)|0); + $3761 = HEAP8[$3760>>0]|0; + $3762 = $3761&255; + $3763 = $2; + $3764 = ((($3763)) + 1|0); + $3765 = HEAP8[$3764>>0]|0; + $3766 = $3765&255; + $3767 = $3762 ^ $3766; + $3768 = ((9400) + ($3767<<2)|0); + $3769 = HEAP32[$3768>>2]|0; + $3770 = $3738 ^ $3769; + $3771 = $2; + $3772 = ((($3771)) + 26|0); + $3773 = HEAP8[$3772>>0]|0; + $3774 = $3773&255; + $3775 = 209 ^ $3774; + $3776 = (45248 + ($3775)|0); + $3777 = HEAP8[$3776>>0]|0; + $3778 = $3777&255; + $3779 = $2; + $3780 = ((($3779)) + 18|0); + $3781 = HEAP8[$3780>>0]|0; + $3782 = $3781&255; + $3783 = $3778 ^ $3782; + $3784 = (45248 + ($3783)|0); + $3785 = HEAP8[$3784>>0]|0; + $3786 = $3785&255; + $3787 = $2; + $3788 = ((($3787)) + 10|0); + $3789 = HEAP8[$3788>>0]|0; + $3790 = $3789&255; + $3791 = $3786 ^ $3790; + $3792 = (44992 + ($3791)|0); + $3793 = HEAP8[$3792>>0]|0; + $3794 = $3793&255; + $3795 = $2; + $3796 = ((($3795)) + 2|0); + $3797 = HEAP8[$3796>>0]|0; + $3798 = $3797&255; + $3799 = $3794 ^ $3798; + $3800 = ((10424) + ($3799<<2)|0); + $3801 = HEAP32[$3800>>2]|0; + $3802 = $3770 ^ $3801; + $3803 = $2; + $3804 = ((($3803)) + 27|0); + $3805 = HEAP8[$3804>>0]|0; + $3806 = $3805&255; + $3807 = 232 ^ $3806; + $3808 = (45248 + ($3807)|0); + $3809 = HEAP8[$3808>>0]|0; + $3810 = $3809&255; + $3811 = $2; + $3812 = ((($3811)) + 19|0); + $3813 = HEAP8[$3812>>0]|0; + $3814 = $3813&255; + $3815 = $3810 ^ $3814; + $3816 = (44992 + ($3815)|0); + $3817 = HEAP8[$3816>>0]|0; + $3818 = $3817&255; + $3819 = $2; + $3820 = ((($3819)) + 11|0); + $3821 = HEAP8[$3820>>0]|0; + $3822 = $3821&255; + $3823 = $3818 ^ $3822; + $3824 = (44992 + ($3823)|0); + $3825 = HEAP8[$3824>>0]|0; + $3826 = $3825&255; + $3827 = $2; + $3828 = ((($3827)) + 3|0); + $3829 = HEAP8[$3828>>0]|0; + $3830 = $3829&255; + $3831 = $3826 ^ $3830; + $3832 = ((11448) + ($3831<<2)|0); + $3833 = HEAP32[$3832>>2]|0; + $3834 = $3802 ^ $3833; + $x = $3834; + $3835 = $2; + $3836 = ((($3835)) + 28|0); + $3837 = HEAP8[$3836>>0]|0; + $3838 = $3837&255; + $3839 = 75 ^ $3838; + $3840 = (44992 + ($3839)|0); + $3841 = HEAP8[$3840>>0]|0; + $3842 = $3841&255; + $3843 = $2; + $3844 = ((($3843)) + 20|0); + $3845 = HEAP8[$3844>>0]|0; + $3846 = $3845&255; + $3847 = $3842 ^ $3846; + $3848 = (45248 + ($3847)|0); + $3849 = HEAP8[$3848>>0]|0; + $3850 = $3849&255; + $3851 = $2; + $3852 = ((($3851)) + 12|0); + $3853 = HEAP8[$3852>>0]|0; + $3854 = $3853&255; + $3855 = $3850 ^ $3854; + $3856 = (45248 + ($3855)|0); + $3857 = HEAP8[$3856>>0]|0; + $3858 = $3857&255; + $3859 = $2; + $3860 = ((($3859)) + 4|0); + $3861 = HEAP8[$3860>>0]|0; + $3862 = $3861&255; + $3863 = $3858 ^ $3862; + $3864 = (8376 + ($3863<<2)|0); + $3865 = HEAP32[$3864>>2]|0; + $3866 = $2; + $3867 = ((($3866)) + 29|0); + $3868 = HEAP8[$3867>>0]|0; + $3869 = $3868&255; + $3870 = 56 ^ $3869; + $3871 = (44992 + ($3870)|0); + $3872 = HEAP8[$3871>>0]|0; + $3873 = $3872&255; + $3874 = $2; + $3875 = ((($3874)) + 21|0); + $3876 = HEAP8[$3875>>0]|0; + $3877 = $3876&255; + $3878 = $3873 ^ $3877; + $3879 = (44992 + ($3878)|0); + $3880 = HEAP8[$3879>>0]|0; + $3881 = $3880&255; + $3882 = $2; + $3883 = ((($3882)) + 13|0); + $3884 = HEAP8[$3883>>0]|0; + $3885 = $3884&255; + $3886 = $3881 ^ $3885; + $3887 = (45248 + ($3886)|0); + $3888 = HEAP8[$3887>>0]|0; + $3889 = $3888&255; + $3890 = $2; + $3891 = ((($3890)) + 5|0); + $3892 = HEAP8[$3891>>0]|0; + $3893 = $3892&255; + $3894 = $3889 ^ $3893; + $3895 = ((9400) + ($3894<<2)|0); + $3896 = HEAP32[$3895>>2]|0; + $3897 = $3865 ^ $3896; + $3898 = $2; + $3899 = ((($3898)) + 30|0); + $3900 = HEAP8[$3899>>0]|0; + $3901 = $3900&255; + $3902 = 56 ^ $3901; + $3903 = (45248 + ($3902)|0); + $3904 = HEAP8[$3903>>0]|0; + $3905 = $3904&255; + $3906 = $2; + $3907 = ((($3906)) + 22|0); + $3908 = HEAP8[$3907>>0]|0; + $3909 = $3908&255; + $3910 = $3905 ^ $3909; + $3911 = (45248 + ($3910)|0); + $3912 = HEAP8[$3911>>0]|0; + $3913 = $3912&255; + $3914 = $2; + $3915 = ((($3914)) + 14|0); + $3916 = HEAP8[$3915>>0]|0; + $3917 = $3916&255; + $3918 = $3913 ^ $3917; + $3919 = (44992 + ($3918)|0); + $3920 = HEAP8[$3919>>0]|0; + $3921 = $3920&255; + $3922 = $2; + $3923 = ((($3922)) + 6|0); + $3924 = HEAP8[$3923>>0]|0; + $3925 = $3924&255; + $3926 = $3921 ^ $3925; + $3927 = ((10424) + ($3926<<2)|0); + $3928 = HEAP32[$3927>>2]|0; + $3929 = $3897 ^ $3928; + $3930 = $2; + $3931 = ((($3930)) + 31|0); + $3932 = HEAP8[$3931>>0]|0; + $3933 = $3932&255; + $3934 = 75 ^ $3933; + $3935 = (45248 + ($3934)|0); + $3936 = HEAP8[$3935>>0]|0; + $3937 = $3936&255; + $3938 = $2; + $3939 = ((($3938)) + 23|0); + $3940 = HEAP8[$3939>>0]|0; + $3941 = $3940&255; + $3942 = $3937 ^ $3941; + $3943 = (44992 + ($3942)|0); + $3944 = HEAP8[$3943>>0]|0; + $3945 = $3944&255; + $3946 = $2; + $3947 = ((($3946)) + 15|0); + $3948 = HEAP8[$3947>>0]|0; + $3949 = $3948&255; + $3950 = $3945 ^ $3949; + $3951 = (44992 + ($3950)|0); + $3952 = HEAP8[$3951>>0]|0; + $3953 = $3952&255; + $3954 = $2; + $3955 = ((($3954)) + 7|0); + $3956 = HEAP8[$3955>>0]|0; + $3957 = $3956&255; + $3958 = $3953 ^ $3957; + $3959 = ((11448) + ($3958<<2)|0); + $3960 = HEAP32[$3959>>2]|0; + $3961 = $3929 ^ $3960; + $y = $3961; + $3962 = $y; + $3963 = $3962 << 8; + $3964 = $y; + $3965 = $3964 >>> 24; + $3966 = (($3963) + ($3965))|0; + $y = $3966; + $3967 = $y; + $3968 = $x; + $3969 = (($3968) + ($3967))|0; + $x = $3969; + $3970 = $x; + $3971 = $y; + $3972 = (($3971) + ($3970))|0; + $y = $3972; + $3973 = $x; + $3974 = $1; + $3975 = ((($3974)) + 4128|0); + $3976 = ((($3975)) + 24|0); + HEAP32[$3976>>2] = $3973; + $3977 = $y; + $3978 = $3977 << 9; + $3979 = $y; + $3980 = $3979 >>> 23; + $3981 = (($3978) + ($3980))|0; + $3982 = $1; + $3983 = ((($3982)) + 4128|0); + $3984 = ((($3983)) + 28|0); + HEAP32[$3984>>2] = $3981; + $3985 = $2; + $3986 = ((($3985)) + 24|0); + $3987 = HEAP8[$3986>>0]|0; + $3988 = $3987&255; + $3989 = 214 ^ $3988; + $3990 = (44992 + ($3989)|0); + $3991 = HEAP8[$3990>>0]|0; + $3992 = $3991&255; + $3993 = $2; + $3994 = ((($3993)) + 16|0); + $3995 = HEAP8[$3994>>0]|0; + $3996 = $3995&255; + $3997 = $3992 ^ $3996; + $3998 = (45248 + ($3997)|0); + $3999 = HEAP8[$3998>>0]|0; + $4000 = $3999&255; + $4001 = $2; + $4002 = ((($4001)) + 8|0); + $4003 = HEAP8[$4002>>0]|0; + $4004 = $4003&255; + $4005 = $4000 ^ $4004; + $4006 = (45248 + ($4005)|0); + $4007 = HEAP8[$4006>>0]|0; + $4008 = $4007&255; + $4009 = $2; + $4010 = HEAP8[$4009>>0]|0; + $4011 = $4010&255; + $4012 = $4008 ^ $4011; + $4013 = (8376 + ($4012<<2)|0); + $4014 = HEAP32[$4013>>2]|0; + $4015 = $2; + $4016 = ((($4015)) + 25|0); + $4017 = HEAP8[$4016>>0]|0; + $4018 = $4017&255; + $4019 = 13 ^ $4018; + $4020 = (44992 + ($4019)|0); + $4021 = HEAP8[$4020>>0]|0; + $4022 = $4021&255; + $4023 = $2; + $4024 = ((($4023)) + 17|0); + $4025 = HEAP8[$4024>>0]|0; + $4026 = $4025&255; + $4027 = $4022 ^ $4026; + $4028 = (44992 + ($4027)|0); + $4029 = HEAP8[$4028>>0]|0; + $4030 = $4029&255; + $4031 = $2; + $4032 = ((($4031)) + 9|0); + $4033 = HEAP8[$4032>>0]|0; + $4034 = $4033&255; + $4035 = $4030 ^ $4034; + $4036 = (45248 + ($4035)|0); + $4037 = HEAP8[$4036>>0]|0; + $4038 = $4037&255; + $4039 = $2; + $4040 = ((($4039)) + 1|0); + $4041 = HEAP8[$4040>>0]|0; + $4042 = $4041&255; + $4043 = $4038 ^ $4042; + $4044 = ((9400) + ($4043<<2)|0); + $4045 = HEAP32[$4044>>2]|0; + $4046 = $4014 ^ $4045; + $4047 = $2; + $4048 = ((($4047)) + 26|0); + $4049 = HEAP8[$4048>>0]|0; + $4050 = $4049&255; + $4051 = 13 ^ $4050; + $4052 = (45248 + ($4051)|0); + $4053 = HEAP8[$4052>>0]|0; + $4054 = $4053&255; + $4055 = $2; + $4056 = ((($4055)) + 18|0); + $4057 = HEAP8[$4056>>0]|0; + $4058 = $4057&255; + $4059 = $4054 ^ $4058; + $4060 = (45248 + ($4059)|0); + $4061 = HEAP8[$4060>>0]|0; + $4062 = $4061&255; + $4063 = $2; + $4064 = ((($4063)) + 10|0); + $4065 = HEAP8[$4064>>0]|0; + $4066 = $4065&255; + $4067 = $4062 ^ $4066; + $4068 = (44992 + ($4067)|0); + $4069 = HEAP8[$4068>>0]|0; + $4070 = $4069&255; + $4071 = $2; + $4072 = ((($4071)) + 2|0); + $4073 = HEAP8[$4072>>0]|0; + $4074 = $4073&255; + $4075 = $4070 ^ $4074; + $4076 = ((10424) + ($4075<<2)|0); + $4077 = HEAP32[$4076>>2]|0; + $4078 = $4046 ^ $4077; + $4079 = $2; + $4080 = ((($4079)) + 27|0); + $4081 = HEAP8[$4080>>0]|0; + $4082 = $4081&255; + $4083 = 214 ^ $4082; + $4084 = (45248 + ($4083)|0); + $4085 = HEAP8[$4084>>0]|0; + $4086 = $4085&255; + $4087 = $2; + $4088 = ((($4087)) + 19|0); + $4089 = HEAP8[$4088>>0]|0; + $4090 = $4089&255; + $4091 = $4086 ^ $4090; + $4092 = (44992 + ($4091)|0); + $4093 = HEAP8[$4092>>0]|0; + $4094 = $4093&255; + $4095 = $2; + $4096 = ((($4095)) + 11|0); + $4097 = HEAP8[$4096>>0]|0; + $4098 = $4097&255; + $4099 = $4094 ^ $4098; + $4100 = (44992 + ($4099)|0); + $4101 = HEAP8[$4100>>0]|0; + $4102 = $4101&255; + $4103 = $2; + $4104 = ((($4103)) + 3|0); + $4105 = HEAP8[$4104>>0]|0; + $4106 = $4105&255; + $4107 = $4102 ^ $4106; + $4108 = ((11448) + ($4107<<2)|0); + $4109 = HEAP32[$4108>>2]|0; + $4110 = $4078 ^ $4109; + $x = $4110; + $4111 = $2; + $4112 = ((($4111)) + 28|0); + $4113 = HEAP8[$4112>>0]|0; + $4114 = $4113&255; + $4115 = 50 ^ $4114; + $4116 = (44992 + ($4115)|0); + $4117 = HEAP8[$4116>>0]|0; + $4118 = $4117&255; + $4119 = $2; + $4120 = ((($4119)) + 20|0); + $4121 = HEAP8[$4120>>0]|0; + $4122 = $4121&255; + $4123 = $4118 ^ $4122; + $4124 = (45248 + ($4123)|0); + $4125 = HEAP8[$4124>>0]|0; + $4126 = $4125&255; + $4127 = $2; + $4128 = ((($4127)) + 12|0); + $4129 = HEAP8[$4128>>0]|0; + $4130 = $4129&255; + $4131 = $4126 ^ $4130; + $4132 = (45248 + ($4131)|0); + $4133 = HEAP8[$4132>>0]|0; + $4134 = $4133&255; + $4135 = $2; + $4136 = ((($4135)) + 4|0); + $4137 = HEAP8[$4136>>0]|0; + $4138 = $4137&255; + $4139 = $4134 ^ $4138; + $4140 = (8376 + ($4139<<2)|0); + $4141 = HEAP32[$4140>>2]|0; + $4142 = $2; + $4143 = ((($4142)) + 29|0); + $4144 = HEAP8[$4143>>0]|0; + $4145 = $4144&255; + $4146 = 198 ^ $4145; + $4147 = (44992 + ($4146)|0); + $4148 = HEAP8[$4147>>0]|0; + $4149 = $4148&255; + $4150 = $2; + $4151 = ((($4150)) + 21|0); + $4152 = HEAP8[$4151>>0]|0; + $4153 = $4152&255; + $4154 = $4149 ^ $4153; + $4155 = (44992 + ($4154)|0); + $4156 = HEAP8[$4155>>0]|0; + $4157 = $4156&255; + $4158 = $2; + $4159 = ((($4158)) + 13|0); + $4160 = HEAP8[$4159>>0]|0; + $4161 = $4160&255; + $4162 = $4157 ^ $4161; + $4163 = (45248 + ($4162)|0); + $4164 = HEAP8[$4163>>0]|0; + $4165 = $4164&255; + $4166 = $2; + $4167 = ((($4166)) + 5|0); + $4168 = HEAP8[$4167>>0]|0; + $4169 = $4168&255; + $4170 = $4165 ^ $4169; + $4171 = ((9400) + ($4170<<2)|0); + $4172 = HEAP32[$4171>>2]|0; + $4173 = $4141 ^ $4172; + $4174 = $2; + $4175 = ((($4174)) + 30|0); + $4176 = HEAP8[$4175>>0]|0; + $4177 = $4176&255; + $4178 = 198 ^ $4177; + $4179 = (45248 + ($4178)|0); + $4180 = HEAP8[$4179>>0]|0; + $4181 = $4180&255; + $4182 = $2; + $4183 = ((($4182)) + 22|0); + $4184 = HEAP8[$4183>>0]|0; + $4185 = $4184&255; + $4186 = $4181 ^ $4185; + $4187 = (45248 + ($4186)|0); + $4188 = HEAP8[$4187>>0]|0; + $4189 = $4188&255; + $4190 = $2; + $4191 = ((($4190)) + 14|0); + $4192 = HEAP8[$4191>>0]|0; + $4193 = $4192&255; + $4194 = $4189 ^ $4193; + $4195 = (44992 + ($4194)|0); + $4196 = HEAP8[$4195>>0]|0; + $4197 = $4196&255; + $4198 = $2; + $4199 = ((($4198)) + 6|0); + $4200 = HEAP8[$4199>>0]|0; + $4201 = $4200&255; + $4202 = $4197 ^ $4201; + $4203 = ((10424) + ($4202<<2)|0); + $4204 = HEAP32[$4203>>2]|0; + $4205 = $4173 ^ $4204; + $4206 = $2; + $4207 = ((($4206)) + 31|0); + $4208 = HEAP8[$4207>>0]|0; + $4209 = $4208&255; + $4210 = 50 ^ $4209; + $4211 = (45248 + ($4210)|0); + $4212 = HEAP8[$4211>>0]|0; + $4213 = $4212&255; + $4214 = $2; + $4215 = ((($4214)) + 23|0); + $4216 = HEAP8[$4215>>0]|0; + $4217 = $4216&255; + $4218 = $4213 ^ $4217; + $4219 = (44992 + ($4218)|0); + $4220 = HEAP8[$4219>>0]|0; + $4221 = $4220&255; + $4222 = $2; + $4223 = ((($4222)) + 15|0); + $4224 = HEAP8[$4223>>0]|0; + $4225 = $4224&255; + $4226 = $4221 ^ $4225; + $4227 = (44992 + ($4226)|0); + $4228 = HEAP8[$4227>>0]|0; + $4229 = $4228&255; + $4230 = $2; + $4231 = ((($4230)) + 7|0); + $4232 = HEAP8[$4231>>0]|0; + $4233 = $4232&255; + $4234 = $4229 ^ $4233; + $4235 = ((11448) + ($4234<<2)|0); + $4236 = HEAP32[$4235>>2]|0; + $4237 = $4205 ^ $4236; + $y = $4237; + $4238 = $y; + $4239 = $4238 << 8; + $4240 = $y; + $4241 = $4240 >>> 24; + $4242 = (($4239) + ($4241))|0; + $y = $4242; + $4243 = $y; + $4244 = $x; + $4245 = (($4244) + ($4243))|0; + $x = $4245; + $4246 = $x; + $4247 = $y; + $4248 = (($4247) + ($4246))|0; + $y = $4248; + $4249 = $x; + $4250 = $1; + $4251 = ((($4250)) + 4128|0); + $4252 = ((($4251)) + 32|0); + HEAP32[$4252>>2] = $4249; + $4253 = $y; + $4254 = $4253 << 9; + $4255 = $y; + $4256 = $4255 >>> 23; + $4257 = (($4254) + ($4256))|0; + $4258 = $1; + $4259 = ((($4258)) + 4128|0); + $4260 = ((($4259)) + 36|0); + HEAP32[$4260>>2] = $4257; + $4261 = $2; + $4262 = ((($4261)) + 24|0); + $4263 = HEAP8[$4262>>0]|0; + $4264 = $4263&255; + $4265 = 216 ^ $4264; + $4266 = (44992 + ($4265)|0); + $4267 = HEAP8[$4266>>0]|0; + $4268 = $4267&255; + $4269 = $2; + $4270 = ((($4269)) + 16|0); + $4271 = HEAP8[$4270>>0]|0; + $4272 = $4271&255; + $4273 = $4268 ^ $4272; + $4274 = (45248 + ($4273)|0); + $4275 = HEAP8[$4274>>0]|0; + $4276 = $4275&255; + $4277 = $2; + $4278 = ((($4277)) + 8|0); + $4279 = HEAP8[$4278>>0]|0; + $4280 = $4279&255; + $4281 = $4276 ^ $4280; + $4282 = (45248 + ($4281)|0); + $4283 = HEAP8[$4282>>0]|0; + $4284 = $4283&255; + $4285 = $2; + $4286 = HEAP8[$4285>>0]|0; + $4287 = $4286&255; + $4288 = $4284 ^ $4287; + $4289 = (8376 + ($4288<<2)|0); + $4290 = HEAP32[$4289>>2]|0; + $4291 = $2; + $4292 = ((($4291)) + 25|0); + $4293 = HEAP8[$4292>>0]|0; + $4294 = $4293&255; + $4295 = 53 ^ $4294; + $4296 = (44992 + ($4295)|0); + $4297 = HEAP8[$4296>>0]|0; + $4298 = $4297&255; + $4299 = $2; + $4300 = ((($4299)) + 17|0); + $4301 = HEAP8[$4300>>0]|0; + $4302 = $4301&255; + $4303 = $4298 ^ $4302; + $4304 = (44992 + ($4303)|0); + $4305 = HEAP8[$4304>>0]|0; + $4306 = $4305&255; + $4307 = $2; + $4308 = ((($4307)) + 9|0); + $4309 = HEAP8[$4308>>0]|0; + $4310 = $4309&255; + $4311 = $4306 ^ $4310; + $4312 = (45248 + ($4311)|0); + $4313 = HEAP8[$4312>>0]|0; + $4314 = $4313&255; + $4315 = $2; + $4316 = ((($4315)) + 1|0); + $4317 = HEAP8[$4316>>0]|0; + $4318 = $4317&255; + $4319 = $4314 ^ $4318; + $4320 = ((9400) + ($4319<<2)|0); + $4321 = HEAP32[$4320>>2]|0; + $4322 = $4290 ^ $4321; + $4323 = $2; + $4324 = ((($4323)) + 26|0); + $4325 = HEAP8[$4324>>0]|0; + $4326 = $4325&255; + $4327 = 53 ^ $4326; + $4328 = (45248 + ($4327)|0); + $4329 = HEAP8[$4328>>0]|0; + $4330 = $4329&255; + $4331 = $2; + $4332 = ((($4331)) + 18|0); + $4333 = HEAP8[$4332>>0]|0; + $4334 = $4333&255; + $4335 = $4330 ^ $4334; + $4336 = (45248 + ($4335)|0); + $4337 = HEAP8[$4336>>0]|0; + $4338 = $4337&255; + $4339 = $2; + $4340 = ((($4339)) + 10|0); + $4341 = HEAP8[$4340>>0]|0; + $4342 = $4341&255; + $4343 = $4338 ^ $4342; + $4344 = (44992 + ($4343)|0); + $4345 = HEAP8[$4344>>0]|0; + $4346 = $4345&255; + $4347 = $2; + $4348 = ((($4347)) + 2|0); + $4349 = HEAP8[$4348>>0]|0; + $4350 = $4349&255; + $4351 = $4346 ^ $4350; + $4352 = ((10424) + ($4351<<2)|0); + $4353 = HEAP32[$4352>>2]|0; + $4354 = $4322 ^ $4353; + $4355 = $2; + $4356 = ((($4355)) + 27|0); + $4357 = HEAP8[$4356>>0]|0; + $4358 = $4357&255; + $4359 = 216 ^ $4358; + $4360 = (45248 + ($4359)|0); + $4361 = HEAP8[$4360>>0]|0; + $4362 = $4361&255; + $4363 = $2; + $4364 = ((($4363)) + 19|0); + $4365 = HEAP8[$4364>>0]|0; + $4366 = $4365&255; + $4367 = $4362 ^ $4366; + $4368 = (44992 + ($4367)|0); + $4369 = HEAP8[$4368>>0]|0; + $4370 = $4369&255; + $4371 = $2; + $4372 = ((($4371)) + 11|0); + $4373 = HEAP8[$4372>>0]|0; + $4374 = $4373&255; + $4375 = $4370 ^ $4374; + $4376 = (44992 + ($4375)|0); + $4377 = HEAP8[$4376>>0]|0; + $4378 = $4377&255; + $4379 = $2; + $4380 = ((($4379)) + 3|0); + $4381 = HEAP8[$4380>>0]|0; + $4382 = $4381&255; + $4383 = $4378 ^ $4382; + $4384 = ((11448) + ($4383<<2)|0); + $4385 = HEAP32[$4384>>2]|0; + $4386 = $4354 ^ $4385; + $x = $4386; + $4387 = $2; + $4388 = ((($4387)) + 28|0); + $4389 = HEAP8[$4388>>0]|0; + $4390 = $4389&255; + $4391 = 253 ^ $4390; + $4392 = (44992 + ($4391)|0); + $4393 = HEAP8[$4392>>0]|0; + $4394 = $4393&255; + $4395 = $2; + $4396 = ((($4395)) + 20|0); + $4397 = HEAP8[$4396>>0]|0; + $4398 = $4397&255; + $4399 = $4394 ^ $4398; + $4400 = (45248 + ($4399)|0); + $4401 = HEAP8[$4400>>0]|0; + $4402 = $4401&255; + $4403 = $2; + $4404 = ((($4403)) + 12|0); + $4405 = HEAP8[$4404>>0]|0; + $4406 = $4405&255; + $4407 = $4402 ^ $4406; + $4408 = (45248 + ($4407)|0); + $4409 = HEAP8[$4408>>0]|0; + $4410 = $4409&255; + $4411 = $2; + $4412 = ((($4411)) + 4|0); + $4413 = HEAP8[$4412>>0]|0; + $4414 = $4413&255; + $4415 = $4410 ^ $4414; + $4416 = (8376 + ($4415<<2)|0); + $4417 = HEAP32[$4416>>2]|0; + $4418 = $2; + $4419 = ((($4418)) + 29|0); + $4420 = HEAP8[$4419>>0]|0; + $4421 = $4420&255; + $4422 = 152 ^ $4421; + $4423 = (44992 + ($4422)|0); + $4424 = HEAP8[$4423>>0]|0; + $4425 = $4424&255; + $4426 = $2; + $4427 = ((($4426)) + 21|0); + $4428 = HEAP8[$4427>>0]|0; + $4429 = $4428&255; + $4430 = $4425 ^ $4429; + $4431 = (44992 + ($4430)|0); + $4432 = HEAP8[$4431>>0]|0; + $4433 = $4432&255; + $4434 = $2; + $4435 = ((($4434)) + 13|0); + $4436 = HEAP8[$4435>>0]|0; + $4437 = $4436&255; + $4438 = $4433 ^ $4437; + $4439 = (45248 + ($4438)|0); + $4440 = HEAP8[$4439>>0]|0; + $4441 = $4440&255; + $4442 = $2; + $4443 = ((($4442)) + 5|0); + $4444 = HEAP8[$4443>>0]|0; + $4445 = $4444&255; + $4446 = $4441 ^ $4445; + $4447 = ((9400) + ($4446<<2)|0); + $4448 = HEAP32[$4447>>2]|0; + $4449 = $4417 ^ $4448; + $4450 = $2; + $4451 = ((($4450)) + 30|0); + $4452 = HEAP8[$4451>>0]|0; + $4453 = $4452&255; + $4454 = 152 ^ $4453; + $4455 = (45248 + ($4454)|0); + $4456 = HEAP8[$4455>>0]|0; + $4457 = $4456&255; + $4458 = $2; + $4459 = ((($4458)) + 22|0); + $4460 = HEAP8[$4459>>0]|0; + $4461 = $4460&255; + $4462 = $4457 ^ $4461; + $4463 = (45248 + ($4462)|0); + $4464 = HEAP8[$4463>>0]|0; + $4465 = $4464&255; + $4466 = $2; + $4467 = ((($4466)) + 14|0); + $4468 = HEAP8[$4467>>0]|0; + $4469 = $4468&255; + $4470 = $4465 ^ $4469; + $4471 = (44992 + ($4470)|0); + $4472 = HEAP8[$4471>>0]|0; + $4473 = $4472&255; + $4474 = $2; + $4475 = ((($4474)) + 6|0); + $4476 = HEAP8[$4475>>0]|0; + $4477 = $4476&255; + $4478 = $4473 ^ $4477; + $4479 = ((10424) + ($4478<<2)|0); + $4480 = HEAP32[$4479>>2]|0; + $4481 = $4449 ^ $4480; + $4482 = $2; + $4483 = ((($4482)) + 31|0); + $4484 = HEAP8[$4483>>0]|0; + $4485 = $4484&255; + $4486 = 253 ^ $4485; + $4487 = (45248 + ($4486)|0); + $4488 = HEAP8[$4487>>0]|0; + $4489 = $4488&255; + $4490 = $2; + $4491 = ((($4490)) + 23|0); + $4492 = HEAP8[$4491>>0]|0; + $4493 = $4492&255; + $4494 = $4489 ^ $4493; + $4495 = (44992 + ($4494)|0); + $4496 = HEAP8[$4495>>0]|0; + $4497 = $4496&255; + $4498 = $2; + $4499 = ((($4498)) + 15|0); + $4500 = HEAP8[$4499>>0]|0; + $4501 = $4500&255; + $4502 = $4497 ^ $4501; + $4503 = (44992 + ($4502)|0); + $4504 = HEAP8[$4503>>0]|0; + $4505 = $4504&255; + $4506 = $2; + $4507 = ((($4506)) + 7|0); + $4508 = HEAP8[$4507>>0]|0; + $4509 = $4508&255; + $4510 = $4505 ^ $4509; + $4511 = ((11448) + ($4510<<2)|0); + $4512 = HEAP32[$4511>>2]|0; + $4513 = $4481 ^ $4512; + $y = $4513; + $4514 = $y; + $4515 = $4514 << 8; + $4516 = $y; + $4517 = $4516 >>> 24; + $4518 = (($4515) + ($4517))|0; + $y = $4518; + $4519 = $y; + $4520 = $x; + $4521 = (($4520) + ($4519))|0; + $x = $4521; + $4522 = $x; + $4523 = $y; + $4524 = (($4523) + ($4522))|0; + $y = $4524; + $4525 = $x; + $4526 = $1; + $4527 = ((($4526)) + 4128|0); + $4528 = ((($4527)) + 40|0); + HEAP32[$4528>>2] = $4525; + $4529 = $y; + $4530 = $4529 << 9; + $4531 = $y; + $4532 = $4531 >>> 23; + $4533 = (($4530) + ($4532))|0; + $4534 = $1; + $4535 = ((($4534)) + 4128|0); + $4536 = ((($4535)) + 44|0); + HEAP32[$4536>>2] = $4533; + $4537 = $2; + $4538 = ((($4537)) + 24|0); + $4539 = HEAP8[$4538>>0]|0; + $4540 = $4539&255; + $4541 = 55 ^ $4540; + $4542 = (44992 + ($4541)|0); + $4543 = HEAP8[$4542>>0]|0; + $4544 = $4543&255; + $4545 = $2; + $4546 = ((($4545)) + 16|0); + $4547 = HEAP8[$4546>>0]|0; + $4548 = $4547&255; + $4549 = $4544 ^ $4548; + $4550 = (45248 + ($4549)|0); + $4551 = HEAP8[$4550>>0]|0; + $4552 = $4551&255; + $4553 = $2; + $4554 = ((($4553)) + 8|0); + $4555 = HEAP8[$4554>>0]|0; + $4556 = $4555&255; + $4557 = $4552 ^ $4556; + $4558 = (45248 + ($4557)|0); + $4559 = HEAP8[$4558>>0]|0; + $4560 = $4559&255; + $4561 = $2; + $4562 = HEAP8[$4561>>0]|0; + $4563 = $4562&255; + $4564 = $4560 ^ $4563; + $4565 = (8376 + ($4564<<2)|0); + $4566 = HEAP32[$4565>>2]|0; + $4567 = $2; + $4568 = ((($4567)) + 25|0); + $4569 = HEAP8[$4568>>0]|0; + $4570 = $4569&255; + $4571 = 24 ^ $4570; + $4572 = (44992 + ($4571)|0); + $4573 = HEAP8[$4572>>0]|0; + $4574 = $4573&255; + $4575 = $2; + $4576 = ((($4575)) + 17|0); + $4577 = HEAP8[$4576>>0]|0; + $4578 = $4577&255; + $4579 = $4574 ^ $4578; + $4580 = (44992 + ($4579)|0); + $4581 = HEAP8[$4580>>0]|0; + $4582 = $4581&255; + $4583 = $2; + $4584 = ((($4583)) + 9|0); + $4585 = HEAP8[$4584>>0]|0; + $4586 = $4585&255; + $4587 = $4582 ^ $4586; + $4588 = (45248 + ($4587)|0); + $4589 = HEAP8[$4588>>0]|0; + $4590 = $4589&255; + $4591 = $2; + $4592 = ((($4591)) + 1|0); + $4593 = HEAP8[$4592>>0]|0; + $4594 = $4593&255; + $4595 = $4590 ^ $4594; + $4596 = ((9400) + ($4595<<2)|0); + $4597 = HEAP32[$4596>>2]|0; + $4598 = $4566 ^ $4597; + $4599 = $2; + $4600 = ((($4599)) + 26|0); + $4601 = HEAP8[$4600>>0]|0; + $4602 = $4601&255; + $4603 = 24 ^ $4602; + $4604 = (45248 + ($4603)|0); + $4605 = HEAP8[$4604>>0]|0; + $4606 = $4605&255; + $4607 = $2; + $4608 = ((($4607)) + 18|0); + $4609 = HEAP8[$4608>>0]|0; + $4610 = $4609&255; + $4611 = $4606 ^ $4610; + $4612 = (45248 + ($4611)|0); + $4613 = HEAP8[$4612>>0]|0; + $4614 = $4613&255; + $4615 = $2; + $4616 = ((($4615)) + 10|0); + $4617 = HEAP8[$4616>>0]|0; + $4618 = $4617&255; + $4619 = $4614 ^ $4618; + $4620 = (44992 + ($4619)|0); + $4621 = HEAP8[$4620>>0]|0; + $4622 = $4621&255; + $4623 = $2; + $4624 = ((($4623)) + 2|0); + $4625 = HEAP8[$4624>>0]|0; + $4626 = $4625&255; + $4627 = $4622 ^ $4626; + $4628 = ((10424) + ($4627<<2)|0); + $4629 = HEAP32[$4628>>2]|0; + $4630 = $4598 ^ $4629; + $4631 = $2; + $4632 = ((($4631)) + 27|0); + $4633 = HEAP8[$4632>>0]|0; + $4634 = $4633&255; + $4635 = 55 ^ $4634; + $4636 = (45248 + ($4635)|0); + $4637 = HEAP8[$4636>>0]|0; + $4638 = $4637&255; + $4639 = $2; + $4640 = ((($4639)) + 19|0); + $4641 = HEAP8[$4640>>0]|0; + $4642 = $4641&255; + $4643 = $4638 ^ $4642; + $4644 = (44992 + ($4643)|0); + $4645 = HEAP8[$4644>>0]|0; + $4646 = $4645&255; + $4647 = $2; + $4648 = ((($4647)) + 11|0); + $4649 = HEAP8[$4648>>0]|0; + $4650 = $4649&255; + $4651 = $4646 ^ $4650; + $4652 = (44992 + ($4651)|0); + $4653 = HEAP8[$4652>>0]|0; + $4654 = $4653&255; + $4655 = $2; + $4656 = ((($4655)) + 3|0); + $4657 = HEAP8[$4656>>0]|0; + $4658 = $4657&255; + $4659 = $4654 ^ $4658; + $4660 = ((11448) + ($4659<<2)|0); + $4661 = HEAP32[$4660>>2]|0; + $4662 = $4630 ^ $4661; + $x = $4662; + $4663 = $2; + $4664 = ((($4663)) + 28|0); + $4665 = HEAP8[$4664>>0]|0; + $4666 = $4665&255; + $4667 = 113 ^ $4666; + $4668 = (44992 + ($4667)|0); + $4669 = HEAP8[$4668>>0]|0; + $4670 = $4669&255; + $4671 = $2; + $4672 = ((($4671)) + 20|0); + $4673 = HEAP8[$4672>>0]|0; + $4674 = $4673&255; + $4675 = $4670 ^ $4674; + $4676 = (45248 + ($4675)|0); + $4677 = HEAP8[$4676>>0]|0; + $4678 = $4677&255; + $4679 = $2; + $4680 = ((($4679)) + 12|0); + $4681 = HEAP8[$4680>>0]|0; + $4682 = $4681&255; + $4683 = $4678 ^ $4682; + $4684 = (45248 + ($4683)|0); + $4685 = HEAP8[$4684>>0]|0; + $4686 = $4685&255; + $4687 = $2; + $4688 = ((($4687)) + 4|0); + $4689 = HEAP8[$4688>>0]|0; + $4690 = $4689&255; + $4691 = $4686 ^ $4690; + $4692 = (8376 + ($4691<<2)|0); + $4693 = HEAP32[$4692>>2]|0; + $4694 = $2; + $4695 = ((($4694)) + 29|0); + $4696 = HEAP8[$4695>>0]|0; + $4697 = $4696&255; + $4698 = 247 ^ $4697; + $4699 = (44992 + ($4698)|0); + $4700 = HEAP8[$4699>>0]|0; + $4701 = $4700&255; + $4702 = $2; + $4703 = ((($4702)) + 21|0); + $4704 = HEAP8[$4703>>0]|0; + $4705 = $4704&255; + $4706 = $4701 ^ $4705; + $4707 = (44992 + ($4706)|0); + $4708 = HEAP8[$4707>>0]|0; + $4709 = $4708&255; + $4710 = $2; + $4711 = ((($4710)) + 13|0); + $4712 = HEAP8[$4711>>0]|0; + $4713 = $4712&255; + $4714 = $4709 ^ $4713; + $4715 = (45248 + ($4714)|0); + $4716 = HEAP8[$4715>>0]|0; + $4717 = $4716&255; + $4718 = $2; + $4719 = ((($4718)) + 5|0); + $4720 = HEAP8[$4719>>0]|0; + $4721 = $4720&255; + $4722 = $4717 ^ $4721; + $4723 = ((9400) + ($4722<<2)|0); + $4724 = HEAP32[$4723>>2]|0; + $4725 = $4693 ^ $4724; + $4726 = $2; + $4727 = ((($4726)) + 30|0); + $4728 = HEAP8[$4727>>0]|0; + $4729 = $4728&255; + $4730 = 247 ^ $4729; + $4731 = (45248 + ($4730)|0); + $4732 = HEAP8[$4731>>0]|0; + $4733 = $4732&255; + $4734 = $2; + $4735 = ((($4734)) + 22|0); + $4736 = HEAP8[$4735>>0]|0; + $4737 = $4736&255; + $4738 = $4733 ^ $4737; + $4739 = (45248 + ($4738)|0); + $4740 = HEAP8[$4739>>0]|0; + $4741 = $4740&255; + $4742 = $2; + $4743 = ((($4742)) + 14|0); + $4744 = HEAP8[$4743>>0]|0; + $4745 = $4744&255; + $4746 = $4741 ^ $4745; + $4747 = (44992 + ($4746)|0); + $4748 = HEAP8[$4747>>0]|0; + $4749 = $4748&255; + $4750 = $2; + $4751 = ((($4750)) + 6|0); + $4752 = HEAP8[$4751>>0]|0; + $4753 = $4752&255; + $4754 = $4749 ^ $4753; + $4755 = ((10424) + ($4754<<2)|0); + $4756 = HEAP32[$4755>>2]|0; + $4757 = $4725 ^ $4756; + $4758 = $2; + $4759 = ((($4758)) + 31|0); + $4760 = HEAP8[$4759>>0]|0; + $4761 = $4760&255; + $4762 = 113 ^ $4761; + $4763 = (45248 + ($4762)|0); + $4764 = HEAP8[$4763>>0]|0; + $4765 = $4764&255; + $4766 = $2; + $4767 = ((($4766)) + 23|0); + $4768 = HEAP8[$4767>>0]|0; + $4769 = $4768&255; + $4770 = $4765 ^ $4769; + $4771 = (44992 + ($4770)|0); + $4772 = HEAP8[$4771>>0]|0; + $4773 = $4772&255; + $4774 = $2; + $4775 = ((($4774)) + 15|0); + $4776 = HEAP8[$4775>>0]|0; + $4777 = $4776&255; + $4778 = $4773 ^ $4777; + $4779 = (44992 + ($4778)|0); + $4780 = HEAP8[$4779>>0]|0; + $4781 = $4780&255; + $4782 = $2; + $4783 = ((($4782)) + 7|0); + $4784 = HEAP8[$4783>>0]|0; + $4785 = $4784&255; + $4786 = $4781 ^ $4785; + $4787 = ((11448) + ($4786<<2)|0); + $4788 = HEAP32[$4787>>2]|0; + $4789 = $4757 ^ $4788; + $y = $4789; + $4790 = $y; + $4791 = $4790 << 8; + $4792 = $y; + $4793 = $4792 >>> 24; + $4794 = (($4791) + ($4793))|0; + $y = $4794; + $4795 = $y; + $4796 = $x; + $4797 = (($4796) + ($4795))|0; + $x = $4797; + $4798 = $x; + $4799 = $y; + $4800 = (($4799) + ($4798))|0; + $y = $4800; + $4801 = $x; + $4802 = $1; + $4803 = ((($4802)) + 4128|0); + $4804 = ((($4803)) + 48|0); + HEAP32[$4804>>2] = $4801; + $4805 = $y; + $4806 = $4805 << 9; + $4807 = $y; + $4808 = $4807 >>> 23; + $4809 = (($4806) + ($4808))|0; + $4810 = $1; + $4811 = ((($4810)) + 4128|0); + $4812 = ((($4811)) + 52|0); + HEAP32[$4812>>2] = $4809; + $4813 = $2; + $4814 = ((($4813)) + 24|0); + $4815 = HEAP8[$4814>>0]|0; + $4816 = $4815&255; + $4817 = 241 ^ $4816; + $4818 = (44992 + ($4817)|0); + $4819 = HEAP8[$4818>>0]|0; + $4820 = $4819&255; + $4821 = $2; + $4822 = ((($4821)) + 16|0); + $4823 = HEAP8[$4822>>0]|0; + $4824 = $4823&255; + $4825 = $4820 ^ $4824; + $4826 = (45248 + ($4825)|0); + $4827 = HEAP8[$4826>>0]|0; + $4828 = $4827&255; + $4829 = $2; + $4830 = ((($4829)) + 8|0); + $4831 = HEAP8[$4830>>0]|0; + $4832 = $4831&255; + $4833 = $4828 ^ $4832; + $4834 = (45248 + ($4833)|0); + $4835 = HEAP8[$4834>>0]|0; + $4836 = $4835&255; + $4837 = $2; + $4838 = HEAP8[$4837>>0]|0; + $4839 = $4838&255; + $4840 = $4836 ^ $4839; + $4841 = (8376 + ($4840<<2)|0); + $4842 = HEAP32[$4841>>2]|0; + $4843 = $2; + $4844 = ((($4843)) + 25|0); + $4845 = HEAP8[$4844>>0]|0; + $4846 = $4845&255; + $4847 = 236 ^ $4846; + $4848 = (44992 + ($4847)|0); + $4849 = HEAP8[$4848>>0]|0; + $4850 = $4849&255; + $4851 = $2; + $4852 = ((($4851)) + 17|0); + $4853 = HEAP8[$4852>>0]|0; + $4854 = $4853&255; + $4855 = $4850 ^ $4854; + $4856 = (44992 + ($4855)|0); + $4857 = HEAP8[$4856>>0]|0; + $4858 = $4857&255; + $4859 = $2; + $4860 = ((($4859)) + 9|0); + $4861 = HEAP8[$4860>>0]|0; + $4862 = $4861&255; + $4863 = $4858 ^ $4862; + $4864 = (45248 + ($4863)|0); + $4865 = HEAP8[$4864>>0]|0; + $4866 = $4865&255; + $4867 = $2; + $4868 = ((($4867)) + 1|0); + $4869 = HEAP8[$4868>>0]|0; + $4870 = $4869&255; + $4871 = $4866 ^ $4870; + $4872 = ((9400) + ($4871<<2)|0); + $4873 = HEAP32[$4872>>2]|0; + $4874 = $4842 ^ $4873; + $4875 = $2; + $4876 = ((($4875)) + 26|0); + $4877 = HEAP8[$4876>>0]|0; + $4878 = $4877&255; + $4879 = 236 ^ $4878; + $4880 = (45248 + ($4879)|0); + $4881 = HEAP8[$4880>>0]|0; + $4882 = $4881&255; + $4883 = $2; + $4884 = ((($4883)) + 18|0); + $4885 = HEAP8[$4884>>0]|0; + $4886 = $4885&255; + $4887 = $4882 ^ $4886; + $4888 = (45248 + ($4887)|0); + $4889 = HEAP8[$4888>>0]|0; + $4890 = $4889&255; + $4891 = $2; + $4892 = ((($4891)) + 10|0); + $4893 = HEAP8[$4892>>0]|0; + $4894 = $4893&255; + $4895 = $4890 ^ $4894; + $4896 = (44992 + ($4895)|0); + $4897 = HEAP8[$4896>>0]|0; + $4898 = $4897&255; + $4899 = $2; + $4900 = ((($4899)) + 2|0); + $4901 = HEAP8[$4900>>0]|0; + $4902 = $4901&255; + $4903 = $4898 ^ $4902; + $4904 = ((10424) + ($4903<<2)|0); + $4905 = HEAP32[$4904>>2]|0; + $4906 = $4874 ^ $4905; + $4907 = $2; + $4908 = ((($4907)) + 27|0); + $4909 = HEAP8[$4908>>0]|0; + $4910 = $4909&255; + $4911 = 241 ^ $4910; + $4912 = (45248 + ($4911)|0); + $4913 = HEAP8[$4912>>0]|0; + $4914 = $4913&255; + $4915 = $2; + $4916 = ((($4915)) + 19|0); + $4917 = HEAP8[$4916>>0]|0; + $4918 = $4917&255; + $4919 = $4914 ^ $4918; + $4920 = (44992 + ($4919)|0); + $4921 = HEAP8[$4920>>0]|0; + $4922 = $4921&255; + $4923 = $2; + $4924 = ((($4923)) + 11|0); + $4925 = HEAP8[$4924>>0]|0; + $4926 = $4925&255; + $4927 = $4922 ^ $4926; + $4928 = (44992 + ($4927)|0); + $4929 = HEAP8[$4928>>0]|0; + $4930 = $4929&255; + $4931 = $2; + $4932 = ((($4931)) + 3|0); + $4933 = HEAP8[$4932>>0]|0; + $4934 = $4933&255; + $4935 = $4930 ^ $4934; + $4936 = ((11448) + ($4935<<2)|0); + $4937 = HEAP32[$4936>>2]|0; + $4938 = $4906 ^ $4937; + $x = $4938; + $4939 = $2; + $4940 = ((($4939)) + 28|0); + $4941 = HEAP8[$4940>>0]|0; + $4942 = $4941&255; + $4943 = 225 ^ $4942; + $4944 = (44992 + ($4943)|0); + $4945 = HEAP8[$4944>>0]|0; + $4946 = $4945&255; + $4947 = $2; + $4948 = ((($4947)) + 20|0); + $4949 = HEAP8[$4948>>0]|0; + $4950 = $4949&255; + $4951 = $4946 ^ $4950; + $4952 = (45248 + ($4951)|0); + $4953 = HEAP8[$4952>>0]|0; + $4954 = $4953&255; + $4955 = $2; + $4956 = ((($4955)) + 12|0); + $4957 = HEAP8[$4956>>0]|0; + $4958 = $4957&255; + $4959 = $4954 ^ $4958; + $4960 = (45248 + ($4959)|0); + $4961 = HEAP8[$4960>>0]|0; + $4962 = $4961&255; + $4963 = $2; + $4964 = ((($4963)) + 4|0); + $4965 = HEAP8[$4964>>0]|0; + $4966 = $4965&255; + $4967 = $4962 ^ $4966; + $4968 = (8376 + ($4967<<2)|0); + $4969 = HEAP32[$4968>>2]|0; + $4970 = $2; + $4971 = ((($4970)) + 29|0); + $4972 = HEAP8[$4971>>0]|0; + $4973 = $4972&255; + $4974 = 108 ^ $4973; + $4975 = (44992 + ($4974)|0); + $4976 = HEAP8[$4975>>0]|0; + $4977 = $4976&255; + $4978 = $2; + $4979 = ((($4978)) + 21|0); + $4980 = HEAP8[$4979>>0]|0; + $4981 = $4980&255; + $4982 = $4977 ^ $4981; + $4983 = (44992 + ($4982)|0); + $4984 = HEAP8[$4983>>0]|0; + $4985 = $4984&255; + $4986 = $2; + $4987 = ((($4986)) + 13|0); + $4988 = HEAP8[$4987>>0]|0; + $4989 = $4988&255; + $4990 = $4985 ^ $4989; + $4991 = (45248 + ($4990)|0); + $4992 = HEAP8[$4991>>0]|0; + $4993 = $4992&255; + $4994 = $2; + $4995 = ((($4994)) + 5|0); + $4996 = HEAP8[$4995>>0]|0; + $4997 = $4996&255; + $4998 = $4993 ^ $4997; + $4999 = ((9400) + ($4998<<2)|0); + $5000 = HEAP32[$4999>>2]|0; + $5001 = $4969 ^ $5000; + $5002 = $2; + $5003 = ((($5002)) + 30|0); + $5004 = HEAP8[$5003>>0]|0; + $5005 = $5004&255; + $5006 = 108 ^ $5005; + $5007 = (45248 + ($5006)|0); + $5008 = HEAP8[$5007>>0]|0; + $5009 = $5008&255; + $5010 = $2; + $5011 = ((($5010)) + 22|0); + $5012 = HEAP8[$5011>>0]|0; + $5013 = $5012&255; + $5014 = $5009 ^ $5013; + $5015 = (45248 + ($5014)|0); + $5016 = HEAP8[$5015>>0]|0; + $5017 = $5016&255; + $5018 = $2; + $5019 = ((($5018)) + 14|0); + $5020 = HEAP8[$5019>>0]|0; + $5021 = $5020&255; + $5022 = $5017 ^ $5021; + $5023 = (44992 + ($5022)|0); + $5024 = HEAP8[$5023>>0]|0; + $5025 = $5024&255; + $5026 = $2; + $5027 = ((($5026)) + 6|0); + $5028 = HEAP8[$5027>>0]|0; + $5029 = $5028&255; + $5030 = $5025 ^ $5029; + $5031 = ((10424) + ($5030<<2)|0); + $5032 = HEAP32[$5031>>2]|0; + $5033 = $5001 ^ $5032; + $5034 = $2; + $5035 = ((($5034)) + 31|0); + $5036 = HEAP8[$5035>>0]|0; + $5037 = $5036&255; + $5038 = 225 ^ $5037; + $5039 = (45248 + ($5038)|0); + $5040 = HEAP8[$5039>>0]|0; + $5041 = $5040&255; + $5042 = $2; + $5043 = ((($5042)) + 23|0); + $5044 = HEAP8[$5043>>0]|0; + $5045 = $5044&255; + $5046 = $5041 ^ $5045; + $5047 = (44992 + ($5046)|0); + $5048 = HEAP8[$5047>>0]|0; + $5049 = $5048&255; + $5050 = $2; + $5051 = ((($5050)) + 15|0); + $5052 = HEAP8[$5051>>0]|0; + $5053 = $5052&255; + $5054 = $5049 ^ $5053; + $5055 = (44992 + ($5054)|0); + $5056 = HEAP8[$5055>>0]|0; + $5057 = $5056&255; + $5058 = $2; + $5059 = ((($5058)) + 7|0); + $5060 = HEAP8[$5059>>0]|0; + $5061 = $5060&255; + $5062 = $5057 ^ $5061; + $5063 = ((11448) + ($5062<<2)|0); + $5064 = HEAP32[$5063>>2]|0; + $5065 = $5033 ^ $5064; + $y = $5065; + $5066 = $y; + $5067 = $5066 << 8; + $5068 = $y; + $5069 = $5068 >>> 24; + $5070 = (($5067) + ($5069))|0; + $y = $5070; + $5071 = $y; + $5072 = $x; + $5073 = (($5072) + ($5071))|0; + $x = $5073; + $5074 = $x; + $5075 = $y; + $5076 = (($5075) + ($5074))|0; + $y = $5076; + $5077 = $x; + $5078 = $1; + $5079 = ((($5078)) + 4128|0); + $5080 = ((($5079)) + 56|0); + HEAP32[$5080>>2] = $5077; + $5081 = $y; + $5082 = $5081 << 9; + $5083 = $y; + $5084 = $5083 >>> 23; + $5085 = (($5082) + ($5084))|0; + $5086 = $1; + $5087 = ((($5086)) + 4128|0); + $5088 = ((($5087)) + 60|0); + HEAP32[$5088>>2] = $5085; + $5089 = $2; + $5090 = ((($5089)) + 24|0); + $5091 = HEAP8[$5090>>0]|0; + $5092 = $5091&255; + $5093 = 48 ^ $5092; + $5094 = (44992 + ($5093)|0); + $5095 = HEAP8[$5094>>0]|0; + $5096 = $5095&255; + $5097 = $2; + $5098 = ((($5097)) + 16|0); + $5099 = HEAP8[$5098>>0]|0; + $5100 = $5099&255; + $5101 = $5096 ^ $5100; + $5102 = (45248 + ($5101)|0); + $5103 = HEAP8[$5102>>0]|0; + $5104 = $5103&255; + $5105 = $2; + $5106 = ((($5105)) + 8|0); + $5107 = HEAP8[$5106>>0]|0; + $5108 = $5107&255; + $5109 = $5104 ^ $5108; + $5110 = (45248 + ($5109)|0); + $5111 = HEAP8[$5110>>0]|0; + $5112 = $5111&255; + $5113 = $2; + $5114 = HEAP8[$5113>>0]|0; + $5115 = $5114&255; + $5116 = $5112 ^ $5115; + $5117 = (8376 + ($5116<<2)|0); + $5118 = HEAP32[$5117>>2]|0; + $5119 = $2; + $5120 = ((($5119)) + 25|0); + $5121 = HEAP8[$5120>>0]|0; + $5122 = $5121&255; + $5123 = 67 ^ $5122; + $5124 = (44992 + ($5123)|0); + $5125 = HEAP8[$5124>>0]|0; + $5126 = $5125&255; + $5127 = $2; + $5128 = ((($5127)) + 17|0); + $5129 = HEAP8[$5128>>0]|0; + $5130 = $5129&255; + $5131 = $5126 ^ $5130; + $5132 = (44992 + ($5131)|0); + $5133 = HEAP8[$5132>>0]|0; + $5134 = $5133&255; + $5135 = $2; + $5136 = ((($5135)) + 9|0); + $5137 = HEAP8[$5136>>0]|0; + $5138 = $5137&255; + $5139 = $5134 ^ $5138; + $5140 = (45248 + ($5139)|0); + $5141 = HEAP8[$5140>>0]|0; + $5142 = $5141&255; + $5143 = $2; + $5144 = ((($5143)) + 1|0); + $5145 = HEAP8[$5144>>0]|0; + $5146 = $5145&255; + $5147 = $5142 ^ $5146; + $5148 = ((9400) + ($5147<<2)|0); + $5149 = HEAP32[$5148>>2]|0; + $5150 = $5118 ^ $5149; + $5151 = $2; + $5152 = ((($5151)) + 26|0); + $5153 = HEAP8[$5152>>0]|0; + $5154 = $5153&255; + $5155 = 67 ^ $5154; + $5156 = (45248 + ($5155)|0); + $5157 = HEAP8[$5156>>0]|0; + $5158 = $5157&255; + $5159 = $2; + $5160 = ((($5159)) + 18|0); + $5161 = HEAP8[$5160>>0]|0; + $5162 = $5161&255; + $5163 = $5158 ^ $5162; + $5164 = (45248 + ($5163)|0); + $5165 = HEAP8[$5164>>0]|0; + $5166 = $5165&255; + $5167 = $2; + $5168 = ((($5167)) + 10|0); + $5169 = HEAP8[$5168>>0]|0; + $5170 = $5169&255; + $5171 = $5166 ^ $5170; + $5172 = (44992 + ($5171)|0); + $5173 = HEAP8[$5172>>0]|0; + $5174 = $5173&255; + $5175 = $2; + $5176 = ((($5175)) + 2|0); + $5177 = HEAP8[$5176>>0]|0; + $5178 = $5177&255; + $5179 = $5174 ^ $5178; + $5180 = ((10424) + ($5179<<2)|0); + $5181 = HEAP32[$5180>>2]|0; + $5182 = $5150 ^ $5181; + $5183 = $2; + $5184 = ((($5183)) + 27|0); + $5185 = HEAP8[$5184>>0]|0; + $5186 = $5185&255; + $5187 = 48 ^ $5186; + $5188 = (45248 + ($5187)|0); + $5189 = HEAP8[$5188>>0]|0; + $5190 = $5189&255; + $5191 = $2; + $5192 = ((($5191)) + 19|0); + $5193 = HEAP8[$5192>>0]|0; + $5194 = $5193&255; + $5195 = $5190 ^ $5194; + $5196 = (44992 + ($5195)|0); + $5197 = HEAP8[$5196>>0]|0; + $5198 = $5197&255; + $5199 = $2; + $5200 = ((($5199)) + 11|0); + $5201 = HEAP8[$5200>>0]|0; + $5202 = $5201&255; + $5203 = $5198 ^ $5202; + $5204 = (44992 + ($5203)|0); + $5205 = HEAP8[$5204>>0]|0; + $5206 = $5205&255; + $5207 = $2; + $5208 = ((($5207)) + 3|0); + $5209 = HEAP8[$5208>>0]|0; + $5210 = $5209&255; + $5211 = $5206 ^ $5210; + $5212 = ((11448) + ($5211<<2)|0); + $5213 = HEAP32[$5212>>2]|0; + $5214 = $5182 ^ $5213; + $x = $5214; + $5215 = $2; + $5216 = ((($5215)) + 28|0); + $5217 = HEAP8[$5216>>0]|0; + $5218 = $5217&255; + $5219 = 15 ^ $5218; + $5220 = (44992 + ($5219)|0); + $5221 = HEAP8[$5220>>0]|0; + $5222 = $5221&255; + $5223 = $2; + $5224 = ((($5223)) + 20|0); + $5225 = HEAP8[$5224>>0]|0; + $5226 = $5225&255; + $5227 = $5222 ^ $5226; + $5228 = (45248 + ($5227)|0); + $5229 = HEAP8[$5228>>0]|0; + $5230 = $5229&255; + $5231 = $2; + $5232 = ((($5231)) + 12|0); + $5233 = HEAP8[$5232>>0]|0; + $5234 = $5233&255; + $5235 = $5230 ^ $5234; + $5236 = (45248 + ($5235)|0); + $5237 = HEAP8[$5236>>0]|0; + $5238 = $5237&255; + $5239 = $2; + $5240 = ((($5239)) + 4|0); + $5241 = HEAP8[$5240>>0]|0; + $5242 = $5241&255; + $5243 = $5238 ^ $5242; + $5244 = (8376 + ($5243<<2)|0); + $5245 = HEAP32[$5244>>2]|0; + $5246 = $2; + $5247 = ((($5246)) + 29|0); + $5248 = HEAP8[$5247>>0]|0; + $5249 = $5248&255; + $5250 = 117 ^ $5249; + $5251 = (44992 + ($5250)|0); + $5252 = HEAP8[$5251>>0]|0; + $5253 = $5252&255; + $5254 = $2; + $5255 = ((($5254)) + 21|0); + $5256 = HEAP8[$5255>>0]|0; + $5257 = $5256&255; + $5258 = $5253 ^ $5257; + $5259 = (44992 + ($5258)|0); + $5260 = HEAP8[$5259>>0]|0; + $5261 = $5260&255; + $5262 = $2; + $5263 = ((($5262)) + 13|0); + $5264 = HEAP8[$5263>>0]|0; + $5265 = $5264&255; + $5266 = $5261 ^ $5265; + $5267 = (45248 + ($5266)|0); + $5268 = HEAP8[$5267>>0]|0; + $5269 = $5268&255; + $5270 = $2; + $5271 = ((($5270)) + 5|0); + $5272 = HEAP8[$5271>>0]|0; + $5273 = $5272&255; + $5274 = $5269 ^ $5273; + $5275 = ((9400) + ($5274<<2)|0); + $5276 = HEAP32[$5275>>2]|0; + $5277 = $5245 ^ $5276; + $5278 = $2; + $5279 = ((($5278)) + 30|0); + $5280 = HEAP8[$5279>>0]|0; + $5281 = $5280&255; + $5282 = 117 ^ $5281; + $5283 = (45248 + ($5282)|0); + $5284 = HEAP8[$5283>>0]|0; + $5285 = $5284&255; + $5286 = $2; + $5287 = ((($5286)) + 22|0); + $5288 = HEAP8[$5287>>0]|0; + $5289 = $5288&255; + $5290 = $5285 ^ $5289; + $5291 = (45248 + ($5290)|0); + $5292 = HEAP8[$5291>>0]|0; + $5293 = $5292&255; + $5294 = $2; + $5295 = ((($5294)) + 14|0); + $5296 = HEAP8[$5295>>0]|0; + $5297 = $5296&255; + $5298 = $5293 ^ $5297; + $5299 = (44992 + ($5298)|0); + $5300 = HEAP8[$5299>>0]|0; + $5301 = $5300&255; + $5302 = $2; + $5303 = ((($5302)) + 6|0); + $5304 = HEAP8[$5303>>0]|0; + $5305 = $5304&255; + $5306 = $5301 ^ $5305; + $5307 = ((10424) + ($5306<<2)|0); + $5308 = HEAP32[$5307>>2]|0; + $5309 = $5277 ^ $5308; + $5310 = $2; + $5311 = ((($5310)) + 31|0); + $5312 = HEAP8[$5311>>0]|0; + $5313 = $5312&255; + $5314 = 15 ^ $5313; + $5315 = (45248 + ($5314)|0); + $5316 = HEAP8[$5315>>0]|0; + $5317 = $5316&255; + $5318 = $2; + $5319 = ((($5318)) + 23|0); + $5320 = HEAP8[$5319>>0]|0; + $5321 = $5320&255; + $5322 = $5317 ^ $5321; + $5323 = (44992 + ($5322)|0); + $5324 = HEAP8[$5323>>0]|0; + $5325 = $5324&255; + $5326 = $2; + $5327 = ((($5326)) + 15|0); + $5328 = HEAP8[$5327>>0]|0; + $5329 = $5328&255; + $5330 = $5325 ^ $5329; + $5331 = (44992 + ($5330)|0); + $5332 = HEAP8[$5331>>0]|0; + $5333 = $5332&255; + $5334 = $2; + $5335 = ((($5334)) + 7|0); + $5336 = HEAP8[$5335>>0]|0; + $5337 = $5336&255; + $5338 = $5333 ^ $5337; + $5339 = ((11448) + ($5338<<2)|0); + $5340 = HEAP32[$5339>>2]|0; + $5341 = $5309 ^ $5340; + $y = $5341; + $5342 = $y; + $5343 = $5342 << 8; + $5344 = $y; + $5345 = $5344 >>> 24; + $5346 = (($5343) + ($5345))|0; + $y = $5346; + $5347 = $y; + $5348 = $x; + $5349 = (($5348) + ($5347))|0; + $x = $5349; + $5350 = $x; + $5351 = $y; + $5352 = (($5351) + ($5350))|0; + $y = $5352; + $5353 = $x; + $5354 = $1; + $5355 = ((($5354)) + 4128|0); + $5356 = ((($5355)) + 64|0); + HEAP32[$5356>>2] = $5353; + $5357 = $y; + $5358 = $5357 << 9; + $5359 = $y; + $5360 = $5359 >>> 23; + $5361 = (($5358) + ($5360))|0; + $5362 = $1; + $5363 = ((($5362)) + 4128|0); + $5364 = ((($5363)) + 68|0); + HEAP32[$5364>>2] = $5361; + $5365 = $2; + $5366 = ((($5365)) + 24|0); + $5367 = HEAP8[$5366>>0]|0; + $5368 = $5367&255; + $5369 = 248 ^ $5368; + $5370 = (44992 + ($5369)|0); + $5371 = HEAP8[$5370>>0]|0; + $5372 = $5371&255; + $5373 = $2; + $5374 = ((($5373)) + 16|0); + $5375 = HEAP8[$5374>>0]|0; + $5376 = $5375&255; + $5377 = $5372 ^ $5376; + $5378 = (45248 + ($5377)|0); + $5379 = HEAP8[$5378>>0]|0; + $5380 = $5379&255; + $5381 = $2; + $5382 = ((($5381)) + 8|0); + $5383 = HEAP8[$5382>>0]|0; + $5384 = $5383&255; + $5385 = $5380 ^ $5384; + $5386 = (45248 + ($5385)|0); + $5387 = HEAP8[$5386>>0]|0; + $5388 = $5387&255; + $5389 = $2; + $5390 = HEAP8[$5389>>0]|0; + $5391 = $5390&255; + $5392 = $5388 ^ $5391; + $5393 = (8376 + ($5392<<2)|0); + $5394 = HEAP32[$5393>>2]|0; + $5395 = $2; + $5396 = ((($5395)) + 25|0); + $5397 = HEAP8[$5396>>0]|0; + $5398 = $5397&255; + $5399 = 55 ^ $5398; + $5400 = (44992 + ($5399)|0); + $5401 = HEAP8[$5400>>0]|0; + $5402 = $5401&255; + $5403 = $2; + $5404 = ((($5403)) + 17|0); + $5405 = HEAP8[$5404>>0]|0; + $5406 = $5405&255; + $5407 = $5402 ^ $5406; + $5408 = (44992 + ($5407)|0); + $5409 = HEAP8[$5408>>0]|0; + $5410 = $5409&255; + $5411 = $2; + $5412 = ((($5411)) + 9|0); + $5413 = HEAP8[$5412>>0]|0; + $5414 = $5413&255; + $5415 = $5410 ^ $5414; + $5416 = (45248 + ($5415)|0); + $5417 = HEAP8[$5416>>0]|0; + $5418 = $5417&255; + $5419 = $2; + $5420 = ((($5419)) + 1|0); + $5421 = HEAP8[$5420>>0]|0; + $5422 = $5421&255; + $5423 = $5418 ^ $5422; + $5424 = ((9400) + ($5423<<2)|0); + $5425 = HEAP32[$5424>>2]|0; + $5426 = $5394 ^ $5425; + $5427 = $2; + $5428 = ((($5427)) + 26|0); + $5429 = HEAP8[$5428>>0]|0; + $5430 = $5429&255; + $5431 = 55 ^ $5430; + $5432 = (45248 + ($5431)|0); + $5433 = HEAP8[$5432>>0]|0; + $5434 = $5433&255; + $5435 = $2; + $5436 = ((($5435)) + 18|0); + $5437 = HEAP8[$5436>>0]|0; + $5438 = $5437&255; + $5439 = $5434 ^ $5438; + $5440 = (45248 + ($5439)|0); + $5441 = HEAP8[$5440>>0]|0; + $5442 = $5441&255; + $5443 = $2; + $5444 = ((($5443)) + 10|0); + $5445 = HEAP8[$5444>>0]|0; + $5446 = $5445&255; + $5447 = $5442 ^ $5446; + $5448 = (44992 + ($5447)|0); + $5449 = HEAP8[$5448>>0]|0; + $5450 = $5449&255; + $5451 = $2; + $5452 = ((($5451)) + 2|0); + $5453 = HEAP8[$5452>>0]|0; + $5454 = $5453&255; + $5455 = $5450 ^ $5454; + $5456 = ((10424) + ($5455<<2)|0); + $5457 = HEAP32[$5456>>2]|0; + $5458 = $5426 ^ $5457; + $5459 = $2; + $5460 = ((($5459)) + 27|0); + $5461 = HEAP8[$5460>>0]|0; + $5462 = $5461&255; + $5463 = 248 ^ $5462; + $5464 = (45248 + ($5463)|0); + $5465 = HEAP8[$5464>>0]|0; + $5466 = $5465&255; + $5467 = $2; + $5468 = ((($5467)) + 19|0); + $5469 = HEAP8[$5468>>0]|0; + $5470 = $5469&255; + $5471 = $5466 ^ $5470; + $5472 = (44992 + ($5471)|0); + $5473 = HEAP8[$5472>>0]|0; + $5474 = $5473&255; + $5475 = $2; + $5476 = ((($5475)) + 11|0); + $5477 = HEAP8[$5476>>0]|0; + $5478 = $5477&255; + $5479 = $5474 ^ $5478; + $5480 = (44992 + ($5479)|0); + $5481 = HEAP8[$5480>>0]|0; + $5482 = $5481&255; + $5483 = $2; + $5484 = ((($5483)) + 3|0); + $5485 = HEAP8[$5484>>0]|0; + $5486 = $5485&255; + $5487 = $5482 ^ $5486; + $5488 = ((11448) + ($5487<<2)|0); + $5489 = HEAP32[$5488>>2]|0; + $5490 = $5458 ^ $5489; + $x = $5490; + $5491 = $2; + $5492 = ((($5491)) + 28|0); + $5493 = HEAP8[$5492>>0]|0; + $5494 = $5493&255; + $5495 = 27 ^ $5494; + $5496 = (44992 + ($5495)|0); + $5497 = HEAP8[$5496>>0]|0; + $5498 = $5497&255; + $5499 = $2; + $5500 = ((($5499)) + 20|0); + $5501 = HEAP8[$5500>>0]|0; + $5502 = $5501&255; + $5503 = $5498 ^ $5502; + $5504 = (45248 + ($5503)|0); + $5505 = HEAP8[$5504>>0]|0; + $5506 = $5505&255; + $5507 = $2; + $5508 = ((($5507)) + 12|0); + $5509 = HEAP8[$5508>>0]|0; + $5510 = $5509&255; + $5511 = $5506 ^ $5510; + $5512 = (45248 + ($5511)|0); + $5513 = HEAP8[$5512>>0]|0; + $5514 = $5513&255; + $5515 = $2; + $5516 = ((($5515)) + 4|0); + $5517 = HEAP8[$5516>>0]|0; + $5518 = $5517&255; + $5519 = $5514 ^ $5518; + $5520 = (8376 + ($5519<<2)|0); + $5521 = HEAP32[$5520>>2]|0; + $5522 = $2; + $5523 = ((($5522)) + 29|0); + $5524 = HEAP8[$5523>>0]|0; + $5525 = $5524&255; + $5526 = 38 ^ $5525; + $5527 = (44992 + ($5526)|0); + $5528 = HEAP8[$5527>>0]|0; + $5529 = $5528&255; + $5530 = $2; + $5531 = ((($5530)) + 21|0); + $5532 = HEAP8[$5531>>0]|0; + $5533 = $5532&255; + $5534 = $5529 ^ $5533; + $5535 = (44992 + ($5534)|0); + $5536 = HEAP8[$5535>>0]|0; + $5537 = $5536&255; + $5538 = $2; + $5539 = ((($5538)) + 13|0); + $5540 = HEAP8[$5539>>0]|0; + $5541 = $5540&255; + $5542 = $5537 ^ $5541; + $5543 = (45248 + ($5542)|0); + $5544 = HEAP8[$5543>>0]|0; + $5545 = $5544&255; + $5546 = $2; + $5547 = ((($5546)) + 5|0); + $5548 = HEAP8[$5547>>0]|0; + $5549 = $5548&255; + $5550 = $5545 ^ $5549; + $5551 = ((9400) + ($5550<<2)|0); + $5552 = HEAP32[$5551>>2]|0; + $5553 = $5521 ^ $5552; + $5554 = $2; + $5555 = ((($5554)) + 30|0); + $5556 = HEAP8[$5555>>0]|0; + $5557 = $5556&255; + $5558 = 38 ^ $5557; + $5559 = (45248 + ($5558)|0); + $5560 = HEAP8[$5559>>0]|0; + $5561 = $5560&255; + $5562 = $2; + $5563 = ((($5562)) + 22|0); + $5564 = HEAP8[$5563>>0]|0; + $5565 = $5564&255; + $5566 = $5561 ^ $5565; + $5567 = (45248 + ($5566)|0); + $5568 = HEAP8[$5567>>0]|0; + $5569 = $5568&255; + $5570 = $2; + $5571 = ((($5570)) + 14|0); + $5572 = HEAP8[$5571>>0]|0; + $5573 = $5572&255; + $5574 = $5569 ^ $5573; + $5575 = (44992 + ($5574)|0); + $5576 = HEAP8[$5575>>0]|0; + $5577 = $5576&255; + $5578 = $2; + $5579 = ((($5578)) + 6|0); + $5580 = HEAP8[$5579>>0]|0; + $5581 = $5580&255; + $5582 = $5577 ^ $5581; + $5583 = ((10424) + ($5582<<2)|0); + $5584 = HEAP32[$5583>>2]|0; + $5585 = $5553 ^ $5584; + $5586 = $2; + $5587 = ((($5586)) + 31|0); + $5588 = HEAP8[$5587>>0]|0; + $5589 = $5588&255; + $5590 = 27 ^ $5589; + $5591 = (45248 + ($5590)|0); + $5592 = HEAP8[$5591>>0]|0; + $5593 = $5592&255; + $5594 = $2; + $5595 = ((($5594)) + 23|0); + $5596 = HEAP8[$5595>>0]|0; + $5597 = $5596&255; + $5598 = $5593 ^ $5597; + $5599 = (44992 + ($5598)|0); + $5600 = HEAP8[$5599>>0]|0; + $5601 = $5600&255; + $5602 = $2; + $5603 = ((($5602)) + 15|0); + $5604 = HEAP8[$5603>>0]|0; + $5605 = $5604&255; + $5606 = $5601 ^ $5605; + $5607 = (44992 + ($5606)|0); + $5608 = HEAP8[$5607>>0]|0; + $5609 = $5608&255; + $5610 = $2; + $5611 = ((($5610)) + 7|0); + $5612 = HEAP8[$5611>>0]|0; + $5613 = $5612&255; + $5614 = $5609 ^ $5613; + $5615 = ((11448) + ($5614<<2)|0); + $5616 = HEAP32[$5615>>2]|0; + $5617 = $5585 ^ $5616; + $y = $5617; + $5618 = $y; + $5619 = $5618 << 8; + $5620 = $y; + $5621 = $5620 >>> 24; + $5622 = (($5619) + ($5621))|0; + $y = $5622; + $5623 = $y; + $5624 = $x; + $5625 = (($5624) + ($5623))|0; + $x = $5625; + $5626 = $x; + $5627 = $y; + $5628 = (($5627) + ($5626))|0; + $y = $5628; + $5629 = $x; + $5630 = $1; + $5631 = ((($5630)) + 4128|0); + $5632 = ((($5631)) + 72|0); + HEAP32[$5632>>2] = $5629; + $5633 = $y; + $5634 = $5633 << 9; + $5635 = $y; + $5636 = $5635 >>> 23; + $5637 = (($5634) + ($5636))|0; + $5638 = $1; + $5639 = ((($5638)) + 4128|0); + $5640 = ((($5639)) + 76|0); + HEAP32[$5640>>2] = $5637; + $5641 = $2; + $5642 = ((($5641)) + 24|0); + $5643 = HEAP8[$5642>>0]|0; + $5644 = $5643&255; + $5645 = 135 ^ $5644; + $5646 = (44992 + ($5645)|0); + $5647 = HEAP8[$5646>>0]|0; + $5648 = $5647&255; + $5649 = $2; + $5650 = ((($5649)) + 16|0); + $5651 = HEAP8[$5650>>0]|0; + $5652 = $5651&255; + $5653 = $5648 ^ $5652; + $5654 = (45248 + ($5653)|0); + $5655 = HEAP8[$5654>>0]|0; + $5656 = $5655&255; + $5657 = $2; + $5658 = ((($5657)) + 8|0); + $5659 = HEAP8[$5658>>0]|0; + $5660 = $5659&255; + $5661 = $5656 ^ $5660; + $5662 = (45248 + ($5661)|0); + $5663 = HEAP8[$5662>>0]|0; + $5664 = $5663&255; + $5665 = $2; + $5666 = HEAP8[$5665>>0]|0; + $5667 = $5666&255; + $5668 = $5664 ^ $5667; + $5669 = (8376 + ($5668<<2)|0); + $5670 = HEAP32[$5669>>2]|0; + $5671 = $2; + $5672 = ((($5671)) + 25|0); + $5673 = HEAP8[$5672>>0]|0; + $5674 = $5673&255; + $5675 = 250 ^ $5674; + $5676 = (44992 + ($5675)|0); + $5677 = HEAP8[$5676>>0]|0; + $5678 = $5677&255; + $5679 = $2; + $5680 = ((($5679)) + 17|0); + $5681 = HEAP8[$5680>>0]|0; + $5682 = $5681&255; + $5683 = $5678 ^ $5682; + $5684 = (44992 + ($5683)|0); + $5685 = HEAP8[$5684>>0]|0; + $5686 = $5685&255; + $5687 = $2; + $5688 = ((($5687)) + 9|0); + $5689 = HEAP8[$5688>>0]|0; + $5690 = $5689&255; + $5691 = $5686 ^ $5690; + $5692 = (45248 + ($5691)|0); + $5693 = HEAP8[$5692>>0]|0; + $5694 = $5693&255; + $5695 = $2; + $5696 = ((($5695)) + 1|0); + $5697 = HEAP8[$5696>>0]|0; + $5698 = $5697&255; + $5699 = $5694 ^ $5698; + $5700 = ((9400) + ($5699<<2)|0); + $5701 = HEAP32[$5700>>2]|0; + $5702 = $5670 ^ $5701; + $5703 = $2; + $5704 = ((($5703)) + 26|0); + $5705 = HEAP8[$5704>>0]|0; + $5706 = $5705&255; + $5707 = 250 ^ $5706; + $5708 = (45248 + ($5707)|0); + $5709 = HEAP8[$5708>>0]|0; + $5710 = $5709&255; + $5711 = $2; + $5712 = ((($5711)) + 18|0); + $5713 = HEAP8[$5712>>0]|0; + $5714 = $5713&255; + $5715 = $5710 ^ $5714; + $5716 = (45248 + ($5715)|0); + $5717 = HEAP8[$5716>>0]|0; + $5718 = $5717&255; + $5719 = $2; + $5720 = ((($5719)) + 10|0); + $5721 = HEAP8[$5720>>0]|0; + $5722 = $5721&255; + $5723 = $5718 ^ $5722; + $5724 = (44992 + ($5723)|0); + $5725 = HEAP8[$5724>>0]|0; + $5726 = $5725&255; + $5727 = $2; + $5728 = ((($5727)) + 2|0); + $5729 = HEAP8[$5728>>0]|0; + $5730 = $5729&255; + $5731 = $5726 ^ $5730; + $5732 = ((10424) + ($5731<<2)|0); + $5733 = HEAP32[$5732>>2]|0; + $5734 = $5702 ^ $5733; + $5735 = $2; + $5736 = ((($5735)) + 27|0); + $5737 = HEAP8[$5736>>0]|0; + $5738 = $5737&255; + $5739 = 135 ^ $5738; + $5740 = (45248 + ($5739)|0); + $5741 = HEAP8[$5740>>0]|0; + $5742 = $5741&255; + $5743 = $2; + $5744 = ((($5743)) + 19|0); + $5745 = HEAP8[$5744>>0]|0; + $5746 = $5745&255; + $5747 = $5742 ^ $5746; + $5748 = (44992 + ($5747)|0); + $5749 = HEAP8[$5748>>0]|0; + $5750 = $5749&255; + $5751 = $2; + $5752 = ((($5751)) + 11|0); + $5753 = HEAP8[$5752>>0]|0; + $5754 = $5753&255; + $5755 = $5750 ^ $5754; + $5756 = (44992 + ($5755)|0); + $5757 = HEAP8[$5756>>0]|0; + $5758 = $5757&255; + $5759 = $2; + $5760 = ((($5759)) + 3|0); + $5761 = HEAP8[$5760>>0]|0; + $5762 = $5761&255; + $5763 = $5758 ^ $5762; + $5764 = ((11448) + ($5763<<2)|0); + $5765 = HEAP32[$5764>>2]|0; + $5766 = $5734 ^ $5765; + $x = $5766; + $5767 = $2; + $5768 = ((($5767)) + 28|0); + $5769 = HEAP8[$5768>>0]|0; + $5770 = $5769&255; + $5771 = 250 ^ $5770; + $5772 = (44992 + ($5771)|0); + $5773 = HEAP8[$5772>>0]|0; + $5774 = $5773&255; + $5775 = $2; + $5776 = ((($5775)) + 20|0); + $5777 = HEAP8[$5776>>0]|0; + $5778 = $5777&255; + $5779 = $5774 ^ $5778; + $5780 = (45248 + ($5779)|0); + $5781 = HEAP8[$5780>>0]|0; + $5782 = $5781&255; + $5783 = $2; + $5784 = ((($5783)) + 12|0); + $5785 = HEAP8[$5784>>0]|0; + $5786 = $5785&255; + $5787 = $5782 ^ $5786; + $5788 = (45248 + ($5787)|0); + $5789 = HEAP8[$5788>>0]|0; + $5790 = $5789&255; + $5791 = $2; + $5792 = ((($5791)) + 4|0); + $5793 = HEAP8[$5792>>0]|0; + $5794 = $5793&255; + $5795 = $5790 ^ $5794; + $5796 = (8376 + ($5795<<2)|0); + $5797 = HEAP32[$5796>>2]|0; + $5798 = $2; + $5799 = ((($5798)) + 29|0); + $5800 = HEAP8[$5799>>0]|0; + $5801 = $5800&255; + $5802 = 19 ^ $5801; + $5803 = (44992 + ($5802)|0); + $5804 = HEAP8[$5803>>0]|0; + $5805 = $5804&255; + $5806 = $2; + $5807 = ((($5806)) + 21|0); + $5808 = HEAP8[$5807>>0]|0; + $5809 = $5808&255; + $5810 = $5805 ^ $5809; + $5811 = (44992 + ($5810)|0); + $5812 = HEAP8[$5811>>0]|0; + $5813 = $5812&255; + $5814 = $2; + $5815 = ((($5814)) + 13|0); + $5816 = HEAP8[$5815>>0]|0; + $5817 = $5816&255; + $5818 = $5813 ^ $5817; + $5819 = (45248 + ($5818)|0); + $5820 = HEAP8[$5819>>0]|0; + $5821 = $5820&255; + $5822 = $2; + $5823 = ((($5822)) + 5|0); + $5824 = HEAP8[$5823>>0]|0; + $5825 = $5824&255; + $5826 = $5821 ^ $5825; + $5827 = ((9400) + ($5826<<2)|0); + $5828 = HEAP32[$5827>>2]|0; + $5829 = $5797 ^ $5828; + $5830 = $2; + $5831 = ((($5830)) + 30|0); + $5832 = HEAP8[$5831>>0]|0; + $5833 = $5832&255; + $5834 = 19 ^ $5833; + $5835 = (45248 + ($5834)|0); + $5836 = HEAP8[$5835>>0]|0; + $5837 = $5836&255; + $5838 = $2; + $5839 = ((($5838)) + 22|0); + $5840 = HEAP8[$5839>>0]|0; + $5841 = $5840&255; + $5842 = $5837 ^ $5841; + $5843 = (45248 + ($5842)|0); + $5844 = HEAP8[$5843>>0]|0; + $5845 = $5844&255; + $5846 = $2; + $5847 = ((($5846)) + 14|0); + $5848 = HEAP8[$5847>>0]|0; + $5849 = $5848&255; + $5850 = $5845 ^ $5849; + $5851 = (44992 + ($5850)|0); + $5852 = HEAP8[$5851>>0]|0; + $5853 = $5852&255; + $5854 = $2; + $5855 = ((($5854)) + 6|0); + $5856 = HEAP8[$5855>>0]|0; + $5857 = $5856&255; + $5858 = $5853 ^ $5857; + $5859 = ((10424) + ($5858<<2)|0); + $5860 = HEAP32[$5859>>2]|0; + $5861 = $5829 ^ $5860; + $5862 = $2; + $5863 = ((($5862)) + 31|0); + $5864 = HEAP8[$5863>>0]|0; + $5865 = $5864&255; + $5866 = 250 ^ $5865; + $5867 = (45248 + ($5866)|0); + $5868 = HEAP8[$5867>>0]|0; + $5869 = $5868&255; + $5870 = $2; + $5871 = ((($5870)) + 23|0); + $5872 = HEAP8[$5871>>0]|0; + $5873 = $5872&255; + $5874 = $5869 ^ $5873; + $5875 = (44992 + ($5874)|0); + $5876 = HEAP8[$5875>>0]|0; + $5877 = $5876&255; + $5878 = $2; + $5879 = ((($5878)) + 15|0); + $5880 = HEAP8[$5879>>0]|0; + $5881 = $5880&255; + $5882 = $5877 ^ $5881; + $5883 = (44992 + ($5882)|0); + $5884 = HEAP8[$5883>>0]|0; + $5885 = $5884&255; + $5886 = $2; + $5887 = ((($5886)) + 7|0); + $5888 = HEAP8[$5887>>0]|0; + $5889 = $5888&255; + $5890 = $5885 ^ $5889; + $5891 = ((11448) + ($5890<<2)|0); + $5892 = HEAP32[$5891>>2]|0; + $5893 = $5861 ^ $5892; + $y = $5893; + $5894 = $y; + $5895 = $5894 << 8; + $5896 = $y; + $5897 = $5896 >>> 24; + $5898 = (($5895) + ($5897))|0; + $y = $5898; + $5899 = $y; + $5900 = $x; + $5901 = (($5900) + ($5899))|0; + $x = $5901; + $5902 = $x; + $5903 = $y; + $5904 = (($5903) + ($5902))|0; + $y = $5904; + $5905 = $x; + $5906 = $1; + $5907 = ((($5906)) + 4128|0); + $5908 = ((($5907)) + 80|0); + HEAP32[$5908>>2] = $5905; + $5909 = $y; + $5910 = $5909 << 9; + $5911 = $y; + $5912 = $5911 >>> 23; + $5913 = (($5910) + ($5912))|0; + $5914 = $1; + $5915 = ((($5914)) + 4128|0); + $5916 = ((($5915)) + 84|0); + HEAP32[$5916>>2] = $5913; + $5917 = $2; + $5918 = ((($5917)) + 24|0); + $5919 = HEAP8[$5918>>0]|0; + $5920 = $5919&255; + $5921 = 6 ^ $5920; + $5922 = (44992 + ($5921)|0); + $5923 = HEAP8[$5922>>0]|0; + $5924 = $5923&255; + $5925 = $2; + $5926 = ((($5925)) + 16|0); + $5927 = HEAP8[$5926>>0]|0; + $5928 = $5927&255; + $5929 = $5924 ^ $5928; + $5930 = (45248 + ($5929)|0); + $5931 = HEAP8[$5930>>0]|0; + $5932 = $5931&255; + $5933 = $2; + $5934 = ((($5933)) + 8|0); + $5935 = HEAP8[$5934>>0]|0; + $5936 = $5935&255; + $5937 = $5932 ^ $5936; + $5938 = (45248 + ($5937)|0); + $5939 = HEAP8[$5938>>0]|0; + $5940 = $5939&255; + $5941 = $2; + $5942 = HEAP8[$5941>>0]|0; + $5943 = $5942&255; + $5944 = $5940 ^ $5943; + $5945 = (8376 + ($5944<<2)|0); + $5946 = HEAP32[$5945>>2]|0; + $5947 = $2; + $5948 = ((($5947)) + 25|0); + $5949 = HEAP8[$5948>>0]|0; + $5950 = $5949&255; + $5951 = 148 ^ $5950; + $5952 = (44992 + ($5951)|0); + $5953 = HEAP8[$5952>>0]|0; + $5954 = $5953&255; + $5955 = $2; + $5956 = ((($5955)) + 17|0); + $5957 = HEAP8[$5956>>0]|0; + $5958 = $5957&255; + $5959 = $5954 ^ $5958; + $5960 = (44992 + ($5959)|0); + $5961 = HEAP8[$5960>>0]|0; + $5962 = $5961&255; + $5963 = $2; + $5964 = ((($5963)) + 9|0); + $5965 = HEAP8[$5964>>0]|0; + $5966 = $5965&255; + $5967 = $5962 ^ $5966; + $5968 = (45248 + ($5967)|0); + $5969 = HEAP8[$5968>>0]|0; + $5970 = $5969&255; + $5971 = $2; + $5972 = ((($5971)) + 1|0); + $5973 = HEAP8[$5972>>0]|0; + $5974 = $5973&255; + $5975 = $5970 ^ $5974; + $5976 = ((9400) + ($5975<<2)|0); + $5977 = HEAP32[$5976>>2]|0; + $5978 = $5946 ^ $5977; + $5979 = $2; + $5980 = ((($5979)) + 26|0); + $5981 = HEAP8[$5980>>0]|0; + $5982 = $5981&255; + $5983 = 148 ^ $5982; + $5984 = (45248 + ($5983)|0); + $5985 = HEAP8[$5984>>0]|0; + $5986 = $5985&255; + $5987 = $2; + $5988 = ((($5987)) + 18|0); + $5989 = HEAP8[$5988>>0]|0; + $5990 = $5989&255; + $5991 = $5986 ^ $5990; + $5992 = (45248 + ($5991)|0); + $5993 = HEAP8[$5992>>0]|0; + $5994 = $5993&255; + $5995 = $2; + $5996 = ((($5995)) + 10|0); + $5997 = HEAP8[$5996>>0]|0; + $5998 = $5997&255; + $5999 = $5994 ^ $5998; + $6000 = (44992 + ($5999)|0); + $6001 = HEAP8[$6000>>0]|0; + $6002 = $6001&255; + $6003 = $2; + $6004 = ((($6003)) + 2|0); + $6005 = HEAP8[$6004>>0]|0; + $6006 = $6005&255; + $6007 = $6002 ^ $6006; + $6008 = ((10424) + ($6007<<2)|0); + $6009 = HEAP32[$6008>>2]|0; + $6010 = $5978 ^ $6009; + $6011 = $2; + $6012 = ((($6011)) + 27|0); + $6013 = HEAP8[$6012>>0]|0; + $6014 = $6013&255; + $6015 = 6 ^ $6014; + $6016 = (45248 + ($6015)|0); + $6017 = HEAP8[$6016>>0]|0; + $6018 = $6017&255; + $6019 = $2; + $6020 = ((($6019)) + 19|0); + $6021 = HEAP8[$6020>>0]|0; + $6022 = $6021&255; + $6023 = $6018 ^ $6022; + $6024 = (44992 + ($6023)|0); + $6025 = HEAP8[$6024>>0]|0; + $6026 = $6025&255; + $6027 = $2; + $6028 = ((($6027)) + 11|0); + $6029 = HEAP8[$6028>>0]|0; + $6030 = $6029&255; + $6031 = $6026 ^ $6030; + $6032 = (44992 + ($6031)|0); + $6033 = HEAP8[$6032>>0]|0; + $6034 = $6033&255; + $6035 = $2; + $6036 = ((($6035)) + 3|0); + $6037 = HEAP8[$6036>>0]|0; + $6038 = $6037&255; + $6039 = $6034 ^ $6038; + $6040 = ((11448) + ($6039<<2)|0); + $6041 = HEAP32[$6040>>2]|0; + $6042 = $6010 ^ $6041; + $x = $6042; + $6043 = $2; + $6044 = ((($6043)) + 28|0); + $6045 = HEAP8[$6044>>0]|0; + $6046 = $6045&255; + $6047 = 63 ^ $6046; + $6048 = (44992 + ($6047)|0); + $6049 = HEAP8[$6048>>0]|0; + $6050 = $6049&255; + $6051 = $2; + $6052 = ((($6051)) + 20|0); + $6053 = HEAP8[$6052>>0]|0; + $6054 = $6053&255; + $6055 = $6050 ^ $6054; + $6056 = (45248 + ($6055)|0); + $6057 = HEAP8[$6056>>0]|0; + $6058 = $6057&255; + $6059 = $2; + $6060 = ((($6059)) + 12|0); + $6061 = HEAP8[$6060>>0]|0; + $6062 = $6061&255; + $6063 = $6058 ^ $6062; + $6064 = (45248 + ($6063)|0); + $6065 = HEAP8[$6064>>0]|0; + $6066 = $6065&255; + $6067 = $2; + $6068 = ((($6067)) + 4|0); + $6069 = HEAP8[$6068>>0]|0; + $6070 = $6069&255; + $6071 = $6066 ^ $6070; + $6072 = (8376 + ($6071<<2)|0); + $6073 = HEAP32[$6072>>2]|0; + $6074 = $2; + $6075 = ((($6074)) + 29|0); + $6076 = HEAP8[$6075>>0]|0; + $6077 = $6076&255; + $6078 = 72 ^ $6077; + $6079 = (44992 + ($6078)|0); + $6080 = HEAP8[$6079>>0]|0; + $6081 = $6080&255; + $6082 = $2; + $6083 = ((($6082)) + 21|0); + $6084 = HEAP8[$6083>>0]|0; + $6085 = $6084&255; + $6086 = $6081 ^ $6085; + $6087 = (44992 + ($6086)|0); + $6088 = HEAP8[$6087>>0]|0; + $6089 = $6088&255; + $6090 = $2; + $6091 = ((($6090)) + 13|0); + $6092 = HEAP8[$6091>>0]|0; + $6093 = $6092&255; + $6094 = $6089 ^ $6093; + $6095 = (45248 + ($6094)|0); + $6096 = HEAP8[$6095>>0]|0; + $6097 = $6096&255; + $6098 = $2; + $6099 = ((($6098)) + 5|0); + $6100 = HEAP8[$6099>>0]|0; + $6101 = $6100&255; + $6102 = $6097 ^ $6101; + $6103 = ((9400) + ($6102<<2)|0); + $6104 = HEAP32[$6103>>2]|0; + $6105 = $6073 ^ $6104; + $6106 = $2; + $6107 = ((($6106)) + 30|0); + $6108 = HEAP8[$6107>>0]|0; + $6109 = $6108&255; + $6110 = 72 ^ $6109; + $6111 = (45248 + ($6110)|0); + $6112 = HEAP8[$6111>>0]|0; + $6113 = $6112&255; + $6114 = $2; + $6115 = ((($6114)) + 22|0); + $6116 = HEAP8[$6115>>0]|0; + $6117 = $6116&255; + $6118 = $6113 ^ $6117; + $6119 = (45248 + ($6118)|0); + $6120 = HEAP8[$6119>>0]|0; + $6121 = $6120&255; + $6122 = $2; + $6123 = ((($6122)) + 14|0); + $6124 = HEAP8[$6123>>0]|0; + $6125 = $6124&255; + $6126 = $6121 ^ $6125; + $6127 = (44992 + ($6126)|0); + $6128 = HEAP8[$6127>>0]|0; + $6129 = $6128&255; + $6130 = $2; + $6131 = ((($6130)) + 6|0); + $6132 = HEAP8[$6131>>0]|0; + $6133 = $6132&255; + $6134 = $6129 ^ $6133; + $6135 = ((10424) + ($6134<<2)|0); + $6136 = HEAP32[$6135>>2]|0; + $6137 = $6105 ^ $6136; + $6138 = $2; + $6139 = ((($6138)) + 31|0); + $6140 = HEAP8[$6139>>0]|0; + $6141 = $6140&255; + $6142 = 63 ^ $6141; + $6143 = (45248 + ($6142)|0); + $6144 = HEAP8[$6143>>0]|0; + $6145 = $6144&255; + $6146 = $2; + $6147 = ((($6146)) + 23|0); + $6148 = HEAP8[$6147>>0]|0; + $6149 = $6148&255; + $6150 = $6145 ^ $6149; + $6151 = (44992 + ($6150)|0); + $6152 = HEAP8[$6151>>0]|0; + $6153 = $6152&255; + $6154 = $2; + $6155 = ((($6154)) + 15|0); + $6156 = HEAP8[$6155>>0]|0; + $6157 = $6156&255; + $6158 = $6153 ^ $6157; + $6159 = (44992 + ($6158)|0); + $6160 = HEAP8[$6159>>0]|0; + $6161 = $6160&255; + $6162 = $2; + $6163 = ((($6162)) + 7|0); + $6164 = HEAP8[$6163>>0]|0; + $6165 = $6164&255; + $6166 = $6161 ^ $6165; + $6167 = ((11448) + ($6166<<2)|0); + $6168 = HEAP32[$6167>>2]|0; + $6169 = $6137 ^ $6168; + $y = $6169; + $6170 = $y; + $6171 = $6170 << 8; + $6172 = $y; + $6173 = $6172 >>> 24; + $6174 = (($6171) + ($6173))|0; + $y = $6174; + $6175 = $y; + $6176 = $x; + $6177 = (($6176) + ($6175))|0; + $x = $6177; + $6178 = $x; + $6179 = $y; + $6180 = (($6179) + ($6178))|0; + $y = $6180; + $6181 = $x; + $6182 = $1; + $6183 = ((($6182)) + 4128|0); + $6184 = ((($6183)) + 88|0); + HEAP32[$6184>>2] = $6181; + $6185 = $y; + $6186 = $6185 << 9; + $6187 = $y; + $6188 = $6187 >>> 23; + $6189 = (($6186) + ($6188))|0; + $6190 = $1; + $6191 = ((($6190)) + 4128|0); + $6192 = ((($6191)) + 92|0); + HEAP32[$6192>>2] = $6189; + $6193 = $2; + $6194 = ((($6193)) + 24|0); + $6195 = HEAP8[$6194>>0]|0; + $6196 = $6195&255; + $6197 = 94 ^ $6196; + $6198 = (44992 + ($6197)|0); + $6199 = HEAP8[$6198>>0]|0; + $6200 = $6199&255; + $6201 = $2; + $6202 = ((($6201)) + 16|0); + $6203 = HEAP8[$6202>>0]|0; + $6204 = $6203&255; + $6205 = $6200 ^ $6204; + $6206 = (45248 + ($6205)|0); + $6207 = HEAP8[$6206>>0]|0; + $6208 = $6207&255; + $6209 = $2; + $6210 = ((($6209)) + 8|0); + $6211 = HEAP8[$6210>>0]|0; + $6212 = $6211&255; + $6213 = $6208 ^ $6212; + $6214 = (45248 + ($6213)|0); + $6215 = HEAP8[$6214>>0]|0; + $6216 = $6215&255; + $6217 = $2; + $6218 = HEAP8[$6217>>0]|0; + $6219 = $6218&255; + $6220 = $6216 ^ $6219; + $6221 = (8376 + ($6220<<2)|0); + $6222 = HEAP32[$6221>>2]|0; + $6223 = $2; + $6224 = ((($6223)) + 25|0); + $6225 = HEAP8[$6224>>0]|0; + $6226 = $6225&255; + $6227 = 242 ^ $6226; + $6228 = (44992 + ($6227)|0); + $6229 = HEAP8[$6228>>0]|0; + $6230 = $6229&255; + $6231 = $2; + $6232 = ((($6231)) + 17|0); + $6233 = HEAP8[$6232>>0]|0; + $6234 = $6233&255; + $6235 = $6230 ^ $6234; + $6236 = (44992 + ($6235)|0); + $6237 = HEAP8[$6236>>0]|0; + $6238 = $6237&255; + $6239 = $2; + $6240 = ((($6239)) + 9|0); + $6241 = HEAP8[$6240>>0]|0; + $6242 = $6241&255; + $6243 = $6238 ^ $6242; + $6244 = (45248 + ($6243)|0); + $6245 = HEAP8[$6244>>0]|0; + $6246 = $6245&255; + $6247 = $2; + $6248 = ((($6247)) + 1|0); + $6249 = HEAP8[$6248>>0]|0; + $6250 = $6249&255; + $6251 = $6246 ^ $6250; + $6252 = ((9400) + ($6251<<2)|0); + $6253 = HEAP32[$6252>>2]|0; + $6254 = $6222 ^ $6253; + $6255 = $2; + $6256 = ((($6255)) + 26|0); + $6257 = HEAP8[$6256>>0]|0; + $6258 = $6257&255; + $6259 = 242 ^ $6258; + $6260 = (45248 + ($6259)|0); + $6261 = HEAP8[$6260>>0]|0; + $6262 = $6261&255; + $6263 = $2; + $6264 = ((($6263)) + 18|0); + $6265 = HEAP8[$6264>>0]|0; + $6266 = $6265&255; + $6267 = $6262 ^ $6266; + $6268 = (45248 + ($6267)|0); + $6269 = HEAP8[$6268>>0]|0; + $6270 = $6269&255; + $6271 = $2; + $6272 = ((($6271)) + 10|0); + $6273 = HEAP8[$6272>>0]|0; + $6274 = $6273&255; + $6275 = $6270 ^ $6274; + $6276 = (44992 + ($6275)|0); + $6277 = HEAP8[$6276>>0]|0; + $6278 = $6277&255; + $6279 = $2; + $6280 = ((($6279)) + 2|0); + $6281 = HEAP8[$6280>>0]|0; + $6282 = $6281&255; + $6283 = $6278 ^ $6282; + $6284 = ((10424) + ($6283<<2)|0); + $6285 = HEAP32[$6284>>2]|0; + $6286 = $6254 ^ $6285; + $6287 = $2; + $6288 = ((($6287)) + 27|0); + $6289 = HEAP8[$6288>>0]|0; + $6290 = $6289&255; + $6291 = 94 ^ $6290; + $6292 = (45248 + ($6291)|0); + $6293 = HEAP8[$6292>>0]|0; + $6294 = $6293&255; + $6295 = $2; + $6296 = ((($6295)) + 19|0); + $6297 = HEAP8[$6296>>0]|0; + $6298 = $6297&255; + $6299 = $6294 ^ $6298; + $6300 = (44992 + ($6299)|0); + $6301 = HEAP8[$6300>>0]|0; + $6302 = $6301&255; + $6303 = $2; + $6304 = ((($6303)) + 11|0); + $6305 = HEAP8[$6304>>0]|0; + $6306 = $6305&255; + $6307 = $6302 ^ $6306; + $6308 = (44992 + ($6307)|0); + $6309 = HEAP8[$6308>>0]|0; + $6310 = $6309&255; + $6311 = $2; + $6312 = ((($6311)) + 3|0); + $6313 = HEAP8[$6312>>0]|0; + $6314 = $6313&255; + $6315 = $6310 ^ $6314; + $6316 = ((11448) + ($6315<<2)|0); + $6317 = HEAP32[$6316>>2]|0; + $6318 = $6286 ^ $6317; + $x = $6318; + $6319 = $2; + $6320 = ((($6319)) + 28|0); + $6321 = HEAP8[$6320>>0]|0; + $6322 = $6321&255; + $6323 = 186 ^ $6322; + $6324 = (44992 + ($6323)|0); + $6325 = HEAP8[$6324>>0]|0; + $6326 = $6325&255; + $6327 = $2; + $6328 = ((($6327)) + 20|0); + $6329 = HEAP8[$6328>>0]|0; + $6330 = $6329&255; + $6331 = $6326 ^ $6330; + $6332 = (45248 + ($6331)|0); + $6333 = HEAP8[$6332>>0]|0; + $6334 = $6333&255; + $6335 = $2; + $6336 = ((($6335)) + 12|0); + $6337 = HEAP8[$6336>>0]|0; + $6338 = $6337&255; + $6339 = $6334 ^ $6338; + $6340 = (45248 + ($6339)|0); + $6341 = HEAP8[$6340>>0]|0; + $6342 = $6341&255; + $6343 = $2; + $6344 = ((($6343)) + 4|0); + $6345 = HEAP8[$6344>>0]|0; + $6346 = $6345&255; + $6347 = $6342 ^ $6346; + $6348 = (8376 + ($6347<<2)|0); + $6349 = HEAP32[$6348>>2]|0; + $6350 = $2; + $6351 = ((($6350)) + 29|0); + $6352 = HEAP8[$6351>>0]|0; + $6353 = $6352&255; + $6354 = 208 ^ $6353; + $6355 = (44992 + ($6354)|0); + $6356 = HEAP8[$6355>>0]|0; + $6357 = $6356&255; + $6358 = $2; + $6359 = ((($6358)) + 21|0); + $6360 = HEAP8[$6359>>0]|0; + $6361 = $6360&255; + $6362 = $6357 ^ $6361; + $6363 = (44992 + ($6362)|0); + $6364 = HEAP8[$6363>>0]|0; + $6365 = $6364&255; + $6366 = $2; + $6367 = ((($6366)) + 13|0); + $6368 = HEAP8[$6367>>0]|0; + $6369 = $6368&255; + $6370 = $6365 ^ $6369; + $6371 = (45248 + ($6370)|0); + $6372 = HEAP8[$6371>>0]|0; + $6373 = $6372&255; + $6374 = $2; + $6375 = ((($6374)) + 5|0); + $6376 = HEAP8[$6375>>0]|0; + $6377 = $6376&255; + $6378 = $6373 ^ $6377; + $6379 = ((9400) + ($6378<<2)|0); + $6380 = HEAP32[$6379>>2]|0; + $6381 = $6349 ^ $6380; + $6382 = $2; + $6383 = ((($6382)) + 30|0); + $6384 = HEAP8[$6383>>0]|0; + $6385 = $6384&255; + $6386 = 208 ^ $6385; + $6387 = (45248 + ($6386)|0); + $6388 = HEAP8[$6387>>0]|0; + $6389 = $6388&255; + $6390 = $2; + $6391 = ((($6390)) + 22|0); + $6392 = HEAP8[$6391>>0]|0; + $6393 = $6392&255; + $6394 = $6389 ^ $6393; + $6395 = (45248 + ($6394)|0); + $6396 = HEAP8[$6395>>0]|0; + $6397 = $6396&255; + $6398 = $2; + $6399 = ((($6398)) + 14|0); + $6400 = HEAP8[$6399>>0]|0; + $6401 = $6400&255; + $6402 = $6397 ^ $6401; + $6403 = (44992 + ($6402)|0); + $6404 = HEAP8[$6403>>0]|0; + $6405 = $6404&255; + $6406 = $2; + $6407 = ((($6406)) + 6|0); + $6408 = HEAP8[$6407>>0]|0; + $6409 = $6408&255; + $6410 = $6405 ^ $6409; + $6411 = ((10424) + ($6410<<2)|0); + $6412 = HEAP32[$6411>>2]|0; + $6413 = $6381 ^ $6412; + $6414 = $2; + $6415 = ((($6414)) + 31|0); + $6416 = HEAP8[$6415>>0]|0; + $6417 = $6416&255; + $6418 = 186 ^ $6417; + $6419 = (45248 + ($6418)|0); + $6420 = HEAP8[$6419>>0]|0; + $6421 = $6420&255; + $6422 = $2; + $6423 = ((($6422)) + 23|0); + $6424 = HEAP8[$6423>>0]|0; + $6425 = $6424&255; + $6426 = $6421 ^ $6425; + $6427 = (44992 + ($6426)|0); + $6428 = HEAP8[$6427>>0]|0; + $6429 = $6428&255; + $6430 = $2; + $6431 = ((($6430)) + 15|0); + $6432 = HEAP8[$6431>>0]|0; + $6433 = $6432&255; + $6434 = $6429 ^ $6433; + $6435 = (44992 + ($6434)|0); + $6436 = HEAP8[$6435>>0]|0; + $6437 = $6436&255; + $6438 = $2; + $6439 = ((($6438)) + 7|0); + $6440 = HEAP8[$6439>>0]|0; + $6441 = $6440&255; + $6442 = $6437 ^ $6441; + $6443 = ((11448) + ($6442<<2)|0); + $6444 = HEAP32[$6443>>2]|0; + $6445 = $6413 ^ $6444; + $y = $6445; + $6446 = $y; + $6447 = $6446 << 8; + $6448 = $y; + $6449 = $6448 >>> 24; + $6450 = (($6447) + ($6449))|0; + $y = $6450; + $6451 = $y; + $6452 = $x; + $6453 = (($6452) + ($6451))|0; + $x = $6453; + $6454 = $x; + $6455 = $y; + $6456 = (($6455) + ($6454))|0; + $y = $6456; + $6457 = $x; + $6458 = $1; + $6459 = ((($6458)) + 4128|0); + $6460 = ((($6459)) + 96|0); + HEAP32[$6460>>2] = $6457; + $6461 = $y; + $6462 = $6461 << 9; + $6463 = $y; + $6464 = $6463 >>> 23; + $6465 = (($6462) + ($6464))|0; + $6466 = $1; + $6467 = ((($6466)) + 4128|0); + $6468 = ((($6467)) + 100|0); + HEAP32[$6468>>2] = $6465; + $6469 = $2; + $6470 = ((($6469)) + 24|0); + $6471 = HEAP8[$6470>>0]|0; + $6472 = $6471&255; + $6473 = 174 ^ $6472; + $6474 = (44992 + ($6473)|0); + $6475 = HEAP8[$6474>>0]|0; + $6476 = $6475&255; + $6477 = $2; + $6478 = ((($6477)) + 16|0); + $6479 = HEAP8[$6478>>0]|0; + $6480 = $6479&255; + $6481 = $6476 ^ $6480; + $6482 = (45248 + ($6481)|0); + $6483 = HEAP8[$6482>>0]|0; + $6484 = $6483&255; + $6485 = $2; + $6486 = ((($6485)) + 8|0); + $6487 = HEAP8[$6486>>0]|0; + $6488 = $6487&255; + $6489 = $6484 ^ $6488; + $6490 = (45248 + ($6489)|0); + $6491 = HEAP8[$6490>>0]|0; + $6492 = $6491&255; + $6493 = $2; + $6494 = HEAP8[$6493>>0]|0; + $6495 = $6494&255; + $6496 = $6492 ^ $6495; + $6497 = (8376 + ($6496<<2)|0); + $6498 = HEAP32[$6497>>2]|0; + $6499 = $2; + $6500 = ((($6499)) + 25|0); + $6501 = HEAP8[$6500>>0]|0; + $6502 = $6501&255; + $6503 = 139 ^ $6502; + $6504 = (44992 + ($6503)|0); + $6505 = HEAP8[$6504>>0]|0; + $6506 = $6505&255; + $6507 = $2; + $6508 = ((($6507)) + 17|0); + $6509 = HEAP8[$6508>>0]|0; + $6510 = $6509&255; + $6511 = $6506 ^ $6510; + $6512 = (44992 + ($6511)|0); + $6513 = HEAP8[$6512>>0]|0; + $6514 = $6513&255; + $6515 = $2; + $6516 = ((($6515)) + 9|0); + $6517 = HEAP8[$6516>>0]|0; + $6518 = $6517&255; + $6519 = $6514 ^ $6518; + $6520 = (45248 + ($6519)|0); + $6521 = HEAP8[$6520>>0]|0; + $6522 = $6521&255; + $6523 = $2; + $6524 = ((($6523)) + 1|0); + $6525 = HEAP8[$6524>>0]|0; + $6526 = $6525&255; + $6527 = $6522 ^ $6526; + $6528 = ((9400) + ($6527<<2)|0); + $6529 = HEAP32[$6528>>2]|0; + $6530 = $6498 ^ $6529; + $6531 = $2; + $6532 = ((($6531)) + 26|0); + $6533 = HEAP8[$6532>>0]|0; + $6534 = $6533&255; + $6535 = 139 ^ $6534; + $6536 = (45248 + ($6535)|0); + $6537 = HEAP8[$6536>>0]|0; + $6538 = $6537&255; + $6539 = $2; + $6540 = ((($6539)) + 18|0); + $6541 = HEAP8[$6540>>0]|0; + $6542 = $6541&255; + $6543 = $6538 ^ $6542; + $6544 = (45248 + ($6543)|0); + $6545 = HEAP8[$6544>>0]|0; + $6546 = $6545&255; + $6547 = $2; + $6548 = ((($6547)) + 10|0); + $6549 = HEAP8[$6548>>0]|0; + $6550 = $6549&255; + $6551 = $6546 ^ $6550; + $6552 = (44992 + ($6551)|0); + $6553 = HEAP8[$6552>>0]|0; + $6554 = $6553&255; + $6555 = $2; + $6556 = ((($6555)) + 2|0); + $6557 = HEAP8[$6556>>0]|0; + $6558 = $6557&255; + $6559 = $6554 ^ $6558; + $6560 = ((10424) + ($6559<<2)|0); + $6561 = HEAP32[$6560>>2]|0; + $6562 = $6530 ^ $6561; + $6563 = $2; + $6564 = ((($6563)) + 27|0); + $6565 = HEAP8[$6564>>0]|0; + $6566 = $6565&255; + $6567 = 174 ^ $6566; + $6568 = (45248 + ($6567)|0); + $6569 = HEAP8[$6568>>0]|0; + $6570 = $6569&255; + $6571 = $2; + $6572 = ((($6571)) + 19|0); + $6573 = HEAP8[$6572>>0]|0; + $6574 = $6573&255; + $6575 = $6570 ^ $6574; + $6576 = (44992 + ($6575)|0); + $6577 = HEAP8[$6576>>0]|0; + $6578 = $6577&255; + $6579 = $2; + $6580 = ((($6579)) + 11|0); + $6581 = HEAP8[$6580>>0]|0; + $6582 = $6581&255; + $6583 = $6578 ^ $6582; + $6584 = (44992 + ($6583)|0); + $6585 = HEAP8[$6584>>0]|0; + $6586 = $6585&255; + $6587 = $2; + $6588 = ((($6587)) + 3|0); + $6589 = HEAP8[$6588>>0]|0; + $6590 = $6589&255; + $6591 = $6586 ^ $6590; + $6592 = ((11448) + ($6591<<2)|0); + $6593 = HEAP32[$6592>>2]|0; + $6594 = $6562 ^ $6593; + $x = $6594; + $6595 = $2; + $6596 = ((($6595)) + 28|0); + $6597 = HEAP8[$6596>>0]|0; + $6598 = $6597&255; + $6599 = 91 ^ $6598; + $6600 = (44992 + ($6599)|0); + $6601 = HEAP8[$6600>>0]|0; + $6602 = $6601&255; + $6603 = $2; + $6604 = ((($6603)) + 20|0); + $6605 = HEAP8[$6604>>0]|0; + $6606 = $6605&255; + $6607 = $6602 ^ $6606; + $6608 = (45248 + ($6607)|0); + $6609 = HEAP8[$6608>>0]|0; + $6610 = $6609&255; + $6611 = $2; + $6612 = ((($6611)) + 12|0); + $6613 = HEAP8[$6612>>0]|0; + $6614 = $6613&255; + $6615 = $6610 ^ $6614; + $6616 = (45248 + ($6615)|0); + $6617 = HEAP8[$6616>>0]|0; + $6618 = $6617&255; + $6619 = $2; + $6620 = ((($6619)) + 4|0); + $6621 = HEAP8[$6620>>0]|0; + $6622 = $6621&255; + $6623 = $6618 ^ $6622; + $6624 = (8376 + ($6623<<2)|0); + $6625 = HEAP32[$6624>>2]|0; + $6626 = $2; + $6627 = ((($6626)) + 29|0); + $6628 = HEAP8[$6627>>0]|0; + $6629 = $6628&255; + $6630 = 48 ^ $6629; + $6631 = (44992 + ($6630)|0); + $6632 = HEAP8[$6631>>0]|0; + $6633 = $6632&255; + $6634 = $2; + $6635 = ((($6634)) + 21|0); + $6636 = HEAP8[$6635>>0]|0; + $6637 = $6636&255; + $6638 = $6633 ^ $6637; + $6639 = (44992 + ($6638)|0); + $6640 = HEAP8[$6639>>0]|0; + $6641 = $6640&255; + $6642 = $2; + $6643 = ((($6642)) + 13|0); + $6644 = HEAP8[$6643>>0]|0; + $6645 = $6644&255; + $6646 = $6641 ^ $6645; + $6647 = (45248 + ($6646)|0); + $6648 = HEAP8[$6647>>0]|0; + $6649 = $6648&255; + $6650 = $2; + $6651 = ((($6650)) + 5|0); + $6652 = HEAP8[$6651>>0]|0; + $6653 = $6652&255; + $6654 = $6649 ^ $6653; + $6655 = ((9400) + ($6654<<2)|0); + $6656 = HEAP32[$6655>>2]|0; + $6657 = $6625 ^ $6656; + $6658 = $2; + $6659 = ((($6658)) + 30|0); + $6660 = HEAP8[$6659>>0]|0; + $6661 = $6660&255; + $6662 = 48 ^ $6661; + $6663 = (45248 + ($6662)|0); + $6664 = HEAP8[$6663>>0]|0; + $6665 = $6664&255; + $6666 = $2; + $6667 = ((($6666)) + 22|0); + $6668 = HEAP8[$6667>>0]|0; + $6669 = $6668&255; + $6670 = $6665 ^ $6669; + $6671 = (45248 + ($6670)|0); + $6672 = HEAP8[$6671>>0]|0; + $6673 = $6672&255; + $6674 = $2; + $6675 = ((($6674)) + 14|0); + $6676 = HEAP8[$6675>>0]|0; + $6677 = $6676&255; + $6678 = $6673 ^ $6677; + $6679 = (44992 + ($6678)|0); + $6680 = HEAP8[$6679>>0]|0; + $6681 = $6680&255; + $6682 = $2; + $6683 = ((($6682)) + 6|0); + $6684 = HEAP8[$6683>>0]|0; + $6685 = $6684&255; + $6686 = $6681 ^ $6685; + $6687 = ((10424) + ($6686<<2)|0); + $6688 = HEAP32[$6687>>2]|0; + $6689 = $6657 ^ $6688; + $6690 = $2; + $6691 = ((($6690)) + 31|0); + $6692 = HEAP8[$6691>>0]|0; + $6693 = $6692&255; + $6694 = 91 ^ $6693; + $6695 = (45248 + ($6694)|0); + $6696 = HEAP8[$6695>>0]|0; + $6697 = $6696&255; + $6698 = $2; + $6699 = ((($6698)) + 23|0); + $6700 = HEAP8[$6699>>0]|0; + $6701 = $6700&255; + $6702 = $6697 ^ $6701; + $6703 = (44992 + ($6702)|0); + $6704 = HEAP8[$6703>>0]|0; + $6705 = $6704&255; + $6706 = $2; + $6707 = ((($6706)) + 15|0); + $6708 = HEAP8[$6707>>0]|0; + $6709 = $6708&255; + $6710 = $6705 ^ $6709; + $6711 = (44992 + ($6710)|0); + $6712 = HEAP8[$6711>>0]|0; + $6713 = $6712&255; + $6714 = $2; + $6715 = ((($6714)) + 7|0); + $6716 = HEAP8[$6715>>0]|0; + $6717 = $6716&255; + $6718 = $6713 ^ $6717; + $6719 = ((11448) + ($6718<<2)|0); + $6720 = HEAP32[$6719>>2]|0; + $6721 = $6689 ^ $6720; + $y = $6721; + $6722 = $y; + $6723 = $6722 << 8; + $6724 = $y; + $6725 = $6724 >>> 24; + $6726 = (($6723) + ($6725))|0; + $y = $6726; + $6727 = $y; + $6728 = $x; + $6729 = (($6728) + ($6727))|0; + $x = $6729; + $6730 = $x; + $6731 = $y; + $6732 = (($6731) + ($6730))|0; + $y = $6732; + $6733 = $x; + $6734 = $1; + $6735 = ((($6734)) + 4128|0); + $6736 = ((($6735)) + 104|0); + HEAP32[$6736>>2] = $6733; + $6737 = $y; + $6738 = $6737 << 9; + $6739 = $y; + $6740 = $6739 >>> 23; + $6741 = (($6738) + ($6740))|0; + $6742 = $1; + $6743 = ((($6742)) + 4128|0); + $6744 = ((($6743)) + 108|0); + HEAP32[$6744>>2] = $6741; + $6745 = $2; + $6746 = ((($6745)) + 24|0); + $6747 = HEAP8[$6746>>0]|0; + $6748 = $6747&255; + $6749 = 138 ^ $6748; + $6750 = (44992 + ($6749)|0); + $6751 = HEAP8[$6750>>0]|0; + $6752 = $6751&255; + $6753 = $2; + $6754 = ((($6753)) + 16|0); + $6755 = HEAP8[$6754>>0]|0; + $6756 = $6755&255; + $6757 = $6752 ^ $6756; + $6758 = (45248 + ($6757)|0); + $6759 = HEAP8[$6758>>0]|0; + $6760 = $6759&255; + $6761 = $2; + $6762 = ((($6761)) + 8|0); + $6763 = HEAP8[$6762>>0]|0; + $6764 = $6763&255; + $6765 = $6760 ^ $6764; + $6766 = (45248 + ($6765)|0); + $6767 = HEAP8[$6766>>0]|0; + $6768 = $6767&255; + $6769 = $2; + $6770 = HEAP8[$6769>>0]|0; + $6771 = $6770&255; + $6772 = $6768 ^ $6771; + $6773 = (8376 + ($6772<<2)|0); + $6774 = HEAP32[$6773>>2]|0; + $6775 = $2; + $6776 = ((($6775)) + 25|0); + $6777 = HEAP8[$6776>>0]|0; + $6778 = $6777&255; + $6779 = 132 ^ $6778; + $6780 = (44992 + ($6779)|0); + $6781 = HEAP8[$6780>>0]|0; + $6782 = $6781&255; + $6783 = $2; + $6784 = ((($6783)) + 17|0); + $6785 = HEAP8[$6784>>0]|0; + $6786 = $6785&255; + $6787 = $6782 ^ $6786; + $6788 = (44992 + ($6787)|0); + $6789 = HEAP8[$6788>>0]|0; + $6790 = $6789&255; + $6791 = $2; + $6792 = ((($6791)) + 9|0); + $6793 = HEAP8[$6792>>0]|0; + $6794 = $6793&255; + $6795 = $6790 ^ $6794; + $6796 = (45248 + ($6795)|0); + $6797 = HEAP8[$6796>>0]|0; + $6798 = $6797&255; + $6799 = $2; + $6800 = ((($6799)) + 1|0); + $6801 = HEAP8[$6800>>0]|0; + $6802 = $6801&255; + $6803 = $6798 ^ $6802; + $6804 = ((9400) + ($6803<<2)|0); + $6805 = HEAP32[$6804>>2]|0; + $6806 = $6774 ^ $6805; + $6807 = $2; + $6808 = ((($6807)) + 26|0); + $6809 = HEAP8[$6808>>0]|0; + $6810 = $6809&255; + $6811 = 132 ^ $6810; + $6812 = (45248 + ($6811)|0); + $6813 = HEAP8[$6812>>0]|0; + $6814 = $6813&255; + $6815 = $2; + $6816 = ((($6815)) + 18|0); + $6817 = HEAP8[$6816>>0]|0; + $6818 = $6817&255; + $6819 = $6814 ^ $6818; + $6820 = (45248 + ($6819)|0); + $6821 = HEAP8[$6820>>0]|0; + $6822 = $6821&255; + $6823 = $2; + $6824 = ((($6823)) + 10|0); + $6825 = HEAP8[$6824>>0]|0; + $6826 = $6825&255; + $6827 = $6822 ^ $6826; + $6828 = (44992 + ($6827)|0); + $6829 = HEAP8[$6828>>0]|0; + $6830 = $6829&255; + $6831 = $2; + $6832 = ((($6831)) + 2|0); + $6833 = HEAP8[$6832>>0]|0; + $6834 = $6833&255; + $6835 = $6830 ^ $6834; + $6836 = ((10424) + ($6835<<2)|0); + $6837 = HEAP32[$6836>>2]|0; + $6838 = $6806 ^ $6837; + $6839 = $2; + $6840 = ((($6839)) + 27|0); + $6841 = HEAP8[$6840>>0]|0; + $6842 = $6841&255; + $6843 = 138 ^ $6842; + $6844 = (45248 + ($6843)|0); + $6845 = HEAP8[$6844>>0]|0; + $6846 = $6845&255; + $6847 = $2; + $6848 = ((($6847)) + 19|0); + $6849 = HEAP8[$6848>>0]|0; + $6850 = $6849&255; + $6851 = $6846 ^ $6850; + $6852 = (44992 + ($6851)|0); + $6853 = HEAP8[$6852>>0]|0; + $6854 = $6853&255; + $6855 = $2; + $6856 = ((($6855)) + 11|0); + $6857 = HEAP8[$6856>>0]|0; + $6858 = $6857&255; + $6859 = $6854 ^ $6858; + $6860 = (44992 + ($6859)|0); + $6861 = HEAP8[$6860>>0]|0; + $6862 = $6861&255; + $6863 = $2; + $6864 = ((($6863)) + 3|0); + $6865 = HEAP8[$6864>>0]|0; + $6866 = $6865&255; + $6867 = $6862 ^ $6866; + $6868 = ((11448) + ($6867<<2)|0); + $6869 = HEAP32[$6868>>2]|0; + $6870 = $6838 ^ $6869; + $x = $6870; + $6871 = $2; + $6872 = ((($6871)) + 28|0); + $6873 = HEAP8[$6872>>0]|0; + $6874 = $6873&255; + $6875 = 0 ^ $6874; + $6876 = (44992 + ($6875)|0); + $6877 = HEAP8[$6876>>0]|0; + $6878 = $6877&255; + $6879 = $2; + $6880 = ((($6879)) + 20|0); + $6881 = HEAP8[$6880>>0]|0; + $6882 = $6881&255; + $6883 = $6878 ^ $6882; + $6884 = (45248 + ($6883)|0); + $6885 = HEAP8[$6884>>0]|0; + $6886 = $6885&255; + $6887 = $2; + $6888 = ((($6887)) + 12|0); + $6889 = HEAP8[$6888>>0]|0; + $6890 = $6889&255; + $6891 = $6886 ^ $6890; + $6892 = (45248 + ($6891)|0); + $6893 = HEAP8[$6892>>0]|0; + $6894 = $6893&255; + $6895 = $2; + $6896 = ((($6895)) + 4|0); + $6897 = HEAP8[$6896>>0]|0; + $6898 = $6897&255; + $6899 = $6894 ^ $6898; + $6900 = (8376 + ($6899<<2)|0); + $6901 = HEAP32[$6900>>2]|0; + $6902 = $2; + $6903 = ((($6902)) + 29|0); + $6904 = HEAP8[$6903>>0]|0; + $6905 = $6904&255; + $6906 = 84 ^ $6905; + $6907 = (44992 + ($6906)|0); + $6908 = HEAP8[$6907>>0]|0; + $6909 = $6908&255; + $6910 = $2; + $6911 = ((($6910)) + 21|0); + $6912 = HEAP8[$6911>>0]|0; + $6913 = $6912&255; + $6914 = $6909 ^ $6913; + $6915 = (44992 + ($6914)|0); + $6916 = HEAP8[$6915>>0]|0; + $6917 = $6916&255; + $6918 = $2; + $6919 = ((($6918)) + 13|0); + $6920 = HEAP8[$6919>>0]|0; + $6921 = $6920&255; + $6922 = $6917 ^ $6921; + $6923 = (45248 + ($6922)|0); + $6924 = HEAP8[$6923>>0]|0; + $6925 = $6924&255; + $6926 = $2; + $6927 = ((($6926)) + 5|0); + $6928 = HEAP8[$6927>>0]|0; + $6929 = $6928&255; + $6930 = $6925 ^ $6929; + $6931 = ((9400) + ($6930<<2)|0); + $6932 = HEAP32[$6931>>2]|0; + $6933 = $6901 ^ $6932; + $6934 = $2; + $6935 = ((($6934)) + 30|0); + $6936 = HEAP8[$6935>>0]|0; + $6937 = $6936&255; + $6938 = 84 ^ $6937; + $6939 = (45248 + ($6938)|0); + $6940 = HEAP8[$6939>>0]|0; + $6941 = $6940&255; + $6942 = $2; + $6943 = ((($6942)) + 22|0); + $6944 = HEAP8[$6943>>0]|0; + $6945 = $6944&255; + $6946 = $6941 ^ $6945; + $6947 = (45248 + ($6946)|0); + $6948 = HEAP8[$6947>>0]|0; + $6949 = $6948&255; + $6950 = $2; + $6951 = ((($6950)) + 14|0); + $6952 = HEAP8[$6951>>0]|0; + $6953 = $6952&255; + $6954 = $6949 ^ $6953; + $6955 = (44992 + ($6954)|0); + $6956 = HEAP8[$6955>>0]|0; + $6957 = $6956&255; + $6958 = $2; + $6959 = ((($6958)) + 6|0); + $6960 = HEAP8[$6959>>0]|0; + $6961 = $6960&255; + $6962 = $6957 ^ $6961; + $6963 = ((10424) + ($6962<<2)|0); + $6964 = HEAP32[$6963>>2]|0; + $6965 = $6933 ^ $6964; + $6966 = $2; + $6967 = ((($6966)) + 31|0); + $6968 = HEAP8[$6967>>0]|0; + $6969 = $6968&255; + $6970 = 0 ^ $6969; + $6971 = (45248 + ($6970)|0); + $6972 = HEAP8[$6971>>0]|0; + $6973 = $6972&255; + $6974 = $2; + $6975 = ((($6974)) + 23|0); + $6976 = HEAP8[$6975>>0]|0; + $6977 = $6976&255; + $6978 = $6973 ^ $6977; + $6979 = (44992 + ($6978)|0); + $6980 = HEAP8[$6979>>0]|0; + $6981 = $6980&255; + $6982 = $2; + $6983 = ((($6982)) + 15|0); + $6984 = HEAP8[$6983>>0]|0; + $6985 = $6984&255; + $6986 = $6981 ^ $6985; + $6987 = (44992 + ($6986)|0); + $6988 = HEAP8[$6987>>0]|0; + $6989 = $6988&255; + $6990 = $2; + $6991 = ((($6990)) + 7|0); + $6992 = HEAP8[$6991>>0]|0; + $6993 = $6992&255; + $6994 = $6989 ^ $6993; + $6995 = ((11448) + ($6994<<2)|0); + $6996 = HEAP32[$6995>>2]|0; + $6997 = $6965 ^ $6996; + $y = $6997; + $6998 = $y; + $6999 = $6998 << 8; + $7000 = $y; + $7001 = $7000 >>> 24; + $7002 = (($6999) + ($7001))|0; + $y = $7002; + $7003 = $y; + $7004 = $x; + $7005 = (($7004) + ($7003))|0; + $x = $7005; + $7006 = $x; + $7007 = $y; + $7008 = (($7007) + ($7006))|0; + $y = $7008; + $7009 = $x; + $7010 = $1; + $7011 = ((($7010)) + 4128|0); + $7012 = ((($7011)) + 112|0); + HEAP32[$7012>>2] = $7009; + $7013 = $y; + $7014 = $7013 << 9; + $7015 = $y; + $7016 = $7015 >>> 23; + $7017 = (($7014) + ($7016))|0; + $7018 = $1; + $7019 = ((($7018)) + 4128|0); + $7020 = ((($7019)) + 116|0); + HEAP32[$7020>>2] = $7017; + $7021 = $2; + $7022 = ((($7021)) + 24|0); + $7023 = HEAP8[$7022>>0]|0; + $7024 = $7023&255; + $7025 = 188 ^ $7024; + $7026 = (44992 + ($7025)|0); + $7027 = HEAP8[$7026>>0]|0; + $7028 = $7027&255; + $7029 = $2; + $7030 = ((($7029)) + 16|0); + $7031 = HEAP8[$7030>>0]|0; + $7032 = $7031&255; + $7033 = $7028 ^ $7032; + $7034 = (45248 + ($7033)|0); + $7035 = HEAP8[$7034>>0]|0; + $7036 = $7035&255; + $7037 = $2; + $7038 = ((($7037)) + 8|0); + $7039 = HEAP8[$7038>>0]|0; + $7040 = $7039&255; + $7041 = $7036 ^ $7040; + $7042 = (45248 + ($7041)|0); + $7043 = HEAP8[$7042>>0]|0; + $7044 = $7043&255; + $7045 = $2; + $7046 = HEAP8[$7045>>0]|0; + $7047 = $7046&255; + $7048 = $7044 ^ $7047; + $7049 = (8376 + ($7048<<2)|0); + $7050 = HEAP32[$7049>>2]|0; + $7051 = $2; + $7052 = ((($7051)) + 25|0); + $7053 = HEAP8[$7052>>0]|0; + $7054 = $7053&255; + $7055 = 223 ^ $7054; + $7056 = (44992 + ($7055)|0); + $7057 = HEAP8[$7056>>0]|0; + $7058 = $7057&255; + $7059 = $2; + $7060 = ((($7059)) + 17|0); + $7061 = HEAP8[$7060>>0]|0; + $7062 = $7061&255; + $7063 = $7058 ^ $7062; + $7064 = (44992 + ($7063)|0); + $7065 = HEAP8[$7064>>0]|0; + $7066 = $7065&255; + $7067 = $2; + $7068 = ((($7067)) + 9|0); + $7069 = HEAP8[$7068>>0]|0; + $7070 = $7069&255; + $7071 = $7066 ^ $7070; + $7072 = (45248 + ($7071)|0); + $7073 = HEAP8[$7072>>0]|0; + $7074 = $7073&255; + $7075 = $2; + $7076 = ((($7075)) + 1|0); + $7077 = HEAP8[$7076>>0]|0; + $7078 = $7077&255; + $7079 = $7074 ^ $7078; + $7080 = ((9400) + ($7079<<2)|0); + $7081 = HEAP32[$7080>>2]|0; + $7082 = $7050 ^ $7081; + $7083 = $2; + $7084 = ((($7083)) + 26|0); + $7085 = HEAP8[$7084>>0]|0; + $7086 = $7085&255; + $7087 = 223 ^ $7086; + $7088 = (45248 + ($7087)|0); + $7089 = HEAP8[$7088>>0]|0; + $7090 = $7089&255; + $7091 = $2; + $7092 = ((($7091)) + 18|0); + $7093 = HEAP8[$7092>>0]|0; + $7094 = $7093&255; + $7095 = $7090 ^ $7094; + $7096 = (45248 + ($7095)|0); + $7097 = HEAP8[$7096>>0]|0; + $7098 = $7097&255; + $7099 = $2; + $7100 = ((($7099)) + 10|0); + $7101 = HEAP8[$7100>>0]|0; + $7102 = $7101&255; + $7103 = $7098 ^ $7102; + $7104 = (44992 + ($7103)|0); + $7105 = HEAP8[$7104>>0]|0; + $7106 = $7105&255; + $7107 = $2; + $7108 = ((($7107)) + 2|0); + $7109 = HEAP8[$7108>>0]|0; + $7110 = $7109&255; + $7111 = $7106 ^ $7110; + $7112 = ((10424) + ($7111<<2)|0); + $7113 = HEAP32[$7112>>2]|0; + $7114 = $7082 ^ $7113; + $7115 = $2; + $7116 = ((($7115)) + 27|0); + $7117 = HEAP8[$7116>>0]|0; + $7118 = $7117&255; + $7119 = 188 ^ $7118; + $7120 = (45248 + ($7119)|0); + $7121 = HEAP8[$7120>>0]|0; + $7122 = $7121&255; + $7123 = $2; + $7124 = ((($7123)) + 19|0); + $7125 = HEAP8[$7124>>0]|0; + $7126 = $7125&255; + $7127 = $7122 ^ $7126; + $7128 = (44992 + ($7127)|0); + $7129 = HEAP8[$7128>>0]|0; + $7130 = $7129&255; + $7131 = $2; + $7132 = ((($7131)) + 11|0); + $7133 = HEAP8[$7132>>0]|0; + $7134 = $7133&255; + $7135 = $7130 ^ $7134; + $7136 = (44992 + ($7135)|0); + $7137 = HEAP8[$7136>>0]|0; + $7138 = $7137&255; + $7139 = $2; + $7140 = ((($7139)) + 3|0); + $7141 = HEAP8[$7140>>0]|0; + $7142 = $7141&255; + $7143 = $7138 ^ $7142; + $7144 = ((11448) + ($7143<<2)|0); + $7145 = HEAP32[$7144>>2]|0; + $7146 = $7114 ^ $7145; + $x = $7146; + $7147 = $2; + $7148 = ((($7147)) + 28|0); + $7149 = HEAP8[$7148>>0]|0; + $7150 = $7149&255; + $7151 = 157 ^ $7150; + $7152 = (44992 + ($7151)|0); + $7153 = HEAP8[$7152>>0]|0; + $7154 = $7153&255; + $7155 = $2; + $7156 = ((($7155)) + 20|0); + $7157 = HEAP8[$7156>>0]|0; + $7158 = $7157&255; + $7159 = $7154 ^ $7158; + $7160 = (45248 + ($7159)|0); + $7161 = HEAP8[$7160>>0]|0; + $7162 = $7161&255; + $7163 = $2; + $7164 = ((($7163)) + 12|0); + $7165 = HEAP8[$7164>>0]|0; + $7166 = $7165&255; + $7167 = $7162 ^ $7166; + $7168 = (45248 + ($7167)|0); + $7169 = HEAP8[$7168>>0]|0; + $7170 = $7169&255; + $7171 = $2; + $7172 = ((($7171)) + 4|0); + $7173 = HEAP8[$7172>>0]|0; + $7174 = $7173&255; + $7175 = $7170 ^ $7174; + $7176 = (8376 + ($7175<<2)|0); + $7177 = HEAP32[$7176>>2]|0; + $7178 = $2; + $7179 = ((($7178)) + 29|0); + $7180 = HEAP8[$7179>>0]|0; + $7181 = $7180&255; + $7182 = 35 ^ $7181; + $7183 = (44992 + ($7182)|0); + $7184 = HEAP8[$7183>>0]|0; + $7185 = $7184&255; + $7186 = $2; + $7187 = ((($7186)) + 21|0); + $7188 = HEAP8[$7187>>0]|0; + $7189 = $7188&255; + $7190 = $7185 ^ $7189; + $7191 = (44992 + ($7190)|0); + $7192 = HEAP8[$7191>>0]|0; + $7193 = $7192&255; + $7194 = $2; + $7195 = ((($7194)) + 13|0); + $7196 = HEAP8[$7195>>0]|0; + $7197 = $7196&255; + $7198 = $7193 ^ $7197; + $7199 = (45248 + ($7198)|0); + $7200 = HEAP8[$7199>>0]|0; + $7201 = $7200&255; + $7202 = $2; + $7203 = ((($7202)) + 5|0); + $7204 = HEAP8[$7203>>0]|0; + $7205 = $7204&255; + $7206 = $7201 ^ $7205; + $7207 = ((9400) + ($7206<<2)|0); + $7208 = HEAP32[$7207>>2]|0; + $7209 = $7177 ^ $7208; + $7210 = $2; + $7211 = ((($7210)) + 30|0); + $7212 = HEAP8[$7211>>0]|0; + $7213 = $7212&255; + $7214 = 35 ^ $7213; + $7215 = (45248 + ($7214)|0); + $7216 = HEAP8[$7215>>0]|0; + $7217 = $7216&255; + $7218 = $2; + $7219 = ((($7218)) + 22|0); + $7220 = HEAP8[$7219>>0]|0; + $7221 = $7220&255; + $7222 = $7217 ^ $7221; + $7223 = (45248 + ($7222)|0); + $7224 = HEAP8[$7223>>0]|0; + $7225 = $7224&255; + $7226 = $2; + $7227 = ((($7226)) + 14|0); + $7228 = HEAP8[$7227>>0]|0; + $7229 = $7228&255; + $7230 = $7225 ^ $7229; + $7231 = (44992 + ($7230)|0); + $7232 = HEAP8[$7231>>0]|0; + $7233 = $7232&255; + $7234 = $2; + $7235 = ((($7234)) + 6|0); + $7236 = HEAP8[$7235>>0]|0; + $7237 = $7236&255; + $7238 = $7233 ^ $7237; + $7239 = ((10424) + ($7238<<2)|0); + $7240 = HEAP32[$7239>>2]|0; + $7241 = $7209 ^ $7240; + $7242 = $2; + $7243 = ((($7242)) + 31|0); + $7244 = HEAP8[$7243>>0]|0; + $7245 = $7244&255; + $7246 = 157 ^ $7245; + $7247 = (45248 + ($7246)|0); + $7248 = HEAP8[$7247>>0]|0; + $7249 = $7248&255; + $7250 = $2; + $7251 = ((($7250)) + 23|0); + $7252 = HEAP8[$7251>>0]|0; + $7253 = $7252&255; + $7254 = $7249 ^ $7253; + $7255 = (44992 + ($7254)|0); + $7256 = HEAP8[$7255>>0]|0; + $7257 = $7256&255; + $7258 = $2; + $7259 = ((($7258)) + 15|0); + $7260 = HEAP8[$7259>>0]|0; + $7261 = $7260&255; + $7262 = $7257 ^ $7261; + $7263 = (44992 + ($7262)|0); + $7264 = HEAP8[$7263>>0]|0; + $7265 = $7264&255; + $7266 = $2; + $7267 = ((($7266)) + 7|0); + $7268 = HEAP8[$7267>>0]|0; + $7269 = $7268&255; + $7270 = $7265 ^ $7269; + $7271 = ((11448) + ($7270<<2)|0); + $7272 = HEAP32[$7271>>2]|0; + $7273 = $7241 ^ $7272; + $y = $7273; + $7274 = $y; + $7275 = $7274 << 8; + $7276 = $y; + $7277 = $7276 >>> 24; + $7278 = (($7275) + ($7277))|0; + $y = $7278; + $7279 = $y; + $7280 = $x; + $7281 = (($7280) + ($7279))|0; + $x = $7281; + $7282 = $x; + $7283 = $y; + $7284 = (($7283) + ($7282))|0; + $y = $7284; + $7285 = $x; + $7286 = $1; + $7287 = ((($7286)) + 4128|0); + $7288 = ((($7287)) + 120|0); + HEAP32[$7288>>2] = $7285; + $7289 = $y; + $7290 = $7289 << 9; + $7291 = $y; + $7292 = $7291 >>> 23; + $7293 = (($7290) + ($7292))|0; + $7294 = $1; + $7295 = ((($7294)) + 4128|0); + $7296 = ((($7295)) + 124|0); + HEAP32[$7296>>2] = $7293; + } else { + $j = 0; + $i = 0; + $k = 1; + while(1) { + $7297 = $i; + $7298 = ($7297|0)<(256); + if (!($7298)) { + break; + } + $7299 = $j; + $7300 = (44480 + ($7299)|0); + $7301 = HEAP8[$7300>>0]|0; + $7302 = $7301&255; + $7303 = $sa; + $7304 = $7303&255; + $7305 = $7302 ^ $7304; + $7306 = (45248 + ($7305)|0); + $7307 = HEAP8[$7306>>0]|0; + $7308 = $7307&255; + $7309 = $se; + $7310 = $7309&255; + $7311 = $7308 ^ $7310; + $7312 = (8376 + ($7311<<2)|0); + $7313 = HEAP32[$7312>>2]|0; + $7314 = $i; + $7315 = $1; + $7316 = (($7315) + ($7314<<2)|0); + HEAP32[$7316>>2] = $7313; + $7317 = $k; + $7318 = (44480 + ($7317)|0); + $7319 = HEAP8[$7318>>0]|0; + $7320 = $7319&255; + $7321 = $sb; + $7322 = $7321&255; + $7323 = $7320 ^ $7322; + $7324 = (45248 + ($7323)|0); + $7325 = HEAP8[$7324>>0]|0; + $7326 = $7325&255; + $7327 = $sf; + $7328 = $7327&255; + $7329 = $7326 ^ $7328; + $7330 = ((9400) + ($7329<<2)|0); + $7331 = HEAP32[$7330>>2]|0; + $7332 = $i; + $7333 = $1; + $7334 = ((($7333)) + 1024|0); + $7335 = (($7334) + ($7332<<2)|0); + HEAP32[$7335>>2] = $7331; + $7336 = $j; + $7337 = (44480 + ($7336)|0); + $7338 = HEAP8[$7337>>0]|0; + $7339 = $7338&255; + $7340 = $sc; + $7341 = $7340&255; + $7342 = $7339 ^ $7341; + $7343 = (44992 + ($7342)|0); + $7344 = HEAP8[$7343>>0]|0; + $7345 = $7344&255; + $7346 = $sg; + $7347 = $7346&255; + $7348 = $7345 ^ $7347; + $7349 = ((10424) + ($7348<<2)|0); + $7350 = HEAP32[$7349>>2]|0; + $7351 = $i; + $7352 = $1; + $7353 = ((($7352)) + 2048|0); + $7354 = (($7353) + ($7351<<2)|0); + HEAP32[$7354>>2] = $7350; + $7355 = $k; + $7356 = (44480 + ($7355)|0); + $7357 = HEAP8[$7356>>0]|0; + $7358 = $7357&255; + $7359 = $sd; + $7360 = $7359&255; + $7361 = $7358 ^ $7360; + $7362 = (44992 + ($7361)|0); + $7363 = HEAP8[$7362>>0]|0; + $7364 = $7363&255; + $7365 = $sh; + $7366 = $7365&255; + $7367 = $7364 ^ $7366; + $7368 = ((11448) + ($7367<<2)|0); + $7369 = HEAP32[$7368>>2]|0; + $7370 = $i; + $7371 = $1; + $7372 = ((($7371)) + 3072|0); + $7373 = (($7372) + ($7370<<2)|0); + HEAP32[$7373>>2] = $7369; + $7374 = $i; + $7375 = (($7374) + 1)|0; + $i = $7375; + $7376 = $j; + $7377 = (($7376) + 2)|0; + $j = $7377; + $7378 = $k; + $7379 = (($7378) + 2)|0; + $k = $7379; + } + $7380 = $2; + $7381 = ((($7380)) + 8|0); + $7382 = HEAP8[$7381>>0]|0; + $7383 = $7382&255; + $7384 = 169 ^ $7383; + $7385 = (45248 + ($7384)|0); + $7386 = HEAP8[$7385>>0]|0; + $7387 = $7386&255; + $7388 = $2; + $7389 = HEAP8[$7388>>0]|0; + $7390 = $7389&255; + $7391 = $7387 ^ $7390; + $7392 = (8376 + ($7391<<2)|0); + $7393 = HEAP32[$7392>>2]|0; + $7394 = $2; + $7395 = ((($7394)) + 9|0); + $7396 = HEAP8[$7395>>0]|0; + $7397 = $7396&255; + $7398 = 117 ^ $7397; + $7399 = (45248 + ($7398)|0); + $7400 = HEAP8[$7399>>0]|0; + $7401 = $7400&255; + $7402 = $2; + $7403 = ((($7402)) + 1|0); + $7404 = HEAP8[$7403>>0]|0; + $7405 = $7404&255; + $7406 = $7401 ^ $7405; + $7407 = ((9400) + ($7406<<2)|0); + $7408 = HEAP32[$7407>>2]|0; + $7409 = $7393 ^ $7408; + $7410 = $2; + $7411 = ((($7410)) + 10|0); + $7412 = HEAP8[$7411>>0]|0; + $7413 = $7412&255; + $7414 = 169 ^ $7413; + $7415 = (44992 + ($7414)|0); + $7416 = HEAP8[$7415>>0]|0; + $7417 = $7416&255; + $7418 = $2; + $7419 = ((($7418)) + 2|0); + $7420 = HEAP8[$7419>>0]|0; + $7421 = $7420&255; + $7422 = $7417 ^ $7421; + $7423 = ((10424) + ($7422<<2)|0); + $7424 = HEAP32[$7423>>2]|0; + $7425 = $7409 ^ $7424; + $7426 = $2; + $7427 = ((($7426)) + 11|0); + $7428 = HEAP8[$7427>>0]|0; + $7429 = $7428&255; + $7430 = 117 ^ $7429; + $7431 = (44992 + ($7430)|0); + $7432 = HEAP8[$7431>>0]|0; + $7433 = $7432&255; + $7434 = $2; + $7435 = ((($7434)) + 3|0); + $7436 = HEAP8[$7435>>0]|0; + $7437 = $7436&255; + $7438 = $7433 ^ $7437; + $7439 = ((11448) + ($7438<<2)|0); + $7440 = HEAP32[$7439>>2]|0; + $7441 = $7425 ^ $7440; + $x = $7441; + $7442 = $2; + $7443 = ((($7442)) + 12|0); + $7444 = HEAP8[$7443>>0]|0; + $7445 = $7444&255; + $7446 = 103 ^ $7445; + $7447 = (45248 + ($7446)|0); + $7448 = HEAP8[$7447>>0]|0; + $7449 = $7448&255; + $7450 = $2; + $7451 = ((($7450)) + 4|0); + $7452 = HEAP8[$7451>>0]|0; + $7453 = $7452&255; + $7454 = $7449 ^ $7453; + $7455 = (8376 + ($7454<<2)|0); + $7456 = HEAP32[$7455>>2]|0; + $7457 = $2; + $7458 = ((($7457)) + 13|0); + $7459 = HEAP8[$7458>>0]|0; + $7460 = $7459&255; + $7461 = 243 ^ $7460; + $7462 = (45248 + ($7461)|0); + $7463 = HEAP8[$7462>>0]|0; + $7464 = $7463&255; + $7465 = $2; + $7466 = ((($7465)) + 5|0); + $7467 = HEAP8[$7466>>0]|0; + $7468 = $7467&255; + $7469 = $7464 ^ $7468; + $7470 = ((9400) + ($7469<<2)|0); + $7471 = HEAP32[$7470>>2]|0; + $7472 = $7456 ^ $7471; + $7473 = $2; + $7474 = ((($7473)) + 14|0); + $7475 = HEAP8[$7474>>0]|0; + $7476 = $7475&255; + $7477 = 103 ^ $7476; + $7478 = (44992 + ($7477)|0); + $7479 = HEAP8[$7478>>0]|0; + $7480 = $7479&255; + $7481 = $2; + $7482 = ((($7481)) + 6|0); + $7483 = HEAP8[$7482>>0]|0; + $7484 = $7483&255; + $7485 = $7480 ^ $7484; + $7486 = ((10424) + ($7485<<2)|0); + $7487 = HEAP32[$7486>>2]|0; + $7488 = $7472 ^ $7487; + $7489 = $2; + $7490 = ((($7489)) + 15|0); + $7491 = HEAP8[$7490>>0]|0; + $7492 = $7491&255; + $7493 = 243 ^ $7492; + $7494 = (44992 + ($7493)|0); + $7495 = HEAP8[$7494>>0]|0; + $7496 = $7495&255; + $7497 = $2; + $7498 = ((($7497)) + 7|0); + $7499 = HEAP8[$7498>>0]|0; + $7500 = $7499&255; + $7501 = $7496 ^ $7500; + $7502 = ((11448) + ($7501<<2)|0); + $7503 = HEAP32[$7502>>2]|0; + $7504 = $7488 ^ $7503; + $y = $7504; + $7505 = $y; + $7506 = $7505 << 8; + $7507 = $y; + $7508 = $7507 >>> 24; + $7509 = (($7506) + ($7508))|0; + $y = $7509; + $7510 = $y; + $7511 = $x; + $7512 = (($7511) + ($7510))|0; + $x = $7512; + $7513 = $x; + $7514 = $y; + $7515 = (($7514) + ($7513))|0; + $y = $7515; + $7516 = $x; + $7517 = $1; + $7518 = ((($7517)) + 4096|0); + HEAP32[$7518>>2] = $7516; + $7519 = $y; + $7520 = $7519 << 9; + $7521 = $y; + $7522 = $7521 >>> 23; + $7523 = (($7520) + ($7522))|0; + $7524 = $1; + $7525 = ((($7524)) + 4096|0); + $7526 = ((($7525)) + 4|0); + HEAP32[$7526>>2] = $7523; + $7527 = $2; + $7528 = ((($7527)) + 8|0); + $7529 = HEAP8[$7528>>0]|0; + $7530 = $7529&255; + $7531 = 179 ^ $7530; + $7532 = (45248 + ($7531)|0); + $7533 = HEAP8[$7532>>0]|0; + $7534 = $7533&255; + $7535 = $2; + $7536 = HEAP8[$7535>>0]|0; + $7537 = $7536&255; + $7538 = $7534 ^ $7537; + $7539 = (8376 + ($7538<<2)|0); + $7540 = HEAP32[$7539>>2]|0; + $7541 = $2; + $7542 = ((($7541)) + 9|0); + $7543 = HEAP8[$7542>>0]|0; + $7544 = $7543&255; + $7545 = 198 ^ $7544; + $7546 = (45248 + ($7545)|0); + $7547 = HEAP8[$7546>>0]|0; + $7548 = $7547&255; + $7549 = $2; + $7550 = ((($7549)) + 1|0); + $7551 = HEAP8[$7550>>0]|0; + $7552 = $7551&255; + $7553 = $7548 ^ $7552; + $7554 = ((9400) + ($7553<<2)|0); + $7555 = HEAP32[$7554>>2]|0; + $7556 = $7540 ^ $7555; + $7557 = $2; + $7558 = ((($7557)) + 10|0); + $7559 = HEAP8[$7558>>0]|0; + $7560 = $7559&255; + $7561 = 179 ^ $7560; + $7562 = (44992 + ($7561)|0); + $7563 = HEAP8[$7562>>0]|0; + $7564 = $7563&255; + $7565 = $2; + $7566 = ((($7565)) + 2|0); + $7567 = HEAP8[$7566>>0]|0; + $7568 = $7567&255; + $7569 = $7564 ^ $7568; + $7570 = ((10424) + ($7569<<2)|0); + $7571 = HEAP32[$7570>>2]|0; + $7572 = $7556 ^ $7571; + $7573 = $2; + $7574 = ((($7573)) + 11|0); + $7575 = HEAP8[$7574>>0]|0; + $7576 = $7575&255; + $7577 = 198 ^ $7576; + $7578 = (44992 + ($7577)|0); + $7579 = HEAP8[$7578>>0]|0; + $7580 = $7579&255; + $7581 = $2; + $7582 = ((($7581)) + 3|0); + $7583 = HEAP8[$7582>>0]|0; + $7584 = $7583&255; + $7585 = $7580 ^ $7584; + $7586 = ((11448) + ($7585<<2)|0); + $7587 = HEAP32[$7586>>2]|0; + $7588 = $7572 ^ $7587; + $x = $7588; + $7589 = $2; + $7590 = ((($7589)) + 12|0); + $7591 = HEAP8[$7590>>0]|0; + $7592 = $7591&255; + $7593 = 232 ^ $7592; + $7594 = (45248 + ($7593)|0); + $7595 = HEAP8[$7594>>0]|0; + $7596 = $7595&255; + $7597 = $2; + $7598 = ((($7597)) + 4|0); + $7599 = HEAP8[$7598>>0]|0; + $7600 = $7599&255; + $7601 = $7596 ^ $7600; + $7602 = (8376 + ($7601<<2)|0); + $7603 = HEAP32[$7602>>2]|0; + $7604 = $2; + $7605 = ((($7604)) + 13|0); + $7606 = HEAP8[$7605>>0]|0; + $7607 = $7606&255; + $7608 = 244 ^ $7607; + $7609 = (45248 + ($7608)|0); + $7610 = HEAP8[$7609>>0]|0; + $7611 = $7610&255; + $7612 = $2; + $7613 = ((($7612)) + 5|0); + $7614 = HEAP8[$7613>>0]|0; + $7615 = $7614&255; + $7616 = $7611 ^ $7615; + $7617 = ((9400) + ($7616<<2)|0); + $7618 = HEAP32[$7617>>2]|0; + $7619 = $7603 ^ $7618; + $7620 = $2; + $7621 = ((($7620)) + 14|0); + $7622 = HEAP8[$7621>>0]|0; + $7623 = $7622&255; + $7624 = 232 ^ $7623; + $7625 = (44992 + ($7624)|0); + $7626 = HEAP8[$7625>>0]|0; + $7627 = $7626&255; + $7628 = $2; + $7629 = ((($7628)) + 6|0); + $7630 = HEAP8[$7629>>0]|0; + $7631 = $7630&255; + $7632 = $7627 ^ $7631; + $7633 = ((10424) + ($7632<<2)|0); + $7634 = HEAP32[$7633>>2]|0; + $7635 = $7619 ^ $7634; + $7636 = $2; + $7637 = ((($7636)) + 15|0); + $7638 = HEAP8[$7637>>0]|0; + $7639 = $7638&255; + $7640 = 244 ^ $7639; + $7641 = (44992 + ($7640)|0); + $7642 = HEAP8[$7641>>0]|0; + $7643 = $7642&255; + $7644 = $2; + $7645 = ((($7644)) + 7|0); + $7646 = HEAP8[$7645>>0]|0; + $7647 = $7646&255; + $7648 = $7643 ^ $7647; + $7649 = ((11448) + ($7648<<2)|0); + $7650 = HEAP32[$7649>>2]|0; + $7651 = $7635 ^ $7650; + $y = $7651; + $7652 = $y; + $7653 = $7652 << 8; + $7654 = $y; + $7655 = $7654 >>> 24; + $7656 = (($7653) + ($7655))|0; + $y = $7656; + $7657 = $y; + $7658 = $x; + $7659 = (($7658) + ($7657))|0; + $x = $7659; + $7660 = $x; + $7661 = $y; + $7662 = (($7661) + ($7660))|0; + $y = $7662; + $7663 = $x; + $7664 = $1; + $7665 = ((($7664)) + 4096|0); + $7666 = ((($7665)) + 8|0); + HEAP32[$7666>>2] = $7663; + $7667 = $y; + $7668 = $7667 << 9; + $7669 = $y; + $7670 = $7669 >>> 23; + $7671 = (($7668) + ($7670))|0; + $7672 = $1; + $7673 = ((($7672)) + 4096|0); + $7674 = ((($7673)) + 12|0); + HEAP32[$7674>>2] = $7671; + $7675 = $2; + $7676 = ((($7675)) + 8|0); + $7677 = HEAP8[$7676>>0]|0; + $7678 = $7677&255; + $7679 = 4 ^ $7678; + $7680 = (45248 + ($7679)|0); + $7681 = HEAP8[$7680>>0]|0; + $7682 = $7681&255; + $7683 = $2; + $7684 = HEAP8[$7683>>0]|0; + $7685 = $7684&255; + $7686 = $7682 ^ $7685; + $7687 = (8376 + ($7686<<2)|0); + $7688 = HEAP32[$7687>>2]|0; + $7689 = $2; + $7690 = ((($7689)) + 9|0); + $7691 = HEAP8[$7690>>0]|0; + $7692 = $7691&255; + $7693 = 219 ^ $7692; + $7694 = (45248 + ($7693)|0); + $7695 = HEAP8[$7694>>0]|0; + $7696 = $7695&255; + $7697 = $2; + $7698 = ((($7697)) + 1|0); + $7699 = HEAP8[$7698>>0]|0; + $7700 = $7699&255; + $7701 = $7696 ^ $7700; + $7702 = ((9400) + ($7701<<2)|0); + $7703 = HEAP32[$7702>>2]|0; + $7704 = $7688 ^ $7703; + $7705 = $2; + $7706 = ((($7705)) + 10|0); + $7707 = HEAP8[$7706>>0]|0; + $7708 = $7707&255; + $7709 = 4 ^ $7708; + $7710 = (44992 + ($7709)|0); + $7711 = HEAP8[$7710>>0]|0; + $7712 = $7711&255; + $7713 = $2; + $7714 = ((($7713)) + 2|0); + $7715 = HEAP8[$7714>>0]|0; + $7716 = $7715&255; + $7717 = $7712 ^ $7716; + $7718 = ((10424) + ($7717<<2)|0); + $7719 = HEAP32[$7718>>2]|0; + $7720 = $7704 ^ $7719; + $7721 = $2; + $7722 = ((($7721)) + 11|0); + $7723 = HEAP8[$7722>>0]|0; + $7724 = $7723&255; + $7725 = 219 ^ $7724; + $7726 = (44992 + ($7725)|0); + $7727 = HEAP8[$7726>>0]|0; + $7728 = $7727&255; + $7729 = $2; + $7730 = ((($7729)) + 3|0); + $7731 = HEAP8[$7730>>0]|0; + $7732 = $7731&255; + $7733 = $7728 ^ $7732; + $7734 = ((11448) + ($7733<<2)|0); + $7735 = HEAP32[$7734>>2]|0; + $7736 = $7720 ^ $7735; + $x = $7736; + $7737 = $2; + $7738 = ((($7737)) + 12|0); + $7739 = HEAP8[$7738>>0]|0; + $7740 = $7739&255; + $7741 = 253 ^ $7740; + $7742 = (45248 + ($7741)|0); + $7743 = HEAP8[$7742>>0]|0; + $7744 = $7743&255; + $7745 = $2; + $7746 = ((($7745)) + 4|0); + $7747 = HEAP8[$7746>>0]|0; + $7748 = $7747&255; + $7749 = $7744 ^ $7748; + $7750 = (8376 + ($7749<<2)|0); + $7751 = HEAP32[$7750>>2]|0; + $7752 = $2; + $7753 = ((($7752)) + 13|0); + $7754 = HEAP8[$7753>>0]|0; + $7755 = $7754&255; + $7756 = 123 ^ $7755; + $7757 = (45248 + ($7756)|0); + $7758 = HEAP8[$7757>>0]|0; + $7759 = $7758&255; + $7760 = $2; + $7761 = ((($7760)) + 5|0); + $7762 = HEAP8[$7761>>0]|0; + $7763 = $7762&255; + $7764 = $7759 ^ $7763; + $7765 = ((9400) + ($7764<<2)|0); + $7766 = HEAP32[$7765>>2]|0; + $7767 = $7751 ^ $7766; + $7768 = $2; + $7769 = ((($7768)) + 14|0); + $7770 = HEAP8[$7769>>0]|0; + $7771 = $7770&255; + $7772 = 253 ^ $7771; + $7773 = (44992 + ($7772)|0); + $7774 = HEAP8[$7773>>0]|0; + $7775 = $7774&255; + $7776 = $2; + $7777 = ((($7776)) + 6|0); + $7778 = HEAP8[$7777>>0]|0; + $7779 = $7778&255; + $7780 = $7775 ^ $7779; + $7781 = ((10424) + ($7780<<2)|0); + $7782 = HEAP32[$7781>>2]|0; + $7783 = $7767 ^ $7782; + $7784 = $2; + $7785 = ((($7784)) + 15|0); + $7786 = HEAP8[$7785>>0]|0; + $7787 = $7786&255; + $7788 = 123 ^ $7787; + $7789 = (44992 + ($7788)|0); + $7790 = HEAP8[$7789>>0]|0; + $7791 = $7790&255; + $7792 = $2; + $7793 = ((($7792)) + 7|0); + $7794 = HEAP8[$7793>>0]|0; + $7795 = $7794&255; + $7796 = $7791 ^ $7795; + $7797 = ((11448) + ($7796<<2)|0); + $7798 = HEAP32[$7797>>2]|0; + $7799 = $7783 ^ $7798; + $y = $7799; + $7800 = $y; + $7801 = $7800 << 8; + $7802 = $y; + $7803 = $7802 >>> 24; + $7804 = (($7801) + ($7803))|0; + $y = $7804; + $7805 = $y; + $7806 = $x; + $7807 = (($7806) + ($7805))|0; + $x = $7807; + $7808 = $x; + $7809 = $y; + $7810 = (($7809) + ($7808))|0; + $y = $7810; + $7811 = $x; + $7812 = $1; + $7813 = ((($7812)) + 4096|0); + $7814 = ((($7813)) + 16|0); + HEAP32[$7814>>2] = $7811; + $7815 = $y; + $7816 = $7815 << 9; + $7817 = $y; + $7818 = $7817 >>> 23; + $7819 = (($7816) + ($7818))|0; + $7820 = $1; + $7821 = ((($7820)) + 4096|0); + $7822 = ((($7821)) + 20|0); + HEAP32[$7822>>2] = $7819; + $7823 = $2; + $7824 = ((($7823)) + 8|0); + $7825 = HEAP8[$7824>>0]|0; + $7826 = $7825&255; + $7827 = 163 ^ $7826; + $7828 = (45248 + ($7827)|0); + $7829 = HEAP8[$7828>>0]|0; + $7830 = $7829&255; + $7831 = $2; + $7832 = HEAP8[$7831>>0]|0; + $7833 = $7832&255; + $7834 = $7830 ^ $7833; + $7835 = (8376 + ($7834<<2)|0); + $7836 = HEAP32[$7835>>2]|0; + $7837 = $2; + $7838 = ((($7837)) + 9|0); + $7839 = HEAP8[$7838>>0]|0; + $7840 = $7839&255; + $7841 = 251 ^ $7840; + $7842 = (45248 + ($7841)|0); + $7843 = HEAP8[$7842>>0]|0; + $7844 = $7843&255; + $7845 = $2; + $7846 = ((($7845)) + 1|0); + $7847 = HEAP8[$7846>>0]|0; + $7848 = $7847&255; + $7849 = $7844 ^ $7848; + $7850 = ((9400) + ($7849<<2)|0); + $7851 = HEAP32[$7850>>2]|0; + $7852 = $7836 ^ $7851; + $7853 = $2; + $7854 = ((($7853)) + 10|0); + $7855 = HEAP8[$7854>>0]|0; + $7856 = $7855&255; + $7857 = 163 ^ $7856; + $7858 = (44992 + ($7857)|0); + $7859 = HEAP8[$7858>>0]|0; + $7860 = $7859&255; + $7861 = $2; + $7862 = ((($7861)) + 2|0); + $7863 = HEAP8[$7862>>0]|0; + $7864 = $7863&255; + $7865 = $7860 ^ $7864; + $7866 = ((10424) + ($7865<<2)|0); + $7867 = HEAP32[$7866>>2]|0; + $7868 = $7852 ^ $7867; + $7869 = $2; + $7870 = ((($7869)) + 11|0); + $7871 = HEAP8[$7870>>0]|0; + $7872 = $7871&255; + $7873 = 251 ^ $7872; + $7874 = (44992 + ($7873)|0); + $7875 = HEAP8[$7874>>0]|0; + $7876 = $7875&255; + $7877 = $2; + $7878 = ((($7877)) + 3|0); + $7879 = HEAP8[$7878>>0]|0; + $7880 = $7879&255; + $7881 = $7876 ^ $7880; + $7882 = ((11448) + ($7881<<2)|0); + $7883 = HEAP32[$7882>>2]|0; + $7884 = $7868 ^ $7883; + $x = $7884; + $7885 = $2; + $7886 = ((($7885)) + 12|0); + $7887 = HEAP8[$7886>>0]|0; + $7888 = $7887&255; + $7889 = 118 ^ $7888; + $7890 = (45248 + ($7889)|0); + $7891 = HEAP8[$7890>>0]|0; + $7892 = $7891&255; + $7893 = $2; + $7894 = ((($7893)) + 4|0); + $7895 = HEAP8[$7894>>0]|0; + $7896 = $7895&255; + $7897 = $7892 ^ $7896; + $7898 = (8376 + ($7897<<2)|0); + $7899 = HEAP32[$7898>>2]|0; + $7900 = $2; + $7901 = ((($7900)) + 13|0); + $7902 = HEAP8[$7901>>0]|0; + $7903 = $7902&255; + $7904 = 200 ^ $7903; + $7905 = (45248 + ($7904)|0); + $7906 = HEAP8[$7905>>0]|0; + $7907 = $7906&255; + $7908 = $2; + $7909 = ((($7908)) + 5|0); + $7910 = HEAP8[$7909>>0]|0; + $7911 = $7910&255; + $7912 = $7907 ^ $7911; + $7913 = ((9400) + ($7912<<2)|0); + $7914 = HEAP32[$7913>>2]|0; + $7915 = $7899 ^ $7914; + $7916 = $2; + $7917 = ((($7916)) + 14|0); + $7918 = HEAP8[$7917>>0]|0; + $7919 = $7918&255; + $7920 = 118 ^ $7919; + $7921 = (44992 + ($7920)|0); + $7922 = HEAP8[$7921>>0]|0; + $7923 = $7922&255; + $7924 = $2; + $7925 = ((($7924)) + 6|0); + $7926 = HEAP8[$7925>>0]|0; + $7927 = $7926&255; + $7928 = $7923 ^ $7927; + $7929 = ((10424) + ($7928<<2)|0); + $7930 = HEAP32[$7929>>2]|0; + $7931 = $7915 ^ $7930; + $7932 = $2; + $7933 = ((($7932)) + 15|0); + $7934 = HEAP8[$7933>>0]|0; + $7935 = $7934&255; + $7936 = 200 ^ $7935; + $7937 = (44992 + ($7936)|0); + $7938 = HEAP8[$7937>>0]|0; + $7939 = $7938&255; + $7940 = $2; + $7941 = ((($7940)) + 7|0); + $7942 = HEAP8[$7941>>0]|0; + $7943 = $7942&255; + $7944 = $7939 ^ $7943; + $7945 = ((11448) + ($7944<<2)|0); + $7946 = HEAP32[$7945>>2]|0; + $7947 = $7931 ^ $7946; + $y = $7947; + $7948 = $y; + $7949 = $7948 << 8; + $7950 = $y; + $7951 = $7950 >>> 24; + $7952 = (($7949) + ($7951))|0; + $y = $7952; + $7953 = $y; + $7954 = $x; + $7955 = (($7954) + ($7953))|0; + $x = $7955; + $7956 = $x; + $7957 = $y; + $7958 = (($7957) + ($7956))|0; + $y = $7958; + $7959 = $x; + $7960 = $1; + $7961 = ((($7960)) + 4096|0); + $7962 = ((($7961)) + 24|0); + HEAP32[$7962>>2] = $7959; + $7963 = $y; + $7964 = $7963 << 9; + $7965 = $y; + $7966 = $7965 >>> 23; + $7967 = (($7964) + ($7966))|0; + $7968 = $1; + $7969 = ((($7968)) + 4096|0); + $7970 = ((($7969)) + 28|0); + HEAP32[$7970>>2] = $7967; + $7971 = $2; + $7972 = ((($7971)) + 8|0); + $7973 = HEAP8[$7972>>0]|0; + $7974 = $7973&255; + $7975 = 154 ^ $7974; + $7976 = (45248 + ($7975)|0); + $7977 = HEAP8[$7976>>0]|0; + $7978 = $7977&255; + $7979 = $2; + $7980 = HEAP8[$7979>>0]|0; + $7981 = $7980&255; + $7982 = $7978 ^ $7981; + $7983 = (8376 + ($7982<<2)|0); + $7984 = HEAP32[$7983>>2]|0; + $7985 = $2; + $7986 = ((($7985)) + 9|0); + $7987 = HEAP8[$7986>>0]|0; + $7988 = $7987&255; + $7989 = 74 ^ $7988; + $7990 = (45248 + ($7989)|0); + $7991 = HEAP8[$7990>>0]|0; + $7992 = $7991&255; + $7993 = $2; + $7994 = ((($7993)) + 1|0); + $7995 = HEAP8[$7994>>0]|0; + $7996 = $7995&255; + $7997 = $7992 ^ $7996; + $7998 = ((9400) + ($7997<<2)|0); + $7999 = HEAP32[$7998>>2]|0; + $8000 = $7984 ^ $7999; + $8001 = $2; + $8002 = ((($8001)) + 10|0); + $8003 = HEAP8[$8002>>0]|0; + $8004 = $8003&255; + $8005 = 154 ^ $8004; + $8006 = (44992 + ($8005)|0); + $8007 = HEAP8[$8006>>0]|0; + $8008 = $8007&255; + $8009 = $2; + $8010 = ((($8009)) + 2|0); + $8011 = HEAP8[$8010>>0]|0; + $8012 = $8011&255; + $8013 = $8008 ^ $8012; + $8014 = ((10424) + ($8013<<2)|0); + $8015 = HEAP32[$8014>>2]|0; + $8016 = $8000 ^ $8015; + $8017 = $2; + $8018 = ((($8017)) + 11|0); + $8019 = HEAP8[$8018>>0]|0; + $8020 = $8019&255; + $8021 = 74 ^ $8020; + $8022 = (44992 + ($8021)|0); + $8023 = HEAP8[$8022>>0]|0; + $8024 = $8023&255; + $8025 = $2; + $8026 = ((($8025)) + 3|0); + $8027 = HEAP8[$8026>>0]|0; + $8028 = $8027&255; + $8029 = $8024 ^ $8028; + $8030 = ((11448) + ($8029<<2)|0); + $8031 = HEAP32[$8030>>2]|0; + $8032 = $8016 ^ $8031; + $x = $8032; + $8033 = $2; + $8034 = ((($8033)) + 12|0); + $8035 = HEAP8[$8034>>0]|0; + $8036 = $8035&255; + $8037 = 146 ^ $8036; + $8038 = (45248 + ($8037)|0); + $8039 = HEAP8[$8038>>0]|0; + $8040 = $8039&255; + $8041 = $2; + $8042 = ((($8041)) + 4|0); + $8043 = HEAP8[$8042>>0]|0; + $8044 = $8043&255; + $8045 = $8040 ^ $8044; + $8046 = (8376 + ($8045<<2)|0); + $8047 = HEAP32[$8046>>2]|0; + $8048 = $2; + $8049 = ((($8048)) + 13|0); + $8050 = HEAP8[$8049>>0]|0; + $8051 = $8050&255; + $8052 = 211 ^ $8051; + $8053 = (45248 + ($8052)|0); + $8054 = HEAP8[$8053>>0]|0; + $8055 = $8054&255; + $8056 = $2; + $8057 = ((($8056)) + 5|0); + $8058 = HEAP8[$8057>>0]|0; + $8059 = $8058&255; + $8060 = $8055 ^ $8059; + $8061 = ((9400) + ($8060<<2)|0); + $8062 = HEAP32[$8061>>2]|0; + $8063 = $8047 ^ $8062; + $8064 = $2; + $8065 = ((($8064)) + 14|0); + $8066 = HEAP8[$8065>>0]|0; + $8067 = $8066&255; + $8068 = 146 ^ $8067; + $8069 = (44992 + ($8068)|0); + $8070 = HEAP8[$8069>>0]|0; + $8071 = $8070&255; + $8072 = $2; + $8073 = ((($8072)) + 6|0); + $8074 = HEAP8[$8073>>0]|0; + $8075 = $8074&255; + $8076 = $8071 ^ $8075; + $8077 = ((10424) + ($8076<<2)|0); + $8078 = HEAP32[$8077>>2]|0; + $8079 = $8063 ^ $8078; + $8080 = $2; + $8081 = ((($8080)) + 15|0); + $8082 = HEAP8[$8081>>0]|0; + $8083 = $8082&255; + $8084 = 211 ^ $8083; + $8085 = (44992 + ($8084)|0); + $8086 = HEAP8[$8085>>0]|0; + $8087 = $8086&255; + $8088 = $2; + $8089 = ((($8088)) + 7|0); + $8090 = HEAP8[$8089>>0]|0; + $8091 = $8090&255; + $8092 = $8087 ^ $8091; + $8093 = ((11448) + ($8092<<2)|0); + $8094 = HEAP32[$8093>>2]|0; + $8095 = $8079 ^ $8094; + $y = $8095; + $8096 = $y; + $8097 = $8096 << 8; + $8098 = $y; + $8099 = $8098 >>> 24; + $8100 = (($8097) + ($8099))|0; + $y = $8100; + $8101 = $y; + $8102 = $x; + $8103 = (($8102) + ($8101))|0; + $x = $8103; + $8104 = $x; + $8105 = $y; + $8106 = (($8105) + ($8104))|0; + $y = $8106; + $8107 = $x; + $8108 = $1; + $8109 = ((($8108)) + 4128|0); + HEAP32[$8109>>2] = $8107; + $8110 = $y; + $8111 = $8110 << 9; + $8112 = $y; + $8113 = $8112 >>> 23; + $8114 = (($8111) + ($8113))|0; + $8115 = $1; + $8116 = ((($8115)) + 4128|0); + $8117 = ((($8116)) + 4|0); + HEAP32[$8117>>2] = $8114; + $8118 = $2; + $8119 = ((($8118)) + 8|0); + $8120 = HEAP8[$8119>>0]|0; + $8121 = $8120&255; + $8122 = 128 ^ $8121; + $8123 = (45248 + ($8122)|0); + $8124 = HEAP8[$8123>>0]|0; + $8125 = $8124&255; + $8126 = $2; + $8127 = HEAP8[$8126>>0]|0; + $8128 = $8127&255; + $8129 = $8125 ^ $8128; + $8130 = (8376 + ($8129<<2)|0); + $8131 = HEAP32[$8130>>2]|0; + $8132 = $2; + $8133 = ((($8132)) + 9|0); + $8134 = HEAP8[$8133>>0]|0; + $8135 = $8134&255; + $8136 = 230 ^ $8135; + $8137 = (45248 + ($8136)|0); + $8138 = HEAP8[$8137>>0]|0; + $8139 = $8138&255; + $8140 = $2; + $8141 = ((($8140)) + 1|0); + $8142 = HEAP8[$8141>>0]|0; + $8143 = $8142&255; + $8144 = $8139 ^ $8143; + $8145 = ((9400) + ($8144<<2)|0); + $8146 = HEAP32[$8145>>2]|0; + $8147 = $8131 ^ $8146; + $8148 = $2; + $8149 = ((($8148)) + 10|0); + $8150 = HEAP8[$8149>>0]|0; + $8151 = $8150&255; + $8152 = 128 ^ $8151; + $8153 = (44992 + ($8152)|0); + $8154 = HEAP8[$8153>>0]|0; + $8155 = $8154&255; + $8156 = $2; + $8157 = ((($8156)) + 2|0); + $8158 = HEAP8[$8157>>0]|0; + $8159 = $8158&255; + $8160 = $8155 ^ $8159; + $8161 = ((10424) + ($8160<<2)|0); + $8162 = HEAP32[$8161>>2]|0; + $8163 = $8147 ^ $8162; + $8164 = $2; + $8165 = ((($8164)) + 11|0); + $8166 = HEAP8[$8165>>0]|0; + $8167 = $8166&255; + $8168 = 230 ^ $8167; + $8169 = (44992 + ($8168)|0); + $8170 = HEAP8[$8169>>0]|0; + $8171 = $8170&255; + $8172 = $2; + $8173 = ((($8172)) + 3|0); + $8174 = HEAP8[$8173>>0]|0; + $8175 = $8174&255; + $8176 = $8171 ^ $8175; + $8177 = ((11448) + ($8176<<2)|0); + $8178 = HEAP32[$8177>>2]|0; + $8179 = $8163 ^ $8178; + $x = $8179; + $8180 = $2; + $8181 = ((($8180)) + 12|0); + $8182 = HEAP8[$8181>>0]|0; + $8183 = $8182&255; + $8184 = 120 ^ $8183; + $8185 = (45248 + ($8184)|0); + $8186 = HEAP8[$8185>>0]|0; + $8187 = $8186&255; + $8188 = $2; + $8189 = ((($8188)) + 4|0); + $8190 = HEAP8[$8189>>0]|0; + $8191 = $8190&255; + $8192 = $8187 ^ $8191; + $8193 = (8376 + ($8192<<2)|0); + $8194 = HEAP32[$8193>>2]|0; + $8195 = $2; + $8196 = ((($8195)) + 13|0); + $8197 = HEAP8[$8196>>0]|0; + $8198 = $8197&255; + $8199 = 107 ^ $8198; + $8200 = (45248 + ($8199)|0); + $8201 = HEAP8[$8200>>0]|0; + $8202 = $8201&255; + $8203 = $2; + $8204 = ((($8203)) + 5|0); + $8205 = HEAP8[$8204>>0]|0; + $8206 = $8205&255; + $8207 = $8202 ^ $8206; + $8208 = ((9400) + ($8207<<2)|0); + $8209 = HEAP32[$8208>>2]|0; + $8210 = $8194 ^ $8209; + $8211 = $2; + $8212 = ((($8211)) + 14|0); + $8213 = HEAP8[$8212>>0]|0; + $8214 = $8213&255; + $8215 = 120 ^ $8214; + $8216 = (44992 + ($8215)|0); + $8217 = HEAP8[$8216>>0]|0; + $8218 = $8217&255; + $8219 = $2; + $8220 = ((($8219)) + 6|0); + $8221 = HEAP8[$8220>>0]|0; + $8222 = $8221&255; + $8223 = $8218 ^ $8222; + $8224 = ((10424) + ($8223<<2)|0); + $8225 = HEAP32[$8224>>2]|0; + $8226 = $8210 ^ $8225; + $8227 = $2; + $8228 = ((($8227)) + 15|0); + $8229 = HEAP8[$8228>>0]|0; + $8230 = $8229&255; + $8231 = 107 ^ $8230; + $8232 = (44992 + ($8231)|0); + $8233 = HEAP8[$8232>>0]|0; + $8234 = $8233&255; + $8235 = $2; + $8236 = ((($8235)) + 7|0); + $8237 = HEAP8[$8236>>0]|0; + $8238 = $8237&255; + $8239 = $8234 ^ $8238; + $8240 = ((11448) + ($8239<<2)|0); + $8241 = HEAP32[$8240>>2]|0; + $8242 = $8226 ^ $8241; + $y = $8242; + $8243 = $y; + $8244 = $8243 << 8; + $8245 = $y; + $8246 = $8245 >>> 24; + $8247 = (($8244) + ($8246))|0; + $y = $8247; + $8248 = $y; + $8249 = $x; + $8250 = (($8249) + ($8248))|0; + $x = $8250; + $8251 = $x; + $8252 = $y; + $8253 = (($8252) + ($8251))|0; + $y = $8253; + $8254 = $x; + $8255 = $1; + $8256 = ((($8255)) + 4128|0); + $8257 = ((($8256)) + 8|0); + HEAP32[$8257>>2] = $8254; + $8258 = $y; + $8259 = $8258 << 9; + $8260 = $y; + $8261 = $8260 >>> 23; + $8262 = (($8259) + ($8261))|0; + $8263 = $1; + $8264 = ((($8263)) + 4128|0); + $8265 = ((($8264)) + 12|0); + HEAP32[$8265>>2] = $8262; + $8266 = $2; + $8267 = ((($8266)) + 8|0); + $8268 = HEAP8[$8267>>0]|0; + $8269 = $8268&255; + $8270 = 228 ^ $8269; + $8271 = (45248 + ($8270)|0); + $8272 = HEAP8[$8271>>0]|0; + $8273 = $8272&255; + $8274 = $2; + $8275 = HEAP8[$8274>>0]|0; + $8276 = $8275&255; + $8277 = $8273 ^ $8276; + $8278 = (8376 + ($8277<<2)|0); + $8279 = HEAP32[$8278>>2]|0; + $8280 = $2; + $8281 = ((($8280)) + 9|0); + $8282 = HEAP8[$8281>>0]|0; + $8283 = $8282&255; + $8284 = 69 ^ $8283; + $8285 = (45248 + ($8284)|0); + $8286 = HEAP8[$8285>>0]|0; + $8287 = $8286&255; + $8288 = $2; + $8289 = ((($8288)) + 1|0); + $8290 = HEAP8[$8289>>0]|0; + $8291 = $8290&255; + $8292 = $8287 ^ $8291; + $8293 = ((9400) + ($8292<<2)|0); + $8294 = HEAP32[$8293>>2]|0; + $8295 = $8279 ^ $8294; + $8296 = $2; + $8297 = ((($8296)) + 10|0); + $8298 = HEAP8[$8297>>0]|0; + $8299 = $8298&255; + $8300 = 228 ^ $8299; + $8301 = (44992 + ($8300)|0); + $8302 = HEAP8[$8301>>0]|0; + $8303 = $8302&255; + $8304 = $2; + $8305 = ((($8304)) + 2|0); + $8306 = HEAP8[$8305>>0]|0; + $8307 = $8306&255; + $8308 = $8303 ^ $8307; + $8309 = ((10424) + ($8308<<2)|0); + $8310 = HEAP32[$8309>>2]|0; + $8311 = $8295 ^ $8310; + $8312 = $2; + $8313 = ((($8312)) + 11|0); + $8314 = HEAP8[$8313>>0]|0; + $8315 = $8314&255; + $8316 = 69 ^ $8315; + $8317 = (44992 + ($8316)|0); + $8318 = HEAP8[$8317>>0]|0; + $8319 = $8318&255; + $8320 = $2; + $8321 = ((($8320)) + 3|0); + $8322 = HEAP8[$8321>>0]|0; + $8323 = $8322&255; + $8324 = $8319 ^ $8323; + $8325 = ((11448) + ($8324<<2)|0); + $8326 = HEAP32[$8325>>2]|0; + $8327 = $8311 ^ $8326; + $x = $8327; + $8328 = $2; + $8329 = ((($8328)) + 12|0); + $8330 = HEAP8[$8329>>0]|0; + $8331 = $8330&255; + $8332 = 221 ^ $8331; + $8333 = (45248 + ($8332)|0); + $8334 = HEAP8[$8333>>0]|0; + $8335 = $8334&255; + $8336 = $2; + $8337 = ((($8336)) + 4|0); + $8338 = HEAP8[$8337>>0]|0; + $8339 = $8338&255; + $8340 = $8335 ^ $8339; + $8341 = (8376 + ($8340<<2)|0); + $8342 = HEAP32[$8341>>2]|0; + $8343 = $2; + $8344 = ((($8343)) + 13|0); + $8345 = HEAP8[$8344>>0]|0; + $8346 = $8345&255; + $8347 = 125 ^ $8346; + $8348 = (45248 + ($8347)|0); + $8349 = HEAP8[$8348>>0]|0; + $8350 = $8349&255; + $8351 = $2; + $8352 = ((($8351)) + 5|0); + $8353 = HEAP8[$8352>>0]|0; + $8354 = $8353&255; + $8355 = $8350 ^ $8354; + $8356 = ((9400) + ($8355<<2)|0); + $8357 = HEAP32[$8356>>2]|0; + $8358 = $8342 ^ $8357; + $8359 = $2; + $8360 = ((($8359)) + 14|0); + $8361 = HEAP8[$8360>>0]|0; + $8362 = $8361&255; + $8363 = 221 ^ $8362; + $8364 = (44992 + ($8363)|0); + $8365 = HEAP8[$8364>>0]|0; + $8366 = $8365&255; + $8367 = $2; + $8368 = ((($8367)) + 6|0); + $8369 = HEAP8[$8368>>0]|0; + $8370 = $8369&255; + $8371 = $8366 ^ $8370; + $8372 = ((10424) + ($8371<<2)|0); + $8373 = HEAP32[$8372>>2]|0; + $8374 = $8358 ^ $8373; + $8375 = $2; + $8376 = ((($8375)) + 15|0); + $8377 = HEAP8[$8376>>0]|0; + $8378 = $8377&255; + $8379 = 125 ^ $8378; + $8380 = (44992 + ($8379)|0); + $8381 = HEAP8[$8380>>0]|0; + $8382 = $8381&255; + $8383 = $2; + $8384 = ((($8383)) + 7|0); + $8385 = HEAP8[$8384>>0]|0; + $8386 = $8385&255; + $8387 = $8382 ^ $8386; + $8388 = ((11448) + ($8387<<2)|0); + $8389 = HEAP32[$8388>>2]|0; + $8390 = $8374 ^ $8389; + $y = $8390; + $8391 = $y; + $8392 = $8391 << 8; + $8393 = $y; + $8394 = $8393 >>> 24; + $8395 = (($8392) + ($8394))|0; + $y = $8395; + $8396 = $y; + $8397 = $x; + $8398 = (($8397) + ($8396))|0; + $x = $8398; + $8399 = $x; + $8400 = $y; + $8401 = (($8400) + ($8399))|0; + $y = $8401; + $8402 = $x; + $8403 = $1; + $8404 = ((($8403)) + 4128|0); + $8405 = ((($8404)) + 16|0); + HEAP32[$8405>>2] = $8402; + $8406 = $y; + $8407 = $8406 << 9; + $8408 = $y; + $8409 = $8408 >>> 23; + $8410 = (($8407) + ($8409))|0; + $8411 = $1; + $8412 = ((($8411)) + 4128|0); + $8413 = ((($8412)) + 20|0); + HEAP32[$8413>>2] = $8410; + $8414 = $2; + $8415 = ((($8414)) + 8|0); + $8416 = HEAP8[$8415>>0]|0; + $8417 = $8416&255; + $8418 = 209 ^ $8417; + $8419 = (45248 + ($8418)|0); + $8420 = HEAP8[$8419>>0]|0; + $8421 = $8420&255; + $8422 = $2; + $8423 = HEAP8[$8422>>0]|0; + $8424 = $8423&255; + $8425 = $8421 ^ $8424; + $8426 = (8376 + ($8425<<2)|0); + $8427 = HEAP32[$8426>>2]|0; + $8428 = $2; + $8429 = ((($8428)) + 9|0); + $8430 = HEAP8[$8429>>0]|0; + $8431 = $8430&255; + $8432 = 232 ^ $8431; + $8433 = (45248 + ($8432)|0); + $8434 = HEAP8[$8433>>0]|0; + $8435 = $8434&255; + $8436 = $2; + $8437 = ((($8436)) + 1|0); + $8438 = HEAP8[$8437>>0]|0; + $8439 = $8438&255; + $8440 = $8435 ^ $8439; + $8441 = ((9400) + ($8440<<2)|0); + $8442 = HEAP32[$8441>>2]|0; + $8443 = $8427 ^ $8442; + $8444 = $2; + $8445 = ((($8444)) + 10|0); + $8446 = HEAP8[$8445>>0]|0; + $8447 = $8446&255; + $8448 = 209 ^ $8447; + $8449 = (44992 + ($8448)|0); + $8450 = HEAP8[$8449>>0]|0; + $8451 = $8450&255; + $8452 = $2; + $8453 = ((($8452)) + 2|0); + $8454 = HEAP8[$8453>>0]|0; + $8455 = $8454&255; + $8456 = $8451 ^ $8455; + $8457 = ((10424) + ($8456<<2)|0); + $8458 = HEAP32[$8457>>2]|0; + $8459 = $8443 ^ $8458; + $8460 = $2; + $8461 = ((($8460)) + 11|0); + $8462 = HEAP8[$8461>>0]|0; + $8463 = $8462&255; + $8464 = 232 ^ $8463; + $8465 = (44992 + ($8464)|0); + $8466 = HEAP8[$8465>>0]|0; + $8467 = $8466&255; + $8468 = $2; + $8469 = ((($8468)) + 3|0); + $8470 = HEAP8[$8469>>0]|0; + $8471 = $8470&255; + $8472 = $8467 ^ $8471; + $8473 = ((11448) + ($8472<<2)|0); + $8474 = HEAP32[$8473>>2]|0; + $8475 = $8459 ^ $8474; + $x = $8475; + $8476 = $2; + $8477 = ((($8476)) + 12|0); + $8478 = HEAP8[$8477>>0]|0; + $8479 = $8478&255; + $8480 = 56 ^ $8479; + $8481 = (45248 + ($8480)|0); + $8482 = HEAP8[$8481>>0]|0; + $8483 = $8482&255; + $8484 = $2; + $8485 = ((($8484)) + 4|0); + $8486 = HEAP8[$8485>>0]|0; + $8487 = $8486&255; + $8488 = $8483 ^ $8487; + $8489 = (8376 + ($8488<<2)|0); + $8490 = HEAP32[$8489>>2]|0; + $8491 = $2; + $8492 = ((($8491)) + 13|0); + $8493 = HEAP8[$8492>>0]|0; + $8494 = $8493&255; + $8495 = 75 ^ $8494; + $8496 = (45248 + ($8495)|0); + $8497 = HEAP8[$8496>>0]|0; + $8498 = $8497&255; + $8499 = $2; + $8500 = ((($8499)) + 5|0); + $8501 = HEAP8[$8500>>0]|0; + $8502 = $8501&255; + $8503 = $8498 ^ $8502; + $8504 = ((9400) + ($8503<<2)|0); + $8505 = HEAP32[$8504>>2]|0; + $8506 = $8490 ^ $8505; + $8507 = $2; + $8508 = ((($8507)) + 14|0); + $8509 = HEAP8[$8508>>0]|0; + $8510 = $8509&255; + $8511 = 56 ^ $8510; + $8512 = (44992 + ($8511)|0); + $8513 = HEAP8[$8512>>0]|0; + $8514 = $8513&255; + $8515 = $2; + $8516 = ((($8515)) + 6|0); + $8517 = HEAP8[$8516>>0]|0; + $8518 = $8517&255; + $8519 = $8514 ^ $8518; + $8520 = ((10424) + ($8519<<2)|0); + $8521 = HEAP32[$8520>>2]|0; + $8522 = $8506 ^ $8521; + $8523 = $2; + $8524 = ((($8523)) + 15|0); + $8525 = HEAP8[$8524>>0]|0; + $8526 = $8525&255; + $8527 = 75 ^ $8526; + $8528 = (44992 + ($8527)|0); + $8529 = HEAP8[$8528>>0]|0; + $8530 = $8529&255; + $8531 = $2; + $8532 = ((($8531)) + 7|0); + $8533 = HEAP8[$8532>>0]|0; + $8534 = $8533&255; + $8535 = $8530 ^ $8534; + $8536 = ((11448) + ($8535<<2)|0); + $8537 = HEAP32[$8536>>2]|0; + $8538 = $8522 ^ $8537; + $y = $8538; + $8539 = $y; + $8540 = $8539 << 8; + $8541 = $y; + $8542 = $8541 >>> 24; + $8543 = (($8540) + ($8542))|0; + $y = $8543; + $8544 = $y; + $8545 = $x; + $8546 = (($8545) + ($8544))|0; + $x = $8546; + $8547 = $x; + $8548 = $y; + $8549 = (($8548) + ($8547))|0; + $y = $8549; + $8550 = $x; + $8551 = $1; + $8552 = ((($8551)) + 4128|0); + $8553 = ((($8552)) + 24|0); + HEAP32[$8553>>2] = $8550; + $8554 = $y; + $8555 = $8554 << 9; + $8556 = $y; + $8557 = $8556 >>> 23; + $8558 = (($8555) + ($8557))|0; + $8559 = $1; + $8560 = ((($8559)) + 4128|0); + $8561 = ((($8560)) + 28|0); + HEAP32[$8561>>2] = $8558; + $8562 = $2; + $8563 = ((($8562)) + 8|0); + $8564 = HEAP8[$8563>>0]|0; + $8565 = $8564&255; + $8566 = 13 ^ $8565; + $8567 = (45248 + ($8566)|0); + $8568 = HEAP8[$8567>>0]|0; + $8569 = $8568&255; + $8570 = $2; + $8571 = HEAP8[$8570>>0]|0; + $8572 = $8571&255; + $8573 = $8569 ^ $8572; + $8574 = (8376 + ($8573<<2)|0); + $8575 = HEAP32[$8574>>2]|0; + $8576 = $2; + $8577 = ((($8576)) + 9|0); + $8578 = HEAP8[$8577>>0]|0; + $8579 = $8578&255; + $8580 = 214 ^ $8579; + $8581 = (45248 + ($8580)|0); + $8582 = HEAP8[$8581>>0]|0; + $8583 = $8582&255; + $8584 = $2; + $8585 = ((($8584)) + 1|0); + $8586 = HEAP8[$8585>>0]|0; + $8587 = $8586&255; + $8588 = $8583 ^ $8587; + $8589 = ((9400) + ($8588<<2)|0); + $8590 = HEAP32[$8589>>2]|0; + $8591 = $8575 ^ $8590; + $8592 = $2; + $8593 = ((($8592)) + 10|0); + $8594 = HEAP8[$8593>>0]|0; + $8595 = $8594&255; + $8596 = 13 ^ $8595; + $8597 = (44992 + ($8596)|0); + $8598 = HEAP8[$8597>>0]|0; + $8599 = $8598&255; + $8600 = $2; + $8601 = ((($8600)) + 2|0); + $8602 = HEAP8[$8601>>0]|0; + $8603 = $8602&255; + $8604 = $8599 ^ $8603; + $8605 = ((10424) + ($8604<<2)|0); + $8606 = HEAP32[$8605>>2]|0; + $8607 = $8591 ^ $8606; + $8608 = $2; + $8609 = ((($8608)) + 11|0); + $8610 = HEAP8[$8609>>0]|0; + $8611 = $8610&255; + $8612 = 214 ^ $8611; + $8613 = (44992 + ($8612)|0); + $8614 = HEAP8[$8613>>0]|0; + $8615 = $8614&255; + $8616 = $2; + $8617 = ((($8616)) + 3|0); + $8618 = HEAP8[$8617>>0]|0; + $8619 = $8618&255; + $8620 = $8615 ^ $8619; + $8621 = ((11448) + ($8620<<2)|0); + $8622 = HEAP32[$8621>>2]|0; + $8623 = $8607 ^ $8622; + $x = $8623; + $8624 = $2; + $8625 = ((($8624)) + 12|0); + $8626 = HEAP8[$8625>>0]|0; + $8627 = $8626&255; + $8628 = 198 ^ $8627; + $8629 = (45248 + ($8628)|0); + $8630 = HEAP8[$8629>>0]|0; + $8631 = $8630&255; + $8632 = $2; + $8633 = ((($8632)) + 4|0); + $8634 = HEAP8[$8633>>0]|0; + $8635 = $8634&255; + $8636 = $8631 ^ $8635; + $8637 = (8376 + ($8636<<2)|0); + $8638 = HEAP32[$8637>>2]|0; + $8639 = $2; + $8640 = ((($8639)) + 13|0); + $8641 = HEAP8[$8640>>0]|0; + $8642 = $8641&255; + $8643 = 50 ^ $8642; + $8644 = (45248 + ($8643)|0); + $8645 = HEAP8[$8644>>0]|0; + $8646 = $8645&255; + $8647 = $2; + $8648 = ((($8647)) + 5|0); + $8649 = HEAP8[$8648>>0]|0; + $8650 = $8649&255; + $8651 = $8646 ^ $8650; + $8652 = ((9400) + ($8651<<2)|0); + $8653 = HEAP32[$8652>>2]|0; + $8654 = $8638 ^ $8653; + $8655 = $2; + $8656 = ((($8655)) + 14|0); + $8657 = HEAP8[$8656>>0]|0; + $8658 = $8657&255; + $8659 = 198 ^ $8658; + $8660 = (44992 + ($8659)|0); + $8661 = HEAP8[$8660>>0]|0; + $8662 = $8661&255; + $8663 = $2; + $8664 = ((($8663)) + 6|0); + $8665 = HEAP8[$8664>>0]|0; + $8666 = $8665&255; + $8667 = $8662 ^ $8666; + $8668 = ((10424) + ($8667<<2)|0); + $8669 = HEAP32[$8668>>2]|0; + $8670 = $8654 ^ $8669; + $8671 = $2; + $8672 = ((($8671)) + 15|0); + $8673 = HEAP8[$8672>>0]|0; + $8674 = $8673&255; + $8675 = 50 ^ $8674; + $8676 = (44992 + ($8675)|0); + $8677 = HEAP8[$8676>>0]|0; + $8678 = $8677&255; + $8679 = $2; + $8680 = ((($8679)) + 7|0); + $8681 = HEAP8[$8680>>0]|0; + $8682 = $8681&255; + $8683 = $8678 ^ $8682; + $8684 = ((11448) + ($8683<<2)|0); + $8685 = HEAP32[$8684>>2]|0; + $8686 = $8670 ^ $8685; + $y = $8686; + $8687 = $y; + $8688 = $8687 << 8; + $8689 = $y; + $8690 = $8689 >>> 24; + $8691 = (($8688) + ($8690))|0; + $y = $8691; + $8692 = $y; + $8693 = $x; + $8694 = (($8693) + ($8692))|0; + $x = $8694; + $8695 = $x; + $8696 = $y; + $8697 = (($8696) + ($8695))|0; + $y = $8697; + $8698 = $x; + $8699 = $1; + $8700 = ((($8699)) + 4128|0); + $8701 = ((($8700)) + 32|0); + HEAP32[$8701>>2] = $8698; + $8702 = $y; + $8703 = $8702 << 9; + $8704 = $y; + $8705 = $8704 >>> 23; + $8706 = (($8703) + ($8705))|0; + $8707 = $1; + $8708 = ((($8707)) + 4128|0); + $8709 = ((($8708)) + 36|0); + HEAP32[$8709>>2] = $8706; + $8710 = $2; + $8711 = ((($8710)) + 8|0); + $8712 = HEAP8[$8711>>0]|0; + $8713 = $8712&255; + $8714 = 53 ^ $8713; + $8715 = (45248 + ($8714)|0); + $8716 = HEAP8[$8715>>0]|0; + $8717 = $8716&255; + $8718 = $2; + $8719 = HEAP8[$8718>>0]|0; + $8720 = $8719&255; + $8721 = $8717 ^ $8720; + $8722 = (8376 + ($8721<<2)|0); + $8723 = HEAP32[$8722>>2]|0; + $8724 = $2; + $8725 = ((($8724)) + 9|0); + $8726 = HEAP8[$8725>>0]|0; + $8727 = $8726&255; + $8728 = 216 ^ $8727; + $8729 = (45248 + ($8728)|0); + $8730 = HEAP8[$8729>>0]|0; + $8731 = $8730&255; + $8732 = $2; + $8733 = ((($8732)) + 1|0); + $8734 = HEAP8[$8733>>0]|0; + $8735 = $8734&255; + $8736 = $8731 ^ $8735; + $8737 = ((9400) + ($8736<<2)|0); + $8738 = HEAP32[$8737>>2]|0; + $8739 = $8723 ^ $8738; + $8740 = $2; + $8741 = ((($8740)) + 10|0); + $8742 = HEAP8[$8741>>0]|0; + $8743 = $8742&255; + $8744 = 53 ^ $8743; + $8745 = (44992 + ($8744)|0); + $8746 = HEAP8[$8745>>0]|0; + $8747 = $8746&255; + $8748 = $2; + $8749 = ((($8748)) + 2|0); + $8750 = HEAP8[$8749>>0]|0; + $8751 = $8750&255; + $8752 = $8747 ^ $8751; + $8753 = ((10424) + ($8752<<2)|0); + $8754 = HEAP32[$8753>>2]|0; + $8755 = $8739 ^ $8754; + $8756 = $2; + $8757 = ((($8756)) + 11|0); + $8758 = HEAP8[$8757>>0]|0; + $8759 = $8758&255; + $8760 = 216 ^ $8759; + $8761 = (44992 + ($8760)|0); + $8762 = HEAP8[$8761>>0]|0; + $8763 = $8762&255; + $8764 = $2; + $8765 = ((($8764)) + 3|0); + $8766 = HEAP8[$8765>>0]|0; + $8767 = $8766&255; + $8768 = $8763 ^ $8767; + $8769 = ((11448) + ($8768<<2)|0); + $8770 = HEAP32[$8769>>2]|0; + $8771 = $8755 ^ $8770; + $x = $8771; + $8772 = $2; + $8773 = ((($8772)) + 12|0); + $8774 = HEAP8[$8773>>0]|0; + $8775 = $8774&255; + $8776 = 152 ^ $8775; + $8777 = (45248 + ($8776)|0); + $8778 = HEAP8[$8777>>0]|0; + $8779 = $8778&255; + $8780 = $2; + $8781 = ((($8780)) + 4|0); + $8782 = HEAP8[$8781>>0]|0; + $8783 = $8782&255; + $8784 = $8779 ^ $8783; + $8785 = (8376 + ($8784<<2)|0); + $8786 = HEAP32[$8785>>2]|0; + $8787 = $2; + $8788 = ((($8787)) + 13|0); + $8789 = HEAP8[$8788>>0]|0; + $8790 = $8789&255; + $8791 = 253 ^ $8790; + $8792 = (45248 + ($8791)|0); + $8793 = HEAP8[$8792>>0]|0; + $8794 = $8793&255; + $8795 = $2; + $8796 = ((($8795)) + 5|0); + $8797 = HEAP8[$8796>>0]|0; + $8798 = $8797&255; + $8799 = $8794 ^ $8798; + $8800 = ((9400) + ($8799<<2)|0); + $8801 = HEAP32[$8800>>2]|0; + $8802 = $8786 ^ $8801; + $8803 = $2; + $8804 = ((($8803)) + 14|0); + $8805 = HEAP8[$8804>>0]|0; + $8806 = $8805&255; + $8807 = 152 ^ $8806; + $8808 = (44992 + ($8807)|0); + $8809 = HEAP8[$8808>>0]|0; + $8810 = $8809&255; + $8811 = $2; + $8812 = ((($8811)) + 6|0); + $8813 = HEAP8[$8812>>0]|0; + $8814 = $8813&255; + $8815 = $8810 ^ $8814; + $8816 = ((10424) + ($8815<<2)|0); + $8817 = HEAP32[$8816>>2]|0; + $8818 = $8802 ^ $8817; + $8819 = $2; + $8820 = ((($8819)) + 15|0); + $8821 = HEAP8[$8820>>0]|0; + $8822 = $8821&255; + $8823 = 253 ^ $8822; + $8824 = (44992 + ($8823)|0); + $8825 = HEAP8[$8824>>0]|0; + $8826 = $8825&255; + $8827 = $2; + $8828 = ((($8827)) + 7|0); + $8829 = HEAP8[$8828>>0]|0; + $8830 = $8829&255; + $8831 = $8826 ^ $8830; + $8832 = ((11448) + ($8831<<2)|0); + $8833 = HEAP32[$8832>>2]|0; + $8834 = $8818 ^ $8833; + $y = $8834; + $8835 = $y; + $8836 = $8835 << 8; + $8837 = $y; + $8838 = $8837 >>> 24; + $8839 = (($8836) + ($8838))|0; + $y = $8839; + $8840 = $y; + $8841 = $x; + $8842 = (($8841) + ($8840))|0; + $x = $8842; + $8843 = $x; + $8844 = $y; + $8845 = (($8844) + ($8843))|0; + $y = $8845; + $8846 = $x; + $8847 = $1; + $8848 = ((($8847)) + 4128|0); + $8849 = ((($8848)) + 40|0); + HEAP32[$8849>>2] = $8846; + $8850 = $y; + $8851 = $8850 << 9; + $8852 = $y; + $8853 = $8852 >>> 23; + $8854 = (($8851) + ($8853))|0; + $8855 = $1; + $8856 = ((($8855)) + 4128|0); + $8857 = ((($8856)) + 44|0); + HEAP32[$8857>>2] = $8854; + $8858 = $2; + $8859 = ((($8858)) + 8|0); + $8860 = HEAP8[$8859>>0]|0; + $8861 = $8860&255; + $8862 = 24 ^ $8861; + $8863 = (45248 + ($8862)|0); + $8864 = HEAP8[$8863>>0]|0; + $8865 = $8864&255; + $8866 = $2; + $8867 = HEAP8[$8866>>0]|0; + $8868 = $8867&255; + $8869 = $8865 ^ $8868; + $8870 = (8376 + ($8869<<2)|0); + $8871 = HEAP32[$8870>>2]|0; + $8872 = $2; + $8873 = ((($8872)) + 9|0); + $8874 = HEAP8[$8873>>0]|0; + $8875 = $8874&255; + $8876 = 55 ^ $8875; + $8877 = (45248 + ($8876)|0); + $8878 = HEAP8[$8877>>0]|0; + $8879 = $8878&255; + $8880 = $2; + $8881 = ((($8880)) + 1|0); + $8882 = HEAP8[$8881>>0]|0; + $8883 = $8882&255; + $8884 = $8879 ^ $8883; + $8885 = ((9400) + ($8884<<2)|0); + $8886 = HEAP32[$8885>>2]|0; + $8887 = $8871 ^ $8886; + $8888 = $2; + $8889 = ((($8888)) + 10|0); + $8890 = HEAP8[$8889>>0]|0; + $8891 = $8890&255; + $8892 = 24 ^ $8891; + $8893 = (44992 + ($8892)|0); + $8894 = HEAP8[$8893>>0]|0; + $8895 = $8894&255; + $8896 = $2; + $8897 = ((($8896)) + 2|0); + $8898 = HEAP8[$8897>>0]|0; + $8899 = $8898&255; + $8900 = $8895 ^ $8899; + $8901 = ((10424) + ($8900<<2)|0); + $8902 = HEAP32[$8901>>2]|0; + $8903 = $8887 ^ $8902; + $8904 = $2; + $8905 = ((($8904)) + 11|0); + $8906 = HEAP8[$8905>>0]|0; + $8907 = $8906&255; + $8908 = 55 ^ $8907; + $8909 = (44992 + ($8908)|0); + $8910 = HEAP8[$8909>>0]|0; + $8911 = $8910&255; + $8912 = $2; + $8913 = ((($8912)) + 3|0); + $8914 = HEAP8[$8913>>0]|0; + $8915 = $8914&255; + $8916 = $8911 ^ $8915; + $8917 = ((11448) + ($8916<<2)|0); + $8918 = HEAP32[$8917>>2]|0; + $8919 = $8903 ^ $8918; + $x = $8919; + $8920 = $2; + $8921 = ((($8920)) + 12|0); + $8922 = HEAP8[$8921>>0]|0; + $8923 = $8922&255; + $8924 = 247 ^ $8923; + $8925 = (45248 + ($8924)|0); + $8926 = HEAP8[$8925>>0]|0; + $8927 = $8926&255; + $8928 = $2; + $8929 = ((($8928)) + 4|0); + $8930 = HEAP8[$8929>>0]|0; + $8931 = $8930&255; + $8932 = $8927 ^ $8931; + $8933 = (8376 + ($8932<<2)|0); + $8934 = HEAP32[$8933>>2]|0; + $8935 = $2; + $8936 = ((($8935)) + 13|0); + $8937 = HEAP8[$8936>>0]|0; + $8938 = $8937&255; + $8939 = 113 ^ $8938; + $8940 = (45248 + ($8939)|0); + $8941 = HEAP8[$8940>>0]|0; + $8942 = $8941&255; + $8943 = $2; + $8944 = ((($8943)) + 5|0); + $8945 = HEAP8[$8944>>0]|0; + $8946 = $8945&255; + $8947 = $8942 ^ $8946; + $8948 = ((9400) + ($8947<<2)|0); + $8949 = HEAP32[$8948>>2]|0; + $8950 = $8934 ^ $8949; + $8951 = $2; + $8952 = ((($8951)) + 14|0); + $8953 = HEAP8[$8952>>0]|0; + $8954 = $8953&255; + $8955 = 247 ^ $8954; + $8956 = (44992 + ($8955)|0); + $8957 = HEAP8[$8956>>0]|0; + $8958 = $8957&255; + $8959 = $2; + $8960 = ((($8959)) + 6|0); + $8961 = HEAP8[$8960>>0]|0; + $8962 = $8961&255; + $8963 = $8958 ^ $8962; + $8964 = ((10424) + ($8963<<2)|0); + $8965 = HEAP32[$8964>>2]|0; + $8966 = $8950 ^ $8965; + $8967 = $2; + $8968 = ((($8967)) + 15|0); + $8969 = HEAP8[$8968>>0]|0; + $8970 = $8969&255; + $8971 = 113 ^ $8970; + $8972 = (44992 + ($8971)|0); + $8973 = HEAP8[$8972>>0]|0; + $8974 = $8973&255; + $8975 = $2; + $8976 = ((($8975)) + 7|0); + $8977 = HEAP8[$8976>>0]|0; + $8978 = $8977&255; + $8979 = $8974 ^ $8978; + $8980 = ((11448) + ($8979<<2)|0); + $8981 = HEAP32[$8980>>2]|0; + $8982 = $8966 ^ $8981; + $y = $8982; + $8983 = $y; + $8984 = $8983 << 8; + $8985 = $y; + $8986 = $8985 >>> 24; + $8987 = (($8984) + ($8986))|0; + $y = $8987; + $8988 = $y; + $8989 = $x; + $8990 = (($8989) + ($8988))|0; + $x = $8990; + $8991 = $x; + $8992 = $y; + $8993 = (($8992) + ($8991))|0; + $y = $8993; + $8994 = $x; + $8995 = $1; + $8996 = ((($8995)) + 4128|0); + $8997 = ((($8996)) + 48|0); + HEAP32[$8997>>2] = $8994; + $8998 = $y; + $8999 = $8998 << 9; + $9000 = $y; + $9001 = $9000 >>> 23; + $9002 = (($8999) + ($9001))|0; + $9003 = $1; + $9004 = ((($9003)) + 4128|0); + $9005 = ((($9004)) + 52|0); + HEAP32[$9005>>2] = $9002; + $9006 = $2; + $9007 = ((($9006)) + 8|0); + $9008 = HEAP8[$9007>>0]|0; + $9009 = $9008&255; + $9010 = 236 ^ $9009; + $9011 = (45248 + ($9010)|0); + $9012 = HEAP8[$9011>>0]|0; + $9013 = $9012&255; + $9014 = $2; + $9015 = HEAP8[$9014>>0]|0; + $9016 = $9015&255; + $9017 = $9013 ^ $9016; + $9018 = (8376 + ($9017<<2)|0); + $9019 = HEAP32[$9018>>2]|0; + $9020 = $2; + $9021 = ((($9020)) + 9|0); + $9022 = HEAP8[$9021>>0]|0; + $9023 = $9022&255; + $9024 = 241 ^ $9023; + $9025 = (45248 + ($9024)|0); + $9026 = HEAP8[$9025>>0]|0; + $9027 = $9026&255; + $9028 = $2; + $9029 = ((($9028)) + 1|0); + $9030 = HEAP8[$9029>>0]|0; + $9031 = $9030&255; + $9032 = $9027 ^ $9031; + $9033 = ((9400) + ($9032<<2)|0); + $9034 = HEAP32[$9033>>2]|0; + $9035 = $9019 ^ $9034; + $9036 = $2; + $9037 = ((($9036)) + 10|0); + $9038 = HEAP8[$9037>>0]|0; + $9039 = $9038&255; + $9040 = 236 ^ $9039; + $9041 = (44992 + ($9040)|0); + $9042 = HEAP8[$9041>>0]|0; + $9043 = $9042&255; + $9044 = $2; + $9045 = ((($9044)) + 2|0); + $9046 = HEAP8[$9045>>0]|0; + $9047 = $9046&255; + $9048 = $9043 ^ $9047; + $9049 = ((10424) + ($9048<<2)|0); + $9050 = HEAP32[$9049>>2]|0; + $9051 = $9035 ^ $9050; + $9052 = $2; + $9053 = ((($9052)) + 11|0); + $9054 = HEAP8[$9053>>0]|0; + $9055 = $9054&255; + $9056 = 241 ^ $9055; + $9057 = (44992 + ($9056)|0); + $9058 = HEAP8[$9057>>0]|0; + $9059 = $9058&255; + $9060 = $2; + $9061 = ((($9060)) + 3|0); + $9062 = HEAP8[$9061>>0]|0; + $9063 = $9062&255; + $9064 = $9059 ^ $9063; + $9065 = ((11448) + ($9064<<2)|0); + $9066 = HEAP32[$9065>>2]|0; + $9067 = $9051 ^ $9066; + $x = $9067; + $9068 = $2; + $9069 = ((($9068)) + 12|0); + $9070 = HEAP8[$9069>>0]|0; + $9071 = $9070&255; + $9072 = 108 ^ $9071; + $9073 = (45248 + ($9072)|0); + $9074 = HEAP8[$9073>>0]|0; + $9075 = $9074&255; + $9076 = $2; + $9077 = ((($9076)) + 4|0); + $9078 = HEAP8[$9077>>0]|0; + $9079 = $9078&255; + $9080 = $9075 ^ $9079; + $9081 = (8376 + ($9080<<2)|0); + $9082 = HEAP32[$9081>>2]|0; + $9083 = $2; + $9084 = ((($9083)) + 13|0); + $9085 = HEAP8[$9084>>0]|0; + $9086 = $9085&255; + $9087 = 225 ^ $9086; + $9088 = (45248 + ($9087)|0); + $9089 = HEAP8[$9088>>0]|0; + $9090 = $9089&255; + $9091 = $2; + $9092 = ((($9091)) + 5|0); + $9093 = HEAP8[$9092>>0]|0; + $9094 = $9093&255; + $9095 = $9090 ^ $9094; + $9096 = ((9400) + ($9095<<2)|0); + $9097 = HEAP32[$9096>>2]|0; + $9098 = $9082 ^ $9097; + $9099 = $2; + $9100 = ((($9099)) + 14|0); + $9101 = HEAP8[$9100>>0]|0; + $9102 = $9101&255; + $9103 = 108 ^ $9102; + $9104 = (44992 + ($9103)|0); + $9105 = HEAP8[$9104>>0]|0; + $9106 = $9105&255; + $9107 = $2; + $9108 = ((($9107)) + 6|0); + $9109 = HEAP8[$9108>>0]|0; + $9110 = $9109&255; + $9111 = $9106 ^ $9110; + $9112 = ((10424) + ($9111<<2)|0); + $9113 = HEAP32[$9112>>2]|0; + $9114 = $9098 ^ $9113; + $9115 = $2; + $9116 = ((($9115)) + 15|0); + $9117 = HEAP8[$9116>>0]|0; + $9118 = $9117&255; + $9119 = 225 ^ $9118; + $9120 = (44992 + ($9119)|0); + $9121 = HEAP8[$9120>>0]|0; + $9122 = $9121&255; + $9123 = $2; + $9124 = ((($9123)) + 7|0); + $9125 = HEAP8[$9124>>0]|0; + $9126 = $9125&255; + $9127 = $9122 ^ $9126; + $9128 = ((11448) + ($9127<<2)|0); + $9129 = HEAP32[$9128>>2]|0; + $9130 = $9114 ^ $9129; + $y = $9130; + $9131 = $y; + $9132 = $9131 << 8; + $9133 = $y; + $9134 = $9133 >>> 24; + $9135 = (($9132) + ($9134))|0; + $y = $9135; + $9136 = $y; + $9137 = $x; + $9138 = (($9137) + ($9136))|0; + $x = $9138; + $9139 = $x; + $9140 = $y; + $9141 = (($9140) + ($9139))|0; + $y = $9141; + $9142 = $x; + $9143 = $1; + $9144 = ((($9143)) + 4128|0); + $9145 = ((($9144)) + 56|0); + HEAP32[$9145>>2] = $9142; + $9146 = $y; + $9147 = $9146 << 9; + $9148 = $y; + $9149 = $9148 >>> 23; + $9150 = (($9147) + ($9149))|0; + $9151 = $1; + $9152 = ((($9151)) + 4128|0); + $9153 = ((($9152)) + 60|0); + HEAP32[$9153>>2] = $9150; + $9154 = $2; + $9155 = ((($9154)) + 8|0); + $9156 = HEAP8[$9155>>0]|0; + $9157 = $9156&255; + $9158 = 67 ^ $9157; + $9159 = (45248 + ($9158)|0); + $9160 = HEAP8[$9159>>0]|0; + $9161 = $9160&255; + $9162 = $2; + $9163 = HEAP8[$9162>>0]|0; + $9164 = $9163&255; + $9165 = $9161 ^ $9164; + $9166 = (8376 + ($9165<<2)|0); + $9167 = HEAP32[$9166>>2]|0; + $9168 = $2; + $9169 = ((($9168)) + 9|0); + $9170 = HEAP8[$9169>>0]|0; + $9171 = $9170&255; + $9172 = 48 ^ $9171; + $9173 = (45248 + ($9172)|0); + $9174 = HEAP8[$9173>>0]|0; + $9175 = $9174&255; + $9176 = $2; + $9177 = ((($9176)) + 1|0); + $9178 = HEAP8[$9177>>0]|0; + $9179 = $9178&255; + $9180 = $9175 ^ $9179; + $9181 = ((9400) + ($9180<<2)|0); + $9182 = HEAP32[$9181>>2]|0; + $9183 = $9167 ^ $9182; + $9184 = $2; + $9185 = ((($9184)) + 10|0); + $9186 = HEAP8[$9185>>0]|0; + $9187 = $9186&255; + $9188 = 67 ^ $9187; + $9189 = (44992 + ($9188)|0); + $9190 = HEAP8[$9189>>0]|0; + $9191 = $9190&255; + $9192 = $2; + $9193 = ((($9192)) + 2|0); + $9194 = HEAP8[$9193>>0]|0; + $9195 = $9194&255; + $9196 = $9191 ^ $9195; + $9197 = ((10424) + ($9196<<2)|0); + $9198 = HEAP32[$9197>>2]|0; + $9199 = $9183 ^ $9198; + $9200 = $2; + $9201 = ((($9200)) + 11|0); + $9202 = HEAP8[$9201>>0]|0; + $9203 = $9202&255; + $9204 = 48 ^ $9203; + $9205 = (44992 + ($9204)|0); + $9206 = HEAP8[$9205>>0]|0; + $9207 = $9206&255; + $9208 = $2; + $9209 = ((($9208)) + 3|0); + $9210 = HEAP8[$9209>>0]|0; + $9211 = $9210&255; + $9212 = $9207 ^ $9211; + $9213 = ((11448) + ($9212<<2)|0); + $9214 = HEAP32[$9213>>2]|0; + $9215 = $9199 ^ $9214; + $x = $9215; + $9216 = $2; + $9217 = ((($9216)) + 12|0); + $9218 = HEAP8[$9217>>0]|0; + $9219 = $9218&255; + $9220 = 117 ^ $9219; + $9221 = (45248 + ($9220)|0); + $9222 = HEAP8[$9221>>0]|0; + $9223 = $9222&255; + $9224 = $2; + $9225 = ((($9224)) + 4|0); + $9226 = HEAP8[$9225>>0]|0; + $9227 = $9226&255; + $9228 = $9223 ^ $9227; + $9229 = (8376 + ($9228<<2)|0); + $9230 = HEAP32[$9229>>2]|0; + $9231 = $2; + $9232 = ((($9231)) + 13|0); + $9233 = HEAP8[$9232>>0]|0; + $9234 = $9233&255; + $9235 = 15 ^ $9234; + $9236 = (45248 + ($9235)|0); + $9237 = HEAP8[$9236>>0]|0; + $9238 = $9237&255; + $9239 = $2; + $9240 = ((($9239)) + 5|0); + $9241 = HEAP8[$9240>>0]|0; + $9242 = $9241&255; + $9243 = $9238 ^ $9242; + $9244 = ((9400) + ($9243<<2)|0); + $9245 = HEAP32[$9244>>2]|0; + $9246 = $9230 ^ $9245; + $9247 = $2; + $9248 = ((($9247)) + 14|0); + $9249 = HEAP8[$9248>>0]|0; + $9250 = $9249&255; + $9251 = 117 ^ $9250; + $9252 = (44992 + ($9251)|0); + $9253 = HEAP8[$9252>>0]|0; + $9254 = $9253&255; + $9255 = $2; + $9256 = ((($9255)) + 6|0); + $9257 = HEAP8[$9256>>0]|0; + $9258 = $9257&255; + $9259 = $9254 ^ $9258; + $9260 = ((10424) + ($9259<<2)|0); + $9261 = HEAP32[$9260>>2]|0; + $9262 = $9246 ^ $9261; + $9263 = $2; + $9264 = ((($9263)) + 15|0); + $9265 = HEAP8[$9264>>0]|0; + $9266 = $9265&255; + $9267 = 15 ^ $9266; + $9268 = (44992 + ($9267)|0); + $9269 = HEAP8[$9268>>0]|0; + $9270 = $9269&255; + $9271 = $2; + $9272 = ((($9271)) + 7|0); + $9273 = HEAP8[$9272>>0]|0; + $9274 = $9273&255; + $9275 = $9270 ^ $9274; + $9276 = ((11448) + ($9275<<2)|0); + $9277 = HEAP32[$9276>>2]|0; + $9278 = $9262 ^ $9277; + $y = $9278; + $9279 = $y; + $9280 = $9279 << 8; + $9281 = $y; + $9282 = $9281 >>> 24; + $9283 = (($9280) + ($9282))|0; + $y = $9283; + $9284 = $y; + $9285 = $x; + $9286 = (($9285) + ($9284))|0; + $x = $9286; + $9287 = $x; + $9288 = $y; + $9289 = (($9288) + ($9287))|0; + $y = $9289; + $9290 = $x; + $9291 = $1; + $9292 = ((($9291)) + 4128|0); + $9293 = ((($9292)) + 64|0); + HEAP32[$9293>>2] = $9290; + $9294 = $y; + $9295 = $9294 << 9; + $9296 = $y; + $9297 = $9296 >>> 23; + $9298 = (($9295) + ($9297))|0; + $9299 = $1; + $9300 = ((($9299)) + 4128|0); + $9301 = ((($9300)) + 68|0); + HEAP32[$9301>>2] = $9298; + $9302 = $2; + $9303 = ((($9302)) + 8|0); + $9304 = HEAP8[$9303>>0]|0; + $9305 = $9304&255; + $9306 = 55 ^ $9305; + $9307 = (45248 + ($9306)|0); + $9308 = HEAP8[$9307>>0]|0; + $9309 = $9308&255; + $9310 = $2; + $9311 = HEAP8[$9310>>0]|0; + $9312 = $9311&255; + $9313 = $9309 ^ $9312; + $9314 = (8376 + ($9313<<2)|0); + $9315 = HEAP32[$9314>>2]|0; + $9316 = $2; + $9317 = ((($9316)) + 9|0); + $9318 = HEAP8[$9317>>0]|0; + $9319 = $9318&255; + $9320 = 248 ^ $9319; + $9321 = (45248 + ($9320)|0); + $9322 = HEAP8[$9321>>0]|0; + $9323 = $9322&255; + $9324 = $2; + $9325 = ((($9324)) + 1|0); + $9326 = HEAP8[$9325>>0]|0; + $9327 = $9326&255; + $9328 = $9323 ^ $9327; + $9329 = ((9400) + ($9328<<2)|0); + $9330 = HEAP32[$9329>>2]|0; + $9331 = $9315 ^ $9330; + $9332 = $2; + $9333 = ((($9332)) + 10|0); + $9334 = HEAP8[$9333>>0]|0; + $9335 = $9334&255; + $9336 = 55 ^ $9335; + $9337 = (44992 + ($9336)|0); + $9338 = HEAP8[$9337>>0]|0; + $9339 = $9338&255; + $9340 = $2; + $9341 = ((($9340)) + 2|0); + $9342 = HEAP8[$9341>>0]|0; + $9343 = $9342&255; + $9344 = $9339 ^ $9343; + $9345 = ((10424) + ($9344<<2)|0); + $9346 = HEAP32[$9345>>2]|0; + $9347 = $9331 ^ $9346; + $9348 = $2; + $9349 = ((($9348)) + 11|0); + $9350 = HEAP8[$9349>>0]|0; + $9351 = $9350&255; + $9352 = 248 ^ $9351; + $9353 = (44992 + ($9352)|0); + $9354 = HEAP8[$9353>>0]|0; + $9355 = $9354&255; + $9356 = $2; + $9357 = ((($9356)) + 3|0); + $9358 = HEAP8[$9357>>0]|0; + $9359 = $9358&255; + $9360 = $9355 ^ $9359; + $9361 = ((11448) + ($9360<<2)|0); + $9362 = HEAP32[$9361>>2]|0; + $9363 = $9347 ^ $9362; + $x = $9363; + $9364 = $2; + $9365 = ((($9364)) + 12|0); + $9366 = HEAP8[$9365>>0]|0; + $9367 = $9366&255; + $9368 = 38 ^ $9367; + $9369 = (45248 + ($9368)|0); + $9370 = HEAP8[$9369>>0]|0; + $9371 = $9370&255; + $9372 = $2; + $9373 = ((($9372)) + 4|0); + $9374 = HEAP8[$9373>>0]|0; + $9375 = $9374&255; + $9376 = $9371 ^ $9375; + $9377 = (8376 + ($9376<<2)|0); + $9378 = HEAP32[$9377>>2]|0; + $9379 = $2; + $9380 = ((($9379)) + 13|0); + $9381 = HEAP8[$9380>>0]|0; + $9382 = $9381&255; + $9383 = 27 ^ $9382; + $9384 = (45248 + ($9383)|0); + $9385 = HEAP8[$9384>>0]|0; + $9386 = $9385&255; + $9387 = $2; + $9388 = ((($9387)) + 5|0); + $9389 = HEAP8[$9388>>0]|0; + $9390 = $9389&255; + $9391 = $9386 ^ $9390; + $9392 = ((9400) + ($9391<<2)|0); + $9393 = HEAP32[$9392>>2]|0; + $9394 = $9378 ^ $9393; + $9395 = $2; + $9396 = ((($9395)) + 14|0); + $9397 = HEAP8[$9396>>0]|0; + $9398 = $9397&255; + $9399 = 38 ^ $9398; + $9400 = (44992 + ($9399)|0); + $9401 = HEAP8[$9400>>0]|0; + $9402 = $9401&255; + $9403 = $2; + $9404 = ((($9403)) + 6|0); + $9405 = HEAP8[$9404>>0]|0; + $9406 = $9405&255; + $9407 = $9402 ^ $9406; + $9408 = ((10424) + ($9407<<2)|0); + $9409 = HEAP32[$9408>>2]|0; + $9410 = $9394 ^ $9409; + $9411 = $2; + $9412 = ((($9411)) + 15|0); + $9413 = HEAP8[$9412>>0]|0; + $9414 = $9413&255; + $9415 = 27 ^ $9414; + $9416 = (44992 + ($9415)|0); + $9417 = HEAP8[$9416>>0]|0; + $9418 = $9417&255; + $9419 = $2; + $9420 = ((($9419)) + 7|0); + $9421 = HEAP8[$9420>>0]|0; + $9422 = $9421&255; + $9423 = $9418 ^ $9422; + $9424 = ((11448) + ($9423<<2)|0); + $9425 = HEAP32[$9424>>2]|0; + $9426 = $9410 ^ $9425; + $y = $9426; + $9427 = $y; + $9428 = $9427 << 8; + $9429 = $y; + $9430 = $9429 >>> 24; + $9431 = (($9428) + ($9430))|0; + $y = $9431; + $9432 = $y; + $9433 = $x; + $9434 = (($9433) + ($9432))|0; + $x = $9434; + $9435 = $x; + $9436 = $y; + $9437 = (($9436) + ($9435))|0; + $y = $9437; + $9438 = $x; + $9439 = $1; + $9440 = ((($9439)) + 4128|0); + $9441 = ((($9440)) + 72|0); + HEAP32[$9441>>2] = $9438; + $9442 = $y; + $9443 = $9442 << 9; + $9444 = $y; + $9445 = $9444 >>> 23; + $9446 = (($9443) + ($9445))|0; + $9447 = $1; + $9448 = ((($9447)) + 4128|0); + $9449 = ((($9448)) + 76|0); + HEAP32[$9449>>2] = $9446; + $9450 = $2; + $9451 = ((($9450)) + 8|0); + $9452 = HEAP8[$9451>>0]|0; + $9453 = $9452&255; + $9454 = 250 ^ $9453; + $9455 = (45248 + ($9454)|0); + $9456 = HEAP8[$9455>>0]|0; + $9457 = $9456&255; + $9458 = $2; + $9459 = HEAP8[$9458>>0]|0; + $9460 = $9459&255; + $9461 = $9457 ^ $9460; + $9462 = (8376 + ($9461<<2)|0); + $9463 = HEAP32[$9462>>2]|0; + $9464 = $2; + $9465 = ((($9464)) + 9|0); + $9466 = HEAP8[$9465>>0]|0; + $9467 = $9466&255; + $9468 = 135 ^ $9467; + $9469 = (45248 + ($9468)|0); + $9470 = HEAP8[$9469>>0]|0; + $9471 = $9470&255; + $9472 = $2; + $9473 = ((($9472)) + 1|0); + $9474 = HEAP8[$9473>>0]|0; + $9475 = $9474&255; + $9476 = $9471 ^ $9475; + $9477 = ((9400) + ($9476<<2)|0); + $9478 = HEAP32[$9477>>2]|0; + $9479 = $9463 ^ $9478; + $9480 = $2; + $9481 = ((($9480)) + 10|0); + $9482 = HEAP8[$9481>>0]|0; + $9483 = $9482&255; + $9484 = 250 ^ $9483; + $9485 = (44992 + ($9484)|0); + $9486 = HEAP8[$9485>>0]|0; + $9487 = $9486&255; + $9488 = $2; + $9489 = ((($9488)) + 2|0); + $9490 = HEAP8[$9489>>0]|0; + $9491 = $9490&255; + $9492 = $9487 ^ $9491; + $9493 = ((10424) + ($9492<<2)|0); + $9494 = HEAP32[$9493>>2]|0; + $9495 = $9479 ^ $9494; + $9496 = $2; + $9497 = ((($9496)) + 11|0); + $9498 = HEAP8[$9497>>0]|0; + $9499 = $9498&255; + $9500 = 135 ^ $9499; + $9501 = (44992 + ($9500)|0); + $9502 = HEAP8[$9501>>0]|0; + $9503 = $9502&255; + $9504 = $2; + $9505 = ((($9504)) + 3|0); + $9506 = HEAP8[$9505>>0]|0; + $9507 = $9506&255; + $9508 = $9503 ^ $9507; + $9509 = ((11448) + ($9508<<2)|0); + $9510 = HEAP32[$9509>>2]|0; + $9511 = $9495 ^ $9510; + $x = $9511; + $9512 = $2; + $9513 = ((($9512)) + 12|0); + $9514 = HEAP8[$9513>>0]|0; + $9515 = $9514&255; + $9516 = 19 ^ $9515; + $9517 = (45248 + ($9516)|0); + $9518 = HEAP8[$9517>>0]|0; + $9519 = $9518&255; + $9520 = $2; + $9521 = ((($9520)) + 4|0); + $9522 = HEAP8[$9521>>0]|0; + $9523 = $9522&255; + $9524 = $9519 ^ $9523; + $9525 = (8376 + ($9524<<2)|0); + $9526 = HEAP32[$9525>>2]|0; + $9527 = $2; + $9528 = ((($9527)) + 13|0); + $9529 = HEAP8[$9528>>0]|0; + $9530 = $9529&255; + $9531 = 250 ^ $9530; + $9532 = (45248 + ($9531)|0); + $9533 = HEAP8[$9532>>0]|0; + $9534 = $9533&255; + $9535 = $2; + $9536 = ((($9535)) + 5|0); + $9537 = HEAP8[$9536>>0]|0; + $9538 = $9537&255; + $9539 = $9534 ^ $9538; + $9540 = ((9400) + ($9539<<2)|0); + $9541 = HEAP32[$9540>>2]|0; + $9542 = $9526 ^ $9541; + $9543 = $2; + $9544 = ((($9543)) + 14|0); + $9545 = HEAP8[$9544>>0]|0; + $9546 = $9545&255; + $9547 = 19 ^ $9546; + $9548 = (44992 + ($9547)|0); + $9549 = HEAP8[$9548>>0]|0; + $9550 = $9549&255; + $9551 = $2; + $9552 = ((($9551)) + 6|0); + $9553 = HEAP8[$9552>>0]|0; + $9554 = $9553&255; + $9555 = $9550 ^ $9554; + $9556 = ((10424) + ($9555<<2)|0); + $9557 = HEAP32[$9556>>2]|0; + $9558 = $9542 ^ $9557; + $9559 = $2; + $9560 = ((($9559)) + 15|0); + $9561 = HEAP8[$9560>>0]|0; + $9562 = $9561&255; + $9563 = 250 ^ $9562; + $9564 = (44992 + ($9563)|0); + $9565 = HEAP8[$9564>>0]|0; + $9566 = $9565&255; + $9567 = $2; + $9568 = ((($9567)) + 7|0); + $9569 = HEAP8[$9568>>0]|0; + $9570 = $9569&255; + $9571 = $9566 ^ $9570; + $9572 = ((11448) + ($9571<<2)|0); + $9573 = HEAP32[$9572>>2]|0; + $9574 = $9558 ^ $9573; + $y = $9574; + $9575 = $y; + $9576 = $9575 << 8; + $9577 = $y; + $9578 = $9577 >>> 24; + $9579 = (($9576) + ($9578))|0; + $y = $9579; + $9580 = $y; + $9581 = $x; + $9582 = (($9581) + ($9580))|0; + $x = $9582; + $9583 = $x; + $9584 = $y; + $9585 = (($9584) + ($9583))|0; + $y = $9585; + $9586 = $x; + $9587 = $1; + $9588 = ((($9587)) + 4128|0); + $9589 = ((($9588)) + 80|0); + HEAP32[$9589>>2] = $9586; + $9590 = $y; + $9591 = $9590 << 9; + $9592 = $y; + $9593 = $9592 >>> 23; + $9594 = (($9591) + ($9593))|0; + $9595 = $1; + $9596 = ((($9595)) + 4128|0); + $9597 = ((($9596)) + 84|0); + HEAP32[$9597>>2] = $9594; + $9598 = $2; + $9599 = ((($9598)) + 8|0); + $9600 = HEAP8[$9599>>0]|0; + $9601 = $9600&255; + $9602 = 148 ^ $9601; + $9603 = (45248 + ($9602)|0); + $9604 = HEAP8[$9603>>0]|0; + $9605 = $9604&255; + $9606 = $2; + $9607 = HEAP8[$9606>>0]|0; + $9608 = $9607&255; + $9609 = $9605 ^ $9608; + $9610 = (8376 + ($9609<<2)|0); + $9611 = HEAP32[$9610>>2]|0; + $9612 = $2; + $9613 = ((($9612)) + 9|0); + $9614 = HEAP8[$9613>>0]|0; + $9615 = $9614&255; + $9616 = 6 ^ $9615; + $9617 = (45248 + ($9616)|0); + $9618 = HEAP8[$9617>>0]|0; + $9619 = $9618&255; + $9620 = $2; + $9621 = ((($9620)) + 1|0); + $9622 = HEAP8[$9621>>0]|0; + $9623 = $9622&255; + $9624 = $9619 ^ $9623; + $9625 = ((9400) + ($9624<<2)|0); + $9626 = HEAP32[$9625>>2]|0; + $9627 = $9611 ^ $9626; + $9628 = $2; + $9629 = ((($9628)) + 10|0); + $9630 = HEAP8[$9629>>0]|0; + $9631 = $9630&255; + $9632 = 148 ^ $9631; + $9633 = (44992 + ($9632)|0); + $9634 = HEAP8[$9633>>0]|0; + $9635 = $9634&255; + $9636 = $2; + $9637 = ((($9636)) + 2|0); + $9638 = HEAP8[$9637>>0]|0; + $9639 = $9638&255; + $9640 = $9635 ^ $9639; + $9641 = ((10424) + ($9640<<2)|0); + $9642 = HEAP32[$9641>>2]|0; + $9643 = $9627 ^ $9642; + $9644 = $2; + $9645 = ((($9644)) + 11|0); + $9646 = HEAP8[$9645>>0]|0; + $9647 = $9646&255; + $9648 = 6 ^ $9647; + $9649 = (44992 + ($9648)|0); + $9650 = HEAP8[$9649>>0]|0; + $9651 = $9650&255; + $9652 = $2; + $9653 = ((($9652)) + 3|0); + $9654 = HEAP8[$9653>>0]|0; + $9655 = $9654&255; + $9656 = $9651 ^ $9655; + $9657 = ((11448) + ($9656<<2)|0); + $9658 = HEAP32[$9657>>2]|0; + $9659 = $9643 ^ $9658; + $x = $9659; + $9660 = $2; + $9661 = ((($9660)) + 12|0); + $9662 = HEAP8[$9661>>0]|0; + $9663 = $9662&255; + $9664 = 72 ^ $9663; + $9665 = (45248 + ($9664)|0); + $9666 = HEAP8[$9665>>0]|0; + $9667 = $9666&255; + $9668 = $2; + $9669 = ((($9668)) + 4|0); + $9670 = HEAP8[$9669>>0]|0; + $9671 = $9670&255; + $9672 = $9667 ^ $9671; + $9673 = (8376 + ($9672<<2)|0); + $9674 = HEAP32[$9673>>2]|0; + $9675 = $2; + $9676 = ((($9675)) + 13|0); + $9677 = HEAP8[$9676>>0]|0; + $9678 = $9677&255; + $9679 = 63 ^ $9678; + $9680 = (45248 + ($9679)|0); + $9681 = HEAP8[$9680>>0]|0; + $9682 = $9681&255; + $9683 = $2; + $9684 = ((($9683)) + 5|0); + $9685 = HEAP8[$9684>>0]|0; + $9686 = $9685&255; + $9687 = $9682 ^ $9686; + $9688 = ((9400) + ($9687<<2)|0); + $9689 = HEAP32[$9688>>2]|0; + $9690 = $9674 ^ $9689; + $9691 = $2; + $9692 = ((($9691)) + 14|0); + $9693 = HEAP8[$9692>>0]|0; + $9694 = $9693&255; + $9695 = 72 ^ $9694; + $9696 = (44992 + ($9695)|0); + $9697 = HEAP8[$9696>>0]|0; + $9698 = $9697&255; + $9699 = $2; + $9700 = ((($9699)) + 6|0); + $9701 = HEAP8[$9700>>0]|0; + $9702 = $9701&255; + $9703 = $9698 ^ $9702; + $9704 = ((10424) + ($9703<<2)|0); + $9705 = HEAP32[$9704>>2]|0; + $9706 = $9690 ^ $9705; + $9707 = $2; + $9708 = ((($9707)) + 15|0); + $9709 = HEAP8[$9708>>0]|0; + $9710 = $9709&255; + $9711 = 63 ^ $9710; + $9712 = (44992 + ($9711)|0); + $9713 = HEAP8[$9712>>0]|0; + $9714 = $9713&255; + $9715 = $2; + $9716 = ((($9715)) + 7|0); + $9717 = HEAP8[$9716>>0]|0; + $9718 = $9717&255; + $9719 = $9714 ^ $9718; + $9720 = ((11448) + ($9719<<2)|0); + $9721 = HEAP32[$9720>>2]|0; + $9722 = $9706 ^ $9721; + $y = $9722; + $9723 = $y; + $9724 = $9723 << 8; + $9725 = $y; + $9726 = $9725 >>> 24; + $9727 = (($9724) + ($9726))|0; + $y = $9727; + $9728 = $y; + $9729 = $x; + $9730 = (($9729) + ($9728))|0; + $x = $9730; + $9731 = $x; + $9732 = $y; + $9733 = (($9732) + ($9731))|0; + $y = $9733; + $9734 = $x; + $9735 = $1; + $9736 = ((($9735)) + 4128|0); + $9737 = ((($9736)) + 88|0); + HEAP32[$9737>>2] = $9734; + $9738 = $y; + $9739 = $9738 << 9; + $9740 = $y; + $9741 = $9740 >>> 23; + $9742 = (($9739) + ($9741))|0; + $9743 = $1; + $9744 = ((($9743)) + 4128|0); + $9745 = ((($9744)) + 92|0); + HEAP32[$9745>>2] = $9742; + $9746 = $2; + $9747 = ((($9746)) + 8|0); + $9748 = HEAP8[$9747>>0]|0; + $9749 = $9748&255; + $9750 = 242 ^ $9749; + $9751 = (45248 + ($9750)|0); + $9752 = HEAP8[$9751>>0]|0; + $9753 = $9752&255; + $9754 = $2; + $9755 = HEAP8[$9754>>0]|0; + $9756 = $9755&255; + $9757 = $9753 ^ $9756; + $9758 = (8376 + ($9757<<2)|0); + $9759 = HEAP32[$9758>>2]|0; + $9760 = $2; + $9761 = ((($9760)) + 9|0); + $9762 = HEAP8[$9761>>0]|0; + $9763 = $9762&255; + $9764 = 94 ^ $9763; + $9765 = (45248 + ($9764)|0); + $9766 = HEAP8[$9765>>0]|0; + $9767 = $9766&255; + $9768 = $2; + $9769 = ((($9768)) + 1|0); + $9770 = HEAP8[$9769>>0]|0; + $9771 = $9770&255; + $9772 = $9767 ^ $9771; + $9773 = ((9400) + ($9772<<2)|0); + $9774 = HEAP32[$9773>>2]|0; + $9775 = $9759 ^ $9774; + $9776 = $2; + $9777 = ((($9776)) + 10|0); + $9778 = HEAP8[$9777>>0]|0; + $9779 = $9778&255; + $9780 = 242 ^ $9779; + $9781 = (44992 + ($9780)|0); + $9782 = HEAP8[$9781>>0]|0; + $9783 = $9782&255; + $9784 = $2; + $9785 = ((($9784)) + 2|0); + $9786 = HEAP8[$9785>>0]|0; + $9787 = $9786&255; + $9788 = $9783 ^ $9787; + $9789 = ((10424) + ($9788<<2)|0); + $9790 = HEAP32[$9789>>2]|0; + $9791 = $9775 ^ $9790; + $9792 = $2; + $9793 = ((($9792)) + 11|0); + $9794 = HEAP8[$9793>>0]|0; + $9795 = $9794&255; + $9796 = 94 ^ $9795; + $9797 = (44992 + ($9796)|0); + $9798 = HEAP8[$9797>>0]|0; + $9799 = $9798&255; + $9800 = $2; + $9801 = ((($9800)) + 3|0); + $9802 = HEAP8[$9801>>0]|0; + $9803 = $9802&255; + $9804 = $9799 ^ $9803; + $9805 = ((11448) + ($9804<<2)|0); + $9806 = HEAP32[$9805>>2]|0; + $9807 = $9791 ^ $9806; + $x = $9807; + $9808 = $2; + $9809 = ((($9808)) + 12|0); + $9810 = HEAP8[$9809>>0]|0; + $9811 = $9810&255; + $9812 = 208 ^ $9811; + $9813 = (45248 + ($9812)|0); + $9814 = HEAP8[$9813>>0]|0; + $9815 = $9814&255; + $9816 = $2; + $9817 = ((($9816)) + 4|0); + $9818 = HEAP8[$9817>>0]|0; + $9819 = $9818&255; + $9820 = $9815 ^ $9819; + $9821 = (8376 + ($9820<<2)|0); + $9822 = HEAP32[$9821>>2]|0; + $9823 = $2; + $9824 = ((($9823)) + 13|0); + $9825 = HEAP8[$9824>>0]|0; + $9826 = $9825&255; + $9827 = 186 ^ $9826; + $9828 = (45248 + ($9827)|0); + $9829 = HEAP8[$9828>>0]|0; + $9830 = $9829&255; + $9831 = $2; + $9832 = ((($9831)) + 5|0); + $9833 = HEAP8[$9832>>0]|0; + $9834 = $9833&255; + $9835 = $9830 ^ $9834; + $9836 = ((9400) + ($9835<<2)|0); + $9837 = HEAP32[$9836>>2]|0; + $9838 = $9822 ^ $9837; + $9839 = $2; + $9840 = ((($9839)) + 14|0); + $9841 = HEAP8[$9840>>0]|0; + $9842 = $9841&255; + $9843 = 208 ^ $9842; + $9844 = (44992 + ($9843)|0); + $9845 = HEAP8[$9844>>0]|0; + $9846 = $9845&255; + $9847 = $2; + $9848 = ((($9847)) + 6|0); + $9849 = HEAP8[$9848>>0]|0; + $9850 = $9849&255; + $9851 = $9846 ^ $9850; + $9852 = ((10424) + ($9851<<2)|0); + $9853 = HEAP32[$9852>>2]|0; + $9854 = $9838 ^ $9853; + $9855 = $2; + $9856 = ((($9855)) + 15|0); + $9857 = HEAP8[$9856>>0]|0; + $9858 = $9857&255; + $9859 = 186 ^ $9858; + $9860 = (44992 + ($9859)|0); + $9861 = HEAP8[$9860>>0]|0; + $9862 = $9861&255; + $9863 = $2; + $9864 = ((($9863)) + 7|0); + $9865 = HEAP8[$9864>>0]|0; + $9866 = $9865&255; + $9867 = $9862 ^ $9866; + $9868 = ((11448) + ($9867<<2)|0); + $9869 = HEAP32[$9868>>2]|0; + $9870 = $9854 ^ $9869; + $y = $9870; + $9871 = $y; + $9872 = $9871 << 8; + $9873 = $y; + $9874 = $9873 >>> 24; + $9875 = (($9872) + ($9874))|0; + $y = $9875; + $9876 = $y; + $9877 = $x; + $9878 = (($9877) + ($9876))|0; + $x = $9878; + $9879 = $x; + $9880 = $y; + $9881 = (($9880) + ($9879))|0; + $y = $9881; + $9882 = $x; + $9883 = $1; + $9884 = ((($9883)) + 4128|0); + $9885 = ((($9884)) + 96|0); + HEAP32[$9885>>2] = $9882; + $9886 = $y; + $9887 = $9886 << 9; + $9888 = $y; + $9889 = $9888 >>> 23; + $9890 = (($9887) + ($9889))|0; + $9891 = $1; + $9892 = ((($9891)) + 4128|0); + $9893 = ((($9892)) + 100|0); + HEAP32[$9893>>2] = $9890; + $9894 = $2; + $9895 = ((($9894)) + 8|0); + $9896 = HEAP8[$9895>>0]|0; + $9897 = $9896&255; + $9898 = 139 ^ $9897; + $9899 = (45248 + ($9898)|0); + $9900 = HEAP8[$9899>>0]|0; + $9901 = $9900&255; + $9902 = $2; + $9903 = HEAP8[$9902>>0]|0; + $9904 = $9903&255; + $9905 = $9901 ^ $9904; + $9906 = (8376 + ($9905<<2)|0); + $9907 = HEAP32[$9906>>2]|0; + $9908 = $2; + $9909 = ((($9908)) + 9|0); + $9910 = HEAP8[$9909>>0]|0; + $9911 = $9910&255; + $9912 = 174 ^ $9911; + $9913 = (45248 + ($9912)|0); + $9914 = HEAP8[$9913>>0]|0; + $9915 = $9914&255; + $9916 = $2; + $9917 = ((($9916)) + 1|0); + $9918 = HEAP8[$9917>>0]|0; + $9919 = $9918&255; + $9920 = $9915 ^ $9919; + $9921 = ((9400) + ($9920<<2)|0); + $9922 = HEAP32[$9921>>2]|0; + $9923 = $9907 ^ $9922; + $9924 = $2; + $9925 = ((($9924)) + 10|0); + $9926 = HEAP8[$9925>>0]|0; + $9927 = $9926&255; + $9928 = 139 ^ $9927; + $9929 = (44992 + ($9928)|0); + $9930 = HEAP8[$9929>>0]|0; + $9931 = $9930&255; + $9932 = $2; + $9933 = ((($9932)) + 2|0); + $9934 = HEAP8[$9933>>0]|0; + $9935 = $9934&255; + $9936 = $9931 ^ $9935; + $9937 = ((10424) + ($9936<<2)|0); + $9938 = HEAP32[$9937>>2]|0; + $9939 = $9923 ^ $9938; + $9940 = $2; + $9941 = ((($9940)) + 11|0); + $9942 = HEAP8[$9941>>0]|0; + $9943 = $9942&255; + $9944 = 174 ^ $9943; + $9945 = (44992 + ($9944)|0); + $9946 = HEAP8[$9945>>0]|0; + $9947 = $9946&255; + $9948 = $2; + $9949 = ((($9948)) + 3|0); + $9950 = HEAP8[$9949>>0]|0; + $9951 = $9950&255; + $9952 = $9947 ^ $9951; + $9953 = ((11448) + ($9952<<2)|0); + $9954 = HEAP32[$9953>>2]|0; + $9955 = $9939 ^ $9954; + $x = $9955; + $9956 = $2; + $9957 = ((($9956)) + 12|0); + $9958 = HEAP8[$9957>>0]|0; + $9959 = $9958&255; + $9960 = 48 ^ $9959; + $9961 = (45248 + ($9960)|0); + $9962 = HEAP8[$9961>>0]|0; + $9963 = $9962&255; + $9964 = $2; + $9965 = ((($9964)) + 4|0); + $9966 = HEAP8[$9965>>0]|0; + $9967 = $9966&255; + $9968 = $9963 ^ $9967; + $9969 = (8376 + ($9968<<2)|0); + $9970 = HEAP32[$9969>>2]|0; + $9971 = $2; + $9972 = ((($9971)) + 13|0); + $9973 = HEAP8[$9972>>0]|0; + $9974 = $9973&255; + $9975 = 91 ^ $9974; + $9976 = (45248 + ($9975)|0); + $9977 = HEAP8[$9976>>0]|0; + $9978 = $9977&255; + $9979 = $2; + $9980 = ((($9979)) + 5|0); + $9981 = HEAP8[$9980>>0]|0; + $9982 = $9981&255; + $9983 = $9978 ^ $9982; + $9984 = ((9400) + ($9983<<2)|0); + $9985 = HEAP32[$9984>>2]|0; + $9986 = $9970 ^ $9985; + $9987 = $2; + $9988 = ((($9987)) + 14|0); + $9989 = HEAP8[$9988>>0]|0; + $9990 = $9989&255; + $9991 = 48 ^ $9990; + $9992 = (44992 + ($9991)|0); + $9993 = HEAP8[$9992>>0]|0; + $9994 = $9993&255; + $9995 = $2; + $9996 = ((($9995)) + 6|0); + $9997 = HEAP8[$9996>>0]|0; + $9998 = $9997&255; + $9999 = $9994 ^ $9998; + $10000 = ((10424) + ($9999<<2)|0); + $10001 = HEAP32[$10000>>2]|0; + $10002 = $9986 ^ $10001; + $10003 = $2; + $10004 = ((($10003)) + 15|0); + $10005 = HEAP8[$10004>>0]|0; + $10006 = $10005&255; + $10007 = 91 ^ $10006; + $10008 = (44992 + ($10007)|0); + $10009 = HEAP8[$10008>>0]|0; + $10010 = $10009&255; + $10011 = $2; + $10012 = ((($10011)) + 7|0); + $10013 = HEAP8[$10012>>0]|0; + $10014 = $10013&255; + $10015 = $10010 ^ $10014; + $10016 = ((11448) + ($10015<<2)|0); + $10017 = HEAP32[$10016>>2]|0; + $10018 = $10002 ^ $10017; + $y = $10018; + $10019 = $y; + $10020 = $10019 << 8; + $10021 = $y; + $10022 = $10021 >>> 24; + $10023 = (($10020) + ($10022))|0; + $y = $10023; + $10024 = $y; + $10025 = $x; + $10026 = (($10025) + ($10024))|0; + $x = $10026; + $10027 = $x; + $10028 = $y; + $10029 = (($10028) + ($10027))|0; + $y = $10029; + $10030 = $x; + $10031 = $1; + $10032 = ((($10031)) + 4128|0); + $10033 = ((($10032)) + 104|0); + HEAP32[$10033>>2] = $10030; + $10034 = $y; + $10035 = $10034 << 9; + $10036 = $y; + $10037 = $10036 >>> 23; + $10038 = (($10035) + ($10037))|0; + $10039 = $1; + $10040 = ((($10039)) + 4128|0); + $10041 = ((($10040)) + 108|0); + HEAP32[$10041>>2] = $10038; + $10042 = $2; + $10043 = ((($10042)) + 8|0); + $10044 = HEAP8[$10043>>0]|0; + $10045 = $10044&255; + $10046 = 132 ^ $10045; + $10047 = (45248 + ($10046)|0); + $10048 = HEAP8[$10047>>0]|0; + $10049 = $10048&255; + $10050 = $2; + $10051 = HEAP8[$10050>>0]|0; + $10052 = $10051&255; + $10053 = $10049 ^ $10052; + $10054 = (8376 + ($10053<<2)|0); + $10055 = HEAP32[$10054>>2]|0; + $10056 = $2; + $10057 = ((($10056)) + 9|0); + $10058 = HEAP8[$10057>>0]|0; + $10059 = $10058&255; + $10060 = 138 ^ $10059; + $10061 = (45248 + ($10060)|0); + $10062 = HEAP8[$10061>>0]|0; + $10063 = $10062&255; + $10064 = $2; + $10065 = ((($10064)) + 1|0); + $10066 = HEAP8[$10065>>0]|0; + $10067 = $10066&255; + $10068 = $10063 ^ $10067; + $10069 = ((9400) + ($10068<<2)|0); + $10070 = HEAP32[$10069>>2]|0; + $10071 = $10055 ^ $10070; + $10072 = $2; + $10073 = ((($10072)) + 10|0); + $10074 = HEAP8[$10073>>0]|0; + $10075 = $10074&255; + $10076 = 132 ^ $10075; + $10077 = (44992 + ($10076)|0); + $10078 = HEAP8[$10077>>0]|0; + $10079 = $10078&255; + $10080 = $2; + $10081 = ((($10080)) + 2|0); + $10082 = HEAP8[$10081>>0]|0; + $10083 = $10082&255; + $10084 = $10079 ^ $10083; + $10085 = ((10424) + ($10084<<2)|0); + $10086 = HEAP32[$10085>>2]|0; + $10087 = $10071 ^ $10086; + $10088 = $2; + $10089 = ((($10088)) + 11|0); + $10090 = HEAP8[$10089>>0]|0; + $10091 = $10090&255; + $10092 = 138 ^ $10091; + $10093 = (44992 + ($10092)|0); + $10094 = HEAP8[$10093>>0]|0; + $10095 = $10094&255; + $10096 = $2; + $10097 = ((($10096)) + 3|0); + $10098 = HEAP8[$10097>>0]|0; + $10099 = $10098&255; + $10100 = $10095 ^ $10099; + $10101 = ((11448) + ($10100<<2)|0); + $10102 = HEAP32[$10101>>2]|0; + $10103 = $10087 ^ $10102; + $x = $10103; + $10104 = $2; + $10105 = ((($10104)) + 12|0); + $10106 = HEAP8[$10105>>0]|0; + $10107 = $10106&255; + $10108 = 84 ^ $10107; + $10109 = (45248 + ($10108)|0); + $10110 = HEAP8[$10109>>0]|0; + $10111 = $10110&255; + $10112 = $2; + $10113 = ((($10112)) + 4|0); + $10114 = HEAP8[$10113>>0]|0; + $10115 = $10114&255; + $10116 = $10111 ^ $10115; + $10117 = (8376 + ($10116<<2)|0); + $10118 = HEAP32[$10117>>2]|0; + $10119 = $2; + $10120 = ((($10119)) + 13|0); + $10121 = HEAP8[$10120>>0]|0; + $10122 = $10121&255; + $10123 = 0 ^ $10122; + $10124 = (45248 + ($10123)|0); + $10125 = HEAP8[$10124>>0]|0; + $10126 = $10125&255; + $10127 = $2; + $10128 = ((($10127)) + 5|0); + $10129 = HEAP8[$10128>>0]|0; + $10130 = $10129&255; + $10131 = $10126 ^ $10130; + $10132 = ((9400) + ($10131<<2)|0); + $10133 = HEAP32[$10132>>2]|0; + $10134 = $10118 ^ $10133; + $10135 = $2; + $10136 = ((($10135)) + 14|0); + $10137 = HEAP8[$10136>>0]|0; + $10138 = $10137&255; + $10139 = 84 ^ $10138; + $10140 = (44992 + ($10139)|0); + $10141 = HEAP8[$10140>>0]|0; + $10142 = $10141&255; + $10143 = $2; + $10144 = ((($10143)) + 6|0); + $10145 = HEAP8[$10144>>0]|0; + $10146 = $10145&255; + $10147 = $10142 ^ $10146; + $10148 = ((10424) + ($10147<<2)|0); + $10149 = HEAP32[$10148>>2]|0; + $10150 = $10134 ^ $10149; + $10151 = $2; + $10152 = ((($10151)) + 15|0); + $10153 = HEAP8[$10152>>0]|0; + $10154 = $10153&255; + $10155 = 0 ^ $10154; + $10156 = (44992 + ($10155)|0); + $10157 = HEAP8[$10156>>0]|0; + $10158 = $10157&255; + $10159 = $2; + $10160 = ((($10159)) + 7|0); + $10161 = HEAP8[$10160>>0]|0; + $10162 = $10161&255; + $10163 = $10158 ^ $10162; + $10164 = ((11448) + ($10163<<2)|0); + $10165 = HEAP32[$10164>>2]|0; + $10166 = $10150 ^ $10165; + $y = $10166; + $10167 = $y; + $10168 = $10167 << 8; + $10169 = $y; + $10170 = $10169 >>> 24; + $10171 = (($10168) + ($10170))|0; + $y = $10171; + $10172 = $y; + $10173 = $x; + $10174 = (($10173) + ($10172))|0; + $x = $10174; + $10175 = $x; + $10176 = $y; + $10177 = (($10176) + ($10175))|0; + $y = $10177; + $10178 = $x; + $10179 = $1; + $10180 = ((($10179)) + 4128|0); + $10181 = ((($10180)) + 112|0); + HEAP32[$10181>>2] = $10178; + $10182 = $y; + $10183 = $10182 << 9; + $10184 = $y; + $10185 = $10184 >>> 23; + $10186 = (($10183) + ($10185))|0; + $10187 = $1; + $10188 = ((($10187)) + 4128|0); + $10189 = ((($10188)) + 116|0); + HEAP32[$10189>>2] = $10186; + $10190 = $2; + $10191 = ((($10190)) + 8|0); + $10192 = HEAP8[$10191>>0]|0; + $10193 = $10192&255; + $10194 = 223 ^ $10193; + $10195 = (45248 + ($10194)|0); + $10196 = HEAP8[$10195>>0]|0; + $10197 = $10196&255; + $10198 = $2; + $10199 = HEAP8[$10198>>0]|0; + $10200 = $10199&255; + $10201 = $10197 ^ $10200; + $10202 = (8376 + ($10201<<2)|0); + $10203 = HEAP32[$10202>>2]|0; + $10204 = $2; + $10205 = ((($10204)) + 9|0); + $10206 = HEAP8[$10205>>0]|0; + $10207 = $10206&255; + $10208 = 188 ^ $10207; + $10209 = (45248 + ($10208)|0); + $10210 = HEAP8[$10209>>0]|0; + $10211 = $10210&255; + $10212 = $2; + $10213 = ((($10212)) + 1|0); + $10214 = HEAP8[$10213>>0]|0; + $10215 = $10214&255; + $10216 = $10211 ^ $10215; + $10217 = ((9400) + ($10216<<2)|0); + $10218 = HEAP32[$10217>>2]|0; + $10219 = $10203 ^ $10218; + $10220 = $2; + $10221 = ((($10220)) + 10|0); + $10222 = HEAP8[$10221>>0]|0; + $10223 = $10222&255; + $10224 = 223 ^ $10223; + $10225 = (44992 + ($10224)|0); + $10226 = HEAP8[$10225>>0]|0; + $10227 = $10226&255; + $10228 = $2; + $10229 = ((($10228)) + 2|0); + $10230 = HEAP8[$10229>>0]|0; + $10231 = $10230&255; + $10232 = $10227 ^ $10231; + $10233 = ((10424) + ($10232<<2)|0); + $10234 = HEAP32[$10233>>2]|0; + $10235 = $10219 ^ $10234; + $10236 = $2; + $10237 = ((($10236)) + 11|0); + $10238 = HEAP8[$10237>>0]|0; + $10239 = $10238&255; + $10240 = 188 ^ $10239; + $10241 = (44992 + ($10240)|0); + $10242 = HEAP8[$10241>>0]|0; + $10243 = $10242&255; + $10244 = $2; + $10245 = ((($10244)) + 3|0); + $10246 = HEAP8[$10245>>0]|0; + $10247 = $10246&255; + $10248 = $10243 ^ $10247; + $10249 = ((11448) + ($10248<<2)|0); + $10250 = HEAP32[$10249>>2]|0; + $10251 = $10235 ^ $10250; + $x = $10251; + $10252 = $2; + $10253 = ((($10252)) + 12|0); + $10254 = HEAP8[$10253>>0]|0; + $10255 = $10254&255; + $10256 = 35 ^ $10255; + $10257 = (45248 + ($10256)|0); + $10258 = HEAP8[$10257>>0]|0; + $10259 = $10258&255; + $10260 = $2; + $10261 = ((($10260)) + 4|0); + $10262 = HEAP8[$10261>>0]|0; + $10263 = $10262&255; + $10264 = $10259 ^ $10263; + $10265 = (8376 + ($10264<<2)|0); + $10266 = HEAP32[$10265>>2]|0; + $10267 = $2; + $10268 = ((($10267)) + 13|0); + $10269 = HEAP8[$10268>>0]|0; + $10270 = $10269&255; + $10271 = 157 ^ $10270; + $10272 = (45248 + ($10271)|0); + $10273 = HEAP8[$10272>>0]|0; + $10274 = $10273&255; + $10275 = $2; + $10276 = ((($10275)) + 5|0); + $10277 = HEAP8[$10276>>0]|0; + $10278 = $10277&255; + $10279 = $10274 ^ $10278; + $10280 = ((9400) + ($10279<<2)|0); + $10281 = HEAP32[$10280>>2]|0; + $10282 = $10266 ^ $10281; + $10283 = $2; + $10284 = ((($10283)) + 14|0); + $10285 = HEAP8[$10284>>0]|0; + $10286 = $10285&255; + $10287 = 35 ^ $10286; + $10288 = (44992 + ($10287)|0); + $10289 = HEAP8[$10288>>0]|0; + $10290 = $10289&255; + $10291 = $2; + $10292 = ((($10291)) + 6|0); + $10293 = HEAP8[$10292>>0]|0; + $10294 = $10293&255; + $10295 = $10290 ^ $10294; + $10296 = ((10424) + ($10295<<2)|0); + $10297 = HEAP32[$10296>>2]|0; + $10298 = $10282 ^ $10297; + $10299 = $2; + $10300 = ((($10299)) + 15|0); + $10301 = HEAP8[$10300>>0]|0; + $10302 = $10301&255; + $10303 = 157 ^ $10302; + $10304 = (44992 + ($10303)|0); + $10305 = HEAP8[$10304>>0]|0; + $10306 = $10305&255; + $10307 = $2; + $10308 = ((($10307)) + 7|0); + $10309 = HEAP8[$10308>>0]|0; + $10310 = $10309&255; + $10311 = $10306 ^ $10310; + $10312 = ((11448) + ($10311<<2)|0); + $10313 = HEAP32[$10312>>2]|0; + $10314 = $10298 ^ $10313; + $y = $10314; + $10315 = $y; + $10316 = $10315 << 8; + $10317 = $y; + $10318 = $10317 >>> 24; + $10319 = (($10316) + ($10318))|0; + $y = $10319; + $10320 = $y; + $10321 = $x; + $10322 = (($10321) + ($10320))|0; + $x = $10322; + $10323 = $x; + $10324 = $y; + $10325 = (($10324) + ($10323))|0; + $y = $10325; + $10326 = $x; + $10327 = $1; + $10328 = ((($10327)) + 4128|0); + $10329 = ((($10328)) + 120|0); + HEAP32[$10329>>2] = $10326; + $10330 = $y; + $10331 = $10330 << 9; + $10332 = $y; + $10333 = $10332 >>> 23; + $10334 = (($10331) + ($10333))|0; + $10335 = $1; + $10336 = ((($10335)) + 4128|0); + $10337 = ((($10336)) + 124|0); + HEAP32[$10337>>2] = $10334; + } + $0 = 0; + $10338 = $0; + STACKTOP = sp;return ($10338|0); +} +function _selftest_1448() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ctx = 0; + var $r = 0, $scratch = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 4288|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $ctx = sp + 8|0; + $scratch = sp + 4272|0; + (_twofish_setkey($ctx,43473,16)|0); + (_twofish_encrypt($ctx,$scratch,43489)|0); + $1 = (_memcmp($scratch,43505,16)|0); + $2 = ($1|0)!=(0); + do { + if ($2) { + $0 = 43521; + } else { + (_twofish_decrypt($ctx,$scratch,$scratch)|0); + $3 = (_memcmp($scratch,43489,16)|0); + $4 = ($3|0)!=(0); + if ($4) { + $0 = 43557; + break; + } + (_twofish_setkey($ctx,43593,32)|0); + (_twofish_encrypt($ctx,$scratch,43625)|0); + $5 = (_memcmp($scratch,43641,16)|0); + $6 = ($5|0)!=(0); + if ($6) { + $0 = 43657; + break; + } + (_twofish_decrypt($ctx,$scratch,$scratch)|0); + $7 = (_memcmp($scratch,43625,16)|0); + $8 = ($7|0)!=(0); + if ($8) { + $0 = 43693; + break; + } + $9 = (_selftest_ctr()|0); + $r = $9; + $10 = ($9|0)!=(0|0); + if ($10) { + $11 = $r; + $0 = $11; + break; + } + $12 = (_selftest_cbc()|0); + $r = $12; + $13 = ($12|0)!=(0|0); + if ($13) { + $14 = $r; + $0 = $14; + break; + } + $15 = (_selftest_cfb()|0); + $r = $15; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = $r; + $0 = $17; + break; + } else { + $0 = 0; + break; + } + } + } while(0); + $18 = $0; + STACKTOP = sp;return ($18|0); +} +function _twofish_encrypt($context,$out,$in) { + $context = $context|0; + $out = $out|0; + $in = $in|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $ctx = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $out; + $2 = $in; + $3 = $0; + $ctx = $3; + $4 = $ctx; + $5 = $1; + $6 = $2; + _do_twofish_encrypt($4,$5,$6); + STACKTOP = sp;return 36; +} +function _do_twofish_encrypt($ctx,$out,$in) { + $ctx = $ctx|0; + $out = $out|0; + $in = $in|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0; + var $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0; + var $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0; + var $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0; + var $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0; + var $1088 = 0, $1089 = 0, $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 0, $1094 = 0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0, $11 = 0, $110 = 0, $1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0; + var $1105 = 0, $1106 = 0, $1107 = 0, $1108 = 0, $1109 = 0, $111 = 0, $1110 = 0, $1111 = 0, $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 0, $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0; + var $1123 = 0, $1124 = 0, $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0; + var $1141 = 0, $1142 = 0, $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0; + var $116 = 0, $1160 = 0, $1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 0, $1166 = 0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0; + var $1178 = 0, $1179 = 0, $118 = 0, $1180 = 0, $1181 = 0, $1182 = 0, $1183 = 0, $1184 = 0, $1185 = 0, $1186 = 0, $1187 = 0, $1188 = 0, $1189 = 0, $119 = 0, $1190 = 0, $1191 = 0, $1192 = 0, $1193 = 0, $1194 = 0, $1195 = 0; + var $1196 = 0, $1197 = 0, $1198 = 0, $1199 = 0, $12 = 0, $120 = 0, $1200 = 0, $1201 = 0, $1202 = 0, $1203 = 0, $1204 = 0, $1205 = 0, $1206 = 0, $1207 = 0, $1208 = 0, $1209 = 0, $121 = 0, $1210 = 0, $1211 = 0, $1212 = 0; + var $1213 = 0, $1214 = 0, $1215 = 0, $1216 = 0, $1217 = 0, $1218 = 0, $1219 = 0, $122 = 0, $1220 = 0, $1221 = 0, $1222 = 0, $1223 = 0, $1224 = 0, $1225 = 0, $1226 = 0, $1227 = 0, $1228 = 0, $1229 = 0, $123 = 0, $1230 = 0; + var $1231 = 0, $1232 = 0, $1233 = 0, $1234 = 0, $1235 = 0, $1236 = 0, $1237 = 0, $1238 = 0, $1239 = 0, $124 = 0, $1240 = 0, $1241 = 0, $1242 = 0, $1243 = 0, $1244 = 0, $1245 = 0, $1246 = 0, $1247 = 0, $1248 = 0, $1249 = 0; + var $125 = 0, $1250 = 0, $1251 = 0, $1252 = 0, $1253 = 0, $1254 = 0, $1255 = 0, $1256 = 0, $1257 = 0, $1258 = 0, $1259 = 0, $126 = 0, $1260 = 0, $1261 = 0, $1262 = 0, $1263 = 0, $1264 = 0, $1265 = 0, $1266 = 0, $1267 = 0; + var $1268 = 0, $1269 = 0, $127 = 0, $1270 = 0, $1271 = 0, $1272 = 0, $1273 = 0, $1274 = 0, $1275 = 0, $1276 = 0, $1277 = 0, $1278 = 0, $1279 = 0, $128 = 0, $1280 = 0, $1281 = 0, $1282 = 0, $1283 = 0, $1284 = 0, $1285 = 0; + var $1286 = 0, $1287 = 0, $1288 = 0, $1289 = 0, $129 = 0, $1290 = 0, $1291 = 0, $1292 = 0, $1293 = 0, $1294 = 0, $1295 = 0, $1296 = 0, $1297 = 0, $1298 = 0, $1299 = 0, $13 = 0, $130 = 0, $1300 = 0, $1301 = 0, $1302 = 0; + var $1303 = 0, $1304 = 0, $1305 = 0, $1306 = 0, $1307 = 0, $1308 = 0, $1309 = 0, $131 = 0, $1310 = 0, $1311 = 0, $1312 = 0, $1313 = 0, $1314 = 0, $1315 = 0, $1316 = 0, $1317 = 0, $1318 = 0, $1319 = 0, $132 = 0, $1320 = 0; + var $1321 = 0, $1322 = 0, $1323 = 0, $1324 = 0, $1325 = 0, $1326 = 0, $1327 = 0, $1328 = 0, $1329 = 0, $133 = 0, $1330 = 0, $1331 = 0, $1332 = 0, $1333 = 0, $1334 = 0, $1335 = 0, $1336 = 0, $1337 = 0, $1338 = 0, $1339 = 0; + var $134 = 0, $1340 = 0, $1341 = 0, $1342 = 0, $1343 = 0, $1344 = 0, $1345 = 0, $1346 = 0, $1347 = 0, $1348 = 0, $1349 = 0, $135 = 0, $1350 = 0, $1351 = 0, $1352 = 0, $1353 = 0, $1354 = 0, $1355 = 0, $1356 = 0, $1357 = 0; + var $1358 = 0, $1359 = 0, $136 = 0, $1360 = 0, $1361 = 0, $1362 = 0, $1363 = 0, $1364 = 0, $1365 = 0, $1366 = 0, $1367 = 0, $1368 = 0, $1369 = 0, $137 = 0, $1370 = 0, $1371 = 0, $1372 = 0, $1373 = 0, $1374 = 0, $1375 = 0; + var $1376 = 0, $1377 = 0, $1378 = 0, $1379 = 0, $138 = 0, $1380 = 0, $1381 = 0, $1382 = 0, $1383 = 0, $1384 = 0, $1385 = 0, $1386 = 0, $1387 = 0, $1388 = 0, $1389 = 0, $139 = 0, $1390 = 0, $1391 = 0, $1392 = 0, $1393 = 0; + var $1394 = 0, $1395 = 0, $1396 = 0, $1397 = 0, $1398 = 0, $1399 = 0, $14 = 0, $140 = 0, $1400 = 0, $1401 = 0, $1402 = 0, $1403 = 0, $1404 = 0, $1405 = 0, $1406 = 0, $1407 = 0, $1408 = 0, $1409 = 0, $141 = 0, $1410 = 0; + var $1411 = 0, $1412 = 0, $1413 = 0, $1414 = 0, $1415 = 0, $1416 = 0, $1417 = 0, $1418 = 0, $1419 = 0, $142 = 0, $1420 = 0, $1421 = 0, $1422 = 0, $1423 = 0, $1424 = 0, $1425 = 0, $1426 = 0, $1427 = 0, $1428 = 0, $1429 = 0; + var $143 = 0, $1430 = 0, $1431 = 0, $1432 = 0, $1433 = 0, $1434 = 0, $1435 = 0, $1436 = 0, $1437 = 0, $1438 = 0, $1439 = 0, $144 = 0, $1440 = 0, $1441 = 0, $1442 = 0, $1443 = 0, $1444 = 0, $1445 = 0, $1446 = 0, $1447 = 0; + var $1448 = 0, $1449 = 0, $145 = 0, $1450 = 0, $1451 = 0, $1452 = 0, $1453 = 0, $1454 = 0, $1455 = 0, $1456 = 0, $1457 = 0, $1458 = 0, $1459 = 0, $146 = 0, $1460 = 0, $1461 = 0, $1462 = 0, $147 = 0, $148 = 0, $149 = 0; + var $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0; + var $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0; + var $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0; + var $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0; + var $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0; + var $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0; + var $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0; + var $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0; + var $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0; + var $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0; + var $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0; + var $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0; + var $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0; + var $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0; + var $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0; + var $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0; + var $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0; + var $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0; + var $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0; + var $492 = 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0; + var $51 = 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0; + var $528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0; + var $546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0; + var $564 = 0, $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0; + var $582 = 0, $583 = 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0; + var $60 = 0, $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0; + var $618 = 0, $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0; + var $636 = 0, $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0; + var $654 = 0, $655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0; + var $672 = 0, $673 = 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0; + var $690 = 0, $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0; + var $708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0; + var $726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0; + var $744 = 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0; + var $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0; + var $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0; + var $799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0; + var $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0; + var $834 = 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0; + var $852 = 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0; + var $870 = 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0; + var $889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0; + var $906 = 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0; + var $924 = 0, $925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0; + var $942 = 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0; + var $960 = 0, $961 = 0, $962 = 0, $963 = 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0; + var $979 = 0, $98 = 0, $980 = 0, $981 = 0, $982 = 0, $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0; + var $997 = 0, $998 = 0, $999 = 0, $a = 0, $b = 0, $c = 0, $d = 0, $x = 0, $y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $1 = $out; + $2 = $in; + $3 = $2; + $4 = (_buf_get_le32_1449($3)|0); + $a = $4; + $5 = $0; + $6 = ((($5)) + 4096|0); + $7 = HEAP32[$6>>2]|0; + $8 = $a; + $9 = $8 ^ $7; + $a = $9; + $10 = $2; + $11 = ((($10)) + 4|0); + $12 = (_buf_get_le32_1449($11)|0); + $b = $12; + $13 = $0; + $14 = ((($13)) + 4096|0); + $15 = ((($14)) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = $b; + $18 = $17 ^ $16; + $b = $18; + $19 = $2; + $20 = ((($19)) + 8|0); + $21 = (_buf_get_le32_1449($20)|0); + $c = $21; + $22 = $0; + $23 = ((($22)) + 4096|0); + $24 = ((($23)) + 8|0); + $25 = HEAP32[$24>>2]|0; + $26 = $c; + $27 = $26 ^ $25; + $c = $27; + $28 = $2; + $29 = ((($28)) + 12|0); + $30 = (_buf_get_le32_1449($29)|0); + $d = $30; + $31 = $0; + $32 = ((($31)) + 4096|0); + $33 = ((($32)) + 12|0); + $34 = HEAP32[$33>>2]|0; + $35 = $d; + $36 = $35 ^ $34; + $d = $36; + $37 = $a; + $38 = $37 & 255; + $39 = $0; + $40 = (($39) + ($38<<2)|0); + $41 = HEAP32[$40>>2]|0; + $42 = $a; + $43 = $42 >>> 8; + $44 = $43 & 255; + $45 = $0; + $46 = ((($45)) + 1024|0); + $47 = (($46) + ($44<<2)|0); + $48 = HEAP32[$47>>2]|0; + $49 = $41 ^ $48; + $50 = $a; + $51 = $50 >>> 16; + $52 = $51 & 255; + $53 = $0; + $54 = ((($53)) + 2048|0); + $55 = (($54) + ($52<<2)|0); + $56 = HEAP32[$55>>2]|0; + $57 = $49 ^ $56; + $58 = $a; + $59 = $58 >>> 24; + $60 = $0; + $61 = ((($60)) + 3072|0); + $62 = (($61) + ($59<<2)|0); + $63 = HEAP32[$62>>2]|0; + $64 = $57 ^ $63; + $x = $64; + $65 = $b; + $66 = $65 & 255; + $67 = $0; + $68 = ((($67)) + 1024|0); + $69 = (($68) + ($66<<2)|0); + $70 = HEAP32[$69>>2]|0; + $71 = $b; + $72 = $71 >>> 8; + $73 = $72 & 255; + $74 = $0; + $75 = ((($74)) + 2048|0); + $76 = (($75) + ($73<<2)|0); + $77 = HEAP32[$76>>2]|0; + $78 = $70 ^ $77; + $79 = $b; + $80 = $79 >>> 16; + $81 = $80 & 255; + $82 = $0; + $83 = ((($82)) + 3072|0); + $84 = (($83) + ($81<<2)|0); + $85 = HEAP32[$84>>2]|0; + $86 = $78 ^ $85; + $87 = $b; + $88 = $87 >>> 24; + $89 = $0; + $90 = (($89) + ($88<<2)|0); + $91 = HEAP32[$90>>2]|0; + $92 = $86 ^ $91; + $y = $92; + $93 = $y; + $94 = $x; + $95 = (($94) + ($93))|0; + $x = $95; + $96 = $x; + $97 = $0; + $98 = ((($97)) + 4128|0); + $99 = ((($98)) + 4|0); + $100 = HEAP32[$99>>2]|0; + $101 = (($96) + ($100))|0; + $102 = $y; + $103 = (($102) + ($101))|0; + $y = $103; + $104 = $x; + $105 = $0; + $106 = ((($105)) + 4128|0); + $107 = HEAP32[$106>>2]|0; + $108 = (($104) + ($107))|0; + $109 = $c; + $110 = $109 ^ $108; + $c = $110; + $111 = $c; + $112 = $111 >>> 1; + $113 = $c; + $114 = $113 << 31; + $115 = (($112) + ($114))|0; + $c = $115; + $116 = $d; + $117 = $116 << 1; + $118 = $d; + $119 = $118 >>> 31; + $120 = (($117) + ($119))|0; + $121 = $y; + $122 = $120 ^ $121; + $d = $122; + $123 = $c; + $124 = $123 & 255; + $125 = $0; + $126 = (($125) + ($124<<2)|0); + $127 = HEAP32[$126>>2]|0; + $128 = $c; + $129 = $128 >>> 8; + $130 = $129 & 255; + $131 = $0; + $132 = ((($131)) + 1024|0); + $133 = (($132) + ($130<<2)|0); + $134 = HEAP32[$133>>2]|0; + $135 = $127 ^ $134; + $136 = $c; + $137 = $136 >>> 16; + $138 = $137 & 255; + $139 = $0; + $140 = ((($139)) + 2048|0); + $141 = (($140) + ($138<<2)|0); + $142 = HEAP32[$141>>2]|0; + $143 = $135 ^ $142; + $144 = $c; + $145 = $144 >>> 24; + $146 = $0; + $147 = ((($146)) + 3072|0); + $148 = (($147) + ($145<<2)|0); + $149 = HEAP32[$148>>2]|0; + $150 = $143 ^ $149; + $x = $150; + $151 = $d; + $152 = $151 & 255; + $153 = $0; + $154 = ((($153)) + 1024|0); + $155 = (($154) + ($152<<2)|0); + $156 = HEAP32[$155>>2]|0; + $157 = $d; + $158 = $157 >>> 8; + $159 = $158 & 255; + $160 = $0; + $161 = ((($160)) + 2048|0); + $162 = (($161) + ($159<<2)|0); + $163 = HEAP32[$162>>2]|0; + $164 = $156 ^ $163; + $165 = $d; + $166 = $165 >>> 16; + $167 = $166 & 255; + $168 = $0; + $169 = ((($168)) + 3072|0); + $170 = (($169) + ($167<<2)|0); + $171 = HEAP32[$170>>2]|0; + $172 = $164 ^ $171; + $173 = $d; + $174 = $173 >>> 24; + $175 = $0; + $176 = (($175) + ($174<<2)|0); + $177 = HEAP32[$176>>2]|0; + $178 = $172 ^ $177; + $y = $178; + $179 = $y; + $180 = $x; + $181 = (($180) + ($179))|0; + $x = $181; + $182 = $x; + $183 = $0; + $184 = ((($183)) + 4128|0); + $185 = ((($184)) + 12|0); + $186 = HEAP32[$185>>2]|0; + $187 = (($182) + ($186))|0; + $188 = $y; + $189 = (($188) + ($187))|0; + $y = $189; + $190 = $x; + $191 = $0; + $192 = ((($191)) + 4128|0); + $193 = ((($192)) + 8|0); + $194 = HEAP32[$193>>2]|0; + $195 = (($190) + ($194))|0; + $196 = $a; + $197 = $196 ^ $195; + $a = $197; + $198 = $a; + $199 = $198 >>> 1; + $200 = $a; + $201 = $200 << 31; + $202 = (($199) + ($201))|0; + $a = $202; + $203 = $b; + $204 = $203 << 1; + $205 = $b; + $206 = $205 >>> 31; + $207 = (($204) + ($206))|0; + $208 = $y; + $209 = $207 ^ $208; + $b = $209; + $210 = $a; + $211 = $210 & 255; + $212 = $0; + $213 = (($212) + ($211<<2)|0); + $214 = HEAP32[$213>>2]|0; + $215 = $a; + $216 = $215 >>> 8; + $217 = $216 & 255; + $218 = $0; + $219 = ((($218)) + 1024|0); + $220 = (($219) + ($217<<2)|0); + $221 = HEAP32[$220>>2]|0; + $222 = $214 ^ $221; + $223 = $a; + $224 = $223 >>> 16; + $225 = $224 & 255; + $226 = $0; + $227 = ((($226)) + 2048|0); + $228 = (($227) + ($225<<2)|0); + $229 = HEAP32[$228>>2]|0; + $230 = $222 ^ $229; + $231 = $a; + $232 = $231 >>> 24; + $233 = $0; + $234 = ((($233)) + 3072|0); + $235 = (($234) + ($232<<2)|0); + $236 = HEAP32[$235>>2]|0; + $237 = $230 ^ $236; + $x = $237; + $238 = $b; + $239 = $238 & 255; + $240 = $0; + $241 = ((($240)) + 1024|0); + $242 = (($241) + ($239<<2)|0); + $243 = HEAP32[$242>>2]|0; + $244 = $b; + $245 = $244 >>> 8; + $246 = $245 & 255; + $247 = $0; + $248 = ((($247)) + 2048|0); + $249 = (($248) + ($246<<2)|0); + $250 = HEAP32[$249>>2]|0; + $251 = $243 ^ $250; + $252 = $b; + $253 = $252 >>> 16; + $254 = $253 & 255; + $255 = $0; + $256 = ((($255)) + 3072|0); + $257 = (($256) + ($254<<2)|0); + $258 = HEAP32[$257>>2]|0; + $259 = $251 ^ $258; + $260 = $b; + $261 = $260 >>> 24; + $262 = $0; + $263 = (($262) + ($261<<2)|0); + $264 = HEAP32[$263>>2]|0; + $265 = $259 ^ $264; + $y = $265; + $266 = $y; + $267 = $x; + $268 = (($267) + ($266))|0; + $x = $268; + $269 = $x; + $270 = $0; + $271 = ((($270)) + 4128|0); + $272 = ((($271)) + 20|0); + $273 = HEAP32[$272>>2]|0; + $274 = (($269) + ($273))|0; + $275 = $y; + $276 = (($275) + ($274))|0; + $y = $276; + $277 = $x; + $278 = $0; + $279 = ((($278)) + 4128|0); + $280 = ((($279)) + 16|0); + $281 = HEAP32[$280>>2]|0; + $282 = (($277) + ($281))|0; + $283 = $c; + $284 = $283 ^ $282; + $c = $284; + $285 = $c; + $286 = $285 >>> 1; + $287 = $c; + $288 = $287 << 31; + $289 = (($286) + ($288))|0; + $c = $289; + $290 = $d; + $291 = $290 << 1; + $292 = $d; + $293 = $292 >>> 31; + $294 = (($291) + ($293))|0; + $295 = $y; + $296 = $294 ^ $295; + $d = $296; + $297 = $c; + $298 = $297 & 255; + $299 = $0; + $300 = (($299) + ($298<<2)|0); + $301 = HEAP32[$300>>2]|0; + $302 = $c; + $303 = $302 >>> 8; + $304 = $303 & 255; + $305 = $0; + $306 = ((($305)) + 1024|0); + $307 = (($306) + ($304<<2)|0); + $308 = HEAP32[$307>>2]|0; + $309 = $301 ^ $308; + $310 = $c; + $311 = $310 >>> 16; + $312 = $311 & 255; + $313 = $0; + $314 = ((($313)) + 2048|0); + $315 = (($314) + ($312<<2)|0); + $316 = HEAP32[$315>>2]|0; + $317 = $309 ^ $316; + $318 = $c; + $319 = $318 >>> 24; + $320 = $0; + $321 = ((($320)) + 3072|0); + $322 = (($321) + ($319<<2)|0); + $323 = HEAP32[$322>>2]|0; + $324 = $317 ^ $323; + $x = $324; + $325 = $d; + $326 = $325 & 255; + $327 = $0; + $328 = ((($327)) + 1024|0); + $329 = (($328) + ($326<<2)|0); + $330 = HEAP32[$329>>2]|0; + $331 = $d; + $332 = $331 >>> 8; + $333 = $332 & 255; + $334 = $0; + $335 = ((($334)) + 2048|0); + $336 = (($335) + ($333<<2)|0); + $337 = HEAP32[$336>>2]|0; + $338 = $330 ^ $337; + $339 = $d; + $340 = $339 >>> 16; + $341 = $340 & 255; + $342 = $0; + $343 = ((($342)) + 3072|0); + $344 = (($343) + ($341<<2)|0); + $345 = HEAP32[$344>>2]|0; + $346 = $338 ^ $345; + $347 = $d; + $348 = $347 >>> 24; + $349 = $0; + $350 = (($349) + ($348<<2)|0); + $351 = HEAP32[$350>>2]|0; + $352 = $346 ^ $351; + $y = $352; + $353 = $y; + $354 = $x; + $355 = (($354) + ($353))|0; + $x = $355; + $356 = $x; + $357 = $0; + $358 = ((($357)) + 4128|0); + $359 = ((($358)) + 28|0); + $360 = HEAP32[$359>>2]|0; + $361 = (($356) + ($360))|0; + $362 = $y; + $363 = (($362) + ($361))|0; + $y = $363; + $364 = $x; + $365 = $0; + $366 = ((($365)) + 4128|0); + $367 = ((($366)) + 24|0); + $368 = HEAP32[$367>>2]|0; + $369 = (($364) + ($368))|0; + $370 = $a; + $371 = $370 ^ $369; + $a = $371; + $372 = $a; + $373 = $372 >>> 1; + $374 = $a; + $375 = $374 << 31; + $376 = (($373) + ($375))|0; + $a = $376; + $377 = $b; + $378 = $377 << 1; + $379 = $b; + $380 = $379 >>> 31; + $381 = (($378) + ($380))|0; + $382 = $y; + $383 = $381 ^ $382; + $b = $383; + $384 = $a; + $385 = $384 & 255; + $386 = $0; + $387 = (($386) + ($385<<2)|0); + $388 = HEAP32[$387>>2]|0; + $389 = $a; + $390 = $389 >>> 8; + $391 = $390 & 255; + $392 = $0; + $393 = ((($392)) + 1024|0); + $394 = (($393) + ($391<<2)|0); + $395 = HEAP32[$394>>2]|0; + $396 = $388 ^ $395; + $397 = $a; + $398 = $397 >>> 16; + $399 = $398 & 255; + $400 = $0; + $401 = ((($400)) + 2048|0); + $402 = (($401) + ($399<<2)|0); + $403 = HEAP32[$402>>2]|0; + $404 = $396 ^ $403; + $405 = $a; + $406 = $405 >>> 24; + $407 = $0; + $408 = ((($407)) + 3072|0); + $409 = (($408) + ($406<<2)|0); + $410 = HEAP32[$409>>2]|0; + $411 = $404 ^ $410; + $x = $411; + $412 = $b; + $413 = $412 & 255; + $414 = $0; + $415 = ((($414)) + 1024|0); + $416 = (($415) + ($413<<2)|0); + $417 = HEAP32[$416>>2]|0; + $418 = $b; + $419 = $418 >>> 8; + $420 = $419 & 255; + $421 = $0; + $422 = ((($421)) + 2048|0); + $423 = (($422) + ($420<<2)|0); + $424 = HEAP32[$423>>2]|0; + $425 = $417 ^ $424; + $426 = $b; + $427 = $426 >>> 16; + $428 = $427 & 255; + $429 = $0; + $430 = ((($429)) + 3072|0); + $431 = (($430) + ($428<<2)|0); + $432 = HEAP32[$431>>2]|0; + $433 = $425 ^ $432; + $434 = $b; + $435 = $434 >>> 24; + $436 = $0; + $437 = (($436) + ($435<<2)|0); + $438 = HEAP32[$437>>2]|0; + $439 = $433 ^ $438; + $y = $439; + $440 = $y; + $441 = $x; + $442 = (($441) + ($440))|0; + $x = $442; + $443 = $x; + $444 = $0; + $445 = ((($444)) + 4128|0); + $446 = ((($445)) + 36|0); + $447 = HEAP32[$446>>2]|0; + $448 = (($443) + ($447))|0; + $449 = $y; + $450 = (($449) + ($448))|0; + $y = $450; + $451 = $x; + $452 = $0; + $453 = ((($452)) + 4128|0); + $454 = ((($453)) + 32|0); + $455 = HEAP32[$454>>2]|0; + $456 = (($451) + ($455))|0; + $457 = $c; + $458 = $457 ^ $456; + $c = $458; + $459 = $c; + $460 = $459 >>> 1; + $461 = $c; + $462 = $461 << 31; + $463 = (($460) + ($462))|0; + $c = $463; + $464 = $d; + $465 = $464 << 1; + $466 = $d; + $467 = $466 >>> 31; + $468 = (($465) + ($467))|0; + $469 = $y; + $470 = $468 ^ $469; + $d = $470; + $471 = $c; + $472 = $471 & 255; + $473 = $0; + $474 = (($473) + ($472<<2)|0); + $475 = HEAP32[$474>>2]|0; + $476 = $c; + $477 = $476 >>> 8; + $478 = $477 & 255; + $479 = $0; + $480 = ((($479)) + 1024|0); + $481 = (($480) + ($478<<2)|0); + $482 = HEAP32[$481>>2]|0; + $483 = $475 ^ $482; + $484 = $c; + $485 = $484 >>> 16; + $486 = $485 & 255; + $487 = $0; + $488 = ((($487)) + 2048|0); + $489 = (($488) + ($486<<2)|0); + $490 = HEAP32[$489>>2]|0; + $491 = $483 ^ $490; + $492 = $c; + $493 = $492 >>> 24; + $494 = $0; + $495 = ((($494)) + 3072|0); + $496 = (($495) + ($493<<2)|0); + $497 = HEAP32[$496>>2]|0; + $498 = $491 ^ $497; + $x = $498; + $499 = $d; + $500 = $499 & 255; + $501 = $0; + $502 = ((($501)) + 1024|0); + $503 = (($502) + ($500<<2)|0); + $504 = HEAP32[$503>>2]|0; + $505 = $d; + $506 = $505 >>> 8; + $507 = $506 & 255; + $508 = $0; + $509 = ((($508)) + 2048|0); + $510 = (($509) + ($507<<2)|0); + $511 = HEAP32[$510>>2]|0; + $512 = $504 ^ $511; + $513 = $d; + $514 = $513 >>> 16; + $515 = $514 & 255; + $516 = $0; + $517 = ((($516)) + 3072|0); + $518 = (($517) + ($515<<2)|0); + $519 = HEAP32[$518>>2]|0; + $520 = $512 ^ $519; + $521 = $d; + $522 = $521 >>> 24; + $523 = $0; + $524 = (($523) + ($522<<2)|0); + $525 = HEAP32[$524>>2]|0; + $526 = $520 ^ $525; + $y = $526; + $527 = $y; + $528 = $x; + $529 = (($528) + ($527))|0; + $x = $529; + $530 = $x; + $531 = $0; + $532 = ((($531)) + 4128|0); + $533 = ((($532)) + 44|0); + $534 = HEAP32[$533>>2]|0; + $535 = (($530) + ($534))|0; + $536 = $y; + $537 = (($536) + ($535))|0; + $y = $537; + $538 = $x; + $539 = $0; + $540 = ((($539)) + 4128|0); + $541 = ((($540)) + 40|0); + $542 = HEAP32[$541>>2]|0; + $543 = (($538) + ($542))|0; + $544 = $a; + $545 = $544 ^ $543; + $a = $545; + $546 = $a; + $547 = $546 >>> 1; + $548 = $a; + $549 = $548 << 31; + $550 = (($547) + ($549))|0; + $a = $550; + $551 = $b; + $552 = $551 << 1; + $553 = $b; + $554 = $553 >>> 31; + $555 = (($552) + ($554))|0; + $556 = $y; + $557 = $555 ^ $556; + $b = $557; + $558 = $a; + $559 = $558 & 255; + $560 = $0; + $561 = (($560) + ($559<<2)|0); + $562 = HEAP32[$561>>2]|0; + $563 = $a; + $564 = $563 >>> 8; + $565 = $564 & 255; + $566 = $0; + $567 = ((($566)) + 1024|0); + $568 = (($567) + ($565<<2)|0); + $569 = HEAP32[$568>>2]|0; + $570 = $562 ^ $569; + $571 = $a; + $572 = $571 >>> 16; + $573 = $572 & 255; + $574 = $0; + $575 = ((($574)) + 2048|0); + $576 = (($575) + ($573<<2)|0); + $577 = HEAP32[$576>>2]|0; + $578 = $570 ^ $577; + $579 = $a; + $580 = $579 >>> 24; + $581 = $0; + $582 = ((($581)) + 3072|0); + $583 = (($582) + ($580<<2)|0); + $584 = HEAP32[$583>>2]|0; + $585 = $578 ^ $584; + $x = $585; + $586 = $b; + $587 = $586 & 255; + $588 = $0; + $589 = ((($588)) + 1024|0); + $590 = (($589) + ($587<<2)|0); + $591 = HEAP32[$590>>2]|0; + $592 = $b; + $593 = $592 >>> 8; + $594 = $593 & 255; + $595 = $0; + $596 = ((($595)) + 2048|0); + $597 = (($596) + ($594<<2)|0); + $598 = HEAP32[$597>>2]|0; + $599 = $591 ^ $598; + $600 = $b; + $601 = $600 >>> 16; + $602 = $601 & 255; + $603 = $0; + $604 = ((($603)) + 3072|0); + $605 = (($604) + ($602<<2)|0); + $606 = HEAP32[$605>>2]|0; + $607 = $599 ^ $606; + $608 = $b; + $609 = $608 >>> 24; + $610 = $0; + $611 = (($610) + ($609<<2)|0); + $612 = HEAP32[$611>>2]|0; + $613 = $607 ^ $612; + $y = $613; + $614 = $y; + $615 = $x; + $616 = (($615) + ($614))|0; + $x = $616; + $617 = $x; + $618 = $0; + $619 = ((($618)) + 4128|0); + $620 = ((($619)) + 52|0); + $621 = HEAP32[$620>>2]|0; + $622 = (($617) + ($621))|0; + $623 = $y; + $624 = (($623) + ($622))|0; + $y = $624; + $625 = $x; + $626 = $0; + $627 = ((($626)) + 4128|0); + $628 = ((($627)) + 48|0); + $629 = HEAP32[$628>>2]|0; + $630 = (($625) + ($629))|0; + $631 = $c; + $632 = $631 ^ $630; + $c = $632; + $633 = $c; + $634 = $633 >>> 1; + $635 = $c; + $636 = $635 << 31; + $637 = (($634) + ($636))|0; + $c = $637; + $638 = $d; + $639 = $638 << 1; + $640 = $d; + $641 = $640 >>> 31; + $642 = (($639) + ($641))|0; + $643 = $y; + $644 = $642 ^ $643; + $d = $644; + $645 = $c; + $646 = $645 & 255; + $647 = $0; + $648 = (($647) + ($646<<2)|0); + $649 = HEAP32[$648>>2]|0; + $650 = $c; + $651 = $650 >>> 8; + $652 = $651 & 255; + $653 = $0; + $654 = ((($653)) + 1024|0); + $655 = (($654) + ($652<<2)|0); + $656 = HEAP32[$655>>2]|0; + $657 = $649 ^ $656; + $658 = $c; + $659 = $658 >>> 16; + $660 = $659 & 255; + $661 = $0; + $662 = ((($661)) + 2048|0); + $663 = (($662) + ($660<<2)|0); + $664 = HEAP32[$663>>2]|0; + $665 = $657 ^ $664; + $666 = $c; + $667 = $666 >>> 24; + $668 = $0; + $669 = ((($668)) + 3072|0); + $670 = (($669) + ($667<<2)|0); + $671 = HEAP32[$670>>2]|0; + $672 = $665 ^ $671; + $x = $672; + $673 = $d; + $674 = $673 & 255; + $675 = $0; + $676 = ((($675)) + 1024|0); + $677 = (($676) + ($674<<2)|0); + $678 = HEAP32[$677>>2]|0; + $679 = $d; + $680 = $679 >>> 8; + $681 = $680 & 255; + $682 = $0; + $683 = ((($682)) + 2048|0); + $684 = (($683) + ($681<<2)|0); + $685 = HEAP32[$684>>2]|0; + $686 = $678 ^ $685; + $687 = $d; + $688 = $687 >>> 16; + $689 = $688 & 255; + $690 = $0; + $691 = ((($690)) + 3072|0); + $692 = (($691) + ($689<<2)|0); + $693 = HEAP32[$692>>2]|0; + $694 = $686 ^ $693; + $695 = $d; + $696 = $695 >>> 24; + $697 = $0; + $698 = (($697) + ($696<<2)|0); + $699 = HEAP32[$698>>2]|0; + $700 = $694 ^ $699; + $y = $700; + $701 = $y; + $702 = $x; + $703 = (($702) + ($701))|0; + $x = $703; + $704 = $x; + $705 = $0; + $706 = ((($705)) + 4128|0); + $707 = ((($706)) + 60|0); + $708 = HEAP32[$707>>2]|0; + $709 = (($704) + ($708))|0; + $710 = $y; + $711 = (($710) + ($709))|0; + $y = $711; + $712 = $x; + $713 = $0; + $714 = ((($713)) + 4128|0); + $715 = ((($714)) + 56|0); + $716 = HEAP32[$715>>2]|0; + $717 = (($712) + ($716))|0; + $718 = $a; + $719 = $718 ^ $717; + $a = $719; + $720 = $a; + $721 = $720 >>> 1; + $722 = $a; + $723 = $722 << 31; + $724 = (($721) + ($723))|0; + $a = $724; + $725 = $b; + $726 = $725 << 1; + $727 = $b; + $728 = $727 >>> 31; + $729 = (($726) + ($728))|0; + $730 = $y; + $731 = $729 ^ $730; + $b = $731; + $732 = $a; + $733 = $732 & 255; + $734 = $0; + $735 = (($734) + ($733<<2)|0); + $736 = HEAP32[$735>>2]|0; + $737 = $a; + $738 = $737 >>> 8; + $739 = $738 & 255; + $740 = $0; + $741 = ((($740)) + 1024|0); + $742 = (($741) + ($739<<2)|0); + $743 = HEAP32[$742>>2]|0; + $744 = $736 ^ $743; + $745 = $a; + $746 = $745 >>> 16; + $747 = $746 & 255; + $748 = $0; + $749 = ((($748)) + 2048|0); + $750 = (($749) + ($747<<2)|0); + $751 = HEAP32[$750>>2]|0; + $752 = $744 ^ $751; + $753 = $a; + $754 = $753 >>> 24; + $755 = $0; + $756 = ((($755)) + 3072|0); + $757 = (($756) + ($754<<2)|0); + $758 = HEAP32[$757>>2]|0; + $759 = $752 ^ $758; + $x = $759; + $760 = $b; + $761 = $760 & 255; + $762 = $0; + $763 = ((($762)) + 1024|0); + $764 = (($763) + ($761<<2)|0); + $765 = HEAP32[$764>>2]|0; + $766 = $b; + $767 = $766 >>> 8; + $768 = $767 & 255; + $769 = $0; + $770 = ((($769)) + 2048|0); + $771 = (($770) + ($768<<2)|0); + $772 = HEAP32[$771>>2]|0; + $773 = $765 ^ $772; + $774 = $b; + $775 = $774 >>> 16; + $776 = $775 & 255; + $777 = $0; + $778 = ((($777)) + 3072|0); + $779 = (($778) + ($776<<2)|0); + $780 = HEAP32[$779>>2]|0; + $781 = $773 ^ $780; + $782 = $b; + $783 = $782 >>> 24; + $784 = $0; + $785 = (($784) + ($783<<2)|0); + $786 = HEAP32[$785>>2]|0; + $787 = $781 ^ $786; + $y = $787; + $788 = $y; + $789 = $x; + $790 = (($789) + ($788))|0; + $x = $790; + $791 = $x; + $792 = $0; + $793 = ((($792)) + 4128|0); + $794 = ((($793)) + 68|0); + $795 = HEAP32[$794>>2]|0; + $796 = (($791) + ($795))|0; + $797 = $y; + $798 = (($797) + ($796))|0; + $y = $798; + $799 = $x; + $800 = $0; + $801 = ((($800)) + 4128|0); + $802 = ((($801)) + 64|0); + $803 = HEAP32[$802>>2]|0; + $804 = (($799) + ($803))|0; + $805 = $c; + $806 = $805 ^ $804; + $c = $806; + $807 = $c; + $808 = $807 >>> 1; + $809 = $c; + $810 = $809 << 31; + $811 = (($808) + ($810))|0; + $c = $811; + $812 = $d; + $813 = $812 << 1; + $814 = $d; + $815 = $814 >>> 31; + $816 = (($813) + ($815))|0; + $817 = $y; + $818 = $816 ^ $817; + $d = $818; + $819 = $c; + $820 = $819 & 255; + $821 = $0; + $822 = (($821) + ($820<<2)|0); + $823 = HEAP32[$822>>2]|0; + $824 = $c; + $825 = $824 >>> 8; + $826 = $825 & 255; + $827 = $0; + $828 = ((($827)) + 1024|0); + $829 = (($828) + ($826<<2)|0); + $830 = HEAP32[$829>>2]|0; + $831 = $823 ^ $830; + $832 = $c; + $833 = $832 >>> 16; + $834 = $833 & 255; + $835 = $0; + $836 = ((($835)) + 2048|0); + $837 = (($836) + ($834<<2)|0); + $838 = HEAP32[$837>>2]|0; + $839 = $831 ^ $838; + $840 = $c; + $841 = $840 >>> 24; + $842 = $0; + $843 = ((($842)) + 3072|0); + $844 = (($843) + ($841<<2)|0); + $845 = HEAP32[$844>>2]|0; + $846 = $839 ^ $845; + $x = $846; + $847 = $d; + $848 = $847 & 255; + $849 = $0; + $850 = ((($849)) + 1024|0); + $851 = (($850) + ($848<<2)|0); + $852 = HEAP32[$851>>2]|0; + $853 = $d; + $854 = $853 >>> 8; + $855 = $854 & 255; + $856 = $0; + $857 = ((($856)) + 2048|0); + $858 = (($857) + ($855<<2)|0); + $859 = HEAP32[$858>>2]|0; + $860 = $852 ^ $859; + $861 = $d; + $862 = $861 >>> 16; + $863 = $862 & 255; + $864 = $0; + $865 = ((($864)) + 3072|0); + $866 = (($865) + ($863<<2)|0); + $867 = HEAP32[$866>>2]|0; + $868 = $860 ^ $867; + $869 = $d; + $870 = $869 >>> 24; + $871 = $0; + $872 = (($871) + ($870<<2)|0); + $873 = HEAP32[$872>>2]|0; + $874 = $868 ^ $873; + $y = $874; + $875 = $y; + $876 = $x; + $877 = (($876) + ($875))|0; + $x = $877; + $878 = $x; + $879 = $0; + $880 = ((($879)) + 4128|0); + $881 = ((($880)) + 76|0); + $882 = HEAP32[$881>>2]|0; + $883 = (($878) + ($882))|0; + $884 = $y; + $885 = (($884) + ($883))|0; + $y = $885; + $886 = $x; + $887 = $0; + $888 = ((($887)) + 4128|0); + $889 = ((($888)) + 72|0); + $890 = HEAP32[$889>>2]|0; + $891 = (($886) + ($890))|0; + $892 = $a; + $893 = $892 ^ $891; + $a = $893; + $894 = $a; + $895 = $894 >>> 1; + $896 = $a; + $897 = $896 << 31; + $898 = (($895) + ($897))|0; + $a = $898; + $899 = $b; + $900 = $899 << 1; + $901 = $b; + $902 = $901 >>> 31; + $903 = (($900) + ($902))|0; + $904 = $y; + $905 = $903 ^ $904; + $b = $905; + $906 = $a; + $907 = $906 & 255; + $908 = $0; + $909 = (($908) + ($907<<2)|0); + $910 = HEAP32[$909>>2]|0; + $911 = $a; + $912 = $911 >>> 8; + $913 = $912 & 255; + $914 = $0; + $915 = ((($914)) + 1024|0); + $916 = (($915) + ($913<<2)|0); + $917 = HEAP32[$916>>2]|0; + $918 = $910 ^ $917; + $919 = $a; + $920 = $919 >>> 16; + $921 = $920 & 255; + $922 = $0; + $923 = ((($922)) + 2048|0); + $924 = (($923) + ($921<<2)|0); + $925 = HEAP32[$924>>2]|0; + $926 = $918 ^ $925; + $927 = $a; + $928 = $927 >>> 24; + $929 = $0; + $930 = ((($929)) + 3072|0); + $931 = (($930) + ($928<<2)|0); + $932 = HEAP32[$931>>2]|0; + $933 = $926 ^ $932; + $x = $933; + $934 = $b; + $935 = $934 & 255; + $936 = $0; + $937 = ((($936)) + 1024|0); + $938 = (($937) + ($935<<2)|0); + $939 = HEAP32[$938>>2]|0; + $940 = $b; + $941 = $940 >>> 8; + $942 = $941 & 255; + $943 = $0; + $944 = ((($943)) + 2048|0); + $945 = (($944) + ($942<<2)|0); + $946 = HEAP32[$945>>2]|0; + $947 = $939 ^ $946; + $948 = $b; + $949 = $948 >>> 16; + $950 = $949 & 255; + $951 = $0; + $952 = ((($951)) + 3072|0); + $953 = (($952) + ($950<<2)|0); + $954 = HEAP32[$953>>2]|0; + $955 = $947 ^ $954; + $956 = $b; + $957 = $956 >>> 24; + $958 = $0; + $959 = (($958) + ($957<<2)|0); + $960 = HEAP32[$959>>2]|0; + $961 = $955 ^ $960; + $y = $961; + $962 = $y; + $963 = $x; + $964 = (($963) + ($962))|0; + $x = $964; + $965 = $x; + $966 = $0; + $967 = ((($966)) + 4128|0); + $968 = ((($967)) + 84|0); + $969 = HEAP32[$968>>2]|0; + $970 = (($965) + ($969))|0; + $971 = $y; + $972 = (($971) + ($970))|0; + $y = $972; + $973 = $x; + $974 = $0; + $975 = ((($974)) + 4128|0); + $976 = ((($975)) + 80|0); + $977 = HEAP32[$976>>2]|0; + $978 = (($973) + ($977))|0; + $979 = $c; + $980 = $979 ^ $978; + $c = $980; + $981 = $c; + $982 = $981 >>> 1; + $983 = $c; + $984 = $983 << 31; + $985 = (($982) + ($984))|0; + $c = $985; + $986 = $d; + $987 = $986 << 1; + $988 = $d; + $989 = $988 >>> 31; + $990 = (($987) + ($989))|0; + $991 = $y; + $992 = $990 ^ $991; + $d = $992; + $993 = $c; + $994 = $993 & 255; + $995 = $0; + $996 = (($995) + ($994<<2)|0); + $997 = HEAP32[$996>>2]|0; + $998 = $c; + $999 = $998 >>> 8; + $1000 = $999 & 255; + $1001 = $0; + $1002 = ((($1001)) + 1024|0); + $1003 = (($1002) + ($1000<<2)|0); + $1004 = HEAP32[$1003>>2]|0; + $1005 = $997 ^ $1004; + $1006 = $c; + $1007 = $1006 >>> 16; + $1008 = $1007 & 255; + $1009 = $0; + $1010 = ((($1009)) + 2048|0); + $1011 = (($1010) + ($1008<<2)|0); + $1012 = HEAP32[$1011>>2]|0; + $1013 = $1005 ^ $1012; + $1014 = $c; + $1015 = $1014 >>> 24; + $1016 = $0; + $1017 = ((($1016)) + 3072|0); + $1018 = (($1017) + ($1015<<2)|0); + $1019 = HEAP32[$1018>>2]|0; + $1020 = $1013 ^ $1019; + $x = $1020; + $1021 = $d; + $1022 = $1021 & 255; + $1023 = $0; + $1024 = ((($1023)) + 1024|0); + $1025 = (($1024) + ($1022<<2)|0); + $1026 = HEAP32[$1025>>2]|0; + $1027 = $d; + $1028 = $1027 >>> 8; + $1029 = $1028 & 255; + $1030 = $0; + $1031 = ((($1030)) + 2048|0); + $1032 = (($1031) + ($1029<<2)|0); + $1033 = HEAP32[$1032>>2]|0; + $1034 = $1026 ^ $1033; + $1035 = $d; + $1036 = $1035 >>> 16; + $1037 = $1036 & 255; + $1038 = $0; + $1039 = ((($1038)) + 3072|0); + $1040 = (($1039) + ($1037<<2)|0); + $1041 = HEAP32[$1040>>2]|0; + $1042 = $1034 ^ $1041; + $1043 = $d; + $1044 = $1043 >>> 24; + $1045 = $0; + $1046 = (($1045) + ($1044<<2)|0); + $1047 = HEAP32[$1046>>2]|0; + $1048 = $1042 ^ $1047; + $y = $1048; + $1049 = $y; + $1050 = $x; + $1051 = (($1050) + ($1049))|0; + $x = $1051; + $1052 = $x; + $1053 = $0; + $1054 = ((($1053)) + 4128|0); + $1055 = ((($1054)) + 92|0); + $1056 = HEAP32[$1055>>2]|0; + $1057 = (($1052) + ($1056))|0; + $1058 = $y; + $1059 = (($1058) + ($1057))|0; + $y = $1059; + $1060 = $x; + $1061 = $0; + $1062 = ((($1061)) + 4128|0); + $1063 = ((($1062)) + 88|0); + $1064 = HEAP32[$1063>>2]|0; + $1065 = (($1060) + ($1064))|0; + $1066 = $a; + $1067 = $1066 ^ $1065; + $a = $1067; + $1068 = $a; + $1069 = $1068 >>> 1; + $1070 = $a; + $1071 = $1070 << 31; + $1072 = (($1069) + ($1071))|0; + $a = $1072; + $1073 = $b; + $1074 = $1073 << 1; + $1075 = $b; + $1076 = $1075 >>> 31; + $1077 = (($1074) + ($1076))|0; + $1078 = $y; + $1079 = $1077 ^ $1078; + $b = $1079; + $1080 = $a; + $1081 = $1080 & 255; + $1082 = $0; + $1083 = (($1082) + ($1081<<2)|0); + $1084 = HEAP32[$1083>>2]|0; + $1085 = $a; + $1086 = $1085 >>> 8; + $1087 = $1086 & 255; + $1088 = $0; + $1089 = ((($1088)) + 1024|0); + $1090 = (($1089) + ($1087<<2)|0); + $1091 = HEAP32[$1090>>2]|0; + $1092 = $1084 ^ $1091; + $1093 = $a; + $1094 = $1093 >>> 16; + $1095 = $1094 & 255; + $1096 = $0; + $1097 = ((($1096)) + 2048|0); + $1098 = (($1097) + ($1095<<2)|0); + $1099 = HEAP32[$1098>>2]|0; + $1100 = $1092 ^ $1099; + $1101 = $a; + $1102 = $1101 >>> 24; + $1103 = $0; + $1104 = ((($1103)) + 3072|0); + $1105 = (($1104) + ($1102<<2)|0); + $1106 = HEAP32[$1105>>2]|0; + $1107 = $1100 ^ $1106; + $x = $1107; + $1108 = $b; + $1109 = $1108 & 255; + $1110 = $0; + $1111 = ((($1110)) + 1024|0); + $1112 = (($1111) + ($1109<<2)|0); + $1113 = HEAP32[$1112>>2]|0; + $1114 = $b; + $1115 = $1114 >>> 8; + $1116 = $1115 & 255; + $1117 = $0; + $1118 = ((($1117)) + 2048|0); + $1119 = (($1118) + ($1116<<2)|0); + $1120 = HEAP32[$1119>>2]|0; + $1121 = $1113 ^ $1120; + $1122 = $b; + $1123 = $1122 >>> 16; + $1124 = $1123 & 255; + $1125 = $0; + $1126 = ((($1125)) + 3072|0); + $1127 = (($1126) + ($1124<<2)|0); + $1128 = HEAP32[$1127>>2]|0; + $1129 = $1121 ^ $1128; + $1130 = $b; + $1131 = $1130 >>> 24; + $1132 = $0; + $1133 = (($1132) + ($1131<<2)|0); + $1134 = HEAP32[$1133>>2]|0; + $1135 = $1129 ^ $1134; + $y = $1135; + $1136 = $y; + $1137 = $x; + $1138 = (($1137) + ($1136))|0; + $x = $1138; + $1139 = $x; + $1140 = $0; + $1141 = ((($1140)) + 4128|0); + $1142 = ((($1141)) + 100|0); + $1143 = HEAP32[$1142>>2]|0; + $1144 = (($1139) + ($1143))|0; + $1145 = $y; + $1146 = (($1145) + ($1144))|0; + $y = $1146; + $1147 = $x; + $1148 = $0; + $1149 = ((($1148)) + 4128|0); + $1150 = ((($1149)) + 96|0); + $1151 = HEAP32[$1150>>2]|0; + $1152 = (($1147) + ($1151))|0; + $1153 = $c; + $1154 = $1153 ^ $1152; + $c = $1154; + $1155 = $c; + $1156 = $1155 >>> 1; + $1157 = $c; + $1158 = $1157 << 31; + $1159 = (($1156) + ($1158))|0; + $c = $1159; + $1160 = $d; + $1161 = $1160 << 1; + $1162 = $d; + $1163 = $1162 >>> 31; + $1164 = (($1161) + ($1163))|0; + $1165 = $y; + $1166 = $1164 ^ $1165; + $d = $1166; + $1167 = $c; + $1168 = $1167 & 255; + $1169 = $0; + $1170 = (($1169) + ($1168<<2)|0); + $1171 = HEAP32[$1170>>2]|0; + $1172 = $c; + $1173 = $1172 >>> 8; + $1174 = $1173 & 255; + $1175 = $0; + $1176 = ((($1175)) + 1024|0); + $1177 = (($1176) + ($1174<<2)|0); + $1178 = HEAP32[$1177>>2]|0; + $1179 = $1171 ^ $1178; + $1180 = $c; + $1181 = $1180 >>> 16; + $1182 = $1181 & 255; + $1183 = $0; + $1184 = ((($1183)) + 2048|0); + $1185 = (($1184) + ($1182<<2)|0); + $1186 = HEAP32[$1185>>2]|0; + $1187 = $1179 ^ $1186; + $1188 = $c; + $1189 = $1188 >>> 24; + $1190 = $0; + $1191 = ((($1190)) + 3072|0); + $1192 = (($1191) + ($1189<<2)|0); + $1193 = HEAP32[$1192>>2]|0; + $1194 = $1187 ^ $1193; + $x = $1194; + $1195 = $d; + $1196 = $1195 & 255; + $1197 = $0; + $1198 = ((($1197)) + 1024|0); + $1199 = (($1198) + ($1196<<2)|0); + $1200 = HEAP32[$1199>>2]|0; + $1201 = $d; + $1202 = $1201 >>> 8; + $1203 = $1202 & 255; + $1204 = $0; + $1205 = ((($1204)) + 2048|0); + $1206 = (($1205) + ($1203<<2)|0); + $1207 = HEAP32[$1206>>2]|0; + $1208 = $1200 ^ $1207; + $1209 = $d; + $1210 = $1209 >>> 16; + $1211 = $1210 & 255; + $1212 = $0; + $1213 = ((($1212)) + 3072|0); + $1214 = (($1213) + ($1211<<2)|0); + $1215 = HEAP32[$1214>>2]|0; + $1216 = $1208 ^ $1215; + $1217 = $d; + $1218 = $1217 >>> 24; + $1219 = $0; + $1220 = (($1219) + ($1218<<2)|0); + $1221 = HEAP32[$1220>>2]|0; + $1222 = $1216 ^ $1221; + $y = $1222; + $1223 = $y; + $1224 = $x; + $1225 = (($1224) + ($1223))|0; + $x = $1225; + $1226 = $x; + $1227 = $0; + $1228 = ((($1227)) + 4128|0); + $1229 = ((($1228)) + 108|0); + $1230 = HEAP32[$1229>>2]|0; + $1231 = (($1226) + ($1230))|0; + $1232 = $y; + $1233 = (($1232) + ($1231))|0; + $y = $1233; + $1234 = $x; + $1235 = $0; + $1236 = ((($1235)) + 4128|0); + $1237 = ((($1236)) + 104|0); + $1238 = HEAP32[$1237>>2]|0; + $1239 = (($1234) + ($1238))|0; + $1240 = $a; + $1241 = $1240 ^ $1239; + $a = $1241; + $1242 = $a; + $1243 = $1242 >>> 1; + $1244 = $a; + $1245 = $1244 << 31; + $1246 = (($1243) + ($1245))|0; + $a = $1246; + $1247 = $b; + $1248 = $1247 << 1; + $1249 = $b; + $1250 = $1249 >>> 31; + $1251 = (($1248) + ($1250))|0; + $1252 = $y; + $1253 = $1251 ^ $1252; + $b = $1253; + $1254 = $a; + $1255 = $1254 & 255; + $1256 = $0; + $1257 = (($1256) + ($1255<<2)|0); + $1258 = HEAP32[$1257>>2]|0; + $1259 = $a; + $1260 = $1259 >>> 8; + $1261 = $1260 & 255; + $1262 = $0; + $1263 = ((($1262)) + 1024|0); + $1264 = (($1263) + ($1261<<2)|0); + $1265 = HEAP32[$1264>>2]|0; + $1266 = $1258 ^ $1265; + $1267 = $a; + $1268 = $1267 >>> 16; + $1269 = $1268 & 255; + $1270 = $0; + $1271 = ((($1270)) + 2048|0); + $1272 = (($1271) + ($1269<<2)|0); + $1273 = HEAP32[$1272>>2]|0; + $1274 = $1266 ^ $1273; + $1275 = $a; + $1276 = $1275 >>> 24; + $1277 = $0; + $1278 = ((($1277)) + 3072|0); + $1279 = (($1278) + ($1276<<2)|0); + $1280 = HEAP32[$1279>>2]|0; + $1281 = $1274 ^ $1280; + $x = $1281; + $1282 = $b; + $1283 = $1282 & 255; + $1284 = $0; + $1285 = ((($1284)) + 1024|0); + $1286 = (($1285) + ($1283<<2)|0); + $1287 = HEAP32[$1286>>2]|0; + $1288 = $b; + $1289 = $1288 >>> 8; + $1290 = $1289 & 255; + $1291 = $0; + $1292 = ((($1291)) + 2048|0); + $1293 = (($1292) + ($1290<<2)|0); + $1294 = HEAP32[$1293>>2]|0; + $1295 = $1287 ^ $1294; + $1296 = $b; + $1297 = $1296 >>> 16; + $1298 = $1297 & 255; + $1299 = $0; + $1300 = ((($1299)) + 3072|0); + $1301 = (($1300) + ($1298<<2)|0); + $1302 = HEAP32[$1301>>2]|0; + $1303 = $1295 ^ $1302; + $1304 = $b; + $1305 = $1304 >>> 24; + $1306 = $0; + $1307 = (($1306) + ($1305<<2)|0); + $1308 = HEAP32[$1307>>2]|0; + $1309 = $1303 ^ $1308; + $y = $1309; + $1310 = $y; + $1311 = $x; + $1312 = (($1311) + ($1310))|0; + $x = $1312; + $1313 = $x; + $1314 = $0; + $1315 = ((($1314)) + 4128|0); + $1316 = ((($1315)) + 116|0); + $1317 = HEAP32[$1316>>2]|0; + $1318 = (($1313) + ($1317))|0; + $1319 = $y; + $1320 = (($1319) + ($1318))|0; + $y = $1320; + $1321 = $x; + $1322 = $0; + $1323 = ((($1322)) + 4128|0); + $1324 = ((($1323)) + 112|0); + $1325 = HEAP32[$1324>>2]|0; + $1326 = (($1321) + ($1325))|0; + $1327 = $c; + $1328 = $1327 ^ $1326; + $c = $1328; + $1329 = $c; + $1330 = $1329 >>> 1; + $1331 = $c; + $1332 = $1331 << 31; + $1333 = (($1330) + ($1332))|0; + $c = $1333; + $1334 = $d; + $1335 = $1334 << 1; + $1336 = $d; + $1337 = $1336 >>> 31; + $1338 = (($1335) + ($1337))|0; + $1339 = $y; + $1340 = $1338 ^ $1339; + $d = $1340; + $1341 = $c; + $1342 = $1341 & 255; + $1343 = $0; + $1344 = (($1343) + ($1342<<2)|0); + $1345 = HEAP32[$1344>>2]|0; + $1346 = $c; + $1347 = $1346 >>> 8; + $1348 = $1347 & 255; + $1349 = $0; + $1350 = ((($1349)) + 1024|0); + $1351 = (($1350) + ($1348<<2)|0); + $1352 = HEAP32[$1351>>2]|0; + $1353 = $1345 ^ $1352; + $1354 = $c; + $1355 = $1354 >>> 16; + $1356 = $1355 & 255; + $1357 = $0; + $1358 = ((($1357)) + 2048|0); + $1359 = (($1358) + ($1356<<2)|0); + $1360 = HEAP32[$1359>>2]|0; + $1361 = $1353 ^ $1360; + $1362 = $c; + $1363 = $1362 >>> 24; + $1364 = $0; + $1365 = ((($1364)) + 3072|0); + $1366 = (($1365) + ($1363<<2)|0); + $1367 = HEAP32[$1366>>2]|0; + $1368 = $1361 ^ $1367; + $x = $1368; + $1369 = $d; + $1370 = $1369 & 255; + $1371 = $0; + $1372 = ((($1371)) + 1024|0); + $1373 = (($1372) + ($1370<<2)|0); + $1374 = HEAP32[$1373>>2]|0; + $1375 = $d; + $1376 = $1375 >>> 8; + $1377 = $1376 & 255; + $1378 = $0; + $1379 = ((($1378)) + 2048|0); + $1380 = (($1379) + ($1377<<2)|0); + $1381 = HEAP32[$1380>>2]|0; + $1382 = $1374 ^ $1381; + $1383 = $d; + $1384 = $1383 >>> 16; + $1385 = $1384 & 255; + $1386 = $0; + $1387 = ((($1386)) + 3072|0); + $1388 = (($1387) + ($1385<<2)|0); + $1389 = HEAP32[$1388>>2]|0; + $1390 = $1382 ^ $1389; + $1391 = $d; + $1392 = $1391 >>> 24; + $1393 = $0; + $1394 = (($1393) + ($1392<<2)|0); + $1395 = HEAP32[$1394>>2]|0; + $1396 = $1390 ^ $1395; + $y = $1396; + $1397 = $y; + $1398 = $x; + $1399 = (($1398) + ($1397))|0; + $x = $1399; + $1400 = $x; + $1401 = $0; + $1402 = ((($1401)) + 4128|0); + $1403 = ((($1402)) + 124|0); + $1404 = HEAP32[$1403>>2]|0; + $1405 = (($1400) + ($1404))|0; + $1406 = $y; + $1407 = (($1406) + ($1405))|0; + $y = $1407; + $1408 = $x; + $1409 = $0; + $1410 = ((($1409)) + 4128|0); + $1411 = ((($1410)) + 120|0); + $1412 = HEAP32[$1411>>2]|0; + $1413 = (($1408) + ($1412))|0; + $1414 = $a; + $1415 = $1414 ^ $1413; + $a = $1415; + $1416 = $a; + $1417 = $1416 >>> 1; + $1418 = $a; + $1419 = $1418 << 31; + $1420 = (($1417) + ($1419))|0; + $a = $1420; + $1421 = $b; + $1422 = $1421 << 1; + $1423 = $b; + $1424 = $1423 >>> 31; + $1425 = (($1422) + ($1424))|0; + $1426 = $y; + $1427 = $1425 ^ $1426; + $b = $1427; + $1428 = $0; + $1429 = ((($1428)) + 4096|0); + $1430 = ((($1429)) + 16|0); + $1431 = HEAP32[$1430>>2]|0; + $1432 = $c; + $1433 = $1432 ^ $1431; + $c = $1433; + $1434 = $1; + $1435 = $c; + _buf_put_le32_1450($1434,$1435); + $1436 = $0; + $1437 = ((($1436)) + 4096|0); + $1438 = ((($1437)) + 20|0); + $1439 = HEAP32[$1438>>2]|0; + $1440 = $d; + $1441 = $1440 ^ $1439; + $d = $1441; + $1442 = $1; + $1443 = ((($1442)) + 4|0); + $1444 = $d; + _buf_put_le32_1450($1443,$1444); + $1445 = $0; + $1446 = ((($1445)) + 4096|0); + $1447 = ((($1446)) + 24|0); + $1448 = HEAP32[$1447>>2]|0; + $1449 = $a; + $1450 = $1449 ^ $1448; + $a = $1450; + $1451 = $1; + $1452 = ((($1451)) + 8|0); + $1453 = $a; + _buf_put_le32_1450($1452,$1453); + $1454 = $0; + $1455 = ((($1454)) + 4096|0); + $1456 = ((($1455)) + 28|0); + $1457 = HEAP32[$1456>>2]|0; + $1458 = $b; + $1459 = $1458 ^ $1457; + $b = $1459; + $1460 = $1; + $1461 = ((($1460)) + 12|0); + $1462 = $b; + _buf_put_le32_1450($1461,$1462); + STACKTOP = sp;return; +} +function _buf_get_le32_1449($_buf) { + $_buf = $_buf|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $in = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_buf; + $1 = $0; + $in = $1; + $2 = $in; + $3 = ((($2)) + 3|0); + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = $5 << 24; + $7 = $in; + $8 = ((($7)) + 2|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = $10 << 16; + $12 = $6 | $11; + $13 = $in; + $14 = ((($13)) + 1|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = $16 << 8; + $18 = $12 | $17; + $19 = $in; + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = $18 | $21; + STACKTOP = sp;return ($22|0); +} +function _buf_put_le32_1450($_buf,$val) { + $_buf = $_buf|0; + $val = $val|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $out = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_buf; + $1 = $val; + $2 = $0; + $out = $2; + $3 = $1; + $4 = $3 >>> 24; + $5 = $4&255; + $6 = $out; + $7 = ((($6)) + 3|0); + HEAP8[$7>>0] = $5; + $8 = $1; + $9 = $8 >>> 16; + $10 = $9&255; + $11 = $out; + $12 = ((($11)) + 2|0); + HEAP8[$12>>0] = $10; + $13 = $1; + $14 = $13 >>> 8; + $15 = $14&255; + $16 = $out; + $17 = ((($16)) + 1|0); + HEAP8[$17>>0] = $15; + $18 = $1; + $19 = $18&255; + $20 = $out; + HEAP8[$20>>0] = $19; + STACKTOP = sp;return; +} +function _twofish_decrypt($context,$out,$in) { + $context = $context|0; + $out = $out|0; + $in = $in|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $ctx = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $out; + $2 = $in; + $3 = $0; + $ctx = $3; + $4 = $ctx; + $5 = $1; + $6 = $2; + _do_twofish_decrypt($4,$5,$6); + STACKTOP = sp;return 36; +} +function _do_twofish_decrypt($ctx,$out,$in) { + $ctx = $ctx|0; + $out = $out|0; + $in = $in|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0; + var $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0; + var $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0; + var $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0; + var $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0; + var $1088 = 0, $1089 = 0, $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 0, $1094 = 0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0, $11 = 0, $110 = 0, $1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0; + var $1105 = 0, $1106 = 0, $1107 = 0, $1108 = 0, $1109 = 0, $111 = 0, $1110 = 0, $1111 = 0, $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 0, $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0; + var $1123 = 0, $1124 = 0, $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0; + var $1141 = 0, $1142 = 0, $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0; + var $116 = 0, $1160 = 0, $1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 0, $1166 = 0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0; + var $1178 = 0, $1179 = 0, $118 = 0, $1180 = 0, $1181 = 0, $1182 = 0, $1183 = 0, $1184 = 0, $1185 = 0, $1186 = 0, $1187 = 0, $1188 = 0, $1189 = 0, $119 = 0, $1190 = 0, $1191 = 0, $1192 = 0, $1193 = 0, $1194 = 0, $1195 = 0; + var $1196 = 0, $1197 = 0, $1198 = 0, $1199 = 0, $12 = 0, $120 = 0, $1200 = 0, $1201 = 0, $1202 = 0, $1203 = 0, $1204 = 0, $1205 = 0, $1206 = 0, $1207 = 0, $1208 = 0, $1209 = 0, $121 = 0, $1210 = 0, $1211 = 0, $1212 = 0; + var $1213 = 0, $1214 = 0, $1215 = 0, $1216 = 0, $1217 = 0, $1218 = 0, $1219 = 0, $122 = 0, $1220 = 0, $1221 = 0, $1222 = 0, $1223 = 0, $1224 = 0, $1225 = 0, $1226 = 0, $1227 = 0, $1228 = 0, $1229 = 0, $123 = 0, $1230 = 0; + var $1231 = 0, $1232 = 0, $1233 = 0, $1234 = 0, $1235 = 0, $1236 = 0, $1237 = 0, $1238 = 0, $1239 = 0, $124 = 0, $1240 = 0, $1241 = 0, $1242 = 0, $1243 = 0, $1244 = 0, $1245 = 0, $1246 = 0, $1247 = 0, $1248 = 0, $1249 = 0; + var $125 = 0, $1250 = 0, $1251 = 0, $1252 = 0, $1253 = 0, $1254 = 0, $1255 = 0, $1256 = 0, $1257 = 0, $1258 = 0, $1259 = 0, $126 = 0, $1260 = 0, $1261 = 0, $1262 = 0, $1263 = 0, $1264 = 0, $1265 = 0, $1266 = 0, $1267 = 0; + var $1268 = 0, $1269 = 0, $127 = 0, $1270 = 0, $1271 = 0, $1272 = 0, $1273 = 0, $1274 = 0, $1275 = 0, $1276 = 0, $1277 = 0, $1278 = 0, $1279 = 0, $128 = 0, $1280 = 0, $1281 = 0, $1282 = 0, $1283 = 0, $1284 = 0, $1285 = 0; + var $1286 = 0, $1287 = 0, $1288 = 0, $1289 = 0, $129 = 0, $1290 = 0, $1291 = 0, $1292 = 0, $1293 = 0, $1294 = 0, $1295 = 0, $1296 = 0, $1297 = 0, $1298 = 0, $1299 = 0, $13 = 0, $130 = 0, $1300 = 0, $1301 = 0, $1302 = 0; + var $1303 = 0, $1304 = 0, $1305 = 0, $1306 = 0, $1307 = 0, $1308 = 0, $1309 = 0, $131 = 0, $1310 = 0, $1311 = 0, $1312 = 0, $1313 = 0, $1314 = 0, $1315 = 0, $1316 = 0, $1317 = 0, $1318 = 0, $1319 = 0, $132 = 0, $1320 = 0; + var $1321 = 0, $1322 = 0, $1323 = 0, $1324 = 0, $1325 = 0, $1326 = 0, $1327 = 0, $1328 = 0, $1329 = 0, $133 = 0, $1330 = 0, $1331 = 0, $1332 = 0, $1333 = 0, $1334 = 0, $1335 = 0, $1336 = 0, $1337 = 0, $1338 = 0, $1339 = 0; + var $134 = 0, $1340 = 0, $1341 = 0, $1342 = 0, $1343 = 0, $1344 = 0, $1345 = 0, $1346 = 0, $1347 = 0, $1348 = 0, $1349 = 0, $135 = 0, $1350 = 0, $1351 = 0, $1352 = 0, $1353 = 0, $1354 = 0, $1355 = 0, $1356 = 0, $1357 = 0; + var $1358 = 0, $1359 = 0, $136 = 0, $1360 = 0, $1361 = 0, $1362 = 0, $1363 = 0, $1364 = 0, $1365 = 0, $1366 = 0, $1367 = 0, $1368 = 0, $1369 = 0, $137 = 0, $1370 = 0, $1371 = 0, $1372 = 0, $1373 = 0, $1374 = 0, $1375 = 0; + var $1376 = 0, $1377 = 0, $1378 = 0, $1379 = 0, $138 = 0, $1380 = 0, $1381 = 0, $1382 = 0, $1383 = 0, $1384 = 0, $1385 = 0, $1386 = 0, $1387 = 0, $1388 = 0, $1389 = 0, $139 = 0, $1390 = 0, $1391 = 0, $1392 = 0, $1393 = 0; + var $1394 = 0, $1395 = 0, $1396 = 0, $1397 = 0, $1398 = 0, $1399 = 0, $14 = 0, $140 = 0, $1400 = 0, $1401 = 0, $1402 = 0, $1403 = 0, $1404 = 0, $1405 = 0, $1406 = 0, $1407 = 0, $1408 = 0, $1409 = 0, $141 = 0, $1410 = 0; + var $1411 = 0, $1412 = 0, $1413 = 0, $1414 = 0, $1415 = 0, $1416 = 0, $1417 = 0, $1418 = 0, $1419 = 0, $142 = 0, $1420 = 0, $1421 = 0, $1422 = 0, $1423 = 0, $1424 = 0, $1425 = 0, $1426 = 0, $1427 = 0, $1428 = 0, $1429 = 0; + var $143 = 0, $1430 = 0, $1431 = 0, $1432 = 0, $1433 = 0, $1434 = 0, $1435 = 0, $1436 = 0, $1437 = 0, $1438 = 0, $1439 = 0, $144 = 0, $1440 = 0, $1441 = 0, $1442 = 0, $1443 = 0, $1444 = 0, $1445 = 0, $1446 = 0, $1447 = 0; + var $1448 = 0, $1449 = 0, $145 = 0, $1450 = 0, $1451 = 0, $1452 = 0, $1453 = 0, $1454 = 0, $1455 = 0, $1456 = 0, $1457 = 0, $1458 = 0, $1459 = 0, $146 = 0, $1460 = 0, $1461 = 0, $1462 = 0, $1463 = 0, $1464 = 0, $1465 = 0; + var $1466 = 0, $1467 = 0, $1468 = 0, $1469 = 0, $147 = 0, $1470 = 0, $1471 = 0, $1472 = 0, $1473 = 0, $1474 = 0, $1475 = 0, $1476 = 0, $1477 = 0, $1478 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0; + var $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0; + var $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0; + var $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0; + var $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0; + var $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0; + var $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0; + var $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0; + var $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0; + var $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0; + var $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0; + var $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0; + var $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0; + var $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0; + var $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0; + var $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0; + var $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0; + var $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0; + var $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0, $477 = 0; + var $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0, $495 = 0; + var $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0, $512 = 0; + var $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0, $530 = 0; + var $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0, $549 = 0; + var $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0, $567 = 0; + var $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0, $585 = 0; + var $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0, $602 = 0; + var $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0, $620 = 0; + var $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0, $639 = 0; + var $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0, $657 = 0; + var $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0, $675 = 0; + var $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0, $693 = 0; + var $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0, $710 = 0; + var $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 = 0; + var $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0, $747 = 0; + var $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0, $765 = 0; + var $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0, $783 = 0; + var $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 0; + var $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0; + var $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 = 0; + var $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0; + var $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0, $873 = 0; + var $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0, $891 = 0; + var $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0; + var $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0, $927 = 0; + var $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0; + var $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0, $963 = 0; + var $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0, $981 = 0; + var $982 = 0, $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0, $a = 0; + var $b = 0, $c = 0, $d = 0, $x = 0, $y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $1 = $out; + $2 = $in; + $3 = $2; + $4 = (_buf_get_le32_1449($3)|0); + $c = $4; + $5 = $0; + $6 = ((($5)) + 4096|0); + $7 = ((($6)) + 16|0); + $8 = HEAP32[$7>>2]|0; + $9 = $c; + $10 = $9 ^ $8; + $c = $10; + $11 = $2; + $12 = ((($11)) + 4|0); + $13 = (_buf_get_le32_1449($12)|0); + $d = $13; + $14 = $0; + $15 = ((($14)) + 4096|0); + $16 = ((($15)) + 20|0); + $17 = HEAP32[$16>>2]|0; + $18 = $d; + $19 = $18 ^ $17; + $d = $19; + $20 = $2; + $21 = ((($20)) + 8|0); + $22 = (_buf_get_le32_1449($21)|0); + $a = $22; + $23 = $0; + $24 = ((($23)) + 4096|0); + $25 = ((($24)) + 24|0); + $26 = HEAP32[$25>>2]|0; + $27 = $a; + $28 = $27 ^ $26; + $a = $28; + $29 = $2; + $30 = ((($29)) + 12|0); + $31 = (_buf_get_le32_1449($30)|0); + $b = $31; + $32 = $0; + $33 = ((($32)) + 4096|0); + $34 = ((($33)) + 28|0); + $35 = HEAP32[$34>>2]|0; + $36 = $b; + $37 = $36 ^ $35; + $b = $37; + $38 = $c; + $39 = $38 & 255; + $40 = $0; + $41 = (($40) + ($39<<2)|0); + $42 = HEAP32[$41>>2]|0; + $43 = $c; + $44 = $43 >>> 8; + $45 = $44 & 255; + $46 = $0; + $47 = ((($46)) + 1024|0); + $48 = (($47) + ($45<<2)|0); + $49 = HEAP32[$48>>2]|0; + $50 = $42 ^ $49; + $51 = $c; + $52 = $51 >>> 16; + $53 = $52 & 255; + $54 = $0; + $55 = ((($54)) + 2048|0); + $56 = (($55) + ($53<<2)|0); + $57 = HEAP32[$56>>2]|0; + $58 = $50 ^ $57; + $59 = $c; + $60 = $59 >>> 24; + $61 = $0; + $62 = ((($61)) + 3072|0); + $63 = (($62) + ($60<<2)|0); + $64 = HEAP32[$63>>2]|0; + $65 = $58 ^ $64; + $x = $65; + $66 = $d; + $67 = $66 & 255; + $68 = $0; + $69 = ((($68)) + 1024|0); + $70 = (($69) + ($67<<2)|0); + $71 = HEAP32[$70>>2]|0; + $72 = $d; + $73 = $72 >>> 8; + $74 = $73 & 255; + $75 = $0; + $76 = ((($75)) + 2048|0); + $77 = (($76) + ($74<<2)|0); + $78 = HEAP32[$77>>2]|0; + $79 = $71 ^ $78; + $80 = $d; + $81 = $80 >>> 16; + $82 = $81 & 255; + $83 = $0; + $84 = ((($83)) + 3072|0); + $85 = (($84) + ($82<<2)|0); + $86 = HEAP32[$85>>2]|0; + $87 = $79 ^ $86; + $88 = $d; + $89 = $88 >>> 24; + $90 = $0; + $91 = (($90) + ($89<<2)|0); + $92 = HEAP32[$91>>2]|0; + $93 = $87 ^ $92; + $y = $93; + $94 = $y; + $95 = $x; + $96 = (($95) + ($94))|0; + $x = $96; + $97 = $x; + $98 = $y; + $99 = (($98) + ($97))|0; + $y = $99; + $100 = $y; + $101 = $0; + $102 = ((($101)) + 4128|0); + $103 = ((($102)) + 124|0); + $104 = HEAP32[$103>>2]|0; + $105 = (($100) + ($104))|0; + $106 = $b; + $107 = $106 ^ $105; + $b = $107; + $108 = $b; + $109 = $108 >>> 1; + $110 = $b; + $111 = $110 << 31; + $112 = (($109) + ($111))|0; + $b = $112; + $113 = $a; + $114 = $113 << 1; + $115 = $a; + $116 = $115 >>> 31; + $117 = (($114) + ($116))|0; + $a = $117; + $118 = $x; + $119 = $0; + $120 = ((($119)) + 4128|0); + $121 = ((($120)) + 120|0); + $122 = HEAP32[$121>>2]|0; + $123 = (($118) + ($122))|0; + $124 = $a; + $125 = $124 ^ $123; + $a = $125; + $126 = $a; + $127 = $126 & 255; + $128 = $0; + $129 = (($128) + ($127<<2)|0); + $130 = HEAP32[$129>>2]|0; + $131 = $a; + $132 = $131 >>> 8; + $133 = $132 & 255; + $134 = $0; + $135 = ((($134)) + 1024|0); + $136 = (($135) + ($133<<2)|0); + $137 = HEAP32[$136>>2]|0; + $138 = $130 ^ $137; + $139 = $a; + $140 = $139 >>> 16; + $141 = $140 & 255; + $142 = $0; + $143 = ((($142)) + 2048|0); + $144 = (($143) + ($141<<2)|0); + $145 = HEAP32[$144>>2]|0; + $146 = $138 ^ $145; + $147 = $a; + $148 = $147 >>> 24; + $149 = $0; + $150 = ((($149)) + 3072|0); + $151 = (($150) + ($148<<2)|0); + $152 = HEAP32[$151>>2]|0; + $153 = $146 ^ $152; + $x = $153; + $154 = $b; + $155 = $154 & 255; + $156 = $0; + $157 = ((($156)) + 1024|0); + $158 = (($157) + ($155<<2)|0); + $159 = HEAP32[$158>>2]|0; + $160 = $b; + $161 = $160 >>> 8; + $162 = $161 & 255; + $163 = $0; + $164 = ((($163)) + 2048|0); + $165 = (($164) + ($162<<2)|0); + $166 = HEAP32[$165>>2]|0; + $167 = $159 ^ $166; + $168 = $b; + $169 = $168 >>> 16; + $170 = $169 & 255; + $171 = $0; + $172 = ((($171)) + 3072|0); + $173 = (($172) + ($170<<2)|0); + $174 = HEAP32[$173>>2]|0; + $175 = $167 ^ $174; + $176 = $b; + $177 = $176 >>> 24; + $178 = $0; + $179 = (($178) + ($177<<2)|0); + $180 = HEAP32[$179>>2]|0; + $181 = $175 ^ $180; + $y = $181; + $182 = $y; + $183 = $x; + $184 = (($183) + ($182))|0; + $x = $184; + $185 = $x; + $186 = $y; + $187 = (($186) + ($185))|0; + $y = $187; + $188 = $y; + $189 = $0; + $190 = ((($189)) + 4128|0); + $191 = ((($190)) + 116|0); + $192 = HEAP32[$191>>2]|0; + $193 = (($188) + ($192))|0; + $194 = $d; + $195 = $194 ^ $193; + $d = $195; + $196 = $d; + $197 = $196 >>> 1; + $198 = $d; + $199 = $198 << 31; + $200 = (($197) + ($199))|0; + $d = $200; + $201 = $c; + $202 = $201 << 1; + $203 = $c; + $204 = $203 >>> 31; + $205 = (($202) + ($204))|0; + $c = $205; + $206 = $x; + $207 = $0; + $208 = ((($207)) + 4128|0); + $209 = ((($208)) + 112|0); + $210 = HEAP32[$209>>2]|0; + $211 = (($206) + ($210))|0; + $212 = $c; + $213 = $212 ^ $211; + $c = $213; + $214 = $c; + $215 = $214 & 255; + $216 = $0; + $217 = (($216) + ($215<<2)|0); + $218 = HEAP32[$217>>2]|0; + $219 = $c; + $220 = $219 >>> 8; + $221 = $220 & 255; + $222 = $0; + $223 = ((($222)) + 1024|0); + $224 = (($223) + ($221<<2)|0); + $225 = HEAP32[$224>>2]|0; + $226 = $218 ^ $225; + $227 = $c; + $228 = $227 >>> 16; + $229 = $228 & 255; + $230 = $0; + $231 = ((($230)) + 2048|0); + $232 = (($231) + ($229<<2)|0); + $233 = HEAP32[$232>>2]|0; + $234 = $226 ^ $233; + $235 = $c; + $236 = $235 >>> 24; + $237 = $0; + $238 = ((($237)) + 3072|0); + $239 = (($238) + ($236<<2)|0); + $240 = HEAP32[$239>>2]|0; + $241 = $234 ^ $240; + $x = $241; + $242 = $d; + $243 = $242 & 255; + $244 = $0; + $245 = ((($244)) + 1024|0); + $246 = (($245) + ($243<<2)|0); + $247 = HEAP32[$246>>2]|0; + $248 = $d; + $249 = $248 >>> 8; + $250 = $249 & 255; + $251 = $0; + $252 = ((($251)) + 2048|0); + $253 = (($252) + ($250<<2)|0); + $254 = HEAP32[$253>>2]|0; + $255 = $247 ^ $254; + $256 = $d; + $257 = $256 >>> 16; + $258 = $257 & 255; + $259 = $0; + $260 = ((($259)) + 3072|0); + $261 = (($260) + ($258<<2)|0); + $262 = HEAP32[$261>>2]|0; + $263 = $255 ^ $262; + $264 = $d; + $265 = $264 >>> 24; + $266 = $0; + $267 = (($266) + ($265<<2)|0); + $268 = HEAP32[$267>>2]|0; + $269 = $263 ^ $268; + $y = $269; + $270 = $y; + $271 = $x; + $272 = (($271) + ($270))|0; + $x = $272; + $273 = $x; + $274 = $y; + $275 = (($274) + ($273))|0; + $y = $275; + $276 = $y; + $277 = $0; + $278 = ((($277)) + 4128|0); + $279 = ((($278)) + 108|0); + $280 = HEAP32[$279>>2]|0; + $281 = (($276) + ($280))|0; + $282 = $b; + $283 = $282 ^ $281; + $b = $283; + $284 = $b; + $285 = $284 >>> 1; + $286 = $b; + $287 = $286 << 31; + $288 = (($285) + ($287))|0; + $b = $288; + $289 = $a; + $290 = $289 << 1; + $291 = $a; + $292 = $291 >>> 31; + $293 = (($290) + ($292))|0; + $a = $293; + $294 = $x; + $295 = $0; + $296 = ((($295)) + 4128|0); + $297 = ((($296)) + 104|0); + $298 = HEAP32[$297>>2]|0; + $299 = (($294) + ($298))|0; + $300 = $a; + $301 = $300 ^ $299; + $a = $301; + $302 = $a; + $303 = $302 & 255; + $304 = $0; + $305 = (($304) + ($303<<2)|0); + $306 = HEAP32[$305>>2]|0; + $307 = $a; + $308 = $307 >>> 8; + $309 = $308 & 255; + $310 = $0; + $311 = ((($310)) + 1024|0); + $312 = (($311) + ($309<<2)|0); + $313 = HEAP32[$312>>2]|0; + $314 = $306 ^ $313; + $315 = $a; + $316 = $315 >>> 16; + $317 = $316 & 255; + $318 = $0; + $319 = ((($318)) + 2048|0); + $320 = (($319) + ($317<<2)|0); + $321 = HEAP32[$320>>2]|0; + $322 = $314 ^ $321; + $323 = $a; + $324 = $323 >>> 24; + $325 = $0; + $326 = ((($325)) + 3072|0); + $327 = (($326) + ($324<<2)|0); + $328 = HEAP32[$327>>2]|0; + $329 = $322 ^ $328; + $x = $329; + $330 = $b; + $331 = $330 & 255; + $332 = $0; + $333 = ((($332)) + 1024|0); + $334 = (($333) + ($331<<2)|0); + $335 = HEAP32[$334>>2]|0; + $336 = $b; + $337 = $336 >>> 8; + $338 = $337 & 255; + $339 = $0; + $340 = ((($339)) + 2048|0); + $341 = (($340) + ($338<<2)|0); + $342 = HEAP32[$341>>2]|0; + $343 = $335 ^ $342; + $344 = $b; + $345 = $344 >>> 16; + $346 = $345 & 255; + $347 = $0; + $348 = ((($347)) + 3072|0); + $349 = (($348) + ($346<<2)|0); + $350 = HEAP32[$349>>2]|0; + $351 = $343 ^ $350; + $352 = $b; + $353 = $352 >>> 24; + $354 = $0; + $355 = (($354) + ($353<<2)|0); + $356 = HEAP32[$355>>2]|0; + $357 = $351 ^ $356; + $y = $357; + $358 = $y; + $359 = $x; + $360 = (($359) + ($358))|0; + $x = $360; + $361 = $x; + $362 = $y; + $363 = (($362) + ($361))|0; + $y = $363; + $364 = $y; + $365 = $0; + $366 = ((($365)) + 4128|0); + $367 = ((($366)) + 100|0); + $368 = HEAP32[$367>>2]|0; + $369 = (($364) + ($368))|0; + $370 = $d; + $371 = $370 ^ $369; + $d = $371; + $372 = $d; + $373 = $372 >>> 1; + $374 = $d; + $375 = $374 << 31; + $376 = (($373) + ($375))|0; + $d = $376; + $377 = $c; + $378 = $377 << 1; + $379 = $c; + $380 = $379 >>> 31; + $381 = (($378) + ($380))|0; + $c = $381; + $382 = $x; + $383 = $0; + $384 = ((($383)) + 4128|0); + $385 = ((($384)) + 96|0); + $386 = HEAP32[$385>>2]|0; + $387 = (($382) + ($386))|0; + $388 = $c; + $389 = $388 ^ $387; + $c = $389; + $390 = $c; + $391 = $390 & 255; + $392 = $0; + $393 = (($392) + ($391<<2)|0); + $394 = HEAP32[$393>>2]|0; + $395 = $c; + $396 = $395 >>> 8; + $397 = $396 & 255; + $398 = $0; + $399 = ((($398)) + 1024|0); + $400 = (($399) + ($397<<2)|0); + $401 = HEAP32[$400>>2]|0; + $402 = $394 ^ $401; + $403 = $c; + $404 = $403 >>> 16; + $405 = $404 & 255; + $406 = $0; + $407 = ((($406)) + 2048|0); + $408 = (($407) + ($405<<2)|0); + $409 = HEAP32[$408>>2]|0; + $410 = $402 ^ $409; + $411 = $c; + $412 = $411 >>> 24; + $413 = $0; + $414 = ((($413)) + 3072|0); + $415 = (($414) + ($412<<2)|0); + $416 = HEAP32[$415>>2]|0; + $417 = $410 ^ $416; + $x = $417; + $418 = $d; + $419 = $418 & 255; + $420 = $0; + $421 = ((($420)) + 1024|0); + $422 = (($421) + ($419<<2)|0); + $423 = HEAP32[$422>>2]|0; + $424 = $d; + $425 = $424 >>> 8; + $426 = $425 & 255; + $427 = $0; + $428 = ((($427)) + 2048|0); + $429 = (($428) + ($426<<2)|0); + $430 = HEAP32[$429>>2]|0; + $431 = $423 ^ $430; + $432 = $d; + $433 = $432 >>> 16; + $434 = $433 & 255; + $435 = $0; + $436 = ((($435)) + 3072|0); + $437 = (($436) + ($434<<2)|0); + $438 = HEAP32[$437>>2]|0; + $439 = $431 ^ $438; + $440 = $d; + $441 = $440 >>> 24; + $442 = $0; + $443 = (($442) + ($441<<2)|0); + $444 = HEAP32[$443>>2]|0; + $445 = $439 ^ $444; + $y = $445; + $446 = $y; + $447 = $x; + $448 = (($447) + ($446))|0; + $x = $448; + $449 = $x; + $450 = $y; + $451 = (($450) + ($449))|0; + $y = $451; + $452 = $y; + $453 = $0; + $454 = ((($453)) + 4128|0); + $455 = ((($454)) + 92|0); + $456 = HEAP32[$455>>2]|0; + $457 = (($452) + ($456))|0; + $458 = $b; + $459 = $458 ^ $457; + $b = $459; + $460 = $b; + $461 = $460 >>> 1; + $462 = $b; + $463 = $462 << 31; + $464 = (($461) + ($463))|0; + $b = $464; + $465 = $a; + $466 = $465 << 1; + $467 = $a; + $468 = $467 >>> 31; + $469 = (($466) + ($468))|0; + $a = $469; + $470 = $x; + $471 = $0; + $472 = ((($471)) + 4128|0); + $473 = ((($472)) + 88|0); + $474 = HEAP32[$473>>2]|0; + $475 = (($470) + ($474))|0; + $476 = $a; + $477 = $476 ^ $475; + $a = $477; + $478 = $a; + $479 = $478 & 255; + $480 = $0; + $481 = (($480) + ($479<<2)|0); + $482 = HEAP32[$481>>2]|0; + $483 = $a; + $484 = $483 >>> 8; + $485 = $484 & 255; + $486 = $0; + $487 = ((($486)) + 1024|0); + $488 = (($487) + ($485<<2)|0); + $489 = HEAP32[$488>>2]|0; + $490 = $482 ^ $489; + $491 = $a; + $492 = $491 >>> 16; + $493 = $492 & 255; + $494 = $0; + $495 = ((($494)) + 2048|0); + $496 = (($495) + ($493<<2)|0); + $497 = HEAP32[$496>>2]|0; + $498 = $490 ^ $497; + $499 = $a; + $500 = $499 >>> 24; + $501 = $0; + $502 = ((($501)) + 3072|0); + $503 = (($502) + ($500<<2)|0); + $504 = HEAP32[$503>>2]|0; + $505 = $498 ^ $504; + $x = $505; + $506 = $b; + $507 = $506 & 255; + $508 = $0; + $509 = ((($508)) + 1024|0); + $510 = (($509) + ($507<<2)|0); + $511 = HEAP32[$510>>2]|0; + $512 = $b; + $513 = $512 >>> 8; + $514 = $513 & 255; + $515 = $0; + $516 = ((($515)) + 2048|0); + $517 = (($516) + ($514<<2)|0); + $518 = HEAP32[$517>>2]|0; + $519 = $511 ^ $518; + $520 = $b; + $521 = $520 >>> 16; + $522 = $521 & 255; + $523 = $0; + $524 = ((($523)) + 3072|0); + $525 = (($524) + ($522<<2)|0); + $526 = HEAP32[$525>>2]|0; + $527 = $519 ^ $526; + $528 = $b; + $529 = $528 >>> 24; + $530 = $0; + $531 = (($530) + ($529<<2)|0); + $532 = HEAP32[$531>>2]|0; + $533 = $527 ^ $532; + $y = $533; + $534 = $y; + $535 = $x; + $536 = (($535) + ($534))|0; + $x = $536; + $537 = $x; + $538 = $y; + $539 = (($538) + ($537))|0; + $y = $539; + $540 = $y; + $541 = $0; + $542 = ((($541)) + 4128|0); + $543 = ((($542)) + 84|0); + $544 = HEAP32[$543>>2]|0; + $545 = (($540) + ($544))|0; + $546 = $d; + $547 = $546 ^ $545; + $d = $547; + $548 = $d; + $549 = $548 >>> 1; + $550 = $d; + $551 = $550 << 31; + $552 = (($549) + ($551))|0; + $d = $552; + $553 = $c; + $554 = $553 << 1; + $555 = $c; + $556 = $555 >>> 31; + $557 = (($554) + ($556))|0; + $c = $557; + $558 = $x; + $559 = $0; + $560 = ((($559)) + 4128|0); + $561 = ((($560)) + 80|0); + $562 = HEAP32[$561>>2]|0; + $563 = (($558) + ($562))|0; + $564 = $c; + $565 = $564 ^ $563; + $c = $565; + $566 = $c; + $567 = $566 & 255; + $568 = $0; + $569 = (($568) + ($567<<2)|0); + $570 = HEAP32[$569>>2]|0; + $571 = $c; + $572 = $571 >>> 8; + $573 = $572 & 255; + $574 = $0; + $575 = ((($574)) + 1024|0); + $576 = (($575) + ($573<<2)|0); + $577 = HEAP32[$576>>2]|0; + $578 = $570 ^ $577; + $579 = $c; + $580 = $579 >>> 16; + $581 = $580 & 255; + $582 = $0; + $583 = ((($582)) + 2048|0); + $584 = (($583) + ($581<<2)|0); + $585 = HEAP32[$584>>2]|0; + $586 = $578 ^ $585; + $587 = $c; + $588 = $587 >>> 24; + $589 = $0; + $590 = ((($589)) + 3072|0); + $591 = (($590) + ($588<<2)|0); + $592 = HEAP32[$591>>2]|0; + $593 = $586 ^ $592; + $x = $593; + $594 = $d; + $595 = $594 & 255; + $596 = $0; + $597 = ((($596)) + 1024|0); + $598 = (($597) + ($595<<2)|0); + $599 = HEAP32[$598>>2]|0; + $600 = $d; + $601 = $600 >>> 8; + $602 = $601 & 255; + $603 = $0; + $604 = ((($603)) + 2048|0); + $605 = (($604) + ($602<<2)|0); + $606 = HEAP32[$605>>2]|0; + $607 = $599 ^ $606; + $608 = $d; + $609 = $608 >>> 16; + $610 = $609 & 255; + $611 = $0; + $612 = ((($611)) + 3072|0); + $613 = (($612) + ($610<<2)|0); + $614 = HEAP32[$613>>2]|0; + $615 = $607 ^ $614; + $616 = $d; + $617 = $616 >>> 24; + $618 = $0; + $619 = (($618) + ($617<<2)|0); + $620 = HEAP32[$619>>2]|0; + $621 = $615 ^ $620; + $y = $621; + $622 = $y; + $623 = $x; + $624 = (($623) + ($622))|0; + $x = $624; + $625 = $x; + $626 = $y; + $627 = (($626) + ($625))|0; + $y = $627; + $628 = $y; + $629 = $0; + $630 = ((($629)) + 4128|0); + $631 = ((($630)) + 76|0); + $632 = HEAP32[$631>>2]|0; + $633 = (($628) + ($632))|0; + $634 = $b; + $635 = $634 ^ $633; + $b = $635; + $636 = $b; + $637 = $636 >>> 1; + $638 = $b; + $639 = $638 << 31; + $640 = (($637) + ($639))|0; + $b = $640; + $641 = $a; + $642 = $641 << 1; + $643 = $a; + $644 = $643 >>> 31; + $645 = (($642) + ($644))|0; + $a = $645; + $646 = $x; + $647 = $0; + $648 = ((($647)) + 4128|0); + $649 = ((($648)) + 72|0); + $650 = HEAP32[$649>>2]|0; + $651 = (($646) + ($650))|0; + $652 = $a; + $653 = $652 ^ $651; + $a = $653; + $654 = $a; + $655 = $654 & 255; + $656 = $0; + $657 = (($656) + ($655<<2)|0); + $658 = HEAP32[$657>>2]|0; + $659 = $a; + $660 = $659 >>> 8; + $661 = $660 & 255; + $662 = $0; + $663 = ((($662)) + 1024|0); + $664 = (($663) + ($661<<2)|0); + $665 = HEAP32[$664>>2]|0; + $666 = $658 ^ $665; + $667 = $a; + $668 = $667 >>> 16; + $669 = $668 & 255; + $670 = $0; + $671 = ((($670)) + 2048|0); + $672 = (($671) + ($669<<2)|0); + $673 = HEAP32[$672>>2]|0; + $674 = $666 ^ $673; + $675 = $a; + $676 = $675 >>> 24; + $677 = $0; + $678 = ((($677)) + 3072|0); + $679 = (($678) + ($676<<2)|0); + $680 = HEAP32[$679>>2]|0; + $681 = $674 ^ $680; + $x = $681; + $682 = $b; + $683 = $682 & 255; + $684 = $0; + $685 = ((($684)) + 1024|0); + $686 = (($685) + ($683<<2)|0); + $687 = HEAP32[$686>>2]|0; + $688 = $b; + $689 = $688 >>> 8; + $690 = $689 & 255; + $691 = $0; + $692 = ((($691)) + 2048|0); + $693 = (($692) + ($690<<2)|0); + $694 = HEAP32[$693>>2]|0; + $695 = $687 ^ $694; + $696 = $b; + $697 = $696 >>> 16; + $698 = $697 & 255; + $699 = $0; + $700 = ((($699)) + 3072|0); + $701 = (($700) + ($698<<2)|0); + $702 = HEAP32[$701>>2]|0; + $703 = $695 ^ $702; + $704 = $b; + $705 = $704 >>> 24; + $706 = $0; + $707 = (($706) + ($705<<2)|0); + $708 = HEAP32[$707>>2]|0; + $709 = $703 ^ $708; + $y = $709; + $710 = $y; + $711 = $x; + $712 = (($711) + ($710))|0; + $x = $712; + $713 = $x; + $714 = $y; + $715 = (($714) + ($713))|0; + $y = $715; + $716 = $y; + $717 = $0; + $718 = ((($717)) + 4128|0); + $719 = ((($718)) + 68|0); + $720 = HEAP32[$719>>2]|0; + $721 = (($716) + ($720))|0; + $722 = $d; + $723 = $722 ^ $721; + $d = $723; + $724 = $d; + $725 = $724 >>> 1; + $726 = $d; + $727 = $726 << 31; + $728 = (($725) + ($727))|0; + $d = $728; + $729 = $c; + $730 = $729 << 1; + $731 = $c; + $732 = $731 >>> 31; + $733 = (($730) + ($732))|0; + $c = $733; + $734 = $x; + $735 = $0; + $736 = ((($735)) + 4128|0); + $737 = ((($736)) + 64|0); + $738 = HEAP32[$737>>2]|0; + $739 = (($734) + ($738))|0; + $740 = $c; + $741 = $740 ^ $739; + $c = $741; + $742 = $c; + $743 = $742 & 255; + $744 = $0; + $745 = (($744) + ($743<<2)|0); + $746 = HEAP32[$745>>2]|0; + $747 = $c; + $748 = $747 >>> 8; + $749 = $748 & 255; + $750 = $0; + $751 = ((($750)) + 1024|0); + $752 = (($751) + ($749<<2)|0); + $753 = HEAP32[$752>>2]|0; + $754 = $746 ^ $753; + $755 = $c; + $756 = $755 >>> 16; + $757 = $756 & 255; + $758 = $0; + $759 = ((($758)) + 2048|0); + $760 = (($759) + ($757<<2)|0); + $761 = HEAP32[$760>>2]|0; + $762 = $754 ^ $761; + $763 = $c; + $764 = $763 >>> 24; + $765 = $0; + $766 = ((($765)) + 3072|0); + $767 = (($766) + ($764<<2)|0); + $768 = HEAP32[$767>>2]|0; + $769 = $762 ^ $768; + $x = $769; + $770 = $d; + $771 = $770 & 255; + $772 = $0; + $773 = ((($772)) + 1024|0); + $774 = (($773) + ($771<<2)|0); + $775 = HEAP32[$774>>2]|0; + $776 = $d; + $777 = $776 >>> 8; + $778 = $777 & 255; + $779 = $0; + $780 = ((($779)) + 2048|0); + $781 = (($780) + ($778<<2)|0); + $782 = HEAP32[$781>>2]|0; + $783 = $775 ^ $782; + $784 = $d; + $785 = $784 >>> 16; + $786 = $785 & 255; + $787 = $0; + $788 = ((($787)) + 3072|0); + $789 = (($788) + ($786<<2)|0); + $790 = HEAP32[$789>>2]|0; + $791 = $783 ^ $790; + $792 = $d; + $793 = $792 >>> 24; + $794 = $0; + $795 = (($794) + ($793<<2)|0); + $796 = HEAP32[$795>>2]|0; + $797 = $791 ^ $796; + $y = $797; + $798 = $y; + $799 = $x; + $800 = (($799) + ($798))|0; + $x = $800; + $801 = $x; + $802 = $y; + $803 = (($802) + ($801))|0; + $y = $803; + $804 = $y; + $805 = $0; + $806 = ((($805)) + 4128|0); + $807 = ((($806)) + 60|0); + $808 = HEAP32[$807>>2]|0; + $809 = (($804) + ($808))|0; + $810 = $b; + $811 = $810 ^ $809; + $b = $811; + $812 = $b; + $813 = $812 >>> 1; + $814 = $b; + $815 = $814 << 31; + $816 = (($813) + ($815))|0; + $b = $816; + $817 = $a; + $818 = $817 << 1; + $819 = $a; + $820 = $819 >>> 31; + $821 = (($818) + ($820))|0; + $a = $821; + $822 = $x; + $823 = $0; + $824 = ((($823)) + 4128|0); + $825 = ((($824)) + 56|0); + $826 = HEAP32[$825>>2]|0; + $827 = (($822) + ($826))|0; + $828 = $a; + $829 = $828 ^ $827; + $a = $829; + $830 = $a; + $831 = $830 & 255; + $832 = $0; + $833 = (($832) + ($831<<2)|0); + $834 = HEAP32[$833>>2]|0; + $835 = $a; + $836 = $835 >>> 8; + $837 = $836 & 255; + $838 = $0; + $839 = ((($838)) + 1024|0); + $840 = (($839) + ($837<<2)|0); + $841 = HEAP32[$840>>2]|0; + $842 = $834 ^ $841; + $843 = $a; + $844 = $843 >>> 16; + $845 = $844 & 255; + $846 = $0; + $847 = ((($846)) + 2048|0); + $848 = (($847) + ($845<<2)|0); + $849 = HEAP32[$848>>2]|0; + $850 = $842 ^ $849; + $851 = $a; + $852 = $851 >>> 24; + $853 = $0; + $854 = ((($853)) + 3072|0); + $855 = (($854) + ($852<<2)|0); + $856 = HEAP32[$855>>2]|0; + $857 = $850 ^ $856; + $x = $857; + $858 = $b; + $859 = $858 & 255; + $860 = $0; + $861 = ((($860)) + 1024|0); + $862 = (($861) + ($859<<2)|0); + $863 = HEAP32[$862>>2]|0; + $864 = $b; + $865 = $864 >>> 8; + $866 = $865 & 255; + $867 = $0; + $868 = ((($867)) + 2048|0); + $869 = (($868) + ($866<<2)|0); + $870 = HEAP32[$869>>2]|0; + $871 = $863 ^ $870; + $872 = $b; + $873 = $872 >>> 16; + $874 = $873 & 255; + $875 = $0; + $876 = ((($875)) + 3072|0); + $877 = (($876) + ($874<<2)|0); + $878 = HEAP32[$877>>2]|0; + $879 = $871 ^ $878; + $880 = $b; + $881 = $880 >>> 24; + $882 = $0; + $883 = (($882) + ($881<<2)|0); + $884 = HEAP32[$883>>2]|0; + $885 = $879 ^ $884; + $y = $885; + $886 = $y; + $887 = $x; + $888 = (($887) + ($886))|0; + $x = $888; + $889 = $x; + $890 = $y; + $891 = (($890) + ($889))|0; + $y = $891; + $892 = $y; + $893 = $0; + $894 = ((($893)) + 4128|0); + $895 = ((($894)) + 52|0); + $896 = HEAP32[$895>>2]|0; + $897 = (($892) + ($896))|0; + $898 = $d; + $899 = $898 ^ $897; + $d = $899; + $900 = $d; + $901 = $900 >>> 1; + $902 = $d; + $903 = $902 << 31; + $904 = (($901) + ($903))|0; + $d = $904; + $905 = $c; + $906 = $905 << 1; + $907 = $c; + $908 = $907 >>> 31; + $909 = (($906) + ($908))|0; + $c = $909; + $910 = $x; + $911 = $0; + $912 = ((($911)) + 4128|0); + $913 = ((($912)) + 48|0); + $914 = HEAP32[$913>>2]|0; + $915 = (($910) + ($914))|0; + $916 = $c; + $917 = $916 ^ $915; + $c = $917; + $918 = $c; + $919 = $918 & 255; + $920 = $0; + $921 = (($920) + ($919<<2)|0); + $922 = HEAP32[$921>>2]|0; + $923 = $c; + $924 = $923 >>> 8; + $925 = $924 & 255; + $926 = $0; + $927 = ((($926)) + 1024|0); + $928 = (($927) + ($925<<2)|0); + $929 = HEAP32[$928>>2]|0; + $930 = $922 ^ $929; + $931 = $c; + $932 = $931 >>> 16; + $933 = $932 & 255; + $934 = $0; + $935 = ((($934)) + 2048|0); + $936 = (($935) + ($933<<2)|0); + $937 = HEAP32[$936>>2]|0; + $938 = $930 ^ $937; + $939 = $c; + $940 = $939 >>> 24; + $941 = $0; + $942 = ((($941)) + 3072|0); + $943 = (($942) + ($940<<2)|0); + $944 = HEAP32[$943>>2]|0; + $945 = $938 ^ $944; + $x = $945; + $946 = $d; + $947 = $946 & 255; + $948 = $0; + $949 = ((($948)) + 1024|0); + $950 = (($949) + ($947<<2)|0); + $951 = HEAP32[$950>>2]|0; + $952 = $d; + $953 = $952 >>> 8; + $954 = $953 & 255; + $955 = $0; + $956 = ((($955)) + 2048|0); + $957 = (($956) + ($954<<2)|0); + $958 = HEAP32[$957>>2]|0; + $959 = $951 ^ $958; + $960 = $d; + $961 = $960 >>> 16; + $962 = $961 & 255; + $963 = $0; + $964 = ((($963)) + 3072|0); + $965 = (($964) + ($962<<2)|0); + $966 = HEAP32[$965>>2]|0; + $967 = $959 ^ $966; + $968 = $d; + $969 = $968 >>> 24; + $970 = $0; + $971 = (($970) + ($969<<2)|0); + $972 = HEAP32[$971>>2]|0; + $973 = $967 ^ $972; + $y = $973; + $974 = $y; + $975 = $x; + $976 = (($975) + ($974))|0; + $x = $976; + $977 = $x; + $978 = $y; + $979 = (($978) + ($977))|0; + $y = $979; + $980 = $y; + $981 = $0; + $982 = ((($981)) + 4128|0); + $983 = ((($982)) + 44|0); + $984 = HEAP32[$983>>2]|0; + $985 = (($980) + ($984))|0; + $986 = $b; + $987 = $986 ^ $985; + $b = $987; + $988 = $b; + $989 = $988 >>> 1; + $990 = $b; + $991 = $990 << 31; + $992 = (($989) + ($991))|0; + $b = $992; + $993 = $a; + $994 = $993 << 1; + $995 = $a; + $996 = $995 >>> 31; + $997 = (($994) + ($996))|0; + $a = $997; + $998 = $x; + $999 = $0; + $1000 = ((($999)) + 4128|0); + $1001 = ((($1000)) + 40|0); + $1002 = HEAP32[$1001>>2]|0; + $1003 = (($998) + ($1002))|0; + $1004 = $a; + $1005 = $1004 ^ $1003; + $a = $1005; + $1006 = $a; + $1007 = $1006 & 255; + $1008 = $0; + $1009 = (($1008) + ($1007<<2)|0); + $1010 = HEAP32[$1009>>2]|0; + $1011 = $a; + $1012 = $1011 >>> 8; + $1013 = $1012 & 255; + $1014 = $0; + $1015 = ((($1014)) + 1024|0); + $1016 = (($1015) + ($1013<<2)|0); + $1017 = HEAP32[$1016>>2]|0; + $1018 = $1010 ^ $1017; + $1019 = $a; + $1020 = $1019 >>> 16; + $1021 = $1020 & 255; + $1022 = $0; + $1023 = ((($1022)) + 2048|0); + $1024 = (($1023) + ($1021<<2)|0); + $1025 = HEAP32[$1024>>2]|0; + $1026 = $1018 ^ $1025; + $1027 = $a; + $1028 = $1027 >>> 24; + $1029 = $0; + $1030 = ((($1029)) + 3072|0); + $1031 = (($1030) + ($1028<<2)|0); + $1032 = HEAP32[$1031>>2]|0; + $1033 = $1026 ^ $1032; + $x = $1033; + $1034 = $b; + $1035 = $1034 & 255; + $1036 = $0; + $1037 = ((($1036)) + 1024|0); + $1038 = (($1037) + ($1035<<2)|0); + $1039 = HEAP32[$1038>>2]|0; + $1040 = $b; + $1041 = $1040 >>> 8; + $1042 = $1041 & 255; + $1043 = $0; + $1044 = ((($1043)) + 2048|0); + $1045 = (($1044) + ($1042<<2)|0); + $1046 = HEAP32[$1045>>2]|0; + $1047 = $1039 ^ $1046; + $1048 = $b; + $1049 = $1048 >>> 16; + $1050 = $1049 & 255; + $1051 = $0; + $1052 = ((($1051)) + 3072|0); + $1053 = (($1052) + ($1050<<2)|0); + $1054 = HEAP32[$1053>>2]|0; + $1055 = $1047 ^ $1054; + $1056 = $b; + $1057 = $1056 >>> 24; + $1058 = $0; + $1059 = (($1058) + ($1057<<2)|0); + $1060 = HEAP32[$1059>>2]|0; + $1061 = $1055 ^ $1060; + $y = $1061; + $1062 = $y; + $1063 = $x; + $1064 = (($1063) + ($1062))|0; + $x = $1064; + $1065 = $x; + $1066 = $y; + $1067 = (($1066) + ($1065))|0; + $y = $1067; + $1068 = $y; + $1069 = $0; + $1070 = ((($1069)) + 4128|0); + $1071 = ((($1070)) + 36|0); + $1072 = HEAP32[$1071>>2]|0; + $1073 = (($1068) + ($1072))|0; + $1074 = $d; + $1075 = $1074 ^ $1073; + $d = $1075; + $1076 = $d; + $1077 = $1076 >>> 1; + $1078 = $d; + $1079 = $1078 << 31; + $1080 = (($1077) + ($1079))|0; + $d = $1080; + $1081 = $c; + $1082 = $1081 << 1; + $1083 = $c; + $1084 = $1083 >>> 31; + $1085 = (($1082) + ($1084))|0; + $c = $1085; + $1086 = $x; + $1087 = $0; + $1088 = ((($1087)) + 4128|0); + $1089 = ((($1088)) + 32|0); + $1090 = HEAP32[$1089>>2]|0; + $1091 = (($1086) + ($1090))|0; + $1092 = $c; + $1093 = $1092 ^ $1091; + $c = $1093; + $1094 = $c; + $1095 = $1094 & 255; + $1096 = $0; + $1097 = (($1096) + ($1095<<2)|0); + $1098 = HEAP32[$1097>>2]|0; + $1099 = $c; + $1100 = $1099 >>> 8; + $1101 = $1100 & 255; + $1102 = $0; + $1103 = ((($1102)) + 1024|0); + $1104 = (($1103) + ($1101<<2)|0); + $1105 = HEAP32[$1104>>2]|0; + $1106 = $1098 ^ $1105; + $1107 = $c; + $1108 = $1107 >>> 16; + $1109 = $1108 & 255; + $1110 = $0; + $1111 = ((($1110)) + 2048|0); + $1112 = (($1111) + ($1109<<2)|0); + $1113 = HEAP32[$1112>>2]|0; + $1114 = $1106 ^ $1113; + $1115 = $c; + $1116 = $1115 >>> 24; + $1117 = $0; + $1118 = ((($1117)) + 3072|0); + $1119 = (($1118) + ($1116<<2)|0); + $1120 = HEAP32[$1119>>2]|0; + $1121 = $1114 ^ $1120; + $x = $1121; + $1122 = $d; + $1123 = $1122 & 255; + $1124 = $0; + $1125 = ((($1124)) + 1024|0); + $1126 = (($1125) + ($1123<<2)|0); + $1127 = HEAP32[$1126>>2]|0; + $1128 = $d; + $1129 = $1128 >>> 8; + $1130 = $1129 & 255; + $1131 = $0; + $1132 = ((($1131)) + 2048|0); + $1133 = (($1132) + ($1130<<2)|0); + $1134 = HEAP32[$1133>>2]|0; + $1135 = $1127 ^ $1134; + $1136 = $d; + $1137 = $1136 >>> 16; + $1138 = $1137 & 255; + $1139 = $0; + $1140 = ((($1139)) + 3072|0); + $1141 = (($1140) + ($1138<<2)|0); + $1142 = HEAP32[$1141>>2]|0; + $1143 = $1135 ^ $1142; + $1144 = $d; + $1145 = $1144 >>> 24; + $1146 = $0; + $1147 = (($1146) + ($1145<<2)|0); + $1148 = HEAP32[$1147>>2]|0; + $1149 = $1143 ^ $1148; + $y = $1149; + $1150 = $y; + $1151 = $x; + $1152 = (($1151) + ($1150))|0; + $x = $1152; + $1153 = $x; + $1154 = $y; + $1155 = (($1154) + ($1153))|0; + $y = $1155; + $1156 = $y; + $1157 = $0; + $1158 = ((($1157)) + 4128|0); + $1159 = ((($1158)) + 28|0); + $1160 = HEAP32[$1159>>2]|0; + $1161 = (($1156) + ($1160))|0; + $1162 = $b; + $1163 = $1162 ^ $1161; + $b = $1163; + $1164 = $b; + $1165 = $1164 >>> 1; + $1166 = $b; + $1167 = $1166 << 31; + $1168 = (($1165) + ($1167))|0; + $b = $1168; + $1169 = $a; + $1170 = $1169 << 1; + $1171 = $a; + $1172 = $1171 >>> 31; + $1173 = (($1170) + ($1172))|0; + $a = $1173; + $1174 = $x; + $1175 = $0; + $1176 = ((($1175)) + 4128|0); + $1177 = ((($1176)) + 24|0); + $1178 = HEAP32[$1177>>2]|0; + $1179 = (($1174) + ($1178))|0; + $1180 = $a; + $1181 = $1180 ^ $1179; + $a = $1181; + $1182 = $a; + $1183 = $1182 & 255; + $1184 = $0; + $1185 = (($1184) + ($1183<<2)|0); + $1186 = HEAP32[$1185>>2]|0; + $1187 = $a; + $1188 = $1187 >>> 8; + $1189 = $1188 & 255; + $1190 = $0; + $1191 = ((($1190)) + 1024|0); + $1192 = (($1191) + ($1189<<2)|0); + $1193 = HEAP32[$1192>>2]|0; + $1194 = $1186 ^ $1193; + $1195 = $a; + $1196 = $1195 >>> 16; + $1197 = $1196 & 255; + $1198 = $0; + $1199 = ((($1198)) + 2048|0); + $1200 = (($1199) + ($1197<<2)|0); + $1201 = HEAP32[$1200>>2]|0; + $1202 = $1194 ^ $1201; + $1203 = $a; + $1204 = $1203 >>> 24; + $1205 = $0; + $1206 = ((($1205)) + 3072|0); + $1207 = (($1206) + ($1204<<2)|0); + $1208 = HEAP32[$1207>>2]|0; + $1209 = $1202 ^ $1208; + $x = $1209; + $1210 = $b; + $1211 = $1210 & 255; + $1212 = $0; + $1213 = ((($1212)) + 1024|0); + $1214 = (($1213) + ($1211<<2)|0); + $1215 = HEAP32[$1214>>2]|0; + $1216 = $b; + $1217 = $1216 >>> 8; + $1218 = $1217 & 255; + $1219 = $0; + $1220 = ((($1219)) + 2048|0); + $1221 = (($1220) + ($1218<<2)|0); + $1222 = HEAP32[$1221>>2]|0; + $1223 = $1215 ^ $1222; + $1224 = $b; + $1225 = $1224 >>> 16; + $1226 = $1225 & 255; + $1227 = $0; + $1228 = ((($1227)) + 3072|0); + $1229 = (($1228) + ($1226<<2)|0); + $1230 = HEAP32[$1229>>2]|0; + $1231 = $1223 ^ $1230; + $1232 = $b; + $1233 = $1232 >>> 24; + $1234 = $0; + $1235 = (($1234) + ($1233<<2)|0); + $1236 = HEAP32[$1235>>2]|0; + $1237 = $1231 ^ $1236; + $y = $1237; + $1238 = $y; + $1239 = $x; + $1240 = (($1239) + ($1238))|0; + $x = $1240; + $1241 = $x; + $1242 = $y; + $1243 = (($1242) + ($1241))|0; + $y = $1243; + $1244 = $y; + $1245 = $0; + $1246 = ((($1245)) + 4128|0); + $1247 = ((($1246)) + 20|0); + $1248 = HEAP32[$1247>>2]|0; + $1249 = (($1244) + ($1248))|0; + $1250 = $d; + $1251 = $1250 ^ $1249; + $d = $1251; + $1252 = $d; + $1253 = $1252 >>> 1; + $1254 = $d; + $1255 = $1254 << 31; + $1256 = (($1253) + ($1255))|0; + $d = $1256; + $1257 = $c; + $1258 = $1257 << 1; + $1259 = $c; + $1260 = $1259 >>> 31; + $1261 = (($1258) + ($1260))|0; + $c = $1261; + $1262 = $x; + $1263 = $0; + $1264 = ((($1263)) + 4128|0); + $1265 = ((($1264)) + 16|0); + $1266 = HEAP32[$1265>>2]|0; + $1267 = (($1262) + ($1266))|0; + $1268 = $c; + $1269 = $1268 ^ $1267; + $c = $1269; + $1270 = $c; + $1271 = $1270 & 255; + $1272 = $0; + $1273 = (($1272) + ($1271<<2)|0); + $1274 = HEAP32[$1273>>2]|0; + $1275 = $c; + $1276 = $1275 >>> 8; + $1277 = $1276 & 255; + $1278 = $0; + $1279 = ((($1278)) + 1024|0); + $1280 = (($1279) + ($1277<<2)|0); + $1281 = HEAP32[$1280>>2]|0; + $1282 = $1274 ^ $1281; + $1283 = $c; + $1284 = $1283 >>> 16; + $1285 = $1284 & 255; + $1286 = $0; + $1287 = ((($1286)) + 2048|0); + $1288 = (($1287) + ($1285<<2)|0); + $1289 = HEAP32[$1288>>2]|0; + $1290 = $1282 ^ $1289; + $1291 = $c; + $1292 = $1291 >>> 24; + $1293 = $0; + $1294 = ((($1293)) + 3072|0); + $1295 = (($1294) + ($1292<<2)|0); + $1296 = HEAP32[$1295>>2]|0; + $1297 = $1290 ^ $1296; + $x = $1297; + $1298 = $d; + $1299 = $1298 & 255; + $1300 = $0; + $1301 = ((($1300)) + 1024|0); + $1302 = (($1301) + ($1299<<2)|0); + $1303 = HEAP32[$1302>>2]|0; + $1304 = $d; + $1305 = $1304 >>> 8; + $1306 = $1305 & 255; + $1307 = $0; + $1308 = ((($1307)) + 2048|0); + $1309 = (($1308) + ($1306<<2)|0); + $1310 = HEAP32[$1309>>2]|0; + $1311 = $1303 ^ $1310; + $1312 = $d; + $1313 = $1312 >>> 16; + $1314 = $1313 & 255; + $1315 = $0; + $1316 = ((($1315)) + 3072|0); + $1317 = (($1316) + ($1314<<2)|0); + $1318 = HEAP32[$1317>>2]|0; + $1319 = $1311 ^ $1318; + $1320 = $d; + $1321 = $1320 >>> 24; + $1322 = $0; + $1323 = (($1322) + ($1321<<2)|0); + $1324 = HEAP32[$1323>>2]|0; + $1325 = $1319 ^ $1324; + $y = $1325; + $1326 = $y; + $1327 = $x; + $1328 = (($1327) + ($1326))|0; + $x = $1328; + $1329 = $x; + $1330 = $y; + $1331 = (($1330) + ($1329))|0; + $y = $1331; + $1332 = $y; + $1333 = $0; + $1334 = ((($1333)) + 4128|0); + $1335 = ((($1334)) + 12|0); + $1336 = HEAP32[$1335>>2]|0; + $1337 = (($1332) + ($1336))|0; + $1338 = $b; + $1339 = $1338 ^ $1337; + $b = $1339; + $1340 = $b; + $1341 = $1340 >>> 1; + $1342 = $b; + $1343 = $1342 << 31; + $1344 = (($1341) + ($1343))|0; + $b = $1344; + $1345 = $a; + $1346 = $1345 << 1; + $1347 = $a; + $1348 = $1347 >>> 31; + $1349 = (($1346) + ($1348))|0; + $a = $1349; + $1350 = $x; + $1351 = $0; + $1352 = ((($1351)) + 4128|0); + $1353 = ((($1352)) + 8|0); + $1354 = HEAP32[$1353>>2]|0; + $1355 = (($1350) + ($1354))|0; + $1356 = $a; + $1357 = $1356 ^ $1355; + $a = $1357; + $1358 = $a; + $1359 = $1358 & 255; + $1360 = $0; + $1361 = (($1360) + ($1359<<2)|0); + $1362 = HEAP32[$1361>>2]|0; + $1363 = $a; + $1364 = $1363 >>> 8; + $1365 = $1364 & 255; + $1366 = $0; + $1367 = ((($1366)) + 1024|0); + $1368 = (($1367) + ($1365<<2)|0); + $1369 = HEAP32[$1368>>2]|0; + $1370 = $1362 ^ $1369; + $1371 = $a; + $1372 = $1371 >>> 16; + $1373 = $1372 & 255; + $1374 = $0; + $1375 = ((($1374)) + 2048|0); + $1376 = (($1375) + ($1373<<2)|0); + $1377 = HEAP32[$1376>>2]|0; + $1378 = $1370 ^ $1377; + $1379 = $a; + $1380 = $1379 >>> 24; + $1381 = $0; + $1382 = ((($1381)) + 3072|0); + $1383 = (($1382) + ($1380<<2)|0); + $1384 = HEAP32[$1383>>2]|0; + $1385 = $1378 ^ $1384; + $x = $1385; + $1386 = $b; + $1387 = $1386 & 255; + $1388 = $0; + $1389 = ((($1388)) + 1024|0); + $1390 = (($1389) + ($1387<<2)|0); + $1391 = HEAP32[$1390>>2]|0; + $1392 = $b; + $1393 = $1392 >>> 8; + $1394 = $1393 & 255; + $1395 = $0; + $1396 = ((($1395)) + 2048|0); + $1397 = (($1396) + ($1394<<2)|0); + $1398 = HEAP32[$1397>>2]|0; + $1399 = $1391 ^ $1398; + $1400 = $b; + $1401 = $1400 >>> 16; + $1402 = $1401 & 255; + $1403 = $0; + $1404 = ((($1403)) + 3072|0); + $1405 = (($1404) + ($1402<<2)|0); + $1406 = HEAP32[$1405>>2]|0; + $1407 = $1399 ^ $1406; + $1408 = $b; + $1409 = $1408 >>> 24; + $1410 = $0; + $1411 = (($1410) + ($1409<<2)|0); + $1412 = HEAP32[$1411>>2]|0; + $1413 = $1407 ^ $1412; + $y = $1413; + $1414 = $y; + $1415 = $x; + $1416 = (($1415) + ($1414))|0; + $x = $1416; + $1417 = $x; + $1418 = $y; + $1419 = (($1418) + ($1417))|0; + $y = $1419; + $1420 = $y; + $1421 = $0; + $1422 = ((($1421)) + 4128|0); + $1423 = ((($1422)) + 4|0); + $1424 = HEAP32[$1423>>2]|0; + $1425 = (($1420) + ($1424))|0; + $1426 = $d; + $1427 = $1426 ^ $1425; + $d = $1427; + $1428 = $d; + $1429 = $1428 >>> 1; + $1430 = $d; + $1431 = $1430 << 31; + $1432 = (($1429) + ($1431))|0; + $d = $1432; + $1433 = $c; + $1434 = $1433 << 1; + $1435 = $c; + $1436 = $1435 >>> 31; + $1437 = (($1434) + ($1436))|0; + $c = $1437; + $1438 = $x; + $1439 = $0; + $1440 = ((($1439)) + 4128|0); + $1441 = HEAP32[$1440>>2]|0; + $1442 = (($1438) + ($1441))|0; + $1443 = $c; + $1444 = $1443 ^ $1442; + $c = $1444; + $1445 = $0; + $1446 = ((($1445)) + 4096|0); + $1447 = HEAP32[$1446>>2]|0; + $1448 = $a; + $1449 = $1448 ^ $1447; + $a = $1449; + $1450 = $1; + $1451 = $a; + _buf_put_le32_1450($1450,$1451); + $1452 = $0; + $1453 = ((($1452)) + 4096|0); + $1454 = ((($1453)) + 4|0); + $1455 = HEAP32[$1454>>2]|0; + $1456 = $b; + $1457 = $1456 ^ $1455; + $b = $1457; + $1458 = $1; + $1459 = ((($1458)) + 4|0); + $1460 = $b; + _buf_put_le32_1450($1459,$1460); + $1461 = $0; + $1462 = ((($1461)) + 4096|0); + $1463 = ((($1462)) + 8|0); + $1464 = HEAP32[$1463>>2]|0; + $1465 = $c; + $1466 = $1465 ^ $1464; + $c = $1466; + $1467 = $1; + $1468 = ((($1467)) + 8|0); + $1469 = $c; + _buf_put_le32_1450($1468,$1469); + $1470 = $0; + $1471 = ((($1470)) + 4096|0); + $1472 = ((($1471)) + 12|0); + $1473 = HEAP32[$1472>>2]|0; + $1474 = $d; + $1475 = $1474 ^ $1473; + $d = $1475; + $1476 = $1; + $1477 = ((($1476)) + 12|0); + $1478 = $d; + _buf_put_le32_1450($1477,$1478); + STACKTOP = sp;return; +} +function _selftest_ctr() { + var $0 = 0, $blocksize = 0, $context_size = 0, $nblocks = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $nblocks = 4; + $blocksize = 16; + $context_size = 4256; + $0 = (__gcry_selftest_helper_ctr(43465,32,33,66,4,16,4256)|0); + STACKTOP = sp;return ($0|0); +} +function __gcry_twofish_ctr_enc($context,$ctr,$outbuf_arg,$inbuf_arg,$nblocks) { + $context = $context|0; + $ctr = $ctr|0; + $outbuf_arg = $outbuf_arg|0; + $inbuf_arg = $inbuf_arg|0; + $nblocks = $nblocks|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $_vlen = 0, $_vptr = 0, $_vptr_long = 0, $_vset = 0, $_vset_long = 0, $burn = 0, $burn_stack_depth = 0, $ctx = 0, $i = 0, $inbuf = 0, $outbuf = 0, $tmpbuf = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $tmpbuf = sp + 72|0; + $_vset_long = sp; + $0 = $context; + $1 = $ctr; + $2 = $outbuf_arg; + $3 = $inbuf_arg; + $4 = $nblocks; + $5 = $0; + $ctx = $5; + $6 = $2; + $outbuf = $6; + $7 = $3; + $inbuf = $7; + $burn_stack_depth = 0; + while(1) { + $8 = $4; + $9 = ($8|0)!=(0); + if (!($9)) { + break; + } + $10 = $ctx; + $11 = $1; + $12 = (_twofish_encrypt($10,$tmpbuf,$11)|0); + $burn = $12; + $13 = $burn; + $14 = $burn_stack_depth; + $15 = ($13>>>0)>($14>>>0); + if ($15) { + $16 = $burn; + $burn_stack_depth = $16; + } + $17 = $outbuf; + $18 = $inbuf; + _buf_xor_1457($17,$tmpbuf,$18,16); + $19 = $outbuf; + $20 = ((($19)) + 16|0); + $outbuf = $20; + $21 = $inbuf; + $22 = ((($21)) + 16|0); + $inbuf = $22; + $i = 16; + while(1) { + $23 = $i; + $24 = ($23|0)>(0); + if (!($24)) { + break; + } + $25 = $i; + $26 = (($25) - 1)|0; + $27 = $1; + $28 = (($27) + ($26)|0); + $29 = HEAP8[$28>>0]|0; + $30 = (($29) + 1)<<24>>24; + HEAP8[$28>>0] = $30; + $31 = $i; + $32 = (($31) - 1)|0; + $33 = $1; + $34 = (($33) + ($32)|0); + $35 = HEAP8[$34>>0]|0; + $36 = ($35<<24>>24)!=(0); + if ($36) { + break; + } + $37 = $i; + $38 = (($37) + -1)|0; + $i = $38; + } + $39 = $4; + $40 = (($39) + -1)|0; + $4 = $40; + } + $_vptr = $tmpbuf; + $_vlen = 16; + $_vset = 0; + $41 = $_vset; + $42 = $41&255; + $43 = $_vset_long; + $44 = $43; + HEAP32[$44>>2] = $42; + $45 = (($43) + 4)|0; + $46 = $45; + HEAP32[$46>>2] = 0; + while(1) { + $47 = $_vptr; + $48 = $47; + $49 = $48 & 7; + $50 = ($49|0)!=(0); + $51 = $_vlen; + $52 = ($51|0)!=(0); + $53 = $50 ? $52 : 0; + if (!($53)) { + break; + } + $54 = $_vset; + $55 = $_vptr; + HEAP8[$55>>0] = $54; + $56 = $_vptr; + $57 = ((($56)) + 1|0); + $_vptr = $57; + $58 = $_vlen; + $59 = (($58) + -1)|0; + $_vlen = $59; + } + $60 = $_vlen; + $61 = ($60>>>0)<(8); + if (!($61)) { + $62 = $_vset_long; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = (($62) + 4)|0; + $66 = $65; + $67 = HEAP32[$66>>2]|0; + $68 = (___muldi3(($64|0),($67|0),16843009,16843009)|0); + $69 = tempRet0; + $70 = $_vset_long; + $71 = $70; + HEAP32[$71>>2] = $68; + $72 = (($70) + 4)|0; + $73 = $72; + HEAP32[$73>>2] = $69; + while(1) { + $74 = $_vptr; + $_vptr_long = $74; + $75 = $_vset_long; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $78 = (($75) + 4)|0; + $79 = $78; + $80 = HEAP32[$79>>2]|0; + $81 = $_vptr_long; + $82 = $81; + $83 = $82; + HEAP32[$83>>2] = $77; + $84 = (($82) + 4)|0; + $85 = $84; + HEAP32[$85>>2] = $80; + $86 = $_vlen; + $87 = (($86) - 8)|0; + $_vlen = $87; + $88 = $_vptr; + $89 = ((($88)) + 8|0); + $_vptr = $89; + $90 = $_vlen; + $91 = ($90>>>0)>=(8); + if (!($91)) { + break; + } + } + } + while(1) { + $92 = $_vlen; + $93 = ($92|0)!=(0); + if (!($93)) { + break; + } + $94 = $_vset; + $95 = $_vptr; + HEAP8[$95>>0] = $94; + $96 = $_vptr; + $97 = ((($96)) + 1|0); + $_vptr = $97; + $98 = $_vlen; + $99 = (($98) + -1)|0; + $_vlen = $99; + } + $100 = $burn_stack_depth; + ___gcry_burn_stack($100); + ___gcry_burn_stack_dummy(); + STACKTOP = sp;return; +} +function _buf_xor_1457($_dst,$_src1,$_src2,$len) { + $_dst = $_dst|0; + $_src1 = $_src1|0; + $_src2 = $_src2|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst = 0, $ldst = 0, $longmask = 0, $lsrc1 = 0, $lsrc2 = 0, $src1 = 0, $src2 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst; + $1 = $_src1; + $2 = $_src2; + $3 = $len; + $4 = $0; + $dst = $4; + $5 = $1; + $src1 = $5; + $6 = $2; + $src2 = $6; + $longmask = 3; + $7 = $dst; + $8 = $7; + $9 = $src1; + $10 = $9; + $11 = $8 | $10; + $12 = $src2; + $13 = $12; + $14 = $11 | $13; + $15 = $14 & 3; + $16 = ($15|0)!=(0); + if (!($16)) { + $17 = $dst; + $ldst = $17; + $18 = $src1; + $lsrc1 = $18; + $19 = $src2; + $lsrc2 = $19; + while(1) { + $20 = $3; + $21 = ($20>>>0)>=(4); + if (!($21)) { + break; + } + $22 = $lsrc1; + $23 = ((($22)) + 4|0); + $lsrc1 = $23; + $24 = HEAP32[$22>>2]|0; + $25 = $lsrc2; + $26 = ((($25)) + 4|0); + $lsrc2 = $26; + $27 = HEAP32[$25>>2]|0; + $28 = $24 ^ $27; + $29 = $ldst; + $30 = ((($29)) + 4|0); + $ldst = $30; + HEAP32[$29>>2] = $28; + $31 = $3; + $32 = (($31) - 4)|0; + $3 = $32; + } + $33 = $ldst; + $dst = $33; + $34 = $lsrc1; + $src1 = $34; + $35 = $lsrc2; + $src2 = $35; + } + while(1) { + $36 = $3; + $37 = ($36|0)!=(0); + if (!($37)) { + break; + } + $38 = $src1; + $39 = ((($38)) + 1|0); + $src1 = $39; + $40 = HEAP8[$38>>0]|0; + $41 = $40&255; + $42 = $src2; + $43 = ((($42)) + 1|0); + $src2 = $43; + $44 = HEAP8[$42>>0]|0; + $45 = $44&255; + $46 = $41 ^ $45; + $47 = $46&255; + $48 = $dst; + $49 = ((($48)) + 1|0); + $dst = $49; + HEAP8[$48>>0] = $47; + $50 = $3; + $51 = (($50) + -1)|0; + $3 = $51; + } + STACKTOP = sp;return; +} +function _selftest_cbc() { + var $0 = 0, $blocksize = 0, $context_size = 0, $nblocks = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $nblocks = 5; + $blocksize = 16; + $context_size = 4256; + $0 = (__gcry_selftest_helper_cbc(43465,32,33,64,5,16,4256)|0); + STACKTOP = sp;return ($0|0); +} +function __gcry_twofish_cbc_dec($context,$iv,$outbuf_arg,$inbuf_arg,$nblocks) { + $context = $context|0; + $iv = $iv|0; + $outbuf_arg = $outbuf_arg|0; + $inbuf_arg = $inbuf_arg|0; + $nblocks = $nblocks|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $9 = 0, $_vlen = 0, $_vptr = 0, $_vptr_long = 0, $_vset = 0, $_vset_long = 0, $burn = 0, $burn_stack_depth = 0, $ctx = 0, $inbuf = 0, $outbuf = 0, $savebuf = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $savebuf = sp + 64|0; + $_vset_long = sp; + $0 = $context; + $1 = $iv; + $2 = $outbuf_arg; + $3 = $inbuf_arg; + $4 = $nblocks; + $5 = $0; + $ctx = $5; + $6 = $2; + $outbuf = $6; + $7 = $3; + $inbuf = $7; + $burn_stack_depth = 0; + while(1) { + $8 = $4; + $9 = ($8|0)!=(0); + if (!($9)) { + break; + } + $10 = $ctx; + $11 = $inbuf; + $12 = (_twofish_decrypt($10,$savebuf,$11)|0); + $burn = $12; + $13 = $burn; + $14 = $burn_stack_depth; + $15 = ($13>>>0)>($14>>>0); + if ($15) { + $16 = $burn; + $burn_stack_depth = $16; + } + $17 = $outbuf; + $18 = $1; + $19 = $inbuf; + _buf_xor_n_copy_2_1460($17,$savebuf,$18,$19,16); + $20 = $inbuf; + $21 = ((($20)) + 16|0); + $inbuf = $21; + $22 = $outbuf; + $23 = ((($22)) + 16|0); + $outbuf = $23; + $24 = $4; + $25 = (($24) + -1)|0; + $4 = $25; + } + $_vptr = $savebuf; + $_vlen = 16; + $_vset = 0; + $26 = $_vset; + $27 = $26&255; + $28 = $_vset_long; + $29 = $28; + HEAP32[$29>>2] = $27; + $30 = (($28) + 4)|0; + $31 = $30; + HEAP32[$31>>2] = 0; + while(1) { + $32 = $_vptr; + $33 = $32; + $34 = $33 & 7; + $35 = ($34|0)!=(0); + $36 = $_vlen; + $37 = ($36|0)!=(0); + $38 = $35 ? $37 : 0; + if (!($38)) { + break; + } + $39 = $_vset; + $40 = $_vptr; + HEAP8[$40>>0] = $39; + $41 = $_vptr; + $42 = ((($41)) + 1|0); + $_vptr = $42; + $43 = $_vlen; + $44 = (($43) + -1)|0; + $_vlen = $44; + } + $45 = $_vlen; + $46 = ($45>>>0)<(8); + if (!($46)) { + $47 = $_vset_long; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + $50 = (($47) + 4)|0; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = (___muldi3(($49|0),($52|0),16843009,16843009)|0); + $54 = tempRet0; + $55 = $_vset_long; + $56 = $55; + HEAP32[$56>>2] = $53; + $57 = (($55) + 4)|0; + $58 = $57; + HEAP32[$58>>2] = $54; + while(1) { + $59 = $_vptr; + $_vptr_long = $59; + $60 = $_vset_long; + $61 = $60; + $62 = HEAP32[$61>>2]|0; + $63 = (($60) + 4)|0; + $64 = $63; + $65 = HEAP32[$64>>2]|0; + $66 = $_vptr_long; + $67 = $66; + $68 = $67; + HEAP32[$68>>2] = $62; + $69 = (($67) + 4)|0; + $70 = $69; + HEAP32[$70>>2] = $65; + $71 = $_vlen; + $72 = (($71) - 8)|0; + $_vlen = $72; + $73 = $_vptr; + $74 = ((($73)) + 8|0); + $_vptr = $74; + $75 = $_vlen; + $76 = ($75>>>0)>=(8); + if (!($76)) { + break; + } + } + } + while(1) { + $77 = $_vlen; + $78 = ($77|0)!=(0); + if (!($78)) { + break; + } + $79 = $_vset; + $80 = $_vptr; + HEAP8[$80>>0] = $79; + $81 = $_vptr; + $82 = ((($81)) + 1|0); + $_vptr = $82; + $83 = $_vlen; + $84 = (($83) + -1)|0; + $_vlen = $84; + } + $85 = $burn_stack_depth; + ___gcry_burn_stack($85); + ___gcry_burn_stack_dummy(); + STACKTOP = sp;return; +} +function _buf_xor_n_copy_2_1460($_dst_xor,$_src_xor,$_srcdst_cpy,$_src_cpy,$len) { + $_dst_xor = $_dst_xor|0; + $_src_xor = $_src_xor|0; + $_srcdst_cpy = $_srcdst_cpy|0; + $_src_cpy = $_src_cpy|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 = 0, $dst_xor = 0, $ldst_xor = 0, $longmask = 0, $lsrc_cpy = 0, $lsrc_xor = 0, $lsrcdst_cpy = 0, $ltemp = 0, $src_cpy = 0, $src_xor = 0, $srcdst_cpy = 0, $temp = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst_xor; + $1 = $_src_xor; + $2 = $_srcdst_cpy; + $3 = $_src_cpy; + $4 = $len; + $5 = $0; + $dst_xor = $5; + $6 = $2; + $srcdst_cpy = $6; + $7 = $1; + $src_xor = $7; + $8 = $3; + $src_cpy = $8; + $longmask = 3; + $9 = $src_cpy; + $10 = $9; + $11 = $src_xor; + $12 = $11; + $13 = $10 | $12; + $14 = $dst_xor; + $15 = $14; + $16 = $13 | $15; + $17 = $srcdst_cpy; + $18 = $17; + $19 = $16 | $18; + $20 = $19 & 3; + $21 = ($20|0)!=(0); + if (!($21)) { + $22 = $dst_xor; + $ldst_xor = $22; + $23 = $src_xor; + $lsrc_xor = $23; + $24 = $srcdst_cpy; + $lsrcdst_cpy = $24; + $25 = $src_cpy; + $lsrc_cpy = $25; + while(1) { + $26 = $4; + $27 = ($26>>>0)>=(4); + if (!($27)) { + break; + } + $28 = $lsrc_cpy; + $29 = ((($28)) + 4|0); + $lsrc_cpy = $29; + $30 = HEAP32[$28>>2]|0; + $ltemp = $30; + $31 = $lsrcdst_cpy; + $32 = HEAP32[$31>>2]|0; + $33 = $lsrc_xor; + $34 = ((($33)) + 4|0); + $lsrc_xor = $34; + $35 = HEAP32[$33>>2]|0; + $36 = $32 ^ $35; + $37 = $ldst_xor; + $38 = ((($37)) + 4|0); + $ldst_xor = $38; + HEAP32[$37>>2] = $36; + $39 = $ltemp; + $40 = $lsrcdst_cpy; + $41 = ((($40)) + 4|0); + $lsrcdst_cpy = $41; + HEAP32[$40>>2] = $39; + $42 = $4; + $43 = (($42) - 4)|0; + $4 = $43; + } + $44 = $ldst_xor; + $dst_xor = $44; + $45 = $lsrc_xor; + $src_xor = $45; + $46 = $lsrcdst_cpy; + $srcdst_cpy = $46; + $47 = $lsrc_cpy; + $src_cpy = $47; + } + while(1) { + $48 = $4; + $49 = ($48|0)!=(0); + if (!($49)) { + break; + } + $50 = $src_cpy; + $51 = ((($50)) + 1|0); + $src_cpy = $51; + $52 = HEAP8[$50>>0]|0; + $temp = $52; + $53 = $srcdst_cpy; + $54 = HEAP8[$53>>0]|0; + $55 = $54&255; + $56 = $src_xor; + $57 = ((($56)) + 1|0); + $src_xor = $57; + $58 = HEAP8[$56>>0]|0; + $59 = $58&255; + $60 = $55 ^ $59; + $61 = $60&255; + $62 = $dst_xor; + $63 = ((($62)) + 1|0); + $dst_xor = $63; + HEAP8[$62>>0] = $61; + $64 = $temp; + $65 = $srcdst_cpy; + $66 = ((($65)) + 1|0); + $srcdst_cpy = $66; + HEAP8[$65>>0] = $64; + $67 = $4; + $68 = (($67) + -1)|0; + $4 = $68; + } + STACKTOP = sp;return; +} +function _selftest_cfb() { + var $0 = 0, $blocksize = 0, $context_size = 0, $nblocks = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $nblocks = 5; + $blocksize = 16; + $context_size = 4256; + $0 = (__gcry_selftest_helper_cfb(43465,32,33,65,5,16,4256)|0); + STACKTOP = sp;return ($0|0); +} +function __gcry_twofish_cfb_dec($context,$iv,$outbuf_arg,$inbuf_arg,$nblocks) { + $context = $context|0; + $iv = $iv|0; + $outbuf_arg = $outbuf_arg|0; + $inbuf_arg = $inbuf_arg|0; + $nblocks = $nblocks|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $burn = 0, $burn_stack_depth = 0, $ctx = 0, $inbuf = 0, $outbuf = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $iv; + $2 = $outbuf_arg; + $3 = $inbuf_arg; + $4 = $nblocks; + $5 = $0; + $ctx = $5; + $6 = $2; + $outbuf = $6; + $7 = $3; + $inbuf = $7; + $burn_stack_depth = 0; + while(1) { + $8 = $4; + $9 = ($8|0)!=(0); + if (!($9)) { + break; + } + $10 = $ctx; + $11 = $1; + $12 = $1; + $13 = (_twofish_encrypt($10,$11,$12)|0); + $burn = $13; + $14 = $burn; + $15 = $burn_stack_depth; + $16 = ($14>>>0)>($15>>>0); + if ($16) { + $17 = $burn; + $burn_stack_depth = $17; + } + $18 = $outbuf; + $19 = $1; + $20 = $inbuf; + _buf_xor_n_copy_1463($18,$19,$20,16); + $21 = $outbuf; + $22 = ((($21)) + 16|0); + $outbuf = $22; + $23 = $inbuf; + $24 = ((($23)) + 16|0); + $inbuf = $24; + $25 = $4; + $26 = (($25) + -1)|0; + $4 = $26; + } + $27 = $burn_stack_depth; + ___gcry_burn_stack($27); + ___gcry_burn_stack_dummy(); + STACKTOP = sp;return; +} +function _buf_xor_n_copy_1463($_dst_xor,$_srcdst_cpy,$_src,$len) { + $_dst_xor = $_dst_xor|0; + $_srcdst_cpy = $_srcdst_cpy|0; + $_src = $_src|0; + $len = $len|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst_xor; + $1 = $_srcdst_cpy; + $2 = $_src; + $3 = $len; + $4 = $0; + $5 = $2; + $6 = $1; + $7 = $2; + $8 = $3; + _buf_xor_n_copy_2_1460($4,$5,$6,$7,$8); + STACKTOP = sp;return; +} +function __gcry_register_random_progress($cb,$cb_data) { + $cb = $cb|0; + $cb_data = $cb_data|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $cb; + $1 = $cb_data; + $2 = $0; + HEAP32[17710] = $2; + $3 = $1; + HEAP32[17711] = $3; + STACKTOP = sp;return; +} +function __gcry_random_progress($what,$printchar,$current,$total) { + $what = $what|0; + $printchar = $printchar|0; + $current = $current|0; + $total = $total|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $what; + $1 = $printchar; + $2 = $current; + $3 = $total; + $4 = HEAP32[17710]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = HEAP32[17710]|0; + $7 = HEAP32[17711]|0; + $8 = $0; + $9 = $1; + $10 = $2; + $11 = $3; + FUNCTION_TABLE_viiiii[$6 & 127]($7,$8,$9,$10,$11); + STACKTOP = sp;return; +} +function __gcry_set_preferred_rng_type($type) { + $type = $type|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $type; + $1 = $0; + $2 = ($1|0)!=(0); + do { + if ($2) { + $3 = $0; + $4 = ($3|0)==(1); + if ($4) { + HEAP32[17713] = 1; + break; + } + $5 = HEAP32[17712]|0; + $6 = ($5|0)!=(0); + if (!($6)) { + $7 = $0; + $8 = ($7|0)==(2); + if ($8) { + HEAP32[(70856)>>2] = 1; + break; + } + $9 = $0; + $10 = ($9|0)==(3); + if ($10) { + HEAP32[(70860)>>2] = 1; + } + } + } else { + HEAP32[17712] = 1; + } + } while(0); + STACKTOP = sp;return; +} +function __gcry_random_initialize($full) { + $full = $full|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $full; + $1 = (__gcry_fips_mode()|0); + $2 = ($1|0)!=(0); + do { + if ($2) { + $3 = $0; + __gcry_rngfips_initialize($3); + } else { + $4 = HEAP32[17713]|0; + $5 = ($4|0)!=(0); + if ($5) { + $6 = $0; + __gcry_rngcsprng_initialize($6); + break; + } + $7 = HEAP32[(70856)>>2]|0; + $8 = ($7|0)!=(0); + if ($8) { + $9 = $0; + __gcry_rngfips_initialize($9); + break; + } + $10 = HEAP32[(70860)>>2]|0; + $11 = ($10|0)!=(0); + $12 = $0; + if ($11) { + __gcry_rngsystem_initialize($12); + break; + } else { + __gcry_rngcsprng_initialize($12); + break; + } + } + } while(0); + STACKTOP = sp;return; +} +function __gcry_random_close_fds() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (__gcry_fips_mode()|0); + $1 = ($0|0)!=(0); + if ($1) { + __gcry_rngfips_close_fds(); + return; + } + $2 = HEAP32[17713]|0; + $3 = ($2|0)!=(0); + if ($3) { + __gcry_rngcsprng_close_fds(); + return; + } + $4 = HEAP32[(70856)>>2]|0; + $5 = ($4|0)!=(0); + if ($5) { + __gcry_rngfips_close_fds(); + return; + } + $6 = HEAP32[(70860)>>2]|0; + $7 = ($6|0)!=(0); + if ($7) { + __gcry_rngsystem_close_fds(); + return; + } else { + __gcry_rngcsprng_close_fds(); + return; + } +} +function __gcry_get_rng_type($ignore_fips_mode) { + $ignore_fips_mode = $ignore_fips_mode|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $ignore_fips_mode; + $2 = $1; + $3 = ($2|0)!=(0); + if ($3) { + label = 4; + } else { + $4 = (__gcry_fips_mode()|0); + $5 = ($4|0)!=(0); + if ($5) { + $0 = 2; + } else { + label = 4; + } + } + do { + if ((label|0) == 4) { + $6 = HEAP32[17713]|0; + $7 = ($6|0)!=(0); + if ($7) { + $0 = 1; + break; + } + $8 = HEAP32[(70856)>>2]|0; + $9 = ($8|0)!=(0); + if ($9) { + $0 = 2; + break; + } + $10 = HEAP32[(70860)>>2]|0; + $11 = ($10|0)!=(0); + if ($11) { + $0 = 3; + break; + } else { + $0 = 1; + break; + } + } + } while(0); + $12 = $0; + STACKTOP = sp;return ($12|0); +} +function __gcry_random_dump_stats() { + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (__gcry_fips_mode()|0); + $1 = ($0|0)!=(0); + if ($1) { + __gcry_rngfips_dump_stats(); + return; + } else { + __gcry_rngcsprng_dump_stats(); + return; + } +} +function __gcry_secure_random_alloc() { + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (__gcry_fips_mode()|0); + $1 = ($0|0)!=(0); + if ($1) { + return; + } + __gcry_rngcsprng_secure_alloc(); + return; +} +function __gcry_enable_quick_random_gen() { + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (__gcry_fips_mode()|0); + $1 = ($0|0)!=(0); + if ($1) { + return; + } + __gcry_rngcsprng_enable_quick_gen(); + return; +} +function __gcry_set_random_daemon_socket($socketname) { + $socketname = $socketname|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $socketname; + $1 = (__gcry_fips_mode()|0); + $2 = ($1|0)!=(0); + if ($2) { + STACKTOP = sp;return; + } + $3 = $0; + __gcry_rngcsprng_set_daemon_socket($3); + STACKTOP = sp;return; +} +function __gcry_use_random_daemon($onoff) { + $onoff = $onoff|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $onoff; + $2 = (__gcry_fips_mode()|0); + $3 = ($2|0)!=(0); + if ($3) { + $0 = 0; + } else { + $4 = $1; + $5 = (__gcry_rngcsprng_use_daemon($4)|0); + $0 = $5; + } + $6 = $0; + STACKTOP = sp;return ($6|0); +} +function __gcry_random_is_faked() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = (__gcry_fips_mode()|0); + $2 = ($1|0)!=(0); + if ($2) { + $3 = (__gcry_rngfips_is_faked()|0); + $0 = $3; + } else { + $4 = (__gcry_rngcsprng_is_faked()|0); + $0 = $4; + } + $5 = $0; + STACKTOP = sp;return ($5|0); +} +function __gcry_random_bytes($nbytes,$level) { + $nbytes = $nbytes|0; + $level = $level|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $nbytes; + $1 = $level; + $2 = $0; + $3 = (__gcry_xmalloc($2)|0); + $buffer = $3; + $4 = $buffer; + $5 = $0; + $6 = $1; + _do_randomize($4,$5,$6); + $7 = $buffer; + STACKTOP = sp;return ($7|0); +} +function _do_randomize($buffer,$length,$level) { + $buffer = $buffer|0; + $length = $length|0; + $level = $level|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $buffer; + $1 = $length; + $2 = $level; + $3 = (__gcry_fips_mode()|0); + $4 = ($3|0)!=(0); + if ($4) { + $5 = $0; + $6 = $1; + $7 = $2; + __gcry_rngfips_randomize($5,$6,$7); + STACKTOP = sp;return; + } + $8 = HEAP32[17713]|0; + $9 = ($8|0)!=(0); + if ($9) { + $10 = $0; + $11 = $1; + $12 = $2; + __gcry_rngcsprng_randomize($10,$11,$12); + STACKTOP = sp;return; + } + $13 = HEAP32[(70856)>>2]|0; + $14 = ($13|0)!=(0); + if ($14) { + $15 = $0; + $16 = $1; + $17 = $2; + __gcry_rngfips_randomize($15,$16,$17); + STACKTOP = sp;return; + } + $18 = HEAP32[(70860)>>2]|0; + $19 = ($18|0)!=(0); + $20 = $0; + $21 = $1; + $22 = $2; + if ($19) { + __gcry_rngsystem_randomize($20,$21,$22); + STACKTOP = sp;return; + } else { + __gcry_rngcsprng_randomize($20,$21,$22); + STACKTOP = sp;return; + } +} +function __gcry_random_bytes_secure($nbytes,$level) { + $nbytes = $nbytes|0; + $level = $level|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $nbytes; + $1 = $level; + $2 = $0; + $3 = (__gcry_xmalloc_secure($2)|0); + $buffer = $3; + $4 = $buffer; + $5 = $0; + $6 = $1; + _do_randomize($4,$5,$6); + $7 = $buffer; + STACKTOP = sp;return ($7|0); +} +function __gcry_randomize($buffer,$length,$level) { + $buffer = $buffer|0; + $length = $length|0; + $level = $level|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $buffer; + $1 = $length; + $2 = $level; + $3 = $0; + $4 = $1; + $5 = $2; + _do_randomize($3,$4,$5); + STACKTOP = sp;return; +} +function __gcry_set_random_seed_file($name) { + $name = $name|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $name; + $1 = (__gcry_fips_mode()|0); + $2 = ($1|0)!=(0); + do { + if (!($2)) { + $3 = HEAP32[17713]|0; + $4 = ($3|0)!=(0); + if ($4) { + $5 = $0; + __gcry_rngcsprng_set_seed_file($5); + break; + } + $6 = HEAP32[(70856)>>2]|0; + $7 = ($6|0)!=(0); + $8 = HEAP32[(70860)>>2]|0; + $9 = ($8|0)!=(0); + $or$cond = $7 | $9; + if (!($or$cond)) { + $10 = $0; + __gcry_rngcsprng_set_seed_file($10); + } + } + } while(0); + STACKTOP = sp;return; +} +function __gcry_update_random_seed_file() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $or$cond = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (__gcry_fips_mode()|0); + $1 = ($0|0)!=(0); + if ($1) { + return; + } + $2 = HEAP32[17713]|0; + $3 = ($2|0)!=(0); + if ($3) { + __gcry_rngcsprng_update_seed_file(); + return; + } + $4 = HEAP32[(70856)>>2]|0; + $5 = ($4|0)!=(0); + $6 = HEAP32[(70860)>>2]|0; + $7 = ($6|0)!=(0); + $or$cond = $5 | $7; + if ($or$cond) { + return; + } + __gcry_rngcsprng_update_seed_file(); + return; +} +function __gcry_fast_random_poll() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $or$cond = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (__gcry_fips_mode()|0); + $1 = ($0|0)!=(0); + if ($1) { + return; + } + $2 = HEAP32[17713]|0; + $3 = ($2|0)!=(0); + if ($3) { + __gcry_rngcsprng_fast_poll(); + return; + } + $4 = HEAP32[(70856)>>2]|0; + $5 = ($4|0)!=(0); + $6 = HEAP32[(70860)>>2]|0; + $7 = ($6|0)!=(0); + $or$cond = $5 | $7; + if ($or$cond) { + return; + } + __gcry_rngcsprng_fast_poll(); + return; +} +function __gcry_create_nonce($buffer,$length) { + $buffer = $buffer|0; + $length = $length|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $apid = 0, $atime = 0, $err = 0, $n = 0, $p = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $xpid = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $atime = sp + 16|0; + $xpid = sp + 12|0; + $0 = $buffer; + $1 = $length; + $2 = (__gcry_fips_mode()|0); + $3 = ($2|0)!=(0); + if ($3) { + $4 = $0; + $5 = $1; + __gcry_rngfips_create_nonce($4,$5); + STACKTOP = sp;return; + } + __gcry_random_initialize(1); + $6 = (_gpgrt_lock_lock(12536)|0); + $err = $6; + $7 = $err; + $8 = ($7|0)!=(0); + if ($8) { + $9 = $err; + $10 = (_gpg_strerror($9)|0); + HEAP32[$vararg_buffer>>2] = $10; + __gcry_log_fatal(45515,$vararg_buffer); + // unreachable; + } + $11 = (_getpid()|0); + $apid = $11; + $12 = HEAP32[17716]|0; + $13 = ($12|0)!=(0); + if ($13) { + $21 = HEAP32[17717]|0; + $22 = $apid; + $23 = ($21|0)!=($22|0); + if ($23) { + _do_randomize((76467),8,0); + $24 = $apid; + HEAP32[17717] = $24; + } + } else { + $14 = (_time((0|0))|0); + HEAP32[$atime>>2] = $14; + $15 = $apid; + HEAP32[$xpid>>2] = $15; + $16 = $apid; + HEAP32[17717] = $16; + $p = 76447; + $17 = $p; + ;HEAP8[$17>>0]=HEAP8[$xpid>>0]|0;HEAP8[$17+1>>0]=HEAP8[$xpid+1>>0]|0;HEAP8[$17+2>>0]=HEAP8[$xpid+2>>0]|0;HEAP8[$17+3>>0]=HEAP8[$xpid+3>>0]|0; + $18 = $p; + $19 = ((($18)) + 4|0); + $p = $19; + $20 = $p; + ;HEAP8[$20>>0]=HEAP8[$atime>>0]|0;HEAP8[$20+1>>0]=HEAP8[$atime+1>>0]|0;HEAP8[$20+2>>0]=HEAP8[$atime+2>>0]|0;HEAP8[$20+3>>0]=HEAP8[$atime+3>>0]|0; + __gcry_randomize((76467),8,0); + HEAP32[17716] = 1; + } + $25 = $0; + $p = $25; + while(1) { + $26 = $1; + $27 = ($26>>>0)>(0); + if (!($27)) { + break; + } + __gcry_sha1_hash_buffer(76447,76447,28); + $28 = $1; + $29 = ($28>>>0)>(20); + $30 = $1; + $31 = $29 ? 20 : $30; + $n = $31; + $32 = $p; + $33 = $n; + _memcpy(($32|0),(76447|0),($33|0))|0; + $34 = $n; + $35 = $1; + $36 = (($35) - ($34))|0; + $1 = $36; + $37 = $n; + $38 = $p; + $39 = (($38) + ($37)|0); + $p = $39; + } + $40 = (_gpgrt_lock_unlock(12536)|0); + $err = $40; + $41 = $err; + $42 = ($41|0)!=(0); + if ($42) { + $43 = $err; + $44 = (_gpg_strerror($43)|0); + HEAP32[$vararg_buffer1>>2] = $44; + __gcry_log_fatal(45560,$vararg_buffer1); + // unreachable; + } else { + STACKTOP = sp;return; + } +} +function __gcry_random_selftest($report) { + $report = $report|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $report; + $2 = (__gcry_fips_mode()|0); + $3 = ($2|0)!=(0); + if ($3) { + $4 = $1; + $5 = (__gcry_rngfips_selftest($4)|0); + $0 = $5; + } else { + $0 = 0; + } + $6 = $0; + STACKTOP = sp;return ($6|0); +} +function __gcry_random_init_external_test($r_context,$flags,$key,$keylen,$seed,$seedlen,$dt,$dtlen) { + $r_context = $r_context|0; + $flags = $flags|0; + $key = $key|0; + $keylen = $keylen|0; + $seed = $seed|0; + $seedlen = $seedlen|0; + $dt = $dt|0; + $dtlen = $dtlen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $r_context; + $2 = $flags; + $3 = $key; + $4 = $keylen; + $5 = $seed; + $6 = $seedlen; + $7 = $dt; + $8 = $dtlen; + $9 = (__gcry_fips_mode()|0); + $10 = ($9|0)!=(0); + if ($10) { + $11 = $1; + $12 = $2; + $13 = $3; + $14 = $4; + $15 = $5; + $16 = $6; + $17 = $7; + $18 = $8; + $19 = (__gcry_rngfips_init_external_test($11,$12,$13,$14,$15,$16,$17,$18)|0); + $0 = $19; + $20 = $0; + STACKTOP = sp;return ($20|0); + } else { + $0 = 60; + $20 = $0; + STACKTOP = sp;return ($20|0); + } + return (0)|0; +} +function __gcry_random_run_external_test($context,$buffer,$buflen) { + $context = $context|0; + $buffer = $buffer|0; + $buflen = $buflen|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $context; + $2 = $buffer; + $3 = $buflen; + $4 = (__gcry_fips_mode()|0); + $5 = ($4|0)!=(0); + if ($5) { + $6 = $1; + $7 = $2; + $8 = $3; + $9 = (__gcry_rngfips_run_external_test($6,$7,$8)|0); + $0 = $9; + $10 = $0; + STACKTOP = sp;return ($10|0); + } else { + $0 = 60; + $10 = $0; + STACKTOP = sp;return ($10|0); + } + return (0)|0; +} +function __gcry_random_deinit_external_test($context) { + $context = $context|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = (__gcry_fips_mode()|0); + $2 = ($1|0)!=(0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = $0; + __gcry_rngfips_deinit_external_test($3); + STACKTOP = sp;return; +} +function __gcry_mpi_point_log($name,$point,$ctx) { + $name = $name|0; + $point = $point|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $buf = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $x = 0, $y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $buf = sp + 32|0; + $0 = $name; + $1 = $point; + $2 = $ctx; + $3 = $1; + $4 = ($3|0)!=(0|0); + $5 = $0; + if (!($4)) { + HEAP32[$vararg_buffer>>2] = $5; + (_snprintf($buf,99,45605,$vararg_buffer)|0); + __gcry_log_printmpi($buf,0); + STACKTOP = sp;return; + } + HEAP32[$vararg_buffer1>>2] = $5; + (_snprintf($buf,99,45610,$vararg_buffer1)|0); + $6 = $2; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = (__gcry_mpi_new(0)|0); + $x = $8; + $9 = (__gcry_mpi_new(0)|0); + $y = $9; + } + $10 = $2; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = $x; + $13 = $y; + $14 = $1; + $15 = $2; + $16 = (__gcry_mpi_ec_get_affine($12,$13,$14,$15)|0); + $17 = ($16|0)!=(0); + if ($17) { + label = 7; + } else { + $32 = (_strlen($buf)|0); + $33 = (($32) - 1)|0; + $34 = (($buf) + ($33)|0); + HEAP8[$34>>0] = 120; + $35 = $x; + __gcry_log_printmpi($buf,$35); + $36 = (_strlen($buf)|0); + $37 = (($36) - 1)|0; + $38 = (($buf) + ($37)|0); + HEAP8[$38>>0] = 121; + $39 = $y; + __gcry_log_printmpi($buf,$39); + } + } else { + label = 7; + } + if ((label|0) == 7) { + $18 = $1; + $19 = HEAP32[$18>>2]|0; + __gcry_log_printmpi($buf,$19); + $20 = (_strlen($buf)|0); + $21 = (($20) - 1)|0; + $22 = (($buf) + ($21)|0); + HEAP8[$22>>0] = 89; + $23 = $1; + $24 = ((($23)) + 4|0); + $25 = HEAP32[$24>>2]|0; + __gcry_log_printmpi($buf,$25); + $26 = (_strlen($buf)|0); + $27 = (($26) - 1)|0; + $28 = (($buf) + ($27)|0); + HEAP8[$28>>0] = 90; + $29 = $1; + $30 = ((($29)) + 8|0); + $31 = HEAP32[$30>>2]|0; + __gcry_log_printmpi($buf,$31); + } + $40 = $2; + $41 = ($40|0)!=(0|0); + if (!($41)) { + STACKTOP = sp;return; + } + $42 = $x; + __gcry_mpi_release($42); + $43 = $y; + __gcry_mpi_release($43); + STACKTOP = sp;return; +} +function __gcry_mpi_ec_get_affine($x,$y,$point,$ctx) { + $x = $x|0; + $y = $y|0; + $point = $point|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $z = 0, $z1 = 0; + var $z2 = 0, $z3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $1 = $x; + $2 = $y; + $3 = $point; + $4 = $ctx; + $5 = $3; + $6 = ((($5)) + 8|0); + $7 = HEAP32[$6>>2]|0; + $8 = (__gcry_mpi_cmp_ui($7,0)|0); + $9 = ($8|0)!=(0); + if (!($9)) { + $0 = -1; + $75 = $0; + STACKTOP = sp;return ($75|0); + } + $10 = $4; + $11 = HEAP32[$10>>2]|0; + switch ($11|0) { + case 0: { + $12 = (__gcry_mpi_new(0)|0); + $z1 = $12; + $13 = (__gcry_mpi_new(0)|0); + $z2 = $13; + $14 = $z1; + $15 = $3; + $16 = ((($15)) + 8|0); + $17 = HEAP32[$16>>2]|0; + $18 = $4; + _ec_invm($14,$17,$18); + $19 = $z2; + $20 = $z1; + $21 = $z1; + $22 = $4; + _ec_mulm($19,$20,$21,$22); + $23 = $1; + $24 = ($23|0)!=(0|0); + if ($24) { + $25 = $1; + $26 = $3; + $27 = HEAP32[$26>>2]|0; + $28 = $z2; + $29 = $4; + _ec_mulm($25,$27,$28,$29); + } + $30 = $2; + $31 = ($30|0)!=(0|0); + if ($31) { + $32 = (__gcry_mpi_new(0)|0); + $z3 = $32; + $33 = $z3; + $34 = $z2; + $35 = $z1; + $36 = $4; + _ec_mulm($33,$34,$35,$36); + $37 = $2; + $38 = $3; + $39 = ((($38)) + 4|0); + $40 = HEAP32[$39>>2]|0; + $41 = $z3; + $42 = $4; + _ec_mulm($37,$40,$41,$42); + $43 = $z3; + __gcry_mpi_free($43); + } + $44 = $z2; + __gcry_mpi_free($44); + $45 = $z1; + __gcry_mpi_free($45); + $0 = 0; + $75 = $0; + STACKTOP = sp;return ($75|0); + break; + } + case 1: { + $46 = $1; + $47 = ($46|0)!=(0|0); + if ($47) { + $48 = $1; + $49 = $3; + $50 = HEAP32[$49>>2]|0; + (__gcry_mpi_set($48,$50)|0); + } + $51 = $2; + $52 = ($51|0)!=(0|0); + if ($52) { + HEAP32[$vararg_buffer>>2] = 45706; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 45730; + __gcry_log_fatal(45657,$vararg_buffer); + // unreachable; + } + $0 = 0; + $75 = $0; + STACKTOP = sp;return ($75|0); + break; + } + case 2: { + $53 = (__gcry_mpi_new(0)|0); + $z = $53; + $54 = $z; + $55 = $3; + $56 = ((($55)) + 8|0); + $57 = HEAP32[$56>>2]|0; + $58 = $4; + _ec_invm($54,$57,$58); + $59 = $1; + $60 = ($59|0)!=(0|0); + if ($60) { + $61 = $1; + $62 = $3; + $63 = HEAP32[$62>>2]|0; + $64 = $z; + $65 = $4; + _ec_mulm($61,$63,$64,$65); + } + $66 = $2; + $67 = ($66|0)!=(0|0); + if ($67) { + $68 = $2; + $69 = $3; + $70 = ((($69)) + 4|0); + $71 = HEAP32[$70>>2]|0; + $72 = $z; + $73 = $4; + _ec_mulm($68,$71,$72,$73); + } + $74 = $z; + __gcry_mpi_release($74); + $0 = 0; + $75 = $0; + STACKTOP = sp;return ($75|0); + break; + } + default: { + $0 = -1; + $75 = $0; + STACKTOP = sp;return ($75|0); + } + } + return (0)|0; +} +function _ec_invm($x,$a,$ctx) { + $x = $x|0; + $a = $a|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $x; + $1 = $a; + $2 = $ctx; + $3 = $0; + $4 = $1; + $5 = $2; + $6 = ((($5)) + 16|0); + $7 = HEAP32[$6>>2]|0; + $8 = (__gcry_mpi_invm($3,$4,$7)|0); + $9 = ($8|0)!=(0); + if ($9) { + STACKTOP = sp;return; + } + __gcry_log_error(45615,$vararg_buffer); + $10 = $1; + __gcry_log_printmpi(45649,$10); + $11 = $2; + $12 = ((($11)) + 16|0); + $13 = HEAP32[$12>>2]|0; + __gcry_log_printmpi(45653,$13); + STACKTOP = sp;return; +} +function _ec_mulm($w,$u,$v,$ctx) { + $w = $w|0; + $u = $u|0; + $v = $v|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $u; + $2 = $v; + $3 = $ctx; + $4 = $0; + $5 = $1; + $6 = $2; + __gcry_mpi_mul($4,$5,$6); + $7 = $0; + $8 = $3; + _ec_mod($7,$8); + STACKTOP = sp;return; +} +function _ec_mod($w,$ec) { + $w = $w|0; + $ec = $ec|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $ec; + $2 = $1; + $3 = ((($2)) + 48|0); + $4 = ((($3)) + 12|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + $7 = $0; + $8 = $0; + $9 = $1; + if ($6) { + $10 = ((($9)) + 48|0); + $11 = ((($10)) + 12|0); + $12 = HEAP32[$11>>2]|0; + __gcry_mpi_mod_barrett($7,$8,$12); + STACKTOP = sp;return; + } else { + $13 = ((($9)) + 16|0); + $14 = HEAP32[$13>>2]|0; + __gcry_mpi_mod($7,$8,$14); + STACKTOP = sp;return; + } +} +function __gcry_mpi_point_new($nbits) { + $nbits = $nbits|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $nbits; + $1 = (__gcry_xmalloc(12)|0); + $p = $1; + $2 = $p; + __gcry_mpi_point_init($2); + $3 = $p; + STACKTOP = sp;return ($3|0); +} +function __gcry_mpi_point_init($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $p; + $1 = (__gcry_mpi_new(0)|0); + $2 = $0; + HEAP32[$2>>2] = $1; + $3 = (__gcry_mpi_new(0)|0); + $4 = $0; + $5 = ((($4)) + 4|0); + HEAP32[$5>>2] = $3; + $6 = (__gcry_mpi_new(0)|0); + $7 = $0; + $8 = ((($7)) + 8|0); + HEAP32[$8>>2] = $6; + STACKTOP = sp;return; +} +function __gcry_mpi_point_release($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $p; + $1 = $0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = $0; + __gcry_mpi_point_free_parts($3); + $4 = $0; + __gcry_free($4); + STACKTOP = sp;return; +} +function __gcry_mpi_point_free_parts($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $p; + $1 = $0; + $2 = HEAP32[$1>>2]|0; + __gcry_mpi_free($2); + $3 = $0; + HEAP32[$3>>2] = 0; + $4 = $0; + $5 = ((($4)) + 4|0); + $6 = HEAP32[$5>>2]|0; + __gcry_mpi_free($6); + $7 = $0; + $8 = ((($7)) + 4|0); + HEAP32[$8>>2] = 0; + $9 = $0; + $10 = ((($9)) + 8|0); + $11 = HEAP32[$10>>2]|0; + __gcry_mpi_free($11); + $12 = $0; + $13 = ((($12)) + 8|0); + HEAP32[$13>>2] = 0; + STACKTOP = sp;return; +} +function __gcry_mpi_point_set($point,$x,$y,$z) { + $point = $point|0; + $x = $x|0; + $y = $y|0; + $z = $z|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $point; + $1 = $x; + $2 = $y; + $3 = $z; + $4 = $0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + $6 = (__gcry_mpi_point_new(0)|0); + $0 = $6; + } + $7 = $1; + $8 = ($7|0)!=(0|0); + $9 = $0; + $10 = HEAP32[$9>>2]|0; + if ($8) { + $11 = $1; + (__gcry_mpi_set($10,$11)|0); + } else { + __gcry_mpi_clear($10); + } + $12 = $2; + $13 = ($12|0)!=(0|0); + $14 = $0; + $15 = ((($14)) + 4|0); + $16 = HEAP32[$15>>2]|0; + if ($13) { + $17 = $2; + (__gcry_mpi_set($16,$17)|0); + } else { + __gcry_mpi_clear($16); + } + $18 = $3; + $19 = ($18|0)!=(0|0); + $20 = $0; + $21 = ((($20)) + 8|0); + $22 = HEAP32[$21>>2]|0; + if ($19) { + $23 = $3; + (__gcry_mpi_set($22,$23)|0); + $24 = $0; + STACKTOP = sp;return ($24|0); + } else { + __gcry_mpi_clear($22); + $24 = $0; + STACKTOP = sp;return ($24|0); + } + return (0)|0; +} +function __gcry_mpi_point_snatch_set($point,$x,$y,$z) { + $point = $point|0; + $x = $x|0; + $y = $y|0; + $z = $z|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $point; + $1 = $x; + $2 = $y; + $3 = $z; + $4 = $0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + $6 = (__gcry_mpi_point_new(0)|0); + $0 = $6; + } + $7 = $1; + $8 = ($7|0)!=(0|0); + $9 = $0; + $10 = HEAP32[$9>>2]|0; + if ($8) { + $11 = $1; + __gcry_mpi_snatch($10,$11); + } else { + __gcry_mpi_clear($10); + } + $12 = $2; + $13 = ($12|0)!=(0|0); + $14 = $0; + $15 = ((($14)) + 4|0); + $16 = HEAP32[$15>>2]|0; + if ($13) { + $17 = $2; + __gcry_mpi_snatch($16,$17); + } else { + __gcry_mpi_clear($16); + } + $18 = $3; + $19 = ($18|0)!=(0|0); + $20 = $0; + $21 = ((($20)) + 8|0); + $22 = HEAP32[$21>>2]|0; + if ($19) { + $23 = $3; + __gcry_mpi_snatch($22,$23); + $24 = $0; + STACKTOP = sp;return ($24|0); + } else { + __gcry_mpi_clear($22); + $24 = $0; + STACKTOP = sp;return ($24|0); + } + return (0)|0; +} +function __gcry_mpi_ec_get_reset($ec) { + $ec = $ec|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ec; + $1 = $0; + $2 = ((($1)) + 48|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3 & -2; + HEAP8[$2>>0] = $4; + $5 = $0; + $6 = ((($5)) + 48|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7 & -3; + HEAP8[$6>>0] = $8; + STACKTOP = sp;return; +} +function __gcry_mpi_ec_p_internal_new($model,$dialect,$flags,$p,$a,$b) { + $model = $model|0; + $dialect = $dialect|0; + $flags = $flags|0; + $p = $p|0; + $a = $a|0; + $b = $b|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ctx = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $model; + $1 = $dialect; + $2 = $flags; + $3 = $p; + $4 = $a; + $5 = $b; + $6 = (__gcry_xcalloc(1,108)|0); + $ctx = $6; + $7 = $ctx; + $8 = $0; + $9 = $1; + $10 = $2; + $11 = $3; + $12 = $4; + $13 = $5; + _ec_p_init($7,$8,$9,$10,$11,$12,$13); + $14 = $ctx; + STACKTOP = sp;return ($14|0); +} +function _ec_p_init($ctx,$model,$dialect,$flags,$p,$a,$b) { + $ctx = $ctx|0; + $model = $model|0; + $dialect = $dialect|0; + $flags = $flags|0; + $p = $p|0; + $a = $a|0; + $b = $b|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $1 = $model; + $2 = $dialect; + $3 = $flags; + $4 = $p; + $5 = $a; + $6 = $b; + $7 = HEAP32[17718]|0; + $8 = ($7|0)!=(0); + do { + if (!($8)) { + $9 = (_getenv((45741|0))|0); + $10 = ($9|0)!=(0|0); + if ($10) { + HEAP32[17718] = 1; + break; + } else { + HEAP32[17718] = -1; + break; + } + } + } while(0); + $11 = $1; + $12 = $0; + HEAP32[$12>>2] = $11; + $13 = $2; + $14 = $0; + $15 = ((($14)) + 4|0); + HEAP32[$15>>2] = $13; + $16 = $3; + $17 = $0; + $18 = ((($17)) + 8|0); + HEAP32[$18>>2] = $16; + $19 = $2; + $20 = ($19|0)==(1); + if ($20) { + $21 = $0; + $22 = ((($21)) + 12|0); + HEAP32[$22>>2] = 256; + } else { + $23 = $4; + $24 = (__gcry_mpi_get_nbits($23)|0); + $25 = $0; + $26 = ((($25)) + 12|0); + HEAP32[$26>>2] = $24; + } + $27 = $4; + $28 = (__gcry_mpi_copy($27)|0); + $29 = $0; + $30 = ((($29)) + 16|0); + HEAP32[$30>>2] = $28; + $31 = $5; + $32 = (__gcry_mpi_copy($31)|0); + $33 = $0; + $34 = ((($33)) + 20|0); + HEAP32[$34>>2] = $32; + $35 = $6; + $36 = (__gcry_mpi_copy($35)|0); + $37 = $0; + $38 = ((($37)) + 24|0); + HEAP32[$38>>2] = $36; + $39 = HEAP32[17718]|0; + $40 = ($39|0)>(0); + if ($40) { + $41 = $0; + $42 = ((($41)) + 16|0); + $43 = HEAP32[$42>>2]|0; + $44 = (__gcry_mpi_barrett_init($43,0)|0); + $48 = $44; + } else { + $48 = 0; + } + $45 = $0; + $46 = ((($45)) + 48|0); + $47 = ((($46)) + 12|0); + HEAP32[$47>>2] = $48; + $49 = $0; + __gcry_mpi_ec_get_reset($49); + $i = 0; + while(1) { + $50 = $i; + $51 = ($50>>>0)<(11); + if (!($51)) { + break; + } + $52 = $0; + $53 = ((($52)) + 16|0); + $54 = HEAP32[$53>>2]|0; + $55 = (__gcry_mpi_alloc_like($54)|0); + $56 = $i; + $57 = $0; + $58 = ((($57)) + 48|0); + $59 = ((($58)) + 16|0); + $60 = (($59) + ($56<<2)|0); + HEAP32[$60>>2] = $55; + $61 = $i; + $62 = (($61) + 1)|0; + $i = $62; + } + STACKTOP = sp;return; +} +function __gcry_mpi_ec_p_new($r_ctx,$model,$dialect,$flags,$p,$a,$b) { + $r_ctx = $r_ctx|0; + $model = $model|0; + $dialect = $dialect|0; + $flags = $flags|0; + $p = $p|0; + $a = $a|0; + $b = $b|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ctx = 0, $ec = 0, $or$cond = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $r_ctx; + $2 = $model; + $3 = $dialect; + $4 = $flags; + $5 = $p; + $6 = $a; + $7 = $b; + $8 = $1; + HEAP32[$8>>2] = 0; + $9 = $5; + $10 = ($9|0)!=(0|0); + $11 = $6; + $12 = ($11|0)!=(0|0); + $or$cond = $10 & $12; + if (!($or$cond)) { + $0 = 32816; + $28 = $0; + STACKTOP = sp;return ($28|0); + } + $13 = (__gcry_ctx_alloc(1,108,77)|0); + $ctx = $13; + $14 = $ctx; + $15 = ($14|0)!=(0|0); + if ($15) { + $17 = $ctx; + $18 = (__gcry_ctx_get_pointer($17,1)|0); + $ec = $18; + $19 = $ec; + $20 = $2; + $21 = $3; + $22 = $4; + $23 = $5; + $24 = $6; + $25 = $7; + _ec_p_init($19,$20,$21,$22,$23,$24,$25); + $26 = $ctx; + $27 = $1; + HEAP32[$27>>2] = $26; + $0 = 0; + $28 = $0; + STACKTOP = sp;return ($28|0); + } else { + $16 = (_gpg_err_code_from_syserror()|0); + $0 = $16; + $28 = $0; + STACKTOP = sp;return ($28|0); + } + return (0)|0; +} +function _ec_deinit($opaque) { + $opaque = $opaque|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ctx = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $opaque; + $1 = $0; + $ctx = $1; + $2 = $ctx; + $3 = ((($2)) + 48|0); + $4 = ((($3)) + 12|0); + $5 = HEAP32[$4>>2]|0; + __gcry_mpi_barrett_free($5); + $6 = $ctx; + $7 = ((($6)) + 16|0); + $8 = HEAP32[$7>>2]|0; + __gcry_mpi_free($8); + $9 = $ctx; + $10 = ((($9)) + 20|0); + $11 = HEAP32[$10>>2]|0; + __gcry_mpi_free($11); + $12 = $ctx; + $13 = ((($12)) + 24|0); + $14 = HEAP32[$13>>2]|0; + __gcry_mpi_free($14); + $15 = $ctx; + $16 = ((($15)) + 28|0); + $17 = HEAP32[$16>>2]|0; + __gcry_mpi_point_release($17); + $18 = $ctx; + $19 = ((($18)) + 32|0); + $20 = HEAP32[$19>>2]|0; + __gcry_mpi_free($20); + $21 = $ctx; + $22 = ((($21)) + 36|0); + $23 = HEAP32[$22>>2]|0; + __gcry_mpi_free($23); + $24 = $ctx; + $25 = ((($24)) + 40|0); + $26 = HEAP32[$25>>2]|0; + __gcry_mpi_point_release($26); + $27 = $ctx; + $28 = ((($27)) + 44|0); + $29 = HEAP32[$28>>2]|0; + __gcry_mpi_free($29); + $30 = $ctx; + $31 = ((($30)) + 48|0); + $32 = ((($31)) + 8|0); + $33 = HEAP32[$32>>2]|0; + __gcry_mpi_free($33); + $i = 0; + while(1) { + $34 = $i; + $35 = ($34>>>0)<(11); + if (!($35)) { + break; + } + $36 = $i; + $37 = $ctx; + $38 = ((($37)) + 48|0); + $39 = ((($38)) + 16|0); + $40 = (($39) + ($36<<2)|0); + $41 = HEAP32[$40>>2]|0; + __gcry_mpi_free($41); + $42 = $i; + $43 = (($42) + 1)|0; + $i = $43; + } + STACKTOP = sp;return; +} +function __gcry_mpi_ec_free($ctx) { + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $1 = $0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = $0; + _ec_deinit($3); + $4 = $0; + __gcry_free($4); + STACKTOP = sp;return; +} +function __gcry_mpi_ec_get_mpi($name,$ctx,$copy) { + $name = $name|0; + $ctx = $ctx|0; + $copy = $copy|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $ec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $name; + $1 = $ctx; + $2 = $copy; + $3 = $1; + $4 = (__gcry_ctx_get_pointer($3,1)|0); + $ec = $4; + $5 = $0; + $6 = $ec; + $7 = $2; + $8 = (__gcry_ecc_get_mpi($5,$6,$7)|0); + STACKTOP = sp;return ($8|0); +} +function __gcry_mpi_ec_get_point($name,$ctx,$copy) { + $name = $name|0; + $ctx = $ctx|0; + $copy = $copy|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $ec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $name; + $1 = $ctx; + $2 = $copy; + $3 = $1; + $4 = (__gcry_ctx_get_pointer($3,1)|0); + $ec = $4; + $5 = $0; + $6 = $ec; + $7 = (__gcry_ecc_get_point($5,$6)|0); + STACKTOP = sp;return ($7|0); +} +function __gcry_mpi_ec_dup_point($result,$point,$ctx) { + $result = $result|0; + $point = $point|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $result; + $1 = $point; + $2 = $ctx; + $3 = $2; + $4 = HEAP32[$3>>2]|0; + switch ($4|0) { + case 0: { + $5 = $0; + $6 = $1; + $7 = $2; + _dup_point_weierstrass($5,$6,$7); + break; + } + case 1: { + $8 = $0; + $9 = $1; + $10 = $2; + _dup_point_montgomery($8,$9,$10); + break; + } + case 2: { + $11 = $0; + $12 = $1; + $13 = $2; + _dup_point_edwards($11,$12,$13); + break; + } + default: { + } + } + STACKTOP = sp;return; +} +function _dup_point_weierstrass($result,$point,$ctx) { + $result = $result|0; + $point = $point|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; + var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; + var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; + var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; + var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $result; + $1 = $point; + $2 = $ctx; + $3 = $1; + $4 = ((($3)) + 4|0); + $5 = HEAP32[$4>>2]|0; + $6 = (__gcry_mpi_cmp_ui($5,0)|0); + $7 = ($6|0)!=(0); + if ($7) { + $8 = $1; + $9 = ((($8)) + 8|0); + $10 = HEAP32[$9>>2]|0; + $11 = (__gcry_mpi_cmp_ui($10,0)|0); + $12 = ($11|0)!=(0); + if ($12) { + $21 = $2; + $22 = (_ec_get_a_is_pminus3($21)|0); + $23 = ($22|0)!=(0); + $24 = $2; + $25 = ((($24)) + 48|0); + $26 = ((($25)) + 16|0); + if ($23) { + $27 = HEAP32[$26>>2]|0; + $28 = $1; + $29 = ((($28)) + 8|0); + $30 = HEAP32[$29>>2]|0; + $31 = $2; + _ec_pow2($27,$30,$31); + $32 = $2; + $33 = ((($32)) + 48|0); + $34 = ((($33)) + 16|0); + $35 = ((($34)) + 12|0); + $36 = HEAP32[$35>>2]|0; + $37 = $1; + $38 = HEAP32[$37>>2]|0; + $39 = $2; + $40 = ((($39)) + 48|0); + $41 = ((($40)) + 16|0); + $42 = HEAP32[$41>>2]|0; + $43 = $2; + _ec_subm($36,$38,$42,$43); + $44 = $2; + $45 = ((($44)) + 48|0); + $46 = ((($45)) + 16|0); + $47 = ((($46)) + 12|0); + $48 = HEAP32[$47>>2]|0; + $49 = $2; + $50 = ((($49)) + 48|0); + $51 = ((($50)) + 16|0); + $52 = ((($51)) + 12|0); + $53 = HEAP32[$52>>2]|0; + $54 = (__gcry_mpi_const(3)|0); + $55 = $2; + _ec_mulm($48,$53,$54,$55); + $56 = $2; + $57 = ((($56)) + 48|0); + $58 = ((($57)) + 16|0); + $59 = ((($58)) + 4|0); + $60 = HEAP32[$59>>2]|0; + $61 = $1; + $62 = HEAP32[$61>>2]|0; + $63 = $2; + $64 = ((($63)) + 48|0); + $65 = ((($64)) + 16|0); + $66 = HEAP32[$65>>2]|0; + $67 = $2; + _ec_addm($60,$62,$66,$67); + $68 = $2; + $69 = ((($68)) + 48|0); + $70 = ((($69)) + 16|0); + $71 = ((($70)) + 12|0); + $72 = HEAP32[$71>>2]|0; + $73 = $2; + $74 = ((($73)) + 48|0); + $75 = ((($74)) + 16|0); + $76 = ((($75)) + 12|0); + $77 = HEAP32[$76>>2]|0; + $78 = $2; + $79 = ((($78)) + 48|0); + $80 = ((($79)) + 16|0); + $81 = ((($80)) + 4|0); + $82 = HEAP32[$81>>2]|0; + $83 = $2; + _ec_mulm($72,$77,$82,$83); + } else { + $84 = ((($26)) + 12|0); + $85 = HEAP32[$84>>2]|0; + $86 = $1; + $87 = HEAP32[$86>>2]|0; + $88 = $2; + _ec_pow2($85,$87,$88); + $89 = $2; + $90 = ((($89)) + 48|0); + $91 = ((($90)) + 16|0); + $92 = ((($91)) + 12|0); + $93 = HEAP32[$92>>2]|0; + $94 = $2; + $95 = ((($94)) + 48|0); + $96 = ((($95)) + 16|0); + $97 = ((($96)) + 12|0); + $98 = HEAP32[$97>>2]|0; + $99 = (__gcry_mpi_const(3)|0); + $100 = $2; + _ec_mulm($93,$98,$99,$100); + $101 = $2; + $102 = ((($101)) + 48|0); + $103 = ((($102)) + 16|0); + $104 = HEAP32[$103>>2]|0; + $105 = $1; + $106 = ((($105)) + 8|0); + $107 = HEAP32[$106>>2]|0; + $108 = (__gcry_mpi_const(4)|0); + $109 = $2; + _ec_powm($104,$107,$108,$109); + $110 = $2; + $111 = ((($110)) + 48|0); + $112 = ((($111)) + 16|0); + $113 = HEAP32[$112>>2]|0; + $114 = $2; + $115 = ((($114)) + 48|0); + $116 = ((($115)) + 16|0); + $117 = HEAP32[$116>>2]|0; + $118 = $2; + $119 = ((($118)) + 20|0); + $120 = HEAP32[$119>>2]|0; + $121 = $2; + _ec_mulm($113,$117,$120,$121); + $122 = $2; + $123 = ((($122)) + 48|0); + $124 = ((($123)) + 16|0); + $125 = ((($124)) + 12|0); + $126 = HEAP32[$125>>2]|0; + $127 = $2; + $128 = ((($127)) + 48|0); + $129 = ((($128)) + 16|0); + $130 = ((($129)) + 12|0); + $131 = HEAP32[$130>>2]|0; + $132 = $2; + $133 = ((($132)) + 48|0); + $134 = ((($133)) + 16|0); + $135 = HEAP32[$134>>2]|0; + $136 = $2; + _ec_addm($126,$131,$135,$136); + } + $137 = $0; + $138 = ((($137)) + 8|0); + $139 = HEAP32[$138>>2]|0; + $140 = $1; + $141 = ((($140)) + 4|0); + $142 = HEAP32[$141>>2]|0; + $143 = $1; + $144 = ((($143)) + 8|0); + $145 = HEAP32[$144>>2]|0; + $146 = $2; + _ec_mulm($139,$142,$145,$146); + $147 = $0; + $148 = ((($147)) + 8|0); + $149 = HEAP32[$148>>2]|0; + $150 = $0; + $151 = ((($150)) + 8|0); + $152 = HEAP32[$151>>2]|0; + $153 = $2; + _ec_mul2($149,$152,$153); + $154 = $2; + $155 = ((($154)) + 48|0); + $156 = ((($155)) + 16|0); + $157 = ((($156)) + 4|0); + $158 = HEAP32[$157>>2]|0; + $159 = $1; + $160 = ((($159)) + 4|0); + $161 = HEAP32[$160>>2]|0; + $162 = $2; + _ec_pow2($158,$161,$162); + $163 = $2; + $164 = ((($163)) + 48|0); + $165 = ((($164)) + 16|0); + $166 = ((($165)) + 16|0); + $167 = HEAP32[$166>>2]|0; + $168 = $2; + $169 = ((($168)) + 48|0); + $170 = ((($169)) + 16|0); + $171 = ((($170)) + 4|0); + $172 = HEAP32[$171>>2]|0; + $173 = $1; + $174 = HEAP32[$173>>2]|0; + $175 = $2; + _ec_mulm($167,$172,$174,$175); + $176 = $2; + $177 = ((($176)) + 48|0); + $178 = ((($177)) + 16|0); + $179 = ((($178)) + 16|0); + $180 = HEAP32[$179>>2]|0; + $181 = $2; + $182 = ((($181)) + 48|0); + $183 = ((($182)) + 16|0); + $184 = ((($183)) + 16|0); + $185 = HEAP32[$184>>2]|0; + $186 = (__gcry_mpi_const(4)|0); + $187 = $2; + _ec_mulm($180,$185,$186,$187); + $188 = $0; + $189 = HEAP32[$188>>2]|0; + $190 = $2; + $191 = ((($190)) + 48|0); + $192 = ((($191)) + 16|0); + $193 = ((($192)) + 12|0); + $194 = HEAP32[$193>>2]|0; + $195 = $2; + _ec_pow2($189,$194,$195); + $196 = $2; + $197 = ((($196)) + 48|0); + $198 = ((($197)) + 16|0); + $199 = HEAP32[$198>>2]|0; + $200 = $2; + $201 = ((($200)) + 48|0); + $202 = ((($201)) + 16|0); + $203 = ((($202)) + 16|0); + $204 = HEAP32[$203>>2]|0; + $205 = $2; + _ec_mul2($199,$204,$205); + $206 = $0; + $207 = HEAP32[$206>>2]|0; + $208 = $0; + $209 = HEAP32[$208>>2]|0; + $210 = $2; + $211 = ((($210)) + 48|0); + $212 = ((($211)) + 16|0); + $213 = HEAP32[$212>>2]|0; + $214 = $2; + _ec_subm($207,$209,$213,$214); + $215 = $2; + $216 = ((($215)) + 48|0); + $217 = ((($216)) + 16|0); + $218 = ((($217)) + 4|0); + $219 = HEAP32[$218>>2]|0; + $220 = $2; + $221 = ((($220)) + 48|0); + $222 = ((($221)) + 16|0); + $223 = ((($222)) + 4|0); + $224 = HEAP32[$223>>2]|0; + $225 = $2; + _ec_pow2($219,$224,$225); + $226 = $2; + $227 = ((($226)) + 48|0); + $228 = ((($227)) + 16|0); + $229 = ((($228)) + 20|0); + $230 = HEAP32[$229>>2]|0; + $231 = $2; + $232 = ((($231)) + 48|0); + $233 = ((($232)) + 16|0); + $234 = ((($233)) + 4|0); + $235 = HEAP32[$234>>2]|0; + $236 = (__gcry_mpi_const(5)|0); + $237 = $2; + _ec_mulm($230,$235,$236,$237); + $238 = $0; + $239 = ((($238)) + 4|0); + $240 = HEAP32[$239>>2]|0; + $241 = $2; + $242 = ((($241)) + 48|0); + $243 = ((($242)) + 16|0); + $244 = ((($243)) + 16|0); + $245 = HEAP32[$244>>2]|0; + $246 = $0; + $247 = HEAP32[$246>>2]|0; + $248 = $2; + _ec_subm($240,$245,$247,$248); + $249 = $0; + $250 = ((($249)) + 4|0); + $251 = HEAP32[$250>>2]|0; + $252 = $0; + $253 = ((($252)) + 4|0); + $254 = HEAP32[$253>>2]|0; + $255 = $2; + $256 = ((($255)) + 48|0); + $257 = ((($256)) + 16|0); + $258 = ((($257)) + 12|0); + $259 = HEAP32[$258>>2]|0; + $260 = $2; + _ec_mulm($251,$254,$259,$260); + $261 = $0; + $262 = ((($261)) + 4|0); + $263 = HEAP32[$262>>2]|0; + $264 = $0; + $265 = ((($264)) + 4|0); + $266 = HEAP32[$265>>2]|0; + $267 = $2; + $268 = ((($267)) + 48|0); + $269 = ((($268)) + 16|0); + $270 = ((($269)) + 20|0); + $271 = HEAP32[$270>>2]|0; + $272 = $2; + _ec_subm($263,$266,$271,$272); + STACKTOP = sp;return; + } + } + $13 = $0; + $14 = HEAP32[$13>>2]|0; + (__gcry_mpi_set_ui($14,1)|0); + $15 = $0; + $16 = ((($15)) + 4|0); + $17 = HEAP32[$16>>2]|0; + (__gcry_mpi_set_ui($17,1)|0); + $18 = $0; + $19 = ((($18)) + 8|0); + $20 = HEAP32[$19>>2]|0; + (__gcry_mpi_set_ui($20,0)|0); + STACKTOP = sp;return; +} +function _ec_get_a_is_pminus3($ec) { + $ec = $ec|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $tmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ec; + $1 = $0; + $2 = ((($1)) + 48|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3 & 1; + $5 = $4&255; + $6 = ($5|0)!=(0); + if ($6) { + $32 = $0; + $33 = ((($32)) + 48|0); + $34 = ((($33)) + 4|0); + $35 = HEAP32[$34>>2]|0; + STACKTOP = sp;return ($35|0); + } + $7 = $0; + $8 = ((($7)) + 48|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9 & -2; + $11 = $10 | 1; + HEAP8[$8>>0] = $11; + $12 = $0; + $13 = ((($12)) + 16|0); + $14 = HEAP32[$13>>2]|0; + $15 = (__gcry_mpi_alloc_like($14)|0); + $tmp = $15; + $16 = $tmp; + $17 = $0; + $18 = ((($17)) + 16|0); + $19 = HEAP32[$18>>2]|0; + __gcry_mpi_sub_ui($16,$19,3); + $20 = $0; + $21 = ((($20)) + 20|0); + $22 = HEAP32[$21>>2]|0; + $23 = $tmp; + $24 = (__gcry_mpi_cmp($22,$23)|0); + $25 = ($24|0)!=(0); + $26 = $25 ^ 1; + $27 = $26&1; + $28 = $0; + $29 = ((($28)) + 48|0); + $30 = ((($29)) + 4|0); + HEAP32[$30>>2] = $27; + $31 = $tmp; + __gcry_mpi_free($31); + $32 = $0; + $33 = ((($32)) + 48|0); + $34 = ((($33)) + 4|0); + $35 = HEAP32[$34>>2]|0; + STACKTOP = sp;return ($35|0); +} +function _ec_pow2($w,$b,$ctx) { + $w = $w|0; + $b = $b|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $b; + $2 = $ctx; + $3 = $0; + $4 = $1; + $5 = $1; + $6 = $2; + _ec_mulm($3,$4,$5,$6); + STACKTOP = sp;return; +} +function _ec_subm($w,$u,$v,$ec) { + $w = $w|0; + $u = $u|0; + $v = $v|0; + $ec = $ec|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $u; + $2 = $v; + $3 = $ec; + $4 = $0; + $5 = $1; + $6 = $2; + __gcry_mpi_sub($4,$5,$6); + STACKTOP = sp;return; +} +function _ec_addm($w,$u,$v,$ctx) { + $w = $w|0; + $u = $u|0; + $v = $v|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $u; + $2 = $v; + $3 = $ctx; + $4 = $0; + $5 = $1; + $6 = $2; + __gcry_mpi_add($4,$5,$6); + $7 = $0; + $8 = $3; + _ec_mod($7,$8); + STACKTOP = sp;return; +} +function _ec_powm($w,$b,$e,$ctx) { + $w = $w|0; + $b = $b|0; + $e = $e|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $b; + $2 = $e; + $3 = $ctx; + $4 = $0; + $5 = $1; + $6 = $2; + $7 = $3; + $8 = ((($7)) + 16|0); + $9 = HEAP32[$8>>2]|0; + __gcry_mpi_powm($4,$5,$6,$9); + STACKTOP = sp;return; +} +function _ec_mul2($w,$u,$ctx) { + $w = $w|0; + $u = $u|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $u; + $2 = $ctx; + $3 = $0; + $4 = $1; + __gcry_mpi_lshift($3,$4,1); + $5 = $0; + $6 = $2; + _ec_mod($5,$6); + STACKTOP = sp;return; +} +function _dup_point_montgomery($result,$point,$ctx) { + $result = $result|0; + $point = $point|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $2 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $result; + $1 = $point; + $2 = $ctx; + HEAP32[$vararg_buffer>>2] = 45782; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 45730; + __gcry_log_fatal(45756,$vararg_buffer); + // unreachable; +} +function _dup_point_edwards($result,$point,$ctx) { + $result = $result|0; + $point = $point|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $result; + $1 = $point; + $2 = $ctx; + $3 = $2; + $4 = ((($3)) + 48|0); + $5 = ((($4)) + 16|0); + $6 = HEAP32[$5>>2]|0; + $7 = $1; + $8 = HEAP32[$7>>2]|0; + $9 = $1; + $10 = ((($9)) + 4|0); + $11 = HEAP32[$10>>2]|0; + $12 = $2; + _ec_addm($6,$8,$11,$12); + $13 = $2; + $14 = ((($13)) + 48|0); + $15 = ((($14)) + 16|0); + $16 = HEAP32[$15>>2]|0; + $17 = $2; + $18 = ((($17)) + 48|0); + $19 = ((($18)) + 16|0); + $20 = HEAP32[$19>>2]|0; + $21 = $2; + _ec_pow2($16,$20,$21); + $22 = $2; + $23 = ((($22)) + 48|0); + $24 = ((($23)) + 16|0); + $25 = ((($24)) + 4|0); + $26 = HEAP32[$25>>2]|0; + $27 = $1; + $28 = HEAP32[$27>>2]|0; + $29 = $2; + _ec_pow2($26,$28,$29); + $30 = $2; + $31 = ((($30)) + 48|0); + $32 = ((($31)) + 16|0); + $33 = ((($32)) + 8|0); + $34 = HEAP32[$33>>2]|0; + $35 = $1; + $36 = ((($35)) + 4|0); + $37 = HEAP32[$36>>2]|0; + $38 = $2; + _ec_pow2($34,$37,$38); + $39 = $2; + $40 = ((($39)) + 4|0); + $41 = HEAP32[$40>>2]|0; + $42 = ($41|0)==(1); + $43 = $2; + $44 = ((($43)) + 48|0); + $45 = ((($44)) + 16|0); + $46 = ((($45)) + 12|0); + $47 = HEAP32[$46>>2]|0; + $48 = $2; + if ($42) { + $49 = ((($48)) + 48|0); + $50 = ((($49)) + 16|0); + $51 = ((($50)) + 4|0); + $52 = HEAP32[$51>>2]|0; + (__gcry_mpi_set($47,$52)|0); + $53 = $2; + $54 = ((($53)) + 48|0); + $55 = ((($54)) + 16|0); + $56 = ((($55)) + 12|0); + $57 = HEAP32[$56>>2]|0; + $58 = $2; + $59 = ((($58)) + 48|0); + $60 = ((($59)) + 16|0); + $61 = ((($60)) + 12|0); + $62 = HEAP32[$61>>2]|0; + __gcry_mpi_neg($57,$62); + } else { + $63 = ((($48)) + 20|0); + $64 = HEAP32[$63>>2]|0; + $65 = $2; + $66 = ((($65)) + 48|0); + $67 = ((($66)) + 16|0); + $68 = ((($67)) + 4|0); + $69 = HEAP32[$68>>2]|0; + $70 = $2; + _ec_mulm($47,$64,$69,$70); + } + $71 = $2; + $72 = ((($71)) + 48|0); + $73 = ((($72)) + 16|0); + $74 = ((($73)) + 16|0); + $75 = HEAP32[$74>>2]|0; + $76 = $2; + $77 = ((($76)) + 48|0); + $78 = ((($77)) + 16|0); + $79 = ((($78)) + 12|0); + $80 = HEAP32[$79>>2]|0; + $81 = $2; + $82 = ((($81)) + 48|0); + $83 = ((($82)) + 16|0); + $84 = ((($83)) + 8|0); + $85 = HEAP32[$84>>2]|0; + $86 = $2; + _ec_addm($75,$80,$85,$86); + $87 = $2; + $88 = ((($87)) + 48|0); + $89 = ((($88)) + 16|0); + $90 = ((($89)) + 20|0); + $91 = HEAP32[$90>>2]|0; + $92 = $1; + $93 = ((($92)) + 8|0); + $94 = HEAP32[$93>>2]|0; + $95 = $2; + _ec_pow2($91,$94,$95); + $96 = $2; + $97 = ((($96)) + 48|0); + $98 = ((($97)) + 16|0); + $99 = ((($98)) + 24|0); + $100 = HEAP32[$99>>2]|0; + $101 = $2; + $102 = ((($101)) + 48|0); + $103 = ((($102)) + 16|0); + $104 = ((($103)) + 20|0); + $105 = HEAP32[$104>>2]|0; + $106 = $2; + _ec_mul2($100,$105,$106); + $107 = $2; + $108 = ((($107)) + 48|0); + $109 = ((($108)) + 16|0); + $110 = ((($109)) + 24|0); + $111 = HEAP32[$110>>2]|0; + $112 = $2; + $113 = ((($112)) + 48|0); + $114 = ((($113)) + 16|0); + $115 = ((($114)) + 16|0); + $116 = HEAP32[$115>>2]|0; + $117 = $2; + $118 = ((($117)) + 48|0); + $119 = ((($118)) + 16|0); + $120 = ((($119)) + 24|0); + $121 = HEAP32[$120>>2]|0; + $122 = $2; + _ec_subm($111,$116,$121,$122); + $123 = $0; + $124 = HEAP32[$123>>2]|0; + $125 = $2; + $126 = ((($125)) + 48|0); + $127 = ((($126)) + 16|0); + $128 = HEAP32[$127>>2]|0; + $129 = $2; + $130 = ((($129)) + 48|0); + $131 = ((($130)) + 16|0); + $132 = ((($131)) + 4|0); + $133 = HEAP32[$132>>2]|0; + $134 = $2; + _ec_subm($124,$128,$133,$134); + $135 = $0; + $136 = HEAP32[$135>>2]|0; + $137 = $0; + $138 = HEAP32[$137>>2]|0; + $139 = $2; + $140 = ((($139)) + 48|0); + $141 = ((($140)) + 16|0); + $142 = ((($141)) + 8|0); + $143 = HEAP32[$142>>2]|0; + $144 = $2; + _ec_subm($136,$138,$143,$144); + $145 = $0; + $146 = HEAP32[$145>>2]|0; + $147 = $0; + $148 = HEAP32[$147>>2]|0; + $149 = $2; + $150 = ((($149)) + 48|0); + $151 = ((($150)) + 16|0); + $152 = ((($151)) + 24|0); + $153 = HEAP32[$152>>2]|0; + $154 = $2; + _ec_mulm($146,$148,$153,$154); + $155 = $0; + $156 = ((($155)) + 4|0); + $157 = HEAP32[$156>>2]|0; + $158 = $2; + $159 = ((($158)) + 48|0); + $160 = ((($159)) + 16|0); + $161 = ((($160)) + 12|0); + $162 = HEAP32[$161>>2]|0; + $163 = $2; + $164 = ((($163)) + 48|0); + $165 = ((($164)) + 16|0); + $166 = ((($165)) + 8|0); + $167 = HEAP32[$166>>2]|0; + $168 = $2; + _ec_subm($157,$162,$167,$168); + $169 = $0; + $170 = ((($169)) + 4|0); + $171 = HEAP32[$170>>2]|0; + $172 = $0; + $173 = ((($172)) + 4|0); + $174 = HEAP32[$173>>2]|0; + $175 = $2; + $176 = ((($175)) + 48|0); + $177 = ((($176)) + 16|0); + $178 = ((($177)) + 16|0); + $179 = HEAP32[$178>>2]|0; + $180 = $2; + _ec_mulm($171,$174,$179,$180); + $181 = $0; + $182 = ((($181)) + 8|0); + $183 = HEAP32[$182>>2]|0; + $184 = $2; + $185 = ((($184)) + 48|0); + $186 = ((($185)) + 16|0); + $187 = ((($186)) + 16|0); + $188 = HEAP32[$187>>2]|0; + $189 = $2; + $190 = ((($189)) + 48|0); + $191 = ((($190)) + 16|0); + $192 = ((($191)) + 24|0); + $193 = HEAP32[$192>>2]|0; + $194 = $2; + _ec_mulm($183,$188,$193,$194); + STACKTOP = sp;return; +} +function __gcry_mpi_ec_add_points($result,$p1,$p2,$ctx) { + $result = $result|0; + $p1 = $p1|0; + $p2 = $p2|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $result; + $1 = $p1; + $2 = $p2; + $3 = $ctx; + $4 = $3; + $5 = HEAP32[$4>>2]|0; + switch ($5|0) { + case 0: { + $6 = $0; + $7 = $1; + $8 = $2; + $9 = $3; + _add_points_weierstrass($6,$7,$8,$9); + STACKTOP = sp;return; + break; + } + case 1: { + $10 = $0; + $11 = $1; + $12 = $2; + $13 = $3; + _add_points_montgomery($10,$11,$12,$13); + STACKTOP = sp;return; + break; + } + case 2: { + $14 = $0; + $15 = $1; + $16 = $2; + $17 = $3; + _add_points_edwards($14,$15,$16,$17); + STACKTOP = sp;return; + break; + } + default: { + STACKTOP = sp;return; + } + } +} +function _add_points_weierstrass($result,$p1,$p2,$ctx) { + $result = $result|0; + $p1 = $p1|0; + $p2 = $p2|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $z1_is_one = 0, $z2_is_one = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $result; + $1 = $p1; + $2 = $p2; + $3 = $ctx; + $4 = $1; + $5 = HEAP32[$4>>2]|0; + $6 = $2; + $7 = HEAP32[$6>>2]|0; + $8 = (__gcry_mpi_cmp($5,$7)|0); + $9 = ($8|0)!=(0); + if (!($9)) { + $10 = $1; + $11 = ((($10)) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = $2; + $14 = ((($13)) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = (__gcry_mpi_cmp($12,$15)|0); + $17 = ($16|0)!=(0); + if (!($17)) { + $18 = $1; + $19 = ((($18)) + 8|0); + $20 = HEAP32[$19>>2]|0; + $21 = $2; + $22 = ((($21)) + 8|0); + $23 = HEAP32[$22>>2]|0; + $24 = (__gcry_mpi_cmp($20,$23)|0); + $25 = ($24|0)!=(0); + if (!($25)) { + $26 = $0; + $27 = $1; + $28 = $3; + __gcry_mpi_ec_dup_point($26,$27,$28); + STACKTOP = sp;return; + } + } + } + $29 = $1; + $30 = ((($29)) + 8|0); + $31 = HEAP32[$30>>2]|0; + $32 = (__gcry_mpi_cmp_ui($31,0)|0); + $33 = ($32|0)!=(0); + if (!($33)) { + $34 = $0; + $35 = HEAP32[$34>>2]|0; + $36 = $2; + $37 = HEAP32[$36>>2]|0; + (__gcry_mpi_set($35,$37)|0); + $38 = $0; + $39 = ((($38)) + 4|0); + $40 = HEAP32[$39>>2]|0; + $41 = $2; + $42 = ((($41)) + 4|0); + $43 = HEAP32[$42>>2]|0; + (__gcry_mpi_set($40,$43)|0); + $44 = $0; + $45 = ((($44)) + 8|0); + $46 = HEAP32[$45>>2]|0; + $47 = $2; + $48 = ((($47)) + 8|0); + $49 = HEAP32[$48>>2]|0; + (__gcry_mpi_set($46,$49)|0); + STACKTOP = sp;return; + } + $50 = $2; + $51 = ((($50)) + 8|0); + $52 = HEAP32[$51>>2]|0; + $53 = (__gcry_mpi_cmp_ui($52,0)|0); + $54 = ($53|0)!=(0); + if (!($54)) { + $55 = $0; + $56 = HEAP32[$55>>2]|0; + $57 = $1; + $58 = HEAP32[$57>>2]|0; + (__gcry_mpi_set($56,$58)|0); + $59 = $0; + $60 = ((($59)) + 4|0); + $61 = HEAP32[$60>>2]|0; + $62 = $1; + $63 = ((($62)) + 4|0); + $64 = HEAP32[$63>>2]|0; + (__gcry_mpi_set($61,$64)|0); + $65 = $0; + $66 = ((($65)) + 8|0); + $67 = HEAP32[$66>>2]|0; + $68 = $1; + $69 = ((($68)) + 8|0); + $70 = HEAP32[$69>>2]|0; + (__gcry_mpi_set($67,$70)|0); + STACKTOP = sp;return; + } + $71 = $1; + $72 = ((($71)) + 8|0); + $73 = HEAP32[$72>>2]|0; + $74 = (__gcry_mpi_cmp_ui($73,1)|0); + $75 = ($74|0)!=(0); + $76 = $75 ^ 1; + $77 = $76&1; + $z1_is_one = $77; + $78 = $2; + $79 = ((($78)) + 8|0); + $80 = HEAP32[$79>>2]|0; + $81 = (__gcry_mpi_cmp_ui($80,1)|0); + $82 = ($81|0)!=(0); + $83 = $82 ^ 1; + $84 = $83&1; + $z2_is_one = $84; + $85 = $z2_is_one; + $86 = ($85|0)!=(0); + $87 = $3; + $88 = ((($87)) + 48|0); + $89 = ((($88)) + 16|0); + $90 = HEAP32[$89>>2]|0; + if ($86) { + $91 = $1; + $92 = HEAP32[$91>>2]|0; + (__gcry_mpi_set($90,$92)|0); + } else { + $93 = $2; + $94 = ((($93)) + 8|0); + $95 = HEAP32[$94>>2]|0; + $96 = $3; + _ec_pow2($90,$95,$96); + $97 = $3; + $98 = ((($97)) + 48|0); + $99 = ((($98)) + 16|0); + $100 = HEAP32[$99>>2]|0; + $101 = $3; + $102 = ((($101)) + 48|0); + $103 = ((($102)) + 16|0); + $104 = HEAP32[$103>>2]|0; + $105 = $1; + $106 = HEAP32[$105>>2]|0; + $107 = $3; + _ec_mulm($100,$104,$106,$107); + } + $108 = $z1_is_one; + $109 = ($108|0)!=(0); + $110 = $3; + $111 = ((($110)) + 48|0); + $112 = ((($111)) + 16|0); + $113 = ((($112)) + 4|0); + $114 = HEAP32[$113>>2]|0; + if ($109) { + $115 = $2; + $116 = HEAP32[$115>>2]|0; + (__gcry_mpi_set($114,$116)|0); + } else { + $117 = $1; + $118 = ((($117)) + 8|0); + $119 = HEAP32[$118>>2]|0; + $120 = $3; + _ec_pow2($114,$119,$120); + $121 = $3; + $122 = ((($121)) + 48|0); + $123 = ((($122)) + 16|0); + $124 = ((($123)) + 4|0); + $125 = HEAP32[$124>>2]|0; + $126 = $3; + $127 = ((($126)) + 48|0); + $128 = ((($127)) + 16|0); + $129 = ((($128)) + 4|0); + $130 = HEAP32[$129>>2]|0; + $131 = $2; + $132 = HEAP32[$131>>2]|0; + $133 = $3; + _ec_mulm($125,$130,$132,$133); + } + $134 = $3; + $135 = ((($134)) + 48|0); + $136 = ((($135)) + 16|0); + $137 = ((($136)) + 8|0); + $138 = HEAP32[$137>>2]|0; + $139 = $3; + $140 = ((($139)) + 48|0); + $141 = ((($140)) + 16|0); + $142 = HEAP32[$141>>2]|0; + $143 = $3; + $144 = ((($143)) + 48|0); + $145 = ((($144)) + 16|0); + $146 = ((($145)) + 4|0); + $147 = HEAP32[$146>>2]|0; + $148 = $3; + _ec_subm($138,$142,$147,$148); + $149 = $3; + $150 = ((($149)) + 48|0); + $151 = ((($150)) + 16|0); + $152 = ((($151)) + 12|0); + $153 = HEAP32[$152>>2]|0; + $154 = $2; + $155 = ((($154)) + 8|0); + $156 = HEAP32[$155>>2]|0; + $157 = (__gcry_mpi_const(3)|0); + $158 = $3; + _ec_powm($153,$156,$157,$158); + $159 = $3; + $160 = ((($159)) + 48|0); + $161 = ((($160)) + 16|0); + $162 = ((($161)) + 12|0); + $163 = HEAP32[$162>>2]|0; + $164 = $3; + $165 = ((($164)) + 48|0); + $166 = ((($165)) + 16|0); + $167 = ((($166)) + 12|0); + $168 = HEAP32[$167>>2]|0; + $169 = $1; + $170 = ((($169)) + 4|0); + $171 = HEAP32[$170>>2]|0; + $172 = $3; + _ec_mulm($163,$168,$171,$172); + $173 = $3; + $174 = ((($173)) + 48|0); + $175 = ((($174)) + 16|0); + $176 = ((($175)) + 16|0); + $177 = HEAP32[$176>>2]|0; + $178 = $1; + $179 = ((($178)) + 8|0); + $180 = HEAP32[$179>>2]|0; + $181 = (__gcry_mpi_const(3)|0); + $182 = $3; + _ec_powm($177,$180,$181,$182); + $183 = $3; + $184 = ((($183)) + 48|0); + $185 = ((($184)) + 16|0); + $186 = ((($185)) + 16|0); + $187 = HEAP32[$186>>2]|0; + $188 = $3; + $189 = ((($188)) + 48|0); + $190 = ((($189)) + 16|0); + $191 = ((($190)) + 16|0); + $192 = HEAP32[$191>>2]|0; + $193 = $2; + $194 = ((($193)) + 4|0); + $195 = HEAP32[$194>>2]|0; + $196 = $3; + _ec_mulm($187,$192,$195,$196); + $197 = $3; + $198 = ((($197)) + 48|0); + $199 = ((($198)) + 16|0); + $200 = ((($199)) + 20|0); + $201 = HEAP32[$200>>2]|0; + $202 = $3; + $203 = ((($202)) + 48|0); + $204 = ((($203)) + 16|0); + $205 = ((($204)) + 12|0); + $206 = HEAP32[$205>>2]|0; + $207 = $3; + $208 = ((($207)) + 48|0); + $209 = ((($208)) + 16|0); + $210 = ((($209)) + 16|0); + $211 = HEAP32[$210>>2]|0; + $212 = $3; + _ec_subm($201,$206,$211,$212); + $213 = $3; + $214 = ((($213)) + 48|0); + $215 = ((($214)) + 16|0); + $216 = ((($215)) + 8|0); + $217 = HEAP32[$216>>2]|0; + $218 = (__gcry_mpi_cmp_ui($217,0)|0); + $219 = ($218|0)!=(0); + $220 = $3; + $221 = ((($220)) + 48|0); + $222 = ((($221)) + 16|0); + if ($219) { + $237 = ((($222)) + 24|0); + $238 = HEAP32[$237>>2]|0; + $239 = $3; + $240 = ((($239)) + 48|0); + $241 = ((($240)) + 16|0); + $242 = HEAP32[$241>>2]|0; + $243 = $3; + $244 = ((($243)) + 48|0); + $245 = ((($244)) + 16|0); + $246 = ((($245)) + 4|0); + $247 = HEAP32[$246>>2]|0; + $248 = $3; + _ec_addm($238,$242,$247,$248); + $249 = $3; + $250 = ((($249)) + 48|0); + $251 = ((($250)) + 16|0); + $252 = ((($251)) + 28|0); + $253 = HEAP32[$252>>2]|0; + $254 = $3; + $255 = ((($254)) + 48|0); + $256 = ((($255)) + 16|0); + $257 = ((($256)) + 12|0); + $258 = HEAP32[$257>>2]|0; + $259 = $3; + $260 = ((($259)) + 48|0); + $261 = ((($260)) + 16|0); + $262 = ((($261)) + 16|0); + $263 = HEAP32[$262>>2]|0; + $264 = $3; + _ec_addm($253,$258,$263,$264); + $265 = $0; + $266 = ((($265)) + 8|0); + $267 = HEAP32[$266>>2]|0; + $268 = $1; + $269 = ((($268)) + 8|0); + $270 = HEAP32[$269>>2]|0; + $271 = $2; + $272 = ((($271)) + 8|0); + $273 = HEAP32[$272>>2]|0; + $274 = $3; + _ec_mulm($267,$270,$273,$274); + $275 = $0; + $276 = ((($275)) + 8|0); + $277 = HEAP32[$276>>2]|0; + $278 = $0; + $279 = ((($278)) + 8|0); + $280 = HEAP32[$279>>2]|0; + $281 = $3; + $282 = ((($281)) + 48|0); + $283 = ((($282)) + 16|0); + $284 = ((($283)) + 8|0); + $285 = HEAP32[$284>>2]|0; + $286 = $3; + _ec_mulm($277,$280,$285,$286); + $287 = $3; + $288 = ((($287)) + 48|0); + $289 = ((($288)) + 16|0); + $290 = ((($289)) + 36|0); + $291 = HEAP32[$290>>2]|0; + $292 = $3; + $293 = ((($292)) + 48|0); + $294 = ((($293)) + 16|0); + $295 = ((($294)) + 20|0); + $296 = HEAP32[$295>>2]|0; + $297 = $3; + _ec_pow2($291,$296,$297); + $298 = $3; + $299 = ((($298)) + 48|0); + $300 = ((($299)) + 16|0); + $301 = ((($300)) + 40|0); + $302 = HEAP32[$301>>2]|0; + $303 = $3; + $304 = ((($303)) + 48|0); + $305 = ((($304)) + 16|0); + $306 = ((($305)) + 8|0); + $307 = HEAP32[$306>>2]|0; + $308 = $3; + _ec_pow2($302,$307,$308); + $309 = $3; + $310 = ((($309)) + 48|0); + $311 = ((($310)) + 16|0); + $312 = ((($311)) + 40|0); + $313 = HEAP32[$312>>2]|0; + $314 = $3; + $315 = ((($314)) + 48|0); + $316 = ((($315)) + 16|0); + $317 = ((($316)) + 40|0); + $318 = HEAP32[$317>>2]|0; + $319 = $3; + $320 = ((($319)) + 48|0); + $321 = ((($320)) + 16|0); + $322 = ((($321)) + 24|0); + $323 = HEAP32[$322>>2]|0; + $324 = $3; + _ec_mulm($313,$318,$323,$324); + $325 = $0; + $326 = HEAP32[$325>>2]|0; + $327 = $3; + $328 = ((($327)) + 48|0); + $329 = ((($328)) + 16|0); + $330 = ((($329)) + 36|0); + $331 = HEAP32[$330>>2]|0; + $332 = $3; + $333 = ((($332)) + 48|0); + $334 = ((($333)) + 16|0); + $335 = ((($334)) + 40|0); + $336 = HEAP32[$335>>2]|0; + $337 = $3; + _ec_subm($326,$331,$336,$337); + $338 = $3; + $339 = ((($338)) + 48|0); + $340 = ((($339)) + 16|0); + $341 = ((($340)) + 36|0); + $342 = HEAP32[$341>>2]|0; + $343 = $0; + $344 = HEAP32[$343>>2]|0; + $345 = $3; + _ec_mul2($342,$344,$345); + $346 = $3; + $347 = ((($346)) + 48|0); + $348 = ((($347)) + 16|0); + $349 = ((($348)) + 32|0); + $350 = HEAP32[$349>>2]|0; + $351 = $3; + $352 = ((($351)) + 48|0); + $353 = ((($352)) + 16|0); + $354 = ((($353)) + 40|0); + $355 = HEAP32[$354>>2]|0; + $356 = $3; + $357 = ((($356)) + 48|0); + $358 = ((($357)) + 16|0); + $359 = ((($358)) + 36|0); + $360 = HEAP32[$359>>2]|0; + $361 = $3; + _ec_subm($350,$355,$360,$361); + $362 = $3; + $363 = ((($362)) + 48|0); + $364 = ((($363)) + 16|0); + $365 = ((($364)) + 32|0); + $366 = HEAP32[$365>>2]|0; + $367 = $3; + $368 = ((($367)) + 48|0); + $369 = ((($368)) + 16|0); + $370 = ((($369)) + 32|0); + $371 = HEAP32[$370>>2]|0; + $372 = $3; + $373 = ((($372)) + 48|0); + $374 = ((($373)) + 16|0); + $375 = ((($374)) + 20|0); + $376 = HEAP32[$375>>2]|0; + $377 = $3; + _ec_mulm($366,$371,$376,$377); + $378 = $3; + $379 = ((($378)) + 48|0); + $380 = ((($379)) + 16|0); + $381 = ((($380)) + 36|0); + $382 = HEAP32[$381>>2]|0; + $383 = $3; + $384 = ((($383)) + 48|0); + $385 = ((($384)) + 16|0); + $386 = ((($385)) + 8|0); + $387 = HEAP32[$386>>2]|0; + $388 = (__gcry_mpi_const(3)|0); + $389 = $3; + _ec_powm($382,$387,$388,$389); + $390 = $3; + $391 = ((($390)) + 48|0); + $392 = ((($391)) + 16|0); + $393 = ((($392)) + 36|0); + $394 = HEAP32[$393>>2]|0; + $395 = $3; + $396 = ((($395)) + 48|0); + $397 = ((($396)) + 16|0); + $398 = ((($397)) + 36|0); + $399 = HEAP32[$398>>2]|0; + $400 = $3; + $401 = ((($400)) + 48|0); + $402 = ((($401)) + 16|0); + $403 = ((($402)) + 28|0); + $404 = HEAP32[$403>>2]|0; + $405 = $3; + _ec_mulm($394,$399,$404,$405); + $406 = $0; + $407 = ((($406)) + 4|0); + $408 = HEAP32[$407>>2]|0; + $409 = $3; + $410 = ((($409)) + 48|0); + $411 = ((($410)) + 16|0); + $412 = ((($411)) + 32|0); + $413 = HEAP32[$412>>2]|0; + $414 = $3; + $415 = ((($414)) + 48|0); + $416 = ((($415)) + 16|0); + $417 = ((($416)) + 36|0); + $418 = HEAP32[$417>>2]|0; + $419 = $3; + _ec_subm($408,$413,$418,$419); + $420 = $0; + $421 = ((($420)) + 4|0); + $422 = HEAP32[$421>>2]|0; + $423 = $0; + $424 = ((($423)) + 4|0); + $425 = HEAP32[$424>>2]|0; + $426 = $3; + $427 = (_ec_get_two_inv_p($426)|0); + $428 = $3; + _ec_mulm($422,$425,$427,$428); + STACKTOP = sp;return; + } + $223 = ((($222)) + 20|0); + $224 = HEAP32[$223>>2]|0; + $225 = (__gcry_mpi_cmp_ui($224,0)|0); + $226 = ($225|0)!=(0); + $227 = $0; + if ($226) { + $230 = HEAP32[$227>>2]|0; + (__gcry_mpi_set_ui($230,1)|0); + $231 = $0; + $232 = ((($231)) + 4|0); + $233 = HEAP32[$232>>2]|0; + (__gcry_mpi_set_ui($233,1)|0); + $234 = $0; + $235 = ((($234)) + 8|0); + $236 = HEAP32[$235>>2]|0; + (__gcry_mpi_set_ui($236,0)|0); + STACKTOP = sp;return; + } else { + $228 = $1; + $229 = $3; + __gcry_mpi_ec_dup_point($227,$228,$229); + STACKTOP = sp;return; + } +} +function _ec_get_two_inv_p($ec) { + $ec = $ec|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ec; + $1 = $0; + $2 = ((($1)) + 48|0); + $3 = HEAP8[$2>>0]|0; + $4 = ($3&255) >>> 1; + $5 = $4 & 1; + $6 = $5&255; + $7 = ($6|0)!=(0); + if ($7) { + $28 = $0; + $29 = ((($28)) + 48|0); + $30 = ((($29)) + 8|0); + $31 = HEAP32[$30>>2]|0; + STACKTOP = sp;return ($31|0); + } + $8 = $0; + $9 = ((($8)) + 48|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10 & -3; + $12 = $11 | 2; + HEAP8[$9>>0] = $12; + $13 = $0; + $14 = ((($13)) + 48|0); + $15 = ((($14)) + 8|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)!=(0|0); + if (!($17)) { + $18 = (__gcry_mpi_alloc(0)|0); + $19 = $0; + $20 = ((($19)) + 48|0); + $21 = ((($20)) + 8|0); + HEAP32[$21>>2] = $18; + } + $22 = $0; + $23 = ((($22)) + 48|0); + $24 = ((($23)) + 8|0); + $25 = HEAP32[$24>>2]|0; + $26 = (__gcry_mpi_const(2)|0); + $27 = $0; + _ec_invm($25,$26,$27); + $28 = $0; + $29 = ((($28)) + 48|0); + $30 = ((($29)) + 8|0); + $31 = HEAP32[$30>>2]|0; + STACKTOP = sp;return ($31|0); +} +function _add_points_montgomery($result,$p1,$p2,$ctx) { + $result = $result|0; + $p1 = $p1|0; + $p2 = $p2|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $result; + $1 = $p1; + $2 = $p2; + $3 = $ctx; + HEAP32[$vararg_buffer>>2] = 45805; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 45730; + __gcry_log_fatal(45756,$vararg_buffer); + // unreachable; +} +function _add_points_edwards($result,$p1,$p2,$ctx) { + $result = $result|0; + $p1 = $p1|0; + $p2 = $p2|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; + var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; + var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; + var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; + var $96 = 0, $97 = 0, $98 = 0, $99 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $result; + $1 = $p1; + $2 = $p2; + $3 = $ctx; + $4 = $3; + $5 = ((($4)) + 48|0); + $6 = ((($5)) + 16|0); + $7 = HEAP32[$6>>2]|0; + $8 = $1; + $9 = ((($8)) + 8|0); + $10 = HEAP32[$9>>2]|0; + $11 = $2; + $12 = ((($11)) + 8|0); + $13 = HEAP32[$12>>2]|0; + $14 = $3; + _ec_mulm($7,$10,$13,$14); + $15 = $3; + $16 = ((($15)) + 48|0); + $17 = ((($16)) + 16|0); + $18 = ((($17)) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = $3; + $21 = ((($20)) + 48|0); + $22 = ((($21)) + 16|0); + $23 = HEAP32[$22>>2]|0; + $24 = $3; + _ec_pow2($19,$23,$24); + $25 = $3; + $26 = ((($25)) + 48|0); + $27 = ((($26)) + 16|0); + $28 = ((($27)) + 8|0); + $29 = HEAP32[$28>>2]|0; + $30 = $1; + $31 = HEAP32[$30>>2]|0; + $32 = $2; + $33 = HEAP32[$32>>2]|0; + $34 = $3; + _ec_mulm($29,$31,$33,$34); + $35 = $3; + $36 = ((($35)) + 48|0); + $37 = ((($36)) + 16|0); + $38 = ((($37)) + 12|0); + $39 = HEAP32[$38>>2]|0; + $40 = $1; + $41 = ((($40)) + 4|0); + $42 = HEAP32[$41>>2]|0; + $43 = $2; + $44 = ((($43)) + 4|0); + $45 = HEAP32[$44>>2]|0; + $46 = $3; + _ec_mulm($39,$42,$45,$46); + $47 = $3; + $48 = ((($47)) + 48|0); + $49 = ((($48)) + 16|0); + $50 = ((($49)) + 16|0); + $51 = HEAP32[$50>>2]|0; + $52 = $3; + $53 = ((($52)) + 24|0); + $54 = HEAP32[$53>>2]|0; + $55 = $3; + $56 = ((($55)) + 48|0); + $57 = ((($56)) + 16|0); + $58 = ((($57)) + 8|0); + $59 = HEAP32[$58>>2]|0; + $60 = $3; + _ec_mulm($51,$54,$59,$60); + $61 = $3; + $62 = ((($61)) + 48|0); + $63 = ((($62)) + 16|0); + $64 = ((($63)) + 16|0); + $65 = HEAP32[$64>>2]|0; + $66 = $3; + $67 = ((($66)) + 48|0); + $68 = ((($67)) + 16|0); + $69 = ((($68)) + 16|0); + $70 = HEAP32[$69>>2]|0; + $71 = $3; + $72 = ((($71)) + 48|0); + $73 = ((($72)) + 16|0); + $74 = ((($73)) + 12|0); + $75 = HEAP32[$74>>2]|0; + $76 = $3; + _ec_mulm($65,$70,$75,$76); + $77 = $3; + $78 = ((($77)) + 48|0); + $79 = ((($78)) + 16|0); + $80 = ((($79)) + 20|0); + $81 = HEAP32[$80>>2]|0; + $82 = $3; + $83 = ((($82)) + 48|0); + $84 = ((($83)) + 16|0); + $85 = ((($84)) + 4|0); + $86 = HEAP32[$85>>2]|0; + $87 = $3; + $88 = ((($87)) + 48|0); + $89 = ((($88)) + 16|0); + $90 = ((($89)) + 16|0); + $91 = HEAP32[$90>>2]|0; + $92 = $3; + _ec_subm($81,$86,$91,$92); + $93 = $3; + $94 = ((($93)) + 48|0); + $95 = ((($94)) + 16|0); + $96 = ((($95)) + 24|0); + $97 = HEAP32[$96>>2]|0; + $98 = $3; + $99 = ((($98)) + 48|0); + $100 = ((($99)) + 16|0); + $101 = ((($100)) + 4|0); + $102 = HEAP32[$101>>2]|0; + $103 = $3; + $104 = ((($103)) + 48|0); + $105 = ((($104)) + 16|0); + $106 = ((($105)) + 16|0); + $107 = HEAP32[$106>>2]|0; + $108 = $3; + _ec_addm($97,$102,$107,$108); + $109 = $3; + $110 = ((($109)) + 48|0); + $111 = ((($110)) + 16|0); + $112 = ((($111)) + 28|0); + $113 = HEAP32[$112>>2]|0; + $114 = $1; + $115 = HEAP32[$114>>2]|0; + $116 = $1; + $117 = ((($116)) + 4|0); + $118 = HEAP32[$117>>2]|0; + $119 = $3; + _ec_addm($113,$115,$118,$119); + $120 = $0; + $121 = HEAP32[$120>>2]|0; + $122 = $2; + $123 = HEAP32[$122>>2]|0; + $124 = $2; + $125 = ((($124)) + 4|0); + $126 = HEAP32[$125>>2]|0; + $127 = $3; + _ec_addm($121,$123,$126,$127); + $128 = $0; + $129 = HEAP32[$128>>2]|0; + $130 = $0; + $131 = HEAP32[$130>>2]|0; + $132 = $3; + $133 = ((($132)) + 48|0); + $134 = ((($133)) + 16|0); + $135 = ((($134)) + 28|0); + $136 = HEAP32[$135>>2]|0; + $137 = $3; + _ec_mulm($129,$131,$136,$137); + $138 = $0; + $139 = HEAP32[$138>>2]|0; + $140 = $0; + $141 = HEAP32[$140>>2]|0; + $142 = $3; + $143 = ((($142)) + 48|0); + $144 = ((($143)) + 16|0); + $145 = ((($144)) + 8|0); + $146 = HEAP32[$145>>2]|0; + $147 = $3; + _ec_subm($139,$141,$146,$147); + $148 = $0; + $149 = HEAP32[$148>>2]|0; + $150 = $0; + $151 = HEAP32[$150>>2]|0; + $152 = $3; + $153 = ((($152)) + 48|0); + $154 = ((($153)) + 16|0); + $155 = ((($154)) + 12|0); + $156 = HEAP32[$155>>2]|0; + $157 = $3; + _ec_subm($149,$151,$156,$157); + $158 = $0; + $159 = HEAP32[$158>>2]|0; + $160 = $0; + $161 = HEAP32[$160>>2]|0; + $162 = $3; + $163 = ((($162)) + 48|0); + $164 = ((($163)) + 16|0); + $165 = ((($164)) + 20|0); + $166 = HEAP32[$165>>2]|0; + $167 = $3; + _ec_mulm($159,$161,$166,$167); + $168 = $0; + $169 = HEAP32[$168>>2]|0; + $170 = $0; + $171 = HEAP32[$170>>2]|0; + $172 = $3; + $173 = ((($172)) + 48|0); + $174 = ((($173)) + 16|0); + $175 = HEAP32[$174>>2]|0; + $176 = $3; + _ec_mulm($169,$171,$175,$176); + $177 = $3; + $178 = ((($177)) + 4|0); + $179 = HEAP32[$178>>2]|0; + $180 = ($179|0)==(1); + $181 = $0; + $182 = ((($181)) + 4|0); + $183 = HEAP32[$182>>2]|0; + $184 = $3; + if ($180) { + $185 = ((($184)) + 48|0); + $186 = ((($185)) + 16|0); + $187 = ((($186)) + 8|0); + $188 = HEAP32[$187>>2]|0; + (__gcry_mpi_set($183,$188)|0); + $189 = $0; + $190 = ((($189)) + 4|0); + $191 = HEAP32[$190>>2]|0; + $192 = $0; + $193 = ((($192)) + 4|0); + $194 = HEAP32[$193>>2]|0; + __gcry_mpi_neg($191,$194); + $195 = $0; + $196 = ((($195)) + 4|0); + $197 = HEAP32[$196>>2]|0; + $198 = $3; + $199 = ((($198)) + 48|0); + $200 = ((($199)) + 16|0); + $201 = ((($200)) + 12|0); + $202 = HEAP32[$201>>2]|0; + $203 = $0; + $204 = ((($203)) + 4|0); + $205 = HEAP32[$204>>2]|0; + $206 = $3; + _ec_subm($197,$202,$205,$206); + $227 = $0; + $228 = ((($227)) + 4|0); + $229 = HEAP32[$228>>2]|0; + $230 = $0; + $231 = ((($230)) + 4|0); + $232 = HEAP32[$231>>2]|0; + $233 = $3; + $234 = ((($233)) + 48|0); + $235 = ((($234)) + 16|0); + $236 = ((($235)) + 24|0); + $237 = HEAP32[$236>>2]|0; + $238 = $3; + _ec_mulm($229,$232,$237,$238); + $239 = $0; + $240 = ((($239)) + 4|0); + $241 = HEAP32[$240>>2]|0; + $242 = $0; + $243 = ((($242)) + 4|0); + $244 = HEAP32[$243>>2]|0; + $245 = $3; + $246 = ((($245)) + 48|0); + $247 = ((($246)) + 16|0); + $248 = HEAP32[$247>>2]|0; + $249 = $3; + _ec_mulm($241,$244,$248,$249); + $250 = $0; + $251 = ((($250)) + 8|0); + $252 = HEAP32[$251>>2]|0; + $253 = $3; + $254 = ((($253)) + 48|0); + $255 = ((($254)) + 16|0); + $256 = ((($255)) + 20|0); + $257 = HEAP32[$256>>2]|0; + $258 = $3; + $259 = ((($258)) + 48|0); + $260 = ((($259)) + 16|0); + $261 = ((($260)) + 24|0); + $262 = HEAP32[$261>>2]|0; + $263 = $3; + _ec_mulm($252,$257,$262,$263); + STACKTOP = sp;return; + } else { + $207 = ((($184)) + 20|0); + $208 = HEAP32[$207>>2]|0; + $209 = $3; + $210 = ((($209)) + 48|0); + $211 = ((($210)) + 16|0); + $212 = ((($211)) + 8|0); + $213 = HEAP32[$212>>2]|0; + $214 = $3; + _ec_mulm($183,$208,$213,$214); + $215 = $0; + $216 = ((($215)) + 4|0); + $217 = HEAP32[$216>>2]|0; + $218 = $3; + $219 = ((($218)) + 48|0); + $220 = ((($219)) + 16|0); + $221 = ((($220)) + 12|0); + $222 = HEAP32[$221>>2]|0; + $223 = $0; + $224 = ((($223)) + 4|0); + $225 = HEAP32[$224>>2]|0; + $226 = $3; + _ec_subm($217,$222,$225,$226); + $227 = $0; + $228 = ((($227)) + 4|0); + $229 = HEAP32[$228>>2]|0; + $230 = $0; + $231 = ((($230)) + 4|0); + $232 = HEAP32[$231>>2]|0; + $233 = $3; + $234 = ((($233)) + 48|0); + $235 = ((($234)) + 16|0); + $236 = ((($235)) + 24|0); + $237 = HEAP32[$236>>2]|0; + $238 = $3; + _ec_mulm($229,$232,$237,$238); + $239 = $0; + $240 = ((($239)) + 4|0); + $241 = HEAP32[$240>>2]|0; + $242 = $0; + $243 = ((($242)) + 4|0); + $244 = HEAP32[$243>>2]|0; + $245 = $3; + $246 = ((($245)) + 48|0); + $247 = ((($246)) + 16|0); + $248 = HEAP32[$247>>2]|0; + $249 = $3; + _ec_mulm($241,$244,$248,$249); + $250 = $0; + $251 = ((($250)) + 8|0); + $252 = HEAP32[$251>>2]|0; + $253 = $3; + $254 = ((($253)) + 48|0); + $255 = ((($254)) + 16|0); + $256 = ((($255)) + 20|0); + $257 = HEAP32[$256>>2]|0; + $258 = $3; + $259 = ((($258)) + 48|0); + $260 = ((($259)) + 16|0); + $261 = ((($260)) + 24|0); + $262 = HEAP32[$261>>2]|0; + $263 = $3; + _ec_mulm($252,$257,$262,$263); + STACKTOP = sp;return; + } +} +function _point_set_1575($d,$s) { + $d = $d|0; + $s = $s|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $d; + $1 = $s; + $2 = $0; + $3 = HEAP32[$2>>2]|0; + $4 = $1; + $5 = HEAP32[$4>>2]|0; + (__gcry_mpi_set($3,$5)|0); + $6 = $0; + $7 = ((($6)) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = $1; + $10 = ((($9)) + 4|0); + $11 = HEAP32[$10>>2]|0; + (__gcry_mpi_set($8,$11)|0); + $12 = $0; + $13 = ((($12)) + 8|0); + $14 = HEAP32[$13>>2]|0; + $15 = $1; + $16 = ((($15)) + 8|0); + $17 = HEAP32[$16>>2]|0; + (__gcry_mpi_set($14,$17)|0); + STACKTOP = sp;return; +} +function __gcry_mpi_ec_mul_point($result,$scalar,$point,$ctx) { + $result = $result|0; + $scalar = $scalar|0; + $point = $point|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; + var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; + var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; + var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $h = 0, $i = 0, $j = 0, $j2 = 0, $k = 0, $loops = 0, $nbits = 0; + var $nbits1 = 0, $nlimbs = 0, $p1 = 0, $p1_ = 0, $p1inv = 0, $p2 = 0, $p2_ = 0, $prd = 0, $q1 = 0, $q2 = 0, $sum = 0, $sw = 0, $t = 0, $tmppnt = 0, $x1 = 0, $y1 = 0, $yy = 0, $z1 = 0, $z2 = 0, $z3 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 176|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $p1 = sp + 112|0; + $p2 = sp + 100|0; + $p1inv = sp + 88|0; + $tmppnt = sp + 68|0; + $p1_ = sp + 48|0; + $p2_ = sp + 36|0; + $0 = $result; + $1 = $scalar; + $2 = $point; + $3 = $ctx; + $4 = $3; + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)==(2); + if ($6) { + $7 = $1; + $8 = (__gcry_mpi_get_nbits($7)|0); + $nbits = $8; + $9 = $0; + $10 = HEAP32[$9>>2]|0; + (__gcry_mpi_set_ui($10,0)|0); + $11 = $0; + $12 = ((($11)) + 4|0); + $13 = HEAP32[$12>>2]|0; + (__gcry_mpi_set_ui($13,1)|0); + $14 = $0; + $15 = ((($14)) + 8|0); + $16 = HEAP32[$15>>2]|0; + (__gcry_mpi_set_ui($16,1)|0); + $17 = $1; + $18 = ($17|0)!=(0|0); + if ($18) { + $19 = $1; + $20 = ((($19)) + 12|0); + $21 = HEAP32[$20>>2]|0; + $22 = $21 & 1; + $23 = ($22|0)!=(0); + if ($23) { + __gcry_mpi_point_init($tmppnt); + $24 = $nbits; + $25 = (($24) - 1)|0; + $j = $25; + while(1) { + $26 = $j; + $27 = ($26|0)>=(0); + if (!($27)) { + break; + } + $28 = $0; + $29 = $0; + $30 = $3; + __gcry_mpi_ec_dup_point($28,$29,$30); + $31 = $0; + $32 = $2; + $33 = $3; + __gcry_mpi_ec_add_points($tmppnt,$31,$32,$33); + $34 = $1; + $35 = $j; + $36 = (__gcry_mpi_test_bit($34,$35)|0); + $37 = ($36|0)!=(0); + if ($37) { + $38 = $0; + _point_set_1575($38,$tmppnt); + } + $39 = $j; + $40 = (($39) + -1)|0; + $j = $40; + } + __gcry_mpi_point_free_parts($tmppnt); + STACKTOP = sp;return; + } + } + $41 = $nbits; + $42 = (($41) - 1)|0; + $j = $42; + while(1) { + $43 = $j; + $44 = ($43|0)>=(0); + if (!($44)) { + break; + } + $45 = $0; + $46 = $0; + $47 = $3; + __gcry_mpi_ec_dup_point($45,$46,$47); + $48 = $1; + $49 = $j; + $50 = (__gcry_mpi_test_bit($48,$49)|0); + $51 = ($50|0)!=(0); + if ($51) { + $52 = $0; + $53 = $0; + $54 = $2; + $55 = $3; + __gcry_mpi_ec_add_points($52,$53,$54,$55); + } + $56 = $j; + $57 = (($56) + -1)|0; + $j = $57; + } + STACKTOP = sp;return; + } + $58 = $3; + $59 = HEAP32[$58>>2]|0; + $60 = ($59|0)==(1); + if ($60) { + $61 = $1; + $62 = (__gcry_mpi_get_nbits($61)|0); + $nbits1 = $62; + __gcry_mpi_point_init($p1); + __gcry_mpi_point_init($p2); + __gcry_mpi_point_init($p1_); + __gcry_mpi_point_init($p2_); + $63 = HEAP32[$p1>>2]|0; + (__gcry_mpi_set_ui($63,1)|0); + $64 = HEAP32[$p2>>2]|0; + __gcry_mpi_free($64); + $65 = $2; + $66 = HEAP32[$65>>2]|0; + $67 = (__gcry_mpi_copy($66)|0); + HEAP32[$p2>>2] = $67; + $68 = ((($p2)) + 8|0); + $69 = HEAP32[$68>>2]|0; + (__gcry_mpi_set_ui($69,1)|0); + $70 = $nbits1; + $71 = (($70) + 32)|0; + $72 = (($71) - 1)|0; + $73 = $72<<1; + $74 = (($73>>>0) / 32)&-1; + $75 = (($74) + 1)|0; + $nlimbs = $75; + $76 = HEAP32[$p1>>2]|0; + $77 = $nlimbs; + __gcry_mpi_resize($76,$77); + $78 = ((($p1)) + 8|0); + $79 = HEAP32[$78>>2]|0; + $80 = $nlimbs; + __gcry_mpi_resize($79,$80); + $81 = HEAP32[$p2>>2]|0; + $82 = $nlimbs; + __gcry_mpi_resize($81,$82); + $83 = ((($p2)) + 8|0); + $84 = HEAP32[$83>>2]|0; + $85 = $nlimbs; + __gcry_mpi_resize($84,$85); + $86 = HEAP32[$p1_>>2]|0; + $87 = $nlimbs; + __gcry_mpi_resize($86,$87); + $88 = ((($p1_)) + 8|0); + $89 = HEAP32[$88>>2]|0; + $90 = $nlimbs; + __gcry_mpi_resize($89,$90); + $91 = HEAP32[$p2_>>2]|0; + $92 = $nlimbs; + __gcry_mpi_resize($91,$92); + $93 = ((($p2_)) + 8|0); + $94 = HEAP32[$93>>2]|0; + $95 = $nlimbs; + __gcry_mpi_resize($94,$95); + $q1 = $p1; + $q2 = $p2; + $prd = $p1_; + $sum = $p2_; + $96 = $nbits1; + $97 = (($96) - 1)|0; + $j2 = $97; + while(1) { + $98 = $j2; + $99 = ($98|0)>=(0); + if (!($99)) { + break; + } + $100 = $1; + $101 = $j2; + $102 = (__gcry_mpi_test_bit($100,$101)|0); + $sw = $102; + $103 = $q1; + $104 = HEAP32[$103>>2]|0; + $105 = $q2; + $106 = HEAP32[$105>>2]|0; + $107 = $sw; + __gcry_mpi_swap_cond($104,$106,$107); + $108 = $q1; + $109 = ((($108)) + 8|0); + $110 = HEAP32[$109>>2]|0; + $111 = $q2; + $112 = ((($111)) + 8|0); + $113 = HEAP32[$112>>2]|0; + $114 = $sw; + __gcry_mpi_swap_cond($110,$113,$114); + $115 = $prd; + $116 = $sum; + $117 = $q1; + $118 = $q2; + $119 = $2; + $120 = HEAP32[$119>>2]|0; + $121 = $3; + _montgomery_ladder($115,$116,$117,$118,$120,$121); + $122 = $prd; + $123 = HEAP32[$122>>2]|0; + $124 = $sum; + $125 = HEAP32[$124>>2]|0; + $126 = $sw; + __gcry_mpi_swap_cond($123,$125,$126); + $127 = $prd; + $128 = ((($127)) + 8|0); + $129 = HEAP32[$128>>2]|0; + $130 = $sum; + $131 = ((($130)) + 8|0); + $132 = HEAP32[$131>>2]|0; + $133 = $sw; + __gcry_mpi_swap_cond($129,$132,$133); + $134 = $q1; + $t = $134; + $135 = $prd; + $q1 = $135; + $136 = $t; + $prd = $136; + $137 = $q2; + $t = $137; + $138 = $sum; + $q2 = $138; + $139 = $t; + $sum = $139; + $140 = $j2; + $141 = (($140) + -1)|0; + $j2 = $141; + } + $142 = $0; + $143 = ((($142)) + 4|0); + $144 = HEAP32[$143>>2]|0; + __gcry_mpi_clear($144); + $145 = $nbits1; + $146 = $145 & 1; + $sw = $146; + $147 = HEAP32[$p1>>2]|0; + $148 = HEAP32[$p1_>>2]|0; + $149 = $sw; + __gcry_mpi_swap_cond($147,$148,$149); + $150 = ((($p1)) + 8|0); + $151 = HEAP32[$150>>2]|0; + $152 = ((($p1_)) + 8|0); + $153 = HEAP32[$152>>2]|0; + $154 = $sw; + __gcry_mpi_swap_cond($151,$153,$154); + $155 = ((($p1)) + 8|0); + $156 = HEAP32[$155>>2]|0; + $157 = ((($156)) + 4|0); + $158 = HEAP32[$157>>2]|0; + $159 = ($158|0)==(0); + if ($159) { + $160 = $0; + $161 = HEAP32[$160>>2]|0; + (__gcry_mpi_set_ui($161,1)|0); + $162 = $0; + $163 = ((($162)) + 8|0); + $164 = HEAP32[$163>>2]|0; + (__gcry_mpi_set_ui($164,0)|0); + } else { + $165 = (__gcry_mpi_new(0)|0); + $z1 = $165; + $166 = $z1; + $167 = ((($p1)) + 8|0); + $168 = HEAP32[$167>>2]|0; + $169 = $3; + _ec_invm($166,$168,$169); + $170 = $0; + $171 = HEAP32[$170>>2]|0; + $172 = HEAP32[$p1>>2]|0; + $173 = $z1; + $174 = $3; + _ec_mulm($171,$172,$173,$174); + $175 = $0; + $176 = ((($175)) + 8|0); + $177 = HEAP32[$176>>2]|0; + (__gcry_mpi_set_ui($177,1)|0); + $178 = $z1; + __gcry_mpi_free($178); + } + __gcry_mpi_point_free_parts($p1); + __gcry_mpi_point_free_parts($p2); + __gcry_mpi_point_free_parts($p1_); + __gcry_mpi_point_free_parts($p2_); + STACKTOP = sp;return; + } + $179 = $3; + $180 = ((($179)) + 16|0); + $181 = HEAP32[$180>>2]|0; + $182 = (__gcry_mpi_alloc_like($181)|0); + $x1 = $182; + $183 = $3; + $184 = ((($183)) + 16|0); + $185 = HEAP32[$184>>2]|0; + $186 = (__gcry_mpi_alloc_like($185)|0); + $y1 = $186; + $187 = $3; + $188 = ((($187)) + 16|0); + $189 = HEAP32[$188>>2]|0; + $190 = (__gcry_mpi_alloc_like($189)|0); + $h = $190; + $191 = $1; + $192 = (__gcry_mpi_copy($191)|0); + $k = $192; + $193 = $2; + $194 = ((($193)) + 4|0); + $195 = HEAP32[$194>>2]|0; + $196 = (__gcry_mpi_copy($195)|0); + $yy = $196; + $197 = $k; + $198 = ((($197)) + 8|0); + $199 = HEAP32[$198>>2]|0; + $200 = ($199|0)!=(0); + if ($200) { + $201 = $k; + $202 = ((($201)) + 8|0); + HEAP32[$202>>2] = 0; + $203 = $yy; + $204 = $yy; + $205 = $3; + _ec_invm($203,$204,$205); + } + $206 = $2; + $207 = ((($206)) + 8|0); + $208 = HEAP32[$207>>2]|0; + $209 = (__gcry_mpi_cmp_ui($208,1)|0); + $210 = ($209|0)!=(0); + if ($210) { + $216 = $3; + $217 = ((($216)) + 16|0); + $218 = HEAP32[$217>>2]|0; + $219 = (__gcry_mpi_alloc_like($218)|0); + $z2 = $219; + $220 = $3; + $221 = ((($220)) + 16|0); + $222 = HEAP32[$221>>2]|0; + $223 = (__gcry_mpi_alloc_like($222)|0); + $z3 = $223; + $224 = $z2; + $225 = $2; + $226 = ((($225)) + 8|0); + $227 = HEAP32[$226>>2]|0; + $228 = $2; + $229 = ((($228)) + 8|0); + $230 = HEAP32[$229>>2]|0; + $231 = $3; + _ec_mulm($224,$227,$230,$231); + $232 = $z3; + $233 = $2; + $234 = ((($233)) + 8|0); + $235 = HEAP32[$234>>2]|0; + $236 = $z2; + $237 = $3; + _ec_mulm($232,$235,$236,$237); + $238 = $z2; + $239 = $z2; + $240 = $3; + _ec_invm($238,$239,$240); + $241 = $x1; + $242 = $2; + $243 = HEAP32[$242>>2]|0; + $244 = $z2; + $245 = $3; + _ec_mulm($241,$243,$244,$245); + $246 = $z3; + $247 = $z3; + $248 = $3; + _ec_invm($246,$247,$248); + $249 = $y1; + $250 = $yy; + $251 = $z3; + $252 = $3; + _ec_mulm($249,$250,$251,$252); + $253 = $z2; + __gcry_mpi_free($253); + $254 = $z3; + __gcry_mpi_free($254); + } else { + $211 = $x1; + $212 = $2; + $213 = HEAP32[$212>>2]|0; + (__gcry_mpi_set($211,$213)|0); + $214 = $y1; + $215 = $yy; + (__gcry_mpi_set($214,$215)|0); + } + $255 = (__gcry_mpi_const(1)|0); + $256 = (__gcry_mpi_copy($255)|0); + $z1 = $256; + $257 = $h; + $258 = $k; + $259 = (__gcry_mpi_const(3)|0); + __gcry_mpi_mul($257,$258,$259); + $260 = $h; + $261 = (__gcry_mpi_get_nbits($260)|0); + $loops = $261; + $262 = $loops; + $263 = ($262>>>0)<(2); + if ($263) { + $loops = 2; + $264 = $0; + $265 = HEAP32[$264>>2]|0; + __gcry_mpi_clear($265); + $266 = $0; + $267 = ((($266)) + 4|0); + $268 = HEAP32[$267>>2]|0; + __gcry_mpi_clear($268); + $269 = $0; + $270 = ((($269)) + 8|0); + $271 = HEAP32[$270>>2]|0; + __gcry_mpi_clear($271); + } else { + $272 = $0; + $273 = HEAP32[$272>>2]|0; + $274 = $2; + $275 = HEAP32[$274>>2]|0; + (__gcry_mpi_set($273,$275)|0); + $276 = $0; + $277 = ((($276)) + 4|0); + $278 = HEAP32[$277>>2]|0; + $279 = $yy; + (__gcry_mpi_set($278,$279)|0); + $280 = $0; + $281 = ((($280)) + 8|0); + $282 = HEAP32[$281>>2]|0; + $283 = $2; + $284 = ((($283)) + 8|0); + $285 = HEAP32[$284>>2]|0; + (__gcry_mpi_set($282,$285)|0); + } + $286 = $yy; + __gcry_mpi_free($286); + $yy = 0; + $287 = $x1; + HEAP32[$p1>>2] = $287; + $x1 = 0; + $288 = $y1; + $289 = ((($p1)) + 4|0); + HEAP32[$289>>2] = $288; + $y1 = 0; + $290 = $z1; + $291 = ((($p1)) + 8|0); + HEAP32[$291>>2] = $290; + $z1 = 0; + __gcry_mpi_point_init($p2); + __gcry_mpi_point_init($p1inv); + $292 = $loops; + $293 = (($292) - 2)|0; + $i = $293; + while(1) { + $294 = $i; + $295 = ($294>>>0)>(0); + if (!($295)) { + break; + } + $296 = $0; + $297 = $0; + $298 = $3; + __gcry_mpi_ec_dup_point($296,$297,$298); + $299 = $h; + $300 = $i; + $301 = (__gcry_mpi_test_bit($299,$300)|0); + $302 = ($301|0)==(1); + if ($302) { + $303 = $k; + $304 = $i; + $305 = (__gcry_mpi_test_bit($303,$304)|0); + $306 = ($305|0)==(0); + if ($306) { + $307 = $0; + _point_set_1575($p2,$307); + $308 = $0; + $309 = $3; + __gcry_mpi_ec_add_points($308,$p2,$p1,$309); + } + } + $310 = $h; + $311 = $i; + $312 = (__gcry_mpi_test_bit($310,$311)|0); + $313 = ($312|0)==(0); + if ($313) { + $314 = $k; + $315 = $i; + $316 = (__gcry_mpi_test_bit($314,$315)|0); + $317 = ($316|0)==(1); + if ($317) { + $318 = $0; + _point_set_1575($p2,$318); + _point_set_1575($p1inv,$p1); + $319 = ((($p1inv)) + 4|0); + $320 = HEAP32[$319>>2]|0; + $321 = $3; + $322 = ((($321)) + 16|0); + $323 = HEAP32[$322>>2]|0; + $324 = ((($p1inv)) + 4|0); + $325 = HEAP32[$324>>2]|0; + $326 = $3; + _ec_subm($320,$323,$325,$326); + $327 = $0; + $328 = $3; + __gcry_mpi_ec_add_points($327,$p2,$p1inv,$328); + } + } + $329 = $i; + $330 = (($329) + -1)|0; + $i = $330; + } + __gcry_mpi_point_free_parts($p1); + __gcry_mpi_point_free_parts($p2); + __gcry_mpi_point_free_parts($p1inv); + $331 = $h; + __gcry_mpi_free($331); + $332 = $k; + __gcry_mpi_free($332); + STACKTOP = sp;return; +} +function _montgomery_ladder($prd,$sum,$p1,$p2,$dif_x,$ctx) { + $prd = $prd|0; + $sum = $sum|0; + $p1 = $p1|0; + $p2 = $p2|0; + $dif_x = $dif_x|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $prd; + $1 = $sum; + $2 = $p1; + $3 = $p2; + $4 = $dif_x; + $5 = $ctx; + $6 = $1; + $7 = HEAP32[$6>>2]|0; + $8 = $3; + $9 = HEAP32[$8>>2]|0; + $10 = $3; + $11 = ((($10)) + 8|0); + $12 = HEAP32[$11>>2]|0; + $13 = $5; + _ec_addm($7,$9,$12,$13); + $14 = $3; + $15 = ((($14)) + 8|0); + $16 = HEAP32[$15>>2]|0; + $17 = $3; + $18 = HEAP32[$17>>2]|0; + $19 = $3; + $20 = ((($19)) + 8|0); + $21 = HEAP32[$20>>2]|0; + $22 = $5; + _ec_subm($16,$18,$21,$22); + $23 = $0; + $24 = HEAP32[$23>>2]|0; + $25 = $2; + $26 = HEAP32[$25>>2]|0; + $27 = $2; + $28 = ((($27)) + 8|0); + $29 = HEAP32[$28>>2]|0; + $30 = $5; + _ec_addm($24,$26,$29,$30); + $31 = $2; + $32 = ((($31)) + 8|0); + $33 = HEAP32[$32>>2]|0; + $34 = $2; + $35 = HEAP32[$34>>2]|0; + $36 = $2; + $37 = ((($36)) + 8|0); + $38 = HEAP32[$37>>2]|0; + $39 = $5; + _ec_subm($33,$35,$38,$39); + $40 = $3; + $41 = HEAP32[$40>>2]|0; + $42 = $2; + $43 = ((($42)) + 8|0); + $44 = HEAP32[$43>>2]|0; + $45 = $1; + $46 = HEAP32[$45>>2]|0; + $47 = $5; + _ec_mulm($41,$44,$46,$47); + $48 = $3; + $49 = ((($48)) + 8|0); + $50 = HEAP32[$49>>2]|0; + $51 = $0; + $52 = HEAP32[$51>>2]|0; + $53 = $3; + $54 = ((($53)) + 8|0); + $55 = HEAP32[$54>>2]|0; + $56 = $5; + _ec_mulm($50,$52,$55,$56); + $57 = $2; + $58 = HEAP32[$57>>2]|0; + $59 = $0; + $60 = HEAP32[$59>>2]|0; + $61 = $5; + _ec_pow2($58,$60,$61); + $62 = $2; + $63 = ((($62)) + 8|0); + $64 = HEAP32[$63>>2]|0; + $65 = $2; + $66 = ((($65)) + 8|0); + $67 = HEAP32[$66>>2]|0; + $68 = $5; + _ec_pow2($64,$67,$68); + $69 = $1; + $70 = HEAP32[$69>>2]|0; + $71 = $3; + $72 = HEAP32[$71>>2]|0; + $73 = $3; + $74 = ((($73)) + 8|0); + $75 = HEAP32[$74>>2]|0; + $76 = $5; + _ec_addm($70,$72,$75,$76); + $77 = $3; + $78 = ((($77)) + 8|0); + $79 = HEAP32[$78>>2]|0; + $80 = $3; + $81 = HEAP32[$80>>2]|0; + $82 = $3; + $83 = ((($82)) + 8|0); + $84 = HEAP32[$83>>2]|0; + $85 = $5; + _ec_subm($79,$81,$84,$85); + $86 = $0; + $87 = HEAP32[$86>>2]|0; + $88 = $2; + $89 = HEAP32[$88>>2]|0; + $90 = $2; + $91 = ((($90)) + 8|0); + $92 = HEAP32[$91>>2]|0; + $93 = $5; + _ec_mulm($87,$89,$92,$93); + $94 = $2; + $95 = ((($94)) + 8|0); + $96 = HEAP32[$95>>2]|0; + $97 = $2; + $98 = HEAP32[$97>>2]|0; + $99 = $2; + $100 = ((($99)) + 8|0); + $101 = HEAP32[$100>>2]|0; + $102 = $5; + _ec_subm($96,$98,$101,$102); + $103 = $1; + $104 = HEAP32[$103>>2]|0; + $105 = $1; + $106 = HEAP32[$105>>2]|0; + $107 = $5; + _ec_pow2($104,$106,$107); + $108 = $1; + $109 = ((($108)) + 8|0); + $110 = HEAP32[$109>>2]|0; + $111 = $3; + $112 = ((($111)) + 8|0); + $113 = HEAP32[$112>>2]|0; + $114 = $5; + _ec_pow2($110,$113,$114); + $115 = $0; + $116 = ((($115)) + 8|0); + $117 = HEAP32[$116>>2]|0; + $118 = $2; + $119 = ((($118)) + 8|0); + $120 = HEAP32[$119>>2]|0; + $121 = $5; + $122 = ((($121)) + 20|0); + $123 = HEAP32[$122>>2]|0; + $124 = $5; + _ec_mulm($117,$120,$123,$124); + $125 = $1; + $126 = ((($125)) + 8|0); + $127 = HEAP32[$126>>2]|0; + $128 = $1; + $129 = ((($128)) + 8|0); + $130 = HEAP32[$129>>2]|0; + $131 = $4; + $132 = $5; + _ec_mulm($127,$130,$131,$132); + $133 = $0; + $134 = ((($133)) + 8|0); + $135 = HEAP32[$134>>2]|0; + $136 = $2; + $137 = HEAP32[$136>>2]|0; + $138 = $0; + $139 = ((($138)) + 8|0); + $140 = HEAP32[$139>>2]|0; + $141 = $5; + _ec_addm($135,$137,$140,$141); + $142 = $0; + $143 = ((($142)) + 8|0); + $144 = HEAP32[$143>>2]|0; + $145 = $0; + $146 = ((($145)) + 8|0); + $147 = HEAP32[$146>>2]|0; + $148 = $2; + $149 = ((($148)) + 8|0); + $150 = HEAP32[$149>>2]|0; + $151 = $5; + _ec_mulm($144,$147,$150,$151); + STACKTOP = sp;return; +} +function __gcry_mpi_ec_curve_point($point,$ctx) { + $point = $point|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $16 = 0; + var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; + var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $res = 0, $w = 0, $x = 0, $xxx = 0, $y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $point; + $2 = $ctx; + $res = 0; + $3 = (__gcry_mpi_new(0)|0); + $x = $3; + $4 = (__gcry_mpi_new(0)|0); + $y = $4; + $5 = (__gcry_mpi_new(0)|0); + $w = $5; + $6 = $2; + $7 = HEAP32[$6>>2]|0; + L1: do { + switch ($7|0) { + case 0: { + $8 = (__gcry_mpi_new(0)|0); + $xxx = $8; + $9 = $x; + $10 = $y; + $11 = $1; + $12 = $2; + $13 = (__gcry_mpi_ec_get_affine($9,$10,$11,$12)|0); + $14 = ($13|0)!=(0); + if ($14) { + $0 = 0; + $150 = $0; + STACKTOP = sp;return ($150|0); + } + $15 = $y; + $16 = $y; + $17 = $2; + _ec_pow2($15,$16,$17); + $18 = $xxx; + $19 = $x; + $20 = $2; + _ec_pow3($18,$19,$20); + $21 = $w; + $22 = $2; + $23 = ((($22)) + 20|0); + $24 = HEAP32[$23>>2]|0; + $25 = $x; + $26 = $2; + _ec_mulm($21,$24,$25,$26); + $27 = $w; + $28 = $w; + $29 = $2; + $30 = ((($29)) + 24|0); + $31 = HEAP32[$30>>2]|0; + $32 = $2; + _ec_addm($27,$28,$31,$32); + $33 = $w; + $34 = $w; + $35 = $xxx; + $36 = $2; + _ec_addm($33,$34,$35,$36); + $37 = $y; + $38 = $w; + $39 = (__gcry_mpi_cmp($37,$38)|0); + $40 = ($39|0)!=(0); + if (!($40)) { + $res = 1; + } + $41 = $xxx; + __gcry_mpi_release($41); + break; + } + case 1: { + $42 = $x; + $43 = $1; + $44 = $2; + $45 = (__gcry_mpi_ec_get_affine($42,0,$43,$44)|0); + $46 = ($45|0)!=(0); + if (!($46)) { + $47 = $w; + $48 = $2; + $49 = ((($48)) + 20|0); + $50 = HEAP32[$49>>2]|0; + $51 = (__gcry_mpi_const(4)|0); + $52 = $2; + _ec_mulm($47,$50,$51,$52); + $53 = $w; + $54 = $w; + $55 = (__gcry_mpi_const(2)|0); + $56 = $2; + _ec_addm($53,$54,$55,$56); + $57 = $w; + $58 = $w; + $59 = $x; + $60 = $2; + _ec_mulm($57,$58,$59,$60); + $61 = $y; + $62 = $x; + $63 = $2; + _ec_pow2($61,$62,$63); + $64 = $w; + $65 = $w; + $66 = $y; + $67 = $2; + _ec_addm($64,$65,$66,$67); + $68 = $w; + $69 = $w; + $70 = (__gcry_mpi_const(1)|0); + $71 = $2; + _ec_addm($68,$69,$70,$71); + $72 = $w; + $73 = $w; + $74 = $x; + $75 = $2; + _ec_mulm($72,$73,$74,$75); + $76 = $w; + $77 = $w; + $78 = $2; + $79 = ((($78)) + 24|0); + $80 = HEAP32[$79>>2]|0; + $81 = $2; + _ec_mulm($76,$77,$80,$81); + $82 = $y; + $83 = $2; + $84 = ((($83)) + 16|0); + $85 = HEAP32[$84>>2]|0; + $86 = (__gcry_mpi_const(1)|0); + $87 = $2; + _ec_subm($82,$85,$86,$87); + $88 = $y; + $89 = $y; + __gcry_mpi_rshift($88,$89,1); + $90 = $w; + $91 = $w; + $92 = $y; + $93 = $2; + _ec_powm($90,$91,$92,$93); + $94 = $w; + $95 = (__gcry_mpi_cmp_ui($94,1)|0); + $res = $95; + break L1; + } + $0 = 0; + $150 = $0; + STACKTOP = sp;return ($150|0); + break; + } + case 2: { + $96 = $x; + $97 = $y; + $98 = $1; + $99 = $2; + $100 = (__gcry_mpi_ec_get_affine($96,$97,$98,$99)|0); + $101 = ($100|0)!=(0); + if ($101) { + $0 = 0; + $150 = $0; + STACKTOP = sp;return ($150|0); + } + $102 = $x; + $103 = $x; + $104 = $2; + _ec_pow2($102,$103,$104); + $105 = $y; + $106 = $y; + $107 = $2; + _ec_pow2($105,$106,$107); + $108 = $2; + $109 = ((($108)) + 4|0); + $110 = HEAP32[$109>>2]|0; + $111 = ($110|0)==(1); + $112 = $w; + if ($111) { + $113 = $x; + (__gcry_mpi_set($112,$113)|0); + $114 = $w; + $115 = $w; + __gcry_mpi_neg($114,$115); + } else { + $116 = $2; + $117 = ((($116)) + 20|0); + $118 = HEAP32[$117>>2]|0; + $119 = $x; + $120 = $2; + _ec_mulm($112,$118,$119,$120); + } + $121 = $w; + $122 = $w; + $123 = $y; + $124 = $2; + _ec_addm($121,$122,$123,$124); + $125 = $w; + $126 = $w; + $127 = (__gcry_mpi_const(1)|0); + $128 = $2; + _ec_subm($125,$126,$127,$128); + $129 = $x; + $130 = $x; + $131 = $y; + $132 = $2; + _ec_mulm($129,$130,$131,$132); + $133 = $x; + $134 = $x; + $135 = $2; + $136 = ((($135)) + 24|0); + $137 = HEAP32[$136>>2]|0; + $138 = $2; + _ec_mulm($133,$134,$137,$138); + $139 = $w; + $140 = $w; + $141 = $x; + $142 = $2; + _ec_subm($139,$140,$141,$142); + $143 = $w; + $144 = (__gcry_mpi_cmp_ui($143,0)|0); + $145 = ($144|0)!=(0); + if (!($145)) { + $res = 1; + } + break; + } + default: { + } + } + } while(0); + $146 = $w; + __gcry_mpi_release($146); + $147 = $x; + __gcry_mpi_release($147); + $148 = $y; + __gcry_mpi_release($148); + $149 = $res; + $0 = $149; + $150 = $0; + STACKTOP = sp;return ($150|0); +} +function _ec_pow3($w,$b,$ctx) { + $w = $w|0; + $b = $b|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $b; + $2 = $ctx; + $3 = $0; + $4 = $1; + $5 = (__gcry_mpi_const(3)|0); + $6 = $2; + $7 = ((($6)) + 16|0); + $8 = HEAP32[$7>>2]|0; + __gcry_mpi_powm($3,$4,$5,$8); + STACKTOP = sp;return; +} +function __gcry_mpi_add_ui($w,$u,$v) { + $w = $w|0; + $u = $u|0; + $v = $v|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $8 = 0, $9 = 0, $cy = 0, $up = 0, $usign = 0, $usize = 0, $wp = 0, $wsign = 0; + var $wsize = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $u; + $2 = $v; + $3 = $1; + $4 = ((($3)) + 4|0); + $5 = HEAP32[$4>>2]|0; + $usize = $5; + $6 = $1; + $7 = ((($6)) + 8|0); + $8 = HEAP32[$7>>2]|0; + $usign = $8; + $wsign = 0; + $9 = $usize; + $10 = (($9) + 1)|0; + $wsize = $10; + $11 = $0; + $12 = HEAP32[$11>>2]|0; + $13 = $wsize; + $14 = ($12|0)<($13|0); + if ($14) { + $15 = $0; + $16 = $wsize; + __gcry_mpi_resize($15,$16); + } + $17 = $1; + $18 = ((($17)) + 16|0); + $19 = HEAP32[$18>>2]|0; + $up = $19; + $20 = $0; + $21 = ((($20)) + 16|0); + $22 = HEAP32[$21>>2]|0; + $wp = $22; + $23 = $usize; + $24 = ($23|0)!=(0); + do { + if ($24) { + $30 = $usign; + $31 = ($30|0)!=(0); + if (!($31)) { + $32 = $wp; + $33 = $up; + $34 = $usize; + $35 = $2; + $36 = (__gcry_mpih_add_1($32,$33,$34,$35)|0); + $cy = $36; + $37 = $cy; + $38 = $usize; + $39 = $wp; + $40 = (($39) + ($38<<2)|0); + HEAP32[$40>>2] = $37; + $41 = $usize; + $42 = $cy; + $43 = (($41) + ($42))|0; + $wsize = $43; + break; + } + $44 = $usize; + $45 = ($44|0)==(1); + if ($45) { + $46 = $up; + $47 = HEAP32[$46>>2]|0; + $48 = $2; + $49 = ($47>>>0)<($48>>>0); + if ($49) { + $50 = $2; + $51 = $up; + $52 = HEAP32[$51>>2]|0; + $53 = (($50) - ($52))|0; + $54 = $wp; + HEAP32[$54>>2] = $53; + $wsize = 1; + break; + } + } + $55 = $wp; + $56 = $up; + $57 = $usize; + $58 = $2; + (__gcry_mpih_sub_1($55,$56,$57,$58)|0); + $59 = $usize; + $60 = $usize; + $61 = (($60) - 1)|0; + $62 = $wp; + $63 = (($62) + ($61<<2)|0); + $64 = HEAP32[$63>>2]|0; + $65 = ($64|0)==(0); + $66 = $65&1; + $67 = (($59) - ($66))|0; + $wsize = $67; + $wsign = 1; + } else { + $25 = $2; + $26 = $wp; + HEAP32[$26>>2] = $25; + $27 = $2; + $28 = ($27|0)!=(0); + $29 = $28 ? 1 : 0; + $wsize = $29; + } + } while(0); + $68 = $wsize; + $69 = $0; + $70 = ((($69)) + 4|0); + HEAP32[$70>>2] = $68; + $71 = $wsign; + $72 = $0; + $73 = ((($72)) + 8|0); + HEAP32[$73>>2] = $71; + STACKTOP = sp;return; +} +function __gcry_mpi_add($w,$u,$v) { + $w = $w|0; + $u = $u|0; + $v = $v|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $_i = 0, $cy = 0, $up = 0, $usign = 0, $usize = 0, $vp = 0, $vsign = 0, $vsize = 0, $wp = 0, $wsign = 0, $wsize = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $u; + $2 = $v; + $3 = $1; + $4 = ((($3)) + 4|0); + $5 = HEAP32[$4>>2]|0; + $6 = $2; + $7 = ((($6)) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($5|0)<($8|0); + if ($9) { + $10 = $2; + $11 = ((($10)) + 4|0); + $12 = HEAP32[$11>>2]|0; + $usize = $12; + $13 = $2; + $14 = ((($13)) + 8|0); + $15 = HEAP32[$14>>2]|0; + $usign = $15; + $16 = $1; + $17 = ((($16)) + 4|0); + $18 = HEAP32[$17>>2]|0; + $vsize = $18; + $19 = $1; + $20 = ((($19)) + 8|0); + $21 = HEAP32[$20>>2]|0; + $vsign = $21; + $22 = $usize; + $23 = (($22) + 1)|0; + $wsize = $23; + $24 = $0; + $25 = HEAP32[$24>>2]|0; + $26 = $wsize; + $27 = ($25|0)<($26|0); + if ($27) { + $28 = $0; + $29 = $wsize; + __gcry_mpi_resize($28,$29); + } + $30 = $2; + $31 = ((($30)) + 16|0); + $32 = HEAP32[$31>>2]|0; + $up = $32; + $33 = $1; + $34 = ((($33)) + 16|0); + $35 = HEAP32[$34>>2]|0; + $vp = $35; + } else { + $36 = $1; + $37 = ((($36)) + 4|0); + $38 = HEAP32[$37>>2]|0; + $usize = $38; + $39 = $1; + $40 = ((($39)) + 8|0); + $41 = HEAP32[$40>>2]|0; + $usign = $41; + $42 = $2; + $43 = ((($42)) + 4|0); + $44 = HEAP32[$43>>2]|0; + $vsize = $44; + $45 = $2; + $46 = ((($45)) + 8|0); + $47 = HEAP32[$46>>2]|0; + $vsign = $47; + $48 = $usize; + $49 = (($48) + 1)|0; + $wsize = $49; + $50 = $0; + $51 = HEAP32[$50>>2]|0; + $52 = $wsize; + $53 = ($51|0)<($52|0); + if ($53) { + $54 = $0; + $55 = $wsize; + __gcry_mpi_resize($54,$55); + } + $56 = $1; + $57 = ((($56)) + 16|0); + $58 = HEAP32[$57>>2]|0; + $up = $58; + $59 = $2; + $60 = ((($59)) + 16|0); + $61 = HEAP32[$60>>2]|0; + $vp = $61; + } + $62 = $0; + $63 = ((($62)) + 16|0); + $64 = HEAP32[$63>>2]|0; + $wp = $64; + $wsign = 0; + $65 = $vsize; + $66 = ($65|0)!=(0); + do { + if ($66) { + $81 = $usign; + $82 = $vsign; + $83 = ($81|0)!=($82|0); + if (!($83)) { + $142 = $wp; + $143 = $up; + $144 = $usize; + $145 = $vp; + $146 = $vsize; + $147 = (__gcry_mpih_add($142,$143,$144,$145,$146)|0); + $cy = $147; + $148 = $cy; + $149 = $usize; + $150 = $wp; + $151 = (($150) + ($149<<2)|0); + HEAP32[$151>>2] = $148; + $152 = $usize; + $153 = $cy; + $154 = (($152) + ($153))|0; + $wsize = $154; + $155 = $usign; + $156 = ($155|0)!=(0); + if (!($156)) { + break; + } + $wsign = 1; + break; + } + $84 = $usize; + $85 = $vsize; + $86 = ($84|0)!=($85|0); + if ($86) { + $87 = $wp; + $88 = $up; + $89 = $usize; + $90 = $vp; + $91 = $vsize; + (__gcry_mpih_sub($87,$88,$89,$90,$91)|0); + $92 = $usize; + $wsize = $92; + while(1) { + $93 = $wsize; + $94 = ($93|0)>(0); + if (!($94)) { + break; + } + $95 = $wsize; + $96 = (($95) - 1)|0; + $97 = $wp; + $98 = (($97) + ($96<<2)|0); + $99 = HEAP32[$98>>2]|0; + $100 = ($99|0)!=(0); + if ($100) { + break; + } + $101 = $wsize; + $102 = (($101) + -1)|0; + $wsize = $102; + } + $103 = $usign; + $wsign = $103; + break; + } + $104 = $up; + $105 = $vp; + $106 = $usize; + $107 = (__gcry_mpih_cmp($104,$105,$106)|0); + $108 = ($107|0)<(0); + $109 = $wp; + if ($108) { + $110 = $vp; + $111 = $up; + $112 = $usize; + (__gcry_mpih_sub_n($109,$110,$111,$112)|0); + $113 = $usize; + $wsize = $113; + while(1) { + $114 = $wsize; + $115 = ($114|0)>(0); + if (!($115)) { + break; + } + $116 = $wsize; + $117 = (($116) - 1)|0; + $118 = $wp; + $119 = (($118) + ($117<<2)|0); + $120 = HEAP32[$119>>2]|0; + $121 = ($120|0)!=(0); + if ($121) { + break; + } + $122 = $wsize; + $123 = (($122) + -1)|0; + $wsize = $123; + } + $124 = $usign; + $125 = ($124|0)!=(0); + if ($125) { + break; + } + $wsign = 1; + break; + } else { + $126 = $up; + $127 = $vp; + $128 = $usize; + (__gcry_mpih_sub_n($109,$126,$127,$128)|0); + $129 = $usize; + $wsize = $129; + while(1) { + $130 = $wsize; + $131 = ($130|0)>(0); + if (!($131)) { + break; + } + $132 = $wsize; + $133 = (($132) - 1)|0; + $134 = $wp; + $135 = (($134) + ($133<<2)|0); + $136 = HEAP32[$135>>2]|0; + $137 = ($136|0)!=(0); + if ($137) { + break; + } + $138 = $wsize; + $139 = (($138) + -1)|0; + $wsize = $139; + } + $140 = $usign; + $141 = ($140|0)!=(0); + if (!($141)) { + break; + } + $wsign = 1; + break; + } + } else { + $_i = 0; + while(1) { + $67 = $_i; + $68 = $usize; + $69 = ($67|0)<($68|0); + if (!($69)) { + break; + } + $70 = $_i; + $71 = $up; + $72 = (($71) + ($70<<2)|0); + $73 = HEAP32[$72>>2]|0; + $74 = $_i; + $75 = $wp; + $76 = (($75) + ($74<<2)|0); + HEAP32[$76>>2] = $73; + $77 = $_i; + $78 = (($77) + 1)|0; + $_i = $78; + } + $79 = $usize; + $wsize = $79; + $80 = $usign; + $wsign = $80; + } + } while(0); + $157 = $wsize; + $158 = $0; + $159 = ((($158)) + 4|0); + HEAP32[$159>>2] = $157; + $160 = $wsign; + $161 = $0; + $162 = ((($161)) + 8|0); + HEAP32[$162>>2] = $160; + STACKTOP = sp;return; +} +function __gcry_mpi_sub_ui($w,$u,$v) { + $w = $w|0; + $u = $u|0; + $v = $v|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $8 = 0, $9 = 0, $cy = 0, $up = 0, $usign = 0, $usize = 0, $wp = 0, $wsign = 0; + var $wsize = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $u; + $2 = $v; + $3 = $1; + $4 = ((($3)) + 4|0); + $5 = HEAP32[$4>>2]|0; + $usize = $5; + $6 = $1; + $7 = ((($6)) + 8|0); + $8 = HEAP32[$7>>2]|0; + $usign = $8; + $wsign = 0; + $9 = $usize; + $10 = (($9) + 1)|0; + $wsize = $10; + $11 = $0; + $12 = HEAP32[$11>>2]|0; + $13 = $wsize; + $14 = ($12|0)<($13|0); + if ($14) { + $15 = $0; + $16 = $wsize; + __gcry_mpi_resize($15,$16); + } + $17 = $1; + $18 = ((($17)) + 16|0); + $19 = HEAP32[$18>>2]|0; + $up = $19; + $20 = $0; + $21 = ((($20)) + 16|0); + $22 = HEAP32[$21>>2]|0; + $wp = $22; + $23 = $usize; + $24 = ($23|0)!=(0); + do { + if ($24) { + $30 = $usign; + $31 = ($30|0)!=(0); + if ($31) { + $32 = $wp; + $33 = $up; + $34 = $usize; + $35 = $2; + $36 = (__gcry_mpih_add_1($32,$33,$34,$35)|0); + $cy = $36; + $37 = $cy; + $38 = $usize; + $39 = $wp; + $40 = (($39) + ($38<<2)|0); + HEAP32[$40>>2] = $37; + $41 = $usize; + $42 = $cy; + $43 = (($41) + ($42))|0; + $wsize = $43; + break; + } + $44 = $usize; + $45 = ($44|0)==(1); + if ($45) { + $46 = $up; + $47 = HEAP32[$46>>2]|0; + $48 = $2; + $49 = ($47>>>0)<($48>>>0); + if ($49) { + $50 = $2; + $51 = $up; + $52 = HEAP32[$51>>2]|0; + $53 = (($50) - ($52))|0; + $54 = $wp; + HEAP32[$54>>2] = $53; + $wsize = 1; + $wsign = 1; + break; + } + } + $55 = $wp; + $56 = $up; + $57 = $usize; + $58 = $2; + (__gcry_mpih_sub_1($55,$56,$57,$58)|0); + $59 = $usize; + $60 = $usize; + $61 = (($60) - 1)|0; + $62 = $wp; + $63 = (($62) + ($61<<2)|0); + $64 = HEAP32[$63>>2]|0; + $65 = ($64|0)==(0); + $66 = $65&1; + $67 = (($59) - ($66))|0; + $wsize = $67; + } else { + $25 = $2; + $26 = $wp; + HEAP32[$26>>2] = $25; + $27 = $2; + $28 = ($27|0)!=(0); + $29 = $28 ? 1 : 0; + $wsize = $29; + $wsign = 1; + } + } while(0); + $68 = $wsize; + $69 = $0; + $70 = ((($69)) + 4|0); + HEAP32[$70>>2] = $68; + $71 = $wsign; + $72 = $0; + $73 = ((($72)) + 8|0); + HEAP32[$73>>2] = $71; + STACKTOP = sp;return; +} +function __gcry_mpi_sub($w,$u,$v) { + $w = $w|0; + $u = $u|0; + $v = $v|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vv = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $u; + $2 = $v; + $3 = $2; + $4 = (__gcry_mpi_copy($3)|0); + $vv = $4; + $5 = $vv; + $6 = ((($5)) + 8|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0); + $9 = $8 ^ 1; + $10 = $9&1; + $11 = $vv; + $12 = ((($11)) + 8|0); + HEAP32[$12>>2] = $10; + $13 = $0; + $14 = $1; + $15 = $vv; + __gcry_mpi_add($13,$14,$15); + $16 = $vv; + __gcry_mpi_free($16); + STACKTOP = sp;return; +} +function __gcry_mpi_addm($w,$u,$v,$m) { + $w = $w|0; + $u = $u|0; + $v = $v|0; + $m = $m|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $u; + $2 = $v; + $3 = $m; + $4 = $0; + $5 = $1; + $6 = $2; + __gcry_mpi_add($4,$5,$6); + $7 = $0; + $8 = $0; + $9 = $3; + __gcry_mpi_mod($7,$8,$9); + STACKTOP = sp;return; +} +function __gcry_mpi_subm($w,$u,$v,$m) { + $w = $w|0; + $u = $u|0; + $v = $v|0; + $m = $m|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $u; + $2 = $v; + $3 = $m; + $4 = $0; + $5 = $1; + $6 = $2; + __gcry_mpi_sub($4,$5,$6); + $7 = $0; + $8 = $0; + $9 = $3; + __gcry_mpi_mod($7,$8,$9); + STACKTOP = sp;return; +} +function __gcry_mpi_normalize($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $0; + $2 = ($1|0)!=(0|0); + if ($2) { + $3 = $0; + $4 = ((($3)) + 12|0); + $5 = HEAP32[$4>>2]|0; + $6 = $5 & 4; + $7 = ($6|0)!=(0); + if ($7) { + STACKTOP = sp;return; + } + } + while(1) { + $8 = $0; + $9 = ((($8)) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0); + if (!($11)) { + label = 6; + break; + } + $12 = $0; + $13 = ((($12)) + 4|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) - 1)|0; + $16 = $0; + $17 = ((($16)) + 16|0); + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + ($15<<2)|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)!=(0); + $22 = $21 ^ 1; + if (!($22)) { + label = 6; + break; + } + $23 = $0; + $24 = ((($23)) + 4|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + -1)|0; + HEAP32[$24>>2] = $26; + } + if ((label|0) == 6) { + STACKTOP = sp;return; + } +} +function __gcry_mpi_get_nbits($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $__a = 0, $__xr = 0, $alimb = 0, $n = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $a; + $2 = $1; + $3 = ($2|0)!=(0|0); + if ($3) { + $4 = $1; + $5 = ((($4)) + 12|0); + $6 = HEAP32[$5>>2]|0; + $7 = $6 & 4; + $8 = ($7|0)!=(0); + if ($8) { + $9 = $1; + $10 = ((($9)) + 8|0); + $11 = HEAP32[$10>>2]|0; + $0 = $11; + $55 = $0; + STACKTOP = sp;return ($55|0); + } + } + $12 = $1; + __gcry_mpi_normalize($12); + $13 = $1; + $14 = ((($13)) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)!=(0); + if ($16) { + $17 = $1; + $18 = ((($17)) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) - 1)|0; + $21 = $1; + $22 = ((($21)) + 16|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + ($20<<2)|0); + $25 = HEAP32[$24>>2]|0; + $alimb = $25; + $26 = $alimb; + $27 = ($26|0)!=(0); + if ($27) { + $28 = $alimb; + $__xr = $28; + $29 = $__xr; + $30 = ($29>>>0)<(65536); + $31 = $__xr; + $32 = ($31>>>0)<(256); + $33 = $32 ? 0 : 8; + $34 = ($31>>>0)<(16777216); + $35 = $34 ? 16 : 24; + $36 = $30 ? $33 : $35; + $__a = $36; + $37 = $__xr; + $38 = $__a; + $39 = $37 >>> $38; + $40 = (45829 + ($39)|0); + $41 = HEAP8[$40>>0]|0; + $42 = $41&255; + $43 = $__a; + $44 = (($42) + ($43))|0; + $45 = (32 - ($44))|0; + $n = $45; + } else { + $n = 32; + } + $46 = $n; + $47 = (32 - ($46))|0; + $48 = $1; + $49 = ((($48)) + 4|0); + $50 = HEAP32[$49>>2]|0; + $51 = (($50) - 1)|0; + $52 = $51<<5; + $53 = (($47) + ($52))|0; + $n = $53; + } else { + $n = 0; + } + $54 = $n; + $0 = $54; + $55 = $0; + STACKTOP = sp;return ($55|0); +} +function __gcry_mpi_test_bit($a,$n) { + $a = $a|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $bitno = 0, $limb = 0, $limbno = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $a; + $2 = $n; + $3 = $2; + $4 = (($3>>>0) / 32)&-1; + $limbno = $4; + $5 = $2; + $6 = (($5>>>0) % 32)&-1; + $bitno = $6; + $7 = $limbno; + $8 = $1; + $9 = ((($8)) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($7>>>0)>=($10>>>0); + if ($11) { + $0 = 0; + $24 = $0; + STACKTOP = sp;return ($24|0); + } else { + $12 = $limbno; + $13 = $1; + $14 = ((($13)) + 16|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + ($12<<2)|0); + $17 = HEAP32[$16>>2]|0; + $limb = $17; + $18 = $limb; + $19 = $bitno; + $20 = 1 << $19; + $21 = $18 & $20; + $22 = ($21|0)!=(0); + $23 = $22 ? 1 : 0; + $0 = $23; + $24 = $0; + STACKTOP = sp;return ($24|0); + } + return (0)|0; +} +function __gcry_mpi_set_bit($a,$n) { + $a = $a|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $bitno = 0, $i = 0, $limbno = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $n; + $2 = $0; + $3 = ($2|0)!=(0|0); + if ($3) { + $4 = $0; + $5 = ((($4)) + 12|0); + $6 = HEAP32[$5>>2]|0; + $7 = $6 & 16; + $8 = ($7|0)!=(0); + if ($8) { + __gcry_mpi_immutable_failed(); + STACKTOP = sp;return; + } + } + $9 = $1; + $10 = (($9>>>0) / 32)&-1; + $limbno = $10; + $11 = $1; + $12 = (($11>>>0) % 32)&-1; + $bitno = $12; + $13 = $limbno; + $14 = $0; + $15 = ((($14)) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($13>>>0)>=($16>>>0); + if ($17) { + $18 = $0; + $19 = ((($18)) + 4|0); + $20 = HEAP32[$19>>2]|0; + $i = $20; + while(1) { + $21 = $i; + $22 = $0; + $23 = HEAP32[$22>>2]|0; + $24 = ($21>>>0)<($23>>>0); + if (!($24)) { + break; + } + $25 = $i; + $26 = $0; + $27 = ((($26)) + 16|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + ($25<<2)|0); + HEAP32[$29>>2] = 0; + $30 = $i; + $31 = (($30) + 1)|0; + $i = $31; + } + $32 = $0; + $33 = $limbno; + $34 = (($33) + 1)|0; + __gcry_mpi_resize($32,$34); + $35 = $limbno; + $36 = (($35) + 1)|0; + $37 = $0; + $38 = ((($37)) + 4|0); + HEAP32[$38>>2] = $36; + } + $39 = $bitno; + $40 = 1 << $39; + $41 = $limbno; + $42 = $0; + $43 = ((($42)) + 16|0); + $44 = HEAP32[$43>>2]|0; + $45 = (($44) + ($41<<2)|0); + $46 = HEAP32[$45>>2]|0; + $47 = $46 | $40; + HEAP32[$45>>2] = $47; + STACKTOP = sp;return; +} +function __gcry_mpi_set_highbit($a,$n) { + $a = $a|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $7 = 0, $8 = 0, $9 = 0, $bitno = 0, $i = 0, $limbno = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $n; + $2 = $0; + $3 = ($2|0)!=(0|0); + if ($3) { + $4 = $0; + $5 = ((($4)) + 12|0); + $6 = HEAP32[$5>>2]|0; + $7 = $6 & 16; + $8 = ($7|0)!=(0); + if ($8) { + __gcry_mpi_immutable_failed(); + STACKTOP = sp;return; + } + } + $9 = $1; + $10 = (($9>>>0) / 32)&-1; + $limbno = $10; + $11 = $1; + $12 = (($11>>>0) % 32)&-1; + $bitno = $12; + $13 = $limbno; + $14 = $0; + $15 = ((($14)) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($13>>>0)>=($16>>>0); + if ($17) { + $18 = $0; + $19 = ((($18)) + 4|0); + $20 = HEAP32[$19>>2]|0; + $i = $20; + while(1) { + $21 = $i; + $22 = $0; + $23 = HEAP32[$22>>2]|0; + $24 = ($21>>>0)<($23>>>0); + if (!($24)) { + break; + } + $25 = $i; + $26 = $0; + $27 = ((($26)) + 16|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + ($25<<2)|0); + HEAP32[$29>>2] = 0; + $30 = $i; + $31 = (($30) + 1)|0; + $i = $31; + } + $32 = $0; + $33 = $limbno; + $34 = (($33) + 1)|0; + __gcry_mpi_resize($32,$34); + $35 = $limbno; + $36 = (($35) + 1)|0; + $37 = $0; + $38 = ((($37)) + 4|0); + HEAP32[$38>>2] = $36; + } + $39 = $bitno; + $40 = 1 << $39; + $41 = $limbno; + $42 = $0; + $43 = ((($42)) + 16|0); + $44 = HEAP32[$43>>2]|0; + $45 = (($44) + ($41<<2)|0); + $46 = HEAP32[$45>>2]|0; + $47 = $46 | $40; + HEAP32[$45>>2] = $47; + $48 = $bitno; + $49 = (($48) + 1)|0; + $bitno = $49; + while(1) { + $50 = $bitno; + $51 = ($50>>>0)<(32); + if (!($51)) { + break; + } + $52 = $bitno; + $53 = 1 << $52; + $54 = $53 ^ -1; + $55 = $limbno; + $56 = $0; + $57 = ((($56)) + 16|0); + $58 = HEAP32[$57>>2]|0; + $59 = (($58) + ($55<<2)|0); + $60 = HEAP32[$59>>2]|0; + $61 = $60 & $54; + HEAP32[$59>>2] = $61; + $62 = $bitno; + $63 = (($62) + 1)|0; + $bitno = $63; + } + $64 = $limbno; + $65 = (($64) + 1)|0; + $66 = $0; + $67 = ((($66)) + 4|0); + HEAP32[$67>>2] = $65; + STACKTOP = sp;return; +} +function __gcry_mpi_clear_highbit($a,$n) { + $a = $a|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $bitno = 0, $limbno = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $n; + $2 = $0; + $3 = ($2|0)!=(0|0); + if ($3) { + $4 = $0; + $5 = ((($4)) + 12|0); + $6 = HEAP32[$5>>2]|0; + $7 = $6 & 16; + $8 = ($7|0)!=(0); + if ($8) { + __gcry_mpi_immutable_failed(); + STACKTOP = sp;return; + } + } + $9 = $1; + $10 = (($9>>>0) / 32)&-1; + $limbno = $10; + $11 = $1; + $12 = (($11>>>0) % 32)&-1; + $bitno = $12; + $13 = $limbno; + $14 = $0; + $15 = ((($14)) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($13>>>0)>=($16>>>0); + if ($17) { + STACKTOP = sp;return; + } + while(1) { + $18 = $bitno; + $19 = ($18>>>0)<(32); + if (!($19)) { + break; + } + $20 = $bitno; + $21 = 1 << $20; + $22 = $21 ^ -1; + $23 = $limbno; + $24 = $0; + $25 = ((($24)) + 16|0); + $26 = HEAP32[$25>>2]|0; + $27 = (($26) + ($23<<2)|0); + $28 = HEAP32[$27>>2]|0; + $29 = $28 & $22; + HEAP32[$27>>2] = $29; + $30 = $bitno; + $31 = (($30) + 1)|0; + $bitno = $31; + } + $32 = $limbno; + $33 = (($32) + 1)|0; + $34 = $0; + $35 = ((($34)) + 4|0); + HEAP32[$35>>2] = $33; + STACKTOP = sp;return; +} +function __gcry_mpi_clear_bit($a,$n) { + $a = $a|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $bitno = 0, $limbno = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $n; + $2 = $0; + $3 = ($2|0)!=(0|0); + if ($3) { + $4 = $0; + $5 = ((($4)) + 12|0); + $6 = HEAP32[$5>>2]|0; + $7 = $6 & 16; + $8 = ($7|0)!=(0); + if ($8) { + __gcry_mpi_immutable_failed(); + STACKTOP = sp;return; + } + } + $9 = $1; + $10 = (($9>>>0) / 32)&-1; + $limbno = $10; + $11 = $1; + $12 = (($11>>>0) % 32)&-1; + $bitno = $12; + $13 = $limbno; + $14 = $0; + $15 = ((($14)) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($13>>>0)>=($16>>>0); + if ($17) { + STACKTOP = sp;return; + } + $18 = $bitno; + $19 = 1 << $18; + $20 = $19 ^ -1; + $21 = $limbno; + $22 = $0; + $23 = ((($22)) + 16|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + ($21<<2)|0); + $26 = HEAP32[$25>>2]|0; + $27 = $26 & $20; + HEAP32[$25>>2] = $27; + STACKTOP = sp;return; +} +function __gcry_mpi_rshift_limbs($a,$count) { + $a = $a|0; + $count = $count|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $ap = 0, $i = 0, $n = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $count; + $2 = $0; + $3 = ((($2)) + 16|0); + $4 = HEAP32[$3>>2]|0; + $ap = $4; + $5 = $0; + $6 = ((($5)) + 4|0); + $7 = HEAP32[$6>>2]|0; + $n = $7; + $8 = $0; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = $0; + $11 = ((($10)) + 12|0); + $12 = HEAP32[$11>>2]|0; + $13 = $12 & 16; + $14 = ($13|0)!=(0); + if ($14) { + __gcry_mpi_immutable_failed(); + STACKTOP = sp;return; + } + } + $15 = $1; + $16 = $n; + $17 = ($15>>>0)>=($16>>>0); + if ($17) { + $18 = $0; + $19 = ((($18)) + 4|0); + HEAP32[$19>>2] = 0; + STACKTOP = sp;return; + } + $i = 0; + while(1) { + $20 = $i; + $21 = $n; + $22 = $1; + $23 = (($21) - ($22))|0; + $24 = ($20>>>0)<($23>>>0); + $25 = $i; + if (!($24)) { + break; + } + $26 = $1; + $27 = (($25) + ($26))|0; + $28 = $ap; + $29 = (($28) + ($27<<2)|0); + $30 = HEAP32[$29>>2]|0; + $31 = $i; + $32 = $ap; + $33 = (($32) + ($31<<2)|0); + HEAP32[$33>>2] = $30; + $34 = $i; + $35 = (($34) + 1)|0; + $i = $35; + } + $36 = $ap; + $37 = (($36) + ($25<<2)|0); + HEAP32[$37>>2] = 0; + $38 = $1; + $39 = $0; + $40 = ((($39)) + 4|0); + $41 = HEAP32[$40>>2]|0; + $42 = (($41) - ($38))|0; + HEAP32[$40>>2] = $42; + STACKTOP = sp;return; +} +function __gcry_mpi_rshift($x,$a,$n) { + $x = $x|0; + $a = $a|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $23 = 0, $24 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $i = 0, $nbits = 0, $nlimbs = 0, $or$cond = 0, $or$cond3 = 0, $xsize = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $x; + $1 = $a; + $2 = $n; + $3 = $2; + $4 = (($3>>>0) / 32)&-1; + $nlimbs = $4; + $5 = $2; + $6 = (($5>>>0) % 32)&-1; + $nbits = $6; + $7 = $0; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = $0; + $10 = ((($9)) + 12|0); + $11 = HEAP32[$10>>2]|0; + $12 = $11 & 16; + $13 = ($12|0)!=(0); + if ($13) { + __gcry_mpi_immutable_failed(); + STACKTOP = sp;return; + } + } + $14 = $0; + $15 = $1; + $16 = ($14|0)==($15|0); + $17 = $nlimbs; + L6: do { + if ($16) { + $18 = $0; + $19 = ((($18)) + 4|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($17>>>0)>=($20>>>0); + if ($21) { + $22 = $0; + $23 = ((($22)) + 4|0); + HEAP32[$23>>2] = 0; + STACKTOP = sp;return; + } + $24 = $nlimbs; + $25 = ($24|0)!=(0); + if ($25) { + $i = 0; + while(1) { + $26 = $i; + $27 = $0; + $28 = ((($27)) + 4|0); + $29 = HEAP32[$28>>2]|0; + $30 = $nlimbs; + $31 = (($29) - ($30))|0; + $32 = ($26>>>0)<($31>>>0); + $33 = $i; + if (!($32)) { + break; + } + $34 = $nlimbs; + $35 = (($33) + ($34))|0; + $36 = $0; + $37 = ((($36)) + 16|0); + $38 = HEAP32[$37>>2]|0; + $39 = (($38) + ($35<<2)|0); + $40 = HEAP32[$39>>2]|0; + $41 = $i; + $42 = $0; + $43 = ((($42)) + 16|0); + $44 = HEAP32[$43>>2]|0; + $45 = (($44) + ($41<<2)|0); + HEAP32[$45>>2] = $40; + $46 = $i; + $47 = (($46) + 1)|0; + $i = $47; + } + $48 = $0; + $49 = ((($48)) + 16|0); + $50 = HEAP32[$49>>2]|0; + $51 = (($50) + ($33<<2)|0); + HEAP32[$51>>2] = 0; + $52 = $nlimbs; + $53 = $0; + $54 = ((($53)) + 4|0); + $55 = HEAP32[$54>>2]|0; + $56 = (($55) - ($52))|0; + HEAP32[$54>>2] = $56; + } + $57 = $0; + $58 = ((($57)) + 4|0); + $59 = HEAP32[$58>>2]|0; + $60 = ($59|0)!=(0); + $61 = $nbits; + $62 = ($61|0)!=(0); + $or$cond = $60 & $62; + if ($or$cond) { + $63 = $0; + $64 = ((($63)) + 16|0); + $65 = HEAP32[$64>>2]|0; + $66 = $0; + $67 = ((($66)) + 16|0); + $68 = HEAP32[$67>>2]|0; + $69 = $0; + $70 = ((($69)) + 4|0); + $71 = HEAP32[$70>>2]|0; + $72 = $nbits; + (__gcry_mpih_rshift($65,$68,$71,$72)|0); + } + } else { + $73 = ($17|0)!=(0); + $74 = $1; + $75 = ((($74)) + 4|0); + $76 = HEAP32[$75>>2]|0; + $xsize = $76; + $77 = $1; + $78 = ((($77)) + 8|0); + $79 = HEAP32[$78>>2]|0; + $80 = $0; + $81 = ((($80)) + 8|0); + HEAP32[$81>>2] = $79; + $82 = $0; + $83 = HEAP32[$82>>2]|0; + $84 = $xsize; + $85 = ($83|0)<($84|0); + if (!($73)) { + if ($85) { + $167 = $0; + $168 = $xsize; + __gcry_mpi_resize($167,$168); + } + $169 = $xsize; + $170 = $0; + $171 = ((($170)) + 4|0); + HEAP32[$171>>2] = $169; + $172 = $xsize; + $173 = ($172|0)!=(0); + if (!($173)) { + break; + } + $174 = $nbits; + $175 = ($174|0)!=(0); + if ($175) { + $176 = $0; + $177 = ((($176)) + 16|0); + $178 = HEAP32[$177>>2]|0; + $179 = $1; + $180 = ((($179)) + 16|0); + $181 = HEAP32[$180>>2]|0; + $182 = $0; + $183 = ((($182)) + 4|0); + $184 = HEAP32[$183>>2]|0; + $185 = $nbits; + (__gcry_mpih_rshift($178,$181,$184,$185)|0); + break; + } + $i = 0; + while(1) { + $186 = $i; + $187 = $0; + $188 = ((($187)) + 4|0); + $189 = HEAP32[$188>>2]|0; + $190 = ($186>>>0)<($189>>>0); + if (!($190)) { + break L6; + } + $191 = $i; + $192 = $1; + $193 = ((($192)) + 16|0); + $194 = HEAP32[$193>>2]|0; + $195 = (($194) + ($191<<2)|0); + $196 = HEAP32[$195>>2]|0; + $197 = $i; + $198 = $0; + $199 = ((($198)) + 16|0); + $200 = HEAP32[$199>>2]|0; + $201 = (($200) + ($197<<2)|0); + HEAP32[$201>>2] = $196; + $202 = $i; + $203 = (($202) + 1)|0; + $i = $203; + } + } + if ($85) { + $86 = $0; + $87 = $xsize; + __gcry_mpi_resize($86,$87); + } + $88 = $xsize; + $89 = $0; + $90 = ((($89)) + 4|0); + HEAP32[$90>>2] = $88; + $i = 0; + while(1) { + $91 = $i; + $92 = $1; + $93 = ((($92)) + 4|0); + $94 = HEAP32[$93>>2]|0; + $95 = ($91>>>0)<($94>>>0); + $96 = $i; + if (!($95)) { + break; + } + $97 = $1; + $98 = ((($97)) + 16|0); + $99 = HEAP32[$98>>2]|0; + $100 = (($99) + ($96<<2)|0); + $101 = HEAP32[$100>>2]|0; + $102 = $i; + $103 = $0; + $104 = ((($103)) + 16|0); + $105 = HEAP32[$104>>2]|0; + $106 = (($105) + ($102<<2)|0); + HEAP32[$106>>2] = $101; + $107 = $i; + $108 = (($107) + 1)|0; + $i = $108; + } + $109 = $0; + $110 = ((($109)) + 4|0); + HEAP32[$110>>2] = $96; + $111 = $nlimbs; + $112 = $0; + $113 = ((($112)) + 4|0); + $114 = HEAP32[$113>>2]|0; + $115 = ($111>>>0)>=($114>>>0); + if ($115) { + $116 = $0; + $117 = ((($116)) + 4|0); + HEAP32[$117>>2] = 0; + STACKTOP = sp;return; + } + $118 = $nlimbs; + $119 = ($118|0)!=(0); + if ($119) { + $i = 0; + while(1) { + $120 = $i; + $121 = $0; + $122 = ((($121)) + 4|0); + $123 = HEAP32[$122>>2]|0; + $124 = $nlimbs; + $125 = (($123) - ($124))|0; + $126 = ($120>>>0)<($125>>>0); + $127 = $i; + if (!($126)) { + break; + } + $128 = $nlimbs; + $129 = (($127) + ($128))|0; + $130 = $0; + $131 = ((($130)) + 16|0); + $132 = HEAP32[$131>>2]|0; + $133 = (($132) + ($129<<2)|0); + $134 = HEAP32[$133>>2]|0; + $135 = $i; + $136 = $0; + $137 = ((($136)) + 16|0); + $138 = HEAP32[$137>>2]|0; + $139 = (($138) + ($135<<2)|0); + HEAP32[$139>>2] = $134; + $140 = $i; + $141 = (($140) + 1)|0; + $i = $141; + } + $142 = $0; + $143 = ((($142)) + 16|0); + $144 = HEAP32[$143>>2]|0; + $145 = (($144) + ($127<<2)|0); + HEAP32[$145>>2] = 0; + $146 = $nlimbs; + $147 = $0; + $148 = ((($147)) + 4|0); + $149 = HEAP32[$148>>2]|0; + $150 = (($149) - ($146))|0; + HEAP32[$148>>2] = $150; + } + $151 = $0; + $152 = ((($151)) + 4|0); + $153 = HEAP32[$152>>2]|0; + $154 = ($153|0)!=(0); + $155 = $nbits; + $156 = ($155|0)!=(0); + $or$cond3 = $154 & $156; + if ($or$cond3) { + $157 = $0; + $158 = ((($157)) + 16|0); + $159 = HEAP32[$158>>2]|0; + $160 = $0; + $161 = ((($160)) + 16|0); + $162 = HEAP32[$161>>2]|0; + $163 = $0; + $164 = ((($163)) + 4|0); + $165 = HEAP32[$164>>2]|0; + $166 = $nbits; + (__gcry_mpih_rshift($159,$162,$165,$166)|0); + } + } + } while(0); + while(1) { + $204 = $0; + $205 = ((($204)) + 4|0); + $206 = HEAP32[$205>>2]|0; + $207 = ($206|0)>(0); + if (!($207)) { + label = 40; + break; + } + $208 = $0; + $209 = ((($208)) + 4|0); + $210 = HEAP32[$209>>2]|0; + $211 = (($210) - 1)|0; + $212 = $0; + $213 = ((($212)) + 16|0); + $214 = HEAP32[$213>>2]|0; + $215 = (($214) + ($211<<2)|0); + $216 = HEAP32[$215>>2]|0; + $217 = ($216|0)!=(0); + if ($217) { + label = 40; + break; + } + $218 = $0; + $219 = ((($218)) + 4|0); + $220 = HEAP32[$219>>2]|0; + $221 = (($220) + -1)|0; + HEAP32[$219>>2] = $221; + } + if ((label|0) == 40) { + STACKTOP = sp;return; + } +} +function __gcry_mpi_lshift_limbs($a,$count) { + $a = $a|0; + $count = $count|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ap = 0, $i = 0, $n = 0, $or$cond = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $count; + $2 = $0; + $3 = ((($2)) + 4|0); + $4 = HEAP32[$3>>2]|0; + $n = $4; + $5 = $1; + $6 = ($5|0)!=(0); + $7 = $n; + $8 = ($7|0)!=(0); + $or$cond = $6 & $8; + if (!($or$cond)) { + STACKTOP = sp;return; + } + $9 = $0; + $10 = HEAP32[$9>>2]|0; + $11 = $n; + $12 = $1; + $13 = (($11) + ($12))|0; + $14 = ($10>>>0)<($13>>>0); + if ($14) { + $15 = $0; + $16 = $n; + $17 = $1; + $18 = (($16) + ($17))|0; + __gcry_mpi_resize($15,$18); + } + $19 = $0; + $20 = ((($19)) + 16|0); + $21 = HEAP32[$20>>2]|0; + $ap = $21; + $22 = $n; + $23 = (($22) - 1)|0; + $i = $23; + while(1) { + $24 = $i; + $25 = ($24|0)>=(0); + if (!($25)) { + break; + } + $26 = $i; + $27 = $ap; + $28 = (($27) + ($26<<2)|0); + $29 = HEAP32[$28>>2]|0; + $30 = $i; + $31 = $1; + $32 = (($30) + ($31))|0; + $33 = $ap; + $34 = (($33) + ($32<<2)|0); + HEAP32[$34>>2] = $29; + $35 = $i; + $36 = (($35) + -1)|0; + $i = $36; + } + $i = 0; + while(1) { + $37 = $i; + $38 = $1; + $39 = ($37>>>0)<($38>>>0); + if (!($39)) { + break; + } + $40 = $i; + $41 = $ap; + $42 = (($41) + ($40<<2)|0); + HEAP32[$42>>2] = 0; + $43 = $i; + $44 = (($43) + 1)|0; + $i = $44; + } + $45 = $1; + $46 = $0; + $47 = ((($46)) + 4|0); + $48 = HEAP32[$47>>2]|0; + $49 = (($48) + ($45))|0; + HEAP32[$47>>2] = $49; + STACKTOP = sp;return; +} +function __gcry_mpi_lshift($x,$a,$n) { + $x = $x|0; + $a = $a|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $_i = 0, $alimbs = 0, $ap = 0, $asign = 0, $nbits = 0, $nlimbs = 0, $or$cond = 0, $or$cond3 = 0, $xp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $x; + $1 = $a; + $2 = $n; + $3 = $2; + $4 = (($3>>>0) / 32)&-1; + $nlimbs = $4; + $5 = $2; + $6 = (($5>>>0) % 32)&-1; + $nbits = $6; + $7 = $0; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = $0; + $10 = ((($9)) + 12|0); + $11 = HEAP32[$10>>2]|0; + $12 = $11 & 16; + $13 = ($12|0)!=(0); + if ($13) { + __gcry_mpi_immutable_failed(); + STACKTOP = sp;return; + } + } + $14 = $0; + $15 = $1; + $16 = ($14|0)!=($15|0); + $17 = $2; + $18 = ($17|0)!=(0); + $or$cond = $16 | $18; + if (!($or$cond)) { + STACKTOP = sp;return; + } + $19 = $0; + $20 = $1; + $21 = ($19|0)!=($20|0); + if ($21) { + $22 = $1; + $23 = ((($22)) + 4|0); + $24 = HEAP32[$23>>2]|0; + $alimbs = $24; + $25 = $1; + $26 = ((($25)) + 8|0); + $27 = HEAP32[$26>>2]|0; + $asign = $27; + $28 = $0; + $29 = HEAP32[$28>>2]|0; + $30 = $alimbs; + $31 = $nlimbs; + $32 = (($30) + ($31))|0; + $33 = (($32) + 1)|0; + $34 = ($29>>>0)<($33>>>0); + if ($34) { + $35 = $0; + $36 = $alimbs; + $37 = $nlimbs; + $38 = (($36) + ($37))|0; + $39 = (($38) + 1)|0; + __gcry_mpi_resize($35,$39); + } + $40 = $0; + $41 = ((($40)) + 16|0); + $42 = HEAP32[$41>>2]|0; + $xp = $42; + $43 = $1; + $44 = ((($43)) + 16|0); + $45 = HEAP32[$44>>2]|0; + $ap = $45; + $_i = 0; + while(1) { + $46 = $_i; + $47 = $alimbs; + $48 = ($46>>>0)<($47>>>0); + if (!($48)) { + break; + } + $49 = $_i; + $50 = $ap; + $51 = (($50) + ($49<<2)|0); + $52 = HEAP32[$51>>2]|0; + $53 = $_i; + $54 = $xp; + $55 = (($54) + ($53<<2)|0); + HEAP32[$55>>2] = $52; + $56 = $_i; + $57 = (($56) + 1)|0; + $_i = $57; + } + $58 = $alimbs; + $59 = $0; + $60 = ((($59)) + 4|0); + HEAP32[$60>>2] = $58; + $61 = $1; + $62 = ((($61)) + 12|0); + $63 = HEAP32[$62>>2]|0; + $64 = $0; + $65 = ((($64)) + 12|0); + HEAP32[$65>>2] = $63; + $66 = $asign; + $67 = $0; + $68 = ((($67)) + 8|0); + HEAP32[$68>>2] = $66; + } + $69 = $nlimbs; + $70 = ($69|0)==(0); + $71 = $nbits; + $72 = ($71|0)!=(0); + $or$cond3 = $70 | $72; + if ($or$cond3) { + $75 = $2; + $76 = ($75|0)!=(0); + if ($76) { + $77 = $0; + $78 = $nlimbs; + $79 = (($78) + 1)|0; + __gcry_mpi_lshift_limbs($77,$79); + $80 = $0; + $81 = $0; + $82 = $nbits; + $83 = (32 - ($82))|0; + __gcry_mpi_rshift($80,$81,$83); + } + } else { + $73 = $0; + $74 = $nlimbs; + __gcry_mpi_lshift_limbs($73,$74); + } + while(1) { + $84 = $0; + $85 = ((($84)) + 4|0); + $86 = HEAP32[$85>>2]|0; + $87 = ($86|0)>(0); + if (!($87)) { + label = 19; + break; + } + $88 = $0; + $89 = ((($88)) + 4|0); + $90 = HEAP32[$89>>2]|0; + $91 = (($90) - 1)|0; + $92 = $0; + $93 = ((($92)) + 16|0); + $94 = HEAP32[$93>>2]|0; + $95 = (($94) + ($91<<2)|0); + $96 = HEAP32[$95>>2]|0; + $97 = ($96|0)!=(0); + if ($97) { + label = 19; + break; + } + $98 = $0; + $99 = ((($98)) + 4|0); + $100 = HEAP32[$99>>2]|0; + $101 = (($100) + -1)|0; + HEAP32[$99>>2] = $101; + } + if ((label|0) == 19) { + STACKTOP = sp;return; + } +} +function __gcry_mpi_cmp_ui($u,$v) { + $u = $u|0; + $v = $v|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $limb = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $u; + $2 = $v; + $3 = $2; + $limb = $3; + $4 = $1; + __gcry_mpi_normalize($4); + $5 = $1; + $6 = ((($5)) + 4|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)==(0); + do { + if ($8) { + $9 = $limb; + $10 = ($9|0)!=(0); + $11 = $10&1; + $12 = (0 - ($11))|0; + $0 = $12; + } else { + $13 = $1; + $14 = ((($13)) + 8|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)!=(0); + if ($16) { + $0 = -1; + break; + } + $17 = $1; + $18 = ((($17)) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = ($19|0)==(1); + if (!($20)) { + $0 = 1; + break; + } + $21 = $1; + $22 = ((($21)) + 16|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$23>>2]|0; + $25 = $limb; + $26 = ($24>>>0)>($25>>>0); + if ($26) { + $0 = 1; + break; + } + $27 = $1; + $28 = ((($27)) + 16|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$29>>2]|0; + $31 = $limb; + $32 = ($30>>>0)<($31>>>0); + if ($32) { + $0 = -1; + break; + } else { + $0 = 0; + break; + } + } + } while(0); + $33 = $0; + STACKTOP = sp;return ($33|0); +} +function __gcry_mpi_cmp($u,$v) { + $u = $u|0; + $v = $v|0; + var $$old = 0, $$old1 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0; + var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0; + var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0; + var $150 = 0, $151 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $cmp = 0, $or$cond = 0, $usize = 0, $vsize = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $u; + $2 = $v; + $3 = $1; + $4 = ($3|0)!=(0|0); + if ($4) { + $5 = $1; + $6 = ((($5)) + 12|0); + $7 = HEAP32[$6>>2]|0; + $8 = $7 & 4; + $9 = ($8|0)!=(0); + if (!($9)) { + label = 3; + } + } else { + label = 3; + } + do { + if ((label|0) == 3) { + $10 = $2; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = $2; + $13 = ((($12)) + 12|0); + $14 = HEAP32[$13>>2]|0; + $15 = $14 & 4; + $16 = ($15|0)!=(0); + if ($16) { + break; + } + } + $79 = $1; + __gcry_mpi_normalize($79); + $80 = $2; + __gcry_mpi_normalize($80); + $81 = $1; + $82 = ((($81)) + 4|0); + $83 = HEAP32[$82>>2]|0; + $usize = $83; + $84 = $2; + $85 = ((($84)) + 4|0); + $86 = HEAP32[$85>>2]|0; + $vsize = $86; + $87 = $1; + $88 = ((($87)) + 8|0); + $89 = HEAP32[$88>>2]|0; + $90 = ($89|0)!=(0); + if (!($90)) { + $91 = $2; + $92 = ((($91)) + 8|0); + $93 = HEAP32[$92>>2]|0; + $94 = ($93|0)!=(0); + if ($94) { + $0 = 1; + $151 = $0; + STACKTOP = sp;return ($151|0); + } + } + $95 = $1; + $96 = ((($95)) + 8|0); + $97 = HEAP32[$96>>2]|0; + $98 = ($97|0)!=(0); + if ($98) { + $99 = $2; + $100 = ((($99)) + 8|0); + $101 = HEAP32[$100>>2]|0; + $102 = ($101|0)!=(0); + if (!($102)) { + $0 = -1; + $151 = $0; + STACKTOP = sp;return ($151|0); + } + } + $103 = $usize; + $104 = $vsize; + $105 = ($103|0)!=($104|0); + if ($105) { + $106 = $1; + $107 = ((($106)) + 8|0); + $108 = HEAP32[$107>>2]|0; + $109 = ($108|0)!=(0); + if (!($109)) { + $110 = $2; + $111 = ((($110)) + 8|0); + $112 = HEAP32[$111>>2]|0; + $113 = ($112|0)!=(0); + if (!($113)) { + $114 = $usize; + $115 = $vsize; + $116 = (($114) - ($115))|0; + $0 = $116; + $151 = $0; + STACKTOP = sp;return ($151|0); + } + } + } + $117 = $usize; + $118 = $vsize; + $119 = ($117|0)!=($118|0); + if ($119) { + $120 = $1; + $121 = ((($120)) + 8|0); + $122 = HEAP32[$121>>2]|0; + $123 = ($122|0)!=(0); + if ($123) { + $124 = $2; + $125 = ((($124)) + 8|0); + $126 = HEAP32[$125>>2]|0; + $127 = ($126|0)!=(0); + if ($127) { + $128 = $vsize; + $129 = $usize; + $130 = (($128) + ($129))|0; + $0 = $130; + $151 = $0; + STACKTOP = sp;return ($151|0); + } + } + } + $131 = $usize; + $132 = ($131|0)!=(0); + if (!($132)) { + $0 = 0; + $151 = $0; + STACKTOP = sp;return ($151|0); + } + $133 = $1; + $134 = ((($133)) + 16|0); + $135 = HEAP32[$134>>2]|0; + $136 = $2; + $137 = ((($136)) + 16|0); + $138 = HEAP32[$137>>2]|0; + $139 = $usize; + $140 = (__gcry_mpih_cmp($135,$138,$139)|0); + $cmp = $140; + $141 = ($140|0)!=(0); + if (!($141)) { + $0 = 0; + $151 = $0; + STACKTOP = sp;return ($151|0); + } + $142 = $cmp; + $143 = ($142|0)<(0); + $144 = $143 ? 1 : 0; + $145 = $1; + $146 = ((($145)) + 8|0); + $147 = HEAP32[$146>>2]|0; + $148 = ($147|0)!=(0); + $149 = $148 ? 1 : 0; + $150 = ($144|0)==($149|0); + if ($150) { + $0 = 1; + $151 = $0; + STACKTOP = sp;return ($151|0); + } else { + $0 = -1; + $151 = $0; + STACKTOP = sp;return ($151|0); + } + } + } while(0); + $17 = $1; + $18 = ($17|0)!=(0|0); + do { + if ($18) { + $19 = $1; + $20 = ((($19)) + 12|0); + $21 = HEAP32[$20>>2]|0; + $22 = $21 & 4; + $23 = ($22|0)!=(0); + if ($23) { + $24 = $2; + $25 = ($24|0)!=(0|0); + if ($25) { + $26 = $2; + $27 = ((($26)) + 12|0); + $28 = HEAP32[$27>>2]|0; + $29 = $28 & 4; + $30 = ($29|0)!=(0); + if ($30) { + break; + } + } + $0 = -1; + $151 = $0; + STACKTOP = sp;return ($151|0); + } + } + } while(0); + $31 = $1; + $32 = ($31|0)!=(0|0); + if ($32) { + $33 = $1; + $34 = ((($33)) + 12|0); + $35 = HEAP32[$34>>2]|0; + $36 = $35 & 4; + $37 = ($36|0)==(0); + $38 = $2; + $39 = ($38|0)!=(0|0); + $or$cond = $37 & $39; + if ($or$cond) { + label = 13; + } + } else { + $$old = $2; + $$old1 = ($$old|0)!=(0|0); + if ($$old1) { + label = 13; + } + } + if ((label|0) == 13) { + $40 = $2; + $41 = ((($40)) + 12|0); + $42 = HEAP32[$41>>2]|0; + $43 = $42 & 4; + $44 = ($43|0)!=(0); + if ($44) { + $0 = 1; + $151 = $0; + STACKTOP = sp;return ($151|0); + } + } + $45 = $1; + $46 = ((($45)) + 8|0); + $47 = HEAP32[$46>>2]|0; + $48 = ($47|0)!=(0); + if (!($48)) { + $49 = $2; + $50 = ((($49)) + 8|0); + $51 = HEAP32[$50>>2]|0; + $52 = ($51|0)!=(0); + if (!($52)) { + $0 = 0; + $151 = $0; + STACKTOP = sp;return ($151|0); + } + } + $53 = $1; + $54 = ((($53)) + 8|0); + $55 = HEAP32[$54>>2]|0; + $56 = $2; + $57 = ((($56)) + 8|0); + $58 = HEAP32[$57>>2]|0; + $59 = ($55|0)<($58|0); + if ($59) { + $0 = -1; + $151 = $0; + STACKTOP = sp;return ($151|0); + } + $60 = $1; + $61 = ((($60)) + 8|0); + $62 = HEAP32[$61>>2]|0; + $63 = $2; + $64 = ((($63)) + 8|0); + $65 = HEAP32[$64>>2]|0; + $66 = ($62|0)>($65|0); + if ($66) { + $0 = 1; + $151 = $0; + STACKTOP = sp;return ($151|0); + } else { + $67 = $1; + $68 = ((($67)) + 16|0); + $69 = HEAP32[$68>>2]|0; + $70 = $2; + $71 = ((($70)) + 16|0); + $72 = HEAP32[$71>>2]|0; + $73 = $1; + $74 = ((($73)) + 8|0); + $75 = HEAP32[$74>>2]|0; + $76 = (($75) + 7)|0; + $77 = (($76|0) / 8)&-1; + $78 = (_memcmp($69,$72,$77)|0); + $0 = $78; + $151 = $0; + STACKTOP = sp;return ($151|0); + } + return (0)|0; +} +function __gcry_mpi_fdiv_r($rem,$dividend,$divisor) { + $rem = $rem|0; + $dividend = $dividend|0; + $divisor = $divisor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $divisor_sign = 0, $temp_divisor = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $rem; + $1 = $dividend; + $2 = $divisor; + $3 = $2; + $4 = ((($3)) + 8|0); + $5 = HEAP32[$4>>2]|0; + $divisor_sign = $5; + $temp_divisor = 0; + $6 = $0; + $7 = $2; + $8 = ($6|0)==($7|0); + if ($8) { + $9 = $2; + $10 = (__gcry_mpi_copy($9)|0); + $temp_divisor = $10; + $11 = $temp_divisor; + $2 = $11; + } + $12 = $0; + $13 = $1; + $14 = $2; + __gcry_mpi_tdiv_r($12,$13,$14); + $15 = $divisor_sign; + $16 = ($15|0)!=(0); + $17 = $16 ? 1 : 0; + $18 = $1; + $19 = ((($18)) + 8|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)!=(0); + $22 = $21 ? 1 : 0; + $23 = $17 ^ $22; + $24 = ($23|0)!=(0); + if ($24) { + $25 = $0; + $26 = ((($25)) + 4|0); + $27 = HEAP32[$26>>2]|0; + $28 = ($27|0)!=(0); + if ($28) { + $29 = $0; + $30 = $0; + $31 = $2; + __gcry_mpi_add($29,$30,$31); + } + } + $32 = $temp_divisor; + $33 = ($32|0)!=(0|0); + if (!($33)) { + STACKTOP = sp;return; + } + $34 = $temp_divisor; + __gcry_mpi_free($34); + STACKTOP = sp;return; +} +function __gcry_mpi_tdiv_r($rem,$num,$den) { + $rem = $rem|0; + $num = $num|0; + $den = $den|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $rem; + $1 = $num; + $2 = $den; + $3 = $0; + $4 = $1; + $5 = $2; + __gcry_mpi_tdiv_qr(0,$3,$4,$5); + STACKTOP = sp;return; +} +function __gcry_mpi_tdiv_qr($quot,$rem,$num,$den) { + $quot = $quot|0; + $rem = $rem|0; + $num = $num|0; + $den = $den|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $__a = 0, $__xr = 0, $_i = 0, $_i1 = 0, $_i3 = 0, $_i4 = 0, $dp = 0, $dsize = 0, $marker = 0, $marker_nlimbs = 0, $markidx = 0, $nlimb = 0, $normalization_steps = 0, $np = 0, $nsize = 0, $or$cond = 0, $q_limb = 0, $qp = 0; + var $qsize = 0, $rlimb = 0, $rp = 0, $rsize = 0, $sign_quotient = 0, $sign_remainder = 0, $tp = 0, $tp2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $marker = sp + 64|0; + $marker_nlimbs = sp + 44|0; + $0 = $quot; + $1 = $rem; + $2 = $num; + $3 = $den; + $4 = $2; + $5 = ((($4)) + 4|0); + $6 = HEAP32[$5>>2]|0; + $nsize = $6; + $7 = $3; + $8 = ((($7)) + 4|0); + $9 = HEAP32[$8>>2]|0; + $dsize = $9; + $10 = $2; + $11 = ((($10)) + 8|0); + $12 = HEAP32[$11>>2]|0; + $sign_remainder = $12; + $13 = $2; + $14 = ((($13)) + 8|0); + $15 = HEAP32[$14>>2]|0; + $16 = $3; + $17 = ((($16)) + 8|0); + $18 = HEAP32[$17>>2]|0; + $19 = $15 ^ $18; + $sign_quotient = $19; + $markidx = 0; + $20 = $nsize; + $21 = (($20) + 1)|0; + $rsize = $21; + $22 = $1; + $23 = $rsize; + __gcry_mpi_resize($22,$23); + $24 = $rsize; + $25 = $dsize; + $26 = (($24) - ($25))|0; + $qsize = $26; + $27 = $qsize; + $28 = ($27|0)<=(0); + if ($28) { + $29 = $2; + $30 = $1; + $31 = ($29|0)!=($30|0); + L3: do { + if ($31) { + $32 = $2; + $33 = ((($32)) + 4|0); + $34 = HEAP32[$33>>2]|0; + $35 = $1; + $36 = ((($35)) + 4|0); + HEAP32[$36>>2] = $34; + $37 = $2; + $38 = ((($37)) + 8|0); + $39 = HEAP32[$38>>2]|0; + $40 = $1; + $41 = ((($40)) + 8|0); + HEAP32[$41>>2] = $39; + $_i = 0; + while(1) { + $42 = $_i; + $43 = $nsize; + $44 = ($42|0)<($43|0); + if (!($44)) { + break L3; + } + $45 = $_i; + $46 = $2; + $47 = ((($46)) + 16|0); + $48 = HEAP32[$47>>2]|0; + $49 = (($48) + ($45<<2)|0); + $50 = HEAP32[$49>>2]|0; + $51 = $_i; + $52 = $1; + $53 = ((($52)) + 16|0); + $54 = HEAP32[$53>>2]|0; + $55 = (($54) + ($51<<2)|0); + HEAP32[$55>>2] = $50; + $56 = $_i; + $57 = (($56) + 1)|0; + $_i = $57; + } + } + } while(0); + $58 = $0; + $59 = ($58|0)!=(0|0); + if (!($59)) { + STACKTOP = sp;return; + } + $60 = $0; + $61 = ((($60)) + 4|0); + HEAP32[$61>>2] = 0; + $62 = $0; + $63 = ((($62)) + 8|0); + HEAP32[$63>>2] = 0; + STACKTOP = sp;return; + } + $64 = $0; + $65 = ($64|0)!=(0|0); + if ($65) { + $66 = $0; + $67 = $qsize; + __gcry_mpi_resize($66,$67); + } + $68 = $2; + $69 = ((($68)) + 16|0); + $70 = HEAP32[$69>>2]|0; + $np = $70; + $71 = $3; + $72 = ((($71)) + 16|0); + $73 = HEAP32[$72>>2]|0; + $dp = $73; + $74 = $1; + $75 = ((($74)) + 16|0); + $76 = HEAP32[$75>>2]|0; + $rp = $76; + $77 = $dsize; + $78 = ($77|0)==(1); + $79 = $0; + $80 = ($79|0)!=(0|0); + if ($78) { + if ($80) { + $81 = $0; + $82 = ((($81)) + 16|0); + $83 = HEAP32[$82>>2]|0; + $qp = $83; + $84 = $qp; + $85 = $np; + $86 = $nsize; + $87 = $dp; + $88 = HEAP32[$87>>2]|0; + $89 = (__gcry_mpih_divmod_1($84,$85,$86,$88)|0); + $rlimb = $89; + $90 = $qsize; + $91 = (($90) - 1)|0; + $92 = $qp; + $93 = (($92) + ($91<<2)|0); + $94 = HEAP32[$93>>2]|0; + $95 = ($94|0)==(0); + $96 = $95&1; + $97 = $qsize; + $98 = (($97) - ($96))|0; + $qsize = $98; + $99 = $qsize; + $100 = $0; + $101 = ((($100)) + 4|0); + HEAP32[$101>>2] = $99; + $102 = $sign_quotient; + $103 = $0; + $104 = ((($103)) + 8|0); + HEAP32[$104>>2] = $102; + } else { + $105 = $np; + $106 = $nsize; + $107 = $dp; + $108 = HEAP32[$107>>2]|0; + $109 = (__gcry_mpih_mod_1($105,$106,$108)|0); + $rlimb = $109; + } + $110 = $rlimb; + $111 = $rp; + HEAP32[$111>>2] = $110; + $112 = $rlimb; + $113 = ($112|0)!=(0); + $114 = $113 ? 1 : 0; + $rsize = $114; + $115 = $rsize; + $116 = $1; + $117 = ((($116)) + 4|0); + HEAP32[$117>>2] = $115; + $118 = $sign_remainder; + $119 = $1; + $120 = ((($119)) + 8|0); + HEAP32[$120>>2] = $118; + STACKTOP = sp;return; + } + L25: do { + if ($80) { + $121 = $0; + $122 = ((($121)) + 16|0); + $123 = HEAP32[$122>>2]|0; + $qp = $123; + $124 = $qp; + $125 = $np; + $126 = ($124|0)==($125|0); + if ($126) { + $127 = $nsize; + $128 = $markidx; + $129 = (($marker_nlimbs) + ($128<<2)|0); + HEAP32[$129>>2] = $127; + $130 = $nsize; + $131 = $0; + $132 = ($131|0)!=(0|0); + if ($132) { + $133 = $0; + $134 = ((($133)) + 12|0); + $135 = HEAP32[$134>>2]|0; + $136 = $135 & 1; + $137 = ($136|0)!=(0); + $139 = $137; + } else { + $139 = 0; + } + $138 = $139&1; + $140 = (__gcry_mpi_alloc_limb_space($130,$138)|0); + $141 = $markidx; + $142 = (($141) + 1)|0; + $markidx = $142; + $143 = (($marker) + ($141<<2)|0); + HEAP32[$143>>2] = $140; + $np = $140; + $_i1 = 0; + while(1) { + $144 = $_i1; + $145 = $nsize; + $146 = ($144|0)<($145|0); + if (!($146)) { + break L25; + } + $147 = $_i1; + $148 = $qp; + $149 = (($148) + ($147<<2)|0); + $150 = HEAP32[$149>>2]|0; + $151 = $_i1; + $152 = $np; + $153 = (($152) + ($151<<2)|0); + HEAP32[$153>>2] = $150; + $154 = $_i1; + $155 = (($154) + 1)|0; + $_i1 = $155; + } + } + } else { + $156 = $rp; + $157 = $dsize; + $158 = (($156) + ($157<<2)|0); + $qp = $158; + } + } while(0); + $159 = $dsize; + $160 = (($159) - 1)|0; + $161 = $dp; + $162 = (($161) + ($160<<2)|0); + $163 = HEAP32[$162>>2]|0; + $__xr = $163; + $164 = $__xr; + $165 = ($164>>>0)<(65536); + $166 = $__xr; + $167 = ($166>>>0)<(256); + $168 = $167 ? 0 : 8; + $169 = ($166>>>0)<(16777216); + $170 = $169 ? 16 : 24; + $171 = $165 ? $168 : $170; + $__a = $171; + $172 = $__xr; + $173 = $__a; + $174 = $172 >>> $173; + $175 = (45829 + ($174)|0); + $176 = HEAP8[$175>>0]|0; + $177 = $176&255; + $178 = $__a; + $179 = (($177) + ($178))|0; + $180 = (32 - ($179))|0; + $normalization_steps = $180; + $181 = $normalization_steps; + $182 = ($181|0)!=(0); + do { + if ($182) { + $183 = $dsize; + $184 = $markidx; + $185 = (($marker_nlimbs) + ($184<<2)|0); + HEAP32[$185>>2] = $183; + $186 = $dsize; + $187 = $3; + $188 = ($187|0)!=(0|0); + if ($188) { + $189 = $3; + $190 = ((($189)) + 12|0); + $191 = HEAP32[$190>>2]|0; + $192 = $191 & 1; + $193 = ($192|0)!=(0); + $195 = $193; + } else { + $195 = 0; + } + $194 = $195&1; + $196 = (__gcry_mpi_alloc_limb_space($186,$194)|0); + $197 = $markidx; + $198 = (($197) + 1)|0; + $markidx = $198; + $199 = (($marker) + ($197<<2)|0); + HEAP32[$199>>2] = $196; + $tp = $196; + $200 = $tp; + $201 = $dp; + $202 = $dsize; + $203 = $normalization_steps; + (__gcry_mpih_lshift($200,$201,$202,$203)|0); + $204 = $tp; + $dp = $204; + $205 = $rp; + $206 = $np; + $207 = $nsize; + $208 = $normalization_steps; + $209 = (__gcry_mpih_lshift($205,$206,$207,$208)|0); + $nlimb = $209; + $210 = $nlimb; + $211 = ($210|0)!=(0); + if ($211) { + $212 = $nlimb; + $213 = $nsize; + $214 = $rp; + $215 = (($214) + ($213<<2)|0); + HEAP32[$215>>2] = $212; + $216 = $nsize; + $217 = (($216) + 1)|0; + $rsize = $217; + break; + } else { + $218 = $nsize; + $rsize = $218; + break; + } + } else { + $219 = $dp; + $220 = $rp; + $221 = ($219|0)==($220|0); + if ($221) { + label = 32; + } else { + $222 = $0; + $223 = ($222|0)!=(0|0); + if ($223) { + $224 = $dp; + $225 = $qp; + $226 = ($224|0)==($225|0); + if ($226) { + label = 32; + } + } + } + if ((label|0) == 32) { + $227 = $dsize; + $228 = $markidx; + $229 = (($marker_nlimbs) + ($228<<2)|0); + HEAP32[$229>>2] = $227; + $230 = $dsize; + $231 = $3; + $232 = ($231|0)!=(0|0); + if ($232) { + $233 = $3; + $234 = ((($233)) + 12|0); + $235 = HEAP32[$234>>2]|0; + $236 = $235 & 1; + $237 = ($236|0)!=(0); + $239 = $237; + } else { + $239 = 0; + } + $238 = $239&1; + $240 = (__gcry_mpi_alloc_limb_space($230,$238)|0); + $241 = $markidx; + $242 = (($241) + 1)|0; + $markidx = $242; + $243 = (($marker) + ($241<<2)|0); + HEAP32[$243>>2] = $240; + $tp2 = $240; + $_i3 = 0; + while(1) { + $244 = $_i3; + $245 = $dsize; + $246 = ($244|0)<($245|0); + if (!($246)) { + break; + } + $247 = $_i3; + $248 = $dp; + $249 = (($248) + ($247<<2)|0); + $250 = HEAP32[$249>>2]|0; + $251 = $_i3; + $252 = $tp2; + $253 = (($252) + ($251<<2)|0); + HEAP32[$253>>2] = $250; + $254 = $_i3; + $255 = (($254) + 1)|0; + $_i3 = $255; + } + $256 = $tp2; + $dp = $256; + } + $257 = $rp; + $258 = $np; + $259 = ($257|0)!=($258|0); + L58: do { + if ($259) { + $_i4 = 0; + while(1) { + $260 = $_i4; + $261 = $nsize; + $262 = ($260|0)<($261|0); + if (!($262)) { + break L58; + } + $263 = $_i4; + $264 = $np; + $265 = (($264) + ($263<<2)|0); + $266 = HEAP32[$265>>2]|0; + $267 = $_i4; + $268 = $rp; + $269 = (($268) + ($267<<2)|0); + HEAP32[$269>>2] = $266; + $270 = $_i4; + $271 = (($270) + 1)|0; + $_i4 = $271; + } + } + } while(0); + $272 = $nsize; + $rsize = $272; + } + } while(0); + $273 = $qp; + $274 = $rp; + $275 = $rsize; + $276 = $dp; + $277 = $dsize; + $278 = (__gcry_mpih_divrem($273,0,$274,$275,$276,$277)|0); + $q_limb = $278; + $279 = $0; + $280 = ($279|0)!=(0|0); + if ($280) { + $281 = $rsize; + $282 = $dsize; + $283 = (($281) - ($282))|0; + $qsize = $283; + $284 = $q_limb; + $285 = ($284|0)!=(0); + if ($285) { + $286 = $q_limb; + $287 = $qsize; + $288 = $qp; + $289 = (($288) + ($287<<2)|0); + HEAP32[$289>>2] = $286; + $290 = $qsize; + $291 = (($290) + 1)|0; + $qsize = $291; + } + $292 = $qsize; + $293 = $0; + $294 = ((($293)) + 4|0); + HEAP32[$294>>2] = $292; + $295 = $sign_quotient; + $296 = $0; + $297 = ((($296)) + 8|0); + HEAP32[$297>>2] = $295; + } + $298 = $dsize; + $rsize = $298; + while(1) { + $299 = $rsize; + $300 = ($299|0)>(0); + if (!($300)) { + break; + } + $301 = $rsize; + $302 = (($301) - 1)|0; + $303 = $rp; + $304 = (($303) + ($302<<2)|0); + $305 = HEAP32[$304>>2]|0; + $306 = ($305|0)!=(0); + if ($306) { + break; + } + $307 = $rsize; + $308 = (($307) + -1)|0; + $rsize = $308; + } + $309 = $normalization_steps; + $310 = ($309|0)!=(0); + $311 = $rsize; + $312 = ($311|0)!=(0); + $or$cond = $310 & $312; + if ($or$cond) { + $313 = $rp; + $314 = $rp; + $315 = $rsize; + $316 = $normalization_steps; + (__gcry_mpih_rshift($313,$314,$315,$316)|0); + $317 = $rsize; + $318 = (($317) - 1)|0; + $319 = $rp; + $320 = (($319) + ($318<<2)|0); + $321 = HEAP32[$320>>2]|0; + $322 = ($321|0)==(0); + $323 = $322 ? 1 : 0; + $324 = $rsize; + $325 = (($324) - ($323))|0; + $rsize = $325; + } + $326 = $rsize; + $327 = $1; + $328 = ((($327)) + 4|0); + HEAP32[$328>>2] = $326; + $329 = $sign_remainder; + $330 = $1; + $331 = ((($330)) + 8|0); + HEAP32[$331>>2] = $329; + while(1) { + $332 = $markidx; + $333 = ($332|0)!=(0); + if (!($333)) { + break; + } + $334 = $markidx; + $335 = (($334) + -1)|0; + $markidx = $335; + $336 = $markidx; + $337 = (($marker) + ($336<<2)|0); + $338 = HEAP32[$337>>2]|0; + $339 = $markidx; + $340 = (($marker_nlimbs) + ($339<<2)|0); + $341 = HEAP32[$340>>2]|0; + __gcry_mpi_free_limb_space($338,$341); + } + STACKTOP = sp;return; +} +function __gcry_mpi_fdiv_r_ui($rem,$dividend,$divisor) { + $rem = $rem|0; + $dividend = $dividend|0; + $divisor = $divisor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rlimb = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $rem; + $1 = $dividend; + $2 = $divisor; + $3 = $1; + $4 = ((($3)) + 16|0); + $5 = HEAP32[$4>>2]|0; + $6 = $1; + $7 = ((($6)) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = $2; + $10 = (__gcry_mpih_mod_1($5,$8,$9)|0); + $rlimb = $10; + $11 = $rlimb; + $12 = ($11|0)!=(0); + if ($12) { + $13 = $1; + $14 = ((($13)) + 8|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)!=(0); + if ($16) { + $17 = $2; + $18 = $rlimb; + $19 = (($17) - ($18))|0; + $rlimb = $19; + } + } + $20 = $0; + $21 = ($20|0)!=(0|0); + if (!($21)) { + $31 = $rlimb; + STACKTOP = sp;return ($31|0); + } + $22 = $rlimb; + $23 = $0; + $24 = ((($23)) + 16|0); + $25 = HEAP32[$24>>2]|0; + HEAP32[$25>>2] = $22; + $26 = $rlimb; + $27 = ($26|0)!=(0); + $28 = $27 ? 1 : 0; + $29 = $0; + $30 = ((($29)) + 4|0); + HEAP32[$30>>2] = $28; + $31 = $rlimb; + STACKTOP = sp;return ($31|0); +} +function __gcry_mpi_fdiv_q($quot,$dividend,$divisor) { + $quot = $quot|0; + $dividend = $dividend|0; + $divisor = $divisor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $tmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $quot; + $1 = $dividend; + $2 = $divisor; + $3 = $0; + $4 = ((($3)) + 4|0); + $5 = HEAP32[$4>>2]|0; + $6 = (__gcry_mpi_alloc($5)|0); + $tmp = $6; + $7 = $0; + $8 = $tmp; + $9 = $1; + $10 = $2; + __gcry_mpi_fdiv_qr($7,$8,$9,$10); + $11 = $tmp; + __gcry_mpi_free($11); + STACKTOP = sp;return; +} +function __gcry_mpi_fdiv_qr($quot,$rem,$dividend,$divisor) { + $quot = $quot|0; + $rem = $rem|0; + $dividend = $dividend|0; + $divisor = $divisor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $divisor_sign = 0, $temp_divisor = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $quot; + $1 = $rem; + $2 = $dividend; + $3 = $divisor; + $4 = $3; + $5 = ((($4)) + 8|0); + $6 = HEAP32[$5>>2]|0; + $divisor_sign = $6; + $temp_divisor = 0; + $7 = $0; + $8 = $3; + $9 = ($7|0)==($8|0); + if ($9) { + label = 3; + } else { + $10 = $1; + $11 = $3; + $12 = ($10|0)==($11|0); + if ($12) { + label = 3; + } + } + if ((label|0) == 3) { + $13 = $3; + $14 = (__gcry_mpi_copy($13)|0); + $temp_divisor = $14; + $15 = $temp_divisor; + $3 = $15; + } + $16 = $0; + $17 = $1; + $18 = $2; + $19 = $3; + __gcry_mpi_tdiv_qr($16,$17,$18,$19); + $20 = $divisor_sign; + $21 = $2; + $22 = ((($21)) + 8|0); + $23 = HEAP32[$22>>2]|0; + $24 = $20 ^ $23; + $25 = ($24|0)!=(0); + if ($25) { + $26 = $1; + $27 = ((($26)) + 4|0); + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)!=(0); + if ($29) { + $30 = $0; + $31 = $0; + __gcry_mpi_sub_ui($30,$31,1); + $32 = $1; + $33 = $1; + $34 = $3; + __gcry_mpi_add($32,$33,$34); + } + } + $35 = $temp_divisor; + $36 = ($35|0)!=(0|0); + if (!($36)) { + STACKTOP = sp;return; + } + $37 = $temp_divisor; + __gcry_mpi_free($37); + STACKTOP = sp;return; +} +function __gcry_mpi_tdiv_q_2exp($w,$u,$count) { + $w = $w|0; + $u = $u|0; + $count = $count|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $_i = 0, $limb_cnt = 0, $up = 0, $usize = 0, $wp = 0, $wsize = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $u; + $2 = $count; + $3 = $1; + $4 = ((($3)) + 4|0); + $5 = HEAP32[$4>>2]|0; + $usize = $5; + $6 = $2; + $7 = (($6>>>0) / 32)&-1; + $limb_cnt = $7; + $8 = $usize; + $9 = $limb_cnt; + $10 = (($8) - ($9))|0; + $wsize = $10; + $11 = $limb_cnt; + $12 = $usize; + $13 = ($11|0)>=($12|0); + $14 = $0; + if ($13) { + $15 = ((($14)) + 4|0); + HEAP32[$15>>2] = 0; + STACKTOP = sp;return; + } + $16 = HEAP32[$14>>2]|0; + $17 = $wsize; + $18 = ($16|0)<($17|0); + if ($18) { + $19 = $0; + $20 = $wsize; + __gcry_mpi_resize($19,$20); + } + $21 = $0; + $22 = ((($21)) + 16|0); + $23 = HEAP32[$22>>2]|0; + $wp = $23; + $24 = $1; + $25 = ((($24)) + 16|0); + $26 = HEAP32[$25>>2]|0; + $up = $26; + $27 = $2; + $28 = (($27>>>0) % 32)&-1; + $2 = $28; + $29 = $2; + $30 = ($29|0)!=(0); + L8: do { + if ($30) { + $31 = $wp; + $32 = $up; + $33 = $limb_cnt; + $34 = (($32) + ($33<<2)|0); + $35 = $wsize; + $36 = $2; + (__gcry_mpih_rshift($31,$34,$35,$36)|0); + $37 = $wsize; + $38 = (($37) - 1)|0; + $39 = $wp; + $40 = (($39) + ($38<<2)|0); + $41 = HEAP32[$40>>2]|0; + $42 = ($41|0)!=(0); + $43 = $42 ^ 1; + $44 = $43&1; + $45 = $wsize; + $46 = (($45) - ($44))|0; + $wsize = $46; + } else { + $_i = 0; + while(1) { + $47 = $_i; + $48 = $wsize; + $49 = ($47|0)<($48|0); + if (!($49)) { + break L8; + } + $50 = $_i; + $51 = $up; + $52 = $limb_cnt; + $53 = (($51) + ($52<<2)|0); + $54 = (($53) + ($50<<2)|0); + $55 = HEAP32[$54>>2]|0; + $56 = $_i; + $57 = $wp; + $58 = (($57) + ($56<<2)|0); + HEAP32[$58>>2] = $55; + $59 = $_i; + $60 = (($59) + 1)|0; + $_i = $60; + } + } + } while(0); + $61 = $wsize; + $62 = $0; + $63 = ((($62)) + 4|0); + HEAP32[$63>>2] = $61; + STACKTOP = sp;return; +} +function __gcry_mpi_divisible_ui($dividend,$divisor) { + $dividend = $dividend|0; + $divisor = $divisor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $dividend; + $1 = $divisor; + $2 = $0; + $3 = ((($2)) + 16|0); + $4 = HEAP32[$3>>2]|0; + $5 = $0; + $6 = ((($5)) + 4|0); + $7 = HEAP32[$6>>2]|0; + $8 = $1; + $9 = (__gcry_mpih_mod_1($4,$7,$8)|0); + $10 = ($9|0)!=(0); + $11 = $10 ^ 1; + $12 = $11&1; + STACKTOP = sp;return ($12|0); +} +function __gcry_mpi_gcd($g,$xa,$xb) { + $g = $g|0; + $xa = $xa|0; + $xb = $xb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $b = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $g; + $1 = $xa; + $2 = $xb; + $3 = $1; + $4 = (__gcry_mpi_copy($3)|0); + $a = $4; + $5 = $2; + $6 = (__gcry_mpi_copy($5)|0); + $b = $6; + $7 = $a; + $8 = ((($7)) + 8|0); + HEAP32[$8>>2] = 0; + $9 = $b; + $10 = ((($9)) + 8|0); + HEAP32[$10>>2] = 0; + while(1) { + $11 = $b; + $12 = (__gcry_mpi_cmp_ui($11,0)|0); + $13 = ($12|0)!=(0); + $14 = $0; + $15 = $a; + if (!($13)) { + break; + } + $16 = $b; + __gcry_mpi_fdiv_r($14,$15,$16); + $17 = $a; + $18 = $b; + (__gcry_mpi_set($17,$18)|0); + $19 = $b; + $20 = $0; + (__gcry_mpi_set($19,$20)|0); + } + (__gcry_mpi_set($14,$15)|0); + $21 = $a; + __gcry_mpi_free($21); + $22 = $b; + __gcry_mpi_free($22); + $23 = $0; + $24 = (__gcry_mpi_cmp_ui($23,1)|0); + $25 = ($24|0)!=(0); + $26 = $25 ^ 1; + $27 = $26&1; + STACKTOP = sp;return ($27|0); +} +function __gcry_mpih_add_1($res_ptr,$s1_ptr,$s1_size,$s2_limb) { + $res_ptr = $res_ptr|0; + $s1_ptr = $s1_ptr|0; + $s1_size = $s1_size|0; + $s2_limb = $s2_limb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $res_ptr; + $2 = $s1_ptr; + $3 = $s1_size; + $4 = $s2_limb; + $5 = $2; + $6 = ((($5)) + 4|0); + $2 = $6; + $7 = HEAP32[$5>>2]|0; + $x = $7; + $8 = $x; + $9 = $4; + $10 = (($9) + ($8))|0; + $4 = $10; + $11 = $4; + $12 = $1; + $13 = ((($12)) + 4|0); + $1 = $13; + HEAP32[$12>>2] = $11; + $14 = $4; + $15 = $x; + $16 = ($14>>>0)<($15>>>0); + L1: do { + if ($16) { + while(1) { + $17 = $3; + $18 = (($17) + -1)|0; + $3 = $18; + $19 = ($18|0)!=(0); + if (!($19)) { + break; + } + $20 = $2; + $21 = ((($20)) + 4|0); + $2 = $21; + $22 = HEAP32[$20>>2]|0; + $23 = (($22) + 1)|0; + $x = $23; + $24 = $x; + $25 = $1; + $26 = ((($25)) + 4|0); + $1 = $26; + HEAP32[$25>>2] = $24; + $27 = $x; + $28 = ($27|0)!=(0); + if ($28) { + break L1; + } + } + $0 = 1; + $45 = $0; + STACKTOP = sp;return ($45|0); + } + } while(0); + $29 = $1; + $30 = $2; + $31 = ($29|0)!=($30|0); + L8: do { + if ($31) { + $i = 0; + while(1) { + $32 = $i; + $33 = $3; + $34 = (($33) - 1)|0; + $35 = ($32|0)<($34|0); + if (!($35)) { + break L8; + } + $36 = $i; + $37 = $2; + $38 = (($37) + ($36<<2)|0); + $39 = HEAP32[$38>>2]|0; + $40 = $i; + $41 = $1; + $42 = (($41) + ($40<<2)|0); + HEAP32[$42>>2] = $39; + $43 = $i; + $44 = (($43) + 1)|0; + $i = $44; + } + } + } while(0); + $0 = 0; + $45 = $0; + STACKTOP = sp;return ($45|0); +} +function __gcry_mpih_add($res_ptr,$s1_ptr,$s1_size,$s2_ptr,$s2_size) { + $res_ptr = $res_ptr|0; + $s1_ptr = $s1_ptr|0; + $s1_size = $s1_size|0; + $s2_ptr = $s2_ptr|0; + $s2_size = $s2_size|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $cy = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $res_ptr; + $1 = $s1_ptr; + $2 = $s1_size; + $3 = $s2_ptr; + $4 = $s2_size; + $cy = 0; + $5 = $4; + $6 = ($5|0)!=(0); + if ($6) { + $7 = $0; + $8 = $1; + $9 = $3; + $10 = $4; + $11 = (__gcry_mpih_add_n($7,$8,$9,$10)|0); + $cy = $11; + } + $12 = $2; + $13 = $4; + $14 = (($12) - ($13))|0; + $15 = ($14|0)!=(0); + if (!($15)) { + $27 = $cy; + STACKTOP = sp;return ($27|0); + } + $16 = $0; + $17 = $4; + $18 = (($16) + ($17<<2)|0); + $19 = $1; + $20 = $4; + $21 = (($19) + ($20<<2)|0); + $22 = $2; + $23 = $4; + $24 = (($22) - ($23))|0; + $25 = $cy; + $26 = (__gcry_mpih_add_1($18,$21,$24,$25)|0); + $cy = $26; + $27 = $cy; + STACKTOP = sp;return ($27|0); +} +function __gcry_mpih_sub_1($res_ptr,$s1_ptr,$s1_size,$s2_limb) { + $res_ptr = $res_ptr|0; + $s1_ptr = $s1_ptr|0; + $s1_size = $s1_size|0; + $s2_limb = $s2_limb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $res_ptr; + $2 = $s1_ptr; + $3 = $s1_size; + $4 = $s2_limb; + $5 = $2; + $6 = ((($5)) + 4|0); + $2 = $6; + $7 = HEAP32[$5>>2]|0; + $x = $7; + $8 = $x; + $9 = $4; + $10 = (($8) - ($9))|0; + $4 = $10; + $11 = $4; + $12 = $1; + $13 = ((($12)) + 4|0); + $1 = $13; + HEAP32[$12>>2] = $11; + $14 = $4; + $15 = $x; + $16 = ($14>>>0)>($15>>>0); + L1: do { + if ($16) { + while(1) { + $17 = $3; + $18 = (($17) + -1)|0; + $3 = $18; + $19 = ($18|0)!=(0); + if (!($19)) { + break; + } + $20 = $2; + $21 = ((($20)) + 4|0); + $2 = $21; + $22 = HEAP32[$20>>2]|0; + $x = $22; + $23 = $x; + $24 = (($23) - 1)|0; + $25 = $1; + $26 = ((($25)) + 4|0); + $1 = $26; + HEAP32[$25>>2] = $24; + $27 = $x; + $28 = ($27|0)!=(0); + if ($28) { + break L1; + } + } + $0 = 1; + $45 = $0; + STACKTOP = sp;return ($45|0); + } + } while(0); + $29 = $1; + $30 = $2; + $31 = ($29|0)!=($30|0); + L8: do { + if ($31) { + $i = 0; + while(1) { + $32 = $i; + $33 = $3; + $34 = (($33) - 1)|0; + $35 = ($32|0)<($34|0); + if (!($35)) { + break L8; + } + $36 = $i; + $37 = $2; + $38 = (($37) + ($36<<2)|0); + $39 = HEAP32[$38>>2]|0; + $40 = $i; + $41 = $1; + $42 = (($41) + ($40<<2)|0); + HEAP32[$42>>2] = $39; + $43 = $i; + $44 = (($43) + 1)|0; + $i = $44; + } + } + } while(0); + $0 = 0; + $45 = $0; + STACKTOP = sp;return ($45|0); +} +function __gcry_mpih_sub($res_ptr,$s1_ptr,$s1_size,$s2_ptr,$s2_size) { + $res_ptr = $res_ptr|0; + $s1_ptr = $s1_ptr|0; + $s1_size = $s1_size|0; + $s2_ptr = $s2_ptr|0; + $s2_size = $s2_size|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $cy = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $res_ptr; + $1 = $s1_ptr; + $2 = $s1_size; + $3 = $s2_ptr; + $4 = $s2_size; + $cy = 0; + $5 = $4; + $6 = ($5|0)!=(0); + if ($6) { + $7 = $0; + $8 = $1; + $9 = $3; + $10 = $4; + $11 = (__gcry_mpih_sub_n($7,$8,$9,$10)|0); + $cy = $11; + } + $12 = $2; + $13 = $4; + $14 = (($12) - ($13))|0; + $15 = ($14|0)!=(0); + if (!($15)) { + $27 = $cy; + STACKTOP = sp;return ($27|0); + } + $16 = $0; + $17 = $4; + $18 = (($16) + ($17<<2)|0); + $19 = $1; + $20 = $4; + $21 = (($19) + ($20<<2)|0); + $22 = $2; + $23 = $4; + $24 = (($22) - ($23))|0; + $25 = $cy; + $26 = (__gcry_mpih_sub_1($18,$21,$24,$25)|0); + $cy = $26; + $27 = $cy; + STACKTOP = sp;return ($27|0); +} +function __gcry_mpih_cmp($op1_ptr,$op2_ptr,$size) { + $op1_ptr = $op1_ptr|0; + $op2_ptr = $op2_ptr|0; + $size = $size|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $op1_word = 0, $op2_word = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $op1_ptr; + $2 = $op2_ptr; + $3 = $size; + $4 = $3; + $5 = (($4) - 1)|0; + $i = $5; + while(1) { + $6 = $i; + $7 = ($6|0)>=(0); + if (!($7)) { + label = 5; + break; + } + $8 = $i; + $9 = $1; + $10 = (($9) + ($8<<2)|0); + $11 = HEAP32[$10>>2]|0; + $op1_word = $11; + $12 = $i; + $13 = $2; + $14 = (($13) + ($12<<2)|0); + $15 = HEAP32[$14>>2]|0; + $op2_word = $15; + $16 = $op1_word; + $17 = $op2_word; + $18 = ($16|0)!=($17|0); + if ($18) { + label = 6; + break; + } + $19 = $i; + $20 = (($19) + -1)|0; + $i = $20; + } + if ((label|0) == 5) { + $0 = 0; + $25 = $0; + STACKTOP = sp;return ($25|0); + } + else if ((label|0) == 6) { + $21 = $op1_word; + $22 = $op2_word; + $23 = ($21>>>0)>($22>>>0); + $24 = $23 ? 1 : -1; + $0 = $24; + $25 = $0; + STACKTOP = sp;return ($25|0); + } + return (0)|0; +} +function __gcry_mpi_invm($x,$a,$n) { + $x = $x|0; + $a = $a|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0; + var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; + var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; + var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; + var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $k = 0, $odd = 0, $sign = 0, $t1 = 0; + var $t2 = 0, $t3 = 0, $u = 0, $u1 = 0, $u2 = 0, $u3 = 0, $v = 0, $v1 = 0, $v2 = 0, $v3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $x; + $2 = $a; + $3 = $n; + $u2 = 0; + $v2 = 0; + $t2 = 0; + $4 = $2; + $5 = (__gcry_mpi_cmp_ui($4,0)|0); + $6 = ($5|0)!=(0); + if (!($6)) { + $0 = 0; + $195 = $0; + STACKTOP = sp;return ($195|0); + } + $7 = $3; + $8 = (__gcry_mpi_cmp_ui($7,1)|0); + $9 = ($8|0)!=(0); + if (!($9)) { + $0 = 0; + $195 = $0; + STACKTOP = sp;return ($195|0); + } + $10 = $2; + $11 = (__gcry_mpi_copy($10)|0); + $u = $11; + $12 = $3; + $13 = (__gcry_mpi_copy($12)|0); + $v = $13; + $k = 0; + while(1) { + $14 = $u; + $15 = (__gcry_mpi_test_bit($14,0)|0); + $16 = ($15|0)!=(0); + if ($16) { + break; + } + $17 = $v; + $18 = (__gcry_mpi_test_bit($17,0)|0); + $19 = ($18|0)!=(0); + $20 = $19 ^ 1; + if (!($20)) { + break; + } + $21 = $u; + $22 = $u; + __gcry_mpi_rshift($21,$22,1); + $23 = $v; + $24 = $v; + __gcry_mpi_rshift($23,$24,1); + $25 = $k; + $26 = (($25) + 1)|0; + $k = $26; + } + $27 = $v; + $28 = (__gcry_mpi_test_bit($27,0)|0); + $odd = $28; + $29 = (__gcry_mpi_alloc_set_ui(1)|0); + $u1 = $29; + $30 = $odd; + $31 = ($30|0)!=(0); + if (!($31)) { + $32 = (__gcry_mpi_alloc_set_ui(0)|0); + $u2 = $32; + } + $33 = $u; + $34 = (__gcry_mpi_copy($33)|0); + $u3 = $34; + $35 = $v; + $36 = (__gcry_mpi_copy($35)|0); + $v1 = $36; + $37 = $odd; + $38 = ($37|0)!=(0); + if (!($38)) { + $39 = $u; + $40 = ((($39)) + 4|0); + $41 = HEAP32[$40>>2]|0; + $42 = (__gcry_mpi_alloc($41)|0); + $v2 = $42; + $43 = $v2; + $44 = $u1; + $45 = $u; + __gcry_mpi_sub($43,$44,$45); + } + $46 = $v; + $47 = (__gcry_mpi_copy($46)|0); + $v3 = $47; + $48 = $u; + $49 = (__gcry_mpi_test_bit($48,0)|0); + $50 = ($49|0)!=(0); + if ($50) { + $51 = (__gcry_mpi_alloc_set_ui(0)|0); + $t1 = $51; + $52 = $odd; + $53 = ($52|0)!=(0); + if (!($53)) { + $54 = (__gcry_mpi_alloc_set_ui(1)|0); + $t2 = $54; + $55 = $t2; + $56 = ((($55)) + 8|0); + HEAP32[$56>>2] = 1; + } + $57 = $v; + $58 = (__gcry_mpi_copy($57)|0); + $t3 = $58; + $59 = $t3; + $60 = ((($59)) + 8|0); + $61 = HEAP32[$60>>2]|0; + $62 = ($61|0)!=(0); + $63 = $62 ^ 1; + $64 = $63&1; + $65 = $t3; + $66 = ((($65)) + 8|0); + HEAP32[$66>>2] = $64; + } else { + $67 = (__gcry_mpi_alloc_set_ui(1)|0); + $t1 = $67; + $68 = $odd; + $69 = ($68|0)!=(0); + if (!($69)) { + $70 = (__gcry_mpi_alloc_set_ui(0)|0); + $t2 = $70; + } + $71 = $u; + $72 = (__gcry_mpi_copy($71)|0); + $t3 = $72; + label = 20; + } + while(1) { + if ((label|0) == 20) { + label = 0; + $73 = $odd; + $74 = ($73|0)!=(0); + $75 = $t1; + $76 = (__gcry_mpi_test_bit($75,0)|0); + $77 = ($76|0)!=(0); + if ($74) { + if ($77) { + $93 = $t1; + $94 = $t1; + $95 = $v; + __gcry_mpi_add($93,$94,$95); + } + $96 = $t1; + $97 = $t1; + __gcry_mpi_rshift($96,$97,1); + $98 = $t3; + $99 = $t3; + __gcry_mpi_rshift($98,$99,1); + continue; + } + if ($77) { + label = 23; + } else { + $78 = $t2; + $79 = (__gcry_mpi_test_bit($78,0)|0); + $80 = ($79|0)!=(0); + if ($80) { + label = 23; + } + } + if ((label|0) == 23) { + label = 0; + $81 = $t1; + $82 = $t1; + $83 = $v; + __gcry_mpi_add($81,$82,$83); + $84 = $t2; + $85 = $t2; + $86 = $u; + __gcry_mpi_sub($84,$85,$86); + } + $87 = $t1; + $88 = $t1; + __gcry_mpi_rshift($87,$88,1); + $89 = $t2; + $90 = $t2; + __gcry_mpi_rshift($89,$90,1); + $91 = $t3; + $92 = $t3; + __gcry_mpi_rshift($91,$92,1); + } + $100 = $t3; + $101 = (__gcry_mpi_test_bit($100,0)|0); + $102 = ($101|0)!=(0); + $103 = $102 ^ 1; + if ($103) { + label = 20; + continue; + } + $104 = $t3; + $105 = ((($104)) + 8|0); + $106 = HEAP32[$105>>2]|0; + $107 = ($106|0)!=(0); + if ($107) { + $116 = $v1; + $117 = $v; + $118 = $t1; + __gcry_mpi_sub($116,$117,$118); + $119 = $u; + $120 = ((($119)) + 8|0); + $121 = HEAP32[$120>>2]|0; + $sign = $121; + $122 = $u; + $123 = ((($122)) + 8|0); + $124 = HEAP32[$123>>2]|0; + $125 = ($124|0)!=(0); + $126 = $125 ^ 1; + $127 = $126&1; + $128 = $u; + $129 = ((($128)) + 8|0); + HEAP32[$129>>2] = $127; + $130 = $odd; + $131 = ($130|0)!=(0); + if (!($131)) { + $132 = $v2; + $133 = $u; + $134 = $t2; + __gcry_mpi_sub($132,$133,$134); + } + $135 = $sign; + $136 = $u; + $137 = ((($136)) + 8|0); + HEAP32[$137>>2] = $135; + $138 = $t3; + $139 = ((($138)) + 8|0); + $140 = HEAP32[$139>>2]|0; + $sign = $140; + $141 = $t3; + $142 = ((($141)) + 8|0); + $143 = HEAP32[$142>>2]|0; + $144 = ($143|0)!=(0); + $145 = $144 ^ 1; + $146 = $145&1; + $147 = $t3; + $148 = ((($147)) + 8|0); + HEAP32[$148>>2] = $146; + $149 = $v3; + $150 = $t3; + (__gcry_mpi_set($149,$150)|0); + $151 = $sign; + $152 = $t3; + $153 = ((($152)) + 8|0); + HEAP32[$153>>2] = $151; + } else { + $108 = $u1; + $109 = $t1; + (__gcry_mpi_set($108,$109)|0); + $110 = $odd; + $111 = ($110|0)!=(0); + if (!($111)) { + $112 = $u2; + $113 = $t2; + (__gcry_mpi_set($112,$113)|0); + } + $114 = $u3; + $115 = $t3; + (__gcry_mpi_set($114,$115)|0); + } + $154 = $t1; + $155 = $u1; + $156 = $v1; + __gcry_mpi_sub($154,$155,$156); + $157 = $odd; + $158 = ($157|0)!=(0); + if (!($158)) { + $159 = $t2; + $160 = $u2; + $161 = $v2; + __gcry_mpi_sub($159,$160,$161); + } + $162 = $t3; + $163 = $u3; + $164 = $v3; + __gcry_mpi_sub($162,$163,$164); + $165 = $t1; + $166 = ((($165)) + 8|0); + $167 = HEAP32[$166>>2]|0; + $168 = ($167|0)!=(0); + if ($168) { + $169 = $t1; + $170 = $t1; + $171 = $v; + __gcry_mpi_add($169,$170,$171); + $172 = $odd; + $173 = ($172|0)!=(0); + if (!($173)) { + $174 = $t2; + $175 = $t2; + $176 = $u; + __gcry_mpi_sub($174,$175,$176); + } + } + $177 = $t3; + $178 = (__gcry_mpi_cmp_ui($177,0)|0); + $179 = ($178|0)!=(0); + if ($179) { + label = 20; + } else { + break; + } + } + $180 = $1; + $181 = $u1; + (__gcry_mpi_set($180,$181)|0); + $182 = $u1; + __gcry_mpi_free($182); + $183 = $v1; + __gcry_mpi_free($183); + $184 = $t1; + __gcry_mpi_free($184); + $185 = $odd; + $186 = ($185|0)!=(0); + if (!($186)) { + $187 = $u2; + __gcry_mpi_free($187); + $188 = $v2; + __gcry_mpi_free($188); + $189 = $t2; + __gcry_mpi_free($189); + } + $190 = $u3; + __gcry_mpi_free($190); + $191 = $v3; + __gcry_mpi_free($191); + $192 = $t3; + __gcry_mpi_free($192); + $193 = $u; + __gcry_mpi_free($193); + $194 = $v; + __gcry_mpi_free($194); + $0 = 1; + $195 = $0; + STACKTOP = sp;return ($195|0); +} +function __gcry_mpi_mod($rem,$dividend,$divisor) { + $rem = $rem|0; + $dividend = $dividend|0; + $divisor = $divisor|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $rem; + $1 = $dividend; + $2 = $divisor; + $3 = $0; + $4 = $1; + $5 = $2; + __gcry_mpi_fdiv_r($3,$4,$5); + STACKTOP = sp;return; +} +function __gcry_mpi_barrett_init($m,$copy) { + $m = $m|0; + $copy = $copy|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ctx = 0, $tmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $m; + $1 = $copy; + $2 = $0; + __gcry_mpi_normalize($2); + $3 = (__gcry_xcalloc(1,28)|0); + $ctx = $3; + $4 = $1; + $5 = ($4|0)!=(0); + $6 = $0; + if ($5) { + $7 = (__gcry_mpi_copy($6)|0); + $8 = $ctx; + HEAP32[$8>>2] = $7; + $9 = $ctx; + $10 = ((($9)) + 4|0); + HEAP32[$10>>2] = 1; + } else { + $11 = $ctx; + HEAP32[$11>>2] = $6; + } + $12 = $0; + $13 = ((($12)) + 4|0); + $14 = HEAP32[$13>>2]|0; + $15 = $ctx; + $16 = ((($15)) + 8|0); + HEAP32[$16>>2] = $14; + $17 = $ctx; + $18 = ((($17)) + 8|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + 1)|0; + $21 = (__gcry_mpi_alloc($20)|0); + $tmp = $21; + $22 = $tmp; + (__gcry_mpi_set_ui($22,1)|0); + $23 = $tmp; + $24 = $ctx; + $25 = ((($24)) + 8|0); + $26 = HEAP32[$25>>2]|0; + $27 = $26<<1; + __gcry_mpi_lshift_limbs($23,$27); + $28 = $tmp; + $29 = $tmp; + $30 = $0; + __gcry_mpi_fdiv_q($28,$29,$30); + $31 = $tmp; + $32 = $ctx; + $33 = ((($32)) + 12|0); + HEAP32[$33>>2] = $31; + $34 = $ctx; + $35 = ((($34)) + 8|0); + $36 = HEAP32[$35>>2]|0; + $37 = $36<<1; + $38 = (($37) + 1)|0; + $39 = (__gcry_mpi_alloc($38)|0); + $40 = $ctx; + $41 = ((($40)) + 16|0); + HEAP32[$41>>2] = $39; + $42 = $ctx; + $43 = ((($42)) + 8|0); + $44 = HEAP32[$43>>2]|0; + $45 = $44<<1; + $46 = (($45) + 1)|0; + $47 = (__gcry_mpi_alloc($46)|0); + $48 = $ctx; + $49 = ((($48)) + 20|0); + HEAP32[$49>>2] = $47; + $50 = $ctx; + STACKTOP = sp;return ($50|0); +} +function __gcry_mpi_barrett_free($ctx) { + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $1 = $0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = $0; + $4 = ((($3)) + 12|0); + $5 = HEAP32[$4>>2]|0; + __gcry_mpi_free($5); + $6 = $0; + $7 = ((($6)) + 16|0); + $8 = HEAP32[$7>>2]|0; + __gcry_mpi_free($8); + $9 = $0; + $10 = ((($9)) + 20|0); + $11 = HEAP32[$10>>2]|0; + __gcry_mpi_free($11); + $12 = $0; + $13 = ((($12)) + 24|0); + $14 = HEAP32[$13>>2]|0; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = $0; + $17 = ((($16)) + 24|0); + $18 = HEAP32[$17>>2]|0; + __gcry_mpi_free($18); + } + $19 = $0; + $20 = ((($19)) + 4|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)!=(0); + if ($22) { + $23 = $0; + $24 = HEAP32[$23>>2]|0; + __gcry_mpi_free($24); + } + $25 = $0; + __gcry_free($25); + STACKTOP = sp;return; +} +function __gcry_mpi_mod_barrett($r,$x,$ctx) { + $r = $r|0; + $x = $x|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0; + var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $k = 0, $m = 0, $r1 = 0, $r2 = 0, $sign = 0, $y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $r; + $1 = $x; + $2 = $ctx; + $3 = $2; + $4 = HEAP32[$3>>2]|0; + $m = $4; + $5 = $2; + $6 = ((($5)) + 8|0); + $7 = HEAP32[$6>>2]|0; + $k = $7; + $8 = $2; + $9 = ((($8)) + 12|0); + $10 = HEAP32[$9>>2]|0; + $y = $10; + $11 = $2; + $12 = ((($11)) + 16|0); + $13 = HEAP32[$12>>2]|0; + $r1 = $13; + $14 = $2; + $15 = ((($14)) + 20|0); + $16 = HEAP32[$15>>2]|0; + $r2 = $16; + $17 = $1; + __gcry_mpi_normalize($17); + $18 = $1; + $19 = ((($18)) + 4|0); + $20 = HEAP32[$19>>2]|0; + $21 = $k; + $22 = $21<<1; + $23 = ($20|0)>($22|0); + if ($23) { + $24 = $0; + $25 = $1; + $26 = $m; + __gcry_mpi_mod($24,$25,$26); + STACKTOP = sp;return; + } + $27 = $1; + $28 = ((($27)) + 8|0); + $29 = HEAP32[$28>>2]|0; + $sign = $29; + $30 = $1; + $31 = ((($30)) + 8|0); + HEAP32[$31>>2] = 0; + $32 = $r2; + $33 = $1; + (__gcry_mpi_set($32,$33)|0); + $34 = $r2; + $35 = $k; + $36 = (($35) - 1)|0; + __gcry_mpi_rshift_limbs($34,$36); + $37 = $r2; + $38 = $r2; + $39 = $y; + __gcry_mpi_mul($37,$38,$39); + $40 = $r2; + $41 = $k; + $42 = (($41) + 1)|0; + __gcry_mpi_rshift_limbs($40,$42); + $43 = $r1; + $44 = $1; + (__gcry_mpi_set($43,$44)|0); + $45 = $r1; + $46 = ((($45)) + 4|0); + $47 = HEAP32[$46>>2]|0; + $48 = $k; + $49 = (($48) + 1)|0; + $50 = ($47|0)>($49|0); + if ($50) { + $51 = $k; + $52 = (($51) + 1)|0; + $53 = $r1; + $54 = ((($53)) + 4|0); + HEAP32[$54>>2] = $52; + } + $55 = $r2; + $56 = $r2; + $57 = $m; + __gcry_mpi_mul($55,$56,$57); + $58 = $r2; + $59 = ((($58)) + 4|0); + $60 = HEAP32[$59>>2]|0; + $61 = $k; + $62 = (($61) + 1)|0; + $63 = ($60|0)>($62|0); + if ($63) { + $64 = $k; + $65 = (($64) + 1)|0; + $66 = $r2; + $67 = ((($66)) + 4|0); + HEAP32[$67>>2] = $65; + } + $68 = $0; + $69 = $r1; + $70 = $r2; + __gcry_mpi_sub($68,$69,$70); + $71 = $0; + $72 = ((($71)) + 8|0); + $73 = HEAP32[$72>>2]|0; + $74 = ($73|0)!=(0); + if ($74) { + $75 = $2; + $76 = ((($75)) + 24|0); + $77 = HEAP32[$76>>2]|0; + $78 = ($77|0)!=(0|0); + if (!($78)) { + $79 = $k; + $80 = (($79) + 2)|0; + $81 = (__gcry_mpi_alloc($80)|0); + $82 = $2; + $83 = ((($82)) + 24|0); + HEAP32[$83>>2] = $81; + $84 = $2; + $85 = ((($84)) + 24|0); + $86 = HEAP32[$85>>2]|0; + (__gcry_mpi_set_ui($86,1)|0); + $87 = $2; + $88 = ((($87)) + 24|0); + $89 = HEAP32[$88>>2]|0; + $90 = $k; + $91 = (($90) + 1)|0; + __gcry_mpi_lshift_limbs($89,$91); + } + $92 = $0; + $93 = $0; + $94 = $2; + $95 = ((($94)) + 24|0); + $96 = HEAP32[$95>>2]|0; + __gcry_mpi_add($92,$93,$96); + } + while(1) { + $97 = $0; + $98 = $m; + $99 = (__gcry_mpi_cmp($97,$98)|0); + $100 = ($99|0)>=(0); + if (!($100)) { + break; + } + $101 = $0; + $102 = $0; + $103 = $m; + __gcry_mpi_sub($101,$102,$103); + } + $104 = $sign; + $105 = $1; + $106 = ((($105)) + 8|0); + HEAP32[$106>>2] = $104; + STACKTOP = sp;return; +} +function __gcry_mpi_mul($w,$u,$v) { + $w = $w|0; + $u = $u|0; + $v = $v|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $_i = 0, $_i1 = 0, $_i2 = 0, $assign_wp = 0, $cy = 0, $sign_product = 0, $tmp_limb = 0, $tmp_limb_nlimbs = 0, $tmp_wp = 0, $up = 0, $usecure = 0, $usign = 0, $usize = 0, $vp = 0, $vsecure = 0; + var $vsign = 0, $vsize = 0, $wp = 0, $wsize = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $u; + $2 = $v; + $assign_wp = 0; + $tmp_limb = 0; + $tmp_limb_nlimbs = 0; + $3 = $1; + $4 = ((($3)) + 4|0); + $5 = HEAP32[$4>>2]|0; + $6 = $2; + $7 = ((($6)) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($5|0)<($8|0); + if ($9) { + $10 = $2; + $11 = ((($10)) + 4|0); + $12 = HEAP32[$11>>2]|0; + $usize = $12; + $13 = $2; + $14 = ((($13)) + 8|0); + $15 = HEAP32[$14>>2]|0; + $usign = $15; + $16 = $2; + $17 = ($16|0)!=(0|0); + if ($17) { + $18 = $2; + $19 = ((($18)) + 12|0); + $20 = HEAP32[$19>>2]|0; + $21 = $20 & 1; + $22 = ($21|0)!=(0); + $24 = $22; + } else { + $24 = 0; + } + $23 = $24&1; + $usecure = $23; + $25 = $2; + $26 = ((($25)) + 16|0); + $27 = HEAP32[$26>>2]|0; + $up = $27; + $28 = $1; + $29 = ((($28)) + 4|0); + $30 = HEAP32[$29>>2]|0; + $vsize = $30; + $31 = $1; + $32 = ((($31)) + 8|0); + $33 = HEAP32[$32>>2]|0; + $vsign = $33; + $34 = $1; + $35 = ($34|0)!=(0|0); + if ($35) { + $36 = $1; + $37 = ((($36)) + 12|0); + $38 = HEAP32[$37>>2]|0; + $39 = $38 & 1; + $40 = ($39|0)!=(0); + $42 = $40; + } else { + $42 = 0; + } + $41 = $42&1; + $vsecure = $41; + $43 = $1; + $44 = ((($43)) + 16|0); + $45 = HEAP32[$44>>2]|0; + $vp = $45; + } else { + $46 = $1; + $47 = ((($46)) + 4|0); + $48 = HEAP32[$47>>2]|0; + $usize = $48; + $49 = $1; + $50 = ((($49)) + 8|0); + $51 = HEAP32[$50>>2]|0; + $usign = $51; + $52 = $1; + $53 = ($52|0)!=(0|0); + if ($53) { + $54 = $1; + $55 = ((($54)) + 12|0); + $56 = HEAP32[$55>>2]|0; + $57 = $56 & 1; + $58 = ($57|0)!=(0); + $60 = $58; + } else { + $60 = 0; + } + $59 = $60&1; + $usecure = $59; + $61 = $1; + $62 = ((($61)) + 16|0); + $63 = HEAP32[$62>>2]|0; + $up = $63; + $64 = $2; + $65 = ((($64)) + 4|0); + $66 = HEAP32[$65>>2]|0; + $vsize = $66; + $67 = $2; + $68 = ((($67)) + 8|0); + $69 = HEAP32[$68>>2]|0; + $vsign = $69; + $70 = $2; + $71 = ($70|0)!=(0|0); + if ($71) { + $72 = $2; + $73 = ((($72)) + 12|0); + $74 = HEAP32[$73>>2]|0; + $75 = $74 & 1; + $76 = ($75|0)!=(0); + $78 = $76; + } else { + $78 = 0; + } + $77 = $78&1; + $vsecure = $77; + $79 = $2; + $80 = ((($79)) + 16|0); + $81 = HEAP32[$80>>2]|0; + $vp = $81; + } + $82 = $usign; + $83 = $vsign; + $84 = $82 ^ $83; + $sign_product = $84; + $85 = $0; + $86 = ((($85)) + 16|0); + $87 = HEAP32[$86>>2]|0; + $wp = $87; + $88 = $usize; + $89 = $vsize; + $90 = (($88) + ($89))|0; + $wsize = $90; + $91 = $0; + $92 = ($91|0)!=(0|0); + if ($92) { + $93 = $0; + $94 = ((($93)) + 12|0); + $95 = HEAP32[$94>>2]|0; + $96 = $95 & 1; + $97 = ($96|0)!=(0); + if ($97) { + label = 19; + } else { + label = 14; + } + } else { + label = 14; + } + do { + if ((label|0) == 14) { + $98 = $1; + $99 = ($98|0)!=(0|0); + if ($99) { + $100 = $1; + $101 = ((($100)) + 12|0); + $102 = HEAP32[$101>>2]|0; + $103 = $102 & 1; + $104 = ($103|0)!=(0); + if (!($104)) { + label = 16; + } + } else { + label = 16; + } + if ((label|0) == 16) { + $105 = $2; + $106 = ($105|0)!=(0|0); + if (!($106)) { + label = 19; + break; + } + $107 = $2; + $108 = ((($107)) + 12|0); + $109 = HEAP32[$108>>2]|0; + $110 = $109 & 1; + $111 = ($110|0)!=(0); + if (!($111)) { + label = 19; + break; + } + } + $112 = $wsize; + $113 = (__gcry_mpi_alloc_limb_space($112,1)|0); + $wp = $113; + $assign_wp = 2; + } + } while(0); + L27: do { + if ((label|0) == 19) { + $114 = $0; + $115 = HEAP32[$114>>2]|0; + $116 = $wsize; + $117 = ($115|0)<($116|0); + $118 = $wp; + $119 = $up; + $120 = ($118|0)==($119|0); + if ($117) { + if (!($120)) { + $121 = $wp; + $122 = $vp; + $123 = ($121|0)==($122|0); + if (!($123)) { + $135 = $0; + $136 = $wsize; + __gcry_mpi_resize($135,$136); + $137 = $0; + $138 = ((($137)) + 16|0); + $139 = HEAP32[$138>>2]|0; + $wp = $139; + break; + } + } + $124 = $wsize; + $125 = $0; + $126 = ($125|0)!=(0|0); + if ($126) { + $127 = $0; + $128 = ((($127)) + 12|0); + $129 = HEAP32[$128>>2]|0; + $130 = $129 & 1; + $131 = ($130|0)!=(0); + $133 = $131; + } else { + $133 = 0; + } + $132 = $133&1; + $134 = (__gcry_mpi_alloc_limb_space($124,$132)|0); + $wp = $134; + $assign_wp = 1; + break; + } + if (!($120)) { + $160 = $wp; + $161 = $vp; + $162 = ($160|0)==($161|0); + if (!($162)) { + break; + } + $163 = $vsize; + $tmp_limb_nlimbs = $163; + $164 = $vsize; + $165 = $vsecure; + $166 = (__gcry_mpi_alloc_limb_space($164,$165)|0); + $tmp_limb = $166; + $vp = $166; + $_i1 = 0; + while(1) { + $167 = $_i1; + $168 = $vsize; + $169 = ($167|0)<($168|0); + if (!($169)) { + break L27; + } + $170 = $_i1; + $171 = $wp; + $172 = (($171) + ($170<<2)|0); + $173 = HEAP32[$172>>2]|0; + $174 = $_i1; + $175 = $vp; + $176 = (($175) + ($174<<2)|0); + HEAP32[$176>>2] = $173; + $177 = $_i1; + $178 = (($177) + 1)|0; + $_i1 = $178; + } + } + $140 = $usize; + $tmp_limb_nlimbs = $140; + $141 = $usize; + $142 = $usecure; + $143 = (__gcry_mpi_alloc_limb_space($141,$142)|0); + $tmp_limb = $143; + $up = $143; + $144 = $wp; + $145 = $vp; + $146 = ($144|0)==($145|0); + if ($146) { + $147 = $up; + $vp = $147; + } + $_i = 0; + while(1) { + $148 = $_i; + $149 = $usize; + $150 = ($148|0)<($149|0); + if (!($150)) { + break L27; + } + $151 = $_i; + $152 = $wp; + $153 = (($152) + ($151<<2)|0); + $154 = HEAP32[$153>>2]|0; + $155 = $_i; + $156 = $up; + $157 = (($156) + ($155<<2)|0); + HEAP32[$157>>2] = $154; + $158 = $_i; + $159 = (($158) + 1)|0; + $_i = $159; + } + } + } while(0); + $179 = $vsize; + $180 = ($179|0)!=(0); + if ($180) { + $181 = $wp; + $182 = $up; + $183 = $usize; + $184 = $vp; + $185 = $vsize; + $186 = (__gcry_mpih_mul($181,$182,$183,$184,$185)|0); + $cy = $186; + $187 = $cy; + $188 = ($187|0)!=(0); + $189 = $188 ? 0 : 1; + $190 = $wsize; + $191 = (($190) - ($189))|0; + $wsize = $191; + } else { + $wsize = 0; + } + $192 = $assign_wp; + $193 = ($192|0)!=(0); + if ($193) { + $194 = $assign_wp; + $195 = ($194|0)==(2); + if ($195) { + $196 = $wsize; + $197 = (__gcry_mpi_alloc_limb_space($196,0)|0); + $tmp_wp = $197; + $_i2 = 0; + while(1) { + $198 = $_i2; + $199 = $wsize; + $200 = ($198|0)<($199|0); + if (!($200)) { + break; + } + $201 = $_i2; + $202 = $wp; + $203 = (($202) + ($201<<2)|0); + $204 = HEAP32[$203>>2]|0; + $205 = $_i2; + $206 = $tmp_wp; + $207 = (($206) + ($205<<2)|0); + HEAP32[$207>>2] = $204; + $208 = $_i2; + $209 = (($208) + 1)|0; + $_i2 = $209; + } + $210 = $wp; + __gcry_mpi_free_limb_space($210,0); + $211 = $tmp_wp; + $wp = $211; + } + $212 = $0; + $213 = $wp; + $214 = $wsize; + __gcry_mpi_assign_limb_space($212,$213,$214); + } + $215 = $wsize; + $216 = $0; + $217 = ((($216)) + 4|0); + HEAP32[$217>>2] = $215; + $218 = $sign_product; + $219 = $0; + $220 = ((($219)) + 8|0); + HEAP32[$220>>2] = $218; + $221 = $tmp_limb; + $222 = ($221|0)!=(0|0); + if (!($222)) { + STACKTOP = sp;return; + } + $223 = $tmp_limb; + $224 = $tmp_limb_nlimbs; + __gcry_mpi_free_limb_space($223,$224); + STACKTOP = sp;return; +} +function __gcry_mpi_mulm($w,$u,$v,$m) { + $w = $w|0; + $u = $u|0; + $v = $v|0; + $m = $m|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $u; + $2 = $v; + $3 = $m; + $4 = $0; + $5 = $1; + $6 = $2; + __gcry_mpi_mul($4,$5,$6); + $7 = $0; + $8 = $0; + $9 = $3; + __gcry_mpi_tdiv_r($7,$8,$9); + STACKTOP = sp;return; +} +function __gcry_mpi_powm($res,$base,$expo,$mod) { + $res = $res|0; + $base = $base|0; + $expo = $expo|0; + $mod = $mod|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; + var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; + var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; + var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; + var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; + var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; + var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; + var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; + var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; + var $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0; + var $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0; + var $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0; + var $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0; + var $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0; + var $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0; + var $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0; + var $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0; + var $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0; + var $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0; + var $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $W = 0, $__a = 0, $__a10 = 0, $__a12 = 0, $__a14 = 0, $__a18 = 0, $__ctz_c = 0, $__ctz_c16 = 0, $__ctz_x = 0, $__ctz_x15 = 0, $__xr = 0, $__xr11 = 0, $__xr13 = 0, $__xr17 = 0, $__xr9 = 0, $_i = 0, $_i1 = 0, $_i2 = 0, $_i21 = 0; + var $_i3 = 0, $_i4 = 0, $_i5 = 0, $_i6 = 0, $_i7 = 0, $_i8 = 0, $base_u = 0, $base_u_size = 0, $bp = 0, $bp_marker = 0, $bp_nlimbs = 0, $bsec = 0, $bsign = 0, $bsize = 0, $c = 0, $c0 = 0, $carry_limb = 0, $e = 0, $e0 = 0, $ep = 0; + var $ep_marker = 0, $ep_nlimbs = 0, $esec = 0, $esize = 0, $i = 0, $j = 0, $k = 0, $karactx = 0, $max_u_size = 0, $mod_shift_cnt = 0, $mp = 0, $mp_marker = 0, $mp_nlimbs = 0, $msec = 0, $msign = 0, $msize = 0, $negative_result = 0, $or$cond = 0, $precomp = 0, $precomp_size = 0; + var $rp = 0, $rsign = 0, $rsize = 0, $size = 0, $tp = 0, $u = 0, $u20 = 0, $w = 0, $w19 = 0, $xp = 0, $xp_marker = 0, $xp_nlimbs = 0, $xsize = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 512|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $rsize = sp + 460|0; + $precomp = sp + 328|0; + $precomp_size = sp + 264|0; + $xsize = sp + 204|0; + $karactx = sp + 164|0; + $w = sp + 80|0; + $u = sp + 60|0; + $w19 = sp + 24|0; + $u20 = sp + 4|0; + $0 = $res; + $1 = $base; + $2 = $expo; + $3 = $mod; + $mp_marker = 0; + $bp_marker = 0; + $ep_marker = 0; + $xp_marker = 0; + $mp_nlimbs = 0; + $bp_nlimbs = 0; + $ep_nlimbs = 0; + $xp_nlimbs = 0; + $4 = $2; + $5 = ((($4)) + 4|0); + $6 = HEAP32[$5>>2]|0; + $esize = $6; + $7 = $3; + $8 = ((($7)) + 4|0); + $9 = HEAP32[$8>>2]|0; + $msize = $9; + $10 = $msize; + $11 = $10<<1; + $size = $11; + $12 = $3; + $13 = ((($12)) + 8|0); + $14 = HEAP32[$13>>2]|0; + $msign = $14; + $15 = $esize; + $16 = $15<<5; + $17 = ($16|0)>(512); + do { + if ($17) { + $W = 5; + } else { + $18 = $esize; + $19 = $18<<5; + $20 = ($19|0)>(256); + if ($20) { + $W = 4; + break; + } + $21 = $esize; + $22 = $21<<5; + $23 = ($22|0)>(128); + if ($23) { + $W = 3; + break; + } + $24 = $esize; + $25 = $24<<5; + $26 = ($25|0)>(64); + if ($26) { + $W = 2; + break; + } else { + $W = 1; + break; + } + } + } while(0); + $27 = $2; + $28 = ($27|0)!=(0|0); + if ($28) { + $29 = $2; + $30 = ((($29)) + 12|0); + $31 = HEAP32[$30>>2]|0; + $32 = $31 & 1; + $33 = ($32|0)!=(0); + $35 = $33; + } else { + $35 = 0; + } + $34 = $35&1; + $esec = $34; + $36 = $3; + $37 = ($36|0)!=(0|0); + if ($37) { + $38 = $3; + $39 = ((($38)) + 12|0); + $40 = HEAP32[$39>>2]|0; + $41 = $40 & 1; + $42 = ($41|0)!=(0); + $44 = $42; + } else { + $44 = 0; + } + $43 = $44&1; + $msec = $43; + $45 = $1; + $46 = ($45|0)!=(0|0); + if ($46) { + $47 = $1; + $48 = ((($47)) + 12|0); + $49 = HEAP32[$48>>2]|0; + $50 = $49 & 1; + $51 = ($50|0)!=(0); + $53 = $51; + } else { + $53 = 0; + } + $52 = $53&1; + $bsec = $52; + $54 = $0; + $55 = ((($54)) + 16|0); + $56 = HEAP32[$55>>2]|0; + $rp = $56; + $57 = $2; + $58 = ((($57)) + 16|0); + $59 = HEAP32[$58>>2]|0; + $ep = $59; + $60 = $msize; + $61 = ($60|0)!=(0); + if (!($61)) { + __gcry_divide_by_zero(); + // unreachable; + } + $62 = $esize; + $63 = ($62|0)!=(0); + do { + if ($63) { + $89 = $msec; + $90 = ($89|0)!=(0); + $91 = $msize; + $92 = $90 ? $91 : 0; + $mp_nlimbs = $92; + $93 = $msize; + $94 = $msec; + $95 = (__gcry_mpi_alloc_limb_space($93,$94)|0); + $mp_marker = $95; + $mp = $95; + $96 = $msize; + $97 = (($96) - 1)|0; + $98 = $3; + $99 = ((($98)) + 16|0); + $100 = HEAP32[$99>>2]|0; + $101 = (($100) + ($97<<2)|0); + $102 = HEAP32[$101>>2]|0; + $__xr = $102; + $103 = $__xr; + $104 = ($103>>>0)<(65536); + $105 = $__xr; + $106 = ($105>>>0)<(256); + $107 = $106 ? 0 : 8; + $108 = ($105>>>0)<(16777216); + $109 = $108 ? 16 : 24; + $110 = $104 ? $107 : $109; + $__a = $110; + $111 = $__xr; + $112 = $__a; + $113 = $111 >>> $112; + $114 = (45829 + ($113)|0); + $115 = HEAP8[$114>>0]|0; + $116 = $115&255; + $117 = $__a; + $118 = (($116) + ($117))|0; + $119 = (32 - ($118))|0; + $mod_shift_cnt = $119; + $120 = $mod_shift_cnt; + $121 = ($120|0)!=(0); + L28: do { + if ($121) { + $122 = $mp; + $123 = $3; + $124 = ((($123)) + 16|0); + $125 = HEAP32[$124>>2]|0; + $126 = $msize; + $127 = $mod_shift_cnt; + (__gcry_mpih_lshift($122,$125,$126,$127)|0); + } else { + $_i = 0; + while(1) { + $128 = $_i; + $129 = $msize; + $130 = ($128|0)<($129|0); + if (!($130)) { + break L28; + } + $131 = $_i; + $132 = $3; + $133 = ((($132)) + 16|0); + $134 = HEAP32[$133>>2]|0; + $135 = (($134) + ($131<<2)|0); + $136 = HEAP32[$135>>2]|0; + $137 = $_i; + $138 = $mp; + $139 = (($138) + ($137<<2)|0); + HEAP32[$139>>2] = $136; + $140 = $_i; + $141 = (($140) + 1)|0; + $_i = $141; + } + } + } while(0); + $142 = $1; + $143 = ((($142)) + 4|0); + $144 = HEAP32[$143>>2]|0; + $bsize = $144; + $145 = $1; + $146 = ((($145)) + 8|0); + $147 = HEAP32[$146>>2]|0; + $bsign = $147; + $148 = $bsize; + $149 = $msize; + $150 = ($148|0)>($149|0); + L35: do { + if ($150) { + $151 = $bsec; + $152 = ($151|0)!=(0); + $153 = $bsize; + $154 = (($153) + 1)|0; + $155 = $152 ? $154 : 0; + $bp_nlimbs = $155; + $156 = $bsize; + $157 = (($156) + 1)|0; + $158 = $bsec; + $159 = (__gcry_mpi_alloc_limb_space($157,$158)|0); + $bp_marker = $159; + $bp = $159; + $_i1 = 0; + while(1) { + $160 = $_i1; + $161 = $bsize; + $162 = ($160|0)<($161|0); + if (!($162)) { + break; + } + $163 = $_i1; + $164 = $1; + $165 = ((($164)) + 16|0); + $166 = HEAP32[$165>>2]|0; + $167 = (($166) + ($163<<2)|0); + $168 = HEAP32[$167>>2]|0; + $169 = $_i1; + $170 = $bp; + $171 = (($170) + ($169<<2)|0); + HEAP32[$171>>2] = $168; + $172 = $_i1; + $173 = (($172) + 1)|0; + $_i1 = $173; + } + $174 = $bp; + $175 = $msize; + $176 = (($174) + ($175<<2)|0); + $177 = $bp; + $178 = $bsize; + $179 = $mp; + $180 = $msize; + (__gcry_mpih_divrem($176,0,$177,$178,$179,$180)|0); + $181 = $msize; + $bsize = $181; + while(1) { + $182 = $bsize; + $183 = ($182|0)>(0); + if (!($183)) { + break L35; + } + $184 = $bsize; + $185 = (($184) - 1)|0; + $186 = $bp; + $187 = (($186) + ($185<<2)|0); + $188 = HEAP32[$187>>2]|0; + $189 = ($188|0)!=(0); + if ($189) { + break L35; + } + $190 = $bsize; + $191 = (($190) + -1)|0; + $bsize = $191; + } + } else { + $192 = $1; + $193 = ((($192)) + 16|0); + $194 = HEAP32[$193>>2]|0; + $bp = $194; + } + } while(0); + $195 = $bsize; + $196 = ($195|0)!=(0); + if (!($196)) { + $197 = $0; + $198 = ((($197)) + 4|0); + HEAP32[$198>>2] = 0; + $199 = $0; + $200 = ((($199)) + 8|0); + HEAP32[$200>>2] = 0; + break; + } + $201 = $rp; + $202 = $bp; + $203 = ($201|0)==($202|0); + L50: do { + if ($203) { + $204 = $bp_marker; + $205 = ($204|0)!=(0|0); + if ($205) { + __gcry_assert_failed(46085,46096,515,46106); + // unreachable; + } + $206 = $bsec; + $207 = ($206|0)!=(0); + $208 = $bsize; + $209 = $207 ? $208 : 0; + $bp_nlimbs = $209; + $210 = $bsize; + $211 = $bsec; + $212 = (__gcry_mpi_alloc_limb_space($210,$211)|0); + $bp_marker = $212; + $bp = $212; + $_i2 = 0; + while(1) { + $213 = $_i2; + $214 = $bsize; + $215 = ($213|0)<($214|0); + if (!($215)) { + break L50; + } + $216 = $_i2; + $217 = $rp; + $218 = (($217) + ($216<<2)|0); + $219 = HEAP32[$218>>2]|0; + $220 = $_i2; + $221 = $bp; + $222 = (($221) + ($220<<2)|0); + HEAP32[$222>>2] = $219; + $223 = $_i2; + $224 = (($223) + 1)|0; + $_i2 = $224; + } + } + } while(0); + $225 = $rp; + $226 = $ep; + $227 = ($225|0)==($226|0); + L59: do { + if ($227) { + $228 = $esec; + $229 = ($228|0)!=(0); + $230 = $esize; + $231 = $229 ? $230 : 0; + $ep_nlimbs = $231; + $232 = $esize; + $233 = $esec; + $234 = (__gcry_mpi_alloc_limb_space($232,$233)|0); + $ep_marker = $234; + $ep = $234; + $_i3 = 0; + while(1) { + $235 = $_i3; + $236 = $esize; + $237 = ($235|0)<($236|0); + if (!($237)) { + break L59; + } + $238 = $_i3; + $239 = $rp; + $240 = (($239) + ($238<<2)|0); + $241 = HEAP32[$240>>2]|0; + $242 = $_i3; + $243 = $ep; + $244 = (($243) + ($242<<2)|0); + HEAP32[$244>>2] = $241; + $245 = $_i3; + $246 = (($245) + 1)|0; + $_i3 = $246; + } + } + } while(0); + $247 = $0; + $248 = HEAP32[$247>>2]|0; + $249 = $size; + $250 = ($248|0)<($249|0); + if ($250) { + $251 = $0; + $252 = $size; + __gcry_mpi_resize($251,$252); + $253 = $0; + $254 = ((($253)) + 16|0); + $255 = HEAP32[$254>>2]|0; + $rp = $255; + } + $256 = $msec; + $257 = ($256|0)!=(0); + if ($257) { + $258 = $msize; + $259 = (($258) + 1)|0; + $260 = $259<<1; + $261 = $260; + } else { + $261 = 0; + } + $xp_nlimbs = $261; + $262 = $msize; + $263 = (($262) + 1)|0; + $264 = $263<<1; + $265 = $msec; + $266 = (__gcry_mpi_alloc_limb_space($264,$265)|0); + $xp_marker = $266; + $xp = $266; + ;HEAP32[$karactx>>2]=0|0;HEAP32[$karactx+4>>2]=0|0;HEAP32[$karactx+8>>2]=0|0;HEAP32[$karactx+12>>2]=0|0;HEAP32[$karactx+16>>2]=0|0;HEAP32[$karactx+20>>2]=0|0;HEAP32[$karactx+24>>2]=0|0; + $267 = $ep; + $268 = HEAP32[$267>>2]|0; + $269 = $268 & 1; + $270 = ($269|0)!=(0); + $271 = $bsign; + $272 = ($271|0)!=(0); + $273 = $270 ? $272 : 0; + $274 = $273&1; + $negative_result = $274; + $275 = $W; + $276 = ($275|0)>(1); + if ($276) { + $277 = $xp; + $278 = $bp; + $279 = $bsize; + $280 = $bp; + $281 = $bsize; + $282 = $mp; + $283 = $msize; + _mul_mod($277,$xsize,$278,$279,$280,$281,$282,$283,$karactx); + } + $284 = $bsize; + $285 = $esec; + $286 = (__gcry_mpi_alloc_limb_space($284,$285)|0); + HEAP32[$precomp>>2] = $286; + $base_u = $286; + $287 = $bsize; + HEAP32[$precomp_size>>2] = $287; + $max_u_size = $287; + $base_u_size = $287; + $_i4 = 0; + while(1) { + $288 = $_i4; + $289 = $bsize; + $290 = ($288|0)<($289|0); + if (!($290)) { + break; + } + $291 = $_i4; + $292 = $bp; + $293 = (($292) + ($291<<2)|0); + $294 = HEAP32[$293>>2]|0; + $295 = $_i4; + $296 = HEAP32[$precomp>>2]|0; + $297 = (($296) + ($295<<2)|0); + HEAP32[$297>>2] = $294; + $298 = $_i4; + $299 = (($298) + 1)|0; + $_i4 = $299; + } + $i = 1; + while(1) { + $300 = $i; + $301 = $W; + $302 = (($301) - 1)|0; + $303 = 1 << $302; + $304 = ($300|0)<($303|0); + if (!($304)) { + break; + } + $305 = HEAP32[$xsize>>2]|0; + $306 = $base_u_size; + $307 = ($305|0)>=($306|0); + $308 = $rp; + if ($307) { + $309 = $xp; + $310 = HEAP32[$xsize>>2]|0; + $311 = $base_u; + $312 = $base_u_size; + $313 = $mp; + $314 = $msize; + _mul_mod($308,$rsize,$309,$310,$311,$312,$313,$314,$karactx); + } else { + $315 = $base_u; + $316 = $base_u_size; + $317 = $xp; + $318 = HEAP32[$xsize>>2]|0; + $319 = $mp; + $320 = $msize; + _mul_mod($308,$rsize,$315,$316,$317,$318,$319,$320,$karactx); + } + $321 = HEAP32[$rsize>>2]|0; + $322 = $esec; + $323 = (__gcry_mpi_alloc_limb_space($321,$322)|0); + $324 = $i; + $325 = (($precomp) + ($324<<2)|0); + HEAP32[$325>>2] = $323; + $base_u = $323; + $326 = HEAP32[$rsize>>2]|0; + $327 = $i; + $328 = (($precomp_size) + ($327<<2)|0); + HEAP32[$328>>2] = $326; + $base_u_size = $326; + $329 = $max_u_size; + $330 = $base_u_size; + $331 = ($329|0)<($330|0); + if ($331) { + $332 = $base_u_size; + $max_u_size = $332; + } + $_i5 = 0; + while(1) { + $333 = $_i5; + $334 = HEAP32[$rsize>>2]|0; + $335 = ($333|0)<($334|0); + if (!($335)) { + break; + } + $336 = $_i5; + $337 = $rp; + $338 = (($337) + ($336<<2)|0); + $339 = HEAP32[$338>>2]|0; + $340 = $_i5; + $341 = $i; + $342 = (($precomp) + ($341<<2)|0); + $343 = HEAP32[$342>>2]|0; + $344 = (($343) + ($340<<2)|0); + HEAP32[$344>>2] = $339; + $345 = $_i5; + $346 = (($345) + 1)|0; + $_i5 = $346; + } + $347 = $i; + $348 = (($347) + 1)|0; + $i = $348; + } + $349 = $max_u_size; + $350 = $esec; + $351 = (__gcry_mpi_alloc_limb_space($349,$350)|0); + $base_u = $351; + $_i6 = 0; + while(1) { + $352 = $_i6; + $353 = $max_u_size; + $354 = ($352|0)<($353|0); + if (!($354)) { + break; + } + $355 = $_i6; + $356 = $base_u; + $357 = (($356) + ($355<<2)|0); + HEAP32[$357>>2] = 0; + $358 = $_i6; + $359 = (($358) + 1)|0; + $_i6 = $359; + } + $360 = $esize; + $361 = (($360) - 1)|0; + $i = $361; + $rsign = 0; + $362 = $W; + $363 = ($362|0)==(1); + L97: do { + if ($363) { + $364 = $bsize; + HEAP32[$rsize>>2] = $364; + } else { + $365 = $msize; + HEAP32[$rsize>>2] = $365; + $_i7 = 0; + while(1) { + $366 = $_i7; + $367 = HEAP32[$rsize>>2]|0; + $368 = ($366|0)<($367|0); + if (!($368)) { + break L97; + } + $369 = $_i7; + $370 = $rp; + $371 = (($370) + ($369<<2)|0); + HEAP32[$371>>2] = 0; + $372 = $_i7; + $373 = (($372) + 1)|0; + $_i7 = $373; + } + } + } while(0); + $_i8 = 0; + while(1) { + $374 = $_i8; + $375 = $bsize; + $376 = ($374|0)<($375|0); + if (!($376)) { + break; + } + $377 = $_i8; + $378 = $bp; + $379 = (($378) + ($377<<2)|0); + $380 = HEAP32[$379>>2]|0; + $381 = $_i8; + $382 = $rp; + $383 = (($382) + ($381<<2)|0); + HEAP32[$383>>2] = $380; + $384 = $_i8; + $385 = (($384) + 1)|0; + $_i8 = $385; + } + $386 = $i; + $387 = $ep; + $388 = (($387) + ($386<<2)|0); + $389 = HEAP32[$388>>2]|0; + $e = $389; + $390 = $e; + $__xr9 = $390; + $391 = $__xr9; + $392 = ($391>>>0)<(65536); + $393 = $__xr9; + $394 = ($393>>>0)<(256); + $395 = $394 ? 0 : 8; + $396 = ($393>>>0)<(16777216); + $397 = $396 ? 16 : 24; + $398 = $392 ? $395 : $397; + $__a10 = $398; + $399 = $__xr9; + $400 = $__a10; + $401 = $399 >>> $400; + $402 = (45829 + ($401)|0); + $403 = HEAP8[$402>>0]|0; + $404 = $403&255; + $405 = $__a10; + $406 = (($404) + ($405))|0; + $407 = (32 - ($406))|0; + $c = $407; + $408 = $e; + $409 = $c; + $410 = $408 << $409; + $411 = $410 << 1; + $e = $411; + $412 = $c; + $413 = (31 - ($412))|0; + $c = $413; + $j = 0; + while(1) { + $414 = $e; + $415 = ($414|0)==(0); + if ($415) { + $416 = $c; + $417 = $j; + $418 = (($417) + ($416))|0; + $j = $418; + $419 = $i; + $420 = (($419) + -1)|0; + $i = $420; + $421 = $i; + $422 = ($421|0)<(0); + if ($422) { + label = 86; + break; + } + $423 = $i; + $424 = $ep; + $425 = (($424) + ($423<<2)|0); + $426 = HEAP32[$425>>2]|0; + $e = $426; + $c = 32; + continue; + } + $427 = $e; + $__xr11 = $427; + $428 = $__xr11; + $429 = ($428>>>0)<(65536); + $430 = $__xr11; + $431 = ($430>>>0)<(256); + $432 = $431 ? 0 : 8; + $433 = ($430>>>0)<(16777216); + $434 = $433 ? 16 : 24; + $435 = $429 ? $432 : $434; + $__a12 = $435; + $436 = $__xr11; + $437 = $__a12; + $438 = $436 >>> $437; + $439 = (45829 + ($438)|0); + $440 = HEAP8[$439>>0]|0; + $441 = $440&255; + $442 = $__a12; + $443 = (($441) + ($442))|0; + $444 = (32 - ($443))|0; + $c0 = $444; + $445 = $e; + $446 = $c0; + $447 = $445 << $446; + $e = $447; + $448 = $c0; + $449 = $c; + $450 = (($449) - ($448))|0; + $c = $450; + $451 = $c0; + $452 = $j; + $453 = (($452) + ($451))|0; + $j = $453; + $454 = $c; + $455 = $W; + $456 = ($454|0)>=($455|0); + if ($456) { + $457 = $e; + $458 = $W; + $459 = (32 - ($458))|0; + $460 = $457 >>> $459; + $e0 = $460; + $461 = $e; + $462 = $W; + $463 = $461 << $462; + $e = $463; + $464 = $W; + $465 = $c; + $466 = (($465) - ($464))|0; + $c = $466; + } else { + $467 = $i; + $468 = (($467) + -1)|0; + $i = $468; + $469 = $i; + $470 = ($469|0)<(0); + if ($470) { + label = 91; + break; + } + $475 = $c; + $c0 = $475; + $476 = $e; + $477 = $W; + $478 = (32 - ($477))|0; + $479 = $476 >>> $478; + $480 = $i; + $481 = $ep; + $482 = (($481) + ($480<<2)|0); + $483 = HEAP32[$482>>2]|0; + $484 = $W; + $485 = (32 - ($484))|0; + $486 = $c0; + $487 = (($485) + ($486))|0; + $488 = $483 >>> $487; + $489 = $479 | $488; + $e0 = $489; + $490 = $i; + $491 = $ep; + $492 = (($491) + ($490<<2)|0); + $493 = HEAP32[$492>>2]|0; + $494 = $W; + $495 = $c0; + $496 = (($494) - ($495))|0; + $497 = $493 << $496; + $e = $497; + $498 = $W; + $499 = (32 - ($498))|0; + $500 = $c0; + $501 = (($499) + ($500))|0; + $c = $501; + } + $502 = $e0; + $__ctz_x = $502; + $503 = $__ctz_x; + $504 = $__ctz_x; + $505 = (0 - ($504))|0; + $506 = $503 & $505; + $__xr13 = $506; + $507 = $__xr13; + $508 = ($507>>>0)<(65536); + $509 = $__xr13; + $510 = ($509>>>0)<(256); + $511 = $510 ? 0 : 8; + $512 = ($509>>>0)<(16777216); + $513 = $512 ? 16 : 24; + $514 = $508 ? $511 : $513; + $__a14 = $514; + $515 = $__xr13; + $516 = $__a14; + $517 = $515 >>> $516; + $518 = (45829 + ($517)|0); + $519 = HEAP8[$518>>0]|0; + $520 = $519&255; + $521 = $__a14; + $522 = (($520) + ($521))|0; + $523 = (32 - ($522))|0; + $__ctz_c = $523; + $524 = $__ctz_c; + $525 = (31 - ($524))|0; + $c0 = $525; + $526 = $e0; + $527 = $c0; + $528 = $526 >>> $527; + $529 = $528 >>> 1; + $e0 = $529; + $530 = $W; + $531 = $c0; + $532 = (($530) - ($531))|0; + $533 = $j; + $534 = (($533) + ($532))|0; + $j = $534; + while(1) { + $535 = $j; + $536 = ($535|0)!=(0); + if (!($536)) { + break; + } + $537 = $xp; + $538 = $rp; + $539 = HEAP32[$rsize>>2]|0; + $540 = $rp; + $541 = HEAP32[$rsize>>2]|0; + $542 = $mp; + $543 = $msize; + _mul_mod($537,$xsize,$538,$539,$540,$541,$542,$543,$karactx); + $544 = $rp; + $tp = $544; + $545 = $xp; + $rp = $545; + $546 = $tp; + $xp = $546; + $547 = HEAP32[$xsize>>2]|0; + HEAP32[$rsize>>2] = $547; + $548 = $j; + $549 = (($548) + -1)|0; + $j = $549; + } + $base_u_size = 0; + $k = 0; + while(1) { + $550 = $k; + $551 = $W; + $552 = (($551) - 1)|0; + $553 = 1 << $552; + $554 = ($550|0)<($553|0); + if (!($554)) { + break; + } + $555 = $k; + $556 = (($precomp_size) + ($555<<2)|0); + $557 = HEAP32[$556>>2]|0; + $558 = ((($w)) + 4|0); + HEAP32[$558>>2] = $557; + HEAP32[$w>>2] = $557; + $559 = $k; + $560 = (($precomp_size) + ($559<<2)|0); + $561 = HEAP32[$560>>2]|0; + $562 = ((($u)) + 4|0); + HEAP32[$562>>2] = $561; + HEAP32[$u>>2] = $561; + $563 = ((($u)) + 8|0); + HEAP32[$563>>2] = 0; + $564 = ((($w)) + 8|0); + HEAP32[$564>>2] = 0; + $565 = ((($u)) + 12|0); + HEAP32[$565>>2] = 0; + $566 = ((($w)) + 12|0); + HEAP32[$566>>2] = 0; + $567 = $base_u; + $568 = ((($w)) + 16|0); + HEAP32[$568>>2] = $567; + $569 = $k; + $570 = (($precomp) + ($569<<2)|0); + $571 = HEAP32[$570>>2]|0; + $572 = ((($u)) + 16|0); + HEAP32[$572>>2] = $571; + $573 = $k; + $574 = $e0; + $575 = ($573|0)==($574|0); + $576 = $575&1; + (__gcry_mpi_set_cond($w,$u,$576)|0); + $577 = $k; + $578 = (($precomp_size) + ($577<<2)|0); + $579 = HEAP32[$578>>2]|0; + $580 = $k; + $581 = $e0; + $582 = ($580|0)==($581|0); + $583 = $582&1; + $584 = (0 - ($583))|0; + $585 = $579 & $584; + $586 = $base_u_size; + $587 = $586 | $585; + $base_u_size = $587; + $588 = $k; + $589 = (($588) + 1)|0; + $k = $589; + } + $590 = $xp; + $591 = $rp; + $592 = HEAP32[$rsize>>2]|0; + $593 = $base_u; + $594 = $base_u_size; + $595 = $mp; + $596 = $msize; + _mul_mod($590,$xsize,$591,$592,$593,$594,$595,$596,$karactx); + $597 = $rp; + $tp = $597; + $598 = $xp; + $rp = $598; + $599 = $tp; + $xp = $599; + $600 = HEAP32[$xsize>>2]|0; + HEAP32[$rsize>>2] = $600; + $601 = $c0; + $j = $601; + } + if ((label|0) == 86) { + $c = 0; + } + else if ((label|0) == 91) { + $471 = $e; + $472 = $c; + $473 = (32 - ($472))|0; + $474 = $471 >>> $473; + $e = $474; + } + $602 = $c; + $603 = ($602|0)!=(0); + if ($603) { + $604 = $c; + $605 = $j; + $606 = (($605) + ($604))|0; + $j = $606; + $607 = $e; + $__ctz_x15 = $607; + $608 = $__ctz_x15; + $609 = $__ctz_x15; + $610 = (0 - ($609))|0; + $611 = $608 & $610; + $__xr17 = $611; + $612 = $__xr17; + $613 = ($612>>>0)<(65536); + $614 = $__xr17; + $615 = ($614>>>0)<(256); + $616 = $615 ? 0 : 8; + $617 = ($614>>>0)<(16777216); + $618 = $617 ? 16 : 24; + $619 = $613 ? $616 : $618; + $__a18 = $619; + $620 = $__xr17; + $621 = $__a18; + $622 = $620 >>> $621; + $623 = (45829 + ($622)|0); + $624 = HEAP8[$623>>0]|0; + $625 = $624&255; + $626 = $__a18; + $627 = (($625) + ($626))|0; + $628 = (32 - ($627))|0; + $__ctz_c16 = $628; + $629 = $__ctz_c16; + $630 = (31 - ($629))|0; + $c = $630; + $631 = $e; + $632 = $c; + $633 = $631 >>> $632; + $e = $633; + $634 = $c; + $635 = $j; + $636 = (($635) - ($634))|0; + $j = $636; + } + while(1) { + $637 = $j; + $638 = (($637) + -1)|0; + $j = $638; + $639 = ($637|0)!=(0); + if (!($639)) { + break; + } + $640 = $xp; + $641 = $rp; + $642 = HEAP32[$rsize>>2]|0; + $643 = $rp; + $644 = HEAP32[$rsize>>2]|0; + $645 = $mp; + $646 = $msize; + _mul_mod($640,$xsize,$641,$642,$643,$644,$645,$646,$karactx); + $647 = $rp; + $tp = $647; + $648 = $xp; + $rp = $648; + $649 = $tp; + $xp = $649; + $650 = HEAP32[$xsize>>2]|0; + HEAP32[$rsize>>2] = $650; + } + $651 = $e; + $652 = ($651|0)!=(0); + L137: do { + if ($652) { + $base_u_size = 0; + $k = 0; + while(1) { + $653 = $k; + $654 = $W; + $655 = (($654) - 1)|0; + $656 = 1 << $655; + $657 = ($653|0)<($656|0); + if (!($657)) { + break; + } + $658 = $k; + $659 = (($precomp_size) + ($658<<2)|0); + $660 = HEAP32[$659>>2]|0; + $661 = ((($w19)) + 4|0); + HEAP32[$661>>2] = $660; + HEAP32[$w19>>2] = $660; + $662 = $k; + $663 = (($precomp_size) + ($662<<2)|0); + $664 = HEAP32[$663>>2]|0; + $665 = ((($u20)) + 4|0); + HEAP32[$665>>2] = $664; + HEAP32[$u20>>2] = $664; + $666 = ((($u20)) + 8|0); + HEAP32[$666>>2] = 0; + $667 = ((($w19)) + 8|0); + HEAP32[$667>>2] = 0; + $668 = ((($u20)) + 12|0); + HEAP32[$668>>2] = 0; + $669 = ((($w19)) + 12|0); + HEAP32[$669>>2] = 0; + $670 = $base_u; + $671 = ((($w19)) + 16|0); + HEAP32[$671>>2] = $670; + $672 = $k; + $673 = (($precomp) + ($672<<2)|0); + $674 = HEAP32[$673>>2]|0; + $675 = ((($u20)) + 16|0); + HEAP32[$675>>2] = $674; + $676 = $k; + $677 = $e; + $678 = $677 >>> 1; + $679 = ($676|0)==($678|0); + $680 = $679&1; + (__gcry_mpi_set_cond($w19,$u20,$680)|0); + $681 = $k; + $682 = (($precomp_size) + ($681<<2)|0); + $683 = HEAP32[$682>>2]|0; + $684 = $k; + $685 = $e; + $686 = $685 >>> 1; + $687 = ($684|0)==($686|0); + $688 = $687&1; + $689 = (0 - ($688))|0; + $690 = $683 & $689; + $691 = $base_u_size; + $692 = $691 | $690; + $base_u_size = $692; + $693 = $k; + $694 = (($693) + 1)|0; + $k = $694; + } + $695 = $xp; + $696 = $rp; + $697 = HEAP32[$rsize>>2]|0; + $698 = $base_u; + $699 = $base_u_size; + $700 = $mp; + $701 = $msize; + _mul_mod($695,$xsize,$696,$697,$698,$699,$700,$701,$karactx); + $702 = $rp; + $tp = $702; + $703 = $xp; + $rp = $703; + $704 = $tp; + $xp = $704; + $705 = HEAP32[$xsize>>2]|0; + HEAP32[$rsize>>2] = $705; + while(1) { + $706 = $c; + $707 = ($706|0)!=(0); + if (!($707)) { + break L137; + } + $708 = $xp; + $709 = $rp; + $710 = HEAP32[$rsize>>2]|0; + $711 = $rp; + $712 = HEAP32[$rsize>>2]|0; + $713 = $mp; + $714 = $msize; + _mul_mod($708,$xsize,$709,$710,$711,$712,$713,$714,$karactx); + $715 = $rp; + $tp = $715; + $716 = $xp; + $rp = $716; + $717 = $tp; + $xp = $717; + $718 = HEAP32[$xsize>>2]|0; + HEAP32[$rsize>>2] = $718; + $719 = $c; + $720 = (($719) + -1)|0; + $c = $720; + } + } + } while(0); + $721 = $mod_shift_cnt; + $722 = ($721|0)!=(0); + $723 = $0; + $724 = ((($723)) + 16|0); + $725 = HEAP32[$724>>2]|0; + $726 = $rp; + do { + if ($722) { + $727 = HEAP32[$rsize>>2]|0; + $728 = $mod_shift_cnt; + $729 = (__gcry_mpih_lshift($725,$726,$727,$728)|0); + $carry_limb = $729; + $730 = $0; + $731 = ((($730)) + 16|0); + $732 = HEAP32[$731>>2]|0; + $rp = $732; + $733 = $carry_limb; + $734 = ($733|0)!=(0); + if (!($734)) { + break; + } + $735 = $carry_limb; + $736 = HEAP32[$rsize>>2]|0; + $737 = $rp; + $738 = (($737) + ($736<<2)|0); + HEAP32[$738>>2] = $735; + $739 = HEAP32[$rsize>>2]|0; + $740 = (($739) + 1)|0; + HEAP32[$rsize>>2] = $740; + } else { + $741 = ($725|0)!=($726|0); + if (!($741)) { + break; + } + $_i21 = 0; + while(1) { + $742 = $_i21; + $743 = HEAP32[$rsize>>2]|0; + $744 = ($742|0)<($743|0); + if (!($744)) { + break; + } + $745 = $_i21; + $746 = $rp; + $747 = (($746) + ($745<<2)|0); + $748 = HEAP32[$747>>2]|0; + $749 = $_i21; + $750 = $0; + $751 = ((($750)) + 16|0); + $752 = HEAP32[$751>>2]|0; + $753 = (($752) + ($749<<2)|0); + HEAP32[$753>>2] = $748; + $754 = $_i21; + $755 = (($754) + 1)|0; + $_i21 = $755; + } + $756 = $0; + $757 = ((($756)) + 16|0); + $758 = HEAP32[$757>>2]|0; + $rp = $758; + } + } while(0); + $759 = HEAP32[$rsize>>2]|0; + $760 = $msize; + $761 = ($759|0)>=($760|0); + if ($761) { + $762 = $rp; + $763 = $msize; + $764 = (($762) + ($763<<2)|0); + $765 = $rp; + $766 = HEAP32[$rsize>>2]|0; + $767 = $mp; + $768 = $msize; + (__gcry_mpih_divrem($764,0,$765,$766,$767,$768)|0); + $769 = $msize; + HEAP32[$rsize>>2] = $769; + } + $770 = $mod_shift_cnt; + $771 = ($770|0)!=(0); + if ($771) { + $772 = $rp; + $773 = $rp; + $774 = HEAP32[$rsize>>2]|0; + $775 = $mod_shift_cnt; + (__gcry_mpih_rshift($772,$773,$774,$775)|0); + } + while(1) { + $776 = HEAP32[$rsize>>2]|0; + $777 = ($776|0)>(0); + if (!($777)) { + break; + } + $778 = HEAP32[$rsize>>2]|0; + $779 = (($778) - 1)|0; + $780 = $rp; + $781 = (($780) + ($779<<2)|0); + $782 = HEAP32[$781>>2]|0; + $783 = ($782|0)!=(0); + if ($783) { + break; + } + $784 = HEAP32[$rsize>>2]|0; + $785 = (($784) + -1)|0; + HEAP32[$rsize>>2] = $785; + } + __gcry_mpih_release_karatsuba_ctx($karactx); + $i = 0; + while(1) { + $786 = $i; + $787 = $W; + $788 = (($787) - 1)|0; + $789 = 1 << $788; + $790 = ($786|0)<($789|0); + if (!($790)) { + break; + } + $791 = $i; + $792 = (($precomp) + ($791<<2)|0); + $793 = HEAP32[$792>>2]|0; + $794 = $esec; + $795 = ($794|0)!=(0); + if ($795) { + $796 = $i; + $797 = (($precomp_size) + ($796<<2)|0); + $798 = HEAP32[$797>>2]|0; + $799 = $798; + } else { + $799 = 0; + } + __gcry_mpi_free_limb_space($793,$799); + $800 = $i; + $801 = (($800) + 1)|0; + $i = $801; + } + $802 = $base_u; + $803 = $esec; + $804 = ($803|0)!=(0); + $805 = $max_u_size; + $806 = $804 ? $805 : 0; + __gcry_mpi_free_limb_space($802,$806); + $807 = $negative_result; + $808 = ($807|0)!=(0); + $809 = HEAP32[$rsize>>2]|0; + $810 = ($809|0)!=(0); + $or$cond = $808 & $810; + L174: do { + if ($or$cond) { + $811 = $mod_shift_cnt; + $812 = ($811|0)!=(0); + if ($812) { + $813 = $mp; + $814 = $mp; + $815 = $msize; + $816 = $mod_shift_cnt; + (__gcry_mpih_rshift($813,$814,$815,$816)|0); + } + $817 = $rp; + $818 = $mp; + $819 = $msize; + $820 = $rp; + $821 = HEAP32[$rsize>>2]|0; + (__gcry_mpih_sub($817,$818,$819,$820,$821)|0); + $822 = $msize; + HEAP32[$rsize>>2] = $822; + $823 = $msign; + $rsign = $823; + while(1) { + $824 = HEAP32[$rsize>>2]|0; + $825 = ($824|0)>(0); + if (!($825)) { + break L174; + } + $826 = HEAP32[$rsize>>2]|0; + $827 = (($826) - 1)|0; + $828 = $rp; + $829 = (($828) + ($827<<2)|0); + $830 = HEAP32[$829>>2]|0; + $831 = ($830|0)!=(0); + if ($831) { + break L174; + } + $832 = HEAP32[$rsize>>2]|0; + $833 = (($832) + -1)|0; + HEAP32[$rsize>>2] = $833; + } + } + } while(0); + $834 = $0; + $835 = ((($834)) + 16|0); + $836 = HEAP32[$835>>2]|0; + $837 = $rp; + $838 = ($836|0)==($837|0); + if ($838) { + $839 = HEAP32[$rsize>>2]|0; + $840 = $0; + $841 = ((($840)) + 4|0); + HEAP32[$841>>2] = $839; + $842 = $rsign; + $843 = $0; + $844 = ((($843)) + 8|0); + HEAP32[$844>>2] = $842; + break; + } else { + __gcry_assert_failed(46121,46096,786,46106); + // unreachable; + } + } else { + $64 = $msize; + $65 = ($64|0)==(1); + if ($65) { + $66 = $3; + $67 = ((($66)) + 16|0); + $68 = HEAP32[$67>>2]|0; + $69 = HEAP32[$68>>2]|0; + $70 = ($69|0)==(1); + $71 = $70; + } else { + $71 = 0; + } + $72 = $71 ? 0 : 1; + $73 = $0; + $74 = ((($73)) + 4|0); + HEAP32[$74>>2] = $72; + $75 = $0; + $76 = ((($75)) + 4|0); + $77 = HEAP32[$76>>2]|0; + $78 = ($77|0)!=(0); + if ($78) { + $79 = $0; + $80 = HEAP32[$79>>2]|0; + $81 = ($80|0)<(1); + if ($81) { + $82 = $0; + __gcry_mpi_resize($82,1); + } + $83 = $0; + $84 = ((($83)) + 16|0); + $85 = HEAP32[$84>>2]|0; + $rp = $85; + $86 = $rp; + HEAP32[$86>>2] = 1; + } + $87 = $0; + $88 = ((($87)) + 8|0); + HEAP32[$88>>2] = 0; + } + } while(0); + $845 = $mp_marker; + $846 = ($845|0)!=(0|0); + if ($846) { + $847 = $mp_marker; + $848 = $mp_nlimbs; + __gcry_mpi_free_limb_space($847,$848); + } + $849 = $bp_marker; + $850 = ($849|0)!=(0|0); + if ($850) { + $851 = $bp_marker; + $852 = $bp_nlimbs; + __gcry_mpi_free_limb_space($851,$852); + } + $853 = $ep_marker; + $854 = ($853|0)!=(0|0); + if ($854) { + $855 = $ep_marker; + $856 = $ep_nlimbs; + __gcry_mpi_free_limb_space($855,$856); + } + $857 = $xp_marker; + $858 = ($857|0)!=(0|0); + if (!($858)) { + STACKTOP = sp;return; + } + $859 = $xp_marker; + $860 = $xp_nlimbs; + __gcry_mpi_free_limb_space($859,$860); + STACKTOP = sp;return; +} +function _mul_mod($xp,$xsize_p,$rp,$rsize,$sp,$ssize,$mp,$msize,$karactx_p) { + $xp = $xp|0; + $xsize_p = $xsize_p|0; + $rp = $rp|0; + $rsize = $rsize|0; + $sp = $sp|0; + $ssize = $ssize|0; + $mp = $mp|0; + $msize = $msize|0; + $karactx_p = $karactx_p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $xp; + $1 = $xsize_p; + $2 = $rp; + $3 = $rsize; + $4 = $sp; + $5 = $ssize; + $6 = $mp; + $7 = $msize; + $8 = $karactx_p; + $9 = $5; + $10 = ($9|0)<(16); + $11 = $0; + $12 = $2; + $13 = $3; + $14 = $4; + $15 = $5; + if ($10) { + (__gcry_mpih_mul($11,$12,$13,$14,$15)|0); + } else { + $16 = $8; + __gcry_mpih_mul_karatsuba_case($11,$12,$13,$14,$15,$16); + } + $17 = $3; + $18 = $5; + $19 = (($17) + ($18))|0; + $20 = $7; + $21 = ($19|0)>($20|0); + if ($21) { + $22 = $0; + $23 = $7; + $24 = (($22) + ($23<<2)|0); + $25 = $0; + $26 = $3; + $27 = $5; + $28 = (($26) + ($27))|0; + $29 = $6; + $30 = $7; + (__gcry_mpih_divrem($24,0,$25,$28,$29,$30)|0); + $31 = $7; + $32 = $1; + HEAP32[$32>>2] = $31; + STACKTOP = sp;return; + } else { + $33 = $3; + $34 = $5; + $35 = (($33) + ($34))|0; + $36 = $1; + HEAP32[$36>>2] = $35; + STACKTOP = sp;return; + } +} +function __gcry_mpi_trailing_zeros($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $__a = 0, $__ctz_c = 0, $__ctz_x = 0, $__xr = 0, $alimb = 0, $count = 0, $n = 0, $nn = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $count = 0; + $n = 0; + while(1) { + $1 = $n; + $2 = $0; + $3 = ((($2)) + 4|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($1>>>0)<($4>>>0); + if (!($5)) { + label = 6; + break; + } + $6 = $n; + $7 = $0; + $8 = ((($7)) + 16|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + ($6<<2)|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)!=(0); + if ($12) { + break; + } + $46 = $count; + $47 = (($46) + 32)|0; + $count = $47; + $48 = $n; + $49 = (($48) + 1)|0; + $n = $49; + } + if ((label|0) == 6) { + $50 = $count; + STACKTOP = sp;return ($50|0); + } + $13 = $n; + $14 = $0; + $15 = ((($14)) + 16|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + ($13<<2)|0); + $18 = HEAP32[$17>>2]|0; + $alimb = $18; + $19 = $alimb; + $__ctz_x = $19; + $20 = $__ctz_x; + $21 = $__ctz_x; + $22 = (0 - ($21))|0; + $23 = $20 & $22; + $__xr = $23; + $24 = $__xr; + $25 = ($24>>>0)<(65536); + $26 = $__xr; + $27 = ($26>>>0)<(256); + $28 = $27 ? 0 : 8; + $29 = ($26>>>0)<(16777216); + $30 = $29 ? 16 : 24; + $31 = $25 ? $28 : $30; + $__a = $31; + $32 = $__xr; + $33 = $__a; + $34 = $32 >>> $33; + $35 = (45829 + ($34)|0); + $36 = HEAP8[$35>>0]|0; + $37 = $36&255; + $38 = $__a; + $39 = (($37) + ($38))|0; + $40 = (32 - ($39))|0; + $__ctz_c = $40; + $41 = $__ctz_c; + $42 = (31 - ($41))|0; + $nn = $42; + $43 = $nn; + $44 = $count; + $45 = (($44) + ($43))|0; + $count = $45; + $50 = $count; + STACKTOP = sp;return ($50|0); +} +function __gcry_mpi_get_buffer($a,$fill_le,$r_nbytes,$sign) { + $a = $a|0; + $fill_le = $fill_le|0; + $r_nbytes = $r_nbytes|0; + $sign = $sign|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $fill_le; + $2 = $r_nbytes; + $3 = $sign; + $4 = $0; + $5 = $1; + $6 = $2; + $7 = $3; + $8 = (_do_get_buffer($4,$5,0,$6,$7,0)|0); + STACKTOP = sp;return ($8|0); +} +function _do_get_buffer($a,$fill_le,$extraalloc,$nbytes,$sign,$force_secure) { + $a = $a|0; + $fill_le = $fill_le|0; + $extraalloc = $extraalloc|0; + $nbytes = $nbytes|0; + $sign = $sign|0; + $force_secure = $force_secure|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; + var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; + var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $alimb = 0; + var $buffer = 0, $i = 0, $length = 0, $n = 0, $n2 = 0, $p = 0, $retbuffer = 0, $tmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $a; + $2 = $fill_le; + $3 = $extraalloc; + $4 = $nbytes; + $5 = $sign; + $6 = $force_secure; + $7 = $5; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = $1; + $10 = ((($9)) + 8|0); + $11 = HEAP32[$10>>2]|0; + $12 = $5; + HEAP32[$12>>2] = $11; + } + $13 = $1; + $14 = ((($13)) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = $15<<2; + $17 = $4; + HEAP32[$17>>2] = $16; + $18 = $4; + $19 = HEAP32[$18>>2]|0; + $20 = ($19|0)!=(0); + if ($20) { + $21 = $4; + $22 = HEAP32[$21>>2]|0; + $23 = $22; + } else { + $23 = 1; + } + $n = $23; + $24 = $n; + $25 = $2; + $26 = ($24>>>0)<($25>>>0); + if ($26) { + $27 = $2; + $n = $27; + } + $28 = $3; + $29 = ($28|0)<(0); + $30 = $n; + $31 = $3; + if ($29) { + $32 = (0 - ($31))|0; + $33 = (($30) + ($32))|0; + $n2 = $33; + } else { + $34 = (($30) + ($31))|0; + $n2 = $34; + } + $35 = $6; + $36 = ($35|0)!=(0); + do { + if ($36) { + label = 13; + } else { + $37 = $1; + $38 = ($37|0)!=(0|0); + if ($38) { + $39 = $1; + $40 = ((($39)) + 12|0); + $41 = HEAP32[$40>>2]|0; + $42 = $41 & 1; + $43 = ($42|0)!=(0); + if ($43) { + label = 13; + break; + } + } + $46 = $n2; + $47 = (__gcry_malloc($46)|0); + $48 = $47; + } + } while(0); + if ((label|0) == 13) { + $44 = $n2; + $45 = (__gcry_malloc_secure($44)|0); + $48 = $45; + } + $retbuffer = $48; + $49 = $retbuffer; + $50 = ($49|0)!=(0|0); + if (!($50)) { + $0 = 0; + $158 = $0; + STACKTOP = sp;return ($158|0); + } + $51 = $3; + $52 = ($51|0)<(0); + $53 = $retbuffer; + if ($52) { + $54 = $3; + $55 = (0 - ($54))|0; + $56 = (($53) + ($55)|0); + $buffer = $56; + } else { + $buffer = $53; + } + $57 = $buffer; + $p = $57; + $58 = $1; + $59 = ((($58)) + 4|0); + $60 = HEAP32[$59>>2]|0; + $61 = (($60) - 1)|0; + $i = $61; + while(1) { + $62 = $i; + $63 = ($62|0)>=(0); + if (!($63)) { + break; + } + $64 = $i; + $65 = $1; + $66 = ((($65)) + 16|0); + $67 = HEAP32[$66>>2]|0; + $68 = (($67) + ($64<<2)|0); + $69 = HEAP32[$68>>2]|0; + $alimb = $69; + $70 = $alimb; + $71 = $70 >>> 24; + $72 = $71&255; + $73 = $p; + $74 = ((($73)) + 1|0); + $p = $74; + HEAP8[$73>>0] = $72; + $75 = $alimb; + $76 = $75 >>> 16; + $77 = $76&255; + $78 = $p; + $79 = ((($78)) + 1|0); + $p = $79; + HEAP8[$78>>0] = $77; + $80 = $alimb; + $81 = $80 >>> 8; + $82 = $81&255; + $83 = $p; + $84 = ((($83)) + 1|0); + $p = $84; + HEAP8[$83>>0] = $82; + $85 = $alimb; + $86 = $85&255; + $87 = $p; + $88 = ((($87)) + 1|0); + $p = $88; + HEAP8[$87>>0] = $86; + $89 = $i; + $90 = (($89) + -1)|0; + $i = $90; + } + $91 = $2; + $92 = ($91|0)!=(0); + if ($92) { + $93 = $4; + $94 = HEAP32[$93>>2]|0; + $length = $94; + $i = 0; + while(1) { + $95 = $i; + $96 = $length; + $97 = (($96>>>0) / 2)&-1; + $98 = ($95>>>0)<($97>>>0); + if (!($98)) { + break; + } + $99 = $i; + $100 = $buffer; + $101 = (($100) + ($99)|0); + $102 = HEAP8[$101>>0]|0; + $103 = $102&255; + $tmp = $103; + $104 = $length; + $105 = (($104) - 1)|0; + $106 = $i; + $107 = (($105) - ($106))|0; + $108 = $buffer; + $109 = (($108) + ($107)|0); + $110 = HEAP8[$109>>0]|0; + $111 = $i; + $112 = $buffer; + $113 = (($112) + ($111)|0); + HEAP8[$113>>0] = $110; + $114 = $tmp; + $115 = $114&255; + $116 = $length; + $117 = (($116) - 1)|0; + $118 = $i; + $119 = (($117) - ($118))|0; + $120 = $buffer; + $121 = (($120) + ($119)|0); + HEAP8[$121>>0] = $115; + $122 = $i; + $123 = (($122) + 1)|0; + $i = $123; + } + $124 = $buffer; + $125 = $length; + $126 = (($124) + ($125)|0); + $p = $126; + while(1) { + $127 = $length; + $128 = $2; + $129 = ($127>>>0)<($128>>>0); + if (!($129)) { + break; + } + $130 = $p; + $131 = ((($130)) + 1|0); + $p = $131; + HEAP8[$130>>0] = 0; + $132 = $length; + $133 = (($132) + 1)|0; + $length = $133; + } + $134 = $length; + $135 = $4; + HEAP32[$135>>2] = $134; + $136 = $retbuffer; + $0 = $136; + $158 = $0; + STACKTOP = sp;return ($158|0); + } else { + $137 = $buffer; + $p = $137; + while(1) { + $138 = $4; + $139 = HEAP32[$138>>2]|0; + $140 = ($139|0)!=(0); + if (!($140)) { + break; + } + $141 = $p; + $142 = HEAP8[$141>>0]|0; + $143 = ($142<<24>>24)!=(0); + $144 = $143 ^ 1; + if (!($144)) { + break; + } + $145 = $p; + $146 = ((($145)) + 1|0); + $p = $146; + $147 = $4; + $148 = HEAP32[$147>>2]|0; + $149 = (($148) + -1)|0; + HEAP32[$147>>2] = $149; + } + $150 = $p; + $151 = $buffer; + $152 = ($150|0)!=($151|0); + if ($152) { + $153 = $buffer; + $154 = $p; + $155 = $4; + $156 = HEAP32[$155>>2]|0; + _memmove(($153|0),($154|0),($156|0))|0; + } + $157 = $retbuffer; + $0 = $157; + $158 = $0; + STACKTOP = sp;return ($158|0); + } + return (0)|0; +} +function __gcry_mpi_get_buffer_extra($a,$fill_le,$extraalloc,$r_nbytes,$sign) { + $a = $a|0; + $fill_le = $fill_le|0; + $extraalloc = $extraalloc|0; + $r_nbytes = $r_nbytes|0; + $sign = $sign|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $fill_le; + $2 = $extraalloc; + $3 = $r_nbytes; + $4 = $sign; + $5 = $0; + $6 = $1; + $7 = $2; + $8 = $3; + $9 = $4; + $10 = (_do_get_buffer($5,$6,$7,$8,$9,0)|0); + STACKTOP = sp;return ($10|0); +} +function __gcry_mpi_set_buffer($a,$buffer_arg,$nbytes,$sign) { + $a = $a|0; + $buffer_arg = $buffer_arg|0; + $nbytes = $nbytes|0; + $sign = $sign|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $12 = 0, $13 = 0; + var $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $alimb = 0, $buffer = 0, $i = 0, $nlimbs = 0, $p = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $buffer_arg; + $2 = $nbytes; + $3 = $sign; + $4 = $1; + $buffer = $4; + $5 = $0; + $6 = ($5|0)!=(0|0); + if ($6) { + $7 = $0; + $8 = ((($7)) + 12|0); + $9 = HEAP32[$8>>2]|0; + $10 = $9 & 16; + $11 = ($10|0)!=(0); + if ($11) { + __gcry_mpi_immutable_failed(); + STACKTOP = sp;return; + } + } + $12 = $2; + $13 = (($12) + 4)|0; + $14 = (($13) - 1)|0; + $15 = (($14>>>0) / 4)&-1; + $nlimbs = $15; + $16 = $0; + $17 = HEAP32[$16>>2]|0; + $18 = $nlimbs; + $19 = ($17|0)<($18|0); + if ($19) { + $20 = $0; + $21 = $nlimbs; + __gcry_mpi_resize($20,$21); + } + $22 = $3; + $23 = $0; + $24 = ((($23)) + 8|0); + HEAP32[$24>>2] = $22; + $i = 0; + $25 = $buffer; + $26 = $2; + $27 = (($25) + ($26)|0); + $28 = ((($27)) + -1|0); + $p = $28; + while(1) { + $29 = $p; + $30 = $buffer; + $31 = ((($30)) + 4|0); + $32 = ($29>>>0)>=($31>>>0); + $33 = $p; + if (!($32)) { + break; + } + $34 = ((($33)) + -1|0); + $p = $34; + $35 = HEAP8[$33>>0]|0; + $36 = $35&255; + $alimb = $36; + $37 = $p; + $38 = ((($37)) + -1|0); + $p = $38; + $39 = HEAP8[$37>>0]|0; + $40 = $39&255; + $41 = $40 << 8; + $42 = $alimb; + $43 = $42 | $41; + $alimb = $43; + $44 = $p; + $45 = ((($44)) + -1|0); + $p = $45; + $46 = HEAP8[$44>>0]|0; + $47 = $46&255; + $48 = $47 << 16; + $49 = $alimb; + $50 = $49 | $48; + $alimb = $50; + $51 = $p; + $52 = ((($51)) + -1|0); + $p = $52; + $53 = HEAP8[$51>>0]|0; + $54 = $53&255; + $55 = $54 << 24; + $56 = $alimb; + $57 = $56 | $55; + $alimb = $57; + $58 = $alimb; + $59 = $i; + $60 = (($59) + 1)|0; + $i = $60; + $61 = $0; + $62 = ((($61)) + 16|0); + $63 = HEAP32[$62>>2]|0; + $64 = (($63) + ($59<<2)|0); + HEAP32[$64>>2] = $58; + } + $65 = $buffer; + $66 = ($33>>>0)>=($65>>>0); + if ($66) { + $67 = $p; + $68 = ((($67)) + -1|0); + $p = $68; + $69 = HEAP8[$67>>0]|0; + $70 = $69&255; + $alimb = $70; + $71 = $p; + $72 = $buffer; + $73 = ($71>>>0)>=($72>>>0); + if ($73) { + $74 = $p; + $75 = ((($74)) + -1|0); + $p = $75; + $76 = HEAP8[$74>>0]|0; + $77 = $76&255; + $78 = $77 << 8; + $79 = $alimb; + $80 = $79 | $78; + $alimb = $80; + } + $81 = $p; + $82 = $buffer; + $83 = ($81>>>0)>=($82>>>0); + if ($83) { + $84 = $p; + $85 = ((($84)) + -1|0); + $p = $85; + $86 = HEAP8[$84>>0]|0; + $87 = $86&255; + $88 = $87 << 16; + $89 = $alimb; + $90 = $89 | $88; + $alimb = $90; + } + $91 = $p; + $92 = $buffer; + $93 = ($91>>>0)>=($92>>>0); + if ($93) { + $94 = $p; + $95 = ((($94)) + -1|0); + $p = $95; + $96 = HEAP8[$94>>0]|0; + $97 = $96&255; + $98 = $97 << 24; + $99 = $alimb; + $100 = $99 | $98; + $alimb = $100; + } + $101 = $alimb; + $102 = $i; + $103 = (($102) + 1)|0; + $i = $103; + $104 = $0; + $105 = ((($104)) + 16|0); + $106 = HEAP32[$105>>2]|0; + $107 = (($106) + ($102<<2)|0); + HEAP32[$107>>2] = $101; + } + $108 = $i; + $109 = $0; + $110 = ((($109)) + 4|0); + HEAP32[$110>>2] = $108; + $111 = $i; + $112 = $nlimbs; + $113 = ($111|0)==($112|0); + if ($113) { + STACKTOP = sp;return; + } else { + __gcry_assert_failed(46134,46146,377,46157); + // unreachable; + } +} +function __gcry_mpi_scan($ret_mpi,$format,$buffer_arg,$buflen,$nscanned) { + $ret_mpi = $ret_mpi|0; + $format = $format|0; + $buffer_arg = $buffer_arg|0; + $buflen = $buflen|0; + $nscanned = $nscanned|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $a = 0, $buffer = 0, $len = 0, $n = 0, $or$cond = 0; + var $or$cond3 = 0, $s = 0, $s1 = 0, $secure = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $len = sp + 16|0; + $1 = $ret_mpi; + $2 = $format; + $3 = $buffer_arg; + $4 = $buflen; + $5 = $nscanned; + $6 = $3; + $buffer = $6; + $a = 0; + $7 = $buffer; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = $buffer; + $10 = (__gcry_is_secure($9)|0); + $11 = ($10|0)!=(0); + $13 = $11; + } else { + $13 = 0; + } + $12 = $13&1; + $secure = $12; + $14 = $2; + $15 = ($14|0)==(3); + if ($15) { + HEAP32[$len>>2] = 0; + } else { + $16 = $4; + HEAP32[$len>>2] = $16; + } + $17 = $2; + $18 = ($17|0)==(1); + if ($18) { + $19 = $buffer; + $s = $19; + $20 = $secure; + $21 = ($20|0)!=(0); + $22 = HEAP32[$len>>2]|0; + $23 = (($22) + 4)|0; + $24 = (($23) - 1)|0; + $25 = (($24>>>0) / 4)&-1; + if ($21) { + $26 = (__gcry_mpi_alloc_secure($25)|0); + $28 = $26; + } else { + $27 = (__gcry_mpi_alloc($25)|0); + $28 = $27; + } + $a = $28; + $29 = HEAP32[$len>>2]|0; + $30 = ($29|0)!=(0); + if ($30) { + $31 = $a; + $32 = $s; + $33 = HEAP32[$len>>2]|0; + __gcry_mpi_set_buffer($31,$32,$33,0); + $34 = $s; + $35 = HEAP8[$34>>0]|0; + $36 = $35&255; + $37 = $36 & 128; + $38 = ($37|0)!=(0); + $39 = $38 ^ 1; + $40 = $39 ^ 1; + $41 = $40&1; + $42 = $a; + $43 = ((($42)) + 8|0); + HEAP32[$43>>2] = $41; + $44 = $a; + $45 = ((($44)) + 8|0); + $46 = HEAP32[$45>>2]|0; + $47 = ($46|0)!=(0); + if ($47) { + $48 = $a; + _onecompl($48); + $49 = $a; + $50 = $a; + __gcry_mpi_add_ui($49,$50,1); + $51 = $a; + $52 = ((($51)) + 8|0); + HEAP32[$52>>2] = 1; + } + } + $53 = $1; + $54 = ($53|0)!=(0|0); + $55 = $a; + if ($54) { + __gcry_mpi_normalize($55); + $56 = $a; + $57 = $1; + HEAP32[$57>>2] = $56; + } else { + __gcry_mpi_free($55); + } + $58 = $5; + $59 = ($58|0)!=(0|0); + if ($59) { + $60 = HEAP32[$len>>2]|0; + $61 = $5; + HEAP32[$61>>2] = $60; + } + $0 = 0; + $214 = $0; + STACKTOP = sp;return ($214|0); + } + $62 = $2; + $63 = ($62|0)==(5); + if ($63) { + $64 = $secure; + $65 = ($64|0)!=(0); + $66 = HEAP32[$len>>2]|0; + $67 = (($66) + 4)|0; + $68 = (($67) - 1)|0; + $69 = (($68>>>0) / 4)&-1; + if ($65) { + $70 = (__gcry_mpi_alloc_secure($69)|0); + $72 = $70; + } else { + $71 = (__gcry_mpi_alloc($69)|0); + $72 = $71; + } + $a = $72; + $73 = HEAP32[$len>>2]|0; + $74 = ($73|0)!=(0); + if ($74) { + $75 = $a; + $76 = $buffer; + $77 = HEAP32[$len>>2]|0; + __gcry_mpi_set_buffer($75,$76,$77,0); + } + $78 = $1; + $79 = ($78|0)!=(0|0); + $80 = $a; + if ($79) { + __gcry_mpi_normalize($80); + $81 = $a; + $82 = $1; + HEAP32[$82>>2] = $81; + } else { + __gcry_mpi_free($80); + } + $83 = $5; + $84 = ($83|0)!=(0|0); + if ($84) { + $85 = HEAP32[$len>>2]|0; + $86 = $5; + HEAP32[$86>>2] = $85; + } + $0 = 0; + $214 = $0; + STACKTOP = sp;return ($214|0); + } + $87 = $2; + $88 = ($87|0)==(2); + if ($88) { + $89 = $buffer; + $90 = $secure; + $91 = (_mpi_read_from_buffer($89,$len,$90)|0); + $a = $91; + $92 = $5; + $93 = ($92|0)!=(0|0); + if ($93) { + $94 = HEAP32[$len>>2]|0; + $95 = $5; + HEAP32[$95>>2] = $94; + } + $96 = $1; + $97 = ($96|0)!=(0|0); + $98 = $a; + $99 = ($98|0)!=(0|0); + $or$cond = $97 & $99; + $100 = $a; + if ($or$cond) { + __gcry_mpi_normalize($100); + $101 = $a; + $102 = $1; + HEAP32[$102>>2] = $101; + } else { + $103 = ($100|0)!=(0|0); + if ($103) { + $104 = $a; + __gcry_mpi_free($104); + $a = 0; + } + } + $105 = $a; + $106 = ($105|0)!=(0|0); + $107 = $106 ? 0 : 65; + $0 = $107; + $214 = $0; + STACKTOP = sp;return ($214|0); + } + $108 = $2; + $109 = ($108|0)==(3); + if (!($109)) { + $190 = $2; + $191 = ($190|0)==(4); + if (!($191)) { + $0 = 45; + $214 = $0; + STACKTOP = sp;return ($214|0); + } + $192 = $4; + $193 = ($192|0)!=(0); + if ($193) { + $0 = 45; + $214 = $0; + STACKTOP = sp;return ($214|0); + } + $194 = $secure; + $195 = ($194|0)!=(0); + if ($195) { + $196 = (__gcry_mpi_alloc_secure(0)|0); + $198 = $196; + } else { + $197 = (__gcry_mpi_alloc(0)|0); + $198 = $197; + } + $a = $198; + $199 = $a; + $200 = $buffer; + $201 = (_mpi_fromstr($199,$200)|0); + $202 = ($201|0)!=(0); + if ($202) { + $203 = $a; + __gcry_mpi_free($203); + $0 = 65; + $214 = $0; + STACKTOP = sp;return ($214|0); + } + $204 = $1; + $205 = ($204|0)!=(0|0); + $206 = $a; + if ($205) { + __gcry_mpi_normalize($206); + $207 = $a; + $208 = $1; + HEAP32[$208>>2] = $207; + } else { + __gcry_mpi_free($206); + } + $209 = $5; + $210 = ($209|0)!=(0|0); + if ($210) { + $211 = $buffer; + $212 = (_strlen($211)|0); + $213 = $5; + HEAP32[$213>>2] = $212; + } + $0 = 0; + $214 = $0; + STACKTOP = sp;return ($214|0); + } + $110 = $buffer; + $s1 = $110; + $111 = HEAP32[$len>>2]|0; + $112 = ($111|0)!=(0); + $113 = HEAP32[$len>>2]|0; + $114 = ($113>>>0)<(4); + $or$cond3 = $112 & $114; + if ($or$cond3) { + $0 = 66; + $214 = $0; + STACKTOP = sp;return ($214|0); + } + $115 = $s1; + $116 = HEAP8[$115>>0]|0; + $117 = $116&255; + $118 = $117 << 24; + $119 = $s1; + $120 = ((($119)) + 1|0); + $121 = HEAP8[$120>>0]|0; + $122 = $121&255; + $123 = $122 << 16; + $124 = $118 | $123; + $125 = $s1; + $126 = ((($125)) + 2|0); + $127 = HEAP8[$126>>0]|0; + $128 = $127&255; + $129 = $128 << 8; + $130 = $124 | $129; + $131 = $s1; + $132 = ((($131)) + 3|0); + $133 = HEAP8[$132>>0]|0; + $134 = $133&255; + $135 = $130 | $134; + $n = $135; + $136 = $s1; + $137 = ((($136)) + 4|0); + $s1 = $137; + $138 = HEAP32[$len>>2]|0; + $139 = ($138|0)!=(0); + if ($139) { + $140 = HEAP32[$len>>2]|0; + $141 = (($140) - 4)|0; + HEAP32[$len>>2] = $141; + } + $142 = HEAP32[$len>>2]|0; + $143 = ($142|0)!=(0); + if ($143) { + $144 = $n; + $145 = HEAP32[$len>>2]|0; + $146 = ($144>>>0)>($145>>>0); + if ($146) { + $0 = 67; + $214 = $0; + STACKTOP = sp;return ($214|0); + } + } + $147 = $secure; + $148 = ($147|0)!=(0); + $149 = $n; + $150 = (($149) + 4)|0; + $151 = (($150) - 1)|0; + $152 = (($151>>>0) / 4)&-1; + if ($148) { + $153 = (__gcry_mpi_alloc_secure($152)|0); + $155 = $153; + } else { + $154 = (__gcry_mpi_alloc($152)|0); + $155 = $154; + } + $a = $155; + $156 = $n; + $157 = ($156|0)!=(0); + if ($157) { + $158 = $a; + $159 = $s1; + $160 = $n; + __gcry_mpi_set_buffer($158,$159,$160,0); + $161 = $s1; + $162 = HEAP8[$161>>0]|0; + $163 = $162&255; + $164 = $163 & 128; + $165 = ($164|0)!=(0); + $166 = $165 ^ 1; + $167 = $166 ^ 1; + $168 = $167&1; + $169 = $a; + $170 = ((($169)) + 8|0); + HEAP32[$170>>2] = $168; + $171 = $a; + $172 = ((($171)) + 8|0); + $173 = HEAP32[$172>>2]|0; + $174 = ($173|0)!=(0); + if ($174) { + $175 = $a; + _onecompl($175); + $176 = $a; + $177 = $a; + __gcry_mpi_add_ui($176,$177,1); + $178 = $a; + $179 = ((($178)) + 8|0); + HEAP32[$179>>2] = 1; + } + } + $180 = $5; + $181 = ($180|0)!=(0|0); + if ($181) { + $182 = $n; + $183 = (($182) + 4)|0; + $184 = $5; + HEAP32[$184>>2] = $183; + } + $185 = $1; + $186 = ($185|0)!=(0|0); + $187 = $a; + if ($186) { + __gcry_mpi_normalize($187); + $188 = $a; + $189 = $1; + HEAP32[$189>>2] = $188; + } else { + __gcry_mpi_free($187); + } + $0 = 0; + $214 = $0; + STACKTOP = sp;return ($214|0); +} +function _onecompl($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ap = 0, $i = 0, $n = 0, $nbits = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $0; + $2 = (__gcry_mpi_get_nbits($1)|0); + $nbits = $2; + $3 = $0; + $4 = ($3|0)!=(0|0); + if ($4) { + $5 = $0; + $6 = ((($5)) + 12|0); + $7 = HEAP32[$6>>2]|0; + $8 = $7 & 16; + $9 = ($8|0)!=(0); + if ($9) { + __gcry_mpi_immutable_failed(); + STACKTOP = sp;return; + } + } + $10 = $0; + __gcry_mpi_normalize($10); + $11 = $0; + $12 = ((($11)) + 16|0); + $13 = HEAP32[$12>>2]|0; + $ap = $13; + $14 = $0; + $15 = ((($14)) + 4|0); + $16 = HEAP32[$15>>2]|0; + $n = $16; + $i = 0; + while(1) { + $17 = $i; + $18 = $n; + $19 = ($17>>>0)<($18>>>0); + if (!($19)) { + break; + } + $20 = $i; + $21 = $ap; + $22 = (($21) + ($20<<2)|0); + $23 = HEAP32[$22>>2]|0; + $24 = $23 ^ -1; + HEAP32[$22>>2] = $24; + $25 = $i; + $26 = (($25) + 1)|0; + $i = $26; + } + $27 = $0; + $28 = ((($27)) + 8|0); + HEAP32[$28>>2] = 0; + $29 = $0; + $30 = $nbits; + $31 = (($30) - 1)|0; + __gcry_mpi_clear_highbit($29,$31); + STACKTOP = sp;return; +} +function _mpi_read_from_buffer($buffer,$ret_nread,$secure) { + $buffer = $buffer|0; + $ret_nread = $ret_nread|0; + $secure = $secure|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $8 = 0, $9 = 0, $a = 0, $i = 0, $j = 0, $nbits = 0, $nbytes = 0, $nlimbs = 0; + var $nread = 0, $val = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $buffer; + $1 = $ret_nread; + $2 = $secure; + $nread = 0; + $val = 0; + $3 = $1; + $4 = HEAP32[$3>>2]|0; + $5 = ($4>>>0)<(2); + if ($5) { + $71 = $nread; + $72 = $1; + HEAP32[$72>>2] = $71; + $73 = $val; + STACKTOP = sp;return ($73|0); + } + $6 = $0; + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = $8 << 8; + $10 = $0; + $11 = ((($10)) + 1|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = $9 | $13; + $nbits = $14; + $15 = $nbits; + $16 = ($15>>>0)>(16384); + if ($16) { + $71 = $nread; + $72 = $1; + HEAP32[$72>>2] = $71; + $73 = $val; + STACKTOP = sp;return ($73|0); + } + $17 = $0; + $18 = ((($17)) + 2|0); + $0 = $18; + $nread = 2; + $19 = $nbits; + $20 = (($19) + 7)|0; + $21 = (($20>>>0) / 8)&-1; + $nbytes = $21; + $22 = $nbytes; + $23 = (($22) + 4)|0; + $24 = (($23) - 1)|0; + $25 = (($24>>>0) / 4)&-1; + $nlimbs = $25; + $26 = $2; + $27 = ($26|0)!=(0); + $28 = $nlimbs; + if ($27) { + $29 = (__gcry_mpi_alloc_secure($28)|0); + $31 = $29; + } else { + $30 = (__gcry_mpi_alloc($28)|0); + $31 = $30; + } + $val = $31; + $32 = $nbytes; + $33 = (($32>>>0) % 4)&-1; + $34 = (4 - ($33))|0; + $i = $34; + $35 = $i; + $36 = (($35|0) % 4)&-1; + $i = $36; + $37 = $nlimbs; + $38 = $val; + $39 = ((($38)) + 4|0); + HEAP32[$39>>2] = $37; + $j = $37; + $40 = $val; + $41 = ((($40)) + 8|0); + HEAP32[$41>>2] = 0; + L11: while(1) { + $42 = $j; + $43 = ($42|0)>(0); + if (!($43)) { + label = 14; + break; + } + $a = 0; + while(1) { + $44 = $i; + $45 = ($44|0)<(4); + if (!($45)) { + break; + } + $46 = $nread; + $47 = (($46) + 1)|0; + $nread = $47; + $48 = $1; + $49 = HEAP32[$48>>2]|0; + $50 = ($47>>>0)>($49>>>0); + if ($50) { + break L11; + } + $52 = $a; + $53 = $52 << 8; + $a = $53; + $54 = $0; + $55 = ((($54)) + 1|0); + $0 = $55; + $56 = HEAP8[$54>>0]|0; + $57 = $56&255; + $58 = $a; + $59 = $58 | $57; + $a = $59; + $60 = $i; + $61 = (($60) + 1)|0; + $i = $61; + } + $i = 0; + $62 = $a; + $63 = $j; + $64 = (($63) - 1)|0; + $65 = $val; + $66 = ((($65)) + 16|0); + $67 = HEAP32[$66>>2]|0; + $68 = (($67) + ($64<<2)|0); + HEAP32[$68>>2] = $62; + $69 = $j; + $70 = (($69) + -1)|0; + $j = $70; + } + if ((label|0) == 14) { + $71 = $nread; + $72 = $1; + HEAP32[$72>>2] = $71; + $73 = $val; + STACKTOP = sp;return ($73|0); + } + $51 = $val; + __gcry_mpi_free($51); + $val = 0; + $71 = $nread; + $72 = $1; + HEAP32[$72>>2] = $71; + $73 = $val; + STACKTOP = sp;return ($73|0); +} +function _mpi_fromstr($val,$str) { + $val = $val|0; + $str = $str|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $14 = 0; + var $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; + var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; + var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; + var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; + var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $a = 0, $c = 0, $c1 = 0, $c2 = 0, $i = 0, $j = 0, $nbits = 0; + var $nbytes = 0, $nlimbs = 0, $or$cond = 0, $or$cond11 = 0, $or$cond3 = 0, $or$cond5 = 0, $or$cond7 = 0, $or$cond9 = 0, $prepend_zero = 0, $sign = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $val; + $2 = $str; + $sign = 0; + $prepend_zero = 0; + $3 = $2; + $4 = HEAP8[$3>>0]|0; + $5 = $4 << 24 >> 24; + $6 = ($5|0)==(45); + if ($6) { + $sign = 1; + $7 = $2; + $8 = ((($7)) + 1|0); + $2 = $8; + } + $9 = $2; + $10 = HEAP8[$9>>0]|0; + $11 = $10 << 24 >> 24; + $12 = ($11|0)==(48); + if ($12) { + $13 = $2; + $14 = ((($13)) + 1|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15 << 24 >> 24; + $17 = ($16|0)==(120); + if ($17) { + $18 = $2; + $19 = ((($18)) + 2|0); + $2 = $19; + } + } + $20 = $2; + $21 = (_strlen($20)|0); + $22 = $21<<2; + $nbits = $22; + $23 = $nbits; + $24 = (($23>>>0) % 8)&-1; + $25 = ($24|0)!=(0); + if ($25) { + $prepend_zero = 1; + } + $26 = $nbits; + $27 = (($26) + 7)|0; + $28 = (($27>>>0) / 8)&-1; + $nbytes = $28; + $29 = $nbytes; + $30 = (($29) + 4)|0; + $31 = (($30) - 1)|0; + $32 = (($31>>>0) / 4)&-1; + $nlimbs = $32; + $33 = $1; + $34 = HEAP32[$33>>2]|0; + $35 = $nlimbs; + $36 = ($34>>>0)<($35>>>0); + if ($36) { + $37 = $1; + $38 = $nlimbs; + __gcry_mpi_resize($37,$38); + } + $39 = $nbytes; + $40 = (($39>>>0) % 4)&-1; + $41 = (4 - ($40))|0; + $i = $41; + $42 = $i; + $43 = (($42|0) % 4)&-1; + $i = $43; + $44 = $nlimbs; + $45 = $1; + $46 = ((($45)) + 4|0); + HEAP32[$46>>2] = $44; + $j = $44; + $47 = $sign; + $48 = $1; + $49 = ((($48)) + 8|0); + HEAP32[$49>>2] = $47; + L14: while(1) { + $50 = $j; + $51 = ($50|0)>(0); + if (!($51)) { + label = 37; + break; + } + $a = 0; + while(1) { + $52 = $i; + $53 = ($52|0)<(4); + if (!($53)) { + break; + } + $54 = $prepend_zero; + $55 = ($54|0)!=(0); + if ($55) { + $c1 = 48; + $prepend_zero = 0; + } else { + $56 = $2; + $57 = ((($56)) + 1|0); + $2 = $57; + $58 = HEAP8[$56>>0]|0; + $59 = $58 << 24 >> 24; + $c1 = $59; + } + $60 = $c1; + $61 = ($60|0)!=(0); + if (!($61)) { + label = 18; + break L14; + } + $63 = $2; + $64 = ((($63)) + 1|0); + $2 = $64; + $65 = HEAP8[$63>>0]|0; + $66 = $65 << 24 >> 24; + $c2 = $66; + $67 = $c2; + $68 = ($67|0)!=(0); + if (!($68)) { + label = 20; + break L14; + } + $70 = $c1; + $71 = ($70|0)>=(48); + $72 = $c1; + $73 = ($72|0)<=(57); + $or$cond = $71 & $73; + $74 = $c1; + do { + if ($or$cond) { + $75 = (($74) - 48)|0; + $c = $75; + } else { + $76 = ($74|0)>=(97); + $77 = $c1; + $78 = ($77|0)<=(102); + $or$cond3 = $76 & $78; + $79 = $c1; + if ($or$cond3) { + $80 = (($79) - 97)|0; + $81 = (($80) + 10)|0; + $c = $81; + break; + } + $82 = ($79|0)>=(65); + $83 = $c1; + $84 = ($83|0)<=(70); + $or$cond5 = $82 & $84; + if (!($or$cond5)) { + label = 27; + break L14; + } + $85 = $c1; + $86 = (($85) - 65)|0; + $87 = (($86) + 10)|0; + $c = $87; + } + } while(0); + $89 = $c; + $90 = $89 << 4; + $c = $90; + $91 = $c2; + $92 = ($91|0)>=(48); + $93 = $c2; + $94 = ($93|0)<=(57); + $or$cond7 = $92 & $94; + $95 = $c2; + do { + if ($or$cond7) { + $96 = (($95) - 48)|0; + $97 = $c; + $98 = $97 | $96; + $c = $98; + } else { + $99 = ($95|0)>=(97); + $100 = $c2; + $101 = ($100|0)<=(102); + $or$cond9 = $99 & $101; + $102 = $c2; + if ($or$cond9) { + $103 = (($102) - 97)|0; + $104 = (($103) + 10)|0; + $105 = $c; + $106 = $105 | $104; + $c = $106; + break; + } + $107 = ($102|0)>=(65); + $108 = $c2; + $109 = ($108|0)<=(70); + $or$cond11 = $107 & $109; + if (!($or$cond11)) { + label = 34; + break L14; + } + $110 = $c2; + $111 = (($110) - 65)|0; + $112 = (($111) + 10)|0; + $113 = $c; + $114 = $113 | $112; + $c = $114; + } + } while(0); + $116 = $a; + $117 = $116 << 8; + $a = $117; + $118 = $c; + $119 = $a; + $120 = $119 | $118; + $a = $120; + $121 = $i; + $122 = (($121) + 1)|0; + $i = $122; + } + $i = 0; + $123 = $a; + $124 = $j; + $125 = (($124) - 1)|0; + $126 = $1; + $127 = ((($126)) + 16|0); + $128 = HEAP32[$127>>2]|0; + $129 = (($128) + ($125<<2)|0); + HEAP32[$129>>2] = $123; + $130 = $j; + $131 = (($130) + -1)|0; + $j = $131; + } + if ((label|0) == 18) { + $62 = $1; + __gcry_mpi_clear($62); + $0 = 1; + $132 = $0; + STACKTOP = sp;return ($132|0); + } + else if ((label|0) == 20) { + $69 = $1; + __gcry_mpi_clear($69); + $0 = 1; + $132 = $0; + STACKTOP = sp;return ($132|0); + } + else if ((label|0) == 27) { + $88 = $1; + __gcry_mpi_clear($88); + $0 = 1; + $132 = $0; + STACKTOP = sp;return ($132|0); + } + else if ((label|0) == 34) { + $115 = $1; + __gcry_mpi_clear($115); + $0 = 1; + $132 = $0; + STACKTOP = sp;return ($132|0); + } + else if ((label|0) == 37) { + $0 = 0; + $132 = $0; + STACKTOP = sp;return ($132|0); + } + return (0)|0; +} +function __gcry_mpi_print($format,$buffer,$buflen,$nwritten,$a) { + $format = $format|0; + $buffer = $buffer|0; + $buflen = $buflen|0; + $nwritten = $nwritten|0; + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $c = 0, $dummy_nwritten = 0, $extra = 0, $extra11 = 0, $extra7 = 0, $i = 0, $len = 0, $n = 0, $n1 = 0, $n12 = 0, $n3 = 0, $n8 = 0, $nbits = 0, $negative = 0, $s = 0, $s13 = 0, $s5 = 0; + var $s9 = 0, $tmp = 0, $tmp10 = 0, $tmp2 = 0, $tmp4 = 0, $tmp6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $dummy_nwritten = sp + 80|0; + $n = sp + 64|0; + $n1 = sp + 56|0; + $n3 = sp + 48|0; + $n8 = sp + 28|0; + $n12 = sp + 8|0; + $1 = $format; + $2 = $buffer; + $3 = $buflen; + $4 = $nwritten; + $5 = $a; + $6 = $5; + $7 = (__gcry_mpi_get_nbits($6)|0); + $nbits = $7; + $8 = $4; + $9 = ($8|0)!=(0|0); + if (!($9)) { + $4 = $dummy_nwritten; + } + $10 = $5; + $11 = ((($10)) + 8|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)!=(0); + if ($13) { + $14 = $5; + $15 = (__gcry_mpi_cmp_ui($14,0)|0); + $16 = ($15|0)!=(0); + if ($16) { + $negative = 1; + } else { + label = 6; + } + } else { + label = 6; + } + if ((label|0) == 6) { + $negative = 0; + } + $17 = $3; + $len = $17; + $18 = $4; + HEAP32[$18>>2] = 0; + $19 = $1; + $20 = ($19|0)==(1); + if ($20) { + $extra = 0; + $21 = $5; + $22 = (__gcry_mpi_get_buffer($21,0,$n,0)|0); + $tmp = $22; + $23 = $tmp; + $24 = ($23|0)!=(0|0); + if (!($24)) { + $25 = (_gpg_err_code_from_syserror()|0); + $0 = $25; + $302 = $0; + STACKTOP = sp;return ($302|0); + } + $26 = $negative; + $27 = ($26|0)!=(0); + if ($27) { + $28 = $tmp; + $29 = HEAP32[$n>>2]|0; + _twocompl($28,$29); + $30 = $tmp; + $31 = HEAP8[$30>>0]|0; + $32 = $31&255; + $33 = $32 & 128; + $34 = ($33|0)!=(0); + if (!($34)) { + $35 = HEAP32[$n>>2]|0; + $36 = (($35) + 1)|0; + HEAP32[$n>>2] = $36; + $extra = 2; + } + } else { + $37 = HEAP32[$n>>2]|0; + $38 = ($37|0)!=(0); + if ($38) { + $39 = $tmp; + $40 = HEAP8[$39>>0]|0; + $41 = $40&255; + $42 = $41 & 128; + $43 = ($42|0)!=(0); + if ($43) { + $44 = HEAP32[$n>>2]|0; + $45 = (($44) + 1)|0; + HEAP32[$n>>2] = $45; + $extra = 1; + } + } + } + $46 = $2; + $47 = ($46|0)!=(0|0); + if ($47) { + $48 = HEAP32[$n>>2]|0; + $49 = $len; + $50 = ($48>>>0)>($49>>>0); + if ($50) { + $51 = $tmp; + __gcry_free($51); + $0 = 66; + $302 = $0; + STACKTOP = sp;return ($302|0); + } + } + $52 = $2; + $53 = ($52|0)!=(0|0); + if ($53) { + $54 = $2; + $s = $54; + $55 = $extra; + $56 = ($55|0)==(1); + if ($56) { + $57 = $s; + $58 = ((($57)) + 1|0); + $s = $58; + HEAP8[$57>>0] = 0; + } else { + $59 = $extra; + $60 = ($59|0)!=(0); + if ($60) { + $61 = $s; + $62 = ((($61)) + 1|0); + $s = $62; + HEAP8[$61>>0] = -1; + } + } + $63 = $s; + $64 = $tmp; + $65 = HEAP32[$n>>2]|0; + $66 = $extra; + $67 = ($66|0)!=(0); + $68 = $67 ^ 1; + $69 = $68 ^ 1; + $70 = $69&1; + $71 = (($65) - ($70))|0; + _memcpy(($63|0),($64|0),($71|0))|0; + } + $72 = $tmp; + __gcry_free($72); + $73 = HEAP32[$n>>2]|0; + $74 = $4; + HEAP32[$74>>2] = $73; + $0 = 0; + $302 = $0; + STACKTOP = sp;return ($302|0); + } + $75 = $1; + $76 = ($75|0)==(5); + if ($76) { + $77 = $nbits; + $78 = (($77) + 7)|0; + $79 = (($78>>>0) / 8)&-1; + HEAP32[$n1>>2] = $79; + $80 = $2; + $81 = ($80|0)!=(0|0); + if ($81) { + $82 = HEAP32[$n1>>2]|0; + $83 = $len; + $84 = ($82>>>0)>($83>>>0); + if ($84) { + $0 = 66; + $302 = $0; + STACKTOP = sp;return ($302|0); + } + } + $85 = $2; + $86 = ($85|0)!=(0|0); + do { + if ($86) { + $87 = $5; + $88 = (__gcry_mpi_get_buffer($87,0,$n1,0)|0); + $tmp2 = $88; + $89 = $tmp2; + $90 = ($89|0)!=(0|0); + if ($90) { + $92 = $2; + $93 = $tmp2; + $94 = HEAP32[$n1>>2]|0; + _memcpy(($92|0),($93|0),($94|0))|0; + $95 = $tmp2; + __gcry_free($95); + break; + } + $91 = (_gpg_err_code_from_syserror()|0); + $0 = $91; + $302 = $0; + STACKTOP = sp;return ($302|0); + } + } while(0); + $96 = HEAP32[$n1>>2]|0; + $97 = $4; + HEAP32[$97>>2] = $96; + $0 = 0; + $302 = $0; + STACKTOP = sp;return ($302|0); + } + $98 = $1; + $99 = ($98|0)==(2); + if ($99) { + $100 = $nbits; + $101 = (($100) + 7)|0; + $102 = (($101>>>0) / 8)&-1; + HEAP32[$n3>>2] = $102; + $103 = $negative; + $104 = ($103|0)!=(0); + if ($104) { + $0 = 45; + $302 = $0; + STACKTOP = sp;return ($302|0); + } + $105 = $2; + $106 = ($105|0)!=(0|0); + if ($106) { + $107 = HEAP32[$n3>>2]|0; + $108 = (($107) + 2)|0; + $109 = $len; + $110 = ($108>>>0)>($109>>>0); + if ($110) { + $0 = 66; + $302 = $0; + STACKTOP = sp;return ($302|0); + } + } + $111 = $2; + $112 = ($111|0)!=(0|0); + do { + if ($112) { + $113 = $2; + $s5 = $113; + $114 = $nbits; + $115 = $114 >>> 8; + $116 = $115&255; + $117 = $s5; + HEAP8[$117>>0] = $116; + $118 = $nbits; + $119 = $118&255; + $120 = $s5; + $121 = ((($120)) + 1|0); + HEAP8[$121>>0] = $119; + $122 = $5; + $123 = (__gcry_mpi_get_buffer($122,0,$n3,0)|0); + $tmp4 = $123; + $124 = $tmp4; + $125 = ($124|0)!=(0|0); + if ($125) { + $127 = $s5; + $128 = ((($127)) + 2|0); + $129 = $tmp4; + $130 = HEAP32[$n3>>2]|0; + _memcpy(($128|0),($129|0),($130|0))|0; + $131 = $tmp4; + __gcry_free($131); + break; + } + $126 = (_gpg_err_code_from_syserror()|0); + $0 = $126; + $302 = $0; + STACKTOP = sp;return ($302|0); + } + } while(0); + $132 = HEAP32[$n3>>2]|0; + $133 = (($132) + 2)|0; + $134 = $4; + HEAP32[$134>>2] = $133; + $0 = 0; + $302 = $0; + STACKTOP = sp;return ($302|0); + } + $135 = $1; + $136 = ($135|0)==(3); + if ($136) { + $extra7 = 0; + $137 = $5; + $138 = (__gcry_mpi_get_buffer($137,0,$n8,0)|0); + $tmp6 = $138; + $139 = $tmp6; + $140 = ($139|0)!=(0|0); + if (!($140)) { + $141 = (_gpg_err_code_from_syserror()|0); + $0 = $141; + $302 = $0; + STACKTOP = sp;return ($302|0); + } + $142 = $negative; + $143 = ($142|0)!=(0); + if ($143) { + $144 = $tmp6; + $145 = HEAP32[$n8>>2]|0; + _twocompl($144,$145); + $146 = $tmp6; + $147 = HEAP8[$146>>0]|0; + $148 = $147&255; + $149 = $148 & 128; + $150 = ($149|0)!=(0); + if (!($150)) { + $151 = HEAP32[$n8>>2]|0; + $152 = (($151) + 1)|0; + HEAP32[$n8>>2] = $152; + $extra7 = 2; + } + } else { + $153 = HEAP32[$n8>>2]|0; + $154 = ($153|0)!=(0); + if ($154) { + $155 = $tmp6; + $156 = HEAP8[$155>>0]|0; + $157 = $156&255; + $158 = $157 & 128; + $159 = ($158|0)!=(0); + if ($159) { + $160 = HEAP32[$n8>>2]|0; + $161 = (($160) + 1)|0; + HEAP32[$n8>>2] = $161; + $extra7 = 1; + } + } + } + $162 = $2; + $163 = ($162|0)!=(0|0); + if ($163) { + $164 = HEAP32[$n8>>2]|0; + $165 = (($164) + 4)|0; + $166 = $len; + $167 = ($165>>>0)>($166>>>0); + if ($167) { + $168 = $tmp6; + __gcry_free($168); + $0 = 66; + $302 = $0; + STACKTOP = sp;return ($302|0); + } + } + $169 = $2; + $170 = ($169|0)!=(0|0); + if ($170) { + $171 = $2; + $s9 = $171; + $172 = HEAP32[$n8>>2]|0; + $173 = $172 >>> 24; + $174 = $173&255; + $175 = $s9; + $176 = ((($175)) + 1|0); + $s9 = $176; + HEAP8[$175>>0] = $174; + $177 = HEAP32[$n8>>2]|0; + $178 = $177 >>> 16; + $179 = $178&255; + $180 = $s9; + $181 = ((($180)) + 1|0); + $s9 = $181; + HEAP8[$180>>0] = $179; + $182 = HEAP32[$n8>>2]|0; + $183 = $182 >>> 8; + $184 = $183&255; + $185 = $s9; + $186 = ((($185)) + 1|0); + $s9 = $186; + HEAP8[$185>>0] = $184; + $187 = HEAP32[$n8>>2]|0; + $188 = $187&255; + $189 = $s9; + $190 = ((($189)) + 1|0); + $s9 = $190; + HEAP8[$189>>0] = $188; + $191 = $extra7; + $192 = ($191|0)==(1); + if ($192) { + $193 = $s9; + $194 = ((($193)) + 1|0); + $s9 = $194; + HEAP8[$193>>0] = 0; + } else { + $195 = $extra7; + $196 = ($195|0)!=(0); + if ($196) { + $197 = $s9; + $198 = ((($197)) + 1|0); + $s9 = $198; + HEAP8[$197>>0] = -1; + } + } + $199 = $s9; + $200 = $tmp6; + $201 = HEAP32[$n8>>2]|0; + $202 = $extra7; + $203 = ($202|0)!=(0); + $204 = $203 ^ 1; + $205 = $204 ^ 1; + $206 = $205&1; + $207 = (($201) - ($206))|0; + _memcpy(($199|0),($200|0),($207|0))|0; + } + $208 = $tmp6; + __gcry_free($208); + $209 = HEAP32[$n8>>2]|0; + $210 = (4 + ($209))|0; + $211 = $4; + HEAP32[$211>>2] = $210; + $0 = 0; + $302 = $0; + STACKTOP = sp;return ($302|0); + } + $212 = $1; + $213 = ($212|0)==(4); + if (!($213)) { + $0 = 45; + $302 = $0; + STACKTOP = sp;return ($302|0); + } + $extra11 = 0; + HEAP32[$n12>>2] = 0; + $214 = $5; + $215 = (__gcry_mpi_get_buffer($214,0,$n12,0)|0); + $tmp10 = $215; + $216 = $tmp10; + $217 = ($216|0)!=(0|0); + if (!($217)) { + $218 = (_gpg_err_code_from_syserror()|0); + $0 = $218; + $302 = $0; + STACKTOP = sp;return ($302|0); + } + $219 = HEAP32[$n12>>2]|0; + $220 = ($219|0)!=(0); + if ($220) { + $221 = $tmp10; + $222 = HEAP8[$221>>0]|0; + $223 = $222&255; + $224 = $223 & 128; + $225 = ($224|0)!=(0); + if ($225) { + label = 70; + } + } else { + label = 70; + } + if ((label|0) == 70) { + $extra11 = 2; + } + $226 = $2; + $227 = ($226|0)!=(0|0); + if ($227) { + $228 = HEAP32[$n12>>2]|0; + $229 = $228<<1; + $230 = $extra11; + $231 = (($229) + ($230))|0; + $232 = $negative; + $233 = (($231) + ($232))|0; + $234 = (($233) + 1)|0; + $235 = $len; + $236 = ($234>>>0)>($235>>>0); + if ($236) { + $237 = $tmp10; + __gcry_free($237); + $0 = 66; + $302 = $0; + STACKTOP = sp;return ($302|0); + } + } + $238 = $2; + $239 = ($238|0)!=(0|0); + if ($239) { + $240 = $2; + $s13 = $240; + $241 = $negative; + $242 = ($241|0)!=(0); + if ($242) { + $243 = $s13; + $244 = ((($243)) + 1|0); + $s13 = $244; + HEAP8[$243>>0] = 45; + } + $245 = $extra11; + $246 = ($245|0)!=(0); + if ($246) { + $247 = $s13; + $248 = ((($247)) + 1|0); + $s13 = $248; + HEAP8[$247>>0] = 48; + $249 = $s13; + $250 = ((($249)) + 1|0); + $s13 = $250; + HEAP8[$249>>0] = 48; + } + $i = 0; + while(1) { + $251 = $i; + $252 = HEAP32[$n12>>2]|0; + $253 = ($251>>>0)<($252>>>0); + if (!($253)) { + break; + } + $254 = $i; + $255 = $tmp10; + $256 = (($255) + ($254)|0); + $257 = HEAP8[$256>>0]|0; + $258 = $257&255; + $c = $258; + $259 = $c; + $260 = $259 >>> 4; + $261 = ($260>>>0)<(10); + $262 = $c; + $263 = $262 >>> 4; + $264 = (48 + ($263))|0; + $265 = (65 + ($263))|0; + $266 = (($265) - 10)|0; + $267 = $261 ? $264 : $266; + $268 = $267&255; + $269 = $s13; + $270 = ((($269)) + 1|0); + $s13 = $270; + HEAP8[$269>>0] = $268; + $271 = $c; + $272 = $271 & 15; + $c = $272; + $273 = $c; + $274 = ($273>>>0)<(10); + $275 = $c; + $276 = (48 + ($275))|0; + $277 = (65 + ($275))|0; + $278 = (($277) - 10)|0; + $279 = $274 ? $276 : $278; + $280 = $279&255; + $281 = $s13; + $282 = ((($281)) + 1|0); + $s13 = $282; + HEAP8[$281>>0] = $280; + $283 = $i; + $284 = (($283) + 1)|0; + $i = $284; + } + $285 = $s13; + $286 = ((($285)) + 1|0); + $s13 = $286; + HEAP8[$285>>0] = 0; + $287 = $s13; + $288 = $2; + $289 = $287; + $290 = $288; + $291 = (($289) - ($290))|0; + $292 = $4; + HEAP32[$292>>2] = $291; + } else { + $293 = HEAP32[$n12>>2]|0; + $294 = $293<<1; + $295 = $extra11; + $296 = (($294) + ($295))|0; + $297 = $negative; + $298 = (($296) + ($297))|0; + $299 = (($298) + 1)|0; + $300 = $4; + HEAP32[$300>>2] = $299; + } + $301 = $tmp10; + __gcry_free($301); + $0 = 0; + $302 = $0; + STACKTOP = sp;return ($302|0); +} +function _twocompl($p,$n) { + $p = $p|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $14 = 0, $15 = 0; + var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $p; + $1 = $n; + $2 = $1; + $3 = (($2) - 1)|0; + $i = $3; + while(1) { + $4 = $i; + $5 = ($4|0)>=(0); + if (!($5)) { + break; + } + $6 = $i; + $7 = $0; + $8 = (($7) + ($6)|0); + $9 = HEAP8[$8>>0]|0; + $10 = ($9<<24>>24)!=(0); + $11 = $10 ^ 1; + if (!($11)) { + break; + } + $12 = $i; + $13 = (($12) + -1)|0; + $i = $13; + } + $14 = $i; + $15 = ($14|0)>=(0); + if (!($15)) { + STACKTOP = sp;return; + } + $16 = $i; + $17 = $0; + $18 = (($17) + ($16)|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = $20 & 1; + $22 = ($21|0)!=(0); + $23 = $i; + $24 = $0; + $25 = (($24) + ($23)|0); + $26 = HEAP8[$25>>0]|0; + $27 = $26&255; + do { + if ($22) { + $28 = $27 ^ 254; + $29 = $28 | 1; + $30 = $29 & 255; + $31 = $30&255; + $32 = $i; + $33 = $0; + $34 = (($33) + ($32)|0); + HEAP8[$34>>0] = $31; + } else { + $35 = $27 & 2; + $36 = ($35|0)!=(0); + $37 = $i; + $38 = $0; + $39 = (($38) + ($37)|0); + $40 = HEAP8[$39>>0]|0; + $41 = $40&255; + if ($36) { + $42 = $41 ^ 252; + $43 = $42 | 2; + $44 = $43 & 254; + $45 = $44&255; + $46 = $i; + $47 = $0; + $48 = (($47) + ($46)|0); + HEAP8[$48>>0] = $45; + break; + } + $49 = $41 & 4; + $50 = ($49|0)!=(0); + $51 = $i; + $52 = $0; + $53 = (($52) + ($51)|0); + $54 = HEAP8[$53>>0]|0; + $55 = $54&255; + if ($50) { + $56 = $55 ^ 248; + $57 = $56 | 4; + $58 = $57 & 252; + $59 = $58&255; + $60 = $i; + $61 = $0; + $62 = (($61) + ($60)|0); + HEAP8[$62>>0] = $59; + break; + } + $63 = $55 & 8; + $64 = ($63|0)!=(0); + $65 = $i; + $66 = $0; + $67 = (($66) + ($65)|0); + $68 = HEAP8[$67>>0]|0; + $69 = $68&255; + if ($64) { + $70 = $69 ^ 240; + $71 = $70 | 8; + $72 = $71 & 248; + $73 = $72&255; + $74 = $i; + $75 = $0; + $76 = (($75) + ($74)|0); + HEAP8[$76>>0] = $73; + break; + } + $77 = $69 & 16; + $78 = ($77|0)!=(0); + $79 = $i; + $80 = $0; + $81 = (($80) + ($79)|0); + $82 = HEAP8[$81>>0]|0; + $83 = $82&255; + if ($78) { + $84 = $83 ^ 224; + $85 = $84 | 16; + $86 = $85 & 240; + $87 = $86&255; + $88 = $i; + $89 = $0; + $90 = (($89) + ($88)|0); + HEAP8[$90>>0] = $87; + break; + } + $91 = $83 & 32; + $92 = ($91|0)!=(0); + $93 = $i; + $94 = $0; + $95 = (($94) + ($93)|0); + $96 = HEAP8[$95>>0]|0; + $97 = $96&255; + if ($92) { + $98 = $97 ^ 192; + $99 = $98 | 32; + $100 = $99 & 224; + $101 = $100&255; + $102 = $i; + $103 = $0; + $104 = (($103) + ($102)|0); + HEAP8[$104>>0] = $101; + break; + } + $105 = $97 & 64; + $106 = ($105|0)!=(0); + $107 = $i; + $108 = $0; + $109 = (($108) + ($107)|0); + if ($106) { + $110 = HEAP8[$109>>0]|0; + $111 = $110&255; + $112 = $111 ^ 128; + $113 = $112 | 64; + $114 = $113 & 192; + $115 = $114&255; + $116 = $i; + $117 = $0; + $118 = (($117) + ($116)|0); + HEAP8[$118>>0] = $115; + break; + } else { + HEAP8[$109>>0] = -128; + break; + } + } + } while(0); + $119 = $i; + $120 = (($119) + -1)|0; + $i = $120; + while(1) { + $121 = $i; + $122 = ($121|0)>=(0); + if (!($122)) { + break; + } + $123 = $i; + $124 = $0; + $125 = (($124) + ($123)|0); + $126 = HEAP8[$125>>0]|0; + $127 = $126&255; + $128 = $127 ^ 255; + $129 = $128&255; + HEAP8[$125>>0] = $129; + $130 = $i; + $131 = (($130) + -1)|0; + $i = $131; + } + STACKTOP = sp;return; +} +function __gcry_mpi_to_octet_string($r_frame,$space,$value,$nbytes) { + $r_frame = $r_frame|0; + $space = $space|0; + $value = $value|0; + $nbytes = $nbytes|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $8 = 0, $9 = 0, $frame = 0, $n = 0; + var $nframe = 0, $noff = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $nframe = sp + 12|0; + $1 = $r_frame; + $2 = $space; + $3 = $value; + $4 = $nbytes; + $5 = $1; + $6 = ($5|0)!=(0|0); + $7 = $6 ^ 1; + $8 = $7&1; + $9 = $2; + $10 = ($9|0)!=(0|0); + $11 = $10 ^ 1; + $12 = $11&1; + $13 = ($8|0)==($12|0); + if ($13) { + $0 = 45; + $77 = $0; + STACKTOP = sp;return ($77|0); + } + $14 = $1; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = $1; + HEAP32[$16>>2] = 0; + } + $17 = $3; + $18 = (__gcry_mpi_print(5,0,0,$nframe,$17)|0); + $rc = $18; + $19 = $rc; + $20 = ($19|0)!=(0); + if ($20) { + $21 = $rc; + $0 = $21; + $77 = $0; + STACKTOP = sp;return ($77|0); + } + $22 = HEAP32[$nframe>>2]|0; + $23 = $4; + $24 = ($22>>>0)>($23>>>0); + if ($24) { + $0 = 67; + $77 = $0; + STACKTOP = sp;return ($77|0); + } + $25 = HEAP32[$nframe>>2]|0; + $26 = $4; + $27 = ($25>>>0)<($26>>>0); + if ($27) { + $28 = $4; + $29 = HEAP32[$nframe>>2]|0; + $30 = (($28) - ($29))|0; + $31 = $30; + } else { + $31 = 0; + } + $noff = $31; + $32 = HEAP32[$nframe>>2]|0; + $33 = $noff; + $34 = (($32) + ($33))|0; + $n = $34; + $35 = $2; + $36 = ($35|0)!=(0|0); + if ($36) { + $37 = $2; + $frame = $37; + } else { + $38 = $3; + $39 = ($38|0)!=(0|0); + if ($39) { + $40 = $3; + $41 = ((($40)) + 12|0); + $42 = HEAP32[$41>>2]|0; + $43 = $42 & 1; + $44 = ($43|0)!=(0); + if ($44) { + $45 = $n; + $46 = (__gcry_malloc_secure($45)|0); + $49 = $46; + } else { + label = 16; + } + } else { + label = 16; + } + if ((label|0) == 16) { + $47 = $n; + $48 = (__gcry_malloc($47)|0); + $49 = $48; + } + $frame = $49; + $50 = $frame; + $51 = ($50|0)!=(0|0); + if (!($51)) { + $52 = (_gpg_err_code_from_syserror()|0); + $rc = $52; + $53 = $rc; + $0 = $53; + $77 = $0; + STACKTOP = sp;return ($77|0); + } + } + $54 = $noff; + $55 = ($54|0)!=(0); + if ($55) { + $56 = $frame; + $57 = $noff; + _memset(($56|0),0,($57|0))|0; + } + $58 = $noff; + $59 = HEAP32[$nframe>>2]|0; + $60 = (($59) + ($58))|0; + HEAP32[$nframe>>2] = $60; + $61 = $frame; + $62 = $noff; + $63 = (($61) + ($62)|0); + $64 = HEAP32[$nframe>>2]|0; + $65 = $noff; + $66 = (($64) - ($65))|0; + $67 = $3; + $68 = (__gcry_mpi_print(5,$63,$66,0,$67)|0); + $rc = $68; + $69 = $rc; + $70 = ($69|0)!=(0); + if ($70) { + $71 = $frame; + __gcry_free($71); + $72 = $rc; + $0 = $72; + $77 = $0; + STACKTOP = sp;return ($77|0); + } + $73 = $1; + $74 = ($73|0)!=(0|0); + if ($74) { + $75 = $frame; + $76 = $1; + HEAP32[$76>>2] = $75; + } + $0 = 0; + $77 = $0; + STACKTOP = sp;return ($77|0); +} +function __gcry_mpih_add_n($res_ptr,$s1_ptr,$s2_ptr,$size) { + $res_ptr = $res_ptr|0; + $s1_ptr = $s1_ptr|0; + $s2_ptr = $s2_ptr|0; + $size = $size|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $cy = 0, $j = 0, $x = 0, $y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $res_ptr; + $1 = $s1_ptr; + $2 = $s2_ptr; + $3 = $size; + $4 = $3; + $5 = (0 - ($4))|0; + $j = $5; + $6 = $j; + $7 = $1; + $8 = (0 - ($6))|0; + $9 = (($7) + ($8<<2)|0); + $1 = $9; + $10 = $j; + $11 = $2; + $12 = (0 - ($10))|0; + $13 = (($11) + ($12<<2)|0); + $2 = $13; + $14 = $j; + $15 = $0; + $16 = (0 - ($14))|0; + $17 = (($15) + ($16<<2)|0); + $0 = $17; + $cy = 0; + while(1) { + $18 = $j; + $19 = $2; + $20 = (($19) + ($18<<2)|0); + $21 = HEAP32[$20>>2]|0; + $y = $21; + $22 = $j; + $23 = $1; + $24 = (($23) + ($22<<2)|0); + $25 = HEAP32[$24>>2]|0; + $x = $25; + $26 = $cy; + $27 = $y; + $28 = (($27) + ($26))|0; + $y = $28; + $29 = $y; + $30 = $cy; + $31 = ($29>>>0)<($30>>>0); + $32 = $31&1; + $cy = $32; + $33 = $x; + $34 = $y; + $35 = (($34) + ($33))|0; + $y = $35; + $36 = $y; + $37 = $x; + $38 = ($36>>>0)<($37>>>0); + $39 = $38&1; + $40 = $cy; + $41 = (($40) + ($39))|0; + $cy = $41; + $42 = $y; + $43 = $j; + $44 = $0; + $45 = (($44) + ($43<<2)|0); + HEAP32[$45>>2] = $42; + $46 = $j; + $47 = (($46) + 1)|0; + $j = $47; + $48 = ($47|0)!=(0); + if (!($48)) { + break; + } + } + $49 = $cy; + STACKTOP = sp;return ($49|0); +} +function __gcry_mpih_mod_1($dividend_ptr,$dividend_size,$divisor_limb) { + $dividend_ptr = $dividend_ptr|0; + $dividend_size = $dividend_size|0; + $divisor_limb = $divisor_limb|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $__a = 0, $__d0 = 0, $__d02 = 0, $__d09 = 0, $__d1 = 0, $__d11 = 0; + var $__d18 = 0, $__m = 0, $__m14 = 0, $__m7 = 0, $__q0 = 0, $__q011 = 0, $__q04 = 0, $__q1 = 0, $__q110 = 0, $__q13 = 0, $__r0 = 0, $__r013 = 0, $__r06 = 0, $__r1 = 0, $__r112 = 0, $__r15 = 0, $__xr = 0, $dummy = 0, $i = 0, $n0 = 0; + var $n1 = 0, $normalization_steps = 0, $r = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $dividend_ptr; + $2 = $dividend_size; + $3 = $divisor_limb; + $4 = $2; + $5 = ($4|0)!=(0); + if (!($5)) { + $0 = 0; + $333 = $0; + STACKTOP = sp;return ($333|0); + } + $6 = $3; + $__xr = $6; + $7 = $__xr; + $8 = ($7>>>0)<(65536); + $9 = $__xr; + $10 = ($9>>>0)<(256); + $11 = $10 ? 0 : 8; + $12 = ($9>>>0)<(16777216); + $13 = $12 ? 16 : 24; + $14 = $8 ? $11 : $13; + $__a = $14; + $15 = $__xr; + $16 = $__a; + $17 = $15 >>> $16; + $18 = (45829 + ($17)|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = $__a; + $22 = (($20) + ($21))|0; + $23 = (32 - ($22))|0; + $normalization_steps = $23; + $24 = $normalization_steps; + $25 = ($24|0)!=(0); + if (!($25)) { + $232 = $2; + $233 = (($232) - 1)|0; + $i = $233; + $234 = $i; + $235 = $1; + $236 = (($235) + ($234<<2)|0); + $237 = HEAP32[$236>>2]|0; + $r = $237; + $238 = $r; + $239 = $3; + $240 = ($238>>>0)>=($239>>>0); + if ($240) { + $r = 0; + } else { + $241 = $i; + $242 = (($241) + -1)|0; + $i = $242; + } + while(1) { + $243 = $i; + $244 = ($243|0)>=(0); + if (!($244)) { + break; + } + $245 = $i; + $246 = $1; + $247 = (($246) + ($245<<2)|0); + $248 = HEAP32[$247>>2]|0; + $n0 = $248; + $249 = $3; + $250 = $249 >>> 16; + $__d18 = $250; + $251 = $3; + $252 = $251 & 65535; + $__d09 = $252; + $253 = $r; + $254 = $__d18; + $255 = (($253>>>0) % ($254>>>0))&-1; + $__r112 = $255; + $256 = $r; + $257 = $__d18; + $258 = (($256>>>0) / ($257>>>0))&-1; + $__q110 = $258; + $259 = $__q110; + $260 = $__d09; + $261 = Math_imul($259, $260)|0; + $__m14 = $261; + $262 = $__r112; + $263 = $262<<16; + $264 = $n0; + $265 = $264 >>> 16; + $266 = $263 | $265; + $__r112 = $266; + $267 = $__r112; + $268 = $__m14; + $269 = ($267>>>0)<($268>>>0); + if ($269) { + $270 = $__q110; + $271 = (($270) + -1)|0; + $__q110 = $271; + $272 = $3; + $273 = $__r112; + $274 = (($273) + ($272))|0; + $__r112 = $274; + $275 = $__r112; + $276 = $3; + $277 = ($275>>>0)>=($276>>>0); + if ($277) { + $278 = $__r112; + $279 = $__m14; + $280 = ($278>>>0)<($279>>>0); + if ($280) { + $281 = $__q110; + $282 = (($281) + -1)|0; + $__q110 = $282; + $283 = $3; + $284 = $__r112; + $285 = (($284) + ($283))|0; + $__r112 = $285; + } + } + } + $286 = $__m14; + $287 = $__r112; + $288 = (($287) - ($286))|0; + $__r112 = $288; + $289 = $__r112; + $290 = $__d18; + $291 = (($289>>>0) % ($290>>>0))&-1; + $__r013 = $291; + $292 = $__r112; + $293 = $__d18; + $294 = (($292>>>0) / ($293>>>0))&-1; + $__q011 = $294; + $295 = $__q011; + $296 = $__d09; + $297 = Math_imul($295, $296)|0; + $__m14 = $297; + $298 = $__r013; + $299 = $298<<16; + $300 = $n0; + $301 = $300 & 65535; + $302 = $299 | $301; + $__r013 = $302; + $303 = $__r013; + $304 = $__m14; + $305 = ($303>>>0)<($304>>>0); + if ($305) { + $306 = $__q011; + $307 = (($306) + -1)|0; + $__q011 = $307; + $308 = $3; + $309 = $__r013; + $310 = (($309) + ($308))|0; + $__r013 = $310; + $311 = $__r013; + $312 = $3; + $313 = ($311>>>0)>=($312>>>0); + if ($313) { + $314 = $__r013; + $315 = $__m14; + $316 = ($314>>>0)<($315>>>0); + if ($316) { + $317 = $__q011; + $318 = (($317) + -1)|0; + $__q011 = $318; + $319 = $3; + $320 = $__r013; + $321 = (($320) + ($319))|0; + $__r013 = $321; + } + } + } + $322 = $__m14; + $323 = $__r013; + $324 = (($323) - ($322))|0; + $__r013 = $324; + $325 = $__q110; + $326 = $325<<16; + $327 = $__q011; + $328 = $326 | $327; + $dummy = $328; + $329 = $__r013; + $r = $329; + $330 = $i; + $331 = (($330) + -1)|0; + $i = $331; + } + $332 = $r; + $0 = $332; + $333 = $0; + STACKTOP = sp;return ($333|0); + } + $26 = $normalization_steps; + $27 = $3; + $28 = $27 << $26; + $3 = $28; + $29 = $2; + $30 = (($29) - 1)|0; + $31 = $1; + $32 = (($31) + ($30<<2)|0); + $33 = HEAP32[$32>>2]|0; + $n1 = $33; + $34 = $n1; + $35 = $normalization_steps; + $36 = (32 - ($35))|0; + $37 = $34 >>> $36; + $r = $37; + $38 = $2; + $39 = (($38) - 2)|0; + $i = $39; + while(1) { + $40 = $i; + $41 = ($40|0)>=(0); + if (!($41)) { + break; + } + $42 = $i; + $43 = $1; + $44 = (($43) + ($42<<2)|0); + $45 = HEAP32[$44>>2]|0; + $n0 = $45; + $46 = $3; + $47 = $46 >>> 16; + $__d1 = $47; + $48 = $3; + $49 = $48 & 65535; + $__d0 = $49; + $50 = $r; + $51 = $__d1; + $52 = (($50>>>0) % ($51>>>0))&-1; + $__r1 = $52; + $53 = $r; + $54 = $__d1; + $55 = (($53>>>0) / ($54>>>0))&-1; + $__q1 = $55; + $56 = $__q1; + $57 = $__d0; + $58 = Math_imul($56, $57)|0; + $__m = $58; + $59 = $__r1; + $60 = $59<<16; + $61 = $n1; + $62 = $normalization_steps; + $63 = $61 << $62; + $64 = $n0; + $65 = $normalization_steps; + $66 = (32 - ($65))|0; + $67 = $64 >>> $66; + $68 = $63 | $67; + $69 = $68 >>> 16; + $70 = $60 | $69; + $__r1 = $70; + $71 = $__r1; + $72 = $__m; + $73 = ($71>>>0)<($72>>>0); + if ($73) { + $74 = $__q1; + $75 = (($74) + -1)|0; + $__q1 = $75; + $76 = $3; + $77 = $__r1; + $78 = (($77) + ($76))|0; + $__r1 = $78; + $79 = $__r1; + $80 = $3; + $81 = ($79>>>0)>=($80>>>0); + if ($81) { + $82 = $__r1; + $83 = $__m; + $84 = ($82>>>0)<($83>>>0); + if ($84) { + $85 = $__q1; + $86 = (($85) + -1)|0; + $__q1 = $86; + $87 = $3; + $88 = $__r1; + $89 = (($88) + ($87))|0; + $__r1 = $89; + } + } + } + $90 = $__m; + $91 = $__r1; + $92 = (($91) - ($90))|0; + $__r1 = $92; + $93 = $__r1; + $94 = $__d1; + $95 = (($93>>>0) % ($94>>>0))&-1; + $__r0 = $95; + $96 = $__r1; + $97 = $__d1; + $98 = (($96>>>0) / ($97>>>0))&-1; + $__q0 = $98; + $99 = $__q0; + $100 = $__d0; + $101 = Math_imul($99, $100)|0; + $__m = $101; + $102 = $__r0; + $103 = $102<<16; + $104 = $n1; + $105 = $normalization_steps; + $106 = $104 << $105; + $107 = $n0; + $108 = $normalization_steps; + $109 = (32 - ($108))|0; + $110 = $107 >>> $109; + $111 = $106 | $110; + $112 = $111 & 65535; + $113 = $103 | $112; + $__r0 = $113; + $114 = $__r0; + $115 = $__m; + $116 = ($114>>>0)<($115>>>0); + if ($116) { + $117 = $__q0; + $118 = (($117) + -1)|0; + $__q0 = $118; + $119 = $3; + $120 = $__r0; + $121 = (($120) + ($119))|0; + $__r0 = $121; + $122 = $__r0; + $123 = $3; + $124 = ($122>>>0)>=($123>>>0); + if ($124) { + $125 = $__r0; + $126 = $__m; + $127 = ($125>>>0)<($126>>>0); + if ($127) { + $128 = $__q0; + $129 = (($128) + -1)|0; + $__q0 = $129; + $130 = $3; + $131 = $__r0; + $132 = (($131) + ($130))|0; + $__r0 = $132; + } + } + } + $133 = $__m; + $134 = $__r0; + $135 = (($134) - ($133))|0; + $__r0 = $135; + $136 = $__q1; + $137 = $136<<16; + $138 = $__q0; + $139 = $137 | $138; + $dummy = $139; + $140 = $__r0; + $r = $140; + $141 = $n0; + $n1 = $141; + $142 = $i; + $143 = (($142) + -1)|0; + $i = $143; + } + $144 = $3; + $145 = $144 >>> 16; + $__d11 = $145; + $146 = $3; + $147 = $146 & 65535; + $__d02 = $147; + $148 = $r; + $149 = $__d11; + $150 = (($148>>>0) % ($149>>>0))&-1; + $__r15 = $150; + $151 = $r; + $152 = $__d11; + $153 = (($151>>>0) / ($152>>>0))&-1; + $__q13 = $153; + $154 = $__q13; + $155 = $__d02; + $156 = Math_imul($154, $155)|0; + $__m7 = $156; + $157 = $__r15; + $158 = $157<<16; + $159 = $n1; + $160 = $normalization_steps; + $161 = $159 << $160; + $162 = $161 >>> 16; + $163 = $158 | $162; + $__r15 = $163; + $164 = $__r15; + $165 = $__m7; + $166 = ($164>>>0)<($165>>>0); + if ($166) { + $167 = $__q13; + $168 = (($167) + -1)|0; + $__q13 = $168; + $169 = $3; + $170 = $__r15; + $171 = (($170) + ($169))|0; + $__r15 = $171; + $172 = $__r15; + $173 = $3; + $174 = ($172>>>0)>=($173>>>0); + if ($174) { + $175 = $__r15; + $176 = $__m7; + $177 = ($175>>>0)<($176>>>0); + if ($177) { + $178 = $__q13; + $179 = (($178) + -1)|0; + $__q13 = $179; + $180 = $3; + $181 = $__r15; + $182 = (($181) + ($180))|0; + $__r15 = $182; + } + } + } + $183 = $__m7; + $184 = $__r15; + $185 = (($184) - ($183))|0; + $__r15 = $185; + $186 = $__r15; + $187 = $__d11; + $188 = (($186>>>0) % ($187>>>0))&-1; + $__r06 = $188; + $189 = $__r15; + $190 = $__d11; + $191 = (($189>>>0) / ($190>>>0))&-1; + $__q04 = $191; + $192 = $__q04; + $193 = $__d02; + $194 = Math_imul($192, $193)|0; + $__m7 = $194; + $195 = $__r06; + $196 = $195<<16; + $197 = $n1; + $198 = $normalization_steps; + $199 = $197 << $198; + $200 = $199 & 65535; + $201 = $196 | $200; + $__r06 = $201; + $202 = $__r06; + $203 = $__m7; + $204 = ($202>>>0)<($203>>>0); + if ($204) { + $205 = $__q04; + $206 = (($205) + -1)|0; + $__q04 = $206; + $207 = $3; + $208 = $__r06; + $209 = (($208) + ($207))|0; + $__r06 = $209; + $210 = $__r06; + $211 = $3; + $212 = ($210>>>0)>=($211>>>0); + if ($212) { + $213 = $__r06; + $214 = $__m7; + $215 = ($213>>>0)<($214>>>0); + if ($215) { + $216 = $__q04; + $217 = (($216) + -1)|0; + $__q04 = $217; + $218 = $3; + $219 = $__r06; + $220 = (($219) + ($218))|0; + $__r06 = $220; + } + } + } + $221 = $__m7; + $222 = $__r06; + $223 = (($222) - ($221))|0; + $__r06 = $223; + $224 = $__q13; + $225 = $224<<16; + $226 = $__q04; + $227 = $225 | $226; + $dummy = $227; + $228 = $__r06; + $r = $228; + $229 = $r; + $230 = $normalization_steps; + $231 = $229 >>> $230; + $0 = $231; + $333 = $0; + STACKTOP = sp;return ($333|0); +} +function __gcry_mpih_divrem($qp,$qextra_limbs,$np,$nsize,$dp,$dsize) { + $qp = $qp|0; + $qextra_limbs = $qextra_limbs|0; + $np = $np|0; + $nsize = $nsize|0; + $dp = $dp|0; + $dsize = $dsize|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; + var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; + var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; + var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; + var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; + var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; + var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; + var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; + var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; + var $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0; + var $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0; + var $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0; + var $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $__d0 = 0, $__d012 = 0, $__d02 = 0, $__d028 = 0, $__d1 = 0, $__d11 = 0, $__d111 = 0, $__d127 = 0, $__m = 0, $__m17 = 0, $__m33 = 0, $__m7 = 0, $__q0 = 0, $__q014 = 0, $__q030 = 0, $__q04 = 0, $__q1 = 0, $__q113 = 0, $__q129 = 0, $__q13 = 0; + var $__r0 = 0, $__r016 = 0, $__r032 = 0, $__r06 = 0, $__r1 = 0, $__r115 = 0, $__r131 = 0, $__r15 = 0, $__u = 0, $__u42 = 0, $__uh = 0, $__uh40 = 0, $__ul = 0, $__ul38 = 0, $__v = 0, $__v43 = 0, $__vh = 0, $__vh41 = 0, $__vl = 0, $__vl39 = 0; + var $__x = 0, $__x0 = 0, $__x034 = 0, $__x1 = 0, $__x10 = 0, $__x135 = 0, $__x18 = 0, $__x19 = 0, $__x2 = 0, $__x236 = 0, $__x3 = 0, $__x337 = 0, $_i = 0, $cy_limb = 0, $d = 0, $d0 = 0, $d1 = 0, $d121 = 0, $dX = 0, $i = 0; + var $i20 = 0, $i8 = 0, $most_significant_q_limb = 0, $n0 = 0, $n022 = 0, $n1 = 0, $n124 = 0, $n19 = 0, $n2 = 0, $n225 = 0, $q = 0, $q23 = 0, $r = 0, $r26 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 320|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $qp; + $1 = $qextra_limbs; + $2 = $np; + $3 = $nsize; + $4 = $dp; + $5 = $dsize; + $most_significant_q_limb = 0; + $6 = $5; + switch ($6|0) { + case 0: { + __gcry_divide_by_zero(); + // unreachable; + break; + } + case 1: { + $7 = $4; + $8 = HEAP32[$7>>2]|0; + $d = $8; + $9 = $3; + $10 = (($9) - 1)|0; + $11 = $2; + $12 = (($11) + ($10<<2)|0); + $13 = HEAP32[$12>>2]|0; + $n1 = $13; + $14 = $n1; + $15 = $d; + $16 = ($14>>>0)>=($15>>>0); + if ($16) { + $17 = $d; + $18 = $n1; + $19 = (($18) - ($17))|0; + $n1 = $19; + $most_significant_q_limb = 1; + } + $20 = $1; + $21 = $0; + $22 = (($21) + ($20<<2)|0); + $0 = $22; + $23 = $3; + $24 = (($23) - 2)|0; + $i = $24; + while(1) { + $25 = $i; + $26 = ($25|0)>=(0); + if (!($26)) { + break; + } + $27 = $d; + $28 = $27 >>> 16; + $__d1 = $28; + $29 = $d; + $30 = $29 & 65535; + $__d0 = $30; + $31 = $n1; + $32 = $__d1; + $33 = (($31>>>0) % ($32>>>0))&-1; + $__r1 = $33; + $34 = $n1; + $35 = $__d1; + $36 = (($34>>>0) / ($35>>>0))&-1; + $__q1 = $36; + $37 = $__q1; + $38 = $__d0; + $39 = Math_imul($37, $38)|0; + $__m = $39; + $40 = $__r1; + $41 = $40<<16; + $42 = $i; + $43 = $2; + $44 = (($43) + ($42<<2)|0); + $45 = HEAP32[$44>>2]|0; + $46 = $45 >>> 16; + $47 = $41 | $46; + $__r1 = $47; + $48 = $__r1; + $49 = $__m; + $50 = ($48>>>0)<($49>>>0); + if ($50) { + $51 = $__q1; + $52 = (($51) + -1)|0; + $__q1 = $52; + $53 = $d; + $54 = $__r1; + $55 = (($54) + ($53))|0; + $__r1 = $55; + $56 = $__r1; + $57 = $d; + $58 = ($56>>>0)>=($57>>>0); + if ($58) { + $59 = $__r1; + $60 = $__m; + $61 = ($59>>>0)<($60>>>0); + if ($61) { + $62 = $__q1; + $63 = (($62) + -1)|0; + $__q1 = $63; + $64 = $d; + $65 = $__r1; + $66 = (($65) + ($64))|0; + $__r1 = $66; + } + } + } + $67 = $__m; + $68 = $__r1; + $69 = (($68) - ($67))|0; + $__r1 = $69; + $70 = $__r1; + $71 = $__d1; + $72 = (($70>>>0) % ($71>>>0))&-1; + $__r0 = $72; + $73 = $__r1; + $74 = $__d1; + $75 = (($73>>>0) / ($74>>>0))&-1; + $__q0 = $75; + $76 = $__q0; + $77 = $__d0; + $78 = Math_imul($76, $77)|0; + $__m = $78; + $79 = $__r0; + $80 = $79<<16; + $81 = $i; + $82 = $2; + $83 = (($82) + ($81<<2)|0); + $84 = HEAP32[$83>>2]|0; + $85 = $84 & 65535; + $86 = $80 | $85; + $__r0 = $86; + $87 = $__r0; + $88 = $__m; + $89 = ($87>>>0)<($88>>>0); + if ($89) { + $90 = $__q0; + $91 = (($90) + -1)|0; + $__q0 = $91; + $92 = $d; + $93 = $__r0; + $94 = (($93) + ($92))|0; + $__r0 = $94; + $95 = $__r0; + $96 = $d; + $97 = ($95>>>0)>=($96>>>0); + if ($97) { + $98 = $__r0; + $99 = $__m; + $100 = ($98>>>0)<($99>>>0); + if ($100) { + $101 = $__q0; + $102 = (($101) + -1)|0; + $__q0 = $102; + $103 = $d; + $104 = $__r0; + $105 = (($104) + ($103))|0; + $__r0 = $105; + } + } + } + $106 = $__m; + $107 = $__r0; + $108 = (($107) - ($106))|0; + $__r0 = $108; + $109 = $__q1; + $110 = $109<<16; + $111 = $__q0; + $112 = $110 | $111; + $113 = $i; + $114 = $0; + $115 = (($114) + ($113<<2)|0); + HEAP32[$115>>2] = $112; + $116 = $__r0; + $n1 = $116; + $117 = $i; + $118 = (($117) + -1)|0; + $i = $118; + } + $119 = $1; + $120 = $0; + $121 = (0 - ($119))|0; + $122 = (($120) + ($121<<2)|0); + $0 = $122; + $123 = $1; + $124 = (($123) - 1)|0; + $i = $124; + while(1) { + $125 = $i; + $126 = ($125|0)>=(0); + if (!($126)) { + break; + } + $127 = $d; + $128 = $127 >>> 16; + $__d11 = $128; + $129 = $d; + $130 = $129 & 65535; + $__d02 = $130; + $131 = $n1; + $132 = $__d11; + $133 = (($131>>>0) % ($132>>>0))&-1; + $__r15 = $133; + $134 = $n1; + $135 = $__d11; + $136 = (($134>>>0) / ($135>>>0))&-1; + $__q13 = $136; + $137 = $__q13; + $138 = $__d02; + $139 = Math_imul($137, $138)|0; + $__m7 = $139; + $140 = $__r15; + $141 = $140<<16; + $__r15 = $141; + $142 = $__r15; + $143 = $__m7; + $144 = ($142>>>0)<($143>>>0); + if ($144) { + $145 = $__q13; + $146 = (($145) + -1)|0; + $__q13 = $146; + $147 = $d; + $148 = $__r15; + $149 = (($148) + ($147))|0; + $__r15 = $149; + $150 = $__r15; + $151 = $d; + $152 = ($150>>>0)>=($151>>>0); + if ($152) { + $153 = $__r15; + $154 = $__m7; + $155 = ($153>>>0)<($154>>>0); + if ($155) { + $156 = $__q13; + $157 = (($156) + -1)|0; + $__q13 = $157; + $158 = $d; + $159 = $__r15; + $160 = (($159) + ($158))|0; + $__r15 = $160; + } + } + } + $161 = $__m7; + $162 = $__r15; + $163 = (($162) - ($161))|0; + $__r15 = $163; + $164 = $__r15; + $165 = $__d11; + $166 = (($164>>>0) % ($165>>>0))&-1; + $__r06 = $166; + $167 = $__r15; + $168 = $__d11; + $169 = (($167>>>0) / ($168>>>0))&-1; + $__q04 = $169; + $170 = $__q04; + $171 = $__d02; + $172 = Math_imul($170, $171)|0; + $__m7 = $172; + $173 = $__r06; + $174 = $173<<16; + $__r06 = $174; + $175 = $__r06; + $176 = $__m7; + $177 = ($175>>>0)<($176>>>0); + if ($177) { + $178 = $__q04; + $179 = (($178) + -1)|0; + $__q04 = $179; + $180 = $d; + $181 = $__r06; + $182 = (($181) + ($180))|0; + $__r06 = $182; + $183 = $__r06; + $184 = $d; + $185 = ($183>>>0)>=($184>>>0); + if ($185) { + $186 = $__r06; + $187 = $__m7; + $188 = ($186>>>0)<($187>>>0); + if ($188) { + $189 = $__q04; + $190 = (($189) + -1)|0; + $__q04 = $190; + $191 = $d; + $192 = $__r06; + $193 = (($192) + ($191))|0; + $__r06 = $193; + } + } + } + $194 = $__m7; + $195 = $__r06; + $196 = (($195) - ($194))|0; + $__r06 = $196; + $197 = $__q13; + $198 = $197<<16; + $199 = $__q04; + $200 = $198 | $199; + $201 = $i; + $202 = $0; + $203 = (($202) + ($201<<2)|0); + HEAP32[$203>>2] = $200; + $204 = $__r06; + $n1 = $204; + $205 = $i; + $206 = (($205) + -1)|0; + $i = $206; + } + $207 = $n1; + $208 = $2; + HEAP32[$208>>2] = $207; + $739 = $most_significant_q_limb; + STACKTOP = sp;return ($739|0); + break; + } + case 2: { + $209 = $3; + $210 = (($209) - 2)|0; + $211 = $2; + $212 = (($211) + ($210<<2)|0); + $2 = $212; + $213 = $4; + $214 = ((($213)) + 4|0); + $215 = HEAP32[$214>>2]|0; + $d1 = $215; + $216 = $4; + $217 = HEAP32[$216>>2]|0; + $d0 = $217; + $218 = $2; + $219 = ((($218)) + 4|0); + $220 = HEAP32[$219>>2]|0; + $n19 = $220; + $221 = $2; + $222 = HEAP32[$221>>2]|0; + $n0 = $222; + $223 = $n19; + $224 = $d1; + $225 = ($223>>>0)>=($224>>>0); + do { + if ($225) { + $226 = $n19; + $227 = $d1; + $228 = ($226>>>0)>($227>>>0); + if (!($228)) { + $229 = $n0; + $230 = $d0; + $231 = ($229>>>0)>=($230>>>0); + if (!($231)) { + break; + } + } + $232 = $n0; + $233 = $d0; + $234 = (($232) - ($233))|0; + $__x = $234; + $235 = $n19; + $236 = $d1; + $237 = (($235) - ($236))|0; + $238 = $__x; + $239 = $n0; + $240 = ($238>>>0)>($239>>>0); + $241 = $240&1; + $242 = (($237) - ($241))|0; + $n19 = $242; + $243 = $__x; + $n0 = $243; + $most_significant_q_limb = 1; + } + } while(0); + $244 = $1; + $245 = $3; + $246 = (($244) + ($245))|0; + $247 = (($246) - 2)|0; + $248 = (($247) - 1)|0; + $i8 = $248; + while(1) { + $249 = $i8; + $250 = ($249|0)>=(0); + if (!($250)) { + break; + } + $251 = $i8; + $252 = $1; + $253 = ($251|0)>=($252|0); + $254 = $2; + if ($253) { + $255 = ((($254)) + -4|0); + $2 = $255; + } else { + HEAP32[$254>>2] = 0; + } + $256 = $n19; + $257 = $d1; + $258 = ($256|0)==($257|0); + do { + if ($258) { + $q = -1; + $259 = $n0; + $260 = $d1; + $261 = (($259) + ($260))|0; + $r = $261; + $262 = $r; + $263 = $d1; + $264 = ($262>>>0)<($263>>>0); + if ($264) { + $265 = $2; + $266 = HEAP32[$265>>2]|0; + $267 = $d0; + $268 = (($266) + ($267))|0; + $__x10 = $268; + $269 = $r; + $270 = $d0; + $271 = (($269) - ($270))|0; + $272 = (($271) + 0)|0; + $273 = $__x10; + $274 = $2; + $275 = HEAP32[$274>>2]|0; + $276 = ($273>>>0)<($275>>>0); + $277 = $276&1; + $278 = (($272) + ($277))|0; + $n19 = $278; + $279 = $__x10; + $n0 = $279; + $280 = $q; + $281 = $i8; + $282 = $0; + $283 = (($282) + ($281<<2)|0); + HEAP32[$283>>2] = $280; + break; + } else { + $284 = $d0; + $285 = $d0; + $286 = ($285|0)!=(0); + $287 = $286 ? 1 : 0; + $288 = (($284) - ($287))|0; + $n19 = $288; + $289 = $d0; + $290 = (0 - ($289))|0; + $n0 = $290; + label = 52; + break; + } + } else { + $291 = $d1; + $292 = $291 >>> 16; + $__d111 = $292; + $293 = $d1; + $294 = $293 & 65535; + $__d012 = $294; + $295 = $n19; + $296 = $__d111; + $297 = (($295>>>0) % ($296>>>0))&-1; + $__r115 = $297; + $298 = $n19; + $299 = $__d111; + $300 = (($298>>>0) / ($299>>>0))&-1; + $__q113 = $300; + $301 = $__q113; + $302 = $__d012; + $303 = Math_imul($301, $302)|0; + $__m17 = $303; + $304 = $__r115; + $305 = $304<<16; + $306 = $n0; + $307 = $306 >>> 16; + $308 = $305 | $307; + $__r115 = $308; + $309 = $__r115; + $310 = $__m17; + $311 = ($309>>>0)<($310>>>0); + if ($311) { + $312 = $__q113; + $313 = (($312) + -1)|0; + $__q113 = $313; + $314 = $d1; + $315 = $__r115; + $316 = (($315) + ($314))|0; + $__r115 = $316; + $317 = $__r115; + $318 = $d1; + $319 = ($317>>>0)>=($318>>>0); + if ($319) { + $320 = $__r115; + $321 = $__m17; + $322 = ($320>>>0)<($321>>>0); + if ($322) { + $323 = $__q113; + $324 = (($323) + -1)|0; + $__q113 = $324; + $325 = $d1; + $326 = $__r115; + $327 = (($326) + ($325))|0; + $__r115 = $327; + } + } + } + $328 = $__m17; + $329 = $__r115; + $330 = (($329) - ($328))|0; + $__r115 = $330; + $331 = $__r115; + $332 = $__d111; + $333 = (($331>>>0) % ($332>>>0))&-1; + $__r016 = $333; + $334 = $__r115; + $335 = $__d111; + $336 = (($334>>>0) / ($335>>>0))&-1; + $__q014 = $336; + $337 = $__q014; + $338 = $__d012; + $339 = Math_imul($337, $338)|0; + $__m17 = $339; + $340 = $__r016; + $341 = $340<<16; + $342 = $n0; + $343 = $342 & 65535; + $344 = $341 | $343; + $__r016 = $344; + $345 = $__r016; + $346 = $__m17; + $347 = ($345>>>0)<($346>>>0); + if ($347) { + $348 = $__q014; + $349 = (($348) + -1)|0; + $__q014 = $349; + $350 = $d1; + $351 = $__r016; + $352 = (($351) + ($350))|0; + $__r016 = $352; + $353 = $__r016; + $354 = $d1; + $355 = ($353>>>0)>=($354>>>0); + if ($355) { + $356 = $__r016; + $357 = $__m17; + $358 = ($356>>>0)<($357>>>0); + if ($358) { + $359 = $__q014; + $360 = (($359) + -1)|0; + $__q014 = $360; + $361 = $d1; + $362 = $__r016; + $363 = (($362) + ($361))|0; + $__r016 = $363; + } + } + } + $364 = $__m17; + $365 = $__r016; + $366 = (($365) - ($364))|0; + $__r016 = $366; + $367 = $__q113; + $368 = $367<<16; + $369 = $__q014; + $370 = $368 | $369; + $q = $370; + $371 = $__r016; + $r = $371; + $372 = $d0; + $__u = $372; + $373 = $q; + $__v = $373; + $374 = $__u; + $375 = $374 & 65535; + $__ul = $375; + $376 = $__u; + $377 = $376 >>> 16; + $__uh = $377; + $378 = $__v; + $379 = $378 & 65535; + $__vl = $379; + $380 = $__v; + $381 = $380 >>> 16; + $__vh = $381; + $382 = $__ul; + $383 = $__vl; + $384 = Math_imul($382, $383)|0; + $__x0 = $384; + $385 = $__ul; + $386 = $__vh; + $387 = Math_imul($385, $386)|0; + $__x1 = $387; + $388 = $__uh; + $389 = $__vl; + $390 = Math_imul($388, $389)|0; + $__x2 = $390; + $391 = $__uh; + $392 = $__vh; + $393 = Math_imul($391, $392)|0; + $__x3 = $393; + $394 = $__x0; + $395 = $394 >>> 16; + $396 = $__x1; + $397 = (($396) + ($395))|0; + $__x1 = $397; + $398 = $__x2; + $399 = $__x1; + $400 = (($399) + ($398))|0; + $__x1 = $400; + $401 = $__x1; + $402 = $__x2; + $403 = ($401>>>0)<($402>>>0); + if ($403) { + $404 = $__x3; + $405 = (($404) + 65536)|0; + $__x3 = $405; + } + $406 = $__x3; + $407 = $__x1; + $408 = $407 >>> 16; + $409 = (($406) + ($408))|0; + $n19 = $409; + $410 = $__x1; + $411 = $410 & 65535; + $412 = $411 << 16; + $413 = $__x0; + $414 = $413 & 65535; + $415 = (($412) + ($414))|0; + $n0 = $415; + label = 52; + } + } while(0); + if ((label|0) == 52) { + label = 0; + $416 = $2; + $417 = HEAP32[$416>>2]|0; + $n2 = $417; + while(1) { + $418 = $n19; + $419 = $r; + $420 = ($418>>>0)>($419>>>0); + if (!($420)) { + $421 = $n19; + $422 = $r; + $423 = ($421|0)==($422|0); + if (!($423)) { + break; + } + $424 = $n0; + $425 = $n2; + $426 = ($424>>>0)>($425>>>0); + if (!($426)) { + break; + } + } + $427 = $q; + $428 = (($427) + -1)|0; + $q = $428; + $429 = $n0; + $430 = $d0; + $431 = (($429) - ($430))|0; + $__x18 = $431; + $432 = $n19; + $433 = (($432) - 0)|0; + $434 = $__x18; + $435 = $n0; + $436 = ($434>>>0)>($435>>>0); + $437 = $436&1; + $438 = (($433) - ($437))|0; + $n19 = $438; + $439 = $__x18; + $n0 = $439; + $440 = $d1; + $441 = $r; + $442 = (($441) + ($440))|0; + $r = $442; + $443 = $r; + $444 = $d1; + $445 = ($443>>>0)>=($444>>>0); + if (!($445)) { + break; + } + } + $446 = $q; + $447 = $i8; + $448 = $0; + $449 = (($448) + ($447<<2)|0); + HEAP32[$449>>2] = $446; + $450 = $n2; + $451 = $n0; + $452 = (($450) - ($451))|0; + $__x19 = $452; + $453 = $r; + $454 = $n19; + $455 = (($453) - ($454))|0; + $456 = $__x19; + $457 = $n2; + $458 = ($456>>>0)>($457>>>0); + $459 = $458&1; + $460 = (($455) - ($459))|0; + $n19 = $460; + $461 = $__x19; + $n0 = $461; + } + $462 = $i8; + $463 = (($462) + -1)|0; + $i8 = $463; + } + $464 = $n19; + $465 = $2; + $466 = ((($465)) + 4|0); + HEAP32[$466>>2] = $464; + $467 = $n0; + $468 = $2; + HEAP32[$468>>2] = $467; + $739 = $most_significant_q_limb; + STACKTOP = sp;return ($739|0); + break; + } + default: { + $469 = $3; + $470 = $5; + $471 = (($469) - ($470))|0; + $472 = $2; + $473 = (($472) + ($471<<2)|0); + $2 = $473; + $474 = $5; + $475 = (($474) - 1)|0; + $476 = $4; + $477 = (($476) + ($475<<2)|0); + $478 = HEAP32[$477>>2]|0; + $dX = $478; + $479 = $5; + $480 = (($479) - 2)|0; + $481 = $4; + $482 = (($481) + ($480<<2)|0); + $483 = HEAP32[$482>>2]|0; + $d121 = $483; + $484 = $5; + $485 = (($484) - 1)|0; + $486 = $2; + $487 = (($486) + ($485<<2)|0); + $488 = HEAP32[$487>>2]|0; + $n022 = $488; + $489 = $n022; + $490 = $dX; + $491 = ($489>>>0)>=($490>>>0); + do { + if ($491) { + $492 = $n022; + $493 = $dX; + $494 = ($492>>>0)>($493>>>0); + if (!($494)) { + $495 = $2; + $496 = $4; + $497 = $5; + $498 = (($497) - 1)|0; + $499 = (__gcry_mpih_cmp($495,$496,$498)|0); + $500 = ($499|0)>=(0); + if (!($500)) { + break; + } + } + $501 = $2; + $502 = $2; + $503 = $4; + $504 = $5; + (__gcry_mpih_sub_n($501,$502,$503,$504)|0); + $505 = $5; + $506 = (($505) - 1)|0; + $507 = $2; + $508 = (($507) + ($506<<2)|0); + $509 = HEAP32[$508>>2]|0; + $n022 = $509; + $most_significant_q_limb = 1; + } + } while(0); + $510 = $1; + $511 = $3; + $512 = (($510) + ($511))|0; + $513 = $5; + $514 = (($512) - ($513))|0; + $515 = (($514) - 1)|0; + $i20 = $515; + while(1) { + $516 = $i20; + $517 = ($516|0)>=(0); + if (!($517)) { + break; + } + $518 = $i20; + $519 = $1; + $520 = ($518|0)>=($519|0); + if ($520) { + $521 = $2; + $522 = ((($521)) + -4|0); + $2 = $522; + $523 = $5; + $524 = $2; + $525 = (($524) + ($523<<2)|0); + $526 = HEAP32[$525>>2]|0; + $n225 = $526; + } else { + $527 = $5; + $528 = (($527) - 1)|0; + $529 = $2; + $530 = (($529) + ($528<<2)|0); + $531 = HEAP32[$530>>2]|0; + $n225 = $531; + $532 = $5; + $533 = (($532) - 1)|0; + $534 = (($533) - 1)|0; + $_i = $534; + while(1) { + $535 = $_i; + $536 = ($535|0)>=(0); + if (!($536)) { + break; + } + $537 = $_i; + $538 = $2; + $539 = (($538) + ($537<<2)|0); + $540 = HEAP32[$539>>2]|0; + $541 = $_i; + $542 = $2; + $543 = ((($542)) + 4|0); + $544 = (($543) + ($541<<2)|0); + HEAP32[$544>>2] = $540; + $545 = $_i; + $546 = (($545) + -1)|0; + $_i = $546; + } + $547 = $2; + HEAP32[$547>>2] = 0; + } + $548 = $n022; + $549 = $dX; + $550 = ($548|0)==($549|0); + L20: do { + if ($550) { + $q23 = -1; + } else { + $551 = $dX; + $552 = $551 >>> 16; + $__d127 = $552; + $553 = $dX; + $554 = $553 & 65535; + $__d028 = $554; + $555 = $n022; + $556 = $__d127; + $557 = (($555>>>0) % ($556>>>0))&-1; + $__r131 = $557; + $558 = $n022; + $559 = $__d127; + $560 = (($558>>>0) / ($559>>>0))&-1; + $__q129 = $560; + $561 = $__q129; + $562 = $__d028; + $563 = Math_imul($561, $562)|0; + $__m33 = $563; + $564 = $__r131; + $565 = $564<<16; + $566 = $5; + $567 = (($566) - 1)|0; + $568 = $2; + $569 = (($568) + ($567<<2)|0); + $570 = HEAP32[$569>>2]|0; + $571 = $570 >>> 16; + $572 = $565 | $571; + $__r131 = $572; + $573 = $__r131; + $574 = $__m33; + $575 = ($573>>>0)<($574>>>0); + if ($575) { + $576 = $__q129; + $577 = (($576) + -1)|0; + $__q129 = $577; + $578 = $dX; + $579 = $__r131; + $580 = (($579) + ($578))|0; + $__r131 = $580; + $581 = $__r131; + $582 = $dX; + $583 = ($581>>>0)>=($582>>>0); + if ($583) { + $584 = $__r131; + $585 = $__m33; + $586 = ($584>>>0)<($585>>>0); + if ($586) { + $587 = $__q129; + $588 = (($587) + -1)|0; + $__q129 = $588; + $589 = $dX; + $590 = $__r131; + $591 = (($590) + ($589))|0; + $__r131 = $591; + } + } + } + $592 = $__m33; + $593 = $__r131; + $594 = (($593) - ($592))|0; + $__r131 = $594; + $595 = $__r131; + $596 = $__d127; + $597 = (($595>>>0) % ($596>>>0))&-1; + $__r032 = $597; + $598 = $__r131; + $599 = $__d127; + $600 = (($598>>>0) / ($599>>>0))&-1; + $__q030 = $600; + $601 = $__q030; + $602 = $__d028; + $603 = Math_imul($601, $602)|0; + $__m33 = $603; + $604 = $__r032; + $605 = $604<<16; + $606 = $5; + $607 = (($606) - 1)|0; + $608 = $2; + $609 = (($608) + ($607<<2)|0); + $610 = HEAP32[$609>>2]|0; + $611 = $610 & 65535; + $612 = $605 | $611; + $__r032 = $612; + $613 = $__r032; + $614 = $__m33; + $615 = ($613>>>0)<($614>>>0); + if ($615) { + $616 = $__q030; + $617 = (($616) + -1)|0; + $__q030 = $617; + $618 = $dX; + $619 = $__r032; + $620 = (($619) + ($618))|0; + $__r032 = $620; + $621 = $__r032; + $622 = $dX; + $623 = ($621>>>0)>=($622>>>0); + if ($623) { + $624 = $__r032; + $625 = $__m33; + $626 = ($624>>>0)<($625>>>0); + if ($626) { + $627 = $__q030; + $628 = (($627) + -1)|0; + $__q030 = $628; + $629 = $dX; + $630 = $__r032; + $631 = (($630) + ($629))|0; + $__r032 = $631; + } + } + } + $632 = $__m33; + $633 = $__r032; + $634 = (($633) - ($632))|0; + $__r032 = $634; + $635 = $__q129; + $636 = $635<<16; + $637 = $__q030; + $638 = $636 | $637; + $q23 = $638; + $639 = $__r032; + $r26 = $639; + $640 = $d121; + $__u42 = $640; + $641 = $q23; + $__v43 = $641; + $642 = $__u42; + $643 = $642 & 65535; + $__ul38 = $643; + $644 = $__u42; + $645 = $644 >>> 16; + $__uh40 = $645; + $646 = $__v43; + $647 = $646 & 65535; + $__vl39 = $647; + $648 = $__v43; + $649 = $648 >>> 16; + $__vh41 = $649; + $650 = $__ul38; + $651 = $__vl39; + $652 = Math_imul($650, $651)|0; + $__x034 = $652; + $653 = $__ul38; + $654 = $__vh41; + $655 = Math_imul($653, $654)|0; + $__x135 = $655; + $656 = $__uh40; + $657 = $__vl39; + $658 = Math_imul($656, $657)|0; + $__x236 = $658; + $659 = $__uh40; + $660 = $__vh41; + $661 = Math_imul($659, $660)|0; + $__x337 = $661; + $662 = $__x034; + $663 = $662 >>> 16; + $664 = $__x135; + $665 = (($664) + ($663))|0; + $__x135 = $665; + $666 = $__x236; + $667 = $__x135; + $668 = (($667) + ($666))|0; + $__x135 = $668; + $669 = $__x135; + $670 = $__x236; + $671 = ($669>>>0)<($670>>>0); + if ($671) { + $672 = $__x337; + $673 = (($672) + 65536)|0; + $__x337 = $673; + } + $674 = $__x337; + $675 = $__x135; + $676 = $675 >>> 16; + $677 = (($674) + ($676))|0; + $n124 = $677; + $678 = $__x135; + $679 = $678 & 65535; + $680 = $679 << 16; + $681 = $__x034; + $682 = $681 & 65535; + $683 = (($680) + ($682))|0; + $n022 = $683; + while(1) { + $684 = $n124; + $685 = $r26; + $686 = ($684>>>0)>($685>>>0); + if (!($686)) { + $687 = $n124; + $688 = $r26; + $689 = ($687|0)==($688|0); + if (!($689)) { + break L20; + } + $690 = $n022; + $691 = $5; + $692 = (($691) - 2)|0; + $693 = $2; + $694 = (($693) + ($692<<2)|0); + $695 = HEAP32[$694>>2]|0; + $696 = ($690>>>0)>($695>>>0); + if (!($696)) { + break L20; + } + } + $697 = $q23; + $698 = (($697) + -1)|0; + $q23 = $698; + $699 = $dX; + $700 = $r26; + $701 = (($700) + ($699))|0; + $r26 = $701; + $702 = $r26; + $703 = $dX; + $704 = ($702>>>0)<($703>>>0); + if ($704) { + break L20; + } + $705 = $n022; + $706 = $d121; + $707 = ($705>>>0)<($706>>>0); + $708 = $707&1; + $709 = $n124; + $710 = (($709) - ($708))|0; + $n124 = $710; + $711 = $d121; + $712 = $n022; + $713 = (($712) - ($711))|0; + $n022 = $713; + } + } + } while(0); + $714 = $2; + $715 = $4; + $716 = $5; + $717 = $q23; + $718 = (__gcry_mpih_submul_1($714,$715,$716,$717)|0); + $cy_limb = $718; + $719 = $n225; + $720 = $cy_limb; + $721 = ($719|0)!=($720|0); + if ($721) { + $722 = $2; + $723 = $2; + $724 = $4; + $725 = $5; + (__gcry_mpih_add_n($722,$723,$724,$725)|0); + $726 = $q23; + $727 = (($726) + -1)|0; + $q23 = $727; + } + $728 = $q23; + $729 = $i20; + $730 = $0; + $731 = (($730) + ($729<<2)|0); + HEAP32[$731>>2] = $728; + $732 = $5; + $733 = (($732) - 1)|0; + $734 = $2; + $735 = (($734) + ($733<<2)|0); + $736 = HEAP32[$735>>2]|0; + $n022 = $736; + $737 = $i20; + $738 = (($737) + -1)|0; + $i20 = $738; + } + $739 = $most_significant_q_limb; + STACKTOP = sp;return ($739|0); + } + } + return (0)|0; +} +function __gcry_mpih_divmod_1($quot_ptr,$dividend_ptr,$dividend_size,$divisor_limb) { + $quot_ptr = $quot_ptr|0; + $dividend_ptr = $dividend_ptr|0; + $dividend_size = $dividend_size|0; + $divisor_limb = $divisor_limb|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $__a = 0, $__d0 = 0, $__d02 = 0, $__d09 = 0, $__d1 = 0, $__d11 = 0, $__d18 = 0, $__m = 0, $__m14 = 0, $__m7 = 0, $__q0 = 0, $__q011 = 0, $__q04 = 0, $__q1 = 0, $__q110 = 0; + var $__q13 = 0, $__r0 = 0, $__r013 = 0, $__r06 = 0, $__r1 = 0, $__r112 = 0, $__r15 = 0, $__xr = 0, $i = 0, $n0 = 0, $n1 = 0, $normalization_steps = 0, $r = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $quot_ptr; + $2 = $dividend_ptr; + $3 = $dividend_size; + $4 = $divisor_limb; + $5 = $3; + $6 = ($5|0)!=(0); + if (!($6)) { + $0 = 0; + $344 = $0; + STACKTOP = sp;return ($344|0); + } + $7 = $4; + $__xr = $7; + $8 = $__xr; + $9 = ($8>>>0)<(65536); + $10 = $__xr; + $11 = ($10>>>0)<(256); + $12 = $11 ? 0 : 8; + $13 = ($10>>>0)<(16777216); + $14 = $13 ? 16 : 24; + $15 = $9 ? $12 : $14; + $__a = $15; + $16 = $__xr; + $17 = $__a; + $18 = $16 >>> $17; + $19 = (45829 + ($18)|0); + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = $__a; + $23 = (($21) + ($22))|0; + $24 = (32 - ($23))|0; + $normalization_steps = $24; + $25 = $normalization_steps; + $26 = ($25|0)!=(0); + if (!($26)) { + $238 = $3; + $239 = (($238) - 1)|0; + $i = $239; + $240 = $i; + $241 = $2; + $242 = (($241) + ($240<<2)|0); + $243 = HEAP32[$242>>2]|0; + $r = $243; + $244 = $r; + $245 = $4; + $246 = ($244>>>0)>=($245>>>0); + if ($246) { + $r = 0; + } else { + $247 = $i; + $248 = (($247) + -1)|0; + $i = $248; + $249 = $1; + $250 = (($249) + ($247<<2)|0); + HEAP32[$250>>2] = 0; + } + while(1) { + $251 = $i; + $252 = ($251|0)>=(0); + if (!($252)) { + break; + } + $253 = $i; + $254 = $2; + $255 = (($254) + ($253<<2)|0); + $256 = HEAP32[$255>>2]|0; + $n0 = $256; + $257 = $4; + $258 = $257 >>> 16; + $__d18 = $258; + $259 = $4; + $260 = $259 & 65535; + $__d09 = $260; + $261 = $r; + $262 = $__d18; + $263 = (($261>>>0) % ($262>>>0))&-1; + $__r112 = $263; + $264 = $r; + $265 = $__d18; + $266 = (($264>>>0) / ($265>>>0))&-1; + $__q110 = $266; + $267 = $__q110; + $268 = $__d09; + $269 = Math_imul($267, $268)|0; + $__m14 = $269; + $270 = $__r112; + $271 = $270<<16; + $272 = $n0; + $273 = $272 >>> 16; + $274 = $271 | $273; + $__r112 = $274; + $275 = $__r112; + $276 = $__m14; + $277 = ($275>>>0)<($276>>>0); + if ($277) { + $278 = $__q110; + $279 = (($278) + -1)|0; + $__q110 = $279; + $280 = $4; + $281 = $__r112; + $282 = (($281) + ($280))|0; + $__r112 = $282; + $283 = $__r112; + $284 = $4; + $285 = ($283>>>0)>=($284>>>0); + if ($285) { + $286 = $__r112; + $287 = $__m14; + $288 = ($286>>>0)<($287>>>0); + if ($288) { + $289 = $__q110; + $290 = (($289) + -1)|0; + $__q110 = $290; + $291 = $4; + $292 = $__r112; + $293 = (($292) + ($291))|0; + $__r112 = $293; + } + } + } + $294 = $__m14; + $295 = $__r112; + $296 = (($295) - ($294))|0; + $__r112 = $296; + $297 = $__r112; + $298 = $__d18; + $299 = (($297>>>0) % ($298>>>0))&-1; + $__r013 = $299; + $300 = $__r112; + $301 = $__d18; + $302 = (($300>>>0) / ($301>>>0))&-1; + $__q011 = $302; + $303 = $__q011; + $304 = $__d09; + $305 = Math_imul($303, $304)|0; + $__m14 = $305; + $306 = $__r013; + $307 = $306<<16; + $308 = $n0; + $309 = $308 & 65535; + $310 = $307 | $309; + $__r013 = $310; + $311 = $__r013; + $312 = $__m14; + $313 = ($311>>>0)<($312>>>0); + if ($313) { + $314 = $__q011; + $315 = (($314) + -1)|0; + $__q011 = $315; + $316 = $4; + $317 = $__r013; + $318 = (($317) + ($316))|0; + $__r013 = $318; + $319 = $__r013; + $320 = $4; + $321 = ($319>>>0)>=($320>>>0); + if ($321) { + $322 = $__r013; + $323 = $__m14; + $324 = ($322>>>0)<($323>>>0); + if ($324) { + $325 = $__q011; + $326 = (($325) + -1)|0; + $__q011 = $326; + $327 = $4; + $328 = $__r013; + $329 = (($328) + ($327))|0; + $__r013 = $329; + } + } + } + $330 = $__m14; + $331 = $__r013; + $332 = (($331) - ($330))|0; + $__r013 = $332; + $333 = $__q110; + $334 = $333<<16; + $335 = $__q011; + $336 = $334 | $335; + $337 = $i; + $338 = $1; + $339 = (($338) + ($337<<2)|0); + HEAP32[$339>>2] = $336; + $340 = $__r013; + $r = $340; + $341 = $i; + $342 = (($341) + -1)|0; + $i = $342; + } + $343 = $r; + $0 = $343; + $344 = $0; + STACKTOP = sp;return ($344|0); + } + $27 = $normalization_steps; + $28 = $4; + $29 = $28 << $27; + $4 = $29; + $30 = $3; + $31 = (($30) - 1)|0; + $32 = $2; + $33 = (($32) + ($31<<2)|0); + $34 = HEAP32[$33>>2]|0; + $n1 = $34; + $35 = $n1; + $36 = $normalization_steps; + $37 = (32 - ($36))|0; + $38 = $35 >>> $37; + $r = $38; + $39 = $3; + $40 = (($39) - 2)|0; + $i = $40; + while(1) { + $41 = $i; + $42 = ($41|0)>=(0); + if (!($42)) { + break; + } + $43 = $i; + $44 = $2; + $45 = (($44) + ($43<<2)|0); + $46 = HEAP32[$45>>2]|0; + $n0 = $46; + $47 = $4; + $48 = $47 >>> 16; + $__d1 = $48; + $49 = $4; + $50 = $49 & 65535; + $__d0 = $50; + $51 = $r; + $52 = $__d1; + $53 = (($51>>>0) % ($52>>>0))&-1; + $__r1 = $53; + $54 = $r; + $55 = $__d1; + $56 = (($54>>>0) / ($55>>>0))&-1; + $__q1 = $56; + $57 = $__q1; + $58 = $__d0; + $59 = Math_imul($57, $58)|0; + $__m = $59; + $60 = $__r1; + $61 = $60<<16; + $62 = $n1; + $63 = $normalization_steps; + $64 = $62 << $63; + $65 = $n0; + $66 = $normalization_steps; + $67 = (32 - ($66))|0; + $68 = $65 >>> $67; + $69 = $64 | $68; + $70 = $69 >>> 16; + $71 = $61 | $70; + $__r1 = $71; + $72 = $__r1; + $73 = $__m; + $74 = ($72>>>0)<($73>>>0); + if ($74) { + $75 = $__q1; + $76 = (($75) + -1)|0; + $__q1 = $76; + $77 = $4; + $78 = $__r1; + $79 = (($78) + ($77))|0; + $__r1 = $79; + $80 = $__r1; + $81 = $4; + $82 = ($80>>>0)>=($81>>>0); + if ($82) { + $83 = $__r1; + $84 = $__m; + $85 = ($83>>>0)<($84>>>0); + if ($85) { + $86 = $__q1; + $87 = (($86) + -1)|0; + $__q1 = $87; + $88 = $4; + $89 = $__r1; + $90 = (($89) + ($88))|0; + $__r1 = $90; + } + } + } + $91 = $__m; + $92 = $__r1; + $93 = (($92) - ($91))|0; + $__r1 = $93; + $94 = $__r1; + $95 = $__d1; + $96 = (($94>>>0) % ($95>>>0))&-1; + $__r0 = $96; + $97 = $__r1; + $98 = $__d1; + $99 = (($97>>>0) / ($98>>>0))&-1; + $__q0 = $99; + $100 = $__q0; + $101 = $__d0; + $102 = Math_imul($100, $101)|0; + $__m = $102; + $103 = $__r0; + $104 = $103<<16; + $105 = $n1; + $106 = $normalization_steps; + $107 = $105 << $106; + $108 = $n0; + $109 = $normalization_steps; + $110 = (32 - ($109))|0; + $111 = $108 >>> $110; + $112 = $107 | $111; + $113 = $112 & 65535; + $114 = $104 | $113; + $__r0 = $114; + $115 = $__r0; + $116 = $__m; + $117 = ($115>>>0)<($116>>>0); + if ($117) { + $118 = $__q0; + $119 = (($118) + -1)|0; + $__q0 = $119; + $120 = $4; + $121 = $__r0; + $122 = (($121) + ($120))|0; + $__r0 = $122; + $123 = $__r0; + $124 = $4; + $125 = ($123>>>0)>=($124>>>0); + if ($125) { + $126 = $__r0; + $127 = $__m; + $128 = ($126>>>0)<($127>>>0); + if ($128) { + $129 = $__q0; + $130 = (($129) + -1)|0; + $__q0 = $130; + $131 = $4; + $132 = $__r0; + $133 = (($132) + ($131))|0; + $__r0 = $133; + } + } + } + $134 = $__m; + $135 = $__r0; + $136 = (($135) - ($134))|0; + $__r0 = $136; + $137 = $__q1; + $138 = $137<<16; + $139 = $__q0; + $140 = $138 | $139; + $141 = $i; + $142 = (($141) + 1)|0; + $143 = $1; + $144 = (($143) + ($142<<2)|0); + HEAP32[$144>>2] = $140; + $145 = $__r0; + $r = $145; + $146 = $n0; + $n1 = $146; + $147 = $i; + $148 = (($147) + -1)|0; + $i = $148; + } + $149 = $4; + $150 = $149 >>> 16; + $__d11 = $150; + $151 = $4; + $152 = $151 & 65535; + $__d02 = $152; + $153 = $r; + $154 = $__d11; + $155 = (($153>>>0) % ($154>>>0))&-1; + $__r15 = $155; + $156 = $r; + $157 = $__d11; + $158 = (($156>>>0) / ($157>>>0))&-1; + $__q13 = $158; + $159 = $__q13; + $160 = $__d02; + $161 = Math_imul($159, $160)|0; + $__m7 = $161; + $162 = $__r15; + $163 = $162<<16; + $164 = $n1; + $165 = $normalization_steps; + $166 = $164 << $165; + $167 = $166 >>> 16; + $168 = $163 | $167; + $__r15 = $168; + $169 = $__r15; + $170 = $__m7; + $171 = ($169>>>0)<($170>>>0); + if ($171) { + $172 = $__q13; + $173 = (($172) + -1)|0; + $__q13 = $173; + $174 = $4; + $175 = $__r15; + $176 = (($175) + ($174))|0; + $__r15 = $176; + $177 = $__r15; + $178 = $4; + $179 = ($177>>>0)>=($178>>>0); + if ($179) { + $180 = $__r15; + $181 = $__m7; + $182 = ($180>>>0)<($181>>>0); + if ($182) { + $183 = $__q13; + $184 = (($183) + -1)|0; + $__q13 = $184; + $185 = $4; + $186 = $__r15; + $187 = (($186) + ($185))|0; + $__r15 = $187; + } + } + } + $188 = $__m7; + $189 = $__r15; + $190 = (($189) - ($188))|0; + $__r15 = $190; + $191 = $__r15; + $192 = $__d11; + $193 = (($191>>>0) % ($192>>>0))&-1; + $__r06 = $193; + $194 = $__r15; + $195 = $__d11; + $196 = (($194>>>0) / ($195>>>0))&-1; + $__q04 = $196; + $197 = $__q04; + $198 = $__d02; + $199 = Math_imul($197, $198)|0; + $__m7 = $199; + $200 = $__r06; + $201 = $200<<16; + $202 = $n1; + $203 = $normalization_steps; + $204 = $202 << $203; + $205 = $204 & 65535; + $206 = $201 | $205; + $__r06 = $206; + $207 = $__r06; + $208 = $__m7; + $209 = ($207>>>0)<($208>>>0); + if ($209) { + $210 = $__q04; + $211 = (($210) + -1)|0; + $__q04 = $211; + $212 = $4; + $213 = $__r06; + $214 = (($213) + ($212))|0; + $__r06 = $214; + $215 = $__r06; + $216 = $4; + $217 = ($215>>>0)>=($216>>>0); + if ($217) { + $218 = $__r06; + $219 = $__m7; + $220 = ($218>>>0)<($219>>>0); + if ($220) { + $221 = $__q04; + $222 = (($221) + -1)|0; + $__q04 = $222; + $223 = $4; + $224 = $__r06; + $225 = (($224) + ($223))|0; + $__r06 = $225; + } + } + } + $226 = $__m7; + $227 = $__r06; + $228 = (($227) - ($226))|0; + $__r06 = $228; + $229 = $__q13; + $230 = $229<<16; + $231 = $__q04; + $232 = $230 | $231; + $233 = $1; + HEAP32[$233>>2] = $232; + $234 = $__r06; + $r = $234; + $235 = $r; + $236 = $normalization_steps; + $237 = $235 >>> $236; + $0 = $237; + $344 = $0; + STACKTOP = sp;return ($344|0); +} +function __gcry_mpih_lshift($wp,$up,$usize,$cnt) { + $wp = $wp|0; + $up = $up|0; + $usize = $usize|0; + $cnt = $cnt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $high_limb = 0, $i = 0, $low_limb = 0, $retval = 0, $sh_1 = 0, $sh_2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $wp; + $1 = $up; + $2 = $usize; + $3 = $cnt; + $4 = $3; + $sh_1 = $4; + $5 = $0; + $6 = ((($5)) + 4|0); + $0 = $6; + $7 = $sh_1; + $8 = (32 - ($7))|0; + $sh_2 = $8; + $9 = $2; + $10 = (($9) - 1)|0; + $i = $10; + $11 = $i; + $12 = $1; + $13 = (($12) + ($11<<2)|0); + $14 = HEAP32[$13>>2]|0; + $low_limb = $14; + $15 = $low_limb; + $16 = $sh_2; + $17 = $15 >>> $16; + $retval = $17; + $18 = $low_limb; + $high_limb = $18; + while(1) { + $19 = $i; + $20 = (($19) + -1)|0; + $i = $20; + $21 = ($20|0)>=(0); + if (!($21)) { + break; + } + $22 = $i; + $23 = $1; + $24 = (($23) + ($22<<2)|0); + $25 = HEAP32[$24>>2]|0; + $low_limb = $25; + $26 = $high_limb; + $27 = $sh_1; + $28 = $26 << $27; + $29 = $low_limb; + $30 = $sh_2; + $31 = $29 >>> $30; + $32 = $28 | $31; + $33 = $i; + $34 = $0; + $35 = (($34) + ($33<<2)|0); + HEAP32[$35>>2] = $32; + $36 = $low_limb; + $high_limb = $36; + } + $37 = $high_limb; + $38 = $sh_1; + $39 = $37 << $38; + $40 = $i; + $41 = $0; + $42 = (($41) + ($40<<2)|0); + HEAP32[$42>>2] = $39; + $43 = $retval; + STACKTOP = sp;return ($43|0); +} +function __gcry_mpih_mul_1($res_ptr,$s1_ptr,$s1_size,$s2_limb) { + $res_ptr = $res_ptr|0; + $s1_ptr = $s1_ptr|0; + $s1_size = $s1_size|0; + $s2_limb = $s2_limb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $8 = 0, $9 = 0, $__u = 0, $__uh = 0; + var $__ul = 0, $__v = 0, $__vh = 0, $__vl = 0, $__x0 = 0, $__x1 = 0, $__x2 = 0, $__x3 = 0, $cy_limb = 0, $j = 0, $prod_high = 0, $prod_low = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $res_ptr; + $1 = $s1_ptr; + $2 = $s1_size; + $3 = $s2_limb; + $4 = $2; + $5 = (0 - ($4))|0; + $j = $5; + $6 = $j; + $7 = $1; + $8 = (0 - ($6))|0; + $9 = (($7) + ($8<<2)|0); + $1 = $9; + $10 = $j; + $11 = $0; + $12 = (0 - ($10))|0; + $13 = (($11) + ($12<<2)|0); + $0 = $13; + $cy_limb = 0; + while(1) { + $14 = $j; + $15 = $1; + $16 = (($15) + ($14<<2)|0); + $17 = HEAP32[$16>>2]|0; + $__u = $17; + $18 = $3; + $__v = $18; + $19 = $__u; + $20 = $19 & 65535; + $__ul = $20; + $21 = $__u; + $22 = $21 >>> 16; + $__uh = $22; + $23 = $__v; + $24 = $23 & 65535; + $__vl = $24; + $25 = $__v; + $26 = $25 >>> 16; + $__vh = $26; + $27 = $__ul; + $28 = $__vl; + $29 = Math_imul($27, $28)|0; + $__x0 = $29; + $30 = $__ul; + $31 = $__vh; + $32 = Math_imul($30, $31)|0; + $__x1 = $32; + $33 = $__uh; + $34 = $__vl; + $35 = Math_imul($33, $34)|0; + $__x2 = $35; + $36 = $__uh; + $37 = $__vh; + $38 = Math_imul($36, $37)|0; + $__x3 = $38; + $39 = $__x0; + $40 = $39 >>> 16; + $41 = $__x1; + $42 = (($41) + ($40))|0; + $__x1 = $42; + $43 = $__x2; + $44 = $__x1; + $45 = (($44) + ($43))|0; + $__x1 = $45; + $46 = $__x1; + $47 = $__x2; + $48 = ($46>>>0)<($47>>>0); + if ($48) { + $49 = $__x3; + $50 = (($49) + 65536)|0; + $__x3 = $50; + } + $51 = $__x3; + $52 = $__x1; + $53 = $52 >>> 16; + $54 = (($51) + ($53))|0; + $prod_high = $54; + $55 = $__x1; + $56 = $55 & 65535; + $57 = $56 << 16; + $58 = $__x0; + $59 = $58 & 65535; + $60 = (($57) + ($59))|0; + $prod_low = $60; + $61 = $cy_limb; + $62 = $prod_low; + $63 = (($62) + ($61))|0; + $prod_low = $63; + $64 = $prod_low; + $65 = $cy_limb; + $66 = ($64>>>0)<($65>>>0); + $67 = $66 ? 1 : 0; + $68 = $prod_high; + $69 = (($67) + ($68))|0; + $cy_limb = $69; + $70 = $prod_low; + $71 = $j; + $72 = $0; + $73 = (($72) + ($71<<2)|0); + HEAP32[$73>>2] = $70; + $74 = $j; + $75 = (($74) + 1)|0; + $j = $75; + $76 = ($75|0)!=(0); + if (!($76)) { + break; + } + } + $77 = $cy_limb; + STACKTOP = sp;return ($77|0); +} +function __gcry_mpih_submul_1($res_ptr,$s1_ptr,$s1_size,$s2_limb) { + $res_ptr = $res_ptr|0; + $s1_ptr = $s1_ptr|0; + $s1_size = $s1_size|0; + $s2_limb = $s2_limb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $__u = 0, $__uh = 0, $__ul = 0, $__v = 0, $__vh = 0, $__vl = 0, $__x0 = 0, $__x1 = 0, $__x2 = 0; + var $__x3 = 0, $cy_limb = 0, $j = 0, $prod_high = 0, $prod_low = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $res_ptr; + $1 = $s1_ptr; + $2 = $s1_size; + $3 = $s2_limb; + $4 = $2; + $5 = (0 - ($4))|0; + $j = $5; + $6 = $j; + $7 = $0; + $8 = (0 - ($6))|0; + $9 = (($7) + ($8<<2)|0); + $0 = $9; + $10 = $j; + $11 = $1; + $12 = (0 - ($10))|0; + $13 = (($11) + ($12<<2)|0); + $1 = $13; + $cy_limb = 0; + while(1) { + $14 = $j; + $15 = $1; + $16 = (($15) + ($14<<2)|0); + $17 = HEAP32[$16>>2]|0; + $__u = $17; + $18 = $3; + $__v = $18; + $19 = $__u; + $20 = $19 & 65535; + $__ul = $20; + $21 = $__u; + $22 = $21 >>> 16; + $__uh = $22; + $23 = $__v; + $24 = $23 & 65535; + $__vl = $24; + $25 = $__v; + $26 = $25 >>> 16; + $__vh = $26; + $27 = $__ul; + $28 = $__vl; + $29 = Math_imul($27, $28)|0; + $__x0 = $29; + $30 = $__ul; + $31 = $__vh; + $32 = Math_imul($30, $31)|0; + $__x1 = $32; + $33 = $__uh; + $34 = $__vl; + $35 = Math_imul($33, $34)|0; + $__x2 = $35; + $36 = $__uh; + $37 = $__vh; + $38 = Math_imul($36, $37)|0; + $__x3 = $38; + $39 = $__x0; + $40 = $39 >>> 16; + $41 = $__x1; + $42 = (($41) + ($40))|0; + $__x1 = $42; + $43 = $__x2; + $44 = $__x1; + $45 = (($44) + ($43))|0; + $__x1 = $45; + $46 = $__x1; + $47 = $__x2; + $48 = ($46>>>0)<($47>>>0); + if ($48) { + $49 = $__x3; + $50 = (($49) + 65536)|0; + $__x3 = $50; + } + $51 = $__x3; + $52 = $__x1; + $53 = $52 >>> 16; + $54 = (($51) + ($53))|0; + $prod_high = $54; + $55 = $__x1; + $56 = $55 & 65535; + $57 = $56 << 16; + $58 = $__x0; + $59 = $58 & 65535; + $60 = (($57) + ($59))|0; + $prod_low = $60; + $61 = $cy_limb; + $62 = $prod_low; + $63 = (($62) + ($61))|0; + $prod_low = $63; + $64 = $prod_low; + $65 = $cy_limb; + $66 = ($64>>>0)<($65>>>0); + $67 = $66 ? 1 : 0; + $68 = $prod_high; + $69 = (($67) + ($68))|0; + $cy_limb = $69; + $70 = $j; + $71 = $0; + $72 = (($71) + ($70<<2)|0); + $73 = HEAP32[$72>>2]|0; + $x = $73; + $74 = $x; + $75 = $prod_low; + $76 = (($74) - ($75))|0; + $prod_low = $76; + $77 = $prod_low; + $78 = $x; + $79 = ($77>>>0)>($78>>>0); + $80 = $79 ? 1 : 0; + $81 = $cy_limb; + $82 = (($81) + ($80))|0; + $cy_limb = $82; + $83 = $prod_low; + $84 = $j; + $85 = $0; + $86 = (($85) + ($84<<2)|0); + HEAP32[$86>>2] = $83; + $87 = $j; + $88 = (($87) + 1)|0; + $j = $88; + $89 = ($88|0)!=(0); + if (!($89)) { + break; + } + } + $90 = $cy_limb; + STACKTOP = sp;return ($90|0); +} +function _mul_n_basecase($prodp,$up,$vp,$size) { + $prodp = $prodp|0; + $up = $up|0; + $vp = $vp|0; + $size = $size|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $_i = 0, $_i1 = 0, $cy = 0, $i = 0, $v_limb = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $prodp; + $1 = $up; + $2 = $vp; + $3 = $size; + $4 = $2; + $5 = HEAP32[$4>>2]|0; + $v_limb = $5; + $6 = $v_limb; + $7 = ($6>>>0)<=(1); + if ($7) { + $8 = $v_limb; + $9 = ($8|0)==(1); + L3: do { + if ($9) { + $_i = 0; + while(1) { + $10 = $_i; + $11 = $3; + $12 = ($10|0)<($11|0); + if (!($12)) { + break L3; + } + $13 = $_i; + $14 = $1; + $15 = (($14) + ($13<<2)|0); + $16 = HEAP32[$15>>2]|0; + $17 = $_i; + $18 = $0; + $19 = (($18) + ($17<<2)|0); + HEAP32[$19>>2] = $16; + $20 = $_i; + $21 = (($20) + 1)|0; + $_i = $21; + } + } else { + $_i1 = 0; + while(1) { + $22 = $_i1; + $23 = $3; + $24 = ($22|0)<($23|0); + if (!($24)) { + break L3; + } + $25 = $_i1; + $26 = $0; + $27 = (($26) + ($25<<2)|0); + HEAP32[$27>>2] = 0; + $28 = $_i1; + $29 = (($28) + 1)|0; + $_i1 = $29; + } + } + } while(0); + $cy = 0; + } else { + $30 = $0; + $31 = $1; + $32 = $3; + $33 = $v_limb; + $34 = (__gcry_mpih_mul_1($30,$31,$32,$33)|0); + $cy = $34; + } + $35 = $cy; + $36 = $3; + $37 = $0; + $38 = (($37) + ($36<<2)|0); + HEAP32[$38>>2] = $35; + $39 = $0; + $40 = ((($39)) + 4|0); + $0 = $40; + $i = 1; + while(1) { + $41 = $i; + $42 = $3; + $43 = ($41|0)<($42|0); + if (!($43)) { + break; + } + $44 = $i; + $45 = $2; + $46 = (($45) + ($44<<2)|0); + $47 = HEAP32[$46>>2]|0; + $v_limb = $47; + $48 = $v_limb; + $49 = ($48>>>0)<=(1); + if ($49) { + $cy = 0; + $50 = $v_limb; + $51 = ($50|0)==(1); + if ($51) { + $52 = $0; + $53 = $0; + $54 = $1; + $55 = $3; + $56 = (__gcry_mpih_add_n($52,$53,$54,$55)|0); + $cy = $56; + } + } else { + $57 = $0; + $58 = $1; + $59 = $3; + $60 = $v_limb; + $61 = (__gcry_mpih_addmul_1($57,$58,$59,$60)|0); + $cy = $61; + } + $62 = $cy; + $63 = $3; + $64 = $0; + $65 = (($64) + ($63<<2)|0); + HEAP32[$65>>2] = $62; + $66 = $0; + $67 = ((($66)) + 4|0); + $0 = $67; + $68 = $i; + $69 = (($68) + 1)|0; + $i = $69; + } + $70 = $cy; + STACKTOP = sp;return ($70|0); +} +function _mul_n($prodp,$up,$vp,$size,$tspace) { + $prodp = $prodp|0; + $up = $up|0; + $vp = $vp|0; + $size = $size|0; + $tspace = $tspace|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $_i = 0, $_i1 = 0, $cy = 0, $cy_limb = 0, $esize = 0, $hsize = 0, $negflg = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $prodp; + $1 = $up; + $2 = $vp; + $3 = $size; + $4 = $tspace; + $5 = $3; + $6 = $5 & 1; + $7 = ($6|0)!=(0); + $8 = $3; + if ($7) { + $9 = (($8) - 1)|0; + $esize = $9; + $10 = $esize; + $11 = ($10|0)<(16); + $12 = $0; + $13 = $1; + $14 = $2; + $15 = $esize; + if ($11) { + (_mul_n_basecase($12,$13,$14,$15)|0); + } else { + $16 = $4; + _mul_n($12,$13,$14,$15,$16); + } + $17 = $0; + $18 = $esize; + $19 = (($17) + ($18<<2)|0); + $20 = $1; + $21 = $esize; + $22 = $esize; + $23 = $2; + $24 = (($23) + ($22<<2)|0); + $25 = HEAP32[$24>>2]|0; + $26 = (__gcry_mpih_addmul_1($19,$20,$21,$25)|0); + $cy_limb = $26; + $27 = $cy_limb; + $28 = $esize; + $29 = $esize; + $30 = (($28) + ($29))|0; + $31 = $0; + $32 = (($31) + ($30<<2)|0); + HEAP32[$32>>2] = $27; + $33 = $0; + $34 = $esize; + $35 = (($33) + ($34<<2)|0); + $36 = $2; + $37 = $3; + $38 = $esize; + $39 = $1; + $40 = (($39) + ($38<<2)|0); + $41 = HEAP32[$40>>2]|0; + $42 = (__gcry_mpih_addmul_1($35,$36,$37,$41)|0); + $cy_limb = $42; + $43 = $cy_limb; + $44 = $esize; + $45 = $3; + $46 = (($44) + ($45))|0; + $47 = $0; + $48 = (($47) + ($46<<2)|0); + HEAP32[$48>>2] = $43; + STACKTOP = sp;return; + } + $49 = $8 >> 1; + $hsize = $49; + $50 = $hsize; + $51 = ($50|0)<(16); + $52 = $0; + $53 = $3; + $54 = (($52) + ($53<<2)|0); + $55 = $1; + $56 = $hsize; + $57 = (($55) + ($56<<2)|0); + $58 = $2; + $59 = $hsize; + $60 = (($58) + ($59<<2)|0); + $61 = $hsize; + if ($51) { + (_mul_n_basecase($54,$57,$60,$61)|0); + } else { + $62 = $4; + _mul_n($54,$57,$60,$61,$62); + } + $63 = $1; + $64 = $hsize; + $65 = (($63) + ($64<<2)|0); + $66 = $1; + $67 = $hsize; + $68 = (__gcry_mpih_cmp($65,$66,$67)|0); + $69 = ($68|0)>=(0); + $70 = $0; + $71 = $1; + if ($69) { + $72 = $hsize; + $73 = (($71) + ($72<<2)|0); + $74 = $1; + $75 = $hsize; + (__gcry_mpih_sub_n($70,$73,$74,$75)|0); + $negflg = 0; + } else { + $76 = $1; + $77 = $hsize; + $78 = (($76) + ($77<<2)|0); + $79 = $hsize; + (__gcry_mpih_sub_n($70,$71,$78,$79)|0); + $negflg = 1; + } + $80 = $2; + $81 = $hsize; + $82 = (($80) + ($81<<2)|0); + $83 = $2; + $84 = $hsize; + $85 = (__gcry_mpih_cmp($82,$83,$84)|0); + $86 = ($85|0)>=(0); + $87 = $0; + $88 = $hsize; + $89 = (($87) + ($88<<2)|0); + $90 = $2; + if ($86) { + $91 = $hsize; + $92 = (($90) + ($91<<2)|0); + $93 = $2; + $94 = $hsize; + (__gcry_mpih_sub_n($89,$92,$93,$94)|0); + $95 = $negflg; + $96 = $95 ^ 1; + $negflg = $96; + } else { + $97 = $2; + $98 = $hsize; + $99 = (($97) + ($98<<2)|0); + $100 = $hsize; + (__gcry_mpih_sub_n($89,$90,$99,$100)|0); + } + $101 = $hsize; + $102 = ($101|0)<(16); + $103 = $4; + $104 = $0; + $105 = $0; + $106 = $hsize; + $107 = (($105) + ($106<<2)|0); + $108 = $hsize; + if ($102) { + (_mul_n_basecase($103,$104,$107,$108)|0); + } else { + $109 = $4; + $110 = $3; + $111 = (($109) + ($110<<2)|0); + _mul_n($103,$104,$107,$108,$111); + } + $_i = 0; + while(1) { + $112 = $_i; + $113 = $hsize; + $114 = ($112|0)<($113|0); + if (!($114)) { + break; + } + $115 = $_i; + $116 = $0; + $117 = $3; + $118 = (($116) + ($117<<2)|0); + $119 = (($118) + ($115<<2)|0); + $120 = HEAP32[$119>>2]|0; + $121 = $_i; + $122 = $0; + $123 = $hsize; + $124 = (($122) + ($123<<2)|0); + $125 = (($124) + ($121<<2)|0); + HEAP32[$125>>2] = $120; + $126 = $_i; + $127 = (($126) + 1)|0; + $_i = $127; + } + $128 = $0; + $129 = $3; + $130 = (($128) + ($129<<2)|0); + $131 = $0; + $132 = $3; + $133 = (($131) + ($132<<2)|0); + $134 = $0; + $135 = $3; + $136 = (($134) + ($135<<2)|0); + $137 = $hsize; + $138 = (($136) + ($137<<2)|0); + $139 = $hsize; + $140 = (__gcry_mpih_add_n($130,$133,$138,$139)|0); + $cy = $140; + $141 = $negflg; + $142 = ($141|0)!=(0); + $143 = $0; + $144 = $hsize; + $145 = (($143) + ($144<<2)|0); + $146 = $0; + $147 = $hsize; + $148 = (($146) + ($147<<2)|0); + $149 = $4; + $150 = $3; + if ($142) { + $151 = (__gcry_mpih_sub_n($145,$148,$149,$150)|0); + $152 = $cy; + $153 = (($152) - ($151))|0; + $cy = $153; + } else { + $154 = (__gcry_mpih_add_n($145,$148,$149,$150)|0); + $155 = $cy; + $156 = (($155) + ($154))|0; + $cy = $156; + } + $157 = $hsize; + $158 = ($157|0)<(16); + $159 = $4; + $160 = $1; + $161 = $2; + $162 = $hsize; + if ($158) { + (_mul_n_basecase($159,$160,$161,$162)|0); + } else { + $163 = $4; + $164 = $3; + $165 = (($163) + ($164<<2)|0); + _mul_n($159,$160,$161,$162,$165); + } + $166 = $0; + $167 = $hsize; + $168 = (($166) + ($167<<2)|0); + $169 = $0; + $170 = $hsize; + $171 = (($169) + ($170<<2)|0); + $172 = $4; + $173 = $3; + $174 = (__gcry_mpih_add_n($168,$171,$172,$173)|0); + $175 = $cy; + $176 = (($175) + ($174))|0; + $cy = $176; + $177 = $cy; + $178 = ($177|0)!=(0); + if ($178) { + $179 = $0; + $180 = $hsize; + $181 = (($179) + ($180<<2)|0); + $182 = $3; + $183 = (($181) + ($182<<2)|0); + $184 = $0; + $185 = $hsize; + $186 = (($184) + ($185<<2)|0); + $187 = $3; + $188 = (($186) + ($187<<2)|0); + $189 = $hsize; + $190 = $cy; + (__gcry_mpih_add_1($183,$188,$189,$190)|0); + } + $_i1 = 0; + while(1) { + $191 = $_i1; + $192 = $hsize; + $193 = ($191|0)<($192|0); + if (!($193)) { + break; + } + $194 = $_i1; + $195 = $4; + $196 = (($195) + ($194<<2)|0); + $197 = HEAP32[$196>>2]|0; + $198 = $_i1; + $199 = $0; + $200 = (($199) + ($198<<2)|0); + HEAP32[$200>>2] = $197; + $201 = $_i1; + $202 = (($201) + 1)|0; + $_i1 = $202; + } + $203 = $0; + $204 = $hsize; + $205 = (($203) + ($204<<2)|0); + $206 = $0; + $207 = $hsize; + $208 = (($206) + ($207<<2)|0); + $209 = $4; + $210 = $hsize; + $211 = (($209) + ($210<<2)|0); + $212 = $hsize; + $213 = (__gcry_mpih_add_n($205,$208,$211,$212)|0); + $cy = $213; + $214 = $cy; + $215 = ($214|0)!=(0); + if (!($215)) { + STACKTOP = sp;return; + } + $216 = $0; + $217 = $3; + $218 = (($216) + ($217<<2)|0); + $219 = $0; + $220 = $3; + $221 = (($219) + ($220<<2)|0); + $222 = $3; + (__gcry_mpih_add_1($218,$221,$222,1)|0); + STACKTOP = sp;return; +} +function __gcry_mpih_mul_karatsuba_case($prodp,$up,$usize,$vp,$vsize,$ctx) { + $prodp = $prodp|0; + $up = $up|0; + $usize = $usize|0; + $vp = $vp|0; + $vsize = $vsize|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $cy = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $prodp; + $1 = $up; + $2 = $usize; + $3 = $vp; + $4 = $vsize; + $5 = $ctx; + $6 = $5; + $7 = ((($6)) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = $5; + $11 = ((($10)) + 12|0); + $12 = HEAP32[$11>>2]|0; + $13 = $4; + $14 = ($12|0)<($13|0); + if ($14) { + label = 3; + } + } else { + label = 3; + } + if ((label|0) == 3) { + $15 = $5; + $16 = ((($15)) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($17|0)!=(0|0); + if ($18) { + $19 = $5; + $20 = ((($19)) + 4|0); + $21 = HEAP32[$20>>2]|0; + $22 = $5; + $23 = ((($22)) + 8|0); + $24 = HEAP32[$23>>2]|0; + __gcry_mpi_free_limb_space($21,$24); + } + $25 = $4; + $26 = $25<<1; + $27 = $5; + $28 = ((($27)) + 8|0); + HEAP32[$28>>2] = $26; + $29 = $4; + $30 = $29<<1; + $31 = $1; + $32 = (__gcry_is_secure($31)|0); + $33 = ($32|0)!=(0); + if ($33) { + $38 = 1; + } else { + $34 = $3; + $35 = (__gcry_is_secure($34)|0); + $36 = ($35|0)!=(0); + $38 = $36; + } + $37 = $38&1; + $39 = (__gcry_mpi_alloc_limb_space($30,$37)|0); + $40 = $5; + $41 = ((($40)) + 4|0); + HEAP32[$41>>2] = $39; + $42 = $4; + $43 = $5; + $44 = ((($43)) + 12|0); + HEAP32[$44>>2] = $42; + } + $45 = $4; + $46 = ($45|0)<(16); + $47 = $0; + $48 = $1; + $49 = $3; + $50 = $4; + if ($46) { + (_mul_n_basecase($47,$48,$49,$50)|0); + } else { + $51 = $5; + $52 = ((($51)) + 4|0); + $53 = HEAP32[$52>>2]|0; + _mul_n($47,$48,$49,$50,$53); + } + $54 = $4; + $55 = $0; + $56 = (($55) + ($54<<2)|0); + $0 = $56; + $57 = $4; + $58 = $1; + $59 = (($58) + ($57<<2)|0); + $1 = $59; + $60 = $4; + $61 = $2; + $62 = (($61) - ($60))|0; + $2 = $62; + $63 = $2; + $64 = $4; + $65 = ($63|0)>=($64|0); + if ($65) { + $66 = $5; + $67 = ((($66)) + 16|0); + $68 = HEAP32[$67>>2]|0; + $69 = ($68|0)!=(0|0); + if ($69) { + $70 = $5; + $71 = ((($70)) + 24|0); + $72 = HEAP32[$71>>2]|0; + $73 = $4; + $74 = ($72|0)<($73|0); + if ($74) { + label = 14; + } + } else { + label = 14; + } + if ((label|0) == 14) { + $75 = $5; + $76 = ((($75)) + 16|0); + $77 = HEAP32[$76>>2]|0; + $78 = ($77|0)!=(0|0); + if ($78) { + $79 = $5; + $80 = ((($79)) + 16|0); + $81 = HEAP32[$80>>2]|0; + $82 = $5; + $83 = ((($82)) + 20|0); + $84 = HEAP32[$83>>2]|0; + __gcry_mpi_free_limb_space($81,$84); + } + $85 = $4; + $86 = $85<<1; + $87 = $5; + $88 = ((($87)) + 20|0); + HEAP32[$88>>2] = $86; + $89 = $4; + $90 = $89<<1; + $91 = $1; + $92 = (__gcry_is_secure($91)|0); + $93 = ($92|0)!=(0); + if ($93) { + $98 = 1; + } else { + $94 = $3; + $95 = (__gcry_is_secure($94)|0); + $96 = ($95|0)!=(0); + $98 = $96; + } + $97 = $98&1; + $99 = (__gcry_mpi_alloc_limb_space($90,$97)|0); + $100 = $5; + $101 = ((($100)) + 16|0); + HEAP32[$101>>2] = $99; + $102 = $4; + $103 = $5; + $104 = ((($103)) + 24|0); + HEAP32[$104>>2] = $102; + } + while(1) { + $105 = $4; + $106 = ($105|0)<(16); + $107 = $5; + $108 = ((($107)) + 16|0); + $109 = HEAP32[$108>>2]|0; + $110 = $1; + $111 = $3; + $112 = $4; + if ($106) { + (_mul_n_basecase($109,$110,$111,$112)|0); + } else { + $113 = $5; + $114 = ((($113)) + 4|0); + $115 = HEAP32[$114>>2]|0; + _mul_n($109,$110,$111,$112,$115); + } + $116 = $0; + $117 = $0; + $118 = $5; + $119 = ((($118)) + 16|0); + $120 = HEAP32[$119>>2]|0; + $121 = $4; + $122 = (__gcry_mpih_add_n($116,$117,$120,$121)|0); + $cy = $122; + $123 = $0; + $124 = $4; + $125 = (($123) + ($124<<2)|0); + $126 = $5; + $127 = ((($126)) + 16|0); + $128 = HEAP32[$127>>2]|0; + $129 = $4; + $130 = (($128) + ($129<<2)|0); + $131 = $4; + $132 = $cy; + (__gcry_mpih_add_1($125,$130,$131,$132)|0); + $133 = $4; + $134 = $0; + $135 = (($134) + ($133<<2)|0); + $0 = $135; + $136 = $4; + $137 = $1; + $138 = (($137) + ($136<<2)|0); + $1 = $138; + $139 = $4; + $140 = $2; + $141 = (($140) - ($139))|0; + $2 = $141; + $142 = $2; + $143 = $4; + $144 = ($142|0)>=($143|0); + if (!($144)) { + break; + } + } + } + $145 = $2; + $146 = ($145|0)!=(0); + if (!($146)) { + STACKTOP = sp;return; + } + $147 = $2; + $148 = ($147|0)<(16); + $149 = $5; + if ($148) { + $150 = ((($149)) + 4|0); + $151 = HEAP32[$150>>2]|0; + $152 = $3; + $153 = $4; + $154 = $1; + $155 = $2; + (__gcry_mpih_mul($151,$152,$153,$154,$155)|0); + } else { + $156 = HEAP32[$149>>2]|0; + $157 = ($156|0)!=(0|0); + if (!($157)) { + $158 = (__gcry_xcalloc(1,28)|0); + $159 = $5; + HEAP32[$159>>2] = $158; + } + $160 = $5; + $161 = ((($160)) + 4|0); + $162 = HEAP32[$161>>2]|0; + $163 = $3; + $164 = $4; + $165 = $1; + $166 = $2; + $167 = $5; + $168 = HEAP32[$167>>2]|0; + __gcry_mpih_mul_karatsuba_case($162,$163,$164,$165,$166,$168); + } + $169 = $0; + $170 = $0; + $171 = $5; + $172 = ((($171)) + 4|0); + $173 = HEAP32[$172>>2]|0; + $174 = $4; + $175 = (__gcry_mpih_add_n($169,$170,$173,$174)|0); + $cy = $175; + $176 = $0; + $177 = $4; + $178 = (($176) + ($177<<2)|0); + $179 = $5; + $180 = ((($179)) + 4|0); + $181 = HEAP32[$180>>2]|0; + $182 = $4; + $183 = (($181) + ($182<<2)|0); + $184 = $2; + $185 = $cy; + (__gcry_mpih_add_1($178,$183,$184,$185)|0); + STACKTOP = sp;return; +} +function __gcry_mpih_mul($prodp,$up,$usize,$vp,$vsize) { + $prodp = $prodp|0; + $up = $up|0; + $usize = $usize|0; + $vp = $vp|0; + $vsize = $vsize|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $_i = 0, $_i1 = 0, $ctx = 0, $cy = 0, $i = 0, $prod_endp = 0, $v_limb = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $ctx = sp + 16|0; + $1 = $prodp; + $2 = $up; + $3 = $usize; + $4 = $vp; + $5 = $vsize; + $6 = $1; + $7 = $3; + $8 = (($6) + ($7<<2)|0); + $9 = $5; + $10 = (($8) + ($9<<2)|0); + $11 = ((($10)) + -4|0); + $prod_endp = $11; + $12 = $5; + $13 = ($12|0)<(16); + if (!($13)) { + ;HEAP32[$ctx>>2]=0|0;HEAP32[$ctx+4>>2]=0|0;HEAP32[$ctx+8>>2]=0|0;HEAP32[$ctx+12>>2]=0|0;HEAP32[$ctx+16>>2]=0|0;HEAP32[$ctx+20>>2]=0|0;HEAP32[$ctx+24>>2]=0|0; + $83 = $1; + $84 = $2; + $85 = $3; + $86 = $4; + $87 = $5; + __gcry_mpih_mul_karatsuba_case($83,$84,$85,$86,$87,$ctx); + __gcry_mpih_release_karatsuba_ctx($ctx); + $88 = $prod_endp; + $89 = HEAP32[$88>>2]|0; + $0 = $89; + $90 = $0; + STACKTOP = sp;return ($90|0); + } + $14 = $5; + $15 = ($14|0)!=(0); + if (!($15)) { + $0 = 0; + $90 = $0; + STACKTOP = sp;return ($90|0); + } + $16 = $4; + $17 = HEAP32[$16>>2]|0; + $v_limb = $17; + $18 = $v_limb; + $19 = ($18>>>0)<=(1); + if ($19) { + $20 = $v_limb; + $21 = ($20|0)==(1); + L11: do { + if ($21) { + $_i = 0; + while(1) { + $22 = $_i; + $23 = $3; + $24 = ($22|0)<($23|0); + if (!($24)) { + break L11; + } + $25 = $_i; + $26 = $2; + $27 = (($26) + ($25<<2)|0); + $28 = HEAP32[$27>>2]|0; + $29 = $_i; + $30 = $1; + $31 = (($30) + ($29<<2)|0); + HEAP32[$31>>2] = $28; + $32 = $_i; + $33 = (($32) + 1)|0; + $_i = $33; + } + } else { + $_i1 = 0; + while(1) { + $34 = $_i1; + $35 = $3; + $36 = ($34|0)<($35|0); + if (!($36)) { + break L11; + } + $37 = $_i1; + $38 = $1; + $39 = (($38) + ($37<<2)|0); + HEAP32[$39>>2] = 0; + $40 = $_i1; + $41 = (($40) + 1)|0; + $_i1 = $41; + } + } + } while(0); + $cy = 0; + } else { + $42 = $1; + $43 = $2; + $44 = $3; + $45 = $v_limb; + $46 = (__gcry_mpih_mul_1($42,$43,$44,$45)|0); + $cy = $46; + } + $47 = $cy; + $48 = $3; + $49 = $1; + $50 = (($49) + ($48<<2)|0); + HEAP32[$50>>2] = $47; + $51 = $1; + $52 = ((($51)) + 4|0); + $1 = $52; + $i = 1; + while(1) { + $53 = $i; + $54 = $5; + $55 = ($53|0)<($54|0); + if (!($55)) { + break; + } + $56 = $i; + $57 = $4; + $58 = (($57) + ($56<<2)|0); + $59 = HEAP32[$58>>2]|0; + $v_limb = $59; + $60 = $v_limb; + $61 = ($60>>>0)<=(1); + if ($61) { + $cy = 0; + $62 = $v_limb; + $63 = ($62|0)==(1); + if ($63) { + $64 = $1; + $65 = $1; + $66 = $2; + $67 = $3; + $68 = (__gcry_mpih_add_n($64,$65,$66,$67)|0); + $cy = $68; + } + } else { + $69 = $1; + $70 = $2; + $71 = $3; + $72 = $v_limb; + $73 = (__gcry_mpih_addmul_1($69,$70,$71,$72)|0); + $cy = $73; + } + $74 = $cy; + $75 = $3; + $76 = $1; + $77 = (($76) + ($75<<2)|0); + HEAP32[$77>>2] = $74; + $78 = $1; + $79 = ((($78)) + 4|0); + $1 = $79; + $80 = $i; + $81 = (($80) + 1)|0; + $i = $81; + } + $82 = $cy; + $0 = $82; + $90 = $0; + STACKTOP = sp;return ($90|0); +} +function __gcry_mpih_release_karatsuba_ctx($ctx) { + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ctx2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $1 = $0; + $2 = ((($1)) + 16|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + if ($4) { + $5 = $0; + $6 = ((($5)) + 16|0); + $7 = HEAP32[$6>>2]|0; + $8 = $0; + $9 = ((($8)) + 20|0); + $10 = HEAP32[$9>>2]|0; + __gcry_mpi_free_limb_space($7,$10); + } + $11 = $0; + $12 = ((($11)) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)!=(0|0); + if ($14) { + $15 = $0; + $16 = ((($15)) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = $0; + $19 = ((($18)) + 8|0); + $20 = HEAP32[$19>>2]|0; + __gcry_mpi_free_limb_space($17,$20); + } + $21 = $0; + $22 = HEAP32[$21>>2]|0; + $0 = $22; + while(1) { + $23 = $0; + $24 = ($23|0)!=(0|0); + if (!($24)) { + break; + } + $25 = $0; + $26 = HEAP32[$25>>2]|0; + $ctx2 = $26; + $27 = $0; + $28 = ((($27)) + 16|0); + $29 = HEAP32[$28>>2]|0; + $30 = ($29|0)!=(0|0); + if ($30) { + $31 = $0; + $32 = ((($31)) + 16|0); + $33 = HEAP32[$32>>2]|0; + $34 = $0; + $35 = ((($34)) + 20|0); + $36 = HEAP32[$35>>2]|0; + __gcry_mpi_free_limb_space($33,$36); + } + $37 = $0; + $38 = ((($37)) + 4|0); + $39 = HEAP32[$38>>2]|0; + $40 = ($39|0)!=(0|0); + if ($40) { + $41 = $0; + $42 = ((($41)) + 4|0); + $43 = HEAP32[$42>>2]|0; + $44 = $0; + $45 = ((($44)) + 8|0); + $46 = HEAP32[$45>>2]|0; + __gcry_mpi_free_limb_space($43,$46); + } + $47 = $0; + __gcry_free($47); + $48 = $ctx2; + $0 = $48; + } + STACKTOP = sp;return; +} +function __gcry_mpih_rshift($wp,$up,$usize,$cnt) { + $wp = $wp|0; + $up = $up|0; + $usize = $usize|0; + $cnt = $cnt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $high_limb = 0, $i = 0, $low_limb = 0, $retval = 0, $sh_1 = 0, $sh_2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $wp; + $1 = $up; + $2 = $usize; + $3 = $cnt; + $4 = $3; + $sh_1 = $4; + $5 = $0; + $6 = ((($5)) + -4|0); + $0 = $6; + $7 = $sh_1; + $8 = (32 - ($7))|0; + $sh_2 = $8; + $9 = $1; + $10 = HEAP32[$9>>2]|0; + $high_limb = $10; + $11 = $high_limb; + $12 = $sh_2; + $13 = $11 << $12; + $retval = $13; + $14 = $high_limb; + $low_limb = $14; + $i = 1; + while(1) { + $15 = $i; + $16 = $2; + $17 = ($15|0)<($16|0); + if (!($17)) { + break; + } + $18 = $i; + $19 = $1; + $20 = (($19) + ($18<<2)|0); + $21 = HEAP32[$20>>2]|0; + $high_limb = $21; + $22 = $low_limb; + $23 = $sh_1; + $24 = $22 >>> $23; + $25 = $high_limb; + $26 = $sh_2; + $27 = $25 << $26; + $28 = $24 | $27; + $29 = $i; + $30 = $0; + $31 = (($30) + ($29<<2)|0); + HEAP32[$31>>2] = $28; + $32 = $high_limb; + $low_limb = $32; + $33 = $i; + $34 = (($33) + 1)|0; + $i = $34; + } + $35 = $low_limb; + $36 = $sh_1; + $37 = $35 >>> $36; + $38 = $i; + $39 = $0; + $40 = (($39) + ($38<<2)|0); + HEAP32[$40>>2] = $37; + $41 = $retval; + STACKTOP = sp;return ($41|0); +} +function __gcry_mpih_sub_n($res_ptr,$s1_ptr,$s2_ptr,$size) { + $res_ptr = $res_ptr|0; + $s1_ptr = $s1_ptr|0; + $s2_ptr = $s2_ptr|0; + $size = $size|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $cy = 0, $j = 0, $x = 0, $y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $res_ptr; + $1 = $s1_ptr; + $2 = $s2_ptr; + $3 = $size; + $4 = $3; + $5 = (0 - ($4))|0; + $j = $5; + $6 = $j; + $7 = $1; + $8 = (0 - ($6))|0; + $9 = (($7) + ($8<<2)|0); + $1 = $9; + $10 = $j; + $11 = $2; + $12 = (0 - ($10))|0; + $13 = (($11) + ($12<<2)|0); + $2 = $13; + $14 = $j; + $15 = $0; + $16 = (0 - ($14))|0; + $17 = (($15) + ($16<<2)|0); + $0 = $17; + $cy = 0; + while(1) { + $18 = $j; + $19 = $2; + $20 = (($19) + ($18<<2)|0); + $21 = HEAP32[$20>>2]|0; + $y = $21; + $22 = $j; + $23 = $1; + $24 = (($23) + ($22<<2)|0); + $25 = HEAP32[$24>>2]|0; + $x = $25; + $26 = $cy; + $27 = $y; + $28 = (($27) + ($26))|0; + $y = $28; + $29 = $y; + $30 = $cy; + $31 = ($29>>>0)<($30>>>0); + $32 = $31&1; + $cy = $32; + $33 = $x; + $34 = $y; + $35 = (($33) - ($34))|0; + $y = $35; + $36 = $y; + $37 = $x; + $38 = ($36>>>0)>($37>>>0); + $39 = $38&1; + $40 = $cy; + $41 = (($40) + ($39))|0; + $cy = $41; + $42 = $y; + $43 = $j; + $44 = $0; + $45 = (($44) + ($43<<2)|0); + HEAP32[$45>>2] = $42; + $46 = $j; + $47 = (($46) + 1)|0; + $j = $47; + $48 = ($47|0)!=(0); + if (!($48)) { + break; + } + } + $49 = $cy; + STACKTOP = sp;return ($49|0); +} +function __gcry_mpi_get_hw_config() { + var label = 0, sp = 0; + sp = STACKTOP; + return ((46179)|0); +} +function __gcry_mpi_init() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $idx = 0, $value = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $idx = 0; + L1: while(1) { + $0 = $idx; + $1 = ($0|0)<(6); + if (!($1)) { + label = 12; + break; + } + $2 = $idx; + switch ($2|0) { + case 0: { + $value = 0; + break; + } + case 1: { + $value = 1; + break; + } + case 2: { + $value = 2; + break; + } + case 3: { + $value = 3; + break; + } + case 4: { + $value = 4; + break; + } + case 5: { + $value = 8; + break; + } + default: { + label = 10; + break L1; + } + } + $4 = $value; + $5 = (__gcry_mpi_alloc_set_ui($4)|0); + $6 = $idx; + $7 = (70876 + ($6<<2)|0); + HEAP32[$7>>2] = $5; + $8 = $idx; + $9 = (70876 + ($8<<2)|0); + $10 = HEAP32[$9>>2]|0; + $11 = ((($10)) + 12|0); + HEAP32[$11>>2] = 48; + $12 = $idx; + $13 = (($12) + 1)|0; + $idx = $13; + } + if ((label|0) == 10) { + $3 = $idx; + HEAP32[$vararg_buffer>>2] = $3; + __gcry_log_bug(46323,$vararg_buffer); + // unreachable; + } + else if ((label|0) == 12) { + STACKTOP = sp;return 0; + } + return (0)|0; +} +function __gcry_mpi_alloc_set_ui($u) { + $u = $u|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $w = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $u; + $1 = (__gcry_mpi_alloc(1)|0); + $w = $1; + $2 = $0; + $3 = $w; + $4 = ((($3)) + 16|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$5>>2] = $2; + $6 = $0; + $7 = ($6|0)!=(0); + $8 = $7 ? 1 : 0; + $9 = $w; + $10 = ((($9)) + 4|0); + HEAP32[$10>>2] = $8; + $11 = $w; + $12 = ((($11)) + 8|0); + HEAP32[$12>>2] = 0; + $13 = $w; + STACKTOP = sp;return ($13|0); +} +function __gcry_mpi_alloc($nlimbs) { + $nlimbs = $nlimbs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $nlimbs; + $1 = (__gcry_xmalloc(20)|0); + $a = $1; + $2 = $0; + $3 = ($2|0)!=(0); + if ($3) { + $4 = $0; + $5 = (__gcry_mpi_alloc_limb_space($4,0)|0); + $8 = $5; + } else { + $8 = 0; + } + $6 = $a; + $7 = ((($6)) + 16|0); + HEAP32[$7>>2] = $8; + $9 = $0; + $10 = $a; + HEAP32[$10>>2] = $9; + $11 = $a; + $12 = ((($11)) + 4|0); + HEAP32[$12>>2] = 0; + $13 = $a; + $14 = ((($13)) + 8|0); + HEAP32[$14>>2] = 0; + $15 = $a; + $16 = ((($15)) + 12|0); + HEAP32[$16>>2] = 0; + $17 = $a; + STACKTOP = sp;return ($17|0); +} +function __gcry_mpi_alloc_limb_space($nlimbs,$secure) { + $nlimbs = $nlimbs|0; + $secure = $secure|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $len = 0, $p = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $nlimbs; + $1 = $secure; + $2 = $0; + $3 = ($2|0)!=(0); + $4 = $0; + $5 = $3 ? $4 : 1; + $6 = $5<<2; + $len = $6; + $7 = $1; + $8 = ($7|0)!=(0); + $9 = $len; + if ($8) { + $10 = (__gcry_xmalloc_secure($9)|0); + $12 = $10; + } else { + $11 = (__gcry_xmalloc($9)|0); + $12 = $11; + } + $p = $12; + $13 = $0; + $14 = ($13|0)!=(0); + if ($14) { + $16 = $p; + STACKTOP = sp;return ($16|0); + } + $15 = $p; + HEAP32[$15>>2] = 0; + $16 = $p; + STACKTOP = sp;return ($16|0); +} +function __gcry_mpi_alloc_secure($nlimbs) { + $nlimbs = $nlimbs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $nlimbs; + $1 = (__gcry_xmalloc(20)|0); + $a = $1; + $2 = $0; + $3 = ($2|0)!=(0); + if ($3) { + $4 = $0; + $5 = (__gcry_mpi_alloc_limb_space($4,1)|0); + $8 = $5; + } else { + $8 = 0; + } + $6 = $a; + $7 = ((($6)) + 16|0); + HEAP32[$7>>2] = $8; + $9 = $0; + $10 = $a; + HEAP32[$10>>2] = $9; + $11 = $a; + $12 = ((($11)) + 12|0); + HEAP32[$12>>2] = 1; + $13 = $a; + $14 = ((($13)) + 4|0); + HEAP32[$14>>2] = 0; + $15 = $a; + $16 = ((($15)) + 8|0); + HEAP32[$16>>2] = 0; + $17 = $a; + STACKTOP = sp;return ($17|0); +} +function __gcry_mpi_free_limb_space($a,$nlimbs) { + $a = $a|0; + $nlimbs = $nlimbs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, $_vlen = 0, $_vptr = 0, $_vptr_long = 0, $_vset = 0, $_vset_long = 0, $len = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $_vset_long = sp; + $0 = $a; + $1 = $nlimbs; + $2 = $0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + STACKTOP = sp;return; + } + $4 = $1; + $5 = $4<<2; + $len = $5; + $6 = $len; + $7 = ($6|0)!=(0); + L4: do { + if ($7) { + $8 = $0; + $_vptr = $8; + $9 = $len; + $_vlen = $9; + $_vset = 0; + $10 = $_vset; + $11 = $10&255; + $12 = $_vset_long; + $13 = $12; + HEAP32[$13>>2] = $11; + $14 = (($12) + 4)|0; + $15 = $14; + HEAP32[$15>>2] = 0; + while(1) { + $16 = $_vptr; + $17 = $16; + $18 = $17 & 7; + $19 = ($18|0)!=(0); + $20 = $_vlen; + $21 = ($20|0)!=(0); + $22 = $19 ? $21 : 0; + if (!($22)) { + break; + } + $23 = $_vset; + $24 = $_vptr; + HEAP8[$24>>0] = $23; + $25 = $_vptr; + $26 = ((($25)) + 1|0); + $_vptr = $26; + $27 = $_vlen; + $28 = (($27) + -1)|0; + $_vlen = $28; + } + $29 = $_vlen; + $30 = ($29>>>0)<(8); + if (!($30)) { + $31 = $_vset_long; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = (($31) + 4)|0; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (___muldi3(($33|0),($36|0),16843009,16843009)|0); + $38 = tempRet0; + $39 = $_vset_long; + $40 = $39; + HEAP32[$40>>2] = $37; + $41 = (($39) + 4)|0; + $42 = $41; + HEAP32[$42>>2] = $38; + while(1) { + $43 = $_vptr; + $_vptr_long = $43; + $44 = $_vset_long; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = (($44) + 4)|0; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + $50 = $_vptr_long; + $51 = $50; + $52 = $51; + HEAP32[$52>>2] = $46; + $53 = (($51) + 4)|0; + $54 = $53; + HEAP32[$54>>2] = $49; + $55 = $_vlen; + $56 = (($55) - 8)|0; + $_vlen = $56; + $57 = $_vptr; + $58 = ((($57)) + 8|0); + $_vptr = $58; + $59 = $_vlen; + $60 = ($59>>>0)>=(8); + if (!($60)) { + break; + } + } + } + while(1) { + $61 = $_vlen; + $62 = ($61|0)!=(0); + if (!($62)) { + break L4; + } + $63 = $_vset; + $64 = $_vptr; + HEAP8[$64>>0] = $63; + $65 = $_vptr; + $66 = ((($65)) + 1|0); + $_vptr = $66; + $67 = $_vlen; + $68 = (($67) + -1)|0; + $_vlen = $68; + } + } + } while(0); + $69 = $0; + __gcry_free($69); + STACKTOP = sp;return; +} +function __gcry_mpi_assign_limb_space($a,$ap,$nlimbs) { + $a = $a|0; + $ap = $ap|0; + $nlimbs = $nlimbs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $ap; + $2 = $nlimbs; + $3 = $0; + $4 = ((($3)) + 16|0); + $5 = HEAP32[$4>>2]|0; + $6 = $0; + $7 = HEAP32[$6>>2]|0; + __gcry_mpi_free_limb_space($5,$7); + $8 = $1; + $9 = $0; + $10 = ((($9)) + 16|0); + HEAP32[$10>>2] = $8; + $11 = $2; + $12 = $0; + HEAP32[$12>>2] = $11; + STACKTOP = sp;return; +} +function __gcry_mpi_resize($a,$nlimbs) { + $a = $a|0; + $nlimbs = $nlimbs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $nlimbs; + $2 = $1; + $3 = $0; + $4 = HEAP32[$3>>2]|0; + $5 = ($2>>>0)<=($4>>>0); + $6 = $0; + if ($5) { + $7 = ((($6)) + 4|0); + $8 = HEAP32[$7>>2]|0; + $i = $8; + while(1) { + $9 = $i; + $10 = $0; + $11 = HEAP32[$10>>2]|0; + $12 = ($9>>>0)<($11>>>0); + if (!($12)) { + break; + } + $13 = $i; + $14 = $0; + $15 = ((($14)) + 16|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + ($13<<2)|0); + HEAP32[$17>>2] = 0; + $18 = $i; + $19 = (($18) + 1)|0; + $i = $19; + } + STACKTOP = sp;return; + } + $20 = ((($6)) + 16|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)!=(0|0); + $23 = $0; + L8: do { + if ($22) { + $24 = ((($23)) + 16|0); + $25 = HEAP32[$24>>2]|0; + $26 = $1; + $27 = $26<<2; + $28 = (__gcry_xrealloc($25,$27)|0); + $29 = $0; + $30 = ((($29)) + 16|0); + HEAP32[$30>>2] = $28; + $31 = $0; + $32 = HEAP32[$31>>2]|0; + $i = $32; + while(1) { + $33 = $i; + $34 = $1; + $35 = ($33>>>0)<($34>>>0); + if (!($35)) { + break L8; + } + $36 = $i; + $37 = $0; + $38 = ((($37)) + 16|0); + $39 = HEAP32[$38>>2]|0; + $40 = (($39) + ($36<<2)|0); + HEAP32[$40>>2] = 0; + $41 = $i; + $42 = (($41) + 1)|0; + $i = $42; + } + } else { + $43 = ((($23)) + 12|0); + $44 = HEAP32[$43>>2]|0; + $45 = $44 & 1; + $46 = ($45|0)!=(0); + $47 = $1; + if ($46) { + $48 = (__gcry_xcalloc_secure($47,4)|0); + $49 = $0; + $50 = ((($49)) + 16|0); + HEAP32[$50>>2] = $48; + break; + } else { + $51 = (__gcry_xcalloc($47,4)|0); + $52 = $0; + $53 = ((($52)) + 16|0); + HEAP32[$53>>2] = $51; + break; + } + } + } while(0); + $54 = $1; + $55 = $0; + HEAP32[$55>>2] = $54; + STACKTOP = sp;return; +} +function __gcry_mpi_clear($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $0; + $2 = ($1|0)!=(0|0); + if ($2) { + $3 = $0; + $4 = ((($3)) + 12|0); + $5 = HEAP32[$4>>2]|0; + $6 = $5 & 16; + $7 = ($6|0)!=(0); + if ($7) { + __gcry_mpi_immutable_failed(); + STACKTOP = sp;return; + } + } + $8 = $0; + $9 = ((($8)) + 4|0); + HEAP32[$9>>2] = 0; + $10 = $0; + $11 = ((($10)) + 12|0); + HEAP32[$11>>2] = 0; + STACKTOP = sp;return; +} +function __gcry_mpi_immutable_failed() { + var $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + __gcry_log_info(46354,$vararg_buffer); + STACKTOP = sp;return; +} +function __gcry_mpi_free($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $a; + $1 = $0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = $0; + $4 = ((($3)) + 12|0); + $5 = HEAP32[$4>>2]|0; + $6 = $5 & 32; + $7 = ($6|0)!=(0); + if ($7) { + STACKTOP = sp;return; + } + $8 = $0; + $9 = ((($8)) + 12|0); + $10 = HEAP32[$9>>2]|0; + $11 = $10 & 4; + $12 = ($11|0)!=(0); + $13 = $0; + $14 = ((($13)) + 16|0); + $15 = HEAP32[$14>>2]|0; + if ($12) { + __gcry_free($15); + } else { + $16 = $0; + $17 = HEAP32[$16>>2]|0; + __gcry_mpi_free_limb_space($15,$17); + } + $18 = $0; + $19 = ((($18)) + 12|0); + $20 = HEAP32[$19>>2]|0; + $21 = $20 & -3864; + $22 = ($21|0)!=(0); + if ($22) { + __gcry_log_bug(46398,$vararg_buffer); + // unreachable; + } + $23 = $0; + __gcry_free($23); + STACKTOP = sp;return; +} +function __gcry_mpi_set_opaque($a,$p,$nbits) { + $a = $a|0; + $p = $p|0; + $nbits = $nbits|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $a; + $2 = $p; + $3 = $nbits; + $4 = $1; + $5 = ($4|0)!=(0|0); + if (!($5)) { + $6 = (__gcry_mpi_alloc(0)|0); + $1 = $6; + } + $7 = $1; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = $1; + $10 = ((($9)) + 12|0); + $11 = HEAP32[$10>>2]|0; + $12 = $11 & 16; + $13 = ($12|0)!=(0); + if ($13) { + __gcry_mpi_immutable_failed(); + $14 = $1; + $0 = $14; + $51 = $0; + STACKTOP = sp;return ($51|0); + } + } + $15 = $1; + $16 = ((($15)) + 12|0); + $17 = HEAP32[$16>>2]|0; + $18 = $17 & 4; + $19 = ($18|0)!=(0); + $20 = $1; + $21 = ((($20)) + 16|0); + $22 = HEAP32[$21>>2]|0; + if ($19) { + __gcry_free($22); + } else { + $23 = $1; + $24 = HEAP32[$23>>2]|0; + __gcry_mpi_free_limb_space($22,$24); + } + $25 = $2; + $26 = $1; + $27 = ((($26)) + 16|0); + HEAP32[$27>>2] = $25; + $28 = $1; + HEAP32[$28>>2] = 0; + $29 = $1; + $30 = ((($29)) + 4|0); + HEAP32[$30>>2] = 0; + $31 = $3; + $32 = $1; + $33 = ((($32)) + 8|0); + HEAP32[$33>>2] = $31; + $34 = $1; + $35 = ((($34)) + 12|0); + $36 = HEAP32[$35>>2]|0; + $37 = $36 & 3840; + $38 = 4 | $37; + $39 = $1; + $40 = ((($39)) + 12|0); + HEAP32[$40>>2] = $38; + $41 = $1; + $42 = ((($41)) + 16|0); + $43 = HEAP32[$42>>2]|0; + $44 = (__gcry_is_secure($43)|0); + $45 = ($44|0)!=(0); + if ($45) { + $46 = $1; + $47 = ((($46)) + 12|0); + $48 = HEAP32[$47>>2]|0; + $49 = $48 | 1; + HEAP32[$47>>2] = $49; + } + $50 = $1; + $0 = $50; + $51 = $0; + STACKTOP = sp;return ($51|0); +} +function __gcry_mpi_set_opaque_copy($a,$p,$nbits) { + $a = $a|0; + $p = $p|0; + $nbits = $nbits|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $d = 0, $n = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $a; + $2 = $p; + $3 = $nbits; + $4 = $3; + $5 = (($4) + 7)|0; + $6 = (($5>>>0) / 8)&-1; + $n = $6; + $7 = $2; + $8 = (__gcry_is_secure($7)|0); + $9 = ($8|0)!=(0); + $10 = $n; + if ($9) { + $11 = (__gcry_malloc_secure($10)|0); + $13 = $11; + } else { + $12 = (__gcry_malloc($10)|0); + $13 = $12; + } + $d = $13; + $14 = $d; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = $d; + $17 = $2; + $18 = $n; + _memcpy(($16|0),($17|0),($18|0))|0; + $19 = $1; + $20 = $d; + $21 = $3; + $22 = (__gcry_mpi_set_opaque($19,$20,$21)|0); + $0 = $22; + $23 = $0; + STACKTOP = sp;return ($23|0); + } else { + $0 = 0; + $23 = $0; + STACKTOP = sp;return ($23|0); + } + return (0)|0; +} +function __gcry_mpi_get_opaque($a,$nbits) { + $a = $a|0; + $nbits = $nbits|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $a; + $1 = $nbits; + $2 = $0; + $3 = ((($2)) + 12|0); + $4 = HEAP32[$3>>2]|0; + $5 = $4 & 4; + $6 = ($5|0)!=(0); + if (!($6)) { + __gcry_log_bug(46430,$vararg_buffer); + // unreachable; + } + $7 = $1; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = $0; + $10 = ((($9)) + 8|0); + $11 = HEAP32[$10>>2]|0; + $12 = $1; + HEAP32[$12>>2] = $11; + } + $13 = $0; + $14 = ((($13)) + 16|0); + $15 = HEAP32[$14>>2]|0; + STACKTOP = sp;return ($15|0); +} +function __gcry_mpi_get_opaque_copy($a,$nbits) { + $a = $a|0; + $nbits = $nbits|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $d = 0, $n = 0, $or$cond = 0, $s = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $a; + $2 = $nbits; + $3 = $1; + $4 = $2; + $5 = (__gcry_mpi_get_opaque($3,$4)|0); + $s = $5; + $6 = $s; + $7 = ($6|0)==(0|0); + $8 = $2; + $9 = ($8|0)!=(0|0); + $or$cond = $7 & $9; + if ($or$cond) { + $0 = 0; + $27 = $0; + STACKTOP = sp;return ($27|0); + } + $10 = $2; + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + 7)|0; + $13 = (($12>>>0) / 8)&-1; + $n = $13; + $14 = $s; + $15 = (__gcry_is_secure($14)|0); + $16 = ($15|0)!=(0); + $17 = $n; + if ($16) { + $18 = (__gcry_malloc_secure($17)|0); + $20 = $18; + } else { + $19 = (__gcry_malloc($17)|0); + $20 = $19; + } + $d = $20; + $21 = $d; + $22 = ($21|0)!=(0|0); + if ($22) { + $23 = $d; + $24 = $s; + $25 = $n; + _memcpy(($23|0),($24|0),($25|0))|0; + } + $26 = $d; + $0 = $26; + $27 = $0; + STACKTOP = sp;return ($27|0); +} +function __gcry_mpi_copy($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $b = 0; + var $i = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $0; + $2 = ($1|0)!=(0|0); + if ($2) { + $3 = $0; + $4 = ((($3)) + 12|0); + $5 = HEAP32[$4>>2]|0; + $6 = $5 & 4; + $7 = ($6|0)!=(0); + if ($7) { + $8 = $0; + $9 = ((($8)) + 16|0); + $10 = HEAP32[$9>>2]|0; + $11 = (__gcry_is_secure($10)|0); + $12 = ($11|0)!=(0); + $13 = $0; + $14 = ((($13)) + 8|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + 7)|0; + $17 = (($16|0) / 8)&-1; + if ($12) { + $18 = (__gcry_xmalloc_secure($17)|0); + $20 = $18; + } else { + $19 = (__gcry_xmalloc($17)|0); + $20 = $19; + } + $p = $20; + $21 = $0; + $22 = ((($21)) + 16|0); + $23 = HEAP32[$22>>2]|0; + $24 = ($23|0)!=(0|0); + if ($24) { + $25 = $p; + $26 = $0; + $27 = ((($26)) + 16|0); + $28 = HEAP32[$27>>2]|0; + $29 = $0; + $30 = ((($29)) + 8|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($31) + 7)|0; + $33 = (($32|0) / 8)&-1; + _memcpy(($25|0),($28|0),($33|0))|0; + } + $34 = $p; + $35 = $0; + $36 = ((($35)) + 8|0); + $37 = HEAP32[$36>>2]|0; + $38 = (__gcry_mpi_set_opaque(0,$34,$37)|0); + $b = $38; + $39 = $b; + $40 = ((($39)) + 12|0); + $41 = HEAP32[$40>>2]|0; + $42 = $41 & -49; + HEAP32[$40>>2] = $42; + $98 = $b; + STACKTOP = sp;return ($98|0); + } + } + $43 = $0; + $44 = ($43|0)!=(0|0); + if (!($44)) { + $b = 0; + $98 = $b; + STACKTOP = sp;return ($98|0); + } + $45 = $0; + $46 = ($45|0)!=(0|0); + if ($46) { + $47 = $0; + $48 = ((($47)) + 12|0); + $49 = HEAP32[$48>>2]|0; + $50 = $49 & 1; + $51 = ($50|0)!=(0); + if ($51) { + $52 = $0; + $53 = ((($52)) + 4|0); + $54 = HEAP32[$53>>2]|0; + $55 = (__gcry_mpi_alloc_secure($54)|0); + $60 = $55; + } else { + label = 13; + } + } else { + label = 13; + } + if ((label|0) == 13) { + $56 = $0; + $57 = ((($56)) + 4|0); + $58 = HEAP32[$57>>2]|0; + $59 = (__gcry_mpi_alloc($58)|0); + $60 = $59; + } + $b = $60; + $61 = $0; + $62 = ((($61)) + 4|0); + $63 = HEAP32[$62>>2]|0; + $64 = $b; + $65 = ((($64)) + 4|0); + HEAP32[$65>>2] = $63; + $66 = $0; + $67 = ((($66)) + 8|0); + $68 = HEAP32[$67>>2]|0; + $69 = $b; + $70 = ((($69)) + 8|0); + HEAP32[$70>>2] = $68; + $71 = $0; + $72 = ((($71)) + 12|0); + $73 = HEAP32[$72>>2]|0; + $74 = $b; + $75 = ((($74)) + 12|0); + HEAP32[$75>>2] = $73; + $76 = $b; + $77 = ((($76)) + 12|0); + $78 = HEAP32[$77>>2]|0; + $79 = $78 & -49; + HEAP32[$77>>2] = $79; + $i = 0; + while(1) { + $80 = $i; + $81 = $b; + $82 = ((($81)) + 4|0); + $83 = HEAP32[$82>>2]|0; + $84 = ($80|0)<($83|0); + if (!($84)) { + break; + } + $85 = $i; + $86 = $0; + $87 = ((($86)) + 16|0); + $88 = HEAP32[$87>>2]|0; + $89 = (($88) + ($85<<2)|0); + $90 = HEAP32[$89>>2]|0; + $91 = $i; + $92 = $b; + $93 = ((($92)) + 16|0); + $94 = HEAP32[$93>>2]|0; + $95 = (($94) + ($91<<2)|0); + HEAP32[$95>>2] = $90; + $96 = $i; + $97 = (($96) + 1)|0; + $i = $97; + } + $98 = $b; + STACKTOP = sp;return ($98|0); +} +function __gcry_mpi_neg($w,$u) { + $w = $w|0; + $u = $u|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $u; + $2 = $0; + $3 = $1; + $4 = ($2|0)!=($3|0); + $5 = $0; + if ($4) { + $6 = $1; + (__gcry_mpi_set($5,$6)|0); + } else { + $7 = ($5|0)!=(0|0); + if ($7) { + $8 = $0; + $9 = ((($8)) + 12|0); + $10 = HEAP32[$9>>2]|0; + $11 = $10 & 16; + $12 = ($11|0)!=(0); + if ($12) { + __gcry_mpi_immutable_failed(); + STACKTOP = sp;return; + } + } + } + $13 = $1; + $14 = ((($13)) + 8|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)!=(0); + $17 = $16 ^ 1; + $18 = $17&1; + $19 = $0; + $20 = ((($19)) + 8|0); + HEAP32[$20>>2] = $18; + STACKTOP = sp;return; +} +function __gcry_mpi_set($w,$u) { + $w = $w|0; + $u = $u|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $_i = 0, $up = 0, $usign = 0, $usize = 0, $wp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $w; + $2 = $u; + $3 = $2; + $4 = ((($3)) + 4|0); + $5 = HEAP32[$4>>2]|0; + $usize = $5; + $6 = $2; + $7 = ((($6)) + 8|0); + $8 = HEAP32[$7>>2]|0; + $usign = $8; + $9 = $1; + $10 = ($9|0)!=(0|0); + if (!($10)) { + $11 = $2; + $12 = ((($11)) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = (__gcry_mpi_alloc($13)|0); + $1 = $14; + } + $15 = $1; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = $1; + $18 = ((($17)) + 12|0); + $19 = HEAP32[$18>>2]|0; + $20 = $19 & 16; + $21 = ($20|0)!=(0); + if ($21) { + __gcry_mpi_immutable_failed(); + $22 = $1; + $0 = $22; + $63 = $0; + STACKTOP = sp;return ($63|0); + } + } + $23 = $1; + $24 = HEAP32[$23>>2]|0; + $25 = $usize; + $26 = ($24|0)<($25|0); + if ($26) { + $27 = $1; + $28 = $usize; + __gcry_mpi_resize($27,$28); + } + $29 = $1; + $30 = ((($29)) + 16|0); + $31 = HEAP32[$30>>2]|0; + $wp = $31; + $32 = $2; + $33 = ((($32)) + 16|0); + $34 = HEAP32[$33>>2]|0; + $up = $34; + $_i = 0; + while(1) { + $35 = $_i; + $36 = $usize; + $37 = ($35|0)<($36|0); + if (!($37)) { + break; + } + $38 = $_i; + $39 = $up; + $40 = (($39) + ($38<<2)|0); + $41 = HEAP32[$40>>2]|0; + $42 = $_i; + $43 = $wp; + $44 = (($43) + ($42<<2)|0); + HEAP32[$44>>2] = $41; + $45 = $_i; + $46 = (($45) + 1)|0; + $_i = $46; + } + $47 = $usize; + $48 = $1; + $49 = ((($48)) + 4|0); + HEAP32[$49>>2] = $47; + $50 = $2; + $51 = ((($50)) + 12|0); + $52 = HEAP32[$51>>2]|0; + $53 = $1; + $54 = ((($53)) + 12|0); + HEAP32[$54>>2] = $52; + $55 = $1; + $56 = ((($55)) + 12|0); + $57 = HEAP32[$56>>2]|0; + $58 = $57 & -49; + HEAP32[$56>>2] = $58; + $59 = $usign; + $60 = $1; + $61 = ((($60)) + 8|0); + HEAP32[$61>>2] = $59; + $62 = $1; + $0 = $62; + $63 = $0; + STACKTOP = sp;return ($63|0); +} +function __gcry_mpi_alloc_like($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $b = 0, $n = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $0; + $2 = ($1|0)!=(0|0); + if ($2) { + $3 = $0; + $4 = ((($3)) + 12|0); + $5 = HEAP32[$4>>2]|0; + $6 = $5 & 4; + $7 = ($6|0)!=(0); + if ($7) { + $8 = $0; + $9 = ((($8)) + 8|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + 7)|0; + $12 = (($11|0) / 8)&-1; + $n = $12; + $13 = $0; + $14 = ((($13)) + 16|0); + $15 = HEAP32[$14>>2]|0; + $16 = (__gcry_is_secure($15)|0); + $17 = ($16|0)!=(0); + $18 = $n; + if ($17) { + $19 = (__gcry_malloc_secure($18)|0); + $21 = $19; + } else { + $20 = (__gcry_malloc($18)|0); + $21 = $20; + } + $p = $21; + $22 = $p; + $23 = $0; + $24 = ((($23)) + 16|0); + $25 = HEAP32[$24>>2]|0; + $26 = $n; + _memcpy(($22|0),($25|0),($26|0))|0; + $27 = $p; + $28 = $0; + $29 = ((($28)) + 8|0); + $30 = HEAP32[$29>>2]|0; + $31 = (__gcry_mpi_set_opaque(0,$27,$30)|0); + $b = $31; + $59 = $b; + STACKTOP = sp;return ($59|0); + } + } + $32 = $0; + $33 = ($32|0)!=(0|0); + if (!($33)) { + $b = 0; + $59 = $b; + STACKTOP = sp;return ($59|0); + } + $34 = $0; + $35 = ($34|0)!=(0|0); + if ($35) { + $36 = $0; + $37 = ((($36)) + 12|0); + $38 = HEAP32[$37>>2]|0; + $39 = $38 & 1; + $40 = ($39|0)!=(0); + if ($40) { + $41 = $0; + $42 = ((($41)) + 4|0); + $43 = HEAP32[$42>>2]|0; + $44 = (__gcry_mpi_alloc_secure($43)|0); + $49 = $44; + } else { + label = 11; + } + } else { + label = 11; + } + if ((label|0) == 11) { + $45 = $0; + $46 = ((($45)) + 4|0); + $47 = HEAP32[$46>>2]|0; + $48 = (__gcry_mpi_alloc($47)|0); + $49 = $48; + } + $b = $49; + $50 = $b; + $51 = ((($50)) + 4|0); + HEAP32[$51>>2] = 0; + $52 = $b; + $53 = ((($52)) + 8|0); + HEAP32[$53>>2] = 0; + $54 = $0; + $55 = ((($54)) + 12|0); + $56 = HEAP32[$55>>2]|0; + $57 = $b; + $58 = ((($57)) + 12|0); + HEAP32[$58>>2] = $56; + $59 = $b; + STACKTOP = sp;return ($59|0); +} +function __gcry_mpi_snatch($w,$u) { + $w = $w|0; + $u = $u|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $u; + $2 = $0; + $3 = ($2|0)!=(0|0); + if ($3) { + $4 = $0; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = $0; + $7 = ((($6)) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = $8 & 16; + $10 = ($9|0)!=(0); + if ($10) { + __gcry_mpi_immutable_failed(); + STACKTOP = sp;return; + } + } + $11 = $0; + $12 = $1; + $13 = ((($12)) + 16|0); + $14 = HEAP32[$13>>2]|0; + $15 = $1; + $16 = HEAP32[$15>>2]|0; + __gcry_mpi_assign_limb_space($11,$14,$16); + $17 = $1; + $18 = ((($17)) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = $0; + $21 = ((($20)) + 4|0); + HEAP32[$21>>2] = $19; + $22 = $1; + $23 = ((($22)) + 8|0); + $24 = HEAP32[$23>>2]|0; + $25 = $0; + $26 = ((($25)) + 8|0); + HEAP32[$26>>2] = $24; + $27 = $1; + $28 = ((($27)) + 12|0); + $29 = HEAP32[$28>>2]|0; + $30 = $0; + $31 = ((($30)) + 12|0); + HEAP32[$31>>2] = $29; + $32 = $1; + HEAP32[$32>>2] = 0; + $33 = $1; + $34 = ((($33)) + 4|0); + HEAP32[$34>>2] = 0; + $35 = $1; + $36 = ((($35)) + 16|0); + HEAP32[$36>>2] = 0; + } + $37 = $1; + __gcry_mpi_free($37); + STACKTOP = sp;return; +} +function __gcry_mpi_set_cond($w,$u,$set) { + $w = $w|0; + $u = $u|0; + $set = $set|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $9 = 0, $i = 0, $mask = 0, $nlimbs = 0, $vararg_buffer = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $w; + $1 = $u; + $2 = $set; + $3 = $1; + $4 = HEAP32[$3>>2]|0; + $nlimbs = $4; + $5 = $2; + $6 = ($5|0)!=(0); + $7 = $6 ^ 1; + $8 = $7 ^ 1; + $9 = $8&1; + $10 = (0 - ($9))|0; + $mask = $10; + $11 = $0; + $12 = HEAP32[$11>>2]|0; + $13 = $1; + $14 = HEAP32[$13>>2]|0; + $15 = ($12|0)!=($14|0); + if ($15) { + __gcry_log_bug(46460,$vararg_buffer); + // unreachable; + } + $i = 0; + while(1) { + $16 = $i; + $17 = $nlimbs; + $18 = ($16|0)<($17|0); + $19 = $mask; + if (!($18)) { + break; + } + $20 = $i; + $21 = $0; + $22 = ((($21)) + 16|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + ($20<<2)|0); + $25 = HEAP32[$24>>2]|0; + $26 = $i; + $27 = $1; + $28 = ((($27)) + 16|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + ($26<<2)|0); + $31 = HEAP32[$30>>2]|0; + $32 = $25 ^ $31; + $33 = $19 & $32; + $x = $33; + $34 = $i; + $35 = $0; + $36 = ((($35)) + 16|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + ($34<<2)|0); + $39 = HEAP32[$38>>2]|0; + $40 = $x; + $41 = $39 ^ $40; + $42 = $i; + $43 = $0; + $44 = ((($43)) + 16|0); + $45 = HEAP32[$44>>2]|0; + $46 = (($45) + ($42<<2)|0); + HEAP32[$46>>2] = $41; + $47 = $i; + $48 = (($47) + 1)|0; + $i = $48; + } + $49 = $0; + $50 = ((($49)) + 4|0); + $51 = HEAP32[$50>>2]|0; + $52 = $1; + $53 = ((($52)) + 4|0); + $54 = HEAP32[$53>>2]|0; + $55 = $51 ^ $54; + $56 = $19 & $55; + $x = $56; + $57 = $0; + $58 = ((($57)) + 4|0); + $59 = HEAP32[$58>>2]|0; + $60 = $x; + $61 = $59 ^ $60; + $62 = $0; + $63 = ((($62)) + 4|0); + HEAP32[$63>>2] = $61; + $64 = $mask; + $65 = $0; + $66 = ((($65)) + 8|0); + $67 = HEAP32[$66>>2]|0; + $68 = $1; + $69 = ((($68)) + 8|0); + $70 = HEAP32[$69>>2]|0; + $71 = $67 ^ $70; + $72 = $64 & $71; + $x = $72; + $73 = $0; + $74 = ((($73)) + 8|0); + $75 = HEAP32[$74>>2]|0; + $76 = $x; + $77 = $75 ^ $76; + $78 = $0; + $79 = ((($78)) + 8|0); + HEAP32[$79>>2] = $77; + $80 = $0; + STACKTOP = sp;return ($80|0); +} +function __gcry_mpi_set_ui($w,$u) { + $w = $w|0; + $u = $u|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $w; + $2 = $u; + $3 = $1; + $4 = ($3|0)!=(0|0); + if (!($4)) { + $5 = (__gcry_mpi_alloc(1)|0); + $1 = $5; + } + $6 = $1; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = $1; + $9 = ((($8)) + 12|0); + $10 = HEAP32[$9>>2]|0; + $11 = $10 & 16; + $12 = ($11|0)!=(0); + if ($12) { + __gcry_mpi_immutable_failed(); + $13 = $1; + $0 = $13; + $32 = $0; + STACKTOP = sp;return ($32|0); + } + } + $14 = $1; + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)<(1); + if ($16) { + $17 = $1; + __gcry_mpi_resize($17,1); + } + $18 = $2; + $19 = $1; + $20 = ((($19)) + 16|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$21>>2] = $18; + $22 = $2; + $23 = ($22|0)!=(0); + $24 = $23 ? 1 : 0; + $25 = $1; + $26 = ((($25)) + 4|0); + HEAP32[$26>>2] = $24; + $27 = $1; + $28 = ((($27)) + 8|0); + HEAP32[$28>>2] = 0; + $29 = $1; + $30 = ((($29)) + 12|0); + HEAP32[$30>>2] = 0; + $31 = $1; + $0 = $31; + $32 = $0; + STACKTOP = sp;return ($32|0); +} +function __gcry_mpi_swap($a,$b) { + $a = $a|0; + $b = $b|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $tmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $tmp = sp; + $0 = $a; + $1 = $b; + $2 = $0; + ;HEAP32[$tmp>>2]=HEAP32[$2>>2]|0;HEAP32[$tmp+4>>2]=HEAP32[$2+4>>2]|0;HEAP32[$tmp+8>>2]=HEAP32[$2+8>>2]|0;HEAP32[$tmp+12>>2]=HEAP32[$2+12>>2]|0;HEAP32[$tmp+16>>2]=HEAP32[$2+16>>2]|0; + $3 = $0; + $4 = $1; + ;HEAP32[$3>>2]=HEAP32[$4>>2]|0;HEAP32[$3+4>>2]=HEAP32[$4+4>>2]|0;HEAP32[$3+8>>2]=HEAP32[$4+8>>2]|0;HEAP32[$3+12>>2]=HEAP32[$4+12>>2]|0;HEAP32[$3+16>>2]=HEAP32[$4+16>>2]|0; + $5 = $1; + ;HEAP32[$5>>2]=HEAP32[$tmp>>2]|0;HEAP32[$5+4>>2]=HEAP32[$tmp+4>>2]|0;HEAP32[$5+8>>2]=HEAP32[$tmp+8>>2]|0;HEAP32[$5+12>>2]=HEAP32[$tmp+12>>2]|0;HEAP32[$5+16>>2]=HEAP32[$tmp+16>>2]|0; + STACKTOP = sp;return; +} +function __gcry_mpi_swap_cond($a,$b,$swap) { + $a = $a|0; + $b = $b|0; + $swap = $swap|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0; + var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $mask = 0, $nlimbs = 0, $vararg_buffer = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $a; + $1 = $b; + $2 = $swap; + $3 = $0; + $4 = HEAP32[$3>>2]|0; + $nlimbs = $4; + $5 = $2; + $6 = ($5|0)!=(0); + $7 = $6 ^ 1; + $8 = $7 ^ 1; + $9 = $8&1; + $10 = (0 - ($9))|0; + $mask = $10; + $11 = $0; + $12 = HEAP32[$11>>2]|0; + $13 = $1; + $14 = HEAP32[$13>>2]|0; + $15 = ($12|0)!=($14|0); + if ($15) { + __gcry_log_bug(46491,$vararg_buffer); + // unreachable; + } + $i = 0; + while(1) { + $16 = $i; + $17 = $nlimbs; + $18 = ($16|0)<($17|0); + $19 = $mask; + if (!($18)) { + break; + } + $20 = $i; + $21 = $0; + $22 = ((($21)) + 16|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + ($20<<2)|0); + $25 = HEAP32[$24>>2]|0; + $26 = $i; + $27 = $1; + $28 = ((($27)) + 16|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + ($26<<2)|0); + $31 = HEAP32[$30>>2]|0; + $32 = $25 ^ $31; + $33 = $19 & $32; + $x = $33; + $34 = $i; + $35 = $0; + $36 = ((($35)) + 16|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + ($34<<2)|0); + $39 = HEAP32[$38>>2]|0; + $40 = $x; + $41 = $39 ^ $40; + $42 = $i; + $43 = $0; + $44 = ((($43)) + 16|0); + $45 = HEAP32[$44>>2]|0; + $46 = (($45) + ($42<<2)|0); + HEAP32[$46>>2] = $41; + $47 = $i; + $48 = $1; + $49 = ((($48)) + 16|0); + $50 = HEAP32[$49>>2]|0; + $51 = (($50) + ($47<<2)|0); + $52 = HEAP32[$51>>2]|0; + $53 = $x; + $54 = $52 ^ $53; + $55 = $i; + $56 = $1; + $57 = ((($56)) + 16|0); + $58 = HEAP32[$57>>2]|0; + $59 = (($58) + ($55<<2)|0); + HEAP32[$59>>2] = $54; + $60 = $i; + $61 = (($60) + 1)|0; + $i = $61; + } + $62 = $0; + $63 = ((($62)) + 4|0); + $64 = HEAP32[$63>>2]|0; + $65 = $1; + $66 = ((($65)) + 4|0); + $67 = HEAP32[$66>>2]|0; + $68 = $64 ^ $67; + $69 = $19 & $68; + $x = $69; + $70 = $0; + $71 = ((($70)) + 4|0); + $72 = HEAP32[$71>>2]|0; + $73 = $x; + $74 = $72 ^ $73; + $75 = $0; + $76 = ((($75)) + 4|0); + HEAP32[$76>>2] = $74; + $77 = $1; + $78 = ((($77)) + 4|0); + $79 = HEAP32[$78>>2]|0; + $80 = $x; + $81 = $79 ^ $80; + $82 = $1; + $83 = ((($82)) + 4|0); + HEAP32[$83>>2] = $81; + $84 = $mask; + $85 = $0; + $86 = ((($85)) + 8|0); + $87 = HEAP32[$86>>2]|0; + $88 = $1; + $89 = ((($88)) + 8|0); + $90 = HEAP32[$89>>2]|0; + $91 = $87 ^ $90; + $92 = $84 & $91; + $x = $92; + $93 = $0; + $94 = ((($93)) + 8|0); + $95 = HEAP32[$94>>2]|0; + $96 = $x; + $97 = $95 ^ $96; + $98 = $0; + $99 = ((($98)) + 8|0); + HEAP32[$99>>2] = $97; + $100 = $1; + $101 = ((($100)) + 8|0); + $102 = HEAP32[$101>>2]|0; + $103 = $x; + $104 = $102 ^ $103; + $105 = $1; + $106 = ((($105)) + 8|0); + HEAP32[$106>>2] = $104; + STACKTOP = sp;return; +} +function __gcry_mpi_new($nbits) { + $nbits = $nbits|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $nbits; + $1 = $0; + $2 = (($1) + 32)|0; + $3 = (($2) - 1)|0; + $4 = (($3>>>0) / 32)&-1; + $5 = (__gcry_mpi_alloc($4)|0); + STACKTOP = sp;return ($5|0); +} +function __gcry_mpi_snew($nbits) { + $nbits = $nbits|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $nbits; + $1 = $0; + $2 = (($1) + 32)|0; + $3 = (($2) - 1)|0; + $4 = (($3>>>0) / 32)&-1; + $5 = (__gcry_mpi_alloc_secure($4)|0); + STACKTOP = sp;return ($5|0); +} +function __gcry_mpi_release($a) { + $a = $a|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $0; + __gcry_mpi_free($1); + STACKTOP = sp;return; +} +function __gcry_mpi_randomize($w,$nbits,$level) { + $w = $w|0; + $nbits = $nbits|0; + $level = $level|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nbytes = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $w; + $1 = $nbits; + $2 = $level; + $3 = $1; + $4 = (($3) + 7)|0; + $5 = (($4>>>0) / 8)&-1; + $nbytes = $5; + $6 = $0; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = $0; + $9 = ((($8)) + 12|0); + $10 = HEAP32[$9>>2]|0; + $11 = $10 & 16; + $12 = ($11|0)!=(0); + if ($12) { + __gcry_mpi_immutable_failed(); + STACKTOP = sp;return; + } + } + $13 = $2; + $14 = ($13|0)==(0); + $15 = $0; + $16 = ($15|0)!=(0|0); + if ($14) { + if ($16) { + $17 = $0; + $18 = ((($17)) + 12|0); + $19 = HEAP32[$18>>2]|0; + $20 = $19 & 1; + $21 = ($20|0)!=(0); + if ($21) { + $22 = $nbytes; + $23 = (__gcry_xmalloc_secure($22)|0); + $26 = $23; + } else { + label = 8; + } + } else { + label = 8; + } + if ((label|0) == 8) { + $24 = $nbytes; + $25 = (__gcry_xmalloc($24)|0); + $26 = $25; + } + $p = $26; + $27 = $p; + $28 = $nbytes; + __gcry_create_nonce($27,$28); + } else { + if ($16) { + $29 = $0; + $30 = ((($29)) + 12|0); + $31 = HEAP32[$30>>2]|0; + $32 = $31 & 1; + $33 = ($32|0)!=(0); + if ($33) { + $34 = $nbytes; + $35 = $2; + $36 = (__gcry_random_bytes_secure($34,$35)|0); + $40 = $36; + } else { + label = 13; + } + } else { + label = 13; + } + if ((label|0) == 13) { + $37 = $nbytes; + $38 = $2; + $39 = (__gcry_random_bytes($37,$38)|0); + $40 = $39; + } + $p = $40; + } + $41 = $0; + $42 = $p; + $43 = $nbytes; + __gcry_mpi_set_buffer($41,$42,$43,0); + $44 = $p; + __gcry_free($44); + STACKTOP = sp;return; +} +function __gcry_mpi_get_flag($a,$flag) { + $a = $a|0; + $flag = $flag|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $1 = $a; + $2 = $flag; + $3 = $2; + switch ($3|0) { + case 1: { + $4 = $1; + $5 = ((($4)) + 12|0); + $6 = HEAP32[$5>>2]|0; + $7 = $6 & 1; + $8 = ($7|0)!=(0); + $9 = $8 ^ 1; + $10 = $9 ^ 1; + $11 = $10&1; + $0 = $11; + $45 = $0; + STACKTOP = sp;return ($45|0); + break; + } + case 2: { + $12 = $1; + $13 = ((($12)) + 12|0); + $14 = HEAP32[$13>>2]|0; + $15 = $14 & 4; + $16 = ($15|0)!=(0); + $17 = $16 ^ 1; + $18 = $17 ^ 1; + $19 = $18&1; + $0 = $19; + $45 = $0; + STACKTOP = sp;return ($45|0); + break; + } + case 4: { + $20 = $1; + $21 = ((($20)) + 12|0); + $22 = HEAP32[$21>>2]|0; + $23 = $22 & 16; + $24 = ($23|0)!=(0); + $25 = $24 ^ 1; + $26 = $25 ^ 1; + $27 = $26&1; + $0 = $27; + $45 = $0; + STACKTOP = sp;return ($45|0); + break; + } + case 8: { + $28 = $1; + $29 = ((($28)) + 12|0); + $30 = HEAP32[$29>>2]|0; + $31 = $30 & 32; + $32 = ($31|0)!=(0); + $33 = $32 ^ 1; + $34 = $33 ^ 1; + $35 = $34&1; + $0 = $35; + $45 = $0; + STACKTOP = sp;return ($45|0); + break; + } + case 2048: case 1024: case 512: case 256: { + $36 = $1; + $37 = ((($36)) + 12|0); + $38 = HEAP32[$37>>2]|0; + $39 = $2; + $40 = $38 & $39; + $41 = ($40|0)!=(0); + $42 = $41 ^ 1; + $43 = $42 ^ 1; + $44 = $43&1; + $0 = $44; + $45 = $0; + STACKTOP = sp;return ($45|0); + break; + } + default: { + __gcry_log_bug(46523,$vararg_buffer); + // unreachable; + } + } + return (0)|0; +} +function __gcry_mpi_const($no) { + $no = $no|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $0 = $no; + $1 = $0; + $2 = ($1|0)<(0); + $3 = $0; + $4 = ($3>>>0)>(6); + $or$cond = $2 | $4; + $5 = $0; + if ($or$cond) { + HEAP32[$vararg_buffer>>2] = $5; + __gcry_log_bug(46323,$vararg_buffer); + // unreachable; + } + $6 = (70876 + ($5<<2)|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = $0; + $10 = (70876 + ($9<<2)|0); + $11 = HEAP32[$10>>2]|0; + STACKTOP = sp;return ($11|0); + } else { + __gcry_log_bug(46543,$vararg_buffer2); + // unreachable; + } + return (0)|0; +} +function __gcry_compat_identification() { + var label = 0, sp = 0; + sp = STACKTOP; + return (46574|0); +} +function __gcry_hmac256_new($key,$keylen) { + $key = $key|0; + $keylen = $keylen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $_vlen = 0, $_vptr = 0, $hd = 0, $i = 0, $ipad = 0, $tmphd = 0, dest = 0; + var label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $ipad = sp + 32|0; + $1 = $key; + $2 = $keylen; + $3 = (_malloc(172)|0); + $hd = $3; + $4 = $hd; + $5 = ($4|0)!=(0|0); + if (!($5)) { + $0 = 0; + $92 = $0; + STACKTOP = sp;return ($92|0); + } + $6 = $hd; + HEAP32[$6>>2] = 1779033703; + $7 = $hd; + $8 = ((($7)) + 4|0); + HEAP32[$8>>2] = -1150833019; + $9 = $hd; + $10 = ((($9)) + 8|0); + HEAP32[$10>>2] = 1013904242; + $11 = $hd; + $12 = ((($11)) + 12|0); + HEAP32[$12>>2] = -1521486534; + $13 = $hd; + $14 = ((($13)) + 16|0); + HEAP32[$14>>2] = 1359893119; + $15 = $hd; + $16 = ((($15)) + 20|0); + HEAP32[$16>>2] = -1694144372; + $17 = $hd; + $18 = ((($17)) + 24|0); + HEAP32[$18>>2] = 528734635; + $19 = $hd; + $20 = ((($19)) + 28|0); + HEAP32[$20>>2] = 1541459225; + $21 = $hd; + $22 = ((($21)) + 32|0); + HEAP32[$22>>2] = 0; + $23 = $hd; + $24 = ((($23)) + 36|0); + HEAP32[$24>>2] = 0; + $25 = $hd; + $26 = ((($25)) + 40|0); + $27 = HEAP8[$26>>0]|0; + $28 = $27 & -2; + HEAP8[$26>>0] = $28; + $29 = $hd; + $30 = ((($29)) + 40|0); + $31 = HEAP8[$30>>0]|0; + $32 = $31 & -3; + HEAP8[$30>>0] = $32; + $33 = $1; + $34 = ($33|0)!=(0|0); + L5: do { + if ($34) { + dest=$ipad; stop=dest+64|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); + $35 = $hd; + $36 = ((($35)) + 105|0); + dest=$36; stop=dest+64|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); + $37 = $2; + $38 = ($37>>>0)<=(64); + do { + if ($38) { + $39 = $1; + $40 = $2; + _memcpy(($ipad|0),($39|0),($40|0))|0; + $41 = $hd; + $42 = ((($41)) + 105|0); + $43 = $1; + $44 = $2; + _memcpy(($42|0),($43|0),($44|0))|0; + } else { + $45 = (__gcry_hmac256_new(0,0)|0); + $tmphd = $45; + $46 = $tmphd; + $47 = ($46|0)!=(0|0); + if ($47) { + $49 = $tmphd; + $50 = $1; + $51 = $2; + __gcry_hmac256_update($49,$50,$51); + $52 = $tmphd; + _finalize($52); + $53 = $tmphd; + $54 = ((($53)) + 41|0); + dest=$ipad; src=$54; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $55 = $hd; + $56 = ((($55)) + 105|0); + $57 = $tmphd; + $58 = ((($57)) + 41|0); + dest=$56; src=$58; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $59 = $tmphd; + __gcry_hmac256_release($59); + break; + } + $48 = $hd; + _free($48); + $0 = 0; + $92 = $0; + STACKTOP = sp;return ($92|0); + } + } while(0); + $i = 0; + while(1) { + $60 = $i; + $61 = ($60|0)<(64); + if (!($61)) { + break; + } + $62 = $i; + $63 = (($ipad) + ($62)|0); + $64 = HEAP8[$63>>0]|0; + $65 = $64&255; + $66 = $65 ^ 54; + $67 = $66&255; + HEAP8[$63>>0] = $67; + $68 = $i; + $69 = $hd; + $70 = ((($69)) + 105|0); + $71 = (($70) + ($68)|0); + $72 = HEAP8[$71>>0]|0; + $73 = $72&255; + $74 = $73 ^ 92; + $75 = $74&255; + HEAP8[$71>>0] = $75; + $76 = $i; + $77 = (($76) + 1)|0; + $i = $77; + } + $78 = $hd; + $79 = ((($78)) + 40|0); + $80 = HEAP8[$79>>0]|0; + $81 = $80 & -3; + $82 = $81 | 2; + HEAP8[$79>>0] = $82; + $83 = $hd; + __gcry_hmac256_update($83,$ipad,64); + $_vptr = $ipad; + $_vlen = 64; + while(1) { + $84 = $_vlen; + $85 = ($84|0)!=(0); + if (!($85)) { + break L5; + } + $86 = $_vptr; + HEAP8[$86>>0] = 0; + $87 = $_vptr; + $88 = ((($87)) + 1|0); + $_vptr = $88; + $89 = $_vlen; + $90 = (($89) + -1)|0; + $_vlen = $90; + } + } + } while(0); + $91 = $hd; + $0 = $91; + $92 = $0; + STACKTOP = sp;return ($92|0); +} +function __gcry_hmac256_update($hd,$buffer,$length) { + $hd = $hd|0; + $buffer = $buffer|0; + $length = $length|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $9 = 0, $inbuf = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $hd; + $1 = $buffer; + $2 = $length; + $3 = $1; + $inbuf = $3; + $4 = $0; + $5 = ((($4)) + 40|0); + $6 = HEAP8[$5>>0]|0; + $7 = ($6 << 7)&255; + $8 = ($7<<24>>24) >> 7; + $9 = $8 << 24 >> 24; + $10 = ($9|0)!=(0); + if ($10) { + STACKTOP = sp;return; + } + $11 = $0; + $12 = ((($11)) + 36|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)==(64); + if ($14) { + $15 = $0; + $16 = $0; + $17 = ((($16)) + 41|0); + _transform_1792($15,$17); + $18 = $0; + $19 = ((($18)) + 36|0); + HEAP32[$19>>2] = 0; + $20 = $0; + $21 = ((($20)) + 32|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($22) + 1)|0; + HEAP32[$21>>2] = $23; + } + $24 = $inbuf; + $25 = ($24|0)!=(0|0); + if (!($25)) { + STACKTOP = sp;return; + } + $26 = $0; + $27 = ((($26)) + 36|0); + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)!=(0); + if ($29) { + while(1) { + $30 = $2; + $31 = ($30|0)!=(0); + if (!($31)) { + break; + } + $32 = $0; + $33 = ((($32)) + 36|0); + $34 = HEAP32[$33>>2]|0; + $35 = ($34|0)<(64); + if (!($35)) { + break; + } + $36 = $inbuf; + $37 = ((($36)) + 1|0); + $inbuf = $37; + $38 = HEAP8[$36>>0]|0; + $39 = $0; + $40 = ((($39)) + 36|0); + $41 = HEAP32[$40>>2]|0; + $42 = (($41) + 1)|0; + HEAP32[$40>>2] = $42; + $43 = $0; + $44 = ((($43)) + 41|0); + $45 = (($44) + ($41)|0); + HEAP8[$45>>0] = $38; + $46 = $2; + $47 = (($46) + -1)|0; + $2 = $47; + } + $48 = $0; + __gcry_hmac256_update($48,0,0); + $49 = $2; + $50 = ($49|0)!=(0); + if (!($50)) { + STACKTOP = sp;return; + } + } + while(1) { + $51 = $2; + $52 = ($51>>>0)>=(64); + if (!($52)) { + break; + } + $53 = $0; + $54 = $inbuf; + _transform_1792($53,$54); + $55 = $0; + $56 = ((($55)) + 36|0); + HEAP32[$56>>2] = 0; + $57 = $0; + $58 = ((($57)) + 32|0); + $59 = HEAP32[$58>>2]|0; + $60 = (($59) + 1)|0; + HEAP32[$58>>2] = $60; + $61 = $2; + $62 = (($61) - 64)|0; + $2 = $62; + $63 = $inbuf; + $64 = ((($63)) + 64|0); + $inbuf = $64; + } + while(1) { + $65 = $2; + $66 = ($65|0)!=(0); + if (!($66)) { + label = 15; + break; + } + $67 = $0; + $68 = ((($67)) + 36|0); + $69 = HEAP32[$68>>2]|0; + $70 = ($69|0)<(64); + if (!($70)) { + label = 15; + break; + } + $71 = $inbuf; + $72 = ((($71)) + 1|0); + $inbuf = $72; + $73 = HEAP8[$71>>0]|0; + $74 = $0; + $75 = ((($74)) + 36|0); + $76 = HEAP32[$75>>2]|0; + $77 = (($76) + 1)|0; + HEAP32[$75>>2] = $77; + $78 = $0; + $79 = ((($78)) + 41|0); + $80 = (($79) + ($76)|0); + HEAP8[$80>>0] = $73; + $81 = $2; + $82 = (($81) + -1)|0; + $2 = $82; + } + if ((label|0) == 15) { + STACKTOP = sp;return; + } +} +function _transform_1792($hd,$data_arg) { + $hd = $hd|0; + $data_arg = $data_arg|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $a = 0, $b = 0, $c = 0, $d = 0, $data = 0, $e = 0, $f = 0, $g = 0, $h = 0, $i = 0; + var $p2 = 0, $t1 = 0, $t2 = 0, $w = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 384|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $x = sp + 264|0; + $w = sp + 8|0; + $0 = $hd; + $1 = $data_arg; + $2 = $1; + $data = $2; + $3 = $0; + $4 = HEAP32[$3>>2]|0; + $a = $4; + $5 = $0; + $6 = ((($5)) + 4|0); + $7 = HEAP32[$6>>2]|0; + $b = $7; + $8 = $0; + $9 = ((($8)) + 8|0); + $10 = HEAP32[$9>>2]|0; + $c = $10; + $11 = $0; + $12 = ((($11)) + 12|0); + $13 = HEAP32[$12>>2]|0; + $d = $13; + $14 = $0; + $15 = ((($14)) + 16|0); + $16 = HEAP32[$15>>2]|0; + $e = $16; + $17 = $0; + $18 = ((($17)) + 20|0); + $19 = HEAP32[$18>>2]|0; + $f = $19; + $20 = $0; + $21 = ((($20)) + 24|0); + $22 = HEAP32[$21>>2]|0; + $g = $22; + $23 = $0; + $24 = ((($23)) + 28|0); + $25 = HEAP32[$24>>2]|0; + $h = $25; + $i = 0; + $p2 = $x; + while(1) { + $26 = $i; + $27 = ($26|0)<(16); + if (!($27)) { + break; + } + $28 = $data; + $29 = ((($28)) + 1|0); + $data = $29; + $30 = HEAP8[$28>>0]|0; + $31 = $p2; + $32 = ((($31)) + 3|0); + HEAP8[$32>>0] = $30; + $33 = $data; + $34 = ((($33)) + 1|0); + $data = $34; + $35 = HEAP8[$33>>0]|0; + $36 = $p2; + $37 = ((($36)) + 2|0); + HEAP8[$37>>0] = $35; + $38 = $data; + $39 = ((($38)) + 1|0); + $data = $39; + $40 = HEAP8[$38>>0]|0; + $41 = $p2; + $42 = ((($41)) + 1|0); + HEAP8[$42>>0] = $40; + $43 = $data; + $44 = ((($43)) + 1|0); + $data = $44; + $45 = HEAP8[$43>>0]|0; + $46 = $p2; + HEAP8[$46>>0] = $45; + $47 = $i; + $48 = (($47) + 1)|0; + $i = $48; + $49 = $p2; + $50 = ((($49)) + 4|0); + $p2 = $50; + } + $i = 0; + while(1) { + $51 = $i; + $52 = ($51|0)<(16); + if (!($52)) { + break; + } + $53 = $i; + $54 = (($x) + ($53<<2)|0); + $55 = HEAP32[$54>>2]|0; + $56 = $i; + $57 = (($w) + ($56<<2)|0); + HEAP32[$57>>2] = $55; + $58 = $i; + $59 = (($58) + 1)|0; + $i = $59; + } + while(1) { + $60 = $i; + $61 = ($60|0)<(64); + if (!($61)) { + break; + } + $62 = $i; + $63 = (($62) - 2)|0; + $64 = (($w) + ($63<<2)|0); + $65 = HEAP32[$64>>2]|0; + $66 = (_ror_1793($65,17)|0); + $67 = $i; + $68 = (($67) - 2)|0; + $69 = (($w) + ($68<<2)|0); + $70 = HEAP32[$69>>2]|0; + $71 = (_ror_1793($70,19)|0); + $72 = $66 ^ $71; + $73 = $i; + $74 = (($73) - 2)|0; + $75 = (($w) + ($74<<2)|0); + $76 = HEAP32[$75>>2]|0; + $77 = $76 >>> 10; + $78 = $72 ^ $77; + $79 = $i; + $80 = (($79) - 7)|0; + $81 = (($w) + ($80<<2)|0); + $82 = HEAP32[$81>>2]|0; + $83 = (($78) + ($82))|0; + $84 = $i; + $85 = (($84) - 15)|0; + $86 = (($w) + ($85<<2)|0); + $87 = HEAP32[$86>>2]|0; + $88 = (_ror_1793($87,7)|0); + $89 = $i; + $90 = (($89) - 15)|0; + $91 = (($w) + ($90<<2)|0); + $92 = HEAP32[$91>>2]|0; + $93 = (_ror_1793($92,18)|0); + $94 = $88 ^ $93; + $95 = $i; + $96 = (($95) - 15)|0; + $97 = (($w) + ($96<<2)|0); + $98 = HEAP32[$97>>2]|0; + $99 = $98 >>> 3; + $100 = $94 ^ $99; + $101 = (($83) + ($100))|0; + $102 = $i; + $103 = (($102) - 16)|0; + $104 = (($w) + ($103<<2)|0); + $105 = HEAP32[$104>>2]|0; + $106 = (($101) + ($105))|0; + $107 = $i; + $108 = (($w) + ($107<<2)|0); + HEAP32[$108>>2] = $106; + $109 = $i; + $110 = (($109) + 1)|0; + $i = $110; + } + $i = 0; + while(1) { + $111 = $i; + $112 = ($111|0)<(64); + if (!($112)) { + break; + } + $113 = $h; + $114 = $e; + $115 = (_ror_1793($114,6)|0); + $116 = $e; + $117 = (_ror_1793($116,11)|0); + $118 = $115 ^ $117; + $119 = $e; + $120 = (_ror_1793($119,25)|0); + $121 = $118 ^ $120; + $122 = (($113) + ($121))|0; + $123 = $g; + $124 = $e; + $125 = $f; + $126 = $g; + $127 = $125 ^ $126; + $128 = $124 & $127; + $129 = $123 ^ $128; + $130 = (($122) + ($129))|0; + $131 = $i; + $132 = (12580 + ($131<<2)|0); + $133 = HEAP32[$132>>2]|0; + $134 = (($130) + ($133))|0; + $135 = $i; + $136 = (($w) + ($135<<2)|0); + $137 = HEAP32[$136>>2]|0; + $138 = (($134) + ($137))|0; + $t1 = $138; + $139 = $a; + $140 = (_ror_1793($139,2)|0); + $141 = $a; + $142 = (_ror_1793($141,13)|0); + $143 = $140 ^ $142; + $144 = $a; + $145 = (_ror_1793($144,22)|0); + $146 = $143 ^ $145; + $147 = $a; + $148 = $b; + $149 = $147 & $148; + $150 = $c; + $151 = $a; + $152 = $b; + $153 = $151 | $152; + $154 = $150 & $153; + $155 = $149 | $154; + $156 = (($146) + ($155))|0; + $t2 = $156; + $157 = $g; + $h = $157; + $158 = $f; + $g = $158; + $159 = $e; + $f = $159; + $160 = $d; + $161 = $t1; + $162 = (($160) + ($161))|0; + $e = $162; + $163 = $c; + $d = $163; + $164 = $b; + $c = $164; + $165 = $a; + $b = $165; + $166 = $t1; + $167 = $t2; + $168 = (($166) + ($167))|0; + $a = $168; + $169 = $i; + $170 = (($169) + 1)|0; + $i = $170; + } + $171 = $a; + $172 = $0; + $173 = HEAP32[$172>>2]|0; + $174 = (($173) + ($171))|0; + HEAP32[$172>>2] = $174; + $175 = $b; + $176 = $0; + $177 = ((($176)) + 4|0); + $178 = HEAP32[$177>>2]|0; + $179 = (($178) + ($175))|0; + HEAP32[$177>>2] = $179; + $180 = $c; + $181 = $0; + $182 = ((($181)) + 8|0); + $183 = HEAP32[$182>>2]|0; + $184 = (($183) + ($180))|0; + HEAP32[$182>>2] = $184; + $185 = $d; + $186 = $0; + $187 = ((($186)) + 12|0); + $188 = HEAP32[$187>>2]|0; + $189 = (($188) + ($185))|0; + HEAP32[$187>>2] = $189; + $190 = $e; + $191 = $0; + $192 = ((($191)) + 16|0); + $193 = HEAP32[$192>>2]|0; + $194 = (($193) + ($190))|0; + HEAP32[$192>>2] = $194; + $195 = $f; + $196 = $0; + $197 = ((($196)) + 20|0); + $198 = HEAP32[$197>>2]|0; + $199 = (($198) + ($195))|0; + HEAP32[$197>>2] = $199; + $200 = $g; + $201 = $0; + $202 = ((($201)) + 24|0); + $203 = HEAP32[$202>>2]|0; + $204 = (($203) + ($200))|0; + HEAP32[$202>>2] = $204; + $205 = $h; + $206 = $0; + $207 = ((($206)) + 28|0); + $208 = HEAP32[$207>>2]|0; + $209 = (($208) + ($205))|0; + HEAP32[$207>>2] = $209; + STACKTOP = sp;return; +} +function _ror_1793($x,$n) { + $x = $x|0; + $n = $n|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $x; + $1 = $n; + $2 = $0; + $3 = $1; + $4 = $2 >>> $3; + $5 = $0; + $6 = $1; + $7 = (32 - ($6))|0; + $8 = $5 << $7; + $9 = $4 | $8; + STACKTOP = sp;return ($9|0); +} +function _finalize($hd) { + $hd = $hd|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $lsb = 0, $msb = 0; + var $p = 0, $t = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $hd; + $1 = $0; + $2 = ((($1)) + 40|0); + $3 = HEAP8[$2>>0]|0; + $4 = ($3 << 7)&255; + $5 = ($4<<24>>24) >> 7; + $6 = $5 << 24 >> 24; + $7 = ($6|0)!=(0); + if ($7) { + STACKTOP = sp;return; + } + $8 = $0; + __gcry_hmac256_update($8,0,0); + $9 = $0; + $10 = ((($9)) + 32|0); + $11 = HEAP32[$10>>2]|0; + $t = $11; + $12 = $t; + $13 = $12 << 6; + $lsb = $13; + $14 = $t; + $15 = $14 >>> 26; + $msb = $15; + $16 = $lsb; + $t = $16; + $17 = $0; + $18 = ((($17)) + 36|0); + $19 = HEAP32[$18>>2]|0; + $20 = $lsb; + $21 = (($20) + ($19))|0; + $lsb = $21; + $22 = $t; + $23 = ($21>>>0)<($22>>>0); + if ($23) { + $24 = $msb; + $25 = (($24) + 1)|0; + $msb = $25; + } + $26 = $lsb; + $t = $26; + $27 = $lsb; + $28 = $27 << 3; + $lsb = $28; + $29 = $msb; + $30 = $29 << 3; + $msb = $30; + $31 = $t; + $32 = $31 >>> 29; + $33 = $msb; + $34 = $33 | $32; + $msb = $34; + $35 = $0; + $36 = ((($35)) + 36|0); + $37 = HEAP32[$36>>2]|0; + $38 = ($37|0)<(56); + $39 = $0; + $40 = ((($39)) + 36|0); + $41 = HEAP32[$40>>2]|0; + $42 = (($41) + 1)|0; + HEAP32[$40>>2] = $42; + $43 = $0; + $44 = ((($43)) + 41|0); + $45 = (($44) + ($41)|0); + HEAP8[$45>>0] = -128; + L7: do { + if ($38) { + while(1) { + $46 = $0; + $47 = ((($46)) + 36|0); + $48 = HEAP32[$47>>2]|0; + $49 = ($48|0)<(56); + if (!($49)) { + break L7; + } + $50 = $0; + $51 = ((($50)) + 36|0); + $52 = HEAP32[$51>>2]|0; + $53 = (($52) + 1)|0; + HEAP32[$51>>2] = $53; + $54 = $0; + $55 = ((($54)) + 41|0); + $56 = (($55) + ($52)|0); + HEAP8[$56>>0] = 0; + } + } else { + while(1) { + $57 = $0; + $58 = ((($57)) + 36|0); + $59 = HEAP32[$58>>2]|0; + $60 = ($59|0)<(64); + $61 = $0; + if (!($60)) { + break; + } + $62 = ((($61)) + 36|0); + $63 = HEAP32[$62>>2]|0; + $64 = (($63) + 1)|0; + HEAP32[$62>>2] = $64; + $65 = $0; + $66 = ((($65)) + 41|0); + $67 = (($66) + ($63)|0); + HEAP8[$67>>0] = 0; + } + __gcry_hmac256_update($61,0,0); + $68 = $0; + $69 = ((($68)) + 41|0); + dest=$69; stop=dest+56|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); + } + } while(0); + $70 = $msb; + $71 = $70 >>> 24; + $72 = $71&255; + $73 = $0; + $74 = ((($73)) + 41|0); + $75 = ((($74)) + 56|0); + HEAP8[$75>>0] = $72; + $76 = $msb; + $77 = $76 >>> 16; + $78 = $77&255; + $79 = $0; + $80 = ((($79)) + 41|0); + $81 = ((($80)) + 57|0); + HEAP8[$81>>0] = $78; + $82 = $msb; + $83 = $82 >>> 8; + $84 = $83&255; + $85 = $0; + $86 = ((($85)) + 41|0); + $87 = ((($86)) + 58|0); + HEAP8[$87>>0] = $84; + $88 = $msb; + $89 = $88&255; + $90 = $0; + $91 = ((($90)) + 41|0); + $92 = ((($91)) + 59|0); + HEAP8[$92>>0] = $89; + $93 = $lsb; + $94 = $93 >>> 24; + $95 = $94&255; + $96 = $0; + $97 = ((($96)) + 41|0); + $98 = ((($97)) + 60|0); + HEAP8[$98>>0] = $95; + $99 = $lsb; + $100 = $99 >>> 16; + $101 = $100&255; + $102 = $0; + $103 = ((($102)) + 41|0); + $104 = ((($103)) + 61|0); + HEAP8[$104>>0] = $101; + $105 = $lsb; + $106 = $105 >>> 8; + $107 = $106&255; + $108 = $0; + $109 = ((($108)) + 41|0); + $110 = ((($109)) + 62|0); + HEAP8[$110>>0] = $107; + $111 = $lsb; + $112 = $111&255; + $113 = $0; + $114 = ((($113)) + 41|0); + $115 = ((($114)) + 63|0); + HEAP8[$115>>0] = $112; + $116 = $0; + $117 = $0; + $118 = ((($117)) + 41|0); + _transform_1792($116,$118); + $119 = $0; + $120 = ((($119)) + 41|0); + $p = $120; + $121 = $0; + $122 = HEAP32[$121>>2]|0; + $123 = $122 >>> 24; + $124 = $123&255; + $125 = $p; + $126 = ((($125)) + 1|0); + $p = $126; + HEAP8[$125>>0] = $124; + $127 = $0; + $128 = HEAP32[$127>>2]|0; + $129 = $128 >>> 16; + $130 = $129&255; + $131 = $p; + $132 = ((($131)) + 1|0); + $p = $132; + HEAP8[$131>>0] = $130; + $133 = $0; + $134 = HEAP32[$133>>2]|0; + $135 = $134 >>> 8; + $136 = $135&255; + $137 = $p; + $138 = ((($137)) + 1|0); + $p = $138; + HEAP8[$137>>0] = $136; + $139 = $0; + $140 = HEAP32[$139>>2]|0; + $141 = $140&255; + $142 = $p; + $143 = ((($142)) + 1|0); + $p = $143; + HEAP8[$142>>0] = $141; + $144 = $0; + $145 = ((($144)) + 4|0); + $146 = HEAP32[$145>>2]|0; + $147 = $146 >>> 24; + $148 = $147&255; + $149 = $p; + $150 = ((($149)) + 1|0); + $p = $150; + HEAP8[$149>>0] = $148; + $151 = $0; + $152 = ((($151)) + 4|0); + $153 = HEAP32[$152>>2]|0; + $154 = $153 >>> 16; + $155 = $154&255; + $156 = $p; + $157 = ((($156)) + 1|0); + $p = $157; + HEAP8[$156>>0] = $155; + $158 = $0; + $159 = ((($158)) + 4|0); + $160 = HEAP32[$159>>2]|0; + $161 = $160 >>> 8; + $162 = $161&255; + $163 = $p; + $164 = ((($163)) + 1|0); + $p = $164; + HEAP8[$163>>0] = $162; + $165 = $0; + $166 = ((($165)) + 4|0); + $167 = HEAP32[$166>>2]|0; + $168 = $167&255; + $169 = $p; + $170 = ((($169)) + 1|0); + $p = $170; + HEAP8[$169>>0] = $168; + $171 = $0; + $172 = ((($171)) + 8|0); + $173 = HEAP32[$172>>2]|0; + $174 = $173 >>> 24; + $175 = $174&255; + $176 = $p; + $177 = ((($176)) + 1|0); + $p = $177; + HEAP8[$176>>0] = $175; + $178 = $0; + $179 = ((($178)) + 8|0); + $180 = HEAP32[$179>>2]|0; + $181 = $180 >>> 16; + $182 = $181&255; + $183 = $p; + $184 = ((($183)) + 1|0); + $p = $184; + HEAP8[$183>>0] = $182; + $185 = $0; + $186 = ((($185)) + 8|0); + $187 = HEAP32[$186>>2]|0; + $188 = $187 >>> 8; + $189 = $188&255; + $190 = $p; + $191 = ((($190)) + 1|0); + $p = $191; + HEAP8[$190>>0] = $189; + $192 = $0; + $193 = ((($192)) + 8|0); + $194 = HEAP32[$193>>2]|0; + $195 = $194&255; + $196 = $p; + $197 = ((($196)) + 1|0); + $p = $197; + HEAP8[$196>>0] = $195; + $198 = $0; + $199 = ((($198)) + 12|0); + $200 = HEAP32[$199>>2]|0; + $201 = $200 >>> 24; + $202 = $201&255; + $203 = $p; + $204 = ((($203)) + 1|0); + $p = $204; + HEAP8[$203>>0] = $202; + $205 = $0; + $206 = ((($205)) + 12|0); + $207 = HEAP32[$206>>2]|0; + $208 = $207 >>> 16; + $209 = $208&255; + $210 = $p; + $211 = ((($210)) + 1|0); + $p = $211; + HEAP8[$210>>0] = $209; + $212 = $0; + $213 = ((($212)) + 12|0); + $214 = HEAP32[$213>>2]|0; + $215 = $214 >>> 8; + $216 = $215&255; + $217 = $p; + $218 = ((($217)) + 1|0); + $p = $218; + HEAP8[$217>>0] = $216; + $219 = $0; + $220 = ((($219)) + 12|0); + $221 = HEAP32[$220>>2]|0; + $222 = $221&255; + $223 = $p; + $224 = ((($223)) + 1|0); + $p = $224; + HEAP8[$223>>0] = $222; + $225 = $0; + $226 = ((($225)) + 16|0); + $227 = HEAP32[$226>>2]|0; + $228 = $227 >>> 24; + $229 = $228&255; + $230 = $p; + $231 = ((($230)) + 1|0); + $p = $231; + HEAP8[$230>>0] = $229; + $232 = $0; + $233 = ((($232)) + 16|0); + $234 = HEAP32[$233>>2]|0; + $235 = $234 >>> 16; + $236 = $235&255; + $237 = $p; + $238 = ((($237)) + 1|0); + $p = $238; + HEAP8[$237>>0] = $236; + $239 = $0; + $240 = ((($239)) + 16|0); + $241 = HEAP32[$240>>2]|0; + $242 = $241 >>> 8; + $243 = $242&255; + $244 = $p; + $245 = ((($244)) + 1|0); + $p = $245; + HEAP8[$244>>0] = $243; + $246 = $0; + $247 = ((($246)) + 16|0); + $248 = HEAP32[$247>>2]|0; + $249 = $248&255; + $250 = $p; + $251 = ((($250)) + 1|0); + $p = $251; + HEAP8[$250>>0] = $249; + $252 = $0; + $253 = ((($252)) + 20|0); + $254 = HEAP32[$253>>2]|0; + $255 = $254 >>> 24; + $256 = $255&255; + $257 = $p; + $258 = ((($257)) + 1|0); + $p = $258; + HEAP8[$257>>0] = $256; + $259 = $0; + $260 = ((($259)) + 20|0); + $261 = HEAP32[$260>>2]|0; + $262 = $261 >>> 16; + $263 = $262&255; + $264 = $p; + $265 = ((($264)) + 1|0); + $p = $265; + HEAP8[$264>>0] = $263; + $266 = $0; + $267 = ((($266)) + 20|0); + $268 = HEAP32[$267>>2]|0; + $269 = $268 >>> 8; + $270 = $269&255; + $271 = $p; + $272 = ((($271)) + 1|0); + $p = $272; + HEAP8[$271>>0] = $270; + $273 = $0; + $274 = ((($273)) + 20|0); + $275 = HEAP32[$274>>2]|0; + $276 = $275&255; + $277 = $p; + $278 = ((($277)) + 1|0); + $p = $278; + HEAP8[$277>>0] = $276; + $279 = $0; + $280 = ((($279)) + 24|0); + $281 = HEAP32[$280>>2]|0; + $282 = $281 >>> 24; + $283 = $282&255; + $284 = $p; + $285 = ((($284)) + 1|0); + $p = $285; + HEAP8[$284>>0] = $283; + $286 = $0; + $287 = ((($286)) + 24|0); + $288 = HEAP32[$287>>2]|0; + $289 = $288 >>> 16; + $290 = $289&255; + $291 = $p; + $292 = ((($291)) + 1|0); + $p = $292; + HEAP8[$291>>0] = $290; + $293 = $0; + $294 = ((($293)) + 24|0); + $295 = HEAP32[$294>>2]|0; + $296 = $295 >>> 8; + $297 = $296&255; + $298 = $p; + $299 = ((($298)) + 1|0); + $p = $299; + HEAP8[$298>>0] = $297; + $300 = $0; + $301 = ((($300)) + 24|0); + $302 = HEAP32[$301>>2]|0; + $303 = $302&255; + $304 = $p; + $305 = ((($304)) + 1|0); + $p = $305; + HEAP8[$304>>0] = $303; + $306 = $0; + $307 = ((($306)) + 28|0); + $308 = HEAP32[$307>>2]|0; + $309 = $308 >>> 24; + $310 = $309&255; + $311 = $p; + $312 = ((($311)) + 1|0); + $p = $312; + HEAP8[$311>>0] = $310; + $313 = $0; + $314 = ((($313)) + 28|0); + $315 = HEAP32[$314>>2]|0; + $316 = $315 >>> 16; + $317 = $316&255; + $318 = $p; + $319 = ((($318)) + 1|0); + $p = $319; + HEAP8[$318>>0] = $317; + $320 = $0; + $321 = ((($320)) + 28|0); + $322 = HEAP32[$321>>2]|0; + $323 = $322 >>> 8; + $324 = $323&255; + $325 = $p; + $326 = ((($325)) + 1|0); + $p = $326; + HEAP8[$325>>0] = $324; + $327 = $0; + $328 = ((($327)) + 28|0); + $329 = HEAP32[$328>>2]|0; + $330 = $329&255; + $331 = $p; + $332 = ((($331)) + 1|0); + $p = $332; + HEAP8[$331>>0] = $330; + $333 = $0; + $334 = ((($333)) + 40|0); + $335 = HEAP8[$334>>0]|0; + $336 = $335 & -2; + $337 = $336 | 1; + HEAP8[$334>>0] = $337; + STACKTOP = sp;return; +} +function __gcry_hmac256_release($ctx) { + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $_vlen = 0, $_vptr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $1 = $0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = $0; + $4 = ((($3)) + 40|0); + $5 = HEAP8[$4>>0]|0; + $6 = ($5 << 6)&255; + $7 = ($6<<24>>24) >> 7; + $8 = $7 << 24 >> 24; + $9 = ($8|0)!=(0); + L4: do { + if ($9) { + $10 = $0; + $11 = ((($10)) + 105|0); + $_vptr = $11; + $_vlen = 64; + while(1) { + $12 = $_vlen; + $13 = ($12|0)!=(0); + if (!($13)) { + break L4; + } + $14 = $_vptr; + HEAP8[$14>>0] = 0; + $15 = $_vptr; + $16 = ((($15)) + 1|0); + $_vptr = $16; + $17 = $_vlen; + $18 = (($17) + -1)|0; + $_vlen = $18; + } + } + } while(0); + $19 = $0; + _free($19); + STACKTOP = sp;return; +} +function __gcry_hmac256_finalize($hd,$r_dlen) { + $hd = $hd|0; + $r_dlen = $r_dlen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $tmphd = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $hd; + $2 = $r_dlen; + $3 = $1; + _finalize($3); + $4 = $1; + $5 = ((($4)) + 40|0); + $6 = HEAP8[$5>>0]|0; + $7 = ($6 << 6)&255; + $8 = ($7<<24>>24) >> 7; + $9 = $8 << 24 >> 24; + $10 = ($9|0)!=(0); + do { + if ($10) { + $11 = (__gcry_hmac256_new(0,0)|0); + $tmphd = $11; + $12 = $tmphd; + $13 = ($12|0)!=(0|0); + if ($13) { + $15 = $tmphd; + $16 = $1; + $17 = ((($16)) + 105|0); + __gcry_hmac256_update($15,$17,64); + $18 = $tmphd; + $19 = $1; + $20 = ((($19)) + 41|0); + __gcry_hmac256_update($18,$20,32); + $21 = $tmphd; + _finalize($21); + $22 = $1; + $23 = ((($22)) + 41|0); + $24 = $tmphd; + $25 = ((($24)) + 41|0); + dest=$23; src=$25; stop=dest+32|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $26 = $tmphd; + __gcry_hmac256_release($26); + break; + } + $14 = $1; + _free($14); + $0 = 0; + $32 = $0; + STACKTOP = sp;return ($32|0); + } + } while(0); + $27 = $2; + $28 = ($27|0)!=(0|0); + if ($28) { + $29 = $2; + HEAP32[$29>>2] = 32; + } + $30 = $1; + $31 = ((($30)) + 41|0); + $0 = $31; + $32 = $0; + STACKTOP = sp;return ($32|0); +} +function __gcry_cipher_aeswrap_encrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $a = 0; + var $b = 0, $burn = 0, $i = 0, $j = 0, $n = 0, $nburn = 0, $r = 0, $t = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $t = sp + 64|0; + $1 = $c; + $2 = $outbuf; + $3 = $outbuflen; + $4 = $inbuf; + $5 = $inbuflen; + $6 = $1; + $7 = ((($6)) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = ((($8)) + 20|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(16); + if ($11) { + $0 = 139; + $98 = $0; + STACKTOP = sp;return ($98|0); + } + $12 = $3; + $13 = $5; + $14 = (($13) + 8)|0; + $15 = ($12>>>0)<($14>>>0); + if ($15) { + $0 = 200; + $98 = $0; + STACKTOP = sp;return ($98|0); + } + $16 = $5; + $17 = (($16>>>0) % 8)&-1; + $18 = ($17|0)!=(0); + if ($18) { + $0 = 45; + $98 = $0; + STACKTOP = sp;return ($98|0); + } + $19 = $5; + $20 = (($19>>>0) / 8)&-1; + $n = $20; + $21 = $n; + $22 = ($21>>>0)<(2); + if ($22) { + $0 = 45; + $98 = $0; + STACKTOP = sp;return ($98|0); + } + $burn = 0; + $23 = $2; + $r = $23; + $24 = $2; + $a = $24; + $25 = $1; + $26 = ((($25)) + 80|0); + $b = $26; + $27 = $1; + $28 = ((($27)) + 56|0); + $29 = HEAP8[$28>>0]|0; + $30 = ($29&255) >>> 1; + $31 = $30 & 1; + $32 = $31&255; + $33 = ($32|0)!=(0); + $34 = $a; + if ($33) { + $35 = $1; + $36 = ((($35)) + 64|0); + ;HEAP8[$34>>0]=HEAP8[$36>>0]|0;HEAP8[$34+1>>0]=HEAP8[$36+1>>0]|0;HEAP8[$34+2>>0]=HEAP8[$36+2>>0]|0;HEAP8[$34+3>>0]=HEAP8[$36+3>>0]|0;HEAP8[$34+4>>0]=HEAP8[$36+4>>0]|0;HEAP8[$34+5>>0]=HEAP8[$36+5>>0]|0;HEAP8[$34+6>>0]=HEAP8[$36+6>>0]|0;HEAP8[$34+7>>0]=HEAP8[$36+7>>0]|0; + } else { + ;HEAP8[$34>>0]=166|0;HEAP8[$34+1>>0]=166|0;HEAP8[$34+2>>0]=166|0;HEAP8[$34+3>>0]=166|0;HEAP8[$34+4>>0]=166|0;HEAP8[$34+5>>0]=166|0;HEAP8[$34+6>>0]=166|0;HEAP8[$34+7>>0]=166|0; + } + $37 = $r; + $38 = ((($37)) + 8|0); + $39 = $4; + $40 = $5; + _memmove(($38|0),($39|0),($40|0))|0; + ;HEAP8[$t>>0]=0|0;HEAP8[$t+1>>0]=0|0;HEAP8[$t+2>>0]=0|0;HEAP8[$t+3>>0]=0|0;HEAP8[$t+4>>0]=0|0;HEAP8[$t+5>>0]=0|0;HEAP8[$t+6>>0]=0|0;HEAP8[$t+7>>0]=0|0; + $j = 0; + while(1) { + $41 = $j; + $42 = ($41|0)<=(5); + if (!($42)) { + break; + } + $i = 1; + while(1) { + $43 = $i; + $44 = $n; + $45 = ($43>>>0)<=($44>>>0); + if (!($45)) { + break; + } + $46 = $b; + $47 = $a; + ;HEAP8[$46>>0]=HEAP8[$47>>0]|0;HEAP8[$46+1>>0]=HEAP8[$47+1>>0]|0;HEAP8[$46+2>>0]=HEAP8[$47+2>>0]|0;HEAP8[$46+3>>0]=HEAP8[$47+3>>0]|0;HEAP8[$46+4>>0]=HEAP8[$47+4>>0]|0;HEAP8[$46+5>>0]=HEAP8[$47+5>>0]|0;HEAP8[$46+6>>0]=HEAP8[$47+6>>0]|0;HEAP8[$46+7>>0]=HEAP8[$47+7>>0]|0; + $48 = $b; + $49 = ((($48)) + 8|0); + $50 = $r; + $51 = $i; + $52 = $51<<3; + $53 = (($50) + ($52)|0); + ;HEAP8[$49>>0]=HEAP8[$53>>0]|0;HEAP8[$49+1>>0]=HEAP8[$53+1>>0]|0;HEAP8[$49+2>>0]=HEAP8[$53+2>>0]|0;HEAP8[$49+3>>0]=HEAP8[$53+3>>0]|0;HEAP8[$49+4>>0]=HEAP8[$53+4>>0]|0;HEAP8[$49+5>>0]=HEAP8[$53+5>>0]|0;HEAP8[$49+6>>0]=HEAP8[$53+6>>0]|0;HEAP8[$49+7>>0]=HEAP8[$53+7>>0]|0; + $54 = $1; + $55 = ((($54)) + 12|0); + $56 = HEAP32[$55>>2]|0; + $57 = ((($56)) + 36|0); + $58 = HEAP32[$57>>2]|0; + $59 = $1; + $60 = ((($59)) + 496|0); + $61 = $b; + $62 = $b; + $63 = (FUNCTION_TABLE_iiii[$58 & 127]($60,$61,$62)|0); + $nburn = $63; + $64 = $nburn; + $65 = $burn; + $66 = ($64>>>0)>($65>>>0); + $67 = $nburn; + $68 = $burn; + $69 = $66 ? $67 : $68; + $burn = $69; + $x = 7; + while(1) { + $70 = $x; + $71 = ($70|0)>=(0); + if (!($71)) { + break; + } + $72 = $x; + $73 = (($t) + ($72)|0); + $74 = HEAP8[$73>>0]|0; + $75 = (($74) + 1)<<24>>24; + HEAP8[$73>>0] = $75; + $76 = $x; + $77 = (($t) + ($76)|0); + $78 = HEAP8[$77>>0]|0; + $79 = ($78<<24>>24)!=(0); + if ($79) { + break; + } + $80 = $x; + $81 = (($80) + -1)|0; + $x = $81; + } + $82 = $a; + $83 = $b; + _buf_xor_1801($82,$83,$t,8); + $84 = $r; + $85 = $i; + $86 = $85<<3; + $87 = (($84) + ($86)|0); + $88 = $b; + $89 = ((($88)) + 8|0); + ;HEAP8[$87>>0]=HEAP8[$89>>0]|0;HEAP8[$87+1>>0]=HEAP8[$89+1>>0]|0;HEAP8[$87+2>>0]=HEAP8[$89+2>>0]|0;HEAP8[$87+3>>0]=HEAP8[$89+3>>0]|0;HEAP8[$87+4>>0]=HEAP8[$89+4>>0]|0;HEAP8[$87+5>>0]=HEAP8[$89+5>>0]|0;HEAP8[$87+6>>0]=HEAP8[$89+6>>0]|0;HEAP8[$87+7>>0]=HEAP8[$89+7>>0]|0; + $90 = $i; + $91 = (($90) + 1)|0; + $i = $91; + } + $92 = $j; + $93 = (($92) + 1)|0; + $j = $93; + } + $94 = $burn; + $95 = ($94>>>0)>(0); + if ($95) { + $96 = $burn; + $97 = (($96) + 16)|0; + ___gcry_burn_stack($97); + ___gcry_burn_stack_dummy(); + } + $0 = 0; + $98 = $0; + STACKTOP = sp;return ($98|0); +} +function _buf_xor_1801($_dst,$_src1,$_src2,$len) { + $_dst = $_dst|0; + $_src1 = $_src1|0; + $_src2 = $_src2|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst = 0, $ldst = 0, $longmask = 0, $lsrc1 = 0, $lsrc2 = 0, $src1 = 0, $src2 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst; + $1 = $_src1; + $2 = $_src2; + $3 = $len; + $4 = $0; + $dst = $4; + $5 = $1; + $src1 = $5; + $6 = $2; + $src2 = $6; + $longmask = 3; + $7 = $dst; + $8 = $7; + $9 = $src1; + $10 = $9; + $11 = $8 | $10; + $12 = $src2; + $13 = $12; + $14 = $11 | $13; + $15 = $14 & 3; + $16 = ($15|0)!=(0); + if (!($16)) { + $17 = $dst; + $ldst = $17; + $18 = $src1; + $lsrc1 = $18; + $19 = $src2; + $lsrc2 = $19; + while(1) { + $20 = $3; + $21 = ($20>>>0)>=(4); + if (!($21)) { + break; + } + $22 = $lsrc1; + $23 = ((($22)) + 4|0); + $lsrc1 = $23; + $24 = HEAP32[$22>>2]|0; + $25 = $lsrc2; + $26 = ((($25)) + 4|0); + $lsrc2 = $26; + $27 = HEAP32[$25>>2]|0; + $28 = $24 ^ $27; + $29 = $ldst; + $30 = ((($29)) + 4|0); + $ldst = $30; + HEAP32[$29>>2] = $28; + $31 = $3; + $32 = (($31) - 4)|0; + $3 = $32; + } + $33 = $ldst; + $dst = $33; + $34 = $lsrc1; + $src1 = $34; + $35 = $lsrc2; + $src2 = $35; + } + while(1) { + $36 = $3; + $37 = ($36|0)!=(0); + if (!($37)) { + break; + } + $38 = $src1; + $39 = ((($38)) + 1|0); + $src1 = $39; + $40 = HEAP8[$38>>0]|0; + $41 = $40&255; + $42 = $src2; + $43 = ((($42)) + 1|0); + $src2 = $43; + $44 = HEAP8[$42>>0]|0; + $45 = $44&255; + $46 = $41 ^ $45; + $47 = $46&255; + $48 = $dst; + $49 = ((($48)) + 1|0); + $dst = $49; + HEAP8[$48>>0] = $47; + $50 = $3; + $51 = (($50) + -1)|0; + $3 = $51; + } + STACKTOP = sp;return; +} +function __gcry_cipher_aeswrap_decrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $a = 0, $b = 0, $burn = 0, $i = 0, $j = 0, $n = 0, $nburn = 0, $r = 0, $t = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $t = sp + 64|0; + $1 = $c; + $2 = $outbuf; + $3 = $outbuflen; + $4 = $inbuf; + $5 = $inbuflen; + $6 = $1; + $7 = ((($6)) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = ((($8)) + 20|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(16); + if ($11) { + $0 = 139; + $145 = $0; + STACKTOP = sp;return ($145|0); + } + $12 = $3; + $13 = (($12) + 8)|0; + $14 = $5; + $15 = ($13>>>0)<($14>>>0); + if ($15) { + $0 = 200; + $145 = $0; + STACKTOP = sp;return ($145|0); + } + $16 = $5; + $17 = (($16>>>0) % 8)&-1; + $18 = ($17|0)!=(0); + if ($18) { + $0 = 45; + $145 = $0; + STACKTOP = sp;return ($145|0); + } + $19 = $5; + $20 = (($19>>>0) / 8)&-1; + $n = $20; + $21 = $n; + $22 = ($21>>>0)<(3); + if ($22) { + $0 = 45; + $145 = $0; + STACKTOP = sp;return ($145|0); + } + $burn = 0; + $23 = $2; + $r = $23; + $24 = $1; + $25 = ((($24)) + 96|0); + $a = $25; + $26 = $1; + $27 = ((($26)) + 80|0); + $b = $27; + $28 = $a; + $29 = $4; + ;HEAP8[$28>>0]=HEAP8[$29>>0]|0;HEAP8[$28+1>>0]=HEAP8[$29+1>>0]|0;HEAP8[$28+2>>0]=HEAP8[$29+2>>0]|0;HEAP8[$28+3>>0]=HEAP8[$29+3>>0]|0;HEAP8[$28+4>>0]=HEAP8[$29+4>>0]|0;HEAP8[$28+5>>0]=HEAP8[$29+5>>0]|0;HEAP8[$28+6>>0]=HEAP8[$29+6>>0]|0;HEAP8[$28+7>>0]=HEAP8[$29+7>>0]|0; + $30 = $r; + $31 = $4; + $32 = ((($31)) + 8|0); + $33 = $5; + $34 = (($33) - 8)|0; + _memmove(($30|0),($32|0),($34|0))|0; + $35 = $n; + $36 = (($35) + -1)|0; + $n = $36; + $37 = $n; + $38 = ($37*6)|0; + $i = $38; + $x = 0; + while(1) { + $39 = $x; + $40 = ($39|0)<(8); + $41 = $x; + $42 = ($41>>>0)<(4); + $43 = $40 ? $42 : 0; + if (!($43)) { + break; + } + $44 = $i; + $45 = $x; + $46 = $45<<3; + $47 = $44 >>> $46; + $48 = $47&255; + $49 = $x; + $50 = (7 - ($49))|0; + $51 = (($t) + ($50)|0); + HEAP8[$51>>0] = $48; + $52 = $x; + $53 = (($52) + 1)|0; + $x = $53; + } + while(1) { + $54 = $x; + $55 = ($54|0)<(8); + if (!($55)) { + break; + } + $56 = $x; + $57 = (7 - ($56))|0; + $58 = (($t) + ($57)|0); + HEAP8[$58>>0] = 0; + $59 = $x; + $60 = (($59) + 1)|0; + $x = $60; + } + $j = 5; + while(1) { + $61 = $j; + $62 = ($61|0)>=(0); + if (!($62)) { + break; + } + $63 = $n; + $i = $63; + while(1) { + $64 = $i; + $65 = ($64>>>0)>=(1); + if (!($65)) { + break; + } + $66 = $b; + $67 = $a; + _buf_xor_1801($66,$67,$t,8); + $68 = $b; + $69 = ((($68)) + 8|0); + $70 = $r; + $71 = $i; + $72 = (($71) - 1)|0; + $73 = $72<<3; + $74 = (($70) + ($73)|0); + ;HEAP8[$69>>0]=HEAP8[$74>>0]|0;HEAP8[$69+1>>0]=HEAP8[$74+1>>0]|0;HEAP8[$69+2>>0]=HEAP8[$74+2>>0]|0;HEAP8[$69+3>>0]=HEAP8[$74+3>>0]|0;HEAP8[$69+4>>0]=HEAP8[$74+4>>0]|0;HEAP8[$69+5>>0]=HEAP8[$74+5>>0]|0;HEAP8[$69+6>>0]=HEAP8[$74+6>>0]|0;HEAP8[$69+7>>0]=HEAP8[$74+7>>0]|0; + $75 = $1; + $76 = ((($75)) + 12|0); + $77 = HEAP32[$76>>2]|0; + $78 = ((($77)) + 40|0); + $79 = HEAP32[$78>>2]|0; + $80 = $1; + $81 = ((($80)) + 496|0); + $82 = $b; + $83 = $b; + $84 = (FUNCTION_TABLE_iiii[$79 & 127]($81,$82,$83)|0); + $nburn = $84; + $85 = $nburn; + $86 = $burn; + $87 = ($85>>>0)>($86>>>0); + $88 = $nburn; + $89 = $burn; + $90 = $87 ? $88 : $89; + $burn = $90; + $x = 7; + while(1) { + $91 = $x; + $92 = ($91|0)>=(0); + if (!($92)) { + break; + } + $93 = $x; + $94 = (($t) + ($93)|0); + $95 = HEAP8[$94>>0]|0; + $96 = (($95) + -1)<<24>>24; + HEAP8[$94>>0] = $96; + $97 = $x; + $98 = (($t) + ($97)|0); + $99 = HEAP8[$98>>0]|0; + $100 = $99&255; + $101 = ($100|0)!=(255); + if ($101) { + break; + } + $102 = $x; + $103 = (($102) + -1)|0; + $x = $103; + } + $104 = $a; + $105 = $b; + ;HEAP8[$104>>0]=HEAP8[$105>>0]|0;HEAP8[$104+1>>0]=HEAP8[$105+1>>0]|0;HEAP8[$104+2>>0]=HEAP8[$105+2>>0]|0;HEAP8[$104+3>>0]=HEAP8[$105+3>>0]|0;HEAP8[$104+4>>0]=HEAP8[$105+4>>0]|0;HEAP8[$104+5>>0]=HEAP8[$105+5>>0]|0;HEAP8[$104+6>>0]=HEAP8[$105+6>>0]|0;HEAP8[$104+7>>0]=HEAP8[$105+7>>0]|0; + $106 = $r; + $107 = $i; + $108 = (($107) - 1)|0; + $109 = $108<<3; + $110 = (($106) + ($109)|0); + $111 = $b; + $112 = ((($111)) + 8|0); + ;HEAP8[$110>>0]=HEAP8[$112>>0]|0;HEAP8[$110+1>>0]=HEAP8[$112+1>>0]|0;HEAP8[$110+2>>0]=HEAP8[$112+2>>0]|0;HEAP8[$110+3>>0]=HEAP8[$112+3>>0]|0;HEAP8[$110+4>>0]=HEAP8[$112+4>>0]|0;HEAP8[$110+5>>0]=HEAP8[$112+5>>0]|0;HEAP8[$110+6>>0]=HEAP8[$112+6>>0]|0;HEAP8[$110+7>>0]=HEAP8[$112+7>>0]|0; + $113 = $i; + $114 = (($113) + -1)|0; + $i = $114; + } + $115 = $j; + $116 = (($115) + -1)|0; + $j = $116; + } + $117 = $1; + $118 = ((($117)) + 56|0); + $119 = HEAP8[$118>>0]|0; + $120 = ($119&255) >>> 1; + $121 = $120 & 1; + $122 = $121&255; + $123 = ($122|0)!=(0); + L37: do { + if ($123) { + $124 = $a; + $125 = $1; + $126 = ((($125)) + 64|0); + $127 = (_memcmp($124,$126,8)|0); + $j = $127; + } else { + $j = 0; + $x = 0; + while(1) { + $128 = $x; + $129 = ($128|0)<(8); + if (!($129)) { + break L37; + } + $130 = $x; + $131 = $a; + $132 = (($131) + ($130)|0); + $133 = HEAP8[$132>>0]|0; + $134 = $133&255; + $135 = ($134|0)!=(166); + if ($135) { + break; + } + $136 = $x; + $137 = (($136) + 1)|0; + $x = $137; + } + $j = 1; + } + } while(0); + $138 = $burn; + $139 = ($138>>>0)>(0); + if ($139) { + $140 = $burn; + $141 = (($140) + 16)|0; + ___gcry_burn_stack($141); + ___gcry_burn_stack_dummy(); + } + $142 = $j; + $143 = ($142|0)!=(0); + $144 = $143 ? 10 : 0; + $0 = $144; + $145 = $0; + STACKTOP = sp;return ($145|0); +} +function __gcry_cipher_cbc_encrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $b = 0, $blocksize = 0; + var $burn = 0, $enc_fn = 0, $i = 0, $ivp = 0, $n = 0, $nblocks = 0, $nburn = 0, $restbytes = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $c; + $2 = $outbuf; + $3 = $outbuflen; + $4 = $inbuf; + $5 = $inbuflen; + $6 = $1; + $7 = ((($6)) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = ((($8)) + 20|0); + $10 = HEAP32[$9>>2]|0; + $blocksize = $10; + $11 = $1; + $12 = ((($11)) + 12|0); + $13 = HEAP32[$12>>2]|0; + $14 = ((($13)) + 36|0); + $15 = HEAP32[$14>>2]|0; + $enc_fn = $15; + $16 = $5; + $17 = $blocksize; + $18 = (($16>>>0) / ($17>>>0))&-1; + $nblocks = $18; + $19 = $3; + $20 = $1; + $21 = ((($20)) + 52|0); + $22 = HEAP32[$21>>2]|0; + $23 = $22 & 8; + $24 = ($23|0)!=(0); + $25 = $blocksize; + $26 = $5; + $27 = $24 ? $25 : $26; + $28 = ($19>>>0)<($27>>>0); + if ($28) { + $0 = 200; + $217 = $0; + STACKTOP = sp;return ($217|0); + } + $29 = $5; + $30 = $blocksize; + $31 = (($29>>>0) % ($30>>>0))&-1; + $32 = ($31|0)!=(0); + do { + if ($32) { + $33 = $5; + $34 = $blocksize; + $35 = ($33>>>0)>($34>>>0); + if ($35) { + $36 = $1; + $37 = ((($36)) + 52|0); + $38 = HEAP32[$37>>2]|0; + $39 = $38 & 4; + $40 = ($39|0)!=(0); + if ($40) { + break; + } + } + $0 = 139; + $217 = $0; + STACKTOP = sp;return ($217|0); + } + } while(0); + $burn = 0; + $41 = $1; + $42 = ((($41)) + 52|0); + $43 = HEAP32[$42>>2]|0; + $44 = $43 & 4; + $45 = ($44|0)!=(0); + if ($45) { + $46 = $5; + $47 = $blocksize; + $48 = ($46>>>0)>($47>>>0); + if ($48) { + $49 = $5; + $50 = $blocksize; + $51 = (($49>>>0) % ($50>>>0))&-1; + $52 = ($51|0)==(0); + if ($52) { + $53 = $nblocks; + $54 = (($53) + -1)|0; + $nblocks = $54; + } + } + } + $55 = $1; + $56 = ((($55)) + 20|0); + $57 = ((($56)) + 8|0); + $58 = HEAP32[$57>>2]|0; + $59 = ($58|0)!=(0|0); + $60 = $1; + if ($59) { + $61 = ((($60)) + 20|0); + $62 = ((($61)) + 8|0); + $63 = HEAP32[$62>>2]|0; + $64 = $1; + $65 = ((($64)) + 496|0); + $66 = $1; + $67 = ((($66)) + 64|0); + $68 = $2; + $69 = $4; + $70 = $nblocks; + $71 = $1; + $72 = ((($71)) + 52|0); + $73 = HEAP32[$72>>2]|0; + $74 = $73 & 8; + FUNCTION_TABLE_viiiiii[$63 & 63]($65,$67,$68,$69,$70,$74); + $75 = $nblocks; + $76 = $blocksize; + $77 = Math_imul($75, $76)|0; + $78 = $4; + $79 = (($78) + ($77)|0); + $4 = $79; + $80 = $1; + $81 = ((($80)) + 52|0); + $82 = HEAP32[$81>>2]|0; + $83 = $82 & 8; + $84 = ($83|0)!=(0); + if (!($84)) { + $85 = $nblocks; + $86 = $blocksize; + $87 = Math_imul($85, $86)|0; + $88 = $2; + $89 = (($88) + ($87)|0); + $2 = $89; + } + } else { + $90 = ((($60)) + 64|0); + $ivp = $90; + $n = 0; + while(1) { + $91 = $n; + $92 = $nblocks; + $93 = ($91>>>0)<($92>>>0); + if (!($93)) { + break; + } + $94 = $2; + $95 = $4; + $96 = $ivp; + $97 = $blocksize; + _buf_xor_1806($94,$95,$96,$97); + $98 = $enc_fn; + $99 = $1; + $100 = ((($99)) + 496|0); + $101 = $2; + $102 = $2; + $103 = (FUNCTION_TABLE_iiii[$98 & 127]($100,$101,$102)|0); + $nburn = $103; + $104 = $nburn; + $105 = $burn; + $106 = ($104>>>0)>($105>>>0); + $107 = $nburn; + $108 = $burn; + $109 = $106 ? $107 : $108; + $burn = $109; + $110 = $2; + $ivp = $110; + $111 = $blocksize; + $112 = $4; + $113 = (($112) + ($111)|0); + $4 = $113; + $114 = $1; + $115 = ((($114)) + 52|0); + $116 = HEAP32[$115>>2]|0; + $117 = $116 & 8; + $118 = ($117|0)!=(0); + if (!($118)) { + $119 = $blocksize; + $120 = $2; + $121 = (($120) + ($119)|0); + $2 = $121; + } + $122 = $n; + $123 = (($122) + 1)|0; + $n = $123; + } + $124 = $ivp; + $125 = $1; + $126 = ((($125)) + 64|0); + $127 = ($124|0)!=($126|0); + if ($127) { + $128 = $1; + $129 = ((($128)) + 64|0); + $130 = $ivp; + $131 = $blocksize; + _buf_cpy_1807($129,$130,$131); + } + } + $132 = $1; + $133 = ((($132)) + 52|0); + $134 = HEAP32[$133>>2]|0; + $135 = $134 & 4; + $136 = ($135|0)!=(0); + if ($136) { + $137 = $5; + $138 = $blocksize; + $139 = ($137>>>0)>($138>>>0); + if ($139) { + $140 = $5; + $141 = $blocksize; + $142 = (($140>>>0) % ($141>>>0))&-1; + $143 = ($142|0)==(0); + if ($143) { + $144 = $blocksize; + $restbytes = $144; + } else { + $145 = $5; + $146 = $blocksize; + $147 = (($145>>>0) % ($146>>>0))&-1; + $restbytes = $147; + } + $148 = $blocksize; + $149 = $2; + $150 = (0 - ($148))|0; + $151 = (($149) + ($150)|0); + $2 = $151; + $152 = $1; + $153 = ((($152)) + 64|0); + $ivp = $153; + $i = 0; + while(1) { + $154 = $i; + $155 = $restbytes; + $156 = ($154>>>0)<($155>>>0); + if (!($156)) { + break; + } + $157 = $i; + $158 = $4; + $159 = (($158) + ($157)|0); + $160 = HEAP8[$159>>0]|0; + $b = $160; + $161 = $i; + $162 = $2; + $163 = (($162) + ($161)|0); + $164 = HEAP8[$163>>0]|0; + $165 = $blocksize; + $166 = $i; + $167 = (($165) + ($166))|0; + $168 = $2; + $169 = (($168) + ($167)|0); + HEAP8[$169>>0] = $164; + $170 = $b; + $171 = $170&255; + $172 = $ivp; + $173 = ((($172)) + 1|0); + $ivp = $173; + $174 = HEAP8[$172>>0]|0; + $175 = $174&255; + $176 = $171 ^ $175; + $177 = $176&255; + $178 = $i; + $179 = $2; + $180 = (($179) + ($178)|0); + HEAP8[$180>>0] = $177; + $181 = $i; + $182 = (($181) + 1)|0; + $i = $182; + } + while(1) { + $183 = $i; + $184 = $blocksize; + $185 = ($183>>>0)<($184>>>0); + if (!($185)) { + break; + } + $186 = $ivp; + $187 = ((($186)) + 1|0); + $ivp = $187; + $188 = HEAP8[$186>>0]|0; + $189 = $188&255; + $190 = 0 ^ $189; + $191 = $190&255; + $192 = $i; + $193 = $2; + $194 = (($193) + ($192)|0); + HEAP8[$194>>0] = $191; + $195 = $i; + $196 = (($195) + 1)|0; + $i = $196; + } + $197 = $enc_fn; + $198 = $1; + $199 = ((($198)) + 496|0); + $200 = $2; + $201 = $2; + $202 = (FUNCTION_TABLE_iiii[$197 & 127]($199,$200,$201)|0); + $nburn = $202; + $203 = $nburn; + $204 = $burn; + $205 = ($203>>>0)>($204>>>0); + $206 = $nburn; + $207 = $burn; + $208 = $205 ? $206 : $207; + $burn = $208; + $209 = $1; + $210 = ((($209)) + 64|0); + $211 = $2; + $212 = $blocksize; + _buf_cpy_1807($210,$211,$212); + } + } + $213 = $burn; + $214 = ($213>>>0)>(0); + if ($214) { + $215 = $burn; + $216 = (($215) + 16)|0; + ___gcry_burn_stack($216); + ___gcry_burn_stack_dummy(); + } + $0 = 0; + $217 = $0; + STACKTOP = sp;return ($217|0); +} +function _buf_xor_1806($_dst,$_src1,$_src2,$len) { + $_dst = $_dst|0; + $_src1 = $_src1|0; + $_src2 = $_src2|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst = 0, $ldst = 0, $longmask = 0, $lsrc1 = 0, $lsrc2 = 0, $src1 = 0, $src2 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst; + $1 = $_src1; + $2 = $_src2; + $3 = $len; + $4 = $0; + $dst = $4; + $5 = $1; + $src1 = $5; + $6 = $2; + $src2 = $6; + $longmask = 3; + $7 = $dst; + $8 = $7; + $9 = $src1; + $10 = $9; + $11 = $8 | $10; + $12 = $src2; + $13 = $12; + $14 = $11 | $13; + $15 = $14 & 3; + $16 = ($15|0)!=(0); + if (!($16)) { + $17 = $dst; + $ldst = $17; + $18 = $src1; + $lsrc1 = $18; + $19 = $src2; + $lsrc2 = $19; + while(1) { + $20 = $3; + $21 = ($20>>>0)>=(4); + if (!($21)) { + break; + } + $22 = $lsrc1; + $23 = ((($22)) + 4|0); + $lsrc1 = $23; + $24 = HEAP32[$22>>2]|0; + $25 = $lsrc2; + $26 = ((($25)) + 4|0); + $lsrc2 = $26; + $27 = HEAP32[$25>>2]|0; + $28 = $24 ^ $27; + $29 = $ldst; + $30 = ((($29)) + 4|0); + $ldst = $30; + HEAP32[$29>>2] = $28; + $31 = $3; + $32 = (($31) - 4)|0; + $3 = $32; + } + $33 = $ldst; + $dst = $33; + $34 = $lsrc1; + $src1 = $34; + $35 = $lsrc2; + $src2 = $35; + } + while(1) { + $36 = $3; + $37 = ($36|0)!=(0); + if (!($37)) { + break; + } + $38 = $src1; + $39 = ((($38)) + 1|0); + $src1 = $39; + $40 = HEAP8[$38>>0]|0; + $41 = $40&255; + $42 = $src2; + $43 = ((($42)) + 1|0); + $src2 = $43; + $44 = HEAP8[$42>>0]|0; + $45 = $44&255; + $46 = $41 ^ $45; + $47 = $46&255; + $48 = $dst; + $49 = ((($48)) + 1|0); + $dst = $49; + HEAP8[$48>>0] = $47; + $50 = $3; + $51 = (($50) + -1)|0; + $3 = $51; + } + STACKTOP = sp;return; +} +function _buf_cpy_1807($_dst,$_src,$len) { + $_dst = $_dst|0; + $_src = $_src|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst = 0, $ldst = 0, $longmask = 0, $lsrc = 0, $src = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst; + $1 = $_src; + $2 = $len; + $3 = $0; + $dst = $3; + $4 = $1; + $src = $4; + $longmask = 3; + $5 = $dst; + $6 = $5; + $7 = $src; + $8 = $7; + $9 = $6 | $8; + $10 = $9 & 3; + $11 = ($10|0)!=(0); + if (!($11)) { + $12 = $dst; + $ldst = $12; + $13 = $src; + $lsrc = $13; + while(1) { + $14 = $2; + $15 = ($14>>>0)>=(4); + if (!($15)) { + break; + } + $16 = $lsrc; + $17 = ((($16)) + 4|0); + $lsrc = $17; + $18 = HEAP32[$16>>2]|0; + $19 = $ldst; + $20 = ((($19)) + 4|0); + $ldst = $20; + HEAP32[$19>>2] = $18; + $21 = $2; + $22 = (($21) - 4)|0; + $2 = $22; + } + $23 = $ldst; + $dst = $23; + $24 = $lsrc; + $src = $24; + } + while(1) { + $25 = $2; + $26 = ($25|0)!=(0); + if (!($26)) { + break; + } + $27 = $src; + $28 = ((($27)) + 1|0); + $src = $28; + $29 = HEAP8[$27>>0]|0; + $30 = $dst; + $31 = ((($30)) + 1|0); + $dst = $31; + HEAP8[$30>>0] = $29; + $32 = $2; + $33 = (($32) + -1)|0; + $2 = $33; + } + STACKTOP = sp;return; +} +function __gcry_cipher_cbc_decrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $blocksize = 0, $burn = 0; + var $dec_fn = 0, $i = 0, $n = 0, $nblocks = 0, $nburn = 0, $restbytes = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $c; + $2 = $outbuf; + $3 = $outbuflen; + $4 = $inbuf; + $5 = $inbuflen; + $6 = $1; + $7 = ((($6)) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = ((($8)) + 20|0); + $10 = HEAP32[$9>>2]|0; + $blocksize = $10; + $11 = $1; + $12 = ((($11)) + 12|0); + $13 = HEAP32[$12>>2]|0; + $14 = ((($13)) + 40|0); + $15 = HEAP32[$14>>2]|0; + $dec_fn = $15; + $16 = $5; + $17 = $blocksize; + $18 = (($16>>>0) / ($17>>>0))&-1; + $nblocks = $18; + $19 = $3; + $20 = $5; + $21 = ($19>>>0)<($20>>>0); + if ($21) { + $0 = 200; + $197 = $0; + STACKTOP = sp;return ($197|0); + } + $22 = $5; + $23 = $blocksize; + $24 = (($22>>>0) % ($23>>>0))&-1; + $25 = ($24|0)!=(0); + do { + if ($25) { + $26 = $5; + $27 = $blocksize; + $28 = ($26>>>0)>($27>>>0); + if ($28) { + $29 = $1; + $30 = ((($29)) + 52|0); + $31 = HEAP32[$30>>2]|0; + $32 = $31 & 4; + $33 = ($32|0)!=(0); + if ($33) { + break; + } + } + $0 = 139; + $197 = $0; + STACKTOP = sp;return ($197|0); + } + } while(0); + $burn = 0; + $34 = $1; + $35 = ((($34)) + 52|0); + $36 = HEAP32[$35>>2]|0; + $37 = $36 & 4; + $38 = ($37|0)!=(0); + if ($38) { + $39 = $5; + $40 = $blocksize; + $41 = ($39>>>0)>($40>>>0); + if ($41) { + $42 = $nblocks; + $43 = (($42) + -1)|0; + $nblocks = $43; + $44 = $5; + $45 = $blocksize; + $46 = (($44>>>0) % ($45>>>0))&-1; + $47 = ($46|0)==(0); + if ($47) { + $48 = $nblocks; + $49 = (($48) + -1)|0; + $nblocks = $49; + } + $50 = $1; + $51 = ((($50)) + 96|0); + $52 = $1; + $53 = ((($52)) + 64|0); + $54 = $blocksize; + _buf_cpy_1807($51,$53,$54); + } + } + $55 = $1; + $56 = ((($55)) + 20|0); + $57 = ((($56)) + 12|0); + $58 = HEAP32[$57>>2]|0; + $59 = ($58|0)!=(0|0); + L19: do { + if ($59) { + $60 = $1; + $61 = ((($60)) + 20|0); + $62 = ((($61)) + 12|0); + $63 = HEAP32[$62>>2]|0; + $64 = $1; + $65 = ((($64)) + 496|0); + $66 = $1; + $67 = ((($66)) + 64|0); + $68 = $2; + $69 = $4; + $70 = $nblocks; + FUNCTION_TABLE_viiiii[$63 & 127]($65,$67,$68,$69,$70); + $71 = $nblocks; + $72 = $blocksize; + $73 = Math_imul($71, $72)|0; + $74 = $4; + $75 = (($74) + ($73)|0); + $4 = $75; + $76 = $nblocks; + $77 = $blocksize; + $78 = Math_imul($76, $77)|0; + $79 = $2; + $80 = (($79) + ($78)|0); + $2 = $80; + } else { + $n = 0; + while(1) { + $81 = $n; + $82 = $nblocks; + $83 = ($81>>>0)<($82>>>0); + if (!($83)) { + break L19; + } + $84 = $dec_fn; + $85 = $1; + $86 = ((($85)) + 496|0); + $87 = $1; + $88 = ((($87)) + 96|0); + $89 = $4; + $90 = (FUNCTION_TABLE_iiii[$84 & 127]($86,$88,$89)|0); + $nburn = $90; + $91 = $nburn; + $92 = $burn; + $93 = ($91>>>0)>($92>>>0); + $94 = $nburn; + $95 = $burn; + $96 = $93 ? $94 : $95; + $burn = $96; + $97 = $2; + $98 = $1; + $99 = ((($98)) + 96|0); + $100 = $1; + $101 = ((($100)) + 64|0); + $102 = $4; + $103 = $blocksize; + _buf_xor_n_copy_2_1810($97,$99,$101,$102,$103); + $104 = $blocksize; + $105 = $4; + $106 = (($105) + ($104)|0); + $4 = $106; + $107 = $blocksize; + $108 = $2; + $109 = (($108) + ($107)|0); + $2 = $109; + $110 = $n; + $111 = (($110) + 1)|0; + $n = $111; + } + } + } while(0); + $112 = $1; + $113 = ((($112)) + 52|0); + $114 = HEAP32[$113>>2]|0; + $115 = $114 & 4; + $116 = ($115|0)!=(0); + if ($116) { + $117 = $5; + $118 = $blocksize; + $119 = ($117>>>0)>($118>>>0); + if ($119) { + $120 = $5; + $121 = $blocksize; + $122 = (($120>>>0) % ($121>>>0))&-1; + $123 = ($122|0)==(0); + if ($123) { + $124 = $blocksize; + $restbytes = $124; + } else { + $125 = $5; + $126 = $blocksize; + $127 = (($125>>>0) % ($126>>>0))&-1; + $restbytes = $127; + } + $128 = $1; + $129 = ((($128)) + 96|0); + $130 = $1; + $131 = ((($130)) + 64|0); + $132 = $blocksize; + _buf_cpy_1807($129,$131,$132); + $133 = $1; + $134 = ((($133)) + 64|0); + $135 = $4; + $136 = $blocksize; + $137 = (($135) + ($136)|0); + $138 = $restbytes; + _buf_cpy_1807($134,$137,$138); + $139 = $dec_fn; + $140 = $1; + $141 = ((($140)) + 496|0); + $142 = $2; + $143 = $4; + $144 = (FUNCTION_TABLE_iiii[$139 & 127]($141,$142,$143)|0); + $nburn = $144; + $145 = $nburn; + $146 = $burn; + $147 = ($145>>>0)>($146>>>0); + $148 = $nburn; + $149 = $burn; + $150 = $147 ? $148 : $149; + $burn = $150; + $151 = $2; + $152 = $2; + $153 = $1; + $154 = ((($153)) + 64|0); + $155 = $restbytes; + _buf_xor_1806($151,$152,$154,$155); + $156 = $2; + $157 = $blocksize; + $158 = (($156) + ($157)|0); + $159 = $2; + $160 = $restbytes; + _buf_cpy_1807($158,$159,$160); + $161 = $restbytes; + $i = $161; + while(1) { + $162 = $i; + $163 = $blocksize; + $164 = ($162>>>0)<($163>>>0); + if (!($164)) { + break; + } + $165 = $i; + $166 = $2; + $167 = (($166) + ($165)|0); + $168 = HEAP8[$167>>0]|0; + $169 = $i; + $170 = $1; + $171 = ((($170)) + 64|0); + $172 = (($171) + ($169)|0); + HEAP8[$172>>0] = $168; + $173 = $i; + $174 = (($173) + 1)|0; + $i = $174; + } + $175 = $dec_fn; + $176 = $1; + $177 = ((($176)) + 496|0); + $178 = $2; + $179 = $1; + $180 = ((($179)) + 64|0); + $181 = (FUNCTION_TABLE_iiii[$175 & 127]($177,$178,$180)|0); + $nburn = $181; + $182 = $nburn; + $183 = $burn; + $184 = ($182>>>0)>($183>>>0); + $185 = $nburn; + $186 = $burn; + $187 = $184 ? $185 : $186; + $burn = $187; + $188 = $2; + $189 = $2; + $190 = $1; + $191 = ((($190)) + 96|0); + $192 = $blocksize; + _buf_xor_1806($188,$189,$191,$192); + } + } + $193 = $burn; + $194 = ($193>>>0)>(0); + if ($194) { + $195 = $burn; + $196 = (($195) + 16)|0; + ___gcry_burn_stack($196); + ___gcry_burn_stack_dummy(); + } + $0 = 0; + $197 = $0; + STACKTOP = sp;return ($197|0); +} +function _buf_xor_n_copy_2_1810($_dst_xor,$_src_xor,$_srcdst_cpy,$_src_cpy,$len) { + $_dst_xor = $_dst_xor|0; + $_src_xor = $_src_xor|0; + $_srcdst_cpy = $_srcdst_cpy|0; + $_src_cpy = $_src_cpy|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 = 0, $dst_xor = 0, $ldst_xor = 0, $longmask = 0, $lsrc_cpy = 0, $lsrc_xor = 0, $lsrcdst_cpy = 0, $ltemp = 0, $src_cpy = 0, $src_xor = 0, $srcdst_cpy = 0, $temp = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst_xor; + $1 = $_src_xor; + $2 = $_srcdst_cpy; + $3 = $_src_cpy; + $4 = $len; + $5 = $0; + $dst_xor = $5; + $6 = $2; + $srcdst_cpy = $6; + $7 = $1; + $src_xor = $7; + $8 = $3; + $src_cpy = $8; + $longmask = 3; + $9 = $src_cpy; + $10 = $9; + $11 = $src_xor; + $12 = $11; + $13 = $10 | $12; + $14 = $dst_xor; + $15 = $14; + $16 = $13 | $15; + $17 = $srcdst_cpy; + $18 = $17; + $19 = $16 | $18; + $20 = $19 & 3; + $21 = ($20|0)!=(0); + if (!($21)) { + $22 = $dst_xor; + $ldst_xor = $22; + $23 = $src_xor; + $lsrc_xor = $23; + $24 = $srcdst_cpy; + $lsrcdst_cpy = $24; + $25 = $src_cpy; + $lsrc_cpy = $25; + while(1) { + $26 = $4; + $27 = ($26>>>0)>=(4); + if (!($27)) { + break; + } + $28 = $lsrc_cpy; + $29 = ((($28)) + 4|0); + $lsrc_cpy = $29; + $30 = HEAP32[$28>>2]|0; + $ltemp = $30; + $31 = $lsrcdst_cpy; + $32 = HEAP32[$31>>2]|0; + $33 = $lsrc_xor; + $34 = ((($33)) + 4|0); + $lsrc_xor = $34; + $35 = HEAP32[$33>>2]|0; + $36 = $32 ^ $35; + $37 = $ldst_xor; + $38 = ((($37)) + 4|0); + $ldst_xor = $38; + HEAP32[$37>>2] = $36; + $39 = $ltemp; + $40 = $lsrcdst_cpy; + $41 = ((($40)) + 4|0); + $lsrcdst_cpy = $41; + HEAP32[$40>>2] = $39; + $42 = $4; + $43 = (($42) - 4)|0; + $4 = $43; + } + $44 = $ldst_xor; + $dst_xor = $44; + $45 = $lsrc_xor; + $src_xor = $45; + $46 = $lsrcdst_cpy; + $srcdst_cpy = $46; + $47 = $lsrc_cpy; + $src_cpy = $47; + } + while(1) { + $48 = $4; + $49 = ($48|0)!=(0); + if (!($49)) { + break; + } + $50 = $src_cpy; + $51 = ((($50)) + 1|0); + $src_cpy = $51; + $52 = HEAP8[$50>>0]|0; + $temp = $52; + $53 = $srcdst_cpy; + $54 = HEAP8[$53>>0]|0; + $55 = $54&255; + $56 = $src_xor; + $57 = ((($56)) + 1|0); + $src_xor = $57; + $58 = HEAP8[$56>>0]|0; + $59 = $58&255; + $60 = $55 ^ $59; + $61 = $60&255; + $62 = $dst_xor; + $63 = ((($62)) + 1|0); + $dst_xor = $63; + HEAP8[$62>>0] = $61; + $64 = $temp; + $65 = $srcdst_cpy; + $66 = ((($65)) + 1|0); + $srcdst_cpy = $66; + HEAP8[$65>>0] = $64; + $67 = $4; + $68 = (($67) + -1)|0; + $4 = $68; + } + STACKTOP = sp;return; +} +function __gcry_cipher_ccm_set_nonce($c,$nonce,$noncelen) { + $c = $c|0; + $nonce = $nonce|0; + $noncelen = $noncelen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $7 = 0, $8 = 0, $9 = 0, $L = 0, $L_ = 0, $or$cond = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $c; + $2 = $nonce; + $3 = $noncelen; + $4 = $3; + $5 = (15 - ($4))|0; + $L = $5; + $6 = $L; + $7 = (($6) - 1)|0; + $L_ = $7; + $8 = $2; + $9 = ($8|0)!=(0|0); + if (!($9)) { + $0 = 45; + $62 = $0; + STACKTOP = sp;return ($62|0); + } + $10 = $L; + $11 = ($10>>>0)<(2); + $12 = $L; + $13 = ($12>>>0)>(8); + $or$cond = $11 | $13; + if ($or$cond) { + $0 = 139; + $62 = $0; + STACKTOP = sp;return ($62|0); + } else { + $14 = $1; + $15 = ((($14)) + 128|0); + _memset(($15|0),0,368)|0; + $16 = $1; + $17 = ((($16)) + 56|0); + ;HEAP32[$17>>2]=0|0; + $18 = $1; + $19 = ((($18)) + 64|0); + ;HEAP32[$19>>2]=0|0;HEAP32[$19+4>>2]=0|0;HEAP32[$19+8>>2]=0|0;HEAP32[$19+12>>2]=0|0; + $20 = $1; + $21 = ((($20)) + 80|0); + ;HEAP32[$21>>2]=0|0;HEAP32[$21+4>>2]=0|0;HEAP32[$21+8>>2]=0|0;HEAP32[$21+12>>2]=0|0; + $22 = $1; + $23 = ((($22)) + 96|0); + ;HEAP32[$23>>2]=0|0;HEAP32[$23+4>>2]=0|0;HEAP32[$23+8>>2]=0|0;HEAP32[$23+12>>2]=0|0; + $24 = $1; + $25 = ((($24)) + 112|0); + HEAP32[$25>>2] = 0; + $26 = $L_; + $27 = $26&255; + $28 = $1; + $29 = ((($28)) + 80|0); + HEAP8[$29>>0] = $27; + $30 = $1; + $31 = ((($30)) + 80|0); + $32 = ((($31)) + 1|0); + $33 = $2; + $34 = $3; + _memcpy(($32|0),($33|0),($34|0))|0; + $35 = $3; + $36 = (1 + ($35))|0; + $37 = $1; + $38 = ((($37)) + 80|0); + $39 = (($38) + ($36)|0); + $40 = $L; + _memset(($39|0),0,($40|0))|0; + $41 = $L_; + $42 = $41&255; + $43 = $1; + $44 = ((($43)) + 64|0); + HEAP8[$44>>0] = $42; + $45 = $1; + $46 = ((($45)) + 64|0); + $47 = ((($46)) + 1|0); + $48 = $2; + $49 = $3; + _memcpy(($47|0),($48|0),($49|0))|0; + $50 = $3; + $51 = (1 + ($50))|0; + $52 = $1; + $53 = ((($52)) + 64|0); + $54 = (($53) + ($51)|0); + $55 = $L; + _memset(($54|0),0,($55|0))|0; + $56 = $1; + $57 = ((($56)) + 128|0); + $58 = ((($57)) + 56|0); + $59 = HEAP8[$58>>0]|0; + $60 = $59 & -2; + $61 = $60 | 1; + HEAP8[$58>>0] = $61; + $0 = 0; + $62 = $0; + STACKTOP = sp;return ($62|0); + } + return (0)|0; +} +function _do_cbc_mac($c,$inbuf,$inlen,$do_padding) { + $c = $c|0; + $inbuf = $inbuf|0; + $inlen = $inlen|0; + $do_padding = $do_padding|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $__nburn = 0, $__nburn1 = 0; + var $_vlen = 0, $_vptr = 0, $_vptr_long = 0, $_vset = 0, $_vset_long = 0, $blocksize = 0, $burn = 0, $enc_fn = 0, $nblocks = 0, $or$cond = 0, $or$cond3 = 0, $tmp = 0, $unused = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $tmp = sp + 72|0; + $_vset_long = sp; + $1 = $c; + $2 = $inbuf; + $3 = $inlen; + $4 = $do_padding; + $blocksize = 16; + $5 = $1; + $6 = ((($5)) + 12|0); + $7 = HEAP32[$6>>2]|0; + $8 = ((($7)) + 36|0); + $9 = HEAP32[$8>>2]|0; + $enc_fn = $9; + $burn = 0; + $10 = $1; + $11 = ((($10)) + 128|0); + $12 = ((($11)) + 36|0); + $13 = HEAP32[$12>>2]|0; + $unused = $13; + $14 = $3; + $15 = ($14|0)==(0); + if ($15) { + $16 = $unused; + $17 = ($16|0)!=(0); + $18 = $4; + $19 = ($18|0)!=(0); + $or$cond = $17 & $19; + if (!($or$cond)) { + $0 = 0; + $197 = $0; + STACKTOP = sp;return ($197|0); + } + } + L5: while(1) { + $20 = $3; + $21 = $unused; + $22 = (($20) + ($21))|0; + $23 = ($22>>>0)<(16); + $24 = $unused; + $25 = ($24>>>0)>(0); + $or$cond3 = $23 | $25; + L7: do { + if ($or$cond3) { + while(1) { + $26 = $3; + $27 = ($26|0)!=(0); + $28 = $unused; + $29 = ($28>>>0)<(16); + $30 = $27 ? $29 : 0; + if (!($30)) { + break L7; + } + $31 = $2; + $32 = ((($31)) + 1|0); + $2 = $32; + $33 = HEAP8[$31>>0]|0; + $34 = $unused; + $35 = (($34) + 1)|0; + $unused = $35; + $36 = $1; + $37 = ((($36)) + 128|0); + $38 = ((($37)) + 20|0); + $39 = (($38) + ($34)|0); + HEAP8[$39>>0] = $33; + $40 = $3; + $41 = (($40) + -1)|0; + $3 = $41; + } + } + } while(0); + $42 = $3; + $43 = ($42|0)!=(0); + L12: do { + if (!($43)) { + $44 = $4; + $45 = ($44|0)!=(0); + if (!($45)) { + break L5; + } + while(1) { + $46 = $unused; + $47 = ($46>>>0)<(16); + if (!($47)) { + break L12; + } + $48 = $unused; + $49 = (($48) + 1)|0; + $unused = $49; + $50 = $1; + $51 = ((($50)) + 128|0); + $52 = ((($51)) + 20|0); + $53 = (($52) + ($48)|0); + HEAP8[$53>>0] = 0; + } + } + } while(0); + $54 = $unused; + $55 = ($54>>>0)>(0); + if ($55) { + $56 = $1; + $57 = ((($56)) + 64|0); + $58 = $1; + $59 = ((($58)) + 64|0); + $60 = $1; + $61 = ((($60)) + 128|0); + $62 = ((($61)) + 20|0); + _buf_xor_1815($57,$59,$62,16); + $63 = $enc_fn; + $64 = $1; + $65 = ((($64)) + 496|0); + $66 = $1; + $67 = ((($66)) + 64|0); + $68 = $1; + $69 = ((($68)) + 64|0); + $70 = (FUNCTION_TABLE_iiii[$63 & 127]($65,$67,$69)|0); + $__nburn = $70; + $71 = $burn; + $72 = $__nburn; + $73 = ($71>>>0)>($72>>>0); + $74 = $burn; + $75 = $__nburn; + $76 = $73 ? $74 : $75; + $burn = $76; + $unused = 0; + } + $77 = $1; + $78 = ((($77)) + 20|0); + $79 = ((($78)) + 8|0); + $80 = HEAP32[$79>>2]|0; + $81 = ($80|0)!=(0|0); + L21: do { + if ($81) { + $82 = $3; + $83 = (($82>>>0) / 16)&-1; + $nblocks = $83; + $84 = $1; + $85 = ((($84)) + 20|0); + $86 = ((($85)) + 8|0); + $87 = HEAP32[$86>>2]|0; + $88 = $1; + $89 = ((($88)) + 496|0); + $90 = $1; + $91 = ((($90)) + 64|0); + $92 = $2; + $93 = $nblocks; + FUNCTION_TABLE_viiiiii[$87 & 63]($89,$91,$tmp,$92,$93,1); + $94 = $nblocks; + $95 = $94<<4; + $96 = $2; + $97 = (($96) + ($95)|0); + $2 = $97; + $98 = $nblocks; + $99 = $98<<4; + $100 = $3; + $101 = (($100) - ($99))|0; + $3 = $101; + $_vptr = $tmp; + $_vlen = 16; + $_vset = 0; + $102 = $_vset; + $103 = $102&255; + $104 = $_vset_long; + $105 = $104; + HEAP32[$105>>2] = $103; + $106 = (($104) + 4)|0; + $107 = $106; + HEAP32[$107>>2] = 0; + while(1) { + $108 = $_vptr; + $109 = $108; + $110 = $109 & 7; + $111 = ($110|0)!=(0); + $112 = $_vlen; + $113 = ($112|0)!=(0); + $114 = $111 ? $113 : 0; + if (!($114)) { + break; + } + $115 = $_vset; + $116 = $_vptr; + HEAP8[$116>>0] = $115; + $117 = $_vptr; + $118 = ((($117)) + 1|0); + $_vptr = $118; + $119 = $_vlen; + $120 = (($119) + -1)|0; + $_vlen = $120; + } + $121 = $_vlen; + $122 = ($121>>>0)<(8); + if (!($122)) { + $123 = $_vset_long; + $124 = $123; + $125 = HEAP32[$124>>2]|0; + $126 = (($123) + 4)|0; + $127 = $126; + $128 = HEAP32[$127>>2]|0; + $129 = (___muldi3(($125|0),($128|0),16843009,16843009)|0); + $130 = tempRet0; + $131 = $_vset_long; + $132 = $131; + HEAP32[$132>>2] = $129; + $133 = (($131) + 4)|0; + $134 = $133; + HEAP32[$134>>2] = $130; + while(1) { + $135 = $_vptr; + $_vptr_long = $135; + $136 = $_vset_long; + $137 = $136; + $138 = HEAP32[$137>>2]|0; + $139 = (($136) + 4)|0; + $140 = $139; + $141 = HEAP32[$140>>2]|0; + $142 = $_vptr_long; + $143 = $142; + $144 = $143; + HEAP32[$144>>2] = $138; + $145 = (($143) + 4)|0; + $146 = $145; + HEAP32[$146>>2] = $141; + $147 = $_vlen; + $148 = (($147) - 8)|0; + $_vlen = $148; + $149 = $_vptr; + $150 = ((($149)) + 8|0); + $_vptr = $150; + $151 = $_vlen; + $152 = ($151>>>0)>=(8); + if (!($152)) { + break; + } + } + } + while(1) { + $153 = $_vlen; + $154 = ($153|0)!=(0); + if (!($154)) { + break L21; + } + $155 = $_vset; + $156 = $_vptr; + HEAP8[$156>>0] = $155; + $157 = $_vptr; + $158 = ((($157)) + 1|0); + $_vptr = $158; + $159 = $_vlen; + $160 = (($159) + -1)|0; + $_vlen = $160; + } + } else { + while(1) { + $161 = $3; + $162 = ($161>>>0)>=(16); + if (!($162)) { + break L21; + } + $163 = $1; + $164 = ((($163)) + 64|0); + $165 = $1; + $166 = ((($165)) + 64|0); + $167 = $2; + _buf_xor_1815($164,$166,$167,16); + $168 = $enc_fn; + $169 = $1; + $170 = ((($169)) + 496|0); + $171 = $1; + $172 = ((($171)) + 64|0); + $173 = $1; + $174 = ((($173)) + 64|0); + $175 = (FUNCTION_TABLE_iiii[$168 & 127]($170,$172,$174)|0); + $__nburn1 = $175; + $176 = $burn; + $177 = $__nburn1; + $178 = ($176>>>0)>($177>>>0); + $179 = $burn; + $180 = $__nburn1; + $181 = $178 ? $179 : $180; + $burn = $181; + $182 = $3; + $183 = (($182) - 16)|0; + $3 = $183; + $184 = $2; + $185 = ((($184)) + 16|0); + $2 = $185; + } + } + } while(0); + $186 = $3; + $187 = ($186>>>0)>(0); + if (!($187)) { + break; + } + } + $188 = $unused; + $189 = $1; + $190 = ((($189)) + 128|0); + $191 = ((($190)) + 36|0); + HEAP32[$191>>2] = $188; + $192 = $burn; + $193 = ($192|0)!=(0); + if ($193) { + $194 = $burn; + $195 = (($194) + 16)|0; + $burn = $195; + } + $196 = $burn; + $0 = $196; + $197 = $0; + STACKTOP = sp;return ($197|0); +} +function _buf_xor_1815($_dst,$_src1,$_src2,$len) { + $_dst = $_dst|0; + $_src1 = $_src1|0; + $_src2 = $_src2|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst = 0, $ldst = 0, $longmask = 0, $lsrc1 = 0, $lsrc2 = 0, $src1 = 0, $src2 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst; + $1 = $_src1; + $2 = $_src2; + $3 = $len; + $4 = $0; + $dst = $4; + $5 = $1; + $src1 = $5; + $6 = $2; + $src2 = $6; + $longmask = 3; + $7 = $dst; + $8 = $7; + $9 = $src1; + $10 = $9; + $11 = $8 | $10; + $12 = $src2; + $13 = $12; + $14 = $11 | $13; + $15 = $14 & 3; + $16 = ($15|0)!=(0); + if (!($16)) { + $17 = $dst; + $ldst = $17; + $18 = $src1; + $lsrc1 = $18; + $19 = $src2; + $lsrc2 = $19; + while(1) { + $20 = $3; + $21 = ($20>>>0)>=(4); + if (!($21)) { + break; + } + $22 = $lsrc1; + $23 = ((($22)) + 4|0); + $lsrc1 = $23; + $24 = HEAP32[$22>>2]|0; + $25 = $lsrc2; + $26 = ((($25)) + 4|0); + $lsrc2 = $26; + $27 = HEAP32[$25>>2]|0; + $28 = $24 ^ $27; + $29 = $ldst; + $30 = ((($29)) + 4|0); + $ldst = $30; + HEAP32[$29>>2] = $28; + $31 = $3; + $32 = (($31) - 4)|0; + $3 = $32; + } + $33 = $ldst; + $dst = $33; + $34 = $lsrc1; + $src1 = $34; + $35 = $lsrc2; + $src2 = $35; + } + while(1) { + $36 = $3; + $37 = ($36|0)!=(0); + if (!($37)) { + break; + } + $38 = $src1; + $39 = ((($38)) + 1|0); + $src1 = $39; + $40 = HEAP8[$38>>0]|0; + $41 = $40&255; + $42 = $src2; + $43 = ((($42)) + 1|0); + $src2 = $43; + $44 = HEAP8[$42>>0]|0; + $45 = $44&255; + $46 = $41 ^ $45; + $47 = $46&255; + $48 = $dst; + $49 = ((($48)) + 1|0); + $dst = $49; + HEAP8[$48>>0] = $47; + $50 = $3; + $51 = (($50) + -1)|0; + $3 = $51; + } + STACKTOP = sp;return; +} +function __gcry_cipher_ccm_encrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $9 = 0, $burn = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $c; + $2 = $outbuf; + $3 = $outbuflen; + $4 = $inbuf; + $5 = $inbuflen; + $6 = $3; + $7 = $5; + $8 = ($6>>>0)<($7>>>0); + if ($8) { + $0 = 200; + $88 = $0; + STACKTOP = sp;return ($88|0); + } + $9 = $1; + $10 = ((($9)) + 128|0); + $11 = ((($10)) + 56|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12 & 1; + $14 = $13&255; + $15 = ($14|0)!=(0); + if ($15) { + $16 = $1; + $17 = ((($16)) + 56|0); + $18 = HEAP8[$17>>0]|0; + $19 = ($18&255) >>> 2; + $20 = $19 & 1; + $21 = $20&255; + $22 = ($21|0)!=(0); + if (!($22)) { + $23 = $1; + $24 = ((($23)) + 128|0); + $25 = ((($24)) + 56|0); + $26 = HEAP8[$25>>0]|0; + $27 = ($26&255) >>> 1; + $28 = $27 & 1; + $29 = $28&255; + $30 = ($29|0)!=(0); + if ($30) { + $31 = $1; + $32 = ((($31)) + 128|0); + $33 = ((($32)) + 8|0); + $34 = $33; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (($34) + 4)|0; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = ($39>>>0)>(0); + $41 = ($36>>>0)>(0); + $42 = ($39|0)==(0); + $43 = $42 & $41; + $44 = $40 | $43; + if (!($44)) { + $45 = $5; + $46 = $1; + $47 = ((($46)) + 128|0); + $48 = $47; + $49 = $48; + $50 = HEAP32[$49>>2]|0; + $51 = (($48) + 4)|0; + $52 = $51; + $53 = HEAP32[$52>>2]|0; + $54 = (0)>($53>>>0); + $55 = ($45>>>0)>($50>>>0); + $56 = (0)==($53|0); + $57 = $56 & $55; + $58 = $54 | $57; + if ($58) { + $0 = 139; + $88 = $0; + STACKTOP = sp;return ($88|0); + } + $59 = $5; + $60 = $1; + $61 = ((($60)) + 128|0); + $62 = $61; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = (($62) + 4)|0; + $66 = $65; + $67 = HEAP32[$66>>2]|0; + $68 = (_i64Subtract(($64|0),($67|0),($59|0),0)|0); + $69 = tempRet0; + $70 = $61; + $71 = $70; + HEAP32[$71>>2] = $68; + $72 = (($70) + 4)|0; + $73 = $72; + HEAP32[$73>>2] = $69; + $74 = $1; + $75 = $4; + $76 = $5; + $77 = (_do_cbc_mac($74,$75,$76,0)|0); + $burn = $77; + $78 = $burn; + $79 = ($78|0)!=(0); + if ($79) { + $80 = $burn; + $81 = (($80) + 20)|0; + ___gcry_burn_stack($81); + ___gcry_burn_stack_dummy(); + } + $82 = $1; + $83 = $2; + $84 = $3; + $85 = $4; + $86 = $5; + $87 = (__gcry_cipher_ctr_encrypt($82,$83,$84,$85,$86)|0); + $0 = $87; + $88 = $0; + STACKTOP = sp;return ($88|0); + } + } + } + } + $0 = 156; + $88 = $0; + STACKTOP = sp;return ($88|0); +} +function __gcry_cipher_ccm_decrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $burn = 0, $err = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $c; + $2 = $outbuf; + $3 = $outbuflen; + $4 = $inbuf; + $5 = $inbuflen; + $6 = $3; + $7 = $5; + $8 = ($6>>>0)<($7>>>0); + if ($8) { + $0 = 200; + $92 = $0; + STACKTOP = sp;return ($92|0); + } + $9 = $1; + $10 = ((($9)) + 128|0); + $11 = ((($10)) + 56|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12 & 1; + $14 = $13&255; + $15 = ($14|0)!=(0); + if ($15) { + $16 = $1; + $17 = ((($16)) + 56|0); + $18 = HEAP8[$17>>0]|0; + $19 = ($18&255) >>> 2; + $20 = $19 & 1; + $21 = $20&255; + $22 = ($21|0)!=(0); + if (!($22)) { + $23 = $1; + $24 = ((($23)) + 128|0); + $25 = ((($24)) + 56|0); + $26 = HEAP8[$25>>0]|0; + $27 = ($26&255) >>> 1; + $28 = $27 & 1; + $29 = $28&255; + $30 = ($29|0)!=(0); + if ($30) { + $31 = $1; + $32 = ((($31)) + 128|0); + $33 = ((($32)) + 8|0); + $34 = $33; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (($34) + 4)|0; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = ($39>>>0)>(0); + $41 = ($36>>>0)>(0); + $42 = ($39|0)==(0); + $43 = $42 & $41; + $44 = $40 | $43; + if (!($44)) { + $45 = $5; + $46 = $1; + $47 = ((($46)) + 128|0); + $48 = $47; + $49 = $48; + $50 = HEAP32[$49>>2]|0; + $51 = (($48) + 4)|0; + $52 = $51; + $53 = HEAP32[$52>>2]|0; + $54 = (0)>($53>>>0); + $55 = ($45>>>0)>($50>>>0); + $56 = (0)==($53|0); + $57 = $56 & $55; + $58 = $54 | $57; + if ($58) { + $0 = 139; + $92 = $0; + STACKTOP = sp;return ($92|0); + } + $59 = $1; + $60 = $2; + $61 = $3; + $62 = $4; + $63 = $5; + $64 = (__gcry_cipher_ctr_encrypt($59,$60,$61,$62,$63)|0); + $err = $64; + $65 = $err; + $66 = ($65|0)!=(0); + if ($66) { + $67 = $err; + $0 = $67; + $92 = $0; + STACKTOP = sp;return ($92|0); + } + $68 = $5; + $69 = $1; + $70 = ((($69)) + 128|0); + $71 = $70; + $72 = $71; + $73 = HEAP32[$72>>2]|0; + $74 = (($71) + 4)|0; + $75 = $74; + $76 = HEAP32[$75>>2]|0; + $77 = (_i64Subtract(($73|0),($76|0),($68|0),0)|0); + $78 = tempRet0; + $79 = $70; + $80 = $79; + HEAP32[$80>>2] = $77; + $81 = (($79) + 4)|0; + $82 = $81; + HEAP32[$82>>2] = $78; + $83 = $1; + $84 = $2; + $85 = $5; + $86 = (_do_cbc_mac($83,$84,$85,0)|0); + $burn = $86; + $87 = $burn; + $88 = ($87|0)!=(0); + if ($88) { + $89 = $burn; + $90 = (($89) + 20)|0; + ___gcry_burn_stack($90); + ___gcry_burn_stack_dummy(); + } + $91 = $err; + $0 = $91; + $92 = $0; + STACKTOP = sp;return ($92|0); + } + } + } + } + $0 = 156; + $92 = $0; + STACKTOP = sp;return ($92|0); +} +function __gcry_cipher_cfb_encrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; + var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $blocksize = 0, $blocksize_x_2 = 0, $burn = 0, $enc_fn = 0, $ivp = 0, $nblocks = 0, $nburn = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $c; + $2 = $outbuf; + $3 = $outbuflen; + $4 = $inbuf; + $5 = $inbuflen; + $6 = $1; + $7 = ((($6)) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = ((($8)) + 36|0); + $10 = HEAP32[$9>>2]|0; + $enc_fn = $10; + $11 = $1; + $12 = ((($11)) + 12|0); + $13 = HEAP32[$12>>2]|0; + $14 = ((($13)) + 20|0); + $15 = HEAP32[$14>>2]|0; + $blocksize = $15; + $16 = $blocksize; + $17 = $blocksize; + $18 = (($16) + ($17))|0; + $blocksize_x_2 = $18; + $19 = $3; + $20 = $5; + $21 = ($19>>>0)<($20>>>0); + if ($21) { + $0 = 200; + $227 = $0; + STACKTOP = sp;return ($227|0); + } + $22 = $5; + $23 = $1; + $24 = ((($23)) + 112|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($22>>>0)<=($25>>>0); + if ($26) { + $27 = $1; + $28 = ((($27)) + 64|0); + $29 = $blocksize; + $30 = (($28) + ($29)|0); + $31 = $1; + $32 = ((($31)) + 112|0); + $33 = HEAP32[$32>>2]|0; + $34 = (0 - ($33))|0; + $35 = (($30) + ($34)|0); + $ivp = $35; + $36 = $2; + $37 = $ivp; + $38 = $4; + $39 = $5; + _buf_xor_2dst_1830($36,$37,$38,$39); + $40 = $5; + $41 = $1; + $42 = ((($41)) + 112|0); + $43 = HEAP32[$42>>2]|0; + $44 = (($43) - ($40))|0; + HEAP32[$42>>2] = $44; + $0 = 0; + $227 = $0; + STACKTOP = sp;return ($227|0); + } + $burn = 0; + $45 = $1; + $46 = ((($45)) + 112|0); + $47 = HEAP32[$46>>2]|0; + $48 = ($47|0)!=(0); + if ($48) { + $49 = $1; + $50 = ((($49)) + 112|0); + $51 = HEAP32[$50>>2]|0; + $52 = $5; + $53 = (($52) - ($51))|0; + $5 = $53; + $54 = $1; + $55 = ((($54)) + 64|0); + $56 = $blocksize; + $57 = (($55) + ($56)|0); + $58 = $1; + $59 = ((($58)) + 112|0); + $60 = HEAP32[$59>>2]|0; + $61 = (0 - ($60))|0; + $62 = (($57) + ($61)|0); + $ivp = $62; + $63 = $2; + $64 = $ivp; + $65 = $4; + $66 = $1; + $67 = ((($66)) + 112|0); + $68 = HEAP32[$67>>2]|0; + _buf_xor_2dst_1830($63,$64,$65,$68); + $69 = $1; + $70 = ((($69)) + 112|0); + $71 = HEAP32[$70>>2]|0; + $72 = $2; + $73 = (($72) + ($71)|0); + $2 = $73; + $74 = $1; + $75 = ((($74)) + 112|0); + $76 = HEAP32[$75>>2]|0; + $77 = $4; + $78 = (($77) + ($76)|0); + $4 = $78; + $79 = $1; + $80 = ((($79)) + 112|0); + HEAP32[$80>>2] = 0; + } + $81 = $5; + $82 = $blocksize_x_2; + $83 = ($81>>>0)>=($82>>>0); + if ($83) { + $84 = $1; + $85 = ((($84)) + 20|0); + $86 = HEAP32[$85>>2]|0; + $87 = ($86|0)!=(0|0); + if ($87) { + $88 = $5; + $89 = $blocksize; + $90 = (($88>>>0) / ($89>>>0))&-1; + $nblocks = $90; + $91 = $1; + $92 = ((($91)) + 20|0); + $93 = HEAP32[$92>>2]|0; + $94 = $1; + $95 = ((($94)) + 496|0); + $96 = $1; + $97 = ((($96)) + 64|0); + $98 = $2; + $99 = $4; + $100 = $nblocks; + FUNCTION_TABLE_viiiii[$93 & 127]($95,$97,$98,$99,$100); + $101 = $nblocks; + $102 = $blocksize; + $103 = Math_imul($101, $102)|0; + $104 = $2; + $105 = (($104) + ($103)|0); + $2 = $105; + $106 = $nblocks; + $107 = $blocksize; + $108 = Math_imul($106, $107)|0; + $109 = $4; + $110 = (($109) + ($108)|0); + $4 = $110; + $111 = $nblocks; + $112 = $blocksize; + $113 = Math_imul($111, $112)|0; + $114 = $5; + $115 = (($114) - ($113))|0; + $5 = $115; + } else { + label = 10; + } + } else { + label = 10; + } + L15: do { + if ((label|0) == 10) { + while(1) { + label = 0; + $116 = $5; + $117 = $blocksize_x_2; + $118 = ($116>>>0)>=($117>>>0); + if (!($118)) { + break L15; + } + $119 = $enc_fn; + $120 = $1; + $121 = ((($120)) + 496|0); + $122 = $1; + $123 = ((($122)) + 64|0); + $124 = $1; + $125 = ((($124)) + 64|0); + $126 = (FUNCTION_TABLE_iiii[$119 & 127]($121,$123,$125)|0); + $nburn = $126; + $127 = $nburn; + $128 = $burn; + $129 = ($127>>>0)>($128>>>0); + $130 = $nburn; + $131 = $burn; + $132 = $129 ? $130 : $131; + $burn = $132; + $133 = $2; + $134 = $1; + $135 = ((($134)) + 64|0); + $136 = $4; + $137 = $blocksize; + _buf_xor_2dst_1830($133,$135,$136,$137); + $138 = $blocksize; + $139 = $2; + $140 = (($139) + ($138)|0); + $2 = $140; + $141 = $blocksize; + $142 = $4; + $143 = (($142) + ($141)|0); + $4 = $143; + $144 = $blocksize; + $145 = $5; + $146 = (($145) - ($144))|0; + $5 = $146; + label = 10; + } + } + } while(0); + $147 = $5; + $148 = $blocksize; + $149 = ($147>>>0)>=($148>>>0); + if ($149) { + $150 = $1; + $151 = ((($150)) + 96|0); + $152 = $1; + $153 = ((($152)) + 64|0); + $154 = $blocksize; + _buf_cpy_1831($151,$153,$154); + $155 = $enc_fn; + $156 = $1; + $157 = ((($156)) + 496|0); + $158 = $1; + $159 = ((($158)) + 64|0); + $160 = $1; + $161 = ((($160)) + 64|0); + $162 = (FUNCTION_TABLE_iiii[$155 & 127]($157,$159,$161)|0); + $nburn = $162; + $163 = $nburn; + $164 = $burn; + $165 = ($163>>>0)>($164>>>0); + $166 = $nburn; + $167 = $burn; + $168 = $165 ? $166 : $167; + $burn = $168; + $169 = $2; + $170 = $1; + $171 = ((($170)) + 64|0); + $172 = $4; + $173 = $blocksize; + _buf_xor_2dst_1830($169,$171,$172,$173); + $174 = $blocksize; + $175 = $2; + $176 = (($175) + ($174)|0); + $2 = $176; + $177 = $blocksize; + $178 = $4; + $179 = (($178) + ($177)|0); + $4 = $179; + $180 = $blocksize; + $181 = $5; + $182 = (($181) - ($180))|0; + $5 = $182; + } + $183 = $5; + $184 = ($183|0)!=(0); + if ($184) { + $185 = $1; + $186 = ((($185)) + 96|0); + $187 = $1; + $188 = ((($187)) + 64|0); + $189 = $blocksize; + _buf_cpy_1831($186,$188,$189); + $190 = $enc_fn; + $191 = $1; + $192 = ((($191)) + 496|0); + $193 = $1; + $194 = ((($193)) + 64|0); + $195 = $1; + $196 = ((($195)) + 64|0); + $197 = (FUNCTION_TABLE_iiii[$190 & 127]($192,$194,$196)|0); + $nburn = $197; + $198 = $nburn; + $199 = $burn; + $200 = ($198>>>0)>($199>>>0); + $201 = $nburn; + $202 = $burn; + $203 = $200 ? $201 : $202; + $burn = $203; + $204 = $blocksize; + $205 = $1; + $206 = ((($205)) + 112|0); + HEAP32[$206>>2] = $204; + $207 = $5; + $208 = $1; + $209 = ((($208)) + 112|0); + $210 = HEAP32[$209>>2]|0; + $211 = (($210) - ($207))|0; + HEAP32[$209>>2] = $211; + $212 = $2; + $213 = $1; + $214 = ((($213)) + 64|0); + $215 = $4; + $216 = $5; + _buf_xor_2dst_1830($212,$214,$215,$216); + $217 = $5; + $218 = $2; + $219 = (($218) + ($217)|0); + $2 = $219; + $220 = $5; + $221 = $4; + $222 = (($221) + ($220)|0); + $4 = $222; + $5 = 0; + } + $223 = $burn; + $224 = ($223>>>0)>(0); + if ($224) { + $225 = $burn; + $226 = (($225) + 16)|0; + ___gcry_burn_stack($226); + ___gcry_burn_stack_dummy(); + } + $0 = 0; + $227 = $0; + STACKTOP = sp;return ($227|0); +} +function _buf_xor_2dst_1830($_dst1,$_dst2,$_src,$len) { + $_dst1 = $_dst1|0; + $_dst2 = $_dst2|0; + $_src = $_src|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst1 = 0, $dst2 = 0, $ldst1 = 0, $ldst2 = 0, $longmask = 0, $lsrc = 0, $src = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst1; + $1 = $_dst2; + $2 = $_src; + $3 = $len; + $4 = $0; + $dst1 = $4; + $5 = $1; + $dst2 = $5; + $6 = $2; + $src = $6; + $longmask = 3; + $7 = $src; + $8 = $7; + $9 = $dst1; + $10 = $9; + $11 = $8 | $10; + $12 = $dst2; + $13 = $12; + $14 = $11 | $13; + $15 = $14 & 3; + $16 = ($15|0)!=(0); + if (!($16)) { + $17 = $dst1; + $ldst1 = $17; + $18 = $dst2; + $ldst2 = $18; + $19 = $src; + $lsrc = $19; + while(1) { + $20 = $3; + $21 = ($20>>>0)>=(4); + if (!($21)) { + break; + } + $22 = $lsrc; + $23 = ((($22)) + 4|0); + $lsrc = $23; + $24 = HEAP32[$22>>2]|0; + $25 = $ldst2; + $26 = ((($25)) + 4|0); + $ldst2 = $26; + $27 = HEAP32[$25>>2]|0; + $28 = $27 ^ $24; + HEAP32[$25>>2] = $28; + $29 = $ldst1; + $30 = ((($29)) + 4|0); + $ldst1 = $30; + HEAP32[$29>>2] = $28; + $31 = $3; + $32 = (($31) - 4)|0; + $3 = $32; + } + $33 = $ldst1; + $dst1 = $33; + $34 = $ldst2; + $dst2 = $34; + $35 = $lsrc; + $src = $35; + } + while(1) { + $36 = $3; + $37 = ($36|0)!=(0); + if (!($37)) { + break; + } + $38 = $src; + $39 = ((($38)) + 1|0); + $src = $39; + $40 = HEAP8[$38>>0]|0; + $41 = $40&255; + $42 = $dst2; + $43 = ((($42)) + 1|0); + $dst2 = $43; + $44 = HEAP8[$42>>0]|0; + $45 = $44&255; + $46 = $45 ^ $41; + $47 = $46&255; + HEAP8[$42>>0] = $47; + $48 = $dst1; + $49 = ((($48)) + 1|0); + $dst1 = $49; + HEAP8[$48>>0] = $47; + $50 = $3; + $51 = (($50) + -1)|0; + $3 = $51; + } + STACKTOP = sp;return; +} +function _buf_cpy_1831($_dst,$_src,$len) { + $_dst = $_dst|0; + $_src = $_src|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst = 0, $ldst = 0, $longmask = 0, $lsrc = 0, $src = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst; + $1 = $_src; + $2 = $len; + $3 = $0; + $dst = $3; + $4 = $1; + $src = $4; + $longmask = 3; + $5 = $dst; + $6 = $5; + $7 = $src; + $8 = $7; + $9 = $6 | $8; + $10 = $9 & 3; + $11 = ($10|0)!=(0); + if (!($11)) { + $12 = $dst; + $ldst = $12; + $13 = $src; + $lsrc = $13; + while(1) { + $14 = $2; + $15 = ($14>>>0)>=(4); + if (!($15)) { + break; + } + $16 = $lsrc; + $17 = ((($16)) + 4|0); + $lsrc = $17; + $18 = HEAP32[$16>>2]|0; + $19 = $ldst; + $20 = ((($19)) + 4|0); + $ldst = $20; + HEAP32[$19>>2] = $18; + $21 = $2; + $22 = (($21) - 4)|0; + $2 = $22; + } + $23 = $ldst; + $dst = $23; + $24 = $lsrc; + $src = $24; + } + while(1) { + $25 = $2; + $26 = ($25|0)!=(0); + if (!($26)) { + break; + } + $27 = $src; + $28 = ((($27)) + 1|0); + $src = $28; + $29 = HEAP8[$27>>0]|0; + $30 = $dst; + $31 = ((($30)) + 1|0); + $dst = $31; + HEAP8[$30>>0] = $29; + $32 = $2; + $33 = (($32) + -1)|0; + $2 = $33; + } + STACKTOP = sp;return; +} +function __gcry_cipher_cfb_decrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $blocksize = 0, $blocksize_x_2 = 0, $burn = 0, $enc_fn = 0, $ivp = 0, $nblocks = 0, $nburn = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $c; + $2 = $outbuf; + $3 = $outbuflen; + $4 = $inbuf; + $5 = $inbuflen; + $6 = $1; + $7 = ((($6)) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = ((($8)) + 36|0); + $10 = HEAP32[$9>>2]|0; + $enc_fn = $10; + $11 = $1; + $12 = ((($11)) + 12|0); + $13 = HEAP32[$12>>2]|0; + $14 = ((($13)) + 20|0); + $15 = HEAP32[$14>>2]|0; + $blocksize = $15; + $16 = $blocksize; + $17 = $blocksize; + $18 = (($16) + ($17))|0; + $blocksize_x_2 = $18; + $19 = $3; + $20 = $5; + $21 = ($19>>>0)<($20>>>0); + if ($21) { + $0 = 200; + $229 = $0; + STACKTOP = sp;return ($229|0); + } + $22 = $5; + $23 = $1; + $24 = ((($23)) + 112|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($22>>>0)<=($25>>>0); + if ($26) { + $27 = $1; + $28 = ((($27)) + 64|0); + $29 = $blocksize; + $30 = (($28) + ($29)|0); + $31 = $1; + $32 = ((($31)) + 112|0); + $33 = HEAP32[$32>>2]|0; + $34 = (0 - ($33))|0; + $35 = (($30) + ($34)|0); + $ivp = $35; + $36 = $2; + $37 = $ivp; + $38 = $4; + $39 = $5; + _buf_xor_n_copy_1834($36,$37,$38,$39); + $40 = $5; + $41 = $1; + $42 = ((($41)) + 112|0); + $43 = HEAP32[$42>>2]|0; + $44 = (($43) - ($40))|0; + HEAP32[$42>>2] = $44; + $0 = 0; + $229 = $0; + STACKTOP = sp;return ($229|0); + } + $burn = 0; + $45 = $1; + $46 = ((($45)) + 112|0); + $47 = HEAP32[$46>>2]|0; + $48 = ($47|0)!=(0); + if ($48) { + $49 = $1; + $50 = ((($49)) + 112|0); + $51 = HEAP32[$50>>2]|0; + $52 = $5; + $53 = (($52) - ($51))|0; + $5 = $53; + $54 = $1; + $55 = ((($54)) + 64|0); + $56 = $blocksize; + $57 = (($55) + ($56)|0); + $58 = $1; + $59 = ((($58)) + 112|0); + $60 = HEAP32[$59>>2]|0; + $61 = (0 - ($60))|0; + $62 = (($57) + ($61)|0); + $ivp = $62; + $63 = $2; + $64 = $ivp; + $65 = $4; + $66 = $1; + $67 = ((($66)) + 112|0); + $68 = HEAP32[$67>>2]|0; + _buf_xor_n_copy_1834($63,$64,$65,$68); + $69 = $1; + $70 = ((($69)) + 112|0); + $71 = HEAP32[$70>>2]|0; + $72 = $2; + $73 = (($72) + ($71)|0); + $2 = $73; + $74 = $1; + $75 = ((($74)) + 112|0); + $76 = HEAP32[$75>>2]|0; + $77 = $4; + $78 = (($77) + ($76)|0); + $4 = $78; + $79 = $1; + $80 = ((($79)) + 112|0); + HEAP32[$80>>2] = 0; + } + $81 = $5; + $82 = $blocksize_x_2; + $83 = ($81>>>0)>=($82>>>0); + if ($83) { + $84 = $1; + $85 = ((($84)) + 20|0); + $86 = ((($85)) + 4|0); + $87 = HEAP32[$86>>2]|0; + $88 = ($87|0)!=(0|0); + if ($88) { + $89 = $5; + $90 = $blocksize; + $91 = (($89>>>0) / ($90>>>0))&-1; + $nblocks = $91; + $92 = $1; + $93 = ((($92)) + 20|0); + $94 = ((($93)) + 4|0); + $95 = HEAP32[$94>>2]|0; + $96 = $1; + $97 = ((($96)) + 496|0); + $98 = $1; + $99 = ((($98)) + 64|0); + $100 = $2; + $101 = $4; + $102 = $nblocks; + FUNCTION_TABLE_viiiii[$95 & 127]($97,$99,$100,$101,$102); + $103 = $nblocks; + $104 = $blocksize; + $105 = Math_imul($103, $104)|0; + $106 = $2; + $107 = (($106) + ($105)|0); + $2 = $107; + $108 = $nblocks; + $109 = $blocksize; + $110 = Math_imul($108, $109)|0; + $111 = $4; + $112 = (($111) + ($110)|0); + $4 = $112; + $113 = $nblocks; + $114 = $blocksize; + $115 = Math_imul($113, $114)|0; + $116 = $5; + $117 = (($116) - ($115))|0; + $5 = $117; + } else { + label = 10; + } + } else { + label = 10; + } + L15: do { + if ((label|0) == 10) { + while(1) { + label = 0; + $118 = $5; + $119 = $blocksize_x_2; + $120 = ($118>>>0)>=($119>>>0); + if (!($120)) { + break L15; + } + $121 = $enc_fn; + $122 = $1; + $123 = ((($122)) + 496|0); + $124 = $1; + $125 = ((($124)) + 64|0); + $126 = $1; + $127 = ((($126)) + 64|0); + $128 = (FUNCTION_TABLE_iiii[$121 & 127]($123,$125,$127)|0); + $nburn = $128; + $129 = $nburn; + $130 = $burn; + $131 = ($129>>>0)>($130>>>0); + $132 = $nburn; + $133 = $burn; + $134 = $131 ? $132 : $133; + $burn = $134; + $135 = $2; + $136 = $1; + $137 = ((($136)) + 64|0); + $138 = $4; + $139 = $blocksize; + _buf_xor_n_copy_1834($135,$137,$138,$139); + $140 = $blocksize; + $141 = $2; + $142 = (($141) + ($140)|0); + $2 = $142; + $143 = $blocksize; + $144 = $4; + $145 = (($144) + ($143)|0); + $4 = $145; + $146 = $blocksize; + $147 = $5; + $148 = (($147) - ($146))|0; + $5 = $148; + label = 10; + } + } + } while(0); + $149 = $5; + $150 = $blocksize; + $151 = ($149>>>0)>=($150>>>0); + if ($151) { + $152 = $1; + $153 = ((($152)) + 96|0); + $154 = $1; + $155 = ((($154)) + 64|0); + $156 = $blocksize; + _buf_cpy_1831($153,$155,$156); + $157 = $enc_fn; + $158 = $1; + $159 = ((($158)) + 496|0); + $160 = $1; + $161 = ((($160)) + 64|0); + $162 = $1; + $163 = ((($162)) + 64|0); + $164 = (FUNCTION_TABLE_iiii[$157 & 127]($159,$161,$163)|0); + $nburn = $164; + $165 = $nburn; + $166 = $burn; + $167 = ($165>>>0)>($166>>>0); + $168 = $nburn; + $169 = $burn; + $170 = $167 ? $168 : $169; + $burn = $170; + $171 = $2; + $172 = $1; + $173 = ((($172)) + 64|0); + $174 = $4; + $175 = $blocksize; + _buf_xor_n_copy_1834($171,$173,$174,$175); + $176 = $blocksize; + $177 = $2; + $178 = (($177) + ($176)|0); + $2 = $178; + $179 = $blocksize; + $180 = $4; + $181 = (($180) + ($179)|0); + $4 = $181; + $182 = $blocksize; + $183 = $5; + $184 = (($183) - ($182))|0; + $5 = $184; + } + $185 = $5; + $186 = ($185|0)!=(0); + if ($186) { + $187 = $1; + $188 = ((($187)) + 96|0); + $189 = $1; + $190 = ((($189)) + 64|0); + $191 = $blocksize; + _buf_cpy_1831($188,$190,$191); + $192 = $enc_fn; + $193 = $1; + $194 = ((($193)) + 496|0); + $195 = $1; + $196 = ((($195)) + 64|0); + $197 = $1; + $198 = ((($197)) + 64|0); + $199 = (FUNCTION_TABLE_iiii[$192 & 127]($194,$196,$198)|0); + $nburn = $199; + $200 = $nburn; + $201 = $burn; + $202 = ($200>>>0)>($201>>>0); + $203 = $nburn; + $204 = $burn; + $205 = $202 ? $203 : $204; + $burn = $205; + $206 = $blocksize; + $207 = $1; + $208 = ((($207)) + 112|0); + HEAP32[$208>>2] = $206; + $209 = $5; + $210 = $1; + $211 = ((($210)) + 112|0); + $212 = HEAP32[$211>>2]|0; + $213 = (($212) - ($209))|0; + HEAP32[$211>>2] = $213; + $214 = $2; + $215 = $1; + $216 = ((($215)) + 64|0); + $217 = $4; + $218 = $5; + _buf_xor_n_copy_1834($214,$216,$217,$218); + $219 = $5; + $220 = $2; + $221 = (($220) + ($219)|0); + $2 = $221; + $222 = $5; + $223 = $4; + $224 = (($223) + ($222)|0); + $4 = $224; + $5 = 0; + } + $225 = $burn; + $226 = ($225>>>0)>(0); + if ($226) { + $227 = $burn; + $228 = (($227) + 16)|0; + ___gcry_burn_stack($228); + ___gcry_burn_stack_dummy(); + } + $0 = 0; + $229 = $0; + STACKTOP = sp;return ($229|0); +} +function _buf_xor_n_copy_1834($_dst_xor,$_srcdst_cpy,$_src,$len) { + $_dst_xor = $_dst_xor|0; + $_srcdst_cpy = $_srcdst_cpy|0; + $_src = $_src|0; + $len = $len|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst_xor; + $1 = $_srcdst_cpy; + $2 = $_src; + $3 = $len; + $4 = $0; + $5 = $2; + $6 = $1; + $7 = $2; + $8 = $3; + _buf_xor_n_copy_2_1835($4,$5,$6,$7,$8); + STACKTOP = sp;return; +} +function _buf_xor_n_copy_2_1835($_dst_xor,$_src_xor,$_srcdst_cpy,$_src_cpy,$len) { + $_dst_xor = $_dst_xor|0; + $_src_xor = $_src_xor|0; + $_srcdst_cpy = $_srcdst_cpy|0; + $_src_cpy = $_src_cpy|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 = 0, $dst_xor = 0, $ldst_xor = 0, $longmask = 0, $lsrc_cpy = 0, $lsrc_xor = 0, $lsrcdst_cpy = 0, $ltemp = 0, $src_cpy = 0, $src_xor = 0, $srcdst_cpy = 0, $temp = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst_xor; + $1 = $_src_xor; + $2 = $_srcdst_cpy; + $3 = $_src_cpy; + $4 = $len; + $5 = $0; + $dst_xor = $5; + $6 = $2; + $srcdst_cpy = $6; + $7 = $1; + $src_xor = $7; + $8 = $3; + $src_cpy = $8; + $longmask = 3; + $9 = $src_cpy; + $10 = $9; + $11 = $src_xor; + $12 = $11; + $13 = $10 | $12; + $14 = $dst_xor; + $15 = $14; + $16 = $13 | $15; + $17 = $srcdst_cpy; + $18 = $17; + $19 = $16 | $18; + $20 = $19 & 3; + $21 = ($20|0)!=(0); + if (!($21)) { + $22 = $dst_xor; + $ldst_xor = $22; + $23 = $src_xor; + $lsrc_xor = $23; + $24 = $srcdst_cpy; + $lsrcdst_cpy = $24; + $25 = $src_cpy; + $lsrc_cpy = $25; + while(1) { + $26 = $4; + $27 = ($26>>>0)>=(4); + if (!($27)) { + break; + } + $28 = $lsrc_cpy; + $29 = ((($28)) + 4|0); + $lsrc_cpy = $29; + $30 = HEAP32[$28>>2]|0; + $ltemp = $30; + $31 = $lsrcdst_cpy; + $32 = HEAP32[$31>>2]|0; + $33 = $lsrc_xor; + $34 = ((($33)) + 4|0); + $lsrc_xor = $34; + $35 = HEAP32[$33>>2]|0; + $36 = $32 ^ $35; + $37 = $ldst_xor; + $38 = ((($37)) + 4|0); + $ldst_xor = $38; + HEAP32[$37>>2] = $36; + $39 = $ltemp; + $40 = $lsrcdst_cpy; + $41 = ((($40)) + 4|0); + $lsrcdst_cpy = $41; + HEAP32[$40>>2] = $39; + $42 = $4; + $43 = (($42) - 4)|0; + $4 = $43; + } + $44 = $ldst_xor; + $dst_xor = $44; + $45 = $lsrc_xor; + $src_xor = $45; + $46 = $lsrcdst_cpy; + $srcdst_cpy = $46; + $47 = $lsrc_cpy; + $src_cpy = $47; + } + while(1) { + $48 = $4; + $49 = ($48|0)!=(0); + if (!($49)) { + break; + } + $50 = $src_cpy; + $51 = ((($50)) + 1|0); + $src_cpy = $51; + $52 = HEAP8[$50>>0]|0; + $temp = $52; + $53 = $srcdst_cpy; + $54 = HEAP8[$53>>0]|0; + $55 = $54&255; + $56 = $src_xor; + $57 = ((($56)) + 1|0); + $src_xor = $57; + $58 = HEAP8[$56>>0]|0; + $59 = $58&255; + $60 = $55 ^ $59; + $61 = $60&255; + $62 = $dst_xor; + $63 = ((($62)) + 1|0); + $dst_xor = $63; + HEAP8[$62>>0] = $61; + $64 = $temp; + $65 = $srcdst_cpy; + $66 = ((($65)) + 1|0); + $srcdst_cpy = $66; + HEAP8[$65>>0] = $64; + $67 = $4; + $68 = (($67) + -1)|0; + $4 = $68; + } + STACKTOP = sp;return; +} +function __gcry_cipher_cmac_set_subkeys($c) { + $c = $c|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $c; + $1 = $0; + _cmac_generate_subkeys($1); + STACKTOP = sp;return 0; +} +function _cmac_generate_subkeys($c) { + $c = $c|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; + var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $_vlen = 0, $_vptr = 0, $_vptr_long = 0, $_vset = 0, $_vset_long = 0, $bi = 0, $blocksize = 0, $burn = 0, $carry = 0, $i = 0, $j = 0; + var $rb = 0, $t = 0, $u = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $u = sp + 24|0; + $_vset_long = sp; + $0 = $c; + $1 = $0; + $2 = ((($1)) + 12|0); + $3 = HEAP32[$2>>2]|0; + $4 = ((($3)) + 20|0); + $5 = HEAP32[$4>>2]|0; + $blocksize = $5; + $6 = $blocksize; + $7 = (16)<($6>>>0); + if ($7) { + __gcry_bug(46802,113,46816); + // unreachable; + } + $8 = $blocksize; + _memset(($u|0),0,($8|0))|0; + $9 = $0; + $10 = ((($9)) + 12|0); + $11 = HEAP32[$10>>2]|0; + $12 = ((($11)) + 36|0); + $13 = HEAP32[$12>>2]|0; + $14 = $0; + $15 = ((($14)) + 496|0); + $16 = (FUNCTION_TABLE_iiii[$13 & 127]($15,$u,$u)|0); + $burn = $16; + $17 = $blocksize; + $18 = ($17|0)==(16); + $19 = $18 ? 135 : 27; + $20 = $19&255; + $rb = $20; + $j = 0; + while(1) { + $21 = $j; + $22 = ($21|0)<(2); + if (!($22)) { + break; + } + $carry = 0; + $23 = $blocksize; + $24 = (($23) - 1)|0; + $i = $24; + while(1) { + $25 = $i; + $26 = ($25|0)>=(0); + if (!($26)) { + break; + } + $27 = $i; + $28 = (($u) + ($27)|0); + $29 = HEAP8[$28>>0]|0; + $bi = $29; + $30 = $carry; + $31 = $30&255; + $32 = $bi; + $33 = $32&255; + $34 = $33 << 1; + $35 = $31 | $34; + $36 = $35&255; + $t = $36; + $37 = $bi; + $38 = $37&255; + $39 = $38 >> 7; + $40 = $39&255; + $carry = $40; + $41 = $t; + $42 = $41&255; + $43 = $42 & 255; + $44 = $43&255; + $45 = $i; + $46 = (($u) + ($45)|0); + HEAP8[$46>>0] = $44; + $47 = $i; + $48 = (($u) + ($47)|0); + $49 = HEAP8[$48>>0]|0; + $50 = $i; + $51 = $j; + $52 = $0; + $53 = ((($52)) + 128|0); + $54 = ((($53)) + 1|0); + $55 = (($54) + ($51<<4)|0); + $56 = (($55) + ($50)|0); + HEAP8[$56>>0] = $49; + $57 = $i; + $58 = (($57) + -1)|0; + $i = $58; + } + $59 = $carry; + $60 = $59&255; + $61 = ($60|0)!=(0); + $62 = $rb; + $63 = $62&255; + $64 = $61 ? $63 : 0; + $65 = $blocksize; + $66 = (($65) - 1)|0; + $67 = (($u) + ($66)|0); + $68 = HEAP8[$67>>0]|0; + $69 = $68&255; + $70 = $69 ^ $64; + $71 = $70&255; + HEAP8[$67>>0] = $71; + $72 = $blocksize; + $73 = (($72) - 1)|0; + $74 = (($u) + ($73)|0); + $75 = HEAP8[$74>>0]|0; + $76 = $blocksize; + $77 = (($76) - 1)|0; + $78 = $j; + $79 = $0; + $80 = ((($79)) + 128|0); + $81 = ((($80)) + 1|0); + $82 = (($81) + ($78<<4)|0); + $83 = (($82) + ($77)|0); + HEAP8[$83>>0] = $75; + $84 = $j; + $85 = (($84) + 1)|0; + $j = $85; + } + $_vptr = $u; + $_vlen = 16; + $_vset = 0; + $86 = $_vset; + $87 = $86&255; + $88 = $_vset_long; + $89 = $88; + HEAP32[$89>>2] = $87; + $90 = (($88) + 4)|0; + $91 = $90; + HEAP32[$91>>2] = 0; + while(1) { + $92 = $_vptr; + $93 = $92; + $94 = $93 & 7; + $95 = ($94|0)!=(0); + $96 = $_vlen; + $97 = ($96|0)!=(0); + $98 = $95 ? $97 : 0; + if (!($98)) { + break; + } + $99 = $_vset; + $100 = $_vptr; + HEAP8[$100>>0] = $99; + $101 = $_vptr; + $102 = ((($101)) + 1|0); + $_vptr = $102; + $103 = $_vlen; + $104 = (($103) + -1)|0; + $_vlen = $104; + } + $105 = $_vlen; + $106 = ($105>>>0)<(8); + if (!($106)) { + $107 = $_vset_long; + $108 = $107; + $109 = HEAP32[$108>>2]|0; + $110 = (($107) + 4)|0; + $111 = $110; + $112 = HEAP32[$111>>2]|0; + $113 = (___muldi3(($109|0),($112|0),16843009,16843009)|0); + $114 = tempRet0; + $115 = $_vset_long; + $116 = $115; + HEAP32[$116>>2] = $113; + $117 = (($115) + 4)|0; + $118 = $117; + HEAP32[$118>>2] = $114; + while(1) { + $119 = $_vptr; + $_vptr_long = $119; + $120 = $_vset_long; + $121 = $120; + $122 = HEAP32[$121>>2]|0; + $123 = (($120) + 4)|0; + $124 = $123; + $125 = HEAP32[$124>>2]|0; + $126 = $_vptr_long; + $127 = $126; + $128 = $127; + HEAP32[$128>>2] = $122; + $129 = (($127) + 4)|0; + $130 = $129; + HEAP32[$130>>2] = $125; + $131 = $_vlen; + $132 = (($131) - 8)|0; + $_vlen = $132; + $133 = $_vptr; + $134 = ((($133)) + 8|0); + $_vptr = $134; + $135 = $_vlen; + $136 = ($135>>>0)>=(8); + if (!($136)) { + break; + } + } + } + while(1) { + $137 = $_vlen; + $138 = ($137|0)!=(0); + if (!($138)) { + break; + } + $139 = $_vset; + $140 = $_vptr; + HEAP8[$140>>0] = $139; + $141 = $_vptr; + $142 = ((($141)) + 1|0); + $_vptr = $142; + $143 = $_vlen; + $144 = (($143) + -1)|0; + $_vlen = $144; + } + $145 = $burn; + $146 = ($145|0)!=(0); + if (!($146)) { + STACKTOP = sp;return; + } + $147 = $burn; + $148 = (($147) + 16)|0; + ___gcry_burn_stack($148); + ___gcry_burn_stack_dummy(); + STACKTOP = sp;return; +} +function __gcry_cipher_ctr_encrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0; + var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; + var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; + var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; + var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $_vlen = 0, $_vptr = 0, $_vptr_long = 0, $_vset = 0; + var $_vset_long = 0, $blocksize = 0, $burn = 0, $enc_fn = 0, $i = 0, $n = 0, $nblocks = 0, $nburn = 0, $tmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $tmp = sp + 80|0; + $_vset_long = sp; + $1 = $c; + $2 = $outbuf; + $3 = $outbuflen; + $4 = $inbuf; + $5 = $inbuflen; + $6 = $1; + $7 = ((($6)) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = ((($8)) + 36|0); + $10 = HEAP32[$9>>2]|0; + $enc_fn = $10; + $11 = $1; + $12 = ((($11)) + 12|0); + $13 = HEAP32[$12>>2]|0; + $14 = ((($13)) + 20|0); + $15 = HEAP32[$14>>2]|0; + $blocksize = $15; + $16 = $3; + $17 = $5; + $18 = ($16>>>0)<($17>>>0); + if ($18) { + $0 = 200; + $235 = $0; + STACKTOP = sp;return ($235|0); + } + $burn = 0; + $19 = $1; + $20 = ((($19)) + 112|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)!=(0); + if ($22) { + $23 = $1; + $24 = ((($23)) + 112|0); + $25 = HEAP32[$24>>2]|0; + $26 = $blocksize; + $27 = ($25>>>0)<($26>>>0); + if (!($27)) { + __gcry_assert_failed(46838,46860,53,46873); + // unreachable; + } + $28 = $blocksize; + $29 = $1; + $30 = ((($29)) + 112|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($28) - ($31))|0; + $i = $32; + $33 = $1; + $34 = ((($33)) + 112|0); + $35 = HEAP32[$34>>2]|0; + $36 = $5; + $37 = ($35>>>0)>($36>>>0); + if ($37) { + $38 = $5; + $42 = $38; + } else { + $39 = $1; + $40 = ((($39)) + 112|0); + $41 = HEAP32[$40>>2]|0; + $42 = $41; + } + $n = $42; + $43 = $2; + $44 = $4; + $45 = $i; + $46 = $1; + $47 = ((($46)) + 96|0); + $48 = (($47) + ($45)|0); + $49 = $n; + _buf_xor_1851($43,$44,$48,$49); + $50 = $n; + $51 = $1; + $52 = ((($51)) + 112|0); + $53 = HEAP32[$52>>2]|0; + $54 = (($53) - ($50))|0; + HEAP32[$52>>2] = $54; + $55 = $n; + $56 = $4; + $57 = (($56) + ($55)|0); + $4 = $57; + $58 = $n; + $59 = $2; + $60 = (($59) + ($58)|0); + $2 = $60; + $61 = $n; + $62 = $5; + $63 = (($62) - ($61))|0; + $5 = $63; + } + $64 = $5; + $65 = $blocksize; + $66 = (($64>>>0) / ($65>>>0))&-1; + $nblocks = $66; + $67 = $nblocks; + $68 = ($67|0)!=(0); + if ($68) { + $69 = $1; + $70 = ((($69)) + 20|0); + $71 = ((($70)) + 16|0); + $72 = HEAP32[$71>>2]|0; + $73 = ($72|0)!=(0|0); + if ($73) { + $74 = $1; + $75 = ((($74)) + 20|0); + $76 = ((($75)) + 16|0); + $77 = HEAP32[$76>>2]|0; + $78 = $1; + $79 = ((($78)) + 496|0); + $80 = $1; + $81 = ((($80)) + 80|0); + $82 = $2; + $83 = $4; + $84 = $nblocks; + FUNCTION_TABLE_viiiii[$77 & 127]($79,$81,$82,$83,$84); + $85 = $nblocks; + $86 = $blocksize; + $87 = Math_imul($85, $86)|0; + $88 = $4; + $89 = (($88) + ($87)|0); + $4 = $89; + $90 = $nblocks; + $91 = $blocksize; + $92 = Math_imul($90, $91)|0; + $93 = $2; + $94 = (($93) + ($92)|0); + $2 = $94; + $95 = $nblocks; + $96 = $blocksize; + $97 = Math_imul($95, $96)|0; + $98 = $5; + $99 = (($98) - ($97))|0; + $5 = $99; + } + } + $100 = $5; + $101 = ($100|0)!=(0); + L19: do { + if ($101) { + while(1) { + $102 = $enc_fn; + $103 = $1; + $104 = ((($103)) + 496|0); + $105 = $1; + $106 = ((($105)) + 80|0); + $107 = (FUNCTION_TABLE_iiii[$102 & 127]($104,$tmp,$106)|0); + $nburn = $107; + $108 = $nburn; + $109 = $burn; + $110 = ($108>>>0)>($109>>>0); + $111 = $nburn; + $112 = $burn; + $113 = $110 ? $111 : $112; + $burn = $113; + $114 = $blocksize; + $i = $114; + while(1) { + $115 = $i; + $116 = ($115|0)>(0); + if (!($116)) { + break; + } + $117 = $i; + $118 = (($117) - 1)|0; + $119 = $1; + $120 = ((($119)) + 80|0); + $121 = (($120) + ($118)|0); + $122 = HEAP8[$121>>0]|0; + $123 = (($122) + 1)<<24>>24; + HEAP8[$121>>0] = $123; + $124 = $i; + $125 = (($124) - 1)|0; + $126 = $1; + $127 = ((($126)) + 80|0); + $128 = (($127) + ($125)|0); + $129 = HEAP8[$128>>0]|0; + $130 = $129&255; + $131 = ($130|0)!=(0); + if ($131) { + break; + } + $132 = $i; + $133 = (($132) + -1)|0; + $i = $133; + } + $134 = $blocksize; + $135 = $5; + $136 = ($134>>>0)<($135>>>0); + $137 = $blocksize; + $138 = $5; + $139 = $136 ? $137 : $138; + $n = $139; + $140 = $2; + $141 = $4; + $142 = $n; + _buf_xor_1851($140,$141,$tmp,$142); + $143 = $n; + $144 = $5; + $145 = (($144) - ($143))|0; + $5 = $145; + $146 = $n; + $147 = $2; + $148 = (($147) + ($146)|0); + $2 = $148; + $149 = $n; + $150 = $4; + $151 = (($150) + ($149)|0); + $4 = $151; + $152 = $5; + $153 = ($152|0)!=(0); + if (!($153)) { + break; + } + } + $154 = $blocksize; + $155 = $n; + $156 = (($154) - ($155))|0; + $157 = $1; + $158 = ((($157)) + 112|0); + HEAP32[$158>>2] = $156; + $159 = $1; + $160 = ((($159)) + 112|0); + $161 = HEAP32[$160>>2]|0; + $162 = ($161|0)!=(0); + if ($162) { + $163 = $1; + $164 = ((($163)) + 96|0); + $165 = $n; + $166 = (($164) + ($165)|0); + $167 = $n; + $168 = (($tmp) + ($167)|0); + $169 = $1; + $170 = ((($169)) + 112|0); + $171 = HEAP32[$170>>2]|0; + _buf_cpy_1852($166,$168,$171); + } + $_vptr = $tmp; + $_vlen = 16; + $_vset = 0; + $172 = $_vset; + $173 = $172&255; + $174 = $_vset_long; + $175 = $174; + HEAP32[$175>>2] = $173; + $176 = (($174) + 4)|0; + $177 = $176; + HEAP32[$177>>2] = 0; + while(1) { + $178 = $_vptr; + $179 = $178; + $180 = $179 & 7; + $181 = ($180|0)!=(0); + $182 = $_vlen; + $183 = ($182|0)!=(0); + $184 = $181 ? $183 : 0; + if (!($184)) { + break; + } + $185 = $_vset; + $186 = $_vptr; + HEAP8[$186>>0] = $185; + $187 = $_vptr; + $188 = ((($187)) + 1|0); + $_vptr = $188; + $189 = $_vlen; + $190 = (($189) + -1)|0; + $_vlen = $190; + } + $191 = $_vlen; + $192 = ($191>>>0)<(8); + if (!($192)) { + $193 = $_vset_long; + $194 = $193; + $195 = HEAP32[$194>>2]|0; + $196 = (($193) + 4)|0; + $197 = $196; + $198 = HEAP32[$197>>2]|0; + $199 = (___muldi3(($195|0),($198|0),16843009,16843009)|0); + $200 = tempRet0; + $201 = $_vset_long; + $202 = $201; + HEAP32[$202>>2] = $199; + $203 = (($201) + 4)|0; + $204 = $203; + HEAP32[$204>>2] = $200; + while(1) { + $205 = $_vptr; + $_vptr_long = $205; + $206 = $_vset_long; + $207 = $206; + $208 = HEAP32[$207>>2]|0; + $209 = (($206) + 4)|0; + $210 = $209; + $211 = HEAP32[$210>>2]|0; + $212 = $_vptr_long; + $213 = $212; + $214 = $213; + HEAP32[$214>>2] = $208; + $215 = (($213) + 4)|0; + $216 = $215; + HEAP32[$216>>2] = $211; + $217 = $_vlen; + $218 = (($217) - 8)|0; + $_vlen = $218; + $219 = $_vptr; + $220 = ((($219)) + 8|0); + $_vptr = $220; + $221 = $_vlen; + $222 = ($221>>>0)>=(8); + if (!($222)) { + break; + } + } + } + while(1) { + $223 = $_vlen; + $224 = ($223|0)!=(0); + if (!($224)) { + break L19; + } + $225 = $_vset; + $226 = $_vptr; + HEAP8[$226>>0] = $225; + $227 = $_vptr; + $228 = ((($227)) + 1|0); + $_vptr = $228; + $229 = $_vlen; + $230 = (($229) + -1)|0; + $_vlen = $230; + } + } + } while(0); + $231 = $burn; + $232 = ($231>>>0)>(0); + if ($232) { + $233 = $burn; + $234 = (($233) + 16)|0; + ___gcry_burn_stack($234); + ___gcry_burn_stack_dummy(); + } + $0 = 0; + $235 = $0; + STACKTOP = sp;return ($235|0); +} +function _buf_xor_1851($_dst,$_src1,$_src2,$len) { + $_dst = $_dst|0; + $_src1 = $_src1|0; + $_src2 = $_src2|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst = 0, $ldst = 0, $longmask = 0, $lsrc1 = 0, $lsrc2 = 0, $src1 = 0, $src2 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst; + $1 = $_src1; + $2 = $_src2; + $3 = $len; + $4 = $0; + $dst = $4; + $5 = $1; + $src1 = $5; + $6 = $2; + $src2 = $6; + $longmask = 3; + $7 = $dst; + $8 = $7; + $9 = $src1; + $10 = $9; + $11 = $8 | $10; + $12 = $src2; + $13 = $12; + $14 = $11 | $13; + $15 = $14 & 3; + $16 = ($15|0)!=(0); + if (!($16)) { + $17 = $dst; + $ldst = $17; + $18 = $src1; + $lsrc1 = $18; + $19 = $src2; + $lsrc2 = $19; + while(1) { + $20 = $3; + $21 = ($20>>>0)>=(4); + if (!($21)) { + break; + } + $22 = $lsrc1; + $23 = ((($22)) + 4|0); + $lsrc1 = $23; + $24 = HEAP32[$22>>2]|0; + $25 = $lsrc2; + $26 = ((($25)) + 4|0); + $lsrc2 = $26; + $27 = HEAP32[$25>>2]|0; + $28 = $24 ^ $27; + $29 = $ldst; + $30 = ((($29)) + 4|0); + $ldst = $30; + HEAP32[$29>>2] = $28; + $31 = $3; + $32 = (($31) - 4)|0; + $3 = $32; + } + $33 = $ldst; + $dst = $33; + $34 = $lsrc1; + $src1 = $34; + $35 = $lsrc2; + $src2 = $35; + } + while(1) { + $36 = $3; + $37 = ($36|0)!=(0); + if (!($37)) { + break; + } + $38 = $src1; + $39 = ((($38)) + 1|0); + $src1 = $39; + $40 = HEAP8[$38>>0]|0; + $41 = $40&255; + $42 = $src2; + $43 = ((($42)) + 1|0); + $src2 = $43; + $44 = HEAP8[$42>>0]|0; + $45 = $44&255; + $46 = $41 ^ $45; + $47 = $46&255; + $48 = $dst; + $49 = ((($48)) + 1|0); + $dst = $49; + HEAP8[$48>>0] = $47; + $50 = $3; + $51 = (($50) + -1)|0; + $3 = $51; + } + STACKTOP = sp;return; +} +function _buf_cpy_1852($_dst,$_src,$len) { + $_dst = $_dst|0; + $_src = $_src|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst = 0, $ldst = 0, $longmask = 0, $lsrc = 0, $src = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst; + $1 = $_src; + $2 = $len; + $3 = $0; + $dst = $3; + $4 = $1; + $src = $4; + $longmask = 3; + $5 = $dst; + $6 = $5; + $7 = $src; + $8 = $7; + $9 = $6 | $8; + $10 = $9 & 3; + $11 = ($10|0)!=(0); + if (!($11)) { + $12 = $dst; + $ldst = $12; + $13 = $src; + $lsrc = $13; + while(1) { + $14 = $2; + $15 = ($14>>>0)>=(4); + if (!($15)) { + break; + } + $16 = $lsrc; + $17 = ((($16)) + 4|0); + $lsrc = $17; + $18 = HEAP32[$16>>2]|0; + $19 = $ldst; + $20 = ((($19)) + 4|0); + $ldst = $20; + HEAP32[$19>>2] = $18; + $21 = $2; + $22 = (($21) - 4)|0; + $2 = $22; + } + $23 = $ldst; + $dst = $23; + $24 = $lsrc; + $src = $24; + } + while(1) { + $25 = $2; + $26 = ($25|0)!=(0); + if (!($26)) { + break; + } + $27 = $src; + $28 = ((($27)) + 1|0); + $src = $28; + $29 = HEAP8[$27>>0]|0; + $30 = $dst; + $31 = ((($30)) + 1|0); + $dst = $31; + HEAP8[$30>>0] = $29; + $32 = $2; + $33 = (($32) + -1)|0; + $2 = $33; + } + STACKTOP = sp;return; +} +function __gcry_cipher_gcm_encrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $err = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $c; + $2 = $outbuf; + $3 = $outbuflen; + $4 = $inbuf; + $5 = $inbuflen; + $6 = $1; + $7 = ((($6)) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = ((($8)) + 20|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(16); + if ($11) { + $0 = 12; + $98 = $0; + STACKTOP = sp;return ($98|0); + } + $12 = $3; + $13 = $5; + $14 = ($12>>>0)<($13>>>0); + if ($14) { + $0 = 200; + $98 = $0; + STACKTOP = sp;return ($98|0); + } + $15 = $1; + $16 = ((($15)) + 128|0); + $17 = ((($16)) + 68|0); + $18 = HEAP8[$17>>0]|0; + $19 = ($18&255) >>> 2; + $20 = $19 & 1; + $21 = $20&255; + $22 = ($21|0)!=(0); + if ($22) { + $0 = 139; + $98 = $0; + STACKTOP = sp;return ($98|0); + } + $23 = $1; + $24 = ((($23)) + 56|0); + $25 = HEAP8[$24>>0]|0; + $26 = ($25&255) >>> 2; + $27 = $26 & 1; + $28 = $27&255; + $29 = ($28|0)!=(0); + if (!($29)) { + $30 = $1; + $31 = ((($30)) + 128|0); + $32 = ((($31)) + 68|0); + $33 = HEAP8[$32>>0]|0; + $34 = $33 & 1; + $35 = $34&255; + $36 = ($35|0)!=(0); + if (!($36)) { + $37 = $1; + $38 = ((($37)) + 56|0); + $39 = HEAP8[$38>>0]|0; + $40 = ($39&255) >>> 1; + $41 = $40 & 1; + $42 = $41&255; + $43 = ($42|0)!=(0); + if (!($43)) { + $44 = $1; + (__gcry_cipher_gcm_setiv($44,76475,16)|0); + } + $45 = $1; + $46 = ((($45)) + 128|0); + $47 = ((($46)) + 68|0); + $48 = HEAP8[$47>>0]|0; + $49 = ($48&255) >>> 3; + $50 = $49 & 1; + $51 = $50&255; + $52 = ($51|0)!=(0); + if ($52) { + $0 = 156; + $98 = $0; + STACKTOP = sp;return ($98|0); + } + $53 = $1; + $54 = ((($53)) + 128|0); + $55 = ((($54)) + 68|0); + $56 = HEAP8[$55>>0]|0; + $57 = ($56&255) >>> 1; + $58 = $57 & 1; + $59 = $58&255; + $60 = ($59|0)!=(0); + if (!($60)) { + $61 = $1; + $62 = $1; + $63 = ((($62)) + 128|0); + _do_ghash_buf($61,$63,0,0,1); + $64 = $1; + $65 = ((($64)) + 128|0); + $66 = ((($65)) + 68|0); + $67 = HEAP8[$66>>0]|0; + $68 = $67 & -3; + $69 = $68 | 2; + HEAP8[$66>>0] = $69; + } + $70 = $1; + $71 = ((($70)) + 128|0); + $72 = ((($71)) + 44|0); + $73 = $5; + _gcm_bytecounter_add($72,$73); + $74 = $1; + $75 = ((($74)) + 128|0); + $76 = ((($75)) + 44|0); + $77 = (_gcm_check_datalen($76)|0); + $78 = ($77|0)!=(0); + $79 = $1; + if (!($78)) { + $80 = ((($79)) + 128|0); + $81 = ((($80)) + 68|0); + $82 = HEAP8[$81>>0]|0; + $83 = $82 & -5; + $84 = $83 | 4; + HEAP8[$81>>0] = $84; + $0 = 139; + $98 = $0; + STACKTOP = sp;return ($98|0); + } + $85 = $2; + $86 = $3; + $87 = $4; + $88 = $5; + $89 = (__gcry_cipher_ctr_encrypt($79,$85,$86,$87,$88)|0); + $err = $89; + $90 = $err; + $91 = ($90|0)!=(0); + if ($91) { + $92 = $err; + $0 = $92; + $98 = $0; + STACKTOP = sp;return ($98|0); + } else { + $93 = $1; + $94 = $1; + $95 = ((($94)) + 128|0); + $96 = $2; + $97 = $5; + _do_ghash_buf($93,$95,$96,$97,0); + $0 = 0; + $98 = $0; + STACKTOP = sp;return ($98|0); + } + } + } + $0 = 156; + $98 = $0; + STACKTOP = sp;return ($98|0); +} +function __gcry_cipher_gcm_setiv($c,$iv,$ivlen) { + $c = $c|0; + $iv = $iv|0; + $ivlen = $ivlen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $c; + $1 = $iv; + $2 = $ivlen; + $3 = $0; + $4 = ((($3)) + 56|0); + $5 = HEAP8[$4>>0]|0; + $6 = $5 & -3; + HEAP8[$4>>0] = $6; + $7 = $0; + $8 = ((($7)) + 56|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9 & -5; + HEAP8[$8>>0] = $10; + $11 = $0; + $12 = ((($11)) + 128|0); + $13 = ((($12)) + 68|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14 & -9; + HEAP8[$13>>0] = $15; + $16 = (__gcry_fips_mode()|0); + $17 = ($16|0)!=(0); + if (!($17)) { + $24 = $0; + $25 = $1; + $26 = $2; + $27 = (__gcry_cipher_gcm_initiv($24,$25,$26)|0); + STACKTOP = sp;return ($27|0); + } + $18 = $0; + $19 = ((($18)) + 128|0); + $20 = ((($19)) + 68|0); + $21 = HEAP8[$20>>0]|0; + $22 = $21 & -9; + $23 = $22 | 8; + HEAP8[$20>>0] = $23; + $24 = $0; + $25 = $1; + $26 = $2; + $27 = (__gcry_cipher_gcm_initiv($24,$25,$26)|0); + STACKTOP = sp;return ($27|0); +} +function __gcry_cipher_gcm_initiv($c,$iv,$ivlen) { + $c = $c|0; + $iv = $iv|0; + $ivlen = $ivlen|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $_vlen = 0, $_vlen2 = 0, $_vptr = 0, $_vptr1 = 0, $_vptr_long = 0, $_vptr_long5 = 0, $_vset = 0, $_vset3 = 0, $_vset_long = 0, $_vset_long4 = 0, $bitlengths = 0, $iv_bytes = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $iv_bytes = sp + 56|0; + $bitlengths = sp + 40|0; + $_vset_long = sp + 8|0; + $_vset_long4 = sp; + $1 = $c; + $2 = $iv; + $3 = $ivlen; + $4 = $1; + $5 = ((($4)) + 128|0); + $6 = ((($5)) + 36|0); + ;HEAP32[$6>>2]=0|0;HEAP32[$6+4>>2]=0|0; + $7 = $1; + $8 = ((($7)) + 128|0); + $9 = ((($8)) + 44|0); + ;HEAP32[$9>>2]=0|0;HEAP32[$9+4>>2]=0|0; + $10 = $1; + $11 = ((($10)) + 128|0); + ;HEAP32[$11>>2]=0|0;HEAP32[$11+4>>2]=0|0;HEAP32[$11+8>>2]=0|0;HEAP32[$11+12>>2]=0|0; + $12 = $1; + $13 = ((($12)) + 128|0); + $14 = ((($13)) + 68|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15 & -5; + HEAP8[$14>>0] = $16; + $17 = $1; + $18 = ((($17)) + 128|0); + $19 = ((($18)) + 68|0); + $20 = HEAP8[$19>>0]|0; + $21 = $20 & -2; + HEAP8[$19>>0] = $21; + $22 = $1; + $23 = ((($22)) + 128|0); + $24 = ((($23)) + 68|0); + $25 = HEAP8[$24>>0]|0; + $26 = $25 & -3; + HEAP8[$24>>0] = $26; + $27 = $3; + $28 = ($27|0)==(0); + if ($28) { + $0 = 139; + $222 = $0; + STACKTOP = sp;return ($222|0); + } + $29 = $3; + $30 = ($29|0)!=(12); + L5: do { + if ($30) { + ;HEAP32[$iv_bytes>>2]=0|0;HEAP32[$iv_bytes+4>>2]=0|0; + $31 = $1; + $32 = ((($31)) + 80|0); + ;HEAP32[$32>>2]=0|0;HEAP32[$32+4>>2]=0|0;HEAP32[$32+8>>2]=0|0;HEAP32[$32+12>>2]=0|0; + $33 = $3; + _gcm_bytecounter_add($iv_bytes,$33); + $34 = (_gcm_check_aadlen_or_ivlen($iv_bytes)|0); + $35 = ($34|0)!=(0); + $36 = $1; + if (!($35)) { + $37 = ((($36)) + 128|0); + $38 = ((($37)) + 68|0); + $39 = HEAP8[$38>>0]|0; + $40 = $39 & -5; + $41 = $40 | 4; + HEAP8[$38>>0] = $41; + $0 = 139; + $222 = $0; + STACKTOP = sp;return ($222|0); + } + $42 = $1; + $43 = ((($42)) + 80|0); + $44 = $2; + $45 = $3; + _do_ghash_buf($36,$43,$44,$45,1); + $46 = HEAP32[$iv_bytes>>2]|0; + $47 = $46 << 3; + $48 = (_llvm_bswap_i32(($47|0))|0); + $49 = ((($bitlengths)) + 8|0); + $50 = ((($49)) + 4|0); + HEAP32[$50>>2] = $48; + $51 = HEAP32[$iv_bytes>>2]|0; + $52 = $51 >>> 29; + $53 = ((($iv_bytes)) + 4|0); + $54 = HEAP32[$53>>2]|0; + $55 = $54 << 3; + $56 = $52 | $55; + $57 = (_llvm_bswap_i32(($56|0))|0); + $58 = ((($bitlengths)) + 8|0); + HEAP32[$58>>2] = $57; + $59 = ((($bitlengths)) + 4|0); + HEAP32[$59>>2] = 0; + HEAP32[$bitlengths>>2] = 0; + $60 = $1; + $61 = $1; + $62 = ((($61)) + 80|0); + _do_ghash_buf($60,$62,$bitlengths,16,1); + $_vptr = $iv_bytes; + $_vlen = 8; + $_vset = 0; + $63 = $_vset; + $64 = $63&255; + $65 = $_vset_long; + $66 = $65; + HEAP32[$66>>2] = $64; + $67 = (($65) + 4)|0; + $68 = $67; + HEAP32[$68>>2] = 0; + while(1) { + $69 = $_vptr; + $70 = $69; + $71 = $70 & 7; + $72 = ($71|0)!=(0); + $73 = $_vlen; + $74 = ($73|0)!=(0); + $75 = $72 ? $74 : 0; + if (!($75)) { + break; + } + $76 = $_vset; + $77 = $_vptr; + HEAP8[$77>>0] = $76; + $78 = $_vptr; + $79 = ((($78)) + 1|0); + $_vptr = $79; + $80 = $_vlen; + $81 = (($80) + -1)|0; + $_vlen = $81; + } + $82 = $_vlen; + $83 = ($82>>>0)<(8); + if (!($83)) { + $84 = $_vset_long; + $85 = $84; + $86 = HEAP32[$85>>2]|0; + $87 = (($84) + 4)|0; + $88 = $87; + $89 = HEAP32[$88>>2]|0; + $90 = (___muldi3(($86|0),($89|0),16843009,16843009)|0); + $91 = tempRet0; + $92 = $_vset_long; + $93 = $92; + HEAP32[$93>>2] = $90; + $94 = (($92) + 4)|0; + $95 = $94; + HEAP32[$95>>2] = $91; + while(1) { + $96 = $_vptr; + $_vptr_long = $96; + $97 = $_vset_long; + $98 = $97; + $99 = HEAP32[$98>>2]|0; + $100 = (($97) + 4)|0; + $101 = $100; + $102 = HEAP32[$101>>2]|0; + $103 = $_vptr_long; + $104 = $103; + $105 = $104; + HEAP32[$105>>2] = $99; + $106 = (($104) + 4)|0; + $107 = $106; + HEAP32[$107>>2] = $102; + $108 = $_vlen; + $109 = (($108) - 8)|0; + $_vlen = $109; + $110 = $_vptr; + $111 = ((($110)) + 8|0); + $_vptr = $111; + $112 = $_vlen; + $113 = ($112>>>0)>=(8); + if (!($113)) { + break; + } + } + } + while(1) { + $114 = $_vlen; + $115 = ($114|0)!=(0); + if (!($115)) { + break; + } + $116 = $_vset; + $117 = $_vptr; + HEAP8[$117>>0] = $116; + $118 = $_vptr; + $119 = ((($118)) + 1|0); + $_vptr = $119; + $120 = $_vlen; + $121 = (($120) + -1)|0; + $_vlen = $121; + } + $_vptr1 = $bitlengths; + $_vlen2 = 16; + $_vset3 = 0; + $122 = $_vset3; + $123 = $122&255; + $124 = $_vset_long4; + $125 = $124; + HEAP32[$125>>2] = $123; + $126 = (($124) + 4)|0; + $127 = $126; + HEAP32[$127>>2] = 0; + while(1) { + $128 = $_vptr1; + $129 = $128; + $130 = $129 & 7; + $131 = ($130|0)!=(0); + $132 = $_vlen2; + $133 = ($132|0)!=(0); + $134 = $131 ? $133 : 0; + if (!($134)) { + break; + } + $135 = $_vset3; + $136 = $_vptr1; + HEAP8[$136>>0] = $135; + $137 = $_vptr1; + $138 = ((($137)) + 1|0); + $_vptr1 = $138; + $139 = $_vlen2; + $140 = (($139) + -1)|0; + $_vlen2 = $140; + } + $141 = $_vlen2; + $142 = ($141>>>0)<(8); + if (!($142)) { + $143 = $_vset_long4; + $144 = $143; + $145 = HEAP32[$144>>2]|0; + $146 = (($143) + 4)|0; + $147 = $146; + $148 = HEAP32[$147>>2]|0; + $149 = (___muldi3(($145|0),($148|0),16843009,16843009)|0); + $150 = tempRet0; + $151 = $_vset_long4; + $152 = $151; + HEAP32[$152>>2] = $149; + $153 = (($151) + 4)|0; + $154 = $153; + HEAP32[$154>>2] = $150; + while(1) { + $155 = $_vptr1; + $_vptr_long5 = $155; + $156 = $_vset_long4; + $157 = $156; + $158 = HEAP32[$157>>2]|0; + $159 = (($156) + 4)|0; + $160 = $159; + $161 = HEAP32[$160>>2]|0; + $162 = $_vptr_long5; + $163 = $162; + $164 = $163; + HEAP32[$164>>2] = $158; + $165 = (($163) + 4)|0; + $166 = $165; + HEAP32[$166>>2] = $161; + $167 = $_vlen2; + $168 = (($167) - 8)|0; + $_vlen2 = $168; + $169 = $_vptr1; + $170 = ((($169)) + 8|0); + $_vptr1 = $170; + $171 = $_vlen2; + $172 = ($171>>>0)>=(8); + if (!($172)) { + break; + } + } + } + while(1) { + $173 = $_vlen2; + $174 = ($173|0)!=(0); + if (!($174)) { + break L5; + } + $175 = $_vset3; + $176 = $_vptr1; + HEAP8[$176>>0] = $175; + $177 = $_vptr1; + $178 = ((($177)) + 1|0); + $_vptr1 = $178; + $179 = $_vlen2; + $180 = (($179) + -1)|0; + $_vlen2 = $180; + } + } else { + $181 = $1; + $182 = ((($181)) + 80|0); + $183 = $2; + $184 = $3; + _memcpy(($182|0),($183|0),($184|0))|0; + $185 = $1; + $186 = ((($185)) + 80|0); + $187 = ((($186)) + 14|0); + HEAP8[$187>>0] = 0; + $188 = $1; + $189 = ((($188)) + 80|0); + $190 = ((($189)) + 13|0); + HEAP8[$190>>0] = 0; + $191 = $1; + $192 = ((($191)) + 80|0); + $193 = ((($192)) + 12|0); + HEAP8[$193>>0] = 0; + $194 = $1; + $195 = ((($194)) + 80|0); + $196 = ((($195)) + 15|0); + HEAP8[$196>>0] = 1; + } + } while(0); + $197 = $1; + $198 = ((($197)) + 12|0); + $199 = HEAP32[$198>>2]|0; + $200 = ((($199)) + 36|0); + $201 = HEAP32[$200>>2]|0; + $202 = $1; + $203 = ((($202)) + 496|0); + $204 = $1; + $205 = ((($204)) + 128|0); + $206 = ((($205)) + 52|0); + $207 = $1; + $208 = ((($207)) + 80|0); + (FUNCTION_TABLE_iiii[$201 & 127]($203,$206,$208)|0); + $209 = $1; + $210 = ((($209)) + 80|0); + (_gcm_add32_be128($210,1)|0); + $211 = $1; + $212 = ((($211)) + 112|0); + HEAP32[$212>>2] = 0; + $213 = $1; + $214 = ((($213)) + 56|0); + $215 = HEAP8[$214>>0]|0; + $216 = $215 & -3; + $217 = $216 | 2; + HEAP8[$214>>0] = $217; + $218 = $1; + $219 = ((($218)) + 56|0); + $220 = HEAP8[$219>>0]|0; + $221 = $220 & -5; + HEAP8[$219>>0] = $221; + $0 = 0; + $222 = $0; + STACKTOP = sp;return ($222|0); +} +function _gcm_bytecounter_add($ctr,$add) { + $ctr = $ctr|0; + $add = $add|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctr; + $1 = $add; + $2 = $1; + $3 = $0; + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + ($2))|0; + HEAP32[$3>>2] = $5; + $6 = $0; + $7 = HEAP32[$6>>2]|0; + $8 = $1; + $9 = ($7>>>0)>=($8>>>0); + if ($9) { + STACKTOP = sp;return; + } + $10 = $0; + $11 = ((($10)) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + 1)|0; + HEAP32[$11>>2] = $13; + STACKTOP = sp;return; +} +function _gcm_check_aadlen_or_ivlen($ctr) { + $ctr = $ctr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $ctr; + $2 = $1; + $3 = ((($2)) + 4|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4>>>0)>(536870911); + do { + if ($5) { + $0 = 0; + } else { + $6 = $1; + $7 = ((($6)) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8>>>0)<(536870911); + if ($9) { + $0 = 1; + break; + } + $10 = $1; + $11 = HEAP32[$10>>2]|0; + $12 = ($11>>>0)<=(4294967295); + if ($12) { + $0 = 1; + break; + } else { + $0 = 0; + break; + } + } + } while(0); + $13 = $0; + STACKTOP = sp;return ($13|0); +} +function _do_ghash_buf($c,$hash,$buf,$buflen,$do_padding) { + $c = $c|0; + $hash = $hash|0; + $buf = $buf|0; + $buflen = $buflen|0; + $do_padding = $do_padding|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $blocksize = 0, $burn = 0, $ghash_fn = 0, $n = 0, $nblocks = 0, $or$cond = 0, $or$cond3 = 0, $unused = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $c; + $1 = $hash; + $2 = $buf; + $3 = $buflen; + $4 = $do_padding; + $blocksize = 16; + $5 = $0; + $6 = ((($5)) + 128|0); + $7 = ((($6)) + 32|0); + $8 = HEAP32[$7>>2]|0; + $unused = $8; + $9 = $0; + $10 = ((($9)) + 128|0); + $11 = ((($10)) + 96|0); + $12 = HEAP32[$11>>2]|0; + $ghash_fn = $12; + $burn = 0; + $13 = $3; + $14 = ($13|0)==(0); + if ($14) { + $15 = $unused; + $16 = ($15|0)!=(0); + $17 = $4; + $18 = ($17|0)!=(0); + $or$cond = $16 & $18; + if (!($or$cond)) { + STACKTOP = sp;return; + } + } + L4: while(1) { + $19 = $3; + $20 = $unused; + $21 = (($19) + ($20))|0; + $22 = $blocksize; + $23 = ($21>>>0)<($22>>>0); + $24 = $unused; + $25 = ($24>>>0)>(0); + $or$cond3 = $23 | $25; + if ($or$cond3) { + $26 = $blocksize; + $27 = $unused; + $28 = (($26) - ($27))|0; + $n = $28; + $29 = $n; + $30 = $3; + $31 = ($29>>>0)<($30>>>0); + $32 = $n; + $33 = $3; + $34 = $31 ? $32 : $33; + $n = $34; + $35 = $unused; + $36 = $0; + $37 = ((($36)) + 128|0); + $38 = ((($37)) + 16|0); + $39 = (($38) + ($35)|0); + $40 = $2; + $41 = $n; + _buf_cpy_1857($39,$40,$41); + $42 = $n; + $43 = $unused; + $44 = (($43) + ($42))|0; + $unused = $44; + $45 = $n; + $46 = $2; + $47 = (($46) + ($45)|0); + $2 = $47; + $48 = $n; + $49 = $3; + $50 = (($49) - ($48))|0; + $3 = $50; + } + $51 = $3; + $52 = ($51|0)!=(0); + L9: do { + if (!($52)) { + $53 = $4; + $54 = ($53|0)!=(0); + if (!($54)) { + break L4; + } + while(1) { + $55 = $unused; + $56 = $blocksize; + $57 = ($55>>>0)<($56>>>0); + if (!($57)) { + break L9; + } + $58 = $unused; + $59 = (($58) + 1)|0; + $unused = $59; + $60 = $0; + $61 = ((($60)) + 128|0); + $62 = ((($61)) + 16|0); + $63 = (($62) + ($58)|0); + HEAP8[$63>>0] = 0; + } + } + } while(0); + $64 = $unused; + $65 = ($64>>>0)>(0); + if ($65) { + $66 = $unused; + $67 = $blocksize; + $68 = ($66|0)==($67|0); + if (!($68)) { + label = 11; + break; + } + $69 = $ghash_fn; + $70 = $0; + $71 = $1; + $72 = $0; + $73 = ((($72)) + 128|0); + $74 = ((($73)) + 16|0); + $75 = (FUNCTION_TABLE_iiiii[$69 & 127]($70,$71,$74,1)|0); + $burn = $75; + $unused = 0; + } + $76 = $3; + $77 = $blocksize; + $78 = (($76>>>0) / ($77>>>0))&-1; + $nblocks = $78; + $79 = $nblocks; + $80 = ($79|0)!=(0); + if ($80) { + $81 = $ghash_fn; + $82 = $0; + $83 = $1; + $84 = $2; + $85 = $nblocks; + $86 = (FUNCTION_TABLE_iiiii[$81 & 127]($82,$83,$84,$85)|0); + $burn = $86; + $87 = $blocksize; + $88 = $nblocks; + $89 = Math_imul($87, $88)|0; + $90 = $2; + $91 = (($90) + ($89)|0); + $2 = $91; + $92 = $blocksize; + $93 = $nblocks; + $94 = Math_imul($92, $93)|0; + $95 = $3; + $96 = (($95) - ($94))|0; + $3 = $96; + } + $97 = $3; + $98 = ($97>>>0)>(0); + if (!($98)) { + break; + } + } + if ((label|0) == 11) { + __gcry_assert_failed(46898,46918,499,46931); + // unreachable; + } + $99 = $unused; + $100 = $0; + $101 = ((($100)) + 128|0); + $102 = ((($101)) + 32|0); + HEAP32[$102>>2] = $99; + $103 = $burn; + $104 = ($103|0)!=(0); + if (!($104)) { + STACKTOP = sp;return; + } + $105 = $burn; + ___gcry_burn_stack($105); + ___gcry_burn_stack_dummy(); + STACKTOP = sp;return; +} +function _buf_cpy_1857($_dst,$_src,$len) { + $_dst = $_dst|0; + $_src = $_src|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst = 0, $ldst = 0, $longmask = 0, $lsrc = 0, $src = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst; + $1 = $_src; + $2 = $len; + $3 = $0; + $dst = $3; + $4 = $1; + $src = $4; + $longmask = 3; + $5 = $dst; + $6 = $5; + $7 = $src; + $8 = $7; + $9 = $6 | $8; + $10 = $9 & 3; + $11 = ($10|0)!=(0); + if (!($11)) { + $12 = $dst; + $ldst = $12; + $13 = $src; + $lsrc = $13; + while(1) { + $14 = $2; + $15 = ($14>>>0)>=(4); + if (!($15)) { + break; + } + $16 = $lsrc; + $17 = ((($16)) + 4|0); + $lsrc = $17; + $18 = HEAP32[$16>>2]|0; + $19 = $ldst; + $20 = ((($19)) + 4|0); + $ldst = $20; + HEAP32[$19>>2] = $18; + $21 = $2; + $22 = (($21) - 4)|0; + $2 = $22; + } + $23 = $ldst; + $dst = $23; + $24 = $lsrc; + $src = $24; + } + while(1) { + $25 = $2; + $26 = ($25|0)!=(0); + if (!($26)) { + break; + } + $27 = $src; + $28 = ((($27)) + 1|0); + $src = $28; + $29 = HEAP8[$27>>0]|0; + $30 = $dst; + $31 = ((($30)) + 1|0); + $dst = $31; + HEAP8[$30>>0] = $29; + $32 = $2; + $33 = (($32) + -1)|0; + $2 = $33; + } + STACKTOP = sp;return; +} +function _gcm_add32_be128($ctr,$add) { + $ctr = $ctr|0; + $add = $add|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $blocksize = 0, $pval = 0, $val = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctr; + $1 = $add; + $blocksize = 16; + $2 = $0; + $3 = ((($2)) + 16|0); + $4 = ((($3)) + -4|0); + $pval = $4; + $5 = $pval; + $6 = HEAP32[$5>>2]|0; + $7 = (_llvm_bswap_i32(($6|0))|0); + $8 = $1; + $9 = (($7) + ($8))|0; + $val = $9; + $10 = $val; + $11 = (_llvm_bswap_i32(($10|0))|0); + $12 = $pval; + HEAP32[$12>>2] = $11; + $13 = $val; + STACKTOP = sp;return ($13|0); +} +function _gcm_check_datalen($ctr) { + $ctr = $ctr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $ctr; + $2 = $1; + $3 = ((($2)) + 4|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4>>>0)>(15); + do { + if ($5) { + $0 = 0; + } else { + $6 = $1; + $7 = ((($6)) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8>>>0)<(15); + if ($9) { + $0 = 1; + break; + } + $10 = $1; + $11 = HEAP32[$10>>2]|0; + $12 = ($11>>>0)<=(4294967264); + if ($12) { + $0 = 1; + break; + } else { + $0 = 0; + break; + } + } + } while(0); + $13 = $0; + STACKTOP = sp;return ($13|0); +} +function __gcry_cipher_gcm_decrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $c; + $2 = $outbuf; + $3 = $outbuflen; + $4 = $inbuf; + $5 = $inbuflen; + $6 = $1; + $7 = ((($6)) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = ((($8)) + 20|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(16); + if ($11) { + $0 = 12; + $87 = $0; + STACKTOP = sp;return ($87|0); + } + $12 = $3; + $13 = $5; + $14 = ($12>>>0)<($13>>>0); + if ($14) { + $0 = 200; + $87 = $0; + STACKTOP = sp;return ($87|0); + } + $15 = $1; + $16 = ((($15)) + 128|0); + $17 = ((($16)) + 68|0); + $18 = HEAP8[$17>>0]|0; + $19 = ($18&255) >>> 2; + $20 = $19 & 1; + $21 = $20&255; + $22 = ($21|0)!=(0); + if ($22) { + $0 = 139; + $87 = $0; + STACKTOP = sp;return ($87|0); + } + $23 = $1; + $24 = ((($23)) + 56|0); + $25 = HEAP8[$24>>0]|0; + $26 = ($25&255) >>> 2; + $27 = $26 & 1; + $28 = $27&255; + $29 = ($28|0)!=(0); + if (!($29)) { + $30 = $1; + $31 = ((($30)) + 128|0); + $32 = ((($31)) + 68|0); + $33 = HEAP8[$32>>0]|0; + $34 = $33 & 1; + $35 = $34&255; + $36 = ($35|0)!=(0); + if (!($36)) { + $37 = $1; + $38 = ((($37)) + 56|0); + $39 = HEAP8[$38>>0]|0; + $40 = ($39&255) >>> 1; + $41 = $40 & 1; + $42 = $41&255; + $43 = ($42|0)!=(0); + if (!($43)) { + $44 = $1; + (__gcry_cipher_gcm_setiv($44,76491,16)|0); + } + $45 = $1; + $46 = ((($45)) + 128|0); + $47 = ((($46)) + 68|0); + $48 = HEAP8[$47>>0]|0; + $49 = ($48&255) >>> 1; + $50 = $49 & 1; + $51 = $50&255; + $52 = ($51|0)!=(0); + if (!($52)) { + $53 = $1; + $54 = $1; + $55 = ((($54)) + 128|0); + _do_ghash_buf($53,$55,0,0,1); + $56 = $1; + $57 = ((($56)) + 128|0); + $58 = ((($57)) + 68|0); + $59 = HEAP8[$58>>0]|0; + $60 = $59 & -3; + $61 = $60 | 2; + HEAP8[$58>>0] = $61; + } + $62 = $1; + $63 = ((($62)) + 128|0); + $64 = ((($63)) + 44|0); + $65 = $5; + _gcm_bytecounter_add($64,$65); + $66 = $1; + $67 = ((($66)) + 128|0); + $68 = ((($67)) + 44|0); + $69 = (_gcm_check_datalen($68)|0); + $70 = ($69|0)!=(0); + $71 = $1; + if ($70) { + $77 = $1; + $78 = ((($77)) + 128|0); + $79 = $4; + $80 = $5; + _do_ghash_buf($71,$78,$79,$80,0); + $81 = $1; + $82 = $2; + $83 = $3; + $84 = $4; + $85 = $5; + $86 = (__gcry_cipher_ctr_encrypt($81,$82,$83,$84,$85)|0); + $0 = $86; + $87 = $0; + STACKTOP = sp;return ($87|0); + } else { + $72 = ((($71)) + 128|0); + $73 = ((($72)) + 68|0); + $74 = HEAP8[$73>>0]|0; + $75 = $74 & -5; + $76 = $75 | 4; + HEAP8[$73>>0] = $76; + $0 = 139; + $87 = $0; + STACKTOP = sp;return ($87|0); + } + } + } + $0 = 156; + $87 = $0; + STACKTOP = sp;return ($87|0); +} +function __gcry_cipher_gcm_setkey($c) { + $c = $c|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $c; + $1 = $0; + $2 = ((($1)) + 128|0); + $3 = ((($2)) + 80|0); + ;HEAP32[$3>>2]=0|0;HEAP32[$3+4>>2]=0|0;HEAP32[$3+8>>2]=0|0;HEAP32[$3+12>>2]=0|0; + $4 = $0; + $5 = ((($4)) + 12|0); + $6 = HEAP32[$5>>2]|0; + $7 = ((($6)) + 36|0); + $8 = HEAP32[$7>>2]|0; + $9 = $0; + $10 = ((($9)) + 496|0); + $11 = $0; + $12 = ((($11)) + 128|0); + $13 = ((($12)) + 80|0); + $14 = $0; + $15 = ((($14)) + 128|0); + $16 = ((($15)) + 80|0); + (FUNCTION_TABLE_iiii[$8 & 127]($10,$13,$16)|0); + $17 = $0; + _setupM($17); + STACKTOP = sp;return; +} +function _setupM($c) { + $c = $c|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $c; + $1 = $0; + $2 = ((($1)) + 128|0); + $3 = ((($2)) + 96|0); + HEAP32[$3>>2] = 78; + $4 = $0; + $5 = ((($4)) + 128|0); + $6 = ((($5)) + 80|0); + $7 = $0; + $8 = ((($7)) + 128|0); + $9 = ((($8)) + 100|0); + _do_fillM($6,$9); + STACKTOP = sp;return; +} +function _ghash_internal($c,$result,$buf,$nblocks) { + $c = $c|0; + $result = $result|0; + $buf = $buf|0; + $nblocks = $nblocks|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $blocksize = 0, $burn = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $c; + $1 = $result; + $2 = $buf; + $3 = $nblocks; + $blocksize = 16; + $burn = 0; + while(1) { + $4 = $3; + $5 = ($4|0)!=(0); + if (!($5)) { + break; + } + $6 = $1; + $7 = $2; + $8 = $0; + $9 = ((($8)) + 128|0); + $10 = ((($9)) + 100|0); + $11 = (_do_ghash($6,$7,$10)|0); + $burn = $11; + $12 = $2; + $13 = ((($12)) + 16|0); + $2 = $13; + $14 = $3; + $15 = (($14) + -1)|0; + $3 = $15; + } + $16 = $burn; + $17 = $burn; + $18 = ($17|0)!=(0); + $19 = $18 ? 20 : 0; + $20 = (($16) + ($19))|0; + STACKTOP = sp;return ($20|0); +} +function _do_ghash($result,$buf,$gcmM) { + $result = $result|0; + $buf = $buf|0; + $gcmM = $gcmM|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $M = 0, $T = 0, $V = 0, $i = 0, $m = 0, $tmp = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $V = sp + 64|0; + $tmp = sp + 32|0; + $T = sp + 4|0; + $0 = $result; + $1 = $buf; + $2 = $gcmM; + $3 = $0; + $4 = $1; + _buf_xor_1866($V,$3,$4,16); + $i = 15; + $5 = $i; + $6 = (($V) + ($5)|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $v = $8; + $9 = $v; + $10 = $9 & 15; + $11 = $10<<2; + $12 = $2; + $13 = (($12) + ($11<<2)|0); + $M = $13; + $14 = $v; + $15 = $14 & 240; + $16 = $15 >>> 4; + $v = $16; + $17 = $v; + $18 = $17<<2; + $19 = $2; + $20 = (($19) + ($18<<2)|0); + $m = $20; + $21 = $i; + $22 = (($21) + -1)|0; + $i = $22; + $23 = (($V) + ($22)|0); + $24 = HEAP8[$23>>0]|0; + $25 = $24&255; + $v = $25; + $26 = $M; + $27 = HEAP32[$26>>2]|0; + $28 = $27 >>> 4; + $29 = $M; + $30 = ((($29)) + 12|0); + $31 = HEAP32[$30>>2]|0; + $32 = $31 << 4; + $33 = $32 & 240; + $34 = (17850 + ($33<<1)|0); + $35 = HEAP16[$34>>1]|0; + $36 = $35&65535; + $37 = (_bitshift64Shl(($36|0),0,16)|0); + $38 = tempRet0; + $39 = $28 ^ $37; + $40 = $m; + $41 = HEAP32[$40>>2]|0; + $42 = $39 ^ $41; + HEAP32[$tmp>>2] = $42; + $43 = $M; + $44 = ((($43)) + 4|0); + $45 = HEAP32[$44>>2]|0; + $46 = $45 >>> 4; + $47 = $M; + $48 = HEAP32[$47>>2]|0; + $49 = $48 << 28; + $50 = $46 ^ $49; + $51 = $m; + $52 = ((($51)) + 4|0); + $53 = HEAP32[$52>>2]|0; + $54 = $50 ^ $53; + $55 = ((($tmp)) + 4|0); + HEAP32[$55>>2] = $54; + $56 = $M; + $57 = ((($56)) + 8|0); + $58 = HEAP32[$57>>2]|0; + $59 = $58 >>> 4; + $60 = $M; + $61 = ((($60)) + 4|0); + $62 = HEAP32[$61>>2]|0; + $63 = $62 << 28; + $64 = $59 ^ $63; + $65 = $m; + $66 = ((($65)) + 8|0); + $67 = HEAP32[$66>>2]|0; + $68 = $64 ^ $67; + $69 = ((($tmp)) + 8|0); + HEAP32[$69>>2] = $68; + $70 = $M; + $71 = ((($70)) + 12|0); + $72 = HEAP32[$71>>2]|0; + $73 = $72 >>> 4; + $74 = $M; + $75 = ((($74)) + 8|0); + $76 = HEAP32[$75>>2]|0; + $77 = $76 << 28; + $78 = $73 ^ $77; + $79 = $m; + $80 = ((($79)) + 12|0); + $81 = HEAP32[$80>>2]|0; + $82 = $78 ^ $81; + $83 = ((($tmp)) + 12|0); + HEAP32[$83>>2] = $82; + while(1) { + $84 = $v; + $85 = $84 & 15; + $86 = $85<<2; + $87 = $2; + $88 = (($87) + ($86<<2)|0); + $M = $88; + $89 = $v; + $90 = $89 & 240; + $91 = $90 >>> 4; + $v = $91; + $92 = $v; + $93 = $92<<2; + $94 = $2; + $95 = (($94) + ($93<<2)|0); + $m = $95; + $96 = HEAP32[$tmp>>2]|0; + HEAP32[$T>>2] = $96; + $97 = ((($tmp)) + 4|0); + $98 = HEAP32[$97>>2]|0; + $99 = ((($T)) + 4|0); + HEAP32[$99>>2] = $98; + $100 = ((($tmp)) + 8|0); + $101 = HEAP32[$100>>2]|0; + $102 = ((($T)) + 8|0); + HEAP32[$102>>2] = $101; + $103 = HEAP32[$T>>2]|0; + $104 = $103 >>> 8; + $105 = ((($tmp)) + 12|0); + $106 = HEAP32[$105>>2]|0; + $107 = $106 & 255; + $108 = (17850 + ($107<<1)|0); + $109 = HEAP16[$108>>1]|0; + $110 = $109&65535; + $111 = $110 << 16; + $112 = $104 ^ $111; + $113 = $m; + $114 = HEAP32[$113>>2]|0; + $115 = $112 ^ $114; + HEAP32[$tmp>>2] = $115; + $116 = HEAP32[$T>>2]|0; + $117 = $116 << 24; + $118 = ((($tmp)) + 4|0); + $119 = HEAP32[$118>>2]|0; + $120 = $119 >>> 8; + $121 = $117 ^ $120; + $122 = $m; + $123 = ((($122)) + 4|0); + $124 = HEAP32[$123>>2]|0; + $125 = $121 ^ $124; + $126 = ((($tmp)) + 4|0); + HEAP32[$126>>2] = $125; + $127 = ((($T)) + 4|0); + $128 = HEAP32[$127>>2]|0; + $129 = $128 << 24; + $130 = ((($tmp)) + 8|0); + $131 = HEAP32[$130>>2]|0; + $132 = $131 >>> 8; + $133 = $129 ^ $132; + $134 = $m; + $135 = ((($134)) + 8|0); + $136 = HEAP32[$135>>2]|0; + $137 = $133 ^ $136; + $138 = ((($tmp)) + 8|0); + HEAP32[$138>>2] = $137; + $139 = ((($T)) + 8|0); + $140 = HEAP32[$139>>2]|0; + $141 = $140 << 24; + $142 = ((($tmp)) + 12|0); + $143 = HEAP32[$142>>2]|0; + $144 = $143 >>> 8; + $145 = $141 ^ $144; + $146 = $m; + $147 = ((($146)) + 12|0); + $148 = HEAP32[$147>>2]|0; + $149 = $145 ^ $148; + $150 = ((($tmp)) + 12|0); + HEAP32[$150>>2] = $149; + $151 = $M; + $152 = HEAP32[$151>>2]|0; + $153 = $152 >>> 4; + $154 = $M; + $155 = ((($154)) + 12|0); + $156 = HEAP32[$155>>2]|0; + $157 = $156 << 4; + $158 = $157 & 240; + $159 = (17850 + ($158<<1)|0); + $160 = HEAP16[$159>>1]|0; + $161 = $160&65535; + $162 = (_bitshift64Shl(($161|0),0,16)|0); + $163 = tempRet0; + $164 = $153 ^ $162; + $165 = HEAP32[$tmp>>2]|0; + $166 = $165 ^ $164; + HEAP32[$tmp>>2] = $166; + $167 = $M; + $168 = ((($167)) + 4|0); + $169 = HEAP32[$168>>2]|0; + $170 = $169 >>> 4; + $171 = $M; + $172 = HEAP32[$171>>2]|0; + $173 = $172 << 28; + $174 = $170 ^ $173; + $175 = ((($tmp)) + 4|0); + $176 = HEAP32[$175>>2]|0; + $177 = $176 ^ $174; + HEAP32[$175>>2] = $177; + $178 = $M; + $179 = ((($178)) + 8|0); + $180 = HEAP32[$179>>2]|0; + $181 = $180 >>> 4; + $182 = $M; + $183 = ((($182)) + 4|0); + $184 = HEAP32[$183>>2]|0; + $185 = $184 << 28; + $186 = $181 ^ $185; + $187 = ((($tmp)) + 8|0); + $188 = HEAP32[$187>>2]|0; + $189 = $188 ^ $186; + HEAP32[$187>>2] = $189; + $190 = $M; + $191 = ((($190)) + 12|0); + $192 = HEAP32[$191>>2]|0; + $193 = $192 >>> 4; + $194 = $M; + $195 = ((($194)) + 8|0); + $196 = HEAP32[$195>>2]|0; + $197 = $196 << 28; + $198 = $193 ^ $197; + $199 = ((($tmp)) + 12|0); + $200 = HEAP32[$199>>2]|0; + $201 = $200 ^ $198; + HEAP32[$199>>2] = $201; + $202 = $i; + $203 = ($202|0)==(0); + if ($203) { + break; + } + $204 = $i; + $205 = (($204) + -1)|0; + $i = $205; + $206 = (($V) + ($205)|0); + $207 = HEAP8[$206>>0]|0; + $208 = $207&255; + $v = $208; + } + $209 = $0; + $210 = HEAP32[$tmp>>2]|0; + _buf_put_be32_1867($209,$210); + $211 = $0; + $212 = ((($211)) + 4|0); + $213 = ((($tmp)) + 4|0); + $214 = HEAP32[$213>>2]|0; + _buf_put_be32_1867($212,$214); + $215 = $0; + $216 = ((($215)) + 8|0); + $217 = ((($tmp)) + 8|0); + $218 = HEAP32[$217>>2]|0; + _buf_put_be32_1867($216,$218); + $219 = $0; + $220 = ((($219)) + 12|0); + $221 = ((($tmp)) + 12|0); + $222 = HEAP32[$221>>2]|0; + _buf_put_be32_1867($220,$222); + STACKTOP = sp;return 76; +} +function _buf_xor_1866($_dst,$_src1,$_src2,$len) { + $_dst = $_dst|0; + $_src1 = $_src1|0; + $_src2 = $_src2|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst = 0, $ldst = 0, $longmask = 0, $lsrc1 = 0, $lsrc2 = 0, $src1 = 0, $src2 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst; + $1 = $_src1; + $2 = $_src2; + $3 = $len; + $4 = $0; + $dst = $4; + $5 = $1; + $src1 = $5; + $6 = $2; + $src2 = $6; + $longmask = 3; + $7 = $dst; + $8 = $7; + $9 = $src1; + $10 = $9; + $11 = $8 | $10; + $12 = $src2; + $13 = $12; + $14 = $11 | $13; + $15 = $14 & 3; + $16 = ($15|0)!=(0); + if (!($16)) { + $17 = $dst; + $ldst = $17; + $18 = $src1; + $lsrc1 = $18; + $19 = $src2; + $lsrc2 = $19; + while(1) { + $20 = $3; + $21 = ($20>>>0)>=(4); + if (!($21)) { + break; + } + $22 = $lsrc1; + $23 = ((($22)) + 4|0); + $lsrc1 = $23; + $24 = HEAP32[$22>>2]|0; + $25 = $lsrc2; + $26 = ((($25)) + 4|0); + $lsrc2 = $26; + $27 = HEAP32[$25>>2]|0; + $28 = $24 ^ $27; + $29 = $ldst; + $30 = ((($29)) + 4|0); + $ldst = $30; + HEAP32[$29>>2] = $28; + $31 = $3; + $32 = (($31) - 4)|0; + $3 = $32; + } + $33 = $ldst; + $dst = $33; + $34 = $lsrc1; + $src1 = $34; + $35 = $lsrc2; + $src2 = $35; + } + while(1) { + $36 = $3; + $37 = ($36|0)!=(0); + if (!($37)) { + break; + } + $38 = $src1; + $39 = ((($38)) + 1|0); + $src1 = $39; + $40 = HEAP8[$38>>0]|0; + $41 = $40&255; + $42 = $src2; + $43 = ((($42)) + 1|0); + $src2 = $43; + $44 = HEAP8[$42>>0]|0; + $45 = $44&255; + $46 = $41 ^ $45; + $47 = $46&255; + $48 = $dst; + $49 = ((($48)) + 1|0); + $dst = $49; + HEAP8[$48>>0] = $47; + $50 = $3; + $51 = (($50) + -1)|0; + $3 = $51; + } + STACKTOP = sp;return; +} +function _buf_put_be32_1867($_buf,$val) { + $_buf = $_buf|0; + $val = $val|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $out = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_buf; + $1 = $val; + $2 = $0; + $out = $2; + $3 = $1; + $4 = $3 >>> 24; + $5 = $4&255; + $6 = $out; + HEAP8[$6>>0] = $5; + $7 = $1; + $8 = $7 >>> 16; + $9 = $8&255; + $10 = $out; + $11 = ((($10)) + 1|0); + HEAP8[$11>>0] = $9; + $12 = $1; + $13 = $12 >>> 8; + $14 = $13&255; + $15 = $out; + $16 = ((($15)) + 2|0); + HEAP8[$16>>0] = $14; + $17 = $1; + $18 = $17&255; + $19 = $out; + $20 = ((($19)) + 3|0); + HEAP8[$20>>0] = $18; + STACKTOP = sp;return; +} +function _do_fillM($h,$M) { + $h = $h|0; + $M = $M|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $j = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $h; + $1 = $M; + $2 = $1; + HEAP32[$2>>2] = 0; + $3 = $1; + $4 = ((($3)) + 4|0); + HEAP32[$4>>2] = 0; + $5 = $1; + $6 = ((($5)) + 8|0); + HEAP32[$6>>2] = 0; + $7 = $1; + $8 = ((($7)) + 12|0); + HEAP32[$8>>2] = 0; + $9 = $0; + $10 = (_buf_get_be32_1868($9)|0); + $11 = $1; + $12 = ((($11)) + 128|0); + HEAP32[$12>>2] = $10; + $13 = $0; + $14 = ((($13)) + 4|0); + $15 = (_buf_get_be32_1868($14)|0); + $16 = $1; + $17 = ((($16)) + 132|0); + HEAP32[$17>>2] = $15; + $18 = $0; + $19 = ((($18)) + 8|0); + $20 = (_buf_get_be32_1868($19)|0); + $21 = $1; + $22 = ((($21)) + 136|0); + HEAP32[$22>>2] = $20; + $23 = $0; + $24 = ((($23)) + 12|0); + $25 = (_buf_get_be32_1868($24)|0); + $26 = $1; + $27 = ((($26)) + 140|0); + HEAP32[$27>>2] = $25; + $i = 4; + while(1) { + $28 = $i; + $29 = ($28|0)>(0); + if (!($29)) { + break; + } + $30 = $i; + $31 = $30<<1; + $32 = $31<<2; + $33 = (($32) + 0)|0; + $34 = $1; + $35 = (($34) + ($33<<2)|0); + $36 = HEAP32[$35>>2]|0; + $37 = $i; + $38 = $37<<2; + $39 = (($38) + 0)|0; + $40 = $1; + $41 = (($40) + ($39<<2)|0); + HEAP32[$41>>2] = $36; + $42 = $i; + $43 = $42<<1; + $44 = $43<<2; + $45 = (($44) + 1)|0; + $46 = $1; + $47 = (($46) + ($45<<2)|0); + $48 = HEAP32[$47>>2]|0; + $49 = $i; + $50 = $49<<2; + $51 = (($50) + 1)|0; + $52 = $1; + $53 = (($52) + ($51<<2)|0); + HEAP32[$53>>2] = $48; + $54 = $i; + $55 = $54<<1; + $56 = $55<<2; + $57 = (($56) + 2)|0; + $58 = $1; + $59 = (($58) + ($57<<2)|0); + $60 = HEAP32[$59>>2]|0; + $61 = $i; + $62 = $61<<2; + $63 = (($62) + 2)|0; + $64 = $1; + $65 = (($64) + ($63<<2)|0); + HEAP32[$65>>2] = $60; + $66 = $i; + $67 = $66<<1; + $68 = $67<<2; + $69 = (($68) + 3)|0; + $70 = $1; + $71 = (($70) + ($69<<2)|0); + $72 = HEAP32[$71>>2]|0; + $73 = $i; + $74 = $73<<2; + $75 = (($74) + 3)|0; + $76 = $1; + $77 = (($76) + ($75<<2)|0); + HEAP32[$77>>2] = $72; + $78 = $1; + $79 = $i; + _bshift($78,$79); + $80 = $i; + $81 = (($80|0) / 2)&-1; + $i = $81; + } + $i = 2; + while(1) { + $82 = $i; + $83 = ($82|0)<(16); + if (!($83)) { + break; + } + $j = 1; + while(1) { + $84 = $j; + $85 = $i; + $86 = ($84|0)<($85|0); + $87 = $i; + if (!($86)) { + break; + } + $88 = $87<<2; + $89 = (($88) + 0)|0; + $90 = $1; + $91 = (($90) + ($89<<2)|0); + $92 = HEAP32[$91>>2]|0; + $93 = $j; + $94 = $93<<2; + $95 = (($94) + 0)|0; + $96 = $1; + $97 = (($96) + ($95<<2)|0); + $98 = HEAP32[$97>>2]|0; + $99 = $92 ^ $98; + $100 = $i; + $101 = $j; + $102 = (($100) + ($101))|0; + $103 = $102<<2; + $104 = (($103) + 0)|0; + $105 = $1; + $106 = (($105) + ($104<<2)|0); + HEAP32[$106>>2] = $99; + $107 = $i; + $108 = $107<<2; + $109 = (($108) + 1)|0; + $110 = $1; + $111 = (($110) + ($109<<2)|0); + $112 = HEAP32[$111>>2]|0; + $113 = $j; + $114 = $113<<2; + $115 = (($114) + 1)|0; + $116 = $1; + $117 = (($116) + ($115<<2)|0); + $118 = HEAP32[$117>>2]|0; + $119 = $112 ^ $118; + $120 = $i; + $121 = $j; + $122 = (($120) + ($121))|0; + $123 = $122<<2; + $124 = (($123) + 1)|0; + $125 = $1; + $126 = (($125) + ($124<<2)|0); + HEAP32[$126>>2] = $119; + $127 = $i; + $128 = $127<<2; + $129 = (($128) + 2)|0; + $130 = $1; + $131 = (($130) + ($129<<2)|0); + $132 = HEAP32[$131>>2]|0; + $133 = $j; + $134 = $133<<2; + $135 = (($134) + 2)|0; + $136 = $1; + $137 = (($136) + ($135<<2)|0); + $138 = HEAP32[$137>>2]|0; + $139 = $132 ^ $138; + $140 = $i; + $141 = $j; + $142 = (($140) + ($141))|0; + $143 = $142<<2; + $144 = (($143) + 2)|0; + $145 = $1; + $146 = (($145) + ($144<<2)|0); + HEAP32[$146>>2] = $139; + $147 = $i; + $148 = $147<<2; + $149 = (($148) + 3)|0; + $150 = $1; + $151 = (($150) + ($149<<2)|0); + $152 = HEAP32[$151>>2]|0; + $153 = $j; + $154 = $153<<2; + $155 = (($154) + 3)|0; + $156 = $1; + $157 = (($156) + ($155<<2)|0); + $158 = HEAP32[$157>>2]|0; + $159 = $152 ^ $158; + $160 = $i; + $161 = $j; + $162 = (($160) + ($161))|0; + $163 = $162<<2; + $164 = (($163) + 3)|0; + $165 = $1; + $166 = (($165) + ($164<<2)|0); + HEAP32[$166>>2] = $159; + $167 = $j; + $168 = (($167) + 1)|0; + $j = $168; + } + $169 = $87<<1; + $i = $169; + } + STACKTOP = sp;return; +} +function _buf_get_be32_1868($_buf) { + $_buf = $_buf|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $in = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_buf; + $1 = $0; + $in = $1; + $2 = $in; + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = $4 << 24; + $6 = $in; + $7 = ((($6)) + 1|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = $9 << 16; + $11 = $5 | $10; + $12 = $in; + $13 = ((($12)) + 2|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = $15 << 8; + $17 = $11 | $16; + $18 = $in; + $19 = ((($18)) + 3|0); + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = $17 | $21; + STACKTOP = sp;return ($22|0); +} +function _bshift($M,$i) { + $M = $M|0; + $i = $i|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $8 = 0, $9 = 0, $mask = 0; + var $t = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $t = sp + 8|0; + $0 = $M; + $1 = $i; + $2 = $1; + $3 = $2<<2; + $4 = (($3) + 0)|0; + $5 = $0; + $6 = (($5) + ($4<<2)|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$t>>2] = $7; + $8 = $1; + $9 = $8<<2; + $10 = (($9) + 1)|0; + $11 = $0; + $12 = (($11) + ($10<<2)|0); + $13 = HEAP32[$12>>2]|0; + $14 = ((($t)) + 4|0); + HEAP32[$14>>2] = $13; + $15 = $1; + $16 = $15<<2; + $17 = (($16) + 2)|0; + $18 = $0; + $19 = (($18) + ($17<<2)|0); + $20 = HEAP32[$19>>2]|0; + $21 = ((($t)) + 8|0); + HEAP32[$21>>2] = $20; + $22 = $1; + $23 = $22<<2; + $24 = (($23) + 3)|0; + $25 = $0; + $26 = (($25) + ($24<<2)|0); + $27 = HEAP32[$26>>2]|0; + $28 = ((($t)) + 12|0); + HEAP32[$28>>2] = $27; + $29 = ((($t)) + 12|0); + $30 = HEAP32[$29>>2]|0; + $31 = $30 & 1; + $32 = ($31|0)!=(0); + $33 = $32 ? 225 : 0; + $mask = $33; + $34 = ((($t)) + 12|0); + $35 = HEAP32[$34>>2]|0; + $36 = $35 >>> 1; + $37 = ((($t)) + 8|0); + $38 = HEAP32[$37>>2]|0; + $39 = $38 << 31; + $40 = $36 ^ $39; + $41 = $1; + $42 = $41<<2; + $43 = (($42) + 3)|0; + $44 = $0; + $45 = (($44) + ($43<<2)|0); + HEAP32[$45>>2] = $40; + $46 = ((($t)) + 8|0); + $47 = HEAP32[$46>>2]|0; + $48 = $47 >>> 1; + $49 = ((($t)) + 4|0); + $50 = HEAP32[$49>>2]|0; + $51 = $50 << 31; + $52 = $48 ^ $51; + $53 = $1; + $54 = $53<<2; + $55 = (($54) + 2)|0; + $56 = $0; + $57 = (($56) + ($55<<2)|0); + HEAP32[$57>>2] = $52; + $58 = ((($t)) + 4|0); + $59 = HEAP32[$58>>2]|0; + $60 = $59 >>> 1; + $61 = HEAP32[$t>>2]|0; + $62 = $61 << 31; + $63 = $60 ^ $62; + $64 = $1; + $65 = $64<<2; + $66 = (($65) + 1)|0; + $67 = $0; + $68 = (($67) + ($66<<2)|0); + HEAP32[$68>>2] = $63; + $69 = HEAP32[$t>>2]|0; + $70 = $69 >>> 1; + $71 = $mask; + $72 = $71 << 24; + $73 = $70 ^ $72; + $74 = $1; + $75 = $74<<2; + $76 = (($75) + 0)|0; + $77 = $0; + $78 = (($77) + ($76<<2)|0); + HEAP32[$78>>2] = $73; + STACKTOP = sp;return; +} +function __gcry_cipher_ocb_get_l($c,$l_tmp,$0,$1) { + $c = $c|0; + $l_tmp = $l_tmp|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ntz = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $5 = sp; + $3 = $c; + $4 = $l_tmp; + $6 = $5; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + $10 = $5; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (($10) + 4)|0; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = (__gcry_ctz64_1876($12,$15)|0); + $ntz = $16; + $17 = $ntz; + $18 = ($17|0)<(16); + if ($18) { + $19 = $ntz; + $20 = $3; + $21 = ((($20)) + 128|0); + $22 = ((($21)) + 32|0); + $23 = (($22) + ($19<<4)|0); + $2 = $23; + $36 = $2; + STACKTOP = sp;return ($36|0); + } + $24 = $4; + $25 = $3; + $26 = ((($25)) + 128|0); + $27 = ((($26)) + 32|0); + $28 = ((($27)) + 240|0); + _double_block_cpy($24,$28); + $29 = $ntz; + $30 = (($29) - 16)|0; + $ntz = $30; + while(1) { + $31 = $ntz; + $32 = ($31|0)!=(0); + $33 = $4; + if (!($32)) { + break; + } + _double_block($33); + $34 = $ntz; + $35 = (($34) + -1)|0; + $ntz = $35; + } + $2 = $33; + $36 = $2; + STACKTOP = sp;return ($36|0); +} +function __gcry_ctz64_1876($0,$1) { + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $3 = sp; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + $8 = $3; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $11 = (($8) + 4)|0; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = ($10|0)!=(0); + $15 = (0)!=(0); + $16 = $14 | $15; + $17 = $3; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (($17) + 4)|0; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + if ($16) { + $23 = (__gcry_ctz_1877($19)|0); + $2 = $23; + $26 = $2; + STACKTOP = sp;return ($26|0); + } else { + $24 = (__gcry_ctz_1877($22)|0); + $25 = (32 + ($24))|0; + $2 = $25; + $26 = $2; + STACKTOP = sp;return ($26|0); + } + return (0)|0; +} +function __gcry_ctz_1877($x) { + $x = $x|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $x; + $1 = $0; + $2 = ($1|0)!=(0); + $3 = $0; + $4 = (_llvm_cttz_i32(($3|0))|0); + $5 = $2 ? $4 : 32; + STACKTOP = sp;return ($5|0); +} +function _double_block_cpy($d,$s) { + $d = $d|0; + $s = $s|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $d; + $1 = $s; + $2 = $0; + $3 = $1; + $4 = ($2|0)!=($3|0); + if ($4) { + $5 = $0; + $6 = $1; + _buf_cpy_1878($5,$6,16); + } + $7 = $0; + _double_block($7); + STACKTOP = sp;return; +} +function _buf_cpy_1878($_dst,$_src,$len) { + $_dst = $_dst|0; + $_src = $_src|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst = 0, $ldst = 0, $longmask = 0, $lsrc = 0, $src = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst; + $1 = $_src; + $2 = $len; + $3 = $0; + $dst = $3; + $4 = $1; + $src = $4; + $longmask = 3; + $5 = $dst; + $6 = $5; + $7 = $src; + $8 = $7; + $9 = $6 | $8; + $10 = $9 & 3; + $11 = ($10|0)!=(0); + if (!($11)) { + $12 = $dst; + $ldst = $12; + $13 = $src; + $lsrc = $13; + while(1) { + $14 = $2; + $15 = ($14>>>0)>=(4); + if (!($15)) { + break; + } + $16 = $lsrc; + $17 = ((($16)) + 4|0); + $lsrc = $17; + $18 = HEAP32[$16>>2]|0; + $19 = $ldst; + $20 = ((($19)) + 4|0); + $ldst = $20; + HEAP32[$19>>2] = $18; + $21 = $2; + $22 = (($21) - 4)|0; + $2 = $22; + } + $23 = $ldst; + $dst = $23; + $24 = $lsrc; + $src = $24; + } + while(1) { + $25 = $2; + $26 = ($25|0)!=(0); + if (!($26)) { + break; + } + $27 = $src; + $28 = ((($27)) + 1|0); + $src = $28; + $29 = HEAP8[$27>>0]|0; + $30 = $dst; + $31 = ((($30)) + 1|0); + $dst = $31; + HEAP8[$30>>0] = $29; + $32 = $2; + $33 = (($32) + -1)|0; + $2 = $33; + } + STACKTOP = sp;return; +} +function _double_block($b) { + $b = $b|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $l = 0, $l_0 = 0, $r = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $l_0 = sp + 16|0; + $l = sp + 8|0; + $r = sp; + $0 = $b; + $1 = $0; + $2 = (_buf_get_be64_1879($1)|0); + $3 = tempRet0; + $4 = $l; + $5 = $4; + HEAP32[$5>>2] = $2; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $3; + $8 = $0; + $9 = ((($8)) + 8|0); + $10 = (_buf_get_be64_1879($9)|0); + $11 = tempRet0; + $12 = $r; + $13 = $12; + HEAP32[$13>>2] = $10; + $14 = (($12) + 4)|0; + $15 = $14; + HEAP32[$15>>2] = $11; + $16 = $l; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $19 = (($16) + 4)|0; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = (_bitshift64Ashr(($18|0),($21|0),63)|0); + $23 = tempRet0; + $24 = $l_0; + $25 = $24; + HEAP32[$25>>2] = $22; + $26 = (($24) + 4)|0; + $27 = $26; + HEAP32[$27>>2] = $23; + $28 = $l; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = (($28) + 4)|0; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = $l; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (($34) + 4)|0; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (_i64Add(($30|0),($33|0),($36|0),($39|0))|0); + $41 = tempRet0; + $42 = $r; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = (_bitshift64Lshr(($44|0),($47|0),63)|0); + $49 = tempRet0; + $50 = $40 ^ $48; + $51 = $41 ^ $49; + $52 = $l; + $53 = $52; + HEAP32[$53>>2] = $50; + $54 = (($52) + 4)|0; + $55 = $54; + HEAP32[$55>>2] = $51; + $56 = $r; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = (($56) + 4)|0; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = $r; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = (($62) + 4)|0; + $66 = $65; + $67 = HEAP32[$66>>2]|0; + $68 = (_i64Add(($58|0),($61|0),($64|0),($67|0))|0); + $69 = tempRet0; + $70 = $l_0; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = (($70) + 4)|0; + $74 = $73; + $75 = HEAP32[$74>>2]|0; + $76 = $72 & 135; + $77 = $68 ^ $76; + $78 = $r; + $79 = $78; + HEAP32[$79>>2] = $77; + $80 = (($78) + 4)|0; + $81 = $80; + HEAP32[$81>>2] = $69; + $82 = $0; + $83 = $l; + $84 = $83; + $85 = HEAP32[$84>>2]|0; + $86 = (($83) + 4)|0; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + _buf_put_be64_1880($82,$85,$88); + $89 = $0; + $90 = ((($89)) + 8|0); + $91 = $r; + $92 = $91; + $93 = HEAP32[$92>>2]|0; + $94 = (($91) + 4)|0; + $95 = $94; + $96 = HEAP32[$95>>2]|0; + _buf_put_be64_1880($90,$93,$96); + STACKTOP = sp;return; +} +function _buf_get_be64_1879($_buf) { + $_buf = $_buf|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $in = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_buf; + $1 = $0; + $in = $1; + $2 = $in; + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = (_bitshift64Shl(($4|0),0,56)|0); + $6 = tempRet0; + $7 = $in; + $8 = ((($7)) + 1|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = (_bitshift64Shl(($10|0),0,48)|0); + $12 = tempRet0; + $13 = $5 | $11; + $14 = $6 | $12; + $15 = $in; + $16 = ((($15)) + 2|0); + $17 = HEAP8[$16>>0]|0; + $18 = $17&255; + $19 = (_bitshift64Shl(($18|0),0,40)|0); + $20 = tempRet0; + $21 = $13 | $19; + $22 = $14 | $20; + $23 = $in; + $24 = ((($23)) + 3|0); + $25 = HEAP8[$24>>0]|0; + $26 = $25&255; + $27 = $22 | $26; + $28 = $in; + $29 = ((($28)) + 4|0); + $30 = HEAP8[$29>>0]|0; + $31 = $30&255; + $32 = (_bitshift64Shl(($31|0),0,24)|0); + $33 = tempRet0; + $34 = $21 | $32; + $35 = $27 | $33; + $36 = $in; + $37 = ((($36)) + 5|0); + $38 = HEAP8[$37>>0]|0; + $39 = $38&255; + $40 = (_bitshift64Shl(($39|0),0,16)|0); + $41 = tempRet0; + $42 = $34 | $40; + $43 = $35 | $41; + $44 = $in; + $45 = ((($44)) + 6|0); + $46 = HEAP8[$45>>0]|0; + $47 = $46&255; + $48 = (_bitshift64Shl(($47|0),0,8)|0); + $49 = tempRet0; + $50 = $42 | $48; + $51 = $43 | $49; + $52 = $in; + $53 = ((($52)) + 7|0); + $54 = HEAP8[$53>>0]|0; + $55 = $54&255; + $56 = $50 | $55; + tempRet0 = ($51); + STACKTOP = sp;return ($56|0); +} +function _buf_put_be64_1880($_buf,$0,$1) { + $_buf = $_buf|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $out = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $3 = sp; + $2 = $_buf; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + $8 = $2; + $out = $8; + $9 = $3; + $10 = $9; + $11 = HEAP32[$10>>2]|0; + $12 = (($9) + 4)|0; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = (_bitshift64Lshr(($11|0),($14|0),56)|0); + $16 = tempRet0; + $17 = $15&255; + $18 = $out; + HEAP8[$18>>0] = $17; + $19 = $3; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = (($19) + 4)|0; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = (_bitshift64Lshr(($21|0),($24|0),48)|0); + $26 = tempRet0; + $27 = $25&255; + $28 = $out; + $29 = ((($28)) + 1|0); + HEAP8[$29>>0] = $27; + $30 = $3; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = (_bitshift64Lshr(($32|0),($35|0),40)|0); + $37 = tempRet0; + $38 = $36&255; + $39 = $out; + $40 = ((($39)) + 2|0); + HEAP8[$40>>0] = $38; + $41 = $3; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $44 = (($41) + 4)|0; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = $46&255; + $48 = $out; + $49 = ((($48)) + 3|0); + HEAP8[$49>>0] = $47; + $50 = $3; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = (($50) + 4)|0; + $54 = $53; + $55 = HEAP32[$54>>2]|0; + $56 = (_bitshift64Lshr(($52|0),($55|0),24)|0); + $57 = tempRet0; + $58 = $56&255; + $59 = $out; + $60 = ((($59)) + 4|0); + HEAP8[$60>>0] = $58; + $61 = $3; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = (($61) + 4)|0; + $65 = $64; + $66 = HEAP32[$65>>2]|0; + $67 = (_bitshift64Lshr(($63|0),($66|0),16)|0); + $68 = tempRet0; + $69 = $67&255; + $70 = $out; + $71 = ((($70)) + 5|0); + HEAP8[$71>>0] = $69; + $72 = $3; + $73 = $72; + $74 = HEAP32[$73>>2]|0; + $75 = (($72) + 4)|0; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $78 = (_bitshift64Lshr(($74|0),($77|0),8)|0); + $79 = tempRet0; + $80 = $78&255; + $81 = $out; + $82 = ((($81)) + 6|0); + HEAP8[$82>>0] = $80; + $83 = $3; + $84 = $83; + $85 = HEAP32[$84>>2]|0; + $86 = (($83) + 4)|0; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + $89 = $85&255; + $90 = $out; + $91 = ((($90)) + 7|0); + HEAP8[$91>>0] = $89; + STACKTOP = sp;return; +} +function __gcry_cipher_ocb_set_nonce($c,$nonce,$noncelen) { + $c = $c|0; + $nonce = $nonce|0; + $noncelen = $noncelen|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $_vlen = 0, $_vlen2 = 0, $_vptr = 0, $_vptr1 = 0, $_vptr_long = 0; + var $_vptr_long5 = 0, $_vset = 0, $_vset3 = 0, $_vset_long = 0, $_vset_long4 = 0, $bottom = 0, $burn = 0, $i = 0, $ktop = 0, $nburn = 0, $or$cond = 0, $or$cond3 = 0, $stretch = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $ktop = sp + 104|0; + $stretch = sp + 80|0; + $_vset_long = sp + 8|0; + $_vset_long4 = sp; + $1 = $c; + $2 = $nonce; + $3 = $noncelen; + $burn = 0; + $4 = $1; + $5 = ((($4)) + 56|0); + $6 = HEAP8[$5>>0]|0; + $7 = $6 & 1; + $8 = $7&255; + $9 = ($8|0)!=(0); + if (!($9)) { + $0 = 156; + $294 = $0; + STACKTOP = sp;return ($294|0); + } + $10 = $1; + $11 = ((($10)) + 128|0); + $12 = ((($11)) + 352|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + switch ($14|0) { + case 16: case 12: case 8: { + break; + } + default: { + $0 = 59; + $294 = $0; + STACKTOP = sp;return ($294|0); + } + } + $15 = $1; + $16 = ((($15)) + 12|0); + $17 = HEAP32[$16>>2]|0; + $18 = ((($17)) + 20|0); + $19 = HEAP32[$18>>2]|0; + $20 = ($19|0)!=(16); + if ($20) { + $0 = 12; + $294 = $0; + STACKTOP = sp;return ($294|0); + } + $21 = $2; + $22 = ($21|0)!=(0|0); + if (!($22)) { + $0 = 45; + $294 = $0; + STACKTOP = sp;return ($294|0); + } + $23 = $3; + $24 = ($23>>>0)>(15); + $25 = $3; + $26 = ($25>>>0)<(8); + $or$cond = $24 | $26; + $27 = $3; + $28 = ($27>>>0)>=(16); + $or$cond3 = $or$cond | $28; + if ($or$cond3) { + $0 = 139; + $294 = $0; + STACKTOP = sp;return ($294|0); + } + dest=$ktop; stop=dest+16|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); + $29 = $1; + $30 = ((($29)) + 12|0); + $31 = HEAP32[$30>>2]|0; + $32 = ((($31)) + 36|0); + $33 = HEAP32[$32>>2]|0; + $34 = $1; + $35 = ((($34)) + 496|0); + $36 = $1; + $37 = ((($36)) + 128|0); + $38 = (FUNCTION_TABLE_iiii[$33 & 127]($35,$37,$ktop)|0); + $nburn = $38; + $39 = $nburn; + $40 = $burn; + $41 = ($39>>>0)>($40>>>0); + $42 = $nburn; + $43 = $burn; + $44 = $41 ? $42 : $43; + $burn = $44; + $45 = $1; + $46 = ((($45)) + 128|0); + $47 = ((($46)) + 16|0); + $48 = $1; + $49 = ((($48)) + 128|0); + _double_block_cpy($47,$49); + $50 = $1; + $51 = ((($50)) + 128|0); + $52 = ((($51)) + 32|0); + $53 = $1; + $54 = ((($53)) + 128|0); + $55 = ((($54)) + 16|0); + _double_block_cpy($52,$55); + $i = 1; + while(1) { + $56 = $i; + $57 = ($56|0)<(16); + if (!($57)) { + break; + } + $58 = $i; + $59 = $1; + $60 = ((($59)) + 128|0); + $61 = ((($60)) + 32|0); + $62 = (($61) + ($58<<4)|0); + $63 = $i; + $64 = (($63) - 1)|0; + $65 = $1; + $66 = ((($65)) + 128|0); + $67 = ((($66)) + 32|0); + $68 = (($67) + ($64<<4)|0); + _double_block_cpy($62,$68); + $69 = $i; + $70 = (($69) + 1)|0; + $i = $70; + } + $71 = $3; + $72 = (16 - ($71))|0; + _memset(($ktop|0),0,($72|0))|0; + $73 = $3; + $74 = (16 - ($73))|0; + $75 = (($ktop) + ($74)|0); + $76 = $2; + $77 = $3; + _buf_cpy_1878($75,$76,$77); + $78 = $1; + $79 = ((($78)) + 128|0); + $80 = ((($79)) + 352|0); + $81 = HEAP8[$80>>0]|0; + $82 = $81&255; + $83 = $82<<3; + $84 = (($83|0) % 128)&-1; + $85 = $84 << 1; + $86 = $85&255; + HEAP8[$ktop>>0] = $86; + $87 = $3; + $88 = (16 - ($87))|0; + $89 = (($88) - 1)|0; + $90 = (($ktop) + ($89)|0); + $91 = HEAP8[$90>>0]|0; + $92 = $91&255; + $93 = $92 | 1; + $94 = $93&255; + HEAP8[$90>>0] = $94; + $95 = ((($ktop)) + 15|0); + $96 = HEAP8[$95>>0]|0; + $97 = $96&255; + $98 = $97 & 63; + $bottom = $98; + $99 = ((($ktop)) + 15|0); + $100 = HEAP8[$99>>0]|0; + $101 = $100&255; + $102 = $101 & 192; + $103 = $102&255; + HEAP8[$99>>0] = $103; + $104 = $1; + $105 = ((($104)) + 12|0); + $106 = HEAP32[$105>>2]|0; + $107 = ((($106)) + 36|0); + $108 = HEAP32[$107>>2]|0; + $109 = $1; + $110 = ((($109)) + 496|0); + $111 = (FUNCTION_TABLE_iiii[$108 & 127]($110,$ktop,$ktop)|0); + $nburn = $111; + $112 = $nburn; + $113 = $burn; + $114 = ($112>>>0)>($113>>>0); + $115 = $nburn; + $116 = $burn; + $117 = $114 ? $115 : $116; + $burn = $117; + _buf_cpy_1878($stretch,$ktop,16); + $118 = ((($stretch)) + 16|0); + $119 = ((($ktop)) + 1|0); + _buf_xor_1883($118,$ktop,$119,8); + $120 = $1; + $121 = ((($120)) + 64|0); + $122 = $bottom; + _bit_copy($121,$stretch,$122,16); + $123 = $1; + $124 = ((($123)) + 56|0); + $125 = HEAP8[$124>>0]|0; + $126 = $125 & -3; + $127 = $126 | 2; + HEAP8[$124>>0] = $127; + $128 = $1; + $129 = ((($128)) + 80|0); + ;HEAP32[$129>>2]=0|0;HEAP32[$129+4>>2]=0|0;HEAP32[$129+8>>2]=0|0;HEAP32[$129+12>>2]=0|0; + $130 = $1; + $131 = ((($130)) + 128|0); + $132 = ((($131)) + 304|0); + ;HEAP32[$132>>2]=0|0;HEAP32[$132+4>>2]=0|0;HEAP32[$132+8>>2]=0|0;HEAP32[$132+12>>2]=0|0; + $133 = $1; + $134 = ((($133)) + 128|0); + $135 = ((($134)) + 320|0); + ;HEAP32[$135>>2]=0|0;HEAP32[$135+4>>2]=0|0;HEAP32[$135+8>>2]=0|0;HEAP32[$135+12>>2]=0|0; + $136 = $1; + $137 = ((($136)) + 96|0); + ;HEAP32[$137>>2]=0|0;HEAP32[$137+4>>2]=0|0;HEAP32[$137+8>>2]=0|0;HEAP32[$137+12>>2]=0|0; + $138 = $1; + $139 = ((($138)) + 112|0); + HEAP32[$139>>2] = 0; + $140 = $1; + $141 = ((($140)) + 56|0); + $142 = HEAP8[$141>>0]|0; + $143 = $142 & -5; + HEAP8[$141>>0] = $143; + $144 = $1; + $145 = ((($144)) + 56|0); + $146 = HEAP8[$145>>0]|0; + $147 = $146 & -9; + HEAP8[$145>>0] = $147; + $148 = $1; + $149 = ((($148)) + 128|0); + $150 = ((($149)) + 336|0); + $151 = $150; + $152 = $151; + HEAP32[$152>>2] = 0; + $153 = (($151) + 4)|0; + $154 = $153; + HEAP32[$154>>2] = 0; + $155 = $1; + $156 = ((($155)) + 128|0); + $157 = ((($156)) + 344|0); + $158 = $157; + $159 = $158; + HEAP32[$159>>2] = 0; + $160 = (($158) + 4)|0; + $161 = $160; + HEAP32[$161>>2] = 0; + $162 = $1; + $163 = ((($162)) + 128|0); + $164 = ((($163)) + 353|0); + $165 = HEAP8[$164>>0]|0; + $166 = $165 & -2; + HEAP8[$164>>0] = $166; + $167 = $1; + $168 = ((($167)) + 128|0); + $169 = ((($168)) + 353|0); + $170 = HEAP8[$169>>0]|0; + $171 = $170 & -3; + HEAP8[$169>>0] = $171; + $_vptr = $ktop; + $_vlen = 16; + $_vset = 0; + $172 = $_vset; + $173 = $172&255; + $174 = $_vset_long; + $175 = $174; + HEAP32[$175>>2] = $173; + $176 = (($174) + 4)|0; + $177 = $176; + HEAP32[$177>>2] = 0; + while(1) { + $178 = $_vptr; + $179 = $178; + $180 = $179 & 7; + $181 = ($180|0)!=(0); + $182 = $_vlen; + $183 = ($182|0)!=(0); + $184 = $181 ? $183 : 0; + if (!($184)) { + break; + } + $185 = $_vset; + $186 = $_vptr; + HEAP8[$186>>0] = $185; + $187 = $_vptr; + $188 = ((($187)) + 1|0); + $_vptr = $188; + $189 = $_vlen; + $190 = (($189) + -1)|0; + $_vlen = $190; + } + $191 = $_vlen; + $192 = ($191>>>0)<(8); + if (!($192)) { + $193 = $_vset_long; + $194 = $193; + $195 = HEAP32[$194>>2]|0; + $196 = (($193) + 4)|0; + $197 = $196; + $198 = HEAP32[$197>>2]|0; + $199 = (___muldi3(($195|0),($198|0),16843009,16843009)|0); + $200 = tempRet0; + $201 = $_vset_long; + $202 = $201; + HEAP32[$202>>2] = $199; + $203 = (($201) + 4)|0; + $204 = $203; + HEAP32[$204>>2] = $200; + while(1) { + $205 = $_vptr; + $_vptr_long = $205; + $206 = $_vset_long; + $207 = $206; + $208 = HEAP32[$207>>2]|0; + $209 = (($206) + 4)|0; + $210 = $209; + $211 = HEAP32[$210>>2]|0; + $212 = $_vptr_long; + $213 = $212; + $214 = $213; + HEAP32[$214>>2] = $208; + $215 = (($213) + 4)|0; + $216 = $215; + HEAP32[$216>>2] = $211; + $217 = $_vlen; + $218 = (($217) - 8)|0; + $_vlen = $218; + $219 = $_vptr; + $220 = ((($219)) + 8|0); + $_vptr = $220; + $221 = $_vlen; + $222 = ($221>>>0)>=(8); + if (!($222)) { + break; + } + } + } + while(1) { + $223 = $_vlen; + $224 = ($223|0)!=(0); + if (!($224)) { + break; + } + $225 = $_vset; + $226 = $_vptr; + HEAP8[$226>>0] = $225; + $227 = $_vptr; + $228 = ((($227)) + 1|0); + $_vptr = $228; + $229 = $_vlen; + $230 = (($229) + -1)|0; + $_vlen = $230; + } + $_vptr1 = $stretch; + $_vlen2 = 24; + $_vset3 = 0; + $231 = $_vset3; + $232 = $231&255; + $233 = $_vset_long4; + $234 = $233; + HEAP32[$234>>2] = $232; + $235 = (($233) + 4)|0; + $236 = $235; + HEAP32[$236>>2] = 0; + while(1) { + $237 = $_vptr1; + $238 = $237; + $239 = $238 & 7; + $240 = ($239|0)!=(0); + $241 = $_vlen2; + $242 = ($241|0)!=(0); + $243 = $240 ? $242 : 0; + if (!($243)) { + break; + } + $244 = $_vset3; + $245 = $_vptr1; + HEAP8[$245>>0] = $244; + $246 = $_vptr1; + $247 = ((($246)) + 1|0); + $_vptr1 = $247; + $248 = $_vlen2; + $249 = (($248) + -1)|0; + $_vlen2 = $249; + } + $250 = $_vlen2; + $251 = ($250>>>0)<(8); + if (!($251)) { + $252 = $_vset_long4; + $253 = $252; + $254 = HEAP32[$253>>2]|0; + $255 = (($252) + 4)|0; + $256 = $255; + $257 = HEAP32[$256>>2]|0; + $258 = (___muldi3(($254|0),($257|0),16843009,16843009)|0); + $259 = tempRet0; + $260 = $_vset_long4; + $261 = $260; + HEAP32[$261>>2] = $258; + $262 = (($260) + 4)|0; + $263 = $262; + HEAP32[$263>>2] = $259; + while(1) { + $264 = $_vptr1; + $_vptr_long5 = $264; + $265 = $_vset_long4; + $266 = $265; + $267 = HEAP32[$266>>2]|0; + $268 = (($265) + 4)|0; + $269 = $268; + $270 = HEAP32[$269>>2]|0; + $271 = $_vptr_long5; + $272 = $271; + $273 = $272; + HEAP32[$273>>2] = $267; + $274 = (($272) + 4)|0; + $275 = $274; + HEAP32[$275>>2] = $270; + $276 = $_vlen2; + $277 = (($276) - 8)|0; + $_vlen2 = $277; + $278 = $_vptr1; + $279 = ((($278)) + 8|0); + $_vptr1 = $279; + $280 = $_vlen2; + $281 = ($280>>>0)>=(8); + if (!($281)) { + break; + } + } + } + while(1) { + $282 = $_vlen2; + $283 = ($282|0)!=(0); + if (!($283)) { + break; + } + $284 = $_vset3; + $285 = $_vptr1; + HEAP8[$285>>0] = $284; + $286 = $_vptr1; + $287 = ((($286)) + 1|0); + $_vptr1 = $287; + $288 = $_vlen2; + $289 = (($288) + -1)|0; + $_vlen2 = $289; + } + $290 = $burn; + $291 = ($290>>>0)>(0); + if ($291) { + $292 = $burn; + $293 = (($292) + 16)|0; + ___gcry_burn_stack($293); + ___gcry_burn_stack_dummy(); + } + $0 = 0; + $294 = $0; + STACKTOP = sp;return ($294|0); +} +function _buf_xor_1883($_dst,$_src1,$_src2,$len) { + $_dst = $_dst|0; + $_src1 = $_src1|0; + $_src2 = $_src2|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst = 0, $ldst = 0, $longmask = 0, $lsrc1 = 0, $lsrc2 = 0, $src1 = 0, $src2 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst; + $1 = $_src1; + $2 = $_src2; + $3 = $len; + $4 = $0; + $dst = $4; + $5 = $1; + $src1 = $5; + $6 = $2; + $src2 = $6; + $longmask = 3; + $7 = $dst; + $8 = $7; + $9 = $src1; + $10 = $9; + $11 = $8 | $10; + $12 = $src2; + $13 = $12; + $14 = $11 | $13; + $15 = $14 & 3; + $16 = ($15|0)!=(0); + if (!($16)) { + $17 = $dst; + $ldst = $17; + $18 = $src1; + $lsrc1 = $18; + $19 = $src2; + $lsrc2 = $19; + while(1) { + $20 = $3; + $21 = ($20>>>0)>=(4); + if (!($21)) { + break; + } + $22 = $lsrc1; + $23 = ((($22)) + 4|0); + $lsrc1 = $23; + $24 = HEAP32[$22>>2]|0; + $25 = $lsrc2; + $26 = ((($25)) + 4|0); + $lsrc2 = $26; + $27 = HEAP32[$25>>2]|0; + $28 = $24 ^ $27; + $29 = $ldst; + $30 = ((($29)) + 4|0); + $ldst = $30; + HEAP32[$29>>2] = $28; + $31 = $3; + $32 = (($31) - 4)|0; + $3 = $32; + } + $33 = $ldst; + $dst = $33; + $34 = $lsrc1; + $src1 = $34; + $35 = $lsrc2; + $src2 = $35; + } + while(1) { + $36 = $3; + $37 = ($36|0)!=(0); + if (!($37)) { + break; + } + $38 = $src1; + $39 = ((($38)) + 1|0); + $src1 = $39; + $40 = HEAP8[$38>>0]|0; + $41 = $40&255; + $42 = $src2; + $43 = ((($42)) + 1|0); + $src2 = $43; + $44 = HEAP8[$42>>0]|0; + $45 = $44&255; + $46 = $41 ^ $45; + $47 = $46&255; + $48 = $dst; + $49 = ((($48)) + 1|0); + $dst = $49; + HEAP8[$48>>0] = $47; + $50 = $3; + $51 = (($50) + -1)|0; + $3 = $51; + } + STACKTOP = sp;return; +} +function _bit_copy($d,$s,$bitoff,$nbytes) { + $d = $d|0; + $s = $s|0; + $bitoff = $bitoff|0; + $nbytes = $nbytes|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $shift = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $d; + $1 = $s; + $2 = $bitoff; + $3 = $nbytes; + $4 = $2; + $5 = (($4>>>0) / 8)&-1; + $6 = $1; + $7 = (($6) + ($5)|0); + $1 = $7; + $8 = $2; + $9 = (($8>>>0) % 8)&-1; + $shift = $9; + $10 = $shift; + $11 = ($10|0)!=(0); + if ($11) { + while(1) { + $12 = $3; + $13 = ($12|0)!=(0); + if (!($13)) { + break; + } + $14 = $1; + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = $shift; + $18 = $16 << $17; + $19 = $1; + $20 = ((($19)) + 1|0); + $21 = HEAP8[$20>>0]|0; + $22 = $21&255; + $23 = $shift; + $24 = (8 - ($23))|0; + $25 = $22 >> $24; + $26 = $18 | $25; + $27 = $26&255; + $28 = $0; + HEAP8[$28>>0] = $27; + $29 = $3; + $30 = (($29) + -1)|0; + $3 = $30; + $31 = $0; + $32 = ((($31)) + 1|0); + $0 = $32; + $33 = $1; + $34 = ((($33)) + 1|0); + $1 = $34; + } + STACKTOP = sp;return; + } else { + while(1) { + $35 = $3; + $36 = ($35|0)!=(0); + if (!($36)) { + break; + } + $37 = $1; + $38 = HEAP8[$37>>0]|0; + $39 = $0; + HEAP8[$39>>0] = $38; + $40 = $3; + $41 = (($40) + -1)|0; + $3 = $41; + $42 = $0; + $43 = ((($42)) + 1|0); + $0 = $43; + $44 = $1; + $45 = ((($44)) + 1|0); + $1 = $45; + } + STACKTOP = sp;return; + } +} +function _buf_xor_1_1886($_dst,$_src,$len) { + $_dst = $_dst|0; + $_src = $_src|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $dst = 0, $ldst = 0, $longmask = 0, $lsrc = 0, $src = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst; + $1 = $_src; + $2 = $len; + $3 = $0; + $dst = $3; + $4 = $1; + $src = $4; + $longmask = 3; + $5 = $dst; + $6 = $5; + $7 = $src; + $8 = $7; + $9 = $6 | $8; + $10 = $9 & 3; + $11 = ($10|0)!=(0); + if (!($11)) { + $12 = $dst; + $ldst = $12; + $13 = $src; + $lsrc = $13; + while(1) { + $14 = $2; + $15 = ($14>>>0)>=(4); + if (!($15)) { + break; + } + $16 = $lsrc; + $17 = ((($16)) + 4|0); + $lsrc = $17; + $18 = HEAP32[$16>>2]|0; + $19 = $ldst; + $20 = ((($19)) + 4|0); + $ldst = $20; + $21 = HEAP32[$19>>2]|0; + $22 = $21 ^ $18; + HEAP32[$19>>2] = $22; + $23 = $2; + $24 = (($23) - 4)|0; + $2 = $24; + } + $25 = $ldst; + $dst = $25; + $26 = $lsrc; + $src = $26; + } + while(1) { + $27 = $2; + $28 = ($27|0)!=(0); + if (!($28)) { + break; + } + $29 = $src; + $30 = ((($29)) + 1|0); + $src = $30; + $31 = HEAP8[$29>>0]|0; + $32 = $31&255; + $33 = $dst; + $34 = ((($33)) + 1|0); + $dst = $34; + $35 = HEAP8[$33>>0]|0; + $36 = $35&255; + $37 = $36 ^ $32; + $38 = $37&255; + HEAP8[$33>>0] = $38; + $39 = $2; + $40 = (($39) + -1)|0; + $2 = $40; + } + STACKTOP = sp;return; +} +function __gcry_cipher_ocb_encrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $c; + $1 = $outbuf; + $2 = $outbuflen; + $3 = $inbuf; + $4 = $inbuflen; + $5 = $0; + $6 = $1; + $7 = $2; + $8 = $3; + $9 = $4; + $10 = (_ocb_crypt($5,1,$6,$7,$8,$9)|0); + STACKTOP = sp;return ($10|0); +} +function _ocb_crypt($c,$encrypt,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $encrypt = $encrypt|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; + var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; + var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; + var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; + var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $burn = 0, $crypt_fn = 0, $l_tmp = 0, $nblks = 0, $nburn = 0, $pad = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $l_tmp = sp + 64|0; + $pad = sp + 48|0; + $1 = $c; + $2 = $encrypt; + $3 = $outbuf; + $4 = $outbuflen; + $5 = $inbuf; + $6 = $inbuflen; + $burn = 0; + $7 = $6; + $8 = (($7>>>0) / 16)&-1; + $nblks = $8; + $9 = $1; + $10 = ((($9)) + 56|0); + $11 = HEAP8[$10>>0]|0; + $12 = ($11&255) >>> 1; + $13 = $12 & 1; + $14 = $13&255; + $15 = ($14|0)!=(0); + if ($15) { + $16 = $1; + $17 = ((($16)) + 128|0); + $18 = ((($17)) + 353|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19 & 1; + $21 = $20&255; + $22 = ($21|0)!=(0); + if (!($22)) { + $23 = $1; + $24 = ((($23)) + 12|0); + $25 = HEAP32[$24>>2]|0; + $26 = ((($25)) + 20|0); + $27 = HEAP32[$26>>2]|0; + $28 = ($27|0)!=(16); + if ($28) { + $0 = 12; + $252 = $0; + STACKTOP = sp;return ($252|0); + } + $29 = $4; + $30 = $6; + $31 = ($29>>>0)<($30>>>0); + if ($31) { + $0 = 200; + $252 = $0; + STACKTOP = sp;return ($252|0); + } + $32 = $1; + $33 = ((($32)) + 56|0); + $34 = HEAP8[$33>>0]|0; + $35 = ($34&255) >>> 3; + $36 = $35 & 1; + $37 = $36&255; + $38 = ($37|0)!=(0); + if (!($38)) { + $39 = $6; + $40 = (($39>>>0) % 16)&-1; + $41 = ($40|0)!=(0); + if ($41) { + $0 = 139; + $252 = $0; + STACKTOP = sp;return ($252|0); + } + } + $42 = $nblks; + $43 = ($42|0)!=(0); + if ($43) { + $44 = $1; + $45 = ((($44)) + 20|0); + $46 = ((($45)) + 20|0); + $47 = HEAP32[$46>>2]|0; + $48 = ($47|0)!=(0|0); + if ($48) { + $49 = $1; + $50 = ((($49)) + 20|0); + $51 = ((($50)) + 20|0); + $52 = HEAP32[$51>>2]|0; + $53 = $1; + $54 = $3; + $55 = $5; + $56 = $nblks; + $57 = $2; + FUNCTION_TABLE_viiiii[$52 & 127]($53,$54,$55,$56,$57); + $58 = $nblks; + $59 = $58<<4; + $60 = $5; + $61 = (($60) + ($59)|0); + $5 = $61; + $62 = $nblks; + $63 = $62<<4; + $64 = $3; + $65 = (($64) + ($63)|0); + $3 = $65; + $66 = $nblks; + $67 = $66<<4; + $68 = $6; + $69 = (($68) - ($67))|0; + $6 = $69; + $70 = $nblks; + $71 = $70<<4; + $72 = $4; + $73 = (($72) - ($71))|0; + $4 = $73; + $nblks = 0; + } + } + $74 = $nblks; + $75 = ($74|0)!=(0); + if ($75) { + $76 = $2; + $77 = ($76|0)!=(0); + $78 = $1; + $79 = ((($78)) + 12|0); + $80 = HEAP32[$79>>2]|0; + if ($77) { + $81 = ((($80)) + 36|0); + $82 = HEAP32[$81>>2]|0; + $85 = $82; + } else { + $83 = ((($80)) + 40|0); + $84 = HEAP32[$83>>2]|0; + $85 = $84; + } + $crypt_fn = $85; + $86 = $2; + $87 = ($86|0)!=(0); + if ($87) { + $88 = $1; + $89 = ((($88)) + 80|0); + $90 = $5; + $91 = $nblks; + _ocb_checksum($89,$90,$91); + } + while(1) { + $92 = $6; + $93 = ($92>>>0)>=(16); + if (!($93)) { + break; + } + $94 = $1; + $95 = ((($94)) + 128|0); + $96 = ((($95)) + 336|0); + $97 = $96; + $98 = $97; + $99 = HEAP32[$98>>2]|0; + $100 = (($97) + 4)|0; + $101 = $100; + $102 = HEAP32[$101>>2]|0; + $103 = (_i64Add(($99|0),($102|0),1,0)|0); + $104 = tempRet0; + $105 = $96; + $106 = $105; + HEAP32[$106>>2] = $103; + $107 = (($105) + 4)|0; + $108 = $107; + HEAP32[$108>>2] = $104; + $109 = $1; + $110 = ((($109)) + 64|0); + $111 = $1; + $112 = $1; + $113 = ((($112)) + 128|0); + $114 = ((($113)) + 336|0); + $115 = $114; + $116 = $115; + $117 = HEAP32[$116>>2]|0; + $118 = (($115) + 4)|0; + $119 = $118; + $120 = HEAP32[$119>>2]|0; + $121 = (__gcry_cipher_ocb_get_l($111,$l_tmp,$117,$120)|0); + _buf_xor_1_1886($110,$121,16); + $122 = $3; + $123 = $1; + $124 = ((($123)) + 64|0); + $125 = $5; + _buf_xor_1883($122,$124,$125,16); + $126 = $crypt_fn; + $127 = $1; + $128 = ((($127)) + 496|0); + $129 = $3; + $130 = $3; + $131 = (FUNCTION_TABLE_iiii[$126 & 127]($128,$129,$130)|0); + $nburn = $131; + $132 = $nburn; + $133 = $burn; + $134 = ($132>>>0)>($133>>>0); + $135 = $nburn; + $136 = $burn; + $137 = $134 ? $135 : $136; + $burn = $137; + $138 = $3; + $139 = $1; + $140 = ((($139)) + 64|0); + _buf_xor_1_1886($138,$140,16); + $141 = $5; + $142 = ((($141)) + 16|0); + $5 = $142; + $143 = $6; + $144 = (($143) - 16)|0; + $6 = $144; + $145 = $3; + $146 = ((($145)) + 16|0); + $3 = $146; + $4 = -16; + } + $147 = $2; + $148 = ($147|0)!=(0); + if (!($148)) { + $149 = $1; + $150 = ((($149)) + 80|0); + $151 = $3; + $152 = $nblks; + $153 = $152<<4; + $154 = (0 - ($153))|0; + $155 = (($151) + ($154)|0); + $156 = $nblks; + _ocb_checksum($150,$155,$156); + } + } + $157 = $6; + $158 = ($157|0)!=(0); + do { + if ($158) { + $159 = $1; + $160 = ((($159)) + 64|0); + $161 = $1; + $162 = ((($161)) + 128|0); + _buf_xor_1_1886($160,$162,16); + $163 = $1; + $164 = ((($163)) + 12|0); + $165 = HEAP32[$164>>2]|0; + $166 = ((($165)) + 36|0); + $167 = HEAP32[$166>>2]|0; + $168 = $1; + $169 = ((($168)) + 496|0); + $170 = $1; + $171 = ((($170)) + 64|0); + $172 = (FUNCTION_TABLE_iiii[$167 & 127]($169,$pad,$171)|0); + $nburn = $172; + $173 = $nburn; + $174 = $burn; + $175 = ($173>>>0)>($174>>>0); + $176 = $nburn; + $177 = $burn; + $178 = $175 ? $176 : $177; + $burn = $178; + $179 = $2; + $180 = ($179|0)!=(0); + if ($180) { + $181 = $5; + $182 = $6; + _buf_cpy_1878($l_tmp,$181,$182); + $183 = $6; + $184 = (($l_tmp) + ($183)|0); + $185 = $6; + $186 = (16 - ($185))|0; + _memset(($184|0),0,($186|0))|0; + $187 = $6; + $188 = (($l_tmp) + ($187)|0); + HEAP8[$188>>0] = -128; + $189 = $1; + $190 = ((($189)) + 80|0); + _buf_xor_1_1886($190,$l_tmp,16); + $191 = $3; + $192 = $5; + $193 = $6; + _buf_xor_1883($191,$192,$pad,$193); + break; + } else { + _buf_cpy_1878($l_tmp,$pad,16); + $194 = $5; + $195 = $6; + _buf_cpy_1878($l_tmp,$194,$195); + _buf_xor_1_1886($l_tmp,$pad,16); + $196 = $6; + $197 = (($l_tmp) + ($196)|0); + HEAP8[$197>>0] = -128; + $198 = $3; + $199 = $6; + _buf_cpy_1878($198,$l_tmp,$199); + $200 = $1; + $201 = ((($200)) + 80|0); + _buf_xor_1_1886($201,$l_tmp,16); + break; + } + } + } while(0); + $202 = $1; + $203 = ((($202)) + 56|0); + $204 = HEAP8[$203>>0]|0; + $205 = ($204&255) >>> 3; + $206 = $205 & 1; + $207 = $206&255; + $208 = ($207|0)!=(0); + if ($208) { + $209 = $1; + $210 = ((($209)) + 128|0); + $211 = ((($210)) + 288|0); + $212 = $1; + $213 = ((($212)) + 80|0); + $214 = $1; + $215 = ((($214)) + 64|0); + _buf_xor_1883($211,$213,$215,16); + $216 = $1; + $217 = ((($216)) + 128|0); + $218 = ((($217)) + 288|0); + $219 = $1; + $220 = ((($219)) + 128|0); + $221 = ((($220)) + 16|0); + _buf_xor_1_1886($218,$221,16); + $222 = $1; + $223 = ((($222)) + 12|0); + $224 = HEAP32[$223>>2]|0; + $225 = ((($224)) + 36|0); + $226 = HEAP32[$225>>2]|0; + $227 = $1; + $228 = ((($227)) + 496|0); + $229 = $1; + $230 = ((($229)) + 128|0); + $231 = ((($230)) + 288|0); + $232 = $1; + $233 = ((($232)) + 128|0); + $234 = ((($233)) + 288|0); + $235 = (FUNCTION_TABLE_iiii[$226 & 127]($228,$231,$234)|0); + $nburn = $235; + $236 = $nburn; + $237 = $burn; + $238 = ($236>>>0)>($237>>>0); + $239 = $nburn; + $240 = $burn; + $241 = $238 ? $239 : $240; + $burn = $241; + $242 = $1; + $243 = ((($242)) + 128|0); + $244 = ((($243)) + 353|0); + $245 = HEAP8[$244>>0]|0; + $246 = $245 & -2; + $247 = $246 | 1; + HEAP8[$244>>0] = $247; + } + $248 = $burn; + $249 = ($248>>>0)>(0); + if ($249) { + $250 = $burn; + $251 = (($250) + 16)|0; + ___gcry_burn_stack($251); + ___gcry_burn_stack_dummy(); + } + $0 = 0; + $252 = $0; + STACKTOP = sp;return ($252|0); + } + } + $0 = 156; + $252 = $0; + STACKTOP = sp;return ($252|0); +} +function _ocb_checksum($chksum,$plainbuf,$nblks) { + $chksum = $chksum|0; + $plainbuf = $plainbuf|0; + $nblks = $nblks|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $chksum; + $1 = $plainbuf; + $2 = $nblks; + while(1) { + $3 = $2; + $4 = ($3>>>0)>(0); + if (!($4)) { + break; + } + $5 = $0; + $6 = $1; + _buf_xor_1_1886($5,$6,16); + $7 = $1; + $8 = ((($7)) + 16|0); + $1 = $8; + $9 = $2; + $10 = (($9) + -1)|0; + $2 = $10; + } + STACKTOP = sp;return; +} +function __gcry_cipher_ocb_decrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $c; + $1 = $outbuf; + $2 = $outbuflen; + $3 = $inbuf; + $4 = $inbuflen; + $5 = $0; + $6 = $1; + $7 = $2; + $8 = $3; + $9 = $4; + $10 = (_ocb_crypt($5,0,$6,$7,$8,$9)|0); + STACKTOP = sp;return ($10|0); +} +function __gcry_cipher_ofb_encrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; + var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $blocksize = 0, $burn = 0, $enc_fn = 0, $ivp = 0, $nburn = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $c; + $2 = $outbuf; + $3 = $outbuflen; + $4 = $inbuf; + $5 = $inbuflen; + $6 = $1; + $7 = ((($6)) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = ((($8)) + 36|0); + $10 = HEAP32[$9>>2]|0; + $enc_fn = $10; + $11 = $1; + $12 = ((($11)) + 12|0); + $13 = HEAP32[$12>>2]|0; + $14 = ((($13)) + 20|0); + $15 = HEAP32[$14>>2]|0; + $blocksize = $15; + $16 = $3; + $17 = $5; + $18 = ($16>>>0)<($17>>>0); + if ($18) { + $0 = 200; + $148 = $0; + STACKTOP = sp;return ($148|0); + } + $19 = $5; + $20 = $1; + $21 = ((($20)) + 112|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($19>>>0)<=($22>>>0); + if ($23) { + $24 = $1; + $25 = ((($24)) + 64|0); + $26 = $blocksize; + $27 = (($25) + ($26)|0); + $28 = $1; + $29 = ((($28)) + 112|0); + $30 = HEAP32[$29>>2]|0; + $31 = (0 - ($30))|0; + $32 = (($27) + ($31)|0); + $ivp = $32; + $33 = $2; + $34 = $ivp; + $35 = $4; + $36 = $5; + _buf_xor_1898($33,$34,$35,$36); + $37 = $5; + $38 = $1; + $39 = ((($38)) + 112|0); + $40 = HEAP32[$39>>2]|0; + $41 = (($40) - ($37))|0; + HEAP32[$39>>2] = $41; + $0 = 0; + $148 = $0; + STACKTOP = sp;return ($148|0); + } + $burn = 0; + $42 = $1; + $43 = ((($42)) + 112|0); + $44 = HEAP32[$43>>2]|0; + $45 = ($44|0)!=(0); + if ($45) { + $46 = $1; + $47 = ((($46)) + 112|0); + $48 = HEAP32[$47>>2]|0; + $49 = $5; + $50 = (($49) - ($48))|0; + $5 = $50; + $51 = $1; + $52 = ((($51)) + 64|0); + $53 = $blocksize; + $54 = (($52) + ($53)|0); + $55 = $1; + $56 = ((($55)) + 112|0); + $57 = HEAP32[$56>>2]|0; + $58 = (0 - ($57))|0; + $59 = (($54) + ($58)|0); + $ivp = $59; + $60 = $2; + $61 = $ivp; + $62 = $4; + $63 = $1; + $64 = ((($63)) + 112|0); + $65 = HEAP32[$64>>2]|0; + _buf_xor_1898($60,$61,$62,$65); + $66 = $1; + $67 = ((($66)) + 112|0); + $68 = HEAP32[$67>>2]|0; + $69 = $2; + $70 = (($69) + ($68)|0); + $2 = $70; + $71 = $1; + $72 = ((($71)) + 112|0); + $73 = HEAP32[$72>>2]|0; + $74 = $4; + $75 = (($74) + ($73)|0); + $4 = $75; + $76 = $1; + $77 = ((($76)) + 112|0); + HEAP32[$77>>2] = 0; + } + while(1) { + $78 = $5; + $79 = $blocksize; + $80 = ($78>>>0)>=($79>>>0); + if (!($80)) { + break; + } + $81 = $enc_fn; + $82 = $1; + $83 = ((($82)) + 496|0); + $84 = $1; + $85 = ((($84)) + 64|0); + $86 = $1; + $87 = ((($86)) + 64|0); + $88 = (FUNCTION_TABLE_iiii[$81 & 127]($83,$85,$87)|0); + $nburn = $88; + $89 = $nburn; + $90 = $burn; + $91 = ($89>>>0)>($90>>>0); + $92 = $nburn; + $93 = $burn; + $94 = $91 ? $92 : $93; + $burn = $94; + $95 = $2; + $96 = $1; + $97 = ((($96)) + 64|0); + $98 = $4; + $99 = $blocksize; + _buf_xor_1898($95,$97,$98,$99); + $100 = $blocksize; + $101 = $2; + $102 = (($101) + ($100)|0); + $2 = $102; + $103 = $blocksize; + $104 = $4; + $105 = (($104) + ($103)|0); + $4 = $105; + $106 = $blocksize; + $107 = $5; + $108 = (($107) - ($106))|0; + $5 = $108; + } + $109 = $5; + $110 = ($109|0)!=(0); + if ($110) { + $111 = $enc_fn; + $112 = $1; + $113 = ((($112)) + 496|0); + $114 = $1; + $115 = ((($114)) + 64|0); + $116 = $1; + $117 = ((($116)) + 64|0); + $118 = (FUNCTION_TABLE_iiii[$111 & 127]($113,$115,$117)|0); + $nburn = $118; + $119 = $nburn; + $120 = $burn; + $121 = ($119>>>0)>($120>>>0); + $122 = $nburn; + $123 = $burn; + $124 = $121 ? $122 : $123; + $burn = $124; + $125 = $blocksize; + $126 = $1; + $127 = ((($126)) + 112|0); + HEAP32[$127>>2] = $125; + $128 = $5; + $129 = $1; + $130 = ((($129)) + 112|0); + $131 = HEAP32[$130>>2]|0; + $132 = (($131) - ($128))|0; + HEAP32[$130>>2] = $132; + $133 = $2; + $134 = $1; + $135 = ((($134)) + 64|0); + $136 = $4; + $137 = $5; + _buf_xor_1898($133,$135,$136,$137); + $138 = $5; + $139 = $2; + $140 = (($139) + ($138)|0); + $2 = $140; + $141 = $5; + $142 = $4; + $143 = (($142) + ($141)|0); + $4 = $143; + $5 = 0; + } + $144 = $burn; + $145 = ($144>>>0)>(0); + if ($145) { + $146 = $burn; + $147 = (($146) + 16)|0; + ___gcry_burn_stack($147); + ___gcry_burn_stack_dummy(); + } + $0 = 0; + $148 = $0; + STACKTOP = sp;return ($148|0); +} +function _buf_xor_1898($_dst,$_src1,$_src2,$len) { + $_dst = $_dst|0; + $_src1 = $_src1|0; + $_src2 = $_src2|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst = 0, $ldst = 0, $longmask = 0, $lsrc1 = 0, $lsrc2 = 0, $src1 = 0, $src2 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst; + $1 = $_src1; + $2 = $_src2; + $3 = $len; + $4 = $0; + $dst = $4; + $5 = $1; + $src1 = $5; + $6 = $2; + $src2 = $6; + $longmask = 3; + $7 = $dst; + $8 = $7; + $9 = $src1; + $10 = $9; + $11 = $8 | $10; + $12 = $src2; + $13 = $12; + $14 = $11 | $13; + $15 = $14 & 3; + $16 = ($15|0)!=(0); + if (!($16)) { + $17 = $dst; + $ldst = $17; + $18 = $src1; + $lsrc1 = $18; + $19 = $src2; + $lsrc2 = $19; + while(1) { + $20 = $3; + $21 = ($20>>>0)>=(4); + if (!($21)) { + break; + } + $22 = $lsrc1; + $23 = ((($22)) + 4|0); + $lsrc1 = $23; + $24 = HEAP32[$22>>2]|0; + $25 = $lsrc2; + $26 = ((($25)) + 4|0); + $lsrc2 = $26; + $27 = HEAP32[$25>>2]|0; + $28 = $24 ^ $27; + $29 = $ldst; + $30 = ((($29)) + 4|0); + $ldst = $30; + HEAP32[$29>>2] = $28; + $31 = $3; + $32 = (($31) - 4)|0; + $3 = $32; + } + $33 = $ldst; + $dst = $33; + $34 = $lsrc1; + $src1 = $34; + $35 = $lsrc2; + $src2 = $35; + } + while(1) { + $36 = $3; + $37 = ($36|0)!=(0); + if (!($37)) { + break; + } + $38 = $src1; + $39 = ((($38)) + 1|0); + $src1 = $39; + $40 = HEAP8[$38>>0]|0; + $41 = $40&255; + $42 = $src2; + $43 = ((($42)) + 1|0); + $src2 = $43; + $44 = HEAP8[$42>>0]|0; + $45 = $44&255; + $46 = $41 ^ $45; + $47 = $46&255; + $48 = $dst; + $49 = ((($48)) + 1|0); + $dst = $49; + HEAP8[$48>>0] = $47; + $50 = $3; + $51 = (($50) + -1)|0; + $3 = $51; + } + STACKTOP = sp;return; +} +function _poly1305_set_zeroiv($c) { + $c = $c|0; + var $0 = 0, $1 = 0, $2 = 0, $zero = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $zero = sp + 8|0; + $0 = $c; + ;HEAP8[$zero>>0]=0|0;HEAP8[$zero+1>>0]=0|0;HEAP8[$zero+2>>0]=0|0;HEAP8[$zero+3>>0]=0|0;HEAP8[$zero+4>>0]=0|0;HEAP8[$zero+5>>0]=0|0;HEAP8[$zero+6>>0]=0|0;HEAP8[$zero+7>>0]=0|0; + $1 = $0; + $2 = (__gcry_cipher_poly1305_setiv($1,$zero,8)|0); + STACKTOP = sp;return ($2|0); +} +function __gcry_cipher_poly1305_setiv($c,$iv,$ivlen) { + $c = $c|0; + $iv = $iv|0; + $ivlen = $ivlen|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; + var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $_vlen = 0, $_vptr = 0, $_vptr_long = 0, $_vset = 0, $_vset_long = 0, $err = 0, $or$cond = 0, $tmpbuf = 0, dest = 0, label = 0, sp = 0; + var stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $tmpbuf = sp + 48|0; + $_vset_long = sp; + $1 = $c; + $2 = $iv; + $3 = $ivlen; + $4 = $2; + $5 = ($4|0)==(0|0); + $6 = $3; + $7 = ($6|0)!=(12); + $or$cond = $5 & $7; + if ($or$cond) { + $0 = 45; + $128 = $0; + STACKTOP = sp;return ($128|0); + } + $8 = $1; + $9 = ((($8)) + 128|0); + $10 = ((($9)) + 20|0); + dest=$10; stop=dest+92|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $11 = $1; + $12 = ((($11)) + 128|0); + HEAP32[$12>>2] = 0; + $13 = $1; + $14 = ((($13)) + 128|0); + $15 = ((($14)) + 4|0); + HEAP32[$15>>2] = 0; + $16 = $1; + $17 = ((($16)) + 128|0); + $18 = ((($17)) + 8|0); + HEAP32[$18>>2] = 0; + $19 = $1; + $20 = ((($19)) + 128|0); + $21 = ((($20)) + 8|0); + $22 = ((($21)) + 4|0); + HEAP32[$22>>2] = 0; + $23 = $1; + $24 = ((($23)) + 128|0); + $25 = ((($24)) + 16|0); + $26 = HEAP8[$25>>0]|0; + $27 = $26 & -3; + HEAP8[$25>>0] = $27; + $28 = $1; + $29 = ((($28)) + 128|0); + $30 = ((($29)) + 16|0); + $31 = HEAP8[$30>>0]|0; + $32 = $31 & -2; + HEAP8[$30>>0] = $32; + $33 = $1; + $34 = ((($33)) + 56|0); + $35 = HEAP8[$34>>0]|0; + $36 = $35 & -5; + HEAP8[$34>>0] = $36; + $37 = $1; + $38 = ((($37)) + 56|0); + $39 = HEAP8[$38>>0]|0; + $40 = $39 & -3; + HEAP8[$38>>0] = $40; + $41 = $1; + $42 = ((($41)) + 12|0); + $43 = HEAP32[$42>>2]|0; + $44 = ((($43)) + 60|0); + $45 = HEAP32[$44>>2]|0; + $46 = $1; + $47 = ((($46)) + 496|0); + $48 = $2; + $49 = $3; + FUNCTION_TABLE_viii[$45 & 127]($47,$48,$49); + dest=$tmpbuf; stop=dest+64|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); + $50 = $1; + $51 = ((($50)) + 12|0); + $52 = HEAP32[$51>>2]|0; + $53 = ((($52)) + 44|0); + $54 = HEAP32[$53>>2]|0; + $55 = $1; + $56 = ((($55)) + 496|0); + FUNCTION_TABLE_viiii[$54 & 63]($56,$tmpbuf,$tmpbuf,64); + $57 = $1; + $58 = ((($57)) + 128|0); + $59 = ((($58)) + 20|0); + $60 = (__gcry_poly1305_init($59,$tmpbuf,32)|0); + $err = $60; + $_vptr = $tmpbuf; + $_vlen = 64; + $_vset = 0; + $61 = $_vset; + $62 = $61&255; + $63 = $_vset_long; + $64 = $63; + HEAP32[$64>>2] = $62; + $65 = (($63) + 4)|0; + $66 = $65; + HEAP32[$66>>2] = 0; + while(1) { + $67 = $_vptr; + $68 = $67; + $69 = $68 & 7; + $70 = ($69|0)!=(0); + $71 = $_vlen; + $72 = ($71|0)!=(0); + $73 = $70 ? $72 : 0; + if (!($73)) { + break; + } + $74 = $_vset; + $75 = $_vptr; + HEAP8[$75>>0] = $74; + $76 = $_vptr; + $77 = ((($76)) + 1|0); + $_vptr = $77; + $78 = $_vlen; + $79 = (($78) + -1)|0; + $_vlen = $79; + } + $80 = $_vlen; + $81 = ($80>>>0)<(8); + if (!($81)) { + $82 = $_vset_long; + $83 = $82; + $84 = HEAP32[$83>>2]|0; + $85 = (($82) + 4)|0; + $86 = $85; + $87 = HEAP32[$86>>2]|0; + $88 = (___muldi3(($84|0),($87|0),16843009,16843009)|0); + $89 = tempRet0; + $90 = $_vset_long; + $91 = $90; + HEAP32[$91>>2] = $88; + $92 = (($90) + 4)|0; + $93 = $92; + HEAP32[$93>>2] = $89; + while(1) { + $94 = $_vptr; + $_vptr_long = $94; + $95 = $_vset_long; + $96 = $95; + $97 = HEAP32[$96>>2]|0; + $98 = (($95) + 4)|0; + $99 = $98; + $100 = HEAP32[$99>>2]|0; + $101 = $_vptr_long; + $102 = $101; + $103 = $102; + HEAP32[$103>>2] = $97; + $104 = (($102) + 4)|0; + $105 = $104; + HEAP32[$105>>2] = $100; + $106 = $_vlen; + $107 = (($106) - 8)|0; + $_vlen = $107; + $108 = $_vptr; + $109 = ((($108)) + 8|0); + $_vptr = $109; + $110 = $_vlen; + $111 = ($110>>>0)>=(8); + if (!($111)) { + break; + } + } + } + while(1) { + $112 = $_vlen; + $113 = ($112|0)!=(0); + if (!($113)) { + break; + } + $114 = $_vset; + $115 = $_vptr; + HEAP8[$115>>0] = $114; + $116 = $_vptr; + $117 = ((($116)) + 1|0); + $_vptr = $117; + $118 = $_vlen; + $119 = (($118) + -1)|0; + $_vlen = $119; + } + $120 = $err; + $121 = ($120|0)!=(0); + if ($121) { + $122 = $err; + $0 = $122; + $128 = $0; + STACKTOP = sp;return ($128|0); + } else { + $123 = $1; + $124 = ((($123)) + 56|0); + $125 = HEAP8[$124>>0]|0; + $126 = $125 & -3; + $127 = $126 | 2; + HEAP8[$124>>0] = $127; + $0 = 0; + $128 = $0; + STACKTOP = sp;return ($128|0); + } + return (0)|0; +} +function _poly1305_bytecounter_add($ctr,$add) { + $ctr = $ctr|0; + $add = $add|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $overflow = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $ctr; + $2 = $add; + $overflow = 0; + $3 = $2; + $4 = $1; + $5 = HEAP32[$4>>2]|0; + $6 = (($5) + ($3))|0; + HEAP32[$4>>2] = $6; + $7 = $1; + $8 = HEAP32[$7>>2]|0; + $9 = $2; + $10 = ($8>>>0)>=($9>>>0); + if ($10) { + $11 = $overflow; + $0 = $11; + $24 = $0; + STACKTOP = sp;return ($24|0); + } else { + $12 = $1; + $13 = ((($12)) + 4|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + 1)|0; + HEAP32[$13>>2] = $15; + $16 = $1; + $17 = ((($16)) + 4|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($18>>>0)<(1); + $20 = $overflow; + $21 = ($20|0)!=(0); + $22 = $19 ? 1 : $21; + $23 = $22&1; + $0 = $23; + $24 = $0; + STACKTOP = sp;return ($24|0); + } + return (0)|0; +} +function __gcry_cipher_poly1305_encrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $err = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $c; + $2 = $outbuf; + $3 = $outbuflen; + $4 = $inbuf; + $5 = $inbuflen; + $6 = $3; + $7 = $5; + $8 = ($6>>>0)<($7>>>0); + if ($8) { + $0 = 200; + $70 = $0; + STACKTOP = sp;return ($70|0); + } + $9 = $1; + $10 = ((($9)) + 56|0); + $11 = HEAP8[$10>>0]|0; + $12 = ($11&255) >>> 2; + $13 = $12 & 1; + $14 = $13&255; + $15 = ($14|0)!=(0); + if ($15) { + $0 = 156; + $70 = $0; + STACKTOP = sp;return ($70|0); + } + $16 = $1; + $17 = ((($16)) + 128|0); + $18 = ((($17)) + 16|0); + $19 = HEAP8[$18>>0]|0; + $20 = ($19&255) >>> 1; + $21 = $20 & 1; + $22 = $21&255; + $23 = ($22|0)!=(0); + if ($23) { + $0 = 139; + $70 = $0; + STACKTOP = sp;return ($70|0); + } + $24 = $1; + $25 = ((($24)) + 56|0); + $26 = HEAP8[$25>>0]|0; + $27 = ($26&255) >>> 1; + $28 = $27 & 1; + $29 = $28&255; + $30 = ($29|0)!=(0); + if (!($30)) { + $31 = $1; + $32 = (_poly1305_set_zeroiv($31)|0); + $err = $32; + $33 = $err; + $34 = ($33|0)!=(0); + if ($34) { + $35 = $err; + $0 = $35; + $70 = $0; + STACKTOP = sp;return ($70|0); + } + } + $36 = $1; + $37 = ((($36)) + 128|0); + $38 = ((($37)) + 16|0); + $39 = HEAP8[$38>>0]|0; + $40 = $39 & 1; + $41 = $40&255; + $42 = ($41|0)!=(0); + if (!($42)) { + $43 = $1; + _poly1305_aad_finish($43); + } + $44 = $1; + $45 = ((($44)) + 128|0); + $46 = ((($45)) + 8|0); + $47 = $5; + $48 = (_poly1305_bytecounter_add($46,$47)|0); + $49 = ($48|0)!=(0); + $50 = $1; + if ($49) { + $51 = ((($50)) + 128|0); + $52 = ((($51)) + 16|0); + $53 = HEAP8[$52>>0]|0; + $54 = $53 & -3; + $55 = $54 | 2; + HEAP8[$52>>0] = $55; + $0 = 139; + $70 = $0; + STACKTOP = sp;return ($70|0); + } else { + $56 = ((($50)) + 12|0); + $57 = HEAP32[$56>>2]|0; + $58 = ((($57)) + 44|0); + $59 = HEAP32[$58>>2]|0; + $60 = $1; + $61 = ((($60)) + 496|0); + $62 = $2; + $63 = $4; + $64 = $5; + FUNCTION_TABLE_viiii[$59 & 63]($61,$62,$63,$64); + $65 = $1; + $66 = ((($65)) + 128|0); + $67 = ((($66)) + 20|0); + $68 = $2; + $69 = $5; + __gcry_poly1305_update($67,$68,$69); + $0 = 0; + $70 = $0; + STACKTOP = sp;return ($70|0); + } + return (0)|0; +} +function _poly1305_aad_finish($c) { + $c = $c|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $c; + $1 = $0; + $2 = $0; + $3 = ((($2)) + 128|0); + _poly1305_do_padding($1,$3); + $4 = $0; + $5 = ((($4)) + 128|0); + $6 = ((($5)) + 16|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7 & -2; + $9 = $8 | 1; + HEAP8[$6>>0] = $9; + $10 = $0; + $11 = ((($10)) + 128|0); + $12 = ((($11)) + 8|0); + HEAP32[$12>>2] = 0; + $13 = $0; + $14 = ((($13)) + 128|0); + $15 = ((($14)) + 8|0); + $16 = ((($15)) + 4|0); + HEAP32[$16>>2] = 0; + STACKTOP = sp;return; +} +function _poly1305_do_padding($c,$ctr) { + $c = $c|0; + $ctr = $ctr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $padding_count = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $c; + $1 = $ctr; + $2 = $1; + $3 = HEAP32[$2>>2]|0; + $4 = (($3>>>0) % 16)&-1; + $5 = ($4>>>0)>(0); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = $1; + $7 = HEAP32[$6>>2]|0; + $8 = (($7>>>0) % 16)&-1; + $9 = (16 - ($8))|0; + $padding_count = $9; + $10 = $0; + $11 = ((($10)) + 128|0); + $12 = ((($11)) + 20|0); + $13 = $padding_count; + __gcry_poly1305_update($12,76507,$13); + STACKTOP = sp;return; +} +function __gcry_cipher_poly1305_decrypt($c,$outbuf,$outbuflen,$inbuf,$inbuflen) { + $c = $c|0; + $outbuf = $outbuf|0; + $outbuflen = $outbuflen|0; + $inbuf = $inbuf|0; + $inbuflen = $inbuflen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, $err = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $c; + $2 = $outbuf; + $3 = $outbuflen; + $4 = $inbuf; + $5 = $inbuflen; + $6 = $3; + $7 = $5; + $8 = ($6>>>0)<($7>>>0); + if ($8) { + $0 = 200; + $69 = $0; + STACKTOP = sp;return ($69|0); + } + $9 = $1; + $10 = ((($9)) + 56|0); + $11 = HEAP8[$10>>0]|0; + $12 = ($11&255) >>> 2; + $13 = $12 & 1; + $14 = $13&255; + $15 = ($14|0)!=(0); + if ($15) { + $0 = 156; + $69 = $0; + STACKTOP = sp;return ($69|0); + } + $16 = $1; + $17 = ((($16)) + 128|0); + $18 = ((($17)) + 16|0); + $19 = HEAP8[$18>>0]|0; + $20 = ($19&255) >>> 1; + $21 = $20 & 1; + $22 = $21&255; + $23 = ($22|0)!=(0); + if ($23) { + $0 = 139; + $69 = $0; + STACKTOP = sp;return ($69|0); + } + $24 = $1; + $25 = ((($24)) + 56|0); + $26 = HEAP8[$25>>0]|0; + $27 = ($26&255) >>> 1; + $28 = $27 & 1; + $29 = $28&255; + $30 = ($29|0)!=(0); + if (!($30)) { + $31 = $1; + $32 = (_poly1305_set_zeroiv($31)|0); + $err = $32; + $33 = $err; + $34 = ($33|0)!=(0); + if ($34) { + $35 = $err; + $0 = $35; + $69 = $0; + STACKTOP = sp;return ($69|0); + } + } + $36 = $1; + $37 = ((($36)) + 128|0); + $38 = ((($37)) + 16|0); + $39 = HEAP8[$38>>0]|0; + $40 = $39 & 1; + $41 = $40&255; + $42 = ($41|0)!=(0); + if (!($42)) { + $43 = $1; + _poly1305_aad_finish($43); + } + $44 = $1; + $45 = ((($44)) + 128|0); + $46 = ((($45)) + 8|0); + $47 = $5; + $48 = (_poly1305_bytecounter_add($46,$47)|0); + $49 = ($48|0)!=(0); + $50 = $1; + $51 = ((($50)) + 128|0); + if ($49) { + $52 = ((($51)) + 16|0); + $53 = HEAP8[$52>>0]|0; + $54 = $53 & -3; + $55 = $54 | 2; + HEAP8[$52>>0] = $55; + $0 = 139; + $69 = $0; + STACKTOP = sp;return ($69|0); + } else { + $56 = ((($51)) + 20|0); + $57 = $4; + $58 = $5; + __gcry_poly1305_update($56,$57,$58); + $59 = $1; + $60 = ((($59)) + 12|0); + $61 = HEAP32[$60>>2]|0; + $62 = ((($61)) + 48|0); + $63 = HEAP32[$62>>2]|0; + $64 = $1; + $65 = ((($64)) + 496|0); + $66 = $2; + $67 = $4; + $68 = $5; + FUNCTION_TABLE_viiii[$63 & 63]($65,$66,$67,$68); + $0 = 0; + $69 = $0; + STACKTOP = sp;return ($69|0); + } + return (0)|0; +} +function __gcry_cipher_poly1305_setkey($c) { + $c = $c|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $c; + $1 = $0; + $2 = ((($1)) + 128|0); + HEAP32[$2>>2] = 0; + $3 = $0; + $4 = ((($3)) + 128|0); + $5 = ((($4)) + 4|0); + HEAP32[$5>>2] = 0; + $6 = $0; + $7 = ((($6)) + 128|0); + $8 = ((($7)) + 8|0); + HEAP32[$8>>2] = 0; + $9 = $0; + $10 = ((($9)) + 128|0); + $11 = ((($10)) + 8|0); + $12 = ((($11)) + 4|0); + HEAP32[$12>>2] = 0; + $13 = $0; + $14 = ((($13)) + 128|0); + $15 = ((($14)) + 16|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16 & -3; + HEAP8[$15>>0] = $17; + $18 = $0; + $19 = ((($18)) + 128|0); + $20 = ((($19)) + 16|0); + $21 = HEAP8[$20>>0]|0; + $22 = $21 & -2; + HEAP8[$20>>0] = $22; + $23 = $0; + $24 = ((($23)) + 56|0); + $25 = HEAP8[$24>>0]|0; + $26 = $25 & -5; + HEAP8[$24>>0] = $26; + $27 = $0; + $28 = ((($27)) + 56|0); + $29 = HEAP8[$28>>0]|0; + $30 = $29 & -3; + HEAP8[$28>>0] = $30; + STACKTOP = sp;return; +} +function __gcry_selftest_helper_cbc($cipher,$setkey_func,$encrypt_one,$bulk_cbc_dec,$nblocks,$blocksize,$context_size) { + $cipher = $cipher|0; + $setkey_func = $setkey_func|0; + $encrypt_one = $encrypt_one|0; + $bulk_cbc_dec = $bulk_cbc_dec|0; + $nblocks = $nblocks|0; + $blocksize = $blocksize|0; + $context_size = $context_size|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $17 = 0, $18 = 0, $19 = 0; + var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; + var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $ciphertext = 0, $ctx = 0, $ctx_aligned_size = 0, $i = 0, $iv = 0, $iv2 = 0, $mem = 0, $memsize = 0, $offs = 0, $plaintext = 0, $plaintext2 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $cipher; + $2 = $setkey_func; + $3 = $encrypt_one; + $4 = $bulk_cbc_dec; + $5 = $nblocks; + $6 = $blocksize; + $7 = $context_size; + $8 = $7; + $9 = (($8) + 15)|0; + $ctx_aligned_size = $9; + $10 = $ctx_aligned_size; + $11 = $10 & 15; + $12 = $ctx_aligned_size; + $13 = (($12) - ($11))|0; + $ctx_aligned_size = $13; + $14 = $ctx_aligned_size; + $15 = $6; + $16 = $15<<1; + $17 = (($14) + ($16))|0; + $18 = $6; + $19 = $5; + $20 = Math_imul($18, $19)|0; + $21 = ($20*3)|0; + $22 = (($17) + ($21))|0; + $23 = (($22) + 16)|0; + $memsize = $23; + $24 = $memsize; + $25 = (__gcry_calloc(1,$24)|0); + $mem = $25; + $26 = $mem; + $27 = ($26|0)!=(0|0); + if (!($27)) { + $0 = 46944; + $167 = $0; + STACKTOP = sp;return ($167|0); + } + $28 = $mem; + $29 = $28; + $30 = $29 & 15; + $31 = (16 - ($30))|0; + $32 = $31 & 15; + $offs = $32; + $33 = $mem; + $34 = $offs; + $35 = (($33) + ($34)|0); + $ctx = $35; + $36 = $ctx; + $37 = $ctx_aligned_size; + $38 = (($36) + ($37)|0); + $iv = $38; + $39 = $iv; + $40 = $6; + $41 = (($39) + ($40)|0); + $iv2 = $41; + $42 = $iv2; + $43 = $6; + $44 = (($42) + ($43)|0); + $plaintext = $44; + $45 = $plaintext; + $46 = $5; + $47 = $6; + $48 = Math_imul($46, $47)|0; + $49 = (($45) + ($48)|0); + $plaintext2 = $49; + $50 = $plaintext2; + $51 = $5; + $52 = $6; + $53 = Math_imul($51, $52)|0; + $54 = (($50) + ($53)|0); + $ciphertext = $54; + $55 = $2; + $56 = $ctx; + $57 = (FUNCTION_TABLE_iiii[$55 & 127]($56,16,16)|0); + $58 = ($57|0)!=(0); + if ($58) { + $59 = $mem; + __gcry_free($59); + $0 = 46970; + $167 = $0; + STACKTOP = sp;return ($167|0); + } + $60 = $iv; + $61 = $6; + _memset(($60|0),78,($61|0))|0; + $62 = $iv2; + $63 = $6; + _memset(($62|0),78,($63|0))|0; + $i = 0; + while(1) { + $64 = $i; + $65 = $6; + $66 = ($64|0)<($65|0); + if (!($66)) { + break; + } + $67 = $i; + $68 = $67&255; + $69 = $i; + $70 = $plaintext; + $71 = (($70) + ($69)|0); + HEAP8[$71>>0] = $68; + $72 = $i; + $73 = (($72) + 1)|0; + $i = $73; + } + $74 = $ciphertext; + $75 = $iv; + $76 = $plaintext; + $77 = $6; + _buf_xor_1918($74,$75,$76,$77); + $78 = $3; + $79 = $ctx; + $80 = $ciphertext; + $81 = $ciphertext; + (FUNCTION_TABLE_iiii[$78 & 127]($79,$80,$81)|0); + $82 = $iv; + $83 = $ciphertext; + $84 = $6; + _memcpy(($82|0),($83|0),($84|0))|0; + $85 = $4; + $86 = $ctx; + $87 = $iv2; + $88 = $plaintext2; + $89 = $ciphertext; + FUNCTION_TABLE_viiiii[$85 & 127]($86,$87,$88,$89,1); + $90 = $plaintext2; + $91 = $plaintext; + $92 = $6; + $93 = (_memcmp($90,$91,$92)|0); + $94 = ($93|0)!=(0); + if ($94) { + $95 = $mem; + __gcry_free($95); + $0 = 46984; + $167 = $0; + STACKTOP = sp;return ($167|0); + } + $96 = $iv2; + $97 = $iv; + $98 = $6; + $99 = (_memcmp($96,$97,$98)|0); + $100 = ($99|0)!=(0); + if ($100) { + $101 = $mem; + __gcry_free($101); + $0 = 46984; + $167 = $0; + STACKTOP = sp;return ($167|0); + } + $102 = $iv; + $103 = $6; + _memset(($102|0),95,($103|0))|0; + $104 = $iv2; + $105 = $6; + _memset(($104|0),95,($105|0))|0; + $i = 0; + while(1) { + $106 = $i; + $107 = $5; + $108 = $6; + $109 = Math_imul($107, $108)|0; + $110 = ($106|0)<($109|0); + if (!($110)) { + break; + } + $111 = $i; + $112 = $111&255; + $113 = $i; + $114 = $plaintext; + $115 = (($114) + ($113)|0); + HEAP8[$115>>0] = $112; + $116 = $i; + $117 = (($116) + 1)|0; + $i = $117; + } + $i = 0; + while(1) { + $118 = $i; + $119 = $5; + $120 = $6; + $121 = Math_imul($119, $120)|0; + $122 = ($118|0)<($121|0); + if (!($122)) { + break; + } + $123 = $i; + $124 = $ciphertext; + $125 = (($124) + ($123)|0); + $126 = $iv; + $127 = $i; + $128 = $plaintext; + $129 = (($128) + ($127)|0); + $130 = $6; + _buf_xor_1918($125,$126,$129,$130); + $131 = $3; + $132 = $ctx; + $133 = $i; + $134 = $ciphertext; + $135 = (($134) + ($133)|0); + $136 = $i; + $137 = $ciphertext; + $138 = (($137) + ($136)|0); + (FUNCTION_TABLE_iiii[$131 & 127]($132,$135,$138)|0); + $139 = $iv; + $140 = $i; + $141 = $ciphertext; + $142 = (($141) + ($140)|0); + $143 = $6; + _memcpy(($139|0),($142|0),($143|0))|0; + $144 = $6; + $145 = $i; + $146 = (($145) + ($144))|0; + $i = $146; + } + $147 = $4; + $148 = $ctx; + $149 = $iv2; + $150 = $plaintext2; + $151 = $ciphertext; + $152 = $5; + FUNCTION_TABLE_viiiii[$147 & 127]($148,$149,$150,$151,$152); + $153 = $plaintext2; + $154 = $plaintext; + $155 = $5; + $156 = $6; + $157 = Math_imul($155, $156)|0; + $158 = (_memcmp($153,$154,$157)|0); + $159 = ($158|0)!=(0); + if ($159) { + $160 = $mem; + __gcry_free($160); + $0 = 46984; + $167 = $0; + STACKTOP = sp;return ($167|0); + } + $161 = $iv2; + $162 = $iv; + $163 = $6; + $164 = (_memcmp($161,$162,$163)|0); + $165 = ($164|0)!=(0); + $166 = $mem; + __gcry_free($166); + if ($165) { + $0 = 46984; + $167 = $0; + STACKTOP = sp;return ($167|0); + } else { + $0 = 0; + $167 = $0; + STACKTOP = sp;return ($167|0); + } + return (0)|0; +} +function _buf_xor_1918($_dst,$_src1,$_src2,$len) { + $_dst = $_dst|0; + $_src1 = $_src1|0; + $_src2 = $_src2|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst = 0, $ldst = 0, $longmask = 0, $lsrc1 = 0, $lsrc2 = 0, $src1 = 0, $src2 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst; + $1 = $_src1; + $2 = $_src2; + $3 = $len; + $4 = $0; + $dst = $4; + $5 = $1; + $src1 = $5; + $6 = $2; + $src2 = $6; + $longmask = 3; + $7 = $dst; + $8 = $7; + $9 = $src1; + $10 = $9; + $11 = $8 | $10; + $12 = $src2; + $13 = $12; + $14 = $11 | $13; + $15 = $14 & 3; + $16 = ($15|0)!=(0); + if (!($16)) { + $17 = $dst; + $ldst = $17; + $18 = $src1; + $lsrc1 = $18; + $19 = $src2; + $lsrc2 = $19; + while(1) { + $20 = $3; + $21 = ($20>>>0)>=(4); + if (!($21)) { + break; + } + $22 = $lsrc1; + $23 = ((($22)) + 4|0); + $lsrc1 = $23; + $24 = HEAP32[$22>>2]|0; + $25 = $lsrc2; + $26 = ((($25)) + 4|0); + $lsrc2 = $26; + $27 = HEAP32[$25>>2]|0; + $28 = $24 ^ $27; + $29 = $ldst; + $30 = ((($29)) + 4|0); + $ldst = $30; + HEAP32[$29>>2] = $28; + $31 = $3; + $32 = (($31) - 4)|0; + $3 = $32; + } + $33 = $ldst; + $dst = $33; + $34 = $lsrc1; + $src1 = $34; + $35 = $lsrc2; + $src2 = $35; + } + while(1) { + $36 = $3; + $37 = ($36|0)!=(0); + if (!($37)) { + break; + } + $38 = $src1; + $39 = ((($38)) + 1|0); + $src1 = $39; + $40 = HEAP8[$38>>0]|0; + $41 = $40&255; + $42 = $src2; + $43 = ((($42)) + 1|0); + $src2 = $43; + $44 = HEAP8[$42>>0]|0; + $45 = $44&255; + $46 = $41 ^ $45; + $47 = $46&255; + $48 = $dst; + $49 = ((($48)) + 1|0); + $dst = $49; + HEAP8[$48>>0] = $47; + $50 = $3; + $51 = (($50) + -1)|0; + $3 = $51; + } + STACKTOP = sp;return; +} +function __gcry_selftest_helper_cfb($cipher,$setkey_func,$encrypt_one,$bulk_cfb_dec,$nblocks,$blocksize,$context_size) { + $cipher = $cipher|0; + $setkey_func = $setkey_func|0; + $encrypt_one = $encrypt_one|0; + $bulk_cfb_dec = $bulk_cfb_dec|0; + $nblocks = $nblocks|0; + $blocksize = $blocksize|0; + $context_size = $context_size|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $ciphertext = 0, $ctx = 0; + var $ctx_aligned_size = 0, $i = 0, $iv = 0, $iv2 = 0, $mem = 0, $memsize = 0, $offs = 0, $plaintext = 0, $plaintext2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $cipher; + $2 = $setkey_func; + $3 = $encrypt_one; + $4 = $bulk_cfb_dec; + $5 = $nblocks; + $6 = $blocksize; + $7 = $context_size; + $8 = $7; + $9 = (($8) + 15)|0; + $ctx_aligned_size = $9; + $10 = $ctx_aligned_size; + $11 = $10 & 15; + $12 = $ctx_aligned_size; + $13 = (($12) - ($11))|0; + $ctx_aligned_size = $13; + $14 = $ctx_aligned_size; + $15 = $6; + $16 = $15<<1; + $17 = (($14) + ($16))|0; + $18 = $6; + $19 = $5; + $20 = Math_imul($18, $19)|0; + $21 = ($20*3)|0; + $22 = (($17) + ($21))|0; + $23 = (($22) + 16)|0; + $memsize = $23; + $24 = $memsize; + $25 = (__gcry_calloc(1,$24)|0); + $mem = $25; + $26 = $mem; + $27 = ($26|0)!=(0|0); + if (!($27)) { + $0 = 46944; + $157 = $0; + STACKTOP = sp;return ($157|0); + } + $28 = $mem; + $29 = $28; + $30 = $29 & 15; + $31 = (16 - ($30))|0; + $32 = $31 & 15; + $offs = $32; + $33 = $mem; + $34 = $offs; + $35 = (($33) + ($34)|0); + $ctx = $35; + $36 = $ctx; + $37 = $ctx_aligned_size; + $38 = (($36) + ($37)|0); + $iv = $38; + $39 = $iv; + $40 = $6; + $41 = (($39) + ($40)|0); + $iv2 = $41; + $42 = $iv2; + $43 = $6; + $44 = (($42) + ($43)|0); + $plaintext = $44; + $45 = $plaintext; + $46 = $5; + $47 = $6; + $48 = Math_imul($46, $47)|0; + $49 = (($45) + ($48)|0); + $plaintext2 = $49; + $50 = $plaintext2; + $51 = $5; + $52 = $6; + $53 = Math_imul($51, $52)|0; + $54 = (($50) + ($53)|0); + $ciphertext = $54; + $55 = $2; + $56 = $ctx; + $57 = (FUNCTION_TABLE_iiii[$55 & 127]($56,32,16)|0); + $58 = ($57|0)!=(0); + if ($58) { + $59 = $mem; + __gcry_free($59); + $0 = 46970; + $157 = $0; + STACKTOP = sp;return ($157|0); + } + $60 = $iv; + $61 = $6; + _memset(($60|0),-45,($61|0))|0; + $62 = $iv2; + $63 = $6; + _memset(($62|0),-45,($63|0))|0; + $i = 0; + while(1) { + $64 = $i; + $65 = $6; + $66 = ($64|0)<($65|0); + if (!($66)) { + break; + } + $67 = $i; + $68 = $67&255; + $69 = $i; + $70 = $plaintext; + $71 = (($70) + ($69)|0); + HEAP8[$71>>0] = $68; + $72 = $i; + $73 = (($72) + 1)|0; + $i = $73; + } + $74 = $3; + $75 = $ctx; + $76 = $ciphertext; + $77 = $iv; + (FUNCTION_TABLE_iiii[$74 & 127]($75,$76,$77)|0); + $78 = $iv; + $79 = $ciphertext; + $80 = $plaintext; + $81 = $6; + _buf_xor_2dst_1922($78,$79,$80,$81); + $82 = $4; + $83 = $ctx; + $84 = $iv2; + $85 = $plaintext2; + $86 = $ciphertext; + FUNCTION_TABLE_viiiii[$82 & 127]($83,$84,$85,$86,1); + $87 = $plaintext2; + $88 = $plaintext; + $89 = $6; + $90 = (_memcmp($87,$88,$89)|0); + $91 = ($90|0)!=(0); + if ($91) { + $92 = $mem; + __gcry_free($92); + $0 = 47033; + $157 = $0; + STACKTOP = sp;return ($157|0); + } + $93 = $iv2; + $94 = $iv; + $95 = $6; + $96 = (_memcmp($93,$94,$95)|0); + $97 = ($96|0)!=(0); + if ($97) { + $98 = $mem; + __gcry_free($98); + $0 = 47033; + $157 = $0; + STACKTOP = sp;return ($157|0); + } + $99 = $iv; + $100 = $6; + _memset(($99|0),-26,($100|0))|0; + $101 = $iv2; + $102 = $6; + _memset(($101|0),-26,($102|0))|0; + $i = 0; + while(1) { + $103 = $i; + $104 = $5; + $105 = $6; + $106 = Math_imul($104, $105)|0; + $107 = ($103|0)<($106|0); + if (!($107)) { + break; + } + $108 = $i; + $109 = $108&255; + $110 = $i; + $111 = $plaintext; + $112 = (($111) + ($110)|0); + HEAP8[$112>>0] = $109; + $113 = $i; + $114 = (($113) + 1)|0; + $i = $114; + } + $i = 0; + while(1) { + $115 = $i; + $116 = $5; + $117 = $6; + $118 = Math_imul($116, $117)|0; + $119 = ($115|0)<($118|0); + if (!($119)) { + break; + } + $120 = $3; + $121 = $ctx; + $122 = $i; + $123 = $ciphertext; + $124 = (($123) + ($122)|0); + $125 = $iv; + (FUNCTION_TABLE_iiii[$120 & 127]($121,$124,$125)|0); + $126 = $iv; + $127 = $i; + $128 = $ciphertext; + $129 = (($128) + ($127)|0); + $130 = $i; + $131 = $plaintext; + $132 = (($131) + ($130)|0); + $133 = $6; + _buf_xor_2dst_1922($126,$129,$132,$133); + $134 = $6; + $135 = $i; + $136 = (($135) + ($134))|0; + $i = $136; + } + $137 = $4; + $138 = $ctx; + $139 = $iv2; + $140 = $plaintext2; + $141 = $ciphertext; + $142 = $5; + FUNCTION_TABLE_viiiii[$137 & 127]($138,$139,$140,$141,$142); + $143 = $plaintext2; + $144 = $plaintext; + $145 = $5; + $146 = $6; + $147 = Math_imul($145, $146)|0; + $148 = (_memcmp($143,$144,$147)|0); + $149 = ($148|0)!=(0); + if ($149) { + $150 = $mem; + __gcry_free($150); + $0 = 47033; + $157 = $0; + STACKTOP = sp;return ($157|0); + } + $151 = $iv2; + $152 = $iv; + $153 = $6; + $154 = (_memcmp($151,$152,$153)|0); + $155 = ($154|0)!=(0); + $156 = $mem; + __gcry_free($156); + if ($155) { + $0 = 47033; + $157 = $0; + STACKTOP = sp;return ($157|0); + } else { + $0 = 0; + $157 = $0; + STACKTOP = sp;return ($157|0); + } + return (0)|0; +} +function _buf_xor_2dst_1922($_dst1,$_dst2,$_src,$len) { + $_dst1 = $_dst1|0; + $_dst2 = $_dst2|0; + $_src = $_src|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst1 = 0, $dst2 = 0, $ldst1 = 0, $ldst2 = 0, $longmask = 0, $lsrc = 0, $src = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst1; + $1 = $_dst2; + $2 = $_src; + $3 = $len; + $4 = $0; + $dst1 = $4; + $5 = $1; + $dst2 = $5; + $6 = $2; + $src = $6; + $longmask = 3; + $7 = $src; + $8 = $7; + $9 = $dst1; + $10 = $9; + $11 = $8 | $10; + $12 = $dst2; + $13 = $12; + $14 = $11 | $13; + $15 = $14 & 3; + $16 = ($15|0)!=(0); + if (!($16)) { + $17 = $dst1; + $ldst1 = $17; + $18 = $dst2; + $ldst2 = $18; + $19 = $src; + $lsrc = $19; + while(1) { + $20 = $3; + $21 = ($20>>>0)>=(4); + if (!($21)) { + break; + } + $22 = $lsrc; + $23 = ((($22)) + 4|0); + $lsrc = $23; + $24 = HEAP32[$22>>2]|0; + $25 = $ldst2; + $26 = ((($25)) + 4|0); + $ldst2 = $26; + $27 = HEAP32[$25>>2]|0; + $28 = $27 ^ $24; + HEAP32[$25>>2] = $28; + $29 = $ldst1; + $30 = ((($29)) + 4|0); + $ldst1 = $30; + HEAP32[$29>>2] = $28; + $31 = $3; + $32 = (($31) - 4)|0; + $3 = $32; + } + $33 = $ldst1; + $dst1 = $33; + $34 = $ldst2; + $dst2 = $34; + $35 = $lsrc; + $src = $35; + } + while(1) { + $36 = $3; + $37 = ($36|0)!=(0); + if (!($37)) { + break; + } + $38 = $src; + $39 = ((($38)) + 1|0); + $src = $39; + $40 = HEAP8[$38>>0]|0; + $41 = $40&255; + $42 = $dst2; + $43 = ((($42)) + 1|0); + $dst2 = $43; + $44 = HEAP8[$42>>0]|0; + $45 = $44&255; + $46 = $45 ^ $41; + $47 = $46&255; + HEAP8[$42>>0] = $47; + $48 = $dst1; + $49 = ((($48)) + 1|0); + $dst1 = $49; + HEAP8[$48>>0] = $47; + $50 = $3; + $51 = (($50) + -1)|0; + $3 = $51; + } + STACKTOP = sp;return; +} +function __gcry_selftest_helper_ctr($cipher,$setkey_func,$encrypt_one,$bulk_ctr_enc,$nblocks,$blocksize,$context_size) { + $cipher = $cipher|0; + $setkey_func = $setkey_func|0; + $encrypt_one = $encrypt_one|0; + $bulk_ctr_enc = $bulk_ctr_enc|0; + $nblocks = $nblocks|0; + $blocksize = $blocksize|0; + $context_size = $context_size|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $ciphertext = 0, $ciphertext2 = 0, $ctx = 0, $ctx_aligned_size = 0, $diff = 0, $i = 0, $iv = 0, $iv2 = 0, $j = 0, $mem = 0, $memsize = 0, $offs = 0, $plaintext = 0, $plaintext2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $cipher; + $2 = $setkey_func; + $3 = $encrypt_one; + $4 = $bulk_ctr_enc; + $5 = $nblocks; + $6 = $blocksize; + $7 = $context_size; + $8 = $7; + $9 = (($8) + 15)|0; + $ctx_aligned_size = $9; + $10 = $ctx_aligned_size; + $11 = $10 & 15; + $12 = $ctx_aligned_size; + $13 = (($12) - ($11))|0; + $ctx_aligned_size = $13; + $14 = $ctx_aligned_size; + $15 = $6; + $16 = $15<<1; + $17 = (($14) + ($16))|0; + $18 = $6; + $19 = $5; + $20 = Math_imul($18, $19)|0; + $21 = $20<<2; + $22 = (($17) + ($21))|0; + $23 = (($22) + 16)|0; + $memsize = $23; + $24 = $memsize; + $25 = (__gcry_calloc(1,$24)|0); + $mem = $25; + $26 = $mem; + $27 = ($26|0)!=(0|0); + if (!($27)) { + $0 = 46944; + $381 = $0; + STACKTOP = sp;return ($381|0); + } + $28 = $mem; + $29 = $28; + $30 = $29 & 15; + $31 = (16 - ($30))|0; + $32 = $31 & 15; + $offs = $32; + $33 = $mem; + $34 = $offs; + $35 = (($33) + ($34)|0); + $ctx = $35; + $36 = $ctx; + $37 = $ctx_aligned_size; + $38 = (($36) + ($37)|0); + $iv = $38; + $39 = $iv; + $40 = $6; + $41 = (($39) + ($40)|0); + $iv2 = $41; + $42 = $iv2; + $43 = $6; + $44 = (($42) + ($43)|0); + $plaintext = $44; + $45 = $plaintext; + $46 = $5; + $47 = $6; + $48 = Math_imul($46, $47)|0; + $49 = (($45) + ($48)|0); + $plaintext2 = $49; + $50 = $plaintext2; + $51 = $5; + $52 = $6; + $53 = Math_imul($51, $52)|0; + $54 = (($50) + ($53)|0); + $ciphertext = $54; + $55 = $ciphertext; + $56 = $5; + $57 = $6; + $58 = Math_imul($56, $57)|0; + $59 = (($55) + ($58)|0); + $ciphertext2 = $59; + $60 = $2; + $61 = $ctx; + $62 = (FUNCTION_TABLE_iiii[$60 & 127]($61,48,16)|0); + $63 = ($62|0)!=(0); + if ($63) { + $64 = $mem; + __gcry_free($64); + $0 = 46970; + $381 = $0; + STACKTOP = sp;return ($381|0); + } + $65 = $iv; + $66 = $6; + _memset(($65|0),-1,($66|0))|0; + $i = 0; + while(1) { + $67 = $i; + $68 = $6; + $69 = ($67|0)<($68|0); + if (!($69)) { + break; + } + $70 = $i; + $71 = $70&255; + $72 = $i; + $73 = $plaintext; + $74 = (($73) + ($72)|0); + HEAP8[$74>>0] = $71; + $75 = $i; + $76 = (($75) + 1)|0; + $i = $76; + } + $77 = $3; + $78 = $ctx; + $79 = $ciphertext; + $80 = $iv; + (FUNCTION_TABLE_iiii[$77 & 127]($78,$79,$80)|0); + $i = 0; + while(1) { + $81 = $i; + $82 = $6; + $83 = ($81|0)<($82|0); + if (!($83)) { + break; + } + $84 = $i; + $85 = $plaintext; + $86 = (($85) + ($84)|0); + $87 = HEAP8[$86>>0]|0; + $88 = $87&255; + $89 = $i; + $90 = $ciphertext; + $91 = (($90) + ($89)|0); + $92 = HEAP8[$91>>0]|0; + $93 = $92&255; + $94 = $93 ^ $88; + $95 = $94&255; + HEAP8[$91>>0] = $95; + $96 = $i; + $97 = (($96) + 1)|0; + $i = $97; + } + $98 = $6; + $i = $98; + while(1) { + $99 = $i; + $100 = ($99|0)>(0); + if (!($100)) { + break; + } + $101 = $i; + $102 = (($101) - 1)|0; + $103 = $iv; + $104 = (($103) + ($102)|0); + $105 = HEAP8[$104>>0]|0; + $106 = (($105) + 1)<<24>>24; + HEAP8[$104>>0] = $106; + $107 = $i; + $108 = (($107) - 1)|0; + $109 = $iv; + $110 = (($109) + ($108)|0); + $111 = HEAP8[$110>>0]|0; + $112 = ($111<<24>>24)!=(0); + if ($112) { + break; + } + $113 = $i; + $114 = (($113) + -1)|0; + $i = $114; + } + $115 = $iv2; + $116 = $6; + _memset(($115|0),-1,($116|0))|0; + $117 = $4; + $118 = $ctx; + $119 = $iv2; + $120 = $plaintext2; + $121 = $ciphertext; + FUNCTION_TABLE_viiiii[$117 & 127]($118,$119,$120,$121,1); + $122 = $plaintext2; + $123 = $plaintext; + $124 = $6; + $125 = (_memcmp($122,$123,$124)|0); + $126 = ($125|0)!=(0); + if ($126) { + $127 = $mem; + __gcry_free($127); + $0 = 47082; + $381 = $0; + STACKTOP = sp;return ($381|0); + } + $128 = $iv2; + $129 = $iv; + $130 = $6; + $131 = (_memcmp($128,$129,$130)|0); + $132 = ($131|0)!=(0); + if ($132) { + $133 = $mem; + __gcry_free($133); + $0 = 47082; + $381 = $0; + STACKTOP = sp;return ($381|0); + } + $134 = $iv; + $135 = $6; + $136 = (($135) - 4)|0; + _memset(($134|0),87,($136|0))|0; + $137 = $6; + $138 = (($137) - 1)|0; + $139 = $iv; + $140 = (($139) + ($138)|0); + HEAP8[$140>>0] = 1; + $141 = $6; + $142 = (($141) - 2)|0; + $143 = $iv; + $144 = (($143) + ($142)|0); + HEAP8[$144>>0] = 0; + $145 = $6; + $146 = (($145) - 3)|0; + $147 = $iv; + $148 = (($147) + ($146)|0); + HEAP8[$148>>0] = 0; + $149 = $6; + $150 = (($149) - 4)|0; + $151 = $iv; + $152 = (($151) + ($150)|0); + HEAP8[$152>>0] = 0; + $153 = $iv2; + $154 = $6; + $155 = (($154) - 4)|0; + _memset(($153|0),87,($155|0))|0; + $156 = $6; + $157 = (($156) - 1)|0; + $158 = $iv2; + $159 = (($158) + ($157)|0); + HEAP8[$159>>0] = 1; + $160 = $6; + $161 = (($160) - 2)|0; + $162 = $iv2; + $163 = (($162) + ($161)|0); + HEAP8[$163>>0] = 0; + $164 = $6; + $165 = (($164) - 3)|0; + $166 = $iv2; + $167 = (($166) + ($165)|0); + HEAP8[$167>>0] = 0; + $168 = $6; + $169 = (($168) - 4)|0; + $170 = $iv2; + $171 = (($170) + ($169)|0); + HEAP8[$171>>0] = 0; + $i = 0; + while(1) { + $172 = $i; + $173 = $6; + $174 = $5; + $175 = Math_imul($173, $174)|0; + $176 = ($172|0)<($175|0); + if (!($176)) { + break; + } + $177 = $i; + $178 = $177&255; + $179 = $i; + $180 = $plaintext; + $181 = (($180) + ($179)|0); + HEAP8[$181>>0] = $178; + $182 = $i; + $183 = $plaintext2; + $184 = (($183) + ($182)|0); + HEAP8[$184>>0] = $178; + $185 = $i; + $186 = (($185) + 1)|0; + $i = $186; + } + $i = 0; + while(1) { + $187 = $i; + $188 = $6; + $189 = $5; + $190 = Math_imul($188, $189)|0; + $191 = ($187|0)<($190|0); + if (!($191)) { + break; + } + $192 = $3; + $193 = $ctx; + $194 = $i; + $195 = $ciphertext; + $196 = (($195) + ($194)|0); + $197 = $iv; + (FUNCTION_TABLE_iiii[$192 & 127]($193,$196,$197)|0); + $j = 0; + while(1) { + $198 = $j; + $199 = $6; + $200 = ($198|0)<($199|0); + if (!($200)) { + break; + } + $201 = $i; + $202 = $j; + $203 = (($201) + ($202))|0; + $204 = $plaintext; + $205 = (($204) + ($203)|0); + $206 = HEAP8[$205>>0]|0; + $207 = $206&255; + $208 = $i; + $209 = $j; + $210 = (($208) + ($209))|0; + $211 = $ciphertext; + $212 = (($211) + ($210)|0); + $213 = HEAP8[$212>>0]|0; + $214 = $213&255; + $215 = $214 ^ $207; + $216 = $215&255; + HEAP8[$212>>0] = $216; + $217 = $j; + $218 = (($217) + 1)|0; + $j = $218; + } + $219 = $6; + $j = $219; + while(1) { + $220 = $j; + $221 = ($220|0)>(0); + if (!($221)) { + break; + } + $222 = $j; + $223 = (($222) - 1)|0; + $224 = $iv; + $225 = (($224) + ($223)|0); + $226 = HEAP8[$225>>0]|0; + $227 = (($226) + 1)<<24>>24; + HEAP8[$225>>0] = $227; + $228 = $j; + $229 = (($228) - 1)|0; + $230 = $iv; + $231 = (($230) + ($229)|0); + $232 = HEAP8[$231>>0]|0; + $233 = ($232<<24>>24)!=(0); + if ($233) { + break; + } + $234 = $j; + $235 = (($234) + -1)|0; + $j = $235; + } + $236 = $6; + $237 = $i; + $238 = (($237) + ($236))|0; + $i = $238; + } + $239 = $4; + $240 = $ctx; + $241 = $iv2; + $242 = $ciphertext2; + $243 = $plaintext2; + $244 = $5; + FUNCTION_TABLE_viiiii[$239 & 127]($240,$241,$242,$243,$244); + $245 = $ciphertext2; + $246 = $ciphertext; + $247 = $6; + $248 = $5; + $249 = Math_imul($247, $248)|0; + $250 = (_memcmp($245,$246,$249)|0); + $251 = ($250|0)!=(0); + if ($251) { + $252 = $mem; + __gcry_free($252); + $0 = 47082; + $381 = $0; + STACKTOP = sp;return ($381|0); + } + $253 = $iv2; + $254 = $iv; + $255 = $6; + $256 = (_memcmp($253,$254,$255)|0); + $257 = ($256|0)!=(0); + if ($257) { + $258 = $mem; + __gcry_free($258); + $0 = 47082; + $381 = $0; + STACKTOP = sp;return ($381|0); + } + $diff = 0; + while(1) { + $259 = $diff; + $260 = $5; + $261 = ($259|0)<($260|0); + if (!($261)) { + label = 56; + break; + } + $262 = $iv; + $263 = $6; + _memset(($262|0),-1,($263|0))|0; + $264 = $diff; + $265 = $6; + $266 = (($265) - 1)|0; + $267 = $iv; + $268 = (($267) + ($266)|0); + $269 = HEAP8[$268>>0]|0; + $270 = $269&255; + $271 = (($270) - ($264))|0; + $272 = $271&255; + HEAP8[$268>>0] = $272; + $273 = $iv; + $274 = ((($273)) + 1|0); + HEAP8[$274>>0] = 0; + $275 = $iv; + HEAP8[$275>>0] = 0; + $276 = $iv; + $277 = ((($276)) + 2|0); + HEAP8[$277>>0] = 7; + $i = 0; + while(1) { + $278 = $i; + $279 = $6; + $280 = $5; + $281 = Math_imul($279, $280)|0; + $282 = ($278|0)<($281|0); + if (!($282)) { + break; + } + $283 = $i; + $284 = $283&255; + $285 = $i; + $286 = $plaintext; + $287 = (($286) + ($285)|0); + HEAP8[$287>>0] = $284; + $288 = $i; + $289 = (($288) + 1)|0; + $i = $289; + } + $i = 0; + while(1) { + $290 = $i; + $291 = $6; + $292 = $5; + $293 = Math_imul($291, $292)|0; + $294 = ($290|0)<($293|0); + if (!($294)) { + break; + } + $295 = $3; + $296 = $ctx; + $297 = $i; + $298 = $ciphertext; + $299 = (($298) + ($297)|0); + $300 = $iv; + (FUNCTION_TABLE_iiii[$295 & 127]($296,$299,$300)|0); + $j = 0; + while(1) { + $301 = $j; + $302 = $6; + $303 = ($301|0)<($302|0); + if (!($303)) { + break; + } + $304 = $i; + $305 = $j; + $306 = (($304) + ($305))|0; + $307 = $plaintext; + $308 = (($307) + ($306)|0); + $309 = HEAP8[$308>>0]|0; + $310 = $309&255; + $311 = $i; + $312 = $j; + $313 = (($311) + ($312))|0; + $314 = $ciphertext; + $315 = (($314) + ($313)|0); + $316 = HEAP8[$315>>0]|0; + $317 = $316&255; + $318 = $317 ^ $310; + $319 = $318&255; + HEAP8[$315>>0] = $319; + $320 = $j; + $321 = (($320) + 1)|0; + $j = $321; + } + $322 = $6; + $j = $322; + while(1) { + $323 = $j; + $324 = ($323|0)>(0); + if (!($324)) { + break; + } + $325 = $j; + $326 = (($325) - 1)|0; + $327 = $iv; + $328 = (($327) + ($326)|0); + $329 = HEAP8[$328>>0]|0; + $330 = (($329) + 1)<<24>>24; + HEAP8[$328>>0] = $330; + $331 = $j; + $332 = (($331) - 1)|0; + $333 = $iv; + $334 = (($333) + ($332)|0); + $335 = HEAP8[$334>>0]|0; + $336 = ($335<<24>>24)!=(0); + if ($336) { + break; + } + $337 = $j; + $338 = (($337) + -1)|0; + $j = $338; + } + $339 = $6; + $340 = $i; + $341 = (($340) + ($339))|0; + $i = $341; + } + $342 = $iv2; + $343 = $6; + _memset(($342|0),-1,($343|0))|0; + $344 = $diff; + $345 = $6; + $346 = (($345) - 1)|0; + $347 = $iv2; + $348 = (($347) + ($346)|0); + $349 = HEAP8[$348>>0]|0; + $350 = $349&255; + $351 = (($350) - ($344))|0; + $352 = $351&255; + HEAP8[$348>>0] = $352; + $353 = $iv2; + $354 = ((($353)) + 1|0); + HEAP8[$354>>0] = 0; + $355 = $iv2; + HEAP8[$355>>0] = 0; + $356 = $iv2; + $357 = ((($356)) + 2|0); + HEAP8[$357>>0] = 7; + $358 = $4; + $359 = $ctx; + $360 = $iv2; + $361 = $plaintext2; + $362 = $ciphertext; + $363 = $5; + FUNCTION_TABLE_viiiii[$358 & 127]($359,$360,$361,$362,$363); + $364 = $plaintext2; + $365 = $plaintext; + $366 = $6; + $367 = $5; + $368 = Math_imul($366, $367)|0; + $369 = (_memcmp($364,$365,$368)|0); + $370 = ($369|0)!=(0); + if ($370) { + label = 52; + break; + } + $372 = $iv2; + $373 = $iv; + $374 = $6; + $375 = (_memcmp($372,$373,$374)|0); + $376 = ($375|0)!=(0); + if ($376) { + label = 54; + break; + } + $378 = $diff; + $379 = (($378) + 1)|0; + $diff = $379; + } + if ((label|0) == 52) { + $371 = $mem; + __gcry_free($371); + $0 = 47082; + $381 = $0; + STACKTOP = sp;return ($381|0); + } + else if ((label|0) == 54) { + $377 = $mem; + __gcry_free($377); + $0 = 47082; + $381 = $0; + STACKTOP = sp;return ($381|0); + } + else if ((label|0) == 56) { + $380 = $mem; + __gcry_free($380); + $0 = 0; + $381 = $0; + STACKTOP = sp;return ($381|0); + } + return (0)|0; +} +function _ecc_generate($genparms,$r_skey) { + $genparms = $genparms|0; + $r_skey = $r_skey|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; + var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $E = 0, $Gx = 0, $Gy = 0, $Qx = 0, $Qy = 0, $base = 0, $ctx = 0, $curve_flags = 0, $curve_info = 0; + var $curve_name = 0, $encpk = 0, $encpklen = 0, $flags = 0, $l1 = 0, $nbits = 0, $or$cond = 0, $public = 0, $rc = 0, $secret = 0, $sk = 0, $vararg_buffer = 0, $vararg_buffer12 = 0, $vararg_buffer15 = 0, $vararg_buffer17 = 0, $vararg_buffer3 = 0, $vararg_buffer38 = 0, $vararg_buffer47 = 0, $vararg_buffer6 = 0, $vararg_buffer9 = 0; + var $vararg_ptr2 = 0, $vararg_ptr20 = 0, $vararg_ptr21 = 0, $vararg_ptr22 = 0, $vararg_ptr23 = 0, $vararg_ptr24 = 0, $vararg_ptr25 = 0, $vararg_ptr26 = 0, $vararg_ptr27 = 0, $vararg_ptr28 = 0, $vararg_ptr29 = 0, $vararg_ptr30 = 0, $vararg_ptr31 = 0, $vararg_ptr32 = 0, $vararg_ptr33 = 0, $vararg_ptr34 = 0, $vararg_ptr35 = 0, $vararg_ptr36 = 0, $vararg_ptr37 = 0, $vararg_ptr41 = 0; + var $vararg_ptr42 = 0, $vararg_ptr43 = 0, $vararg_ptr44 = 0, $vararg_ptr45 = 0, $vararg_ptr46 = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 352|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer47 = sp + 160|0; + $vararg_buffer38 = sp + 128|0; + $vararg_buffer17 = sp + 48|0; + $vararg_buffer15 = sp + 40|0; + $vararg_buffer12 = sp + 32|0; + $vararg_buffer9 = sp + 24|0; + $vararg_buffer6 = sp + 16|0; + $vararg_buffer3 = sp + 8|0; + $vararg_buffer = sp; + $nbits = sp + 328|0; + $E = sp + 284|0; + $sk = sp + 224|0; + $Qx = sp + 212|0; + $Qy = sp + 208|0; + $curve_info = sp + 192|0; + $curve_flags = sp + 188|0; + $flags = sp + 172|0; + $encpk = sp + 168|0; + $encpklen = sp + 164|0; + $1 = $genparms; + $2 = $r_skey; + $Gx = 0; + $Gy = 0; + HEAP32[$Qx>>2] = 0; + HEAP32[$Qy>>2] = 0; + $curve_name = 0; + $ctx = 0; + HEAP32[$curve_info>>2] = 0; + HEAP32[$curve_flags>>2] = 0; + $base = 0; + $public = 0; + $secret = 0; + HEAP32[$flags>>2] = 0; + dest=$E; stop=dest+44|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + dest=$sk; stop=dest+60|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $3 = $1; + $4 = (__gcry_pk_util_get_nbits($3,$nbits)|0); + $rc = $4; + $5 = $rc; + $6 = ($5|0)!=(0); + if ($6) { + $7 = $rc; + $0 = $7; + $250 = $0; + STACKTOP = sp;return ($250|0); + } + $8 = $1; + $9 = (__gcry_sexp_find_token($8,47184,0)|0); + $l1 = $9; + $10 = $l1; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = $l1; + $13 = (__gcry_sexp_nth_string($12,1)|0); + $curve_name = $13; + $14 = $l1; + __gcry_sexp_release($14); + $15 = $curve_name; + $16 = ($15|0)!=(0|0); + if (!($16)) { + $0 = 65; + $250 = $0; + STACKTOP = sp;return ($250|0); + } + } + $17 = $1; + $18 = (__gcry_sexp_find_token($17,47190,0)|0); + $l1 = $18; + $19 = $l1; + $20 = ($19|0)!=(0|0); + if ($20) { + $21 = $l1; + $22 = (__gcry_pk_util_parse_flaglist($21,$flags,0)|0); + $rc = $22; + $23 = $l1; + __gcry_sexp_release($23); + $24 = $rc; + $25 = ($24|0)!=(0); + if (!($25)) { + label = 8; + } + } else { + label = 8; + } + do { + if ((label|0) == 8) { + $26 = $1; + $27 = (__gcry_sexp_find_token($26,47196,0)|0); + $l1 = $27; + $28 = $l1; + $29 = ($28|0)!=(0|0); + if ($29) { + $30 = HEAP32[$flags>>2]|0; + $31 = $30 | 32; + HEAP32[$flags>>2] = $31; + $32 = $l1; + __gcry_sexp_release($32); + } + $33 = HEAP32[$nbits>>2]|0; + $34 = ($33|0)!=(0); + $35 = $curve_name; + $36 = ($35|0)!=(0|0); + $or$cond = $34 | $36; + if (!($or$cond)) { + $0 = 68; + $250 = $0; + STACKTOP = sp;return ($250|0); + } + $37 = HEAP32[$nbits>>2]|0; + $38 = $curve_name; + $39 = (__gcry_ecc_fill_in_curve($37,$38,$E,$nbits)|0); + $rc = $39; + $40 = $curve_name; + __gcry_free($40); + $curve_name = 0; + $41 = $rc; + $42 = ($41|0)!=(0); + if (!($42)) { + $43 = (__gcry_get_debug_flag(1)|0); + $44 = ($43|0)!=(0); + if ($44) { + $45 = HEAP32[$E>>2]|0; + $46 = (__gcry_ecc_model2str($45)|0); + $47 = ((($E)) + 4|0); + $48 = HEAP32[$47>>2]|0; + $49 = (__gcry_ecc_dialect2str($48)|0); + HEAP32[$vararg_buffer>>2] = $46; + $vararg_ptr2 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr2>>2] = $49; + __gcry_log_debug(47210,$vararg_buffer); + $50 = ((($E)) + 40|0); + $51 = HEAP32[$50>>2]|0; + $52 = ($51|0)!=(0|0); + if ($52) { + $53 = ((($E)) + 40|0); + $54 = HEAP32[$53>>2]|0; + HEAP32[$vararg_buffer3>>2] = $54; + __gcry_log_debug(47235,$vararg_buffer3); + } + $55 = ((($E)) + 8|0); + $56 = HEAP32[$55>>2]|0; + __gcry_log_printmpi(47257,$56); + $57 = ((($E)) + 12|0); + $58 = HEAP32[$57>>2]|0; + __gcry_log_printmpi(47273,$58); + $59 = ((($E)) + 16|0); + $60 = HEAP32[$59>>2]|0; + __gcry_log_printmpi(47289,$60); + $61 = ((($E)) + 32|0); + $62 = HEAP32[$61>>2]|0; + __gcry_log_printmpi(47305,$62); + $63 = ((($E)) + 36|0); + $64 = HEAP32[$63>>2]|0; + __gcry_log_printmpi(47321,$64); + $65 = ((($E)) + 20|0); + __gcry_mpi_point_log(47337,$65,0); + } + $66 = HEAP32[$E>>2]|0; + $67 = ((($E)) + 4|0); + $68 = HEAP32[$67>>2]|0; + $69 = ((($E)) + 8|0); + $70 = HEAP32[$69>>2]|0; + $71 = ((($E)) + 12|0); + $72 = HEAP32[$71>>2]|0; + $73 = ((($E)) + 16|0); + $74 = HEAP32[$73>>2]|0; + $75 = (__gcry_mpi_ec_p_internal_new($66,$68,0,$70,$72,$74)|0); + $ctx = $75; + $76 = HEAP32[$flags>>2]|0; + $77 = $76 & 4096; + $78 = ($77|0)!=(0); + $79 = $ctx; + $80 = HEAP32[$flags>>2]|0; + if ($78) { + $81 = (__gcry_ecc_eddsa_genkey($sk,$E,$79,$80)|0); + $rc = $81; + } else { + $82 = HEAP32[$nbits>>2]|0; + $83 = (_nist_generate_key($sk,$E,$79,$80,$82,$Qx,$Qy)|0); + $rc = $83; + } + $84 = $rc; + $85 = ($84|0)!=(0); + if (!($85)) { + $86 = (__gcry_mpi_new(0)|0); + $Gx = $86; + $87 = (__gcry_mpi_new(0)|0); + $Gy = $87; + $88 = $Gx; + $89 = $Gy; + $90 = ((($sk)) + 20|0); + $91 = $ctx; + $92 = (__gcry_mpi_ec_get_affine($88,$89,$90,$91)|0); + $93 = ($92|0)!=(0); + if ($93) { + HEAP32[$vararg_buffer6>>2] = 47727; + __gcry_log_fatal(47351,$vararg_buffer6); + // unreachable; + } + $94 = $Gx; + $95 = $Gy; + $96 = ((($sk)) + 8|0); + $97 = HEAP32[$96>>2]|0; + $98 = (__gcry_ecc_ec2os($94,$95,$97)|0); + $base = $98; + $99 = ((($sk)) + 4|0); + $100 = HEAP32[$99>>2]|0; + $101 = ($100|0)==(1); + do { + if ($101) { + $102 = HEAP32[$flags>>2]|0; + $103 = $102 & 2048; + $104 = ($103|0)!=(0); + if ($104) { + label = 28; + } else { + $105 = ((($sk)) + 44|0); + $106 = $ctx; + $107 = $Gx; + $108 = $Gy; + $109 = HEAP32[$flags>>2]|0; + $110 = $109 & 1024; + $111 = ($110|0)!=(0); + $112 = $111 ^ 1; + $113 = $112 ^ 1; + $114 = $113&1; + $115 = (__gcry_ecc_eddsa_encodepoint($105,$106,$107,$108,$114,$encpk,$encpklen)|0); + $rc = $115; + $116 = $rc; + $117 = ($116|0)!=(0); + if (!($117)) { + $119 = (__gcry_mpi_new(0)|0); + $public = $119; + $120 = $public; + $121 = HEAP32[$encpk>>2]|0; + $122 = HEAP32[$encpklen>>2]|0; + $123 = $122<<3; + (__gcry_mpi_set_opaque($120,$121,$123)|0); + HEAP32[$encpk>>2] = 0; + break; + } + $118 = $rc; + $0 = $118; + $250 = $0; + STACKTOP = sp;return ($250|0); + } + } else { + label = 28; + } + } while(0); + if ((label|0) == 28) { + $124 = HEAP32[$Qx>>2]|0; + $125 = ($124|0)!=(0|0); + if (!($125)) { + $126 = (__gcry_mpi_new(0)|0); + HEAP32[$Qx>>2] = $126; + $127 = (__gcry_mpi_new(0)|0); + HEAP32[$Qy>>2] = $127; + $128 = HEAP32[$Qx>>2]|0; + $129 = HEAP32[$Qy>>2]|0; + $130 = ((($sk)) + 44|0); + $131 = $ctx; + $132 = (__gcry_mpi_ec_get_affine($128,$129,$130,$131)|0); + $133 = ($132|0)!=(0); + if ($133) { + HEAP32[$vararg_buffer9>>2] = 47399; + __gcry_log_fatal(47351,$vararg_buffer9); + // unreachable; + } + } + $134 = HEAP32[$Qx>>2]|0; + $135 = HEAP32[$Qy>>2]|0; + $136 = ((($sk)) + 8|0); + $137 = HEAP32[$136>>2]|0; + $138 = (__gcry_ecc_ec2os($134,$135,$137)|0); + $public = $138; + } + $139 = ((($sk)) + 56|0); + $140 = HEAP32[$139>>2]|0; + $secret = $140; + $141 = ((($sk)) + 56|0); + HEAP32[$141>>2] = 0; + $142 = ((($E)) + 40|0); + $143 = HEAP32[$142>>2]|0; + $144 = ($143|0)!=(0|0); + if ($144) { + $145 = ((($E)) + 40|0); + $146 = HEAP32[$145>>2]|0; + HEAP32[$vararg_buffer12>>2] = $146; + $147 = (__gcry_sexp_build($curve_info,0,47729,$vararg_buffer12)|0); + $rc = $147; + $148 = $rc; + $149 = ($148|0)!=(0); + if ($149) { + break; + } + } + $150 = HEAP32[$flags>>2]|0; + $151 = $150 & 512; + $152 = ($151|0)!=(0); + if ($152) { + label = 36; + } else { + $153 = HEAP32[$flags>>2]|0; + $154 = $153 & 4096; + $155 = ($154|0)!=(0); + if ($155) { + label = 36; + } + } + if ((label|0) == 36) { + $156 = HEAP32[$flags>>2]|0; + $157 = $156 & 512; + $158 = ($157|0)!=(0); + if ($158) { + $159 = HEAP32[$flags>>2]|0; + $160 = $159 & 4096; + $161 = ($160|0)!=(0); + if ($161) { + $166 = 47768; + } else { + label = 38; + } + } else { + label = 38; + } + if ((label|0) == 38) { + $162 = HEAP32[$flags>>2]|0; + $163 = $162 & 512; + $164 = ($163|0)!=(0); + $165 = $164 ? 47740 : 47754; + $166 = $165; + } + $167 = (__gcry_sexp_build($curve_flags,0,$166,$vararg_buffer15)|0); + $rc = $167; + $168 = $rc; + $169 = ($168|0)!=(0); + if ($169) { + break; + } + } + $170 = HEAP32[$flags>>2]|0; + $171 = $170 & 512; + $172 = ($171|0)!=(0); + if ($172) { + $173 = ((($E)) + 40|0); + $174 = HEAP32[$173>>2]|0; + $175 = ($174|0)!=(0|0); + if ($175) { + $176 = $2; + $177 = HEAP32[$curve_info>>2]|0; + $178 = HEAP32[$curve_flags>>2]|0; + $179 = ((($sk)) + 8|0); + $180 = HEAP32[$179>>2]|0; + $181 = ((($sk)) + 12|0); + $182 = HEAP32[$181>>2]|0; + $183 = ((($sk)) + 16|0); + $184 = HEAP32[$183>>2]|0; + $185 = $base; + $186 = ((($sk)) + 32|0); + $187 = HEAP32[$186>>2]|0; + $188 = ((($sk)) + 36|0); + $189 = HEAP32[$188>>2]|0; + $190 = $public; + $191 = HEAP32[$curve_info>>2]|0; + $192 = HEAP32[$curve_flags>>2]|0; + $193 = ((($sk)) + 8|0); + $194 = HEAP32[$193>>2]|0; + $195 = ((($sk)) + 12|0); + $196 = HEAP32[$195>>2]|0; + $197 = ((($sk)) + 16|0); + $198 = HEAP32[$197>>2]|0; + $199 = $base; + $200 = ((($sk)) + 32|0); + $201 = HEAP32[$200>>2]|0; + $202 = ((($sk)) + 36|0); + $203 = HEAP32[$202>>2]|0; + $204 = $public; + $205 = $secret; + HEAP32[$vararg_buffer17>>2] = $177; + $vararg_ptr20 = ((($vararg_buffer17)) + 4|0); + HEAP32[$vararg_ptr20>>2] = $178; + $vararg_ptr21 = ((($vararg_buffer17)) + 8|0); + HEAP32[$vararg_ptr21>>2] = $180; + $vararg_ptr22 = ((($vararg_buffer17)) + 12|0); + HEAP32[$vararg_ptr22>>2] = $182; + $vararg_ptr23 = ((($vararg_buffer17)) + 16|0); + HEAP32[$vararg_ptr23>>2] = $184; + $vararg_ptr24 = ((($vararg_buffer17)) + 20|0); + HEAP32[$vararg_ptr24>>2] = $185; + $vararg_ptr25 = ((($vararg_buffer17)) + 24|0); + HEAP32[$vararg_ptr25>>2] = $187; + $vararg_ptr26 = ((($vararg_buffer17)) + 28|0); + HEAP32[$vararg_ptr26>>2] = $189; + $vararg_ptr27 = ((($vararg_buffer17)) + 32|0); + HEAP32[$vararg_ptr27>>2] = $190; + $vararg_ptr28 = ((($vararg_buffer17)) + 36|0); + HEAP32[$vararg_ptr28>>2] = $191; + $vararg_ptr29 = ((($vararg_buffer17)) + 40|0); + HEAP32[$vararg_ptr29>>2] = $192; + $vararg_ptr30 = ((($vararg_buffer17)) + 44|0); + HEAP32[$vararg_ptr30>>2] = $194; + $vararg_ptr31 = ((($vararg_buffer17)) + 48|0); + HEAP32[$vararg_ptr31>>2] = $196; + $vararg_ptr32 = ((($vararg_buffer17)) + 52|0); + HEAP32[$vararg_ptr32>>2] = $198; + $vararg_ptr33 = ((($vararg_buffer17)) + 56|0); + HEAP32[$vararg_ptr33>>2] = $199; + $vararg_ptr34 = ((($vararg_buffer17)) + 60|0); + HEAP32[$vararg_ptr34>>2] = $201; + $vararg_ptr35 = ((($vararg_buffer17)) + 64|0); + HEAP32[$vararg_ptr35>>2] = $203; + $vararg_ptr36 = ((($vararg_buffer17)) + 68|0); + HEAP32[$vararg_ptr36>>2] = $204; + $vararg_ptr37 = ((($vararg_buffer17)) + 72|0); + HEAP32[$vararg_ptr37>>2] = $205; + $206 = (__gcry_sexp_build($176,0,47788,$vararg_buffer17)|0); + $rc = $206; + } else { + label = 43; + } + } else { + label = 43; + } + if ((label|0) == 43) { + $207 = $2; + $208 = HEAP32[$curve_info>>2]|0; + $209 = HEAP32[$curve_flags>>2]|0; + $210 = $public; + $211 = HEAP32[$curve_info>>2]|0; + $212 = HEAP32[$curve_flags>>2]|0; + $213 = $public; + $214 = $secret; + HEAP32[$vararg_buffer38>>2] = $208; + $vararg_ptr41 = ((($vararg_buffer38)) + 4|0); + HEAP32[$vararg_ptr41>>2] = $209; + $vararg_ptr42 = ((($vararg_buffer38)) + 8|0); + HEAP32[$vararg_ptr42>>2] = $210; + $vararg_ptr43 = ((($vararg_buffer38)) + 12|0); + HEAP32[$vararg_ptr43>>2] = $211; + $vararg_ptr44 = ((($vararg_buffer38)) + 16|0); + HEAP32[$vararg_ptr44>>2] = $212; + $vararg_ptr45 = ((($vararg_buffer38)) + 20|0); + HEAP32[$vararg_ptr45>>2] = $213; + $vararg_ptr46 = ((($vararg_buffer38)) + 24|0); + HEAP32[$vararg_ptr46>>2] = $214; + $215 = (__gcry_sexp_build($207,0,47924,$vararg_buffer38)|0); + $rc = $215; + } + $216 = $rc; + $217 = ($216|0)!=(0); + if (!($217)) { + $218 = (__gcry_get_debug_flag(1)|0); + $219 = ($218|0)!=(0); + if ($219) { + $220 = ((($sk)) + 8|0); + $221 = HEAP32[$220>>2]|0; + __gcry_log_printmpi(48000,$221); + $222 = ((($sk)) + 12|0); + $223 = HEAP32[$222>>2]|0; + __gcry_log_printmpi(48016,$223); + $224 = ((($sk)) + 16|0); + $225 = HEAP32[$224>>2]|0; + __gcry_log_printmpi(48032,$225); + $226 = $base; + __gcry_log_printmpi(48048,$226); + $227 = ((($sk)) + 32|0); + $228 = HEAP32[$227>>2]|0; + __gcry_log_printmpi(48064,$228); + $229 = ((($sk)) + 36|0); + $230 = HEAP32[$229>>2]|0; + __gcry_log_printmpi(48080,$230); + $231 = $public; + __gcry_log_printmpi(48096,$231); + $232 = $secret; + __gcry_log_printmpi(48112,$232); + $233 = HEAP32[$flags>>2]|0; + $234 = $233 & 4096; + $235 = ($234|0)!=(0); + if ($235) { + __gcry_log_debug(48128,$vararg_buffer47); + } + } + } + } + } + } + } while(0); + $236 = $secret; + __gcry_mpi_free($236); + $237 = $public; + __gcry_mpi_free($237); + $238 = $base; + __gcry_mpi_free($238); + __gcry_ecc_curve_free($sk); + $239 = ((($sk)) + 44|0); + __gcry_mpi_point_free_parts($239); + $240 = ((($sk)) + 56|0); + $241 = HEAP32[$240>>2]|0; + __gcry_mpi_free($241); + __gcry_ecc_curve_free($E); + $242 = $Gx; + __gcry_mpi_free($242); + $243 = $Gy; + __gcry_mpi_free($243); + $244 = HEAP32[$Qx>>2]|0; + __gcry_mpi_free($244); + $245 = HEAP32[$Qy>>2]|0; + __gcry_mpi_free($245); + $246 = $ctx; + __gcry_mpi_ec_free($246); + $247 = HEAP32[$curve_flags>>2]|0; + __gcry_sexp_release($247); + $248 = HEAP32[$curve_info>>2]|0; + __gcry_sexp_release($248); + $249 = $rc; + $0 = $249; + $250 = $0; + STACKTOP = sp;return ($250|0); +} +function _nist_generate_key($sk,$E,$ctx,$flags,$nbits,$r_x,$r_y) { + $sk = $sk|0; + $E = $E|0; + $ctx = $ctx|0; + $flags = $flags|0; + $nbits = $nbits|0; + $r_x = $r_x|0; + $r_y = $r_y|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $Q = 0, $negative = 0, $pbits = 0, $random_level = 0, $rndbuf = 0, $vararg_buffer = 0; + var $vararg_buffer1 = 0, $vararg_buffer3 = 0, $x = 0, $y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer3 = sp + 16|0; + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $Q = sp + 44|0; + $0 = $sk; + $1 = $E; + $2 = $ctx; + $3 = $flags; + $4 = $nbits; + $5 = $r_x; + $6 = $r_y; + $7 = $1; + $8 = ((($7)) + 8|0); + $9 = HEAP32[$8>>2]|0; + $10 = (__gcry_mpi_get_nbits($9)|0); + $pbits = $10; + __gcry_mpi_point_init($Q); + $11 = $3; + $12 = $11 & 32; + $13 = ($12|0)!=(0); + if ($13) { + $random_level = 1; + } else { + $random_level = 2; + } + $14 = $2; + $15 = ((($14)) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)==(1); + if ($17) { + $18 = (__gcry_mpi_snew(256)|0); + $19 = $0; + $20 = ((($19)) + 56|0); + HEAP32[$20>>2] = $18; + $21 = $random_level; + $22 = (__gcry_random_bytes_secure(32,$21)|0); + $rndbuf = $22; + $23 = $rndbuf; + $24 = HEAP8[$23>>0]|0; + $25 = $24 << 24 >> 24; + $26 = $25 & 127; + $27 = $26&255; + HEAP8[$23>>0] = $27; + $28 = $rndbuf; + $29 = HEAP8[$28>>0]|0; + $30 = $29 << 24 >> 24; + $31 = $30 | 64; + $32 = $31&255; + HEAP8[$28>>0] = $32; + $33 = $rndbuf; + $34 = ((($33)) + 31|0); + $35 = HEAP8[$34>>0]|0; + $36 = $35 << 24 >> 24; + $37 = $36 & 248; + $38 = $37&255; + HEAP8[$34>>0] = $38; + $39 = $0; + $40 = ((($39)) + 56|0); + $41 = HEAP32[$40>>2]|0; + $42 = $rndbuf; + __gcry_mpi_set_buffer($41,$42,32,0); + $43 = $rndbuf; + __gcry_free($43); + } else { + $44 = $1; + $45 = ((($44)) + 32|0); + $46 = HEAP32[$45>>2]|0; + $47 = $random_level; + $48 = (__gcry_dsa_gen_k($46,$47)|0); + $49 = $0; + $50 = ((($49)) + 56|0); + HEAP32[$50>>2] = $48; + } + $51 = $0; + $52 = ((($51)) + 56|0); + $53 = HEAP32[$52>>2]|0; + $54 = $1; + $55 = ((($54)) + 20|0); + $56 = $2; + __gcry_mpi_ec_mul_point($Q,$53,$55,$56); + $57 = $1; + $58 = HEAP32[$57>>2]|0; + $59 = $0; + HEAP32[$59>>2] = $58; + $60 = $1; + $61 = ((($60)) + 4|0); + $62 = HEAP32[$61>>2]|0; + $63 = $0; + $64 = ((($63)) + 4|0); + HEAP32[$64>>2] = $62; + $65 = $1; + $66 = ((($65)) + 8|0); + $67 = HEAP32[$66>>2]|0; + $68 = (__gcry_mpi_copy($67)|0); + $69 = $0; + $70 = ((($69)) + 8|0); + HEAP32[$70>>2] = $68; + $71 = $1; + $72 = ((($71)) + 12|0); + $73 = HEAP32[$72>>2]|0; + $74 = (__gcry_mpi_copy($73)|0); + $75 = $0; + $76 = ((($75)) + 12|0); + HEAP32[$76>>2] = $74; + $77 = $1; + $78 = ((($77)) + 16|0); + $79 = HEAP32[$78>>2]|0; + $80 = (__gcry_mpi_copy($79)|0); + $81 = $0; + $82 = ((($81)) + 16|0); + HEAP32[$82>>2] = $80; + $83 = $0; + $84 = ((($83)) + 20|0); + __gcry_mpi_point_init($84); + $85 = $0; + $86 = ((($85)) + 20|0); + $87 = $1; + $88 = ((($87)) + 20|0); + _point_set_1950($86,$88); + $89 = $1; + $90 = ((($89)) + 32|0); + $91 = HEAP32[$90>>2]|0; + $92 = (__gcry_mpi_copy($91)|0); + $93 = $0; + $94 = ((($93)) + 32|0); + HEAP32[$94>>2] = $92; + $95 = $1; + $96 = ((($95)) + 36|0); + $97 = HEAP32[$96>>2]|0; + $98 = (__gcry_mpi_copy($97)|0); + $99 = $0; + $100 = ((($99)) + 36|0); + HEAP32[$100>>2] = $98; + $101 = $0; + $102 = ((($101)) + 44|0); + __gcry_mpi_point_init($102); + $103 = $pbits; + $104 = (__gcry_mpi_new($103)|0); + $x = $104; + $105 = $pbits; + $106 = (__gcry_mpi_new($105)|0); + $y = $106; + $107 = $x; + $108 = $y; + $109 = $2; + $110 = (__gcry_mpi_ec_get_affine($107,$108,$Q,$109)|0); + $111 = ($110|0)!=(0); + if ($111) { + HEAP32[$vararg_buffer>>2] = 47399; + __gcry_log_fatal(47351,$vararg_buffer); + // unreachable; + } + $112 = $1; + $113 = ((($112)) + 4|0); + $114 = HEAP32[$113>>2]|0; + $115 = ($114|0)==(1); + do { + if ($115) { + $116 = $0; + $117 = ((($116)) + 44|0); + _point_set_1950($117,$Q); + } else { + $118 = $pbits; + $119 = (__gcry_mpi_new($118)|0); + $negative = $119; + $120 = $1; + $121 = HEAP32[$120>>2]|0; + $122 = ($121|0)==(0); + $123 = $negative; + $124 = $1; + $125 = ((($124)) + 8|0); + $126 = HEAP32[$125>>2]|0; + if ($122) { + $127 = $y; + __gcry_mpi_sub($123,$126,$127); + } else { + $128 = $x; + __gcry_mpi_sub($123,$126,$128); + } + $129 = $negative; + $130 = $y; + $131 = (__gcry_mpi_cmp($129,$130)|0); + $132 = ($131|0)<(0); + if (!($132)) { + $156 = $negative; + __gcry_mpi_free($156); + $157 = $0; + $158 = ((($157)) + 44|0); + _point_set_1950($158,$Q); + $159 = (__gcry_get_debug_flag(1)|0); + $160 = ($159|0)!=(0); + if (!($160)) { + break; + } + __gcry_log_debug(47441,$vararg_buffer3); + break; + } + $133 = $1; + $134 = HEAP32[$133>>2]|0; + $135 = ($134|0)==(0); + if ($135) { + $136 = $y; + __gcry_mpi_free($136); + $137 = $negative; + $y = $137; + } else { + $138 = $x; + __gcry_mpi_free($138); + $139 = $negative; + $x = $139; + } + $140 = $0; + $141 = ((($140)) + 56|0); + $142 = HEAP32[$141>>2]|0; + $143 = $1; + $144 = ((($143)) + 32|0); + $145 = HEAP32[$144>>2]|0; + $146 = $0; + $147 = ((($146)) + 56|0); + $148 = HEAP32[$147>>2]|0; + __gcry_mpi_sub($142,$145,$148); + $149 = $0; + $150 = ((($149)) + 44|0); + $151 = $x; + $152 = $y; + $153 = (__gcry_mpi_const(1)|0); + (__gcry_mpi_point_set($150,$151,$152,$153)|0); + $154 = (__gcry_get_debug_flag(1)|0); + $155 = ($154|0)!=(0); + if ($155) { + __gcry_log_debug(47401,$vararg_buffer1); + } + } + } while(0); + $161 = $x; + $162 = $5; + HEAP32[$162>>2] = $161; + $163 = $y; + $164 = $6; + HEAP32[$164>>2] = $163; + __gcry_mpi_point_free_parts($Q); + $165 = $3; + $166 = $165 & 16384; + $167 = ($166|0)!=(0); + if ($167) { + STACKTOP = sp;return 0; + } + $168 = $0; + $169 = HEAP32[$168>>2]|0; + $170 = ($169|0)!=(1); + $171 = $0; + $172 = $4; + $173 = (($172) - 64)|0; + if ($170) { + _test_keys_1955($171,$173); + STACKTOP = sp;return 0; + } else { + _test_ecdh_only_keys($171,$173); + STACKTOP = sp;return 0; + } + return (0)|0; +} +function _point_set_1950($d,$s) { + $d = $d|0; + $s = $s|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $d; + $1 = $s; + $2 = $0; + $3 = HEAP32[$2>>2]|0; + $4 = $1; + $5 = HEAP32[$4>>2]|0; + (__gcry_mpi_set($3,$5)|0); + $6 = $0; + $7 = ((($6)) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = $1; + $10 = ((($9)) + 4|0); + $11 = HEAP32[$10>>2]|0; + (__gcry_mpi_set($8,$11)|0); + $12 = $0; + $13 = ((($12)) + 8|0); + $14 = HEAP32[$13>>2]|0; + $15 = $1; + $16 = ((($15)) + 8|0); + $17 = HEAP32[$16>>2]|0; + (__gcry_mpi_set($14,$17)|0); + STACKTOP = sp;return; +} +function _test_keys_1955($sk,$nbits) { + $sk = $sk|0; + $nbits = $nbits|0; + var $$byval_copy = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $R_ = 0, $c = 0, $out = 0, $pk = 0, $r = 0, $s = 0, $test = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer3 = 0, $vararg_buffer5 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 224|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $$byval_copy = sp + 168|0; + $vararg_buffer5 = sp + 24|0; + $vararg_buffer3 = sp + 16|0; + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $pk = sp + 104|0; + $R_ = sp + 88|0; + $2 = sp + 28|0; + $0 = $sk; + $1 = $nbits; + $3 = $1; + $4 = (__gcry_mpi_new($3)|0); + $test = $4; + $5 = $1; + $6 = (__gcry_mpi_new($5)|0); + $c = $6; + $7 = $1; + $8 = (__gcry_mpi_new($7)|0); + $out = $8; + $9 = $1; + $10 = (__gcry_mpi_new($9)|0); + $r = $10; + $11 = $1; + $12 = (__gcry_mpi_new($11)|0); + $s = $12; + $13 = (__gcry_get_debug_flag(1)|0); + $14 = ($13|0)!=(0); + if ($14) { + __gcry_log_debug(47494,$vararg_buffer); + } + __gcry_mpi_point_init($R_); + $15 = $0; + dest=$$byval_copy; src=$15; stop=dest+44|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + __gcry_ecc_curve_copy($2,$$byval_copy); + dest=$pk; src=$2; stop=dest+44|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $16 = ((($pk)) + 44|0); + __gcry_mpi_point_init($16); + $17 = ((($pk)) + 44|0); + $18 = $0; + $19 = ((($18)) + 44|0); + _point_set_1950($17,$19); + $20 = $test; + $21 = $1; + __gcry_mpi_randomize($20,$21,0); + $22 = $test; + $23 = $0; + $24 = $r; + $25 = $s; + $26 = (__gcry_ecc_ecdsa_sign($22,$23,$24,$25,0,0)|0); + $27 = ($26|0)!=(0); + if ($27) { + __gcry_log_fatal(47508,$vararg_buffer1); + // unreachable; + } + $28 = $test; + $29 = $r; + $30 = $s; + $31 = (__gcry_ecc_ecdsa_verify($28,$pk,$29,$30)|0); + $32 = ($31|0)!=(0); + if ($32) { + __gcry_log_fatal(47538,$vararg_buffer3); + // unreachable; + } + $33 = (__gcry_get_debug_flag(1)|0); + $34 = ($33|0)!=(0); + if (!($34)) { + $35 = ((($pk)) + 44|0); + __gcry_mpi_point_free_parts($35); + __gcry_ecc_curve_free($pk); + __gcry_mpi_point_free_parts($R_); + $36 = $s; + __gcry_mpi_free($36); + $37 = $r; + __gcry_mpi_free($37); + $38 = $out; + __gcry_mpi_free($38); + $39 = $c; + __gcry_mpi_free($39); + $40 = $test; + __gcry_mpi_free($40); + STACKTOP = sp;return; + } + __gcry_log_debug(47576,$vararg_buffer5); + $35 = ((($pk)) + 44|0); + __gcry_mpi_point_free_parts($35); + __gcry_ecc_curve_free($pk); + __gcry_mpi_point_free_parts($R_); + $36 = $s; + __gcry_mpi_free($36); + $37 = $r; + __gcry_mpi_free($37); + $38 = $out; + __gcry_mpi_free($38); + $39 = $c; + __gcry_mpi_free($39); + $40 = $test; + __gcry_mpi_free($40); + STACKTOP = sp;return; +} +function _test_ecdh_only_keys($sk,$nbits) { + $sk = $sk|0; + $nbits = $nbits|0; + var $$byval_copy = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $R_ = 0, $ec = 0, $pk = 0, $rndbuf = 0, $test = 0; + var $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer3 = 0, $vararg_buffer5 = 0, $x0 = 0, $x1 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 224|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $$byval_copy = sp + 168|0; + $vararg_buffer5 = sp + 24|0; + $vararg_buffer3 = sp + 16|0; + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $pk = sp + 104|0; + $R_ = sp + 88|0; + $2 = sp + 32|0; + $0 = $sk; + $1 = $nbits; + $3 = (__gcry_get_debug_flag(1)|0); + $4 = ($3|0)!=(0); + if ($4) { + __gcry_log_debug(47494,$vararg_buffer); + } + __gcry_mpi_point_init($R_); + $5 = $0; + dest=$$byval_copy; src=$5; stop=dest+44|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + __gcry_ecc_curve_copy($2,$$byval_copy); + dest=$pk; src=$2; stop=dest+44|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $6 = ((($pk)) + 44|0); + __gcry_mpi_point_init($6); + $7 = ((($pk)) + 44|0); + $8 = $0; + $9 = ((($8)) + 44|0); + _point_set_1950($7,$9); + $10 = $0; + $11 = ((($10)) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)==(1); + if ($13) { + $14 = (__gcry_mpi_new(256)|0); + $test = $14; + $15 = (__gcry_random_bytes(32,0)|0); + $rndbuf = $15; + $16 = $rndbuf; + $17 = HEAP8[$16>>0]|0; + $18 = $17 << 24 >> 24; + $19 = $18 & 127; + $20 = $19&255; + HEAP8[$16>>0] = $20; + $21 = $rndbuf; + $22 = HEAP8[$21>>0]|0; + $23 = $22 << 24 >> 24; + $24 = $23 | 64; + $25 = $24&255; + HEAP8[$21>>0] = $25; + $26 = $rndbuf; + $27 = ((($26)) + 31|0); + $28 = HEAP8[$27>>0]|0; + $29 = $28 << 24 >> 24; + $30 = $29 & 248; + $31 = $30&255; + HEAP8[$27>>0] = $31; + $32 = $test; + $33 = $rndbuf; + __gcry_mpi_set_buffer($32,$33,32,0); + $34 = $rndbuf; + __gcry_free($34); + } else { + $35 = $1; + $36 = (__gcry_mpi_new($35)|0); + $test = $36; + $37 = $test; + $38 = $1; + __gcry_mpi_randomize($37,$38,0); + } + $39 = HEAP32[$pk>>2]|0; + $40 = ((($pk)) + 4|0); + $41 = HEAP32[$40>>2]|0; + $42 = ((($pk)) + 8|0); + $43 = HEAP32[$42>>2]|0; + $44 = ((($pk)) + 12|0); + $45 = HEAP32[$44>>2]|0; + $46 = ((($pk)) + 16|0); + $47 = HEAP32[$46>>2]|0; + $48 = (__gcry_mpi_ec_p_internal_new($39,$41,0,$43,$45,$47)|0); + $ec = $48; + $49 = (__gcry_mpi_new(0)|0); + $x0 = $49; + $50 = (__gcry_mpi_new(0)|0); + $x1 = $50; + $51 = $test; + $52 = ((($pk)) + 44|0); + $53 = $ec; + __gcry_mpi_ec_mul_point($R_,$51,$52,$53); + $54 = $0; + $55 = ((($54)) + 4|0); + $56 = HEAP32[$55>>2]|0; + $57 = ($56|0)!=(1); + if ($57) { + $58 = $ec; + $59 = ((($58)) + 36|0); + $60 = HEAP32[$59>>2]|0; + $61 = $ec; + __gcry_mpi_ec_mul_point($R_,$60,$R_,$61); + } + $62 = $x0; + $63 = $ec; + $64 = (__gcry_mpi_ec_get_affine($62,0,$R_,$63)|0); + $65 = ($64|0)!=(0); + if ($65) { + __gcry_log_fatal(47611,$vararg_buffer1); + // unreachable; + } + $66 = $test; + $67 = ((($pk)) + 20|0); + $68 = $ec; + __gcry_mpi_ec_mul_point($R_,$66,$67,$68); + $69 = $0; + $70 = ((($69)) + 56|0); + $71 = HEAP32[$70>>2]|0; + $72 = $ec; + __gcry_mpi_ec_mul_point($R_,$71,$R_,$72); + $73 = $0; + $74 = ((($73)) + 4|0); + $75 = HEAP32[$74>>2]|0; + $76 = ($75|0)!=(1); + if ($76) { + $77 = $ec; + $78 = ((($77)) + 36|0); + $79 = HEAP32[$78>>2]|0; + $80 = $ec; + __gcry_mpi_ec_mul_point($R_,$79,$R_,$80); + } + $81 = $x1; + $82 = $ec; + $83 = (__gcry_mpi_ec_get_affine($81,0,$R_,$82)|0); + $84 = ($83|0)!=(0); + if ($84) { + __gcry_log_fatal(47659,$vararg_buffer3); + // unreachable; + } + $85 = $x0; + $86 = $x1; + $87 = (__gcry_mpi_cmp($85,$86)|0); + $88 = ($87|0)!=(0); + if ($88) { + __gcry_log_fatal(47708,$vararg_buffer5); + // unreachable; + } else { + $89 = $x0; + __gcry_mpi_free($89); + $90 = $x1; + __gcry_mpi_free($90); + $91 = $ec; + __gcry_mpi_ec_free($91); + $92 = ((($pk)) + 44|0); + __gcry_mpi_point_free_parts($92); + __gcry_ecc_curve_free($pk); + __gcry_mpi_point_free_parts($R_); + $93 = $test; + __gcry_mpi_free($93); + STACKTOP = sp;return; + } +} +function _ecc_check_secret_key($keyparms) { + $keyparms = $keyparms|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $17 = 0, $18 = 0, $19 = 0; + var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; + var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $curvename = 0, $ec = 0, $flags = 0, $l1 = 0, $mpi_g = 0, $mpi_q = 0, $rc = 0, $sk = 0, $vararg_buffer = 0, $vararg_buffer14 = 0, $vararg_buffer18 = 0, $vararg_buffer21 = 0; + var $vararg_buffer9 = 0, $vararg_ptr1 = 0, $vararg_ptr12 = 0, $vararg_ptr13 = 0, $vararg_ptr17 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 176|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer21 = sp + 72|0; + $vararg_buffer18 = sp + 64|0; + $vararg_buffer14 = sp + 56|0; + $vararg_buffer9 = sp + 40|0; + $vararg_buffer = sp; + $flags = sp + 152|0; + $mpi_g = sp + 144|0; + $mpi_q = sp + 140|0; + $sk = sp + 80|0; + $1 = $keyparms; + $l1 = 0; + HEAP32[$flags>>2] = 0; + $curvename = 0; + HEAP32[$mpi_g>>2] = 0; + HEAP32[$mpi_q>>2] = 0; + $ec = 0; + dest=$sk; stop=dest+60|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $2 = $1; + $3 = (__gcry_sexp_find_token($2,47190,0)|0); + $l1 = $3; + $4 = $l1; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = $l1; + $7 = (__gcry_pk_util_parse_flaglist($6,$flags,0)|0); + $rc = $7; + $8 = $rc; + $9 = ($8|0)!=(0); + if (!($9)) { + label = 3; + } + } else { + label = 3; + } + do { + if ((label|0) == 3) { + $10 = HEAP32[$flags>>2]|0; + $11 = $10 & 512; + $12 = ($11|0)!=(0); + $13 = $1; + if ($12) { + $14 = ((($sk)) + 8|0); + $15 = ((($sk)) + 12|0); + $16 = ((($sk)) + 16|0); + $17 = ((($sk)) + 32|0); + $18 = ((($sk)) + 36|0); + $19 = ((($sk)) + 56|0); + HEAP32[$vararg_buffer>>2] = $14; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $15; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $16; + $vararg_ptr3 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr3>>2] = $mpi_g; + $vararg_ptr4 = ((($vararg_buffer)) + 16|0); + HEAP32[$vararg_ptr4>>2] = $17; + $vararg_ptr5 = ((($vararg_buffer)) + 20|0); + HEAP32[$vararg_ptr5>>2] = $18; + $vararg_ptr6 = ((($vararg_buffer)) + 24|0); + HEAP32[$vararg_ptr6>>2] = $mpi_q; + $vararg_ptr7 = ((($vararg_buffer)) + 28|0); + HEAP32[$vararg_ptr7>>2] = $19; + $vararg_ptr8 = ((($vararg_buffer)) + 32|0); + HEAP32[$vararg_ptr8>>2] = 0; + $20 = (__gcry_sexp_extract_param($13,0,48163,$vararg_buffer)|0); + $rc = $20; + } else { + $21 = ((($sk)) + 56|0); + HEAP32[$vararg_buffer9>>2] = $mpi_q; + $vararg_ptr12 = ((($vararg_buffer9)) + 4|0); + HEAP32[$vararg_ptr12>>2] = $21; + $vararg_ptr13 = ((($vararg_buffer9)) + 8|0); + HEAP32[$vararg_ptr13>>2] = 0; + $22 = (__gcry_sexp_extract_param($13,0,48182,$vararg_buffer9)|0); + $rc = $22; + } + $23 = $rc; + $24 = ($23|0)!=(0); + if (!($24)) { + $25 = $l1; + __gcry_sexp_release($25); + $26 = $1; + $27 = (__gcry_sexp_find_token($26,47184,5)|0); + $l1 = $27; + $28 = $l1; + $29 = ($28|0)!=(0|0); + if ($29) { + $30 = $l1; + $31 = (__gcry_sexp_nth_string($30,1)|0); + $curvename = $31; + $32 = $curvename; + $33 = ($32|0)!=(0|0); + if ($33) { + $34 = $curvename; + $35 = ((($sk)) + 4|0); + $36 = ((($sk)) + 8|0); + $37 = ((($sk)) + 12|0); + $38 = ((($sk)) + 16|0); + $39 = ((($sk)) + 32|0); + $40 = ((($sk)) + 36|0); + $41 = (__gcry_ecc_update_curve_param($34,$sk,$35,$36,$37,$38,$mpi_g,$39,$40)|0); + $rc = $41; + $42 = $rc; + $43 = ($42|0)!=(0); + if ($43) { + $44 = $rc; + $0 = $44; + $167 = $0; + STACKTOP = sp;return ($167|0); + } + } + } + $45 = HEAP32[$mpi_g>>2]|0; + $46 = ($45|0)!=(0|0); + if ($46) { + $47 = ((($sk)) + 20|0); + __gcry_mpi_point_init($47); + $48 = ((($sk)) + 20|0); + $49 = HEAP32[$mpi_g>>2]|0; + $50 = (__gcry_ecc_os2ec($48,$49)|0); + $rc = $50; + $51 = $rc; + $52 = ($51|0)!=(0); + if ($52) { + break; + } + } + $53 = $curvename; + $54 = ($53|0)!=(0|0); + if (!($54)) { + $55 = HEAP32[$flags>>2]|0; + $56 = $55 & 4096; + $57 = ($56|0)!=(0); + $58 = $57 ? 2 : 0; + HEAP32[$sk>>2] = $58; + $59 = HEAP32[$flags>>2]|0; + $60 = $59 & 4096; + $61 = ($60|0)!=(0); + $62 = $61 ? 1 : 0; + $63 = ((($sk)) + 4|0); + HEAP32[$63>>2] = $62; + } + $64 = (__gcry_get_debug_flag(1)|0); + $65 = ($64|0)!=(0); + if ($65) { + $66 = HEAP32[$sk>>2]|0; + $67 = (__gcry_ecc_model2str($66)|0); + $68 = ((($sk)) + 4|0); + $69 = HEAP32[$68>>2]|0; + $70 = (__gcry_ecc_dialect2str($69)|0); + HEAP32[$vararg_buffer14>>2] = $67; + $vararg_ptr17 = ((($vararg_buffer14)) + 4|0); + HEAP32[$vararg_ptr17>>2] = $70; + __gcry_log_debug(48188,$vararg_buffer14); + $71 = ((($sk)) + 40|0); + $72 = HEAP32[$71>>2]|0; + $73 = ($72|0)!=(0|0); + if ($73) { + $74 = ((($sk)) + 40|0); + $75 = HEAP32[$74>>2]|0; + HEAP32[$vararg_buffer18>>2] = $75; + __gcry_log_debug(48212,$vararg_buffer18); + } + $76 = ((($sk)) + 8|0); + $77 = HEAP32[$76>>2]|0; + __gcry_log_printmpi(48233,$77); + $78 = ((($sk)) + 12|0); + $79 = HEAP32[$78>>2]|0; + __gcry_log_printmpi(48249,$79); + $80 = ((($sk)) + 16|0); + $81 = HEAP32[$80>>2]|0; + __gcry_log_printmpi(48265,$81); + $82 = ((($sk)) + 20|0); + __gcry_mpi_point_log(48281,$82,0); + $83 = ((($sk)) + 32|0); + $84 = HEAP32[$83>>2]|0; + __gcry_log_printmpi(48295,$84); + $85 = ((($sk)) + 36|0); + $86 = HEAP32[$85>>2]|0; + __gcry_log_printmpi(48311,$86); + $87 = HEAP32[$mpi_q>>2]|0; + __gcry_log_printmpi(48327,$87); + $88 = (__gcry_fips_mode()|0); + $89 = ($88|0)!=(0); + if (!($89)) { + $90 = ((($sk)) + 56|0); + $91 = HEAP32[$90>>2]|0; + __gcry_log_printmpi(48343,$91); + } + } + $92 = ((($sk)) + 8|0); + $93 = HEAP32[$92>>2]|0; + $94 = ($93|0)!=(0|0); + if ($94) { + $95 = ((($sk)) + 12|0); + $96 = HEAP32[$95>>2]|0; + $97 = ($96|0)!=(0|0); + if ($97) { + $98 = ((($sk)) + 16|0); + $99 = HEAP32[$98>>2]|0; + $100 = ($99|0)!=(0|0); + if ($100) { + $101 = ((($sk)) + 20|0); + $102 = HEAP32[$101>>2]|0; + $103 = ($102|0)!=(0|0); + if ($103) { + $104 = ((($sk)) + 32|0); + $105 = HEAP32[$104>>2]|0; + $106 = ($105|0)!=(0|0); + if ($106) { + $107 = ((($sk)) + 36|0); + $108 = HEAP32[$107>>2]|0; + $109 = ($108|0)!=(0|0); + if ($109) { + $110 = ((($sk)) + 56|0); + $111 = HEAP32[$110>>2]|0; + $112 = ($111|0)!=(0|0); + if ($112) { + $113 = HEAP32[$sk>>2]|0; + $114 = ((($sk)) + 4|0); + $115 = HEAP32[$114>>2]|0; + $116 = ((($sk)) + 8|0); + $117 = HEAP32[$116>>2]|0; + $118 = ((($sk)) + 12|0); + $119 = HEAP32[$118>>2]|0; + $120 = ((($sk)) + 16|0); + $121 = HEAP32[$120>>2]|0; + $122 = (__gcry_mpi_ec_p_internal_new($113,$115,0,$117,$119,$121)|0); + $ec = $122; + $123 = HEAP32[$mpi_q>>2]|0; + $124 = ($123|0)!=(0|0); + if (!($124)) { + $rc = 68; + break; + } + $125 = ((($sk)) + 44|0); + __gcry_mpi_point_init($125); + $126 = $ec; + $127 = ((($126)) + 4|0); + $128 = HEAP32[$127>>2]|0; + $129 = ($128|0)==(1); + if ($129) { + $130 = HEAP32[$mpi_q>>2]|0; + $131 = $ec; + $132 = ((($sk)) + 44|0); + $133 = (__gcry_ecc_eddsa_decodepoint($130,$131,$132,0,0)|0); + $rc = $133; + } else { + $134 = ((($sk)) + 44|0); + $135 = HEAP32[$mpi_q>>2]|0; + $136 = (__gcry_ecc_os2ec($134,$135)|0); + $rc = $136; + } + $137 = $rc; + $138 = ($137|0)!=(0); + if ($138) { + break; + } + $139 = $ec; + $140 = HEAP32[$flags>>2]|0; + $141 = (_check_secret_key_1991($sk,$139,$140)|0); + $142 = ($141|0)!=(0); + if (!($142)) { + break; + } + $rc = 7; + break; + } + } + } + } + } + } + } + $rc = 68; + } + } + } while(0); + $143 = $ec; + __gcry_mpi_ec_free($143); + $144 = ((($sk)) + 8|0); + $145 = HEAP32[$144>>2]|0; + __gcry_mpi_release($145); + $146 = ((($sk)) + 12|0); + $147 = HEAP32[$146>>2]|0; + __gcry_mpi_release($147); + $148 = ((($sk)) + 16|0); + $149 = HEAP32[$148>>2]|0; + __gcry_mpi_release($149); + $150 = HEAP32[$mpi_g>>2]|0; + __gcry_mpi_release($150); + $151 = ((($sk)) + 20|0); + __gcry_mpi_point_free_parts($151); + $152 = ((($sk)) + 32|0); + $153 = HEAP32[$152>>2]|0; + __gcry_mpi_release($153); + $154 = ((($sk)) + 36|0); + $155 = HEAP32[$154>>2]|0; + __gcry_mpi_release($155); + $156 = HEAP32[$mpi_q>>2]|0; + __gcry_mpi_release($156); + $157 = ((($sk)) + 44|0); + __gcry_mpi_point_free_parts($157); + $158 = ((($sk)) + 56|0); + $159 = HEAP32[$158>>2]|0; + __gcry_mpi_release($159); + $160 = $curvename; + __gcry_free($160); + $161 = $l1; + __gcry_sexp_release($161); + $162 = (__gcry_get_debug_flag(1)|0); + $163 = ($162|0)!=(0); + if ($163) { + $164 = $rc; + $165 = (_gpg_strerror($164)|0); + HEAP32[$vararg_buffer21>>2] = $165; + __gcry_log_debug(48646,$vararg_buffer21); + } + $166 = $rc; + $0 = $166; + $167 = $0; + STACKTOP = sp;return ($167|0); +} +function _check_secret_key_1991($sk,$ec,$flags) { + $sk = $sk|0; + $ec = $ec|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0; + var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; + var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; + var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; + var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $Q = 0, $rc = 0, $vararg_buffer = 0, $vararg_buffer1 = 0; + var $vararg_buffer11 = 0, $vararg_buffer13 = 0, $vararg_buffer15 = 0, $vararg_buffer3 = 0, $vararg_buffer5 = 0, $vararg_buffer7 = 0, $vararg_buffer9 = 0, $x1 = 0, $x2 = 0, $y1 = 0, $y2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer15 = sp + 64|0; + $vararg_buffer13 = sp + 56|0; + $vararg_buffer11 = sp + 48|0; + $vararg_buffer9 = sp + 40|0; + $vararg_buffer7 = sp + 32|0; + $vararg_buffer5 = sp + 24|0; + $vararg_buffer3 = sp + 16|0; + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $Q = sp + 84|0; + $0 = $sk; + $1 = $ec; + $2 = $flags; + $rc = 1; + $x2 = 0; + $y2 = 0; + __gcry_mpi_point_init($Q); + $3 = (__gcry_mpi_new(0)|0); + $x1 = $3; + $4 = $1; + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)==(1); + if ($6) { + $y1 = 0; + } else { + $7 = (__gcry_mpi_new(0)|0); + $y1 = $7; + } + $8 = $0; + $9 = ((($8)) + 20|0); + $10 = $1; + $11 = (__gcry_mpi_ec_curve_point($9,$10)|0); + $12 = ($11|0)!=(0); + L5: do { + if ($12) { + $15 = $0; + $16 = ((($15)) + 20|0); + $17 = ((($16)) + 8|0); + $18 = HEAP32[$17>>2]|0; + $19 = (__gcry_mpi_cmp_ui($18,0)|0); + $20 = ($19|0)!=(0); + if (!($20)) { + $21 = (__gcry_get_debug_flag(1)|0); + $22 = ($21|0)!=(0); + if (!($22)) { + break; + } + __gcry_log_debug(48411,$vararg_buffer1); + break; + } + $23 = $0; + $24 = ((($23)) + 4|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($25|0)!=(1); + if ($26) { + $27 = $0; + $28 = ((($27)) + 32|0); + $29 = HEAP32[$28>>2]|0; + $30 = $0; + $31 = ((($30)) + 20|0); + $32 = $1; + __gcry_mpi_ec_mul_point($Q,$29,$31,$32); + $33 = ((($Q)) + 8|0); + $34 = HEAP32[$33>>2]|0; + $35 = (__gcry_mpi_cmp_ui($34,0)|0); + $36 = ($35|0)!=(0); + if ($36) { + $37 = (__gcry_get_debug_flag(1)|0); + $38 = ($37|0)!=(0); + if (!($38)) { + break; + } + __gcry_log_debug(48456,$vararg_buffer3); + break; + } + } + $39 = $0; + $40 = ((($39)) + 44|0); + $41 = ((($40)) + 8|0); + $42 = HEAP32[$41>>2]|0; + $43 = (__gcry_mpi_cmp_ui($42,0)|0); + $44 = ($43|0)!=(0); + if (!($44)) { + $45 = (__gcry_get_debug_flag(1)|0); + $46 = ($45|0)!=(0); + if (!($46)) { + break; + } + __gcry_log_debug(48503,$vararg_buffer5); + break; + } + $47 = $1; + $48 = $0; + $49 = ((($48)) + 20|0); + $50 = $0; + $51 = ((($50)) + 56|0); + $52 = HEAP32[$51>>2]|0; + $53 = (__gcry_ecc_compute_public($Q,$47,$49,$52)|0); + $54 = ($53|0)!=(0|0); + if (!($54)) { + $55 = (__gcry_get_debug_flag(1)|0); + $56 = ($55|0)!=(0); + if (!($56)) { + break; + } + __gcry_log_debug(48549,$vararg_buffer7); + break; + } + $57 = $x1; + $58 = $y1; + $59 = $1; + $60 = (__gcry_mpi_ec_get_affine($57,$58,$Q,$59)|0); + $61 = ($60|0)!=(0); + if ($61) { + $62 = (__gcry_get_debug_flag(1)|0); + $63 = ($62|0)!=(0); + if (!($63)) { + break; + } + __gcry_log_debug(48503,$vararg_buffer9); + break; + } + $64 = $2; + $65 = $64 & 4096; + $66 = ($65|0)!=(0); + do { + if (!($66)) { + $67 = $0; + $68 = ((($67)) + 44|0); + $69 = ((($68)) + 8|0); + $70 = HEAP32[$69>>2]|0; + $71 = (__gcry_mpi_cmp_ui($70,1)|0); + $72 = ($71|0)!=(0); + if (!($72)) { + $73 = $x1; + $74 = $0; + $75 = ((($74)) + 44|0); + $76 = HEAP32[$75>>2]|0; + $77 = (__gcry_mpi_cmp($73,$76)|0); + $78 = ($77|0)!=(0); + if (!($78)) { + $79 = $y1; + $80 = ($79|0)!=(0|0); + if ($80) { + break; + } + $81 = $y1; + $82 = $0; + $83 = ((($82)) + 44|0); + $84 = ((($83)) + 4|0); + $85 = HEAP32[$84>>2]|0; + $86 = (__gcry_mpi_cmp($81,$85)|0); + $87 = ($86|0)!=(0); + if (!($87)) { + break; + } + } + $88 = (__gcry_get_debug_flag(1)|0); + $89 = ($88|0)!=(0); + if (!($89)) { + break L5; + } + __gcry_log_debug(48586,$vararg_buffer11); + break L5; + } + $90 = (__gcry_mpi_new(0)|0); + $x2 = $90; + $91 = (__gcry_mpi_new(0)|0); + $y2 = $91; + $92 = $x2; + $93 = $y2; + $94 = $0; + $95 = ((($94)) + 44|0); + $96 = $1; + $97 = (__gcry_mpi_ec_get_affine($92,$93,$95,$96)|0); + $98 = ($97|0)!=(0); + if ($98) { + $99 = (__gcry_get_debug_flag(1)|0); + $100 = ($99|0)!=(0); + if (!($100)) { + break L5; + } + __gcry_log_debug(48503,$vararg_buffer13); + break L5; + } + $101 = $x1; + $102 = $x2; + $103 = (__gcry_mpi_cmp($101,$102)|0); + $104 = ($103|0)!=(0); + if (!($104)) { + $105 = $y1; + $106 = $y2; + $107 = (__gcry_mpi_cmp($105,$106)|0); + $108 = ($107|0)!=(0); + if (!($108)) { + break; + } + } + $109 = (__gcry_get_debug_flag(1)|0); + $110 = ($109|0)!=(0); + if (!($110)) { + break L5; + } + __gcry_log_debug(48586,$vararg_buffer15); + break L5; + } + } while(0); + $rc = 0; + } else { + $13 = (__gcry_get_debug_flag(1)|0); + $14 = ($13|0)!=(0); + if ($14) { + __gcry_log_debug(48359,$vararg_buffer); + } + } + } while(0); + $111 = $x2; + __gcry_mpi_free($111); + $112 = $x1; + __gcry_mpi_free($112); + $113 = $y1; + __gcry_mpi_free($113); + $114 = $y2; + __gcry_mpi_free($114); + __gcry_mpi_point_free_parts($Q); + $115 = $rc; + STACKTOP = sp;return ($115|0); +} +function _ecc_encrypt_raw($r_ciph,$s_data,$keyparms) { + $r_ciph = $r_ciph|0; + $s_data = $s_data|0; + $keyparms = $keyparms|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $R = 0, $ctx = 0, $curvename = 0, $data = 0, $ec = 0; + var $l1 = 0, $mpi_e = 0, $mpi_g = 0, $mpi_q = 0, $mpi_s = 0, $or$cond = 0, $pk = 0, $rc = 0, $vararg_buffer = 0, $vararg_buffer13 = 0, $vararg_buffer16 = 0, $vararg_buffer18 = 0, $vararg_buffer20 = 0, $vararg_buffer24 = 0, $vararg_buffer9 = 0, $vararg_ptr12 = 0, $vararg_ptr2 = 0, $vararg_ptr23 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0; + var $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $x = 0, $y = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 256|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer24 = sp + 72|0; + $vararg_buffer20 = sp + 64|0; + $vararg_buffer18 = sp + 56|0; + $vararg_buffer16 = sp + 48|0; + $vararg_buffer13 = sp + 40|0; + $vararg_buffer9 = sp + 32|0; + $vararg_buffer = sp; + $ctx = sp + 192|0; + $mpi_g = sp + 176|0; + $mpi_q = sp + 172|0; + $data = sp + 160|0; + $pk = sp + 104|0; + $R = sp + 84|0; + $1 = $r_ciph; + $2 = $s_data; + $3 = $keyparms; + $l1 = 0; + $curvename = 0; + HEAP32[$mpi_g>>2] = 0; + HEAP32[$mpi_q>>2] = 0; + $mpi_s = 0; + $mpi_e = 0; + HEAP32[$data>>2] = 0; + $ec = 0; + dest=$pk; stop=dest+56|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $4 = $3; + $5 = (_ecc_get_nbits($4)|0); + __gcry_pk_util_init_encoding_ctx($ctx,0,$5); + $6 = $2; + $7 = (__gcry_pk_util_data_to_mpi($6,$data,$ctx)|0); + $rc = $7; + $8 = $rc; + $9 = ($8|0)!=(0); + do { + if (!($9)) { + $10 = (__gcry_get_debug_flag(1)|0); + $11 = ($10|0)!=(0); + if ($11) { + $12 = HEAP32[$data>>2]|0; + __gcry_log_printmpi(48669,$12); + } + $13 = HEAP32[$data>>2]|0; + $14 = ($13|0)!=(0|0); + if ($14) { + $15 = HEAP32[$data>>2]|0; + $16 = ((($15)) + 12|0); + $17 = HEAP32[$16>>2]|0; + $18 = $17 & 4; + $19 = ($18|0)!=(0); + if ($19) { + $rc = 79; + break; + } + } + $20 = $3; + $21 = ((($pk)) + 8|0); + $22 = ((($pk)) + 12|0); + $23 = ((($pk)) + 16|0); + $24 = ((($pk)) + 32|0); + $25 = ((($pk)) + 36|0); + HEAP32[$vararg_buffer>>2] = $21; + $vararg_ptr2 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr2>>2] = $22; + $vararg_ptr3 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr3>>2] = $23; + $vararg_ptr4 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr4>>2] = $mpi_g; + $vararg_ptr5 = ((($vararg_buffer)) + 16|0); + HEAP32[$vararg_ptr5>>2] = $24; + $vararg_ptr6 = ((($vararg_buffer)) + 20|0); + HEAP32[$vararg_ptr6>>2] = $25; + $vararg_ptr7 = ((($vararg_buffer)) + 24|0); + HEAP32[$vararg_ptr7>>2] = $mpi_q; + $vararg_ptr8 = ((($vararg_buffer)) + 28|0); + HEAP32[$vararg_ptr8>>2] = 0; + $26 = (__gcry_sexp_extract_param($20,0,48686,$vararg_buffer)|0); + $rc = $26; + $27 = $rc; + $28 = ($27|0)!=(0); + if (!($28)) { + $29 = HEAP32[$mpi_g>>2]|0; + $30 = ($29|0)!=(0|0); + if ($30) { + $31 = ((($pk)) + 20|0); + __gcry_mpi_point_init($31); + $32 = ((($pk)) + 20|0); + $33 = HEAP32[$mpi_g>>2]|0; + $34 = (__gcry_ecc_os2ec($32,$33)|0); + $rc = $34; + $35 = $rc; + $36 = ($35|0)!=(0); + if ($36) { + break; + } + } + $37 = $l1; + __gcry_sexp_release($37); + $38 = $3; + $39 = (__gcry_sexp_find_token($38,47184,5)|0); + $l1 = $39; + $40 = $l1; + $41 = ($40|0)!=(0|0); + if ($41) { + $42 = $l1; + $43 = (__gcry_sexp_nth_string($42,1)|0); + $curvename = $43; + $44 = $curvename; + $45 = ($44|0)!=(0|0); + if ($45) { + $46 = $curvename; + $47 = (__gcry_ecc_fill_in_curve(0,$46,$pk,0)|0); + $rc = $47; + $48 = $rc; + $49 = ($48|0)!=(0); + if ($49) { + $50 = $rc; + $0 = $50; + $174 = $0; + STACKTOP = sp;return ($174|0); + } + } + } + $51 = $curvename; + $52 = ($51|0)!=(0|0); + if (!($52)) { + HEAP32[$pk>>2] = 0; + $53 = ((($pk)) + 4|0); + HEAP32[$53>>2] = 0; + } + $54 = (__gcry_get_debug_flag(1)|0); + $55 = ($54|0)!=(0); + if ($55) { + $56 = HEAP32[$pk>>2]|0; + $57 = (__gcry_ecc_model2str($56)|0); + $58 = ((($pk)) + 4|0); + $59 = HEAP32[$58>>2]|0; + $60 = (__gcry_ecc_dialect2str($59)|0); + HEAP32[$vararg_buffer9>>2] = $57; + $vararg_ptr12 = ((($vararg_buffer9)) + 4|0); + HEAP32[$vararg_ptr12>>2] = $60; + __gcry_log_debug(48702,$vararg_buffer9); + $61 = ((($pk)) + 40|0); + $62 = HEAP32[$61>>2]|0; + $63 = ($62|0)!=(0|0); + if ($63) { + $64 = ((($pk)) + 40|0); + $65 = HEAP32[$64>>2]|0; + HEAP32[$vararg_buffer13>>2] = $65; + __gcry_log_debug(48727,$vararg_buffer13); + } + $66 = ((($pk)) + 8|0); + $67 = HEAP32[$66>>2]|0; + __gcry_log_printmpi(48749,$67); + $68 = ((($pk)) + 12|0); + $69 = HEAP32[$68>>2]|0; + __gcry_log_printmpi(48766,$69); + $70 = ((($pk)) + 16|0); + $71 = HEAP32[$70>>2]|0; + __gcry_log_printmpi(48783,$71); + $72 = ((($pk)) + 20|0); + __gcry_mpi_point_log(48800,$72,0); + $73 = ((($pk)) + 32|0); + $74 = HEAP32[$73>>2]|0; + __gcry_log_printmpi(48815,$74); + $75 = ((($pk)) + 36|0); + $76 = HEAP32[$75>>2]|0; + __gcry_log_printmpi(48832,$76); + $77 = HEAP32[$mpi_q>>2]|0; + __gcry_log_printmpi(48849,$77); + } + $78 = ((($pk)) + 8|0); + $79 = HEAP32[$78>>2]|0; + $80 = ($79|0)!=(0|0); + if ($80) { + $81 = ((($pk)) + 12|0); + $82 = HEAP32[$81>>2]|0; + $83 = ($82|0)!=(0|0); + if ($83) { + $84 = ((($pk)) + 16|0); + $85 = HEAP32[$84>>2]|0; + $86 = ($85|0)!=(0|0); + if ($86) { + $87 = ((($pk)) + 20|0); + $88 = HEAP32[$87>>2]|0; + $89 = ($88|0)!=(0|0); + if ($89) { + $90 = ((($pk)) + 32|0); + $91 = HEAP32[$90>>2]|0; + $92 = ($91|0)!=(0|0); + if ($92) { + $93 = ((($pk)) + 36|0); + $94 = HEAP32[$93>>2]|0; + $95 = ($94|0)!=(0|0); + $96 = HEAP32[$mpi_q>>2]|0; + $97 = ($96|0)!=(0|0); + $or$cond = $95 & $97; + if ($or$cond) { + $98 = HEAP32[$mpi_q>>2]|0; + $99 = ($98|0)!=(0|0); + if ($99) { + $100 = ((($pk)) + 44|0); + __gcry_mpi_point_init($100); + $101 = ((($pk)) + 44|0); + $102 = HEAP32[$mpi_q>>2]|0; + $103 = (__gcry_ecc_os2ec($101,$102)|0); + $rc = $103; + $104 = $rc; + $105 = ($104|0)!=(0); + if ($105) { + break; + } + } + $106 = HEAP32[$pk>>2]|0; + $107 = ((($pk)) + 4|0); + $108 = HEAP32[$107>>2]|0; + $109 = ((($pk)) + 8|0); + $110 = HEAP32[$109>>2]|0; + $111 = ((($pk)) + 12|0); + $112 = HEAP32[$111>>2]|0; + $113 = ((($pk)) + 16|0); + $114 = HEAP32[$113>>2]|0; + $115 = (__gcry_mpi_ec_p_internal_new($106,$108,0,$110,$112,$114)|0); + $ec = $115; + $116 = (__gcry_mpi_new(0)|0); + $x = $116; + $117 = (__gcry_mpi_new(0)|0); + $y = $117; + __gcry_mpi_point_init($R); + $118 = HEAP32[$data>>2]|0; + $119 = ((($pk)) + 44|0); + $120 = $ec; + __gcry_mpi_ec_mul_point($R,$118,$119,$120); + $121 = $x; + $122 = $y; + $123 = $ec; + $124 = (__gcry_mpi_ec_get_affine($121,$122,$R,$123)|0); + $125 = ($124|0)!=(0); + if ($125) { + __gcry_log_fatal(48866,$vararg_buffer16); + // unreachable; + } + $126 = $x; + $127 = $y; + $128 = ((($pk)) + 8|0); + $129 = HEAP32[$128>>2]|0; + $130 = (__gcry_ecc_ec2os($126,$127,$129)|0); + $mpi_s = $130; + $131 = HEAP32[$data>>2]|0; + $132 = ((($pk)) + 20|0); + $133 = $ec; + __gcry_mpi_ec_mul_point($R,$131,$132,$133); + $134 = $x; + $135 = $y; + $136 = $ec; + $137 = (__gcry_mpi_ec_get_affine($134,$135,$R,$136)|0); + $138 = ($137|0)!=(0); + if ($138) { + __gcry_log_fatal(48914,$vararg_buffer18); + // unreachable; + } else { + $139 = $x; + $140 = $y; + $141 = ((($pk)) + 8|0); + $142 = HEAP32[$141>>2]|0; + $143 = (__gcry_ecc_ec2os($139,$140,$142)|0); + $mpi_e = $143; + $144 = $x; + __gcry_mpi_free($144); + $145 = $y; + __gcry_mpi_free($145); + __gcry_mpi_point_free_parts($R); + $146 = $1; + $147 = $mpi_s; + $148 = $mpi_e; + HEAP32[$vararg_buffer20>>2] = $147; + $vararg_ptr23 = ((($vararg_buffer20)) + 4|0); + HEAP32[$vararg_ptr23>>2] = $148; + $149 = (__gcry_sexp_build($146,0,48961,$vararg_buffer20)|0); + $rc = $149; + break; + } + } + } + } + } + } + } + $rc = 68; + } + } + } while(0); + $150 = ((($pk)) + 8|0); + $151 = HEAP32[$150>>2]|0; + __gcry_mpi_release($151); + $152 = ((($pk)) + 12|0); + $153 = HEAP32[$152>>2]|0; + __gcry_mpi_release($153); + $154 = ((($pk)) + 16|0); + $155 = HEAP32[$154>>2]|0; + __gcry_mpi_release($155); + $156 = HEAP32[$mpi_g>>2]|0; + __gcry_mpi_release($156); + $157 = ((($pk)) + 20|0); + __gcry_mpi_point_free_parts($157); + $158 = ((($pk)) + 32|0); + $159 = HEAP32[$158>>2]|0; + __gcry_mpi_release($159); + $160 = ((($pk)) + 36|0); + $161 = HEAP32[$160>>2]|0; + __gcry_mpi_release($161); + $162 = HEAP32[$mpi_q>>2]|0; + __gcry_mpi_release($162); + $163 = ((($pk)) + 44|0); + __gcry_mpi_point_free_parts($163); + $164 = HEAP32[$data>>2]|0; + __gcry_mpi_release($164); + $165 = $mpi_s; + __gcry_mpi_release($165); + $166 = $mpi_e; + __gcry_mpi_release($166); + $167 = $curvename; + __gcry_free($167); + $168 = $ec; + __gcry_mpi_ec_free($168); + __gcry_pk_util_free_encoding_ctx($ctx); + $169 = (__gcry_get_debug_flag(1)|0); + $170 = ($169|0)!=(0); + if ($170) { + $171 = $rc; + $172 = (_gpg_strerror($171)|0); + HEAP32[$vararg_buffer24>>2] = $172; + __gcry_log_debug(48987,$vararg_buffer24); + } + $173 = $rc; + $0 = $173; + $174 = $0; + STACKTOP = sp;return ($174|0); +} +function _ecc_get_nbits($parms) { + $parms = $parms|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $curve = 0, $l1 = 0, $nbits = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $nbits = sp + 4|0; + $1 = $parms; + HEAP32[$nbits>>2] = 0; + $2 = $1; + $3 = (__gcry_sexp_find_token($2,48667,1)|0); + $l1 = $3; + $4 = $l1; + $5 = ($4|0)!=(0|0); + if ($5) { + $19 = $l1; + $20 = (__gcry_sexp_nth_mpi($19,1,5)|0); + $p = $20; + $21 = $l1; + __gcry_sexp_release($21); + $22 = $p; + $23 = ($22|0)!=(0|0); + if ($23) { + $24 = $p; + $25 = (__gcry_mpi_get_nbits($24)|0); + HEAP32[$nbits>>2] = $25; + $26 = $p; + __gcry_mpi_release($26); + } + } else { + $6 = $1; + $7 = (__gcry_sexp_find_token($6,47184,5)|0); + $l1 = $7; + $8 = $l1; + $9 = ($8|0)!=(0|0); + if (!($9)) { + $0 = 0; + $28 = $0; + STACKTOP = sp;return ($28|0); + } + $10 = $l1; + $11 = (__gcry_sexp_nth_string($10,1)|0); + $curve = $11; + $12 = $l1; + __gcry_sexp_release($12); + $13 = $curve; + $14 = ($13|0)!=(0|0); + if (!($14)) { + $0 = 0; + $28 = $0; + STACKTOP = sp;return ($28|0); + } + $15 = $curve; + $16 = (__gcry_ecc_fill_in_curve(0,$15,0,$nbits)|0); + $17 = ($16|0)!=(0); + if ($17) { + HEAP32[$nbits>>2] = 0; + } + $18 = $curve; + __gcry_free($18); + } + $27 = HEAP32[$nbits>>2]|0; + $0 = $27; + $28 = $0; + STACKTOP = sp;return ($28|0); +} +function _ecc_decrypt_raw($r_plain,$s_data,$keyparms) { + $r_plain = $r_plain|0; + $s_data = $s_data|0; + $keyparms = $keyparms|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $R = 0, $ctx = 0, $curvename = 0, $data_e = 0, $ec = 0; + var $kG = 0, $l1 = 0, $mpi_g = 0, $r = 0, $rc = 0, $sk = 0, $vararg_buffer = 0, $vararg_buffer12 = 0, $vararg_buffer16 = 0, $vararg_buffer19 = 0, $vararg_buffer2 = 0, $vararg_buffer21 = 0, $vararg_buffer24 = 0, $vararg_ptr1 = 0, $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr15 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0; + var $vararg_ptr8 = 0, $vararg_ptr9 = 0, $x = 0, $y = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 256|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer24 = sp + 72|0; + $vararg_buffer21 = sp + 64|0; + $vararg_buffer19 = sp + 56|0; + $vararg_buffer16 = sp + 48|0; + $vararg_buffer12 = sp + 40|0; + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $ctx = sp + 192|0; + $l1 = sp + 188|0; + $data_e = sp + 184|0; + $sk = sp + 124|0; + $mpi_g = sp + 120|0; + $kG = sp + 100|0; + $R = sp + 88|0; + $1 = $r_plain; + $2 = $s_data; + $3 = $keyparms; + HEAP32[$l1>>2] = 0; + HEAP32[$data_e>>2] = 0; + HEAP32[$mpi_g>>2] = 0; + $curvename = 0; + $ec = 0; + $r = 0; + dest=$sk; stop=dest+60|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + __gcry_mpi_point_init($kG); + __gcry_mpi_point_init($R); + $4 = $3; + $5 = (_ecc_get_nbits($4)|0); + __gcry_pk_util_init_encoding_ctx($ctx,1,$5); + $6 = $2; + $7 = (__gcry_pk_util_preparse_encval($6,12920,$l1,$ctx)|0); + $rc = $7; + $8 = $rc; + $9 = ($8|0)!=(0); + do { + if (!($9)) { + $10 = HEAP32[$l1>>2]|0; + HEAP32[$vararg_buffer>>2] = $data_e; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 0; + $11 = (__gcry_sexp_extract_param($10,0,49009,$vararg_buffer)|0); + $rc = $11; + $12 = $rc; + $13 = ($12|0)!=(0); + if (!($13)) { + $14 = (__gcry_get_debug_flag(1)|0); + $15 = ($14|0)!=(0); + if ($15) { + $16 = HEAP32[$data_e>>2]|0; + __gcry_log_printmpi(49011,$16); + } + $17 = HEAP32[$data_e>>2]|0; + $18 = ($17|0)!=(0|0); + if ($18) { + $19 = HEAP32[$data_e>>2]|0; + $20 = ((($19)) + 12|0); + $21 = HEAP32[$20>>2]|0; + $22 = $21 & 4; + $23 = ($22|0)!=(0); + if ($23) { + $rc = 79; + break; + } + } + $24 = $3; + $25 = ((($sk)) + 8|0); + $26 = ((($sk)) + 12|0); + $27 = ((($sk)) + 16|0); + $28 = ((($sk)) + 32|0); + $29 = ((($sk)) + 36|0); + $30 = ((($sk)) + 56|0); + HEAP32[$vararg_buffer2>>2] = $25; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = $26; + $vararg_ptr6 = ((($vararg_buffer2)) + 8|0); + HEAP32[$vararg_ptr6>>2] = $27; + $vararg_ptr7 = ((($vararg_buffer2)) + 12|0); + HEAP32[$vararg_ptr7>>2] = $mpi_g; + $vararg_ptr8 = ((($vararg_buffer2)) + 16|0); + HEAP32[$vararg_ptr8>>2] = $28; + $vararg_ptr9 = ((($vararg_buffer2)) + 20|0); + HEAP32[$vararg_ptr9>>2] = $29; + $vararg_ptr10 = ((($vararg_buffer2)) + 24|0); + HEAP32[$vararg_ptr10>>2] = $30; + $vararg_ptr11 = ((($vararg_buffer2)) + 28|0); + HEAP32[$vararg_ptr11>>2] = 0; + $31 = (__gcry_sexp_extract_param($24,0,49028,$vararg_buffer2)|0); + $rc = $31; + $32 = $rc; + $33 = ($32|0)!=(0); + if (!($33)) { + $34 = HEAP32[$mpi_g>>2]|0; + $35 = ($34|0)!=(0|0); + if ($35) { + $36 = ((($sk)) + 20|0); + __gcry_mpi_point_init($36); + $37 = ((($sk)) + 20|0); + $38 = HEAP32[$mpi_g>>2]|0; + $39 = (__gcry_ecc_os2ec($37,$38)|0); + $rc = $39; + $40 = $rc; + $41 = ($40|0)!=(0); + if ($41) { + break; + } + } + $42 = HEAP32[$l1>>2]|0; + __gcry_sexp_release($42); + $43 = $3; + $44 = (__gcry_sexp_find_token($43,47184,5)|0); + HEAP32[$l1>>2] = $44; + $45 = HEAP32[$l1>>2]|0; + $46 = ($45|0)!=(0|0); + if ($46) { + $47 = HEAP32[$l1>>2]|0; + $48 = (__gcry_sexp_nth_string($47,1)|0); + $curvename = $48; + $49 = $curvename; + $50 = ($49|0)!=(0|0); + if ($50) { + $51 = $curvename; + $52 = (__gcry_ecc_fill_in_curve(0,$51,$sk,0)|0); + $rc = $52; + $53 = $rc; + $54 = ($53|0)!=(0); + if ($54) { + $55 = $rc; + $0 = $55; + $174 = $0; + STACKTOP = sp;return ($174|0); + } + } + } + $56 = $curvename; + $57 = ($56|0)!=(0|0); + if (!($57)) { + HEAP32[$sk>>2] = 0; + $58 = ((($sk)) + 4|0); + HEAP32[$58>>2] = 0; + } + $59 = (__gcry_get_debug_flag(1)|0); + $60 = ($59|0)!=(0); + if ($60) { + $61 = HEAP32[$sk>>2]|0; + $62 = (__gcry_ecc_model2str($61)|0); + $63 = ((($sk)) + 4|0); + $64 = HEAP32[$63>>2]|0; + $65 = (__gcry_ecc_dialect2str($64)|0); + HEAP32[$vararg_buffer12>>2] = $62; + $vararg_ptr15 = ((($vararg_buffer12)) + 4|0); + HEAP32[$vararg_ptr15>>2] = $65; + __gcry_log_debug(49044,$vararg_buffer12); + $66 = ((($sk)) + 40|0); + $67 = HEAP32[$66>>2]|0; + $68 = ($67|0)!=(0|0); + if ($68) { + $69 = ((($sk)) + 40|0); + $70 = HEAP32[$69>>2]|0; + HEAP32[$vararg_buffer16>>2] = $70; + __gcry_log_debug(49069,$vararg_buffer16); + } + $71 = ((($sk)) + 8|0); + $72 = HEAP32[$71>>2]|0; + __gcry_log_printmpi(49091,$72); + $73 = ((($sk)) + 12|0); + $74 = HEAP32[$73>>2]|0; + __gcry_log_printmpi(49108,$74); + $75 = ((($sk)) + 16|0); + $76 = HEAP32[$75>>2]|0; + __gcry_log_printmpi(49125,$76); + $77 = ((($sk)) + 20|0); + __gcry_mpi_point_log(49142,$77,0); + $78 = ((($sk)) + 32|0); + $79 = HEAP32[$78>>2]|0; + __gcry_log_printmpi(49157,$79); + $80 = ((($sk)) + 36|0); + $81 = HEAP32[$80>>2]|0; + __gcry_log_printmpi(49174,$81); + $82 = (__gcry_fips_mode()|0); + $83 = ($82|0)!=(0); + if (!($83)) { + $84 = ((($sk)) + 56|0); + $85 = HEAP32[$84>>2]|0; + __gcry_log_printmpi(49191,$85); + } + } + $86 = ((($sk)) + 8|0); + $87 = HEAP32[$86>>2]|0; + $88 = ($87|0)!=(0|0); + if ($88) { + $89 = ((($sk)) + 12|0); + $90 = HEAP32[$89>>2]|0; + $91 = ($90|0)!=(0|0); + if ($91) { + $92 = ((($sk)) + 16|0); + $93 = HEAP32[$92>>2]|0; + $94 = ($93|0)!=(0|0); + if ($94) { + $95 = ((($sk)) + 20|0); + $96 = HEAP32[$95>>2]|0; + $97 = ($96|0)!=(0|0); + if ($97) { + $98 = ((($sk)) + 32|0); + $99 = HEAP32[$98>>2]|0; + $100 = ($99|0)!=(0|0); + if ($100) { + $101 = ((($sk)) + 36|0); + $102 = HEAP32[$101>>2]|0; + $103 = ($102|0)!=(0|0); + if ($103) { + $104 = ((($sk)) + 56|0); + $105 = HEAP32[$104>>2]|0; + $106 = ($105|0)!=(0|0); + if ($106) { + $107 = HEAP32[$data_e>>2]|0; + $108 = (__gcry_ecc_os2ec($kG,$107)|0); + $rc = $108; + $109 = $rc; + $110 = ($109|0)!=(0); + if ($110) { + __gcry_mpi_point_free_parts($kG); + $111 = $rc; + $0 = $111; + $174 = $0; + STACKTOP = sp;return ($174|0); + } + $112 = HEAP32[$sk>>2]|0; + $113 = ((($sk)) + 4|0); + $114 = HEAP32[$113>>2]|0; + $115 = ((($sk)) + 8|0); + $116 = HEAP32[$115>>2]|0; + $117 = ((($sk)) + 12|0); + $118 = HEAP32[$117>>2]|0; + $119 = ((($sk)) + 16|0); + $120 = HEAP32[$119>>2]|0; + $121 = (__gcry_mpi_ec_p_internal_new($112,$114,0,$116,$118,$120)|0); + $ec = $121; + $122 = ((($sk)) + 56|0); + $123 = HEAP32[$122>>2]|0; + $124 = $ec; + __gcry_mpi_ec_mul_point($R,$123,$kG,$124); + $125 = (__gcry_mpi_new(0)|0); + $x = $125; + $126 = (__gcry_mpi_new(0)|0); + $y = $126; + $127 = $x; + $128 = $y; + $129 = $ec; + $130 = (__gcry_mpi_ec_get_affine($127,$128,$R,$129)|0); + $131 = ($130|0)!=(0); + if ($131) { + __gcry_log_fatal(49208,$vararg_buffer19); + // unreachable; + } + $132 = $x; + $133 = $y; + $134 = ((($sk)) + 8|0); + $135 = HEAP32[$134>>2]|0; + $136 = (__gcry_ecc_ec2os($132,$133,$135)|0); + $r = $136; + $137 = $r; + $138 = ($137|0)!=(0|0); + if ($138) { + $rc = 0; + } else { + $139 = (_gpg_err_code_from_syserror()|0); + $rc = $139; + } + $140 = $x; + __gcry_mpi_free($140); + $141 = $y; + __gcry_mpi_free($141); + $142 = (__gcry_get_debug_flag(1)|0); + $143 = ($142|0)!=(0); + if ($143) { + $144 = $r; + __gcry_log_printmpi(49248,$144); + } + $145 = $rc; + $146 = ($145|0)!=(0); + if ($146) { + break; + } + $147 = $1; + $148 = $r; + HEAP32[$vararg_buffer21>>2] = $148; + $149 = (__gcry_sexp_build($147,0,49265,$vararg_buffer21)|0); + $rc = $149; + break; + } + } + } + } + } + } + } + $rc = 68; + } + } + } + } while(0); + __gcry_mpi_point_free_parts($R); + __gcry_mpi_point_free_parts($kG); + $150 = $r; + __gcry_mpi_release($150); + $151 = ((($sk)) + 8|0); + $152 = HEAP32[$151>>2]|0; + __gcry_mpi_release($152); + $153 = ((($sk)) + 12|0); + $154 = HEAP32[$153>>2]|0; + __gcry_mpi_release($154); + $155 = ((($sk)) + 16|0); + $156 = HEAP32[$155>>2]|0; + __gcry_mpi_release($156); + $157 = HEAP32[$mpi_g>>2]|0; + __gcry_mpi_release($157); + $158 = ((($sk)) + 20|0); + __gcry_mpi_point_free_parts($158); + $159 = ((($sk)) + 32|0); + $160 = HEAP32[$159>>2]|0; + __gcry_mpi_release($160); + $161 = ((($sk)) + 36|0); + $162 = HEAP32[$161>>2]|0; + __gcry_mpi_release($162); + $163 = ((($sk)) + 56|0); + $164 = HEAP32[$163>>2]|0; + __gcry_mpi_release($164); + $165 = HEAP32[$data_e>>2]|0; + __gcry_mpi_release($165); + $166 = $curvename; + __gcry_free($166); + $167 = HEAP32[$l1>>2]|0; + __gcry_sexp_release($167); + $168 = $ec; + __gcry_mpi_ec_free($168); + __gcry_pk_util_free_encoding_ctx($ctx); + $169 = (__gcry_get_debug_flag(1)|0); + $170 = ($169|0)!=(0); + if ($170) { + $171 = $rc; + $172 = (_gpg_strerror($171)|0); + HEAP32[$vararg_buffer24>>2] = $172; + __gcry_log_debug(49276,$vararg_buffer24); + } + $173 = $rc; + $0 = $173; + $174 = $0; + STACKTOP = sp;return ($174|0); +} +function _ecc_sign($r_sig,$s_data,$keyparms) { + $r_sig = $r_sig|0; + $s_data = $s_data|0; + $keyparms = $keyparms|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $19 = 0, $2 = 0; + var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $ctx = 0, $curvename = 0, $data = 0, $l1 = 0, $mpi_g = 0, $mpi_q = 0, $rc = 0, $sig_r = 0, $sig_s = 0, $sk = 0, $vararg_buffer = 0, $vararg_buffer14 = 0, $vararg_buffer19 = 0; + var $vararg_buffer22 = 0, $vararg_buffer26 = 0, $vararg_buffer30 = 0, $vararg_buffer34 = 0, $vararg_buffer9 = 0, $vararg_ptr1 = 0, $vararg_ptr12 = 0, $vararg_ptr13 = 0, $vararg_ptr17 = 0, $vararg_ptr18 = 0, $vararg_ptr2 = 0, $vararg_ptr25 = 0, $vararg_ptr29 = 0, $vararg_ptr3 = 0, $vararg_ptr33 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0; + var dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 272|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer34 = sp + 104|0; + $vararg_buffer30 = sp + 96|0; + $vararg_buffer26 = sp + 88|0; + $vararg_buffer22 = sp + 80|0; + $vararg_buffer19 = sp + 72|0; + $vararg_buffer14 = sp + 56|0; + $vararg_buffer9 = sp + 40|0; + $vararg_buffer = sp; + $ctx = sp + 200|0; + $data = sp + 192|0; + $mpi_g = sp + 180|0; + $mpi_q = sp + 176|0; + $sk = sp + 116|0; + $1 = $r_sig; + $2 = $s_data; + $3 = $keyparms; + HEAP32[$data>>2] = 0; + $l1 = 0; + $curvename = 0; + HEAP32[$mpi_g>>2] = 0; + HEAP32[$mpi_q>>2] = 0; + $sig_r = 0; + $sig_s = 0; + dest=$sk; stop=dest+60|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + __gcry_pk_util_init_encoding_ctx($ctx,2,0); + $4 = $2; + $5 = (__gcry_pk_util_data_to_mpi($4,$data,$ctx)|0); + $rc = $5; + $6 = $rc; + $7 = ($6|0)!=(0); + do { + if (!($7)) { + $8 = (__gcry_get_debug_flag(1)|0); + $9 = ($8|0)!=(0); + if ($9) { + $10 = HEAP32[$data>>2]|0; + __gcry_log_printmpi(49298,$10); + } + $11 = ((($ctx)) + 12|0); + $12 = HEAP32[$11>>2]|0; + $13 = $12 & 512; + $14 = ($13|0)!=(0); + $15 = $3; + if ($14) { + $16 = ((($sk)) + 8|0); + $17 = ((($sk)) + 12|0); + $18 = ((($sk)) + 16|0); + $19 = ((($sk)) + 32|0); + $20 = ((($sk)) + 36|0); + $21 = ((($sk)) + 56|0); + HEAP32[$vararg_buffer>>2] = $16; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $17; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $18; + $vararg_ptr3 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr3>>2] = $mpi_g; + $vararg_ptr4 = ((($vararg_buffer)) + 16|0); + HEAP32[$vararg_ptr4>>2] = $19; + $vararg_ptr5 = ((($vararg_buffer)) + 20|0); + HEAP32[$vararg_ptr5>>2] = $20; + $vararg_ptr6 = ((($vararg_buffer)) + 24|0); + HEAP32[$vararg_ptr6>>2] = $mpi_q; + $vararg_ptr7 = ((($vararg_buffer)) + 28|0); + HEAP32[$vararg_ptr7>>2] = $21; + $vararg_ptr8 = ((($vararg_buffer)) + 32|0); + HEAP32[$vararg_ptr8>>2] = 0; + $22 = (__gcry_sexp_extract_param($15,0,48163,$vararg_buffer)|0); + $rc = $22; + } else { + $23 = ((($sk)) + 56|0); + HEAP32[$vararg_buffer9>>2] = $mpi_q; + $vararg_ptr12 = ((($vararg_buffer9)) + 4|0); + HEAP32[$vararg_ptr12>>2] = $23; + $vararg_ptr13 = ((($vararg_buffer9)) + 8|0); + HEAP32[$vararg_ptr13>>2] = 0; + $24 = (__gcry_sexp_extract_param($15,0,48182,$vararg_buffer9)|0); + $rc = $24; + } + $25 = $rc; + $26 = ($25|0)!=(0); + if (!($26)) { + $27 = HEAP32[$mpi_g>>2]|0; + $28 = ($27|0)!=(0|0); + if ($28) { + $29 = ((($sk)) + 20|0); + __gcry_mpi_point_init($29); + $30 = ((($sk)) + 20|0); + $31 = HEAP32[$mpi_g>>2]|0; + $32 = (__gcry_ecc_os2ec($30,$31)|0); + $rc = $32; + $33 = $rc; + $34 = ($33|0)!=(0); + if ($34) { + break; + } + } + $35 = $l1; + __gcry_sexp_release($35); + $36 = $3; + $37 = (__gcry_sexp_find_token($36,47184,5)|0); + $l1 = $37; + $38 = $l1; + $39 = ($38|0)!=(0|0); + if ($39) { + $40 = $l1; + $41 = (__gcry_sexp_nth_string($40,1)|0); + $curvename = $41; + $42 = $curvename; + $43 = ($42|0)!=(0|0); + if ($43) { + $44 = $curvename; + $45 = (__gcry_ecc_fill_in_curve(0,$44,$sk,0)|0); + $rc = $45; + $46 = $rc; + $47 = ($46|0)!=(0); + if ($47) { + $48 = $rc; + $0 = $48; + $186 = $0; + STACKTOP = sp;return ($186|0); + } + } + } + $49 = $curvename; + $50 = ($49|0)!=(0|0); + if (!($50)) { + $51 = ((($ctx)) + 12|0); + $52 = HEAP32[$51>>2]|0; + $53 = $52 & 4096; + $54 = ($53|0)!=(0); + $55 = $54 ? 2 : 0; + HEAP32[$sk>>2] = $55; + $56 = ((($ctx)) + 12|0); + $57 = HEAP32[$56>>2]|0; + $58 = $57 & 4096; + $59 = ($58|0)!=(0); + $60 = $59 ? 1 : 0; + $61 = ((($sk)) + 4|0); + HEAP32[$61>>2] = $60; + } + $62 = (__gcry_get_debug_flag(1)|0); + $63 = ($62|0)!=(0); + if ($63) { + $64 = HEAP32[$sk>>2]|0; + $65 = (__gcry_ecc_model2str($64)|0); + $66 = ((($sk)) + 4|0); + $67 = HEAP32[$66>>2]|0; + $68 = (__gcry_ecc_dialect2str($67)|0); + $69 = ((($ctx)) + 12|0); + $70 = HEAP32[$69>>2]|0; + $71 = $70 & 4096; + $72 = ($71|0)!=(0); + $73 = $72 ? 49314 : 76543; + HEAP32[$vararg_buffer14>>2] = $65; + $vararg_ptr17 = ((($vararg_buffer14)) + 4|0); + HEAP32[$vararg_ptr17>>2] = $68; + $vararg_ptr18 = ((($vararg_buffer14)) + 8|0); + HEAP32[$vararg_ptr18>>2] = $73; + __gcry_log_debug(49321,$vararg_buffer14); + $74 = ((($sk)) + 40|0); + $75 = HEAP32[$74>>2]|0; + $76 = ($75|0)!=(0|0); + if ($76) { + $77 = ((($sk)) + 40|0); + $78 = HEAP32[$77>>2]|0; + HEAP32[$vararg_buffer19>>2] = $78; + __gcry_log_debug(49347,$vararg_buffer19); + } + $79 = ((($sk)) + 8|0); + $80 = HEAP32[$79>>2]|0; + __gcry_log_printmpi(49368,$80); + $81 = ((($sk)) + 12|0); + $82 = HEAP32[$81>>2]|0; + __gcry_log_printmpi(49384,$82); + $83 = ((($sk)) + 16|0); + $84 = HEAP32[$83>>2]|0; + __gcry_log_printmpi(49400,$84); + $85 = ((($sk)) + 20|0); + __gcry_mpi_point_log(49416,$85,0); + $86 = ((($sk)) + 32|0); + $87 = HEAP32[$86>>2]|0; + __gcry_log_printmpi(49430,$87); + $88 = ((($sk)) + 36|0); + $89 = HEAP32[$88>>2]|0; + __gcry_log_printmpi(49446,$89); + $90 = HEAP32[$mpi_q>>2]|0; + __gcry_log_printmpi(49462,$90); + $91 = (__gcry_fips_mode()|0); + $92 = ($91|0)!=(0); + if (!($92)) { + $93 = ((($sk)) + 56|0); + $94 = HEAP32[$93>>2]|0; + __gcry_log_printmpi(49478,$94); + } + } + $95 = ((($sk)) + 8|0); + $96 = HEAP32[$95>>2]|0; + $97 = ($96|0)!=(0|0); + if ($97) { + $98 = ((($sk)) + 12|0); + $99 = HEAP32[$98>>2]|0; + $100 = ($99|0)!=(0|0); + if ($100) { + $101 = ((($sk)) + 16|0); + $102 = HEAP32[$101>>2]|0; + $103 = ($102|0)!=(0|0); + if ($103) { + $104 = ((($sk)) + 20|0); + $105 = HEAP32[$104>>2]|0; + $106 = ($105|0)!=(0|0); + if ($106) { + $107 = ((($sk)) + 32|0); + $108 = HEAP32[$107>>2]|0; + $109 = ($108|0)!=(0|0); + if ($109) { + $110 = ((($sk)) + 36|0); + $111 = HEAP32[$110>>2]|0; + $112 = ($111|0)!=(0|0); + if ($112) { + $113 = ((($sk)) + 56|0); + $114 = HEAP32[$113>>2]|0; + $115 = ($114|0)!=(0|0); + if ($115) { + $116 = (__gcry_mpi_new(0)|0); + $sig_r = $116; + $117 = (__gcry_mpi_new(0)|0); + $sig_s = $117; + $118 = ((($ctx)) + 12|0); + $119 = HEAP32[$118>>2]|0; + $120 = $119 & 4096; + $121 = ($120|0)!=(0); + if ($121) { + $122 = HEAP32[$data>>2]|0; + $123 = $sig_r; + $124 = $sig_s; + $125 = ((($ctx)) + 16|0); + $126 = HEAP32[$125>>2]|0; + $127 = HEAP32[$mpi_q>>2]|0; + $128 = (__gcry_ecc_eddsa_sign($122,$sk,$123,$124,$126,$127)|0); + $rc = $128; + $129 = $rc; + $130 = ($129|0)!=(0); + if ($130) { + break; + } + $131 = $1; + $132 = $sig_r; + $133 = $sig_s; + HEAP32[$vararg_buffer22>>2] = $132; + $vararg_ptr25 = ((($vararg_buffer22)) + 4|0); + HEAP32[$vararg_ptr25>>2] = $133; + $134 = (__gcry_sexp_build($131,0,49494,$vararg_buffer22)|0); + $rc = $134; + break; + } + $135 = ((($ctx)) + 12|0); + $136 = HEAP32[$135>>2]|0; + $137 = $136 & 8192; + $138 = ($137|0)!=(0); + $139 = HEAP32[$data>>2]|0; + $140 = $sig_r; + $141 = $sig_s; + if ($138) { + $142 = (__gcry_ecc_gost_sign($139,$sk,$140,$141)|0); + $rc = $142; + $143 = $rc; + $144 = ($143|0)!=(0); + if ($144) { + break; + } + $145 = $1; + $146 = $sig_r; + $147 = $sig_s; + HEAP32[$vararg_buffer26>>2] = $146; + $vararg_ptr29 = ((($vararg_buffer26)) + 4|0); + HEAP32[$vararg_ptr29>>2] = $147; + $148 = (__gcry_sexp_build($145,0,49521,$vararg_buffer26)|0); + $rc = $148; + break; + } else { + $149 = ((($ctx)) + 12|0); + $150 = HEAP32[$149>>2]|0; + $151 = ((($ctx)) + 16|0); + $152 = HEAP32[$151>>2]|0; + $153 = (__gcry_ecc_ecdsa_sign($139,$sk,$140,$141,$150,$152)|0); + $rc = $153; + $154 = $rc; + $155 = ($154|0)!=(0); + if ($155) { + break; + } + $156 = $1; + $157 = $sig_r; + $158 = $sig_s; + HEAP32[$vararg_buffer30>>2] = $157; + $vararg_ptr33 = ((($vararg_buffer30)) + 4|0); + HEAP32[$vararg_ptr33>>2] = $158; + $159 = (__gcry_sexp_build($156,0,49547,$vararg_buffer30)|0); + $rc = $159; + break; + } + } + } + } + } + } + } + } + $rc = 68; + } + } + } while(0); + $160 = ((($sk)) + 8|0); + $161 = HEAP32[$160>>2]|0; + __gcry_mpi_release($161); + $162 = ((($sk)) + 12|0); + $163 = HEAP32[$162>>2]|0; + __gcry_mpi_release($163); + $164 = ((($sk)) + 16|0); + $165 = HEAP32[$164>>2]|0; + __gcry_mpi_release($165); + $166 = HEAP32[$mpi_g>>2]|0; + __gcry_mpi_release($166); + $167 = ((($sk)) + 20|0); + __gcry_mpi_point_free_parts($167); + $168 = ((($sk)) + 32|0); + $169 = HEAP32[$168>>2]|0; + __gcry_mpi_release($169); + $170 = ((($sk)) + 36|0); + $171 = HEAP32[$170>>2]|0; + __gcry_mpi_release($171); + $172 = HEAP32[$mpi_q>>2]|0; + __gcry_mpi_release($172); + $173 = ((($sk)) + 44|0); + __gcry_mpi_point_free_parts($173); + $174 = ((($sk)) + 56|0); + $175 = HEAP32[$174>>2]|0; + __gcry_mpi_release($175); + $176 = $sig_r; + __gcry_mpi_release($176); + $177 = $sig_s; + __gcry_mpi_release($177); + $178 = $curvename; + __gcry_free($178); + $179 = HEAP32[$data>>2]|0; + __gcry_mpi_release($179); + $180 = $l1; + __gcry_sexp_release($180); + __gcry_pk_util_free_encoding_ctx($ctx); + $181 = (__gcry_get_debug_flag(1)|0); + $182 = ($181|0)!=(0); + if ($182) { + $183 = $rc; + $184 = (_gpg_strerror($183)|0); + HEAP32[$vararg_buffer34>>2] = $184; + __gcry_log_debug(49574,$vararg_buffer34); + } + $185 = $rc; + $0 = $185; + $186 = $0; + STACKTOP = sp;return ($186|0); +} +function _ecc_verify($s_sig,$s_data,$s_keyparms) { + $s_sig = $s_sig|0; + $s_data = $s_data|0; + $s_keyparms = $s_keyparms|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $a = 0, $abits = 0, $abuf = 0, $ctx = 0, $curvename = 0, $data = 0, $ec = 0, $l1 = 0, $mpi_g = 0, $mpi_q = 0, $or$cond = 0, $pk = 0, $qbits = 0, $rc = 0, $sig_r = 0, $sig_s = 0, $sigflags = 0, $vararg_buffer = 0, $vararg_buffer14 = 0; + var $vararg_buffer18 = 0, $vararg_buffer23 = 0, $vararg_buffer26 = 0, $vararg_buffer4 = 0, $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr12 = 0, $vararg_ptr13 = 0, $vararg_ptr17 = 0, $vararg_ptr2 = 0, $vararg_ptr21 = 0, $vararg_ptr22 = 0, $vararg_ptr3 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 272|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer26 = sp + 80|0; + $vararg_buffer23 = sp + 72|0; + $vararg_buffer18 = sp + 56|0; + $vararg_buffer14 = sp + 48|0; + $vararg_buffer4 = sp + 16|0; + $vararg_buffer = sp; + $ctx = sp + 200|0; + $l1 = sp + 192|0; + $mpi_g = sp + 184|0; + $mpi_q = sp + 180|0; + $sig_r = sp + 176|0; + $sig_s = sp + 172|0; + $data = sp + 168|0; + $pk = sp + 112|0; + $sigflags = sp + 104|0; + $abits = sp + 92|0; + $a = sp + 84|0; + $1 = $s_sig; + $2 = $s_data; + $3 = $s_keyparms; + HEAP32[$l1>>2] = 0; + $curvename = 0; + HEAP32[$mpi_g>>2] = 0; + HEAP32[$mpi_q>>2] = 0; + HEAP32[$sig_r>>2] = 0; + HEAP32[$sig_s>>2] = 0; + HEAP32[$data>>2] = 0; + dest=$pk; stop=dest+56|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $4 = $3; + $5 = (_ecc_get_nbits($4)|0); + __gcry_pk_util_init_encoding_ctx($ctx,3,$5); + $6 = $2; + $7 = (__gcry_pk_util_data_to_mpi($6,$data,$ctx)|0); + $rc = $7; + $8 = $rc; + $9 = ($8|0)!=(0); + L1: do { + if (!($9)) { + $10 = (__gcry_get_debug_flag(1)|0); + $11 = ($10|0)!=(0); + if ($11) { + $12 = HEAP32[$data>>2]|0; + __gcry_log_printmpi(49595,$12); + } + $13 = $1; + $14 = (__gcry_pk_util_preparse_sigval($13,12920,$l1,$sigflags)|0); + $rc = $14; + $15 = $rc; + $16 = ($15|0)!=(0); + if (!($16)) { + $17 = HEAP32[$l1>>2]|0; + $18 = HEAP32[$sigflags>>2]|0; + $19 = $18 & 4096; + $20 = ($19|0)!=(0); + $21 = $20 ? 49611 : 47181; + HEAP32[$vararg_buffer>>2] = $sig_r; + $vararg_ptr2 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr2>>2] = $sig_s; + $vararg_ptr3 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr3>>2] = 0; + $22 = (__gcry_sexp_extract_param($17,0,$21,$vararg_buffer)|0); + $rc = $22; + $23 = $rc; + $24 = ($23|0)!=(0); + if (!($24)) { + $25 = (__gcry_get_debug_flag(1)|0); + $26 = ($25|0)!=(0); + if ($26) { + $27 = HEAP32[$sig_r>>2]|0; + __gcry_log_printmpi(49615,$27); + $28 = HEAP32[$sig_s>>2]|0; + __gcry_log_printmpi(49631,$28); + } + $29 = ((($ctx)) + 12|0); + $30 = HEAP32[$29>>2]|0; + $31 = $30 & 4096; + $32 = HEAP32[$sigflags>>2]|0; + $33 = $32 & 4096; + $34 = $31 ^ $33; + $35 = ($34|0)!=(0); + if ($35) { + $rc = 70; + break; + } + $36 = ((($ctx)) + 12|0); + $37 = HEAP32[$36>>2]|0; + $38 = $37 & 512; + $39 = ($38|0)!=(0); + $40 = $3; + if ($39) { + $41 = ((($pk)) + 8|0); + $42 = ((($pk)) + 12|0); + $43 = ((($pk)) + 16|0); + $44 = ((($pk)) + 32|0); + $45 = ((($pk)) + 32|0); + HEAP32[$vararg_buffer4>>2] = $41; + $vararg_ptr7 = ((($vararg_buffer4)) + 4|0); + HEAP32[$vararg_ptr7>>2] = $42; + $vararg_ptr8 = ((($vararg_buffer4)) + 8|0); + HEAP32[$vararg_ptr8>>2] = $43; + $vararg_ptr9 = ((($vararg_buffer4)) + 12|0); + HEAP32[$vararg_ptr9>>2] = $mpi_g; + $vararg_ptr10 = ((($vararg_buffer4)) + 16|0); + HEAP32[$vararg_ptr10>>2] = $44; + $vararg_ptr11 = ((($vararg_buffer4)) + 20|0); + HEAP32[$vararg_ptr11>>2] = $45; + $vararg_ptr12 = ((($vararg_buffer4)) + 24|0); + HEAP32[$vararg_ptr12>>2] = $mpi_q; + $vararg_ptr13 = ((($vararg_buffer4)) + 28|0); + HEAP32[$vararg_ptr13>>2] = 0; + $46 = (__gcry_sexp_extract_param($40,0,49647,$vararg_buffer4)|0); + $rc = $46; + } else { + HEAP32[$vararg_buffer14>>2] = $mpi_q; + $vararg_ptr17 = ((($vararg_buffer14)) + 4|0); + HEAP32[$vararg_ptr17>>2] = 0; + $47 = (__gcry_sexp_extract_param($40,0,49663,$vararg_buffer14)|0); + $rc = $47; + } + $48 = $rc; + $49 = ($48|0)!=(0); + if (!($49)) { + $50 = HEAP32[$mpi_g>>2]|0; + $51 = ($50|0)!=(0|0); + if ($51) { + $52 = ((($pk)) + 20|0); + __gcry_mpi_point_init($52); + $53 = ((($pk)) + 20|0); + $54 = HEAP32[$mpi_g>>2]|0; + $55 = (__gcry_ecc_os2ec($53,$54)|0); + $rc = $55; + $56 = $rc; + $57 = ($56|0)!=(0); + if ($57) { + break; + } + } + $58 = HEAP32[$l1>>2]|0; + __gcry_sexp_release($58); + $59 = $3; + $60 = (__gcry_sexp_find_token($59,47184,5)|0); + HEAP32[$l1>>2] = $60; + $61 = HEAP32[$l1>>2]|0; + $62 = ($61|0)!=(0|0); + if ($62) { + $63 = HEAP32[$l1>>2]|0; + $64 = (__gcry_sexp_nth_string($63,1)|0); + $curvename = $64; + $65 = $curvename; + $66 = ($65|0)!=(0|0); + if ($66) { + $67 = $curvename; + $68 = (__gcry_ecc_fill_in_curve(0,$67,$pk,0)|0); + $rc = $68; + $69 = $rc; + $70 = ($69|0)!=(0); + if ($70) { + $71 = $rc; + $0 = $71; + $240 = $0; + STACKTOP = sp;return ($240|0); + } + } + } + $72 = $curvename; + $73 = ($72|0)!=(0|0); + if (!($73)) { + $74 = HEAP32[$sigflags>>2]|0; + $75 = $74 & 4096; + $76 = ($75|0)!=(0); + $77 = $76 ? 2 : 0; + HEAP32[$pk>>2] = $77; + $78 = HEAP32[$sigflags>>2]|0; + $79 = $78 & 4096; + $80 = ($79|0)!=(0); + $81 = $80 ? 1 : 0; + $82 = ((($pk)) + 4|0); + HEAP32[$82>>2] = $81; + } + $83 = (__gcry_get_debug_flag(1)|0); + $84 = ($83|0)!=(0); + if ($84) { + $85 = HEAP32[$pk>>2]|0; + $86 = (__gcry_ecc_model2str($85)|0); + $87 = ((($pk)) + 4|0); + $88 = HEAP32[$87>>2]|0; + $89 = (__gcry_ecc_dialect2str($88)|0); + $90 = HEAP32[$sigflags>>2]|0; + $91 = $90 & 4096; + $92 = ($91|0)!=(0); + $93 = $92 ? 49314 : 76543; + HEAP32[$vararg_buffer18>>2] = $86; + $vararg_ptr21 = ((($vararg_buffer18)) + 4|0); + HEAP32[$vararg_ptr21>>2] = $89; + $vararg_ptr22 = ((($vararg_buffer18)) + 8|0); + HEAP32[$vararg_ptr22>>2] = $93; + __gcry_log_debug(49666,$vararg_buffer18); + $94 = ((($pk)) + 40|0); + $95 = HEAP32[$94>>2]|0; + $96 = ($95|0)!=(0|0); + if ($96) { + $97 = ((($pk)) + 40|0); + $98 = HEAP32[$97>>2]|0; + HEAP32[$vararg_buffer23>>2] = $98; + __gcry_log_debug(49692,$vararg_buffer23); + } + $99 = ((($pk)) + 8|0); + $100 = HEAP32[$99>>2]|0; + __gcry_log_printmpi(49713,$100); + $101 = ((($pk)) + 12|0); + $102 = HEAP32[$101>>2]|0; + __gcry_log_printmpi(49729,$102); + $103 = ((($pk)) + 16|0); + $104 = HEAP32[$103>>2]|0; + __gcry_log_printmpi(49745,$104); + $105 = ((($pk)) + 20|0); + __gcry_mpi_point_log(49761,$105,0); + $106 = ((($pk)) + 32|0); + $107 = HEAP32[$106>>2]|0; + __gcry_log_printmpi(49775,$107); + $108 = ((($pk)) + 36|0); + $109 = HEAP32[$108>>2]|0; + __gcry_log_printmpi(49791,$109); + $110 = HEAP32[$mpi_q>>2]|0; + __gcry_log_printmpi(49807,$110); + } + $111 = ((($pk)) + 8|0); + $112 = HEAP32[$111>>2]|0; + $113 = ($112|0)!=(0|0); + if ($113) { + $114 = ((($pk)) + 12|0); + $115 = HEAP32[$114>>2]|0; + $116 = ($115|0)!=(0|0); + if ($116) { + $117 = ((($pk)) + 16|0); + $118 = HEAP32[$117>>2]|0; + $119 = ($118|0)!=(0|0); + if ($119) { + $120 = ((($pk)) + 20|0); + $121 = HEAP32[$120>>2]|0; + $122 = ($121|0)!=(0|0); + if ($122) { + $123 = ((($pk)) + 32|0); + $124 = HEAP32[$123>>2]|0; + $125 = ($124|0)!=(0|0); + if ($125) { + $126 = ((($pk)) + 36|0); + $127 = HEAP32[$126>>2]|0; + $128 = ($127|0)!=(0|0); + $129 = HEAP32[$mpi_q>>2]|0; + $130 = ($129|0)!=(0|0); + $or$cond = $128 & $130; + if ($or$cond) { + $131 = HEAP32[$sigflags>>2]|0; + $132 = $131 & 4096; + $133 = ($132|0)!=(0); + if ($133) { + $134 = HEAP32[$data>>2]|0; + $135 = HEAP32[$sig_r>>2]|0; + $136 = HEAP32[$sig_s>>2]|0; + $137 = ((($ctx)) + 16|0); + $138 = HEAP32[$137>>2]|0; + $139 = HEAP32[$mpi_q>>2]|0; + $140 = (__gcry_ecc_eddsa_verify($134,$pk,$135,$136,$138,$139)|0); + $rc = $140; + break; + } + $141 = HEAP32[$sigflags>>2]|0; + $142 = $141 & 8192; + $143 = ($142|0)!=(0); + $144 = ((($pk)) + 44|0); + __gcry_mpi_point_init($144); + if ($143) { + $145 = ((($pk)) + 44|0); + $146 = HEAP32[$mpi_q>>2]|0; + $147 = (__gcry_ecc_os2ec($145,$146)|0); + $rc = $147; + $148 = $rc; + $149 = ($148|0)!=(0); + if ($149) { + break; + } + $150 = HEAP32[$data>>2]|0; + $151 = HEAP32[$sig_r>>2]|0; + $152 = HEAP32[$sig_s>>2]|0; + $153 = (__gcry_ecc_gost_verify($150,$pk,$151,$152)|0); + $rc = $153; + break; + } + $154 = ((($pk)) + 4|0); + $155 = HEAP32[$154>>2]|0; + $156 = ($155|0)==(1); + if ($156) { + $157 = HEAP32[$pk>>2]|0; + $158 = ((($pk)) + 4|0); + $159 = HEAP32[$158>>2]|0; + $160 = ((($pk)) + 8|0); + $161 = HEAP32[$160>>2]|0; + $162 = ((($pk)) + 12|0); + $163 = HEAP32[$162>>2]|0; + $164 = ((($pk)) + 16|0); + $165 = HEAP32[$164>>2]|0; + $166 = (__gcry_mpi_ec_p_internal_new($157,$159,0,$161,$163,$165)|0); + $ec = $166; + $167 = HEAP32[$mpi_q>>2]|0; + $168 = $ec; + $169 = ((($pk)) + 44|0); + $170 = (__gcry_ecc_eddsa_decodepoint($167,$168,$169,0,0)|0); + $rc = $170; + $171 = $ec; + __gcry_mpi_ec_free($171); + } else { + $172 = ((($pk)) + 44|0); + $173 = HEAP32[$mpi_q>>2]|0; + $174 = (__gcry_ecc_os2ec($172,$173)|0); + $rc = $174; + } + $175 = $rc; + $176 = ($175|0)!=(0); + if ($176) { + break; + } + $177 = HEAP32[$data>>2]|0; + $178 = ($177|0)!=(0|0); + do { + if ($178) { + $179 = HEAP32[$data>>2]|0; + $180 = ((($179)) + 12|0); + $181 = HEAP32[$180>>2]|0; + $182 = $181 & 4; + $183 = ($182|0)!=(0); + if (!($183)) { + break; + } + $184 = ((($pk)) + 32|0); + $185 = HEAP32[$184>>2]|0; + $186 = (__gcry_mpi_get_nbits($185)|0); + $qbits = $186; + $187 = HEAP32[$data>>2]|0; + $188 = (__gcry_mpi_get_opaque($187,$abits)|0); + $abuf = $188; + $189 = $abuf; + $190 = HEAP32[$abits>>2]|0; + $191 = (($190) + 7)|0; + $192 = (($191>>>0) / 8)&-1; + $193 = (__gcry_mpi_scan($a,5,$189,$192,0)|0); + $rc = $193; + $194 = $rc; + $195 = ($194|0)!=(0); + if ($195) { + break L1; + } + $196 = HEAP32[$abits>>2]|0; + $197 = $qbits; + $198 = ($196>>>0)>($197>>>0); + if ($198) { + $199 = HEAP32[$a>>2]|0; + $200 = HEAP32[$a>>2]|0; + $201 = HEAP32[$abits>>2]|0; + $202 = $qbits; + $203 = (($201) - ($202))|0; + __gcry_mpi_rshift($199,$200,$203); + } + $204 = HEAP32[$a>>2]|0; + $205 = HEAP32[$sig_r>>2]|0; + $206 = HEAP32[$sig_s>>2]|0; + $207 = (__gcry_ecc_ecdsa_verify($204,$pk,$205,$206)|0); + $rc = $207; + $208 = HEAP32[$a>>2]|0; + __gcry_mpi_release($208); + break L1; + } + } while(0); + $209 = HEAP32[$data>>2]|0; + $210 = HEAP32[$sig_r>>2]|0; + $211 = HEAP32[$sig_s>>2]|0; + $212 = (__gcry_ecc_ecdsa_verify($209,$pk,$210,$211)|0); + $rc = $212; + break; + } + } + } + } + } + } + $rc = 68; + } + } + } + } + } while(0); + $213 = ((($pk)) + 8|0); + $214 = HEAP32[$213>>2]|0; + __gcry_mpi_release($214); + $215 = ((($pk)) + 12|0); + $216 = HEAP32[$215>>2]|0; + __gcry_mpi_release($216); + $217 = ((($pk)) + 16|0); + $218 = HEAP32[$217>>2]|0; + __gcry_mpi_release($218); + $219 = HEAP32[$mpi_g>>2]|0; + __gcry_mpi_release($219); + $220 = ((($pk)) + 20|0); + __gcry_mpi_point_free_parts($220); + $221 = ((($pk)) + 32|0); + $222 = HEAP32[$221>>2]|0; + __gcry_mpi_release($222); + $223 = ((($pk)) + 36|0); + $224 = HEAP32[$223>>2]|0; + __gcry_mpi_release($224); + $225 = HEAP32[$mpi_q>>2]|0; + __gcry_mpi_release($225); + $226 = ((($pk)) + 44|0); + __gcry_mpi_point_free_parts($226); + $227 = HEAP32[$data>>2]|0; + __gcry_mpi_release($227); + $228 = HEAP32[$sig_r>>2]|0; + __gcry_mpi_release($228); + $229 = HEAP32[$sig_s>>2]|0; + __gcry_mpi_release($229); + $230 = $curvename; + __gcry_free($230); + $231 = HEAP32[$l1>>2]|0; + __gcry_sexp_release($231); + __gcry_pk_util_free_encoding_ctx($ctx); + $232 = (__gcry_get_debug_flag(1)|0); + $233 = ($232|0)!=(0); + if ($233) { + $234 = $rc; + $235 = ($234|0)!=(0); + if ($235) { + $236 = $rc; + $237 = (_gpg_strerror($236)|0); + $238 = $237; + } else { + $238 = 49823; + } + HEAP32[$vararg_buffer26>>2] = $238; + __gcry_log_debug(49828,$vararg_buffer26); + } + $239 = $rc; + $0 = $239; + $240 = $0; + STACKTOP = sp;return ($240|0); +} +function _run_selftests_2065($algo,$extended,$report) { + $algo = $algo|0; + $extended = $extended|0; + $report = $report|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $algo; + $2 = $extended; + $3 = $report; + $4 = $1; + $5 = ($4|0)!=(18); + if ($5) { + $0 = 4; + } else { + $6 = $3; + $7 = (_selftests_ecdsa($6)|0); + $0 = $7; + } + $8 = $0; + STACKTOP = sp;return ($8|0); +} +function _selftests_ecdsa($report) { + $report = $report|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $errtxt = 0, $what = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $report; + $what = 49849; + $errtxt = 0; + $2 = $errtxt; + $3 = ($2|0)!=(0|0); + if (!($3)) { + $0 = 0; + $9 = $0; + STACKTOP = sp;return ($9|0); + } + $4 = $1; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = $1; + $7 = $what; + $8 = $errtxt; + FUNCTION_TABLE_viiii[$6 & 63](49859,18,$7,$8); + } + $0 = 50; + $9 = $0; + STACKTOP = sp;return ($9|0); +} +function _compute_keygrip_2068($md,$keyparms) { + $md = $md|0; + $keyparms = $keyparms|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; + var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $buf = 0, $curvename = 0, $dialect = 0, $flags = 0, $idx = 0, $l1 = 0, $model = 0, $n = 0, $raw = 0, $rawmpi = 0, $rawmpilen = 0; + var $rc = 0, $values = 0, $vararg_buffer = 0, $vararg_buffer18 = 0, $vararg_buffer22 = 0, $vararg_buffer26 = 0, $vararg_buffer30 = 0, $vararg_buffer8 = 0, $vararg_ptr1 = 0, $vararg_ptr11 = 0, $vararg_ptr12 = 0, $vararg_ptr13 = 0, $vararg_ptr14 = 0, $vararg_ptr15 = 0, $vararg_ptr16 = 0, $vararg_ptr17 = 0, $vararg_ptr2 = 0, $vararg_ptr21 = 0, $vararg_ptr25 = 0, $vararg_ptr29 = 0; + var $vararg_ptr3 = 0, $vararg_ptr33 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 208|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer30 = sp + 88|0; + $vararg_buffer26 = sp + 80|0; + $vararg_buffer22 = sp + 72|0; + $vararg_buffer18 = sp + 64|0; + $vararg_buffer8 = sp + 32|0; + $vararg_buffer = sp; + $values = sp + 132|0; + $flags = sp + 120|0; + $model = sp + 116|0; + $dialect = sp + 112|0; + $buf = sp + 176|0; + $n = sp + 104|0; + $rawmpilen = sp + 96|0; + $0 = $md; + $1 = $keyparms; + $curvename = 0; + HEAP32[$flags>>2] = 0; + HEAP32[$model>>2] = 0; + HEAP32[$dialect>>2] = 0; + $idx = 0; + while(1) { + $2 = $idx; + $3 = ($2|0)<(7); + if (!($3)) { + break; + } + $4 = $idx; + $5 = (($values) + ($4<<2)|0); + HEAP32[$5>>2] = 0; + $6 = $idx; + $7 = (($6) + 1)|0; + $idx = $7; + } + $8 = $1; + $9 = (__gcry_sexp_find_token($8,47190,0)|0); + $l1 = $9; + $10 = $l1; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = $l1; + $13 = (__gcry_pk_util_parse_flaglist($12,$flags,0)|0); + $rc = $13; + $14 = $rc; + $15 = ($14|0)!=(0); + if (!($15)) { + label = 6; + } + } else { + label = 6; + } + L7: do { + if ((label|0) == 6) { + $16 = HEAP32[$flags>>2]|0; + $17 = $16 & 512; + $18 = ($17|0)!=(0); + $19 = HEAP32[$flags>>2]|0; + $20 = $19 & 4096; + $21 = ($20|0)!=(0); + $22 = $1; + do { + if ($18) { + $23 = ((($values)) + 4|0); + $24 = ((($values)) + 8|0); + $25 = ((($values)) + 12|0); + $26 = ((($values)) + 16|0); + $27 = ((($values)) + 20|0); + $28 = ((($values)) + 24|0); + if ($21) { + HEAP32[$vararg_buffer>>2] = $values; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $23; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $24; + $vararg_ptr3 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr3>>2] = $25; + $vararg_ptr4 = ((($vararg_buffer)) + 16|0); + HEAP32[$vararg_ptr4>>2] = $26; + $vararg_ptr5 = ((($vararg_buffer)) + 20|0); + HEAP32[$vararg_ptr5>>2] = $27; + $vararg_ptr6 = ((($vararg_buffer)) + 24|0); + HEAP32[$vararg_ptr6>>2] = $28; + $vararg_ptr7 = ((($vararg_buffer)) + 28|0); + HEAP32[$vararg_ptr7>>2] = 0; + $29 = (__gcry_sexp_extract_param($22,0,49866,$vararg_buffer)|0); + $rc = $29; + break; + } else { + HEAP32[$vararg_buffer8>>2] = $values; + $vararg_ptr11 = ((($vararg_buffer8)) + 4|0); + HEAP32[$vararg_ptr11>>2] = $23; + $vararg_ptr12 = ((($vararg_buffer8)) + 8|0); + HEAP32[$vararg_ptr12>>2] = $24; + $vararg_ptr13 = ((($vararg_buffer8)) + 12|0); + HEAP32[$vararg_ptr13>>2] = $25; + $vararg_ptr14 = ((($vararg_buffer8)) + 16|0); + HEAP32[$vararg_ptr14>>2] = $26; + $vararg_ptr15 = ((($vararg_buffer8)) + 20|0); + HEAP32[$vararg_ptr15>>2] = $27; + $vararg_ptr16 = ((($vararg_buffer8)) + 24|0); + HEAP32[$vararg_ptr16>>2] = $28; + $vararg_ptr17 = ((($vararg_buffer8)) + 28|0); + HEAP32[$vararg_ptr17>>2] = 0; + $30 = (__gcry_sexp_extract_param($22,0,49881,$vararg_buffer8)|0); + $rc = $30; + break; + } + } else { + $31 = ((($values)) + 24|0); + if ($21) { + HEAP32[$vararg_buffer18>>2] = $31; + $vararg_ptr21 = ((($vararg_buffer18)) + 4|0); + HEAP32[$vararg_ptr21>>2] = 0; + $32 = (__gcry_sexp_extract_param($22,0,49663,$vararg_buffer18)|0); + $rc = $32; + break; + } else { + HEAP32[$vararg_buffer22>>2] = $31; + $vararg_ptr25 = ((($vararg_buffer22)) + 4|0); + HEAP32[$vararg_ptr25>>2] = 0; + $33 = (__gcry_sexp_extract_param($22,0,49895,$vararg_buffer22)|0); + $rc = $33; + break; + } + } + } while(0); + $34 = $rc; + $35 = ($34|0)!=(0); + if (!($35)) { + $36 = $l1; + __gcry_sexp_release($36); + $37 = $1; + $38 = (__gcry_sexp_find_token($37,47184,5)|0); + $l1 = $38; + $39 = $l1; + $40 = ($39|0)!=(0|0); + if ($40) { + $41 = $l1; + $42 = (__gcry_sexp_nth_string($41,1)|0); + $curvename = $42; + $43 = $curvename; + $44 = ($43|0)!=(0|0); + if ($44) { + $45 = $curvename; + $46 = ((($values)) + 4|0); + $47 = ((($values)) + 8|0); + $48 = ((($values)) + 12|0); + $49 = ((($values)) + 16|0); + $50 = ((($values)) + 20|0); + $51 = (__gcry_ecc_update_curve_param($45,$model,$dialect,$values,$46,$47,$48,$49,$50)|0); + $rc = $51; + $52 = $rc; + $53 = ($52|0)!=(0); + if ($53) { + break; + } + } + } + $54 = $curvename; + $55 = ($54|0)!=(0|0); + if (!($55)) { + $56 = HEAP32[$flags>>2]|0; + $57 = $56 & 4096; + $58 = ($57|0)!=(0); + $59 = $58 ? 2 : 0; + HEAP32[$model>>2] = $59; + $60 = HEAP32[$flags>>2]|0; + $61 = $60 & 4096; + $62 = ($61|0)!=(0); + $63 = $62 ? 1 : 0; + HEAP32[$dialect>>2] = $63; + } + $idx = 0; + while(1) { + $64 = $idx; + $65 = ($64|0)<(7); + if (!($65)) { + break; + } + $66 = $idx; + $67 = (($values) + ($66<<2)|0); + $68 = HEAP32[$67>>2]|0; + $69 = ($68|0)!=(0|0); + if (!($69)) { + label = 22; + break; + } + $70 = $idx; + $71 = (($values) + ($70<<2)|0); + $72 = HEAP32[$71>>2]|0; + __gcry_mpi_normalize($72); + $73 = $idx; + $74 = (($73) + 1)|0; + $idx = $74; + } + if ((label|0) == 22) { + $rc = 68; + break; + } + $75 = HEAP32[$flags>>2]|0; + $76 = $75 & 4096; + $77 = ($76|0)!=(0); + if ($77) { + $78 = HEAP32[$dialect>>2]|0; + $79 = ($78|0)==(1); + if ($79) { + $80 = ((($values)) + 24|0); + $81 = HEAP32[$80>>2]|0; + $82 = (__gcry_ecc_eddsa_ensure_compact($81,256)|0); + $rc = $82; + } else { + $rc = 69; + } + $83 = $rc; + $84 = ($83|0)!=(0); + if ($84) { + break; + } + } + $idx = 0; + L41: while(1) { + $85 = $idx; + $86 = ($85|0)<(7); + if (!($86)) { + break L7; + } + $87 = $idx; + $88 = ($87|0)==(5); + do { + if (!($88)) { + $89 = $idx; + $90 = (($values) + ($89<<2)|0); + $91 = HEAP32[$90>>2]|0; + $92 = ($91|0)!=(0|0); + if ($92) { + $93 = $idx; + $94 = (($values) + ($93<<2)|0); + $95 = HEAP32[$94>>2]|0; + $96 = ((($95)) + 12|0); + $97 = HEAP32[$96>>2]|0; + $98 = $97 & 4; + $99 = ($98|0)!=(0); + if ($99) { + $100 = $idx; + $101 = (($values) + ($100<<2)|0); + $102 = HEAP32[$101>>2]|0; + $103 = (__gcry_mpi_get_opaque($102,$n)|0); + $raw = $103; + $104 = HEAP32[$n>>2]|0; + $105 = (($104) + 7)|0; + $106 = (($105>>>0) / 8)&-1; + HEAP32[$n>>2] = $106; + $107 = $idx; + $108 = (49897 + ($107)|0); + $109 = HEAP8[$108>>0]|0; + $110 = $109 << 24 >> 24; + $111 = HEAP32[$n>>2]|0; + HEAP32[$vararg_buffer26>>2] = $110; + $vararg_ptr29 = ((($vararg_buffer26)) + 4|0); + HEAP32[$vararg_ptr29>>2] = $111; + (_snprintf($buf,30,49904,$vararg_buffer26)|0); + $112 = $0; + $113 = (_strlen($buf)|0); + __gcry_md_write($112,$buf,$113); + $114 = $0; + $115 = $raw; + $116 = HEAP32[$n>>2]|0; + __gcry_md_write($114,$115,$116); + $117 = $0; + __gcry_md_write($117,49913,1); + break; + } + } + $118 = $idx; + $119 = (($values) + ($118<<2)|0); + $120 = HEAP32[$119>>2]|0; + $121 = (__gcry_mpi_get_buffer($120,0,$rawmpilen,0)|0); + $rawmpi = $121; + $122 = $rawmpi; + $123 = ($122|0)!=(0|0); + if (!($123)) { + break L41; + } + $125 = $idx; + $126 = (49897 + ($125)|0); + $127 = HEAP8[$126>>0]|0; + $128 = $127 << 24 >> 24; + $129 = HEAP32[$rawmpilen>>2]|0; + HEAP32[$vararg_buffer30>>2] = $128; + $vararg_ptr33 = ((($vararg_buffer30)) + 4|0); + HEAP32[$vararg_ptr33>>2] = $129; + (_snprintf($buf,30,49904,$vararg_buffer30)|0); + $130 = $0; + $131 = (_strlen($buf)|0); + __gcry_md_write($130,$buf,$131); + $132 = $0; + $133 = $rawmpi; + $134 = HEAP32[$rawmpilen>>2]|0; + __gcry_md_write($132,$133,$134); + $135 = $0; + __gcry_md_write($135,49913,1); + $136 = $rawmpi; + __gcry_free($136); + } + } while(0); + $137 = $idx; + $138 = (($137) + 1)|0; + $idx = $138; + } + $124 = (_gpg_err_code_from_syserror()|0); + $rc = $124; + } + } + } while(0); + $139 = $curvename; + __gcry_free($139); + $140 = $l1; + __gcry_sexp_release($140); + $idx = 0; + while(1) { + $141 = $idx; + $142 = ($141|0)<(7); + if (!($142)) { + break; + } + $143 = $idx; + $144 = (($values) + ($143<<2)|0); + $145 = HEAP32[$144>>2]|0; + __gcry_mpi_release($145); + $146 = $idx; + $147 = (($146) + 1)|0; + $idx = $147; + } + $148 = $rc; + STACKTOP = sp;return ($148|0); +} +function __gcry_hash_selftest_check_one($algo,$datamode,$data,$datalen,$expect,$expectlen) { + $algo = $algo|0; + $datamode = $datamode|0; + $data = $data|0; + $datalen = $datalen|0; + $expect = $expect|0; + $expectlen = $expectlen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aaa = 0, $digest = 0, $err = 0; + var $hd = 0, $i = 0, $result = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 1056|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $hd = sp + 8|0; + $aaa = sp + 48|0; + $1 = $algo; + $2 = $datamode; + $3 = $data; + $4 = $datalen; + $5 = $expect; + $6 = $expectlen; + $result = 0; + $err = 0; + $7 = $1; + $8 = (__gcry_md_get_algo_dlen($7)|0); + $9 = $6; + $10 = ($8|0)!=($9|0); + if ($10) { + $0 = 49915; + $36 = $0; + STACKTOP = sp;return ($36|0); + } + $11 = $1; + $12 = (__gcry_md_open($hd,$11,0)|0); + $err = $12; + $13 = $err; + $14 = ($13|0)!=(0); + if ($14) { + $0 = 49956; + $36 = $0; + STACKTOP = sp;return ($36|0); + } + $15 = $2; + L9: do { + switch ($15|0) { + case 0: { + $16 = HEAP32[$hd>>2]|0; + $17 = $3; + $18 = $4; + __gcry_md_write($16,$17,$18); + break; + } + case 1: { + _memset(($aaa|0),97,1000)|0; + $i = 0; + while(1) { + $19 = $i; + $20 = ($19|0)<(1000); + if (!($20)) { + break L9; + } + $21 = HEAP32[$hd>>2]|0; + __gcry_md_write($21,$aaa,1000); + $22 = $i; + $23 = (($22) + 1)|0; + $i = $23; + } + break; + } + default: { + $result = 49976; + } + } + } while(0); + $24 = $result; + $25 = ($24|0)!=(0|0); + if (!($25)) { + $26 = HEAP32[$hd>>2]|0; + $27 = $1; + $28 = (__gcry_md_read($26,$27)|0); + $digest = $28; + $29 = $digest; + $30 = $5; + $31 = $6; + $32 = (_memcmp($29,$30,$31)|0); + $33 = ($32|0)!=(0); + if ($33) { + $result = 49993; + } + } + $34 = HEAP32[$hd>>2]|0; + __gcry_md_close($34); + $35 = $result; + $0 = $35; + $36 = $0; + STACKTOP = sp;return ($36|0); +} +function __gcry_md_block_write($context,$inbuf_arg,$inlen) { + $context = $context|0; + $inbuf_arg = $inbuf_arg|0; + $inlen = $inlen|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; + var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; + var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $blocksize = 0; + var $hd = 0, $inblocks = 0, $inbuf = 0, $stack_burn = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $inbuf_arg; + $2 = $inlen; + $3 = $1; + $inbuf = $3; + $4 = $0; + $hd = $4; + $stack_burn = 0; + $5 = $hd; + $6 = ((($5)) + 148|0); + $7 = HEAP32[$6>>2]|0; + $blocksize = $7; + $8 = $blocksize; + $9 = (128)<($8>>>0); + if ($9) { + __gcry_bug(50009,112,50023); + // unreachable; + } + $10 = $hd; + $11 = ((($10)) + 152|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)!=(0|0); + if (!($13)) { + STACKTOP = sp;return; + } + $14 = $hd; + $15 = ((($14)) + 144|0); + $16 = HEAP32[$15>>2]|0; + $17 = $blocksize; + $18 = ($16|0)==($17|0); + if ($18) { + $19 = $hd; + $20 = ((($19)) + 152|0); + $21 = HEAP32[$20>>2]|0; + $22 = $hd; + $23 = $hd; + $24 = (FUNCTION_TABLE_iiii[$21 & 127]($22,$23,1)|0); + $stack_burn = $24; + $25 = $stack_burn; + ___gcry_burn_stack($25); + ___gcry_burn_stack_dummy(); + $stack_burn = 0; + $26 = $hd; + $27 = ((($26)) + 144|0); + HEAP32[$27>>2] = 0; + $28 = $hd; + $29 = ((($28)) + 128|0); + $30 = $29; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = (_i64Add(($32|0),($35|0),1,0)|0); + $37 = tempRet0; + $38 = $29; + $39 = $38; + HEAP32[$39>>2] = $36; + $40 = (($38) + 4)|0; + $41 = $40; + HEAP32[$41>>2] = $37; + $42 = ($36|0)!=(0); + $43 = ($37|0)!=(0); + $44 = $42 | $43; + if (!($44)) { + $45 = $hd; + $46 = ((($45)) + 136|0); + $47 = $46; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + $50 = (($47) + 4)|0; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = (_i64Add(($49|0),($52|0),1,0)|0); + $54 = tempRet0; + $55 = $46; + $56 = $55; + HEAP32[$56>>2] = $53; + $57 = (($55) + 4)|0; + $58 = $57; + HEAP32[$58>>2] = $54; + } + } + $59 = $inbuf; + $60 = ($59|0)!=(0|0); + if (!($60)) { + STACKTOP = sp;return; + } + $61 = $hd; + $62 = ((($61)) + 144|0); + $63 = HEAP32[$62>>2]|0; + $64 = ($63|0)!=(0); + if ($64) { + while(1) { + $65 = $2; + $66 = ($65|0)!=(0); + if (!($66)) { + break; + } + $67 = $hd; + $68 = ((($67)) + 144|0); + $69 = HEAP32[$68>>2]|0; + $70 = $blocksize; + $71 = ($69>>>0)<($70>>>0); + if (!($71)) { + break; + } + $72 = $inbuf; + $73 = ((($72)) + 1|0); + $inbuf = $73; + $74 = HEAP8[$72>>0]|0; + $75 = $hd; + $76 = ((($75)) + 144|0); + $77 = HEAP32[$76>>2]|0; + $78 = (($77) + 1)|0; + HEAP32[$76>>2] = $78; + $79 = $hd; + $80 = (($79) + ($77)|0); + HEAP8[$80>>0] = $74; + $81 = $2; + $82 = (($81) + -1)|0; + $2 = $82; + } + $83 = $hd; + __gcry_md_block_write($83,0,0); + $84 = $2; + $85 = ($84|0)!=(0); + if (!($85)) { + STACKTOP = sp;return; + } + } + $86 = $2; + $87 = $blocksize; + $88 = ($86>>>0)>=($87>>>0); + if ($88) { + $89 = $2; + $90 = $blocksize; + $91 = (($89>>>0) / ($90>>>0))&-1; + $inblocks = $91; + $92 = $hd; + $93 = ((($92)) + 152|0); + $94 = HEAP32[$93>>2]|0; + $95 = $hd; + $96 = $inbuf; + $97 = $inblocks; + $98 = (FUNCTION_TABLE_iiii[$94 & 127]($95,$96,$97)|0); + $stack_burn = $98; + $99 = $hd; + $100 = ((($99)) + 144|0); + HEAP32[$100>>2] = 0; + $101 = $hd; + $102 = ((($101)) + 128|0); + $103 = $102; + $104 = $103; + $105 = HEAP32[$104>>2]|0; + $106 = (($103) + 4)|0; + $107 = $106; + $108 = HEAP32[$107>>2]|0; + $109 = $inblocks; + $110 = (_i64Add(($105|0),($108|0),($109|0),0)|0); + $111 = tempRet0; + $112 = $inblocks; + $113 = ($111>>>0)<(0); + $114 = ($110>>>0)<($112>>>0); + $115 = ($111|0)==(0); + $116 = $115 & $114; + $117 = $113 | $116; + $118 = $117&1; + $119 = ($118|0)<(0); + $120 = $119 << 31 >> 31; + $121 = $hd; + $122 = ((($121)) + 136|0); + $123 = $122; + $124 = $123; + $125 = HEAP32[$124>>2]|0; + $126 = (($123) + 4)|0; + $127 = $126; + $128 = HEAP32[$127>>2]|0; + $129 = (_i64Add(($125|0),($128|0),($118|0),($120|0))|0); + $130 = tempRet0; + $131 = $122; + $132 = $131; + HEAP32[$132>>2] = $129; + $133 = (($131) + 4)|0; + $134 = $133; + HEAP32[$134>>2] = $130; + $135 = $inblocks; + $136 = $hd; + $137 = ((($136)) + 128|0); + $138 = $137; + $139 = $138; + $140 = HEAP32[$139>>2]|0; + $141 = (($138) + 4)|0; + $142 = $141; + $143 = HEAP32[$142>>2]|0; + $144 = (_i64Add(($140|0),($143|0),($135|0),0)|0); + $145 = tempRet0; + $146 = $137; + $147 = $146; + HEAP32[$147>>2] = $144; + $148 = (($146) + 4)|0; + $149 = $148; + HEAP32[$149>>2] = $145; + $150 = $inblocks; + $151 = $blocksize; + $152 = Math_imul($150, $151)|0; + $153 = $2; + $154 = (($153) - ($152))|0; + $2 = $154; + $155 = $inblocks; + $156 = $blocksize; + $157 = Math_imul($155, $156)|0; + $158 = $inbuf; + $159 = (($158) + ($157)|0); + $inbuf = $159; + } + $160 = $stack_burn; + ___gcry_burn_stack($160); + ___gcry_burn_stack_dummy(); + while(1) { + $161 = $2; + $162 = ($161|0)!=(0); + if (!($162)) { + label = 19; + break; + } + $163 = $hd; + $164 = ((($163)) + 144|0); + $165 = HEAP32[$164>>2]|0; + $166 = $blocksize; + $167 = ($165>>>0)<($166>>>0); + if (!($167)) { + label = 19; + break; + } + $168 = $inbuf; + $169 = ((($168)) + 1|0); + $inbuf = $169; + $170 = HEAP8[$168>>0]|0; + $171 = $hd; + $172 = ((($171)) + 144|0); + $173 = HEAP32[$172>>2]|0; + $174 = (($173) + 1)|0; + HEAP32[$172>>2] = $174; + $175 = $hd; + $176 = (($175) + ($173)|0); + HEAP8[$176>>0] = $170; + $177 = $2; + $178 = (($177) + -1)|0; + $2 = $178; + } + if ((label|0) == 19) { + STACKTOP = sp;return; + } +} +function __gcry_poly1305_update($ctx,$m,$bytes) { + $ctx = $ctx|0; + $m = $m|0; + $bytes = $bytes|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $block_size = 0; + var $burn = 0, $state = 0, $want = 0, $want1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $1 = $m; + $2 = $bytes; + $3 = $0; + $4 = (_poly1305_get_state($3)|0); + $state = $4; + $burn = 0; + $5 = $0; + $6 = ((($5)) + 84|0); + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$7>>2]|0; + $block_size = $8; + $9 = $0; + $10 = ((($9)) + 88|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)!=(0); + do { + if ($12) { + $13 = $block_size; + $14 = $0; + $15 = ((($14)) + 88|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($13) - ($16))|0; + $want = $17; + $18 = $want; + $19 = $2; + $20 = ($18>>>0)>($19>>>0); + if ($20) { + $21 = $2; + $want = $21; + } + $22 = $0; + $23 = ((($22)) + 68|0); + $24 = $0; + $25 = ((($24)) + 88|0); + $26 = HEAP32[$25>>2]|0; + $27 = (($23) + ($26)|0); + $28 = $1; + $29 = $want; + _buf_cpy_2136($27,$28,$29); + $30 = $want; + $31 = $2; + $32 = (($31) - ($30))|0; + $2 = $32; + $33 = $want; + $34 = $1; + $35 = (($34) + ($33)|0); + $1 = $35; + $36 = $want; + $37 = $0; + $38 = ((($37)) + 88|0); + $39 = HEAP32[$38>>2]|0; + $40 = (($39) + ($36))|0; + HEAP32[$38>>2] = $40; + $41 = $0; + $42 = ((($41)) + 88|0); + $43 = HEAP32[$42>>2]|0; + $44 = $block_size; + $45 = ($43>>>0)<($44>>>0); + if ($45) { + STACKTOP = sp;return; + } else { + $46 = $0; + $47 = ((($46)) + 84|0); + $48 = HEAP32[$47>>2]|0; + $49 = ((($48)) + 8|0); + $50 = HEAP32[$49>>2]|0; + $51 = $state; + $52 = $0; + $53 = ((($52)) + 68|0); + $54 = $block_size; + $55 = (FUNCTION_TABLE_iiii[$50 & 127]($51,$53,$54)|0); + $burn = $55; + $56 = $0; + $57 = ((($56)) + 88|0); + HEAP32[$57>>2] = 0; + break; + } + } + } while(0); + $58 = $2; + $59 = $block_size; + $60 = ($58>>>0)>=($59>>>0); + if ($60) { + $61 = $2; + $62 = $block_size; + $63 = (($62) - 1)|0; + $64 = $63 ^ -1; + $65 = $61 & $64; + $want1 = $65; + $66 = $0; + $67 = ((($66)) + 84|0); + $68 = HEAP32[$67>>2]|0; + $69 = ((($68)) + 8|0); + $70 = HEAP32[$69>>2]|0; + $71 = $state; + $72 = $1; + $73 = $want1; + $74 = (FUNCTION_TABLE_iiii[$70 & 127]($71,$72,$73)|0); + $burn = $74; + $75 = $want1; + $76 = $1; + $77 = (($76) + ($75)|0); + $1 = $77; + $78 = $want1; + $79 = $2; + $80 = (($79) - ($78))|0; + $2 = $80; + } + $81 = $2; + $82 = ($81|0)!=(0); + if ($82) { + $83 = $0; + $84 = ((($83)) + 68|0); + $85 = $0; + $86 = ((($85)) + 88|0); + $87 = HEAP32[$86>>2]|0; + $88 = (($84) + ($87)|0); + $89 = $1; + $90 = $2; + _buf_cpy_2136($88,$89,$90); + $91 = $2; + $92 = $0; + $93 = ((($92)) + 88|0); + $94 = HEAP32[$93>>2]|0; + $95 = (($94) + ($91))|0; + HEAP32[$93>>2] = $95; + } + $96 = $burn; + $97 = ($96|0)!=(0); + if (!($97)) { + STACKTOP = sp;return; + } + $98 = $burn; + ___gcry_burn_stack($98); + ___gcry_burn_stack_dummy(); + STACKTOP = sp;return; +} +function _poly1305_get_state($ctx) { + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $1 = $0; + $c = $1; + $2 = $c; + $3 = ((($2)) + 3|0); + $c = $3; + $4 = $c; + $5 = $4; + $6 = $5 & 3; + $7 = $c; + $8 = (0 - ($6))|0; + $9 = (($7) + ($8)|0); + $c = $9; + $10 = $c; + STACKTOP = sp;return ($10|0); +} +function _buf_cpy_2136($_dst,$_src,$len) { + $_dst = $_dst|0; + $_src = $_src|0; + $len = $len|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dst = 0, $ldst = 0, $longmask = 0, $lsrc = 0, $src = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_dst; + $1 = $_src; + $2 = $len; + $3 = $0; + $dst = $3; + $4 = $1; + $src = $4; + $longmask = 3; + $5 = $dst; + $6 = $5; + $7 = $src; + $8 = $7; + $9 = $6 | $8; + $10 = $9 & 3; + $11 = ($10|0)!=(0); + if (!($11)) { + $12 = $dst; + $ldst = $12; + $13 = $src; + $lsrc = $13; + while(1) { + $14 = $2; + $15 = ($14>>>0)>=(4); + if (!($15)) { + break; + } + $16 = $lsrc; + $17 = ((($16)) + 4|0); + $lsrc = $17; + $18 = HEAP32[$16>>2]|0; + $19 = $ldst; + $20 = ((($19)) + 4|0); + $ldst = $20; + HEAP32[$19>>2] = $18; + $21 = $2; + $22 = (($21) - 4)|0; + $2 = $22; + } + $23 = $ldst; + $dst = $23; + $24 = $lsrc; + $src = $24; + } + while(1) { + $25 = $2; + $26 = ($25|0)!=(0); + if (!($26)) { + break; + } + $27 = $src; + $28 = ((($27)) + 1|0); + $src = $28; + $29 = HEAP8[$27>>0]|0; + $30 = $dst; + $31 = ((($30)) + 1|0); + $dst = $31; + HEAP8[$30>>0] = $29; + $32 = $2; + $33 = (($32) + -1)|0; + $2 = $33; + } + STACKTOP = sp;return; +} +function __gcry_poly1305_finish($ctx,$mac) { + $ctx = $ctx|0; + $mac = $mac|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $burn = 0, $state = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $1 = $mac; + $2 = $0; + $3 = (_poly1305_get_state($2)|0); + $state = $3; + $4 = $0; + $5 = ((($4)) + 84|0); + $6 = HEAP32[$5>>2]|0; + $7 = ((($6)) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = $state; + $10 = $0; + $11 = ((($10)) + 68|0); + $12 = $0; + $13 = ((($12)) + 88|0); + $14 = HEAP32[$13>>2]|0; + $15 = $1; + $16 = (FUNCTION_TABLE_iiiii[$8 & 127]($9,$11,$14,$15)|0); + $burn = $16; + $17 = $burn; + ___gcry_burn_stack($17); + ___gcry_burn_stack_dummy(); + STACKTOP = sp;return; +} +function __gcry_poly1305_init($ctx,$key,$keylen) { + $ctx = $ctx|0; + $key = $key|0; + $keylen = $keylen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $8 = 0, $9 = 0, $_vlen = 0; + var $_vptr = 0, $_vptr_long = 0, $_vset = 0, $_vset_long = 0, $features = 0, $keytmp = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp + 8|0; + $keytmp = sp + 48|0; + $_vset_long = sp; + $1 = $ctx; + $2 = $key; + $3 = $keylen; + $4 = (__gcry_get_hw_features()|0); + $features = $4; + $5 = HEAP32[17725]|0; + $6 = ($5|0)!=(0); + if (!($6)) { + HEAP32[17725] = 1; + $7 = (_selftest_2141()|0); + HEAP32[17726] = $7; + $8 = HEAP32[17726]|0; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = HEAP32[17726]|0; + HEAP32[$vararg_buffer>>2] = $10; + __gcry_log_error(50431,$vararg_buffer); + } + } + $11 = $3; + $12 = ($11|0)!=(32); + if ($12) { + $0 = 44; + $78 = $0; + STACKTOP = sp;return ($78|0); + } + $13 = HEAP32[17726]|0; + $14 = ($13|0)!=(0|0); + if ($14) { + $0 = 50; + $78 = $0; + STACKTOP = sp;return ($78|0); + } + $15 = $1; + $16 = ((($15)) + 84|0); + HEAP32[$16>>2] = 12944; + $17 = $2; + _buf_cpy_2136($keytmp,$17,32); + $18 = $1; + _poly1305_init($18,$keytmp); + $_vptr = $keytmp; + $_vlen = 32; + $_vset = 0; + $19 = $_vset; + $20 = $19&255; + $21 = $_vset_long; + $22 = $21; + HEAP32[$22>>2] = $20; + $23 = (($21) + 4)|0; + $24 = $23; + HEAP32[$24>>2] = 0; + while(1) { + $25 = $_vptr; + $26 = $25; + $27 = $26 & 7; + $28 = ($27|0)!=(0); + $29 = $_vlen; + $30 = ($29|0)!=(0); + $31 = $28 ? $30 : 0; + if (!($31)) { + break; + } + $32 = $_vset; + $33 = $_vptr; + HEAP8[$33>>0] = $32; + $34 = $_vptr; + $35 = ((($34)) + 1|0); + $_vptr = $35; + $36 = $_vlen; + $37 = (($36) + -1)|0; + $_vlen = $37; + } + $38 = $_vlen; + $39 = ($38>>>0)<(8); + if (!($39)) { + $40 = $_vset_long; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $43 = (($40) + 4)|0; + $44 = $43; + $45 = HEAP32[$44>>2]|0; + $46 = (___muldi3(($42|0),($45|0),16843009,16843009)|0); + $47 = tempRet0; + $48 = $_vset_long; + $49 = $48; + HEAP32[$49>>2] = $46; + $50 = (($48) + 4)|0; + $51 = $50; + HEAP32[$51>>2] = $47; + while(1) { + $52 = $_vptr; + $_vptr_long = $52; + $53 = $_vset_long; + $54 = $53; + $55 = HEAP32[$54>>2]|0; + $56 = (($53) + 4)|0; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = $_vptr_long; + $60 = $59; + $61 = $60; + HEAP32[$61>>2] = $55; + $62 = (($60) + 4)|0; + $63 = $62; + HEAP32[$63>>2] = $58; + $64 = $_vlen; + $65 = (($64) - 8)|0; + $_vlen = $65; + $66 = $_vptr; + $67 = ((($66)) + 8|0); + $_vptr = $67; + $68 = $_vlen; + $69 = ($68>>>0)>=(8); + if (!($69)) { + break; + } + } + } + while(1) { + $70 = $_vlen; + $71 = ($70|0)!=(0); + if (!($71)) { + break; + } + $72 = $_vset; + $73 = $_vptr; + HEAP8[$73>>0] = $72; + $74 = $_vptr; + $75 = ((($74)) + 1|0); + $_vptr = $75; + $76 = $_vlen; + $77 = (($76) + -1)|0; + $_vlen = $77; + } + $0 = 0; + $78 = $0; + STACKTOP = sp;return ($78|0); +} +function _selftest_2141() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $all_key = 0, $all_msg = 0, $ctx = 0, $i = 0, $j = 0, $mac = 0, $total_ctx = 0, dest = 0; + var label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 512|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $ctx = sp + 100|0; + $total_ctx = sp + 8|0; + $all_key = sp + 472|0; + $all_msg = sp + 216|0; + $mac = sp + 200|0; + dest=$ctx; stop=dest+92|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + dest=$total_ctx; stop=dest+92|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + dest=$mac; stop=dest+16|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); + _poly1305_auth($mac,50044,131,50175); + $1 = (_memcmp(50207,$mac,16)|0); + $2 = ($1|0)!=(0); + if ($2) { + $0 = 50223; + $31 = $0; + STACKTOP = sp;return ($31|0); + } + dest=$mac; stop=dest+16|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); + (__gcry_poly1305_init($ctx,50175,32)|0); + __gcry_poly1305_update($ctx,50044,32); + __gcry_poly1305_update($ctx,(50076),64); + __gcry_poly1305_update($ctx,(50140),16); + __gcry_poly1305_update($ctx,(50156),8); + __gcry_poly1305_update($ctx,(50164),4); + __gcry_poly1305_update($ctx,(50168),2); + __gcry_poly1305_update($ctx,(50170),1); + __gcry_poly1305_update($ctx,(50171),1); + __gcry_poly1305_update($ctx,(50172),1); + __gcry_poly1305_update($ctx,(50173),1); + __gcry_poly1305_update($ctx,(50174),1); + __gcry_poly1305_finish($ctx,$mac); + $3 = (_memcmp(50207,$mac,16)|0); + $4 = ($3|0)!=(0); + if ($4) { + $0 = 50247; + $31 = $0; + STACKTOP = sp;return ($31|0); + } + dest=$mac; stop=dest+16|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); + _poly1305_auth($mac,50271,16,50287); + $5 = (_memcmp(50319,$mac,16)|0); + $6 = ($5|0)!=(0); + if ($6) { + $0 = 50335; + $31 = $0; + STACKTOP = sp;return ($31|0); + } + (__gcry_poly1305_init($total_ctx,50359,32)|0); + $i = 0; + while(1) { + $7 = $i; + $8 = ($7>>>0)<(256); + if (!($8)) { + break; + } + $j = 0; + while(1) { + $9 = $j; + $10 = ($9>>>0)<(32); + if (!($10)) { + break; + } + $11 = $i; + $12 = $11&255; + $13 = $j; + $14 = (($all_key) + ($13)|0); + HEAP8[$14>>0] = $12; + $15 = $j; + $16 = (($15) + 1)|0; + $j = $16; + } + $j = 0; + while(1) { + $17 = $j; + $18 = $i; + $19 = ($17>>>0)<($18>>>0); + if (!($19)) { + break; + } + $20 = $i; + $21 = $20&255; + $22 = $j; + $23 = (($all_msg) + ($22)|0); + HEAP8[$23>>0] = $21; + $24 = $j; + $25 = (($24) + 1)|0; + $j = $25; + } + $26 = $i; + _poly1305_auth($mac,$all_msg,$26,$all_key); + __gcry_poly1305_update($total_ctx,$mac,16); + $27 = $i; + $28 = (($27) + 1)|0; + $i = $28; + } + __gcry_poly1305_finish($total_ctx,$mac); + $29 = (_memcmp(50391,$mac,16)|0); + $30 = ($29|0)!=(0); + if ($30) { + $0 = 50407; + $31 = $0; + STACKTOP = sp;return ($31|0); + } else { + $0 = 0; + $31 = $0; + STACKTOP = sp;return ($31|0); + } + return (0)|0; +} +function _poly1305_auth($mac,$m,$bytes,$key) { + $mac = $mac|0; + $m = $m|0; + $bytes = $bytes|0; + $key = $key|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $_vlen = 0, $_vptr = 0, $_vptr_long = 0, $_vset = 0, $_vset_long = 0, $ctx = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $ctx = sp + 20|0; + $_vset_long = sp; + $0 = $mac; + $1 = $m; + $2 = $bytes; + $3 = $key; + dest=$ctx; stop=dest+92|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $4 = $3; + (__gcry_poly1305_init($ctx,$4,32)|0); + $5 = $1; + $6 = $2; + __gcry_poly1305_update($ctx,$5,$6); + $7 = $0; + __gcry_poly1305_finish($ctx,$7); + $_vptr = $ctx; + $_vlen = 92; + $_vset = 0; + $8 = $_vset; + $9 = $8&255; + $10 = $_vset_long; + $11 = $10; + HEAP32[$11>>2] = $9; + $12 = (($10) + 4)|0; + $13 = $12; + HEAP32[$13>>2] = 0; + while(1) { + $14 = $_vptr; + $15 = $14; + $16 = $15 & 7; + $17 = ($16|0)!=(0); + $18 = $_vlen; + $19 = ($18|0)!=(0); + $20 = $17 ? $19 : 0; + if (!($20)) { + break; + } + $21 = $_vset; + $22 = $_vptr; + HEAP8[$22>>0] = $21; + $23 = $_vptr; + $24 = ((($23)) + 1|0); + $_vptr = $24; + $25 = $_vlen; + $26 = (($25) + -1)|0; + $_vlen = $26; + } + $27 = $_vlen; + $28 = ($27>>>0)<(8); + if (!($28)) { + $29 = $_vset_long; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + $32 = (($29) + 4)|0; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = (___muldi3(($31|0),($34|0),16843009,16843009)|0); + $36 = tempRet0; + $37 = $_vset_long; + $38 = $37; + HEAP32[$38>>2] = $35; + $39 = (($37) + 4)|0; + $40 = $39; + HEAP32[$40>>2] = $36; + while(1) { + $41 = $_vptr; + $_vptr_long = $41; + $42 = $_vset_long; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = $_vptr_long; + $49 = $48; + $50 = $49; + HEAP32[$50>>2] = $44; + $51 = (($49) + 4)|0; + $52 = $51; + HEAP32[$52>>2] = $47; + $53 = $_vlen; + $54 = (($53) - 8)|0; + $_vlen = $54; + $55 = $_vptr; + $56 = ((($55)) + 8|0); + $_vptr = $56; + $57 = $_vlen; + $58 = ($57>>>0)>=(8); + if (!($58)) { + break; + } + } + } + while(1) { + $59 = $_vlen; + $60 = ($59|0)!=(0); + if (!($60)) { + break; + } + $61 = $_vset; + $62 = $_vptr; + HEAP8[$62>>0] = $61; + $63 = $_vptr; + $64 = ((($63)) + 1|0); + $_vptr = $64; + $65 = $_vlen; + $66 = (($65) + -1)|0; + $_vlen = $66; + } + STACKTOP = sp;return; +} +function _poly1305_init_ext_ref32($state,$key) { + $state = $state|0; + $key = $key|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $8 = 0, $9 = 0, $st = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $state; + $1 = $key; + $2 = $0; + $st = $2; + $3 = $1; + $4 = (_buf_get_le32_2147($3)|0); + $5 = $4 & 67108863; + $6 = $st; + HEAP32[$6>>2] = $5; + $7 = $1; + $8 = ((($7)) + 3|0); + $9 = (_buf_get_le32_2147($8)|0); + $10 = $9 >>> 2; + $11 = $10 & 67108611; + $12 = $st; + $13 = ((($12)) + 4|0); + HEAP32[$13>>2] = $11; + $14 = $1; + $15 = ((($14)) + 6|0); + $16 = (_buf_get_le32_2147($15)|0); + $17 = $16 >>> 4; + $18 = $17 & 67092735; + $19 = $st; + $20 = ((($19)) + 8|0); + HEAP32[$20>>2] = $18; + $21 = $1; + $22 = ((($21)) + 9|0); + $23 = (_buf_get_le32_2147($22)|0); + $24 = $23 >>> 6; + $25 = $24 & 66076671; + $26 = $st; + $27 = ((($26)) + 12|0); + HEAP32[$27>>2] = $25; + $28 = $1; + $29 = ((($28)) + 12|0); + $30 = (_buf_get_le32_2147($29)|0); + $31 = $30 >>> 8; + $32 = $31 & 1048575; + $33 = $st; + $34 = ((($33)) + 16|0); + HEAP32[$34>>2] = $32; + $35 = $st; + $36 = ((($35)) + 20|0); + HEAP32[$36>>2] = 0; + $37 = $st; + $38 = ((($37)) + 20|0); + $39 = ((($38)) + 4|0); + HEAP32[$39>>2] = 0; + $40 = $st; + $41 = ((($40)) + 20|0); + $42 = ((($41)) + 8|0); + HEAP32[$42>>2] = 0; + $43 = $st; + $44 = ((($43)) + 20|0); + $45 = ((($44)) + 12|0); + HEAP32[$45>>2] = 0; + $46 = $st; + $47 = ((($46)) + 20|0); + $48 = ((($47)) + 16|0); + HEAP32[$48>>2] = 0; + $49 = $1; + $50 = ((($49)) + 16|0); + $51 = (_buf_get_le32_2147($50)|0); + $52 = $st; + $53 = ((($52)) + 40|0); + HEAP32[$53>>2] = $51; + $54 = $1; + $55 = ((($54)) + 20|0); + $56 = (_buf_get_le32_2147($55)|0); + $57 = $st; + $58 = ((($57)) + 40|0); + $59 = ((($58)) + 4|0); + HEAP32[$59>>2] = $56; + $60 = $1; + $61 = ((($60)) + 24|0); + $62 = (_buf_get_le32_2147($61)|0); + $63 = $st; + $64 = ((($63)) + 40|0); + $65 = ((($64)) + 8|0); + HEAP32[$65>>2] = $62; + $66 = $1; + $67 = ((($66)) + 28|0); + $68 = (_buf_get_le32_2147($67)|0); + $69 = $st; + $70 = ((($69)) + 40|0); + $71 = ((($70)) + 12|0); + HEAP32[$71>>2] = $68; + $72 = $st; + $73 = ((($72)) + 56|0); + HEAP8[$73>>0] = 0; + STACKTOP = sp;return; +} +function _buf_get_le32_2147($_buf) { + $_buf = $_buf|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $in = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_buf; + $1 = $0; + $in = $1; + $2 = $in; + $3 = ((($2)) + 3|0); + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = $5 << 24; + $7 = $in; + $8 = ((($7)) + 2|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = $10 << 16; + $12 = $6 | $11; + $13 = $in; + $14 = ((($13)) + 1|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = $16 << 8; + $18 = $12 | $17; + $19 = $in; + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = $18 | $21; + STACKTOP = sp;return ($22|0); +} +function _poly1305_blocks_ref32($state,$m,$bytes) { + $state = $state|0; + $m = $m|0; + $bytes = $bytes|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0, $d0 = 0, $d1 = 0, $d2 = 0, $d3 = 0, $d4 = 0, $h0 = 0, $h1 = 0, $h2 = 0, $h3 = 0, $h4 = 0, $hibit = 0; + var $r0 = 0, $r1 = 0, $r2 = 0, $r3 = 0, $r4 = 0, $s1 = 0, $s2 = 0, $s3 = 0, $s4 = 0, $st = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $d0 = sp + 32|0; + $d1 = sp + 24|0; + $d2 = sp + 16|0; + $d3 = sp + 8|0; + $d4 = sp; + $0 = $state; + $1 = $m; + $2 = $bytes; + $3 = $0; + $st = $3; + $4 = $st; + $5 = ((($4)) + 56|0); + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = ($7|0)!=(0); + $9 = $8 ? 0 : 16777216; + $hibit = $9; + $10 = $st; + $11 = HEAP32[$10>>2]|0; + $r0 = $11; + $12 = $st; + $13 = ((($12)) + 4|0); + $14 = HEAP32[$13>>2]|0; + $r1 = $14; + $15 = $st; + $16 = ((($15)) + 8|0); + $17 = HEAP32[$16>>2]|0; + $r2 = $17; + $18 = $st; + $19 = ((($18)) + 12|0); + $20 = HEAP32[$19>>2]|0; + $r3 = $20; + $21 = $st; + $22 = ((($21)) + 16|0); + $23 = HEAP32[$22>>2]|0; + $r4 = $23; + $24 = $r1; + $25 = ($24*5)|0; + $s1 = $25; + $26 = $r2; + $27 = ($26*5)|0; + $s2 = $27; + $28 = $r3; + $29 = ($28*5)|0; + $s3 = $29; + $30 = $r4; + $31 = ($30*5)|0; + $s4 = $31; + $32 = $st; + $33 = ((($32)) + 20|0); + $34 = HEAP32[$33>>2]|0; + $h0 = $34; + $35 = $st; + $36 = ((($35)) + 20|0); + $37 = ((($36)) + 4|0); + $38 = HEAP32[$37>>2]|0; + $h1 = $38; + $39 = $st; + $40 = ((($39)) + 20|0); + $41 = ((($40)) + 8|0); + $42 = HEAP32[$41>>2]|0; + $h2 = $42; + $43 = $st; + $44 = ((($43)) + 20|0); + $45 = ((($44)) + 12|0); + $46 = HEAP32[$45>>2]|0; + $h3 = $46; + $47 = $st; + $48 = ((($47)) + 20|0); + $49 = ((($48)) + 16|0); + $50 = HEAP32[$49>>2]|0; + $h4 = $50; + while(1) { + $51 = $2; + $52 = ($51>>>0)>=(16); + if (!($52)) { + break; + } + $53 = $1; + $54 = (_buf_get_le32_2147($53)|0); + $55 = $54 & 67108863; + $56 = $h0; + $57 = (($56) + ($55))|0; + $h0 = $57; + $58 = $1; + $59 = ((($58)) + 3|0); + $60 = (_buf_get_le32_2147($59)|0); + $61 = $60 >>> 2; + $62 = $61 & 67108863; + $63 = $h1; + $64 = (($63) + ($62))|0; + $h1 = $64; + $65 = $1; + $66 = ((($65)) + 6|0); + $67 = (_buf_get_le32_2147($66)|0); + $68 = $67 >>> 4; + $69 = $68 & 67108863; + $70 = $h2; + $71 = (($70) + ($69))|0; + $h2 = $71; + $72 = $1; + $73 = ((($72)) + 9|0); + $74 = (_buf_get_le32_2147($73)|0); + $75 = $74 >>> 6; + $76 = $75 & 67108863; + $77 = $h3; + $78 = (($77) + ($76))|0; + $h3 = $78; + $79 = $1; + $80 = ((($79)) + 12|0); + $81 = (_buf_get_le32_2147($80)|0); + $82 = $81 >>> 8; + $83 = $hibit; + $84 = $82 | $83; + $85 = $h4; + $86 = (($85) + ($84))|0; + $h4 = $86; + $87 = $h0; + $88 = $r0; + $89 = (___muldi3(($87|0),0,($88|0),0)|0); + $90 = tempRet0; + $91 = $h1; + $92 = $s4; + $93 = (___muldi3(($91|0),0,($92|0),0)|0); + $94 = tempRet0; + $95 = (_i64Add(($89|0),($90|0),($93|0),($94|0))|0); + $96 = tempRet0; + $97 = $h2; + $98 = $s3; + $99 = (___muldi3(($97|0),0,($98|0),0)|0); + $100 = tempRet0; + $101 = (_i64Add(($95|0),($96|0),($99|0),($100|0))|0); + $102 = tempRet0; + $103 = $h3; + $104 = $s2; + $105 = (___muldi3(($103|0),0,($104|0),0)|0); + $106 = tempRet0; + $107 = (_i64Add(($101|0),($102|0),($105|0),($106|0))|0); + $108 = tempRet0; + $109 = $h4; + $110 = $s1; + $111 = (___muldi3(($109|0),0,($110|0),0)|0); + $112 = tempRet0; + $113 = (_i64Add(($107|0),($108|0),($111|0),($112|0))|0); + $114 = tempRet0; + $115 = $d0; + $116 = $115; + HEAP32[$116>>2] = $113; + $117 = (($115) + 4)|0; + $118 = $117; + HEAP32[$118>>2] = $114; + $119 = $h0; + $120 = $r1; + $121 = (___muldi3(($119|0),0,($120|0),0)|0); + $122 = tempRet0; + $123 = $h1; + $124 = $r0; + $125 = (___muldi3(($123|0),0,($124|0),0)|0); + $126 = tempRet0; + $127 = (_i64Add(($121|0),($122|0),($125|0),($126|0))|0); + $128 = tempRet0; + $129 = $h2; + $130 = $s4; + $131 = (___muldi3(($129|0),0,($130|0),0)|0); + $132 = tempRet0; + $133 = (_i64Add(($127|0),($128|0),($131|0),($132|0))|0); + $134 = tempRet0; + $135 = $h3; + $136 = $s3; + $137 = (___muldi3(($135|0),0,($136|0),0)|0); + $138 = tempRet0; + $139 = (_i64Add(($133|0),($134|0),($137|0),($138|0))|0); + $140 = tempRet0; + $141 = $h4; + $142 = $s2; + $143 = (___muldi3(($141|0),0,($142|0),0)|0); + $144 = tempRet0; + $145 = (_i64Add(($139|0),($140|0),($143|0),($144|0))|0); + $146 = tempRet0; + $147 = $d1; + $148 = $147; + HEAP32[$148>>2] = $145; + $149 = (($147) + 4)|0; + $150 = $149; + HEAP32[$150>>2] = $146; + $151 = $h0; + $152 = $r2; + $153 = (___muldi3(($151|0),0,($152|0),0)|0); + $154 = tempRet0; + $155 = $h1; + $156 = $r1; + $157 = (___muldi3(($155|0),0,($156|0),0)|0); + $158 = tempRet0; + $159 = (_i64Add(($153|0),($154|0),($157|0),($158|0))|0); + $160 = tempRet0; + $161 = $h2; + $162 = $r0; + $163 = (___muldi3(($161|0),0,($162|0),0)|0); + $164 = tempRet0; + $165 = (_i64Add(($159|0),($160|0),($163|0),($164|0))|0); + $166 = tempRet0; + $167 = $h3; + $168 = $s4; + $169 = (___muldi3(($167|0),0,($168|0),0)|0); + $170 = tempRet0; + $171 = (_i64Add(($165|0),($166|0),($169|0),($170|0))|0); + $172 = tempRet0; + $173 = $h4; + $174 = $s3; + $175 = (___muldi3(($173|0),0,($174|0),0)|0); + $176 = tempRet0; + $177 = (_i64Add(($171|0),($172|0),($175|0),($176|0))|0); + $178 = tempRet0; + $179 = $d2; + $180 = $179; + HEAP32[$180>>2] = $177; + $181 = (($179) + 4)|0; + $182 = $181; + HEAP32[$182>>2] = $178; + $183 = $h0; + $184 = $r3; + $185 = (___muldi3(($183|0),0,($184|0),0)|0); + $186 = tempRet0; + $187 = $h1; + $188 = $r2; + $189 = (___muldi3(($187|0),0,($188|0),0)|0); + $190 = tempRet0; + $191 = (_i64Add(($185|0),($186|0),($189|0),($190|0))|0); + $192 = tempRet0; + $193 = $h2; + $194 = $r1; + $195 = (___muldi3(($193|0),0,($194|0),0)|0); + $196 = tempRet0; + $197 = (_i64Add(($191|0),($192|0),($195|0),($196|0))|0); + $198 = tempRet0; + $199 = $h3; + $200 = $r0; + $201 = (___muldi3(($199|0),0,($200|0),0)|0); + $202 = tempRet0; + $203 = (_i64Add(($197|0),($198|0),($201|0),($202|0))|0); + $204 = tempRet0; + $205 = $h4; + $206 = $s4; + $207 = (___muldi3(($205|0),0,($206|0),0)|0); + $208 = tempRet0; + $209 = (_i64Add(($203|0),($204|0),($207|0),($208|0))|0); + $210 = tempRet0; + $211 = $d3; + $212 = $211; + HEAP32[$212>>2] = $209; + $213 = (($211) + 4)|0; + $214 = $213; + HEAP32[$214>>2] = $210; + $215 = $h0; + $216 = $r4; + $217 = (___muldi3(($215|0),0,($216|0),0)|0); + $218 = tempRet0; + $219 = $h1; + $220 = $r3; + $221 = (___muldi3(($219|0),0,($220|0),0)|0); + $222 = tempRet0; + $223 = (_i64Add(($217|0),($218|0),($221|0),($222|0))|0); + $224 = tempRet0; + $225 = $h2; + $226 = $r2; + $227 = (___muldi3(($225|0),0,($226|0),0)|0); + $228 = tempRet0; + $229 = (_i64Add(($223|0),($224|0),($227|0),($228|0))|0); + $230 = tempRet0; + $231 = $h3; + $232 = $r1; + $233 = (___muldi3(($231|0),0,($232|0),0)|0); + $234 = tempRet0; + $235 = (_i64Add(($229|0),($230|0),($233|0),($234|0))|0); + $236 = tempRet0; + $237 = $h4; + $238 = $r0; + $239 = (___muldi3(($237|0),0,($238|0),0)|0); + $240 = tempRet0; + $241 = (_i64Add(($235|0),($236|0),($239|0),($240|0))|0); + $242 = tempRet0; + $243 = $d4; + $244 = $243; + HEAP32[$244>>2] = $241; + $245 = (($243) + 4)|0; + $246 = $245; + HEAP32[$246>>2] = $242; + $247 = $d0; + $248 = $247; + $249 = HEAP32[$248>>2]|0; + $250 = (($247) + 4)|0; + $251 = $250; + $252 = HEAP32[$251>>2]|0; + $253 = (_bitshift64Lshr(($249|0),($252|0),26)|0); + $254 = tempRet0; + $c = $253; + $255 = $d0; + $256 = $255; + $257 = HEAP32[$256>>2]|0; + $258 = (($255) + 4)|0; + $259 = $258; + $260 = HEAP32[$259>>2]|0; + $261 = $257 & 67108863; + $h0 = $261; + $262 = $c; + $263 = $d1; + $264 = $263; + $265 = HEAP32[$264>>2]|0; + $266 = (($263) + 4)|0; + $267 = $266; + $268 = HEAP32[$267>>2]|0; + $269 = (_i64Add(($265|0),($268|0),($262|0),0)|0); + $270 = tempRet0; + $271 = $d1; + $272 = $271; + HEAP32[$272>>2] = $269; + $273 = (($271) + 4)|0; + $274 = $273; + HEAP32[$274>>2] = $270; + $275 = $d1; + $276 = $275; + $277 = HEAP32[$276>>2]|0; + $278 = (($275) + 4)|0; + $279 = $278; + $280 = HEAP32[$279>>2]|0; + $281 = (_bitshift64Lshr(($277|0),($280|0),26)|0); + $282 = tempRet0; + $c = $281; + $283 = $d1; + $284 = $283; + $285 = HEAP32[$284>>2]|0; + $286 = (($283) + 4)|0; + $287 = $286; + $288 = HEAP32[$287>>2]|0; + $289 = $285 & 67108863; + $h1 = $289; + $290 = $c; + $291 = $d2; + $292 = $291; + $293 = HEAP32[$292>>2]|0; + $294 = (($291) + 4)|0; + $295 = $294; + $296 = HEAP32[$295>>2]|0; + $297 = (_i64Add(($293|0),($296|0),($290|0),0)|0); + $298 = tempRet0; + $299 = $d2; + $300 = $299; + HEAP32[$300>>2] = $297; + $301 = (($299) + 4)|0; + $302 = $301; + HEAP32[$302>>2] = $298; + $303 = $d2; + $304 = $303; + $305 = HEAP32[$304>>2]|0; + $306 = (($303) + 4)|0; + $307 = $306; + $308 = HEAP32[$307>>2]|0; + $309 = (_bitshift64Lshr(($305|0),($308|0),26)|0); + $310 = tempRet0; + $c = $309; + $311 = $d2; + $312 = $311; + $313 = HEAP32[$312>>2]|0; + $314 = (($311) + 4)|0; + $315 = $314; + $316 = HEAP32[$315>>2]|0; + $317 = $313 & 67108863; + $h2 = $317; + $318 = $c; + $319 = $d3; + $320 = $319; + $321 = HEAP32[$320>>2]|0; + $322 = (($319) + 4)|0; + $323 = $322; + $324 = HEAP32[$323>>2]|0; + $325 = (_i64Add(($321|0),($324|0),($318|0),0)|0); + $326 = tempRet0; + $327 = $d3; + $328 = $327; + HEAP32[$328>>2] = $325; + $329 = (($327) + 4)|0; + $330 = $329; + HEAP32[$330>>2] = $326; + $331 = $d3; + $332 = $331; + $333 = HEAP32[$332>>2]|0; + $334 = (($331) + 4)|0; + $335 = $334; + $336 = HEAP32[$335>>2]|0; + $337 = (_bitshift64Lshr(($333|0),($336|0),26)|0); + $338 = tempRet0; + $c = $337; + $339 = $d3; + $340 = $339; + $341 = HEAP32[$340>>2]|0; + $342 = (($339) + 4)|0; + $343 = $342; + $344 = HEAP32[$343>>2]|0; + $345 = $341 & 67108863; + $h3 = $345; + $346 = $c; + $347 = $d4; + $348 = $347; + $349 = HEAP32[$348>>2]|0; + $350 = (($347) + 4)|0; + $351 = $350; + $352 = HEAP32[$351>>2]|0; + $353 = (_i64Add(($349|0),($352|0),($346|0),0)|0); + $354 = tempRet0; + $355 = $d4; + $356 = $355; + HEAP32[$356>>2] = $353; + $357 = (($355) + 4)|0; + $358 = $357; + HEAP32[$358>>2] = $354; + $359 = $d4; + $360 = $359; + $361 = HEAP32[$360>>2]|0; + $362 = (($359) + 4)|0; + $363 = $362; + $364 = HEAP32[$363>>2]|0; + $365 = (_bitshift64Lshr(($361|0),($364|0),26)|0); + $366 = tempRet0; + $c = $365; + $367 = $d4; + $368 = $367; + $369 = HEAP32[$368>>2]|0; + $370 = (($367) + 4)|0; + $371 = $370; + $372 = HEAP32[$371>>2]|0; + $373 = $369 & 67108863; + $h4 = $373; + $374 = $c; + $375 = ($374*5)|0; + $376 = $h0; + $377 = (($376) + ($375))|0; + $h0 = $377; + $378 = $h0; + $379 = $378 >>> 26; + $c = $379; + $380 = $h0; + $381 = $380 & 67108863; + $h0 = $381; + $382 = $c; + $383 = $h1; + $384 = (($383) + ($382))|0; + $h1 = $384; + $385 = $1; + $386 = ((($385)) + 16|0); + $1 = $386; + $387 = $2; + $388 = (($387) - 16)|0; + $2 = $388; + } + $389 = $h0; + $390 = $st; + $391 = ((($390)) + 20|0); + HEAP32[$391>>2] = $389; + $392 = $h1; + $393 = $st; + $394 = ((($393)) + 20|0); + $395 = ((($394)) + 4|0); + HEAP32[$395>>2] = $392; + $396 = $h2; + $397 = $st; + $398 = ((($397)) + 20|0); + $399 = ((($398)) + 8|0); + HEAP32[$399>>2] = $396; + $400 = $h3; + $401 = $st; + $402 = ((($401)) + 20|0); + $403 = ((($402)) + 12|0); + HEAP32[$403>>2] = $400; + $404 = $h4; + $405 = $st; + $406 = ((($405)) + 20|0); + $407 = ((($406)) + 16|0); + HEAP32[$407>>2] = $404; + STACKTOP = sp;return 124; +} +function _poly1305_finish_ext_ref32($state,$m,$remaining,$mac) { + $state = $state|0; + $m = $m|0; + $remaining = $remaining|0; + $mac = $mac|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $burn = 0, $c = 0, $f = 0, $final = 0, $g0 = 0, $g1 = 0, $g2 = 0, $g3 = 0; + var $g4 = 0, $h0 = 0, $h1 = 0, $h2 = 0, $h3 = 0, $h4 = 0, $i = 0, $mask = 0, $st = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $f = sp; + $final = sp + 88|0; + $0 = $state; + $1 = $m; + $2 = $remaining; + $3 = $mac; + $4 = $0; + $st = $4; + $burn = 0; + $5 = $2; + $6 = ($5|0)!=(0); + if ($6) { + dest=$final; stop=dest+16|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); + $i = 0; + while(1) { + $7 = $i; + $8 = $2; + $9 = ($7>>>0)<($8>>>0); + if (!($9)) { + break; + } + $10 = $i; + $11 = $1; + $12 = (($11) + ($10)|0); + $13 = HEAP8[$12>>0]|0; + $14 = $i; + $15 = (($final) + ($14)|0); + HEAP8[$15>>0] = $13; + $16 = $i; + $17 = (($16) + 1)|0; + $i = $17; + } + $18 = $2; + $19 = (($final) + ($18)|0); + HEAP8[$19>>0] = 1; + $20 = $st; + $21 = ((($20)) + 56|0); + HEAP8[$21>>0] = 1; + $22 = $st; + $23 = (_poly1305_blocks_ref32($22,$final,16)|0); + $burn = $23; + } + $24 = $st; + $25 = ((($24)) + 20|0); + $26 = HEAP32[$25>>2]|0; + $h0 = $26; + $27 = $st; + $28 = ((($27)) + 20|0); + $29 = ((($28)) + 4|0); + $30 = HEAP32[$29>>2]|0; + $h1 = $30; + $31 = $st; + $32 = ((($31)) + 20|0); + $33 = ((($32)) + 8|0); + $34 = HEAP32[$33>>2]|0; + $h2 = $34; + $35 = $st; + $36 = ((($35)) + 20|0); + $37 = ((($36)) + 12|0); + $38 = HEAP32[$37>>2]|0; + $h3 = $38; + $39 = $st; + $40 = ((($39)) + 20|0); + $41 = ((($40)) + 16|0); + $42 = HEAP32[$41>>2]|0; + $h4 = $42; + $43 = $h1; + $44 = $43 >>> 26; + $c = $44; + $45 = $h1; + $46 = $45 & 67108863; + $h1 = $46; + $47 = $c; + $48 = $h2; + $49 = (($48) + ($47))|0; + $h2 = $49; + $50 = $h2; + $51 = $50 >>> 26; + $c = $51; + $52 = $h2; + $53 = $52 & 67108863; + $h2 = $53; + $54 = $c; + $55 = $h3; + $56 = (($55) + ($54))|0; + $h3 = $56; + $57 = $h3; + $58 = $57 >>> 26; + $c = $58; + $59 = $h3; + $60 = $59 & 67108863; + $h3 = $60; + $61 = $c; + $62 = $h4; + $63 = (($62) + ($61))|0; + $h4 = $63; + $64 = $h4; + $65 = $64 >>> 26; + $c = $65; + $66 = $h4; + $67 = $66 & 67108863; + $h4 = $67; + $68 = $c; + $69 = ($68*5)|0; + $70 = $h0; + $71 = (($70) + ($69))|0; + $h0 = $71; + $72 = $h0; + $73 = $72 >>> 26; + $c = $73; + $74 = $h0; + $75 = $74 & 67108863; + $h0 = $75; + $76 = $c; + $77 = $h1; + $78 = (($77) + ($76))|0; + $h1 = $78; + $79 = $h0; + $80 = (($79) + 5)|0; + $g0 = $80; + $81 = $g0; + $82 = $81 >>> 26; + $c = $82; + $83 = $g0; + $84 = $83 & 67108863; + $g0 = $84; + $85 = $h1; + $86 = $c; + $87 = (($85) + ($86))|0; + $g1 = $87; + $88 = $g1; + $89 = $88 >>> 26; + $c = $89; + $90 = $g1; + $91 = $90 & 67108863; + $g1 = $91; + $92 = $h2; + $93 = $c; + $94 = (($92) + ($93))|0; + $g2 = $94; + $95 = $g2; + $96 = $95 >>> 26; + $c = $96; + $97 = $g2; + $98 = $97 & 67108863; + $g2 = $98; + $99 = $h3; + $100 = $c; + $101 = (($99) + ($100))|0; + $g3 = $101; + $102 = $g3; + $103 = $102 >>> 26; + $c = $103; + $104 = $g3; + $105 = $104 & 67108863; + $g3 = $105; + $106 = $h4; + $107 = $c; + $108 = (($106) + ($107))|0; + $109 = (($108) - 67108864)|0; + $g4 = $109; + $110 = $g4; + $111 = $110 >>> 31; + $112 = (($111) - 1)|0; + $mask = $112; + $113 = $mask; + $114 = $g0; + $115 = $114 & $113; + $g0 = $115; + $116 = $mask; + $117 = $g1; + $118 = $117 & $116; + $g1 = $118; + $119 = $mask; + $120 = $g2; + $121 = $120 & $119; + $g2 = $121; + $122 = $mask; + $123 = $g3; + $124 = $123 & $122; + $g3 = $124; + $125 = $mask; + $126 = $g4; + $127 = $126 & $125; + $g4 = $127; + $128 = $mask; + $129 = $128 ^ -1; + $mask = $129; + $130 = $h0; + $131 = $mask; + $132 = $130 & $131; + $133 = $g0; + $134 = $132 | $133; + $h0 = $134; + $135 = $h1; + $136 = $mask; + $137 = $135 & $136; + $138 = $g1; + $139 = $137 | $138; + $h1 = $139; + $140 = $h2; + $141 = $mask; + $142 = $140 & $141; + $143 = $g2; + $144 = $142 | $143; + $h2 = $144; + $145 = $h3; + $146 = $mask; + $147 = $145 & $146; + $148 = $g3; + $149 = $147 | $148; + $h3 = $149; + $150 = $h4; + $151 = $mask; + $152 = $150 & $151; + $153 = $g4; + $154 = $152 | $153; + $h4 = $154; + $155 = $h0; + $156 = $h1; + $157 = $156 << 26; + $158 = $155 | $157; + $h0 = $158; + $159 = $h1; + $160 = $159 >>> 6; + $161 = $h2; + $162 = $161 << 20; + $163 = $160 | $162; + $h1 = $163; + $164 = $h2; + $165 = $164 >>> 12; + $166 = $h3; + $167 = $166 << 14; + $168 = $165 | $167; + $h2 = $168; + $169 = $h3; + $170 = $169 >>> 18; + $171 = $h4; + $172 = $171 << 8; + $173 = $170 | $172; + $h3 = $173; + $174 = $h0; + $175 = $st; + $176 = ((($175)) + 40|0); + $177 = HEAP32[$176>>2]|0; + $178 = (_i64Add(($174|0),0,($177|0),0)|0); + $179 = tempRet0; + $180 = $f; + $181 = $180; + HEAP32[$181>>2] = $178; + $182 = (($180) + 4)|0; + $183 = $182; + HEAP32[$183>>2] = $179; + $184 = $f; + $185 = $184; + $186 = HEAP32[$185>>2]|0; + $187 = (($184) + 4)|0; + $188 = $187; + $189 = HEAP32[$188>>2]|0; + $h0 = $186; + $190 = $h1; + $191 = $st; + $192 = ((($191)) + 40|0); + $193 = ((($192)) + 4|0); + $194 = HEAP32[$193>>2]|0; + $195 = (_i64Add(($190|0),0,($194|0),0)|0); + $196 = tempRet0; + $197 = $f; + $198 = $197; + $199 = HEAP32[$198>>2]|0; + $200 = (($197) + 4)|0; + $201 = $200; + $202 = HEAP32[$201>>2]|0; + $203 = (_i64Add(($195|0),($196|0),($202|0),0)|0); + $204 = tempRet0; + $205 = $f; + $206 = $205; + HEAP32[$206>>2] = $203; + $207 = (($205) + 4)|0; + $208 = $207; + HEAP32[$208>>2] = $204; + $209 = $f; + $210 = $209; + $211 = HEAP32[$210>>2]|0; + $212 = (($209) + 4)|0; + $213 = $212; + $214 = HEAP32[$213>>2]|0; + $h1 = $211; + $215 = $h2; + $216 = $st; + $217 = ((($216)) + 40|0); + $218 = ((($217)) + 8|0); + $219 = HEAP32[$218>>2]|0; + $220 = (_i64Add(($215|0),0,($219|0),0)|0); + $221 = tempRet0; + $222 = $f; + $223 = $222; + $224 = HEAP32[$223>>2]|0; + $225 = (($222) + 4)|0; + $226 = $225; + $227 = HEAP32[$226>>2]|0; + $228 = (_i64Add(($220|0),($221|0),($227|0),0)|0); + $229 = tempRet0; + $230 = $f; + $231 = $230; + HEAP32[$231>>2] = $228; + $232 = (($230) + 4)|0; + $233 = $232; + HEAP32[$233>>2] = $229; + $234 = $f; + $235 = $234; + $236 = HEAP32[$235>>2]|0; + $237 = (($234) + 4)|0; + $238 = $237; + $239 = HEAP32[$238>>2]|0; + $h2 = $236; + $240 = $h3; + $241 = $st; + $242 = ((($241)) + 40|0); + $243 = ((($242)) + 12|0); + $244 = HEAP32[$243>>2]|0; + $245 = (_i64Add(($240|0),0,($244|0),0)|0); + $246 = tempRet0; + $247 = $f; + $248 = $247; + $249 = HEAP32[$248>>2]|0; + $250 = (($247) + 4)|0; + $251 = $250; + $252 = HEAP32[$251>>2]|0; + $253 = (_i64Add(($245|0),($246|0),($252|0),0)|0); + $254 = tempRet0; + $255 = $f; + $256 = $255; + HEAP32[$256>>2] = $253; + $257 = (($255) + 4)|0; + $258 = $257; + HEAP32[$258>>2] = $254; + $259 = $f; + $260 = $259; + $261 = HEAP32[$260>>2]|0; + $262 = (($259) + 4)|0; + $263 = $262; + $264 = HEAP32[$263>>2]|0; + $h3 = $261; + $265 = $3; + $266 = $h0; + _buf_put_le32_2148($265,$266); + $267 = $3; + $268 = ((($267)) + 4|0); + $269 = $h1; + _buf_put_le32_2148($268,$269); + $270 = $3; + $271 = ((($270)) + 8|0); + $272 = $h2; + _buf_put_le32_2148($271,$272); + $273 = $3; + $274 = ((($273)) + 12|0); + $275 = $h3; + _buf_put_le32_2148($274,$275); + $276 = $st; + $277 = ((($276)) + 20|0); + HEAP32[$277>>2] = 0; + $278 = $st; + $279 = ((($278)) + 20|0); + $280 = ((($279)) + 4|0); + HEAP32[$280>>2] = 0; + $281 = $st; + $282 = ((($281)) + 20|0); + $283 = ((($282)) + 8|0); + HEAP32[$283>>2] = 0; + $284 = $st; + $285 = ((($284)) + 20|0); + $286 = ((($285)) + 12|0); + HEAP32[$286>>2] = 0; + $287 = $st; + $288 = ((($287)) + 20|0); + $289 = ((($288)) + 16|0); + HEAP32[$289>>2] = 0; + $290 = $st; + HEAP32[$290>>2] = 0; + $291 = $st; + $292 = ((($291)) + 4|0); + HEAP32[$292>>2] = 0; + $293 = $st; + $294 = ((($293)) + 8|0); + HEAP32[$294>>2] = 0; + $295 = $st; + $296 = ((($295)) + 12|0); + HEAP32[$296>>2] = 0; + $297 = $st; + $298 = ((($297)) + 16|0); + HEAP32[$298>>2] = 0; + $299 = $st; + $300 = ((($299)) + 40|0); + HEAP32[$300>>2] = 0; + $301 = $st; + $302 = ((($301)) + 40|0); + $303 = ((($302)) + 4|0); + HEAP32[$303>>2] = 0; + $304 = $st; + $305 = ((($304)) + 40|0); + $306 = ((($305)) + 8|0); + HEAP32[$306>>2] = 0; + $307 = $st; + $308 = ((($307)) + 40|0); + $309 = ((($308)) + 12|0); + HEAP32[$309>>2] = 0; + $310 = $burn; + $311 = (100 + ($310))|0; + STACKTOP = sp;return ($311|0); +} +function _buf_put_le32_2148($_buf,$val) { + $_buf = $_buf|0; + $val = $val|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $out = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $_buf; + $1 = $val; + $2 = $0; + $out = $2; + $3 = $1; + $4 = $3 >>> 24; + $5 = $4&255; + $6 = $out; + $7 = ((($6)) + 3|0); + HEAP8[$7>>0] = $5; + $8 = $1; + $9 = $8 >>> 16; + $10 = $9&255; + $11 = $out; + $12 = ((($11)) + 2|0); + HEAP8[$12>>0] = $10; + $13 = $1; + $14 = $13 >>> 8; + $15 = $14&255; + $16 = $out; + $17 = ((($16)) + 1|0); + HEAP8[$17>>0] = $15; + $18 = $1; + $19 = $18&255; + $20 = $out; + HEAP8[$20>>0] = $19; + STACKTOP = sp;return; +} +function _poly1305_init($ctx,$key) { + $ctx = $ctx|0; + $key = $key|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $state = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $ctx; + $1 = $key; + $2 = $0; + $3 = (_poly1305_get_state($2)|0); + $state = $3; + $4 = $0; + $5 = ((($4)) + 88|0); + HEAP32[$5>>2] = 0; + $6 = $0; + $7 = ((($6)) + 84|0); + $8 = HEAP32[$7>>2]|0; + $9 = ((($8)) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = $state; + $12 = $1; + FUNCTION_TABLE_vii[$10 & 63]($11,$12); + STACKTOP = sp;return; +} +function __gcry_rngcsprng_initialize($full) { + $full = $full|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $full; + $1 = $0; + $2 = ($1|0)!=(0); + if ($2) { + _initialize(); + } else { + _initialize_basics(); + } + STACKTOP = sp;return; +} +function _initialize_basics() { + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP32[17727]|0; + $1 = ($0|0)!=(0); + if ($1) { + return; + } + HEAP32[17727] = 1; + return; +} +function _initialize() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + _initialize_basics(); + _lock_pool_2151(); + $0 = HEAP32[17729]|0; + $1 = ($0|0)!=(0|0); + if ($1) { + _unlock_pool(); + return; + } + $2 = HEAP32[17730]|0; + $3 = ($2|0)!=(0); + if ($3) { + $4 = (__gcry_xcalloc_secure(1,664)|0); + $6 = $4; + } else { + $5 = (__gcry_xcalloc(1,664)|0); + $6 = $5; + } + HEAP32[17729] = $6; + $7 = HEAP32[17730]|0; + $8 = ($7|0)!=(0); + if ($8) { + $9 = (__gcry_xcalloc_secure(1,664)|0); + $11 = $9; + } else { + $10 = (__gcry_xcalloc(1,664)|0); + $11 = $10; + } + HEAP32[17731] = $11; + $12 = (_getfnc_gather_random()|0); + HEAP32[17732] = $12; + $13 = HEAP32[17732]|0; + $14 = ($13|0)!=(0|0); + if (!($14)) { + HEAP32[17733] = 1; + HEAP32[17732] = 79; + } + $15 = (_getfnc_fast_random_poll()|0); + HEAP32[17750] = $15; + _unlock_pool(); + return; +} +function _lock_pool_2151() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $err = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = (_gpgrt_lock_lock(12960)|0); + $err = $0; + $1 = $err; + $2 = ($1|0)!=(0); + if ($2) { + $3 = $err; + $4 = (_gpg_strerror($3)|0); + HEAP32[$vararg_buffer>>2] = $4; + __gcry_log_fatal(50462,$vararg_buffer); + // unreachable; + } else { + HEAP32[17728] = 1; + STACKTOP = sp;return; + } +} +function _getfnc_gather_random() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $fnc = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = (_access(52844,4)|0); + $1 = ($0|0)!=(0); + if (!($1)) { + $2 = (_access(52946,4)|0); + $3 = ($2|0)!=(0); + if (!($3)) { + $fnc = 80; + $4 = $fnc; + STACKTOP = sp;return ($4|0); + } + } + $5 = (__gcry_gettext(50499)|0); + __gcry_log_fatal($5,$vararg_buffer); + // unreachable; + return (0)|0; +} +function _gather_faked($add,$origin,$length,$level) { + $add = $add|0; + $origin = $origin|0; + $length = $length|0; + $level = $level|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $buffer = 0, $n = 0, $p = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $add; + $1 = $origin; + $2 = $length; + $3 = $level; + $4 = HEAP32[17734]|0; + $5 = ($4|0)!=(0); + if (!($5)) { + $6 = (__gcry_gettext(50537)|0); + __gcry_log_info($6,$vararg_buffer); + HEAP32[17734] = 1; + $7 = (_time((0|0))|0); + $8 = (_getpid()|0); + $9 = Math_imul($7, $8)|0; + _srand($9); + } + $10 = $2; + $11 = (__gcry_xmalloc($10)|0); + $buffer = $11; + $p = $11; + $12 = $2; + $n = $12; + while(1) { + $13 = $n; + $14 = (($13) + -1)|0; + $n = $14; + $15 = ($13|0)!=(0); + if (!($15)) { + break; + } + $16 = (_rand()|0); + $17 = (+($16|0)); + $18 = 256.0 * $17; + $19 = $18 / 2147483648.0; + $20 = (~~(($19))); + $21 = (1 + ($20))|0; + $22 = (($21) - 1)|0; + $23 = $22&255; + $24 = $p; + $25 = ((($24)) + 1|0); + $p = $25; + HEAP8[$24>>0] = $23; + } + $26 = $buffer; + $27 = $2; + $28 = $1; + _add_randomness($26,$27,$28); + $29 = $buffer; + __gcry_free($29); + STACKTOP = sp;return 0; +} +function _add_randomness($buffer,$length,$origin) { + $buffer = $buffer|0; + $length = $length|0; + $origin = $origin|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $count = 0, $or$cond = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $buffer; + $1 = $length; + $2 = $origin; + $3 = $0; + $p = $3; + $count = 0; + $4 = HEAP32[17728]|0; + $5 = ($4|0)!=(0); + if (!($5)) { + __gcry_assert_failed(50588,50603,1074,50619); + // unreachable; + } + $6 = $1; + $7 = HEAP32[(70972)>>2]|0; + $8 = (($7) + ($6))|0; + HEAP32[(70972)>>2] = $8; + $9 = HEAP32[(70976)>>2]|0; + $10 = (($9) + 1)|0; + HEAP32[(70976)>>2] = $10; + while(1) { + $11 = $1; + $12 = (($11) + -1)|0; + $1 = $12; + $13 = ($11|0)!=(0); + if (!($13)) { + break; + } + $14 = $p; + $15 = ((($14)) + 1|0); + $p = $15; + $16 = HEAP8[$14>>0]|0; + $17 = $16&255; + $18 = HEAP32[17745]|0; + $19 = (($18) + 1)|0; + HEAP32[17745] = $19; + $20 = HEAP32[17729]|0; + $21 = (($20) + ($18)|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = $23 ^ $17; + $25 = $24&255; + HEAP8[$21>>0] = $25; + $26 = $count; + $27 = (($26) + 1)|0; + $count = $27; + $28 = HEAP32[17745]|0; + $29 = ($28>>>0)>=(600); + if (!($29)) { + continue; + } + $30 = $2; + $31 = ($30>>>0)<(3); + $32 = HEAP32[17746]|0; + $33 = ($32|0)!=(0); + $or$cond = $31 | $33; + if (!($or$cond)) { + $34 = $count; + $35 = HEAP32[17747]|0; + $36 = (($35) + ($34))|0; + HEAP32[17747] = $36; + $count = 0; + $37 = HEAP32[17747]|0; + $38 = ($37>>>0)>=(600); + if ($38) { + HEAP32[17746] = 1; + } + } + HEAP32[17745] = 0; + $39 = HEAP32[17729]|0; + _mix_pool($39); + $40 = HEAP32[17735]|0; + $41 = (($40) + 1)|0; + HEAP32[17735] = $41; + $42 = $1; + $43 = ($42|0)!=(0); + $44 = $43 ^ 1; + $45 = $44&1; + HEAP32[17749] = $45; + } + STACKTOP = sp;return; +} +function _mix_pool($pool) { + $pool = $pool|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $8 = 0, $9 = 0, $hashbuf = 0, $i = 0, $md = 0; + var $n = 0, $p = 0, $pend = 0, $pp = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 224|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $md = sp; + $0 = $pool; + $1 = $0; + $2 = ((($1)) + 600|0); + $hashbuf = $2; + $3 = HEAP32[17728]|0; + $4 = ($3|0)!=(0); + if (!($4)) { + __gcry_assert_failed(50588,50603,615,50634); + // unreachable; + } + __gcry_rmd160_init($md); + $5 = $0; + $6 = ((($5)) + 600|0); + $pend = $6; + $7 = $hashbuf; + $8 = $pend; + $9 = ((($8)) + -20|0); + dest=$7; src=$9; stop=dest+20|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $10 = $hashbuf; + $11 = ((($10)) + 20|0); + $12 = $0; + dest=$11; src=$12; stop=dest+44|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $13 = $hashbuf; + __gcry_rmd160_mixblock($md,$13); + $14 = $0; + $15 = $hashbuf; + dest=$14; src=$15; stop=dest+20|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $16 = HEAP32[17748]|0; + $17 = ($16|0)!=(0); + L4: do { + if ($17) { + $18 = $0; + $19 = HEAP32[17729]|0; + $20 = ($18|0)==($19|0); + if ($20) { + $i = 0; + while(1) { + $21 = $i; + $22 = ($21|0)<(20); + if (!($22)) { + break L4; + } + $23 = $i; + $24 = (76522 + ($23)|0); + $25 = HEAP8[$24>>0]|0; + $26 = $25&255; + $27 = $i; + $28 = $0; + $29 = (($28) + ($27)|0); + $30 = HEAP8[$29>>0]|0; + $31 = $30&255; + $32 = $31 ^ $26; + $33 = $32&255; + HEAP8[$29>>0] = $33; + $34 = $i; + $35 = (($34) + 1)|0; + $i = $35; + } + } + } + } while(0); + $36 = $0; + $p = $36; + $n = 1; + while(1) { + $37 = $n; + $38 = ($37|0)<(30); + if (!($38)) { + break; + } + $39 = $hashbuf; + $40 = $p; + dest=$39; src=$40; stop=dest+20|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $41 = $p; + $42 = ((($41)) + 20|0); + $p = $42; + $43 = $p; + $44 = ((($43)) + 20|0); + $45 = ((($44)) + 64|0); + $46 = $pend; + $47 = ($45>>>0)<($46>>>0); + L14: do { + if ($47) { + $48 = $hashbuf; + $49 = ((($48)) + 20|0); + $50 = $p; + $51 = ((($50)) + 20|0); + dest=$49; src=$51; stop=dest+44|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + } else { + $52 = $p; + $53 = ((($52)) + 20|0); + $pp = $53; + $i = 20; + while(1) { + $54 = $i; + $55 = ($54|0)<(64); + if (!($55)) { + break L14; + } + $56 = $pp; + $57 = $pend; + $58 = ($56>>>0)>=($57>>>0); + if ($58) { + $59 = $0; + $pp = $59; + } + $60 = $pp; + $61 = ((($60)) + 1|0); + $pp = $61; + $62 = HEAP8[$60>>0]|0; + $63 = $i; + $64 = $hashbuf; + $65 = (($64) + ($63)|0); + HEAP8[$65>>0] = $62; + $66 = $i; + $67 = (($66) + 1)|0; + $i = $67; + } + } + } while(0); + $68 = $hashbuf; + __gcry_rmd160_mixblock($md,$68); + $69 = $p; + $70 = $hashbuf; + dest=$69; src=$70; stop=dest+20|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $71 = $n; + $72 = (($71) + 1)|0; + $n = $72; + } + $73 = $0; + $74 = HEAP32[17729]|0; + $75 = ($73|0)==($74|0); + if (!($75)) { + ___gcry_burn_stack(384); + ___gcry_burn_stack_dummy(); + STACKTOP = sp;return; + } + $76 = $0; + __gcry_rmd160_hash_buffer(76522,$76,600); + HEAP32[17748] = 1; + ___gcry_burn_stack(384); + ___gcry_burn_stack_dummy(); + STACKTOP = sp;return; +} +function _getfnc_fast_random_poll() { + var label = 0, sp = 0; + sp = STACKTOP; + return (0|0); +} +function _unlock_pool() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $err = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + HEAP32[17728] = 0; + $0 = (_gpgrt_lock_unlock(12960)|0); + $err = $0; + $1 = $err; + $2 = ($1|0)!=(0); + if ($2) { + $3 = $err; + $4 = (_gpg_strerror($3)|0); + HEAP32[$vararg_buffer>>2] = $4; + __gcry_log_fatal(50643,$vararg_buffer); + // unreachable; + } else { + STACKTOP = sp;return; + } +} +function __gcry_rngcsprng_close_fds() { + var label = 0, sp = 0; + sp = STACKTOP; + _lock_pool_2151(); + (__gcry_rndlinux_gather_random(0,0,0,0)|0); + HEAP32[17746] = 0; + _unlock_pool(); + return; +} +function __gcry_rngcsprng_dump_stats() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0; + var $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = HEAP32[17735]|0; + $1 = HEAP32[(70948)>>2]|0; + $2 = HEAP32[(70952)>>2]|0; + $3 = HEAP32[(70976)>>2]|0; + $4 = HEAP32[(70972)>>2]|0; + $5 = HEAP32[(70944)>>2]|0; + $6 = HEAP32[(70960)>>2]|0; + $7 = HEAP32[(70956)>>2]|0; + $8 = HEAP32[(70968)>>2]|0; + $9 = HEAP32[(70964)>>2]|0; + $10 = (__gcry_rndhw_failed_p()|0); + $11 = ($10|0)!=(0); + $12 = $11 ? 50680 : 76543; + HEAP32[$vararg_buffer>>2] = 600; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $0; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $1; + $vararg_ptr3 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr3>>2] = $2; + $vararg_ptr4 = ((($vararg_buffer)) + 16|0); + HEAP32[$vararg_ptr4>>2] = $3; + $vararg_ptr5 = ((($vararg_buffer)) + 20|0); + HEAP32[$vararg_ptr5>>2] = $4; + $vararg_ptr6 = ((($vararg_buffer)) + 24|0); + HEAP32[$vararg_ptr6>>2] = $5; + $vararg_ptr7 = ((($vararg_buffer)) + 28|0); + HEAP32[$vararg_ptr7>>2] = $6; + $vararg_ptr8 = ((($vararg_buffer)) + 32|0); + HEAP32[$vararg_ptr8>>2] = $7; + $vararg_ptr9 = ((($vararg_buffer)) + 36|0); + HEAP32[$vararg_ptr9>>2] = $8; + $vararg_ptr10 = ((($vararg_buffer)) + 40|0); + HEAP32[$vararg_ptr10>>2] = $9; + $vararg_ptr11 = ((($vararg_buffer)) + 44|0); + HEAP32[$vararg_ptr11>>2] = $12; + __gcry_log_info(50696,$vararg_buffer); + STACKTOP = sp;return; +} +function __gcry_rngcsprng_secure_alloc() { + var label = 0, sp = 0; + sp = STACKTOP; + HEAP32[17730] = 1; + return; +} +function __gcry_rngcsprng_enable_quick_gen() { + var label = 0, sp = 0; + sp = STACKTOP; + HEAP32[17751] = 1; + return; +} +function __gcry_rngcsprng_set_daemon_socket($socketname) { + $socketname = $socketname|0; + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $socketname; + STACKTOP = sp;return; +} +function __gcry_rngcsprng_use_daemon($onoff) { + $onoff = $onoff|0; + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $onoff; + STACKTOP = sp;return 0; +} +function __gcry_rngcsprng_is_faked() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + _initialize(); + $0 = HEAP32[17733]|0; + $1 = ($0|0)!=(0); + $2 = HEAP32[17751]|0; + $3 = ($2|0)!=(0); + $4 = $1 ? 1 : $3; + $5 = $4&1; + return ($5|0); +} +function __gcry_rngcsprng_randomize($buffer,$length,$level) { + $buffer = $buffer|0; + $length = $length|0; + $level = $level|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, $or$cond = 0, $p = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $buffer; + $1 = $length; + $2 = $level; + _initialize(); + $3 = HEAP32[17751]|0; + $4 = ($3|0)!=(0); + $5 = $2; + $6 = ($5>>>0)>(1); + $or$cond = $4 & $6; + if ($or$cond) { + $2 = 1; + } + $7 = $2; + $8 = $7 & 3; + $2 = $8; + _lock_pool_2151(); + $9 = $2; + $10 = ($9>>>0)>=(2); + $11 = $1; + if ($10) { + $12 = HEAP32[(70964)>>2]|0; + $13 = (($12) + ($11))|0; + HEAP32[(70964)>>2] = $13; + $14 = HEAP32[(70968)>>2]|0; + $15 = (($14) + 1)|0; + HEAP32[(70968)>>2] = $15; + } else { + $16 = HEAP32[(70956)>>2]|0; + $17 = (($16) + ($11))|0; + HEAP32[(70956)>>2] = $17; + $18 = HEAP32[(70960)>>2]|0; + $19 = (($18) + 1)|0; + HEAP32[(70960)>>2] = $19; + } + $20 = $0; + $p = $20; + while(1) { + $21 = $1; + $22 = ($21>>>0)>(0); + if (!($22)) { + break; + } + $23 = $1; + $24 = ($23>>>0)>(600); + $25 = $1; + $26 = $24 ? 600 : $25; + $n = $26; + $27 = $p; + $28 = $n; + $29 = $2; + _read_pool($27,$28,$29); + $30 = $n; + $31 = $1; + $32 = (($31) - ($30))|0; + $1 = $32; + $33 = $n; + $34 = $p; + $35 = (($34) + ($33)|0); + $p = $35; + } + _unlock_pool(); + STACKTOP = sp;return; +} +function _read_pool($buffer,$length,$level) { + $buffer = $buffer|0; + $length = $length|0; + $level = $level|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0; + var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; + var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; + var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; + var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; + var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $apid = 0, $dp = 0, $i = 0, $my_pid2 = 0, $needed = 0, $needed1 = 0, $or$cond = 0, $sp = 0, $vararg_buffer = 0, $x = 0, $x2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $x = sp + 20|0; + $apid = sp + 8|0; + $x2 = sp + 4|0; + $0 = $buffer; + $1 = $length; + $2 = $level; + $3 = HEAP32[17728]|0; + $4 = ($3|0)!=(0); + if (!($4)) { + __gcry_assert_failed(50588,50603,934,50820); + // unreachable; + } + while(1) { + $5 = (_getpid()|0); + $my_pid2 = $5; + $6 = HEAP32[3251]|0; + $7 = ($6|0)==(-1); + if ($7) { + $8 = $my_pid2; + HEAP32[3251] = $8; + } + $9 = HEAP32[3251]|0; + $10 = $my_pid2; + $11 = ($9|0)!=($10|0); + if ($11) { + $12 = $my_pid2; + HEAP32[3251] = $12; + $13 = HEAP32[3251]|0; + HEAP32[$x>>2] = $13; + _add_randomness($x,4,0); + HEAP32[17749] = 0; + } + $14 = HEAP32[17728]|0; + $15 = ($14|0)!=(0); + if (!($15)) { + label = 8; + break; + } + $16 = $1; + $17 = ($16>>>0)>(600); + if ($17) { + label = 10; + break; + } + $18 = HEAP32[17746]|0; + $19 = ($18|0)!=(0); + if (!($19)) { + $20 = (_read_seed_file()|0); + $21 = ($20|0)!=(0); + if ($21) { + HEAP32[17746] = 1; + } + } + $22 = $2; + $23 = ($22|0)!=(2); + $24 = HEAP32[17754]|0; + $25 = ($24|0)!=(0); + $or$cond = $23 | $25; + if (!($or$cond)) { + HEAP32[17755] = 0; + $26 = $1; + $27 = HEAP32[17755]|0; + $28 = (($26) - ($27))|0; + $needed = $28; + $29 = $needed; + $30 = ($29>>>0)<(16); + if ($30) { + $needed = 16; + } else { + $31 = $needed; + $32 = ($31>>>0)>(600); + if ($32) { + label = 18; + break; + } + } + $33 = $needed; + _read_random_source(4,$33,2); + $34 = $needed; + $35 = HEAP32[17755]|0; + $36 = (($35) + ($34))|0; + HEAP32[17755] = $36; + HEAP32[17754] = 1; + } + $37 = $2; + $38 = ($37|0)==(2); + if ($38) { + $39 = HEAP32[17755]|0; + $40 = $1; + $41 = ($39>>>0)<($40>>>0); + if ($41) { + $42 = HEAP32[17755]|0; + $43 = ($42|0)<(0); + if ($43) { + HEAP32[17755] = 0; + } + $44 = $1; + $45 = HEAP32[17755]|0; + $46 = (($44) - ($45))|0; + $needed1 = $46; + $47 = $needed1; + $48 = ($47>>>0)>(600); + if ($48) { + label = 25; + break; + } + $49 = $needed1; + _read_random_source(4,$49,2); + $50 = $needed1; + $51 = HEAP32[17755]|0; + $52 = (($51) + ($50))|0; + HEAP32[17755] = $52; + } + } + while(1) { + $53 = HEAP32[17746]|0; + $54 = ($53|0)!=(0); + $55 = $54 ^ 1; + if (!($55)) { + break; + } + _random_poll(); + } + _do_fast_random_poll(); + $56 = HEAP32[3251]|0; + HEAP32[$apid>>2] = $56; + _add_randomness($apid,4,0); + $57 = HEAP32[17749]|0; + $58 = ($57|0)!=(0); + if (!($58)) { + $59 = HEAP32[17729]|0; + _mix_pool($59); + $60 = HEAP32[17735]|0; + $61 = (($60) + 1)|0; + HEAP32[17735] = $61; + } + $i = 0; + $62 = HEAP32[17731]|0; + $dp = $62; + $63 = HEAP32[17729]|0; + $sp = $63; + while(1) { + $64 = $i; + $65 = ($64|0)<(150); + if (!($65)) { + break; + } + $66 = $sp; + $67 = HEAP32[$66>>2]|0; + $68 = (($67) + -1515870811)|0; + $69 = $dp; + HEAP32[$69>>2] = $68; + $70 = $i; + $71 = (($70) + 1)|0; + $i = $71; + $72 = $dp; + $73 = ((($72)) + 4|0); + $dp = $73; + $74 = $sp; + $75 = ((($74)) + 4|0); + $sp = $75; + } + $76 = HEAP32[17729]|0; + _mix_pool($76); + $77 = HEAP32[17735]|0; + $78 = (($77) + 1)|0; + HEAP32[17735] = $78; + $79 = HEAP32[17731]|0; + _mix_pool($79); + $80 = HEAP32[(70944)>>2]|0; + $81 = (($80) + 1)|0; + HEAP32[(70944)>>2] = $81; + while(1) { + $82 = $1; + $83 = (($82) + -1)|0; + $1 = $83; + $84 = ($82|0)!=(0); + if (!($84)) { + break; + } + $85 = HEAP32[17756]|0; + $86 = (($85) + 1)|0; + HEAP32[17756] = $86; + $87 = HEAP32[17731]|0; + $88 = (($87) + ($85)|0); + $89 = HEAP8[$88>>0]|0; + $90 = $0; + $91 = ((($90)) + 1|0); + $0 = $91; + HEAP8[$90>>0] = $89; + $92 = HEAP32[17756]|0; + $93 = ($92>>>0)>=(600); + if ($93) { + HEAP32[17756] = 0; + } + $94 = HEAP32[17755]|0; + $95 = (($94) + -1)|0; + HEAP32[17755] = $95; + } + $96 = HEAP32[17755]|0; + $97 = ($96|0)<(0); + if ($97) { + HEAP32[17755] = 0; + } + $98 = HEAP32[17731]|0; + _memset(($98|0),0,600)|0; + $99 = (_getpid()|0); + $100 = $my_pid2; + $101 = ($99|0)!=($100|0); + if (!($101)) { + label = 43; + break; + } + $102 = (_getpid()|0); + HEAP32[$x2>>2] = $102; + _add_randomness($x2,4,0); + HEAP32[17749] = 0; + $103 = HEAP32[$x2>>2]|0; + HEAP32[3251] = $103; + } + if ((label|0) == 8) { + __gcry_assert_failed(50588,50603,953,50820); + // unreachable; + } + else if ((label|0) == 10) { + __gcry_log_bug(50830,$vararg_buffer); + // unreachable; + } + else if ((label|0) == 18) { + __gcry_bug(50603,979,50820); + // unreachable; + } + else if ((label|0) == 25) { + __gcry_bug(50603,995,50820); + // unreachable; + } + else if ((label|0) == 43) { + STACKTOP = sp;return; + } +} +function _read_seed_file() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $7 = 0, $8 = 0, $9 = 0, $buffer = 0, $fd = 0, $n = 0, $sb = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer11 = 0, $vararg_buffer13 = 0, $vararg_buffer15 = 0, $vararg_buffer4 = 0, $vararg_buffer8 = 0, $vararg_ptr18 = 0; + var $vararg_ptr3 = 0, $vararg_ptr7 = 0, $x = 0, $x1 = 0, $x2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 768|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer15 = sp + 48|0; + $vararg_buffer13 = sp + 40|0; + $vararg_buffer11 = sp + 32|0; + $vararg_buffer8 = sp + 24|0; + $vararg_buffer4 = sp + 16|0; + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $sb = sp + 72|0; + $buffer = sp + 160|0; + $x = sp + 64|0; + $x1 = sp + 60|0; + $x2 = sp + 56|0; + $1 = HEAP32[17728]|0; + $2 = ($1|0)!=(0); + if (!($2)) { + __gcry_assert_failed(50588,50603,743,50862); + // unreachable; + } + $3 = HEAP32[17752]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + $0 = 0; + $67 = $0; + STACKTOP = sp;return ($67|0); + } + $5 = HEAP32[17752]|0; + $6 = (_open($5,0,$vararg_buffer)|0); + $fd = $6; + $7 = $fd; + $8 = ($7|0)==(-1); + if ($8) { + $9 = (___errno_location()|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)==(2); + if ($11) { + HEAP32[17753] = 1; + $0 = 0; + $67 = $0; + STACKTOP = sp;return ($67|0); + } + } + $12 = $fd; + $13 = ($12|0)==(-1); + if ($13) { + $14 = (__gcry_gettext(50877)|0); + $15 = HEAP32[17752]|0; + $16 = (___errno_location()|0); + $17 = HEAP32[$16>>2]|0; + $18 = (_strerror($17)|0); + HEAP32[$vararg_buffer1>>2] = $15; + $vararg_ptr3 = ((($vararg_buffer1)) + 4|0); + HEAP32[$vararg_ptr3>>2] = $18; + __gcry_log_info($14,$vararg_buffer1); + $0 = 0; + $67 = $0; + STACKTOP = sp;return ($67|0); + } + $19 = $fd; + $20 = HEAP32[17752]|0; + $21 = (_lock_seed_file($19,$20,0)|0); + $22 = ($21|0)!=(0); + $23 = $fd; + if ($22) { + (_close($23)|0); + $0 = 0; + $67 = $0; + STACKTOP = sp;return ($67|0); + } + $24 = (_fstat($23,$sb)|0); + $25 = ($24|0)!=(0); + if ($25) { + $26 = (__gcry_gettext(50948)|0); + $27 = HEAP32[17752]|0; + $28 = (___errno_location()|0); + $29 = HEAP32[$28>>2]|0; + $30 = (_strerror($29)|0); + HEAP32[$vararg_buffer4>>2] = $27; + $vararg_ptr7 = ((($vararg_buffer4)) + 4|0); + HEAP32[$vararg_ptr7>>2] = $30; + __gcry_log_info($26,$vararg_buffer4); + $31 = $fd; + (_close($31)|0); + $0 = 0; + $67 = $0; + STACKTOP = sp;return ($67|0); + } + $32 = ((($sb)) + 12|0); + $33 = HEAP32[$32>>2]|0; + $34 = $33 & 61440; + $35 = ($34|0)==(32768); + if (!($35)) { + $36 = (__gcry_gettext(50969)|0); + $37 = HEAP32[17752]|0; + HEAP32[$vararg_buffer8>>2] = $37; + __gcry_log_info($36,$vararg_buffer8); + $38 = $fd; + (_close($38)|0); + $0 = 0; + $67 = $0; + STACKTOP = sp;return ($67|0); + } + $39 = ((($sb)) + 36|0); + $40 = HEAP32[$39>>2]|0; + $41 = ($40|0)!=(0); + if (!($41)) { + $42 = (__gcry_gettext(51007)|0); + __gcry_log_info($42,$vararg_buffer11); + $43 = $fd; + (_close($43)|0); + HEAP32[17753] = 1; + $0 = 0; + $67 = $0; + STACKTOP = sp;return ($67|0); + } + $44 = ((($sb)) + 36|0); + $45 = HEAP32[$44>>2]|0; + $46 = ($45|0)!=(600); + if ($46) { + $47 = (__gcry_gettext(51040)|0); + __gcry_log_info($47,$vararg_buffer13); + $48 = $fd; + (_close($48)|0); + $0 = 0; + $67 = $0; + STACKTOP = sp;return ($67|0); + } + while(1) { + $49 = $fd; + $50 = (_read($49,$buffer,600)|0); + $n = $50; + $51 = $n; + $52 = ($51|0)==(-1); + if (!($52)) { + break; + } + $53 = (___errno_location()|0); + $54 = HEAP32[$53>>2]|0; + $55 = ($54|0)==(4); + if (!($55)) { + break; + } + } + $56 = $n; + $57 = ($56|0)!=(600); + if ($57) { + $58 = (__gcry_gettext(51094)|0); + $59 = HEAP32[17752]|0; + $60 = (___errno_location()|0); + $61 = HEAP32[$60>>2]|0; + $62 = (_strerror($61)|0); + HEAP32[$vararg_buffer15>>2] = $59; + $vararg_ptr18 = ((($vararg_buffer15)) + 4|0); + HEAP32[$vararg_ptr18>>2] = $62; + __gcry_log_fatal($58,$vararg_buffer15); + // unreachable; + } + $63 = $fd; + (_close($63)|0); + _add_randomness($buffer,600,0); + $64 = (_getpid()|0); + HEAP32[$x>>2] = $64; + _add_randomness($x,4,0); + $65 = (_time((0|0))|0); + HEAP32[$x1>>2] = $65; + _add_randomness($x1,4,0); + $66 = (_clock()|0); + HEAP32[$x2>>2] = $66; + _add_randomness($x2,4,0); + _read_random_source(0,16,0); + HEAP32[17753] = 1; + $0 = 1; + $67 = $0; + STACKTOP = sp;return ($67|0); +} +function _lock_seed_file($fd,$fname,$for_write) { + $fd = $fd|0; + $fname = $fname|0; + $for_write = $for_write|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $backoff = 0, $lck = 0, $tv = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer5 = 0; + var $vararg_ptr4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer5 = sp + 16|0; + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $lck = sp + 32|0; + $tv = sp + 24|0; + $1 = $fd; + $2 = $fname; + $3 = $for_write; + $backoff = 0; + ;HEAP32[$lck>>2]=0|0;HEAP32[$lck+4>>2]=0|0;HEAP32[$lck+8>>2]=0|0;HEAP32[$lck+12>>2]=0|0; + $4 = $3; + $5 = ($4|0)!=(0); + $6 = $5 ? 1 : 0; + $7 = $6&65535; + HEAP16[$lck>>1] = $7; + $8 = ((($lck)) + 2|0); + HEAP16[$8>>1] = 0; + while(1) { + $9 = $1; + HEAP32[$vararg_buffer>>2] = $lck; + $10 = (_fcntl($9,13,$vararg_buffer)|0); + $11 = ($10|0)==(-1); + if (!($11)) { + label = 10; + break; + } + $12 = (___errno_location()|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)!=(11); + if ($14) { + $15 = (___errno_location()|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)!=(13); + if ($17) { + label = 5; + break; + } + } + $23 = $backoff; + $24 = ($23|0)>(2); + if ($24) { + $25 = (__gcry_gettext(50919)|0); + $26 = $2; + HEAP32[$vararg_buffer5>>2] = $26; + __gcry_log_info($25,$vararg_buffer5); + } + $27 = $backoff; + HEAP32[$tv>>2] = $27; + $28 = ((($tv)) + 4|0); + HEAP32[$28>>2] = 250000; + (_select(0,0,0,0,$tv)|0); + $29 = $backoff; + $30 = ($29|0)<(10); + if (!($30)) { + continue; + } + $31 = $backoff; + $32 = (($31) + 1)|0; + $backoff = $32; + } + if ((label|0) == 5) { + $18 = (__gcry_gettext(50898)|0); + $19 = $2; + $20 = (___errno_location()|0); + $21 = HEAP32[$20>>2]|0; + $22 = (_strerror($21)|0); + HEAP32[$vararg_buffer1>>2] = $19; + $vararg_ptr4 = ((($vararg_buffer1)) + 4|0); + HEAP32[$vararg_ptr4>>2] = $22; + __gcry_log_info($18,$vararg_buffer1); + $0 = -1; + $33 = $0; + STACKTOP = sp;return ($33|0); + } + else if ((label|0) == 10) { + $0 = 0; + $33 = $0; + STACKTOP = sp;return ($33|0); + } + return (0)|0; +} +function _read_random_source($orgin,$length,$level) { + $orgin = $orgin|0; + $length = $length|0; + $level = $level|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $0 = $orgin; + $1 = $length; + $2 = $level; + $3 = HEAP32[17732]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + __gcry_log_fatal(51115,$vararg_buffer); + // unreachable; + } + $5 = HEAP32[17732]|0; + $6 = $0; + $7 = $1; + $8 = $2; + $9 = (FUNCTION_TABLE_iiiii[$5 & 127](81,$6,$7,$8)|0); + $10 = ($9|0)<(0); + if ($10) { + __gcry_log_fatal(51166,$vararg_buffer1); + // unreachable; + } else { + STACKTOP = sp;return; + } +} +function _random_poll() { + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP32[(70948)>>2]|0; + $1 = (($0) + 1)|0; + HEAP32[(70948)>>2] = $1; + _read_random_source(3,120,1); + return; +} +function _do_fast_random_poll() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $buf = 0, $tv = 0, $x = 0, $x1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $tv = sp + 144|0; + $buf = sp + 8|0; + $x = sp + 4|0; + $x1 = sp; + $0 = HEAP32[17728]|0; + $1 = ($0|0)!=(0); + if (!($1)) { + __gcry_assert_failed(50588,50603,1180,51204); + // unreachable; + } + $2 = HEAP32[(70952)>>2]|0; + $3 = (($2) + 1)|0; + HEAP32[(70952)>>2] = $3; + $4 = HEAP32[17750]|0; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = HEAP32[17750]|0; + FUNCTION_TABLE_vii[$6 & 63](81,2); + } + $7 = (_gettimeofday(($tv|0),(0|0))|0); + $8 = ($7|0)!=(0); + if ($8) { + __gcry_bug(50603,1198,51204); + // unreachable; + } else { + _add_randomness($tv,4,2); + $9 = ((($tv)) + 4|0); + _add_randomness($9,4,2); + (_getrusage(0,$buf)|0); + _add_randomness($buf,136,2); + _memset(($buf|0),0,136)|0; + $10 = (_time((0|0))|0); + HEAP32[$x>>2] = $10; + _add_randomness($x,4,2); + $11 = (_clock()|0); + HEAP32[$x1>>2] = $11; + _add_randomness($x1,4,2); + __gcry_rndhw_poll_fast(81,2); + STACKTOP = sp;return; + } +} +function __gcry_rngcsprng_set_seed_file($name) { + $name = $name|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $name; + $1 = HEAP32[17752]|0; + $2 = ($1|0)!=(0|0); + if ($2) { + __gcry_bug(50603,673,51224); + // unreachable; + } else { + $3 = $0; + $4 = (__gcry_xstrdup($3)|0); + HEAP32[17752] = $4; + STACKTOP = sp;return; + } +} +function __gcry_rngcsprng_update_seed_file() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $8 = 0, $9 = 0, $dp = 0, $fd = 0, $i = 0, $or$cond = 0, $or$cond3 = 0, $sp = 0; + var $vararg_buffer = 0, $vararg_buffer10 = 0, $vararg_buffer14 = 0, $vararg_buffer18 = 0, $vararg_buffer4 = 0, $vararg_buffer6 = 0, $vararg_ptr13 = 0, $vararg_ptr17 = 0, $vararg_ptr21 = 0, $vararg_ptr9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer18 = sp + 40|0; + $vararg_buffer14 = sp + 32|0; + $vararg_buffer10 = sp + 24|0; + $vararg_buffer6 = sp + 16|0; + $vararg_buffer4 = sp + 8|0; + $vararg_buffer = sp; + _initialize_basics(); + _lock_pool_2151(); + $0 = HEAP32[17752]|0; + $1 = ($0|0)!=(0|0); + $2 = HEAP32[17729]|0; + $3 = ($2|0)!=(0|0); + $or$cond = $1 & $3; + $4 = HEAP32[17746]|0; + $5 = ($4|0)!=(0); + $or$cond3 = $or$cond & $5; + if (!($or$cond3)) { + _unlock_pool(); + STACKTOP = sp;return; + } + $6 = HEAP32[17753]|0; + $7 = ($6|0)!=(0); + if (!($7)) { + _unlock_pool(); + $8 = (__gcry_gettext(51254)|0); + __gcry_log_info($8,$vararg_buffer); + STACKTOP = sp;return; + } + $i = 0; + $9 = HEAP32[17731]|0; + $dp = $9; + $10 = HEAP32[17729]|0; + $sp = $10; + while(1) { + $11 = $i; + $12 = ($11|0)<(150); + if (!($12)) { + break; + } + $13 = $sp; + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + -1515870811)|0; + $16 = $dp; + HEAP32[$16>>2] = $15; + $17 = $i; + $18 = (($17) + 1)|0; + $i = $18; + $19 = $dp; + $20 = ((($19)) + 4|0); + $dp = $20; + $21 = $sp; + $22 = ((($21)) + 4|0); + $sp = $22; + } + $23 = HEAP32[17729]|0; + _mix_pool($23); + $24 = HEAP32[17735]|0; + $25 = (($24) + 1)|0; + HEAP32[17735] = $25; + $26 = HEAP32[17731]|0; + _mix_pool($26); + $27 = HEAP32[(70944)>>2]|0; + $28 = (($27) + 1)|0; + HEAP32[(70944)>>2] = $28; + $29 = HEAP32[17752]|0; + HEAP32[$vararg_buffer4>>2] = 384; + $30 = (_open($29,65,$vararg_buffer4)|0); + $fd = $30; + $31 = $fd; + $32 = ($31|0)==(-1); + do { + if ($32) { + $33 = (__gcry_gettext(51290)|0); + $34 = HEAP32[17752]|0; + $35 = (___errno_location()|0); + $36 = HEAP32[$35>>2]|0; + $37 = (_strerror($36)|0); + HEAP32[$vararg_buffer6>>2] = $34; + $vararg_ptr9 = ((($vararg_buffer6)) + 4|0); + HEAP32[$vararg_ptr9>>2] = $37; + __gcry_log_info($33,$vararg_buffer6); + } else { + $38 = $fd; + $39 = HEAP32[17752]|0; + $40 = (_lock_seed_file($38,$39,1)|0); + $41 = ($40|0)!=(0); + $42 = $fd; + if ($41) { + (_close($42)|0); + break; + } + $43 = (_ftruncate($42,0)|0); + $44 = ($43|0)!=(0); + if ($44) { + $45 = (__gcry_gettext(51313)|0); + $46 = HEAP32[17752]|0; + $47 = (___errno_location()|0); + $48 = HEAP32[$47>>2]|0; + $49 = (_strerror($48)|0); + HEAP32[$vararg_buffer10>>2] = $46; + $vararg_ptr13 = ((($vararg_buffer10)) + 4|0); + HEAP32[$vararg_ptr13>>2] = $49; + __gcry_log_info($45,$vararg_buffer10); + $50 = $fd; + (_close($50)|0); + break; + } + while(1) { + $51 = $fd; + $52 = HEAP32[17731]|0; + $53 = (_write($51,$52,600)|0); + $i = $53; + $54 = $i; + $55 = ($54|0)==(-1); + if (!($55)) { + break; + } + $56 = (___errno_location()|0); + $57 = HEAP32[$56>>2]|0; + $58 = ($57|0)==(4); + if (!($58)) { + break; + } + } + $59 = $i; + $60 = ($59|0)!=(600); + if ($60) { + $61 = (__gcry_gettext(51313)|0); + $62 = HEAP32[17752]|0; + $63 = (___errno_location()|0); + $64 = HEAP32[$63>>2]|0; + $65 = (_strerror($64)|0); + HEAP32[$vararg_buffer14>>2] = $62; + $vararg_ptr17 = ((($vararg_buffer14)) + 4|0); + HEAP32[$vararg_ptr17>>2] = $65; + __gcry_log_info($61,$vararg_buffer14); + } + $66 = $fd; + $67 = (_close($66)|0); + $68 = ($67|0)!=(0); + if ($68) { + $69 = (__gcry_gettext(51335)|0); + $70 = HEAP32[17752]|0; + $71 = (___errno_location()|0); + $72 = HEAP32[$71>>2]|0; + $73 = (_strerror($72)|0); + HEAP32[$vararg_buffer18>>2] = $70; + $vararg_ptr21 = ((($vararg_buffer18)) + 4|0); + HEAP32[$vararg_ptr21>>2] = $73; + __gcry_log_info($69,$vararg_buffer18); + } + } + } while(0); + _unlock_pool(); + STACKTOP = sp;return; +} +function __gcry_rngcsprng_fast_poll() { + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + _initialize_basics(); + _lock_pool_2151(); + $0 = HEAP32[17729]|0; + $1 = ($0|0)!=(0|0); + if (!($1)) { + _unlock_pool(); + return; + } + _do_fast_random_poll(); + _unlock_pool(); + return; +} +function __gcry_rngfips_initialize($full) { + $full = $full|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $full; + _basic_initialization(); + $1 = $0; + $2 = ($1|0)!=(0); + if (!($2)) { + STACKTOP = sp;return; + } + _lock_rng(); + $3 = HEAP32[17759]|0; + $4 = ($3|0)!=(0|0); + do { + if ($4) { + $12 = HEAP32[17760]|0; + $13 = ((($12)) + 52|0); + $14 = HEAP32[$13>>2]|0; + $15 = ($14|0)!=(0|0); + if ($15) { + __gcry_assert_failed(51393,51421,767,51435); + // unreachable; + } + $16 = HEAP32[17761]|0; + $17 = ((($16)) + 52|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($18|0)!=(0|0); + if ($19) { + __gcry_assert_failed(51460,51421,768,51435); + // unreachable; + } + $20 = HEAP32[17762]|0; + $21 = ((($20)) + 52|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($22|0)!=(0|0); + if ($23) { + __gcry_assert_failed(51490,51421,769,51435); + // unreachable; + } else { + $24 = HEAP32[17760]|0; + _check_guards($24); + $25 = HEAP32[17761]|0; + _check_guards($25); + $26 = HEAP32[17762]|0; + _check_guards($26); + break; + } + } else { + $5 = (__gcry_xmalloc_secure(48)|0); + HEAP32[17759] = $5; + $6 = (__gcry_xcalloc(1,68)|0); + HEAP32[17760] = $6; + $7 = HEAP32[17760]|0; + _setup_guards($7); + $8 = (__gcry_xcalloc_secure(1,68)|0); + HEAP32[17761] = $8; + $9 = HEAP32[17761]|0; + _setup_guards($9); + $10 = (__gcry_xcalloc_secure(1,68)|0); + HEAP32[17762] = $10; + $11 = HEAP32[17762]|0; + _setup_guards($11); + } + } while(0); + _unlock_rng(); + STACKTOP = sp;return; +} +function _basic_initialization() { + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP32[17757]|0; + $1 = ($0|0)!=(0); + if ($1) { + return; + } + HEAP32[17757] = 1; + HEAP32[17758] = 0; + return; +} +function _lock_rng() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = (_gpgrt_lock_lock(13008)|0); + $rc = $0; + $1 = $rc; + $2 = ($1|0)!=(0); + if ($2) { + $3 = $rc; + $4 = (_gpg_strerror($3)|0); + HEAP32[$vararg_buffer>>2] = $4; + __gcry_log_fatal(51357,$vararg_buffer); + // unreachable; + } else { + HEAP32[17758] = 1; + STACKTOP = sp;return; + } +} +function _setup_guards($rng_ctx) { + $rng_ctx = $rng_ctx|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $rng_ctx; + $1 = $0; + HEAP8[$1>>0] = 17; + $2 = $0; + $3 = ((($2)) + 16|0); + HEAP8[$3>>0] = 42; + $4 = $0; + $5 = ((($4)) + 33|0); + HEAP8[$5>>0] = -119; + $6 = $0; + $7 = ((($6)) + 50|0); + HEAP8[$7>>0] = -4; + STACKTOP = sp;return; +} +function _check_guards($rng_ctx) { + $rng_ctx = $rng_ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $rng_ctx; + $1 = $0; + $2 = HEAP8[$1>>0]|0; + $3 = $2&255; + $4 = ($3|0)!=(17); + if (!($4)) { + $5 = $0; + $6 = ((($5)) + 16|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = ($8|0)!=(42); + if (!($9)) { + $10 = $0; + $11 = ((($10)) + 33|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = ($13|0)!=(137); + if (!($14)) { + $15 = $0; + $16 = ((($15)) + 50|0); + $17 = HEAP8[$16>>0]|0; + $18 = $17&255; + $19 = ($18|0)!=(252); + if (!($19)) { + STACKTOP = sp;return; + } + } + } + } + $20 = $0; + HEAP32[$vararg_buffer>>2] = $20; + __gcry_log_fatal(51523,$vararg_buffer); + // unreachable; +} +function _unlock_rng() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + HEAP32[17758] = 0; + $0 = (_gpgrt_lock_unlock(13008)|0); + $rc = $0; + $1 = $rc; + $2 = ($1|0)!=(0); + if ($2) { + $3 = $rc; + $4 = (_gpg_strerror($3)|0); + HEAP32[$vararg_buffer>>2] = $4; + __gcry_log_fatal(51569,$vararg_buffer); + // unreachable; + } else { + STACKTOP = sp;return; + } +} +function __gcry_rngfips_close_fds() { + var label = 0, sp = 0; + sp = STACKTOP; + _lock_rng(); + (__gcry_rndlinux_gather_random(0,0,0,0)|0); + _unlock_rng(); + return; +} +function __gcry_rngfips_dump_stats() { + var label = 0, sp = 0; + sp = STACKTOP; + return; +} +function __gcry_rngfips_is_faked() { + var label = 0, sp = 0; + sp = STACKTOP; + return 0; +} +function __gcry_rngfips_randomize($buffer,$length,$level) { + $buffer = $buffer|0; + $length = $length|0; + $level = $level|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $buffer; + $1 = $length; + $2 = $level; + __gcry_rngfips_initialize(1); + _lock_rng(); + $3 = $2; + $4 = ($3|0)==(2); + $5 = $0; + $6 = $1; + if ($4) { + $7 = HEAP32[17762]|0; + _get_random($5,$6,$7); + _unlock_rng(); + STACKTOP = sp;return; + } else { + $8 = HEAP32[17761]|0; + _get_random($5,$6,$8); + _unlock_rng(); + STACKTOP = sp;return; + } +} +function _get_random($buffer,$length,$rng_ctx) { + $buffer = $buffer|0; + $length = $length|0; + $rng_ctx = $rng_ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $buffer; + $1 = $length; + $2 = $rng_ctx; + $3 = $0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + __gcry_assert_failed(52720,51421,685,52743); + // unreachable; + } + $5 = $2; + $6 = ($5|0)!=(0|0); + if (!($6)) { + __gcry_assert_failed(51605,51421,686,52743); + // unreachable; + } + $7 = $2; + _check_guards($7); + $8 = $2; + $9 = ((($8)) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + do { + if (!($11)) { + $12 = $2; + $13 = HEAP32[17760]|0; + $14 = ($12|0)==($13|0); + if ($14) { + $15 = (_x931_generate_key(1)|0); + $16 = $2; + $17 = ((($16)) + 4|0); + HEAP32[$17>>2] = $15; + } else { + $18 = (_x931_generate_key(0)|0); + $19 = $2; + $20 = ((($19)) + 4|0); + HEAP32[$20>>2] = $18; + } + $21 = $2; + $22 = ((($21)) + 4|0); + $23 = HEAP32[$22>>2]|0; + $24 = ($23|0)!=(0|0); + if ($24) { + $25 = (_getpid()|0); + $26 = $2; + $27 = ((($26)) + 60|0); + HEAP32[$27>>2] = $25; + break; + } else { + __gcry_log_fatal(52138,$vararg_buffer); + // unreachable; + } + } + } while(0); + $28 = $2; + $29 = ((($28)) + 8|0); + $30 = HEAP8[$29>>0]|0; + $31 = ($30 << 7)&255; + $32 = ($31<<24>>24) >> 7; + $33 = $32 << 24 >> 24; + $34 = ($33|0)!=(0); + if (!($34)) { + $35 = $2; + _x931_reseed($35); + } + $36 = $2; + $37 = ((($36)) + 60|0); + $38 = HEAP32[$37>>2]|0; + $39 = (_getpid()|0); + $40 = ($38|0)!=($39|0); + if (!($40)) { + $41 = $2; + $42 = ((($41)) + 64|0); + $43 = HEAP32[$42>>2]|0; + $44 = (_getpid()|0); + $45 = ($43|0)!=($44|0); + if (!($45)) { + $46 = $0; + $47 = $1; + $48 = $2; + $49 = (_x931_aes_driver($46,$47,$48)|0); + $50 = ($49|0)!=(0); + if ($50) { + __gcry_log_fatal(52138,$vararg_buffer); + // unreachable; + } else { + $51 = $2; + _check_guards($51); + STACKTOP = sp;return; + } + } + } + __gcry_fips_signal_error(51421,714,52743,0,51875); + __gcry_log_fatal(52138,$vararg_buffer); + // unreachable; +} +function _x931_generate_key($for_nonce) { + $for_nonce = $for_nonce|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $9 = 0, $_vlen = 0, $_vptr = 0, $_vptr_long = 0, $_vset = 0, $_vset_long = 0, $buffer = 0, $hd = 0, $rc = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer1 = sp + 16|0; + $vararg_buffer = sp + 8|0; + $hd = sp + 40|0; + $_vset_long = sp; + $1 = $for_nonce; + $2 = HEAP32[17758]|0; + $3 = ($2|0)!=(0); + if (!($3)) { + __gcry_assert_failed(51613,51421,596,51632); + // unreachable; + } + $4 = (__gcry_cipher_open($hd,7,1,1)|0); + $rc = $4; + $5 = $rc; + $6 = ($5|0)!=(0); + if ($6) { + $7 = $rc; + $8 = (__gcry_strerror_2224($7)|0); + HEAP32[$vararg_buffer>>2] = $8; + __gcry_log_error(51650,$vararg_buffer); + $0 = 0; + $85 = $0; + STACKTOP = sp;return ($85|0); + } + $9 = $1; + $10 = ($9|0)!=(0); + if ($10) { + $11 = (__gcry_xmalloc(16)|0); + $buffer = $11; + $12 = $buffer; + $13 = HEAP32[17761]|0; + _get_random($12,16,$13); + } else { + $14 = (_get_entropy(16)|0); + $buffer = $14; + } + $15 = HEAP32[$hd>>2]|0; + $16 = $buffer; + $17 = (__gcry_cipher_setkey($15,$16,16)|0); + $rc = $17; + $18 = $buffer; + $_vptr = $18; + $_vlen = 16; + $_vset = 0; + $19 = $_vset; + $20 = $19&255; + $21 = $_vset_long; + $22 = $21; + HEAP32[$22>>2] = $20; + $23 = (($21) + 4)|0; + $24 = $23; + HEAP32[$24>>2] = 0; + while(1) { + $25 = $_vptr; + $26 = $25; + $27 = $26 & 7; + $28 = ($27|0)!=(0); + $29 = $_vlen; + $30 = ($29|0)!=(0); + $31 = $28 ? $30 : 0; + if (!($31)) { + break; + } + $32 = $_vset; + $33 = $_vptr; + HEAP8[$33>>0] = $32; + $34 = $_vptr; + $35 = ((($34)) + 1|0); + $_vptr = $35; + $36 = $_vlen; + $37 = (($36) + -1)|0; + $_vlen = $37; + } + $38 = $_vlen; + $39 = ($38>>>0)<(8); + if (!($39)) { + $40 = $_vset_long; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $43 = (($40) + 4)|0; + $44 = $43; + $45 = HEAP32[$44>>2]|0; + $46 = (___muldi3(($42|0),($45|0),16843009,16843009)|0); + $47 = tempRet0; + $48 = $_vset_long; + $49 = $48; + HEAP32[$49>>2] = $46; + $50 = (($48) + 4)|0; + $51 = $50; + HEAP32[$51>>2] = $47; + while(1) { + $52 = $_vptr; + $_vptr_long = $52; + $53 = $_vset_long; + $54 = $53; + $55 = HEAP32[$54>>2]|0; + $56 = (($53) + 4)|0; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = $_vptr_long; + $60 = $59; + $61 = $60; + HEAP32[$61>>2] = $55; + $62 = (($60) + 4)|0; + $63 = $62; + HEAP32[$63>>2] = $58; + $64 = $_vlen; + $65 = (($64) - 8)|0; + $_vlen = $65; + $66 = $_vptr; + $67 = ((($66)) + 8|0); + $_vptr = $67; + $68 = $_vlen; + $69 = ($68>>>0)>=(8); + if (!($69)) { + break; + } + } + } + while(1) { + $70 = $_vlen; + $71 = ($70|0)!=(0); + if (!($71)) { + break; + } + $72 = $_vset; + $73 = $_vptr; + HEAP8[$73>>0] = $72; + $74 = $_vptr; + $75 = ((($74)) + 1|0); + $_vptr = $75; + $76 = $_vlen; + $77 = (($76) + -1)|0; + $_vlen = $77; + } + $78 = $buffer; + __gcry_free($78); + $79 = $rc; + $80 = ($79|0)!=(0); + if ($80) { + $81 = $rc; + $82 = (__gcry_strerror_2224($81)|0); + HEAP32[$vararg_buffer1>>2] = $82; + __gcry_log_error(51799,$vararg_buffer1); + $83 = HEAP32[$hd>>2]|0; + __gcry_cipher_close($83); + $0 = 0; + $85 = $0; + STACKTOP = sp;return ($85|0); + } else { + $84 = HEAP32[$hd>>2]|0; + $0 = $84; + $85 = $0; + STACKTOP = sp;return ($85|0); + } + return (0)|0; +} +function __gcry_strerror_2224($err) { + $err = $err|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $err; + $1 = $0; + $2 = (_gpg_strerror($1)|0); + STACKTOP = sp;return ($2|0); +} +function _get_entropy($nbytes) { + $nbytes = $nbytes|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $result = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $nbytes; + $1 = HEAP32[17763]|0; + $2 = ($1|0)!=(0|0); + if ($2) { + __gcry_assert_failed(51693,51421,552,51717); + // unreachable; + } + $3 = $0; + $4 = (__gcry_xmalloc_secure($3)|0); + HEAP32[17763] = $4; + $5 = $0; + HEAP32[17764] = $5; + HEAP32[17765] = 0; + $6 = (__gcry_rndlinux_gather_random(82,0,16,2)|0); + $rc = $6; + $7 = $rc; + $8 = ($7|0)<(0); + if ($8) { + $12 = HEAP32[17763]|0; + __gcry_free($12); + HEAP32[17763] = 0; + __gcry_log_fatal(51771,$vararg_buffer); + // unreachable; + } + $9 = HEAP32[17765]|0; + $10 = HEAP32[17764]|0; + $11 = ($9|0)!=($10|0); + if ($11) { + $12 = HEAP32[17763]|0; + __gcry_free($12); + HEAP32[17763] = 0; + __gcry_log_fatal(51771,$vararg_buffer); + // unreachable; + } else { + $13 = HEAP32[17763]|0; + $result = $13; + HEAP32[17763] = 0; + $14 = $result; + STACKTOP = sp;return ($14|0); + } + return (0)|0; +} +function _entropy_collect_cb($buffer,$length,$origin) { + $buffer = $buffer|0; + $length = $length|0; + $origin = $origin|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $buffer; + $1 = $length; + $2 = $origin; + $3 = $0; + $p = $3; + $4 = HEAP32[17758]|0; + $5 = ($4|0)!=(0); + if (!($5)) { + __gcry_assert_failed(51613,51421,531,51729); + // unreachable; + } + $6 = HEAP32[17763]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + __gcry_assert_failed(51748,51421,532,51729); + // unreachable; + } + while(1) { + $8 = $1; + $9 = (($8) + -1)|0; + $1 = $9; + $10 = ($8|0)!=(0); + if (!($10)) { + label = 8; + break; + } + $11 = HEAP32[17765]|0; + $12 = HEAP32[17764]|0; + $13 = ($11>>>0)<($12>>>0); + if (!($13)) { + label = 8; + break; + } + $14 = $p; + $15 = ((($14)) + 1|0); + $p = $15; + $16 = HEAP8[$14>>0]|0; + $17 = $16&255; + $18 = HEAP32[17765]|0; + $19 = (($18) + 1)|0; + HEAP32[17765] = $19; + $20 = HEAP32[17763]|0; + $21 = (($20) + ($18)|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = $23 ^ $17; + $25 = $24&255; + HEAP8[$21>>0] = $25; + } + if ((label|0) == 8) { + STACKTOP = sp;return; + } +} +function _x931_reseed($rng_ctx) { + $rng_ctx = $rng_ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $rng_ctx; + $1 = HEAP32[17758]|0; + $2 = ($1|0)!=(0); + if (!($2)) { + __gcry_assert_failed(51613,51421,658,51831); + // unreachable; + } + $3 = $0; + $4 = HEAP32[17760]|0; + $5 = ($3|0)==($4|0); + $6 = $0; + $7 = ((($6)) + 17|0); + if ($5) { + $8 = HEAP32[17761]|0; + _get_random($7,16,$8); + $9 = $0; + $10 = ((($9)) + 8|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11 & -2; + $13 = $12 | 1; + HEAP8[$10>>0] = $13; + $14 = (_getpid()|0); + $15 = $0; + $16 = ((($15)) + 64|0); + HEAP32[$16>>2] = $14; + STACKTOP = sp;return; + } else { + _x931_generate_seed($7,16); + $17 = $0; + $18 = ((($17)) + 8|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19 & -2; + $21 = $20 | 1; + HEAP8[$18>>0] = $21; + $22 = (_getpid()|0); + $23 = $0; + $24 = ((($23)) + 64|0); + HEAP32[$24>>2] = $22; + STACKTOP = sp;return; + } +} +function _x931_generate_seed($seed_buffer,$length) { + $seed_buffer = $seed_buffer|0; + $length = $length|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, $_vlen = 0, $_vptr = 0, $_vptr_long = 0, $_vset = 0, $_vset_long = 0, $buffer = 0, dest = 0, label = 0, sp = 0, src = 0; + var stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $_vset_long = sp; + $0 = $seed_buffer; + $1 = $length; + $2 = HEAP32[17758]|0; + $3 = ($2|0)!=(0); + if (!($3)) { + __gcry_assert_failed(51613,51421,642,51843); + // unreachable; + } + $4 = $1; + $5 = ($4|0)==(16); + if (!($5)) { + __gcry_assert_failed(51862,51421,643,51843); + // unreachable; + } + $6 = (_get_entropy(16)|0); + $buffer = $6; + $7 = $0; + $8 = $buffer; + dest=$7; src=$8; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $9 = $buffer; + $_vptr = $9; + $_vlen = 16; + $_vset = 0; + $10 = $_vset; + $11 = $10&255; + $12 = $_vset_long; + $13 = $12; + HEAP32[$13>>2] = $11; + $14 = (($12) + 4)|0; + $15 = $14; + HEAP32[$15>>2] = 0; + while(1) { + $16 = $_vptr; + $17 = $16; + $18 = $17 & 7; + $19 = ($18|0)!=(0); + $20 = $_vlen; + $21 = ($20|0)!=(0); + $22 = $19 ? $21 : 0; + if (!($22)) { + break; + } + $23 = $_vset; + $24 = $_vptr; + HEAP8[$24>>0] = $23; + $25 = $_vptr; + $26 = ((($25)) + 1|0); + $_vptr = $26; + $27 = $_vlen; + $28 = (($27) + -1)|0; + $_vlen = $28; + } + $29 = $_vlen; + $30 = ($29>>>0)<(8); + if (!($30)) { + $31 = $_vset_long; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = (($31) + 4)|0; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (___muldi3(($33|0),($36|0),16843009,16843009)|0); + $38 = tempRet0; + $39 = $_vset_long; + $40 = $39; + HEAP32[$40>>2] = $37; + $41 = (($39) + 4)|0; + $42 = $41; + HEAP32[$42>>2] = $38; + while(1) { + $43 = $_vptr; + $_vptr_long = $43; + $44 = $_vset_long; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = (($44) + 4)|0; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + $50 = $_vptr_long; + $51 = $50; + $52 = $51; + HEAP32[$52>>2] = $46; + $53 = (($51) + 4)|0; + $54 = $53; + HEAP32[$54>>2] = $49; + $55 = $_vlen; + $56 = (($55) - 8)|0; + $_vlen = $56; + $57 = $_vptr; + $58 = ((($57)) + 8|0); + $_vptr = $58; + $59 = $_vlen; + $60 = ($59>>>0)>=(8); + if (!($60)) { + break; + } + } + } + while(1) { + $61 = $_vlen; + $62 = ($61|0)!=(0); + if (!($62)) { + break; + } + $63 = $_vset; + $64 = $_vptr; + HEAP8[$64>>0] = $63; + $65 = $_vptr; + $66 = ((($65)) + 1|0); + $_vptr = $66; + $67 = $_vlen; + $68 = (($67) + -1)|0; + $_vlen = $68; + } + $69 = $buffer; + __gcry_free($69); + STACKTOP = sp;return; +} +function _x931_aes_driver($output,$length,$rng_ctx) { + $output = $output|0; + $length = $length|0; + $rng_ctx = $rng_ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $_vlen = 0, $_vptr = 0, $_vptr_long = 0, $_vset = 0, $_vset_long = 0, $datetime_DT = 0, $intermediate_I = 0, $nbytes = 0, $result_buffer = 0, $temp_buffer = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $datetime_DT = sp + 56|0; + $_vset_long = sp; + $1 = $output; + $2 = $length; + $3 = $rng_ctx; + $4 = HEAP32[17758]|0; + $5 = ($4|0)!=(0); + if (!($5)) { + __gcry_assert_failed(51613,51421,444,51929); + // unreachable; + } + $6 = $3; + $7 = ((($6)) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0|0); + if (!($9)) { + __gcry_assert_failed(51945,51421,445,51929); + // unreachable; + } + $10 = $3; + $11 = ((($10)) + 8|0); + $12 = HEAP8[$11>>0]|0; + $13 = ($12 << 7)&255; + $14 = ($13<<24>>24) >> 7; + $15 = $14 << 24 >> 24; + $16 = ($15|0)!=(0); + if (!($16)) { + __gcry_assert_failed(51964,51421,446,51929); + // unreachable; + } + $17 = HEAP32[17759]|0; + $18 = ($17|0)!=(0|0); + if (!($18)) { + __gcry_assert_failed(51983,51421,448,51929); + // unreachable; + } + $19 = HEAP32[17759]|0; + $intermediate_I = $19; + $20 = HEAP32[17759]|0; + $21 = ((($20)) + 16|0); + $temp_buffer = $21; + $22 = HEAP32[17759]|0; + $23 = ((($22)) + 32|0); + $result_buffer = $23; + while(1) { + $24 = $2; + $25 = ($24|0)!=(0); + if (!($25)) { + label = 33; + break; + } + $26 = $3; + $27 = ((($26)) + 52|0); + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)!=(0|0); + if (!($29)) { + $30 = $3; + $31 = ((($30)) + 12|0); + $32 = HEAP32[$31>>2]|0; + $33 = ($32>>>0)>(1000); + if ($33) { + $34 = $3; + _x931_reseed($34); + $35 = $3; + $36 = ((($35)) + 12|0); + HEAP32[$36>>2] = 0; + } + } + $37 = $2; + $38 = ($37>>>0)<(16); + $39 = $2; + $40 = $38 ? $39 : 16; + $nbytes = $40; + $41 = $3; + _x931_get_dt($datetime_DT,16,$41); + $42 = $result_buffer; + $43 = $3; + $44 = ((($43)) + 17|0); + $45 = $3; + $46 = ((($45)) + 4|0); + $47 = HEAP32[$46>>2]|0; + $48 = $intermediate_I; + $49 = $temp_buffer; + _x931_aes($42,$datetime_DT,$44,$47,$48,$49); + $50 = $3; + $51 = ((($50)) + 12|0); + $52 = HEAP32[$51>>2]|0; + $53 = (($52) + 1)|0; + HEAP32[$51>>2] = $53; + $54 = $3; + $55 = ((($54)) + 51|0); + $56 = HEAP8[$55>>0]|0; + $57 = $56&255; + $58 = ($57|0)!=(0); + if ($58) { + $59 = $3; + $60 = ((($59)) + 52|0); + $61 = HEAP32[$60>>2]|0; + $62 = ($61|0)!=(0|0); + if ($62) { + $63 = $3; + $64 = HEAP32[17760]|0; + $65 = ($63|0)!=($64|0); + if ($65) { + $66 = $3; + $67 = HEAP32[17761]|0; + $68 = ($66|0)!=($67|0); + if ($68) { + $69 = $3; + $70 = HEAP32[17762]|0; + $71 = ($69|0)!=($70|0); + if (!($71)) { + label = 19; + } + } else { + label = 19; + } + } else { + label = 19; + } + } else { + label = 19; + } + } else { + label = 19; + } + if ((label|0) == 19) { + label = 0; + $72 = $3; + $73 = ((($72)) + 8|0); + $74 = HEAP8[$73>>0]|0; + $75 = ($74 << 6)&255; + $76 = ($75<<24>>24) >> 7; + $77 = $76 << 24 >> 24; + $78 = ($77|0)!=(0); + $79 = $3; + $80 = ((($79)) + 34|0); + $81 = $result_buffer; + if (!($78)) { + dest=$80; src=$81; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $82 = $3; + $83 = ((($82)) + 8|0); + $84 = HEAP8[$83>>0]|0; + $85 = $84 & -3; + $86 = $85 | 2; + HEAP8[$83>>0] = $86; + continue; + } + $87 = (_memcmp($80,$81,16)|0); + $88 = ($87|0)!=(0); + if (!($88)) { + label = 22; + break; + } + $89 = $3; + $90 = ((($89)) + 34|0); + $91 = $result_buffer; + dest=$90; src=$91; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + } + $92 = $1; + $93 = $result_buffer; + $94 = $nbytes; + _memcpy(($92|0),($93|0),($94|0))|0; + $95 = $result_buffer; + $_vptr = $95; + $_vlen = 16; + $_vset = 0; + $96 = $_vset; + $97 = $96&255; + $98 = $_vset_long; + $99 = $98; + HEAP32[$99>>2] = $97; + $100 = (($98) + 4)|0; + $101 = $100; + HEAP32[$101>>2] = 0; + while(1) { + $102 = $_vptr; + $103 = $102; + $104 = $103 & 7; + $105 = ($104|0)!=(0); + $106 = $_vlen; + $107 = ($106|0)!=(0); + $108 = $105 ? $107 : 0; + if (!($108)) { + break; + } + $109 = $_vset; + $110 = $_vptr; + HEAP8[$110>>0] = $109; + $111 = $_vptr; + $112 = ((($111)) + 1|0); + $_vptr = $112; + $113 = $_vlen; + $114 = (($113) + -1)|0; + $_vlen = $114; + } + $115 = $_vlen; + $116 = ($115>>>0)<(8); + if (!($116)) { + $117 = $_vset_long; + $118 = $117; + $119 = HEAP32[$118>>2]|0; + $120 = (($117) + 4)|0; + $121 = $120; + $122 = HEAP32[$121>>2]|0; + $123 = (___muldi3(($119|0),($122|0),16843009,16843009)|0); + $124 = tempRet0; + $125 = $_vset_long; + $126 = $125; + HEAP32[$126>>2] = $123; + $127 = (($125) + 4)|0; + $128 = $127; + HEAP32[$128>>2] = $124; + while(1) { + $129 = $_vptr; + $_vptr_long = $129; + $130 = $_vset_long; + $131 = $130; + $132 = HEAP32[$131>>2]|0; + $133 = (($130) + 4)|0; + $134 = $133; + $135 = HEAP32[$134>>2]|0; + $136 = $_vptr_long; + $137 = $136; + $138 = $137; + HEAP32[$138>>2] = $132; + $139 = (($137) + 4)|0; + $140 = $139; + HEAP32[$140>>2] = $135; + $141 = $_vlen; + $142 = (($141) - 8)|0; + $_vlen = $142; + $143 = $_vptr; + $144 = ((($143)) + 8|0); + $_vptr = $144; + $145 = $_vlen; + $146 = ($145>>>0)>=(8); + if (!($146)) { + break; + } + } + } + while(1) { + $147 = $_vlen; + $148 = ($147|0)!=(0); + if (!($148)) { + break; + } + $149 = $_vset; + $150 = $_vptr; + HEAP8[$150>>0] = $149; + $151 = $_vptr; + $152 = ((($151)) + 1|0); + $_vptr = $152; + $153 = $_vlen; + $154 = (($153) + -1)|0; + $_vlen = $154; + } + $155 = $nbytes; + $156 = $1; + $157 = (($156) + ($155)|0); + $1 = $157; + $158 = $nbytes; + $159 = $2; + $160 = (($159) - ($158))|0; + $2 = $160; + } + if ((label|0) == 22) { + __gcry_fips_signal_error(51421,502,51929,0,52098); + $0 = -1; + $161 = $0; + STACKTOP = sp;return ($161|0); + } + else if ((label|0) == 33) { + $0 = 0; + $161 = $0; + STACKTOP = sp;return ($161|0); + } + return (0)|0; +} +function _x931_get_dt($buffer,$length,$rng_ctx) { + $buffer = $buffer|0; + $length = $length|0; + $rng_ctx = $rng_ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $tv = 0, $usec = 0, $vararg_buffer = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $tv = sp + 8|0; + $0 = $buffer; + $1 = $length; + $2 = $rng_ctx; + $3 = $1; + $4 = ($3|0)==(16); + if (!($4)) { + __gcry_assert_failed(51862,51421,273,52013); + // unreachable; + } + $5 = HEAP32[17758]|0; + $6 = ($5|0)!=(0); + if (!($6)) { + __gcry_assert_failed(51613,51421,274,52013); + // unreachable; + } + $7 = $2; + $8 = ((($7)) + 52|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + $11 = $2; + $12 = HEAP32[17760]|0; + $13 = ($11|0)!=($12|0); + if ($13) { + $14 = $2; + $15 = HEAP32[17761]|0; + $16 = ($14|0)!=($15|0); + if ($16) { + $17 = $2; + $18 = HEAP32[17762]|0; + $19 = ($17|0)!=($18|0); + if ($19) { + $20 = $0; + $21 = $2; + $22 = ((($21)) + 52|0); + $23 = HEAP32[$22>>2]|0; + dest=$20; src=$23; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $24 = $2; + $25 = ((($24)) + 56|0); + $26 = HEAP32[$25>>2]|0; + $27 = $26 >>> 24; + $28 = $27&255; + $29 = $0; + $30 = ((($29)) + 12|0); + HEAP8[$30>>0] = $28; + $31 = $2; + $32 = ((($31)) + 56|0); + $33 = HEAP32[$32>>2]|0; + $34 = $33 >>> 16; + $35 = $34&255; + $36 = $0; + $37 = ((($36)) + 13|0); + HEAP8[$37>>0] = $35; + $38 = $2; + $39 = ((($38)) + 56|0); + $40 = HEAP32[$39>>2]|0; + $41 = $40 >>> 8; + $42 = $41&255; + $43 = $0; + $44 = ((($43)) + 14|0); + HEAP8[$44>>0] = $42; + $45 = $2; + $46 = ((($45)) + 56|0); + $47 = HEAP32[$46>>2]|0; + $48 = $47&255; + $49 = $0; + $50 = ((($49)) + 15|0); + HEAP8[$50>>0] = $48; + $51 = $2; + $52 = ((($51)) + 56|0); + $53 = HEAP32[$52>>2]|0; + $54 = (($53) + 1)|0; + HEAP32[$52>>2] = $54; + STACKTOP = sp;return; + } + } + } + } + $55 = HEAP32[17766]|0; + $56 = ($55|0)!=(0); + if (!($56)) { + $57 = (_getpid()|0); + HEAP32[17767] = $57; + $58 = (_getppid()|0); + HEAP32[17768] = $58; + } + $59 = (_gettimeofday(($tv|0),(0|0))|0); + $60 = ($59|0)!=(0); + if ($60) { + $61 = (___errno_location()|0); + $62 = HEAP32[$61>>2]|0; + $63 = (_strerror($62)|0); + HEAP32[$vararg_buffer>>2] = $63; + __gcry_log_fatal(52025,$vararg_buffer); + // unreachable; + } + $64 = ((($tv)) + 4|0); + $65 = HEAP32[$64>>2]|0; + $usec = $65; + $66 = $usec; + $67 = $66 << 4; + $usec = $67; + $68 = HEAP32[$tv>>2]|0; + $69 = HEAP32[17766]|0; + $70 = ($68|0)==($69|0); + if ($70) { + $71 = $usec; + $72 = HEAP32[17769]|0; + $73 = ($71|0)==($72|0); + if ($73) { + $74 = HEAP16[35838]|0; + $75 = (($74) + 1)<<16>>16; + HEAP16[35838] = $75; + $76 = HEAP16[35838]|0; + $77 = $76&65535; + $78 = $77 & 4095; + $79 = $78&65535; + HEAP16[35838] = $79; + } else { + label = 17; + } + } else { + label = 17; + } + if ((label|0) == 17) { + HEAP16[35838] = 0; + $80 = HEAP32[$tv>>2]|0; + HEAP32[17766] = $80; + $81 = $usec; + HEAP32[17769] = $81; + } + $82 = HEAP32[$tv>>2]|0; + $83 = $82 >> 24; + $84 = $83 & 255; + $85 = $84&255; + $86 = $0; + HEAP8[$86>>0] = $85; + $87 = HEAP32[$tv>>2]|0; + $88 = $87 >> 16; + $89 = $88 & 255; + $90 = $89&255; + $91 = $0; + $92 = ((($91)) + 1|0); + HEAP8[$92>>0] = $90; + $93 = HEAP32[$tv>>2]|0; + $94 = $93 >> 8; + $95 = $94 & 255; + $96 = $95&255; + $97 = $0; + $98 = ((($97)) + 2|0); + HEAP8[$98>>0] = $96; + $99 = HEAP32[$tv>>2]|0; + $100 = $99 & 255; + $101 = $100&255; + $102 = $0; + $103 = ((($102)) + 3|0); + HEAP8[$103>>0] = $101; + $104 = $usec; + $105 = $104 >>> 16; + $106 = $105 & 255; + $107 = $106&255; + $108 = $0; + $109 = ((($108)) + 4|0); + HEAP8[$109>>0] = $107; + $110 = $usec; + $111 = $110 >>> 8; + $112 = $111 & 255; + $113 = $112&255; + $114 = $0; + $115 = ((($114)) + 5|0); + HEAP8[$115>>0] = $113; + $116 = $usec; + $117 = $116 & 240; + $118 = HEAP16[35838]|0; + $119 = $118&65535; + $120 = $119 >> 8; + $121 = $120 & 15; + $122 = $117 | $121; + $123 = $122&255; + $124 = $0; + $125 = ((($124)) + 6|0); + HEAP8[$125>>0] = $123; + $126 = HEAP16[35838]|0; + $127 = $126&65535; + $128 = $127 & 255; + $129 = $128&255; + $130 = $0; + $131 = ((($130)) + 7|0); + HEAP8[$131>>0] = $129; + $132 = HEAP32[17767]|0; + $133 = $132 >>> 24; + $134 = $133 & 255; + $135 = $134&255; + $136 = $0; + $137 = ((($136)) + 8|0); + HEAP8[$137>>0] = $135; + $138 = HEAP32[17767]|0; + $139 = $138 >>> 16; + $140 = $139 & 255; + $141 = $140&255; + $142 = $0; + $143 = ((($142)) + 9|0); + HEAP8[$143>>0] = $141; + $144 = HEAP32[17767]|0; + $145 = $144 >>> 8; + $146 = $145 & 255; + $147 = $146&255; + $148 = $0; + $149 = ((($148)) + 10|0); + HEAP8[$149>>0] = $147; + $150 = HEAP32[17767]|0; + $151 = $150 & 255; + $152 = $151&255; + $153 = $0; + $154 = ((($153)) + 11|0); + HEAP8[$154>>0] = $152; + $155 = HEAP32[17768]|0; + $156 = $155 >>> 24; + $157 = $156 & 255; + $158 = $157&255; + $159 = $0; + $160 = ((($159)) + 12|0); + HEAP8[$160>>0] = $158; + $161 = HEAP32[17768]|0; + $162 = $161 >>> 16; + $163 = $162 & 255; + $164 = $163&255; + $165 = $0; + $166 = ((($165)) + 13|0); + HEAP8[$166>>0] = $164; + $167 = HEAP32[17768]|0; + $168 = $167 >>> 8; + $169 = $168 & 255; + $170 = $169&255; + $171 = $0; + $172 = ((($171)) + 14|0); + HEAP8[$172>>0] = $170; + $173 = HEAP32[17768]|0; + $174 = $173 & 255; + $175 = $174&255; + $176 = $0; + $177 = ((($176)) + 15|0); + HEAP8[$177>>0] = $175; + $178 = HEAP32[17768]|0; + $179 = (($178) + 1)|0; + HEAP32[17768] = $179; + $180 = ($179|0)!=(0); + if ($180) { + STACKTOP = sp;return; + } + $181 = HEAP32[17767]|0; + $182 = (($181) + 1)|0; + HEAP32[17767] = $182; + STACKTOP = sp;return; +} +function _x931_aes($result_R,$datetime_DT,$seed_V,$key,$intermediate_I,$temp_xor) { + $result_R = $result_R|0; + $datetime_DT = $datetime_DT|0; + $seed_V = $seed_V|0; + $key = $key|0; + $intermediate_I = $intermediate_I|0; + $temp_xor = $temp_xor|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $_vlen = 0, $_vlen2 = 0, $_vptr = 0, $_vptr1 = 0, $_vptr_long = 0, $_vptr_long5 = 0, $_vset = 0, $_vset3 = 0, $_vset_long = 0, $_vset_long4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $_vset_long = sp + 8|0; + $_vset_long4 = sp; + $0 = $result_R; + $1 = $datetime_DT; + $2 = $seed_V; + $3 = $key; + $4 = $intermediate_I; + $5 = $temp_xor; + $6 = $3; + $7 = $4; + $8 = $1; + _encrypt_aes($6,$7,$8,16); + $9 = $5; + $10 = $4; + $11 = $2; + _xor_buffer($9,$10,$11,16); + $12 = $3; + $13 = $0; + $14 = $5; + _encrypt_aes($12,$13,$14,16); + $15 = $5; + $16 = $0; + $17 = $4; + _xor_buffer($15,$16,$17,16); + $18 = $3; + $19 = $2; + $20 = $5; + _encrypt_aes($18,$19,$20,16); + $21 = $4; + $_vptr = $21; + $_vlen = 16; + $_vset = 0; + $22 = $_vset; + $23 = $22&255; + $24 = $_vset_long; + $25 = $24; + HEAP32[$25>>2] = $23; + $26 = (($24) + 4)|0; + $27 = $26; + HEAP32[$27>>2] = 0; + while(1) { + $28 = $_vptr; + $29 = $28; + $30 = $29 & 7; + $31 = ($30|0)!=(0); + $32 = $_vlen; + $33 = ($32|0)!=(0); + $34 = $31 ? $33 : 0; + if (!($34)) { + break; + } + $35 = $_vset; + $36 = $_vptr; + HEAP8[$36>>0] = $35; + $37 = $_vptr; + $38 = ((($37)) + 1|0); + $_vptr = $38; + $39 = $_vlen; + $40 = (($39) + -1)|0; + $_vlen = $40; + } + $41 = $_vlen; + $42 = ($41>>>0)<(8); + if (!($42)) { + $43 = $_vset_long; + $44 = $43; + $45 = HEAP32[$44>>2]|0; + $46 = (($43) + 4)|0; + $47 = $46; + $48 = HEAP32[$47>>2]|0; + $49 = (___muldi3(($45|0),($48|0),16843009,16843009)|0); + $50 = tempRet0; + $51 = $_vset_long; + $52 = $51; + HEAP32[$52>>2] = $49; + $53 = (($51) + 4)|0; + $54 = $53; + HEAP32[$54>>2] = $50; + while(1) { + $55 = $_vptr; + $_vptr_long = $55; + $56 = $_vset_long; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = (($56) + 4)|0; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = $_vptr_long; + $63 = $62; + $64 = $63; + HEAP32[$64>>2] = $58; + $65 = (($63) + 4)|0; + $66 = $65; + HEAP32[$66>>2] = $61; + $67 = $_vlen; + $68 = (($67) - 8)|0; + $_vlen = $68; + $69 = $_vptr; + $70 = ((($69)) + 8|0); + $_vptr = $70; + $71 = $_vlen; + $72 = ($71>>>0)>=(8); + if (!($72)) { + break; + } + } + } + while(1) { + $73 = $_vlen; + $74 = ($73|0)!=(0); + if (!($74)) { + break; + } + $75 = $_vset; + $76 = $_vptr; + HEAP8[$76>>0] = $75; + $77 = $_vptr; + $78 = ((($77)) + 1|0); + $_vptr = $78; + $79 = $_vlen; + $80 = (($79) + -1)|0; + $_vlen = $80; + } + $81 = $5; + $_vptr1 = $81; + $_vlen2 = 16; + $_vset3 = 0; + $82 = $_vset3; + $83 = $82&255; + $84 = $_vset_long4; + $85 = $84; + HEAP32[$85>>2] = $83; + $86 = (($84) + 4)|0; + $87 = $86; + HEAP32[$87>>2] = 0; + while(1) { + $88 = $_vptr1; + $89 = $88; + $90 = $89 & 7; + $91 = ($90|0)!=(0); + $92 = $_vlen2; + $93 = ($92|0)!=(0); + $94 = $91 ? $93 : 0; + if (!($94)) { + break; + } + $95 = $_vset3; + $96 = $_vptr1; + HEAP8[$96>>0] = $95; + $97 = $_vptr1; + $98 = ((($97)) + 1|0); + $_vptr1 = $98; + $99 = $_vlen2; + $100 = (($99) + -1)|0; + $_vlen2 = $100; + } + $101 = $_vlen2; + $102 = ($101>>>0)<(8); + if (!($102)) { + $103 = $_vset_long4; + $104 = $103; + $105 = HEAP32[$104>>2]|0; + $106 = (($103) + 4)|0; + $107 = $106; + $108 = HEAP32[$107>>2]|0; + $109 = (___muldi3(($105|0),($108|0),16843009,16843009)|0); + $110 = tempRet0; + $111 = $_vset_long4; + $112 = $111; + HEAP32[$112>>2] = $109; + $113 = (($111) + 4)|0; + $114 = $113; + HEAP32[$114>>2] = $110; + while(1) { + $115 = $_vptr1; + $_vptr_long5 = $115; + $116 = $_vset_long4; + $117 = $116; + $118 = HEAP32[$117>>2]|0; + $119 = (($116) + 4)|0; + $120 = $119; + $121 = HEAP32[$120>>2]|0; + $122 = $_vptr_long5; + $123 = $122; + $124 = $123; + HEAP32[$124>>2] = $118; + $125 = (($123) + 4)|0; + $126 = $125; + HEAP32[$126>>2] = $121; + $127 = $_vlen2; + $128 = (($127) - 8)|0; + $_vlen2 = $128; + $129 = $_vptr1; + $130 = ((($129)) + 8|0); + $_vptr1 = $130; + $131 = $_vlen2; + $132 = ($131>>>0)>=(8); + if (!($132)) { + break; + } + } + } + while(1) { + $133 = $_vlen2; + $134 = ($133|0)!=(0); + if (!($134)) { + break; + } + $135 = $_vset3; + $136 = $_vptr1; + HEAP8[$136>>0] = $135; + $137 = $_vptr1; + $138 = ((($137)) + 1|0); + $_vptr1 = $138; + $139 = $_vlen2; + $140 = (($139) + -1)|0; + $_vlen2 = $140; + } + STACKTOP = sp;return; +} +function _encrypt_aes($key,$output,$input,$length) { + $key = $key|0; + $output = $output|0; + $input = $input|0; + $length = $length|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $err = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $key; + $1 = $output; + $2 = $input; + $3 = $length; + $4 = $3; + $5 = ($4|0)==(16); + if (!($5)) { + __gcry_assert_failed(51862,51421,386,52052); + // unreachable; + } + $6 = $0; + $7 = $1; + $8 = $3; + $9 = $2; + $10 = $3; + $11 = (__gcry_cipher_encrypt($6,$7,$8,$9,$10)|0); + $err = $11; + $12 = $err; + $13 = ($12|0)!=(0); + if ($13) { + $14 = $err; + $15 = (__gcry_strerror_2224($14)|0); + HEAP32[$vararg_buffer>>2] = $15; + __gcry_log_fatal(52064,$vararg_buffer); + // unreachable; + } else { + STACKTOP = sp;return; + } +} +function _xor_buffer($r,$a,$b,$length) { + $r = $r|0; + $a = $a|0; + $b = $b|0; + $length = $length|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $r; + $1 = $a; + $2 = $b; + $3 = $length; + while(1) { + $4 = $3; + $5 = ($4|0)!=(0); + if (!($5)) { + break; + } + $6 = $1; + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = $2; + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = $8 ^ $11; + $13 = $12&255; + $14 = $0; + HEAP8[$14>>0] = $13; + $15 = $3; + $16 = (($15) + -1)|0; + $3 = $16; + $17 = $1; + $18 = ((($17)) + 1|0); + $1 = $18; + $19 = $2; + $20 = ((($19)) + 1|0); + $2 = $20; + $21 = $0; + $22 = ((($21)) + 1|0); + $0 = $22; + } + STACKTOP = sp;return; +} +function __gcry_rngfips_create_nonce($buffer,$length) { + $buffer = $buffer|0; + $length = $length|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $buffer; + $1 = $length; + __gcry_rngfips_initialize(1); + _lock_rng(); + $2 = $0; + $3 = $1; + $4 = HEAP32[17760]|0; + _get_random($2,$3,$4); + _unlock_rng(); + STACKTOP = sp;return; +} +function __gcry_rngfips_selftest($report) { + $report = $report|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $buffer = 0, $ec = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $buffer = sp + 8|0; + $0 = $report; + __gcry_randomize($buffer,8,1); + $1 = $0; + $2 = (_selftest_kat($1)|0); + $ec = $2; + $3 = $ec; + $4 = (_gpg_error_2250($3)|0); + STACKTOP = sp;return ($4|0); +} +function _selftest_kat($report) { + $report = $report|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $errtxt = 0, $or$cond = 0, $rc = 0, $result = 0, $ridx = 0, $test_ctx = 0, $tvidx = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $result = sp + 24|0; + $0 = $report; + $errtxt = 0; + $1 = HEAP32[17759]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + __gcry_assert_failed(51983,51421,912,52167); + // unreachable; + } + $3 = (__gcry_xcalloc(1,68)|0); + $test_ctx = $3; + $4 = $test_ctx; + _setup_guards($4); + _lock_rng(); + $tvidx = 0; + L4: while(1) { + $5 = $tvidx; + $6 = ($5>>>0)<(3); + if (!($6)) { + break; + } + $7 = $test_ctx; + $8 = ((($7)) + 4|0); + $9 = (__gcry_cipher_open($8,7,1,1)|0); + $rc = $9; + $10 = $rc; + $11 = ($10|0)!=(0); + if ($11) { + label = 6; + break; + } + $12 = $test_ctx; + $13 = ((($12)) + 4|0); + $14 = HEAP32[$13>>2]|0; + $15 = $tvidx; + $16 = (52218 + (($15*96)|0)|0); + $17 = (__gcry_cipher_setkey($14,$16,16)|0); + $rc = $17; + $18 = $rc; + $19 = ($18|0)!=(0); + if ($19) { + label = 8; + break; + } + $20 = (_getpid()|0); + $21 = $test_ctx; + $22 = ((($21)) + 60|0); + HEAP32[$22>>2] = $20; + $23 = $test_ctx; + $24 = ((($23)) + 17|0); + $25 = $tvidx; + $26 = (52218 + (($25*96)|0)|0); + $27 = ((($26)) + 32|0); + dest=$24; src=$27; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $28 = $test_ctx; + $29 = ((($28)) + 8|0); + $30 = HEAP8[$29>>0]|0; + $31 = $30 & -2; + $32 = $31 | 1; + HEAP8[$29>>0] = $32; + $33 = (_getpid()|0); + $34 = $test_ctx; + $35 = ((($34)) + 64|0); + HEAP32[$35>>2] = $33; + $36 = $tvidx; + $37 = (52218 + (($36*96)|0)|0); + $38 = ((($37)) + 16|0); + $39 = $test_ctx; + $40 = ((($39)) + 52|0); + HEAP32[$40>>2] = $38; + $41 = $tvidx; + $42 = (52218 + (($41*96)|0)|0); + $43 = ((($42)) + 16|0); + $44 = ((($43)) + 12|0); + $45 = HEAP8[$44>>0]|0; + $46 = $45&255; + $47 = $46 << 24; + $48 = $tvidx; + $49 = (52218 + (($48*96)|0)|0); + $50 = ((($49)) + 16|0); + $51 = ((($50)) + 13|0); + $52 = HEAP8[$51>>0]|0; + $53 = $52&255; + $54 = $53 << 16; + $55 = $47 | $54; + $56 = $tvidx; + $57 = (52218 + (($56*96)|0)|0); + $58 = ((($57)) + 16|0); + $59 = ((($58)) + 14|0); + $60 = HEAP8[$59>>0]|0; + $61 = $60&255; + $62 = $61 << 8; + $63 = $55 | $62; + $64 = $tvidx; + $65 = (52218 + (($64*96)|0)|0); + $66 = ((($65)) + 16|0); + $67 = ((($66)) + 15|0); + $68 = HEAP8[$67>>0]|0; + $69 = $68&255; + $70 = $63 | $69; + $71 = $test_ctx; + $72 = ((($71)) + 56|0); + HEAP32[$72>>2] = $70; + $ridx = 0; + while(1) { + $73 = $ridx; + $74 = ($73|0)<(3); + if (!($74)) { + break; + } + $75 = $test_ctx; + $76 = (_x931_aes_driver($result,16,$75)|0); + $77 = ($76|0)!=(0); + if ($77) { + label = 12; + break L4; + } + $78 = $ridx; + $79 = $tvidx; + $80 = (52218 + (($79*96)|0)|0); + $81 = ((($80)) + 48|0); + $82 = (($81) + ($78<<4)|0); + $83 = (_memcmp($result,$82,16)|0); + $84 = ($83|0)!=(0); + if ($84) { + label = 14; + break L4; + } + $85 = $ridx; + $86 = (($85) + 1)|0; + $ridx = $86; + } + $87 = $test_ctx; + $88 = ((($87)) + 60|0); + $89 = HEAP32[$88>>2]|0; + $90 = (_getpid()|0); + $91 = ($89|0)!=($90|0); + if ($91) { + label = 18; + break; + } + $92 = $test_ctx; + $93 = ((($92)) + 64|0); + $94 = HEAP32[$93>>2]|0; + $95 = (_getpid()|0); + $96 = ($94|0)!=($95|0); + if ($96) { + label = 18; + break; + } + $97 = $test_ctx; + $98 = ((($97)) + 4|0); + $99 = HEAP32[$98>>2]|0; + __gcry_cipher_close($99); + $100 = $test_ctx; + $101 = ((($100)) + 4|0); + HEAP32[$101>>2] = 0; + $102 = $test_ctx; + $103 = ((($102)) + 8|0); + $104 = HEAP8[$103>>0]|0; + $105 = $104 & -2; + HEAP8[$103>>0] = $105; + $106 = $test_ctx; + _check_guards($106); + $107 = $tvidx; + $108 = (($107) + 1)|0; + $tvidx = $108; + } + if ((label|0) == 6) { + $errtxt = 52180; + } + else if ((label|0) == 8) { + $errtxt = 52506; + } + else if ((label|0) == 12) { + $errtxt = 52532; + } + else if ((label|0) == 14) { + $errtxt = 52563; + } + else if ((label|0) == 18) { + $errtxt = 52601; + } + _unlock_rng(); + $109 = $test_ctx; + $110 = ((($109)) + 4|0); + $111 = HEAP32[$110>>2]|0; + __gcry_cipher_close($111); + $112 = $test_ctx; + _check_guards($112); + $113 = $test_ctx; + __gcry_free($113); + $114 = $0; + $115 = ($114|0)!=(0|0); + $116 = $errtxt; + $117 = ($116|0)!=(0|0); + $or$cond = $115 & $117; + if (!($or$cond)) { + $120 = $errtxt; + $121 = ($120|0)!=(0|0); + $122 = $121 ? 50 : 0; + STACKTOP = sp;return ($122|0); + } + $118 = $0; + $119 = $errtxt; + FUNCTION_TABLE_viiii[$118 & 63](52623,0,52630,$119); + $120 = $errtxt; + $121 = ($120|0)!=(0|0); + $122 = $121 ? 50 : 0; + STACKTOP = sp;return ($122|0); +} +function _gpg_error_2250($code) { + $code = $code|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $code; + $1 = $0; + $2 = (_gpg_err_make_2251(1,$1)|0); + STACKTOP = sp;return ($2|0); +} +function _gpg_err_make_2251($source,$code) { + $source = $source|0; + $code = $code|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $source; + $1 = $code; + $2 = $1; + $3 = ($2|0)==(0); + if ($3) { + $10 = 0; + STACKTOP = sp;return ($10|0); + } + $4 = $0; + $5 = $4 & 127; + $6 = $5 << 24; + $7 = $1; + $8 = $7 & 65535; + $9 = $6 | $8; + $10 = $9; + STACKTOP = sp;return ($10|0); +} +function __gcry_rngfips_init_external_test($r_context,$flags,$key,$keylen,$seed,$seedlen,$dt,$dtlen) { + $r_context = $r_context|0; + $flags = $flags|0; + $key = $key|0; + $keylen = $keylen|0; + $seed = $seed|0; + $seedlen = $seedlen|0; + $dt = $dt|0; + $dtlen = $dtlen|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $12 = 0, $13 = 0; + var $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $or$cond = 0, $or$cond$not = 0, $or$cond11 = 0, $or$cond3 = 0, $or$cond3$not = 0, $or$cond5 = 0; + var $or$cond5$not = 0, $or$cond7 = 0, $or$cond7$not = 0, $or$cond9 = 0, $or$cond9$not = 0, $rc = 0, $test_ctx = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $r_context; + $2 = $flags; + $3 = $key; + $4 = $keylen; + $5 = $seed; + $6 = $seedlen; + $7 = $dt; + $8 = $dtlen; + __gcry_rngfips_initialize(1); + $9 = $1; + $10 = ($9|0)!=(0|0); + $11 = $3; + $12 = ($11|0)!=(0|0); + $or$cond = $10 & $12; + $or$cond$not = $or$cond ^ 1; + $13 = $4; + $14 = ($13|0)!=(16); + $or$cond3 = $or$cond$not | $14; + $or$cond3$not = $or$cond3 ^ 1; + $15 = $5; + $16 = ($15|0)!=(0|0); + $or$cond5 = $or$cond3$not & $16; + $or$cond5$not = $or$cond5 ^ 1; + $17 = $6; + $18 = ($17|0)!=(16); + $or$cond7 = $or$cond5$not | $18; + $or$cond7$not = $or$cond7 ^ 1; + $19 = $7; + $20 = ($19|0)!=(0|0); + $or$cond9 = $or$cond7$not & $20; + $or$cond9$not = $or$cond9 ^ 1; + $21 = $8; + $22 = ($21|0)!=(16); + $or$cond11 = $or$cond9$not | $22; + if ($or$cond11) { + $0 = 45; + $113 = $0; + STACKTOP = sp;return ($113|0); + } + $23 = $8; + $24 = (68 + ($23))|0; + $25 = (__gcry_calloc(1,$24)|0); + $test_ctx = $25; + $26 = $test_ctx; + $27 = ($26|0)!=(0|0); + if (!($27)) { + $28 = (_gpg_err_code_from_syserror()|0); + $0 = $28; + $113 = $0; + STACKTOP = sp;return ($113|0); + } + $29 = $test_ctx; + _setup_guards($29); + $30 = $test_ctx; + $31 = ((($30)) + 4|0); + $32 = (__gcry_cipher_open($31,7,1,1)|0); + $rc = $32; + $33 = $rc; + $34 = ($33|0)!=(0); + if (!($34)) { + $35 = $test_ctx; + $36 = ((($35)) + 4|0); + $37 = HEAP32[$36>>2]|0; + $38 = $3; + $39 = $4; + $40 = (__gcry_cipher_setkey($37,$38,$39)|0); + $rc = $40; + $41 = $rc; + $42 = ($41|0)!=(0); + if (!($42)) { + $43 = (_getpid()|0); + $44 = $test_ctx; + $45 = ((($44)) + 60|0); + HEAP32[$45>>2] = $43; + $46 = $test_ctx; + $47 = ((($46)) + 17|0); + $48 = $5; + $49 = $6; + _memcpy(($47|0),($48|0),($49|0))|0; + $50 = $test_ctx; + $51 = ((($50)) + 8|0); + $52 = HEAP8[$51>>0]|0; + $53 = $52 & -2; + $54 = $53 | 1; + HEAP8[$51>>0] = $54; + $55 = (_getpid()|0); + $56 = $test_ctx; + $57 = ((($56)) + 64|0); + HEAP32[$57>>2] = $55; + $58 = $test_ctx; + $59 = ((($58)) + 68|0); + $60 = $7; + $61 = $8; + _memcpy(($59|0),($60|0),($61|0))|0; + $62 = $test_ctx; + $63 = ((($62)) + 68|0); + $64 = $test_ctx; + $65 = ((($64)) + 52|0); + HEAP32[$65>>2] = $63; + $66 = $test_ctx; + $67 = ((($66)) + 52|0); + $68 = HEAP32[$67>>2]|0; + $69 = ((($68)) + 12|0); + $70 = HEAP8[$69>>0]|0; + $71 = $70&255; + $72 = $71 << 24; + $73 = $test_ctx; + $74 = ((($73)) + 52|0); + $75 = HEAP32[$74>>2]|0; + $76 = ((($75)) + 13|0); + $77 = HEAP8[$76>>0]|0; + $78 = $77&255; + $79 = $78 << 16; + $80 = $72 | $79; + $81 = $test_ctx; + $82 = ((($81)) + 52|0); + $83 = HEAP32[$82>>2]|0; + $84 = ((($83)) + 14|0); + $85 = HEAP8[$84>>0]|0; + $86 = $85&255; + $87 = $86 << 8; + $88 = $80 | $87; + $89 = $test_ctx; + $90 = ((($89)) + 52|0); + $91 = HEAP32[$90>>2]|0; + $92 = ((($91)) + 15|0); + $93 = HEAP8[$92>>0]|0; + $94 = $93&255; + $95 = $88 | $94; + $96 = $test_ctx; + $97 = ((($96)) + 56|0); + HEAP32[$97>>2] = $95; + $98 = $2; + $99 = $98 & 1; + $100 = ($99|0)!=(0); + if ($100) { + $101 = $test_ctx; + $102 = ((($101)) + 51|0); + HEAP8[$102>>0] = 1; + } + $103 = $test_ctx; + _check_guards($103); + $rc = 0; + } + } + $104 = $rc; + $105 = ($104|0)!=(0); + $106 = $test_ctx; + if ($105) { + $107 = ((($106)) + 4|0); + $108 = HEAP32[$107>>2]|0; + __gcry_cipher_close($108); + $109 = $test_ctx; + __gcry_free($109); + $110 = $1; + HEAP32[$110>>2] = 0; + } else { + $111 = $1; + HEAP32[$111>>2] = $106; + } + $112 = $rc; + $0 = $112; + $113 = $0; + STACKTOP = sp;return ($113|0); +} +function __gcry_rngfips_run_external_test($context,$buffer,$buflen) { + $context = $context|0; + $buffer = $buffer|0; + $buflen = $buflen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $or$cond$not = 0, $or$cond3 = 0, $test_ctx = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $context; + $2 = $buffer; + $3 = $buflen; + $4 = $1; + $test_ctx = $4; + $5 = $test_ctx; + $6 = ($5|0)!=(0|0); + $7 = $2; + $8 = ($7|0)!=(0|0); + $or$cond = $6 & $8; + $or$cond$not = $or$cond ^ 1; + $9 = $3; + $10 = ($9|0)!=(16); + $or$cond3 = $or$cond$not | $10; + if ($or$cond3) { + $0 = 45; + $14 = $0; + STACKTOP = sp;return ($14|0); + } else { + _lock_rng(); + $11 = $2; + $12 = $3; + $13 = $test_ctx; + _get_random($11,$12,$13); + _unlock_rng(); + $0 = 0; + $14 = $0; + STACKTOP = sp;return ($14|0); + } + return (0)|0; +} +function __gcry_rngfips_deinit_external_test($context) { + $context = $context|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $test_ctx = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $context; + $1 = $0; + $test_ctx = $1; + $2 = $test_ctx; + $3 = ($2|0)!=(0|0); + if (!($3)) { + STACKTOP = sp;return; + } + $4 = $test_ctx; + $5 = ((($4)) + 4|0); + $6 = HEAP32[$5>>2]|0; + __gcry_cipher_close($6); + $7 = $test_ctx; + __gcry_free($7); + STACKTOP = sp;return; +} +function __gcry_rngsystem_initialize($full) { + $full = $full|0; + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $full; + _basic_initialization_2260(); + STACKTOP = sp;return; +} +function _basic_initialization_2260() { + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP32[17770]|0; + $1 = ($0|0)!=(0); + if ($1) { + return; + } + HEAP32[17770] = 1; + HEAP32[17771] = 0; + return; +} +function __gcry_rngsystem_close_fds() { + var label = 0, sp = 0; + sp = STACKTOP; + _lock_rng_2264(); + (__gcry_rndlinux_gather_random(0,0,0,0)|0); + _unlock_rng_2266(); + return; +} +function _lock_rng_2264() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = (_gpgrt_lock_lock(13052)|0); + $rc = $0; + $1 = $rc; + $2 = ($1|0)!=(0); + if ($2) { + $3 = $rc; + $4 = (_gpg_strerror($3)|0); + HEAP32[$vararg_buffer>>2] = $4; + __gcry_log_fatal(52634,$vararg_buffer); + // unreachable; + } else { + HEAP32[17771] = 1; + STACKTOP = sp;return; + } +} +function _unlock_rng_2266() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + HEAP32[17771] = 0; + $0 = (_gpgrt_lock_unlock(13052)|0); + $rc = $0; + $1 = $rc; + $2 = ($1|0)!=(0); + if ($2) { + $3 = $rc; + $4 = (_gpg_strerror($3)|0); + HEAP32[$vararg_buffer>>2] = $4; + __gcry_log_fatal(52677,$vararg_buffer); + // unreachable; + } else { + STACKTOP = sp;return; + } +} +function __gcry_rngsystem_randomize($buffer,$length,$level) { + $buffer = $buffer|0; + $length = $length|0; + $level = $level|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $buffer; + $1 = $length; + $2 = $level; + __gcry_rngsystem_initialize(1); + $3 = $2; + $4 = ($3|0)!=(2); + if ($4) { + $2 = 1; + } + _lock_rng_2264(); + $5 = $0; + $6 = $1; + $7 = $2; + _get_random_2270($5,$6,$7); + _unlock_rng_2266(); + STACKTOP = sp;return; +} +function _get_random_2270($buffer,$length,$level) { + $buffer = $buffer|0; + $length = $length|0; + $level = $level|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = $buffer; + $1 = $length; + $2 = $level; + $3 = $0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + __gcry_assert_failed(52720,52727,144,52743); + // unreachable; + } + $5 = $0; + HEAP32[17772] = $5; + $6 = $1; + HEAP32[17773] = $6; + HEAP32[17774] = 0; + $7 = $1; + $8 = $2; + $9 = (__gcry_rndlinux_gather_random(83,0,$7,$8)|0); + $rc = $9; + $10 = $rc; + $11 = ($10|0)<(0); + if ($11) { + $15 = $rc; + HEAP32[$vararg_buffer>>2] = $15; + __gcry_log_fatal(52798,$vararg_buffer); + // unreachable; + } + $12 = HEAP32[17774]|0; + $13 = HEAP32[17773]|0; + $14 = ($12|0)!=($13|0); + if ($14) { + $15 = $rc; + HEAP32[$vararg_buffer>>2] = $15; + __gcry_log_fatal(52798,$vararg_buffer); + // unreachable; + } else { + STACKTOP = sp;return; + } +} +function _read_cb($buffer,$length,$origin) { + $buffer = $buffer|0; + $length = $length|0; + $origin = $origin|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $buffer; + $1 = $length; + $2 = $origin; + $3 = $0; + $p = $3; + $4 = HEAP32[17771]|0; + $5 = ($4|0)!=(0); + if (!($5)) { + __gcry_assert_failed(52754,52727,124,52775); + // unreachable; + } + $6 = HEAP32[17772]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + __gcry_assert_failed(52783,52727,125,52775); + // unreachable; + } + while(1) { + $8 = $1; + $9 = (($8) + -1)|0; + $1 = $9; + $10 = ($8|0)!=(0); + if (!($10)) { + label = 8; + break; + } + $11 = HEAP32[17774]|0; + $12 = HEAP32[17773]|0; + $13 = ($11>>>0)<($12>>>0); + if (!($13)) { + label = 8; + break; + } + $14 = $p; + $15 = ((($14)) + 1|0); + $p = $15; + $16 = HEAP8[$14>>0]|0; + $17 = HEAP32[17774]|0; + $18 = (($17) + 1)|0; + HEAP32[17774] = $18; + $19 = HEAP32[17772]|0; + $20 = (($19) + ($17)|0); + HEAP8[$20>>0] = $16; + } + if ((label|0) == 8) { + STACKTOP = sp;return; + } +} +function __gcry_rndhw_failed_p() { + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP32[17775]|0; + return ($0|0); +} +function __gcry_rndhw_poll_fast($add,$origin) { + $add = $add|0; + $origin = $origin|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $add; + $1 = $origin; + STACKTOP = sp;return; +} +function __gcry_rndhw_poll_slow($add,$origin) { + $add = $add|0; + $origin = $origin|0; + var $0 = 0, $1 = 0, $2 = 0, $nbytes = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $add; + $1 = $origin; + $nbytes = 0; + $2 = $nbytes; + STACKTOP = sp;return ($2|0); +} +function __gcry_rndlinux_gather_random($add,$origin,$length,$level) { + $add = $add|0; + $origin = $origin|0; + $length = $length|0; + $level = $level|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $__b = 0, $__i = 0, $_vlen = 0, $_vptr = 0, $_vptr_long = 0, $_vset = 0, $_vset_long = 0, $any_need_entropy = 0; + var $buffer = 0, $delay = 0, $fd = 0, $last_so_far = 0, $n = 0, $n_hw = 0, $nbytes = 0, $rc = 0, $rfds = 0, $tv = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer4 = 0, $want = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 1024|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer4 = sp + 24|0; + $vararg_buffer1 = sp + 16|0; + $vararg_buffer = sp + 8|0; + $buffer = sp + 248|0; + $rfds = sp + 64|0; + $tv = sp + 56|0; + $_vset_long = sp; + $1 = $add; + $2 = $origin; + $3 = $length; + $4 = $level; + $5 = $3; + $want = $5; + $last_so_far = 0; + $any_need_entropy = 0; + $6 = $1; + $7 = ($6|0)!=(0|0); + if (!($7)) { + $8 = HEAP32[3274]|0; + $9 = ($8|0)!=(-1); + if ($9) { + $10 = HEAP32[3274]|0; + (_close($10)|0); + HEAP32[3274] = -1; + } + $11 = HEAP32[3275]|0; + $12 = ($11|0)!=(-1); + if ($12) { + $13 = HEAP32[3275]|0; + (_close($13)|0); + HEAP32[3275] = -1; + } + $0 = 0; + $191 = $0; + STACKTOP = sp;return ($191|0); + } + $14 = $1; + $15 = $2; + $16 = (__gcry_rndhw_poll_slow($14,$15)|0); + $n_hw = $16; + $17 = $n_hw; + $18 = $3; + $19 = (($18>>>0) / 2)&-1; + $20 = ($17>>>0)>($19>>>0); + if ($20) { + $21 = $3; + $22 = (($21>>>0) / 2)&-1; + $n_hw = $22; + } + $23 = $3; + $24 = ($23>>>0)>(1); + if ($24) { + $25 = $n_hw; + $26 = $3; + $27 = (($26) - ($25))|0; + $3 = $27; + } + $28 = $4; + $29 = ($28|0)>=(2); + if ($29) { + $30 = HEAP32[3274]|0; + $31 = ($30|0)==(-1); + if ($31) { + $32 = HEAP8[76542]|0; + $33 = $32&255; + $34 = $33 & 1; + $35 = (_open_device(52844,$34)|0); + HEAP32[3274] = $35; + $36 = HEAP8[76542]|0; + $37 = $36&255; + $38 = $37 | 1; + $39 = $38&255; + HEAP8[76542] = $39; + } + $40 = HEAP32[3274]|0; + $fd = $40; + } else { + $41 = HEAP32[3275]|0; + $42 = ($41|0)==(-1); + if ($42) { + $43 = HEAP8[76542]|0; + $44 = $43&255; + $45 = $44 & 2; + $46 = (_open_device(52946,$45)|0); + HEAP32[3275] = $46; + $47 = HEAP8[76542]|0; + $48 = $47&255; + $49 = $48 | 2; + $50 = $49&255; + HEAP8[76542] = $50; + } + $51 = HEAP32[3275]|0; + $fd = $51; + } + $delay = 0; + while(1) { + $52 = $3; + $53 = ($52|0)!=(0); + if (!($53)) { + break; + } + $54 = $any_need_entropy; + $55 = ($54|0)!=(0); + if ($55) { + label = 22; + } else { + $56 = $last_so_far; + $57 = $want; + $58 = $3; + $59 = (($57) - ($58))|0; + $60 = ($56|0)!=($59|0); + if ($60) { + label = 22; + } + } + if ((label|0) == 22) { + label = 0; + $61 = $want; + $62 = $3; + $63 = (($61) - ($62))|0; + $last_so_far = $63; + $64 = $last_so_far; + $65 = $want; + __gcry_random_progress(52959,88,$64,$65); + $any_need_entropy = 1; + } + $66 = $fd; + $67 = ($66|0)<(1024); + if ($67) { + $__b = $rfds; + $__i = 32; + while(1) { + $68 = $__i; + $69 = ($68|0)!=(0); + if (!($69)) { + break; + } + $70 = $__b; + $71 = ((($70)) + 4|0); + $__b = $71; + HEAP32[$70>>2] = 0; + $72 = $__i; + $73 = (($72) + -1)|0; + $__i = $73; + } + $74 = $fd; + $75 = (($74>>>0) % 32)&-1; + $76 = 1 << $75; + $77 = $fd; + $78 = (($77>>>0) / 32)&-1; + $79 = (($rfds) + ($78<<2)|0); + $80 = HEAP32[$79>>2]|0; + $81 = $80 | $76; + HEAP32[$79>>2] = $81; + $82 = $delay; + HEAP32[$tv>>2] = $82; + $83 = $delay; + $84 = ($83|0)!=(0); + $85 = $84 ? 0 : 100000; + $86 = ((($tv)) + 4|0); + HEAP32[$86>>2] = $85; + $87 = $fd; + $88 = (($87) + 1)|0; + $89 = (_select($88,$rfds,0,0,$tv)|0); + $rc = $89; + $90 = ($89|0)!=(0); + if (!($90)) { + $any_need_entropy = 1; + $delay = 3; + continue; + } + $91 = $rc; + $92 = ($91|0)==(-1); + if ($92) { + $93 = (___errno_location()|0); + $94 = HEAP32[$93>>2]|0; + $95 = (_strerror($94)|0); + HEAP32[$vararg_buffer>>2] = $95; + __gcry_log_error(52972,$vararg_buffer); + $96 = $delay; + $97 = ($96|0)!=(0); + if ($97) { + continue; + } + $delay = 1; + continue; + } + } + while(1) { + $98 = $3; + $99 = ($98>>>0)<(768); + $100 = $3; + $101 = $99 ? $100 : 768; + $nbytes = $101; + $102 = $fd; + $103 = $nbytes; + $104 = (_read($102,$buffer,$103)|0); + $n = $104; + $105 = $n; + $106 = ($105|0)>=(0); + if ($106) { + $107 = $n; + $108 = $nbytes; + $109 = ($107>>>0)>($108>>>0); + if ($109) { + $110 = $n; + HEAP32[$vararg_buffer1>>2] = $110; + __gcry_log_error(52992,$vararg_buffer1); + $111 = $nbytes; + $n = $111; + } + } + $112 = $n; + $113 = ($112|0)==(-1); + if (!($113)) { + break; + } + $114 = (___errno_location()|0); + $115 = HEAP32[$114>>2]|0; + $116 = ($115|0)==(4); + if (!($116)) { + break; + } + } + $117 = $n; + $118 = ($117|0)==(-1); + if ($118) { + label = 38; + break; + } + $122 = $1; + $123 = $n; + $124 = $2; + FUNCTION_TABLE_viii[$122 & 127]($buffer,$123,$124); + $125 = $n; + $126 = $3; + $127 = (($126) - ($125))|0; + $3 = $127; + } + if ((label|0) == 38) { + $119 = (___errno_location()|0); + $120 = HEAP32[$119>>2]|0; + $121 = (_strerror($120)|0); + HEAP32[$vararg_buffer4>>2] = $121; + __gcry_log_fatal(53030,$vararg_buffer4); + // unreachable; + } + $_vptr = $buffer; + $_vlen = 768; + $_vset = 0; + $128 = $_vset; + $129 = $128&255; + $130 = $_vset_long; + $131 = $130; + HEAP32[$131>>2] = $129; + $132 = (($130) + 4)|0; + $133 = $132; + HEAP32[$133>>2] = 0; + while(1) { + $134 = $_vptr; + $135 = $134; + $136 = $135 & 7; + $137 = ($136|0)!=(0); + $138 = $_vlen; + $139 = ($138|0)!=(0); + $140 = $137 ? $139 : 0; + if (!($140)) { + break; + } + $141 = $_vset; + $142 = $_vptr; + HEAP8[$142>>0] = $141; + $143 = $_vptr; + $144 = ((($143)) + 1|0); + $_vptr = $144; + $145 = $_vlen; + $146 = (($145) + -1)|0; + $_vlen = $146; + } + $147 = $_vlen; + $148 = ($147>>>0)<(8); + if (!($148)) { + $149 = $_vset_long; + $150 = $149; + $151 = HEAP32[$150>>2]|0; + $152 = (($149) + 4)|0; + $153 = $152; + $154 = HEAP32[$153>>2]|0; + $155 = (___muldi3(($151|0),($154|0),16843009,16843009)|0); + $156 = tempRet0; + $157 = $_vset_long; + $158 = $157; + HEAP32[$158>>2] = $155; + $159 = (($157) + 4)|0; + $160 = $159; + HEAP32[$160>>2] = $156; + while(1) { + $161 = $_vptr; + $_vptr_long = $161; + $162 = $_vset_long; + $163 = $162; + $164 = HEAP32[$163>>2]|0; + $165 = (($162) + 4)|0; + $166 = $165; + $167 = HEAP32[$166>>2]|0; + $168 = $_vptr_long; + $169 = $168; + $170 = $169; + HEAP32[$170>>2] = $164; + $171 = (($169) + 4)|0; + $172 = $171; + HEAP32[$172>>2] = $167; + $173 = $_vlen; + $174 = (($173) - 8)|0; + $_vlen = $174; + $175 = $_vptr; + $176 = ((($175)) + 8|0); + $_vptr = $176; + $177 = $_vlen; + $178 = ($177>>>0)>=(8); + if (!($178)) { + break; + } + } + } + while(1) { + $179 = $_vlen; + $180 = ($179|0)!=(0); + if (!($180)) { + break; + } + $181 = $_vset; + $182 = $_vptr; + HEAP8[$182>>0] = $181; + $183 = $_vptr; + $184 = ((($183)) + 1|0); + $_vptr = $184; + $185 = $_vlen; + $186 = (($185) + -1)|0; + $_vlen = $186; + } + $187 = $any_need_entropy; + $188 = ($187|0)!=(0); + if ($188) { + $189 = $want; + $190 = $want; + __gcry_random_progress(52959,88,$189,$190); + } + $0 = 0; + $191 = $0; + STACKTOP = sp;return ($191|0); +} +function _open_device($name,$retry) { + $name = $name|0; + $retry = $retry|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $fd = 0, $or$cond = 0, $tv = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer5 = 0, $vararg_ptr4 = 0, $vararg_ptr8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer5 = sp + 16|0; + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $tv = sp + 24|0; + $0 = $name; + $1 = $retry; + $2 = $1; + $3 = ($2|0)!=(0); + if ($3) { + __gcry_random_progress(52856,88,1,0); + } + while(1) { + $4 = $0; + $5 = (_open($4,0,$vararg_buffer)|0); + $fd = $5; + $6 = $fd; + $7 = ($6|0)==(-1); + $8 = $1; + $9 = ($8|0)!=(0); + $or$cond = $7 & $9; + if (!($or$cond)) { + break; + } + HEAP32[$tv>>2] = 5; + $10 = ((($tv)) + 4|0); + HEAP32[$10>>2] = 0; + $11 = HEAP32[$tv>>2]|0; + __gcry_random_progress(52872,88,0,$11); + (_select(0,0,0,0,$tv)|0); + } + $12 = $fd; + $13 = ($12|0)==(-1); + if ($13) { + $14 = $0; + $15 = (___errno_location()|0); + $16 = HEAP32[$15>>2]|0; + $17 = (_strerror($16)|0); + HEAP32[$vararg_buffer2>>2] = $14; + $vararg_ptr4 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr4>>2] = $17; + __gcry_log_fatal(52888,$vararg_buffer2); + // unreachable; + } + $18 = $fd; + $19 = (_set_cloexec_flag($18)|0); + $20 = ($19|0)!=(0); + if (!($20)) { + $25 = $fd; + STACKTOP = sp;return ($25|0); + } + $21 = $fd; + $22 = (___errno_location()|0); + $23 = HEAP32[$22>>2]|0; + $24 = (_strerror($23)|0); + HEAP32[$vararg_buffer5>>2] = $21; + $vararg_ptr8 = ((($vararg_buffer5)) + 4|0); + HEAP32[$vararg_ptr8>>2] = $24; + __gcry_log_error(52907,$vararg_buffer5); + $25 = $fd; + STACKTOP = sp;return ($25|0); +} +function _set_cloexec_flag($fd) { + $fd = $fd|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $oldflags = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $1 = $fd; + $2 = $1; + HEAP32[$vararg_buffer>>2] = 0; + $3 = (_fcntl($2,1,$vararg_buffer)|0); + $oldflags = $3; + $4 = $oldflags; + $5 = ($4|0)<(0); + $6 = $oldflags; + if ($5) { + $0 = $6; + $11 = $0; + STACKTOP = sp;return ($11|0); + } else { + $7 = $6 | 1; + $oldflags = $7; + $8 = $1; + $9 = $oldflags; + HEAP32[$vararg_buffer1>>2] = $9; + $10 = (_fcntl($8,2,$vararg_buffer1)|0); + $0 = $10; + $11 = $0; + STACKTOP = sp;return ($11|0); + } + return (0)|0; +} +function __gcry_mpih_addmul_1($res_ptr,$s1_ptr,$s1_size,$s2_limb) { + $res_ptr = $res_ptr|0; + $s1_ptr = $s1_ptr|0; + $s1_size = $s1_size|0; + $s2_limb = $s2_limb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $__u = 0, $__uh = 0, $__ul = 0, $__v = 0, $__vh = 0, $__vl = 0, $__x0 = 0, $__x1 = 0, $__x2 = 0; + var $__x3 = 0, $cy_limb = 0, $j = 0, $prod_high = 0, $prod_low = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $res_ptr; + $1 = $s1_ptr; + $2 = $s1_size; + $3 = $s2_limb; + $4 = $2; + $5 = (0 - ($4))|0; + $j = $5; + $6 = $j; + $7 = $0; + $8 = (0 - ($6))|0; + $9 = (($7) + ($8<<2)|0); + $0 = $9; + $10 = $j; + $11 = $1; + $12 = (0 - ($10))|0; + $13 = (($11) + ($12<<2)|0); + $1 = $13; + $cy_limb = 0; + while(1) { + $14 = $j; + $15 = $1; + $16 = (($15) + ($14<<2)|0); + $17 = HEAP32[$16>>2]|0; + $__u = $17; + $18 = $3; + $__v = $18; + $19 = $__u; + $20 = $19 & 65535; + $__ul = $20; + $21 = $__u; + $22 = $21 >>> 16; + $__uh = $22; + $23 = $__v; + $24 = $23 & 65535; + $__vl = $24; + $25 = $__v; + $26 = $25 >>> 16; + $__vh = $26; + $27 = $__ul; + $28 = $__vl; + $29 = Math_imul($27, $28)|0; + $__x0 = $29; + $30 = $__ul; + $31 = $__vh; + $32 = Math_imul($30, $31)|0; + $__x1 = $32; + $33 = $__uh; + $34 = $__vl; + $35 = Math_imul($33, $34)|0; + $__x2 = $35; + $36 = $__uh; + $37 = $__vh; + $38 = Math_imul($36, $37)|0; + $__x3 = $38; + $39 = $__x0; + $40 = $39 >>> 16; + $41 = $__x1; + $42 = (($41) + ($40))|0; + $__x1 = $42; + $43 = $__x2; + $44 = $__x1; + $45 = (($44) + ($43))|0; + $__x1 = $45; + $46 = $__x1; + $47 = $__x2; + $48 = ($46>>>0)<($47>>>0); + if ($48) { + $49 = $__x3; + $50 = (($49) + 65536)|0; + $__x3 = $50; + } + $51 = $__x3; + $52 = $__x1; + $53 = $52 >>> 16; + $54 = (($51) + ($53))|0; + $prod_high = $54; + $55 = $__x1; + $56 = $55 & 65535; + $57 = $56 << 16; + $58 = $__x0; + $59 = $58 & 65535; + $60 = (($57) + ($59))|0; + $prod_low = $60; + $61 = $cy_limb; + $62 = $prod_low; + $63 = (($62) + ($61))|0; + $prod_low = $63; + $64 = $prod_low; + $65 = $cy_limb; + $66 = ($64>>>0)<($65>>>0); + $67 = $66 ? 1 : 0; + $68 = $prod_high; + $69 = (($67) + ($68))|0; + $cy_limb = $69; + $70 = $j; + $71 = $0; + $72 = (($71) + ($70<<2)|0); + $73 = HEAP32[$72>>2]|0; + $x = $73; + $74 = $x; + $75 = $prod_low; + $76 = (($74) + ($75))|0; + $prod_low = $76; + $77 = $prod_low; + $78 = $x; + $79 = ($77>>>0)<($78>>>0); + $80 = $79 ? 1 : 0; + $81 = $cy_limb; + $82 = (($81) + ($80))|0; + $cy_limb = $82; + $83 = $prod_low; + $84 = $j; + $85 = $0; + $86 = (($85) + ($84<<2)|0); + HEAP32[$86>>2] = $83; + $87 = $j; + $88 = (($87) + 1)|0; + $j = $88; + $89 = ($88|0)!=(0); + if (!($89)) { + break; + } + } + $90 = $cy_limb; + STACKTOP = sp;return ($90|0); +} +function __gcry_dsa_gen_k($q,$security_level) { + $q = $q|0; + $security_level = $security_level|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $k = 0, $nbits = 0, $nbytes = 0, $or$cond = 0, $pp = 0; + var $rndbuf = 0, $vararg_buffer = 0, $vararg_buffer3 = 0, $vararg_buffer5 = 0, $vararg_ptr2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer5 = sp + 16|0; + $vararg_buffer3 = sp + 8|0; + $vararg_buffer = sp; + $0 = $q; + $1 = $security_level; + $2 = $0; + $3 = ((($2)) + 4|0); + $4 = HEAP32[$3>>2]|0; + $5 = (__gcry_mpi_alloc_secure($4)|0); + $k = $5; + $6 = $0; + $7 = (__gcry_mpi_get_nbits($6)|0); + $nbits = $7; + $8 = $nbits; + $9 = (($8) + 7)|0; + $10 = (($9>>>0) / 8)&-1; + $nbytes = $10; + $rndbuf = 0; + $11 = (__gcry_get_debug_flag(1)|0); + $12 = ($11|0)!=(0); + if ($12) { + $13 = $nbits; + $14 = $1; + HEAP32[$vararg_buffer>>2] = $13; + $vararg_ptr2 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr2>>2] = $14; + __gcry_log_debug(53063,$vararg_buffer); + } + while(1) { + $15 = $rndbuf; + $16 = ($15|0)==(0|0); + $17 = $nbits; + $18 = ($17>>>0)<(32); + $or$cond = $16 | $18; + if ($or$cond) { + $19 = $rndbuf; + __gcry_free($19); + $20 = $nbytes; + $21 = $1; + $22 = (__gcry_random_bytes_secure($20,$21)|0); + $rndbuf = $22; + } else { + $23 = $1; + $24 = (__gcry_random_bytes_secure(4,$23)|0); + $pp = $24; + $25 = $rndbuf; + $26 = $pp; + ;HEAP8[$25>>0]=HEAP8[$26>>0]|0;HEAP8[$25+1>>0]=HEAP8[$26+1>>0]|0;HEAP8[$25+2>>0]=HEAP8[$26+2>>0]|0;HEAP8[$25+3>>0]=HEAP8[$26+3>>0]|0; + $27 = $pp; + __gcry_free($27); + } + $28 = $k; + $29 = $rndbuf; + $30 = $nbytes; + __gcry_mpi_set_buffer($28,$29,$30,0); + $31 = $k; + $32 = $nbits; + $33 = (($32) - 1)|0; + $34 = (__gcry_mpi_test_bit($31,$33)|0); + $35 = ($34|0)!=(0); + $36 = $k; + $37 = $nbits; + $38 = (($37) - 1)|0; + __gcry_mpi_set_highbit($36,$38); + if (!($35)) { + $39 = $k; + $40 = $nbits; + $41 = (($40) - 1)|0; + __gcry_mpi_clear_bit($39,$41); + } + $42 = $k; + $43 = $0; + $44 = (__gcry_mpi_cmp($42,$43)|0); + $45 = ($44|0)<(0); + if (!($45)) { + $46 = (__gcry_get_debug_flag(1)|0); + $47 = ($46|0)!=(0); + if (!($47)) { + continue; + } + __gcry_log_debug(53110,$vararg_buffer3); + continue; + } + $48 = $k; + $49 = (__gcry_mpi_cmp_ui($48,0)|0); + $50 = ($49|0)>(0); + if ($50) { + break; + } + $51 = (__gcry_get_debug_flag(1)|0); + $52 = ($51|0)!=(0); + if (!($52)) { + continue; + } + __gcry_log_debug(53132,$vararg_buffer5); + } + $53 = $rndbuf; + __gcry_free($53); + $54 = $k; + STACKTOP = sp;return ($54|0); +} +function __gcry_dsa_gen_rfc6979_k($r_k,$dsa_q,$dsa_x,$h1,$hlen,$halgo,$extraloops) { + $r_k = $r_k|0; + $dsa_q = $dsa_q|0; + $dsa_x = $dsa_x|0; + $h1 = $h1|0; + $hlen = $hlen|0; + $halgo = $halgo|0; + $extraloops = $extraloops|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $K = 0, $V = 0, $h1_buf = 0, $hd = 0, $i = 0, $k = 0, $or$cond = 0, $or$cond3 = 0, $qbits = 0, $rc = 0, $t = 0, $tbits = 0, $x_buf = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $x_buf = sp + 28|0; + $h1_buf = sp + 24|0; + $hd = sp + 20|0; + $k = sp + 12|0; + $1 = $r_k; + $2 = $dsa_q; + $3 = $dsa_x; + $4 = $h1; + $5 = $hlen; + $6 = $halgo; + $7 = $extraloops; + $V = 0; + $K = 0; + HEAP32[$x_buf>>2] = 0; + HEAP32[$h1_buf>>2] = 0; + HEAP32[$hd>>2] = 0; + $t = 0; + HEAP32[$k>>2] = 0; + $8 = $2; + $9 = (__gcry_mpi_get_nbits($8)|0); + $qbits = $9; + $10 = $qbits; + $11 = ($10|0)!=(0); + $12 = $4; + $13 = ($12|0)!=(0|0); + $or$cond = $11 & $13; + $14 = $5; + $15 = ($14|0)!=(0); + $or$cond3 = $or$cond & $15; + if (!($or$cond3)) { + $0 = 32816; + $259 = $0; + STACKTOP = sp;return ($259|0); + } + $16 = $6; + $17 = (__gcry_md_get_algo_dlen($16)|0); + $18 = $5; + $19 = ($17|0)!=($18|0); + if ($19) { + $0 = 5; + $259 = $0; + STACKTOP = sp;return ($259|0); + } + $20 = $5; + $21 = (__gcry_malloc($20)|0); + $V = $21; + $22 = $V; + $23 = ($22|0)!=(0|0); + L9: do { + if ($23) { + $i = 0; + while(1) { + $25 = $i; + $26 = $5; + $27 = ($25>>>0)<($26>>>0); + if (!($27)) { + break; + } + $28 = $i; + $29 = $V; + $30 = (($29) + ($28)|0); + HEAP8[$30>>0] = 1; + $31 = $i; + $32 = (($31) + 1)|0; + $i = $32; + } + $33 = $5; + $34 = (__gcry_calloc(1,$33)|0); + $K = $34; + $35 = $K; + $36 = ($35|0)!=(0|0); + if (!($36)) { + $37 = (_gpg_err_code_from_syserror()|0); + $rc = $37; + break; + } + $38 = $3; + $39 = $qbits; + $40 = (($39) + 7)|0; + $41 = (($40>>>0) / 8)&-1; + $42 = (_int2octets($x_buf,$38,$41)|0); + $rc = $42; + $43 = $rc; + $44 = ($43|0)!=(0); + if (!($44)) { + $45 = $4; + $46 = $5; + $47 = $46<<3; + $48 = $2; + $49 = $qbits; + $50 = (_bits2octets($h1_buf,$45,$47,$48,$49)|0); + $rc = $50; + $51 = $rc; + $52 = ($51|0)!=(0); + if (!($52)) { + $53 = $6; + $54 = (__gcry_md_open($hd,$53,3)|0); + $rc = $54; + $55 = $rc; + $56 = ($55|0)!=(0); + if (!($56)) { + $57 = HEAP32[$hd>>2]|0; + $58 = $K; + $59 = $5; + $60 = (__gcry_md_setkey($57,$58,$59)|0); + $rc = $60; + $61 = $rc; + $62 = ($61|0)!=(0); + if (!($62)) { + $63 = HEAP32[$hd>>2]|0; + $64 = $V; + $65 = $5; + __gcry_md_write($63,$64,$65); + $66 = HEAP32[$hd>>2]|0; + __gcry_md_write($66,76543,1); + $67 = HEAP32[$hd>>2]|0; + $68 = HEAP32[$x_buf>>2]|0; + $69 = $qbits; + $70 = (($69) + 7)|0; + $71 = (($70>>>0) / 8)&-1; + __gcry_md_write($67,$68,$71); + $72 = HEAP32[$hd>>2]|0; + $73 = HEAP32[$h1_buf>>2]|0; + $74 = $qbits; + $75 = (($74) + 7)|0; + $76 = (($75>>>0) / 8)&-1; + __gcry_md_write($72,$73,$76); + $77 = $K; + $78 = HEAP32[$hd>>2]|0; + $79 = (__gcry_md_read($78,0)|0); + $80 = $5; + _memcpy(($77|0),($79|0),($80|0))|0; + $81 = HEAP32[$hd>>2]|0; + $82 = $K; + $83 = $5; + $84 = (__gcry_md_setkey($81,$82,$83)|0); + $rc = $84; + $85 = $rc; + $86 = ($85|0)!=(0); + if (!($86)) { + $87 = HEAP32[$hd>>2]|0; + $88 = $V; + $89 = $5; + __gcry_md_write($87,$88,$89); + $90 = $V; + $91 = HEAP32[$hd>>2]|0; + $92 = (__gcry_md_read($91,0)|0); + $93 = $5; + _memcpy(($90|0),($92|0),($93|0))|0; + $94 = HEAP32[$hd>>2]|0; + $95 = $K; + $96 = $5; + $97 = (__gcry_md_setkey($94,$95,$96)|0); + $rc = $97; + $98 = $rc; + $99 = ($98|0)!=(0); + if (!($99)) { + $100 = HEAP32[$hd>>2]|0; + $101 = $V; + $102 = $5; + __gcry_md_write($100,$101,$102); + $103 = HEAP32[$hd>>2]|0; + __gcry_md_write($103,53152,1); + $104 = HEAP32[$hd>>2]|0; + $105 = HEAP32[$x_buf>>2]|0; + $106 = $qbits; + $107 = (($106) + 7)|0; + $108 = (($107>>>0) / 8)&-1; + __gcry_md_write($104,$105,$108); + $109 = HEAP32[$hd>>2]|0; + $110 = HEAP32[$h1_buf>>2]|0; + $111 = $qbits; + $112 = (($111) + 7)|0; + $113 = (($112>>>0) / 8)&-1; + __gcry_md_write($109,$110,$113); + $114 = $K; + $115 = HEAP32[$hd>>2]|0; + $116 = (__gcry_md_read($115,0)|0); + $117 = $5; + _memcpy(($114|0),($116|0),($117|0))|0; + $118 = HEAP32[$hd>>2]|0; + $119 = $K; + $120 = $5; + $121 = (__gcry_md_setkey($118,$119,$120)|0); + $rc = $121; + $122 = $rc; + $123 = ($122|0)!=(0); + if (!($123)) { + $124 = HEAP32[$hd>>2]|0; + $125 = $V; + $126 = $5; + __gcry_md_write($124,$125,$126); + $127 = $V; + $128 = HEAP32[$hd>>2]|0; + $129 = (__gcry_md_read($128,0)|0); + $130 = $5; + _memcpy(($127|0),($129|0),($130|0))|0; + $131 = $qbits; + $132 = (($131) + 7)|0; + $133 = (($132>>>0) / 8)&-1; + $134 = $5; + $135 = (($133) + ($134))|0; + $136 = (__gcry_malloc($135)|0); + $t = $136; + $137 = $t; + $138 = ($137|0)!=(0|0); + if (!($138)) { + $139 = (_gpg_err_code_from_syserror()|0); + $rc = $139; + break; + } + while(1) { + $tbits = 0; + while(1) { + $140 = $tbits; + $141 = $qbits; + $142 = ($140>>>0)<($141>>>0); + if (!($142)) { + break; + } + $143 = HEAP32[$hd>>2]|0; + $144 = $K; + $145 = $5; + $146 = (__gcry_md_setkey($143,$144,$145)|0); + $rc = $146; + $147 = $rc; + $148 = ($147|0)!=(0); + if ($148) { + break L9; + } + $149 = HEAP32[$hd>>2]|0; + $150 = $V; + $151 = $5; + __gcry_md_write($149,$150,$151); + $152 = $V; + $153 = HEAP32[$hd>>2]|0; + $154 = (__gcry_md_read($153,0)|0); + $155 = $5; + _memcpy(($152|0),($154|0),($155|0))|0; + $156 = $t; + $157 = $tbits; + $158 = (($157) + 7)|0; + $159 = (($158>>>0) / 8)&-1; + $160 = (($156) + ($159)|0); + $161 = $V; + $162 = $5; + _memcpy(($160|0),($161|0),($162|0))|0; + $163 = $5; + $164 = $163<<3; + $165 = $tbits; + $166 = (($165) + ($164))|0; + $tbits = $166; + } + $167 = HEAP32[$k>>2]|0; + __gcry_mpi_free($167); + HEAP32[$k>>2] = 0; + $168 = $t; + $169 = $tbits; + $170 = (($169) + 7)|0; + $171 = (($170>>>0) / 8)&-1; + $172 = (__gcry_mpi_scan($k,5,$168,$171,0)|0); + $rc = $172; + $173 = $rc; + $174 = ($173|0)!=(0); + if ($174) { + break L9; + } + $175 = $tbits; + $176 = $qbits; + $177 = ($175>>>0)>($176>>>0); + if ($177) { + $178 = HEAP32[$k>>2]|0; + $179 = HEAP32[$k>>2]|0; + $180 = $tbits; + $181 = $qbits; + $182 = (($180) - ($181))|0; + __gcry_mpi_rshift($178,$179,$182); + } + $183 = HEAP32[$k>>2]|0; + $184 = $2; + $185 = (__gcry_mpi_cmp($183,$184)|0); + $186 = ($185|0)<(0); + if ($186) { + $187 = HEAP32[$k>>2]|0; + $188 = (__gcry_mpi_cmp_ui($187,0)|0); + $189 = ($188|0)>(0); + if ($189) { + $217 = $7; + $218 = ($217|0)!=(0); + if (!($218)) { + break L9; + } + $219 = $7; + $220 = (($219) + -1)|0; + $7 = $220; + $221 = HEAP32[$hd>>2]|0; + $222 = $K; + $223 = $5; + $224 = (__gcry_md_setkey($221,$222,$223)|0); + $rc = $224; + $225 = $rc; + $226 = ($225|0)!=(0); + if ($226) { + break L9; + } + $227 = HEAP32[$hd>>2]|0; + $228 = $V; + $229 = $5; + __gcry_md_write($227,$228,$229); + $230 = HEAP32[$hd>>2]|0; + __gcry_md_write($230,76543,1); + $231 = $K; + $232 = HEAP32[$hd>>2]|0; + $233 = (__gcry_md_read($232,0)|0); + $234 = $5; + _memcpy(($231|0),($233|0),($234|0))|0; + $235 = HEAP32[$hd>>2]|0; + $236 = $K; + $237 = $5; + $238 = (__gcry_md_setkey($235,$236,$237)|0); + $rc = $238; + $239 = $rc; + $240 = ($239|0)!=(0); + if ($240) { + break L9; + } + $241 = HEAP32[$hd>>2]|0; + $242 = $V; + $243 = $5; + __gcry_md_write($241,$242,$243); + $244 = $V; + $245 = HEAP32[$hd>>2]|0; + $246 = (__gcry_md_read($245,0)|0); + $247 = $5; + _memcpy(($244|0),($246|0),($247|0))|0; + continue; + } + } + $190 = HEAP32[$hd>>2]|0; + $191 = $K; + $192 = $5; + $193 = (__gcry_md_setkey($190,$191,$192)|0); + $rc = $193; + $194 = $rc; + $195 = ($194|0)!=(0); + if ($195) { + break L9; + } + $196 = HEAP32[$hd>>2]|0; + $197 = $V; + $198 = $5; + __gcry_md_write($196,$197,$198); + $199 = HEAP32[$hd>>2]|0; + __gcry_md_write($199,76543,1); + $200 = $K; + $201 = HEAP32[$hd>>2]|0; + $202 = (__gcry_md_read($201,0)|0); + $203 = $5; + _memcpy(($200|0),($202|0),($203|0))|0; + $204 = HEAP32[$hd>>2]|0; + $205 = $K; + $206 = $5; + $207 = (__gcry_md_setkey($204,$205,$206)|0); + $rc = $207; + $208 = $rc; + $209 = ($208|0)!=(0); + if ($209) { + break L9; + } + $210 = HEAP32[$hd>>2]|0; + $211 = $V; + $212 = $5; + __gcry_md_write($210,$211,$212); + $213 = $V; + $214 = HEAP32[$hd>>2]|0; + $215 = (__gcry_md_read($214,0)|0); + $216 = $5; + _memcpy(($213|0),($215|0),($216|0))|0; + } + } + } + } + } + } + } + } + } else { + $24 = (_gpg_err_code_from_syserror()|0); + $rc = $24; + } + } while(0); + $248 = $t; + __gcry_free($248); + $249 = HEAP32[$hd>>2]|0; + __gcry_md_close($249); + $250 = HEAP32[$h1_buf>>2]|0; + __gcry_free($250); + $251 = HEAP32[$x_buf>>2]|0; + __gcry_free($251); + $252 = $K; + __gcry_free($252); + $253 = $V; + __gcry_free($253); + $254 = $rc; + $255 = ($254|0)!=(0); + $256 = HEAP32[$k>>2]|0; + if ($255) { + __gcry_mpi_free($256); + } else { + $257 = $1; + HEAP32[$257>>2] = $256; + } + $258 = $rc; + $0 = $258; + $259 = $0; + STACKTOP = sp;return ($259|0); +} +function _int2octets($r_frame,$value,$nbytes) { + $r_frame = $r_frame|0; + $value = $value|0; + $nbytes = $nbytes|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $frame = 0, $n = 0; + var $nframe = 0, $noff = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $nframe = sp + 12|0; + $1 = $r_frame; + $2 = $value; + $3 = $nbytes; + $4 = $2; + $5 = (__gcry_mpi_print(5,0,0,$nframe,$4)|0); + $rc = $5; + $6 = $rc; + $7 = ($6|0)!=(0); + if ($7) { + $8 = $rc; + $0 = $8; + $57 = $0; + STACKTOP = sp;return ($57|0); + } + $9 = HEAP32[$nframe>>2]|0; + $10 = $3; + $11 = ($9>>>0)>($10>>>0); + if ($11) { + $0 = 67; + $57 = $0; + STACKTOP = sp;return ($57|0); + } + $12 = HEAP32[$nframe>>2]|0; + $13 = $3; + $14 = ($12>>>0)<($13>>>0); + if ($14) { + $15 = $3; + $16 = HEAP32[$nframe>>2]|0; + $17 = (($15) - ($16))|0; + $18 = $17; + } else { + $18 = 0; + } + $noff = $18; + $19 = HEAP32[$nframe>>2]|0; + $20 = $noff; + $21 = (($19) + ($20))|0; + $n = $21; + $22 = $2; + $23 = ($22|0)!=(0|0); + if ($23) { + $24 = $2; + $25 = ((($24)) + 12|0); + $26 = HEAP32[$25>>2]|0; + $27 = $26 & 1; + $28 = ($27|0)!=(0); + if ($28) { + $29 = $n; + $30 = (__gcry_malloc_secure($29)|0); + $33 = $30; + } else { + label = 10; + } + } else { + label = 10; + } + if ((label|0) == 10) { + $31 = $n; + $32 = (__gcry_malloc($31)|0); + $33 = $32; + } + $frame = $33; + $34 = $frame; + $35 = ($34|0)!=(0|0); + if (!($35)) { + $36 = (_gpg_err_code_from_syserror()|0); + $0 = $36; + $57 = $0; + STACKTOP = sp;return ($57|0); + } + $37 = $noff; + $38 = ($37|0)!=(0); + if ($38) { + $39 = $frame; + $40 = $noff; + _memset(($39|0),0,($40|0))|0; + } + $41 = $noff; + $42 = HEAP32[$nframe>>2]|0; + $43 = (($42) + ($41))|0; + HEAP32[$nframe>>2] = $43; + $44 = $frame; + $45 = $noff; + $46 = (($44) + ($45)|0); + $47 = HEAP32[$nframe>>2]|0; + $48 = $noff; + $49 = (($47) - ($48))|0; + $50 = $2; + $51 = (__gcry_mpi_print(5,$46,$49,0,$50)|0); + $rc = $51; + $52 = $rc; + $53 = ($52|0)!=(0); + $54 = $frame; + if ($53) { + __gcry_free($54); + $55 = $rc; + $0 = $55; + $57 = $0; + STACKTOP = sp;return ($57|0); + } else { + $56 = $1; + HEAP32[$56>>2] = $54; + $0 = 0; + $57 = $0; + STACKTOP = sp;return ($57|0); + } + return (0)|0; +} +function _bits2octets($r_frame,$bits,$nbits,$q,$qbits) { + $r_frame = $r_frame|0; + $bits = $bits|0; + $nbits = $nbits|0; + $q = $q|0; + $qbits = $qbits|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $z1 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $z1 = sp; + $1 = $r_frame; + $2 = $bits; + $3 = $nbits; + $4 = $q; + $5 = $qbits; + $6 = $2; + $7 = $3; + $8 = (($7) + 7)|0; + $9 = (($8>>>0) / 8)&-1; + $10 = (__gcry_mpi_scan($z1,5,$6,$9,0)|0); + $rc = $10; + $11 = $rc; + $12 = ($11|0)!=(0); + if ($12) { + $13 = $rc; + $0 = $13; + $37 = $0; + STACKTOP = sp;return ($37|0); + } + $14 = $3; + $15 = $5; + $16 = ($14>>>0)>($15>>>0); + if ($16) { + $17 = HEAP32[$z1>>2]|0; + $18 = HEAP32[$z1>>2]|0; + $19 = $3; + $20 = $5; + $21 = (($19) - ($20))|0; + __gcry_mpi_rshift($17,$18,$21); + } + $22 = HEAP32[$z1>>2]|0; + $23 = $4; + $24 = (__gcry_mpi_cmp($22,$23)|0); + $25 = ($24|0)>=(0); + if ($25) { + $26 = HEAP32[$z1>>2]|0; + $27 = HEAP32[$z1>>2]|0; + $28 = $4; + __gcry_mpi_sub($26,$27,$28); + } + $29 = $1; + $30 = HEAP32[$z1>>2]|0; + $31 = $5; + $32 = (($31) + 7)|0; + $33 = (($32>>>0) / 8)&-1; + $34 = (_int2octets($29,$30,$33)|0); + $rc = $34; + $35 = HEAP32[$z1>>2]|0; + __gcry_mpi_free($35); + $36 = $rc; + $0 = $36; + $37 = $0; + STACKTOP = sp;return ($37|0); +} +function __gcry_dsa_normalize_hash($input,$out,$qbits) { + $input = $input|0; + $out = $out|0; + $qbits = $qbits|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $abits = 0, $abuf = 0, $hash = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $abits = sp + 4|0; + $hash = sp; + $1 = $input; + $2 = $out; + $3 = $qbits; + $rc = 0; + $4 = $1; + $5 = ($4|0)!=(0|0); + do { + if ($5) { + $6 = $1; + $7 = ((($6)) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = $8 & 4; + $10 = ($9|0)!=(0); + if ($10) { + $11 = $1; + $12 = (__gcry_mpi_get_opaque($11,$abits)|0); + $abuf = $12; + $13 = $abuf; + $14 = HEAP32[$abits>>2]|0; + $15 = (($14) + 7)|0; + $16 = (($15>>>0) / 8)&-1; + $17 = (__gcry_mpi_scan($hash,5,$13,$16,0)|0); + $rc = $17; + $18 = $rc; + $19 = ($18|0)!=(0); + if ($19) { + $20 = $rc; + $0 = $20; + $33 = $0; + STACKTOP = sp;return ($33|0); + } else { + $21 = HEAP32[$abits>>2]|0; + $22 = $3; + $23 = ($21>>>0)>($22>>>0); + if (!($23)) { + break; + } + $24 = HEAP32[$hash>>2]|0; + $25 = HEAP32[$hash>>2]|0; + $26 = HEAP32[$abits>>2]|0; + $27 = $3; + $28 = (($26) - ($27))|0; + __gcry_mpi_rshift($24,$25,$28); + break; + } + } else { + label = 7; + } + } else { + label = 7; + } + } while(0); + if ((label|0) == 7) { + $29 = $1; + HEAP32[$hash>>2] = $29; + } + $30 = HEAP32[$hash>>2]|0; + $31 = $2; + HEAP32[$31>>2] = $30; + $32 = $rc; + $0 = $32; + $33 = $0; + STACKTOP = sp;return ($33|0); +} +function __gcry_ecc_ecdsa_sign($input,$skey,$r,$s,$flags,$hashalgo) { + $input = $input|0; + $skey = $skey|0; + $r = $r|0; + $s = $s|0; + $flags = $flags|0; + $hashalgo = $hashalgo|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; + var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; + var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $I = 0; + var $abits = 0, $abuf = 0, $ctx = 0, $dr = 0, $extraloops = 0, $hash = 0, $k = 0, $k_1 = 0, $or$cond = 0, $qbits = 0, $rc = 0, $sum = 0, $vararg_buffer = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $k = sp + 52|0; + $I = sp + 24|0; + $hash = sp + 20|0; + $abits = sp + 12|0; + $1 = $input; + $2 = $skey; + $3 = $r; + $4 = $s; + $5 = $flags; + $6 = $hashalgo; + $rc = 0; + $extraloops = 0; + $7 = (__gcry_get_debug_flag(1)|0); + $8 = ($7|0)!=(0); + if ($8) { + $9 = $1; + __gcry_log_printmpi(53154,$9); + } + $10 = $2; + $11 = ((($10)) + 32|0); + $12 = HEAP32[$11>>2]|0; + $13 = (__gcry_mpi_get_nbits($12)|0); + $qbits = $13; + $14 = $1; + $15 = $qbits; + $16 = (__gcry_dsa_normalize_hash($14,$hash,$15)|0); + $rc = $16; + $17 = $rc; + $18 = ($17|0)!=(0); + if ($18) { + $19 = $rc; + $0 = $19; + $138 = $0; + STACKTOP = sp;return ($138|0); + } + HEAP32[$k>>2] = 0; + $20 = (__gcry_mpi_alloc(0)|0); + $dr = $20; + $21 = (__gcry_mpi_alloc(0)|0); + $sum = $21; + $22 = (__gcry_mpi_alloc(0)|0); + $k_1 = $22; + $23 = (__gcry_mpi_alloc(0)|0); + $x = $23; + __gcry_mpi_point_init($I); + $24 = $2; + $25 = HEAP32[$24>>2]|0; + $26 = $2; + $27 = ((($26)) + 4|0); + $28 = HEAP32[$27>>2]|0; + $29 = $2; + $30 = ((($29)) + 8|0); + $31 = HEAP32[$30>>2]|0; + $32 = $2; + $33 = ((($32)) + 12|0); + $34 = HEAP32[$33>>2]|0; + $35 = $2; + $36 = ((($35)) + 16|0); + $37 = HEAP32[$36>>2]|0; + $38 = (__gcry_mpi_ec_p_internal_new($25,$28,0,$31,$34,$37)|0); + $ctx = $38; + while(1) { + $39 = HEAP32[$k>>2]|0; + __gcry_mpi_free($39); + HEAP32[$k>>2] = 0; + $40 = $5; + $41 = $40 & 2; + $42 = ($41|0)!=(0); + $43 = $6; + $44 = ($43|0)!=(0); + $or$cond = $42 & $44; + if ($or$cond) { + $45 = $1; + $46 = ($45|0)!=(0|0); + if (!($46)) { + label = 9; + break; + } + $47 = $1; + $48 = ((($47)) + 12|0); + $49 = HEAP32[$48>>2]|0; + $50 = $49 & 4; + $51 = ($50|0)!=(0); + if (!($51)) { + label = 9; + break; + } + $52 = $1; + $53 = (__gcry_mpi_get_opaque($52,$abits)|0); + $abuf = $53; + $54 = $2; + $55 = ((($54)) + 32|0); + $56 = HEAP32[$55>>2]|0; + $57 = $2; + $58 = ((($57)) + 56|0); + $59 = HEAP32[$58>>2]|0; + $60 = $abuf; + $61 = HEAP32[$abits>>2]|0; + $62 = (($61) + 7)|0; + $63 = (($62>>>0) / 8)&-1; + $64 = $6; + $65 = $extraloops; + $66 = (__gcry_dsa_gen_rfc6979_k($k,$56,$59,$60,$63,$64,$65)|0); + $rc = $66; + $67 = $rc; + $68 = ($67|0)!=(0); + if ($68) { + break; + } + $69 = $extraloops; + $70 = (($69) + 1)|0; + $extraloops = $70; + } else { + $71 = $2; + $72 = ((($71)) + 32|0); + $73 = HEAP32[$72>>2]|0; + $74 = (__gcry_dsa_gen_k($73,1)|0); + HEAP32[$k>>2] = $74; + } + $75 = HEAP32[$k>>2]|0; + $76 = $2; + $77 = ((($76)) + 20|0); + $78 = $ctx; + __gcry_mpi_ec_mul_point($I,$75,$77,$78); + $79 = $x; + $80 = $ctx; + $81 = (__gcry_mpi_ec_get_affine($79,0,$I,$80)|0); + $82 = ($81|0)!=(0); + if ($82) { + label = 14; + break; + } + $85 = $3; + $86 = $x; + $87 = $2; + $88 = ((($87)) + 32|0); + $89 = HEAP32[$88>>2]|0; + __gcry_mpi_mod($85,$86,$89); + $90 = $3; + $91 = (__gcry_mpi_cmp_ui($90,0)|0); + $92 = ($91|0)!=(0); + $93 = $92 ^ 1; + if ($93) { + continue; + } + $94 = $dr; + $95 = $2; + $96 = ((($95)) + 56|0); + $97 = HEAP32[$96>>2]|0; + $98 = $3; + $99 = $2; + $100 = ((($99)) + 32|0); + $101 = HEAP32[$100>>2]|0; + __gcry_mpi_mulm($94,$97,$98,$101); + $102 = $sum; + $103 = HEAP32[$hash>>2]|0; + $104 = $dr; + $105 = $2; + $106 = ((($105)) + 32|0); + $107 = HEAP32[$106>>2]|0; + __gcry_mpi_addm($102,$103,$104,$107); + $108 = $k_1; + $109 = HEAP32[$k>>2]|0; + $110 = $2; + $111 = ((($110)) + 32|0); + $112 = HEAP32[$111>>2]|0; + (__gcry_mpi_invm($108,$109,$112)|0); + $113 = $4; + $114 = $k_1; + $115 = $sum; + $116 = $2; + $117 = ((($116)) + 32|0); + $118 = HEAP32[$117>>2]|0; + __gcry_mpi_mulm($113,$114,$115,$118); + $119 = $4; + $120 = (__gcry_mpi_cmp_ui($119,0)|0); + $121 = ($120|0)!=(0); + $122 = $121 ^ 1; + if (!($122)) { + label = 19; + break; + } + } + if ((label|0) == 9) { + $rc = 70; + } + else if ((label|0) == 14) { + $83 = (__gcry_get_debug_flag(1)|0); + $84 = ($83|0)!=(0); + if ($84) { + __gcry_log_debug(53231,$vararg_buffer); + } + $rc = 8; + } + else if ((label|0) == 19) { + $123 = (__gcry_get_debug_flag(1)|0); + $124 = ($123|0)!=(0); + if ($124) { + $125 = $3; + __gcry_log_printmpi(53172,$125); + $126 = $4; + __gcry_log_printmpi(53193,$126); + } + } + $127 = $ctx; + __gcry_mpi_ec_free($127); + __gcry_mpi_point_free_parts($I); + $128 = $x; + __gcry_mpi_free($128); + $129 = $k_1; + __gcry_mpi_free($129); + $130 = $sum; + __gcry_mpi_free($130); + $131 = $dr; + __gcry_mpi_free($131); + $132 = HEAP32[$k>>2]|0; + __gcry_mpi_free($132); + $133 = HEAP32[$hash>>2]|0; + $134 = $1; + $135 = ($133|0)!=($134|0); + if ($135) { + $136 = HEAP32[$hash>>2]|0; + __gcry_mpi_free($136); + } + $137 = $rc; + $0 = $137; + $138 = $0; + STACKTOP = sp;return ($138|0); +} +function __gcry_ecc_ecdsa_verify($input,$pkey,$r,$s) { + $input = $input|0; + $pkey = $pkey|0; + $r = $r|0; + $s = $s|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $12 = 0; + var $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $Q = 0, $Q1 = 0, $Q2 = 0, $ctx = 0, $err = 0; + var $h = 0, $h1 = 0, $h2 = 0, $hash = 0, $nbits = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $hash = sp + 72|0; + $Q = sp + 44|0; + $Q1 = sp + 32|0; + $Q2 = sp + 20|0; + $1 = $input; + $2 = $pkey; + $3 = $r; + $4 = $s; + $err = 0; + $5 = $3; + $6 = (__gcry_mpi_cmp_ui($5,0)|0); + $7 = ($6|0)>(0); + if ($7) { + $8 = $3; + $9 = $2; + $10 = ((($9)) + 32|0); + $11 = HEAP32[$10>>2]|0; + $12 = (__gcry_mpi_cmp($8,$11)|0); + $13 = ($12|0)<(0); + if ($13) { + $14 = $4; + $15 = (__gcry_mpi_cmp_ui($14,0)|0); + $16 = ($15|0)>(0); + if ($16) { + $17 = $4; + $18 = $2; + $19 = ((($18)) + 32|0); + $20 = HEAP32[$19>>2]|0; + $21 = (__gcry_mpi_cmp($17,$20)|0); + $22 = ($21|0)<(0); + if ($22) { + $23 = $2; + $24 = ((($23)) + 32|0); + $25 = HEAP32[$24>>2]|0; + $26 = (__gcry_mpi_get_nbits($25)|0); + $nbits = $26; + $27 = $1; + $28 = $nbits; + $29 = (__gcry_dsa_normalize_hash($27,$hash,$28)|0); + $err = $29; + $30 = $err; + $31 = ($30|0)!=(0); + if ($31) { + $32 = $err; + $0 = $32; + $114 = $0; + STACKTOP = sp;return ($114|0); + } + $33 = (__gcry_mpi_alloc(0)|0); + $h = $33; + $34 = (__gcry_mpi_alloc(0)|0); + $h1 = $34; + $35 = (__gcry_mpi_alloc(0)|0); + $h2 = $35; + $36 = (__gcry_mpi_alloc(0)|0); + $x = $36; + __gcry_mpi_point_init($Q); + __gcry_mpi_point_init($Q1); + __gcry_mpi_point_init($Q2); + $37 = $2; + $38 = HEAP32[$37>>2]|0; + $39 = $2; + $40 = ((($39)) + 4|0); + $41 = HEAP32[$40>>2]|0; + $42 = $2; + $43 = ((($42)) + 8|0); + $44 = HEAP32[$43>>2]|0; + $45 = $2; + $46 = ((($45)) + 12|0); + $47 = HEAP32[$46>>2]|0; + $48 = $2; + $49 = ((($48)) + 16|0); + $50 = HEAP32[$49>>2]|0; + $51 = (__gcry_mpi_ec_p_internal_new($38,$41,0,$44,$47,$50)|0); + $ctx = $51; + $52 = $h; + $53 = $4; + $54 = $2; + $55 = ((($54)) + 32|0); + $56 = HEAP32[$55>>2]|0; + (__gcry_mpi_invm($52,$53,$56)|0); + $57 = $h1; + $58 = HEAP32[$hash>>2]|0; + $59 = $h; + $60 = $2; + $61 = ((($60)) + 32|0); + $62 = HEAP32[$61>>2]|0; + __gcry_mpi_mulm($57,$58,$59,$62); + $63 = $h1; + $64 = $2; + $65 = ((($64)) + 20|0); + $66 = $ctx; + __gcry_mpi_ec_mul_point($Q1,$63,$65,$66); + $67 = $h2; + $68 = $3; + $69 = $h; + $70 = $2; + $71 = ((($70)) + 32|0); + $72 = HEAP32[$71>>2]|0; + __gcry_mpi_mulm($67,$68,$69,$72); + $73 = $h2; + $74 = $2; + $75 = ((($74)) + 44|0); + $76 = $ctx; + __gcry_mpi_ec_mul_point($Q2,$73,$75,$76); + $77 = $ctx; + __gcry_mpi_ec_add_points($Q,$Q1,$Q2,$77); + $78 = ((($Q)) + 8|0); + $79 = HEAP32[$78>>2]|0; + $80 = (__gcry_mpi_cmp_ui($79,0)|0); + $81 = ($80|0)!=(0); + do { + if ($81) { + $84 = $x; + $85 = $ctx; + $86 = (__gcry_mpi_ec_get_affine($84,0,$Q,$85)|0); + $87 = ($86|0)!=(0); + if ($87) { + $88 = (__gcry_get_debug_flag(1)|0); + $89 = ($88|0)!=(0); + if ($89) { + __gcry_log_debug(53337,$vararg_buffer1); + } + $err = 8; + break; + } + $90 = $x; + $91 = $x; + $92 = $2; + $93 = ((($92)) + 32|0); + $94 = HEAP32[$93>>2]|0; + __gcry_mpi_mod($90,$91,$94); + $95 = $x; + $96 = $3; + $97 = (__gcry_mpi_cmp($95,$96)|0); + $98 = ($97|0)!=(0); + if ($98) { + $99 = (__gcry_get_debug_flag(1)|0); + $100 = ($99|0)!=(0); + if ($100) { + $101 = $x; + __gcry_log_printmpi(53383,$101); + $102 = $3; + __gcry_log_printmpi(53390,$102); + $103 = $4; + __gcry_log_printmpi(53397,$103); + } + $err = 8; + } + } else { + $82 = (__gcry_get_debug_flag(1)|0); + $83 = ($82|0)!=(0); + if ($83) { + __gcry_log_debug(53315,$vararg_buffer); + } + $err = 8; + } + } while(0); + $104 = $ctx; + __gcry_mpi_ec_free($104); + __gcry_mpi_point_free_parts($Q2); + __gcry_mpi_point_free_parts($Q1); + __gcry_mpi_point_free_parts($Q); + $105 = $x; + __gcry_mpi_free($105); + $106 = $h2; + __gcry_mpi_free($106); + $107 = $h1; + __gcry_mpi_free($107); + $108 = $h; + __gcry_mpi_free($108); + $109 = HEAP32[$hash>>2]|0; + $110 = $1; + $111 = ($109|0)!=($110|0); + if ($111) { + $112 = HEAP32[$hash>>2]|0; + __gcry_mpi_free($112); + } + $113 = $err; + $0 = $113; + $114 = $0; + STACKTOP = sp;return ($114|0); + } + } + $0 = 8; + $114 = $0; + STACKTOP = sp;return ($114|0); + } + } + $0 = 8; + $114 = $0; + STACKTOP = sp;return ($114|0); +} +function __gcry_ecc_gost_sign($input,$skey,$r,$s) { + $input = $input|0; + $skey = $skey|0; + $r = $r|0; + $s = $s|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $14 = 0, $15 = 0; + var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $I = 0, $abits = 0, $abuf = 0, $ctx = 0, $dr = 0, $e = 0, $hash = 0, $k = 0; + var $ke = 0, $qbits = 0, $rc = 0, $sum = 0, $vararg_buffer = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $I = sp + 24|0; + $hash = sp + 20|0; + $abits = sp + 12|0; + $1 = $input; + $2 = $skey; + $3 = $r; + $4 = $s; + $rc = 0; + $5 = (__gcry_get_debug_flag(1)|0); + $6 = ($5|0)!=(0); + if ($6) { + $7 = $1; + __gcry_log_printmpi(53214,$7); + } + $8 = $2; + $9 = ((($8)) + 32|0); + $10 = HEAP32[$9>>2]|0; + $11 = (__gcry_mpi_get_nbits($10)|0); + $qbits = $11; + $12 = $1; + $13 = ($12|0)!=(0|0); + do { + if ($13) { + $14 = $1; + $15 = ((($14)) + 12|0); + $16 = HEAP32[$15>>2]|0; + $17 = $16 & 4; + $18 = ($17|0)!=(0); + if ($18) { + $19 = $1; + $20 = (__gcry_mpi_get_opaque($19,$abits)|0); + $abuf = $20; + $21 = $abuf; + $22 = HEAP32[$abits>>2]|0; + $23 = (($22) + 7)|0; + $24 = (($23>>>0) / 8)&-1; + $25 = (__gcry_mpi_scan($hash,5,$21,$24,0)|0); + $rc = $25; + $26 = $rc; + $27 = ($26|0)!=(0); + if ($27) { + $28 = $rc; + $0 = $28; + $131 = $0; + STACKTOP = sp;return ($131|0); + } else { + $29 = HEAP32[$abits>>2]|0; + $30 = $qbits; + $31 = ($29>>>0)>($30>>>0); + if (!($31)) { + break; + } + $32 = HEAP32[$hash>>2]|0; + $33 = HEAP32[$hash>>2]|0; + $34 = HEAP32[$abits>>2]|0; + $35 = $qbits; + $36 = (($34) - ($35))|0; + __gcry_mpi_rshift($32,$33,$36); + break; + } + } else { + label = 9; + } + } else { + label = 9; + } + } while(0); + if ((label|0) == 9) { + $37 = $1; + HEAP32[$hash>>2] = $37; + } + $k = 0; + $38 = (__gcry_mpi_alloc(0)|0); + $dr = $38; + $39 = (__gcry_mpi_alloc(0)|0); + $sum = $39; + $40 = (__gcry_mpi_alloc(0)|0); + $ke = $40; + $41 = (__gcry_mpi_alloc(0)|0); + $e = $41; + $42 = (__gcry_mpi_alloc(0)|0); + $x = $42; + __gcry_mpi_point_init($I); + $43 = $2; + $44 = HEAP32[$43>>2]|0; + $45 = $2; + $46 = ((($45)) + 4|0); + $47 = HEAP32[$46>>2]|0; + $48 = $2; + $49 = ((($48)) + 8|0); + $50 = HEAP32[$49>>2]|0; + $51 = $2; + $52 = ((($51)) + 12|0); + $53 = HEAP32[$52>>2]|0; + $54 = $2; + $55 = ((($54)) + 16|0); + $56 = HEAP32[$55>>2]|0; + $57 = (__gcry_mpi_ec_p_internal_new($44,$47,0,$50,$53,$56)|0); + $ctx = $57; + $58 = $e; + $59 = $1; + $60 = $2; + $61 = ((($60)) + 32|0); + $62 = HEAP32[$61>>2]|0; + __gcry_mpi_mod($58,$59,$62); + $63 = $e; + $64 = (__gcry_mpi_cmp_ui($63,0)|0); + $65 = ($64|0)!=(0); + if (!($65)) { + $66 = $e; + (__gcry_mpi_set_ui($66,1)|0); + } + while(1) { + $67 = $k; + __gcry_mpi_free($67); + $68 = $2; + $69 = ((($68)) + 32|0); + $70 = HEAP32[$69>>2]|0; + $71 = (__gcry_dsa_gen_k($70,1)|0); + $k = $71; + $72 = $k; + $73 = $2; + $74 = ((($73)) + 20|0); + $75 = $ctx; + __gcry_mpi_ec_mul_point($I,$72,$74,$75); + $76 = $x; + $77 = $ctx; + $78 = (__gcry_mpi_ec_get_affine($76,0,$I,$77)|0); + $79 = ($78|0)!=(0); + if ($79) { + label = 13; + break; + } + $82 = $3; + $83 = $x; + $84 = $2; + $85 = ((($84)) + 32|0); + $86 = HEAP32[$85>>2]|0; + __gcry_mpi_mod($82,$83,$86); + $87 = $3; + $88 = (__gcry_mpi_cmp_ui($87,0)|0); + $89 = ($88|0)!=(0); + $90 = $89 ^ 1; + if ($90) { + continue; + } + $91 = $dr; + $92 = $2; + $93 = ((($92)) + 56|0); + $94 = HEAP32[$93>>2]|0; + $95 = $3; + $96 = $2; + $97 = ((($96)) + 32|0); + $98 = HEAP32[$97>>2]|0; + __gcry_mpi_mulm($91,$94,$95,$98); + $99 = $ke; + $100 = $k; + $101 = $e; + $102 = $2; + $103 = ((($102)) + 32|0); + $104 = HEAP32[$103>>2]|0; + __gcry_mpi_mulm($99,$100,$101,$104); + $105 = $4; + $106 = $ke; + $107 = $dr; + $108 = $2; + $109 = ((($108)) + 32|0); + $110 = HEAP32[$109>>2]|0; + __gcry_mpi_addm($105,$106,$107,$110); + $111 = $4; + $112 = (__gcry_mpi_cmp_ui($111,0)|0); + $113 = ($112|0)!=(0); + $114 = $113 ^ 1; + if (!($114)) { + label = 18; + break; + } + } + if ((label|0) == 13) { + $80 = (__gcry_get_debug_flag(1)|0); + $81 = ($80|0)!=(0); + if ($81) { + __gcry_log_debug(53231,$vararg_buffer); + } + $rc = 8; + } + else if ((label|0) == 18) { + $115 = (__gcry_get_debug_flag(1)|0); + $116 = ($115|0)!=(0); + if ($116) { + $117 = $3; + __gcry_log_printmpi(53275,$117); + $118 = $4; + __gcry_log_printmpi(53295,$118); + } + } + $119 = $ctx; + __gcry_mpi_ec_free($119); + __gcry_mpi_point_free_parts($I); + $120 = $x; + __gcry_mpi_free($120); + $121 = $e; + __gcry_mpi_free($121); + $122 = $ke; + __gcry_mpi_free($122); + $123 = $sum; + __gcry_mpi_free($123); + $124 = $dr; + __gcry_mpi_free($124); + $125 = $k; + __gcry_mpi_free($125); + $126 = HEAP32[$hash>>2]|0; + $127 = $1; + $128 = ($126|0)!=($127|0); + if ($128) { + $129 = HEAP32[$hash>>2]|0; + __gcry_mpi_free($129); + } + $130 = $rc; + $0 = $130; + $131 = $0; + STACKTOP = sp;return ($131|0); +} +function __gcry_ecc_gost_verify($input,$pkey,$r,$s) { + $input = $input|0; + $pkey = $pkey|0; + $r = $r|0; + $s = $s|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $Q = 0, $Q1 = 0, $Q2 = 0, $ctx = 0, $e = 0, $err = 0, $rv = 0, $v = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer3 = 0, $vararg_buffer5 = 0, $x = 0, $z1 = 0, $z2 = 0, $zero = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer5 = sp + 24|0; + $vararg_buffer3 = sp + 16|0; + $vararg_buffer1 = sp + 8|0; + $vararg_buffer = sp; + $Q = sp + 56|0; + $Q1 = sp + 44|0; + $Q2 = sp + 32|0; + $1 = $input; + $2 = $pkey; + $3 = $r; + $4 = $s; + $err = 0; + $5 = $3; + $6 = (__gcry_mpi_cmp_ui($5,0)|0); + $7 = ($6|0)>(0); + if ($7) { + $8 = $3; + $9 = $2; + $10 = ((($9)) + 32|0); + $11 = HEAP32[$10>>2]|0; + $12 = (__gcry_mpi_cmp($8,$11)|0); + $13 = ($12|0)<(0); + if ($13) { + $14 = $4; + $15 = (__gcry_mpi_cmp_ui($14,0)|0); + $16 = ($15|0)>(0); + if ($16) { + $17 = $4; + $18 = $2; + $19 = ((($18)) + 32|0); + $20 = HEAP32[$19>>2]|0; + $21 = (__gcry_mpi_cmp($17,$20)|0); + $22 = ($21|0)<(0); + if ($22) { + $23 = (__gcry_mpi_alloc(0)|0); + $x = $23; + $24 = (__gcry_mpi_alloc(0)|0); + $e = $24; + $25 = (__gcry_mpi_alloc(0)|0); + $z1 = $25; + $26 = (__gcry_mpi_alloc(0)|0); + $z2 = $26; + $27 = (__gcry_mpi_alloc(0)|0); + $v = $27; + $28 = (__gcry_mpi_alloc(0)|0); + $rv = $28; + $29 = (__gcry_mpi_alloc(0)|0); + $zero = $29; + __gcry_mpi_point_init($Q); + __gcry_mpi_point_init($Q1); + __gcry_mpi_point_init($Q2); + $30 = $2; + $31 = HEAP32[$30>>2]|0; + $32 = $2; + $33 = ((($32)) + 4|0); + $34 = HEAP32[$33>>2]|0; + $35 = $2; + $36 = ((($35)) + 8|0); + $37 = HEAP32[$36>>2]|0; + $38 = $2; + $39 = ((($38)) + 12|0); + $40 = HEAP32[$39>>2]|0; + $41 = $2; + $42 = ((($41)) + 16|0); + $43 = HEAP32[$42>>2]|0; + $44 = (__gcry_mpi_ec_p_internal_new($31,$34,0,$37,$40,$43)|0); + $ctx = $44; + $45 = $e; + $46 = $1; + $47 = $2; + $48 = ((($47)) + 32|0); + $49 = HEAP32[$48>>2]|0; + __gcry_mpi_mod($45,$46,$49); + $50 = $e; + $51 = (__gcry_mpi_cmp_ui($50,0)|0); + $52 = ($51|0)!=(0); + if (!($52)) { + $53 = $e; + (__gcry_mpi_set_ui($53,1)|0); + } + $54 = $v; + $55 = $e; + $56 = $2; + $57 = ((($56)) + 32|0); + $58 = HEAP32[$57>>2]|0; + (__gcry_mpi_invm($54,$55,$58)|0); + $59 = $z1; + $60 = $4; + $61 = $v; + $62 = $2; + $63 = ((($62)) + 32|0); + $64 = HEAP32[$63>>2]|0; + __gcry_mpi_mulm($59,$60,$61,$64); + $65 = $rv; + $66 = $3; + $67 = $v; + $68 = $2; + $69 = ((($68)) + 32|0); + $70 = HEAP32[$69>>2]|0; + __gcry_mpi_mulm($65,$66,$67,$70); + $71 = $z2; + $72 = $zero; + $73 = $rv; + $74 = $2; + $75 = ((($74)) + 32|0); + $76 = HEAP32[$75>>2]|0; + __gcry_mpi_subm($71,$72,$73,$76); + $77 = $z1; + $78 = $2; + $79 = ((($78)) + 20|0); + $80 = $ctx; + __gcry_mpi_ec_mul_point($Q1,$77,$79,$80); + $81 = $z2; + $82 = $2; + $83 = ((($82)) + 44|0); + $84 = $ctx; + __gcry_mpi_ec_mul_point($Q2,$81,$83,$84); + $85 = $ctx; + __gcry_mpi_ec_add_points($Q,$Q1,$Q2,$85); + $86 = ((($Q)) + 8|0); + $87 = HEAP32[$86>>2]|0; + $88 = (__gcry_mpi_cmp_ui($87,0)|0); + $89 = ($88|0)!=(0); + do { + if ($89) { + $92 = $x; + $93 = $ctx; + $94 = (__gcry_mpi_ec_get_affine($92,0,$Q,$93)|0); + $95 = ($94|0)!=(0); + if ($95) { + $96 = (__gcry_get_debug_flag(1)|0); + $97 = ($96|0)!=(0); + if ($97) { + __gcry_log_debug(53337,$vararg_buffer1); + } + $err = 8; + break; + } + $98 = $x; + $99 = $x; + $100 = $2; + $101 = ((($100)) + 32|0); + $102 = HEAP32[$101>>2]|0; + __gcry_mpi_mod($98,$99,$102); + $103 = $x; + $104 = $3; + $105 = (__gcry_mpi_cmp($103,$104)|0); + $106 = ($105|0)!=(0); + $107 = (__gcry_get_debug_flag(1)|0); + $108 = ($107|0)!=(0); + if (!($106)) { + if (!($108)) { + break; + } + __gcry_log_debug(53430,$vararg_buffer5); + break; + } + if ($108) { + $109 = $x; + __gcry_log_printmpi(53383,$109); + $110 = $3; + __gcry_log_printmpi(53390,$110); + $111 = $4; + __gcry_log_printmpi(53397,$111); + __gcry_log_debug(53404,$vararg_buffer3); + } + $err = 8; + } else { + $90 = (__gcry_get_debug_flag(1)|0); + $91 = ($90|0)!=(0); + if ($91) { + __gcry_log_debug(53315,$vararg_buffer); + } + $err = 8; + } + } while(0); + $112 = $ctx; + __gcry_mpi_ec_free($112); + __gcry_mpi_point_free_parts($Q2); + __gcry_mpi_point_free_parts($Q1); + __gcry_mpi_point_free_parts($Q); + $113 = $zero; + __gcry_mpi_free($113); + $114 = $rv; + __gcry_mpi_free($114); + $115 = $v; + __gcry_mpi_free($115); + $116 = $z2; + __gcry_mpi_free($116); + $117 = $z1; + __gcry_mpi_free($117); + $118 = $x; + __gcry_mpi_free($118); + $119 = $e; + __gcry_mpi_free($119); + $120 = $err; + $0 = $120; + $121 = $0; + STACKTOP = sp;return ($121|0); + } + } + $0 = 8; + $121 = $0; + STACKTOP = sp;return ($121|0); + } + } + $0 = 8; + $121 = $0; + STACKTOP = sp;return ($121|0); +} +function _gpg_err_init() { + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (__gpg_err_init()|0); + return ($0|0); +} +function _gpg_strerror($err) { + $err = $err|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $err; + $1 = $0; + $2 = (__gpg_strerror($1)|0); + STACKTOP = sp;return ($2|0); +} +function _gpg_err_code_from_errno($err) { + $err = $err|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $err; + $1 = $0; + $2 = (__gpg_err_code_from_errno($1)|0); + STACKTOP = sp;return ($2|0); +} +function _gpg_err_code_to_errno($code) { + $code = $code|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $code; + $1 = $0; + $2 = (__gpg_err_code_to_errno($1)|0); + STACKTOP = sp;return ($2|0); +} +function _gpg_err_code_from_syserror() { + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (__gpg_err_code_from_syserror()|0); + return ($0|0); +} +function _gpg_err_set_errno($err) { + $err = $err|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $err; + $1 = $0; + __gpg_err_set_errno($1); + STACKTOP = sp;return; +} +function _gpgrt_lock_init($lockhd) { + $lockhd = $lockhd|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $lockhd; + $1 = $0; + $2 = (__gpgrt_lock_init($1)|0); + STACKTOP = sp;return ($2|0); +} +function _gpgrt_lock_lock($lockhd) { + $lockhd = $lockhd|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $lockhd; + $1 = $0; + $2 = (__gpgrt_lock_lock($1)|0); + STACKTOP = sp;return ($2|0); +} +function _gpgrt_lock_unlock($lockhd) { + $lockhd = $lockhd|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $lockhd; + $1 = $0; + $2 = (__gpgrt_lock_unlock($1)|0); + STACKTOP = sp;return ($2|0); +} +function _gpgrt_lock_destroy($lockhd) { + $lockhd = $lockhd|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $lockhd; + $1 = $0; + $2 = (__gpgrt_lock_destroy($1)|0); + STACKTOP = sp;return ($2|0); +} +function __gpgrt_lock_init($lockhd) { + $lockhd = $lockhd|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $lock = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $lockhd; + $1 = $0; + $lock = $1; + $2 = $lock; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0); + if ($4) { + $6 = $0; + $7 = (_get_lock_object($6)|0); + $lock = $7; + } else { + $5 = $lock; + HEAP32[$5>>2] = 1; + } + $8 = $lock; + $9 = ((($8)) + 4|0); + $10 = (_pthread_mutex_init(($9|0),(0|0))|0); + $rc = $10; + $11 = $rc; + $12 = ($11|0)!=(0); + if (!($12)) { + $15 = $rc; + STACKTOP = sp;return ($15|0); + } + $13 = $rc; + $14 = (_gpg_err_code_from_errno($13)|0); + $rc = $14; + $15 = $rc; + STACKTOP = sp;return ($15|0); +} +function _get_lock_object($lockhd) { + $lockhd = $lockhd|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $lock = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $lockhd; + $1 = $0; + $lock = $1; + $2 = $lock; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(1); + if ($4) { + ___assert_fail((53452|0),(53472|0),114,(53485|0)); + // unreachable; + } else { + $5 = $lock; + STACKTOP = sp;return ($5|0); + } + return (0)|0; +} +function __gpgrt_lock_lock($lockhd) { + $lockhd = $lockhd|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $lock = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $lockhd; + $1 = $0; + $2 = (_get_lock_object($1)|0); + $lock = $2; + $3 = $lock; + $4 = ((($3)) + 4|0); + $5 = (_pthread_mutex_lock(($4|0))|0); + $rc = $5; + $6 = $rc; + $7 = ($6|0)!=(0); + if (!($7)) { + $10 = $rc; + STACKTOP = sp;return ($10|0); + } + $8 = $rc; + $9 = (_gpg_err_code_from_errno($8)|0); + $rc = $9; + $10 = $rc; + STACKTOP = sp;return ($10|0); +} +function __gpgrt_lock_unlock($lockhd) { + $lockhd = $lockhd|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $lock = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $lockhd; + $1 = $0; + $2 = (_get_lock_object($1)|0); + $lock = $2; + $3 = $lock; + $4 = ((($3)) + 4|0); + $5 = (_pthread_mutex_unlock(($4|0))|0); + $rc = $5; + $6 = $rc; + $7 = ($6|0)!=(0); + if (!($7)) { + $10 = $rc; + STACKTOP = sp;return ($10|0); + } + $8 = $rc; + $9 = (_gpg_err_code_from_errno($8)|0); + $rc = $9; + $10 = $rc; + STACKTOP = sp;return ($10|0); +} +function __gpgrt_lock_destroy($lockhd) { + $lockhd = $lockhd|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $lock = 0, $rc = 0, $tmp = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $tmp = sp; + $0 = $lockhd; + $1 = $0; + $2 = (_get_lock_object($1)|0); + $lock = $2; + $3 = $lock; + $4 = ((($3)) + 4|0); + $5 = (_pthread_mutex_destroy(($4|0))|0); + $rc = $5; + $6 = $rc; + $7 = ($6|0)!=(0); + if ($7) { + $8 = $rc; + $9 = (_gpg_err_code_from_errno($8)|0); + $rc = $9; + $11 = $rc; + STACKTOP = sp;return ($11|0); + } else { + dest=$tmp; stop=dest+44|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + HEAP32[$tmp>>2] = 1; + $10 = $0; + dest=$10; src=$tmp; stop=dest+44|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $11 = $rc; + STACKTOP = sp;return ($11|0); + } + return (0)|0; +} +function __gpg_err_init() { + var label = 0, sp = 0; + sp = STACKTOP; + _real_init(); + return 0; +} +function _real_init() { + var label = 0, sp = 0; + sp = STACKTOP; + (__gpgrt_es_init()|0); + return; +} +function __gpg_err_set_errno($err) { + $err = $err|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $err; + $1 = $0; + $2 = (___errno_location()|0); + HEAP32[$2>>2] = $1; + STACKTOP = sp;return; +} +function __gpgrt_es_init() { + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP32[17776]|0; + $1 = ($0|0)!=(0); + if ($1) { + return 0; + } + HEAP32[17776] = 1; + (_atexit((84|0))|0); + return 0; +} +function _do_deinit() { + var label = 0, sp = 0; + sp = STACKTOP; + (__gpgrt_fflush(0)|0); + HEAP32[17778] = 0; + HEAP32[17779] = 0; + return; +} +function __gpgrt_fflush($stream) { + $stream = $stream|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $err = 0, $item = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $stream; + $1 = $0; + $2 = ($1|0)!=(0|0); + if ($2) { + $3 = $0; + _lock_stream($3); + $4 = $0; + $5 = (_do_fflush($4)|0); + $err = $5; + $6 = $0; + _unlock_stream($6); + $28 = $err; + $29 = ($28|0)!=(0); + $30 = $29 ? -1 : 0; + STACKTOP = sp;return ($30|0); + } + $err = 0; + _lock_list(); + $7 = HEAP32[17777]|0; + $item = $7; + while(1) { + $8 = $item; + $9 = ($8|0)!=(0|0); + if (!($9)) { + break; + } + $10 = $item; + $11 = ((($10)) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)!=(0|0); + if ($13) { + $14 = $item; + $15 = ((($14)) + 4|0); + $16 = HEAP32[$15>>2]|0; + _lock_stream($16); + $17 = $item; + $18 = ((($17)) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = (_do_fflush($19)|0); + $21 = $err; + $22 = $21 | $20; + $err = $22; + $23 = $item; + $24 = ((($23)) + 4|0); + $25 = HEAP32[$24>>2]|0; + _unlock_stream($25); + } + $26 = $item; + $27 = HEAP32[$26>>2]|0; + $item = $27; + } + _unlock_list(); + $28 = $err; + $29 = ($28|0)!=(0); + $30 = $29 ? -1 : 0; + STACKTOP = sp;return ($30|0); +} +function _lock_stream($stream) { + $stream = $stream|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $stream; + $1 = $0; + $2 = ((($1)) + 36|0); + $3 = HEAP32[$2>>2]|0; + $4 = ((($3)) + 1140|0); + $5 = HEAP8[$4>>0]|0; + $6 = ($5&255) >>> 5; + $7 = $6 & 1; + $8 = $7&255; + $9 = ($8|0)!=(0); + if ($9) { + STACKTOP = sp;return; + } + $10 = $0; + $11 = ((($10)) + 36|0); + $12 = HEAP32[$11>>2]|0; + $13 = ((($12)) + 1040|0); + (__gpgrt_lock_lock($13)|0); + STACKTOP = sp;return; +} +function _do_fflush($stream) { + $stream = $stream|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $err = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $stream; + $1 = $0; + $2 = HEAP32[$1>>2]|0; + $3 = $2 >>> 16; + $4 = $3 & 1; + $5 = ($4|0)!=(0); + $6 = $0; + if ($5) { + $7 = (_es_flush($6)|0); + $err = $7; + $8 = $err; + STACKTOP = sp;return ($8|0); + } else { + _es_empty($6); + $err = 0; + $8 = $err; + STACKTOP = sp;return ($8|0); + } + return (0)|0; +} +function _es_flush($stream) { + $stream = $stream|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $bytes_written = 0, $data_flushed = 0, $err = 0, $func_write = 0, $ret = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $stream; + $1 = $0; + $2 = ((($1)) + 36|0); + $3 = HEAP32[$2>>2]|0; + $4 = ((($3)) + 1108|0); + $5 = HEAP32[$4>>2]|0; + $func_write = $5; + $6 = $0; + $7 = HEAP32[$6>>2]|0; + $8 = $7 >>> 16; + $9 = $8 & 1; + $10 = ($9|0)!=(0); + if (!($10)) { + ___assert_fail((53501|0),(53523|0),1654,(53533|0)); + // unreachable; + } + $11 = $0; + $12 = ((($11)) + 16|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)!=(0); + do { + if ($14) { + $15 = $func_write; + $16 = ($15|0)!=(0|0); + if (!($16)) { + $err = 95; + break; + } + $data_flushed = 0; + $err = 0; + while(1) { + $17 = $0; + $18 = ((($17)) + 16|0); + $19 = HEAP32[$18>>2]|0; + $20 = $data_flushed; + $21 = (($19) - ($20))|0; + $22 = ($21|0)>(0); + if (!($22)) { + break; + } + $23 = $err; + $24 = ($23|0)!=(0); + $25 = $24 ^ 1; + if (!($25)) { + break; + } + $26 = $func_write; + $27 = $0; + $28 = ((($27)) + 36|0); + $29 = HEAP32[$28>>2]|0; + $30 = ((($29)) + 1084|0); + $31 = HEAP32[$30>>2]|0; + $32 = $0; + $33 = ((($32)) + 4|0); + $34 = HEAP32[$33>>2]|0; + $35 = $data_flushed; + $36 = (($34) + ($35)|0); + $37 = $0; + $38 = ((($37)) + 16|0); + $39 = HEAP32[$38>>2]|0; + $40 = $data_flushed; + $41 = (($39) - ($40))|0; + $42 = (FUNCTION_TABLE_iiii[$26 & 127]($31,$36,$41)|0); + $ret = $42; + $43 = $ret; + $44 = ($43|0)==(-1); + if ($44) { + $bytes_written = 0; + $err = -1; + } else { + $45 = $ret; + $bytes_written = $45; + } + $46 = $bytes_written; + $47 = $data_flushed; + $48 = (($47) + ($46))|0; + $data_flushed = $48; + $49 = $err; + $50 = ($49|0)!=(0); + if ($50) { + break; + } + } + $51 = $data_flushed; + $52 = $0; + $53 = ((($52)) + 20|0); + $54 = HEAP32[$53>>2]|0; + $55 = (($54) + ($51))|0; + HEAP32[$53>>2] = $55; + $56 = $0; + $57 = ((($56)) + 16|0); + $58 = HEAP32[$57>>2]|0; + $59 = $data_flushed; + $60 = ($58|0)==($59|0); + if ($60) { + $61 = $0; + $62 = ((($61)) + 16|0); + $63 = HEAP32[$62>>2]|0; + $64 = $0; + $65 = ((($64)) + 36|0); + $66 = HEAP32[$65>>2]|0; + $67 = ((($66)) + 1100|0); + $68 = HEAP32[$67>>2]|0; + $69 = (($68) + ($63))|0; + HEAP32[$67>>2] = $69; + $70 = $0; + $71 = ((($70)) + 16|0); + HEAP32[$71>>2] = 0; + $72 = $0; + $73 = ((($72)) + 20|0); + HEAP32[$73>>2] = 0; + $74 = $func_write; + $75 = $0; + $76 = ((($75)) + 36|0); + $77 = HEAP32[$76>>2]|0; + $78 = ((($77)) + 1084|0); + $79 = HEAP32[$78>>2]|0; + (FUNCTION_TABLE_iiii[$74 & 127]($79,0,0)|0); + } + } else { + $err = 0; + } + } while(0); + $80 = $err; + $81 = ($80|0)!=(0); + if (!($81)) { + $89 = $err; + STACKTOP = sp;return ($89|0); + } + $82 = $0; + $83 = ((($82)) + 36|0); + $84 = HEAP32[$83>>2]|0; + $85 = ((($84)) + 1136|0); + $86 = HEAP8[$85>>0]|0; + $87 = $86 & -2; + $88 = $87 | 1; + HEAP8[$85>>0] = $88; + $89 = $err; + STACKTOP = sp;return ($89|0); +} +function _es_empty($stream) { + $stream = $stream|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $stream; + $1 = $0; + $2 = HEAP32[$1>>2]|0; + $3 = $2 >>> 16; + $4 = $3 & 1; + $5 = ($4|0)!=(0); + if ($5) { + ___assert_fail((53542|0),(53523|0),1722,(53565|0)); + // unreachable; + } else { + $6 = $0; + $7 = ((($6)) + 12|0); + HEAP32[$7>>2] = 0; + $8 = $0; + $9 = ((($8)) + 16|0); + HEAP32[$9>>2] = 0; + $10 = $0; + $11 = ((($10)) + 32|0); + HEAP32[$11>>2] = 0; + STACKTOP = sp;return; + } +} +function _unlock_stream($stream) { + $stream = $stream|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $stream; + $1 = $0; + $2 = ((($1)) + 36|0); + $3 = HEAP32[$2>>2]|0; + $4 = ((($3)) + 1140|0); + $5 = HEAP8[$4>>0]|0; + $6 = ($5&255) >>> 5; + $7 = $6 & 1; + $8 = $7&255; + $9 = ($8|0)!=(0); + if ($9) { + STACKTOP = sp;return; + } + $10 = $0; + $11 = ((($10)) + 36|0); + $12 = HEAP32[$11>>2]|0; + $13 = ((($12)) + 1040|0); + (__gpgrt_lock_unlock($13)|0); + STACKTOP = sp;return; +} +function _lock_list() { + var label = 0, sp = 0; + sp = STACKTOP; + (__gpgrt_lock_lock(13104)|0); + return; +} +function _unlock_list() { + var label = 0, sp = 0; + sp = STACKTOP; + (__gpgrt_lock_unlock(13104)|0); + return; +} +function __gpg_strerror($err) { + $err = $err|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $code = 0; + var $no = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $err; + $2 = $1; + $3 = (_gpg_err_code_2552($2)|0); + $code = $3; + $4 = $code; + $5 = $4 & 32768; + $6 = ($5|0)!=(0); + do { + if ($6) { + $7 = $code; + $8 = (_gpg_err_code_to_errno($7)|0); + $no = $8; + $9 = $no; + $10 = ($9|0)!=(0); + if (!($10)) { + $code = 16382; + break; + } + $11 = $no; + $12 = (_strerror($11)|0); + $0 = $12; + $18 = $0; + STACKTOP = sp;return ($18|0); + } + } while(0); + $13 = $code; + $14 = (_msgidxof_2553($13)|0); + $15 = (13148 + ($14<<2)|0); + $16 = HEAP32[$15>>2]|0; + $17 = (53574 + ($16)|0); + $0 = $17; + $18 = $0; + STACKTOP = sp;return ($18|0); +} +function _gpg_err_code_2552($err) { + $err = $err|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $err; + $1 = $0; + $2 = $1 & 65535; + STACKTOP = sp;return ($2|0); +} +function _msgidxof_2553($code) { + $code = $code|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $9 = 0, $or$cond = 0, $or$cond11 = 0, $or$cond13 = 0, $or$cond15 = 0, $or$cond17 = 0, $or$cond19 = 0, $or$cond21 = 0, $or$cond23 = 0, $or$cond25 = 0, $or$cond27 = 0, $or$cond29 = 0, $or$cond3 = 0, $or$cond31 = 0, $or$cond5 = 0, $or$cond7 = 0, $or$cond9 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $code; + $1 = $0; + $2 = ($1|0)>=(0); + $3 = $0; + $4 = ($3|0)<=(213); + $or$cond = $2 & $4; + $5 = $0; + do { + if ($or$cond) { + $6 = (($5) - 0)|0; + $83 = $6; + } else { + $7 = ($5|0)>=(222); + $8 = $0; + $9 = ($8|0)<=(254); + $or$cond3 = $7 & $9; + $10 = $0; + if ($or$cond3) { + $11 = (($10) - 8)|0; + $83 = $11; + break; + } + $12 = ($10|0)>=(257); + $13 = $0; + $14 = ($13|0)<=(271); + $or$cond5 = $12 & $14; + $15 = $0; + if ($or$cond5) { + $16 = (($15) - 10)|0; + $83 = $16; + break; + } + $17 = ($15|0)>=(273); + $18 = $0; + $19 = ($18|0)<=(281); + $or$cond7 = $17 & $19; + $20 = $0; + if ($or$cond7) { + $21 = (($20) - 11)|0; + $83 = $21; + break; + } + $22 = ($20|0)>=(721); + $23 = $0; + $24 = ($23|0)<=(729); + $or$cond9 = $22 & $24; + $25 = $0; + if ($or$cond9) { + $26 = (($25) - 450)|0; + $83 = $26; + break; + } + $27 = ($25|0)>=(750); + $28 = $0; + $29 = ($28|0)<=(752); + $or$cond11 = $27 & $29; + $30 = $0; + if ($or$cond11) { + $31 = (($30) - 470)|0; + $83 = $31; + break; + } + $32 = ($30|0)>=(754); + $33 = $0; + $34 = ($33|0)<=(782); + $or$cond13 = $32 & $34; + $35 = $0; + if ($or$cond13) { + $36 = (($35) - 471)|0; + $83 = $36; + break; + } + $37 = ($35|0)>=(784); + $38 = $0; + $39 = ($38|0)<=(789); + $or$cond15 = $37 & $39; + $40 = $0; + if ($or$cond15) { + $41 = (($40) - 472)|0; + $83 = $41; + break; + } + $42 = ($40|0)>=(800); + $43 = $0; + $44 = ($43|0)<=(804); + $or$cond17 = $42 & $44; + $45 = $0; + if ($or$cond17) { + $46 = (($45) - 482)|0; + $83 = $46; + break; + } + $47 = ($45|0)>=(815); + $48 = $0; + $49 = ($48|0)<=(822); + $or$cond19 = $47 & $49; + $50 = $0; + if ($or$cond19) { + $51 = (($50) - 492)|0; + $83 = $51; + break; + } + $52 = ($50|0)>=(832); + $53 = $0; + $54 = ($53|0)<=(839); + $or$cond21 = $52 & $54; + $55 = $0; + if ($or$cond21) { + $56 = (($55) - 501)|0; + $83 = $56; + break; + } + $57 = ($55|0)>=(844); + $58 = $0; + $59 = ($58|0)<=(844); + $or$cond23 = $57 & $59; + $60 = $0; + if ($or$cond23) { + $61 = (($60) - 505)|0; + $83 = $61; + break; + } + $62 = ($60|0)>=(848); + $63 = $0; + $64 = ($63|0)<=(848); + $or$cond25 = $62 & $64; + $65 = $0; + if ($or$cond25) { + $66 = (($65) - 508)|0; + $83 = $66; + break; + } + $67 = ($65|0)>=(881); + $68 = $0; + $69 = ($68|0)<=(891); + $or$cond27 = $67 & $69; + $70 = $0; + if ($or$cond27) { + $71 = (($70) - 540)|0; + $83 = $71; + break; + } + $72 = ($70|0)>=(1024); + $73 = $0; + $74 = ($73|0)<=(1039); + $or$cond29 = $72 & $74; + $75 = $0; + if ($or$cond29) { + $76 = (($75) - 672)|0; + $83 = $76; + break; + } else { + $77 = ($75|0)>=(16381); + $78 = $0; + $79 = ($78|0)<=(16383); + $or$cond31 = $77 & $79; + $80 = $0; + $81 = (($80) - 16013)|0; + $82 = $or$cond31 ? $81 : 371; + $83 = $82; + break; + } + } + } while(0); + STACKTOP = sp;return ($83|0); +} +function __gpg_err_code_to_errno($code) { + $code = $code|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $code; + $2 = $1; + $3 = $2 & 32768; + $4 = ($3|0)!=(0); + do { + if ($4) { + $5 = $1; + $6 = $5 & -32769; + $1 = $6; + $7 = $1; + $8 = ($7>>>0)<(141); + if ($8) { + $9 = $1; + $10 = (14636 + ($9<<2)|0); + $11 = HEAP32[$10>>2]|0; + $0 = $11; + break; + } else { + $0 = 0; + break; + } + } else { + $0 = 0; + } + } while(0); + $12 = $0; + STACKTOP = sp;return ($12|0); +} +function __gpg_err_code_from_errno($err) { + $err = $err|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $idx = 0, $or$cond = 0, $or$cond11 = 0, $or$cond3 = 0, $or$cond5 = 0, $or$cond7 = 0, $or$cond9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $err; + $2 = $1; + $3 = ($2|0)!=(0); + if (!($3)) { + $0 = 0; + $43 = $0; + STACKTOP = sp;return ($43|0); + } + $4 = $1; + $5 = ($4|0)>=(1); + $6 = $1; + $7 = ($6|0)<=(11); + $or$cond = $5 & $7; + $8 = $1; + do { + if ($or$cond) { + $9 = (($8) - 1)|0; + $36 = $9; + } else { + $10 = ($8|0)>=(11); + $11 = $1; + $12 = ($11|0)<=(35); + $or$cond3 = $10 & $12; + $13 = $1; + if ($or$cond3) { + $14 = (($13) - 0)|0; + $36 = $14; + break; + } + $15 = ($13|0)>=(35); + $16 = $1; + $17 = ($16|0)<=(40); + $or$cond5 = $15 & $17; + $18 = $1; + if ($or$cond5) { + $19 = (($18) - -1)|0; + $36 = $19; + break; + } + $20 = ($18|0)>=(42); + $21 = $1; + $22 = ($21|0)<=(57); + $or$cond7 = $20 & $22; + $23 = $1; + if ($or$cond7) { + $24 = (($23) - 0)|0; + $36 = $24; + break; + } + $25 = ($23|0)>=(59); + $26 = $1; + $27 = ($26|0)<=(95); + $or$cond9 = $25 & $27; + $28 = $1; + if ($or$cond9) { + $29 = (($28) - 1)|0; + $36 = $29; + break; + } else { + $30 = ($28|0)>=(95); + $31 = $1; + $32 = ($31|0)<=(125); + $or$cond11 = $30 & $32; + $33 = $1; + $34 = (($33) - 0)|0; + $35 = $or$cond11 ? $34 : -1; + $36 = $35; + break; + } + } + } while(0); + $idx = $36; + $37 = $idx; + $38 = ($37|0)<(0); + if ($38) { + $0 = 16382; + $43 = $0; + STACKTOP = sp;return ($43|0); + } else { + $39 = $idx; + $40 = (15200 + ($39<<2)|0); + $41 = HEAP32[$40>>2]|0; + $42 = 32768 | $41; + $0 = $42; + $43 = $0; + STACKTOP = sp;return ($43|0); + } + return (0)|0; +} +function __gpg_err_code_from_syserror() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $err = 0, $idx = 0, $or$cond = 0, $or$cond11 = 0, $or$cond3 = 0, $or$cond5 = 0, $or$cond7 = 0, $or$cond9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = (___errno_location()|0); + $2 = HEAP32[$1>>2]|0; + $err = $2; + $3 = $err; + $4 = ($3|0)!=(0); + if (!($4)) { + $0 = 16381; + $44 = $0; + STACKTOP = sp;return ($44|0); + } + $5 = $err; + $6 = ($5|0)>=(1); + $7 = $err; + $8 = ($7|0)<=(11); + $or$cond = $6 & $8; + $9 = $err; + do { + if ($or$cond) { + $10 = (($9) - 1)|0; + $37 = $10; + } else { + $11 = ($9|0)>=(11); + $12 = $err; + $13 = ($12|0)<=(35); + $or$cond3 = $11 & $13; + $14 = $err; + if ($or$cond3) { + $15 = (($14) - 0)|0; + $37 = $15; + break; + } + $16 = ($14|0)>=(35); + $17 = $err; + $18 = ($17|0)<=(40); + $or$cond5 = $16 & $18; + $19 = $err; + if ($or$cond5) { + $20 = (($19) - -1)|0; + $37 = $20; + break; + } + $21 = ($19|0)>=(42); + $22 = $err; + $23 = ($22|0)<=(57); + $or$cond7 = $21 & $23; + $24 = $err; + if ($or$cond7) { + $25 = (($24) - 0)|0; + $37 = $25; + break; + } + $26 = ($24|0)>=(59); + $27 = $err; + $28 = ($27|0)<=(95); + $or$cond9 = $26 & $28; + $29 = $err; + if ($or$cond9) { + $30 = (($29) - 1)|0; + $37 = $30; + break; + } else { + $31 = ($29|0)>=(95); + $32 = $err; + $33 = ($32|0)<=(125); + $or$cond11 = $31 & $33; + $34 = $err; + $35 = (($34) - 0)|0; + $36 = $or$cond11 ? $35 : -1; + $37 = $36; + break; + } + } + } while(0); + $idx = $37; + $38 = $idx; + $39 = ($38|0)<(0); + if ($39) { + $0 = 16382; + $44 = $0; + STACKTOP = sp;return ($44|0); + } else { + $40 = $idx; + $41 = (15200 + ($40<<2)|0); + $42 = HEAP32[$41>>2]|0; + $43 = 32768 | $42; + $0 = $43; + $44 = $0; + STACKTOP = sp;return ($44|0); + } + return (0)|0; +} +function _TALER_amount_hton($res,$d) { + $res = $res|0; + $d = $d|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $res; + $1 = $d; + $2 = $1; + $3 = $2; + $4 = $3; + $5 = HEAP32[$4>>2]|0; + $6 = (($3) + 4)|0; + $7 = $6; + $8 = HEAP32[$7>>2]|0; + $9 = (_GNUNET_htonll($5,$8)|0); + $10 = tempRet0; + $11 = $0; + $12 = $11; + $13 = $12; + HEAP8[$13>>0]=$9&255;HEAP8[$13+1>>0]=($9>>8)&255;HEAP8[$13+2>>0]=($9>>16)&255;HEAP8[$13+3>>0]=$9>>24; + $14 = (($12) + 4)|0; + $15 = $14; + HEAP8[$15>>0]=$10&255;HEAP8[$15+1>>0]=($10>>8)&255;HEAP8[$15+2>>0]=($10>>16)&255;HEAP8[$15+3>>0]=$10>>24; + $16 = $1; + $17 = ((($16)) + 8|0); + $18 = HEAP32[$17>>2]|0; + $19 = (_htonl($18)|0); + $20 = $0; + $21 = ((($20)) + 8|0); + HEAP8[$21>>0]=$19&255;HEAP8[$21+1>>0]=($19>>8)&255;HEAP8[$21+2>>0]=($19>>16)&255;HEAP8[$21+3>>0]=$19>>24; + $22 = $0; + $23 = ((($22)) + 12|0); + $24 = $1; + $25 = ((($24)) + 12|0); + dest=$23; src=$25; stop=dest+12|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + STACKTOP = sp;return; +} +function _TALER_amount_ntoh($res,$dn) { + $res = $res|0; + $dn = $dn|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $res; + $1 = $dn; + $2 = $1; + $3 = $2; + $4 = $3; + $5 = HEAPU8[$4>>0]|(HEAPU8[$4+1>>0]<<8)|(HEAPU8[$4+2>>0]<<16)|(HEAPU8[$4+3>>0]<<24); + $6 = (($3) + 4)|0; + $7 = $6; + $8 = HEAPU8[$7>>0]|(HEAPU8[$7+1>>0]<<8)|(HEAPU8[$7+2>>0]<<16)|(HEAPU8[$7+3>>0]<<24); + $9 = (_GNUNET_ntohll($5,$8)|0); + $10 = tempRet0; + $11 = $0; + $12 = $11; + $13 = $12; + HEAP32[$13>>2] = $9; + $14 = (($12) + 4)|0; + $15 = $14; + HEAP32[$15>>2] = $10; + $16 = $1; + $17 = ((($16)) + 8|0); + $18 = HEAPU8[$17>>0]|(HEAPU8[$17+1>>0]<<8)|(HEAPU8[$17+2>>0]<<16)|(HEAPU8[$17+3>>0]<<24); + $19 = (_ntohl($18)|0); + $20 = $0; + $21 = ((($20)) + 8|0); + HEAP32[$21>>2] = $19; + $22 = $0; + $23 = ((($22)) + 12|0); + $24 = $1; + $25 = ((($24)) + 12|0); + dest=$23; src=$25; stop=dest+12|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + STACKTOP = sp;return; +} +function _TALER_amount_get_zero($cur,$denom) { + $cur = $cur|0; + $denom = $denom|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $slen = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $cur; + $2 = $denom; + $3 = $1; + $4 = (_strlen($3)|0); + $slen = $4; + $5 = $slen; + $6 = ($5>>>0)>=(12); + if ($6) { + $0 = -1; + $12 = $0; + STACKTOP = sp;return ($12|0); + } else { + $7 = $2; + ;HEAP32[$7>>2]=0|0;HEAP32[$7+4>>2]=0|0;HEAP32[$7+8>>2]=0|0;HEAP32[$7+12>>2]=0|0;HEAP32[$7+16>>2]=0|0;HEAP32[$7+20>>2]=0|0; + $8 = $2; + $9 = ((($8)) + 12|0); + $10 = $1; + $11 = $slen; + _memcpy(($9|0),($10|0),($11|0))|0; + $0 = 1; + $12 = $0; + STACKTOP = sp;return ($12|0); + } + return (0)|0; +} +function _TALER_amount_cmp_currency($a1,$a2) { + $a1 = $a1|0; + $a2 = $a2|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $a1; + $2 = $a2; + $3 = $1; + $4 = (_test_valid($3)|0); + $5 = (0)==($4|0); + do { + if ($5) { + label = 3; + } else { + $6 = $2; + $7 = (_test_valid($6)|0); + $8 = (0)==($7|0); + if ($8) { + label = 3; + } else { + $9 = $1; + $10 = ((($9)) + 12|0); + $11 = $2; + $12 = ((($11)) + 12|0); + $13 = (_strcasecmp($10,$12)|0); + $14 = (0)==($13|0); + if ($14) { + $0 = 1; + break; + } else { + $0 = 0; + break; + } + } + } + } while(0); + if ((label|0) == 3) { + $0 = -1; + } + $15 = $0; + STACKTOP = sp;return ($15|0); +} +function _test_valid($a) { + $a = $a|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $0; + $2 = ((($1)) + 12|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3 << 24 >> 24; + $5 = (0)!=($4|0); + $6 = $5&1; + STACKTOP = sp;return ($6|0); +} +function _TALER_amount_cmp($a1,$a2) { + $a1 = $a1|0; + $a2 = $a2|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $9 = 0; + var $log_line = 0, $log_line1 = 0, $log_line2 = 0, $n1 = 0, $n2 = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer6 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, $vararg_ptr9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer6 = sp + 64|0; + $vararg_buffer2 = sp + 56|0; + $vararg_buffer = sp + 48|0; + $n1 = sp + 24|0; + $n2 = sp; + $1 = $a1; + $2 = $a2; + $3 = $1; + $4 = $2; + $5 = (_TALER_amount_cmp_currency($3,$4)|0); + $6 = (1)==($5|0); + if (!($6)) { + $log_line = 325; + $7 = HEAP32[3926]|0; + $8 = ($7|0)==(-1); + if ($8) { + $9 = $log_line; + $10 = (_GNUNET_get_log_call_status(1,0,61589,61598,$9)|0); + HEAP32[3926] = $10; + } + $11 = (_GNUNET_get_log_skip()|0); + $12 = ($11|0)>(0); + if ($12) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $13 = HEAP32[3926]|0; + $14 = ($13|0)!=(0); + if (!($14)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 61589; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 325; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + } + $15 = $1; + ;HEAP32[$n1>>2]=HEAP32[$15>>2]|0;HEAP32[$n1+4>>2]=HEAP32[$15+4>>2]|0;HEAP32[$n1+8>>2]=HEAP32[$15+8>>2]|0;HEAP32[$n1+12>>2]=HEAP32[$15+12>>2]|0;HEAP32[$n1+16>>2]=HEAP32[$15+16>>2]|0;HEAP32[$n1+20>>2]=HEAP32[$15+20>>2]|0; + $16 = $2; + ;HEAP32[$n2>>2]=HEAP32[$16>>2]|0;HEAP32[$n2+4>>2]=HEAP32[$16+4>>2]|0;HEAP32[$n2+8>>2]=HEAP32[$16+8>>2]|0;HEAP32[$n2+12>>2]=HEAP32[$16+12>>2]|0;HEAP32[$n2+16>>2]=HEAP32[$16+16>>2]|0;HEAP32[$n2+20>>2]=HEAP32[$16+20>>2]|0; + $17 = (_TALER_amount_normalize($n1)|0); + $18 = (-1)!=($17|0); + if (!($18)) { + $log_line1 = 329; + $19 = HEAP32[3927]|0; + $20 = ($19|0)==(-1); + if ($20) { + $21 = $log_line1; + $22 = (_GNUNET_get_log_call_status(1,0,61589,61598,$21)|0); + HEAP32[3927] = $22; + } + $23 = (_GNUNET_get_log_skip()|0); + $24 = ($23|0)>(0); + if ($24) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $25 = HEAP32[3927]|0; + $26 = ($25|0)!=(0); + if (!($26)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer2>>2] = 61589; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = 329; + _GNUNET_log_nocheck(1,61615,$vararg_buffer2); + _GNUNET_abort_(); + // unreachable; + } + $27 = (_TALER_amount_normalize($n2)|0); + $28 = (-1)!=($27|0); + if (!($28)) { + $log_line2 = 331; + $29 = HEAP32[3928]|0; + $30 = ($29|0)==(-1); + if ($30) { + $31 = $log_line2; + $32 = (_GNUNET_get_log_call_status(1,0,61589,61598,$31)|0); + HEAP32[3928] = $32; + } + $33 = (_GNUNET_get_log_skip()|0); + $34 = ($33|0)>(0); + if ($34) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $35 = HEAP32[3928]|0; + $36 = ($35|0)!=(0); + if (!($36)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer6>>2] = 61589; + $vararg_ptr9 = ((($vararg_buffer6)) + 4|0); + HEAP32[$vararg_ptr9>>2] = 331; + _GNUNET_log_nocheck(1,61615,$vararg_buffer6); + _GNUNET_abort_(); + // unreachable; + } + $37 = $n1; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (($37) + 4)|0; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $43 = $n2; + $44 = $43; + $45 = HEAP32[$44>>2]|0; + $46 = (($43) + 4)|0; + $47 = $46; + $48 = HEAP32[$47>>2]|0; + $49 = ($39|0)==($45|0); + $50 = ($42|0)==($48|0); + $51 = $49 & $50; + if (!($51)) { + $62 = $n1; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = (($62) + 4)|0; + $66 = $65; + $67 = HEAP32[$66>>2]|0; + $68 = $n2; + $69 = $68; + $70 = HEAP32[$69>>2]|0; + $71 = (($68) + 4)|0; + $72 = $71; + $73 = HEAP32[$72>>2]|0; + $74 = ($67>>>0)<($73>>>0); + $75 = ($64>>>0)<($70>>>0); + $76 = ($67|0)==($73|0); + $77 = $76 & $75; + $78 = $74 | $77; + if ($78) { + $0 = -1; + $79 = $0; + STACKTOP = sp;return ($79|0); + } else { + $0 = 1; + $79 = $0; + STACKTOP = sp;return ($79|0); + } + } + $52 = ((($n1)) + 8|0); + $53 = HEAP32[$52>>2]|0; + $54 = ((($n2)) + 8|0); + $55 = HEAP32[$54>>2]|0; + $56 = ($53>>>0)<($55>>>0); + if ($56) { + $0 = -1; + $79 = $0; + STACKTOP = sp;return ($79|0); + } + $57 = ((($n1)) + 8|0); + $58 = HEAP32[$57>>2]|0; + $59 = ((($n2)) + 8|0); + $60 = HEAP32[$59>>2]|0; + $61 = ($58>>>0)>($60>>>0); + if ($61) { + $0 = 1; + $79 = $0; + STACKTOP = sp;return ($79|0); + } else { + $0 = 0; + $79 = $0; + STACKTOP = sp;return ($79|0); + } + return (0)|0; +} +function _TALER_amount_normalize($amount) { + $amount = $amount|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $ret = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $1 = $amount; + $2 = $1; + $3 = (_test_valid($2)|0); + $4 = (1)!=($3|0); + if ($4) { + $0 = -1; + $39 = $0; + STACKTOP = sp;return ($39|0); + } + $ret = 0; + while(1) { + $5 = $1; + $6 = $5; + $7 = $6; + $8 = HEAP32[$7>>2]|0; + $9 = (($6) + 4)|0; + $10 = $9; + $11 = HEAP32[$10>>2]|0; + $12 = ($8|0)!=(-1); + $13 = ($11|0)!=(-1); + $14 = $12 | $13; + if ($14) { + $15 = $1; + $16 = ((($15)) + 8|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($17>>>0)>=(1000000); + $40 = $18; + } else { + $40 = 0; + } + $19 = $1; + $20 = ((($19)) + 8|0); + $21 = HEAP32[$20>>2]|0; + if (!($40)) { + break; + } + $22 = (($21) - 1000000)|0; + HEAP32[$20>>2] = $22; + $23 = $1; + $24 = $23; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + $27 = (($24) + 4)|0; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $30 = (_i64Add(($26|0),($29|0),1,0)|0); + $31 = tempRet0; + $32 = $23; + $33 = $32; + HEAP32[$33>>2] = $30; + $34 = (($32) + 4)|0; + $35 = $34; + HEAP32[$35>>2] = $31; + $ret = 1; + } + $36 = ($21>>>0)>=(1000000); + if ($36) { + $37 = $1; + _invalidate($37); + $0 = -1; + $39 = $0; + STACKTOP = sp;return ($39|0); + } else { + $38 = $ret; + $0 = $38; + $39 = $0; + STACKTOP = sp;return ($39|0); + } + return (0)|0; +} +function _invalidate($a) { + $a = $a|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $0 = $a; + $1 = $0; + ;HEAP32[$1>>2]=0|0;HEAP32[$1+4>>2]=0|0;HEAP32[$1+8>>2]=0|0;HEAP32[$1+12>>2]=0|0;HEAP32[$1+16>>2]=0|0;HEAP32[$1+20>>2]=0|0; + STACKTOP = sp;return; +} +function _TALER_amount_subtract($diff,$a1,$a2) { + $diff = $diff|0; + $a1 = $a1|0; + $a2 = $a2|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $log_line = 0, $log_line1 = 0, $log_line2 = 0, $n1 = 0, $n2 = 0; + var $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer6 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, $vararg_ptr9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer6 = sp + 64|0; + $vararg_buffer2 = sp + 56|0; + $vararg_buffer = sp + 48|0; + $n1 = sp + 24|0; + $n2 = sp; + $1 = $diff; + $2 = $a1; + $3 = $a2; + $4 = $2; + $5 = $3; + $6 = (_TALER_amount_cmp_currency($4,$5)|0); + $7 = (1)!=($6|0); + if ($7) { + $8 = $1; + _invalidate($8); + $0 = -1; + $154 = $0; + STACKTOP = sp;return ($154|0); + } + $9 = $2; + ;HEAP32[$n1>>2]=HEAP32[$9>>2]|0;HEAP32[$n1+4>>2]=HEAP32[$9+4>>2]|0;HEAP32[$n1+8>>2]=HEAP32[$9+8>>2]|0;HEAP32[$n1+12>>2]=HEAP32[$9+12>>2]|0;HEAP32[$n1+16>>2]=HEAP32[$9+16>>2]|0;HEAP32[$n1+20>>2]=HEAP32[$9+20>>2]|0; + $10 = $3; + ;HEAP32[$n2>>2]=HEAP32[$10>>2]|0;HEAP32[$n2+4>>2]=HEAP32[$10+4>>2]|0;HEAP32[$n2+8>>2]=HEAP32[$10+8>>2]|0;HEAP32[$n2+12>>2]=HEAP32[$10+12>>2]|0;HEAP32[$n2+16>>2]=HEAP32[$10+16>>2]|0;HEAP32[$n2+20>>2]=HEAP32[$10+20>>2]|0; + $11 = (_TALER_amount_normalize($n1)|0); + $12 = (-1)==($11|0); + if (!($12)) { + $13 = (_TALER_amount_normalize($n2)|0); + $14 = (-1)==($13|0); + if (!($14)) { + $16 = ((($n1)) + 8|0); + $17 = HEAP32[$16>>2]|0; + $18 = ((($n2)) + 8|0); + $19 = HEAP32[$18>>2]|0; + $20 = ($17>>>0)<($19>>>0); + do { + if ($20) { + $21 = $n1; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = (($21) + 4)|0; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + $27 = (0)==($23|0); + $28 = (0)==($26|0); + $29 = $27 & $28; + if (!($29)) { + $31 = ((($n1)) + 8|0); + $32 = HEAP32[$31>>2]|0; + $33 = (($32) + 1000000)|0; + HEAP32[$31>>2] = $33; + $34 = $n1; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (($34) + 4)|0; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (_i64Add(($36|0),($39|0),-1,-1)|0); + $41 = tempRet0; + $42 = $n1; + $43 = $42; + HEAP32[$43>>2] = $40; + $44 = (($42) + 4)|0; + $45 = $44; + HEAP32[$45>>2] = $41; + break; + } + $30 = $1; + _invalidate($30); + $0 = -1; + $154 = $0; + STACKTOP = sp;return ($154|0); + } + } while(0); + $46 = $n1; + $47 = $46; + $48 = HEAP32[$47>>2]|0; + $49 = (($46) + 4)|0; + $50 = $49; + $51 = HEAP32[$50>>2]|0; + $52 = $n2; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + $55 = (($52) + 4)|0; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + $58 = ($51>>>0)<($57>>>0); + $59 = ($48>>>0)<($54>>>0); + $60 = ($51|0)==($57|0); + $61 = $60 & $59; + $62 = $58 | $61; + if ($62) { + $63 = $1; + _invalidate($63); + $0 = -1; + $154 = $0; + STACKTOP = sp;return ($154|0); + } + $64 = ((($n1)) + 12|0); + $65 = $1; + $66 = (_TALER_amount_get_zero($64,$65)|0); + $67 = (1)==($66|0); + if (!($67)) { + $log_line = 397; + $68 = HEAP32[3929]|0; + $69 = ($68|0)==(-1); + if ($69) { + $70 = $log_line; + $71 = (_GNUNET_get_log_call_status(1,0,61589,61643,$70)|0); + HEAP32[3929] = $71; + } + $72 = (_GNUNET_get_log_skip()|0); + $73 = ($72|0)>(0); + if ($73) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $74 = HEAP32[3929]|0; + $75 = ($74|0)!=(0); + if (!($75)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 61589; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 397; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + } + $76 = ((($n1)) + 8|0); + $77 = HEAP32[$76>>2]|0; + $78 = ((($n2)) + 8|0); + $79 = HEAP32[$78>>2]|0; + $80 = ($77>>>0)>=($79>>>0); + if (!($80)) { + $log_line1 = 398; + $81 = HEAP32[3930]|0; + $82 = ($81|0)==(-1); + if ($82) { + $83 = $log_line1; + $84 = (_GNUNET_get_log_call_status(1,0,61589,61643,$83)|0); + HEAP32[3930] = $84; + } + $85 = (_GNUNET_get_log_skip()|0); + $86 = ($85|0)>(0); + if ($86) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $87 = HEAP32[3930]|0; + $88 = ($87|0)!=(0); + if (!($88)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer2>>2] = 61589; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = 398; + _GNUNET_log_nocheck(1,61615,$vararg_buffer2); + _GNUNET_abort_(); + // unreachable; + } + $89 = ((($n1)) + 8|0); + $90 = HEAP32[$89>>2]|0; + $91 = ((($n2)) + 8|0); + $92 = HEAP32[$91>>2]|0; + $93 = (($90) - ($92))|0; + $94 = $1; + $95 = ((($94)) + 8|0); + HEAP32[$95>>2] = $93; + $96 = $n1; + $97 = $96; + $98 = HEAP32[$97>>2]|0; + $99 = (($96) + 4)|0; + $100 = $99; + $101 = HEAP32[$100>>2]|0; + $102 = $n2; + $103 = $102; + $104 = HEAP32[$103>>2]|0; + $105 = (($102) + 4)|0; + $106 = $105; + $107 = HEAP32[$106>>2]|0; + $108 = ($101>>>0)>($107>>>0); + $109 = ($98>>>0)>=($104>>>0); + $110 = ($101|0)==($107|0); + $111 = $110 & $109; + $112 = $108 | $111; + if ($112) { + $121 = $n1; + $122 = $121; + $123 = HEAP32[$122>>2]|0; + $124 = (($121) + 4)|0; + $125 = $124; + $126 = HEAP32[$125>>2]|0; + $127 = $n2; + $128 = $127; + $129 = HEAP32[$128>>2]|0; + $130 = (($127) + 4)|0; + $131 = $130; + $132 = HEAP32[$131>>2]|0; + $133 = (_i64Subtract(($123|0),($126|0),($129|0),($132|0))|0); + $134 = tempRet0; + $135 = $1; + $136 = $135; + $137 = $136; + HEAP32[$137>>2] = $133; + $138 = (($136) + 4)|0; + $139 = $138; + HEAP32[$139>>2] = $134; + $140 = $1; + $141 = ((($140)) + 8|0); + $142 = HEAP32[$141>>2]|0; + $143 = (0)==($142|0); + if ($143) { + $144 = $1; + $145 = $144; + $146 = $145; + $147 = HEAP32[$146>>2]|0; + $148 = (($145) + 4)|0; + $149 = $148; + $150 = HEAP32[$149>>2]|0; + $151 = (0)==($147|0); + $152 = (0)==($150|0); + $153 = $151 & $152; + if ($153) { + $0 = 0; + $154 = $0; + STACKTOP = sp;return ($154|0); + } + } + $0 = 1; + $154 = $0; + STACKTOP = sp;return ($154|0); + } + $log_line2 = 400; + $113 = HEAP32[3931]|0; + $114 = ($113|0)==(-1); + if ($114) { + $115 = $log_line2; + $116 = (_GNUNET_get_log_call_status(1,0,61589,61643,$115)|0); + HEAP32[3931] = $116; + } + $117 = (_GNUNET_get_log_skip()|0); + $118 = ($117|0)>(0); + if ($118) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $119 = HEAP32[3931]|0; + $120 = ($119|0)!=(0); + if (!($120)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer6>>2] = 61589; + $vararg_ptr9 = ((($vararg_buffer6)) + 4|0); + HEAP32[$vararg_ptr9>>2] = 400; + _GNUNET_log_nocheck(1,61615,$vararg_buffer6); + _GNUNET_abort_(); + // unreachable; + } + } + $15 = $1; + _invalidate($15); + $0 = -1; + $154 = $0; + STACKTOP = sp;return ($154|0); +} +function _TALER_amount_add($sum,$a1,$a2) { + $sum = $sum|0; + $a1 = $a1|0; + $a2 = $a2|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $8 = 0, $9 = 0, $log_line = 0, $n1 = 0, $n2 = 0, $res = 0, $vararg_buffer = 0, $vararg_ptr1 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp + 72|0; + $n1 = sp + 48|0; + $n2 = sp + 24|0; + $res = sp; + $1 = $sum; + $2 = $a1; + $3 = $a2; + $4 = $2; + $5 = $3; + $6 = (_TALER_amount_cmp_currency($4,$5)|0); + $7 = (1)!=($6|0); + if ($7) { + $8 = $1; + _invalidate($8); + $0 = -1; + $73 = $0; + STACKTOP = sp;return ($73|0); + } + $9 = $2; + ;HEAP32[$n1>>2]=HEAP32[$9>>2]|0;HEAP32[$n1+4>>2]=HEAP32[$9+4>>2]|0;HEAP32[$n1+8>>2]=HEAP32[$9+8>>2]|0;HEAP32[$n1+12>>2]=HEAP32[$9+12>>2]|0;HEAP32[$n1+16>>2]=HEAP32[$9+16>>2]|0;HEAP32[$n1+20>>2]=HEAP32[$9+20>>2]|0; + $10 = $3; + ;HEAP32[$n2>>2]=HEAP32[$10>>2]|0;HEAP32[$n2+4>>2]=HEAP32[$10+4>>2]|0;HEAP32[$n2+8>>2]=HEAP32[$10+8>>2]|0;HEAP32[$n2+12>>2]=HEAP32[$10+12>>2]|0;HEAP32[$n2+16>>2]=HEAP32[$10+16>>2]|0;HEAP32[$n2+20>>2]=HEAP32[$10+20>>2]|0; + $11 = (_TALER_amount_normalize($n1)|0); + $12 = (-1)==($11|0); + if (!($12)) { + $13 = (_TALER_amount_normalize($n2)|0); + $14 = (-1)==($13|0); + if (!($14)) { + $16 = $2; + $17 = ((($16)) + 12|0); + $18 = (_TALER_amount_get_zero($17,$res)|0); + $19 = (1)==($18|0); + if ($19) { + $28 = $n1; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = (($28) + 4)|0; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = $n2; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (($34) + 4)|0; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (_i64Add(($30|0),($33|0),($36|0),($39|0))|0); + $41 = tempRet0; + $42 = $res; + $43 = $42; + HEAP32[$43>>2] = $40; + $44 = (($42) + 4)|0; + $45 = $44; + HEAP32[$45>>2] = $41; + $46 = $res; + $47 = $46; + $48 = HEAP32[$47>>2]|0; + $49 = (($46) + 4)|0; + $50 = $49; + $51 = HEAP32[$50>>2]|0; + $52 = $n1; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + $55 = (($52) + 4)|0; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + $58 = ($51>>>0)<($57>>>0); + $59 = ($48>>>0)<($54>>>0); + $60 = ($51|0)==($57|0); + $61 = $60 & $59; + $62 = $58 | $61; + if ($62) { + $63 = $1; + _invalidate($63); + $0 = -1; + $73 = $0; + STACKTOP = sp;return ($73|0); + } + $64 = ((($n1)) + 8|0); + $65 = HEAP32[$64>>2]|0; + $66 = ((($n2)) + 8|0); + $67 = HEAP32[$66>>2]|0; + $68 = (($65) + ($67))|0; + $69 = ((($res)) + 8|0); + HEAP32[$69>>2] = $68; + $70 = (_TALER_amount_normalize($res)|0); + $71 = (-1)==($70|0); + $72 = $1; + if ($71) { + _invalidate($72); + $0 = -1; + $73 = $0; + STACKTOP = sp;return ($73|0); + } else { + ;HEAP32[$72>>2]=HEAP32[$res>>2]|0;HEAP32[$72+4>>2]=HEAP32[$res+4>>2]|0;HEAP32[$72+8>>2]=HEAP32[$res+8>>2]|0;HEAP32[$72+12>>2]=HEAP32[$res+12>>2]|0;HEAP32[$72+16>>2]=HEAP32[$res+16>>2]|0;HEAP32[$72+20>>2]=HEAP32[$res+20>>2]|0; + $0 = 1; + $73 = $0; + STACKTOP = sp;return ($73|0); + } + } + $log_line = 444; + $20 = HEAP32[3932]|0; + $21 = ($20|0)==(-1); + if ($21) { + $22 = $log_line; + $23 = (_GNUNET_get_log_call_status(1,0,61589,61665,$22)|0); + HEAP32[3932] = $23; + } + $24 = (_GNUNET_get_log_skip()|0); + $25 = ($24|0)>(0); + if ($25) { + _GNUNET_log_skip(-1,0); + _GNUNET_abort_(); + // unreachable; + } + $26 = HEAP32[3932]|0; + $27 = ($26|0)!=(0); + if (!($27)) { + _GNUNET_abort_(); + // unreachable; + } + HEAP32[$vararg_buffer>>2] = 61589; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 444; + _GNUNET_log_nocheck(1,61615,$vararg_buffer); + _GNUNET_abort_(); + // unreachable; + } + } + $15 = $1; + _invalidate($15); + $0 = -1; + $73 = $0; + STACKTOP = sp;return ($73|0); +} +function ___stdio_close($f) { + $f = $f|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = ((($f)) + 60|0); + $1 = HEAP32[$0>>2]|0; + HEAP32[$vararg_buffer>>2] = $1; + $2 = (___syscall6(6,($vararg_buffer|0))|0); + $3 = (___syscall_ret($2)|0); + STACKTOP = sp;return ($3|0); +} +function ___syscall_ret($r) { + $r = $r|0; + var $$0 = 0, $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($r>>>0)>(4294963200); + if ($0) { + $1 = (0 - ($r))|0; + $2 = (___errno_location()|0); + HEAP32[$2>>2] = $1; + $$0 = -1; + } else { + $$0 = $r; + } + return ($$0|0); +} +function ___errno_location() { + var $$0 = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP32[17780]|0; + $1 = ($0|0)==(0|0); + if ($1) { + $$0 = 71164; + } else { + $2 = (_pthread_self()|0); + $3 = ((($2)) + 64|0); + $4 = HEAP32[$3>>2]|0; + $$0 = $4; + } + return ($$0|0); +} +function ___stdout_write($f,$buf,$len) { + $f = $f|0; + $buf = $buf|0; + $len = $len|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $tio = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $tio = sp + 12|0; + $0 = ((($f)) + 36|0); + HEAP32[$0>>2] = 52; + $1 = HEAP32[$f>>2]|0; + $2 = $1 & 64; + $3 = ($2|0)==(0); + if ($3) { + $4 = ((($f)) + 60|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$vararg_buffer>>2] = $5; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 21505; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $tio; + $6 = (___syscall54(54,($vararg_buffer|0))|0); + $7 = ($6|0)==(0); + if (!($7)) { + $8 = ((($f)) + 75|0); + HEAP8[$8>>0] = -1; + } + } + $9 = (___stdio_write($f,$buf,$len)|0); + STACKTOP = sp;return ($9|0); +} +function ___stdio_write($f,$buf,$len) { + $f = $f|0; + $buf = $buf|0; + $len = $len|0; + var $$0 = 0, $$phi$trans$insert = 0, $$pre = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $cnt$0 = 0, $cnt$1 = 0, $iov$0 = 0, $iov$0$lcssa11 = 0, $iov$1 = 0, $iovcnt$0 = 0, $iovcnt$0$lcssa12 = 0; + var $iovcnt$1 = 0, $iovs = 0, $rem$0 = 0, $vararg_buffer = 0, $vararg_buffer3 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer3 = sp + 16|0; + $vararg_buffer = sp; + $iovs = sp + 32|0; + $0 = ((($f)) + 28|0); + $1 = HEAP32[$0>>2]|0; + HEAP32[$iovs>>2] = $1; + $2 = ((($iovs)) + 4|0); + $3 = ((($f)) + 20|0); + $4 = HEAP32[$3>>2]|0; + $5 = (($4) - ($1))|0; + HEAP32[$2>>2] = $5; + $6 = ((($iovs)) + 8|0); + HEAP32[$6>>2] = $buf; + $7 = ((($iovs)) + 12|0); + HEAP32[$7>>2] = $len; + $8 = (($5) + ($len))|0; + $9 = ((($f)) + 60|0); + $10 = ((($f)) + 44|0); + $iov$0 = $iovs;$iovcnt$0 = 2;$rem$0 = $8; + while(1) { + $11 = HEAP32[17780]|0; + $12 = ($11|0)==(0|0); + if ($12) { + $16 = HEAP32[$9>>2]|0; + HEAP32[$vararg_buffer3>>2] = $16; + $vararg_ptr6 = ((($vararg_buffer3)) + 4|0); + HEAP32[$vararg_ptr6>>2] = $iov$0; + $vararg_ptr7 = ((($vararg_buffer3)) + 8|0); + HEAP32[$vararg_ptr7>>2] = $iovcnt$0; + $17 = (___syscall146(146,($vararg_buffer3|0))|0); + $18 = (___syscall_ret($17)|0); + $cnt$0 = $18; + } else { + _pthread_cleanup_push((85|0),($f|0)); + $13 = HEAP32[$9>>2]|0; + HEAP32[$vararg_buffer>>2] = $13; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $iov$0; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $iovcnt$0; + $14 = (___syscall146(146,($vararg_buffer|0))|0); + $15 = (___syscall_ret($14)|0); + _pthread_cleanup_pop(0); + $cnt$0 = $15; + } + $19 = ($rem$0|0)==($cnt$0|0); + if ($19) { + label = 6; + break; + } + $26 = ($cnt$0|0)<(0); + if ($26) { + $iov$0$lcssa11 = $iov$0;$iovcnt$0$lcssa12 = $iovcnt$0; + label = 8; + break; + } + $34 = (($rem$0) - ($cnt$0))|0; + $35 = ((($iov$0)) + 4|0); + $36 = HEAP32[$35>>2]|0; + $37 = ($cnt$0>>>0)>($36>>>0); + if ($37) { + $38 = HEAP32[$10>>2]|0; + HEAP32[$0>>2] = $38; + HEAP32[$3>>2] = $38; + $39 = (($cnt$0) - ($36))|0; + $40 = ((($iov$0)) + 8|0); + $41 = (($iovcnt$0) + -1)|0; + $$phi$trans$insert = ((($iov$0)) + 12|0); + $$pre = HEAP32[$$phi$trans$insert>>2]|0; + $49 = $$pre;$cnt$1 = $39;$iov$1 = $40;$iovcnt$1 = $41; + } else { + $42 = ($iovcnt$0|0)==(2); + if ($42) { + $43 = HEAP32[$0>>2]|0; + $44 = (($43) + ($cnt$0)|0); + HEAP32[$0>>2] = $44; + $49 = $36;$cnt$1 = $cnt$0;$iov$1 = $iov$0;$iovcnt$1 = 2; + } else { + $49 = $36;$cnt$1 = $cnt$0;$iov$1 = $iov$0;$iovcnt$1 = $iovcnt$0; + } + } + $45 = HEAP32[$iov$1>>2]|0; + $46 = (($45) + ($cnt$1)|0); + HEAP32[$iov$1>>2] = $46; + $47 = ((($iov$1)) + 4|0); + $48 = (($49) - ($cnt$1))|0; + HEAP32[$47>>2] = $48; + $iov$0 = $iov$1;$iovcnt$0 = $iovcnt$1;$rem$0 = $34; + } + if ((label|0) == 6) { + $20 = HEAP32[$10>>2]|0; + $21 = ((($f)) + 48|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($20) + ($22)|0); + $24 = ((($f)) + 16|0); + HEAP32[$24>>2] = $23; + $25 = $20; + HEAP32[$0>>2] = $25; + HEAP32[$3>>2] = $25; + $$0 = $len; + } + else if ((label|0) == 8) { + $27 = ((($f)) + 16|0); + HEAP32[$27>>2] = 0; + HEAP32[$0>>2] = 0; + HEAP32[$3>>2] = 0; + $28 = HEAP32[$f>>2]|0; + $29 = $28 | 32; + HEAP32[$f>>2] = $29; + $30 = ($iovcnt$0$lcssa12|0)==(2); + if ($30) { + $$0 = 0; + } else { + $31 = ((($iov$0$lcssa11)) + 4|0); + $32 = HEAP32[$31>>2]|0; + $33 = (($len) - ($32))|0; + $$0 = $33; + } + } + STACKTOP = sp;return ($$0|0); +} +function _cleanup_92($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ((($p)) + 68|0); + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)==(0); + if ($2) { + ___unlockfile($p); + } + return; +} +function ___unlockfile($f) { + $f = $f|0; + var label = 0, sp = 0; + sp = STACKTOP; + return; +} +function ___stdio_seek($f,$off,$whence) { + $f = $f|0; + $off = $off|0; + $whence = $whence|0; + var $$pre = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $ret = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $ret = sp + 20|0; + $0 = ((($f)) + 60|0); + $1 = HEAP32[$0>>2]|0; + HEAP32[$vararg_buffer>>2] = $1; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 0; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $off; + $vararg_ptr3 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr3>>2] = $ret; + $vararg_ptr4 = ((($vararg_buffer)) + 16|0); + HEAP32[$vararg_ptr4>>2] = $whence; + $2 = (___syscall140(140,($vararg_buffer|0))|0); + $3 = (___syscall_ret($2)|0); + $4 = ($3|0)<(0); + if ($4) { + HEAP32[$ret>>2] = -1; + $5 = -1; + } else { + $$pre = HEAP32[$ret>>2]|0; + $5 = $$pre; + } + STACKTOP = sp;return ($5|0); +} +function ___stdio_read($f,$buf,$len) { + $f = $f|0; + $buf = $buf|0; + $len = $len|0; + var $$0 = 0, $$cast = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $cnt$0 = 0, $iov = 0, $vararg_buffer = 0, $vararg_buffer3 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer3 = sp + 16|0; + $vararg_buffer = sp; + $iov = sp + 32|0; + HEAP32[$iov>>2] = $buf; + $0 = ((($iov)) + 4|0); + $1 = ((($f)) + 48|0); + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0); + $4 = $3&1; + $5 = (($len) - ($4))|0; + HEAP32[$0>>2] = $5; + $6 = ((($iov)) + 8|0); + $7 = ((($f)) + 44|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$6>>2] = $8; + $9 = ((($iov)) + 12|0); + HEAP32[$9>>2] = $2; + $10 = HEAP32[17780]|0; + $11 = ($10|0)==(0|0); + if ($11) { + $16 = ((($f)) + 60|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$vararg_buffer3>>2] = $17; + $vararg_ptr6 = ((($vararg_buffer3)) + 4|0); + HEAP32[$vararg_ptr6>>2] = $iov; + $vararg_ptr7 = ((($vararg_buffer3)) + 8|0); + HEAP32[$vararg_ptr7>>2] = 2; + $18 = (___syscall145(145,($vararg_buffer3|0))|0); + $19 = (___syscall_ret($18)|0); + $cnt$0 = $19; + } else { + _pthread_cleanup_push((86|0),($f|0)); + $12 = ((($f)) + 60|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$vararg_buffer>>2] = $13; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $iov; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = 2; + $14 = (___syscall145(145,($vararg_buffer|0))|0); + $15 = (___syscall_ret($14)|0); + _pthread_cleanup_pop(0); + $cnt$0 = $15; + } + $20 = ($cnt$0|0)<(1); + if ($20) { + $21 = $cnt$0 & 48; + $22 = $21 ^ 16; + $23 = HEAP32[$f>>2]|0; + $24 = $23 | $22; + HEAP32[$f>>2] = $24; + $25 = ((($f)) + 8|0); + HEAP32[$25>>2] = 0; + $26 = ((($f)) + 4|0); + HEAP32[$26>>2] = 0; + $$0 = $cnt$0; + } else { + $27 = HEAP32[$0>>2]|0; + $28 = ($cnt$0>>>0)>($27>>>0); + if ($28) { + $29 = (($cnt$0) - ($27))|0; + $30 = HEAP32[$7>>2]|0; + $31 = ((($f)) + 4|0); + HEAP32[$31>>2] = $30; + $$cast = $30; + $32 = (($$cast) + ($29)|0); + $33 = ((($f)) + 8|0); + HEAP32[$33>>2] = $32; + $34 = HEAP32[$1>>2]|0; + $35 = ($34|0)==(0); + if ($35) { + $$0 = $len; + } else { + $36 = ((($$cast)) + 1|0); + HEAP32[$31>>2] = $36; + $37 = HEAP8[$$cast>>0]|0; + $38 = (($len) + -1)|0; + $39 = (($buf) + ($38)|0); + HEAP8[$39>>0] = $37; + $$0 = $len; + } + } else { + $$0 = $cnt$0; + } + } + STACKTOP = sp;return ($$0|0); +} +function _cleanup_115($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ((($p)) + 68|0); + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)==(0); + if ($2) { + ___unlockfile($p); + } + return; +} +function _iswblank($wc) { + $wc = $wc|0; + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (_isblank($wc)|0); + return ($0|0); +} +function _isblank($c) { + $c = $c|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($c|0)==(32); + $1 = ($c|0)==(9); + $2 = $0 | $1; + $3 = $2&1; + return ($3|0); +} +function _strcmp($l,$r) { + $l = $l|0; + $r = $r|0; + var $$014 = 0, $$05 = 0, $$lcssa = 0, $$lcssa2 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $or$cond3 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + $0 = HEAP8[$l>>0]|0; + $1 = HEAP8[$r>>0]|0; + $2 = ($0<<24>>24)!=($1<<24>>24); + $3 = ($0<<24>>24)==(0); + $or$cond3 = $3 | $2; + if ($or$cond3) { + $$lcssa = $0;$$lcssa2 = $1; + } else { + $$014 = $l;$$05 = $r; + while(1) { + $4 = ((($$014)) + 1|0); + $5 = ((($$05)) + 1|0); + $6 = HEAP8[$4>>0]|0; + $7 = HEAP8[$5>>0]|0; + $8 = ($6<<24>>24)!=($7<<24>>24); + $9 = ($6<<24>>24)==(0); + $or$cond = $9 | $8; + if ($or$cond) { + $$lcssa = $6;$$lcssa2 = $7; + break; + } else { + $$014 = $4;$$05 = $5; + } + } + } + $10 = $$lcssa&255; + $11 = $$lcssa2&255; + $12 = (($10) - ($11))|0; + return ($12|0); +} +function _tolower($c) { + $c = $c|0; + var $$0 = 0, $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (_isupper($c)|0); + $1 = ($0|0)==(0); + $2 = $c | 32; + $$0 = $1 ? $c : $2; + return ($$0|0); +} +function _isupper($c) { + $c = $c|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (($c) + -65)|0; + $1 = ($0>>>0)<(26); + $2 = $1&1; + return ($2|0); +} +function _towupper($wc) { + $wc = $wc|0; + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (___towcase($wc,0)|0); + return ($0|0); +} +function ___towcase($wc,$lower) { + $wc = $wc|0; + $lower = $lower|0; + var $$2 = 0, $$lcssa = 0, $$lcssa53 = 0, $$neg20 = 0, $$neg20$lcssa = 0, $$neg22 = 0, $$neg23 = 0, $$not = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0; + var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; + var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i$029 = 0, $i$128 = 0, $i$128$lcssa = 0, $or$cond = 0, $or$cond10 = 0, $or$cond12 = 0, $or$cond14 = 0, $or$cond16 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = $lower << 1; + $1 = (($0) + -1)|0; + $2 = (($lower) + -1)|0; + $3 = (_iswalpha($wc)|0); + $4 = ($3|0)==(0); + $5 = (($wc) + -1536)|0; + $6 = ($5>>>0)<(2560); + $or$cond10 = $6 | $4; + $7 = (($wc) + -11776)|0; + $8 = ($7>>>0)<(30784); + $or$cond12 = $8 | $or$cond10; + $9 = (($wc) + -43008)|0; + $10 = ($9>>>0)<(22272); + $or$cond14 = $10 | $or$cond12; + L1: do { + if ($or$cond14) { + $$2 = $wc; + } else { + $11 = ($lower|0)!=(0); + $12 = (($wc) + -4256)|0; + $13 = ($12>>>0)<(46); + $or$cond16 = $11 & $13; + if ($or$cond16) { + $14 = ($wc|0)>(4293); + if ($14) { + switch ($wc|0) { + case 4295: case 4301: { + break; + } + default: { + $$2 = $wc; + break L1; + } + } + } + $15 = (($wc) + 7264)|0; + $$2 = $15; + break; + } + $$not = $11 ^ 1; + $16 = (($wc) + -11520)|0; + $17 = ($16>>>0)<(38); + $or$cond = $17 & $$not; + if ($or$cond) { + $18 = ($wc|0)>(11557); + if ($18) { + switch ($wc|0) { + case 11559: case 11565: { + break; + } + default: { + $$2 = $wc; + break L1; + } + } + } + $19 = (($wc) + -7264)|0; + $$2 = $19; + break; + } else { + $i$029 = 0; + } + while(1) { + $26 = (((18854 + ($i$029<<2)|0)) + 3|0); + $27 = HEAP8[$26>>0]|0; + $28 = (18854 + ($i$029<<2)|0); + $29 = HEAP16[$28>>1]|0; + $30 = $29&65535; + $31 = (((18854 + ($i$029<<2)|0)) + 2|0); + $32 = HEAP8[$31>>0]|0; + $33 = $32 << 24 >> 24; + $34 = $33 & $2; + $$neg20 = (($wc) - ($30))|0; + $35 = (($$neg20) - ($34))|0; + $36 = $27&255; + $37 = ($35>>>0)<($36>>>0); + $20 = (($i$029) + 1)|0; + if ($37) { + $$lcssa = $32;$$lcssa53 = $33;$$neg20$lcssa = $$neg20; + label = 13; + break; + } + $21 = ($20|0)==(61); + if ($21) { + break; + } else { + $i$029 = $20; + } + } + if ((label|0) == 13) { + $38 = ($$lcssa<<24>>24)==(1); + if ($38) { + $39 = (($lower) + ($wc))|0; + $40 = $$neg20$lcssa & 1; + $41 = (($39) - ($40))|0; + $$2 = $41; + break; + } else { + $42 = Math_imul($$lcssa53, $1)|0; + $43 = (($42) + ($wc))|0; + $$2 = $43; + break; + } + } + $22 = (1 - ($lower))|0; + $23 = (18362 + ($22<<1)|0); + $24 = HEAP16[$23>>1]|0; + $25 = ($24<<16>>16)==(0); + L23: do { + if (!($25)) { + $45 = $24;$i$128 = 0; + while(1) { + $44 = $45&65535; + $46 = ($44|0)==($wc|0); + if ($46) { + $i$128$lcssa = $i$128; + break; + } + $50 = (($i$128) + 1)|0; + $51 = ((18362 + ($50<<2)|0) + ($22<<1)|0); + $52 = HEAP16[$51>>1]|0; + $53 = ($52<<16>>16)==(0); + if ($53) { + break L23; + } else { + $45 = $52;$i$128 = $50; + } + } + $47 = ((18362 + ($i$128$lcssa<<2)|0) + ($lower<<1)|0); + $48 = HEAP16[$47>>1]|0; + $49 = $48&65535; + $$2 = $49; + break L1; + } + } while(0); + $$neg22 = ($lower*40)|0; + $$neg23 = (($wc) + -66600)|0; + $54 = (($$neg23) + ($$neg22))|0; + $55 = ($54>>>0)<(40); + if ($55) { + $56 = (($wc) + -40)|0; + $57 = ($lower*80)|0; + $58 = (($56) + ($57))|0; + $$2 = $58; + } else { + $$2 = $wc; + } + } + } while(0); + return ($$2|0); +} +function _iswalpha($wc) { + $wc = $wc|0; + var $$ = 0, $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($wc>>>0)<(131072); + if ($0) { + $1 = $wc >>> 8; + $2 = (61682 + ($1)|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = $4 << 5; + $6 = $wc >>> 3; + $7 = $6 & 31; + $8 = $5 | $7; + $9 = (61682 + ($8)|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = $wc & 7; + $13 = $11 >>> $12; + $14 = $13 & 1; + $$0 = $14; + } else { + $15 = ($wc>>>0)<(196606); + $$ = $15&1; + $$0 = $$; + } + return ($$0|0); +} +function _towlower($wc) { + $wc = $wc|0; + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (___towcase($wc,1)|0); + return ($0|0); +} +function _islower($c) { + $c = $c|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (($c) + -97)|0; + $1 = ($0>>>0)<(26); + $2 = $1&1; + return ($2|0); +} +function _strerror($e) { + $e = $e|0; + var $$lcssa = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i$03 = 0, $i$03$lcssa = 0, $i$12 = 0, $s$0$lcssa = 0, $s$01 = 0, $s$1 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + $i$03 = 0; + while(1) { + $1 = (64658 + ($i$03)|0); + $2 = HEAP8[$1>>0]|0; + $3 = $2&255; + $4 = ($3|0)==($e|0); + if ($4) { + $i$03$lcssa = $i$03; + label = 2; + break; + } + $5 = (($i$03) + 1)|0; + $6 = ($5|0)==(87); + if ($6) { + $i$12 = 87;$s$01 = 64746; + label = 5; + break; + } else { + $i$03 = $5; + } + } + if ((label|0) == 2) { + $0 = ($i$03$lcssa|0)==(0); + if ($0) { + $s$0$lcssa = 64746; + } else { + $i$12 = $i$03$lcssa;$s$01 = 64746; + label = 5; + } + } + if ((label|0) == 5) { + while(1) { + label = 0; + $s$1 = $s$01; + while(1) { + $7 = HEAP8[$s$1>>0]|0; + $8 = ($7<<24>>24)==(0); + $9 = ((($s$1)) + 1|0); + if ($8) { + $$lcssa = $9; + break; + } else { + $s$1 = $9; + } + } + $10 = (($i$12) + -1)|0; + $11 = ($10|0)==(0); + if ($11) { + $s$0$lcssa = $$lcssa; + break; + } else { + $i$12 = $10;$s$01 = $$lcssa; + label = 5; + } + } + } + return ($s$0$lcssa|0); +} +function _iswspace($wc) { + $wc = $wc|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($wc|0)==(0); + if ($0) { + $4 = 0; + } else { + $1 = (_wcschr(16172,$wc)|0); + $2 = ($1|0)!=(0|0); + $4 = $2; + } + $3 = $4&1; + return ($3|0); +} +function _wcschr($s,$c) { + $s = $s|0; + $c = $c|0; + var $$0 = 0, $$01 = 0, $$01$lcssa = 0, $$lcssa = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $or$cond = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($c|0)==(0); + if ($0) { + $1 = (_wcslen($s)|0); + $2 = (($s) + ($1<<2)|0); + $$0 = $2; + } else { + $$01 = $s; + while(1) { + $3 = HEAP32[$$01>>2]|0; + $4 = ($3|0)==(0); + $5 = ($3|0)==($c|0); + $or$cond = $4 | $5; + $6 = ((($$01)) + 4|0); + if ($or$cond) { + $$01$lcssa = $$01;$$lcssa = $3; + break; + } else { + $$01 = $6; + } + } + $7 = ($$lcssa|0)!=(0); + $8 = $7 ? $$01$lcssa : 0; + $$0 = $8; + } + return ($$0|0); +} +function _wcslen($s) { + $s = $s|0; + var $$0 = 0, $$0$lcssa = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + $$0 = $s; + while(1) { + $0 = HEAP32[$$0>>2]|0; + $1 = ($0|0)==(0); + $2 = ((($$0)) + 4|0); + if ($1) { + $$0$lcssa = $$0; + break; + } else { + $$0 = $2; + } + } + $3 = $$0$lcssa; + $4 = $s; + $5 = (($3) - ($4))|0; + $6 = $5 >> 2; + return ($6|0); +} +function _isxdigit($c) { + $c = $c|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $isdigit = 0, $isdigittmp = 0, label = 0, sp = 0; + sp = STACKTOP; + $isdigittmp = (($c) + -48)|0; + $isdigit = ($isdigittmp>>>0)<(10); + if ($isdigit) { + $4 = 1; + } else { + $0 = $c | 32; + $1 = (($0) + -97)|0; + $2 = ($1>>>0)<(6); + $4 = $2; + } + $3 = $4&1; + return ($3|0); +} +function _snprintf($s,$n,$fmt,$varargs) { + $s = $s|0; + $n = $n|0; + $fmt = $fmt|0; + $varargs = $varargs|0; + var $0 = 0, $ap = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $ap = sp; + HEAP32[$ap>>2] = $varargs; + $0 = (_vsnprintf($s,$n,$fmt,$ap)|0); + STACKTOP = sp;return ($0|0); +} +function _vsnprintf($s,$n,$fmt,$ap) { + $s = $s|0; + $n = $n|0; + $fmt = $fmt|0; + $ap = $ap|0; + var $$$02 = 0, $$0 = 0, $$01 = 0, $$02 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $b = 0, $f = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $b = sp + 112|0; + $f = sp; + dest=$f; src=16260; stop=dest+112|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $0 = (($n) + -1)|0; + $1 = ($0>>>0)>(2147483646); + if ($1) { + $2 = ($n|0)==(0); + if ($2) { + $$01 = $b;$$02 = 1; + label = 4; + } else { + $3 = (___errno_location()|0); + HEAP32[$3>>2] = 75; + $$0 = -1; + } + } else { + $$01 = $s;$$02 = $n; + label = 4; + } + if ((label|0) == 4) { + $4 = $$01; + $5 = (-2 - ($4))|0; + $6 = ($$02>>>0)>($5>>>0); + $$$02 = $6 ? $5 : $$02; + $7 = ((($f)) + 48|0); + HEAP32[$7>>2] = $$$02; + $8 = ((($f)) + 20|0); + HEAP32[$8>>2] = $$01; + $9 = ((($f)) + 44|0); + HEAP32[$9>>2] = $$01; + $10 = (($$01) + ($$$02)|0); + $11 = ((($f)) + 16|0); + HEAP32[$11>>2] = $10; + $12 = ((($f)) + 28|0); + HEAP32[$12>>2] = $10; + $13 = (_vfprintf($f,$fmt,$ap)|0); + $14 = ($$$02|0)==(0); + if ($14) { + $$0 = $13; + } else { + $15 = HEAP32[$8>>2]|0; + $16 = HEAP32[$11>>2]|0; + $17 = ($15|0)==($16|0); + $18 = $17 << 31 >> 31; + $19 = (($15) + ($18)|0); + HEAP8[$19>>0] = 0; + $$0 = $13; + } + } + STACKTOP = sp;return ($$0|0); +} +function _sn_write($f,$s,$l) { + $f = $f|0; + $s = $s|0; + $l = $l|0; + var $$cast = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $l$ = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ((($f)) + 16|0); + $1 = HEAP32[$0>>2]|0; + $2 = ((($f)) + 20|0); + $3 = HEAP32[$2>>2]|0; + $4 = (($1) - ($3))|0; + $5 = ($4>>>0)>($l>>>0); + $l$ = $5 ? $l : $4; + $$cast = $3; + _memcpy(($$cast|0),($s|0),($l$|0))|0; + $6 = HEAP32[$2>>2]|0; + $7 = (($6) + ($l$)|0); + HEAP32[$2>>2] = $7; + return ($l|0); +} +function _vfprintf($f,$fmt,$ap) { + $f = $f|0; + $fmt = $fmt|0; + $ap = $ap|0; + var $$ = 0, $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ap2 = 0, $internal_buf = 0, $nl_arg = 0, $nl_type = 0; + var $ret$1 = 0, $ret$1$ = 0, $vacopy_currentptr = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 224|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $ap2 = sp + 120|0; + $nl_type = sp + 80|0; + $nl_arg = sp; + $internal_buf = sp + 136|0; + dest=$nl_type; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $vacopy_currentptr = HEAP32[$ap>>2]|0; + HEAP32[$ap2>>2] = $vacopy_currentptr; + $0 = (_printf_core(0,$fmt,$ap2,$nl_arg,$nl_type)|0); + $1 = ($0|0)<(0); + if ($1) { + $$0 = -1; + } else { + $2 = ((($f)) + 76|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)>(-1); + if ($4) { + $5 = (___lockfile($f)|0); + $32 = $5; + } else { + $32 = 0; + } + $6 = HEAP32[$f>>2]|0; + $7 = $6 & 32; + $8 = ((($f)) + 74|0); + $9 = HEAP8[$8>>0]|0; + $10 = ($9<<24>>24)<(1); + if ($10) { + $11 = $6 & -33; + HEAP32[$f>>2] = $11; + } + $12 = ((($f)) + 48|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)==(0); + if ($14) { + $16 = ((($f)) + 44|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$16>>2] = $internal_buf; + $18 = ((($f)) + 28|0); + HEAP32[$18>>2] = $internal_buf; + $19 = ((($f)) + 20|0); + HEAP32[$19>>2] = $internal_buf; + HEAP32[$12>>2] = 80; + $20 = ((($internal_buf)) + 80|0); + $21 = ((($f)) + 16|0); + HEAP32[$21>>2] = $20; + $22 = (_printf_core($f,$fmt,$ap2,$nl_arg,$nl_type)|0); + $23 = ($17|0)==(0|0); + if ($23) { + $ret$1 = $22; + } else { + $24 = ((($f)) + 36|0); + $25 = HEAP32[$24>>2]|0; + (FUNCTION_TABLE_iiii[$25 & 127]($f,0,0)|0); + $26 = HEAP32[$19>>2]|0; + $27 = ($26|0)==(0|0); + $$ = $27 ? -1 : $22; + HEAP32[$16>>2] = $17; + HEAP32[$12>>2] = 0; + HEAP32[$21>>2] = 0; + HEAP32[$18>>2] = 0; + HEAP32[$19>>2] = 0; + $ret$1 = $$; + } + } else { + $15 = (_printf_core($f,$fmt,$ap2,$nl_arg,$nl_type)|0); + $ret$1 = $15; + } + $28 = HEAP32[$f>>2]|0; + $29 = $28 & 32; + $30 = ($29|0)==(0); + $ret$1$ = $30 ? $ret$1 : -1; + $31 = $28 | $7; + HEAP32[$f>>2] = $31; + $33 = ($32|0)==(0); + if (!($33)) { + ___unlockfile($f); + } + $$0 = $ret$1$; + } + STACKTOP = sp;return ($$0|0); +} +function _printf_core($f,$fmt,$ap,$nl_arg,$nl_type) { + $f = $f|0; + $fmt = $fmt|0; + $ap = $ap|0; + $nl_arg = $nl_arg|0; + $nl_type = $nl_type|0; + var $$ = 0, $$$i = 0, $$0 = 0, $$0$i = 0, $$0$lcssa$i = 0, $$012$i = 0, $$013$i = 0, $$03$i33 = 0, $$07$i = 0.0, $$1$i = 0.0, $$114$i = 0, $$2$i = 0.0, $$20$i = 0.0, $$210$$24$i = 0, $$210$$26$i = 0, $$210$i = 0, $$23$i = 0, $$25$i = 0, $$3$i = 0.0, $$311$i = 0; + var $$33$i = 0, $$36$i = 0.0, $$4$i = 0.0, $$412$lcssa$i = 0, $$41278$i = 0, $$43 = 0, $$5$lcssa$i = 0, $$589$i = 0, $$a$3$i = 0, $$a$3191$i = 0, $$a$3192$i = 0, $$fl$4 = 0, $$l10n$0 = 0, $$lcssa = 0, $$lcssa162$i = 0, $$lcssa295 = 0, $$lcssa300 = 0, $$lcssa301 = 0, $$lcssa302 = 0, $$lcssa303 = 0; + var $$lcssa304 = 0, $$lcssa306 = 0, $$lcssa316 = 0, $$lcssa319 = 0.0, $$lcssa321 = 0, $$neg55$i = 0, $$neg56$i = 0, $$p$$i = 0, $$p$5 = 0, $$p$i = 0, $$pn$i = 0, $$pr$i = 0, $$pr50$i = 0, $$pre = 0, $$pre$i = 0, $$pre$phi190$iZ2D = 0, $$pre170 = 0, $$pre171 = 0, $$pre185$i = 0, $$pre188$i = 0; + var $$pre189$i = 0, $$z$3$i = 0, $$z$4$i = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0; + var $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0; + var $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0; + var $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0; + var $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0; + var $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0; + var $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0; + var $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0; + var $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0; + var $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0; + var $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0; + var $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0; + var $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0; + var $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0; + var $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0.0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0.0, $363 = 0, $364 = 0, $365 = 0; + var $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0; + var $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0.0, $391 = 0.0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0; + var $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0.0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0.0, $411 = 0.0, $412 = 0.0, $413 = 0.0, $414 = 0.0, $415 = 0.0, $416 = 0, $417 = 0, $418 = 0, $419 = 0; + var $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0; + var $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0.0, $442 = 0.0, $443 = 0.0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0; + var $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0; + var $474 = 0.0, $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0.0, $483 = 0.0, $484 = 0.0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0; + var $492 = 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0; + var $51 = 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0; + var $528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0; + var $546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0; + var $564 = 0, $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0; + var $582 = 0, $583 = 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0.0, $594 = 0.0, $595 = 0, $596 = 0.0, $597 = 0, $598 = 0, $599 = 0, $6 = 0; + var $60 = 0, $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0; + var $618 = 0, $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0; + var $636 = 0, $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0; + var $654 = 0, $655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0; + var $672 = 0, $673 = 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0; + var $690 = 0, $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0; + var $708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0; + var $726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0; + var $744 = 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0; + var $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0; + var $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $a$0 = 0, $a$1 = 0, $a$1$lcssa$i = 0, $a$1149$i = 0, $a$2 = 0, $a$2$ph$i = 0, $a$3$lcssa$i = 0, $a$3136$i = 0, $a$5$lcssa$i = 0, $a$5111$i = 0, $a$6$i = 0, $a$8$i = 0, $a$9$ph$i = 0, $arg = 0, $arglist_current = 0, $arglist_current2 = 0, $arglist_next = 0, $arglist_next3 = 0; + var $argpos$0 = 0, $big$i = 0, $buf = 0, $buf$i = 0, $carry$0142$i = 0, $carry3$0130$i = 0, $cnt$0 = 0, $cnt$1 = 0, $cnt$1$lcssa = 0, $d$0$i = 0, $d$0141$i = 0, $d$0143$i = 0, $d$1129$i = 0, $d$2$lcssa$i = 0, $d$2110$i = 0, $d$4$i = 0, $d$584$i = 0, $d$677$i = 0, $d$788$i = 0, $e$0125$i = 0; + var $e$1$i = 0, $e$2106$i = 0, $e$4$i = 0, $e$5$ph$i = 0, $e2$i = 0, $ebuf0$i = 0, $estr$0$i = 0, $estr$1$lcssa$i = 0, $estr$195$i = 0, $estr$2$i = 0, $exitcond$i = 0, $expanded = 0, $expanded10 = 0, $expanded11 = 0, $expanded13 = 0, $expanded14 = 0, $expanded15 = 0, $expanded4 = 0, $expanded6 = 0, $expanded7 = 0; + var $expanded8 = 0, $fl$0100 = 0, $fl$053 = 0, $fl$1 = 0, $fl$1$ = 0, $fl$3 = 0, $fl$4 = 0, $fl$6 = 0, $i$0$lcssa = 0, $i$0$lcssa178 = 0, $i$0105 = 0, $i$0124$i = 0, $i$03$i = 0, $i$03$i25 = 0, $i$1$lcssa$i = 0, $i$1116 = 0, $i$1118$i = 0, $i$2105$i = 0, $i$291 = 0, $i$291$lcssa = 0; + var $i$3101$i = 0, $i$389 = 0, $isdigit = 0, $isdigit$i = 0, $isdigit$i27 = 0, $isdigit10 = 0, $isdigit12 = 0, $isdigit2$i = 0, $isdigit2$i23 = 0, $isdigittmp = 0, $isdigittmp$ = 0, $isdigittmp$i = 0, $isdigittmp$i26 = 0, $isdigittmp1$i = 0, $isdigittmp1$i22 = 0, $isdigittmp11 = 0, $isdigittmp4$i = 0, $isdigittmp4$i24 = 0, $isdigittmp9 = 0, $j$0$i = 0; + var $j$0117$i = 0, $j$0119$i = 0, $j$1102$i = 0, $j$2$i = 0, $l$0 = 0, $l$0$i = 0, $l$1$i = 0, $l$1104 = 0, $l$2 = 0, $l10n$0 = 0, $l10n$0$lcssa = 0, $l10n$0$phi = 0, $l10n$1 = 0, $l10n$2 = 0, $l10n$3 = 0, $mb = 0, $notlhs$i = 0, $notrhs$i = 0, $or$cond = 0, $or$cond$i = 0; + var $or$cond122 = 0, $or$cond15 = 0, $or$cond17 = 0, $or$cond18$i = 0, $or$cond20 = 0, $or$cond22$i = 0, $or$cond3$not$i = 0, $or$cond31$i = 0, $or$cond6$i = 0, $p$0 = 0, $p$0$ = 0, $p$1 = 0, $p$2 = 0, $p$2$ = 0, $p$3 = 0, $p$4176 = 0, $p$5 = 0, $pl$0 = 0, $pl$0$i = 0, $pl$1 = 0; + var $pl$1$i = 0, $pl$2 = 0, $prefix$0 = 0, $prefix$0$$i = 0, $prefix$0$i = 0, $prefix$1 = 0, $prefix$2 = 0, $r$0$a$9$i = 0, $re$171$i = 0, $round$070$i = 0.0, $round6$1$i = 0.0, $s$0 = 0, $s$0$i = 0, $s$1 = 0, $s$1$i = 0, $s$1$i$lcssa = 0, $s$2$lcssa = 0, $s$292 = 0, $s$4 = 0, $s$6 = 0; + var $s$7 = 0, $s$7$lcssa298 = 0, $s1$0$i = 0, $s7$081$i = 0, $s7$1$i = 0, $s8$0$lcssa$i = 0, $s8$072$i = 0, $s9$0$i = 0, $s9$185$i = 0, $s9$2$i = 0, $scevgep182$i = 0, $scevgep182183$i = 0, $small$0$i = 0.0, $small$1$i = 0.0, $st$0 = 0, $st$0$lcssa299 = 0, $storemerge = 0, $storemerge13 = 0, $storemerge851 = 0, $storemerge899 = 0; + var $sum = 0, $t$0 = 0, $t$1 = 0, $w$$i = 0, $w$0 = 0, $w$1 = 0, $w$2 = 0, $w$32$i = 0, $wc = 0, $ws$0106 = 0, $ws$1117 = 0, $z$0$i = 0, $z$0$lcssa = 0, $z$093 = 0, $z$1 = 0, $z$1$lcssa$i = 0, $z$1148$i = 0, $z$2 = 0, $z$2$i = 0, $z$2$i$lcssa = 0; + var $z$3$lcssa$i = 0, $z$3135$i = 0, $z$4$i = 0, $z$7$$i = 0, $z$7$i = 0, $z$7$i$lcssa = 0, $z$7$ph$i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 624|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $big$i = sp + 24|0; + $e2$i = sp + 16|0; + $buf$i = sp + 588|0; + $ebuf0$i = sp + 576|0; + $arg = sp; + $buf = sp + 536|0; + $wc = sp + 8|0; + $mb = sp + 528|0; + $0 = ($f|0)!=(0|0); + $1 = ((($buf)) + 40|0); + $2 = $1; + $3 = ((($buf)) + 39|0); + $4 = ((($wc)) + 4|0); + $5 = $buf$i; + $6 = (0 - ($5))|0; + $7 = ((($ebuf0$i)) + 12|0); + $8 = ((($ebuf0$i)) + 11|0); + $9 = $7; + $10 = (($9) - ($5))|0; + $11 = (-2 - ($5))|0; + $12 = (($9) + 2)|0; + $13 = ((($big$i)) + 288|0); + $14 = ((($buf$i)) + 9|0); + $15 = $14; + $16 = ((($buf$i)) + 8|0); + $cnt$0 = 0;$l$0 = 0;$l10n$0 = 0;$s$0 = $fmt; + L1: while(1) { + $17 = ($cnt$0|0)>(-1); + do { + if ($17) { + $18 = (2147483647 - ($cnt$0))|0; + $19 = ($l$0|0)>($18|0); + if ($19) { + $20 = (___errno_location()|0); + HEAP32[$20>>2] = 75; + $cnt$1 = -1; + break; + } else { + $21 = (($l$0) + ($cnt$0))|0; + $cnt$1 = $21; + break; + } + } else { + $cnt$1 = $cnt$0; + } + } while(0); + $22 = HEAP8[$s$0>>0]|0; + $23 = ($22<<24>>24)==(0); + if ($23) { + $cnt$1$lcssa = $cnt$1;$l10n$0$lcssa = $l10n$0; + label = 244; + break; + } else { + $24 = $22;$s$1 = $s$0; + } + L9: while(1) { + switch ($24<<24>>24) { + case 37: { + $s$292 = $s$1;$z$093 = $s$1; + label = 9; + break L9; + break; + } + case 0: { + $s$2$lcssa = $s$1;$z$0$lcssa = $s$1; + break L9; + break; + } + default: { + } + } + $25 = ((($s$1)) + 1|0); + $$pre = HEAP8[$25>>0]|0; + $24 = $$pre;$s$1 = $25; + } + L12: do { + if ((label|0) == 9) { + while(1) { + label = 0; + $26 = ((($s$292)) + 1|0); + $27 = HEAP8[$26>>0]|0; + $28 = ($27<<24>>24)==(37); + if (!($28)) { + $s$2$lcssa = $s$292;$z$0$lcssa = $z$093; + break L12; + } + $29 = ((($z$093)) + 1|0); + $30 = ((($s$292)) + 2|0); + $31 = HEAP8[$30>>0]|0; + $32 = ($31<<24>>24)==(37); + if ($32) { + $s$292 = $30;$z$093 = $29; + label = 9; + } else { + $s$2$lcssa = $30;$z$0$lcssa = $29; + break; + } + } + } + } while(0); + $33 = $z$0$lcssa; + $34 = $s$0; + $35 = (($33) - ($34))|0; + if ($0) { + $36 = HEAP32[$f>>2]|0; + $37 = $36 & 32; + $38 = ($37|0)==(0); + if ($38) { + (___fwritex($s$0,$35,$f)|0); + } + } + $39 = ($z$0$lcssa|0)==($s$0|0); + if (!($39)) { + $l10n$0$phi = $l10n$0;$cnt$0 = $cnt$1;$l$0 = $35;$s$0 = $s$2$lcssa;$l10n$0 = $l10n$0$phi; + continue; + } + $40 = ((($s$2$lcssa)) + 1|0); + $41 = HEAP8[$40>>0]|0; + $42 = $41 << 24 >> 24; + $isdigittmp = (($42) + -48)|0; + $isdigit = ($isdigittmp>>>0)<(10); + if ($isdigit) { + $43 = ((($s$2$lcssa)) + 2|0); + $44 = HEAP8[$43>>0]|0; + $45 = ($44<<24>>24)==(36); + $46 = ((($s$2$lcssa)) + 3|0); + $$43 = $45 ? $46 : $40; + $$l10n$0 = $45 ? 1 : $l10n$0; + $isdigittmp$ = $45 ? $isdigittmp : -1; + $$pre170 = HEAP8[$$43>>0]|0; + $48 = $$pre170;$argpos$0 = $isdigittmp$;$l10n$1 = $$l10n$0;$storemerge = $$43; + } else { + $48 = $41;$argpos$0 = -1;$l10n$1 = $l10n$0;$storemerge = $40; + } + $47 = $48 << 24 >> 24; + $49 = $47 & -32; + $50 = ($49|0)==(32); + L25: do { + if ($50) { + $52 = $47;$57 = $48;$fl$0100 = 0;$storemerge899 = $storemerge; + while(1) { + $51 = (($52) + -32)|0; + $53 = 1 << $51; + $54 = $53 & 75913; + $55 = ($54|0)==(0); + if ($55) { + $66 = $57;$fl$053 = $fl$0100;$storemerge851 = $storemerge899; + break L25; + } + $56 = $57 << 24 >> 24; + $58 = (($56) + -32)|0; + $59 = 1 << $58; + $60 = $59 | $fl$0100; + $61 = ((($storemerge899)) + 1|0); + $62 = HEAP8[$61>>0]|0; + $63 = $62 << 24 >> 24; + $64 = $63 & -32; + $65 = ($64|0)==(32); + if ($65) { + $52 = $63;$57 = $62;$fl$0100 = $60;$storemerge899 = $61; + } else { + $66 = $62;$fl$053 = $60;$storemerge851 = $61; + break; + } + } + } else { + $66 = $48;$fl$053 = 0;$storemerge851 = $storemerge; + } + } while(0); + $67 = ($66<<24>>24)==(42); + do { + if ($67) { + $68 = ((($storemerge851)) + 1|0); + $69 = HEAP8[$68>>0]|0; + $70 = $69 << 24 >> 24; + $isdigittmp11 = (($70) + -48)|0; + $isdigit12 = ($isdigittmp11>>>0)<(10); + if ($isdigit12) { + $71 = ((($storemerge851)) + 2|0); + $72 = HEAP8[$71>>0]|0; + $73 = ($72<<24>>24)==(36); + if ($73) { + $74 = (($nl_type) + ($isdigittmp11<<2)|0); + HEAP32[$74>>2] = 10; + $75 = HEAP8[$68>>0]|0; + $76 = $75 << 24 >> 24; + $77 = (($76) + -48)|0; + $78 = (($nl_arg) + ($77<<3)|0); + $79 = $78; + $80 = $79; + $81 = HEAP32[$80>>2]|0; + $82 = (($79) + 4)|0; + $83 = $82; + $84 = HEAP32[$83>>2]|0; + $85 = ((($storemerge851)) + 3|0); + $l10n$2 = 1;$storemerge13 = $85;$w$0 = $81; + } else { + label = 24; + } + } else { + label = 24; + } + if ((label|0) == 24) { + label = 0; + $86 = ($l10n$1|0)==(0); + if (!($86)) { + $$0 = -1; + break L1; + } + if (!($0)) { + $fl$1 = $fl$053;$l10n$3 = 0;$s$4 = $68;$w$1 = 0; + break; + } + $arglist_current = HEAP32[$ap>>2]|0; + $87 = $arglist_current; + $88 = ((0) + 4|0); + $expanded4 = $88; + $expanded = (($expanded4) - 1)|0; + $89 = (($87) + ($expanded))|0; + $90 = ((0) + 4|0); + $expanded8 = $90; + $expanded7 = (($expanded8) - 1)|0; + $expanded6 = $expanded7 ^ -1; + $91 = $89 & $expanded6; + $92 = $91; + $93 = HEAP32[$92>>2]|0; + $arglist_next = ((($92)) + 4|0); + HEAP32[$ap>>2] = $arglist_next; + $l10n$2 = 0;$storemerge13 = $68;$w$0 = $93; + } + $94 = ($w$0|0)<(0); + if ($94) { + $95 = $fl$053 | 8192; + $96 = (0 - ($w$0))|0; + $fl$1 = $95;$l10n$3 = $l10n$2;$s$4 = $storemerge13;$w$1 = $96; + } else { + $fl$1 = $fl$053;$l10n$3 = $l10n$2;$s$4 = $storemerge13;$w$1 = $w$0; + } + } else { + $97 = $66 << 24 >> 24; + $isdigittmp1$i = (($97) + -48)|0; + $isdigit2$i = ($isdigittmp1$i>>>0)<(10); + if ($isdigit2$i) { + $101 = $storemerge851;$i$03$i = 0;$isdigittmp4$i = $isdigittmp1$i; + while(1) { + $98 = ($i$03$i*10)|0; + $99 = (($98) + ($isdigittmp4$i))|0; + $100 = ((($101)) + 1|0); + $102 = HEAP8[$100>>0]|0; + $103 = $102 << 24 >> 24; + $isdigittmp$i = (($103) + -48)|0; + $isdigit$i = ($isdigittmp$i>>>0)<(10); + if ($isdigit$i) { + $101 = $100;$i$03$i = $99;$isdigittmp4$i = $isdigittmp$i; + } else { + $$lcssa = $99;$$lcssa295 = $100; + break; + } + } + $104 = ($$lcssa|0)<(0); + if ($104) { + $$0 = -1; + break L1; + } else { + $fl$1 = $fl$053;$l10n$3 = $l10n$1;$s$4 = $$lcssa295;$w$1 = $$lcssa; + } + } else { + $fl$1 = $fl$053;$l10n$3 = $l10n$1;$s$4 = $storemerge851;$w$1 = 0; + } + } + } while(0); + $105 = HEAP8[$s$4>>0]|0; + $106 = ($105<<24>>24)==(46); + L46: do { + if ($106) { + $107 = ((($s$4)) + 1|0); + $108 = HEAP8[$107>>0]|0; + $109 = ($108<<24>>24)==(42); + if (!($109)) { + $136 = $108 << 24 >> 24; + $isdigittmp1$i22 = (($136) + -48)|0; + $isdigit2$i23 = ($isdigittmp1$i22>>>0)<(10); + if ($isdigit2$i23) { + $140 = $107;$i$03$i25 = 0;$isdigittmp4$i24 = $isdigittmp1$i22; + } else { + $p$0 = 0;$s$6 = $107; + break; + } + while(1) { + $137 = ($i$03$i25*10)|0; + $138 = (($137) + ($isdigittmp4$i24))|0; + $139 = ((($140)) + 1|0); + $141 = HEAP8[$139>>0]|0; + $142 = $141 << 24 >> 24; + $isdigittmp$i26 = (($142) + -48)|0; + $isdigit$i27 = ($isdigittmp$i26>>>0)<(10); + if ($isdigit$i27) { + $140 = $139;$i$03$i25 = $138;$isdigittmp4$i24 = $isdigittmp$i26; + } else { + $p$0 = $138;$s$6 = $139; + break L46; + } + } + } + $110 = ((($s$4)) + 2|0); + $111 = HEAP8[$110>>0]|0; + $112 = $111 << 24 >> 24; + $isdigittmp9 = (($112) + -48)|0; + $isdigit10 = ($isdigittmp9>>>0)<(10); + if ($isdigit10) { + $113 = ((($s$4)) + 3|0); + $114 = HEAP8[$113>>0]|0; + $115 = ($114<<24>>24)==(36); + if ($115) { + $116 = (($nl_type) + ($isdigittmp9<<2)|0); + HEAP32[$116>>2] = 10; + $117 = HEAP8[$110>>0]|0; + $118 = $117 << 24 >> 24; + $119 = (($118) + -48)|0; + $120 = (($nl_arg) + ($119<<3)|0); + $121 = $120; + $122 = $121; + $123 = HEAP32[$122>>2]|0; + $124 = (($121) + 4)|0; + $125 = $124; + $126 = HEAP32[$125>>2]|0; + $127 = ((($s$4)) + 4|0); + $p$0 = $123;$s$6 = $127; + break; + } + } + $128 = ($l10n$3|0)==(0); + if (!($128)) { + $$0 = -1; + break L1; + } + if ($0) { + $arglist_current2 = HEAP32[$ap>>2]|0; + $129 = $arglist_current2; + $130 = ((0) + 4|0); + $expanded11 = $130; + $expanded10 = (($expanded11) - 1)|0; + $131 = (($129) + ($expanded10))|0; + $132 = ((0) + 4|0); + $expanded15 = $132; + $expanded14 = (($expanded15) - 1)|0; + $expanded13 = $expanded14 ^ -1; + $133 = $131 & $expanded13; + $134 = $133; + $135 = HEAP32[$134>>2]|0; + $arglist_next3 = ((($134)) + 4|0); + HEAP32[$ap>>2] = $arglist_next3; + $p$0 = $135;$s$6 = $110; + } else { + $p$0 = 0;$s$6 = $110; + } + } else { + $p$0 = -1;$s$6 = $s$4; + } + } while(0); + $s$7 = $s$6;$st$0 = 0; + while(1) { + $143 = HEAP8[$s$7>>0]|0; + $144 = $143 << 24 >> 24; + $145 = (($144) + -65)|0; + $146 = ($145>>>0)>(57); + if ($146) { + $$0 = -1; + break L1; + } + $147 = ((($s$7)) + 1|0); + $148 = ((66550 + (($st$0*58)|0)|0) + ($145)|0); + $149 = HEAP8[$148>>0]|0; + $150 = $149&255; + $151 = (($150) + -1)|0; + $152 = ($151>>>0)<(8); + if ($152) { + $s$7 = $147;$st$0 = $150; + } else { + $$lcssa300 = $147;$$lcssa301 = $149;$$lcssa302 = $150;$s$7$lcssa298 = $s$7;$st$0$lcssa299 = $st$0; + break; + } + } + $153 = ($$lcssa301<<24>>24)==(0); + if ($153) { + $$0 = -1; + break; + } + $154 = ($$lcssa301<<24>>24)==(19); + $155 = ($argpos$0|0)>(-1); + do { + if ($154) { + if ($155) { + $$0 = -1; + break L1; + } else { + label = 52; + } + } else { + if ($155) { + $156 = (($nl_type) + ($argpos$0<<2)|0); + HEAP32[$156>>2] = $$lcssa302; + $157 = (($nl_arg) + ($argpos$0<<3)|0); + $158 = $157; + $159 = $158; + $160 = HEAP32[$159>>2]|0; + $161 = (($158) + 4)|0; + $162 = $161; + $163 = HEAP32[$162>>2]|0; + $164 = $arg; + $165 = $164; + HEAP32[$165>>2] = $160; + $166 = (($164) + 4)|0; + $167 = $166; + HEAP32[$167>>2] = $163; + label = 52; + break; + } + if (!($0)) { + $$0 = 0; + break L1; + } + _pop_arg_180($arg,$$lcssa302,$ap); + } + } while(0); + if ((label|0) == 52) { + label = 0; + if (!($0)) { + $cnt$0 = $cnt$1;$l$0 = $35;$l10n$0 = $l10n$3;$s$0 = $$lcssa300; + continue; + } + } + $168 = HEAP8[$s$7$lcssa298>>0]|0; + $169 = $168 << 24 >> 24; + $170 = ($st$0$lcssa299|0)!=(0); + $171 = $169 & 15; + $172 = ($171|0)==(3); + $or$cond15 = $170 & $172; + $173 = $169 & -33; + $t$0 = $or$cond15 ? $173 : $169; + $174 = $fl$1 & 8192; + $175 = ($174|0)==(0); + $176 = $fl$1 & -65537; + $fl$1$ = $175 ? $fl$1 : $176; + L75: do { + switch ($t$0|0) { + case 110: { + switch ($st$0$lcssa299|0) { + case 0: { + $183 = HEAP32[$arg>>2]|0; + HEAP32[$183>>2] = $cnt$1; + $cnt$0 = $cnt$1;$l$0 = $35;$l10n$0 = $l10n$3;$s$0 = $$lcssa300; + continue L1; + break; + } + case 1: { + $184 = HEAP32[$arg>>2]|0; + HEAP32[$184>>2] = $cnt$1; + $cnt$0 = $cnt$1;$l$0 = $35;$l10n$0 = $l10n$3;$s$0 = $$lcssa300; + continue L1; + break; + } + case 2: { + $185 = ($cnt$1|0)<(0); + $186 = $185 << 31 >> 31; + $187 = HEAP32[$arg>>2]|0; + $188 = $187; + $189 = $188; + HEAP32[$189>>2] = $cnt$1; + $190 = (($188) + 4)|0; + $191 = $190; + HEAP32[$191>>2] = $186; + $cnt$0 = $cnt$1;$l$0 = $35;$l10n$0 = $l10n$3;$s$0 = $$lcssa300; + continue L1; + break; + } + case 3: { + $192 = $cnt$1&65535; + $193 = HEAP32[$arg>>2]|0; + HEAP16[$193>>1] = $192; + $cnt$0 = $cnt$1;$l$0 = $35;$l10n$0 = $l10n$3;$s$0 = $$lcssa300; + continue L1; + break; + } + case 4: { + $194 = $cnt$1&255; + $195 = HEAP32[$arg>>2]|0; + HEAP8[$195>>0] = $194; + $cnt$0 = $cnt$1;$l$0 = $35;$l10n$0 = $l10n$3;$s$0 = $$lcssa300; + continue L1; + break; + } + case 6: { + $196 = HEAP32[$arg>>2]|0; + HEAP32[$196>>2] = $cnt$1; + $cnt$0 = $cnt$1;$l$0 = $35;$l10n$0 = $l10n$3;$s$0 = $$lcssa300; + continue L1; + break; + } + case 7: { + $197 = ($cnt$1|0)<(0); + $198 = $197 << 31 >> 31; + $199 = HEAP32[$arg>>2]|0; + $200 = $199; + $201 = $200; + HEAP32[$201>>2] = $cnt$1; + $202 = (($200) + 4)|0; + $203 = $202; + HEAP32[$203>>2] = $198; + $cnt$0 = $cnt$1;$l$0 = $35;$l10n$0 = $l10n$3;$s$0 = $$lcssa300; + continue L1; + break; + } + default: { + $cnt$0 = $cnt$1;$l$0 = $35;$l10n$0 = $l10n$3;$s$0 = $$lcssa300; + continue L1; + } + } + break; + } + case 112: { + $204 = ($p$0>>>0)>(8); + $205 = $204 ? $p$0 : 8; + $206 = $fl$1$ | 8; + $fl$3 = $206;$p$1 = $205;$t$1 = 120; + label = 64; + break; + } + case 88: case 120: { + $fl$3 = $fl$1$;$p$1 = $p$0;$t$1 = $t$0; + label = 64; + break; + } + case 111: { + $244 = $arg; + $245 = $244; + $246 = HEAP32[$245>>2]|0; + $247 = (($244) + 4)|0; + $248 = $247; + $249 = HEAP32[$248>>2]|0; + $250 = ($246|0)==(0); + $251 = ($249|0)==(0); + $252 = $250 & $251; + if ($252) { + $$0$lcssa$i = $1; + } else { + $$03$i33 = $1;$254 = $246;$258 = $249; + while(1) { + $253 = $254 & 7; + $255 = $253 | 48; + $256 = $255&255; + $257 = ((($$03$i33)) + -1|0); + HEAP8[$257>>0] = $256; + $259 = (_bitshift64Lshr(($254|0),($258|0),3)|0); + $260 = tempRet0; + $261 = ($259|0)==(0); + $262 = ($260|0)==(0); + $263 = $261 & $262; + if ($263) { + $$0$lcssa$i = $257; + break; + } else { + $$03$i33 = $257;$254 = $259;$258 = $260; + } + } + } + $264 = $fl$1$ & 8; + $265 = ($264|0)==(0); + if ($265) { + $a$0 = $$0$lcssa$i;$fl$4 = $fl$1$;$p$2 = $p$0;$pl$1 = 0;$prefix$1 = 67030; + label = 77; + } else { + $266 = $$0$lcssa$i; + $267 = (($2) - ($266))|0; + $268 = ($p$0|0)>($267|0); + $269 = (($267) + 1)|0; + $p$0$ = $268 ? $p$0 : $269; + $a$0 = $$0$lcssa$i;$fl$4 = $fl$1$;$p$2 = $p$0$;$pl$1 = 0;$prefix$1 = 67030; + label = 77; + } + break; + } + case 105: case 100: { + $270 = $arg; + $271 = $270; + $272 = HEAP32[$271>>2]|0; + $273 = (($270) + 4)|0; + $274 = $273; + $275 = HEAP32[$274>>2]|0; + $276 = ($275|0)<(0); + if ($276) { + $277 = (_i64Subtract(0,0,($272|0),($275|0))|0); + $278 = tempRet0; + $279 = $arg; + $280 = $279; + HEAP32[$280>>2] = $277; + $281 = (($279) + 4)|0; + $282 = $281; + HEAP32[$282>>2] = $278; + $287 = $277;$288 = $278;$pl$0 = 1;$prefix$0 = 67030; + label = 76; + break L75; + } + $283 = $fl$1$ & 2048; + $284 = ($283|0)==(0); + if ($284) { + $285 = $fl$1$ & 1; + $286 = ($285|0)==(0); + $$ = $286 ? 67030 : (67032); + $287 = $272;$288 = $275;$pl$0 = $285;$prefix$0 = $$; + label = 76; + } else { + $287 = $272;$288 = $275;$pl$0 = 1;$prefix$0 = (67031); + label = 76; + } + break; + } + case 117: { + $177 = $arg; + $178 = $177; + $179 = HEAP32[$178>>2]|0; + $180 = (($177) + 4)|0; + $181 = $180; + $182 = HEAP32[$181>>2]|0; + $287 = $179;$288 = $182;$pl$0 = 0;$prefix$0 = 67030; + label = 76; + break; + } + case 99: { + $308 = $arg; + $309 = $308; + $310 = HEAP32[$309>>2]|0; + $311 = (($308) + 4)|0; + $312 = $311; + $313 = HEAP32[$312>>2]|0; + $314 = $310&255; + HEAP8[$3>>0] = $314; + $a$2 = $3;$fl$6 = $176;$p$5 = 1;$pl$2 = 0;$prefix$2 = 67030;$z$2 = $1; + break; + } + case 109: { + $315 = (___errno_location()|0); + $316 = HEAP32[$315>>2]|0; + $317 = (_strerror($316)|0); + $a$1 = $317; + label = 82; + break; + } + case 115: { + $318 = HEAP32[$arg>>2]|0; + $319 = ($318|0)!=(0|0); + $320 = $319 ? $318 : 67040; + $a$1 = $320; + label = 82; + break; + } + case 67: { + $327 = $arg; + $328 = $327; + $329 = HEAP32[$328>>2]|0; + $330 = (($327) + 4)|0; + $331 = $330; + $332 = HEAP32[$331>>2]|0; + HEAP32[$wc>>2] = $329; + HEAP32[$4>>2] = 0; + HEAP32[$arg>>2] = $wc; + $798 = $wc;$p$4176 = -1; + label = 86; + break; + } + case 83: { + $$pre171 = HEAP32[$arg>>2]|0; + $333 = ($p$0|0)==(0); + if ($333) { + _pad($f,32,$w$1,0,$fl$1$); + $i$0$lcssa178 = 0; + label = 97; + } else { + $798 = $$pre171;$p$4176 = $p$0; + label = 86; + } + break; + } + case 65: case 71: case 70: case 69: case 97: case 103: case 102: case 101: { + $358 = +HEAPF64[$arg>>3]; + HEAP32[$e2$i>>2] = 0; + HEAPF64[tempDoublePtr>>3] = $358;$359 = HEAP32[tempDoublePtr>>2]|0; + $360 = HEAP32[tempDoublePtr+4>>2]|0; + $361 = ($360|0)<(0); + if ($361) { + $362 = -$358; + $$07$i = $362;$pl$0$i = 1;$prefix$0$i = 67047; + } else { + $363 = $fl$1$ & 2048; + $364 = ($363|0)==(0); + if ($364) { + $365 = $fl$1$ & 1; + $366 = ($365|0)==(0); + $$$i = $366 ? (67048) : (67053); + $$07$i = $358;$pl$0$i = $365;$prefix$0$i = $$$i; + } else { + $$07$i = $358;$pl$0$i = 1;$prefix$0$i = (67050); + } + } + HEAPF64[tempDoublePtr>>3] = $$07$i;$367 = HEAP32[tempDoublePtr>>2]|0; + $368 = HEAP32[tempDoublePtr+4>>2]|0; + $369 = $368 & 2146435072; + $370 = ($369>>>0)<(2146435072); + $371 = (0)<(0); + $372 = ($369|0)==(2146435072); + $373 = $372 & $371; + $374 = $370 | $373; + do { + if ($374) { + $390 = (+_frexpl($$07$i,$e2$i)); + $391 = $390 * 2.0; + $392 = $391 != 0.0; + if ($392) { + $393 = HEAP32[$e2$i>>2]|0; + $394 = (($393) + -1)|0; + HEAP32[$e2$i>>2] = $394; + } + $395 = $t$0 | 32; + $396 = ($395|0)==(97); + if ($396) { + $397 = $t$0 & 32; + $398 = ($397|0)==(0); + $399 = ((($prefix$0$i)) + 9|0); + $prefix$0$$i = $398 ? $prefix$0$i : $399; + $400 = $pl$0$i | 2; + $401 = ($p$0>>>0)>(11); + $402 = (12 - ($p$0))|0; + $403 = ($402|0)==(0); + $404 = $401 | $403; + do { + if ($404) { + $$1$i = $391; + } else { + $re$171$i = $402;$round$070$i = 8.0; + while(1) { + $405 = (($re$171$i) + -1)|0; + $406 = $round$070$i * 16.0; + $407 = ($405|0)==(0); + if ($407) { + $$lcssa319 = $406; + break; + } else { + $re$171$i = $405;$round$070$i = $406; + } + } + $408 = HEAP8[$prefix$0$$i>>0]|0; + $409 = ($408<<24>>24)==(45); + if ($409) { + $410 = -$391; + $411 = $410 - $$lcssa319; + $412 = $$lcssa319 + $411; + $413 = -$412; + $$1$i = $413; + break; + } else { + $414 = $391 + $$lcssa319; + $415 = $414 - $$lcssa319; + $$1$i = $415; + break; + } + } + } while(0); + $416 = HEAP32[$e2$i>>2]|0; + $417 = ($416|0)<(0); + $418 = (0 - ($416))|0; + $419 = $417 ? $418 : $416; + $420 = ($419|0)<(0); + $421 = $420 << 31 >> 31; + $422 = (_fmt_u($419,$421,$7)|0); + $423 = ($422|0)==($7|0); + if ($423) { + HEAP8[$8>>0] = 48; + $estr$0$i = $8; + } else { + $estr$0$i = $422; + } + $424 = $416 >> 31; + $425 = $424 & 2; + $426 = (($425) + 43)|0; + $427 = $426&255; + $428 = ((($estr$0$i)) + -1|0); + HEAP8[$428>>0] = $427; + $429 = (($t$0) + 15)|0; + $430 = $429&255; + $431 = ((($estr$0$i)) + -2|0); + HEAP8[$431>>0] = $430; + $notrhs$i = ($p$0|0)<(1); + $432 = $fl$1$ & 8; + $433 = ($432|0)==(0); + $$2$i = $$1$i;$s$0$i = $buf$i; + while(1) { + $434 = (~~(($$2$i))); + $435 = (67014 + ($434)|0); + $436 = HEAP8[$435>>0]|0; + $437 = $436&255; + $438 = $437 | $397; + $439 = $438&255; + $440 = ((($s$0$i)) + 1|0); + HEAP8[$s$0$i>>0] = $439; + $441 = (+($434|0)); + $442 = $$2$i - $441; + $443 = $442 * 16.0; + $444 = $440; + $445 = (($444) - ($5))|0; + $446 = ($445|0)==(1); + do { + if ($446) { + $notlhs$i = $443 == 0.0; + $or$cond3$not$i = $notrhs$i & $notlhs$i; + $or$cond$i = $433 & $or$cond3$not$i; + if ($or$cond$i) { + $s$1$i = $440; + break; + } + $447 = ((($s$0$i)) + 2|0); + HEAP8[$440>>0] = 46; + $s$1$i = $447; + } else { + $s$1$i = $440; + } + } while(0); + $448 = $443 != 0.0; + if ($448) { + $$2$i = $443;$s$0$i = $s$1$i; + } else { + $s$1$i$lcssa = $s$1$i; + break; + } + } + $449 = ($p$0|0)!=(0); + $$pre188$i = $s$1$i$lcssa; + $450 = (($11) + ($$pre188$i))|0; + $451 = ($450|0)<($p$0|0); + $or$cond122 = $449 & $451; + $452 = $431; + $453 = (($12) + ($p$0))|0; + $454 = (($453) - ($452))|0; + $455 = (($10) - ($452))|0; + $456 = (($455) + ($$pre188$i))|0; + $l$0$i = $or$cond122 ? $454 : $456; + $457 = (($l$0$i) + ($400))|0; + _pad($f,32,$w$1,$457,$fl$1$); + $458 = HEAP32[$f>>2]|0; + $459 = $458 & 32; + $460 = ($459|0)==(0); + if ($460) { + (___fwritex($prefix$0$$i,$400,$f)|0); + } + $461 = $fl$1$ ^ 65536; + _pad($f,48,$w$1,$457,$461); + $462 = (($$pre188$i) - ($5))|0; + $463 = HEAP32[$f>>2]|0; + $464 = $463 & 32; + $465 = ($464|0)==(0); + if ($465) { + (___fwritex($buf$i,$462,$f)|0); + } + $466 = (($9) - ($452))|0; + $sum = (($462) + ($466))|0; + $467 = (($l$0$i) - ($sum))|0; + _pad($f,48,$467,0,0); + $468 = HEAP32[$f>>2]|0; + $469 = $468 & 32; + $470 = ($469|0)==(0); + if ($470) { + (___fwritex($431,$466,$f)|0); + } + $471 = $fl$1$ ^ 8192; + _pad($f,32,$w$1,$457,$471); + $472 = ($457|0)<($w$1|0); + $w$$i = $472 ? $w$1 : $457; + $$0$i = $w$$i; + break; + } + $473 = ($p$0|0)<(0); + $$p$i = $473 ? 6 : $p$0; + if ($392) { + $474 = $391 * 268435456.0; + $475 = HEAP32[$e2$i>>2]|0; + $476 = (($475) + -28)|0; + HEAP32[$e2$i>>2] = $476; + $$3$i = $474;$477 = $476; + } else { + $$pre185$i = HEAP32[$e2$i>>2]|0; + $$3$i = $391;$477 = $$pre185$i; + } + $478 = ($477|0)<(0); + $$33$i = $478 ? $big$i : $13; + $479 = $$33$i; + $$4$i = $$3$i;$z$0$i = $$33$i; + while(1) { + $480 = (~~(($$4$i))>>>0); + HEAP32[$z$0$i>>2] = $480; + $481 = ((($z$0$i)) + 4|0); + $482 = (+($480>>>0)); + $483 = $$4$i - $482; + $484 = $483 * 1.0E+9; + $485 = $484 != 0.0; + if ($485) { + $$4$i = $484;$z$0$i = $481; + } else { + $$lcssa303 = $481; + break; + } + } + $$pr$i = HEAP32[$e2$i>>2]|0; + $486 = ($$pr$i|0)>(0); + if ($486) { + $487 = $$pr$i;$a$1149$i = $$33$i;$z$1148$i = $$lcssa303; + while(1) { + $488 = ($487|0)>(29); + $489 = $488 ? 29 : $487; + $d$0141$i = ((($z$1148$i)) + -4|0); + $490 = ($d$0141$i>>>0)<($a$1149$i>>>0); + do { + if ($490) { + $a$2$ph$i = $a$1149$i; + } else { + $carry$0142$i = 0;$d$0143$i = $d$0141$i; + while(1) { + $491 = HEAP32[$d$0143$i>>2]|0; + $492 = (_bitshift64Shl(($491|0),0,($489|0))|0); + $493 = tempRet0; + $494 = (_i64Add(($492|0),($493|0),($carry$0142$i|0),0)|0); + $495 = tempRet0; + $496 = (___uremdi3(($494|0),($495|0),1000000000,0)|0); + $497 = tempRet0; + HEAP32[$d$0143$i>>2] = $496; + $498 = (___udivdi3(($494|0),($495|0),1000000000,0)|0); + $499 = tempRet0; + $d$0$i = ((($d$0143$i)) + -4|0); + $500 = ($d$0$i>>>0)<($a$1149$i>>>0); + if ($500) { + $$lcssa304 = $498; + break; + } else { + $carry$0142$i = $498;$d$0143$i = $d$0$i; + } + } + $501 = ($$lcssa304|0)==(0); + if ($501) { + $a$2$ph$i = $a$1149$i; + break; + } + $502 = ((($a$1149$i)) + -4|0); + HEAP32[$502>>2] = $$lcssa304; + $a$2$ph$i = $502; + } + } while(0); + $z$2$i = $z$1148$i; + while(1) { + $503 = ($z$2$i>>>0)>($a$2$ph$i>>>0); + if (!($503)) { + $z$2$i$lcssa = $z$2$i; + break; + } + $504 = ((($z$2$i)) + -4|0); + $505 = HEAP32[$504>>2]|0; + $506 = ($505|0)==(0); + if ($506) { + $z$2$i = $504; + } else { + $z$2$i$lcssa = $z$2$i; + break; + } + } + $507 = HEAP32[$e2$i>>2]|0; + $508 = (($507) - ($489))|0; + HEAP32[$e2$i>>2] = $508; + $509 = ($508|0)>(0); + if ($509) { + $487 = $508;$a$1149$i = $a$2$ph$i;$z$1148$i = $z$2$i$lcssa; + } else { + $$pr50$i = $508;$a$1$lcssa$i = $a$2$ph$i;$z$1$lcssa$i = $z$2$i$lcssa; + break; + } + } + } else { + $$pr50$i = $$pr$i;$a$1$lcssa$i = $$33$i;$z$1$lcssa$i = $$lcssa303; + } + $510 = ($$pr50$i|0)<(0); + if ($510) { + $511 = (($$p$i) + 25)|0; + $512 = (($511|0) / 9)&-1; + $513 = (($512) + 1)|0; + $514 = ($395|0)==(102); + $516 = $$pr50$i;$a$3136$i = $a$1$lcssa$i;$z$3135$i = $z$1$lcssa$i; + while(1) { + $515 = (0 - ($516))|0; + $517 = ($515|0)>(9); + $518 = $517 ? 9 : $515; + $519 = ($a$3136$i>>>0)<($z$3135$i>>>0); + do { + if ($519) { + $523 = 1 << $518; + $524 = (($523) + -1)|0; + $525 = 1000000000 >>> $518; + $carry3$0130$i = 0;$d$1129$i = $a$3136$i; + while(1) { + $526 = HEAP32[$d$1129$i>>2]|0; + $527 = $526 & $524; + $528 = $526 >>> $518; + $529 = (($528) + ($carry3$0130$i))|0; + HEAP32[$d$1129$i>>2] = $529; + $530 = Math_imul($527, $525)|0; + $531 = ((($d$1129$i)) + 4|0); + $532 = ($531>>>0)<($z$3135$i>>>0); + if ($532) { + $carry3$0130$i = $530;$d$1129$i = $531; + } else { + $$lcssa306 = $530; + break; + } + } + $533 = HEAP32[$a$3136$i>>2]|0; + $534 = ($533|0)==(0); + $535 = ((($a$3136$i)) + 4|0); + $$a$3$i = $534 ? $535 : $a$3136$i; + $536 = ($$lcssa306|0)==(0); + if ($536) { + $$a$3192$i = $$a$3$i;$z$4$i = $z$3135$i; + break; + } + $537 = ((($z$3135$i)) + 4|0); + HEAP32[$z$3135$i>>2] = $$lcssa306; + $$a$3192$i = $$a$3$i;$z$4$i = $537; + } else { + $520 = HEAP32[$a$3136$i>>2]|0; + $521 = ($520|0)==(0); + $522 = ((($a$3136$i)) + 4|0); + $$a$3191$i = $521 ? $522 : $a$3136$i; + $$a$3192$i = $$a$3191$i;$z$4$i = $z$3135$i; + } + } while(0); + $538 = $514 ? $$33$i : $$a$3192$i; + $539 = $z$4$i; + $540 = $538; + $541 = (($539) - ($540))|0; + $542 = $541 >> 2; + $543 = ($542|0)>($513|0); + $544 = (($538) + ($513<<2)|0); + $$z$4$i = $543 ? $544 : $z$4$i; + $545 = HEAP32[$e2$i>>2]|0; + $546 = (($545) + ($518))|0; + HEAP32[$e2$i>>2] = $546; + $547 = ($546|0)<(0); + if ($547) { + $516 = $546;$a$3136$i = $$a$3192$i;$z$3135$i = $$z$4$i; + } else { + $a$3$lcssa$i = $$a$3192$i;$z$3$lcssa$i = $$z$4$i; + break; + } + } + } else { + $a$3$lcssa$i = $a$1$lcssa$i;$z$3$lcssa$i = $z$1$lcssa$i; + } + $548 = ($a$3$lcssa$i>>>0)<($z$3$lcssa$i>>>0); + do { + if ($548) { + $549 = $a$3$lcssa$i; + $550 = (($479) - ($549))|0; + $551 = $550 >> 2; + $552 = ($551*9)|0; + $553 = HEAP32[$a$3$lcssa$i>>2]|0; + $554 = ($553>>>0)<(10); + if ($554) { + $e$1$i = $552; + break; + } else { + $e$0125$i = $552;$i$0124$i = 10; + } + while(1) { + $555 = ($i$0124$i*10)|0; + $556 = (($e$0125$i) + 1)|0; + $557 = ($553>>>0)<($555>>>0); + if ($557) { + $e$1$i = $556; + break; + } else { + $e$0125$i = $556;$i$0124$i = $555; + } + } + } else { + $e$1$i = 0; + } + } while(0); + $558 = ($395|0)!=(102); + $559 = $558 ? $e$1$i : 0; + $560 = (($$p$i) - ($559))|0; + $561 = ($395|0)==(103); + $562 = ($$p$i|0)!=(0); + $563 = $562 & $561; + $$neg55$i = $563 << 31 >> 31; + $564 = (($560) + ($$neg55$i))|0; + $565 = $z$3$lcssa$i; + $566 = (($565) - ($479))|0; + $567 = $566 >> 2; + $568 = ($567*9)|0; + $569 = (($568) + -9)|0; + $570 = ($564|0)<($569|0); + if ($570) { + $571 = ((($$33$i)) + 4|0); + $572 = (($564) + 9216)|0; + $573 = (($572|0) / 9)&-1; + $574 = (($573) + -1024)|0; + $575 = (($571) + ($574<<2)|0); + $576 = (($572|0) % 9)&-1; + $j$0117$i = (($576) + 1)|0; + $577 = ($j$0117$i|0)<(9); + if ($577) { + $i$1118$i = 10;$j$0119$i = $j$0117$i; + while(1) { + $578 = ($i$1118$i*10)|0; + $j$0$i = (($j$0119$i) + 1)|0; + $exitcond$i = ($j$0$i|0)==(9); + if ($exitcond$i) { + $i$1$lcssa$i = $578; + break; + } else { + $i$1118$i = $578;$j$0119$i = $j$0$i; + } + } + } else { + $i$1$lcssa$i = 10; + } + $579 = HEAP32[$575>>2]|0; + $580 = (($579>>>0) % ($i$1$lcssa$i>>>0))&-1; + $581 = ($580|0)==(0); + $582 = ((($575)) + 4|0); + $583 = ($582|0)==($z$3$lcssa$i|0); + $or$cond18$i = $583 & $581; + do { + if ($or$cond18$i) { + $a$8$i = $a$3$lcssa$i;$d$4$i = $575;$e$4$i = $e$1$i; + } else { + $584 = (($579>>>0) / ($i$1$lcssa$i>>>0))&-1; + $585 = $584 & 1; + $586 = ($585|0)==(0); + $$20$i = $586 ? 9007199254740992.0 : 9007199254740994.0; + $587 = (($i$1$lcssa$i|0) / 2)&-1; + $588 = ($580>>>0)<($587>>>0); + if ($588) { + $small$0$i = 0.5; + } else { + $589 = ($580|0)==($587|0); + $or$cond22$i = $583 & $589; + $$36$i = $or$cond22$i ? 1.0 : 1.5; + $small$0$i = $$36$i; + } + $590 = ($pl$0$i|0)==(0); + do { + if ($590) { + $round6$1$i = $$20$i;$small$1$i = $small$0$i; + } else { + $591 = HEAP8[$prefix$0$i>>0]|0; + $592 = ($591<<24>>24)==(45); + if (!($592)) { + $round6$1$i = $$20$i;$small$1$i = $small$0$i; + break; + } + $593 = -$$20$i; + $594 = -$small$0$i; + $round6$1$i = $593;$small$1$i = $594; + } + } while(0); + $595 = (($579) - ($580))|0; + HEAP32[$575>>2] = $595; + $596 = $round6$1$i + $small$1$i; + $597 = $596 != $round6$1$i; + if (!($597)) { + $a$8$i = $a$3$lcssa$i;$d$4$i = $575;$e$4$i = $e$1$i; + break; + } + $598 = (($595) + ($i$1$lcssa$i))|0; + HEAP32[$575>>2] = $598; + $599 = ($598>>>0)>(999999999); + if ($599) { + $a$5111$i = $a$3$lcssa$i;$d$2110$i = $575; + while(1) { + $600 = ((($d$2110$i)) + -4|0); + HEAP32[$d$2110$i>>2] = 0; + $601 = ($600>>>0)<($a$5111$i>>>0); + if ($601) { + $602 = ((($a$5111$i)) + -4|0); + HEAP32[$602>>2] = 0; + $a$6$i = $602; + } else { + $a$6$i = $a$5111$i; + } + $603 = HEAP32[$600>>2]|0; + $604 = (($603) + 1)|0; + HEAP32[$600>>2] = $604; + $605 = ($604>>>0)>(999999999); + if ($605) { + $a$5111$i = $a$6$i;$d$2110$i = $600; + } else { + $a$5$lcssa$i = $a$6$i;$d$2$lcssa$i = $600; + break; + } + } + } else { + $a$5$lcssa$i = $a$3$lcssa$i;$d$2$lcssa$i = $575; + } + $606 = $a$5$lcssa$i; + $607 = (($479) - ($606))|0; + $608 = $607 >> 2; + $609 = ($608*9)|0; + $610 = HEAP32[$a$5$lcssa$i>>2]|0; + $611 = ($610>>>0)<(10); + if ($611) { + $a$8$i = $a$5$lcssa$i;$d$4$i = $d$2$lcssa$i;$e$4$i = $609; + break; + } else { + $e$2106$i = $609;$i$2105$i = 10; + } + while(1) { + $612 = ($i$2105$i*10)|0; + $613 = (($e$2106$i) + 1)|0; + $614 = ($610>>>0)<($612>>>0); + if ($614) { + $a$8$i = $a$5$lcssa$i;$d$4$i = $d$2$lcssa$i;$e$4$i = $613; + break; + } else { + $e$2106$i = $613;$i$2105$i = $612; + } + } + } + } while(0); + $615 = ((($d$4$i)) + 4|0); + $616 = ($z$3$lcssa$i>>>0)>($615>>>0); + $$z$3$i = $616 ? $615 : $z$3$lcssa$i; + $a$9$ph$i = $a$8$i;$e$5$ph$i = $e$4$i;$z$7$ph$i = $$z$3$i; + } else { + $a$9$ph$i = $a$3$lcssa$i;$e$5$ph$i = $e$1$i;$z$7$ph$i = $z$3$lcssa$i; + } + $617 = (0 - ($e$5$ph$i))|0; + $z$7$i = $z$7$ph$i; + while(1) { + $618 = ($z$7$i>>>0)>($a$9$ph$i>>>0); + if (!($618)) { + $$lcssa162$i = 0;$z$7$i$lcssa = $z$7$i; + break; + } + $619 = ((($z$7$i)) + -4|0); + $620 = HEAP32[$619>>2]|0; + $621 = ($620|0)==(0); + if ($621) { + $z$7$i = $619; + } else { + $$lcssa162$i = 1;$z$7$i$lcssa = $z$7$i; + break; + } + } + do { + if ($561) { + $622 = $562&1; + $623 = $622 ^ 1; + $$p$$i = (($623) + ($$p$i))|0; + $624 = ($$p$$i|0)>($e$5$ph$i|0); + $625 = ($e$5$ph$i|0)>(-5); + $or$cond6$i = $624 & $625; + if ($or$cond6$i) { + $626 = (($t$0) + -1)|0; + $$neg56$i = (($$p$$i) + -1)|0; + $627 = (($$neg56$i) - ($e$5$ph$i))|0; + $$013$i = $626;$$210$i = $627; + } else { + $628 = (($t$0) + -2)|0; + $629 = (($$p$$i) + -1)|0; + $$013$i = $628;$$210$i = $629; + } + $630 = $fl$1$ & 8; + $631 = ($630|0)==(0); + if (!($631)) { + $$114$i = $$013$i;$$311$i = $$210$i;$$pre$phi190$iZ2D = $630; + break; + } + do { + if ($$lcssa162$i) { + $632 = ((($z$7$i$lcssa)) + -4|0); + $633 = HEAP32[$632>>2]|0; + $634 = ($633|0)==(0); + if ($634) { + $j$2$i = 9; + break; + } + $635 = (($633>>>0) % 10)&-1; + $636 = ($635|0)==(0); + if ($636) { + $i$3101$i = 10;$j$1102$i = 0; + } else { + $j$2$i = 0; + break; + } + while(1) { + $637 = ($i$3101$i*10)|0; + $638 = (($j$1102$i) + 1)|0; + $639 = (($633>>>0) % ($637>>>0))&-1; + $640 = ($639|0)==(0); + if ($640) { + $i$3101$i = $637;$j$1102$i = $638; + } else { + $j$2$i = $638; + break; + } + } + } else { + $j$2$i = 9; + } + } while(0); + $641 = $$013$i | 32; + $642 = ($641|0)==(102); + $643 = $z$7$i$lcssa; + $644 = (($643) - ($479))|0; + $645 = $644 >> 2; + $646 = ($645*9)|0; + $647 = (($646) + -9)|0; + if ($642) { + $648 = (($647) - ($j$2$i))|0; + $649 = ($648|0)<(0); + $$23$i = $649 ? 0 : $648; + $650 = ($$210$i|0)<($$23$i|0); + $$210$$24$i = $650 ? $$210$i : $$23$i; + $$114$i = $$013$i;$$311$i = $$210$$24$i;$$pre$phi190$iZ2D = 0; + break; + } else { + $651 = (($647) + ($e$5$ph$i))|0; + $652 = (($651) - ($j$2$i))|0; + $653 = ($652|0)<(0); + $$25$i = $653 ? 0 : $652; + $654 = ($$210$i|0)<($$25$i|0); + $$210$$26$i = $654 ? $$210$i : $$25$i; + $$114$i = $$013$i;$$311$i = $$210$$26$i;$$pre$phi190$iZ2D = 0; + break; + } + } else { + $$pre189$i = $fl$1$ & 8; + $$114$i = $t$0;$$311$i = $$p$i;$$pre$phi190$iZ2D = $$pre189$i; + } + } while(0); + $655 = $$311$i | $$pre$phi190$iZ2D; + $656 = ($655|0)!=(0); + $657 = $656&1; + $658 = $$114$i | 32; + $659 = ($658|0)==(102); + if ($659) { + $660 = ($e$5$ph$i|0)>(0); + $661 = $660 ? $e$5$ph$i : 0; + $$pn$i = $661;$estr$2$i = 0; + } else { + $662 = ($e$5$ph$i|0)<(0); + $663 = $662 ? $617 : $e$5$ph$i; + $664 = ($663|0)<(0); + $665 = $664 << 31 >> 31; + $666 = (_fmt_u($663,$665,$7)|0); + $667 = $666; + $668 = (($9) - ($667))|0; + $669 = ($668|0)<(2); + if ($669) { + $estr$195$i = $666; + while(1) { + $670 = ((($estr$195$i)) + -1|0); + HEAP8[$670>>0] = 48; + $671 = $670; + $672 = (($9) - ($671))|0; + $673 = ($672|0)<(2); + if ($673) { + $estr$195$i = $670; + } else { + $estr$1$lcssa$i = $670; + break; + } + } + } else { + $estr$1$lcssa$i = $666; + } + $674 = $e$5$ph$i >> 31; + $675 = $674 & 2; + $676 = (($675) + 43)|0; + $677 = $676&255; + $678 = ((($estr$1$lcssa$i)) + -1|0); + HEAP8[$678>>0] = $677; + $679 = $$114$i&255; + $680 = ((($estr$1$lcssa$i)) + -2|0); + HEAP8[$680>>0] = $679; + $681 = $680; + $682 = (($9) - ($681))|0; + $$pn$i = $682;$estr$2$i = $680; + } + $683 = (($pl$0$i) + 1)|0; + $684 = (($683) + ($$311$i))|0; + $l$1$i = (($684) + ($657))|0; + $685 = (($l$1$i) + ($$pn$i))|0; + _pad($f,32,$w$1,$685,$fl$1$); + $686 = HEAP32[$f>>2]|0; + $687 = $686 & 32; + $688 = ($687|0)==(0); + if ($688) { + (___fwritex($prefix$0$i,$pl$0$i,$f)|0); + } + $689 = $fl$1$ ^ 65536; + _pad($f,48,$w$1,$685,$689); + do { + if ($659) { + $690 = ($a$9$ph$i>>>0)>($$33$i>>>0); + $r$0$a$9$i = $690 ? $$33$i : $a$9$ph$i; + $d$584$i = $r$0$a$9$i; + while(1) { + $691 = HEAP32[$d$584$i>>2]|0; + $692 = (_fmt_u($691,0,$14)|0); + $693 = ($d$584$i|0)==($r$0$a$9$i|0); + do { + if ($693) { + $699 = ($692|0)==($14|0); + if (!($699)) { + $s7$1$i = $692; + break; + } + HEAP8[$16>>0] = 48; + $s7$1$i = $16; + } else { + $694 = ($692>>>0)>($buf$i>>>0); + if (!($694)) { + $s7$1$i = $692; + break; + } + $695 = $692; + $696 = (($695) - ($5))|0; + _memset(($buf$i|0),48,($696|0))|0; + $s7$081$i = $692; + while(1) { + $697 = ((($s7$081$i)) + -1|0); + $698 = ($697>>>0)>($buf$i>>>0); + if ($698) { + $s7$081$i = $697; + } else { + $s7$1$i = $697; + break; + } + } + } + } while(0); + $700 = HEAP32[$f>>2]|0; + $701 = $700 & 32; + $702 = ($701|0)==(0); + if ($702) { + $703 = $s7$1$i; + $704 = (($15) - ($703))|0; + (___fwritex($s7$1$i,$704,$f)|0); + } + $705 = ((($d$584$i)) + 4|0); + $706 = ($705>>>0)>($$33$i>>>0); + if ($706) { + $$lcssa316 = $705; + break; + } else { + $d$584$i = $705; + } + } + $707 = ($655|0)==(0); + do { + if (!($707)) { + $708 = HEAP32[$f>>2]|0; + $709 = $708 & 32; + $710 = ($709|0)==(0); + if (!($710)) { + break; + } + (___fwritex(67082,1,$f)|0); + } + } while(0); + $711 = ($$lcssa316>>>0)<($z$7$i$lcssa>>>0); + $712 = ($$311$i|0)>(0); + $713 = $712 & $711; + if ($713) { + $$41278$i = $$311$i;$d$677$i = $$lcssa316; + while(1) { + $714 = HEAP32[$d$677$i>>2]|0; + $715 = (_fmt_u($714,0,$14)|0); + $716 = ($715>>>0)>($buf$i>>>0); + if ($716) { + $717 = $715; + $718 = (($717) - ($5))|0; + _memset(($buf$i|0),48,($718|0))|0; + $s8$072$i = $715; + while(1) { + $719 = ((($s8$072$i)) + -1|0); + $720 = ($719>>>0)>($buf$i>>>0); + if ($720) { + $s8$072$i = $719; + } else { + $s8$0$lcssa$i = $719; + break; + } + } + } else { + $s8$0$lcssa$i = $715; + } + $721 = HEAP32[$f>>2]|0; + $722 = $721 & 32; + $723 = ($722|0)==(0); + if ($723) { + $724 = ($$41278$i|0)>(9); + $725 = $724 ? 9 : $$41278$i; + (___fwritex($s8$0$lcssa$i,$725,$f)|0); + } + $726 = ((($d$677$i)) + 4|0); + $727 = (($$41278$i) + -9)|0; + $728 = ($726>>>0)<($z$7$i$lcssa>>>0); + $729 = ($$41278$i|0)>(9); + $730 = $729 & $728; + if ($730) { + $$41278$i = $727;$d$677$i = $726; + } else { + $$412$lcssa$i = $727; + break; + } + } + } else { + $$412$lcssa$i = $$311$i; + } + $731 = (($$412$lcssa$i) + 9)|0; + _pad($f,48,$731,9,0); + } else { + $732 = ((($a$9$ph$i)) + 4|0); + $z$7$$i = $$lcssa162$i ? $z$7$i$lcssa : $732; + $733 = ($$311$i|0)>(-1); + if ($733) { + $734 = ($$pre$phi190$iZ2D|0)==(0); + $$589$i = $$311$i;$d$788$i = $a$9$ph$i; + while(1) { + $735 = HEAP32[$d$788$i>>2]|0; + $736 = (_fmt_u($735,0,$14)|0); + $737 = ($736|0)==($14|0); + if ($737) { + HEAP8[$16>>0] = 48; + $s9$0$i = $16; + } else { + $s9$0$i = $736; + } + $738 = ($d$788$i|0)==($a$9$ph$i|0); + do { + if ($738) { + $742 = ((($s9$0$i)) + 1|0); + $743 = HEAP32[$f>>2]|0; + $744 = $743 & 32; + $745 = ($744|0)==(0); + if ($745) { + (___fwritex($s9$0$i,1,$f)|0); + } + $746 = ($$589$i|0)<(1); + $or$cond31$i = $734 & $746; + if ($or$cond31$i) { + $s9$2$i = $742; + break; + } + $747 = HEAP32[$f>>2]|0; + $748 = $747 & 32; + $749 = ($748|0)==(0); + if (!($749)) { + $s9$2$i = $742; + break; + } + (___fwritex(67082,1,$f)|0); + $s9$2$i = $742; + } else { + $739 = ($s9$0$i>>>0)>($buf$i>>>0); + if (!($739)) { + $s9$2$i = $s9$0$i; + break; + } + $scevgep182$i = (($s9$0$i) + ($6)|0); + $scevgep182183$i = $scevgep182$i; + _memset(($buf$i|0),48,($scevgep182183$i|0))|0; + $s9$185$i = $s9$0$i; + while(1) { + $740 = ((($s9$185$i)) + -1|0); + $741 = ($740>>>0)>($buf$i>>>0); + if ($741) { + $s9$185$i = $740; + } else { + $s9$2$i = $740; + break; + } + } + } + } while(0); + $750 = $s9$2$i; + $751 = (($15) - ($750))|0; + $752 = HEAP32[$f>>2]|0; + $753 = $752 & 32; + $754 = ($753|0)==(0); + if ($754) { + $755 = ($$589$i|0)>($751|0); + $756 = $755 ? $751 : $$589$i; + (___fwritex($s9$2$i,$756,$f)|0); + } + $757 = (($$589$i) - ($751))|0; + $758 = ((($d$788$i)) + 4|0); + $759 = ($758>>>0)<($z$7$$i>>>0); + $760 = ($757|0)>(-1); + $761 = $759 & $760; + if ($761) { + $$589$i = $757;$d$788$i = $758; + } else { + $$5$lcssa$i = $757; + break; + } + } + } else { + $$5$lcssa$i = $$311$i; + } + $762 = (($$5$lcssa$i) + 18)|0; + _pad($f,48,$762,18,0); + $763 = HEAP32[$f>>2]|0; + $764 = $763 & 32; + $765 = ($764|0)==(0); + if (!($765)) { + break; + } + $766 = $estr$2$i; + $767 = (($9) - ($766))|0; + (___fwritex($estr$2$i,$767,$f)|0); + } + } while(0); + $768 = $fl$1$ ^ 8192; + _pad($f,32,$w$1,$685,$768); + $769 = ($685|0)<($w$1|0); + $w$32$i = $769 ? $w$1 : $685; + $$0$i = $w$32$i; + } else { + $375 = $t$0 & 32; + $376 = ($375|0)!=(0); + $377 = $376 ? 67066 : 67070; + $378 = ($$07$i != $$07$i) | (0.0 != 0.0); + $379 = $376 ? 67074 : 67078; + $pl$1$i = $378 ? 0 : $pl$0$i; + $s1$0$i = $378 ? $379 : $377; + $380 = (($pl$1$i) + 3)|0; + _pad($f,32,$w$1,$380,$176); + $381 = HEAP32[$f>>2]|0; + $382 = $381 & 32; + $383 = ($382|0)==(0); + if ($383) { + (___fwritex($prefix$0$i,$pl$1$i,$f)|0); + $$pre$i = HEAP32[$f>>2]|0; + $385 = $$pre$i; + } else { + $385 = $381; + } + $384 = $385 & 32; + $386 = ($384|0)==(0); + if ($386) { + (___fwritex($s1$0$i,3,$f)|0); + } + $387 = $fl$1$ ^ 8192; + _pad($f,32,$w$1,$380,$387); + $388 = ($380|0)<($w$1|0); + $389 = $388 ? $w$1 : $380; + $$0$i = $389; + } + } while(0); + $cnt$0 = $cnt$1;$l$0 = $$0$i;$l10n$0 = $l10n$3;$s$0 = $$lcssa300; + continue L1; + break; + } + default: { + $a$2 = $s$0;$fl$6 = $fl$1$;$p$5 = $p$0;$pl$2 = 0;$prefix$2 = 67030;$z$2 = $1; + } + } + } while(0); + L311: do { + if ((label|0) == 64) { + label = 0; + $207 = $arg; + $208 = $207; + $209 = HEAP32[$208>>2]|0; + $210 = (($207) + 4)|0; + $211 = $210; + $212 = HEAP32[$211>>2]|0; + $213 = $t$1 & 32; + $214 = ($209|0)==(0); + $215 = ($212|0)==(0); + $216 = $214 & $215; + if ($216) { + $a$0 = $1;$fl$4 = $fl$3;$p$2 = $p$1;$pl$1 = 0;$prefix$1 = 67030; + label = 77; + } else { + $$012$i = $1;$218 = $209;$225 = $212; + while(1) { + $217 = $218 & 15; + $219 = (67014 + ($217)|0); + $220 = HEAP8[$219>>0]|0; + $221 = $220&255; + $222 = $221 | $213; + $223 = $222&255; + $224 = ((($$012$i)) + -1|0); + HEAP8[$224>>0] = $223; + $226 = (_bitshift64Lshr(($218|0),($225|0),4)|0); + $227 = tempRet0; + $228 = ($226|0)==(0); + $229 = ($227|0)==(0); + $230 = $228 & $229; + if ($230) { + $$lcssa321 = $224; + break; + } else { + $$012$i = $224;$218 = $226;$225 = $227; + } + } + $231 = $arg; + $232 = $231; + $233 = HEAP32[$232>>2]|0; + $234 = (($231) + 4)|0; + $235 = $234; + $236 = HEAP32[$235>>2]|0; + $237 = ($233|0)==(0); + $238 = ($236|0)==(0); + $239 = $237 & $238; + $240 = $fl$3 & 8; + $241 = ($240|0)==(0); + $or$cond17 = $241 | $239; + if ($or$cond17) { + $a$0 = $$lcssa321;$fl$4 = $fl$3;$p$2 = $p$1;$pl$1 = 0;$prefix$1 = 67030; + label = 77; + } else { + $242 = $t$1 >> 4; + $243 = (67030 + ($242)|0); + $a$0 = $$lcssa321;$fl$4 = $fl$3;$p$2 = $p$1;$pl$1 = 2;$prefix$1 = $243; + label = 77; + } + } + } + else if ((label|0) == 76) { + label = 0; + $289 = (_fmt_u($287,$288,$1)|0); + $a$0 = $289;$fl$4 = $fl$1$;$p$2 = $p$0;$pl$1 = $pl$0;$prefix$1 = $prefix$0; + label = 77; + } + else if ((label|0) == 82) { + label = 0; + $321 = (_memchr($a$1,0,$p$0)|0); + $322 = ($321|0)==(0|0); + $323 = $321; + $324 = $a$1; + $325 = (($323) - ($324))|0; + $326 = (($a$1) + ($p$0)|0); + $z$1 = $322 ? $326 : $321; + $p$3 = $322 ? $p$0 : $325; + $a$2 = $a$1;$fl$6 = $176;$p$5 = $p$3;$pl$2 = 0;$prefix$2 = 67030;$z$2 = $z$1; + } + else if ((label|0) == 86) { + label = 0; + $i$0105 = 0;$l$1104 = 0;$ws$0106 = $798; + while(1) { + $334 = HEAP32[$ws$0106>>2]|0; + $335 = ($334|0)==(0); + if ($335) { + $i$0$lcssa = $i$0105;$l$2 = $l$1104; + break; + } + $336 = (_wctomb($mb,$334)|0); + $337 = ($336|0)<(0); + $338 = (($p$4176) - ($i$0105))|0; + $339 = ($336>>>0)>($338>>>0); + $or$cond20 = $337 | $339; + if ($or$cond20) { + $i$0$lcssa = $i$0105;$l$2 = $336; + break; + } + $340 = ((($ws$0106)) + 4|0); + $341 = (($336) + ($i$0105))|0; + $342 = ($p$4176>>>0)>($341>>>0); + if ($342) { + $i$0105 = $341;$l$1104 = $336;$ws$0106 = $340; + } else { + $i$0$lcssa = $341;$l$2 = $336; + break; + } + } + $343 = ($l$2|0)<(0); + if ($343) { + $$0 = -1; + break L1; + } + _pad($f,32,$w$1,$i$0$lcssa,$fl$1$); + $344 = ($i$0$lcssa|0)==(0); + if ($344) { + $i$0$lcssa178 = 0; + label = 97; + } else { + $i$1116 = 0;$ws$1117 = $798; + while(1) { + $345 = HEAP32[$ws$1117>>2]|0; + $346 = ($345|0)==(0); + if ($346) { + $i$0$lcssa178 = $i$0$lcssa; + label = 97; + break L311; + } + $347 = ((($ws$1117)) + 4|0); + $348 = (_wctomb($mb,$345)|0); + $349 = (($348) + ($i$1116))|0; + $350 = ($349|0)>($i$0$lcssa|0); + if ($350) { + $i$0$lcssa178 = $i$0$lcssa; + label = 97; + break L311; + } + $351 = HEAP32[$f>>2]|0; + $352 = $351 & 32; + $353 = ($352|0)==(0); + if ($353) { + (___fwritex($mb,$348,$f)|0); + } + $354 = ($349>>>0)<($i$0$lcssa>>>0); + if ($354) { + $i$1116 = $349;$ws$1117 = $347; + } else { + $i$0$lcssa178 = $i$0$lcssa; + label = 97; + break; + } + } + } + } + } while(0); + if ((label|0) == 97) { + label = 0; + $355 = $fl$1$ ^ 8192; + _pad($f,32,$w$1,$i$0$lcssa178,$355); + $356 = ($w$1|0)>($i$0$lcssa178|0); + $357 = $356 ? $w$1 : $i$0$lcssa178; + $cnt$0 = $cnt$1;$l$0 = $357;$l10n$0 = $l10n$3;$s$0 = $$lcssa300; + continue; + } + if ((label|0) == 77) { + label = 0; + $290 = ($p$2|0)>(-1); + $291 = $fl$4 & -65537; + $$fl$4 = $290 ? $291 : $fl$4; + $292 = $arg; + $293 = $292; + $294 = HEAP32[$293>>2]|0; + $295 = (($292) + 4)|0; + $296 = $295; + $297 = HEAP32[$296>>2]|0; + $298 = ($294|0)!=(0); + $299 = ($297|0)!=(0); + $300 = $298 | $299; + $301 = ($p$2|0)!=(0); + $or$cond = $301 | $300; + if ($or$cond) { + $302 = $a$0; + $303 = (($2) - ($302))|0; + $304 = $300&1; + $305 = $304 ^ 1; + $306 = (($305) + ($303))|0; + $307 = ($p$2|0)>($306|0); + $p$2$ = $307 ? $p$2 : $306; + $a$2 = $a$0;$fl$6 = $$fl$4;$p$5 = $p$2$;$pl$2 = $pl$1;$prefix$2 = $prefix$1;$z$2 = $1; + } else { + $a$2 = $1;$fl$6 = $$fl$4;$p$5 = 0;$pl$2 = $pl$1;$prefix$2 = $prefix$1;$z$2 = $1; + } + } + $770 = $z$2; + $771 = $a$2; + $772 = (($770) - ($771))|0; + $773 = ($p$5|0)<($772|0); + $$p$5 = $773 ? $772 : $p$5; + $774 = (($pl$2) + ($$p$5))|0; + $775 = ($w$1|0)<($774|0); + $w$2 = $775 ? $774 : $w$1; + _pad($f,32,$w$2,$774,$fl$6); + $776 = HEAP32[$f>>2]|0; + $777 = $776 & 32; + $778 = ($777|0)==(0); + if ($778) { + (___fwritex($prefix$2,$pl$2,$f)|0); + } + $779 = $fl$6 ^ 65536; + _pad($f,48,$w$2,$774,$779); + _pad($f,48,$$p$5,$772,0); + $780 = HEAP32[$f>>2]|0; + $781 = $780 & 32; + $782 = ($781|0)==(0); + if ($782) { + (___fwritex($a$2,$772,$f)|0); + } + $783 = $fl$6 ^ 8192; + _pad($f,32,$w$2,$774,$783); + $cnt$0 = $cnt$1;$l$0 = $w$2;$l10n$0 = $l10n$3;$s$0 = $$lcssa300; + } + L345: do { + if ((label|0) == 244) { + $784 = ($f|0)==(0|0); + if ($784) { + $785 = ($l10n$0$lcssa|0)==(0); + if ($785) { + $$0 = 0; + } else { + $i$291 = 1; + while(1) { + $786 = (($nl_type) + ($i$291<<2)|0); + $787 = HEAP32[$786>>2]|0; + $788 = ($787|0)==(0); + if ($788) { + $i$291$lcssa = $i$291; + break; + } + $790 = (($nl_arg) + ($i$291<<3)|0); + _pop_arg_180($790,$787,$ap); + $791 = (($i$291) + 1)|0; + $792 = ($791|0)<(10); + if ($792) { + $i$291 = $791; + } else { + $$0 = 1; + break L345; + } + } + $789 = ($i$291$lcssa|0)<(10); + if ($789) { + $i$389 = $i$291$lcssa; + while(1) { + $795 = (($nl_type) + ($i$389<<2)|0); + $796 = HEAP32[$795>>2]|0; + $797 = ($796|0)==(0); + $793 = (($i$389) + 1)|0; + if (!($797)) { + $$0 = -1; + break L345; + } + $794 = ($793|0)<(10); + if ($794) { + $i$389 = $793; + } else { + $$0 = 1; + break; + } + } + } else { + $$0 = 1; + } + } + } else { + $$0 = $cnt$1$lcssa; + } + } + } while(0); + STACKTOP = sp;return ($$0|0); +} +function ___fwritex($s,$l,$f) { + $s = $s|0; + $l = $l|0; + $f = $f|0; + var $$0 = 0, $$01 = 0, $$02 = 0, $$pre = 0, $$pre6 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; + var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i$0 = 0, $i$0$lcssa12 = 0; + var $i$1 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ((($f)) + 16|0); + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)==(0|0); + if ($2) { + $4 = (___towrite($f)|0); + $5 = ($4|0)==(0); + if ($5) { + $$pre = HEAP32[$0>>2]|0; + $9 = $$pre; + label = 5; + } else { + $$0 = 0; + } + } else { + $3 = $1; + $9 = $3; + label = 5; + } + L5: do { + if ((label|0) == 5) { + $6 = ((($f)) + 20|0); + $7 = HEAP32[$6>>2]|0; + $8 = (($9) - ($7))|0; + $10 = ($8>>>0)<($l>>>0); + $11 = $7; + if ($10) { + $12 = ((($f)) + 36|0); + $13 = HEAP32[$12>>2]|0; + $14 = (FUNCTION_TABLE_iiii[$13 & 127]($f,$s,$l)|0); + $$0 = $14; + break; + } + $15 = ((($f)) + 75|0); + $16 = HEAP8[$15>>0]|0; + $17 = ($16<<24>>24)>(-1); + L10: do { + if ($17) { + $i$0 = $l; + while(1) { + $18 = ($i$0|0)==(0); + if ($18) { + $$01 = $l;$$02 = $s;$29 = $11;$i$1 = 0; + break L10; + } + $19 = (($i$0) + -1)|0; + $20 = (($s) + ($19)|0); + $21 = HEAP8[$20>>0]|0; + $22 = ($21<<24>>24)==(10); + if ($22) { + $i$0$lcssa12 = $i$0; + break; + } else { + $i$0 = $19; + } + } + $23 = ((($f)) + 36|0); + $24 = HEAP32[$23>>2]|0; + $25 = (FUNCTION_TABLE_iiii[$24 & 127]($f,$s,$i$0$lcssa12)|0); + $26 = ($25>>>0)<($i$0$lcssa12>>>0); + if ($26) { + $$0 = $i$0$lcssa12; + break L5; + } + $27 = (($s) + ($i$0$lcssa12)|0); + $28 = (($l) - ($i$0$lcssa12))|0; + $$pre6 = HEAP32[$6>>2]|0; + $$01 = $28;$$02 = $27;$29 = $$pre6;$i$1 = $i$0$lcssa12; + } else { + $$01 = $l;$$02 = $s;$29 = $11;$i$1 = 0; + } + } while(0); + _memcpy(($29|0),($$02|0),($$01|0))|0; + $30 = HEAP32[$6>>2]|0; + $31 = (($30) + ($$01)|0); + HEAP32[$6>>2] = $31; + $32 = (($i$1) + ($$01))|0; + $$0 = $32; + } + } while(0); + return ($$0|0); +} +function ___towrite($f) { + $f = $f|0; + var $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ((($f)) + 74|0); + $1 = HEAP8[$0>>0]|0; + $2 = $1 << 24 >> 24; + $3 = (($2) + 255)|0; + $4 = $3 | $2; + $5 = $4&255; + HEAP8[$0>>0] = $5; + $6 = HEAP32[$f>>2]|0; + $7 = $6 & 8; + $8 = ($7|0)==(0); + if ($8) { + $10 = ((($f)) + 8|0); + HEAP32[$10>>2] = 0; + $11 = ((($f)) + 4|0); + HEAP32[$11>>2] = 0; + $12 = ((($f)) + 44|0); + $13 = HEAP32[$12>>2]|0; + $14 = ((($f)) + 28|0); + HEAP32[$14>>2] = $13; + $15 = ((($f)) + 20|0); + HEAP32[$15>>2] = $13; + $16 = $13; + $17 = ((($f)) + 48|0); + $18 = HEAP32[$17>>2]|0; + $19 = (($16) + ($18)|0); + $20 = ((($f)) + 16|0); + HEAP32[$20>>2] = $19; + $$0 = 0; + } else { + $9 = $6 | 32; + HEAP32[$f>>2] = $9; + $$0 = -1; + } + return ($$0|0); +} +function _pop_arg_180($arg,$type,$ap) { + $arg = $arg|0; + $type = $type|0; + $ap = $ap|0; + var $$mask = 0, $$mask1 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0.0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0.0; + var $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0; + var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; + var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; + var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; + var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $arglist_current = 0, $arglist_current11 = 0, $arglist_current14 = 0, $arglist_current17 = 0; + var $arglist_current2 = 0, $arglist_current20 = 0, $arglist_current23 = 0, $arglist_current26 = 0, $arglist_current5 = 0, $arglist_current8 = 0, $arglist_next = 0, $arglist_next12 = 0, $arglist_next15 = 0, $arglist_next18 = 0, $arglist_next21 = 0, $arglist_next24 = 0, $arglist_next27 = 0, $arglist_next3 = 0, $arglist_next6 = 0, $arglist_next9 = 0, $expanded = 0, $expanded28 = 0, $expanded30 = 0, $expanded31 = 0; + var $expanded32 = 0, $expanded34 = 0, $expanded35 = 0, $expanded37 = 0, $expanded38 = 0, $expanded39 = 0, $expanded41 = 0, $expanded42 = 0, $expanded44 = 0, $expanded45 = 0, $expanded46 = 0, $expanded48 = 0, $expanded49 = 0, $expanded51 = 0, $expanded52 = 0, $expanded53 = 0, $expanded55 = 0, $expanded56 = 0, $expanded58 = 0, $expanded59 = 0; + var $expanded60 = 0, $expanded62 = 0, $expanded63 = 0, $expanded65 = 0, $expanded66 = 0, $expanded67 = 0, $expanded69 = 0, $expanded70 = 0, $expanded72 = 0, $expanded73 = 0, $expanded74 = 0, $expanded76 = 0, $expanded77 = 0, $expanded79 = 0, $expanded80 = 0, $expanded81 = 0, $expanded83 = 0, $expanded84 = 0, $expanded86 = 0, $expanded87 = 0; + var $expanded88 = 0, $expanded90 = 0, $expanded91 = 0, $expanded93 = 0, $expanded94 = 0, $expanded95 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($type>>>0)>(20); + L1: do { + if (!($0)) { + do { + switch ($type|0) { + case 9: { + $arglist_current = HEAP32[$ap>>2]|0; + $1 = $arglist_current; + $2 = ((0) + 4|0); + $expanded28 = $2; + $expanded = (($expanded28) - 1)|0; + $3 = (($1) + ($expanded))|0; + $4 = ((0) + 4|0); + $expanded32 = $4; + $expanded31 = (($expanded32) - 1)|0; + $expanded30 = $expanded31 ^ -1; + $5 = $3 & $expanded30; + $6 = $5; + $7 = HEAP32[$6>>2]|0; + $arglist_next = ((($6)) + 4|0); + HEAP32[$ap>>2] = $arglist_next; + HEAP32[$arg>>2] = $7; + break L1; + break; + } + case 10: { + $arglist_current2 = HEAP32[$ap>>2]|0; + $8 = $arglist_current2; + $9 = ((0) + 4|0); + $expanded35 = $9; + $expanded34 = (($expanded35) - 1)|0; + $10 = (($8) + ($expanded34))|0; + $11 = ((0) + 4|0); + $expanded39 = $11; + $expanded38 = (($expanded39) - 1)|0; + $expanded37 = $expanded38 ^ -1; + $12 = $10 & $expanded37; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $arglist_next3 = ((($13)) + 4|0); + HEAP32[$ap>>2] = $arglist_next3; + $15 = ($14|0)<(0); + $16 = $15 << 31 >> 31; + $17 = $arg; + $18 = $17; + HEAP32[$18>>2] = $14; + $19 = (($17) + 4)|0; + $20 = $19; + HEAP32[$20>>2] = $16; + break L1; + break; + } + case 11: { + $arglist_current5 = HEAP32[$ap>>2]|0; + $21 = $arglist_current5; + $22 = ((0) + 4|0); + $expanded42 = $22; + $expanded41 = (($expanded42) - 1)|0; + $23 = (($21) + ($expanded41))|0; + $24 = ((0) + 4|0); + $expanded46 = $24; + $expanded45 = (($expanded46) - 1)|0; + $expanded44 = $expanded45 ^ -1; + $25 = $23 & $expanded44; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $arglist_next6 = ((($26)) + 4|0); + HEAP32[$ap>>2] = $arglist_next6; + $28 = $arg; + $29 = $28; + HEAP32[$29>>2] = $27; + $30 = (($28) + 4)|0; + $31 = $30; + HEAP32[$31>>2] = 0; + break L1; + break; + } + case 12: { + $arglist_current8 = HEAP32[$ap>>2]|0; + $32 = $arglist_current8; + $33 = ((0) + 8|0); + $expanded49 = $33; + $expanded48 = (($expanded49) - 1)|0; + $34 = (($32) + ($expanded48))|0; + $35 = ((0) + 8|0); + $expanded53 = $35; + $expanded52 = (($expanded53) - 1)|0; + $expanded51 = $expanded52 ^ -1; + $36 = $34 & $expanded51; + $37 = $36; + $38 = $37; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = (($38) + 4)|0; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $arglist_next9 = ((($37)) + 8|0); + HEAP32[$ap>>2] = $arglist_next9; + $44 = $arg; + $45 = $44; + HEAP32[$45>>2] = $40; + $46 = (($44) + 4)|0; + $47 = $46; + HEAP32[$47>>2] = $43; + break L1; + break; + } + case 13: { + $arglist_current11 = HEAP32[$ap>>2]|0; + $48 = $arglist_current11; + $49 = ((0) + 4|0); + $expanded56 = $49; + $expanded55 = (($expanded56) - 1)|0; + $50 = (($48) + ($expanded55))|0; + $51 = ((0) + 4|0); + $expanded60 = $51; + $expanded59 = (($expanded60) - 1)|0; + $expanded58 = $expanded59 ^ -1; + $52 = $50 & $expanded58; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + $arglist_next12 = ((($53)) + 4|0); + HEAP32[$ap>>2] = $arglist_next12; + $55 = $54&65535; + $56 = $55 << 16 >> 16; + $57 = ($56|0)<(0); + $58 = $57 << 31 >> 31; + $59 = $arg; + $60 = $59; + HEAP32[$60>>2] = $56; + $61 = (($59) + 4)|0; + $62 = $61; + HEAP32[$62>>2] = $58; + break L1; + break; + } + case 14: { + $arglist_current14 = HEAP32[$ap>>2]|0; + $63 = $arglist_current14; + $64 = ((0) + 4|0); + $expanded63 = $64; + $expanded62 = (($expanded63) - 1)|0; + $65 = (($63) + ($expanded62))|0; + $66 = ((0) + 4|0); + $expanded67 = $66; + $expanded66 = (($expanded67) - 1)|0; + $expanded65 = $expanded66 ^ -1; + $67 = $65 & $expanded65; + $68 = $67; + $69 = HEAP32[$68>>2]|0; + $arglist_next15 = ((($68)) + 4|0); + HEAP32[$ap>>2] = $arglist_next15; + $$mask1 = $69 & 65535; + $70 = $arg; + $71 = $70; + HEAP32[$71>>2] = $$mask1; + $72 = (($70) + 4)|0; + $73 = $72; + HEAP32[$73>>2] = 0; + break L1; + break; + } + case 15: { + $arglist_current17 = HEAP32[$ap>>2]|0; + $74 = $arglist_current17; + $75 = ((0) + 4|0); + $expanded70 = $75; + $expanded69 = (($expanded70) - 1)|0; + $76 = (($74) + ($expanded69))|0; + $77 = ((0) + 4|0); + $expanded74 = $77; + $expanded73 = (($expanded74) - 1)|0; + $expanded72 = $expanded73 ^ -1; + $78 = $76 & $expanded72; + $79 = $78; + $80 = HEAP32[$79>>2]|0; + $arglist_next18 = ((($79)) + 4|0); + HEAP32[$ap>>2] = $arglist_next18; + $81 = $80&255; + $82 = $81 << 24 >> 24; + $83 = ($82|0)<(0); + $84 = $83 << 31 >> 31; + $85 = $arg; + $86 = $85; + HEAP32[$86>>2] = $82; + $87 = (($85) + 4)|0; + $88 = $87; + HEAP32[$88>>2] = $84; + break L1; + break; + } + case 16: { + $arglist_current20 = HEAP32[$ap>>2]|0; + $89 = $arglist_current20; + $90 = ((0) + 4|0); + $expanded77 = $90; + $expanded76 = (($expanded77) - 1)|0; + $91 = (($89) + ($expanded76))|0; + $92 = ((0) + 4|0); + $expanded81 = $92; + $expanded80 = (($expanded81) - 1)|0; + $expanded79 = $expanded80 ^ -1; + $93 = $91 & $expanded79; + $94 = $93; + $95 = HEAP32[$94>>2]|0; + $arglist_next21 = ((($94)) + 4|0); + HEAP32[$ap>>2] = $arglist_next21; + $$mask = $95 & 255; + $96 = $arg; + $97 = $96; + HEAP32[$97>>2] = $$mask; + $98 = (($96) + 4)|0; + $99 = $98; + HEAP32[$99>>2] = 0; + break L1; + break; + } + case 17: { + $arglist_current23 = HEAP32[$ap>>2]|0; + $100 = $arglist_current23; + $101 = ((0) + 8|0); + $expanded84 = $101; + $expanded83 = (($expanded84) - 1)|0; + $102 = (($100) + ($expanded83))|0; + $103 = ((0) + 8|0); + $expanded88 = $103; + $expanded87 = (($expanded88) - 1)|0; + $expanded86 = $expanded87 ^ -1; + $104 = $102 & $expanded86; + $105 = $104; + $106 = +HEAPF64[$105>>3]; + $arglist_next24 = ((($105)) + 8|0); + HEAP32[$ap>>2] = $arglist_next24; + HEAPF64[$arg>>3] = $106; + break L1; + break; + } + case 18: { + $arglist_current26 = HEAP32[$ap>>2]|0; + $107 = $arglist_current26; + $108 = ((0) + 8|0); + $expanded91 = $108; + $expanded90 = (($expanded91) - 1)|0; + $109 = (($107) + ($expanded90))|0; + $110 = ((0) + 8|0); + $expanded95 = $110; + $expanded94 = (($expanded95) - 1)|0; + $expanded93 = $expanded94 ^ -1; + $111 = $109 & $expanded93; + $112 = $111; + $113 = +HEAPF64[$112>>3]; + $arglist_next27 = ((($112)) + 8|0); + HEAP32[$ap>>2] = $arglist_next27; + HEAPF64[$arg>>3] = $113; + break L1; + break; + } + default: { + break L1; + } + } + } while(0); + } + } while(0); + return; +} +function _fmt_u($0,$1,$s) { + $0 = $0|0; + $1 = $1|0; + $s = $s|0; + var $$0$lcssa = 0, $$01$lcssa$off0 = 0, $$05 = 0, $$1$lcssa = 0, $$12 = 0, $$lcssa19 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0; + var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $y$03 = 0, label = 0, sp = 0; + sp = STACKTOP; + $2 = ($1>>>0)>(0); + $3 = ($0>>>0)>(4294967295); + $4 = ($1|0)==(0); + $5 = $4 & $3; + $6 = $2 | $5; + if ($6) { + $$05 = $s;$7 = $0;$8 = $1; + while(1) { + $9 = (___uremdi3(($7|0),($8|0),10,0)|0); + $10 = tempRet0; + $11 = $9 | 48; + $12 = $11&255; + $13 = ((($$05)) + -1|0); + HEAP8[$13>>0] = $12; + $14 = (___udivdi3(($7|0),($8|0),10,0)|0); + $15 = tempRet0; + $16 = ($8>>>0)>(9); + $17 = ($7>>>0)>(4294967295); + $18 = ($8|0)==(9); + $19 = $18 & $17; + $20 = $16 | $19; + if ($20) { + $$05 = $13;$7 = $14;$8 = $15; + } else { + $$lcssa19 = $13;$28 = $14;$29 = $15; + break; + } + } + $$0$lcssa = $$lcssa19;$$01$lcssa$off0 = $28; + } else { + $$0$lcssa = $s;$$01$lcssa$off0 = $0; + } + $21 = ($$01$lcssa$off0|0)==(0); + if ($21) { + $$1$lcssa = $$0$lcssa; + } else { + $$12 = $$0$lcssa;$y$03 = $$01$lcssa$off0; + while(1) { + $22 = (($y$03>>>0) % 10)&-1; + $23 = $22 | 48; + $24 = $23&255; + $25 = ((($$12)) + -1|0); + HEAP8[$25>>0] = $24; + $26 = (($y$03>>>0) / 10)&-1; + $27 = ($y$03>>>0)<(10); + if ($27) { + $$1$lcssa = $25; + break; + } else { + $$12 = $25;$y$03 = $26; + } + } + } + return ($$1$lcssa|0); +} +function _memchr($src,$c,$n) { + $src = $src|0; + $c = $c|0; + $n = $n|0; + var $$0$lcssa = 0, $$0$lcssa30 = 0, $$019 = 0, $$1$lcssa = 0, $$110 = 0, $$110$lcssa = 0, $$24 = 0, $$3 = 0, $$lcssa = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; + var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $or$cond18 = 0, $s$0$lcssa = 0, $s$0$lcssa29 = 0, $s$020 = 0, $s$15 = 0, $s$2 = 0, $w$0$lcssa = 0, $w$011 = 0, $w$011$lcssa = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = $c & 255; + $1 = $src; + $2 = $1 & 3; + $3 = ($2|0)!=(0); + $4 = ($n|0)!=(0); + $or$cond18 = $4 & $3; + L1: do { + if ($or$cond18) { + $5 = $c&255; + $$019 = $n;$s$020 = $src; + while(1) { + $6 = HEAP8[$s$020>>0]|0; + $7 = ($6<<24>>24)==($5<<24>>24); + if ($7) { + $$0$lcssa30 = $$019;$s$0$lcssa29 = $s$020; + label = 6; + break L1; + } + $8 = ((($s$020)) + 1|0); + $9 = (($$019) + -1)|0; + $10 = $8; + $11 = $10 & 3; + $12 = ($11|0)!=(0); + $13 = ($9|0)!=(0); + $or$cond = $13 & $12; + if ($or$cond) { + $$019 = $9;$s$020 = $8; + } else { + $$0$lcssa = $9;$$lcssa = $13;$s$0$lcssa = $8; + label = 5; + break; + } + } + } else { + $$0$lcssa = $n;$$lcssa = $4;$s$0$lcssa = $src; + label = 5; + } + } while(0); + if ((label|0) == 5) { + if ($$lcssa) { + $$0$lcssa30 = $$0$lcssa;$s$0$lcssa29 = $s$0$lcssa; + label = 6; + } else { + $$3 = 0;$s$2 = $s$0$lcssa; + } + } + L8: do { + if ((label|0) == 6) { + $14 = HEAP8[$s$0$lcssa29>>0]|0; + $15 = $c&255; + $16 = ($14<<24>>24)==($15<<24>>24); + if ($16) { + $$3 = $$0$lcssa30;$s$2 = $s$0$lcssa29; + } else { + $17 = Math_imul($0, 16843009)|0; + $18 = ($$0$lcssa30>>>0)>(3); + L11: do { + if ($18) { + $$110 = $$0$lcssa30;$w$011 = $s$0$lcssa29; + while(1) { + $19 = HEAP32[$w$011>>2]|0; + $20 = $19 ^ $17; + $21 = (($20) + -16843009)|0; + $22 = $20 & -2139062144; + $23 = $22 ^ -2139062144; + $24 = $23 & $21; + $25 = ($24|0)==(0); + if (!($25)) { + $$110$lcssa = $$110;$w$011$lcssa = $w$011; + break; + } + $26 = ((($w$011)) + 4|0); + $27 = (($$110) + -4)|0; + $28 = ($27>>>0)>(3); + if ($28) { + $$110 = $27;$w$011 = $26; + } else { + $$1$lcssa = $27;$w$0$lcssa = $26; + label = 11; + break L11; + } + } + $$24 = $$110$lcssa;$s$15 = $w$011$lcssa; + } else { + $$1$lcssa = $$0$lcssa30;$w$0$lcssa = $s$0$lcssa29; + label = 11; + } + } while(0); + if ((label|0) == 11) { + $29 = ($$1$lcssa|0)==(0); + if ($29) { + $$3 = 0;$s$2 = $w$0$lcssa; + break; + } else { + $$24 = $$1$lcssa;$s$15 = $w$0$lcssa; + } + } + while(1) { + $30 = HEAP8[$s$15>>0]|0; + $31 = ($30<<24>>24)==($15<<24>>24); + if ($31) { + $$3 = $$24;$s$2 = $s$15; + break L8; + } + $32 = ((($s$15)) + 1|0); + $33 = (($$24) + -1)|0; + $34 = ($33|0)==(0); + if ($34) { + $$3 = 0;$s$2 = $32; + break; + } else { + $$24 = $33;$s$15 = $32; + } + } + } + } + } while(0); + $35 = ($$3|0)!=(0); + $36 = $35 ? $s$2 : 0; + return ($36|0); +} +function _pad($f,$c,$w,$l,$fl) { + $f = $f|0; + $c = $c|0; + $w = $w|0; + $l = $l|0; + $fl = $fl|0; + var $$0$lcssa6 = 0, $$02 = 0, $$pre = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $or$cond = 0, $pad = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 256|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $pad = sp; + $0 = $fl & 73728; + $1 = ($0|0)==(0); + $2 = ($w|0)>($l|0); + $or$cond = $2 & $1; + do { + if ($or$cond) { + $3 = (($w) - ($l))|0; + $4 = ($3>>>0)>(256); + $5 = $4 ? 256 : $3; + _memset(($pad|0),($c|0),($5|0))|0; + $6 = ($3>>>0)>(255); + $7 = HEAP32[$f>>2]|0; + $8 = $7 & 32; + $9 = ($8|0)==(0); + if ($6) { + $10 = (($w) - ($l))|0; + $$02 = $3;$17 = $7;$18 = $9; + while(1) { + if ($18) { + (___fwritex($pad,256,$f)|0); + $$pre = HEAP32[$f>>2]|0; + $14 = $$pre; + } else { + $14 = $17; + } + $11 = (($$02) + -256)|0; + $12 = ($11>>>0)>(255); + $13 = $14 & 32; + $15 = ($13|0)==(0); + if ($12) { + $$02 = $11;$17 = $14;$18 = $15; + } else { + break; + } + } + $16 = $10 & 255; + if ($15) { + $$0$lcssa6 = $16; + } else { + break; + } + } else { + if ($9) { + $$0$lcssa6 = $3; + } else { + break; + } + } + (___fwritex($pad,$$0$lcssa6,$f)|0); + } + } while(0); + STACKTOP = sp;return; +} +function _wctomb($s,$wc) { + $s = $s|0; + $wc = $wc|0; + var $$0 = 0, $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($s|0)==(0|0); + if ($0) { + $$0 = 0; + } else { + $1 = (_wcrtomb($s,$wc,0)|0); + $$0 = $1; + } + return ($$0|0); +} +function _wcrtomb($s,$wc,$st) { + $s = $s|0; + $wc = $wc|0; + $st = $st|0; + var $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($s|0)==(0|0); + do { + if ($0) { + $$0 = 1; + } else { + $1 = ($wc>>>0)<(128); + if ($1) { + $2 = $wc&255; + HEAP8[$s>>0] = $2; + $$0 = 1; + break; + } + $3 = ($wc>>>0)<(2048); + if ($3) { + $4 = $wc >>> 6; + $5 = $4 | 192; + $6 = $5&255; + $7 = ((($s)) + 1|0); + HEAP8[$s>>0] = $6; + $8 = $wc & 63; + $9 = $8 | 128; + $10 = $9&255; + HEAP8[$7>>0] = $10; + $$0 = 2; + break; + } + $11 = ($wc>>>0)<(55296); + $12 = $wc & -8192; + $13 = ($12|0)==(57344); + $or$cond = $11 | $13; + if ($or$cond) { + $14 = $wc >>> 12; + $15 = $14 | 224; + $16 = $15&255; + $17 = ((($s)) + 1|0); + HEAP8[$s>>0] = $16; + $18 = $wc >>> 6; + $19 = $18 & 63; + $20 = $19 | 128; + $21 = $20&255; + $22 = ((($s)) + 2|0); + HEAP8[$17>>0] = $21; + $23 = $wc & 63; + $24 = $23 | 128; + $25 = $24&255; + HEAP8[$22>>0] = $25; + $$0 = 3; + break; + } + $26 = (($wc) + -65536)|0; + $27 = ($26>>>0)<(1048576); + if ($27) { + $28 = $wc >>> 18; + $29 = $28 | 240; + $30 = $29&255; + $31 = ((($s)) + 1|0); + HEAP8[$s>>0] = $30; + $32 = $wc >>> 12; + $33 = $32 & 63; + $34 = $33 | 128; + $35 = $34&255; + $36 = ((($s)) + 2|0); + HEAP8[$31>>0] = $35; + $37 = $wc >>> 6; + $38 = $37 & 63; + $39 = $38 | 128; + $40 = $39&255; + $41 = ((($s)) + 3|0); + HEAP8[$36>>0] = $40; + $42 = $wc & 63; + $43 = $42 | 128; + $44 = $43&255; + HEAP8[$41>>0] = $44; + $$0 = 4; + break; + } else { + $45 = (___errno_location()|0); + HEAP32[$45>>2] = 84; + $$0 = -1; + break; + } + } + } while(0); + return ($$0|0); +} +function _frexpl($x,$e) { + $x = +$x; + $e = $e|0; + var $0 = 0.0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (+_frexp($x,$e)); + return (+$0); +} +function _frexp($x,$e) { + $x = +$x; + $e = $e|0; + var $$0 = 0.0, $$01 = 0.0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0.0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0.0, $7 = 0.0, $8 = 0, $9 = 0, $storemerge = 0, label = 0, sp = 0; + sp = STACKTOP; + HEAPF64[tempDoublePtr>>3] = $x;$0 = HEAP32[tempDoublePtr>>2]|0; + $1 = HEAP32[tempDoublePtr+4>>2]|0; + $2 = (_bitshift64Lshr(($0|0),($1|0),52)|0); + $3 = tempRet0; + $4 = $2 & 2047; + switch ($4|0) { + case 0: { + $5 = $x != 0.0; + if ($5) { + $6 = $x * 1.8446744073709552E+19; + $7 = (+_frexp($6,$e)); + $8 = HEAP32[$e>>2]|0; + $9 = (($8) + -64)|0; + $$01 = $7;$storemerge = $9; + } else { + $$01 = $x;$storemerge = 0; + } + HEAP32[$e>>2] = $storemerge; + $$0 = $$01; + break; + } + case 2047: { + $$0 = $x; + break; + } + default: { + $10 = (($4) + -1022)|0; + HEAP32[$e>>2] = $10; + $11 = $1 & -2146435073; + $12 = $11 | 1071644672; + HEAP32[tempDoublePtr>>2] = $0;HEAP32[tempDoublePtr+4>>2] = $12;$13 = +HEAPF64[tempDoublePtr>>3]; + $$0 = $13; + } + } + return (+$$0); +} +function ___lockfile($f) { + $f = $f|0; + var label = 0, sp = 0; + sp = STACKTOP; + return 0; +} +function _toupper($c) { + $c = $c|0; + var $$0 = 0, $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (_islower($c)|0); + $1 = ($0|0)==(0); + $2 = $c & 95; + $$0 = $1 ? $c : $2; + return ($$0|0); +} +function _strlen($s) { + $s = $s|0; + var $$0 = 0, $$01$lcssa = 0, $$014 = 0, $$1$lcssa = 0, $$lcssa20 = 0, $$pn = 0, $$pn15 = 0, $$pre = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0; + var $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $w$0 = 0, $w$0$lcssa = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = $s; + $1 = $0 & 3; + $2 = ($1|0)==(0); + L1: do { + if ($2) { + $$01$lcssa = $s; + label = 4; + } else { + $$014 = $s;$21 = $0; + while(1) { + $3 = HEAP8[$$014>>0]|0; + $4 = ($3<<24>>24)==(0); + if ($4) { + $$pn = $21; + break L1; + } + $5 = ((($$014)) + 1|0); + $6 = $5; + $7 = $6 & 3; + $8 = ($7|0)==(0); + if ($8) { + $$01$lcssa = $5; + label = 4; + break; + } else { + $$014 = $5;$21 = $6; + } + } + } + } while(0); + if ((label|0) == 4) { + $w$0 = $$01$lcssa; + while(1) { + $9 = HEAP32[$w$0>>2]|0; + $10 = (($9) + -16843009)|0; + $11 = $9 & -2139062144; + $12 = $11 ^ -2139062144; + $13 = $12 & $10; + $14 = ($13|0)==(0); + $15 = ((($w$0)) + 4|0); + if ($14) { + $w$0 = $15; + } else { + $$lcssa20 = $9;$w$0$lcssa = $w$0; + break; + } + } + $16 = $$lcssa20&255; + $17 = ($16<<24>>24)==(0); + if ($17) { + $$1$lcssa = $w$0$lcssa; + } else { + $$pn15 = $w$0$lcssa; + while(1) { + $18 = ((($$pn15)) + 1|0); + $$pre = HEAP8[$18>>0]|0; + $19 = ($$pre<<24>>24)==(0); + if ($19) { + $$1$lcssa = $18; + break; + } else { + $$pn15 = $18; + } + } + } + $20 = $$1$lcssa; + $$pn = $20; + } + $$0 = (($$pn) - ($0))|0; + return ($$0|0); +} +function _iswlower($wc) { + $wc = $wc|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (_towupper($wc)|0); + $1 = ($0|0)!=($wc|0); + $2 = ($wc|0)==(223); + $3 = $2 | $1; + $4 = $3&1; + return ($4|0); +} +function _iswprint($wc) { + $wc = $wc|0; + var $$ = 0, $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $or$cond3 = 0, $or$cond5 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + $0 = ($wc>>>0)<(255); + if ($0) { + $1 = (($wc) + 1)|0; + $2 = $1 & 127; + $3 = ($2>>>0)>(32); + $4 = $3&1; + $$0 = $4; + } else { + $5 = ($wc>>>0)<(8232); + $6 = (($wc) + -8234)|0; + $7 = ($6>>>0)<(47062); + $or$cond = $5 | $7; + $8 = (($wc) + -57344)|0; + $9 = ($8>>>0)<(8185); + $or$cond3 = $9 | $or$cond; + if ($or$cond3) { + $$0 = 1; + } else { + $10 = (($wc) + -65532)|0; + $11 = ($10>>>0)>(1048579); + $12 = $wc & 65534; + $13 = ($12|0)==(65534); + $or$cond5 = $11 | $13; + $14 = $or$cond5&1; + $$ = $14 ^ 1; + return ($$|0); + } + } + return ($$0|0); +} +function _iswctype($wc,$type) { + $wc = $wc|0; + $type = $type|0; + var $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + do { + switch ($type|0) { + case 1: { + $0 = (_iswalnum($wc)|0); + $$0 = $0; + break; + } + case 2: { + $1 = (_iswalpha($wc)|0); + $$0 = $1; + break; + } + case 3: { + $2 = (_iswblank($wc)|0); + $$0 = $2; + break; + } + case 4: { + $3 = (_iswcntrl($wc)|0); + $$0 = $3; + break; + } + case 5: { + $4 = (_iswdigit($wc)|0); + $$0 = $4; + break; + } + case 6: { + $5 = (_iswgraph($wc)|0); + $$0 = $5; + break; + } + case 7: { + $6 = (_iswlower($wc)|0); + $$0 = $6; + break; + } + case 8: { + $7 = (_iswprint($wc)|0); + $$0 = $7; + break; + } + case 9: { + $8 = (_iswpunct($wc)|0); + $$0 = $8; + break; + } + case 10: { + $9 = (_iswspace($wc)|0); + $$0 = $9; + break; + } + case 11: { + $10 = (_iswupper($wc)|0); + $$0 = $10; + break; + } + case 12: { + $11 = (_iswxdigit($wc)|0); + $$0 = $11; + break; + } + default: { + $$0 = 0; + } + } + } while(0); + return ($$0|0); +} +function _iswalnum($wc) { + $wc = $wc|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (_iswdigit($wc)|0); + $1 = ($0|0)==(0); + if ($1) { + $2 = (_iswalpha($wc)|0); + $3 = ($2|0)!=(0); + $5 = $3; + } else { + $5 = 1; + } + $4 = $5&1; + return ($4|0); +} +function _iswdigit($wc) { + $wc = $wc|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (($wc) + -48)|0; + $1 = ($0>>>0)<(10); + $2 = $1&1; + return ($2|0); +} +function _iswcntrl($wc) { + $wc = $wc|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $or$cond = 0, $or$cond3 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($wc>>>0)<(32); + $1 = (($wc) + -127)|0; + $2 = ($1>>>0)<(33); + $or$cond = $0 | $2; + $3 = $wc & -2; + $4 = ($3|0)==(8232); + $or$cond3 = $4 | $or$cond; + if ($or$cond3) { + $8 = 1; + } else { + $5 = (($wc) + -65529)|0; + $6 = ($5>>>0)<(3); + $8 = $6; + } + $7 = $8&1; + return ($7|0); +} +function _iswgraph($wc) { + $wc = $wc|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (_iswspace($wc)|0); + $1 = ($0|0)==(0); + if ($1) { + $2 = (_iswprint($wc)|0); + $3 = ($2|0)!=(0); + $5 = $3; + } else { + $5 = 0; + } + $4 = $5&1; + return ($4|0); +} +function _iswpunct($wc) { + $wc = $wc|0; + var $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($wc>>>0)<(131072); + if ($0) { + $1 = $wc >>> 8; + $2 = (67084 + ($1)|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = $4 << 5; + $6 = $wc >>> 3; + $7 = $6 & 31; + $8 = $5 | $7; + $9 = (67084 + ($8)|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = $wc & 7; + $13 = $11 >>> $12; + $14 = $13 & 1; + $$0 = $14; + } else { + $$0 = 0; + } + return ($$0|0); +} +function _iswupper($wc) { + $wc = $wc|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (_towlower($wc)|0); + $1 = ($0|0)!=($wc|0); + $2 = $1&1; + return ($2|0); +} +function _iswxdigit($wc) { + $wc = $wc|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (($wc) + -48)|0; + $1 = ($0>>>0)<(10); + if ($1) { + $6 = 1; + } else { + $2 = $wc | 32; + $3 = (($2) + -97)|0; + $4 = ($3>>>0)<(6); + $6 = $4; + } + $5 = $6&1; + return ($5|0); +} +function _strcasecmp($_l,$_r) { + $_l = $_l|0; + $_r = $_r|0; + var $$pre$pre = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $l$03 = 0, $l$03$lcssa20 = 0, $r$0$lcssa = 0, $r$04 = 0, $r$04$lcssa19 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP8[$_l>>0]|0; + $1 = ($0<<24>>24)==(0); + L1: do { + if ($1) { + $19 = 0;$r$0$lcssa = $_r; + } else { + $2 = $0&255; + $5 = $0;$7 = $2;$l$03 = $_l;$r$04 = $_r; + while(1) { + $3 = HEAP8[$r$04>>0]|0; + $4 = ($3<<24>>24)==(0); + if ($4) { + $19 = $5;$r$0$lcssa = $r$04; + break L1; + } + $6 = ($5<<24>>24)==($3<<24>>24); + if (!($6)) { + $8 = (_tolower($7)|0); + $9 = HEAP8[$r$04>>0]|0; + $10 = $9&255; + $11 = (_tolower($10)|0); + $12 = ($8|0)==($11|0); + if (!($12)) { + $l$03$lcssa20 = $l$03;$r$04$lcssa19 = $r$04; + break; + } + } + $13 = ((($l$03)) + 1|0); + $14 = ((($r$04)) + 1|0); + $15 = HEAP8[$13>>0]|0; + $16 = $15&255; + $17 = ($15<<24>>24)==(0); + if ($17) { + $19 = 0;$r$0$lcssa = $14; + break L1; + } else { + $5 = $15;$7 = $16;$l$03 = $13;$r$04 = $14; + } + } + $$pre$pre = HEAP8[$l$03$lcssa20>>0]|0; + $19 = $$pre$pre;$r$0$lcssa = $r$04$lcssa19; + } + } while(0); + $18 = $19&255; + $20 = (_tolower($18)|0); + $21 = HEAP8[$r$0$lcssa>>0]|0; + $22 = $21&255; + $23 = (_tolower($22)|0); + $24 = (($20) - ($23))|0; + return ($24|0); +} +function _strcpy($dest,$src) { + $dest = $dest|0; + $src = $src|0; + var label = 0, sp = 0; + sp = STACKTOP; + (___stpcpy($dest,$src)|0); + return ($dest|0); +} +function ___stpcpy($d,$s) { + $d = $d|0; + $s = $s|0; + var $$0$lcssa = 0, $$01$lcssa = 0, $$0115 = 0, $$016 = 0, $$03 = 0, $$1$ph = 0, $$12$ph = 0, $$128 = 0, $$19 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; + var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $wd$0$lcssa = 0, $wd$010 = 0, $ws$0$lcssa = 0, $ws$011 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = $s; + $1 = $d; + $2 = $0 ^ $1; + $3 = $2 & 3; + $4 = ($3|0)==(0); + L1: do { + if ($4) { + $5 = $0 & 3; + $6 = ($5|0)==(0); + if ($6) { + $$0$lcssa = $s;$$01$lcssa = $d; + } else { + $$0115 = $d;$$016 = $s; + while(1) { + $7 = HEAP8[$$016>>0]|0; + HEAP8[$$0115>>0] = $7; + $8 = ($7<<24>>24)==(0); + if ($8) { + $$03 = $$0115; + break L1; + } + $9 = ((($$016)) + 1|0); + $10 = ((($$0115)) + 1|0); + $11 = $9; + $12 = $11 & 3; + $13 = ($12|0)==(0); + if ($13) { + $$0$lcssa = $9;$$01$lcssa = $10; + break; + } else { + $$0115 = $10;$$016 = $9; + } + } + } + $14 = HEAP32[$$0$lcssa>>2]|0; + $15 = (($14) + -16843009)|0; + $16 = $14 & -2139062144; + $17 = $16 ^ -2139062144; + $18 = $17 & $15; + $19 = ($18|0)==(0); + if ($19) { + $22 = $14;$wd$010 = $$01$lcssa;$ws$011 = $$0$lcssa; + while(1) { + $20 = ((($ws$011)) + 4|0); + $21 = ((($wd$010)) + 4|0); + HEAP32[$wd$010>>2] = $22; + $23 = HEAP32[$20>>2]|0; + $24 = (($23) + -16843009)|0; + $25 = $23 & -2139062144; + $26 = $25 ^ -2139062144; + $27 = $26 & $24; + $28 = ($27|0)==(0); + if ($28) { + $22 = $23;$wd$010 = $21;$ws$011 = $20; + } else { + $wd$0$lcssa = $21;$ws$0$lcssa = $20; + break; + } + } + } else { + $wd$0$lcssa = $$01$lcssa;$ws$0$lcssa = $$0$lcssa; + } + $$1$ph = $ws$0$lcssa;$$12$ph = $wd$0$lcssa; + label = 8; + } else { + $$1$ph = $s;$$12$ph = $d; + label = 8; + } + } while(0); + if ((label|0) == 8) { + $29 = HEAP8[$$1$ph>>0]|0; + HEAP8[$$12$ph>>0] = $29; + $30 = ($29<<24>>24)==(0); + if ($30) { + $$03 = $$12$ph; + } else { + $$128 = $$12$ph;$$19 = $$1$ph; + while(1) { + $31 = ((($$19)) + 1|0); + $32 = ((($$128)) + 1|0); + $33 = HEAP8[$31>>0]|0; + HEAP8[$32>>0] = $33; + $34 = ($33<<24>>24)==(0); + if ($34) { + $$03 = $32; + break; + } else { + $$128 = $32;$$19 = $31; + } + } + } + } + return ($$03|0); +} +function _isspace($c) { + $c = $c|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($c|0)==(32); + $1 = (($c) + -9)|0; + $2 = ($1>>>0)<(5); + $3 = $0 | $2; + $4 = $3&1; + return ($4|0); +} +function _strtoul($s,$p,$base) { + $s = $s|0; + $p = $p|0; + $base = $base|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (_strtox($s,$p,$base,-1,0)|0); + $1 = tempRet0; + return ($0|0); +} +function _strtox($s,$p,$base,$0,$1) { + $s = $s|0; + $p = $p|0; + $base = $base|0; + $0 = $0|0; + $1 = $1|0; + var $$sink = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $f = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $f = sp; + HEAP32[$f>>2] = 0; + $2 = ((($f)) + 4|0); + HEAP32[$2>>2] = $s; + $3 = ((($f)) + 44|0); + HEAP32[$3>>2] = $s; + $4 = ($s|0)<(0|0); + $5 = ((($s)) + 2147483647|0); + $$sink = $4 ? (-1) : $5; + $6 = ((($f)) + 8|0); + HEAP32[$6>>2] = $$sink; + $7 = ((($f)) + 76|0); + HEAP32[$7>>2] = -1; + ___shlim($f,0); + $8 = (___intscan($f,$base,1,$0,$1)|0); + $9 = tempRet0; + $10 = ($p|0)==(0|0); + if (!($10)) { + $11 = ((($f)) + 108|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = HEAP32[$6>>2]|0; + $15 = (($13) + ($12))|0; + $16 = (($15) - ($14))|0; + $17 = (($s) + ($16)|0); + HEAP32[$p>>2] = $17; + } + tempRet0 = ($9); + STACKTOP = sp;return ($8|0); +} +function ___shlim($f,$lim) { + $f = $f|0; + $lim = $lim|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ((($f)) + 104|0); + HEAP32[$0>>2] = $lim; + $1 = ((($f)) + 8|0); + $2 = HEAP32[$1>>2]|0; + $3 = ((($f)) + 4|0); + $4 = HEAP32[$3>>2]|0; + $5 = (($2) - ($4))|0; + $6 = ((($f)) + 108|0); + HEAP32[$6>>2] = $5; + $7 = ($lim|0)!=(0); + $8 = ($5|0)>($lim|0); + $or$cond = $7 & $8; + if ($or$cond) { + $9 = $4; + $10 = (($9) + ($lim)|0); + $11 = ((($f)) + 100|0); + HEAP32[$11>>2] = $10; + } else { + $12 = ((($f)) + 100|0); + HEAP32[$12>>2] = $2; + } + return; +} +function ___intscan($f,$base,$pok,$0,$1) { + $f = $f|0; + $base = $base|0; + $pok = $pok|0; + $0 = $0|0; + $1 = $1|0; + var $$1 = 0, $$115 = 0, $$116 = 0, $$base14 = 0, $$lcssa = 0, $$lcssa108 = 0, $$lcssa109 = 0, $$lcssa110 = 0, $$lcssa111 = 0, $$lcssa112 = 0, $$lcssa113 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0; + var $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0; + var $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0; + var $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0; + var $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0; + var $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0; + var $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0; + var $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0; + var $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0; + var $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0; + var $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0; + var $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c$0 = 0, $c$1 = 0, $c$117 = 0, $c$2$be = 0, $c$2$be$lcssa = 0, $c$2$lcssa = 0, $c$3$be = 0, $c$3$lcssa = 0, $c$359 = 0, $c$4$be = 0, $c$4$be$lcssa = 0, $c$4$lcssa = 0, $c$5$be = 0, $c$6$be = 0, $c$6$be$lcssa = 0; + var $c$6$lcssa = 0, $c$7$be = 0, $c$742 = 0, $c$8 = 0, $c$9$be = 0, $neg$0 = 0, $neg$0$ = 0, $neg$1 = 0, $or$cond = 0, $or$cond12 = 0, $or$cond31 = 0, $or$cond5 = 0, $or$cond7 = 0, $x$070 = 0, $x$136 = 0, $x$254 = 0, label = 0, sp = 0; + sp = STACKTOP; + $2 = ($base>>>0)>(36); + L1: do { + if ($2) { + $5 = (___errno_location()|0); + HEAP32[$5>>2] = 22; + $286 = 0;$287 = 0; + } else { + $3 = ((($f)) + 4|0); + $4 = ((($f)) + 100|0); + while(1) { + $6 = HEAP32[$3>>2]|0; + $7 = HEAP32[$4>>2]|0; + $8 = ($6>>>0)<($7>>>0); + if ($8) { + $9 = ((($6)) + 1|0); + HEAP32[$3>>2] = $9; + $10 = HEAP8[$6>>0]|0; + $11 = $10&255; + $13 = $11; + } else { + $12 = (___shgetc($f)|0); + $13 = $12; + } + $14 = (_isspace($13)|0); + $15 = ($14|0)==(0); + if ($15) { + $$lcssa113 = $13; + break; + } + } + $16 = ($$lcssa113|0)==(45); + L11: do { + switch ($$lcssa113|0) { + case 43: case 45: { + $17 = $16 << 31 >> 31; + $18 = HEAP32[$3>>2]|0; + $19 = HEAP32[$4>>2]|0; + $20 = ($18>>>0)<($19>>>0); + if ($20) { + $21 = ((($18)) + 1|0); + HEAP32[$3>>2] = $21; + $22 = HEAP8[$18>>0]|0; + $23 = $22&255; + $c$0 = $23;$neg$0 = $17; + break L11; + } else { + $24 = (___shgetc($f)|0); + $c$0 = $24;$neg$0 = $17; + break L11; + } + break; + } + default: { + $c$0 = $$lcssa113;$neg$0 = 0; + } + } + } while(0); + $25 = ($base|0)==(0); + $26 = $base | 16; + $27 = ($26|0)==(16); + $28 = ($c$0|0)==(48); + $or$cond5 = $27 & $28; + do { + if ($or$cond5) { + $29 = HEAP32[$3>>2]|0; + $30 = HEAP32[$4>>2]|0; + $31 = ($29>>>0)<($30>>>0); + if ($31) { + $32 = ((($29)) + 1|0); + HEAP32[$3>>2] = $32; + $33 = HEAP8[$29>>0]|0; + $34 = $33&255; + $37 = $34; + } else { + $35 = (___shgetc($f)|0); + $37 = $35; + } + $36 = $37 | 32; + $38 = ($36|0)==(120); + if (!($38)) { + if ($25) { + $$116 = 8;$c$117 = $37; + label = 46; + break; + } else { + $$1 = $base;$c$1 = $37; + label = 32; + break; + } + } + $39 = HEAP32[$3>>2]|0; + $40 = HEAP32[$4>>2]|0; + $41 = ($39>>>0)<($40>>>0); + if ($41) { + $42 = ((($39)) + 1|0); + HEAP32[$3>>2] = $42; + $43 = HEAP8[$39>>0]|0; + $44 = $43&255; + $47 = $44; + } else { + $45 = (___shgetc($f)|0); + $47 = $45; + } + $46 = ((70253) + ($47)|0); + $48 = HEAP8[$46>>0]|0; + $49 = ($48&255)>(15); + if ($49) { + $50 = HEAP32[$4>>2]|0; + $51 = ($50|0)==(0|0); + if (!($51)) { + $52 = HEAP32[$3>>2]|0; + $53 = ((($52)) + -1|0); + HEAP32[$3>>2] = $53; + } + $54 = ($pok|0)==(0); + if ($54) { + ___shlim($f,0); + $286 = 0;$287 = 0; + break L1; + } + if ($51) { + $286 = 0;$287 = 0; + break L1; + } + $55 = HEAP32[$3>>2]|0; + $56 = ((($55)) + -1|0); + HEAP32[$3>>2] = $56; + $286 = 0;$287 = 0; + break L1; + } else { + $$116 = 16;$c$117 = $47; + label = 46; + } + } else { + $$base14 = $25 ? 10 : $base; + $57 = ((70253) + ($c$0)|0); + $58 = HEAP8[$57>>0]|0; + $59 = $58&255; + $60 = ($59>>>0)<($$base14>>>0); + if ($60) { + $$1 = $$base14;$c$1 = $c$0; + label = 32; + } else { + $61 = HEAP32[$4>>2]|0; + $62 = ($61|0)==(0|0); + if (!($62)) { + $63 = HEAP32[$3>>2]|0; + $64 = ((($63)) + -1|0); + HEAP32[$3>>2] = $64; + } + ___shlim($f,0); + $65 = (___errno_location()|0); + HEAP32[$65>>2] = 22; + $286 = 0;$287 = 0; + break L1; + } + } + } while(0); + if ((label|0) == 32) { + $66 = ($$1|0)==(10); + if ($66) { + $67 = (($c$1) + -48)|0; + $68 = ($67>>>0)<(10); + if ($68) { + $71 = $67;$x$070 = 0; + while(1) { + $69 = ($x$070*10)|0; + $70 = (($69) + ($71))|0; + $72 = HEAP32[$3>>2]|0; + $73 = HEAP32[$4>>2]|0; + $74 = ($72>>>0)<($73>>>0); + if ($74) { + $75 = ((($72)) + 1|0); + HEAP32[$3>>2] = $75; + $76 = HEAP8[$72>>0]|0; + $77 = $76&255; + $c$2$be = $77; + } else { + $78 = (___shgetc($f)|0); + $c$2$be = $78; + } + $79 = (($c$2$be) + -48)|0; + $80 = ($79>>>0)<(10); + $81 = ($70>>>0)<(429496729); + $82 = $80 & $81; + if ($82) { + $71 = $79;$x$070 = $70; + } else { + $$lcssa112 = $70;$c$2$be$lcssa = $c$2$be; + break; + } + } + $288 = $$lcssa112;$289 = 0;$c$2$lcssa = $c$2$be$lcssa; + } else { + $288 = 0;$289 = 0;$c$2$lcssa = $c$1; + } + $83 = (($c$2$lcssa) + -48)|0; + $84 = ($83>>>0)<(10); + if ($84) { + $85 = $288;$86 = $289;$89 = $83;$c$359 = $c$2$lcssa; + while(1) { + $87 = (___muldi3(($85|0),($86|0),10,0)|0); + $88 = tempRet0; + $90 = ($89|0)<(0); + $91 = $90 << 31 >> 31; + $92 = $89 ^ -1; + $93 = $91 ^ -1; + $94 = ($88>>>0)>($93>>>0); + $95 = ($87>>>0)>($92>>>0); + $96 = ($88|0)==($93|0); + $97 = $96 & $95; + $98 = $94 | $97; + if ($98) { + $$lcssa = $89;$290 = $85;$291 = $86;$c$3$lcssa = $c$359; + break; + } + $99 = (_i64Add(($87|0),($88|0),($89|0),($91|0))|0); + $100 = tempRet0; + $101 = HEAP32[$3>>2]|0; + $102 = HEAP32[$4>>2]|0; + $103 = ($101>>>0)<($102>>>0); + if ($103) { + $104 = ((($101)) + 1|0); + HEAP32[$3>>2] = $104; + $105 = HEAP8[$101>>0]|0; + $106 = $105&255; + $c$3$be = $106; + } else { + $107 = (___shgetc($f)|0); + $c$3$be = $107; + } + $108 = (($c$3$be) + -48)|0; + $109 = ($108>>>0)<(10); + $110 = ($100>>>0)<(429496729); + $111 = ($99>>>0)<(2576980378); + $112 = ($100|0)==(429496729); + $113 = $112 & $111; + $114 = $110 | $113; + $or$cond7 = $109 & $114; + if ($or$cond7) { + $85 = $99;$86 = $100;$89 = $108;$c$359 = $c$3$be; + } else { + $$lcssa = $108;$290 = $99;$291 = $100;$c$3$lcssa = $c$3$be; + break; + } + } + $115 = ($$lcssa>>>0)>(9); + if ($115) { + $259 = $291;$261 = $290;$neg$1 = $neg$0; + } else { + $$115 = 10;$292 = $290;$293 = $291;$c$8 = $c$3$lcssa; + label = 72; + } + } else { + $259 = $289;$261 = $288;$neg$1 = $neg$0; + } + } else { + $$116 = $$1;$c$117 = $c$1; + label = 46; + } + } + L63: do { + if ((label|0) == 46) { + $116 = (($$116) + -1)|0; + $117 = $116 & $$116; + $118 = ($117|0)==(0); + if ($118) { + $123 = ($$116*23)|0; + $124 = $123 >>> 5; + $125 = $124 & 7; + $126 = (70509 + ($125)|0); + $127 = HEAP8[$126>>0]|0; + $128 = $127 << 24 >> 24; + $129 = ((70253) + ($c$117)|0); + $130 = HEAP8[$129>>0]|0; + $131 = $130&255; + $132 = ($131>>>0)<($$116>>>0); + if ($132) { + $135 = $131;$x$136 = 0; + while(1) { + $133 = $x$136 << $128; + $134 = $135 | $133; + $136 = HEAP32[$3>>2]|0; + $137 = HEAP32[$4>>2]|0; + $138 = ($136>>>0)<($137>>>0); + if ($138) { + $139 = ((($136)) + 1|0); + HEAP32[$3>>2] = $139; + $140 = HEAP8[$136>>0]|0; + $141 = $140&255; + $c$4$be = $141; + } else { + $142 = (___shgetc($f)|0); + $c$4$be = $142; + } + $143 = ((70253) + ($c$4$be)|0); + $144 = HEAP8[$143>>0]|0; + $145 = $144&255; + $146 = ($145>>>0)<($$116>>>0); + $147 = ($134>>>0)<(134217728); + $148 = $147 & $146; + if ($148) { + $135 = $145;$x$136 = $134; + } else { + $$lcssa108 = $134;$$lcssa109 = $144;$c$4$be$lcssa = $c$4$be; + break; + } + } + $152 = $$lcssa109;$154 = 0;$156 = $$lcssa108;$c$4$lcssa = $c$4$be$lcssa; + } else { + $152 = $130;$154 = 0;$156 = 0;$c$4$lcssa = $c$117; + } + $149 = (_bitshift64Lshr(-1,-1,($128|0))|0); + $150 = tempRet0; + $151 = $152&255; + $153 = ($151>>>0)>=($$116>>>0); + $155 = ($154>>>0)>($150>>>0); + $157 = ($156>>>0)>($149>>>0); + $158 = ($154|0)==($150|0); + $159 = $158 & $157; + $160 = $155 | $159; + $or$cond31 = $153 | $160; + if ($or$cond31) { + $$115 = $$116;$292 = $156;$293 = $154;$c$8 = $c$4$lcssa; + label = 72; + break; + } else { + $161 = $156;$162 = $154;$166 = $152; + } + while(1) { + $163 = (_bitshift64Shl(($161|0),($162|0),($128|0))|0); + $164 = tempRet0; + $165 = $166&255; + $167 = $165 | $163; + $168 = HEAP32[$3>>2]|0; + $169 = HEAP32[$4>>2]|0; + $170 = ($168>>>0)<($169>>>0); + if ($170) { + $171 = ((($168)) + 1|0); + HEAP32[$3>>2] = $171; + $172 = HEAP8[$168>>0]|0; + $173 = $172&255; + $c$5$be = $173; + } else { + $174 = (___shgetc($f)|0); + $c$5$be = $174; + } + $175 = ((70253) + ($c$5$be)|0); + $176 = HEAP8[$175>>0]|0; + $177 = $176&255; + $178 = ($177>>>0)>=($$116>>>0); + $179 = ($164>>>0)>($150>>>0); + $180 = ($167>>>0)>($149>>>0); + $181 = ($164|0)==($150|0); + $182 = $181 & $180; + $183 = $179 | $182; + $or$cond = $178 | $183; + if ($or$cond) { + $$115 = $$116;$292 = $167;$293 = $164;$c$8 = $c$5$be; + label = 72; + break L63; + } else { + $161 = $167;$162 = $164;$166 = $176; + } + } + } + $119 = ((70253) + ($c$117)|0); + $120 = HEAP8[$119>>0]|0; + $121 = $120&255; + $122 = ($121>>>0)<($$116>>>0); + if ($122) { + $186 = $121;$x$254 = 0; + while(1) { + $184 = Math_imul($x$254, $$116)|0; + $185 = (($186) + ($184))|0; + $187 = HEAP32[$3>>2]|0; + $188 = HEAP32[$4>>2]|0; + $189 = ($187>>>0)<($188>>>0); + if ($189) { + $190 = ((($187)) + 1|0); + HEAP32[$3>>2] = $190; + $191 = HEAP8[$187>>0]|0; + $192 = $191&255; + $c$6$be = $192; + } else { + $193 = (___shgetc($f)|0); + $c$6$be = $193; + } + $194 = ((70253) + ($c$6$be)|0); + $195 = HEAP8[$194>>0]|0; + $196 = $195&255; + $197 = ($196>>>0)<($$116>>>0); + $198 = ($185>>>0)<(119304647); + $199 = $198 & $197; + if ($199) { + $186 = $196;$x$254 = $185; + } else { + $$lcssa110 = $185;$$lcssa111 = $195;$c$6$be$lcssa = $c$6$be; + break; + } + } + $201 = $$lcssa111;$294 = $$lcssa110;$295 = 0;$c$6$lcssa = $c$6$be$lcssa; + } else { + $201 = $120;$294 = 0;$295 = 0;$c$6$lcssa = $c$117; + } + $200 = $201&255; + $202 = ($200>>>0)<($$116>>>0); + if ($202) { + $203 = (___udivdi3(-1,-1,($$116|0),0)|0); + $204 = tempRet0; + $205 = $295;$207 = $294;$215 = $201;$c$742 = $c$6$lcssa; + while(1) { + $206 = ($205>>>0)>($204>>>0); + $208 = ($207>>>0)>($203>>>0); + $209 = ($205|0)==($204|0); + $210 = $209 & $208; + $211 = $206 | $210; + if ($211) { + $$115 = $$116;$292 = $207;$293 = $205;$c$8 = $c$742; + label = 72; + break L63; + } + $212 = (___muldi3(($207|0),($205|0),($$116|0),0)|0); + $213 = tempRet0; + $214 = $215&255; + $216 = $214 ^ -1; + $217 = ($213>>>0)>(4294967295); + $218 = ($212>>>0)>($216>>>0); + $219 = ($213|0)==(-1); + $220 = $219 & $218; + $221 = $217 | $220; + if ($221) { + $$115 = $$116;$292 = $207;$293 = $205;$c$8 = $c$742; + label = 72; + break L63; + } + $222 = (_i64Add(($214|0),0,($212|0),($213|0))|0); + $223 = tempRet0; + $224 = HEAP32[$3>>2]|0; + $225 = HEAP32[$4>>2]|0; + $226 = ($224>>>0)<($225>>>0); + if ($226) { + $227 = ((($224)) + 1|0); + HEAP32[$3>>2] = $227; + $228 = HEAP8[$224>>0]|0; + $229 = $228&255; + $c$7$be = $229; + } else { + $230 = (___shgetc($f)|0); + $c$7$be = $230; + } + $231 = ((70253) + ($c$7$be)|0); + $232 = HEAP8[$231>>0]|0; + $233 = $232&255; + $234 = ($233>>>0)<($$116>>>0); + if ($234) { + $205 = $223;$207 = $222;$215 = $232;$c$742 = $c$7$be; + } else { + $$115 = $$116;$292 = $222;$293 = $223;$c$8 = $c$7$be; + label = 72; + break; + } + } + } else { + $$115 = $$116;$292 = $294;$293 = $295;$c$8 = $c$6$lcssa; + label = 72; + } + } + } while(0); + if ((label|0) == 72) { + $235 = ((70253) + ($c$8)|0); + $236 = HEAP8[$235>>0]|0; + $237 = $236&255; + $238 = ($237>>>0)<($$115>>>0); + if ($238) { + while(1) { + $239 = HEAP32[$3>>2]|0; + $240 = HEAP32[$4>>2]|0; + $241 = ($239>>>0)<($240>>>0); + if ($241) { + $242 = ((($239)) + 1|0); + HEAP32[$3>>2] = $242; + $243 = HEAP8[$239>>0]|0; + $244 = $243&255; + $c$9$be = $244; + } else { + $245 = (___shgetc($f)|0); + $c$9$be = $245; + } + $246 = ((70253) + ($c$9$be)|0); + $247 = HEAP8[$246>>0]|0; + $248 = $247&255; + $249 = ($248>>>0)<($$115>>>0); + if (!($249)) { + break; + } + } + $250 = (___errno_location()|0); + HEAP32[$250>>2] = 34; + $251 = $0 & 1; + $252 = ($251|0)==(0); + $253 = (0)==(0); + $254 = $252 & $253; + $neg$0$ = $254 ? $neg$0 : 0; + $259 = $1;$261 = $0;$neg$1 = $neg$0$; + } else { + $259 = $293;$261 = $292;$neg$1 = $neg$0; + } + } + $255 = HEAP32[$4>>2]|0; + $256 = ($255|0)==(0|0); + if (!($256)) { + $257 = HEAP32[$3>>2]|0; + $258 = ((($257)) + -1|0); + HEAP32[$3>>2] = $258; + } + $260 = ($259>>>0)<($1>>>0); + $262 = ($261>>>0)<($0>>>0); + $263 = ($259|0)==($1|0); + $264 = $263 & $262; + $265 = $260 | $264; + if (!($265)) { + $266 = $0 & 1; + $267 = ($266|0)!=(0); + $268 = (0)!=(0); + $269 = $267 | $268; + $270 = ($neg$1|0)!=(0); + $or$cond12 = $269 | $270; + if (!($or$cond12)) { + $271 = (___errno_location()|0); + HEAP32[$271>>2] = 34; + $272 = (_i64Add(($0|0),($1|0),-1,-1)|0); + $273 = tempRet0; + $286 = $273;$287 = $272; + break; + } + $274 = ($259>>>0)>($1>>>0); + $275 = ($261>>>0)>($0>>>0); + $276 = ($259|0)==($1|0); + $277 = $276 & $275; + $278 = $274 | $277; + if ($278) { + $279 = (___errno_location()|0); + HEAP32[$279>>2] = 34; + $286 = $1;$287 = $0; + break; + } + } + $280 = ($neg$1|0)<(0); + $281 = $280 << 31 >> 31; + $282 = $261 ^ $neg$1; + $283 = $259 ^ $281; + $284 = (_i64Subtract(($282|0),($283|0),($neg$1|0),($281|0))|0); + $285 = tempRet0; + $286 = $285;$287 = $284; + } + } while(0); + tempRet0 = ($286); + return ($287|0); +} +function ___shgetc($f) { + $f = $f|0; + var $$0 = 0, $$phi$trans$insert = 0, $$phi$trans$insert3 = 0, $$pre = 0, $$pre4 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; + var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ((($f)) + 104|0); + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)==(0); + if ($2) { + label = 3; + } else { + $3 = ((($f)) + 108|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)<($1|0); + if ($5) { + label = 3; + } else { + label = 4; + } + } + if ((label|0) == 3) { + $6 = (___uflow($f)|0); + $7 = ($6|0)<(0); + if ($7) { + label = 4; + } else { + $9 = HEAP32[$0>>2]|0; + $10 = ($9|0)==(0); + $$phi$trans$insert = ((($f)) + 8|0); + $$pre = HEAP32[$$phi$trans$insert>>2]|0; + if ($10) { + $11 = $$pre; + $41 = $11; + label = 9; + } else { + $12 = ((($f)) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = $13; + $15 = (($$pre) - ($14))|0; + $16 = ((($f)) + 108|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($9) - ($17))|0; + $19 = ($15|0)<($18|0); + $20 = $$pre; + if ($19) { + $41 = $20; + label = 9; + } else { + $21 = (($18) + -1)|0; + $22 = (($13) + ($21)|0); + $23 = ((($f)) + 100|0); + HEAP32[$23>>2] = $22; + $25 = $20; + } + } + if ((label|0) == 9) { + $24 = ((($f)) + 100|0); + HEAP32[$24>>2] = $$pre; + $25 = $41; + } + $26 = ($25|0)==(0|0); + $$phi$trans$insert3 = ((($f)) + 4|0); + if ($26) { + $$pre4 = HEAP32[$$phi$trans$insert3>>2]|0; + $36 = $$pre4; + } else { + $27 = HEAP32[$$phi$trans$insert3>>2]|0; + $28 = $25; + $29 = ((($f)) + 108|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($28) + 1)|0; + $32 = (($31) - ($27))|0; + $33 = (($32) + ($30))|0; + HEAP32[$29>>2] = $33; + $34 = $27; + $36 = $34; + } + $35 = ((($36)) + -1|0); + $37 = HEAP8[$35>>0]|0; + $38 = $37&255; + $39 = ($38|0)==($6|0); + if ($39) { + $$0 = $6; + } else { + $40 = $6&255; + HEAP8[$35>>0] = $40; + $$0 = $6; + } + } + } + if ((label|0) == 4) { + $8 = ((($f)) + 100|0); + HEAP32[$8>>2] = 0; + $$0 = -1; + } + return ($$0|0); +} +function ___uflow($f) { + $f = $f|0; + var $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $c = sp; + $0 = ((($f)) + 8|0); + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)==(0|0); + if ($2) { + $3 = (___toread($f)|0); + $4 = ($3|0)==(0); + if ($4) { + label = 3; + } else { + $$0 = -1; + } + } else { + label = 3; + } + if ((label|0) == 3) { + $5 = ((($f)) + 32|0); + $6 = HEAP32[$5>>2]|0; + $7 = (FUNCTION_TABLE_iiii[$6 & 127]($f,$c,1)|0); + $8 = ($7|0)==(1); + if ($8) { + $9 = HEAP8[$c>>0]|0; + $10 = $9&255; + $$0 = $10; + } else { + $$0 = -1; + } + } + STACKTOP = sp;return ($$0|0); +} +function ___toread($f) { + $f = $f|0; + var $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ((($f)) + 74|0); + $1 = HEAP8[$0>>0]|0; + $2 = $1 << 24 >> 24; + $3 = (($2) + 255)|0; + $4 = $3 | $2; + $5 = $4&255; + HEAP8[$0>>0] = $5; + $6 = ((($f)) + 20|0); + $7 = HEAP32[$6>>2]|0; + $8 = ((($f)) + 44|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($7>>>0)>($9>>>0); + if ($10) { + $11 = ((($f)) + 36|0); + $12 = HEAP32[$11>>2]|0; + (FUNCTION_TABLE_iiii[$12 & 127]($f,0,0)|0); + } + $13 = ((($f)) + 16|0); + HEAP32[$13>>2] = 0; + $14 = ((($f)) + 28|0); + HEAP32[$14>>2] = 0; + HEAP32[$6>>2] = 0; + $15 = HEAP32[$f>>2]|0; + $16 = $15 & 20; + $17 = ($16|0)==(0); + if ($17) { + $21 = HEAP32[$8>>2]|0; + $22 = ((($f)) + 8|0); + HEAP32[$22>>2] = $21; + $23 = ((($f)) + 4|0); + HEAP32[$23>>2] = $21; + $$0 = 0; + } else { + $18 = $15 & 4; + $19 = ($18|0)==(0); + if ($19) { + $$0 = -1; + } else { + $20 = $15 | 32; + HEAP32[$f>>2] = $20; + $$0 = -1; + } + } + return ($$0|0); +} +function _sprintf($s,$fmt,$varargs) { + $s = $s|0; + $fmt = $fmt|0; + $varargs = $varargs|0; + var $0 = 0, $ap = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $ap = sp; + HEAP32[$ap>>2] = $varargs; + $0 = (_vsprintf($s,$fmt,$ap)|0); + STACKTOP = sp;return ($0|0); +} +function _vsprintf($s,$fmt,$ap) { + $s = $s|0; + $fmt = $fmt|0; + $ap = $ap|0; + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (_vsnprintf($s,2147483647,$fmt,$ap)|0); + return ($0|0); +} +function _fprintf($f,$fmt,$varargs) { + $f = $f|0; + $fmt = $fmt|0; + $varargs = $varargs|0; + var $0 = 0, $ap = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $ap = sp; + HEAP32[$ap>>2] = $varargs; + $0 = (_vfprintf($f,$fmt,$ap)|0); + STACKTOP = sp;return ($0|0); +} +function _fgets($s,$n,$f) { + $s = $s|0; + $n = $n|0; + $f = $f|0; + var $$0 = 0, $$047 = 0, $$05 = 0, $$lcssa13 = 0, $$old2 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; + var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $or$cond3 = 0, $p$0 = 0; + var $p$1 = 0, $sext$mask = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ((($f)) + 76|0); + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)>(-1); + if ($2) { + $3 = (___lockfile($f)|0); + $12 = $3; + } else { + $12 = 0; + } + $4 = (($n) + -1)|0; + $5 = ($n|0)<(2); + if ($5) { + $6 = ((($f)) + 74|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7 << 24 >> 24; + $9 = (($8) + 255)|0; + $10 = $9 | $8; + $11 = $10&255; + HEAP8[$6>>0] = $11; + $13 = ($12|0)==(0); + if (!($13)) { + ___unlockfile($f); + } + $14 = ($4|0)==(0); + if ($14) { + HEAP8[$s>>0] = 0; + $$0 = $s; + } else { + $$0 = 0; + } + } else { + $$old2 = ($4|0)==(0); + L11: do { + if ($$old2) { + $p$1 = $s; + label = 17; + } else { + $15 = ((($f)) + 4|0); + $16 = ((($f)) + 8|0); + $$05 = $4;$p$0 = $s; + while(1) { + $17 = HEAP32[$15>>2]|0; + $18 = HEAP32[$16>>2]|0; + $19 = $17; + $20 = (($18) - ($19))|0; + $21 = (_memchr($17,10,$20)|0); + $22 = ($21|0)==(0|0); + $23 = $21; + $24 = (1 - ($19))|0; + $25 = (($24) + ($23))|0; + $26 = $22 ? $20 : $25; + $27 = ($26>>>0)<($$05>>>0); + $28 = $27 ? $26 : $$05; + _memcpy(($p$0|0),($17|0),($28|0))|0; + $29 = HEAP32[$15>>2]|0; + $30 = (($29) + ($28)|0); + HEAP32[$15>>2] = $30; + $31 = (($p$0) + ($28)|0); + $32 = (($$05) - ($28))|0; + $or$cond = $22 & $27; + if (!($or$cond)) { + $p$1 = $31; + label = 17; + break L11; + } + $33 = HEAP32[$16>>2]|0; + $34 = ($30>>>0)<($33>>>0); + if ($34) { + $35 = ((($30)) + 1|0); + HEAP32[$15>>2] = $35; + $36 = HEAP8[$30>>0]|0; + $37 = $36&255; + $46 = $37; + } else { + $38 = (___uflow($f)|0); + $39 = ($38|0)<(0); + if ($39) { + $$lcssa13 = $31; + break; + } else { + $46 = $38; + } + } + $44 = (($32) + -1)|0; + $45 = $46&255; + $47 = ((($31)) + 1|0); + HEAP8[$31>>0] = $45; + $sext$mask = $46 & 255; + $48 = ($sext$mask|0)!=(10); + $49 = ($44|0)!=(0); + $or$cond3 = $49 & $48; + if ($or$cond3) { + $$05 = $44;$p$0 = $47; + } else { + $p$1 = $47; + label = 17; + break L11; + } + } + $40 = ($$lcssa13|0)==($s|0); + if ($40) { + $$047 = 0; + } else { + $41 = HEAP32[$f>>2]|0; + $42 = $41 & 16; + $43 = ($42|0)==(0); + if ($43) { + $$047 = 0; + } else { + $p$1 = $$lcssa13; + label = 17; + } + } + } + } while(0); + if ((label|0) == 17) { + $50 = ($s|0)==(0|0); + if ($50) { + $$047 = 0; + } else { + HEAP8[$p$1>>0] = 0; + $$047 = $s; + } + } + $51 = ($12|0)==(0); + if ($51) { + $$0 = $$047; + } else { + ___unlockfile($f); + $$0 = $$047; + } + } + return ($$0|0); +} +function _strncmp($_l,$_r,$n) { + $_l = $_l|0; + $_r = $_r|0; + $n = $n|0; + var $$03 = 0, $$08 = 0, $$08$in = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $l$06 = 0, $or$cond = 0, $or$cond4 = 0, $r$0$lcssa = 0, $r$07 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($n|0)==(0); + if ($0) { + $$03 = 0; + } else { + $1 = HEAP8[$_l>>0]|0; + $2 = ($1<<24>>24)==(0); + L3: do { + if ($2) { + $13 = 0;$r$0$lcssa = $_r; + } else { + $$08$in = $n;$6 = $1;$l$06 = $_l;$r$07 = $_r; + while(1) { + $$08 = (($$08$in) + -1)|0; + $3 = HEAP8[$r$07>>0]|0; + $4 = ($3<<24>>24)!=(0); + $5 = ($$08|0)!=(0); + $or$cond = $5 & $4; + $7 = ($6<<24>>24)==($3<<24>>24); + $or$cond4 = $7 & $or$cond; + if (!($or$cond4)) { + $13 = $6;$r$0$lcssa = $r$07; + break L3; + } + $8 = ((($l$06)) + 1|0); + $9 = ((($r$07)) + 1|0); + $10 = HEAP8[$8>>0]|0; + $11 = ($10<<24>>24)==(0); + if ($11) { + $13 = 0;$r$0$lcssa = $9; + break; + } else { + $$08$in = $$08;$6 = $10;$l$06 = $8;$r$07 = $9; + } + } + } + } while(0); + $12 = $13&255; + $14 = HEAP8[$r$0$lcssa>>0]|0; + $15 = $14&255; + $16 = (($12) - ($15))|0; + $$03 = $16; + } + return ($$03|0); +} +function _htonl($n) { + $n = $n|0; + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (_llvm_bswap_i32(($n|0))|0); + return ($0|0); +} +function _fcntl($fd,$cmd,$varargs) { + $fd = $fd|0; + $cmd = $cmd|0; + $varargs = $varargs|0; + var $$ = 0, $$0 = 0, $$2 = 0, $$off = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0; + var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $ap = 0, $arglist_current = 0, $arglist_next = 0, $ex = 0, $expanded = 0, $expanded2 = 0, $expanded4 = 0, $expanded5 = 0, $expanded6 = 0, $switch = 0, $vararg_buffer = 0, $vararg_buffer13 = 0, $vararg_buffer18 = 0, $vararg_buffer23 = 0, $vararg_buffer28 = 0, $vararg_buffer3 = 0, $vararg_buffer31 = 0, $vararg_buffer36 = 0; + var $vararg_buffer41 = 0, $vararg_buffer46 = 0, $vararg_buffer8 = 0, $vararg_ptr1 = 0, $vararg_ptr11 = 0, $vararg_ptr12 = 0, $vararg_ptr16 = 0, $vararg_ptr17 = 0, $vararg_ptr2 = 0, $vararg_ptr21 = 0, $vararg_ptr22 = 0, $vararg_ptr26 = 0, $vararg_ptr27 = 0, $vararg_ptr34 = 0, $vararg_ptr35 = 0, $vararg_ptr39 = 0, $vararg_ptr40 = 0, $vararg_ptr44 = 0, $vararg_ptr45 = 0, $vararg_ptr49 = 0; + var $vararg_ptr50 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 192|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer46 = sp + 152|0; + $vararg_buffer41 = sp + 136|0; + $vararg_buffer36 = sp + 120|0; + $vararg_buffer31 = sp + 104|0; + $vararg_buffer28 = sp + 96|0; + $vararg_buffer23 = sp + 80|0; + $vararg_buffer18 = sp + 64|0; + $vararg_buffer13 = sp + 48|0; + $vararg_buffer8 = sp + 32|0; + $vararg_buffer3 = sp + 16|0; + $vararg_buffer = sp; + $ap = sp + 176|0; + $ex = sp + 168|0; + HEAP32[$ap>>2] = $varargs; + $arglist_current = HEAP32[$ap>>2]|0; + $0 = $arglist_current; + $1 = ((0) + 4|0); + $expanded2 = $1; + $expanded = (($expanded2) - 1)|0; + $2 = (($0) + ($expanded))|0; + $3 = ((0) + 4|0); + $expanded6 = $3; + $expanded5 = (($expanded6) - 1)|0; + $expanded4 = $expanded5 ^ -1; + $4 = $2 & $expanded4; + $5 = $4; + $6 = HEAP32[$5>>2]|0; + $arglist_next = ((($5)) + 4|0); + HEAP32[$ap>>2] = $arglist_next; + $7 = ($cmd|0)==(4); + $8 = $6 | 32768; + $$ = $7 ? $8 : $6; + L1: do { + switch ($cmd|0) { + case 14: { + $9 = $$; + HEAP32[$vararg_buffer>>2] = $fd; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 14; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $9; + $10 = (___syscall221(221,($vararg_buffer|0))|0); + $11 = (___syscall_ret($10)|0); + $$2 = $11; + break; + } + case 9: { + HEAP32[$vararg_buffer3>>2] = $fd; + $vararg_ptr6 = ((($vararg_buffer3)) + 4|0); + HEAP32[$vararg_ptr6>>2] = 16; + $vararg_ptr7 = ((($vararg_buffer3)) + 8|0); + HEAP32[$vararg_ptr7>>2] = $ex; + $12 = (___syscall221(221,($vararg_buffer3|0))|0); + switch ($12|0) { + case -22: { + $13 = $$; + HEAP32[$vararg_buffer8>>2] = $fd; + $vararg_ptr11 = ((($vararg_buffer8)) + 4|0); + HEAP32[$vararg_ptr11>>2] = 9; + $vararg_ptr12 = ((($vararg_buffer8)) + 8|0); + HEAP32[$vararg_ptr12>>2] = $13; + $14 = (___syscall221(221,($vararg_buffer8|0))|0); + $$0 = $14; + break; + } + case 0: { + $16 = HEAP32[$ex>>2]|0; + $17 = ($16|0)==(2); + $18 = ((($ex)) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = (0 - ($19))|0; + $21 = $17 ? $20 : $19; + $$0 = $21; + break; + } + default: { + $15 = (___syscall_ret($12)|0); + $$0 = $15; + } + } + $$2 = $$0; + break; + } + case 1030: { + HEAP32[$vararg_buffer13>>2] = $fd; + $vararg_ptr16 = ((($vararg_buffer13)) + 4|0); + HEAP32[$vararg_ptr16>>2] = 1030; + $vararg_ptr17 = ((($vararg_buffer13)) + 8|0); + HEAP32[$vararg_ptr17>>2] = $$; + $22 = (___syscall221(221,($vararg_buffer13|0))|0); + $23 = ($22|0)==(-22); + if (!($23)) { + $24 = ($22|0)>(-1); + if ($24) { + HEAP32[$vararg_buffer18>>2] = $22; + $vararg_ptr21 = ((($vararg_buffer18)) + 4|0); + HEAP32[$vararg_ptr21>>2] = 2; + $vararg_ptr22 = ((($vararg_buffer18)) + 8|0); + HEAP32[$vararg_ptr22>>2] = 1; + (___syscall221(221,($vararg_buffer18|0))|0); + } + $25 = (___syscall_ret($22)|0); + $$2 = $25; + break L1; + } + HEAP32[$vararg_buffer23>>2] = $fd; + $vararg_ptr26 = ((($vararg_buffer23)) + 4|0); + HEAP32[$vararg_ptr26>>2] = 1030; + $vararg_ptr27 = ((($vararg_buffer23)) + 8|0); + HEAP32[$vararg_ptr27>>2] = 0; + $26 = (___syscall221(221,($vararg_buffer23|0))|0); + $27 = ($26|0)==(-22); + if ($27) { + HEAP32[$vararg_buffer31>>2] = $fd; + $vararg_ptr34 = ((($vararg_buffer31)) + 4|0); + HEAP32[$vararg_ptr34>>2] = 0; + $vararg_ptr35 = ((($vararg_buffer31)) + 8|0); + HEAP32[$vararg_ptr35>>2] = $$; + $30 = (___syscall221(221,($vararg_buffer31|0))|0); + $31 = ($30|0)>(-1); + if ($31) { + HEAP32[$vararg_buffer36>>2] = $30; + $vararg_ptr39 = ((($vararg_buffer36)) + 4|0); + HEAP32[$vararg_ptr39>>2] = 2; + $vararg_ptr40 = ((($vararg_buffer36)) + 8|0); + HEAP32[$vararg_ptr40>>2] = 1; + (___syscall221(221,($vararg_buffer36|0))|0); + } + $32 = (___syscall_ret($30)|0); + $$2 = $32; + break L1; + } else { + $28 = ($26|0)>(-1); + if ($28) { + HEAP32[$vararg_buffer28>>2] = $26; + (___syscall6(6,($vararg_buffer28|0))|0); + } + $29 = (___syscall_ret(-22)|0); + $$2 = $29; + break L1; + } + break; + } + default: { + $$off = (($cmd) + -12)|0; + $switch = ($$off>>>0)<(5); + if ($switch) { + $33 = $$; + HEAP32[$vararg_buffer41>>2] = $fd; + $vararg_ptr44 = ((($vararg_buffer41)) + 4|0); + HEAP32[$vararg_ptr44>>2] = $cmd; + $vararg_ptr45 = ((($vararg_buffer41)) + 8|0); + HEAP32[$vararg_ptr45>>2] = $33; + $34 = (___syscall221(221,($vararg_buffer41|0))|0); + $35 = (___syscall_ret($34)|0); + $$2 = $35; + break L1; + } else { + HEAP32[$vararg_buffer46>>2] = $fd; + $vararg_ptr49 = ((($vararg_buffer46)) + 4|0); + HEAP32[$vararg_ptr49>>2] = $cmd; + $vararg_ptr50 = ((($vararg_buffer46)) + 8|0); + HEAP32[$vararg_ptr50>>2] = $$; + $36 = (___syscall221(221,($vararg_buffer46|0))|0); + $37 = (___syscall_ret($36)|0); + $$2 = $37; + break L1; + } + } + } + } while(0); + STACKTOP = sp;return ($$2|0); +} +function _close($fd) { + $fd = $fd|0; + var $$ = 0, $0 = 0, $1 = 0, $2 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + HEAP32[$vararg_buffer>>2] = $fd; + $0 = (___syscall6(6,($vararg_buffer|0))|0); + $1 = ($0|0)==(-4); + $$ = $1 ? -115 : $0; + $2 = (___syscall_ret($$)|0); + STACKTOP = sp;return ($2|0); +} +function _memcmp($vl,$vr,$n) { + $vl = $vl|0; + $vr = $vr|0; + $n = $n|0; + var $$03 = 0, $$lcssa = 0, $$lcssa19 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $l$04 = 0, $r$05 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($n|0)==(0); + L1: do { + if ($0) { + $11 = 0; + } else { + $$03 = $n;$l$04 = $vl;$r$05 = $vr; + while(1) { + $1 = HEAP8[$l$04>>0]|0; + $2 = HEAP8[$r$05>>0]|0; + $3 = ($1<<24>>24)==($2<<24>>24); + if (!($3)) { + $$lcssa = $1;$$lcssa19 = $2; + break; + } + $4 = (($$03) + -1)|0; + $5 = ((($l$04)) + 1|0); + $6 = ((($r$05)) + 1|0); + $7 = ($4|0)==(0); + if ($7) { + $11 = 0; + break L1; + } else { + $$03 = $4;$l$04 = $5;$r$05 = $6; + } + } + $8 = $$lcssa&255; + $9 = $$lcssa19&255; + $10 = (($8) - ($9))|0; + $11 = $10; + } + } while(0); + return ($11|0); +} +function _ntohl($n) { + $n = $n|0; + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (_llvm_bswap_i32(($n|0))|0); + return ($0|0); +} +function _strncpy($d,$s,$n) { + $d = $d|0; + $s = $s|0; + $n = $n|0; + var label = 0, sp = 0; + sp = STACKTOP; + (___stpncpy($d,$s,$n)|0); + return ($d|0); +} +function ___stpncpy($d,$s,$n) { + $d = $d|0; + $s = $s|0; + $n = $n|0; + var $$0$lcssa = 0, $$0$lcssa42 = 0, $$031 = 0, $$04$lcssa = 0, $$04$lcssa43 = 0, $$0430 = 0, $$06$lcssa = 0, $$06$lcssa44 = 0, $$0629 = 0, $$1$lcssa = 0, $$117 = 0, $$15$ph = 0, $$1511 = 0, $$17$ph = 0, $$1710 = 0, $$2$ph = 0, $$212 = 0, $$28 = 0, $$3 = 0, $$lcssa = 0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $or$cond28 = 0, $wd$0$lcssa = 0; + var $wd$018 = 0, $ws$0$lcssa = 0, $ws$019 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = $s; + $1 = $d; + $2 = $0 ^ $1; + $3 = $2 & 3; + $4 = ($3|0)==(0); + do { + if ($4) { + $5 = $0 & 3; + $6 = ($5|0)!=(0); + $7 = ($n|0)!=(0); + $or$cond28 = $7 & $6; + L3: do { + if ($or$cond28) { + $$031 = $n;$$0430 = $s;$$0629 = $d; + while(1) { + $8 = HEAP8[$$0430>>0]|0; + HEAP8[$$0629>>0] = $8; + $9 = ($8<<24>>24)==(0); + if ($9) { + $$0$lcssa42 = $$031;$$04$lcssa43 = $$0430;$$06$lcssa44 = $$0629; + break L3; + } + $10 = (($$031) + -1)|0; + $11 = ((($$0430)) + 1|0); + $12 = ((($$0629)) + 1|0); + $13 = $11; + $14 = $13 & 3; + $15 = ($14|0)!=(0); + $16 = ($10|0)!=(0); + $or$cond = $16 & $15; + if ($or$cond) { + $$031 = $10;$$0430 = $11;$$0629 = $12; + } else { + $$0$lcssa = $10;$$04$lcssa = $11;$$06$lcssa = $12;$$lcssa = $16; + label = 5; + break; + } + } + } else { + $$0$lcssa = $n;$$04$lcssa = $s;$$06$lcssa = $d;$$lcssa = $7; + label = 5; + } + } while(0); + if ((label|0) == 5) { + if ($$lcssa) { + $$0$lcssa42 = $$0$lcssa;$$04$lcssa43 = $$04$lcssa;$$06$lcssa44 = $$06$lcssa; + } else { + $$28 = $$06$lcssa;$$3 = 0; + break; + } + } + $17 = HEAP8[$$04$lcssa43>>0]|0; + $18 = ($17<<24>>24)==(0); + if ($18) { + $$28 = $$06$lcssa44;$$3 = $$0$lcssa42; + } else { + $19 = ($$0$lcssa42>>>0)>(3); + L11: do { + if ($19) { + $$117 = $$0$lcssa42;$wd$018 = $$06$lcssa44;$ws$019 = $$04$lcssa43; + while(1) { + $20 = HEAP32[$ws$019>>2]|0; + $21 = (($20) + -16843009)|0; + $22 = $20 & -2139062144; + $23 = $22 ^ -2139062144; + $24 = $23 & $21; + $25 = ($24|0)==(0); + if (!($25)) { + $$1$lcssa = $$117;$wd$0$lcssa = $wd$018;$ws$0$lcssa = $ws$019; + break L11; + } + HEAP32[$wd$018>>2] = $20; + $26 = (($$117) + -4)|0; + $27 = ((($ws$019)) + 4|0); + $28 = ((($wd$018)) + 4|0); + $29 = ($26>>>0)>(3); + if ($29) { + $$117 = $26;$wd$018 = $28;$ws$019 = $27; + } else { + $$1$lcssa = $26;$wd$0$lcssa = $28;$ws$0$lcssa = $27; + break; + } + } + } else { + $$1$lcssa = $$0$lcssa42;$wd$0$lcssa = $$06$lcssa44;$ws$0$lcssa = $$04$lcssa43; + } + } while(0); + $$15$ph = $ws$0$lcssa;$$17$ph = $wd$0$lcssa;$$2$ph = $$1$lcssa; + label = 11; + } + } else { + $$15$ph = $s;$$17$ph = $d;$$2$ph = $n; + label = 11; + } + } while(0); + L16: do { + if ((label|0) == 11) { + $30 = ($$2$ph|0)==(0); + if ($30) { + $$28 = $$17$ph;$$3 = 0; + } else { + $$1511 = $$15$ph;$$1710 = $$17$ph;$$212 = $$2$ph; + while(1) { + $31 = HEAP8[$$1511>>0]|0; + HEAP8[$$1710>>0] = $31; + $32 = ($31<<24>>24)==(0); + if ($32) { + $$28 = $$1710;$$3 = $$212; + break L16; + } + $33 = (($$212) + -1)|0; + $34 = ((($$1511)) + 1|0); + $35 = ((($$1710)) + 1|0); + $36 = ($33|0)==(0); + if ($36) { + $$28 = $35;$$3 = 0; + break; + } else { + $$1511 = $34;$$1710 = $35;$$212 = $33; + } + } + } + } + } while(0); + _memset(($$28|0),0,($$3|0))|0; + return ($$28|0); +} +function _fopen($filename,$mode) { + $filename = $filename|0; + $mode = $mode|0; + var $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $memchr = 0, $vararg_buffer = 0, $vararg_buffer3 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer3 = sp + 16|0; + $vararg_buffer = sp; + $0 = HEAP8[$mode>>0]|0; + $1 = $0 << 24 >> 24; + $memchr = (_memchr(70518,$1,4)|0); + $2 = ($memchr|0)==(0|0); + if ($2) { + $3 = (___errno_location()|0); + HEAP32[$3>>2] = 22; + $$0 = 0; + } else { + $4 = (___fmodeflags($mode)|0); + $5 = $4 | 32768; + HEAP32[$vararg_buffer>>2] = $filename; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $5; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = 438; + $6 = (___syscall5(5,($vararg_buffer|0))|0); + $7 = (___syscall_ret($6)|0); + $8 = ($7|0)<(0); + if ($8) { + $$0 = 0; + } else { + $9 = (___fdopen($7,$mode)|0); + $10 = ($9|0)==(0|0); + if ($10) { + HEAP32[$vararg_buffer3>>2] = $7; + (___syscall6(6,($vararg_buffer3|0))|0); + $$0 = 0; + } else { + $$0 = $9; + } + } + } + STACKTOP = sp;return ($$0|0); +} +function ___fmodeflags($mode) { + $mode = $mode|0; + var $$ = 0, $$flags$4 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $flags$0 = 0, $flags$0$ = 0, $flags$2 = 0; + var $flags$2$ = 0, $flags$4 = 0, $not$ = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (_strchr($mode,43)|0); + $1 = ($0|0)==(0|0); + $2 = HEAP8[$mode>>0]|0; + $not$ = ($2<<24>>24)!=(114); + $$ = $not$&1; + $flags$0 = $1 ? $$ : 2; + $3 = (_strchr($mode,120)|0); + $4 = ($3|0)==(0|0); + $5 = $flags$0 | 128; + $flags$0$ = $4 ? $flags$0 : $5; + $6 = (_strchr($mode,101)|0); + $7 = ($6|0)==(0|0); + $8 = $flags$0$ | 524288; + $flags$2 = $7 ? $flags$0$ : $8; + $9 = ($2<<24>>24)==(114); + $10 = $flags$2 | 64; + $flags$2$ = $9 ? $flags$2 : $10; + $11 = ($2<<24>>24)==(119); + $12 = $flags$2$ | 512; + $flags$4 = $11 ? $12 : $flags$2$; + $13 = ($2<<24>>24)==(97); + $14 = $flags$4 | 1024; + $$flags$4 = $13 ? $14 : $flags$4; + return ($$flags$4|0); +} +function _strchr($s,$c) { + $s = $s|0; + $c = $c|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (___strchrnul($s,$c)|0); + $1 = HEAP8[$0>>0]|0; + $2 = $c&255; + $3 = ($1<<24>>24)==($2<<24>>24); + $4 = $3 ? $0 : 0; + return ($4|0); +} +function ___strchrnul($s,$c) { + $s = $s|0; + $c = $c|0; + var $$0 = 0, $$02$lcssa = 0, $$0211 = 0, $$1 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0; + var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $or$cond5 = 0, $w$0$lcssa = 0, $w$08 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = $c & 255; + $1 = ($0|0)==(0); + L1: do { + if ($1) { + $6 = (_strlen($s)|0); + $7 = (($s) + ($6)|0); + $$0 = $7; + } else { + $2 = $s; + $3 = $2 & 3; + $4 = ($3|0)==(0); + if ($4) { + $$02$lcssa = $s; + } else { + $5 = $c&255; + $$0211 = $s; + while(1) { + $8 = HEAP8[$$0211>>0]|0; + $9 = ($8<<24>>24)==(0); + $10 = ($8<<24>>24)==($5<<24>>24); + $or$cond = $9 | $10; + if ($or$cond) { + $$0 = $$0211; + break L1; + } + $11 = ((($$0211)) + 1|0); + $12 = $11; + $13 = $12 & 3; + $14 = ($13|0)==(0); + if ($14) { + $$02$lcssa = $11; + break; + } else { + $$0211 = $11; + } + } + } + $15 = Math_imul($0, 16843009)|0; + $16 = HEAP32[$$02$lcssa>>2]|0; + $17 = (($16) + -16843009)|0; + $18 = $16 & -2139062144; + $19 = $18 ^ -2139062144; + $20 = $19 & $17; + $21 = ($20|0)==(0); + L10: do { + if ($21) { + $23 = $16;$w$08 = $$02$lcssa; + while(1) { + $22 = $23 ^ $15; + $24 = (($22) + -16843009)|0; + $25 = $22 & -2139062144; + $26 = $25 ^ -2139062144; + $27 = $26 & $24; + $28 = ($27|0)==(0); + if (!($28)) { + $w$0$lcssa = $w$08; + break L10; + } + $29 = ((($w$08)) + 4|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + -16843009)|0; + $32 = $30 & -2139062144; + $33 = $32 ^ -2139062144; + $34 = $33 & $31; + $35 = ($34|0)==(0); + if ($35) { + $23 = $30;$w$08 = $29; + } else { + $w$0$lcssa = $29; + break; + } + } + } else { + $w$0$lcssa = $$02$lcssa; + } + } while(0); + $36 = $c&255; + $$1 = $w$0$lcssa; + while(1) { + $37 = HEAP8[$$1>>0]|0; + $38 = ($37<<24>>24)==(0); + $39 = ($37<<24>>24)==($36<<24>>24); + $or$cond5 = $38 | $39; + $40 = ((($$1)) + 1|0); + if ($or$cond5) { + $$0 = $$1; + break; + } else { + $$1 = $40; + } + } + } + } while(0); + return ($$0|0); +} +function ___fdopen($fd,$mode) { + $fd = $fd|0; + $mode = $mode|0; + var $$0 = 0, $$cast = 0, $$pre = 0, $$pre1 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0; + var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $memchr = 0, $tio = 0, $vararg_buffer = 0, $vararg_buffer12 = 0, $vararg_buffer3 = 0, $vararg_buffer7 = 0, $vararg_ptr1 = 0, $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr15 = 0, $vararg_ptr16 = 0, $vararg_ptr2 = 0, $vararg_ptr6 = 0, dest = 0, label = 0; + var sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer12 = sp + 40|0; + $vararg_buffer7 = sp + 24|0; + $vararg_buffer3 = sp + 16|0; + $vararg_buffer = sp; + $tio = sp + 52|0; + $0 = HEAP8[$mode>>0]|0; + $1 = $0 << 24 >> 24; + $memchr = (_memchr(70518,$1,4)|0); + $2 = ($memchr|0)==(0|0); + if ($2) { + $3 = (___errno_location()|0); + HEAP32[$3>>2] = 22; + $$0 = 0; + } else { + $4 = (_malloc(1144)|0); + $5 = ($4|0)==(0|0); + if ($5) { + $$0 = 0; + } else { + dest=$4; stop=dest+112|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $6 = (_strchr($mode,43)|0); + $7 = ($6|0)==(0|0); + if ($7) { + $8 = ($0<<24>>24)==(114); + $9 = $8 ? 8 : 4; + HEAP32[$4>>2] = $9; + } + $10 = (_strchr($mode,101)|0); + $11 = ($10|0)==(0|0); + if ($11) { + $12 = $0; + } else { + HEAP32[$vararg_buffer>>2] = $fd; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 2; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = 1; + (___syscall221(221,($vararg_buffer|0))|0); + $$pre = HEAP8[$mode>>0]|0; + $12 = $$pre; + } + $13 = ($12<<24>>24)==(97); + if ($13) { + HEAP32[$vararg_buffer3>>2] = $fd; + $vararg_ptr6 = ((($vararg_buffer3)) + 4|0); + HEAP32[$vararg_ptr6>>2] = 3; + $14 = (___syscall221(221,($vararg_buffer3|0))|0); + $15 = $14 & 1024; + $16 = ($15|0)==(0); + if ($16) { + $17 = $14 | 1024; + HEAP32[$vararg_buffer7>>2] = $fd; + $vararg_ptr10 = ((($vararg_buffer7)) + 4|0); + HEAP32[$vararg_ptr10>>2] = 4; + $vararg_ptr11 = ((($vararg_buffer7)) + 8|0); + HEAP32[$vararg_ptr11>>2] = $17; + (___syscall221(221,($vararg_buffer7|0))|0); + } + $18 = HEAP32[$4>>2]|0; + $19 = $18 | 128; + HEAP32[$4>>2] = $19; + $26 = $19; + } else { + $$pre1 = HEAP32[$4>>2]|0; + $26 = $$pre1; + } + $20 = ((($4)) + 60|0); + HEAP32[$20>>2] = $fd; + $21 = ((($4)) + 120|0); + $22 = ((($4)) + 44|0); + HEAP32[$22>>2] = $21; + $23 = ((($4)) + 48|0); + HEAP32[$23>>2] = 1024; + $24 = ((($4)) + 75|0); + HEAP8[$24>>0] = -1; + $25 = $26 & 8; + $27 = ($25|0)==(0); + if ($27) { + HEAP32[$vararg_buffer12>>2] = $fd; + $vararg_ptr15 = ((($vararg_buffer12)) + 4|0); + HEAP32[$vararg_ptr15>>2] = 21505; + $vararg_ptr16 = ((($vararg_buffer12)) + 8|0); + HEAP32[$vararg_ptr16>>2] = $tio; + $28 = (___syscall54(54,($vararg_buffer12|0))|0); + $29 = ($28|0)==(0); + if ($29) { + HEAP8[$24>>0] = 10; + } + } + $30 = ((($4)) + 32|0); + HEAP32[$30>>2] = 87; + $31 = ((($4)) + 36|0); + HEAP32[$31>>2] = 52; + $32 = ((($4)) + 40|0); + HEAP32[$32>>2] = 51; + $33 = ((($4)) + 12|0); + HEAP32[$33>>2] = 49; + $34 = HEAP32[(71124)>>2]|0; + $35 = ($34|0)==(0); + if ($35) { + $36 = ((($4)) + 76|0); + HEAP32[$36>>2] = -1; + } + ___lock(((71148)|0)); + $37 = HEAP32[(71144)>>2]|0; + $38 = ((($4)) + 56|0); + HEAP32[$38>>2] = $37; + $39 = ($37|0)==(0); + if (!($39)) { + $$cast = $37; + $40 = ((($$cast)) + 52|0); + HEAP32[$40>>2] = $4; + } + HEAP32[(71144)>>2] = $4; + ___unlock(((71148)|0)); + $$0 = $4; + } + } + STACKTOP = sp;return ($$0|0); +} +function _fclose($f) { + $f = $f|0; + var $$pre = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ((($f)) + 76|0); + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)>(-1); + if ($2) { + } + $3 = HEAP32[$f>>2]|0; + $4 = $3 & 1; + $5 = ($4|0)!=(0); + if (!($5)) { + ___lock(((71148)|0)); + $6 = ((($f)) + 52|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)==(0|0); + $9 = $7; + $$pre = ((($f)) + 56|0); + if (!($8)) { + $10 = HEAP32[$$pre>>2]|0; + $11 = ((($7)) + 56|0); + HEAP32[$11>>2] = $10; + } + $12 = HEAP32[$$pre>>2]|0; + $13 = ($12|0)==(0|0); + $14 = $12; + if (!($13)) { + $15 = ((($12)) + 52|0); + HEAP32[$15>>2] = $9; + } + $16 = HEAP32[(71144)>>2]|0; + $17 = ($16|0)==($f|0); + if ($17) { + HEAP32[(71144)>>2] = $14; + } + ___unlock(((71148)|0)); + } + $18 = (_fflush($f)|0); + $19 = ((($f)) + 12|0); + $20 = HEAP32[$19>>2]|0; + $21 = (FUNCTION_TABLE_ii[$20 & 63]($f)|0); + $22 = $21 | $18; + $23 = ((($f)) + 92|0); + $24 = HEAP32[$23>>2]|0; + $25 = ($24|0)==(0|0); + if (!($25)) { + _free($24); + } + if (!($5)) { + _free($f); + } + return ($22|0); +} +function _fflush($f) { + $f = $f|0; + var $$0 = 0, $$01 = 0, $$012 = 0, $$014 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0; + var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $phitmp = 0, $r$0$lcssa = 0, $r$03 = 0, $r$1 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($f|0)==(0|0); + do { + if ($0) { + $7 = HEAP32[3962]|0; + $8 = ($7|0)==(0|0); + if ($8) { + $27 = 0; + } else { + $9 = HEAP32[3962]|0; + $10 = (_fflush($9)|0); + $27 = $10; + } + ___lock(((71148)|0)); + $$012 = HEAP32[(71144)>>2]|0; + $11 = ($$012|0)==(0|0); + if ($11) { + $r$0$lcssa = $27; + } else { + $$014 = $$012;$r$03 = $27; + while(1) { + $12 = ((($$014)) + 76|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)>(-1); + if ($14) { + $15 = (___lockfile($$014)|0); + $23 = $15; + } else { + $23 = 0; + } + $16 = ((($$014)) + 20|0); + $17 = HEAP32[$16>>2]|0; + $18 = ((($$014)) + 28|0); + $19 = HEAP32[$18>>2]|0; + $20 = ($17>>>0)>($19>>>0); + if ($20) { + $21 = (___fflush_unlocked($$014)|0); + $22 = $21 | $r$03; + $r$1 = $22; + } else { + $r$1 = $r$03; + } + $24 = ($23|0)==(0); + if (!($24)) { + ___unlockfile($$014); + } + $25 = ((($$014)) + 56|0); + $$01 = HEAP32[$25>>2]|0; + $26 = ($$01|0)==(0|0); + if ($26) { + $r$0$lcssa = $r$1; + break; + } else { + $$014 = $$01;$r$03 = $r$1; + } + } + } + ___unlock(((71148)|0)); + $$0 = $r$0$lcssa; + } else { + $1 = ((($f)) + 76|0); + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)>(-1); + if (!($3)) { + $4 = (___fflush_unlocked($f)|0); + $$0 = $4; + break; + } + $5 = (___lockfile($f)|0); + $phitmp = ($5|0)==(0); + $6 = (___fflush_unlocked($f)|0); + if ($phitmp) { + $$0 = $6; + } else { + ___unlockfile($f); + $$0 = $6; + } + } + } while(0); + return ($$0|0); +} +function ___fflush_unlocked($f) { + $f = $f|0; + var $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ((($f)) + 20|0); + $1 = HEAP32[$0>>2]|0; + $2 = ((($f)) + 28|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($1>>>0)>($3>>>0); + if ($4) { + $5 = ((($f)) + 36|0); + $6 = HEAP32[$5>>2]|0; + (FUNCTION_TABLE_iiii[$6 & 127]($f,0,0)|0); + $7 = HEAP32[$0>>2]|0; + $8 = ($7|0)==(0|0); + if ($8) { + $$0 = -1; + } else { + label = 3; + } + } else { + label = 3; + } + if ((label|0) == 3) { + $9 = ((($f)) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = ((($f)) + 8|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($10>>>0)<($12>>>0); + if ($13) { + $14 = ((($f)) + 40|0); + $15 = HEAP32[$14>>2]|0; + $16 = $10; + $17 = $12; + $18 = (($16) - ($17))|0; + (FUNCTION_TABLE_iiii[$15 & 127]($f,$18,1)|0); + } + $19 = ((($f)) + 16|0); + HEAP32[$19>>2] = 0; + HEAP32[$2>>2] = 0; + HEAP32[$0>>2] = 0; + HEAP32[$11>>2] = 0; + HEAP32[$9>>2] = 0; + $$0 = 0; + } + return ($$0|0); +} +function _mbtowc($wc,$src,$n) { + $wc = $wc|0; + $src = $src|0; + $n = $n|0; + var $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dummy = 0, $dummy$wc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $dummy = sp; + $0 = ($src|0)==(0|0); + L1: do { + if ($0) { + $$0 = 0; + } else { + $1 = ($n|0)==(0); + do { + if (!($1)) { + $2 = ($wc|0)==(0|0); + $dummy$wc = $2 ? $dummy : $wc; + $3 = HEAP8[$src>>0]|0; + $4 = $3&255; + $5 = ($3<<24>>24)>(-1); + if ($5) { + HEAP32[$dummy$wc>>2] = $4; + $6 = ($3<<24>>24)!=(0); + $7 = $6&1; + $$0 = $7; + break L1; + } + $8 = (($4) + -194)|0; + $9 = ($8>>>0)>(50); + if (!($9)) { + $10 = ((($src)) + 1|0); + $11 = (15968 + ($8<<2)|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($n>>>0)<(4); + if ($13) { + $14 = ($n*6)|0; + $15 = (($14) + -6)|0; + $16 = -2147483648 >>> $15; + $17 = $12 & $16; + $18 = ($17|0)==(0); + if (!($18)) { + break; + } + } + $19 = HEAP8[$10>>0]|0; + $20 = $19&255; + $21 = $20 >>> 3; + $22 = (($21) + -16)|0; + $23 = $12 >> 26; + $24 = (($21) + ($23))|0; + $25 = $22 | $24; + $26 = ($25>>>0)>(7); + if (!($26)) { + $27 = $12 << 6; + $28 = (($20) + -128)|0; + $29 = $28 | $27; + $30 = ($29|0)<(0); + if (!($30)) { + HEAP32[$dummy$wc>>2] = $29; + $$0 = 2; + break L1; + } + $31 = ((($src)) + 2|0); + $32 = HEAP8[$31>>0]|0; + $33 = $32&255; + $34 = $33 & 192; + $35 = ($34|0)==(128); + if ($35) { + $36 = $29 << 6; + $37 = (($33) + -128)|0; + $38 = $37 | $36; + $39 = ($38|0)<(0); + if (!($39)) { + HEAP32[$dummy$wc>>2] = $38; + $$0 = 3; + break L1; + } + $40 = ((($src)) + 3|0); + $41 = HEAP8[$40>>0]|0; + $42 = $41&255; + $43 = $42 & 192; + $44 = ($43|0)==(128); + if ($44) { + $45 = $38 << 6; + $46 = (($42) + -128)|0; + $47 = $46 | $45; + HEAP32[$dummy$wc>>2] = $47; + $$0 = 4; + break L1; + } + } + } + } + } + } while(0); + $48 = (___errno_location()|0); + HEAP32[$48>>2] = 84; + $$0 = -1; + } + } while(0); + STACKTOP = sp;return ($$0|0); +} +function _fputs($s,$f) { + $s = $s|0; + $f = $f|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (_strlen($s)|0); + $1 = (_fwrite($s,$0,1,$f)|0); + $2 = (($1) + -1)|0; + return ($2|0); +} +function _fwrite($src,$size,$nmemb,$f) { + $src = $src|0; + $size = $size|0; + $nmemb = $nmemb|0; + $f = $f|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $phitmp = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = Math_imul($nmemb, $size)|0; + $1 = ((($f)) + 76|0); + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)>(-1); + if ($3) { + $5 = (___lockfile($f)|0); + $phitmp = ($5|0)==(0); + $6 = (___fwritex($src,$0,$f)|0); + if ($phitmp) { + $7 = $6; + } else { + ___unlockfile($f); + $7 = $6; + } + } else { + $4 = (___fwritex($src,$0,$f)|0); + $7 = $4; + } + $8 = ($7|0)==($0|0); + if ($8) { + $10 = $nmemb; + } else { + $9 = (($7>>>0) / ($size>>>0))&-1; + $10 = $9; + } + return ($10|0); +} +function _getpid() { + var $0 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = (___syscall20(20,($vararg_buffer|0))|0); + STACKTOP = sp;return ($0|0); +} +function _access($filename,$amode) { + $filename = $filename|0; + $amode = $amode|0; + var $0 = 0, $1 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + HEAP32[$vararg_buffer>>2] = $filename; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $amode; + $0 = (___syscall33(33,($vararg_buffer|0))|0); + $1 = (___syscall_ret($0)|0); + STACKTOP = sp;return ($1|0); +} +function _printf($fmt,$varargs) { + $fmt = $fmt|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $ap = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $ap = sp; + HEAP32[$ap>>2] = $varargs; + $0 = HEAP32[3933]|0; + $1 = (_vfprintf($0,$fmt,$ap)|0); + STACKTOP = sp;return ($1|0); +} +function _feof($f) { + $f = $f|0; + var $$lobit = 0, $$lobit1 = 0, $$lobit2 = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $phitmp = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ((($f)) + 76|0); + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)>(-1); + if ($2) { + $5 = (___lockfile($f)|0); + $phitmp = ($5|0)==(0); + $6 = HEAP32[$f>>2]|0; + $7 = $6 >>> 4; + $$lobit = $7 & 1; + if ($phitmp) { + $$lobit2 = $$lobit; + } else { + $$lobit2 = $$lobit; + } + } else { + $3 = HEAP32[$f>>2]|0; + $4 = $3 >>> 4; + $$lobit1 = $4 & 1; + $$lobit2 = $$lobit1; + } + return ($$lobit2|0); +} +function ___procfdname($buf,$fd) { + $buf = $buf|0; + $fd = $fd|0; + var $$01 = 0, $$lcssa = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i$13 = 0, $i$22 = 0, $j$04 = 0, $scevgep = 0, dest = 0; + var label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + dest=$buf; src=70522; stop=dest+15|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $0 = ($fd|0)==(0); + if ($0) { + $scevgep = ((($buf)) + 14|0); + HEAP8[$scevgep>>0] = 48; + $1 = ((($buf)) + 15|0); + HEAP8[$1>>0] = 0; + } else { + $i$13 = 14;$j$04 = $fd; + while(1) { + $2 = (($j$04>>>0) / 10)&-1; + $3 = (($i$13) + 1)|0; + $4 = ($j$04>>>0)<(10); + if ($4) { + $$lcssa = $3; + break; + } else { + $i$13 = $3;$j$04 = $2; + } + } + $5 = (($buf) + ($$lcssa)|0); + HEAP8[$5>>0] = 0; + $$01 = $fd;$i$22 = $$lcssa; + while(1) { + $6 = (($$01>>>0) % 10)&-1; + $7 = $6 | 48; + $8 = $7&255; + $9 = (($i$22) + -1)|0; + $10 = (($buf) + ($9)|0); + HEAP8[$10>>0] = $8; + $11 = (($$01>>>0) / 10)&-1; + $12 = ($$01>>>0)<(10); + if ($12) { + break; + } else { + $$01 = $11;$i$22 = $9; + } + } + } + return; +} +function _fstat($fd,$st) { + $fd = $fd|0; + $st = $st|0; + var $$0 = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $buf = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer6 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, $vararg_ptr9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer6 = sp + 16|0; + $vararg_buffer2 = sp + 8|0; + $vararg_buffer = sp; + $buf = sp + 24|0; + HEAP32[$vararg_buffer>>2] = $fd; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $st; + $0 = (___syscall197(197,($vararg_buffer|0))|0); + $1 = ($0|0)==(-9); + if ($1) { + HEAP32[$vararg_buffer2>>2] = $fd; + $vararg_ptr5 = ((($vararg_buffer2)) + 4|0); + HEAP32[$vararg_ptr5>>2] = 1; + $2 = (___syscall221(221,($vararg_buffer2|0))|0); + $3 = ($2|0)<(0); + if ($3) { + label = 3; + } else { + ___procfdname($buf,$fd); + HEAP32[$vararg_buffer6>>2] = $buf; + $vararg_ptr9 = ((($vararg_buffer6)) + 4|0); + HEAP32[$vararg_ptr9>>2] = $st; + $5 = (___syscall195(195,($vararg_buffer6|0))|0); + $6 = (___syscall_ret($5)|0); + $$0 = $6; + } + } else { + label = 3; + } + if ((label|0) == 3) { + $4 = (___syscall_ret($0)|0); + $$0 = $4; + } + STACKTOP = sp;return ($$0|0); +} +function _select($n,$rfds,$wfds,$efds,$tv) { + $n = $n|0; + $rfds = $rfds|0; + $wfds = $wfds|0; + $efds = $efds|0; + $tv = $tv|0; + var $0 = 0, $1 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + HEAP32[$vararg_buffer>>2] = $n; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $rfds; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $wfds; + $vararg_ptr3 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr3>>2] = $efds; + $vararg_ptr4 = ((($vararg_buffer)) + 16|0); + HEAP32[$vararg_ptr4>>2] = $tv; + $0 = (___syscall142(142,($vararg_buffer|0))|0); + $1 = (___syscall_ret($0)|0); + STACKTOP = sp;return ($1|0); +} +function _write($fd,$buf,$count) { + $fd = $fd|0; + $buf = $buf|0; + $count = $count|0; + var $0 = 0, $1 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + HEAP32[$vararg_buffer>>2] = $fd; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $buf; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $count; + $0 = (___syscall4(4,($vararg_buffer|0))|0); + $1 = (___syscall_ret($0)|0); + STACKTOP = sp;return ($1|0); +} +function _read($fd,$buf,$count) { + $fd = $fd|0; + $buf = $buf|0; + $count = $count|0; + var $0 = 0, $1 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + HEAP32[$vararg_buffer>>2] = $fd; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $buf; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $count; + $0 = (___syscall3(3,($vararg_buffer|0))|0); + $1 = (___syscall_ret($0)|0); + STACKTOP = sp;return ($1|0); +} +function _open($filename,$flags,$varargs) { + $filename = $filename|0; + $flags = $flags|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ap = 0, $arglist_current = 0, $arglist_next = 0, $expanded = 0, $expanded2 = 0, $expanded4 = 0, $expanded5 = 0, $expanded6 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0; + var $vararg_ptr2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $ap = sp + 16|0; + HEAP32[$ap>>2] = $varargs; + $arglist_current = HEAP32[$ap>>2]|0; + $0 = $arglist_current; + $1 = ((0) + 4|0); + $expanded2 = $1; + $expanded = (($expanded2) - 1)|0; + $2 = (($0) + ($expanded))|0; + $3 = ((0) + 4|0); + $expanded6 = $3; + $expanded5 = (($expanded6) - 1)|0; + $expanded4 = $expanded5 ^ -1; + $4 = $2 & $expanded4; + $5 = $4; + $6 = HEAP32[$5>>2]|0; + $arglist_next = ((($5)) + 4|0); + HEAP32[$ap>>2] = $arglist_next; + $7 = $flags | 32768; + HEAP32[$vararg_buffer>>2] = $filename; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $7; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $6; + $8 = (___syscall5(5,($vararg_buffer|0))|0); + $9 = (___syscall_ret($8)|0); + STACKTOP = sp;return ($9|0); +} +function _unlink($path) { + $path = $path|0; + var $0 = 0, $1 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + HEAP32[$vararg_buffer>>2] = $path; + $0 = (___syscall10(10,($vararg_buffer|0))|0); + $1 = (___syscall_ret($0)|0); + STACKTOP = sp;return ($1|0); +} +function ___setxid($nr,$id,$eid,$sid) { + $nr = $nr|0; + $id = $id|0; + $eid = $eid|0; + $sid = $sid|0; + var $$0 = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $c = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $c = sp; + HEAP32[$c>>2] = $id; + $0 = ((($c)) + 4|0); + HEAP32[$0>>2] = $eid; + $1 = ((($c)) + 8|0); + HEAP32[$1>>2] = $sid; + $2 = ((($c)) + 12|0); + HEAP32[$2>>2] = $nr; + $3 = ((($c)) + 16|0); + HEAP32[$3>>2] = 0; + $4 = ((($c)) + 20|0); + HEAP32[$4>>2] = 0; + switch ($nr|0) { + case 208: case 203: case 213: { + HEAP32[$3>>2] = 1; + break; + } + default: { + } + } + ___synccall(88,$c); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)==(0); + if ($6) { + $$0 = 0; + } else { + $7 = (___errno_location()|0); + HEAP32[$7>>2] = $5; + $$0 = -1; + } + STACKTOP = sp;return ($$0|0); +} +function _do_setxid($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $inf = 0, $old = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $inf = sp + 16|0; + $old = sp; + $0 = ((($p)) + 20|0); + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)==(0); + do { + if ($2) { + $3 = ((($p)) + 16|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)==(0); + if (!($5)) { + $6 = HEAP32[$p>>2]|0; + $7 = ($6|0)>(-1); + if ($7) { + $8 = (_getuid()|0); + $9 = ($6|0)==($8|0); + if (!($9)) { + ;HEAP32[$inf>>2]=HEAP32[720>>2]|0;HEAP32[$inf+4>>2]=HEAP32[720+4>>2]|0;HEAP32[$inf+8>>2]=HEAP32[720+8>>2]|0;HEAP32[$inf+12>>2]=HEAP32[720+12>>2]|0; + (_getrlimit(6,$old)|0); + $10 = (___setrlimit(6,$inf)|0); + $11 = (0 - ($10))|0; + HEAP32[$0>>2] = $11; + $12 = ($10|0)==(0); + if ($12) { + label = 7; + } else { + $13 = HEAP32[(71136)>>2]|0; + $14 = ($13|0)==(0); + if ($14) { + label = 7; + } + } + if ((label|0) == 7) { + HEAP32[$0>>2] = 1; + (___setrlimit(6,$old)|0); + } + break; + } + } + } + HEAP32[$0>>2] = 1; + } + } while(0); + STACKTOP = sp;return; +} +function _getuid() { + var $0 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = (___syscall199(199,($vararg_buffer|0))|0); + STACKTOP = sp;return ($0|0); +} +function _getrlimit($resource,$rlim) { + $resource = $resource|0; + $rlim = $rlim|0; + var $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $7 = 0, $8 = 0, $9 = 0, $k_rlim = 0, $vararg_buffer = 0, $vararg_buffer4 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer4 = sp + 16|0; + $vararg_buffer = sp; + $k_rlim = sp + 24|0; + HEAP32[$vararg_buffer>>2] = 0; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $resource; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = 0; + $vararg_ptr3 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr3>>2] = $rlim; + $0 = (___syscall340(340,($vararg_buffer|0))|0); + $1 = (___syscall_ret($0)|0); + $2 = ($1|0)==(0); + if ($2) { + $3 = $rlim; + $4 = $3; + $5 = HEAP32[$4>>2]|0; + $6 = (($3) + 4)|0; + $7 = $6; + $8 = HEAP32[$7>>2]|0; + $9 = ($5|0)==(-1); + $10 = ($8|0)==(-1); + $11 = $9 & $10; + if ($11) { + $12 = $rlim; + $13 = $12; + HEAP32[$13>>2] = -1; + $14 = (($12) + 4)|0; + $15 = $14; + HEAP32[$15>>2] = -1; + } + $16 = ((($rlim)) + 8|0); + $17 = $16; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (($17) + 4)|0; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = ($19|0)==(-1); + $24 = ($22|0)==(-1); + $25 = $23 & $24; + if ($25) { + $26 = $16; + $27 = $26; + HEAP32[$27>>2] = -1; + $28 = (($26) + 4)|0; + $29 = $28; + HEAP32[$29>>2] = -1; + $$0 = 0; + } else { + $$0 = 0; + } + } else { + $30 = (___errno_location()|0); + $31 = HEAP32[$30>>2]|0; + $32 = ($31|0)==(38); + if ($32) { + HEAP32[$vararg_buffer4>>2] = $resource; + $vararg_ptr7 = ((($vararg_buffer4)) + 4|0); + HEAP32[$vararg_ptr7>>2] = $k_rlim; + $33 = (___syscall191(191,($vararg_buffer4|0))|0); + $34 = (___syscall_ret($33)|0); + $35 = ($34|0)<(0); + if ($35) { + $$0 = -1; + } else { + $36 = HEAP32[$k_rlim>>2]|0; + $37 = ($36|0)==(-1); + $38 = $37 ? -1 : $36; + $39 = $37 ? -1 : 0; + $40 = $rlim; + $41 = $40; + HEAP32[$41>>2] = $38; + $42 = (($40) + 4)|0; + $43 = $42; + HEAP32[$43>>2] = $39; + $44 = ((($k_rlim)) + 4|0); + $45 = HEAP32[$44>>2]|0; + $46 = ($45|0)==(-1); + $47 = $46 ? -1 : $45; + $48 = $46 ? -1 : 0; + $49 = ((($rlim)) + 8|0); + $50 = $49; + $51 = $50; + HEAP32[$51>>2] = $47; + $52 = (($50) + 4)|0; + $53 = $52; + HEAP32[$53>>2] = $48; + if ($37) { + $54 = $rlim; + $55 = $54; + HEAP32[$55>>2] = -1; + $56 = (($54) + 4)|0; + $57 = $56; + HEAP32[$57>>2] = -1; + } + if ($46) { + $58 = $49; + $59 = $58; + HEAP32[$59>>2] = -1; + $60 = (($58) + 4)|0; + $61 = $60; + HEAP32[$61>>2] = -1; + $$0 = 0; + } else { + $$0 = 0; + } + } + } else { + $$0 = $1; + } + } + STACKTOP = sp;return ($$0|0); +} +function ___setrlimit($resource,$rlim) { + $resource = $resource|0; + $rlim = $rlim|0; + var $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $k_rlim = 0, $vararg_buffer = 0, $vararg_buffer4 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer4 = sp + 16|0; + $vararg_buffer = sp; + $k_rlim = sp + 24|0; + HEAP32[$vararg_buffer>>2] = 0; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $resource; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $rlim; + $vararg_ptr3 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr3>>2] = 0; + $0 = (___syscall340(340,($vararg_buffer|0))|0); + $1 = ($0|0)==(-38); + if ($1) { + $2 = $rlim; + $3 = $2; + $4 = HEAP32[$3>>2]|0; + $5 = (($2) + 4)|0; + $6 = $5; + $7 = HEAP32[$6>>2]|0; + $8 = ($7>>>0)<(0); + $9 = ($4>>>0)<(4294967295); + $10 = ($7|0)==(0); + $11 = $10 & $9; + $12 = $8 | $11; + $13 = $12 ? $4 : -1; + $12 ? $7 : 0; + HEAP32[$k_rlim>>2] = $13; + $14 = ((($rlim)) + 8|0); + $15 = $14; + $16 = $15; + $17 = HEAP32[$16>>2]|0; + $18 = (($15) + 4)|0; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + $21 = ($20>>>0)<(0); + $22 = ($17>>>0)<(4294967295); + $23 = ($20|0)==(0); + $24 = $23 & $22; + $25 = $21 | $24; + $26 = $25 ? $17 : -1; + $25 ? $20 : 0; + $27 = ((($k_rlim)) + 4|0); + HEAP32[$27>>2] = $26; + HEAP32[$vararg_buffer4>>2] = $resource; + $vararg_ptr7 = ((($vararg_buffer4)) + 4|0); + HEAP32[$vararg_ptr7>>2] = $k_rlim; + $28 = (___syscall75(75,($vararg_buffer4|0))|0); + $$0 = $28; + } else { + $$0 = $0; + } + STACKTOP = sp;return ($$0|0); +} +function ___synccall($func,$ctx) { + $func = $func|0; + $ctx = $ctx|0; + var label = 0, sp = 0; + sp = STACKTOP; + FUNCTION_TABLE_vi[$func & 127]($ctx); + return; +} +function _geteuid() { + var $0 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = (___syscall201(201,($vararg_buffer|0))|0); + STACKTOP = sp;return ($0|0); +} +function _setuid($uid) { + $uid = $uid|0; + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (___setxid(213,$uid,0,0)|0); + return ($0|0); +} +function _ftruncate($fd,$length) { + $fd = $fd|0; + $length = $length|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = ($length|0)<(0); + $1 = $0 << 31 >> 31; + HEAP32[$vararg_buffer>>2] = $fd; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = 0; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $length; + $vararg_ptr3 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr3>>2] = $1; + $2 = (___syscall194(194,($vararg_buffer|0))|0); + $3 = (___syscall_ret($2)|0); + STACKTOP = sp;return ($3|0); +} +function _getppid() { + var $0 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = (___syscall64(64,($vararg_buffer|0))|0); + STACKTOP = sp;return ($0|0); +} +function _dup2($old,$new) { + $old = $old|0; + $new = $new|0; + var $$lcssa = 0, $0 = 0, $1 = 0, $2 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + while(1) { + HEAP32[$vararg_buffer>>2] = $old; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $new; + $0 = (___syscall63(63,($vararg_buffer|0))|0); + $1 = ($0|0)==(-16); + if (!($1)) { + $$lcssa = $0; + break; + } + } + $2 = (___syscall_ret($$lcssa)|0); + STACKTOP = sp;return ($2|0); +} +function ___mmap($start,$len,$prot,$flags,$fd,$off) { + $start = $start|0; + $len = $len|0; + $prot = $prot|0; + $flags = $flags|0; + $fd = $fd|0; + $off = $off|0; + var $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0; + var $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + $0 = ($off|0)<(0); + $1 = $0 << 31 >> 31; + $2 = $off & 4095; + $3 = $1 & -4096; + $4 = ($2|0)==(0); + $5 = ($3|0)==(0); + $6 = $4 & $5; + do { + if ($6) { + $8 = ($len>>>0)>(2147483646); + if ($8) { + $9 = (___errno_location()|0); + HEAP32[$9>>2] = 12; + $$0 = (-1); + break; + } + $10 = $flags & 16; + $11 = ($10|0)!=(0); + if ($11) { + _dummy1(-1); + } + $12 = $off >> 12; + HEAP32[$vararg_buffer>>2] = $start; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $len; + $vararg_ptr2 = ((($vararg_buffer)) + 8|0); + HEAP32[$vararg_ptr2>>2] = $prot; + $vararg_ptr3 = ((($vararg_buffer)) + 12|0); + HEAP32[$vararg_ptr3>>2] = $flags; + $vararg_ptr4 = ((($vararg_buffer)) + 16|0); + HEAP32[$vararg_ptr4>>2] = $fd; + $vararg_ptr5 = ((($vararg_buffer)) + 20|0); + HEAP32[$vararg_ptr5>>2] = $12; + $13 = (___syscall192(192,($vararg_buffer|0))|0); + $14 = (___syscall_ret($13)|0); + $15 = $14; + if ($11) { + _dummy0(); + $$0 = $15; + } else { + $$0 = $15; + } + } else { + $7 = (___errno_location()|0); + HEAP32[$7>>2] = 22; + $$0 = (-1); + } + } while(0); + STACKTOP = sp;return ($$0|0); +} +function _dummy1($x) { + $x = $x|0; + var label = 0, sp = 0; + sp = STACKTOP; + return; +} +function _dummy0() { + var label = 0, sp = 0; + sp = STACKTOP; + return; +} +function ___munmap($start,$len) { + $start = $start|0; + $len = $len|0; + var $0 = 0, $1 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + _dummy1(-1); + HEAP32[$vararg_buffer>>2] = $start; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $len; + $0 = (___syscall91(91,($vararg_buffer|0))|0); + $1 = (___syscall_ret($0)|0); + _dummy0(); + STACKTOP = sp;return ($1|0); +} +function _srand($s) { + $s = $s|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (($s) + -1)|0; + $1 = 70568; + $2 = $1; + HEAP32[$2>>2] = $0; + $3 = (($1) + 4)|0; + $4 = $3; + HEAP32[$4>>2] = 0; + return; +} +function _rand() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = 70568; + $1 = $0; + $2 = HEAP32[$1>>2]|0; + $3 = (($0) + 4)|0; + $4 = $3; + $5 = HEAP32[$4>>2]|0; + $6 = (___muldi3(($2|0),($5|0),1284865837,1481765933)|0); + $7 = tempRet0; + $8 = (_i64Add(($6|0),($7|0),1,0)|0); + $9 = tempRet0; + $10 = 70568; + $11 = $10; + HEAP32[$11>>2] = $8; + $12 = (($10) + 4)|0; + $13 = $12; + HEAP32[$13>>2] = $9; + $14 = (_bitshift64Lshr(($8|0),($9|0),33)|0); + $15 = tempRet0; + return ($14|0); +} +function _srandom($seed) { + $seed = $seed|0; + var label = 0, sp = 0; + sp = STACKTOP; + ___lock((71168|0)); + ___srandom($seed); + ___unlock((71168|0)); + return; +} +function ___srandom($seed) { + $seed = $seed|0; + var $$pre = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $k$01 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP32[4093]|0; + $1 = ($0|0)==(0); + if ($1) { + $2 = HEAP32[4094]|0; + HEAP32[$2>>2] = $seed; + } else { + $3 = ($0|0)==(31); + $4 = ($0|0)==(7); + $5 = $3 | $4; + $6 = $5 ? 3 : 1; + HEAP32[4127] = $6; + HEAP32[17794] = 0; + $7 = ($0|0)>(0); + if ($7) { + $8 = HEAP32[4094]|0; + $10 = 0;$9 = $seed;$k$01 = 0; + while(1) { + $11 = (___muldi3(($9|0),($10|0),1284865837,1481765933)|0); + $12 = tempRet0; + $13 = (_i64Add(($11|0),($12|0),1,0)|0); + $14 = tempRet0; + $15 = (($8) + ($k$01<<2)|0); + HEAP32[$15>>2] = $14; + $16 = (($k$01) + 1)|0; + $17 = ($16|0)<($0|0); + if ($17) { + $10 = $14;$9 = $13;$k$01 = $16; + } else { + $19 = $8; + break; + } + } + } else { + $$pre = HEAP32[4094]|0; + $19 = $$pre; + } + $18 = HEAP32[$19>>2]|0; + $20 = $18 | 1; + HEAP32[$19>>2] = $20; + } + return; +} +function _random() { + var $$ = 0, $$1 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $k$0 = 0, label = 0, sp = 0; + sp = STACKTOP; + ___lock((71168|0)); + $0 = HEAP32[4093]|0; + $1 = ($0|0)==(0); + if ($1) { + $2 = HEAP32[4094]|0; + $3 = HEAP32[$2>>2]|0; + $4 = Math_imul($3, 1103515245)|0; + $5 = (($4) + 12345)|0; + $6 = $5 & 2147483647; + HEAP32[$2>>2] = $6; + $k$0 = $6; + } else { + $7 = HEAP32[17794]|0; + $8 = HEAP32[4094]|0; + $9 = (($8) + ($7<<2)|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[4127]|0; + $12 = (($8) + ($11<<2)|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + ($10))|0; + HEAP32[$12>>2] = $14; + $15 = $14 >>> 1; + $16 = (($11) + 1)|0; + $17 = ($16|0)==($0|0); + $$ = $17 ? 0 : $16; + HEAP32[4127] = $$; + $18 = (($7) + 1)|0; + $19 = ($18|0)==($0|0); + $$1 = $19 ? 0 : $18; + HEAP32[17794] = $$1; + $k$0 = $15; + } + ___unlock((71168|0)); + return ($k$0|0); +} +function _atoi($s) { + $s = $s|0; + var $$0 = 0, $$0$lcssa = 0, $$1$ph = 0, $$13 = 0, $$lcssa9 = 0, $$pre = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $isdigit = 0, $isdigit2 = 0, $isdigittmp = 0, $isdigittmp1 = 0, $isdigittmp5 = 0, $n$0$lcssa = 0, $n$04 = 0, $neg$0 = 0, $neg$1$ph = 0, label = 0, sp = 0; + sp = STACKTOP; + $$0 = $s; + while(1) { + $0 = HEAP8[$$0>>0]|0; + $1 = $0 << 24 >> 24; + $2 = (_isspace($1)|0); + $3 = ($2|0)==(0); + $4 = ((($$0)) + 1|0); + if ($3) { + $$0$lcssa = $$0;$$lcssa9 = $4; + break; + } else { + $$0 = $4; + } + } + $5 = HEAP8[$$0$lcssa>>0]|0; + $6 = $5 << 24 >> 24; + switch ($6|0) { + case 45: { + $neg$0 = 1; + label = 5; + break; + } + case 43: { + $neg$0 = 0; + label = 5; + break; + } + default: { + $$1$ph = $$0$lcssa;$8 = $5;$neg$1$ph = 0; + } + } + if ((label|0) == 5) { + $$pre = HEAP8[$$lcssa9>>0]|0; + $$1$ph = $$lcssa9;$8 = $$pre;$neg$1$ph = $neg$0; + } + $7 = $8 << 24 >> 24; + $isdigittmp1 = (($7) + -48)|0; + $isdigit2 = ($isdigittmp1>>>0)<(10); + if ($isdigit2) { + $$13 = $$1$ph;$isdigittmp5 = $isdigittmp1;$n$04 = 0; + while(1) { + $9 = ($n$04*10)|0; + $10 = ((($$13)) + 1|0); + $11 = (($9) - ($isdigittmp5))|0; + $12 = HEAP8[$10>>0]|0; + $13 = $12 << 24 >> 24; + $isdigittmp = (($13) + -48)|0; + $isdigit = ($isdigittmp>>>0)<(10); + if ($isdigit) { + $$13 = $10;$isdigittmp5 = $isdigittmp;$n$04 = $11; + } else { + $n$0$lcssa = $11; + break; + } + } + } else { + $n$0$lcssa = 0; + } + $14 = ($neg$1$ph|0)!=(0); + $15 = (0 - ($n$0$lcssa))|0; + $16 = $14 ? $n$0$lcssa : $15; + return ($16|0); +} +function _getrusage($who,$ru) { + $who = $who|0; + $ru = $ru|0; + var $0 = 0, $1 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $vararg_buffer = sp; + HEAP32[$vararg_buffer>>2] = $who; + $vararg_ptr1 = ((($vararg_buffer)) + 4|0); + HEAP32[$vararg_ptr1>>2] = $ru; + $0 = (___syscall77(77,($vararg_buffer|0))|0); + $1 = (___syscall_ret($0)|0); + STACKTOP = sp;return ($1|0); +} +function _strrchr($s,$c) { + $s = $s|0; + $c = $c|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (_strlen($s)|0); + $1 = (($0) + 1)|0; + $2 = (___memrchr($s,$c,$1)|0); + return ($2|0); +} +function ___memrchr($m,$c,$n) { + $m = $m|0; + $c = $c|0; + $n = $n|0; + var $$0 = 0, $$01 = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = $c&255; + $$01 = $n; + while(1) { + $1 = (($$01) + -1)|0; + $2 = ($$01|0)==(0); + if ($2) { + $$0 = 0; + break; + } + $3 = (($m) + ($1)|0); + $4 = HEAP8[$3>>0]|0; + $5 = ($4<<24>>24)==($0<<24>>24); + if ($5) { + $$0 = $3; + break; + } else { + $$01 = $1; + } + } + return ($$0|0); +} +function _isdigit($c) { + $c = $c|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (($c) + -48)|0; + $1 = ($0>>>0)<(10); + $2 = $1&1; + return ($2|0); +} +function ___tre_mem_new_impl($provided,$provided_block) { + $provided = $provided|0; + $provided_block = $provided_block|0; + var $0 = 0, $1 = 0, $mem$0$in = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($provided|0)==(0); + if ($0) { + $1 = (_calloc(1,24)|0); + $mem$0$in = $1; + } else { + ;HEAP32[$provided_block>>2]=0|0;HEAP32[$provided_block+4>>2]=0|0;HEAP32[$provided_block+8>>2]=0|0;HEAP32[$provided_block+12>>2]=0|0;HEAP32[$provided_block+16>>2]=0|0;HEAP32[$provided_block+20>>2]=0|0; + $mem$0$in = $provided_block; + } + return ($mem$0$in|0); +} +function ___tre_mem_destroy($mem) { + $mem = $mem|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $l$01 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP32[$mem>>2]|0; + $1 = ($0|0)==(0|0); + if (!($1)) { + $l$01 = $0; + while(1) { + $2 = HEAP32[$l$01>>2]|0; + _free($2); + $3 = ((($l$01)) + 4|0); + $4 = HEAP32[$3>>2]|0; + _free($l$01); + $5 = ($4|0)==(0|0); + if ($5) { + break; + } else { + $l$01 = $4; + } + } + } + _free($mem); + return; +} +function ___tre_mem_alloc_impl($mem,$provided,$provided_block,$zero,$size) { + $mem = $mem|0; + $provided = $provided|0; + $provided_block = $provided_block|0; + $zero = $zero|0; + $size = $size|0; + var $$ = 0, $$3 = 0, $$4 = 0, $$phi$trans$insert = 0, $$pre = 0, $$pre$phiZ2D = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ((($mem)) + 16|0); + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)==(0); + L1: do { + if ($2) { + $3 = ((($mem)) + 12|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4>>>0)<($size>>>0); + do { + if ($5) { + $7 = ($provided|0)==(0); + if (!($7)) { + $8 = ($provided_block|0)==(0|0); + if ($8) { + HEAP32[$0>>2] = 1; + $$3 = 0; + break L1; + } else { + $9 = ((($mem)) + 8|0); + HEAP32[$9>>2] = $provided_block; + HEAP32[$3>>2] = 1024; + $10 = $provided_block; + $$pre$phiZ2D = $9;$27 = $10;$33 = $provided_block;$35 = 1024; + break; + } + } + $11 = $size << 3; + $12 = ($11>>>0)>(1024); + $$ = $12 ? $11 : 1024; + $13 = (_malloc(8)|0); + $14 = ($13|0)==(0|0); + if ($14) { + HEAP32[$0>>2] = 1; + $$3 = 0; + break L1; + } + $15 = (_malloc($$)|0); + HEAP32[$13>>2] = $15; + $16 = ($15|0)==(0|0); + $17 = $15; + if ($16) { + _free($13); + HEAP32[$0>>2] = 1; + $$3 = 0; + break L1; + } + $18 = ((($13)) + 4|0); + HEAP32[$18>>2] = 0; + $19 = ((($mem)) + 4|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)==(0|0); + if (!($21)) { + $22 = ((($20)) + 4|0); + HEAP32[$22>>2] = $13; + } + $23 = HEAP32[$mem>>2]|0; + $24 = ($23|0)==(0|0); + if ($24) { + HEAP32[$mem>>2] = $13; + } + HEAP32[$19>>2] = $13; + $25 = ((($mem)) + 8|0); + HEAP32[$25>>2] = $17; + HEAP32[$3>>2] = $$; + $$pre$phiZ2D = $25;$27 = $17;$33 = $15;$35 = $$; + } else { + $$phi$trans$insert = ((($mem)) + 8|0); + $$pre = HEAP32[$$phi$trans$insert>>2]|0; + $6 = $$pre; + $$pre$phiZ2D = $$phi$trans$insert;$27 = $$pre;$33 = $6;$35 = $4; + } + } while(0); + $26 = (($27) + ($size))|0; + $28 = $26 & 3; + $29 = ($28|0)==(0); + $30 = (4 - ($28))|0; + $$4 = $29 ? 0 : $30; + $31 = (($$4) + ($size))|0; + $32 = (($33) + ($31)|0); + HEAP32[$$pre$phiZ2D>>2] = $32; + $34 = (($35) - ($31))|0; + HEAP32[$3>>2] = $34; + $36 = ($zero|0)==(0); + if ($36) { + $$3 = $33; + } else { + _memset(($33|0),0,($31|0))|0; + $$3 = $33; + } + } else { + $$3 = 0; + } + } while(0); + return ($$3|0); +} +function _regexec($preg,$string,$nmatch,$pmatch,$eflags) { + $preg = $preg|0; + $string = $string|0; + $nmatch = $nmatch|0; + $pmatch = $pmatch|0; + $eflags = $eflags|0; + var $$$i = 0, $$$i4 = 0, $$0 = 0, $$1$i = 0, $$15$i = 0, $$52$i = 0, $$554$i = 0, $$lcssa = 0, $$lcssa133 = 0, $$lcssa138 = 0, $$not$i = 0, $$not176$i = 0, $$old$i = 0, $$old$i15 = 0, $$old11$i = 0, $$old34$i = 0, $$old35$i = 0, $$old37$i = 0, $$old38$i = 0, $$old46$i = 0; + var $$old47$i = 0, $$old8$i = 0, $$pre$i = 0, $$pre$i16 = 0, $$pre$phi212$iZ2D = 0, $$pre$phi214$iZ2D = 0, $$pre174$i = 0, $$pre176$i = 0, $$pre177$i = 0, $$pre178$i = 0, $$pre182$i = 0, $$pre183$i = 0, $$pre184$i = 0, $$pre186$i = 0, $$pre201$i = 0, $$pre202$i = 0, $$pre204$i = 0, $$pre206$i = 0, $$pre207$i = 0, $$pre208$i = 0; + var $$pre210$i = 0, $$pre213$i = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0; + var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0; + var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0; + var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0; + var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0; + var $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0; + var $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0; + var $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0; + var $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0; + var $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0; + var $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0; + var $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0; + var $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0; + var $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0; + var $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0; + var $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0; + var $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0; + var $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0; + var $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0; + var $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0; + var $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0; + var $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0; + var $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0; + var $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0; + var $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0; + var $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0; + var $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0; + var $583 = 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0; + var $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0; + var $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0; + var $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0; + var $655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0; + var $673 = 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0; + var $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0; + var $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0; + var $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0; + var $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0; + var $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0; + var $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0; + var $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0; + var $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; + var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $brmerge$i = 0, $brmerge$i14 = 0, $brmerge159$i = 0, $brmerge162$i = 0, $brmerge163$i = 0, $brmerge169$i = 0, $brmerge172$i = 0; + var $brmerge173$i = 0, $brmerge177$i = 0, $eo$0 = 0, $eo$1 = 0, $eo$2 = 0, $eo$3 = 0, $eo$4 = 0, $exitcond = 0, $exitcond193$i = 0, $exitcond194$i = 0, $exitcond195$i = 0, $exitcond74 = 0, $exitcond75 = 0, $i$0105$i = 0, $i$0165$i = 0, $i$1163$i = 0, $i$399$i = 0, $i$4116$i = 0, $i$5125$i = 0, $i$6132$i = 0; + var $i$7130$i = 0, $i1$0110$i = 0, $i10$0130$i = 0, $i3$0157$i = 0, $i5$0134$i = 0, $match_eo$0$i = 0, $match_eo$0$i8 = 0, $match_eo$1$i = 0, $match_eo$1$ph$lcssa$i = 0, $match_eo$1$ph108$i = 0, $match_eo$1$ph109$mux$i = 0, $match_eo$10$i = 0, $match_eo$10$lobit$i = 0, $match_eo$2$i = 0, $match_eo$2$i21 = 0, $match_eo$3$i = 0, $match_eo$4$i = 0, $match_eo$4$i$lcssa149 = 0, $match_eo$4$i23 = 0, $match_eo$4$lobit$i = 0; + var $match_eo$5$lcssa$i = 0, $match_eo$5155$i = 0, $match_eo$6$lcssa$i = 0, $match_eo$6135$i = 0, $match_eo$7$i = 0, $match_eo$9$i = 0, $new_match$0$i = 0, $new_match$1$ph$lcssa$i = 0, $new_match$1$ph110$i = 0, $new_match$1$ph111$mux$i = 0, $new_match$10$i = 0, $new_match$2$i = 0, $new_match$3$i = 0, $new_match$4$i = 0, $new_match$5$i = 0, $new_match$6$lcssa$i = 0, $new_match$6156$i = 0, $new_match$7$lcssa$i = 0, $new_match$7138$i = 0, $new_match$8$i = 0; + var $next_c$i = 0, $next_c$i3 = 0, $next_state$0147$i = 0, $next_state$1$i = 0, $next_state$1$i$lcssa = 0, $next_tags$0117$i = 0, $next_tags$1$i = 0, $next_tags$1$i$lcssa = 0, $next_tags$10$i = 0, $next_tags$2127$i = 0, $next_tags$3$i = 0, $next_tags$4$i = 0, $next_tags$5142$i = 0, $next_tags$5142$i$lcssa = 0, $next_tags$5142$i$lcssa146 = 0, $next_tags$6$i = 0, $next_tags$6$i$lcssa = 0, $next_tags$7154$i = 0, $next_tags$8$i = 0, $nmatch$ = 0; + var $notlhs166$i = 0, $notlhs180$i = 0, $notrhs$i = 0, $notrhs$i26 = 0, $notrhs167$i = 0, $notrhs181$i = 0, $num_tags$0$i = 0, $or$cond = 0, $or$cond$not$i = 0, $or$cond$not$i12 = 0, $or$cond10$i = 0, $or$cond12$i = 0, $or$cond12$i17 = 0, $or$cond15$i = 0, $or$cond15$i18 = 0, $or$cond161$i = 0, $or$cond165$i = 0, $or$cond171$i = 0, $or$cond175$i = 0, $or$cond18$i = 0; + var $or$cond18$i20 = 0, $or$cond21$i = 0, $or$cond21$i25 = 0, $or$cond24$i = 0, $or$cond24$not$i = 0, $or$cond27$i = 0, $or$cond27$not$i = 0, $or$cond3$i = 0, $or$cond30$i = 0, $or$cond33$i = 0, $or$cond36$i = 0, $or$cond36$i28 = 0, $or$cond39$i = 0, $or$cond39$i29 = 0, $or$cond42$i = 0, $or$cond42$i30 = 0, $or$cond45$i = 0, $or$cond45$i32 = 0, $or$cond48$i = 0, $or$cond48$i22 = 0; + var $or$cond58$i = 0, $or$cond6$i = 0, $or$cond7$i = 0, $or$cond9$i = 0, $pmatch$0$i = 0, $pmatch$1$i = 0, $pos$0$i = 0, $pos$0$i10 = 0, $pos$2$i = 0, $pos$3$i = 0, $pos$5$i = 0, $pos_add_next$0$i = 0, $pos_add_next$0$i6 = 0, $pos_add_next$1$i = 0, $pos_add_next$1$i9 = 0, $pos_add_next$2$i = 0, $pos_add_next$2$i24 = 0, $pos_add_next$3$i = 0, $pos_add_next$5$i = 0, $pos_add_next$6$i = 0; + var $pos_add_next$7$i = 0, $pos_add_next$9$i = 0, $pos_start$0$i = 0, $prev_c$0$i = 0, $prev_c$2$i = 0, $reach$1$i = 0, $reach$2$i = 0, $reach_i$0119$i = 0, $reach_i$1153$i = 0, $reach_next$1$i = 0, $reach_next$2$i = 0, $reach_next_i$0$i = 0, $reach_next_i$1$ph$lcssa$i = 0, $reach_next_i$1$ph101$i = 0, $reach_next_i$2$i = 0, $reach_next_i$3$lcssa$i = 0, $reach_next_i$3121$i = 0, $reach_next_i$4$i = 0, $reach_next_i$5$lcssa$i = 0, $reach_next_i$5154$i = 0; + var $reach_next_i$6$lcssa$i = 0, $reach_next_i$6134$i = 0, $reach_next_i$7$i = 0, $ret$0$i = 0, $ret$7$i = 0, $smax$i = 0, $stack$0$i = 0, $stack$11$i = 0, $stack$11$i$lcssa = 0, $stack$1118$i = 0, $stack$12$i = 0, $stack$14$i = 0, $stack$3$i = 0, $stack$5$i = 0, $stack$5$i$lcssa = 0, $stack$6$i = 0, $stack$7143$i = 0, $stack$7143$i$lcssa = 0, $stack$7143$i$lcssa144 = 0, $stack$9$i = 0; + var $state$0116$i = 0, $state$1$i = 0, $state$1$i$lcssa = 0, $state$2$i = 0, $state$3$i = 0, $state$5$i = 0, $states_seen$0$ph$i = 0, $states_seen$1$i = 0, $status$0 = 0, $str_byte$0$i = 0, $str_byte$0$i11 = 0, $str_byte$1$i = 0, $str_byte$3$i = 0, $str_byte$4$i = 0, $str_byte$6$i = 0, $tag_i$097$i = 0, $tag_i$1128$i = 0, $tags$0 = 0, $tags$0$i = 0, $tags$1$i = 0; + var $tmp$0114$i = 0, $tmp$i = 0, $tmp$i31 = 0, $tmp51$i = 0, $tmp55$i = 0, $tmp9$0138$i54 = 0, $tmp_buf$0166$i = 0, $tmp_tags$1$i = 0, $tmp_tags$2$lcssa$i = 0, $tmp_tags$2157$i = 0, $tmp_tags$3$lcssa$i = 0, $tmp_tags$4$i = 0, $trans_i$0$ph112$i = 0, $trans_i$0120$i = 0, $trans_i$085$i = 0, $trans_i$085$i$lcssa135 = 0, $trans_i$085$i137 = 0, $trans_i$1144$i = 0, $trans_i$1144$i27 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort(); + $next_c$i3 = sp + 4|0; + $next_c$i = sp; + $0 = ((($preg)) + 4|0); + $1 = HEAP32[$0>>2]|0; + $2 = ((($1)) + 56|0); + $3 = HEAP32[$2>>2]|0; + $4 = $3 & 8; + $5 = ($4|0)==(0); + $nmatch$ = $5 ? $nmatch : 0; + $6 = ((($1)) + 40|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)>(0); + $9 = ($nmatch$|0)!=(0); + $or$cond = $8 & $9; + if ($or$cond) { + $10 = $7 << 2; + $11 = (_malloc($10)|0); + $12 = ($11|0)==(0|0); + if ($12) { + $$0 = 12; + } else { + $tags$0 = $11; + label = 3; + } + } else { + $tags$0 = 0; + label = 3; + } + if ((label|0) == 3) { + $13 = ((($1)) + 60|0); + $14 = HEAP32[$13>>2]|0; + $15 = ($14|0)==(0); + if ($15) { + HEAP32[$next_c$i3>>2] = 0; + $442 = $eflags & 1; + $443 = $eflags & 2; + $444 = HEAP32[$2>>2]|0; + $445 = $444 & 4; + $446 = ($tags$0|0)==(0|0); + if ($446) { + $num_tags$0$i = 0; + } else { + $447 = HEAP32[$6>>2]|0; + $num_tags$0$i = $447; + } + $448 = $num_tags$0$i << 2; + $449 = ((($1)) + 52|0); + $450 = HEAP32[$449>>2]|0; + $451 = $450 << 3; + $452 = (($451) + 8)|0; + $453 = Math_imul($448, $450)|0; + $454 = (($452) + ($453))|0; + $455 = $454 << 1; + $456 = (($448) + 12)|0; + $457 = (($456) + ($451))|0; + $458 = (($457) + ($455))|0; + $459 = (_malloc($458)|0); + $460 = ($459|0)==(0|0); + if ($460) { + $$1$i = 12;$eo$3 = 0; + } else { + _memset(($459|0),0,($458|0))|0; + $461 = (($459) + ($448)|0); + $462 = $461; + $463 = $462 & 3; + $464 = ($463|0)==(0); + $465 = (4 - ($463))|0; + $$$i4 = $464 ? 0 : $465; + $466 = (($461) + ($$$i4)|0); + $467 = (($466) + ($452)|0); + $468 = $467; + $469 = $468 & 3; + $470 = ($469|0)==(0); + $471 = (4 - ($469))|0; + $472 = $470 ? 0 : $471; + $473 = (($467) + ($472)|0); + $474 = (($473) + ($452)|0); + $475 = $474; + $476 = $475 & 3; + $477 = ($476|0)==(0); + $478 = (4 - ($476))|0; + $$52$i = $477 ? 0 : $478; + $479 = (($474) + ($$52$i)|0); + $480 = (($479) + ($451)|0); + $481 = $480; + $482 = $481 & 3; + $483 = ($450|0)>(0); + if ($483) { + $484 = ($482|0)==(0); + $485 = (4 - ($482))|0; + $486 = $484 ? 0 : $485; + $487 = (($480) + ($486)|0); + $i$0165$i = 0;$tmp_buf$0166$i = $487; + while(1) { + $488 = (((($473) + ($i$0165$i<<3)|0)) + 4|0); + HEAP32[$488>>2] = $tmp_buf$0166$i; + $489 = (($tmp_buf$0166$i) + ($448)|0); + $490 = (((($466) + ($i$0165$i<<3)|0)) + 4|0); + HEAP32[$490>>2] = $489; + $491 = (($489) + ($448)|0); + $492 = (($i$0165$i) + 1)|0; + $exitcond74 = ($492|0)==($450|0); + if ($exitcond74) { + $i$1163$i = 0; + break; + } else { + $i$0165$i = $492;$tmp_buf$0166$i = $491; + } + } + while(1) { + $493 = (($479) + ($i$1163$i<<3)|0); + HEAP32[$493>>2] = -1; + $494 = (($i$1163$i) + 1)|0; + $exitcond = ($494|0)==($450|0); + if ($exitcond) { + break; + } else { + $i$1163$i = $494; + } + } + } + $495 = (_mbtowc($next_c$i3,$string,4)|0); + $496 = ($495|0)<(1); + if ($496) { + $497 = ($495|0)<(0); + if ($497) { + $eo$2 = 0;$ret$0$i = 1; + } else { + $pos_add_next$0$i6 = 1; + label = 201; + } + } else { + $pos_add_next$0$i6 = $495; + label = 201; + } + L21: do { + if ((label|0) == 201) { + $498 = (($string) + ($pos_add_next$0$i6)|0); + $499 = ((($1)) + 8|0); + $500 = ($445|0)!=(0); + $501 = ($num_tags$0$i|0)>(0); + $502 = ((($1)) + 12|0); + $503 = ((($1)) + 44|0); + $504 = ((($1)) + 32|0); + $505 = ((($1)) + 36|0); + $506 = ($num_tags$0$i|0)==(0); + $notlhs180$i = ($442|0)==(0); + $$not176$i = ($num_tags$0$i|0)<(1); + $match_eo$0$i8 = -1;$new_match$0$i = 0;$pos$0$i10 = 0;$pos_add_next$1$i9 = $pos_add_next$0$i6;$prev_c$0$i = 0;$reach$1$i = $473;$reach_next$1$i = $466;$reach_next_i$0$i = $466;$str_byte$0$i11 = $498;$tmp_tags$1$i = $459; + while(1) { + $507 = ($match_eo$0$i8|0)<(0); + if ($507) { + $508 = HEAP32[$499>>2]|0; + $509 = ((($508)) + 8|0); + $510 = HEAP32[$509>>2]|0; + $511 = ($510|0)==(0|0); + L27: do { + if ($511) { + $match_eo$1$ph$lcssa$i = $match_eo$0$i8;$new_match$1$ph$lcssa$i = $new_match$0$i;$reach_next_i$1$ph$lcssa$i = $reach_next_i$0$i; + } else { + $512 = ($pos$0$i10|0)!=(0); + $513 = ($prev_c$0$i|0)==(95); + $514 = ($pos$0$i10|0)==(0); + $515 = ($prev_c$0$i|0)==(10); + $or$cond3$i = $500 & $515; + $notrhs181$i = ($pos$0$i10|0)<(1); + $or$cond$not$i12 = $notlhs180$i & $notrhs181$i; + $829 = $509;$match_eo$1$ph108$i = $match_eo$0$i8;$new_match$1$ph110$i = $new_match$0$i;$reach_next_i$1$ph101$i = $reach_next_i$0$i;$trans_i$0$ph112$i = $508; + while(1) { + $830 = $829;$trans_i$085$i = $trans_i$0$ph112$i; + L31: while(1) { + $516 = ((($trans_i$085$i)) + 12|0); + $517 = HEAP32[$516>>2]|0; + $518 = (($479) + ($517<<3)|0); + $519 = HEAP32[$518>>2]|0; + $520 = ($519|0)<($pos$0$i10|0); + if (!($520)) { + $match_eo$3$i = $match_eo$1$ph108$i;$new_match$3$i = $new_match$1$ph110$i;$reach_next_i$2$i = $reach_next_i$1$ph101$i;$trans_i$085$i137 = $trans_i$085$i; + break; + } + $521 = ((($trans_i$085$i)) + 20|0); + $522 = HEAP32[$521>>2]|0; + $523 = ($522|0)==(0); + if ($523) { + $$lcssa133 = $830;$$lcssa138 = $516;$trans_i$085$i$lcssa135 = $trans_i$085$i; + label = 236; + break; + } + $524 = $522 & 1; + $525 = ($524|0)==(0); + $brmerge$i14 = $or$cond$not$i12 | $525; + $brmerge169$i = $or$cond3$i | $brmerge$i14; + L35: do { + if ($brmerge169$i) { + $526 = $522 & 2; + $527 = ($526|0)==(0); + if (!($527)) { + $528 = HEAP32[$next_c$i3>>2]|0; + $529 = $528 | $443; + $530 = ($529|0)==(0); + $531 = ($528|0)==(10); + $or$cond7$i = $500 & $531; + $or$cond171$i = $530 | $or$cond7$i; + if (!($or$cond171$i)) { + break; + } + } + $532 = $522 & 16; + $533 = ($532|0)==(0); + do { + if (!($533)) { + if ($513) { + break L35; + } + $534 = (_iswalnum($prev_c$0$i)|0); + $535 = ($534|0)==(0); + if (!($535)) { + break L35; + } + $536 = HEAP32[$next_c$i3>>2]|0; + $537 = ($536|0)==(95); + if ($537) { + break; + } + $538 = (_iswalnum($536)|0); + $539 = ($538|0)==(0); + if ($539) { + break L35; + } + } + } while(0); + $540 = HEAP32[$521>>2]|0; + $541 = $540 & 32; + $542 = ($541|0)==(0); + if ($542) { + $551 = $540; + } else { + if ($513) { + $$old$i15 = HEAP32[$next_c$i3>>2]|0; + $$old8$i = ($$old$i15|0)==(95); + if ($$old8$i) { + break; + } else { + $547 = $$old$i15; + } + } else { + $543 = (_iswalnum($prev_c$0$i)|0); + $544 = ($543|0)==(0); + $545 = HEAP32[$next_c$i3>>2]|0; + $546 = ($545|0)==(95); + $or$cond9$i = $544 | $546; + if ($or$cond9$i) { + break; + } else { + $547 = $545; + } + } + $548 = (_iswalnum($547)|0); + $549 = ($548|0)==(0); + if (!($549)) { + break; + } + $$pre$i16 = HEAP32[$521>>2]|0; + $551 = $$pre$i16; + } + $550 = $551 & 64; + $552 = ($550|0)!=(0); + $or$cond12$i17 = $512 & $552; + $553 = HEAP32[$next_c$i3>>2]|0; + $554 = ($553|0)!=(0); + $or$cond15$i18 = $554 & $or$cond12$i17; + do { + if ($or$cond15$i18) { + if ($513) { + $557 = $553;$561 = 1; + } else { + $555 = (_iswalnum($prev_c$0$i)|0); + $556 = ($555|0)!=(0); + $$pre201$i = HEAP32[$next_c$i3>>2]|0; + $557 = $$pre201$i;$561 = $556; + } + $558 = ($557|0)==(95); + if ($558) { + if ($561) { + break L35; + } else { + break; + } + } else { + $559 = (_iswalnum($557)|0); + $560 = ($559|0)!=(0); + $tmp51$i = $561 ^ $560; + if ($tmp51$i) { + break; + } else { + break L35; + } + } + } + } while(0); + $562 = HEAP32[$521>>2]|0; + $563 = $562 & 128; + $564 = ($563|0)==(0); + if ($564) { + $$lcssa133 = $830;$$lcssa138 = $516;$trans_i$085$i$lcssa135 = $trans_i$085$i; + label = 236; + break L31; + } + $565 = HEAP32[$next_c$i3>>2]|0; + $566 = ($565|0)==(0); + $or$cond18$i20 = $514 | $566; + if ($or$cond18$i20) { + break; + } + if ($513) { + $569 = $565;$574 = 1; + } else { + $567 = (_iswalnum($prev_c$0$i)|0); + $568 = ($567|0)!=(0); + $$pre202$i = HEAP32[$next_c$i3>>2]|0; + $569 = $$pre202$i;$574 = $568; + } + $570 = ($569|0)==(95); + if ($570) { + if ($574) { + $$lcssa133 = $830;$$lcssa138 = $516;$trans_i$085$i$lcssa135 = $trans_i$085$i; + label = 236; + break L31; + } else { + break; + } + } else { + $571 = (_iswalnum($569)|0); + $572 = ($571|0)!=(0); + $573 = $574 ^ $572; + if ($573) { + break; + } else { + $$lcssa133 = $830;$$lcssa138 = $516;$trans_i$085$i$lcssa135 = $trans_i$085$i; + label = 236; + break L31; + } + } + } + } while(0); + $575 = ((($trans_i$085$i)) + 32|0); + $576 = ((($trans_i$085$i)) + 40|0); + $577 = HEAP32[$576>>2]|0; + $578 = ($577|0)==(0|0); + if ($578) { + $match_eo$1$ph$lcssa$i = $match_eo$1$ph108$i;$new_match$1$ph$lcssa$i = $new_match$1$ph110$i;$reach_next_i$1$ph$lcssa$i = $reach_next_i$1$ph101$i; + break L27; + } else { + $830 = $576;$trans_i$085$i = $575; + } + } + if ((label|0) == 236) { + label = 0; + $579 = HEAP32[$$lcssa133>>2]|0; + HEAP32[$reach_next_i$1$ph101$i>>2] = $579; + if ($501) { + $580 = ((($reach_next_i$1$ph101$i)) + 4|0); + $581 = HEAP32[$580>>2]|0; + _memset(($581|0),-1,($448|0))|0; + } + $582 = ((($trans_i$085$i$lcssa135)) + 16|0); + $583 = HEAP32[$582>>2]|0; + $584 = ($583|0)==(0|0); + do { + if (!($584)) { + $585 = HEAP32[$583>>2]|0; + $586 = ($585|0)>(-1); + if (!($586)) { + break; + } + $587 = ((($reach_next_i$1$ph101$i)) + 4|0); + $588 = $585;$tag_i$097$i = $583; + while(1) { + $589 = ($588|0)<($num_tags$0$i|0); + if ($589) { + $590 = HEAP32[$587>>2]|0; + $591 = (($590) + ($588<<2)|0); + HEAP32[$591>>2] = $pos$0$i10; + } + $592 = ((($tag_i$097$i)) + 4|0); + $593 = HEAP32[$592>>2]|0; + $594 = ($593|0)>(-1); + if ($594) { + $588 = $593;$tag_i$097$i = $592; + } else { + break; + } + } + } + } while(0); + $595 = HEAP32[$reach_next_i$1$ph101$i>>2]|0; + $596 = HEAP32[$502>>2]|0; + $$not$i = ($595|0)!=($596|0); + $brmerge177$i = $$not176$i | $$not$i; + if ($brmerge177$i) { + $new_match$1$ph111$mux$i = $$not$i ? $new_match$1$ph110$i : 1; + $match_eo$1$ph109$mux$i = $$not$i ? $match_eo$1$ph108$i : $pos$0$i10; + $$pre213$i = ((($reach_next_i$1$ph101$i)) + 4|0); + $$pre$phi214$iZ2D = $$pre213$i;$match_eo$2$i21 = $match_eo$1$ph109$mux$i;$new_match$2$i = $new_match$1$ph111$mux$i; + } else { + $597 = ((($reach_next_i$1$ph101$i)) + 4|0); + $598 = HEAP32[$597>>2]|0; + $i$399$i = 0; + while(1) { + $599 = (($598) + ($i$399$i<<2)|0); + $600 = HEAP32[$599>>2]|0; + $601 = (($tags$0) + ($i$399$i<<2)|0); + HEAP32[$601>>2] = $600; + $602 = (($i$399$i) + 1)|0; + $exitcond193$i = ($602|0)==($num_tags$0$i|0); + if ($exitcond193$i) { + $$pre$phi214$iZ2D = $597;$match_eo$2$i21 = $pos$0$i10;$new_match$2$i = 1; + break; + } else { + $i$399$i = $602; + } + } + } + $603 = HEAP32[$$lcssa138>>2]|0; + $604 = (($479) + ($603<<3)|0); + HEAP32[$604>>2] = $pos$0$i10; + $605 = (((($479) + ($603<<3)|0)) + 4|0); + HEAP32[$605>>2] = $$pre$phi214$iZ2D; + $606 = ((($reach_next_i$1$ph101$i)) + 8|0); + $match_eo$3$i = $match_eo$2$i21;$new_match$3$i = $new_match$2$i;$reach_next_i$2$i = $606;$trans_i$085$i137 = $trans_i$085$i$lcssa135; + } + $607 = ((($trans_i$085$i137)) + 32|0); + $608 = ((($trans_i$085$i137)) + 40|0); + $609 = HEAP32[$608>>2]|0; + $610 = ($609|0)==(0|0); + if ($610) { + $match_eo$1$ph$lcssa$i = $match_eo$3$i;$new_match$1$ph$lcssa$i = $new_match$3$i;$reach_next_i$1$ph$lcssa$i = $reach_next_i$2$i; + break; + } else { + $829 = $608;$match_eo$1$ph108$i = $match_eo$3$i;$new_match$1$ph110$i = $new_match$3$i;$reach_next_i$1$ph101$i = $reach_next_i$2$i;$trans_i$0$ph112$i = $607; + } + } + } + } while(0); + HEAP32[$reach_next_i$1$ph$lcssa$i>>2] = 0; + $$old46$i = HEAP32[$next_c$i3>>2]|0; + $$old47$i = ($$old46$i|0)==(0); + if ($$old47$i) { + $match_eo$10$i = $match_eo$1$ph$lcssa$i; + break; + } else { + $662 = $$old46$i;$match_eo$4$i23 = $match_eo$1$ph$lcssa$i;$new_match$4$i = $new_match$1$ph$lcssa$i; + } + } else { + if ($506) { + $match_eo$10$i = $match_eo$0$i8; + break; + } + $611 = ($reach_next_i$0$i|0)!=($reach_next$1$i|0); + $612 = HEAP32[$next_c$i3>>2]|0; + $613 = ($612|0)!=(0); + $or$cond48$i22 = $611 & $613; + if ($or$cond48$i22) { + $662 = $612;$match_eo$4$i23 = $match_eo$0$i8;$new_match$4$i = $new_match$0$i; + } else { + $match_eo$10$i = $match_eo$0$i8; + break; + } + } + $614 = (($pos$0$i10) + ($pos_add_next$1$i9))|0; + $615 = (_mbtowc($next_c$i3,$str_byte$0$i11,4)|0); + $616 = ($615|0)<(1); + if ($616) { + $617 = ($615|0)<(0); + if ($617) { + $eo$2 = 0;$ret$0$i = 1; + break L21; + } else { + $pos_add_next$2$i24 = 1; + } + } else { + $pos_add_next$2$i24 = $615; + } + $618 = (($str_byte$0$i11) + ($pos_add_next$2$i24)|0); + $619 = HEAP32[$503>>2]|0; + $620 = ($619|0)!=(0); + $621 = ($new_match$4$i|0)!=(0); + $or$cond21$i25 = $621 & $620; + if ($or$cond21$i25) { + $622 = HEAP32[$reach_next$1$i>>2]|0; + $623 = ($622|0)==(0|0); + if ($623) { + $reach_next_i$3$lcssa$i = $reach$1$i; + } else { + $624 = HEAP32[$505>>2]|0; + $625 = HEAP32[$624>>2]|0; + $626 = ($625|0)>(-1); + $reach_i$0119$i = $reach_next$1$i;$reach_next_i$3121$i = $reach$1$i; + while(1) { + $627 = ((($reach_i$0119$i)) + 4|0); + L106: do { + if ($626) { + $630 = $624;$632 = $625;$i$4116$i = 0; + while(1) { + $628 = $i$4116$i | 1; + $629 = (($630) + ($628<<2)|0); + $631 = HEAP32[$629>>2]|0; + $633 = ($632|0)<($num_tags$0$i|0); + if (!($633)) { + $reach_next_i$4$i = $reach_next_i$3121$i; + break L106; + } + $634 = HEAP32[$627>>2]|0; + $635 = (($634) + ($631<<2)|0); + $636 = HEAP32[$635>>2]|0; + $637 = (($tags$0) + ($631<<2)|0); + $638 = HEAP32[$637>>2]|0; + $639 = ($636|0)==($638|0); + if ($639) { + $640 = (($634) + ($632<<2)|0); + $641 = HEAP32[$640>>2]|0; + $642 = (($tags$0) + ($632<<2)|0); + $643 = HEAP32[$642>>2]|0; + $644 = ($641|0)<($643|0); + if ($644) { + $reach_next_i$4$i = $reach_next_i$3121$i; + break L106; + } + } + $645 = (($i$4116$i) + 2)|0; + $646 = HEAP32[$505>>2]|0; + $647 = (($646) + ($645<<2)|0); + $648 = HEAP32[$647>>2]|0; + $649 = ($648|0)>(-1); + if ($649) { + $630 = $646;$632 = $648;$i$4116$i = $645; + } else { + $$lcssa = $634; + break; + } + } + $650 = $$lcssa; + $$pre$phi212$iZ2D = $627;$654 = $650; + label = 265; + } else { + $$pre204$i = HEAP32[$627>>2]|0; + $$pre$phi212$iZ2D = $627;$654 = $$pre204$i; + label = 265; + } + } while(0); + if ((label|0) == 265) { + label = 0; + $651 = HEAP32[$reach_i$0119$i>>2]|0; + HEAP32[$reach_next_i$3121$i>>2] = $651; + $652 = ((($reach_next_i$3121$i)) + 4|0); + $653 = HEAP32[$652>>2]|0; + HEAP32[$652>>2] = $654; + HEAP32[$$pre$phi212$iZ2D>>2] = $653; + $655 = ((($reach_next_i$3121$i)) + 8|0); + $reach_next_i$4$i = $655; + } + $656 = ((($reach_i$0119$i)) + 8|0); + $657 = HEAP32[$656>>2]|0; + $658 = ($657|0)==(0|0); + if ($658) { + $reach_next_i$3$lcssa$i = $reach_next_i$4$i; + break; + } else { + $reach_i$0119$i = $656;$reach_next_i$3121$i = $reach_next_i$4$i; + } + } + } + HEAP32[$reach_next_i$3$lcssa$i>>2] = 0; + $new_match$5$i = 0;$reach$2$i = $reach$1$i;$reach_next$2$i = $reach_next$1$i; + } else { + $new_match$5$i = $new_match$4$i;$reach$2$i = $reach_next$1$i;$reach_next$2$i = $reach$1$i; + } + $659 = HEAP32[$reach$2$i>>2]|0; + $660 = ($659|0)==(0|0); + if ($660) { + $match_eo$5$lcssa$i = $match_eo$4$i23;$new_match$6$lcssa$i = $new_match$5$i;$reach_next_i$5$lcssa$i = $reach_next$2$i;$tmp_tags$2$lcssa$i = $tmp_tags$1$i; + } else { + $661 = ($614|0)!=(0); + $663 = ($662|0)==(95); + $664 = ($614|0)==(0); + $665 = ($662|0)==(10); + $or$cond27$i = $500 & $665; + $notrhs$i26 = ($614|0)<(1); + $or$cond24$not$i = $notlhs180$i & $notrhs$i26; + $667 = $659;$match_eo$5155$i = $match_eo$4$i23;$new_match$6156$i = $new_match$5$i;$reach_i$1153$i = $reach$2$i;$reach_next_i$5154$i = $reach_next$2$i;$tmp_tags$2157$i = $tmp_tags$1$i; + while(1) { + $666 = ((($667)) + 8|0); + $668 = HEAP32[$666>>2]|0; + $669 = ($668|0)==(0|0); + if ($669) { + $match_eo$6$lcssa$i = $match_eo$5155$i;$new_match$7$lcssa$i = $new_match$6156$i;$reach_next_i$6$lcssa$i = $reach_next_i$5154$i;$tmp_tags$3$lcssa$i = $tmp_tags$2157$i; + } else { + $670 = ((($reach_i$1153$i)) + 4|0); + $768 = $tmp_tags$2157$i;$787 = $666;$match_eo$6135$i = $match_eo$5155$i;$new_match$7138$i = $new_match$6156$i;$reach_next_i$6134$i = $reach_next_i$5154$i;$trans_i$1144$i27 = $667; + while(1) { + $671 = HEAP32[$trans_i$1144$i27>>2]|0; + $672 = ($671>>>0)>($662>>>0); + L128: do { + if ($672) { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $768; + } else { + $673 = ((($trans_i$1144$i27)) + 4|0); + $674 = HEAP32[$673>>2]|0; + $675 = ($674>>>0)<($662>>>0); + if ($675) { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $768; + break; + } + $676 = ((($trans_i$1144$i27)) + 20|0); + $677 = HEAP32[$676>>2]|0; + $678 = ($677|0)==(0); + do { + if (!($678)) { + $679 = $677 & 1; + $680 = ($679|0)==(0); + $brmerge172$i = $or$cond24$not$i | $680; + $brmerge173$i = $or$cond27$i | $brmerge172$i; + if (!($brmerge173$i)) { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $768; + break L128; + } + $681 = $677 & 2; + $682 = ($681|0)==(0); + if (!($682)) { + $683 = HEAP32[$next_c$i3>>2]|0; + $684 = $683 | $443; + $685 = ($684|0)==(0); + $686 = ($683|0)==(10); + $or$cond33$i = $500 & $686; + $or$cond175$i = $685 | $or$cond33$i; + if (!($or$cond175$i)) { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $768; + break L128; + } + } + $687 = $677 & 16; + $688 = ($687|0)==(0); + do { + if (!($688)) { + if ($663) { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $768; + break L128; + } + $689 = (_iswalnum($662)|0); + $690 = ($689|0)==(0); + if (!($690)) { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $768; + break L128; + } + $691 = HEAP32[$next_c$i3>>2]|0; + $692 = ($691|0)==(95); + if ($692) { + break; + } + $693 = (_iswalnum($691)|0); + $694 = ($693|0)==(0); + if ($694) { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $768; + break L128; + } + } + } while(0); + $695 = HEAP32[$676>>2]|0; + $696 = $695 & 32; + $697 = ($696|0)==(0); + if ($697) { + $706 = $695; + } else { + if ($663) { + $$old34$i = HEAP32[$next_c$i3>>2]|0; + $$old35$i = ($$old34$i|0)==(95); + if ($$old35$i) { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $768; + break L128; + } else { + $702 = $$old34$i; + } + } else { + $698 = (_iswalnum($662)|0); + $699 = ($698|0)==(0); + $700 = HEAP32[$next_c$i3>>2]|0; + $701 = ($700|0)==(95); + $or$cond36$i28 = $699 | $701; + if ($or$cond36$i28) { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $768; + break L128; + } else { + $702 = $700; + } + } + $703 = (_iswalnum($702)|0); + $704 = ($703|0)==(0); + if (!($704)) { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $768; + break L128; + } + $$pre206$i = HEAP32[$676>>2]|0; + $706 = $$pre206$i; + } + $705 = $706 & 64; + $707 = ($705|0)!=(0); + $or$cond39$i29 = $661 & $707; + $708 = HEAP32[$next_c$i3>>2]|0; + $709 = ($708|0)!=(0); + $or$cond42$i30 = $709 & $or$cond39$i29; + do { + if ($or$cond42$i30) { + if ($663) { + $712 = $708;$716 = 1; + } else { + $710 = (_iswalnum($662)|0); + $711 = ($710|0)!=(0); + $$pre207$i = HEAP32[$next_c$i3>>2]|0; + $712 = $$pre207$i;$716 = $711; + } + $713 = ($712|0)==(95); + if ($713) { + if ($716) { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $768; + break L128; + } else { + break; + } + } else { + $714 = (_iswalnum($712)|0); + $715 = ($714|0)!=(0); + $tmp$i31 = $716 ^ $715; + if ($tmp$i31) { + break; + } else { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $768; + break L128; + } + } + } + } while(0); + $717 = HEAP32[$676>>2]|0; + $718 = $717 & 128; + $719 = ($718|0)==(0); + do { + if (!($719)) { + $720 = HEAP32[$next_c$i3>>2]|0; + $721 = ($720|0)==(0); + $or$cond45$i32 = $664 | $721; + if ($or$cond45$i32) { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $768; + break L128; + } + if ($663) { + $724 = $720;$729 = 1; + } else { + $722 = (_iswalnum($662)|0); + $723 = ($722|0)!=(0); + $$pre208$i = HEAP32[$next_c$i3>>2]|0; + $724 = $$pre208$i;$729 = $723; + } + $725 = ($724|0)==(95); + if ($725) { + if ($729) { + break; + } else { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $768; + break L128; + } + } else { + $726 = (_iswalnum($724)|0); + $727 = ($726|0)!=(0); + $728 = $729 ^ $727; + if ($728) { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $768; + break L128; + } else { + break; + } + } + } + } while(0); + $730 = HEAP32[$676>>2]|0; + $731 = $730 & 4; + $732 = ($731|0)==(0); + do { + if ($732) { + $741 = $730; + } else { + $733 = HEAP32[$2>>2]|0; + $734 = $733 & 2; + $735 = ($734|0)==(0); + if (!($735)) { + $741 = $730; + break; + } + $736 = ((($trans_i$1144$i27)) + 24|0); + $737 = HEAP32[$736>>2]|0; + $738 = (_iswctype($662,$737)|0); + $739 = ($738|0)==(0); + if ($739) { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $768; + break L128; + } + $$pre210$i = HEAP32[$676>>2]|0; + $741 = $$pre210$i; + } + } while(0); + $740 = $741 & 4; + $742 = ($740|0)==(0); + do { + if (!($742)) { + $743 = HEAP32[$2>>2]|0; + $744 = $743 & 2; + $745 = ($744|0)==(0); + if ($745) { + break; + } + $746 = (_towlower($662)|0); + $747 = ((($trans_i$1144$i27)) + 24|0); + $748 = HEAP32[$747>>2]|0; + $749 = (_iswctype($746,$748)|0); + $750 = ($749|0)==(0); + if (!($750)) { + break; + } + $751 = (_towupper($662)|0); + $752 = HEAP32[$747>>2]|0; + $753 = (_iswctype($751,$752)|0); + $754 = ($753|0)==(0); + if ($754) { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $768; + break L128; + } + } + } while(0); + $755 = HEAP32[$676>>2]|0; + $756 = $755 & 8; + $757 = ($756|0)==(0); + if ($757) { + break; + } + $758 = ((($trans_i$1144$i27)) + 28|0); + $759 = HEAP32[$758>>2]|0; + $760 = HEAP32[$2>>2]|0; + $761 = $760 & 2; + $762 = (_tre_neg_char_classes_match($759,$662,$761)|0); + $763 = ($762|0)==(0); + if (!($763)) { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $768; + break L128; + } + } + } while(0); + if ($501) { + $764 = HEAP32[$670>>2]|0; + $i$5125$i = 0; + while(1) { + $765 = (($764) + ($i$5125$i<<2)|0); + $766 = HEAP32[$765>>2]|0; + $767 = (($768) + ($i$5125$i<<2)|0); + HEAP32[$767>>2] = $766; + $769 = (($i$5125$i) + 1)|0; + $exitcond194$i = ($769|0)==($num_tags$0$i|0); + if ($exitcond194$i) { + break; + } else { + $i$5125$i = $769; + } + } + } + $770 = ((($trans_i$1144$i27)) + 16|0); + $771 = HEAP32[$770>>2]|0; + $772 = ($771|0)==(0|0); + do { + if (!($772)) { + $773 = HEAP32[$771>>2]|0; + $774 = ($773|0)>(-1); + if ($774) { + $775 = $773;$tag_i$1128$i = $771; + } else { + break; + } + while(1) { + $776 = ($775|0)<($num_tags$0$i|0); + if ($776) { + $777 = (($768) + ($775<<2)|0); + HEAP32[$777>>2] = $614; + } + $778 = ((($tag_i$1128$i)) + 4|0); + $779 = HEAP32[$778>>2]|0; + $780 = ($779|0)>(-1); + if ($780) { + $775 = $779;$tag_i$1128$i = $778; + } else { + break; + } + } + } + } while(0); + $781 = ((($trans_i$1144$i27)) + 12|0); + $782 = HEAP32[$781>>2]|0; + $783 = (($479) + ($782<<3)|0); + $784 = HEAP32[$783>>2]|0; + $785 = ($784|0)<($614|0); + if (!($785)) { + $805 = HEAP32[$504>>2]|0; + $806 = (((($479) + ($782<<3)|0)) + 4|0); + $807 = HEAP32[$806>>2]|0; + $808 = HEAP32[$807>>2]|0; + $809 = (_tre_tag_order($num_tags$0$i,$805,$768,$808)|0); + $810 = ($809|0)==(0); + if ($810) { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $768; + break; + } + HEAP32[$807>>2] = $768; + $811 = HEAP32[$787>>2]|0; + $812 = HEAP32[$502>>2]|0; + $813 = ($811|0)==($812|0); + if (!($813)) { + $match_eo$9$i = $match_eo$6135$i;$new_match$10$i = $new_match$7138$i;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $808; + break; + } + if ($501) { + $i$7130$i = 0; + } else { + $match_eo$9$i = $614;$new_match$10$i = 1;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $808; + break; + } + while(1) { + $814 = (($768) + ($i$7130$i<<2)|0); + $815 = HEAP32[$814>>2]|0; + $816 = (($tags$0) + ($i$7130$i<<2)|0); + HEAP32[$816>>2] = $815; + $817 = (($i$7130$i) + 1)|0; + $exitcond195$i = ($817|0)==($num_tags$0$i|0); + if ($exitcond195$i) { + $match_eo$9$i = $614;$new_match$10$i = 1;$reach_next_i$7$i = $reach_next_i$6134$i;$tmp_tags$4$i = $808; + break L128; + } else { + $i$7130$i = $817; + } + } + } + $786 = HEAP32[$787>>2]|0; + HEAP32[$reach_next_i$6134$i>>2] = $786; + $788 = ((($reach_next_i$6134$i)) + 4|0); + $789 = HEAP32[$788>>2]|0; + HEAP32[$788>>2] = $768; + HEAP32[$783>>2] = $614; + $790 = (((($479) + ($782<<3)|0)) + 4|0); + HEAP32[$790>>2] = $788; + $791 = $786; + $792 = HEAP32[$502>>2]|0; + $793 = ($791|0)==($792|0); + do { + if ($793) { + $794 = ($match_eo$6135$i|0)==(-1); + if ($794) { + if (!($501)) { + $match_eo$7$i = $614;$new_match$8$i = 1; + break; + } + } else { + if (!($501)) { + $match_eo$7$i = $match_eo$6135$i;$new_match$8$i = $new_match$7138$i; + break; + } + $795 = HEAP32[$768>>2]|0; + $796 = HEAP32[$tags$0>>2]|0; + $797 = ($795|0)>($796|0); + if ($797) { + $match_eo$7$i = $match_eo$6135$i;$new_match$8$i = $new_match$7138$i; + break; + } + } + $798 = HEAP32[$788>>2]|0; + $i$6132$i = 0; + while(1) { + $799 = (($798) + ($i$6132$i<<2)|0); + $800 = HEAP32[$799>>2]|0; + $801 = (($tags$0) + ($i$6132$i<<2)|0); + HEAP32[$801>>2] = $800; + $802 = (($i$6132$i) + 1)|0; + $803 = ($802|0)<($num_tags$0$i|0); + if ($803) { + $i$6132$i = $802; + } else { + $match_eo$7$i = $614;$new_match$8$i = 1; + break; + } + } + } else { + $match_eo$7$i = $match_eo$6135$i;$new_match$8$i = $new_match$7138$i; + } + } while(0); + $804 = ((($reach_next_i$6134$i)) + 8|0); + $match_eo$9$i = $match_eo$7$i;$new_match$10$i = $new_match$8$i;$reach_next_i$7$i = $804;$tmp_tags$4$i = $789; + } + } while(0); + $818 = ((($trans_i$1144$i27)) + 32|0); + $819 = ((($trans_i$1144$i27)) + 40|0); + $820 = HEAP32[$819>>2]|0; + $821 = ($820|0)==(0|0); + if ($821) { + $match_eo$6$lcssa$i = $match_eo$9$i;$new_match$7$lcssa$i = $new_match$10$i;$reach_next_i$6$lcssa$i = $reach_next_i$7$i;$tmp_tags$3$lcssa$i = $tmp_tags$4$i; + break; + } else { + $768 = $tmp_tags$4$i;$787 = $819;$match_eo$6135$i = $match_eo$9$i;$new_match$7138$i = $new_match$10$i;$reach_next_i$6134$i = $reach_next_i$7$i;$trans_i$1144$i27 = $818; + } + } + } + $822 = ((($reach_i$1153$i)) + 8|0); + $823 = HEAP32[$822>>2]|0; + $824 = ($823|0)==(0|0); + if ($824) { + $match_eo$5$lcssa$i = $match_eo$6$lcssa$i;$new_match$6$lcssa$i = $new_match$7$lcssa$i;$reach_next_i$5$lcssa$i = $reach_next_i$6$lcssa$i;$tmp_tags$2$lcssa$i = $tmp_tags$3$lcssa$i; + break; + } else { + $667 = $823;$match_eo$5155$i = $match_eo$6$lcssa$i;$new_match$6156$i = $new_match$7$lcssa$i;$reach_i$1153$i = $822;$reach_next_i$5154$i = $reach_next_i$6$lcssa$i;$tmp_tags$2157$i = $tmp_tags$3$lcssa$i; + } + } + } + HEAP32[$reach_next_i$5$lcssa$i>>2] = 0; + $match_eo$0$i8 = $match_eo$5$lcssa$i;$new_match$0$i = $new_match$6$lcssa$i;$pos$0$i10 = $614;$pos_add_next$1$i9 = $pos_add_next$2$i24;$prev_c$0$i = $662;$reach$1$i = $reach$2$i;$reach_next$1$i = $reach_next$2$i;$reach_next_i$0$i = $reach_next_i$5$lcssa$i;$str_byte$0$i11 = $618;$tmp_tags$1$i = $tmp_tags$2$lcssa$i; + } + $match_eo$10$lobit$i = $match_eo$10$i >>> 31; + $eo$2 = $match_eo$10$i;$ret$0$i = $match_eo$10$lobit$i; + } + } while(0); + _free($459); + $$1$i = $ret$0$i;$eo$3 = $eo$2; + } + $eo$4 = $eo$3;$status$0 = $$1$i; + } else { + HEAP32[$next_c$i>>2] = 0; + $16 = $eflags & 1; + $17 = $eflags & 2; + $18 = HEAP32[$2>>2]|0; + $19 = $18 & 4; + $20 = (___tre_mem_new_impl(0,0)|0); + $21 = ($20|0)==(0|0); + L219: do { + if ($21) { + $$15$i = 12;$eo$1 = 0; + } else { + $22 = (___tre_mem_alloc_impl($20,0,0,0,32)|0); + $23 = ($22|0)==(0|0); + if ($23) { + ___tre_mem_destroy($20); + $$15$i = 12;$eo$1 = 0; + break; + } + $24 = ((($22)) + 24|0); + HEAP32[$24>>2] = 0; + $25 = ((($22)) + 28|0); + HEAP32[$25>>2] = 0; + $26 = HEAP32[$6>>2]|0; + $27 = ($26|0)==(0); + if ($27) { + $tags$0$i = 0; + label = 9; + } else { + $28 = $26 << 2; + $29 = (_malloc($28)|0); + $30 = ($29|0)==(0|0); + if ($30) { + $eo$0 = 0;$pmatch$1$i = 0;$ret$7$i = 12;$states_seen$1$i = 0;$tags$1$i = $29; + } else { + $tags$0$i = $29; + label = 9; + } + } + L226: do { + if ((label|0) == 9) { + $31 = ((($1)) + 28|0); + $32 = HEAP32[$31>>2]|0; + $33 = ($32|0)==(0); + if ($33) { + $pmatch$0$i = 0; + } else { + $34 = $32 << 3; + $35 = (_malloc($34)|0); + $36 = ($35|0)==(0|0); + if ($36) { + $eo$0 = 0;$pmatch$1$i = $35;$ret$7$i = 12;$states_seen$1$i = 0;$tags$1$i = $tags$0$i; + break; + } else { + $pmatch$0$i = $35; + } + } + $37 = ((($1)) + 52|0); + $38 = HEAP32[$37>>2]|0; + $39 = ($38|0)==(0); + if ($39) { + $states_seen$0$ph$i = 0; + } else { + $40 = $38 << 2; + $41 = (_malloc($40)|0); + $42 = ($41|0)==(0|0); + if ($42) { + $eo$0 = 0;$pmatch$1$i = $pmatch$0$i;$ret$7$i = 12;$states_seen$1$i = $41;$tags$1$i = $tags$0$i; + break; + } else { + $states_seen$0$ph$i = $41; + } + } + $43 = ((($1)) + 8|0); + $44 = ((($1)) + 12|0); + $45 = ($tags$0|0)==(0|0); + $46 = ($tags$0|0)!=(0|0); + $47 = ((($1)) + 32|0); + $48 = ($19|0)!=(0); + $49 = ($tags$0$i|0)==(0|0); + $50 = ($pmatch$0$i|0)==(0|0); + $51 = ($states_seen$0$ph$i|0)==(0|0); + $notlhs166$i = ($16|0)==(0); + $52 = $26;$match_eo$0$i = -1;$pos_add_next$0$i = 1;$pos_start$0$i = -1;$stack$0$i = $22;$str_byte$0$i = $string; + L234: while(1) { + $53 = ($52|0)>(0); + if ($53) { + $828 = $52;$i$0105$i = 0; + while(1) { + $58 = (($tags$0$i) + ($i$0105$i<<2)|0); + HEAP32[$58>>2] = -1; + if ($45) { + $62 = $828; + } else { + $59 = (($tags$0) + ($i$0105$i<<2)|0); + HEAP32[$59>>2] = -1; + $$pre174$i = HEAP32[$6>>2]|0; + $62 = $$pre174$i; + } + $60 = (($i$0105$i) + 1)|0; + $61 = ($60|0)<($62|0); + if ($61) { + $828 = $62;$i$0105$i = $60; + } else { + break; + } + } + } + $54 = HEAP32[$37>>2]|0; + $55 = ($54|0)>(0); + if ($55) { + $56 = ($54|0)>(1); + $smax$i = $56 ? $54 : 1; + $57 = $smax$i << 2; + _memset(($states_seen$0$ph$i|0),0,($57|0))|0; + } + $63 = HEAP32[$next_c$i>>2]|0; + $64 = (($pos_add_next$0$i) + ($pos_start$0$i))|0; + $65 = (_mbtowc($next_c$i,$str_byte$0$i,4)|0); + $66 = ($65|0)<(1); + if ($66) { + $67 = ($65|0)<(0); + if ($67) { + $eo$0 = 0;$pmatch$1$i = $pmatch$0$i;$ret$7$i = 1;$states_seen$1$i = $states_seen$0$ph$i;$tags$1$i = $tags$0$i; + break L226; + } else { + $pos_add_next$1$i = 1; + } + } else { + $pos_add_next$1$i = $65; + } + $68 = (($str_byte$0$i) + ($pos_add_next$1$i)|0); + $69 = HEAP32[$next_c$i>>2]|0; + $70 = HEAP32[$43>>2]|0; + $71 = ((($70)) + 8|0); + $72 = HEAP32[$71>>2]|0; + $73 = ($72|0)==(0|0); + if ($73) { + $match_eo$2$i = $match_eo$0$i;$next_tags$8$i = 0;$pos$3$i = $64;$pos_add_next$7$i = $pos_add_next$1$i;$stack$12$i = $stack$0$i;$state$3$i = 0;$str_byte$4$i = $68; + label = 174; + } else { + $74 = ($64|0)!=(0); + $75 = ($63|0)==(95); + $76 = ($64|0)==(0); + $77 = ($63|0)==(10); + $or$cond6$i = $48 & $77; + $notrhs$i = ($64|0)<(1); + $or$cond$not$i = $notlhs166$i & $notrhs$i; + $134 = $71;$next_tags$0117$i = 0;$stack$1118$i = $stack$0$i;$state$0116$i = 0;$trans_i$0120$i = $70; + while(1) { + $78 = ((($trans_i$0120$i)) + 20|0); + $79 = HEAP32[$78>>2]|0; + $80 = ($79|0)==(0); + L253: do { + if ($80) { + label = 52; + } else { + $81 = $79 & 1; + $82 = ($81|0)==(0); + $brmerge$i = $or$cond$not$i | $82; + $brmerge159$i = $or$cond6$i | $brmerge$i; + if (!($brmerge159$i)) { + $next_tags$1$i = $next_tags$0117$i;$stack$5$i = $stack$1118$i;$state$1$i = $state$0116$i; + break; + } + $83 = $79 & 2; + $84 = ($83|0)==(0); + if (!($84)) { + $85 = HEAP32[$next_c$i>>2]|0; + $86 = $85 | $17; + $87 = ($86|0)==(0); + $88 = ($85|0)==(10); + $or$cond10$i = $48 & $88; + $or$cond161$i = $87 | $or$cond10$i; + if (!($or$cond161$i)) { + $next_tags$1$i = $next_tags$0117$i;$stack$5$i = $stack$1118$i;$state$1$i = $state$0116$i; + break; + } + } + $89 = $79 & 16; + $90 = ($89|0)==(0); + do { + if (!($90)) { + if ($75) { + $next_tags$1$i = $next_tags$0117$i;$stack$5$i = $stack$1118$i;$state$1$i = $state$0116$i; + break L253; + } + $91 = (_iswalnum($63)|0); + $92 = ($91|0)==(0); + if (!($92)) { + $next_tags$1$i = $next_tags$0117$i;$stack$5$i = $stack$1118$i;$state$1$i = $state$0116$i; + break L253; + } + $93 = HEAP32[$next_c$i>>2]|0; + $94 = ($93|0)==(95); + if ($94) { + break; + } + $95 = (_iswalnum($93)|0); + $96 = ($95|0)==(0); + if ($96) { + $next_tags$1$i = $next_tags$0117$i;$stack$5$i = $stack$1118$i;$state$1$i = $state$0116$i; + break L253; + } + } + } while(0); + $97 = HEAP32[$78>>2]|0; + $98 = $97 & 32; + $99 = ($98|0)==(0); + if ($99) { + $108 = $97; + } else { + if ($75) { + $$old$i = HEAP32[$next_c$i>>2]|0; + $$old11$i = ($$old$i|0)==(95); + if ($$old11$i) { + $next_tags$1$i = $next_tags$0117$i;$stack$5$i = $stack$1118$i;$state$1$i = $state$0116$i; + break; + } else { + $104 = $$old$i; + } + } else { + $100 = (_iswalnum($63)|0); + $101 = ($100|0)==(0); + $102 = HEAP32[$next_c$i>>2]|0; + $103 = ($102|0)==(95); + $or$cond12$i = $101 | $103; + if ($or$cond12$i) { + $next_tags$1$i = $next_tags$0117$i;$stack$5$i = $stack$1118$i;$state$1$i = $state$0116$i; + break; + } else { + $104 = $102; + } + } + $105 = (_iswalnum($104)|0); + $106 = ($105|0)==(0); + if (!($106)) { + $next_tags$1$i = $next_tags$0117$i;$stack$5$i = $stack$1118$i;$state$1$i = $state$0116$i; + break; + } + $$pre176$i = HEAP32[$78>>2]|0; + $108 = $$pre176$i; + } + $107 = $108 & 64; + $109 = ($107|0)!=(0); + $or$cond15$i = $74 & $109; + $110 = HEAP32[$next_c$i>>2]|0; + $111 = ($110|0)!=(0); + $or$cond18$i = $111 & $or$cond15$i; + do { + if ($or$cond18$i) { + if ($75) { + $114 = $110;$118 = 1; + } else { + $112 = (_iswalnum($63)|0); + $113 = ($112|0)!=(0); + $$pre177$i = HEAP32[$next_c$i>>2]|0; + $114 = $$pre177$i;$118 = $113; + } + $115 = ($114|0)==(95); + if ($115) { + if ($118) { + $next_tags$1$i = $next_tags$0117$i;$stack$5$i = $stack$1118$i;$state$1$i = $state$0116$i; + break L253; + } else { + break; + } + } else { + $116 = (_iswalnum($114)|0); + $117 = ($116|0)!=(0); + $tmp55$i = $118 ^ $117; + if ($tmp55$i) { + break; + } else { + $next_tags$1$i = $next_tags$0117$i;$stack$5$i = $stack$1118$i;$state$1$i = $state$0116$i; + break L253; + } + } + } + } while(0); + $119 = HEAP32[$78>>2]|0; + $120 = $119 & 128; + $121 = ($120|0)==(0); + if ($121) { + label = 52; + break; + } + $122 = HEAP32[$next_c$i>>2]|0; + $123 = ($122|0)==(0); + $or$cond21$i = $76 | $123; + if ($or$cond21$i) { + $next_tags$1$i = $next_tags$0117$i;$stack$5$i = $stack$1118$i;$state$1$i = $state$0116$i; + break; + } + if ($75) { + $126 = $122;$131 = 1; + } else { + $124 = (_iswalnum($63)|0); + $125 = ($124|0)!=(0); + $$pre178$i = HEAP32[$next_c$i>>2]|0; + $126 = $$pre178$i;$131 = $125; + } + $127 = ($126|0)==(95); + if ($127) { + if ($131) { + label = 52; + break; + } else { + $next_tags$1$i = $next_tags$0117$i;$stack$5$i = $stack$1118$i;$state$1$i = $state$0116$i; + break; + } + } else { + $128 = (_iswalnum($126)|0); + $129 = ($128|0)!=(0); + $130 = $131 ^ $129; + if ($130) { + $next_tags$1$i = $next_tags$0117$i;$stack$5$i = $stack$1118$i;$state$1$i = $state$0116$i; + break; + } else { + label = 52; + break; + } + } + } + } while(0); + do { + if ((label|0) == 52) { + label = 0; + $132 = ($state$0116$i|0)==(0|0); + if ($132) { + $133 = HEAP32[$134>>2]|0; + $135 = ((($trans_i$0120$i)) + 16|0); + $136 = HEAP32[$135>>2]|0; + $next_tags$1$i = $136;$stack$5$i = $stack$1118$i;$state$1$i = $133; + break; + } + $137 = ((($stack$1118$i)) + 28|0); + $138 = HEAP32[$137>>2]|0; + $139 = ($138|0)==(0|0); + if ($139) { + $140 = (___tre_mem_alloc_impl($20,0,0,0,32)|0); + $141 = ($140|0)==(0|0); + if ($141) { + label = 56; + break L234; + } + $142 = ((($140)) + 24|0); + HEAP32[$142>>2] = $stack$1118$i; + $143 = ((($140)) + 28|0); + HEAP32[$143>>2] = 0; + $144 = HEAP32[$6>>2]|0; + $145 = $144 << 2; + $146 = (___tre_mem_alloc_impl($20,0,0,0,$145)|0); + $147 = ((($140)) + 20|0); + HEAP32[$147>>2] = $146; + $148 = ($146|0)==(0|0); + if ($148) { + label = 63; + break L234; + } + HEAP32[$137>>2] = $140; + $stack$3$i = $140; + } else { + $stack$3$i = $138; + } + HEAP32[$stack$3$i>>2] = $64; + $149 = ((($stack$3$i)) + 4|0); + HEAP32[$149>>2] = $68; + $150 = HEAP32[$134>>2]|0; + $151 = ((($stack$3$i)) + 8|0); + HEAP32[$151>>2] = $150; + $152 = ((($trans_i$0120$i)) + 12|0); + $153 = HEAP32[$152>>2]|0; + $154 = ((($stack$3$i)) + 12|0); + HEAP32[$154>>2] = $153; + $155 = HEAP32[$next_c$i>>2]|0; + $156 = ((($stack$3$i)) + 16|0); + HEAP32[$156>>2] = $155; + $157 = HEAP32[$6>>2]|0; + $158 = ($157|0)>(0); + if ($158) { + $159 = ((($stack$3$i)) + 20|0); + $160 = HEAP32[$159>>2]|0; + $i1$0110$i = 0; + while(1) { + $161 = (($tags$0$i) + ($i1$0110$i<<2)|0); + $162 = HEAP32[$161>>2]|0; + $163 = (($160) + ($i1$0110$i<<2)|0); + HEAP32[$163>>2] = $162; + $164 = (($i1$0110$i) + 1)|0; + $165 = HEAP32[$6>>2]|0; + $166 = ($164|0)<($165|0); + if ($166) { + $i1$0110$i = $164; + } else { + break; + } + } + } + $167 = ((($trans_i$0120$i)) + 16|0); + $168 = HEAP32[$167>>2]|0; + $169 = ($168|0)==(0|0); + if ($169) { + $next_tags$1$i = $next_tags$0117$i;$stack$5$i = $stack$3$i;$state$1$i = $state$0116$i; + break; + } + $170 = HEAP32[$168>>2]|0; + $171 = ($170|0)>(-1); + if (!($171)) { + $next_tags$1$i = $next_tags$0117$i;$stack$5$i = $stack$3$i;$state$1$i = $state$0116$i; + break; + } + $172 = ((($stack$3$i)) + 20|0); + $173 = HEAP32[$172>>2]|0; + $176 = $170;$tmp$0114$i = $168; + while(1) { + $174 = ((($tmp$0114$i)) + 4|0); + $175 = (($173) + ($176<<2)|0); + HEAP32[$175>>2] = $64; + $177 = HEAP32[$174>>2]|0; + $178 = ($177|0)>(-1); + if ($178) { + $176 = $177;$tmp$0114$i = $174; + } else { + $next_tags$1$i = $next_tags$0117$i;$stack$5$i = $stack$3$i;$state$1$i = $state$0116$i; + break; + } + } + } + } while(0); + $179 = ((($trans_i$0120$i)) + 32|0); + $180 = ((($trans_i$0120$i)) + 40|0); + $181 = HEAP32[$180>>2]|0; + $182 = ($181|0)==(0|0); + if ($182) { + $next_tags$1$i$lcssa = $next_tags$1$i;$stack$5$i$lcssa = $stack$5$i;$state$1$i$lcssa = $state$1$i; + break; + } else { + $134 = $180;$next_tags$0117$i = $next_tags$1$i;$stack$1118$i = $stack$5$i;$state$0116$i = $state$1$i;$trans_i$0120$i = $179; + } + } + $183 = ($next_tags$1$i$lcssa|0)==(0|0); + if ($183) { + $next_tags$3$i = 0; + } else { + $184 = HEAP32[$next_tags$1$i$lcssa>>2]|0; + $185 = ($184|0)>(-1); + if ($185) { + $187 = $184;$next_tags$2127$i = $next_tags$1$i$lcssa; + while(1) { + $186 = (($tags$0$i) + ($187<<2)|0); + HEAP32[$186>>2] = $64; + $188 = ((($next_tags$2127$i)) + 4|0); + $189 = HEAP32[$188>>2]|0; + $190 = ($189|0)>(-1); + if ($190) { + $187 = $189;$next_tags$2127$i = $188; + } else { + $next_tags$3$i = $188; + break; + } + } + } else { + $next_tags$3$i = $next_tags$1$i$lcssa; + } + } + $191 = ($state$1$i$lcssa|0)==(0|0); + if ($191) { + $match_eo$2$i = $match_eo$0$i;$next_tags$8$i = $next_tags$3$i;$pos$3$i = $64;$pos_add_next$7$i = $pos_add_next$1$i;$stack$12$i = $stack$5$i$lcssa;$state$3$i = 0;$str_byte$4$i = $68; + label = 174; + } else { + $match_eo$1$i = $match_eo$0$i;$next_tags$4$i = $next_tags$3$i;$pos$0$i = $64;$pos_add_next$2$i = $pos_add_next$1$i;$stack$6$i = $stack$5$i$lcssa;$state$2$i = $state$1$i$lcssa;$str_byte$1$i = $68; + label = 82; + } + } + L316: while(1) { + L317: do { + if ((label|0) == 82) { + label = 0; + $192 = HEAP32[$44>>2]|0; + $193 = ($state$2$i|0)==($192|0); + if ($193) { + $194 = ($match_eo$1$i|0)<($pos$0$i|0); + if (!($194)) { + $195 = ($match_eo$1$i|0)==($pos$0$i|0); + $or$cond24$i = $46 & $195; + if (!($or$cond24$i)) { + $match_eo$2$i = $match_eo$1$i;$next_tags$8$i = $next_tags$4$i;$pos$3$i = $pos$0$i;$pos_add_next$7$i = $pos_add_next$2$i;$stack$12$i = $stack$6$i;$state$3$i = $state$2$i;$str_byte$4$i = $str_byte$1$i; + label = 174; + continue L316; + } + $196 = HEAP32[$6>>2]|0; + $197 = HEAP32[$47>>2]|0; + $198 = (_tre_tag_order($196,$197,$tags$0$i,$tags$0)|0); + $199 = ($198|0)==(0); + if ($199) { + $match_eo$2$i = $match_eo$1$i;$next_tags$8$i = $next_tags$4$i;$pos$3$i = $match_eo$1$i;$pos_add_next$7$i = $pos_add_next$2$i;$stack$12$i = $stack$6$i;$state$3$i = $state$2$i;$str_byte$4$i = $str_byte$1$i; + label = 174; + continue L316; + } + } + if ($45) { + $match_eo$2$i = $pos$0$i;$next_tags$8$i = $next_tags$4$i;$pos$3$i = $pos$0$i;$pos_add_next$7$i = $pos_add_next$2$i;$stack$12$i = $stack$6$i;$state$3$i = $state$2$i;$str_byte$4$i = $str_byte$1$i; + label = 174; + continue L316; + } + $200 = HEAP32[$6>>2]|0; + $201 = ($200|0)>(0); + if ($201) { + $i3$0157$i = 0; + } else { + $match_eo$2$i = $pos$0$i;$next_tags$8$i = $next_tags$4$i;$pos$3$i = $pos$0$i;$pos_add_next$7$i = $pos_add_next$2$i;$stack$12$i = $stack$6$i;$state$3$i = $state$2$i;$str_byte$4$i = $str_byte$1$i; + label = 174; + continue L316; + } + while(1) { + $202 = (($tags$0$i) + ($i3$0157$i<<2)|0); + $203 = HEAP32[$202>>2]|0; + $204 = (($tags$0) + ($i3$0157$i<<2)|0); + HEAP32[$204>>2] = $203; + $205 = (($i3$0157$i) + 1)|0; + $206 = HEAP32[$6>>2]|0; + $207 = ($205|0)<($206|0); + if ($207) { + $i3$0157$i = $205; + } else { + $match_eo$2$i = $pos$0$i;$next_tags$8$i = $next_tags$4$i;$pos$3$i = $pos$0$i;$pos_add_next$7$i = $pos_add_next$2$i;$stack$12$i = $stack$6$i;$state$3$i = $state$2$i;$str_byte$4$i = $str_byte$1$i; + label = 174; + continue L316; + } + } + } + $208 = ((($state$2$i)) + 8|0); + $209 = HEAP32[$208>>2]|0; + $210 = ($209|0)==(0|0); + do { + if ($210) { + label = 97; + } else { + $211 = ((($state$2$i)) + 20|0); + $212 = HEAP32[$211>>2]|0; + $213 = $212 & 256; + $214 = ($213|0)==(0); + if ($214) { + label = 97; + break; + } + $215 = ((($state$2$i)) + 24|0); + $216 = HEAP32[$215>>2]|0; + $217 = (($216) + 1)|0; + $218 = HEAP32[$2>>2]|0; + $219 = $218 & -9; + _tre_fill_pmatch($217,$pmatch$0$i,$219,$1,$tags$0$i,$pos$0$i); + $220 = (($pmatch$0$i) + ($216<<3)|0); + $221 = HEAP32[$220>>2]|0; + $222 = (((($pmatch$0$i) + ($216<<3)|0)) + 4|0); + $223 = HEAP32[$222>>2]|0; + $224 = (($223) - ($221))|0; + $225 = (($string) + ($221)|0); + $226 = ((($str_byte$1$i)) + -1|0); + $227 = (_strncmp($225,$226,$224)|0); + $228 = ($227|0)==(0); + if (!($228)) { + $match_eo$2$i = $match_eo$1$i;$next_tags$8$i = $next_tags$4$i;$pos$3$i = $pos$0$i;$pos_add_next$7$i = $pos_add_next$2$i;$stack$12$i = $stack$6$i;$state$3$i = $state$2$i;$str_byte$4$i = $str_byte$1$i; + label = 174; + continue L316; + } + $229 = ($223|0)==($221|0); + $$$i = $229&1; + $230 = ((($state$2$i)) + 12|0); + $231 = HEAP32[$230>>2]|0; + $232 = (($states_seen$0$ph$i) + ($231<<2)|0); + if ($229) { + $233 = HEAP32[$232>>2]|0; + $234 = ($233|0)==(0); + if (!($234)) { + $match_eo$2$i = $match_eo$1$i;$next_tags$8$i = $next_tags$4$i;$pos$3$i = $pos$0$i;$pos_add_next$7$i = $pos_add_next$2$i;$stack$12$i = $stack$6$i;$state$3$i = $state$2$i;$str_byte$4$i = $str_byte$1$i; + label = 174; + continue L316; + } + } + HEAP32[$232>>2] = $$$i; + $235 = (($224) + -1)|0; + $236 = (($str_byte$1$i) + ($235)|0); + $237 = HEAP32[$next_c$i>>2]|0; + $238 = (($pos$0$i) + ($pos_add_next$2$i))|0; + $239 = (($238) + ($235))|0; + $240 = (_mbtowc($next_c$i,$236,4)|0); + $241 = ($240|0)<(1); + if ($241) { + $242 = ($240|0)<(0); + if ($242) { + $$554$i = 2;$match_eo$4$i = $match_eo$1$i;$next_tags$10$i = $next_tags$4$i;$pos$5$i = $239;$pos_add_next$9$i = $240;$stack$14$i = $stack$6$i;$state$5$i = $state$2$i;$str_byte$6$i = $236; + break L317; + } else { + $pos_add_next$3$i = 1; + } + } else { + $pos_add_next$3$i = $240; + } + $243 = (($236) + ($pos_add_next$3$i)|0); + $pos$2$i = $239;$pos_add_next$6$i = $pos_add_next$3$i;$prev_c$2$i = $237;$str_byte$3$i = $243; + } + } while(0); + if ((label|0) == 97) { + label = 0; + $244 = HEAP32[$next_c$i>>2]|0; + $245 = ($244|0)==(0); + if ($245) { + $match_eo$2$i = $match_eo$1$i;$next_tags$8$i = $next_tags$4$i;$pos$3$i = $pos$0$i;$pos_add_next$7$i = $pos_add_next$2$i;$stack$12$i = $stack$6$i;$state$3$i = $state$2$i;$str_byte$4$i = $str_byte$1$i; + label = 174; + continue L316; + } + $246 = (($pos$0$i) + ($pos_add_next$2$i))|0; + $247 = (_mbtowc($next_c$i,$str_byte$1$i,4)|0); + $248 = ($247|0)<(1); + if ($248) { + $249 = ($247|0)<(0); + if ($249) { + $$554$i = 2;$match_eo$4$i = $match_eo$1$i;$next_tags$10$i = $next_tags$4$i;$pos$5$i = $246;$pos_add_next$9$i = $247;$stack$14$i = $stack$6$i;$state$5$i = $state$2$i;$str_byte$6$i = $str_byte$1$i; + break; + } + $250 = (($247) + 1)|0; + $pos_add_next$5$i = $250; + } else { + $pos_add_next$5$i = $247; + } + $251 = (($str_byte$1$i) + ($pos_add_next$5$i)|0); + $pos$2$i = $246;$pos_add_next$6$i = $pos_add_next$5$i;$prev_c$2$i = $244;$str_byte$3$i = $251; + } + $252 = HEAP32[$208>>2]|0; + $253 = ($252|0)==(0|0); + if ($253) { + $match_eo$2$i = $match_eo$1$i;$next_tags$8$i = $next_tags$4$i;$pos$3$i = $pos$2$i;$pos_add_next$7$i = $pos_add_next$6$i;$stack$12$i = $stack$6$i;$state$3$i = $state$2$i;$str_byte$4$i = $str_byte$3$i; + label = 174; + continue L316; + } + $254 = ($pos$2$i|0)!=(0); + $255 = ($prev_c$2$i|0)==(95); + $256 = ($pos$2$i|0)==(0); + $257 = ($prev_c$2$i|0)==(10); + $or$cond30$i = $48 & $257; + $notrhs167$i = ($pos$2$i|0)<(1); + $or$cond27$not$i = $notlhs166$i & $notrhs167$i; + $353 = $208;$next_state$0147$i = 0;$next_tags$5142$i = $next_tags$4$i;$stack$7143$i = $stack$6$i;$trans_i$1144$i = $state$2$i; + L359: while(1) { + $258 = HEAP32[$trans_i$1144$i>>2]|0; + $259 = ($258>>>0)>($prev_c$2$i>>>0); + L361: do { + if ($259) { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$7143$i; + } else { + $260 = ((($trans_i$1144$i)) + 4|0); + $261 = HEAP32[$260>>2]|0; + $262 = ($261>>>0)<($prev_c$2$i>>>0); + if ($262) { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$7143$i; + break; + } + $263 = ((($trans_i$1144$i)) + 20|0); + $264 = HEAP32[$263>>2]|0; + $265 = ($264|0)==(0); + do { + if (!($265)) { + $266 = $264 & 1; + $267 = ($266|0)==(0); + $brmerge162$i = $or$cond27$not$i | $267; + $brmerge163$i = $or$cond30$i | $brmerge162$i; + if (!($brmerge163$i)) { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$7143$i; + break L361; + } + $268 = $264 & 2; + $269 = ($268|0)==(0); + if (!($269)) { + $270 = HEAP32[$next_c$i>>2]|0; + $271 = $270 | $17; + $272 = ($271|0)==(0); + $273 = ($270|0)==(10); + $or$cond36$i = $48 & $273; + $or$cond165$i = $272 | $or$cond36$i; + if (!($or$cond165$i)) { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$7143$i; + break L361; + } + } + $274 = $264 & 16; + $275 = ($274|0)==(0); + do { + if (!($275)) { + if ($255) { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$7143$i; + break L361; + } + $276 = (_iswalnum($prev_c$2$i)|0); + $277 = ($276|0)==(0); + if (!($277)) { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$7143$i; + break L361; + } + $278 = HEAP32[$next_c$i>>2]|0; + $279 = ($278|0)==(95); + if ($279) { + break; + } + $280 = (_iswalnum($278)|0); + $281 = ($280|0)==(0); + if ($281) { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$7143$i; + break L361; + } + } + } while(0); + $282 = HEAP32[$263>>2]|0; + $283 = $282 & 32; + $284 = ($283|0)==(0); + if ($284) { + $293 = $282; + } else { + if ($255) { + $$old37$i = HEAP32[$next_c$i>>2]|0; + $$old38$i = ($$old37$i|0)==(95); + if ($$old38$i) { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$7143$i; + break L361; + } else { + $289 = $$old37$i; + } + } else { + $285 = (_iswalnum($prev_c$2$i)|0); + $286 = ($285|0)==(0); + $287 = HEAP32[$next_c$i>>2]|0; + $288 = ($287|0)==(95); + $or$cond39$i = $286 | $288; + if ($or$cond39$i) { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$7143$i; + break L361; + } else { + $289 = $287; + } + } + $290 = (_iswalnum($289)|0); + $291 = ($290|0)==(0); + if (!($291)) { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$7143$i; + break L361; + } + $$pre182$i = HEAP32[$263>>2]|0; + $293 = $$pre182$i; + } + $292 = $293 & 64; + $294 = ($292|0)!=(0); + $or$cond42$i = $254 & $294; + $295 = HEAP32[$next_c$i>>2]|0; + $296 = ($295|0)!=(0); + $or$cond45$i = $296 & $or$cond42$i; + do { + if ($or$cond45$i) { + if ($255) { + $299 = $295;$303 = 1; + } else { + $297 = (_iswalnum($prev_c$2$i)|0); + $298 = ($297|0)!=(0); + $$pre183$i = HEAP32[$next_c$i>>2]|0; + $299 = $$pre183$i;$303 = $298; + } + $300 = ($299|0)==(95); + if ($300) { + if ($303) { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$7143$i; + break L361; + } else { + break; + } + } else { + $301 = (_iswalnum($299)|0); + $302 = ($301|0)!=(0); + $tmp$i = $303 ^ $302; + if ($tmp$i) { + break; + } else { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$7143$i; + break L361; + } + } + } + } while(0); + $304 = HEAP32[$263>>2]|0; + $305 = $304 & 128; + $306 = ($305|0)==(0); + do { + if (!($306)) { + $307 = HEAP32[$next_c$i>>2]|0; + $308 = ($307|0)==(0); + $or$cond48$i = $256 | $308; + if ($or$cond48$i) { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$7143$i; + break L361; + } + if ($255) { + $311 = $307;$316 = 1; + } else { + $309 = (_iswalnum($prev_c$2$i)|0); + $310 = ($309|0)!=(0); + $$pre184$i = HEAP32[$next_c$i>>2]|0; + $311 = $$pre184$i;$316 = $310; + } + $312 = ($311|0)==(95); + if ($312) { + if ($316) { + break; + } else { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$7143$i; + break L361; + } + } else { + $313 = (_iswalnum($311)|0); + $314 = ($313|0)!=(0); + $315 = $316 ^ $314; + if ($315) { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$7143$i; + break L361; + } else { + break; + } + } + } + } while(0); + $317 = HEAP32[$263>>2]|0; + $318 = $317 & 4; + $319 = ($318|0)==(0); + do { + if ($319) { + $328 = $317; + } else { + $320 = HEAP32[$2>>2]|0; + $321 = $320 & 2; + $322 = ($321|0)==(0); + if (!($322)) { + $328 = $317; + break; + } + $323 = ((($trans_i$1144$i)) + 24|0); + $324 = HEAP32[$323>>2]|0; + $325 = (_iswctype($prev_c$2$i,$324)|0); + $326 = ($325|0)==(0); + if ($326) { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$7143$i; + break L361; + } + $$pre186$i = HEAP32[$263>>2]|0; + $328 = $$pre186$i; + } + } while(0); + $327 = $328 & 4; + $329 = ($327|0)==(0); + do { + if (!($329)) { + $330 = HEAP32[$2>>2]|0; + $331 = $330 & 2; + $332 = ($331|0)==(0); + if ($332) { + break; + } + $333 = (_towlower($prev_c$2$i)|0); + $334 = ((($trans_i$1144$i)) + 24|0); + $335 = HEAP32[$334>>2]|0; + $336 = (_iswctype($333,$335)|0); + $337 = ($336|0)==(0); + if (!($337)) { + break; + } + $338 = (_towupper($prev_c$2$i)|0); + $339 = HEAP32[$334>>2]|0; + $340 = (_iswctype($338,$339)|0); + $341 = ($340|0)==(0); + if ($341) { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$7143$i; + break L361; + } + } + } while(0); + $342 = HEAP32[$263>>2]|0; + $343 = $342 & 8; + $344 = ($343|0)==(0); + if ($344) { + break; + } + $345 = ((($trans_i$1144$i)) + 28|0); + $346 = HEAP32[$345>>2]|0; + $347 = HEAP32[$2>>2]|0; + $348 = $347 & 2; + $349 = (_tre_neg_char_classes_match($346,$prev_c$2$i,$348)|0); + $350 = ($349|0)==(0); + if (!($350)) { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$7143$i; + break L361; + } + } + } while(0); + $351 = ($next_state$0147$i|0)==(0|0); + if ($351) { + $352 = HEAP32[$353>>2]|0; + $354 = ((($trans_i$1144$i)) + 16|0); + $355 = HEAP32[$354>>2]|0; + $next_state$1$i = $352;$next_tags$6$i = $355;$stack$11$i = $stack$7143$i; + break; + } + $356 = ((($stack$7143$i)) + 28|0); + $357 = HEAP32[$356>>2]|0; + $358 = ($357|0)==(0|0); + if ($358) { + $359 = (___tre_mem_alloc_impl($20,0,0,0,32)|0); + $360 = ($359|0)==(0|0); + if ($360) { + $next_tags$5142$i$lcssa = $next_tags$5142$i;$stack$7143$i$lcssa = $stack$7143$i; + label = 148; + break L359; + } + $361 = ((($359)) + 24|0); + HEAP32[$361>>2] = $stack$7143$i; + $362 = ((($359)) + 28|0); + HEAP32[$362>>2] = 0; + $363 = HEAP32[$6>>2]|0; + $364 = $363 << 2; + $365 = (___tre_mem_alloc_impl($20,0,0,0,$364)|0); + $366 = ((($359)) + 20|0); + HEAP32[$366>>2] = $365; + $367 = ($365|0)==(0|0); + if ($367) { + $next_tags$5142$i$lcssa146 = $next_tags$5142$i;$stack$7143$i$lcssa144 = $stack$7143$i; + label = 155; + break L359; + } + HEAP32[$356>>2] = $359; + $stack$9$i = $359; + } else { + $stack$9$i = $357; + } + HEAP32[$stack$9$i>>2] = $pos$2$i; + $368 = ((($stack$9$i)) + 4|0); + HEAP32[$368>>2] = $str_byte$3$i; + $369 = HEAP32[$353>>2]|0; + $370 = ((($stack$9$i)) + 8|0); + HEAP32[$370>>2] = $369; + $371 = ((($trans_i$1144$i)) + 12|0); + $372 = HEAP32[$371>>2]|0; + $373 = ((($stack$9$i)) + 12|0); + HEAP32[$373>>2] = $372; + $374 = HEAP32[$next_c$i>>2]|0; + $375 = ((($stack$9$i)) + 16|0); + HEAP32[$375>>2] = $374; + $376 = HEAP32[$6>>2]|0; + $377 = ($376|0)>(0); + if ($377) { + $378 = ((($stack$9$i)) + 20|0); + $379 = HEAP32[$378>>2]|0; + $i5$0134$i = 0; + while(1) { + $380 = (($tags$0$i) + ($i5$0134$i<<2)|0); + $381 = HEAP32[$380>>2]|0; + $382 = (($379) + ($i5$0134$i<<2)|0); + HEAP32[$382>>2] = $381; + $383 = (($i5$0134$i) + 1)|0; + $384 = HEAP32[$6>>2]|0; + $385 = ($383|0)<($384|0); + if ($385) { + $i5$0134$i = $383; + } else { + break; + } + } + } + $386 = ((($trans_i$1144$i)) + 16|0); + $387 = HEAP32[$386>>2]|0; + $388 = ($387|0)==(0|0); + if ($388) { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$9$i; + break; + } + $389 = HEAP32[$387>>2]|0; + $390 = ($389|0)>(-1); + if (!($390)) { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$9$i; + break; + } + $391 = ((($stack$9$i)) + 20|0); + $392 = HEAP32[$391>>2]|0; + $394 = $389;$tmp9$0138$i54 = $387; + while(1) { + $393 = (($392) + ($394<<2)|0); + HEAP32[$393>>2] = $pos$2$i; + $395 = ((($tmp9$0138$i54)) + 4|0); + $396 = HEAP32[$395>>2]|0; + $397 = ($396|0)>(-1); + if ($397) { + $394 = $396;$tmp9$0138$i54 = $395; + } else { + $next_state$1$i = $next_state$0147$i;$next_tags$6$i = $next_tags$5142$i;$stack$11$i = $stack$9$i; + break; + } + } + } + } while(0); + $398 = ((($trans_i$1144$i)) + 32|0); + $399 = ((($trans_i$1144$i)) + 40|0); + $400 = HEAP32[$399>>2]|0; + $401 = ($400|0)==(0|0); + if ($401) { + $next_state$1$i$lcssa = $next_state$1$i;$next_tags$6$i$lcssa = $next_tags$6$i;$stack$11$i$lcssa = $stack$11$i; + label = 170; + break; + } else { + $353 = $399;$next_state$0147$i = $next_state$1$i;$next_tags$5142$i = $next_tags$6$i;$stack$7143$i = $stack$11$i;$trans_i$1144$i = $398; + } + } + if ((label|0) == 148) { + label = 0; + ___tre_mem_destroy($20); + if (!($49)) { + _free($tags$0$i); + } + if (!($50)) { + _free($pmatch$0$i); + } + if ($51) { + $$554$i = 1;$match_eo$4$i = $match_eo$1$i;$next_tags$10$i = $next_tags$5142$i$lcssa;$pos$5$i = $pos$2$i;$pos_add_next$9$i = $pos_add_next$6$i;$stack$14$i = $stack$7143$i$lcssa;$state$5$i = $state$2$i;$str_byte$6$i = $str_byte$3$i; + break; + } + _free($states_seen$0$ph$i); + $$554$i = 1;$match_eo$4$i = $match_eo$1$i;$next_tags$10$i = $next_tags$5142$i$lcssa;$pos$5$i = $pos$2$i;$pos_add_next$9$i = $pos_add_next$6$i;$stack$14$i = $stack$7143$i$lcssa;$state$5$i = $state$2$i;$str_byte$6$i = $str_byte$3$i; + break; + } + else if ((label|0) == 155) { + label = 0; + ___tre_mem_destroy($20); + if (!($49)) { + _free($tags$0$i); + } + if (!($50)) { + _free($pmatch$0$i); + } + if ($51) { + $$554$i = 1;$match_eo$4$i = $match_eo$1$i;$next_tags$10$i = $next_tags$5142$i$lcssa146;$pos$5$i = $pos$2$i;$pos_add_next$9$i = $pos_add_next$6$i;$stack$14$i = $stack$7143$i$lcssa144;$state$5$i = $state$2$i;$str_byte$6$i = $str_byte$3$i; + break; + } + _free($states_seen$0$ph$i); + $$554$i = 1;$match_eo$4$i = $match_eo$1$i;$next_tags$10$i = $next_tags$5142$i$lcssa146;$pos$5$i = $pos$2$i;$pos_add_next$9$i = $pos_add_next$6$i;$stack$14$i = $stack$7143$i$lcssa144;$state$5$i = $state$2$i;$str_byte$6$i = $str_byte$3$i; + break; + } + else if ((label|0) == 170) { + label = 0; + $402 = ($next_state$1$i$lcssa|0)==(0|0); + if ($402) { + $match_eo$2$i = $match_eo$1$i;$next_tags$8$i = $next_tags$6$i$lcssa;$pos$3$i = $pos$2$i;$pos_add_next$7$i = $pos_add_next$6$i;$stack$12$i = $stack$11$i$lcssa;$state$3$i = $state$2$i;$str_byte$4$i = $str_byte$3$i; + label = 174; + continue L316; + } + $403 = ($next_tags$6$i$lcssa|0)==(0|0); + if ($403) { + $$554$i = 0;$match_eo$4$i = $match_eo$1$i;$next_tags$10$i = 0;$pos$5$i = $pos$2$i;$pos_add_next$9$i = $pos_add_next$6$i;$stack$14$i = $stack$11$i$lcssa;$state$5$i = $next_state$1$i$lcssa;$str_byte$6$i = $str_byte$3$i; + break; + } + $404 = HEAP32[$next_tags$6$i$lcssa>>2]|0; + $405 = ($404|0)>(-1); + if ($405) { + $408 = $404;$next_tags$7154$i = $next_tags$6$i$lcssa; + } else { + $$554$i = 0;$match_eo$4$i = $match_eo$1$i;$next_tags$10$i = $next_tags$6$i$lcssa;$pos$5$i = $pos$2$i;$pos_add_next$9$i = $pos_add_next$6$i;$stack$14$i = $stack$11$i$lcssa;$state$5$i = $next_state$1$i$lcssa;$str_byte$6$i = $str_byte$3$i; + break; + } + while(1) { + $406 = ((($next_tags$7154$i)) + 4|0); + $407 = (($tags$0$i) + ($408<<2)|0); + HEAP32[$407>>2] = $pos$2$i; + $409 = HEAP32[$406>>2]|0; + $410 = ($409|0)>(-1); + if ($410) { + $408 = $409;$next_tags$7154$i = $406; + } else { + $$554$i = 0;$match_eo$4$i = $match_eo$1$i;$next_tags$10$i = $406;$pos$5$i = $pos$2$i;$pos_add_next$9$i = $pos_add_next$6$i;$stack$14$i = $stack$11$i$lcssa;$state$5$i = $next_state$1$i$lcssa;$str_byte$6$i = $str_byte$3$i; + break; + } + } + } + } + else if ((label|0) == 174) { + label = 0; + $411 = ((($stack$12$i)) + 24|0); + $412 = HEAP32[$411>>2]|0; + $413 = ($412|0)==(0|0); + if ($413) { + $436 = ($match_eo$2$i|0)>(-1); + $437 = HEAP32[$next_c$i>>2]|0; + $438 = ($437|0)==(0); + $or$cond58$i = $436 | $438; + if ($or$cond58$i) { + $$554$i = 27;$match_eo$4$i = $match_eo$2$i;$next_tags$10$i = $next_tags$8$i;$pos$5$i = $pos$3$i;$pos_add_next$9$i = $pos_add_next$7$i;$stack$14$i = $stack$12$i;$state$5$i = $state$3$i;$str_byte$6$i = $str_byte$4$i; + break; + } + HEAP32[$next_c$i>>2] = $69; + $$554$i = 3;$match_eo$4$i = $match_eo$2$i;$next_tags$10$i = $next_tags$8$i;$pos$5$i = $pos$3$i;$pos_add_next$9$i = $pos_add_next$7$i;$stack$14$i = $stack$12$i;$state$5$i = $state$3$i;$str_byte$6$i = $68; + break; + } + $414 = ((($stack$12$i)) + 8|0); + $415 = HEAP32[$414>>2]|0; + $416 = ((($415)) + 20|0); + $417 = HEAP32[$416>>2]|0; + $418 = $417 & 256; + $419 = ($418|0)==(0); + if (!($419)) { + $420 = ((($stack$12$i)) + 12|0); + $421 = HEAP32[$420>>2]|0; + $422 = (($states_seen$0$ph$i) + ($421<<2)|0); + HEAP32[$422>>2] = 0; + } + $423 = HEAP32[$stack$12$i>>2]|0; + $424 = ((($stack$12$i)) + 4|0); + $425 = HEAP32[$424>>2]|0; + $426 = ((($stack$12$i)) + 16|0); + $427 = HEAP32[$426>>2]|0; + HEAP32[$next_c$i>>2] = $427; + $428 = HEAP32[$6>>2]|0; + $429 = ($428|0)>(0); + if (!($429)) { + $$554$i = 0;$match_eo$4$i = $match_eo$2$i;$next_tags$10$i = $next_tags$8$i;$pos$5$i = $423;$pos_add_next$9$i = $pos_add_next$7$i;$stack$14$i = $412;$state$5$i = $415;$str_byte$6$i = $425; + break; + } + $430 = ((($stack$12$i)) + 20|0); + $431 = HEAP32[$430>>2]|0; + $i10$0130$i = 0; + while(1) { + $432 = (($431) + ($i10$0130$i<<2)|0); + $433 = HEAP32[$432>>2]|0; + $434 = (($tags$0$i) + ($i10$0130$i<<2)|0); + HEAP32[$434>>2] = $433; + $435 = (($i10$0130$i) + 1)|0; + $exitcond75 = ($435|0)==($428|0); + if ($exitcond75) { + $$554$i = 0;$match_eo$4$i = $match_eo$2$i;$next_tags$10$i = $next_tags$8$i;$pos$5$i = $423;$pos_add_next$9$i = $pos_add_next$7$i;$stack$14$i = $412;$state$5$i = $415;$str_byte$6$i = $425; + break; + } else { + $i10$0130$i = $435; + } + } + } + } while(0); + switch ($$554$i|0) { + case 2: { + $eo$0 = 0;$pmatch$1$i = $pmatch$0$i;$ret$7$i = 1;$states_seen$1$i = $states_seen$0$ph$i;$tags$1$i = $tags$0$i; + break L226; + break; + } + case 27: { + $match_eo$4$i$lcssa149 = $match_eo$4$i; + label = 184; + break L234; + break; + } + case 0: { + $match_eo$1$i = $match_eo$4$i;$next_tags$4$i = $next_tags$10$i;$pos$0$i = $pos$5$i;$pos_add_next$2$i = $pos_add_next$9$i;$stack$6$i = $stack$14$i;$state$2$i = $state$5$i;$str_byte$1$i = $str_byte$6$i; + label = 82; + break; + } + case 3: { + break L316; + break; + } + default: { + $$15$i = 12;$eo$1 = 0; + break L219; + } + } + } + $$pre$i = HEAP32[$6>>2]|0; + $52 = $$pre$i;$match_eo$0$i = $match_eo$4$i;$pos_add_next$0$i = $pos_add_next$9$i;$pos_start$0$i = $64;$stack$0$i = $stack$14$i;$str_byte$0$i = $str_byte$6$i; + } + if ((label|0) == 56) { + ___tre_mem_destroy($20); + if (!($49)) { + _free($tags$0$i); + } + if (!($50)) { + _free($pmatch$0$i); + } + if ($51) { + $$15$i = 12;$eo$1 = 0; + break L219; + } + _free($states_seen$0$ph$i); + $$15$i = 12;$eo$1 = 0; + break L219; + } + else if ((label|0) == 63) { + ___tre_mem_destroy($20); + if (!($49)) { + _free($tags$0$i); + } + if (!($50)) { + _free($pmatch$0$i); + } + if ($51) { + $$15$i = 12;$eo$1 = 0; + break L219; + } + _free($states_seen$0$ph$i); + $$15$i = 12;$eo$1 = 0; + break L219; + } + else if ((label|0) == 184) { + $match_eo$4$lobit$i = $match_eo$4$i$lcssa149 >>> 31; + $eo$0 = $match_eo$4$i$lcssa149;$pmatch$1$i = $pmatch$0$i;$ret$7$i = $match_eo$4$lobit$i;$states_seen$1$i = $states_seen$0$ph$i;$tags$1$i = $tags$0$i; + break; + } + } + } while(0); + ___tre_mem_destroy($20); + $439 = ($tags$1$i|0)==(0|0); + if (!($439)) { + _free($tags$1$i); + } + $440 = ($pmatch$1$i|0)==(0|0); + if (!($440)) { + _free($pmatch$1$i); + } + $441 = ($states_seen$1$i|0)==(0|0); + if ($441) { + $$15$i = $ret$7$i;$eo$1 = $eo$0; + } else { + _free($states_seen$1$i); + $$15$i = $ret$7$i;$eo$1 = $eo$0; + } + } + } while(0); + $eo$4 = $eo$1;$status$0 = $$15$i; + } + $825 = ($status$0|0)==(0); + if ($825) { + $826 = HEAP32[$2>>2]|0; + _tre_fill_pmatch($nmatch$,$pmatch,$826,$1,$tags$0,$eo$4); + } + $827 = ($tags$0|0)==(0|0); + if ($827) { + $$0 = $status$0; + } else { + _free($tags$0); + $$0 = $status$0; + } + } + STACKTOP = sp;return ($$0|0); +} +function _tre_tag_order($num_tags,$tag_directions,$t1,$t2) { + $num_tags = $num_tags|0; + $tag_directions = $tag_directions|0; + $t1 = $t1|0; + $t2 = $t2|0; + var $$0 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i$01 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($num_tags|0)>(0); + L1: do { + if ($0) { + $i$01 = 0; + while(1) { + $1 = (($tag_directions) + ($i$01<<2)|0); + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(0); + $4 = (($t1) + ($i$01<<2)|0); + $5 = HEAP32[$4>>2]|0; + $6 = (($t2) + ($i$01<<2)|0); + $7 = HEAP32[$6>>2]|0; + if ($3) { + $8 = ($5|0)<($7|0); + if ($8) { + $$0 = 1; + break L1; + } + $9 = ($5|0)>($7|0); + if ($9) { + $$0 = 0; + break L1; + } + } else { + $10 = ($5|0)>($7|0); + if ($10) { + $$0 = 1; + break L1; + } + $11 = ($5|0)<($7|0); + if ($11) { + $$0 = 0; + break L1; + } + } + $12 = (($i$01) + 1)|0; + $13 = ($12|0)<($num_tags|0); + if ($13) { + $i$01 = $12; + } else { + $$0 = 0; + break; + } + } + } else { + $$0 = 0; + } + } while(0); + return ($$0|0); +} +function _tre_fill_pmatch($nmatch,$pmatch,$cflags,$tnfa,$tags,$match_eo) { + $nmatch = $nmatch|0; + $pmatch = $pmatch|0; + $cflags = $cflags|0; + $tnfa = $tnfa|0; + $tags = $tags|0; + $match_eo = $match_eo|0; + var $$pre = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $7 = 0, $8 = 0, $9 = 0, $exitcond = 0, $i$014 = 0, $i$19 = 0, $i$2$ph = 0, $i$25 = 0, $j$06 = 0, $or$cond = 0, $or$cond22 = 0, $or$cond3 = 0, $or$cond313 = 0, $or$cond4 = 0, $or$cond48 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($match_eo|0)>(-1); + $1 = $cflags & 8; + $2 = ($1|0)==(0); + $or$cond = $2 & $0; + if ($or$cond) { + $4 = ((($tnfa)) + 16|0); + $5 = HEAP32[$4>>2]|0; + $6 = ((($tnfa)) + 28|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0); + $9 = ($nmatch|0)!=(0); + $or$cond313 = $9 & $8; + if ($or$cond313) { + $10 = ((($tnfa)) + 48|0); + $i$014 = 0; + while(1) { + $13 = (($5) + (($i$014*12)|0)|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$10>>2]|0; + $16 = ($14|0)==($15|0); + if ($16) { + $20 = $match_eo; + } else { + $17 = (($tags) + ($14<<2)|0); + $18 = HEAP32[$17>>2]|0; + $20 = $18; + } + $19 = (($pmatch) + ($i$014<<3)|0); + HEAP32[$19>>2] = $20; + $21 = (((($5) + (($i$014*12)|0)|0)) + 4|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$10>>2]|0; + $24 = ($22|0)==($23|0); + if ($24) { + $28 = $match_eo; + } else { + $25 = (($tags) + ($22<<2)|0); + $26 = HEAP32[$25>>2]|0; + $28 = $26; + } + $27 = (((($pmatch) + ($i$014<<3)|0)) + 4|0); + HEAP32[$27>>2] = $28; + $29 = ($20|0)==(-1); + $30 = ($28|0)==(-1); + $or$cond22 = $29 | $30; + if ($or$cond22) { + HEAP32[$27>>2] = -1; + HEAP32[$19>>2] = -1; + } + $31 = (($i$014) + 1)|0; + $32 = HEAP32[$6>>2]|0; + $33 = ($31>>>0)<($32>>>0); + $34 = ($31>>>0)<($nmatch>>>0); + $or$cond3 = $34 & $33; + if ($or$cond3) { + $i$014 = $31; + } else { + $11 = $32; + break; + } + } + } else { + $11 = $7; + } + $12 = ($11|0)!=(0); + $or$cond48 = $9 & $12; + if ($or$cond48) { + $i$19 = 0; + while(1) { + $35 = (((($pmatch) + ($i$19<<3)|0)) + 4|0); + $36 = (((($5) + (($i$19*12)|0)|0)) + 8|0); + $37 = HEAP32[$36>>2]|0; + $38 = ($37|0)==(0|0); + if (!($38)) { + $39 = HEAP32[$37>>2]|0; + $40 = ($39|0)>(-1); + if ($40) { + $41 = (($pmatch) + ($i$19<<3)|0); + $$pre = HEAP32[$41>>2]|0; + $43 = $39;$45 = $$pre;$j$06 = 0; + while(1) { + $42 = (($pmatch) + ($43<<3)|0); + $44 = HEAP32[$42>>2]|0; + $46 = ($45|0)<($44|0); + if ($46) { + label = 18; + } else { + $47 = HEAP32[$35>>2]|0; + $48 = (((($pmatch) + ($43<<3)|0)) + 4|0); + $49 = HEAP32[$48>>2]|0; + $50 = ($47|0)>($49|0); + if ($50) { + label = 18; + } else { + $61 = $45; + } + } + if ((label|0) == 18) { + label = 0; + HEAP32[$35>>2] = -1; + HEAP32[$41>>2] = -1; + $61 = -1; + } + $51 = (($j$06) + 1)|0; + $52 = (($37) + ($51<<2)|0); + $53 = HEAP32[$52>>2]|0; + $54 = ($53|0)>(-1); + if ($54) { + $43 = $53;$45 = $61;$j$06 = $51; + } else { + break; + } + } + } + } + $55 = (($i$19) + 1)|0; + $56 = ($55>>>0)<($11>>>0); + $57 = ($55>>>0)<($nmatch>>>0); + $or$cond4 = $57 & $56; + if ($or$cond4) { + $i$19 = $55; + } else { + $i$2$ph = $55; + break; + } + } + } else { + $i$2$ph = 0; + } + } else { + $i$2$ph = 0; + } + $3 = ($i$2$ph>>>0)<($nmatch>>>0); + if ($3) { + $i$25 = $i$2$ph; + while(1) { + $58 = (($pmatch) + ($i$25<<3)|0); + HEAP32[$58>>2] = -1; + $59 = (((($pmatch) + ($i$25<<3)|0)) + 4|0); + HEAP32[$59>>2] = -1; + $60 = (($i$25) + 1)|0; + $exitcond = ($60|0)==($nmatch|0); + if ($exitcond) { + break; + } else { + $i$25 = $60; + } + } + } + return; +} +function _tre_neg_char_classes_match($classes,$wc,$icase) { + $classes = $classes|0; + $wc = $wc|0; + $icase = $icase|0; + var $$0 = 0, $$012 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + $0 = HEAP32[$classes>>2]|0; + $1 = ($0|0)==(0); + L1: do { + if ($1) { + $$0 = 0; + } else { + $2 = ($icase|0)==(0); + $$012 = $classes;$3 = $0; + while(1) { + if ($2) { + $4 = (_iswctype($wc,$3)|0); + $5 = ($4|0)==(0); + if (!($5)) { + $$0 = 1; + break L1; + } + } else { + $6 = (_towupper($wc)|0); + $7 = HEAP32[$$012>>2]|0; + $8 = (_iswctype($6,$7)|0); + $9 = ($8|0)==(0); + if (!($9)) { + $$0 = 1; + break L1; + } + $10 = (_towlower($wc)|0); + $11 = HEAP32[$$012>>2]|0; + $12 = (_iswctype($10,$11)|0); + $13 = ($12|0)==(0); + if (!($13)) { + $$0 = 1; + break L1; + } + } + $14 = ((($$012)) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)==(0); + if ($16) { + $$0 = 0; + break; + } else { + $$012 = $14;$3 = $15; + } + } + } + } while(0); + return ($$0|0); +} +function _malloc($bytes) { + $bytes = $bytes|0; + var $$0 = 0, $$lcssa = 0, $$lcssa141 = 0, $$lcssa142 = 0, $$lcssa144 = 0, $$lcssa147 = 0, $$lcssa149 = 0, $$lcssa151 = 0, $$lcssa153 = 0, $$lcssa155 = 0, $$lcssa157 = 0, $$not$i = 0, $$pre = 0, $$pre$i = 0, $$pre$i$i = 0, $$pre$i13 = 0, $$pre$i16$i = 0, $$pre$phi$i$iZ2D = 0, $$pre$phi$i14Z2D = 0, $$pre$phi$i17$iZ2D = 0; + var $$pre$phi$iZ2D = 0, $$pre$phi10$i$iZ2D = 0, $$pre$phiZ2D = 0, $$pre71 = 0, $$pre9$i$i = 0, $$rsize$0$i = 0, $$rsize$4$i = 0, $$v$0$i = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0; + var $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0, $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0; + var $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0, $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0; + var $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0, $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0; + var $1062 = 0, $1063 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0; + var $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0; + var $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0; + var $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0; + var $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0; + var $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0; + var $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0; + var $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0; + var $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0; + var $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0; + var $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0; + var $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0; + var $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0; + var $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0; + var $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0; + var $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0; + var $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0; + var $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0; + var $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0; + var $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0; + var $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0; + var $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0; + var $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0; + var $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0; + var $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0; + var $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0; + var $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0; + var $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0; + var $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0; + var $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0; + var $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0; + var $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0; + var $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0; + var $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0; + var $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0; + var $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0; + var $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0; + var $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0; + var $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0; + var $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0; + var $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0; + var $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0; + var $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0; + var $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0; + var $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0; + var $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0; + var $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0; + var $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0, $963 = 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0; + var $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0, $981 = 0, $982 = 0, $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0; + var $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0, $F$0$i$i = 0, $F1$0$i = 0, $F4$0 = 0, $F4$0$i$i = 0, $F5$0$i = 0, $I1$0$i$i = 0, $I7$0$i = 0, $I7$0$i$i = 0; + var $K12$0$i = 0, $K2$0$i$i = 0, $K8$0$i$i = 0, $R$1$i = 0, $R$1$i$i = 0, $R$1$i$i$lcssa = 0, $R$1$i$lcssa = 0, $R$1$i9 = 0, $R$1$i9$lcssa = 0, $R$3$i = 0, $R$3$i$i = 0, $R$3$i11 = 0, $RP$1$i = 0, $RP$1$i$i = 0, $RP$1$i$i$lcssa = 0, $RP$1$i$lcssa = 0, $RP$1$i8 = 0, $RP$1$i8$lcssa = 0, $T$0$i = 0, $T$0$i$i = 0; + var $T$0$i$i$lcssa = 0, $T$0$i$i$lcssa140 = 0, $T$0$i$lcssa = 0, $T$0$i$lcssa156 = 0, $T$0$i18$i = 0, $T$0$i18$i$lcssa = 0, $T$0$i18$i$lcssa139 = 0, $br$2$ph$i = 0, $cond$i = 0, $cond$i$i = 0, $cond$i12 = 0, $exitcond$i$i = 0, $i$01$i$i = 0, $idx$0$i = 0, $nb$0 = 0, $not$$i$i = 0, $not$$i20$i = 0, $not$7$i = 0, $oldfirst$0$i$i = 0, $or$cond$i = 0; + var $or$cond$i17 = 0, $or$cond1$i = 0, $or$cond1$i16 = 0, $or$cond10$i = 0, $or$cond11$i = 0, $or$cond2$i = 0, $or$cond48$i = 0, $or$cond5$i = 0, $or$cond7$i = 0, $or$cond8$i = 0, $p$0$i$i = 0, $qsize$0$i$i = 0, $rsize$0$i = 0, $rsize$0$i$lcssa = 0, $rsize$0$i5 = 0, $rsize$1$i = 0, $rsize$3$i = 0, $rsize$4$lcssa$i = 0, $rsize$412$i = 0, $rst$0$i = 0; + var $rst$1$i = 0, $sizebits$0$$i = 0, $sizebits$0$i = 0, $sp$0$i$i = 0, $sp$0$i$i$i = 0, $sp$068$i = 0, $sp$068$i$lcssa = 0, $sp$167$i = 0, $sp$167$i$lcssa = 0, $ssize$0$i = 0, $ssize$2$ph$i = 0, $ssize$5$i = 0, $t$0$i = 0, $t$0$i4 = 0, $t$2$i = 0, $t$4$ph$i = 0, $t$4$v$4$i = 0, $t$411$i = 0, $tbase$746$i = 0, $tsize$745$i = 0; + var $v$0$i = 0, $v$0$i$lcssa = 0, $v$0$i6 = 0, $v$1$i = 0, $v$3$i = 0, $v$4$lcssa$i = 0, $v$413$i = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($bytes>>>0)<(245); + do { + if ($0) { + $1 = ($bytes>>>0)<(11); + $2 = (($bytes) + 11)|0; + $3 = $2 & -8; + $4 = $1 ? 16 : $3; + $5 = $4 >>> 3; + $6 = HEAP32[17795]|0; + $7 = $6 >>> $5; + $8 = $7 & 3; + $9 = ($8|0)==(0); + if (!($9)) { + $10 = $7 & 1; + $11 = $10 ^ 1; + $12 = (($11) + ($5))|0; + $13 = $12 << 1; + $14 = (71220 + ($13<<2)|0); + $15 = ((($14)) + 8|0); + $16 = HEAP32[$15>>2]|0; + $17 = ((($16)) + 8|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($14|0)==($18|0); + do { + if ($19) { + $20 = 1 << $12; + $21 = $20 ^ -1; + $22 = $6 & $21; + HEAP32[17795] = $22; + } else { + $23 = HEAP32[(71196)>>2]|0; + $24 = ($18>>>0)<($23>>>0); + if ($24) { + _abort(); + // unreachable; + } + $25 = ((($18)) + 12|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)==($16|0); + if ($27) { + HEAP32[$25>>2] = $14; + HEAP32[$15>>2] = $18; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $28 = $12 << 3; + $29 = $28 | 3; + $30 = ((($16)) + 4|0); + HEAP32[$30>>2] = $29; + $31 = (($16) + ($28)|0); + $32 = ((($31)) + 4|0); + $33 = HEAP32[$32>>2]|0; + $34 = $33 | 1; + HEAP32[$32>>2] = $34; + $$0 = $17; + return ($$0|0); + } + $35 = HEAP32[(71188)>>2]|0; + $36 = ($4>>>0)>($35>>>0); + if ($36) { + $37 = ($7|0)==(0); + if (!($37)) { + $38 = $7 << $5; + $39 = 2 << $5; + $40 = (0 - ($39))|0; + $41 = $39 | $40; + $42 = $38 & $41; + $43 = (0 - ($42))|0; + $44 = $42 & $43; + $45 = (($44) + -1)|0; + $46 = $45 >>> 12; + $47 = $46 & 16; + $48 = $45 >>> $47; + $49 = $48 >>> 5; + $50 = $49 & 8; + $51 = $50 | $47; + $52 = $48 >>> $50; + $53 = $52 >>> 2; + $54 = $53 & 4; + $55 = $51 | $54; + $56 = $52 >>> $54; + $57 = $56 >>> 1; + $58 = $57 & 2; + $59 = $55 | $58; + $60 = $56 >>> $58; + $61 = $60 >>> 1; + $62 = $61 & 1; + $63 = $59 | $62; + $64 = $60 >>> $62; + $65 = (($63) + ($64))|0; + $66 = $65 << 1; + $67 = (71220 + ($66<<2)|0); + $68 = ((($67)) + 8|0); + $69 = HEAP32[$68>>2]|0; + $70 = ((($69)) + 8|0); + $71 = HEAP32[$70>>2]|0; + $72 = ($67|0)==($71|0); + do { + if ($72) { + $73 = 1 << $65; + $74 = $73 ^ -1; + $75 = $6 & $74; + HEAP32[17795] = $75; + $89 = $35; + } else { + $76 = HEAP32[(71196)>>2]|0; + $77 = ($71>>>0)<($76>>>0); + if ($77) { + _abort(); + // unreachable; + } + $78 = ((($71)) + 12|0); + $79 = HEAP32[$78>>2]|0; + $80 = ($79|0)==($69|0); + if ($80) { + HEAP32[$78>>2] = $67; + HEAP32[$68>>2] = $71; + $$pre = HEAP32[(71188)>>2]|0; + $89 = $$pre; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $81 = $65 << 3; + $82 = (($81) - ($4))|0; + $83 = $4 | 3; + $84 = ((($69)) + 4|0); + HEAP32[$84>>2] = $83; + $85 = (($69) + ($4)|0); + $86 = $82 | 1; + $87 = ((($85)) + 4|0); + HEAP32[$87>>2] = $86; + $88 = (($85) + ($82)|0); + HEAP32[$88>>2] = $82; + $90 = ($89|0)==(0); + if (!($90)) { + $91 = HEAP32[(71200)>>2]|0; + $92 = $89 >>> 3; + $93 = $92 << 1; + $94 = (71220 + ($93<<2)|0); + $95 = HEAP32[17795]|0; + $96 = 1 << $92; + $97 = $95 & $96; + $98 = ($97|0)==(0); + if ($98) { + $99 = $95 | $96; + HEAP32[17795] = $99; + $$pre71 = ((($94)) + 8|0); + $$pre$phiZ2D = $$pre71;$F4$0 = $94; + } else { + $100 = ((($94)) + 8|0); + $101 = HEAP32[$100>>2]|0; + $102 = HEAP32[(71196)>>2]|0; + $103 = ($101>>>0)<($102>>>0); + if ($103) { + _abort(); + // unreachable; + } else { + $$pre$phiZ2D = $100;$F4$0 = $101; + } + } + HEAP32[$$pre$phiZ2D>>2] = $91; + $104 = ((($F4$0)) + 12|0); + HEAP32[$104>>2] = $91; + $105 = ((($91)) + 8|0); + HEAP32[$105>>2] = $F4$0; + $106 = ((($91)) + 12|0); + HEAP32[$106>>2] = $94; + } + HEAP32[(71188)>>2] = $82; + HEAP32[(71200)>>2] = $85; + $$0 = $70; + return ($$0|0); + } + $107 = HEAP32[(71184)>>2]|0; + $108 = ($107|0)==(0); + if ($108) { + $nb$0 = $4; + } else { + $109 = (0 - ($107))|0; + $110 = $107 & $109; + $111 = (($110) + -1)|0; + $112 = $111 >>> 12; + $113 = $112 & 16; + $114 = $111 >>> $113; + $115 = $114 >>> 5; + $116 = $115 & 8; + $117 = $116 | $113; + $118 = $114 >>> $116; + $119 = $118 >>> 2; + $120 = $119 & 4; + $121 = $117 | $120; + $122 = $118 >>> $120; + $123 = $122 >>> 1; + $124 = $123 & 2; + $125 = $121 | $124; + $126 = $122 >>> $124; + $127 = $126 >>> 1; + $128 = $127 & 1; + $129 = $125 | $128; + $130 = $126 >>> $128; + $131 = (($129) + ($130))|0; + $132 = (71484 + ($131<<2)|0); + $133 = HEAP32[$132>>2]|0; + $134 = ((($133)) + 4|0); + $135 = HEAP32[$134>>2]|0; + $136 = $135 & -8; + $137 = (($136) - ($4))|0; + $rsize$0$i = $137;$t$0$i = $133;$v$0$i = $133; + while(1) { + $138 = ((($t$0$i)) + 16|0); + $139 = HEAP32[$138>>2]|0; + $140 = ($139|0)==(0|0); + if ($140) { + $141 = ((($t$0$i)) + 20|0); + $142 = HEAP32[$141>>2]|0; + $143 = ($142|0)==(0|0); + if ($143) { + $rsize$0$i$lcssa = $rsize$0$i;$v$0$i$lcssa = $v$0$i; + break; + } else { + $145 = $142; + } + } else { + $145 = $139; + } + $144 = ((($145)) + 4|0); + $146 = HEAP32[$144>>2]|0; + $147 = $146 & -8; + $148 = (($147) - ($4))|0; + $149 = ($148>>>0)<($rsize$0$i>>>0); + $$rsize$0$i = $149 ? $148 : $rsize$0$i; + $$v$0$i = $149 ? $145 : $v$0$i; + $rsize$0$i = $$rsize$0$i;$t$0$i = $145;$v$0$i = $$v$0$i; + } + $150 = HEAP32[(71196)>>2]|0; + $151 = ($v$0$i$lcssa>>>0)<($150>>>0); + if ($151) { + _abort(); + // unreachable; + } + $152 = (($v$0$i$lcssa) + ($4)|0); + $153 = ($v$0$i$lcssa>>>0)<($152>>>0); + if (!($153)) { + _abort(); + // unreachable; + } + $154 = ((($v$0$i$lcssa)) + 24|0); + $155 = HEAP32[$154>>2]|0; + $156 = ((($v$0$i$lcssa)) + 12|0); + $157 = HEAP32[$156>>2]|0; + $158 = ($157|0)==($v$0$i$lcssa|0); + do { + if ($158) { + $168 = ((($v$0$i$lcssa)) + 20|0); + $169 = HEAP32[$168>>2]|0; + $170 = ($169|0)==(0|0); + if ($170) { + $171 = ((($v$0$i$lcssa)) + 16|0); + $172 = HEAP32[$171>>2]|0; + $173 = ($172|0)==(0|0); + if ($173) { + $R$3$i = 0; + break; + } else { + $R$1$i = $172;$RP$1$i = $171; + } + } else { + $R$1$i = $169;$RP$1$i = $168; + } + while(1) { + $174 = ((($R$1$i)) + 20|0); + $175 = HEAP32[$174>>2]|0; + $176 = ($175|0)==(0|0); + if (!($176)) { + $R$1$i = $175;$RP$1$i = $174; + continue; + } + $177 = ((($R$1$i)) + 16|0); + $178 = HEAP32[$177>>2]|0; + $179 = ($178|0)==(0|0); + if ($179) { + $R$1$i$lcssa = $R$1$i;$RP$1$i$lcssa = $RP$1$i; + break; + } else { + $R$1$i = $178;$RP$1$i = $177; + } + } + $180 = ($RP$1$i$lcssa>>>0)<($150>>>0); + if ($180) { + _abort(); + // unreachable; + } else { + HEAP32[$RP$1$i$lcssa>>2] = 0; + $R$3$i = $R$1$i$lcssa; + break; + } + } else { + $159 = ((($v$0$i$lcssa)) + 8|0); + $160 = HEAP32[$159>>2]|0; + $161 = ($160>>>0)<($150>>>0); + if ($161) { + _abort(); + // unreachable; + } + $162 = ((($160)) + 12|0); + $163 = HEAP32[$162>>2]|0; + $164 = ($163|0)==($v$0$i$lcssa|0); + if (!($164)) { + _abort(); + // unreachable; + } + $165 = ((($157)) + 8|0); + $166 = HEAP32[$165>>2]|0; + $167 = ($166|0)==($v$0$i$lcssa|0); + if ($167) { + HEAP32[$162>>2] = $157; + HEAP32[$165>>2] = $160; + $R$3$i = $157; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $181 = ($155|0)==(0|0); + do { + if (!($181)) { + $182 = ((($v$0$i$lcssa)) + 28|0); + $183 = HEAP32[$182>>2]|0; + $184 = (71484 + ($183<<2)|0); + $185 = HEAP32[$184>>2]|0; + $186 = ($v$0$i$lcssa|0)==($185|0); + if ($186) { + HEAP32[$184>>2] = $R$3$i; + $cond$i = ($R$3$i|0)==(0|0); + if ($cond$i) { + $187 = 1 << $183; + $188 = $187 ^ -1; + $189 = HEAP32[(71184)>>2]|0; + $190 = $189 & $188; + HEAP32[(71184)>>2] = $190; + break; + } + } else { + $191 = HEAP32[(71196)>>2]|0; + $192 = ($155>>>0)<($191>>>0); + if ($192) { + _abort(); + // unreachable; + } + $193 = ((($155)) + 16|0); + $194 = HEAP32[$193>>2]|0; + $195 = ($194|0)==($v$0$i$lcssa|0); + if ($195) { + HEAP32[$193>>2] = $R$3$i; + } else { + $196 = ((($155)) + 20|0); + HEAP32[$196>>2] = $R$3$i; + } + $197 = ($R$3$i|0)==(0|0); + if ($197) { + break; + } + } + $198 = HEAP32[(71196)>>2]|0; + $199 = ($R$3$i>>>0)<($198>>>0); + if ($199) { + _abort(); + // unreachable; + } + $200 = ((($R$3$i)) + 24|0); + HEAP32[$200>>2] = $155; + $201 = ((($v$0$i$lcssa)) + 16|0); + $202 = HEAP32[$201>>2]|0; + $203 = ($202|0)==(0|0); + do { + if (!($203)) { + $204 = ($202>>>0)<($198>>>0); + if ($204) { + _abort(); + // unreachable; + } else { + $205 = ((($R$3$i)) + 16|0); + HEAP32[$205>>2] = $202; + $206 = ((($202)) + 24|0); + HEAP32[$206>>2] = $R$3$i; + break; + } + } + } while(0); + $207 = ((($v$0$i$lcssa)) + 20|0); + $208 = HEAP32[$207>>2]|0; + $209 = ($208|0)==(0|0); + if (!($209)) { + $210 = HEAP32[(71196)>>2]|0; + $211 = ($208>>>0)<($210>>>0); + if ($211) { + _abort(); + // unreachable; + } else { + $212 = ((($R$3$i)) + 20|0); + HEAP32[$212>>2] = $208; + $213 = ((($208)) + 24|0); + HEAP32[$213>>2] = $R$3$i; + break; + } + } + } + } while(0); + $214 = ($rsize$0$i$lcssa>>>0)<(16); + if ($214) { + $215 = (($rsize$0$i$lcssa) + ($4))|0; + $216 = $215 | 3; + $217 = ((($v$0$i$lcssa)) + 4|0); + HEAP32[$217>>2] = $216; + $218 = (($v$0$i$lcssa) + ($215)|0); + $219 = ((($218)) + 4|0); + $220 = HEAP32[$219>>2]|0; + $221 = $220 | 1; + HEAP32[$219>>2] = $221; + } else { + $222 = $4 | 3; + $223 = ((($v$0$i$lcssa)) + 4|0); + HEAP32[$223>>2] = $222; + $224 = $rsize$0$i$lcssa | 1; + $225 = ((($152)) + 4|0); + HEAP32[$225>>2] = $224; + $226 = (($152) + ($rsize$0$i$lcssa)|0); + HEAP32[$226>>2] = $rsize$0$i$lcssa; + $227 = HEAP32[(71188)>>2]|0; + $228 = ($227|0)==(0); + if (!($228)) { + $229 = HEAP32[(71200)>>2]|0; + $230 = $227 >>> 3; + $231 = $230 << 1; + $232 = (71220 + ($231<<2)|0); + $233 = HEAP32[17795]|0; + $234 = 1 << $230; + $235 = $233 & $234; + $236 = ($235|0)==(0); + if ($236) { + $237 = $233 | $234; + HEAP32[17795] = $237; + $$pre$i = ((($232)) + 8|0); + $$pre$phi$iZ2D = $$pre$i;$F1$0$i = $232; + } else { + $238 = ((($232)) + 8|0); + $239 = HEAP32[$238>>2]|0; + $240 = HEAP32[(71196)>>2]|0; + $241 = ($239>>>0)<($240>>>0); + if ($241) { + _abort(); + // unreachable; + } else { + $$pre$phi$iZ2D = $238;$F1$0$i = $239; + } + } + HEAP32[$$pre$phi$iZ2D>>2] = $229; + $242 = ((($F1$0$i)) + 12|0); + HEAP32[$242>>2] = $229; + $243 = ((($229)) + 8|0); + HEAP32[$243>>2] = $F1$0$i; + $244 = ((($229)) + 12|0); + HEAP32[$244>>2] = $232; + } + HEAP32[(71188)>>2] = $rsize$0$i$lcssa; + HEAP32[(71200)>>2] = $152; + } + $245 = ((($v$0$i$lcssa)) + 8|0); + $$0 = $245; + return ($$0|0); + } + } else { + $nb$0 = $4; + } + } else { + $246 = ($bytes>>>0)>(4294967231); + if ($246) { + $nb$0 = -1; + } else { + $247 = (($bytes) + 11)|0; + $248 = $247 & -8; + $249 = HEAP32[(71184)>>2]|0; + $250 = ($249|0)==(0); + if ($250) { + $nb$0 = $248; + } else { + $251 = (0 - ($248))|0; + $252 = $247 >>> 8; + $253 = ($252|0)==(0); + if ($253) { + $idx$0$i = 0; + } else { + $254 = ($248>>>0)>(16777215); + if ($254) { + $idx$0$i = 31; + } else { + $255 = (($252) + 1048320)|0; + $256 = $255 >>> 16; + $257 = $256 & 8; + $258 = $252 << $257; + $259 = (($258) + 520192)|0; + $260 = $259 >>> 16; + $261 = $260 & 4; + $262 = $261 | $257; + $263 = $258 << $261; + $264 = (($263) + 245760)|0; + $265 = $264 >>> 16; + $266 = $265 & 2; + $267 = $262 | $266; + $268 = (14 - ($267))|0; + $269 = $263 << $266; + $270 = $269 >>> 15; + $271 = (($268) + ($270))|0; + $272 = $271 << 1; + $273 = (($271) + 7)|0; + $274 = $248 >>> $273; + $275 = $274 & 1; + $276 = $275 | $272; + $idx$0$i = $276; + } + } + $277 = (71484 + ($idx$0$i<<2)|0); + $278 = HEAP32[$277>>2]|0; + $279 = ($278|0)==(0|0); + L123: do { + if ($279) { + $rsize$3$i = $251;$t$2$i = 0;$v$3$i = 0; + label = 86; + } else { + $280 = ($idx$0$i|0)==(31); + $281 = $idx$0$i >>> 1; + $282 = (25 - ($281))|0; + $283 = $280 ? 0 : $282; + $284 = $248 << $283; + $rsize$0$i5 = $251;$rst$0$i = 0;$sizebits$0$i = $284;$t$0$i4 = $278;$v$0$i6 = 0; + while(1) { + $285 = ((($t$0$i4)) + 4|0); + $286 = HEAP32[$285>>2]|0; + $287 = $286 & -8; + $288 = (($287) - ($248))|0; + $289 = ($288>>>0)<($rsize$0$i5>>>0); + if ($289) { + $290 = ($287|0)==($248|0); + if ($290) { + $rsize$412$i = $288;$t$411$i = $t$0$i4;$v$413$i = $t$0$i4; + label = 90; + break L123; + } else { + $rsize$1$i = $288;$v$1$i = $t$0$i4; + } + } else { + $rsize$1$i = $rsize$0$i5;$v$1$i = $v$0$i6; + } + $291 = ((($t$0$i4)) + 20|0); + $292 = HEAP32[$291>>2]|0; + $293 = $sizebits$0$i >>> 31; + $294 = (((($t$0$i4)) + 16|0) + ($293<<2)|0); + $295 = HEAP32[$294>>2]|0; + $296 = ($292|0)==(0|0); + $297 = ($292|0)==($295|0); + $or$cond1$i = $296 | $297; + $rst$1$i = $or$cond1$i ? $rst$0$i : $292; + $298 = ($295|0)==(0|0); + $299 = $298&1; + $300 = $299 ^ 1; + $sizebits$0$$i = $sizebits$0$i << $300; + if ($298) { + $rsize$3$i = $rsize$1$i;$t$2$i = $rst$1$i;$v$3$i = $v$1$i; + label = 86; + break; + } else { + $rsize$0$i5 = $rsize$1$i;$rst$0$i = $rst$1$i;$sizebits$0$i = $sizebits$0$$i;$t$0$i4 = $295;$v$0$i6 = $v$1$i; + } + } + } + } while(0); + if ((label|0) == 86) { + $301 = ($t$2$i|0)==(0|0); + $302 = ($v$3$i|0)==(0|0); + $or$cond$i = $301 & $302; + if ($or$cond$i) { + $303 = 2 << $idx$0$i; + $304 = (0 - ($303))|0; + $305 = $303 | $304; + $306 = $249 & $305; + $307 = ($306|0)==(0); + if ($307) { + $nb$0 = $248; + break; + } + $308 = (0 - ($306))|0; + $309 = $306 & $308; + $310 = (($309) + -1)|0; + $311 = $310 >>> 12; + $312 = $311 & 16; + $313 = $310 >>> $312; + $314 = $313 >>> 5; + $315 = $314 & 8; + $316 = $315 | $312; + $317 = $313 >>> $315; + $318 = $317 >>> 2; + $319 = $318 & 4; + $320 = $316 | $319; + $321 = $317 >>> $319; + $322 = $321 >>> 1; + $323 = $322 & 2; + $324 = $320 | $323; + $325 = $321 >>> $323; + $326 = $325 >>> 1; + $327 = $326 & 1; + $328 = $324 | $327; + $329 = $325 >>> $327; + $330 = (($328) + ($329))|0; + $331 = (71484 + ($330<<2)|0); + $332 = HEAP32[$331>>2]|0; + $t$4$ph$i = $332; + } else { + $t$4$ph$i = $t$2$i; + } + $333 = ($t$4$ph$i|0)==(0|0); + if ($333) { + $rsize$4$lcssa$i = $rsize$3$i;$v$4$lcssa$i = $v$3$i; + } else { + $rsize$412$i = $rsize$3$i;$t$411$i = $t$4$ph$i;$v$413$i = $v$3$i; + label = 90; + } + } + if ((label|0) == 90) { + while(1) { + label = 0; + $334 = ((($t$411$i)) + 4|0); + $335 = HEAP32[$334>>2]|0; + $336 = $335 & -8; + $337 = (($336) - ($248))|0; + $338 = ($337>>>0)<($rsize$412$i>>>0); + $$rsize$4$i = $338 ? $337 : $rsize$412$i; + $t$4$v$4$i = $338 ? $t$411$i : $v$413$i; + $339 = ((($t$411$i)) + 16|0); + $340 = HEAP32[$339>>2]|0; + $341 = ($340|0)==(0|0); + if (!($341)) { + $rsize$412$i = $$rsize$4$i;$t$411$i = $340;$v$413$i = $t$4$v$4$i; + label = 90; + continue; + } + $342 = ((($t$411$i)) + 20|0); + $343 = HEAP32[$342>>2]|0; + $344 = ($343|0)==(0|0); + if ($344) { + $rsize$4$lcssa$i = $$rsize$4$i;$v$4$lcssa$i = $t$4$v$4$i; + break; + } else { + $rsize$412$i = $$rsize$4$i;$t$411$i = $343;$v$413$i = $t$4$v$4$i; + label = 90; + } + } + } + $345 = ($v$4$lcssa$i|0)==(0|0); + if ($345) { + $nb$0 = $248; + } else { + $346 = HEAP32[(71188)>>2]|0; + $347 = (($346) - ($248))|0; + $348 = ($rsize$4$lcssa$i>>>0)<($347>>>0); + if ($348) { + $349 = HEAP32[(71196)>>2]|0; + $350 = ($v$4$lcssa$i>>>0)<($349>>>0); + if ($350) { + _abort(); + // unreachable; + } + $351 = (($v$4$lcssa$i) + ($248)|0); + $352 = ($v$4$lcssa$i>>>0)<($351>>>0); + if (!($352)) { + _abort(); + // unreachable; + } + $353 = ((($v$4$lcssa$i)) + 24|0); + $354 = HEAP32[$353>>2]|0; + $355 = ((($v$4$lcssa$i)) + 12|0); + $356 = HEAP32[$355>>2]|0; + $357 = ($356|0)==($v$4$lcssa$i|0); + do { + if ($357) { + $367 = ((($v$4$lcssa$i)) + 20|0); + $368 = HEAP32[$367>>2]|0; + $369 = ($368|0)==(0|0); + if ($369) { + $370 = ((($v$4$lcssa$i)) + 16|0); + $371 = HEAP32[$370>>2]|0; + $372 = ($371|0)==(0|0); + if ($372) { + $R$3$i11 = 0; + break; + } else { + $R$1$i9 = $371;$RP$1$i8 = $370; + } + } else { + $R$1$i9 = $368;$RP$1$i8 = $367; + } + while(1) { + $373 = ((($R$1$i9)) + 20|0); + $374 = HEAP32[$373>>2]|0; + $375 = ($374|0)==(0|0); + if (!($375)) { + $R$1$i9 = $374;$RP$1$i8 = $373; + continue; + } + $376 = ((($R$1$i9)) + 16|0); + $377 = HEAP32[$376>>2]|0; + $378 = ($377|0)==(0|0); + if ($378) { + $R$1$i9$lcssa = $R$1$i9;$RP$1$i8$lcssa = $RP$1$i8; + break; + } else { + $R$1$i9 = $377;$RP$1$i8 = $376; + } + } + $379 = ($RP$1$i8$lcssa>>>0)<($349>>>0); + if ($379) { + _abort(); + // unreachable; + } else { + HEAP32[$RP$1$i8$lcssa>>2] = 0; + $R$3$i11 = $R$1$i9$lcssa; + break; + } + } else { + $358 = ((($v$4$lcssa$i)) + 8|0); + $359 = HEAP32[$358>>2]|0; + $360 = ($359>>>0)<($349>>>0); + if ($360) { + _abort(); + // unreachable; + } + $361 = ((($359)) + 12|0); + $362 = HEAP32[$361>>2]|0; + $363 = ($362|0)==($v$4$lcssa$i|0); + if (!($363)) { + _abort(); + // unreachable; + } + $364 = ((($356)) + 8|0); + $365 = HEAP32[$364>>2]|0; + $366 = ($365|0)==($v$4$lcssa$i|0); + if ($366) { + HEAP32[$361>>2] = $356; + HEAP32[$364>>2] = $359; + $R$3$i11 = $356; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $380 = ($354|0)==(0|0); + do { + if (!($380)) { + $381 = ((($v$4$lcssa$i)) + 28|0); + $382 = HEAP32[$381>>2]|0; + $383 = (71484 + ($382<<2)|0); + $384 = HEAP32[$383>>2]|0; + $385 = ($v$4$lcssa$i|0)==($384|0); + if ($385) { + HEAP32[$383>>2] = $R$3$i11; + $cond$i12 = ($R$3$i11|0)==(0|0); + if ($cond$i12) { + $386 = 1 << $382; + $387 = $386 ^ -1; + $388 = HEAP32[(71184)>>2]|0; + $389 = $388 & $387; + HEAP32[(71184)>>2] = $389; + break; + } + } else { + $390 = HEAP32[(71196)>>2]|0; + $391 = ($354>>>0)<($390>>>0); + if ($391) { + _abort(); + // unreachable; + } + $392 = ((($354)) + 16|0); + $393 = HEAP32[$392>>2]|0; + $394 = ($393|0)==($v$4$lcssa$i|0); + if ($394) { + HEAP32[$392>>2] = $R$3$i11; + } else { + $395 = ((($354)) + 20|0); + HEAP32[$395>>2] = $R$3$i11; + } + $396 = ($R$3$i11|0)==(0|0); + if ($396) { + break; + } + } + $397 = HEAP32[(71196)>>2]|0; + $398 = ($R$3$i11>>>0)<($397>>>0); + if ($398) { + _abort(); + // unreachable; + } + $399 = ((($R$3$i11)) + 24|0); + HEAP32[$399>>2] = $354; + $400 = ((($v$4$lcssa$i)) + 16|0); + $401 = HEAP32[$400>>2]|0; + $402 = ($401|0)==(0|0); + do { + if (!($402)) { + $403 = ($401>>>0)<($397>>>0); + if ($403) { + _abort(); + // unreachable; + } else { + $404 = ((($R$3$i11)) + 16|0); + HEAP32[$404>>2] = $401; + $405 = ((($401)) + 24|0); + HEAP32[$405>>2] = $R$3$i11; + break; + } + } + } while(0); + $406 = ((($v$4$lcssa$i)) + 20|0); + $407 = HEAP32[$406>>2]|0; + $408 = ($407|0)==(0|0); + if (!($408)) { + $409 = HEAP32[(71196)>>2]|0; + $410 = ($407>>>0)<($409>>>0); + if ($410) { + _abort(); + // unreachable; + } else { + $411 = ((($R$3$i11)) + 20|0); + HEAP32[$411>>2] = $407; + $412 = ((($407)) + 24|0); + HEAP32[$412>>2] = $R$3$i11; + break; + } + } + } + } while(0); + $413 = ($rsize$4$lcssa$i>>>0)<(16); + do { + if ($413) { + $414 = (($rsize$4$lcssa$i) + ($248))|0; + $415 = $414 | 3; + $416 = ((($v$4$lcssa$i)) + 4|0); + HEAP32[$416>>2] = $415; + $417 = (($v$4$lcssa$i) + ($414)|0); + $418 = ((($417)) + 4|0); + $419 = HEAP32[$418>>2]|0; + $420 = $419 | 1; + HEAP32[$418>>2] = $420; + } else { + $421 = $248 | 3; + $422 = ((($v$4$lcssa$i)) + 4|0); + HEAP32[$422>>2] = $421; + $423 = $rsize$4$lcssa$i | 1; + $424 = ((($351)) + 4|0); + HEAP32[$424>>2] = $423; + $425 = (($351) + ($rsize$4$lcssa$i)|0); + HEAP32[$425>>2] = $rsize$4$lcssa$i; + $426 = $rsize$4$lcssa$i >>> 3; + $427 = ($rsize$4$lcssa$i>>>0)<(256); + if ($427) { + $428 = $426 << 1; + $429 = (71220 + ($428<<2)|0); + $430 = HEAP32[17795]|0; + $431 = 1 << $426; + $432 = $430 & $431; + $433 = ($432|0)==(0); + if ($433) { + $434 = $430 | $431; + HEAP32[17795] = $434; + $$pre$i13 = ((($429)) + 8|0); + $$pre$phi$i14Z2D = $$pre$i13;$F5$0$i = $429; + } else { + $435 = ((($429)) + 8|0); + $436 = HEAP32[$435>>2]|0; + $437 = HEAP32[(71196)>>2]|0; + $438 = ($436>>>0)<($437>>>0); + if ($438) { + _abort(); + // unreachable; + } else { + $$pre$phi$i14Z2D = $435;$F5$0$i = $436; + } + } + HEAP32[$$pre$phi$i14Z2D>>2] = $351; + $439 = ((($F5$0$i)) + 12|0); + HEAP32[$439>>2] = $351; + $440 = ((($351)) + 8|0); + HEAP32[$440>>2] = $F5$0$i; + $441 = ((($351)) + 12|0); + HEAP32[$441>>2] = $429; + break; + } + $442 = $rsize$4$lcssa$i >>> 8; + $443 = ($442|0)==(0); + if ($443) { + $I7$0$i = 0; + } else { + $444 = ($rsize$4$lcssa$i>>>0)>(16777215); + if ($444) { + $I7$0$i = 31; + } else { + $445 = (($442) + 1048320)|0; + $446 = $445 >>> 16; + $447 = $446 & 8; + $448 = $442 << $447; + $449 = (($448) + 520192)|0; + $450 = $449 >>> 16; + $451 = $450 & 4; + $452 = $451 | $447; + $453 = $448 << $451; + $454 = (($453) + 245760)|0; + $455 = $454 >>> 16; + $456 = $455 & 2; + $457 = $452 | $456; + $458 = (14 - ($457))|0; + $459 = $453 << $456; + $460 = $459 >>> 15; + $461 = (($458) + ($460))|0; + $462 = $461 << 1; + $463 = (($461) + 7)|0; + $464 = $rsize$4$lcssa$i >>> $463; + $465 = $464 & 1; + $466 = $465 | $462; + $I7$0$i = $466; + } + } + $467 = (71484 + ($I7$0$i<<2)|0); + $468 = ((($351)) + 28|0); + HEAP32[$468>>2] = $I7$0$i; + $469 = ((($351)) + 16|0); + $470 = ((($469)) + 4|0); + HEAP32[$470>>2] = 0; + HEAP32[$469>>2] = 0; + $471 = HEAP32[(71184)>>2]|0; + $472 = 1 << $I7$0$i; + $473 = $471 & $472; + $474 = ($473|0)==(0); + if ($474) { + $475 = $471 | $472; + HEAP32[(71184)>>2] = $475; + HEAP32[$467>>2] = $351; + $476 = ((($351)) + 24|0); + HEAP32[$476>>2] = $467; + $477 = ((($351)) + 12|0); + HEAP32[$477>>2] = $351; + $478 = ((($351)) + 8|0); + HEAP32[$478>>2] = $351; + break; + } + $479 = HEAP32[$467>>2]|0; + $480 = ($I7$0$i|0)==(31); + $481 = $I7$0$i >>> 1; + $482 = (25 - ($481))|0; + $483 = $480 ? 0 : $482; + $484 = $rsize$4$lcssa$i << $483; + $K12$0$i = $484;$T$0$i = $479; + while(1) { + $485 = ((($T$0$i)) + 4|0); + $486 = HEAP32[$485>>2]|0; + $487 = $486 & -8; + $488 = ($487|0)==($rsize$4$lcssa$i|0); + if ($488) { + $T$0$i$lcssa = $T$0$i; + label = 148; + break; + } + $489 = $K12$0$i >>> 31; + $490 = (((($T$0$i)) + 16|0) + ($489<<2)|0); + $491 = $K12$0$i << 1; + $492 = HEAP32[$490>>2]|0; + $493 = ($492|0)==(0|0); + if ($493) { + $$lcssa157 = $490;$T$0$i$lcssa156 = $T$0$i; + label = 145; + break; + } else { + $K12$0$i = $491;$T$0$i = $492; + } + } + if ((label|0) == 145) { + $494 = HEAP32[(71196)>>2]|0; + $495 = ($$lcssa157>>>0)<($494>>>0); + if ($495) { + _abort(); + // unreachable; + } else { + HEAP32[$$lcssa157>>2] = $351; + $496 = ((($351)) + 24|0); + HEAP32[$496>>2] = $T$0$i$lcssa156; + $497 = ((($351)) + 12|0); + HEAP32[$497>>2] = $351; + $498 = ((($351)) + 8|0); + HEAP32[$498>>2] = $351; + break; + } + } + else if ((label|0) == 148) { + $499 = ((($T$0$i$lcssa)) + 8|0); + $500 = HEAP32[$499>>2]|0; + $501 = HEAP32[(71196)>>2]|0; + $502 = ($500>>>0)>=($501>>>0); + $not$7$i = ($T$0$i$lcssa>>>0)>=($501>>>0); + $503 = $502 & $not$7$i; + if ($503) { + $504 = ((($500)) + 12|0); + HEAP32[$504>>2] = $351; + HEAP32[$499>>2] = $351; + $505 = ((($351)) + 8|0); + HEAP32[$505>>2] = $500; + $506 = ((($351)) + 12|0); + HEAP32[$506>>2] = $T$0$i$lcssa; + $507 = ((($351)) + 24|0); + HEAP32[$507>>2] = 0; + break; + } else { + _abort(); + // unreachable; + } + } + } + } while(0); + $508 = ((($v$4$lcssa$i)) + 8|0); + $$0 = $508; + return ($$0|0); + } else { + $nb$0 = $248; + } + } + } + } + } + } while(0); + $509 = HEAP32[(71188)>>2]|0; + $510 = ($509>>>0)<($nb$0>>>0); + if (!($510)) { + $511 = (($509) - ($nb$0))|0; + $512 = HEAP32[(71200)>>2]|0; + $513 = ($511>>>0)>(15); + if ($513) { + $514 = (($512) + ($nb$0)|0); + HEAP32[(71200)>>2] = $514; + HEAP32[(71188)>>2] = $511; + $515 = $511 | 1; + $516 = ((($514)) + 4|0); + HEAP32[$516>>2] = $515; + $517 = (($514) + ($511)|0); + HEAP32[$517>>2] = $511; + $518 = $nb$0 | 3; + $519 = ((($512)) + 4|0); + HEAP32[$519>>2] = $518; + } else { + HEAP32[(71188)>>2] = 0; + HEAP32[(71200)>>2] = 0; + $520 = $509 | 3; + $521 = ((($512)) + 4|0); + HEAP32[$521>>2] = $520; + $522 = (($512) + ($509)|0); + $523 = ((($522)) + 4|0); + $524 = HEAP32[$523>>2]|0; + $525 = $524 | 1; + HEAP32[$523>>2] = $525; + } + $526 = ((($512)) + 8|0); + $$0 = $526; + return ($$0|0); + } + $527 = HEAP32[(71192)>>2]|0; + $528 = ($527>>>0)>($nb$0>>>0); + if ($528) { + $529 = (($527) - ($nb$0))|0; + HEAP32[(71192)>>2] = $529; + $530 = HEAP32[(71204)>>2]|0; + $531 = (($530) + ($nb$0)|0); + HEAP32[(71204)>>2] = $531; + $532 = $529 | 1; + $533 = ((($531)) + 4|0); + HEAP32[$533>>2] = $532; + $534 = $nb$0 | 3; + $535 = ((($530)) + 4|0); + HEAP32[$535>>2] = $534; + $536 = ((($530)) + 8|0); + $$0 = $536; + return ($$0|0); + } + $537 = HEAP32[17913]|0; + $538 = ($537|0)==(0); + do { + if ($538) { + $539 = (_sysconf(30)|0); + $540 = (($539) + -1)|0; + $541 = $540 & $539; + $542 = ($541|0)==(0); + if ($542) { + HEAP32[(71660)>>2] = $539; + HEAP32[(71656)>>2] = $539; + HEAP32[(71664)>>2] = -1; + HEAP32[(71668)>>2] = -1; + HEAP32[(71672)>>2] = 0; + HEAP32[(71624)>>2] = 0; + $543 = (_time((0|0))|0); + $544 = $543 & -16; + $545 = $544 ^ 1431655768; + HEAP32[17913] = $545; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $546 = (($nb$0) + 48)|0; + $547 = HEAP32[(71660)>>2]|0; + $548 = (($nb$0) + 47)|0; + $549 = (($547) + ($548))|0; + $550 = (0 - ($547))|0; + $551 = $549 & $550; + $552 = ($551>>>0)>($nb$0>>>0); + if (!($552)) { + $$0 = 0; + return ($$0|0); + } + $553 = HEAP32[(71620)>>2]|0; + $554 = ($553|0)==(0); + if (!($554)) { + $555 = HEAP32[(71612)>>2]|0; + $556 = (($555) + ($551))|0; + $557 = ($556>>>0)<=($555>>>0); + $558 = ($556>>>0)>($553>>>0); + $or$cond1$i16 = $557 | $558; + if ($or$cond1$i16) { + $$0 = 0; + return ($$0|0); + } + } + $559 = HEAP32[(71624)>>2]|0; + $560 = $559 & 4; + $561 = ($560|0)==(0); + L257: do { + if ($561) { + $562 = HEAP32[(71204)>>2]|0; + $563 = ($562|0)==(0|0); + L259: do { + if ($563) { + label = 173; + } else { + $sp$0$i$i = (71628); + while(1) { + $564 = HEAP32[$sp$0$i$i>>2]|0; + $565 = ($564>>>0)>($562>>>0); + if (!($565)) { + $566 = ((($sp$0$i$i)) + 4|0); + $567 = HEAP32[$566>>2]|0; + $568 = (($564) + ($567)|0); + $569 = ($568>>>0)>($562>>>0); + if ($569) { + $$lcssa153 = $sp$0$i$i;$$lcssa155 = $566; + break; + } + } + $570 = ((($sp$0$i$i)) + 8|0); + $571 = HEAP32[$570>>2]|0; + $572 = ($571|0)==(0|0); + if ($572) { + label = 173; + break L259; + } else { + $sp$0$i$i = $571; + } + } + $595 = HEAP32[(71192)>>2]|0; + $596 = (($549) - ($595))|0; + $597 = $596 & $550; + $598 = ($597>>>0)<(2147483647); + if ($598) { + $599 = (_sbrk(($597|0))|0); + $600 = HEAP32[$$lcssa153>>2]|0; + $601 = HEAP32[$$lcssa155>>2]|0; + $602 = (($600) + ($601)|0); + $603 = ($599|0)==($602|0); + if ($603) { + $604 = ($599|0)==((-1)|0); + if (!($604)) { + $tbase$746$i = $599;$tsize$745$i = $597; + label = 193; + break L257; + } + } else { + $br$2$ph$i = $599;$ssize$2$ph$i = $597; + label = 183; + } + } + } + } while(0); + do { + if ((label|0) == 173) { + $573 = (_sbrk(0)|0); + $574 = ($573|0)==((-1)|0); + if (!($574)) { + $575 = $573; + $576 = HEAP32[(71656)>>2]|0; + $577 = (($576) + -1)|0; + $578 = $577 & $575; + $579 = ($578|0)==(0); + if ($579) { + $ssize$0$i = $551; + } else { + $580 = (($577) + ($575))|0; + $581 = (0 - ($576))|0; + $582 = $580 & $581; + $583 = (($551) - ($575))|0; + $584 = (($583) + ($582))|0; + $ssize$0$i = $584; + } + $585 = HEAP32[(71612)>>2]|0; + $586 = (($585) + ($ssize$0$i))|0; + $587 = ($ssize$0$i>>>0)>($nb$0>>>0); + $588 = ($ssize$0$i>>>0)<(2147483647); + $or$cond$i17 = $587 & $588; + if ($or$cond$i17) { + $589 = HEAP32[(71620)>>2]|0; + $590 = ($589|0)==(0); + if (!($590)) { + $591 = ($586>>>0)<=($585>>>0); + $592 = ($586>>>0)>($589>>>0); + $or$cond2$i = $591 | $592; + if ($or$cond2$i) { + break; + } + } + $593 = (_sbrk(($ssize$0$i|0))|0); + $594 = ($593|0)==($573|0); + if ($594) { + $tbase$746$i = $573;$tsize$745$i = $ssize$0$i; + label = 193; + break L257; + } else { + $br$2$ph$i = $593;$ssize$2$ph$i = $ssize$0$i; + label = 183; + } + } + } + } + } while(0); + L279: do { + if ((label|0) == 183) { + $605 = (0 - ($ssize$2$ph$i))|0; + $606 = ($br$2$ph$i|0)!=((-1)|0); + $607 = ($ssize$2$ph$i>>>0)<(2147483647); + $or$cond7$i = $607 & $606; + $608 = ($546>>>0)>($ssize$2$ph$i>>>0); + $or$cond8$i = $608 & $or$cond7$i; + do { + if ($or$cond8$i) { + $609 = HEAP32[(71660)>>2]|0; + $610 = (($548) - ($ssize$2$ph$i))|0; + $611 = (($610) + ($609))|0; + $612 = (0 - ($609))|0; + $613 = $611 & $612; + $614 = ($613>>>0)<(2147483647); + if ($614) { + $615 = (_sbrk(($613|0))|0); + $616 = ($615|0)==((-1)|0); + if ($616) { + (_sbrk(($605|0))|0); + break L279; + } else { + $617 = (($613) + ($ssize$2$ph$i))|0; + $ssize$5$i = $617; + break; + } + } else { + $ssize$5$i = $ssize$2$ph$i; + } + } else { + $ssize$5$i = $ssize$2$ph$i; + } + } while(0); + $618 = ($br$2$ph$i|0)==((-1)|0); + if (!($618)) { + $tbase$746$i = $br$2$ph$i;$tsize$745$i = $ssize$5$i; + label = 193; + break L257; + } + } + } while(0); + $619 = HEAP32[(71624)>>2]|0; + $620 = $619 | 4; + HEAP32[(71624)>>2] = $620; + label = 190; + } else { + label = 190; + } + } while(0); + if ((label|0) == 190) { + $621 = ($551>>>0)<(2147483647); + if ($621) { + $622 = (_sbrk(($551|0))|0); + $623 = (_sbrk(0)|0); + $624 = ($622|0)!=((-1)|0); + $625 = ($623|0)!=((-1)|0); + $or$cond5$i = $624 & $625; + $626 = ($622>>>0)<($623>>>0); + $or$cond10$i = $626 & $or$cond5$i; + if ($or$cond10$i) { + $627 = $623; + $628 = $622; + $629 = (($627) - ($628))|0; + $630 = (($nb$0) + 40)|0; + $$not$i = ($629>>>0)>($630>>>0); + if ($$not$i) { + $tbase$746$i = $622;$tsize$745$i = $629; + label = 193; + } + } + } + } + if ((label|0) == 193) { + $631 = HEAP32[(71612)>>2]|0; + $632 = (($631) + ($tsize$745$i))|0; + HEAP32[(71612)>>2] = $632; + $633 = HEAP32[(71616)>>2]|0; + $634 = ($632>>>0)>($633>>>0); + if ($634) { + HEAP32[(71616)>>2] = $632; + } + $635 = HEAP32[(71204)>>2]|0; + $636 = ($635|0)==(0|0); + do { + if ($636) { + $637 = HEAP32[(71196)>>2]|0; + $638 = ($637|0)==(0|0); + $639 = ($tbase$746$i>>>0)<($637>>>0); + $or$cond11$i = $638 | $639; + if ($or$cond11$i) { + HEAP32[(71196)>>2] = $tbase$746$i; + } + HEAP32[(71628)>>2] = $tbase$746$i; + HEAP32[(71632)>>2] = $tsize$745$i; + HEAP32[(71640)>>2] = 0; + $640 = HEAP32[17913]|0; + HEAP32[(71216)>>2] = $640; + HEAP32[(71212)>>2] = -1; + $i$01$i$i = 0; + while(1) { + $641 = $i$01$i$i << 1; + $642 = (71220 + ($641<<2)|0); + $643 = ((($642)) + 12|0); + HEAP32[$643>>2] = $642; + $644 = ((($642)) + 8|0); + HEAP32[$644>>2] = $642; + $645 = (($i$01$i$i) + 1)|0; + $exitcond$i$i = ($645|0)==(32); + if ($exitcond$i$i) { + break; + } else { + $i$01$i$i = $645; + } + } + $646 = (($tsize$745$i) + -40)|0; + $647 = ((($tbase$746$i)) + 8|0); + $648 = $647; + $649 = $648 & 7; + $650 = ($649|0)==(0); + $651 = (0 - ($648))|0; + $652 = $651 & 7; + $653 = $650 ? 0 : $652; + $654 = (($tbase$746$i) + ($653)|0); + $655 = (($646) - ($653))|0; + HEAP32[(71204)>>2] = $654; + HEAP32[(71192)>>2] = $655; + $656 = $655 | 1; + $657 = ((($654)) + 4|0); + HEAP32[$657>>2] = $656; + $658 = (($654) + ($655)|0); + $659 = ((($658)) + 4|0); + HEAP32[$659>>2] = 40; + $660 = HEAP32[(71668)>>2]|0; + HEAP32[(71208)>>2] = $660; + } else { + $sp$068$i = (71628); + while(1) { + $661 = HEAP32[$sp$068$i>>2]|0; + $662 = ((($sp$068$i)) + 4|0); + $663 = HEAP32[$662>>2]|0; + $664 = (($661) + ($663)|0); + $665 = ($tbase$746$i|0)==($664|0); + if ($665) { + $$lcssa147 = $661;$$lcssa149 = $662;$$lcssa151 = $663;$sp$068$i$lcssa = $sp$068$i; + label = 203; + break; + } + $666 = ((($sp$068$i)) + 8|0); + $667 = HEAP32[$666>>2]|0; + $668 = ($667|0)==(0|0); + if ($668) { + break; + } else { + $sp$068$i = $667; + } + } + if ((label|0) == 203) { + $669 = ((($sp$068$i$lcssa)) + 12|0); + $670 = HEAP32[$669>>2]|0; + $671 = $670 & 8; + $672 = ($671|0)==(0); + if ($672) { + $673 = ($635>>>0)>=($$lcssa147>>>0); + $674 = ($635>>>0)<($tbase$746$i>>>0); + $or$cond48$i = $674 & $673; + if ($or$cond48$i) { + $675 = (($$lcssa151) + ($tsize$745$i))|0; + HEAP32[$$lcssa149>>2] = $675; + $676 = HEAP32[(71192)>>2]|0; + $677 = ((($635)) + 8|0); + $678 = $677; + $679 = $678 & 7; + $680 = ($679|0)==(0); + $681 = (0 - ($678))|0; + $682 = $681 & 7; + $683 = $680 ? 0 : $682; + $684 = (($635) + ($683)|0); + $685 = (($tsize$745$i) - ($683))|0; + $686 = (($685) + ($676))|0; + HEAP32[(71204)>>2] = $684; + HEAP32[(71192)>>2] = $686; + $687 = $686 | 1; + $688 = ((($684)) + 4|0); + HEAP32[$688>>2] = $687; + $689 = (($684) + ($686)|0); + $690 = ((($689)) + 4|0); + HEAP32[$690>>2] = 40; + $691 = HEAP32[(71668)>>2]|0; + HEAP32[(71208)>>2] = $691; + break; + } + } + } + $692 = HEAP32[(71196)>>2]|0; + $693 = ($tbase$746$i>>>0)<($692>>>0); + if ($693) { + HEAP32[(71196)>>2] = $tbase$746$i; + $757 = $tbase$746$i; + } else { + $757 = $692; + } + $694 = (($tbase$746$i) + ($tsize$745$i)|0); + $sp$167$i = (71628); + while(1) { + $695 = HEAP32[$sp$167$i>>2]|0; + $696 = ($695|0)==($694|0); + if ($696) { + $$lcssa144 = $sp$167$i;$sp$167$i$lcssa = $sp$167$i; + label = 211; + break; + } + $697 = ((($sp$167$i)) + 8|0); + $698 = HEAP32[$697>>2]|0; + $699 = ($698|0)==(0|0); + if ($699) { + $sp$0$i$i$i = (71628); + break; + } else { + $sp$167$i = $698; + } + } + if ((label|0) == 211) { + $700 = ((($sp$167$i$lcssa)) + 12|0); + $701 = HEAP32[$700>>2]|0; + $702 = $701 & 8; + $703 = ($702|0)==(0); + if ($703) { + HEAP32[$$lcssa144>>2] = $tbase$746$i; + $704 = ((($sp$167$i$lcssa)) + 4|0); + $705 = HEAP32[$704>>2]|0; + $706 = (($705) + ($tsize$745$i))|0; + HEAP32[$704>>2] = $706; + $707 = ((($tbase$746$i)) + 8|0); + $708 = $707; + $709 = $708 & 7; + $710 = ($709|0)==(0); + $711 = (0 - ($708))|0; + $712 = $711 & 7; + $713 = $710 ? 0 : $712; + $714 = (($tbase$746$i) + ($713)|0); + $715 = ((($694)) + 8|0); + $716 = $715; + $717 = $716 & 7; + $718 = ($717|0)==(0); + $719 = (0 - ($716))|0; + $720 = $719 & 7; + $721 = $718 ? 0 : $720; + $722 = (($694) + ($721)|0); + $723 = $722; + $724 = $714; + $725 = (($723) - ($724))|0; + $726 = (($714) + ($nb$0)|0); + $727 = (($725) - ($nb$0))|0; + $728 = $nb$0 | 3; + $729 = ((($714)) + 4|0); + HEAP32[$729>>2] = $728; + $730 = ($722|0)==($635|0); + do { + if ($730) { + $731 = HEAP32[(71192)>>2]|0; + $732 = (($731) + ($727))|0; + HEAP32[(71192)>>2] = $732; + HEAP32[(71204)>>2] = $726; + $733 = $732 | 1; + $734 = ((($726)) + 4|0); + HEAP32[$734>>2] = $733; + } else { + $735 = HEAP32[(71200)>>2]|0; + $736 = ($722|0)==($735|0); + if ($736) { + $737 = HEAP32[(71188)>>2]|0; + $738 = (($737) + ($727))|0; + HEAP32[(71188)>>2] = $738; + HEAP32[(71200)>>2] = $726; + $739 = $738 | 1; + $740 = ((($726)) + 4|0); + HEAP32[$740>>2] = $739; + $741 = (($726) + ($738)|0); + HEAP32[$741>>2] = $738; + break; + } + $742 = ((($722)) + 4|0); + $743 = HEAP32[$742>>2]|0; + $744 = $743 & 3; + $745 = ($744|0)==(1); + if ($745) { + $746 = $743 & -8; + $747 = $743 >>> 3; + $748 = ($743>>>0)<(256); + L331: do { + if ($748) { + $749 = ((($722)) + 8|0); + $750 = HEAP32[$749>>2]|0; + $751 = ((($722)) + 12|0); + $752 = HEAP32[$751>>2]|0; + $753 = $747 << 1; + $754 = (71220 + ($753<<2)|0); + $755 = ($750|0)==($754|0); + do { + if (!($755)) { + $756 = ($750>>>0)<($757>>>0); + if ($756) { + _abort(); + // unreachable; + } + $758 = ((($750)) + 12|0); + $759 = HEAP32[$758>>2]|0; + $760 = ($759|0)==($722|0); + if ($760) { + break; + } + _abort(); + // unreachable; + } + } while(0); + $761 = ($752|0)==($750|0); + if ($761) { + $762 = 1 << $747; + $763 = $762 ^ -1; + $764 = HEAP32[17795]|0; + $765 = $764 & $763; + HEAP32[17795] = $765; + break; + } + $766 = ($752|0)==($754|0); + do { + if ($766) { + $$pre9$i$i = ((($752)) + 8|0); + $$pre$phi10$i$iZ2D = $$pre9$i$i; + } else { + $767 = ($752>>>0)<($757>>>0); + if ($767) { + _abort(); + // unreachable; + } + $768 = ((($752)) + 8|0); + $769 = HEAP32[$768>>2]|0; + $770 = ($769|0)==($722|0); + if ($770) { + $$pre$phi10$i$iZ2D = $768; + break; + } + _abort(); + // unreachable; + } + } while(0); + $771 = ((($750)) + 12|0); + HEAP32[$771>>2] = $752; + HEAP32[$$pre$phi10$i$iZ2D>>2] = $750; + } else { + $772 = ((($722)) + 24|0); + $773 = HEAP32[$772>>2]|0; + $774 = ((($722)) + 12|0); + $775 = HEAP32[$774>>2]|0; + $776 = ($775|0)==($722|0); + do { + if ($776) { + $786 = ((($722)) + 16|0); + $787 = ((($786)) + 4|0); + $788 = HEAP32[$787>>2]|0; + $789 = ($788|0)==(0|0); + if ($789) { + $790 = HEAP32[$786>>2]|0; + $791 = ($790|0)==(0|0); + if ($791) { + $R$3$i$i = 0; + break; + } else { + $R$1$i$i = $790;$RP$1$i$i = $786; + } + } else { + $R$1$i$i = $788;$RP$1$i$i = $787; + } + while(1) { + $792 = ((($R$1$i$i)) + 20|0); + $793 = HEAP32[$792>>2]|0; + $794 = ($793|0)==(0|0); + if (!($794)) { + $R$1$i$i = $793;$RP$1$i$i = $792; + continue; + } + $795 = ((($R$1$i$i)) + 16|0); + $796 = HEAP32[$795>>2]|0; + $797 = ($796|0)==(0|0); + if ($797) { + $R$1$i$i$lcssa = $R$1$i$i;$RP$1$i$i$lcssa = $RP$1$i$i; + break; + } else { + $R$1$i$i = $796;$RP$1$i$i = $795; + } + } + $798 = ($RP$1$i$i$lcssa>>>0)<($757>>>0); + if ($798) { + _abort(); + // unreachable; + } else { + HEAP32[$RP$1$i$i$lcssa>>2] = 0; + $R$3$i$i = $R$1$i$i$lcssa; + break; + } + } else { + $777 = ((($722)) + 8|0); + $778 = HEAP32[$777>>2]|0; + $779 = ($778>>>0)<($757>>>0); + if ($779) { + _abort(); + // unreachable; + } + $780 = ((($778)) + 12|0); + $781 = HEAP32[$780>>2]|0; + $782 = ($781|0)==($722|0); + if (!($782)) { + _abort(); + // unreachable; + } + $783 = ((($775)) + 8|0); + $784 = HEAP32[$783>>2]|0; + $785 = ($784|0)==($722|0); + if ($785) { + HEAP32[$780>>2] = $775; + HEAP32[$783>>2] = $778; + $R$3$i$i = $775; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $799 = ($773|0)==(0|0); + if ($799) { + break; + } + $800 = ((($722)) + 28|0); + $801 = HEAP32[$800>>2]|0; + $802 = (71484 + ($801<<2)|0); + $803 = HEAP32[$802>>2]|0; + $804 = ($722|0)==($803|0); + do { + if ($804) { + HEAP32[$802>>2] = $R$3$i$i; + $cond$i$i = ($R$3$i$i|0)==(0|0); + if (!($cond$i$i)) { + break; + } + $805 = 1 << $801; + $806 = $805 ^ -1; + $807 = HEAP32[(71184)>>2]|0; + $808 = $807 & $806; + HEAP32[(71184)>>2] = $808; + break L331; + } else { + $809 = HEAP32[(71196)>>2]|0; + $810 = ($773>>>0)<($809>>>0); + if ($810) { + _abort(); + // unreachable; + } + $811 = ((($773)) + 16|0); + $812 = HEAP32[$811>>2]|0; + $813 = ($812|0)==($722|0); + if ($813) { + HEAP32[$811>>2] = $R$3$i$i; + } else { + $814 = ((($773)) + 20|0); + HEAP32[$814>>2] = $R$3$i$i; + } + $815 = ($R$3$i$i|0)==(0|0); + if ($815) { + break L331; + } + } + } while(0); + $816 = HEAP32[(71196)>>2]|0; + $817 = ($R$3$i$i>>>0)<($816>>>0); + if ($817) { + _abort(); + // unreachable; + } + $818 = ((($R$3$i$i)) + 24|0); + HEAP32[$818>>2] = $773; + $819 = ((($722)) + 16|0); + $820 = HEAP32[$819>>2]|0; + $821 = ($820|0)==(0|0); + do { + if (!($821)) { + $822 = ($820>>>0)<($816>>>0); + if ($822) { + _abort(); + // unreachable; + } else { + $823 = ((($R$3$i$i)) + 16|0); + HEAP32[$823>>2] = $820; + $824 = ((($820)) + 24|0); + HEAP32[$824>>2] = $R$3$i$i; + break; + } + } + } while(0); + $825 = ((($819)) + 4|0); + $826 = HEAP32[$825>>2]|0; + $827 = ($826|0)==(0|0); + if ($827) { + break; + } + $828 = HEAP32[(71196)>>2]|0; + $829 = ($826>>>0)<($828>>>0); + if ($829) { + _abort(); + // unreachable; + } else { + $830 = ((($R$3$i$i)) + 20|0); + HEAP32[$830>>2] = $826; + $831 = ((($826)) + 24|0); + HEAP32[$831>>2] = $R$3$i$i; + break; + } + } + } while(0); + $832 = (($722) + ($746)|0); + $833 = (($746) + ($727))|0; + $oldfirst$0$i$i = $832;$qsize$0$i$i = $833; + } else { + $oldfirst$0$i$i = $722;$qsize$0$i$i = $727; + } + $834 = ((($oldfirst$0$i$i)) + 4|0); + $835 = HEAP32[$834>>2]|0; + $836 = $835 & -2; + HEAP32[$834>>2] = $836; + $837 = $qsize$0$i$i | 1; + $838 = ((($726)) + 4|0); + HEAP32[$838>>2] = $837; + $839 = (($726) + ($qsize$0$i$i)|0); + HEAP32[$839>>2] = $qsize$0$i$i; + $840 = $qsize$0$i$i >>> 3; + $841 = ($qsize$0$i$i>>>0)<(256); + if ($841) { + $842 = $840 << 1; + $843 = (71220 + ($842<<2)|0); + $844 = HEAP32[17795]|0; + $845 = 1 << $840; + $846 = $844 & $845; + $847 = ($846|0)==(0); + do { + if ($847) { + $848 = $844 | $845; + HEAP32[17795] = $848; + $$pre$i16$i = ((($843)) + 8|0); + $$pre$phi$i17$iZ2D = $$pre$i16$i;$F4$0$i$i = $843; + } else { + $849 = ((($843)) + 8|0); + $850 = HEAP32[$849>>2]|0; + $851 = HEAP32[(71196)>>2]|0; + $852 = ($850>>>0)<($851>>>0); + if (!($852)) { + $$pre$phi$i17$iZ2D = $849;$F4$0$i$i = $850; + break; + } + _abort(); + // unreachable; + } + } while(0); + HEAP32[$$pre$phi$i17$iZ2D>>2] = $726; + $853 = ((($F4$0$i$i)) + 12|0); + HEAP32[$853>>2] = $726; + $854 = ((($726)) + 8|0); + HEAP32[$854>>2] = $F4$0$i$i; + $855 = ((($726)) + 12|0); + HEAP32[$855>>2] = $843; + break; + } + $856 = $qsize$0$i$i >>> 8; + $857 = ($856|0)==(0); + do { + if ($857) { + $I7$0$i$i = 0; + } else { + $858 = ($qsize$0$i$i>>>0)>(16777215); + if ($858) { + $I7$0$i$i = 31; + break; + } + $859 = (($856) + 1048320)|0; + $860 = $859 >>> 16; + $861 = $860 & 8; + $862 = $856 << $861; + $863 = (($862) + 520192)|0; + $864 = $863 >>> 16; + $865 = $864 & 4; + $866 = $865 | $861; + $867 = $862 << $865; + $868 = (($867) + 245760)|0; + $869 = $868 >>> 16; + $870 = $869 & 2; + $871 = $866 | $870; + $872 = (14 - ($871))|0; + $873 = $867 << $870; + $874 = $873 >>> 15; + $875 = (($872) + ($874))|0; + $876 = $875 << 1; + $877 = (($875) + 7)|0; + $878 = $qsize$0$i$i >>> $877; + $879 = $878 & 1; + $880 = $879 | $876; + $I7$0$i$i = $880; + } + } while(0); + $881 = (71484 + ($I7$0$i$i<<2)|0); + $882 = ((($726)) + 28|0); + HEAP32[$882>>2] = $I7$0$i$i; + $883 = ((($726)) + 16|0); + $884 = ((($883)) + 4|0); + HEAP32[$884>>2] = 0; + HEAP32[$883>>2] = 0; + $885 = HEAP32[(71184)>>2]|0; + $886 = 1 << $I7$0$i$i; + $887 = $885 & $886; + $888 = ($887|0)==(0); + if ($888) { + $889 = $885 | $886; + HEAP32[(71184)>>2] = $889; + HEAP32[$881>>2] = $726; + $890 = ((($726)) + 24|0); + HEAP32[$890>>2] = $881; + $891 = ((($726)) + 12|0); + HEAP32[$891>>2] = $726; + $892 = ((($726)) + 8|0); + HEAP32[$892>>2] = $726; + break; + } + $893 = HEAP32[$881>>2]|0; + $894 = ($I7$0$i$i|0)==(31); + $895 = $I7$0$i$i >>> 1; + $896 = (25 - ($895))|0; + $897 = $894 ? 0 : $896; + $898 = $qsize$0$i$i << $897; + $K8$0$i$i = $898;$T$0$i18$i = $893; + while(1) { + $899 = ((($T$0$i18$i)) + 4|0); + $900 = HEAP32[$899>>2]|0; + $901 = $900 & -8; + $902 = ($901|0)==($qsize$0$i$i|0); + if ($902) { + $T$0$i18$i$lcssa = $T$0$i18$i; + label = 281; + break; + } + $903 = $K8$0$i$i >>> 31; + $904 = (((($T$0$i18$i)) + 16|0) + ($903<<2)|0); + $905 = $K8$0$i$i << 1; + $906 = HEAP32[$904>>2]|0; + $907 = ($906|0)==(0|0); + if ($907) { + $$lcssa = $904;$T$0$i18$i$lcssa139 = $T$0$i18$i; + label = 278; + break; + } else { + $K8$0$i$i = $905;$T$0$i18$i = $906; + } + } + if ((label|0) == 278) { + $908 = HEAP32[(71196)>>2]|0; + $909 = ($$lcssa>>>0)<($908>>>0); + if ($909) { + _abort(); + // unreachable; + } else { + HEAP32[$$lcssa>>2] = $726; + $910 = ((($726)) + 24|0); + HEAP32[$910>>2] = $T$0$i18$i$lcssa139; + $911 = ((($726)) + 12|0); + HEAP32[$911>>2] = $726; + $912 = ((($726)) + 8|0); + HEAP32[$912>>2] = $726; + break; + } + } + else if ((label|0) == 281) { + $913 = ((($T$0$i18$i$lcssa)) + 8|0); + $914 = HEAP32[$913>>2]|0; + $915 = HEAP32[(71196)>>2]|0; + $916 = ($914>>>0)>=($915>>>0); + $not$$i20$i = ($T$0$i18$i$lcssa>>>0)>=($915>>>0); + $917 = $916 & $not$$i20$i; + if ($917) { + $918 = ((($914)) + 12|0); + HEAP32[$918>>2] = $726; + HEAP32[$913>>2] = $726; + $919 = ((($726)) + 8|0); + HEAP32[$919>>2] = $914; + $920 = ((($726)) + 12|0); + HEAP32[$920>>2] = $T$0$i18$i$lcssa; + $921 = ((($726)) + 24|0); + HEAP32[$921>>2] = 0; + break; + } else { + _abort(); + // unreachable; + } + } + } + } while(0); + $1052 = ((($714)) + 8|0); + $$0 = $1052; + return ($$0|0); + } else { + $sp$0$i$i$i = (71628); + } + } + while(1) { + $922 = HEAP32[$sp$0$i$i$i>>2]|0; + $923 = ($922>>>0)>($635>>>0); + if (!($923)) { + $924 = ((($sp$0$i$i$i)) + 4|0); + $925 = HEAP32[$924>>2]|0; + $926 = (($922) + ($925)|0); + $927 = ($926>>>0)>($635>>>0); + if ($927) { + $$lcssa142 = $926; + break; + } + } + $928 = ((($sp$0$i$i$i)) + 8|0); + $929 = HEAP32[$928>>2]|0; + $sp$0$i$i$i = $929; + } + $930 = ((($$lcssa142)) + -47|0); + $931 = ((($930)) + 8|0); + $932 = $931; + $933 = $932 & 7; + $934 = ($933|0)==(0); + $935 = (0 - ($932))|0; + $936 = $935 & 7; + $937 = $934 ? 0 : $936; + $938 = (($930) + ($937)|0); + $939 = ((($635)) + 16|0); + $940 = ($938>>>0)<($939>>>0); + $941 = $940 ? $635 : $938; + $942 = ((($941)) + 8|0); + $943 = ((($941)) + 24|0); + $944 = (($tsize$745$i) + -40)|0; + $945 = ((($tbase$746$i)) + 8|0); + $946 = $945; + $947 = $946 & 7; + $948 = ($947|0)==(0); + $949 = (0 - ($946))|0; + $950 = $949 & 7; + $951 = $948 ? 0 : $950; + $952 = (($tbase$746$i) + ($951)|0); + $953 = (($944) - ($951))|0; + HEAP32[(71204)>>2] = $952; + HEAP32[(71192)>>2] = $953; + $954 = $953 | 1; + $955 = ((($952)) + 4|0); + HEAP32[$955>>2] = $954; + $956 = (($952) + ($953)|0); + $957 = ((($956)) + 4|0); + HEAP32[$957>>2] = 40; + $958 = HEAP32[(71668)>>2]|0; + HEAP32[(71208)>>2] = $958; + $959 = ((($941)) + 4|0); + HEAP32[$959>>2] = 27; + ;HEAP32[$942>>2]=HEAP32[(71628)>>2]|0;HEAP32[$942+4>>2]=HEAP32[(71628)+4>>2]|0;HEAP32[$942+8>>2]=HEAP32[(71628)+8>>2]|0;HEAP32[$942+12>>2]=HEAP32[(71628)+12>>2]|0; + HEAP32[(71628)>>2] = $tbase$746$i; + HEAP32[(71632)>>2] = $tsize$745$i; + HEAP32[(71640)>>2] = 0; + HEAP32[(71636)>>2] = $942; + $p$0$i$i = $943; + while(1) { + $960 = ((($p$0$i$i)) + 4|0); + HEAP32[$960>>2] = 7; + $961 = ((($960)) + 4|0); + $962 = ($961>>>0)<($$lcssa142>>>0); + if ($962) { + $p$0$i$i = $960; + } else { + break; + } + } + $963 = ($941|0)==($635|0); + if (!($963)) { + $964 = $941; + $965 = $635; + $966 = (($964) - ($965))|0; + $967 = HEAP32[$959>>2]|0; + $968 = $967 & -2; + HEAP32[$959>>2] = $968; + $969 = $966 | 1; + $970 = ((($635)) + 4|0); + HEAP32[$970>>2] = $969; + HEAP32[$941>>2] = $966; + $971 = $966 >>> 3; + $972 = ($966>>>0)<(256); + if ($972) { + $973 = $971 << 1; + $974 = (71220 + ($973<<2)|0); + $975 = HEAP32[17795]|0; + $976 = 1 << $971; + $977 = $975 & $976; + $978 = ($977|0)==(0); + if ($978) { + $979 = $975 | $976; + HEAP32[17795] = $979; + $$pre$i$i = ((($974)) + 8|0); + $$pre$phi$i$iZ2D = $$pre$i$i;$F$0$i$i = $974; + } else { + $980 = ((($974)) + 8|0); + $981 = HEAP32[$980>>2]|0; + $982 = HEAP32[(71196)>>2]|0; + $983 = ($981>>>0)<($982>>>0); + if ($983) { + _abort(); + // unreachable; + } else { + $$pre$phi$i$iZ2D = $980;$F$0$i$i = $981; + } + } + HEAP32[$$pre$phi$i$iZ2D>>2] = $635; + $984 = ((($F$0$i$i)) + 12|0); + HEAP32[$984>>2] = $635; + $985 = ((($635)) + 8|0); + HEAP32[$985>>2] = $F$0$i$i; + $986 = ((($635)) + 12|0); + HEAP32[$986>>2] = $974; + break; + } + $987 = $966 >>> 8; + $988 = ($987|0)==(0); + if ($988) { + $I1$0$i$i = 0; + } else { + $989 = ($966>>>0)>(16777215); + if ($989) { + $I1$0$i$i = 31; + } else { + $990 = (($987) + 1048320)|0; + $991 = $990 >>> 16; + $992 = $991 & 8; + $993 = $987 << $992; + $994 = (($993) + 520192)|0; + $995 = $994 >>> 16; + $996 = $995 & 4; + $997 = $996 | $992; + $998 = $993 << $996; + $999 = (($998) + 245760)|0; + $1000 = $999 >>> 16; + $1001 = $1000 & 2; + $1002 = $997 | $1001; + $1003 = (14 - ($1002))|0; + $1004 = $998 << $1001; + $1005 = $1004 >>> 15; + $1006 = (($1003) + ($1005))|0; + $1007 = $1006 << 1; + $1008 = (($1006) + 7)|0; + $1009 = $966 >>> $1008; + $1010 = $1009 & 1; + $1011 = $1010 | $1007; + $I1$0$i$i = $1011; + } + } + $1012 = (71484 + ($I1$0$i$i<<2)|0); + $1013 = ((($635)) + 28|0); + HEAP32[$1013>>2] = $I1$0$i$i; + $1014 = ((($635)) + 20|0); + HEAP32[$1014>>2] = 0; + HEAP32[$939>>2] = 0; + $1015 = HEAP32[(71184)>>2]|0; + $1016 = 1 << $I1$0$i$i; + $1017 = $1015 & $1016; + $1018 = ($1017|0)==(0); + if ($1018) { + $1019 = $1015 | $1016; + HEAP32[(71184)>>2] = $1019; + HEAP32[$1012>>2] = $635; + $1020 = ((($635)) + 24|0); + HEAP32[$1020>>2] = $1012; + $1021 = ((($635)) + 12|0); + HEAP32[$1021>>2] = $635; + $1022 = ((($635)) + 8|0); + HEAP32[$1022>>2] = $635; + break; + } + $1023 = HEAP32[$1012>>2]|0; + $1024 = ($I1$0$i$i|0)==(31); + $1025 = $I1$0$i$i >>> 1; + $1026 = (25 - ($1025))|0; + $1027 = $1024 ? 0 : $1026; + $1028 = $966 << $1027; + $K2$0$i$i = $1028;$T$0$i$i = $1023; + while(1) { + $1029 = ((($T$0$i$i)) + 4|0); + $1030 = HEAP32[$1029>>2]|0; + $1031 = $1030 & -8; + $1032 = ($1031|0)==($966|0); + if ($1032) { + $T$0$i$i$lcssa = $T$0$i$i; + label = 307; + break; + } + $1033 = $K2$0$i$i >>> 31; + $1034 = (((($T$0$i$i)) + 16|0) + ($1033<<2)|0); + $1035 = $K2$0$i$i << 1; + $1036 = HEAP32[$1034>>2]|0; + $1037 = ($1036|0)==(0|0); + if ($1037) { + $$lcssa141 = $1034;$T$0$i$i$lcssa140 = $T$0$i$i; + label = 304; + break; + } else { + $K2$0$i$i = $1035;$T$0$i$i = $1036; + } + } + if ((label|0) == 304) { + $1038 = HEAP32[(71196)>>2]|0; + $1039 = ($$lcssa141>>>0)<($1038>>>0); + if ($1039) { + _abort(); + // unreachable; + } else { + HEAP32[$$lcssa141>>2] = $635; + $1040 = ((($635)) + 24|0); + HEAP32[$1040>>2] = $T$0$i$i$lcssa140; + $1041 = ((($635)) + 12|0); + HEAP32[$1041>>2] = $635; + $1042 = ((($635)) + 8|0); + HEAP32[$1042>>2] = $635; + break; + } + } + else if ((label|0) == 307) { + $1043 = ((($T$0$i$i$lcssa)) + 8|0); + $1044 = HEAP32[$1043>>2]|0; + $1045 = HEAP32[(71196)>>2]|0; + $1046 = ($1044>>>0)>=($1045>>>0); + $not$$i$i = ($T$0$i$i$lcssa>>>0)>=($1045>>>0); + $1047 = $1046 & $not$$i$i; + if ($1047) { + $1048 = ((($1044)) + 12|0); + HEAP32[$1048>>2] = $635; + HEAP32[$1043>>2] = $635; + $1049 = ((($635)) + 8|0); + HEAP32[$1049>>2] = $1044; + $1050 = ((($635)) + 12|0); + HEAP32[$1050>>2] = $T$0$i$i$lcssa; + $1051 = ((($635)) + 24|0); + HEAP32[$1051>>2] = 0; + break; + } else { + _abort(); + // unreachable; + } + } + } + } + } while(0); + $1053 = HEAP32[(71192)>>2]|0; + $1054 = ($1053>>>0)>($nb$0>>>0); + if ($1054) { + $1055 = (($1053) - ($nb$0))|0; + HEAP32[(71192)>>2] = $1055; + $1056 = HEAP32[(71204)>>2]|0; + $1057 = (($1056) + ($nb$0)|0); + HEAP32[(71204)>>2] = $1057; + $1058 = $1055 | 1; + $1059 = ((($1057)) + 4|0); + HEAP32[$1059>>2] = $1058; + $1060 = $nb$0 | 3; + $1061 = ((($1056)) + 4|0); + HEAP32[$1061>>2] = $1060; + $1062 = ((($1056)) + 8|0); + $$0 = $1062; + return ($$0|0); + } + } + $1063 = (___errno_location()|0); + HEAP32[$1063>>2] = 12; + $$0 = 0; + return ($$0|0); +} +function _free($mem) { + $mem = $mem|0; + var $$lcssa = 0, $$pre = 0, $$pre$phi41Z2D = 0, $$pre$phi43Z2D = 0, $$pre$phiZ2D = 0, $$pre40 = 0, $$pre42 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0; + var $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0; + var $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0; + var $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0; + var $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0; + var $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0; + var $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0; + var $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0; + var $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0; + var $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0; + var $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0; + var $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0; + var $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $F18$0 = 0, $I20$0 = 0, $K21$0 = 0, $R$1 = 0, $R$1$lcssa = 0, $R$3 = 0, $R8$1 = 0, $R8$1$lcssa = 0, $R8$3 = 0, $RP$1 = 0, $RP$1$lcssa = 0, $RP10$1 = 0, $RP10$1$lcssa = 0; + var $T$0 = 0, $T$0$lcssa = 0, $T$0$lcssa48 = 0, $cond20 = 0, $cond21 = 0, $not$ = 0, $p$1 = 0, $psize$1 = 0, $psize$2 = 0, $sp$0$i = 0, $sp$0$in$i = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($mem|0)==(0|0); + if ($0) { + return; + } + $1 = ((($mem)) + -8|0); + $2 = HEAP32[(71196)>>2]|0; + $3 = ($1>>>0)<($2>>>0); + if ($3) { + _abort(); + // unreachable; + } + $4 = ((($mem)) + -4|0); + $5 = HEAP32[$4>>2]|0; + $6 = $5 & 3; + $7 = ($6|0)==(1); + if ($7) { + _abort(); + // unreachable; + } + $8 = $5 & -8; + $9 = (($1) + ($8)|0); + $10 = $5 & 1; + $11 = ($10|0)==(0); + do { + if ($11) { + $12 = HEAP32[$1>>2]|0; + $13 = ($6|0)==(0); + if ($13) { + return; + } + $14 = (0 - ($12))|0; + $15 = (($1) + ($14)|0); + $16 = (($12) + ($8))|0; + $17 = ($15>>>0)<($2>>>0); + if ($17) { + _abort(); + // unreachable; + } + $18 = HEAP32[(71200)>>2]|0; + $19 = ($15|0)==($18|0); + if ($19) { + $104 = ((($9)) + 4|0); + $105 = HEAP32[$104>>2]|0; + $106 = $105 & 3; + $107 = ($106|0)==(3); + if (!($107)) { + $p$1 = $15;$psize$1 = $16; + break; + } + HEAP32[(71188)>>2] = $16; + $108 = $105 & -2; + HEAP32[$104>>2] = $108; + $109 = $16 | 1; + $110 = ((($15)) + 4|0); + HEAP32[$110>>2] = $109; + $111 = (($15) + ($16)|0); + HEAP32[$111>>2] = $16; + return; + } + $20 = $12 >>> 3; + $21 = ($12>>>0)<(256); + if ($21) { + $22 = ((($15)) + 8|0); + $23 = HEAP32[$22>>2]|0; + $24 = ((($15)) + 12|0); + $25 = HEAP32[$24>>2]|0; + $26 = $20 << 1; + $27 = (71220 + ($26<<2)|0); + $28 = ($23|0)==($27|0); + if (!($28)) { + $29 = ($23>>>0)<($2>>>0); + if ($29) { + _abort(); + // unreachable; + } + $30 = ((($23)) + 12|0); + $31 = HEAP32[$30>>2]|0; + $32 = ($31|0)==($15|0); + if (!($32)) { + _abort(); + // unreachable; + } + } + $33 = ($25|0)==($23|0); + if ($33) { + $34 = 1 << $20; + $35 = $34 ^ -1; + $36 = HEAP32[17795]|0; + $37 = $36 & $35; + HEAP32[17795] = $37; + $p$1 = $15;$psize$1 = $16; + break; + } + $38 = ($25|0)==($27|0); + if ($38) { + $$pre42 = ((($25)) + 8|0); + $$pre$phi43Z2D = $$pre42; + } else { + $39 = ($25>>>0)<($2>>>0); + if ($39) { + _abort(); + // unreachable; + } + $40 = ((($25)) + 8|0); + $41 = HEAP32[$40>>2]|0; + $42 = ($41|0)==($15|0); + if ($42) { + $$pre$phi43Z2D = $40; + } else { + _abort(); + // unreachable; + } + } + $43 = ((($23)) + 12|0); + HEAP32[$43>>2] = $25; + HEAP32[$$pre$phi43Z2D>>2] = $23; + $p$1 = $15;$psize$1 = $16; + break; + } + $44 = ((($15)) + 24|0); + $45 = HEAP32[$44>>2]|0; + $46 = ((($15)) + 12|0); + $47 = HEAP32[$46>>2]|0; + $48 = ($47|0)==($15|0); + do { + if ($48) { + $58 = ((($15)) + 16|0); + $59 = ((($58)) + 4|0); + $60 = HEAP32[$59>>2]|0; + $61 = ($60|0)==(0|0); + if ($61) { + $62 = HEAP32[$58>>2]|0; + $63 = ($62|0)==(0|0); + if ($63) { + $R$3 = 0; + break; + } else { + $R$1 = $62;$RP$1 = $58; + } + } else { + $R$1 = $60;$RP$1 = $59; + } + while(1) { + $64 = ((($R$1)) + 20|0); + $65 = HEAP32[$64>>2]|0; + $66 = ($65|0)==(0|0); + if (!($66)) { + $R$1 = $65;$RP$1 = $64; + continue; + } + $67 = ((($R$1)) + 16|0); + $68 = HEAP32[$67>>2]|0; + $69 = ($68|0)==(0|0); + if ($69) { + $R$1$lcssa = $R$1;$RP$1$lcssa = $RP$1; + break; + } else { + $R$1 = $68;$RP$1 = $67; + } + } + $70 = ($RP$1$lcssa>>>0)<($2>>>0); + if ($70) { + _abort(); + // unreachable; + } else { + HEAP32[$RP$1$lcssa>>2] = 0; + $R$3 = $R$1$lcssa; + break; + } + } else { + $49 = ((($15)) + 8|0); + $50 = HEAP32[$49>>2]|0; + $51 = ($50>>>0)<($2>>>0); + if ($51) { + _abort(); + // unreachable; + } + $52 = ((($50)) + 12|0); + $53 = HEAP32[$52>>2]|0; + $54 = ($53|0)==($15|0); + if (!($54)) { + _abort(); + // unreachable; + } + $55 = ((($47)) + 8|0); + $56 = HEAP32[$55>>2]|0; + $57 = ($56|0)==($15|0); + if ($57) { + HEAP32[$52>>2] = $47; + HEAP32[$55>>2] = $50; + $R$3 = $47; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $71 = ($45|0)==(0|0); + if ($71) { + $p$1 = $15;$psize$1 = $16; + } else { + $72 = ((($15)) + 28|0); + $73 = HEAP32[$72>>2]|0; + $74 = (71484 + ($73<<2)|0); + $75 = HEAP32[$74>>2]|0; + $76 = ($15|0)==($75|0); + if ($76) { + HEAP32[$74>>2] = $R$3; + $cond20 = ($R$3|0)==(0|0); + if ($cond20) { + $77 = 1 << $73; + $78 = $77 ^ -1; + $79 = HEAP32[(71184)>>2]|0; + $80 = $79 & $78; + HEAP32[(71184)>>2] = $80; + $p$1 = $15;$psize$1 = $16; + break; + } + } else { + $81 = HEAP32[(71196)>>2]|0; + $82 = ($45>>>0)<($81>>>0); + if ($82) { + _abort(); + // unreachable; + } + $83 = ((($45)) + 16|0); + $84 = HEAP32[$83>>2]|0; + $85 = ($84|0)==($15|0); + if ($85) { + HEAP32[$83>>2] = $R$3; + } else { + $86 = ((($45)) + 20|0); + HEAP32[$86>>2] = $R$3; + } + $87 = ($R$3|0)==(0|0); + if ($87) { + $p$1 = $15;$psize$1 = $16; + break; + } + } + $88 = HEAP32[(71196)>>2]|0; + $89 = ($R$3>>>0)<($88>>>0); + if ($89) { + _abort(); + // unreachable; + } + $90 = ((($R$3)) + 24|0); + HEAP32[$90>>2] = $45; + $91 = ((($15)) + 16|0); + $92 = HEAP32[$91>>2]|0; + $93 = ($92|0)==(0|0); + do { + if (!($93)) { + $94 = ($92>>>0)<($88>>>0); + if ($94) { + _abort(); + // unreachable; + } else { + $95 = ((($R$3)) + 16|0); + HEAP32[$95>>2] = $92; + $96 = ((($92)) + 24|0); + HEAP32[$96>>2] = $R$3; + break; + } + } + } while(0); + $97 = ((($91)) + 4|0); + $98 = HEAP32[$97>>2]|0; + $99 = ($98|0)==(0|0); + if ($99) { + $p$1 = $15;$psize$1 = $16; + } else { + $100 = HEAP32[(71196)>>2]|0; + $101 = ($98>>>0)<($100>>>0); + if ($101) { + _abort(); + // unreachable; + } else { + $102 = ((($R$3)) + 20|0); + HEAP32[$102>>2] = $98; + $103 = ((($98)) + 24|0); + HEAP32[$103>>2] = $R$3; + $p$1 = $15;$psize$1 = $16; + break; + } + } + } + } else { + $p$1 = $1;$psize$1 = $8; + } + } while(0); + $112 = ($p$1>>>0)<($9>>>0); + if (!($112)) { + _abort(); + // unreachable; + } + $113 = ((($9)) + 4|0); + $114 = HEAP32[$113>>2]|0; + $115 = $114 & 1; + $116 = ($115|0)==(0); + if ($116) { + _abort(); + // unreachable; + } + $117 = $114 & 2; + $118 = ($117|0)==(0); + if ($118) { + $119 = HEAP32[(71204)>>2]|0; + $120 = ($9|0)==($119|0); + if ($120) { + $121 = HEAP32[(71192)>>2]|0; + $122 = (($121) + ($psize$1))|0; + HEAP32[(71192)>>2] = $122; + HEAP32[(71204)>>2] = $p$1; + $123 = $122 | 1; + $124 = ((($p$1)) + 4|0); + HEAP32[$124>>2] = $123; + $125 = HEAP32[(71200)>>2]|0; + $126 = ($p$1|0)==($125|0); + if (!($126)) { + return; + } + HEAP32[(71200)>>2] = 0; + HEAP32[(71188)>>2] = 0; + return; + } + $127 = HEAP32[(71200)>>2]|0; + $128 = ($9|0)==($127|0); + if ($128) { + $129 = HEAP32[(71188)>>2]|0; + $130 = (($129) + ($psize$1))|0; + HEAP32[(71188)>>2] = $130; + HEAP32[(71200)>>2] = $p$1; + $131 = $130 | 1; + $132 = ((($p$1)) + 4|0); + HEAP32[$132>>2] = $131; + $133 = (($p$1) + ($130)|0); + HEAP32[$133>>2] = $130; + return; + } + $134 = $114 & -8; + $135 = (($134) + ($psize$1))|0; + $136 = $114 >>> 3; + $137 = ($114>>>0)<(256); + do { + if ($137) { + $138 = ((($9)) + 8|0); + $139 = HEAP32[$138>>2]|0; + $140 = ((($9)) + 12|0); + $141 = HEAP32[$140>>2]|0; + $142 = $136 << 1; + $143 = (71220 + ($142<<2)|0); + $144 = ($139|0)==($143|0); + if (!($144)) { + $145 = HEAP32[(71196)>>2]|0; + $146 = ($139>>>0)<($145>>>0); + if ($146) { + _abort(); + // unreachable; + } + $147 = ((($139)) + 12|0); + $148 = HEAP32[$147>>2]|0; + $149 = ($148|0)==($9|0); + if (!($149)) { + _abort(); + // unreachable; + } + } + $150 = ($141|0)==($139|0); + if ($150) { + $151 = 1 << $136; + $152 = $151 ^ -1; + $153 = HEAP32[17795]|0; + $154 = $153 & $152; + HEAP32[17795] = $154; + break; + } + $155 = ($141|0)==($143|0); + if ($155) { + $$pre40 = ((($141)) + 8|0); + $$pre$phi41Z2D = $$pre40; + } else { + $156 = HEAP32[(71196)>>2]|0; + $157 = ($141>>>0)<($156>>>0); + if ($157) { + _abort(); + // unreachable; + } + $158 = ((($141)) + 8|0); + $159 = HEAP32[$158>>2]|0; + $160 = ($159|0)==($9|0); + if ($160) { + $$pre$phi41Z2D = $158; + } else { + _abort(); + // unreachable; + } + } + $161 = ((($139)) + 12|0); + HEAP32[$161>>2] = $141; + HEAP32[$$pre$phi41Z2D>>2] = $139; + } else { + $162 = ((($9)) + 24|0); + $163 = HEAP32[$162>>2]|0; + $164 = ((($9)) + 12|0); + $165 = HEAP32[$164>>2]|0; + $166 = ($165|0)==($9|0); + do { + if ($166) { + $177 = ((($9)) + 16|0); + $178 = ((($177)) + 4|0); + $179 = HEAP32[$178>>2]|0; + $180 = ($179|0)==(0|0); + if ($180) { + $181 = HEAP32[$177>>2]|0; + $182 = ($181|0)==(0|0); + if ($182) { + $R8$3 = 0; + break; + } else { + $R8$1 = $181;$RP10$1 = $177; + } + } else { + $R8$1 = $179;$RP10$1 = $178; + } + while(1) { + $183 = ((($R8$1)) + 20|0); + $184 = HEAP32[$183>>2]|0; + $185 = ($184|0)==(0|0); + if (!($185)) { + $R8$1 = $184;$RP10$1 = $183; + continue; + } + $186 = ((($R8$1)) + 16|0); + $187 = HEAP32[$186>>2]|0; + $188 = ($187|0)==(0|0); + if ($188) { + $R8$1$lcssa = $R8$1;$RP10$1$lcssa = $RP10$1; + break; + } else { + $R8$1 = $187;$RP10$1 = $186; + } + } + $189 = HEAP32[(71196)>>2]|0; + $190 = ($RP10$1$lcssa>>>0)<($189>>>0); + if ($190) { + _abort(); + // unreachable; + } else { + HEAP32[$RP10$1$lcssa>>2] = 0; + $R8$3 = $R8$1$lcssa; + break; + } + } else { + $167 = ((($9)) + 8|0); + $168 = HEAP32[$167>>2]|0; + $169 = HEAP32[(71196)>>2]|0; + $170 = ($168>>>0)<($169>>>0); + if ($170) { + _abort(); + // unreachable; + } + $171 = ((($168)) + 12|0); + $172 = HEAP32[$171>>2]|0; + $173 = ($172|0)==($9|0); + if (!($173)) { + _abort(); + // unreachable; + } + $174 = ((($165)) + 8|0); + $175 = HEAP32[$174>>2]|0; + $176 = ($175|0)==($9|0); + if ($176) { + HEAP32[$171>>2] = $165; + HEAP32[$174>>2] = $168; + $R8$3 = $165; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $191 = ($163|0)==(0|0); + if (!($191)) { + $192 = ((($9)) + 28|0); + $193 = HEAP32[$192>>2]|0; + $194 = (71484 + ($193<<2)|0); + $195 = HEAP32[$194>>2]|0; + $196 = ($9|0)==($195|0); + if ($196) { + HEAP32[$194>>2] = $R8$3; + $cond21 = ($R8$3|0)==(0|0); + if ($cond21) { + $197 = 1 << $193; + $198 = $197 ^ -1; + $199 = HEAP32[(71184)>>2]|0; + $200 = $199 & $198; + HEAP32[(71184)>>2] = $200; + break; + } + } else { + $201 = HEAP32[(71196)>>2]|0; + $202 = ($163>>>0)<($201>>>0); + if ($202) { + _abort(); + // unreachable; + } + $203 = ((($163)) + 16|0); + $204 = HEAP32[$203>>2]|0; + $205 = ($204|0)==($9|0); + if ($205) { + HEAP32[$203>>2] = $R8$3; + } else { + $206 = ((($163)) + 20|0); + HEAP32[$206>>2] = $R8$3; + } + $207 = ($R8$3|0)==(0|0); + if ($207) { + break; + } + } + $208 = HEAP32[(71196)>>2]|0; + $209 = ($R8$3>>>0)<($208>>>0); + if ($209) { + _abort(); + // unreachable; + } + $210 = ((($R8$3)) + 24|0); + HEAP32[$210>>2] = $163; + $211 = ((($9)) + 16|0); + $212 = HEAP32[$211>>2]|0; + $213 = ($212|0)==(0|0); + do { + if (!($213)) { + $214 = ($212>>>0)<($208>>>0); + if ($214) { + _abort(); + // unreachable; + } else { + $215 = ((($R8$3)) + 16|0); + HEAP32[$215>>2] = $212; + $216 = ((($212)) + 24|0); + HEAP32[$216>>2] = $R8$3; + break; + } + } + } while(0); + $217 = ((($211)) + 4|0); + $218 = HEAP32[$217>>2]|0; + $219 = ($218|0)==(0|0); + if (!($219)) { + $220 = HEAP32[(71196)>>2]|0; + $221 = ($218>>>0)<($220>>>0); + if ($221) { + _abort(); + // unreachable; + } else { + $222 = ((($R8$3)) + 20|0); + HEAP32[$222>>2] = $218; + $223 = ((($218)) + 24|0); + HEAP32[$223>>2] = $R8$3; + break; + } + } + } + } + } while(0); + $224 = $135 | 1; + $225 = ((($p$1)) + 4|0); + HEAP32[$225>>2] = $224; + $226 = (($p$1) + ($135)|0); + HEAP32[$226>>2] = $135; + $227 = HEAP32[(71200)>>2]|0; + $228 = ($p$1|0)==($227|0); + if ($228) { + HEAP32[(71188)>>2] = $135; + return; + } else { + $psize$2 = $135; + } + } else { + $229 = $114 & -2; + HEAP32[$113>>2] = $229; + $230 = $psize$1 | 1; + $231 = ((($p$1)) + 4|0); + HEAP32[$231>>2] = $230; + $232 = (($p$1) + ($psize$1)|0); + HEAP32[$232>>2] = $psize$1; + $psize$2 = $psize$1; + } + $233 = $psize$2 >>> 3; + $234 = ($psize$2>>>0)<(256); + if ($234) { + $235 = $233 << 1; + $236 = (71220 + ($235<<2)|0); + $237 = HEAP32[17795]|0; + $238 = 1 << $233; + $239 = $237 & $238; + $240 = ($239|0)==(0); + if ($240) { + $241 = $237 | $238; + HEAP32[17795] = $241; + $$pre = ((($236)) + 8|0); + $$pre$phiZ2D = $$pre;$F18$0 = $236; + } else { + $242 = ((($236)) + 8|0); + $243 = HEAP32[$242>>2]|0; + $244 = HEAP32[(71196)>>2]|0; + $245 = ($243>>>0)<($244>>>0); + if ($245) { + _abort(); + // unreachable; + } else { + $$pre$phiZ2D = $242;$F18$0 = $243; + } + } + HEAP32[$$pre$phiZ2D>>2] = $p$1; + $246 = ((($F18$0)) + 12|0); + HEAP32[$246>>2] = $p$1; + $247 = ((($p$1)) + 8|0); + HEAP32[$247>>2] = $F18$0; + $248 = ((($p$1)) + 12|0); + HEAP32[$248>>2] = $236; + return; + } + $249 = $psize$2 >>> 8; + $250 = ($249|0)==(0); + if ($250) { + $I20$0 = 0; + } else { + $251 = ($psize$2>>>0)>(16777215); + if ($251) { + $I20$0 = 31; + } else { + $252 = (($249) + 1048320)|0; + $253 = $252 >>> 16; + $254 = $253 & 8; + $255 = $249 << $254; + $256 = (($255) + 520192)|0; + $257 = $256 >>> 16; + $258 = $257 & 4; + $259 = $258 | $254; + $260 = $255 << $258; + $261 = (($260) + 245760)|0; + $262 = $261 >>> 16; + $263 = $262 & 2; + $264 = $259 | $263; + $265 = (14 - ($264))|0; + $266 = $260 << $263; + $267 = $266 >>> 15; + $268 = (($265) + ($267))|0; + $269 = $268 << 1; + $270 = (($268) + 7)|0; + $271 = $psize$2 >>> $270; + $272 = $271 & 1; + $273 = $272 | $269; + $I20$0 = $273; + } + } + $274 = (71484 + ($I20$0<<2)|0); + $275 = ((($p$1)) + 28|0); + HEAP32[$275>>2] = $I20$0; + $276 = ((($p$1)) + 16|0); + $277 = ((($p$1)) + 20|0); + HEAP32[$277>>2] = 0; + HEAP32[$276>>2] = 0; + $278 = HEAP32[(71184)>>2]|0; + $279 = 1 << $I20$0; + $280 = $278 & $279; + $281 = ($280|0)==(0); + do { + if ($281) { + $282 = $278 | $279; + HEAP32[(71184)>>2] = $282; + HEAP32[$274>>2] = $p$1; + $283 = ((($p$1)) + 24|0); + HEAP32[$283>>2] = $274; + $284 = ((($p$1)) + 12|0); + HEAP32[$284>>2] = $p$1; + $285 = ((($p$1)) + 8|0); + HEAP32[$285>>2] = $p$1; + } else { + $286 = HEAP32[$274>>2]|0; + $287 = ($I20$0|0)==(31); + $288 = $I20$0 >>> 1; + $289 = (25 - ($288))|0; + $290 = $287 ? 0 : $289; + $291 = $psize$2 << $290; + $K21$0 = $291;$T$0 = $286; + while(1) { + $292 = ((($T$0)) + 4|0); + $293 = HEAP32[$292>>2]|0; + $294 = $293 & -8; + $295 = ($294|0)==($psize$2|0); + if ($295) { + $T$0$lcssa = $T$0; + label = 130; + break; + } + $296 = $K21$0 >>> 31; + $297 = (((($T$0)) + 16|0) + ($296<<2)|0); + $298 = $K21$0 << 1; + $299 = HEAP32[$297>>2]|0; + $300 = ($299|0)==(0|0); + if ($300) { + $$lcssa = $297;$T$0$lcssa48 = $T$0; + label = 127; + break; + } else { + $K21$0 = $298;$T$0 = $299; + } + } + if ((label|0) == 127) { + $301 = HEAP32[(71196)>>2]|0; + $302 = ($$lcssa>>>0)<($301>>>0); + if ($302) { + _abort(); + // unreachable; + } else { + HEAP32[$$lcssa>>2] = $p$1; + $303 = ((($p$1)) + 24|0); + HEAP32[$303>>2] = $T$0$lcssa48; + $304 = ((($p$1)) + 12|0); + HEAP32[$304>>2] = $p$1; + $305 = ((($p$1)) + 8|0); + HEAP32[$305>>2] = $p$1; + break; + } + } + else if ((label|0) == 130) { + $306 = ((($T$0$lcssa)) + 8|0); + $307 = HEAP32[$306>>2]|0; + $308 = HEAP32[(71196)>>2]|0; + $309 = ($307>>>0)>=($308>>>0); + $not$ = ($T$0$lcssa>>>0)>=($308>>>0); + $310 = $309 & $not$; + if ($310) { + $311 = ((($307)) + 12|0); + HEAP32[$311>>2] = $p$1; + HEAP32[$306>>2] = $p$1; + $312 = ((($p$1)) + 8|0); + HEAP32[$312>>2] = $307; + $313 = ((($p$1)) + 12|0); + HEAP32[$313>>2] = $T$0$lcssa; + $314 = ((($p$1)) + 24|0); + HEAP32[$314>>2] = 0; + break; + } else { + _abort(); + // unreachable; + } + } + } + } while(0); + $315 = HEAP32[(71212)>>2]|0; + $316 = (($315) + -1)|0; + HEAP32[(71212)>>2] = $316; + $317 = ($316|0)==(0); + if ($317) { + $sp$0$in$i = (71636); + } else { + return; + } + while(1) { + $sp$0$i = HEAP32[$sp$0$in$i>>2]|0; + $318 = ($sp$0$i|0)==(0|0); + $319 = ((($sp$0$i)) + 8|0); + if ($318) { + break; + } else { + $sp$0$in$i = $319; + } + } + HEAP32[(71212)>>2] = -1; + return; +} +function _calloc($n_elements,$elem_size) { + $n_elements = $n_elements|0; + $elem_size = $elem_size|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $req$0 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($n_elements|0)==(0); + if ($0) { + $req$0 = 0; + } else { + $1 = Math_imul($elem_size, $n_elements)|0; + $2 = $elem_size | $n_elements; + $3 = ($2>>>0)>(65535); + if ($3) { + $4 = (($1>>>0) / ($n_elements>>>0))&-1; + $5 = ($4|0)==($elem_size|0); + $$ = $5 ? $1 : -1; + $req$0 = $$; + } else { + $req$0 = $1; + } + } + $6 = (_malloc($req$0)|0); + $7 = ($6|0)==(0|0); + if ($7) { + return ($6|0); + } + $8 = ((($6)) + -4|0); + $9 = HEAP32[$8>>2]|0; + $10 = $9 & 3; + $11 = ($10|0)==(0); + if ($11) { + return ($6|0); + } + _memset(($6|0),0,($req$0|0))|0; + return ($6|0); +} +function _realloc($oldmem,$bytes) { + $oldmem = $oldmem|0; + $bytes = $bytes|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $mem$1 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($oldmem|0)==(0|0); + if ($0) { + $1 = (_malloc($bytes)|0); + $mem$1 = $1; + return ($mem$1|0); + } + $2 = ($bytes>>>0)>(4294967231); + if ($2) { + $3 = (___errno_location()|0); + HEAP32[$3>>2] = 12; + $mem$1 = 0; + return ($mem$1|0); + } + $4 = ($bytes>>>0)<(11); + $5 = (($bytes) + 11)|0; + $6 = $5 & -8; + $7 = $4 ? 16 : $6; + $8 = ((($oldmem)) + -8|0); + $9 = (_try_realloc_chunk($8,$7)|0); + $10 = ($9|0)==(0|0); + if (!($10)) { + $11 = ((($9)) + 8|0); + $mem$1 = $11; + return ($mem$1|0); + } + $12 = (_malloc($bytes)|0); + $13 = ($12|0)==(0|0); + if ($13) { + $mem$1 = 0; + return ($mem$1|0); + } + $14 = ((($oldmem)) + -4|0); + $15 = HEAP32[$14>>2]|0; + $16 = $15 & -8; + $17 = $15 & 3; + $18 = ($17|0)==(0); + $19 = $18 ? 8 : 4; + $20 = (($16) - ($19))|0; + $21 = ($20>>>0)<($bytes>>>0); + $22 = $21 ? $20 : $bytes; + _memcpy(($12|0),($oldmem|0),($22|0))|0; + _free($oldmem); + $mem$1 = $12; + return ($mem$1|0); +} +function _try_realloc_chunk($p,$nb) { + $p = $p|0; + $nb = $nb|0; + var $$pre = 0, $$pre$phiZ2D = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0; + var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0; + var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0; + var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0; + var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $R$1 = 0, $R$1$lcssa = 0; + var $R$3 = 0, $RP$1 = 0, $RP$1$lcssa = 0, $cond = 0, $newp$2 = 0, $notlhs = 0, $notrhs = 0, $or$cond$not = 0, $or$cond3 = 0, $storemerge = 0, $storemerge1 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ((($p)) + 4|0); + $1 = HEAP32[$0>>2]|0; + $2 = $1 & -8; + $3 = (($p) + ($2)|0); + $4 = HEAP32[(71196)>>2]|0; + $5 = $1 & 3; + $notlhs = ($p>>>0)>=($4>>>0); + $notrhs = ($5|0)!=(1); + $or$cond$not = $notrhs & $notlhs; + $6 = ($p>>>0)<($3>>>0); + $or$cond3 = $or$cond$not & $6; + if (!($or$cond3)) { + _abort(); + // unreachable; + } + $7 = ((($3)) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = $8 & 1; + $10 = ($9|0)==(0); + if ($10) { + _abort(); + // unreachable; + } + $11 = ($5|0)==(0); + if ($11) { + $12 = ($nb>>>0)<(256); + if ($12) { + $newp$2 = 0; + return ($newp$2|0); + } + $13 = (($nb) + 4)|0; + $14 = ($2>>>0)<($13>>>0); + if (!($14)) { + $15 = (($2) - ($nb))|0; + $16 = HEAP32[(71660)>>2]|0; + $17 = $16 << 1; + $18 = ($15>>>0)>($17>>>0); + if (!($18)) { + $newp$2 = $p; + return ($newp$2|0); + } + } + $newp$2 = 0; + return ($newp$2|0); + } + $19 = ($2>>>0)<($nb>>>0); + if (!($19)) { + $20 = (($2) - ($nb))|0; + $21 = ($20>>>0)>(15); + if (!($21)) { + $newp$2 = $p; + return ($newp$2|0); + } + $22 = (($p) + ($nb)|0); + $23 = $1 & 1; + $24 = $23 | $nb; + $25 = $24 | 2; + HEAP32[$0>>2] = $25; + $26 = ((($22)) + 4|0); + $27 = $20 | 3; + HEAP32[$26>>2] = $27; + $28 = (($22) + ($20)|0); + $29 = ((($28)) + 4|0); + $30 = HEAP32[$29>>2]|0; + $31 = $30 | 1; + HEAP32[$29>>2] = $31; + _dispose_chunk($22,$20); + $newp$2 = $p; + return ($newp$2|0); + } + $32 = HEAP32[(71204)>>2]|0; + $33 = ($3|0)==($32|0); + if ($33) { + $34 = HEAP32[(71192)>>2]|0; + $35 = (($34) + ($2))|0; + $36 = ($35>>>0)>($nb>>>0); + if (!($36)) { + $newp$2 = 0; + return ($newp$2|0); + } + $37 = (($35) - ($nb))|0; + $38 = (($p) + ($nb)|0); + $39 = $1 & 1; + $40 = $39 | $nb; + $41 = $40 | 2; + HEAP32[$0>>2] = $41; + $42 = ((($38)) + 4|0); + $43 = $37 | 1; + HEAP32[$42>>2] = $43; + HEAP32[(71204)>>2] = $38; + HEAP32[(71192)>>2] = $37; + $newp$2 = $p; + return ($newp$2|0); + } + $44 = HEAP32[(71200)>>2]|0; + $45 = ($3|0)==($44|0); + if ($45) { + $46 = HEAP32[(71188)>>2]|0; + $47 = (($46) + ($2))|0; + $48 = ($47>>>0)<($nb>>>0); + if ($48) { + $newp$2 = 0; + return ($newp$2|0); + } + $49 = (($47) - ($nb))|0; + $50 = ($49>>>0)>(15); + if ($50) { + $51 = (($p) + ($nb)|0); + $52 = (($51) + ($49)|0); + $53 = $1 & 1; + $54 = $53 | $nb; + $55 = $54 | 2; + HEAP32[$0>>2] = $55; + $56 = ((($51)) + 4|0); + $57 = $49 | 1; + HEAP32[$56>>2] = $57; + HEAP32[$52>>2] = $49; + $58 = ((($52)) + 4|0); + $59 = HEAP32[$58>>2]|0; + $60 = $59 & -2; + HEAP32[$58>>2] = $60; + $storemerge = $51;$storemerge1 = $49; + } else { + $61 = $1 & 1; + $62 = $61 | $47; + $63 = $62 | 2; + HEAP32[$0>>2] = $63; + $64 = (($p) + ($47)|0); + $65 = ((($64)) + 4|0); + $66 = HEAP32[$65>>2]|0; + $67 = $66 | 1; + HEAP32[$65>>2] = $67; + $storemerge = 0;$storemerge1 = 0; + } + HEAP32[(71188)>>2] = $storemerge1; + HEAP32[(71200)>>2] = $storemerge; + $newp$2 = $p; + return ($newp$2|0); + } + $68 = $8 & 2; + $69 = ($68|0)==(0); + if (!($69)) { + $newp$2 = 0; + return ($newp$2|0); + } + $70 = $8 & -8; + $71 = (($70) + ($2))|0; + $72 = ($71>>>0)<($nb>>>0); + if ($72) { + $newp$2 = 0; + return ($newp$2|0); + } + $73 = (($71) - ($nb))|0; + $74 = $8 >>> 3; + $75 = ($8>>>0)<(256); + do { + if ($75) { + $76 = ((($3)) + 8|0); + $77 = HEAP32[$76>>2]|0; + $78 = ((($3)) + 12|0); + $79 = HEAP32[$78>>2]|0; + $80 = $74 << 1; + $81 = (71220 + ($80<<2)|0); + $82 = ($77|0)==($81|0); + if (!($82)) { + $83 = ($77>>>0)<($4>>>0); + if ($83) { + _abort(); + // unreachable; + } + $84 = ((($77)) + 12|0); + $85 = HEAP32[$84>>2]|0; + $86 = ($85|0)==($3|0); + if (!($86)) { + _abort(); + // unreachable; + } + } + $87 = ($79|0)==($77|0); + if ($87) { + $88 = 1 << $74; + $89 = $88 ^ -1; + $90 = HEAP32[17795]|0; + $91 = $90 & $89; + HEAP32[17795] = $91; + break; + } + $92 = ($79|0)==($81|0); + if ($92) { + $$pre = ((($79)) + 8|0); + $$pre$phiZ2D = $$pre; + } else { + $93 = ($79>>>0)<($4>>>0); + if ($93) { + _abort(); + // unreachable; + } + $94 = ((($79)) + 8|0); + $95 = HEAP32[$94>>2]|0; + $96 = ($95|0)==($3|0); + if ($96) { + $$pre$phiZ2D = $94; + } else { + _abort(); + // unreachable; + } + } + $97 = ((($77)) + 12|0); + HEAP32[$97>>2] = $79; + HEAP32[$$pre$phiZ2D>>2] = $77; + } else { + $98 = ((($3)) + 24|0); + $99 = HEAP32[$98>>2]|0; + $100 = ((($3)) + 12|0); + $101 = HEAP32[$100>>2]|0; + $102 = ($101|0)==($3|0); + do { + if ($102) { + $112 = ((($3)) + 16|0); + $113 = ((($112)) + 4|0); + $114 = HEAP32[$113>>2]|0; + $115 = ($114|0)==(0|0); + if ($115) { + $116 = HEAP32[$112>>2]|0; + $117 = ($116|0)==(0|0); + if ($117) { + $R$3 = 0; + break; + } else { + $R$1 = $116;$RP$1 = $112; + } + } else { + $R$1 = $114;$RP$1 = $113; + } + while(1) { + $118 = ((($R$1)) + 20|0); + $119 = HEAP32[$118>>2]|0; + $120 = ($119|0)==(0|0); + if (!($120)) { + $R$1 = $119;$RP$1 = $118; + continue; + } + $121 = ((($R$1)) + 16|0); + $122 = HEAP32[$121>>2]|0; + $123 = ($122|0)==(0|0); + if ($123) { + $R$1$lcssa = $R$1;$RP$1$lcssa = $RP$1; + break; + } else { + $R$1 = $122;$RP$1 = $121; + } + } + $124 = ($RP$1$lcssa>>>0)<($4>>>0); + if ($124) { + _abort(); + // unreachable; + } else { + HEAP32[$RP$1$lcssa>>2] = 0; + $R$3 = $R$1$lcssa; + break; + } + } else { + $103 = ((($3)) + 8|0); + $104 = HEAP32[$103>>2]|0; + $105 = ($104>>>0)<($4>>>0); + if ($105) { + _abort(); + // unreachable; + } + $106 = ((($104)) + 12|0); + $107 = HEAP32[$106>>2]|0; + $108 = ($107|0)==($3|0); + if (!($108)) { + _abort(); + // unreachable; + } + $109 = ((($101)) + 8|0); + $110 = HEAP32[$109>>2]|0; + $111 = ($110|0)==($3|0); + if ($111) { + HEAP32[$106>>2] = $101; + HEAP32[$109>>2] = $104; + $R$3 = $101; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $125 = ($99|0)==(0|0); + if (!($125)) { + $126 = ((($3)) + 28|0); + $127 = HEAP32[$126>>2]|0; + $128 = (71484 + ($127<<2)|0); + $129 = HEAP32[$128>>2]|0; + $130 = ($3|0)==($129|0); + if ($130) { + HEAP32[$128>>2] = $R$3; + $cond = ($R$3|0)==(0|0); + if ($cond) { + $131 = 1 << $127; + $132 = $131 ^ -1; + $133 = HEAP32[(71184)>>2]|0; + $134 = $133 & $132; + HEAP32[(71184)>>2] = $134; + break; + } + } else { + $135 = HEAP32[(71196)>>2]|0; + $136 = ($99>>>0)<($135>>>0); + if ($136) { + _abort(); + // unreachable; + } + $137 = ((($99)) + 16|0); + $138 = HEAP32[$137>>2]|0; + $139 = ($138|0)==($3|0); + if ($139) { + HEAP32[$137>>2] = $R$3; + } else { + $140 = ((($99)) + 20|0); + HEAP32[$140>>2] = $R$3; + } + $141 = ($R$3|0)==(0|0); + if ($141) { + break; + } + } + $142 = HEAP32[(71196)>>2]|0; + $143 = ($R$3>>>0)<($142>>>0); + if ($143) { + _abort(); + // unreachable; + } + $144 = ((($R$3)) + 24|0); + HEAP32[$144>>2] = $99; + $145 = ((($3)) + 16|0); + $146 = HEAP32[$145>>2]|0; + $147 = ($146|0)==(0|0); + do { + if (!($147)) { + $148 = ($146>>>0)<($142>>>0); + if ($148) { + _abort(); + // unreachable; + } else { + $149 = ((($R$3)) + 16|0); + HEAP32[$149>>2] = $146; + $150 = ((($146)) + 24|0); + HEAP32[$150>>2] = $R$3; + break; + } + } + } while(0); + $151 = ((($145)) + 4|0); + $152 = HEAP32[$151>>2]|0; + $153 = ($152|0)==(0|0); + if (!($153)) { + $154 = HEAP32[(71196)>>2]|0; + $155 = ($152>>>0)<($154>>>0); + if ($155) { + _abort(); + // unreachable; + } else { + $156 = ((($R$3)) + 20|0); + HEAP32[$156>>2] = $152; + $157 = ((($152)) + 24|0); + HEAP32[$157>>2] = $R$3; + break; + } + } + } + } + } while(0); + $158 = ($73>>>0)<(16); + if ($158) { + $159 = $1 & 1; + $160 = $71 | $159; + $161 = $160 | 2; + HEAP32[$0>>2] = $161; + $162 = (($p) + ($71)|0); + $163 = ((($162)) + 4|0); + $164 = HEAP32[$163>>2]|0; + $165 = $164 | 1; + HEAP32[$163>>2] = $165; + $newp$2 = $p; + return ($newp$2|0); + } else { + $166 = (($p) + ($nb)|0); + $167 = $1 & 1; + $168 = $167 | $nb; + $169 = $168 | 2; + HEAP32[$0>>2] = $169; + $170 = ((($166)) + 4|0); + $171 = $73 | 3; + HEAP32[$170>>2] = $171; + $172 = (($166) + ($73)|0); + $173 = ((($172)) + 4|0); + $174 = HEAP32[$173>>2]|0; + $175 = $174 | 1; + HEAP32[$173>>2] = $175; + _dispose_chunk($166,$73); + $newp$2 = $p; + return ($newp$2|0); + } + return (0)|0; +} +function _dispose_chunk($p,$psize) { + $p = $p|0; + $psize = $psize|0; + var $$1 = 0, $$14 = 0, $$2 = 0, $$lcssa = 0, $$pre = 0, $$pre$phi22Z2D = 0, $$pre$phi24Z2D = 0, $$pre$phiZ2D = 0, $$pre21 = 0, $$pre23 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0; + var $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0; + var $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0; + var $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0; + var $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0; + var $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0; + var $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0; + var $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0; + var $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0; + var $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0; + var $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0; + var $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $F17$0 = 0, $I20$0 = 0, $K21$0 = 0, $R$1 = 0, $R$1$lcssa = 0; + var $R$3 = 0, $R7$1 = 0, $R7$1$lcssa = 0, $R7$3 = 0, $RP$1 = 0, $RP$1$lcssa = 0, $RP9$1 = 0, $RP9$1$lcssa = 0, $T$0 = 0, $T$0$lcssa = 0, $T$0$lcssa30 = 0, $cond = 0, $cond16 = 0, $not$ = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (($p) + ($psize)|0); + $1 = ((($p)) + 4|0); + $2 = HEAP32[$1>>2]|0; + $3 = $2 & 1; + $4 = ($3|0)==(0); + do { + if ($4) { + $5 = HEAP32[$p>>2]|0; + $6 = $2 & 3; + $7 = ($6|0)==(0); + if ($7) { + return; + } + $8 = (0 - ($5))|0; + $9 = (($p) + ($8)|0); + $10 = (($5) + ($psize))|0; + $11 = HEAP32[(71196)>>2]|0; + $12 = ($9>>>0)<($11>>>0); + if ($12) { + _abort(); + // unreachable; + } + $13 = HEAP32[(71200)>>2]|0; + $14 = ($9|0)==($13|0); + if ($14) { + $99 = ((($0)) + 4|0); + $100 = HEAP32[$99>>2]|0; + $101 = $100 & 3; + $102 = ($101|0)==(3); + if (!($102)) { + $$1 = $9;$$14 = $10; + break; + } + HEAP32[(71188)>>2] = $10; + $103 = $100 & -2; + HEAP32[$99>>2] = $103; + $104 = $10 | 1; + $105 = ((($9)) + 4|0); + HEAP32[$105>>2] = $104; + $106 = (($9) + ($10)|0); + HEAP32[$106>>2] = $10; + return; + } + $15 = $5 >>> 3; + $16 = ($5>>>0)<(256); + if ($16) { + $17 = ((($9)) + 8|0); + $18 = HEAP32[$17>>2]|0; + $19 = ((($9)) + 12|0); + $20 = HEAP32[$19>>2]|0; + $21 = $15 << 1; + $22 = (71220 + ($21<<2)|0); + $23 = ($18|0)==($22|0); + if (!($23)) { + $24 = ($18>>>0)<($11>>>0); + if ($24) { + _abort(); + // unreachable; + } + $25 = ((($18)) + 12|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)==($9|0); + if (!($27)) { + _abort(); + // unreachable; + } + } + $28 = ($20|0)==($18|0); + if ($28) { + $29 = 1 << $15; + $30 = $29 ^ -1; + $31 = HEAP32[17795]|0; + $32 = $31 & $30; + HEAP32[17795] = $32; + $$1 = $9;$$14 = $10; + break; + } + $33 = ($20|0)==($22|0); + if ($33) { + $$pre23 = ((($20)) + 8|0); + $$pre$phi24Z2D = $$pre23; + } else { + $34 = ($20>>>0)<($11>>>0); + if ($34) { + _abort(); + // unreachable; + } + $35 = ((($20)) + 8|0); + $36 = HEAP32[$35>>2]|0; + $37 = ($36|0)==($9|0); + if ($37) { + $$pre$phi24Z2D = $35; + } else { + _abort(); + // unreachable; + } + } + $38 = ((($18)) + 12|0); + HEAP32[$38>>2] = $20; + HEAP32[$$pre$phi24Z2D>>2] = $18; + $$1 = $9;$$14 = $10; + break; + } + $39 = ((($9)) + 24|0); + $40 = HEAP32[$39>>2]|0; + $41 = ((($9)) + 12|0); + $42 = HEAP32[$41>>2]|0; + $43 = ($42|0)==($9|0); + do { + if ($43) { + $53 = ((($9)) + 16|0); + $54 = ((($53)) + 4|0); + $55 = HEAP32[$54>>2]|0; + $56 = ($55|0)==(0|0); + if ($56) { + $57 = HEAP32[$53>>2]|0; + $58 = ($57|0)==(0|0); + if ($58) { + $R$3 = 0; + break; + } else { + $R$1 = $57;$RP$1 = $53; + } + } else { + $R$1 = $55;$RP$1 = $54; + } + while(1) { + $59 = ((($R$1)) + 20|0); + $60 = HEAP32[$59>>2]|0; + $61 = ($60|0)==(0|0); + if (!($61)) { + $R$1 = $60;$RP$1 = $59; + continue; + } + $62 = ((($R$1)) + 16|0); + $63 = HEAP32[$62>>2]|0; + $64 = ($63|0)==(0|0); + if ($64) { + $R$1$lcssa = $R$1;$RP$1$lcssa = $RP$1; + break; + } else { + $R$1 = $63;$RP$1 = $62; + } + } + $65 = ($RP$1$lcssa>>>0)<($11>>>0); + if ($65) { + _abort(); + // unreachable; + } else { + HEAP32[$RP$1$lcssa>>2] = 0; + $R$3 = $R$1$lcssa; + break; + } + } else { + $44 = ((($9)) + 8|0); + $45 = HEAP32[$44>>2]|0; + $46 = ($45>>>0)<($11>>>0); + if ($46) { + _abort(); + // unreachable; + } + $47 = ((($45)) + 12|0); + $48 = HEAP32[$47>>2]|0; + $49 = ($48|0)==($9|0); + if (!($49)) { + _abort(); + // unreachable; + } + $50 = ((($42)) + 8|0); + $51 = HEAP32[$50>>2]|0; + $52 = ($51|0)==($9|0); + if ($52) { + HEAP32[$47>>2] = $42; + HEAP32[$50>>2] = $45; + $R$3 = $42; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $66 = ($40|0)==(0|0); + if ($66) { + $$1 = $9;$$14 = $10; + } else { + $67 = ((($9)) + 28|0); + $68 = HEAP32[$67>>2]|0; + $69 = (71484 + ($68<<2)|0); + $70 = HEAP32[$69>>2]|0; + $71 = ($9|0)==($70|0); + if ($71) { + HEAP32[$69>>2] = $R$3; + $cond = ($R$3|0)==(0|0); + if ($cond) { + $72 = 1 << $68; + $73 = $72 ^ -1; + $74 = HEAP32[(71184)>>2]|0; + $75 = $74 & $73; + HEAP32[(71184)>>2] = $75; + $$1 = $9;$$14 = $10; + break; + } + } else { + $76 = HEAP32[(71196)>>2]|0; + $77 = ($40>>>0)<($76>>>0); + if ($77) { + _abort(); + // unreachable; + } + $78 = ((($40)) + 16|0); + $79 = HEAP32[$78>>2]|0; + $80 = ($79|0)==($9|0); + if ($80) { + HEAP32[$78>>2] = $R$3; + } else { + $81 = ((($40)) + 20|0); + HEAP32[$81>>2] = $R$3; + } + $82 = ($R$3|0)==(0|0); + if ($82) { + $$1 = $9;$$14 = $10; + break; + } + } + $83 = HEAP32[(71196)>>2]|0; + $84 = ($R$3>>>0)<($83>>>0); + if ($84) { + _abort(); + // unreachable; + } + $85 = ((($R$3)) + 24|0); + HEAP32[$85>>2] = $40; + $86 = ((($9)) + 16|0); + $87 = HEAP32[$86>>2]|0; + $88 = ($87|0)==(0|0); + do { + if (!($88)) { + $89 = ($87>>>0)<($83>>>0); + if ($89) { + _abort(); + // unreachable; + } else { + $90 = ((($R$3)) + 16|0); + HEAP32[$90>>2] = $87; + $91 = ((($87)) + 24|0); + HEAP32[$91>>2] = $R$3; + break; + } + } + } while(0); + $92 = ((($86)) + 4|0); + $93 = HEAP32[$92>>2]|0; + $94 = ($93|0)==(0|0); + if ($94) { + $$1 = $9;$$14 = $10; + } else { + $95 = HEAP32[(71196)>>2]|0; + $96 = ($93>>>0)<($95>>>0); + if ($96) { + _abort(); + // unreachable; + } else { + $97 = ((($R$3)) + 20|0); + HEAP32[$97>>2] = $93; + $98 = ((($93)) + 24|0); + HEAP32[$98>>2] = $R$3; + $$1 = $9;$$14 = $10; + break; + } + } + } + } else { + $$1 = $p;$$14 = $psize; + } + } while(0); + $107 = HEAP32[(71196)>>2]|0; + $108 = ($0>>>0)<($107>>>0); + if ($108) { + _abort(); + // unreachable; + } + $109 = ((($0)) + 4|0); + $110 = HEAP32[$109>>2]|0; + $111 = $110 & 2; + $112 = ($111|0)==(0); + if ($112) { + $113 = HEAP32[(71204)>>2]|0; + $114 = ($0|0)==($113|0); + if ($114) { + $115 = HEAP32[(71192)>>2]|0; + $116 = (($115) + ($$14))|0; + HEAP32[(71192)>>2] = $116; + HEAP32[(71204)>>2] = $$1; + $117 = $116 | 1; + $118 = ((($$1)) + 4|0); + HEAP32[$118>>2] = $117; + $119 = HEAP32[(71200)>>2]|0; + $120 = ($$1|0)==($119|0); + if (!($120)) { + return; + } + HEAP32[(71200)>>2] = 0; + HEAP32[(71188)>>2] = 0; + return; + } + $121 = HEAP32[(71200)>>2]|0; + $122 = ($0|0)==($121|0); + if ($122) { + $123 = HEAP32[(71188)>>2]|0; + $124 = (($123) + ($$14))|0; + HEAP32[(71188)>>2] = $124; + HEAP32[(71200)>>2] = $$1; + $125 = $124 | 1; + $126 = ((($$1)) + 4|0); + HEAP32[$126>>2] = $125; + $127 = (($$1) + ($124)|0); + HEAP32[$127>>2] = $124; + return; + } + $128 = $110 & -8; + $129 = (($128) + ($$14))|0; + $130 = $110 >>> 3; + $131 = ($110>>>0)<(256); + do { + if ($131) { + $132 = ((($0)) + 8|0); + $133 = HEAP32[$132>>2]|0; + $134 = ((($0)) + 12|0); + $135 = HEAP32[$134>>2]|0; + $136 = $130 << 1; + $137 = (71220 + ($136<<2)|0); + $138 = ($133|0)==($137|0); + if (!($138)) { + $139 = ($133>>>0)<($107>>>0); + if ($139) { + _abort(); + // unreachable; + } + $140 = ((($133)) + 12|0); + $141 = HEAP32[$140>>2]|0; + $142 = ($141|0)==($0|0); + if (!($142)) { + _abort(); + // unreachable; + } + } + $143 = ($135|0)==($133|0); + if ($143) { + $144 = 1 << $130; + $145 = $144 ^ -1; + $146 = HEAP32[17795]|0; + $147 = $146 & $145; + HEAP32[17795] = $147; + break; + } + $148 = ($135|0)==($137|0); + if ($148) { + $$pre21 = ((($135)) + 8|0); + $$pre$phi22Z2D = $$pre21; + } else { + $149 = ($135>>>0)<($107>>>0); + if ($149) { + _abort(); + // unreachable; + } + $150 = ((($135)) + 8|0); + $151 = HEAP32[$150>>2]|0; + $152 = ($151|0)==($0|0); + if ($152) { + $$pre$phi22Z2D = $150; + } else { + _abort(); + // unreachable; + } + } + $153 = ((($133)) + 12|0); + HEAP32[$153>>2] = $135; + HEAP32[$$pre$phi22Z2D>>2] = $133; + } else { + $154 = ((($0)) + 24|0); + $155 = HEAP32[$154>>2]|0; + $156 = ((($0)) + 12|0); + $157 = HEAP32[$156>>2]|0; + $158 = ($157|0)==($0|0); + do { + if ($158) { + $168 = ((($0)) + 16|0); + $169 = ((($168)) + 4|0); + $170 = HEAP32[$169>>2]|0; + $171 = ($170|0)==(0|0); + if ($171) { + $172 = HEAP32[$168>>2]|0; + $173 = ($172|0)==(0|0); + if ($173) { + $R7$3 = 0; + break; + } else { + $R7$1 = $172;$RP9$1 = $168; + } + } else { + $R7$1 = $170;$RP9$1 = $169; + } + while(1) { + $174 = ((($R7$1)) + 20|0); + $175 = HEAP32[$174>>2]|0; + $176 = ($175|0)==(0|0); + if (!($176)) { + $R7$1 = $175;$RP9$1 = $174; + continue; + } + $177 = ((($R7$1)) + 16|0); + $178 = HEAP32[$177>>2]|0; + $179 = ($178|0)==(0|0); + if ($179) { + $R7$1$lcssa = $R7$1;$RP9$1$lcssa = $RP9$1; + break; + } else { + $R7$1 = $178;$RP9$1 = $177; + } + } + $180 = ($RP9$1$lcssa>>>0)<($107>>>0); + if ($180) { + _abort(); + // unreachable; + } else { + HEAP32[$RP9$1$lcssa>>2] = 0; + $R7$3 = $R7$1$lcssa; + break; + } + } else { + $159 = ((($0)) + 8|0); + $160 = HEAP32[$159>>2]|0; + $161 = ($160>>>0)<($107>>>0); + if ($161) { + _abort(); + // unreachable; + } + $162 = ((($160)) + 12|0); + $163 = HEAP32[$162>>2]|0; + $164 = ($163|0)==($0|0); + if (!($164)) { + _abort(); + // unreachable; + } + $165 = ((($157)) + 8|0); + $166 = HEAP32[$165>>2]|0; + $167 = ($166|0)==($0|0); + if ($167) { + HEAP32[$162>>2] = $157; + HEAP32[$165>>2] = $160; + $R7$3 = $157; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $181 = ($155|0)==(0|0); + if (!($181)) { + $182 = ((($0)) + 28|0); + $183 = HEAP32[$182>>2]|0; + $184 = (71484 + ($183<<2)|0); + $185 = HEAP32[$184>>2]|0; + $186 = ($0|0)==($185|0); + if ($186) { + HEAP32[$184>>2] = $R7$3; + $cond16 = ($R7$3|0)==(0|0); + if ($cond16) { + $187 = 1 << $183; + $188 = $187 ^ -1; + $189 = HEAP32[(71184)>>2]|0; + $190 = $189 & $188; + HEAP32[(71184)>>2] = $190; + break; + } + } else { + $191 = HEAP32[(71196)>>2]|0; + $192 = ($155>>>0)<($191>>>0); + if ($192) { + _abort(); + // unreachable; + } + $193 = ((($155)) + 16|0); + $194 = HEAP32[$193>>2]|0; + $195 = ($194|0)==($0|0); + if ($195) { + HEAP32[$193>>2] = $R7$3; + } else { + $196 = ((($155)) + 20|0); + HEAP32[$196>>2] = $R7$3; + } + $197 = ($R7$3|0)==(0|0); + if ($197) { + break; + } + } + $198 = HEAP32[(71196)>>2]|0; + $199 = ($R7$3>>>0)<($198>>>0); + if ($199) { + _abort(); + // unreachable; + } + $200 = ((($R7$3)) + 24|0); + HEAP32[$200>>2] = $155; + $201 = ((($0)) + 16|0); + $202 = HEAP32[$201>>2]|0; + $203 = ($202|0)==(0|0); + do { + if (!($203)) { + $204 = ($202>>>0)<($198>>>0); + if ($204) { + _abort(); + // unreachable; + } else { + $205 = ((($R7$3)) + 16|0); + HEAP32[$205>>2] = $202; + $206 = ((($202)) + 24|0); + HEAP32[$206>>2] = $R7$3; + break; + } + } + } while(0); + $207 = ((($201)) + 4|0); + $208 = HEAP32[$207>>2]|0; + $209 = ($208|0)==(0|0); + if (!($209)) { + $210 = HEAP32[(71196)>>2]|0; + $211 = ($208>>>0)<($210>>>0); + if ($211) { + _abort(); + // unreachable; + } else { + $212 = ((($R7$3)) + 20|0); + HEAP32[$212>>2] = $208; + $213 = ((($208)) + 24|0); + HEAP32[$213>>2] = $R7$3; + break; + } + } + } + } + } while(0); + $214 = $129 | 1; + $215 = ((($$1)) + 4|0); + HEAP32[$215>>2] = $214; + $216 = (($$1) + ($129)|0); + HEAP32[$216>>2] = $129; + $217 = HEAP32[(71200)>>2]|0; + $218 = ($$1|0)==($217|0); + if ($218) { + HEAP32[(71188)>>2] = $129; + return; + } else { + $$2 = $129; + } + } else { + $219 = $110 & -2; + HEAP32[$109>>2] = $219; + $220 = $$14 | 1; + $221 = ((($$1)) + 4|0); + HEAP32[$221>>2] = $220; + $222 = (($$1) + ($$14)|0); + HEAP32[$222>>2] = $$14; + $$2 = $$14; + } + $223 = $$2 >>> 3; + $224 = ($$2>>>0)<(256); + if ($224) { + $225 = $223 << 1; + $226 = (71220 + ($225<<2)|0); + $227 = HEAP32[17795]|0; + $228 = 1 << $223; + $229 = $227 & $228; + $230 = ($229|0)==(0); + if ($230) { + $231 = $227 | $228; + HEAP32[17795] = $231; + $$pre = ((($226)) + 8|0); + $$pre$phiZ2D = $$pre;$F17$0 = $226; + } else { + $232 = ((($226)) + 8|0); + $233 = HEAP32[$232>>2]|0; + $234 = HEAP32[(71196)>>2]|0; + $235 = ($233>>>0)<($234>>>0); + if ($235) { + _abort(); + // unreachable; + } else { + $$pre$phiZ2D = $232;$F17$0 = $233; + } + } + HEAP32[$$pre$phiZ2D>>2] = $$1; + $236 = ((($F17$0)) + 12|0); + HEAP32[$236>>2] = $$1; + $237 = ((($$1)) + 8|0); + HEAP32[$237>>2] = $F17$0; + $238 = ((($$1)) + 12|0); + HEAP32[$238>>2] = $226; + return; + } + $239 = $$2 >>> 8; + $240 = ($239|0)==(0); + if ($240) { + $I20$0 = 0; + } else { + $241 = ($$2>>>0)>(16777215); + if ($241) { + $I20$0 = 31; + } else { + $242 = (($239) + 1048320)|0; + $243 = $242 >>> 16; + $244 = $243 & 8; + $245 = $239 << $244; + $246 = (($245) + 520192)|0; + $247 = $246 >>> 16; + $248 = $247 & 4; + $249 = $248 | $244; + $250 = $245 << $248; + $251 = (($250) + 245760)|0; + $252 = $251 >>> 16; + $253 = $252 & 2; + $254 = $249 | $253; + $255 = (14 - ($254))|0; + $256 = $250 << $253; + $257 = $256 >>> 15; + $258 = (($255) + ($257))|0; + $259 = $258 << 1; + $260 = (($258) + 7)|0; + $261 = $$2 >>> $260; + $262 = $261 & 1; + $263 = $262 | $259; + $I20$0 = $263; + } + } + $264 = (71484 + ($I20$0<<2)|0); + $265 = ((($$1)) + 28|0); + HEAP32[$265>>2] = $I20$0; + $266 = ((($$1)) + 16|0); + $267 = ((($$1)) + 20|0); + HEAP32[$267>>2] = 0; + HEAP32[$266>>2] = 0; + $268 = HEAP32[(71184)>>2]|0; + $269 = 1 << $I20$0; + $270 = $268 & $269; + $271 = ($270|0)==(0); + if ($271) { + $272 = $268 | $269; + HEAP32[(71184)>>2] = $272; + HEAP32[$264>>2] = $$1; + $273 = ((($$1)) + 24|0); + HEAP32[$273>>2] = $264; + $274 = ((($$1)) + 12|0); + HEAP32[$274>>2] = $$1; + $275 = ((($$1)) + 8|0); + HEAP32[$275>>2] = $$1; + return; + } + $276 = HEAP32[$264>>2]|0; + $277 = ($I20$0|0)==(31); + $278 = $I20$0 >>> 1; + $279 = (25 - ($278))|0; + $280 = $277 ? 0 : $279; + $281 = $$2 << $280; + $K21$0 = $281;$T$0 = $276; + while(1) { + $282 = ((($T$0)) + 4|0); + $283 = HEAP32[$282>>2]|0; + $284 = $283 & -8; + $285 = ($284|0)==($$2|0); + if ($285) { + $T$0$lcssa = $T$0; + label = 127; + break; + } + $286 = $K21$0 >>> 31; + $287 = (((($T$0)) + 16|0) + ($286<<2)|0); + $288 = $K21$0 << 1; + $289 = HEAP32[$287>>2]|0; + $290 = ($289|0)==(0|0); + if ($290) { + $$lcssa = $287;$T$0$lcssa30 = $T$0; + label = 124; + break; + } else { + $K21$0 = $288;$T$0 = $289; + } + } + if ((label|0) == 124) { + $291 = HEAP32[(71196)>>2]|0; + $292 = ($$lcssa>>>0)<($291>>>0); + if ($292) { + _abort(); + // unreachable; + } + HEAP32[$$lcssa>>2] = $$1; + $293 = ((($$1)) + 24|0); + HEAP32[$293>>2] = $T$0$lcssa30; + $294 = ((($$1)) + 12|0); + HEAP32[$294>>2] = $$1; + $295 = ((($$1)) + 8|0); + HEAP32[$295>>2] = $$1; + return; + } + else if ((label|0) == 127) { + $296 = ((($T$0$lcssa)) + 8|0); + $297 = HEAP32[$296>>2]|0; + $298 = HEAP32[(71196)>>2]|0; + $299 = ($297>>>0)>=($298>>>0); + $not$ = ($T$0$lcssa>>>0)>=($298>>>0); + $300 = $299 & $not$; + if (!($300)) { + _abort(); + // unreachable; + } + $301 = ((($297)) + 12|0); + HEAP32[$301>>2] = $$1; + HEAP32[$296>>2] = $$1; + $302 = ((($$1)) + 8|0); + HEAP32[$302>>2] = $297; + $303 = ((($$1)) + 12|0); + HEAP32[$303>>2] = $T$0$lcssa; + $304 = ((($$1)) + 24|0); + HEAP32[$304>>2] = 0; + return; + } +} +function runPostSets() { +} +function _i64Subtract(a, b, c, d) { + a = a|0; b = b|0; c = c|0; d = d|0; + var l = 0, h = 0; + l = (a - c)>>>0; + h = (b - d)>>>0; + h = (b - d - (((c>>>0) > (a>>>0))|0))>>>0; // Borrow one from high word to low word on underflow. + return ((tempRet0 = h,l|0)|0); +} +function _i64Add(a, b, c, d) { + /* + x = a + b*2^32 + y = c + d*2^32 + result = l + h*2^32 + */ + a = a|0; b = b|0; c = c|0; d = d|0; + var l = 0, h = 0; + l = (a + c)>>>0; + h = (b + d + (((l>>>0) < (a>>>0))|0))>>>0; // Add carry from low word to high word on overflow. + return ((tempRet0 = h,l|0)|0); +} +function _bitshift64Ashr(low, high, bits) { + low = low|0; high = high|0; bits = bits|0; + var ander = 0; + if ((bits|0) < 32) { + ander = ((1 << bits) - 1)|0; + tempRet0 = high >> bits; + return (low >>> bits) | ((high&ander) << (32 - bits)); + } + tempRet0 = (high|0) < 0 ? -1 : 0; + return (high >> (bits - 32))|0; +} +function _bitshift64Lshr(low, high, bits) { + low = low|0; high = high|0; bits = bits|0; + var ander = 0; + if ((bits|0) < 32) { + ander = ((1 << bits) - 1)|0; + tempRet0 = high >>> bits; + return (low >>> bits) | ((high&ander) << (32 - bits)); + } + tempRet0 = 0; + return (high >>> (bits - 32))|0; +} +function _memcpy(dest, src, num) { + dest = dest|0; src = src|0; num = num|0; + var ret = 0; + if ((num|0) >= 4096) return _emscripten_memcpy_big(dest|0, src|0, num|0)|0; + ret = dest|0; + if ((dest&3) == (src&3)) { + while (dest & 3) { + if ((num|0) == 0) return ret|0; + HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); + dest = (dest+1)|0; + src = (src+1)|0; + num = (num-1)|0; + } + while ((num|0) >= 4) { + HEAP32[((dest)>>2)]=((HEAP32[((src)>>2)])|0); + dest = (dest+4)|0; + src = (src+4)|0; + num = (num-4)|0; + } + } + while ((num|0) > 0) { + HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); + dest = (dest+1)|0; + src = (src+1)|0; + num = (num-1)|0; + } + return ret|0; +} +function _memmove(dest, src, num) { + dest = dest|0; src = src|0; num = num|0; + var ret = 0; + if (((src|0) < (dest|0)) & ((dest|0) < ((src + num)|0))) { + // Unlikely case: Copy backwards in a safe manner + ret = dest; + src = (src + num)|0; + dest = (dest + num)|0; + while ((num|0) > 0) { + dest = (dest - 1)|0; + src = (src - 1)|0; + num = (num - 1)|0; + HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); + } + dest = ret; + } else { + _memcpy(dest, src, num) | 0; + } + return dest | 0; +} +function _memset(ptr, value, num) { + ptr = ptr|0; value = value|0; num = num|0; + var stop = 0, value4 = 0, stop4 = 0, unaligned = 0; + stop = (ptr + num)|0; + if ((num|0) >= 20) { + // This is unaligned, but quite large, so work hard to get to aligned settings + value = value & 0xff; + unaligned = ptr & 3; + value4 = value | (value << 8) | (value << 16) | (value << 24); + stop4 = stop & ~3; + if (unaligned) { + unaligned = (ptr + 4 - unaligned)|0; + while ((ptr|0) < (unaligned|0)) { // no need to check for stop, since we have large num + HEAP8[((ptr)>>0)]=value; + ptr = (ptr+1)|0; + } + } + while ((ptr|0) < (stop4|0)) { + HEAP32[((ptr)>>2)]=value4; + ptr = (ptr+4)|0; + } + } + while ((ptr|0) < (stop|0)) { + HEAP8[((ptr)>>0)]=value; + ptr = (ptr+1)|0; + } + return (ptr-num)|0; +} +function _llvm_cttz_i32(x) { + x = x|0; + var ret = 0; + ret = ((HEAP8[(((cttz_i8)+(x & 0xff))>>0)])|0); + if ((ret|0) < 8) return ret|0; + ret = ((HEAP8[(((cttz_i8)+((x >> 8)&0xff))>>0)])|0); + if ((ret|0) < 8) return (ret + 8)|0; + ret = ((HEAP8[(((cttz_i8)+((x >> 16)&0xff))>>0)])|0); + if ((ret|0) < 8) return (ret + 16)|0; + return (((HEAP8[(((cttz_i8)+(x >>> 24))>>0)])|0) + 24)|0; +} +function _llvm_bswap_i32(x) { + x = x|0; + return (((x&0xff)<<24) | (((x>>8)&0xff)<<16) | (((x>>16)&0xff)<<8) | (x>>>24))|0; +} +function _bitshift64Shl(low, high, bits) { + low = low|0; high = high|0; bits = bits|0; + var ander = 0; + if ((bits|0) < 32) { + ander = ((1 << bits) - 1)|0; + tempRet0 = (high << bits) | ((low&(ander << (32 - bits))) >>> (32 - bits)); + return low << bits; + } + tempRet0 = low << (bits - 32); + return 0; +} +// ======== compiled code from system/lib/compiler-rt , see readme therein +function ___muldsi3($a, $b) { + $a = $a | 0; + $b = $b | 0; + var $1 = 0, $2 = 0, $3 = 0, $6 = 0, $8 = 0, $11 = 0, $12 = 0; + $1 = $a & 65535; + $2 = $b & 65535; + $3 = Math_imul($2, $1) | 0; + $6 = $a >>> 16; + $8 = ($3 >>> 16) + (Math_imul($2, $6) | 0) | 0; + $11 = $b >>> 16; + $12 = Math_imul($11, $1) | 0; + return (tempRet0 = (($8 >>> 16) + (Math_imul($11, $6) | 0) | 0) + ((($8 & 65535) + $12 | 0) >>> 16) | 0, 0 | ($8 + $12 << 16 | $3 & 65535)) | 0; +} +function ___divdi3($a$0, $a$1, $b$0, $b$1) { + $a$0 = $a$0 | 0; + $a$1 = $a$1 | 0; + $b$0 = $b$0 | 0; + $b$1 = $b$1 | 0; + var $1$0 = 0, $1$1 = 0, $2$0 = 0, $2$1 = 0, $4$0 = 0, $4$1 = 0, $6$0 = 0, $7$0 = 0, $7$1 = 0, $8$0 = 0, $10$0 = 0; + $1$0 = $a$1 >> 31 | (($a$1 | 0) < 0 ? -1 : 0) << 1; + $1$1 = (($a$1 | 0) < 0 ? -1 : 0) >> 31 | (($a$1 | 0) < 0 ? -1 : 0) << 1; + $2$0 = $b$1 >> 31 | (($b$1 | 0) < 0 ? -1 : 0) << 1; + $2$1 = (($b$1 | 0) < 0 ? -1 : 0) >> 31 | (($b$1 | 0) < 0 ? -1 : 0) << 1; + $4$0 = _i64Subtract($1$0 ^ $a$0 | 0, $1$1 ^ $a$1 | 0, $1$0 | 0, $1$1 | 0) | 0; + $4$1 = tempRet0; + $6$0 = _i64Subtract($2$0 ^ $b$0 | 0, $2$1 ^ $b$1 | 0, $2$0 | 0, $2$1 | 0) | 0; + $7$0 = $2$0 ^ $1$0; + $7$1 = $2$1 ^ $1$1; + $8$0 = ___udivmoddi4($4$0, $4$1, $6$0, tempRet0, 0) | 0; + $10$0 = _i64Subtract($8$0 ^ $7$0 | 0, tempRet0 ^ $7$1 | 0, $7$0 | 0, $7$1 | 0) | 0; + return $10$0 | 0; +} +function ___remdi3($a$0, $a$1, $b$0, $b$1) { + $a$0 = $a$0 | 0; + $a$1 = $a$1 | 0; + $b$0 = $b$0 | 0; + $b$1 = $b$1 | 0; + var $rem = 0, $1$0 = 0, $1$1 = 0, $2$0 = 0, $2$1 = 0, $4$0 = 0, $4$1 = 0, $6$0 = 0, $10$0 = 0, $10$1 = 0, __stackBase__ = 0; + __stackBase__ = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + $rem = __stackBase__ | 0; + $1$0 = $a$1 >> 31 | (($a$1 | 0) < 0 ? -1 : 0) << 1; + $1$1 = (($a$1 | 0) < 0 ? -1 : 0) >> 31 | (($a$1 | 0) < 0 ? -1 : 0) << 1; + $2$0 = $b$1 >> 31 | (($b$1 | 0) < 0 ? -1 : 0) << 1; + $2$1 = (($b$1 | 0) < 0 ? -1 : 0) >> 31 | (($b$1 | 0) < 0 ? -1 : 0) << 1; + $4$0 = _i64Subtract($1$0 ^ $a$0 | 0, $1$1 ^ $a$1 | 0, $1$0 | 0, $1$1 | 0) | 0; + $4$1 = tempRet0; + $6$0 = _i64Subtract($2$0 ^ $b$0 | 0, $2$1 ^ $b$1 | 0, $2$0 | 0, $2$1 | 0) | 0; + ___udivmoddi4($4$0, $4$1, $6$0, tempRet0, $rem) | 0; + $10$0 = _i64Subtract(HEAP32[$rem >> 2] ^ $1$0 | 0, HEAP32[$rem + 4 >> 2] ^ $1$1 | 0, $1$0 | 0, $1$1 | 0) | 0; + $10$1 = tempRet0; + STACKTOP = __stackBase__; + return (tempRet0 = $10$1, $10$0) | 0; +} +function ___muldi3($a$0, $a$1, $b$0, $b$1) { + $a$0 = $a$0 | 0; + $a$1 = $a$1 | 0; + $b$0 = $b$0 | 0; + $b$1 = $b$1 | 0; + var $x_sroa_0_0_extract_trunc = 0, $y_sroa_0_0_extract_trunc = 0, $1$0 = 0, $1$1 = 0, $2 = 0; + $x_sroa_0_0_extract_trunc = $a$0; + $y_sroa_0_0_extract_trunc = $b$0; + $1$0 = ___muldsi3($x_sroa_0_0_extract_trunc, $y_sroa_0_0_extract_trunc) | 0; + $1$1 = tempRet0; + $2 = Math_imul($a$1, $y_sroa_0_0_extract_trunc) | 0; + return (tempRet0 = ((Math_imul($b$1, $x_sroa_0_0_extract_trunc) | 0) + $2 | 0) + $1$1 | $1$1 & 0, 0 | $1$0 & -1) | 0; +} +function ___udivdi3($a$0, $a$1, $b$0, $b$1) { + $a$0 = $a$0 | 0; + $a$1 = $a$1 | 0; + $b$0 = $b$0 | 0; + $b$1 = $b$1 | 0; + var $1$0 = 0; + $1$0 = ___udivmoddi4($a$0, $a$1, $b$0, $b$1, 0) | 0; + return $1$0 | 0; +} +function ___uremdi3($a$0, $a$1, $b$0, $b$1) { + $a$0 = $a$0 | 0; + $a$1 = $a$1 | 0; + $b$0 = $b$0 | 0; + $b$1 = $b$1 | 0; + var $rem = 0, __stackBase__ = 0; + __stackBase__ = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + $rem = __stackBase__ | 0; + ___udivmoddi4($a$0, $a$1, $b$0, $b$1, $rem) | 0; + STACKTOP = __stackBase__; + return (tempRet0 = HEAP32[$rem + 4 >> 2] | 0, HEAP32[$rem >> 2] | 0) | 0; +} +function ___udivmoddi4($a$0, $a$1, $b$0, $b$1, $rem) { + $a$0 = $a$0 | 0; + $a$1 = $a$1 | 0; + $b$0 = $b$0 | 0; + $b$1 = $b$1 | 0; + $rem = $rem | 0; + var $n_sroa_0_0_extract_trunc = 0, $n_sroa_1_4_extract_shift$0 = 0, $n_sroa_1_4_extract_trunc = 0, $d_sroa_0_0_extract_trunc = 0, $d_sroa_1_4_extract_shift$0 = 0, $d_sroa_1_4_extract_trunc = 0, $4 = 0, $17 = 0, $37 = 0, $49 = 0, $51 = 0, $57 = 0, $58 = 0, $66 = 0, $78 = 0, $86 = 0, $88 = 0, $89 = 0, $91 = 0, $92 = 0, $95 = 0, $105 = 0, $117 = 0, $119 = 0, $125 = 0, $126 = 0, $130 = 0, $q_sroa_1_1_ph = 0, $q_sroa_0_1_ph = 0, $r_sroa_1_1_ph = 0, $r_sroa_0_1_ph = 0, $sr_1_ph = 0, $d_sroa_0_0_insert_insert99$0 = 0, $d_sroa_0_0_insert_insert99$1 = 0, $137$0 = 0, $137$1 = 0, $carry_0203 = 0, $sr_1202 = 0, $r_sroa_0_1201 = 0, $r_sroa_1_1200 = 0, $q_sroa_0_1199 = 0, $q_sroa_1_1198 = 0, $147 = 0, $149 = 0, $r_sroa_0_0_insert_insert42$0 = 0, $r_sroa_0_0_insert_insert42$1 = 0, $150$1 = 0, $151$0 = 0, $152 = 0, $154$0 = 0, $r_sroa_0_0_extract_trunc = 0, $r_sroa_1_4_extract_trunc = 0, $155 = 0, $carry_0_lcssa$0 = 0, $carry_0_lcssa$1 = 0, $r_sroa_0_1_lcssa = 0, $r_sroa_1_1_lcssa = 0, $q_sroa_0_1_lcssa = 0, $q_sroa_1_1_lcssa = 0, $q_sroa_0_0_insert_ext75$0 = 0, $q_sroa_0_0_insert_ext75$1 = 0, $q_sroa_0_0_insert_insert77$1 = 0, $_0$0 = 0, $_0$1 = 0; + $n_sroa_0_0_extract_trunc = $a$0; + $n_sroa_1_4_extract_shift$0 = $a$1; + $n_sroa_1_4_extract_trunc = $n_sroa_1_4_extract_shift$0; + $d_sroa_0_0_extract_trunc = $b$0; + $d_sroa_1_4_extract_shift$0 = $b$1; + $d_sroa_1_4_extract_trunc = $d_sroa_1_4_extract_shift$0; + if (($n_sroa_1_4_extract_trunc | 0) == 0) { + $4 = ($rem | 0) != 0; + if (($d_sroa_1_4_extract_trunc | 0) == 0) { + if ($4) { + HEAP32[$rem >> 2] = ($n_sroa_0_0_extract_trunc >>> 0) % ($d_sroa_0_0_extract_trunc >>> 0); + HEAP32[$rem + 4 >> 2] = 0; + } + $_0$1 = 0; + $_0$0 = ($n_sroa_0_0_extract_trunc >>> 0) / ($d_sroa_0_0_extract_trunc >>> 0) >>> 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } else { + if (!$4) { + $_0$1 = 0; + $_0$0 = 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } + HEAP32[$rem >> 2] = $a$0 & -1; + HEAP32[$rem + 4 >> 2] = $a$1 & 0; + $_0$1 = 0; + $_0$0 = 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } + } + $17 = ($d_sroa_1_4_extract_trunc | 0) == 0; + do { + if (($d_sroa_0_0_extract_trunc | 0) == 0) { + if ($17) { + if (($rem | 0) != 0) { + HEAP32[$rem >> 2] = ($n_sroa_1_4_extract_trunc >>> 0) % ($d_sroa_0_0_extract_trunc >>> 0); + HEAP32[$rem + 4 >> 2] = 0; + } + $_0$1 = 0; + $_0$0 = ($n_sroa_1_4_extract_trunc >>> 0) / ($d_sroa_0_0_extract_trunc >>> 0) >>> 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } + if (($n_sroa_0_0_extract_trunc | 0) == 0) { + if (($rem | 0) != 0) { + HEAP32[$rem >> 2] = 0; + HEAP32[$rem + 4 >> 2] = ($n_sroa_1_4_extract_trunc >>> 0) % ($d_sroa_1_4_extract_trunc >>> 0); + } + $_0$1 = 0; + $_0$0 = ($n_sroa_1_4_extract_trunc >>> 0) / ($d_sroa_1_4_extract_trunc >>> 0) >>> 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } + $37 = $d_sroa_1_4_extract_trunc - 1 | 0; + if (($37 & $d_sroa_1_4_extract_trunc | 0) == 0) { + if (($rem | 0) != 0) { + HEAP32[$rem >> 2] = 0 | $a$0 & -1; + HEAP32[$rem + 4 >> 2] = $37 & $n_sroa_1_4_extract_trunc | $a$1 & 0; + } + $_0$1 = 0; + $_0$0 = $n_sroa_1_4_extract_trunc >>> ((_llvm_cttz_i32($d_sroa_1_4_extract_trunc | 0) | 0) >>> 0); + return (tempRet0 = $_0$1, $_0$0) | 0; + } + $49 = Math_clz32($d_sroa_1_4_extract_trunc | 0) | 0; + $51 = $49 - (Math_clz32($n_sroa_1_4_extract_trunc | 0) | 0) | 0; + if ($51 >>> 0 <= 30) { + $57 = $51 + 1 | 0; + $58 = 31 - $51 | 0; + $sr_1_ph = $57; + $r_sroa_0_1_ph = $n_sroa_1_4_extract_trunc << $58 | $n_sroa_0_0_extract_trunc >>> ($57 >>> 0); + $r_sroa_1_1_ph = $n_sroa_1_4_extract_trunc >>> ($57 >>> 0); + $q_sroa_0_1_ph = 0; + $q_sroa_1_1_ph = $n_sroa_0_0_extract_trunc << $58; + break; + } + if (($rem | 0) == 0) { + $_0$1 = 0; + $_0$0 = 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } + HEAP32[$rem >> 2] = 0 | $a$0 & -1; + HEAP32[$rem + 4 >> 2] = $n_sroa_1_4_extract_shift$0 | $a$1 & 0; + $_0$1 = 0; + $_0$0 = 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } else { + if (!$17) { + $117 = Math_clz32($d_sroa_1_4_extract_trunc | 0) | 0; + $119 = $117 - (Math_clz32($n_sroa_1_4_extract_trunc | 0) | 0) | 0; + if ($119 >>> 0 <= 31) { + $125 = $119 + 1 | 0; + $126 = 31 - $119 | 0; + $130 = $119 - 31 >> 31; + $sr_1_ph = $125; + $r_sroa_0_1_ph = $n_sroa_0_0_extract_trunc >>> ($125 >>> 0) & $130 | $n_sroa_1_4_extract_trunc << $126; + $r_sroa_1_1_ph = $n_sroa_1_4_extract_trunc >>> ($125 >>> 0) & $130; + $q_sroa_0_1_ph = 0; + $q_sroa_1_1_ph = $n_sroa_0_0_extract_trunc << $126; + break; + } + if (($rem | 0) == 0) { + $_0$1 = 0; + $_0$0 = 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } + HEAP32[$rem >> 2] = 0 | $a$0 & -1; + HEAP32[$rem + 4 >> 2] = $n_sroa_1_4_extract_shift$0 | $a$1 & 0; + $_0$1 = 0; + $_0$0 = 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } + $66 = $d_sroa_0_0_extract_trunc - 1 | 0; + if (($66 & $d_sroa_0_0_extract_trunc | 0) != 0) { + $86 = (Math_clz32($d_sroa_0_0_extract_trunc | 0) | 0) + 33 | 0; + $88 = $86 - (Math_clz32($n_sroa_1_4_extract_trunc | 0) | 0) | 0; + $89 = 64 - $88 | 0; + $91 = 32 - $88 | 0; + $92 = $91 >> 31; + $95 = $88 - 32 | 0; + $105 = $95 >> 31; + $sr_1_ph = $88; + $r_sroa_0_1_ph = $91 - 1 >> 31 & $n_sroa_1_4_extract_trunc >>> ($95 >>> 0) | ($n_sroa_1_4_extract_trunc << $91 | $n_sroa_0_0_extract_trunc >>> ($88 >>> 0)) & $105; + $r_sroa_1_1_ph = $105 & $n_sroa_1_4_extract_trunc >>> ($88 >>> 0); + $q_sroa_0_1_ph = $n_sroa_0_0_extract_trunc << $89 & $92; + $q_sroa_1_1_ph = ($n_sroa_1_4_extract_trunc << $89 | $n_sroa_0_0_extract_trunc >>> ($95 >>> 0)) & $92 | $n_sroa_0_0_extract_trunc << $91 & $88 - 33 >> 31; + break; + } + if (($rem | 0) != 0) { + HEAP32[$rem >> 2] = $66 & $n_sroa_0_0_extract_trunc; + HEAP32[$rem + 4 >> 2] = 0; + } + if (($d_sroa_0_0_extract_trunc | 0) == 1) { + $_0$1 = $n_sroa_1_4_extract_shift$0 | $a$1 & 0; + $_0$0 = 0 | $a$0 & -1; + return (tempRet0 = $_0$1, $_0$0) | 0; + } else { + $78 = _llvm_cttz_i32($d_sroa_0_0_extract_trunc | 0) | 0; + $_0$1 = 0 | $n_sroa_1_4_extract_trunc >>> ($78 >>> 0); + $_0$0 = $n_sroa_1_4_extract_trunc << 32 - $78 | $n_sroa_0_0_extract_trunc >>> ($78 >>> 0) | 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } + } + } while (0); + if (($sr_1_ph | 0) == 0) { + $q_sroa_1_1_lcssa = $q_sroa_1_1_ph; + $q_sroa_0_1_lcssa = $q_sroa_0_1_ph; + $r_sroa_1_1_lcssa = $r_sroa_1_1_ph; + $r_sroa_0_1_lcssa = $r_sroa_0_1_ph; + $carry_0_lcssa$1 = 0; + $carry_0_lcssa$0 = 0; + } else { + $d_sroa_0_0_insert_insert99$0 = 0 | $b$0 & -1; + $d_sroa_0_0_insert_insert99$1 = $d_sroa_1_4_extract_shift$0 | $b$1 & 0; + $137$0 = _i64Add($d_sroa_0_0_insert_insert99$0 | 0, $d_sroa_0_0_insert_insert99$1 | 0, -1, -1) | 0; + $137$1 = tempRet0; + $q_sroa_1_1198 = $q_sroa_1_1_ph; + $q_sroa_0_1199 = $q_sroa_0_1_ph; + $r_sroa_1_1200 = $r_sroa_1_1_ph; + $r_sroa_0_1201 = $r_sroa_0_1_ph; + $sr_1202 = $sr_1_ph; + $carry_0203 = 0; + while (1) { + $147 = $q_sroa_0_1199 >>> 31 | $q_sroa_1_1198 << 1; + $149 = $carry_0203 | $q_sroa_0_1199 << 1; + $r_sroa_0_0_insert_insert42$0 = 0 | ($r_sroa_0_1201 << 1 | $q_sroa_1_1198 >>> 31); + $r_sroa_0_0_insert_insert42$1 = $r_sroa_0_1201 >>> 31 | $r_sroa_1_1200 << 1 | 0; + _i64Subtract($137$0 | 0, $137$1 | 0, $r_sroa_0_0_insert_insert42$0 | 0, $r_sroa_0_0_insert_insert42$1 | 0) | 0; + $150$1 = tempRet0; + $151$0 = $150$1 >> 31 | (($150$1 | 0) < 0 ? -1 : 0) << 1; + $152 = $151$0 & 1; + $154$0 = _i64Subtract($r_sroa_0_0_insert_insert42$0 | 0, $r_sroa_0_0_insert_insert42$1 | 0, $151$0 & $d_sroa_0_0_insert_insert99$0 | 0, ((($150$1 | 0) < 0 ? -1 : 0) >> 31 | (($150$1 | 0) < 0 ? -1 : 0) << 1) & $d_sroa_0_0_insert_insert99$1 | 0) | 0; + $r_sroa_0_0_extract_trunc = $154$0; + $r_sroa_1_4_extract_trunc = tempRet0; + $155 = $sr_1202 - 1 | 0; + if (($155 | 0) == 0) { + break; + } else { + $q_sroa_1_1198 = $147; + $q_sroa_0_1199 = $149; + $r_sroa_1_1200 = $r_sroa_1_4_extract_trunc; + $r_sroa_0_1201 = $r_sroa_0_0_extract_trunc; + $sr_1202 = $155; + $carry_0203 = $152; + } + } + $q_sroa_1_1_lcssa = $147; + $q_sroa_0_1_lcssa = $149; + $r_sroa_1_1_lcssa = $r_sroa_1_4_extract_trunc; + $r_sroa_0_1_lcssa = $r_sroa_0_0_extract_trunc; + $carry_0_lcssa$1 = 0; + $carry_0_lcssa$0 = $152; + } + $q_sroa_0_0_insert_ext75$0 = $q_sroa_0_1_lcssa; + $q_sroa_0_0_insert_ext75$1 = 0; + $q_sroa_0_0_insert_insert77$1 = $q_sroa_1_1_lcssa | $q_sroa_0_0_insert_ext75$1; + if (($rem | 0) != 0) { + HEAP32[$rem >> 2] = 0 | $r_sroa_0_1_lcssa; + HEAP32[$rem + 4 >> 2] = $r_sroa_1_1_lcssa | 0; + } + $_0$1 = (0 | $q_sroa_0_0_insert_ext75$0) >>> 31 | $q_sroa_0_0_insert_insert77$1 << 1 | ($q_sroa_0_0_insert_ext75$1 << 1 | $q_sroa_0_0_insert_ext75$0 >>> 31) & 0 | $carry_0_lcssa$1; + $_0$0 = ($q_sroa_0_0_insert_ext75$0 << 1 | 0 >>> 31) & -2 | $carry_0_lcssa$0; + return (tempRet0 = $_0$1, $_0$0) | 0; +} +// ======================================================================= + + + + +function dynCall_iiii(index,a1,a2,a3) { + index = index|0; + a1=a1|0; a2=a2|0; a3=a3|0; + return FUNCTION_TABLE_iiii[index&127](a1|0,a2|0,a3|0)|0; +} + + +function dynCall_viiiii(index,a1,a2,a3,a4,a5) { + index = index|0; + a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; a5=a5|0; + FUNCTION_TABLE_viiiii[index&127](a1|0,a2|0,a3|0,a4|0,a5|0); +} + + +function dynCall_vi(index,a1) { + index = index|0; + a1=a1|0; + FUNCTION_TABLE_vi[index&127](a1|0); +} + + +function dynCall_vii(index,a1,a2) { + index = index|0; + a1=a1|0; a2=a2|0; + FUNCTION_TABLE_vii[index&63](a1|0,a2|0); +} + + +function dynCall_ii(index,a1) { + index = index|0; + a1=a1|0; + return FUNCTION_TABLE_ii[index&63](a1|0)|0; +} + + +function dynCall_viii(index,a1,a2,a3) { + index = index|0; + a1=a1|0; a2=a2|0; a3=a3|0; + FUNCTION_TABLE_viii[index&127](a1|0,a2|0,a3|0); +} + + +function dynCall_v(index) { + index = index|0; + + FUNCTION_TABLE_v[index&127](); +} + + +function dynCall_iiiii(index,a1,a2,a3,a4) { + index = index|0; + a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; + return FUNCTION_TABLE_iiiii[index&127](a1|0,a2|0,a3|0,a4|0)|0; +} + + +function dynCall_viiiiii(index,a1,a2,a3,a4,a5,a6) { + index = index|0; + a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; a5=a5|0; a6=a6|0; + FUNCTION_TABLE_viiiiii[index&63](a1|0,a2|0,a3|0,a4|0,a5|0,a6|0); +} + + +function dynCall_iii(index,a1,a2) { + index = index|0; + a1=a1|0; a2=a2|0; + return FUNCTION_TABLE_iii[index&127](a1|0,a2|0)|0; +} + + +function dynCall_viiii(index,a1,a2,a3,a4) { + index = index|0; + a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; + FUNCTION_TABLE_viiii[index&63](a1|0,a2|0,a3|0,a4|0); +} + +function b0(p0,p1,p2) { + p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(0);return 0; +} +function b1(p0,p1,p2,p3,p4) { + p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(1); +} +function b2(p0) { + p0 = p0|0; nullFunc_vi(2); +} +function b3(p0,p1) { + p0 = p0|0;p1 = p1|0; nullFunc_vii(3); +} +function b4(p0) { + p0 = p0|0; nullFunc_ii(4);return 0; +} +function b5(p0,p1,p2) { + p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_viii(5); +} +function b6() { + ; nullFunc_v(6); +} +function b7(p0,p1,p2,p3) { + p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_iiiii(7);return 0; +} +function b8(p0,p1,p2,p3,p4,p5) { + p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; nullFunc_viiiiii(8); +} +function b9(p0,p1) { + p0 = p0|0;p1 = p1|0; nullFunc_iii(9);return 0; +} +function b10(p0,p1,p2,p3) { + p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(10); +} + +// EMSCRIPTEN_END_FUNCS +var FUNCTION_TABLE_iiii = [b0,_rijndael_setkey,_rijndael_encrypt,_rijndael_decrypt,_run_selftests_1176,b0,b0,b0,b0,b0,b0,_rsa_encrypt,_rsa_decrypt,_rsa_sign,_rsa_verify,b0,_run_selftests_1333,b0,b0,b0,b0,_run_selftests_1372,b0,b0,b0,_run_selftests_1395,b0,b0,b0 +,b0,_run_selftests_1425,b0,_twofish_setkey,_twofish_encrypt,_twofish_decrypt,b0,b0,_ecc_encrypt_raw,_ecc_decrypt_raw,_ecc_sign,_ecc_verify,b0,_run_selftests_2065,b0,__gcry_ecc_get_curve,b0,b0,_poly1305_blocks_ref32,b0,b0,___stdout_write,___stdio_seek,___stdio_write,_sn_write,__gcry_log_info_with_dummy_fp,_fprintf,b0,b0,b0 +,b0,b0,b0,b0,b0,b0,b0,b0,b0,_do_encrypt,_do_decrypt,b0,b0,_transform,b0,_transform_1369,_transform_1391,_transform_1420,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,___stdio_read,b0 +,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0 +,b0,b0,b0,b0,b0,b0,b0,b0,b0]; +var FUNCTION_TABLE_viiiii = [b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1 +,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,__gcry_aes_cfb_enc,__gcry_aes_cfb_dec +,b1,__gcry_aes_cbc_dec,__gcry_aes_ctr_enc,__gcry_aes_ocb_crypt,b1,__gcry_twofish_cbc_dec,__gcry_twofish_cfb_dec,__gcry_twofish_ctr_enc,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1 +,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1 +,b1,b1,b1,b1,b1,b1,b1,b1,b1]; +var FUNCTION_TABLE_vi = [b2,b2,b2,b2,b2,b2,b2,_rmd160_final,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,_sha1_final,b2,b2,b2,_sha256_final,b2,b2,b2,b2,_sha512_final +,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2 +,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,_ec_deinit,b2,b2,b2,b2,b2,b2,b2,_cleanup_92,_cleanup_115,b2,_do_setxid +,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2 +,b2,b2,b2,b2,b2,b2,b2,b2,b2]; +var FUNCTION_TABLE_vii = [b3,b3,b3,b3,b3,_rmd160_init,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,_sha1_init,b3,b3,b3,_sha224_init,b3,b3,b3,_sha256_init,_sha512_init,b3 +,b3,b3,_sha384_init,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,_poly1305_init_ext_ref32,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3 +,b3,b3,b3,b3,b3]; +var FUNCTION_TABLE_ii = [b4,b4,b4,b4,b4,b4,b4,b4,_rmd160_read,b4,_rsa_check_secret_key,b4,b4,b4,b4,_rsa_get_nbits,b4,b4,b4,b4,_sha1_read,b4,b4,b4,_sha256_read,b4,b4,b4,b4 +,_sha512_read,b4,b4,b4,b4,b4,b4,_ecc_check_secret_key,b4,b4,b4,b4,_ecc_get_nbits,b4,b4,b4,__gcry_ecc_get_param_sexp,b4,b4,b4,___stdio_close,b4,b4,b4,b4,b4,b4,b4,b4,b4 +,b4,b4,b4,b4,b4]; +var FUNCTION_TABLE_viii = [b5,b5,b5,b5,b5,b5,__gcry_md_block_write,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5 +,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5 +,b5,b5,b5,b5,__gcry_aes_ocb_auth,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,_add_randomness,_entropy_collect_cb,_read_cb,b5,b5,b5,b5,b5 +,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5 +,b5,b5,b5,b5,b5,b5,b5,b5,b5]; +var FUNCTION_TABLE_v = [b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6 +,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6 +,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,_prefetch_enc,_prefetch_dec,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,_do_deinit,b6,b6,b6,b6 +,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6 +,b6,b6,b6,b6,b6,b6,b6,b6,b6]; +var FUNCTION_TABLE_iiiii = [b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7 +,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,_poly1305_finish_ext_ref32,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7 +,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,_ghash_internal,_gather_faked,__gcry_rndlinux_gather_random,b7,b7,b7,b7,b7,b7,b7,b7 +,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7 +,b7,b7,b7,b7,b7,b7,b7,b7,b7]; +var FUNCTION_TABLE_viiiiii = [b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8 +,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8 +,__gcry_aes_cbc_enc,b8,b8,b8,b8]; +var FUNCTION_TABLE_iii = [b9,b9,b9,b9,b9,b9,b9,b9,b9,_rsa_generate,b9,b9,b9,b9,b9,b9,b9,_compute_keygrip,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9 +,b9,b9,b9,b9,b9,b9,_ecc_generate,b9,b9,b9,b9,b9,b9,b9,_compute_keygrip_2068,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9 +,b9,b9,b9,b9,b9,b9,b9,b9,_pss_verify_cmp,b9,b9,b9,b9,b9,_check_exponent,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9 +,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9,b9 +,b9,b9,b9,b9,b9,b9,b9,b9,b9]; +var FUNCTION_TABLE_viiii = [b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10 +,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,_reporter,b10,b10 +,b10,b10,b10,b10,b10]; + + return { _WRALL_make_purpose: _WRALL_make_purpose, _GNUNET_CRYPTO_rsa_blinding_key_encode: _GNUNET_CRYPTO_rsa_blinding_key_encode, _bitshift64Lshr: _bitshift64Lshr, _bitshift64Ashr: _bitshift64Ashr, _GNUNET_CRYPTO_eddsa_key_create: _GNUNET_CRYPTO_eddsa_key_create, _memcpy: _memcpy, _TALER_WR_GNUNET_free: _TALER_WR_GNUNET_free, _TALER_WRALL_amount_add: _TALER_WRALL_amount_add, _GNUNET_CRYPTO_rsa_private_key_decode: _GNUNET_CRYPTO_rsa_private_key_decode, _TALER_WR_multiply_amount: _TALER_WR_multiply_amount, _GNUNET_CRYPTO_rsa_blinding_key_decode: _GNUNET_CRYPTO_rsa_blinding_key_decode, _GNUNET_CRYPTO_ecc_ecdh: _GNUNET_CRYPTO_ecc_ecdh, _TALER_amount_hton: _TALER_amount_hton, _TALER_WR_verify_sign_key_enc: _TALER_WR_verify_sign_key_enc, _free: _free, _TALER_WRALL_sign_deposit_permission: _TALER_WRALL_sign_deposit_permission, _TALER_WR_verify_denoms: _TALER_WR_verify_denoms, _GNUNET_CRYPTO_rsa_blinding_key_create: _GNUNET_CRYPTO_rsa_blinding_key_create, _TALER_WR_verify_sign_key: _TALER_WR_verify_sign_key, _TALER_WRALL_rsa_public_key_hash: _TALER_WRALL_rsa_public_key_hash, _TALER_WRALL_gen_key_from_blob: _TALER_WRALL_gen_key_from_blob, _GNUNET_CRYPTO_rsa_private_key_get_public: _GNUNET_CRYPTO_rsa_private_key_get_public, _GNUNET_CRYPTO_eddsa_verify: _GNUNET_CRYPTO_eddsa_verify, _TALER_WRALL_rsa_public_key_decode_from_string: _TALER_WRALL_rsa_public_key_decode_from_string, _GNUNET_CRYPTO_symmetric_encrypt: _GNUNET_CRYPTO_symmetric_encrypt, _TALER_WR_get_fraction: _TALER_WR_get_fraction, _TALER_WR_verify_denoms_enc: _TALER_WR_verify_denoms_enc, _TALER_amount_cmp: _TALER_amount_cmp, _TALER_WRALL_ecdhe_public_key_from_private_key: _TALER_WRALL_ecdhe_public_key_from_private_key, _llvm_cttz_i32: _llvm_cttz_i32, _TALER_WRALL_eddsa_private_key_from_string: _TALER_WRALL_eddsa_private_key_from_string, _TALER_WRALL_gen_init_vector: _TALER_WRALL_gen_init_vector, _TALER_amount_ntoh: _TALER_amount_ntoh, _WR_verify_test: _WR_verify_test, _GNUNET_CRYPTO_rsa_public_key_free: _GNUNET_CRYPTO_rsa_public_key_free, _GNUNET_CRYPTO_hkdf: _GNUNET_CRYPTO_hkdf, _GNUNET_CRYPTO_eddsa_key_get_public: _GNUNET_CRYPTO_eddsa_key_get_public, _llvm_bswap_i32: _llvm_bswap_i32, _GNUNET_CRYPTO_rsa_private_key_create: _GNUNET_CRYPTO_rsa_private_key_create, _GNUNET_STRINGS_data_to_string_alloc: _GNUNET_STRINGS_data_to_string_alloc, _TALER_WRALL_sign_test: _TALER_WRALL_sign_test, _TALER_WR_verify_confirmation: _TALER_WR_verify_confirmation, _GNUNET_CRYPTO_rsa_public_key_decode: _GNUNET_CRYPTO_rsa_public_key_decode, _GNUNET_CRYPTO_rsa_blinding_key_free: _GNUNET_CRYPTO_rsa_blinding_key_free, _GNUNET_CRYPTO_rsa_signature_encode: _GNUNET_CRYPTO_rsa_signature_encode, _GNUNET_CRYPTO_rsa_verify: _GNUNET_CRYPTO_rsa_verify, _TALER_WR_eddsa_verify: _TALER_WR_eddsa_verify, _GNUNET_STRINGS_string_to_data: _GNUNET_STRINGS_string_to_data, _TALER_WRALL_gen_symmetric_key: _TALER_WRALL_gen_symmetric_key, _TALER_WRALL_ecc_ecdh: _TALER_WRALL_ecc_ecdh, _memset: _memset, _GNUNET_CRYPTO_rsa_unblind: _GNUNET_CRYPTO_rsa_unblind, _TALER_WR_get_currency: _TALER_WR_get_currency, _DEBUG_WR_get_purpose: _DEBUG_WR_get_purpose, _TALER_WRALL_get_amount: _TALER_WRALL_get_amount, _GNUNET_CRYPTO_rsa_private_key_encode: _GNUNET_CRYPTO_rsa_private_key_encode, _GNUNET_CRYPTO_symmetric_decrypt: _GNUNET_CRYPTO_symmetric_decrypt, _i64Subtract: _i64Subtract, _TALER_WR_get_value: _TALER_WR_get_value, _GNUNET_CRYPTO_rsa_signature_free: _GNUNET_CRYPTO_rsa_signature_free, _TALER_WRALL_eddsa_public_key_from_priv_string: _TALER_WRALL_eddsa_public_key_from_priv_string, _GNUNET_CRYPTO_rsa_blind: _GNUNET_CRYPTO_rsa_blind, _TALER_WR_verify_denom_enc: _TALER_WR_verify_denom_enc, _malloc: _malloc, _TALER_WR_hello_world: _TALER_WR_hello_world, _TALER_WRALL_make_withdraw_bundle: _TALER_WRALL_make_withdraw_bundle, _GNUNET_CRYPTO_rsa_signature_decode: _GNUNET_CRYPTO_rsa_signature_decode, _GNUNET_CRYPTO_rsa_sign: _GNUNET_CRYPTO_rsa_sign, _GNUNET_CRYPTO_ecdhe_key_create: _GNUNET_CRYPTO_ecdhe_key_create, _TALER_WRALL_get_encoding_from_rsa_signature: _TALER_WRALL_get_encoding_from_rsa_signature, _TALER_WRALL_hash: _TALER_WRALL_hash, _TALER_amount_normalize: _TALER_amount_normalize, _TALER_WRALL_sign_contract: _TALER_WRALL_sign_contract, _bitshift64Shl: _bitshift64Shl, _GNUNET_CRYPTO_rsa_private_key_free: _GNUNET_CRYPTO_rsa_private_key_free, _fflush: _fflush, _GNUNET_CRYPTO_hash_create_random: _GNUNET_CRYPTO_hash_create_random, _TALER_WRALL_eddsa_public_key_from_private: _TALER_WRALL_eddsa_public_key_from_private, _TALER_WR_multiply_amounts: _TALER_WR_multiply_amounts, _TALER_amount_add: _TALER_amount_add, _GNUNET_CRYPTO_ecdhe_key_get_public: _GNUNET_CRYPTO_ecdhe_key_get_public, _TALER_amount_subtract: _TALER_amount_subtract, _i64Add: _i64Add, _TALER_WRALL_purpose_create: _TALER_WRALL_purpose_create, _GNUNET_CRYPTO_eddsa_sign: _GNUNET_CRYPTO_eddsa_sign, _TALER_WR_verify_denom: _TALER_WR_verify_denom, _TALER_WRALL_get_current_time: _TALER_WRALL_get_current_time, ___errno_location: ___errno_location, _TALER_WR_get_fancy_time: _TALER_WR_get_fancy_time, _TALER_WRALL_make_eddsa_signature: _TALER_WRALL_make_eddsa_signature, _memmove: _memmove, _TALER_amount_get_zero: _TALER_amount_get_zero, _DEBUG_WR_dump_amount: _DEBUG_WR_dump_amount, _GNUNET_CRYPTO_rsa_public_key_encode: _GNUNET_CRYPTO_rsa_public_key_encode, _GNUNET_CRYPTO_hash: _GNUNET_CRYPTO_hash, _GNUNET_util_cl_init: _GNUNET_util_cl_init, _GNUNET_CRYPTO_random_init: _GNUNET_CRYPTO_random_init, _gpg_err_init: _gpg_err_init, runPostSets: runPostSets, stackAlloc: stackAlloc, stackSave: stackSave, stackRestore: stackRestore, establishStackSpace: establishStackSpace, setThrew: setThrew, setTempRet0: setTempRet0, getTempRet0: getTempRet0, dynCall_iiii: dynCall_iiii, dynCall_viiiii: dynCall_viiiii, dynCall_vi: dynCall_vi, dynCall_vii: dynCall_vii, dynCall_ii: dynCall_ii, dynCall_viii: dynCall_viii, dynCall_v: dynCall_v, dynCall_iiiii: dynCall_iiiii, dynCall_viiiiii: dynCall_viiiiii, dynCall_iii: dynCall_iii, dynCall_viiii: dynCall_viiii }; +}) +// EMSCRIPTEN_END_ASM +(Module.asmGlobalArg, Module.asmLibraryArg, buffer); +var real__WRALL_make_purpose = asm["_WRALL_make_purpose"]; asm["_WRALL_make_purpose"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__WRALL_make_purpose.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_rsa_blinding_key_encode = asm["_GNUNET_CRYPTO_rsa_blinding_key_encode"]; asm["_GNUNET_CRYPTO_rsa_blinding_key_encode"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_rsa_blinding_key_encode.apply(null, arguments); +}; + +var real__bitshift64Lshr = asm["_bitshift64Lshr"]; asm["_bitshift64Lshr"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__bitshift64Lshr.apply(null, arguments); +}; + +var real__bitshift64Ashr = asm["_bitshift64Ashr"]; asm["_bitshift64Ashr"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__bitshift64Ashr.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_eddsa_key_create = asm["_GNUNET_CRYPTO_eddsa_key_create"]; asm["_GNUNET_CRYPTO_eddsa_key_create"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_eddsa_key_create.apply(null, arguments); +}; + +var real__TALER_WR_GNUNET_free = asm["_TALER_WR_GNUNET_free"]; asm["_TALER_WR_GNUNET_free"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WR_GNUNET_free.apply(null, arguments); +}; + +var real__TALER_WRALL_amount_add = asm["_TALER_WRALL_amount_add"]; asm["_TALER_WRALL_amount_add"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_amount_add.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_rsa_private_key_decode = asm["_GNUNET_CRYPTO_rsa_private_key_decode"]; asm["_GNUNET_CRYPTO_rsa_private_key_decode"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_rsa_private_key_decode.apply(null, arguments); +}; + +var real__TALER_WR_multiply_amount = asm["_TALER_WR_multiply_amount"]; asm["_TALER_WR_multiply_amount"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WR_multiply_amount.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_rsa_blinding_key_decode = asm["_GNUNET_CRYPTO_rsa_blinding_key_decode"]; asm["_GNUNET_CRYPTO_rsa_blinding_key_decode"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_rsa_blinding_key_decode.apply(null, arguments); +}; + +var real__TALER_WR_multiply_amounts = asm["_TALER_WR_multiply_amounts"]; asm["_TALER_WR_multiply_amounts"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WR_multiply_amounts.apply(null, arguments); +}; + +var real__TALER_amount_hton = asm["_TALER_amount_hton"]; asm["_TALER_amount_hton"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_amount_hton.apply(null, arguments); +}; + +var real__TALER_WRALL_eddsa_private_key_from_string = asm["_TALER_WRALL_eddsa_private_key_from_string"]; asm["_TALER_WRALL_eddsa_private_key_from_string"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_eddsa_private_key_from_string.apply(null, arguments); +}; + +var real__gpg_err_init = asm["_gpg_err_init"]; asm["_gpg_err_init"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__gpg_err_init.apply(null, arguments); +}; + +var real__free = asm["_free"]; asm["_free"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__free.apply(null, arguments); +}; + +var real__TALER_WRALL_sign_deposit_permission = asm["_TALER_WRALL_sign_deposit_permission"]; asm["_TALER_WRALL_sign_deposit_permission"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_sign_deposit_permission.apply(null, arguments); +}; + +var real__TALER_WR_verify_denoms = asm["_TALER_WR_verify_denoms"]; asm["_TALER_WR_verify_denoms"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WR_verify_denoms.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_rsa_blinding_key_create = asm["_GNUNET_CRYPTO_rsa_blinding_key_create"]; asm["_GNUNET_CRYPTO_rsa_blinding_key_create"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_rsa_blinding_key_create.apply(null, arguments); +}; + +var real__TALER_WR_verify_denom_enc = asm["_TALER_WR_verify_denom_enc"]; asm["_TALER_WR_verify_denom_enc"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WR_verify_denom_enc.apply(null, arguments); +}; + +var real__TALER_WRALL_rsa_public_key_hash = asm["_TALER_WRALL_rsa_public_key_hash"]; asm["_TALER_WRALL_rsa_public_key_hash"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_rsa_public_key_hash.apply(null, arguments); +}; + +var real__TALER_WRALL_gen_key_from_blob = asm["_TALER_WRALL_gen_key_from_blob"]; asm["_TALER_WRALL_gen_key_from_blob"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_gen_key_from_blob.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_rsa_private_key_get_public = asm["_GNUNET_CRYPTO_rsa_private_key_get_public"]; asm["_GNUNET_CRYPTO_rsa_private_key_get_public"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_rsa_private_key_get_public.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_eddsa_verify = asm["_GNUNET_CRYPTO_eddsa_verify"]; asm["_GNUNET_CRYPTO_eddsa_verify"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_eddsa_verify.apply(null, arguments); +}; + +var real__TALER_WRALL_rsa_public_key_decode_from_string = asm["_TALER_WRALL_rsa_public_key_decode_from_string"]; asm["_TALER_WRALL_rsa_public_key_decode_from_string"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_rsa_public_key_decode_from_string.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_symmetric_encrypt = asm["_GNUNET_CRYPTO_symmetric_encrypt"]; asm["_GNUNET_CRYPTO_symmetric_encrypt"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_symmetric_encrypt.apply(null, arguments); +}; + +var real__TALER_WR_get_fraction = asm["_TALER_WR_get_fraction"]; asm["_TALER_WR_get_fraction"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WR_get_fraction.apply(null, arguments); +}; + +var real__TALER_WR_verify_denoms_enc = asm["_TALER_WR_verify_denoms_enc"]; asm["_TALER_WR_verify_denoms_enc"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WR_verify_denoms_enc.apply(null, arguments); +}; + +var real__TALER_amount_cmp = asm["_TALER_amount_cmp"]; asm["_TALER_amount_cmp"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_amount_cmp.apply(null, arguments); +}; + +var real__TALER_WRALL_ecdhe_public_key_from_private_key = asm["_TALER_WRALL_ecdhe_public_key_from_private_key"]; asm["_TALER_WRALL_ecdhe_public_key_from_private_key"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_ecdhe_public_key_from_private_key.apply(null, arguments); +}; + +var real__llvm_cttz_i32 = asm["_llvm_cttz_i32"]; asm["_llvm_cttz_i32"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__llvm_cttz_i32.apply(null, arguments); +}; + +var real__TALER_WR_verify_sign_key_enc = asm["_TALER_WR_verify_sign_key_enc"]; asm["_TALER_WR_verify_sign_key_enc"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WR_verify_sign_key_enc.apply(null, arguments); +}; + +var real__TALER_WRALL_gen_init_vector = asm["_TALER_WRALL_gen_init_vector"]; asm["_TALER_WRALL_gen_init_vector"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_gen_init_vector.apply(null, arguments); +}; + +var real__TALER_amount_ntoh = asm["_TALER_amount_ntoh"]; asm["_TALER_amount_ntoh"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_amount_ntoh.apply(null, arguments); +}; + +var real__WR_verify_test = asm["_WR_verify_test"]; asm["_WR_verify_test"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__WR_verify_test.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_rsa_public_key_free = asm["_GNUNET_CRYPTO_rsa_public_key_free"]; asm["_GNUNET_CRYPTO_rsa_public_key_free"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_rsa_public_key_free.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_hkdf = asm["_GNUNET_CRYPTO_hkdf"]; asm["_GNUNET_CRYPTO_hkdf"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_hkdf.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_eddsa_key_get_public = asm["_GNUNET_CRYPTO_eddsa_key_get_public"]; asm["_GNUNET_CRYPTO_eddsa_key_get_public"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_eddsa_key_get_public.apply(null, arguments); +}; + +var real__llvm_bswap_i32 = asm["_llvm_bswap_i32"]; asm["_llvm_bswap_i32"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__llvm_bswap_i32.apply(null, arguments); +}; + +var real__TALER_WR_get_value = asm["_TALER_WR_get_value"]; asm["_TALER_WR_get_value"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WR_get_value.apply(null, arguments); +}; + +var real__GNUNET_STRINGS_data_to_string_alloc = asm["_GNUNET_STRINGS_data_to_string_alloc"]; asm["_GNUNET_STRINGS_data_to_string_alloc"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_STRINGS_data_to_string_alloc.apply(null, arguments); +}; + +var real__TALER_WRALL_sign_test = asm["_TALER_WRALL_sign_test"]; asm["_TALER_WRALL_sign_test"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_sign_test.apply(null, arguments); +}; + +var real__TALER_WR_verify_confirmation = asm["_TALER_WR_verify_confirmation"]; asm["_TALER_WR_verify_confirmation"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WR_verify_confirmation.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_rsa_public_key_decode = asm["_GNUNET_CRYPTO_rsa_public_key_decode"]; asm["_GNUNET_CRYPTO_rsa_public_key_decode"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_rsa_public_key_decode.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_rsa_blinding_key_free = asm["_GNUNET_CRYPTO_rsa_blinding_key_free"]; asm["_GNUNET_CRYPTO_rsa_blinding_key_free"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_rsa_blinding_key_free.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_rsa_signature_encode = asm["_GNUNET_CRYPTO_rsa_signature_encode"]; asm["_GNUNET_CRYPTO_rsa_signature_encode"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_rsa_signature_encode.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_rsa_verify = asm["_GNUNET_CRYPTO_rsa_verify"]; asm["_GNUNET_CRYPTO_rsa_verify"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_rsa_verify.apply(null, arguments); +}; + +var real__TALER_WR_eddsa_verify = asm["_TALER_WR_eddsa_verify"]; asm["_TALER_WR_eddsa_verify"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WR_eddsa_verify.apply(null, arguments); +}; + +var real__GNUNET_STRINGS_string_to_data = asm["_GNUNET_STRINGS_string_to_data"]; asm["_GNUNET_STRINGS_string_to_data"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_STRINGS_string_to_data.apply(null, arguments); +}; + +var real__TALER_WRALL_gen_symmetric_key = asm["_TALER_WRALL_gen_symmetric_key"]; asm["_TALER_WRALL_gen_symmetric_key"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_gen_symmetric_key.apply(null, arguments); +}; + +var real__TALER_WRALL_ecc_ecdh = asm["_TALER_WRALL_ecc_ecdh"]; asm["_TALER_WRALL_ecc_ecdh"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_ecc_ecdh.apply(null, arguments); +}; + +var real__TALER_WRALL_get_amount = asm["_TALER_WRALL_get_amount"]; asm["_TALER_WRALL_get_amount"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_get_amount.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_rsa_unblind = asm["_GNUNET_CRYPTO_rsa_unblind"]; asm["_GNUNET_CRYPTO_rsa_unblind"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_rsa_unblind.apply(null, arguments); +}; + +var real__TALER_WR_get_currency = asm["_TALER_WR_get_currency"]; asm["_TALER_WR_get_currency"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WR_get_currency.apply(null, arguments); +}; + +var real__DEBUG_WR_get_purpose = asm["_DEBUG_WR_get_purpose"]; asm["_DEBUG_WR_get_purpose"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__DEBUG_WR_get_purpose.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_rsa_private_key_encode = asm["_GNUNET_CRYPTO_rsa_private_key_encode"]; asm["_GNUNET_CRYPTO_rsa_private_key_encode"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_rsa_private_key_encode.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_symmetric_decrypt = asm["_GNUNET_CRYPTO_symmetric_decrypt"]; asm["_GNUNET_CRYPTO_symmetric_decrypt"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_symmetric_decrypt.apply(null, arguments); +}; + +var real__i64Subtract = asm["_i64Subtract"]; asm["_i64Subtract"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__i64Subtract.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_rsa_private_key_create = asm["_GNUNET_CRYPTO_rsa_private_key_create"]; asm["_GNUNET_CRYPTO_rsa_private_key_create"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_rsa_private_key_create.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_rsa_signature_free = asm["_GNUNET_CRYPTO_rsa_signature_free"]; asm["_GNUNET_CRYPTO_rsa_signature_free"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_rsa_signature_free.apply(null, arguments); +}; + +var real__GNUNET_util_cl_init = asm["_GNUNET_util_cl_init"]; asm["_GNUNET_util_cl_init"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_util_cl_init.apply(null, arguments); +}; + +var real__TALER_WRALL_eddsa_public_key_from_priv_string = asm["_TALER_WRALL_eddsa_public_key_from_priv_string"]; asm["_TALER_WRALL_eddsa_public_key_from_priv_string"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_eddsa_public_key_from_priv_string.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_rsa_blind = asm["_GNUNET_CRYPTO_rsa_blind"]; asm["_GNUNET_CRYPTO_rsa_blind"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_rsa_blind.apply(null, arguments); +}; + +var real__TALER_WR_verify_sign_key = asm["_TALER_WR_verify_sign_key"]; asm["_TALER_WR_verify_sign_key"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WR_verify_sign_key.apply(null, arguments); +}; + +var real__malloc = asm["_malloc"]; asm["_malloc"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__malloc.apply(null, arguments); +}; + +var real__TALER_WR_hello_world = asm["_TALER_WR_hello_world"]; asm["_TALER_WR_hello_world"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WR_hello_world.apply(null, arguments); +}; + +var real__TALER_WRALL_make_withdraw_bundle = asm["_TALER_WRALL_make_withdraw_bundle"]; asm["_TALER_WRALL_make_withdraw_bundle"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_make_withdraw_bundle.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_rsa_signature_decode = asm["_GNUNET_CRYPTO_rsa_signature_decode"]; asm["_GNUNET_CRYPTO_rsa_signature_decode"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_rsa_signature_decode.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_rsa_sign = asm["_GNUNET_CRYPTO_rsa_sign"]; asm["_GNUNET_CRYPTO_rsa_sign"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_rsa_sign.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_ecdhe_key_create = asm["_GNUNET_CRYPTO_ecdhe_key_create"]; asm["_GNUNET_CRYPTO_ecdhe_key_create"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_ecdhe_key_create.apply(null, arguments); +}; + +var real__TALER_WRALL_get_encoding_from_rsa_signature = asm["_TALER_WRALL_get_encoding_from_rsa_signature"]; asm["_TALER_WRALL_get_encoding_from_rsa_signature"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_get_encoding_from_rsa_signature.apply(null, arguments); +}; + +var real__TALER_WRALL_hash = asm["_TALER_WRALL_hash"]; asm["_TALER_WRALL_hash"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_hash.apply(null, arguments); +}; + +var real__TALER_amount_normalize = asm["_TALER_amount_normalize"]; asm["_TALER_amount_normalize"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_amount_normalize.apply(null, arguments); +}; + +var real__TALER_WRALL_sign_contract = asm["_TALER_WRALL_sign_contract"]; asm["_TALER_WRALL_sign_contract"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_sign_contract.apply(null, arguments); +}; + +var real__bitshift64Shl = asm["_bitshift64Shl"]; asm["_bitshift64Shl"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__bitshift64Shl.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_rsa_private_key_free = asm["_GNUNET_CRYPTO_rsa_private_key_free"]; asm["_GNUNET_CRYPTO_rsa_private_key_free"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_rsa_private_key_free.apply(null, arguments); +}; + +var real__fflush = asm["_fflush"]; asm["_fflush"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__fflush.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_hash_create_random = asm["_GNUNET_CRYPTO_hash_create_random"]; asm["_GNUNET_CRYPTO_hash_create_random"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_hash_create_random.apply(null, arguments); +}; + +var real__TALER_WRALL_eddsa_public_key_from_private = asm["_TALER_WRALL_eddsa_public_key_from_private"]; asm["_TALER_WRALL_eddsa_public_key_from_private"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_eddsa_public_key_from_private.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_ecc_ecdh = asm["_GNUNET_CRYPTO_ecc_ecdh"]; asm["_GNUNET_CRYPTO_ecc_ecdh"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_ecc_ecdh.apply(null, arguments); +}; + +var real__TALER_amount_add = asm["_TALER_amount_add"]; asm["_TALER_amount_add"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_amount_add.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_ecdhe_key_get_public = asm["_GNUNET_CRYPTO_ecdhe_key_get_public"]; asm["_GNUNET_CRYPTO_ecdhe_key_get_public"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_ecdhe_key_get_public.apply(null, arguments); +}; + +var real__TALER_amount_subtract = asm["_TALER_amount_subtract"]; asm["_TALER_amount_subtract"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_amount_subtract.apply(null, arguments); +}; + +var real__i64Add = asm["_i64Add"]; asm["_i64Add"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__i64Add.apply(null, arguments); +}; + +var real__TALER_WRALL_purpose_create = asm["_TALER_WRALL_purpose_create"]; asm["_TALER_WRALL_purpose_create"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_purpose_create.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_eddsa_sign = asm["_GNUNET_CRYPTO_eddsa_sign"]; asm["_GNUNET_CRYPTO_eddsa_sign"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_eddsa_sign.apply(null, arguments); +}; + +var real__TALER_WR_verify_denom = asm["_TALER_WR_verify_denom"]; asm["_TALER_WR_verify_denom"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WR_verify_denom.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_hash = asm["_GNUNET_CRYPTO_hash"]; asm["_GNUNET_CRYPTO_hash"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_hash.apply(null, arguments); +}; + +var real____errno_location = asm["___errno_location"]; asm["___errno_location"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real____errno_location.apply(null, arguments); +}; + +var real__TALER_WR_get_fancy_time = asm["_TALER_WR_get_fancy_time"]; asm["_TALER_WR_get_fancy_time"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WR_get_fancy_time.apply(null, arguments); +}; + +var real__TALER_WRALL_make_eddsa_signature = asm["_TALER_WRALL_make_eddsa_signature"]; asm["_TALER_WRALL_make_eddsa_signature"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_make_eddsa_signature.apply(null, arguments); +}; + +var real__memmove = asm["_memmove"]; asm["_memmove"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__memmove.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_random_init = asm["_GNUNET_CRYPTO_random_init"]; asm["_GNUNET_CRYPTO_random_init"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_random_init.apply(null, arguments); +}; + +var real__TALER_amount_get_zero = asm["_TALER_amount_get_zero"]; asm["_TALER_amount_get_zero"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_amount_get_zero.apply(null, arguments); +}; + +var real__DEBUG_WR_dump_amount = asm["_DEBUG_WR_dump_amount"]; asm["_DEBUG_WR_dump_amount"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__DEBUG_WR_dump_amount.apply(null, arguments); +}; + +var real__GNUNET_CRYPTO_rsa_public_key_encode = asm["_GNUNET_CRYPTO_rsa_public_key_encode"]; asm["_GNUNET_CRYPTO_rsa_public_key_encode"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__GNUNET_CRYPTO_rsa_public_key_encode.apply(null, arguments); +}; + +var real__TALER_WRALL_get_current_time = asm["_TALER_WRALL_get_current_time"]; asm["_TALER_WRALL_get_current_time"] = function() { +assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); +assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); +return real__TALER_WRALL_get_current_time.apply(null, arguments); +}; +var _WRALL_make_purpose = Module["_WRALL_make_purpose"] = asm["_WRALL_make_purpose"]; +var _GNUNET_CRYPTO_rsa_blinding_key_encode = Module["_GNUNET_CRYPTO_rsa_blinding_key_encode"] = asm["_GNUNET_CRYPTO_rsa_blinding_key_encode"]; +var _bitshift64Lshr = Module["_bitshift64Lshr"] = asm["_bitshift64Lshr"]; +var _bitshift64Ashr = Module["_bitshift64Ashr"] = asm["_bitshift64Ashr"]; +var _GNUNET_CRYPTO_eddsa_key_create = Module["_GNUNET_CRYPTO_eddsa_key_create"] = asm["_GNUNET_CRYPTO_eddsa_key_create"]; +var _memcpy = Module["_memcpy"] = asm["_memcpy"]; +var _TALER_WR_GNUNET_free = Module["_TALER_WR_GNUNET_free"] = asm["_TALER_WR_GNUNET_free"]; +var _TALER_WRALL_amount_add = Module["_TALER_WRALL_amount_add"] = asm["_TALER_WRALL_amount_add"]; +var _GNUNET_CRYPTO_rsa_private_key_decode = Module["_GNUNET_CRYPTO_rsa_private_key_decode"] = asm["_GNUNET_CRYPTO_rsa_private_key_decode"]; +var _TALER_WR_multiply_amount = Module["_TALER_WR_multiply_amount"] = asm["_TALER_WR_multiply_amount"]; +var _GNUNET_CRYPTO_rsa_blinding_key_decode = Module["_GNUNET_CRYPTO_rsa_blinding_key_decode"] = asm["_GNUNET_CRYPTO_rsa_blinding_key_decode"]; +var _TALER_WR_multiply_amounts = Module["_TALER_WR_multiply_amounts"] = asm["_TALER_WR_multiply_amounts"]; +var _TALER_amount_hton = Module["_TALER_amount_hton"] = asm["_TALER_amount_hton"]; +var _TALER_WRALL_eddsa_private_key_from_string = Module["_TALER_WRALL_eddsa_private_key_from_string"] = asm["_TALER_WRALL_eddsa_private_key_from_string"]; +var runPostSets = Module["runPostSets"] = asm["runPostSets"]; +var _gpg_err_init = Module["_gpg_err_init"] = asm["_gpg_err_init"]; +var _free = Module["_free"] = asm["_free"]; +var _TALER_WRALL_sign_deposit_permission = Module["_TALER_WRALL_sign_deposit_permission"] = asm["_TALER_WRALL_sign_deposit_permission"]; +var _TALER_WR_verify_denoms = Module["_TALER_WR_verify_denoms"] = asm["_TALER_WR_verify_denoms"]; +var _GNUNET_CRYPTO_rsa_blinding_key_create = Module["_GNUNET_CRYPTO_rsa_blinding_key_create"] = asm["_GNUNET_CRYPTO_rsa_blinding_key_create"]; +var _TALER_WR_verify_denom_enc = Module["_TALER_WR_verify_denom_enc"] = asm["_TALER_WR_verify_denom_enc"]; +var _TALER_WRALL_rsa_public_key_hash = Module["_TALER_WRALL_rsa_public_key_hash"] = asm["_TALER_WRALL_rsa_public_key_hash"]; +var _TALER_WRALL_gen_key_from_blob = Module["_TALER_WRALL_gen_key_from_blob"] = asm["_TALER_WRALL_gen_key_from_blob"]; +var _GNUNET_CRYPTO_rsa_private_key_get_public = Module["_GNUNET_CRYPTO_rsa_private_key_get_public"] = asm["_GNUNET_CRYPTO_rsa_private_key_get_public"]; +var _GNUNET_CRYPTO_eddsa_verify = Module["_GNUNET_CRYPTO_eddsa_verify"] = asm["_GNUNET_CRYPTO_eddsa_verify"]; +var _TALER_WRALL_rsa_public_key_decode_from_string = Module["_TALER_WRALL_rsa_public_key_decode_from_string"] = asm["_TALER_WRALL_rsa_public_key_decode_from_string"]; +var _GNUNET_CRYPTO_symmetric_encrypt = Module["_GNUNET_CRYPTO_symmetric_encrypt"] = asm["_GNUNET_CRYPTO_symmetric_encrypt"]; +var _TALER_WR_get_fraction = Module["_TALER_WR_get_fraction"] = asm["_TALER_WR_get_fraction"]; +var _TALER_WR_verify_denoms_enc = Module["_TALER_WR_verify_denoms_enc"] = asm["_TALER_WR_verify_denoms_enc"]; +var _TALER_amount_cmp = Module["_TALER_amount_cmp"] = asm["_TALER_amount_cmp"]; +var _TALER_WRALL_ecdhe_public_key_from_private_key = Module["_TALER_WRALL_ecdhe_public_key_from_private_key"] = asm["_TALER_WRALL_ecdhe_public_key_from_private_key"]; +var _llvm_cttz_i32 = Module["_llvm_cttz_i32"] = asm["_llvm_cttz_i32"]; +var _TALER_WR_verify_sign_key_enc = Module["_TALER_WR_verify_sign_key_enc"] = asm["_TALER_WR_verify_sign_key_enc"]; +var _TALER_WRALL_gen_init_vector = Module["_TALER_WRALL_gen_init_vector"] = asm["_TALER_WRALL_gen_init_vector"]; +var _TALER_amount_ntoh = Module["_TALER_amount_ntoh"] = asm["_TALER_amount_ntoh"]; +var _WR_verify_test = Module["_WR_verify_test"] = asm["_WR_verify_test"]; +var _GNUNET_CRYPTO_rsa_public_key_free = Module["_GNUNET_CRYPTO_rsa_public_key_free"] = asm["_GNUNET_CRYPTO_rsa_public_key_free"]; +var _GNUNET_CRYPTO_hkdf = Module["_GNUNET_CRYPTO_hkdf"] = asm["_GNUNET_CRYPTO_hkdf"]; +var _GNUNET_CRYPTO_eddsa_key_get_public = Module["_GNUNET_CRYPTO_eddsa_key_get_public"] = asm["_GNUNET_CRYPTO_eddsa_key_get_public"]; +var _llvm_bswap_i32 = Module["_llvm_bswap_i32"] = asm["_llvm_bswap_i32"]; +var _TALER_WR_get_value = Module["_TALER_WR_get_value"] = asm["_TALER_WR_get_value"]; +var _GNUNET_STRINGS_data_to_string_alloc = Module["_GNUNET_STRINGS_data_to_string_alloc"] = asm["_GNUNET_STRINGS_data_to_string_alloc"]; +var _TALER_WRALL_sign_test = Module["_TALER_WRALL_sign_test"] = asm["_TALER_WRALL_sign_test"]; +var _TALER_WR_verify_confirmation = Module["_TALER_WR_verify_confirmation"] = asm["_TALER_WR_verify_confirmation"]; +var _GNUNET_CRYPTO_rsa_public_key_decode = Module["_GNUNET_CRYPTO_rsa_public_key_decode"] = asm["_GNUNET_CRYPTO_rsa_public_key_decode"]; +var _GNUNET_CRYPTO_rsa_blinding_key_free = Module["_GNUNET_CRYPTO_rsa_blinding_key_free"] = asm["_GNUNET_CRYPTO_rsa_blinding_key_free"]; +var _GNUNET_CRYPTO_rsa_signature_encode = Module["_GNUNET_CRYPTO_rsa_signature_encode"] = asm["_GNUNET_CRYPTO_rsa_signature_encode"]; +var _GNUNET_CRYPTO_rsa_verify = Module["_GNUNET_CRYPTO_rsa_verify"] = asm["_GNUNET_CRYPTO_rsa_verify"]; +var _TALER_WR_eddsa_verify = Module["_TALER_WR_eddsa_verify"] = asm["_TALER_WR_eddsa_verify"]; +var _GNUNET_STRINGS_string_to_data = Module["_GNUNET_STRINGS_string_to_data"] = asm["_GNUNET_STRINGS_string_to_data"]; +var _TALER_WRALL_gen_symmetric_key = Module["_TALER_WRALL_gen_symmetric_key"] = asm["_TALER_WRALL_gen_symmetric_key"]; +var _TALER_WRALL_ecc_ecdh = Module["_TALER_WRALL_ecc_ecdh"] = asm["_TALER_WRALL_ecc_ecdh"]; +var _TALER_WRALL_get_amount = Module["_TALER_WRALL_get_amount"] = asm["_TALER_WRALL_get_amount"]; +var _GNUNET_CRYPTO_rsa_unblind = Module["_GNUNET_CRYPTO_rsa_unblind"] = asm["_GNUNET_CRYPTO_rsa_unblind"]; +var _TALER_WR_get_currency = Module["_TALER_WR_get_currency"] = asm["_TALER_WR_get_currency"]; +var _DEBUG_WR_get_purpose = Module["_DEBUG_WR_get_purpose"] = asm["_DEBUG_WR_get_purpose"]; +var _memset = Module["_memset"] = asm["_memset"]; +var _GNUNET_CRYPTO_rsa_private_key_encode = Module["_GNUNET_CRYPTO_rsa_private_key_encode"] = asm["_GNUNET_CRYPTO_rsa_private_key_encode"]; +var _GNUNET_CRYPTO_symmetric_decrypt = Module["_GNUNET_CRYPTO_symmetric_decrypt"] = asm["_GNUNET_CRYPTO_symmetric_decrypt"]; +var _i64Subtract = Module["_i64Subtract"] = asm["_i64Subtract"]; +var _GNUNET_CRYPTO_rsa_private_key_create = Module["_GNUNET_CRYPTO_rsa_private_key_create"] = asm["_GNUNET_CRYPTO_rsa_private_key_create"]; +var _GNUNET_CRYPTO_rsa_signature_free = Module["_GNUNET_CRYPTO_rsa_signature_free"] = asm["_GNUNET_CRYPTO_rsa_signature_free"]; +var _GNUNET_util_cl_init = Module["_GNUNET_util_cl_init"] = asm["_GNUNET_util_cl_init"]; +var _TALER_WRALL_eddsa_public_key_from_priv_string = Module["_TALER_WRALL_eddsa_public_key_from_priv_string"] = asm["_TALER_WRALL_eddsa_public_key_from_priv_string"]; +var _GNUNET_CRYPTO_rsa_blind = Module["_GNUNET_CRYPTO_rsa_blind"] = asm["_GNUNET_CRYPTO_rsa_blind"]; +var _TALER_WR_verify_sign_key = Module["_TALER_WR_verify_sign_key"] = asm["_TALER_WR_verify_sign_key"]; +var _malloc = Module["_malloc"] = asm["_malloc"]; +var _TALER_WR_hello_world = Module["_TALER_WR_hello_world"] = asm["_TALER_WR_hello_world"]; +var _TALER_WRALL_make_withdraw_bundle = Module["_TALER_WRALL_make_withdraw_bundle"] = asm["_TALER_WRALL_make_withdraw_bundle"]; +var _GNUNET_CRYPTO_rsa_signature_decode = Module["_GNUNET_CRYPTO_rsa_signature_decode"] = asm["_GNUNET_CRYPTO_rsa_signature_decode"]; +var _GNUNET_CRYPTO_rsa_sign = Module["_GNUNET_CRYPTO_rsa_sign"] = asm["_GNUNET_CRYPTO_rsa_sign"]; +var _GNUNET_CRYPTO_ecdhe_key_create = Module["_GNUNET_CRYPTO_ecdhe_key_create"] = asm["_GNUNET_CRYPTO_ecdhe_key_create"]; +var _TALER_WRALL_get_encoding_from_rsa_signature = Module["_TALER_WRALL_get_encoding_from_rsa_signature"] = asm["_TALER_WRALL_get_encoding_from_rsa_signature"]; +var _TALER_WRALL_hash = Module["_TALER_WRALL_hash"] = asm["_TALER_WRALL_hash"]; +var _TALER_amount_normalize = Module["_TALER_amount_normalize"] = asm["_TALER_amount_normalize"]; +var _TALER_WRALL_sign_contract = Module["_TALER_WRALL_sign_contract"] = asm["_TALER_WRALL_sign_contract"]; +var _bitshift64Shl = Module["_bitshift64Shl"] = asm["_bitshift64Shl"]; +var _GNUNET_CRYPTO_rsa_private_key_free = Module["_GNUNET_CRYPTO_rsa_private_key_free"] = asm["_GNUNET_CRYPTO_rsa_private_key_free"]; +var _fflush = Module["_fflush"] = asm["_fflush"]; +var _GNUNET_CRYPTO_hash_create_random = Module["_GNUNET_CRYPTO_hash_create_random"] = asm["_GNUNET_CRYPTO_hash_create_random"]; +var _TALER_WRALL_eddsa_public_key_from_private = Module["_TALER_WRALL_eddsa_public_key_from_private"] = asm["_TALER_WRALL_eddsa_public_key_from_private"]; +var _GNUNET_CRYPTO_ecc_ecdh = Module["_GNUNET_CRYPTO_ecc_ecdh"] = asm["_GNUNET_CRYPTO_ecc_ecdh"]; +var _TALER_amount_add = Module["_TALER_amount_add"] = asm["_TALER_amount_add"]; +var _GNUNET_CRYPTO_ecdhe_key_get_public = Module["_GNUNET_CRYPTO_ecdhe_key_get_public"] = asm["_GNUNET_CRYPTO_ecdhe_key_get_public"]; +var _TALER_amount_subtract = Module["_TALER_amount_subtract"] = asm["_TALER_amount_subtract"]; +var _i64Add = Module["_i64Add"] = asm["_i64Add"]; +var _TALER_WRALL_purpose_create = Module["_TALER_WRALL_purpose_create"] = asm["_TALER_WRALL_purpose_create"]; +var _GNUNET_CRYPTO_eddsa_sign = Module["_GNUNET_CRYPTO_eddsa_sign"] = asm["_GNUNET_CRYPTO_eddsa_sign"]; +var _TALER_WR_verify_denom = Module["_TALER_WR_verify_denom"] = asm["_TALER_WR_verify_denom"]; +var _GNUNET_CRYPTO_hash = Module["_GNUNET_CRYPTO_hash"] = asm["_GNUNET_CRYPTO_hash"]; +var ___errno_location = Module["___errno_location"] = asm["___errno_location"]; +var _TALER_WR_get_fancy_time = Module["_TALER_WR_get_fancy_time"] = asm["_TALER_WR_get_fancy_time"]; +var _TALER_WRALL_make_eddsa_signature = Module["_TALER_WRALL_make_eddsa_signature"] = asm["_TALER_WRALL_make_eddsa_signature"]; +var _memmove = Module["_memmove"] = asm["_memmove"]; +var _GNUNET_CRYPTO_random_init = Module["_GNUNET_CRYPTO_random_init"] = asm["_GNUNET_CRYPTO_random_init"]; +var _TALER_amount_get_zero = Module["_TALER_amount_get_zero"] = asm["_TALER_amount_get_zero"]; +var _DEBUG_WR_dump_amount = Module["_DEBUG_WR_dump_amount"] = asm["_DEBUG_WR_dump_amount"]; +var _GNUNET_CRYPTO_rsa_public_key_encode = Module["_GNUNET_CRYPTO_rsa_public_key_encode"] = asm["_GNUNET_CRYPTO_rsa_public_key_encode"]; +var _TALER_WRALL_get_current_time = Module["_TALER_WRALL_get_current_time"] = asm["_TALER_WRALL_get_current_time"]; +var dynCall_iiii = Module["dynCall_iiii"] = asm["dynCall_iiii"]; +var dynCall_viiiii = Module["dynCall_viiiii"] = asm["dynCall_viiiii"]; +var dynCall_vi = Module["dynCall_vi"] = asm["dynCall_vi"]; +var dynCall_vii = Module["dynCall_vii"] = asm["dynCall_vii"]; +var dynCall_ii = Module["dynCall_ii"] = asm["dynCall_ii"]; +var dynCall_viii = Module["dynCall_viii"] = asm["dynCall_viii"]; +var dynCall_v = Module["dynCall_v"] = asm["dynCall_v"]; +var dynCall_iiiii = Module["dynCall_iiiii"] = asm["dynCall_iiiii"]; +var dynCall_viiiiii = Module["dynCall_viiiiii"] = asm["dynCall_viiiiii"]; +var dynCall_iii = Module["dynCall_iii"] = asm["dynCall_iii"]; +var dynCall_viiii = Module["dynCall_viiii"] = asm["dynCall_viiii"]; +; + +Runtime.stackAlloc = asm['stackAlloc']; +Runtime.stackSave = asm['stackSave']; +Runtime.stackRestore = asm['stackRestore']; +Runtime.establishStackSpace = asm['establishStackSpace']; + +Runtime.setTempRet0 = asm['setTempRet0']; +Runtime.getTempRet0 = asm['getTempRet0']; + + + +// === Auto-generated postamble setup entry stuff === + + + + +function ExitStatus(status) { + this.name = "ExitStatus"; + this.message = "Program terminated with exit(" + status + ")"; + this.status = status; +}; +ExitStatus.prototype = new Error(); +ExitStatus.prototype.constructor = ExitStatus; + +var initialStackTop; +var preloadStartTime = null; +var calledMain = false; + +dependenciesFulfilled = function runCaller() { + // If run has never been called, and we should call run (INVOKE_RUN is true, and Module.noInitialRun is not false) + if (!Module['calledRun']) run(); + if (!Module['calledRun']) dependenciesFulfilled = runCaller; // try this again later, after new deps are fulfilled +} + +Module['callMain'] = Module.callMain = function callMain(args) { + assert(runDependencies == 0, 'cannot call main when async dependencies remain! (listen on __ATMAIN__)'); + assert(__ATPRERUN__.length == 0, 'cannot call main when preRun functions remain to be called'); + + args = args || []; + + ensureInitRuntime(); + + var argc = args.length+1; + function pad() { + for (var i = 0; i < 4-1; i++) { + argv.push(0); + } + } + var argv = [allocate(intArrayFromString(Module['thisProgram']), 'i8', ALLOC_NORMAL) ]; + pad(); + for (var i = 0; i < argc-1; i = i + 1) { + argv.push(allocate(intArrayFromString(args[i]), 'i8', ALLOC_NORMAL)); + pad(); + } + argv.push(0); + argv = allocate(argv, 'i32', ALLOC_NORMAL); + + + try { + + var ret = Module['_main'](argc, argv, 0); + + + // if we're not running an evented main loop, it's time to exit + exit(ret, /* implicit = */ true); + } + catch(e) { + if (e instanceof ExitStatus) { + // exit() throws this once it's done to make sure execution + // has been stopped completely + return; + } else if (e == 'SimulateInfiniteLoop') { + // running an evented main loop, don't immediately exit + Module['noExitRuntime'] = true; + return; + } else { + if (e && typeof e === 'object' && e.stack) Module.printErr('exception thrown: ' + [e, e.stack]); + throw e; + } + } finally { + calledMain = true; + } +} + + + + +function run(args) { + args = args || Module['arguments']; + + if (preloadStartTime === null) preloadStartTime = Date.now(); + + if (runDependencies > 0) { + Module.printErr('run() called, but dependencies remain, so not running'); + return; + } + + preRun(); + + if (runDependencies > 0) return; // a preRun added a dependency, run will be called later + if (Module['calledRun']) return; // run may have just been called through dependencies being fulfilled just in this very frame + + function doRun() { + if (Module['calledRun']) return; // run may have just been called while the async setStatus time below was happening + Module['calledRun'] = true; + + if (ABORT) return; + + ensureInitRuntime(); + + preMain(); + + if (ENVIRONMENT_IS_WEB && preloadStartTime !== null) { + Module.printErr('pre-main prep time: ' + (Date.now() - preloadStartTime) + ' ms'); + } + + if (Module['onRuntimeInitialized']) Module['onRuntimeInitialized'](); + + if (Module['_main'] && shouldRunNow) Module['callMain'](args); + + postRun(); + } + + if (Module['setStatus']) { + Module['setStatus']('Running...'); + setTimeout(function() { + setTimeout(function() { + Module['setStatus'](''); + }, 1); + doRun(); + }, 1); + } else { + doRun(); + } +} +Module['run'] = Module.run = run; + +function exit(status, implicit) { + if (implicit && Module['noExitRuntime']) { + Module.printErr('exit(' + status + ') implicitly called by end of main(), but noExitRuntime, so not exiting the runtime (you can use emscripten_force_exit, if you want to force a true shutdown)'); + return; + } + + if (Module['noExitRuntime']) { + Module.printErr('exit(' + status + ') called, but noExitRuntime, so halting execution but not exiting the runtime or preventing further async execution (you can use emscripten_force_exit, if you want to force a true shutdown)'); + } else { + + ABORT = true; + EXITSTATUS = status; + STACKTOP = initialStackTop; + + exitRuntime(); + + if (Module['onExit']) Module['onExit'](status); + } + + if (ENVIRONMENT_IS_NODE) { + // Work around a node.js bug where stdout buffer is not flushed at process exit: + // Instead of process.exit() directly, wait for stdout flush event. + // See https://github.com/joyent/node/issues/1669 and https://github.com/kripken/emscripten/issues/2582 + // Workaround is based on https://github.com/RReverser/acorn/commit/50ab143cecc9ed71a2d66f78b4aec3bb2e9844f6 + process['stdout']['once']('drain', function () { + process['exit'](status); + }); + console.log(' '); // Make sure to print something to force the drain event to occur, in case the stdout buffer was empty. + // Work around another node bug where sometimes 'drain' is never fired - make another effort + // to emit the exit status, after a significant delay (if node hasn't fired drain by then, give up) + setTimeout(function() { + process['exit'](status); + }, 500); + } else + if (ENVIRONMENT_IS_SHELL && typeof quit === 'function') { + quit(status); + } + // if we reach here, we must throw an exception to halt the current execution + throw new ExitStatus(status); +} +Module['exit'] = Module.exit = exit; + +var abortDecorators = []; + +function abort(what) { + if (what !== undefined) { + Module.print(what); + Module.printErr(what); + what = JSON.stringify(what) + } else { + what = ''; + } + + ABORT = true; + EXITSTATUS = 1; + + var extra = ''; + + var output = 'abort(' + what + ') at ' + stackTrace() + extra; + if (abortDecorators) { + abortDecorators.forEach(function(decorator) { + output = decorator(output, what); + }); + } + throw output; +} +Module['abort'] = Module.abort = abort; + +// {{PRE_RUN_ADDITIONS}} + +if (Module['preInit']) { + if (typeof Module['preInit'] == 'function') Module['preInit'] = [Module['preInit']]; + while (Module['preInit'].length > 0) { + Module['preInit'].pop()(); + } +} + +// shouldRunNow refers to calling main(), not run(). +var shouldRunNow = true; +if (Module['noInitialRun']) { + shouldRunNow = false; +} + + +run(); + +// {{POST_RUN_ADDITIONS}} + + + + + + +// {{MODULE_ADDITIONS}} + + + |