Function at 0x5b63e8
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff40
push ebx
push esi
xor eax, eax
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0x34], eax
xor eax, eax
push ebp
push 0x5b6926
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 0xb5], 0
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
call fcn.005bcb08
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
mov eax, dword [eax + 0x160]
push eax
call sub.kernel32.dll_DeleteFileW
lea eax, [ebp - 0x34]
call fcn.006204a4
call fcn.00650ca0
mov edx, dword [0x672464]
mov dword [edx], eax
call fcn.00650ca0
mov edx, dword [0x672f98]
mov dword [edx], eax
mov byte [ebp - 0x2a], 0
mov byte [ebp - 0x29], 0
mov byte [ebp - 0xaf], 0
call fcn.004c3e38
mov dword [ebp - 0xc], eax
call fcn.00650c50
mov edx, dword [0x673354]
mov dword [edx], eax
call fcn.00650ca0
mov edx, dword [0x6728a0]
mov dword [edx], eax
call fcn.00651de8
mov dword [ebp - 0xb4], eax
lea eax, [ebp - 7]
mov edx, 7
call fcn.0065c4dc
xor eax, eax
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0xa8], 1
mov dword [ebp - 0xac], 1
xor eax, eax
mov dword [ebp - 0x20], eax
xor eax, eax
mov dword [ebp - 0x1c], eax
call fcn.00650ca0
mov dword [ebp - 0x3c], eax
call fcn.00650ca0
mov dword [ebp - 0x14], eax
mov byte [ebp - 0xae], 0
mov byte [ebp - 0xad], 0
xor eax, eax
mov dword [ebp - 0x30], eax
mov edx, 0x5b6944
mov eax, dword [ebp - 0xc]
call fcn.004c43dc
mov ebx, eax
lea eax, [ebx + 0x34]
mov edx, 0x5b6950
call fcn.004038bc
mov ecx, 0x5b6978
mov edx, 0x5b6994
mov eax, ebx
call fcn.004c4474
push ebp
mov al, 3
call fcn.005ae514
pop ecx
push ebp
mov al, 6
call fcn.005ae514
pop ecx
mov edx, 0x5b69a4
mov eax, dword [ebp - 0xc]
call fcn.004c43dc
mov ebx, eax
lea eax, [ebx + 0x34]
mov edx, 0x5b69b8
call fcn.004038bc
mov ecx, 0x5b69d0
mov edx, 0x5b6994
mov eax, ebx
call fcn.004c4474
mov edx, 0x5b69f4
mov eax, ebx
call fcn.004c43dc
mov esi, eax
mov ecx, 0x5b6a0c
mov edx, 0x5b6a1c
mov eax, esi
call fcn.004c41c0
lea edx, [ebp - 0xc0]
mov eax, 0x5b6a28
call fcn.004c3d34
mov ecx, dword [ebp - 0xc0]
mov edx, 0x5b6a40
mov eax, esi
call fcn.004c41c0
mov ecx, 0x5b6a50
mov edx, 0x5b6a6c
mov eax, esi
call fcn.004c41c0
mov edx, 0x5b69f4
mov eax, ebx
call fcn.004c43dc
mov esi, eax
mov ecx, 0x5b6a7c
mov edx, 0x5b6a1c
mov eax, esi
call fcn.004c41c0
mov ecx, 0x5b6a84
mov edx, 0x5b6abc
mov eax, esi
call fcn.004c4474
mov ecx, 0x5b6acc
mov edx, 0x5b6a6c
mov eax, esi
call fcn.004c41c0
mov edx, 0x5b69f4
mov eax, ebx
call fcn.004c43dc
mov ebx, eax
mov ecx, 0x5b6ae8
mov edx, 0x5b6a1c
mov eax, ebx
call fcn.004c41c0
lea edx, [ebp - 0xc0]
mov eax, 0x5b6af8
call fcn.004c3d34
mov ecx, dword [ebp - 0xc0]
mov edx, 0x5b6a40
mov eax, ebx
call fcn.004c41c0
mov ecx, 0x5b6b18
mov edx, 0x5b6a6c
mov eax, ebx
call fcn.004c41c0
push ebp
lea edx, [ebp - 0xc0]
mov eax, 0x5b6b34
call fcn.004c3cd4
mov edx, dword [ebp - 0xc0]
mov eax, 0x5b6b4c
call fcn.005ae5f8
pop ecx
mov edx, 0x5b6b68
mov eax, dword [ebp - 0xc]
call fcn.004c4404
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
add eax, 0x34
mov edx, 0x5b6b78
call fcn.004038bc
mov eax, dword [ebp - 0x18]
mov byte [eax + 0x30], 1
push ebp
call fcn.005af3e4
pop ecx
push ebp
call fcn.005aea18
pop ecx
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
mov eax, dword [eax + 0x598]
mov ebx, dword [eax + 0x18]
dec ebx
cmp ebx, 0
jl 0x5b66be
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
mov eax, dword [eax + 0x598]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax + ebx*4]
mov dword [eax + 0x38], ebx
dec ebx
cmp ebx, 0xffffffff
jne 0x5b66a3
push ebp
call fcn.005b273c
pop ecx
push ebp
call fcn.005b2b0c
pop ecx
push ebp
call fcn.005b3224
pop ecx
mov eax, dword [0x672150]
push eax
mov edx, dword [0x67223c]
mov ecx, 0xb
mov eax, dword [ebp - 0x18]
call fcn.004c44fc
mov edx, 0x5b6ba4
mov eax, dword [ebp - 0x18]
call fcn.004c4404
mov ebx, eax
push ebp
mov eax, dword [ebp + 8]
add eax, 0xffffffcc
mov ecx, ebx
mov edx, dword [ebp - 0x18]
call fcn.005b6310
pop ecx
mov eax, dword [0x6730b4]
test byte [eax + 1], 0x40
je 0x5b673d
mov eax, dword [ebp + 8]
mov edx, dword [eax - 0x24]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
call fcn.005c0310
mov edx, dword [ebp + 8]
cmp eax, dword [edx - 0x20]
jne 0x5b673d
mov edx, 0x5b6bb4
mov eax, ebx
call fcn.004c4404
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
mov eax, dword [eax + 0x1d4]
mov ebx, dword [eax + 0x18]
dec ebx
cmp ebx, 0
jl 0x5b677d
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
mov eax, dword [eax + 0x1d4]
mov edx, dword [eax + 0x1c]
mov edx, dword [edx + ebx*4]
cmp byte [edx + 0xc4], 0
je 0x5b6777
mov edx, dword [ebp + 8]
mov edx, ebx
call fcn.006522a8
dec ebx
cmp ebx, 0xffffffff
jne 0x5b6752
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
mov dl, byte [0x5b6bb8]
cmp dl, byte [eax + 0x594]
je 0x5b67a3
push ebp
mov al, 1
call fcn.005af87c
pop ecx
push ebp
mov al, 2
call fcn.005af87c
pop ecx
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x18]
dec eax
test eax, eax
jl 0x5b680c
inc eax
mov dword [ebp - 0xbc], eax
xor ebx, ebx
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x1c]
mov esi, dword [eax + ebx*4]
lea eax, [esi + 0x34]
mov ecx, dword [esi + 0x34]
mov edx, dword [ebp - 0x34]
call fcn.00403b24
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax + ebx*4]
cmp eax, dword [ebp - 0x18]
jne 0x5b67ed
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x24]
mov edx, dword [ebp + 8]
sub eax, dword [edx - 0x34]
shl eax, 9
jmp 0x5b67ef
xor eax, eax
test eax, eax
setg dl
push edx
mov ecx, eax
mov edx, 0x5b6bc4
mov eax, esi
call fcn.004c49a0
inc ebx
dec dword [ebp - 0xbc]
jne 0x5b67b7
mov eax, dword [ebp - 0x14]
call fcn.004028c0
mov eax, dword [ebp - 0xb4]
call fcn.00652408
mov eax, dword [0x6728a0]
mov eax, dword [eax]
call fcn.004028c0
mov eax, dword [0x673354]
mov eax, dword [eax]
call fcn.004028c0
mov eax, dword [ebp - 0xc]
call fcn.004c4a98
mov eax, dword [0x672464]
mov eax, dword [eax]
mov dl, 1
call fcn.0065379c
mov eax, dword [0x6732e8]
mov byte [eax], 1
mov eax, dword [0x672c58]
mov byte [eax], 0
cmp byte [ebp - 0xb5], 0
jne 0x5b6885
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
mov edx, dword [eax + 0x160]
mov eax, dword [ebp - 0x34]
call fcn.004386d4
test al, al
jne 0x5b6885
mov byte [ebp - 0xb5], 2
mov eax, dword [0x672c58]
mov byte [eax], 1
mov eax, dword [0x6732e8]
mov byte [eax], 0
mov eax, dword [0x672464]
call fcn.006565a4
mov eax, dword [0x672f98]
mov eax, dword [eax]
call fcn.004028c0
xor edx, edx
mov eax, dword [ebp - 0x34]
call fcn.00625670
mov eax, dword [ebp - 0x3c]
mov ebx, dword [eax + 0x24]
dec ebx
cmp ebx, 0
jl 0x5b68d6
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax + 0x18]
mov eax, dword [eax + ebx*4]
push eax
call sub.kernel32.dll_DeleteFileW
dec ebx
cmp ebx, 0xffffffff
jne 0x5b68c1
mov eax, dword [ebp - 0x3c]
call fcn.004028c0
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
mov eax, dword [eax + 0x160]
mov ecx, 1
mov edx, 0xc0000000
call fcn.0065c53c
mov edx, dword [ebp + 8]
mov edx, dword [edx - 0x44]
mov dword [edx + 0x164], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5b692d
lea eax, [ebp - 0xc0]
call fcn.00403274
lea eax, [ebp - 0x34]
call fcn.00403880
ret