joyce8/EMBER2024-capa huggingface dataset:
Function at 0x14003c030
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
movzx r11d, cx
mov edi, 3
movzx r10d, r11w
mov ebx, r11d
nop word [rax + rax]
xor ecx, ecx
movzx r8d, r10w
imul r8d, r8d
movzx eax, r8w
mov edx, r8d
shr edx, 0x10
cmp eax, edx
lea r9d, [r8 - 1]
not r8d
setb cl
shr r8d, 0x1f
sub cx, dx
shr r9d, 0x1f
and r9w, r8w
add cx, ax
xor r8d, r8d
add r10w, r10w
neg r9w
mov eax, 1
sub ax, r10w
xor ax, cx
and r9w, ax
xor r9w, cx
movzx edx, r9w
imul edx, ebx
movzx eax, dx
mov ecx, edx
shr ecx, 0x10
cmp eax, ecx
lea r10d, [rdx - 1]
not edx
setb r8b
shr edx, 0x1f
sub r8w, cx
shr r10d, 0x1f
add r8w, ax
and r10w, dx
neg r10w
mov eax, 1
sub ax, r9w
sub ax, r11w
xor ax, r8w
and r10w, ax
xor r10w, r8w
xor r8d, r8d
movzx edx, r10w
imul edx, edx
movzx eax, dx
mov ecx, edx
shr ecx, 0x10
cmp eax, ecx
lea r9d, [rdx - 1]
not edx
setb r8b
shr edx, 0x1f
sub r8w, cx
shr r9d, 0x1f
add r8w, ax
and r9w, dx
add r10w, r10w
neg r9w
mov eax, 1
sub ax, r10w
xor ax, r8w
and r9w, ax
xor r9w, r8w
xor r8d, r8d
movzx edx, r9w
imul edx, ebx
movzx eax, dx
mov ecx, edx
shr ecx, 0x10
cmp eax, ecx
lea r10d, [rdx - 1]
not edx
setb r8b
shr r10d, 0x1f
sub r8w, cx
shr edx, 0x1f
add r8w, ax
and r10w, dx
neg r10w
mov eax, 1
sub ax, r9w
sub ax, r11w
xor ax, r8w
and r10w, ax
xor r10w, r8w
xor r8d, r8d
movzx edx, r10w
imul edx, edx
movzx eax, dx
mov ecx, edx
shr ecx, 0x10
cmp eax, ecx
lea r9d, [rdx - 1]
not edx
setb r8b
shr edx, 0x1f
sub r8w, cx
shr r9d, 0x1f
add r8w, ax
and r9w, dx
add r10w, r10w
neg r9w
mov eax, 1
sub ax, r10w
xor ax, r8w
and r9w, ax
xor r9w, r8w
xor r8d, r8d
movzx edx, r9w
imul edx, ebx
movzx eax, dx
mov ecx, edx
shr ecx, 0x10
cmp eax, ecx
lea r10d, [rdx - 1]
not edx
setb r8b
shr edx, 0x1f
sub r8w, cx
shr r10d, 0x1f
add r8w, ax
and r10w, dx
neg r10w
mov eax, 1
sub ax, r9w
sub ax, r11w
xor ax, r8w
and r10w, ax
xor r10w, r8w
xor r8d, r8d
movzx edx, r10w
imul edx, edx
movzx eax, dx
mov ecx, edx
shr ecx, 0x10
cmp eax, ecx
lea r9d, [rdx - 1]
not edx
setb r8b
shr r9d, 0x1f
sub r8w, cx
shr edx, 0x1f
add r8w, ax
and r9w, dx
neg r9w
mov eax, 1
add r10w, r10w
sub ax, r10w
xor ax, r8w
and r9w, ax
xor r9w, r8w
xor r8d, r8d
movzx edx, r9w
imul edx, ebx
mov ecx, edx
movzx eax, dx
shr ecx, 0x10
cmp eax, ecx
setb r8b
sub r8w, cx
lea r10d, [rdx - 1]
add r8w, ax
shr r10d, 0x1f
not edx
mov eax, 1
sub ax, r9w
shr edx, 0x1f
and r10w, dx
sub ax, r11w
xor ax, r8w
neg r10w
and r10w, ax
xor r10w, r8w
xor r8d, r8d
movzx edx, r10w
imul edx, edx
movzx eax, dx
mov ecx, edx
shr ecx, 0x10
cmp eax, ecx
lea r9d, [rdx - 1]
not edx
setb r8b
add r10w, r10w
sub r8w, cx
shr edx, 0x1f
add r8w, ax
shr r9d, 0x1f
and r9w, dx
mov eax, 1
sub ax, r10w
neg r9w
xor ax, r8w
and r9w, ax
xor r9w, r8w
xor r8d, r8d
movzx edx, r9w
imul edx, ebx
movzx eax, dx
mov ecx, edx
shr ecx, 0x10
cmp eax, ecx
lea r10d, [rdx - 1]
not edx
setb r8b
shr r10d, 0x1f
sub r8w, cx
shr edx, 0x1f
and r10w, dx
add r8w, ax
neg r10w
mov ecx, 1
sub cx, r9w
sub cx, r11w
xor cx, r8w
and r10w, cx
xor r10w, r8w
sub rdi, 1
jne 0x14003c050
mov rbx, qword [rsp + 8]
movzx eax, r10w
mov rdi, qword [rsp + 0x10]
ret
Function at 0x140051f10
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rdi
sub rsp, 0x80
mov rax, qword [0x1400df040]
xor rax, rsp
mov qword [rsp + 0x70], rax
mov rax, qword [rcx + 8]
mov rdi, rdx
mov rdx, qword [rdx + 8]
mov rbx, rcx
sub rax, qword [rcx]
sub rdx, qword [rdi]
cmp rax, rdx
jae 0x140051f4f
call fcn.140007370
mov rax, qword [rbx]
jmp 0x140051f52
mov rax, qword [rcx]
mov r9, qword [rdi]
mov r8, qword [rdi + 8]
mov r10, r9
sub r8, r9
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], r8
mov r11, r8
movaps xmm0, xmmword [rsp + 0x20]
mov rdx, r8
movdqa xmmword [rsp + 0x20], xmm0
cmp r8, 0x20
jb 0x14005203b
nop dword [rax]
nop dword [rax + rax]
mov rdx, qword [rsp + 0x20]
lea r10, [r9 + 0x20]
mov rax, qword [r9 + 8]
mov r11, qword [rsp + 0x28]
add r11, 0xffffffffffffffe0
mov qword [rsp + 0x40], r10
movups xmm1, xmmword [rdx]
mov qword [rsp + 0x38], r11
movups xmm2, xmmword [rdx + 0x10]
movups xmmword [rsp + 0x50], xmm1
xor qword [rsp + 0x58], rax
mov rax, qword [r9 + 0x18]
movq rcx, xmm1
xor rcx, qword [r9]
mov qword [rsp + 0x50], rcx
movq rcx, xmm2
xor rcx, qword [r9 + 0x10]
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rsp + 0x60], xmm2
xor qword [rsp + 0x68], rax
lea rax, [rdx + 0x20]
mov qword [rsp + 0x60], rcx
lea rcx, [r8 - 0x20]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x48], rcx
movups xmm1, xmmword [rsp + 0x60]
movups xmmword [rdx], xmm0
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x20], xmm0
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x50], xmm0
movups xmmword [rdx + 0x10], xmm1
cmp r11, 0x20
jb 0x140052038
mov r8, qword [rsp + 0x58]
mov r9, qword [rsp + 0x50]
jmp 0x140051f90
mov rdx, r11
test r11, r11
je 0x140052061
sub r10, rax
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [rax + r10]
xor byte [rax], cl
lea rax, [rax + 1]
sub rdx, 1
jne 0x140052050
mov rax, rbx
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.140092a00
mov rbx, qword [rsp + 0xa0]
add rsp, 0x80
pop rdi
ret
Function at 0x140054200
Capabilities:
Encode data using xor

