Function at 0x452119
Capabilities:
Enumerate files on windows

Disassembly:
push ebp
lea ebp, [esp - 0x6f4]
sub esp, 0x774
mov eax, dword [0x4bca50]
xor eax, ebp
mov dword [ebp + 0x6f0], eax
push ebx
push edi
mov eax, ecx
lea ebx, [eax + 0x90]
push 0x4a6f70
lea eax, [ebp + 0x28c]
push ebx
push eax
call fcn.00410e7f
mov eax, dword [ebp + 0x290]
add esp, 0xc
cmp dword [ebp + 0x2a4], 8
jae 0x452168
lea eax, [ebp + 0x290]
push 0x4a6f6c
push eax
call fcn.004750b8
mov edi, eax
pop ecx
pop ecx
test edi, edi
jne 0x45218e
push eax
push 1
lea ecx, [ebp + 0x28c]
call fcn.00401a58
jmp 0x452489
push esi
lea ecx, [ebp + 0x10]
call fcn.0040f76c
mov esi, 0x104
jmp 0x452230
lea eax, [ebp + 0x4e8]
push eax
lea ecx, [ebp + 0x2c4]
call fcn.004018f6
push 1
push 3
lea eax, [ebp + 0x2c4]
push eax
lea ecx, [ebp - 0x80]
call fcn.00451f2e
push 0
push 1
lea ecx, [ebp + 0x2c4]
call fcn.00401a58
lea eax, [ebp + 0x4e8]
push eax
lea eax, [ebp - 0x80]
push eax
call fcn.00451e02
lea eax, [ebp + 0x4e8]
push eax
call fcn.004708ae
add esp, 0xc
test eax, eax
je 0x452228
lea eax, [ebp + 0x4e8]
push eax
lea ecx, [ebp + 0x2c4]
call fcn.004018f6
lea eax, [ebp + 0x2c4]
push eax
lea ecx, [ebp + 0x10]
call fcn.0040f646
push 0
push 1
lea ecx, [ebp + 0x2c4]
call fcn.00401a58
lea ecx, [ebp - 0x80]
call fcn.004052d3
push edi
lea eax, [ebp + 0x4e8]
push esi
push eax
call fcn.00474f31
add esp, 0xc
test eax, eax
jne 0x4521a1
push edi
call fcn.00474813
pop ecx
push ebx
lea ecx, [ebp + 0x2a8]
call fcn.00401918
mov eax, dword [ebp + 0x2bc]
dec eax
push eax
lea ecx, [ebp + 0x2a8]
call fcn.00403205
cmp word [eax], 0x5c
je 0x452285
push 0x4aca20
lea ecx, [ebp + 0x2a8]
call fcn.0040197d
push 0x4acb64
lea ecx, [ebp + 0x2a8]
call fcn.0040197d
cmp dword [ebp + 0x2c0], 8
mov eax, dword [ebp + 0x2ac]
jae 0x4522aa
lea eax, [ebp + 0x2ac]
lea ecx, [ebp + 0x3c]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp + 0x30], eax
cmp eax, 0xffffffff
jne 0x4522e4
push 0
push 1
lea ecx, [ebp + 0x2a8]
call fcn.00401a58
lea ecx, [ebp + 0x10]
call fcn.0040fab9
push dword [ebp + 0x10]
call fcn.00470471
pop ecx
push 0
jmp 0x45247b
push 0x208
xor edi, edi
lea eax, [ebp + 0x2e0]
push edi
push eax
call fcn.00470920
add esp, 0xc
mov esi, dword [sym.imp.SHLWAPI.dll_StrCmpW]
push 0x4acb68
lea eax, [ebp + 0x68]
push eax
call esi
test eax, eax
je 0x45243d
push 0x4aca18
lea eax, [ebp + 0x68]
push eax
call esi
test eax, eax
je 0x45243d
cmp dword [ebx + 0x18], 8
jb 0x452332
mov eax, dword [ebx + 4]
jmp 0x452335
lea eax, [ebx + 4]
lea ecx, [ebp + 0x68]
push ecx
push eax
lea eax, [ebp + 0x2e0]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
test byte [ebp + 0x3c], 0x10
lea eax, [ebp + 0x68]
lea ecx, [ebp + 0x2c4]
push eax
je 0x45238c
call fcn.004018f6
push str.download_profiles
lea ecx, [ebp + 0x2c4]
call fcn.0040bee4
test eax, eax
jne 0x45242f
push 1
push edi
lea eax, [ebp + 0x2e0]
push edi
push eax
call fcn.0040391c
add esp, 0x10
jmp 0x45242f
call fcn.004018f6
lea eax, [ebp + 0x10]
push eax
push dword [ebp + 0x1c]
lea ecx, [ebp + 8]
call fcn.004096ea
mov eax, dword [ebp + 8]
mov dword [ebp + 0x34], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp + 0x38], eax
jmp 0x4523ed
cmp dword [ebp + 0x2dc], 8
mov esi, dword [ebp + 0x2c8]
jae 0x4523c3
lea esi, [ebp + 0x2c8]
lea ecx, [ebp + 0x34]
call fcn.0040fe3a
cmp dword [eax + 0x18], 8
jb 0x4523d6
mov eax, dword [eax + 4]
jmp 0x4523d9
add eax, 4
push esi
push eax
call dword [sym.imp.SHLWAPI.dll_StrCmpIW]
test eax, eax
je 0x45242f
lea ecx, [ebp + 0x34]
call fcn.00403a7f
lea eax, [ebp + 0x10]
push eax
push dword [ebp + 0x20]
lea ecx, [ebp + 0x28]
call fcn.004096ea
lea eax, [ebp + 0x28]
push eax
lea ecx, [ebp + 0x34]
call fcn.00403aae
test al, al
je 0x4523ae
push 0x4a6f70
lea ecx, [ebp + 0x2c4]
call fcn.0040bee4
test eax, eax
je 0x45242f
lea eax, [ebp + 0x2e0]
push edi
push eax
call fcn.00403960
pop ecx
pop ecx
push edi
push 1
lea ecx, [ebp + 0x2c4]
call fcn.00401a58
lea eax, [ebp + 0x3c]
push eax
push dword [ebp + 0x30]
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x4522fb
push dword [ebp + 0x30]
call dword [sym.imp.KERNEL32.dll_FindClose]
push edi
push 1
lea ecx, [ebp + 0x2a8]
call fcn.00401a58
lea ecx, [ebp + 0x10]
call fcn.0040fab9
push dword [ebp + 0x10]
call fcn.00470471
pop ecx
push edi
push 1
lea ecx, [ebp + 0x28c]
call fcn.00401a58
pop esi
mov ecx, dword [ebp + 0x6f0]
pop edi
xor ecx, ebp
pop ebx
call fcn.0047099a
add ebp, 0x6f4
leave
ret