Function at 0x101388c0
Capabilities:
Enumerate files on windows
Enumerate files recursively
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x284
mov eax, dword [0x101d8724]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 8], 0xffffffff
cmp dword [ebp + 8], 0
jne 0x10138af0
push 0x104
lea eax, [ebp - 0x118]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x1013895f
push 0x5c
lea ecx, [ebp - 0x118]
push ecx
call fcn.1014f580
add esp, 8
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x1013895f
mov edx, dword [ebp - 0xc]
add edx, 1
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0xc]
mov byte [eax], 0x2a
mov ecx, dword [ebp - 0xc]
add ecx, 1
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0xc]
mov byte [edx], 0
mov eax, dword [ebp - 0xc]
add eax, 1
mov dword [ebp - 0xc], eax
push 1
lea ecx, [ebp - 0x118]
push ecx
call fcn.101388c0
add esp, 8
mov dword [ebp - 4], eax
mov edx, dword [ebp - 4]
cmp edx, dword [ebp - 8]
jae 0x1013895f
mov eax, dword [ebp - 4]
mov dword [ebp - 8], eax
push 0x104
lea ecx, [ebp - 0x118]
push ecx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
test eax, eax
je 0x101389e3
push 0
lea edx, [ebp - 0x118]
push edx
call fcn.1014f220
add esp, 8
sub eax, 1
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x5c
je 0x101389ad
push 0x101a7068
lea edx, [ebp - 0x118]
push edx
call fcn.1014e940
add esp, 8
jmp 0x101389c1
push 0x101a189c
lea eax, [ebp - 0x118]
push eax
call fcn.1014e940
add esp, 8
push 0
lea ecx, [ebp - 0x118]
push ecx
call fcn.101388c0
add esp, 8
mov dword [ebp - 4], eax
mov edx, dword [ebp - 4]
cmp edx, dword [ebp - 8]
jae 0x101389e3
mov eax, dword [ebp - 4]
mov dword [ebp - 8], eax
push 0x104
lea ecx, [ebp - 0x118]
push ecx
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
test eax, eax
je 0x10138a67
push 0
lea edx, [ebp - 0x118]
push edx
call fcn.1014f220
add esp, 8
sub eax, 1
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x5c
je 0x10138a31
push 0x101a7068
lea edx, [ebp - 0x118]
push edx
call fcn.1014e940
add esp, 8
jmp 0x10138a45
push 0x101a189c
lea eax, [ebp - 0x118]
push eax
call fcn.1014e940
add esp, 8
push 0
lea ecx, [ebp - 0x118]
push ecx
call fcn.101388c0
add esp, 8
mov dword [ebp - 4], eax
mov edx, dword [ebp - 4]
cmp edx, dword [ebp - 8]
jae 0x10138a67
mov eax, dword [ebp - 4]
mov dword [ebp - 8], eax
lea ecx, [ebp - 0x118]
push ecx
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
test eax, eax
je 0x10138aeb
push 0
lea edx, [ebp - 0x118]
push edx
call fcn.1014f220
add esp, 8
sub eax, 1
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x5c
je 0x10138ab5
push 0x101a7068
lea edx, [ebp - 0x118]
push edx
call fcn.1014e940
add esp, 8
jmp 0x10138ac9
push 0x101a189c
lea eax, [ebp - 0x118]
push eax
call fcn.1014e940
add esp, 8
push 0
lea ecx, [ebp - 0x118]
push ecx
call fcn.101388c0
add esp, 8
mov dword [ebp - 4], eax
mov edx, dword [ebp - 4]
cmp edx, dword [ebp - 8]
jae 0x10138aeb
mov eax, dword [ebp - 4]
mov dword [ebp - 8], eax
jmp 0x10138c4f
lea ecx, [ebp - 0x124]
push ecx
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
mov edx, dword [ebp - 0x124]
mov dword [ebp - 0x12c], edx
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x128], eax
mov ecx, dword [ebp - 0x128]
sub ecx, 0x57f
mov dword [ebp - 0x128], ecx
lea edx, [ebp - 0x280]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [ebp - 0x11c], eax
cmp dword [ebp - 0x11c], 0xffffffff
je 0x10138c4f
mov dword [ebp - 0x284], 0
mov ecx, dword [ebp - 0x280]
and ecx, 0x10
jne 0x10138c0b
lea edx, [ebp - 0x13c]
push edx
lea eax, [ebp - 0x274]
push eax
call dword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
test eax, eax
je 0x10138c0b
movzx ecx, word [ebp - 0x13c]
cmp ecx, 0x7d0
jl 0x10138c0b
lea edx, [ebp - 0x12c]
push edx
lea eax, [ebp - 0x274]
push eax
call dword [sym.imp.KERNEL32.dll_CompareFileTime]
test eax, eax
jge 0x10138bcd
mov eax, dword [ebp - 0x120]
sub eax, dword [ebp - 0x270]
xor edx, edx
mov ecx, 0xc9
div ecx
mov dword [ebp - 4], eax
mov edx, dword [ebp - 4]
cmp edx, dword [ebp - 8]
jae 0x10138bcd
mov eax, dword [ebp - 4]
mov dword [ebp - 8], eax
lea ecx, [ebp - 0x12c]
push ecx
lea edx, [ebp - 0x26c]
push edx
call dword [sym.imp.KERNEL32.dll_CompareFileTime]
test eax, eax
jge 0x10138c0b
mov eax, dword [ebp - 0x120]
sub eax, dword [ebp - 0x268]
xor edx, edx
mov ecx, 0xc9
div ecx
mov dword [ebp - 4], eax
mov edx, dword [ebp - 4]
cmp edx, dword [ebp - 8]
jae 0x10138c0b
mov eax, dword [ebp - 4]
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x284]
add ecx, 1
mov dword [ebp - 0x284], ecx
cmp dword [ebp - 0x284], 0x800
jge 0x10138c42
lea edx, [ebp - 0x280]
push edx
mov eax, dword [ebp - 0x11c]
push eax
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x10138b55
mov ecx, dword [ebp - 0x11c]
push ecx
call dword [sym.imp.KERNEL32.dll_FindClose]
mov eax, dword [ebp - 8]
sub eax, 0xffffffff
neg eax
sbb eax, eax
and eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1014c68a
mov esp, ebp
pop ebp
ret