Function at 0x180206770
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov r15, rcx
add r15, 0x20
cmp byte [r15], 0
sete al
mov edx, dword [0x18051b360]
add edx, dword [0x18051b364]
or edx, 0x81f0df94
imul edx, edx, 0x4c5984a7
sub edx, 0xc32faad2
cmp edx, 0x4b591d9
jbe 0x180206ac4
mov edx, dword [0x18051b368]
add edx, dword [0x18051b36c]
imul edx, edx, 0x65dc6a84
sub edx, 0x92642ac9
and edx, 0x3ca249ba
cmp edx, 0x5639a817
jae 0x180206ac4
test al, 1
jne 0x1802067eb
jmp 0x180206ac0
mov rax, rcx
add rax, 0x18
mov r13, qword [rax]
mov bpl, byte [rcx + 0x21]
mov rdi, qword [rcx]
mov rbx, qword [rcx + 8]
mov r14, qword [rcx + 0x10]
mov al, byte [0x1805297c8]
mov ecx, 1
mov edx, 1
call fcn.1802cbf10
cmp rax, 0
jne 0x180206830
mov ecx, 1
mov edx, 1
call fcn.180407090
ud2
mov byte [rax], bpl
mov qword [rsp + 0x30], 1
lea rsi, [rsp + 0x30]
add rsi, 8
mov qword [rsp + 0x38], rax
lea rbp, [rsp + 0x30]
add rbp, 0x10
mov qword [rsp + 0x40], 1
mov r12d, 1
cmp r14, 0
je 0x180206890
lea rcx, [rsp + 0x30]
mov edx, 1
mov r8, r14
mov r9d, 1
mov qword [rsp + 0x20], 1
call fcn.180268a00
mov r12, qword [rbp]
mov rax, qword [rsi]
mov rsi, rax
mov rcx, rax
add rcx, r12
mov rdx, rbx
mov r8, r14
call fcn.180468b10
add r12, r14
mov qword [rbp], r12
cmp rdi, 0
je 0x1802068c4
mov rcx, rbx
mov rdx, rdi
mov r8d, 1
call fcn.1802cbf20
jmp 0x1802068c4
mov eax, dword [0x18051b370]
xor eax, dword [0x18051b374]
or eax, 0xed3249b3
imul eax, eax, 0x408b7631
xor eax, 0xba4d1107
cmp eax, 0x5c8613a1
je 0x180206ad1
mov eax, dword [0x18051b378]
add eax, dword [0x18051b37c]
and eax, 0x37a36870
and eax, 0x10b54fc4
imul eax, eax, 0xf8d9098c
mov rdi, qword [rsp + 0x30]
mov rbx, qword [r13]
cmp eax, 0xa53568d0
jb 0x180206ad1
jmp 0x18020691d
mov eax, dword [0x18051b380]
add eax, dword [0x18051b384]
mov ecx, 0x3967f034
xor edx, edx
div ecx
sub eax, 0xddcdd761
xor eax, 0x5e10c3d3
cmp eax, 0xf556204f
ja 0x180206ae2
jmp 0x180206949
mov eax, dword [0x18051b388]
and eax, dword [0x18051b38c]
or eax, 0xffb11e82
xor eax, 0x35e8a18d
add eax, 0x53b17d54
mov rcx, rbx
add rcx, 0x1c0
cmp eax, 0x7f195e6d
jae 0x180206949
jmp 0x180206977
mov rax, qword [rcx]
mov rdx, rax
and rdx, 1
cmp rdx, 0
jne 0x180206a86
cmp rax, 0xfffffffffffffffe
sete dl
test dl, 1
jne 0x180206999
jmp 0x1802069a2
mov ecx, 7
int 0x29
ud2
mov rdx, rax
add rdx, 2
lock cmpxchg qword [rcx], rdx
sete dl
mov r8d, dword [0x18051b390]
add r8d, dword [0x18051b394]
xor r8d, 0xa349c8ad
imul r8d, r8d, 0xbc7ff4d3
or r8d, 0xac8856c4
cmp r8d, 0xaf3e3f7c
je 0x180206aef
mov r8d, dword [0x18051b398]
and r8d, dword [0x18051b39c]
or r8d, 0x5a980d9c
or r8d, 0xd411fe7f
or r8d, 0xfcdc5b09
cmp r8d, 0xd4d0e3b6
je 0x180206aef
jmp 0x180206a13
test dl, 1
jne 0x180206a1d
jmp 0x18020697a
mov rcx, rbx
sub rcx, 0xffffffffffffff80
mov r14d, 1
lock xadd qword [rbx + 0x88], r14
mov rdx, r14
call fcn.1802c54a0
and r14, 0x1f
imul rdx, r14, 0x28
mov rcx, rax
add rcx, rdx
movabs rdx, 0x8000000000000001
mov qword [rcx], rdx
mov qword [rcx + 8], rdi
mov qword [rcx + 0x10], rsi
mov qword [rcx + 0x18], r12
mov edx, 1
mov cl, r14b
shl rdx, cl
lock or qword [rax + 0x510], rdx
add rbx, 0x100
mov rcx, rbx
call fcn.180407590
jmp 0x180206aab
cmp rdi, 0
sete al
test al, 1
mov rcx, rsi
jne 0x180206aab
jmp 0x180206a96
cmp rcx, 0
setne al
mov rdx, rdi
mov r8d, 1
call fcn.1802cbf20
mov byte [r15], 1
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
ud2
invalid
call qword [rax]
jb 0x180206ae0
adc byte [rdx + 0xc], dh
jnp 0x180206ad0
xchg dword cs:[rcx], ebp
fcom qword [rsi]
mov ebp, eax
jmp 0x1802068eb
invalid
xor byte [0x16a5a6199], cl
mov ebx, 0xfe58e98e
invalid
xor esi, dword [0x1118f1fbb]
sar ah, 1
jmp 0x1802069e1