Function at 0x1400b2190
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov edi, edx
mov rsi, rcx
movzx edx, word [0x14055ed38]
test dx, dx
je 0x1400b21f5
mov rcx, qword [rsi + 0x190]
mov dword [rsp + 0x20], 0x22bf1372
mov r8d, 0xa1d32870
mov r9d, 0xd2237188
call fcn.1400afc90
mov ecx, 0x408
add rcx, qword [rsi + 0x108]
mov dword [rsp + 0x20], 0x7f4bbc6e
mov rdx, rax
mov r8d, 0x1bad43d1
mov r9d, 0x32933dcd
call fcn.1400ff4d0
movzx edx, word [0x14055ed5a]
test dx, dx
je 0x1400b2249
mov rcx, qword [rsi + 0x190]
mov dword [rsp + 0x20], 0x22bf1372
mov r8d, 0xa1d32870
mov r9d, 0xd2237188
call fcn.1400afc90
mov ecx, 0x480
add rcx, qword [rsi + 0x108]
mov dword [rsp + 0x20], 0x7f4bbc6e
mov rdx, rax
mov r8d, 0x1bad43d1
mov r9d, 0x32933dcd
call fcn.1400ff4d0
lea rbx, [rsi + 8]
mov rcx, rbx
mov edx, 0x24e7b795
mov r8d, 0xea33827f
mov r9d, 0x75d9b5ae
call fcn.1400ff490
call fcn.1400b26e0
mov qword [rax + 8], rbx
mov eax, edi
not eax
xor edi, 0x200000
and eax, 0xffdfffff
or eax, edi
mov dil, 1
cmp eax, 0xffffffff
jne 0x1400b26c8
mov eax, dword [0x14055f0e4]
cmp eax, 0x1a
nop word cs:[rax + rax]
mov ecx, dword [0x14055274f]
mov eax, dword [0x1404f3710]
mov edx, dword [0x14055f0e4]
lea r8d, [rax + 0x2ea8526]
cmp edx, r8d
jge 0x1400b22a0
lea edx, [rax + 0x32a84cd]
xor edx, ecx
not edx
and edx, ecx
add eax, 0x2ea84cd
cmp edx, eax
jne 0x1400b22dc
mov byte [rsi + 0x124], 0
jmp 0x1400b230d
mov rcx, rsi
call fcn.1400b1160
test eax, eax
sete dl
setne cl
sete byte [rsi + 0x124]
cmp eax, 2
setne r8b
sete al
test dl, r8b
jne 0x1400b230d
and al, cl
jne 0x1400b230d
xor edi, edi
jmp 0x1400b26c8
mov rcx, rsi
call fcn.1400b1ca0
mov byte [rsi + 0x126], al
movzx ebx, word [0x14055ed5c]
test bx, bx
je 0x1400b242d
mov r14d, 0x430
lea rax, [fcn.1400b2190]
lea ebp, [rax + rax]
add ebp, 0x3d60
mov r15d, ebp
not r15d
nop word [rax + rax]
mov eax, dword [0x14055f0e4]
cmp eax, 0x12
jg 0x1400b23b4
mov rcx, qword [rsi + 0x190]
mov dword [rsp + 0x20], 0x22bf1372
mov edx, ebx
mov r8d, 0xa1d32870
mov r9d, 0xd2237188
call fcn.1400afc90
mov rcx, qword [rsi + 0x108]
add rcx, r14
mov dword [rsp + 0x20], 0x7f4bbc6e
mov rdx, rax
mov r8d, 0x1bad43d1
mov r9d, 0x32933dcd
call fcn.1400ff4d0
mov eax, dword [0x14055f0e0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
je 0x1400b242d
mov rcx, qword [rsi + 0x190]
mov dword [rsp + 0x20], 0x22bf1372
mov edx, ebx
mov r8d, 0xa1d32870
mov r9d, 0xd2237188
call fcn.1400afc90
mov rcx, qword [rsi + 0x108]
add rcx, r14
mov dword [rsp + 0x20], 0x7f4bbc6e
mov rdx, rax
mov r8d, 0x1bad43d1
mov r9d, 0x32933dcd
call fcn.1400ff4d0
mov eax, dword [0x1404f3710]
mov ecx, eax
xor ecx, 0x7d157b31
and ecx, eax
xor eax, 0x2ea84ce
lea eax, [rax + rcx*2]
mov ecx, ebp
xor ecx, eax
not eax
and eax, r15d
or eax, ecx
cmp eax, 0xffffffff
jne 0x1400b2350
jmp 0x1400b235b
movzx edx, word [0x14055ed5e]
test dx, dx
je 0x1400b2481
mov rcx, qword [rsi + 0x190]
mov dword [rsp + 0x20], 0x22bf1372
mov r8d, 0xa1d32870
mov r9d, 0xd2237188
call fcn.1400afc90
mov ecx, 0x458
add rcx, qword [rsi + 0x108]
mov dword [rsp + 0x20], 0x7f4bbc6e
mov rdx, rax
mov r8d, 0x1bad43d1
mov r9d, 0x32933dcd
call fcn.1400ff4d0
movzx ebx, word [0x14055ed36]
test bx, bx
je 0x1400b2579
mov eax, dword [0x14055f0e4]
cmp eax, 0x2c
jg 0x1400b24f5
mov rcx, qword [rsi + 0x190]
mov dword [rsp + 0x20], 0x22bf1372
mov edx, ebx
mov r8d, 0xa1d32870
mov r9d, 0xd2237188
call fcn.1400afc90
mov ecx, 0x4a8
add rcx, qword [rsi + 0x108]
mov dword [rsp + 0x20], 0x7f4bbc6e
mov rdx, rax
mov r8d, 0x1bad43d1
mov r9d, 0x32933dcd
call fcn.1400ff4d0
mov eax, dword [0x14055f0e4]
cmp eax, 0x26
jl 0x1400b2579
mov r14d, 0x4a8
nop dword [rax + rax]
mov rcx, qword [rsi + 0x190]
mov eax, dword [0x1404f3710]
mov edx, eax
neg edx
mov r8d, edx
xor r8d, 0x5b4252c3
and edx, 0x5b4252c3
lea r8d, [r8 + rdx*2]
neg r8d
lea r9d, [rax - 0x2af209ab]
add eax, 0x25a9983f
mov dword [rsp + 0x20], eax
mov edx, ebx
call fcn.1400afc90
mov rcx, qword [rsi + 0x108]
add rcx, r14
mov edx, dword [0x1404f3710]
lea r8d, [rdx + 0x1e97c89e]
lea r9d, [rdx + 0x357dc29a]
add edx, 0x8236413b
mov dword [rsp + 0x20], edx
mov rdx, rax
call fcn.1400ff4d0
test rsi, rsi
je 0x1400b2500
jmp 0x1400b249c
movzx edx, word [0x14055ed26]
test dx, dx
je 0x1400b25cd
mov rcx, qword [rsi + 0x190]
mov dword [rsp + 0x20], 0x22bf1372
mov r8d, 0xa1d32870
mov r9d, 0xd2237188
call fcn.1400afc90
mov ecx, 0x4d0
add rcx, qword [rsi + 0x108]
mov dword [rsp + 0x20], 0x7f4bbc6e
mov rdx, rax
mov r8d, 0x1bad43d1
mov r9d, 0x32933dcd
call fcn.1400ff4d0
movzx ebx, word [0x14055ed52]
test bx, bx
je 0x1400b26c8
mov eax, dword [0x14055f0e0]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
jne 0x1400b2661
mov rcx, qword [rsi + 0x190]
mov dword [rsp + 0x20], 0x22bf1372
mov edx, ebx
mov r8d, 0xa1d32870
mov r9d, 0xd2237188
call fcn.1400afc90
mov ecx, 0x4f8
add rcx, qword [rsi + 0x108]
mov edx, dword [0x1404f3710]
lea r8d, [rdx + 0x1e97c89e]
lea r9d, [rdx + 0x357dc29a]
add edx, 0x8236413b
mov dword [rsp + 0x20], edx
mov rdx, rax
call fcn.1400ff4d0
mov ecx, dword [0x14055f0e0]
lea eax, [rcx - 1]
imul eax, ecx
mov ecx, 0x2ea84cf
add ecx, dword [0x1404f3710]
xor edx, edx
div ecx
test edx, edx
je 0x1400b26c8
mov rcx, qword [rsi + 0x190]
mov dword [rsp + 0x20], 0x22bf1372
mov edx, ebx
mov r8d, 0xa1d32870
mov r9d, 0xd2237188
call fcn.1400afc90
mov ecx, 0x4f8
add rcx, qword [rsi + 0x108]
mov edx, dword [0x1404f3710]
lea r8d, [rdx + 0x1e97c89e]
lea r9d, [rdx + 0x357dc29a]
mov r10d, edx
xor r10d, 0x8236413b
and edx, 0x236413b
lea edx, [r10 + rdx*2]
mov dword [rsp + 0x20], edx
mov rdx, rax
call fcn.1400ff4d0
jmp 0x1400b25ee
mov eax, edi
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret