Function at 0x1400ae490
Capabilities:
Set file attributes

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x50]
sub rsp, 0x150
mov rax, qword [0x1401ef010]
xor rax, rsp
mov qword [rbp + 0x40], rax
xor r12d, r12d
mov ebx, edx
mov rsi, rcx
mov r15d, r12d
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], r12d
cmp dword [rcx + 0x28], r12d
je 0x1400ae4e4
mov eax, r12d
test edx, edx
je 0x1400ae4e9
mov eax, 1
mov rdi, 0xffffffffffffffff
mov dword [rcx + 0x8c], eax
mov rax, rdi
mov qword [rcx + 0x10e3c], r12
lea r13, [rcx + 0x10c5c]
inc rax
cmp byte [rax + r13], r12b
jne 0x1400ae507
mov dword [rcx + 0x10e44], eax
mov r14d, gethostbyname
test ebx, ebx
je 0x1400ae5cb
movzx eax, byte [r13]
mov rcx, r13
test al, al
je 0x1400ae54d
cmp al, 0x5c
jne 0x1400ae537
mov byte [rcx], r14b
call fcn.14014f85c
mov rcx, rax
movzx eax, byte [rax]
test al, al
jne 0x1400ae530
movzx eax, byte [rsi + 0x10c5c]
mov r15, r13
cmp al, r14b
jne 0x1400ae56a
mov dword [rsi + 0x10e40], 1
inc r15
mov word [rsp + 0x30], r14w
jmp 0x1400ae5cb
movzx ecx, al
call fcn.14014bbb0
test eax, eax
je 0x1400ae5cb
cmp byte [rsi + 0x10c5d], 0x3a
jne 0x1400ae5cb
mov dword [rsi + 0x10e40], 1
lea r8, [rsp + 0x33]
movzx eax, byte [r13]
lea rdx, [r13 + 2]
cmp byte [r13 + 2], r14b
mov r15, r12
mov byte [rsp + 0x30], al
movzx eax, byte [r13 + 1]
sete r15b
mov byte [rsp + 0x31], al
movzx eax, byte [rsp + 0x32]
cmove eax, r14d
mov byte [rsp + 0x32], al
lea rax, [rsp + 0x32]
cmove rax, r8
add r15, rdx
mov byte [rax], r12b
mov r8d, 1
lea rdx, [rsp + 0x30]
mov rcx, rsi
call fcn.1400aee20
mov r14d, eax
test eax, eax
jne 0x1400ae9c8
mov byte [rsp + 0x30], r12b
lea r12, [rsp + 0x30]
test ebx, ebx
jne 0x1400ae617
cmp dword [rsi + 0x30], ebx
je 0x1400ae60a
lea edx, [rax + 0x2f]
mov rcx, r13
call fcn.14014a5d4
mov r15, rax
test r15, r15
jne 0x1400ae614
mov r15, r13
jmp 0x1400ae617
inc r15
movzx ebx, byte [r15]
test ebx, ebx
je 0x1400ae832
lea eax, [rbx - 0x20]
lea rdx, [0x140000000]
cmp eax, 0x5c
ja case.0x1400ae648.36
movzx eax, byte [rdx + rax + 0xaebe0]
mov ecx, dword [rdx + rax*4 + 0xaebcc]
add rcx, rdx
jmp rcx
lea rdx, [rsi + 0x10bd0]
mov byte [r12], 0
lea rcx, [rsp + 0x30]
call fcn.14014b298
test eax, eax
jne 0x1400ae6a7
mov eax, 0x2000
test word [rsi + 0x10bd6], ax
je 0x1400ae6a7
lea rcx, [rsp + 0x30]
mov rax, rdi
nop word [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1400ae680
add rax, 1
je 0x1400ae69f
nop
movzx ecx, byte [rsp + rax + 0x2f]
mov byte [rsp + rax + 0x30], cl
sub rax, 1
jne 0x1400ae690
mov al, 0x5f
mov byte [rsp + 0x30], al
jmp 0x1400ae6ac
movzx eax, byte [rsp + 0x30]
movzx ecx, byte [rsp + 0x31]
cmp al, 0x2e
jne 0x1400ae6ce
test cl, cl
jne 0x1400ae6ce
xor eax, eax
mov byte [rsp + 0x30], cl
mov qword [rsp + 0x28], rax
lea r12, [rsp + 0x30]
jmp 0x1400ae7c2
cmp dword [rsi + 0x70], 0
jne 0x1400ae701
cmp al, 0x2e
jne 0x1400ae701
cmp cl, al
jne 0x1400ae701
cmp byte [rsp + 0x32], 0
jne 0x1400ae701
xor eax, eax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x28], rax
lea r12, [rsp + 0x30]
mov dword [rsp + 0x20], 1
jmp 0x1400ae7c2
test al, al
je 0x1400ae72b
mov r8d, 2
lea rdx, [rsp + 0x30]
mov rcx, rsi
call fcn.1400aee20
mov r14d, eax
and eax, 0x7f00
cmp eax, 0x100
ja 0x1400ae9c5
xor eax, eax
lea r12, [rsp + 0x30]
mov qword [rsp + 0x28], rax
jmp 0x1400ae7c2
mov byte [r12], 0x5f
inc r12
jmp 0x1400ae7c2
mov qword [rsp + 0x28], r12
mov byte [r12], 0x3b
inc r12
jmp 0x1400ae7c2
cmp dword [rsi + 0x48], 0
jne 0x1400ae77e
mov rdx, r13
mov rcx, rsi
call fcn.1400adce0
test eax, eax
je 0x1400ae773
cmp dword [rsi + 0x10e50], 0
jne 0x1400ae77e
mov cl, 0x20
mov byte [r12], cl
inc r12
jmp 0x1400ae7c2
mov cl, 0x5f
mov byte [r12], cl
inc r12
jmp 0x1400ae7c2
mov ecx, ebx
call fcn.14014bd10
test eax, eax
jne 0x1400ae799
cmp ebx, 0x7f
jb 0x1400ae7c2
call fcn.1401507d4
movsxd rdx, eax
mov rcx, r15
call fcn.140150598
movsxd r8, eax
mov rdx, r15
mov rcx, r12
call fcn.140133600
mov rcx, r12
call fcn.14014f85c
mov r12, rax
mov rcx, r15
call fcn.14014f85c
mov r15, rax
movzx ebx, byte [rax]
test ebx, ebx
jne 0x1400ae623
cmp dword [rsp + 0x20], ebx
je 0x1400ae832
cmp dword [rsi + 0x44], ebx
jne 0x1400ae832
lea rdx, [rsi + 0x8b08]
mov rcx, r13
call fcn.1400b9100
mov r8, rax
lea rdx, str.warning:__skipped__..___path_component_s__in__s_n
lea rcx, [rsi + 0xb08]
call fcn.1400ab2c0
mov r8d, eax
lea rdx, [rsi + 0xb08]
xor r9d, r9d
mov rcx, rsi
call qword [rsi + 0x10df0]
test r14d, 0xffff80ff
jne 0x1400ae832
and r14d, 0x7f00
or r14d, 1
cmp byte [r13], 0
mov rbx, r13
movsxd r15, dword [rsi + 0x10e44]
je 0x1400ae868
test r15, r15
je 0x1400ae868
mov r13, rbx
call fcn.1401507d4
movsxd rdx, eax
mov rcx, rbx
call fcn.140150598
mov ecx, eax
add rbx, rcx
sub r15, rcx
cmp byte [rbx], 0
jne 0x1400ae843
cmp byte [r13], 0x2f
jne 0x1400ae9f5
lea r15, [rsi + 0x10c5c]
mov r8d, 4
mov rdx, r15
mov rcx, rsi
call fcn.1400aee20
cmp dword [rsi + 0x10e3c], 0
je 0x1400ae947
cmp dword [rsi + 0x44], 0
lea rdi, [rsi + 0xb08]
jne 0x1400ae8d8
lea rdx, [rsi + 0x8b08]
mov rcx, r15
call fcn.1400b9100
mov r8, rax
lea rdx, str.___creating:___22s_n
mov rcx, rdi
call fcn.1400ab2c0
mov r8d, eax
xor r9d, r9d
mov rdx, rdi
mov rcx, rsi
call qword [rsi + 0x10df0]
mov rax, qword [rsi + 0xb00]
mov edx, dword [rax + 0x14]
test dl, 0x6f
je 0x1400ae939
and edx, 0x7f
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_SetFileAttributesA]
test eax, eax
jne 0x1400ae939
lea rdx, [rsi + 0x8b08]
mov rcx, r15
call fcn.1400b9100
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9, rbx
lea rdx, str._nwarning___d_:_could_not_set_file_attributes_for__s_n
mov r8d, eax
mov rcx, rdi
call fcn.1400ab2c0
mov r8d, eax
mov r9d, 1
mov rdx, rdi
mov rcx, rsi
call qword [rsi + 0x10df0]
and r14d, 0xffff90ff
bts r14d, 0xc
jmp 0x1400ae9c5
cmp dword [rsi + 0x88], 1
jne 0x1400ae9b9
mov rax, qword [rsi + 0xb00]
mov edx, dword [rax + 0x14]
test dl, 0x6f
je 0x1400ae9b9
and edx, 0x7f
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_SetFileAttributesA]
test eax, eax
jne 0x1400ae9b9
lea rdx, [rsi + 0x8b08]
mov rcx, r15
call fcn.1400b9100
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9, rbx
lea rdx, str._nwarning___d_:_could_not_set_file_attributes_for__s_n
mov r8d, eax
lea rcx, [rsi + 0xb08]
call fcn.1400ab2c0
mov r8d, eax
lea rdx, [rsi + 0xb08]
mov r9d, 1
mov rcx, rsi
call qword [rsi + 0x10df0]
and r14d, 0xffff82ff
bts r14d, 9
mov eax, r14d
mov rcx, qword [rbp + 0x40]
xor rcx, rsp
call fcn.1401312c0
lea r11, [rsp + 0x150]
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
mov byte [r12], 0
cmp dword [rsi + 0x60], 0
jne 0x1400aea39
mov r15, qword [rsp + 0x28]
test r15, r15
je 0x1400aea39
movzx ecx, byte [r15 + 1]
lea rbx, [r15 + 1]
call fcn.14014bc60
test eax, eax
je 0x1400aea30
nop dword [rax]
movzx ecx, byte [rbx + 1]
inc rbx
call fcn.14014bc60
test eax, eax
jne 0x1400aea20
cmp byte [rbx], 0
jne 0x1400aea39
mov byte [r15], 0
lea rdx, [rsi + 0x10bd0]
lea rcx, [rsp + 0x30]
call fcn.14014b298
test eax, eax
jne 0x1400aeb6a
mov eax, 0x2000
test word [rsi + 0x10bd6], ax
je 0x1400aeb6a
lea rax, [rsp + 0x30]
nop dword [rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x1400aea70
add rdi, 1
je 0x1400aea8f
nop
movzx eax, byte [rsp + rdi + 0x2f]
mov byte [rsp + rdi + 0x30], al
sub rdi, 1
jne 0x1400aea80
mov byte [rsp + 0x30], 0x5f
mov r8d, 3
lea rdx, [rsp + 0x30]
mov rcx, rsi
call fcn.1400aee20
mov r8d, 4
lea rdx, [rsi + 0x10c5c]
mov rcx, rsi
call fcn.1400aee20
mov rax, qword [rsi + 0xb00]
test byte [rax + 0x18], 0x20
je 0x1400ae9c5
movzx eax, byte [rsi + 0x10e48]
add al, 0x60
cmp dword [rsi + 0x44], 0
mov byte [rsp + 0x20], al
movzx eax, word [0x1401d2f34]
mov word [rsp + 0x21], ax
movzx eax, byte [0x1401d2f36]
mov byte [rsp + 0x23], al
jne 0x1400aeb3b
lea rdx, [rsi + 0x8b08]
lea rcx, [rsi + 0x10c5c]
call fcn.1400b9100
mov r9, rax
lea r8, [rsp + 0x20]
lea rdx, str.labelling__s___22s_n
lea rcx, [rsi + 0xb08]
call fcn.1400ab2c0
mov r8d, eax
lea rdx, [rsi + 0xb08]
xor r9d, r9d
mov rcx, rsi
call qword [rsi + 0x10df0]
lea rdx, [rsi + 0x10c5c]
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_SetVolumeLabelA]
test eax, eax
jne 0x1400ae9b9
lea rdx, str.mapname:__error_setting_volume_label_n
lea rcx, [rsi + 0xb08]
call fcn.1400ab2c0
jmp 0x1400aeb9e
cmp byte [rsp + 0x30], 0
jne 0x1400aea94
lea rdx, [rsi + 0x8b08]
lea rcx, [rsi + 0x10c5c]
call fcn.1400b9100
mov r8, rax
lea rdx, str.mapname:__conversion_of__s_failed_n
lea rcx, [rsi + 0xb08]
call fcn.1400ab2c0
mov r8d, eax
lea rdx, [rsi + 0xb08]
mov r9d, 1
mov rcx, rsi
call qword [rsi + 0x10df0]
and r14d, 0xffff83ff
or r14d, 0x300
jmp 0x1400ae9c5