Function at 0x140038780
Capabilities:
Terminate process

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x98
lea rbp, [rsp + 0x80]
mov rdi, r8
mov ebx, edx
mov rsi, rcx
mov rax, qword [0x140062030]
xor rax, rbp
mov qword [rbp + 0x10], rax
mov eax, 0x800401f0
mov qword [rbp - 0x18], rax
sub rsp, 0x20
call fcn.140025fb0
add rsp, 0x20
mov dword [rbp - 0x10], eax
test eax, eax
je 0x1400389c3
mov dword [rbp - 0x18], eax
test eax, eax
js 0x1400389df
sub rsp, 0x20
mov ecx, ebx
mov rdx, rdi
call fcn.1400206c0
add rsp, 0x20
test al, al
je 0x140038dd0
lea r14, [rdi + 8]
mov r8, qword [rdi + 8]
test r8, r8
je 0x140038934
lea rax, [rdi + 0x10]
mov ecx, 0xff
movzx edx, word [r8]
cmp edx, 0x2f
je 0x140038837
cmp edx, 0x2d
jne 0x140038924
lea rdx, [r8 + 2]
lea r9, [r8 + 4]
cmp word [r8 + 2], 0x2d
cmove rdx, r9
jmp 0x14003883e
add r8, 2
mov rdx, r8
movzx r8d, word [rdx]
test r8w, r8w
je 0x140038924
movzx r9d, r8w
cmp r9d, ecx
cmovae r8d, ecx
lea r9d, [r8 - 0x41]
mov r10d, r8d
or r10b, 0x20
cmp r9b, 0x1a
movzx r9d, r10b
cmovae r9d, r8d
cmp r9b, 0x6f
jne 0x140038924
movzx r8d, word [rdx + 2]
test r8w, r8w
je 0x140038924
movzx r9d, r8w
cmp r9d, ecx
cmovae r8d, ecx
lea r9d, [r8 - 0x41]
mov r10d, r8d
or r10b, 0x20
cmp r9b, 0x1a
movzx r9d, r10b
cmovae r9d, r8d
cmp r9b, 0x73
jne 0x140038924
movzx r8d, word [rdx + 4]
test r8w, r8w
je 0x140038924
movzx r9d, r8w
cmp r9d, ecx
cmovae r8d, ecx
lea r9d, [r8 - 0x41]
mov r10d, r8d
or r10b, 0x20
cmp r9b, 0x1a
movzx r9d, r10b
cmovae r9d, r8d
cmp r9b, 0x69
jne 0x140038924
movzx r8d, word [rdx + 6]
test r8w, r8w
je 0x140038924
movzx r9d, r8w
cmp r9d, ecx
cmovae r8d, ecx
lea r9d, [r8 - 0x41]
mov r10d, r8d
or r10b, 0x20
cmp r9b, 0x1a
movzx r9d, r10b
cmovae r9d, r8d
cmp r9b, 0x6e
jne 0x140038924
movzx r8d, word [rdx + 8]
test r8w, r8w
jne 0x1400389f9
mov r8, qword [rax]
add rax, 8
test r8, r8
jne 0x140038811
lea rax, str.__attempting_deelevation
lea rcx, [rbp - 8]
mov qword [rcx], rax
dec ebx
sub rsp, 0x30
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x20]
mov edx, ebx
mov r8, r14
mov r9d, 1
call fcn.140023570
add rsp, 0x30
mov rbx, qword [rbp - 0x20]
test rbx, rbx
jne 0x140038add
mov byte [rsi + 0x10], 1
lea rax, str._builds_worker_checkouts_gecko_browser_app_winlauncher_LaunchUnelevated.cpp
mov qword [rsi], rax
movabs rax, 0x80070507000000ac
mov qword [rsi + 8], rax
cmp dword [rbp - 0x10], 0
js 0x1400389a1
sub rsp, 0x20
call fcn.140026940
add rsp, 0x20
mov rcx, qword [rbp + 0x10]
xor rcx, rbp
sub rsp, 0x20
call fcn.14002fbe0
nop
lea rsp, [rbp + 0x18]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
sub rsp, 0x20
lea r14, [rbp - 0x18]
mov rcx, r14
call fcn.140026090
add rsp, 0x20
mov eax, dword [r14]
jmp 0x1400387d5
mov byte [rsi + 0x10], 1
lea rcx, str._builds_worker_checkouts_gecko_browser_app_winlauncher_LaunchUnelevated.cpp
mov qword [rsi], rcx
mov dword [rsi + 8], 0x89
mov dword [rsi + 0xc], eax
jmp 0x14003898e
movzx r9d, r8w
cmp r9d, ecx
cmovae r8d, ecx
lea r9d, [r8 - 0x41]
mov r10d, r8d
or r10b, 0x20
cmp r9b, 0x1a
movzx r9d, r10b
cmovae r9d, r8d
cmp r9b, 0x74
jne 0x140038924
cmp word [rdx + 0xa], 0
jne 0x140038924
lea eax, [rbx + 1]
shl rax, 3
cmp ebx, 0xffffffff
mov r12, 0xffffffffffffffff
cmovge r12, rax
sub rsp, 0x20
mov rcx, r12
call qword [sym.imp.mozglue.dll_moz_xmalloc]
add rsp, 0x20
mov r15, rax
sub rsp, 0x20
mov rcx, rax
xor edx, edx
mov r8, r12
call sub.ntdll.dll_memset
add rsp, 0x20
mov rax, qword [r14]
mov qword [r15], rax
lea rax, str.__attempting_deelevation
mov qword [r15 + 8], rax
cmp ebx, 3
jl 0x140038aa4
mov rcx, r15
add rcx, 0x10
lea rdx, [rdi + 0x10]
lea r8d, [rbx - 2]
shl r8, 3
sub rsp, 0x20
call sub.ntdll.dll_memcpy
add rsp, 0x20
movsxd rax, ebx
xor ecx, ecx
mov qword [r15 + rax*8], rcx
sub rsp, 0x30
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x20]
mov edx, ebx
mov r8, r15
xor r9d, r9d
call fcn.140023570
add rsp, 0x10
mov rcx, r15
call qword [sym.imp.mozglue.dll_free]
add rsp, 0x20
jmp 0x140038965
sub rsp, 0x20
lea rcx, str.kernel32
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
add rsp, 0x20
test rax, rax
je 0x140038c2b
sub rsp, 0x20
lea rdx, str.GetCurrentPackageFamilyName
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
add rsp, 0x20
test rax, rax
je 0x140038c2b
mov r15, rax
lea rcx, [rbp - 8]
mov dword [rcx], 0
sub rsp, 0x20
xor edx, edx
call qword [0x140068010]
add rsp, 0x20
cmp eax, 0x7a
jne 0x140038c2b
lea r12, [rbp - 8]
mov r13d, dword [r12]
add r13, r13
sub rsp, 0x20
mov rcx, r13
call qword [sym.imp.mozglue.dll_moz_xmalloc]
add rsp, 0x20
mov r14, rax
sub rsp, 0x20
mov rcx, rax
xor edx, edx
mov r8, r13
call sub.ntdll.dll_memset
mov rcx, r12
mov rdx, r14
mov rax, r15
call qword [0x140068010]
add rsp, 0x20
sub rsp, 0x20
test eax, eax
jne 0x140038c1e
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcslen]
add rsp, 0x20
mov rcx, rax
mov r9, r14
mov r14, rsp
add ecx, 0x16
lea rax, [rcx + rcx]
add rax, 0xf
and rax, 0xfffffffffffffff0
call fcn.14002fb80
sub rsp, rax
mov r15, rsp
movsxd rdx, ecx
sub rsp, 0x20
mov rcx, r15
mov qword [rbp - 0x78], r9
call fcn.1400034b0
mov ecx, 0x18
call qword [sym.imp.mozglue.dll_moz_xmalloc]
add rsp, 0x20
mov rdi, rax
mov qword [rax + 8], 0
mov dword [rax + 0x10], 1
sub rsp, 0x20
mov rcx, r15
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
add rsp, 0x20
mov qword [rdi], rax
test rax, rax
je 0x140038dc2
mov rsp, r14
mov qword [rbp - 0x28], rdi
xor r14d, r14d
jmp 0x140038c82
mov rcx, r14
call qword [sym.imp.mozglue.dll_free]
add rsp, 0x20
mov r14, qword [rdi]
sub rsp, 0x20
mov ecx, 0x18
call qword [sym.imp.mozglue.dll_moz_xmalloc]
add rsp, 0x20
mov rdi, rax
mov qword [rax + 8], 0
mov dword [rax + 0x10], 1
sub rsp, 0x20
mov rcx, r14
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
add rsp, 0x20
mov qword [rdi], rax
test r14, r14
je 0x140038c75
test rax, rax
je 0x140038dc2
mov qword [rbp - 0x28], rdi
mov r14b, 1
xor eax, eax
mov qword [rbp - 0x78], rax
mov word [rbp - 8], 8
sub rsp, 0x20
mov rcx, rbx
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
add rsp, 0x20
mov qword [rbp], rax
test rax, rax
je 0x140038dc2
mov word [rbp - 0x40], 8
sub rsp, 0x20
lea rcx, str.open
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
add rsp, 0x20
mov qword [rbp - 0x38], rax
test rax, rax
je 0x140038dc2
sub rsp, 0x20
lea rbx, [rbp - 0x58]
mov rcx, rbx
call qword [sym.imp.OLEAUT32.dll_VariantClear]
add rsp, 0x20
lea r15, [rbp - 0x70]
mov word [r15], 0x16
mov dword [r15 + 8], 1
sub rsp, 0x30
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rbx
lea rdx, [rbp - 0x28]
lea r12, [rbp - 8]
lea r13, [rbp - 0x40]
mov rcx, rsi
mov r8, r12
mov r9, r13
call fcn.140038de0
add rsp, 0x10
mov rsi, qword [sym.imp.OLEAUT32.dll_VariantCopy]
mov rcx, r15
call rsi
mov rcx, rbx
call rsi
mov rcx, r13
call rsi
mov rcx, r12
call rsi
add rsp, 0x20
test r14b, r14b
jne 0x140038d57
sub rsp, 0x20
mov rcx, qword [rbp - 0x78]
call qword [sym.imp.mozglue.dll_free]
add rsp, 0x20
lock dec dword [rdi + 0x10]
jne 0x140038da2
mov rcx, qword [rdi]
test rcx, rcx
je 0x140038d7a
sub rsp, 0x20
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
add rsp, 0x20
mov qword [rdi], 0
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x140038d91
sub rsp, 0x20
call qword [sym.imp.mozglue.dll_free]
add rsp, 0x20
sub rsp, 0x20
mov rcx, rdi
call qword [sym.imp.mozglue.dll_free]
add rsp, 0x20
mov rcx, qword [rbp - 0x20]
test rcx, rcx
je 0x14003898e
sub rsp, 0x20
call qword [sym.imp.mozglue.dll_free]
add rsp, 0x20
jmp 0x14003898e
sub rsp, 0x20
mov ecx, 0x8007000e
call fcn.14002f5c0
sub rsp, 0x20
mov ecx, 0x7f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3