Function at 0x140004f7f
Capabilities:
Set file attributes

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x12b8
call fcn.140040dd0
sub rsp, rax
movaps xmmword [rsp + 0x12a0], xmm6
mov rsi, rcx
mov rbx, qword [rsp + 0x1330]
mov r14, qword [rsp + 0x1328]
mov r15, qword [rsp + 0x1320]
mov qword [rsp + 0x158], rcx
mov qword [rsp + 0x160], r8
mov qword [rsp + 0x168], r9
shr rsi, 1
cmp rsi, r9
jae 0x1400058df
test r14, r14
je 0x1400059db
mov rdi, r15
lea rax, [r14 + r14*2]
lea rax, [r15 + rax*8]
mov qword [rsp + 0x130], rax
mov rax, qword [rbx]
mov qword [rsp + 0x150], rax
mov rax, qword [rbx + 8]
mov qword [rsp + 0x148], rax
mov r8, qword [rbx + 0x10]
mov rax, qword [rbx + 0x18]
mov qword [rsp + 0x138], rax
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x60], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x140], rax
lea r13, [rsp + 0xa0]
lea r12, [rsp + 0x2a0]
xorps xmm6, xmm6
lea rbx, [rsp + 0x1b0]
mov qword [rsp + 0x128], r8
mov rax, qword [rdi]
mov qword [rsp + 0x40], rax
mov ecx, dword [rax + 0x90]
mov rdx, qword [r8 + 0x10]
cmp rdx, rcx
jbe 0x140005a1e
mov rax, qword [r8]
shl rcx, 5
mov r9, qword [rax + rcx]
mov rax, qword [rax + rcx + 0x10]
mov qword [rsp + 0x20], rax
mov rcx, r12
mov rdx, qword [rsp + 0x150]
mov r8, qword [rsp + 0x148]
call fcn.140026cd0
mov rsi, qword [rsp + 0x2a0]
mov r8, qword [rsp + 0x2b0]
mov r9, qword [rdi + 8]
mov rax, qword [rdi + 0x10]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x190]
mov rdx, rsi
call fcn.140026cd0
cmp qword [rsp + 0x2a8], 0
je 0x1400050ec
mov rcx, qword [0x14007bc78]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rdx]
mov rax, qword [rsp + 0x140]
add rcx, qword [rax]
mov rax, qword [rdx + 8]
mov rdx, rcx
add rdx, rax
jb 0x140005af9
cmp rdx, qword [rsp + 0x60]
ja 0x140005b07
add rcx, qword [rsp + 0x138]
mov qword [rsp + 0x180], rcx
mov qword [rsp + 0x188], rax
lea rax, [rsp + 0x278]
xor ecx, ecx
mov qword [rax + 0x20], rcx
movups xmmword [rax + 0x10], xmm6
movups xmmword [rax], xmm6
lea rax, [rsp + 0x180]
mov qword [rsp + 0x238], rax
mov qword [rsp + 0x240], rcx
movabs rax, 0x60ea2910f5117466
mov qword [rsp + 0x248], rax
movabs rax, 0xc2b2af5f6f25a9df
mov qword [rsp + 0x250], rax
movabs rax, 0x1224750be90
mov qword [rsp + 0x258], rax
movabs rdx, 0x61c88770c164f409
mov qword [rsp + 0x260], rdx
mov qword [rsp + 0x268], rcx
mov qword [rsp + 0x270], rax
mov dword [rsp + 0x2a0], 0
lea rax, [rsp + 0x2a8]
movups xmmword [rax], xmm6
mov dword [rsp + 0x2b8], 7
mov qword [rax + 0x14], rcx
mov word [rax + 0x1c], 0
mov byte [rsp + 0x2c1], 1
mov word [rsp + 0x2c3], 0x101
mov rcx, qword [rsp + 0x190]
mov rdx, qword [rsp + 0x1a0]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rdx
mov r8, r12
call fcn.140022a30
mov qword [rsp + 0x58], rdx
test rax, rax
jne 0x140005b1b
mov ecx, 0x2000
call fcn.1400118b0
mov rsi, rax
mov r8d, 0x88
mov rcx, rbx
xor edx, edx
call fcn.1400583f0
mov rcx, rbx
mov rdx, 0xffffffffffffffff
xor r8d, r8d
call fcn.140038678
mov ecx, eax
call fcn.140038049
test al, 1
jne 0x140005b47
add rdi, 0x18
mov qword [rsp + 0x68], rdi
mov r8d, 0x88
lea rdi, [rsp + 0x2a6]
mov rcx, rdi
mov rdx, rbx
call fcn.140057d50
mov r8d, 0x88
mov rcx, r13
mov rdx, rdi
call fcn.140057d50
movups xmmword [r13 - 0x20], xmm6
mov qword [r13 - 0x10], 0
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x78], 0x2000
lea rax, [rsp + 0x238]
mov qword [rsp + 0x98], rax
mov r8d, 0x1000
mov rcx, r12
xor edx, edx
call fcn.1400583f0
mov r9, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x70]
mov rsi, rcx
mov r14, r9
cmp r9, rcx
jb 0x1400053a6
mov rbx, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x90]
mov r8, rbx
sub r8, rcx
jb 0x140005ae8
mov r14, qword [rsp + 0x98]
add rcx, rdi
xor edx, edx
call fcn.1400583f0
mov rax, qword [r14]
mov r15, qword [r14 + 8]
mov rcx, qword [rax + 8]
cmp r15, rcx
mov rdx, rcx
cmovb rdx, r15
sub rcx, rdx
mov rsi, rbx
cmp rbx, rcx
jb 0x140005342
mov rsi, rcx
add rdx, qword [rax]
cmp rsi, 1
jne 0x14000535e
mov al, byte [rdx]
mov byte [rdi], al
inc r15
mov qword [r14 + 8], r15
mov r8d, 1
jmp 0x140005378
mov rcx, rdi
mov r8, rsi
call fcn.140057d50
add r15, rsi
mov qword [r14 + 8], r15
mov r8, rsi
test rsi, rsi
je 0x140005387
add r14, 0x10
mov rcx, r14
mov rdx, rdi
call fcn.140037dc6
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x90], rbx
xor r14d, r14d
mov rbx, rsi
sub rbx, r14
test rdi, rdi
je 0x14000549a
add rdi, r14
xor eax, eax
cmp rsi, r14
sete al
mov r15, qword [rsp + 0xb0]
mov rbp, qword [rsp + 0xc8]
mov qword [rsp + 0xa0], rdi
mov qword [rsp + 0xa8], rbx
mov qword [rsp + 0xb8], r12
mov qword [rsp + 0xc0], 0x1000
lea edx, [rax + rax*2]
mov rcx, r13
call fcn.140038170
mov ecx, eax
call fcn.140038049
mov r8, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x88]
mov r10, qword [rsp + 0xb0]
mov r9, r10
sub r9, r15
add r9, qword [rsp + 0x80]
cmp r9, rcx
cmovae r9, rcx
mov qword [rsp + 0x80], r9
test al, 1
jne 0x140005a2c
cmp rsi, r14
je 0x14000545b
cmp r8, rbp
jne 0x14000545b
cmp r10, r15
jne 0x1400052e0
jmp 0x140005a35
cmp r8, rbp
jne 0x140005469
cmp dl, 1
jne 0x140005c2f
sub r8, rbp
je 0x1400058d0
cmp r8, 0x1001
jae 0x140005c43
mov rcx, qword [rsp + 0x58]
mov rdx, r12
call fcn.14000202f
test rax, rax
je 0x1400052d0
jmp 0x140005a49
lea rcx, [rsp + 0x70]
call fcn.140002b70
cmp rsi, r14
jne 0x140005a56
mov ecx, 0xd
mov rdi, r12
lea rsi, [rsp + 0x238]
rep movsq qword [rdi], qword [rsi]
lea rcx, [rsp + 0x2b0]
call fcn.140037bf4
mov qword [rsp + 0x170], rax
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx + 0x9c]
cmp rcx, rax
jne 0x140005b89
mov rcx, r12
mov rdx, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
call fcn.140024df0
cmp dword [rsp + 0x2a0], 2
jne 0x14000551e
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x70], 2
jmp 0x14000553a
mov ecx, 9
lea rdi, [rsp + 0x70]
mov rsi, r12
rep movsq qword [rdi], qword [rsi]
cmp qword [rsp + 0x70], 2
jne 0x140005724
lea rcx, [rsp + 0x78]
call fcn.140002ba2
mov rax, qword [rsp + 0x40]
mov r14, qword [rax + 0xa4]
mov ebp, dword [rax + 0xac]
mov rbx, qword [rax + 0xb0]
mov edi, dword [rax + 0xb8]
mov dword [rsp + 0x2a0], 0
lea rax, [rsp + 0x2a8]
movups xmmword [rax], xmm6
mov dword [rsp + 0x2b8], 7
mov word [rax + 0x1c], 0
mov qword [rax + 0x14], 0
mov byte [rsp + 0x2c1], 1
mov dword [rsp + 0x2b0], 0x2000000
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
mov r8, r12
call fcn.140022a30
mov rsi, rdx
test rax, rax
je 0x1400055ce
mov rdi, qword [rsp + 0x68]
lea rbx, [rsp + 0x1b0]
jmp 0x140005640
movabs rax, 0x2b6109100
add rbx, rax
add r14, rax
mov qword [rsp + 0x78], r14
mov dword [rsp + 0x80], ebp
mov eax, 1
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x2a8], rbx
mov dword [rsp + 0x2b0], edi
mov qword [rsp + 0x2a0], rax
mov rcx, rsi
lea rdx, [rsp + 0x70]
mov r8, r12
call fcn.14000fd52
mov rdi, rax
mov rcx, rsi
call qword [sym.imp.kernel32.dll_CloseHandle]
mov rsi, rdi
test rdi, rdi
mov rdi, qword [rsp + 0x68]
lea rbx, [rsp + 0x1b0]
je 0x1400056dc
mov qword [rsp + 0x48], rsi
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x1b0], rax
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x1b8], rax
mov qword [rsp + 0x70], rbx
lea rax, [0x140026ed0]
mov qword [rsp + 0x78], rax
lea rsi, [rsp + 0x48]
mov qword [rsp + 0x80], rsi
lea rax, [0x140020da0]
mov qword [rsp + 0x88], rax
lea rax, str.failed_to_set_file_times_for
mov qword [rsp + 0x2a0], rax
mov qword [rsp + 0x2a8], 3
mov qword [rsp + 0x2c0], 0
lea rax, [rsp + 0x70]
mov qword [rsp + 0x2b0], rax
mov qword [rsp + 0x2b8], 2
mov rcx, r12
call fcn.140026370
mov rcx, rsi
call fcn.140002ba2
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.kernel32.dll_CloseHandle]
cmp qword [rsp + 0x198], 0
je 0x140005709
mov r8, qword [rsp + 0x190]
mov rcx, qword [0x14007bc78]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp rdi, qword [rsp + 0x130]
mov r8, qword [rsp + 0x128]
jne 0x14000505a
jmp 0x1400059db
xor edi, edi
mov rax, qword [rsp + 0x40]
cmp byte [rax + 0xc0], 0
setne r14b
mov ebp, dword [rsp + 0xb0]
mov rcx, r12
mov rdx, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
call fcn.14001c220
mov rax, qword [rsp + 0x2a0]
mov rbx, qword [rsp + 0x2a8]
test rax, rax
je 0x1400057eb
mov rcx, qword [rsp + 0x2b0]
mov qword [rsp + 0x2a0], rax
mov qword [rsp + 0x2a8], rbx
mov qword [rsp + 0x2b0], rcx
lea rcx, [rsp + 0x1b0]
mov rdx, r12
mov r8b, 1
call fcn.140023020
mov rsi, qword [rsp + 0x1b0]
mov rbx, qword [rsp + 0x1b8]
test rsi, rsi
je 0x1400057eb
and ebp, 0xfffffffe
mov dil, r14b
or edi, ebp
mov rcx, rsi
mov edx, edi
call qword [sym.imp.kernel32.dll_SetFileAttributesW]
test eax, eax
je 0x1400058a1
test rbx, rbx
je 0x140005544
mov rcx, qword [0x14007bc78]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x140005544
mov rdi, rbx
test rbx, rbx
je 0x140005544
mov qword [rsp + 0x178], rdi
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x1b0], rax
lea rax, [0x140026ed0]
mov qword [rsp + 0x1b8], rax
lea rsi, [rsp + 0x178]
mov qword [rsp + 0x1c0], rsi
lea rax, [0x140020da0]
mov qword [rsp + 0x1c8], rax
lea rax, str.failed_to_set_permissions_for
mov qword [rsp + 0x2a0], rax
mov qword [rsp + 0x2a8], 3
mov qword [rsp + 0x2c0], 0
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x2b0], rax
mov qword [rsp + 0x2b8], 2
mov rcx, r12
call fcn.1400265d0
mov rcx, rsi
jmp 0x14000553f
call sub.kernel32.dll_GetLastError
mov edi, eax
shl rdi, 0x20
or rdi, 2
test rbx, rbx
je 0x1400057f7
mov rcx, qword [0x14007bc78]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x1400057f7
lea rcx, [rsp + 0x70]
call fcn.140002b70
jmp 0x1400054ad
mov rdi, r8
test dl, dl
je 0x1400058f7
call fcn.1400131ce
shr rdi, 1
cmp rax, rdi
cmova rdi, rax
jmp 0x140005903
test rdi, rdi
je 0x140004fdf
shr rdi, 1
mov qword [rsp + 0x160], rdi
mov qword [rsp + 0x70], rsi
sub r14, rsi
jb 0x140005c5c
lea rax, [rsi + rsi*2]
lea rax, [r15 + rax*8]
lea rcx, [rsp + 0x158]
mov qword [rsp + 0x2a0], rcx
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x2a8], rcx
lea rdx, [rsp + 0x160]
mov qword [rsp + 0x2b0], rdx
mov qword [rsp + 0x2b8], rax
mov qword [rsp + 0x2c0], r14
mov qword [rsp + 0x2c8], rbx
mov qword [rsp + 0x2d0], rcx
mov qword [rsp + 0x2d8], rdx
mov qword [rsp + 0x2e0], r15
mov qword [rsp + 0x2e8], rsi
mov qword [rsp + 0x2f0], rbx
lea rcx, [0x140002008]
call fcn.1400114ea
test rax, rax
jne 0x1400059c8
call fcn.140011a11
mov rdi, qword [rax]
lea rsi, [rdi + 0x80]
lea rcx, [0x140002008]
call fcn.1400114ea
test rax, rax
je 0x1400059f7
cmp qword [rax + 0x110], rdi
jne 0x140005a09
lea rcx, [rsp + 0x2a0]
mov rdx, rax
xor r8d, r8d
call fcn.140001a74
movaps xmm6, xmmword [rsp + 0x12a0]
add rsp, 0x12b8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rdx, [rsp + 0x2a0]
mov rcx, rsi
call fcn.140058780
jmp 0x1400059db
lea r8, [rsp + 0x2a0]
mov rcx, rsi
mov rdx, rax
call fcn.140058a44
jmp 0x1400059db
lea r8, str.startpe_srcdecompress.rs
call fcn.140058fa0
ud2
mov ecx, edx
call fcn.1400380be
jmp 0x140005a49
lea rdx, str.corrupt_xz_streampremature_eof
mov r8d, 0x11
mov cl, 0x15
call fcn.14000fe6c
mov rbx, rax
lea rcx, [rsp + 0x70]
call fcn.140002b70
mov qword [rsp + 0x48], rbx
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x1b0], rax
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x1b8], rax
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x70], rax
lea rax, [0x140026ed0]
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x80], rax
lea rax, [0x140020da0]
mov qword [rsp + 0x88], rax
lea rax, str.failed_to_unpack_file
lea rcx, [rsp + 0x2a0]
mov qword [rcx], rax
mov eax, 2
mov qword [rcx + 8], rax
mov qword [rcx + 0x20], 0
lea rdx, [rsp + 0x70]
mov qword [rcx + 0x10], rdx
mov qword [rcx + 0x18], rax
lea rdx, str.startpe_srcdecompress.rs
call fcn.140058ee0
ud2
lea r8, [0x14005c758]
mov rdx, rbx
call fcn.140058f20
ud2
lea r8, str.startpe_srcdecompress.rs
call fcn.140059290
ud2
lea r8, str.startpe_srcdecompress.rs
mov rcx, rdx
mov rdx, qword [rsp + 0x60]
jmp 0x140005c55
lea r8, [rsp + 0x2a0]
mov rax, qword [rsp + 0x58]
mov qword [r8], rax
lea rax, str.startpe_srcdecompress.rs
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, fcn.140002ba2
jmp 0x140005b7d
mov ebx, edx
lea rsi, [rsp + 0x1b0]
mov rcx, rsi
call fcn.1400383fc
mov byte [rsi], bl
lea rax, str.C:Usersjkene.cargo_registry_srcindex.crates.io_6f17d22bba15001fxz2_0.1.7_src_bufread.rs
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x14005c8e0]
lea r8, [rsp + 0x1b0]
mov edx, 0x2b
call fcn.140059370
ud2
mov qword [rsp + 0x48], rcx
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x1b0], rax
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x1b8], rax
lea rax, [rsp + 0x170]
mov qword [rsp + 0x2a0], rax
lea rax, [fcn.14000b740]
mov qword [rsp + 0x2a8], rax
lea rcx, [rsp + 0x48]
mov qword [rsp + 0x2b0], rcx
mov qword [rsp + 0x2b8], rax
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x2c0], rax
lea rax, [0x140026ed0]
mov qword [rsp + 0x2c8], rax
lea rax, str.file_hash____for
lea rcx, [rsp + 0x70]
mov qword [rcx], rax
mov eax, 3
mov qword [rcx + 8], rax
mov qword [rcx + 0x20], 0
mov qword [rcx + 0x10], r12
mov qword [rcx + 0x18], rax
lea rdx, str.startpe_srcdecompress.rs
jmp 0x140005ae1
lea rdx, [0x14005c971]
mov r8d, 0xd
mov cl, 0x25
jmp 0x140005a44
lea rax, str.startpe_srcdecompress.rs
mov edx, 0x1000
mov rcx, r8
mov r8, rax
call fcn.140059020
ud2
lea rcx, str.assertion_failed:_mid___self.len___rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_srcescape.rs
lea r8, str.C:Usersjkene.cargo_registry_srcindex.crates.io_6f17d22bba15001f_rayon_1.8.1_src_slicemod.rs
mov edx, 0x23
call fcn.1400590a0
ud2