Function at 0x414380
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x4232af
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xc
mov eax, dword [esp + 0x20]
mov dword [esp + 8], 0
test eax, eax
jne 0x4143ad
mov eax, 0x42e820
push ebx
push esi
push eax
lea ecx, [esp + 0x2c]
call sub.MFC42.DLL_CString::CString_2
lea ecx, [esp + 8]
mov dword [esp + 0x1c], 1
call sub.MFC42.DLL_CString::CString_4
lea ecx, [esp + 0xc]
mov byte [esp + 0x1c], 2
call sub.MFC42.DLL_CString::CString_4
mov eax, dword [esp + 0x2c]
mov bl, 3
test eax, eax
mov byte [esp + 0x1c], bl
jne 0x41451e
mov eax, dword [esp + 0x28]
mov ecx, dword [eax - 8]
cmp ecx, 1
jl 0x414451
mov dl, byte [ecx + eax - 1]
cmp dl, 0x5c
je 0x414404
cmp dl, 0x2f
jne 0x414451
mov al, byte [ecx + eax - 1]
mov byte [esp + 0x2c], al
mov ecx, dword [esp + 0x2c]
push ecx
lea ecx, [esp + 0x10]
call fcn.00420468
mov edx, dword [esp + 0x28]
lea ecx, [esp + 0x28]
mov eax, dword [edx - 8]
dec eax
push eax
lea eax, [esp + 0x30]
push eax
call sub.MFC42.DLL_CString::Left
push eax
lea ecx, [esp + 0x2c]
mov byte [esp + 0x20], 4
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x1c], bl
call sub.MFC42.DLL_CString::CString
mov eax, dword [esp + 0x28]
cmp dword [eax - 8], 2
jl 0x4144ce
movsx ecx, byte [eax]
push ecx
call dword [sym.imp.MSVCRT.dll_isalpha]
add esp, 4
test eax, eax
mov eax, dword [esp + 0x28]
je 0x4144ce
cmp byte [eax + 1], 0x3a
jne 0x4144ce
lea edx, [esp + 0x2c]
push 2
push edx
lea ecx, [esp + 0x30]
call sub.MFC42.DLL_CString::Left
push eax
lea ecx, [esp + 0xc]
mov byte [esp + 0x20], 5
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x1c], bl
call sub.MFC42.DLL_CString::CString
lea eax, [esp + 0x2c]
push 2
push eax
lea ecx, [esp + 0x30]
call sub.MFC42.DLL_CString::Mid_1
push eax
lea ecx, [esp + 0x2c]
mov byte [esp + 0x20], 6
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x1c], bl
call sub.MFC42.DLL_CString::CString
mov eax, dword [esp + 0x28]
cmp dword [eax - 8], 1
jl 0x414544
mov al, byte [eax]
cmp al, 0x5c
je 0x4144de
cmp al, 0x2f
jne 0x414544
mov byte [esp + 0x2c], al
mov ecx, dword [esp + 0x2c]
push ecx
lea ecx, [esp + 0xc]
call fcn.00420468
lea edx, [esp + 0x2c]
push 1
push edx
lea ecx, [esp + 0x30]
call sub.MFC42.DLL_CString::Mid_1
push eax
lea ecx, [esp + 0x2c]
mov byte [esp + 0x20], 7
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x1c], bl
call sub.MFC42.DLL_CString::CString
jmp 0x414544
push 0x42da48
push 0x42c28c
lea ecx, [esp + 0x30]
call sub.MFC42.DLL_CString::Replace
push 0x42da48
push 0x42c290
lea ecx, [esp + 0x30]
call sub.MFC42.DLL_CString::Replace
push 0x42da48
push 0x42c214
lea ecx, [esp + 0x30]
call sub.MFC42.DLL_CString::Replace
push 0x42da48
push 0x42da44
lea ecx, [esp + 0x30]
call sub.MFC42.DLL_CString::Replace
push 0x42da48
push 0x42d708
lea ecx, [esp + 0x30]
call sub.MFC42.DLL_CString::Replace
push 0x42da48
push 0x42da40
lea ecx, [esp + 0x30]
call sub.MFC42.DLL_CString::Replace
push 0x42da48
push 0x42da3c
lea ecx, [esp + 0x30]
call sub.MFC42.DLL_CString::Replace
push 0x42da48
push 0x42da38
lea ecx, [esp + 0x30]
call sub.MFC42.DLL_CString::Replace
push 0x42da48
push 0x42da34
lea ecx, [esp + 0x30]
call sub.MFC42.DLL_CString::Replace
mov eax, dword [esp + 8]
lea ecx, [esp + 0x28]
push eax
push 0
call sub.MFC42.DLL_CString::Insert
lea ecx, [esp + 0xc]
push ecx
lea ecx, [esp + 0x2c]
call fcn.004203a2
mov esi, dword [esp + 0x24]
lea edx, [esp + 0x28]
push edx
mov ecx, esi
call sub.MFC42.DLL_CString::CString_3
mov dword [esp + 0x10], 1
lea ecx, [esp + 0xc]
mov byte [esp + 0x1c], 2
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 8]
mov byte [esp + 0x1c], 1
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x28]
mov byte [esp + 0x1c], 0
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esp + 0x14]
mov eax, esi
pop esi
pop ebx
mov dword fs:[0], ecx
add esp, 0x18
ret