Function at 0x464804
Capabilities:
Enumerate files on windows

Disassembly:
push edi
push esi
push ebp
push ebx
sub esp, 0x784
mov ebx, edx
mov dword [esp + 0x77c], eax
push 0xfa0
call fcn.00403564
pop ecx
mov dword [esp + 0x774], eax
test eax, eax
je 0x464d7a
push 0x3e8
call fcn.00403564
pop ecx
mov dword [esp + 0x76c], eax
test eax, eax
je 0x464d5e
push 0x209
call fcn.0046ed7c
pop ecx
mov ecx, dword [esp + 0x774]
mov dword [ecx], eax
test eax, eax
je 0x464d42
mov esi, eax
mov edi, ebx
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x46486b
mov eax, dword [esp + 0x76c]
mov byte [eax], 1
mov eax, 1
xor ebx, ebx
mov dword [esp + 0x778], eax
lea ebp, [ebx + 1]
mov eax, dword [esp + 0x778]
cmp eax, ebp
jl 0x464c57
lea esi, [esp + 0x41c]
mov eax, dword [esp + 0x774]
mov edi, dword [eax + ebx*4]
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x4648b0
lea edi, [esp + 0x41c]
mov edx, 0x878338
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 0x4648d0
lea esi, [esp + 4]
lea edi, [esp + 0x41c]
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x4648e5
lea edi, [esp + 4]
mov edx, 0x878c80
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 0x464902
mov esi, dword [esp + 0x76c]
movzx esi, byte [esi + ebx]
mov ebx, ebp
lea edx, [esp + 4]
lea eax, [esp + 0x628]
push eax
push edx
call dword [sym.imp.kernel32.dll_FindFirstFileA]
mov ebp, eax
cmp ebp, 0xffffffff
je 0x46488d
lea edx, [esi + 1]
mov dword [esp + 0x770], edx
mov dword [esp + 0x780], esi
mov dword [esp + 0x768], ebx
cmp byte [esp + 0x654], 0x2e
je 0x464d03
xor edx, edx
test edx, edx
jne 0x464c2d
mov edx, dword [esp + 0x628]
and edx, 0x10
cmp edx, 0x10
jne 0x464a55
mov ecx, dword [esp + 0x780]
mov edx, dword [esp + 0x77c]
cmp edx, ecx
jl 0x464c2d
lea edx, [esp + 0x654]
push dword [0x59b76c]
push edx
call fcn.0046eec0
add esp, 8
test eax, eax
jne 0x464c2d
mov edx, dword [esp + 0x778]
cmp edx, 0x3e8
jge 0x464ce7
mov edx, dword [esp + 0x780]
cmp edx, 0x20
jge 0x464ccb
push 0x106
call fcn.0046ed7c
pop ecx
mov ebx, dword [esp + 0x778]
lea ecx, [ebx + ebx]
mov edx, dword [esp + 0x774]
mov dword [edx + ebx*4], eax
test eax, eax
je 0x464caf
mov esi, eax
lea edi, [esp + 0x41c]
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x464a01
mov ebx, dword [esp + 0x774]
mov edi, dword [ebx + ecx*2]
lea edx, [esp + 0x654]
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 0x464a26
mov edx, dword [esp + 0x770]
mov ecx, dword [esp + 0x76c]
mov ebx, dword [esp + 0x778]
mov byte [ebx + ecx], dl
inc ebx
mov dword [esp + 0x778], ebx
jmp 0x464c2d
lea edi, [esp + 0x654]
xor eax, eax
mov dh, byte [edi]
mov ecx, edi
test dh, dh
je 0x464a6e
inc ecx
inc eax
mov dl, byte [ecx]
test dl, dl
jne 0x464a66
cmp eax, 4
jl 0x464c2d
lea edx, [esp + eax + 0x650]
push 4
push 0x878cf0
push edx
call fcn.004715d0
add esp, 0xc
test eax, eax
jne 0x464c2d
lea edx, [esp + 0x654]
push 0x878c84
push edx
call fcn.0046eec0
add esp, 8
test eax, eax
jne 0x464ab6
mov ebx, 1
jmp 0x464ab8
xor ebx, ebx
lea edx, [esp + 0x654]
push 0x878c90
push edx
call fcn.0046eec0
add esp, 8
test eax, eax
jne 0x464ad6
mov ebx, 2
lea edx, [esp + 0x654]
push 0x878c9c
push edx
call fcn.0046eec0
add esp, 8
test eax, eax
jne 0x464af4
mov ebx, 3
lea edx, [esp + 0x654]
push 0x878ca8
push edx
call fcn.0046eec0
add esp, 8
test eax, eax
jne 0x464b12
mov ebx, 4
lea edx, [esp + 0x654]
push 0x878cb4
push edx
call fcn.0046eec0
add esp, 8
test eax, eax
jne 0x464b30
mov ebx, 5
lea edx, [esp + 0x654]
push 0x878cc0
push edx
call fcn.0046eec0
add esp, 8
test eax, eax
jne 0x464b4e
mov ebx, 6
lea edx, [esp + 0x654]
push 0x878ccc
push edx
call fcn.0046eec0
add esp, 8
test eax, eax
jne 0x464b6c
mov ebx, 7
lea edx, [esp + 0x654]
push 0x878cd8
push edx
call fcn.0046eec0
add esp, 8
test eax, eax
jne 0x464b8a
mov ebx, 8
lea edx, [esp + 0x654]
push 0x878ce4
push edx
call fcn.0046eec0
add esp, 8
test eax, eax
jne 0x464ba8
mov ebx, 9
lea esi, [esp + 0x210]
lea edi, [esp + 0x41c]
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x464bb6
lea edi, [esp + 0x210]
lea edx, [esp + 0x654]
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 0x464bd8
lea eax, [esp + 0x210]
call fcn.00464dac
test ebx, ebx
jne 0x464c08
lea eax, [esp + 0x210]
call fcn.004644f0
test eax, eax
jne 0x464d96
jmp 0x464c2d
push 0x105
call fcn.0046ed7c
pop ecx
mov dword [ebx*4 + 0x872554], eax
mov esi, eax
lea edi, [esp + 0x210]
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x464c23
lea edx, [esp + 0x628]
push edx
push ebp
call dword [sym.imp.kernel32.dll_FindNextFileA]
test eax, eax
jne 0x46494f
mov ebx, dword [esp + 0x768]
push ebp
call dword [sym.imp.kernel32.dll_FindClose]
jmp 0x46488d
mov esi, dword [esp + 0x774]
lea ebx, [esi + 0xfa0]
mov eax, dword [esi]
test eax, eax
je 0x464c71
push eax
call fcn.0046f30e
pop ecx
mov dword [esi], 0
add esi, 4
cmp ebx, esi
ja 0x464c64
mov eax, dword [esp + 0x774]
test eax, eax
je 0x464c90
push eax
call fcn.0046f30e
pop ecx
mov eax, dword [esp + 0x76c]
test eax, eax
je 0x464ca2
push eax
call fcn.0046f30e
pop ecx
xor eax, eax
add esp, 0x784
pop ebx
pop ebp
pop esi
pop edi
ret
push 1
push 0x186aa
call fcn.0046be5c
mov eax, 0xffffffff
add esp, 0x78c
pop ebx
pop ebp
pop esi
pop edi
ret
push 1
push 0x196af
call fcn.0046be5c
mov eax, 0xffffffff
add esp, 0x78c
pop ebx
pop ebp
pop esi
pop edi
ret
push 1
push 0x196ae
call fcn.0046be5c
mov eax, 0xffffffff
add esp, 0x78c
pop ebx
pop ebp
pop esi
pop edi
ret
movsx edx, byte [esp + 0x655]
test edx, edx
jne 0x464d19
mov edx, 1
jmp 0x46495f
cmp edx, 0x2e
je 0x464d25
xor edx, edx
jmp 0x46495f
movsx edx, byte [esp + 0x656]
test edx, edx
jne 0x464d3b
mov edx, 1
jmp 0x46495f
xor edx, edx
jmp 0x46495f
push 1
push 0x186aa
call fcn.0046be5c
mov eax, 0xffffffff
add esp, 0x78c
pop ebx
pop ebp
pop esi
pop edi
ret
push 1
push 0x186aa
call fcn.0046be30
mov eax, 0xffffffff
add esp, 0x78c
pop ebx
pop ebp
pop esi
pop edi
ret
push 1
push 0x186aa
call fcn.0046be30
mov eax, 0xffffffff
add esp, 0x78c
pop ebx
pop ebp
pop esi
pop edi
ret
mov eax, 0xffffffff
add esp, 0x784
pop ebx
pop ebp
pop esi
pop edi
ret