Function at 0x475d5a
Capabilities:
Enumerate files on windows
Enumerate files recursively
Set file attributes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4b8
mov eax, dword [0x5f2e68]
xor eax, ebp
mov dword [ebp - 8], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov dword [ebp - 0x46c], eax
mov eax, dword [ebp + 0xc]
push edi
mov dword [ebp - 0x468], eax
mov eax, dword [ebp + 0x10]
mov esi, 0x103
xor ebx, ebx
push esi
mov dword [ebp - 0x470], eax
lea eax, [ebp - 0x113]
push ebx
push eax
mov byte [ebp - 0x114], bl
call fcn.005306b0
add esp, 0xc
push esi
lea eax, [ebp - 0x21b]
push ebx
push eax
mov byte [ebp - 0x21c], bl
call fcn.005306b0
add esp, 0xc
push 0x13c
lea eax, [ebp - 0x460]
push ebx
push eax
mov dword [ebp - 0x464], ebx
call fcn.005306b0
xor eax, eax
mov word [ebp - 0x494], bx
lea edi, [ebp - 0x492]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
xor eax, eax
mov word [ebp - 0x4a4], bx
lea edi, [ebp - 0x4a2]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
add esp, 0xc
push esi
stosw word es:[edi], ax
lea eax, [ebp - 0x323]
push ebx
push eax
mov dword [ebp - 0x480], ebx
mov dword [ebp - 0x478], ebx
mov byte [ebp - 0x324], bl
call fcn.005306b0
mov esi, dword [ebp - 0x46c]
add esp, 0xc
cmp esi, ebx
je 0x476498
cmp dword [ebp - 0x468], ebx
je 0x476498
push esi
call fcn.00530f70
test eax, eax
pop ecx
jbe 0x476498
push esi
call fcn.00530f70
mov edi, 0x104
cmp eax, edi
pop ecx
jae 0x476498
push dword [ebp - 0x468]
call fcn.00530f70
test eax, eax
pop ecx
jbe 0x476498
push dword [ebp - 0x468]
call fcn.00530f70
cmp eax, edi
pop ecx
jae 0x476498
mov edi, esi
call fcn.00432263
test eax, eax
jne 0x475ea9
mov edi, dword [ebp - 0x468]
call fcn.00432263
test eax, eax
je 0x476498
push esi
call fcn.00432310
test eax, eax
pop ecx
mov edi, 0x1e61
jne 0x475ed5
push edi
mov ecx, esi
call fcn.0043262d
test eax, eax
pop ecx
jne 0x475ed5
mov eax, esi
call fcn.004327ec
test eax, eax
jne 0x476498
push dword [ebp - 0x468]
call fcn.00432310
test eax, eax
pop ecx
jne 0x475f09
mov ecx, dword [ebp - 0x468]
push edi
call fcn.0043262d
test eax, eax
pop ecx
jne 0x475f09
mov eax, dword [ebp - 0x468]
call fcn.004327ec
test eax, eax
jne 0x476498
push esi
call fcn.00530f70
cmp byte [eax + esi - 1], 0x5c
pop ecx
push esi
lea eax, [ebp - 0x114]
jne 0x475f25
push 0x5727d0
jmp 0x475f2a
push 0x592810
push eax
call fcn.00531b2f
add esp, 0xc
push 0x2823
lea eax, [ebp - 0x494]
push str..Network.c
push eax
call fcn.004fb92f
add esp, 0xc
push ebx
lea edi, [ebp - 0x324]
call fcn.00470f4a
pop ecx
mov eax, edi
push eax
push dword [ebp - 0x468]
call fcn.004cd9f0
pop ecx
mov edi, eax
pop ecx
neg edi
lea eax, [ebp - 0x464]
push eax
sbb edi, edi
lea eax, [ebp - 0x114]
neg edi
push eax
mov dword [ebp - 0x484], edi
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
cmp eax, 0xffffffff
mov dword [ebp - 0x47c], eax
jne 0x475fc7
cmp dword [ebp + 0x14], ebx
jne 0x475fa3
xor eax, eax
inc eax
jmp 0x47649a
push dword [ebp + 0x18]
push ebx
push dword [ebp - 0x470]
push esi
push dword [ebp - 0x468]
call fcn.00475d5a
add esp, 0x14
jmp 0x47649a
mov edi, dword [ebp - 0x484]
cmp dword [ebp - 0x478], ebx
je 0x476001
call fcn.004fa8e4
sub eax, dword [ebp - 0x480]
cmp eax, 0x1388
jbe 0x476001
cmp dword [ebp + 0x18], ebx
je 0x476001
push dword [ebp + 0x18]
call fcn.00475a9e
mov dword [ebp - 0x478], ebx
mov dword [esp], 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
call fcn.00530f70
cmp byte [eax + esi - 1], 0x5c
pop ecx
lea eax, [ebp - 0x438]
push eax
push esi
lea eax, [ebp - 0x114]
jne 0x476024
push 0x553c34
jmp 0x476029
push 0x56c418
push eax
call fcn.00531b2f
add esp, 0x10
push dword [ebp - 0x468]
call fcn.00530f70
pop ecx
mov ecx, eax
mov eax, dword [ebp - 0x468]
cmp byte [ecx + eax - 1], 0x5c
lea ecx, [ebp - 0x438]
push ecx
push eax
lea eax, [ebp - 0x21c]
jne 0x476062
push 0x553c34
jmp 0x476067
push 0x56c418
push eax
call fcn.00531b2f
add esp, 0x10
cmp edi, ebx
je 0x476163
lea eax, [ebp - 0x4a4]
push eax
lea ecx, [ebp - 0x450]
call fcn.004fc6cd
sub esp, 0xc
mov edi, esp
lea esi, [ebp - 0x4a4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
sub esp, 0x10
lea esi, [ebp - 0x494]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.004f9a51
add esp, 0x20
test eax, eax
je 0x47615d
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0x494]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
sub esp, 0x10
lea esi, [ebp - 0x4a4]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.004f9ee0
add esp, 0x20
cmp eax, 0x927c0
mov dword [ebp - 0x474], eax
jle 0x47615d
lea esi, [ebp - 0x494]
lea edi, [ebp - 0x4b4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x450]
push eax
lea eax, [ebp - 0x4b4]
movsd dword es:[edi], dword [esi]
push eax
mov word [ebp - 0x4a8], bx
mov word [ebp - 0x4aa], bx
call fcn.004fc809
push ebx
push ebx
lea eax, [ebp - 0x114]
push ebx
push eax
lea eax, [ebp - 0x450]
xor ecx, ecx
call fcn.00432c0b
mov eax, dword [ebp - 0x474]
cdq
mov ecx, 0x3e8
idiv ecx
mov ecx, eax
call fcn.004f9fcb
push eax
lea eax, [ebp - 0x114]
push eax
push str.:2:TIME_DISCREPANCY__SyncFolders___had_to_adjust_the_timestamp_of___s__back_by__s_to_match_the_server_time_
call fcn.0042b70b
add esp, 0x24
mov esi, dword [ebp - 0x46c]
push dword [ebp - 0x470]
lea ecx, [ebp - 0x464]
push dword [ebp - 0x468]
call fcn.004764a9
test eax, eax
pop ecx
pop ecx
je 0x47645b
lea eax, [ebp - 0x438]
push eax
push str._n__Syncing__s...
call fcn.004799e6
cmp dword [ebp - 0x478], ebx
pop ecx
pop ecx
jne 0x4761c5
push 0x286c
push str..Network.c
push dword [ebp + 0x18]
call fcn.00474c00
add esp, 0xc
mov dword [ebp - 0x478], eax
call fcn.004fa8e4
mov dword [ebp - 0x480], eax
mov edi, dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov ebx, 0x120
push ebx
lea eax, [ebp - 0x114]
push eax
call edi
test eax, eax
jne 0x476237
lea eax, [ebp - 0x114]
call fcn.004327ec
test eax, eax
jne 0x476237
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
push ebx
lea eax, [ebp - 0x114]
push eax
call edi
test eax, eax
mov esi, str._GetLastError_
jne 0x47623c
push esi
lea eax, [ebp - 0x114]
push eax
push dword [ebp + 0x14]
push dword [ebp - 0x470]
push dword [ebp - 0x468]
push dword [ebp - 0x46c]
push str.:6:SyncFolders___s_____s_____s____d__encountered_a_problem:_SetFileAttributes___s___FILE_ATTRIBUTE_COPY_PENDING__FILE_ATTRIBUTE_ARCHIVE__FAILED:__s
call fcn.0042b70b
add esp, 0x1c
jmp 0x47623c
mov esi, str._GetLastError_
push ebx
lea eax, [ebp - 0x21c]
push eax
call edi
test eax, eax
jne 0x4762a7
lea eax, [ebp - 0x21c]
call fcn.004327ec
test eax, eax
jne 0x4762a7
lea edi, [ebp - 0x21c]
call fcn.00432263
test eax, eax
je 0x4762a7
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
push ebx
mov eax, edi
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
test eax, eax
jne 0x4762a7
push esi
mov eax, edi
push eax
push dword [ebp + 0x14]
push dword [ebp - 0x470]
push dword [ebp - 0x468]
push dword [ebp - 0x46c]
push str.:6:SyncFolders___s_____s_____s____d__encountered_a_problem:_SetFileAttributes___s___FILE_ATTRIBUTE_COPY_PENDING__FILE_ATTRIBUTE_ARCHIVE__FAILED:__s
call fcn.0042b70b
add esp, 0x1c
lea ebx, [ebp - 0x21c]
lea ecx, [ebp - 0x114]
call fcn.00430f2e
mov ebx, eax
test ebx, ebx
jne 0x476311
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
lea ebx, [ebp - 0x21c]
lea ecx, [ebp - 0x114]
call fcn.00430f2e
mov ebx, eax
test ebx, ebx
jne 0x476311
push esi
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x114]
push eax
push dword [ebp + 0x14]
push dword [ebp - 0x470]
push dword [ebp - 0x468]
push dword [ebp - 0x46c]
push str.:6:SyncFolders___s_____s_____s____d__encountered_a_problem:_CopyFileWithDates___s_____s___FAILED:__s
call fcn.0042b70b
add esp, 0x20
mov edi, dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
push 0x20
lea eax, [ebp - 0x114]
push eax
call edi
test eax, eax
jne 0x47639d
lea eax, [ebp - 0x114]
call fcn.004327ec
test eax, eax
jne 0x47639d
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x20
lea eax, [ebp - 0x114]
push eax
call edi
test eax, eax
jne 0x47639d
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea edi, [ebp - 0x114]
mov dword [ebp - 0x474], eax
call fcn.00432263
push dword [ebp - 0x474]
test eax, eax
push esi
mov eax, edi
push eax
push dword [ebp + 0x14]
push dword [ebp - 0x470]
push dword [ebp - 0x468]
push dword [ebp - 0x46c]
je 0x476390
push str.:6:SyncFolders___s_____s_____s____d__encountered_a_problem:_SetFileAttributes___s___FILE_ATTRIBUTE_ARCHIVE__FAILED_to_RESET_the_source_files_attributes___NOTE_the_file_DOES_exist:__s_ld
jmp 0x476395
push str.:6:SyncFolders___s_____s_____s____d__encountered_a_problem:_SetFileAttributes___s___FILE_ATTRIBUTE_ARCHIVE__FAILED_to_RESET_the_source_files_attributes___NOTE_the_file_DOES_NOT_exist:__s_ld
call fcn.0042b70b
add esp, 0x20
neg ebx
sbb ebx, ebx
and ebx, 0xfffffefe
add ebx, 0x122
push ebx
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
test eax, eax
jne 0x476443
lea eax, [ebp - 0x21c]
call fcn.004327ec
test eax, eax
jne 0x476443
lea edi, [ebp - 0x21c]
call fcn.00432263
test eax, eax
je 0x476443
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
push ebx
mov eax, edi
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
test eax, eax
jne 0x476443
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x474], eax
call fcn.00432263
push dword [ebp - 0x474]
test eax, eax
push esi
push ebx
mov eax, edi
push eax
push dword [ebp + 0x14]
push dword [ebp - 0x470]
push dword [ebp - 0x468]
push dword [ebp - 0x46c]
je 0x476436
push str.:6:SyncFolders___s_____s_____s____d__encountered_a_problem:_SetFileAttributes___s____ld__FAILED_to_RESET_the_dest_files_attributes__NOTE_the_file_DOES_exist:__s_ld
jmp 0x47643b
push str.:6:SyncFolders___s_____s_____s____d__encountered_a_problem:_SetFileAttributes___s____ld__FAILED_to_RESET_the_dest_files_attributes__NOTE_the_file_DOES_NOT_exist:__s_ld
call fcn.0042b70b
add esp, 0x24
test bl, 2
je 0x476453
lea eax, [ebp - 0x21c]
call fcn.004314ff
mov esi, dword [ebp - 0x46c]
xor ebx, ebx
lea eax, [ebp - 0x464]
push eax
push dword [ebp - 0x47c]
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x475fc1
cmp dword [ebp - 0x478], ebx
je 0x476487
push dword [ebp + 0x18]
call fcn.00475a9e
pop ecx
push dword [ebp - 0x47c]
call dword [sym.imp.KERNEL32.dll_FindClose]
jmp 0x475f96
xor eax, eax
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.005317e7
leave
ret