Function at 0x445ec0
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x46a013
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x1c
push ebx
push esi
push 0x46d280
lea ecx, [esp + 0xc]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_1]
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c], 0
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
lea ecx, [esp + 0x10]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
lea ecx, [esp + 0xc]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
mov bl, 5
push 0x80
lea ecx, [esp + 0x20]
mov byte [esp + 0x30], bl
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::GetBuffer]
push eax
push 0x21090000
call sub.MIL.dll_Ordinal_103
push 0xffffffffffffffff
lea ecx, [esp + 0x20]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::ReleaseBuffer]
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
test eax, eax
je 0x445fa5
push str.Null.
lea ecx, [esp + 0x20]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::Compare]
test eax, eax
je 0x445fa5
push str.__:
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x28]
push ecx
call fcn.0042a5c0
add esp, 0xc
push eax
lea ecx, [esp + 0xc]
mov byte [esp + 0x30], 6
call dword [sym.imp.MFC71.DLL_ATL::CStringT::operator_1]
lea ecx, [esp + 0x20]
mov byte [esp + 0x2c], bl
call dword [0x46c328]
push 0x80
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::GetBuffer]
push eax
push 0x21000008
call sub.MIL.dll_Ordinal_103
push 0xffffffffffffffff
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::ReleaseBuffer]
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
test eax, eax
je 0x446021
push str.Null.
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::Compare]
test eax, eax
je 0x446021
lea edx, [esp + 0x18]
push edx
lea eax, [esp + 0x24]
push 0x46ff70
push eax
call fcn.0042a660
add esp, 0xc
push eax
lea ecx, [esp + 0xc]
mov byte [esp + 0x30], 7
call dword [sym.imp.MFC71.DLL_ATL::CStringT::operator_1]
lea ecx, [esp + 0x20]
mov byte [esp + 0x2c], bl
call dword [0x46c328]
push 0x80
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::GetBuffer]
push eax
push 0x210b0000
call sub.MIL.dll_Ordinal_103
push 0xffffffffffffffff
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::ReleaseBuffer]
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
test eax, eax
je 0x44609d
push str.Null.
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::Compare]
test eax, eax
je 0x44609d
lea ecx, [esp + 0x14]
push ecx
lea edx, [esp + 0x24]
push 0x46ff70
push edx
call fcn.0042a660
add esp, 0xc
push eax
lea ecx, [esp + 0xc]
mov byte [esp + 0x30], 8
call dword [sym.imp.MFC71.DLL_ATL::CStringT::operator_1]
lea ecx, [esp + 0x20]
mov byte [esp + 0x2c], bl
call dword [0x46c328]
push 0x80
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::GetBuffer]
push eax
push 0x210c0000
call sub.MIL.dll_Ordinal_103
push 0xffffffffffffffff
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::ReleaseBuffer]
lea ecx, [esp + 0x10]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
test eax, eax
je 0x446119
push str.Null.
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::Compare]
test eax, eax
je 0x446119
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x24]
push 0x46ff70
push ecx
call fcn.0042a660
add esp, 0xc
push eax
lea ecx, [esp + 0xc]
mov byte [esp + 0x30], 9
call dword [sym.imp.MFC71.DLL_ATL::CStringT::operator_1]
lea ecx, [esp + 0x20]
mov byte [esp + 0x2c], bl
call dword [0x46c328]
push 0x80
lea ecx, [esp + 0x10]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::GetBuffer]
push eax
push 0x210d0000
call sub.MIL.dll_Ordinal_103
push 0xffffffffffffffff
lea ecx, [esp + 0x10]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::ReleaseBuffer]
lea ecx, [esp + 0xc]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
test eax, eax
je 0x446195
push str.Null.
lea ecx, [esp + 0x10]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::Compare]
test eax, eax
je 0x446195
lea edx, [esp + 0xc]
push edx
lea eax, [esp + 0x24]
push 0x46ff70
push eax
call fcn.0042a660
add esp, 0xc
push eax
lea ecx, [esp + 0xc]
mov byte [esp + 0x30], 0xa
call dword [sym.imp.MFC71.DLL_ATL::CStringT::operator_1]
lea ecx, [esp + 0x20]
mov byte [esp + 0x2c], bl
call dword [0x46c328]
call sub.MFC71.DLL_AfxGetModuleState
mov eax, dword [eax + 4]
mov esi, dword [eax + 0x20]
test esi, esi
je 0x4461c2
push 0xff
push ecx
lea edx, [esp + 0x10]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_2]
mov ecx, esi
call fcn.00450860
lea ecx, [esp + 0xc]
call dword [0x46c328]
lea ecx, [esp + 0x10]
call dword [0x46c328]
lea ecx, [esp + 0x14]
call dword [0x46c328]
lea ecx, [esp + 0x18]
call dword [0x46c328]
lea ecx, [esp + 0x1c]
call dword [0x46c328]
lea ecx, [esp + 8]
call dword [0x46c328]
mov ecx, dword [esp + 0x24]
pop esi
mov dword fs:[0], ecx
pop ebx
add esp, 0x28
ret