Function at 0x426f00
Capabilities:
Check if file exists
Read file on windows
Write file on windows

Disassembly:
push ebp
lea ebp, [esp - 0x60c]
push 0xffffffffffffffff
push 0x48aeb6
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x680
mov eax, dword [0x4abf20]
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp + 0x5fc], eax
push ebx
lea eax, [ebp - 0x40]
push eax
push str.UI_Multiple_Language
mov dword [ebp - 0x40], ebx
call fcn.00436820
add esp, 0xc
test eax, eax
je 0x42728d
cmp dword [ebp - 0x40], ebx
je 0x42728d
xor ecx, ecx
xor edx, edx
mov dword [ebp + 0x5ee], ecx
mov dword [ebp + 0x5de], edx
mov dword [ebp + 0x5f2], ecx
mov dword [ebp + 0x5e2], edx
lea eax, [ebp + 0x5ec]
mov dword [ebp + 0x5f6], ecx
mov dword [ebp + 0x5e6], edx
push 8
push eax
mov word [ebp + 0x5ec], bx
mov word [ebp + 0x5fa], cx
mov word [ebp + 0x5dc], bx
mov word [ebp + 0x5ea], dx
call fcn.004305e0
add esp, 8
test eax, eax
je 0x42728d
push 0x4949ec
push 8
lea ecx, [ebp + 0x5dc]
push ecx
push str.UI_LanguageOld
call fcn.004369d0
add esp, 0x10
test eax, eax
je 0x42728d
lea edx, [ebp + 0x5dc]
push edx
lea eax, [ebp + 0x5ec]
push eax
call dword [sym.imp.MSVCR71.dll_wcscmp]
add esp, 8
test eax, eax
je 0x42728d
lea ecx, [ebp + 0x5ec]
push ecx
push str.UI_LanguageOld
call fcn.00436ac0
mov word [ebp + 0x1cc], bx
xor eax, eax
mov ecx, 0x81
lea edi, [ebp + 0x1ce]
rep stosd dword es:[edi], eax
lea edx, [ebp + 0x1cc]
push edx
push ebx
stosw word es:[edi], ax
call fcn.00432d20
lea eax, [ebp + 0x1cc]
push eax
mov ecx, eax
push str._sAPREG.url
push ecx
call dword [sym.imp.MSVCR71.dll_swprintf]
lea edx, [ebp + 0x1cc]
push 0x4949ac
push edx
call fcn.00434980
mov esi, eax
add esp, 0x24
cmp esi, ebx
je 0x427286
push 2
push ebx
push esi
call dword [sym.imp.MSVCR71.dll_fseek]
push esi
call dword [sym.imp.MSVCR71.dll_ftell]
mov ebx, eax
add esp, 0x10
test ebx, ebx
je 0x4271b7
lea eax, [ebx + 1]
push eax
call fcn.004844a9
push 0
mov edi, eax
push 0
push esi
mov byte [edi + ebx], 0
call dword [sym.imp.MSVCR71.dll_fseek]
push esi
push ebx
push 1
push edi
call dword [sym.imp.MSVCR71.dll_fread]
push str.Language
push edi
call dword [sym.imp.MSVCR71.dll_strstr]
add esp, 0x28
test eax, eax
je 0x4271b7
sub eax, edi
push 0
add eax, 9
push eax
push esi
call dword [sym.imp.MSVCR71.dll_fseek]
add esp, 0xc
lea ecx, [ebp + 0x5ec]
push ecx
call dword [0x4ac074]
lea edi, [eax + eax + 2]
mov eax, edi
add eax, 3
and eax, 0xfffffffc
call fcn.00484560
mov eax, esp
push 0
push edi
lea edx, [ebp + 0x5ec]
push edx
push eax
call fcn.004010a0
push esi
push 3
push 1
push eax
call dword [sym.imp.MSVCR71.dll_fwrite]
xor eax, eax
mov word [ebp + 0x3d4], 0
mov ecx, 0x81
lea edi, [ebp + 0x3d6]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [ebp + 0x3d4]
push eax
push 0
call fcn.00432d20
mov edi, dword [sym.imp.SHLWAPI.dll_PathAppendW]
add esp, 0x18
push 0x493684
lea ecx, [ebp + 0x3d4]
push ecx
call edi
push str.Language.exe
lea edx, [ebp + 0x3d4]
push edx
call edi
lea eax, [ebp + 0x3d4]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x4271b7
xor eax, eax
lea ecx, [ebp + 0x3d4]
mov dword [ebp - 0x70], ecx
mov ecx, 0x490310
lea edx, [ebp - 0x80]
push edx
mov dword [ebp - 0x80], 0x3c
mov dword [ebp - 0x7c], 0x40
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], str.Open
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
call dword [0x4ac08c]
push esi
call dword [sym.imp.MSVCR71.dll_fclose]
mov ecx, dword [0x4ac170]
add esp, 4
test ecx, ecx
je 0x427286
mov esi, ecx
call fcn.00480390
push esi
call sub.MSVCR71.dll_void___cdecl_operator_delete_void__
xor eax, eax
mov word [ebp - 0x3c], 0
mov ecx, 0x81
lea edi, [ebp - 0x3a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [ebp - 0x3c]
push eax
push 0
call fcn.00432d20
lea ecx, [ebp - 0x3c]
push str.EvoParser.dll
push ecx
call dword [sym.imp.MSVCR71.dll_wcscat]
add esp, 0x14
call fcn.0042a800
test eax, eax
push 0x5c
je 0x42724a
call fcn.00484484
add esp, 4
mov dword [ebp - 0x44], eax
test eax, eax
mov dword [ebp + 0x608], 0
je 0x42727f
push 1
lea edx, [ebp - 0x3c]
push edx
mov ecx, eax
call fcn.004809a0
mov dword [0x4ac170], eax
mov eax, 1
jmp 0x42728f
call fcn.00484484
add esp, 4
mov dword [ebp - 0x44], eax
test eax, eax
mov dword [ebp + 0x608], 1
je 0x42727f
push 0x3e7
lea ecx, [ebp - 0x3c]
push ecx
mov ecx, eax
call fcn.004809a0
mov dword [0x4ac170], eax
mov eax, 1
jmp 0x42728f
xor eax, eax
mov dword [0x4ac170], eax
mov eax, 1
jmp 0x42728f
xor eax, eax
lea esp, [ebp - 0x8c]
mov ecx, dword [ebp + 0x600]
mov dword fs:[0], ecx
mov ecx, dword [ebp + 0x5fc]
call fcn.00484547
pop edi
pop esi
pop ebx
add ebp, 0x60c
mov esp, ebp
pop ebp
ret