Function at 0x1400a3b10
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r12
push rsi
push rdi
push rbx
mov rbp, rsp
mov r14, r8
mov r15, rdx
mov eax, dword [0x141f3ec20]
imul eax, dword [0x141f3ec24]
mov rsi, rcx
add eax, 0x2bf5b849
xor eax, 0x7c51e997
cmp eax, 0x829f21d6
jb 0x1400a3b7c
mov eax, dword [0x141f3ec28]
add eax, dword [0x141f3ec2c]
imul rax, rax, 0x7137b43f
xor ecx, ecx
bt rax, 0x3d
adc ecx, 0x9c6967e7
mov eax, 0x60
call fcn.1400f4d10
sub rsp, rax
mov rbx, rsp
cmp ecx, 0xe93aa82c
jbe 0x1400a3b8b
mov eax, 0x60
call fcn.1400f4d10
sub rsp, rax
jmp 0x1400a3b44
mov eax, 0x60
call fcn.1400f4d10
sub rsp, rax
mov r12, rsp
sub rsp, 0x20
mov rcx, r12
mov rdx, r15
mov r8, r14
xor r9d, r9d
call fcn.1400a4130
add rsp, 0x20
cmp dword [r12], 2
jne 0x1400a3ce9
mov eax, 0x8813929f
nop word cs:[rax + rax]
mov ecx, dword [0x141f3ec30]
xor ecx, dword [0x141f3ec34]
imul rcx, rax
shr rcx, 0x3f
imul ecx, ecx, 0x5e41d1c7
or ecx, 0x68c67a51
cmp ecx, 0x48403a82
jb 0x1400a3bd0
mov rdi, qword [r12 + 8]
nop dword [rax]
mov eax, dword [0x141f3ec38]
sub eax, dword [0x141f3ec3c]
add eax, 0xd71e7534
or eax, 0xf07b57ff
cmp eax, 0xf2e6fe32
ja 0x1400a3c00
mov eax, edi
and eax, 3
cmp eax, 2
jb 0x1400a3ce9
cmp eax, 2
jne 0x1400a3cab
movabs rax, 0xffffffff00000000
and rax, rdi
movabs rcx, 0x78000000000
nop word [rax + rax]
mov edx, dword [0x141f3ec50]
sub edx, dword [0x141f3ec54]
imul edx, edx, 0xaa7f5f6b
add edx, 0x1a25d140
shr edx, 1
imul rdx, rdx, 0x2142ece7
shr rdx, 0x3c
cmp edx, 0x3a592dc0
je 0x1400a3c50
cmp rax, rcx
jne 0x1400a3ce9
mov eax, dword [0x141f3ec58]
xor edx, edx
div dword [0x141f3ec5c]
imul eax, eax, 0xb3ed6a33
add eax, 0x4fdf5931
cmp eax, 0x9c450281
jbe 0x1400a3d30
jmp 0x1400a3d74
mov eax, dword [0x141f3ec40]
xor edx, edx
div dword [0x141f3ec44]
nop dword [rax]
mov eax, dword [0x141f3ec48]
and eax, dword [0x141f3ec4c]
imul rax, rax, 0x558f52d
shr rax, 0x3a
imul eax, eax, 0xefa51a31
or eax, 0xf56ed9b1
cmp eax, 0x3a7cb253
jb 0x1400a3cc0
mov rax, qword [r12 + 0x50]
mov qword [rsi + 0x50], rax
movups xmm0, xmmword [r12 + 0x40]
movups xmmword [rsi + 0x40], xmm0
movups xmm0, xmmword [r12]
movups xmm1, xmmword [r12 + 0x10]
movups xmm2, xmmword [r12 + 0x20]
movups xmm3, xmmword [r12 + 0x30]
movups xmmword [rsi + 0x30], xmm3
movups xmmword [rsi + 0x20], xmm2
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
mov rsp, rbp
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
pop rbp
ret
mov eax, dword [0x141f3ec60]
xor edx, edx
div dword [0x141f3ec64]
mov r12d, eax
xor r12d, 0x2a00e800
or r12d, 0xd42d01ff
sub rsp, 0x20
mov rcx, rbx
mov rdx, r15
mov r8, r14
mov r9d, 0x200000
call fcn.1400a4130
add rsp, 0x20
cmp r12d, 0x111013e9
jne 0x1400a3d92
sub rsp, 0x20
mov rcx, rbx
mov rdx, r15
mov r8, r14
mov r9d, 0x200000
call fcn.1400a4130
add rsp, 0x20
jmp 0x1400a3d30
mov rax, qword [rbx]
cmp eax, 2
jne 0x1400a3fa0
mov rax, qword [rbx + 8]
mov ecx, eax
and ecx, 3
xor edx, edx
nop dword [rax]
test dl, dl
jne 0x1400a3db0
lea rdx, [rcx - 2]
cmp rdx, 2
jb 0x1400a4000
test rcx, rcx
je 0x1400a4000
cmp ecx, 1
jne 0x1400a4078
lea rbx, [rax - 1]
mov r14, qword [rax - 1]
nop dword [rax]
mov ecx, dword [0x141f3ec80]
or ecx, dword [0x141f3ec84]
or ecx, 0x26b081dc
xor ecx, 0xb67764dc
add ecx, 0x5062bcc1
cmp ecx, 0x4fe97df5
ja 0x1400a3de0
mov r15, qword [rax + 7]
mov rax, qword [r15]
test rax, rax
je 0x1400a3e3c
sub rsp, 0x20
mov rcx, r14
call rax
add rsp, 0x20
mov eax, dword [0x141f3ec88]
xor eax, dword [0x141f3ec8c]
add eax, 0x7a5eb9ea
or eax, 0x6431bf0
cmp eax, 0x9591b6f5
je 0x1400a3e1f
mov rax, qword [r15 + 8]
mov rcx, qword [r15 + 0x10]
nop word cs:[rax + rax]
mov edx, dword [0x141f3ec90]
add edx, dword [0x141f3ec94]
and edx, 0x41905ead
imul edx, edx, 0x7585aa86
add edx, 0x9a93515
cmp edx, 0xf8a611da
ja 0x1400a3e50
test rax, rax
je 0x1400a3f3f
mov r8d, 0xc0aec79f
mov eax, dword [0x141f3ec98]
xor edx, edx
div dword [0x141f3ec9c]
or eax, 0xebfe779e
imul rax, r8
shr rax, 0x3e
cmp eax, 0x6be3dc24
je 0x1400a3e85
cmp rcx, 0x11
jb 0x1400a3f25
mov eax, dword [0x141f3eca0]
xor edx, edx
div dword [0x141f3eca4]
mov eax, dword [0x141f3eca8]
add eax, dword [0x141f3ecac]
xor eax, 0x4002221d
or eax, 0x2f94dca2
cmp eax, 0x5bb620c2
ja 0x1400a3ebb
mov eax, dword [0x141f3ecb0]
and eax, dword [0x141f3ecb4]
xor eax, 0xe9fcb8dc
imul eax, eax, 0x4acd397c
cmp eax, 0xd311c492
je 0x1400a3ed8
mov r14, qword [r14 - 8]
mov eax, dword [0x141f3ecb8]
xor edx, edx
div dword [0x141f3ecbc]
or eax, 0x1b9d15fe
imul rax, rax, 0x135841dd
shr rax, 0x3a
imul eax, eax, 0x491b2371
cmp eax, 0x6aace5bc
ja 0x1400a3efa
mov rcx, qword [0x141f49060]
sub rsp, 0x20
xor edx, edx
mov r8, r14
call qword [0x1401082d0]
add rsp, 0x20
mov eax, dword [0x141f3ecc0]
sub eax, dword [0x141f3ecc4]
imul eax, eax, 0xcddf3ba2
cmp eax, 0xf936cfe4
jbe 0x1400a3f60
mov rax, qword [0x141f49060]
nop
mov eax, dword [0x141f3ecc8]
and eax, dword [0x141f3eccc]
imul rax, rax, 0x5d38bc65
shr rax, 0x3e
mov rcx, qword [0x141f49060]
cmp eax, 0xdd525145
je 0x1400a3f60
sub rsp, 0x20
xor edx, edx
mov r8, rbx
call qword [0x1401082d0]
add rsp, 0x20
jmp 0x1400a4000
mov eax, dword [0x141f3ec68]
xor eax, dword [0x141f3ec6c]
or eax, 0x4000698
and eax, 0x44249ed8
cmp eax, 0x1395c47c
je 0x1400a3fa0
mov eax, dword [rbx + 0x4c]
mov ecx, dword [rbx + 0x50]
nop word cs:[rax + rax]
mov edx, dword [0x141f3ec70]
sub edx, dword [0x141f3ec74]
cmp edx, 0x46d6d9ad
je 0x1400a3fd0
test eax, 0x400
je 0x1400a4030
mov edx, ecx
and edx, 0x20000000
je 0x1400a4030
nop word cs:[rax + rax]
mov eax, dword [0x141f3ecd0]
xor edx, edx
div dword [0x141f3ecd4]
xor eax, 0x963ef612
cmp eax, 0x3bfe6aa7
jb 0x1400a4000
mov qword [rsi + 8], rdi
mov qword [rsi], 2
jmp 0x1400a3d22
mov edx, dword [0x141f3ecd8]
xor edx, dword [0x141f3ecdc]
add edx, 0xf4bd7ffd
and edx, 0x28021099
cmp edx, 0xe7e02be2
je 0x1400a4030
mov edx, dword [0x141f3ece0]
sub edx, dword [0x141f3ece4]
or edx, 0x406e5cfb
add edx, 0x32acd258
or edx, 0xaf35c7b9
cmp edx, 0x30821735
jae 0x1400a4098
jmp 0x1400a40e3
mov eax, dword [0x141f3ec78]
imul eax, dword [0x141f3ec7c]
and eax, 0xa901b95
xor eax, 0xa8184991
cmp eax, 0xac8923dc
ja 0x1400a4078
ud2
mov edx, dword [0x141f3ece8]
and edx, dword [0x141f3ecec]
or edx, 0x2908a4fa
imul r8d, edx, 0xafd8cf8b
mov edx, dword [rbx + 0x54]
movups xmm0, xmmword [rbx + 0x3c]
movups xmmword [rsi + 0x3c], xmm0
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
movups xmm2, xmmword [rbx + 0x20]
movups xmm3, xmmword [rbx + 0x30]
movups xmmword [rsi + 0x30], xmm3
movups xmmword [rsi + 0x20], xmm2
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
cmp r8d, 0x7a555296
jne 0x1400a410b
movups xmm0, xmmword [rbx + 0x3c]
movups xmmword [rsi + 0x3c], xmm0
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
movups xmm2, xmmword [rbx + 0x20]
movups xmm3, xmmword [rbx + 0x30]
movups xmmword [rsi + 0x30], xmm3
movups xmmword [rsi + 0x20], xmm2
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
jmp 0x1400a4098
mov dword [rsi + 0x4c], eax
mov dword [rsi + 0x50], ecx
mov dword [rsi + 0x54], edx
mov rcx, rdi
mov rsp, rbp
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
pop rbp
jmp fcn.1400a3800