Function at 0x180010c30
Capabilities:
Create thread
Query environment variable
Query or enumerate registry value
Set registry value

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x308
movaps xmmword [rsp + 0x2f0], xmm6
mov qword [rsp + 0x78], r8
mov ebp, edx
mov r13, rcx
mov rax, qword [0x1800cb028]
xor rax, rsp
mov qword [rsp + 0x2e8], rax
call sym.mozglue.dll_bool___cdecl_mozilla::IsEafPlusEnabled_void_
test al, al
jne 0x180010c75
call sym.mozglue.dll_void___cdecl_mozilla::CacheNtDllThunk_void_
mov ecx, 0xc
call sym.mozglue.dll_moz_xmalloc
mov rsi, rax
mov rcx, rax
call fcn.180064510
mov qword [0x1800cd1e0], rsi
lea rcx, [rsp + 0x120]
mov dl, 1
call sym.mozglue.dll_private:_static_class_mozilla::TimeStamp___cdecl_mozilla::TimeStamp::Now_bool_
lea rsi, [rsp + 0x1d8]
mov rcx, rsi
call fcn.180012470
cmp byte [rsi + 8], 0
jne 0x18001105d
lea rbx, [rsp + 0x1d8]
mov rdi, qword [rbx]
mov rcx, rbx
call fcn.180012520
cmp byte [rbx + 8], 0
jne 0x18001106e
mov r15, qword [rsp + 0x1d8]
lea r8, str.Progress
lea r12, [rsp + 0x1b8]
mov rcx, r12
mov rdx, r15
call fcn.1800125d0
lea r14, [rsp + 0x138]
mov rcx, r14
mov rdx, rdi
mov r8, r12
call fcn.180064550
cmp byte [r14 + 4], 0
jne 0x180010d24
cmp dword [rsp + 0x138], 1
jne 0x180011097
mov qword [rsp + 0x98], r13
mov dword [rsp + 0x1d8], 0
cmp qword [rsp + 0x1d0], 8
jb 0x180010d4a
mov r12, qword [rsp + 0x1b8]
mov qword [rsp + 0x20], rbx
mov dword [rsp + 0x28], 4
xor r13d, r13d
mov rcx, rdi
mov rdx, r12
xor r8d, r8d
mov r9d, 4
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test eax, eax
jne 0x180011088
movabs rsi, 0xff0000000000
lea rbx, [rsp + 0x1d8]
mov rcx, rbx
call fcn.180012c60
mov rax, qword [rbx]
test rax, rsi
jne 0x180010da3
mov qword [rsp + 0x68], rax
jmp 0x1800110de
pxor xmm0, xmm0
lea r14, [rsp + 0x1d8]
movdqu xmmword [r14 + 8], xmm0
mov qword [r14], 8
mov edx, 0xe
mov rcx, r14
call fcn.18001bd30
mov sil, 1
mov r12, qword [r14]
test al, al
je 0x1800110a1
mov rsi, qword [rsp + 0x1e0]
lea rax, str.new_instance
mov qword [r12 + rsi*8], rax
lea rax, str.no_remote
mov qword [r12 + rsi*8 + 8], rax
lea rax, [0x1800ba941]
mov qword [r12 + rsi*8 + 0x10], rax
lea rax, str.foreground
mov qword [r12 + rsi*8 + 0x18], rax
lea rax, str.setDefaultBrowser
mov qword [r12 + rsi*8 + 0x20], rax
lea rax, str.attach_console
mov qword [r12 + rsi*8 + 0x28], rax
lea rax, str.wait_for_browser
mov qword [r12 + rsi*8 + 0x30], rax
lea rax, str.osint
mov qword [r12 + rsi*8 + 0x38], rax
lea rax, str.new_tab
mov qword [r12 + rsi*8 + 0x40], rax
lea rax, str.new_window
mov qword [r12 + rsi*8 + 0x48], rax
lea rax, str.marionette
mov qword [r12 + rsi*8 + 0x50], rax
lea rax, str.preferences
mov qword [r12 + rsi*8 + 0x58], rax
lea rax, str.search
mov qword [r12 + rsi*8 + 0x60], rax
lea rax, [0x1800bacc2]
mov qword [r12 + rsi*8 + 0x68], rax
add rsi, 0xe
mov qword [rsp + 0x1e0], rsi
cmp ebp, 2
jl 0x180011051
mov eax, 3
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x80], rdi
mov eax, ebp
mov qword [rsp + 0x70], rax
mov edi, 1
lea r13, [0x1800bc5e1]
lea rbp, str.marionette
mov qword [rsp + 0x90], r15
mov rax, qword [rsp + 0x78]
mov r14, qword [rax + rdi*8]
mov ebx, 2
mov r8d, 2
mov rcx, r14
mov rdx, r13
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
je 0x180010f10
movzx eax, byte [r14]
or eax, 2
cmp eax, 0x2f
je 0x180010f0b
inc rdi
cmp qword [rsp + 0x70], rdi
jne 0x180010ecf
jmp 0x180010f77
mov ebx, 1
add r14, rbx
mov rcx, r14
mov rdx, rbp
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
jne 0x180010eff
cmp rsi, qword [rsp + 0x1e8]
jne 0x180010f54
lea r14, [rsp + 0x1d8]
mov edx, 1
mov rcx, r14
call fcn.18001bd30
mov r12, qword [r14]
test al, al
je 0x1800110a8
mov rsi, qword [rsp + 0x1e0]
lea rax, str.profile
mov qword [r12 + rsi*8], rax
mov eax, 0xffffffff
add rax, rsi
inc rax
inc rsi
mov qword [rsp + 0x1e0], rsi
jmp 0x180010f7c
mov eax, 0xffffffff
lea r13, [rsi*8]
mov ebx, 1
xor r14d, r14d
lea rdx, [0x1800bc5e1]
mov r15d, eax
mov rax, qword [rsp + 0x78]
mov rbp, qword [rax + rbx*8]
mov edi, 2
mov r8d, 2
mov rcx, rbp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
je 0x180010fc8
movzx eax, byte [rbp]
mov edi, 1
or eax, 2
cmp eax, 0x2f
jne 0x180011016
mov eax, 4
mov qword [rsp + 0x68], rax
test rsi, rsi
je 0x1800110ab
add rbp, rdi
xor edi, edi
mov rdx, qword [r12 + rdi]
mov rcx, rbp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__stricmp]
cmp rbx, r15
movzx ecx, r14b
mov r14d, ecx
mov edx, 1
cmove r14d, edx
test eax, eax
cmovne r14d, ecx
je 0x180011016
add rdi, 8
cmp r13, rdi
jne 0x180010fe0
jmp 0x1800110ab
inc rbx
cmp rbx, qword [rsp + 0x70]
lea rdx, [0x1800bc5e1]
jne 0x180010f96
mov eax, 4
mov qword [rsp + 0x68], rax
xor esi, esi
mov rdi, qword [rsp + 0x80]
mov r15, qword [rsp + 0x90]
lea rbx, [rsp + 0x1d8]
jmp 0x1800110c6
xor esi, esi
mov qword [rsp + 0x68], rax
xor r14d, r14d
jmp 0x1800110c6
mov eax, dword [rsp + 0x1d8]
mov qword [rsp + 0x68], rax
jmp 0x180011170
mov eax, dword [rsp + 0x1d8]
mov qword [rsp + 0x68], rax
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x180011170
mov eax, 7
mov qword [rsp + 0x68], rax
jmp 0x180011128
xor r13d, r13d
mov eax, 0x14
jmp 0x18001108d
mov eax, 3
jmp 0x180011053
xor r14d, r14d
mov rdi, qword [rsp + 0x80]
mov r15, qword [rsp + 0x90]
lea rbx, [rsp + 0x1d8]
mov sil, 1
cmp r12, 8
je 0x1800110d5
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
test sil, sil
je 0x1800111e8
xor r13d, r13d
mov dword [rsp + 0x1d8], 1
cmp qword [rsp + 0x1d0], 8
jb 0x180011101
mov rdx, qword [rsp + 0x1b8]
jmp 0x180011109
lea rdx, [rsp + 0x1b8]
mov qword [rsp + 0x20], rbx
mov dword [rsp + 0x28], 4
mov rcx, rdi
xor r8d, r8d
mov r9d, 4
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rax, qword [rsp + 0x1d0]
cmp rax, 8
jb 0x180011155
mov rcx, qword [rsp + 0x1b8]
inc rax
movabs rdx, 0x7ffffffffffff800
test rax, rdx
jne 0x1800111cb
call sym.mozglue.dll__aligned_free
test r15, r15
je 0x180011162
mov rcx, r15
call sym.mozglue.dll__aligned_free
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
test r13b, r13b
jne 0x18001118b
cmp byte [0x1800cd214], 0
mov rax, qword [rsp + 0x68]
jne 0x1800111b7
mov dword [0x1800cd210], eax
mov byte [0x1800cd214], 1
mov rcx, qword [rsp + 0x2e8]
xor rcx, rsp
call fcn.180062020
movaps xmm6, xmmword [rsp + 0x2f0]
add rsp, 0x308
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rax, str.MOZ_RELEASE_ASSERT__isSome___
mov qword [sym.mozglue.dll_gMozCrashReason], rax
int3
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x180011fbf
mov rcx, rax
jmp 0x180011150
mov rsi, rbx
mov r12, r15
mov rbp, rdi
lea rcx, str.MOZ_SAFE_MODE_RESTART
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
je 0x180011223
cmp byte [rax], 0
je 0x180011223
mov eax, 5
mov qword [rsp + 0x68], rax
xor r13d, r13d
mov rdi, rbp
mov r15, r12
mov rbx, rsi
jmp 0x1800110e1
lea rcx, str.MOZ_APP_SILENT_START
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
je 0x18001123a
cmp byte [rax], 0
jne 0x180011208
lea rcx, str.MOZ_RESET_PROFILE_RESTART
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
je 0x180011251
cmp byte [rax], 0
jne 0x180011208
lea rcx, str.MOZ_HEADLESS
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
je 0x180011268
cmp byte [rax], 0
jne 0x180011208
lea rcx, str.XRE_PROFILE_PATH
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
je 0x1800112a8
cmp byte [rax], 0
je 0x1800112a8
lea rcx, [0x1800bc18a]
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
mov ecx, 5
mov qword [rsp + 0x68], rcx
test rax, rax
je 0x180011212
cmp byte [rax], 0
je 0x180011212
lea r8, str.Enabled
lea rbx, [rsp + 0x1d8]
mov rcx, rbx
mov rdx, r12
call fcn.1800125d0
lea r15, [rsp + 0x170]
mov rcx, r15
mov rdx, rbp
mov r8, rbx
call fcn.180064550
mov dil, byte [r15 + 4]
mov r15d, dword [r15]
mov rax, qword [rbx + 0x18]
cmp rax, 8
jb 0x180011320
mov rcx, qword [rsp + 0x1d8]
inc rax
movabs rdx, 0x7ffffffffffff800
test rax, rdx
je 0x18001131b
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x180011fbf
mov rcx, rax
call sym.mozglue.dll__aligned_free
movzx eax, dil
lea ecx, [rax + 1]
mov qword [rsp + 0x68], rcx
xor r13d, r13d
test al, al
jne 0x180011215
test r15d, r15d
mov rdi, rbp
mov r15, r12
mov rbx, rsi
je 0x1800110e1
mov byte [0x1800cd1f0], 1
mov ecx, 0x18
call sym.mozglue.dll_moz_xmalloc
pxor xmm0, xmm0
movdqu xmmword [rax + 8], xmm0
mov qword [rax], 0x24
mov qword [0x1800cd1c0], rax
lea rbx, [rsp + 0x1d8]
mov rcx, rbx
call fcn.18009b800
mov rdx, qword [rbx]
movabs rax, 0xff0000000000
mov rcx, rdx
mov qword [rsp + 0x68], rdx
test rdx, rax
je 0x180011212
test r14b, r14b
je 0x18001144d
lea rdi, [rsp + 0x170]
mov dword [rdi], 8
lea rax, [0x18009b690]
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], 0
mov rbx, qword [rsp + 0x98]
mov qword [rdi + 0x18], rbx
mov r14, qword [0x1800cd120]
xor r13d, r13d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov edx, 0x7f00
mov rcx, rax
mov rax, r14
call qword [0x1800d2010]
mov qword [rdi + 0x20], rax
mov rax, qword [0x1800cd128]
mov edx, 0x7f02
mov rcx, rbx
call qword [0x1800d2010]
mov qword [rdi + 0x28], rax
pxor xmm0, xmm0
movdqu xmmword [rdi + 0x30], xmm0
lea rax, str.MozillaWindowClass
mov qword [rdi + 0x40], rax
mov rax, qword [0x1800cd118]
mov rcx, rdi
call qword [0x1800d2010]
test ax, ax
jne 0x18001147f
mov eax, 0xc
mov qword [rsp + 0x68], rax
jmp 0x180011215
lea rdx, [0x1800b7010]
lea r14, [rsp + 0xe0]
mov rcx, r14
call fcn.180098990
mov rax, qword [r14]
mov qword [rsp + 0x70], rax
test rax, rax
jne 0x180011a0b
mov eax, 0xa
jmp 0x18001120d
lea r8, str.ScreenX
lea r14, [rsp + 0x1d8]
mov rcx, r14
mov rdx, r12
call fcn.1800125d0
lea rcx, [rsp + 0x140]
mov rdx, rbp
mov r8, r14
call fcn.180064550
mov rax, qword [r14 + 0x18]
cmp rax, 8
jb 0x1800114ed
mov rcx, qword [rsp + 0x1d8]
inc rax
movabs rdx, 0x7ffffffffffff800
test rax, rdx
je 0x1800114e8
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x180011fbf
mov rcx, rax
call sym.mozglue.dll__aligned_free
cmp byte [rsp + 0x144], 0
mov eax, dword [rsp + 0x140]
mov qword [rsp + 0x68], rax
jne 0x180011212
lea r8, [0x1800bfe3c]
lea r14, [rsp + 0x1d8]
mov rcx, r14
mov rdx, r12
call fcn.1800125d0
lea rcx, [rsp + 0x140]
mov rdx, rbp
mov r8, r14
call fcn.180064550
mov rax, qword [r14 + 0x18]
cmp rax, 8
jb 0x180011575
mov rcx, qword [rsp + 0x1d8]
inc rax
movabs rdx, 0x7ffffffffffff800
test rax, rdx
je 0x180011570
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x180011fbf
mov rcx, rax
call sym.mozglue.dll__aligned_free
cmp byte [rsp + 0x144], 0
mov eax, dword [rsp + 0x140]
mov dword [rsp + 0x8c], eax
jne 0x180011fc5
lea r8, str.Width
lea r14, [rsp + 0x1d8]
mov rcx, r14
mov rdx, r12
call fcn.1800125d0
lea rcx, [rsp + 0x140]
mov rdx, rbp
mov r8, r14
call fcn.180064550
mov rax, qword [r14 + 0x18]
cmp rax, 8
jb 0x1800115ff
mov rcx, qword [rsp + 0x1d8]
inc rax
movabs rdx, 0x7ffffffffffff800
test rax, rdx
je 0x1800115fa
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x180011fbf
mov rcx, rax
call sym.mozglue.dll__aligned_free
cmp byte [rsp + 0x144], 0
mov eax, dword [rsp + 0x140]
mov dword [rsp + 0x80], eax
jne 0x180011fd1
lea r8, str.Height
lea r14, [rsp + 0x1d8]
mov rcx, r14
mov rdx, r12
call fcn.1800125d0
lea rcx, [rsp + 0x140]
mov rdx, rbp
mov r8, r14
call fcn.180064550
mov rax, qword [r14 + 0x18]
cmp rax, 8
jb 0x180011689
mov rcx, qword [rsp + 0x1d8]
inc rax
movabs rdx, 0x7ffffffffffff800
test rax, rdx
je 0x180011684
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x180011fbf
mov rcx, rax
call sym.mozglue.dll__aligned_free
cmp byte [rsp + 0x144], 0
mov eax, dword [rsp + 0x140]
mov dword [rsp + 0x88], eax
jne 0x180011fdd
lea r8, str.Maximized
lea r14, [rsp + 0x1d8]
mov rcx, r14
mov rdx, r12
call fcn.1800125d0
lea r13, [rsp + 0x140]
mov rcx, r13
mov rdx, rbp
mov r8, r14
call fcn.180064550
mov bl, byte [r13 + 4]
mov r15d, dword [r13]
test r15d, r15d
setne dil
mov rax, qword [r14 + 0x18]
cmp rax, 8
jb 0x180011725
mov rcx, qword [rsp + 0x1d8]
inc rax
movabs rdx, 0x7ffffffffffff800
test rax, rdx
je 0x180011720
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x180011fbf
mov rcx, rax
call sym.mozglue.dll__aligned_free
test bl, bl
jne 0x180011fec
mov byte [0x1800cd1b0], dil
lea r8, str.CssToDevPixelScaling
mov rcx, r14
mov rdx, r12
call fcn.1800125d0
xor eax, eax
mov qword [rsp + 0x140], rax
mov dword [rsp + 0xe0], 8
cmp qword [rsp + 0x1f0], 8
jb 0x18001176e
mov r14, qword [rsp + 0x1d8]
lea rdi, [rsp + 0xe0]
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], rax
mov rcx, rbp
xor edx, edx
mov r8, r14
mov r9d, 8
call qword [sym.imp.ADVAPI32.dll_RegGetValueW]
mov ecx, dword [rdi]
xor ecx, 8
or ecx, eax
sete bl
movsd xmm6, qword [rsp + 0x140]
mov rax, qword [rsp + 0x1f0]
cmp rax, 8
jb 0x1800117f1
mov rcx, qword [rsp + 0x1d8]
inc rax
movabs rdx, 0x7ffffffffffff800
test rax, rdx
je 0x1800117ec
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x180011fbf
mov rcx, rax
call sym.mozglue.dll__aligned_free
test bl, bl
je 0x180011ff7
movsd qword [0x1800cd1a8], xmm6
lea r8, str.UrlbarCSSSpan
lea r14, [rsp + 0x140]
mov rcx, r14
mov rdx, r12
call fcn.1800125d0
lea rcx, [rsp + 0x1d8]
mov rdx, rbp
mov r8, r14
call fcn.18009bde0
mov rax, qword [r14 + 0x18]
cmp rax, 8
jb 0x18001186f
mov rcx, qword [rsp + 0x140]
inc rax
movabs rdx, 0x7ffffffffffff800
test rax, rdx
je 0x18001186a
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x180011fbf
mov rcx, rax
call sym.mozglue.dll__aligned_free
cmp byte [rsp + 0x1f0], 0
jne 0x180012001
lea r14, [rsp + 0x1d8]
mov rax, qword [r14]
mov qword [rsp + 0x78], rax
mov rdi, qword [r14 + 8]
lea r8, str.SearchbarCSSSpan
lea rbx, [rsp + 0x140]
mov rcx, rbx
mov rdx, r12
call fcn.1800125d0
mov rcx, r14
mov rdx, rbp
mov r8, rbx
call fcn.18009bde0
mov rax, qword [rbx + 0x18]
cmp rax, 8
jb 0x1800118fa
mov rcx, qword [rsp + 0x140]
inc rax
movabs rdx, 0x7ffffffffffff800
test rax, rdx
je 0x1800118f5
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x180011fbf
mov rcx, rax
call sym.mozglue.dll__aligned_free
cmp byte [rsp + 0x1f0], 0
jne 0x18001200d
lea r14, [rsp + 0x1d8]
mov rax, qword [r14]
mov qword [rsp + 0x70], rax
mov rbx, qword [r14 + 8]
lea r8, str.SpringsCSSSpan
lea r13, [rsp + 0x140]
mov rcx, r13
mov rdx, r12
call fcn.1800125d0
mov rcx, r14
mov rdx, rbp
mov r8, r13
call fcn.18009bde0
mov rax, qword [r13 + 0x18]
cmp rax, 8
jb 0x180011985
mov rcx, qword [rsp + 0x140]
inc rax
movabs rdx, 0x7ffffffffffff800
test rax, rdx
je 0x180011980
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x180011fbf
mov rcx, rax
call sym.mozglue.dll__aligned_free
cmp byte [rsp + 0x1f0], 0
jne 0x18001201d
movdqu xmm0, xmmword [rsp + 0x1e0]
mov r14, qword [rsp + 0x1d8]
movdqu xmmword [rsp + 0x110], xmm0
mov qword [rsp + 0x108], r14
xor r13d, r13d
mov r15d, 0xd
test rdi, rdi
je 0x1800119cc
test rbx, rbx
jne 0x180011e7b
cmp r14, 0x10
je 0x1800119db
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
cmp qword [rsp + 0x70], 0x10
je 0x1800119ee
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
cmp qword [rsp + 0x78], 0x10
je 0x180011a01
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rsp + 0x68], r15
jmp 0x180011215
xor eax, eax
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], 7
mov word [rsp + 0x140], 0
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcslen]
mov r14, rax
lea rcx, [rsp + 0x140]
cmp rax, 7
jbe 0x180011a5e
mov rdx, r14
mov r8, qword [rsp + 0x70]
call fcn.1800126a0
jmp 0x180011a7d
mov qword [rcx + 0x10], r14
mov r8, r14
add r8, r14
mov rdx, qword [rsp + 0x70]
call sub.VCRUNTIME140.dll_memmove
mov word [rsp + r14*2 + 0x140], 0
mov rax, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x158]
mov rdx, rcx
sub rdx, rax
cmp rdx, 0x1d
jae 0x180011aba
lea r8, str.MozillaFirefoxprofiles.ini
lea rcx, [rsp + 0x140]
mov edx, 0x1d
mov r9d, 0x1d
call fcn.1800130d0
jmp 0x180011b16
lea rdx, [rax + 0x1d]
mov qword [rsp + 0x150], rdx
cmp rcx, 8
jb 0x180011ad6
mov rcx, qword [rsp + 0x140]
jmp 0x180011ade
lea rcx, [rsp + 0x140]
movups xmm0, xmmword [0x1800bfd18]
movups xmmword [rcx + rax*2 + 0x2a], xmm0
movups xmm0, xmmword [0x1800bfd0e]
movups xmmword [rcx + rax*2 + 0x20], xmm0
movups xmm0, xmmword [0x1800bfcfe]
movups xmmword [rcx + rax*2 + 0x10], xmm0
movdqu xmm0, xmmword [str.MozillaFirefoxprofiles.ini]
movdqu xmmword [rcx + rax*2], xmm0
mov word [rcx + rax*2 + 0x3a], 0
cmp qword [rsp + 0x158], 8
jb 0x180011b2b
mov r14, qword [rsp + 0x140]
jmp 0x180011b33
lea r14, [rsp + 0x140]
lea rax, [0x1800b7f38]
lea rdi, [rsp + 0x288]
mov qword [rdi - 0xb0], rax
mov rcx, rdi
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::ios_base::constructor_void____ptr64]
lea rax, [0x1800b80e8]
mov qword [rdi], rax
lea r13, [rsp + 0x1d8]
mov rcx, r13
mov rdx, r14
call fcn.18009bad0
mov rax, qword [r13]
movsxd rax, dword [rax + 4]
lea rcx, [0x1800b7f40]
mov qword [rsp + rax + 0x1d8], rcx
mov rax, qword [r13]
movsxd rax, dword [rax + 4]
lea ecx, [rax - 0xb0]
mov dword [rsp + rax + 0x1d4], ecx
mov rax, qword [r13]
movsxd rax, dword [rax + 4]
lea rcx, [rsp + rax]
add rcx, 0x1d8
call qword [sym.imp.MSVCP140.dll_public:_bool___cdecl_std::ios_base::fail_void_const___ptr64]
test al, al
je 0x180011bc9
mov eax, 0xa
mov qword [rsp + 0x68], rax
xor edi, edi
jmp 0x180011dd7
xor eax, eax
mov qword [rsp + 0x170], rax
mov qword [rsp + 0x180], rax
mov qword [rsp + 0x188], 0xf
mov byte [rsp + 0x170], 0
mov al, 1
mov dword [rsp + 0x78], eax
mov edi, 1
mov rax, qword [rsp + 0x1d8]
movsxd rax, dword [rax + 4]
lea rcx, [rsp + rax]
add rcx, 0x1d8
mov dl, 0xa
call qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::widen_char_const___ptr64]
lea rcx, [rsp + 0x1d8]
lea rdx, [rsp + 0x170]
mov r8d, eax
call fcn.18009bbb0
mov rax, qword [rsp + 0x1d8]
movsxd rax, dword [rax + 4]
lea rcx, [rsp + rax]
add rcx, 0x1d8
call qword [sym.imp.MSVCP140.dll_public:_bool___cdecl_std::ios_base::fail_void_const___ptr64]
mov rbx, qword [rsp + 0x188]
test al, al
jne 0x180011d92
mov rcx, qword [rsp + 0x170]
mov r8, qword [rsp + 0x180]
test r8, r8
je 0x180011d71
cmp rbx, 0x10
lea rax, [rsp + 0x170]
cmovae rax, rcx
xor edx, edx
movzx r9d, byte [rax + rdx]
cmp r9d, 0x20
je 0x180011c9a
cmp r9d, 9
jne 0x180011ca5
inc rdx
cmp r8, rdx
jne 0x180011c89
mov rdx, r8
cmp r8, rdx
cmovb rdx, r8
cmp rbx, 0x10
lea r13, [rsp + 0x170]
cmovb rcx, r13
sub r8, rdx
mov qword [rsp + 0x180], r8
inc r8
add rdx, rcx
call sub.VCRUNTIME140.dll_memmove
mov r14, qword [rsp + 0x170]
mov r15, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x188]
cmp rbx, 0x10
cmovae r13, r14
cmp r15, 9
mov r8d, 9
cmovb r8, r15
mov rcx, r13
lea rdx, str._General_
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x180011d19
cmp r15, 9
je 0x180011d83
test byte [rsp + 0x78], 1
jne 0x180011bfa
cmp byte [r13], 0x5b
je 0x180011d78
mov r9d, 0x15
mov rcx, r13
mov rdx, r15
lea r8, str.StartWithLastProfile
call fcn.18005ffa0
test rax, rax
jne 0x180011bfa
cmp rbx, 0x10
lea rax, [rsp + 0x170]
cmovb r14, rax
movzx eax, byte [r14 + 0x15]
cmp eax, 0x30
je 0x180011d90
cmp eax, 0x31
jne 0x180011bfa
jmp 0x180011d92
xor edx, edx
jmp 0x180011ca5
mov al, 1
mov dword [rsp + 0x78], eax
jmp 0x180011bfa
mov dword [rsp + 0x78], 0
jmp 0x180011bfa
xor edi, edi
cmp rbx, 0x10
jb 0x180011dcd
mov rcx, qword [rsp + 0x170]
add rbx, 0xfffffffffffff001
cmp rbx, 0xffffffffffffefff
ja 0x180011dc8
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x180011fbf
mov rcx, rax
call sym.mozglue.dll__aligned_free
mov eax, 0xb
mov qword [rsp + 0x68], rax
lea rcx, [rsp + 0x1e8]
mov rax, qword [rcx - 0x10]
movsxd rax, dword [rax + 4]
lea rdx, [0x1800b7f48]
mov qword [rsp + rax + 0x1d8], rdx
mov rax, qword [rcx - 0x10]
movsxd rax, dword [rax + 4]
lea edx, [rax - 0xb0]
mov dword [rsp + rax + 0x1d4], edx
call fcn.180090250
lea rcx, [rsp + 0x288]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::ios_base::destructor_void____ptr64]
mov rax, qword [rsp + 0x158]
cmp rax, 8
jb 0x180011e63
mov rcx, qword [rsp + 0x140]
inc rax
movabs rdx, 0x7ffffffffffff800
test rax, rdx
je 0x180011e5e
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x180011fbf
mov rcx, rax
call sym.mozglue.dll__aligned_free
mov rcx, qword [rsp + 0x70]
call fcn.18009bd70
test rdi, rdi
jne 0x1800113a8
jmp 0x180011212
lea r8, str.Flags
lea r13, [rsp + 0x1d8]
mov rcx, r13
mov rdx, r12
call fcn.1800125d0
lea rcx, [rsp + 0x140]
mov rdx, rbp
mov r8, r13
call fcn.180064550
mov rax, qword [r13 + 0x18]
cmp rax, 8
jb 0x180011ee9
mov rcx, qword [rsp + 0x1d8]
inc rax
movabs rdx, 0x7ffffffffffff800
test rax, rdx
je 0x180011ee4
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x180011fbf
mov rcx, rax
call sym.mozglue.dll__aligned_free
cmp byte [rsp + 0x144], 0
mov r15d, dword [rsp + 0x140]
jne 0x180011f0f
mov dword [rsp + 0x104], r15d
test r15b, 0x18
je 0x180011f17
mov r15d, 0x15
xor r13d, r13d
jmp 0x1800119cc
lea r8, str.Theme
lea r13, [rsp + 0x1d8]
mov rcx, r13
mov rdx, r12
call fcn.1800125d0
lea rcx, [rsp + 0x140]
mov rdx, rbp
mov r8, r13
call fcn.180064550
mov rax, qword [r13 + 0x18]
cmp rax, 8
jb 0x180011f81
mov rcx, qword [rsp + 0x1d8]
inc rax
movabs rdx, 0x7ffffffffffff800
test rax, rdx
je 0x180011f7c
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x180011fbf
mov rcx, rax
call sym.mozglue.dll__aligned_free
cmp byte [rsp + 0x144], 0
mov r15d, dword [rsp + 0x140]
jne 0x180011f0f
cmp r15d, 1
je 0x18001202d
cmp r15d, 2
jne 0x18001203a
movaps xmm0, xmmword [0x1800b73c0]
movdqa xmm1, xmmword [0x1800b73d0]
jmp 0x180012049
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
xor r13d, r13d
mov eax, dword [rsp + 0x8c]
jmp 0x180011fe7
xor r13d, r13d
mov eax, dword [rsp + 0x80]
jmp 0x180011fe7
xor r13d, r13d
mov eax, dword [rsp + 0x88]
jmp 0x180011443
xor r13d, r13d
mov eax, r15d
jmp 0x180011443
mov eax, 7
jmp 0x18001120d
mov eax, dword [rsp + 0x1d8]
jmp 0x18001120d
mov r15d, dword [rsp + 0x1d8]
xor r13d, r13d
jmp 0x1800119ee
mov r15d, dword [rsp + 0x1d8]
xor r13d, r13d
jmp 0x1800119db
call fcn.18009b750
test al, al
jne 0x180011fab
movaps xmm0, xmmword [0x1800b73e0]
movdqa xmm1, xmmword [0x1800b73f0]
movdqa xmmword [rsp + 0xe0], xmm1
movaps xmmword [rsp + 0xf0], xmm0
pshufd xmm0, xmm1, 0xff
movd dword [rsp + 0x100], xmm0
xor r13d, r13d
mov r15d, 0xe
cmp dword [rsp + 0x80], 0x10000
ja 0x1800119cc
cmp dword [rsp + 0x88], 0x10000
ja 0x1800119cc
movzx edi, byte [0x1800cd1b0]
mov r9d, edi
shl r9d, 0x18
or r9d, 0x2cf0000
mov rax, qword [0x1800cd130]
mov rcx, qword [rsp + 0x98]
mov qword [rsp + 0x50], rcx
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x40], xmm0
mov ecx, dword [rsp + 0x88]
mov dword [rsp + 0x38], ecx
mov ecx, dword [rsp + 0x80]
mov dword [rsp + 0x30], ecx
mov ecx, dword [rsp + 0x8c]
mov dword [rsp + 0x28], ecx
mov rcx, qword [rsp + 0x68]
mov dword [rsp + 0x20], ecx
mov qword [rsp + 0x58], 0
lea rdx, str.MozillaWindowClass
lea r8, [0x1800bff1e]
mov ecx, 0x100
call qword [0x1800d2010]
mov qword [0x1800cd1d0], rax
test rax, rax
je 0x180012277
xor ecx, ecx
test dil, dil
setne cl
lea edx, [rcx + rcx + 1]
mov r8, qword [0x1800cd138]
mov rcx, rax
mov rax, r8
call qword [0x1800d2010]
mov rax, qword [0x1800cd110]
mov rcx, qword [0x1800cd1d0]
call qword [0x1800d2010]
mov dword [0x1800cd1f8], eax
mov r8, qword [0x1800cd108]
mov ecx, 0x20
mov edx, eax
mov rax, r8
call qword [0x1800d2010]
mov ebx, eax
mov rax, qword [0x1800cd108]
mov edx, dword [0x1800cd1f8]
mov ecx, 0x5c
call qword [0x1800d2010]
add eax, ebx
mov dword [0x1800cd1b8], eax
mov rax, qword [0x1800cd108]
mov edx, dword [0x1800cd1f8]
mov ecx, 0x21
call qword [0x1800d2010]
mov ebx, eax
mov rax, qword [0x1800cd108]
mov edx, dword [0x1800cd1f8]
mov ecx, 0x5c
call qword [0x1800d2010]
add eax, ebx
mov dword [0x1800cd1b4], eax
cmp byte [0x1800cd1b0], 0
je 0x180012282
mov rax, qword [0x1800cd168]
mov rcx, qword [0x1800cd1d0]
xor r13d, r13d
xor edx, edx
call qword [0x1800d2010]
mov r15d, 0xf
test rax, rax
je 0x1800119cc
pxor xmm0, xmm0
lea rdx, [rsp + 0x1d8]
movdqu xmmword [rdx + 0x14], xmm0
movdqu xmmword [rdx + 4], xmm0
mov dword [rdx + 0x24], 0
mov dword [rdx], 0x28
mov r8, qword [0x1800cd170]
mov rcx, rax
mov rax, r8
call qword [0x1800d2010]
test eax, eax
je 0x180011f0f
mov eax, dword [rsp + 0x1f4]
mov ecx, dword [rsp + 0x1f8]
sub eax, dword [rsp + 0x1ec]
mov edx, dword [0x1800cd1b8]
lea eax, [rax + rdx*2]
sub ecx, dword [rsp + 0x1f0]
mov dword [0x1800cd198], eax
mov eax, dword [0x1800cd1b4]
lea eax, [rcx + rax*2]
jmp 0x180012296
mov r15d, 0x10
jmp 0x180011f0f
mov eax, dword [rsp + 0x80]
mov dword [0x1800cd198], eax
mov eax, dword [rsp + 0x88]
mov dword [0x1800cd1c8], eax
mov rax, qword [0x1800cd140]
mov rcx, qword [0x1800cd1d0]
xor edx, edx
mov dword [rsp + 0x28], edx
mov dword [rsp + 0x20], edx
mov dword [rsp + 0x30], 0x237
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call qword [0x1800d2010]
mov rax, qword [rsp + 0x70]
movups xmm0, xmmword [rax]
lea r9, [rsp + 0xd0]
movaps xmmword [r9], xmm0
mov rax, qword [rsp + 0x78]
movdqu xmm0, xmmword [rax]
lea r8, [rsp + 0xc0]
movdqa xmmword [r8], xmm0
mov rdx, qword [0x1800cd1d0]
lea rax, [rsp + 0x104]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x108]
mov qword [rsp + 0x20], rax
lea rbx, [rsp + 0x1d8]
mov rcx, rbx
call fcn.180099670
mov r15, qword [rbx]
movabs rax, 0xff0000000000
test r15, rax
je 0x180011f0f
cmp qword [0x1800cd1c0], 0
je 0x180012381
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
lea r8, [0x18009af90]
mov edx, 0x40000
xor ecx, ecx
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [0x1800cd1e8], rax
lea rbx, [rsp + 0x158]
mov rcx, rbx
mov dl, 1
call sym.mozglue.dll_private:_static_class_mozilla::TimeStamp___cdecl_mozilla::TimeStamp::Now_bool_
mov rax, qword [rsp + 0x130]
mov qword [rbx - 8], rax
movups xmm0, xmmword [rsp + 0x120]
movaps xmmword [rbx - 0x18], xmm0
xor eax, eax
lea r8, [rsp + 0x1d8]
mov dword [r8], eax
mov dword [r8 + 0x40], eax
pxor xmm1, xmm1
movdqu xmmword [r8 + 0x48], xmm1
mov qword [r8 + 0x58], 0
movups xmmword [r8 + 8], xmm0
movdqa xmm0, xmmword [rbx + 8]
movdqu xmmword [r8 + 0x28], xmm0
mov rcx, qword [rbx - 8]
mov qword [r8 + 0x18], rcx
mov rcx, qword [rbx]
mov qword [r8 + 0x20], rcx
mov byte [r8 + 0x38], 1
lea rcx, str.CreatePreXULSkeletonUI
lea rbx, [rsp + 0xa8]
mov qword [rbx], rcx
mov qword [rbx + 8], 0x16
mov dword [rbx + 0x10], eax
lea rcx, [rsp + 0xa0]
mov rdx, rbx
call fcn.18009bfe0
cmp dword [rbx + 0x10], 2
jne 0x180012437
mov rcx, qword [rsp + 0xa8]
test rcx, rcx
je 0x180012437
call sym.mozglue.dll__aligned_free
mov rbx, qword [rsp + 0x220]
mov qword [rsp + 0x220], 0
test rbx, rbx
je 0x180012460
mov rcx, rbx
call fcn.18007d570
mov rcx, rbx
call sym.mozglue.dll__aligned_free
mov r13b, 1
jmp 0x1800119cc