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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x586298
mov eax, dword fs:[0]
push eax
sub esp, 0x31c
mov eax, dword [0x5df3f4]
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.0050ada4
add esp, 4
test eax, eax
jne 0x5664b2
call fcn.0052366b
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.005670a0
add esp, 4
test al, al
jne 0x566511
xor bl, bl
jmp 0x566bba
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 0x566532
xor ecx, ecx
jmp 0x566546
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x566537
sub ecx, edx
sar ecx, 1
push ecx
push edi
lea ecx, [ebp - 0x40]
call fcn.0044d430
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x2ec]
call fcn.0047f2e0
lea eax, [ebp - 0x310]
push eax
push 0
push 0
call fcn.004be3ae
lea eax, [ebp - 0x300]
xor edi, edi
push eax
push edi
push edi
mov dword [ebp - 0x30c], edi
call fcn.004be3ae
add esp, 0x18
mov dword [ebp - 0x2fc], edi
lea eax, [ebp - 0x40]
lea ecx, [ebp - 0x300]
push eax
call fcn.00489550
cmp dword [ebp - 0x2dc], edi
sete al
test al, al
jne 0x566b15
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.00472a90
mov ecx, eax
call fcn.00472910
mov edx, eax
mov eax, dword [edx]
test eax, eax
je 0x5665ec
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 0x56660a
push 0xffffffffffffffff
push 0
push eax
call fcn.0044d8f0
push 0x5b5b4c
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.00472b50
push 0x5b73ec
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 5
push eax
call fcn.0045a630
add esp, 0x18
mov esi, eax
lea eax, [ebp - 0x58]
cmp eax, esi
je 0x566670
mov eax, dword [ebp - 0x44]
cmp eax, 8
jb 0x566653
inc eax
lea ecx, [ebp - 0x58]
push eax
push dword [ebp - 0x58]
call fcn.0044d810
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.00459050
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 5
cmp eax, 8
jb 0x5666c7
mov ecx, dword [ebp - 0x28]
inc eax
cmp eax, 0x7fffffff
ja 0x5664ad
add eax, eax
cmp eax, 0x1000
jb 0x5666be
test cl, 0x1f
jne 0x5664ad
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x5664ad
sub ecx, eax
cmp ecx, 4
jb 0x5664ad
cmp ecx, 0x23
ja 0x5664ad
mov ecx, eax
push ecx
call fcn.0054145a
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 0x566735
mov ecx, dword [ebp - 0x88]
inc eax
cmp eax, 0x7fffffff
ja 0x5664ad
add eax, eax
cmp eax, 0x1000
jb 0x56672c
test cl, 0x1f
jne 0x5664ad
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x5664ad
sub ecx, eax
cmp ecx, 4
jb 0x5664ad
cmp ecx, 0x23
ja 0x5664ad
mov ecx, eax
push ecx
call fcn.0054145a
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 0x5667a8
mov ecx, dword [esi]
inc eax
cmp eax, 0x7fffffff
ja 0x5664ad
add eax, eax
cmp eax, 0x1000
jb 0x56679f
test cl, 0x1f
jne 0x5664ad
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x5664ad
sub ecx, eax
cmp ecx, 4
jb 0x5664ad
cmp ecx, 0x23
ja 0x5664ad
mov ecx, eax
push ecx
call fcn.0054145a
add esp, 4
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], 0
cmp dword [esi + 0x14], 8
jb 0x5667be
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 0x566c2b
mov edx, 0x5b5680
lea ecx, [ebp - 0x2ac]
nop dword [eax]
mov ax, word [ecx]
cmp ax, word [edx]
jne 0x566836
test ax, ax
je 0x566832
mov ax, word [ecx + 2]
cmp ax, word [edx + 2]
jne 0x566836
add ecx, 4
add edx, 4
test ax, ax
jne 0x566810
xor eax, eax
jmp 0x56683b
sbb eax, eax
or eax, 1
test eax, eax
je 0x5669e9
mov eax, 0x5b5c80
lea ecx, [ebp - 0x2ac]
nop
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x566876
test dx, dx
je 0x566872
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x566876
add ecx, 4
add eax, 4
test dx, dx
jne 0x566850
xor eax, eax
jmp 0x56687b
sbb eax, eax
or eax, 1
test eax, eax
je 0x5669e9
test byte [ebp - 0x2d8], 0x10
je 0x5669f6
push 0x5b5b4c
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.00472b50
lea ecx, [ebp - 0x2ac]
mov byte [ebp - 4], 7
push ecx
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.0045a630
add esp, 0x18
push eax
lea ecx, [ebp - 0x2ec]
mov byte [ebp - 4], 8
call fcn.004727f0
mov eax, dword [ebp - 0x14]
cmp eax, 8
jb 0x5668df
inc eax
lea ecx, [ebp - 0x28]
push eax
push dword [ebp - 0x28]
call fcn.0044d810
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 0x56690c
inc eax
lea ecx, [ebp - 0x70]
push eax
push dword [ebp - 0x70]
call fcn.0044d810
push 0x5b5b4c
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.00472b50
lea ecx, [ebp - 0x2ac]
mov byte [ebp - 4], 9
push ecx
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.0045a630
add esp, 0x18
push eax
lea ecx, [ebp - 0x300]
mov byte [ebp - 4], 0xa
call fcn.00472650
mov eax, dword [ebp - 0x14]
cmp eax, 8
jb 0x56695b
inc eax
lea ecx, [ebp - 0x28]
push eax
push dword [ebp - 0x28]
call fcn.0044d810
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 0x566988
inc eax
lea ecx, [ebp - 0x70]
push eax
push dword [ebp - 0x70]
call fcn.0044d810
push 0x5b5b4c
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.00472b50
lea ecx, [ebp - 0x2ac]
mov byte [ebp - 4], 0xb
push ecx
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.0045a630
mov eax, dword [ebp - 0x5c]
add esp, 0x18
mov byte [ebp - 4], 4
cmp eax, 8
jb 0x5669ce
inc eax
lea ecx, [ebp - 0x70]
push eax
push dword [ebp - 0x70]
call fcn.0044d810
mov eax, dword [ebp - 0x74]
cmp eax, 8
jb 0x5669e9
inc eax
lea ecx, [ebp - 0x88]
push eax
push dword [ebp - 0x88]
call fcn.0044d810
test byte [ebp - 0x2d8], 0x10
jne 0x566adc
push 0x5b5b4c
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.00472b50
lea ecx, [ebp - 0x2ac]
mov byte [ebp - 4], 0xc
push ecx
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.0045a630
add esp, 0x18
push eax
lea ecx, [ebp - 0x310]
mov byte [ebp - 4], 0xd
call fcn.00472650
mov eax, dword [ebp - 0x14]
cmp eax, 8
jb 0x566a48
inc eax
lea ecx, [ebp - 0x28]
push eax
push dword [ebp - 0x28]
call fcn.0044d810
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 0x566a7b
inc eax
lea ecx, [ebp - 0x88]
push eax
push dword [ebp - 0x88]
call fcn.0044d810
push 0x5b5b4c
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.00472b50
lea ecx, [ebp - 0x2ac]
mov byte [ebp - 4], 0xe
push ecx
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.0045a630
mov eax, dword [ebp - 0x74]
add esp, 0x18
mov byte [ebp - 4], 4
cmp eax, 8
jb 0x566ac7
inc eax
lea ecx, [ebp - 0x88]
push eax
push dword [ebp - 0x88]
call fcn.0044d810
mov eax, dword [ebp - 0x5c]
cmp eax, 8
jb 0x566adc
inc eax
lea ecx, [ebp - 0x70]
push eax
push dword [ebp - 0x70]
call fcn.0044d810
lea eax, [ebp - 0x2d8]
push eax
push esi
call edi
test eax, eax
jne 0x566802
call dword [sym.imp.KERNEL32.dll_GetLastError]
push esi
cmp eax, 0x12
jne 0x566b2a
call ebx
cmp dword [ebp - 0x2dc], 0
jne 0x5665c0
mov edi, dword [ebp - 0x30c]
mov esi, dword [ebp - 0x310]
cmp esi, edi
je 0x566b44
mov ebx, dword [sym.imp.KERNEL32.dll_DeleteFileW]
nop
cmp dword [esi + 0x14], 8
jb 0x566b30
mov eax, dword [esi]
jmp 0x566b32
call ebx
xor bl, bl
jmp 0x566b91
mov eax, esi
push eax
call ebx
test eax, eax
je 0x566c2b
add esi, 0x18
cmp esi, edi
jne 0x566b20
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.00565fd0
add esp, 0xc
cmp esi, edi
je 0x566b8f
mov ebx, dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
cmp dword [esi + 0x14], 8
jb 0x566b7b
mov eax, dword [esi]
jmp 0x566b7d
mov eax, esi
push eax
call ebx
test eax, eax
je 0x566c2b
add esi, 0x18
cmp esi, edi
jne 0x566b71
mov bl, 1
mov eax, dword [ebp - 0x2c]
cmp eax, 8
jb 0x566ba6
inc eax
lea ecx, [ebp - 0x40]
push eax
push dword [ebp - 0x40]
call fcn.0044d810
xor eax, eax
mov dword [ebp - 0x2c], 7
mov dword [ebp - 0x30], 0
mov word [ebp - 0x40], ax
lea ecx, [ebp - 0x300]
call fcn.00457250
lea ecx, [ebp - 0x310]
call fcn.00457250
lea ecx, [ebp - 0x2ec]
call fcn.00472700
push 1
push dword [ebp - 0x2ec]
lea ecx, [ebp - 0x2ed]
call fcn.0046a070
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x2ec], 0
cmp ecx, 8
jb 0x566c0d
inc ecx
push ecx
push dword [ebp - 0x58]
lea ecx, [ebp - 0x58]
call fcn.0044d810
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.0050ad85
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 0x566b91