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

Disassembly:
mov qword [rsp + 0x10], rbx
mov word [rsp + 0x20], r9w
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x6b0]
sub rsp, 0x7b0
xor esi, esi
mov rbx, r8
mov rdi, rcx
mov r8, qword [0x1400faa58]
cmp byte [rbp + 0x700], sil
jne 0x14004d4e1
cmp word [rbx], si
jne 0x14004d4c7
mov rax, r8
mov dl, 1
mov dword [rax + 0x40], 0x57
call fcn.140035530
xor eax, eax
jmp 0x14004da3f
mov eax, dword [rbp + 0x6f0]
mov ecx, 1
test eax, eax
mov dword [r8 + 0x40], esi
cmovne ecx, eax
mov dword [rsp + 0x48], ecx
jmp 0x14004d4eb
mov eax, dword [rbp + 0x6f0]
mov dword [rsp + 0x48], eax
or rax, 0xffffffffffffffff
nop
inc rax
cmp word [rbx + rax*2], si
jne 0x14004d4f0
cmp rax, 0x104
jb 0x14004d51a
mov dl, 1
mov dword [r8 + 0x40], WSAStartup
mov rcx, rdi
call fcn.140035530
xor eax, eax
jmp 0x14004da3f
mov r8d, 0x3f
lea rcx, [rbp - 0x40]
call fcn.1400b02e4
lea rdx, [rbp + 0x4a0]
mov word [rbp + 0x3e], si
sub rdx, rbx
mov rcx, rbx
nop word [rax + rax]
movzx eax, word [rcx]
mov word [rdx + rcx], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x14004d540
cmp word [rbp - 0x40], si
je 0x14004d5ae
xor r8d, r8d
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x40]
call fcn.140086d30
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
test eax, eax
je 0x14004d58d
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_LocalFileTimeToFileTime]
test eax, eax
jne 0x14004d5b9
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [0x1400faa58]
mov dl, 1
mov dword [rcx + 0x40], eax
mov rcx, rdi
call fcn.140035530
xor eax, eax
jmp 0x14004da3f
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
lea rcx, [rbp + 0x290]
sub rcx, rbx
nop dword [rax]
nop word [rax + rax]
movzx eax, word [rbx]
mov word [rcx + rbx], ax
lea rbx, [rbx + 2]
test ax, ax
jne 0x14004d5d0
mov edx, 0x5c
lea rcx, [rbp + 0x290]
call fcn.1400a5a2c
test rax, rax
je 0x14004d610
mov word [rax + 2], si
lea rcx, [rbp + 0x290]
or rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], si
jne 0x14004d605
jmp 0x14004d61a
mov word [rbp + 0x290], si
mov rax, rsi
lea rdi, [rbp + 0x290]
mov ebx, 0x103
lea rdi, [rdi + rax*2]
sub rbx, rax
mov edx, 0x5c
mov qword [rsp + 0x70], rdi
lea rcx, [rbp + 0x4a0]
mov qword [rsp + 0x60], rbx
call fcn.1400a5a2c
test rax, rax
je 0x14004d653
add rax, 2
jmp 0x14004d65a
lea rax, [rbp + 0x4a0]
mov qword [rsp + 0x68], rax
mov r8, rax
test rax, rax
je 0x14004d6a0
movzx edx, word [rax]
test dx, dx
je 0x14004d6a0
nop
lea rcx, [0x1400e6b48]
mov eax, 0x3f
nop dword [rax]
cmp dx, ax
je 0x14004d6a8
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x14004d680
movzx edx, word [r8 + 2]
add r8, 2
test dx, dx
jne 0x14004d670
mov dword [rsp + 0x48], 3
lea rdx, [rbp + 0x40]
mov dword [rsp + 0x40], esi
lea rcx, [rbp + 0x4a0]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov qword [rsp + 0x58], rax
cmp rax, 0xffffffffffffffff
je 0x14004d8ba
movsxd rbx, dword [rsp + 0x48]
mov rdi, rax
mov qword [rsp + 0x40], rbx
nop dword [rax]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov rcx, qword [0x1400faa58]
sub eax, dword [0x140103efc]
cmp eax, dword [rcx + 0x118]
jbe 0x14004d739
xor r9d, r9d
mov dword [rsp + 0x20], 0
xor r8d, r8d
lea rcx, [rbp - 0x78]
xor edx, edx
call qword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x14004d726
mov edx, 1
or ecx, 0xffffffff
call fcn.1400016e0
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov rcx, qword [0x1400faa58]
mov dword [0x140103efc], eax
test byte [rbp + 0x40], 0x10
je 0x14004d76f
cmp word [rbp + 0x6c], 0x2e
jne 0x14004d764
movzx eax, word [rbp + 0x6e]
test ax, ax
je 0x14004d88e
cmp ax, 0x2e
jne 0x14004d764
cmp word [rbp + 0x70], 0
je 0x14004d88e
cmp rbx, 1
jne 0x14004d779
jmp 0x14004d88e
cmp rbx, 2
je 0x14004d88e
lea rdx, [rbp + 0x6c]
or rax, 0xffffffffffffffff
inc rax
cmp word [rdx + rax*2], 0
jne 0x14004d781
cmp rax, qword [rsp + 0x60]
jbe 0x14004d7a0
mov dword [rcx + 0x40], WSAStartup
inc esi
jmp 0x14004d88e
mov rdx, qword [rsp + 0x70]
lea rax, [rbp + 0x6c]
sub rdx, rax
lea rcx, [rbp + 0x6c]
movzx eax, word [rcx]
mov word [rdx + rcx], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x14004d7b0
xor r9d, r9d
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x22000000
lea rcx, [rbp + 0x290]
mov edx, 0x40000000
mov dword [rsp + 0x20], 3
lea r8d, [r9 + 3]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rdi, rax
cmp rax, 0xffffffffffffffff
jne 0x14004d80f
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [0x1400faa58]
inc esi
mov dword [rcx + 0x40], eax
jmp 0x14004d889
movzx ebx, word [rbp + 0x6e8]
test ebx, 0xffffff80
jne 0x14004d831
mov edx, 2
mov ecx, ebx
call fcn.1400a9dc4
test eax, eax
je 0x14004d831
and ebx, 0xffffffdf
movzx eax, bx
mov rcx, rdi
cmp eax, 0x41
je 0x14004d855
xor r8d, r8d
cmp eax, 0x43
je 0x14004d84b
lea r9, [rsp + 0x50]
jmp 0x14004d85d
xor r9d, r9d
lea rdx, [rsp + 0x50]
jmp 0x14004d85f
xor r9d, r9d
lea r8, [rsp + 0x50]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_SetFileTime]
test eax, eax
jne 0x14004d87b
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [0x1400faa58]
inc esi
mov dword [rcx + 0x40], eax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rbx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x58]
lea rdx, [rbp + 0x40]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x14004d6e0
mov rcx, rdi
mov dword [rsp + 0x40], esi
call qword [sym.imp.KERNEL32.dll_FindClose]
mov rbx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x70]
movzx esi, byte [rbp + 0x6f8]
test sil, sil
je 0x14004da22
cmp rbx, 2
jbe 0x14004da22
movabs rax, 0x2a002e002a
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0x290]
mov qword [rdi], rax
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x14004da22
mov rax, qword [rsp + 0x68]
or rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x14004d910
nop word [rax + rax]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov rcx, qword [0x1400faa58]
sub eax, dword [0x140103efc]
cmp eax, dword [rcx + 0x118]
jbe 0x14004d972
xor r9d, r9d
mov dword [rsp + 0x20], 0
xor r8d, r8d
lea rcx, [rbp - 0x78]
xor edx, edx
call qword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x14004d966
mov edx, 1
or ecx, 0xffffffff
call fcn.1400016e0
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x140103efc], eax
test byte [rbp + 0x40], 0x10
je 0x14004da04
cmp word [rbp + 0x6c], 0x2e
jne 0x14004d999
movzx eax, word [rbp + 0x6e]
test ax, ax
je 0x14004da04
cmp ax, 0x2e
jne 0x14004d999
cmp word [rbp + 0x70], 0
je 0x14004da04
lea rcx, [rbp + 0x6c]
or rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], 0
jne 0x14004d9a1
add rax, rbx
cmp rax, qword [rsp + 0x60]
jae 0x14004da04
mov r9, qword [rsp + 0x68]
lea r8, [rbp + 0x6c]
mov rcx, qword [rsp + 0x70]
lea rdx, [0x1400e03e0]
call fcn.140004b00
mov eax, dword [rsp + 0x48]
lea r8, [rbp + 0x290]
movzx r9d, word [rbp + 0x6e8]
lea rdx, [rbp - 0x40]
mov rcx, qword [rbp + 0x6d0]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], sil
mov dword [rsp + 0x20], eax
call fcn.14004d470
add dword [rsp + 0x40], eax
lea rdx, [rbp + 0x40]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x14004d920
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindClose]
cmp byte [rbp + 0x700], 0
mov ebx, dword [rsp + 0x40]
jne 0x14004da3d
mov rcx, qword [rbp + 0x6d0]
mov edx, ebx
call fcn.140035610
mov eax, ebx
mov rbx, qword [rsp + 0x7d8]
add rsp, 0x7b0
pop rdi
pop rsi
pop rbp
ret