Function at 0x621750
Capabilities:
Delete directory
Delete file
Enumerate files on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x648168
mov eax, dword fs:[0]
push eax
sub esp, 0x31c
mov eax, dword [0x6f8b74]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
mov dword [ebp - 0x2f4], eax
xor eax, eax
mov dword [ebp - 0x44], 7
mov dword [ebp - 0x48], 0
mov word [ebp - 0x58], ax
push 8
mov dword [ebp - 4], eax
mov dword [ebp - 0x2ec], eax
mov dword [ebp - 0x2e8], eax
mov dword [ebp - 0x2e4], eax
mov dword [ebp - 0x2e0], eax
mov dword [ebp - 0x2dc], eax
call fcn.005b5266
add esp, 4
test eax, eax
jne 0x6217d2
call fcn.005c116d
mov dword [ebp - 0x2ec], eax
lea ecx, [ebp - 0x2ec]
mov dword [eax], 0
mov dword [eax + 4], 0
mov eax, dword [ebp - 0x2ec]
mov dword [eax], ecx
xor esi, esi
mov dword [ebp - 0x310], esi
mov dword [ebp - 0x30c], esi
mov dword [ebp - 0x308], esi
mov dword [ebp - 0x300], esi
mov dword [ebp - 0x2fc], esi
mov dword [ebp - 0x2f8], esi
push edi
mov byte [ebp - 4], 3
call fcn.006223e0
add esp, 4
test al, al
jne 0x621831
xor bl, bl
jmp 0x621eda
xor eax, eax
mov dword [ebp - 0x2c], 7
mov dword [ebp - 0x30], 0
mov word [ebp - 0x40], ax
mov byte [ebp - 4], 4
cmp word [edi], ax
jne 0x621852
xor ecx, ecx
jmp 0x621866
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x621857
sub ecx, edx
sar ecx, 1
push ecx
push edi
lea ecx, [ebp - 0x40]
call fcn.00435be0
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x2ec]
call fcn.00622550
lea eax, [ebp - 0x310]
push eax
push 0
push 0
call fcn.00620e60
lea eax, [ebp - 0x300]
xor edi, edi
push eax
push edi
push edi
mov dword [ebp - 0x30c], edi
call fcn.00620e60
add esp, 0x18
mov dword [ebp - 0x2fc], edi
lea eax, [ebp - 0x40]
lea ecx, [ebp - 0x300]
push eax
call fcn.00479005
cmp dword [ebp - 0x2dc], edi
sete al
test al, al
jne 0x621e35
mov edi, dword [sym.imp.KERNEL32.dll_FindNextFileW]
mov ebx, dword [sym.imp.KERNEL32.dll_FindClose]
nop word [eax + eax]
push 1
lea eax, [ebp - 0x31c]
push eax
lea eax, [ebp - 0x328]
push eax
lea ecx, [ebp - 0x2ec]
call fcn.00621fe0
mov ecx, eax
call fcn.00621200
mov edx, eax
mov eax, dword [edx]
test eax, eax
je 0x62190c
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [eax + 4]
dec ecx
and ecx, dword [edx + 8]
mov eax, dword [eax + ecx*4]
lea ecx, [ebp - 0x40]
cmp ecx, eax
je 0x62192a
push 0xffffffffffffffff
push 0
push eax
call fcn.00435ce0
push 0x6c0d3c
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.00478797
push 0x6b84e4
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 5
push eax
call fcn.0043e430
add esp, 0x18
mov esi, eax
lea eax, [ebp - 0x58]
cmp eax, esi
je 0x621990
mov eax, dword [ebp - 0x44]
cmp eax, 8
jb 0x621973
inc eax
lea ecx, [ebp - 0x58]
push eax
push dword [ebp - 0x58]
call fcn.004361d0
xor eax, eax
mov dword [ebp - 0x44], 7
push esi
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x48], 0
mov word [ebp - 0x58], ax
call fcn.0043dfb0
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 5
cmp eax, 8
jb 0x6219e7
mov ecx, dword [ebp - 0x28]
inc eax
cmp eax, 0x7fffffff
ja 0x6217cd
add eax, eax
cmp eax, 0x1000
jb 0x6219de
test cl, 0x1f
jne 0x6217cd
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x6217cd
sub ecx, eax
cmp ecx, 4
jb 0x6217cd
cmp ecx, 0x23
ja 0x6217cd
mov ecx, eax
push ecx
call fcn.0048c680
add esp, 4
xor eax, eax
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x18], 0
mov byte [ebp - 4], 4
cmp eax, 8
jb 0x621a55
mov ecx, dword [ebp - 0x88]
inc eax
cmp eax, 0x7fffffff
ja 0x6217cd
add eax, eax
cmp eax, 0x1000
jb 0x621a4c
test cl, 0x1f
jne 0x6217cd
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x6217cd
sub ecx, eax
cmp ecx, 4
jb 0x6217cd
cmp ecx, 0x23
ja 0x6217cd
mov ecx, eax
push ecx
call fcn.0048c680
add esp, 4
mov eax, dword [ebp - 0x2e0]
mov ecx, dword [ebp - 0x2dc]
dec eax
mov edx, dword [ebp - 0x2e4]
add ecx, eax
mov eax, dword [ebp - 0x2e8]
dec edx
and edx, ecx
mov esi, dword [eax + edx*4]
mov eax, dword [esi + 0x14]
cmp eax, 8
jb 0x621ac8
mov ecx, dword [esi]
inc eax
cmp eax, 0x7fffffff
ja 0x6217cd
add eax, eax
cmp eax, 0x1000
jb 0x621abf
test cl, 0x1f
jne 0x6217cd
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x6217cd
sub ecx, eax
cmp ecx, 4
jb 0x6217cd
cmp ecx, 0x23
ja 0x6217cd
mov ecx, eax
push ecx
call fcn.0048c680
add esp, 4
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], 0
cmp dword [esi + 0x14], 8
jb 0x621ade
mov esi, dword [esi]
xor eax, eax
mov ecx, 0
mov word [esi], ax
sub dword [ebp - 0x2dc], 1
mov eax, dword [ebp - 0x2e0]
cmove eax, ecx
cmp dword [ebp - 0x44], 8
mov dword [ebp - 0x2e0], eax
lea ecx, [ebp - 0x2d8]
lea eax, [ebp - 0x58]
cmovae eax, dword [ebp - 0x58]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov esi, eax
cmp esi, 0xffffffff
je 0x621f4b
mov edx, 0x6c0c40
lea ecx, [ebp - 0x2ac]
nop dword [eax]
mov ax, word [ecx]
cmp ax, word [edx]
jne 0x621b56
test ax, ax
je 0x621b52
mov ax, word [ecx + 2]
cmp ax, word [edx + 2]
jne 0x621b56
add ecx, 4
add edx, 4
test ax, ax
jne 0x621b30
xor eax, eax
jmp 0x621b5b
sbb eax, eax
or eax, 1
test eax, eax
je 0x621d09
mov eax, 0x66c384
lea ecx, [ebp - 0x2ac]
nop
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x621b96
test dx, dx
je 0x621b92
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x621b96
add ecx, 4
add eax, 4
test dx, dx
jne 0x621b70
xor eax, eax
jmp 0x621b9b
sbb eax, eax
or eax, 1
test eax, eax
je 0x621d09
test byte [ebp - 0x2d8], 0x10
je 0x621d16
push 0x6c0d3c
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.00478797
lea ecx, [ebp - 0x2ac]
mov byte [ebp - 4], 7
push ecx
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.0043e430
add esp, 0x18
push eax
lea ecx, [ebp - 0x2ec]
mov byte [ebp - 4], 8
call fcn.006224c0
mov eax, dword [ebp - 0x14]
cmp eax, 8
jb 0x621bff
inc eax
lea ecx, [ebp - 0x28]
push eax
push dword [ebp - 0x28]
call fcn.004361d0
xor eax, eax
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x18], 0
mov byte [ebp - 4], 4
cmp eax, 8
jb 0x621c2c
inc eax
lea ecx, [ebp - 0x70]
push eax
push dword [ebp - 0x70]
call fcn.004361d0
push 0x6c0d3c
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.00478797
lea ecx, [ebp - 0x2ac]
mov byte [ebp - 4], 9
push ecx
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.0043e430
add esp, 0x18
push eax
lea ecx, [ebp - 0x300]
mov byte [ebp - 4], 0xa
call fcn.00622620
mov eax, dword [ebp - 0x14]
cmp eax, 8
jb 0x621c7b
inc eax
lea ecx, [ebp - 0x28]
push eax
push dword [ebp - 0x28]
call fcn.004361d0
xor eax, eax
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x18], 0
mov byte [ebp - 4], 4
cmp eax, 8
jb 0x621ca8
inc eax
lea ecx, [ebp - 0x70]
push eax
push dword [ebp - 0x70]
call fcn.004361d0
push 0x6c0d3c
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.00478797
lea ecx, [ebp - 0x2ac]
mov byte [ebp - 4], 0xb
push ecx
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.0043e430
mov eax, dword [ebp - 0x5c]
add esp, 0x18
mov byte [ebp - 4], 4
cmp eax, 8
jb 0x621cee
inc eax
lea ecx, [ebp - 0x70]
push eax
push dword [ebp - 0x70]
call fcn.004361d0
mov eax, dword [ebp - 0x74]
cmp eax, 8
jb 0x621d09
inc eax
lea ecx, [ebp - 0x88]
push eax
push dword [ebp - 0x88]
call fcn.004361d0
test byte [ebp - 0x2d8], 0x10
jne 0x621dfc
push 0x6c0d3c
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.00478797
lea ecx, [ebp - 0x2ac]
mov byte [ebp - 4], 0xc
push ecx
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.0043e430
add esp, 0x18
push eax
lea ecx, [ebp - 0x310]
mov byte [ebp - 4], 0xd
call fcn.00622620
mov eax, dword [ebp - 0x14]
cmp eax, 8
jb 0x621d68
inc eax
lea ecx, [ebp - 0x28]
push eax
push dword [ebp - 0x28]
call fcn.004361d0
xor eax, eax
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x18], 0
mov byte [ebp - 4], 4
cmp eax, 8
jb 0x621d9b
inc eax
lea ecx, [ebp - 0x88]
push eax
push dword [ebp - 0x88]
call fcn.004361d0
push 0x6c0d3c
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.00478797
lea ecx, [ebp - 0x2ac]
mov byte [ebp - 4], 0xe
push ecx
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.0043e430
mov eax, dword [ebp - 0x74]
add esp, 0x18
mov byte [ebp - 4], 4
cmp eax, 8
jb 0x621de7
inc eax
lea ecx, [ebp - 0x88]
push eax
push dword [ebp - 0x88]
call fcn.004361d0
mov eax, dword [ebp - 0x5c]
cmp eax, 8
jb 0x621dfc
inc eax
lea ecx, [ebp - 0x70]
push eax
push dword [ebp - 0x70]
call fcn.004361d0
lea eax, [ebp - 0x2d8]
push eax
push esi
call edi
test eax, eax
jne 0x621b22
call dword [sym.imp.KERNEL32.dll_GetLastError]
push esi
cmp eax, 0x12
jne 0x621e4a
call ebx
cmp dword [ebp - 0x2dc], 0
jne 0x6218e0
mov edi, dword [ebp - 0x30c]
mov esi, dword [ebp - 0x310]
cmp esi, edi
je 0x621e64
mov ebx, dword [sym.imp.KERNEL32.dll_DeleteFileW]
nop
cmp dword [esi + 0x14], 8
jb 0x621e50
mov eax, dword [esi]
jmp 0x621e52
call ebx
xor bl, bl
jmp 0x621eb1
mov eax, esi
push eax
call ebx
test eax, eax
je 0x621f4b
add esi, 0x18
cmp esi, edi
jne 0x621e40
mov edi, dword [ebp - 0x2fc]
mov esi, dword [ebp - 0x300]
mov byte [ebp - 0x304], 0
push dword [ebp - 0x304]
push edi
push esi
call fcn.00620ef0
add esp, 0xc
cmp esi, edi
je 0x621eaf
mov ebx, dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
cmp dword [esi + 0x14], 8
jb 0x621e9b
mov eax, dword [esi]
jmp 0x621e9d
mov eax, esi
push eax
call ebx
test eax, eax
je 0x621f4b
add esi, 0x18
cmp esi, edi
jne 0x621e91
mov bl, 1
mov eax, dword [ebp - 0x2c]
cmp eax, 8
jb 0x621ec6
inc eax
lea ecx, [ebp - 0x40]
push eax
push dword [ebp - 0x40]
call fcn.004361d0
xor eax, eax
mov dword [ebp - 0x2c], 7
mov dword [ebp - 0x30], 0
mov word [ebp - 0x40], ax
lea ecx, [ebp - 0x300]
call fcn.00455490
lea ecx, [ebp - 0x310]
call fcn.00455490
lea ecx, [ebp - 0x2ec]
call fcn.00621410
push 1
push dword [ebp - 0x2ec]
lea ecx, [ebp - 0x2ed]
call fcn.006216f0
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x2ec], 0
cmp ecx, 8
jb 0x621f2d
inc ecx
push ecx
push dword [ebp - 0x58]
lea ecx, [ebp - 0x58]
call fcn.004361d0
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005b56fe
mov esp, ebp
pop ebp
ret
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x2f4]
xor bl, bl
mov dword [ecx], eax
jmp 0x621eb1