Function at 0x45ca50
Capabilities:
Hide graphical window

Disassembly:
push 0xffffffffffffffff
push 0x524908
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x1c
push ebx
push esi
mov esi, ecx
push edi
lea edi, [esi + 0x280]
push edi
mov dword [esp + 0x14], edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [esp + 0x38]
xor ebx, ebx
cmp eax, ebx
jl 0x45cd17
mov eax, dword [esi + 0xac]
cmp eax, ebx
je 0x45cd17
mov ecx, dword [esi + 0xb0]
sub ecx, eax
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
je 0x45cd17
lea ecx, [esp + 0xc]
push ebp
push ecx
mov ecx, dword [esi + 0xc8]
call fcn.0048e100
xor ebp, ebp
mov dword [esp + 0x34], ebx
xor edi, edi
mov eax, dword [esi + 0xac]
test eax, eax
je 0x45cb1d
mov ecx, dword [esi + 0xb0]
sub ecx, eax
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp edi, edx
jae 0x45cb1d
mov eax, dword [esi + 0xac]
mov ecx, dword [esp + 0x10]
mov eax, dword [ebx + eax]
push eax
push ecx
call dword [sym.imp.MSVCRT.dll__mbsicmp]
add esp, 8
test eax, eax
je 0x45cb1b
inc edi
add ebx, 0x14
jmp 0x45cad2
mov ebp, edi
mov eax, dword [esi + 0xac]
lea edx, [ebp + ebp*4]
lea ecx, [esp + 0x18]
lea edi, [eax + edx*4]
push edi
call fcn.004c73e6
add edi, 4
lea ecx, [esp + 0x1c]
push edi
mov byte [esp + 0x38], 1
call fcn.0045dc80
mov eax, dword [esp + 0x3c]
mov ecx, dword [esi + 0xcc]
mov byte [esp + 0x34], 2
mov dword [esi + 0xd8], eax
mov dword [esi + 0xe4], 0xffffffff
call fcn.0048fe50
mov eax, dword [esi + 0xcc]
mov ebp, dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 0
mov ecx, dword [eax + 0x20]
push 0xb
push ecx
call ebp
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x45cb8e
xor ebx, ebx
jmp 0x45cb97
mov ebx, dword [esp + 0x24]
sub ebx, eax
sar ebx, 2
xor edi, edi
test ebx, ebx
jle 0x45cbc4
jmp 0x45cba3
mov eax, dword [esp + 0x20]
mov eax, dword [eax + edi*4]
mov ecx, esi
push eax
call fcn.0045c9d0
test eax, eax
je 0x45cbbf
mov ecx, dword [esi + 0xcc]
push eax
push edi
call fcn.00496c60
inc edi
cmp edi, ebx
jl 0x45cb9f
mov ecx, dword [esi + 0xcc]
call fcn.00496b90
mov eax, dword [esi + 0xcc]
xor edi, edi
push edi
push 1
mov edx, dword [eax + 0x20]
push 0xb
push edx
call ebp
push edi
push 0xbbb
mov ecx, esi
call fcn.004af900
push edi
push 0x1772
mov ecx, esi
call fcn.0045dc40
mov eax, dword [esi + 0xcc]
push edi
push edi
push 0x1004
mov eax, dword [eax + 0x20]
push eax
call ebp
cmp eax, edi
pop ebp
jne 0x45cc4b
push edi
push 0xbbc
mov ecx, esi
call fcn.004af900
push edi
push 0xbbd
mov ecx, esi
call fcn.004af900
push edi
push 0xbbe
mov ecx, esi
call fcn.004af900
push edi
push 0xbbf
mov ecx, esi
call fcn.004af900
push edi
jmp 0x45cc85
push 1
push 0xbbf
mov ecx, esi
call fcn.004af900
push 1
push 0xbbe
mov ecx, esi
call fcn.004af900
push 1
push 0xbbc
mov ecx, esi
call fcn.004af900
push 1
push 0xbbd
mov ecx, esi
call fcn.004af900
push 5
mov ecx, dword [esi + 0xcc]
call sub.MFC42.DLL_CWnd::ShowWindow
mov ecx, dword [esi + 0x20]
push edi
push edi
push 5
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
mov edx, dword [esi + 0x24c]
push edi
push edx
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [esi + 0xc8]
push edi
push edi
mov eax, dword [eax + 0x20]
push eax
call dword [sym.imp.USER32.dll_InvalidateRect]
mov ecx, dword [esi + 0x20]
push edi
push 0xa
push 0x138b
push ecx
call dword [sym.imp.USER32.dll_SetTimer]
mov ecx, esi
call fcn.0045d9e0
mov eax, dword [esp + 0x1c]
mov byte [esp + 0x30], 0
push eax
mov dword [esp + 0x24], eax
call sub.MFC42.DLL_operatordelete
add esp, 4
lea ecx, [esp + 0x14]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], edi
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0xc]
mov dword [esp + 0x30], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov edi, dword [esp + 0x10]
push edi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [esp + 0x28]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
add esp, 0x28
ret 4