Function at 0x404d20
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x40763c
mov eax, dword fs:[0]
push eax
sub esp, 0xfc
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0xf8], eax
push esi
push edi
mov eax, dword [section..data]
xor eax, esp
push eax
lea eax, [esp + 0x108]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0x24], esi
xorps xmm0, xmm0
lea ecx, [esp + 0x20]
push 0x409428
movdqu xmmword [esp + 0xf8], xmm0
movdqu xmmword [esp + 0x68], xmm0
movdqu xmmword [esp + 0xd8], xmm0
call dword [sym.imp.mfc120u.dll_Ordinal_290]
push 0
push 0
push 0x31
push esi
mov dword [esp + 0x120], 0
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x800
mov dword [esp + 0x20], eax
call dword [sym.imp.MSVCR120.dll_malloc]
add esp, 4
mov dword [0x40c8d4], eax
test eax, eax
jne 0x404dc3
xor esi, esi
jmp 0x4054e4
mov eax, dword [0x40c934]
test eax, eax
je 0x404dde
push eax
push dword [0x40c930]
mov ecx, 0x40c938
call dword [sym.imp.mfc120u.dll_Ordinal_8347]
push dword [0x40c938]
push esi
call dword [sym.imp.USER32.dll_SetWindowTextW]
push esi
mov dword [0x40c8a0], 3
mov dword [0x40c89c], 3
mov dword [0x40c898], 5
mov dword [0x40c7cc], 5
call dword [sym.imp.USER32.dll_GetDC]
mov esi, eax
push esi
mov dword [esp + 0x1c], esi
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push 0xc
push esi
mov dword [esp + 0x18], eax
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
cmp eax, 8
jl 0x404e43
lea ecx, [esp + 0x20]
call dword [sym.imp.mfc120u.dll_Ordinal_4280]
push 0
lea eax, [esp + 0xe8]
xorps xmm0, xmm0
push eax
push 0
push 0x30
movdqu xmmword [esp + 0xf4], xmm0
call dword [sym.imp.USER32.dll_SystemParametersInfoW]
mov edx, dword [esp + 0xec]
mov edi, 0x9e
sub edi, dword [0x40c898]
mov ecx, edx
sub edi, dword [0x40c8a0]
mov eax, dword [esp + 0xe4]
add edi, edi
sub ecx, eax
mov dword [0x40c8bc], 0
mov dword [0x40c8c0], edi
cmp ecx, 0x354
jge 0x404eb6
sub eax, edx
add eax, 0x354
cdq
sub eax, edx
sar eax, 1
neg eax
add edi, eax
mov dword [0x40c8c0], edi
mov ecx, dword [esp + 0x20]
mov eax, edi
cdq
sub eax, edx
mov dword [0x40c974], 0
sar eax, 1
add eax, 0x5f
mov dword [0x40c968], 0
cmp dword [ecx - 0xc], 0
mov dword [esp + 0x14], eax
je 0x404f0b
call fcn.00405b00
mov ecx, eax
mov dword [0x40c96c], ecx
test ecx, ecx
je 0x404eff
mov dword [0x40c8d0], 1
jmp 0x404f11
mov dword [0x40c8d0], 0
jmp 0x404f31
mov ecx, dword [0x40c96c]
test ecx, ecx
je 0x404f31
mov eax, dword [ecx + 8]
mov edx, esi
mov dword [0x40c8bc], eax
mov eax, dword [ecx + 4]
mov dword [0x40c8c0], eax
call fcn.004059e0
mov dword [0x40c974], eax
push dword [esp + 0x10]
call dword [sym.imp.GDI32.dll_DeleteDC]
push dword [0x40c8bc]
lea eax, [esp + 0xf8]
push dword [0x40c8c0]
push 0
push 0
push eax
call dword [sym.imp.USER32.dll_SetRect]
push dword [esp + 0x1c]
mov edi, dword [sym.imp.GDI32.dll_SelectObject]
push esi
call edi
lea eax, [esp + 0x28]
push eax
push esi
call dword [sym.imp.GDI32.dll_GetTextMetricsW]
push dword [esp + 0x1c]
mov dword [esp + 0x2c], 0xd
push esi
mov dword [0x40c8b8], 0xd
mov dword [0x40c8b4], 0xd
call edi
mov eax, dword [esp + 0x28]
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
lea ecx, [eax + eax*8]
mov word [esp + 0x88], 0
mov eax, 0x66666667
mov byte [esp + 0x8a], 0
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [0x40c8c4], eax
call fcn.00404980
mov byte [esp + 0x8b], al
mov eax, dword [0x40c8b8]
mov dword [esp + 0x74], eax
lea eax, [esp + 0x90]
push str.Segoe_UI
push eax
mov word [esp + 0x94], 0
mov dword [esp + 0x96], 0x2202
mov dword [esp + 0x8c], 0x258
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
lea eax, [esp + 0x74]
push eax
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
push eax
push esi
mov dword [0x40c978], eax
call edi
push dword [0x40c8d4]
push 0x800
push esi
call dword [sym.imp.GDI32.dll_GetTextFaceW]
push dword [0x40c8d4]
lea eax, [esp + 0x94]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x405093
push str.Segoe_UI
lea eax, [esp + 0x94]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
lea eax, [esp + 0x74]
push eax
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
push eax
push esi
mov dword [0x40c978], eax
call edi
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
lea eax, [esp + 0x28]
push eax
push esi
call dword [sym.imp.GDI32.dll_GetTextMetricsW]
mov ecx, dword [esp + 0x28]
mov eax, dword [0x40c89c]
add eax, ecx
mov dword [0x40c8b8], ecx
add dword [esp + 0x100], eax
mov eax, dword [0x40c8b4]
push 0x40959c
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0xffffff38
lea eax, [eax + eax*2]
mov dword [esp + 0x88], 0x190
add eax, eax
cdq
and edx, 3
add eax, edx
sar eax, 2
mov dword [esp + 0x78], eax
lea eax, [esp + 0x94]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
lea eax, [esp + 0x74]
push eax
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
mov dword [0x40c97c], eax
mov eax, dword [0x40c8b4]
mov dword [esp + 0x74], eax
lea eax, [esp + 0x90]
push 0x40959c
push eax
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0x190
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
lea eax, [esp + 0x74]
push eax
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
mov dword [0x40c8c8], eax
mov eax, dword [0x40c8b4]
add eax, 6
mov dword [esp + 0x74], eax
lea eax, [esp + 0x74]
push eax
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
cmp dword [0x40c94c], 0
mov ecx, eax
mov dword [0x40c8cc], ecx
je 0x4051e8
push ecx
push esi
call edi
push 0x64
push 0x40c7d0
push dword [0x40c94c]
push dword [0x40c930]
call dword [sym.imp.USER32.dll_LoadStringW]
mov eax, dword [esp + 0x100]
push eax
push dword [esp + 0x100]
push eax
push dword [esp + 0x100]
mov eax, dword [sym.imp.USER32.dll_SetRect]
push 0x40c8a4
call eax
mov eax, dword [0x40c89c]
mov ecx, dword [esp + 0x100]
add eax, dword [esp + 0x28]
add ecx, eax
mov dword [esp + 0x100], ecx
mov dword [0x40c8b0], ecx
jmp 0x4051fc
mov eax, dword [sym.imp.USER32.dll_SetRect]
push 0
push 0
push 0
push 0
push 0x40c8a4
call eax
push dword [0x40c8c8]
push esi
call edi
lea eax, [esp + 0x28]
push eax
push esi
call dword [sym.imp.GDI32.dll_GetTextMetricsW]
mov eax, dword [esp + 0x28]
mov dword [0x40c8b4], eax
lea eax, [esp + 0xf4]
push eax
lea eax, [esp + 0xd8]
push eax
call dword [sym.imp.USER32.dll_CopyRect]
mov eax, dword [0x40c7c4]
or eax, 0xd10
push eax
lea eax, [esp + 0xd8]
push eax
mov eax, dword [0x40c93c]
push dword [eax - 0xc]
push eax
push esi
call dword [sym.imp.USER32.dll_DrawTextW]
mov eax, dword [esp + 0xdc]
sub eax, dword [esp + 0xd4]
cdq
mov edi, eax
mov eax, dword [esp + 0xe0]
sub eax, dword [esp + 0xd8]
xor edi, edx
sub edi, edx
cdq
mov esi, eax
mov eax, dword [0x40c89c]
xor esi, edx
sub esi, edx
cmp dword [esp + 0xfc], edi
cmovg edi, dword [esp + 0xfc]
mov dword [esp + 0xfc], edi
lea eax, [esi + eax*2]
add eax, dword [0x40c8b4]
add dword [esp + 0x100], eax
call fcn.00404920
test eax, eax
je 0x4052c0
mov eax, 8
mov byte [esp + 0x8f], 2
jmp 0x4052d0
mov eax, dword [0x40c8c4]
mov dword [esp + 0x84], 0x190
cmp dword [0x40c7c8], 0
mov ecx, 0xc
push 0x409588
cmovne eax, ecx
mov dword [esp + 0x78], eax
lea eax, [esp + 0x94]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
lea eax, [esp + 0x74]
push eax
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
mov esi, dword [esp + 0x18]
push eax
push esi
mov dword [0x40c980], eax
call dword [sym.imp.GDI32.dll_SelectObject]
lea eax, [esp + 0x28]
push eax
push esi
call dword [sym.imp.GDI32.dll_GetTextMetricsW]
mov eax, dword [0x40c948]
test eax, eax
je 0x4053c0
xor edi, edi
xor esi, esi
test eax, eax
je 0x40537d
lea eax, [edi + 0x20]
mov ecx, dword [0x40c8d4]
test esi, esi
jle 0x40534d
cmp word [ecx + esi*2 - 2], 0xa
je 0x40534d
mov word [ecx + esi*2], ax
inc esi
mov eax, 0x800
sub eax, esi
push eax
lea eax, [ecx + esi*2]
push eax
mov eax, dword [0x40c944]
add eax, edi
push eax
push dword [0x40c930]
call dword [sym.imp.USER32.dll_LoadStringW]
add esi, eax
inc edi
mov eax, 0x20
cmp edi, dword [0x40c948]
jb 0x405336
mov eax, dword [0x40c7c4]
movdqu xmm0, xmmword [esp + 0xf4]
or eax, 0xd10
push eax
lea eax, [esp + 0x68]
push eax
push esi
push dword [0x40c8d4]
mov esi, dword [esp + 0x28]
push esi
movdqu xmmword [esp + 0x78], xmm0
call dword [sym.imp.USER32.dll_DrawTextW]
mov dword [0x40c8c4], eax
add eax, dword [0x40c89c]
add dword [esp + 0x100], eax
push 0xd
call dword [sym.imp.GDI32.dll_GetStockObject]
push eax
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
push esi
mov esi, dword [esp + 0x28]
push esi
call dword [sym.imp.USER32.dll_ReleaseDC]
push esi
call dword [sym.imp.USER32.dll_GetParent]
mov edi, eax
push edi
call dword [sym.imp.USER32.dll_GetDC]
push dword [0x40c954]
mov esi, eax
push esi
call dword [sym.imp.GDI32.dll_GetNearestColor]
push eax
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
push esi
push edi
mov dword [0x40c970], eax
call dword [sym.imp.USER32.dll_ReleaseDC]
push 0
push 0xfffffffffffffff0
push dword [esp + 0x2c]
call dword [sym.imp.USER32.dll_GetWindowLongW]
push eax
lea eax, [esp + 0xfc]
push eax
call dword [sym.imp.USER32.dll_AdjustWindowRect]
mov ecx, dword [0x40c8a0]
mov edi, dword [0x40c898]
mov esi, dword [0x40c7cc]
mov eax, dword [esp + 0xf0]
sub eax, dword [esp + 0xe8]
lea edi, [edi + ecx]
cdq
mov ecx, dword [0x40c89c]
sub eax, edx
push 0x14
add edi, edi
sub edi, dword [esp + 0xf8]
add edi, dword [esp + 0x100]
lea esi, [esi + ecx]
mov ecx, eax
add esi, esi
sub esi, dword [esp + 0xfc]
add esi, dword [esp + 0x104]
mov eax, esi
sar ecx, 1
cdq
sub eax, edx
sar eax, 1
sub ecx, eax
mov eax, dword [esp + 0xf0]
sub eax, dword [esp + 0xe8]
push esi
cdq
push edi
push ecx
sub eax, edx
mov ecx, eax
mov eax, edi
cdq
sub eax, edx
sar ecx, 1
sar eax, 1
sub ecx, eax
add ecx, dword [esp + 0x24]
push ecx
push 0
push dword [esp + 0x3c]
call dword [sym.imp.USER32.dll_SetWindowPos]
mov eax, dword [0x40c7cc]
add eax, dword [0x40c89c]
push eax
mov eax, dword [0x40c898]
add eax, dword [0x40c8a0]
push eax
push 0x40c8a4
call dword [sym.imp.USER32.dll_OffsetRect]
mov esi, 1
lea ecx, [esp + 0x20]
call dword [sym.imp.mfc120u.dll_Ordinal_1042]
mov eax, esi
mov ecx, dword [esp + 0x108]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [esp + 0xf8]
xor ecx, esp
call fcn.004066c6
add esp, 0x108
ret