int sub_40168B(char a1, int a2)
{
return sub_434930(a1, a2);
}
int sub_434930(void *this, char a, int n)
{
int result = n;
int v6 = n;
char v4;
char v5;
int size = 16;
void *v9;
v9 = this;
for ( int i = 0; i < size; ++ i )
{
v5 = *(_BYTE *)(i + v6);
v5 ^= a;
result = i + v6;
*(_BYTE *)(i + v6) = v5;
}
return result;
}
int sub_433850(void *this)
{
const char *v1;
int v2;
int v3;
int v4;
int v5;
int v6;
int v7;
int v8;
int v9;
int v10;
int v11;
int v12;
int v13;
int v14;
int v15;
int v16;
int v17;
int v18;
int v19;
int v20;
int v21;
int v22;
int v23;
int v24;
int v25;
int v26;
int v27;
int v28;
int v29;
int v30;
char v32;
int v33;
int v34;
int v35;
int v36;
int v37;
int v38;
int v39;
int v40;
char v41;
char v42;
char v43;
char v44;
int j;
char v46;
int i;
int v48;
int v49;
char DstBuf;
int v51;
char v52;
char v53;
FILE *File;
char v55;
int v56;
int v57;
int v58;
int v59;
v58 = (int)this;
// MFC42D_5056(this, 1);
//CFindReplaceDialog::CFindReplaceDialog(&v55, 1, 0, 0, 6, 0, 0);
v59 = 0;
//v56 = (int)"Data file(*.txt)";
//v57 = (int)"D:\\";
// if ( CToolTipCtrl::DestroyToolTipCtrl(&v55) == 1 )
{
// v40 = CStatusBarCtrl::GetRect(&v55, &v44);
v39 = v40;
LOBYTE(v59) = 1;
v1 = (const char *)operator_(v40);
fopen(v1, "r+b");
//File = (FILE *)chkesp();
LOBYTE(v59) = 0;
//CTreeView::_CTreeView(&v44);
if ( File )
{
CTimeSpan::CTimeSpan(&v52);
LOBYTE(v59) = 2;
v51 = 0;
//DDV_MinMaxFloat(v58 + 240);
//v38 = CStatusBarCtrl::GetRect(&v55, &v43);
v37 = v38;
LOBYTE(v59) = 3;
v2 = operator_(v38);
//MFC42D_4934(v58 + 304, v2);
LOBYTE(v59) = 2;
//CTreeView::_CTreeView(&v43);
fread((void *)(v58 + 384), 0x20u, 1u, File); //從頭讀32位 以CTimeSpan的格式
// chkesp();
LOBYTE(v48) = 1;
while ( 1 )
{
fread((void *)(v58 + 368), 0x10u, 1u, File);//讀取16位
v49 = chkesp();
if ( v49 == 1 )
{
sub_40168B(*(_BYTE *)(v58 + 385), v58 + 368);//解密
if ( *(_DWORD *)(v58 + 368) == 30000 )
{
if ( *(_DWORD *)(v58 + 372) == 30000 && *(_DWORD *)(v58 + 376) == 30000 && *(_DWORD *)(v58 + 380) == 30000 )
break;
}
}
if ( v49 != 1 )
goto LABEL_12;
}
LOBYTE(v48) = 0;
LABEL_12:
fread((void *)(v58 + 416), 0x44u, 1u, File);
//chkesp();
sub_40137F(*(_BYTE *)(v58 + 385), v58 + 416);//解密
// if ( (_BYTE)v48 )
//{
// CDialog::OnCancel(v58, &unk_4B5214, "Error", 64);
//}
//else
{
itoa(*(_DWORD *)(v58 + 416), &DstBuf, 10);
//v3 = chkesp();
CFrameWnd::IsTracking(v58 + 240, v51, v3);
itoa(*(_DWORD *)(v58 + 420), &DstBuf, 10);
//v4 = chkesp();
CToolBar::SizeToolBar(v58 + 240, v51, 2, v4);
operator>>(&v52, v58 + 424);
v36 = CMDIFrameWnd::MDITile(&v52, &v42, 10);
v35 = v36;
LOBYTE(v59) = 4;
v5 = operator_(v36);
CToolBar::SizeToolBar(v58 + 240, v51, 3, v5);
LOBYTE(v59) = 2;
CTreeView::_CTreeView(&v42);
v34 = CImageList::SetBkColor(&v52, &v41, 9);
v33 = v34;
LOBYTE(v59) = 5;
v6 = operator_(v34);
CToolBar::SizeToolBar(v58 + 240, v51, 4, v6);
LOBYTE(v59) = 2;
CTreeView::_CTreeView(&v41);
CToolBar::SizeToolBar(v58 + 240, v51, 5, v58 + 448);
CComboBox::FindString(&v52, "%8.2f", *(float *)(v58 + 464));
v7 = operator_(&v52);
CToolBar::SizeToolBar(v58 + 240, v51, 6, v7);
CComboBox::FindString(&v52, "%8.2f", *(float *)(v58 + 468));
v8 = operator_(&v52);
CToolBar::SizeToolBar(v58 + 240, v51, 7, v8);
itoa(*(_DWORD *)(v58 + 472), &DstBuf, 10);
v9 = chkesp();
CToolBar::SizeToolBar(v58 + 240, v51, 8, v9);
itoa(*(_DWORD *)(v58 + 476), &DstBuf, 10);
v10 = chkesp();
CToolBar::SizeToolBar(v58 + 240, v51, 9, v10);
itoa(*(_DWORD *)(v58 + 480), &DstBuf, 10);
v11 = chkesp();
CToolBar::SizeToolBar(v58 + 240, v51, 10, v11);
for ( i = 0; i < *(_DWORD *)(v58 + 472); ++i )
{
++v51;
fread((void *)(v58 + 484), 0x60u, 1u, File);
//chkesp();
sub_401B72(*(_BYTE *)(v58 + 385), v58 + 484);//解密
itoa(*(_DWORD *)(v58 + 484), &DstBuf, 10);
//v12 = chkesp();
CFrameWnd::IsTracking(v58 + 240, v51, v12);
itoa(*(_DWORD *)(v58 + 488), &DstBuf, 10);
//v13 = chkesp();
CToolBar::SizeToolBar(v58 + 240, v51, 1, v13);
CToolBar::SizeToolBar(v58 + 240, v51, 2, v58 + 492);
CToolBar::SizeToolBar(v58 + 240, v51, 3, v58 + 508);
CToolBar::SizeToolBar(v58 + 240, v51, 4, v58 + 524);
CToolBar::SizeToolBar(v58 + 240, v51, 5, v58 + 548);
itoa(*(_DWORD *)(v58 + 564), &DstBuf, 10);
//v14 = chkesp();
CToolBar::SizeToolBar(v58 + 240, v51, 6, v14);
LOBYTE(v15) = *(_BYTE *)(v58 + 568);
CTime::CTime(&v46, v15, 1);
LOBYTE(v59) = 6;
v16 = operator_(&v46);
CToolBar::SizeToolBar(v58 + 240, v51, 7, v16);
itoa(*(_DWORD *)(v58 + 572), &DstBuf, 10);
v17 = chkesp();
CToolBar::SizeToolBar(v58 + 240, v51, 8, v17);
itoa(*(_DWORD *)(v58 + 576), &DstBuf, 10);
v18 = chkesp();
CToolBar::SizeToolBar(v58 + 240, v51, 9, v18);
for ( j = 0; j < *(_DWORD *)(v58 + 484); ++j )
{
++v51;
fread((void *)(v58 + 580), 0x30u, 1u, File);
chkesp();
sub_40105F(*(_BYTE *)(v58 + 385), v58 + 580);
CFrameWnd::IsTracking(v58 + 240, v51, &unk_4B24A8);
itoa(*(_DWORD *)(v58 + 580), &DstBuf, 10);
v19 = chkesp();
CToolBar::SizeToolBar(v58 + 240, v51, 1, v19);
itoa(*(_DWORD *)(v58 + 584), &DstBuf, 10);
v20 = chkesp();
CToolBar::SizeToolBar(v58 + 240, v51, 2, v20);
itoa(*(_DWORD *)(v58 + 588), &DstBuf, 10);
v21 = chkesp();
CToolBar::SizeToolBar(v58 + 240, v51, 3, v21);
itoa(*(_DWORD *)(v58 + 592), &DstBuf, 10);
v22 = chkesp();
CToolBar::SizeToolBar(v58 + 240, v51, 4, v22);
itoa(*(_DWORD *)(v58 + 596), &DstBuf, 10);
v23 = chkesp();
CToolBar::SizeToolBar(v58 + 240, v51, 5, v23);
itoa(*(_DWORD *)(v58 + 600), &DstBuf, 10);
v24 = chkesp();
CToolBar::SizeToolBar(v58 + 240, v51, 6, v24);
itoa(*(_DWORD *)(v58 + 604), &DstBuf, 10);
v25 = chkesp();
CToolBar::SizeToolBar(v58 + 240, v51, 7, v25);
CComboBox::FindString(&v52, "%8.3f", *(float *)(v58 + 608));
v26 = operator_(&v52);
CToolBar::SizeToolBar(v58 + 240, v51, 8, v26);
CComboBox::FindString(&v52, "%8.3f", *(float *)(v58 + 612));
v27 = operator_(&v52);
CToolBar::SizeToolBar(v58 + 240, v51, 9, v27);
CComboBox::FindString(&v52, "%8.3f", *(float *)(v58 + 616));
v28 = operator_(&v52);
CToolBar::SizeToolBar(v58 + 240, v51, 10, v28);
CComboBox::FindString(&v52, "%8.3f", *(float *)(v58 + 620));
v29 = operator_(&v52);
CToolBar::SizeToolBar(v58 + 240, v51, 11, v29);
CComboBox::FindString(&v52, "%8.3f", *(float *)(v58 + 624));
v30 = operator_(&v52);
CToolBar::SizeToolBar(v58 + 240, v51, 12, v30);
}
LOBYTE(v59) = 2;
CTreeView::_CTreeView(&v46);
}
}
LOBYTE(v59) = 0;
CTreeView::_CTreeView(&v52);
}
else
{
(*(void (__thiscall **)(int, char *, signed int, _DWORD))(*(_DWORD *)(v58 + 628) + 20))(v58 + 628, &v53, 1024, 0);
chkesp();
CDialog::OnCancel(v58, &v53, "Error", 64);
}
fclose(File);
//chkesp();
MFC42D_5056(v58, 0);
}
// v59 = -1;
//sub_401D20(&v55);
//return chkesp();
}
uj5u.com熱心網友回復:
這段代碼是干什么的?我見一些人反匯編,也就到這個程度,不再繼續了解原理了。uj5u.com熱心網友回復:
去“看雪論壇”逛逛。轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/142565.html
標籤:圖形處理/算法
