// ref: 0x10006F7C LRESULT __stdcall EntName_WndProc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam) { int v4; // edx HWND v5; // eax HWND v6; // eax HWND v7; // eax HWND v9; // eax v4 = 2; if ( Msg == 2 ) { EntName_DelEntNameMsgs(hWnd); return (LRESULT)SDlgDefDialogProc(hWnd, Msg, (HDC)wParam, (HWND)lParam); } if ( Msg <= 0x103 ) return (LRESULT)SDlgDefDialogProc(hWnd, Msg, (HDC)wParam, (HWND)lParam); if ( Msg <= 0x105 ) { v9 = (HWND)SDrawGetFrameWindow(NULL); SendMessageA(v9, Msg, wParam, lParam); return (LRESULT)SDlgDefDialogProc(hWnd, Msg, (HDC)wParam, (HWND)lParam); } switch ( Msg ) { case 0x110u: entname_charname = (char *)lParam; EntName_LoadFocusChkName(hWnd); return 0; case 0x111u: if ( (unsigned short)wParam != 1 ) { if ( (unsigned short)wParam != 2 ) { if ( (unsigned short)wParam == 1065 ) EntName_GetMessageName(hWnd, wParam, lParam); return (LRESULT)SDlgDefDialogProc(hWnd, Msg, (HDC)wParam, (HWND)lParam); } goto LABEL_11; } goto LABEL_18; case 0x113u: v7 = GetFocus(); Focus_DoBlitSpinIncFrame(hWnd, v7); return 0; } if ( Msg != 513 ) return (LRESULT)SDlgDefDialogProc(hWnd, Msg, (HDC)wParam, (HWND)lParam); v5 = GetDlgItem(hWnd, 1056); if ( local_GetBottomRect(hWnd, v5, (unsigned short)lParam, (unsigned int)lParam >> 16) ) { LABEL_18: v4 = 1; goto LABEL_11; } v6 = GetDlgItem(hWnd, 1054); if ( local_GetBottomRect(hWnd, v6, (unsigned short)lParam, (unsigned int)lParam >> 16) ) { v4 = 2; LABEL_11: EntName_SetCharName(hWnd, v4); } return (LRESULT)SDlgDefDialogProc(hWnd, Msg, (HDC)wParam, (HWND)lParam); } // 10010382: using guessed type _DWORD __stdcall SDrawGetFrameWindow(); // ref: 0x1000709E void __fastcall EntName_DelEntNameMsgs(HWND hWnd) { HWND v2; // eax Focus_DeleteSpinners(); Doom_DeleteFreeProcs(hWnd, entname_msgtbl3); Doom_DeleteFreeProcs(hWnd, entname_msgtbl2); Doom_DeleteFreeProcs(hWnd, entname_msgtbl1); v2 = GetParent(hWnd); SelHero_SetStringWithMsg(v2, 0); } // ref: 0x100070DB void __fastcall EntName_LoadFocusChkName(HWND hWnd) { HWND v2; // edi LONG v3; // eax HWND v4; // ebx char Buffer[32]; // [esp+Ch] [ebp-20h] v2 = GetParent(hWnd); if ( SelHero_GetHeroIsGood() == 1 ) LoadStringA(ghUiInst, 0x20u, Buffer, 31); else LoadStringA(ghUiInst, 0x1Fu, Buffer, 31); SelHero_SetStringWithMsg(v2, Buffer); v3 = GetWindowLongA(v2, -21); SetWindowLongA(hWnd, -21, v3); Doom_ParseWndProc3(hWnd, entname_msgtbl1, 5); Doom_ParseWndProcs(hWnd, entname_msgtbl2, 4, 0); Doom_ParseWndProc5(hWnd, entname_msgtbl3, 2); Focus_LoadSpinner("ui_art\\focus.pcx"); SDlgSetTimer((int)hWnd, 1, 55, 0); v4 = GetDlgItem(hWnd, 1065); SendMessageA(v4, 0x401u, 0xFu, 0); if ( SelHero_GetHeroIsGood() == 1 ) SendMessageA(v4, 0x404u, 0, (LPARAM)" ,<>%&\\\"?*#/"); } // ref: 0x100071AC void __fastcall EntName_SetCharName(HWND hWnd, int a2) { char *v4; // ST08_4 HWND v5; // eax TitleSnd_PlaySelectSound(); SDlgKillTimer((int)hWnd, 1); v4 = entname_charname; v5 = GetDlgItem(hWnd, 1065); GetWindowTextA(v5, v4, 16); entname_charname[15] = 0; SDlgEndDialog(hWnd, (HANDLE)a2); } // ref: 0x100071ED void __fastcall EntName_GetMessageName(HWND hWnd, unsigned int a2, int a3) { unsigned int v3; // edx HWND v5; // eax v3 = (a2 >> 16) - 1; if ( v3 ) { if ( v3 == 2 ) Doom_ParseWndProc6(hWnd, entname_msgtbl3, 2); } else { v5 = GetFocus(); Focus_DoBlitSpinIncFrame(hWnd, v5); } } // ref: 0x10007220 void __cdecl EntName_cpp_init() { EntName_cpp_float = EntName_cpp_float_value; } // 1001F424: using guessed type int EntName_cpp_float_value; // 10029860: using guessed type int EntName_cpp_float;