Function at 0x14007a340
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0x60
mov rax, qword [rdx]
mov r14, rcx
mov rcx, rdx
mov r15, rdx
call qword [rax + 0x88]
xor ebx, ebx
mov r8, r14
cmp dword [r14 + 0x30], 3
mov rsi, rax
mov rdx, r15
mov rcx, rsi
mov rax, qword [rax]
lea r13d, [rbx + 1]
jne 0x14007a38b
call qword [rax + 0x28]
mov ebp, eax
jmp 0x14007a396
call qword [rax + 0x20]
test al, al
mov ebp, ebx
cmovne ebp, r13d
mov eax, dword [r14 + 0x2c]
mov edi, ebx
dec eax
cmp eax, 0x11
ja case.default.0x14007a3c2
lea rdx, [0x140000000]
cdqe
mov qword [rsp + 0x90], r12
mov ecx, dword [rdx + rax*4 + 0x7a8d0]
add rcx, rdx
jmp rcx
cmp dword [r14 + 0x30], 3
jne 0x14007a420
test ebp, ebp
jle 0x14007a8ad
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rsi]
mov r9d, ebx
mov r8, r14
mov rdx, r15
mov rcx, rsi
call qword [rax + 0x138]
test eax, eax
jns 0x14007a400
mov eax, 0xa
jmp 0x14007a413
cmp eax, 0x80
jae 0x14007a40c
mov eax, r13d
jmp 0x14007a413
mov ecx, eax
call fcn.14006fb80
add edi, eax
inc ebx
cmp ebx, ebp
jl 0x14007a3e0
jmp 0x14007a8ad
mov rax, qword [rsi]
mov r8, r14
mov rdx, r15
mov rcx, rsi
call qword [rax + 0x80]
test eax, eax
jns 0x14007a5f7
mov edi, 0xa
jmp 0x14007a8ad
cmp dword [r14 + 0x30], 3
jne 0x14007a48a
test ebp, ebp
jle 0x14007a8ad
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rsi]
mov r9d, ebx
mov r8, r14
mov rdx, r15
mov rcx, rsi
call qword [rax + 0x140]
mov rcx, rax
call fcn.14006fbc0
add edi, eax
inc ebx
cmp ebx, ebp
jl 0x14007a460
jmp 0x14007a8ad
mov rax, qword [rsi]
mov r8, r14
mov rdx, r15
mov rcx, rsi
call qword [rax + 0x88]
mov rcx, rax
call fcn.14006fbc0
mov edi, eax
jmp 0x14007a8ad
cmp dword [r14 + 0x30], 3
jne 0x14007a4fd
test ebp, ebp
jle 0x14007a8ad
nop word [rax + rax]
mov rax, qword [rsi]
mov r9d, ebx
mov r8, r14
mov rdx, r15
mov rcx, rsi
call qword [rax + 0x138]
mov ecx, eax
add eax, eax
sar ecx, 0x1f
xor ecx, eax
cmp ecx, 0x80
jae 0x14007a4eb
mov eax, r13d
jmp 0x14007a4f0
call fcn.14006fb80
add edi, eax
inc ebx
cmp ebx, ebp
jl 0x14007a4c0
jmp 0x14007a8ad
mov rax, qword [rsi]
mov r8, r14
mov rdx, r15
mov rcx, rsi
call qword [rax + 0x80]
mov ecx, eax
add eax, eax
sar ecx, 0x1f
xor ecx, eax
cmp ecx, 0x80
jae 0x14007a604
mov edi, r13d
jmp 0x14007a8ad
cmp dword [r14 + 0x30], 3
jne 0x14007a574
test ebp, ebp
jle 0x14007a8ad
nop dword [rax + rax]
mov rax, qword [rsi]
mov r9d, ebx
mov r8, r14
mov rdx, r15
mov rcx, rsi
call qword [rax + 0x140]
mov rcx, rax
add rax, rax
sar rcx, 0x3f
xor rcx, rax
call fcn.14006fbc0
add edi, eax
inc ebx
cmp ebx, ebp
jl 0x14007a540
jmp 0x14007a8ad
mov rax, qword [rsi]
mov r8, r14
mov rdx, r15
mov rcx, rsi
call qword [rax + 0x88]
mov rcx, rax
add rax, rax
sar rcx, 0x3f
xor rcx, rax
call fcn.14006fbc0
mov edi, eax
jmp 0x14007a8ad
cmp dword [r14 + 0x30], 3
jne 0x14007a5e5
test ebp, ebp
jle 0x14007a8ad
nop
mov rax, qword [rsi]
mov r9d, ebx
mov r8, r14
mov rdx, r15
mov rcx, rsi
call qword [rax + 0x148]
cmp eax, 0x80
jae 0x14007a5d1
mov eax, r13d
jmp 0x14007a5d8
mov ecx, eax
call fcn.14006fb80
add edi, eax
inc ebx
cmp ebx, ebp
jl 0x14007a5b0
jmp 0x14007a8ad
mov rax, qword [rsi]
mov r8, r14
mov rdx, r15
mov rcx, rsi
call qword [rax + 0x90]
cmp eax, 0x80
jb 0x14007a524
mov ecx, eax
call fcn.14006fb80
mov edi, eax
jmp 0x14007a8ad
cmp dword [r14 + 0x30], 3
jne 0x14007a64a
test ebp, ebp
jle 0x14007a8ad
nop
mov rax, qword [rsi]
mov r9d, ebx
mov r8, r14
mov rdx, r15
mov rcx, rsi
call qword [rax + 0x150]
mov rcx, rax
call fcn.14006fbc0
add edi, eax
inc ebx
cmp ebx, ebp
jl 0x14007a620
jmp 0x14007a8ad
mov rax, qword [rsi]
mov r8, r14
mov rdx, r15
mov rcx, rsi
call qword [rax + 0x98]
mov rcx, rax
call fcn.14006fbc0
mov edi, eax
jmp 0x14007a8ad
lea edi, [rbp*4]
jmp 0x14007a8ad
lea edi, [rbp*8]
jmp 0x14007a8ad
mov edi, ebp
jmp 0x14007a8ad
cmp dword [r14 + 0x30], 3
jne 0x14007a6cb
test ebp, ebp
jle 0x14007a8ad
nop dword [rax]
mov rax, qword [rsi]
mov r9d, ebx
mov r8, r14
mov rdx, r15
mov rcx, rsi
call qword [rax + 0x180]
mov rcx, rax
mov rdx, qword [rax]
call qword [rdx + 0x40]
add edi, eax
inc ebx
cmp ebx, ebp
jl 0x14007a6a0
jmp 0x14007a8ad
mov rax, qword [rsi]
xor r9d, r9d
mov r8, r14
mov rdx, r15
mov rcx, rsi
call qword [rax + 0xc8]
mov rcx, rax
mov rdx, qword [rax]
call qword [rdx + 0x40]
mov edi, eax
jmp 0x14007a8ad
cmp dword [r14 + 0x30], 3
jne 0x14007a745
test ebp, ebp
jle 0x14007a8ad
nop
mov rax, qword [rsi]
mov r9d, ebx
mov r8, r14
mov rdx, r15
mov rcx, rsi
call qword [rax + 0x180]
mov rcx, rax
mov rdx, qword [rax]
call qword [rdx + 0x40]
mov r12d, eax
cmp eax, 0x80
jae 0x14007a72d
mov eax, r13d
jmp 0x14007a735
mov ecx, r12d
call fcn.14006fb80
add eax, r12d
inc ebx
add edi, eax
cmp ebx, ebp
jl 0x14007a700
jmp 0x14007a8ad
mov rax, qword [rsi]
xor r9d, r9d
mov r8, r14
mov rdx, r15
mov rcx, rsi
call qword [rax + 0xc8]
mov rcx, rax
call fcn.14007a920
mov edi, eax
jmp 0x14007a8ad
cmp dword [r14 + 0x30], 3
jne 0x14007a7c2
test ebp, ebp
jle 0x14007a8ad
nop dword [rax + rax]
mov rax, qword [rsi]
mov r9d, ebx
mov r8, r14
mov rdx, r15
mov rcx, rsi
call qword [rax + 0x178]
mov ecx, dword [rax + 0x10]
test ecx, ecx
jns 0x14007a7a3
mov eax, 0xa
jmp 0x14007a7b5
cmp ecx, 0x80
jae 0x14007a7b0
mov eax, r13d
jmp 0x14007a7b5
call fcn.14006fb80
add edi, eax
inc ebx
cmp ebx, ebp
jl 0x14007a780
jmp 0x14007a8ad
mov rax, qword [rsi]
mov r8, r14
mov rdx, r15
mov rcx, rsi
call qword [rax + 0xc0]
mov ecx, dword [rax + 0x10]
test ecx, ecx
jns 0x14007a518
mov edi, 0xa
jmp 0x14007a8ad
mov r12d, ebx
test ebp, ebp
jle 0x14007a8ad
movabs rcx, 0x800000000000000f
nop
cmp dword [r14 + 0x30], 3
lea rax, [rsp + 0x48]
mov qword [rsp + 0x30], rax
mov r8, r14
mov rax, qword [rsi]
mov rdx, r15
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x40], rcx
mov byte [rsp + 0x48], bl
jne 0x14007a840
lea rcx, [rsp + 0x30]
mov r9d, r12d
mov qword [rsp + 0x20], rcx
mov rcx, rsi
call qword [rax + 0x188]
jmp 0x14007a84e
lea r9, [rsp + 0x30]
mov rcx, rsi
call qword [rax + 0xd0]
mov ecx, dword [rax + 8]
mov r13, rax
cmp ecx, 0x80
jae 0x14007a863
mov eax, 1
jmp 0x14007a868
call fcn.14006fb80
add eax, dword [r13 + 8]
add edi, eax
movabs rax, 0x8000000000000000
test qword [rsp + 0x40], rax
jne 0x14007a897
mov rcx, qword [rsp + 0x30]
lea rdx, [0x1401262a0]
xor r9d, r9d
lea r8d, [r9 - 6]
call fcn.140025f00
inc r12d
movabs rcx, 0x800000000000000f
cmp r12d, ebp
jl 0x14007a800
mov r12, qword [rsp + 0x90]
lea r11, [rsp + 0x60]
mov eax, edi
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop rdi
pop rsi
ret