Function at 0x5417c4
Capabilities:
Copy file
Delete file

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x1033
push 0
push 0
dec ecx
jne 0x5417cc
push ebx
push esi
push edi
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x541b8d
push dword fs:[eax]
mov dword fs:[eax], esp
cmp byte [0x67c650], 0
jne 0x5417fb
mov eax, dword [ebp - 4]
call fcn.0054151c
mov edx, dword [ebp - 8]
lea eax, [ebp - 0x8164]
call fcn.004030f8
mov edx, 1
lea eax, [ebp - 0x8164]
call fcn.004037ec
call fcn.004029dc
mov eax, dword [ebp - 4]
call fcn.004bcf30
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x248]
mov edx, dword [eax]
call dword [edx + 0x44]
push 0x541ba8
fld qword [ebp + 8]
add esp, 0xfffffff4
fstp xword [esp]
wait
lea edx, [ebp - 0x816c]
mov eax, 0x541be8
call fcn.0040bb50
push dword [ebp - 0x816c]
push 0x541bf4
lea eax, [ebp - 0x8168]
mov edx, 3
call fcn.00405000
mov edx, dword [ebp - 0x8168]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x248]
mov ecx, dword [eax]
call dword [ecx + 0x38]
xor ebx, ebx
push ebp
push 0x54196d
push dword fs:[ebx]
mov dword fs:[ebx], esp
mov eax, dword [ebp - 4]
call fcn.00524f10
mov eax, dword [ebp - 4]
call fcn.004bf34c
push 0x7ff2
lea eax, [ebp - 0x14]
mov ecx, 1
mov edx, dword [0x4b0adc]
call fcn.004061e8
add esp, 4
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x541938
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
xor edx, edx
call fcn.004b2d38
mov edx, dword [eax]
call dword [edx + 0x58]
mov dword [ebp - 0x1c], eax
lea ecx, [ebp - 0x14]
mov edx, 2
mov eax, dword [ebp - 4]
mov ebx, dword [eax]
call dword [ebx + 0x22c]
mov edx, dword [ebp - 0x1c]
dec edx
test edx, edx
jl 0x541908
inc edx
xor ecx, ecx
lea eax, [ebp - 0x8017]
mov ebx, dword [ebp - 0x14]
mov bl, byte [ebx + ecx]
mov byte [eax], bl
inc ecx
inc eax
dec edx
jne 0x5418fb
xor eax, eax
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
lea edx, [ebp - 0x8017]
mov ecx, dword [ebp - 0x1c]
lea eax, [ebp - 0x8164]
call fcn.00403248
call fcn.004029dc
mov eax, dword [ebp - 0x20]
add dword [ebp - 0x18], eax
mov eax, dword [ebp - 4]
call fcn.004bf664
mov eax, dword [ebp - 4]
cmp byte [eax + 0xa1], 0
je 0x5418c2
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x8174], eax
xor eax, eax
mov dword [ebp - 0x8170], eax
fild qword [ebp - 0x8174]
fstp qword [ebp - 0x10]
wait
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x541983
xor ebx, ebx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x248]
mov edx, dword [eax]
call dword [edx + 0x44]
fld qword [ebp + 8]
add esp, 0xfffffff4
fstp xword [esp]
wait
lea edx, [ebp - 0x817c]
mov eax, 0x541be8
call fcn.0040bb50
mov ecx, dword [ebp - 0x817c]
lea eax, [ebp - 0x8178]
mov edx, 0x541c0c
call fcn.00404f8c
mov edx, dword [ebp - 0x8178]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x248]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [ebp - 4]
call fcn.00524f10
mov eax, dword [ebp - 4]
call fcn.004bf34c
mov eax, dword [ebp - 4]
cmp byte [eax + 0xa1], 0
jne 0x541a3a
lea eax, [ebp - 0x8180]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
xor edx, edx
call fcn.004b2d38
lea edx, [ebp - 0x8184]
mov ecx, dword [eax]
call dword [ecx + 0x60]
mov eax, dword [ebp - 0x8184]
mov ecx, 5
mov edx, 1
call fcn.004051a0
mov eax, dword [ebp - 0x8180]
mov edx, 0x541c3c
call fcn.0040508c
sete bl
mov eax, dword [ebp - 4]
call fcn.004bcf30
mov eax, dword [ebp - 4]
call fcn.004bcf30
lea eax, [ebp - 0x8164]
call fcn.00403268
call fcn.004029dc
test bl, bl
je 0x541b49
lea eax, [ebp - 0x8188]
mov edx, dword [ebp - 8]
call fcn.00404e78
lea eax, [ebp - 0x8188]
mov edx, 0x541c4c
call fcn.00404f48
mov eax, dword [ebp - 0x8188]
call fcn.00405140
push eax
call sub.kernel32.dll_DeleteFileA_1
push 0
lea eax, [ebp - 0x818c]
mov edx, dword [ebp - 8]
call fcn.00404e78
lea eax, [ebp - 0x818c]
mov edx, 0x541c4c
call fcn.00404f48
mov eax, dword [ebp - 0x818c]
call fcn.00405140
push eax
mov ebx, dword [ebp - 8]
push ebx
call sub.kernel32.dll_CopyFileA
test eax, eax
je 0x541b49
push ebx
call sub.kernel32.dll_DeleteFileA_1
lea eax, [ebp - 0x8190]
mov edx, dword [ebp - 8]
call fcn.00404e78
lea eax, [ebp - 0x8190]
mov edx, 0x541c4c
call fcn.00404f48
mov eax, dword [ebp - 0x8190]
lea ecx, [ebp - 0x24]
xor edx, edx
call fcn.0054162c
lea eax, [ebp - 0x8194]
mov edx, dword [ebp - 8]
call fcn.00404e78
mov edx, dword [ebp - 0x8194]
mov eax, dword [ebp - 0x24]
call fcn.0040a468
lea eax, [ebp - 0x8198]
mov edx, dword [ebp - 8]
call fcn.00404e78
lea eax, [ebp - 0x8198]
mov edx, 0x541c4c
call fcn.00404f48
mov eax, dword [ebp - 0x8198]
call fcn.00405140
push eax
call sub.kernel32.dll_DeleteFileA_1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x541b94
lea eax, [ebp - 0x8198]
mov edx, 9
call fcn.00404ca4
lea eax, [ebp - 0x816c]
mov edx, 2
call fcn.00404ca4
lea eax, [ebp - 0x24]
call fcn.00404c80
lea eax, [ebp - 0x14]
mov edx, dword [0x4b0adc]
call fcn.00406308
ret