Function at 0x14002f200
Capabilities:
Encode data using xor

Disassembly:
mov r11, rsp
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [r11 - 0x1b8]
sub rsp, 0x290
mov rax, qword [0x1400df040]
xor rax, rsp
mov qword [rbp + 0x180], rax
mov rsi, qword [r9]
mov r15, r9
mov qword [rsp + 0x68], rdx
mov r14, r8
mov rdx, qword [r9 + 8]
mov rdi, rcx
sub rdx, rsi
mov qword [rsp + 0x58], r9
sar rdx, 2
mov qword [rsp + 0x70], r8
mov qword [rsp + 0x50], rcx
lea rax, [rdx - 0x2c]
test rax, 0xffffffffffffffe7
jne 0x14002fa9e
cmp rdx, 0x44
je 0x14002fa9e
mov qword [r11 + 8], rbx
lea rcx, [rbp - 0x20]
lea rbx, [rdx - 4]
mov qword [r11 + 0x18], r13
shr rbx, 2
xor edx, edx
mov r8d, 0x1a0
mov qword [rsp + 0x60], rbx
call sub.VCRUNTIME140.dll_memset
lea r13, [rbx - 1]
test r13, r13
je 0x14002f3b5
lea rdi, [rbp - 0x1c]
add rsi, 0x14
mov r15, r13
nop dword [rax]
mov ecx, dword [rsi + 8]
lea rdi, [rdi + 0x20]
mov r9d, dword [rsi]
lea rsi, [rsi + 0x10]
shr ecx, 1
xor ecx, dword [rsi - 0xc]
and ecx, 0x55555555
shr r9d, 1
xor r9d, dword [rsi - 0x14]
and r9d, 0x55555555
lea r8d, [rcx + rcx]
xor ecx, dword [rsi - 0xc]
xor r8d, dword [rsi - 8]
mov edx, ecx
lea r10d, [r9 + r9]
shr edx, 2
xor r9d, dword [rsi - 0x14]
xor r10d, dword [rsi - 0x10]
xor edx, r9d
and edx, 0x33333333
lea r11d, [rdx*4]
xor edx, r9d
xor r11d, ecx
mov r9d, r8d
shr r9d, 2
mov ecx, edx
shr ecx, 4
xor r9d, r10d
xor ecx, edx
and r9d, 0x33333333
and ecx, 0xf0f0f0f
mov eax, ecx
xor ecx, edx
mov dword [rdi - 0x24], ecx
shl eax, 4
lea ebx, [r9*4]
xor eax, edx
xor r9d, r10d
mov dword [rdi - 0x14], eax
xor ebx, r8d
mov ecx, r9d
shr ecx, 4
xor ecx, r9d
and ecx, 0xf0f0f0f
mov eax, ecx
xor ecx, r9d
mov dword [rdi - 0x20], ecx
mov ecx, r11d
shr ecx, 4
shl eax, 4
xor ecx, r11d
xor eax, r9d
and ecx, 0xf0f0f0f
mov dword [rdi - 0x10], eax
mov eax, ecx
xor ecx, r11d
shl eax, 4
mov dword [rdi - 0x1c], ecx
xor eax, r11d
mov dword [rdi - 0xc], eax
mov ecx, ebx
shr ecx, 4
xor ecx, ebx
and ecx, 0xf0f0f0f
mov eax, ecx
xor ecx, ebx
shl eax, 4
xor eax, ebx
mov dword [rdi - 0x18], ecx
mov dword [rdi - 8], eax
sub r15, 1
jne 0x14002f2b0
mov rdi, qword [rsp + 0x50]
mov r15, qword [rsp + 0x58]
test r14, r14
je 0x14002fa46
mov qword [rsp + 0x2c8], r12
mov edx, 2
nop dword [rax + rax]
xorps xmm0, xmm0
mov qword [rbp - 0x80], rdi
cmp r14, 2
lea r8, [rbp - 0x40]
mov rax, r14
cmova rax, rdx
lea rdx, [rbp - 0x40]
mov qword [rsp + 0x78], rax
shl rax, 4
mov qword [rbp - 0x78], rax
add r8, rax
lea rax, [rbp - 0x40]
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x30], xmm0
movaps xmm0, xmmword [rbp - 0x80]
movdqa xmmword [rsp + 0x30], xmm0
cmp rax, r8
je 0x14002f453
nop word [rax + rax]
mov rcx, qword [rsp + 0x30]
mov eax, dword [rcx]
bswap eax
mov dword [rdx], eax
lea rax, [rcx + 4]
mov qword [rbp - 0x70], rax
add rdx, 4
mov rax, qword [rsp + 0x38]
add rax, 0xfffffffffffffffc
mov qword [rbp - 0x68], rax
movaps xmm0, xmmword [rbp - 0x70]
movdqa xmmword [rsp + 0x30], xmm0
cmp rdx, r8
jne 0x14002f420
mov rax, qword [r15]
mov r12d, dword [rbp - 0x40]
mov ecx, dword [rbp - 0x3c]
mov r15d, dword [rbp - 0x38]
xor r12d, dword [rax]
mov edx, dword [rbp - 0x34]
mov r11d, dword [rbp - 0x30]
mov r8d, dword [rbp - 0x2c]
mov ebx, dword [rbp - 0x28]
mov r9d, dword [rbp - 0x24]
mov dword [rbp - 0x40], r12d
xor ecx, dword [rax + 4]
mov dword [rbp - 0x3c], ecx
xor r15d, dword [rax + 8]
mov dword [rbp - 0x38], r15d
xor edx, dword [rax + 0xc]
mov dword [rbp - 0x34], edx
xor r11d, dword [rax]
mov dword [rbp - 0x30], r11d
xor r8d, dword [rax + 4]
mov dword [rbp - 0x2c], r8d
mov edi, r8d
xor ebx, dword [rax + 8]
mov dword [rbp - 0x28], ebx
xor r9d, dword [rax + 0xc]
mov eax, ecx
shr eax, 1
xor eax, r12d
shr edi, 1
and eax, 0x55555555
xor edi, r11d
xor r12d, eax
and edi, 0x55555555
lea r13d, [rax + rax]
mov eax, edx
xor r13d, ecx
shr eax, 1
xor eax, r15d
lea esi, [rdi + rdi]
and eax, 0x55555555
xor edi, r11d
xor r15d, eax
xor esi, r8d
mov ecx, r9d
shr ecx, 1
xor ecx, ebx
lea r10d, [rax + rax]
xor r10d, edx
and ecx, 0x55555555
mov eax, r10d
shr eax, 2
xor eax, r13d
lea r11d, [rcx + rcx]
and eax, 0x33333333
xor ecx, ebx
xor r11d, r9d
mov ebx, r15d
mov edx, ecx
shr ebx, 2
mov r8d, r11d
shr edx, 2
xor ebx, r12d
and ebx, 0x33333333
shr r8d, 2
xor edx, edi
xor r8d, esi
and edx, 0x33333333
and r8d, 0x33333333
xor r13d, eax
lea r14d, [rbx*4]
xor ebx, r12d
xor r14d, r15d
lea r15d, [rax*4]
xor r15d, r10d
lea r9d, [rdx*4]
lea r10d, [r8*4]
xor r9d, ecx
xor edx, edi
xor r10d, r11d
xor r8d, esi
mov ecx, edx
shr ecx, 4
movabs rsi, 0x55005500550055
xor ecx, ebx
and ecx, 0xf0f0f0f
xor ebx, ecx
mov eax, ecx
shl eax, 4
mov ecx, r8d
shr ecx, 4
xor eax, edx
xor ecx, r13d
mov dword [rbp - 0x30], eax
and ecx, 0xf0f0f0f
mov dword [rbp - 0x40], ebx
xor r13d, ecx
mov eax, ecx
shl eax, 4
mov ecx, r9d
shr ecx, 4
xor eax, r8d
xor ecx, r14d
mov dword [rbp - 0x2c], eax
and ecx, 0xf0f0f0f
mov dword [rbp - 0x3c], r13d
mov r13, qword [rsp + 0x60]
mov eax, ecx
xor ecx, r14d
shl eax, 4
mov dword [rbp - 0x38], ecx
xor eax, r9d
mov dword [rbp - 0x28], eax
mov ecx, r10d
shr ecx, 4
xor ecx, r15d
and ecx, 0xf0f0f0f
mov eax, ecx
xor ecx, r15d
shl eax, 4
xor eax, r10d
mov dword [rbp - 0x34], ecx
mov dword [rbp - 0x24], eax
sub r13, 1
je 0x14002f750
lea rbx, [rbp - 0x20]
mov rdi, r13
lea rax, [rsp + 0x30]
movabs r13, 0x22331100223311
sub rbx, rax
lea rcx, [rbp - 0x40]
call fcn.14002e1a0
xor r8d, r8d
nop dword [rax]
mov eax, dword [rbp + r8*4 - 0x3c]
mov edx, dword [rbp + r8*4 - 0x40]
shl rdx, 0x20
or rdx, rax
mov rcx, rdx
shr rcx, 2
xor rcx, rdx
and rcx, r13
lea rax, [rcx*4]
xor rax, rcx
xor rdx, rax
mov rcx, rdx
shr rcx, 1
xor rcx, rdx
and rcx, rsi
lea rax, [rcx + rcx]
xor rax, rcx
xor rdx, rax
mov rax, rdx
mov dword [rbp + r8*4 - 0x3c], edx
shr rax, 0x20
mov dword [rbp + r8*4 - 0x40], eax
add r8, 2
cmp r8, 8
jne 0x14002f630
mov ecx, dword [rbp - 0x40]
mov eax, dword [rbp - 0x3c]
mov dword [rsp + 0x30], eax
mov eax, dword [rbp - 0x38]
mov dword [rsp + 0x34], eax
mov eax, dword [rbp - 0x34]
mov dword [rsp + 0x38], eax
mov eax, ecx
xor eax, dword [rbp - 0x30]
mov dword [rsp + 0x3c], eax
mov eax, ecx
xor eax, dword [rbp - 0x2c]
mov dword [rsp + 0x40], eax
mov eax, dword [rbp - 0x28]
mov dword [rsp + 0x44], eax
mov eax, ecx
xor eax, dword [rbp - 0x24]
mov dword [rsp + 0x48], eax
xor eax, eax
mov dword [rsp + 0x4c], ecx
nop dword [rax]
movdqu xmm2, xmmword [rbp + rax - 0x40]
lea rcx, [rsp + 0x30]
add rcx, rax
movdqa xmm0, xmm2
movdqu xmm1, xmmword [rcx]
xorps xmm0, xmm1
movdqa xmm3, xmm0
pslld xmm0, 8
psrld xmm3, 0x18
orps xmm3, xmm0
movdqa xmm0, xmm2
xorps xmm3, xmm1
pslld xmm0, 0x10
movdqa xmm1, xmm2
psrld xmm1, 0x10
orps xmm1, xmm0
movdqa xmm0, xmm2
pslld xmm0, 0x18
xorps xmm3, xmm1
psrld xmm2, 8
orps xmm0, xmm2
xorps xmm3, xmm0
movdqu xmm0, xmmword [rcx + rbx]
xorps xmm3, xmm0
movdqu xmmword [rbp + rax - 0x40], xmm3
add rax, 0x10
cmp rax, 0x20
jne 0x14002f6d0
add rbx, rax
sub rdi, 1
jne 0x14002f621
jmp 0x14002f75a
movabs r13, 0x22331100223311
lea rcx, [rbp - 0x40]
call fcn.14002e1a0
xor r8d, r8d
nop word [rax + rax]
mov eax, dword [rbp + r8*4 - 0x3c]
mov edx, dword [rbp + r8*4 - 0x40]
shl rdx, 0x20
or rdx, rax
mov rcx, rdx
shr rcx, 2
xor rcx, rdx
and rcx, r13
lea rax, [rcx*4]
xor rax, rcx
xor rdx, rax
mov rcx, rdx
shr rcx, 1
xor rcx, rdx
and rcx, rsi
lea rax, [rcx + rcx]
xor rax, rcx
xor rdx, rax
mov rax, rdx
mov dword [rbp + r8*4 - 0x3c], edx
shr rax, 0x20
mov dword [rbp + r8*4 - 0x40], eax
add r8, 2
cmp r8, 8
jne 0x14002f770
mov ebx, dword [rbp - 0x3c]
mov esi, dword [rbp - 0x2c]
mov r8d, dword [rbp - 0x34]
mov edx, dword [rbp - 0x24]
shr r8d, 1
xor r8d, dword [rbp - 0x38]
and r8d, 0x55555555
shr ebx, 1
xor ebx, dword [rbp - 0x40]
and ebx, 0x55555555
shr esi, 1
xor esi, dword [rbp - 0x30]
lea r10d, [r8 + r8]
shr edx, 1
xor r8d, dword [rbp - 0x38]
and esi, 0x55555555
xor r10d, dword [rbp - 0x34]
lea edi, [rbx + rbx]
xor ebx, dword [rbp - 0x40]
mov r11d, r8d
xor edi, dword [rbp - 0x3c]
xor edx, dword [rbp - 0x28]
lea r14d, [rsi + rsi]
xor esi, dword [rbp - 0x30]
and edx, 0x55555555
xor r14d, dword [rbp - 0x2c]
shr r11d, 2
xor r11d, ebx
and r11d, 0x33333333
lea r9d, [rdx + rdx]
xor r9d, dword [rbp - 0x24]
xor edx, dword [rbp - 0x28]
mov eax, edx
shr eax, 2
lea r12d, [r11*4]
xor eax, esi
xor r11d, ebx
and eax, 0x33333333
xor r12d, r8d
xor esi, eax
mov r8d, r10d
shr r8d, 2
mov ebx, esi
xor r8d, edi
shr ebx, 4
lea ecx, [rax*4]
xor ebx, r11d
mov eax, r9d
and r8d, 0x33333333
shr eax, 2
and ebx, 0xf0f0f0f
xor eax, r14d
xor ecx, edx
and eax, 0x33333333
xor r14d, eax
lea r15d, [r8*4]
xor r8d, edi
xor r15d, r10d
mov edi, ebx
xor ebx, r11d
lea r10d, [rax*4]
shl edi, 4
xor r10d, r9d
mov dword [rbp - 0x40], ebx
xor edi, esi
mov r9d, r14d
shr r9d, 4
mov eax, ecx
xor r9d, r8d
shr eax, 4
and r9d, 0xf0f0f0f
mov dword [rbp - 0x30], edi
mov r11d, r9d
xor eax, r12d
xor r9d, r8d
shl r11d, 4
xor r11d, r14d
mov dword [rbp - 0x3c], r9d
and eax, 0xf0f0f0f
mov dword [rbp - 0x2c], r11d
mov r8d, eax
mov rsi, qword [rsp + 0x60]
xor r12d, eax
mov dword [rbp - 0x38], r12d
mov eax, r10d
shr eax, 4
xor eax, r15d
shl r8d, 4
xor r8d, ecx
and eax, 0xf0f0f0f
mov rcx, qword [rsp + 0x58]
xor r15d, eax
mov dword [rbp - 0x28], r8d
mov edx, eax
mov dword [rbp - 0x34], r15d
mov rax, rsi
shl edx, 4
add rax, rax
xor edx, r10d
mov r10, qword [rcx]
mov dword [rbp - 0x24], edx
lea rcx, [r10 + rax*8]
xor ebx, dword [rcx]
lea rax, [rsi*4]
mov dword [rbp - 0x40], ebx
xor r9d, dword [rcx + 4]
mov dword [rbp - 0x3c], r9d
xor r12d, dword [r10 + rax*4 + 8]
mov dword [rbp - 0x38], r12d
xor r15d, dword [r10 + rax*4 + 0xc]
mov dword [rbp - 0x34], r15d
xor edi, dword [rcx]
mov dword [rbp - 0x30], edi
xor r11d, dword [r10 + rax*4 + 4]
mov dword [rbp - 0x2c], r11d
xor r8d, dword [r10 + rax*4 + 8]
mov dword [rbp - 0x28], r8d
xor edx, dword [r10 + rax*4 + 0xc]
mov r10, qword [rsp + 0x78]
mov r8, r10
mov dword [rbp - 0x24], edx
shl r8, 4
cmp r8, 0x20
ja 0x14002fa74
mov rbx, qword [rsp + 0x68]
lea r9, [rbp - 0x40]
mov qword [rbp - 0x60], rbx
lea rax, [rbp - 0x40]
mov qword [rbp - 0x58], r8
lea rdx, [rbp - 0x40]
movaps xmm0, xmmword [rbp - 0x60]
add r9, r8
movdqa xmmword [rsp + 0x30], xmm0
cmp rax, r9
je 0x14002fa03
nop dword [rax]
mov rax, qword [rsp + 0x30]
mov ecx, dword [rdx]
add rdx, 4
bswap ecx
mov dword [rax], ecx
add rax, 4
mov qword [rbp - 0x50], rax
mov rax, qword [rsp + 0x38]
add rax, 0xfffffffffffffffc
mov qword [rbp - 0x48], rax
movaps xmm0, xmmword [rbp - 0x50]
movdqa xmmword [rsp + 0x30], xmm0
cmp rdx, r9
jne 0x14002f9d0
mov rdi, qword [rsp + 0x50]
lea rax, [r8 + rbx]
mov r14, qword [rsp + 0x70]
add rdi, r8
mov r15, qword [rsp + 0x58]
add rbx, r8
sub r14, r10
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x70], r14
mov edx, 2
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x68], rbx
jne 0x14002f3d0
mov r12, qword [rsp + 0x2c8]
mov rbx, qword [rsp + 0x2c0]
mov r13, qword [rsp + 0x2d0]
mov rcx, qword [rbp + 0x180]
xor rcx, rsp
call fcn.140092a00
add rsp, 0x290
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
lea r9, str.build_include_internal_botan_internal_loadstor.h
mov dword [rsp + 0x20], 0x2cb
lea r8, str.copy_out_any_word_aligned_portion
lea rdx, [0x1400caf07]
lea rcx, str.in.size_bytes_____full_word_bytes__remaining_bytes
call fcn.14000e220
int3
lea r9, str.src_lib_block_aes_aes.cpp
mov dword [rsp + 0x20], 0x1fa
lea r8, str.aes_encrypt_n
lea rdx, str.Key_was_set
lea rcx, str.EK.size____44__EK.size____52__EK.size____60
call fcn.14000e220
int3