Function at 0x404217
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x440cf8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x88
mov dword [ebp - 0x78], ecx
lea ecx, [ebp - 0x1c]
call fcn.0043fa26
mov dword [ebp - 4], 0
push 0xef21
lea ecx, [ebp - 0x1c]
call sub.MFC42.DLL_CString::LoadStringA
lea ecx, [ebp - 0x10]
call fcn.0043fa26
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1c]
call fcn.00402550
push eax
push str.c:FIDIAPROGRAMFAPI__s.DMP
lea eax, [ebp - 0x10]
push eax
call sub.MFC42.DLL_CString::Format
add esp, 0xc
push str._to_Fidia_Service
lea ecx, [ebp - 0x10]
push ecx
push str.Fidia_FAPI.EXE_runtime_error._nPlease_compress_and_send_the_file
lea edx, [ebp - 0x54]
push edx
call sub.MFC42.DLL_operator
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x80], eax
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x80]
push ecx
lea edx, [ebp - 0x58]
push edx
call sub.MFC42.DLL_operator_3
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x88], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x88]
call fcn.00402550
push eax
lea ecx, [ebp - 0x10]
call fcn.00402550
push eax
call fcn.0041f54f
add esp, 8
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x58]
call sub.MFC42.DLL_CString::CString
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x54]
call sub.MFC42.DLL_CString::CString
push 0x4537e8
push 1
push str.HighPriority
push 0x453804
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 1
jne 0x404331
mov dword [ebp - 0x50], 0x80
mov ecx, dword [ebp - 0x50]
push ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_SetPriorityClass]
mov dword [ebp - 0x4c], eax
push 0x45380c
push 0
push str.FapiHighPriority
push str.Options
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 2
jl 0x404366
push 0x100
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_SetPriorityClass]
mov dword [ebp - 0x4c], eax
mov edx, dword [ebp - 0x78]
mov dword [edx + 0x78], 3
push 0x28
push 0
lea eax, [ebp - 0x44]
push eax
call sub.MSVCRT.dll_memset
add esp, 0xc
mov dword [ebp - 0x44], 0x20b
mov ecx, dword [sym.imp.USER32.dll_DefWindowProcA]
mov dword [ebp - 0x40], ecx
call fcn.00404970
mov dword [ebp - 0x34], eax
push 0x81
mov ecx, dword [ebp - 0x78]
call fcn.00404a50
mov dword [ebp - 0x30], eax
push 0x7f00
mov ecx, dword [ebp - 0x78]
call fcn.00404a20
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0x453834
lea edx, [ebp - 0x44]
push edx
call sub.MFC42.DLL_AfxRegisterClass
test eax, eax
jne 0x40442c
mov eax, 1
test eax, eax
je 0x4043ef
mov dword [ebp - 0x8c], 0
jmp 0x404402
push str.Class_Registration_Failed_n
call fcn.00404960
add esp, 4
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x5c], 0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x10]
call sub.MFC42.DLL_CString::CString
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1c]
call sub.MFC42.DLL_CString::CString
mov eax, dword [ebp - 0x5c]
jmp 0x4046c6
mov ecx, dword [ebp - 0x78]
mov dword [ecx + 0x124], 1
push 4
mov ecx, dword [ebp - 0x78]
call sub.MFC42.DLL_CWinApp::LoadStdProfileSettings
push 0x90
call fcn.00402720
mov dword [ebp - 0x64], eax
mov byte [ebp - 4], 4
cmp dword [ebp - 0x64], 0
je 0x40447e
push 0x445fa0
push 0x447030
push 0x445ea8
push 0x81
mov ecx, dword [ebp - 0x64]
call sub.MFC42.DLL_CMultiDocTemplate::CMultiDocTemplate
mov dword [ebp - 0x90], eax
jmp 0x404488
mov dword [ebp - 0x90], 0
mov edx, dword [ebp - 0x90]
mov dword [ebp - 0x60], edx
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x18]
push ecx
mov ecx, dword [ebp - 0x78]
call sub.MFC42.DLL_CWinApp::AddDocTemplate
push 0x4c0
call fcn.00402720
mov dword [ebp - 0x6c], eax
mov byte [ebp - 4], 5
cmp dword [ebp - 0x6c], 0
je 0x4044ce
mov ecx, dword [ebp - 0x6c]
call fcn.00408434
mov dword [ebp - 0x94], eax
jmp 0x4044d8
mov dword [ebp - 0x94], 0
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x68], edx
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x78]
mov edx, dword [ebp - 0x14]
mov dword [ecx + 0x20], edx
push 0
push 0
push 0
push 0x80
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x14]
call dword [edx + 0xc0]
test eax, eax
jne 0x40453b
mov dword [ebp - 0x70], 0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x10]
call sub.MFC42.DLL_CString::CString
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1c]
call sub.MFC42.DLL_CString::CString
mov eax, dword [ebp - 0x70]
jmp 0x4046c6
push 0
push 0
push 0xc00000
mov ecx, dword [ebp - 0x14]
call sub.MFC42.DLL_CWnd::ModifyStyle
mov eax, dword [ebp - 0x78]
mov ecx, dword [eax + 0x74]
movsx edx, byte [ecx]
test edx, edx
je 0x404598
mov eax, dword [ebp - 0x78]
mov ecx, dword [eax + 0x74]
push ecx
call dword [sym.imp.MSVCRT.dll_atoi]
add esp, 4
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x410], eax
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x458], 0
push 0x45385c
push 0
push 0x453868
push 0x453870
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
jmp 0x4045b2
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x410], 1
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x458], 1
mov ecx, dword [ebp - 0x78]
call sub.MFC42.DLL_CWinApp::OnFileNew
push 0x453878
push 0
push str.Debug
push 0x45388c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
test eax, eax
je 0x4045f4
mov eax, dword [ebp - 0x78]
mov dword [eax + 0x11c], 0
mov ecx, dword [ebp - 0x78]
mov dword [ecx + 0x120], 1
jmp 0x404687
mov edx, dword [ebp - 0x78]
mov dword [edx + 0x11c], 1
mov eax, dword [ebp - 0x78]
mov dword [eax + 0x120], 0
push 0x58
push 0
mov ecx, dword [ebp - 0x78]
add ecx, 0xc4
push ecx
call sub.MSVCRT.dll_memset
add esp, 0xc
mov edx, dword [ebp - 0x78]
mov dword [edx + 0xc4], 0x58
mov eax, dword [ebp - 0x78]
mov dword [eax + 0xd0], 6
mov ecx, dword [ebp - 0x14]
call fcn.004049d0
mov ecx, dword [ebp - 0x78]
mov dword [ecx + 0xc8], eax
push 0
push 0x10
push 0x10
push 1
push 0x81
call fcn.00404970
push eax
call dword [sym.imp.USER32.dll_LoadImageA]
mov edx, dword [ebp - 0x78]
mov dword [edx + 0xd8], eax
push str.Fidia_FAPI_Server
mov eax, dword [ebp - 0x78]
add eax, 0xdc
push eax
call sub.MSVCRT.dll_strcpy
add esp, 8
push 3
mov ecx, dword [ebp - 0x14]
call sub.MFC42.DLL_CWnd::ShowWindow
mov ecx, dword [ebp - 0x14]
call fcn.00404a00
mov ecx, dword [ebp - 0x14]
call fcn.00408bf4
mov dword [ebp - 0x74], 1
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x10]
call sub.MFC42.DLL_CString::CString
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1c]
call sub.MFC42.DLL_CString::CString
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret