Function at 0x434de7
Capabilities:
Get file size
Move file
Read file on windows
Write file on windows

Disassembly:
push 0x20
mov eax, 0x456bf9
call fcn.00444333
push ecx
xor ebx, ebx
mov dword [ebp - 4], ebx
lea eax, [ebp + 8]
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00402810
call fcn.00434784
pop ecx
cmp al, bl
je 0x4350dc
call fcn.00434622
test al, al
je 0x4350d0
lea esi, [ebp + 8]
call fcn.0043806c
push 7
push 0x708
push str.MF___v_f
call fcn.00433314
add esp, 0xc
push eax
lea ecx, [ebp - 0x20]
call fcn.00402830
mov ecx, esi
push ecx
lea ecx, [ebp - 0x1c]
push ecx
mov ecx, eax
mov byte [ebp - 4], 1
call fcn.00409fa0
mov edi, 0x45ef28
lea ecx, [ebp - 0x14]
push edi
push ecx
mov ecx, eax
mov byte [ebp - 4], 2
call fcn.0040a060
add esp, 0x10
lea ecx, [ebp - 0x1c]
call fcn.004028e0
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 5
call fcn.004028e0
xor ecx, ecx
mov edx, 0x45e58c
call fcn.00409ef0
test eax, eax
jge 0x434f00
push 0xa
push 0x1ce5
push str.MFO5X___v_f
call fcn.00433314
add esp, 0xc
push eax
lea ecx, [ebp - 0x2c]
call fcn.00402830
mov ecx, esi
push ecx
lea ecx, [ebp - 0x28]
push ecx
mov ecx, eax
mov byte [ebp - 4], 6
call fcn.00409fa0
lea ecx, [ebp - 0x24]
push edi
push ecx
mov ecx, eax
mov byte [ebp - 4], 7
call fcn.0040a060
add esp, 0x10
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 8
call fcn.00402d80
lea ecx, [ebp - 0x24]
call fcn.004028e0
lea ecx, [ebp - 0x28]
call fcn.004028e0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 5
call fcn.004028e0
lea eax, [ebp - 0x2c]
push eax
call fcn.00434d9a
pop ecx
mov byte [ebp - 4], 9
push dword [eax]
lea ecx, [ebp - 0x18]
call fcn.00402830
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xb
call fcn.004028e0
push 0xc
push 0x250e
push str.Y5_5_5
call fcn.00433314
add esp, 0xc
lea esi, [ebp - 0x18]
call fcn.0040bbb0
push 0x45e58a
lea ecx, [ebp - 0x10]
call fcn.00402830
push ebx
push ebx
push 3
push ebx
push 1
mov byte [ebp - 4], 0xc
mov edi, dword [sym.imp.KERNEL32.DLL_CreateFileA]
push SysReAllocString
push dword [ebp - 0x18]
call edi
mov esi, eax
cmp esi, 0xffffffff
jne 0x434f9b
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x14]
mov edx, str._Rename_
call fcn.0040e6b0
pop ecx
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xd
call fcn.00402d80
lea ecx, [ebp - 0x2c]
call fcn.004028e0
jmp 0x435080
push ebx
push esi
call dword [sym.imp.KERNEL32.DLL_GetFileSize]
mov dword [ebp - 0x2c], eax
cmp eax, ebx
jbe 0x434fdb
push eax
call fcn.00440ae1
pop ecx
push ebx
lea ecx, [ebp - 0x28]
push ecx
push dword [ebp - 0x2c]
mov dword [ebp - 0x1c], eax
push eax
push esi
call dword [sym.imp.KERNEL32.DLL_ReadFile]
push dword [ebp - 0x28]
lea ecx, [ebp - 0x10]
push dword [ebp - 0x1c]
call fcn.00402a40
push dword [ebp - 0x1c]
call fcn.0043f4d3
pop ecx
push esi
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
push 9
push 0x591
push str.eX__A1
call fcn.00433314
add esp, 0xc
xor ecx, ecx
mov edx, eax
lea esi, [ebp - 0x10]
call fcn.00409ef0
cmp eax, ebx
mov dword [ebp - 0x1c], eax
jge 0x435055
push 9
push 0x1e44
push str.eV__A1
call fcn.00433314
add esp, 0xc
xor ecx, ecx
mov edx, eax
call fcn.00409ef0
cmp eax, ebx
mov dword [ebp - 0x1c], eax
jge 0x435055
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x14]
mov edx, str._r_n_Rename_
call fcn.0040e6b0
pop ecx
mov byte [ebp - 4], 0xe
mov eax, dword [eax]
push dword [eax - 0xc]
mov ecx, esi
push eax
call fcn.00402a40
jmp 0x434f8e
mov edx, dword [ebp - 0x14]
xor ecx, ecx
lea esi, [ebp - 0x10]
call fcn.00409ef0
test eax, eax
jge 0x4350b6
push dword [ebp - 0x14]
push str._Rename_
call fcn.00442380
add eax, dword [ebp - 0x1c]
pop ecx
push eax
mov eax, esi
push eax
call fcn.00437cdf
push ebx
push 0x80
push 2
push ebx
push 2
push 0x40000000
push dword [ebp - 0x18]
call edi
mov esi, eax
cmp esi, 0xffffffff
je 0x4350b6
push ebx
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x10]
push dword [eax - 0xc]
push eax
push esi
call dword [sym.imp.KERNEL32.DLL_WriteFile]
push esi
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
lea ecx, [ebp - 0x10]
call fcn.004028e0
lea eax, [ebp - 0x18]
call fcn.00402e60
lea ecx, [ebp - 0x14]
call fcn.004028e0
jmp 0x4350dc
push 4
push ebx
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.DLL_MoveFileExA]
lea ecx, [ebp + 8]
call fcn.004028e0
call fcn.004443d2
ret