Function at 0x14000cea0
Capabilities:
Get file attributes

Disassembly:
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1330]
mov eax, 0x1430
call fcn.14004d690
sub rsp, rax
mov qword [rbp + 0xa0], 0xfffffffffffffffe
mov qword [rsp + 0x1468], rbx
mov qword [rsp + 0x1470], rsi
mov qword [rsp + 0x1478], rdi
mov rax, qword [0x14008c110]
xor rax, rsp
mov qword [rbp + 0x1320], rax
mov rbx, rcx
mov qword [rsp + 0x48], rcx
xor r15d, r15d
mov edi, r15d
mov dword [rsp + 0x44], r15d
mov r13b, 1
mov byte [rsp + 0x40], r13b
or rsi, 0xffffffffffffffff
cmp byte [0x14008de72], r15b
je 0x14000d889
mov r12d, r15d
mov rcx, qword [0x14008df50]
mov rdx, qword [0x14008df48]
mov rax, rcx
sub rax, rdx
sar rax, 5
test rax, rax
je 0x14000d748
mov r13d, r15d
movabs r14, 0x7ffffffffffffffe
sub rcx, rdx
sar rcx, 5
cmp r12, rcx
jb 0x14000cf61
mov rdx, r15
jmp 0x14000cf6e
add rdx, r13
cmp qword [rdx + 0x18], 8
jb 0x14000cf6e
mov rdx, qword [rdx]
lea rcx, [rbp + 0x150]
call fcn.14000737c
nop
lea rdx, [0x1400767d8]
lea rcx, [rbp + 0x280]
call fcn.14000737c
nop
lea rdx, str.winmd
mov rcx, rax
call fcn.140007cac
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x1c0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x1d0], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 7
mov word [rax], r15w
or edi, 1
mov dword [rsp + 0x44], edi
lea rdx, [rbp + 0x1c0]
lea rcx, [rbp + 0x150]
call fcn.140007d40
nop
lea rcx, [rbp + 0x1c0]
call fcn.1400022c0
nop
lea rcx, [rbp + 0x280]
call fcn.1400022c0
lea rdx, [rbp + 0x150]
lea rcx, [rbp + 0x2a0]
call fcn.14000badc
mov rdx, rax
lea rcx, [rbp + 0x150]
call fcn.1400072e8
lea rcx, [rbp + 0x2a0]
call fcn.1400022c0
lea rdx, [rbp + 0x150]
lea rcx, [rbp + 0x170]
call fcn.1400073f0
mov qword [rbp + 0x190], rsi
lea rdx, [rbp + 0x9a0]
lea rcx, [rbp + 0x170]
call fcn.14000b7e4
lea rcx, [rbp + 0xe60]
call fcn.14000b95c
cmp byte [rbp + 0x9a0], r15b
je 0x14000d06b
mov al, 1
jmp 0x14000d086
lea rdx, [rax + 0x10]
mov r8d, 0x250
lea rcx, [rbp + 0x9b0]
call fcn.14004ee90
test eax, eax
sete al
test al, al
jne 0x14000d6e3
lea rdx, [rbp + 0x9dc]
lea rcx, [rbp + 0x240]
call fcn.14000737c
nop
mov rcx, qword [0x14008df48]
mov rax, qword [0x14008df50]
sub rax, rcx
sar rax, 5
cmp r12, rax
jb 0x14000d0c1
mov rdx, r15
jmp 0x14000d0cf
lea rdx, [rcx + r13]
cmp qword [rdx + 0x18], 8
jb 0x14000d0cf
mov rdx, qword [rdx]
lea rcx, [rbp + 0xb0]
call fcn.14000737c
nop
lea r8, [0x14007614c]
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0x2c0]
call fcn.140007684
nop
lea rdx, [rbp + 0x240]
mov rcx, rax
call fcn.140007d40
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x1e0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x1f0], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 7
mov word [rax], r15w
or edi, 6
mov dword [rsp + 0x44], edi
lea rdx, [rbp + 0x1e0]
lea rcx, [rbp + 0xb0]
call fcn.1400072e8
lea rcx, [rbp + 0x1e0]
call fcn.1400022c0
nop
lea rcx, [rbp + 0x2c0]
call fcn.1400022c0
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0x2e0]
call fcn.14000badc
mov rdx, rax
lea rcx, [rbp + 0xb0]
call fcn.1400072e8
lea rcx, [rbp + 0x2e0]
call fcn.1400022c0
cmp qword [rbp + 0xc0], 0x104
jbe 0x14000d230
lea rdx, [0x1400767e0]
lea rcx, [rbp + 0xb0]
call fcn.1400122b0
test rax, rax
je 0x14000d230
lea rdx, [0x1400767e0]
lea rcx, [rbp + 0x300]
call fcn.14000737c
nop
lea rdx, [rbp + 0xb0]
mov rcx, rax
call fcn.140007d40
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x200], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x210], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 7
mov word [rax], r15w
or edi, 8
mov dword [rsp + 0x44], edi
lea rdx, [rbp + 0x200]
lea rcx, [rbp + 0xb0]
call fcn.1400072e8
lea rcx, [rbp + 0x200]
call fcn.1400022c0
nop
lea rcx, [rbp + 0x300]
call fcn.1400022c0
cmp byte [0x14008e051], r15b
je 0x14000d261
lea r8, [rbp + 0xb0]
cmp qword [rbp + 0xc8], 8
cmovae r8, qword [rbp + 0xb0]
mov edx, 4
lea rcx, [0x14008de10]
call fcn.140002f48
mov qword [rbp - 0x28], rbx
lea r8, [rbp - 0x28]
lea rdx, [rbp + 0xb0]
lea rcx, [rsp + 0x70]
call fcn.1400162e0
nop
xor edx, edx
mov rcx, qword [rsp + 0x70]
call fcn.14001cb18
test al, al
je 0x14000d62f
lea rdx, [rbp - 0x80]
mov rcx, qword [rsp + 0x70]
call fcn.14001f4c4
test al, al
je 0x14000d2f1
cmp qword [0x14008dec0], r15
je 0x14000d2f1
mov eax, dword [0x14008df7c]
cmp byte [0x14008de73], r15b
mov ecx, 0xffffffff
cmovne eax, ecx
cmp dword [rbp - 0x80], eax
je 0x14000d2f1
lea r8, [rbp + 0xb0]
cmp qword [rbp + 0xc8], 8
cmovae r8, qword [rbp + 0xb0]
mov edx, 0x7e5
lea rcx, [0x14008de10]
call fcn.140002db8
mov byte [rsp + 0x40], r15b
lea r8, [rbp + 0xb0]
cmp qword [rbp + 0xc8], 8
cmovae r8, qword [rbp + 0xb0]
mov rdx, qword [rbp + 0xc0]
cmp rdx, 1
jb 0x14000d38e
lea rcx, [rdx - 1]
mov rax, rsi
cmp rcx, rsi
cmovb rax, rcx
lea rcx, [r8 + rax*2]
mov rax, rcx
lea r9, [0x14007614c]
sub rax, r9
mov r11d, 0x5c
cmp word [rcx], r11w
jne 0x14000d377
mov ebx, 1
mov r10d, r11d
cmp r10w, r11w
ja 0x14000d36a
cmp rbx, 1
je 0x14000d386
dec rbx
add r9, 2
movzx r10d, word [rax + r9]
movzx r11d, word [r9]
cmp r10w, r11w
jae 0x14000d34c
lea r9, [0x14007614c]
mov r11d, 0x5c
cmp rcx, r8
je 0x14000d38e
sub rcx, 2
sub rax, 2
jmp 0x14000d33a
sub rcx, r8
sar rcx, 1
jmp 0x14000d391
mov rcx, rsi
inc rcx
mov qword [rbp + 0x100], r15
mov qword [rbp + 0x108], 7
mov word [rbp + 0xf0], r15w
cmp rdx, rcx
jb 0x14000e4aa
sub rdx, rcx
mov rdi, rsi
cmp rdx, rsi
cmovb rdi, rdx
lea rax, [rbp + 0xb0]
cmp qword [rbp + 0xc8], 8
cmovae rax, qword [rbp + 0xb0]
lea r15, [rax + rcx*2]
cmp rdi, 7
ja 0x14000d425
mov qword [rbp + 0x100], rdi
lea rbx, [rdi + rdi]
mov r8, rbx
mov rdx, r15
lea rcx, [rbp + 0xf0]
call fcn.14004eaa0
xor r15d, r15d
mov word [rbp + rbx + 0xf0], r15w
mov rsi, qword [rbp + 0x108]
mov rdi, qword [rbp + 0x100]
mov r14, qword [rbp + 0xf0]
jmp 0x14000d48d
cmp rdi, r14
ja 0x14000e4a4
mov rsi, rdi
or rsi, 7
cmp rsi, r14
jbe 0x14000d43f
mov rsi, r14
jmp 0x14000d44b
mov eax, 0xa
cmp rsi, rax
cmovb rsi, rax
lea rdx, [rsi + 1]
call fcn.1400075f8
mov r14, rax
mov qword [rbp + 0xa8], rax
mov qword [rbp + 0x100], rdi
mov qword [rbp + 0x108], rsi
lea rbx, [rdi + rdi]
mov r8, rbx
mov rdx, r15
mov rcx, rax
call fcn.14004eaa0
xor r15d, r15d
mov word [r14 + rbx], r15w
mov qword [rbp + 0xf0], r14
lea r8, [rdi - 6]
cmp rdi, r8
jb 0x14000e49e
mov rax, rdi
sub rax, r8
mov edx, 6
cmp rax, rdx
cmovb rdx, rax
lea rax, [rbp + 0xf0]
cmp rsi, 8
cmovae rax, r14
lea rcx, [rax + r8*2]
sub rdi, rdx
mov qword [rbp + 0x100], rdi
sub rdi, r8
lea r8, [rdi*2 + 2]
lea rdx, [rcx + rdx*2]
call fcn.14004eaa0
mov rbx, qword [rsp + 0x78]
test rbx, rbx
je 0x14000d4f0
lock inc dword [rbx + 8]
mov rbx, qword [rsp + 0x78]
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rbp + 0x50], xmm0
lea rdx, [rbp + 0x50]
lea rcx, [rbp + 0x80]
call fcn.14000ad6c
nop
lea rax, [rbp + 0x80]
mov qword [rbp + 0x340], rax
mov qword [rbp + 0x350], r15
mov rax, qword [rbp + 0x80]
lea rcx, [rbp + 0x358]
mov qword [rsp + 0x20], rcx
mov edi, 0x80
mov r9d, edi
lea r8, [rbp + 0x35c]
lea rdx, [rbp + 0x98]
lea rcx, [rbp + 0x80]
mov rax, qword [rax]
call qword [case.0x140062ace.0]
mov byte [rbp + 0x348], al
test al, al
je 0x14000d602
mov rcx, qword [rbp + 0x350]
mov rbx, qword [rsp + 0x48]
mov byte [rsp + 0x20], 1
mov r9d, dword [rbp + rcx*4 + 0x35c]
lea r8, [rbp + 0xf0]
lea rdx, [rsp + 0x70]
mov rcx, rbx
call fcn.14000eee8
mov rcx, qword [rbp + 0x350]
inc rcx
mov qword [rbp + 0x350], rcx
mov eax, dword [rbp + 0x358]
cmp rcx, rax
jne 0x14000d5ef
mov rcx, qword [rbp + 0x340]
mov rax, qword [rcx]
lea rdx, [rcx + 0x18]
lea r8, [rbp + 0x358]
mov qword [rsp + 0x20], r8
mov r9d, edi
lea r8, [rbp + 0x35c]
mov rax, qword [rax]
call qword [case.0x140062ace.0]
mov byte [rbp + 0x348], al
mov rcx, r15
mov qword [rbp + 0x350], rcx
jmp 0x14000d5f5
mov al, byte [rbp + 0x348]
test al, al
jne 0x14000d573
mov rbx, qword [rsp + 0x78]
lea rcx, [rbp + 0x80]
call fcn.140006ca0
nop
lea rcx, [rbp + 0xf0]
call fcn.1400022c0
mov edi, dword [rsp + 0x44]
or rsi, 0xffffffffffffffff
movabs r14, 0x7ffffffffffffffe
jmp 0x14000d661
lea r8, [rbp + 0xb0]
cmp qword [rbp + 0xc8], 8
cmovae r8, qword [rbp + 0xb0]
mov edx, 0x7d5
lea rcx, [0x14008de10]
call fcn.140002db8
mov byte [rsp + 0x40], r15b
mov rbx, qword [rsp + 0x78]
test rbx, rbx
je 0x14000d6a3
mov eax, esi
lock xadd dword [rbx + 8], eax
add eax, esi
jne 0x14000d6a3
mov rbx, qword [rsp + 0x78]
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax]
call qword [case.0x140062ace.0]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
add eax, esi
jne 0x14000d6a3
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140062ace.0]
nop
lea rcx, [rbp + 0xb0]
call fcn.1400022c0
nop
lea rcx, [rbp + 0x240]
call fcn.1400022c0
mov rax, qword [rbp + 0x9a8]
cmp qword [rax + 0x20], rsi
mov rbx, qword [rsp + 0x48]
je 0x14000d052
lea rcx, [rbp + 0x9a0]
call fcn.14000b750
jmp 0x14000d052
mov rcx, qword [rbp + 0x190]
cmp rcx, rsi
je 0x14000d702
call qword [sym.imp.KERNEL32.dll_FindClose]
nop dword [rax + rax]
mov qword [rbp + 0x190], rsi
lea rcx, [rbp + 0x170]
call fcn.1400022c0
nop
lea rcx, [rbp + 0x150]
call fcn.1400022c0
inc r12
add r13, 0x20
mov rcx, qword [0x14008df50]
mov rdx, qword [0x14008df48]
mov rax, rcx
sub rax, rdx
sar rax, 5
cmp r12, rax
jb 0x14000cf50
mov r13b, byte [rsp + 0x40]
mov rdi, qword [rbx + 0x58]
mov rbx, qword [rdi]
cmp rbx, rdi
je 0x14000d884
mov r14, qword [rbx + 0x40]
mov byte [r14 + 0x78], 1
mov rax, qword [r14 + 0x20]
mov rcx, qword [rax]
jmp 0x14000d7b9
mov rax, qword [rcx + 0x40]
mov byte [rax + 0x54], 1
mov rax, qword [rcx + 0x10]
cmp byte [rax + 0x19], r15b
je 0x14000d79a
mov rax, qword [rcx + 8]
jmp 0x14000d78f
cmp rcx, qword [rax + 0x10]
jne 0x14000d795
mov rcx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], r15b
je 0x14000d782
mov rcx, rax
jmp 0x14000d7b5
mov rcx, rax
mov rdx, qword [rax]
cmp byte [rdx + 0x19], r15b
jne 0x14000d7b5
mov rcx, rdx
mov rax, qword [rdx]
mov rdx, rax
cmp byte [rax + 0x19], r15b
je 0x14000d7a6
mov rax, qword [r14 + 0x20]
cmp rcx, rax
mov qword [rbp - 0x20], rax
jne 0x14000d76a
mov r15, qword [r14 + 0x58]
mov r14, qword [r14 + 0x50]
cmp r14, r15
je 0x14000d832
xor ecx, ecx
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x14000d7e2
lock inc dword [rsi + 8]
mov rsi, qword [r14 + 8]
mov rax, qword [r14]
mov byte [rax + 0x54], 1
test rsi, rsi
je 0x14000d829
or eax, 0xffffffff
lock xadd dword [rsi + 8], eax
cmp eax, 1
jne 0x14000d829
mov rax, qword [rsi]
mov rcx, rsi
mov rax, qword [rax]
call qword [case.0x140062ace.0]
or eax, 0xffffffff
lock xadd dword [rsi + 0xc], eax
cmp eax, 1
jne 0x14000d827
mov rax, qword [rsi]
mov rcx, rsi
mov rax, qword [rax + 8]
call qword [case.0x140062ace.0]
xor ecx, ecx
add r14, 0x10
cmp r14, r15
jne 0x14000d7d1
mov rax, qword [rbx + 0x10]
xor r15d, r15d
cmp byte [rax + 0x19], r15b
je 0x14000d860
mov rax, qword [rbx + 8]
jmp 0x14000d852
cmp rbx, qword [rax + 0x10]
jne 0x14000d858
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], r15b
je 0x14000d845
mov rbx, rax
jmp 0x14000d74f
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], r15b
jne 0x14000d74f
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], r15b
je 0x14000d870
jmp 0x14000d74f
mov rbx, qword [rsp + 0x48]
cmp qword [0x14008dee0], r15
je 0x14000dc32
mov rdi, qword [0x14008dfa8]
mov rbx, qword [rdi]
cmp rbx, rdi
je 0x14000e330
lea r14, [rbx + 0x10]
mov r12b, r15b
mov rdx, qword [0x14008de80]
mov r8, qword [0x14008de78]
mov rax, rdx
sub rax, r8
sar rax, 5
xor esi, esi
test rax, rax
je 0x14000dc07
mov ecx, esi
sub rdx, r8
sar rdx, 5
cmp rcx, rdx
jbe 0x14000d8e6
mov rcx, rsi
jmp 0x14000d8fd
jae 0x14000e4b0
shl rcx, 5
add rcx, r8
cmp qword [rcx + 0x18], 8
jb 0x14000d8fd
mov rcx, qword [rcx]
mov rdx, rcx
lea rcx, [rbp + 0xd0]
call fcn.14000737c
nop
lea rdx, [0x14007614c]
lea rcx, [rbp + 0xd0]
call fcn.140007cac
mov rdx, r14
lea rcx, [rbp + 0xd0]
call fcn.140007d40
lea rdx, [0x14007676c]
lea rcx, [rbp + 0xd0]
call fcn.140007cac
lea rdx, str.winmd
lea rcx, [rbp + 0xd0]
call fcn.140007cac
lea rcx, [rbp + 0xd0]
cmp qword [rbp + 0xe8], 8
cmovae rcx, qword [rbp + 0xd0]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
nop dword [rax + rax]
or ecx, 0xffffffff
cmp eax, ecx
je 0x14000dbbf
mov r12b, 1
lea r8, [rbp + 0xd0]
cmp qword [rbp + 0xe8], 8
cmovae r8, qword [rbp + 0xd0]
mov edx, 1
lea rcx, [0x14008de10]
call fcn.140002f48
mov r13, qword [rsp + 0x48]
mov qword [rbp - 0x18], r13
lea r8, [rbp - 0x18]
lea rdx, [rbp + 0xd0]
lea rcx, [rbp - 0x70]
call fcn.1400162e0
nop
xor edx, edx
mov rsi, qword [rbp - 0x70]
mov rcx, rsi
call fcn.14001cb18
test al, al
je 0x14000db47
mov r9d, dword [rsi + 0x110]
mov edx, dword [r14 + 0x20]
cmp r9d, edx
je 0x14000da39
movzx ecx, dx
shr edx, 0x10
lea r8, [rbp + 0xd0]
cmp qword [rbp + 0xe8], 8
cmovae r8, qword [rbp + 0xd0]
movzx eax, r9w
shr r9d, 0x10
mov dword [rsp + 0x30], ecx
mov dword [rsp + 0x28], edx
mov dword [rsp + 0x20], eax
mov edx, 0x1397
lea rcx, [0x14008de10]
call fcn.140002db8
jmp 0x14000db6f
mov rcx, qword [rbp - 0x68]
xor esi, esi
test rcx, rcx
je 0x14000da48
lock inc dword [rcx + 8]
movaps xmm0, xmmword [rbp - 0x70]
movdqa xmmword [rbp + 0x60], xmm0
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x10]
call fcn.14000ad6c
nop
lea rax, [rbp + 0x10]
mov qword [rbp + 0x560], rax
mov qword [rbp + 0x570], rsi
mov rax, qword [rbp + 0x10]
lea rcx, [rbp + 0x578]
mov qword [rsp + 0x20], rcx
mov r9d, 0x80
lea r8, [rbp + 0x57c]
lea rdx, [rbp + 0x28]
lea rcx, [rbp + 0x10]
mov rax, qword [rax]
call qword [case.0x140062ace.0]
mov byte [rbp + 0x568], al
test al, al
je 0x14000db3c
mov rcx, qword [rbp + 0x570]
mov byte [rsp + 0x20], sil
mov r9d, dword [rbp + rcx*4 + 0x57c]
xor r8d, r8d
lea rdx, [rbp - 0x70]
mov rcx, r13
call fcn.14000eee8
mov rcx, qword [rbp + 0x570]
inc rcx
mov qword [rbp + 0x570], rcx
mov eax, dword [rbp + 0x578]
cmp rcx, rax
jne 0x14000db2e
mov rcx, qword [rbp + 0x560]
mov rax, qword [rcx]
lea rdx, [rcx + 0x18]
lea r8, [rbp + 0x578]
mov qword [rsp + 0x20], r8
mov r9d, 0x80
lea r8, [rbp + 0x57c]
mov rax, qword [rax]
call qword [case.0x140062ace.0]
mov byte [rbp + 0x568], al
mov rcx, rsi
mov qword [rbp + 0x570], rcx
jmp 0x14000db34
mov al, byte [rbp + 0x568]
test al, al
jne 0x14000dab4
lea rcx, [rbp + 0x10]
call fcn.140006ca0
jmp 0x14000db76
lea r8, [rbp + 0xd0]
cmp qword [rbp + 0xe8], 8
cmovae r8, qword [rbp + 0xd0]
mov edx, 0x7d5
lea rcx, [0x14008de10]
call fcn.140002db8
xor esi, esi
mov byte [rsp + 0x40], sil
mov rcx, qword [rbp - 0x68]
test rcx, rcx
je 0x14000dbbf
or eax, 0xffffffff
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x14000dbbf
mov rsi, qword [rbp - 0x68]
mov rax, qword [rsi]
mov rcx, rsi
mov rax, qword [rax]
call qword [case.0x140062ace.0]
or eax, 0xffffffff
lock xadd dword [rsi + 0xc], eax
cmp eax, 1
jne 0x14000dbbd
mov rcx, qword [rbp - 0x68]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140062ace.0]
xor esi, esi
lea rcx, [rbp + 0xd0]
call fcn.1400022c0
inc r15d
mov rdx, qword [0x14008de80]
mov r8, qword [0x14008de78]
mov rax, rdx
sub rax, r8
sar rax, 5
mov ecx, r15d
cmp rcx, rax
jb 0x14000d8d5
xor r15d, r15d
test r12b, r12b
je 0x14000dc0a
mov r13b, byte [rsp + 0x40]
mov rbx, qword [rbx]
jmp 0x14000d8a0
xor r15d, r15d
cmp qword [r14 + 0x18], 8
jb 0x14000dc14
mov r14, qword [r14]
mov r8, r14
mov edx, 0x7d5
lea rcx, [0x14008de10]
call fcn.140002db8
mov r13b, r15b
mov byte [rsp + 0x40], r15b
jmp 0x14000dbff
mov esi, r15d
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], r15
mov r12d, r15d
mov rcx, qword [0x14008de80]
mov r8, qword [0x14008de78]
mov rax, rcx
sub rax, r8
sar rax, 5
mov rdi, qword [rsp + 0x58]
test rax, rax
je 0x14000e1ad
mov r14, r15
mov r15d, esi
sub rcx, r8
sar rcx, 5
cmp r14, rcx
jbe 0x14000dc84
xor eax, eax
mov edx, eax
jmp 0x14000dc9e
jae 0x14000e4bc
mov rdx, r14
shl rdx, 5
add rdx, r8
cmp qword [rdx + 0x18], 8
jb 0x14000dc9e
mov rdx, qword [rdx]
lea rcx, [rbp + 0x110]
call fcn.14000737c
nop
lea rcx, [rbp + 0x110]
cmp qword [rbp + 0x128], 8
cmovae rcx, qword [rbp + 0x110]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
nop dword [rax + rax]
test al, 0x10
je 0x14000e04b
lea rdx, [0x1400767d8]
lea rcx, [rbp + 0x110]
call fcn.140007cac
lea rdx, str.winmd
lea rcx, [rbp + 0x110]
call fcn.140007cac
lea rdx, [rbp + 0x110]
lea rcx, [rbp + 0x198]
call fcn.1400073f0
or qword [rbp + 0x1b8], 0xffffffffffffffff
lea rdx, [rbp + 0xc00]
lea rcx, [rbp + 0x198]
call fcn.14000b7e4
mov r15d, esi
lea rcx, [rbp + 0x10c0]
call fcn.14000b95c
cmp byte [rbp + 0xc00], 0
je 0x14000dd46
mov al, 1
jmp 0x14000dd61
lea rdx, [rax + 0x10]
mov r8d, 0x250
lea rcx, [rbp + 0xc10]
call fcn.14004ee90
test eax, eax
sete al
test al, al
jne 0x14000dfde
lea rdx, [rbp + 0xc3c]
lea rcx, [rbp + 0x260]
call fcn.14000737c
or dword [rsp + 0x44], 0x10
mov rcx, qword [0x14008de78]
mov rax, qword [0x14008de80]
sub rax, rcx
sar rax, 5
cmp r14, rax
jbe 0x14000dda1
xor eax, eax
mov edx, eax
jmp 0x14000ddbb
jae 0x14000e4b6
mov rdx, r14
shl rdx, 5
add rdx, rcx
cmp qword [rdx + 0x18], 8
jb 0x14000ddbb
mov rdx, qword [rdx]
lea rcx, [rbp + 0x130]
call fcn.14000737c
nop
lea r8, [0x14007614c]
lea rdx, [rbp + 0x130]
lea rcx, [rbp + 0x320]
call fcn.140007684
nop
lea rdx, [rbp + 0x260]
mov rcx, rax
call fcn.140007d40
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x220], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x230], xmm1
xor ecx, ecx
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], 7
mov word [rax], cx
or dword [rsp + 0x44], 0x20
lea rdx, [rbp + 0x220]
lea rcx, [rbp + 0x130]
call fcn.1400072e8
lea rcx, [rbp + 0x220]
call fcn.1400022c0
nop
lea rcx, [rbp + 0x320]
call fcn.1400022c0
mov qword [rbp - 0x10], rbx
lea r8, [rbp - 0x10]
lea rdx, [rbp + 0x130]
lea rcx, [rbp - 0x60]
call fcn.1400162e0
nop
xor edx, edx
mov rbx, qword [rbp - 0x60]
mov rcx, rbx
call fcn.14001cb18
test al, al
je 0x14000df23
mov esi, dword [rbx + 0x178]
cmp esi, r15d
cmovle esi, r15d
lea rdx, [rbp - 0x7c]
mov rcx, rbx
call fcn.14001f4c4
xor r15d, r15d
test al, al
je 0x14000dee6
cmp qword [0x14008dec0], r15
je 0x14000dee6
mov eax, dword [0x14008df7c]
cmp byte [0x14008de73], r15b
mov ecx, 0xffffffff
cmovne eax, ecx
cmp dword [rbp - 0x7c], eax
je 0x14000dee6
lea r8, [rbp + 0x130]
cmp qword [rbp + 0x148], 8
cmovae r8, qword [rbp + 0x130]
mov edx, 0x7e5
lea rcx, [0x14008de10]
call fcn.140002db8
mov r13b, r15b
cmp qword [rsp + 0x60], rdi
je 0x14000df0b
mov qword [rdi], rbx
mov rax, qword [rbp - 0x58]
mov qword [rdi + 8], rax
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x60], xmm0
add rdi, 0x10
mov qword [rsp + 0x58], rdi
jmp 0x14000df51
lea r8, [rbp - 0x60]
mov rdx, rdi
lea rcx, [rsp + 0x50]
call fcn.1400167c4
mov rdi, qword [rsp + 0x58]
jmp 0x14000df51
lea r8, [rbp + 0x130]
cmp qword [rbp + 0x148], 8
cmovae r8, qword [rbp + 0x130]
mov edx, 0x7d5
lea rcx, [0x14008de10]
call fcn.140002db8
xor r15d, r15d
mov r13b, r15b
mov rcx, qword [rbp - 0x58]
test rcx, rcx
je 0x14000df9d
or eax, 0xffffffff
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x14000df98
mov rbx, qword [rbp - 0x58]
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax]
call qword [case.0x140062ace.0]
or eax, 0xffffffff
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14000df98
mov rcx, qword [rbp - 0x58]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140062ace.0]
mov rdi, qword [rsp + 0x58]
lea rcx, [rbp + 0x130]
call fcn.1400022c0
nop
lea rcx, [rbp + 0x260]
call fcn.1400022c0
mov rax, qword [rbp + 0xc08]
cmp qword [rax + 0x20], 0xffffffffffffffff
mov rbx, qword [rsp + 0x48]
je 0x14000dd2a
lea rcx, [rbp + 0xc00]
call fcn.14000b750
jmp 0x14000dd2a
mov rcx, qword [rbp + 0x1b8]
cmp rcx, 0xffffffffffffffff
je 0x14000dfff
call qword [sym.imp.KERNEL32.dll_FindClose]
nop dword [rax + rax]
or qword [rbp + 0x1b8], 0xffffffffffffffff
lea rcx, [rbp + 0x198]
call fcn.1400022c0
xor r15d, r15d
lea rcx, [rbp + 0x110]
call fcn.1400022c0
inc r12d
mov rcx, qword [0x14008de80]
mov r8, qword [0x14008de78]
mov rax, rcx
sub rax, r8
sar rax, 5
mov r14d, r12d
cmp r14, rax
jae 0x14000e1ad
mov rbx, qword [rsp + 0x48]
jmp 0x14000dc6f
or r14d, 0xffffffff
cmp eax, r14d
je 0x14000e00b
mov qword [rbp - 8], rbx
lea r8, [rbp - 8]
lea rdx, [rbp + 0x110]
lea rcx, [rbp - 0x50]
call fcn.1400162e0
nop
xor edx, edx
mov rbx, qword [rbp - 0x50]
mov rcx, rbx
call fcn.14001cb18
test al, al
je 0x14000e12a
mov esi, dword [rbx + 0x178]
cmp esi, r15d
cmovle esi, r15d
lea rdx, [rbp - 0x78]
mov rcx, rbx
call fcn.14001f4c4
xor r15d, r15d
test al, al
je 0x14000e0ed
cmp qword [0x14008dec0], r15
je 0x14000e0ed
mov eax, dword [0x14008df7c]
cmp byte [0x14008de73], r15b
cmovne eax, r14d
cmp dword [rbp - 0x78], eax
je 0x14000e0ed
lea r8, [rbp + 0x110]
cmp qword [rbp + 0x128], 8
cmovae r8, qword [rbp + 0x110]
mov edx, 0x7e5
lea rcx, [0x14008de10]
call fcn.140002db8
mov r13b, r15b
cmp qword [rsp + 0x60], rdi
je 0x14000e112
mov qword [rdi], rbx
mov rax, qword [rbp - 0x48]
mov qword [rdi + 8], rax
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x50], xmm0
add rdi, 0x10
mov qword [rsp + 0x58], rdi
jmp 0x14000e158
lea r8, [rbp - 0x50]
mov rdx, rdi
lea rcx, [rsp + 0x50]
call fcn.1400167c4
mov rdi, qword [rsp + 0x58]
jmp 0x14000e158
lea r8, [rbp + 0x110]
cmp qword [rbp + 0x128], 8
cmovae r8, qword [rbp + 0x110]
mov edx, 0x7d5
lea rcx, [0x14008de10]
call fcn.140002db8
xor r15d, r15d
mov r13b, r15b
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x14000e00e
or eax, 0xffffffff
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x14000e1a3
mov rbx, qword [rbp - 0x48]
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax]
call qword [case.0x140062ace.0]
or eax, 0xffffffff
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14000e1a3
mov rcx, qword [rbp - 0x48]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140062ace.0]
mov rdi, qword [rsp + 0x58]
jmp 0x14000e00e
mov r14, qword [rsp + 0x48]
mov dword [r14], esi
cmp byte [0x14008de73], r15b
je 0x14000e1cb
mov eax, 3
cmp esi, eax
cmovl esi, eax
mov dword [r14], esi
mov rbx, qword [rsp + 0x50]
cmp rbx, rdi
je 0x14000e2e5
mov r8, qword [rbx]
cmp qword [r8 + 0x18], 8
jb 0x14000e1e6
mov r8, qword [r8]
mov edx, 1
lea rcx, [0x14008de10]
call fcn.140002f48
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x14000e20d
lock inc dword [rcx + 8]
mov rcx, qword [rbx + 8]
mov rdi, qword [rsp + 0x58]
mov rax, qword [rbx]
mov qword [rbp], rax
mov qword [rbp + 8], rcx
lea rdx, [rbp]
lea rcx, [rbp + 0x30]
call fcn.14000ad6c
nop
lea rax, [rbp + 0x30]
mov qword [rbp + 0x780], rax
mov qword [rbp + 0x790], r15
mov rax, qword [rbp + 0x30]
lea rcx, [rbp + 0x798]
mov qword [rsp + 0x20], rcx
mov r9d, 0x80
lea r8, [rbp + 0x79c]
lea rdx, [rbp + 0x48]
lea rcx, [rbp + 0x30]
mov rax, qword [rax]
call qword [case.0x140062ace.0]
mov byte [rbp + 0x788], al
test al, al
je 0x14000e2ca
mov rcx, qword [rbp + 0x790]
mov byte [rsp + 0x20], r15b
mov r9d, dword [rbp + rcx*4 + 0x79c]
xor r8d, r8d
mov rdx, rbx
mov rcx, r14
call fcn.14000eee8
mov rcx, qword [rbp + 0x790]
inc rcx
mov qword [rbp + 0x790], rcx
mov eax, dword [rbp + 0x798]
cmp rcx, rax
jne 0x14000e2c1
lea rcx, [rbp + 0x780]
call fcn.140006c58
mov rcx, qword [rbp + 0x790]
cmp byte [rbp + 0x788], r15b
jne 0x14000e277
lea rcx, [rbp + 0x30]
call fcn.140006ca0
add rbx, 0x10
cmp rbx, rdi
jne 0x14000e1d9
mov rbx, qword [rsp + 0x50]
test rbx, rbx
je 0x14000e335
mov r8, rdi
mov rdx, rbx
call fcn.140014ac4
mov rdx, qword [rsp + 0x60]
sub rdx, rbx
and rdx, 0xfffffffffffffff0
cmp rdx, 0x1000
jb 0x14000e326
add rdx, 0x27
mov rcx, qword [rbx - 8]
sub rbx, rcx
lea rax, [rbx - 8]
cmp rax, 0x1f
ja 0x14000e498
mov rbx, rcx
mov rcx, rbx
call fcn.14004d088
jmp 0x14000e335
mov r14, qword [rsp + 0x48]
mov rbx, qword [r14 + 0x58]
mov rax, qword [rbx]
mov qword [rbp - 0x40], rax
jmp 0x14000e3c8
mov rcx, qword [rax + 0x40]
cmp byte [rcx + 0x78], r15b
jne 0x14000e3bb
mov rdi, qword [rcx + 0x50]
mov rsi, qword [rcx + 0x58]
cmp rdi, rsi
je 0x14000e3bb
mov r13b, r15b
mov rax, qword [rdi + 8]
test rax, rax
je 0x14000e370
lock inc dword [rax + 8]
mov rax, qword [rdi + 8]
mov r8, qword [rdi]
mov qword [rbp + 0x70], r8
mov qword [rbp + 0x78], rax
mov r9, qword [r8 + 0x70]
cmp qword [r9 + 0x18], 8
jb 0x14000e389
mov r9, qword [r9]
add r8, 8
cmp qword [r8 + 0x18], 8
jb 0x14000e397
mov r8, qword [r8]
mov edx, 0x7e2
lea rcx, [0x14008de10]
call fcn.140002db8
nop
lea rcx, [rbp + 0x70]
call fcn.140006dcc
add rdi, 0x10
cmp rdi, rsi
jne 0x14000e35f
lea rcx, [rbp - 0x40]
call fcn.140011524
mov rax, qword [rbp - 0x40]
cmp rax, rbx
jne 0x14000e345
test r13b, r13b
je 0x14000e464
mov rsi, qword [r14 + 0x58]
mov rax, qword [rsi]
mov qword [rbp - 0x38], rax
cmp rax, rsi
je 0x14000e464
mov rdi, qword [rax + 0x40]
cmp byte [rdi + 0x78], r15b
jne 0x14000e452
mov rdi, qword [rdi + 0x20]
mov rbx, qword [rdi]
jmp 0x14000e44d
mov rcx, qword [rbx + 0x40]
call fcn.1400333e8
test al, al
je 0x14000e461
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], r15b
je 0x14000e432
mov rax, qword [rbx + 8]
jmp 0x14000e427
cmp rbx, qword [rax + 0x10]
jne 0x14000e42d
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], r15b
je 0x14000e41a
mov rbx, rax
jmp 0x14000e44d
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], r15b
jne 0x14000e44d
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], r15b
je 0x14000e43e
cmp rbx, rdi
jne 0x14000e3fd
lea rcx, [rbp - 0x38]
call fcn.140011524
mov rax, qword [rbp - 0x38]
jmp 0x14000e3e5
mov r13b, r15b
mov al, r13b
mov rcx, qword [rbp + 0x1320]
xor rcx, rsp
call fcn.14004d060
lea r11, [rsp + 0x1430]
mov rbx, qword [r11 + 0x38]
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.140043068
nop
call fcn.14000766c
nop
call fcn.140007be8
int3
call fcn.14000766c
nop
call fcn.140014650
nop
call fcn.140014650
nop
call fcn.140014650
int3