Function at 0x140004950
Capabilities:
Enumerate files on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xb0]
sub rsp, 0x1b0
mov r14, rdx
mov rbx, rcx
xor edx, edx
mov dword [rsp + 0x20], edx
mov qword [rcx], rdx
mov qword [rcx + 8], rdx
mov qword [rcx + 0x10], rdx
mov dword [rsp + 0x20], 1
mov r15, qword [r14 + 0x10]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r15
cmp rax, 4
jb 0x140004c60
mov r13, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x1400049c3
mov r13, qword [r14]
xorps xmm0, xmm0
movups xmmword [rsp + 0x28], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x38], xmm1
lea r12, [r15 + 4]
mov edi, 0xf
lea rsi, [rsp + 0x28]
cmp r12, rdi
jbe 0x140004a62
mov rdi, r12
or rdi, 0xf
cmp rdi, rcx
jbe 0x140004a23
mov rdi, rcx
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.1400820bc
test rax, rax
je 0x140004bcf
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x140004a5d
mov eax, 0x16
cmp rdi, rax
cmovb rdi, rax
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x140004a4b
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140004c66
jmp 0x140004a04
test rcx, rcx
je 0x140004a5a
call fcn.1400820bc
mov rsi, rax
jmp 0x140004a5d
mov rsi, rdx
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x40], rdi
mov r8, r15
mov rdx, r13
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov dword [rsi + r15], 0x2a2e2a2f
mov byte [rsi + r12], 0
mov dword [rsp + 0x20], 3
lea rcx, [rsp + 0x28]
cmp qword [rsp + 0x40], 0xf
cmova rcx, qword [rsp + 0x28]
lea rdx, [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov rdi, rax
xor esi, esi
cmp rax, 0xffffffffffffffff
je 0x140004b9b
nop word [rax + rax]
test byte [rsp + 0x70], 0x10
jne 0x140004b7b
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x60], rsi
lea rax, [rbp - 0x64]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140004af0
lea rdx, [rbp - 0x64]
lea rcx, [rsp + 0x48]
call fcn.140002620
nop
mov rdx, qword [rbx + 8]
cmp rdx, qword [rbx + 0x10]
je 0x140004b35
movups xmm0, xmmword [rsp + 0x48]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rsp + 0x58]
movups xmmword [rdx + 0x10], xmm1
mov edx, 0xf
mov byte [rsp + 0x48], 0
add qword [rbx + 8], 0x20
jmp 0x140004b47
lea r8, [rsp + 0x48]
mov rcx, rbx
call fcn.1400028f0
mov rdx, qword [rsp + 0x60]
cmp rdx, 0xf
jbe 0x140004b7b
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004b76
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004bd6
call fcn.1400820f8
lea rdx, [rsp + 0x70]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x140004ac0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindClose]
nop
mov rdx, qword [rsp + 0x40]
cmp rdx, 0xf
jbe 0x140004be2
inc rdx
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004bdd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140004bdd
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.1400820f8
movdqa xmm0, xmmword [0x1400c64d0]
movdqu xmmword [rsp + 0x38], xmm0
mov byte [rsp + 0x28], 0
mov rdx, qword [r14 + 0x18]
cmp rdx, 0xf
jbe 0x140004c2b
inc rdx
mov rcx, qword [r14]
cmp rdx, 0x1000
jb 0x140004c26
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140004c59
mov rcx, r8
call fcn.1400820f8
mov qword [r14 + 0x10], rsi
mov qword [r14 + 0x18], 0xf
mov byte [r14], 0
mov rax, rbx
mov rbx, qword [rsp + 0x200]
add rsp, 0x1b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.140005a40
int3
call fcn.140005980
int3