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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xe98
mov eax, dword [0x4cd724]
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.004677c0
add esp, 0xc
xor ecx, ecx
mov word [ebp - 0x620], cx
push 0x1fe
push 0
lea edx, [ebp - 0x61e]
push edx
call fcn.004677c0
add esp, 0xc
xor eax, eax
mov word [ebp - 0xc38], ax
push 0x1fe
push 0
lea ecx, [ebp - 0xc36]
push ecx
call fcn.004677c0
add esp, 0xc
xor edx, edx
mov word [ebp - 0x420], dx
push 0x206
push 0
lea eax, [ebp - 0x41e]
push eax
call fcn.004677c0
add esp, 0xc
xor ecx, ecx
mov word [ebp - 0x830], cx
push 0x206
push 0
lea edx, [ebp - 0x82e]
push edx
call fcn.004677c0
add esp, 0xc
xor eax, eax
mov word [ebp - 0xa38], ax
push 0x206
push 0
lea ecx, [ebp - 0xa36]
push ecx
call fcn.004677c0
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.0046b0fd
add esp, 0x24
lea edx, [ebp - 0x210]
push edx
lea eax, [ebp - 0x628]
push eax
push 0x4bbc38
push 0x104
lea ecx, [ebp - 0x420]
push ecx
call fcn.00467d96
add esp, 0x14
cmp dword [ebp + 0x14], 0
je 0x453495
mov dword [0x4e8ab8], 0
mov dword [ebp + 0x10], 0
cmp dword [ebp + 0xc], 0
jne 0x4535df
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 0x4535da
lea ecx, [ebp - 0xe6c]
mov dword [ebp - 0x214], ecx
mov edx, dword [ebp - 0x214]
movzx eax, word [edx + 2]
test eax, eax
jne 0x4534f2
mov ecx, dword [ebp - 0x214]
movzx edx, word [ecx]
cmp edx, 0x2e
jne 0x4534f2
jmp 0x4535a8
mov eax, dword [ebp - 0x214]
movzx ecx, word [eax + 4]
test ecx, ecx
jne 0x453522
mov edx, dword [ebp - 0x214]
movzx eax, word [edx]
cmp eax, 0x2e
jne 0x453522
mov ecx, dword [ebp - 0x214]
movzx edx, word [ecx + 2]
cmp edx, 0x2e
jne 0x453522
jmp 0x4535a8
mov eax, dword [ebp - 0xe98]
and eax, 0x10
jne 0x4535a8
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 0x4bbc44
push 0x104
lea edx, [ebp - 0x830]
push edx
call fcn.00467d96
add esp, 0x14
lea eax, [ebp - 0x830]
push eax
push 0x4bbc50
call fcn.00456a00
add esp, 8
mov ecx, dword [0x4e8ab8]
add ecx, 1
mov dword [0x4e8ab8], 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 0x4535cd
cmp dword [0x4e7810], 0
je 0x4534c3
mov ecx, dword [ebp - 0xc44]
push ecx
call dword [sym.imp.KERNEL32.dll_FindClose]
jmp 0x4537dd
lea edx, [ebp - 0x420]
push edx
push 0x4bbc8c
push 0x104
lea eax, [ebp - 0x830]
push eax
call fcn.00467d96
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 0x45362b
cmp dword [ebp - 0xc44], 0xffffffff
jne 0x453635
mov eax, dword [0x4e8ab8]
jmp 0x4537f6
lea eax, [ebp - 0xe6c]
mov dword [ebp - 0x214], eax
mov ecx, dword [ebp - 0x214]
movzx edx, word [ecx + 2]
test edx, edx
jne 0x453664
mov eax, dword [ebp - 0x214]
movzx ecx, word [eax]
cmp ecx, 0x2e
jne 0x453664
jmp 0x4537ab
mov edx, dword [ebp - 0x214]
movzx eax, word [edx + 4]
test eax, eax
jne 0x453694
mov ecx, dword [ebp - 0x214]
movzx edx, word [ecx]
cmp edx, 0x2e
jne 0x453694
mov eax, dword [ebp - 0x214]
movzx ecx, word [eax + 2]
cmp ecx, 0x2e
jne 0x453694
jmp 0x4537ab
mov edx, dword [ebp - 0xe98]
and edx, 0x10
je 0x4536f2
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 0x4bbc98
push 0x104
lea ecx, [ebp - 0x830]
push ecx
call fcn.00467d96
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.00453350
add esp, 0x10
jmp 0x4537ab
lea edx, [ebp - 0xc38]
push edx
lea eax, [ebp - 0x620]
push eax
push 0x4bbcac
push 0x104
lea ecx, [ebp - 0xa38]
push ecx
call fcn.00467d96
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 0x4537ab
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 0x4bbcb8
push 0x104
lea ecx, [ebp - 0x830]
push ecx
call fcn.00467d96
add esp, 0x14
lea edx, [ebp - 0x830]
push edx
push str.CountFiles____FullFileName_s
call fcn.00456a00
add esp, 8
mov eax, dword [0x4e8ab8]
add eax, 1
mov dword [0x4e8ab8], 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 0x4537d0
cmp dword [0x4e7810], 0
je 0x453635
mov eax, dword [ebp - 0xc44]
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
mov ecx, dword [0x4e8ab8]
push ecx
push str.CountFiles____NbFiles_d
call fcn.00456e30
add esp, 8
mov eax, dword [0x4e8ab8]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004677af
mov esp, ebp
pop ebp
ret