Function at 0x423280
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x4478d0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x24c
mov eax, dword [esp + 0x260]
push ebx
push esi
push edi
xor esi, esi
push eax
lea ecx, [esp + 0x1c]
mov dword [esp + 0x34], esi
call sub.MFC42u.DLL_CString::CString_2
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x260], 1
cmp dword [ecx - 8], esi
jne 0x42331e
lea edx, [esp + 0x10]
push esi
push edx
call fcn.00413590
push eax
lea eax, [esp + 0x20]
push eax
mov byte [esp + 0x270], 2
call fcn.00415c70
add esp, 0x10
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0x264], 3
call sub.MFC42u.DLL_CString::operator_2
lea ecx, [esp + 0x14]
mov byte [esp + 0x260], 2
call sub.MFC42u.DLL_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x260], 1
call sub.MFC42u.DLL_CString::CString
lea ecx, [esp + 0x18]
push ecx
lea ecx, [esp + 0x10]
call sub.MFC42u.DLL_CString::CString_1
push 0x5c
lea ecx, [esp + 0x10]
mov byte [esp + 0x264], 4
call sub.MFC42u.DLL_CString::Find
test eax, eax
jge 0x4233ff
lea edx, [esp + 0x10]
push edx
call fcn.00422ce0
mov eax, dword [eax]
push 0x5c
push eax
lea eax, [esp + 0x20]
mov bl, 5
push eax
mov byte [esp + 0x270], bl
call fcn.00418f00
add esp, 0x10
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0x264], 6
call sub.MFC42u.DLL_CString::operator_2
lea ecx, [esp + 0x14]
mov byte [esp + 0x260], bl
call sub.MFC42u.DLL_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x260], 4
call sub.MFC42u.DLL_CString::CString
mov ecx, dword [esp + 0xc]
push 0x5c
lea edx, [esp + 0x14]
push ecx
push edx
call fcn.00418f00
add esp, 0xc
lea ecx, [esp + 0x18]
lea edx, [esp + 0x14]
push ecx
mov bl, 7
push eax
push edx
mov byte [esp + 0x26c], bl
call sub.MFC42u.DLL_operator_2
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0x264], 8
call sub.MFC42u.DLL_CString::operator_2
lea ecx, [esp + 0x14]
mov byte [esp + 0x260], bl
call sub.MFC42u.DLL_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x260], 4
call sub.MFC42u.DLL_CString::CString
lea eax, [esp + 0xc]
lea ecx, [esp + 0x24]
push eax
push ecx
call fcn.004128c0
mov edx, dword [esp + 0x2c]
push 0x45aa64
push edx
mov byte [esp + 0x270], 9
call dword [sym.imp.MSVCRT.dll__wcsicmp]
add esp, 0x10
cmp eax, esi
je 0x42343b
push str..ini
lea ecx, [esp + 0x10]
call fcn.004429d8
mov eax, dword [0x45bde0]
mov ecx, 0x45bde0
mov dword [esp + 0x34], ecx
call dword [eax]
mov al, byte [0x45bdd8]
mov byte [esp + 0x260], 0xa
test al, 4
jne 0x42347e
mov dl, al
mov ecx, 0x45bdb8
or dl, 4
mov byte [0x45bdd8], dl
call fcn.00442a68
push 0x4237a0
call fcn.00443057
add esp, 4
mov eax, dword [0x45bdc0]
mov edi, dword [sym.imp.MSVCRT.dll_wcscmp]
cmp eax, esi
jle 0x4234d2
mov ecx, dword [0x45bdbc]
lea edx, [ecx + esi*4]
lea ecx, [esp + 0x10]
push edx
call sub.MFC42u.DLL_CString::CString_1
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
push eax
push ecx
call edi
add esp, 8
mov byte [esp + 0x260], 0xa
test eax, eax
lea ecx, [esp + 0x10]
je 0x4236e7
call sub.MFC42u.DLL_CString::CString
mov eax, dword [0x45bdc0]
inc esi
cmp esi, eax
jl 0x42348d
lea edx, [esp + 0xc]
lea eax, [esp + 0x14]
push edx
push eax
call fcn.00412ae0
lea ecx, [esp + 0x1c]
mov byte [esp + 0x268], 0xc
push ecx
call fcn.00418ff0
add esp, 0xc
test eax, eax
jne 0x423507
lea edx, [esp + 0x14]
push edx
call fcn.0041a820
add esp, 4
lea eax, [esp + 0x10]
push 2
push eax
lea ecx, [esp + 0x14]
call sub.MFC42u.DLL_CString::Left
mov ecx, dword [eax]
push 0x45970c
push ecx
call edi
add esp, 8
lea ecx, [esp + 0x10]
test eax, eax
sete bl
call sub.MFC42u.DLL_CString::CString
test bl, bl
je 0x42376a
mov edx, dword [esp + 0xc]
push 0
push edx
call dword [sym.imp.MSVCRT.dll__waccess]
add esp, 8
neg eax
sbb eax, eax
inc eax
test eax, eax
je 0x4236db
mov edx, dword [esp + 0xc]
push edx
call fcn.0041dd10
add esp, 4
test eax, eax
jne 0x4236c5
lea ecx, [esp + 0x10]
call sub.MFC42u.DLL_CString::CString_3
lea eax, [esp + 0x10]
lea ecx, [esp + 0xc]
push eax
push ecx
mov byte [esp + 0x268], 0xd
call fcn.0041d1d0
add esp, 8
lea ecx, [esp + 0x1c]
call sub.MFC42u.DLL_CString::CString_3
mov bl, 0xe
push str._______________________________________________________________________r_n
lea ecx, [esp + 0x20]
mov byte [esp + 0x264], bl
call fcn.004429d8
lea edx, [esp + 0x20]
push str._Y__m__d__H:_M:_S
lea eax, [esp + 0x3c]
push edx
push eax
call sub.MFC42u.DLL_CTime::GetTickCount
mov ecx, eax
call sub.MFC42u.DLL_CTime::Format
push eax
lea ecx, [esp + 0x30]
push 0x45a9bc
push ecx
mov byte [esp + 0x26c], 0xf
call sub.MFC42u.DLL_operator_3
push 0x459818
lea edx, [esp + 0x2c]
push eax
push edx
mov byte [esp + 0x26c], 0x10
call sub.MFC42u.DLL_operator_4
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x264], 0x11
call fcn.0044299c
lea ecx, [esp + 0x28]
mov byte [esp + 0x260], 0x10
call sub.MFC42u.DLL_CString::CString
lea ecx, [esp + 0x2c]
mov byte [esp + 0x260], 0xf
call sub.MFC42u.DLL_CString::CString
lea ecx, [esp + 0x20]
mov byte [esp + 0x260], bl
call sub.MFC42u.DLL_CString::CString
push str._______________________________________________________________________r_n
lea ecx, [esp + 0x20]
call fcn.004429d8
lea eax, [esp + 0x10]
lea ecx, [esp + 0x1c]
push eax
lea edx, [esp + 0x24]
push ecx
push edx
call sub.MFC42u.DLL_operator_2
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x264], 0x12
call sub.MFC42u.DLL_CString::operator_2
lea ecx, [esp + 0x20]
mov byte [esp + 0x260], bl
call sub.MFC42u.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov byte [esp + 0x260], 0xd
call sub.MFC42u.DLL_CString::CString
lea eax, [esp + 0x10]
push 0
lea ecx, [esp + 0x10]
push eax
push ecx
call fcn.0041d580
add esp, 0xc
lea ecx, [esp + 0x10]
mov byte [esp + 0x260], 0xc
call sub.MFC42u.DLL_CString::CString
mov edx, dword [esp + 0xc]
push edx
call fcn.0041e0e0
add esp, 4
mov ecx, dword [0x45bdc0]
lea eax, [esp + 0xc]
push eax
push ecx
mov ecx, 0x45bdb8
call sub.MFC42u.DLL_CStringArray::SetAtGrow
mov byte [esp + 0x260], 0xa
lea ecx, [esp + 0x14]
call sub.MFC42u.DLL_CString::CString
mov edx, dword [0x45bde0]
mov ecx, 0x45bde0
mov byte [esp + 0x260], 9
call dword [edx + 4]
mov esi, dword [esp + 0x268]
lea eax, [esp + 0xc]
push eax
mov ecx, esi
call sub.MFC42u.DLL_CString::CString_1
mov dword [esp + 0x30], 1
lea ecx, [esp + 0x24]
mov byte [esp + 0x260], 4
call sub.MFC42u.DLL_CString::CString
lea ecx, [esp + 0xc]
mov byte [esp + 0x260], 1
call sub.MFC42u.DLL_CString::CString
lea ecx, [esp + 0x18]
mov byte [esp + 0x260], 0
call sub.MFC42u.DLL_CString::CString
mov ecx, dword [esp + 0x258]
mov eax, esi
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
add esp, 0x258
ret
mov ecx, dword [esp + 0xc]
lea eax, [esp + 0x3c]
push eax
push ecx
call sub.MFC42u.DLL_CFile::GetStatus
test eax, eax
je 0x4236db
jmp 0x423557