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

Disassembly:
push 0xffffffffffffffff
push 0x409836
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x7c
push ebx
push ebp
push esi
push edi
mov ebp, ecx
push 0x405
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x406
mov ecx, ebp
mov dword [esp + 0x28], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x407
mov ecx, ebp
mov dword [esp + 0x2c], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x408
mov ecx, ebp
mov dword [esp + 0x30], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x409
mov ecx, ebp
mov dword [esp + 0x34], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x40a
mov ecx, ebp
mov dword [esp + 0x38], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x41a
mov ecx, ebp
mov dword [esp + 0x3c], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x41b
mov ecx, ebp
mov dword [esp + 0x40], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x41c
mov ecx, ebp
mov dword [esp + 0x44], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x41d
mov ecx, ebp
mov dword [esp + 0x48], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x41e
mov ecx, ebp
mov dword [esp + 0x4c], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x403
mov ecx, ebp
mov dword [esp + 0x50], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x40b
mov ecx, ebp
mov dword [esp + 0x54], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x40d
mov ecx, ebp
mov dword [esp + 0x58], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x40e
mov ecx, ebp
mov dword [esp + 0x5c], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x40c
mov ecx, ebp
mov dword [esp + 0x60], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x411
mov ecx, ebp
mov dword [esp + 0x64], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x40f
mov ecx, ebp
mov dword [esp + 0x68], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x413
mov ecx, ebp
mov dword [esp + 0x6c], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
mov dword [esp + 0x6c], eax
push 0x414
mov ecx, ebp
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x417
mov ecx, ebp
mov dword [esp + 0x74], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x410
mov ecx, ebp
mov dword [esp + 0x78], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x412
mov ecx, ebp
mov dword [esp + 0x7c], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x425
mov ecx, ebp
mov dword [esp + 0x80], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x415
mov ecx, ebp
mov dword [esp + 0x84], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x416
mov ecx, ebp
mov dword [esp + 0x88], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
push 0x426
mov ecx, ebp
mov dword [esp + 0x8c], eax
call sub.MFC42.DLL_CWnd::GetDlgItem
mov esi, dword [esp + 0x9c]
mov edx, eax
test esi, esi
mov dword [esp + 0x20], edx
jne 0x404233
mov ecx, 6
xor eax, eax
mov edi, 0x40dce8
rep stosd dword es:[edi], eax
push esi
mov ecx, edx
call sub.MFC42.DLL_CWnd::EnableWindow
lea eax, [esp + 0x24]
xor esi, esi
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x10]
mov ebx, esi
and ebx, 0xff
xor edx, edx
mov edi, dword [ecx]
mov dl, byte [0x40dce9]
mov cl, bl
shr edx, cl
mov ecx, edi
and edx, 1
push edx
call sub.MFC42.DLL_CWnd::EnableWindow
xor eax, eax
mov cl, bl
mov al, byte [0x40dceb]
push 0
shr eax, cl
and eax, 1
push eax
mov eax, dword [edi + 0x20]
push 0xf1
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [esp + 0x10]
inc esi
add ecx, 4
cmp esi, 8
mov dword [esp + 0x10], ecx
jl 0x404245
lea ecx, [esp + 0x44]
xor esi, esi
mov dword [esp + 0x10], ecx
mov ebx, esi
mov edx, dword [esp + 0x10]
and ebx, 0xff
xor eax, eax
mov al, byte [0x40dcea]
mov edi, dword [edx]
mov cl, bl
shr eax, cl
mov ecx, edi
and eax, 1
push eax
call sub.MFC42.DLL_CWnd::EnableWindow
mov eax, dword [0x40dcec]
mov cl, bl
and eax, 0xff
push 0
shr eax, cl
mov ecx, dword [edi + 0x20]
and eax, 1
push eax
push 0xf1
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [esp + 0x10]
inc esi
add ecx, 4
cmp esi, 3
mov dword [esp + 0x10], ecx
jl 0x4042a5
mov dl, byte [0x40dcea]
mov esi, dword [esp + 0x50]
shr edx, 4
and edx, 1
mov ecx, esi
push edx
call sub.MFC42.DLL_CWnd::EnableWindow
mov al, byte [0x40dcec]
push 0
shr eax, 4
and eax, 1
push eax
mov eax, dword [esi + 0x20]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
push 0xf1
push eax
call esi
mov cl, byte [0x40dcea]
mov edi, dword [esp + 0x54]
shr ecx, 5
and ecx, 1
push ecx
mov ecx, edi
call sub.MFC42.DLL_CWnd::EnableWindow
mov al, byte [0x40dcec]
mov edx, dword [edi + 0x20]
shr eax, 5
and eax, 1
push 0
push eax
push 0xf1
push edx
call esi
mov ebx, dword [sym.imp.MSVCRT.dll_atoi]
xor esi, esi
mov al, byte [esi + 0x40dced]
test al, al
jne 0x404395
mov edi, dword [esp + esi*4 + 0x58]
push 0
mov ecx, edi
call sub.MFC42.DLL_CWnd::EnableWindow
push 0x40dc60
mov ecx, edi
call sub.MFC42.DLL_CWnd::SetWindowTextA
jmp 0x4044c3
lea ecx, [esp + 0x10]
call sub.MFC42.DLL_CString::CString_2
cmp esi, 5
mov dword [esp + 0x94], 0
je 0x40446d
mov ecx, dword [esp + esi*4 + 0x58]
push 1
call sub.MFC42.DLL_CWnd::EnableWindow
cmp esi, 3
jl 0x404417
cmp esi, 0xc
je 0x404417
lea eax, [esp + 0x14]
push esi
push eax
mov ecx, 0x40dcc8
call fcn.00402e50
mov eax, dword [eax]
mov byte [esp + 0x94], 2
push eax
call ebx
add esp, 4
mov ecx, 0x40dcc8
push eax
push esi
call fcn.00403350
push eax
lea ecx, [esp + 0x14]
push 0x40d4a0
push ecx
call sub.MFC42.DLL_CString::Format
add esp, 0xc
mov byte [esp + 0x94], 0
lea ecx, [esp + 0x14]
jmp 0x40449c
lea edx, [esp + 0x18]
push esi
push edx
mov ecx, 0x40dcc8
call fcn.00402e50
mov eax, dword [eax]
mov byte [esp + 0x94], 1
push eax
call dword [sym.imp.MSVCRT.dll_atof]
push ecx
mov ecx, 0x40dcc8
fstp qword [esp]
push esi
call fcn.00403140
sub esp, 8
lea eax, [esp + 0x18]
fstp qword [esp]
push str._2.1f
push eax
call sub.MFC42.DLL_CString::Format
add esp, 0x10
mov byte [esp + 0x94], 0
lea ecx, [esp + 0x18]
jmp 0x40449c
lea ecx, [esp + 0x1c]
push 5
push ecx
mov ecx, 0x40dcc8
call fcn.00402e50
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x98], 3
call fcn.00409016
mov byte [esp + 0x94], 0
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::CString
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + esi*4 + 0x58]
push edx
call sub.MFC42.DLL_CWnd::SetWindowTextA
lea ecx, [esp + 0x10]
mov dword [esp + 0x94], 0xffffffff
call sub.MFC42.DLL_CString::CString
inc esi
cmp esi, 0xd
jl 0x40436d
mov ecx, ebp
call fcn.004057e0
mov ecx, ebp
call fcn.00405850
mov ecx, ebp
call fcn.004058f0
mov ecx, ebp
call fcn.00405960
mov ecx, ebp
call fcn.004059d0
mov eax, dword [0x40dce0]
test eax, eax
je 0x404549
lea esi, [esp + 0x24]
mov edi, 0xd
mov ecx, dword [esi]
push 0
call sub.MFC42.DLL_CWnd::EnableWindow
add esi, 4
dec edi
jne 0x404502
lea edi, [esp + 0x58]
mov ebx, 0xd
mov esi, dword [edi]
push 0
mov ecx, esi
call sub.MFC42.DLL_CWnd::EnableWindow
mov eax, dword [esi + 0x20]
push 0
push 0x2a
push 0xcc
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
add edi, 4
dec ebx
jne 0x40451a
mov ecx, dword [esp + 0x20]
push 0
call sub.MFC42.DLL_CWnd::EnableWindow
push 0
mov ecx, ebp
call sub.MFC42.DLL_CWnd::UpdateData
mov ecx, dword [esp + 0x8c]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x88
ret 4