Function at 0x1400ea380
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
mov rdi, rcx
mov rsi, qword [rdx]
mov rbx, qword [rdx + 8]
mov r12, qword [rdx + 0x10]
mov r13, qword [rdx + 0x18]
mov rax, qword [rdx + 0x20]
mov qword [rsp + 0x48], rax
nop dword [rax + rax]
mov eax, dword [0x141dda7d8]
xor eax, dword [0x141dda7dc]
imul rax, rax, 0x4a107451
shr rax, 0x3c
or eax, 0x70981c03
add eax, 0xa08f80d2
cmp eax, 0xc5a610b7
ja 0x1400ea3b0
cmp rbx, r13
je 0x1400ea548
nop word cs:[rax + rax]
mov eax, dword [str.UV_a]
and eax, dword [0x141dda7e4]
imul rax, rax, 0x4f294c03
shr rax, 0x3e
imul eax, eax, 0x1c180a25
cmp eax, 0xd55dce73
je 0x1400ea3f0
lea r15, [rsp + 0x58]
nop dword [rax]
mov eax, dword [0x141dda7e8]
xor eax, dword [0x141dda7ec]
imul eax, eax, 0xb35051d3
cmp eax, 0xa5abe606
je 0x1400ea420
mov r14d, 0xec9fe57f
mov rbp, rsi
nop word cs:[rax + rax]
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
movaps xmmword [rsp + 0x30], xmm1
movaps xmmword [rsp + 0x20], xmm0
add rbx, 0x20
mov rax, qword [rsp + 0x48]
mov r8d, dword [rax]
lea rcx, [rsp + 0x50]
lea rdx, [rsp + 0x20]
call fcn.1400e4930
cmp qword [rsp + 0x50], 0
jne 0x1400ea550
movups xmm0, xmmword [r15]
movups xmm1, xmmword [r15 + 0x10]
movups xmmword [rbp + 0x10], xmm1
movups xmmword [rbp], xmm0
add rbp, 0x20
mov eax, dword [0x141dda7f0]
xor edx, edx
div dword [0x141dda7f4]
mov eax, dword [0x141dda7f8]
and eax, dword [0x141dda7fc]
add eax, 0x9d6f1dd
cmp eax, 0x89d7ae46
jb 0x1400ea4ab
nop word cs:[rax + rax]
mov eax, dword [0x141dda800]
and eax, dword [0x141dda804]
imul eax, eax, 0xc42a283
add eax, 0x4de9c530
imul rax, r14
shr rax, 0x3b
cmp eax, 0x1f9ff392
ja 0x1400ea4d0
cmp rbx, r13
jne 0x1400ea450
mov eax, dword [0x141dda808]
xor edx, edx
div dword [0x141dda80c]
sub rbp, rsi
mov r14, rbp
shr r14, 5
nop word [rax + rax]
mov eax, dword [0x141dda810]
sub eax, dword [0x141dda814]
add eax, 0xe0fa3f16
and eax, 0x34655192
imul eax, eax, 0x2a2ab36a
cmp eax, 0x491fbde
jbe 0x1400ea520
jmp 0x1400ea60a
mov r15b, 0x12
mov rbp, rsi
jmp 0x1400ea5cb
mov eax, dword [0x141dda818]
imul eax, dword [0x141dda81c]
xor eax, 0x41a37ee2
imul eax, eax, 0x21255058
cmp eax, 0x55abef1f
je 0x1400ea5b5
mov eax, dword [str.R9y_]
xor eax, dword [0x141dda824]
xor eax, 0x3af1faec
mov ecx, 0xc370c911
imul rcx, rax
shr rcx, 0x3f
or ecx, 0x7fbfec5a
movzx r15d, byte [rsp + 0x58]
movups xmm0, xmmword [rsp + 0x59]
movaps xmmword [rsp + 0x20], xmm0
movups xmm0, xmmword [rsp + 0x68]
movups xmmword [rsp + 0x2f], xmm0
cmp ecx, 0x3fc3fed3
jae 0x1400ea5cb
movups xmm0, xmmword [rsp + 0x59]
movups xmm1, xmmword [rsp + 0x68]
movaps xmmword [rsp + 0x20], xmm0
movups xmmword [rsp + 0x2f], xmm1
jmp 0x1400ea56f
mov r14, rbp
sub r14, rsi
sub r13, rbx
je 0x1400ea5f1
shr r13, 5
nop word [rax + rax]
mov rcx, rbx
call fcn.1400e45c0
add rbx, 0x20
dec r13
jne 0x1400ea5e0
shr r14, 5
xor eax, eax
nop word [rax + rax]
test al, al
jne 0x1400ea600
cmp r15b, 0x12
jne 0x1400ea635
mov eax, dword [0x141dda828]
and eax, dword [0x141dda82c]
or eax, 0x69d1a91a
add eax, 0x1bc4b318
or eax, 0x82f97ff1
cmp eax, 0xa77aa168
jbe 0x1400ea707
jmp 0x1400ea738
mov eax, dword [0x141dda838]
sub eax, dword [0x141dda83c]
imul eax, eax, 0x1094c615
cmp eax, 0x911f9bbf
jne 0x1400ea651
mov byte [rdi], r15b
lea rax, [rdi + 1]
xor ecx, ecx
nop word [rax + rax]
mov byte [rdi], r15b
test cl, cl
jne 0x1400ea660
movups xmm0, xmmword [rsp + 0x2f]
movups xmmword [rax + 0xf], xmm0
movaps xmm0, xmmword [rsp + 0x20]
movups xmmword [rax], xmm0
cmp rbp, rsi
je 0x1400ea6a0
mov rdi, rsi
mov rcx, rdi
call fcn.1400e45c0
add rdi, 0x20
dec r14
jne 0x1400ea680
nop word cs:[rax + rax]
mov eax, dword [0x141dda840]
and eax, dword [0x141dda844]
and eax, 0xba927536
add eax, 0xc31c165a
xor eax, 0x77da9f88
cmp eax, 0xcb0cfeb
jb 0x1400ea6a0
test r12, r12
je 0x1400ea750
mov rcx, qword [0x141ddb260]
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax]
mov eax, dword [0x141dda848]
xor edx, edx
div dword [0x141dda84c]
imul eax, eax, 0x43e74322
and eax, 0xd0f1e856
add eax, 0xd910db37
cmp eax, 0x6689a54a
ja 0x1400ea6e0
jmp 0x1400ea750
mov eax, dword [0x141dda830]
or eax, dword [0x141dda834]
add eax, 0xbc538543
or eax, 0x4d1e78fe
and eax, 0xffbf7fff
mov qword [rdi + 8], r12
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], r14
mov byte [rdi], 0x12
cmp eax, 0x411e3d8c
jae 0x1400ea750
mov qword [rdi + 8], r12
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], r14
mov byte [rdi], 0x12
jmp 0x1400ea707
mov eax, dword [0x141dda850]
mov ecx, dword [0x141dda854]
add eax, ecx
add eax, 0xa9a7c812
imul rax, rax, 0x5360de4b
shr rax, 0x3e
xor eax, 0x9a3eabc7
cmp eax, 0x7ef0713d
jb 0x1400ea750
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret