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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x441687
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x54
push ebx
push esi
push edi
mov esi, ecx
mov dword [ebp - 0x10], esp
push ecx
xor edi, edi
mov ecx, esp
mov dword [ebp - 0x30], esp
mov dword [esi + 0x588], edi
mov dword [esi + 0x580], edi
push 0x459ac8
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x18], edi
mov dword [esi + 0x58c], edi
mov dword [esi + 0x584], edi
mov dword [esi + 0x450], edi
mov dword [esi + 0x44c], edi
call sub.MFC42.DLL_CString::CString_4
push 1
mov ecx, esi
call fcn.0042dd80
mov eax, dword [esi + 0x3d0]
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x24], eax
call sub.MFC42.DLL_CStringArray::CStringArray
lea ecx, [ebp - 0x14]
mov dword [ebp - 4], edi
call fcn.0043f5d4
mov byte [ebp - 4], 1
xor eax, eax
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1c], eax
cmp eax, ecx
jge 0x40a734
mov ecx, dword [esi + 0x3cc]
mov ebx, eax
shl ebx, 4
add ebx, eax
shl ebx, 3
mov dword [ebp - 0x30], ebx
cmp dword [ebx + ecx + 0x5c], edi
je 0x40a66f
push 0xffffffffffffffff
push edi
lea ecx, [esi + 0x454]
call fcn.00433060
mov edx, dword [esi + 0x3cc]
mov edi, ebx
add edi, edx
lea ecx, [esi + 0x470]
mov edx, dword [edi]
lea eax, [edi + 4]
push eax
mov dword [esi + 0x46c], edx
call sub.MFC42.DLL_CString::operator_1
lea ecx, [edi + 8]
push ecx
lea ecx, [esi + 0x474]
call sub.MFC42.DLL_CString::operator_1
lea edx, [edi + 0xc]
lea ecx, [esi + 0x478]
push edx
call sub.MFC42.DLL_CString::operator_1
lea eax, [edi + 0x10]
lea ecx, [esi + 0x47c]
push eax
call sub.MFC42.DLL_CString::operator_1
lea ecx, [edi + 0x14]
push ecx
lea ecx, [esi + 0x480]
call sub.MFC42.DLL_CString::operator_1
mov edx, dword [edi + 0x18]
lea eax, [edi + 0x1c]
push eax
lea ecx, [esi + 0x488]
mov dword [esi + 0x484], edx
call sub.MFC42.DLL_CString::operator_1
mov ecx, dword [edi + 0x20]
mov dword [esi + 0x48c], ecx
mov edx, dword [edi + 0x24]
mov dword [esi + 0x490], edx
mov eax, dword [edi + 0x28]
mov dword [esi + 0x494], eax
mov ecx, dword [edi + 0x2c]
mov dword [esi + 0x498], ecx
mov edx, dword [edi + 0x30]
lea ecx, [edi + 0x38]
mov dword [esi + 0x49c], edx
mov eax, dword [edi + 0x34]
push ecx
lea ecx, [esi + 0x4a4]
mov dword [esi + 0x4a0], eax
call sub.MFC42.DLL_CString::operator_1
lea edx, [edi + 0x3c]
lea ecx, [esi + 0x4a8]
push edx
call sub.MFC42.DLL_CString::operator_1
mov eax, dword [edi + 0x40]
lea ecx, [edi + 0x44]
push ecx
lea ecx, [esi + 0x4b0]
mov dword [esi + 0x4ac], eax
call sub.MFC42.DLL_CString::operator_1
lea edx, [edi + 0x48]
lea ecx, [esi + 0x4b4]
push edx
call sub.MFC42.DLL_CString::operator_1
mov eax, dword [edi + 0x4c]
mov dword [esi + 0x4b8], eax
mov ecx, dword [edi + 0x50]
mov dword [esi + 0x4bc], ecx
mov edx, dword [edi + 0x54]
mov dword [esi + 0x4c0], edx
mov eax, dword [edi + 0x58]
mov dword [esi + 0x4c4], eax
mov ecx, dword [edi + 0x5c]
mov dword [esi + 0x4c8], ecx
mov edx, dword [edi + 0x60]
mov dword [esi + 0x4cc], edx
mov eax, dword [edi + 0x64]
lea ecx, [edi + 0x68]
mov dword [esi + 0x4d0], eax
push ecx
lea ecx, [esi + 0x4d4]
call sub.MFC42.DLL_CString::operator_1
mov edx, dword [edi + 0x6c]
lea eax, [edi + 0x70]
push eax
lea ecx, [esi + 0x4dc]
mov dword [esi + 0x4d8], edx
call sub.MFC42.DLL_CString::operator_1
mov ecx, dword [edi + 0x74]
mov dword [esi + 0x4e0], ecx
mov edx, dword [edi + 0x78]
mov dword [esi + 0x4e4], edx
mov eax, dword [edi + 0x7c]
mov dword [esi + 0x4e8], eax
mov ecx, dword [edi + 0x80]
mov dword [esi + 0x4ec], ecx
mov edx, dword [edi + 0x84]
mov dword [esi + 0x4f0], edx
mov eax, dword [esi + 0x4c0]
test eax, eax
je 0x40a2de
mov eax, dword [esi + 0x474]
jmp 0x40a2f5
push 0x45c564
lea ecx, [ebp - 0x28]
call sub.MFC42.DLL_CString::CString_4
or dword [ebp - 0x18], 1
mov eax, dword [eax]
mov byte [ebp - 4], 2
push eax
mov eax, dword [esi + 0x470]
push eax
lea ecx, [ebp - 0x14]
push 0x459ab4
push ecx
call sub.MFC42.DLL_CString::Format
mov al, byte [ebp - 0x18]
add esp, 0x10
test al, 1
mov dword [ebp - 4], 1
je 0x40a32c
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x28]
and al, 0xfe
mov dword [ebp - 0x18], eax
call sub.MFC42.DLL_CString::CString
push ecx
lea edx, [ebp - 0x14]
mov ecx, esp
mov dword [ebp - 0x2c], esp
push edx
call sub.MFC42.DLL_CString::CString_1
push 1
mov ecx, esi
call fcn.004091a0
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push 0x459aa8
call sub.MFC42.DLL_CString::CString_4
push 0
mov ecx, esi
call fcn.00423400
or edi, 0xffffffff
lea ecx, [esi + 0x4f8]
push edi
push 0
call sub.MFC42.DLL_CUIntArray::SetSize
push edi
lea ecx, [esi + 0x510]
push 0
call sub.MFC42.DLL_CStringArray::SetSize
mov eax, dword [esi + 0x3b0]
test eax, eax
je 0x40a460
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push 0x459a98
call sub.MFC42.DLL_CString::CString_4
push 1
mov ecx, esi
call fcn.004091a0
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push 0x459a88
call sub.MFC42.DLL_CString::CString_4
push 0
mov ecx, esi
call fcn.00423400
mov ecx, esi
call fcn.004268a0
mov ebx, dword [esi + 0x518]
xor edi, edi
test ebx, ebx
mov dword [ebp - 0x2c], eax
jle 0x40a3f6
push edi
lea ecx, [esi + 0x510]
call fcn.00403de0
push ecx
mov ecx, esp
mov dword [ebp - 0x34], esp
push eax
call sub.MFC42.DLL_CString::CString_1
mov ecx, esi
call fcn.0040b120
inc edi
cmp edi, ebx
jl 0x40a3d2
mov eax, dword [ebp - 0x2c]
test eax, eax
jne 0x40a45a
push ecx
mov ecx, esp
mov dword [ebp - 0x34], esp
push 0x459a70
call sub.MFC42.DLL_CString::CString_4
push 3
mov ecx, esi
call fcn.004091a0
push ecx
mov ecx, esp
mov dword [ebp - 0x34], esp
push 0x459a70
call sub.MFC42.DLL_CString::CString_4
push 0
mov ecx, esi
call fcn.00423400
push ecx
mov ecx, esp
mov dword [ebp - 0x34], esp
push 0x459a70
call sub.MFC42.DLL_CString::CString_4
push 1
mov ecx, esi
call fcn.00423400
push 0x3c
lea ecx, [esi + 0x430]
call fcn.00401640
jmp 0x40a7c8
mov ebx, dword [ebp - 0x30]
or edi, 0xffffffff
mov eax, dword [esi + 0x3cc]
mov edx, dword [ebp - 0x1c]
mov byte [ebp - 4], 3
mov ecx, dword [ebx + eax + 0x50]
push ecx
push edx
lea ecx, [esi + 0x3c8]
call fcn.004321c0
push ecx
add eax, 0xc
mov ecx, esp
mov dword [ebp - 0x34], esp
push eax
call sub.MFC42.DLL_CString::CString_1
mov ecx, esi
call fcn.0040a800
test eax, eax
jne 0x40a4f5
push ecx
mov ecx, esp
mov dword [ebp - 0x34], esp
push 0x459a5c
call sub.MFC42.DLL_CString::CString_4
push 3
mov ecx, esi
call fcn.004091a0
push ecx
mov ecx, esp
mov dword [ebp - 0x34], esp
push 0x459a5c
call sub.MFC42.DLL_CString::CString_4
push 0
mov ecx, esi
call fcn.00423400
push ecx
mov ecx, esp
mov dword [ebp - 0x34], esp
push 0x459a5c
call sub.MFC42.DLL_CString::CString_4
push 1
mov ecx, esi
call fcn.00423400
push 0x3c
lea ecx, [esi + 0x430]
call fcn.00401640
jmp 0x40a653
mov ebx, 1
mov ecx, esi
mov dword [ebp - 4], ebx
call fcn.004099b0
mov eax, dword [esi + 0x408]
test eax, eax
je 0x40a535
push ecx
mov ecx, esp
mov dword [ebp - 0x34], esp
push 0x459a50
call sub.MFC42.DLL_CString::CString_4
push ebx
mov ecx, esi
call fcn.004091a0
mov dword [esi + 0x408], 0
jmp 0x40a653
lea eax, [ebp - 0x40]
push eax
call sub.MFC42.DLL_COleDateTime::GetTickCount
lea ecx, [esi + 0x3fc]
push ecx
lea ecx, [ebp - 0x40]
call fcn.0043f568
push ecx
test eax, eax
mov ecx, esp
je 0x40a57d
mov dword [ebp - 0x34], esp
push 0x459a44
call sub.MFC42.DLL_CString::CString_4
push ebx
mov ecx, esi
call fcn.004091a0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0
call sub.MFC42.DLL_CString::CString
mov dword [ebp - 4], edi
jmp 0x40a7db
mov dword [ebp - 0x34], esp
push 0x459a20
call sub.MFC42.DLL_CString::CString_4
push 0
mov ecx, esi
call fcn.00423400
push ecx
mov ecx, esp
mov dword [ebp - 0x34], esp
push 0x459a20
call sub.MFC42.DLL_CString::CString_4
push ebx
mov ecx, esi
call fcn.00423400
push ecx
mov ecx, esp
mov dword [ebp - 0x34], esp
push 0x459a20
call sub.MFC42.DLL_CString::CString_4
push ebx
mov ecx, esi
call fcn.004091a0
mov ecx, esi
call fcn.00413cf0
push ecx
mov ecx, esp
mov dword [ebp - 0x34], esp
push 0x459ac8
call sub.MFC42.DLL_CString::CString_4
push 0
mov ecx, esi
call fcn.00423400
push ecx
mov ecx, esp
mov dword [ebp - 0x34], esp
push 0x459ac8
call sub.MFC42.DLL_CString::CString_4
push ebx
mov ecx, esi
call fcn.004091a0
mov ecx, esi
mov byte [ebp - 4], 5
call fcn.00414280
test eax, eax
jne 0x40a667
push ecx
mov ecx, esp
mov dword [ebp - 0x34], esp
push 0x459a14
call sub.MFC42.DLL_CString::CString_4
push ebx
mov ecx, esi
call fcn.004091a0
push ecx
mov ecx, esp
mov dword [ebp - 0x34], esp
push 0x459a14
call sub.MFC42.DLL_CString::CString_4
push 0
mov ecx, esi
call fcn.00423400
push ecx
mov ecx, esp
mov dword [ebp - 0x34], esp
push 0x459a14
call sub.MFC42.DLL_CString::CString_4
push ebx
mov ecx, esi
call fcn.00423400
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0
call sub.MFC42.DLL_CString::CString
mov dword [ebp - 4], edi
jmp 0x40a7db
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 4], ebx
xor edi, edi
inc eax
jmp 0x40a10a
push ecx
mov ecx, esp
mov dword [ebp - 0x34], esp
push 0x459a14
call sub.MFC42.DLL_CString::CString_4
push 1
mov ecx, esi
call fcn.004091a0
push ecx
mov ecx, esp
mov dword [ebp - 0x34], esp
push 0x459a14
call sub.MFC42.DLL_CString::CString_4
push 1
mov ecx, esi
call fcn.0042dd80
push ecx
mov ecx, esp
mov dword [ebp - 0x34], esp
push 0x459a14
call sub.MFC42.DLL_CString::CString_4
push edi
mov ecx, esi
call fcn.00423400
push ecx
mov ecx, esp
mov dword [ebp - 0x34], esp
push 0x459a14
call sub.MFC42.DLL_CString::CString_4
push 1
mov ecx, esi
call fcn.00423400
mov ecx, esi
call fcn.0042ea30
mov ecx, esi
call fcn.0042ede0
lea edx, [ebp - 0x4c]
push edx
call sub.MFC42.DLL_COleDateTime::GetTickCount
mov ecx, dword [eax]
mov dword [esi + 0x3ec], ecx
mov edx, dword [eax + 4]
mov dword [esi + 0x3f0], edx
mov eax, dword [eax + 8]
mov dword [esi + 0x3f4], eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0
call sub.MFC42.DLL_CString::CString
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x60]
call fcn.0043f5c8
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret