Function at 0x140120b10
Capabilities:
Set file attributes

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r13
push r14
lea rbp, [rsp - 0x50]
sub rsp, 0x150
mov rax, qword [0x140375828]
xor rax, rsp
mov qword [rbp + 0x40], rax
xor ebx, ebx
mov r14d, ecx
cmp dword [0x1403a70a8], ebx
mov esi, ebx
mov r12d, ebx
mov r13d, ebx
je 0x140120b5b
mov dword [0x1403a7120], ebx
test ecx, ecx
je 0x140120b65
mov dword [0x1403a7120], 1
mov qword [0x14049757c], rbx
lea rdi, [0x14049731c]
or rax, 0xffffffffffffffff
inc rax
cmp byte [rdi + rax], bl
jne 0x140120b77
mov dword [0x140497584], eax
test ecx, ecx
je 0x140120c36
movzx ecx, byte [0x14049731c]
mov rax, rdi
test cl, cl
je 0x140120bbc
nop dword [rax + rax]
cmp byte [rax], 0x5c
jne 0x140120ba8
mov byte [rax], 0x2f
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbsinc]
cmp byte [rax], bl
jne 0x140120ba0
movzx ecx, byte [0x14049731c]
mov rsi, rdi
cmp cl, 0x2f
jne 0x140120bde
mov dword [0x140497580], 1
lea rsi, [0x14049731d]
mov word [rsp + 0x30], 0x2f
jmp 0x140120c36
movzx ecx, cl
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isalpha]
test eax, eax
je 0x140120c36
cmp byte [0x14049731d], 0x3a
jne 0x140120c36
cmp byte [0x14049731e], 0x2f
lea rsi, [0x14049731e]
movzx eax, byte [0x14049731c]
mov byte [rsp + 0x30], al
lea rax, [rsp + 0x32]
mov dword [0x140497580], 1
mov byte [rsp + 0x31], 0x3a
jne 0x140120c34
mov byte [rsp + 0x32], 0x2f
lea rax, [rsp + 0x33]
lea rsi, [0x14049731f]
mov byte [rax], bl
mov edx, 1
lea rcx, [rsp + 0x30]
call fcn.14011f4b0
mov edi, eax
test eax, eax
jne 0x14012100b
mov qword [rsp + 0x180], r15
lea r15, [rsp + 0x30]
mov byte [rsp + 0x30], bl
test r14d, r14d
jne 0x140120c97
cmp dword [0x1403a70b0], ebx
je 0x140120c80
lea edx, [rax + 0x2f]
lea rcx, [0x14049731c]
call qword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbsrchr]
mov rsi, rax
test rsi, rsi
lea rcx, [rsi + 1]
lea rdx, [0x14049731c]
cmove rcx, rdx
mov rsi, rcx
jmp 0x140120c9e
lea rdx, [0x14049731c]
movzx r14d, byte [rsi]
lea r8, [0x140000000]
test r14d, r14d
je 0x140120e74
lea eax, [r14 - 0x20]
cmp eax, 0x5c
ja case.0x140120cd3.36
movzx eax, byte [r8 + rax + 0x1211dc]
mov ecx, dword [r8 + rax*4 + 0x1211c8]
add rcx, r8
jmp rcx
lea rcx, [rsp + 0x30]
mov byte [r15], bl
call fcn.140121240
movzx ecx, byte [rsp + 0x30]
cmp cl, byte [0x1402b7830]
movzx eax, byte [rsp + 0x31]
jne 0x140120d0d
cmp al, byte [0x1402b7831]
jne 0x140120d0d
mov byte [rsp + 0x30], bl
lea r15, [rsp + 0x30]
mov r12, rbx
jmp 0x140120de0
cmp dword [0x1403a70f4], ebx
jne 0x140120d49
cmp cl, byte [0x1402bb2ac]
jne 0x140120d49
cmp al, byte [0x1402bb2ad]
jne 0x140120d49
movzx eax, byte [rsp + 0x32]
cmp al, byte [0x1402bb2ae]
jne 0x140120d49
mov byte [rsp + 0x30], bl
lea r15, [rsp + 0x30]
mov r13d, 1
mov r12, rbx
jmp 0x140120de0
test cl, cl
je 0x140120d6e
mov edx, 2
lea rcx, [rsp + 0x30]
call fcn.14011f4b0
mov edi, eax
and eax, 0x7f00
cmp eax, 0x100
jg 0x140121001
lea r15, [rsp + 0x30]
mov r12, rbx
jmp 0x140120de0
mov byte [r15], 0x5f
inc r15
jmp 0x140120de0
mov r12, r15
mov byte [r15], 0x3b
inc r15
jmp 0x140120de0
cmp dword [0x1403a70c8], ebx
jne case.0x140120cd3.33
mov rcx, rdx
call fcn.14011ed10
test eax, eax
jne case.0x140120cd3.33
mov byte [r15], 0x20
inc r15
jmp 0x140120de0
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isprint]
test eax, eax
jne 0x140120dbd
cmp r14d, 0x7f
jb 0x140120de0
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbclen]
mov rdx, rsi
mov rcx, r15
mov r8, rax
call sub.VCRUNTIME140.dll_memcpy
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbsinc]
mov r15, rax
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbsinc]
mov rsi, rax
movzx r14d, byte [rax]
test r14d, r14d
je 0x140120e08
lea rdx, [0x14049731c]
lea r8, [0x140000000]
jmp 0x140120cb2
test r13d, r13d
je 0x140120e74
cmp dword [0x1403a70c4], ebx
lea rsi, [0x14049731c]
jne 0x140120e7b
mov r8d, 0x4000
lea rdx, [0x14048f178]
mov rcx, rsi
call fcn.1401608c0
mov r8, rax
lea rdx, str.warning:__skipped__..___path_component_s__in__s_n
lea rcx, [0x140487178]
call fcn.1400e1500
mov r8d, eax
lea rdx, [0x140487178]
xor r9d, r9d
lea rcx, [0x1403a7080]
call qword [0x140497538]
test edi, 0xffff80ff
jne 0x140120e7b
and edi, 0x7f00
or edi, 1
jmp 0x140120e7b
lea rsi, [0x14049731c]
movsxd rdx, dword [0x140497584]
mov rcx, rsi
call fcn.14011e800
cmp byte [rax], 0x2f
jne 0x140121033
mov edx, 4
mov rcx, rsi
call fcn.14011f4b0
cmp dword [0x14049757c], ebx
je 0x140120f7b
cmp dword [0x1403a70c4], ebx
jne 0x140120ef9
mov r8d, 0x4000
lea rdx, [0x14048f178]
mov rcx, rsi
call fcn.1401608c0
mov r8, rax
lea rdx, str.___creating:___22s_n
lea rcx, [0x140487178]
call fcn.1400e1500
mov r8d, eax
lea rdx, [0x140487178]
xor r9d, r9d
lea rcx, [0x1403a7080]
call qword [0x140497538]
mov rax, qword [0x140487170]
mov edx, dword [rax + 0x24]
test dl, 0x6f
je 0x140120f6c
and edx, 0x7f
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_SetFileAttributesA]
test eax, eax
jne 0x140120f6c
mov r8d, 0x4000
lea rdx, [0x14048f178]
mov rcx, rsi
call fcn.1401608c0
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, [0x140487178]
call fcn.1400e1500
mov r8d, eax
lea rdx, [0x140487178]
mov r9d, 1
lea rcx, [0x1403a7080]
call qword [0x140497538]
and edi, 0xffff90ff
bts edi, 0xc
jmp 0x140121001
cmp dword [0x1403a711c], 1
jne 0x140120ff7
mov rax, qword [0x140487170]
mov edx, dword [rax + 0x24]
test dl, 0x6f
je 0x140120ff7
and edx, 0x7f
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_SetFileAttributesA]
test eax, eax
jne 0x140120ff7
mov r8d, 0x4000
lea rdx, [0x14048f178]
mov rcx, rsi
call fcn.1401608c0
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, [0x140487178]
call fcn.1400e1500
mov r8d, eax
lea rdx, [0x140487178]
mov r9d, 1
lea rcx, [0x1403a7080]
call qword [0x140497538]
and edi, 0xffff82ff
bts edi, 9
mov r15, qword [rsp + 0x180]
mov eax, edi
mov rcx, qword [rbp + 0x40]
xor rcx, rsp
call fcn.1401dd140
lea r11, [rsp + 0x150]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r14
pop r13
pop r12
pop rdi
pop rbp
ret
mov byte [r15], bl
cmp dword [0x1403a70e4], ebx
jne 0x140121080
test r12, r12
je 0x140121080
movzx ecx, byte [r12 + 1]
lea rsi, [r12 + 1]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
test eax, eax
je 0x140121071
nop dword [rax + rax]
movzx ecx, byte [rsi + 1]
inc rsi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
test eax, eax
jne 0x140121060
cmp byte [rsi], bl
lea rsi, [0x14049731c]
jne 0x140121080
mov byte [r12], bl
lea rcx, [rsp + 0x30]
call fcn.140121240
cmp byte [rsp + 0x30], bl
jne 0x1401210e9
mov r8d, 0x4000
lea rdx, [0x14048f178]
mov rcx, rsi
call fcn.1401608c0
mov r8, rax
lea rdx, str.mapname:__conversion_of__s_failed_n
lea rcx, [0x140487178]
call fcn.1400e1500
mov r8d, eax
lea rdx, [0x140487178]
mov r9d, 1
lea rcx, [0x1403a7080]
call qword [0x140497538]
and edi, 0xffff83ff
or edi, 0x300
jmp 0x140121001
mov edx, 3
lea rcx, [rsp + 0x30]
call fcn.14011f4b0
mov edx, 4
mov rcx, rsi
call fcn.14011f4b0
mov rax, qword [0x140487170]
test byte [rax + 0x28], 0x20
je 0x140121001
movzx eax, byte [0x140497588]
lea rcx, [0x140000000]
add al, 0x60
mov byte [rsp + 0x20], al
nop word [rax + rax]
movzx eax, byte [rbx + rcx + 0x25f9c4]
mov byte [rsp + rbx + 0x21], al
lea rbx, [rbx + 1]
test al, al
jne 0x140121130
cmp dword [0x1403a70c4], 0
jne 0x140121197
mov r8d, 0x4000
lea rdx, [0x14048f178]
mov rcx, rsi
call fcn.1401608c0
mov r9, rax
lea r8, [rsp + 0x20]
lea rdx, str.labelling__s___22s_n
lea rcx, [0x140487178]
call fcn.1400e1500
mov r8d, eax
lea rdx, [0x140487178]
xor r9d, r9d
lea rcx, [0x1403a7080]
call qword [0x140497538]
mov rdx, rsi
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_SetVolumeLabelA]
test eax, eax
jne 0x140120ff7
lea rdx, str.mapname:__error_setting_volume_label_n
lea rcx, [0x140487178]
call fcn.1400e1500
jmp 0x1401210bb