Function at 0x40a96c
Capabilities:
Check if file exists
Copy file
Delete file

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1acc
call fcn.00415b60
cmp dword [ebx + 0xd0], 2
push esi
push edi
jne 0x40a9b9
lea eax, [ebp - 0x1acc]
push eax
call fcn.00408d75
test eax, eax
jne 0x40a9b9
lea esi, [ebx + 0xa4]
push esi
call dword [0x417044]
push esi
mov dword [ebx + 0x310], 0x25b
call dword [0x417048]
xor eax, eax
jmp 0x40afec
mov eax, dword [ebx + 0x308]
mov ecx, dword [ebx + 0x9c]
cmp ecx, eax
mov dword [ebp - 0x1c], eax
jge 0x40afe9
lea edi, [ebx + 0xa4]
push edi
call dword [0x417044]
xor esi, esi
cmp dword [ebx + 0x314], esi
jne 0x40afd8
push esi
push dword [ebp + 8]
call dword [0x417210]
cmp eax, 0x102
je 0x40afc6
lea esi, [ebx + 0x9c]
mov eax, dword [esi]
push 0x830
lea ecx, [ebx + 0x304]
call fcn.0040c2bd
push eax
lea eax, [ebp - 0x18c4]
push eax
call fcn.0040fb80
add esp, 0xc
push esi
call dword [0x417088]
push edi
mov dword [ebp - 0x10], eax
call dword [0x417048]
lea edi, [ebp - 0x18c4]
lea esi, [ebp - 0x14]
call fcn.00403083
lea edi, [ebp - 0x14b4]
lea esi, [ebp - 0x20]
call fcn.00403083
push 0x1048
lea eax, [ebp - 0x1094]
push 0
push eax
call fcn.0040f5f0
mov edi, dword [ebp - 0x20]
pop ecx
add edi, 0xfffffff0
pop ecx
mov eax, edi
mov esi, esp
mov dword [ebp - 0x18], edi
call fcn.004037c8
add eax, 0x10
mov dword [esi], eax
lea eax, [ebp - 0x1094]
push eax
lea esi, [ebp - 0x14]
call fcn.00409787
test eax, eax
jne 0x40aa9b
mov eax, edi
jmp 0x40af9b
push dword [ebp - 0x1c]
mov edi, ebx
push dword [ebp - 0x10]
push 0x41a884
push 3
call fcn.00409b37
add esp, 0x10
cmp dword [ebx + 0xd0], 2
jne 0x40ab21
mov eax, dword [ebp - 0x18]
push ecx
mov esi, esp
call fcn.004037c8
add eax, 0x10
mov dword [esi], eax
call fcn.004094c0
pop ecx
test edx, edx
ja 0x40ab21
jb 0x40aade
cmp eax, 0x40000
ja 0x40ab21
mov eax, dword [0x41dddc]
mov ecx, 0x41dddc
call dword [eax + 0xc]
mov esi, dword [ebp - 0x14]
add eax, 0x10
push esi
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push str.Ignoring___256_kB_:__s_n
push eax
call fcn.0040389f
mov eax, dword [ebp - 0x10]
add esp, 0xc
add eax, 0xfffffff0
call fcn.00404aac
mov eax, dword [ebp - 0x18]
call fcn.00404aac
lea eax, [esi - 0x10]
jmp 0x40afa6
lea edi, [ebp - 0x20]
call fcn.0040bc5b
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ecx - 0xc]
inc eax
mov edi, ecx
sub edi, eax
mov esi, eax
test eax, eax
jge 0x40ab3c
xor esi, esi
test edi, edi
jge 0x40ab42
xor edi, edi
mov eax, 0x7fffffff
sub eax, esi
cmp eax, edi
jl 0x40afbc
lea eax, [esi + edi]
cmp eax, ecx
jle 0x40ab5c
mov edi, ecx
sub edi, esi
cmp esi, ecx
jle 0x40ab62
xor edi, edi
test esi, esi
jne 0x40ab7a
cmp edi, ecx
jne 0x40ab7a
mov eax, dword [ebp - 0x18]
call fcn.004037c8
add eax, 0x10
mov dword [ebp - 8], eax
jmp 0x40ab93
lea eax, [ebp - 0x20]
call fcn.004035cf
mov ecx, dword [ebp - 0x20]
lea ecx, [ecx + esi*2]
push ecx
mov ecx, eax
lea esi, [ebp - 8]
call fcn.0040357b
mov edi, 0x41a8e8
lea esi, [ebp - 0x34]
call fcn.00403083
push dword [ebp - 8]
mov edi, ebx
push dword [ebp - 0x1c]
push dword [ebp - 0x10]
push dword [eax]
push 4
call fcn.00409b37
mov eax, dword [ebp - 0x34]
add esp, 0x14
add eax, 0xfffffff0
call fcn.00404aac
mov edx, dword [ebp - 0x14]
lea eax, [ebp - 0x1090]
mov edi, 0x208
push eax
mov ecx, edi
call fcn.00401fb7
mov edx, dword [ebp - 0x20]
lea eax, [ebp - 0x460]
push eax
mov ecx, edi
call fcn.00401fb7
mov eax, dword [ebp - 0x10a4]
mov dword [ebp - 0x50], eax
mov eax, dword [ebx + 0xbc]
sub eax, 0x10
call fcn.004037c8
mov esi, eax
mov eax, dword [ebx + 0xd0]
add esi, 0x10
mov dword [ebp - 0xc], esi
cmp eax, 2
jne 0x40ac31
lea eax, [ebp - 0xc80]
push eax
call fcn.00408d75
lea eax, [ebp - 0xc80]
push eax
call dword [0x4170f0]
jmp 0x40ace2
cmp eax, 1
jne 0x40ace2
push 0x41a450
lea eax, [ebp - 0xc]
push eax
call fcn.0040bcc6
push 0x41a444
lea eax, [ebp - 0xc]
push eax
call fcn.0040311e
test byte [ebp - 0x10a4], 1
jne 0x40aca8
mov eax, dword [0x41dddc]
mov ecx, 0x41dddc
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
lea eax, [ebx + 0xa0]
push eax
call dword [0x417088]
push eax
lea eax, [ebp - 0x24]
push str.Users_d
push eax
call fcn.0040389f
mov esi, dword [ebp - 0x24]
add esp, 0xc
push dword [esi - 0xc]
lea eax, [ebp - 0xc]
push esi
call fcn.00403820
lea eax, [esi - 0x10]
call fcn.00404aac
mov edx, dword [ebp - 0xc]
lea eax, [ebp - 0xc80]
push eax
mov ecx, edi
call fcn.00401fb7
push dword [ebp - 8]
lea eax, [ebp - 0xc80]
push eax
call dword [0x417290]
cmp dword [ebx + 0xe0], 0
je 0x40acdf
lea eax, [ebp - 0xc80]
push eax
call dword [0x4170f0]
mov esi, dword [ebp - 0xc]
lea eax, [ebp - 0xc80]
push eax
call dword [0x417284]
test eax, eax
je 0x40ad81
lea eax, [ebx + 0xa4]
push eax
call dword [0x417044]
push 0x41a930
mov edi, 0x41a8e8
lea esi, [ebp - 0x28]
mov dword [ebx + 0x310], 0x25e
mov dword [ebx + 0x314], 1
call fcn.00403083
lea ecx, [ebp - 0x44]
call fcn.004032ea
mov esi, dword [ebp - 8]
pop ecx
push esi
push dword [ebp - 0x1c]
mov edi, ebx
push dword [ebp - 0x10]
push dword [eax]
push 4
call fcn.00409b37
mov eax, dword [ebp - 0x44]
add esp, 0x14
add eax, 0xfffffff0
call fcn.00404aac
mov eax, dword [ebp - 0x28]
add eax, 0xfffffff0
call fcn.00404aac
lea eax, [ebx + 0xa4]
push eax
call dword [0x417048]
mov eax, dword [ebp - 0xc]
add eax, 0xfffffff0
call fcn.00404aac
lea eax, [esi - 0x10]
jmp 0x40af93
mov eax, esi
call fcn.0040b087
test eax, eax
jne 0x40add4
lea eax, [ebx + 0xa4]
push eax
call dword [0x417044]
push esi
push 0x41a960
push 4
mov edi, ebx
mov dword [ebx + 0x310], 0x25f
mov dword [ebx + 0x314], 1
call fcn.00409b37
add esp, 0xc
lea eax, [ebx + 0xa4]
push eax
call dword [0x417048]
lea eax, [esi - 0x10]
jmp 0x40af88
cmp dword [ebx + 0xd0], 2
lea eax, [ebp - 0x870]
mov ecx, edi
push eax
jne 0x40ae05
lea edx, [ebp - 0xc80]
call fcn.00401fb7
push 0x41a9a0
lea eax, [ebp - 0x870]
push eax
call dword [0x41726c]
jmp 0x40ae22
lea edx, [ebp - 0x460]
call fcn.00401fb7
push 0x41a9a0
lea eax, [ebp - 0x870]
push eax
call dword [0x41725c]
push dword [ebx + 0xe0]
lea eax, [ebp - 0xc80]
push eax
push dword [ebp - 8]
call dword [0x4170e8]
test eax, eax
je 0x40ae7e
push str._Copied
mov edi, 0x41a8e8
lea esi, [ebp - 0x3c]
call fcn.00403083
lea ecx, [ebp - 0x48]
call fcn.004032ea
pop ecx
push dword [ebp - 8]
mov edi, ebx
push dword [ebp - 0x1c]
push dword [ebp - 0x10]
push dword [eax]
push 4
call fcn.00409b37
mov eax, dword [ebp - 0x48]
add esp, 0x14
add eax, 0xfffffff0
call fcn.00404aac
mov eax, dword [ebp - 0x3c]
jmp 0x40aef5
mov eax, dword [ebp - 0x18]
push ecx
mov esi, esp
call fcn.004037c8
add eax, 0x10
mov dword [esi], eax
call fcn.00409593
push eax
lea eax, [ebp - 0xc80]
push eax
lea eax, [ebp - 0x1090]
push eax
push dword [ebp - 0x1094]
push ebx
call fcn.00409256
mov dword [ebp - 0x24], eax
mov edi, 0x41a8e8
test eax, eax
jne 0x40af25
push 0x41a9bc
lea esi, [ebp - 0x2c]
call fcn.00403083
lea ecx, [ebp - 0x4c]
call fcn.004032ea
pop ecx
push dword [ebp - 8]
mov edi, ebx
push dword [ebp - 0x1c]
push dword [ebp - 0x10]
push dword [eax]
push 4
call fcn.00409b37
mov eax, dword [ebp - 0x4c]
add esp, 0x14
add eax, 0xfffffff0
call fcn.00404aac
mov eax, dword [ebp - 0x2c]
add eax, 0xfffffff0
call fcn.00404aac
lea edi, [ebx + 0xa4]
push edi
call dword [0x417044]
lea eax, [ebp - 0x1094]
push eax
lea esi, [ebx + 0x2f8]
call fcn.0040c18b
push edi
call dword [0x417048]
jmp 0x40af82
push 0x41a9d0
lea esi, [ebp - 0x38]
call fcn.00403083
lea ecx, [ebp - 0x30]
call fcn.004032ea
mov esi, dword [eax]
pop ecx
push dword [ebp - 0x24]
lea eax, [ebp - 0x40]
push eax
call fcn.00408354
push dword [eax]
mov edi, ebx
push dword [ebp - 8]
push dword [ebp - 0x1c]
push dword [ebp - 0x10]
push esi
push 4
call fcn.00409b37
mov eax, dword [ebp - 0x30]
add esp, 0x20
add eax, 0xfffffff0
call fcn.00404aac
mov eax, dword [ebp - 0x38]
add eax, 0xfffffff0
call fcn.00404aac
mov eax, dword [ebp - 0x40]
add eax, 0xfffffff0
call fcn.00404aac
mov eax, dword [ebp - 0xc]
add eax, 0xfffffff0
call fcn.00404aac
mov eax, dword [ebp - 8]
add eax, 0xfffffff0
call fcn.00404aac
mov eax, dword [ebp - 0x18]
call fcn.00404aac
mov eax, dword [ebp - 0x14]
add eax, 0xfffffff0
call fcn.00404aac
mov eax, dword [ebx + 0x9c]
cmp eax, dword [ebp - 0x1c]
jl 0x40a9d0
jmp 0x40afe9
push 0x80070057
call fcn.00404c03
cmp dword [ebx + 0x314], esi
jne 0x40afd8
mov dword [ebx + 0x310], 0x260
push edi
mov dword [ebx + 0x314], 1
call dword [0x417048]
xor eax, eax
inc eax
pop edi
pop esi
leave
ret 4