Function at 0x140045710
Capabilities:
Check for time delay via gettickcount
Enumerate files on windows
Enumerate files recursively

Disassembly:
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x330
lea rdi, [rsp + 0x30]
mov ecx, 0xc0
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x340]
mov rax, qword [0x14031eae8]
xor rax, rsp
mov qword [rsp + 0x320], rax
mov rax, qword [rsp + 0x340]
mov rax, qword [rax + 0x10208]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x340]
mov rcx, qword [rsp + 0x30]
lea rax, [rax + rcx*2]
mov qword [rsp + 0x38], rax
mov eax, 0x8000
sub rax, qword [rsp + 0x30]
dec rax
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x98], 0
mov rax, qword [rsp + 0x340]
lea rdx, [rsp + 0xb0]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov qword [rsp + 0x308], rax
cmp qword [rsp + 0x308], 0xffffffffffffffff
je 0x14004597c
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rsp + 0x94], eax
mov eax, dword [0x140322198]
mov ecx, dword [rsp + 0x94]
sub ecx, eax
mov eax, ecx
mov rcx, qword [0x14031a1e8]
cmp eax, dword [rcx + 0x88]
jbe 0x140045834
mov dword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x58]
call qword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x14004581a
mov edx, 1
mov ecx, 0xffffffff
call fcn.1400070b0
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rsp + 0x94], eax
mov eax, dword [rsp + 0x94]
mov dword [0x140322198], eax
mov eax, dword [rsp + 0xb0]
and eax, 0x10
test eax, eax
je 0x1400458b0
mov eax, 2
imul rax, rax, 0
movzx eax, word [rsp + rax + 0xdc]
cmp eax, 0x2e
jne 0x140045898
mov eax, 2
imul rax, rax, 1
movzx eax, word [rsp + rax + 0xdc]
test eax, eax
je 0x1400458a9
mov eax, 2
imul rax, rax, 1
movzx eax, word [rsp + rax + 0xdc]
cmp eax, 0x2e
jne 0x140045898
mov eax, 2
imul rax, rax, 2
movzx eax, word [rsp + rax + 0xdc]
test eax, eax
je 0x1400458a9
mov rax, qword [rsp + 0x340]
cmp dword [rax + 0x10228], 1
jne 0x1400458ae
jmp 0x140045950
jmp 0x1400458c6
mov rax, qword [rsp + 0x340]
cmp dword [rax + 0x10228], 2
jne 0x1400458c6
jmp 0x140045950
lea rcx, [rsp + 0xdc]
call fcn.1401ea000
cmp rax, qword [rsp + 0x40]
jbe 0x1400458fa
mov rax, qword [0x14031a1e8]
mov dword [rax + 0x64], reloc.WSOCK32.dll_WSAGetLastError
mov eax, dword [rsp + 0x98]
inc eax
mov dword [rsp + 0x98], eax
jmp 0x140045950
lea rdx, [rsp + 0xdc]
mov rcx, qword [rsp + 0x38]
call fcn.1401e8a70
mov rax, qword [rsp + 0x340]
mov rcx, qword [rsp + 0x340]
mov r8, qword [rcx + 0x10220]
lea rdx, [rsp + 0xb0]
mov rcx, rax
mov rax, qword [rsp + 0x340]
call qword [rax + 0x10218]
test eax, eax
jne 0x140045950
mov eax, dword [rsp + 0x98]
inc eax
mov dword [rsp + 0x98], eax
lea rdx, [rsp + 0xb0]
mov rcx, qword [rsp + 0x308]
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x1400457bf
mov rcx, qword [rsp + 0x308]
call qword [sym.imp.KERNEL32.dll_FindClose]
mov rax, qword [rsp + 0x340]
movzx eax, byte [rax + 0x1022c]
test eax, eax
je 0x140045b77
cmp qword [rsp + 0x40], 1
jbe 0x140045b77
lea rdx, [0x140276134]
mov rcx, qword [rsp + 0x38]
call fcn.1401e8a70
mov rax, qword [rsp + 0x340]
lea rdx, [rsp + 0xb0]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov qword [rsp + 0x308], rax
cmp qword [rsp + 0x308], 0xffffffffffffffff
je 0x140045b77
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rsp + 0x94], eax
mov eax, dword [0x140322198]
mov ecx, dword [rsp + 0x94]
sub ecx, eax
mov eax, ecx
mov rcx, qword [0x14031a1e8]
cmp eax, dword [rcx + 0x88]
jbe 0x140045a55
mov dword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x58]
call qword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x140045a3b
mov edx, 1
mov ecx, 0xffffffff
call fcn.1400070b0
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rsp + 0x94], eax
mov eax, dword [rsp + 0x94]
mov dword [0x140322198], eax
mov eax, dword [rsp + 0xb0]
and eax, 0x10
test eax, eax
je 0x140045ab9
mov eax, 2
imul rax, rax, 0
movzx eax, word [rsp + rax + 0xdc]
cmp eax, 0x2e
jne 0x140045abe
mov eax, 2
imul rax, rax, 1
movzx eax, word [rsp + rax + 0xdc]
test eax, eax
je 0x140045ab9
mov eax, 2
imul rax, rax, 1
movzx eax, word [rsp + rax + 0xdc]
cmp eax, 0x2e
jne 0x140045abe
mov eax, 2
imul rax, rax, 2
movzx eax, word [rsp + rax + 0xdc]
test eax, eax
jne 0x140045abe
jmp 0x140045b4b
lea rcx, [rsp + 0xdc]
call fcn.1401ea000
mov qword [rsp + 0x310], rax
mov rax, qword [rsp + 0x340]
mov rax, qword [rax + 0x10210]
add rax, qword [rsp + 0x310]
cmp rax, qword [rsp + 0x40]
jb 0x140045af3
jmp 0x140045b4b
mov rax, qword [rsp + 0x340]
add rax, 0x10000
mov r9, rax
lea r8, [rsp + 0xdc]
lea rdx, [0x140276138]
mov rcx, qword [rsp + 0x38]
call fcn.14000f7d0
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x310]
lea rax, [rax + rcx + 1]
mov rcx, qword [rsp + 0x340]
mov qword [rcx + 0x10208], rax
mov rcx, qword [rsp + 0x340]
call fcn.140045710
lea rdx, [rsp + 0xb0]
mov rcx, qword [rsp + 0x308]
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x1400459e0
mov rcx, qword [rsp + 0x308]
call qword [sym.imp.KERNEL32.dll_FindClose]
mov rax, qword [rsp + 0x340]
mov eax, dword [rax + 0x10230]
add eax, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x340]
mov dword [rcx + 0x10230], eax
mov rcx, rsp
lea rdx, reloc.OLEAUT32.dll_SysReAllocString
call fcn.140134a00
mov rcx, qword [rsp + 0x320]
xor rcx, rsp
call fcn.140135520
add rsp, 0x330
pop rdi
ret