Function at 0x14002e740
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, 0x2d71f1cd
sub rsp, 0x2d71f2cd
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 0x14002e7af
cmp rsi, qword [rcx + 0x6a0]
je 0x14002e8f6
mov rcx, qword [rcx + 0x6a8]
xor r8d, r8d
xor edx, edx
call fcn.140053f60
mov qword [rbx + 0x6a0], rsi
mov dword [rbx + 0x6b4], 0x5d5b554d
add dword [rbx + 0x6b4], 0x23c2ba
sub dword [rbx + 0x6b4], 0x5d7f1806
mov rcx, qword [rbx + 0x510]
mov rax, qword [rcx]
call qword [rax + 8]
lea rdx, [rbp - 0x49]
mov qword [rbp - 0x49], rax
lea rcx, [rbx + 0x598]
mov rsi, rax
call fcn.14002d140
mov edx, dword [rbp + 0x6f]
mov rcx, rsi
call fcn.140045b40
mov rdx, r14
mov rcx, rsi
call fcn.1400458d0
movzx r13d, byte [rbp + 0x77]
xor eax, eax
mov r14d, eax
mov qword [rsp + 0x60], rax
mov eax, dword [rbx + 0x518]
movabs rdx, 0x41c44f30737b8f17
sub rdx, 0x424db7f
sub rdx, 0x115b399a
cmp eax, 1
jne 0x14002ebc6
cmp edi, eax
jne 0x14002e901
mov rax, qword [0x1404a0148]
movabs r14, 0x3f95f683316a61c4
add r14, 0x2c1ff1ca
sub r14, 0x26018331
xor r14, 0x6be6916c
rol rax, 5
movabs rdi, 0x10b99dae5d945544
add rdi, 0xe69c27a
sub rdi, 0x5e233760
add rdi, 0x5d90e6ce
not rax
xor ecx, ecx
sub rax, r14
ror rax, 0x31
sub rax, rdi
rol rax, 0x33
call rax
sub eax, dword [r15]
mov ecx, 0x337965d1
add ecx, 0xdf01fff
sub ecx, 0x416985cf
cdq
sub eax, edx
sar eax, 1
mov dword [rsp + 0x60], eax
mov rax, qword [0x1404a0148]
rol rax, 5
not rax
sub rax, r14
ror rax, 0x31
sub rax, rdi
rol rax, 0x33
call rax
sub eax, dword [r15 + 4]
cdq
sub eax, edx
sar eax, 1
mov dword [rbp - 0x7d], eax
jmp 0x14002e936
inc dword [rcx + 0x6b4]
jmp 0x14002e7d4
test edi, edi
jne 0x14002e936
mov dword [rsp + 0x60], 0x7065bd29
xor dword [rsp + 0x60], 0x330c55c8
add dword [rsp + 0x60], 0x3c96171f
mov dword [rbp - 0x7d], 0x1589dd5b
add dword [rbp - 0x7d], 0x4e52d071
add dword [rbp - 0x7d], 0x1c235234
mov rcx, qword [rbp + 0x7f]
test r13b, r13b
pushf
mov eax, 0x6f07ad
add eax, 0x6da02b00
sub eax, 0x3b2c3fdc
sub eax, 0x32daf251
popf
pushf
mov r12d, 0x7000dbf3
sub r12d, 0x254ecb4c
sub r12d, 0x207ad14d
sub r12d, 0x2a2b3f5a
popf
cmove r12d, eax
xor edi, edi
mov qword [rbp - 0x71], rdi
test rcx, rcx
je 0x14002e9a5
call fcn.140037c20
mov rcx, rax
test rax, rax
je 0x14002e9a5
mov rax, qword [rax]
call qword [rax + 0xb8]
mov qword [rbp - 0x71], rax
mov rax, qword [rbx + 0x538]
xorps xmm0, xmm0
mov r13, qword [rbx + 0x578]
movabs rcx, 0x41c44f30005464e1
add rcx, 0x69629f2b
xor rcx, 0x344c7df2
mov r14, qword [rbx + 0x540]
xor rax, rcx
mov qword [rbp - 0x41], rax
lea rcx, [rbp - 0x31]
mov eax, dword [r15 + 4]
mov dword [rbp + 0x4f], eax
lea rdx, [r13 + 1]
mov eax, dword [r15]
mov dword [rbp - 0x79], eax
lea rax, [rbp - 0x29]
mov qword [rbp - 0x31], rax
movups xmmword [rbp - 0x29], xmm0
movups xmmword [rbp - 0x19], xmm0
movups xmmword [rbp - 9], xmm0
call fcn.14000ed40
mov edx, 0x614b205d
add edx, 0x19c61668
xor edx, 0x61770be8
add edx, 0x57522240
test r13, r13
je 0x14002ea7b
mov rdi, rax
sub r14, rax
mov r8, r13
mov r9d, 0x1ff93dad
add r9d, 0xdb13b3f
add r9d, 0xea91692
sub r9d, 0x3c538e7f
nop word [rax + 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 0x14002ea59
xor r8d, r8d
movabs rcx, 0x8a7f281816b803a0
add rcx, 0x5591cf8e
sub rcx, 0x3270b843
add rcx, 0x7fffffff
add rcx, 0x3a5da49e
mov word [rax + r13*2], r8w
mov r9d, 0x2112b04e
add r9d, 0xe187fd0
xor r9d, 0xaf29301e
mov rdi, qword [0x1404a0138]
movabs rax, 0x80be7ab146a5566
add rax, 0x323aa0f0
sub rax, 0x42270ed4
add rax, 0x7fffffff
add rax, 0x18d860b4
mov rdx, qword [rbp - 0x31]
mov qword [rsp + 0x58], r8
ror rdi, 0x31
add rdi, rcx
mov ecx, r12d
xor rdi, rax
movabs rax, 0x1ff2f0a8451cd110
xor rax, 0x1d172926
add rax, 0x16b91eb2
ror rdi, 0xd
add rdi, rax
mov rax, qword [rbp - 0x41]
mov qword [rsp + 0x50], rax
mov rax, qword [rbp - 0x71]
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x40], rax
mov eax, dword [rbp + 0x4f]
mov dword [rsp + 0x38], eax
mov eax, dword [rbp - 0x79]
mov dword [rsp + 0x30], eax
mov eax, dword [rbp - 0x7d]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x20], eax
call rdi
mov rcx, qword [rbp - 0x31]
mov r14, rax
lea rax, [rbp - 0x29]
cmp rcx, rax
jne 0x14002eb81
lea rdi, [rbp - 0x29]
xor eax, eax
mov ecx, 0xd2eb9e8
add ecx, 0x16d3ca3a
xor ecx, 0x24028412
rep stosb byte [rdi], al
jmp 0x14002eb86
call fcn.1400966a0
test r14, r14
je 0x14002edef
mov rcx, qword [rbx + 0x510]
mov rdx, rsi
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, rax
mov qword [rbp - 0x39], rax
mov rdx, qword [rax]
call qword [rdx + 0x10]
lea rcx, [rbx + 0x658]
lea rdx, [rbp - 0x39]
call fcn.14002d140
movzx r13d, byte [rbp + 0x77]
jmp 0x14002ed25
cmp eax, 2
jne 0x14002ed25
mov rcx, qword [rbx + 0x530]
mov rax, qword [0x1404a01b0]
xor rcx, rdx
rol rax, 0x3b
movabs rdx, 0x3ef1ba2101286b3c
xor rdx, 0x2489266f
xor rdx, 0x696f97af
sub rdx, 0x185f158b
xor rax, rdx
movabs rdx, 0x5d18229d111003aa
add rdx, 0x1a8ada13
xor rdx, 0x6d4461e3
add rdx, 0x7fffffff
add rdx, 0x33103459
not rax
add rax, rdx
lea rdx, [rbp - 0x69]
call rax
cmp edi, 1
jne 0x14002ec6a
mov eax, dword [rbp - 0x61]
sub eax, dword [r15]
sub eax, dword [rbp - 0x69]
cdq
sub eax, edx
sar eax, 1
mov dword [rsp + 0x60], eax
mov eax, dword [rbp - 0x5d]
sub eax, dword [r15 + 4]
sub eax, dword [rbp - 0x65]
cdq
sub eax, edx
sar eax, 1
mov dword [rbp - 0x7d], eax
jmp 0x14002ecf1
mov rcx, qword [rbx + 0x5a0]
mov rax, qword [rbx + 0x598]
mov rdi, qword [rax + rcx*8 - 0x10]
cmp rdi, qword [rbx + 0x688]
je 0x14002ecbd
lea rdx, [rbp + 7]
mov rcx, rdi
call fcn.140038b80
mov rcx, rdi
mov edx, dword [rax]
neg edx
add edx, 0xffffffb0
neg edx
mov dword [rsp + 0x60], edx
lea rdx, [rbp + 0xf]
call fcn.140038b80
mov ecx, dword [rax + 4]
sub ecx, 0xffffffd8
mov dword [rbp - 0x7d], ecx
jmp 0x14002ecf1
mov dword [rsp + 0x60], 0x454a10e5
add dword [rsp + 0x60], 0x204dfeea
sub dword [rsp + 0x60], 0x65980fbb
mov dword [rbp - 0x7d], 0x77b607e5
sub dword [rbp - 0x7d], 0x2bc7b320
xor dword [rbp - 0x7d], 0x5f4af87e
sub dword [rbp - 0x7d], 0x14a4ac93
mov edx, 0x6cabdc88
xor edx, 0x65c9888d
add edx, 0x2c2157eb
xor edx, 0x3583ae50
mov rax, rbx
mov rcx, rsi
mov rdx, qword [rbx + rdx]
dec rdx
call fcn.140043d90
mov rdx, rsi
mov rcx, rbx
call fcn.14002f440
mov rax, qword [rsi]
lea rdx, [rsp + 0x60]
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 0x14002f00a
mov r8, r14
mov rdx, rsi
mov rcx, rbx
call fcn.14002f0d0
test al, al
jne 0x14002ee03
mov rax, qword [0x1404a0140]
movabs rcx, 0x4fc688b70481da42
add rcx, 0x79861445
xor rcx, 0x552cf07
xor rax, rcx
movabs rcx, 0x44893af27d256cfc
sub rcx, 0x508ec65
add rcx, 0x7fffffff
sub rcx, 0x31c454fb
ror rax, 5
add rax, rcx
movabs rcx, 0x2e0f01756ded26ca
add rcx, 0x118c6374
xor rcx, 0x2201bb62
ror rax, 0x15
add rax, rcx
movabs rcx, 0x2b94d1df3a533225
xor rcx, 0x61b84c02
sub rcx, 0x3a2ab24a
rol rax, 0xa
add rax, rcx
mov rcx, r14
call rax
mov rdx, rsi
mov rcx, rbx
call fcn.14002f1b0
xor edi, edi
mov esi, edi
jmp 0x14002f04f
movabs rax, 0x27195c88619fe516
xor rax, 0x61c8f663
add rax, 0x27eebbed
add rax, 0x4fbde789
movabs rcx, 0x71d41d9a7cd8d4f8
sub rcx, 0x48b9bf25
sub rcx, 0x2a07456c
sub rcx, 0x3ffd6a0
add rcx, qword [0x1404a01d0]
mov r9d, 0x2903b390
add r9d, 0x2391b5a4
xor r9d, 0x4c956936
rol rcx, 0x3c
mov r8b, 0xe
add r8b, 0x4b
sub r8b, 0xf
add r8b, 0xb5
add rcx, rax
xor edx, edx
rol rcx, 6
movabs rax, 0x388a3664663df301
add rax, 0xc76978c
xor rax, 0x4934efc
sub rax, 0x33136d74
add rax, rcx
mov rcx, r14
call rax
movabs rax, 0x41c44f3022500db9
xor rax, 0x4762c6a9
sub rax, 0x193f7580
add rax, 0x1208246e
xor edi, edi
cmp qword [rbx + 0x760], rax
je 0x14002ef0e
mov eax, dword [r15]
lea rdx, [rbp - 0x59]
mov dword [rbp - 0x51], eax
movabs rcx, 0xe8ad417a1f7b00ea
xor rcx, 0x257da16c
add rcx, 0xd54f9e7
add rcx, 0x759a882e
mov eax, dword [r15 + 4]
mov dword [rbp - 0x4d], eax
mov rax, qword [rbx + 0x770]
xor rax, rcx
mov qword [rbp - 0x59], rdi
ror rax, 6
mov rcx, r14
not rax
call rax
mov rax, qword [0x1404a01d8]
movabs rcx, 0x63b0866110388578
add rcx, 0x60e510a
add rcx, 0x7fffffff
add rcx, 0x37ada2fd
rol rax, 0xb
not rax
rol rax, 0x16
add rax, rcx
movabs rcx, 0x60c1e63f1ec8e384
add rcx, 0x2212dce1
add rcx, 0x7fffffff
add rcx, 0x2a7a5fb6
rol rax, 0x2f
sub rax, rcx
mov rcx, r14
ror rax, 0x29
call rax
mov rax, qword [0x1404a01e0]
movabs rcx, 0x10b973fd6c03c38e
sub rcx, 0x1b302251
xor rcx, 0x7ba669a5
add rcx, 0x78330f8e
rol rax, 1
mov edx, 0x12c0a021
xor edx, 0x680a46b7
xor edx, 0x5dddb519
sub edx, 0x2717538a
xor rax, rcx
movabs rcx, 0xc2b9ede554fa4598
sub rcx, 0xb551ee5
add rcx, 0x7fffffff
xor rcx, 0x255ff599
ror rax, 0x1a
add rax, rcx
movabs rcx, 0x5a8efeeb673a6e64
sub rcx, 0x4bfcb062
add rcx, 0x7fffffff
add rcx, 0x58945505
xor rax, rcx
mov rcx, r14
rol rax, 0x3e
call rax
jmp 0x14002f04f
cmp eax, 2
jne 0x14002f04d
mov rdx, qword [rbx + 0x580]
test rdx, rdx
je 0x14002f02c
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 0x14002f04d
mov rcx, qword [rbx + 0x688]
mov rdx, rsi
call fcn.140047f90
xor edi, edi
sub dword [rbx + 0x6b4], 1
jne 0x14002f0a0
mov qword [rbx + 0x6a0], rdi
mov ecx, 0x53d03878
xor ecx, 0x61f8aae1
add ecx, 0x6bf1e46
add ecx, 0xc7184f20
lock xadd dword [rbx + 0x6b0], ecx
dec ecx
cmp ecx, 0xffffffff
je 0x14002f0a7
mov rcx, qword [rbx + 0x6a8]
xor edx, edx
call fcn.140053f20
jmp 0x14002f0a7
lock dec dword [rbx + 0x6b0]
lea r11, [rsp + 0x100]
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