Function at 0x47d360
Capabilities:
Enumerate files on windows
Enumerate files recursively
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xcfc
mov eax, dword [0x604e14]
xor eax, ebp
mov dword [ebp - 8], eax
mov dword [ebp - 0xcfc], ecx
push 0x250
push 0
lea eax, [ebp - 0x668]
push eax
call fcn.00556110
add esp, 0xc
mov ecx, dword [ebp + 8]
push ecx
push 0x104
lea edx, [ebp - 0x418]
push edx
call fcn.0045eee0
add esp, 0xc
push str..
push 0x104
lea eax, [ebp - 0x418]
push eax
call fcn.0045ef70
add esp, 0xc
lea ecx, [ebp - 0x668]
push ecx
lea edx, [ebp - 0x418]
push edx
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0xffffffff
jne 0x47d3e2
jmp 0x47d845
lea eax, [ebp - 0x63c]
push eax
call fcn.005560eb
add esp, 4
mov dword [ebp - 0x6a8], eax
push 0x1e
lea ecx, [ebp - 0x6a4]
push ecx
push 0
push 0
push 0
push 0
push 0
push 0
lea edx, [ebp - 0x63c]
push edx
call fcn.00557394
add esp, 0x24
lea eax, [ebp - 0x6a4]
push eax
call fcn.0047d8a0
add esp, 4
mov ecx, dword [ebp - 0x668]
and ecx, 0x10
jne 0x47d785
push 0x5b61fc
lea edx, [ebp - 0x63c]
push edx
call fcn.00557135
add esp, 8
test eax, eax
je 0x47d785
push 0x5b6200
lea eax, [ebp - 0x63c]
push eax
call fcn.00557135
add esp, 8
test eax, eax
je 0x47d785
cmp dword [ebp - 0x6a8], 4
jbe 0x47d785
push str..dll
lea ecx, [ebp - 0x6a4]
push ecx
call fcn.00557135
add esp, 8
test eax, eax
jne 0x47d785
mov edx, dword [ebp + 8]
push edx
push 0x104
lea eax, [ebp - 0x210]
push eax
call fcn.0045eee0
add esp, 0xc
push 0x5b6214
push 0x104
lea ecx, [ebp - 0x210]
push ecx
call fcn.0045ef70
add esp, 0xc
lea edx, [ebp - 0x63c]
push edx
push 0x104
lea eax, [ebp - 0x210]
push eax
call fcn.0045ef70
add esp, 0xc
lea ecx, [ebp - 0x210]
push ecx
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x6ac], eax
cmp dword [ebp - 0x6ac], 0
jne 0x47d507
jmp 0x47d822
push 0x42c
push 0
lea edx, [ebp - 0xae0]
push edx
call fcn.00556110
add esp, 0xc
lea eax, [ebp - 0x210]
push eax
push 0x104
lea ecx, [ebp - 0xae0]
push ecx
call fcn.0045eee0
add esp, 0xc
mov edx, dword [ebp - 0x6ac]
mov dword [ebp - 0x6d0], edx
push str.ExtensionLoad
mov eax, dword [ebp - 0x6d0]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x6cc], eax
push str.ExtensionUnload
mov ecx, dword [ebp - 0x6d0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x6c8], eax
push str.ExtensionName
mov edx, dword [ebp - 0x6d0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x6c4], eax
push str.ExtensionDescription
mov eax, dword [ebp - 0x6d0]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x6c0], eax
push str.ExtensionNeeded
mov ecx, dword [ebp - 0x6d0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x6bc], eax
push str.ExtensionExecute
mov edx, dword [ebp - 0x6d0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x6b8], eax
cmp dword [ebp - 0x6cc], 0
je 0x47d5ff
cmp dword [ebp - 0x6b8], 0
je 0x47d5ff
mov eax, dword [ebp - 0xcfc]
add eax, 0x218
push eax
call dword [ebp - 0x6cc]
add esp, 4
test eax, eax
jne 0x47d611
mov ecx, dword [ebp - 0x6d0]
push ecx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x47d822
cmp dword [ebp - 0x6c4], 0
je 0x47d637
call dword [ebp - 0x6c4]
push eax
push 0x104
lea edx, [ebp - 0x8d8]
push edx
call fcn.0045eee0
add esp, 0xc
jmp 0x47d665
lea eax, [ebp - 0x63c]
push eax
call fcn.005560eb
add esp, 4
sub eax, 4
push eax
lea ecx, [ebp - 0x63c]
push ecx
push 0x104
lea edx, [ebp - 0x8d8]
push edx
call fcn.00556018
add esp, 0x10
mov dword [ebp - 0xae4], 0
mov eax, dword [ebp - 0xcfc]
add eax, 0x208
push eax
call fcn.0045bb40
add esp, 4
test eax, eax
jne 0x47d6a7
mov ecx, dword [ebp - 0xcfc]
add ecx, 0x208
push ecx
call fcn.0045b860
add esp, 4
mov dword [ebp - 0xae4], eax
jmp 0x47d76a
mov edx, dword [ebp - 0xcfc]
add edx, 0x208
push edx
call fcn.0045b4b0
add esp, 4
mov dword [ebp - 0xae8], 0
mov eax, 1
test eax, eax
je 0x47d76a
mov ecx, dword [ebp - 0xcfc]
add ecx, 0x208
push ecx
call fcn.0045b530
add esp, 4
mov dword [ebp - 0xaec], eax
cmp dword [ebp - 0xaec], 0
jne 0x47d714
mov edx, dword [ebp - 0xcfc]
add edx, 0x208
push edx
call fcn.0045b860
add esp, 4
mov dword [ebp - 0xae4], eax
jmp 0x47d76a
mov eax, dword [ebp - 0xaec]
add eax, 0x208
push eax
lea ecx, [ebp - 0x8d8]
push ecx
call fcn.00557135
add esp, 8
test eax, eax
jge 0x47d756
mov edx, dword [ebp - 0xae8]
push edx
mov eax, dword [ebp - 0xcfc]
add eax, 0x208
push eax
call fcn.0045b9c0
add esp, 8
mov dword [ebp - 0xae4], eax
jmp 0x47d76a
mov ecx, dword [ebp - 0xae8]
add ecx, 1
mov dword [ebp - 0xae8], ecx
jmp 0x47d6c6
push 0x42c
lea edx, [ebp - 0xae0]
push edx
mov eax, dword [ebp - 0xae4]
push eax
call fcn.00556dd0
add esp, 0xc
mov ecx, dword [ebp - 0x668]
and ecx, 0x10
je 0x47d822
push 0x5b6284
lea edx, [ebp - 0x63c]
push edx
call fcn.00557135
add esp, 8
test eax, eax
je 0x47d822
push 0x5b6288
lea eax, [ebp - 0x63c]
push eax
call fcn.00557135
add esp, 8
test eax, eax
je 0x47d822
mov ecx, dword [ebp + 8]
push ecx
push 0x104
lea edx, [ebp - 0xcf8]
push edx
call fcn.0045eee0
add esp, 0xc
push 0x5b6290
push 0x104
lea eax, [ebp - 0xcf8]
push eax
call fcn.0045ef70
add esp, 0xc
lea ecx, [ebp - 0x63c]
push ecx
push 0x104
lea edx, [ebp - 0xcf8]
push edx
call fcn.0045ef70
add esp, 0xc
lea eax, [ebp - 0xcf8]
push eax
mov ecx, dword [ebp - 0xcfc]
call fcn.0047d360
lea ecx, [ebp - 0x668]
push ecx
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x47d3e2
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.00555ac5
mov esp, ebp
pop ebp
ret 4