Disassembly:
mov r11, rsp
push rbp
push rsi
push r15
sub rsp, 0xd0
mov rax, qword [0x1400df040]
xor rax, rsp
mov qword [rsp + 0xa0], rax
mov rax, qword [rdx + 8]
mov rsi, rcx
mov rcx, qword [rdx]
mov r15, r8
sub rax, rcx
mov rbp, rdx
cmp rax, r8
jb 0x14005443c
sub rax, r8
mov qword [r11 - 0x30], r12
lea r12, [rcx + r8]
cmp rax, 0x10
jb 0x140054457
mov qword [r11 - 0x20], rbx
mov qword [r11 - 0x28], rdi
mov qword [r11 - 0x38], r14
lea r14, [rax - 0x10]
test r14, r14
je 0x1400542aa
mov rcx, qword [rsi + 0x10]
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x38], r14
movaps xmm0, xmmword [rsp + 0x30]
mov rax, qword [rcx]
movdqa xmmword [rsp + 0x30], xmm0
call qword [rax + 0x10]
mov rcx, qword [rsi + 8]
mov r9, r14
mov r8, r12
mov rdx, r12
mov rax, qword [rcx]
call qword [rax + 0x60]
mov rdx, qword [rsi + 0x38]
add rdx, r14
mov qword [rsi + 0x38], rdx
jmp 0x1400542ae
mov rdx, qword [rsi + 0x38]
mov rax, qword [rsi + 0x30]
cmp rax, 0xc
je 0x1400542be
cmp rax, 0x18
jne 0x140054312
and edx, 0xf
je 0x140054302
mov rcx, qword [rsi + 0x10]
lea rax, [rsp + 0x80]
mov qword [rsp + 0x30], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x80], xmm0
mov eax, 0x10
sub rax, rdx
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
mov rax, qword [rcx]
movdqa xmmword [rsp + 0x30], xmm0
call qword [rax + 0x10]
mov rdx, qword [rsi + 0x20]
mov rcx, rsi
sub rdx, qword [rsi + 0x18]
call fcn.140054ac0
mov rdx, qword [rsi + 0x38]
mov rcx, rsi
call fcn.140054ac0
mov rbx, qword [rsi + 0x10]
lea rax, [rsp + 0x90]
mov rcx, rbx
mov qword [rsp + 0x30], rax
mov rdi, qword [rbx]
call qword [rdi]
mov qword [rsp + 0x38], rax
lea rdx, [rsp + 0x80]
movaps xmm0, xmmword [rsp + 0x30]
mov rcx, rbx
movdqa xmmword [rsp + 0x80], xmm0
call qword [rdi + 0x18]
mov rdi, qword [rsp + 0xc0]
lea r8, [r14 + r12]
mov rbx, qword [rsp + 0xc8]
lea rax, [rsp + 0x90]
xor edx, edx
mov qword [rsi + 0x38], rdx
sub r8, rax
mov qword [rsi + 0x30], rdx
mov byte [rsp + 0x20], dl
nop word [rax + rax]
lea rax, [rsp + 0x90]
add rax, rdx
inc rdx
movzx ecx, byte [rax + r8]
xor cl, byte [rax]
movzx eax, byte [rsp + 0x20]
or cl, al
mov byte [rsp + 0x20], cl
cmp rdx, 0x10
jne 0x140054390
movzx ecx, byte [rsp + 0x20]
lea eax, [rcx - 1]
not cl
test cl, al
jge 0x1400543fc
lea rdx, [r15 + r14]
mov rcx, rbp
call fcn.140007370
mov r14, qword [rsp + 0xb0]
mov r12, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0xa0]
xor rcx, rsp
call fcn.140092a00
add rsp, 0xd0
pop r15
pop rsi
pop rbp
ret
lea rdx, str.ChaCha20Poly1305_tag_check_failed
lea rcx, [rsp + 0x30]
call fcn.140007730
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x40]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x80], xmm0
call fcn.14000fa30
lea rdx, [0x1400dbd30]
lea rcx, [rsp + 0x40]
call sub.VCRUNTIME140.dll__CxxThrowException
int3
lea r8, str.src_lib_modes_aead_chacha20poly1305_chacha20poly1305.cpp
lea rdx, str.finish_msg
lea rcx, str.Offset_is_out_of_range
call fcn.14000e380
int3
lea r8, str.src_lib_modes_aead_chacha20poly1305_chacha20poly1305.cpp
lea rdx, str.finish_msg
lea rcx, str.input_did_not_include_the_tag
call fcn.14000e380
int3
Function at 0x140054e60
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0xc0
mov rax, qword [0x1400df040]
xor rax, rsp
mov qword [rsp + 0xb8], rax
mov r14, r8
mov r12, rdx
mov rbp, rcx
mov rax, qword [rdx]
mov rsi, qword [rdx + 8]
sub rsi, rax
cmp rsi, r8
jb 0x140055076
sub rsi, r8
lea rbx, [rax + r8]
mov rax, qword [rcx + 8]
cmp rsi, rax
jb 0x140055091
sub rsi, rax
je 0x140054ef0
mov rcx, qword [rcx + 0x20]
mov rax, qword [rcx]
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rsi
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm0
lea rdx, [rsp + 0x40]
call qword [rax + 0x10]
mov rcx, qword [rbp + 0x18]
mov rax, qword [rcx]
mov r9, rsi
mov r8, rbx
mov rdx, rbx
call qword [rax + 0x60]
lea rdi, [rsi + rbx]
lea rdx, [rsp + 0x68]
mov rcx, qword [rbp + 0x20]
call fcn.1400108c0
nop
lea rdx, [rbp + 0x40]
lea rcx, [rsp + 0x68]
call fcn.140051f10
mov rax, qword [rbp + 0x30]
cmp qword [rbp + 0x28], rax
jne 0x140054f89
mov rbx, qword [rbp + 0x20]
mov rcx, qword [rbp + 0x10]
mov rax, qword [rcx]
call qword [rax + 0x30]
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, rbx
mov r8, rax
mov dl, 1
lea rcx, [rsp + 0x50]
call fcn.140054d60
mov rdx, rax
lea rcx, [rbp + 0x28]
call fcn.140007440
nop
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x140054f89
mov rdx, qword [rsp + 0x60]
sub rdx, rcx
mov r8d, 1
call fcn.14000de60
mov qword [rsp + 0x50], 0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
lea rdx, [rbp + 0x28]
lea rcx, [rsp + 0x68]
call fcn.140051f10
mov rdx, qword [rbp + 8]
mov byte [rsp + 0x30], 0
test rdx, rdx
je 0x140054fcc
mov r8, qword [rsp + 0x68]
sub r8, rdi
nop dword [rax]
movzx ecx, byte [rdi + r8]
xor cl, byte [rdi]
movzx eax, byte [rsp + 0x30]
or al, cl
mov byte [rsp + 0x30], al
lea rdi, [rdi + 1]
sub rdx, 1
jne 0x140054fb0
movzx eax, byte [rsp + 0x30]
lea ebx, [rax - 1]
not al
and bl, al
lea rdx, [r14 + rsi]
mov rcx, r12
call fcn.140007370
mov rax, qword [rbp + 0x40]
cmp rax, qword [rbp + 0x48]
je 0x140054ff2
mov qword [rbp + 0x48], rax
test bl, bl
jns 0x140055036
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x140055014
mov rdx, qword [rsp + 0x78]
sub rdx, rcx
mov r8d, 1
call fcn.14000de60
nop
mov rcx, qword [rsp + 0xb8]
xor rcx, rsp
call fcn.140092a00
add rsp, 0xc0
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
lea rdx, str.EAX_tag_check_failed
lea rcx, [rsp + 0x50]
call fcn.140007730
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x40], xmm0
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x80]
call fcn.14000fa30
lea rdx, [0x1400dbd30]
lea rcx, [rsp + 0x80]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
lea r8, str.src_lib_modes_aead_eax_eax.cpp
lea rdx, str.finish_msg
lea rcx, str.Offset_is_out_of_range
call fcn.14000e380
int3
lea r8, str.src_lib_modes_aead_eax_eax.cpp
lea rdx, str.finish_msg
lea rcx, str.input_did_not_include_the_tag
call fcn.14000e380
int3
Function at 0x140055b90
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rsi
push rdi
push r14
sub rsp, 0xa8
mov rax, qword [0x1400df040]
xor rax, rsp
mov qword [rsp + 0x98], rax
mov rax, qword [rdx]
mov rsi, r8
mov rbx, qword [rdx + 8]
mov r14, rdx
sub rbx, rax
mov rdi, rcx
cmp r8, rbx
ja 0x140055d1a
mov qword [rsp + 0xa0], rbp
sub rbx, r8
lea rbp, [rax + r8]
mov rax, qword [rcx + 8]
cmp rbx, rax
jb 0x140055d35
sub rbx, rax
je 0x140055c22
mov rcx, qword [rcx + 0x38]
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x30], rbp
mov qword [rsp + 0x38], rbx
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm0
call fcn.1400605c0
mov rcx, qword [rdi + 0x30]
mov r9, rbx
mov r8, rbp
mov rdx, rbp
mov rax, qword [rcx]
call qword [rax + 0x60]
mov rcx, qword [rdi + 0x38]
lea rax, [rsp + 0x50]
mov qword [rsp + 0x30], rax
lea rdx, [rsp + 0x30]
mov rax, qword [rdi + 8]
xorps xmm0, xmm0
mov qword [rsp + 0x38], rax
movups xmmword [rsp + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm0
call fcn.14005f520
mov r8, qword [r14]
lea r10, [rsi + rbx]
mov r9, qword [rdi + 8]
add r8, r10
xor edx, edx
mov byte [rsp + 0x20], 0
test r9, r9
je 0x140055ca2
lea rax, [rsp + 0x50]
sub r8, rax
nop dword [rax + rax]
lea rax, [rsp + 0x50]
add rax, rdx
inc rdx
movzx ecx, byte [rax + r8]
xor cl, byte [rax]
movzx eax, byte [rsp + 0x20]
or cl, al
mov byte [rsp + 0x20], cl
cmp rdx, r9
jne 0x140055c80
movzx ecx, byte [rsp + 0x20]
lea eax, [rcx - 1]
not cl
test cl, al
jge 0x140055ce0
mov rdx, r10
mov rcx, r14
call fcn.140007370
mov rbp, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x98]
xor rcx, rsp
call fcn.140092a00
add rsp, 0xa8
pop r14
pop rdi
pop rsi
pop rbx
ret
lea rdx, str.GCM_tag_check_failed
lea rcx, [rsp + 0x40]
call fcn.140007730
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x60]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x30], xmm0
call fcn.14000fa30
lea rdx, [0x1400dbd30]
lea rcx, [rsp + 0x60]
call sub.VCRUNTIME140.dll__CxxThrowException
int3
lea r8, str.src_lib_modes_aead_gcm_gcm.cpp
lea rdx, str.finish_msg
lea rcx, str.Invalid_offset
call fcn.14000e380
int3
lea r8, str.src_lib_modes_aead_gcm_gcm.cpp
lea rdx, str.finish_msg
lea rcx, str.input_did_not_include_the_tag
call fcn.14000e380
int3
Function at 0x140057f70
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rdi
push r14
sub rsp, 0xc0
mov rax, qword [0x1400df040]
xor rax, rsp
mov qword [rsp + 0xa0], rax
mov rax, qword [rcx]
mov rbx, r8
mov r14, rdx
mov rdi, rcx
call qword [rax + 0x20]
test al, al
jne 0x140057fa9
mov rcx, rdi
call fcn.14000dd30
mov rcx, qword [rdi + 0x10]
mov rax, qword [rcx + 0x48]
cmp qword [rcx + 0x40], rax
je 0x14005819e
mov qword [rsp + 0xb0], r15
mov r15, qword [rdi + 0x58]
test rbx, rbx
je 0x14005817a
mov qword [rsp + 0xf8], rbp
mov rcx, rbx
mov qword [rsp + 0xb8], rsi
mov rsi, rbx
nop word [rax + rax]
cmp qword [rdi + 0x60], rcx
mov rdx, qword [rdi + 0x18]
cmovb rsi, qword [rdi + 0x60]
mov rcx, qword [rdi + 0x10]
mov rbp, rsi
mov r8, rsi
imul rbp, r15
call fcn.1400572b0
mov rcx, qword [rdi + 8]
mov r9, rsi
mov r8, rax
mov rdx, r14
mov r10, qword [rcx]
call qword [r10 + 0x60]
mov rax, qword [rdi + 0x20]
mov r9, rbp
mov qword [rsp + 0x40], rax
mov r8, r14
mov qword [rsp + 0x50], r14
mov rdx, rbp
mov qword [rsp + 0x58], rbp
movaps xmm1, xmmword [rsp + 0x50]
mov qword [rsp + 0x48], rbp
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x20], xmm0
movdqa xmmword [rsp + 0x30], xmm1
cmp rbp, 0x20
jb 0x140058132
nop word [rax + rax]
mov rdx, qword [rsp + 0x20]
mov r8, qword [rsp + 0x30]
mov r9, qword [rsp + 0x28]
add r9, 0xffffffffffffffe0
movups xmm1, xmmword [rdx]
mov rax, qword [r8 + 8]
movups xmm3, xmmword [rdx + 0x10]
mov qword [rsp + 0x68], r9
movups xmmword [rsp + 0x80], xmm1
xor qword [rsp + 0x88], rax
mov rax, qword [r8 + 0x18]
movq rcx, xmm1
xor rcx, qword [r8]
mov qword [rsp + 0x80], rcx
movq rcx, xmm3
xor rcx, qword [r8 + 0x10]
add r8, 0x20
movups xmm0, xmmword [rsp + 0x80]
mov qword [rsp + 0x70], r8
movups xmmword [rsp + 0x90], xmm3
xor qword [rsp + 0x98], rax
lea rax, [rdx + 0x20]
mov qword [rsp + 0x90], rcx
mov rcx, qword [rsp + 0x38]
movups xmm1, xmmword [rsp + 0x90]
add rcx, 0xffffffffffffffe0
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x78], rcx
movups xmmword [rdx], xmm0
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x20], xmm0
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x30], xmm0
movups xmmword [rdx + 0x10], xmm1
cmp r9, 0x20
jae 0x140058070
mov rdx, r9
test r9, r9
je 0x140058151
sub r8, rax
nop word [rax + rax]
movzx ecx, byte [rax + r8]
xor byte [rax], cl
lea rax, [rax + 1]
sub rdx, 1
jne 0x140058140
add qword [rdi + 0x18], rsi
sub rbx, rsi
add r14, rbp
mov rcx, rbx
mov rsi, rbx
test rbx, rbx
jne 0x140057ff0
mov rsi, qword [rsp + 0xb8]
mov rbp, qword [rsp + 0xf8]
mov r15, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0xa0]
xor rcx, rsp
call fcn.140092a00
add rsp, 0xc0
pop r14
pop rdi
pop rbx
ret
lea r8, str.src_lib_modes_aead_ocb_ocb.cpp
lea rdx, str.decrypt
lea rcx, str.m_L__initialized__
call fcn.14000e420
int3
Function at 0x1400581c0
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rdi
push r14
sub rsp, 0xc0
mov rax, qword [0x1400df040]
xor rax, rsp
mov qword [rsp + 0xa0], rax
mov rax, qword [rcx]
mov rdi, r8
mov r14, rdx
mov rbx, rcx
call qword [rax + 0x20]
test al, al
jne 0x1400581f9
mov rcx, rbx
call fcn.14000dd30
mov rcx, qword [rbx + 0x10]
mov rax, qword [rcx + 0x48]
cmp qword [rcx + 0x40], rax
je 0x1400583f1
mov qword [rsp + 0xb0], r15
mov r15, qword [rbx + 0x58]
test rdi, rdi
je 0x1400583cd
mov qword [rsp + 0xf8], rbp
mov rcx, rdi
mov qword [rsp + 0xb8], rsi
mov rsi, rdi
nop word [rax + rax]
cmp qword [rbx + 0x60], rcx
mov rdx, qword [rbx + 0x18]
cmovb rsi, qword [rbx + 0x60]
mov rcx, qword [rbx + 0x10]
mov rbp, rsi
mov r8, rsi
imul rbp, r15
call fcn.1400572b0
mov rcx, qword [rbx + 0x20]
mov r10, rax
mov qword [rsp + 0x40], rcx
mov r9, rbp
mov qword [rsp + 0x50], r14
mov r8, r14
mov qword [rsp + 0x58], rbp
mov rdx, rbp
movaps xmm1, xmmword [rsp + 0x50]
mov qword [rsp + 0x48], rbp
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x20], xmm0
movdqa xmmword [rsp + 0x30], xmm1
cmp rbp, 0x20
jb 0x140058372
nop dword [rax]
nop dword [rax + rax]
mov rdx, qword [rsp + 0x20]
mov r8, qword [rsp + 0x30]
mov r9, qword [rsp + 0x28]
add r9, 0xffffffffffffffe0
movups xmm1, xmmword [rdx]
mov rax, qword [r8 + 8]
movups xmm3, xmmword [rdx + 0x10]
mov qword [rsp + 0x68], r9
movups xmmword [rsp + 0x80], xmm1
xor qword [rsp + 0x88], rax
mov rax, qword [r8 + 0x18]
movq rcx, xmm1
xor rcx, qword [r8]
mov qword [rsp + 0x80], rcx
movq rcx, xmm3
xor rcx, qword [r8 + 0x10]
add r8, 0x20
movups xmm0, xmmword [rsp + 0x80]
mov qword [rsp + 0x70], r8
movups xmmword [rsp + 0x90], xmm3
xor qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x38]
movups xmmword [rdx], xmm0
mov qword [rsp + 0x90], rcx
add rax, 0xffffffffffffffe0
mov qword [rsp + 0x78], rax
lea rcx, [rdx + 0x20]
mov qword [rsp + 0x60], rcx
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x20], xmm0
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x30], xmm0
movups xmm1, xmmword [rsp + 0x90]
movups xmmword [rdx + 0x10], xmm1
cmp r9, 0x20
jae 0x1400582b0
mov rdx, r9
test r9, r9
je 0x140058391
sub r8, rcx
nop word [rax + rax]
movzx eax, byte [rcx + r8]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x140058380
mov rcx, qword [rbx + 8]
mov r9, rsi
mov r8, r10
mov rdx, r14
mov rax, qword [rcx]
call qword [rax + 0x58]
add qword [rbx + 0x18], rsi
sub rdi, rsi
add r14, rbp
mov rcx, rdi
mov rsi, rdi
test rdi, rdi
jne 0x140058240
mov rsi, qword [rsp + 0xb8]
mov rbp, qword [rsp + 0xf8]
mov r15, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0xa0]
xor rcx, rsp
call fcn.140092a00
add rsp, 0xc0
pop r14
pop rdi
pop rbx
ret
lea r8, str.src_lib_modes_aead_ocb_ocb.cpp
lea rdx, str.encrypt
lea rcx, str.m_L__initialized__
call fcn.14000e420
int3
Function at 0x14005d800
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x30
mov rsi, r8
mov rdi, rdx
cmp rdx, 0x10
jne 0x14005d88b
movups xmm0, xmmword [rcx]
mov r9d, 1
movups xmmword [rsp + 0x20], xmm0
cmp r9, r8
jae 0x14005d8bf
lea r10, [rcx + 0x20]
mov rax, qword [rsp + 0x28]
lea r10, [r10 + 0x10]
mov rdx, qword [rsp + 0x20]
mov r8, rax
shr r8, 0x3f
add rax, rax
neg r8
mov rcx, rdx
shr rcx, 0x3f
and r8d, 0x87
xor rcx, rax
inc r9
mov qword [rsp + 0x28], rcx
lea rax, [rdx + rdx]
xor r8, rax
mov qword [rsp + 0x20], r8
movups xmm0, xmmword [rsp + 0x20]
movups xmmword [r10 - 0x20], xmm0
cmp r9, rsi
jb 0x14005d831
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret
cmp rsi, 1
jbe 0x14005d8bf
mov qword [rsp + 0x40], rbx
dec rsi
lea rbx, [rcx + rdx]
nop dword [rax]
mov rdx, rbx
mov r8, rdi
sub rdx, rdi
mov rcx, rbx
call fcn.14005d290
add rbx, rdi
sub rsi, 1
jne 0x14005d8a0
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret

