Function at 0x53ffc8
Capabilities:
Delete file
Move file

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x69
push 0
push 0
dec ecx
jne 0x53ffd0
push ebx
push esi
push edi
mov ebx, edx
mov byte [ebp - 0x11], al
mov esi, dword [0x59734c]
xor eax, eax
push ebp
push 0x5406a1
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x59c714]
mov eax, dword [eax + 0x360]
mov edx, dword [eax]
call dword [edx + 0xdc]
lea eax, [ebp - 0xc]
mov edx, 0x5406b8
call fcn.004057e0
test bl, bl
jne 0x5400ba
lea edx, [ebp - 0x2e4]
mov eax, dword [0x597290]
mov eax, dword [eax]
call fcn.0040b1e4
mov eax, dword [ebp - 0x2e4]
mov edx, 0x5406c8
call fcn.00405b68
jne 0x540045
cmp byte [ebp - 0x11], 0
je 0x5400ba
mov eax, dword [0x597290]
mov eax, dword [eax]
mov edx, 0x5406dc
call fcn.00405b68
je 0x54007c
lea edx, [ebp - 0x2e8]
mov eax, dword [0x597290]
mov eax, dword [eax]
call fcn.0040b1e4
mov eax, dword [ebp - 0x2e8]
mov edx, 0x5406b8
call fcn.00405b68
je 0x5400ba
mov eax, dword [0x59c714]
mov eax, dword [eax + 0x378]
mov edx, dword [eax]
call dword [edx + 0x3c]
test al, al
je 0x54064b
lea edx, [ebp - 0x2ec]
mov eax, dword [0x59c714]
mov eax, dword [eax + 0x378]
call fcn.004493f8
mov edx, dword [ebp - 0x2ec]
mov eax, dword [0x597290]
call fcn.0040579c
lea eax, [ebp - 4]
mov edx, dword [0x597290]
mov edx, dword [edx]
call fcn.004057e0
mov eax, dword [0x596c5c]
push dword [eax]
push 0x5406ec
lea edx, [ebp - 0x2f4]
mov eax, dword [ebp - 4]
call fcn.0040b1ac
push dword [ebp - 0x2f4]
push 0x5406fc
lea eax, [ebp - 0x2f0]
mov edx, 4
call fcn.00405adc
mov edx, dword [ebp - 0x2f0]
mov eax, dword [0x5974fc]
mov eax, dword [eax]
call fcn.0045a018
test bl, bl
je 0x540135
lea edx, [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.0040b06c
lea eax, [ebp - 4]
mov ecx, 0x540708
mov edx, dword [ebp - 8]
call fcn.00405a68
jmp 0x54054d
mov eax, dword [ebp - 4]
call fcn.0040acbc
test al, al
je 0x540147
mov byte [ebp - 0x1f], 1
jmp 0x54014b
mov byte [ebp - 0x1f], 0
movzx eax, byte [ebp - 0x11]
xor al, 1
and al, byte [ebp - 0x1f]
je 0x540192
push 0
push 0x54071c
push dword [ebp - 4]
push 0x540730
lea eax, [ebp - 0x2f8]
mov edx, 3
call fcn.00405adc
mov eax, dword [ebp - 0x2f8]
movzx ecx, word [0x540734]
mov dl, 3
call fcn.0044add0
cmp eax, 7
je 0x54064b
lea eax, [ebp - 8]
mov edx, dword [ebp - 4]
call fcn.004057e0
mov eax, dword [0x5970d4]
cmp byte [eax], 0
je 0x54054d
mov eax, dword [0x5972e0]
cmp dword [eax], 0
jle 0x540499
mov eax, dword [0x597080]
cmp byte [eax], 0
je 0x540499
lea ecx, [ebp - 0x2fc]
mov edx, 0x540740
mov eax, dword [ebp - 8]
call fcn.0040afd8
mov edi, dword [ebp - 0x2fc]
mov dword [ebp - 0x300], edi
mov eax, dword [ebp - 0x300]
call fcn.00405c1c
push eax
call sub.kernel32.dll_DeleteFileA
cmp eax, 1
sbb eax, eax
inc eax
lea ecx, [ebp - 0x304]
mov edx, 0x540750
mov eax, dword [ebp - 8]
call fcn.0040afd8
mov eax, dword [ebp - 0x304]
mov dword [ebp - 0x24], eax
lea ecx, [ebp - 0x308]
mov edx, 0x540740
mov eax, dword [ebp - 8]
call fcn.0040afd8
mov edi, dword [ebp - 0x308]
mov dword [ebp - 0x300], edi
mov eax, dword [ebp - 0x300]
call fcn.00405c1c
push eax
mov eax, dword [ebp - 0x24]
call fcn.00405c1c
push eax
call sub.kernel32.dll_MoveFileA
cmp eax, 1
sbb eax, eax
inc eax
lea ecx, [ebp - 0x30c]
mov edx, 0x540750
mov eax, dword [ebp - 8]
call fcn.0040afd8
mov edi, dword [ebp - 0x30c]
mov dword [ebp - 0x300], edi
mov eax, dword [ebp - 0x300]
call fcn.00405c1c
push eax
call sub.kernel32.dll_DeleteFileA
cmp eax, 1
sbb eax, eax
inc eax
lea ecx, [ebp - 0x310]
mov edx, 0x540760
mov eax, dword [ebp - 8]
call fcn.0040afd8
mov eax, dword [ebp - 0x310]
mov dword [ebp - 0x28], eax
lea ecx, [ebp - 0x314]
mov edx, 0x540750
mov eax, dword [ebp - 8]
call fcn.0040afd8
mov edi, dword [ebp - 0x314]
mov dword [ebp - 0x300], edi
mov eax, dword [ebp - 0x300]
call fcn.00405c1c
push eax
mov eax, dword [ebp - 0x28]
call fcn.00405c1c
push eax
call sub.kernel32.dll_MoveFileA
cmp eax, 1
sbb eax, eax
inc eax
lea ecx, [ebp - 0x318]
mov edx, 0x540760
mov eax, dword [ebp - 8]
call fcn.0040afd8
mov edi, dword [ebp - 0x318]
mov dword [ebp - 0x300], edi
mov eax, dword [ebp - 0x300]
call fcn.00405c1c
push eax
call sub.kernel32.dll_DeleteFileA
cmp eax, 1
sbb eax, eax
inc eax
lea ecx, [ebp - 0x31c]
mov edx, 0x540770
mov eax, dword [ebp - 8]
call fcn.0040afd8
mov eax, dword [ebp - 0x31c]
mov dword [ebp - 0x2c], eax
lea ecx, [ebp - 0x320]
mov edx, 0x540760
mov eax, dword [ebp - 8]
call fcn.0040afd8
mov edi, dword [ebp - 0x320]
mov dword [ebp - 0x300], edi
mov eax, dword [ebp - 0x300]
call fcn.00405c1c
push eax
mov eax, dword [ebp - 0x2c]
call fcn.00405c1c
push eax
call sub.kernel32.dll_MoveFileA
cmp eax, 1
sbb eax, eax
inc eax
lea ecx, [ebp - 0x324]
mov edx, 0x540770
mov eax, dword [ebp - 8]
call fcn.0040afd8
mov edi, dword [ebp - 0x324]
mov dword [ebp - 0x300], edi
mov eax, dword [ebp - 0x300]
call fcn.00405c1c
push eax
call sub.kernel32.dll_DeleteFileA
cmp eax, 1
sbb eax, eax
inc eax
lea ecx, [ebp - 0x328]
mov edx, 0x540780
mov eax, dword [ebp - 8]
call fcn.0040afd8
mov eax, dword [ebp - 0x328]
mov dword [ebp - 0x30], eax
lea ecx, [ebp - 0x32c]
mov edx, 0x540770
mov eax, dword [ebp - 8]
call fcn.0040afd8
mov edi, dword [ebp - 0x32c]
mov dword [ebp - 0x300], edi
mov eax, dword [ebp - 0x300]
call fcn.00405c1c
push eax
mov eax, dword [ebp - 0x30]
call fcn.00405c1c
push eax
call sub.kernel32.dll_MoveFileA
cmp eax, 1
sbb eax, eax
inc eax
mov byte [ebp - 0x31], al
lea ecx, [ebp - 0x330]
mov edx, 0x540780
mov eax, dword [ebp - 8]
call fcn.0040afd8
mov eax, dword [ebp - 0x330]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
call fcn.00405c1c
push eax
call sub.kernel32.dll_DeleteFileA
cmp eax, 1
sbb eax, eax
inc eax
mov byte [ebp - 0x39], al
lea ecx, [ebp - 0x334]
mov edx, 0x540790
mov eax, dword [ebp - 8]
call fcn.0040afd8
mov eax, dword [ebp - 0x334]
mov dword [ebp - 0x40], eax
lea ecx, [ebp - 0x338]
mov edx, 0x540780
mov eax, dword [ebp - 8]
call fcn.0040afd8
mov eax, dword [ebp - 0x338]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
call fcn.00405c1c
push eax
mov eax, dword [ebp - 0x40]
call fcn.00405c1c
push eax
call sub.kernel32.dll_MoveFileA
cmp eax, 1
sbb eax, eax
inc eax
mov byte [ebp - 0x45], al
lea ecx, [ebp - 0x33c]
mov edx, 0x540790
mov eax, dword [ebp - 8]
call fcn.0040afd8
mov edi, dword [ebp - 0x33c]
mov dword [ebp - 0x300], edi
mov eax, dword [ebp - 0x300]
call fcn.00405c1c
push eax
call sub.kernel32.dll_DeleteFileA
cmp eax, 1
sbb eax, eax
inc eax
lea ecx, [ebp - 0x340]
mov edx, 0x540790
mov eax, dword [ebp - 8]
call fcn.0040afd8
mov edi, dword [ebp - 0x340]
mov dword [ebp - 0x300], edi
mov eax, dword [ebp - 0x300]
call fcn.00405c1c
push eax
mov eax, dword [ebp - 4]
call fcn.00405c1c
push eax
call sub.kernel32.dll_MoveFileA
cmp eax, 1
sbb eax, eax
inc eax
test al, al
jne 0x54054d
cmp byte [ebp - 0x1f], 0
je 0x54054d
push 0x5407a0
push dword [ebp - 4]
push 0x5407d8
push 0x5407d8
push 0x5407e4
push dword [ebp - 8]
lea eax, [ebp - 0x344]
mov edx, 6
call fcn.00405adc
mov eax, dword [ebp - 0x344]
call fcn.0044af4c
test bl, bl
jne 0x54057f
lea edx, [ebp - 0x348]
mov eax, dword [0x597290]
mov eax, dword [eax]
call fcn.0040b1e4
mov eax, dword [ebp - 0x348]
mov edx, 0x5406c8
call fcn.00405b68
jne 0x54057f
call fcn.005712bc
jmp 0x54064b
mov edx, dword [ebp - 4]
lea eax, [ebp - 0x2e0]
call fcn.0040367c
mov edx, 0x77f
lea eax, [ebp - 0x2e0]
call fcn.00403bac
call fcn.00402f48
mov ebx, dword [0x597418]
movzx ebx, word [ebx]
inc word [esi]
mov eax, 0x77f
call fcn.00402dec
movzx edx, word [esi]
mov ecx, dword [0x596c00]
mov dword [ecx + edx*4 - 4], eax
movzx eax, word [esi]
mov edx, dword [0x597418]
mov word [edx], ax
call fcn.0053e774
movzx eax, word [esi]
mov edx, dword [0x596c00]
mov edx, dword [edx + eax*4 - 4]
lea eax, [ebp - 0x2e0]
call fcn.00403cec
call fcn.00402f48
movzx eax, word [esi]
mov edx, dword [0x596c00]
mov eax, dword [edx + eax*4 - 4]
mov edx, 0x77f
call fcn.00402e08
mov eax, dword [0x597418]
mov word [eax], bx
dec word [esi]
mov ebx, 1
mov eax, dword [0x596c00]
mov edx, dword [eax + ebx*4 - 4]
lea eax, [ebp - 0x2e0]
call fcn.00403cec
call fcn.00402f48
inc ebx
movzx eax, word [esi]
cmp ebx, eax
jle 0x54061a
lea eax, [ebp - 0x2e0]
call fcn.004037fc
call fcn.00402f48
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5406a8
lea eax, [ebp - 0x348]
mov edx, 0x12
call fcn.0040576c
lea eax, [ebp - 0x2fc]
mov edx, 4
call fcn.0040576c
lea eax, [ebp - 0x2ec]
call fcn.00405748
lea eax, [ebp - 0x2e8]
mov edx, 2
call fcn.0040576c
lea eax, [ebp - 0x10]
mov edx, 4
call fcn.0040576c
ret