Function at 0x4563f4
Capabilities:
Enumerate files on windows

Disassembly:
push edi
push esi
push ebp
push ebx
sub esp, 0x478
mov ebx, edx
mov dword [esp + 0x470], eax
push 0xfa0
call fcn.004032d4
pop ecx
mov dword [esp + 0x468], eax
test eax, eax
je 0x45696a
push 0x3e8
call fcn.004032d4
pop ecx
mov dword [esp + 0x460], eax
test eax, eax
je 0x45694e
push 0x106
call fcn.0045f6ac
pop ecx
mov ecx, dword [esp + 0x468]
mov dword [ecx], eax
test eax, eax
je 0x456932
mov esi, eax
mov edi, ebx
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x45645b
mov eax, dword [esp + 0x460]
mov byte [eax], 1
mov eax, 1
xor ebx, ebx
mov dword [esp + 0x46c], eax
lea ebp, [ebx + 1]
mov eax, dword [esp + 0x46c]
cmp eax, ebp
jl 0x456847
lea esi, [esp + 0x214]
mov eax, dword [esp + 0x468]
mov edi, dword [eax + ebx*4]
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x4564a0
lea edi, [esp + 0x214]
mov edx, 0x7e52bc
mov ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
dec edi
mov al, byte [edx]
inc edx
mov byte [edi], al
inc edi
test al, al
jne 0x4564c0
lea esi, [esp + 4]
lea edi, [esp + 0x214]
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x4564d5
lea edi, [esp + 4]
mov edx, 0x7e5a74
mov ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
dec edi
mov al, byte [edx]
inc edx
mov byte [edi], al
inc edi
test al, al
jne 0x4564f2
mov esi, dword [esp + 0x460]
movzx esi, byte [esi + ebx]
mov ebx, ebp
lea edx, [esp + 4]
lea eax, [esp + 0x31c]
push eax
push edx
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov ebp, eax
cmp ebp, 0xffffffff
je 0x45647d
lea edx, [esi + 1]
mov dword [esp + 0x464], edx
mov dword [esp + 0x474], esi
mov dword [esp + 0x45c], ebx
cmp byte [esp + 0x348], 0x2e
je 0x4568f3
xor edx, edx
test edx, edx
jne 0x45681d
mov edx, dword [esp + 0x31c]
and edx, 0x10
cmp edx, 0x10
jne 0x456645
mov ecx, dword [esp + 0x474]
mov edx, dword [esp + 0x470]
cmp edx, ecx
jl 0x45681d
lea edx, [esp + 0x348]
push dword [0x595734]
push edx
call fcn.0045f7f0
add esp, 8
test eax, eax
jne 0x45681d
mov edx, dword [esp + 0x46c]
cmp edx, 0x3e8
jge 0x4568d7
mov edx, dword [esp + 0x474]
cmp edx, 0x20
jge 0x4568bb
push 0x106
call fcn.0045f6ac
pop ecx
mov ebx, dword [esp + 0x46c]
lea ecx, [ebx + ebx]
mov edx, dword [esp + 0x468]
mov dword [edx + ebx*4], eax
test eax, eax
je 0x45689f
mov esi, eax
lea edi, [esp + 0x214]
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x4565f1
mov ebx, dword [esp + 0x468]
mov edi, dword [ebx + ecx*2]
lea edx, [esp + 0x348]
mov ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
dec edi
mov al, byte [edx]
inc edx
mov byte [edi], al
inc edi
test al, al
jne 0x456616
mov edx, dword [esp + 0x464]
mov ecx, dword [esp + 0x460]
mov ebx, dword [esp + 0x46c]
mov byte [ebx + ecx], dl
inc ebx
mov dword [esp + 0x46c], ebx
jmp 0x45681d
lea edi, [esp + 0x348]
xor eax, eax
mov dh, byte [edi]
mov ecx, edi
test dh, dh
je 0x45665e
inc ecx
inc eax
mov dl, byte [ecx]
test dl, dl
jne 0x456656
cmp eax, 4
jl 0x45681d
lea edx, [esp + eax + 0x344]
push 4
push 0x7e5ae4
push edx
call fcn.00461d70
add esp, 0xc
test eax, eax
jne 0x45681d
lea edx, [esp + 0x348]
push 0x7e5a78
push edx
call fcn.0045f7f0
add esp, 8
test eax, eax
jne 0x4566a6
mov ebx, 1
jmp 0x4566a8
xor ebx, ebx
lea edx, [esp + 0x348]
push 0x7e5a84
push edx
call fcn.0045f7f0
add esp, 8
test eax, eax
jne 0x4566c6
mov ebx, 2
lea edx, [esp + 0x348]
push 0x7e5a90
push edx
call fcn.0045f7f0
add esp, 8
test eax, eax
jne 0x4566e4
mov ebx, 3
lea edx, [esp + 0x348]
push 0x7e5a9c
push edx
call fcn.0045f7f0
add esp, 8
test eax, eax
jne 0x456702
mov ebx, 4
lea edx, [esp + 0x348]
push 0x7e5aa8
push edx
call fcn.0045f7f0
add esp, 8
test eax, eax
jne 0x456720
mov ebx, 5
lea edx, [esp + 0x348]
push 0x7e5ab4
push edx
call fcn.0045f7f0
add esp, 8
test eax, eax
jne 0x45673e
mov ebx, 6
lea edx, [esp + 0x348]
push 0x7e5ac0
push edx
call fcn.0045f7f0
add esp, 8
test eax, eax
jne 0x45675c
mov ebx, 7
lea edx, [esp + 0x348]
push 0x7e5acc
push edx
call fcn.0045f7f0
add esp, 8
test eax, eax
jne 0x45677a
mov ebx, 8
lea edx, [esp + 0x348]
push 0x7e5ad8
push edx
call fcn.0045f7f0
add esp, 8
test eax, eax
jne 0x456798
mov ebx, 9
lea esi, [esp + 0x10c]
lea edi, [esp + 0x214]
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x4567a6
lea edi, [esp + 0x10c]
lea edx, [esp + 0x348]
mov ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
dec edi
mov al, byte [edx]
inc edx
mov byte [edi], al
inc edi
test al, al
jne 0x4567c8
lea eax, [esp + 0x10c]
call fcn.0045699c
test ebx, ebx
jne 0x4567f8
lea eax, [esp + 0x10c]
call fcn.004560e0
test eax, eax
jne 0x456986
jmp 0x45681d
push 0x105
call fcn.0045f6ac
pop ecx
mov dword [ebx*4 + 0x7df748], eax
mov esi, eax
lea edi, [esp + 0x10c]
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x456813
lea edx, [esp + 0x31c]
push edx
push ebp
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x45653f
mov ebx, dword [esp + 0x45c]
push ebp
call dword [sym.imp.KERNEL32.dll_FindClose]
jmp 0x45647d
mov esi, dword [esp + 0x468]
lea ebx, [esi + 0xfa0]
mov eax, dword [esi]
test eax, eax
je 0x456861
push eax
call fcn.0045f90f
pop ecx
mov dword [esi], 0
add esi, 4
cmp ebx, esi
ja 0x456854
mov eax, dword [esp + 0x468]
test eax, eax
je 0x456880
push eax
call fcn.0045f90f
pop ecx
mov eax, dword [esp + 0x460]
test eax, eax
je 0x456892
push eax
call fcn.0045f90f
pop ecx
xor eax, eax
add esp, 0x478
pop ebx
pop ebp
pop esi
pop edi
ret
push 1
push 0x186aa
call fcn.0045d0d4
mov eax, 0xffffffff
add esp, 0x480
pop ebx
pop ebp
pop esi
pop edi
ret
push 1
push 0x196af
call fcn.0045d0d4
mov eax, 0xffffffff
add esp, 0x480
pop ebx
pop ebp
pop esi
pop edi
ret
push 1
push 0x196ae
call fcn.0045d0d4
mov eax, 0xffffffff
add esp, 0x480
pop ebx
pop ebp
pop esi
pop edi
ret
movsx edx, byte [esp + 0x349]
test edx, edx
jne 0x456909
mov edx, 1
jmp 0x45654f
cmp edx, 0x2e
je 0x456915
xor edx, edx
jmp 0x45654f
movsx edx, byte [esp + 0x34a]
test edx, edx
jne 0x45692b
mov edx, 1
jmp 0x45654f
xor edx, edx
jmp 0x45654f
push 1
push 0x186aa
call fcn.0045d0d4
mov eax, 0xffffffff
add esp, 0x480
pop ebx
pop ebp
pop esi
pop edi
ret
push 1
push 0x186aa
call fcn.0045d0a8
mov eax, 0xffffffff
add esp, 0x480
pop ebx
pop ebp
pop esi
pop edi
ret
push 1
push 0x186aa
call fcn.0045d0a8
mov eax, 0xffffffff
add esp, 0x480
pop ebx
pop ebp
pop esi
pop edi
ret
mov eax, 0xffffffff
add esp, 0x478
pop ebx
pop ebp
pop esi
pop edi
ret