Function at 0x140125760
Capabilities:
Enumerate files on windows
Enumerate files recursively

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x220]
sub rsp, 0x320
mov rax, qword [0x140300040]
xor rax, rsp
mov qword [rbp + 0x218], rax
mov r14, rcx
mov qword [rbp - 0x78], rcx
mov dword [0x14030c210], 1
xor r13d, r13d
mov qword [rbp - 0x50], r13
call fcn.140019590
mov rcx, rax
test rax, rax
je 0x140125cbe
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038ca6.0]
add rax, 0x18
mov qword [rbp - 0x50], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x60], rax
call fcn.140019590
mov rcx, rax
test rax, rax
je 0x140125cc9
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038ca6.0]
add rax, 0x18
mov qword [rsp + 0x40], rax
lea r12, [0x140267514]
mov rdx, r12
lea rcx, [rsp + 0x40]
call fcn.140018bb0
lea rdi, [r13 - 1]
test al, al
jne 0x140125859
mov r8, rdi
nop word [rax + rax]
inc r8
cmp word [r12 + r8*2], 0
jne 0x140125840
mov rdx, r12
lea rcx, [rsp + 0x40]
call fcn.140018f50
nop
call fcn.140019590
mov rcx, rax
test rax, rax
je 0x140125cd4
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038ca6.0]
add rax, 0x18
mov qword [rsp + 0x48], rax
lea rbx, [0x140267090]
mov rdx, rbx
lea rcx, [rsp + 0x48]
call fcn.140018bb0
test al, al
jne 0x1401258b9
mov r8, rdi
nop dword [rax + rax]
inc r8
cmp word [rbx + r8*2], 0
jne 0x1401258a0
mov rdx, rbx
lea rcx, [rsp + 0x48]
call fcn.140018f50
nop
mov rcx, qword [r14]
sub rcx, 0x18
call fcn.140019180
add rax, 0x18
mov qword [rsp + 0x70], rax
lea r9, [rsp + 0x40]
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x80]
call fcn.140025320
nop
lea rdx, [rbp - 0x40]
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov r15, rax
mov rdx, qword [rbp - 0x80]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14012591b
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
cmp r15, 0xffffffffffffffff
jne 0x140125971
mov rdx, qword [rbp - 0x50]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140125946
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov dword [0x14030c210], r13d
mov rdx, qword [r14]
sub rdx, 0x18
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x140125c26
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
jmp 0x140125c20
mov rbx, qword [rbp - 0x50]
nop word [rax + rax]
movzx ecx, word [rbp - 0x14]
movzx eax, word [rbp - 0x12]
cmp cx, 0x2e
jne 0x1401259ac
test ax, ax
je 0x140125bbe
cmp cx, cx
jne 0x1401259ac
cmp ax, cx
jne 0x1401259ac
cmp word [rbp - 0x10], 0
je 0x140125bbe
lea rax, [rsp + 0x50]
mov qword [rbp - 0x70], rax
lea rax, [rsp + 0x58]
mov qword [rbp - 0x68], rax
lea rax, [rsp + 0x60]
mov qword [rbp - 0x60], rax
call fcn.140019590
mov rcx, rax
test rax, rax
je 0x140125cb3
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038ca6.0]
add rax, 0x18
mov qword [rsp + 0x50], rax
mov rdx, r12
lea rcx, [rsp + 0x50]
call fcn.140018bb0
test al, al
jne 0x140125a13
mov r8d, 1
mov rdx, r12
lea rcx, [rsp + 0x50]
call fcn.140018f50
nop
call fcn.140019590
mov rcx, rax
test rax, rax
je 0x140125ca8
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038ca6.0]
add rax, 0x18
mov qword [rsp + 0x58], rax
lea rdx, [rbp - 0x14]
lea rcx, [rsp + 0x58]
call fcn.140018bb0
test al, al
jne 0x140125a6d
lea rax, [rbp - 0x14]
mov r8, rdi
inc r8
cmp word [rax + r8*2], 0
jne 0x140125a53
lea rdx, [rbp - 0x14]
lea rcx, [rsp + 0x58]
call fcn.140018f50
nop
mov rcx, qword [r14]
sub rcx, 0x18
call fcn.140019180
add rax, 0x18
mov qword [rsp + 0x60], rax
lea r9, [rsp + 0x50]
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x78]
call fcn.140025320
nop
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
add rbx, 0xffffffffffffffe8
cmp rcx, rbx
je 0x140125af9
cmp dword [rbx + 0x10], 0
jl 0x140125aeb
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x140125aeb
call fcn.140019180
mov rsi, rax
mov eax, edi
lock xadd dword [rbx + 0x10], eax
sub eax, 1
jg 0x140125ae1
mov rcx, qword [rbx]
mov rax, qword [rcx]
mov rdx, rbx
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
lea rax, [rsi + 0x18]
mov qword [rbp - 0x50], rax
jmp 0x140125af9
mov r8d, dword [rdx - 0x10]
lea rcx, [rbp - 0x50]
call fcn.140018f50
nop
mov rdx, qword [rsp + 0x78]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140125b1e
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
mov eax, dword [rbp - 0x40]
mov rbx, qword [rbp - 0x50]
test al, 0x10
je 0x140125b80
lea rax, [rsp + 0x68]
mov qword [rbp - 0x58], rax
lea rcx, [rbx - 0x18]
call fcn.140019180
add rax, 0x18
mov qword [rsp + 0x68], rax
lea rcx, [rsp + 0x68]
call fcn.140125760
test eax, eax
jne 0x140125bbe
mov eax, edi
lock xadd dword [rbx - 8], eax
sub eax, 1
jg 0x140125b74
mov rcx, qword [rbx - 0x18]
mov rax, qword [rcx]
lea rdx, [rbx - 0x18]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov dword [0x14030c210], r13d
jmp 0x140125c83
test al, 0xa0
je 0x140125bbe
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [r9 + 4]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CreateFileW]
cmp rax, 0xffffffffffffffff
je 0x140125c5b
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rdx, [rbp - 0x40]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x140125980
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_FindClose]
nop
lea rdx, [rbx - 0x18]
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140125bfe
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov dword [0x14030c210], r13d
mov rdx, qword [r14]
sub rdx, 0x18
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x140125c26
mov rcx, qword [rdx]
mov r8, qword [rcx]
mov rax, qword [r8 + 8]
call qword [case.0x140038ca6.0]
mov eax, 1
mov rcx, qword [rbp + 0x218]
xor rcx, rsp
call fcn.1401f74b0
lea r11, [rsp + 0x320]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
lea rdx, [rbx - 0x18]
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140125c7c
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov dword [0x14030c210], r13d
mov rdx, qword [r14]
sub rdx, 0x18
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x140125ca4
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
xor eax, eax
jmp 0x140125c2b
mov ecx, 0x80004005
call fcn.140019300
nop
mov ecx, 0x80004005
call fcn.140019300
nop
mov ecx, 0x80004005
call fcn.140019300
nop
mov ecx, 0x80004005
call fcn.140019300
nop
mov ecx, 0x80004005
call fcn.140019300
int3