Function at 0x140002c40
Capabilities:
Enumerate files on windows

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x590]
sub rsp, 0x690
mov rax, qword [section..data]
xor rax, rsp
mov qword [rbp + 0x580], rax
xor r14d, r14d
mov qword [rbp - 0x78], rcx
mov rdi, rcx
mov qword [rbp - 0x70], r9
lea rax, [rbp - 0x20]
mov qword [rbp - 0x80], r8
mov r15, r8
mov qword [rbp - 0x20], r14
lea ecx, [r14 + 0x30]
mov qword [rbp - 0x18], rax
call fcn.140006270
xorps xmm0, xmm0
mov rbx, rax
movups xmmword [rax], xmm0
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 7
mov word [rax], r14w
cmp rax, rdi
je 0x140002d01
cmp qword [rdi + 0x18], 7
mov r9, rdi
jbe 0x140002cc5
mov r9, qword [rdi]
mov rdx, qword [rdi + 0x10]
cmp rdx, 7
ja 0x140002cf9
cmp qword [rax + 0x18], 7
mov rsi, rbx
jbe 0x140002cdc
mov rsi, qword [rax]
lea rdi, [rdx + rdx]
mov qword [rax + 0x10], rdx
mov r8, rdi
mov rdx, r9
mov rcx, rsi
call fcn.14001bd20
mov word [rdi + rsi], r14w
jmp 0x140002d01
mov rcx, rbx
call fcn.1400023d0
mov qword [rbx + 0x20], r14
lea rcx, [rbx + 0x20]
mov rax, qword [rbp - 0x18]
movabs rsi, 0x7ffffffffffffffe
mov qword [rbx + 0x28], rax
mov rax, qword [rbp - 0x18]
mov qword [rax], rbx
mov qword [rbp - 0x18], rcx
nop word [rax + rax]
mov r12, qword [rbp - 0x20]
test r12, r12
je 0x140003898
mov rdx, r12
lea rcx, [rbp + 0x2a0]
call fcn.140003aa0
mov rcx, qword [rbp + 0x2b0]
test rcx, rcx
je 0x140002d7e
cmp qword [rbp + 0x2b8], 7
lea rax, [rbp + 0x2a0]
lea r8, [0x140025e10]
cmova rax, qword [rbp + 0x2a0]
cmp word [rax + rcx*2 - 2], 0x5c
je 0x140002d85
lea r8, [0x140025e14]
lea rdx, [rbp + 0x2a0]
lea rcx, [rbp + 0x2c0]
call fcn.140003bd0
cmp qword [rbp + 0x2d8], 7
lea rcx, [rbp + 0x2c0]
lea rdx, [rbp + 0x330]
cmova rcx, qword [rbp + 0x2c0]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov r13, rax
cmp rax, 0xffffffffffffffff
jne 0x140002f00
mov rcx, qword [r12 + 0x20]
mov rax, qword [r12 + 0x28]
test rcx, rcx
je 0x140002dde
mov qword [rcx + 0x28], rax
jmp 0x140002de2
mov qword [rbp - 0x18], rax
mov rcx, qword [r12 + 0x28]
mov rax, qword [r12 + 0x20]
mov qword [rcx], rax
mov rdx, qword [r12 + 0x18]
cmp rdx, 7
jbe 0x140002e30
mov rcx, qword [r12]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x140002e2b
mov rdi, qword [rcx - 8]
add rdx, 0x27
sub rcx, rdi
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140003921
mov rcx, rdi
call fcn.1400062ac
mov edx, gethostbyname
mov qword [r12 + 0x10], r14
mov rcx, r12
mov qword [r12 + 0x18], 7
mov word [r12], r14w
call fcn.1400062ac
mov rdx, qword [rbp + 0x2d8]
cmp rdx, 7
jbe 0x140002e96
mov rcx, qword [rbp + 0x2c0]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002e91
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003921
call fcn.1400062ac
mov rdx, qword [rbp + 0x2b8]
mov word [rbp + 0x2c0], r14w
mov qword [rbp + 0x2d8], 7
mov qword [rbp + 0x2d0], r14
cmp rdx, 7
jbe 0x140002d30
mov rcx, qword [rbp + 0x2a0]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002ef5
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003921
call fcn.1400062ac
jmp 0x140002d30
mov byte [rsp + 0x30], 0
mov byte [rsp + 0x31], 0x4c
mov byte [rsp + 0x32], 0x2f
mov byte [rsp + 0x33], 0x2f
mov byte [rsp + 0x34], 0x2f
movzx eax, byte [rsp + 0x31]
movzx eax, byte [rsp + 0x30]
test al, al
jne 0x140002f7b
mov rdi, r14
nop word [rax + rax]
movzx ecx, byte [rsp + rdi + 0x31]
mov eax, 0x81020409
sub ecx, 0x2f
imul ecx, ecx, 0x29
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub ecx, eax
mov eax, 0x81020409
add ecx, 0x7f
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub ecx, eax
mov byte [rsp + rdi + 0x31], cl
inc rdi
cmp rdi, 4
jb 0x140002f30
lea rdx, [rsp + 0x31]
lea rcx, [rbp + 0x35c]
call qword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
je 0x1400037eb
mov byte [rsp + 0x38], 0
mov byte [rsp + 0x39], 0x10
mov byte [rsp + 0x3a], 0x46
mov byte [rsp + 0x3b], 0x10
mov byte [rsp + 0x3c], 0x46
mov byte [rsp + 0x3d], 0x46
mov byte [rsp + 0x3e], 0x46
movzx eax, byte [rsp + 0x39]
movzx eax, byte [rsp + 0x38]
test al, al
jne 0x14000301f
mov rdi, r14
nop dword [rax]
movzx ecx, byte [rsp + rdi + 0x39]
mov eax, 0x46
sub eax, ecx
imul ecx, eax, 0x3e
mov eax, 0x81020409
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub ecx, eax
mov eax, 0x81020409
add ecx, 0x7f
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub ecx, eax
mov byte [rsp + rdi + 0x39], cl
inc rdi
cmp rdi, 6
jb 0x140002fd0
lea rdx, [rsp + 0x39]
lea rcx, [rbp + 0x35c]
call qword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
je 0x1400037eb
mov eax, dword [rbp + 0x330]
bt eax, 0xa
jb 0x1400037eb
test al, 0x10
je 0x140003448
lea rcx, [rbp + 0x35c]
call fcn.140002540
test eax, eax
je 0x140003448
xorps xmm0, xmm0
lea rax, [rbp + 0x35c]
movups xmmword [rsp + 0x40], xmm0
mov rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x140003080
cmp rbx, rsi
ja 0x140003939
cmp rbx, 7
ja 0x1400030d4
lea rdi, [rbx + rbx]
mov qword [rsp + 0x50], rbx
mov r8, rdi
mov qword [rsp + 0x58], 7
lea rdx, [rbp + 0x35c]
lea rcx, [rsp + 0x40]
call fcn.14001bd20
mov word [rsp + rdi + 0x40], r14w
mov rsi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x50]
jmp 0x14000319f
mov rsi, rbx
movabs rax, 0x7ffffffffffffffe
or rsi, 7
mov qword [rbp + 0x320], rsi
cmp rsi, rax
jbe 0x140003104
mov rsi, rax
movabs rax, 0x7fffffffffffffff
lea rcx, [rax + rax]
jmp 0x140003137
mov eax, 0xa
cmp rsi, rax
mov qword [rbp - 0x28], rax
cmovb rsi, rax
movabs rax, 0x7fffffffffffffff
lea rcx, [rsi + 1]
cmp rcx, rax
ja 0x140003933
add rcx, rcx
cmp rcx, 0x1000
jb 0x140003163
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140003933
mov rcx, rax
call fcn.140006270
test rax, rax
je 0x140003921
lea r14, [rax + 0x27]
and r14, 0xffffffffffffffe0
mov qword [r14 - 8], rax
jmp 0x140003170
test rcx, rcx
je 0x140003170
call fcn.140006270
mov r14, rax
lea rdi, [rbx + rbx]
mov qword [rsp + 0x40], r14
mov r8, rdi
mov qword [rsp + 0x50], rbx
lea rdx, [rbp + 0x35c]
mov qword [rsp + 0x58], rsi
mov rcx, r14
call fcn.14001bd20
xor eax, eax
mov word [rdi + r14], ax
xor r14d, r14d
mov rcx, qword [rbp + 0x2b0]
test rcx, rcx
je 0x1400031ec
cmp qword [rbp + 0x2b8], 7
lea rax, [rbp + 0x2a0]
cmova rax, qword [rbp + 0x2a0]
cmp word [rax + rcx*2 - 2], 0x5c
jne 0x1400031ec
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x2a0]
lea rcx, [rbp + 0x2e0]
call fcn.140003d50
mov rsi, qword [rsp + 0x58]
jmp 0x1400032ea
lea r8, [0x140025e1c]
lea rdx, [rbp + 0x2a0]
lea rcx, [rbp - 0x68]
call fcn.140003bd0
cmp rsi, 7
lea r9, [rsp + 0x40]
mov rdi, rax
cmova r9, qword [rsp + 0x40]
mov rdx, qword [rax + 0x18]
mov rcx, qword [rax + 0x10]
mov rax, rdx
sub rax, rcx
cmp rbx, rax
ja 0x14000325c
lea r15, [rbx + rcx]
mov r14, rdi
mov qword [rdi + 0x10], r15
cmp rdx, 7
jbe 0x14000323c
mov r14, qword [rdi]
lea rcx, [r14 + rcx*2]
mov rdx, r9
lea r8, [rbx + rbx]
call fcn.14001bd20
xor eax, eax
mov word [r14 + r15*2], ax
xor r14d, r14d
mov r15, qword [rbp - 0x80]
jmp 0x140003274
mov rdx, rbx
mov qword [rsp + 0x20], rbx
mov rcx, rdi
call fcn.140003ed0
mov rsi, qword [rsp + 0x58]
mov rdi, rax
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
mov qword [rdi + 0x10], r14
mov qword [rdi + 0x18], 7
mov word [rdi], r14w
mov rdx, qword [rbp - 0x50]
movups xmmword [rbp + 0x2e0], xmm0
movups xmmword [rbp + 0x2f0], xmm1
cmp rdx, 7
jbe 0x1400032d9
mov rcx, qword [rbp - 0x68]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400032d4
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000392d
call fcn.1400062ac
mov qword [rbp - 0x58], r14
mov qword [rbp - 0x50], 7
mov word [rbp - 0x68], r14w
cmp rsi, 7
jbe 0x140003327
mov rcx, qword [rsp + 0x40]
lea rdx, [rsi*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003322
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003921
call fcn.1400062ac
mov ecx, gethostbyname
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], r14w
call fcn.140006270
mov rsi, qword [rbp + 0x2f8]
mov rdi, rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 7
mov word [rax], r14w
lea rax, [rbp + 0x2e0]
cmp rdi, rax
je 0x1400033cf
mov rdx, qword [rbp + 0x2f0]
lea r9, [rbp + 0x2e0]
cmp rsi, 7
cmova r9, qword [rbp + 0x2e0]
cmp rdx, 7
ja 0x1400033c0
cmp qword [rdi + 0x18], 7
mov r14, rdi
jbe 0x14000339e
mov r14, qword [rdi]
lea rbx, [rdx + rdx]
mov qword [rdi + 0x10], rdx
mov r8, rbx
mov rdx, r9
mov rcx, r14
call fcn.14001bd20
xor eax, eax
mov word [rbx + r14], ax
xor r14d, r14d
jmp 0x1400033cf
mov rcx, rdi
call fcn.1400023d0
mov rsi, qword [rbp + 0x2f8]
mov qword [rdi + 0x20], r14
lea rcx, [rdi + 0x20]
mov rax, qword [rbp - 0x18]
mov qword [rdi + 0x28], rax
mov rax, qword [rbp - 0x18]
mov qword [rax], rdi
mov qword [rbp - 0x18], rcx
cmp rsi, 7
jbe 0x140003429
mov rcx, qword [rbp + 0x2e0]
lea rdx, [rsi*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003424
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003921
call fcn.1400062ac
mov qword [rbp + 0x2f0], r14
mov qword [rbp + 0x2f8], 7
mov word [rbp + 0x2e0], r14w
jmp 0x1400037e1
lea rdx, str..Heda
lea rcx, [rbp + 0x35c]
call qword [sym.imp.SHLWAPI.dll_StrStrIW]
test rax, rax
je 0x1400037eb
xorps xmm0, xmm0
lea rax, [rbp + 0x35c]
movups xmmword [rsp + 0x60], xmm0
mov rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x140003480
cmp rbx, rsi
ja 0x140003951
cmp rbx, 7
ja 0x1400034d4
lea rdi, [rbx + rbx]
mov qword [rsp + 0x70], rbx
mov r8, rdi
mov qword [rsp + 0x78], 7
lea rdx, [rbp + 0x35c]
lea rcx, [rsp + 0x60]
call fcn.14001bd20
mov word [rsp + rdi + 0x60], r14w
mov rsi, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
jmp 0x140003595
mov rsi, rbx
movabs rax, 0x7ffffffffffffffe
or rsi, 7
cmp rsi, rax
jbe 0x1400034fd
mov rsi, rax
movabs rax, 0x7fffffffffffffff
lea rcx, [rax + rax]
jmp 0x14000352d
cmp rsi, 0xa
mov eax, 0xa
cmovb rsi, rax
movabs rax, 0x7fffffffffffffff
lea rcx, [rsi + 1]
cmp rcx, rax
ja 0x14000394b
add rcx, rcx
cmp rcx, 0x1000
jb 0x140003559
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14000394b
mov rcx, rax
call fcn.140006270
test rax, rax
je 0x140003945
lea r14, [rax + 0x27]
and r14, 0xffffffffffffffe0
mov qword [r14 - 8], rax
jmp 0x140003566
test rcx, rcx
je 0x140003566
call fcn.140006270
mov r14, rax
lea rdi, [rbx + rbx]
mov qword [rsp + 0x60], r14
mov r8, rdi
mov qword [rsp + 0x70], rbx
lea rdx, [rbp + 0x35c]
mov qword [rsp + 0x78], rsi
mov rcx, r14
call fcn.14001bd20
xor eax, eax
mov word [rdi + r14], ax
xor r14d, r14d
mov rcx, qword [rbp + 0x2b0]
test rcx, rcx
je 0x1400035e2
cmp qword [rbp + 0x2b8], 7
lea rax, [rbp + 0x2a0]
cmova rax, qword [rbp + 0x2a0]
cmp word [rax + rcx*2 - 2], 0x5c
jne 0x1400035e2
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x2a0]
lea rcx, [rbp + 0x300]
call fcn.140003d50
mov rsi, qword [rsp + 0x78]
jmp 0x1400036f8
lea r8, [0x140025e1c]
lea rdx, [rbp + 0x2a0]
lea rcx, [rbp - 0x48]
call fcn.140003bd0
cmp rsi, 7
lea r9, [rsp + 0x60]
mov rdi, rax
cmova r9, qword [rsp + 0x60]
mov rdx, qword [rax + 0x18]
mov rcx, qword [rax + 0x10]
mov rax, rdx
sub rax, rcx
cmp rbx, rax
ja 0x140003652
lea r15, [rbx + rcx]
mov r14, rdi
mov qword [rdi + 0x10], r15
cmp rdx, 7
jbe 0x140003632
mov r14, qword [rdi]
lea r8, [rbx + rbx]
mov rdx, r9
lea rcx, [r14 + rcx*2]
call fcn.14001bd20
xor eax, eax
mov word [r14 + r15*2], ax
xor r14d, r14d
mov r15, qword [rbp - 0x80]
jmp 0x14000366a
mov rdx, rbx
mov qword [rsp + 0x20], rbx
mov rcx, rdi
call fcn.140003ed0
mov rsi, qword [rsp + 0x78]
mov rdi, rax
mov qword [rbp + 0x310], r14
xorps xmm0, xmm0
movups xmmword [rbp + 0x300], xmm0
mov qword [rbp + 0x318], r14
movups xmm0, xmmword [rdi]
movups xmmword [rbp + 0x300], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbp + 0x310], xmm1
mov qword [rdi + 0x10], r14
mov qword [rdi + 0x18], 7
mov word [rdi], r14w
mov rdx, qword [rbp - 0x30]
cmp rdx, 7
jbe 0x1400036e7
mov rcx, qword [rbp - 0x48]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400036e2
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000393f
call fcn.1400062ac
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x30], 7
mov word [rbp - 0x48], r14w
cmp rsi, 7
jbe 0x140003735
mov rcx, qword [rsp + 0x60]
lea rdx, [rsi*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003730
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003945
call fcn.1400062ac
mov rdx, qword [rbp - 0x70]
lea rdi, [rbp - 0x10]
xor eax, eax
mov qword [rsp + 0x70], r14
cmp qword [rbp + 0x318], 7
mov ecx, 0x2a8
rep stosb byte [rdi], al
lea rax, [rbp + 0x300]
mov qword [rsp + 0x78], 7
cmova rax, qword [rbp + 0x300]
lea rcx, [rbp - 0x10]
mov r9, r15
mov qword [rbp - 0x10], rax
mov word [rsp + 0x60], r14w
call fcn.140001d80
mov rdx, qword [rbp + 0x318]
cmp rdx, 7
jbe 0x1400037c7
mov rcx, qword [rbp + 0x300]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400037c2
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003945
call fcn.1400062ac
mov qword [rbp + 0x310], r14
mov qword [rbp + 0x318], 7
mov word [rbp + 0x300], r14w
movabs rsi, 0x7ffffffffffffffe
lea rdx, [rbp + 0x330]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x140002f00
mov rcx, qword [r12 + 0x20]
mov rax, qword [r12 + 0x28]
test rcx, rcx
je 0x140003818
mov qword [rcx + 0x28], rax
jmp 0x14000381c
mov qword [rbp - 0x18], rax
mov rcx, qword [r12 + 0x28]
mov rax, qword [r12 + 0x20]
mov qword [rcx], rax
mov rdx, qword [r12 + 0x18]
cmp rdx, 7
jbe 0x14000386a
mov rcx, qword [r12]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x140003865
mov rdi, qword [rcx - 8]
add rdx, 0x27
sub rcx, rdi
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140003921
mov rcx, rdi
call fcn.1400062ac
mov edx, gethostbyname
mov qword [r12 + 0x10], r14
mov rcx, r12
mov qword [r12 + 0x18], 7
mov word [r12], r14w
call fcn.1400062ac
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_FindClose]
jmp 0x140002e50
lea rcx, [0x140025e20]
call fcn.1400016b0
mov rdi, qword [rbp - 0x78]
mov rdx, qword [rdi + 0x18]
cmp rdx, 7
jbe 0x1400038e7
mov rcx, qword [rdi]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x1400038e2
mov rdi, qword [rcx - 8]
add rdx, 0x27
sub rcx, rdi
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140003927
mov rcx, rdi
mov rdi, qword [rbp - 0x78]
call fcn.1400062ac
mov qword [rdi + 0x10], r14
mov qword [rdi + 0x18], 7
mov word [rdi], r14w
mov rcx, qword [rbp + 0x580]
xor rcx, rsp
call fcn.140006250
mov rbx, qword [rsp + 0x6d8]
add rsp, 0x690
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14000d780
int3
call fcn.14000d780
int3
call fcn.14000d780
int3
call fcn.140002300
int3
call fcn.1400023a0
int3
call fcn.14000d780
int3
call fcn.14000d780
int3
call fcn.140002300
int3
call fcn.1400023a0
int3