Function at 0x480ba0
Capabilities:
Enumerate files on windows
Enumerate files recursively

Disassembly:
sub esp, 0x254
mov eax, dword [esp + 0x258]
push ebx
push ebp
mov ebx, edx
mov byte [eax], 0
push esi
mov eax, ebx
mov ebp, ecx
push edi
mov dword [esp + 0x18], ebx
mov dword [esp + 0x14], 0
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x480bc8
mov edi, ebp
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x480bd6
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]
lea ecx, [esp + 0x20]
push ecx
push ebp
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
xor edx, edx
cmp eax, 0xffffffff
sete dl
mov ecx, ebp
mov dword [esp + 0x10], eax
lea eax, [ecx + 1]
mov edi, edx
jmp 0x480c10
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x480c10
sub ecx, eax
mov eax, ebx
lea esi, [eax + 1]
mov edi, edi
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x480c20
mov ebx, dword [esp + 0x2b4]
sub eax, esi
sub ecx, eax
test edi, edi
mov byte [ecx + ebp], dl
jne 0x480c9a
lea esp, [esp]
test byte [esp + 0x20], 0x10
mov eax, dword [esp + 0x274]
je 0x480e8a
test eax, eax
je 0x480c86
lea eax, [esp + 0x4c]
push 0x5754a0
push eax
call fcn.00572b46
add esp, 8
test eax, eax
je 0x480c86
lea ecx, [esp + 0x4c]
push 0x5786a8
push ecx
call fcn.00572b46
add esp, 8
test eax, eax
jne 0x480e9e
mov eax, dword [esp + 0x10]
lea edx, [esp + 0x20]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x480c40
mov eax, dword [esp + 0x10]
cmp eax, 0xffffffff
je 0x480caa
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
mov ebx, dword [esp + 0x27c]
dec ebx
test ebx, ebx
jle 0x48118e
mov edi, ebp
dec edi
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x480cc0
mov ecx, dword [0x577a10]
lea edx, [esp + 0x20]
push edx
push ebp
mov dword [edi], ecx
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
xor edx, edx
cmp eax, 0xffffffff
mov dword [esp + 0x10], eax
mov eax, ebp
sete dl
lea esi, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x480cf0
sub eax, esi
test edx, edx
mov byte [eax + ebp - 3], cl
jne 0x48117e
test byte [esp + 0x20], 0x10
je 0x481166
lea eax, [esp + 0x4c]
push 0x5754a0
push eax
call fcn.00572b46
add esp, 8
test eax, eax
je 0x481166
lea ecx, [esp + 0x4c]
push 0x5786a8
push ecx
call fcn.00572b46
add esp, 8
test eax, eax
je 0x481166
lea eax, [esp + 0x4c]
mov edx, eax
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x480d50
mov edi, ebp
sub eax, edx
dec edi
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x480d60
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, ebp
dec edi
jmp 0x480d80
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x480d80
mov dx, word [0x576d8c]
mov eax, dword [esp + 0x2b4]
mov ecx, dword [esp + 0x2b0]
push eax
mov eax, dword [esp + 0x2ac]
push ecx
mov ecx, dword [esp + 0x2ac]
mov word [edi], dx
mov edx, dword [esp + 0x2b4]
push edx
mov edx, dword [esp + 0x2ac]
push eax
mov eax, dword [esp + 0x2ac]
push ecx
mov ecx, dword [esp + 0x2ac]
push edx
mov edx, dword [esp + 0x2ac]
push eax
mov eax, dword [esp + 0x2ac]
push ecx
mov ecx, dword [esp + 0x2ac]
push edx
mov edx, dword [esp + 0x2ac]
mov edi, dword [esp + 0x38]
mov esi, dword [esp + 0x28c]
push eax
mov eax, dword [esp + 0x2ac]
push ecx
mov ecx, dword [esp + 0x2ac]
push edx
mov edx, dword [esp + 0x2a8]
push eax
mov eax, dword [esp + 0x2a8]
push ecx
mov ecx, dword [esp + 0x2a8]
push ebx
push edx
mov edx, dword [esp + 0x2ac]
push eax
push ecx
sub edx, edi
push edx
mov edx, dword [esp + 0x64]
push esi
mov ecx, ebp
call fcn.00480ba0
cmp eax, 0xffffffff
je 0x48117e
mov ecx, edi
add ecx, eax
cmp byte [esi], 0
mov dword [esp + 0x14], ecx
jne 0x48117e
push 0x5c
push ebp
call fcn.00563c90
add esp, 8
test eax, eax
je 0x480e7b
push 0x5c
push ebp
mov byte [eax], 0
call fcn.00563c90
add esp, 8
test eax, eax
je 0x480e7b
mov byte [eax + 1], 0
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x20]
push eax
push ecx
jmp 0x481170
cmp eax, 1
jne 0x480e9e
mov edx, dword [esp + 0x10]
lea ecx, [esp + 0x20]
push ecx
push edx
jmp 0x480c90
lea eax, [esp + 0x4c]
push 0x2e
push eax
call fcn.00563730
mov esi, dword [esp + 0x20]
add esp, 8
test eax, eax
jne 0x480f04
push 0x2e
push esi
call fcn.00563730
add esp, 8
test eax, eax
je 0x480f04
lea ecx, [esp + 0x4c]
push ecx
lea edx, [esp + 0x164]
push 0x578714
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
push 1
push 0
lea edx, [esp + 0x168]
mov ecx, esi
call fcn.00535d60
test eax, eax
jne 0x480f1b
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x20]
push eax
push ecx
jmp 0x480c90
push 1
push 0
lea edx, [esp + 0x54]
mov ecx, esi
call fcn.00535d60
test eax, eax
je 0x480c86
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x26c]
inc edx
test eax, eax
mov dword [esp + 0x14], edx
jle 0x480f39
mov ecx, edx
cmp ecx, eax
jl 0x4810b9
mov eax, dword [esp + 0x270]
test eax, eax
jne 0x480f53
mov eax, dword [esp + 0x278]
test eax, eax
je 0x4810b9
mov edi, dword [esp + 0x268]
mov edx, edi
mov eax, ebp
sub edx, ebp
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x480f60
lea eax, [esp + 0x4c]
mov edx, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x480f70
sub eax, edx
dec edi
lea ebx, [ebx]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x480f80
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [esp + 0x2a0]
and ecx, 3
test eax, eax
rep movsb byte es:[edi], byte [esi]
je 0x480faf
mov ecx, dword [esp + 0x268]
call fcn.0050b560
mov esi, dword [esp + 0x270]
test esi, esi
je 0x480fec
mov ecx, dword [esp + 0x268]
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
push ecx
push 0
push 0x180
push esi
call edi
cmp eax, 0xffffffff
je 0x480fec
cmp eax, 0xfffffffe
je 0x480fec
mov edx, dword [0x5940b4]
push edx
push eax
push 0x19a
push esi
call edi
mov edx, dword [esp + 0x278]
test edx, edx
je 0x4810a6
push 0
xor ecx, ecx
call fcn.004c2560
xor ecx, ecx
test eax, eax
mov dword [esp + 0x1c], eax
je 0x4810d9
mov edx, dword [esp + 0x2b0]
push ebx
push edx
mov edx, dword [esp + 0x2b4]
push edx
mov edx, dword [esp + 0x2b4]
push edx
mov edx, dword [esp + 0x2b4]
push edx
mov edx, dword [esp + 0x2b0]
push edx
mov edx, dword [esp + 0x2b0]
mov esi, dword [esp + 0x298]
push 0
push edx
mov edx, dword [esp + 0x2b4]
push 0
push 0
push edx
mov edx, dword [esp + 0x2bc]
push edx
mov edx, dword [esp + 0x2b4]
push 0
push edx
mov edx, dword [esp + 0x2c0]
push 0
test esi, esi
setne cl
push 0
push 0
push 0
push edx
mov edx, eax
mov dword [esp + 0x2d8], 0
inc ecx
push ecx
mov ecx, dword [esp + 0x2b8]
push ecx
mov ecx, dword [ebx]
call fcn.00435db0
lea ecx, [esp + 0x1c]
call fcn.004c29d0
mov edx, dword [esp + 0x268]
mov byte [edx], 0
call fcn.0041e500
test eax, eax
jne 0x4810f1
mov eax, dword [esp + 0x26c]
test eax, eax
jle 0x4810ca
cmp dword [esp + 0x14], eax
jge 0x481101
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x20]
push eax
push ecx
jmp 0x480c90
push 2
push 0
xor edx, edx
call fcn.00475f10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x254
ret 0x50
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
add esp, 0x254
ret 0x50
mov edi, dword [esp + 0x268]
mov edx, edi
mov eax, ebp
sub edx, ebp
mov edi, edi
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x481110
lea eax, [esp + 0x4c]
mov edx, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x481120
sub eax, edx
dec edi
lea ebx, [ebx]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x481130
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [esp + 0x2a0]
and ecx, 3
test eax, eax
rep movsb byte es:[edi], byte [esi]
je 0x48115f
mov ecx, dword [esp + 0x268]
call fcn.0050b560
mov edx, dword [esp + 0x10]
push edx
jmp 0x481188
mov eax, dword [esp + 0x10]
lea edx, [esp + 0x20]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x480d05
mov eax, dword [esp + 0x10]
cmp eax, 0xffffffff
je 0x48118e
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x254
ret 0x50