//----- (00500ED0) -------------------------------------------------------- int main(int argc, const char **argv, const char **envp) { int v3; // ebx char **v4; // edi int v5; // eax bool v6; // dl int v7; // edi int v8; // ebx void **v9; // eax _BYTE *v10; // edx char v11; // al char v12; // al void **v13; // eax void **v14; // eax bool v15; // si _BYTE *v16; // edx char *v17; // eax _DWORD *v18; // eax const char **v19; // ecx _BYTE *v20; // eax void **v21; // esi _DWORD *v22; // eax char v23; // dl void **v24; // ebx char *v25; // ecx int v26; // edx int v27; // edx FILE *v28; // ebx int JsonDict; // eax char **m; // ebx int v31; // edi char *v32; // esi _DWORD *v33; // eax const char **v34; // edx unsigned int v35; // ebx _DWORD *v36; // eax _DWORD *v37; // eax int v38; // esi int v39; // edi int v40; // esi int *inserted; // ebx char *v42; // eax void **v43; // edi char *v44; // esi int insert_hint_unique_pos; // eax _DWORD *v46; // edx int v47; // edx _DWORD *v48; // eax int v49; // edx FILE *v50; // ebx int v51; // edi void **j; // ebx int *v53; // eax int *v54; // esi _DWORD *v55; // ebx _DWORD *v56; // eax _DWORD *v57; // eax void **v58; // ecx _DWORD *v59; // eax int *k; // edi std::ostream::sentry *v61; // esi std::ostream::sentry *v62; // eax int *v63; // ebx std::ostream::sentry *v64; // eax _DWORD *v65; // eax FILE *v66; // ebx int v67; // edx int v68; // edx int v69; // edx void (__cdecl *v71)(void *); // [esp-6Ch] [ebp-414h] char v72; // [esp+6h] [ebp-3A2h] char v73; // [esp+7h] [ebp-3A1h] char v74; // [esp+8h] [ebp-3A0h] char v75; // [esp+9h] [ebp-39Fh] char v76; // [esp+Ah] [ebp-39Eh] char v77; // [esp+Bh] [ebp-39Dh] const char **v78; // [esp+Ch] [ebp-39Ch] char **v79; // [esp+Ch] [ebp-39Ch] int v80; // [esp+10h] [ebp-398h] int v81; // [esp+10h] [ebp-398h] char v82; // [esp+14h] [ebp-394h] int *v83; // [esp+14h] [ebp-394h] int v84; // [esp+18h] [ebp-390h] std::ostream::sentry *i; // [esp+18h] [ebp-390h] std::ostream::sentry *v86; // [esp+18h] [ebp-390h] bool excb; // [esp+1Ch] [ebp-38Ch] int exc; // [esp+1Ch] [ebp-38Ch] int exca; // [esp+1Ch] [ebp-38Ch] char *FileName; // [esp+28h] [ebp-380h] BYREF const char **v91; // [esp+2Ch] [ebp-37Ch] BYREF void **v92; // [esp+30h] [ebp-378h] int v93; // [esp+34h] [ebp-374h] void **v94; // [esp+38h] [ebp-370h] BYREF int v95; // [esp+3Ch] [ebp-36Ch] int v96; // [esp+40h] [ebp-368h] void **v97; // [esp+44h] [ebp-364h] BYREF int v98; // [esp+48h] [ebp-360h] int v99; // [esp+4Ch] [ebp-35Ch] char *v100; // [esp+50h] [ebp-358h] BYREF int v101; // [esp+54h] [ebp-354h] char v102; // [esp+58h] [ebp-350h] BYREF char *v103; // [esp+68h] [ebp-340h] BYREF int v104; // [esp+6Ch] [ebp-33Ch] char v105; // [esp+70h] [ebp-338h] BYREF int v106; // [esp+80h] [ebp-328h] BYREF int v107[5]; // [esp+84h] [ebp-324h] BYREF int v108[6]; // [esp+98h] [ebp-310h] BYREF void *v109[6]; // [esp+B0h] [ebp-2F8h] BYREF int v110; // [esp+C8h] [ebp-2E0h] BYREF int v111[5]; // [esp+CCh] [ebp-2DCh] BYREF int v112; // [esp+E0h] [ebp-2C8h] BYREF int v113[5]; // [esp+E4h] [ebp-2C4h] BYREF int v114; // [esp+F8h] [ebp-2B0h] BYREF int v115[5]; // [esp+FCh] [ebp-2ACh] BYREF int v116[2]; // [esp+110h] [ebp-298h] BYREF char v117; // [esp+118h] [ebp-290h] BYREF void *v118[2]; // [esp+128h] [ebp-280h] BYREF char v119; // [esp+130h] [ebp-278h] BYREF int v120; // [esp+140h] [ebp-268h] BYREF int v121[5]; // [esp+144h] [ebp-264h] BYREF int v122; // [esp+158h] [ebp-250h] BYREF int v123[5]; // [esp+15Ch] [ebp-24Ch] BYREF int v124; // [esp+170h] [ebp-238h] BYREF int v125[5]; // [esp+174h] [ebp-234h] BYREF int v126; // [esp+188h] [ebp-220h] BYREF int v127[5]; // [esp+18Ch] [ebp-21Ch] BYREF int v128[6]; // [esp+1A0h] [ebp-208h] BYREF int v129[6]; // [esp+1B8h] [ebp-1F0h] BYREF int v130[6]; // [esp+1D0h] [ebp-1D8h] BYREF int v131[6]; // [esp+1E8h] [ebp-1C0h] BYREF int v132[6]; // [esp+200h] [ebp-1A8h] BYREF int v133; // [esp+218h] [ebp-190h] BYREF int v134; // [esp+21Ch] [ebp-18Ch] int v135; // [esp+220h] [ebp-188h] int v136; // [esp+230h] [ebp-178h] BYREF int v137; // [esp+234h] [ebp-174h] int v138; // [esp+238h] [ebp-170h] char *String; // [esp+248h] [ebp-160h] BYREF int v140; // [esp+24Ch] [ebp-15Ch] int v141; // [esp+250h] [ebp-158h] BYREF int v142; // [esp+260h] [ebp-148h] BYREF char *v143[5]; // [esp+264h] [ebp-144h] BYREF char *v144; // [esp+278h] [ebp-130h] BYREF int v145[5]; // [esp+27Ch] [ebp-12Ch] BYREF int v146; // [esp+290h] [ebp-118h] BYREF int v147; // [esp+294h] [ebp-114h] char v148[16]; // [esp+298h] [ebp-110h] BYREF char *Format; // [esp+2A8h] [ebp-100h] BYREF int v150; // [esp+2ACh] [ebp-FCh] int v151[4]; // [esp+2B0h] [ebp-F8h] BYREF int v152; // [esp+2C0h] [ebp-E8h] BYREF int v153; // [esp+2C4h] [ebp-E4h] char v154[4]; // [esp+2C8h] [ebp-E0h] BYREF int v155[3]; // [esp+2CCh] [ebp-DCh] BYREF char v156[192]; // [esp+2D8h] [ebp-D0h] BYREF int *p_argc; // [esp+398h] [ebp-10h] p_argc = &argc; v80 = argc; v78 = argv; __main(); FileName = 0; v100 = &v102; v91 = 0; v92 = 0; v93 = 0; v101 = 0; v102 = 0; v103 = &v105; v104 = 0; v105 = 0; v94 = 0; v95 = 0; v96 = 0; v97 = 0; v98 = 0; v99 = 0; std::_Rb_tree_header::_Rb_tree_header(v107); std::string::basic_string((void **)v108, "$gwx"); std::string::basic_string(v109, " "); v3 = 1; std::_Rb_tree_header::_Rb_tree_header(v111); while ( v3 < v80 ) { std::string::basic_string((void **)&v152, "--config-path"); v4 = (char **)&v78[v3]; v5 = std::string::compare((int)&v152, *v4); v6 = 0; if ( !v5 ) v6 = v3 + 1 < v80; excb = v6; std::string::_M_dispose((void **)&v152); if ( excb ) { std::string::operator=((unsigned int *)&v103, (char *)v78[++v3]); } else { std::string::basic_string((void **)&v152, *v4); std::vector::emplace_back(&v94, &v152); std::string::_M_dispose((void **)&v152); } ++v3; } if ( v104 ) { v147 = 0; v146 = (int)v148; v148[0] = 0; ReadFile(v103, (unsigned int *)&v146); while ( v147 ) { std::string::basic_string((void **)&Format, "\n"); GetNextArg(&v152, &v146, (int)&Format); std::vector::emplace_back(&v94, &v152); std::string::_M_dispose((void **)&v152); std::string::_M_dispose((void **)&Format); } std::string::_M_dispose((void **)&v146); } v7 = 0; exc = 0; v72 = 0; v73 = 0; v74 = 0; v75 = 0; v84 = -1431655765 * ((v95 - (int)v94) >> 3); v76 = 0; v82 = 0; v77 = 0; while ( v7 < v84 ) { v8 = 6 * v7; v9 = &v94[6 * v7]; v10 = *v9; if ( *(_BYTE *)*v9 != 45 ) { std::vector::push_back(&v91, (int)v9); goto LABEL_90; } v11 = v10[1]; switch ( v11 ) { case 'd': v12 = v10[2]; if ( !v12 ) { exc |= 2u; goto LABEL_90; } if ( v12 == 115 ) { exc |= 4u; goto LABEL_90; } break; case 's': if ( v10[2] == 116 ) { exc |= 8u; goto LABEL_90; } if ( v7 + 1 < v84 ) { v77 = 1; std::vector::push_back(&v91, (int)&v94[v8 + 6]); goto LABEL_90; } break; case 'v': if ( v10[2] == 98 ) exc |= 0x10u; else v76 = 1; goto LABEL_90; case 'x': if ( v10[2] == 99 && v7 + 1 < v84 ) { v13 = &v94[v8 + 6]; v82 = 1; if ( *(_BYTE *)*v13 != 45 ) { std::string::_M_assign((int)&v100, (int)v13); v82 = 1; ++v7; } goto LABEL_90; } break; case 'c': if ( v10[2] == 99 && v7 + 1 < v84 ) { v14 = &v94[v8 + 6]; v82 = 0; if ( *(_BYTE *)*v14 != 45 ) { std::string::_M_assign((int)&v100, (int)v14); v82 = 0; ++v7; } goto LABEL_90; } break; case 'o': if ( v7 + 1 < v84 ) { ++v7; FileName = (char *)v94[v8 + 6]; goto LABEL_90; } break; case 'g': if ( v10[2] == 110 && v7 + 1 < v84 ) { std::string::_M_assign((int)v108, (int)&v94[v8 + 6]); ++v7; goto LABEL_90; } break; case 'p': exc |= 0x20u; goto LABEL_90; case 't': exc |= 1u; goto LABEL_90; case 'i': exc |= 0x40u; goto LABEL_90; } std::string::basic_string((void **)&v152, "--split"); v15 = std::operator==((int)&v94[v8], (int)&v152); if ( v15 ) v15 = v7 + 1 < v84; std::string::_M_dispose((void **)&v152); if ( v15 ) { ++v7; std::string::_M_assign((int)v109, (int)&v94[v8 + 6]); } else { v16 = v94[6 * v7]; if ( v16[1] == 99 && v16[2] == 98 ) { ++v7; LOBYTE(v151[0]) = 0; Format = (char *)v151; v17 = (char *)v94[v8 + 6]; exc |= 0x80u; v150 = 0; ReadFile(v17, (unsigned int *)&Format); if ( v150 ) { std::string::basic_string((void **)&v152, "life_cycle_callback_content"); v18 = std::map::operator[](&v110, &v152); std::string::_M_assign((int)v18, (int)&Format); std::string::_M_dispose((void **)&v152); } std::string::_M_dispose((void **)&Format); } else if ( !std::string::compare((int)&v94[v8], "--pm") && v7 + 1 < v84 ) { v21 = &v94[v8 + 6]; std::string::basic_string((void **)&v152, "plain_text_marker"); v22 = std::map::operator[](&v110, &v152); std::string::_M_assign((int)v22, (int)v21); std::string::_M_dispose((void **)&v152); ++v7; } else { v19 = (const char **)&v94[v8]; v20 = v94[v8]; if ( v20[1] == 108/*l*/ && v20[2] == 108/*l*/ ) { v23 = v20[3]; if ( v23 != 119 ) { if ( v23 != 97 ) { fprintf(&__iob[2], "Error: expected -llw or -lla, but got %s", *v19); exca = -1; goto LABEL_177; } v15 = 1; } if ( !std::string::compare((int)v109, " ") ) std::string::basic_string((void **)&v152, ","); else std::string::basic_string(&v152, (int)v109); ++v7; Split((int)&v133, (int *)&v94[v8 + 6], (int)&v152); v24 = (void **)v133; v25 = (char *)v97; v133 = 0; v26 = v98; v97 = v24; Format = v25; v98 = v134; v151[0] = v99; v150 = v26; v99 = v135; v134 = 0; v135 = 0; std::vector::~vector((void ***)&Format, v26); std::vector::~vector((void ***)&v133, v27); std::string::_M_dispose((void **)&v152); v75 = 1; v82 = v15; } else if ( !std::string::compare((int)v19, "--wxs") ) { v74 = 1; } else if ( !std::string::compare((int)&v94[v8], "--gdc") ) { v73 = 1; } else if ( !std::string::compare((int)&v94[v8], "--wxs-env") ) { v72 = 1; } } } LABEL_90: ++v7; } // version if ( v76 ) { std::string::basic_string((void **)&v152, "global"); WXML::Compiler::GetVersionInfo((int)&Format, &v152); std::string::_M_dispose((void **)&v152); if ( FileName && *FileName ) v28 = fopen(FileName, "w"); else v28 = &__iob[1]; fprintf(v28, "%s\n", Format); fclose(v28); std::string::_M_dispose((void **)&Format); } // not wxs if ( !v74 ) { v34 = (const char **)&WXML::GlassEaselWxs::sGenFuncDeepCopy; // not gdc if ( !v73 ) { // not wxs env if ( !v72 ) { // empty if ( v91 == (const char **)v92 ) { exca = Usage(v80, v78); } else { v35 = 0; std::_Rb_tree_header::_Rb_tree_header(v113); std::_Rb_tree_header::_Rb_tree_header(v115); if ( v77 ) { v152 = (int)v154; v153 = 0; v154[0] = 0; ReadFile(0, (unsigned int *)&v152); v36 = std::map::operator[](&v112, (int)v91); std::string::_M_assign((int)v36, (int)&v152); std::string::_M_dispose((void **)&v152); } else { while ( v35 < -1431655765 * (((char *)v92 - (char *)v91) >> 3) ) { v154[0] = 0; v152 = (int)v154; v153 = 0; ReadFile((char *)v91[6 * v35], (unsigned int *)&v152); v37 = std::map::operator[](&v112, (int)&v91[6 * v35]); std::string::_M_assign((int)v37, (int)&v152); ++v35; std::string::_M_dispose((void **)&v152); } } if ( v101 ) { GetNextArg(&String, (int *)&v100, (int)v109); v81 = strtoull(String, 0, 10); std::string::_M_dispose((void **)&String); v136 = 0; v137 = 0; v138 = 0; for ( i = 0; (int)i < v81; i = (std::ostream::sentry *)((char *)i + 1) ) { v150 = 0; Format = (char *)v151; LOBYTE(v151[0]) = 0; String = 0; v140 = 0; v141 = 0; GetNextArg(&v142, (int *)&v100, (int)v109); std::string::operator=(&Format, &v142); std::string::_M_dispose((void **)&v142); std::__find_if<__gnu_cxx::__normal_iterator>,__gnu_cxx::__ops::_Iter_equals_val>( (int)v91, (int)v92, (int)&Format); GetNextArg(&v144, (int *)&v100, (int)v109); v38 = 0; v79 = (char **)strtoull(v144, 0, 10); std::string::_M_dispose((void **)&v144); while ( v38 < (int)v79 ) { v153 = 0; v152 = (int)v154; v154[0] = 0; GetNextArg(&v146, (int *)&v100, (int)v109); std::string::operator=(&v152, &v146); std::string::_M_dispose((void **)&v146); std::vector::push_back(&String, (int)&v152); v39 = v137; if ( v39 == std::__find_if<__gnu_cxx::__normal_iterator>,__gnu_cxx::__ops::_Iter_equals_val>( v136, v137, (int)&v152) ) std::vector::push_back(&v136, (int)&v152); ++v38; std::string::_M_dispose((void **)&v152); } v40 = v115[1]; inserted = v115; while ( v40 ) { if ( (unsigned __int8)std::operator<(v40 + 16, (int)&Format) ) { v40 = *(_DWORD *)(v40 + 12); } else { inserted = (int *)v40; v40 = *(_DWORD *)(v40 + 8); } } if ( inserted == v115 || (unsigned __int8)std::operator<((int)&Format, (int)(inserted + 4)) ) { v42 = (char *)operator new((struct type_info *)0x34, v71); v43 = (void **)(v42 + 16); v44 = v42; std::string::basic_string((_DWORD *)v42 + 4, (int)&Format); *((_DWORD *)v44 + 10) = 0; *((_DWORD *)v44 + 11) = 0; *((_DWORD *)v44 + 12) = 0; insert_hint_unique_pos = std::_Rb_tree>,std::_Select1st>>,std::less,std::allocator>>>::_M_get_insert_hint_unique_pos( &v114, inserted, (int)v43); inserted = (int *)insert_hint_unique_pos; if ( v46 ) { inserted = std::_Rb_tree>,std::_Select1st>>,std::less,std::allocator>>>::_M_insert_node( &v114, insert_hint_unique_pos, v46, v44); } else { std::vector::~vector((void ***)v44 + 10, 0); std::string::_M_dispose(v43); operator delete(v44); } } std::vector::operator=((int)(inserted + 10), (int *)&String); std::vector::~vector((void ***)&String, v47); std::string::_M_dispose((void **)&Format); } std::string::basic_string((void **)&v152, "ALL"); v48 = std::map>::operator[](&v114, &v152); std::vector::operator=((int)v48, &v136); std::string::_M_dispose((void **)&v152); std::vector::~vector((void ***)&v136, v49); } v116[1] = 0; v116[0] = (int)&v117; v117 = 0; v118[0] = &v119; v118[1] = 0; v119 = 0; std::_Rb_tree_header::_Rb_tree_header(v121); if ( v75 ) { v51 = v98; for ( j = v97; (void **)v51 != j; j += 6 ) { if ( *(_BYTE *)*j == 46 && *((_BYTE *)*j + 1) == 47 ) { std::string::substr((void **)&v152, j, 2u, 0xFFFFFFFF); std::string::operator=(j, &v152); std::string::_M_dispose((void **)&v152); } } std::_Rb_tree_header::_Rb_tree_header(v123); std::_Rb_tree_header::_Rb_tree_header(v125); std::_Rb_tree_header::_Rb_tree_header(v127); std::string::basic_string((void **)&v152, "l_"); std::string::basic_string((void **)&Format, "f_"); std::string::basic_string((void **)&v146, "$gdwx"); std::string::basic_string((void **)&v144, "boxofchocolate"); std::string::basic_string((void **)&v142, (char *)&byte_5173B0); std::string::basic_string((void **)&String, "p_"); std::string::basic_string((void **)&v136, "d_"); std::string::basic_string((void **)&v133, "e_"); std::string::basic_string((void **)v132, "gg"); std::string::basic_string((void **)v131, (char *)&off_5174F9); std::string::basic_string((void **)v130, (_BYTE *)&off_5174F9 + 2); std::string::basic_string((void **)v129, (char *)&byte_5173B0); std::_Rb_tree>,std::_Select1st>>,std::less,std::allocator>>>::_Rb_tree( v128, (int)&v114); exca = WXML::Compiler::CompileLazy( (std::_Rb_tree_header *)&v112, (unsigned int *)v116, &v120, &v106, &v122, (int)&v124, (int)v128, (std::_Rb_tree_header *)&v97, 0, v129, (int)&v126, &v110, v82, (int)v108, exc, 10, v130, v131, v132, &v133, &v136, (int *)&String, (int)&v142, (int)&v144, (int)&v146, (int *)&Format); std::_Rb_tree>,std::_Select1st>>,std::less,std::allocator>>>::~_Rb_tree((int)v128); std::string::_M_dispose((void **)v129); std::string::_M_dispose((void **)v130); std::string::_M_dispose((void **)v131); std::string::_M_dispose((void **)v132); std::string::_M_dispose((void **)&v133); std::string::_M_dispose((void **)&v136); std::string::_M_dispose((void **)&String); std::string::_M_dispose((void **)&v142); std::string::_M_dispose((void **)&v144); std::string::_M_dispose((void **)&v146); std::string::_M_dispose((void **)&Format); std::string::_M_dispose((void **)&v152); std::string::basic_string((void **)&Format, "__COMMON__"); v53 = (int *)std::_Rb_tree,std::_Select1st>,std::less,std::allocator>>::_M_lower_bound( v121[1], (int)v121, (int)&Format); v54 = v53; if ( v53 != v121 && (unsigned __int8)std::operator<((int)&Format, (int)(v53 + 4)) ) v54 = v121; std::string::_M_dispose((void **)&Format); if ( v54 == v121 ) { WXML::Compiler::WXMLHelperCode[abi:cxx11]((void **)&Format); std::string::basic_string( (void **)&v146, "var __wxAppData=__wxAppData||{};var __wxAppCode__=__wxAppCode__||{};var global=global||{};var __WXML_GLO" "BAL__=__WXML_GLOBAL__||{entrys:{},defines:{},modules:{},ops:[],wxs_nf_init:undefined,total_ops:0};var Co" "mponent=Component||function(){};var definePlugin=definePlugin||function(){};var requirePlugin=requirePlu" "gin||function(){};var Behavior=Behavior||function(){};var __vd_version_info__=__vd_version_info__||{};va" "r __GWX_GLOBAL__=__GWX_GLOBAL__||{};var __globalThis=(typeof __vd_version_info__!=='undefined'&&typeof _" "_vd_version_info__.globalThis!=='undefined')?__vd_version_info__.globalThis:(typeof window!=='undefined'" "?window:globalThis);"); std::operator+(&v152, &v146, (unsigned int *)&Format); std::string::basic_string((void **)&v144, "__COMMON__"); v59 = std::map::operator[](&v120, &v144); std::string::operator=(v59, &v152); std::string::_M_dispose((void **)&v144); std::string::_M_dispose((void **)&v152); v58 = (void **)&v146; } else { std::string::basic_string((void **)&Format, "__COMMON__"); v55 = std::map::operator[](&v120, &Format); WXML::Compiler::WXMLHelperCode[abi:cxx11]((void **)&v144); std::string::basic_string( (void **)&v142, "var __wxAppData=__wxAppData||{};var __wxAppCode__=__wxAppCode__||{};var global=global||{};var __WXML_GLO" "BAL__=__WXML_GLOBAL__||{entrys:{},defines:{},modules:{},ops:[],wxs_nf_init:undefined,total_ops:0};var Co" "mponent=Component||function(){};var definePlugin=definePlugin||function(){};var requirePlugin=requirePlu" "gin||function(){};var Behavior=Behavior||function(){};var __vd_version_info__=__vd_version_info__||{};va" "r __GWX_GLOBAL__=__GWX_GLOBAL__||{};var __globalThis=(typeof __vd_version_info__!=='undefined'&&typeof _" "_vd_version_info__.globalThis!=='undefined')?__vd_version_info__.globalThis:(typeof window!=='undefined'" "?window:globalThis);"); std::operator+(&v146, &v142, (unsigned int *)&v144); v56 = std::string::append(&v146, (int)v55); std::string::basic_string(&v152, v56); std::string::basic_string((void **)&String, "__COMMON__"); v57 = std::map::operator[](&v120, &String); std::string::operator=(v57, &v152); std::string::_M_dispose((void **)&String); std::string::_M_dispose((void **)&v152); std::string::_M_dispose((void **)&v146); std::string::_M_dispose((void **)&v142); v58 = (void **)&v144; } std::string::_M_dispose(v58); std::string::_M_dispose((void **)&Format); std::basic_stringstream,std::allocator>::basic_stringstream((int)&v152); std::operator<<>((std::ostream::sentry *)v154, ";var __WXML_DEP__=__WXML_DEP__||{};"); for ( k = (int *)v123[2]; k != v123; k = (int *)std::_Rb_tree_increment((int)k) ) { if ( k[11] != k[10] ) { v61 = std::operator<<>((std::ostream::sentry *)v154, "__WXML_DEP__[\""); WXML::Rewrite::ToStringCode((int)&Format, k + 4); v62 = std::operator<<(v61, (int *)&Format); std::operator<<>(v62, "\"]=["); std::string::_M_dispose((void **)&Format); v63 = (int *)k[10]; v83 = (int *)k[11]; while ( v83 != v63 ) { v86 = std::operator<<>((std::ostream::sentry *)v154, "\""); WXML::Rewrite::ToStringCode((int)&Format, v63); v64 = std::operator<<(v86, (int *)&Format); std::operator<<>(v64, "\","); v63 += 6; std::string::_M_dispose((void **)&Format); } std::operator<<>((std::ostream::sentry *)v154, "];"); } } std::stringbuf::str((int)&Format, v155); std::string::basic_string((void **)&v146, "__COMMON__"); v65 = std::map::operator[](&v120, &v146); std::string::operator+=(v65, (int)&Format); std::string::_M_dispose((void **)&v146); std::string::_M_dispose((void **)&Format); if ( exca ) { fprintf(&__iob[2], "Error %d: %s\n", exca, (const char *)v116[0]); } else { if ( FileName && *FileName ) v66 = fopen(FileName, "w"); else v66 = &__iob[1]; DictToJsonString((int)&v144, (int)&v120); DictToJsonString((int)&v146, (int)&v106); std::string::basic_string( (void **)&Format, " {\"generateFunctionContent\":%s,\"generateFunctionName\":%s} "); fprintf(v66, Format, v144, v146); fclose(v66); std::string::_M_dispose((void **)&Format); std::string::_M_dispose((void **)&v146); std::string::_M_dispose((void **)&v144); } std::basic_stringstream,std::allocator>::~basic_stringstream((int)&v152); std::_Rb_tree>,std::_Select1st>>,std::less,std::allocator>>>::~_Rb_tree((int)&v126); std::_Rb_tree>,std::_Select1st>>,std::less,std::allocator>>>::~_Rb_tree((int)&v124); std::_Rb_tree>,std::_Select1st>>,std::less,std::allocator>>>::~_Rb_tree((int)&v122); } else { std::string::basic_string((void **)&v152, "l_"); std::string::basic_string((void **)&Format, "f_"); std::string::basic_string((void **)&v146, "$gdwx"); std::string::basic_string((void **)&v144, "boxofchocolate"); std::string::basic_string((void **)&v142, (char *)&byte_5173B0); std::string::basic_string((void **)&String, "p_"); std::string::basic_string((void **)&v136, "d_"); std::string::basic_string((void **)&v133, "e_"); std::string::basic_string((void **)v132, "gg"); std::string::basic_string((void **)v131, (char *)&off_5174F9); std::string::basic_string((void **)v130, (_BYTE *)&off_5174F9 + 2); std::_Rb_tree>,std::_Select1st>>,std::less,std::allocator>>>::_Rb_tree( v129, (int)&v114); exca = WXML::Compiler::Compile( &v112, (unsigned int *)v116, v118, v129, &v110, v82, v108, exc, 10, v130, v131, v132, &v133, &v136, (int *)&String, (int)&v142, (int)&v144, (int)&v146, (int *)&Format); std::_Rb_tree>,std::_Select1st>>,std::less,std::allocator>>>::~_Rb_tree((int)v129); std::string::_M_dispose((void **)v130); std::string::_M_dispose((void **)v131); std::string::_M_dispose((void **)v132); std::string::_M_dispose((void **)&v133); std::string::_M_dispose((void **)&v136); std::string::_M_dispose((void **)&String); std::string::_M_dispose((void **)&v142); std::string::_M_dispose((void **)&v144); std::string::_M_dispose((void **)&v146); std::string::_M_dispose((void **)&Format); std::string::_M_dispose((void **)&v152); if ( exca ) { fprintf(&__iob[2], "%s\n", (const char *)v116[0]); } else { if ( FileName && *FileName ) v50 = fopen(FileName, "w"); else v50 = &__iob[1]; fprintf(v50, "%s\n", (const char *)v118[0]); fclose(v50); } } std::_Rb_tree,std::_Select1st>,std::less,std::allocator>>::~_Rb_tree((int)&v120); std::string::_M_dispose(v118); std::string::_M_dispose((void **)v116); std::_Rb_tree>,std::_Select1st>>,std::less,std::allocator>>>::~_Rb_tree((int)&v114); std::_Rb_tree,std::_Select1st>,std::less,std::allocator>>::~_Rb_tree((int)&v112); } goto LABEL_177; // 清理数据 } v34 = (const char **)&WXML::GlassEaselWxs::sWxsEnvInit; } main::{lambda(std::string const&)#1}::operator()((const char **)&FileName, v34); exca = 0; goto LABEL_177; // 清理数据 } v140 = 0; String = (char *)&v141; LOBYTE(v141) = 0; std::_Rb_tree_header::_Rb_tree_header(v143); std::_Rb_tree_header::_Rb_tree_header(v145); if ( ReadFile((char *)*v91, (unsigned int *)&String) ) { fprintf(&__iob[2], "Failed to read input from %s", *v91); exca = -1; } else { JsonDict = GetJsonDict((int *)&String, (int)&v142); exca = JsonDict; if ( JsonDict ) { fprintf(&__iob[2], "Failed to read JSON at position %d (%c)", ~JsonDict, String[~JsonDict]); LABEL_106: exca = -2; } else { for ( m = (char **)v143[2]; m != v143; m = (char **)std::_Rb_tree_increment((int)m) ) { std::string::basic_string(&v152, (int)(m + 4)); std::string::basic_string(v156, (int)(m + 10)); v146 = (int)v148; v147 = 0; v148[0] = 0; if ( night::compile_ns_no_wrapper((int)&v152, (int)v156, 1, (unsigned int *)&v146, 0) ) { fprintf(&__iob[2], "Error in file %s: %s\n", (const char *)v152, (const char *)v146); std::string::_M_dispose((void **)&v146); std::pair::~pair((void **)&v152); goto LABEL_106; } v31 = snprintf(0, 0, WXML::GlassEaselWxs::sWrapper, v146) + 1; v32 = (char *)operator new[](v31); snprintf(v32, v31, WXML::GlassEaselWxs::sWrapper, v146); std::string::basic_string((void **)&Format, v32); v33 = std::map::operator[](&v144, (int)&v152); std::string::operator=(v33, &Format); std::string::_M_dispose((void **)&Format); operator delete[](v32); std::string::_M_dispose((void **)&v146); std::pair::~pair((void **)&v152); } DictToJsonString((int)&v136, (int)&v144); main::{lambda(std::string const&)#1}::operator()((const char **)&FileName, (const char **)&v136); std::string::_M_dispose((void **)&v136); } } std::_Rb_tree,std::_Select1st>,std::less,std::allocator>>::~_Rb_tree((int)&v144); std::_Rb_tree,std::_Select1st>,std::less,std::allocator>>::~_Rb_tree((int)&v142); std::string::_M_dispose((void **)&String); LABEL_177: std::_Rb_tree,std::_Select1st>,std::less,std::allocator>>::~_Rb_tree((int)&v110); std::string::_M_dispose(v109); std::string::_M_dispose((void **)v108); std::_Rb_tree,std::_Select1st>,std::less,std::allocator>>::~_Rb_tree((int)&v106); std::vector::~vector(&v97, v67); std::vector::~vector(&v94, v68); std::string::_M_dispose((void **)&v103); std::string::_M_dispose((void **)&v100); std::vector::~vector((void ***)&v91, v69); return exca; }