Function at 0x140046920
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 [0x1400edaa8]
mov eax, 1
cmp byte [rbp + 0x700], sil
jne 0x140046991
cmp word [rbx], si
jne 0x14004697c
mov rax, r8
mov dl, 1
mov dword [rax + 0x40], 0x57
call fcn.140030e80
xor eax, eax
jmp 0x140046eff
mov ecx, dword [rbp + 0x6f0]
test ecx, ecx
mov dword [r8 + 0x40], esi
cmove ecx, eax
mov dword [rsp + 0x48], ecx
jmp 0x14004699b
mov eax, dword [rbp + 0x6f0]
mov dword [rsp + 0x48], eax
or rax, 0xffffffffffffffff
nop
inc rax
cmp word [rbx + rax*2], si
jne 0x1400469a0
cmp rax, 0x104
jb 0x1400469ca
mov dl, 1
mov dword [r8 + 0x40], WSAStartup
mov rcx, rdi
call fcn.140030e80
xor eax, eax
jmp 0x140046eff
mov r8d, 0x3f
lea rcx, [rbp - 0x40]
call fcn.1400a2664
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 0x1400469f0
cmp word [rbp - 0x40], si
je 0x140046a52
xor r8d, r8d
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x40]
call fcn.140079990
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
test eax, eax
je 0x140046a3d
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_LocalFileTimeToFileTime]
test eax, eax
jne 0x140046a5d
or r8d, 0xffffffff
mov dl, 1
mov rcx, rdi
call fcn.1400310a0
xor eax, eax
jmp 0x140046eff
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
lea rcx, [rbp + 0x290]
sub rcx, rbx
nop word [rax + rax]
movzx eax, word [rbx]
mov word [rcx + rbx], ax
lea rbx, [rbx + 2]
test ax, ax
jne 0x140046a70
mov edx, 0x5c
lea rcx, [rbp + 0x290]
call fcn.140097a74
test rax, rax
je 0x140046ab0
mov word [rax + 2], si
lea rcx, [rbp + 0x290]
or rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], si
jne 0x140046aa5
jmp 0x140046aba
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.140097a74
test rax, rax
je 0x140046af3
add rax, 2
jmp 0x140046afa
lea rax, [rbp + 0x4a0]
mov qword [rsp + 0x68], rax
mov r8, rax
test rax, rax
je 0x140046b40
movzx edx, word [rax]
test dx, dx
je 0x140046b40
nop
lea rcx, [0x1400d9748]
mov eax, 0x3f
nop dword [rax]
cmp dx, ax
je 0x140046b48
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x140046b20
movzx edx, word [r8 + 2]
add r8, 2
test dx, dx
jne 0x140046b10
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 0x140046d5d
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 [0x1400edaa8]
sub eax, dword [0x1400f6574]
cmp eax, dword [rcx + 0x110]
jbe 0x140046bd9
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 0x140046bc6
mov edx, 1
or ecx, 0xffffffff
call fcn.140001800
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov rcx, qword [0x1400edaa8]
mov dword [0x1400f6574], eax
test byte [rbp + 0x40], 0x10
je 0x140046c0f
cmp word [rbp + 0x6c], 0x2e
jne 0x140046c04
movzx eax, word [rbp + 0x6e]
test ax, ax
je 0x140046d31
cmp ax, 0x2e
jne 0x140046c04
cmp word [rbp + 0x70], 0
je 0x140046d31
cmp rbx, 1
jne 0x140046c19
jmp 0x140046d31
cmp rbx, 2
je 0x140046d31
lea rdx, [rbp + 0x6c]
or rax, 0xffffffffffffffff
inc rax
cmp word [rdx + rax*2], 0
jne 0x140046c21
cmp rax, qword [rsp + 0x60]
jbe 0x140046c40
mov dword [rcx + 0x40], WSAStartup
inc esi
jmp 0x140046d31
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 0x140046c50
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 0x140046cb2
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [0x1400edaa8]
inc esi
mov dword [rcx + 0x40], eax
jmp 0x140046d2c
movzx ebx, word [rbp + 0x6e8]
test ebx, 0xffffff80
jne 0x140046cd4
mov edx, 2
mov ecx, ebx
call fcn.14009c1d4
test eax, eax
je 0x140046cd4
and ebx, 0xffffffdf
movzx eax, bx
mov rcx, rdi
cmp eax, 0x41
je 0x140046cf8
xor r8d, r8d
cmp eax, 0x43
je 0x140046cee
lea r9, [rsp + 0x50]
jmp 0x140046d00
xor r9d, r9d
lea rdx, [rsp + 0x50]
jmp 0x140046d02
xor r9d, r9d
lea r8, [rsp + 0x50]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_SetFileTime]
test eax, eax
jne 0x140046d1e
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [0x1400edaa8]
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 0x140046b80
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 0x140046ee2
cmp rbx, 2
jbe 0x140046ee2
lea rcx, [0x1400d5eb8]
mov rdx, rdi
sub rdx, rcx
nop dword [rax]
nop dword [rax + rax]
movzx eax, word [rcx]
mov word [rdx + rcx], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x140046d90
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0x290]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x140046ee2
mov rax, qword [rsp + 0x68]
or rbx, 0xffffffffffffffff
nop word [rax + rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x140046dd0
nop word [rax + rax]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov rcx, qword [0x1400edaa8]
sub eax, dword [0x1400f6574]
cmp eax, dword [rcx + 0x110]
jbe 0x140046e32
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 0x140046e26
mov edx, 1
or ecx, 0xffffffff
call fcn.140001800
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x1400f6574], eax
test byte [rbp + 0x40], 0x10
je 0x140046ec4
cmp word [rbp + 0x6c], 0x2e
jne 0x140046e59
movzx eax, word [rbp + 0x6e]
test ax, ax
je 0x140046ec4
cmp ax, 0x2e
jne 0x140046e59
cmp word [rbp + 0x70], 0
je 0x140046ec4
lea rcx, [rbp + 0x6c]
or rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], 0
jne 0x140046e61
add rax, rbx
cmp rax, qword [rsp + 0x60]
jae 0x140046ec4
mov r9, qword [rsp + 0x68]
lea r8, [rbp + 0x6c]
mov rcx, qword [rsp + 0x70]
lea rdx, [0x1400d25d8]
call fcn.140004900
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.140046920
add dword [rsp + 0x40], eax
lea rdx, [rbp + 0x40]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x140046de0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindClose]
cmp byte [rbp + 0x700], 0
mov ebx, dword [rsp + 0x40]
jne 0x140046efd
mov rcx, qword [rbp + 0x6d0]
mov edx, ebx
call fcn.140030f60
mov eax, ebx
mov rbx, qword [rsp + 0x7d8]
add rsp, 0x7b0
pop rdi
pop rsi
pop rbp
ret