Function at 0x4048cc
Capabilities:
Resolve path using msvcrt

Disassembly:
sub esp, 0x18
and dword [esp + 0x10], 0
and dword [esp + 0x14], 0
push ebp
push esi
mov ebp, 0x400
push edi
push ebp
call fcn.00405f91
mov esi, eax
push ebp
mov dword [esp + 0x20], esi
call fcn.00405f91
push ebp
push esi
mov dword [esp + 0x1c], eax
call dword [sym.imp.MSVCRT.dll__getcwd]
add esp, 0x10
test eax, eax
je 0x40492e
push esi
call sub.MSVCRT.dll_strlen
add eax, 9
push eax
call fcn.00405f91
push str.ENC_CWD
push eax
mov dword [esp + 0x2c], eax
call fcn.00405503
push esi
push eax
call fcn.00405503
add esp, 0x18
push ebx
call fcn.00402852
mov esi, eax
push esi
call sub.MSVCRT.dll_strlen
add eax, 8
push eax
call fcn.00405f91
push str.ENC_CL
push eax
mov dword [esp + 0x28], eax
call fcn.00405503
push esi
push eax
call fcn.00405503
mov edi, dword [esp + 0x44]
mov esi, 0x4099e4
push edi
push esi
call fcn.00405287
add eax, 9
push eax
call fcn.00405f91
push str.ENC_SRC
push eax
mov dword [esp + 0x40], eax
call fcn.00405503
push edi
push esi
push dword [esp + 0x50]
mov ebx, eax
call fcn.00404ffa
push eax
push ebx
call fcn.00405503
mov esi, dword [edi + 4]
add esp, 0x40
test esi, esi
je 0x404a3b
mov al, byte [esi]
and al, 0x21
cmp al, 1
je 0x4049c0
push 0x407368
push dword [esi + 0xc]
call sub.MSVCRT.dll_strcmp
pop ecx
test eax, eax
pop ecx
je 0x4049c5
mov esi, dword [esi + 4]
jmp 0x40499d
mov ebx, 0x40b228
push str.ENC_PDB
push ebx
call sub.MSVCRT.dll_strcpy
mov eax, dword [esi + 0x10]
pop ecx
test eax, eax
pop ecx
mov esi, str.vc60
je 0x4049ee
push eax
push ebx
call sub.MSVCRT.dll_strcat
pop ecx
pop ecx
jmp 0x404a07
push ebx
call sub.MSVCRT.dll_strlen
sub ebp, eax
lea eax, [eax + 0x40b228]
push ebp
push esi
push eax
call fcn.00405722
add esp, 0x10
push esi
push str.ENC_PDB
call sub.MSVCRT.dll_strlen
pop ecx
add eax, ebx
push eax
push 0x4099c0
call fcn.00402f9f
push ebx
call sub.MSVCRT.dll_strlen
inc eax
push eax
call fcn.00405f91
push ebx
push eax
mov dword [esp + 0x40], eax
call sub.MSVCRT.dll_strcpy
add esp, 0x1c
mov esi, dword [edi + 4]
push 9
pop ebx
test esi, esi
je 0x404a91
mov al, byte [esi]
and al, 0x21
cmp al, 1
je 0x404a8c
push 0x407354
push dword [esi + 0xc]
call sub.MSVCRT.dll_strcmp
pop ecx
test eax, eax
pop ecx
je 0x404a8c
push dword [esi + 0xc]
call sub.MSVCRT.dll_strlen
lea ebx, [ebx + eax + 2]
mov eax, dword [esi + 0x10]
test eax, eax
pop ecx
je 0x404a8c
test byte [esi], 0x20
je 0x404a83
push edi
push eax
call fcn.00405287
pop ecx
jmp 0x404a89
push eax
call fcn.00405563
pop ecx
add ebx, eax
mov esi, dword [esi + 4]
jmp 0x404a41
cmp dword [0x40b628], 0
jne 0x404a9d
add ebx, 4
add ebx, 3
push ebx
call fcn.00405f91
mov dword [esp], str.ENC_CMD
push eax
mov dword [esp + 0x34], eax
call fcn.00405503
mov esi, dword [edi + 4]
pop ecx
pop ecx
mov ebx, eax
mov ebp, 0x4074c0
test esi, esi
je 0x404b62
mov al, byte [esi]
and al, 0x21
cmp al, 1
je 0x404b5a
push 0x407354
push dword [esi + 0xc]
call sub.MSVCRT.dll_strcmp
pop ecx
test eax, eax
pop ecx
je 0x404b5a
push 0x4099b0
push ebx
call fcn.00405503
push dword [esi + 0xc]
push eax
call fcn.00405503
mov ebx, eax
mov eax, dword [esi + 0x10]
add esp, 0x10
test eax, eax
je 0x404b4f
test byte [esi], 0x20
je 0x404b36
push edi
push eax
push dword [esp + 0x18]
call fcn.00404ffa
push dword [esp + 0x1c]
push dword [esp + 0x2c]
call fcn.004055ed
push dword [esp + 0x30]
push ebx
call fcn.00405503
add esp, 0x1c
jmp 0x404b4d
push eax
push dword [esp + 0x14]
call fcn.004055ed
push dword [esp + 0x18]
push ebx
call fcn.00405503
add esp, 0x10
mov ebx, eax
push ebp
push ebx
call fcn.00405503
pop ecx
mov ebx, eax
pop ecx
mov esi, dword [esi + 4]
jmp 0x404ac3
cmp dword [0x40b628], 0
jne 0x404b91
mov eax, dword [edi + 0x1c]
cmp dword [eax + 0xc], 0
mov eax, 0x4099ac
jne 0x404b7e
mov eax, 0x4099a8
push eax
push ebx
call fcn.00405503
push ebp
push eax
call fcn.00405503
add esp, 0x10
mov ebx, eax
push 0x4099a4
push ebx
call fcn.00405503
cmp dword [0x40b63c], 0
pop ecx
pop ecx
je 0x404c16
mov ebp, dword [esp + 0x20]
push 2
test ebp, ebp
mov esi, 0x4074b4
pop ebx
je 0x404bc2
push ebp
push esi
push ebx
call fcn.00405b55
add esp, 0xc
cmp dword [esp + 0x18], 0
je 0x404bd7
push dword [esp + 0x18]
push esi
push ebx
call fcn.00405b55
add esp, 0xc
cmp dword [esp + 0x14], 0
je 0x404bec
push dword [esp + 0x14]
push esi
push ebx
call fcn.00405b55
add esp, 0xc
mov edi, dword [esp + 0x24]
test edi, edi
je 0x404bff
push edi
push esi
push ebx
call fcn.00405b55
add esp, 0xc
cmp dword [esp + 0x2c], 0
je 0x404c1e
push dword [esp + 0x2c]
push esi
push ebx
call fcn.00405b55
add esp, 0xc
jmp 0x404c1e
mov ebp, dword [esp + 0x20]
mov edi, dword [esp + 0x24]
cmp dword [0x40b638], 0
pop ebx
jne 0x404c77
mov esi, dword [sym.imp.MSVCRT.dll__putenv]
test ebp, ebp
je 0x404c3a
push ebp
call esi
test eax, eax
pop ecx
jne 0x404c67
push dword [esp + 0x14]
call esi
test eax, eax
pop ecx
jne 0x404c67
push dword [esp + 0x10]
call esi
test eax, eax
pop ecx
jne 0x404c67
test edi, edi
je 0x404c5c
push edi
call esi
test eax, eax
pop ecx
jne 0x404c67
push dword [esp + 0x28]
call esi
test eax, eax
pop ecx
je 0x404c77
push dword [esp + 0x2c]
push 0x7ed
call fcn.00405e70
pop ecx
pop ecx
push dword [esp + 0x28]
call fcn.00405fae
push edi
call fcn.00405fae
push dword [esp + 0x18]
call fcn.00405fae
push dword [esp + 0x20]
call fcn.00405fae
push ebp
call fcn.00405fae
push dword [esp + 0x20]
call fcn.00405fae
push dword [esp + 0x30]
call fcn.00405fae
add esp, 0x1c
pop edi
pop esi
pop ebp
add esp, 0x18
ret