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

Disassembly:
push 0x20
mov eax, 0x443a85
call fcn.00431df8
push ecx
xor ebx, ebx
mov dword [ebp - 4], ebx
lea eax, [ebp + 8]
mov dword [ebp - 0x2c], esp
mov ecx, esp
push eax
call fcn.00402206
call fcn.0042669e
pop ecx
cmp al, bl
je 0x427048
call fcn.0042653c
test al, al
je 0x42703c
lea esi, [ebp + 8]
call fcn.00429ff5
push str.5S__Q7
push 7
push 0x180f
call fcn.004262bf
add esp, 0xc
push eax
lea ecx, [ebp - 0x20]
call fcn.00401f1d
mov ecx, esi
push ecx
lea ecx, [ebp - 0x1c]
push ecx
mov ecx, eax
mov byte [ebp - 4], 1
call fcn.004067f9
mov edi, 0x449dfc
lea ecx, [ebp - 0x14]
push edi
push ecx
mov ecx, eax
mov byte [ebp - 4], 2
call fcn.0040684a
add esp, 0x10
mov ecx, dword [ebp - 0x1c]
add ecx, 0xfffffff0
call fcn.0040113c
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
call fcn.0040113c
push 0x449470
xor ecx, ecx
call fcn.0040677b
test eax, eax
jge 0x426e5d
push 0x44d340
push 0xa
push 0x397
call fcn.004262bf
add esp, 0xc
push eax
lea ecx, [ebp - 0x2c]
call fcn.00401f1d
mov ecx, esi
push ecx
lea ecx, [ebp - 0x28]
push ecx
mov ecx, eax
mov byte [ebp - 4], 6
call fcn.004067f9
lea ecx, [ebp - 0x24]
push edi
push ecx
mov ecx, eax
mov byte [ebp - 4], 7
call fcn.0040684a
add esp, 0x10
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 8
call fcn.0040222e
mov ecx, dword [ebp - 0x24]
add ecx, 0xfffffff0
call fcn.0040113c
mov ecx, dword [ebp - 0x28]
add ecx, 0xfffffff0
call fcn.0040113c
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x2c]
add ecx, 0xfffffff0
call fcn.0040113c
lea eax, [ebp - 0x2c]
push eax
call fcn.00426ce8
pop ecx
mov byte [ebp - 4], 9
push dword [eax]
lea ecx, [ebp - 0x18]
call fcn.00401f1d
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x2c]
add ecx, 0xfffffff0
call fcn.0040113c
push 0x44d34c
push 0xc
push 0x13f8
call fcn.004262bf
add esp, 0xc
push eax
lea edi, [ebp - 0x18]
call fcn.004077c0
push 0x44946e
lea ecx, [ebp - 0x10]
call fcn.00401f1d
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 0x426f00
lea eax, [ebp - 0x2c]
push str._Rename_
push eax
lea ecx, [ebp - 0x14]
call fcn.0040771d
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xd
call fcn.0040222e
mov ecx, dword [ebp - 0x2c]
add ecx, 0xfffffff0
call fcn.0040113c
jmp 0x426fe3
push ebx
push esi
call dword [sym.imp.KERNEL32.DLL_GetFileSize]
mov dword [ebp - 0x2c], eax
cmp eax, ebx
jbe 0x426f40
push eax
call fcn.0042ead3
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.00401ff8
push dword [ebp - 0x1c]
call fcn.0042d64f
pop ecx
push esi
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
push 0x44d368
push 9
push 0x47e
call fcn.004262bf
add esp, 0xc
push eax
xor ecx, ecx
lea esi, [ebp - 0x10]
call fcn.0040677b
cmp eax, ebx
mov dword [ebp - 0x1c], eax
jge 0x426fb9
push 0x44d374
push 9
push 0xab9
call fcn.004262bf
add esp, 0xc
push eax
xor ecx, ecx
call fcn.0040677b
cmp eax, ebx
mov dword [ebp - 0x1c], eax
jge 0x426fb9
lea eax, [ebp - 0x2c]
push str._r_n_Rename_
push eax
lea ecx, [ebp - 0x14]
call fcn.0040771d
pop ecx
pop ecx
mov byte [ebp - 4], 0xe
mov eax, dword [eax]
push dword [eax - 0xc]
mov ecx, esi
push eax
call fcn.00401ff8
jmp 0x426ef0
push dword [ebp - 0x14]
xor ecx, ecx
lea esi, [ebp - 0x10]
call fcn.0040677b
test eax, eax
jge 0x427019
push dword [ebp - 0x14]
push str._Rename_
call fcn.0042d200
add eax, dword [ebp - 0x1c]
pop ecx
mov ecx, esi
push ecx
call fcn.00429b7e
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 0x427019
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]
mov ecx, dword [ebp - 0x10]
add ecx, 0xfffffff0
call fcn.0040113c
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.0040113c
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0040113c
jmp 0x427048
push 4
push ebx
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.DLL_MoveFileExA]
mov ecx, dword [ebp + 8]
add ecx, 0xfffffff0
call fcn.0040113c
call fcn.00431ed0
ret