Function at 0x14003a138
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]
sub rsp, 0x54b8ba52
add rsp, 0x54b8b962
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 0x14003a1a6
cmp rsi, qword [rcx + 0x6a0]
je 0x14003a317
mov rcx, qword [rcx + 0x6a8]
xor r8d, r8d
xor edx, edx
call fcn.14005bbb0
mov qword [rbx + 0x6a0], rsi
mov dword [rbx + 0x6b4], 0x6672516d
sub dword [rbx + 0x6b4], 0x29b9f892
add dword [rbx + 0x6b4], 0x24c5ba52
sub dword [rbx + 0x6b4], 0x617e132c
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.140038fbc
mov edx, dword [rbp + 0x6f]
mov rcx, rsi
call fcn.14004ef20
mov rdx, r14
mov rcx, rsi
call fcn.14004ecc0
mov eax, dword [rbx + 0x518]
xor r13d, r13d
mov qword [rbp - 0x71], r13
mov r14d, r13d
movabs rdx, 0x68cc10c432cdbb53
add rdx, 0x13fa68b5
sub rdx, 0x15e8e01d
add rdx, 0x117038d3
cmp eax, 1
jne 0x14003a560
cmp edi, eax
jne 0x14003a322
mov rax, qword [0x1400ef018]
movabs r12, 0x69fbffe62f1eb626
sub r12, 0x1bbd65bd
xor r12, 0x2005aed2
add r12, 0xd1751a
xor rax, r12
movabs r14, 0x34eaf037464fb28a
xor r14, 0x101a91e
sub r14, 0x451690cc
add r14, 0x20217940
ror rax, 0x35
movabs rdi, 0x34ed21073d691e13
sub rdi, 0x14c7fa8d
sub rdi, 0x1aabbe1e
add rdi, 0x7fffffff
add rdi, 0x4adb0436
add rax, r14
xor ecx, ecx
rol rax, 0x15
sub rax, rdi
rol rax, 0xf
not rax
call rax
sub eax, dword [r15]
lea ecx, [r13 + 1]
cdq
sub eax, edx
sar eax, 1
mov dword [rbp - 0x71], eax
mov rax, qword [0x1400ef018]
xor rax, r12
ror rax, 0x35
add rax, r14
rol rax, 0x15
sub rax, rdi
rol rax, 0xf
not rax
call rax
sub eax, dword [r15 + 4]
cdq
sub eax, edx
sar eax, 1
jmp 0x14003a341
inc dword [rcx + 0x6b4]
jmp 0x14003a1d5
test edi, edi
jne 0x14003a344
mov eax, 0x6b7cec5a
xor eax, 0x6a3d07aa
add eax, 0x20e281d7
xor eax, 0xa2246dc7
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 0x14003a382
call fcn.1400423e0
mov rcx, rax
test rax, rax
je 0x14003a382
mov rax, qword [rax]
call qword [rax + 0xb0]
mov qword [rbp - 0x61], rax
mov rax, qword [rbx + 0x538]
xorps xmm0, xmm0
mov r13, qword [rbx + 0x578]
movabs rcx, 0x68cc10c44ebacfce
sub rcx, 0x1546ee83
sub rcx, 0x2ea87aa
add rcx, 0xbc6231d
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.14001664c
xor r9d, r9d
mov edx, 0x2278790d
sub edx, 0x1c5132bf
add edx, 0x2a1acf24
test r13, r13
je 0x14003a448
mov rdi, rax
sub r12, rax
mov r8, r13
mov r10d, 0x122d9d44
add r10d, 0x4e791bfc
xor r10d, 0x60a6b9bf
movzx ecx, dx
ror edx, 8
and cx, r10w
xor cx, word [r12 + rdi]
mov word [rdi], cx
lea rdi, [rdi + 2]
sub r8, 1
jne 0x14003a428
mov word [rax + r13*2], r9w
lea ecx, [r14 + 0x80080]
mov rdi, qword [0x1400ef008]
movabs rax, 0x6c67fda306ca2b8b
xor rax, 0x12ae40bf
sub rax, 0x7b3af39
xor rax, 0x3cc8b6d5
mov rdx, qword [rbp - 0x29]
xor r13d, r13d
mov qword [rsp + 0x58], r13
mov r9d, 0x5e2c5f92
xor r9d, 0x30232cde
add r9d, 0x11f28cb4
rol rdi, 7
xor r8d, r8d
not rdi
add rdi, rax
movabs rax, 0x2f4f9854b97cd82
sub rax, 0x48421120
add rax, 0x7fffffff
xor rax, 0x657d3b5
rol rdi, 0x24
xor rdi, rax
movabs rax, 0x2df7d8a169def0ec
sub rax, 0x48de5840
add rax, 0x27bed8f8
add rax, 0x33feae74
not rdi
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 0x14003a542
xor eax, eax
lea rdi, [rbp - 0x21]
lea ecx, [rax + 0x30]
rep stosb byte [rdi], al
jmp 0x14003a547
call fcn.1400920d0
test r14, r14
je 0x14003a771
mov rdx, rsi
mov rcx, rbx
call fcn.140039cb0
jmp 0x14003a6db
cmp eax, 2
jne 0x14003a6db
mov rcx, qword [rbx + 0x530]
mov rax, qword [0x1400ef080]
xor rcx, rdx
not rax
movabs rdx, 0x5cd785f45a2b4f6
xor rdx, 0x28665c87
add rdx, 0x7fffffff
sub rdx, 0x3185068b
xor rax, rdx
movabs rdx, 0xf4b832e211cbb0b
add rdx, 0x5b840435
xor rdx, 0x64e00fcb
add rdx, 0x3a73e360
sub rax, rdx
movabs rdx, 0xa5812f1814b875d9
add rdx, 0x61a6b6a8
xor rdx, 0x3a2ee1eb
xor rdx, 0x7a6417e9
rol rax, 3
add rax, rdx
lea rdx, [rbp - 0x59]
call rax
cmp edi, 1
jne 0x14003a61e
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 0x14003a6a7
mov rcx, qword [rbx + 0x5a0]
mov rax, qword [r12]
mov rdi, qword [rax + rcx*8 - 0x10]
cmp rdi, qword [rbx + 0x688]
je 0x14003a67d
lea rdx, [rbp + 0xf]
mov rcx, rdi
call fcn.1400432f0
mov rcx, rdi
mov edx, dword [rax]
nop
add edx, 0x10c45aa7
sub edx, 0x10c45a57
mov dword [rbp - 0x71], edx
lea rdx, [rbp + 0x17]
call fcn.1400432f0
mov ecx, dword [rax + 4]
nop
sub ecx, 0x33bd5b5
add ecx, 0x33bd5dd
mov dword [rbp - 0x6d], ecx
jmp 0x14003a6a7
mov dword [rbp - 0x71], 0x46f40420
add dword [rbp - 0x71], 0x11445912
sub dword [rbp - 0x71], 0x58385d1e
mov dword [rbp - 0x6d], 0x5066e5ca
add dword [rbp - 0x6d], 0x2287f3d6
sub dword [rbp - 0x6d], 0x72eed978
mov edx, 0x72a69ebf
sub edx, 0x5ce79a04
xor edx, 0x590b300f
sub edx, 0x4cb42f14
mov rax, rbx
mov rcx, rsi
mov rdx, qword [rdx + rbx]
dec rdx
call fcn.14004d300
mov rdx, rsi
mov rcx, rbx
call fcn.14003ad50
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 0x14003a953
mov r8, r14
mov rdx, rsi
mov rcx, rbx
call fcn.14003aa00
test al, al
jne 0x14003a784
movabs rcx, 0x3af6505f3b447a
sub rcx, 0x15fd005b
add rcx, 0x241052e0
add rcx, 0x4693f9c2
movabs rax, 0x8f9aae502abf519e
add rax, 0x42862e4a
sub rax, 0x45ec160
sub rax, 0x5281663f
add rcx, qword [0x1400ef010]
rol rcx, 0x24
add rax, rcx
mov rcx, r14
not rax
ror rax, 0x20
not rax
call rax
mov rdx, rsi
mov rcx, rbx
call fcn.14003aae4
mov rsi, r13
jmp 0x14003a997
mov rax, qword [0x1400ef0a0]
movabs rcx, 0x4ecac8b71d015cb
xor rcx, 0x422189ce
add rcx, 0x4810ea70
not rax
xor edx, edx
xor rax, rcx
mov r8d, 0x50e11a4d
xor r8d, 0x5dc42fbe
xor r8d, 0x35d02d90
xor r8d, 0x38f5189c
rol rax, 0x16
movabs rcx, 0x6ac1b557018fc8a0
add rcx, 0x2b2dc605
add rcx, 0x3cdce30
add rax, rcx
mov rcx, r14
not rax
lea r9d, [rdx + 2]
call rax
movabs rax, 0x68cc10c4123ad2a0
xor rax, 0x2c9b1ca1
add rax, 0x3adaebd
cmp qword [rbx + 0x760], rax
je 0x14003a899
mov eax, dword [r15]
lea rdx, [rbp - 0x49]
and qword [rbp - 0x49], 0
movabs rcx, 0x4b40b0d4f7e163c
xor rcx, 0x37b0f794
sub rcx, 0x1d37bdc0
sub rcx, 0x22ec1646
mov dword [rbp - 0x41], eax
mov eax, dword [r15 + 4]
mov dword [rbp - 0x3d], eax
mov rax, qword [rbx + 0x770]
sub rax, rcx
movabs rcx, 0x41b797cb3483dd75
xor rcx, 0x7efbf28a
add rcx, 0x445ab020
rol rax, 0x3c
add rax, rcx
movabs rcx, 0x429821a759103f8d
xor rcx, 0x463f0a50
add rcx, 0x7fffffff
add rcx, 0x57329e87
xor rax, rcx
mov rcx, r14
call rax
mov rdx, qword [0x1400ef0a8]
movabs rcx, 0xcd7813543a3123f6
add rcx, 0x11a7c302
sub rcx, 0x18aa9f2e
sub rcx, 0x1c64a853
not rdx
ror rdx, 0x3c
add rdx, rcx
mov rcx, r14
not rdx
rol rdx, 0x37
not rdx
call rdx
mov rax, qword [0x1400ef0b0]
movabs rcx, 0x84c6b45e5d5df47a
xor rcx, 0x13f83e6b
add rcx, 0x7fffffff
add rcx, 0xf373bc3
not rax
mov edx, 0x5cd4c5a1
xor edx, 0x618b8352
sub edx, 0x118d348
sub edx, 0x3c4673a6
rol rax, 0x3e
xor rax, rcx
movabs rcx, 0x4281b00606f6f963
add rcx, 0x27a50e98
add rcx, 0x7fffffff
xor rcx, 0xda2a2c1
rol rax, 2
add rax, rcx
mov rcx, r14
rol rax, 0x1b
call rax
jmp 0x14003a997
cmp eax, 2
jne 0x14003a997
mov rdx, qword [rbx + 0x580]
test rdx, rdx
je 0x14003a975
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 0x14003a997
mov rcx, qword [rbx + 0x688]
mov rdx, rsi
call fcn.140051280
or ecx, 0xffffffff
add dword [rbx + 0x6b4], ecx
jne 0x14003a9d4
mov qword [rbx + 0x6a0], r13
mov eax, ecx
lock xadd dword [rbx + 0x6b0], eax
add eax, ecx
cmp eax, ecx
je 0x14003a9db
mov rcx, qword [rbx + 0x6a8]
xor edx, edx
call fcn.14005bb70
jmp 0x14003a9db
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