Function at 0x140037890
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 - 0x14], rax
sub rsp, 0x20
call fcn.140025570
add rsp, 0x20
mov dword [rbp - 0xc], eax
test eax, eax
je 0x140037ad3
mov dword [rbp - 0x14], eax
test eax, eax
js 0x140037aef
sub rsp, 0x20
mov ecx, ebx
mov rdx, rdi
call fcn.14001fc90
add rsp, 0x20
test al, al
je 0x140037ee0
lea r14, [rdi + 8]
mov r8, qword [rdi + 8]
test r8, r8
je 0x140037a44
lea rax, [rdi + 0x10]
mov ecx, 0xff
movzx edx, word [r8]
cmp edx, 0x2f
je 0x140037947
cmp edx, 0x2d
jne 0x140037a34
lea rdx, [r8 + 2]
lea r9, [r8 + 4]
cmp word [r8 + 2], 0x2d
cmove rdx, r9
jmp 0x14003794e
add r8, 2
mov rdx, r8
movzx r8d, word [rdx]
test r8w, r8w
je 0x140037a34
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 0x140037a34
movzx r8d, word [rdx + 2]
test r8w, r8w
je 0x140037a34
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 0x140037a34
movzx r8d, word [rdx + 4]
test r8w, r8w
je 0x140037a34
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 0x140037a34
movzx r8d, word [rdx + 6]
test r8w, r8w
je 0x140037a34
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 0x140037a34
movzx r8d, word [rdx + 8]
test r8w, r8w
jne 0x140037b09
mov r8, qword [rax]
add rax, 8
test r8, r8
jne 0x140037921
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.140022b80
add rsp, 0x30
mov rbx, qword [rbp - 0x20]
test rbx, rbx
jne 0x140037bed
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 - 0xc], 0
js 0x140037ab1
sub rsp, 0x20
call fcn.140025f00
add rsp, 0x20
mov rcx, qword [rbp + 0x10]
xor rcx, rbp
sub rsp, 0x20
call fcn.14002ef70
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 - 0x14]
mov rcx, r14
call fcn.140025650
add rsp, 0x20
mov eax, dword [r14]
jmp 0x1400378e5
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 0x140037a9e
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 0x140037a34
cmp word [rdx + 0xa], 0
jne 0x140037a34
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 0x140037bb4
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.140022b80
add rsp, 0x10
mov rcx, r15
call qword [sym.imp.mozglue.dll_free]
add rsp, 0x20
jmp 0x140037a75
sub rsp, 0x20
lea rcx, str.kernel32
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
add rsp, 0x20
test rax, rax
je 0x140037d3b
sub rsp, 0x20
lea rdx, str.GetCurrentPackageFamilyName
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
add rsp, 0x20
test rax, rax
je 0x140037d3b
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 0x140037d3b
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 0x140037d2e
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*2 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.14002ef10
sub rsp, rax
mov r15, rsp
movsxd rdx, ecx
sub rsp, 0x20
mov rcx, r15
mov qword [rbp - 0x78], r9
call fcn.1400073b0
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 0x140037ed2
mov rsp, r14
mov qword [rbp - 0x28], rdi
xor r14d, r14d
jmp 0x140037d92
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 0x140037d85
test rax, rax
je 0x140037ed2
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 0x140037ed2
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 0x140037ed2
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.140037ef0
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 0x140037e67
sub rsp, 0x20
mov rcx, qword [rbp - 0x78]
call qword [sym.imp.mozglue.dll_free]
add rsp, 0x20
lock dec dword [rdi + 0x10]
jne 0x140037eb2
mov rcx, qword [rdi]
test rcx, rcx
je 0x140037e8a
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 0x140037ea1
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 0x140037a9e
sub rsp, 0x20
call qword [sym.imp.mozglue.dll_free]
add rsp, 0x20
jmp 0x140037a9e
sub rsp, 0x20
mov ecx, 0x8007000e
call fcn.14002e950
sub rsp, 0x20
mov ecx, 0x7f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3