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

Disassembly:
mov eax, 0x56a06e
call fcn.00524444
mov eax, 0x2264
call fcn.00524e70
and dword [ebp - 0x24], 0
push ebx
push esi
mov ebx, ecx
push edi
push 0x5bfee8
lea ecx, [ebp - 0x18]
mov dword [ebp - 0x34], ebx
call fcn.0053ebbd
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 1
call fcn.00540041
mov eax, dword [0x61d784]
mov dword [ebp - 0x10], eax
push dword [ebp + 0xc]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
mov edi, 0x180
mov byte [ebp - 4], 3
push 0
push edi
push dword [ebx + 0x7c]
call esi
push dword [ebp + 0xc]
lea ecx, [ebp - 0x126c]
call fcn.00404989
push 0
push 0
push dword [ebp + 0xc]
lea ecx, [ebp - 0x60]
call fcn.005400b6
test eax, eax
je 0x429bc7
lea eax, [ebp - 0x38]
lea ecx, [ebp - 0x126c]
push eax
call fcn.00404a99
mov esi, dword [eax]
lea eax, [ebp - 0x268]
push eax
push 0x208
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
test eax, eax
jne 0x429985
and byte [ebp - 0x268], al
test esi, esi
je 0x429995
cmp byte [esi], 0
je 0x429995
push esi
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 4
call fcn.0053eb4f
and dword [ebp - 0x1c], 0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x126c]
call fcn.00407702
mov esi, eax
lea eax, [ebp - 0x48]
lea ecx, [ebp - 0x126c]
push eax
mov byte [ebp - 4], 5
call fcn.00404a99
push esi
push eax
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 6
push eax
call fcn.0053ed7e
push str..prw
push eax
lea eax, [ebp + 0xc]
mov byte [ebp - 4], 7
push eax
call fcn.0053ede4
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0xb
call fcn.0053eb4f
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0xa
call fcn.0053eb4f
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 9
call fcn.0053eb4f
lea eax, [ebp + 0xc]
lea ecx, [ebp - 0x20]
push eax
call fcn.0053e8c4
mov eax, dword [0x61d784]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x10]
lea ecx, [ebp - 0x60]
push eax
mov byte [ebp - 4], 0xd
call fcn.00540299
test eax, eax
je 0x429b81
mov esi, dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov ebx, dword [ebp - 0x18]
mov edi, dword [ebp - 0x10]
push ebx
call fcn.00525390
push eax
push ebx
push edi
call fcn.005252e0
add esp, 0x10
test eax, eax
jne 0x429b6d
push 0x3d
push dword [ebp - 0x10]
call fcn.00526800
pop ecx
pop ecx
mov ecx, eax
inc eax
test ecx, ecx
je 0x429b6d
cmp byte [eax], 0x22
jne 0x429a7d
inc eax
push 0x22
push eax
mov edi, eax
call fcn.00526800
pop ecx
test eax, eax
pop ecx
jne 0x429a9b
push 0x20
push edi
call fcn.00526800
pop ecx
test eax, eax
pop ecx
je 0x429a9e
and byte [eax], 0
mov eax, dword [ebp - 0x1c]
inc dword [ebp - 0x1c]
push eax
lea eax, [ebp - 0x14]
push 0x5bd950
push eax
call fcn.0053ae0a
add esp, 0xc
lea ecx, [ebp - 0x2270]
push edi
call fcn.00404989
push dword [ebp + 0xc]
push 0x5bfedc
push 0x5bfed0
push str.ues.id
call esi
lea eax, [ebp - 0x2c]
lea ecx, [ebp - 0x2270]
push eax
call fcn.00407702
mov ebx, eax
lea eax, [ebp - 0x4c]
lea ecx, [ebp - 0x2270]
push eax
mov byte [ebp - 4], 0xe
call fcn.00404a99
push ebx
push eax
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xf
push eax
call fcn.0053ed7e
push 0x5bfd50
push eax
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x10
push eax
call fcn.0053ede4
push dword [ebp + 0xc]
mov eax, dword [eax]
push eax
push dword [ebp - 0x14]
push str.WorkSpace
call esi
lea ecx, [ebp - 0x44]
call fcn.0053eb4f
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0xf
call fcn.0053eb4f
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0xe
call fcn.0053eb4f
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xd
call fcn.0053eb4f
mov ecx, dword [ebp - 0x34]
lea eax, [ebp - 0x3c]
push edi
push eax
call fcn.0042907c
lea ecx, [ebp - 0x3c]
call fcn.0053eb4f
lea eax, [ebp - 0x10]
lea ecx, [ebp - 0x60]
push eax
call fcn.00540299
test eax, eax
jne 0x429a41
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x20]
push eax
call fcn.0053e8c4
mov dword [ebp - 0x24], 1
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0xc
call fcn.0053eb4f
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 9
call fcn.0053eb4f
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 4
call fcn.0053eb4f
lea eax, [ebp - 0x268]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
jmp 0x429bfd
lea eax, [ebp + 0xc]
push 0x87e6
push eax
call fcn.00402f3e
pop ecx
pop ecx
push dword [eax]
push 0
push edi
push dword [ebx + 0x7c]
call esi
lea ecx, [ebp + 0xc]
call fcn.0053eb4f
mov ecx, dword [ebp + 8]
push 0x622c94
call fcn.0053ebbd
mov dword [ebp - 0x24], 1
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 2
call fcn.0053eb4f
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 1
call fcn.00540073
and byte [ebp - 4], 0
lea ecx, [ebp - 0x18]
call fcn.0053eb4f
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp + 8]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret 8