Function at 0x42ac60
Capabilities:
Get common file path
Set current directory

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x448
mov eax, dword [0x497040]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0x40c], ecx
mov dword [ebp - 0x440], 1
mov dword [ebp - 0x414], 0
jmp 0x42ac9e
mov eax, dword [ebp - 0x414]
add eax, 1
mov dword [ebp - 0x414], eax
mov ecx, dword [ebp - 0x40c]
add ecx, 0x5c
call fcn.00408750
cmp dword [ebp - 0x414], eax
jge 0x42b07e
push 0x104
push 0
lea ecx, [ebp - 0x408]
push ecx
call fcn.00431510
add esp, 0xc
mov edx, dword [ebp - 0x414]
push edx
mov ecx, dword [ebp - 0x40c]
add ecx, 0x5c
call fcn.00408730
mov ecx, eax
call fcn.004120f0
push eax
push 0x4853cc
lea eax, [ebp - 0x408]
push eax
call fcn.0041b040
add esp, 0xc
lea ecx, [ebp - 0x408]
push ecx
mov ecx, dword [ebp + 8]
call fcn.00402cf0
mov dword [ebp - 0x424], eax
cmp dword [ebp - 0x424], 0
je 0x42b079
push 0x100
push 0
lea edx, [ebp - 0x104]
push edx
call fcn.00431510
add esp, 0xc
push 0x100
push 0
lea eax, [ebp - 0x304]
push eax
call fcn.00431510
add esp, 0xc
lea ecx, [ebp - 0x104]
mov dword [ebp - 0x41c], ecx
mov edx, dword [ebp - 0x41c]
add edx, 1
mov dword [ebp - 0x42c], edx
mov eax, dword [ebp - 0x41c]
mov cl, byte [eax]
mov byte [ebp - 0x40d], cl
add dword [ebp - 0x41c], 1
cmp byte [ebp - 0x40d], 0
jne 0x42ad68
mov edx, dword [ebp - 0x41c]
sub edx, dword [ebp - 0x42c]
mov dword [ebp - 0x430], edx
mov eax, dword [ebp - 0x430]
mov dword [ebp - 0x444], eax
mov ecx, dword [ebp - 0x414]
push ecx
mov ecx, dword [ebp - 0x40c]
add ecx, 0x5c
call fcn.00408730
mov ecx, eax
call fcn.004120f0
mov dword [ebp - 0x420], eax
mov edx, dword [ebp - 0x420]
add edx, 1
mov dword [ebp - 0x434], edx
mov eax, dword [ebp - 0x420]
mov cl, byte [eax]
mov byte [ebp - 0x40e], cl
add dword [ebp - 0x420], 1
cmp byte [ebp - 0x40e], 0
jne 0x42add5
mov edx, dword [ebp - 0x420]
sub edx, dword [ebp - 0x434]
mov dword [ebp - 0x438], edx
mov eax, dword [ebp - 0x438]
mov dword [ebp - 0x448], eax
mov ecx, dword [ebp - 0x414]
push ecx
mov ecx, dword [ebp - 0x40c]
add ecx, 0x5c
call fcn.00408730
mov ecx, eax
call fcn.004120f0
push eax
push 0x100
lea edx, [ebp - 0x104]
push edx
call fcn.00417d90
add esp, 0xc
mov eax, dword [ebp - 0x414]
push eax
mov ecx, dword [ebp - 0x40c]
add ecx, 0x5c
call fcn.00408730
push eax
call fcn.004140f0
add esp, 4
mov ecx, 1
imul edx, ecx, 0
movsx eax, byte [ebp + edx - 0x104]
test eax, eax
je 0x42af0c
lea ecx, [ebp - 0x104]
push ecx
call fcn.0041a090
add esp, 4
lea edx, [ebp - 0x304]
push edx
push 0x100
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
push 0x100
push 0
lea eax, [ebp - 0x204]
push eax
call fcn.00431510
add esp, 0xc
lea ecx, [ebp - 0x304]
push ecx
push 0x100
lea edx, [ebp - 0x204]
push edx
call fcn.0043dfab
add esp, 0xc
push 0x4853d0
push 0x100
lea eax, [ebp - 0x204]
push eax
call fcn.0043e068
add esp, 0xc
lea ecx, [ebp - 0x104]
push ecx
push 0x100
lea edx, [ebp - 0x204]
push edx
call fcn.0043e068
add esp, 0xc
lea eax, [ebp - 0x204]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
nop
mov ecx, dword [ebp - 0x424]
call fcn.00401d00
movzx ecx, al
test ecx, ecx
jne 0x42af3c
mov edx, dword [ebp - 0x424]
push edx
mov ecx, dword [ebp + 8]
call fcn.00401b70
mov ecx, dword [ebp + 8]
call fcn.00402450
xor eax, eax
jmp 0x42b084
mov eax, 1
imul ecx, eax, 0
movsx edx, byte [ebp + ecx - 0x104]
test edx, edx
je 0x42af5e
lea eax, [ebp - 0x304]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
nop
mov ecx, dword [ebp - 0x424]
push ecx
mov ecx, dword [ebp + 8]
call fcn.00401b70
mov edx, dword [ebp - 0x40c]
mov eax, dword [edx + 0x74]
add eax, 1
mov ecx, dword [ebp - 0x40c]
mov dword [ecx + 0x74], eax
mov edx, dword [ebp - 0x40c]
cmp dword [edx + 0x34], 0
je 0x42b079
mov dword [ebp - 0x418], 0
jmp 0x42afad
mov eax, dword [ebp - 0x418]
add eax, 1
mov dword [ebp - 0x418], eax
mov ecx, dword [ebp - 0x40c]
add ecx, 0x38
call fcn.0042e310
cmp dword [ebp - 0x418], eax
jge 0x42b06a
mov ecx, dword [ebp - 0x418]
push ecx
mov ecx, dword [ebp - 0x40c]
add ecx, 0x38
call fcn.0042a890
mov ecx, dword [eax]
call fcn.00402450
nop
mov edx, dword [ebp - 0x418]
push edx
mov ecx, dword [ebp - 0x40c]
add ecx, 0x38
call fcn.0042a890
cmp dword [eax], 0
je 0x42b065
mov eax, dword [ebp - 0x418]
push eax
mov ecx, dword [ebp - 0x40c]
add ecx, 0x38
call fcn.0042a890
mov ecx, dword [eax]
mov dword [ebp - 0x428], ecx
cmp dword [ebp - 0x428], 0
je 0x42b040
push 1
mov edx, dword [ebp - 0x428]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x428]
mov edx, dword [eax]
call edx
mov dword [ebp - 0x43c], eax
jmp 0x42b04a
mov dword [ebp - 0x43c], 0
mov eax, dword [ebp - 0x418]
push eax
mov ecx, dword [ebp - 0x40c]
add ecx, 0x38
call fcn.0042a890
mov dword [eax], 0
jmp 0x42af9e
mov ecx, dword [ebp + 8]
call fcn.00402450
mov eax, 4
jmp 0x42b084
jmp 0x42ac8f
mov eax, dword [ebp - 0x440]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042f4a5
mov esp, ebp
pop ebp
ret 4