Function at 0x14000b77a
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x60
mov rdi, qword [rcx]
mov word [rsp + 0x2c], 0x2bcb
mov word [rsp + 0x2e], 0x2bbc
mov word [rsp + 0x30], 0x2ba2
mov word [rsp + 0x32], 0x2ba5
mov word [rsp + 0x34], 0x2ba3
mov word [rsp + 0x36], 0x2bbf
mov word [rsp + 0x38], 0x2bbf
mov word [rsp + 0x3a], 0x2bbb
mov word [rsp + 0x3c], 0x2be5
mov word [rsp + 0x3e], 0x2baf
mov word [rsp + 0x40], 0x2ba7
mov word [rsp + 0x42], 0x2ba7
mov word [rsp + 0x44], 0
mov ecx, 0x18
call fcn.1400018f0
mov rsi, rax
mov eax, 1
nop word [rax + rax]
movzx ecx, word [rsp + rax*2 + 0x2c]
xor cx, word [rsp + 0x2c]
mov word [rsi + rax*2 - 2], cx
inc rax
cmp rax, 0xc
clc
or al, 0x75
invalid
mov word [rsi + 0x16], 0
mov word [rsp + 0x46], 0x76
mov word [rsp + 0x48], 0x70
mov word [rsp + 0x4a], 0x7d
mov word [rsp + 0x4c], 0x79
mov word [rsp + 0x4e], 0x70
mov word [rsp + 0x50], 0x77
mov word [rsp + 0x52], 0x3e
mov word [rsp + 0x54], 0x3d
mov word [rsp + 0x56], 0x39
mov word [rsp + 0x58], 0x6f
mov word [rsp + 0x5a], 0x77
mov word [rsp + 0x5c], 0x77
mov word [rsp + 0x5e], 0
mov ecx, 0x1a
call fcn.1400018f0
xor ecx, ecx
nop word cs:[rax + rax]
movzx edx, word [rsp + rcx*2 + 0x46]
add edx, 0xfffffff5
mov word [rax + rcx*2], dx
inc rcx
cmp rcx, 0xc
jne 0x14000b650
mov word [rax + 0x18], 0
mov byte [rsp + 0x2b], 0x69
movzx ecx, byte [rsp + 0x2b]
add cl, 0xf7
movzx ecx, cl
mov rcx, qword gs:[rcx]
mov rcx, qword [rcx + 0x18]
add rcx, 0x20
jmp 0x14000b696
cmp r9w, r10w
je 0x14000b6e3
mov rcx, qword [rcx]
mov rdx, qword [rcx + 0x50]
xor r8d, r8d
movzx r10d, word [rdx + r8]
lea r11d, [r10 - 0x41]
mov r9d, r10d
or r9d, 0x20
cmp r11w, 0x1a
cmovae r9d, r10d
movzx r11d, word [rax + r8]
lea ebx, [r11 - 0x41]
mov r10d, r11d
or r10d, 0x20
cmp bx, 0x1a
cmovae r10d, r11d
test r9w, r9w
je 0x14000b690
add r8, 2
cmp r9w, r10w
je 0x14000b6a0
jmp 0x14000b690
mov rdx, qword [rcx + 0x20]
movsxd rcx, dword [rdx + 0x3c]
add rcx, rdx
mov r8d, 0x12337fde
call fcn.140004690
mov rcx, rsi
call rax
mov word [rsp + 0x2c], 0xe690
mov word [rsp + 0x2e], 0xe6e7
mov word [rsp + 0x30], 0xe6f9
mov word [rsp + 0x32], 0xe6fe
mov word [rsp + 0x34], 0xe6f8
mov word [rsp + 0x36], 0xe6e4
in al, 0xe6
mov word [rsp + 0x38], 0xe6e4
mov word [rsp + 0x3a], 0xe6e0
mov word [rsp + 0x3c], 0xe6be
mov word [rsp + 0x3e], 0xe6f4
mov word [rsp + 0x40], 0xe6fc
mov word [rsp + 0x42], 0xe6fc
mov word [rsp + 0x44], 0
mov ecx, 0x18
call fcn.1400018f0
mov ecx, 1
nop dword [rax + rax]
movzx edx, word [rsp + rcx*2 + 0x2c]
xor dx, word [rsp + 0x2c]
mov word [rax + rcx*2 - 2], dx
inc rcx
cmp rcx, 0xc
jne 0x14000b770
mov word [rax + 0x16], 0
mov byte [rsp + 0x46], 0x69
movzx ecx, byte [rsp + 0x46]
add cl, 0xf7
movzx ecx, cl
mov rcx, qword gs:[rcx]
mov rcx, qword [rcx + 0x18]
add rcx, 0x20
jmp 0x14000b7b6
cmp r9w, r10w
je 0x14000b803
mov rcx, qword [rcx]
mov rdx, qword [rcx + 0x50]
xor r8d, r8d
movzx r10d, word [rdx + r8]
lea r11d, [r10 - 0x41]
mov r9d, r10d
or r9d, 0x20
cmp r11w, 0x1a
cmovae r9d, r10d
movzx r11d, word [rax + r8]
lea esi, [r11 - 0x41]
mov r10d, r11d
or r10d, 0x20
cmp si, 0x1a
cmovae r10d, r11d
test r9w, r9w
je 0x14000b7b0
add r8, 2
cmp r9w, r10w
je 0x14000b7c0
jmp 0x14000b7b0
mov rdx, qword [rcx + 0x20]
movsxd rcx, dword [rdx + 0x3c]
add rcx, rdx
mov r8d, 0xb968ae56
call fcn.140004690
mov rcx, qword [rdi + 0x20]
add rsp, 0x60
pop rbx
pop rdi
pop rsi
jmp rax