Function at 0x14005f520
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rdi
push r14
sub rsp, 0x20
mov rdi, qword [rdx + 8]
mov r14, rdx
mov rbx, rcx
lea rax, [rdi - 1]
cmp rax, 0xf
ja 0x14005f65a
mov rax, qword [rcx]
mov qword [rsp + 0x30], rsi
call qword [rax + 0x20]
test al, al
jne 0x14005f55f
mov rcx, rbx
call fcn.14000dd30
mov r9, qword [rbx + 0xa0]
lea rsi, [rbx + 0x38]
mov r8, qword [rbx + 0x98]
mov rdx, rsi
mov rcx, rbx
call fcn.14005f280
xor eax, eax
cmp rdi, 8
jb 0x14005f602
mov rdx, qword [r14]
lea r8, [rdi - 1]
mov r9, qword [rsi]
lea rcx, [rdi - 1]
mov r11, qword [rbx + 0x50]
lea r10, [rbx + 0x50]
add r8, rdx
add rcx, r9
cmp rdx, rcx
ja 0x14005f5ae
cmp r8, r9
jae 0x14005f602
lea rcx, [rdi - 1]
add rcx, r11
cmp rdx, rcx
ja 0x14005f5bf
cmp r8, r11
jae 0x14005f602
cmp rdx, rsi
ja 0x14005f5c9
cmp r8, rsi
jae 0x14005f602
cmp rdx, r10
ja 0x14005f5d3
cmp r8, r10
jae 0x14005f602
mov r8, qword [rbx + 0x50]
mov rcx, rdi
and rcx, 0xfffffffffffffff8
nop
movq xmm1, qword [r9 + rax]
movq xmm0, qword [r8 + rax]
xorps xmm1, xmm0
movq qword [rdx + rax], xmm1
add rax, 8
cmp rax, rcx
jne 0x14005f5e0
cmp rax, rdi
je 0x14005f62b
mov r8, qword [r14]
nop word [rax + rax]
mov rdx, qword [rbx + 0x38]
mov rcx, qword [rbx + 0x50]
movzx edx, byte [rdx + rax]
xor dl, byte [rax + rcx]
mov byte [r8 + rax], dl
inc rax
cmp rax, rdi
jne 0x14005f610
mov rax, qword [rbx + 0x38]
mov rsi, qword [rsp + 0x30]
cmp rax, qword [rbx + 0x40]
je 0x14005f63e
mov qword [rbx + 0x40], rax
mov rdi, qword [rsp + 0x40]
mov qword [rbx + 0xa0], 0
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop r14
ret
lea r8, str.src_lib_utils_ghash_ghash.cpp
lea rdx, str.final
lea rcx, str.GHASH_output_length
call fcn.14000e380
int3