Function at 0x140030660
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, 0xffffffffffffff00
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 0x1400306c8
cmp rsi, qword [rcx + 0x6a0]
je 0x14003082f
mov rcx, qword [rcx + 0x6a8]
xor r8d, r8d
xor edx, edx
call fcn.140095030
mov qword [rbx + 0x6a0], rsi
mov dword [rbx + 0x6b4], 0x7b9a0c11
sub dword [rbx + 0x6b4], 0x4292a9bc
add dword [rbx + 0x6b4], 0x2386fdee
sub dword [rbx + 0x6b4], 0x5c8e6042
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.14002f0e0
mov edx, dword [rbp + 0x6f]
mov rcx, rsi
call fcn.140042680
mov rdx, r14
mov rcx, rsi
call fcn.140042410
movzx r13d, byte [rbp + 0x77]
xor eax, eax
mov r14d, eax
mov qword [rsp + 0x60], rax
mov eax, dword [rbx + 0x518]
movabs rdx, 0x365859e1043056b4
add rdx, 0x1f1cf948
add rdx, 0x20061d49
add rdx, 0x3956ea57
cmp eax, 1
jne 0x140030b0e
cmp edi, eax
jne 0x14003083a
mov rax, qword [0x1404e0038]
movabs r12, 0x5153f302799606b6
sub r12, 0xc673baa
sub r12, 0x4986e803
xor r12, 0x1367f06d
xor rax, r12
movabs r14, 0x5011e9854934834e
xor r14, 0x7b3de849
add r14, 0x369a99c1
sub rax, r14
movabs rdi, 0x56c7acc611c1d91e
add rdi, 0x404db7fa
sub rdi, 0x3bb8acc2
ror rax, 0x2b
xor ecx, ecx
sub rax, rdi
ror rax, 0xb
call rax
sub eax, dword [r15]
mov ecx, 0x6725e1d4
sub ecx, 0x1ce64d01
sub ecx, 0x4958385
xor ecx, 0x45aa114f
cdq
sub eax, edx
sar eax, 1
mov dword [rsp + 0x60], eax
mov rax, qword [0x1404e0038]
xor rax, r12
sub rax, r14
ror rax, 0x2b
sub rax, rdi
ror rax, 0xb
call rax
sub eax, dword [r15 + 4]
cdq
sub eax, edx
sar eax, 1
mov dword [rbp - 0x7d], eax
jmp 0x14003087e
inc dword [rcx + 0x6b4]
jmp 0x1400306f7
test edi, edi
jne 0x14003087e
mov dword [rsp + 0x60], 0x15da7e94
xor dword [rsp + 0x60], 0x1821e0ca
add dword [rsp + 0x60], 0x6d2ff920
add dword [rsp + 0x60], 0x4d46882
mov dword [rbp - 0x7d], 0x4028c66d
xor dword [rbp - 0x7d], 0x720803f6
add dword [rbp - 0x7d], 0x301b685
add dword [rbp - 0x7d], 0x4add83e0
mov rcx, qword [rbp + 0x7f]
test r13b, r13b
pushf
mov eax, 0x19fdcfd0
xor eax, 0x1ff526e8
xor eax, 0x600e9b8
popf
pushf
mov r12d, 0x5ab35925
sub r12d, 0x3d86a890
sub r12d, 0x1b09658c
sub r12d, 0x2174b09
popf
cmove r12d, eax
xor edi, edi
mov qword [rbp - 0x71], rdi
test rcx, rcx
je 0x1400308e8
call fcn.14003d1a0
mov rcx, rax
test rax, rax
je 0x1400308e8
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, 0x365859e106ebd2cf
add rcx, 0x2cbf68d4
xor rcx, 0x54f81182
add rcx, 0x15572d7b
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.140018ab0
mov edx, 0x5273c956
sub edx, 0x2f59465f
add edx, 0x29f8d2fb
test r13, r13
je 0x1400309bd
mov rdi, rax
sub r14, rax
mov r8, r13
mov r9d, 0x3fd186e2
xor r9d, 0x316eaa4
add r9d, 0x22dabe5
sub r9d, 0x3ef5172c
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 0x14003099b
xor ecx, ecx
mov r9d, 0x1ca33ad6
sub r9d, 0x19f16868
add r9d, 0x7d502d92
mov word [rax + r13*2], cx
xor r8d, r8d
mov rdi, qword [0x1404e0028]
movabs rax, 0x6690dc79126dd7db
xor rax, 0x12038345
add rax, 0x65d9c69d
sub rax, 0x58d4b7d9
mov rdx, qword [rbp - 0x31]
mov qword [rsp + 0x58], rcx
rol rdi, 0x3d
xor rdi, rax
movabs rax, 0x499f7ed6271f1533
xor rax, 0x5d6eed6
add rax, 0x32b52b80
add rax, 0x47f68a37
rol rdi, 0x1b
xor rdi, rax
movabs rax, 0x2a3e1d8f2c28c373
add rax, 0x51649b61
sub rax, 0x5a4f7ba3
xor rax, 0x25476e2d
rol rdi, 0xb
sub rdi, rax
mov rax, qword [rbp - 0x41]
mov qword [rsp + 0x50], rax
mov rax, qword [rbp - 0x71]
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 - 0x79]
mov dword [rsp + 0x30], eax
mov eax, dword [rbp - 0x7d]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x60]
ror rdi, 7
mov dword [rsp + 0x20], eax
call rdi
mov rcx, qword [rbp - 0x31]
mov r14, rax
lea rax, [rbp - 0x29]
cmp rcx, rax
jne 0x140030ac9
lea rdi, [rbp - 0x29]
xor eax, eax
mov ecx, 0x116ed1de
add ecx, 0x6626d483
sub ecx, 0x1b358902
xor ecx, 0x5c601d6f
rep stosb byte [rdi], al
jmp 0x140030ace
call fcn.1400bc0d0
test r14, r14
je 0x140030cdb
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.14002f1d0
movzx r13d, byte [rbp + 0x77]
jmp 0x140030c6a
cmp eax, 2
jne 0x140030c6a
mov rcx, qword [rbx + 0x530]
mov rax, qword [0x1404e00a0]
xor rcx, rdx
rol rax, 0x21
movabs rdx, 0x7a1e7723364f2036
xor rdx, 0x4e9bf9f3
xor rdx, 0x2d4415d9
xor rax, rdx
movabs rdx, 0x5c4e0dc5802ac6b
xor rdx, 0x3d51252b
add rdx, 0x164e2622
sub rdx, 0x3981729e
sub rax, rdx
lea rdx, [rbp - 0x69]
not rax
call rax
cmp edi, 1
jne 0x140030ba4
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 0x140030c36
mov rcx, qword [rbx + 0x5a0]
mov rax, qword [rbx + 0x598]
mov rdi, qword [rax + rcx*8 - 0x10]
cmp rdi, qword [rbx + 0x688]
je 0x140030c01
lea rdx, [rbp + 7]
mov rcx, rdi
call fcn.140047fe0
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.140047fe0
mov ecx, dword [rax + 4]
nop
add ecx, 0x273cc607
sub ecx, 0x273cc5df
mov dword [rbp - 0x7d], ecx
jmp 0x140030c36
mov dword [rsp + 0x60], 0xc26c40d
add dword [rsp + 0x60], 0xb7c3642
add dword [rsp + 0x60], 0x64c3917a
sub dword [rsp + 0x60], 0x7c668bb5
mov dword [rbp - 0x7d], 0x76d9181c
xor dword [rbp - 0x7d], 0x150fe0cb
sub dword [rbp - 0x7d], 0x63d6f8af
mov edx, 0x68d0abf3
xor edx, 0x1b01dafc
xor edx, 0x1631d32d
sub edx, 0x65e09c82
mov rax, rbx
mov rcx, rsi
mov rdx, qword [rdx + rbx]
dec rdx
call fcn.14002c770
mov rdx, rsi
mov rcx, rbx
call fcn.1400313a0
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 0x140030f62
mov r8, r14
mov rdx, rsi
mov rcx, rbx
call fcn.140031020
test al, al
jne 0x140030cef
mov rax, qword [0x1404e0030]
movabs rcx, 0x9b95ada909919640
add rcx, 0x3ca8e159
xor rcx, 0x32bf8b0e
rol rax, 0x17
not rax
rol rax, 0xc
add rax, rcx
mov rcx, r14
call rax
mov rdx, rsi
mov rcx, rbx
call fcn.140031110
xor edi, edi
mov esi, edi
jmp 0x140030fa7
mov rax, qword [0x1404e00c0]
movabs rcx, 0x77ac8e8c725a5f8d
sub rcx, 0x3306c582
xor rcx, 0x681fd3cc
xor rcx, 0x31dba387
xor rax, rcx
mov r9d, 0xbb41b5d
add r9d, 0x6305cf61
sub r9d, 0x5ad58ea3
sub r9d, 0x13e45c19
rol rax, 6
movabs rcx, 0x3293cc40026f4dd5
add rcx, 0x1a4b798b
add rcx, 0x7fffffff
add rcx, 0x4b06a0a5
add rax, rcx
mov r8b, 0x2f
xor r8b, 0x55
sub r8b, 0x25
add r8b, 0xaa
ror rax, 0x3c
xor edx, edx
mov rcx, r14
call rax
movabs rax, 0x365859e165e0e73e
sub rax, 0x418d06ef
sub rax, 0x97d0667
xor rax, 0x667c8e74
xor edi, edi
cmp qword [rbx + 0x760], rax
je 0x140030e48
mov eax, dword [r15]
lea rdx, [rbp - 0x59]
mov dword [rbp - 0x51], eax
movabs rcx, 0x7f27d7f777b5158b
sub rcx, 0x140de978
xor rcx, 0x3b97e799
sub rcx, 0xc0d803e
mov eax, dword [r15 + 4]
mov dword [rbp - 0x4d], eax
mov rax, qword [rbx + 0x770]
sub rax, rcx
mov qword [rbp - 0x59], rdi
rol rax, 0x22
movabs rcx, 0xc751c9273d371a51
add rcx, 0x234e5557
sub rcx, 0x5090b06b
xor rcx, 0x522512a5
xor rax, rcx
movabs rcx, 0x61ff13322ac92ee0
xor rcx, 0x42a8d738
add rcx, 0x5a5fe1c4
sub rax, rcx
movabs rcx, 0x7f3c85b81da7721d
add rcx, 0x5b184ea4
add rcx, 0x7fffffff
sub rcx, 0x3385c3c1
rol rax, 0x1f
xor rax, rcx
mov rcx, r14
call rax
movabs rax, 0x7c5e8b243a43c4cc
sub rax, 0x5a4221e
add rax, 0x228e6c95
xor rax, 0x16ae931
movabs rcx, 0x2fbb944a1071b2f1
xor rcx, 0x1d95f0a1
xor rcx, 0x3ec023df
add rcx, qword [str.zGC]
xor rcx, rax
movabs rax, 0x4aa813d925de3bf8
add rax, 0x413e8a05
sub rax, 0x56ece886
add rax, 0x7fffffff
xor rax, 0x78ce2466
ror rcx, 0x3c
add rax, rcx
movabs rcx, 0x258b78646e0d5ef4
add rcx, 0x106cec71
add rcx, 0x216151d8
not rax
rol rax, 0x1f
add rax, rcx
mov rcx, r14
call rax
mov rax, qword [str._ivo]
movabs rcx, 0x79f6da37290da198
add rcx, 0x43845d61
xor rcx, 0xb66758
rol rax, 0x1f
mov edx, 0x45a88073
sub edx, 0xce1d07a
xor edx, 0x38c6affc
xor rax, rcx
movabs rcx, 0x700d54e71a577bef
add rcx, 0x40263b99
xor rcx, 0x709bd74a
add rcx, 0x7fffffff
add rcx, 0x4612bdb9
add rax, rcx
movabs rcx, 0x3e5b438f4e15d5e3
sub rcx, 0x1ddd0e11
add rcx, 0x7fffffff
add rcx, 0x355c49db
xor rax, rcx
mov rcx, r14
call rax
jmp 0x140030fa7
cmp eax, 2
jne 0x140030fa5
mov rdx, qword [rbx + 0x580]
test rdx, rdx
je 0x140030f84
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 0x140030fa5
mov rcx, qword [rbx + 0x688]
mov rdx, rsi
call fcn.1400483a0
xor edi, edi
sub dword [rbx + 0x6b4], 1
jne 0x140030ff2
mov qword [rbx + 0x6a0], rdi
mov ecx, 0x34d5642a
add ecx, 0x1aae8c76
add ecx, 0xb07c0f5f
lock xadd dword [rbx + 0x6b0], ecx
dec ecx
cmp ecx, 0xffffffff
je 0x140030ff9
mov rcx, qword [rbx + 0x6a8]
xor edx, edx
call fcn.140094fd0
jmp 0x140030ff9
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