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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xabc
mov eax, dword [0x4f6fc0]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0xa88], 0
mov dword [ebp - 0xa8c], 0
mov dword [ebp - 0xaa4], 0
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x204]
push ecx
call fcn.004b5e60
add esp, 8
mov edx, dword [ebp + 0xc]
push edx
lea eax, [ebp - 0x304]
push eax
call fcn.004b5e60
add esp, 8
mov ecx, 1
imul ecx, ecx, 0
movsx edx, byte [ebp + ecx - 0x204]
test edx, edx
je 0x4b3fd0
lea eax, [ebp - 0x204]
push eax
call fcn.004b5f60
add esp, 4
movsx ecx, byte [ebp + eax - 0x205]
cmp ecx, 0x5c
jne 0x4b3fd0
lea edx, [ebp - 0x204]
push edx
call fcn.004b5f60
add esp, 4
sub eax, 1
mov dword [ebp - 0xa9c], eax
cmp dword [ebp - 0xa9c], 0xff
jae 0x4b3fbd
jmp 0x4b3fc2
call fcn.004b64ae
mov eax, dword [ebp - 0xa9c]
mov byte [ebp + eax - 0x204], 0
mov ecx, 1
imul ecx, ecx, 0
movsx edx, byte [ebp + ecx - 0x304]
test edx, edx
je 0x4b4039
lea eax, [ebp - 0x304]
push eax
call fcn.004b5f60
add esp, 4
movsx ecx, byte [ebp + eax - 0x305]
cmp ecx, 0x5c
jne 0x4b4039
lea edx, [ebp - 0x304]
push edx
call fcn.004b5f60
add esp, 4
sub eax, 1
mov dword [ebp - 0xaa8], eax
cmp dword [ebp - 0xaa8], 0xff
jae 0x4b4026
jmp 0x4b402b
call fcn.004b64ae
mov eax, dword [ebp - 0xaa8]
mov byte [ebp + eax - 0x304], 0
cmp dword [0x4f6d80], 0xffffffff
jne 0x4b404c
call fcn.0049bcc0
mov dword [0x4f6d80], eax
lea ecx, [ebp - 0x204]
push ecx
push str._s.
lea edx, [ebp - 0x404]
push edx
call fcn.004b6e08
add esp, 0xc
lea eax, [ebp - 0x944]
push eax
lea ecx, [ebp - 0x404]
push ecx
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [ebp - 0xa88], eax
cmp dword [ebp - 0xa88], 0xffffffff
jne 0x4b408f
jmp 0x4b4823
call fcn.00487320
movsx edx, byte [0x4fc0a6]
cmp edx, 0x1b
jne 0x4b40f7
push 0x558eec
push str.MSG_Button_Cancel
push str.MSG_Dialog_Button_Continue
push str.MSG_Message_FilesBeingCopied
call fcn.00458fb0
add esp, 0x10
mov dword [ebp - 0xaa4], eax
mov byte [0x4fc0a6], 0
cmp dword [ebp - 0xaa4], 2
jne 0x4b40e3
mov dword [0x550470], 1
jmp 0x4b47e7
cmp dword [ebp + 0x10], 0
je 0x4b40f7
push 0
push 0
push 0
call fcn.0049a5b0
add esp, 0xc
mov eax, 1
imul eax, eax, 0
movsx ecx, byte [ebp + eax - 0x918]
cmp ecx, 0x2e
jne 0x4b4111
jmp 0x4b47e7
lea edx, [ebp - 0x918]
push edx
lea eax, [ebp - 0x104]
push eax
call fcn.004b5e60
add esp, 8
lea ecx, [ebp - 0x104]
push ecx
call fcn.004ca3dc
add esp, 4
push 0x4f6ddc
lea edx, [ebp - 0x104]
push edx
call fcn.004b5ff0
add esp, 8
test eax, eax
je 0x4b4153
jmp 0x4b47e7
push 0x4f6de4
lea eax, [ebp - 0x104]
push eax
call fcn.004b5ff0
add esp, 8
test eax, eax
je 0x4b4170
jmp 0x4b47e7
mov ecx, dword [0x4f9208]
sub ecx, 1
mov dword [0x4f9208], ecx
mov edx, dword [ebp - 0x928]
imul edx, edx, 0xffffffff
add edx, dword [ebp - 0x924]
mov eax, dword [0x4f920c]
sub eax, edx
mov dword [0x4f920c], eax
cmp dword [0x4f6d80], 1
je 0x4b41d0
cmp dword [0x4f6d80], 2
je 0x4b41d0
cmp dword [0x4f6d80], 3
je 0x4b41d0
cmp dword [0x4f6d80], 6
je 0x4b41d0
cmp dword [0x4f6d80], 7
je 0x4b41d0
cmp dword [0x4e145c], 1
jne 0x4b420f
mov ecx, dword [ebp - 0x928]
imul ecx, ecx, 0xffffffff
add ecx, dword [ebp - 0x924]
mov dword [ebp - 0xa90], ecx
cvtsi2sd xmm0, dword [ebp - 0xa90]
mov edx, dword [ebp - 0xa90]
shr edx, 0x1f
addsd xmm0, qword [edx*8 + 0x4cb8d0]
addsd xmm0, qword [0x4f2cf8]
movsd qword [0x4f2cf8], xmm0
movsd xmm0, qword [0x4f2cf8]
comisd xmm0, xmmword [0x4f2d00]
jbe 0x4b4231
movsd xmm0, qword [0x4f2d00]
movsd qword [0x4f2cf8], xmm0
cmp dword [ebp + 0x10], 0
je 0x4b4245
push 0
push 0
push 0
call fcn.0049a5b0
add esp, 0xc
mov eax, dword [ebp - 0x944]
and eax, 0x10
je 0x4b43ba
mov ecx, 1
imul ecx, ecx, 0
mov edx, dword [ebp + 0x18]
movsx eax, byte [edx + ecx]
test eax, eax
je 0x4b42c5
push 6
push 0x4f6de8
lea ecx, [ebp - 0x104]
push ecx
call fcn.004b6970
add esp, 0xc
test eax, eax
jne 0x4b42c5
mov edx, 1
imul edx, edx, 6
movsx eax, byte [ebp + edx - 0x104]
push eax
push 0x4f6df0
lea ecx, [ebp - 0x504]
push ecx
call fcn.004b6e08
add esp, 0xc
lea edx, [ebp - 0x504]
push edx
mov eax, dword [ebp + 0x18]
add eax, 0xb
push eax
call fcn.004b5ff0
add esp, 8
test eax, eax
je 0x4b42c5
jmp 0x4b47e7
cmp dword [0x4f84c4], 1
jne 0x4b433a
push 6
push str.LESSON
lea ecx, [ebp - 0x104]
push ecx
call fcn.004b6970
add esp, 0xc
test eax, eax
jne 0x4b42ed
jmp 0x4b47e7
push str.DICT
lea edx, [ebp - 0x104]
push edx
call fcn.004b5ff0
add esp, 8
test eax, eax
jne 0x4b4335
push str.PICT
lea eax, [ebp - 0x104]
push eax
call fcn.004b5ff0
add esp, 8
test eax, eax
jne 0x4b4335
push str.SPEECH
lea ecx, [ebp - 0x104]
push ecx
call fcn.004b5ff0
add esp, 8
test eax, eax
je 0x4b433a
jmp 0x4b47e7
lea edx, [ebp - 0x918]
push edx
lea eax, [ebp - 0x304]
push eax
push 0x4f6e14
lea ecx, [ebp - 0x704]
push ecx
call fcn.004b6e08
add esp, 0x10
cmp dword [ebp + 0x10], 3
je 0x4b4371
lea edx, [ebp - 0x704]
push edx
call fcn.00419870
add esp, 4
lea eax, [ebp - 0x918]
push eax
lea ecx, [ebp - 0x204]
push ecx
push 0x4f6e1c
lea edx, [ebp - 0x804]
push edx
call fcn.004b6e08
add esp, 0x10
mov eax, dword [ebp + 0x18]
push eax
mov ecx, dword [ebp + 0x14]
push ecx
mov edx, dword [ebp + 0x10]
push edx
lea eax, [ebp - 0x704]
push eax
lea ecx, [ebp - 0x804]
push ecx
call fcn.004b3f10
add esp, 0x14
jmp 0x4b47e7
cmp dword [0x4f84c4], 1
jne 0x4b4410
push 0x4f6e24
lea edx, [ebp - 0x104]
push edx
call fcn.004b5ff0
add esp, 8
test eax, eax
jne 0x4b4410
push 0x4f6e28
lea eax, [ebp - 0x104]
push eax
call fcn.004b5ff0
add esp, 8
test eax, eax
jne 0x4b4410
push str.VERSION
lea ecx, [ebp - 0x104]
push ecx
call fcn.004b5ff0
add esp, 8
test eax, eax
jne 0x4b4410
jmp 0x4b47e7
mov edx, 1
imul edx, edx, 0
mov eax, dword [ebp + 0x18]
movsx ecx, byte [eax + edx]
test ecx, ecx
je 0x4b4534
push 0x4f6e34
mov edx, dword [ebp + 0x18]
push edx
call fcn.004b68e0
add esp, 8
test eax, eax
jne 0x4b4471
push str..APP
lea eax, [ebp - 0x104]
push eax
call fcn.004b5ff0
add esp, 8
test eax, eax
jne 0x4b446c
push str..EXE
lea ecx, [ebp - 0x104]
push ecx
call fcn.004b5ff0
add esp, 8
test eax, eax
je 0x4b4471
jmp 0x4b47e7
push 0x4f6e4c
lea edx, [ebp - 0x104]
push edx
call fcn.004b5ff0
add esp, 8
test eax, eax
jne 0x4b44a5
push 0x4f6e54
lea eax, [ebp - 0x104]
push eax
call fcn.004b5ff0
add esp, 8
test eax, eax
je 0x4b4534
mov ecx, 1
shl ecx, 2
movsx edx, byte [ebp + ecx - 0x104]
cmp edx, 0x41
jl 0x4b4534
lea eax, [ebp - 0xff]
push eax
mov ecx, 1
imul ecx, ecx, 0
movsx edx, byte [ebp + ecx - 0x104]
push edx
push str._c_s
lea eax, [ebp - 0x504]
push eax
call fcn.004b6e08
add esp, 0x10
mov ecx, 1
imul ecx, ecx, 3
mov dword [ebp - 0xa94], ecx
cmp dword [ebp - 0xa94], 0xff
jae 0x4b4502
jmp 0x4b4507
call fcn.004b64ae
mov edx, dword [ebp - 0xa94]
mov byte [ebp + edx - 0x504], 0
lea eax, [ebp - 0x504]
push eax
mov ecx, dword [ebp + 0x18]
add ecx, 0xb
push ecx
call fcn.004b5ff0
add esp, 8
test eax, eax
je 0x4b4534
jmp 0x4b47e7
lea edx, [ebp - 0x104]
push edx
lea eax, [ebp - 0x604]
push eax
call fcn.004b5e60
add esp, 8
lea ecx, [ebp - 0x604]
push ecx
call fcn.004ca3dc
add esp, 4
push str.DOC.INI
lea edx, [ebp - 0x604]
push edx
call fcn.004b68e0
add esp, 8
test eax, eax
je 0x4b4589
push str.DOC.IN_
lea eax, [ebp - 0x604]
push eax
call fcn.004b68e0
add esp, 8
test eax, eax
jne 0x4b45ea
lea ecx, [ebp - 0x918]
push ecx
lea edx, [ebp - 0x304]
push edx
push str._s_s
lea eax, [ebp - 0x404]
push eax
call fcn.004b6e08
add esp, 0x10
lea ecx, [ebp - 0xa84]
push ecx
lea edx, [ebp - 0x404]
push edx
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [ebp - 0xa8c], eax
cmp dword [ebp - 0xa8c], 0xffffffff
je 0x4b45ea
mov eax, dword [ebp - 0xa8c]
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
mov dword [ebp - 0xa8c], 0
jmp 0x4b47e7
push 0xf
push str.INSTALL_ACROBAT
lea ecx, [ebp - 0x604]
push ecx
call fcn.004b6970
add esp, 0xc
test eax, eax
jne 0x4b4609
jmp 0x4b47e7
mov edx, dword [ebp - 0x928]
imul edx, edx, 0xffffffff
add edx, dword [ebp - 0x924]
mov dword [ebp - 0xa98], edx
cvtsi2sd xmm0, dword [ebp - 0xa98]
mov eax, dword [ebp - 0xa98]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x4cb8d0]
movsd qword [ebp - 0xab4], xmm0
cvtsd2ss xmm0, qword [ebp - 0xab4]
addss xmm0, dword [0x558ee8]
movss dword [0x558ee8], xmm0
mov ecx, dword [ebp - 0x928]
imul ecx, ecx, 0xffffffff
add ecx, dword [ebp - 0x924]
add ecx, dword [0x558ee4]
mov dword [0x558ee4], ecx
cmp dword [ebp + 0x10], 3
jne 0x4b467e
jmp 0x4b47e7
mov edx, dword [ebp - 0x928]
imul edx, edx, 0xffffffff
add edx, dword [ebp - 0x924]
cmp edx, 0xf4240
jbe 0x4b4705
mov eax, dword [ebp - 0x928]
imul eax, eax, 0xffffffff
add eax, dword [ebp - 0x924]
mov dword [ebp - 0xaa0], eax
cvtsi2sd xmm0, dword [ebp - 0xaa0]
mov ecx, dword [ebp - 0xaa0]
shr ecx, 0x1f
addsd xmm0, qword [ecx*8 + 0x4cb8d0]
movsd qword [ebp - 0xabc], xmm0
cvtsd2ss xmm0, qword [ebp - 0xabc]
divss xmm0, dword [0x4cc7a0]
cvtss2sd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
lea edx, [ebp - 0x918]
push edx
push str._s______3.1f_MB__
lea eax, [ebp - 0x404]
push eax
call fcn.004b6e08
add esp, 0x14
jmp 0x4b471b
lea ecx, [ebp - 0x918]
push ecx
lea edx, [ebp - 0x404]
push edx
call fcn.004b5e60
add esp, 8
lea eax, [ebp - 0x404]
push eax
push 0
push 0
call fcn.0049a5b0
add esp, 0xc
mov ecx, dword [ebp + 0x14]
mov dword [ebp - 0xaac], ecx
push str..MOV
lea edx, [ebp - 0x104]
push edx
call fcn.004b5ff0
add esp, 8
test eax, eax
jne 0x4b4767
push str..MP3
lea eax, [ebp - 0x104]
push eax
call fcn.004b5ff0
add esp, 8
test eax, eax
je 0x4b476e
mov dword [ebp + 0x14], 1
mov ecx, dword [ebp + 0x14]
push ecx
lea edx, [ebp - 0x304]
push edx
lea eax, [ebp - 0x204]
push eax
lea ecx, [ebp - 0x918]
push ecx
call fcn.0049b320
add esp, 0x10
test eax, eax
jne 0x4b47de
lea edx, [ebp - 0x918]
push edx
lea eax, [ebp - 0x304]
push eax
lea ecx, [ebp - 0x918]
push ecx
lea edx, [ebp - 0x204]
push edx
push str.ERROR:_XcopyFiles2:_Could_not_copy_file:__s_s__s_s
lea eax, [ebp - 0x404]
push eax
call fcn.004b6e08
add esp, 0x18
lea ecx, [ebp - 0x404]
push ecx
push 0
call fcn.00440830
add esp, 8
mov dword [0x550470], 1
mov edx, dword [ebp - 0xaac]
mov dword [ebp + 0x14], edx
lea eax, [ebp - 0x944]
push eax
mov ecx, dword [ebp - 0xa88]
push ecx
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
je 0x4b480c
cmp dword [0x550470], 0
je 0x4b408f
mov edx, dword [ebp - 0xa88]
push edx
call dword [sym.imp.KERNEL32.dll_FindClose]
mov dword [ebp - 0xa88], 0
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004b6253
mov esp, ebp
pop ebp
ret