Function at 0x408750
Capabilities:
Enumerate files on windows
Get file attributes

Disassembly:
mov r11, rsp
sub rsp, 0x218
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [r11 + 0x18], rbx
mov qword [r11 + 0x20], rbp
mov qword [r11 - 8], rsi
mov qword [r11 - 0x10], rdi
mov qword [r11 - 0x18], r12
mov qword [r11 - 0x20], r13
mov qword [r11 - 0x28], r14
mov qword [r11 - 0x30], r15
mov rax, qword [0x004232f8]
xor rax, rsp
mov qword [rsp + 0x1d0], rax
mov r12, rdx
mov rbx, rcx
mov qword [r11 - 0x198], rcx
mov qword [rsp + 0x78], rdx
mov rsi, qword [rcx + 0x18]
test rsi, rsi
jne 0x4087ff
cmp qword [rcx + 0x20], 0x10
jb 0x4087c0
mov rcx, qword [rcx + 8]
call fcn.00409210
mov qword [rbx + 0x20], 0xf
xor edi, edi
mov qword [rbx + 0x18], rdi
mov byte [rbx + 8], dil
cmp qword [r12 + 0x20], 0x10
jb 0x4087e4
mov rcx, qword [r12 + 8]
call fcn.00409210
mov qword [r12 + 0x20], 0xf
mov qword [r12 + 0x18], rdi
mov byte [r12 + 8], 0
xor eax, eax
jmp 0x408aff
mov r15d, 1
test rsi, rsi
je 0x408913
cmp rsi, r15
jb 0x408913
cmp qword [rcx + 0x20], 0x10
jb 0x408828
lea rbp, [rcx + 8]
mov rdi, qword [rbp]
jmp 0x40882f
lea rbp, [rcx + 8]
mov rdi, rbp
mov r8, rsi
mov edx, 0x2f
mov rcx, rdi
call fcn.0040bb10
test rax, rax
je 0x408913
cmp byte [rax], 0x2f
je 0x408873
sub rdi, rax
lea rsi, [rsi + rdi - 1]
lea rdi, [rax + 1]
mov r8, rsi
mov edx, 0x2f
mov rcx, rdi
call fcn.0040bb10
test rax, rax
jne 0x408848
jmp 0x408913
mov rsi, qword [rbx + 0x20]
cmp rsi, 0x10
jb 0x408883
mov rcx, qword [rbp]
jmp 0x408886
mov rcx, rbp
sub rax, rcx
cmp rax, 0xffffffffffffffff
je 0x408913
mov r13, qword [rbx + 0x18]
mov r14, 0xffffffffffffffff
cmp r13, r15
jb 0x4088ec
lea rax, [r13 - 1]
cmp rax, r14
cmova rax, r14
cmp rsi, 0x10
jb 0x4088ba
mov rcx, qword [rbp]
jmp 0x4088bd
mov rcx, rbp
lea rdi, [rcx + rax]
cmp byte [rdi], 0x2f
jne 0x4088cb
cmp byte [rdi], 0x2f
je 0x4088dd
mov rcx, rbx
call fcn.00405670
cmp rdi, rax
je 0x4088ec
sub rdi, r15
jmp 0x4088c1
cmp rsi, 0x10
jb 0x4088e7
mov rbp, qword [rbp]
sub rdi, rbp
jmp 0x4088ef
mov rdi, r14
lea rax, [r13 - 1]
cmp rdi, rax
je 0x408998
mov r8, r15
lea rdx, [0x0041bee8]
mov rcx, rbx
call fcn.00405e30
jmp 0x408998
mov rbp, qword [rbx + 0x18]
mov r14, 0xffffffffffffffff
cmp rbp, r15
jb 0x40897a
lea rax, [rbp - 1]
cmp rax, r14
cmova rax, r14
mov r13, qword [rbx + 0x20]
cmp r13, 0x10
jb 0x408941
lea rsi, [rbx + 8]
mov rcx, qword [rsi]
jmp 0x408948
lea rsi, [rbx + 8]
mov rcx, rsi
lea rdi, [rcx + rax]
nop
cmp byte [rdi], 0x5c
jne 0x40895a
cmp byte [rdi], 0x5c
je 0x40896c
mov rcx, rbx
call fcn.00405670
cmp rdi, rax
je 0x40897a
sub rdi, r15
jmp 0x408950
cmp r13, 0x10
jb 0x408975
mov rsi, qword [rsi]
sub rdi, rsi
jmp 0x40897d
mov rdi, r14
lea rax, [rbp - 1]
cmp rdi, rax
je 0x408998
mov r8, r15
lea rdx, [0x0041b544]
mov rcx, rbx
call fcn.00405e30
mov r8, r12
mov rdx, rbx
lea rcx, [rsp + 0x50]
call fcn.00408670
nop
lea rcx, [rsp + 0x58]
cmp qword [rsp + 0x70], 0x10
cmovae rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0x90]
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov rsi, rax
xor edi, edi
cmp rax, 0xffffffffffffffff
je 0x408a91
nop
nop
nop
lea r8, [rsp + 0xbc]
mov rdx, rbx
lea rcx, [rsp + 0x28]
call fcn.00406190
nop
mov r9, r14
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.00405b30
nop
cmp qword [rsp + 0x48], 0x10
jb 0x408a1c
mov rcx, qword [rsp + 0x30]
call fcn.00409210
lea rcx, [rsp + 0x58]
cmp qword [rsp + 0x70], 0x10
cmovae rcx, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
test al, 0x10
jne 0x408a6e
lea rcx, [rsp + 0x58]
cmp qword [rsp + 0x70], 0x10
cmovae rcx, qword [rsp + 0x58]
mov edx, 0x80
call fcn.0040b1d0
lea rcx, [rsp + 0x58]
cmp qword [rsp + 0x70], 0x10
cmovae rcx, qword [rsp + 0x58]
call fcn.0040b1a0
test eax, eax
cmovne r15d, edi
lea rdx, [rsp + 0x90]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x4089e0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FindClose]
nop
cmp qword [rsp + 0x70], 0x10
jb 0x408aa3
mov rcx, qword [rsp + 0x58]
call fcn.00409210
mov qword [rsp + 0x70], 0xf
mov qword [rsp + 0x68], rdi
mov byte [rsp + 0x58], 0
cmp qword [rbx + 0x20], 0x10
jb 0x408ac6
mov rcx, qword [rbx + 8]
call fcn.00409210
mov qword [rbx + 0x20], 0xf
mov qword [rbx + 0x18], rdi
mov byte [rbx + 8], 0
cmp qword [r12 + 0x20], 0x10
jb 0x408ae8
mov rcx, qword [r12 + 8]
call fcn.00409210
mov qword [r12 + 0x20], 0xf
mov qword [r12 + 0x18], rdi
mov byte [r12 + 8], 0
mov eax, r15d
mov rcx, qword [rsp + 0x1d0]
xor rcx, rsp
call fcn.004095f0
mov rbx, qword [rsp + 0x230]
mov rbp, qword [rsp + 0x238]
mov rsi, qword [rsp + 0x210]
mov rdi, qword [rsp + 0x208]
mov r12, qword [rsp + 0x200]
mov r13, qword [rsp + 0x1f8]
mov r14, qword [rsp + 0x1f0]
mov r15, qword [rsp + 0x1e8]
add rsp, 0x218
ret