Function at 0x506b20
Capabilities:
Enumerate files on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6a45c8
mov eax, dword fs:[0]
push eax
sub esp, 0xac
mov eax, dword [0x73a280]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0xb4], ecx
mov eax, dword [ebp + 8]
mov esi, dword [ebp + 0xc]
mov dword [ebp - 0xac], eax
call fcn.005072c0
mov ecx, esi
mov dword [ebp - 0x18], 0
xorps xmm0, xmm0
mov dword [ebp - 0x14], 0
movups xmmword [ebp - 0x28], xmm0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x506b80
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0x28]
call fcn.00462990
mov esi, dword [ebp - 0x18]
mov edi, dword [ebp - 0x14]
mov dword [ebp - 4], 0
test esi, esi
je 0x506cf2
mov ecx, dword [ebp - 0x28]
lea eax, [ebp - 0x28]
cmp edi, 0xf
cmova eax, ecx
cmp byte [esi + eax - 1], 0x5c
je 0x506cf2
cmp esi, edi
jae 0x506bdd
lea eax, [esi + 1]
cmp edi, 0xf
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x28]
cmova eax, ecx
mov word [eax + esi], 0x5c
jmp 0x506cec
mov edx, bind
mov eax, edx
sub eax, esi
cmp eax, 1
jb 0x5072ab
lea ecx, [esi + 1]
or ecx, 0xf
cmp ecx, edx
jbe 0x506c0e
mov eax, edx
mov dword [ebp - 0xa8], eax
mov eax, bind
push eax
call fcn.0043e900
jmp 0x506c5d
mov eax, edi
shr eax, 1
sub edx, eax
cmp edi, edx
jbe 0x506c30
mov eax, bind
mov dword [ebp - 0xa8], eax
mov eax, bind
push eax
call fcn.0043e900
jmp 0x506c5d
add eax, edi
cmp ecx, eax
cmovb ecx, eax
mov dword [ebp - 0xa8], ecx
lea eax, [ecx + 1]
test eax, eax
jne 0x506c48
xor edx, edx
jmp 0x506c68
cmp eax, 0x1000
jb 0x506c57
push eax
call fcn.0043e900
jmp 0x506c5d
push eax
call fcn.005c8dfe
mov ecx, dword [ebp - 0xa8]
mov edx, eax
add esp, 4
mov dword [ebp - 0xb0], edx
lea eax, [esi + 1]
mov dword [ebp - 0x18], eax
lea eax, [esi + edx]
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0xa8], eax
push esi
cmp edi, 0xf
jbe 0x506ccb
mov eax, dword [ebp - 0x28]
mov esi, eax
push esi
push edx
call fcn.00643a30
mov eax, dword [ebp - 0xa8]
inc edi
add esp, 0xc
mov word [eax], 0x5c
cmp edi, 0x1000
jb 0x506cbf
mov ecx, dword [esi - 4]
add edi, 0x23
sub esi, ecx
lea eax, [esi - 4]
cmp eax, 0x1f
ja 0x5072b0
mov esi, ecx
push edi
push esi
call fcn.005c8a85
add esp, 8
jmp 0x506ce3
lea eax, [ebp - 0x28]
push eax
push edx
call fcn.00643a30
mov eax, dword [ebp - 0xa8]
add esp, 0xc
mov word [eax], 0x5c
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0x28], eax
mov edi, dword [ebp - 0x14]
mov esi, dword [ebp - 0x18]
xorps xmm0, xmm0
mov dword [ebp - 0x60], 0
movups xmmword [ebp - 0x70], xmm0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edi, 0xf
mov byte [ebp - 4], 1
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x70]
push esi
push eax
call fcn.00444fb0
push 3
push 0x6b1e70
lea ecx, [ebp - 0x70]
call fcn.00444fb0
mov esi, dword [ebp - 0xb4]
lea eax, [ebp - 0x70]
or dword [esi + 4], 0x10
lea ecx, [esi + 4]
cmp dword [ebp - 0x5c], 0xf
push ecx
cmova eax, dword [ebp - 0x70]
push eax
mov dword [ebp - 0xb8], ecx
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [esi + 0x144], eax
cmp eax, 0xffffffff
je 0x5070c2
lea edi, [esi + 0x30]
mov esi, dword [ebp - 0xac]
mov dword [ebp - 0xa8], edi
cmp byte [edi], 0x2e
je 0x5070a2
mov ecx, dword [ebp - 0xb4]
call fcn.00507310
test al, al
je 0x506dbd
mov ecx, dword [ebp - 0xb4]
cmp dword [ebp - 0x14], 0xf
push edi
mov eax, dword [ecx]
mov edx, dword [eax + 4]
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
push esi
call edx
test al, al
jne 0x5070a2
mov byte [ebp - 0xa1], 0
jmp 0x5070c9
push 0x2e
push edi
call fcn.006443c0
add esp, 8
mov dword [ebp - 0xb0], eax
test eax, eax
je 0x5070a2
cmp dword [ebp + 0x10], 0
je 0x5071ff
mov esi, dword [ebp - 0xac]
xorps xmm0, xmm0
mov ecx, esi
mov dword [ebp - 0x48], 0
movups xmmword [ebp - 0x58], xmm0
mov dword [ebp - 0x44], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x506e00
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0x58]
call fcn.00462990
cmp dword [ebp - 0x44], 0xf
lea edi, [ebp - 0x58]
mov eax, dword [ebp - 0x48]
cmova edi, dword [ebp - 0x58]
mov byte [ebp - 4], 2
test eax, eax
je 0x506e3f
push eax
push 0x3b
push edi
call fcn.00643980
mov esi, eax
add esp, 0xc
test esi, esi
je 0x506e3f
sub esi, edi
jmp 0x506e42
or esi, 0xffffffff
test esi, esi
jle 0x507226
mov edi, dword [ebp - 0xac]
xorps xmm0, xmm0
mov ecx, edi
mov dword [ebp - 0x30], 0
movups xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x2c], 0
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x506e70
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x40]
call fcn.00462990
cmp dword [ebp - 0x30], esi
lea eax, [ebp - 0x40]
mov ecx, esi
mov byte [ebp - 4], 3
cmovb ecx, dword [ebp - 0x30]
xorps xmm0, xmm0
cmp dword [ebp - 0x2c], 0xf
push ecx
cmova eax, dword [ebp - 0x40]
lea ecx, [ebp - 0xa0]
push eax
movups xmmword [ebp - 0xa0], xmm0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0
call fcn.00462990
mov ecx, dword [ebp - 0x2c]
mov byte [ebp - 4], 5
cmp ecx, 0xf
jbe 0x506efe
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x506ef4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5072b0
push ecx
push edx
call fcn.005c8a85
add esp, 8
mov ecx, edi
mov dword [ebp - 0x30], 0
xorps xmm0, xmm0
mov dword [ebp - 0x2c], 0
movups xmmword [ebp - 0x40], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x506f18
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x40]
call fcn.00462990
mov ecx, edi
mov byte [ebp - 4], 6
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x506f34
mov eax, dword [ebp - 0x30]
inc esi
sub ecx, edx
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x88], xmm0
cmp eax, esi
jb 0x5072b5
sub eax, esi
cmp eax, ecx
cmovb ecx, eax
cmp dword [ebp - 0x2c], 0xf
lea eax, [ebp - 0x40]
cmova eax, dword [ebp - 0x40]
push ecx
add eax, esi
lea ecx, [ebp - 0x88]
push eax
call fcn.00462990
mov ecx, dword [ebp - 0x2c]
mov byte [ebp - 4], 5
cmp ecx, 0xf
jbe 0x506fba
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x506fb0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5072b0
push ecx
push edx
call fcn.005c8a85
add esp, 8
mov esi, dword [ebp - 0xb0]
lea ecx, [ebp - 0xa0]
inc esi
push esi
call fcn.0044a6f0
test eax, eax
je 0x507146
push esi
lea ecx, [ebp - 0x88]
call fcn.0044a6f0
test eax, eax
je 0x507146
mov ecx, dword [ebp - 0x74]
cmp ecx, 0xf
jbe 0x507020
mov edx, dword [ebp - 0x88]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x507016
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5072b0
push ecx
push edx
call fcn.005c8a85
add esp, 8
mov ecx, dword [ebp - 0x8c]
mov byte [ebp - 4], 2
cmp ecx, 0xf
jbe 0x50705e
mov edx, dword [ebp - 0xa0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x507054
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5072b0
push ecx
push edx
call fcn.005c8a85
add esp, 8
mov ecx, dword [ebp - 0x44]
mov byte [ebp - 4], 1
cmp ecx, 0xf
jbe 0x507096
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x50708c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5072b0
push ecx
push edx
call fcn.005c8a85
add esp, 8
mov esi, dword [ebp - 0xac]
mov edi, dword [ebp - 0xa8]
mov eax, dword [ebp - 0xb4]
push dword [ebp - 0xb8]
push dword [eax + 0x144]
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x506d76
mov byte [ebp - 0xa1], 1
mov ecx, dword [ebp - 0x5c]
cmp ecx, 0xf
jbe 0x5070fd
mov edx, dword [ebp - 0x70]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x5070f3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5072b0
push ecx
push edx
call fcn.005c8a85
add esp, 8
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp ecx, 0xf
jbe 0x507288
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x50727e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5072b0
jmp 0x50727e
mov ecx, dword [ebp - 0x74]
cmp ecx, 0xf
jbe 0x50717d
mov edx, dword [ebp - 0x88]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x507173
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5072b0
push ecx
push edx
call fcn.005c8a85
add esp, 8
mov ecx, dword [ebp - 0x8c]
mov byte [ebp - 4], 2
cmp ecx, 0xf
jbe 0x5071bb
mov edx, dword [ebp - 0xa0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x5071b1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5072b0
push ecx
push edx
call fcn.005c8a85
add esp, 8
mov esi, dword [ebp - 0xac]
mov ecx, dword [ebp - 0x44]
mov byte [ebp - 4], 1
cmp ecx, 0xf
jbe 0x5071f9
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x5071ef
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5072b0
push ecx
push edx
call fcn.005c8a85
add esp, 8
mov edi, dword [ebp - 0xa8]
mov ecx, dword [ebp - 0xb4]
cmp dword [ebp - 0x14], 0xf
push edi
mov eax, dword [ecx]
mov edx, dword [eax + 8]
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
call edx
test al, al
je 0x506db1
jmp 0x5070a2
mov eax, dword [ebp - 0xb0]
mov esi, dword [ebp - 0xac]
inc eax
push esi
push eax
call fcn.00658a8d
add esp, 8
test eax, eax
je 0x5071c1
mov ecx, dword [ebp - 0x44]
mov byte [ebp - 4], 1
cmp ecx, 0xf
jbe 0x50709c
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x50726f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5072b0
push ecx
push edx
call fcn.005c8a85
add esp, 8
jmp 0x50709c
push ecx
push edx
call fcn.005c8a85
add esp, 8
mov al, byte [ebp - 0xa1]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005c8a4d
mov esp, ebp
pop ebp
ret 0xc
call fcn.00444010
call fcn.0064e36a
call fcn.0046c110
int3