Function at 0x140011810
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x1a8
movdqa xmmword [rsp + 0x190], xmm15
movdqa xmmword [rsp + 0x180], xmm14
movdqa xmmword [rsp + 0x170], xmm13
movdqa xmmword [rsp + 0x160], xmm12
movdqa xmmword [rsp + 0x150], xmm11
movdqa xmmword [rsp + 0x140], xmm10
movdqa xmmword [rsp + 0x130], xmm9
movdqa xmmword [rsp + 0x120], xmm8
movdqa xmmword [rsp + 0x110], xmm7
movdqa xmmword [rsp + 0x100], xmm6
mov qword [rsp + 0xe8], r9
mov qword [rsp + 0x68], rcx
cmp r8, 0x10
jne 0x140012096
mov eax, dword [rdx]
mov r8d, dword [rdx + 4]
mov r9d, dword [rdx + 8]
mov ecx, dword [rdx + 0xc]
mov dword [rsp + 0x20], ecx
lea rcx, [rsp + 0xd0]
mov edx, eax
call sym.crypto::aessafe::bit_slice_4x4_with_u16::h236be1ae7692d197
mov rax, qword [rsp + 0x68]
movdqu xmm0, xmmword [rax + 0xa0]
pxor xmm0, xmmword [rsp + 0xd0]
mov eax, 0x90
nop word [rax + rax]
mov qword [rsp + 0xc8], rax
pextrw esi, xmm0, 5
not esi
pextrw r11d, xmm0, 6
not r11d
pextrw r8d, xmm0, 4
mov eax, r8d
xor eax, r11d
movd edi, xmm0
pextrw ecx, xmm0, 1
xor ecx, edi
mov ebx, eax
xor ebx, ecx
mov r10d, ebx
xor r10d, esi
pextrw r9d, xmm0, 3
xor edi, r9d
xor edi, r8d
pextrw ebp, xmm0, 2
pextrw edx, xmm0, 7
not edi
xor ebp, edx
xor ebp, esi
mov esi, eax
xor esi, edx
xor ecx, r9d
xor ecx, r11d
xor edx, r8d
mov word [rsp + 0x50], r10w
mov word [rsp + 0x52], di
mov word [rsp + 0x54], bp
mov word [rsp + 0x56], si
mov word [rsp + 0x58], cx
mov word [rsp + 0x5a], ax
mov word [rsp + 0x5c], bx
mov word [rsp + 0x5e], dx
lea r14, [rsp + 0x40]
mov rcx, r14
lea rdx, [rsp + 0x50]
call sym.__crypto::aessafe::Bs8State_T__as_crypto::aessafe::Gf8Ops_::inv::h51122db8f99c730f
movzx r8d, word [rsp + 0x42]
movzx eax, word [rsp + 0x4a]
mov edx, eax
xor edx, r8d
mov r9d, dword [rsp + 0x4c]
movzx ebx, word [rsp + 0x46]
xor bx, r9w
mov edi, dword [rsp + 0x44]
xor eax, edi
xor eax, ebx
xor ebx, edx
movzx esi, word [rsp + 0x4e]
movzx ecx, word [rsp + 0x40]
xor cx, si
mov ebp, dword [rsp + 0x48]
xor esi, ebp
xor esi, edx
mov word [rsp + 0x30], di
xor edi, ebp
xor edi, ebx
xor r9d, r8d
xor eax, ecx
xor ebx, ecx
xor ebp, r8d
mov word [rsp + 0x32], dx
mov word [rsp + 0x34], si
mov word [rsp + 0x36], di
mov word [rsp + 0x38], r9w
mov word [rsp + 0x3a], ax
mov word [rsp + 0x3c], bx
mov word [rsp + 0x3e], bp
movzx eax, word [rsp + 0x30]
mov word [rsp + 0x40], ax
movzx eax, word [rsp + 0x32]
mov word [rsp + 0x42], ax
movzx eax, word [rsp + 0x34]
mov word [rsp + 0x44], ax
movzx eax, word [rsp + 0x36]
mov word [rsp + 0x46], ax
movzx eax, word [rsp + 0x38]
mov word [rsp + 0x48], ax
movzx eax, word [rsp + 0x3a]
mov word [rsp + 0x4a], ax
movzx eax, word [rsp + 0x3c]
mov word [rsp + 0x4c], ax
movzx eax, word [rsp + 0x3e]
mov word [rsp + 0x4e], ax
lea rcx, [rsp + 0x30]
mov rdx, r14
call sym.__crypto::aessafe::Bs8State_T__as_crypto::aessafe::AesOps_::inv_shift_rows::h1d0cfca6dba1dd04
movzx r8d, word [rsp + 0x3a]
mov r12d, dword [rsp + 0x38]
mov eax, r8d
xor eax, r12d
mov dword [rsp + 0xb0], eax
movzx esi, word [rsp + 0x3e]
mov ebp, esi
xor ebp, eax
mov dword [rsp + 0x9c], ebp
mov ecx, esi
xor ecx, r12d
mov dword [rsp + 0xa8], ecx
mov r15d, dword [rsp + 0x3c]
mov r11d, esi
xor r11d, r15d
mov ebx, r11d
xor ebx, r12d
mov dword [rsp + 0xac], ebx
movzx ebp, word [rsp + 0x36]
mov ebx, esi
mov r9d, esi
xor ebx, ebp
mov dword [rsp + 0x64], ebx
mov ecx, ebx
xor ecx, r15d
mov dword [rsp + 0x98], ecx
mov edx, r15d
xor edx, r8d
xor ebx, edx
mov dword [rsp + 0xa0], ebx
mov esi, r12d
mov ecx, ebp
xor esi, ebp
mov ebx, esi
mov ebp, esi
mov dword [rsp + 0x84], esi
xor ebx, r11d
mov dword [rsp + 0xa4], ebx
mov edi, dword [rsp + 0x34]
mov r13d, ecx
mov ebx, ecx
xor r13d, edi
mov dword [rsp + 0x70], edi
mov ecx, r13d
xor ecx, edx
mov dword [rsp + 0x94], ecx
mov r10d, r9d
mov eax, r9d
xor r10d, r8d
mov esi, r15d
xor esi, r12d
movzx r9d, word [rsp + 0x32]
mov r14d, r8d
xor r14d, r9d
mov dword [rsp + 0x60], esi
xor esi, r14d
mov ecx, r10d
xor ecx, r9d
mov dword [rsp + 0x8c], ecx
mov ecx, ebp
xor ecx, r15d
mov dword [rsp + 0x88], ecx
xor ebx, r15d
xor ebx, r9d
mov dword [rsp + 0x80], ebx
xor r11d, edi
mov dword [rsp + 0x90], r11d
xor r11d, r9d
xor eax, edx
mov dword [rsp + 0x78], eax
xor edx, r9d
mov eax, r15d
mov edi, dword [rsp + 0xb0]
xor eax, edi
mov dword [rsp + 0x7c], eax
mov eax, dword [rsp + 0x64]
xor edi, eax
mov dword [rsp + 0xb0], edi
xor r14d, r13d
mov dword [rsp + 0x74], r14d
mov ebx, dword [rsp + 0x30]
xor r8d, ebx
mov ecx, r9d
xor r9d, r8d
xor r13d, r8d
xor eax, r8d
mov dword [rsp + 0x64], eax
movd xmm14, r15d
movd xmm0, r8d
movdqa xmmword [rsp + 0xf0], xmm0
mov ebp, r8d
xor r8d, r15d
mov eax, dword [rsp + 0x70]
xor r15d, eax
mov r14d, dword [rsp + 0x60]
xor r14d, eax
xor r12d, eax
mov eax, r10d
xor r14d, r10d
mov r10d, r14d
mov edi, eax
xor eax, ebx
mov dword [rsp + 0x60], eax
mov r14d, eax
xor r14d, dword [rsp + 0x80]
xor edi, r15d
mov eax, ecx
xor eax, ebx
mov ecx, dword [rsp + 0x84]
xor ecx, r15d
xor r9d, r15d
xor r15d, ebx
rol r11w, 0xc
mov ebx, dword [rsp + 0x78]
movd xmm2, ebx
xor ebx, eax
xor r11d, eax
mov eax, dword [rsp + 0x94]
rol ax, 8
rol si, 4
movd xmm4, eax
movd xmm6, esi
mov esi, dword [rsp + 0x9c]
rol si, 8
movd xmm10, esi
mov esi, dword [rsp + 0x98]
rol si, 4
movd xmm0, esi
rol r13w, 0xc
rol bp, 4
movd xmm11, r13d
movd xmm3, ebp
rol dx, 4
movd xmm15, edx
movd xmm8, ecx
movd xmm5, dword [rsp + 0x74]
movd xmm7, dword [rsp + 0xb0]
movd xmm9, dword [rsp + 0x7c]
movd xmm12, r9d
mov eax, dword [rsp + 0x64]
rol ax, 4
movd xmm1, r11d
rol r15w, 8
punpcklwd xmm6, xmm4
movd xmm4, eax
movdqa xmmword [rsp + 0xb0], xmm4
punpcklwd xmm0, xmm10
movd xmm13, r15d
mov eax, dword [rsp + 0x8c]
xor r12d, eax
mov edx, dword [rsp + 0x88]
xor edx, eax
rol ax, 8
punpckldq xmm6, xmm0
movd xmm10, eax
punpcklwd xmm14, xmm11
rol r8w, 8
movd xmm4, r8d
rol di, 4
punpcklwd xmm3, xmm15
movd xmm11, edi
rol r12w, 8
punpckldq xmm3, xmm14
movd xmm0, r12d
mov eax, dword [rsp + 0xa0]
rol ax, 0xc
punpcklqdq xmm3, xmm6
movd xmm14, eax
mov eax, dword [rsp + 0xa8]
rol ax, 4
punpcklwd xmm5, xmm8
movd xmm8, eax
rol r10w, 0xc
punpcklwd xmm7, xmm9
movd xmm9, r10d
mov eax, edx
rol ax, 0xc
punpckldq xmm5, xmm7
movd xmm7, eax
mov eax, dword [rsp + 0xa4]
rol ax, 8
punpcklwd xmm1, xmm12
movd xmm6, eax
mov eax, dword [rsp + 0xac]
rol ax, 0xc
punpcklwd xmm2, xmmword [rsp + 0xf0]
movd xmm12, eax
rol r14w, 8
punpckldq xmm2, xmm1
movd xmm15, r14d
mov eax, dword [rsp + 0x90]
rol ax, 4
punpcklqdq xmm2, xmm5
movd xmm5, eax
rol bx, 0xc
punpcklwd xmm13, xmmword [rsp + 0xb0]
movd xmm1, ebx
punpcklwd xmm4, xmm10
mov eax, dword [rsp + 0x60]
rol ax, 0xc
movd xmm10, eax
punpckldq xmm4, xmm13
punpcklwd xmm0, xmm11
punpcklwd xmm14, xmm8
punpckldq xmm0, xmm14
punpcklqdq xmm4, xmm0
pxor xmm4, xmm3
pxor xmm4, xmm2
punpcklwd xmm7, xmm9
punpcklwd xmm6, xmm12
punpckldq xmm7, xmm6
punpcklwd xmm5, xmm15
punpcklwd xmm10, xmm1
punpckldq xmm10, xmm5
punpcklqdq xmm10, xmm7
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0xc8]
movdqu xmm0, xmmword [rax + rcx]
mov rax, qword [rsp + 0xc8]
pxor xmm0, xmm10
pxor xmm0, xmm4
movdqa xmmword [rsp + 0x30], xmm0
add rax, 0xfffffffffffffff0
jne 0x1400118e0
pextrw esi, xmm0, 5
not esi
pextrw r11d, xmm0, 6
not r11d
pextrw r8d, xmm0, 4
mov eax, r8d
xor eax, r11d
movd edi, xmm0
pextrw ecx, xmm0, 1
xor ecx, edi
mov ebx, eax
xor ebx, ecx
mov r10d, ebx
xor r10d, esi
pextrw r9d, xmm0, 3
xor edi, r9d
xor edi, r8d
pextrw ebp, xmm0, 2
pextrw edx, xmm0, 7
not edi
xor ebp, edx
xor ebp, esi
mov esi, eax
xor esi, edx
xor ecx, r9d
xor ecx, r11d
xor edx, r8d
mov word [rsp + 0x50], r10w
mov word [rsp + 0x52], di
mov word [rsp + 0x54], bp
mov word [rsp + 0x56], si
mov word [rsp + 0x58], cx
mov word [rsp + 0x5a], ax
mov word [rsp + 0x5c], bx
mov word [rsp + 0x5e], dx
lea rcx, [rsp + 0x40]
lea rdx, [rsp + 0x50]
call sym.__crypto::aessafe::Bs8State_T__as_crypto::aessafe::Gf8Ops_::inv::h51122db8f99c730f
movzx r8d, word [rsp + 0x42]
movzx eax, word [rsp + 0x4a]
mov edx, eax
xor edx, r8d
mov r9d, dword [rsp + 0x4c]
movzx ebx, word [rsp + 0x46]
xor bx, r9w
mov edi, dword [rsp + 0x44]
xor eax, edi
xor eax, ebx
xor ebx, edx
movzx esi, word [rsp + 0x4e]
movzx ecx, word [rsp + 0x40]
xor cx, si
mov ebp, dword [rsp + 0x48]
xor esi, ebp
xor esi, edx
mov word [rsp + 0x30], di
xor edi, ebp
xor edi, ebx
xor r9d, r8d
xor eax, ecx
xor ebx, ecx
xor ebp, r8d
mov word [rsp + 0x32], dx
mov word [rsp + 0x34], si
mov word [rsp + 0x36], di
mov word [rsp + 0x38], r9w
mov word [rsp + 0x3a], ax
mov word [rsp + 0x3c], bx
mov word [rsp + 0x3e], bp
movzx eax, word [rsp + 0x30]
mov word [rsp + 0x40], ax
movzx eax, word [rsp + 0x32]
mov word [rsp + 0x42], ax
movzx eax, word [rsp + 0x34]
mov word [rsp + 0x44], ax
movzx eax, word [rsp + 0x36]
mov word [rsp + 0x46], ax
movzx eax, word [rsp + 0x38]
mov word [rsp + 0x48], ax
movzx eax, word [rsp + 0x3a]
mov word [rsp + 0x4a], ax
movzx eax, word [rsp + 0x3c]
mov word [rsp + 0x4c], ax
movzx eax, word [rsp + 0x3e]
mov word [rsp + 0x4e], ax
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x40]
call sym.__crypto::aessafe::Bs8State_T__as_crypto::aessafe::AesOps_::inv_shift_rows::h1d0cfca6dba1dd04
mov rax, qword [rsp + 0x68]
movups xmm0, xmmword [rax]
xorps xmm0, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0x30], xmm0
movaps xmm0, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0xd0], xmm0
lea rbx, [rsp + 0xd0]
mov rcx, rbx
mov edx, 1
call sym.crypto::aessafe::un_bit_slice_4x4_with_u16::deconstruct::h5a4a4394350aeace
mov esi, eax
mov rcx, rbx
mov edx, 2
call sym.crypto::aessafe::un_bit_slice_4x4_with_u16::deconstruct::h5a4a4394350aeace
mov edi, eax
mov rcx, rbx
mov edx, 3
call sym.crypto::aessafe::un_bit_slice_4x4_with_u16::deconstruct::h5a4a4394350aeace
mov rbp, qword [rsp + 0x210]
cmp rbp, 3
jbe 0x1400120b0
mov ebx, eax
lea rcx, [rsp + 0xd0]
xor edx, edx
call sym.crypto::aessafe::un_bit_slice_4x4_with_u16::deconstruct::h5a4a4394350aeace
mov rcx, qword [rsp + 0xe8]
mov dword [rcx], eax
cmp rbp, 7
jbe 0x1400120be
mov dword [rcx + 4], esi
cmp rbp, 0xb
jbe 0x1400120cc
mov dword [rcx + 8], edi
cmp rbp, 0xf
jbe 0x1400120da
mov dword [rcx + 0xc], ebx
movaps xmm6, xmmword [rsp + 0x100]
movaps xmm7, xmmword [rsp + 0x110]
movaps xmm8, xmmword [rsp + 0x120]
movaps xmm9, xmmword [rsp + 0x130]
movaps xmm10, xmmword [rsp + 0x140]
movaps xmm11, xmmword [rsp + 0x150]
movaps xmm12, xmmword [rsp + 0x160]
movaps xmm13, xmmword [rsp + 0x170]
movaps xmm14, xmmword [rsp + 0x180]
movaps xmm15, xmmword [rsp + 0x190]
add rsp, 0x1a8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [0x14004cc9b]
lea r8, str._Users_AbelChe_.cargo_registry_src_github.com_1ecc6299db9ec823_rust_crypto_0.2.36_src_cryptoutil.rsassertion_failed:_dst.len____4__input.len__
mov edx, 0x2e
call dbg.panic
ud2
lea r8, str._Users_AbelChe_.cargo_registry_src_github.com_1ecc6299db9ec823_rust_crypto_0.2.36_src_aessafe.rs
mov ecx, 4
jmp 0x1400120e6
lea r8, str._Users_AbelChe_.cargo_registry_src_github.com_1ecc6299db9ec823_rust_crypto_0.2.36_src_aessafe.rs
mov ecx, 8
jmp 0x1400120e6
lea r8, str._Users_AbelChe_.cargo_registry_src_github.com_1ecc6299db9ec823_rust_crypto_0.2.36_src_aessafe.rs
mov ecx, 0xc
jmp 0x1400120e6
lea r8, str._Users_AbelChe_.cargo_registry_src_github.com_1ecc6299db9ec823_rust_crypto_0.2.36_src_aessafe.rs
mov ecx, 0x10
mov rdx, rbp
call dbg.slice_end_index_len_fail
ud2