#include "stdafx.h" #include "PPUFunction.h" #include "Utilities/JIT.h" #include "PPUModule.h" // Get function name by FNID extern std::string ppu_get_function_name(const std::string& _module, u32 fnid) { if (_module.empty()) switch (fnid) { case 0x0d10fd3f: return "module_prologue"; case 0x330f7005: return "module_epilogue"; case 0x3ab9a95e: return "module_exit"; case 0xbc9a0086: return "module_start"; case 0xab779874: return "module_stop"; } // Check known FNIDs if (_module == "sys_libc" || _module == "sys_libm") switch (fnid) { case 0x00acf0e5: return "spu_printf_finalize"; case 0x00fb4a6b: return "spu_thread_sprintf"; case 0x0125b2ca: return "_rand_int32_TT800"; case 0x01508f24: return "raw_spu_write_float"; case 0x0264f468: return "_Wctomb"; case 0x02f4d325: return "spu_thread_read_double"; case 0x02f52a3c: return "_filep_close_it"; case 0x03becf3c: return "_Defloc"; case 0x04a183fc: return "strcpy"; case 0x04a1f19d: return "raw_spu_write_short"; case 0x05d821c4: return "_Stoullx"; case 0x077cdb23: return "btowc"; case 0x07c7971d: return "_Stoldx"; case 0x0871ffb0: return "mspace_malloc_usable_size"; case 0x0891a3fa: return "_Tlsfree"; case 0x09cbee1e: return "strxfrm"; case 0x0a1d4b00: return "spu_thread_read_uint"; case 0x0a4e2541: return "spu_thread_read_ldouble"; case 0x0ae275a4: return "_Stolx"; case 0x0b0d272f: return "_malloc_finalize"; case 0x0b9d04d0: return "_Getnloc"; case 0x0b9ecb98: return "toupper_ascii"; case 0x0cae547f: return "raw_spu_write_double"; case 0x0d2a593b: return "srand"; case 0x0d8a2de0: return "_CStrxfrm"; case 0x0df8809f: return "__call_functions_registered_with_atexit"; case 0x0f60eb63: return "vfwscanf"; case 0x0ff4722c: return "raw_spu_read_ushort"; case 0x1096f8f1: return "ispunct_ascii"; case 0x1098a99d: return "localeconv"; case 0x112ea8ea: return "strspn"; case 0x115e2f70: return "spu_thread_snprintf"; case 0x116cda13: return "wcstol"; case 0x118712ea: return "islower"; case 0x11d270d2: return "exitspawn"; case 0x126656b7: return "_Btowc"; case 0x128b334f: return "raw_spu_read_mem"; case 0x12a55fb7: return "mbrtowc"; case 0x130d20a5: return "towlower"; case 0x1365b52a: return "fcntl"; case 0x13808972: return "wcstok"; case 0x14052ae0: return "absi4"; case 0x14348b57: return "divi4"; case 0x145853cd: return "mspace_destroy"; case 0x15362bc9: return "spu_thread_read_long"; case 0x153b364a: return "mkdir"; case 0x15bdcc00: return "rand"; case 0x15c2e29d: return "isgraph_ascii"; case 0x17752bab: return "wcsftime"; case 0x17bc0136: return "_Lrv2d"; case 0x17c031d7: return "spu_thread_read_ulong"; case 0x1855b9b1: return "setlocale"; case 0x1895908d: return "mspace_realloc"; case 0x18e48b5d: return "wscanf"; case 0x18f7b77d: return "_Dnorm"; case 0x1970cd7e: return "getpid"; case 0x19ccbb81: return "mktime"; case 0x1ab01ea8: return "truncate"; case 0x1abd0985: return "div"; case 0x1ae06860: return "wcstoumax"; case 0x1b4c3ff0: return "atexit"; case 0x1c0e8ab6: return "vswscanf"; case 0x1c2ef212: return "getwc"; case 0x1cf4d80a: return "iswalpha"; case 0x1dcd8609: return "_Strxfrmx"; case 0x1dd0d4c5: return "spu_printf_attach_group"; case 0x1df4732e: return "_Getptolower"; case 0x1e9d2b4f: return "spu_thread_read_int"; case 0x1ecae195: return "_Vacopy"; case 0x1f913e8d: return "chmod"; case 0x1f925c41: return "_allocate_mapped_pages"; case 0x206612c4: return "spu_thread_read_ptr"; case 0x216984ed: return "spu_thread_write_long"; case 0x216fcd2a: return "_Atrealloc"; case 0x21807b8e: return "towctrans"; case 0x225702e1: return "_fs_initialize"; case 0x22b0e566: return "_Stollx"; case 0x23d3bca7: return "_Eadd"; case 0x242c603e: return "_Frprep"; case 0x243b52d8: return "_Mbtowcx"; case 0x24802244: return "iswcntrl"; case 0x24c9e021: return "abs"; case 0x24e230d2: return "_Wctob"; case 0x24f6cbdd: return "clock"; case 0x253b7210: return "_rand_real2_TT800"; case 0x25beee5a: return "__raw_spu_printf"; case 0x25da8fbb: return "iscntrl"; case 0x266311a0: return "localtime"; case 0x2677568c: return "putchar"; case 0x26f023d5: return "ftell"; case 0x273b9711: return "sprintf"; case 0x28b92ebf: return "raw_spu_read_uchar"; case 0x296bc72f: return "_FDunscale"; case 0x2b45cb34: return "wcsrtombs"; case 0x2b7ba4ca: return "_Tlsset"; case 0x2b81fb7f: return "readdir"; case 0x2bc9dee6: return "raw_spu_read_short"; case 0x2caea755: return "_Once"; case 0x2d067448: return "ftruncate64"; case 0x2d17ca7f: return "_Puttxt"; case 0x2eea9f25: return "_Esub"; case 0x2f45d39c: return "strlen"; case 0x2fecec13: return "getwchar"; case 0x30fb2899: return "_Getmem"; case 0x312be3b3: return "_malloc_init_lv2"; case 0x313f04ab: return "raw_spu_read_char"; case 0x329a4540: return "_WPrintf"; case 0x32e4a30a: return "_Mtxdst"; case 0x336b4191: return "_Getint"; case 0x33d6ae54: return "ferror"; case 0x344eca7e: return "_WGetstr"; case 0x34dd6650: return "_Getcloc"; case 0x34e7c97e: return "_Unlocksyslock"; case 0x3512ad38: return "tmpnam"; case 0x355fd1fd: return "mbtowc"; case 0x3574d37d: return "_Wcsxfrmx"; case 0x36c067c1: return "_Stoll"; case 0x36f2b4ed: return "strtoull"; case 0x36feb965: return "raw_spu_write_llong"; case 0x3704840e: return "_fs_finalize"; case 0x38426d25: return "_Wctombx"; case 0x3902363a: return "malloc_footprint"; case 0x39bf419c: return "valloc"; case 0x3a210c93: return "swscanf"; case 0x3a840ae3: return "snprintf"; case 0x3b22e88a: return "isxdigit"; case 0x3b8097ac: return "_WScanf"; case 0x3bce073b: return "putc"; case 0x3bd9ce0a: return "fsync"; case 0x3ca81c76: return "_Iswctype"; case 0x3d1460e9: return "_Strerror"; case 0x3d541975: return "atoi"; case 0x3d5fdea7: return "vfwprintf"; case 0x3d85d6f8: return "strcmp"; case 0x3dbc3bee: return "opendir"; case 0x3e57dfac: return "_Genld"; case 0x3ec99a66: return "_Getptimes"; case 0x3ee29d0b: return "_Stof"; case 0x3f125e2e: return "spu_thread_write_short"; case 0x3f4ccdc7: return "isdigit"; case 0x3f650700: return "mspace_is_heap_empty"; case 0x40a2599a: return "atol"; case 0x40d04e4e: return "fwide"; case 0x40e0ff25: return "_WGenld"; case 0x41283333: return "isdigit_ascii"; case 0x418bdfe1: return "_get_fd"; case 0x4217b4cf: return "difftime"; case 0x433fe2a9: return "fwscanf"; case 0x44115dd0: return "_Geterrno"; case 0x44796e5c: return "strerror"; case 0x449317ed: return "_Fopen"; case 0x44d7cae8: return "raw_spu_read_float"; case 0x4544c2de: return "spu_thread_write_mem"; case 0x4569518c: return "malloc_stats"; case 0x459072c3: return "_init_TT800"; case 0x4595c42b: return "wcsxfrm"; case 0x468b45dc: return "mspace_calloc"; case 0x4911ff9c: return "rand_int31_TT800"; case 0x498a5036: return "raw_spu_write_mem"; case 0x4a0049c6: return "_Getpctype"; case 0x4ab5fbe2: return "_Printf"; case 0x4b36c0e0: return "vfscanf"; case 0x4b6a4010: return "vswprintf"; case 0x4bb8e2b2: return "raw_spu_write_ushort"; case 0x4c3f5f29: return "_Getgloballocale"; case 0x4c7dc863: return "iswupper"; case 0x4d348427: return "fputs"; case 0x4e4be299: return "longjmp"; case 0x4e72f810: return "wmemchr"; case 0x4ffba189: return "feof"; case 0x508196b4: return "raw_spu_printf"; case 0x508e00c6: return "_Getloc"; case 0x51b28904: return "_Stodx"; case 0x526a496a: return "write"; case 0x532b03be: return "raw_spu_read_uint"; case 0x53eb43a1: return "_Getpmbstate"; case 0x54b383bc: return "_Locvar"; case 0x54c2844e: return "spu_raw_snprintf"; case 0x54f57626: return "rewind"; case 0x5516bbbf: return "iswctype"; case 0x55d4866e: return "fgetws"; case 0x5751acf9: return "_LDscale"; case 0x575fb268: return "wctrans"; case 0x57ff7dd7: return "_WStod"; case 0x58320830: return "_WLitob"; case 0x589b5314: return "strncat"; case 0x5909e3c4: return "memset"; case 0x59640bc6: return "raw_spu_read_ullong"; case 0x59c1bb1f: return "_Getpwcstate"; case 0x59e8dd58: return "strtoll"; case 0x5a74f774: return "spu_thread_read_float"; case 0x5b162b7f: return "memmove"; case 0x5b4b6d6d: return "wcspbrk"; case 0x5cc71eee: return "raw_spu_write_ldouble"; case 0x5d43c1a3: return "_Mbtowc"; case 0x5dbceee3: return "rand_int32_TT800"; case 0x5e06c3fe: return "__getpid"; case 0x5e7888f0: return "bsearch"; case 0x5eb95641: return "_Stold"; case 0x5f922a30: return "_Dscale"; case 0x5f9a65c7: return "_WStold"; case 0x5fa1e497: return "_Unlockfilelock"; case 0x60627fb3: return "_LDunscale"; case 0x6075a3c6: return "_Ld2rv"; case 0x609080ec: return "isspace_ascii"; case 0x6137d196: return "memalign"; case 0x6287ac6a: return "iswdigit"; case 0x62bf1d6c: return "swprintf"; case 0x64aaf016: return "raw_spu_read_ldouble"; case 0x6514dbe5: return "wcstold"; case 0x6539ff6d: return "_Gentime"; case 0x6545b7de: return "fgetpos"; case 0x65e8d4d0: return "wcslen"; case 0x6660fc8d: return "TlsGetValue"; case 0x6687fba4: return "_Fgpos"; case 0x66b71b17: return "wcsspn"; case 0x67582370: return "spu_thread_write_double"; case 0x676e3e7a: return "raw_spu_write_ptr"; case 0x67d6334b: return "strtof"; case 0x6823c180: return "iswprint"; case 0x69106fd2: return "_init_by_array_TT800"; case 0x692b497f: return "perror"; case 0x6995f5e8: return "_Ldtob"; case 0x69c27c12: return "fopen"; case 0x69ff1b9b: return "fseek"; case 0x6ba10474: return "_Tlsalloc"; case 0x6cf78f3e: return "_Mtxunlock"; case 0x6d5115b0: return "wcsncmp"; case 0x6e988e5f: return "_rand_int31_TT800"; case 0x7028dea9: return "_Locksyslock"; case 0x703ec767: return "setvbuf"; case 0x70b0e833: return "mblen"; case 0x714c9618: return "__raw_spu_putfld"; case 0x717b2502: return "stat"; case 0x72236cbc: return "raw_spu_write_ullong"; case 0x72b84004: return "spu_printf_attach_thread"; case 0x73096858: return "wctob"; case 0x7345b4be: return "_WStoll"; case 0x73eae03d: return "strrchr"; case 0x744d2505: return "ispunct"; case 0x74fe4a7b: return "iswgraph"; case 0x759e0635: return "malloc"; case 0x75d4485c: return "rename"; case 0x75f98579: return "wcscoll"; case 0x76da0c84: return "ftruncate"; case 0x76ed4243: return "_Wcsftime"; case 0x770bfaee: return "wctype"; case 0x77a602dd: return "free"; case 0x77c15441: return "_WGetfloat"; case 0x77e241bc: return "_Skip"; case 0x7817edf0: return "raw_spu_write_uint"; case 0x783636d1: return "spu_thread_read_char"; case 0x78429d81: return "putwchar"; case 0x79819dbf: return "fputc"; case 0x7994c28d: return "_FDtentox"; case 0x79eadf05: return "malloc_usable_size"; case 0x7aaab95c: return "iswblank"; case 0x7ae82e0f: return "vsprintf"; case 0x7aee5acd: return "_Lockfilelock"; case 0x7b5aac20: return "spu_thread_write_ptr"; case 0x7b7a687a: return "_WPutfld"; case 0x7b9c592e: return "spu_thread_read_ullong"; case 0x7c1bcf37: return "isalnum_ascii"; case 0x7c370679: return "_Foprep"; case 0x7cec7b39: return "_Putfld"; case 0x7d894764: return "_Readloc"; case 0x7e7017b1: return "rmdir"; case 0x7ea8d860: return "spu_printf_detach_group"; case 0x7efd420a: return "_Daysto"; case 0x7fd325c4: return "mspace_malloc_stats"; case 0x7fdcf73e: return "wcscat"; case 0x806fd281: return "isblank_ascii"; case 0x809a143f: return "kill"; case 0x813a9666: return "ungetwc"; case 0x814d8cb0: return "fflush"; case 0x81a0a858: return "_memset_int"; case 0x82a3cc30: return "wcschr"; case 0x82a4561a: return "_put_fd"; case 0x831d70a5: return "memcpy"; case 0x8342b757: return "utime"; case 0x84378ddc: return "wcsncpy"; case 0x86532174: return "imaxdiv"; case 0x867275d7: return "_Stoul"; case 0x86b4c669: return "tolower_ascii"; case 0x8713c859: return "link"; case 0x8725a1a7: return "_memset_vmx"; case 0x87e8f748: return "memset_vmx"; case 0x8809cdfd: return "_Getpwctytab"; case 0x882689f2: return "_Makeloc"; case 0x882e7760: return "raw_spu_write_uchar"; case 0x889d5804: return "_Dunscale"; case 0x88e009f5: return "vwprintf"; case 0x896e1bfd: return "spu_thread_write_uchar"; case 0x89b62f56: return "_Etentox"; case 0x89f6f026: return "time"; case 0x8a6830e7: return "abort"; case 0x8a71132c: return "remove"; case 0x8a847b51: return "tmpfile"; case 0x8ab0abc6: return "strncpy"; case 0x8b439438: return "clearerr"; case 0x8b9d8dd2: return "iswpunct"; case 0x8cb6bfdc: return "_Locsum"; case 0x8d7ffaf1: return "_WStopfx"; case 0x8e2484f1: return "_Emul"; case 0x8ed71e8b: return "_WGetfld"; case 0x8ef85e47: return "_WPuttxt"; case 0x8f5dd179: return "_Nnl"; case 0x90010029: return "gets"; case 0x9027fd99: return "_WStoldx"; case 0x90457fe3: return "raw_spu_read_long"; case 0x90b27880: return "strtoumax"; case 0x9234f738: return "raw_spu_read_int"; case 0x93427cb9: return "setbuf"; case 0x938bfcf7: return "spu_thread_write_char"; case 0x93a3e3ac: return "tolower"; case 0x9439e4cd: return "wcsncat"; case 0x96b6baa6: return "spu_thread_read_mem"; case 0x96e6303b: return "_WStoxflt"; case 0x96ea4de6: return "wctomb"; case 0x97896359: return "isspace"; case 0x9800573c: return "_WLdtob"; case 0x980d3ea7: return "_Getfld"; case 0x9886810c: return "_FDnorm"; case 0x98f0eeab: return "raw_spu_write_ulong"; case 0x99782342: return "strncasecmp_ascii"; case 0x99a72146: return "vsnprintf"; case 0x99b38ce7: return "wmemmove"; case 0x9a87bb3a: return "_Getmbcurmax"; case 0x9abe8c74: return "wprintf"; case 0x9c7028a5: return "spu_thread_write_uint"; case 0x9c9d7b0d: return "strtold"; case 0x9cab08d1: return "spu_thread_write_int"; case 0x9d140351: return "_Destroytls"; case 0x9eb25e00: return "strcoll"; case 0x9eee5387: return "truncate64"; case 0x9ff08d57: return "_Clearlocks"; case 0xa0ab76d5: return "_absi4"; case 0xa0bc0efb: return "mallinfo"; case 0xa0ddba8e: return "_Stoulx"; case 0xa1dbb466: return "_Gettime"; case 0xa2945229: return "_WGetint"; case 0xa30d4797: return "wcstoll"; case 0xa3440924: return "closedir"; case 0xa3da58f6: return "rand_real1_TT800"; case 0xa45a0313: return "mspace_create"; case 0xa483d50d: return "_rv2d"; case 0xa53800c2: return "_malloc_finalize_lv2"; case 0xa568db82: return "spu_thread_read_ushort"; case 0xa57cc615: return "iswspace"; case 0xa5bc0e19: return "getchar"; case 0xa6463518: return "__rename"; case 0xa650df19: return "toupper"; case 0xa65886b8: return "_Findloc"; case 0xa72a7595: return "calloc"; case 0xa797790f: return "wcsstr"; case 0xa82d70da: return "_Tlsget"; case 0xa835be11: return "__cxa_atexit"; case 0xa874036a: return "wcstof"; case 0xa8a6f615: return "TlsSetValue"; case 0xa8b07f1b: return "wmemcpy"; case 0xa9f68eff: return "qsort"; case 0xaa1e687d: return "isgraph"; case 0xaa266d35: return "_malloc_init"; case 0xaa9635d7: return "strcat"; case 0xab4c7ca1: return "_CWcsxfrm"; case 0xab77019f: return "fstat"; case 0xabc27420: return "wcstoul"; case 0xac758d20: return "wmemcmp"; case 0xac893127: return "fgetc"; case 0xace90be4: return "_Dtentox"; case 0xad62a342: return "ldiv"; case 0xad8e9ad0: return "_Initlocks"; case 0xaec7c970: return "lseek"; case 0xaf002043: return "independent_comalloc"; case 0xaf44a615: return "fgets"; case 0xaf6bdcb0: return "_Nonfatal_Assert"; case 0xaf89fdbd: return "_Assert"; case 0xafa39179: return "_WPutstr"; case 0xb120f6ca: return "close"; case 0xb17b79d0: return "isalpha"; case 0xb18cc115: return "freopen"; case 0xb1cc43e3: return "_CStrftime"; case 0xb1f4779d: return "spu_thread_printf"; case 0xb24cb8d6: return "_Locterm"; case 0xb2702e15: return "wcrtomb"; case 0xb2748a9f: return "_Freeloc"; case 0xb30042ce: return "lldiv"; case 0xb37982ea: return "_Getstr"; case 0xb3c495bd: return "imaxabs"; case 0xb3d98d59: return "_rand_real1_TT800"; case 0xb400f226: return "isupper_ascii"; case 0xb4225825: return "mbsinit"; case 0xb43c25c7: return "wcstoull"; case 0xb49eea74: return "_init_malloc_lock0"; case 0xb4a54446: return "_Stofx"; case 0xb4fc7078: return "_close_all_FILE"; case 0xb529d259: return "isalnum"; case 0xb569849d: return "reallocalign"; case 0xb57bdf7b: return "iswxdigit"; case 0xb5d353e8: return "_LDtentox"; case 0xb6002508: return "_Putstr"; case 0xb6257e3d: return "strncasecmp"; case 0xb680e240: return "wcstombs"; case 0xb6af290e: return "_WFrprep"; case 0xb6d92ac3: return "strcasecmp"; case 0xb738027a: return "strtok_r"; case 0xb794631e: return "_WStofx"; case 0xb7ab5127: return "wcsrchr"; case 0xb7b793ed: return "get_state_TT800"; case 0xb7ba4aeb: return "_WStoul"; case 0xb7d3427f: return "iscntrl_ascii"; case 0xb81cd66a: return "mbrlen"; case 0xb9ed25d4: return "raw_spu_read_ulong"; case 0xba62681f: return "mspace_memalign"; case 0xbb605c96: return "pvalloc"; case 0xbbd4582f: return "_Setloc"; case 0xbc1d69c5: return "atoll"; case 0xbc374779: return "_Getlname"; case 0xbc5af0b5: return "fgetwc"; case 0xbc7b4b8e: return "ctime"; case 0xbe11beaa: return "_wremove"; case 0xbe251a29: return "islower_ascii"; case 0xbe6e5c58: return "spu_thread_read_uchar"; case 0xbec43f86: return "raw_spu_read_ptr"; case 0xbf5bf5ea: return "lseek64"; case 0xbfcd1b3b: return "_Getdst"; case 0xc01d9f97: return "printf"; case 0xc08cc41d: return "wcstod"; case 0xc0e27b2c: return "_Makestab"; case 0xc155a73f: return "_WStoull"; case 0xc15e657e: return "spu_raw_sprintf"; case 0xc1a71972: return "_d2rv"; case 0xc1b4bbb9: return "raw_spu_write_char"; case 0xc1c8737c: return "_Getptoupper"; case 0xc291e698: return "exit"; case 0xc3c598e2: return "spu_printf_initialize"; case 0xc3e14cbe: return "memcmp"; case 0xc4178000: return "_rand_real3_TT800"; case 0xc41c6e5d: return "_Scanf"; case 0xc57337f8: return "_Fofind"; case 0xc5c09834: return "strstr"; case 0xc63c354f: return "_Exit"; case 0xc69b2427: return "labs"; case 0xc78df618: return "rand_real3_TT800"; case 0xc7b62ab8: return "spu_thread_write_ullong"; case 0xc9471fac: return "_Mtxinit"; case 0xc94b27e3: return "_WStof"; case 0xc95b20d3: return "fputwc"; case 0xc9607d35: return "_Stopfx"; case 0xc97a17d7: return "vsscanf"; case 0xcab654bf: return "_Once_ctor"; case 0xcb85ac70: return "mspace_malloc"; case 0xcb9c535b: return "strftime"; case 0xcbac7ad7: return "memchr"; case 0xcbdc3a6d: return "raw_spu_write_int"; case 0xcc5e0c72: return "_divi4"; case 0xcca68e9c: return "putwc"; case 0xce7a9e76: return "isprint_ascii"; case 0xcecbcdc4: return "_Frv2d"; case 0xcf863219: return "_Fwprep"; case 0xcfbfb7a7: return "spu_printf_detach_thread"; case 0xd14ece90: return "strtol"; case 0xd1d69cb8: return "_Stod"; case 0xd20f6601: return "independent_calloc"; case 0xd2a99b1e: return "isprint"; case 0xd2ac48d7: return "iswalnum"; case 0xd360dcb4: return "fileno"; case 0xd3964a09: return "__spu_thread_putfld"; case 0xd40723d6: return "fread"; case 0xd417eeb5: return "_Stoull"; case 0xd4912ee3: return "_FDscale"; case 0xd5c8cb55: return "spu_thread_write_ushort"; case 0xd69c513d: return "_Wcscollx"; case 0xd784459d: return "isupper"; case 0xd7dc3a8f: return "strtod"; case 0xd8b4eb20: return "__spu_thread_puttxt"; case 0xd9674905: return "mspace_reallocalign"; case 0xd9a4f812: return "atoff"; case 0xda5a7eb8: return "strtoul"; case 0xdaeada07: return "mallopt"; case 0xddbac025: return "strcasecmp_ascii"; case 0xddc71a75: return "_SCE_Assert"; case 0xde1bb092: return "init_by_array_TT800"; case 0xde32a334: return "_Exitspawn"; case 0xde7aff7a: return "memcpy16"; case 0xdebee2af: return "strchr"; case 0xdef86a83: return "isxdigit_ascii"; case 0xdfb52083: return "_Stoxflt"; case 0xe03c7ab1: return "_Fspos"; case 0xe1858899: return "_Getpwctrtab"; case 0xe1bd3587: return "fclose"; case 0xe1e83c65: return "strncmp"; case 0xe2c5274a: return "_WStoflt"; case 0xe3812672: return "fdopen"; case 0xe3cc73f3: return "puts"; case 0xe3d91db3: return "raw_spu_read_double"; case 0xe40ba755: return "strtok"; case 0xe44bf0bf: return "atof"; case 0xe469fb20: return "_Atexit"; case 0xe48348e9: return "vprintf"; case 0xe4c51d4c: return "wcstoimax"; case 0xe5ea9e2b: return "_Isdst"; case 0xe5f09c80: return "llabs"; case 0xe60ee9e5: return "fputws"; case 0xe6a7de0a: return "ungetc"; case 0xe7def231: return "_Getfloat"; case 0xe89071ad: return "isalpha_ascii"; case 0xe9137453: return "fwprintf"; case 0xe9a2cc40: return "raw_spu_write_long"; case 0xe9b560a5: return "sscanf"; case 0xeb26298c: return "gmtime"; case 0xeb40c9ec: return "rand_real2_TT800"; case 0xeb8abe73: return "vwscanf"; case 0xec9e7cb9: return "spu_thread_read_llong"; case 0xecddba69: return "_WStodx"; case 0xed6ec979: return "fsetpos"; case 0xeda48c80: return "malloc_trim"; case 0xeddcee2c: return "init_TT800"; case 0xedec777d: return "_Ttotm"; case 0xeeeb4f3e: return "_get_state_TT800"; case 0xeeffc9a6: return "_wrename"; case 0xef110b6b: return "unlink"; case 0xf06eed36: return "wmemset"; case 0xf0776a44: return "wcscmp"; case 0xf0e022c6: return "getc"; case 0xf2bbbee9: return "_Litob"; case 0xf2fca4b2: return "spu_thread_write_llong"; case 0xf356418c: return "open"; case 0xf3ef3678: return "wcscspn"; case 0xf41355f9: return "wcscpy"; case 0xf418ee84: return "_WFwprep"; case 0xf4207734: return "spu_thread_write_ulong"; case 0xf5a32994: return "_Getpcostate"; case 0xf5ef229c: return "_Getpwcostate"; case 0xf5f7dda8: return "towupper"; case 0xf68e2ac9: return "_init_malloc_lock"; case 0xf7583d67: return "vscanf"; case 0xf7908e27: return "strcspn"; case 0xf7a14a22: return "realloc"; case 0xf7d51596: return "scanf"; case 0xf7ddb471: return "_Setgloballocale"; case 0xf88f26c4: return "fwrite"; case 0xf8935fe3: return "spu_thread_write_float"; case 0xf89dc648: return "strpbrk"; case 0xf9dae72c: return "setjmp"; case 0xf9dba140: return "_Mtxlock"; case 0xf9e26b72: return "_Once_dtor"; case 0xfa00d211: return "read"; case 0xfae4b063: return "_Strcollx"; case 0xfaec8c60: return "fprintf"; case 0xfb0f0018: return "_Makewct"; case 0xfb2081fd: return "vfprintf"; case 0xfb81426d: return "iswlower"; case 0xfb8ea4d2: return "_Fd2rv"; case 0xfc0428a6: return "strdup"; case 0xfc60575c: return "__spu_thread_printf"; case 0xfc606237: return "mbsrtowcs"; case 0xfcac2e8e: return "mbstowcs"; case 0xfd0cb96d: return "spu_thread_read_short"; case 0xfd461e85: return "spu_thread_write_ldouble"; case 0xfd6a1ddb: return "raw_spu_read_llong"; case 0xfd81f6ca: return "_Stoflt"; case 0xfe0261aa: return "mspace_free"; case 0xfe630fd9: return "isblank"; case 0xfe88e97e: return "fscanf"; case 0xff689124: return "strtoimax"; case 0xffbae95e: return "asctime"; case 0xffbd876b: return "__raw_spu_puttxt"; case 0x003395d9: return "_Feraise"; case 0x00367be0: return "fminl"; case 0x007854f4: return "_FDclass"; case 0x00fde072: return "f_powf"; case 0x010818fc: return "asinf4"; case 0x012d0a91: return "_fminf4"; case 0x016556df: return "_sinf4"; case 0x01b84b27: return "llround"; case 0x01ecef7d: return "_FCbuild"; case 0x02e68d44: return "_f_fmodf"; case 0x032cc709: return "csin"; case 0x03593d2c: return "_f_expf"; case 0x03aea906: return "divf4"; case 0x0522d1af: return "_recipf4"; case 0x054aae63: return "_fdimf4"; case 0x05cb1718: return "f_fdimf"; case 0x05e27a13: return "log10f4fast"; case 0x05efc660: return "asin"; case 0x05f1dc9e: return "_FExp"; case 0x07274304: return "csinh"; case 0x07daed62: return "log2f4"; case 0x07f400e3: return "_LCbuild"; case 0x080414bd: return "conjl"; case 0x08139bd2: return "_fmaxf4"; case 0x0829a21d: return "asinhl"; case 0x0a242ed5: return "sinf4"; case 0x0b3f4e90: return "catanhf"; case 0x0bb036a6: return "_cosf4"; case 0x0c14cfcc: return "fesetenv"; case 0x0c9b8305: return "hypotf4"; case 0x0cbdae68: return "sinf"; case 0x0cf9b8bd: return "_Erfc"; case 0x0d86295d: return "_LCaddcr"; case 0x0e53319f: return "_asinf4"; case 0x0e8573dc: return "expm1l"; case 0x0f02f882: return "llrintl"; case 0x0f428f0f: return "rint"; case 0x0f721a9d: return "_LCsubcc"; case 0x10627248: return "f_fmodf"; case 0x11c51388: return "tgamma"; case 0x1225dd31: return "casinf"; case 0x12de4e46: return "_powf4"; case 0x12e04cd7: return "cimagl"; case 0x1313a420: return "acos"; case 0x137f7e77: return "expf4"; case 0x14208b00: return "_asinf4fast"; case 0x1498a072: return "_Cmulcr"; case 0x16bf208a: return "log10f"; case 0x17316bee: return "log2"; case 0x178d98dd: return "atanf4fast"; case 0x17cd5d87: return "_recipf4fast"; case 0x182cd542: return "tgammal"; case 0x18668ce3: return "exp"; case 0x18b26998: return "remainderl"; case 0x18ec6099: return "rintl"; case 0x1988732d: return "clog10"; case 0x1a1adede: return "rsqrtf4fast"; case 0x1acb2b16: return "acosf4"; case 0x1bbdcd9f: return "expm1f4"; case 0x1bcdeb47: return "_LSinh"; case 0x1be996cc: return "_LCdivcc"; case 0x1c11885d: return "_floorf4"; case 0x1d35bfe4: return "_LLog"; case 0x1d5bf5d0: return "_modff4"; case 0x1e623f95: return "truncf4"; case 0x1e85ef02: return "f_atanf"; case 0x1e9fd6ba: return "_sinf4fast"; case 0x2033eeb7: return "csqrt"; case 0x2118fe46: return "cexpl"; case 0x21a37b3e: return "log1pf"; case 0x21e6d304: return "ceil"; case 0x22c3e308: return "_exp2f4"; case 0x238af59b: return "fegetenv"; case 0x23b985f7: return "floorf"; case 0x241f9337: return "_FCmulcr"; case 0x24497c52: return "cosf"; case 0x246ea8d0: return "f_sqrtf"; case 0x2627d6b2: return "erfc"; case 0x266d2473: return "_Caddcr"; case 0x26deed0b: return "cosl"; case 0x26ef50ed: return "asinh"; case 0x28faaa5a: return "ilogbf4"; case 0x29685118: return "_negatef4"; case 0x2a138d2b: return "truncf"; case 0x2a4dcbad: return "cacosl"; case 0x2a89ce33: return "llrintf"; case 0x2af4b73b: return "fmax"; case 0x2b282ebb: return "sqrtl"; case 0x2bb0f2c9: return "logb"; case 0x2c45fe6a: return "fmaxl"; case 0x2c601f3b: return "csinl"; case 0x2cbb6f53: return "f_hypotf"; case 0x2dcab6a4: return "nanl"; case 0x2df339bc: return "_f_floorf"; case 0x2e69bb2a: return "_FCosh"; case 0x2ec867b4: return "exp2f4fast"; case 0x30bc7a53: return "logf4"; case 0x315673f6: return "_Csubcc"; case 0x31be25c3: return "scalblnf"; case 0x31db8c89: return "atan2"; case 0x321c55de: return "nexttowardl"; case 0x3261de11: return "fesetexceptflag"; case 0x329ec019: return "rsqrtf4"; case 0x32f994a1: return "cosf4fast"; case 0x33e5929b: return "_LDsign"; case 0x33f27f25: return "_FCdivcr"; case 0x3436f008: return "csinhf"; case 0x3459748b: return "log10f4"; case 0x347c1ee1: return "atanf4"; case 0x34c0371e: return "powl"; case 0x358d7f93: return "_f_lrintf"; case 0x3593a445: return "clog"; case 0x35b6e70a: return "lrintl"; case 0x35d3f688: return "creal"; case 0x36778d1b: return "coshf"; case 0x373054d1: return "cpow"; case 0x37345541: return "log1pl"; case 0x376fb27f: return "sinhl"; case 0x3792b12d: return "lroundl"; case 0x38ba5590: return "ccosl"; case 0x38e69f09: return "pow"; case 0x398483aa: return "_expm1f4fast"; case 0x39ef81c9: return "f_fmaxf"; case 0x3ad203fa: return "lrint"; case 0x3adc01d7: return "f_frexpf"; case 0x3b802524: return "ldexpf4"; case 0x3c057fbd: return "atanf"; case 0x3c616743: return "_LDtest"; case 0x3cb818fa: return "_f_fdimf"; case 0x3d4efafb: return "atan2l"; case 0x3d549f2a: return "ctanhl"; case 0x3d901a10: return "_ceilf4"; case 0x3da55602: return "fabsf"; case 0x3dfa060f: return "scalbnl"; case 0x3e7eb58f: return "frexpf4"; case 0x3e919cba: return "scalbnf"; case 0x3ec9de23: return "_cbrtf4"; case 0x3eeedb0e: return "_Dclass"; case 0x3f6262b3: return "f_fminf"; case 0x3f701e78: return "_Poly"; case 0x4020f5ef: return "cbrt"; case 0x405f9727: return "_log1pf4fast"; case 0x40a2e212: return "_fabsf4"; case 0x4111b546: return "_LExp"; case 0x411434bb: return "asinf"; case 0x414c5ecc: return "_f_hypotf"; case 0x4152669c: return "scalbln"; case 0x417851ce: return "feholdexcept"; case 0x418036e3: return "_FTgamma"; case 0x4189a367: return "remquo"; case 0x41d1b236: return "_f_rintf"; case 0x430309a1: return "ldexpf"; case 0x434881a0: return "cacosf"; case 0x43d522f4: return "cabsl"; case 0x44cd6308: return "remainder"; case 0x44cf744b: return "tanhl"; case 0x45034943: return "nan"; case 0x452ac4bb: return "floorf4"; case 0x453f9e91: return "cbrtf"; case 0x46b66f76: return "csqrtl"; case 0x46cf72d9: return "fdimf"; case 0x47433144: return "expm1f4fast"; case 0x475d855b: return "trunc"; case 0x476b5591: return "fmaf"; case 0x48157605: return "_f_llrintf"; case 0x4826db61: return "fma"; case 0x4875601d: return "_exp2f4fast"; case 0x487bbd1c: return "tanf4"; case 0x488df791: return "cexp"; case 0x48d462a9: return "_FDint"; case 0x4930ac11: return "logbl"; case 0x4a5ae27d: return "f_exp2f"; case 0x4a6ca9a6: return "powf4"; case 0x4ab22a63: return "_Caddcc"; case 0x4add664c: return "feclearexcept"; case 0x4ae52dd3: return "exp2"; case 0x4b03d5b2: return "f_rintf"; case 0x4b584841: return "f_asinf"; case 0x4cb5fa99: return "nexttoward"; case 0x4d878773: return "remainderf4"; case 0x4ddb926b: return "powf"; case 0x4e010403: return "copysign"; case 0x4eb5eb51: return "sin"; case 0x4fa4f5ec: return "nexttowardf"; case 0x501c412f: return "cargf"; case 0x519ebb77: return "floor"; case 0x547fb4a7: return "sinf4fast"; case 0x54d2fb8c: return "rintf"; case 0x5516d621: return "acosl"; case 0x55c8a549: return "truncl"; case 0x56c573a8: return "log1p"; case 0x575e9b6e: return "asinl"; case 0x58eb9e57: return "fabs"; case 0x596ab55c: return "atanh"; case 0x5b18eded: return "clogl"; case 0x5b474c22: return "casinhl"; case 0x5bfd37be: return "_FCaddcc"; case 0x5e48dede: return "exp2f4"; case 0x5ee10a95: return "catanh"; case 0x5ee37927: return "_LErfc"; case 0x60e9ff3c: return "_expm1f4"; case 0x61250988: return "catanl"; case 0x6261c0b5: return "_log10f4"; case 0x63bbdfa6: return "_FCmulcc"; case 0x642e3d18: return "_frexpf4"; case 0x642f7d6b: return "f_copysignf"; case 0x645557bd: return "copysignl"; case 0x64abdb4d: return "csinhl"; case 0x657d0e83: return "divf4fast"; case 0x65935877: return "ilogbf"; case 0x659e011e: return "sqrt"; case 0x6636c4a5: return "frexpf"; case 0x664e04b9: return "negatef4"; case 0x6764c707: return "f_log2f"; case 0x683cacb3: return "sinh"; case 0x68a8957f: return "casinhf"; case 0x68f72416: return "nextafterl"; case 0x69040b9b: return "logbf4"; case 0x69725dce: return "lgamma"; case 0x6ad1c42b: return "_sincosf4"; case 0x6b660894: return "_acosf4fast"; case 0x6b6ab2a9: return "_LDclass"; case 0x6c009c56: return "f_log10f"; case 0x6c6285c6: return "acoshf"; case 0x6cc4bd13: return "casinh"; case 0x6ddd31b2: return "hypot"; case 0x6df35518: return "floorl"; case 0x6e9eb0dc: return "sincosf4fast"; case 0x6ef6b083: return "_FCsubcr"; case 0x6f5dd7d2: return "cexpf"; case 0x6f639afb: return "f_llroundf"; case 0x6fcc1e27: return "_FPoly"; case 0x70357b12: return "_atanf4fast"; case 0x7048396e: return "carg"; case 0x705d9e24: return "f_acosf"; case 0x70f71871: return "_FCdivcc"; case 0x71293b71: return "_FLog"; case 0x714adce1: return "log"; case 0x71f2bc56: return "_divf4fast"; case 0x728149e5: return "f_ldexpf"; case 0x729b7269: return "cproj"; case 0x72a3ed28: return "fesettrapenable"; case 0x72f1f64b: return "_logbf4"; case 0x734ca589: return "_f_cosf"; case 0x742f12b4: return "_Sin"; case 0x74902d4b: return "expf4fast"; case 0x749440f9: return "lgammal"; case 0x752fa85e: return "fmaxf4"; case 0x758f33dc: return "nearbyint"; case 0x75e3e2e9: return "nearbyintl"; case 0x76afaf04: return "_sqrtf4"; case 0x76e639ec: return "_atanf4"; case 0x772f1e4d: return "lround"; case 0x7793a86b: return "ctanf"; case 0x7831a2e0: return "hypotl"; case 0x78e4590a: return "acosh"; case 0x790c53bd: return "_Fpcomp"; case 0x7919f414: return "_f_nearbyintf"; case 0x79ba9b5c: return "expl"; case 0x7a893af1: return "_rsqrtf4"; case 0x7ab679da: return "f_cosf"; case 0x7c2eaeb5: return "fminf"; case 0x7d02a5ca: return "sqrtf4fast"; case 0x7d6191d0: return "_Cosh"; case 0x7f381837: return "frexp"; case 0x7f579e03: return "atan"; case 0x7f91cd41: return "tanf4fast"; case 0x812ed488: return "cabsf"; case 0x81daf880: return "_LCsubcr"; case 0x8217e783: return "cosh"; case 0x833e6b0e: return "cimag"; case 0x834f5917: return "ccosh"; case 0x842cb14d: return "_log1pf4"; case 0x8451edf0: return "sqrtf"; case 0x889cccb0: return "llroundl"; case 0x88fb4a66: return "recipf4fast"; case 0x892f2590: return "fegetround"; case 0x895cdb49: return "fmaxf"; case 0x89b507b3: return "catanhl"; case 0x89d1d168: return "_LAtan"; case 0x8b168769: return "fdiml"; case 0x8bd1deb2: return "_LTgamma"; case 0x8bd67efc: return "erf"; case 0x8c85369b: return "_f_fminf"; case 0x8d5858db: return "_f_exp2f"; case 0x8e01379e: return "cacoshf"; case 0x8e258fa0: return "cacos"; case 0x8ecae294: return "nextafter"; case 0x8f2bcdb5: return "_logf4"; case 0x8f96319e: return "log10l"; case 0x8fb7bac7: return "_sqrtf4fast"; case 0x904e646b: return "cargl"; case 0x90f0242f: return "_f_sinf"; case 0x9110708a: return "modfl"; case 0x91cdfdb0: return "asinf4fast"; case 0x9232baea: return "_FDtest"; case 0x9245e01b: return "_divf4"; case 0x9379e36e: return "tanf"; case 0x938fb946: return "_tanf4fast"; case 0x947ae18e: return "_LHypot"; case 0x9558ed08: return "lrintf"; case 0x95dfecb1: return "_FCsubcc"; case 0x961688d1: return "f_nearbyintf"; case 0x9616e336: return "_FHypot"; case 0x964ac044: return "creall"; case 0x96d1b95e: return "log2f4fast"; case 0x9700d9cd: return "clogf"; case 0x970a3432: return "cacosh"; case 0x99a6c261: return "catanf"; case 0x99c228fc: return "roundl"; case 0x9a81e583: return "fmodf"; case 0x9af30eaf: return "casin"; case 0x9e289062: return "_f_ceilf"; case 0x9e3ada21: return "logl"; case 0x9e8130b6: return "ccos"; case 0x9f03dd3e: return "lgammaf"; case 0x9f0efc6e: return "exp2l"; case 0x9f46f5a4: return "tgammaf"; case 0x9f65bd34: return "fdimf4"; case 0x9f78f052: return "cos"; case 0x9fded78a: return "_acosf4"; case 0xa0160c30: return "_copysignf4"; case 0xa20827a8: return "ctanl"; case 0xa2c81938: return "_LSin"; case 0xa4578433: return "fmin"; case 0xa46a70a1: return "atanhl"; case 0xa4ca5cf2: return "llroundf"; case 0xa56557b6: return "catan"; case 0xa5d0b260: return "acoshl"; case 0xa713f8cf: return "modf"; case 0xa7658186: return "log1pf4"; case 0xa823836b: return "ilogb"; case 0xa8c16038: return "_FDsign"; case 0xa8d180e8: return "_Cbuild"; case 0xa92bcc85: return "cabs"; case 0xa9e039c4: return "erfcf"; case 0xaaa270dc: return "_LCdivcr"; case 0xab377381: return "log2f"; case 0xabdccc7a: return "f_atan2f"; case 0xacca2f83: return "copysignf"; case 0xad17e787: return "_Dint"; case 0xad3a093d: return "_LCosh"; case 0xad5d3e57: return "_FLgamma"; case 0xaddce673: return "erfcl"; case 0xafa13040: return "f_llrintf"; case 0xafcfdad7: return "_Lgamma"; case 0xafd9a625: return "cimagf"; case 0xb0fa1592: return "clog10l"; case 0xb24bd2f8: return "logbf"; case 0xb348c5c2: return "_LLgamma"; case 0xb412a8dc: return "_LDint"; case 0xb4ef29d5: return "f_floorf"; case 0xb4f4513e: return "_Tgamma"; case 0xb54cc9a1: return "f_sinf"; case 0xb5961d4e: return "_sincosf4fast"; case 0xb598a495: return "fmodl"; case 0xb5e28191: return "_FSin"; case 0xb7696143: return "nextafterf"; case 0xb79012ba: return "modff"; case 0xb89863bc: return "_rsqrtf4fast"; case 0xb8aa984e: return "_expf4"; case 0xb94b9d13: return "_Dtest"; case 0xb9d2ad22: return "remquol"; case 0xba136594: return "csinf"; case 0xba84eab5: return "coshl"; case 0xbaf11866: return "ceilf"; case 0xbb165807: return "expm1f"; case 0xbb208b20: return "cbrtf4fast"; case 0xbb761c89: return "remquof"; case 0xbbaa300b: return "f_log1pf"; case 0xbbf7354e: return "fegetexceptflag"; case 0xbd7410d9: return "recipf4"; case 0xbd8bb75c: return "asinhf"; case 0xbf23f2e7: return "cprojl"; case 0xbfda6837: return "_f_log10f"; case 0xc0609820: return "nearbyintf"; case 0xc0bcf25e: return "_logf4fast"; case 0xc357b33a: return "frexpl"; case 0xc406dd09: return "cbrtf4"; case 0xc41f01db: return "fminf4"; case 0xc477c0f6: return "f_lroundf"; case 0xc4cccd1f: return "modff4"; case 0xc7369fce: return "_Atan"; case 0xc78ac9d0: return "scalbn"; case 0xc7b45a19: return "_LFpcomp"; case 0xc7f1d407: return "fmal"; case 0xc7fb73d6: return "f_lrintf"; case 0xc8910002: return "ilogbl"; case 0xc8dd9279: return "expm1"; case 0xc90f4bbc: return "_atan2f4"; case 0xc9481758: return "_tanf4"; case 0xc94fcc63: return "cbrtl"; case 0xc977e1ea: return "fetestexcept"; case 0xc984bf53: return "roundf"; case 0xc9c536ce: return "_ldexpf4"; case 0xca239640: return "fmodf4"; case 0xca463458: return "_Log"; case 0xcaaf7ae7: return "cprojf"; case 0xcac167a5: return "_Cmulcc"; case 0xcb6599c0: return "exp2f"; case 0xcb6a147e: return "_cosf4fast"; case 0xcbdf9afb: return "_log10f4fast"; case 0xccc66f11: return "_FSinh"; case 0xce91ff18: return "nanf"; case 0xcfee82d8: return "_remainderf4"; case 0xd0fd3ca8: return "_hypotf4"; case 0xd125b89e: return "conjf"; case 0xd1a3574c: return "clog10f"; case 0xd231e30a: return "ldexpl"; case 0xd28ef6dd: return "_Hypot"; case 0xd2a666c9: return "ctanh"; case 0xd3a346a8: return "tanl"; case 0xd40f3f2c: return "erff"; case 0xd42904b7: return "fabsl"; case 0xd477852d: return "logf"; case 0xd48eaae1: return "scalblnl"; case 0xd4f37b9d: return "tanhf"; case 0xd50277ad: return "tan"; case 0xd54039cb: return "fegettrapenable"; case 0xd5adc4b2: return "cpowl"; case 0xd5d38552: return "_LCaddcc"; case 0xd612fa16: return "_Sinh"; case 0xd70df92a: return "_FCaddcr"; case 0xd7653782: return "sinhf"; case 0xd76a16da: return "_fmaf4"; case 0xd8270894: return "fdim"; case 0xd8c4096d: return "atan2f4"; case 0xd8d157f5: return "f_expf"; case 0xd8f79f4c: return "log10"; case 0xd97852b7: return "sinl"; case 0xd97ce5d4: return "fesetround"; case 0xda217d1f: return "atanl"; case 0xda31fc5d: return "_FFpcomp"; case 0xdc14974c: return "fmaf4"; case 0xdc151707: return "_f_log2f"; case 0xdd8660d2: return "atan2f4fast"; case 0xdd92118e: return "ceill"; case 0xdddabb32: return "remainderf"; case 0xde7833f2: return "_log2f4fast"; case 0xdece76a6: return "acosf"; case 0xdfd41734: return "_Exp"; case 0xdffb4e3c: return "casinl"; case 0xe1288c47: return "atanhf"; case 0xe1c71b05: return "ccoshl"; case 0xe2b596ec: return "ccosf"; case 0xe2de89e6: return "csqrtf"; case 0xe2f1d4b2: return "tanh"; case 0xe31cc0d3: return "_ilogbf4"; case 0xe3e379b8: return "_expf4fast"; case 0xe584836c: return "_LPoly"; case 0xe58fc9b5: return "erfl"; case 0xe5a0be9f: return "_powf4fast"; case 0xe5d2293f: return "_Force_raise"; case 0xe5ea65e8: return "feraiseexcept"; case 0xe6c1ff41: return "llrint"; case 0xe769e5cf: return "fmod"; case 0xe8fcf1f8: return "acosf4fast"; case 0xe913a166: return "logf4fast"; case 0xe92f3fb8: return "_f_fmaf"; case 0xe93abfca: return "ctan"; case 0xe9ac8223: return "_LCmulcr"; case 0xe9f501df: return "crealf"; case 0xea1e83e3: return "f_logf"; case 0xeac62795: return "_Cdivcc"; case 0xeac7ca2c: return "ceilf4"; case 0xebb4e08a: return "hypotf"; case 0xec43b983: return "_f_sqrtf"; case 0xec7da0c8: return "_atan2f4fast"; case 0xed05c265: return "sqrtf4"; case 0xed9d1ac5: return "f_tanf"; case 0xeda86c48: return "copysignf4"; case 0xee0db701: return "_Csubcr"; case 0xee204ac6: return "f_ceilf"; case 0xee303936: return "_Dsign"; case 0xeed82401: return "_f_logf"; case 0xf0947035: return "ctanhf"; case 0xf0ab77c1: return "ccoshf"; case 0xf16568af: return "_FAtan"; case 0xf19c5e94: return "sincosf4"; case 0xf1aaa2f8: return "conj"; case 0xf3bd7d08: return "_cbrtf4fast"; case 0xf3ec0258: return "round"; case 0xf4ad6ea8: return "ldexp"; case 0xf537d837: return "_truncf4"; case 0xf5cd1e19: return "cosf4"; case 0xf7844153: return "_f_fmaxf"; case 0xf83a372f: return "f_fmaf"; case 0xf95b7769: return "powf4fast"; case 0xf99da2fc: return "fabsf4"; case 0xfa28434b: return "log2l"; case 0xfa765d42: return "_Cdivcr"; case 0xfa97afbf: return "feupdateenv"; case 0xfae9e727: return "_f_copysignf"; case 0xfb6e6213: return "log1pf4fast"; case 0xfb932a56: return "atan2f"; case 0xfbb4047a: return "lroundf"; case 0xfbe88922: return "_FErfc"; case 0xfcedabc3: return "_fmodf4"; case 0xfcf08193: return "expf"; case 0xfdec16e1: return "cacoshl"; case 0xfe23dbe9: return "_log2f4"; case 0xff036800: return "cpowf"; case 0xfffe79bf: return "_LCmulcc"; } if (_module == "sys_libstdcxx") switch (fnid) { case 0x002c338b: return "_ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE16do_get_monthnameES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateEPSt2tm"; case 0x002e18d8: return "_ZNSt6locale7_LocimpD0Ev"; case 0x0091a3fd: return "_ZNKSt6locale9_GetfacetEj"; case 0x00c3975e: return "_ZNSt15basic_streambufIcSt11char_traitsIcEE5_LockEv"; case 0x00cf44f7: return "_ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_RSt8ios_basecl"; case 0x01409785: return "_ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE7_GetintERS3_S5_iiRi"; case 0x01aa0cef: return "_ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERx"; case 0x01c4ef01: return "_ZNSt6localeC2ERKS_S1_i"; case 0x01d9b3f5: return "_ZNSt6localeC1EPKci"; case 0x01f81190: return "_ZNSt12codecvt_baseD1Ev"; case 0x020b22f3: return "_ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_RSt8ios_basewPKv"; case 0x02e40598: return "_ZNSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE5_InitERKSt8_Locinfo"; case 0x03217f6f: return "_ZNSt19istreambuf_iteratorIcSt11char_traitsIcEE5_PeekEv"; case 0x0339259c: return "_ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_RSt8ios_basecPKv"; case 0x033c18f4: return "_ZNSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED1Ev"; case 0x03cca12f: return "_ZNSt6localeC1ERKS_PKci"; case 0x040c18ff: return "_ZNKSt7_MpunctIwE16do_decimal_pointEv"; case 0x045e124a: return "_ZdaPv"; case 0x0490855d: return "_ZNSt8numpunctIwE7_GetcatEPPKNSt6locale5facetE"; case 0x055c1462: return "_ZNSt15basic_streambufIcSt11char_traitsIcEED1Ev"; case 0x05903101: return "_ZNKSt7collateIcE7do_hashEPKcS2_"; case 0x05a9cef6: return "_ZNSt7_MpunctIcE5_InitERKSt8_Locinfo"; case 0x05ec37c8: return "_ZSt10_MaklocstrIwEPT_PKcS1_RKSt7_Cvtvec"; case 0x06bc5b51: return "_ZNKSt7_MpunctIwE16do_positive_signEv"; case 0x07a3bd16: return "_ZNSt6locale7_LocimpD1Ev"; case 0x07b6c924: return "_ZTv0_n12_NSt13basic_ostreamIwSt11char_traitsIwEED1Ev"; case 0x085bff4f: return "_ZNSt15basic_streambufIwSt11char_traitsIwEE5_LockEv"; case 0x08e1865c: return "_ZNKSt8numpunctIwE16do_thousands_sepEv"; case 0x09e73a2a: return "_ZNKSt7codecvtIwcSt9_MbstatetE11do_encodingEv"; case 0x0ba5483c: return "_ZNKSt12codecvt_base11do_encodingEv"; case 0x0bc08c57: return "_ZNKSt7collateIwE7do_hashEPKwS2_"; case 0x0bcc1910: return "_ZNSt10ostrstreamD2Ev"; case 0x0d4290d2: return "_ZNSt12length_errorD0Ev"; case 0x0d644dca: return "_ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE11do_get_dateES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateEPSt2tm"; case 0x0e147a9d: return "_ZNSt13basic_filebufIwSt11char_traitsIwEE9pbackfailEi"; case 0x0e744ef5: return "_ZNSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED1Ev"; case 0x0e9698af: return "_ZNSt7codecvtIwcSt9_MbstatetED1Ev"; case 0x0e9a5554: return "_ZNSt13basic_istreamIwSt11char_traitsIwEED0Ev"; case 0x0f930fdd: return "_ZNSt13messages_baseD2Ev"; case 0x0ff264b9: return "_ZNSt15basic_streambufIcSt11char_traitsIcEE4syncEv"; case 0x10231873: return "_ZNSt13runtime_errorD1Ev"; case 0x10dc3f6c: return "_ZNSbIwSt11char_traitsIwESaIwEE6appendEjw"; case 0x113a515f: return "_ZNKSt8messagesIcE7do_openERKSsRKSt6locale"; case 0x114e9178: return "_ZNSt11logic_errorD0Ev"; case 0x128cd621: return "_ZNKSt5ctypeIwE10do_scan_isEsPKwS2_"; case 0x12de5772: return "_ZNKSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_bRSt8ios_baseRNSt5_IosbIiE8_IostateERSs"; case 0x1374b8c8: return "_ZNSt10moneypunctIcLb0EED1Ev"; case 0x143048bf: return "_ZNSt15basic_streambufIcSt11char_traitsIcEE7seekoffElNSt5_IosbIiE8_SeekdirENS4_9_OpenmodeE"; case 0x1474ac53: return "_ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERt"; case 0x14e3faa5: return "_ZNKSt5ctypeIwE9do_narrowEwc"; case 0x1527fe95: return "_ZNSt15basic_streambufIwSt11char_traitsIwEE4syncEv"; case 0x1692ae0c: return "_ZNSt6localeD1Ev"; case 0x16df5ecb: return "_ZNKSt12codecvt_base16do_always_noconvEv"; case 0x17dd0a4e: return "_ZNKSt7_MpunctIwE16do_negative_signEv"; case 0x18628537: return "_ZNKSt8numpunctIcE16do_decimal_pointEv"; case 0x186bcc94: return "_ZNSt8ios_base4InitD1Ev"; case 0x18a38254: return "_ZNSt10ctype_baseD1Ev"; case 0x197fc348: return "_ZNSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED1Ev"; case 0x1989f59c: return "_ZNSt8ios_base17register_callbackEPFvNS_5eventERS_iEi"; case 0x19c901ce: return "_ZTv0_n12_NSt9strstreamD0Ev"; case 0x1a00f889: return "_ZNSt9exceptionD2Ev"; case 0x1a4f2fa6: return "_ZNSt8ios_base7failureD0Ev"; case 0x1a7f963c: return "_ZNKSt8numpunctIcE11do_truenameEv"; case 0x1b266c3d: return "_ZNSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE7_GetcatEPPKNSt6locale5facetE"; case 0x1b6a7482: return "_ZNKSt7_MpunctIwE13do_neg_formatEv"; case 0x1b6ad260: return "_ZSt13resetiosflagsNSt5_IosbIiE9_FmtflagsE"; case 0x1b9b3b5c: return "_ZNSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED0Ev"; case 0x1bccd2ca: return "_ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE7_GetintERS3_S5_iiRi"; case 0x1c3f1c4f: return "_ZNSt6_MutexD1Ev"; case 0x1c8083c5: return "_ZNSt12strstreambufD0Ev"; case 0x1c8405dc: return "_ZNSt7_MpunctIcEC2Ejb"; case 0x1cf6785d: return "_ZSt9use_facetISt5ctypeIwEERKT_RKSt6locale"; case 0x1d43fb44: return "_ZSt9use_facetISt8numpunctIwEERKT_RKSt6locale"; case 0x1ee13e83: return "_ZNSt6locale5facetD0Ev"; case 0x1f2e9f4e: return "_ZNSt15basic_streambufIwSt11char_traitsIwEE9underflowEv"; case 0x1f3a9ada: return "_ZNSt12strstreambuf7seekposESt4fposISt9_MbstatetENSt5_IosbIiE9_OpenmodeE"; case 0x2070a73d: return "_ZNSt6locale7_LocimpC1ERKS0_"; case 0x207b56fa: return "_ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE8_GetffldEPcRS3_S6_RKSt6locale"; case 0x20a02b6d: return "_ZNSt6locale2idcvjEv"; case 0x20f7e066: return "_ZNSt10moneypunctIwLb0EED0Ev"; case 0x21659e45: return "_ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE5_FputES3_RSt8ios_basecPKcjjjj"; case 0x22777290: return "_ZNSs7replaceEjjPKcj"; case 0x229a0963: return "_ZNKSt5ctypeIwE5do_isEsw"; case 0x2354ec0a: return "_ZNKSt7codecvtIwcSt9_MbstatetE10do_unshiftERS0_PcS3_RS3_"; case 0x2356ef16: return "_ZnajRKSt9nothrow_t"; case 0x23a87483: return "_ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE11do_get_timeES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateEPSt2tm"; case 0x23ef7642: return "_ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE8_GetifldEPcRS3_S6_NSt5_IosbIiE9_FmtflagsERKSt6locale"; case 0x258359df: return "_ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_RSt8ios_basece"; case 0x2670b433: return "_ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE8_GetffldEPcRS3_S6_RKSt6locale"; case 0x268c3ea5: return "_ZNKSt7_MpunctIwE13do_pos_formatEv"; case 0x26e8e1cf: return "_ZNKSt5ctypeIwE5do_isEPKwS2_Ps"; case 0x273be056: return "_ZNKSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE8_PutmfldES3_bRSt8ios_basecbSs"; case 0x281f9107: return "_ZTv0_n12_NSiD1Ev"; case 0x294779fb: return "_ZNSt8ios_base4InitD2Ev"; case 0x2954d64d: return "_ZNSt13basic_filebufIwSt11char_traitsIwEE9underflowEv"; case 0x29c11f46: return "_ZNKSt7codecvtIccSt9_MbstatetE9do_lengthERKS0_PKcS5_j"; case 0x29c90b94: return "_ZNKSt8numpunctIcE16do_thousands_sepEv"; case 0x2a16469d: return "_ZNSt8ios_base5imbueERKSt6locale"; case 0x2ac890f4: return "_ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERb"; case 0x2adccb1a: return "_ZNKSt7_MpunctIcE14do_frac_digitsEv"; case 0x2af79bd6: return "_ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE5_IputES3_RSt8ios_basecPcj"; case 0x2b05b95a: return "_ZNKSt7_MpunctIcE11do_groupingEv"; case 0x2b88f26e: return "_ZNSt15basic_streambufIwSt11char_traitsIwEED0Ev"; case 0x2c241d13: return "_ZnajjRKSt9nothrow_t"; case 0x2c6ce396: return "_ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERd"; case 0x2cf8ea50: return "_ZNKSt7codecvtIwcSt9_MbstatetE16do_always_noconvEv"; case 0x2d489b47: return "_ZNSt15basic_streambufIcSt11char_traitsIcEE9underflowEv"; case 0x2d50650f: return "_ZSt9use_facetISt10moneypunctIcLb1EEERKT_RKSt6locale"; case 0x2d8be7e8: return "_ZNKSt9exception6_RaiseEv"; case 0x2daa5a42: return "_ZTv0_n12_NSt9strstreamD1Ev"; case 0x2e2b80c8: return "_ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERPv"; case 0x2e84ebb3: return "_ZNSt8_LocinfoC1EiPKc"; case 0x2eb5c13a: return "_ZNSt13basic_filebufIcSt11char_traitsIcEE4syncEv"; case 0x2f29da90: return "_ZNSt12strstreambuf5_TidyEv"; case 0x2ff8d101: return "_ZNSt6localeC1ERKS_S1_i"; case 0x30195cf5: return "_ZNKSt8numpunctIcE11do_groupingEv"; case 0x30ce43d4: return "_ZNSt8numpunctIcED0Ev"; case 0x30e297ea: return "_ZNSt7_MpunctIcEC2ERKSt8_Locinfojb"; case 0x316b7a34: return "_ZNSt9exceptionD1Ev"; case 0x31a81476: return "_ZdlPvj"; case 0x31b3e5cc: return "_ZNSs5_TidyEbj"; case 0x3286b855: return "_ZNSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE7_GetcatEPPKNSt6locale5facetE"; case 0x332f8409: return "_ZNSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE7_GetcatEPPKNSt6locale5facetE"; case 0x336e904e: return "_ZNSdD0Ev"; case 0x33e04d8e: return "_ZNKSt7collateIwE12do_transformEPKwS2_"; case 0x34b63588: return "_ZNKSt5ctypeIwE9_DonarrowEwc"; case 0x34edd72b: return "_ZNSt10moneypunctIwLb0EED1Ev"; case 0x360f8a4f: return "_ZNSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED1Ev"; case 0x3697bbd3: return "_ZNSt8ios_base5_InitEv"; case 0x36e7826a: return "_ZNSt7collateIcED1Ev"; case 0x3783acfa: return "_ZTv0_n12_NSt13basic_istreamIwSt11char_traitsIwEED1Ev"; case 0x38783beb: return "_ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE11do_get_yearES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateEPSt2tm"; case 0x3933645f: return "_ZNKSt7_MpunctIwE14do_frac_digitsEv"; case 0x3937f2f8: return "_ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_RSt8ios_basecm"; case 0x39775ce9: return "_ZNSt11logic_errorD2Ev"; case 0x3ad12959: return "_ZNSt9basic_iosIcSt11char_traitsIcEE4initEPSt15basic_streambufIcS1_Eb"; case 0x3bac19dc: return "_ZThn8_NSdD0Ev"; case 0x3bda45a7: return "_ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_RSt8ios_basecy"; case 0x3d32a7f4: return "_ZNSt6localeC2EPKci"; case 0x3da21a90: return "_ZNSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED1Ev"; case 0x3e18602a: return "_ZNKSt12codecvt_base13do_max_lengthEv"; case 0x3eeb7167: return "_ZNSt13basic_filebufIcSt11char_traitsIcEE7_UnlockEv"; case 0x3f6a6e68: return "_ZNSt13basic_filebufIcSt11char_traitsIcEE9_EndwriteEv"; case 0x3f9cb259: return "_ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERl"; case 0x3fc2324d: return "_ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_RSt8ios_basecd"; case 0x409409af: return "_ZNSt13basic_filebufIcSt11char_traitsIcEE6setbufEPci"; case 0x411b923e: return "_ZSt9use_facetISt8numpunctIcEERKT_RKSt6locale"; case 0x4148e091: return "_ZNKSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE8_GetmfldERS3_S5_bRSt8ios_base"; case 0x417f47af: return "_ZSt9use_facetISt10moneypunctIcLb0EEERKT_RKSt6locale"; case 0x42c40b2f: return "_ZNSt12out_of_rangeD0Ev"; case 0x45010630: return "_ZNSt10moneypunctIcLb1EED0Ev"; case 0x4520d6a2: return "_ZNSt13basic_filebufIcSt11char_traitsIcEE5_LockEv"; case 0x46034d2e: return "_ZNSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED0Ev"; case 0x460e5cb7: return "_ZNSt13basic_filebufIcSt11char_traitsIcEE7seekposESt4fposISt9_MbstatetENSt5_IosbIiE9_OpenmodeE"; case 0x4761783a: return "_ZNSt13basic_filebufIcSt11char_traitsIcEE5imbueERKSt6locale"; case 0x47aab531: return "_ZNSt7_MpunctIcED0Ev"; case 0x47e5c318: return "_ZNSt8_LocinfoD2Ev"; case 0x4827e6be: return "_ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERe"; case 0x48d101ef: return "_ZNKSt8ios_base7failure8_DoraiseEv"; case 0x493212da: return "_ZNSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED0Ev"; case 0x4952490e: return "_ZNSt8ios_base5clearENSt5_IosbIiE8_IostateEb"; case 0x496c6f50: return "_Getctyptab"; case 0x49d9ddaf: return "_ZNKSt8numpunctIwE12do_falsenameEv"; case 0x49da8c5f: return "_ZNKSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_bRSt8ios_baseRNSt5_IosbIiE8_IostateERe"; case 0x49f7d434: return "_ZNSt8numpunctIwED0Ev"; case 0x4a40969d: return "_Fac_tidy"; case 0x4a799510: return "_ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERl"; case 0x4aec14d5: return "_ZNSt12length_errorD1Ev"; case 0x4aff73cc: return "_ZSt14_Debug_messagePKcS0_"; case 0x4b1ad744: return "_ZdaPvjRKSt9nothrow_t"; case 0x4b5a8abc: return "_ZNSt13basic_filebufIwSt11char_traitsIwEE6setbufEPwi"; case 0x4bc193c7: return "_ZNSt10ostrstreamC2EPciNSt5_IosbIiE9_OpenmodeE"; case 0x4bda379a: return "_ZNSt8ios_base4InitC1Ev"; case 0x4bee7ba9: return "_ZNSt8ios_base7failureD1Ev"; case 0x4cb35e7d: return "_ZNSt9time_baseD1Ev"; case 0x4cdab0ba: return "_ZNSt7_MpunctIwED0Ev"; case 0x4daf3fcf: return "_ZNSt15basic_streambufIcSt11char_traitsIcEE6xsgetnEPci"; case 0x4e34cf83: return "_ZNSbIwSt11char_traitsIwESaIwEE5_GrowEjb"; case 0x4e5cd916: return "_ZNKSt8numpunctIwE11do_groupingEv"; case 0x4ec89bf8: return "_ZNSt7collateIcE7_GetcatEPPKNSt6locale5facetE"; case 0x4ef0eb8e: return "_ZNSt12strstreambuf7seekoffElNSt5_IosbIiE8_SeekdirENS1_9_OpenmodeE"; case 0x4fde96de: return "_ZNSt15basic_streambufIwSt11char_traitsIwEED1Ev"; case 0x5015b8d3: return "_ZSt7_FiopenPKwNSt5_IosbIiE9_OpenmodeEi"; case 0x50b34c09: return "_ZNKSt9exception4whatEv"; case 0x5102ac61: return "_ZNKSt7_MpunctIwE14do_curr_symbolEv"; case 0x5119680b: return "_ZNSt8_LocinfoD1Ev"; case 0x5127dcd1: return "_ZNSsC1Ev"; case 0x522b0457: return "_ZNSt10istrstreamD0Ev"; case 0x52330fbd: return "_ZNSt13runtime_errorD0Ev"; case 0x5298ef8e: return "_ZdaPvRKSt9nothrow_t"; case 0x5333bdc9: return "_ZNKSt13runtime_error4whatEv"; case 0x53693d40: return "_ZSt11setiosflagsNSt5_IosbIiE9_FmtflagsE"; case 0x5438d7d8: return "_ZdaPvS_"; case 0x550255f7: return "_ZNKSt7codecvtIccSt9_MbstatetE10do_unshiftERS0_PcS3_RS3_"; case 0x55481e6f: return "_ZNSt15basic_streambufIwSt11char_traitsIwEE9showmanycEv"; case 0x5560c79e: return "_ZNSdD1Ev"; case 0x55b3ebf2: return "_ZNSt9strstreamC2EPciNSt5_IosbIiE9_OpenmodeE"; case 0x563fd2be: return "_ZNSt6localeC2ERKS_PKci"; case 0x5656ccff: return "_ZNKSt7collateIcE10do_compareEPKcS2_S2_S2_"; case 0x56d3d4f0: return "_ZNSt9bad_allocD1Ev"; case 0x56fac416: return "_ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERe"; case 0x577c2695: return "_ZNSt6_Mutex5_LockEv"; case 0x57ef52f0: return "_ZNSt15basic_streambufIwSt11char_traitsIwEE7_UnlockEv"; case 0x581fc95b: return "_ZNSt5ctypeIcED0Ev"; case 0x58fad1c1: return "_ZNSt5ctypeIwE7_GetcatEPPKNSt6locale5facetE"; case 0x5949408e: return "_ZNSt8ios_base5_TidyEv"; case 0x59c77266: return "_ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERd"; case 0x5a3ad4bd: return "_ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERf"; case 0x5a5a9107: return "_ZNSt6localeC2Ev"; case 0x5a6e4e50: return "_ZNSt6locale7_Locimp9_MakewlocERKSt8_LocinfoiPS0_PKS_"; case 0x5a898327: return "_ZNSt15basic_streambufIwSt11char_traitsIwEE7seekoffElNSt5_IosbIiE8_SeekdirENS4_9_OpenmodeE"; case 0x5adf9060: return "_ZNKSt5ctypeIcE8do_widenEPKcS2_Pc"; case 0x5b71b85d: return "_ZNSt19istreambuf_iteratorIwSt11char_traitsIwEE4_IncEv"; case 0x5c15972f: return "_ZNSt13basic_ostreamIwSt11char_traitsIwEED1Ev"; case 0x5ca98e4a: return "_ZNSt13basic_filebufIcSt11char_traitsIcEED0Ev"; case 0x5e1f2d37: return "_ZNKSt9exception8_DoraiseEv"; case 0x5e55ab8c: return "_ZSt10_GetloctxtIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEiRT0_S5_jPKT_"; case 0x5ed4fb7a: return "_ZTv0_n12_NSt13basic_istreamIwSt11char_traitsIwEED0Ev"; case 0x604fec95: return "_ZNSt12out_of_rangeD1Ev"; case 0x605131d5: return "_ZNSt8_LocinfoC1EPKc"; case 0x6051c802: return "_ZNSt7codecvtIccSt9_MbstatetED0Ev"; case 0x608abbb5: return "_ZNSt13basic_filebufIcSt11char_traitsIcEE5uflowEv"; case 0x61119152: return "_ZNSt6locale5_InitEv"; case 0x61248c80: return "_ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE13do_date_orderEv"; case 0x61a23009: return "_ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE5_FputES3_RSt8ios_basewPKcjjjj"; case 0x61f55c30: return "_ZNKSt5ctypeIcE8do_widenEc"; case 0x629b8531: return "_ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE5_IputES3_RSt8ios_basewPcj"; case 0x62d6bf82: return "_ZNSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED1Ev"; case 0x62f52bb0: return "_ZNSt7_MpunctIwEC2ERKSt8_Locinfojb"; case 0x635166c3: return "_ZNKSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_bRSt8ios_basewe"; case 0x63a2b2cc: return "_ZNKSt8messagesIcE8do_closeEi"; case 0x643235cf: return "_ZNSt9strstreamD1Ev"; case 0x6437a975: return "_ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERt"; case 0x643e67f4: return "_ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERPv"; case 0x6463d9ea: return "_ZNKSt8messagesIwE6do_getEiiiRKSbIwSt11char_traitsIwESaIwEE"; case 0x64ce0374: return "_ZNSbIwSt11char_traitsIwESaIwEE7replaceEjjPKwj"; case 0x64ed868e: return "_ZSt9terminatev"; case 0x6500d2d5: return "_ZNSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE7_GetcatEPPKNSt6locale5facetE"; case 0x65f19631: return "_ZTv0_n12_NSiD0Ev"; case 0x660882e8: return "_ZNSt6localeC1Ev"; case 0x667d741b: return "_ZNSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED0Ev"; case 0x668b31c6: return "_ZNSs5_GrowEjb"; case 0x66f39adb: return "_ZNSt8numpunctIwED1Ev"; case 0x66fcc6f4: return "_ZNSt8messagesIwE7_GetcatEPPKNSt6locale5facetE"; case 0x67948307: return "_ZNKSt7codecvtIwcSt9_MbstatetE9do_lengthERKS0_PKcS5_j"; case 0x67c09257: return "_ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERx"; case 0x67edde2f: return "_ZdlPvjRKSt9nothrow_t"; case 0x67fbabf0: return "_ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14do_get_weekdayES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateEPSt2tm"; case 0x683ca70a: return "_ZNKSt12_String_base5_XlenEv"; case 0x6863452e: return "_ZNSt6locale5facetD1Ev"; case 0x6929318d: return "_ZNSs6assignERKSsjj"; case 0x696b47f2: return "_ZNKSt7_MpunctIcE13do_neg_formatEv"; case 0x6a6b90c9: return "_ZSt15set_new_handlerPFvvE"; case 0x6adc320a: return "_ZNSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED0Ev"; case 0x6b493669: return "_ZSt7setbasei"; case 0x6b913d53: return "_ZNSs6insertEjjc"; case 0x6c19db26: return "_ZNKSt7_MpunctIcE16do_thousands_sepEv"; case 0x6c386f54: return "_ZNSt15basic_streambufIcSt11char_traitsIcEE7seekposESt4fposISt9_MbstatetENSt5_IosbIiE9_OpenmodeE"; case 0x6c8dc459: return "_ZNKSt8bad_cast4whatEv"; case 0x6cb1a335: return "_ZNSt6locale5facet7_DecrefEv"; case 0x6d483b7a: return "_ZNSt12strstreambuf9pbackfailEi"; case 0x6daed882: return "_ZNSt8ios_baseD0Ev"; case 0x6dbbb9de: return "_ZNKSt5ctypeIcE10do_toupperEc"; case 0x6e0bf85d: return "_ZTv0_n12_NSt10istrstreamD1Ev"; case 0x6e4a84c1: return "_ZNSt5ctypeIcED1Ev"; case 0x6e61426d: return "_ZNSt13basic_filebufIwSt11char_traitsIwEED1Ev"; case 0x6f1945fc: return "_ZNSoD1Ev"; case 0x6fe060a0: return "_ZNSt15basic_streambufIwSt11char_traitsIwEE7seekposESt4fposISt9_MbstatetENSt5_IosbIiE9_OpenmodeE"; case 0x7008e209: return "_ZNKSt5ctypeIwE10do_toupperEw"; case 0x708cf940: return "_ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE11do_get_dateES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateEPSt2tm"; case 0x709ab035: return "_ZNSt15basic_streambufIcSt11char_traitsIcEE6setbufEPci"; case 0x7142ad20: return "_ZNKSt7_MpunctIcE16do_decimal_pointEv"; case 0x718977c5: return "_ZNSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE7_GetcatEPPKNSt6locale5facetE"; case 0x736c5f22: return "_ZNSoD0Ev"; case 0x74a39b4f: return "_ZThn8_NSt9strstreamD1Ev"; case 0x753c71db: return "_ZNKSt7_MpunctIcE13do_pos_formatEv"; case 0x75824de0: return "_ZNSt6_MutexC1Ev"; case 0x75975eb4: return "_ZNSsC1EPKc"; case 0x75a0617c: return "_ZNKSt7_MpunctIwE11do_groupingEv"; case 0x764ceaa4: return "_ZNSt10ostrstreamD0Ev"; case 0x767a4e70: return "_ZNSt6_WinitC2Ev"; case 0x76db6974: return "_ZNSt7codecvtIwcSt9_MbstatetED0Ev"; case 0x76de9b0f: return "_ZNSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED1Ev"; case 0x76e846b2: return "_ZNSt15basic_streambufIwSt11char_traitsIwEE6xsputnEPKwi"; case 0x77c1d3a9: return "_ZNKSt13runtime_error8_DoraiseEv"; case 0x7882e64e: return "_ZNSt7collateIwED0Ev"; case 0x78a142d0: return "_ZSt7_FiopenPKcNSt5_IosbIiE9_OpenmodeEi"; case 0x79a415f8: return "_ZNSbIwSt11char_traitsIwESaIwEE6insertEjjw"; case 0x79ad3575: return "_ZTv0_n12_NSoD1Ev"; case 0x7a180518: return "_ZNSt10money_baseD0Ev"; case 0x7b1db41e: return "_ZNSt6locale7_AddfacEPNS_5facetEjj"; case 0x7b5fce95: return "_ZNSt15basic_streambufIwSt11char_traitsIwEE6setbufEPwi"; case 0x7c391411: return "_ZNSt10moneypunctIcLb0EED0Ev"; case 0x7cdbda48: return "_ZNSt7collateIcED0Ev"; case 0x7d23aa12: return "_ZNSt10moneypunctIwLb0EE7_GetcatEPPKNSt6locale5facetE"; case 0x7da7fdb1: return "_ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_RSt8ios_basewy"; case 0x7e7ac30e: return "_ZNSt6locale5emptyEv"; case 0x7ebad3f0: return "_ZNKSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE8_PutmfldES3_bRSt8ios_basewbSbIwS2_SaIwEE"; case 0x7fe08910: return "_ZNSt10moneypunctIcLb0EE7_GetcatEPPKNSt6locale5facetE"; case 0x7ff35597: return "_ZNSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE7_GetcatEPPKNSt6locale5facetE"; case 0x8006c4ec: return "_ZNSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED0Ev"; case 0x8044f596: return "_ZNSt13basic_filebufIwSt11char_traitsIwEE5_LockEv"; case 0x81027e75: return "_ZNSt7_MpunctIwE5_InitERKSt8_Locinfo"; case 0x816aebc3: return "_ZNSt9bad_allocD0Ev"; case 0x823759d3: return "_ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_RSt8ios_basewl"; case 0x8341b529: return "_ZNSt13basic_filebufIwSt11char_traitsIwEE8overflowEi"; case 0x83b2cc6f: return "_Znwj"; case 0x83bca135: return "_ZNKSt11logic_error4whatEv"; case 0x83cba890: return "_ZNSt6locale5facetD2Ev"; case 0x84023c03: return "_ZSt12setprecisioni"; case 0x854bc7c7: return "_ZNSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED0Ev"; case 0x85b3c6da: return "_ZNKSt8_Locinfo7_GetcvtEv"; case 0x85ba062f: return "_ZNSt15basic_streambufIcSt11char_traitsIcEE7_UnlockEv"; case 0x867956a4: return "_ZNSt9basic_iosIcSt11char_traitsIcEED1Ev"; case 0x868531a3: return "_ZdaPvj"; case 0x86c66cfc: return "_ZNSsD1Ev"; case 0x871506ea: return "_ZNSbIwSt11char_traitsIwESaIwEE6assignERKS2_jj"; case 0x8729f617: return "_ZNSt10ostrstreamC1EPciNSt5_IosbIiE9_OpenmodeE"; case 0x87b1f5eb: return "_ZNSt9exceptionD0Ev"; case 0x88052736: return "_ZTv0_n12_NSt10ostrstreamD0Ev"; case 0x883e1f16: return "_ZNKSt11logic_error8_DoraiseEv"; case 0x884b021b: return "_ZNKSt5ctypeIwE8_DowidenEc"; case 0x8a665143: return "_ZNSt8_Locinfo8_AddcatsEiPKc"; case 0x8a85d688: return "_ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_RSt8ios_basewx"; case 0x8bfd4395: return "_ZNSt9basic_iosIwSt11char_traitsIwEE4initEPSt15basic_streambufIwS1_Eb"; case 0x8c2e6d06: return "_ZNKSt8messagesIwE7do_openERKSsRKSt6locale"; case 0x8c3afd4c: return "_ZSt10unexpectedv"; case 0x8c6b8d39: return "_ZNSt13basic_filebufIcSt11char_traitsIcEED1Ev"; case 0x8cda1f3b: return "_ZSt10_GetloctxtIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEiRT0_S5_jPKT_"; case 0x8d4e266b: return "_ZNKSt8_Locinfo9_GetctypeEv"; case 0x8fa764f3: return "_ZNSt6_WinitC1Ev"; case 0x900d1fa4: return "_ZNSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED0Ev"; case 0x903afa37: return "_ZTv0_n12_NSt13basic_ostreamIwSt11char_traitsIwEED0Ev"; case 0x904dbd32: return "_ZNSt6locale7_LocimpC1Eb"; case 0x9111ec36: return "_ZNSt13messages_baseD0Ev"; case 0x91959ed6: return "_ZNKSt5ctypeIcE9do_narrowEcc"; case 0x91b0e37e: return "_ZSt14set_unexpectedPFvvE"; case 0x9268d6e7: return "_ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERj"; case 0x928fbe36: return "_ZTv0_n12_NSdD1Ev"; case 0x93c638e9: return "_ZNSt19istreambuf_iteratorIwSt11char_traitsIwEE5_PeekEv"; case 0x94c49383: return "_ZdlPvS_"; case 0x94fa1f5b: return "_ZNSt15basic_streambufIwSt11char_traitsIwEE5uflowEv"; case 0x95082493: return "_ZNKSt8messagesIcE6do_getEiiiRKSs"; case 0x95b43c9d: return "_ZNSt6locale7_LocimpD2Ev"; case 0x96634e42: return "_ZNKSt9bad_alloc4whatEv"; case 0x96bc2578: return "_Znajj"; case 0x97911f5f: return "_ZNSt15basic_streambufIcSt11char_traitsIcEE5uflowEv"; case 0x984ce3d7: return "_ZNSt8numpunctIcED1Ev"; case 0x9891bf45: return "_ZNKSt7_MpunctIwE16do_thousands_sepEv"; case 0x9a194306: return "_ZNSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE5_InitERKSt8_Locinfo"; case 0x9a449047: return "_ZNSt7_MpunctIwEC2Ejb"; case 0x9aa7a8b3: return "_ZNSt10istrstreamD2Ev"; case 0x9afa5d71: return "_ZNSt10money_baseD2Ev"; case 0x9b5358f9: return "_ZNKSt7_MpunctIcE16do_positive_signEv"; case 0x9c40d1f9: return "_ZNKSt8numpunctIwE16do_decimal_pointEv"; case 0x9c486668: return "_ZNSt6locale7_Locimp9_MakexlocERKSt8_LocinfoiPS0_PKS_"; case 0x9cb73ee0: return "_ZSt6_ThrowRKSt9exception"; case 0x9cfc0eaf: return "_ZNSiD1Ev"; case 0x9d6a8167: return "_ZNSbIwSt11char_traitsIwESaIwEE5eraseEjj"; case 0x9dbbe07d: return "_ZNKSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE8_GetmfldERS3_S5_bRSt8ios_base"; case 0x9dc040e4: return "_Deletegloballocale"; case 0x9dcb4bcb: return "_ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14do_get_weekdayES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateEPSt2tm"; case 0x9e741d47: return "_ZNSsC1ERKSs"; case 0x9ec88ae6: return "_ZNKSt5ctypeIwE10do_tolowerEPwPKw"; case 0x9ef60bf3: return "_ZNKSt5ctypeIwE10do_tolowerEw"; case 0x9f528cd3: return "_ZNKSt7codecvtIccSt9_MbstatetE6do_outERS0_PKcS4_RS4_PcS6_RS6_"; case 0x9f959451: return "_ZNSt13basic_istreamIwSt11char_traitsIwEED1Ev"; case 0x9facb533: return "_ZNSt13messages_baseD1Ev"; case 0x9fd2eea9: return "_ZNSt8_LocinfoC2EiPKc"; case 0xa1c6fc55: return "_ZNSt13basic_filebufIwSt11char_traitsIwEE7_UnlockEv"; case 0xa1de25c2: return "_ZTv0_n12_NSt10ostrstreamD1Ev"; case 0xa22d5dda: return "_ZNSt8messagesIcED0Ev"; case 0xa2fd0ec5: return "_ZNSt13basic_filebufIcSt11char_traitsIcEE9pbackfailEi"; case 0xa35033e8: return "_ZNKSt5ctypeIwE8do_widenEPKcS2_Pw"; case 0xa37c3e51: return "_ZNKSt5ctypeIwE8do_widenEc"; case 0xa3f5c3b2: return "_ZNSt9strstreamD2Ev"; case 0xa433147a: return "_ZNSt8messagesIcE7_GetcatEPPKNSt6locale5facetE"; case 0xa464c70a: return "_ZNKSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_bRSt8ios_basewRKSbIwS2_SaIwEE"; case 0xa4f6a919: return "_ZThn8_NSdD1Ev"; case 0xa5306edb: return "_ZNSt10moneypunctIwLb1EED1Ev"; case 0xa562099c: return "_ZNSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED1Ev"; case 0xa700bc7d: return "_ZNKSt7codecvtIwcSt9_MbstatetE6do_outERS0_PKwS4_RS4_PcS6_RS6_"; case 0xa74e5a27: return "_ZNKSt6localeeqERKS_"; case 0xa79c4516: return "_ZNSt15basic_streambufIcSt11char_traitsIcEED0Ev"; case 0xa8ece2e0: return "_ZSt9use_facetISt10moneypunctIwLb0EEERKT_RKSt6locale"; case 0xa8f64fdb: return "_ZNKSt5ctypeIcE10do_tolowerEPcPKc"; case 0xa90c4ff2: return "_ZNSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE7_GetcatEPPKNSt6locale5facetE"; case 0xa9116516: return "_ZNSs6appendEjc"; case 0xa94be0fa: return "_ZNSt13basic_filebufIwSt11char_traitsIwEE9_EndwriteEv"; case 0xa957adcc: return "_ZNKSt5ctypeIcE9do_narrowEPKcS2_cPc"; case 0xa9e5bb16: return "_ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERm"; case 0xaa520d9f: return "_ZNSt6locale7_Locimp7_AddfacEPNS_5facetEj"; case 0xaae64804: return "_ZNSt8ios_base8_FindarrEi"; case 0xab211d97: return "_ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_RSt8ios_basecb"; case 0xab5832fd: return "_ZNSt10money_baseD1Ev"; case 0xabd92bcc: return "_ZNSt7collateIwE7_GetcatEPPKNSt6locale5facetE"; case 0xabdc2b49: return "_ZNSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE7_GetcatEPPKNSt6locale5facetE"; case 0xac6c23c0: return "_ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERy"; case 0xad3777a2: return "_ZNSt13basic_filebufIcSt11char_traitsIcEE8overflowEi"; case 0xad382a99: return "_ZdlPvRKSt9nothrow_t"; case 0xad6d839f: return "_ZNSt12codecvt_baseD0Ev"; case 0xad6dbac2: return "_ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERm"; case 0xadc2263b: return "_ZNSt15basic_streambufIcSt11char_traitsIcEE6xsputnEPKci"; case 0xae7d042f: return "_ZNSt7codecvtIwcSt9_MbstatetE7_GetcatEPPKNSt6locale5facetE"; case 0xaea59ceb: return "_ZNSt10ctype_baseD0Ev"; case 0xb0c185b7: return "_ZNSt10moneypunctIcLb1EE7_GetcatEPPKNSt6locale5facetE"; case 0xb0e7c2f3: return "_ZNSiD0Ev"; case 0xb1550b3c: return "_ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_RSt8ios_basecx"; case 0xb1ac1fa3: return "_ZNSt15basic_streambufIwSt11char_traitsIwEE6xsgetnEPwi"; case 0xb1d696f7: return "_ZNKSt8numpunctIcE12do_falsenameEv"; case 0xb326f699: return "_ZNKSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_bRSt8ios_basece"; case 0xb33ef042: return "_ZNSt8bad_castD0Ev"; case 0xb3f05af3: return "_ZNKSt7collateIcE12do_transformEPKcS2_"; case 0xb4352488: return "_ZNKSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_bRSt8ios_basecRKSs"; case 0xb4a8791f: return "_ZNSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED1Ev"; case 0xb509ab64: return "_ZNSt10moneypunctIcLb1EED1Ev"; case 0xb53fa02e: return "_ZnwjjRKSt9nothrow_t"; case 0xb6a4d760: return "_ZNSt13basic_filebufIwSt11char_traitsIwEE7seekposESt4fposISt9_MbstatetENSt5_IosbIiE9_OpenmodeE"; case 0xb6a7ba7a: return "_ZNSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED0Ev"; case 0xb74f7b8f: return "_ZNSt6locale7_LocimpC2ERKS0_"; case 0xb7dcbfdd: return "__Setgloballocale"; case 0xb80ca215: return "_ZNSt13basic_filebufIwSt11char_traitsIwEE5imbueERKSt6locale"; case 0xb87c4b43: return "_ZNSt12strstreambuf6freezeEb"; case 0xb8836b50: return "_ZNSt9exception18_Set_raise_handlerEPFvRKS_E"; case 0xb8ec13a5: return "_ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_RSt8ios_basewb"; case 0xb9a2282d: return "_ZNSt15basic_streambufIcSt11char_traitsIcEE8overflowEi"; case 0xba0b6300: return "_ZNSt9basic_iosIwSt11char_traitsIwEED1Ev"; case 0xba85ce08: return "_ZNSt12strstreambufD2Ev"; case 0xbaa15803: return "_ZSt4setwi"; case 0xbb4599c5: return "_ZNSt11logic_errorD1Ev"; case 0xbb712718: return "_ZnwjRKSt9nothrow_t"; case 0xbc5ad91c: return "_ZNKSt7collateIwE10do_compareEPKwS2_S2_S2_"; case 0xbd140e12: return "_ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE11do_get_timeES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateEPSt2tm"; case 0xbd316983: return "_ZNSt8numpunctIcE5_InitERKSt8_Locinfo"; case 0xbd35830b: return "_ZdaPvjS_"; case 0xbd58ea5a: return "_ZNSt19ostreambuf_iteratorIwSt11char_traitsIwEEaSEw"; case 0xbda26024: return "_ZNSt9strstreamD0Ev"; case 0xbf9c3609: return "_ZNKSt5ctypeIwE10do_toupperEPwPKw"; case 0xc013acd8: return "_ZNSt8ios_base8_CallfnsENS_5eventE"; case 0xc06a4cd8: return "_ZNSt7_MpunctIwED1Ev"; case 0xc22cebd8: return "_ZNSt8messagesIwED1Ev"; case 0xc3d24eb3: return "_ZNSt9basic_iosIwSt11char_traitsIwEED0Ev"; case 0xc41d676d: return "_ZNSt9time_baseD2Ev"; case 0xc4c7993b: return "_ZNSbIwSt11char_traitsIwESaIwEE5_TidyEbj"; case 0xc53ab1c0: return "_ZNSt8numpunctIwE5_InitERKSt8_Locinfo"; case 0xc5977986: return "_ZNSt8ios_base7_AddstdEv"; case 0xc612a38e: return "_ZNSt6_WinitD1Ev"; case 0xc6e09225: return "_ZNSt13basic_filebufIwSt11char_traitsIwEE5_InitEPSt6_FiletNS2_7_InitflE"; case 0xc6ea0fd0: return "_ZNSt6locale7classicEv"; case 0xc6f18e84: return "_ZNKSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_bRSt8ios_baseRNSt5_IosbIiE8_IostateERSbIwS2_SaIwEE"; case 0xc79278ec: return "_ZNSt15basic_streambufIcSt11char_traitsIcEE5imbueERKSt6locale"; case 0xc7931798: return "_ZNKSt12_String_base5_XranEv"; case 0xc7d0ee0c: return "_ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE16do_get_monthnameES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateEPSt2tm"; case 0xc862f7c8: return "_ZNSt12strstreambuf8overflowEi"; case 0xcac83a05: return "_ZNSt6locale7_LocimpC2Eb"; case 0xcb7d00a4: return "_ZNSt6_WinitD2Ev"; case 0xcb82e0dc: return "_ZSt13set_terminatePFvvE"; case 0xcbe74ad3: return "_ZNKSt8messagesIwE8do_closeEi"; case 0xcc79f55d: return "_ZNKSt7_MpunctIcE16do_negative_signEv"; case 0xccf14bd5: return "_ZNSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE7_GetcatEPPKNSt6locale5facetE"; case 0xcd33ed4f: return "_ZNSbIwSt11char_traitsIwESaIwEEC1Ev"; case 0xcdafdf19: return "_ZNSt15basic_streambufIcSt11char_traitsIcEE9showmanycEv"; case 0xce653b6c: return "_ZNSt6_MutexC2Ev"; case 0xce6705c3: return "_ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE8_GetifldEPcRS3_S6_NSt5_IosbIiE9_FmtflagsERKSt6locale"; case 0xce8c6abc: return "_ZNSt8ios_base4InitC2Ev"; case 0xcf9b4d80: return "_ZNSt10moneypunctIwLb1EED0Ev"; case 0xd05ea37c: return "_ZNKSt19istreambuf_iteratorIwSt11char_traitsIwEEdeEv"; case 0xd1b043b7: return "_ZSt10_MaklocchrIwET_cPS0_RKSt7_Cvtvec"; case 0xd1ee6195: return "_ZNKSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_RSt8ios_basecPKSt2tmcc"; case 0xd2f9d93d: return "_ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_RSt8ios_basewe"; case 0xd356aefd: return "_ZNSt6_Mutex7_UnlockEv"; case 0xd38f4018: return "_ZSt11_MaklocbyteIwEcT_RKSt7_Cvtvec"; case 0xd4838fbd: return "_ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_RSt8ios_basewm"; case 0xd4ba5b31: return "_ZNSt8_LocinfoC2EPKc"; case 0xd5244a29: return "_ZNSt10moneypunctIwLb1EE7_GetcatEPPKNSt6locale5facetE"; case 0xd5c5ee3d: return "_ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERj"; case 0xd6ee1090: return "_ZNKSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_bRSt8ios_baseRNSt5_IosbIiE8_IostateERe"; case 0xd73321ed: return "_ZNSt10ostrstreamD1Ev"; case 0xd76b2e07: return "_ZNKSt7codecvtIwcSt9_MbstatetE13do_max_lengthEv"; case 0xd78efcc3: return "_ZNSt12strstreambuf9underflowEv"; case 0xd7bc220d: return "_ZNSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED1Ev"; case 0xd7d92e51: return "_ZNSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED0Ev"; case 0xd830252c: return "_ZNSt12strstreambuf5_InitEiPcS0_i"; case 0xd84b3689: return "_ZdlPv"; case 0xd8aeb94a: return "_ZNSt8messagesIcED1Ev"; case 0xd8b23008: return "_ZNSt8ios_baseD2Ev"; case 0xd93d52b1: return "_ZNSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED1Ev"; case 0xd9a12c5e: return "_ZNKSt5ctypeIcE10do_toupperEPcPKc"; case 0xd9d8af82: return "_ZNSt15basic_streambufIwSt11char_traitsIwEE8overflowEi"; case 0xda1088ce: return "_ZNSt6locale5facet7_IncrefEv"; case 0xda1b159a: return "_ZNSt6_MutexD2Ev"; case 0xda5469b3: return "_ZNSt9time_baseD0Ev"; case 0xdab0a910: return "_ZNSt15basic_streambufIwSt11char_traitsIwEE9pbackfailEi"; case 0xdaf3996f: return "_ZNSt6locale6globalERKS_"; case 0xdb5eae26: return "_ZNSt13basic_filebufIcSt11char_traitsIcEE5_InitEPSt6_FiletNS2_7_InitflE"; case 0xdc0c889c: return "_ZNSt8ios_base7copyfmtERKS_"; case 0xdc4d7540: return "_ZNSt5ctypeIwED1Ev"; case 0xdc65ab00: return "_ZNSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED1Ev"; case 0xdc981b5f: return "_ZNSt13basic_filebufIcSt11char_traitsIcEE9underflowEv"; case 0xdd8b1d47: return "_ZNSs5eraseEjj"; case 0xdefe3230: return "_ZNSt8ios_baseD1Ev"; case 0xdf1e09e1: return "_ZNKSt5ctypeIwE9do_narrowEPKwS2_cPc"; case 0xdf7edb4d: return "_ZSt9use_facetISt10moneypunctIwLb1EEERKT_RKSt6locale"; case 0xe177fd02: return "_ZNSt7_MpunctIcED2Ev"; case 0xe196beab: return "_ZNSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED0Ev"; case 0xe206c08f: return "_ZNSt13basic_filebufIwSt11char_traitsIwEED0Ev"; case 0xe2b2ac5a: return "_ZNSt6locale5facet9_RegisterEv"; case 0xe3edd790: return "_ZNSt8bad_castD1Ev"; case 0xe528a368: return "_ZNKSt7_MpunctIcE14do_curr_symbolEv"; case 0xe54f1fe0: return "_ZNKSt9bad_alloc8_DoraiseEv"; case 0xe5e1dcbc: return "_ZNSt15basic_streambufIwSt11char_traitsIwEE5imbueERKSt6locale"; case 0xe6547e35: return "_ZNSt8messagesIwED0Ev"; case 0xe667985a: return "_ZNSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED0Ev"; case 0xe75f6e21: return "_ZNKSt12length_error8_DoraiseEv"; case 0xe7d8449e: return "_ZdlPvjS_"; case 0xe82a422d: return "_ZNKSt8numpunctIwE11do_truenameEv"; case 0xe8691be5: return "_ZNSt5ctypeIwED0Ev"; case 0xe8c15f8a: return "_ZNSt7_MpunctIwED2Ev"; case 0xe9d7a4ae: return "_ZNKSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_RSt8ios_basewPKSt2tmcc"; case 0xeb76301c: return "_ZNSt15basic_streambufIcSt11char_traitsIcEE9pbackfailEi"; case 0xebd4b51d: return "_ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE11do_get_yearES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateEPSt2tm"; case 0xece969c0: return "_ZTv0_n12_NSt10istrstreamD0Ev"; case 0xed3da02b: return "_Znwjj"; case 0xee853baf: return "_ZNSt13basic_filebufIwSt11char_traitsIwEE4syncEv"; case 0xef62751c: return "_ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE13do_date_orderEv"; case 0xef6f90d8: return "_ZNKSt5ctypeIwE11do_scan_notEsPKwS2_"; case 0xef959a6d: return "_ZThn8_NSt9strstreamD0Ev"; case 0xf001a741: return "_ZNSt12strstreambufD1Ev"; case 0xf00401d2: return "_ZNSt9basic_iosIcSt11char_traitsIcEED0Ev"; case 0xf01deff8: return "_ZNKSt7codecvtIwcSt9_MbstatetE5do_inERS0_PKcS4_RS4_PwS6_RS6_"; case 0xf05df017: return "_ZNSt5ctypeIcE7_GetcatEPPKNSt6locale5facetE"; case 0xf127e816: return "_ZNSt10istrstreamD1Ev"; case 0xf1543f02: return "_ZNKSt8_Locinfo8_GetcollEv"; case 0xf1c86c92: return "_ZNKSt12out_of_range8_DoraiseEv"; case 0xf1cff87d: return "_ZNSt10ctype_baseD2Ev"; case 0xf2b9ab86: return "_ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERf"; case 0xf30d3407: return "_ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_RSt8ios_basewd"; case 0xf51dc289: return "_ZNSt7codecvtIccSt9_MbstatetED1Ev"; case 0xf53021e0: return "_ZNSt8bad_castC1Ev"; case 0xf5825c7d: return "_ZNSt7collateIwED1Ev"; case 0xf584de56: return "_ZNSt6locale7_Locimp8_MakelocERKSt8_LocinfoiPS0_PKS_"; case 0xf58e83a5: return "_Znaj"; case 0xf67a7e17: return "_ZNSt13basic_filebufIwSt11char_traitsIwEE5uflowEv"; case 0xf73f6afc: return "_ZNSt13basic_filebufIcSt11char_traitsIcEE7seekoffElNSt5_IosbIiE8_SeekdirENS4_9_OpenmodeE"; case 0xf7845d1c: return "_ZNSt7_MpunctIcED1Ev"; case 0xf7ba51fd: return "_ZNSt13basic_ostreamIwSt11char_traitsIwEED0Ev"; case 0xf83e8d95: return "_ZNKSt5ctypeIcE10do_tolowerEc"; case 0xf9ff46a1: return "_ZNSt13basic_filebufIwSt11char_traitsIwEE7seekoffElNSt5_IosbIiE8_SeekdirENS4_9_OpenmodeE"; case 0xfb36c588: return "_ZNSt9strstreamC1EPciNSt5_IosbIiE9_OpenmodeE"; case 0xfc563813: return "_ZNKSt7codecvtIccSt9_MbstatetE5do_inERS0_PKcS4_RS4_PcS6_RS6_"; case 0xfc825dda: return "_ZNSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE7_GetcatEPPKNSt6locale5facetE"; case 0xfe468b7a: return "_ZTv0_n12_NSdD0Ev"; case 0xfeb4107c: return "_ZNSt12codecvt_baseD2Ev"; case 0xfefd7d3a: return "_ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERy"; case 0xffaf3218: return "_ZTv0_n12_NSoD0Ev"; case 0xfff6ef55: return "_ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRNSt5_IosbIiE8_IostateERb"; } if (_module == "sysPrxForUser") switch (fnid) { case 0x02e20ec1: return "__sys_printf_basename"; case 0x0341bb97: return "sys_prx_get_module_id_by_address"; case 0x04e83d2c: return "_sys_strncmp"; case 0x052d29a6: return "_sys_strcat"; case 0x05c65656: return "sys_mempool_try_allocate_block"; case 0x0618936b: return "_sys_vsnprintf"; case 0x06574237: return "_sys_snprintf"; case 0x1573dc3f: return "sys_lwmutex_lock"; case 0x191f0c4a: return "_sys_strrchr"; case 0x1ae10b92: return "_sys_spu_printf_attach_thread"; case 0x1bc200f4: return "sys_lwmutex_unlock"; case 0x1c9a942c: return "sys_lwcond_destroy"; case 0x1ca525a2: return "_sys_strncasecmp"; case 0x1ed454ce: return "sys_spu_elf_get_information"; case 0x24a1ea07: return "sys_ppu_thread_create"; case 0x25596f51: return "sys_mempool_get_count"; case 0x26090058: return "sys_prx_load_module"; case 0x27427742: return "_sys_memmove"; case 0x2a6d9d51: return "sys_lwcond_wait"; case 0x2c847572: return "_sys_process_atexitspawn"; case 0x2d36462b: return "_sys_strlen"; case 0x2f85c0ef: return "sys_lwmutex_create"; case 0x3172759d: return "sys_game_get_temperature"; case 0x318f17e1: return "_sys_memalign"; case 0x350d454e: return "sys_ppu_thread_get_id"; case 0x35168520: return "_sys_heap_malloc"; case 0x3bd53c7b: return "_sys_memchr"; case 0x3dd4a957: return "sys_ppu_thread_register_atexit"; case 0x3ef17f8c: return "__sys_look_ctype_table"; case 0x409ad939: return "sys_mmapper_free_memory"; case 0x4232b0db: return "_sys_panic"; case 0x42b23552: return "sys_prx_register_library"; case 0x44265c08: return "_sys_heap_memalign"; case 0x459b4393: return "_sys_strcmp"; case 0x45fe2fce: return "_sys_spu_printf_initialize"; case 0x4643ba6e: return "sys_mmapper_unmap_memory"; case 0x4a071d98: return "sys_interrupt_thread_disestablish"; case 0x4b2f301a: return "_sys_tolower"; case 0x4bbf59d0: return "_sys_net_eurus_post_command"; case 0x4f7172c9: return "sys_process_is_stack"; case 0x5267cb35: return "sys_spinlock_unlock"; case 0x52aadadf: return "sys_lwcond_signal_to"; case 0x5fdfb2fe: return "_sys_spu_printf_detach_group"; case 0x608212fc: return "sys_mempool_free_block"; case 0x620e35a7: return "sys_game_get_system_sw_version"; case 0x637bdaae: return "_proc_spawn"; case 0x67f9fedb: return "sys_game_process_exitspawn2"; case 0x68b9b011: return "_sys_memset"; case 0x6bf66ea7: return "_sys_memcpy"; case 0x6e05231d: return "sys_game_watchdog_stop"; case 0x70258515: return "sys_mmapper_allocate_memory_from_container"; case 0x71a8472a: return "sys_get_random_number"; case 0x722a0254: return "sys_spinlock_trylock"; case 0x74311398: return "sys_prx_get_my_module_id"; case 0x744680a2: return "sys_initialize_tls"; case 0x7498887b: return "_sys_strchr"; case 0x791b9219: return "_sys_vsprintf"; case 0x80fb0c19: return "sys_prx_stop_module"; case 0x8461e528: return "sys_time_get_system_time"; case 0x84bb6774: return "sys_prx_get_module_info"; case 0x893305fa: return "sys_raw_spu_load"; case 0x8985b5b6: return "_sys_heap_stats"; case 0x8a2f159b: return "console_getc"; case 0x8a561d92: return "_sys_heap_free"; case 0x8bb03ab8: return "sys_game_board_storage_write"; case 0x8c2bb498: return "sys_spinlock_initialize"; case 0x8cfef376: return "__tls_get_addr"; case 0x96328741: return "_sys_process_at_Exitspawn"; case 0x996f7cf8: return "_sys_strncat"; case 0x99c88692: return "_sys_strcpy"; case 0x9d2ec4ff: return "sys_process_spawn"; case 0x9d3c0f81: return "sys_mempool_destroy"; case 0x9e0623b5: return "sys_game_watchdog_start"; case 0x9f04f7af: return "_sys_printf"; case 0x9f18429d: return "sys_prx_start_module"; case 0x9f950780: return "sys_game_get_rtc_status"; case 0xa146a143: return "sys_mempool_allocate_block"; case 0xa1f9eafe: return "_sys_sprintf"; case 0xa285139d: return "sys_spinlock_lock"; case 0xa2c7ba64: return "sys_prx_exitspawn_with_level"; case 0xa330ad84: return "sys_prx_load_module_on_memcontainer_by_fd"; case 0xa3e3be68: return "sys_ppu_thread_once"; case 0xa5d06bf0: return "sys_prx_get_module_list"; case 0xaa6d9bff: return "sys_prx_load_module_on_memcontainer"; case 0xac6fc404: return "sys_ppu_thread_unregister_atexit"; case 0xacad8fb6: return "sys_game_watchdog_clear"; case 0xaeb78725: return "sys_lwmutex_trylock"; case 0xaede4b03: return "_sys_heap_delete_heap"; case 0xaff080a4: return "sys_ppu_thread_exit"; case 0xb257540b: return "sys_mmapper_allocate_memory"; case 0xb27c8ae7: return "sys_prx_load_module_list"; case 0xb2fcf2c8: return "_sys_heap_create_heap"; case 0xb3bbcf2a: return "_sys_spu_printf_detach_thread"; case 0xb6369393: return "_sys_heap_get_total_free_size"; case 0xb995662e: return "sys_raw_spu_image_load"; case 0xb9bf1078: return "_sys_heap_alloc_heap_memory"; case 0xbab62b99: return "_sys_process_wait_for_game_process"; case 0xbdb18f83: return "_sys_malloc"; case 0xbf8ee5bb: return "sys_process_spawn_with_memory_budget"; case 0xc3476d0c: return "sys_lwmutex_destroy"; case 0xc4fd6121: return "_sys_qsort"; case 0xca9a60bf: return "sys_mempool_create"; case 0xd0ea47a7: return "sys_prx_unregister_library"; case 0xd1ad4570: return "_sys_heap_get_mallinfo"; case 0xd3039d4d: return "_sys_strncpy"; case 0xda0eb71a: return "sys_lwcond_create"; case 0xdb6b3250: return "sys_spu_elf_get_segments"; case 0xdc578057: return "sys_mmapper_map_memory"; case 0xdd0c1e09: return "_sys_spu_printf_attach_group"; case 0xdd3b27ac: return "_sys_spu_printf_finalize"; case 0xde2f9c85: return "sys_process_atexit"; case 0xe0998dbf: return "sys_prx_get_module_id_by_name"; case 0xe0da8efd: return "sys_spu_image_close"; case 0xe66bac36: return "console_putc"; case 0xe6f2c1e7: return "sys_process_exit"; case 0xe76964f5: return "sys_game_board_storage_read"; case 0xe7ef3a80: return "sys_prx_load_module_list_on_memcontainer"; case 0xe95ffa0a: return "sys_process_wait_for_game_process"; case 0xe9a1bd84: return "sys_lwcond_signal_all"; case 0xebe5f72f: return "sys_spu_image_import"; case 0xeef75113: return "_sys_toupper"; case 0xef68c17c: return "sys_prx_load_module_by_fd"; case 0xef87a695: return "sys_lwcond_signal"; case 0xf0aece0d: return "sys_prx_unload_module"; case 0xf57e1d6f: return "console_write"; case 0xf7f7fb20: return "_sys_free"; case 0xfa7f693d: return "_sys_vprintf"; case 0xfb5db080: return "_sys_memcmp"; case 0xfc52a7a9: return "sys_game_process_exitspawn"; case 0xfecc05b6: return "__sys_time"; } // Check registered functions if (const auto sm = ppu_module_manager::get_module(_module)) { const auto found = sm->functions.find(fnid); if (found != sm->functions.end()) { return found->second.name; } } return fmt::format("0x%08X", fnid); } // Get variable name by VNID extern std::string ppu_get_variable_name(const std::string& _module, u32 vnid) { if (_module.empty()) switch (vnid) { // these arent the actual hash, but its close enough case 0xd7f43016: return "module_info"; } // Check known FNIDs if (_module == "sys_libc") switch (vnid) { case 0x071928b0: return "_LNan"; case 0x0a331920: return "_Clocale"; case 0x0b2e15ed: return "_malloc_limit"; case 0x0fbc732d: return "_Zero"; case 0x17667744: return "_LInf"; case 0x210b2f6e: return "_FNan"; case 0x2418f6c0: return "__TT800"; case 0x2470d3bc: return "_Hugeval"; case 0x26a34f81: return "_Flt"; case 0x277a84bb: return "_Mutex_attr"; case 0x29e76a6d: return "_LXbig"; case 0x2cf8b5d1: return "_Wctrans"; case 0x32e56b1a: return "_Stdin"; case 0x3916a06a: return "_FILE_P_Head"; case 0x45ec2df6: return "_LEps"; case 0x529d4301: return "_Denorm"; case 0x57dbcf27: return "_Inf"; case 0x5ff11eb4: return "_FZero"; case 0x620967c9: return "_Mbcurmax"; case 0x6524499e: return "_FInf"; case 0x67d1406b: return "__ctype_ptr"; case 0x6a09df41: return "_LRteps"; case 0x73898db8: return "environ"; case 0x76628efb: return "_FSnan"; case 0x790b0082: return "_Xbig"; case 0x7aff3242: return "_Snan"; case 0x7bc88211: return "_Tolotab"; case 0x7f456af2: return "_Rteps"; case 0x81acf7c1: return "_LZero"; case 0x8f87ed0c: return "_Times"; case 0x92c43f6d: return "_Eps"; case 0x96e1e748: return "tls_mutex_attr"; case 0x985fc057: return "_Dbl"; case 0x9c8454c9: return "_LSnan"; case 0xaa860d4c: return "_Wctype"; case 0xb5b84f80: return "_LDenorm"; case 0xb5d2f53b: return "_Touptab"; case 0xb6f5f98c: return "_FRteps"; case 0xd59c193c: return "_Nan"; case 0xd698385d: return "_Ldbl"; case 0xd97b0687: return "_Ctype"; case 0xe0bc8d86: return "_Loctab"; case 0xeace53d6: return "_FDenorm"; case 0xeca056df: return "_Locale"; case 0xef25075b: return "_FXbig"; case 0xfb2bd688: return "_Stdout"; case 0xfefbe065: return "_Stderr"; case 0xff2f0cc7: return "_FEps"; } if (_module == "sys_libm") switch (vnid) { case 0x1cf745bc: return "_LErf_one"; case 0x2259ef96: return "_LGamma_big"; case 0x3acad7f1: return "_Erf_small"; case 0x3fb8629d: return "_FErf_one"; case 0x42eb9508: return "_Fenv0"; case 0x4af28f31: return "_FErf_small"; case 0xa8d907ff: return "_LErf_small"; case 0xad443e79: return "_Erf_one"; case 0xe9892674: return "_FGamma_big"; case 0xf39005fc: return "_Gamma_big"; } // Check registered variables if (const auto sm = ppu_module_manager::get_module(_module)) { const auto found = sm->variables.find(vnid); if (found != sm->variables.end()) { return found->second.name; } } return fmt::format("0x%08X", vnid); } std::vector& ppu_function_manager::access(bool ghc) { static std::vector list { [](ppu_thread& ppu) -> bool { ppu_log.error("Unregistered function called (LR=0x%x)", ppu.lr); ppu.gpr[3] = 0; ppu.cia = static_cast(ppu.lr) & ~3; return false; }, [](ppu_thread& ppu) -> bool { ppu.state += cpu_flag::ret; ppu.cia += 4; return false; }, }; static std::vector list_ghc { build_function_asm("ppu_unregistered", [](asmjit::x86::Assembler& c, auto& args) { using namespace asmjit; c.mov(args[0], x86::rbp); c.jmp(imm_ptr(list[0])); }), build_function_asm("ppu_return", [](asmjit::x86::Assembler& c, auto& args) { using namespace asmjit; c.mov(args[0], x86::rbp); c.jmp(imm_ptr(list[1])); }), }; return ghc ? list_ghc : list; } u32 ppu_function_manager::add_function(ppu_function_t function) { auto& list = access(); auto& list2 = access(true); list.push_back(function); // Generate trampoline list2.push_back(build_function_asm("ppu_trampolinea", [&](asmjit::x86::Assembler& c, auto& args) { using namespace asmjit; c.mov(args[0], x86::rbp); c.jmp(imm_ptr(function)); })); return ::size32(list) - 1; }