Function at 0x52f988
Capabilities:
Delete file
Move file

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x67
push 0
push 0
dec ecx
jne 0x52f990
push ecx
push ebx
push esi
push edi
mov ebx, edx
mov byte [ebp - 0x11], al
mov esi, dword [0x552c6c]
xor eax, eax
push ebp
push 0x530043
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0xc]
mov edx, 0x53005c
call fcn.00405924
lea eax, [ebp - 0x10]
mov edx, 0x53006c
call fcn.00405924
test bl, bl
jne 0x52fa75
lea edx, [ebp - 0x2d8]
mov eax, dword [0x552b48]
mov eax, dword [eax]
call fcn.0040b234
mov eax, dword [ebp - 0x2d8]
mov edx, 0x53007c
call fcn.00405cac
jne 0x52fa00
cmp byte [ebp - 0x11], 0
je 0x52fa75
mov eax, dword [0x552b48]
mov eax, dword [eax]
mov edx, 0x530090
call fcn.00405cac
je 0x52fa37
lea edx, [ebp - 0x2dc]
mov eax, dword [0x552b48]
mov eax, dword [eax]
call fcn.0040b234
mov eax, dword [ebp - 0x2dc]
mov edx, 0x53005c
call fcn.00405cac
je 0x52fa75
mov eax, dword [0x5576a0]
mov eax, dword [eax + 0x370]
mov edx, dword [eax]
call dword [edx + 0x3c]
test al, al
je 0x52ffed
lea edx, [ebp - 0x2e0]
mov eax, dword [0x5576a0]
mov eax, dword [eax + 0x370]
call fcn.0044869c
mov edx, dword [ebp - 0x2e0]
mov eax, dword [0x552b48]
call fcn.004058e0
lea eax, [ebp - 4]
mov edx, dword [0x552b48]
mov edx, dword [edx]
call fcn.00405924
mov eax, dword [0x5525b8]
push dword [eax]
push 0x5300a0
lea edx, [ebp - 0x2e8]
mov eax, dword [ebp - 4]
call fcn.0040b1fc
push dword [ebp - 0x2e8]
push 0x5300b0
lea eax, [ebp - 0x2e4]
mov edx, 4
call fcn.00405c20
mov edx, dword [ebp - 0x2e4]
mov eax, dword [0x552d48]
mov eax, dword [eax]
call fcn.00459214
test bl, bl
je 0x52faf0
lea edx, [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.0040b0bc
lea eax, [ebp - 4]
mov ecx, 0x5300bc
mov edx, dword [ebp - 8]
call fcn.00405bac
jmp 0x52fee1
mov eax, dword [ebp - 4]
call fcn.0040ad0c
test al, al
je 0x52fb02
mov byte [ebp - 0x1f], 1
jmp 0x52fb06
mov byte [ebp - 0x1f], 0
movzx eax, byte [ebp - 0x11]
xor al, 1
and al, byte [ebp - 0x1f]
je 0x52fb4d
push 0
push 0x5300d0
push dword [ebp - 4]
push 0x5300e4
lea eax, [ebp - 0x2ec]
mov edx, 3
call fcn.00405c20
mov eax, dword [ebp - 0x2ec]
movzx ecx, word [0x5300e8]
mov dl, 3
call fcn.0044a074
cmp eax, 7
je 0x52ffed
lea eax, [ebp - 8]
mov edx, dword [ebp - 4]
call fcn.00405924
mov eax, dword [0x5529cc]
cmp byte [eax], 0
je 0x52fee1
mov eax, dword [0x552b94]
cmp word [eax], 0
jbe 0x52fe55
mov eax, dword [0x552970]
cmp byte [eax], 0
je 0x52fe55
lea ecx, [ebp - 0x2f0]
mov edx, 0x5300f4
mov eax, dword [ebp - 8]
call fcn.0040b028
mov edi, dword [ebp - 0x2f0]
mov dword [ebp - 0x2f4], edi
mov eax, dword [ebp - 0x2f4]
call fcn.00405d60
push eax
call sub.kernel32.dll_DeleteFileA
cmp eax, 1
sbb eax, eax
inc eax
lea ecx, [ebp - 0x2f8]
mov edx, 0x530104
mov eax, dword [ebp - 8]
call fcn.0040b028
mov edi, dword [ebp - 0x2f8]
lea ecx, [ebp - 0x2fc]
mov edx, 0x5300f4
mov eax, dword [ebp - 8]
call fcn.0040b028
mov eax, dword [ebp - 0x2fc]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
call fcn.00405d60
push eax
mov dword [ebp - 0x2f4], edi
mov eax, dword [ebp - 0x2f4]
call fcn.00405d60
push eax
call sub.kernel32.dll_MoveFileA
cmp eax, 1
sbb eax, eax
inc eax
lea ecx, [ebp - 0x300]
mov edx, 0x530104
mov eax, dword [ebp - 8]
call fcn.0040b028
mov edi, dword [ebp - 0x300]
mov dword [ebp - 0x2f4], edi
mov eax, dword [ebp - 0x2f4]
call fcn.00405d60
push eax
call sub.kernel32.dll_DeleteFileA
cmp eax, 1
sbb eax, eax
inc eax
lea ecx, [ebp - 0x304]
mov edx, 0x530114
mov eax, dword [ebp - 8]
call fcn.0040b028
mov edi, dword [ebp - 0x304]
lea ecx, [ebp - 0x308]
mov edx, 0x530104
mov eax, dword [ebp - 8]
call fcn.0040b028
mov eax, dword [ebp - 0x308]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
call fcn.00405d60
push eax
mov dword [ebp - 0x2f4], edi
mov eax, dword [ebp - 0x2f4]
call fcn.00405d60
push eax
call sub.kernel32.dll_MoveFileA
cmp eax, 1
sbb eax, eax
inc eax
lea ecx, [ebp - 0x30c]
mov edx, 0x530114
mov eax, dword [ebp - 8]
call fcn.0040b028
mov edi, dword [ebp - 0x30c]
mov dword [ebp - 0x2f4], edi
mov eax, dword [ebp - 0x2f4]
call fcn.00405d60
push eax
call sub.kernel32.dll_DeleteFileA
cmp eax, 1
sbb eax, eax
inc eax
lea ecx, [ebp - 0x310]
mov edx, 0x530124
mov eax, dword [ebp - 8]
call fcn.0040b028
mov edi, dword [ebp - 0x310]
lea ecx, [ebp - 0x314]
mov edx, 0x530114
mov eax, dword [ebp - 8]
call fcn.0040b028
mov eax, dword [ebp - 0x314]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
call fcn.00405d60
push eax
mov dword [ebp - 0x2f4], edi
mov eax, dword [ebp - 0x2f4]
call fcn.00405d60
push eax
call sub.kernel32.dll_MoveFileA
cmp eax, 1
sbb eax, eax
inc eax
lea ecx, [ebp - 0x318]
mov edx, 0x530124
mov eax, dword [ebp - 8]
call fcn.0040b028
mov edi, dword [ebp - 0x318]
call 0x8a52fd4c
mov ebp, 0xfffffd0c