Function at 0x14008d370
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x108
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x38], r8
mov rbx, rdx
mov r15, rcx
mov r12, qword [rsp + 0x178]
mov rax, qword [0x1404a7eb8]
xor rax, rsp
mov qword [rsp + 0x100], rax
mov rcx, r12
call fcn.14003aa30
mov qword [rsp + 0x30], rax
lea r13, [rsp + 0x50]
mov rcx, r13
call fcn.1400497d0
mov qword [rsp + 0x20], 0
mov rcx, r13
mov rdx, r15
mov r8, rbx
mov r9, r12
call fcn.140049800
xor esi, esi
test eax, eax
je 0x14008d859
mov rbx, qword [rsp + 0x180]
test rbx, rbx
je 0x14008d790
mov r15, qword [rsp + 0x188]
mov eax, dword [rsp + 0x170]
cmp eax, 2
jb 0x14008d6bc
dec eax
mov dword [rsp + 0x4c], eax
mov eax, 1
lea rdi, [rsp + 0x50]
mov rcx, qword [rsp + 0x30]
cmp rcx, rbx
mov rsi, rbx
cmovb rsi, rcx
mov dword [rsp + 0x48], eax
bswap eax
mov dword [rsp + 0xbc], eax
mov qword [rsp + 0x20], 0
mov rcx, rdi
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call fcn.140049800
test eax, eax
je 0x14008d857
mov rcx, rdi
mov rdx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x40]
call fcn.140049b60
test eax, eax
je 0x14008d857
mov r8d, 4
mov rcx, rdi
lea rdx, [rsp + 0xbc]
call fcn.140049b60
test eax, eax
je 0x14008d857
mov rcx, rdi
lea rdx, [rsp + 0xc0]
xor r8d, r8d
call fcn.140049b80
test eax, eax
je 0x14008d857
mov edi, dword [rsp + 0x4c]
cmp qword [rsp + 0x30], 0
je 0x14008d640
mov rcx, r15
lea rdx, [rsp + 0xc0]
mov r8, rsi
call fcn.1402a44e0
cmp rsi, 1
mov r13, rsi
adc r13, 0
mov rdi, r13
and rdi, 0xffffffffffffffe0
mov rbp, r13
and rbp, 0xfffffffffffffff8
mov r12d, 1
jmp 0x14008d513
inc r12d
mov eax, dword [rsp + 0x170]
cmp r12d, eax
je 0x14008d6a0
mov qword [rsp + 0x20], 0
lea r14, [rsp + 0x50]
mov rcx, r14
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call fcn.140049800
test eax, eax
je 0x14008d857
mov rcx, r14
lea rdx, [rsp + 0xc0]
mov r8, qword [rsp + 0x30]
call fcn.140049b60
test eax, eax
je 0x14008d857
mov rcx, r14
lea rdx, [rsp + 0xc0]
xor r8d, r8d
call fcn.140049b80
test eax, eax
je 0x14008d857
cmp rsi, 8
jae 0x14008d580
xor eax, eax
jmp 0x14008d620
cmp rsi, 0x20
jae 0x14008d590
xor ecx, ecx
jmp 0x14008d5f0
xor eax, eax
nop word cs:[rax + rax]
movups xmm0, xmmword [r15 + rax]
movups xmm1, xmmword [r15 + rax + 0x10]
xorps xmm0, xmmword [rsp + rax + 0xc0]
xorps xmm1, xmmword [rsp + rax + 0xd0]
movups xmmword [r15 + rax], xmm0
movups xmmword [r15 + rax + 0x10], xmm1
add rax, 0x20
cmp rdi, rax
jne 0x14008d5a0
cmp rsi, rdi
je 0x14008d500
mov rcx, rdi
mov rax, rdi
test r13b, 0x18
je 0x14008d620
nop word cs:[rax + rax]
mov rax, qword [rsp + rcx + 0xc0]
xor qword [r15 + rcx], rax
add rcx, 8
cmp rbp, rcx
jne 0x14008d5f0
mov rax, rbp
cmp rsi, rbp
je 0x14008d500
nop word cs:[rax + rax]
movzx ecx, byte [rsp + rax + 0xc0]
xor byte [r15 + rax], cl
inc rax
cmp r13, rax
jne 0x14008d620
jmp 0x14008d500
mov qword [rsp + 0x20], 0
lea r12, [rsp + 0x50]
mov rcx, r12
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call fcn.140049800
test eax, eax
je 0x14008d857
mov rcx, r12
lea rdx, [rsp + 0xc0]
xor r8d, r8d
call fcn.140049b60
test eax, eax
je 0x14008d857
mov rcx, r12
lea rdx, [rsp + 0xc0]
xor r8d, r8d
call fcn.140049b80
test eax, eax
je 0x14008d857
dec edi
jne 0x14008d640
add r15, rsi
mov eax, dword [rsp + 0x48]
inc eax
sub rbx, rsi
lea rdi, [rsp + 0x50]
jne 0x14008d424
jmp 0x14008d790
cmp qword [rsp + 0x30], 0
je 0x14008d7a4
mov esi, 1
lea r12, [rsp + 0x50]
lea rdi, [rsp + 0xbc]
lea rbp, [rsp + 0xc0]
nop word cs:[rax + rax]
mov rax, qword [rsp + 0x30]
cmp rax, rbx
mov r13, rbx
cmovb r13, rax
mov eax, esi
bswap eax
mov dword [rsp + 0xbc], eax
mov qword [rsp + 0x20], 0
mov rcx, r12
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call fcn.140049800
test eax, eax
je 0x14008d857
mov rcx, r12
mov rdx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x40]
call fcn.140049b60
test eax, eax
je 0x14008d857
mov r8d, 4
mov rcx, r12
mov rdx, rdi
call fcn.140049b60
test eax, eax
je 0x14008d857
mov rcx, r12
mov rdx, rbp
xor r8d, r8d
call fcn.140049b80
test eax, eax
je 0x14008d857
mov rcx, r15
mov rdx, rbp
mov r8, r13
call fcn.1402a44e0
add r15, r13
inc esi
sub rbx, r13
jne 0x14008d6f0
xor esi, esi
mov eax, dword [rsp + 0x170]
test eax, eax
setne sil
jmp 0x14008d859
mov dword [rsp + 0xbc], 0x1000000
mov qword [rsp + 0x20], 0
lea rcx, [rsp + 0x50]
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call fcn.140049800
test eax, eax
je 0x14008d857
mov esi, 2
lea r14, [rsp + 0x50]
lea r15, [rsp + 0xbc]
lea r12, [rsp + 0xc0]
nop dword [rax]
mov rcx, r14
mov rdx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x40]
call fcn.140049b60
test eax, eax
je 0x14008d857
mov r8d, 4
mov rcx, r14
mov rdx, r15
call fcn.140049b60
test eax, eax
je 0x14008d857
mov rcx, r14
mov rdx, r12
xor r8d, r8d
call fcn.140049b80
test eax, eax
je 0x14008d857
mov eax, esi
bswap eax
mov dword [rsp + 0xbc], eax
mov qword [rsp + 0x20], 0
mov rcx, r14
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call fcn.140049800
inc esi
test eax, eax
jne 0x14008d7f0
xor esi, esi
lea rcx, [rsp + 0x50]
call fcn.140049c60
mov rcx, qword [rsp + 0x100]
xor rcx, rsp
cmp rcx, qword [0x1404a7eb8]
jne 0x14008d88d
mov eax, esi
add rsp, 0x108
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.14029fd30
int3