Function at 0x140055910
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x68
movaps xmmword [rsp + 0x50], xmm7
movaps xmmword [rsp + 0x40], xmm6
mov qword [rsp + 0x20], rdx
mov eax, dword [0x141dc6ff8]
xor edx, edx
div dword [0x141dc6ffc]
mov r12, r8
mov eax, dword [0x141dc7000]
xor edx, edx
div dword [0x141dc7004]
xor eax, 0xa3cb47d6
add eax, 0xa7112ca3
imul rax, rax, 0x2a14a737
shr rax, 0x3d
cmp eax, 0xb3baa04d
ja 0x140055940
xor eax, eax
nop dword [rax]
test al, al
jne 0x140055970
mov rax, qword [rcx]
mov qword [rsp + 0x30], rax
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x38], rax
mov rax, qword [rcx + 8]
mov qword [rsp + 0x28], rax
xor r13d, r13d
mov ebp, 0xbbe4d5b7
mov r14d, 0x8e8eddf9
movdqa xmm6, xmmword [0x140101750]
movdqa xmm7, xmmword [0x140101760]
xor esi, esi
xor ebx, ebx
jmp 0x1400559e6
cmp byte [rdx + r8 - 1], 0xa
sete al
mov rcx, qword [rsp + 0x38]
mov byte [rcx], al
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x28]
call qword [rax + 0x18]
or dil, al
jne 0x140055ef5
mov r11, rbx
nop dword [rax]
mov eax, dword [0x141dc7008]
xor eax, dword [0x141dc700c]
imul eax, eax, 0x73a1b54a
add eax, 0x141a01e4
cmp eax, 0xff8d94ee
ja 0x1400559f0
cmp rsi, r12
ja 0x140055de3
mov rcx, rsi
mov eax, dword [0x141dc7010]
sub eax, dword [0x141dc7014]
or eax, 0x5df51f3c
imul rax, rax, 0x730769ab
shr rax, 0x3d
cmp eax, 0x95c79d83
ja 0x140055a1a
mov r8, r12
sub r8, rcx
mov rax, qword [rsp + 0x20]
lea r9, [rax + rcx]
cmp r8, 0xf
ja 0x140055ae0
nop word cs:[rax + rax]
mov eax, dword [0x141dc7018]
and eax, dword [0x141dc701c]
or eax, 0xdb088a0f
imul rax, r14
shr rax, 0x3d
imul eax, eax, 0x191912f9
cmp eax, 0x6e23fc57
je 0x140055a60
nop word cs:[rax + rax]
mov eax, dword [0x141dc7020]
mov edx, dword [0x141dc7024]
add eax, edx
add eax, 0x3efc282d
xor eax, 0x20c28212
and eax, 0xb0fa96bb
cmp eax, 0xd9ed5c26
ja 0x140055a90
cmp r12, rcx
je 0x140055de0
xor edx, edx
nop
cmp byte [r9 + rdx], 0xa
je 0x140055d84
inc rdx
cmp r8, rdx
jne 0x140055ac0
jmp 0x140055de0
lea rax, [r9 + 7]
and rax, 0xfffffffffffffff8
mov r10, rax
sub r10, r9
mov rdi, r11
nop word cs:[rax + rax]
test r10, r10
sete dl
cmp rax, r9
sete r11b
mov esi, dword [0x141dc7028]
sub esi, dword [0x141dc702c]
add esi, 0xb0dc659e
xor esi, 0xd8f3a6fa
add esi, 0xfc30dbff
cmp esi, 0xaacf5068
ja 0x140055b00
or r11b, dl
je 0x140055bb4
movabs rsi, 0x8080808080808080
nop word cs:[rax + rax]
mov eax, dword [0x141dc7030]
and eax, dword [0x141dc7034]
xor eax, 0x6541c1ef
imul rax, rax, 0x46d83c55
shr rax, 0x3e
add eax, 0x17c2fa13
cmp eax, 0x8a04b932
ja 0x140055b50
lea r11, [r8 - 0x10]
nop dword [rax]
mov eax, dword [0x141dc7038]
xor edx, edx
div dword [0x141dc703c]
imul eax, eax, 0x4cd2c3ac
imul rax, rax, 0x5484cf3f
shr rax, 0x38
imul eax, eax, 0x45b8c2d9
cmp eax, 0xbb0f8a91
ja 0x140055b80
xor r10d, r10d
jmp 0x140055c55
xor edx, edx
movabs rsi, 0x8080808080808080
mov r11, rdi
nop word cs:[rax + rax]
cmp byte [r9 + rdx], 0xa
je 0x140055d84
mov eax, dword [0x141dc7070]
or eax, dword [0x141dc7074]
add eax, 0xdd49b486
xor eax, 0x8a252236
cmp eax, 0xf1cc8da3
ja 0x140055bdb
inc rdx
cmp r10, rdx
jne 0x140055bd0
mov eax, dword [0x141dc7040]
and eax, dword [0x141dc7044]
imul eax, eax, 0x78a5180
add eax, 0x3589100
cmp eax, 0xa1a69f71
ja 0x140055c00
lea r11, [r8 - 0x10]
nop word cs:[rax + rax]
mov eax, dword [0x141dc7048]
xor eax, dword [0x141dc704c]
cmp eax, 0x181c3a2f
je 0x140055c30
nop word cs:[rax + rax]
cmp r10, r11
ja 0x140055cc0
movdqu xmm0, xmmword [r9 + r10]
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 0x140055cc0
add r10, 0x10
test r13b, r13b
jne 0x140055c82
nop word [rax + rax]
mov eax, dword [0x141dc7050]
xor edx, edx
div dword [0x141dc7054]
or eax, 0xeb34f49b
imul eax, eax, 0xe79410e6
add eax, 0xa579f226
cmp eax, 0xabaae107
ja 0x140055c90
jmp 0x140055c50
sub r8, r10
je 0x140055ee4
add r9, r10
xor eax, eax
mov r11, rdi
nop word cs:[rax + rax]
mov edx, dword [0x141dc7058]
sub edx, dword [0x141dc705c]
xor edx, 0xed3b9a2a
add edx, 0xbf5eac6f
or edx, 0x5d954e2c
cmp edx, 0xe88fa354
ja 0x140055ce0
cmp byte [r9 + rax], 0xa
je 0x140055d50
mov edx, dword [0x141dc7060]
or edx, dword [0x141dc7064]
add edx, 0x86ecd3a8
imul rdx, rdx, 0x70daecd7
shr rdx, 0x3b
cmp edx, 0xd0bebb2a
je 0x140055d0d
inc rax
test r13b, r13b
jne 0x140055d35
cmp rax, r8
jne 0x140055ce0
jmp 0x140055de0
mov edx, dword [0x141dc7068]
xor edx, dword [0x141dc706c]
imul r8d, edx, 0xc9f29b1c
add r8d, 0xdcd2cce0
mov edx, 0x9cb3fd7d
imul r8, rdx
shr r8, 0x3d
lea rdx, [rax + r10]
cmp r8d, 0x5b5379f
jae 0x140055d50
lea rsi, [rcx + rdx]
inc rsi
add rcx, rdx
cmp rcx, r12
jae 0x140055a0e
nop word [rax + rax]
mov eax, dword [0x141dc7078]
xor eax, dword [0x141dc707c]
add eax, 0xb6f076fe
xor eax, 0xb59cd2e3
cmp eax, 0x14091063
jb 0x140055da0
mov rax, qword [rsp + 0x20]
cmp byte [rax + rcx], 0xa
jne 0x140055a0e
xor edi, edi
mov rbx, rsi
mov r15, rsi
jmp 0x140055e1b
mov rsi, r12
mov eax, dword [0x141dc7080]
or eax, dword [0x141dc7084]
xor eax, 0xb2b40990
imul eax, eax, 0xa2adbaee
add eax, 0x59a2e612
cmp eax, 0x60c874a0
jb 0x140055de3
mov dil, 1
mov rbx, r11
mov rax, r12
mov r15, r12
cmp r11, r12
je 0x140055eef
mov eax, dword [0x141dc7088]
sub eax, dword [0x141dc708c]
or eax, 0x51001002
and eax, 0x51419cb6
add eax, 0xa86b1cdf
cmp eax, 0xe3e44192
jb 0x140055e1b
mov rax, qword [rsp + 0x38]
cmp byte [rax], 0
je 0x140055ec5
mov r14, r11
nop
mov eax, dword [str._Ey]
or eax, dword [0x141dc709c]
imul eax, eax, 0x1c77f5be
add eax, 0xc9676286
cmp eax, 0xfab339d
ja 0x140055e50
mov r8d, 4
mov rcx, qword [rsp + 0x30]
lea rdx, [0x141db4f50]
mov rax, qword [rsp + 0x28]
call qword [rax + 0x18]
nop dword [rax + rax]
mov ecx, dword [0x141dc70a0]
sub ecx, dword [0x141dc70a4]
add ecx, 0x358d0e3f
imul rcx, rbp
shr rcx, 0x3f
or ecx, 0x9f7572
cmp ecx, 0x5f6cf151
ja 0x140055e90
test al, al
mov r11, r14
mov r14d, 0x8e8eddf9
jne 0x140055ef3
mov r8, r15
sub r8, r11
mov rax, qword [rsp + 0x20]
lea rdx, [rax + r11]
cmp r15, r11
jne 0x1400559c0
xor eax, eax
jmp 0x1400559c9
mov rsi, r12
mov r11, rdi
jmp 0x140055de3
xor eax, eax
jmp 0x140055ef5
mov al, 1
mov ecx, 0xa7b0ddcb
nop word [rax + rax]
mov edx, dword [0x141dc7090]
and edx, dword [0x141dc7094]
add edx, 0xc50de72b
imul rdx, rcx
shr rdx, 0x3f
cmp edx, 0x82751810
ja 0x140055f00
movaps xmm6, xmmword [rsp + 0x40]
movaps xmm7, xmmword [rsp + 0x50]
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret