fix: feed with 0x15

This commit is contained in:
msojocs 2023-07-17 20:15:30 +08:00
parent 4572f48549
commit 0b2c3371b3
5 changed files with 33 additions and 21 deletions

View File

@ -60,7 +60,7 @@
"cwd": "/mnt/d/Work/WeChatProjects/miniprogram-demo/miniprogram", "cwd": "/mnt/d/Work/WeChatProjects/miniprogram-demo/miniprogram",
"args": [ "args": [
"\"--config-path\"", "\"--config-path\"",
"\"/mnt/d/Work/disassembly/wcc-exec/wcc/cmd1.txt\"" "\"/mnt/d/Work/disassembly/wcc-exec/wcc/config/cmd2.txt\""
] ]
}, },
"cmake.configureSettings": { "cmake.configureSettings": {

View File

@ -351,13 +351,17 @@ namespace WXML
this->offset_24 = (uint16_t)v46; this->offset_24 = (uint16_t)v46;
if (bittest(&v46, 0x15u)) // 0x15 -> 21 if (bittest(&v46, 0x15u)) // 0x15 -> 21
{ {
// TODO:
if (this->fileLength > this->offset_4) if (this->fileLength > this->offset_4)
{ {
this->offset_4++;
this->offset_20++;
WXML::DOMLib::Token token; WXML::DOMLib::Token token;
token.offset_8 = this->offset_16;
token.offset_12 = this->offset_20;
this->offset_20++;
token.offset_16 = this->offset_4;
this->offset_4++;
token.offset_20 = 1;
token.offset_24 = 0;
a3.push_back(token); a3.push_back(token);
} }
} }

View File

@ -1,4 +0,0 @@
"-d" "--split" ">_<109" "-xc" "9>_<109./miniprogram_npm/miniprogram-barrage/index.wxml>_<1090>_<109./miniprogram_npm/miniprogram-recycle-view/recycle-item.wxml>_<1090>_<109./miniprogram_npm/miniprogram-recycle-view/recycle-view.wxml>_<1090>_<109./miniprogram_npm/wxml-to-canvas/index.wxml>_<1090>_<109./page/API/index.wxml>_<1091>_<109set-tab-bar>_<109./page/API/components/set-tab-bar/set-tab-bar.wxml>_<1090>_<109./page/cloud/index.wxml>_<1090>_<109./page/component/index.wxml>_<1090>_<109./page/extend/index.wxml>_<1090" "-lla" "./miniprogram_npm/miniprogram-barrage/index>_<109./miniprogram_npm/miniprogram-recycle-view/recycle-item>_<109./miniprogram_npm/miniprogram-recycle-view/recycle-view>_<109./miniprogram_npm/wxml-to-canvas/index>_<109./page/API/index>_<109./page/API/components/set-tab-bar/set-tab-bar>_<109./page/cloud/index>_<109./page/component/index>_<109./page/extend/index" "./miniprogram_npm/miniprogram-barrage/index.wxml" "./miniprogram_npm/miniprogram-recycle-view/recycle-item.wxml" "./miniprogram_npm/miniprogram-recycle-view/recycle-view.wxml" "./miniprogram_npm/wxml-to-canvas/index.wxml" "./page/API/index.wxml" "./page/API/components/set-tab-bar/set-tab-bar.wxml" "./page/cloud/index.wxml" "./page/common/foot.wxml" "./page/common/head.wxml" "./page/component/index.wxml" "./page/extend/index.wxml" "-gn" "$gwx"

View File

@ -27330,24 +27330,24 @@ LABEL_12:
// fileLength > (v17 offset_4) // fileLength > (v17 offset_4)
if ( *(_DWORD *)v15 > v17 ) if ( *(_DWORD *)v15 > v17 )
{ {
// offset_4存起来有用偏移 4 * 1 = 4 // this->offset_4存起来有用偏移 4 * 1 = 4
v53 = *((_DWORD *)v15 + 1); v53 = *((_DWORD *)v15 + 1); // v49.offset_16
v57 = v59; v57 = v59;
v61 = v63; v61 = v63;
v65 = v67; v65 = v67;
// v18 外面不会用;偏移 4 * 4 = 16 // v18 外面不会用;偏移 4 * 4 = 16
v18 = *((_DWORD *)v15 + 4); v18 = *((_DWORD *)v15 + 4);
// offset_4++; v17是offset_4的值 // this->offset_4++; v17是offset_4的值
*((_DWORD *)v15 + 1) = v17 + 1; *((_DWORD *)v15 + 1) = v17 + 1;
// v18是offset_16的值 // v18是offset_16的值
v51 = v18; v51 = v18; // v49.offset_8
// offset_20 暂存,有用;偏移 4 * 5 = 20 // this->offset_20 暂存,有用;偏移 4 * 5 = 20
v19 = *((_DWORD *)v15 + 5); v19 = *((_DWORD *)v15 + 5);
v49 = 0; v49 = 0;
v52 = v19; v52 = v19; // v49.offset_12
// offset_20++ // this->offset_20++
*((_DWORD *)v15 + 5) = v19 + 1; *((_DWORD *)v15 + 5) = v19 + 1;
v50 = 0; v50 = 0; // v49.offset_4
v58 = 0; v58 = 0;
v59[0] = 0; v59[0] = 0;
v62 = 0; v62 = 0;
@ -27357,8 +27357,8 @@ LABEL_12:
v56 = 0; v56 = 0;
v64 = 0; v64 = 0;
v60 = -1; v60 = -1;
v54 = 1; v54 = 1; // v49.offset_20
v55 = 0; v55 = 0; // v49.offset_24
std::vector<WXML::DOMLib::Token>::push_back(a3, (WXML::DOMLib::Token *)&v49); std::vector<WXML::DOMLib::Token>::push_back(a3, (WXML::DOMLib::Token *)&v49);
// a3.push_back(); // a3.push_back();
WXML::DOMLib::Token::~Token((int)&v49); WXML::DOMLib::Token::~Token((int)&v49);

View File

@ -1,4 +1,16 @@
#!/bin/bash #!/bin/bash
root_dir=$(cd `dirname $0`/.. && pwd -P)
cd /mnt/d/Work/WeChatProjects/miniprogram-demo/miniprogram cd /mnt/d/Work/WeChatProjects/miniprogram-demo/miniprogram
/root/github/wx-compiler/build/wcc "--config-path" "/mnt/d/Work/disassembly/wcc-exec/wcc/cmd1.txt" > /root/github/wx-compiler/test/wcc_linux.json
/mnt/d/Work/disassembly/wcc-exec/wcc/wcc.exe "--config-path" "d:/Work/disassembly/wcc-exec/wcc/cmd1.txt" > /root/github/wx-compiler/test/wcc_win.json # list="cmd1 cmd2"
# for cmd in $list;
# do
# echo $cmd
# /root/github/wx-compiler/build/wcc "--config-path" "/mnt/d/Work/disassembly/wcc-exec/wcc/config/$cmd.txt" > /root/github/wx-compiler/test/wcc_linux.json
# /mnt/d/Work/disassembly/wcc-exec/wcc/wcc.exe "--config-path" "d:/Work/disassembly/wcc-exec/wcc/config/$cmd.txt" > /root/github/wx-compiler/test/wcc_win.json
# done;
/root/github/wx-compiler/build/wcc "--config-path" "/mnt/d/Work/disassembly/wcc-exec/wcc/config/cmd2.txt" > /root/github/wx-compiler/test/wcc_linux.json
/mnt/d/Work/disassembly/wcc-exec/wcc/wcc.exe "--config-path" "d:/Work/disassembly/wcc-exec/wcc/config/cmd2.txt" > /root/github/wx-compiler/test/wcc_win.json