Function at 0x140058210
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x78
movaps xmmword [rsp + 0x60], xmm7
movaps xmmword [rsp + 0x50], xmm6
mov r14, r8
mov r15, rdx
mov eax, dword [0x141f353d8]
xor eax, dword [0x141f353dc]
imul rdx, rax, 0x11b96241
shr rdx, 0x20
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1f
add eax, 0x6b92e987
cmp eax, 0x50ff9edc
jb 0x140058230
mov eax, dword [0x141f353e0]
xor edx, edx
div dword [0x141f353e4]
nop word [rax + rax]
mov eax, dword [0x141f353e8]
imul eax, dword [0x141f353ec]
or eax, 0xd52ae5ca
add eax, 0x46a791ff
or eax, 0x6c94014d
cmp eax, 0xd43a6d90
je 0x140058270
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x38], rax
mov eax, dword [0x141f353f0]
xor edx, edx
div dword [0x141f353f4]
nop word [rax + rax]
mov eax, dword [0x141f353f8]
or eax, dword [0x141f353fc]
or eax, 0xce5e22cd
xor eax, 0x418d242e
imul eax, eax, 0xc6456909
cmp eax, 0x9ac77752
ja 0x1400582b0
mov rbx, qword [rcx]
mov rax, qword [rcx + 8]
mov qword [rsp + 0x30], rax
xor r13d, r13d
lea r11, [0x141f22238]
movdqa xmm6, xmmword [0x140108750]
movdqa xmm7, xmmword [0x140108760]
movabs rsi, 0x8080808080808080
mov r12d, 0xa25be475
xor edi, edi
xor ebp, ebp
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x40], r15
jmp 0x140058357
xor ecx, ecx
mov rdi, rsi
mov rax, qword [rsp + 0x38]
mov byte [rax], cl
mov rcx, rbx
mov rdx, r9
mov rax, qword [rsp + 0x30]
call qword [rax + 0x18]
mov ecx, dword [rsp + 0x24]
or cl, al
lea r11, [0x141f22238]
movabs rsi, 0x8080808080808080
jne 0x1400588f9
mov qword [rsp + 0x28], rbp
nop dword [rax]
mov eax, dword [0x141f35400]
sub eax, dword [0x141f35404]
add eax, 0x9d76695d
xor eax, 0xf27048b8
imul eax, eax, 0x221aeaf8
cmp eax, 0xb5c55b5d
jb 0x140058360
cmp rdi, r14
jbe 0x140058390
mov rbp, rdi
jmp 0x140058723
mov eax, dword [0x141f35408]
or eax, dword [0x141f3540c]
cmp eax, 0x418dea73
je 0x140058390
mov rcx, r14
sub rcx, rdi
lea r8, [r15 + rdi]
cmp rcx, 0xf
ja 0x140058440
nop word [rax + rax]
test r13b, r13b
jne 0x1400583c0
cmp r14, rdi
je 0x140058720
xor r10d, r10d
nop word cs:[rax + rax]
cmp byte [r8 + r10], 0xa
je 0x1400586b1
nop dword [rax + rax]
mov eax, dword [0x141f35470]
or eax, dword [0x141f35474]
or eax, 0xfff9ffdf
cmp eax, 0x1160e22a
jb 0x1400583f0
inc r10
nop dword [rax + rax]
mov eax, dword [0x141f35478]
xor edx, edx
div dword [0x141f3547c]
add eax, 0xe5dc0771
or eax, 0xf6131f5a
and eax, 0xf6337f7f
cmp eax, 0xc4fc0f66
jb 0x140058410
cmp r10, rcx
jne 0x1400583e0
jmp 0x140058720
lea r9, [r8 + 7]
and r9, 0xfffffffffffffff8
sub r9, r8
je 0x140058510
je 0x140058510
xor r10d, r10d
nop word [rax + rax]
cmp byte [r8 + r10], 0xa
je 0x1400586b1
mov eax, dword [0x141f35458]
xor edx, edx
div dword [0x141f3545c]
nop dword [rax]
mov eax, dword [0x141f35460]
add eax, dword [0x141f35464]
imul eax, eax, 0x7086640c
and eax, 0x4280c7f4
xor eax, 0x75a81bde
cmp eax, 0x1fc922ee
jb 0x140058480
inc r10
nop word cs:[rax + rax]
mov eax, dword [0x141f35468]
imul eax, dword [0x141f3546c]
and eax, 0x4740e698
cmp eax, 0xc9e41616
je 0x1400584b0
cmp r10, r9
jne 0x140058460
lea r10, [rcx - 0x10]
mov eax, dword [0x141f35420]
sub eax, dword [0x141f35424]
imul rdx, rax, 0x263714d1
shr rdx, 0x20
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1c
add eax, 0x570463b2
or eax, 0x369038d9
cmp eax, 0x22f53ba8
jb 0x1400584d2
cmp r9, r10
jbe 0x140058570
jmp 0x140058630
mov eax, dword [0x141f35410]
sub eax, dword [0x141f35414]
imul eax, eax, 0x167ebdef
add eax, 0x450e86ea
xor eax, 0x3d299bcf
cmp eax, 0xaa721960
jb 0x140058510
lea r10, [rcx - 0x10]
nop word [rax + rax]
mov eax, dword [0x141f35418]
and eax, dword [0x141f3541c]
xor eax, 0x44004
or eax, 0x2ffb3f8a
and eax, 0xafff7f9e
cmp eax, 0x382a8e1b
ja 0x140058540
xor r9d, r9d
nop word cs:[rax + rax]
mov eax, dword [0x141f35428]
add eax, dword [0x141f3542c]
imul eax, eax, 0xec77fb6
cmp eax, 0xe94179dc
je 0x140058570
nop dword [rax]
movdqu xmm0, xmmword [r8 + r9]
movdqa xmm1, xmm0
pxor xmm1, xmm6
paddq xmm1, xmm7
pandn xmm0, xmm1
pshufd xmm1, xmm0, 0xee
por xmm1, xmm0
movq rax, xmm1
test rax, rsi
jne 0x140058630
add r9, 0x10
mov eax, dword [0x141f35438]
xor edx, edx
div dword [0x141f3543c]
nop dword [rax + rax]
mov eax, dword [0x141f35440]
xor eax, dword [0x141f35444]
and eax, 0x55bc5eb5
imul eax, eax, 0x574b8c3e
add eax, 0xdb5e366c
cmp eax, 0x35e0cb68
ja 0x1400585d0
nop word cs:[rax + rax]
mov eax, dword [0x141f35448]
imul eax, dword [0x141f3544c]
or eax, 0x2ffedfd9
imul rax, r12
shr rax, 0x3b
cmp eax, 0x8f62f326
je 0x140058600
cmp r9, r10
jbe 0x140058590
nop word [rax + rax]
mov eax, dword [0x141f35430]
imul eax, dword [0x141f35434]
imul eax, eax, 0x666c9b64
and eax, 0x3ae603e4
xor eax, 0x10415754
cmp eax, 0xf7c146e9
ja 0x140058630
cmp rcx, r9
je 0x140058720
mov rax, r14
sub rax, r9
sub rax, rdi
lea rcx, [r9 + rdi]
add rcx, r15
xor r10d, r10d
cmp byte [rcx + r10], 0xa
je 0x1400586ae
inc r10
nop word [rax + rax]
mov edx, dword [0x141f35450]
imul edx, dword [0x141f35454]
xor edx, 0xa2018000
or edx, 0x11046c89
and edx, 0xff9decdd
cmp edx, 0xda5b1114
je 0x140058680
cmp rax, r10
jne 0x140058670
jmp 0x140058720
add r10, r9
lea rbp, [rdi + r10]
inc rbp
add rdi, r10
cmp rdi, r14
jae 0x1400586cb
cmp byte [r15 + rdi], 0xa
je 0x1400588e0
mov eax, dword [0x141f35480]
xor eax, dword [0x141f35484]
mov ecx, 0xb6e45f61
imul rax, rcx
shr rax, 0x3f
imul eax, eax, 0x17e5eabd
add eax, 0x6660a296
cmp eax, 0x6c080063
jb 0x1400586cb
nop word cs:[rax + rax]
test r13b, r13b
jne 0x140058700
mov rdi, rbp
cmp rbp, r14
jbe 0x140058390
jmp 0x140058723
mov rbp, r14
mov al, 1
mov dword [rsp + 0x24], eax
mov rsi, rbp
mov rax, qword [rsp + 0x28]
mov rbp, rax
mov rdi, r14
cmp rax, r14
je 0x1400588f3
mov eax, dword [0x141f35488]
or eax, dword [0x141f3548c]
imul rax, rax, 0x7e9f779
shr rax, 0x3a
imul eax, eax, 0x9234fdbd
cmp eax, 0x95022e74
ja 0x140058740
mov rax, qword [rsp + 0x38]
cmp byte [rax], 0
je 0x14005883e
nop word cs:[rax + rax]
mov eax, dword [0x141f354a8]
sub eax, dword [0x141f354ac]
add eax, 0xac0885e3
imul rax, rax, 0x11696c07
shr rax, 0x3b
imul eax, eax, 0x287b49f9
cmp eax, 0x15eaa88
je 0x140058780
mov rax, qword [rsp + 0x30]
mov r14, qword [rax + 0x18]
mov eax, dword [0x141f354b0]
imul eax, dword [0x141f354b4]
imul eax, eax, 0x4b58e3e3
mov ecx, 0xb10dd7fd
imul rax, rcx
shr rax, 0x3f
cmp eax, 0xfa1a3d45
jne 0x1400587f0
mov r8d, 4
mov rcx, rbx
mov rdx, r11
call r14
lea r11, [0x141f22238]
nop
mov r15d, dword [0x141f354b8]
imul r15d, dword [0x141f354bc]
or r15d, 0xeeffedef
add r15d, 0xe80900ac
mov r8d, 4
mov rcx, rbx
mov rdx, r11
call r14
lea r11, [0x141f22238]
cmp r15d, 0x18c391b5
jb 0x1400587f0
test al, al
mov r14, qword [rsp + 0x48]
mov r15, qword [rsp + 0x40]
jne 0x1400588f7
mov r8, rdi
mov rax, qword [rsp + 0x28]
sub r8, rax
lea r9, [r15 + rax]
nop dword [rax]
test r13b, r13b
jne 0x140058850
cmp rdi, qword [rsp + 0x28]
je 0x140058320
mov eax, dword [0x141f35490]
xor edx, edx
div dword [0x141f35494]
mov rdi, rsi
nop word cs:[rax + rax]
mov eax, dword [0x141f35498]
sub eax, dword [0x141f3549c]
xor eax, 0x697efe2c
imul eax, eax, 0xab4d68af
add eax, 0xe9b1bd8
cmp eax, 0xf0d6b385
ja 0x140058880
movzx eax, byte [r9 + r8 - 1]
nop dword [rax]
mov edx, dword [0x141f354a0]
and edx, dword [0x141f354a4]
add edx, 0xd9f78cc
or edx, 0x1e2eaf03
and edx, 0x7ebfbfb7
cmp al, 0xa
sete cl
cmp edx, 0xe3f36ada
ja 0x1400588b0
jmp 0x140058325
mov dword [rsp + 0x24], 0
mov rsi, rbp
mov rdi, rbp
jmp 0x140058740
xor eax, eax
jmp 0x1400588f9
mov al, 1
movaps xmm6, xmmword [rsp + 0x50]
movaps xmm7, xmmword [rsp + 0x60]
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret