You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

180 lines
4.5 KiB

// ref: 0x10004054
void __stdcall UiCopyProtError(int a1) { return; }
//signed int __stdcall UiCopyProtError(int *a1) { return 0; }
/* {
int v1; // eax
int v2; // eax
CHAR Buffer; // [esp+0h] [ebp-80h]
if ( DiabloUI_10005C2A() )
LoadStringA(hInstance, 0x3Fu, &Buffer, 127);
else
LoadStringA(hInstance, 0x1Bu, &Buffer, 127);
v1 = SDrawGetFrameWindow();
v2 = SDlgDialogBoxParam(hInstance, "OKCANCEL_DIALOG", v1, CopyProt_100040AF, &Buffer);
if ( a1 )
*a1 = v2;
return 1;
} */
// 10010370: using guessed type int __stdcall SDlgDialogBoxParam(_DWORD, _DWORD, _DWORD, _DWORD, _DWORD);
// 10010382: using guessed type _DWORD __stdcall SDrawGetFrameWindow();
// ref: 0x100040AF
int __stdcall CopyProt_100040AF(int a1, UINT Msg, WPARAM wParam, LPARAM lParam) { return 0; }
/* {
int v4; // ecx
int v5; // edx
HWND v6; // eax
LONG v7; // eax
HWND v9; // eax
if ( Msg == 2 )
{
CopyProt_10004173();
Fade_100072BE(10);
return SDlgDefDialogProc(a1, Msg, wParam, lParam);
}
if ( Msg <= 0x103 )
return SDlgDefDialogProc(a1, Msg, wParam, lParam);
if ( Msg <= 0x105 )
{
v9 = (HWND)SDrawGetFrameWindow();
SendMessageA(v9, Msg, wParam, lParam);
return SDlgDefDialogProc(a1, Msg, wParam, lParam);
}
if ( Msg == 272 )
{
CopyProt_100041B5((HWND)a1, (const CHAR *)lParam);
return 1;
}
if ( Msg != 273 )
return SDlgDefDialogProc(a1, Msg, wParam, lParam);
switch ( (unsigned short)wParam )
{
case 1u:
v6 = GetFocus();
v7 = GetWindowLongA(v6, -12);
v4 = a1;
if ( v7 == 1109 )
{
v5 = 1;
goto LABEL_13;
}
goto LABEL_12;
case 2u:
v4 = a1;
LABEL_12:
v5 = 2;
goto LABEL_13;
case 0x455u:
v4 = a1;
v5 = 1;
LABEL_13:
CopyProt_1000430C(v4, v5);
break;
}
return SDlgDefDialogProc(a1, Msg, wParam, lParam);
} */
// 1001037C: using guessed type int __stdcall SDlgDefDialogProc(_DWORD, _DWORD, _DWORD, _DWORD);
// 10010382: using guessed type _DWORD __stdcall SDrawGetFrameWindow();
// ref: 0x10004173
HGLOBAL CopyProt_10004173() { return 0; }
/* {
HGLOBAL result; // eax
if ( hResData )
{
FreeResource(hResData);
hResData = 0;
}
if ( dword_10029624 )
{
FreeResource(dword_10029624);
dword_10029624 = 0;
}
result = dword_10029618;
if ( dword_10029618 )
{
result = (HGLOBAL)FreeResource(dword_10029618);
dword_10029618 = 0;
}
return result;
} */
// ref: 0x100041B5
signed int __fastcall CopyProt_100041B5(HWND a1, const CHAR *a2) { return 0; }
/* {
HRSRC v2; // eax
HRSRC v3; // eax
HRSRC v4; // eax
LPVOID v5; // edi
LPVOID v6; // ebx
HWND v7; // eax
char v9; // [esp+Ch] [ebp-420h]
int v10; // [esp+40Ch] [ebp-20h]
int v11; // [esp+410h] [ebp-1Ch]
int v12; // [esp+414h] [ebp-18h]
int v13; // [esp+418h] [ebp-14h]
int v14; // [esp+41Ch] [ebp-10h]
LPCSTR lpString; // [esp+420h] [ebp-Ch]
void *v16; // [esp+424h] [ebp-8h]
HWND hDlg; // [esp+428h] [ebp-4h]
v12 = 0;
lpString = a2;
hDlg = a1;
v13 = 112;
v14 = 140;
v10 = 1109;
v11 = 2;
v2 = FindResourceA(hInstance, "IDR_POPUPART", "ART_FILES");
dword_10029618 = LoadResource(hInstance, v2);
v3 = FindResourceA(hInstance, "IDR_BTNART", "ART_FILES");
dword_10029624 = LoadResource(hInstance, v3);
v4 = FindResourceA(hInstance, "IDR_ARTPAL", "ART_FILES");
hResData = LoadResource(hInstance, v4);
v5 = LockResource(dword_10029618);
v6 = LockResource(dword_10029624);
v16 = LockResource(hResData);
if ( v5 )
SDlgSetBitmapI(hDlg, 0, &byte_10029448, -1, 1, v5, 0, 284, 148, -1);
ShowCursor(1);
Fade_100073EF(hDlg);
if ( v6 )
local_10007B1B(hDlg, &v10, (int)v6, &v13);
if ( v16 )
{
memcpy(&v9, v16, 0x400u);
SDrawUpdatePalette(0, 256, &v9, 1);
}
v7 = GetDlgItem(hDlg, 1026);
SetWindowTextA(v7, lpString);
return 1;
} */
// 100103FA: using guessed type int __stdcall SDrawUpdatePalette(_DWORD, _DWORD, _DWORD, _DWORD);
// 10010400: using guessed type int __stdcall SDlgSetBitmapI(_DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD);
// ref: 0x1000430C
int __fastcall CopyProt_1000430C(int a1, int a2) { return 0; }
/* {
int v2; // esi
int v3; // edi
v2 = a2;
v3 = a1;
ShowCursor(0);
return SDlgEndDialog(v3, v2);
} */
// 10010376: using guessed type int __stdcall SDlgEndDialog(_DWORD, _DWORD);
// ref: 0x10004329
signed int CopyProt_10004329() { return 0; }
/* {
signed int result; // eax
result = 2139095040;
dword_10029620 = 2139095040;
return result;
} */
// 10029620: using guessed type int dword_10029620;