Function at 0x5141d8
Capabilities:
Delete file
Set file attributes

Disassembly:
push ebp
mov ebp, esp
xor ecx, ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ebx
push esi
push edi
mov dword [ebp - 8], eax
xor eax, eax
push ebp
push 0x5146b4
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 8]
cmp dword [eax + 4], 0
je 0x51421d
mov eax, dword [ebp - 8]
call fcn.005155c8
mov eax, dword [ebp - 8]
add eax, 4
mov edx, dword [eax]
xor ecx, ecx
mov dword [eax], ecx
mov eax, edx
call fcn.00403f64
xor ecx, ecx
mov dl, 1
mov eax, dword [0x50eca8]
call fcn.0050f188
mov ebx, eax
mov eax, dword [ebp - 8]
mov dword [eax + 4], ebx
mov eax, dword [ebp - 8]
mov dword [ebx + 0xe4], eax
mov dword [ebx + 0xe0], fcn.00514780
mov eax, dword [ebp - 8]
mov dword [ebx + 0xec], eax
mov dword [ebx + 0xe8], 0x5147d8
mov eax, dword [ebp - 8]
mov dword [ebx + 0x104], eax
mov dword [ebx + 0x100], 0x514eb4
mov eax, dword [ebp - 8]
mov dword [ebx + 0x11c], eax
mov dword [ebx + 0x118], 0x514efc
lea eax, [ebx + 0x5c]
mov edx, dword [ebp - 8]
mov edx, dword [edx + 0x38]
call fcn.004061f0
mov eax, dword [ebp - 8]
movzx eax, byte [eax + 0x55]
mov edx, dword [ebp - 8]
mov ebx, dword [edx + 4]
mov byte [ebx + 0x58], al
mov eax, dword [ebp - 8]
movzx eax, byte [eax + 0x68]
mov byte [ebx + 0x120], al
lea eax, [ebx + 0xb0]
mov edx, dword [ebp - 8]
mov edx, dword [edx + 0x3c]
call fcn.004061f0
mov eax, dword [ebp - 8]
mov edx, dword [eax + 0x4c]
lea eax, [ebp - 0xc]
mov ecx, 0x5146d0
call fcn.004065c4
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
call fcn.00512a50
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
cmp byte [eax + 0x120], 0
je 0x5142f4
mov dword [eax + 0x70], 2
jmp 0x5142fd
mov edx, dword [ebp - 8]
mov edx, dword [edx + 0x30]
mov dword [eax + 0x70], edx
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0xdc]
call fcn.0040d298
test al, al
je 0x51444f
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x4c]
call fcn.0040d298
test al, al
je 0x51444f
xor eax, eax
push ebp
push 0x51437a
push dword fs:[eax]
mov dword fs:[eax], esp
push 0xa0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x4c]
call fcn.0040627c
push eax
call sub.kernel32.dll_SetFileAttributesW
push 1
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x4c]
mov dl, 1
mov eax, dword [0x420910]
call fcn.00426528
mov edx, dword [ebp - 8]
mov edx, dword [edx + 4]
mov dword [edx + 0x8c], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x51453b
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0xdc]
call fcn.0040d298
test al, al
je 0x51447b
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0xdc]
call fcn.0040627c
push eax
call sub.kernel32.dll_DeleteFileW
xor eax, eax
push ebp
push 0x5144b9
push dword fs:[eax]
mov dword fs:[eax], esp
push 0xffff
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x4c]
mov dl, 1
mov eax, dword [0x420910]
call fcn.00426528
mov edx, dword [ebp - 8]
mov edx, dword [edx + 4]
mov dword [edx + 0x8c], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x51453b
mov eax, dword [ebp - 8]
movzx eax, byte [eax + 0x56]
cmp al, 2
jne 0x5145e5
mov eax, dword [ebp - 8]
mov ebx, dword [eax + 4]
mov byte [ebx + 0xd1], 2
lea eax, [ebx + 0xb4]
mov edx, dword [ebp - 8]
mov edx, dword [edx + 0x60]
call fcn.004061f0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
add eax, 0xb8
mov edx, dword [ebp - 8]
mov edx, dword [edx + 0x64]
call fcn.004061f0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
add eax, 0xbc
mov edx, dword [ebp - 8]
mov edx, dword [edx + 0x58]
call fcn.004061f0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
add eax, 0xc0
mov edx, dword [ebp - 8]
mov edx, dword [edx + 0x5c]
call fcn.004061f0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
add eax, 0xc4
xor edx, edx
call fcn.004061f0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
add eax, 0xcc
xor edx, edx
call fcn.004061f0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
add eax, 0xc8
xor edx, edx
call fcn.004061f0
jmp 0x514691
cmp al, 1
jne 0x514691
mov eax, dword [ebp - 8]
mov ebx, dword [eax + 4]
mov byte [ebx + 0xd1], 2
lea eax, [ebx + 0xb4]
xor edx, edx
call fcn.004061f0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
add eax, 0xb8
xor edx, edx
call fcn.004061f0
mov eax, dword [ebp - 8]
lea ecx, [eax + 0x5c]
mov eax, dword [ebp - 8]
lea edx, [eax + 0x58]
mov eax, 0x514774
call fcn.00513f3c
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
add eax, 0xbc
mov edx, dword [ebp - 8]
mov edx, dword [edx + 0x58]
call fcn.004061f0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
add eax, 0xc0
mov edx, dword [ebp - 8]
mov edx, dword [edx + 0x5c]
call fcn.004061f0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
add eax, 0xc4
xor edx, edx
call fcn.004061f0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
add eax, 0xcc
xor edx, edx
call fcn.004061f0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
add eax, 0xc8
xor edx, edx
call fcn.004061f0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5146bb
lea eax, [ebp - 0x20]
mov edx, 6
call fcn.004061e8
lea eax, [ebp - 4]
call fcn.004061e0
ret