{"jsonrpc": "2.0", "result": {"content": [{"type": "text", "text": "{\"addr\":\"0xffe4e3df\",\"code\":\"char __fastcall sub_FFE4E3DF(\\n int a1,\\n _WORD *i_1,\\n int a3,\\n int a4,\\n int a5,\\n int a6,\\n int a7,\\n int a8,\\n int a9,\\n int a10,\\n _DWORD *a11,\\n int a12)\\n{\\n _BYTE *v13; // ebx\\n int v14; // ebp\\n _WORD *i; // ecx\\n _BYTE *v16; // ebx\\n _BYTE *v19; // [esp+34h] [ebp+18h]\\n\\n sub_FFE4DFDF(a1, a12); /*0xffe4e3f0*/\\n v13 = (_BYTE *)(a1 + ((*(_DWORD *)(a1 + 6) & 0x4000000) != 0 ? 26 : 11));\\n v19 = v13; /*0xffe4e413*/\\n v14 = a1 - (_DWORD)v13 + (unsigned __int16)sub_FFE4F4EC(a1 + 4); /*0xffe4e421*/\\n if ( (*(_DWORD *)(a1 + 6) & 0x2000000) != 0 ) /*0xffe4e429*/\\n {\\n for ( i = i_1; *v13 && (unsigned __int8)*v13 == *i && v14 > 0; ++i ) /*0xffe4e42b*/\\n {\\n ++v13; /*0xffe4e441*/\\n --v14; /*0xffe4e445*/\\n }\\n if ( (unsigned __int8)*v13 != *i || v14 <= 0 ) /*0xffe4e452*/\\n return 0; /*0xffe4e452*/\\n v16 = v13 + 1; /*0xffe4e454*/\\n }\\n else\\n {\\n while ( (unsigned __int16)sub_FFE4F4EC(v13) && (unsigned __int16)sub_FFE4F4EC(v13) == *i_1 && v14 > 0 ) /*0xffe4e469*/\\n {\\n v13 += 2; /*0xffe4e46e*/\\n ++i_1; /*0xffe4e471*/\\n v14 -= 2; /*0xffe4e475*/\\n }\\n if ( (unsigned __int16)sub_FFE4F4EC(v13) != *i_1 || v14 <= 0 ) /*0xffe4e496*/\\n return 0; /*0xffe4e496*/\\n v16 = v13 + 2; /*0xffe4e498*/\\n }\\n if ( sub_FFE4F857(v19, a10) ) /*0xffe4e4a4*/\\n return 0; /*0xffe4e4c0*/\\n if ( a11 ) /*0xffe4e4b4*/\\n *a11 = v16 - v19; /*0xffe4e4ba*/\\n return 1; /*0xffe4e4c2*/\\n}\",\"refs\":[{\"addr\":\"0xffe4dfdf\",\"name\":\"sub_FFE4DFDF\"},{\"addr\":\"0xffe4f4ec\",\"name\":\"sub_FFE4F4EC\"},{\"addr\":\"0xffe4f857\",\"name\":\"sub_FFE4F857\"}]}"}], "structuredContent": {"addr": "0xffe4e3df", "code": "char __fastcall sub_FFE4E3DF(\n int a1,\n _WORD *i_1,\n int a3,\n int a4,\n int a5,\n int a6,\n int a7,\n int a8,\n int a9,\n int a10,\n _DWORD *a11,\n int a12)\n{\n _BYTE *v13; // ebx\n int v14; // ebp\n _WORD *i; // ecx\n _BYTE *v16; // ebx\n _BYTE *v19; // [esp+34h] [ebp+18h]\n\n sub_FFE4DFDF(a1, a12); /*0xffe4e3f0*/\n v13 = (_BYTE *)(a1 + ((*(_DWORD *)(a1 + 6) & 0x4000000) != 0 ? 26 : 11));\n v19 = v13; /*0xffe4e413*/\n v14 = a1 - (_DWORD)v13 + (unsigned __int16)sub_FFE4F4EC(a1 + 4); /*0xffe4e421*/\n if ( (*(_DWORD *)(a1 + 6) & 0x2000000) != 0 ) /*0xffe4e429*/\n {\n for ( i = i_1; *v13 && (unsigned __int8)*v13 == *i && v14 > 0; ++i ) /*0xffe4e42b*/\n {\n ++v13; /*0xffe4e441*/\n --v14; /*0xffe4e445*/\n }\n if ( (unsigned __int8)*v13 != *i || v14 <= 0 ) /*0xffe4e452*/\n return 0; /*0xffe4e452*/\n v16 = v13 + 1; /*0xffe4e454*/\n }\n else\n {\n while ( (unsigned __int16)sub_FFE4F4EC(v13) && (unsigned __int16)sub_FFE4F4EC(v13) == *i_1 && v14 > 0 ) /*0xffe4e469*/\n {\n v13 += 2; /*0xffe4e46e*/\n ++i_1; /*0xffe4e471*/\n v14 -= 2; /*0xffe4e475*/\n }\n if ( (unsigned __int16)sub_FFE4F4EC(v13) != *i_1 || v14 <= 0 ) /*0xffe4e496*/\n return 0; /*0xffe4e496*/\n v16 = v13 + 2; /*0xffe4e498*/\n }\n if ( sub_FFE4F857(v19, a10) ) /*0xffe4e4a4*/\n return 0; /*0xffe4e4c0*/\n if ( a11 ) /*0xffe4e4b4*/\n *a11 = v16 - v19; /*0xffe4e4ba*/\n return 1; /*0xffe4e4c2*/\n}", "refs": [{"addr": "0xffe4dfdf", "name": "sub_FFE4DFDF"}, {"addr": "0xffe4f4ec", "name": "sub_FFE4F4EC"}, {"addr": "0xffe4f857", "name": "sub_FFE4F857"}]}, "isError": false}, "id": 1}