Function at 0x4ec48d
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rdi
mov qword [rsp + 0x10], rsi
mov rax, rsp
mov rdi, rcx
mov rsi, rdx
mov rdx, r8
mov rcx, r9
mov r8, qword [rsp + 0x28]
mov r9, qword [rsp + 0x30]
lea rax, [rsp]
push rbx
push rbp
push r12
push r13
push r14
lea rsp, [rsp - 0xa0]
movaps xmmword [rsp], xmm6
movaps xmmword [rsp + 0x10], xmm7
movaps xmmword [rsp + 0x20], xmm8
movaps xmmword [rsp + 0x30], xmm9
movaps xmmword [rsp + 0x40], xmm10
movaps xmmword [rsp + 0x50], xmm11
movaps xmmword [rsp + 0x60], xmm12
movaps xmmword [rsp + 0x70], xmm13
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x90], xmm15
mov rbx, qword [rax + 0x38]
mov rbp, qword [rax + 0x40]
mov r10d, dword [rcx + 0xf0]
mov r11, rcx
shl r10d, 4
movups xmm9, xmmword [rcx]
movups xmm1, xmmword [rcx + r10 + 0x10]
movdqu xmm15, xmmword [r9]
pxor xmm9, xmm1
pxor xmm15, xmm1
mov eax, 0x30
lea rcx, [r11 + r10 + 0x20]
movups xmm1, xmmword [r11 + 0x10]
sub rax, r10
mov r10, rax
movdqu xmm10, xmmword [rbx]
movdqu xmm8, xmmword [rbp]
test r8, 1
jne 0x4ec587
bsf r12, r8
add r8, 1
shl r12, 4
movdqu xmm7, xmmword [rbx + r12]
movdqu xmm2, xmmword [rdi]
lea rdi, [rdi + 0x10]
call sym.__ocb_decrypt1
movdqa xmm15, xmm7
movups xmmword [rsi], xmm2
xorps xmm8, xmm2
lea rsi, [rsi + 0x10]
sub rdx, 1
je 0x4ec75d
lea r12, [r8 + 1]
lea r13, [r8 + 3]
lea r14, [r8 + 5]
lea r8, [r8 + 6]
bsf r12, r12
bsf r13, r13
bsf r14, r14
shl r12, 4
shl r13, 4
shl r14, 4
sub rdx, 6
jb 0x4ec625
jmp 0x4ec5c0
movdqu xmm2, xmmword [rdi]
movdqu xmm3, xmmword [rdi + 0x10]
movdqu xmm4, xmmword [rdi + 0x20]
movdqu xmm5, xmmword [rdi + 0x30]
movdqu xmm6, xmmword [rdi + 0x40]
movdqu xmm7, xmmword [rdi + 0x50]
lea rdi, [rdi + 0x60]
call sym.__ocb_decrypt6
movups xmmword [rsi], xmm2
pxor xmm8, xmm2
movups xmmword [rsi + 0x10], xmm3
pxor xmm8, xmm3
movups xmmword [rsi + 0x20], xmm4
pxor xmm8, xmm4
movups xmmword [rsi + 0x30], xmm5
pxor xmm8, xmm5
movups xmmword [rsi + 0x40], xmm6
pxor xmm8, xmm6
movups xmmword [rsi + 0x50], xmm7
pxor xmm8, xmm7
lea rsi, [rsi + 0x60]
sub rdx, 6
jae 0x4ec5c0
add rdx, 6
je 0x4ec75d
movdqu xmm2, xmmword [rdi]
cmp rdx, 2
jb 0x4ec6b0
movdqu xmm3, xmmword [rdi + 0x10]
je 0x4ec6d0
movdqu xmm4, xmmword [rdi + 0x20]
cmp rdx, 4
jb 0x4ec700
movdqu xmm5, xmmword [rdi + 0x30]
je 0x4ec730
movdqu xmm6, xmmword [rdi + 0x40]
pxor xmm7, xmm7
call sym.__ocb_decrypt6
movdqa xmm15, xmm14
movups xmmword [rsi], xmm2
pxor xmm8, xmm2
movups xmmword [rsi + 0x10], xmm3
pxor xmm8, xmm3
movups xmmword [rsi + 0x20], xmm4
pxor xmm8, xmm4
movups xmmword [rsi + 0x30], xmm5
pxor xmm8, xmm5
movups xmmword [rsi + 0x40], xmm6
pxor xmm8, xmm6
jmp 0x4ec75d
movdqa xmm7, xmm10
call sym.__ocb_decrypt1
movdqa xmm15, xmm7
movups xmmword [rsi], xmm2
xorps xmm8, xmm2
jmp 0x4ec75d
pxor xmm4, xmm4
pxor xmm5, xmm5
call sym.__ocb_decrypt4
movdqa xmm15, xmm11
movups xmmword [rsi], xmm2
xorps xmm8, xmm2
movups xmmword [rsi + 0x10], xmm3
xorps xmm8, xmm3
jmp 0x4ec75d
pxor xmm5, xmm5
call sym.__ocb_decrypt4
movdqa xmm15, xmm12
movups xmmword [rsi], xmm2
xorps xmm8, xmm2
movups xmmword [rsi + 0x10], xmm3
xorps xmm8, xmm3
movups xmmword [rsi + 0x20], xmm4
xorps xmm8, xmm4
jmp 0x4ec75d
call sym.__ocb_decrypt4
movdqa xmm15, xmm13
movups xmmword [rsi], xmm2
pxor xmm8, xmm2
movups xmmword [rsi + 0x10], xmm3
pxor xmm8, xmm3
movups xmmword [rsi + 0x20], xmm4
pxor xmm8, xmm4
movups xmmword [rsi + 0x30], xmm5
pxor xmm8, xmm5
pxor xmm15, xmm0
movdqu xmmword [rbp], xmm8
movdqu xmmword [r9], xmm15
xorps xmm0, xmm0
pxor xmm1, xmm1
pxor xmm2, xmm2
pxor xmm3, xmm3
pxor xmm4, xmm4
pxor xmm5, xmm5
movaps xmm6, xmmword [rsp]
movaps xmmword [rsp], xmm0
movaps xmm7, xmmword [rsp + 0x10]
movaps xmmword [rsp + 0x10], xmm0
movaps xmm8, xmmword [rsp + 0x20]
movaps xmmword [rsp + 0x20], xmm0
movaps xmm9, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0x30], xmm0
movaps xmm10, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0x40], xmm0
movaps xmm11, xmmword [rsp + 0x50]
movaps xmmword [rsp + 0x50], xmm0
movaps xmm12, xmmword [rsp + 0x60]
movaps xmmword [rsp + 0x60], xmm0
movaps xmm13, xmmword [rsp + 0x70]
movaps xmmword [rsp + 0x70], xmm0
movaps xmm14, xmmword [rsp + 0x80]
movaps xmmword [rsp + 0x80], xmm0
movaps xmm15, xmmword [rsp + 0x90]
movaps xmmword [rsp + 0x90], xmm0
lea rax, [rsp + 0xc8]
mov r14, qword [rax - 0x28]
mov r13, qword [rax - 0x20]
mov r12, qword [rax - 0x18]
mov rbp, qword [rax - 0x10]
mov rbx, qword [rax - 8]
lea rsp, [rax]
mov rdi, qword [rsp + 8]
mov rsi, qword [rsp + 0x10]
repz ret