Function at 0x1400ae700
Capabilities:
Check if file exists
Enumerate files on windows
Get file attributes

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1c0]
sub rsp, 0x2c0
mov rax, qword [0x140173040]
xor rax, rsp
mov qword [rbp + 0x1b0], rax
mov rdi, rdx
mov qword [rsp + 0x30], rdx
mov rbx, qword [rdx]
mov r8, qword [rbx + 8]
mov rcx, rdx
call fcn.140005fa0
mov qword [rbx + 8], rbx
mov qword [rbx], rbx
mov qword [rbx + 0x10], rbx
xor esi, esi
mov qword [rdi + 8], rsi
mov qword [rsp + 0x38], rsi
lea rcx, [rsp + 0x38]
call fcn.1400055e0
nop
lea rdx, [rsp + 0x38]
call fcn.1400a64e0
lea rcx, str.prolasso.ini
mov r12, 0xffffffffffffffff
mov r15, r12
nop dword [rax + rax]
inc r15
cmp word [rcx + r15*2], 0
jne 0x1400ae790
test r15d, r15d
je 0x1400ae9df
lea rax, [0x1401467a0]
mov r13, r12
nop
inc r13
cmp word [rax + r13*2], 0
jne 0x1400ae7b0
mov edi, esi
mov rbx, qword [rsp + 0x38]
movsxd rax, dword [rbx - 0x10]
lea r14, [rbx + rax*2]
cmp rbx, r14
jae 0x1400ae9e4
jmp 0x1400ae7e7
lea rcx, str.prolasso.ini
mov rdx, rcx
mov rcx, rbx
call fcn.140100b40
test rax, rax
je 0x1400ae81c
movsxd rcx, r15d
lea rsi, [rcx + rcx]
nop
inc edi
lea rbx, [rsi + rax]
lea rdx, str.prolasso.ini
mov rcx, rbx
call fcn.140100b40
test rax, rax
jne 0x1400ae800
xor esi, esi
test rbx, rbx
je 0x1400ae830
mov rax, r12
inc rax
cmp word [rbx + rax*2], 0
jne 0x1400ae824
jmp 0x1400ae832
mov eax, esi
inc eax
movsxd rcx, eax
lea rbx, [rbx + rcx*2]
cmp rbx, r14
jb 0x1400ae7e0
test edi, edi
jle 0x1400ae9df
mov rsi, qword [rsp + 0x38]
mov qword [rsp + 0x48], rsi
movsxd r12, dword [rsi - 0x10]
mov ebx, r13d
sub ebx, r15d
imul ebx, edi
add ebx, r12d
mov dword [rsp + 0x40], ebx
mov edx, r12d
cmp ebx, r12d
cmovg edx, ebx
test edx, edx
js 0x1400aec26
mov ecx, 1
sub ecx, dword [rsi - 8]
mov eax, dword [rsi - 0xc]
sub eax, edx
or eax, ecx
jge 0x1400ae89c
lea rcx, [rsp + 0x38]
call fcn.140005a20
mov rsi, qword [rsp + 0x38]
mov qword [rsp + 0x48], rsi
lea r14, [rsi + r12*2]
mov qword [rsp + 0x28], r14
cmp rsi, r14
jae 0x1400ae9b9
mov rbx, rsi
lea rdx, str.prolasso.ini
mov rcx, rbx
call fcn.140100b40
mov rdi, rax
test rax, rax
je 0x1400ae97b
movsxd rcx, r15d
lea rax, [rcx + rcx]
mov qword [rsp + 0x20], rax
movsxd rcx, r13d
lea r14, [rcx + rcx]
nop
mov rcx, rdi
sub rcx, rsi
sar rcx, 1
mov esi, r12d
sub esi, ecx
sub esi, r15d
movsxd r8, esi
add r8, r8
lea rdx, [rax + rdi]
lea rbx, [r14 + rdi]
je 0x1400ae91b
test rbx, rbx
je 0x1400aec15
test rdx, rdx
je 0x1400aec15
mov rcx, rbx
call fcn.14012c6c0
test r14, r14
je 0x1400ae93b
test rdi, rdi
je 0x1400aec15
mov r8, r14
lea rdx, [0x1401467a0]
mov rcx, rdi
call fcn.14012c6c0
lea eax, [rsi + r13]
movsxd rcx, eax
xor eax, eax
mov word [rdi + rcx*2], ax
mov eax, r13d
sub eax, r15d
add r12d, eax
lea rdx, str.prolasso.ini
mov rcx, rbx
call fcn.140100b40
mov rdi, rax
test rax, rax
mov rsi, qword [rsp + 0x48]
mov rax, qword [rsp + 0x20]
jne 0x1400ae8e0
mov r14, qword [rsp + 0x28]
test rbx, rbx
je 0x1400ae99c
mov rax, 0xffffffffffffffff
nop word [rax + rax]
inc rax
cmp word [rbx + rax*2], 0
jne 0x1400ae990
jmp 0x1400ae99e
xor eax, eax
inc eax
movsxd rcx, eax
lea rbx, [rbx + rcx*2]
cmp rbx, r14
jb 0x1400ae8b1
mov rsi, qword [rsp + 0x38]
mov ebx, dword [rsp + 0x40]
test ebx, ebx
js 0x1400aec26
cmp ebx, dword [rsi - 0xc]
jg 0x1400aec26
mov dword [rsi - 0x10], ebx
movsxd rcx, ebx
mov rax, qword [rsp + 0x38]
xor esi, esi
mov word [rax + rcx*2], si
lea r12, [rsi - 1]
mov rbx, qword [rsp + 0x38]
lea rdi, str.config
cmp dword [rbx - 0x10], 0
jl 0x1400aea0e
mov rdx, rdi
mov rcx, rbx
call fcn.140100b40
test rax, rax
je 0x1400aea0e
sub rax, qword [rsp + 0x38]
sar rax, 1
cmp eax, 0xffffffff
jne 0x1400aea29
mov r8, r12
inc r8
cmp word [rdi + r8*2], 0
jne 0x1400aea11
mov rdx, rdi
lea rcx, [rsp + 0x38]
call fcn.140005c50
xor edx, edx
mov r8d, 0x250
lea rcx, [rsp + 0x60]
call fcn.14012ce40
mov qword [rsp + 0x50], rsi
lea rcx, [rsp + 0x50]
call fcn.1400055e0
nop
mov r8, qword [rsp + 0x38]
lea rdx, [0x14014e8f0]
lea rcx, [rsp + 0x50]
call fcn.140005d70
lea rdx, [rsp + 0x60]
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov rbx, rax
cmp rax, 0xffffffffffffffff
jne 0x1400aea81
xor bl, bl
jmp 0x1400aeba3
mov rdi, qword [rsp + 0x30]
nop word [rax + rax]
mov qword [rsp + 0x40], rsi
lea rdx, [rbp - 0x74]
lea rcx, [rsp + 0x40]
call fcn.14003f460
nop
mov rax, qword [rsp + 0x40]
cmp word [rax], 0x2e
jne 0x1400aeaca
cmp word [rax + 2], 0
je 0x1400aeaf7
cmp word [rax], 0x2e
jne 0x1400aeaca
cmp word [rax + 2], 0x2e
jne 0x1400aeaca
cmp word [rax + 4], 0
je 0x1400aeaf7
cmp dword [rax - 0x10], 0
jl 0x1400aeafd
lea rdx, [0x14014e900]
mov rcx, rax
call fcn.140100b40
mov rcx, rax
test rax, rax
je 0x1400aeafd
mov rax, qword [rsp + 0x40]
sub rcx, rax
sar rcx, 1
cmp ecx, 0xffffffff
je 0x1400aeafd
lea rdx, [rax - 0x18]
jmp 0x1400aeb75
mov qword [rsp + 0x48], rsi
lea rcx, [rsp + 0x48]
call fcn.1400055e0
nop
mov r9, qword [rsp + 0x40]
mov r8, qword [rsp + 0x38]
lea rdx, [0x140146d78]
lea rcx, [rsp + 0x48]
call fcn.140005d70
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x1400aeb4c
test al, 0x10
je 0x1400aeb4c
lea rdx, [rsp + 0x40]
mov rcx, rdi
call fcn.140074b60
mov byte [rax], 1
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400aeb6c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400aeb8b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x1400aea90
mov bl, 1
mov rdx, qword [rsp + 0x50]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400aebc3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r12d
sub r12d, 1
jg 0x1400aebe2
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
movzx eax, bl
mov rcx, qword [rbp + 0x1b0]
xor rcx, rsp
call fcn.1400ff350
lea r11, [rsp + 0x2c0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14010b5c8
nop
mov dword [rax], 0x16
call fcn.14010b428
mov ecx, 0x80070057
call fcn.140002b00
int3