Function at 0x180191f50
Capabilities:
Enumerate files on windows

Disassembly:
push rbp
push r12
push r13
push r14
push r15
mov eax, 0x50
call fcn.1800b9c10
sub rsp, rax
lea rbp, [rsp + 0x40]
mov qword [rbp + 0x40], rbx
mov qword [rbp + 0x48], rsi
mov qword [rbp + 0x50], rdi
mov rax, qword [0x1802e4710]
xor rax, rbp
mov qword [rbp], rax
mov rdi, rdx
mov rsi, rcx
test rcx, rcx
je 0x180192182
test rdx, rdx
je 0x180192182
call fcn.1800ad870
xor ebx, ebx
mov dword [rax], ebx
mov rcx, qword [rsi]
test rcx, rcx
jne 0x180192219
mov eax, ebx
mov rcx, rdi
cmp byte [rdi], al
je 0x180191fd0
nop dword [rax]
cmp eax, 0x80000000
jae 0x180191fd0
inc rcx
inc eax
cmp byte [rcx], bl
jne 0x180191fc0
mov r13d, eax
and r13d, 0x7fffffff
je 0x180192209
cmp r13, 0x7ffffffc
ja 0x180192209
mov ecx, 0x358
call fcn.1800ad540
mov qword [rsi], rax
test rax, rax
jne 0x18019200f
call fcn.1800ad870
mov dword [rax], reloc.WS2_32.dll_inet_ntoa
jmp 0x18019218d
xor edx, edx
mov r8d, 0x358
mov rcx, rax
call fcn.1800b45b0
inc r13
mov r15d, 0xfde9
mov r8, rdi
xor edx, edx
mov r9d, r13d
mov ecx, r15d
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rbx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov r14d, eax
test eax, eax
jg 0x180192126
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x459
jne 0x180192079
mov r9d, r13d
mov r8, rdi
xor edx, edx
xor ecx, ecx
mov dword [rsp + 0x28], ebx
mov r15d, ebx
mov qword [rsp + 0x20], rbx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov r14d, eax
test r14d, r14d
jg 0x180192126
lea eax, [r13 + 2]
mov r14d, r13d
movsxd rcx, eax
add rcx, rcx
lea rax, [rcx + 0xf]
cmp rax, rcx
ja 0x1801920a2
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.1800b9c10
sub rsp, rax
mov rcx, rbx
lea r12, [rsp + 0x40]
test r13, r13
je 0x1801920d2
nop dword [rax + rax]
movsx eax, byte [rcx + rdi]
inc rcx
mov word [r12 + rcx*2 - 2], ax
cmp rcx, r13
jb 0x1801920c0
lea eax, [r14 - 1]
cdqe
add rax, rax
movzx ecx, word [rax + r12 - 2]
cmp cx, 0x2a
je 0x1801921e1
cmp cx, 0x2f
je 0x1801921b5
cmp cx, 0x5c
je 0x1801921b5
lea rcx, [0x180291fd4]
sub rax, rcx
lea rdx, [rax + r12]
nop dword [rax]
movzx eax, word [rcx]
add rcx, 2
mov word [rdx + rcx - 2], ax
test ax, ax
jne 0x180192110
jmp 0x1801921e1
lea eax, [r14 + 2]
movsxd rcx, eax
add rcx, rcx
lea rax, [rcx + 0xf]
cmp rax, rcx
ja 0x180192143
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.1800b9c10
sub rsp, rax
mov r9d, r13d
lea r12, [rsp + 0x40]
mov r8, rdi
xor edx, edx
mov ecx, r15d
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
jne 0x1801920d2
mov rcx, qword [rsi]
call fcn.1800ad500
mov qword [rsi], rbx
call fcn.1800ad870
mov dword [rax], reloc.WS2_32.dll_shutdown
xor eax, eax
mov rcx, qword [rbp]
xor rcx, rbp
call fcn.1800acfa0
mov rbx, qword [rbp + 0x40]
mov rsi, qword [rbp + 0x48]
mov rdi, qword [rbp + 0x50]
lea rsp, [rbp + 0x10]
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
lea rdx, [0x180291fd0]
sub rax, rdx
lea rcx, [rax + r12]
nop word [rax + rax]
movzx eax, word [rdx]
add rdx, 2
mov word [rcx + rdx - 2], ax
test ax, ax
jne 0x1801921d0
mov rdx, qword [rsi]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov rcx, qword [rsi]
mov qword [rcx + 0x250], rax
mov rcx, qword [rsi]
cmp qword [rcx + 0x250], 0xffffffffffffffff
jne 0x180192231
jmp 0x18019217a
call fcn.1800ad870
mov dword [rax], 2
jmp 0x18019218d
mov rdx, rcx
mov rcx, qword [rcx + 0x250]
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
je 0x18019218d
mov rax, qword [rsi]
mov rdi, rbx
cmp word [rax + 0x2c], bx
lea r12, [rax + 0x2c]
je 0x180192254
cmp rdi, 0xff
jae 0x180192254
inc rdi
cmp word [r12 + rdi*2], bx
jne 0x180192241
mov qword [rsp + 0x38], rbx
add rax, 0x258
mov qword [rsp + 0x30], rbx
inc rdi
mov r8, r12
xor edx, edx
mov ecx, 0xfde9
mov r9d, edi
mov dword [rsp + 0x28], 0x100
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test eax, eax
jne 0x1801922a7
test rdi, rdi
je 0x1801922a7
movzx eax, byte [r12 + rbx*2]
mov rcx, qword [rsi]
inc rbx
mov byte [rcx + rbx + 0x257], al
cmp rbx, rdi
jb 0x180192290
mov rax, qword [rsi]
mov byte [rax + 0x357], 0
mov rax, qword [rsi]
add rax, 0x258
jmp 0x18019218f