Function at 0x403aa8
Capabilities:
Resolve path using msvcrt

Disassembly:
push 0x444
mov eax, 0x405c7f
call fcn.00405bdc
mov edi, ecx
mov ecx, 0x134
call fcn.00402ad6
mov edx, eax
xor ebx, ebx
mov dword [ebp - 0x428], edx
test edx, edx
je 0x403b16
lea ecx, [edx + 0x120]
mov word [edx + 0x10], bx
mov dword [edx + 0x14], ebx
lea eax, [edx + 0x20]
mov dword [edx + 0x18], ebx
mov esi, 0x100
mov dword [edx + 0x1c], ecx
mov dword [edx + 0xc], 0x1000
mov dword [ecx], 0x401778
mov dword [ecx + 4], eax
mov dword [ecx + 8], esi
mov dword [edx], eax
mov dword [edx + 4], eax
mov dword [edx + 8], esi
mov dword [edx + 0x12c], ebx
or dword [edx + 0x130], 0xffffffff
jmp 0x403b18
mov edx, ebx
push 4
mov ecx, edx
mov dword [0x4064d8], edx
call fcn.00401d7e
mov ecx, 0x434
call fcn.00402ad6
mov esi, eax
mov dword [ebp - 0x428], esi
test esi, esi
je 0x403b53
lea ecx, [esi + 4]
mov dword [esi], 0xf1
call fcn.00403170
mov dword [ecx + 0x42c], ebx
jmp 0x403b55
mov esi, ebx
push 0x104
lea eax, [ebp - 0x420]
mov dword [0x4064e4], esi
push edi
push eax
call dword [sym.imp.ucrtbase_clr0400.dll__wfullpath]
add esp, 0xc
test eax, eax
jne 0x403b77
mov eax, edi
mov ecx, eax
call fcn.00402b72
mov ecx, eax
mov dword [ebp - 0x434], eax
call fcn.00402af6
mov edx, eax
mov dword [ebp - 0x430], eax
lea eax, [edx + 1]
mov cl, byte [edx]
inc edx
test cl, cl
jne 0x403b96
mov esi, dword [0x4064e4]
sub edx, eax
lea eax, [edx + 1]
mov dword [ebp - 0x42c], eax
add eax, 6
mov word [ebp - 0x450], ax
mov eax, 0x1101
mov word [ebp - 0x44e], ax
mov eax, dword [esi + 0xc]
sub eax, dword [esi + 8]
add eax, dword [esi + 4]
cmp eax, 8
jge 0x403be0
push 8
lea ecx, [esi + 4]
call fcn.00401ee3
test eax, eax
je 0x403bfb
mov edi, dword [esi + 8]
lea eax, [edi + 8]
mov dword [esi + 8], eax
mov eax, dword [ebp - 0x450]
mov dword [edi], eax
mov dword [edi + 4], ebx
add dword [esi + 0x430], 8
mov ecx, dword [0x4064e4]
push dword [ebp - 0x42c]
push dword [ebp - 0x430]
lea ecx, [ecx + 4]
call fcn.00401eb9
push dword [ebp - 0x434]
call dword [sym.imp.ucrtbase_clr0400.dll_free]
mov esi, dword [0x4064e4]
pop ecx
mov eax, dword [esi + 0xc]
sub eax, dword [esi + 8]
add eax, dword [esi + 4]
cmp eax, 0x2f
jge 0x403c44
push 0x2f
lea ecx, [esi + 4]
call fcn.00401ee3
test eax, eax
je 0x403c64
mov edi, dword [esi + 8]
push 0x2f
push 0x406020
push edi
lea eax, [edi + 0x2f]
mov dword [esi + 8], eax
call sub.VCRUNTIME140_CLR0400.dll_memcpy
add esp, 0xc
add dword [esi + 0x430], 0x2f
call dword [sym.imp.ucrtbase_clr0400.dll___p__wpgmptr]
mov ecx, dword [eax]
call fcn.00402b72
mov ecx, eax
mov dword [ebp - 0x444], eax
call fcn.00402af6
mov edx, eax
mov dword [ebp - 0x440], eax
lea esi, [edx + 1]
mov cl, byte [edx]
inc edx
test cl, cl
jne 0x403c89
sub edx, esi
lea eax, [ebp - 0x218]
push 0x104
push eax
lea edi, [edx + 1]
mov dword [ebp - 0x42c], edi
call dword [sym.imp.ucrtbase_clr0400.dll__wgetcwd]
pop ecx
pop ecx
lea ecx, [ebp - 0x218]
call fcn.00402b72
mov ecx, eax
mov dword [ebp - 0x428], eax
call fcn.00402af6
mov edx, eax
mov dword [ebp - 0x430], eax
lea esi, [edx + 1]
mov cl, byte [edx]
inc edx
test cl, cl
jne 0x403cd2
sub edx, esi
mov dword [ebp - 0x43a], ebx
mov esi, dword [0x4064e4]
lea eax, [edx + 1]
mov dword [ebp - 0x434], eax
add eax, 0xc
add eax, edi
mov word [ebp - 0x43c], ax
mov eax, 0x113d
mov word [ebp - 0x43a], ax
mov eax, dword [esi + 0xc]
sub eax, dword [esi + 8]
add eax, dword [esi + 4]
cmp eax, 5
jge 0x403d24
push 5
lea ecx, [esi + 4]
call fcn.00401ee3
test eax, eax
je 0x403d45
mov edi, dword [esi + 8]
lea eax, [edi + 5]
mov dword [esi + 8], eax
mov eax, dword [ebp - 0x43c]
mov dword [edi], eax
mov al, byte [ebp - 0x438]
mov byte [edi + 4], al
add dword [esi + 0x430], 5
mov esi, dword [0x4064e4]
mov eax, dword [esi + 0xc]
sub eax, dword [esi + 8]
add eax, dword [esi + 4]
cmp eax, 4
jge 0x403d67
push 4
lea ecx, [esi + 4]
call fcn.00401ee3
test eax, eax
je 0x403d7e
mov edi, dword [esi + 8]
lea eax, [edi + 4]
mov dword [esi + 8], eax
mov eax, dword [0x401774]
mov dword [edi], eax
add dword [esi + 0x430], 4
mov ecx, dword [0x4064e4]
push dword [ebp - 0x434]
push dword [ebp - 0x430]
lea ecx, [ecx + 4]
call fcn.00401eb9
mov esi, dword [0x4064e4]
mov eax, dword [esi + 0xc]
sub eax, dword [esi + 8]
add eax, dword [esi + 4]
cmp eax, 4
jge 0x403dba
push 4
lea ecx, [esi + 4]
call fcn.00401ee3
test eax, eax
je 0x403dd1
mov edi, dword [esi + 8]
lea eax, [edi + 4]
mov dword [esi + 8], eax
mov eax, dword [0x401770]
mov dword [edi], eax
add dword [esi + 0x430], 4
mov ecx, dword [0x4064e4]
push dword [ebp - 0x42c]
push dword [ebp - 0x440]
lea ecx, [ecx + 4]
call fcn.00401eb9
mov ecx, dword [0x4064e4]
lea eax, [ebp - 0x424]
push eax
mov byte [ebp - 0x424], bl
lea ecx, [ecx + 4]
call fcn.00401daa
push dword [ebp - 0x444]
mov esi, dword [sym.imp.ucrtbase_clr0400.dll_free]
call esi
push dword [ebp - 0x428]
call esi
pop ecx
pop ecx
mov ecx, 0x864
call fcn.00402ad6
mov dword [ebp - 0x428], eax
mov dword [ebp - 4], ebx
test eax, eax
je 0x403e3e
mov ecx, eax
call fcn.00403092
jmp 0x403e40
mov eax, ebx
or dword [ebp - 4], 0xffffffff
mov ecx, 0x438
mov dword [0x406520], eax
call fcn.00402ad6
mov esi, eax
mov dword [ebp - 0x428], esi
test esi, esi
je 0x403e80
lea ecx, [esi + 4]
mov dword [esi], 0xf4
call fcn.00403170
mov eax, dword [0x406520]
mov dword [ecx + 0x42c], ebx
mov dword [esi + 0x434], eax
jmp 0x403e82
mov esi, ebx
mov dword [0x4064e8], esi
call fcn.00405b97
ret