Function at 0x40ac90
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 4], eax
movdqa xmm0, xmmword [0x433f40]
lea eax, [ebp - 0x14]
push ebx
push esi
push edi
push dword [0x489954]
mov edi, ecx
push eax
mov dword [ebp - 0x18], edi
movdqu xmmword [ebp - 0x14], xmm0
mov dword [edi + 0x58c], 3
push dword [edi + 0x424]
call dword [sym.imp.USER32.dll_FillRect]
push 1
push 1
push dword [edi + 0x44c]
push dword [edi + 0x448]
push dword [edi + 0x424]
call dword [sym.imp.GDI32.dll_FrameRgn]
push 0
push dword [edi + 0x424]
call dword [sym.imp.GDI32.dll_SetTextColor]
push dword [edi + 0x444]
push dword [edi + 0x424]
call dword [sym.imp.GDI32.dll_SelectObject]
cmp byte [edi + 5], 0
lea ebx, [edi + 0x5c4]
push 0x4b
push 0x1b8
push 0x2d
push 0x28
mov eax, 0x433828
mov esi, 0x433814
push ebx
cmove esi, eax
call dword [sym.imp.USER32.dll_SetRect]
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40ad40
push 0x40000
push ebx
sub ecx, edx
push ecx
push esi
push dword [edi + 0x424]
mov esi, dword [sym.imp.USER32.dll_DrawTextA]
call esi
push 0x5a5a5a
push dword [edi + 0x424]
call dword [sym.imp.GDI32.dll_SetTextColor]
push dword [edi + 0x43c]
push dword [edi + 0x424]
call dword [sym.imp.GDI32.dll_SelectObject]
push 0x64
push 0xbe
push 0x50
push 0x28
push ebx
call dword [sym.imp.USER32.dll_SetRect]
push 0x40000
push ebx
push 0xa
push 0x43383c
push dword [edi + 0x424]
call esi
push 0
push dword [edi + 0x424]
call dword [sym.imp.GDI32.dll_SetTextColor]
push dword [edi + 0x438]
push dword [edi + 0x424]
call dword [sym.imp.GDI32.dll_SelectObject]
push 0x11d
push 0xbe
push 0x109
push 0x28
push ebx
call dword [sym.imp.USER32.dll_SetRect]
push 0x40000
push ebx
push 0x14
push 0x433848
push dword [edi + 0x424]
call esi
push 0x5a5a5a
push dword [edi + 0x424]
call dword [sym.imp.GDI32.dll_SetTextColor]
push 0xc3
push 0x10e
push 0xaf
push 0x28
push ebx
call dword [sym.imp.USER32.dll_SetRect]
push 0x40000
push ebx
push 0x11
push 0x433860
push dword [edi + 0x424]
call esi
push 0xf3
push 0x230
push 0xf0
push 0x28
lea eax, [ebp - 0x14]
push eax
call dword [sym.imp.USER32.dll_SetRect]
mov ebx, dword [sym.imp.GDI32.dll_CreateSolidBrush]
push 0xe4e6e6
call ebx
mov esi, eax
lea eax, [ebp - 0x14]
push esi
push eax
push dword [edi + 0x424]
call dword [sym.imp.USER32.dll_FillRect]
mov edi, dword [sym.imp.GDI32.dll_DeleteObject]
push esi
call edi
push 0xf3
push 0x104
push 0xf0
push 0x28
lea eax, [ebp - 0x14]
push eax
call dword [sym.imp.USER32.dll_SetRect]
push 0x6fbc82
call ebx
mov esi, eax
lea eax, [ebp - 0x14]
push esi
push eax
mov eax, dword [ebp - 0x18]
push dword [eax + 0x424]
call dword [sym.imp.USER32.dll_FillRect]
push esi
call edi
mov esi, dword [ebp - 0x18]
mov ebx, dword [sym.imp.GDI32.dll_BitBlt]
push 0xcc0020
push 0
push 0
push dword [esi + 0x5f8]
push 0x12
push 0x1d6
push 0xc8
push 0x28
push dword [esi + 0x424]
call ebx
push 0x6fbc82
push dword [esi + 0x424]
call dword [sym.imp.GDI32.dll_SetTextColor]
push 4
push 0x433874
push 0xc6
push 0x208
push dword [esi + 0x424]
call dword [sym.imp.GDI32.dll_TextOutA]
mov ecx, esi
call fcn.00409ec0
lea edi, [esi + 0x1468]
push edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push dword [esi]
call dword [sym.imp.USER32.dll_GetDC]
push 0xcc0020
push 0
mov esi, eax
mov eax, dword [ebp - 0x18]
push 0
push dword [eax + 0x420]
push dword [eax + 0x41c]
push dword [eax + 0x418]
push 0
push 0
push esi
call ebx
mov ebx, dword [ebp - 0x18]
push esi
push dword [ebx]
call dword [sym.imp.USER32.dll_ReleaseDC]
push edi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [ebx + 0x618]
xor esi, esi
sub eax, dword [ebx + 0x614]
sar eax, 2
mov dword [ebp - 0x18], eax
test eax, eax
je 0x40b019
mov eax, dword [ebx + 0x614]
mov ebx, dword [ebx + 0x618]
mov ecx, dword [ebp - 0x18]
sub ebx, eax
mov dword [ebp - 0x1c], eax
sar ebx, 2
cmp ebx, esi
jbe 0x40b02a
mov edi, dword [eax + esi*4]
test edi, edi
je 0x40afe1
mov eax, 0x43387c
lea ecx, [edi + 0x800]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x40afd2
test dl, dl
je 0x40afce
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x40afd2
add ecx, 2
add eax, 2
test dl, dl
jne 0x40afb2
xor eax, eax
jmp 0x40afd7
sbb eax, eax
or eax, 1
test eax, eax
je 0x40afe6
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x18]
inc esi
cmp esi, ecx
jb 0x40af98
test edi, edi
je 0x40b019
push 0x10d4
call fcn.00412002
push 0x10d4
mov esi, eax
push edi
push esi
call fcn.00416020
push esi
push 0
push 0x406390
mov byte [esi + 0x102d], 0
call fcn.00413060
add esp, 0x1c
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00411717
mov esp, ebp
pop ebp
ret
push str.invalid_vector_T__subscript
call fcn.004280ec
int3