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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xe98
mov eax, dword [0x4ce724]
xor eax, ebp
mov dword [ebp - 4], eax
xor eax, eax
mov word [ebp - 0x628], ax
xor ecx, ecx
mov dword [ebp - 0x626], ecx
xor edx, edx
mov word [ebp - 0x210], dx
push 0x206
push 0
lea eax, [ebp - 0x20e]
push eax
call fcn.00467d60
add esp, 0xc
xor ecx, ecx
mov word [ebp - 0x620], cx
push 0x1fe
push 0
lea edx, [ebp - 0x61e]
push edx
call fcn.00467d60
add esp, 0xc
xor eax, eax
mov word [ebp - 0xc38], ax
push 0x1fe
push 0
lea ecx, [ebp - 0xc36]
push ecx
call fcn.00467d60
add esp, 0xc
xor edx, edx
mov word [ebp - 0x420], dx
push 0x206
push 0
lea eax, [ebp - 0x41e]
push eax
call fcn.00467d60
add esp, 0xc
xor ecx, ecx
mov word [ebp - 0x830], cx
push 0x206
push 0
lea edx, [ebp - 0x82e]
push edx
call fcn.00467d60
add esp, 0xc
xor eax, eax
mov word [ebp - 0xa38], ax
push 0x206
push 0
lea ecx, [ebp - 0xa36]
push ecx
call fcn.00467d60
add esp, 0xc
push 0
push 0
push 0
push 0
push 0x104
lea edx, [ebp - 0x210]
push edx
push 3
lea eax, [ebp - 0x628]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.0046b69d
add esp, 0x24
lea edx, [ebp - 0x210]
push edx
lea eax, [ebp - 0x628]
push eax
push 0x4bce88
push 0x104
lea ecx, [ebp - 0x420]
push ecx
call fcn.00468336
add esp, 0x14
cmp dword [ebp + 0x14], 0
je 0x453a55
mov dword [0x4e9ee0], 0
mov dword [ebp + 0x10], 0
cmp dword [ebp + 0xc], 0
jne 0x453b9f
lea edx, [ebp - 0xe98]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp - 0xc44], eax
cmp dword [ebp - 0xc44], 0xffffffff
je 0x453b9a
lea ecx, [ebp - 0xe6c]
mov dword [ebp - 0x214], ecx
mov edx, dword [ebp - 0x214]
movzx eax, word [edx + 2]
test eax, eax
jne 0x453ab2
mov ecx, dword [ebp - 0x214]
movzx edx, word [ecx]
cmp edx, 0x2e
jne 0x453ab2
jmp 0x453b68
mov eax, dword [ebp - 0x214]
movzx ecx, word [eax + 4]
test ecx, ecx
jne 0x453ae2
mov edx, dword [ebp - 0x214]
movzx eax, word [edx]
cmp eax, 0x2e
jne 0x453ae2
mov ecx, dword [ebp - 0x214]
movzx edx, word [ecx + 2]
cmp edx, 0x2e
jne 0x453ae2
jmp 0x453b68
mov eax, dword [ebp - 0xe98]
and eax, 0x10
jne 0x453b68
mov ecx, dword [ebp - 0xe78]
mov dword [ebp - 0xc40], ecx
mov edx, dword [ebp - 0xe7c]
mov dword [ebp - 0xc3c], edx
mov eax, dword [ebp - 0xc40]
cdq
mov ecx, dword [ebp + 0x10]
add eax, dword [ecx]
mov ecx, dword [ecx + 4]
adc ecx, edx
mov edx, dword [ebp + 0x10]
mov dword [edx], eax
mov dword [edx + 4], ecx
lea eax, [ebp - 0xe6c]
push eax
lea ecx, [ebp - 0x420]
push ecx
push 0x4bce94
push 0x104
lea edx, [ebp - 0x830]
push edx
call fcn.00468336
add esp, 0x14
lea eax, [ebp - 0x830]
push eax
push 0x4bcea0
call fcn.00456fc0
add esp, 8
mov ecx, dword [0x4e9ee0]
add ecx, 1
mov dword [0x4e9ee0], ecx
lea edx, [ebp - 0xe98]
push edx
mov eax, dword [ebp - 0xc44]
push eax
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
je 0x453b8d
cmp dword [0x4e8c34], 0
je 0x453a83
mov ecx, dword [ebp - 0xc44]
push ecx
call dword [sym.imp.KERNEL32.dll_FindClose]
jmp 0x453d9d
lea edx, [ebp - 0x420]
push edx
push 0x4bcedc
push 0x104
lea eax, [ebp - 0x830]
push eax
call fcn.00468336
add esp, 0x10
lea ecx, [ebp - 0xe98]
push ecx
lea edx, [ebp - 0x830]
push edx
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp - 0xc44], eax
cmp dword [ebp - 0xc44], 0
je 0x453beb
cmp dword [ebp - 0xc44], 0xffffffff
jne 0x453bf5
mov eax, dword [0x4e9ee0]
jmp 0x453db6
lea eax, [ebp - 0xe6c]
mov dword [ebp - 0x214], eax
mov ecx, dword [ebp - 0x214]
movzx edx, word [ecx + 2]
test edx, edx
jne 0x453c24
mov eax, dword [ebp - 0x214]
movzx ecx, word [eax]
cmp ecx, 0x2e
jne 0x453c24
jmp 0x453d6b
mov edx, dword [ebp - 0x214]
movzx eax, word [edx + 4]
test eax, eax
jne 0x453c54
mov ecx, dword [ebp - 0x214]
movzx edx, word [ecx]
cmp edx, 0x2e
jne 0x453c54
mov eax, dword [ebp - 0x214]
movzx ecx, word [eax + 2]
cmp ecx, 0x2e
jne 0x453c54
jmp 0x453d6b
mov edx, dword [ebp - 0xe98]
and edx, 0x10
je 0x453cb2
lea eax, [ebp - 0xc38]
push eax
lea ecx, [ebp - 0x620]
push ecx
mov edx, dword [ebp - 0x214]
push edx
lea eax, [ebp - 0x420]
push eax
push 0x4bcee8
push 0x104
lea ecx, [ebp - 0x830]
push ecx
call fcn.00468336
add esp, 0x1c
push 0
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0xc]
push eax
lea ecx, [ebp - 0x830]
push ecx
call fcn.00453910
add esp, 0x10
jmp 0x453d6b
lea edx, [ebp - 0xc38]
push edx
lea eax, [ebp - 0x620]
push eax
push 0x4bcefc
push 0x104
lea ecx, [ebp - 0xa38]
push ecx
call fcn.00468336
add esp, 0x14
lea edx, [ebp - 0xa38]
push edx
mov eax, dword [ebp - 0x214]
push eax
call dword [sym.imp.SHLWAPI.dll_PathMatchSpecW]
test eax, eax
je 0x453d6b
mov ecx, dword [ebp - 0xe78]
mov dword [ebp - 0xc40], ecx
mov edx, dword [ebp - 0xe7c]
mov dword [ebp - 0xc3c], edx
mov eax, dword [ebp - 0xc40]
xor ecx, ecx
mov edx, dword [ebp + 0x10]
add eax, dword [edx]
mov edx, dword [edx + 4]
adc edx, ecx
mov ecx, dword [ebp + 0x10]
mov dword [ecx], eax
mov dword [ecx + 4], edx
lea edx, [ebp - 0xe6c]
push edx
lea eax, [ebp - 0x420]
push eax
push 0x4bcf08
push 0x104
lea ecx, [ebp - 0x830]
push ecx
call fcn.00468336
add esp, 0x14
lea edx, [ebp - 0x830]
push edx
push str.CountFiles____FullFileName_s
call fcn.00456fc0
add esp, 8
mov eax, dword [0x4e9ee0]
add eax, 1
mov dword [0x4e9ee0], eax
lea ecx, [ebp - 0xe98]
push ecx
mov edx, dword [ebp - 0xc44]
push edx
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
je 0x453d90
cmp dword [0x4e8c34], 0
je 0x453bf5
mov eax, dword [ebp - 0xc44]
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
mov ecx, dword [0x4e9ee0]
push ecx
push str.CountFiles____NbFiles_d
call fcn.004573f0
add esp, 8
mov eax, dword [0x4e9ee0]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00467d4f
mov esp, ebp
pop ebp
ret