Function at 0x1800186b4
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xd8
mov rax, qword [0x18004ed78]
xor rax, rsp
mov qword [rbp + 0xf], rax
mov dword [rbp - 0x59], 0xfdb2771e
mov r14, r8
mov al, byte [0x18004e7e7]
mov eax, dword [0x18004e85c]
movsx ebx, byte [0x18004e7e6]
mov dword [rbp - 0x51], eax
movsx rax, byte [0x18004e7ce]
mov dword [rbp - 0x51], 0x1bf4
mov qword [rbp - 0x41], rax
mov esi, dword [reloc.mozglue.dll_export_full.dll_Ordinal_116]
mov al, byte [0x18004e7e0]
inc sil
movsx r13d, word [0x18004e7dc]
mov r12d, dword [0x18004e83c]
mov byte [rbp - 0x64], 0x41
mov byte [rbp - 0x64], 0xfd
mov dword [rbp - 0x5d], r12d
mov byte [rbp - 0x65], al
mov eax, dword [0x18004e7d8]
mov dword [rbp - 0x49], eax
mov word [rbp - 0x69], r13w
movzx eax, word [0x18004e7e8]
movzx edi, word [0x18004e7dc]
mov byte [rbp - 0x69], al
mov eax, dword [0x18004e774]
mov dword [rbp - 0x51], eax
mov eax, 0x66e
mov dword [rbp - 0x51], 0xa0aa
mov word [rbp - 0x69], ax
mov qword [rbp - 0x51], 0x41
movsxd rax, dword [0x18004e858]
mov qword [rbp - 0x51], rax
mov rax, qword [0x18004e808]
mov dword [rbp - 0x51], eax
mov eax, 0xdd
mov word [rbp - 0x69], ax
mov eax, 0xe939
mov word [rbp - 0x69], ax
movzx eax, byte [reloc.mozglue.dll_export_full.dll_Ordinal_116]
mov dword [rbp - 0x51], eax
mov eax, 0xe4
mov dword [rbp - 0x51], 0xbc3fd38f
mov dword [rbp - 0x51], 0xcd9793d5
mov word [rbp - 0x69], ax
mov eax, 0x69e5
mov word [rbp - 0x69], ax
movsx eax, byte [0x18004e7e6]
mov word [rbp - 0x69], ax
movzx eax, word [0x18004e7e4]
movsxd rax, dword [0x18004e84c]
mov qword [0x180922290], rax
mov eax, dword [0x1807446d0]
mov byte [rbp - 0x69], 0x55
mov dword [rbp - 0x5d], 0x699795e0
mov dword [rbp - 0x61], eax
mov eax, dword [rbp - 0x61]
add eax, 0x319c
mov qword [rbp - 0x31], rcx
mov ecx, dword [0x18004e828]
mov dword [rbp - 0x55], eax
movsx eax, byte [0x18004e7e6]
inc eax
mov qword [rbp - 0x39], rdx
imul ecx, eax
xor edx, edx
mov word [0x18004e7e4], dx
movzx eax, word [0x18004e7e4]
mov r15d, r9d
mov dword [0x18004e828], ecx
lea ecx, [rdx + 0x7e]
test ax, ax
jne 0x180018854
movzx eax, word [0x18004e73c]
add ax, cx
mov word [rbp - 0x69], ax
mov eax, dword [rbp - 0x61]
add eax, 0x309d
mov dword [rbp - 0x51], eax
mov eax, dword [rbp - 0x61]
add eax, 0xb8ff
mov dword [rbp - 0x51], eax
movzx ecx, word [0x18004e82c]
movsx eax, byte [0x18004e727]
sub cx, ax
mov eax, 0xda
add cx, ax
mov word [0x18004e82c], cx
lea rcx, [rbp - 0x19]
mov eax, dword [rbp - 0x55]
sub eax, 0x3178
mov dword [rbp - 0x51], eax
mov eax, dword [0x1807446d0]
mov dword [rbp - 0x61], eax
mov eax, dword [rbp - 0x61]
movups xmm0, xmmword [str.The_content_is_not]
add eax, 0x60c5
movups xmm1, xmmword [0x1800367f8]
mov dword [rbp - 0x55], eax
mov eax, dword [0x180036808]
mov dword [rbp + 7], eax
movzx eax, word [0x18003680c]
mov word [rbp + 0xb], ax
movups xmmword [rbp - 0x19], xmm0
movups xmmword [rbp - 9], xmm1
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov byte [0x18004e6ff], al
mov eax, dword [rbp - 0x61]
add eax, 0xc084
mov dword [rbp - 0x69], eax
movsx ecx, word [0x18004e7e4]
movzx eax, byte [0x18004e73b]
xor ax, cx
mov word [0x18004e7e4], ax
mov eax, dword [rbp - 0x61]
add eax, 0x28
mov dword [rbp - 0x55], eax
mov ecx, dword [rbp - 0x5d]
add ecx, 0x6c
add ecx, r13d
xor r13d, r13d
mov dword [rbp - 0x5d], ecx
movsx eax, byte [rbp - 0x64]
add dword [0x18004e7e0], eax
mov eax, dword [rbp - 0x55]
mov ecx, dword [rbp - 0x69]
add eax, 0xffff42fe
add ecx, eax
mov dword [rbp - 0x55], ecx
movzx ecx, byte [rbp - 0x65]
movsx edx, byte [0x18004e7ce]
cmp edx, ecx
jl 0x18001895d
mov eax, dword [0x1807446d0]
mov dword [0x18004e774], eax
mov edi, eax
mov byte [0x18004e773], al
jmp 0x18001899e
movzx eax, word [0x18004e7dc]
test dl, dl
mov ecx, r13d
movsx edx, sil
sete cl
sub ecx, eax
mov eax, dword [rbp - 0x59]
add edx, ecx
movzx ecx, word [0x18004e82c]
sub edx, eax
movabs rax, 0x83ee786d2dea6
imul rcx, rax
mov eax, dword [0x1807446d0]
add rcx, rdx
mov qword [0x18004e850], rcx
mov dword [rbp - 0x61], eax
movzx eax, word [0x18004e7e4]
test ax, ax
je 0x180018a02
mov byte [rbp - 0x69], 2
mov ecx, 0xd82
mov rax, qword [rbp - 0x41]
mov word [0x18004e7e4], ax
mov eax, dword [rbp - 0x49]
sub ax, cx
mov word [0x18004e82c], ax
movsx ecx, byte [rbp - 0x69]
sub ecx, 1
je 0x1800189ea
cmp ecx, 1
jne 0x180018a33
mov eax, 0xfec9
mov word [0x18004e81c], ax
jmp 0x180018a33
movsx ecx, byte [rbp - 0x69]
mov eax, 0x3f89cf5a
sub eax, ecx
mov dword [rbp - 0x5d], eax
mov eax, dword [rbp - 0x59]
add al, 0x2f
mov byte [rbp - 0x65], al
jmp 0x180018a33
mov eax, dword [0x18004e838]
test eax, eax
je 0x180018a26
movzx ecx, word [0x18004e82c]
mov eax, dword [rbp - 0x59]
sub cx, ax
add cx, 0x45
mov word [0x18004e82c], cx
jmp 0x180018a33
mov eax, 0xffffffb0
sub al, bl
add byte [0x18004e727], al
mov eax, dword [rbp - 0x61]
mov r9, r14
mov r8, qword [rbp - 0x39]
add eax, 0x1e8
mov rdx, qword [rbp - 0x31]
mov dword [rbp - 0x69], eax
movzx eax, word [0x18004e7e8]
mov eax, dword [rbp - 0x61]
sub byte [reloc.mozglue.dll_export_full.dll_Ordinal_116], dil
add eax, 0x7e
mov dword [rbp - 0x5d], eax
mov ecx, dword [rbp - 0x61]
mov eax, dword [rbp - 0x51]
add ecx, eax
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x38], r13
mov dword [rbp - 0x59], ecx
lea rcx, [0x18002a132]
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r15
call fcn.18000b68c
mov edx, dword [rbp - 0x69]
mov r10, rax
mov ecx, dword [rbp - 0x55]
imul edx, ecx
mov ecx, dword [rbp - 0x59]
mov r9d, dword [rbp - 0x5d]
mov r8d, dword [rbp - 0x59]
sub edx, ecx
mov ecx, dword [rbp - 0x5d]
add r8d, ecx
add r9d, edx
mov ecx, dword [rbp - 0x59]
mov eax, dword [rbp - 0x69]
imul ecx, r8d
imul eax, ecx
cmp eax, r9d
je 0x180018b9e
test r12b, r12b
je 0x180018b12
movsx ecx, word [0x18004e800]
mov eax, dword [0x18004e860]
sub cx, ax
mov byte [0x18004e7ce], 1
mov word [0x18004e800], cx
movsx ecx, byte [0x18004e7ce]
test ecx, ecx
je 0x180018b04
cmp ecx, 1
jne 0x180018b31
mov byte [0x18004e6fe], 0xc6
jmp 0x180018b31
mov rax, qword [rbp - 0x41]
add al, 0x31
mov byte [0x18004e773], al
jmp 0x180018b31
mov eax, dword [0x1807446d0]
mov ecx, 0x6b1b
mov dword [0x18004e7ec], eax
movzx eax, word [0x18004e828]
sub ax, cx
mov word [rbp - 0x69], ax
test r10, r10
jne 0x180018b9e
mov eax, ebx
mov dword [rbp - 0x29], 0x8e9594c6
shl eax, 7
mov dword [0x18004e864], eax
mov rax, r13
mov dword [rbp - 0x25], 0x8f959cda
mov dword [rbp - 0x21], 0xc49e94
xor byte [rbp + rax - 0x29], 0xfa
inc rax
cmp rax, 0xb
jb 0x180018b59
mov qword [rsp + 0x40], r13
lea r9d, [r15 - 1]
mov qword [rsp + 0x38], r13
lea r8, [rbp - 0x29]
mov qword [rsp + 0x30], r13
lea rcx, [0x18002c9d0]
mov qword [rsp + 0x28], r13
mov rdx, r14
mov qword [rsp + 0x20], r13
call fcn.18000b68c
mov eax, 3
jmp 0x180018ba0
xor eax, eax
mov rcx, qword [rbp + 0xf]
xor rcx, rsp
call fcn.18002a1d0
add rsp, 0xd8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret