Function at 0x14002d850
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
add rsp, 0xffffffffffffff40
mov rax, qword gs:[0x30]
mov edi, r9d
mov r15, r8
mov r14, rdx
mov rbx, rcx
mov rsi, qword [rax + 0x48]
lock inc dword [rcx + 0x6b0]
je 0x14002d8b8
cmp rsi, qword [rcx + 0x6a0]
je 0x14002da04
mov rcx, qword [rcx + 0x6a8]
xor r8d, r8d
xor edx, edx
call fcn.140054260
mov qword [rbx + 0x6a0], rsi
mov dword [rbx + 0x6b4], 0x162ff2a0
add dword [rbx + 0x6b4], 0x54c1b386
sub dword [rbx + 0x6b4], 0x798066f
sub dword [rbx + 0x6b4], 0x63599fb6
mov rcx, qword [rbx + 0x510]
mov rax, qword [rcx]
call qword [rax + 8]
lea rdx, [rbp + 0x4f]
mov qword [rbp + 0x4f], rax
lea rcx, [rbx + 0x598]
mov rsi, rax
call fcn.14002c150
mov edx, dword [rbp + 0x6f]
mov rcx, rsi
call fcn.1400454e0
mov rdx, r14
mov rcx, rsi
call fcn.1400451b0
movzx r13d, byte [rbp + 0x77]
xor eax, eax
mov r14d, eax
mov qword [rbp - 0x41], rax
mov eax, dword [rbx + 0x518]
movabs rdx, 0x21895caf7df85f09
sub rdx, 0x387066e2
add rdx, 0x2825eb22
sub rdx, 0x40019969
cmp eax, 1
jne 0x14002dc8d
cmp edi, eax
jne 0x14002da0f
mov rdx, qword [0x1404a8608]
movabs rdi, 0xfea2652c11fbca79
xor rdi, 0x777dda7e
xor rdi, 0x37c6b960
sub rdi, 0x17ebc242
rol rdx, 0xa
movabs r14, 0x45ee775d44d67931
add r14, 0x243f6814
xor r14, 0x3ea7dad5
xor r14, 0x7ca36fa4
add rdx, rdi
xor ecx, ecx
not rdx
add rdx, r14
call rdx
sub eax, dword [r15]
mov ecx, 0x2b9495ae
xor ecx, 0x2a66760c
add ecx, 0x2529365c
sub ecx, 0x271c19fd
cdq
sub eax, edx
mov rdx, qword [0x1404a8608]
rol rdx, 0xa
add rdx, rdi
sar eax, 1
not rdx
mov dword [rbp - 0x41], eax
add rdx, r14
call rdx
sub eax, dword [r15 + 4]
cdq
sub eax, edx
sar eax, 1
mov dword [rbp - 0x3d], eax
jmp 0x14002da41
inc dword [rcx + 0x6b4]
jmp 0x14002d8e7
test edi, edi
jne 0x14002da41
mov dword [rbp - 0x41], 0x5d5703bc
xor dword [rbp - 0x41], 0x1773aae
xor dword [rbp - 0x41], 0xdc203912
mov dword [rbp - 0x3d], 0x34aa8c8a
add dword [rbp - 0x3d], 0xa24e90b
add dword [rbp - 0x3d], 0x41308a6b
mov rcx, qword [rbp + 0x7f]
test r13b, r13b
pushf
mov eax, 0x55680ade
sub eax, 0x4901062e
xor eax, 0x4335c9b2
sub eax, 0x4f4acc82
popf
pushf
mov r12d, 0x4f3cc7ba
xor r12d, 0x7ad08e7
sub r12d, 0x4885cf5d
popf
cmove r12d, eax
xor edi, edi
mov qword [rbp - 0x21], rdi
test rcx, rcx
je 0x14002daa4
call fcn.1400372d0
test rax, rax
je 0x14002daa4
mov rax, qword [rax + 0x98]
mov qword [rbp - 0x21], rax
mov rax, qword [rbx + 0x538]
xorps xmm0, xmm0
mov r13, qword [rbx + 0x578]
movabs rcx, 0x21895caf274127ed
xor rcx, 0x67d2f602
sub rcx, 0x12e7880f
mov r14, qword [rbx + 0x540]
xor rax, rcx
mov qword [rbp - 0x39], rax
lea rcx, [rbp - 0x19]
mov eax, dword [r15 + 4]
mov dword [rbp + 0x4f], eax
lea rdx, [r13 + 1]
mov eax, dword [r15]
mov dword [rbp - 0x29], eax
lea rax, [rbp - 0x11]
mov qword [rbp - 0x19], rax
movups xmmword [rbp - 0x11], xmm0
movups xmmword [rbp - 1], xmm0
movups xmmword [rbp + 0xf], xmm0
call fcn.14000ef00
mov edx, 0x60424f1c
sub edx, 0x3bbe1ecb
add edx, 0x47092ee3
test r13, r13
je 0x14002db65
mov rdi, rax
sub r14, rax
mov r8, r13
mov r9d, 0x6ef79feb
xor r9d, 0x6b871d29
sub r9d, 0x57081c3
nop dword [rax]
movzx ecx, dx
lea rdi, [rdi + 2]
and cx, r9w
ror edx, 8
xor cx, word [r14 + rdi - 2]
mov word [rdi - 2], cx
sub r8, 1
jne 0x14002db43
xor ecx, ecx
mov r9d, 0x53ddc1ed
add r9d, 0x219acb5b
add r9d, 0xa8972b8
mov word [rax + r13*2], cx
xor r8d, r8d
mov rdi, qword [0x1404a85f8]
movabs rax, 0x4e4dc52a65415fad
xor rax, 0x7f38cc91
sub rax, 0x199b7ada
add rax, 0x7fffffff
add rax, 0x707ecc04
mov rdx, qword [rbp - 0x19]
not rdi
mov qword [rsp + 0x58], rcx
ror rdi, 0x35
xor rdi, rax
movabs rax, 0xb6bde7f2f10f016
add rax, 0x14e78520
sub rax, 0x416ce586
add rdi, rax
mov rax, qword [rbp - 0x39]
mov qword [rsp + 0x50], rax
mov rax, qword [rbp - 0x21]
mov qword [rsp + 0x48], rcx
mov ecx, r12d
mov qword [rsp + 0x40], rax
mov eax, dword [rbp + 0x4f]
mov dword [rsp + 0x38], eax
mov eax, dword [rbp - 0x29]
mov dword [rsp + 0x30], eax
mov eax, dword [rbp - 0x3d]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp - 0x41]
mov dword [rsp + 0x20], eax
call rdi
mov rcx, qword [rbp - 0x19]
mov r14, rax
lea rax, [rbp - 0x11]
cmp rcx, rax
jne 0x14002dc48
lea rdi, [rbp - 0x11]
xor eax, eax
mov ecx, 0x6cf272e8
sub ecx, 0x2dafa245
add ecx, 0xd4c2d9c
sub ecx, 0x4c8efe0f
rep stosb byte [rdi], al
jmp 0x14002dc4d
call fcn.1400996a0
test r14, r14
je 0x14002de49
mov rcx, qword [rbx + 0x510]
mov rdx, rsi
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, rax
mov qword [rbp + 0x4f], rax
mov rdx, qword [rax]
call qword [rdx + 0x10]
lea rcx, [rbx + 0x658]
lea rdx, [rbp + 0x4f]
call fcn.14002c330
movzx r13d, byte [rbp + 0x77]
jmp 0x14002ddbe
cmp eax, 2
jne 0x14002ddbe
mov rax, qword [0x1404a8678]
mov rcx, qword [rbx + 0x530]
ror rax, 0x1b
xor rcx, rdx
not rax
movabs rdx, 0x201584133fb38c2
add rdx, 0x4bfc95b8
xor rdx, 0x556587d4
rol rax, 0x13
add rax, rdx
lea rdx, [rbp - 0x39]
call rax
cmp edi, 1
jne 0x14002dd04
mov eax, dword [rbp - 0x31]
sub eax, dword [r15]
sub eax, dword [rbp - 0x39]
cdq
sub eax, edx
sar eax, 1
mov dword [rbp - 0x41], eax
mov eax, dword [rbp - 0x2d]
sub eax, dword [r15 + 4]
sub eax, dword [rbp - 0x35]
cdq
sub eax, edx
sar eax, 1
mov dword [rbp - 0x3d], eax
jmp 0x14002dd8a
mov rcx, qword [rbx + 0x5a0]
mov rax, qword [rbx + 0x598]
mov rdi, qword [rax + rcx*8 - 0x10]
cmp rdi, qword [rbx + 0x688]
je 0x14002dd52
lea rdx, [rbp + 0x4f]
mov rcx, rdi
call fcn.140038280
mov rcx, rdi
mov edx, dword [rax]
add edx, 0x50
mov dword [rbp - 0x41], edx
lea rdx, [rbp + 0x4f]
call fcn.140038280
mov ecx, dword [rax + 4]
add ecx, 0x28
mov dword [rbp - 0x3d], ecx
jmp 0x14002dd8a
mov dword [rbp - 0x41], 0x43c0ba48
add dword [rbp - 0x41], 0x1367cdc7
sub dword [rbp - 0x41], 0x2d8ac939
xor dword [rbp - 0x41], 0x299dbec2
mov dword [rbp - 0x3d], 0x44d5bd9a
add dword [rbp - 0x3d], 0x3c70420
xor dword [rbp - 0x3d], 0x2121c5a2
sub dword [rbp - 0x3d], 0x69bd03f0
mov edx, 0x5ad525d8
sub edx, 0x2300bca0
sub edx, 0x3384afb0
xor edx, 0x44fbc28
mov rax, rbx
mov rcx, rsi
mov rdx, qword [rbx + rdx]
dec rdx
call fcn.1400435c0
mov rdx, rsi
mov rcx, rbx
call fcn.14002e4b0
mov rax, qword [rsi]
lea rdx, [rbp - 0x41]
mov rcx, rsi
call qword [rax + 0x38]
mov rax, qword [rsi]
mov rdx, r15
mov rcx, rsi
call qword [rax + 0x40]
mov eax, dword [rbx + 0x518]
cmp eax, 1
jne 0x14002e0ad
mov r8, r14
mov rdx, rsi
mov rcx, rbx
call fcn.14002e170
test al, al
jne 0x14002de5d
mov rax, qword [0x1404a8600]
movabs rcx, 0x58e17a46790a6722
xor rcx, 0x68e7413d
xor rcx, 0x6066ca14
ror rax, 0xf
add rax, rcx
movabs rcx, 0x95aab9fa19847e6b
add rcx, 0x516061ac
add rcx, 0xafb73a
xor rcx, 0xb1c42b2
xor rax, rcx
mov rcx, r14
call rax
mov rdx, rsi
mov rcx, rbx
call fcn.14002e230
xor edi, edi
mov esi, edi
jmp 0x14002e0f2
mov rax, qword [0x1404a8698]
movabs rcx, 0x19ca035f73ecff88
xor rcx, 0x712ddc6b
add rcx, 0x22e30e05
sub rcx, 0x13dc6cfd
not rax
mov r9d, 0x200518fe
xor r9d, 0x57e1a5e9
sub r9d, 0x77e4bd15
xor rax, rcx
mov r8b, 0x4a
xor r8b, 0x18
xor r8b, 0xad
movabs rcx, 0x4f956daa2a24a6d4
sub rcx, 0x1ba22c14
xor rcx, 0x40edbbb
xor edx, edx
sub rax, rcx
mov rcx, r14
rol rax, 0x1b
call rax
movabs rax, 0x21895caf05ed8ced
xor rax, 0x44089f7d
add rax, 0x6479357
xor rax, 0x6580ef07
xor edi, edi
cmp qword [rbx + 0x778], rax
je 0x14002dfc4
mov eax, dword [r15]
lea rdx, [rbp - 0x39]
mov dword [rbp - 0x31], eax
movabs rcx, 0xab0cd106e427dc9
xor rcx, 0x57795d21
add rcx, 0x46af5c45
add rcx, 0xa7126c0
mov eax, dword [r15 + 4]
mov dword [rbp - 0x2d], eax
mov rax, qword [rbx + 0x788]
add rax, rcx
mov qword [rbp - 0x39], rdi
movabs rcx, 0xe92a920519532c2
add rcx, 0x20859d7e
sub rcx, 0x5fe995dd
xor rax, rcx
movabs rcx, 0x68803f5959576b4a
sub rcx, 0x1d052a01
add rcx, 0x379fe1e1
sub rax, rcx
movabs rcx, 0xbb20c2a059f15001
sub rcx, 0x15f7afdf
add rcx, 0x7fffffff
sub rcx, 0xb50702e
rol rax, 0xb
add rax, rcx
movabs rcx, 0x4ad85ec31ed4f6da
xor rcx, 0x17e3fe72
add rcx, 0x5b94d72b
add rcx, 0x7fffffff
sub rcx, 0x513f0817
not rax
add rax, rcx
mov rcx, r14
call rax
mov rax, qword [0x1404a86a0]
movabs rcx, 0x53c648cb40fd42ef
add rcx, 0x20fb098d
sub rcx, 0x32221d4f
add rcx, 0x5382a067
xor rax, rcx
movabs rcx, 0x48a67cad2e7bae77
add rcx, 0xe292464
xor rcx, 0x1c642233
add rcx, 0x7fffffff
add rcx, 0x551ac472
add rax, rcx
movabs rcx, 0xa337c2e70ee800ab
add rcx, 0x2d08dc60
add rcx, 0x7fffffff
add rcx, 0x3e232145
ror rax, 0x30
add rax, rcx
mov rcx, r14
call rax
mov rax, qword [0x1404a86a8]
movabs rcx, 0xbbb4fadd35ee0e57
add rcx, 0x1cb8b52c
sub rcx, 0x37d2e67a
add rcx, 0x12e12a05
add rax, rcx
mov edx, 0x3419e92b
add edx, 0xd74da15
sub edx, 0x28960ed5
sub edx, 0x18f8b466
movabs rcx, 0x86e25ca8249c9308
sub rcx, 0x244b07b4
add rcx, 0x7fffffff
add rcx, 0x338a32cb
xor rax, rcx
mov rcx, r14
call rax
jmp 0x14002e0f2
cmp eax, 2
jne 0x14002e0f0
mov rdx, qword [rbx + 0x580]
test rdx, rdx
je 0x14002e0cf
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x20]
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x30]
test r13b, r13b
je 0x14002e0f0
mov rcx, qword [rbx + 0x688]
mov rdx, rsi
call fcn.140047940
xor edi, edi
sub dword [rbx + 0x6b4], 1
jne 0x14002e143
mov qword [rbx + 0x6a0], rdi
mov ecx, 0x66373d9e
sub ecx, 0x3b2f2893
xor ecx, 0x3d64dadb
xor ecx, 0xe993302f
lock xadd dword [rbx + 0x6b0], ecx
dec ecx
cmp ecx, 0xffffffff
je 0x14002e14a
mov rcx, qword [rbx + 0x6a8]
xor edx, edx
call fcn.140054220
jmp 0x14002e14a
lock dec dword [rbx + 0x6b0]
lea r11, [rsp + 0xc0]
mov rax, rsi
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret