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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4b8
mov eax, dword [0x5005d0]
xor eax, ebp
mov dword [ebp - 8], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov dword [ebp - 0x474], eax
mov eax, dword [ebp + 0xc]
push edi
mov dword [ebp - 0x468], eax
mov eax, dword [ebp + 0x10]
mov esi, 0x103
push esi
mov dword [ebp - 0x478], eax
xor ebx, ebx
lea eax, [ebp - 0x113]
push ebx
push eax
mov byte [ebp - 0x114], 0
call fcn.004a7110
add esp, 0xc
push esi
lea eax, [ebp - 0x21b]
push ebx
push eax
mov byte [ebp - 0x21c], bl
call fcn.004a7110
add esp, 0xc
push 0x13c
lea eax, [ebp - 0x460]
push ebx
push eax
mov dword [ebp - 0x464], ebx
call fcn.004a7110
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 - 0x47c], ebx
mov dword [ebp - 0x470], ebx
mov byte [ebp - 0x324], bl
call fcn.004a7110
mov esi, dword [ebp - 0x474]
add esp, 0xc
cmp esi, ebx
je 0x44583f
cmp dword [ebp - 0x468], ebx
je 0x44583f
push esi
call fcn.004a63c0
test eax, eax
pop ecx
jbe 0x44583f
push esi
call fcn.004a63c0
mov edi, 0x104
cmp eax, edi
pop ecx
jae 0x44583f
push dword [ebp - 0x468]
call fcn.004a63c0
test eax, eax
pop ecx
jbe 0x44583f
push dword [ebp - 0x468]
call fcn.004a63c0
cmp eax, edi
pop ecx
jae 0x44583f
mov edi, esi
call fcn.00418e6b
test eax, eax
jne 0x44537d
mov edi, dword [ebp - 0x468]
call fcn.00418e6b
test eax, eax
je 0x44583f
push esi
call fcn.00418f1c
test eax, eax
pop ecx
mov edi, 0x1e61
jne 0x4453a9
push edi
mov ecx, esi
call fcn.004191f9
test eax, eax
pop ecx
jne 0x4453a9
mov eax, esi
call fcn.00419347
test eax, eax
jne 0x44583f
push dword [ebp - 0x468]
call fcn.00418f1c
test eax, eax
pop ecx
jne 0x4453dd
mov ecx, dword [ebp - 0x468]
push edi
call fcn.004191f9
test eax, eax
pop ecx
jne 0x4453dd
mov eax, dword [ebp - 0x468]
call fcn.00419347
test eax, eax
jne 0x44583f
push esi
call fcn.004a63c0
cmp byte [eax + esi - 1], 0x5c
pop ecx
push esi
lea eax, [ebp - 0x114]
jne 0x4453f9
push 0x4dd368
jmp 0x4453fe
push 0x4dd558
push eax
call fcn.004a708e
add esp, 0xc
push 0x2828
lea eax, [ebp - 0x494]
push str..Network.c
push eax
call fcn.004998ed
add esp, 0xc
push ebx
lea edi, [ebp - 0x324]
call fcn.004412cb
pop ecx
mov eax, edi
push eax
push dword [ebp - 0x468]
call fcn.00476422
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 - 0x480], eax
jne 0x445495
cmp dword [ebp + 0x14], ebx
jne 0x445477
xor eax, eax
inc eax
jmp 0x445841
push dword [ebp + 0x18]
push ebx
push dword [ebp - 0x478]
push esi
push dword [ebp - 0x468]
call fcn.0044522d
add esp, 0x14
jmp 0x445841
mov ebx, dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
jmp 0x4454a3
mov edi, dword [ebp - 0x484]
xor esi, esi
cmp dword [ebp - 0x470], esi
je 0x4454df
call fcn.00498efc
sub eax, dword [ebp - 0x47c]
cmp eax, 0x1388
jbe 0x4454df
cmp dword [ebp + 0x18], esi
je 0x4454df
push dword [ebp + 0x18]
call fcn.00444ff3
mov dword [ebp - 0x470], esi
mov dword [esp], 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov esi, dword [ebp - 0x474]
push esi
call fcn.004a63c0
cmp byte [eax + esi - 1], 0x5c
pop ecx
lea eax, [ebp - 0x438]
push eax
push esi
lea eax, [ebp - 0x114]
jne 0x445508
push 0x4c64d0
jmp 0x44550d
push 0x4cbcfc
push eax
call fcn.004a708e
mov esi, dword [ebp - 0x468]
add esp, 0x10
push esi
call fcn.004a63c0
cmp byte [eax + esi - 1], 0x5c
pop ecx
lea eax, [ebp - 0x438]
push eax
push esi
lea eax, [ebp - 0x21c]
jne 0x44553f
push 0x4c64d0
jmp 0x445544
push 0x4cbcfc
push eax
call fcn.004a708e
add esp, 0x10
test edi, edi
je 0x445609
lea eax, [ebp - 0x4a4]
push eax
lea ecx, [ebp - 0x450]
call fcn.0049a58a
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.004982c6
add esp, 0x20
test eax, eax
je 0x445609
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.00498649
add esp, 0x20
cmp eax, 0x927c0
jle 0x445609
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]
movsd dword es:[edi], dword [esi]
push eax
lea eax, [ebp - 0x4b4]
xor esi, esi
push eax
mov word [ebp - 0x4a8], si
mov word [ebp - 0x4aa], si
call fcn.0049a6c6
lea eax, [ebp - 0x114]
push esi
push eax
lea eax, [ebp - 0x450]
xor ecx, ecx
call fcn.00419666
add esp, 0x10
push dword [ebp - 0x478]
lea ecx, [ebp - 0x464]
push dword [ebp - 0x468]
call fcn.00445850
test eax, eax
pop ecx
pop ecx
je 0x4457e7
lea eax, [ebp - 0x438]
push eax
push str._n__Syncing__s...
call fcn.00447f5d
cmp dword [ebp - 0x470], 0
pop ecx
pop ecx
jne 0x44566c
push 0x2871
push str..Network.c
push dword [ebp + 0x18]
call fcn.004443bf
add esp, 0xc
mov dword [ebp - 0x470], eax
call fcn.00498efc
mov dword [ebp - 0x47c], eax
mov edi, 0x120
push edi
lea eax, [ebp - 0x114]
push eax
call ebx
test eax, eax
jne 0x4456a6
lea eax, [ebp - 0x114]
call fcn.00419347
test eax, eax
jne 0x4456a6
mov esi, 0x1f4
push esi
call dword [sym.imp.KERNEL32.dll_Sleep]
push edi
lea eax, [ebp - 0x114]
push eax
call ebx
jmp 0x4456ab
mov esi, 0x1f4
push edi
lea eax, [ebp - 0x21c]
push eax
call ebx
test eax, eax
jne 0x4456e8
lea eax, [ebp - 0x21c]
call fcn.00419347
test eax, eax
jne 0x4456e8
lea edi, [ebp - 0x21c]
call fcn.00418e6b
test eax, eax
je 0x4456e8
push esi
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x120
mov eax, edi
push eax
call ebx
lea edi, [ebp - 0x21c]
lea ecx, [ebp - 0x114]
call fcn.00418548
mov edi, eax
test edi, edi
mov dword [ebp - 0x46c], edi
jne 0x445725
push esi
call dword [sym.imp.KERNEL32.dll_Sleep]
lea edi, [ebp - 0x21c]
lea ecx, [ebp - 0x114]
call fcn.00418548
mov dword [ebp - 0x46c], eax
mov edi, eax
push 0x20
lea eax, [ebp - 0x114]
push eax
call ebx
test eax, eax
jne 0x445770
lea eax, [ebp - 0x114]
call fcn.00419347
test eax, eax
jne 0x445770
push esi
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x20
lea eax, [ebp - 0x114]
push eax
call ebx
test eax, eax
jne 0x445770
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea edi, [ebp - 0x114]
call fcn.00418e6b
mov edi, dword [ebp - 0x46c]
neg edi
sbb edi, edi
and edi, 0xfffffefe
add edi, 0x122
push edi
lea eax, [ebp - 0x21c]
push eax
mov dword [ebp - 0x46c], edi
call ebx
test eax, eax
jne 0x4457d3
lea eax, [ebp - 0x21c]
call fcn.00419347
test eax, eax
jne 0x4457d3
lea edi, [ebp - 0x21c]
call fcn.00418e6b
test eax, eax
je 0x4457d3
push esi
call dword [sym.imp.KERNEL32.dll_Sleep]
push dword [ebp - 0x46c]
mov eax, edi
push eax
call ebx
test eax, eax
jne 0x4457d3
call dword [sym.imp.KERNEL32.dll_GetLastError]
call fcn.00418e6b
test byte [ebp - 0x46c], 2
je 0x4457e7
lea eax, [ebp - 0x21c]
call fcn.004189f3
lea eax, [ebp - 0x464]
push eax
push dword [ebp - 0x480]
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x44549d
xor esi, esi
cmp dword [ebp - 0x470], esi
je 0x445815
push dword [ebp + 0x18]
call fcn.00444ff3
pop ecx
push dword [ebp - 0x480]
call dword [sym.imp.KERNEL32.dll_FindClose]
cmp dword [ebp + 0x14], esi
je 0x44546f
push dword [ebp + 0x18]
push esi
push dword [ebp - 0x478]
push dword [ebp - 0x474]
jmp 0x445482
xor eax, eax
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004a69f5
leave
ret