Function at 0x419e60
Capabilities:
Create thread
Hide graphical window

Disassembly:
sub esp, 0x44
mov dword [0x4240d0], 0
mov dword [0x698ff0], 0
mov dword [0x6df140], 0
mov dword [0x4f0680], 0
mov dword [0x5fd490], 0
mov dword [0x4f0690], 0
mov dword [0x64d530], 0
mov dword [0x64d5f0], 0
mov dword [0x537080], 0
mov dword [0x537060], 0
mov dword [0x6df130], 0
mov dword [0x5fd4e0], 0
mov dword [0x64d980], 0
mov dword [0x6df080], 0
mov dword [0x4f0440], 0
mov dword [0x57d240], 0
mov dword [0x537180], 0
mov dword [0x5fd260], 0
mov dword [0x6df170], 1
mov dword [0x4efba0], 0
mov dword [0x699070], 0
mov dword [0x699000], 0
mov dword [0x6ef1d0], 0
push esi
push ebx
mov dword [0x4f03f0], 0
mov esi, dword [esp + 0x50]
call fcn.00407cc8
test eax, eax
je 0x41a398
mov dword [0x537080], esi
mov ebx, 0x80000000
mov dword [esp + 0x30], 0
add esp, 0xfffffff4
push 0
call sub.USER32.dll_GetSystemMetrics
mov dword [esp + 0x44], eax
mov dword [esp + 0x40], 0
push 1
call sub.USER32.dll_GetSystemMetrics
mov dword [esp + 0x48], eax
add esp, 0xfffffff8
push 0
push ebx
lea eax, [esp + 0x4c]
push eax
call sub.USER32.dll_AdjustWindowRect
add esp, 0xfffffff4
push 0
push esi
push 0
push 0
mov ecx, dword [esp + 0x64]
mov eax, dword [esp + 0x6c]
sub eax, ecx
push eax
mov edx, dword [esp + 0x64]
mov eax, dword [esp + 0x6c]
sub eax, edx
push eax
push ecx
push edx
push ebx
push 0x64d9a0
push 0x407c8c
push 0
call sub.USER32.dll_CreateWindowExA
mov edx, eax
mov dword [0x537060], edx
add esp, 0x20
test edx, edx
je 0x41a398
add esp, 0xfffffff8
mov eax, dword [esp + 0x5c]
push eax
push edx
call sub.USER32.dll_ShowWindow
mov eax, dword [0x537060]
add esp, 0xfffffffc
push eax
call sub.USER32.dll_UpdateWindow
add esp, 0xfffffffc
call fcn.00408a70
add esp, 0x10
test eax, eax
je 0x41a398
mov edx, dword [0x537080]
mov eax, dword [0x537060]
cmp dword [0x44ec80], 0
jne 0x41a0b8
add esp, 0xfffffff4
push 0
push 0x41c2ac
push eax
push 0x436450
push edx
call sub.USER32.dll_CreateDialogIndirectParamA
mov esi, eax
add esp, 0xfffffff4
push 5
push esi
call sub.USER32.dll_ShowWindow
add esp, 0xfffffffc
push esi
call sub.USER32.dll_UpdateWindow
add esp, 0x1c
cmp dword [0x44ec80], 0
jne 0x41a0b8
lea ebx, [esp + 0x10]
add esp, 0xfffffff4
push 1
push 0
push 0
push 0
push ebx
call sub.USER32.dll_PeekMessageA
add esp, 0xc
test eax, eax
je 0x41a0af
add esp, 0xfffffff8
push ebx
push esi
call sub.USER32.dll_IsDialogMessageA
add esp, 8
test eax, eax
jne 0x41a0af
add esp, 0xfffffff4
push ebx
call sub.USER32.dll_TranslateMessage
push ebx
call sub.USER32.dll_DispatchMessageA
add esp, 0xc
cmp dword [0x44ec80], 0
je 0x41a074
mov edx, dword [0x537080]
mov eax, dword [0x537060]
cmp dword [0x6df180], 0
jne 0x41a0d5
mov word [0x43651a], 0xf
add esp, 0xfffffff4
push 0
push 0x41c480
push eax
push 0x4364cc
push edx
call sub.USER32.dll_CreateDialogIndirectParamA
mov ebx, eax
add esp, 0xfffffff4
push 5
push ebx
call sub.USER32.dll_ShowWindow
add esp, 0xfffffffc
push ebx
call sub.USER32.dll_UpdateWindow
add esp, 0x1c
rdtsc
mov dword [0x44ec70], eax
mov dword [0x44ec74], edx
mov dword [0x698ff0], ebx
mov byte [0x5fd270], 0x26
mov byte [0x6df0d0], 0xfc
mov byte [0x64d5d0], 0xfb
mov byte [0x5fd4b0], 0xf2
mov dword [0x698fe0], 1
mov dword [0x4f0450], 0
call fcn.0040cc1c
test eax, eax
je 0x41a398
mov eax, dword [0x698ff0]
push 0
push 1
push 0x111
push eax
call sub.USER32.dll_SendMessageA
add esp, 0xfffffff4
push 0
call sub.USER32.dll_ShowCursor
add esp, 0xc
push 0
push 0x41f678
push 0x4f0440
push 0
call sub.ddraw.dll_DirectDrawCreateEx
test eax, eax
jge 0x41a1a0
mov eax, dword [0x6df150]
mov eax, dword [eax + 0x380]
jmp 0x41a393
mov edx, dword [0x4f0440]
mov eax, dword [0x537060]
add esp, 0xfffffffc
mov ecx, dword [edx]
push 0x11
push eax
push edx
mov eax, dword [ecx + 0x50]
call eax
add esp, 4
test eax, eax
jge 0x41a1d0
mov eax, dword [0x6df150]
mov eax, dword [eax + 0x384]
jmp 0x41a393
call fcn.0040d5b8
test eax, eax
je 0x41a398
call fcn.0041ced0
call sub.KERNEL32.dll_GetTickCount
mov word [0x4eef60], ax
mov eax, dword [0x6df190]
shr eax, 0x1f
add eax, dword [0x6df190]
sar eax, 1
mov dword [0x4efbb0], eax
mov eax, dword [0x6df194]
shl eax, 3
sub eax, dword [0x6df194]
jns 0x41a215
add eax, 7
sar eax, 3
mov dword [0x537050], eax
mov dword [0x5fd4f0], 0
mov dword [0x4eef70], 0xffffffff
mov dword [0x536f40], 0
mov dword [0x64d5e0], 0
mov dword [0x5fd4a0], 0
mov byte [0x6df0f0], 0xff
mov byte [0x5366a0], 0xff
mov byte [0x64d550], 0xff
mov byte [0x6df110], 0xff
mov byte [0x4f03e0], 0xff
mov dword [0x536b00], 0
mov dword [0x6ef1c0], 0
mov dword [0x64dab0], 0
mov dword [0x536ae0], 0
mov dword [0x64d5a0], 0
mov dword [0x6df0b0], 0
mov dword [0x6df090], 0
mov dword [0x4efb90], 0
mov byte [0x5fd3c0], 1
mov dword [0x5fd280], 0
call fcn.004186b8
mov eax, dword [0x536b00]
mov dword [0x44b320], eax
mov dword [0x44b330], eax
mov eax, dword [0x6ef1c0]
mov dword [0x57d220], 0
mov dword [0x699060], 0x80
mov dword [0x44b300], 0
mov dword [0x44b310], 0
mov dword [0x44b340], 0
mov dword [0x44b350], eax
mov dword [0x44b360], eax
mov dword [0x44b370], 0
mov dword [0x44b380], 0
mov dword [0x44b290], 0
mov dword [0x44b2f0], 0
mov dword [0x4240d0], 1
add esp, 0xfffffffc
push 0
push 0
push 0x419240
call sub.msvcrt40.dll__beginthread
mov dword [0x6df130], eax
add esp, 0x10
test eax, eax
je 0x41a388
mov dword [0x44e950], 0
mov eax, 1
jmp 0x41a39a
mov eax, dword [0x6df150]
mov eax, dword [eax + 0x31c]
mov dword [0x44e950], eax
xor eax, eax
pop ebx
pop esi
add esp, 0x44
ret