Function at 0x4aee00
Capabilities:
Delete file
Get common file path
Read file on windows

Disassembly:
sub esp, 0x604
mov eax, dword [0x7f9c40]
xor eax, esp
mov dword [esp + 0x600], eax
mov eax, dword [esp + 0x614]
push ebx
mov ebx, dword [esp + 0x610]
push esi
mov esi, dword [esp + 0x610]
push edi
mov edi, dword [esp + 0x61c]
push 0x208
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x20]
push 0
push eax
call fcn.006e1410
add esp, 0xc
test esi, esi
je 0x4af0a1
mov ecx, 0x71aa07
mov eax, esi
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4aee80
test dl, dl
je 0x4aee7c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4aee80
add eax, 2
add ecx, 2
test dl, dl
jne 0x4aee60
xor eax, eax
jmp 0x4aee85
sbb eax, eax
or eax, 1
test eax, eax
je 0x4af0a1
push 0x208
lea eax, [esp + 0x20]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea eax, [esp + 0x1c]
push eax
push str._sCfgOfSfUpt.dat
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
push ebx
lea eax, [esp + 0x2c]
push eax
push esi
call fcn.004b0810
add esp, 0x18
test eax, eax
je 0x4af0a3
push 0x1f4
lea eax, [esp + 0x41c]
mov dword [esp + 0x10], 0
push 0
push eax
call fcn.006e1410
push 0x1f4
lea eax, [esp + 0x234]
push 0
push eax
call fcn.006e1410
push 0x722e78
lea eax, [esp + 0x38]
xor esi, esi
push eax
lea eax, [esp + 0x2c]
push eax
call fcn.006ebfdf
mov eax, dword [esp + 0x30]
add esp, 0x24
test eax, eax
je 0x4af0a1
push eax
push 0x1f4
lea eax, [esp + 0x420]
push 1
push eax
call fcn.006ec36b
push dword [esp + 0x1c]
mov ebx, eax
mov dword [esp + 0x28], ebx
call fcn.006ec162
add esp, 0x14
mov dword [esp + 0xc], esi
lea eax, [esp + 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov al, byte [esp + 0x418]
cmp al, 0xd
je 0x4af0a1
cmp al, 0xa
je 0x4af0a1
push ebp
xor ebp, ebp
test ebx, ebx
je 0x4af045
nop dword [eax]
nop word [eax + eax]
mov dl, byte [esp + ebp + 0x41c]
cmp dl, 0xd
jne 0x4af013
mov ecx, edi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4aef95
sub ecx, edx
jne 0x4aefcf
push esi
lea eax, [esp + 0x22c]
push eax
push edi
call fcn.006e0e90
mov ecx, edi
add esp, 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4aefb7
sub ecx, edx
lea eax, [ecx + 1]
push eax
push edi
call fcn.006ea4fc
add esp, 8
jmp 0x4aeff9
mov ebx, dword [esp + 0x1c]
mov ecx, ebx
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4aefd8
sub ecx, edx
jne 0x4af045
push esi
lea eax, [esp + 0x22c]
push eax
push ebx
call fcn.006e0e90
mov ebx, dword [esp + 0x24]
add esp, 0xc
push 0x1f4
xor esi, esi
lea eax, [esp + 0x22c]
push esi
push eax
call fcn.006e1410
add esp, 0xc
jmp 0x4af03c
cmp dl, 0xa
je 0x4af03c
mov ecx, edi
lea ebx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4af020
sub ecx, ebx
jne 0x4af030
cmp esi, 0x21
jg 0x4af045
mov ebx, dword [esp + 0x18]
mov byte [esp + esi + 0x228], dl
inc esi
inc ebp
cmp ebp, ebx
jb 0x4aef80
lea ecx, [edi + 1]
pop ebp
nop dword [eax]
mov al, byte [edi]
inc edi
test al, al
jne 0x4af050
sub edi, ecx
cmp edi, 0x20
jne 0x4af0a1
mov edi, dword [esp + 0x18]
mov ecx, edi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4af067
sub ecx, edx
jne 0x4af084
push esi
lea eax, [esp + 0x228]
push eax
push edi
call fcn.006e0e90
add esp, 0xc
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [esp + 0x600]
xor ecx, esp
call fcn.006def69
add esp, 0x604
ret
xor eax, eax
mov ecx, dword [esp + 0x60c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.006def69
add esp, 0x604
ret