Function at 0x409a40
Capabilities:
Copy file
Delete file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x3f4
mov eax, dword [0x4c9230]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0x3ec], ecx
xor eax, eax
mov word [ebp - 0x270], ax
xor ecx, ecx
mov dword [ebp - 0x26e], ecx
mov dword [ebp - 0x26a], ecx
mov dword [ebp - 0x266], ecx
mov word [ebp - 0x262], cx
mov byte [ebp - 0x250], 0
push 0xff
push 0
lea edx, [ebp - 0x24f]
push edx
call fcn.00469c10
add esp, 0xc
mov byte [ebp - 0x3d8], 0
push 0xff
push 0
lea eax, [ebp - 0x3d7]
push eax
call fcn.00469c10
add esp, 0xc
mov dword [ebp - 0x274], 0
mov byte [ebp - 0x25c], 0
xor ecx, ecx
mov dword [ebp - 0x25b], ecx
mov dword [ebp - 0x257], ecx
mov word [ebp - 0x253], cx
mov byte [ebp - 0xc], 0
xor edx, edx
mov dword [ebp - 0xb], edx
mov byte [ebp - 7], dl
mov byte [ebp - 0x2d0], 0
xor eax, eax
mov dword [ebp - 0x2cf], eax
mov dword [ebp - 0x2cb], eax
mov word [ebp - 0x2c7], ax
mov byte [ebp - 0x2c5], al
push 0x4a
push 0
lea ecx, [ebp - 0x2c4]
push ecx
call fcn.00469c10
add esp, 0xc
mov dword [ebp - 0x260], 0
mov dword [ebp - 0x2d4], 0
mov dword [ebp - 0x150], 0
push 0x13a
push 0
lea edx, [ebp - 0x14c]
push edx
call fcn.00469c10
add esp, 0xc
lea eax, [ebp - 0x270]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
push 0x100
push 0
lea ecx, [ebp - 0x250]
push ecx
call fcn.00469c10
add esp, 0xc
push 0x100
push 0
lea edx, [ebp - 0x3d8]
push edx
call fcn.00469c10
add esp, 0xc
push str._DATA_ERRY.log
lea eax, [ebp - 0x3dc]
push eax
mov ecx, 0x4ca874
call fcn.004137e0
mov dword [ebp - 0x3f0], eax
mov ecx, dword [ebp - 0x3f0]
mov edx, dword [ecx]
push edx
push 0x4a4ae4
lea eax, [ebp - 0x250]
push eax
call fcn.0046f198
add esp, 0xc
lea ecx, [ebp - 0x3dc]
call fcn.00401d60
push str._DATA_ERRY.log
lea ecx, [ebp - 0x3e0]
push ecx
mov ecx, 0x4ca874
call fcn.004137e0
mov dword [ebp - 0x3f4], eax
mov edx, dword [ebp - 0x3f4]
mov eax, dword [edx]
push eax
push str._s_bak
lea ecx, [ebp - 0x3d8]
push ecx
call fcn.0046f198
add esp, 0xc
lea ecx, [ebp - 0x3e0]
call fcn.00401d60
lea edx, [ebp - 0x150]
push edx
lea eax, [ebp - 0x250]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [ebp - 0x2d4], eax
cmp dword [ebp - 0x2d4], 0xffffffff
je 0x409c72
cmp dword [ebp - 0x130], 0xfa000
jbe 0x409c65
push 0
lea ecx, [ebp - 0x3d8]
push ecx
lea edx, [ebp - 0x250]
push edx
call dword [sym.imp.KERNEL32.dll_CopyFileA]
lea eax, [ebp - 0x250]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov ecx, dword [ebp - 0x2d4]
push ecx
call dword [sym.imp.KERNEL32.dll_FindClose]
push 0
push 0x80
push 4
push 0
push 0
push 0x40000000
lea edx, [ebp - 0x250]
push edx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0xffffffff
je 0x409dc4
lea eax, [ebp - 0x270]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
push 0x56
push 0
lea ecx, [ebp - 0x2d0]
push ecx
call fcn.00469c10
add esp, 0xc
movzx edx, word [ebp + 0xc]
cmp edx, 0x40
jbe 0x409cd6
mov eax, 0x40
mov word [ebp + 0xc], ax
movzx ecx, word [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
lea eax, [ebp - 0x2ba]
push eax
call fcn.0046a590
add esp, 0xc
push 0x4a5ad4
lea ecx, [ebp - 0x27b]
push ecx
call fcn.0046fd70
add esp, 8
movzx edx, word [ebp - 0x26a]
push edx
movzx eax, word [ebp - 0x26e]
push eax
movzx ecx, word [ebp - 0x270]
push ecx
push str._04d__02d__02d
lea edx, [ebp - 0x25c]
push edx
call fcn.0046f198
add esp, 0x14
movzx eax, word [ebp - 0x266]
push eax
movzx ecx, word [ebp - 0x268]
push ecx
push str._02d:_02d
lea edx, [ebp - 0xc]
push edx
call fcn.0046f198
add esp, 0x10
push 0xb
lea eax, [ebp - 0x25c]
push eax
lea ecx, [ebp - 0x2d0]
push ecx
call fcn.0046a590
add esp, 0xc
push 6
lea edx, [ebp - 0xc]
push edx
lea eax, [ebp - 0x2c4]
push eax
call fcn.0046a590
add esp, 0xc
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x2be], ecx
push 2
push 0
push 0
mov edx, dword [ebp - 0x260]
push edx
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
push 0
lea eax, [ebp - 0x274]
push eax
push 0x56
lea ecx, [ebp - 0x2d0]
push ecx
mov edx, dword [ebp - 0x260]
push edx
call dword [sym.imp.KERNEL32.dll_WriteFile]
mov eax, dword [ebp - 0x260]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0046a109
mov esp, ebp
pop ebp
ret 0xc