joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140162c90
Capabilities:
Hash data using sha256

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x50
mov rbx, rcx
mov qword [rsp + 0x30], rcx
mov byte [rsp + 0x20], 8
mov r8b, 1
mov edx, 0x40
call fcn.1401831c0
nop
lea rax, vtable.Botan::SHA_256.0
mov qword [rbx], rax
xor edi, edi
mov qword [rbx + 0x38], rdi
mov qword [rbx + 0x40], rdi
mov qword [rbx + 0x48], rdi
lea edx, [rdi + 4]
lea ecx, [rdi + 8]
call fcn.140371340
test rax, rax
je 0x140162d84
mov qword [rbx + 0x38], rax
add rax, 0x20
mov qword [rbx + 0x48], rax
mov rax, qword [rbx + 0x38]
lea rcx, [rax + 0x20]
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
mov qword [rbx + 0x40], rcx
mov rcx, qword [rbx + 0x18]
mov r8, qword [rbx + 0x20]
sub r8, rcx
je 0x140162d17
xor edx, edx
call fcn.14035c350
mov qword [rbx + 0x30], rdi
mov qword [rbx + 0x10], rdi
mov rax, qword [rbx + 0x38]
mov dword [rax], 0x6a09e667
mov rax, qword [rbx + 0x38]
mov dword [rax + 4], 0xbb67ae85
mov rax, qword [rbx + 0x38]
mov dword [rax + 8], 0x3c6ef372
mov rax, qword [rbx + 0x38]
mov dword [rax + 0xc], 0xa54ff53a
mov rax, qword [rbx + 0x38]
mov dword [rax + 0x10], 0x510e527f
mov rcx, qword [rbx + 0x38]
mov dword [rcx + 0x14], 0x9b05688c
mov rcx, qword [rbx + 0x38]
mov dword [rcx + 0x18], 0x1f83d9ab
mov rcx, qword [rbx + 0x38]
mov dword [rcx + 0x1c], 0x5be0cd19
mov rax, rbx
mov rbx, qword [rsp + 0x68]
add rsp, 0x50
pop rdi
ret
lea rcx, [rsp + 0x38]
call fcn.140160250
lea rdx, [0x140669ad8]
lea rcx, [rsp + 0x38]
call fcn.14035c4f0
int3
Function at 0x140162e30
Capabilities:
Hash data using sha384

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x50
mov rbx, rcx
mov qword [rsp + 0x30], rcx
mov byte [rsp + 0x20], 0x10
mov r8b, 1
mov edx, 0x80
call fcn.1401831c0
nop
lea rax, vtable.Botan::SHA_384.0
mov qword [rbx], rax
xor edi, edi
mov qword [rbx + 0x38], rdi
mov qword [rbx + 0x40], rdi
mov qword [rbx + 0x48], rdi
mov edx, 8
mov ecx, edx
call fcn.140371340
test rax, rax
je 0x140162f65
mov qword [rbx + 0x38], rax
add rax, 0x40
mov qword [rbx + 0x48], rax
mov rax, qword [rbx + 0x38]
lea rcx, [rax + 0x40]
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
mov qword [rbx + 0x40], rcx
mov rcx, qword [rbx + 0x18]
mov r8, qword [rbx + 0x20]
sub r8, rcx
je 0x140162ec0
xor edx, edx
call fcn.14035c350
mov qword [rbx + 0x30], rdi
mov qword [rbx + 0x10], rdi
mov rax, qword [rbx + 0x38]
movabs rcx, 0xcbbb9d5dc1059ed8
mov qword [rax], rcx
mov rax, qword [rbx + 0x38]
movabs rcx, 0x629a292a367cd507
mov qword [rax + 8], rcx
mov rax, qword [rbx + 0x38]
movabs rcx, 0x9159015a3070dd17
mov qword [rax + 0x10], rcx
mov rax, qword [rbx + 0x38]
movabs rcx, 0x152fecd8f70e5939
mov qword [rax + 0x18], rcx
mov rax, qword [rbx + 0x38]
movabs rcx, 0x67332667ffc00b31
mov qword [rax + 0x20], rcx
mov rcx, qword [rbx + 0x38]
movabs rax, 0x8eb44a8768581511
mov qword [rcx + 0x28], rax
mov rcx, qword [rbx + 0x38]
movabs rax, 0xdb0c2e0d64f98fa7
mov qword [rcx + 0x30], rax
mov rcx, qword [rbx + 0x38]
movabs rax, 0x47b5481dbefa4fa4
mov qword [rcx + 0x38], rax
mov rax, rbx
mov rbx, qword [rsp + 0x68]
add rsp, 0x50
pop rdi
ret
lea rcx, [rsp + 0x38]
call fcn.140160250
lea rdx, [0x140669ad8]
lea rcx, [rsp + 0x38]
call fcn.14035c4f0
int3
Function at 0x1401630d0
Capabilities:
Hash data using sha512

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x50
mov rbx, rcx
mov qword [rsp + 0x30], rcx
mov byte [rsp + 0x20], 0x10
mov r8b, 1
mov edx, 0x80
call fcn.1401831c0
nop
lea rax, vtable.Botan::SHA_512.0
mov qword [rbx], rax
xor edi, edi
mov qword [rbx + 0x38], rdi
mov qword [rbx + 0x40], rdi
mov qword [rbx + 0x48], rdi
mov edx, 8
mov ecx, edx
call fcn.140371340
test rax, rax
je 0x140163205
mov qword [rbx + 0x38], rax
add rax, 0x40
mov qword [rbx + 0x48], rax
mov rax, qword [rbx + 0x38]
lea rcx, [rax + 0x40]
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
mov qword [rbx + 0x40], rcx
mov rcx, qword [rbx + 0x18]
mov r8, qword [rbx + 0x20]
sub r8, rcx
je 0x140163160
xor edx, edx
call fcn.14035c350
mov qword [rbx + 0x30], rdi
mov qword [rbx + 0x10], rdi
mov rax, qword [rbx + 0x38]
movabs rcx, 0x6a09e667f3bcc908
mov qword [rax], rcx
mov rax, qword [rbx + 0x38]
movabs rcx, 0xbb67ae8584caa73b
mov qword [rax + 8], rcx
mov rax, qword [rbx + 0x38]
movabs rcx, 0x3c6ef372fe94f82b
mov qword [rax + 0x10], rcx
mov rax, qword [rbx + 0x38]
movabs rcx, 0xa54ff53a5f1d36f1
mov qword [rax + 0x18], rcx
mov rax, qword [rbx + 0x38]
movabs rcx, 0x510e527fade682d1
mov qword [rax + 0x20], rcx
mov rcx, qword [rbx + 0x38]
movabs rax, 0x9b05688c2b3e6c1f
mov qword [rcx + 0x28], rax
mov rcx, qword [rbx + 0x38]
movabs rax, 0x1f83d9abfb41bd6b
mov qword [rcx + 0x30], rax
mov rcx, qword [rbx + 0x38]
movabs rax, 0x5be0cd19137e2179
mov qword [rcx + 0x38], rax
mov rax, rbx
mov rbx, qword [rsp + 0x68]
add rsp, 0x50
pop rdi
ret
lea rcx, [rsp + 0x38]
call fcn.140160250
lea rdx, [0x140669ad8]
lea rcx, [rsp + 0x38]
call fcn.14035c4f0
int3
Function at 0x1401651a0
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x10
mov rax, qword [0x140672360]
xor rax, rsp
mov qword [rsp], rax
mov rsi, rcx
mov qword [rsp + 0x38], rbp
mov rcx, qword [rsp + 0x50]
mov rbp, r8
cmp rcx, r8
mov rbx, r9
mov r10, r8
mov rdi, rdx
cmovb rbp, rcx
xor r11d, r11d
mov qword [rsi], r11
test rbp, rbp
je 0x14016525a
mov qword [rsp + 0x40], r14
mov r14, rbx
mov qword [rsp + 0x48], r15
mov r15, rdx
sub r15, rbx
nop dword [rax]
nop dword [rax + rax]
mov r8, qword [r15 + r14]
lea r14, [r14 + 8]
mov rax, r8
mov r9, r8
sub rax, qword [r14 - 8]
xor r9, qword [r14 - 8]
xor rax, r8
or rax, r9
xor rax, r8
shr rax, 0x3f
lea r8, [r9 - 1]
neg rax
shr r8, 0x3f
not r9
shr r9, 0x3f
mov rdx, rax
xor rdx, qword [rsi]
and r8, r9
neg r8
and r8, rdx
xor r8, rax
mov qword [rsi], r8
sub rbp, 1
jne 0x140165200
mov r15, qword [rsp + 0x48]
mov r14, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x38]
cmp r10, rcx
jae 0x1401652e9
mov rax, rcx
sub rax, r10
cmp rax, 4
jb 0x1401652c0
and eax, 3
mov rdx, rcx
sub rdx, rax
xorps xmm2, xmm2
xorps xmm1, xmm1
movdqu xmm0, xmmword [rbx + r10*8]
por xmm2, xmm0
movdqu xmm0, xmmword [rbx + r10*8 + 0x10]
add r10, 4
por xmm1, xmm0
cmp r10, rdx
jne 0x140165283
por xmm1, xmm2
movdqa xmm0, xmm1
psrldq xmm0, 8
por xmm1, xmm0
movq r11, xmm1
cmp r10, rcx
je 0x1401652cc
nop dword [rax]
or r11, qword [rbx + r10*8]
inc r10
cmp r10, rcx
jne 0x1401652c0
lea rcx, [r11 - 1]
not r11
shr rcx, 0x3f
shr r11, 0x3f
and rcx, r11
dec rcx
or qword [rsi], rcx
jmp 0x140165374
jbe 0x140165374
mov rax, r10
sub rax, rcx
cmp rax, 4
jb 0x140165350
and eax, 3
mov rdx, r10
sub rdx, rax
xorps xmm2, xmm2
xorps xmm1, xmm1
nop word [rax + rax]
movdqu xmm0, xmmword [rdi + rcx*8]
por xmm2, xmm0
movdqu xmm0, xmmword [rdi + rcx*8 + 0x10]
add rcx, 4
por xmm1, xmm0
cmp rcx, rdx
jne 0x140165310
por xmm1, xmm2
movdqa xmm0, xmm1
psrldq xmm0, 8
por xmm1, xmm0
movq r11, xmm1
cmp rcx, r10
je 0x14016535c
nop word [rax + rax]
or r11, qword [rdi + rcx*8]
inc rcx
cmp rcx, r10
jne 0x140165350
lea rax, [r11 - 1]
not r11
shr rax, 0x3f
shr r11, 0x3f
and rax, r11
neg rax
and qword [rsi], rax
mov rax, rsi
mov rcx, qword [rsp]
xor rcx, rsp
call fcn.140359070
add rsp, 0x10
pop rdi
pop rsi
pop rbx
ret
Function at 0x140177ef0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x50
mov rax, qword [0x140672360]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov rdi, rdx
mov r14, rcx
mov qword [rsp + 0x20], rdx
lea rdx, [rsp + 0x28]
mov rcx, r8
call fcn.1401693d0
nop
mov qword [rsp + 0x20], r14
mov rcx, r14
call fcn.140333cc8
test eax, eax
jne 0x1401780f5
lea r8, [rsp + 0x28]
mov r15, qword [rsp + 0x28]
mov r12, qword [rsp + 0x40]
cmp r12, 0x10
cmovae r8, r15
movabs rdx, 0xcbf29ce484222325
xor ecx, ecx
mov rsi, qword [rsp + 0x38]
test rsi, rsi
je 0x140177f94
movabs r9, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [rcx + r8]
xor rdx, rax
imul rdx, r9
inc rcx
cmp rcx, rsi
jb 0x140177f80
mov rcx, qword [r14 + 0xc0]
and rcx, rdx
add rcx, rcx
mov rax, qword [r14 + 0xa8]
mov rbx, qword [rax + rcx*8 + 8]
cmp rbx, qword [r14 + 0x98]
je 0x14017808d
mov rbp, qword [rax + rcx*8]
nop
lea rdx, [rbx + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x140177fd2
mov rdx, qword [rdx]
lea rcx, [rsp + 0x28]
cmp r12, 0x10
cmovae rcx, r15
cmp rsi, rax
jne 0x140177ff0
mov r8, rsi
call fcn.14035bb80
test eax, eax
je 0x140177fff
cmp rbx, rbp
je 0x14017808d
mov rbx, qword [rbx + 8]
jmp 0x140177fc0
test rbx, rbx
je 0x14017808d
cmp rbx, qword [r14 + 0x98]
je 0x14017808d
lea rdx, [rbx + 0x30]
mov rcx, rdi
call fcn.140072c20
nop
mov rcx, r14
call fcn.140333cec
nop
mov rdx, qword [rsp + 0x40]
cmp rdx, 0x10
jb 0x140178064
inc rdx
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14017805f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401780fd
call fcn.140359090
mov rax, rdi
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.140359070
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
xor eax, eax
mov qword [rdi], rax
mov qword [rdi + 0x10], rax
mov qword [rdi + 0x18], 0xf
mov byte [rdi], al
xor r8d, r8d
lea rdx, [0x1405e4ea8]
mov rcx, rdi
call fcn.140073120
nop
mov rcx, r14
call fcn.140333cec
nop
mov rdx, qword [rsp + 0x40]
cmp rdx, 0x10
jb 0x140178064
inc rdx
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14017805f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401780fd
jmp 0x14017805f
mov ecx, eax
call fcn.140333d14
nop
call fcn.140368068
int3
Function at 0x1401785a0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
sub rsp, 0x40
mov rdi, rdx
mov rbx, rcx
mov qword [rsp + 0x20], rcx
call fcn.140178110
mov rsi, rax
mov qword [rsp + 0x20], rax
mov rcx, rax
call fcn.140333cc8
test eax, eax
jne 0x140178680
mov rdx, rdi
cmp qword [rdi + 0x18], 0x10
jb 0x1401785e1
mov rdx, qword [rdi]
movabs r9, 0xcbf29ce484222325
mov r8, qword [rdi + 0x10]
xor ecx, ecx
test r8, r8
je 0x140178613
movabs r10, 0x100000001b3
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, r10
inc rcx
cmp rcx, r8
jb 0x140178600
mov r8, rdi
lea rdx, [rsp + 0x28]
lea rcx, [rsi + 0x50]
call fcn.1401ca2e0
mov rdx, qword [rax + 8]
test rdx, rdx
jne 0x140178631
mov rdx, qword [rsi + 0x58]
lea rax, vtable.Botan::OID.0
cmp rdx, qword [rsi + 0x58]
mov qword [rbx], rax
je 0x140178650
add rdx, 0x38
lea rcx, [rbx + 8]
call fcn.14013a660
jmp 0x140178668
mov qword [rbx + 8], 0
mov qword [rbx + 0x10], 0
mov qword [rbx + 0x18], 0
mov rcx, rsi
call fcn.140333cec
mov rax, rbx
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
mov ecx, eax
call fcn.140333d14
int3

Function at 0x14017a670
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x28
mov r9, rdx
mov rdx, rcx
mov eax, dword [r9 + 0x20]
cmp eax, 1
jne 0x14017a693
cmp dword [rcx + 0x20], 0
jne 0x14017a6d0
mov eax, 0xffffffff
add rsp, 0x28
ret
test eax, eax
jne 0x14017a6d0
mov eax, dword [rcx + 0x20]
cmp eax, 1
jne 0x14017a6a4
add rsp, 0x28
ret
test eax, eax
jne 0x14017a6d0
mov r8, qword [r9]
mov r9, qword [r9 + 8]
mov rdx, qword [rdx + 8]
sub r9, r8
mov rcx, qword [rcx]
sub rdx, rcx
sar r9, 3
sar rdx, 3
call fcn.140164fc0
neg eax
add rsp, 0x28
ret
mov r8, qword [r9]
mov r9, qword [r9 + 8]
mov rdx, qword [rdx + 8]
sub r9, r8
mov rcx, qword [rcx]
sub rdx, rcx
sar r9, 3
sar rdx, 3
add rsp, 0x28
jmp fcn.140164fc0
Function at 0x14017aaa0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x90
mov r12, r8
mov r13, rdx
mov rdi, rcx
cmp dword [rdx + 0x20], 0
je 0x14017ace1
cmp dword [rcx + 0x20], 0
je 0x14017ace1
mov rcx, rdx
call fcn.1401611b0
mov r15, rax
mov rax, qword [rdi]
mov rcx, qword [rdi + 8]
sub rcx, rax
sar rcx, 3
cmp r15, rcx
jbe 0x14017ab1d
mov rcx, qword [rdi + 0x10]
sub rcx, rax
sar rcx, 3
lfence
mov rdx, r15
cmp r15, rcx
mov rcx, rdi
jbe 0x14017ab18
mov rax, r15
and eax, 7
sub rdx, rax
add rdx, 8
call fcn.1401c3bc0
mov rbx, qword [rdi + 8]
sub rbx, qword [rdi]
sar rbx, 3
mov rdx, rbx
mov rcx, r12
call fcn.1401c3bc0
lea r8, [rbx*8]
test r8, r8
je 0x14017ab4b
xor edx, edx
mov rcx, qword [r12]
call fcn.14035c350
mov r14d, 2
mov qword [rsp + 0x20], r15
mov r9, qword [r13]
mov r8, rbx
mov rdx, qword [rdi]
mov rcx, qword [r12]
call fcn.1401644c0
mov qword [rdi + 0x18], 0xffffffffffffffff
mov r8, qword [rdi]
lea r10, [rax - 1]
shr r10, 0x3f
not rax
shr rax, 0x3f
and r10, rax
neg r10
movq xmm3, r10
punpcklqdq xmm3, xmm3
mov rcx, qword [r12]
xor edx, edx
test rbx, rbx
je 0x14017acbc
cmp rbx, 8
jb 0x14017ac87
lea r9, [r8 - 8]
lea r9, [r9 + rbx*8]
lea rax, [rcx - 8]
lea rax, [rax + rbx*8]
cmp r8, rax
ja 0x14017abc9
cmp r9, rcx
jae 0x14017ac87
cmp r8, r9
jbe 0x14017ac87
mov rax, rbx
and eax, 7
mov rsi, rbx
sub rsi, rax
lea r11, [rcx + 0x10]
mov rax, r8
sub rax, rcx
mov r9, r8
sub r9, rcx
nop
movdqu xmm0, xmmword [r11 + rax - 0x10]
movdqu xmm1, xmmword [r11 - 0x10]
pxor xmm1, xmm0
pand xmm1, xmm3
pxor xmm1, xmm0
movdqu xmmword [r11 + r9 - 0x10], xmm1
movdqu xmm2, xmmword [r11 + rax]
movdqu xmm0, xmmword [r11]
movdqa xmm1, xmm2
pxor xmm1, xmm0
pand xmm1, xmm3
pxor xmm1, xmm2
movdqu xmmword [r11 + r9], xmm1
movdqu xmm0, xmmword [r11 + rax + 0x10]
movdqu xmm1, xmmword [r11 + 0x10]
pxor xmm1, xmm0
pand xmm1, xmm3
pxor xmm1, xmm0
movdqu xmmword [r11 + r9 + 0x10], xmm1
movdqu xmm0, xmmword [r11 + rax + 0x20]
movdqu xmm1, xmmword [r11 + 0x20]
pxor xmm1, xmm0
pand xmm1, xmm3
pxor xmm1, xmm0
movdqu xmmword [r11 + r9 + 0x20], xmm1
add rdx, 8
lea r11, [r11 + 0x40]
cmp rdx, rsi
jne 0x14017abf0
cmp rdx, rbx
je 0x14017acbc
lea rax, [rcx + rdx*8]
mov r11, r8
sub r11, rcx
sub r8, rcx
mov r9, rbx
sub r9, rdx
nop word [rax + rax]
mov rdx, qword [rax + r11]
xor rdx, qword [rax]
and rdx, r10
xor rdx, qword [rax + r11]
mov qword [rax + r8], rdx
lea rax, [rax + 8]
sub r9, 1
jne 0x14017aca0
sub r14, 1
jne 0x14017ab51
mov rbx, qword [rsp + 0xe8]
add rsp, 0x90
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea rdx, str.BigInt::ct_reduce_below_both_values_must_be_positive
lea rcx, [rsp + 0x30]
call fcn.140073260
nop
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1401c04a0
lea rdx, [0x1406695a0]
lea rcx, [rsp + 0x50]
call fcn.14035c4f0
int3
Function at 0x14017aff0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov r9, qword [r8 + 8]
mov rsi, rcx
sub r9, qword [r8]
mov rdi, r8
mov rcx, qword [rcx]
sar r9, 3
mov rax, qword [rsi + 8]
sub rax, rcx
movzx ebp, dl
sar rax, 3
cmp rax, r9
mov rbx, rax
cmovb rbx, r9
cmp rbx, rax
jbe 0x14017b05b
mov rax, qword [rsi + 0x10]
sub rax, rcx
sar rax, 3
lfence
mov rdx, rbx
mov rcx, rsi
cmp rbx, rax
jbe 0x14017b056
and rdx, 0xfffffffffffffff8
add rdx, 8
call fcn.1401c3bc0
mov rcx, qword [rdi]
mov rax, qword [rdi + 8]
sub rax, rcx
sar rax, 3
cmp rbx, rax
jbe 0x14017b094
mov rax, qword [rdi + 0x10]
sub rax, rcx
sar rax, 3
lfence
mov rdx, rbx
mov rcx, rdi
cmp rbx, rax
jbe 0x14017b08f
and rdx, 0xfffffffffffffff8
add rdx, 8
call fcn.1401c3bc0
mov r8, qword [rdi]
mov rcx, rbp
mov qword [rdi + 0x18], 0xffffffffffffffff
mov r9, rbx
mov rdx, qword [rsi]
mov qword [rsi + 0x18], 0xffffffffffffffff
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp fcn.140163550
Function at 0x14017cff0
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x80
mov rax, qword [0x140672360]
xor rax, rsp
mov qword [rsp + 0x70], rax
mov rbp, r9
mov r15, r8
mov r12, rdx
mov rbx, rcx
mov qword [rsp + 0x38], rcx
mov r14, qword [rsp + 0xe0]
mov r10, qword [r14 + 8]
sub r10, qword [r14]
lea r11, [r10 + r10]
lea rcx, [r11 + 1]
cmp r9, rcx
jae 0x14017d050
xor eax, eax
mov qword [rbx], rax
mov qword [rbx + 8], rax
mov qword [rbx + 0x10], rax
jmp 0x14017d1cd
lfence
mov dil, 0xff
xor dl, dl
mov rsi, r11
cmp r11, rbp
jae 0x14017d0b9
movzx r8d, byte [rsi + r15]
lea ecx, [r8 - 1]
shr cl, 7
movzx eax, r8b
not al
shr al, 7
and cl, al
neg cl
xor r8b, 1
lea eax, [r8 - 1]
shr al, 7
not r8b
shr r8b, 7
and al, r8b
neg al
movzx r8d, cl
and r8b, dil
movzx r9d, r8b
or al, cl
not al
and al, dil
or dl, al
mov eax, r9d
and eax, 1
add r11, rax
movzx edi, r9b
inc rsi
cmp rsi, rbp
jb 0x14017d060
or dl, dil
mov rax, qword [r14]
mov byte [rsp + 0x30], 0
test r10, r10
je 0x14017d0fe
mov r8, r10
sub r8, rax
add r8, r15
nop dword [rax]
nop word [rax + rax]
movzx edi, byte [r8 + rax]
xor dil, byte [rax]
movzx ecx, byte [rsp + 0x30]
or cl, dil
mov byte [rsp + 0x30], cl
lea rax, [rax + 1]
sub r10, 1
jne 0x14017d0e0
movzx eax, byte [rsp + 0x30]
lea ecx, [rax - 1]
shr cl, 7
not al
shr al, 7
and cl, al
neg cl
lea eax, [rcx - 1]
shr al, 7
not cl
shr cl, 7
and al, cl
neg al
or dl, al
inc r11
movzx eax, dl
not al
mov byte [r12], al
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x20], r11
mov r9, rbp
mov r8, r15
lea rcx, [rsp + 0x58]
call fcn.1401bfdb0
nop
xor eax, eax
mov qword [rbx], rax
mov qword [rbx + 8], rax
mov qword [rbx + 0x10], rax
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x60]
cmp rsi, r14
je 0x14017d1b1
mov rbp, r14
sub rbp, rsi
je 0x14017d188
lea edx, [rax + 1]
mov rcx, rbp
call fcn.140371340
test rax, rax
je 0x14017d1ef
mov qword [rbx], rax
mov qword [rbx + 8], rax
add rax, rbp
mov qword [rbx + 0x10], rax
mov rdi, qword [rbx]
mov r8, rbp
mov rdx, rsi
mov rcx, rdi
call fcn.14035bc80
sub r14, rsi
add r14, rdi
mov qword [rbx + 8], r14
test rsi, rsi
je 0x14017d1cd
mov rcx, qword [rsp + 0x68]
sub rcx, rsi
mov rdi, rsi
xor eax, eax
rep stosb byte [rdi], al
mov rcx, rsi
call fcn.1403683a0
mov rax, rbx
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.140359070
add rsp, 0x80
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
lea rcx, [rsp + 0x40]
call fcn.140160250
lea rdx, [0x140669ad8]
lea rcx, [rsp + 0x40]
call fcn.14035c4f0
int3
Function at 0x140183150
Capabilities:
Hash data with md5

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov rcx, qword [rcx + 0x18]
mov r8, qword [rbx + 0x20]
sub r8, rcx
je 0x14018316d
xor edx, edx
call fcn.14035c350
xor eax, eax
mov qword [rbx + 0x30], rax
mov qword [rbx + 0x10], rax
mov rcx, qword [rbx + 0x38]
mov r8, qword [rbx + 0x40]
sub r8, rcx
and r8, 0xfffffffffffffffc
je 0x14018318f
xor edx, edx
call fcn.14035c350
mov rax, qword [rbx + 0x50]
mov dword [rax], 0x67452301
mov rax, qword [rbx + 0x50]
mov dword [rax + 4], 0xefcdab89
mov rax, qword [rbx + 0x50]
mov dword [rax + 8], 0x98badcfe
mov rax, qword [rbx + 0x50]
mov dword [rax + 0xc], 0x10325476
add rsp, 0x20
pop rbx
ret
Function at 0x140183640
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x17]
sub rsp, 0xa8
mov rax, qword [0x140672360]
xor rax, rsp
mov qword [rbp + 7], rax
mov rbx, r9
mov r13, r8
mov r12, rdx
mov r15, rcx
xor edi, edi
mov r14d, edi
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x19], xmm0
mov qword [rbp - 9], rax
mov rax, qword [rcx]
mov rax, qword [rax]
call qword [case.0x1401cd220.0]
mov rsi, rax
mov qword [rbp - 0x19], rdi
mov qword [rbp - 0x11], rdi
mov qword [rbp - 9], rdi
test rax, rax
je 0x1401836ec
movabs rax, 0x7fffffffffffffff
cmp rsi, rax
ja 0x140183869
lfence
lea edx, [rdi + 1]
mov rcx, rsi
call fcn.140371340
test rax, rax
je 0x14018384f
mov qword [rbp - 0x19], rax
lea rdi, [rax + rsi]
mov qword [rbp - 9], rdi
mov r8, rsi
xor edx, edx
mov rcx, rax
call fcn.14035c350
mov qword [rbp - 0x11], rdi
mov rsi, qword [rbp + 0x7f]
test rsi, rsi
je 0x140183810
nop dword [rax]
mov rax, qword [r15]
mov r8, r13
mov rdx, r12
mov rcx, r15
mov rax, qword [rax + 0x10]
call qword [case.0x1401cd220.0]
mov eax, r14d
bswap eax
mov dword [rbp - 1], eax
mov rax, qword [r15]
mov r8d, 4
lea rdx, [rbp - 1]
mov rcx, r15
mov rax, qword [rax + 0x10]
call qword [case.0x1401cd220.0]
mov rax, qword [r15]
mov rdx, qword [rbp - 0x19]
mov rcx, r15
mov rax, qword [rax + 0x18]
call qword [case.0x1401cd220.0]
mov r10, qword [rbp - 0x11]
mov r8, qword [rbp - 0x19]
sub r10, r8
cmp rsi, r10
cmovb r10, rsi
mov rdi, r10
and edi, 0x1f
mov r9, r10
sub r9, rdi
je 0x1401837e2
mov rcx, rbx
mov rdx, r8
nop dword [rax]
nop word [rax + rax]
movups xmm0, xmmword [rcx]
movups xmmword [rbp - 0x71], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rbp - 0x61], xmm1
movups xmm0, xmmword [rdx]
movups xmmword [rbp - 0x51], xmm0
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rbp - 0x41], xmm1
xor eax, eax
movdqu xmm1, xmmword [rbp + rax - 0x51]
movdqu xmm0, xmmword [rbp + rax - 0x71]
pxor xmm1, xmm0
movdqu xmmword [rbp + rax - 0x71], xmm1
add rax, 0x10
cmp rax, 0x20
jl 0x1401837a0
movups xmm0, xmmword [rbp - 0x71]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rbp - 0x61]
movups xmmword [rcx + 0x10], xmm1
add rcx, 0x20
add rdx, 0x20
mov rax, rcx
sub rax, rbx
cmp rax, r9
jne 0x140183780
cmp r9, r10
je 0x140183801
lea rcx, [rbx + r9]
sub r8, rbx
nop
movzx eax, byte [r8 + rcx]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub rdi, 1
jne 0x1401837f0
add rbx, r10
inc r14d
sub rsi, r10
jne 0x140183700
mov r8, qword [rbp - 0x19]
test r8, r8
je 0x14018382f
mov rcx, qword [rbp - 9]
sub rcx, r8
mov rdi, r8
xor eax, eax
rep stosb byte [rdi], al
mov rcx, r8
call fcn.1403683a0
mov rcx, qword [rbp + 7]
xor rcx, rsp
call fcn.140359070
add rsp, 0xa8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
lea rcx, [rbp - 0x31]
call fcn.140160250
lea rdx, [0x140669ad8]
lea rcx, [rbp - 0x31]
call fcn.14035c4f0
int3
call fcn.1400710c0
int3
Function at 0x140183a10
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r14
sub rsp, 0x30
mov rax, qword [0x140672360]
xor rax, rsp
mov qword [rsp + 0x20], rax
mov rsi, rdx
movzx r14d, r9b
sub r14b, r8b
mov rcx, rsi
movzx ebx, r14b
mov rdi, r9
mov edx, ebx
sub rdx, qword [rsi]
add rdx, qword [rsi + 8]
call fcn.1401c4050
mov rcx, qword [rsi + 8]
mov rbp, rcx
sub rcx, qword [rsi]
sub rbp, qword [rsi]
sub rcx, rbx
mov rax, rbp
sub rax, rdi
cmp rax, rbp
je 0x140183abc
mov rbx, rcx
mov r11, rax
shr rbx, 0x3f
sub r11, rcx
nop dword [rax]
nop dword [rax + rax]
mov r10, qword [rsi]
mov rdx, rax
shr rdx, 0x3f
mov r8, r11
shr r8, 0x3f
movzx ecx, dl
xor r8b, dl
xor cl, bl
or r8b, cl
inc r11
movzx ecx, byte [r10 + rax]
xor r8b, dl
dec r8b
xor cl, r14b
and r8b, cl
xor byte [r10 + rax], r8b
inc rax
cmp rax, rbp
jne 0x140183a80
mov rcx, qword [rsp + 0x20]
xor rcx, rsp
call fcn.140359070
add rsp, 0x30
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x140183de0
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r14
sub rsp, 0x30
mov rax, qword [0x140672360]
xor rax, rsp
mov qword [rsp + 0x20], rax
mov rsi, rdx
movzx r14d, r9b
mov rdx, qword [rdx + 8]
sub r14b, r8b
movzx ebx, r14b
mov rcx, rsi
mov rdi, r9
sub rdx, qword [rsi]
add rdx, rbx
call fcn.1401c4050
mov r8, qword [rsi + 8]
mov rax, r8
mov rdx, r8
sub rax, qword [rsi]
sub rdx, qword [rsi]
sub rdx, rbx
lea rbp, [rax - 1]
sub rax, rdi
cmp rax, rbp
je 0x140183e8b
mov r11, rdx
mov r10, rax
shr r11, 0x3f
sub r10, rdx
nop dword [rax]
mov r8, qword [rsi]
mov r9, rax
shr r9, 0x3f
mov rdx, r10
shr rdx, 0x3f
movzx ecx, r9b
xor dl, r9b
xor cl, r11b
or dl, cl
inc r10
xor dl, r9b
neg dl
and byte [r8 + rax], dl
inc rax
cmp rax, rbp
jne 0x140183e50
mov rax, qword [rsi + 8]
mov byte [rax - 1], r14b
jmp 0x140183e8f
mov byte [r8 - 1], r14b
mov rcx, qword [rsp + 0x20]
xor rcx, rsp
call fcn.140359070
add rsp, 0x30
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret