Function at 0x1400ebabc
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x47]
add rsp, 0x1dcc74dd
sub rsp, 0x1dcc75cd
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 0x1400ebb2a
cmp rsi, qword [rcx + 0x6a0]
je 0x1400ebc7d
mov rcx, qword [rcx + 0x6a8]
xor r8d, r8d
xor edx, edx
call fcn.140056070
mov qword [rbx + 0x6a0], rsi
mov dword [rbx + 0x6b4], 0x2cb27cf8
xor dword [rbx + 0x6b4], 0x41c44366
add dword [rbx + 0x6b4], 0x37b5b50
sub dword [rbx + 0x6b4], 0x70f19aed
mov rcx, qword [rbx + 0x510]
mov rax, qword [rcx]
call qword [rax + 8]
lea r12, [rbx + 0x598]
mov qword [rbp - 0x39], rax
mov rcx, r12
lea rdx, [rbp - 0x39]
mov rsi, rax
call fcn.1400ea9dc
mov edx, dword [rbp + 0x6f]
mov rcx, rsi
call fcn.1400fdb10
mov rdx, r14
mov rcx, rsi
call fcn.1400fd890
mov eax, dword [rbx + 0x518]
xor r13d, r13d
mov qword [rbp - 0x71], r13
mov r14d, r13d
movabs rdx, 0x14b57aa171a8fe4e
sub rdx, 0x51d56857
xor rdx, 0x142c2502
add rdx, 0x3b8c65c5
cmp eax, 1
jne 0x1400ebec6
cmp edi, eax
jne 0x1400ebc88
mov rdx, qword [0x140141018]
movabs r12, 0x34eea4c81c98b837
add r12, 0x27f0ad89
add r12, 0x7c3ef7e8
ror rdx, 0x27
movabs rdi, 0xc0ff42cb707a0e9a
sub rdi, 0x707524d3
add rdi, 0x7fffffff
add rdi, 0x489d82ac
add rdx, r12
movabs r14, 0x2d856ba8561da43f
add r14, 0x1040c1f0
sub r14, 0x21de1643
add r14, 0x5d79a8d8
xor rdx, rdi
xor ecx, ecx
add rdx, r14
not rdx
call rdx
sub eax, dword [r15]
lea ecx, [r13 + 1]
cdq
sub eax, edx
mov rdx, qword [0x140141018]
ror rdx, 0x27
add rdx, r12
sar eax, 1
xor rdx, rdi
mov dword [rbp - 0x71], eax
add rdx, r14
not rdx
call rdx
sub eax, dword [r15 + 4]
cdq
sub eax, edx
sar eax, 1
jmp 0x1400ebca7
inc dword [rcx + 0x6b4]
jmp 0x1400ebb59
test edi, edi
jne 0x1400ebcaa
mov eax, 0x160b0a09
add eax, 0x7f08258
add eax, 0x9d2b40c
xor eax, 0xa7ce406d
mov dword [rbp - 0x71], eax
mov dword [rbp - 0x6d], eax
mov al, byte [rbp + 0x77]
mov rcx, qword [rbp + 0x7f]
neg al
mov qword [rbp - 0x61], r13
sbb r14d, r14d
and r14d, 0x3ff80
test rcx, rcx
je 0x1400ebce8
call fcn.1400ef130
mov rcx, rax
test rax, rax
je 0x1400ebce8
mov rax, qword [rax]
call qword [rax + 0xb8]
mov qword [rbp - 0x61], rax
mov rax, qword [rbx + 0x538]
xorps xmm0, xmm0
mov r13, qword [rbx + 0x578]
movabs rcx, 0x14b57aa10b4a981f
xor rcx, 0x600d4614
sub rcx, 0xf237496
sub rcx, 0x149852bb
mov r12, qword [rbx + 0x540]
xor rax, rcx
mov qword [rbp - 0x31], rax
lea rcx, [rbp - 0x29]
mov eax, dword [r15 + 4]
mov dword [rbp + 0x4f], eax
lea rdx, [r13 + 1]
mov eax, dword [r15]
mov dword [rbp - 0x69], eax
lea rax, [rbp - 0x21]
mov qword [rbp - 0x29], rax
movups xmmword [rbp - 0x21], xmm0
movups xmmword [rbp - 0x11], xmm0
movups xmmword [rbp - 1], xmm0
call fcn.140017814
xor r9d, r9d
mov edx, 0x172b8f59
sub edx, 0x1cd5f69
add edx, 0x18f133e2
add edx, 0x2698130e
test r13, r13
je 0x1400ebdbb
mov rdi, rax
sub r12, rax
mov r8, r13
mov r10d, 0x2994cba6
add r10d, 0xc3f18ac
sub r10d, 0x2cb5f242
sub r10d, 0x91df111
movzx ecx, dx
ror edx, 8
and cx, r10w
xor cx, word [rdi + r12]
mov word [rdi], cx
lea rdi, [rdi + 2]
sub r8, 1
jne 0x1400ebd9b
mov word [rax + r13*2], r9w
movabs rcx, 0xe8fe197e69173635
sub rcx, 0x58a20837
xor rcx, 0x46a2b7e7
mov rdi, qword [0x140141008]
movabs rax, 0x7a3a8c915a104edb
sub rax, 0x2b6efff6
add rax, 0x7bd0f56b
mov rdx, qword [rbp - 0x29]
xor r13d, r13d
mov qword [rsp + 0x58], r13
mov r9d, 0x298c0472
xor r9d, 0x3c7a4ced
add r9d, 0x30d58266
xor r9d, 0xc6c9cb05
ror rdi, 7
xor r8d, r8d
add rdi, rcx
lea ecx, [r14 + 0x80080]
xor rdi, rax
movabs rax, 0x6a80fcc364fe03b9
xor rax, 0x4b0766c1
add rax, 0x7fffffff
add rax, 0x212297d0
add rdi, rax
mov rax, qword [rbp - 0x31]
mov qword [rsp + 0x50], rax
mov rax, qword [rbp - 0x61]
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x40], rax
mov eax, dword [rbp + 0x4f]
mov dword [rsp + 0x38], eax
mov eax, dword [rbp - 0x69]
mov dword [rsp + 0x30], eax
mov eax, dword [rbp - 0x6d]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp - 0x71]
mov dword [rsp + 0x20], eax
call rdi
mov rcx, qword [rbp - 0x29]
mov r14, rax
lea rax, [rbp - 0x21]
cmp rcx, rax
jne 0x1400ebea8
xor eax, eax
lea rdi, [rbp - 0x21]
lea ecx, [rax + 0x30]
rep stosb byte [rdi], al
jmp 0x1400ebead
call fcn.140098de0
test r14, r14
je 0x1400ec0ea
mov rdx, rsi
mov rcx, rbx
call fcn.1400eb688
jmp 0x1400ec03c
cmp eax, 2
jne 0x1400ec03c
mov rcx, qword [rbx + 0x530]
mov rax, qword [0x140141080]
xor rcx, rdx
rol rax, 0x20
movabs rdx, 0x1cef66587d83366e
sub rdx, 0x214ece3
sub rdx, 0x26c2d516
sub rax, rdx
movabs rdx, 0x7826fc820e1f54f5
add rdx, 0x13b0bb36
add rdx, 0x7fffffff
add rdx, 0x38d0d013
ror rax, 0xf
add rax, rdx
movabs rdx, 0x125abf3b0108ec56
add rdx, 0x21e6d462
add rdx, 0x3464fb9e
sub rdx, 0x40087100
ror rax, 0x14
xor rax, rdx
lea rdx, [rbp - 0x59]
call rax
cmp edi, 1
jne 0x1400ebf82
mov eax, dword [rbp - 0x51]
sub eax, dword [r15]
sub eax, dword [rbp - 0x59]
cdq
sub eax, edx
sar eax, 1
mov dword [rbp - 0x71], eax
mov eax, dword [rbp - 0x4d]
sub eax, dword [r15 + 4]
sub eax, dword [rbp - 0x55]
cdq
sub eax, edx
sar eax, 1
mov dword [rbp - 0x6d], eax
jmp 0x1400ec008
mov rcx, qword [rbx + 0x5a0]
mov rax, qword [r12]
mov rdi, qword [rax + rcx*8 - 0x10]
cmp rdi, qword [rbx + 0x688]
je 0x1400ebfd7
lea rdx, [rbp + 0xf]
mov rcx, rdi
call fcn.1400ef8a0
mov rcx, rdi
mov edx, dword [rax]
add edx, 0x50
mov dword [rbp - 0x71], edx
lea rdx, [rbp + 0x17]
call fcn.1400ef8a0
mov ecx, dword [rax + 4]
nop
sub ecx, 0x725c2771
add ecx, 0x725c2799
mov dword [rbp - 0x6d], ecx
jmp 0x1400ec008
mov dword [rbp - 0x71], 0x57b0b05d
add dword [rbp - 0x71], 0x193a91d0
add dword [rbp - 0x71], 0x939a6ef
sub dword [rbp - 0x71], 0x7a24e908
mov dword [rbp - 0x6d], 0x5eee82a4
xor dword [rbp - 0x6d], 0x28d3fe4
sub dword [rbp - 0x6d], 0x5c63bd18
mov edx, 0xa2c9b43
xor edx, 0x5bd0b69e
add edx, 0x63d0c9e
xor edx, 0x58393fdb
mov rax, rbx
mov rcx, rsi
mov rdx, qword [rbx + rdx]
dec rdx
call fcn.1400fbb50
mov rdx, rsi
mov rcx, rbx
call fcn.1400ec724
mov rax, qword [rsi]
lea rdx, [rbp - 0x71]
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 0x1400ec31f
mov r8, r14
mov rdx, rsi
mov rcx, rbx
call fcn.1400ec3cc
test al, al
jne 0x1400ec0fd
mov rax, qword [0x140141010]
movabs rcx, 0x71081dbb4ed0219b
add rcx, 0x15a2551e
xor rcx, 0x32b83e8f
sub rcx, 0x4489f9f5
rol rax, 0x2c
sub rax, rcx
movabs rcx, 0x33457d424acad737
xor rcx, 0x17c5c61a
add rcx, 0x5fd6f8e8
ror rax, 0x15
add rax, rcx
movabs rcx, 0x4b1571450852abe2
xor rcx, 0x75faf6df
xor rcx, 0x743dae4c
rol rax, 0x36
xor rax, rcx
mov rcx, r14
call rax
mov rdx, rsi
mov rcx, rbx
call fcn.1400ec4b8
mov rsi, r13
jmp 0x1400ec363
mov rax, qword [0x1401410a0]
movabs rcx, 0xdc8ddec050525fa0
xor rcx, 0x3690f548
sub rcx, 0x6769542
add rax, rcx
xor edx, edx
movabs rcx, 0x4da097df4adb0c39
sub rcx, 0x17bfa442
add rcx, 0x2d52c62e
add rcx, 0x7fffffff
xor rcx, 0x6ca5791a
mov r8d, 0x52db1f97
sub r8d, 0x3a17982
add r8d, 0x1035e286
sub r8d, 0x5f6f879c
xor rax, rcx
movabs rcx, 0x2144e41c0dc68f2d
xor rcx, 0x683267b5
add rcx, 0x7fffffff
sub rcx, 0x3298b103
sub rax, rcx
mov rcx, r14
ror rax, 0x2f
lea r9d, [rdx + 2]
call rax
movabs rax, 0x14b57aa134384399
add rax, 0x2486b434
sub rax, 0x4f94387
sub rax, 0xc399d8c
cmp qword [rbx + 0x760], rax
je 0x1400ec22a
mov eax, dword [r15]
lea rdx, [rbp - 0x49]
and qword [rbp - 0x49], 0
movabs rcx, 0x5ebf3266310218d
sub rcx, 0x3dc2bbd
sub rcx, 0x2d4b41a0
xor rcx, 0x1ace9fe6
mov dword [rbp - 0x41], eax
mov eax, dword [r15 + 4]
mov dword [rbp - 0x3d], eax
mov rax, qword [rbx + 0x770]
rol rax, 0x31
add rax, rcx
movabs rcx, 0x648b5e5a113c2ad9
xor rcx, 0x67948330
sub rcx, 0x270c670e
sub rcx, 0x13568be1
not rax
sub rax, rcx
mov rcx, r14
call rax
mov rdx, qword [0x1401410a8]
movabs rcx, 0x23590f283cac8c85
xor rcx, 0x476037cd
sub rcx, 0xf2da129
add rdx, rcx
movabs rax, 0x1f822fe6557d8b03
sub rax, 0x4eff7640
add rax, 0x7fffffff
add rax, 0xebe836c
ror rdx, 0x3d
mov rcx, r14
xor rdx, rax
movabs rax, 0x6c5035c2108830f8
sub rax, 0x7f6aed7
add rax, 0x7fffffff
add rax, 0x3eb0db87
sub rdx, rax
movabs rax, 0x541c64203d14e3f2
sub rax, 0x3720a670
xor rax, 0x3a575724
xor rdx, rax
call rdx
mov rax, qword [0x1401410b0]
movabs rcx, 0x8b36786a62164de3
sub rcx, 0x3cf3bd7e
add rcx, 0x7fffffff
add rcx, 0x1d1ba1b9
add rax, rcx
mov edx, 0x23a5ca5a
sub edx, 0x11e610f
xor edx, 0x1590b5e6
sub edx, 0x3717dca8
ror rax, 0x29
movabs rcx, 0x3b53646215f2fa3
sub rcx, 0x13b09f36
add rcx, 0x5803a21a
add rcx, 0x37d680a1
xor rax, rcx
mov rcx, r14
not rax
call rax
jmp 0x1400ec363
cmp eax, 2
jne 0x1400ec363
mov rdx, qword [rbx + 0x580]
test rdx, rdx
je 0x1400ec341
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x20]
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x30]
cmp byte [rbp + 0x77], r13b
je 0x1400ec363
mov rcx, qword [rbx + 0x688]
mov rdx, rsi
call fcn.140104e90
or ecx, 0xffffffff
add dword [rbx + 0x6b4], ecx
jne 0x1400ec3a0
mov qword [rbx + 0x6a0], r13
mov eax, ecx
lock xadd dword [rbx + 0x6b0], eax
add eax, ecx
cmp eax, ecx
je 0x1400ec3a7
mov rcx, qword [rbx + 0x6a8]
xor edx, edx
call fcn.140056010
jmp 0x1400ec3a7
lock add dword [rbx + 0x6b0], ecx
lea r11, [rsp + 0xf0]
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