Function at 0x140037210
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 [0x140061030]
xor rax, rbp
mov qword [rbp + 0x10], rax
mov eax, 0x800401f0
mov qword [rbp - 0x14], rax
sub rsp, 0x20
call fcn.1400212b0
add rsp, 0x20
mov dword [rbp - 0xc], eax
test eax, eax
je 0x140037453
mov dword [rbp - 0x14], eax
test eax, eax
js 0x14003746f
sub rsp, 0x20
mov ecx, ebx
mov rdx, rdi
call fcn.140004770
add rsp, 0x20
test al, al
je 0x140037860
lea r14, [rdi + 8]
mov r8, qword [rdi + 8]
test r8, r8
je 0x1400373c4
lea rax, [rdi + 0x10]
mov ecx, 0xff
movzx edx, word [r8]
cmp edx, 0x2f
je 0x1400372c7
cmp edx, 0x2d
jne 0x1400373b4
lea rdx, [r8 + 2]
lea r9, [r8 + 4]
cmp word [r8 + 2], 0x2d
cmove rdx, r9
jmp 0x1400372ce
add r8, 2
mov rdx, r8
movzx r8d, word [rdx]
test r8w, r8w
je 0x1400373b4
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 0x1400373b4
movzx r8d, word [rdx + 2]
test r8w, r8w
je 0x1400373b4
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 0x1400373b4
movzx r8d, word [rdx + 4]
test r8w, r8w
je 0x1400373b4
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 0x1400373b4
movzx r8d, word [rdx + 6]
test r8w, r8w
je 0x1400373b4
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 0x1400373b4
movzx r8d, word [rdx + 8]
test r8w, r8w
jne 0x140037489
mov r8, qword [rax]
add rax, 8
test r8, r8
jne 0x1400372a1
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.140023040
add rsp, 0x30
mov rbx, qword [rbp - 0x20]
test rbx, rbx
jne 0x14003756d
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 0x140037431
sub rsp, 0x20
call fcn.1400222e0
add rsp, 0x20
mov rcx, qword [rbp + 0x10]
xor rcx, rbp
sub rsp, 0x20
call fcn.14002ba20
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.140021410
add rsp, 0x20
mov eax, dword [r14]
jmp 0x140037265
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 0x14003741e
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 0x1400373b4
cmp word [rdx + 0xa], 0
jne 0x1400373b4
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 0x140037534
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.140023040
add rsp, 0x10
mov rcx, r15
call qword [sym.imp.mozglue.dll_free]
add rsp, 0x20
jmp 0x1400373f5
sub rsp, 0x20
lea rcx, str.kernel32
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
add rsp, 0x20
test rax, rax
je 0x1400376bb
sub rsp, 0x20
lea rdx, str.GetCurrentPackageFamilyName
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
add rsp, 0x20
test rax, rax
je 0x1400376bb
mov r15, rax
lea rcx, [rbp - 8]
mov dword [rcx], 0
sub rsp, 0x20
xor edx, edx
call qword [0x140067010]
add rsp, 0x20
cmp eax, 0x7a
jne 0x1400376bb
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 [0x140067010]
add rsp, 0x20
sub rsp, 0x20
test eax, eax
jne 0x1400376ae
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.14002b9c0
sub rsp, rax
mov r15, rsp
movsxd rdx, ecx
sub rsp, 0x20
mov rcx, r15
mov qword [rbp - 0x78], r9
call fcn.14002fb70
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 0x140037852
mov rsp, r14
mov qword [rbp - 0x28], rdi
xor r14d, r14d
jmp 0x140037712
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 0x140037705
test rax, rax
je 0x140037852
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 0x140037852
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 0x140037852
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.140037870
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 0x1400377e7
sub rsp, 0x20
mov rcx, qword [rbp - 0x78]
call qword [sym.imp.mozglue.dll_free]
add rsp, 0x20
lock dec dword [rdi + 0x10]
jne 0x140037832
mov rcx, qword [rdi]
test rcx, rcx
je 0x14003780a
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 0x140037821
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 0x14003741e
sub rsp, 0x20
call qword [sym.imp.mozglue.dll_free]
add rsp, 0x20
jmp 0x14003741e
sub rsp, 0x20
mov ecx, 0x8007000e
call fcn.14002b400
sub rsp, 0x20
mov ecx, 0x7f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3