Function at 0x14002d19a
Capabilities:
Encode data using add xor sub operations
Encode data using xor

Disassembly:
sub rsp, 8
mov qword [rsp], rbx
sub rsp, 0x80
mov dword [rsp - 0x14], edx
lea rcx, [0x14049f890]
xchg rbx, rdx
mov rdx, rbx
xchg rbx, rdx
call fcn.140058050
test al, al
je 0x14002d38e
mov dword [rsp - 0xc], esp
xorps xmm0, xmm0
xchg rsi, rbp
mov qword [rsp + 0x90], rbp
xchg rbp, rsi
xchg r15, rsi
mov r15, qword [rbx + 0x38]
xchg rsi, r15
lea rax, [rsp + 0x48]
mov rbx, qword [rbx]
lea rcx, [rsp + 0x40]
xchg r9, r9
xchg rbx, rdi
mov qword [rsp + 0x98], rbx
xchg rdi, rbx
xchg r8, rax
mov qword [rsp + 0x40], r8
xchg r8, rax
lea rdx, [rsi + 1]
xchg rsp, rdi
movups xmmword [rdi + 0x48], xmm0
xchg rsp, rdi
xchg rsi, rsp
movups xmmword [rsi + 0x58], xmm0
xchg rsi, rsp
xchg rdx, rsp
movups xmmword [rdx + 0x68], xmm0
xchg rsp, rdx
call fcn.14000ed30
mov r8, rax
xchg rsi, rsi
mov ecx, 0x3cbbcd9e
sub ecx, 0x22538c12
xor ecx, 0x55ced7ea
sub ecx, 0x4ab32de5
test rsi, rsi
mov r11, r11
je 0x14002d112
mov rdx, rax
sub rbx, rax
mov dword [rsp - 0x14], esi
xchg rdi, rsi
mov rsi, rdi
xchg rsi, rdi
mov r9d, 0x7c7b143c
xor r9d, 0x66d7017a
add r9d, 0x4feaf71e
sub r9d, 0x70cc0d0
sub r9d, 0x638a4a95
nop dword [rax]
mov dword [rsp - 0x10], 0x31e7b120
movzx eax, cx
lea rdx, [rdx + 2]
and ax, r9w
ror ecx, 7
ror ecx, 1
xor ax, word [rbx + rdx - 2]
mov word [rdx - 2], ax
sub rdi, 1
mov dword [rsp - 0x40], 0x259a95ef
jne 0x14002d0e7
xor edi, edi
mov dword [rsp + 0xa8], 0x2c77440a
xor dword [rsp + 0xa8], 0x7cce92d
add dword [rsp + 0xa8], 0x97e80f5
sub dword [rsp + 0xa8], 0x35222d2e
mov word [r8 + rsi*2], di
mov dword [rsp - 0x1c], 0x545bf4b3
xchg rsi, r11
mov r11, qword [rsp + 0x90]
xchg r11, rsi
mov dword [rsp + 0xac], 0x517af51
add dword [rsp + 0xac], 0x25ca6c
add dword [rsp + 0xac], 0x39162407
xor dword [rsp + 0xac], 0x3e399d52
mov qword [rsp + 0xa0], rdi
xchg rcx, rcx
mov rax, qword [rsp + 0xa0]
nop dword [rax]
nop word [rax + rax]
mov dword [rsp - 0x2c], 0x63611881
xchg rcx, r10
mov r10, qword [rsp + 0xa0]
xchg rcx, r10
mov rax, qword [rsp + 0xa0]
mov dword [rsp - 0x44], 0x6c10edc9
and cl, 3
shl cl, 1
shl cl, 1
shl cl, 1
movzx edx, word [rsp + rax*2 + 0xa8]
mov eax, 0x1e29e14d
sub eax, 0x5a06c1f
add eax, 0x58a077cb
xor eax, 0x81b9362
xor eax, 0x7dc1171a
shr eax, cl
movzx ecx, al
mov rax, qword [rsp + 0xa0]
mov rsi, rsi
xor cx, dx
mov word [rsp + rax*2 + 0x30], cx
mov rax, qword [rsp + 0xa0]
mov r8, r8
inc rax
xchg r8, rax
mov qword [rsp + 0xa0], r8
xchg r8, rax
xchg r12, rax
mov r12, qword [rsp + 0xa0]
xchg r12, rax
cmp rax, 4
jb 0x14002d1b0
mov r12, r12
mov rax, qword [0x14049f3c8]
lea rdx, [rsp + 0x30]
mov r8, qword [rsp + 0x40]
movabs rcx, 0x56264efe3035eea0
sub rcx, 0x3ee52f2
sub rcx, 0x1b64134
add rcx, 0x1683f450
xor rcx, 0x1e08bd
add rax, rcx
mov dword [rsp + 0x28], 0x14e9cc1b
add dword [rsp + 0x28], 0x109ddb7e
sub dword [rsp + 0x28], 0x14b9d345
sub dword [rsp + 0x28], 0x10cdd453
not rax
mov rbp, rbp
mov word [rsp + 0x38], di
rol rax, 2
rol rax, 3
rol rax, 1
rol rax, 2
xor r9d, r9d
mov dword [rsp - 0x24], 0x7fbc5de7
not rax
mov qword [rsp + 0x20], rdi
rol rax, 0x18
rol rax, 0xf
rol rax, 7
rol rax, 5
rol rax, 3
rol rax, 1
xor ecx, ecx
call rax
xor eax, eax
mov dword [rsp - 0x24], edx
lea rdi, [rsp + 0x30]
mov ecx, 0x1fc67b21
add ecx, 0x1e7a98b0
add ecx, 0x2cca4279
xor ecx, 0x4d1be72d
xor ecx, 0x2610b163
rep stosb byte [rdi], al
xchg r14, r14
mov rcx, qword [rsp + 0x40]
lea rax, [rsp + 0x48]
cmp rcx, rax
mov r15, r15
jne 0x14002d37b
lea rdi, [rsp + 0x48]
xor eax, eax
mov r12, r12
mov ecx, 0x23cb8b77
sub ecx, 0x1ed57ecf
add ecx, 0xde56e6a
add ecx, 0x238da28f
xor ecx, 0x36691d91
rep stosb byte [rdi], al
xchg rsp, rsp
xchg rdx, rdi
mov rdx, qword [rsp + 0x98]
xchg rdi, rdx
sub rsp, 0x7b86bcb
add rsp, 0x7b86c4b
nop
add rsp, 8
mov rbx, qword [rsp - 8]
ret
call fcn.140096230
xchg rdi, rbx
mov rbx, qword [rsp + 0x98]
xchg rbx, rdi
sub rsp, 0xffffffffffffff80
mov dword [rsp - 0x2c], ebp
nop
mov rbx, qword [rsp]
add rsp, 8
ret