Function at 0x408e00
Capabilities:
Create process on windows

Disassembly:
push 0xffffffffffffffff
push 0x41b6b2
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x210
mov eax, dword [0x4296b8]
mov dword [esp + 0x20c], eax
push esi
push 4
lea eax, [esp + 8]
push eax
lea ecx, [esp + 0x230]
mov dword [esp + 0x224], 1
call dword [sym.imp.MFC71U.DLL_RFX_Text_Bulk]
push 0x41f798
mov ecx, eax
call dword [sym.imp.MFC71U.DLL_CListBox::CompareItem]
lea ecx, [esp + 4]
mov esi, eax
call dword [sym.imp.MFC71U.DLL_ATL::CSimpleStringT::CSimpleStringT]
test esi, esi
pop esi
je 0x409083
push ebx
lea ecx, [esp + 8]
call dword [sym.imp.MFC71U.DLL_ATL::CStringT::CStringT_1]
mov ecx, dword [esp + 0x228]
mov eax, dword [ecx - 0xc]
cmp eax, 7
mov bl, 2
mov byte [esp + 0x21c], bl
jl 0x408f99
push 3
add eax, 0xfffffff9
push eax
lea ecx, [esp + 0xc]
push ecx
lea ecx, [esp + 0x234]
call dword [sym.imp.MFC71U.DLL_ATL::CStringT::Mid]
push eax
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], 3
call dword [0x41d410]
lea ecx, [esp + 4]
mov byte [esp + 0x21c], bl
call dword [sym.imp.MFC71U.DLL_ATL::CSimpleStringT::CSimpleStringT]
mov edx, dword [esp + 0x234]
push edx
lea ecx, [esp + 0xc]
call dword [sym.imp.MFC71U.DLL_CListBox::CompareItem]
test eax, eax
je 0x408f99
push 0x41f790
lea ecx, [esp + 0xc]
call dword [sym.imp.MFC71U.DLL_CListBox::CompareItem]
test eax, eax
jne 0x408f99
push 3
push str.Software_aheadNero___Burning_RomNeverShowMeAgain
push SysReAllocStringLen
push 0x41f704
lea ecx, [esp + 0x20]
call fcn.00413170
lea ecx, [esp + 4]
mov byte [esp + 0x21c], 4
call fcn.00404680
lea ecx, [esp + 0xc]
mov byte [esp + 0x21c], 5
call fcn.00404680
push 0x6f1a
lea ecx, [esp + 0x10]
mov byte [esp + 0x220], 6
call fcn.00404690
mov eax, dword [esp + 0xc]
push 0x19
push eax
lea ecx, [esp + 0xc]
push ecx
call fcn.00404760
mov edx, dword [esp + 0x10]
add esp, 0xc
push 0
push 0x40
push edx
lea ecx, [esp + 0x1c]
call fcn.004132f0
lea ecx, [esp + 0xc]
call dword [sym.imp.MFC71U.DLL_ATL::CSimpleStringT::CSimpleStringT]
lea ecx, [esp + 4]
call dword [sym.imp.MFC71U.DLL_ATL::CSimpleStringT::CSimpleStringT]
lea ecx, [esp + 0x10]
mov byte [esp + 0x21c], bl
call fcn.00408d60
mov eax, dword [esp + 0x228]
push 5
push 0
push 0
push eax
push 0
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
mov edx, eax
cmp edx, 0x20
jge 0x409076
cmp edx, 0x1f
jne 0x408ffd
push 0
lea ecx, [esp + 0x14]
call fcn.00412f40
lea ecx, [esp + 0x10]
mov byte [esp + 0x21c], 7
call sub.MFC71U.DLL_CColorDialog::DoModal
lea ecx, [esp + 0x10]
mov byte [esp + 0x21c], bl
call fcn.00408cf0
lea ecx, [esp + 8]
call dword [sym.imp.MFC71U.DLL_ATL::CSimpleStringT::CSimpleStringT]
pop ebx
jmp 0x4090b7
push edi
push 0
push 0xff
mov word [esp + 0x1c], 0
xor eax, eax
mov ecx, 0x7f
lea edi, [esp + 0x1e]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x1c]
push ecx
push 0x400
push edx
push 0
push 0x1000
stosw word es:[edi], ax
call dword [sym.imp.KERNEL32.dll_FormatMessageW]
lea ecx, [esp + 8]
call dword [sym.imp.MFC71U.DLL_ATL::CStringT::CStringT_1]
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0xc]
push 0x6f00
push eax
mov byte [esp + 0x22c], 8
call dword [sym.imp.MFC71U.DLL_ATL::CStringT::FormatMessageV]
mov ecx, dword [esp + 0x14]
add esp, 0xc
push 0
push 0
push ecx
call sub.MFC71U.DLL_AfxMessageBox
lea ecx, [esp + 8]
call dword [sym.imp.MFC71U.DLL_ATL::CSimpleStringT::CSimpleStringT]
pop edi
lea ecx, [esp + 8]
call dword [sym.imp.MFC71U.DLL_ATL::CSimpleStringT::CSimpleStringT]
pop ebx
jmp 0x4090b7
call sub.MFC71U.DLL_AfxGetStringManager
test eax, eax
je 0x4090b7
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x7c]
test eax, eax
je 0x4090b7
mov ecx, dword [esp + 0x220]
test ecx, ecx
je 0x4090b7
mov eax, dword [esp + 0x22c]
mov edx, dword [esp + 0x228]
push eax
push edx
call sub.MFC71U.DLL_CWnd::WindowProc
lea ecx, [esp + 0x224]
call dword [sym.imp.MFC71U.DLL_ATL::CSimpleStringT::CSimpleStringT]
lea ecx, [esp + 0x230]
call dword [sym.imp.MFC71U.DLL_ATL::CSimpleStringT::CSimpleStringT]
mov ecx, dword [esp + 0x210]
mov dword fs:[0], ecx
mov ecx, dword [esp + 0x20c]
call fcn.0041a43b
add esp, 0x21c
ret