Function at 0x40b1c0
Capabilities:
Delete file
Enumerate files on windows
Enumerate files recursively

Disassembly:
push 0xffffffffffffffff
push 0x4807db
mov eax, dword fs:[0]
push eax
sub esp, 0x56c
mov eax, dword [0x4a2e7c]
xor eax, esp
mov dword [esp + 0x568], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4a2e7c]
xor eax, esp
push eax
lea eax, [esp + 0x580]
mov dword fs:[0], eax
mov eax, dword [esp + 0x594]
mov ebp, dword [esp + 0x590]
xor ebx, ebx
push 0x103
mov dword [esp + 0x20], ecx
lea ecx, [esp + 0x171]
push ebx
push ecx
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], eax
mov byte [esp + 0x178], bl
call fcn.0044c830
push 0x103
lea edx, [esp + 0x281]
push ebx
push edx
mov byte [esp + 0x288], bl
call fcn.0044c830
push 0x103
lea eax, [esp + 0x391]
push ebx
push eax
mov byte [esp + 0x398], bl
call fcn.0044c830
push 0x103
lea ecx, [esp + 0x4a1]
push ebx
push ecx
mov byte [esp + 0x4a8], bl
call fcn.0044c830
mov eax, ebp
add esp, 0x30
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x40b287
sub eax, edx
add eax, 8
push eax
call fcn.0044aa3d
mov esi, eax
add esp, 4
cmp esi, ebx
je 0x40b5b6
mov edx, esi
mov eax, ebp
sub edx, ebp
mov edi, edi
mov cl, byte [eax]
mov byte [edx + eax], cl
add eax, 1
cmp cl, bl
jne 0x40b2b0
mov edi, esi
add edi, 0xffffffff
mov al, byte [edi + 1]
add edi, 1
cmp al, bl
jne 0x40b2c1
mov edx, dword [0x488cb4]
push 0x140
lea eax, [esp + 0x30]
push ebx
push eax
mov dword [edi], edx
call fcn.0044c830
add esp, 0xc
lea ecx, [esp + 0x2c]
push ecx
push esi
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov edi, eax
push esi
mov dword [esp + 0x24], edi
call fcn.0044ca76
xor eax, eax
add esp, 4
cmp edi, 0xffffffff
setne al
cmp eax, ebx
je 0x40b5af
test byte [esp + 0x2c], 0x10
je 0x40b3d8
cmp byte [esp + 0x58], 0x2e
je 0x40b597
mov eax, ebp
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x40b330
sub eax, edx
mov edx, eax
lea eax, [esp + 0x58]
lea esi, [eax + 1]
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x40b344
sub eax, esi
lea edx, [eax + edx + 3]
push edx
call fcn.0044aa3d
mov ebp, eax
add esp, 4
cmp ebp, ebx
je 0x40b593
mov eax, dword [esp + 0x14]
mov edx, ebp
sub edx, eax
mov edi, edi
mov cl, byte [eax]
mov byte [edx + eax], cl
add eax, 1
cmp cl, bl
jne 0x40b370
lea eax, [esp + 0x58]
mov ecx, eax
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x40b382
mov edi, ebp
sub eax, ecx
mov esi, ecx
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
cmp cl, bl
jne 0x40b394
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, ebp
add edi, 0xffffffff
mov al, byte [edi + 1]
add edi, 1
cmp al, bl
jne 0x40b3b1
mov ecx, dword [esp + 0x18]
mov ax, word [0x497748]
push ecx
mov ecx, dword [esp + 0x20]
push ebp
mov word [edi], ax
call fcn.0040b1c0
jmp 0x40b58a
mov eax, ebp
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x40b3e0
sub eax, edx
mov edx, eax
lea eax, [esp + 0x58]
lea esi, [eax + 1]
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x40b3f4
sub eax, esi
lea edx, [eax + edx + 3]
push edx
call fcn.0044aa3d
mov ebp, eax
add esp, 4
cmp ebp, ebx
je 0x40b593
mov eax, dword [esp + 0x14]
mov edx, ebp
sub edx, eax
mov edi, edi
mov cl, byte [eax]
mov byte [edx + eax], cl
add eax, 1
cmp cl, bl
jne 0x40b420
mov edi, ebp
add edi, 0xffffffff
mov al, byte [edi + 1]
add edi, 1
cmp al, bl
jne 0x40b431
mov ax, word [0x497748]
mov word [edi], ax
lea eax, [esp + 0x58]
mov ecx, eax
lea ebx, [ebx]
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x40b450
mov edi, ebp
sub eax, ecx
mov esi, ecx
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
cmp cl, bl
jne 0x40b462
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
push ebp
lea ecx, [esp + 0x170]
push 0x488cb0
push ecx
call esi
lea edx, [esp + 0x380]
push edx
lea eax, [esp + 0x17c]
push eax
call fcn.0040b110
lea ecx, [esp + 0x180]
push str._rc2_
push ecx
call fcn.0044c9f0
add esp, 0x1c
test eax, eax
jne 0x40b4e8
lea edx, [esp + 0x16c]
push str._rc_
push edx
call fcn.0044c9f0
add esp, 8
test eax, eax
jne 0x40b4e8
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x58]
push eax
push ecx
push 0x488c98
jmp 0x40b4f7
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x58]
push eax
push ecx
push str._src_s
lea edx, [esp + 0x27c]
push edx
call esi
add esp, 0x10
lea eax, [esp + 0x478]
push eax
lea ecx, [esp + 0x274]
push ecx
call fcn.0040b110
add esp, 8
lea edx, [esp + 0x478]
push edx
lea eax, [esp + 0x378]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
cmp eax, ebx
jle 0x40b57c
sub esp, 0x18
lea edx, [esp + 0x288]
mov ecx, esp
mov dword [esp + 0x40], esp
push edx
call fcn.00416390
sub esp, 0x18
lea eax, [esp + 0x19c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov dword [esp + 0x5bc], ebx
call fcn.00416390
mov dword [esp + 0x5b8], 0xffffffff
call fcn.0041e480
add esp, 0x30
lea ecx, [esp + 0x16c]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push ebp
call fcn.0044ca76
add esp, 4
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x20]
lea edx, [esp + 0x2c]
push edx
push edi
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x40b311
push edi
call dword [sym.imp.KERNEL32.dll_FindClose]
mov ecx, dword [esp + 0x580]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x568]
xor ecx, esp
call fcn.0044b607
add esp, 0x578
ret 8