Function at 0x14000d980
Capabilities:
Get common file path

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xf8
movaps xmmword [rsp + 0xe0], xmm6
mov rdi, rdx
mov rsi, rcx
mov r12, qword [0x1401054a8]
mov rax, qword [r12]
xor rax, rsp
mov qword [rsp + 0xd8], rax
xorps xmm6, xmm6
movaps xmmword [rsp + 0x80], xmm6
mov qword [rsp + 0x90], 0
lea rcx, [rsp + 0x20]
xor edx, edx
call fcn.1400161d0
mov rbx, qword [rsp + 0x20]
test rbx, rbx
je 0x14000da62
movaps xmmword [rsp + 0x60], xmm6
mov qword [rsp + 0x70], 0
lea r8, [rbx - 2]
nop word cs:[rax + rax]
cmp word [r8 + 2], 0
lea r8, [r8 + 2]
jne 0x14000da00
lea r14, [rsp + 0x60]
mov rcx, r14
mov rdx, rbx
call fcn.140016f80
lea rcx, [rsp + 0x38]
mov rdx, r14
call fcn.1400cff50
mov r13, qword [rsp + 0x40]
movabs rax, 0x7fffffffffffffef
cmp r13, rax
ja 0x14000e154
mov r14, qword [rsp + 0x38]
cmp r13, 0xa
ja 0x14000da7f
lea eax, [r13 + r13]
mov byte [rsp + 0xa0], al
lea r15, [rsp + 0xa2]
jmp 0x14000daba
mov byte [rsi + 0x18], 1
lea rax, str._var_tmp_build_firefox_1d8abcb1f7a7_toolkit_xre_LauncherRegistryInfo.cpp
mov qword [rsi], rax
movabs rax, 0x8007000800000256
jmp 0x14000dc74
mov rbp, r13
or rbp, 7
inc rbp
js 0x14000e159
mov rcx, rbp
add rcx, rbp
call qword [sym.imp.mozglue.dll_moz_xmalloc]
mov r15, rax
mov qword [rsp + 0xb0], rax
or rbp, 1
mov qword [rsp + 0xa0], rbp
mov qword [rsp + 0xa8], r13
mov r8, r13
add r8, r13
mov rcx, r15
mov rdx, r14
call sub.ntdll.dll_memmove
mov word [r15 + r13*2], 0
movzx ebp, byte [rsp + 0xa0]
movzx r14d, byte [rsp + 0xa1]
movzx r15d, word [rsp + 0xa2]
mov eax, dword [rsp + 0xac]
mov dword [rsp + 0xc8], eax
mov rax, qword [rsp + 0xa4]
mov qword [rsp + 0xc0], rax
mov r13, qword [rsp + 0xb0]
test byte [rsp + 0x80], 1
je 0x14000db29
mov rcx, qword [rsp + 0x90]
call sub.mozglue.dll_free
mov byte [rsp + 0x80], bpl
mov byte [rsp + 0x81], r14b
mov word [rsp + 0x82], r15w
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x84], rax
mov eax, dword [rsp + 0xc8]
mov dword [rsp + 0x8c], eax
mov qword [rsp + 0x90], r13
test byte [rsp + 0x60], 1
je 0x14000db79
mov rcx, qword [rsp + 0x70]
call sub.mozglue.dll_free
mov rcx, qword [rsp + 0x20]
mov qword [rsp + 0x20], 0
test rcx, rcx
je 0x14000db91
call sub.mozglue.dll_free
test rbx, rbx
je 0x14000dc78
mov dword [rsp + 0x50], 0
call fcn.140083320
mov qword [rsp + 0x58], rax
xorps xmm0, xmm0
movaps xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], 0
lea rdx, str.system_install
lea r8, [0x14010595c]
lea rbx, [rsp + 0x60]
mov rcx, rbx
call fcn.140016f80
lea r14, [rsp + 0xa0]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.14007d710
mov rcx, r14
mov rdx, rbx
call fcn.1400162e0
lea rcx, [rsp + 0x38]
lea r8, [rsp + 0x50]
mov rdx, r14
call fcn.1400cdeb0
cmp byte [rsp + 0x38], 0
je 0x14000de36
mov dword [rsp + 0x50], 0
call fcn.140083320
mov qword [rsp + 0x58], rax
movzx ebx, byte [rsp + 0x38]
test byte [rsp + 0xa0], 1
je 0x14000dc46
mov rcx, qword [rsp + 0xb0]
call sub.mozglue.dll_free
test byte [rsp + 0x60], 1
jne 0x14000dd0b
cmp dword [rsp + 0x50], 0
je 0x14000dd20
mov byte [rsi + 0x18], 1
lea rax, str._var_tmp_build_firefox_1d8abcb1f7a7_toolkit_xre_LauncherRegistryInfo.cpp
mov qword [rsi], rax
movabs rax, 0x8007050700000267
mov qword [rsi + 8], rax
mov ebp, 1
test byte [rsp + 0x80], 1
je 0x14000dc94
mov rcx, qword [rsp + 0x90]
call sub.mozglue.dll_free
test ebp, ebp
jne 0x14000e076
mov qword [rsp + 0x60], 0
mov rcx, qword [0x140106190]
lea r9, [rsp + 0x60]
mov edx, 0x5100
xor r8d, r8d
call sub.SHELL32.dll_SHGetKnownFolderPath
mov rbx, qword [rsp + 0x60]
test eax, eax
js 0x14000de4b
mov rcx, rbx
call sub.api_ms_win_crt_string_l1_1_0.dll_wcslen
mov r14, rax
movabs rax, 0x7fffffffffffffef
cmp r14, rax
ja 0x14000e154
cmp r14, 0xa
ja 0x14000de73
lea eax, [r14 + r14]
mov byte [rsp + 0xa0], al
lea r15, [rsp + 0xa2]
jmp 0x14000deae
mov rcx, qword [rsp + 0x70]
call sub.mozglue.dll_free
cmp dword [rsp + 0x50], 0
jne 0x14000dc5c
cmp bl, 0xff
je 0x14000dd2f
xor ebp, ebp
test ebx, ebx
jne 0x14000dc7d
xorps xmm6, xmm6
movaps xmmword [rsp + 0xc0], xmm6
mov qword [rsp + 0xd0], 0
lea rdx, str.TorBrowser_Data_Browser
lea r8, [0x14010598c]
lea rbx, [rsp + 0xc0]
mov rcx, rbx
call fcn.140016f80
lea r14, [rsp + 0x38]
lea rdx, [rsp + 0x80]
mov rcx, r14
call fcn.14007d710
mov rcx, r14
mov rdx, rbx
call fcn.1400162e0
movaps xmmword [rsp + 0x20], xmm6
mov qword [rsp + 0x30], 0
lea rdx, str.blocklist
lea r8, [0x1401059a0]
lea rbx, [rsp + 0x20]
mov rcx, rbx
call fcn.140016f80
lea r15, [rsp + 0x60]
mov rcx, r15
mov rdx, r14
call fcn.14007d710
mov rcx, r15
mov rdx, rbx
call fcn.1400162e0
lea rcx, [rsp + 0xa0]
lea r8, [rsp + 0x50]
mov rdx, r15
call fcn.1400ce320
test byte [rsp + 0x60], 1
jne 0x14000e0ad
test byte [rsp + 0x20], 1
jne 0x14000e0c2
test byte [rsp + 0x38], 1
jne 0x14000e0d7
test byte [rsp + 0xc0], 1
jne 0x14000e0ef
cmp dword [rsp + 0x50], 0
je 0x14000e107
lea rax, str._var_tmp_build_firefox_1d8abcb1f7a7_toolkit_xre_LauncherRegistryInfo.cpp
mov qword [rsi], rax
movabs rax, 0x8007050700000270
mov qword [rsi + 8], rax
mov al, 1
jmp 0x14000e12c
xor ebx, ebx
test byte [rsp + 0xa0], 1
jne 0x14000dc39
jmp 0x14000dc46
mov ebp, eax
mov rcx, rbx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov byte [rsi + 0x18], 1
lea rax, str._var_tmp_build_firefox_1d8abcb1f7a7_toolkit_xre_LauncherRegistryInfo.cpp
mov qword [rsi], rax
mov dword [rsi + 8], 0x27f
mov dword [rsi + 0xc], ebp
jmp 0x14000e076
mov r13, r14
or r13, 7
inc r13
js 0x14000e159
mov rcx, r13
add rcx, r13
call qword [sym.imp.mozglue.dll_moz_xmalloc]
mov r15, rax
mov qword [rsp + 0xb0], rax
or r13, 1
mov qword [rsp + 0xa0], r13
mov qword [rsp + 0xa8], r14
mov r8, r14
add r8, r14
mov rcx, r15
mov rdx, rbx
call sub.ntdll.dll_memmove
mov word [r15 + r14*2], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x80], xmm0
mov qword [rsp + 0x90], 0
movzx edx, byte [rdi + 0x28]
test dl, 1
je 0x14000deec
mov rdx, qword [rdi + 0x30]
jmp 0x14000deef
shr rdx, 1
lea rcx, [rsp + 0x80]
call fcn.14007e400
movzx r15d, byte [rdi + 0x28]
test r15b, 1
je 0x14000df16
mov r15, qword [rdi + 0x30]
mov rdi, qword [rdi + 0x38]
test r15, r15
jne 0x14000df22
jmp 0x14000df4d
add rdi, 0x2a
shr r15, 1
test r15, r15
je 0x14000df4d
add r15, r15
xor r13d, r13d
lea r14, [rsp + 0x80]
movzx ecx, word [rdi + r13]
call sub.api_ms_win_crt_string_l1_1_0.dll_towlower
mov rcx, r14
mov edx, eax
call fcn.14007eba0
add r13, 2
cmp r15, r13
jne 0x14000df30
test byte [rsp + 0x80], 1
je 0x14000df81
mov rcx, qword [rsp + 0x90]
cmp word [rcx], 0
je 0x14000df8f
xor eax, eax
nop word [rax + rax]
lea rdx, [rax + 2]
cmp word [rcx + rax + 2], 0
mov rax, rdx
jne 0x14000df70
jmp 0x14000df91
lea rcx, [rsp + 0x82]
cmp word [rcx], 0
jne 0x14000df65
xor edx, edx
call fcn.14000a970
mov r14, rax
mov ecx, 0x22
call qword [sym.imp.mozglue.dll_moz_xmalloc]
mov rdi, rax
xorps xmm6, xmm6
movups xmmword [rax], xmm6
movups xmmword [rax + 0x10], xmm6
mov word [rax + 0x20], 0
mov rcx, rax
mov r9, r14
call fcn.14000b5f0
dec eax
cmp eax, 0x10
jae 0x14000e01a
lea rdx, str.Tor_ProjectFirefox_blocklist_
lea r14, [rsp + 0xa0]
mov rcx, r14
call fcn.14007f900
mov rcx, r14
mov rdx, rdi
call fcn.14007f900
mov rax, qword [rsp + 0xb0]
mov qword [rsi + 0x10], rax
movaps xmm0, xmmword [rsp + 0xa0]
movups xmmword [rsi], xmm0
movaps xmmword [rsp + 0xa0], xmm6
mov qword [rsp + 0xb0], 0
xor eax, eax
jmp 0x14000e034
lea rax, str._var_tmp_build_firefox_1d8abcb1f7a7_toolkit_xre_LauncherRegistryInfo.cpp
mov qword [rsi], rax
movabs rax, 0x8007000d0000028c
mov qword [rsi + 8], rax
mov al, 1
mov byte [rsi + 0x18], al
test byte [rsp + 0x80], 1
je 0x14000e04e
mov rcx, qword [rsp + 0x90]
call sub.mozglue.dll_free
mov rcx, rdi
call sub.mozglue.dll_free
test byte [rsp + 0xa0], 1
je 0x14000e06d
mov rcx, qword [rsp + 0xb0]
call sub.mozglue.dll_free
mov rcx, rbx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov rax, qword [rsp + 0xd8]
xor rax, rsp
mov rcx, qword [r12]
cmp rcx, rax
jne 0x14000e14f
mov rax, rsi
movaps xmm6, xmmword [rsp + 0xe0]
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, qword [rsp + 0x70]
call sub.mozglue.dll_free
test byte [rsp + 0x20], 1
je 0x14000ddf3
mov rcx, qword [rsp + 0x30]
call sub.mozglue.dll_free
test byte [rsp + 0x38], 1
je 0x14000ddfe
mov rcx, qword [rsp + 0x48]
call sub.mozglue.dll_free
test byte [rsp + 0xc0], 1
je 0x14000de0c
mov rcx, qword [rsp + 0xd0]
call sub.mozglue.dll_free
cmp dword [rsp + 0x50], 0
jne 0x14000de17
lea rcx, [rsp + 0x60]
lea rdx, [rsp + 0xa0]
call fcn.14007d710
mov rax, qword [rsp + 0x70]
mov qword [rsi + 0x10], rax
movups xmm0, xmmword [rsp + 0x60]
movups xmmword [rsi], xmm0
xor eax, eax
mov byte [rsi + 0x18], al
test byte [rsp + 0xa0], 1
je 0x14000dc78
mov rcx, qword [rsp + 0xb0]
call sub.mozglue.dll_free
jmp 0x14000dc78
call fcn.1400d58e0
call sub.api_ms_win_crt_runtime_l1_1_0.dll_abort
call fcn.14000f870
int3