Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int __stdcall WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd)
- {
- char *v4; // esi
- void (__stdcall *v5)(UINT, UINT, PVOID, UINT); // edi
- void *v6; // eax
- int v7; // eax
- bool v8; // zf
- char v9; // bl
- int v10; // edi
- DWORD v11; // eax
- int v12; // ecx
- int v13; // esi
- bool v14; // sf
- unsigned __int8 v15; // of
- HWND v17; // [esp-Ch] [ebp-40h]
- int v18; // [esp+8h] [ebp-2Ch]
- int v19; // [esp+Ch] [ebp-28h]
- int v20; // [esp+10h] [ebp-24h]
- int v21; // [esp+14h] [ebp-20h]
- struct tagMSG Msg; // [esp+18h] [ebp-1Ch]
- dword_680578 = OpenMutexA(0x1F0001u, 0, Name);
- if ( dword_680578 )
- {
- dword_680530 = 18;
- goto LABEL_85;
- }
- dword_680578 = CreateMutexA(0, 0, Name);
- if ( !(unsigned __int8)sub_509BB0() )
- {
- dword_680530 = 19;
- goto LABEL_85;
- }
- nullsub_1(&unk_6633D8);
- unknown_libname_19();
- v4 = lpCmdLine;
- byte_524E7C = sub_4418D0(lpCmdLine, 9);
- byte_524E7D = sub_441850(v4, 11, 1);
- if ( sub_441850(v4, 12, 1) != -1 )
- byte_680549 = 1;
- v5 = (void (__stdcall *)(UINT, UINT, PVOID, UINT))SystemParametersInfoA;
- SystemParametersInfoA(0x10u, 0, &byte_680540, 0);
- if ( byte_680540 )
- SystemParametersInfoA(0x11u, 0, 0, 2u);
- if ( sub_441D50(hInstance, (int)hPrevInstance) )
- {
- ImmAssociateContext(hWnd, 0);
- if ( j__malloc((size_t)&unk_8C8470) )
- v6 = (void *)sub_405320(hWnd, 320, 240);
- else
- v6 = 0;
- dword_680568 = v6;
- if ( *(int *)((char *)&dword_8C8338 + (_DWORD)v6) )
- {
- if ( sub_402530(v6) )
- goto LABEL_18;
- v17 = hWnd;
- }
- else
- {
- v17 = hWnd;
- }
- dword_680530 = 13;
- DestroyWindow(v17);
- hWnd = 0;
- LABEL_18:
- sub_442B20();
- *(int *)((char *)&dword_8C83F4 + (_DWORD)dword_680568) |= 8u;
- sub_442B70();
- v7 = *(int *)((char *)&dword_8C83F4 + (_DWORD)dword_680568);
- if ( v7 & 0x2000 )
- byte_524E81 = 1;
- else
- byte_524E81 = (v7 & 3) != 0 ? 0 : 2;
- sub_442770();
- LABEL_22:
- byte_67C994 = 0;
- while ( 1 )
- {
- while ( 1 )
- {
- do
- {
- while ( 1 )
- {
- do
- {
- while ( PeekMessageA(&Msg, 0, 0, 0, 1u) )
- {
- if ( Msg.message == 18 )
- {
- v5 = (void (__stdcall *)(UINT, UINT, PVOID, UINT))SystemParametersInfoA;
- goto LABEL_82;
- }
- TranslateMessage(&Msg);
- DispatchMessageA(&Msg);
- }
- }
- while ( !hWnd );
- if ( dword_680530 < 10 && dword_680530 != 255 )
- break;
- DestroyWindow(hWnd);
- hWnd = 0;
- }
- }
- while ( !byte_680565 || !dword_680568 );
- v19 = 333;
- v18 = 166;
- v21 = 166;
- v20 = 666;
- lpCmdLine = (LPSTR)17039873;
- if ( !byte_67C994 )
- break;
- if ( byte_67C994 == 1 )
- {
- v10 = dword_680520;
- goto LABEL_65;
- }
- if ( byte_67C994 == 2 )
- {
- dword_680520 = timeGetTime();
- if ( 10 * (dword_680520 - dword_67C9A4) >= *(&v18 + byte_680534 / 2) )
- byte_67C994 = 1;
- }
- }
- if ( byte_68053E )
- break;
- if ( byte_68053F )
- {
- ((void (*)(void))sub_402290)();
- sub_440210();
- *(int *)((char *)&dword_8C83F4 + (_DWORD)dword_680568) |= 8u;
- sub_442910();
- sub_404D20(dword_680568);
- LABEL_38:
- sub_402BC0(dword_680568);
- sub_402A80(dword_680568);
- }
- else
- {
- ((void (*)(void))sub_402290)();
- sub_440210();
- byte_680564 = 0;
- *(int *)((char *)&dword_8C83F4 + (_DWORD)dword_680568) &= 0xFFFFFFF7;
- byte_680536 = 0;
- sub_431070();
- if ( byte_680547 & 1 )
- byte_680547 |= 2u;
- sub_4C3BB0();
- v15 = __OFSUB__(byte_680537 + 1, 100);
- v8 = byte_680537 == 99;
- v14 = (char)(byte_680537++ - 99) < 0;
- if ( !((unsigned __int8)(v14 ^ v15) | v8) )
- byte_680537 = 100;
- v9 = byte_680534;
- byte_68053C += *((_BYTE *)&lpCmdLine + byte_680534 / 2);
- if ( byte_68053C > 60 )
- {
- byte_68053C = 0;
- ++dword_680538;
- }
- v10 = dword_680520;
- if ( (dword_680520 & 0x80000000) < (dword_67C9A4 & 0x80000000) )
- {
- sub_442770();
- v9 = byte_680534;
- v10 = dword_680520;
- }
- dword_68050C += *(&v18 + v9 / 2);
- if ( byte_680535 )
- goto LABEL_55;
- v11 = timeGetTime();
- v9 = byte_680534;
- v10 = v11;
- dword_680520 = v11;
- v12 = 10 * (v11 - dword_67C9A4);
- v13 = *(&v18 + byte_680534 / 2);
- if ( v12 >= v13 )
- {
- if ( !byte_680536 && v12 > 3 * v13 )
- dword_68050C += v13 * (v12 / v13 - 2);
- LABEL_55:
- byte_680535 = 0;
- if ( v9 )
- {
- if ( byte_680537 >= 15 )
- {
- v15 = __OFSUB__(dword_68050C + 10000, 10 * v10);
- v14 = dword_68050C + 10000 - 10 * v10 < 0;
- goto LABEL_60;
- }
- }
- else if ( byte_680537 >= 30 )
- {
- v15 = __OFSUB__(dword_68050C + 10000, 10 * v10);
- v14 = dword_68050C + 10000 - 10 * v10 < 0;
- LABEL_60:
- if ( v14 ^ v15 )
- {
- sub_442770();
- v10 = dword_680520;
- }
- }
- if ( 10 * v10 > dword_68050C )
- {
- byte_680535 = 1;
- goto LABEL_22;
- }
- LABEL_65:
- byte_680537 = 0;
- dword_67C9A4 = v10;
- unknown_libname_8();
- if ( dword_680568 )
- {
- if ( dword_680570 )
- {
- --dword_680570;
- }
- else
- {
- if ( !byte_680564 && !byte_680548 )
- *(int *)((char *)&dword_8C83F4 + (_DWORD)dword_680568) |= 8u;
- if ( (int (*)())dword_68A1E8 == sub_4BF6A0 )
- {
- byte_680543 = byte_680542;
- byte_680542 |= 1u;
- sub_442B70();
- byte_680542 = byte_680543;
- }
- else
- {
- sub_442B70();
- dword_67C9B0 = 15872;
- if ( *(int *)((char *)&dword_8C832C + (_DWORD)dword_680568) == 640 )
- {
- dword_67C9CC = 0x40000000;
- dword_67C9C8 = 0x40000000;
- }
- else
- {
- dword_67C9CC = 1065353216;
- dword_67C9C8 = 1065353216;
- }
- dword_67C9B4 = dword_526210;
- dword_67C9B8 = dword_68056C;
- dword_67C9C0 = dword_67C974 + 160;
- dword_67C9C4 = dword_67C978 + 120;
- sub_402210(&unk_67C9AC, 4095);
- }
- sub_404D20(dword_680568);
- sub_402BC0(dword_680568);
- if ( byte_68053D )
- {
- sub_4427E0((unsigned __int8)byte_68053D);
- sub_402290(dword_680568);
- sub_4DD280();
- sub_4CCFE0();
- sub_4C8C1A();
- sub_402BC0(dword_680568);
- byte_68053D = 0;
- }
- sub_4310B0();
- sub_411320((char *)&dword_8C8340 + (_DWORD)dword_680568);
- sub_402A80(dword_680568);
- }
- }
- goto LABEL_22;
- }
- byte_67C994 = 2;
- }
- }
- ((void (*)(void))sub_402290)();
- sub_440210();
- *(int *)((char *)&dword_8C83F4 + (_DWORD)dword_680568) &= 0xFFFFFFF7;
- sub_4CAEE0();
- sub_404D20(dword_680568);
- sub_401F70(dword_680568);
- goto LABEL_38;
- }
- LABEL_82:
- sub_441960();
- unknown_libname_20();
- if ( byte_680562 == 1 )
- {
- byte_680562 = 0;
- ShowCursor(1);
- }
- v5(0x11u, byte_680540, 0, 2u);
- LABEL_85:
- if ( dword_680530 > 16 )
- {
- switch ( dword_680530 )
- {
- case 17:
- MessageBoxA(0, (LPCSTR)&unk_525060, Caption, 0x30u);
- break;
- case 18:
- case 255:
- break;
- case 19:
- MessageBoxA(0, (LPCSTR)&unk_525034, Caption, 0x30u);
- break;
- default:
- LABEL_93:
- MessageBoxA(0, aFatalError, Caption, 0x30u);
- break;
- }
- }
- else if ( dword_680530 == 16 )
- {
- MessageBoxA(0, aPleaseInsertBi, Caption, 0x30u);
- }
- else
- {
- switch ( dword_680530 )
- {
- case 0:
- case 1:
- case 2:
- case 11:
- break;
- case 13:
- MessageBoxA(0, aFailedToInitia_0, Caption, 0x30u);
- break;
- default:
- goto LABEL_93;
- }
- }
- unknown_libname_23();
- if ( dword_680578 )
- CloseHandle(dword_680578);
- return dword_680530;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement