Function at 0x14001c6e0
Capabilities:
Enumerate files on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x5f8
movaps xmmword [rsp + 0x5e0], xmm6
mov r15, r8
xorps xmm0, xmm0
movaps xmmword [rsp + 0x200], xmm0
test rcx, rcx
je 0x14001c931
mov rdi, rdx
mov rsi, rcx
movups xmm1, xmmword [r9 + 0x50]
movaps xmmword [rsp + 0x120], xmm1
movups xmm1, xmmword [r9 + 0x40]
movaps xmmword [rsp + 0x110], xmm1
movups xmm1, xmmword [r9]
movups xmm2, xmmword [r9 + 0x10]
movups xmm3, xmmword [r9 + 0x20]
movups xmm4, xmmword [r9 + 0x30]
movaps xmmword [rsp + 0x100], xmm4
movaps xmmword [rsp + 0xf0], xmm3
movaps xmmword [rsp + 0xe0], xmm2
movaps xmmword [rsp + 0xd0], xmm1
movups xmm1, xmmword [rdx]
movaps xmmword [rsp + 0xd0], xmm1
movaps xmmword [rsp + 0x320], xmm0
movaps xmmword [rsp + 0x310], xmm0
movaps xmmword [rsp + 0x300], xmm0
movaps xmmword [rsp + 0x2f0], xmm0
mov qword [rsp + 0x330], 0
lea rcx, [0x14008e408]
lea r8, [rsp + 0x2f0]
mov rdx, rsi
call fcn.14002b620
movaps xmm0, xmmword [rsp + 0x2f0]
movaps xmm1, xmmword [rsp + 0x300]
movaps xmm2, xmmword [rsp + 0x310]
movaps xmm3, xmmword [rsp + 0x320]
movaps xmmword [rsp + 0x360], xmm2
movaps xmmword [rsp + 0x340], xmm0
movaps xmmword [rsp + 0x350], xmm1
movaps xmmword [rsp + 0x370], xmm3
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0x380], rax
cmp byte [rsp + 0x36c], 0
je 0x14001cbf7
lea rbp, [rsp + 0xe0]
cmp rbp, rdi
je 0x14001c915
movzx eax, byte [rsp + 0xe0]
cmp al, byte [rdi]
jne 0x14001c93a
movzx eax, byte [rsp + 0xe1]
cmp al, byte [rdi + 1]
jne 0x14001c93a
movzx eax, byte [rsp + 0xe2]
cmp al, byte [rdi + 2]
jne 0x14001c93a
movzx eax, byte [rsp + 0xe3]
cmp al, byte [rdi + 3]
jne 0x14001c93a
movzx eax, byte [rsp + 0xe4]
cmp al, byte [rdi + 4]
jne 0x14001c93a
movzx eax, byte [rsp + 0xe5]
cmp al, byte [rdi + 5]
jne 0x14001c93a
movzx eax, byte [rsp + 0xe6]
cmp al, byte [rdi + 6]
jne 0x14001c93a
movzx eax, byte [rsp + 0xe7]
cmp al, byte [rdi + 7]
jne 0x14001c93a
movzx eax, byte [rsp + 0xe8]
cmp al, byte [rdi + 8]
jne 0x14001c93a
movzx eax, byte [rsp + 0xe9]
cmp al, byte [rdi + 9]
jne 0x14001c93a
movzx eax, byte [rsp + 0xea]
cmp al, byte [rdi + 0xa]
jne 0x14001c93a
movzx eax, byte [rsp + 0xeb]
cmp al, byte [rdi + 0xb]
jne 0x14001c93a
movzx eax, byte [rsp + 0xec]
cmp al, byte [rdi + 0xc]
jne 0x14001c93a
movzx eax, byte [rsp + 0xed]
cmp al, byte [rdi + 0xd]
jne 0x14001c93a
movzx eax, byte [rsp + 0xee]
cmp al, byte [rdi + 0xe]
jne 0x14001c93a
movzx eax, byte [rsp + 0xef]
cmp al, byte [rdi + 0xf]
jne 0x14001c93a
xorps xmm0, xmm0
movaps xmmword [rsp + 0x180], xmm0
mov qword [rsp + 0x190], 0
jmp 0x14001caba
movups xmmword [r15], xmm0
jmp 0x14001d74d
xorps xmm0, xmm0
movaps xmmword [rsp + 0x180], xmm0
mov qword [rsp + 0x190], 0
movaps xmmword [rsp + 0x220], xmm0
movaps xmmword [rsp + 0x230], xmm0
mov qword [rsp + 0x240], 0
movaps xmmword [rsp + 0x150], xmm0
mov qword [rsp + 0x160], 0
mov eax, dword [0x14009e890]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rax, [rax + 0x10]
cmp qword [rsp + 0xe8], rax
jne 0x14001ca62
movaps xmmword [rsp + 0x80], xmm0
mov qword [rsp + 0x90], 0
mov eax, dword [0x14009e890]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rcx, [rax + 0x10]
mov qword [rsp + 0x80], rcx
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x88], rax
test rax, rax
je 0x14001c9ff
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x90], rax
mov eax, dword [0x14009e890]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
inc qword [rax + 0x40]
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x150], rcx
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0x158], rcx
mov qword [rsp + 0x160], rax
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0x140], rax
mov rcx, qword [rsp + 0x150]
mov qword [rsp + 0x130], rcx
mov rcx, qword [rsp + 0x158]
mov qword [rsp + 0x138], rcx
mov rcx, qword [rsp + 0x130]
mov qword [rsp + 0x180], rcx
mov rcx, qword [rsp + 0x138]
mov qword [rsp + 0x188], rcx
mov qword [rsp + 0x190], rax
lea rax, str.c:_odin_core_os_dir_windows.odin
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x228], 0x20
movabs rax, 0x200000045
mov qword [rsp + 0x230], rax
lea rax, str.read_dir
mov qword [rsp + 0x238], rax
mov qword [rsp + 0x240], 8
xorps xmm6, xmm6
movaps xmmword [rsp + 0x2d0], xmm6
movaps xmmword [rsp + 0x260], xmm6
lea r8, [rsp + 0x260]
lea r9, [rsp + 0xd0]
mov rcx, rsi
mov rdx, rbp
call fcn.140027c30
mov rsi, qword [rsp + 0x260]
mov rdi, qword [rsp + 0x268]
mov qword [rsp + 0x2d0], rsi
mov qword [rsp + 0x2d8], rdi
test rdi, rdi
je 0x14001cc03
test rax, rax
jne 0x14001cc03
mov r14, qword [rsp + 0xd0]
mov rbx, qword [rsp + 0xd8]
test r14, r14
je 0x14001cc0c
xorps xmm0, xmm0
movaps xmmword [rsp + 0x80], xmm0
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x80]
mov qword [rsp + 0x38], rax
lea rax, str.c:_odin_core_os_dir_windows.odin
mov qword [rsp + 0x30], rax
movups xmmword [rsp + 0x20], xmm0
xor r12d, r12d
mov r8d, 0x1c20
mov r9d, 8
mov rcx, rbx
xor edx, edx
call r14
mov r13d, 0
test al, al
jne 0x14001cc15
mov r13, qword [rsp + 0x80]
mov r14, qword [rsp + 0xd0]
mov rbx, qword [rsp + 0xd8]
mov r12d, 0x64
test r13, r13
jne 0x14001cc15
jmp 0x14001cc0f
xorps xmm0, xmm0
movups xmmword [r15], xmm0
jmp 0x14001d74d
movups xmmword [r15], xmm6
jmp 0x14001d730
xor r14d, r14d
xor r12d, r12d
xor r13d, r13d
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rbx
lea rcx, [rdi + 3]
xorps xmm0, xmm0
movaps xmmword [rsp + 0x250], xmm0
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x20], rax
lea r8, str.c:_odin_core_os_dir_windows.odin
lea r9, [rsp + 0x250]
mov rdx, rbp
call fcn.14004c4c0
mov r14, qword [rsp + 0x250]
mov rbx, qword [rsp + 0x258]
cmp rbx, rdi
mov r8, rdi
cmovl r8, rbx
test r8, r8
jle 0x14001cc7f
add r8, r8
mov rcx, r14
mov rdx, rsi
call fcn.1400729c0
cmp rdi, rbx
jae 0x14001d78d
mov word [r14 + rdi*2], 0x5c
lea r9, [rdi + 1]
cmp r9, rbx
jae 0x14001d7ac
mov word [r14 + rdi*2 + 2], 0x2a
lea r9, [rdi + 2]
cmp r9, rbx
jae 0x14001d7c8
mov word [r14 + rdi*2 + 4], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x2c0], xmm0
mov qword [rsp + 0x80], rsi
xor eax, eax
test rdi, rdi
jle 0x14001d769
mov rbx, r12
nop word [rax + rax]
cmp word [rsi + rax*2], 0
je 0x14001ccf2
inc rax
cmp rdi, rax
jne 0x14001cce0
mov rax, rdi
test rax, rax
js 0x14001d769
cmp rax, rdi
jg 0x14001d769
mov qword [rsp + 0x88], rax
cmp rax, 4
jb 0x14001cd7c
cmp word [rsi], 0x5c
jne 0x14001cd7c
cmp word [rsi + 2], 0x5c
jne 0x14001cd7c
cmp word [rsi + 4], 0x3f
jne 0x14001cd7c
cmp word [rsi + 6], 0x5c
jne 0x14001cd7c
lea rcx, [rsi + 8]
lea rdx, [rax - 4]
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x88], rdx
cmp rdx, 3
jb 0x14001cd7c
cmp word [rcx], 0x55
jne 0x14001cd7c
cmp word [rsi + 0xa], 0x4e
jne 0x14001cd7c
cmp word [rsi + 0xc], 0x43
jne 0x14001cd7c
add rsi, 0xc
add rax, 0xfffffffffffffffa
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x88], rax
mov word [rsi], 0x5c
mov qword [rsp + 0x48], r13
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x150], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x158], rax
mov rdx, qword [rsp + 0x158]
test rdx, rdx
je 0x14001cdf9
mov rcx, qword [rsp + 0x150]
xorps xmm0, xmm0
movaps xmmword [rsp + 0x80], xmm0
lea r8, [rsp + 0xd0]
mov qword [rsp + 0x20], r8
lea r9, [rsp + 0x80]
call fcn.14002c8d0
xor r12d, r12d
mov ecx, 0
test al, al
jne 0x14001cdfe
mov r12, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x88]
jmp 0x14001cdfe
xor r12d, r12d
xor ecx, ecx
mov qword [rsp + 0x1f0], r15
mov qword [rsp + 0x2c0], r12
mov qword [rsp + 0x148], rcx
mov qword [rsp + 0x2c8], rcx
lea rsi, [rsp + 0x390]
mov r8d, 0x250
mov rcx, rsi
xor edx, edx
call fcn.140073060
mov rcx, r14
mov rdx, rsi
call sub.KERNEL32.dll_FindFirstFileW
mov rdi, rax
mov r14, 0xffffffffffffffff
xorps xmm6, xmm6
lea r13, str.c:_odin_core_os_dir_windows.odin
xor esi, esi
lea r15, [rsp + 0xd0]
mov qword [rsp + 0x1f8], rax
mov qword [rsp + 0xc8], r12
jmp 0x14001cea3
dec r14
mov rdi, qword [rsp + 0x1f8]
mov rcx, rdi
lea rdx, [rsp + 0x390]
call sub.KERNEL32.dll_FindNextFileW
test eax, eax
je 0x14001d69d
test r14, r14
je 0x14001d6a5
test rdi, rdi
je 0x14001d6a5
lea rax, [rsp + 0xa8]
movups xmmword [rax + 0x10], xmm6
movups xmmword [rax], xmm6
cmp word [rsp + 0x3bc], 0x2e
movabs rdi, 0x5e6684f4b3960000
jne 0x14001cf30
movzx eax, word [rsp + 0x3be]
cmp eax, 0x2e
je 0x14001cf1b
test eax, eax
jne 0x14001cf30
movaps xmmword [rsp + 0x1d0], xmm6
movaps xmmword [rsp + 0x1c0], xmm6
movaps xmmword [rsp + 0x1b0], xmm6
movaps xmmword [rsp + 0x1a0], xmm6
mov qword [rsp + 0x1e0], 0
jmp 0x14001d2b1
cmp word [rsp + 0x3c0], 0
je 0x14001ceea
nop word cs:[rax + rax]
movaps xmmword [rsp + 0x130], xmm6
lea rax, [0x14008b443]
mov qword [rsp + 0x160], rax
mov qword [rsp + 0x168], 1
movaps xmmword [rsp + 0x60], xmm6
mov qword [rsp + 0x20], r15
mov edx, 0x104
lea rcx, [rsp + 0x3bc]
mov r8, rbp
lea r9, [rsp + 0x60]
call fcn.14002c8d0
test al, al
jne 0x14001cf90
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x60]
jmp 0x14001cf94
xor eax, eax
xor ecx, ecx
mov qword [rsp + 0x150], r12
mov rdx, qword [rsp + 0x148]
mov qword [rsp + 0x158], rdx
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x178], rax
lea rax, [rsp + 0x150]
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x138], 3
movaps xmmword [rsp + 0x60], xmm6
mov qword [rsp + 0x20], r15
lea rcx, [rsp + 0x130]
mov rdx, r15
lea r8, str.c:_odin_core_os_dir_windows.odin
lea r9, [rsp + 0x60]
call fcn.14002dcc0
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0x210], rax
mov qword [rsp + 0x218], rcx
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], rcx
movaps xmmword [rsp + 0x2e0], xmm6
lea rcx, [rsp + 0x2e0]
lea rdx, [rsp + 0x210]
call fcn.140027d00
movaps xmm0, xmmword [rsp + 0x2e0]
movups xmmword [rsp + 0x90], xmm0
mov eax, dword [rsp + 0x390]
mov ecx, dword [rsp + 0x3ac]
shl rcx, 0x20
mov edx, dword [rsp + 0x3b0]
or rdx, rcx
mov qword [rsp + 0xa0], rdx
test al, 1
mov r8d, 0x124
mov ecx, 0x1b6
cmove r8d, ecx
mov dword [rsp + 0xa8], r8d
test eax, 0x400
je 0x14001d0b5
mov ecx, 0x100000
mov edx, dword [rsp + 0x3b4]
cmp edx, 0xa0000003
je 0x14001d0be
cmp edx, 0xa000000c
je 0x14001d0be
mov ecx, 0x10049
test al, 0x10
je 0x14001d0c9
or r8d, ecx
mov dword [rsp + 0xa8], r8d
imul rcx, qword [rsp + 0x394], 0x64
add rcx, rdi
cmp rcx, 0x3b9aca00
jb 0x14001d130
mov rax, rcx
movabs rdx, 0x112e0be826d694b3
imul rdx
mov rax, rdx
shr rax, 0x3f
sar rdx, 0x1a
add rdx, rax
imul rax, rdx, 0xffffffffc4653600
lea r9, [rax + rcx]
mov r10, r9
sar r10, 0x3f
add r10, rdx
test r9, r9
lea rcx, [rax + rcx + 0x3b9aca00]
cmovns rcx, r9
imul rax, r10, 0x3b9aca00
jmp 0x14001d132
xor eax, eax
add rax, rcx
mov qword [rsp + 0xb0], rax
imul rcx, qword [rsp + 0x3a4], 0x64
add rcx, rdi
cmp rcx, 0x3b9aca00
jb 0x14001d1a0
mov rax, rcx
movabs rdx, 0x112e0be826d694b3
imul rdx
mov rax, rdx
shr rax, 0x3f
sar rdx, 0x1a
add rdx, rax
imul rax, rdx, 0xffffffffc4653600
lea r9, [rax + rcx]
mov r10, r9
sar r10, 0x3f
add r10, rdx
test r9, r9
lea rcx, [rax + rcx + 0x3b9aca00]
cmovns rcx, r9
imul rax, r10, 0x3b9aca00
jmp 0x14001d1a2
xor eax, eax
add rax, rcx
mov qword [rsp + 0xb8], rax
imul rcx, qword [rsp + 0x39c], 0x64
add rcx, rdi
cmp rcx, 0x3b9aca00
jb 0x14001d210
mov rax, rcx
movabs rdx, 0x112e0be826d694b3
imul rdx
mov rax, rdx
shr rax, 0x3f
sar rdx, 0x1a
add rdx, rax
imul rax, rdx, 0xffffffffc4653600
lea r9, [rax + rcx]
mov r10, r9
sar r10, 0x3f
add r10, rdx
test r9, r9
lea rcx, [rax + rcx + 0x3b9aca00]
cmovns rcx, r9
imul rax, r10, 0x3b9aca00
jmp 0x14001d212
xor eax, eax
add rax, rcx
mov qword [rsp + 0xc0], rax
shr r8d, 0x10
and r8b, 1
mov byte [rsp + 0xac], r8b
movups xmm0, xmmword [rsp + 0x80]
movups xmm1, xmmword [rsp + 0x90]
movups xmm2, xmmword [rsp + 0xb0]
movaps xmmword [rsp + 0x1a0], xmm0
movaps xmmword [rsp + 0x1b0], xmm1
movaps xmmword [rsp + 0x1d0], xmm2
mov qword [rsp + 0x1e0], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x1c0], rax
mov eax, dword [rsp + 0xa8]
mov dword [rsp + 0x1c8], eax
movzx eax, byte [rsp + 0xac]
mov byte [rsp + 0x1cc], al
movzx eax, word [rsp + 0xad]
mov word [rsp + 0x1cd], ax
movzx eax, byte [rsp + 0xaf]
mov byte [rsp + 0x1cf], al
movaps xmm0, xmmword [rsp + 0x1a0]
movaps xmm1, xmmword [rsp + 0x1b0]
mov rax, qword [rsp + 0x1c0]
mov ecx, dword [rsp + 0x1c8]
movzx edx, byte [rsp + 0x1cc]
movzx r8d, word [rsp + 0x1cd]
movzx r9d, byte [rsp + 0x1cf]
movaps xmm2, xmmword [rsp + 0x1d0]
movaps xmmword [rsp + 0x280], xmm1
movaps xmmword [rsp + 0x270], xmm0
mov qword [rsp + 0x290], rax
mov dword [rsp + 0x298], ecx
mov byte [rsp + 0x29c], dl
mov word [rsp + 0x29d], r8w
mov byte [rsp + 0x29f], r9b
movaps xmmword [rsp + 0x2a0], xmm2
mov rax, qword [rsp + 0x1e0]
mov qword [rsp + 0x2b0], rax
cmp qword [rsp + 0x288], 0
je 0x14001ce83
lea rdi, [rsi + 1]
cmp rbx, rdi
jge 0x14001d634
mov rax, rbx
lea rbx, [rbx*2 + 8]
mov r12, rax
cmp rax, rbx
jge 0x14001d3ee
cmp qword [rsp + 0x50], 0
jne 0x14001d39b
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x50], rax
test rax, rax
je 0x14001d84b
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x58], rax
lea rax, [rbx*8]
lea rbp, [rax + rax*8]
lea rax, [r12*8]
lea rdx, [rax + rax*8]
test rbp, rbp
je 0x14001d3f6
cmp qword [rsp + 0x48], 0
je 0x14001d44e
cmp rdx, rbp
mov rcx, qword [rsp + 0x48]
jne 0x14001d49b
mov eax, ecx
and eax, 7
jne 0x14001d49b
mov r15, rcx
test rbp, rbp
jns 0x14001d5f9
jmp 0x14001d7e4
mov rbx, r12
jmp 0x14001d62c
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x14001d531
movaps xmmword [rsp + 0x80], xmm6
mov qword [rsp + 0x40], r15
lea rax, [rsp + 0x80]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x58]
mov dl, 1
xor r8d, r8d
xor r9d, r9d
call qword [rsp + 0x50]
xor r15d, r15d
test al, al
jne 0x14001d546
jmp 0x14001d5f9
movaps xmmword [rsp + 0x150], xmm6
mov qword [rsp + 0x40], r15
lea rax, [rsp + 0x150]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r13
movups xmmword [rsp + 0x20], xmm6
mov r9d, 8
mov rcx, qword [rsp + 0x58]
xor edx, edx
mov r8, rbp
call qword [rsp + 0x50]
mov r15, qword [rsp + 0x150]
test al, al
jne 0x14001d546
jmp 0x14001d5f9
movaps xmmword [rsp + 0x60], xmm6
mov qword [rsp + 0x40], r15
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x1e8], rdx
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
mov r9d, 8
mov rcx, qword [rsp + 0x58]
mov dl, 3
mov r8, rbp
call qword [rsp + 0x50]
cmp al, 4
jne 0x14001d539
movaps xmmword [rsp + 0x130], xmm6
mov qword [rsp + 0x40], r15
lea rax, [rsp + 0x130]
mov qword [rsp + 0x38], rax
lea rax, str.c:_odin_core_os_dir_windows.odin
mov qword [rsp + 0x30], rax
movups xmmword [rsp + 0x20], xmm6
mov r9d, 8
mov rcx, qword [rsp + 0x58]
xor edx, edx
mov r8, rbp
call qword [rsp + 0x50]
test al, al
je 0x14001d55e
lea rbp, [rsp + 0xe0]
mov rbx, r12
jmp 0x14001d62c
xor r15d, r15d
jmp 0x14001d5f9
mov r15, qword [rsp + 0x60]
test al, al
je 0x14001d5f9
lea rbp, [rsp + 0xe0]
lea r15, [rsp + 0xd0]
mov rbx, r12
jmp 0x14001d62c
mov r9, qword [rsp + 0x1e8]
test r9, r9
js 0x14001d7fe
mov r15, qword [rsp + 0x130]
mov r8, qword [rsp + 0x138]
cmp r8, r9
cmovge r8, r9
test r8, r8
mov rdx, qword [rsp + 0x48]
jle 0x14001d5af
mov rcx, r15
mov qword [rsp + 0x48], rdx
mov rdx, qword [rsp + 0x48]
call fcn.1400729c0
mov rdx, qword [rsp + 0x48]
mov r9, qword [rsp + 0x1e8]
movaps xmmword [rsp + 0x210], xmm6
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x210]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x20], rdx
mov rcx, qword [rsp + 0x58]
mov dl, 1
xor r8d, r8d
xor r9d, r9d
call qword [rsp + 0x50]
test al, al
jne 0x14001d546
test r15, r15
sete al
test rbp, rbp
setg cl
test cl, al
mov rax, qword [rsp + 0x48]
cmove rax, r15
mov qword [rsp + 0x48], rax
cmove r12, rbx
mov rbx, r12
lea rbp, [rsp + 0xe0]
lea r15, [rsp + 0xd0]
mov r12, qword [rsp + 0xc8]
mov rax, rbx
sub rax, rsi
test rax, rax
jle 0x14001ce80
mov rdx, qword [rsp + 0x48]
test rdx, rdx
je 0x14001d815
lea rax, [rsi + rsi*8]
movaps xmm0, xmmword [rsp + 0x270]
movaps xmm1, xmmword [rsp + 0x280]
movaps xmm2, xmmword [rsp + 0x290]
movaps xmm3, xmmword [rsp + 0x2a0]
mov rcx, qword [rsp + 0x2b0]
mov qword [rdx + rax*8 + 0x40], rcx
movups xmmword [rdx + rax*8 + 0x30], xmm3
movups xmmword [rdx + rax*8 + 0x20], xmm2
movups xmmword [rdx + rax*8 + 0x10], xmm1
movups xmmword [rdx + rax*8], xmm0
mov rsi, rdi
jmp 0x14001ce80
call sub.KERNEL32.dll_GetLastError
cmp eax, 0x12
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x200], rcx
mov qword [rsp + 0x208], rsi
mov rax, qword [rsp + 0x1f0]
mov qword [rax], rcx
mov qword [rax + 8], rsi
mov rcx, rdi
call sub.KERNEL32.dll_FindClose
test r12, r12
je 0x14001d730
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x14001d730
mov rcx, qword [rsp + 0xd8]
xorps xmm0, xmm0
movaps xmmword [rsp + 0x80], xmm0
mov qword [rsp + 0x40], r15
lea rdx, [rsp + 0x80]
mov qword [rsp + 0x38], rdx
lea rdx, str.c:_odin_core_os_dir_windows.odin
mov qword [rsp + 0x30], rdx
mov rdx, qword [rsp + 0x148]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r12
mov dl, 1
xor r8d, r8d
xor r9d, r9d
call rax
lea rcx, [rsp + 0x180]
lea rdx, [rsp + 0x220]
lea r8, [rsp + 0xd0]
call fcn.14004c110
movaps xmm6, xmmword [rsp + 0x5e0]
add rsp, 0x5f8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rax
lea rcx, str.c:_odin_core_os_stat_windows.odin
mov edx, 0x77
mov r8d, 0xb
xor r9d, r9d
call fcn.140004310
mov qword [rsp + 0x20], rbx
lea rcx, str.c:_odin_core_os_dir_windows.odin
mov edx, 0x51
mov r8d, 0xf
mov r9, rdi
call fcn.1400525f0
mov qword [rsp + 0x20], rbx
lea rcx, str.c:_odin_core_os_dir_windows.odin
mov edx, 0x52
mov r8d, 0xf
call fcn.1400525f0
mov qword [rsp + 0x20], rbx
lea rcx, str.c:_odin_core_os_dir_windows.odin
mov edx, 0x53
mov r8d, 0xf
call fcn.1400525f0
lea rcx, str.c:_odin_base_runtime_internal.odin
mov edx, 0xa3
mov r8d, 0x18
mov r9, rbp
call fcn.1400043a0
lea rcx, str.c:_odin_base_runtime_internal.odin
mov edx, 0xb5
mov r8d, 0x1c
call fcn.1400043a0
mov rax, qword [rsp + 0xf0]
test rax, rax
lea r10, [0x140005190]
cmovne r10, rax
lea rcx, str.runtime_assertion
lea rdx, [0x14008e408]
lea r8, str.c:_odin_core_os_dir_windows.odin
lea r9, [rsp + 0xd0]
call r10
mov rax, qword [rsp + 0xf0]
test rax, rax
lea r10, [0x140005190]
cmovne r10, rax
lea rcx, str.runtime_assertion
lea rdx, [0x14008e408]
lea r8, str.Ny_b_
lea r9, [rsp + 0xd0]
call r10
int3