Function at 0x1401b3570
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
xchg rsi, rdx
mov qword [rsp + 0x18], rdx
xchg rsi, rdx
push rdi
nop
mov qword [rsp - 8], r12
sub rsp, 8
push r13
push r14
nop
push 0x2a8695fc
mov qword [rsp], r15
sub rsp, 0x40
xchg r14, r9
mov r9, r14
xchg r9, r14
mov rbx, r8
xchg r14, rdx
mov r12, r14
xchg r14, rdx
xchg r15, rsi
mov rsi, rcx
xchg rsi, r15
xchg r10, rbp
mov rbp, qword [r8 + 0x10]
xchg rbp, r10
cmp qword [r8 + 0x18], 0x10
jb 0x1401b35d8
mov r8, qword [r8]
movabs rdi, 0xcbf29ce42aa88780
xor rdi, 0x1f65f8e3
sub rdi, 0x220ed968
add rdi, 0x5253013d
sub rdi, 0x1706f4c9
add rdi, 0x351770b6
xor r13d, r13d
mov ecx, r13d
test r10, r10
je 0x1401b3699
movabs rdx, 0x100347e8a81
add rdx, 0x1bb37f64
xor rdx, 0x162de681
sub rdx, 0x11b6e0ff
add rdx, 0x2fe97644
sub rdx, 0x64aaea0
add rdx, 0x1281c931
add rdx, 0x6e13ed1
sub rdx, 0x776adc58
nop word [rax + rax]
movzx eax, byte [rcx + r8]
push rdi
xor edi, eax
push rdi
xor rdi, qword [rsp + 8]
shr rdi, 0x20
ror rax, 0x20
xor edi, eax
ror rax, 0x20
shl rdi, 0x20
xor rdi, qword [rsp]
add rsp, 0x10
imul rdi, rdx
inc rcx
cmp rcx, r10
jb 0x1401b3661
xchg r9, r10
mov r10, rdi
xchg r9, r10
xchg rbp, r8
mov rbp, rbx
xchg rbp, r8
lea rdx, [rsp + 0x20]
xchg r15, r9
mov rcx, r9
xchg r9, r15
call fcn.1401b2420
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x1401b36de
xchg r11, rax
mov qword [r12], r11
xchg r11, rax
mov byte [r12 + 8], r13b
jmp 0x1401b3bef
movabs rax, 0x33333335bfda583
sub rax, 0x4031a25
sub rax, 0x1d685de1
xor rax, 0x582b2cb4
xor rax, 0x35492bc4
xor rax, 0x4ab573bb
add rax, 0x15edd97d
cmp qword [r15 + 0x10], rax
je 0x1401b3c61
lea rbp, [r15 + 8]
xchg r14, rbp
mov qword [rsp + 0x30], r14
xchg r14, rbp
xchg r13, r10
mov qword [rsp + 0x38], r10
xchg r13, r10
mov ecx, 0x662c383b
sub ecx, 0xaa0987a
sub ecx, 0x570d5d91
xor ecx, 0x4bad7bac
xor ecx, 0x20e56ca4
sub ecx, 0x69bf9830
add ecx, 0x2176d915
sub ecx, 0x1b377703
sub ecx, 0xbb61eca
call fcn.1401fc5cc
xchg rsi, rcx
mov rcx, rax
xchg rcx, rsi
xchg r9, rax
mov qword [rsp + 0x38], r9
xchg r9, rax
xorps xmm0, xmm0
movups xmmword [rax + 0x10], xmm0
xchg r13, rbp
mov qword [rax + 0x20], rbp
xchg r13, rbp
xchg r13, rbp
mov qword [rax + 0x28], rbp
xchg r13, rbp
xchg rbx, rdi
movups xmm0, xmmword [rdi]
xchg rbx, rdi
xchg r8, rax
movups xmmword [r8 + 0x10], xmm0
xchg r8, rax
xchg r11, rbx
movups xmm1, xmmword [r11 + 0x10]
xchg r11, rbx
movups xmmword [rax + 0x20], xmm1
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], 0x1f805dca
sub qword [rbx + 0x18], 0x6c930f
xor qword [rbx + 0x18], 0x5ecba838
add qword [rbx + 0x18], 0x35bdfe17
add qword [rbx + 0x18], 0x73b00ea
sub qword [rbx + 0x18], 0x7ed16175
mov byte [rbx], 0x24
add byte [rbx], 0x27
sub byte [rbx], 0x22
xor byte [rbx], 0x50
xor byte [rbx], 0x5c
xor byte [rbx], 0x63
sub byte [rbx], 0x2a
xor byte [rbx], 0x1c
xorps xmm0, xmm0
xchg rbp, rax
movups xmmword [rbp + 0x30], xmm0
xchg rbp, rax
xchg r14, r13
mov qword [rax + 0x40], r14
xchg r13, r14
mov qword [rax + 0x48], r13
xchg rbp, r14
movups xmm0, xmmword [rbp]
xchg r14, rbp
xchg r14, rax
movups xmmword [r14 + 0x30], xmm0
xchg r14, rax
movups xmm1, xmmword [r14 + 0x10]
movups xmmword [rax + 0x40], xmm1
mov qword [r14 + 0x10], r13
mov qword [r14 + 0x18], 0x53de9828
xor qword [r14 + 0x18], 0x4c624e71
add qword [r14 + 0x18], 0x48649b4d
xor qword [r14 + 0x18], 0x29a8da9b
add qword [r14 + 0x18], 0x595ceb7
sub qword [r14 + 0x18], 0x14bc84f9
sub qword [r14 + 0x18], 0x3262f4ec
mov byte [r14], 0x4a
add byte [r14], 0x16
xor byte [r14], 0xe
xor byte [r14], 0x5a
add byte [r14], 0x36
sub byte [r14], 0x52
xor byte [r14], 0x18
xchg r8, rcx
mov r8, qword [r15 + 0x10]
xchg r8, rcx
xchg rdx, r15
movss xmm3, dword [rdx]
xchg r15, rdx
neg rcx
add rcx, 0xffffffffffffffff
neg rcx
xorps xmm0, xmm0
js 0x1401b38c2
cvtsi2ss xmm0, rcx
jmp 0x1401b38d7
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rbx, qword [r15 + 0x38]
xorps xmm2, xmm2
test rbx, rbx
js 0x1401b38f1
cvtsi2ss xmm2, rbx
jmp 0x1401b3913
xchg rcx, rbx
mov rbx, rcx
xchg rcx, rbx
shr rcx, 1
xchg r12, rax
mov r12, rbx
xchg r12, rax
and eax, 1
or rcx, rax
cvtsi2ss xmm2, rcx
addss xmm2, xmm2
movaps xmm1, xmm0
divss xmm1, xmm2
comiss xmm1, xmm3
seta al
test al, al
je 0x1401b3b35
divss xmm0, xmm3
call fcn.1401fd6dc
xor ecx, ecx
movss xmm1, dword [0x140001590]
comiss xmm0, xmm1
jb 0x1401b3988
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x1401b3988
movabs rax, 0x8000000014e9f208
xor rax, 0x47463715
sub rax, 0x3544102b
xor rax, 0x3a7a7130
add rax, 0x33026d85
xor rax, 0x599cf17f
sub rax, 0xe88c238
xchg r11, rcx
mov r11, rax
xchg rcx, r11
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 0x6be6cad1
sub ecx, 0x224a2e2c
xor ecx, 0x5f29e933
add ecx, 0x26d624ff
xor ecx, 0x27d53bd5
add ecx, 0x522efc58
xor ecx, 0xef4834e
sub ecx, 0x39900a89
sub ecx, 0x28e91445
cmp rax, rcx
cmova rcx, rax
cmp rbx, rcx
jae 0x1401b39fc
cmp rbx, 0x200
jae 0x1401b39f3
lea rbx, [rbx*8]
cmp rbx, rcx
jae 0x1401b39fc
xchg r14, rcx
mov rbx, r14
xchg rcx, r14
xchg rdx, rbx
mov rbx, rdx
xchg rbx, rdx
xchg r15, rcx
mov r15, rcx
xchg r15, rcx
call fcn.1401bc990
xchg rdi, rax
mov rdi, rax
xchg rdi, rax
and rax, qword [r15 + 0x30]
add rax, rax
xchg r12, r13
mov r12, qword [r15 + 0x18]
xchg r13, r12
xchg r12, rbx
mov r12, qword [r13 + rax*8 + 8]
xchg r12, rbx
xchg r15, rcx
mov r15, qword [rbp]
xchg r15, rcx
cmp rbx, rcx
jne 0x1401b3a59
xchg rcx, r11
mov qword [rsp + 0x20], r11
xchg r11, rcx
jmp 0x1401b3af4
mov r13, qword [r13 + rax*8]
xchg r14, rbp
mov r14, qword [rsi + 0x20]
xchg r14, rbp
nop word [rax + rax]
lea rdx, [rbx + 0x10]
xchg r10, rax
mov r10, qword [rdx + 0x10]
xchg r10, rax
cmp qword [rdx + 0x18], 0x10
jb 0x1401b3a8d
mov rdx, qword [rdx]
lea rcx, [rsi + 0x10]
cmp qword [rsi + 0x28], 0x10
jb 0x1401b3aa0
mov rcx, qword [rsi + 0x10]
cmp rbp, rax
jne 0x1401b3ab9
mov r8, rbp
call fcn.1401fd6b2
test eax, eax
je 0x1401b3acb
cmp rbx, r13
je 0x1401b3ae5
mov rbx, qword [rbx + 8]
jmp 0x1401b3a73
mov rax, qword [rbx]
xchg r13, rax
mov qword [rsp + 0x20], r13
xchg r13, rax
mov qword [rsp + 0x28], rbx
lea rbp, [r15 + 8]
jmp 0x1401b3b2a
xchg r11, rbx
mov qword [rsp + 0x20], r11
xchg r11, rbx
lea rbp, [r15 + 8]
mov qword [rsp + 0x28], 0x55fa914d
add qword [rsp + 0x28], 0x1db92406
add qword [rsp + 0x28], 0x7ea035e
sub qword [rsp + 0x28], 0x5c5c92ee
sub qword [rsp + 0x28], 0x17c44254
xor qword [rsp + 0x28], 0x77ce36f
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
mov rdx, qword [rsp + 0x20]
xchg r8, rsi
mov rsi, qword [rdx + 8]
xchg rsi, r8
inc qword [r15 + 0x10]
xchg r11, rdx
mov qword [rsi], r11
xchg r11, rdx
mov qword [rsi + 8], r8
xchg rsi, r11
mov qword [r8], r11
xchg r11, rsi
mov qword [rdx + 8], rsi
mov rcx, qword [r15 + 0x18]
mov rax, qword [r15 + 0x30]
and rax, rdi
add rax, rax
xchg r9, rbx
mov rbx, qword [rcx + rax*8]
xchg rbx, r9
cmp r9, qword [rbp]
jne 0x1401b3b8d
mov qword [rcx + rax*8], rsi
jmp 0x1401b3baa
cmp r9, rdx
jne 0x1401b3b9f
mov qword [rcx + rax*8], rsi
jmp 0x1401b3bb5
cmp qword [rcx + rax*8 + 8], r8
jne 0x1401b3bb5
xchg rbx, rsi
mov qword [rcx + rax*8 + 8], rbx
xchg rbx, rsi
xchg r13, rsi
mov qword [r12], r13
xchg rsi, r13
mov byte [r12 + 8], 0x7d
sub byte [r12 + 8], 0xa
sub byte [r12 + 8], 0x3c
add byte [r12 + 8], 0x11
xor byte [r12 + 8], 0x4b
xor byte [r12 + 8], 0x1a
xor byte [r12 + 8], 0x3d
xor byte [r12 + 8], 0x25
xchg r12, rax
mov r12, rax
xchg r12, rax
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
xchg r11, rsi
mov r11, qword [rsp + 0x80]
xchg r11, rsi
add rsp, 0x40
push rax
push rbx
push rax
push rbx
push rcx
push rdx
xchg qword [rsp + 0x30], r15
pop rdx
pop rcx
pop rbx
pop rax
pop rbx
pop rax
add rsp, 8
nop
mov r14, qword [rsp]
add rsp, 8
push rax
push rdx
push rax
xchg qword [rsp + 0x18], r13
pop rax
pop rdx
pop rax
add rsp, 8
push rbx
push rax
push rbx
xchg qword [rsp + 0x18], r12
pop rbx
pop rax
pop rbx
add rsp, 8
nop
add rsp, 8
xchg qword [rsp - 8], rdi
nop
add rsp, 8
jmp qword [rsp - 8]
lea rcx, [0x140001510]
call fcn.1401fd230
int3