Function at 0x1400819c0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x48
lea rbp, [rsp + 0x40]
mov qword [rbp], 0xfffffffffffffffe
mov rsi, rcx
lea rdi, [rcx + 0x1e0]
mov rcx, rdi
mov edx, 0x1bbc9a1f
mov r8d, 0x10262f1f
mov r9d, 0xee773c1a
call fcn.1400ab530
mov byte [rsi + 0x89c], 1
mov eax, dword [0x140693c88]
mov ecx, dword [0x140697a88]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 0x26838]
jg 0x140081e2e
mov r9d, dword [0x1405ff11c]
lea edx, [r9 + 0x669db1ef]
lea r8d, [r9 - 0x6da38ab5]
add r9d, 0xfefd56b7
lea rcx, [0x140693c80]
call fcn.1400ab6a0
mov ebx, eax
mov byte [rsi + 0x89c], 0
mov rcx, rdi
mov edx, 0x2d213303
mov r8d, 0xf1e9b631
mov r9d, 0xfd08dc16
call fcn.1400abe20
test bl, bl
je 0x140081e1f
mov eax, dword [rsi + 0x87c]
mov ecx, eax
xor ecx, 0x10
and eax, 0x10
xor eax, ecx
not eax
or eax, ecx
cmp eax, 0xffffffff
je 0x140081a9b
mov rcx, rsi
call fcn.14007e510
cmp qword [0x140693e88], 0
jne 0x140081ad1
mov ecx, 0x700
mov edx, 0x1ffd6751
mov r8d, 0x3ef7940b
call fcn.1400a8810
mov qword [rbp - 8], rax
mov rcx, rax
call fcn.140094bf0
mov rax, qword [rbp - 8]
mov qword [0x140693e88], rax
mov rdi, qword [0x140693e88]
mov rsi, qword [rdi + 0x3b0]
test rsi, rsi
je 0x140081af4
mov rcx, rsi
call fcn.140096760
mov rcx, rsi
call fcn.1400a75e0
mov qword [rdi + 0x3b0], 0
mov rcx, qword [0x140694178]
test rcx, rcx
je 0x140081b2d
mov rax, qword [rcx]
mov rax, qword [rax]
mov edx, 0x5b65d712
add edx, dword [0x1405ff11c]
call qword [0x1405fc400]
mov qword [0x140694178], 0
mov rax, qword [0x140693db0]
test rax, rax
je 0x140081c01
mov rdi, qword [rax + 0x20]
mov r15, qword [rdi]
cmp r15, rdi
je 0x140081c01
mov esi, 1
movabs r14, 0x243c83c7e537ebba
jmp 0x140081b6f
lea esi, [rax + rsi*2]
mov r15, rcx
cmp rcx, rdi
je 0x140081c01
mov dword [r15 + 0x30], 0
mov dword [r15 + 0x28], 0
mov r8, qword [r15 + 0x58]
test r8, r8
je 0x140081b93
mov rcx, qword [r15 + 0x50]
mov edx, esi
call fcn.140512320
mov r8, qword [r15 + 0x98]
mov rax, qword [0x1405ff110]
add rax, r14
cmp r8, rax
je 0x140081bb7
mov rcx, qword [r15 + 0x90]
mov edx, esi
call fcn.140512320
mov eax, esi
xor eax, 1
and esi, 1
mov rdx, qword [r15 + 0x10]
cmp byte [rdx + 0x19], 0
je 0x140081bf0
nop dword [rax]
mov rcx, qword [r15 + 8]
cmp byte [rcx + 0x19], 0
jne 0x140081b60
mov rdx, r15
mov r15, rcx
cmp rdx, qword [rcx + 0x10]
je 0x140081bd0
mov rcx, r15
jmp 0x140081b60
mov rcx, rdx
mov rdx, qword [rdx]
cmp byte [rdx + 0x19], 0
je 0x140081bf0
jmp 0x140081b60
movaps xmm0, xmmword [0x14052e790]
movups xmmword [0x14068742f], xmm0
movups xmmword [0x14068741f], xmm0
movups xmmword [0x14068740f], xmm0
movups xmmword [0x1406873ff], xmm0
mov byte [0x140694078], 1
cmp qword [0x140693e88], 0
jne 0x140081c61
mov ecx, 0x700
mov edx, 0x1ffd6751
mov r8d, 0x3ef7940b
call fcn.1400a8810
mov qword [rbp - 8], rax
mov rcx, rax
call fcn.140094bf0
mov rax, qword [rbp - 8]
mov qword [0x140693e88], rax
mov rax, qword [0x140693e88]
mov r8, qword [rax + 0x560]
test r8, r8
je 0x140081cb8
mov rcx, qword [rax + 0x558]
mov dl, 1
call fcn.140512320
cmp qword [0x140693e88], 0
jne 0x140081cb8
mov ecx, 0x700
mov edx, 0x1ffd6751
mov r8d, 0x3ef7940b
call fcn.1400a8810
mov qword [rbp - 8], rax
mov rcx, rax
call fcn.140094bf0
mov rax, qword [rbp - 8]
mov qword [0x140693e88], rax
mov rsi, qword [0x140693e88]
mov rax, qword [rsi + 0x370]
mov rcx, qword [rsi + 0x378]
sub rcx, rax
movabs rdx, 0x8b3a2a155e20b297
add rdx, rcx
movabs rcx, 0xaa1df4d69
mov r8, rdx
xor r8, rcx
and rdx, rcx
lea rcx, [r8 + rdx*2]
shr rcx, 5
imul ecx, ecx, 0xcccccccd
test ecx, ecx
jle 0x140081da9
xor edi, edi
movabs r14, 0x243c83c7e537ebbb
jmp 0x140081d87
lea r8, [rax + rcx]
add r8, 0x80
mov edx, dword [rax + rcx + 0x24]
mov eax, dword [0x1405ff11c]
lea r9d, [rax - 0x5d83c031]
add eax, 0x53be093a
mov dword [rsp + 0x20], eax
mov rcx, rsi
call fcn.1400a8290
mov rax, qword [0x1405ff110]
mov rcx, rax
xor rcx, r14
and rax, r14
lea rax, [rcx + rax*2]
add rdi, rax
mov rax, qword [rsi + 0x370]
mov rcx, qword [rsi + 0x378]
sub rcx, rax
shr rcx, 5
imul ecx, ecx, 0xcccccccd
movsxd rcx, ecx
cmp rdi, rcx
jge 0x140081da9
lea rcx, [rdi + rdi*4]
shl rcx, 5
cmp dword [rax + rcx + 0x88], 0
jne 0x140081d20
cmp qword [rax + rcx + 0x88], 0
je 0x140081d4d
jmp 0x140081d20
mov rax, qword [rsi + 0x398]
sub rax, qword [rsi + 0x390]
shr rax, 2
test eax, eax
jle 0x140081e1f
xor edi, edi
nop word cs:[rax + rax]
mov dword [rsp + 0x20], 0xf8583229
mov rcx, rsi
mov edx, edi
xor r8d, r8d
mov r9d, 0x471668be
call fcn.1400a8290
mov eax, dword [0x1405ff11c]
mov ecx, eax
xor ecx, 0xa09472a
and eax, 0xa09472a
lea eax, [rcx + rax*2]
add edi, eax
add edi, 0x515c8fe8
mov rax, qword [rsi + 0x398]
sub rax, qword [rsi + 0x390]
shr rax, 2
cmp edi, eax
jl 0x140081dd0
mov eax, ebx
add rsp, 0x48
pop rbx
pop rdi
pop rsi
pop r14
pop r15
pop rbp
ret
mov dword [rsp + 0x28], 0x25a18e6a
mov dword [rsp + 0x20], 0x7b949e22
lea rdx, [0x140693c88]
xor ecx, ecx
xor r8d, r8d
mov r9d, 0x5b0e64
call fcn.1400a99b0
cmp dword [0x140693c88], 0xffffffff
jne 0x140081a28
lea rcx, [0x140693c80]
call fcn.140415d30
mov eax, dword [0x1405ff11c]
lea ecx, [rax + 0x5b65d712]
mov edx, eax
xor edx, 0x397fec85
mov r8d, eax
and r8d, 0x397fec85
lea r8d, [rdx + r8*2]
add r8d, 0xdc72abcc
lea r9d, [rax + 0x5df6b5a9]
add eax, 0x1dbe024e
mov dword [rsp + 0x20], eax
lea rdx, [0x1400a7390]
call fcn.1400aab50
mov dword [rsp + 0x28], 0x25a18e6a
mov dword [rsp + 0x20], 0x7b949e22
lea rdx, [0x140693c88]
mov ecx, 1
xor r8d, r8d
mov r9d, 0x5b0e64
call fcn.1400a99b0
jmp 0x140081a28