// ref: 0x100063B3 BOOL __stdcall UiBetaDisclaimer(int a1) { int v1; // eax v1 = (int)SDrawGetFrameWindow(NULL); SDlgDialogBoxParam(ghUiInst, "DISCLAIMER_DIALOG", v1, disclaim_WndProc, a1); return 1; } // 10010382: using guessed type _DWORD __stdcall SDrawGetFrameWindow(); // ref: 0x100063DA LRESULT __stdcall disclaim_WndProc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam) { HWND v5; // eax if (Msg > 0x111) { if (Msg != 513 && Msg != 516) { if (Msg == 528) { if ((_WORD)wParam == 513 || (_WORD)wParam == 516) disclaim_FadeFromDisclaim(hWnd); } else if (Msg == 2024) { if (!Fade_CheckRange5()) Fade_SetFadeTimer((int)hWnd); return 0; } return (LRESULT)SDlgDefDialogProc(hWnd, Msg, (HDC)wParam, (HWND)lParam); } } else if (Msg != 273) { if (Msg != 2) { if (Msg != 256) { if (Msg > 0x103) { if (Msg <= 0x105) { v5 = (HWND)SDrawGetFrameWindow(NULL); SendMessageA(v5, Msg, wParam, lParam); } else if (Msg == 272) { disclaim_LoadDisclaimGFX(hWnd); PostMessageA(hWnd, 0x7E8u, 0, 0); return 1; } } return (LRESULT)SDlgDefDialogProc(hWnd, Msg, (HDC)wParam, (HWND)lParam); } goto LABEL_21; } disclaim_DelDisclaimProcs(hWnd); return (LRESULT)SDlgDefDialogProc(hWnd, Msg, (HDC)wParam, (HWND)lParam); } LABEL_21: disclaim_FadeFromDisclaim(hWnd); return 0; } // 10010382: using guessed type _DWORD __stdcall SDrawGetFrameWindow(); // ref: 0x100064C9 void __fastcall disclaim_DelDisclaimProcs(HWND hWnd) { void **v2; // eax Doom_DeleteFreeProcs(hWnd, disclaim_msgtbl2); Doom_DeleteFreeProcs(hWnd, disclaim_msgtbl1); v2 = (void **)GetWindowLongA(hWnd, -21); local_FreeMemPtr(v2); } // ref: 0x100064F3 void __fastcall disclaim_LoadDisclaimGFX(HWND hWnd) { DWORD *v2; // eax MAPDST v2 = local_AllocWndLongData(); if (v2) { SetWindowLongA(hWnd, -21, (LONG)v2); local_LoadArtWithPal(hWnd, 0, &nullcharacter, -1, 1, "ui_art\\disclaim.pcx", (BYTE **)v2, v2 + 1, 0); Fade_NoInputAndArt(hWnd, 0); } Doom_ParseWndProc3(hWnd, disclaim_msgtbl1, AF_BIGGRAY); Doom_ParseWndProc3(hWnd, disclaim_msgtbl2, AF_MED); } // ref: 0x10006552 void __fastcall disclaim_FadeFromDisclaim(HWND hWnd) { Fade_Range5SetZero(); Fade_UpdatePaletteRange(10); SDlgEndDialog(hWnd, (void *)HANDLE_FLAG_INHERIT); } // ref: 0x10006571 void __cdecl disclaim_cpp_init() { disclaim_cpp_float = disclaim_cpp_float_value; } // 1001F418: using guessed type int disclaim_cpp_float_value; // 10029850: using guessed type int disclaim_cpp_float;