Function at 0x18000ce10
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x3f0]
sub rsp, 0x4f0
mov rax, qword [0x18006af78]
xor rax, rsp
mov qword [rbp + 0x3e0], rax
mov r10, r9
mov qword [rbp - 0x70], r9
mov rsi, r8
mov qword [rbp - 0x80], r8
mov r14, rdx
mov qword [rbp - 0x28], rdx
mov edx, ecx
mov dword [rsp + 0x30], ecx
xor r12d, r12d
mov qword [rbp + 0x70], r12
mov qword [rbp + 0x78], 7
mov word [rbp + 0x60], r12w
mov r8d, ecx
mov dword [rsp + 0x38], ecx
imul eax, ecx, 0x55f
mov dword [rsp + 0x78], eax
movabs r13, 0x7ffffffffffffffe
mov ebx, dword [rsp + 0x58]
mov r9, qword [rbp - 0x70]
mov r11, qword [rbp - 0x70]
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x50], r11
cmp ecx, eax
ja 0x18000db0f
movsd xmm3, qword [rbp - 0x40]
movsd qword [rsp + 0x68], xmm3
movups xmm2, xmmword [rbp - 0x50]
movups xmmword [rbp - 0x50], xmm2
movsd xmm0, qword [rbp - 0x40]
movsd qword [rsp + 0x60], xmm0
movups xmm1, xmmword [rbp - 0x50]
movups xmmword [rbp - 0x68], xmm1
mov rax, qword [rbp - 0x70]
mov qword [rsp + 0x40], rax
mov ecx, dword [rsp + 0x78]
mov qword [rsp + 0x70], rcx
movabs r15, 0x43ffffff01ff9
movabs r14, 0x61736964206564
mov edi, 4
cmp r8d, 0x7896
ja 0x18000d681
je 0x18000d638
mov eax, r8d
sub eax, 0xc
je 0x18000d60c
sub eax, 0xc7
je 0x18000d46e
sub eax, 0x22
je 0x18000d432
sub eax, 0x4f3
je 0x18000d358
cmp eax, 0x61f2
jne 0x18000d32f
mov r15, r12
mov qword [rsp + 0x40], r12
mov rdx, r12
mov qword [rbp - 0x38], rdx
cmp qword [0x1800696b8], 0
jbe 0x18000daba
nop
mov edi, 0xd7
mov dword [rbp - 0x78], edi
nop dword [rax + rax]
cmp edi, 0x3af25
ja 0x18000d09f
je 0x18000d096
cmp edi, 0x1d7fe
ja 0x18000d03f
je 0x18000d029
cmp edi, 0xd7
je 0x18000cfec
cmp edi, 0x9de4
je 0x18000cfcd
cmp edi, 0x13af1
jne 0x18000d2d1
mov eax, dword [str.debu]
mov dword [rbp + 0x88], eax
mov eax, 0x67
mov word [rbp + 0x8c], ax
jmp 0x18000d2d1
mov eax, dword [str.ader]
mov dword [rbp + 0x83], eax
movzx eax, word [0x180063c0c]
mov word [rbp + 0x87], ax
jmp 0x18000d2d1
movzx eax, word [0x180063bfc]
mov word [rbp + 0x80], ax
movzx eax, byte [0x180063bfe]
mov byte [rbp + 0x82], al
lea rax, [rbp + 0x80]
dec rax
lea rax, [rax + 1]
cmp byte [rax], 0
jne 0x18000d011
movzx ecx, word [0x180061e64]
mov word [rax], cx
jmp 0x18000d2cc
mov dword [rbp + 0x8d], 0x6f6d20
mov qword [rbp + 0x90], r14
jmp 0x18000d2d1
cmp edi, 0x2750b
je 0x18000d05d
cmp edi, 0x31218
jne 0x18000d2d1
mov byte [rsp + 0x34], 1
jmp 0x18000d2d1
mov r8d, 1
lea rdx, [0x180061e74]
lea rcx, [rbp + 0x80]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
mov r8d, 5
lea rdx, str.led__
lea rcx, [rbp + 0x80]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
jmp 0x18000d2c8
mov qword [rbp], r12
jmp 0x18000d2d1
cmp edi, 0x62359
ja 0x18000d13c
je 0x18000d113
cmp edi, 0x44c32
je 0x18000d103
cmp edi, 0x4e93f
je 0x18000d0e1
cmp edi, 0x5864c
jne 0x18000d2d1
mov dword [rbp - 0x58], r12d
mov edx, ecx
lea rcx, [rbp + 0x80]
call qword [sym.imp.SHELL32.dll_DoEnvironmentSubstA]
jmp 0x18000d2c8
lea rax, [rbp + 0x80]
mov rcx, 0xffffffffffffffff
nop
inc rcx
cmp byte [rax + rcx], 0
jne 0x18000d0f0
mov qword [rsp + 0x70], rcx
jmp 0x18000d2d1
mov dword [rbp - 0x54], 0x36
mov qword [rbp - 0x18], r12
jmp 0x18000d2d1
lea rax, [rbp + 0xc0]
mov qword [rsp + 0x20], rax
mov r9d, dword [rbp - 0x58]
mov r8, qword [rbp - 0x18]
mov edx, dword [rbp - 0x54]
mov rcx, qword [rbp]
call qword [sym.imp.SHELL32.dll_SHGetFolderPathA]
mov dword [rbp - 0x20], eax
jmp 0x18000d2c8
cmp edi, 0x6c066
je 0x18000d298
cmp edi, 0x75d73
jne 0x18000d2d1
lea rax, [0x1800696a8]
cmp qword [0x1800696c0], 0x10
cmovae rax, qword [0x1800696a8]
movsx r13d, byte [rax + rdx]
mov r15, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x78]
cmp r15, rcx
jae 0x18000d1a2
lea rax, [r15 + 1]
mov qword [rbp + 0x70], rax
lea rax, [rbp + 0x60]
cmp rcx, 8
cmovae rax, qword [rbp + 0x60]
mov word [rax + r15*2], r13w
mov word [rax + r15*2 + 2], r12w
jmp 0x18000d2cc
movabs rdx, 0x7ffffffffffffffe
mov rax, rdx
sub rax, r15
cmp rax, 1
jb 0x18000deda
lea r12, [r15 + 1]
mov r14, qword [rbp + 0x78]
mov rdi, r12
or rdi, 7
cmp rdi, rdx
jbe 0x18000d1d5
mov rdi, rdx
jmp 0x18000d1f6
mov rcx, r14
shr rcx, 1
mov rax, rdx
sub rax, rcx
cmp r14, rax
jbe 0x18000d1eb
mov rdi, rdx
jmp 0x18000d1f6
lea rax, [r14 + rcx]
cmp rdi, rax
cmovb rdi, rax
lea rdx, [rdi + 1]
lea rcx, [rbp + 0x60]
call fcn.180025480
mov rsi, rax
mov qword [rbp + 0x70], r12
mov qword [rbp + 0x78], rdi
add r15, r15
mov r8, r15
mov rcx, rax
cmp r14, 8
jb 0x18000d27f
mov rdi, qword [rbp + 0x60]
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov word [rsi + r15], r13w
xor r12d, r12d
mov word [rsi + r15 + 2], r12w
lea rdx, [r14*2 + 2]
cmp rdx, 0x1000
jb 0x18000d264
add rdx, 0x27
mov rcx, qword [rdi - 8]
sub rdi, rcx
lea rax, [rdi - 8]
cmp rax, 0x1f
ja 0x18000dac3
mov rdi, rcx
mov rcx, rdi
call fcn.18005cbb4
mov qword [rbp + 0x60], rsi
mov edi, dword [rbp - 0x78]
movabs r14, 0x61736964206564
jmp 0x18000d2c8
lea rdx, [rbp + 0x60]
call sub.VCRUNTIME140.dll_memcpy
mov word [rsi + r15], r13w
xor r12d, r12d
mov word [rsi + r15 + 2], r12w
jmp 0x18000d26c
mov ecx, r12d
movzx eax, byte [rsp + 0x34]
cmp dword [rbp - 0x20], 0
cmove ecx, eax
mov byte [rsp + 0x34], cl
cmp cl, 0
je 0x18000d2cc
lea r9, [rbp + 0xc0]
mov r8d, dword [rbp - 0x58]
mov rdx, qword [rbp - 0x18]
mov ecx, dword [rbp - 0x54]
call qword [sym.imp.SHELL32.dll_SHSetFolderPathA]
mov rdx, qword [rbp - 0x38]
mov rcx, qword [rsp + 0x70]
add edi, 0x9d0d
mov dword [rbp - 0x78], edi
cmp edi, 0x7f9a9
jbe 0x18000cf70
inc rdx
mov qword [rbp - 0x38], rdx
cmp rdx, qword [0x1800696b8]
jb 0x18000cf60
movsd xmm0, qword [rsp + 0x60]
movups xmm1, xmmword [rbp - 0x68]
movups xmm2, xmmword [rbp - 0x50]
movsd xmm3, qword [rsp + 0x68]
mov rsi, qword [rbp - 0x80]
mov edx, dword [rsp + 0x30]
mov r9, qword [rsp + 0x48]
mov r11, qword [rsp + 0x50]
movabs r13, 0x7ffffffffffffffe
mov r8d, dword [rsp + 0x38]
mov r15, qword [rsp + 0x40]
imul eax, edx, 0x7d
add r8d, eax
mov dword [rsp + 0x38], r8d
cmp r8d, dword [rsp + 0x78]
ja 0x18000db1a
mov rcx, qword [rsp + 0x70]
mov r10, qword [rbp - 0x70]
jmp 0x18000cee0
cmp r11, r9
je 0x18000dad0
mov r8, qword [rbp - 0x10]
cmp r8, r9
je 0x18000d32a
nop word [rax + rax]
mov edx, 0x7a
mov eax, edx
sub eax, 0x79
je 0x18000d3d2
cmp eax, 1
jne 0x18000d415
movzx ecx, byte [r8]
lea eax, [rcx - 0x2d]
cmp al, 0x32
ja 0x18000d399
movzx eax, al
bt r15, rax
jb 0x18000d415
sub cl, 0x61
cmp cl, 0x19
jbe 0x18000d415
lea rcx, str._s:__s:__s_register_callback_failed_._DevMgrError___ld
lea r9, str.org_apache_subversion_javahl_callback_LogMessageCallback
mov rax, qword [rbp - 0x28]
cmp dword [rax], 0
cmovne r9, rcx
mov r8d, PathMakeUniqueName
mov rdx, rsi
xor ecx, ecx
call fcn.180044690
mov rbx, rax
jmp case.0x18000db57.3
movzx ecx, byte [r8]
test cl, cl
js 0x18000d3e1
mov eax, 1
jmp 0x18000d40e
movzx eax, cl
and al, 0xe0
cmp al, 0xc0
jne 0x18000d3f1
mov eax, 2
jmp 0x18000d40e
movzx eax, cl
and al, 0xf0
cmp al, 0xe0
jne 0x18000d401
mov eax, 3
jmp 0x18000d40e
and cl, 0xf8
mov rax, r12
cmp cl, 0xf0
cmove rax, rdi
add r8, rax
mov qword [rbp - 0x10], r8
dec edx
cmp edx, 0x78
ja 0x18000d375
cmp r8, r9
jne 0x18000d370
mov edx, dword [rsp + 0x30]
jmp 0x18000d32a
mov edx, 0x113
mov rcx, rsi
call fcn.1800541a0
test eax, eax
je 0x18000db00
movsd xmm3, qword [rsp + 0x68]
movups xmm2, xmmword [rbp - 0x50]
movups xmm1, xmmword [rbp - 0x68]
movsd xmm0, qword [rsp + 0x60]
mov edx, dword [rsp + 0x30]
mov r9, qword [rsp + 0x48]
mov r11, qword [rsp + 0x50]
jmp 0x18000d32a
mov rsi, qword [0x180069698]
lea rdi, [0x180069688]
cmp qword [0x1800696a0], 8
cmovae rdi, qword [0x180069688]
cmp rsi, 8
jae 0x18000d4ab
movups xmm0, xmmword [rdi]
movups xmmword [rbp + 0x80], xmm0
mov r15d, 7
mov r13, qword [rbp + 0x80]
jmp 0x18000d4e6
mov r15, rsi
or r15, 7
cmp r15, r13
cmova r15, r13
lea rdx, [r15 + 1]
lea rcx, [rbp + 0x80]
call fcn.180025480
mov r13, rax
mov qword [rbp + 0x80], rax
lea r8, [rsi*2 + 2]
mov rdx, rdi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp + 0x98], r15
mov qword [rbp + 0x90], rsi
lea r14, [rbp + 0x80]
cmp r15, 8
cmovae r14, r13
cmp rsi, 8
jae 0x18000d51a
movups xmm0, xmmword [r14]
mov qword [rbp + 0xb8], 7
jmp 0x18000d56a
mov rdi, rsi
or rdi, 7
movabs rax, 0x7ffffffffffffffe
cmp rdi, rax
cmova rdi, rax
lea rdx, [rdi + 1]
lea rcx, [rbp + 0xa0]
call fcn.180025480
mov qword [rbp + 0xa0], rax
lea r8, [rsi*2 + 2]
mov rdx, r14
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp + 0xb8], rdi
movups xmm0, xmmword [rbp + 0xa0]
movups xmmword [rbp - 0x38], xmm0
mov qword [rbp + 0xb0], rsi
mov rcx, qword [rbp + 0x78]
cmp rcx, 8
jb 0x18000d5b5
lea rdx, [rcx*2 + 2]
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000d5b0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000db08
call fcn.18005cbb4
movups xmm0, xmmword [rbp - 0x38]
movups xmmword [rbp + 0x60], xmm0
movups xmm0, xmmword [rbp + 0xb0]
movups xmmword [rbp + 0x70], xmm0
cmp r15, 8
jb 0x18000d2fa
lea rdx, [r15*2 + 2]
mov rax, r13
cmp rdx, 0x1000
jb 0x18000d5ff
add rdx, 0x27
mov r13, qword [r13 - 8]
sub rax, r13
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000de4c
mov rcx, r13
call fcn.18005cbb4
jmp 0x18000d2fa
mov rax, 0xffffffffffffffff
lea rax, [rax + 1]
cmp byte [r10 + rax], 0
jne 0x18000d613
mov r11, r10
mov qword [rsp + 0x50], r10
lea r9, [rax + r10]
mov qword [rsp + 0x48], r9
mov qword [rbp - 0x10], r10
jmp 0x18000d32f
mov r9d, reloc.SHELL32.dll_ILClone
mov r8, rsi
xor edx, edx
xor ecx, ecx
call fcn.1800490b0
test eax, eax
jne 0x18000d447
mov ecx, 0xa1
mov eax, ecx
sub eax, 0xa1
je 0x18000d66b
cmp eax, 1
je case.0x18000db57.3
jmp 0x18000d672
mov ebx, r12d
mov dword [rsp + 0x58], ebx
inc ecx
cmp ecx, 0xa3
jb 0x18000d657
jmp 0x18000d447
cmp r8d, 0xcee1
je 0x18000d99d
cmp r8d, 0xf037
je 0x18000d978
cmp r8d, 0x135e8
je 0x18000d837
cmp r8d, 0x167d8
je 0x18000d7b4
cmp r8d, 0x1df79
jne 0x18000d32f
mov qword [rbp + 0x14], r12
mov qword [rbp + 0x1c], r12
mov qword [rbp + 0x24], r12
mov dword [rbp + 0x2c], r12d
mov eax, dword [r10]
mov dword [rbp + 0x10], eax
movsd qword [rbp + 0x40], xmm3
movups xmmword [rbp + 0x48], xmm1
movsd qword [rbp + 0x58], xmm0
lea rdx, [rsi + 0x110]
mov rax, qword [rdx]
cmp qword [rsi + 0x120], rax
jne 0x18000d76f
lea r9, [rsi + 0x108]
lea rcx, [rsi + 0x118]
mov dword [rsp + 0x20], 0x89
lea r8, [rsi + 0x120]
call fcn.18005b630
test eax, eax
jne 0x18000d756
mov dword [rsi], 1
mov eax, 0x6d
nop word [rax + rax]
cmp eax, 0x6d
je 0x18000d740
cmp eax, 0x7c
je case.0x18000db57.3
jmp 0x18000d747
mov ebx, r12d
mov dword [rsp + 0x58], ebx
add eax, 0xf
cmp eax, 0x8b
jb 0x18000d730
jmp 0x18000d447
movups xmm2, xmmword [rbp - 0x50]
movsd xmm3, qword [rsp + 0x68]
mov r8d, dword [rsp + 0x38]
mov r9, qword [rsp + 0x48]
mov r11, qword [rsp + 0x50]
mov rax, qword [rsi + 0x120]
movaps xmm0, xmmword [rbp + 0x10]
movups xmmword [rax], xmm0
movaps xmm1, xmmword [rbp + 0x20]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax + 0x20], xmm2
movaps xmm0, xmmword [rbp + 0x40]
movups xmmword [rax + 0x30], xmm0
movaps xmm1, xmmword [rbp + 0x50]
movups xmmword [rax + 0x40], xmm1
add qword [rsi + 0x120], 0x50
movsd xmm0, qword [rsp + 0x60]
movups xmm1, xmmword [rbp - 0x68]
mov edx, dword [rsp + 0x30]
jmp 0x18000d32f
inc qword [rsi + 0xe0]
inc qword [rsi + 0xf0]
dec qword [rsi + 0xa8]
mov rdx, qword [rsi + 0x98]
movzx ecx, byte [rdx]
test cl, cl
js 0x18000d7de
mov eax, 1
jmp 0x18000d80b
movzx eax, cl
and al, 0xe0
cmp al, 0xc0
jne 0x18000d7ee
mov eax, 2
jmp 0x18000d80b
movzx eax, cl
and al, 0xf0
cmp al, 0xe0
jne 0x18000d7fe
mov eax, 3
jmp 0x18000d80b
and cl, 0xf8
mov rax, r12
cmp cl, 0xf0
cmove rax, rdi
add rax, rdx
mov qword [rsi + 0x98], rax
movups xmm1, xmmword [rsi + 0xe0]
movups xmmword [rbp - 0x68], xmm1
movsd xmm0, qword [rsi + 0xf0]
movsd qword [rsp + 0x60], xmm0
mov edx, dword [rsp + 0x30]
jmp 0x18000d32f
mov rsi, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x78]
cmp rsi, rcx
jae 0x18000d86d
lea rax, [rsi + 1]
mov qword [rbp + 0x70], rax
lea rax, [rbp + 0x60]
cmp rcx, 8
cmovae rax, qword [rbp + 0x60]
mov dword [rax + rsi*2], 0x64
mov qword [rbp + 8], r12
mov rsi, qword [rbp - 0x80]
jmp 0x18000d32f
mov rax, r13
sub rax, rsi
cmp rax, 1
jb 0x18000ded4
lea r12, [rsi + 1]
mov r14, qword [rbp + 0x78]
mov rdi, r12
or rdi, 7
cmp rdi, r13
jbe 0x18000d896
mov rdi, r13
jmp 0x18000d8b7
mov rcx, r14
shr rcx, 1
mov rax, r13
sub rax, rcx
cmp r14, rax
jbe 0x18000d8ac
mov rdi, r13
jmp 0x18000d8b7
lea rax, [rcx + r14]
cmp rdi, rax
cmovb rdi, rax
lea rdx, [rdi + 1]
lea rcx, [rbp + 0x60]
call fcn.180025480
mov r15, rax
mov qword [rbp + 0x70], r12
mov qword [rbp + 0x78], rdi
add rsi, rsi
mov r8, rsi
mov rcx, rax
cmp r14, 8
jb 0x18000d92c
mov rdi, qword [rbp + 0x60]
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov dword [rsi + r15], 0x64
xor r12d, r12d
lea rdx, [r14*2 + 2]
cmp rdx, 0x1000
jb 0x18000d922
add rdx, 0x27
mov rcx, qword [rdi - 8]
sub rdi, rcx
lea rax, [rdi - 8]
cmp rax, 0x1f
ja 0x18000de4c
mov rdi, rcx
mov rcx, rdi
call fcn.18005cbb4
jmp 0x18000d940
lea rdx, [rbp + 0x60]
call sub.VCRUNTIME140.dll_memcpy
mov dword [rsi + r15], 0x64
xor r12d, r12d
mov r11, qword [rsp + 0x50]
mov r9, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x38]
mov edx, dword [rsp + 0x30]
movsd xmm3, qword [rsp + 0x68]
movups xmm2, xmmword [rbp - 0x50]
movups xmm1, xmmword [rbp - 0x68]
movsd xmm0, qword [rsp + 0x60]
mov qword [rbp + 0x60], r15
mov qword [rbp + 8], r12
mov rsi, qword [rbp - 0x80]
jmp 0x18000d32f
mov dword [rsi + 0x154], r12d
movups xmm2, xmmword [rsi + 0xe0]
movups xmmword [rbp - 0x50], xmm2
movsd xmm3, qword [rsi + 0xf0]
movsd qword [rsp + 0x68], xmm3
jmp 0x18000d32f
mov rsi, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x78]
cmp rsi, rcx
jae 0x18000d9cf
lea rax, [rsi + 1]
mov qword [rbp + 0x70], rax
lea rax, [rbp + 0x60]
cmp rcx, 8
cmovae rax, qword [rbp + 0x60]
mov dword [rax + rsi*2], PathMakeUniqueName
mov rsi, qword [rbp - 0x80]
jmp 0x18000d32f
mov rax, r13
sub rax, rsi
cmp rax, 1
jb 0x18000ded4
lea r12, [rsi + 1]
mov r14, qword [rbp + 0x78]
mov rdi, r12
or rdi, 7
cmp rdi, r13
jbe 0x18000d9f8
mov rdi, r13
jmp 0x18000da19
mov rcx, r14
shr rcx, 1
mov rax, r13
sub rax, rcx
cmp r14, rax
jbe 0x18000da0e
mov rdi, r13
jmp 0x18000da19
lea rax, [rcx + r14]
cmp rdi, rax
cmovb rdi, rax
lea rdx, [rdi + 1]
lea rcx, [rbp + 0x60]
call fcn.180025480
mov r15, rax
mov qword [rbp + 0x70], r12
mov qword [rbp + 0x78], rdi
add rsi, rsi
mov r8, rsi
mov rcx, rax
cmp r14, 8
jb 0x18000da99
mov rdi, qword [rbp + 0x60]
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov dword [rsi + r15], PathMakeUniqueName
xor r12d, r12d
lea rdx, [r14*2 + 2]
cmp rdx, 0x1000
jb 0x18000da84
add rdx, 0x27
mov rcx, qword [rdi - 8]
sub rdi, rcx
lea rax, [rdi - 8]
cmp rax, 0x1f
ja 0x18000de4c
mov rdi, rcx
mov rcx, rdi
call fcn.18005cbb4
mov qword [rbp + 0x60], r15
mov rsi, qword [rbp - 0x80]
jmp 0x18000d447
lea rdx, [rbp + 0x60]
call sub.VCRUNTIME140.dll_memcpy
mov dword [rsi + r15], PathMakeUniqueName
xor r12d, r12d
mov qword [rbp + 0x60], r15
mov rsi, qword [rbp - 0x80]
jmp 0x18000d447
mov edx, dword [rsp + 0x30]
jmp 0x18000d334
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
lea rcx, str.27QAccessibleFactoryInterface
lea r9, str.permission:contextMenusPrivate
mov rax, qword [rbp - 0x28]
cmp dword [rax], 0
cmovne r9, rcx
mov r8d, PathMakeUniqueName
mov rdx, rsi
xor ecx, ecx
call fcn.180044690
mov ebx, eax
jmp case.0x18000db57.3
mov ebx, r12d
jmp case.0x18000db57.3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov r15, qword [rbp - 0x70]
mov qword [rsp + 0x40], r15
jmp 0x18000db1e
mov r14, qword [rbp - 0x28]
lea r13d, [rdx - 0xa]
cmp edx, r13d
jbe case.0x18000db57.3
mov edi, r13d
lea r8, [0x180000000]
cmp edi, 0xeb
ja case.0x18000db57.9
mov eax, edi
movzx eax, byte [r8 + rax + 0xdf08]
mov ecx, dword [r8 + rax*4 + 0xdee0]
add rcx, r8
jmp rcx
mov ebx, 1
mov dword [rsp + 0x58], ebx
jmp case.0x18000db57.9
call qword [sym.imp.SHELL32.dll_SHLoadNonloadedIconOverlayIdentifiers]
mov edx, dword [rsp + 0x30]
jmp case.0x18000db57.9
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x28], eax
lea rax, [rbp + 0x1d0]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 8]
lea r8, [rbp - 8]
xor edx, edx
mov rcx, r15
call sub.SHELL32.dll_SHGetUnreadMailCountW
xor eax, eax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x60]
mov r8, rsi
lea edx, [rax + 0xe]
xor ecx, ecx
call fcn.1800119d0
mov byte [rsp + 0x58], al
mov ebx, dword [rsp + 0x58]
mov edx, dword [rsp + 0x30]
jmp case.0x18000db57.9
mov qword [rsi + 0x130], r11
mov rax, r9
sub rax, r11
mov qword [rsi + 0x138], rax
jmp case.0x18000db57.9
mov r14, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x78]
cmp r14, rcx
jae 0x18000dc12
lea rax, [r14 + 1]
mov qword [rbp + 0x70], rax
lea rax, [rbp + 0x60]
cmp rcx, 8
cmovae rax, qword [rbp + 0x60]
mov dword [rax + r14*2], 0x61
jmp case.0x18000db57.9
movabs rdx, 0x7ffffffffffffffe
mov rax, rdx
sub rax, r14
cmp rax, 1
jb 0x18000ded4
lea rsi, [r14 + 1]
mov r15, qword [rbp + 0x78]
or rsi, 7
cmp rsi, rdx
jbe 0x18000dc42
mov rsi, rdx
jmp 0x18000dc63
mov rcx, r15
shr rcx, 1
mov rax, rdx
sub rax, rcx
cmp r15, rax
jbe 0x18000dc58
mov rsi, rdx
jmp 0x18000dc63
lea rax, [r15 + rcx]
cmp rsi, rax
cmovb rsi, rax
lea rdx, [rsi + 1]
lea rcx, [rbp + 0x60]
call fcn.180025480
mov r12, rax
lea rax, [r14 + 1]
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x78], rsi
add r14, r14
mov r8, r14
mov rcx, r12
cmp r15, 8
jb 0x18000dce4
mov rsi, qword [rbp + 0x60]
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov dword [r14 + r12], 0x61
lea rdx, [r15*2 + 2]
cmp rdx, 0x1000
jb 0x18000dccf
add rdx, 0x27
mov rcx, qword [rsi - 8]
sub rsi, rcx
lea rax, [rsi - 8]
cmp rax, 0x1f
ja 0x18000de4c
mov rsi, rcx
mov rcx, rsi
call fcn.18005cbb4
mov qword [rbp + 0x60], r12
mov edx, dword [rsp + 0x30]
jmp case.0x18000db57.9
lea rdx, [rbp + 0x60]
call sub.VCRUNTIME140.dll_memcpy
mov dword [r14 + r12], 0x61
mov qword [rbp + 0x60], r12
mov edx, dword [rsp + 0x30]
jmp case.0x18000db57.9
mov eax, dword [r14]
mov dword [rsi + 0x140], eax
jmp case.0x18000db57.9
mov r14, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x78]
cmp r14, rcx
jae 0x18000dd3f
lea rax, [r14 + 1]
mov qword [rbp + 0x70], rax
lea rax, [rbp + 0x60]
cmp rcx, 8
cmovae rax, qword [rbp + 0x60]
mov dword [rax + r14*2], 0x74
jmp 0x18000de1b
movabs rdx, 0x7ffffffffffffffe
mov rax, rdx
sub rax, r14
cmp rax, 1
jb 0x18000ded4
lea rsi, [r14 + 1]
mov r15, qword [rbp + 0x78]
or rsi, 7
cmp rsi, rdx
jbe 0x18000dd6f
mov rsi, rdx
jmp 0x18000dd90
mov rcx, r15
shr rcx, 1
mov rax, rdx
sub rax, rcx
cmp r15, rax
jbe 0x18000dd85
mov rsi, rdx
jmp 0x18000dd90
lea rax, [rcx + r15]
cmp rsi, rax
cmovb rsi, rax
lea rdx, [rsi + 1]
lea rcx, [rbp + 0x60]
call fcn.180025480
mov r12, rax
lea rax, [r14 + 1]
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x78], rsi
add r14, r14
mov r8, r14
mov rcx, r12
cmp r15, 8
jb 0x18000de02
mov rsi, qword [rbp + 0x60]
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov dword [r12 + r14], 0x74
lea rdx, [r15*2 + 2]
cmp rdx, 0x1000
jb 0x18000ddf8
add rdx, 0x27
mov rcx, qword [rsi - 8]
sub rsi, rcx
lea rax, [rsi - 8]
cmp rax, 0x1f
ja 0x18000de4c
mov rsi, rcx
mov rcx, rsi
call fcn.18005cbb4
jmp 0x18000de13
lea rdx, [rbp + 0x60]
call sub.VCRUNTIME140.dll_memcpy
mov dword [r12 + r14], 0x74
mov edx, dword [rsp + 0x30]
mov qword [rbp + 0x60], r12
mov dword [rsp + 0x78], 0x104
dec edx
mov dword [rsp + 0x30], edx
dec edi
cmp edx, r13d
jbe case.0x18000db57.3
mov rsi, qword [rbp - 0x80]
mov r9, qword [rsp + 0x48]
mov r11, qword [rsp + 0x50]
mov r14, qword [rbp - 0x28]
mov r15, qword [rsp + 0x40]
jmp 0x18000db2e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov ebx, 1
mov rcx, qword [rbp + 0x78]
cmp rcx, 8
jb 0x18000dea8
lea rdx, [rcx*2 + 2]
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000dea3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18000dea3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18005cbb4
mov eax, ebx
mov rcx, qword [rbp + 0x3e0]
xor rcx, rsp
call fcn.18005d0c0
mov rbx, qword [rsp + 0x530]
add rsp, 0x4f0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1800253a0
nop
call fcn.1800253a0
int3