joyce8/EMBER2024-capa huggingface dataset:
Function at 0x5aaab0
Capabilities:
Get local ipv4 addresses
Get socket information

Disassembly:
push rsi
sub rsp, 0xb0
mov rax, rdx
mov rsi, rcx
xorps xmm0, xmm0
movaps xmmword [rsp + 0xa0], xmm0
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x30], xmm0
mov dword [rsp + 0x2c], pe_nt_image_headers64
lea rdx, [rsp + 0x30]
lea r8, [rsp + 0x2c]
mov rcx, rax
call sub.WS2_32.dll_getsockname
cmp eax, 0xffffffff
je 0x5aab5f
mov eax, dword [rsp + 0x2c]
movzx ecx, word [rsp + 0x30]
cmp ecx, 2
je 0x5aab6e
cmp ecx, 0x17
jne 0x5aab95
cmp eax, 0x1b
jbe 0x5aabae
movzx eax, word [rsp + 0x32]
rol ax, 8
movups xmm0, xmmword [rsp + 0x38]
mov ecx, dword [rsp + 0x34]
mov edx, dword [rsp + 0x48]
mov word [rsi], 1
movups xmmword [rsi + 4], xmm0
mov dword [rsi + 0x14], ecx
mov dword [rsi + 0x18], edx
mov word [rsi + 0x1c], ax
add rsp, 0xb0
pop rsi
ret
call sub.WS2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
jmp 0x5aab9c
cmp eax, 0xf
jbe 0x5aabc8
movzx eax, word [rsp + 0x32]
rol ax, 8
mov ecx, dword [rsp + 0x34]
mov word [rsi], 0
mov word [rsi + 6], ax
mov dword [rsi + 2], ecx
add rsp, 0xb0
pop rsi
ret
lea rax, str.invalid_argument01
mov qword [rsi + 8], rax
mov word [rsi], 2
add rsp, 0xb0
pop rsi
ret
lea rcx, str.assertion_failed:_len_as_usize___mem::size_of::_c::sockaddr_in6___
lea r8, [0x00913118]
mov edx, 0x43
call fcn.0044fe30
ud2
lea rcx, str.assertion_failed:_len_as_usize___mem::size_of::_c::sockaddr_in___library_std_src_sys_common_net.rs
lea r8, [0x009130b8]
mov edx, 0x42
call fcn.0044fe30
ud2

Function at 0x5ab640
Capabilities:
Create thread

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x38
mov rdi, r8
mov rbx, rdx
mov r14, rcx
movzx eax, byte [0x009bf181]
mov rcx, qword [0x009bf100]
test rcx, rcx
jne 0x5ab67d
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x5ab72d
mov rcx, rax
mov qword [0x009bf100], rax
mov r8d, 0x10
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x5ab72d
mov rsi, rax
mov qword [rax], rbx
mov qword [rax + 8], rdi
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0x10000
lea r8, [0x005ab7a0]
xor edi, edi
xor ecx, ecx
mov rdx, r14
mov r9, rax
call sub.KERNEL32.dll_CreateThread
mov rdx, rax
test rax, rax
jne 0x5ab720
mov rdi, qword [rsi]
mov rbx, qword [rsi + 8]
mov rcx, rdi
call qword [rbx]
cmp qword [rbx + 8], 0
je 0x5ab6fb
cmp qword [rbx + 0x10], 0x11
jb 0x5ab6ea
mov rdi, qword [rdi - 8]
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, rdi
call sub.KERNEL32.dll_HeapFree
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, rsi
call sub.KERNEL32.dll_HeapFree
call sub.KERNEL32.dll_GetLastError
mov edx, eax
shl rdx, 0x20
or rdx, 2
mov edi, 1
mov rax, rdi
add rsp, 0x38
pop rbx
pop rdi
pop rsi
pop r14
ret
mov ecx, 8
mov edx, 0x10
call fcn.0044dfd0
ud2
Function at 0x5ab8a0
Capabilities:
Generate random numbers via rtlgenrandom

Disassembly:
push rsi
sub rsp, 0x80
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
lea rcx, [rsp + 0x30]
mov edx, 0x10
call sub.ADVAPI32.dll_SystemFunction036
test al, al
je 0x5ab8d6
mov rax, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
add rsp, 0x80
pop rsi
ret
call sub.KERNEL32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x28]
mov qword [rsp + 0x40], rax
lea rax, [fcn.005a5f20]
mov qword [rsp + 0x48], rax
lea rax, str.fallback_RNG_broken:
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 1
mov qword [rsp + 0x70], 0
lea rax, [rsp + 0x40]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], 1
lea rdx, str.library_std_src_syswindows_rand.rs
lea rcx, [rsp + 0x50]
call fcn.0044f0d0
ud2

Function at 0x5b0ac0
Capabilities:
Connect socket

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x40
mov rbx, r8
mov rsi, rcx
test rdx, rdx
je 0x5b0ae2
mov qword [rsi + 8], rbx
mov qword [rsi], 1
jmp 0x5b0bae
mov rax, qword [0x009bf108]
cmp rax, 3
jne 0x5b0bb7
movzx edx, word [rbx]
lea rcx, [rsp + 0x20]
call fcn.005aa360
cmp qword [rsp + 0x20], 0
mov rdi, qword [rsp + 0x28]
je 0x5b0b1d
mov qword [rsi + 8], rdi
mov qword [rsi], 1
jmp 0x5b0bae
cmp word [rbx], 0
je 0x5b0b3e
movups xmm0, xmmword [rbx + 4]
mov eax, dword [rbx + 0x14]
mov edx, dword [rbx + 0x18]
movzx ecx, word [rbx + 0x1c]
mov r8d, 0x1c
mov r9w, 0x17
jmp 0x5b0b53
mov eax, dword [rbx + 2]
movzx ecx, word [rbx + 6]
mov r8d, 0x10
mov r9w, 2
xorps xmm0, xmm0
rol cx, 8
mov word [rsp + 0x20], r9w
mov word [rsp + 0x22], cx
mov dword [rsp + 0x24], eax
movups xmmword [rsp + 0x28], xmm0
mov dword [rsp + 0x38], edx
lea rdx, [rsp + 0x20]
mov rcx, rdi
call sub.WS2_32.dll_connect
cmp eax, 0xffffffff
je 0x5b0b8e
mov qword [rsi + 8], rdi
mov qword [rsi], 0
jmp 0x5b0bae
call sub.WS2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
mov qword [rsi + 8], rax
mov qword [rsi], 1
mov rcx, rdi
call fcn.0060b80c
nop
add rsp, 0x40
pop rbx
pop rdi
pop rsi
ret
call fcn.005a99b0
jmp 0x5b0af3
Function at 0x5b0c10
Capabilities:
Generate random numbers via winapi
Get thread local storage value
Set thread local storage value

Disassembly:
push rsi
sub rsp, 0x30
mov ecx, dword [0x00865148]
test ecx, ecx
je 0x5b0c3d
dec ecx
call sub.KERNEL32.dll_TlsGetValue
cmp rax, 2
jb 0x5b0c56
cmp qword [rax + 8], 0
je 0x5b0c56
add rax, 0x10
add rsp, 0x30
pop rsi
ret
lea rcx, [0x00865130]
call fcn.00585560
mov ecx, eax
call sub.KERNEL32.dll_TlsGetValue
cmp rax, 2
jae 0x5b0c2c
mov ecx, dword [0x00865148]
test ecx, ecx
je 0x5b0d3d
dec ecx
call sub.KERNEL32.dll_TlsGetValue
cmp rax, 1
je 0x5b0d5a
mov rsi, rax
test rax, rax
jne 0x5b0ceb
movzx eax, byte [0x009bf181]
mov rcx, qword [0x009bf100]
test rcx, rcx
jne 0x5b0ca8
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x5b0d75
mov rcx, rax
mov qword [0x009bf100], rax
mov r8d, 0x20
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x5b0d75
mov rsi, rax
lea rax, [0x00865130]
mov qword [rsi], rax
mov qword [rsi + 8], 0
mov ecx, dword [0x00865148]
test ecx, ecx
je 0x5b0d62
dec ecx
mov rdx, rsi
call sub.KERNEL32.dll_TlsSetValue
xorps xmm0, xmm0
movaps xmmword [rsp + 0x20], xmm0
lea rdx, [rsp + 0x20]
xor ecx, ecx
mov r8d, 0x10
mov r9d, 2
call sub.bcrypt.dll_BCryptGenRandom
test eax, eax
js 0x5b0d1b
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
jmp 0x5b0d23
call fcn.005ab8a0
mov rcx, rax
mov qword [rsi + 8], 1
lea rax, [rsi + 0x10]
mov qword [rsi + 0x10], rcx
mov qword [rsi + 0x18], rdx
add rsp, 0x30
pop rsi
ret
lea rcx, [0x00865130]
call fcn.00585560
mov ecx, eax
call sub.KERNEL32.dll_TlsGetValue
cmp rax, 1
jne 0x5b0c75
xor eax, eax
add rsp, 0x30
pop rsi
ret
lea rcx, [0x00865130]
call fcn.00585560
mov ecx, eax
jmp 0x5b0ce3
mov ecx, 8
mov edx, 0x20
call fcn.0044dfd0
ud2
Function at 0x5b7e00
Capabilities:
Set socket configuration

Disassembly:
push rsi
push rdi
sub rsp, 0x38
mov esi, r9d
mov rdi, r8
call qword [rdx + 0xb8]
mov rcx, rax
xor eax, eax
test rcx, rcx
je 0x5b7eb1
mov rcx, qword [rcx]
cmp esi, 0x3b9aca00
je 0x5b7e7a
mov edx, 0x3e8
mov rax, rdi
mul rdx
mov rdx, rax
mov eax, 0xffffffff
jo 0x5b7e7a
mov r8d, esi
imul r8, r8, 0x431bde83
shr r8, 0x32
add rdx, r8
jb 0x5b7e7a
imul r8d, r8d, 0xf4240
xor r9d, r9d
sub esi, r8d
setne r9b
add rdx, r9
jb 0x5b7e7a
mov eax, 0xffffffff
cmp rdx, rax
cmovb rax, rdx
test rax, rax
je 0x5b7eb8
mov dword [rsp + 0x34], eax
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0x34]
mov edx, 0xffff
mov r8d, 0x1006
call sub.WS2_32.dll_setsockopt
cmp eax, 0xffffffff
je 0x5b7ea4
xor eax, eax
jmp 0x5b7eb1
call sub.WS2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
add rsp, 0x38
pop rdi
pop rsi
ret
lea rax, str.cannot_set_a_0_duration_timeout
jmp 0x5b7eb1
Function at 0x5bfa50
Capabilities:
Receive data
Receive data on socket

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x78
movaps xmmword [rsp + 0x60], xmm6
mov rdi, r8
mov qword [rsp + 0x28], rcx
mov al, 1
mov dword [rsp + 0x24], eax
test r9, r9
je 0x5bfaa8
mov rbp, qword [rsp + 0xe0]
add rbp, 0x400
jb 0x5bfab2
mov rax, rbp
and rax, 0x1fff
je 0x5bfaaa
mov ecx, 0x2000
sub rcx, rax
add rbp, rcx
setb al
mov dword [rsp + 0x24], eax
jmp 0x5bfab2
jmp 0x5bfab2
mov dword [rsp + 0x24], 0
mov rax, qword [rdi + 8]
mov qword [rsp + 0x38], rax
mov rax, qword [rdi + 0x10]
mov qword [rsp + 0x30], rax
mov rbx, qword [rdx]
xor esi, esi
xorps xmm6, xmm6
nop dword [rax]
mov r14, qword [rdi + 8]
mov r12, qword [rdi + 0x10]
cmp r12, r14
je 0x5bfbc2
mov rax, r14
sub rax, r12
cmp rax, rbp
mov r13, rbp
cmovb r13, rax
cmp byte [rsp + 0x24], 0
cmovne r13, rax
mov rdx, qword [rdi]
add rdx, r12
cmp r13, 0x7fffffff
mov r8d, 0x7fffffff
cmovb r8, r13
mov rcx, rbx
xor r9d, r9d
call sub.WS2_32.dll_recv
cmp eax, 0xffffffff
je 0x5bfbe0
movsxd rcx, eax
cmp rsi, rcx
cmovbe rsi, rcx
test rcx, rcx
je 0x5bfbec
mov r15, rsi
sub r15, rcx
jb 0x5bfc6e
cmp rsi, r13
ja 0x5bfc7f
add r12, rcx
mov qword [rdi + 0x10], r12
mov rsi, r15
cmp r12, r14
jne 0x5bfad0
mov rsi, r15
cmp r14, qword [rsp + 0x38]
jne 0x5bfad0
movaps xmmword [rsp + 0x50], xmm6
movaps xmmword [rsp + 0x40], xmm6
mov rcx, rbx
lea rdx, [rsp + 0x40]
mov r8d, 0x20
xor r9d, r9d
call sub.WS2_32.dll_recv
cmp eax, 0xffffffff
je 0x5bfc1d
movsxd r8, eax
test r8, r8
je 0x5bfc29
cmp r8, 0x21
jae 0x5bfc93
mov rcx, rdi
lea rdx, [rsp + 0x40]
call fcn.005e5370
mov rsi, r15
jmp 0x5bfad0
mov r8d, 0x20
mov rcx, rdi
mov rdx, r12
call fcn.004097c0
mov r14, qword [rdi + 8]
mov r12, qword [rdi + 0x10]
jmp 0x5bfae1
call sub.WS2_32.dll_WSAGetLastError
cmp eax, 0x274a
jne 0x5bfc03
sub r12, qword [rsp + 0x30]
mov rax, qword [rsp + 0x28]
mov qword [rax + 8], r12
mov qword [rax], 0
jmp 0x5bfc58
shl rax, 0x20
or rax, 2
mov rcx, qword [rsp + 0x28]
mov qword [rcx + 8], rax
mov qword [rcx], 1
jmp 0x5bfc58
call sub.WS2_32.dll_WSAGetLastError
cmp eax, 0x274a
jne 0x5bfc3f
mov rax, qword [rdi + 0x10]
sub rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x28]
mov qword [rcx + 8], rax
xor eax, eax
shr bl, 0x16
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_srcio_borrowed_buf.rs
mov rdx, rsi
call fcn.004504c0
ud2
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_srcio_borrowed_buf.rs
mov rcx, rsi
mov rdx, r13
call fcn.0044fa90
ud2
lea rax, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_std_srciomod.rs
mov edx, 0x20
mov rcx, r8
mov r8, rax
call fcn.0044fa90
ud2
Function at 0x5c6590
Capabilities:
Send data
Send data on socket

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x28
test r8, r8
je 0x5c65e8
mov rdi, r8
mov rbx, rdx
mov r14, qword [rcx]
lea rsi, str.failed_to_write_whole_buffer
nop
cmp rdi, 0x7fffffff
mov r8d, 0x7fffffff
cmovb r8, rdi
mov rcx, r14
mov rdx, rbx
xor r9d, r9d
call sub.WS2_32.dll_send
cmp eax, 0xffffffff
je 0x5c65ec
test eax, eax
je 0x5c65fb
movsxd rcx, eax
cmp rdi, rcx
jb 0x5c6608
add rbx, rcx
sub rdi, rcx
jne 0x5c65b0
xor esi, esi
jmp 0x5c65fb
call sub.WS2_32.dll_WSAGetLastError
mov esi, eax
shl rsi, 0x20
or rsi, 2
mov rax, rsi
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
ret
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_std_srciomod.rs
mov rdx, rdi
call fcn.0044f110
ud2
Function at 0x5d0af0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
mov rax, rcx
add qword [rcx + 0x30], r8
mov r11, qword [rcx + 0x40]
test r11, r11
je 0x5d0b32
mov r10d, 8
sub r10, r11
cmp r8, r10
mov rdi, r10
cmovb rdi, r8
cmp rdi, 3
jbe 0x5d0b3a
mov esi, dword [rdx]
mov r9d, 4
mov rcx, r9
or rcx, 1
cmp rcx, rdi
jb 0x5d0b4b
jmp 0x5d0b62
xor r10d, r10d
jmp 0x5d0bed
xor esi, esi
xor r9d, r9d
mov rcx, r9
or rcx, 1
cmp rcx, rdi
jae 0x5d0b62
movzx ebx, word [rdx + r9]
lea ecx, [r9*8]
shl rbx, cl
or rsi, rbx
or r9, 2
cmp r9, rdi
jae 0x5d0b79
movzx edi, byte [rdx + r9]
shl r9d, 3
mov ecx, r9d
shl rdi, cl
or rsi, rdi
lea ecx, [r11*8]
shl rsi, cl
or rsi, qword [rax + 0x38]
mov qword [rax + 0x38], rsi
cmp r10, r8
jbe 0x5d0b99
add r11, r8
jmp 0x5d0cca
mov r11, qword [rax + 0x18]
mov r9, qword [rax + 0x10]
mov rcx, qword [rax]
add rcx, r9
rol r9, 0xd
xor r11, rsi
xor r9, rcx
rol rcx, 0x20
mov rdi, qword [rax + 8]
add rdi, r11
rol r11, 0x10
xor r11, rdi
add rcx, r11
rol r11, 0x15
xor r11, rcx
add rdi, r9
rol r9, 0x11
mov qword [rax + 0x18], r11
xor r9, rdi
rol rdi, 0x20
mov qword [rax + 0x10], r9
mov qword [rax + 8], rdi
xor rcx, rsi
mov qword [rax], rcx
sub r8, r10
mov r11d, r8d
and r11d, 7
and r8, 0xfffffffffffffff8
cmp r10, r8
jae 0x5d0c62
mov rcx, qword [rax]
mov r9, qword [rax + 8]
mov rdi, qword [rax + 0x18]
mov rsi, qword [rax + 0x10]
nop
add rcx, rsi
rol rsi, 0xd
mov rbx, qword [rdx + r10]
xor rsi, rcx
rol rcx, 0x20
xor rdi, rbx
add r9, rdi
rol rdi, 0x10
xor rdi, r9
add rcx, rdi
rol rdi, 0x15
add r9, rsi
rol rsi, 0x11
xor rsi, r9
rol r9, 0x20
xor rdi, rcx
xor rcx, rbx
add r10, 8
cmp r10, r8
jb 0x5d0c10
mov qword [rax + 0x18], rdi
mov qword [rax + 0x10], rsi
mov qword [rax + 8], r9
mov qword [rax], rcx
cmp r11d, 3
jbe 0x5d0c80
mov r9d, dword [rdx + r10]
mov r8d, 4
mov rcx, r8
or rcx, 1
cmp rcx, r11
jb 0x5d0c92
jmp 0x5d0cac
xor r9d, r9d
xor r8d, r8d
mov rcx, r8
or rcx, 1
cmp rcx, r11
jae 0x5d0cac
lea rcx, [r8 + r10]
movzx esi, word [rdx + rcx]
lea ecx, [r8*8]
shl rsi, cl
or r9, rsi
or r8, 2
cmp r8, r11
jae 0x5d0cc6
add r10, r8
movzx edx, byte [rdx + r10]
shl r8d, 3
mov ecx, r8d
shl rdx, cl
or r9, rdx
mov qword [rax + 0x38], r9
mov qword [rax + 0x40], r11
pop rbx
pop rdi
pop rsi
ret
Function at 0x5db670
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0xc0
movdqa xmmword [rsp + 0xb0], xmm7
movdqa xmmword [rsp + 0xa0], xmm6
mov rsi, rdx
mov rdi, rcx
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x30], xmm0
movdqa xmmword [rsp + 0x20], xmm0
lea rcx, [rsp + 0x20]
call fcn.0046e260
test rax, rax
je 0x5db6c7
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, rax
call sub.KERNEL32.dll_HeapFree
jmp 0x5db77b
movdqa xmm7, xmmword [rsp + 0x20]
movdqa xmm6, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x90], xmm6
movdqa xmmword [rsp + 0x80], xmm7
mov rax, qword [0x009bf170]
test rax, rax
je 0x5db73b
lea rbx, [rsp + 0x50]
test eax, 0x4000
jne 0x5db74c
pshufd xmm0, xmm7, 0xee
pshufd xmm1, xmm6, 0xee
movq rax, xmm7
movq rcx, xmm0
movq rdx, xmm6
movq r8, xmm1
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x68], r8
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x70], xmm0
jmp 0x5db763
call fcn.005b0d90
lea rbx, [rsp + 0x50]
test eax, 0x4000
je 0x5db6fd
lea r8, [0x0094e5c8]
lea rdx, [rsp + 0x80]
mov rcx, rbx
call fcn.0046e230
movdqa xmm0, xmmword [rbx]
movaps xmm1, xmmword [rbx + 0x10]
movaps xmm2, xmmword [rbx + 0x20]
movaps xmmword [rdi + 0x20], xmm2
movaps xmmword [rdi + 0x10], xmm1
movdqa xmmword [rdi], xmm0
mov qword [rdi + 0x40], 0
mov rax, 0xffffffffffffff00
add rax, qword [rdi + 0x30]
mov qword [rdi + 0x38], rax
mov rcx, rdi
mov rdx, rsi
movaps xmm6, xmmword [rsp + 0xa0]
movaps xmm7, xmmword [rsp + 0xb0]
add rsp, 0xc0
pop rbx
pop rdi
pop rsi
jmp fcn.0046be40
Function at 0x5eee10
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
aesenc xmm2, xmm1
aesenc xmm3, xmm1
aesenc xmm4, xmm1
aesenc xmm5, xmm1
aesenc xmm6, xmm1
aesenc xmm7, xmm1
movups xmm1, xmmword [rcx + rax]
add rax, 0x20
aesenc xmm2, xmm0
aesenc xmm3, xmm0
aesenc xmm4, xmm0
aesenc xmm5, xmm0
aesenc xmm6, xmm0
aesenc xmm7, xmm0
movups xmm0, xmmword [rcx + rax - 0x10]
jne fcn.005eee10
aesenc xmm2, xmm1
aesenc xmm3, xmm1
aesenc xmm4, xmm1
aesenc xmm5, xmm1
aesenc xmm6, xmm1
aesenc xmm7, xmm1
aesenclast xmm2, xmm0
aesenclast xmm3, xmm0
aesenclast xmm4, xmm0
aesenclast xmm5, xmm0
aesenclast xmm6, xmm0
aesenclast xmm7, xmm0
ret

Function at 0x5eef1a
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
aesenc xmm2, xmm1
aesenc xmm3, xmm1
aesenc xmm4, xmm1
aesenc xmm5, xmm1
aesenc xmm6, xmm1
aesenc xmm7, xmm1
aesenc xmm8, xmm1
aesenc xmm9, xmm1
movups xmm1, xmmword [rcx + rax]
add rax, 0x20
aesenc xmm2, xmm0
aesenc xmm3, xmm0
aesenc xmm4, xmm0
aesenc xmm5, xmm0
aesenc xmm6, xmm0
aesenc xmm7, xmm0
aesenc xmm8, xmm0
aesenc xmm9, xmm0
movups xmm0, xmmword [rcx + rax - 0x10]
jne 0x5eeef0
aesenc xmm2, xmm1
aesenc xmm3, xmm1
aesenc xmm4, xmm1
aesenc xmm5, xmm1
aesenc xmm6, xmm1
aesenc xmm7, xmm1
aesenc xmm8, xmm1
aesenc xmm9, xmm1
aesenclast xmm2, xmm0
aesenclast xmm3, xmm0
aesenclast xmm4, xmm0
aesenclast xmm5, xmm0
aesenclast xmm6, xmm0
aesenclast xmm7, xmm0
aesenclast xmm8, xmm0
aesenclast xmm9, xmm0
ret
Function at 0x5f073d
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rdi
mov qword [rsp + 0x10], rsi
mov rax, rsp
mov rdi, rcx
mov rsi, rdx
mov rdx, r8
mov rcx, r9
mov r8, qword [rsp + 0x28]
xchg rcx, rdx
test rcx, rcx
je 0x5f08b1
lea rsp, [rsp - 0xb8]
movaps xmmword [rsp + 0x10], xmm6
movaps xmmword [rsp + 0x20], xmm7
movaps xmmword [rsp + 0x30], xmm8
movaps xmmword [rsp + 0x40], xmm9
movaps xmmword [rsp + 0x50], xmm10
movaps xmmword [rsp + 0x60], xmm11
movaps xmmword [rsp + 0x70], xmm12
movaps xmmword [rsp + 0x80], xmm13
movaps xmmword [rsp + 0x90], xmm14
movaps xmmword [rsp + 0xa0], xmm15
movdqu xmm0, xmmword [r8]
movdqa xmm8, xmmword [0x00963620]
sub rsi, rdi
call fcn.005f08c0
movdqa xmm6, xmm0
pshufb xmm6, xmmword [0x00963610]
test rcx, 1
je 0x5f07fa
movdqu xmm7, xmmword [rdi]
call fcn.005eff40
pxor xmm0, xmm7
paddd xmm6, xmm8
movdqu xmmword [rsi + rdi], xmm0
sub rcx, 1
lea rdi, [rdi + 0x10]
je 0x5f0866
movdqa xmm14, xmm6
movdqa xmm15, xmm6
paddd xmm15, xmm8
movdqa xmm1, xmmword [0x00963610]
movdqa xmm0, xmm14
movdqa xmm6, xmm15
pshufb xmm0, xmm1
pshufb xmm6, xmm1
call fcn.005f00a0
movdqu xmm1, xmmword [rdi]
movdqu xmm2, xmmword [rdi + 0x10]
movdqa xmm3, xmmword [0x00963630]
pxor xmm0, xmm1
pxor xmm6, xmm2
paddd xmm14, xmm3
paddd xmm15, xmm3
movdqu xmmword [rsi + rdi], xmm0
movdqu xmmword [rsi + rdi + 0x10], xmm6
sub rcx, 2
lea rdi, [rdi + 0x20]
jne 0x5f0809
movaps xmm6, xmmword [rsp + 0x10]
movaps xmm7, xmmword [rsp + 0x20]
movaps xmm8, xmmword [rsp + 0x30]
movaps xmm9, xmmword [rsp + 0x40]
movaps xmm10, xmmword [rsp + 0x50]
movaps xmm11, xmmword [rsp + 0x60]
movaps xmm12, xmmword [rsp + 0x70]
movaps xmm13, xmmword [rsp + 0x80]
movaps xmm14, xmmword [rsp + 0x90]
movaps xmm15, xmmword [rsp + 0xa0]
lea rsp, [rsp + 0xb8]
mov rdi, qword [rsp + 8]
mov rsi, qword [rsp + 0x10]
ret
Function at 0x5f9ac0
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
vmovdqu xmm4, xmmword [r9 - 0x80]
vmovdqu xmm2, xmmword [r11 + 0x20]
lea r13, [r10 - 1]
vmovups xmm15, xmmword [r9 - 0x70]
lea r12, [r9 - 0x60]
vpxor xmm9, xmm1, xmm4
add ebx, 0x6000000
jb 0x5f9be0
vpaddb xmm10, xmm1, xmm2
vpaddb xmm11, xmm10, xmm2
vpxor xmm10, xmm10, xmm4
vpaddb xmm12, xmm11, xmm2
vpxor xmm11, xmm11, xmm4
vpaddb xmm13, xmm12, xmm2
vpxor xmm12, xmm12, xmm4
vpaddb xmm14, xmm13, xmm2
vpxor xmm13, xmm13, xmm4
vpaddb xmm1, xmm14, xmm2
vpxor xmm14, xmm14, xmm4
jmp 0x5f9b20
vaesenc xmm9, xmm9, xmm15
vaesenc xmm10, xmm10, xmm15
vaesenc xmm11, xmm11, xmm15
vaesenc xmm12, xmm12, xmm15
vaesenc xmm13, xmm13, xmm15
vaesenc xmm14, xmm14, xmm15
vmovups xmm15, xmmword [r12]
lea r12, [r12 + 0x10]
dec r13d
jne 0x5f9b20
vmovdqu xmm3, xmmword [r12]
vaesenc xmm9, xmm9, xmm15
vpxor xmm4, xmm3, xmmword [rcx]
vaesenc xmm10, xmm10, xmm15
vpxor xmm5, xmm3, xmmword [rcx + 0x10]
vaesenc xmm11, xmm11, xmm15
vpxor xmm6, xmm3, xmmword [rcx + 0x20]
vaesenc xmm12, xmm12, xmm15
vpxor xmm8, xmm3, xmmword [rcx + 0x30]
vaesenc xmm13, xmm13, xmm15
vpxor xmm2, xmm3, xmmword [rcx + 0x40]
vaesenc xmm14, xmm14, xmm15
vpxor xmm3, xmm3, xmmword [rcx + 0x50]
lea rcx, [rcx + 0x60]
vaesenclast xmm9, xmm9, xmm4
vaesenclast xmm10, xmm10, xmm5
vaesenclast xmm11, xmm11, xmm6
vaesenclast xmm12, xmm12, xmm8
vaesenclast xmm13, xmm13, xmm2
vaesenclast xmm14, xmm14, xmm3
vmovups xmmword [rdx], xmm9
vmovups xmmword [rdx + 0x10], xmm10
vmovups xmmword [rdx + 0x20], xmm11
vmovups xmmword [rdx + 0x30], xmm12
vmovups xmmword [rdx + 0x40], xmm13
vmovups xmmword [rdx + 0x50], xmm14
lea rdx, [rdx + 0x60]
ret
vpshufb xmm6, xmm1, xmm0
vmovdqu xmm5, xmmword [r11 + 0x30]
vpaddd xmm10, xmm6, xmmword [r11 + 0x40]
vpaddd xmm11, xmm6, xmm5
vpaddd xmm12, xmm10, xmm5
vpshufb xmm10, xmm10, xmm0
vpaddd xmm13, xmm11, xmm5
vpshufb xmm11, xmm11, xmm0
vpxor xmm10, xmm10, xmm4
vpaddd xmm14, xmm12, xmm5
vpshufb xmm12, xmm12, xmm0
vpxor xmm11, xmm11, xmm4
vpaddd xmm1, xmm13, xmm5
vpshufb xmm13, xmm13, xmm0
vpxor xmm12, xmm12, xmm4
vpshufb xmm14, xmm14, xmm0
vpxor xmm13, xmm13, xmm4
vpshufb xmm1, xmm1, xmm0
vpxor xmm14, xmm14, xmm4
jmp 0x5f9b20
Function at 0x5fda40
Capabilities:
Encode data using xor

Disassembly:
xor r10, r10
xor r11, r11
xor r12, r12
cmp r8, 0xd
jne 0x5fdaee
mov r10, qword [rcx]
mov r11, qword [rcx + 5]
shr r11, 0x18
mov r12d, 1
mov rax, qword [rbp + 0xa0]
mov r15, rax
mul r10
mov r13, rax
mov r14, rdx
mov rax, qword [rbp + 0xa0]
mul r11
imul r15, r12
add r14, rax
adc r15, rdx
mov rax, qword [rbp + 0xa8]
mov r9, rax
mul r10
add r14, rax
adc rdx, 0
mov r10, rdx
mov rax, qword [rbp + 0xa8]
mul r11
add r15, rax
adc rdx, 0
imul r9, r12
add r15, r10
adc r9, rdx
mov r10, r13
mov r11, r14
mov r12, r15
and r12, 3
mov r13, r15
and r13, 0xfffffffffffffffc
mov r14, r9
shrd r15, r9, 2
shr r9, 2
add r15, r13
adc r9, r14
add r10, r15
adc r11, r9
adc r12, 0
ret
cmp r8, 0x10
jb 0x5fdb99
add r10, qword [rcx]
adc r11, qword [rcx + 8]
adc r12, 1
mov rax, qword [rbp + 0xa0]
mov r15, rax
mul r10
mov r13, rax
mov r14, rdx
mov rax, qword [rbp + 0xa0]
mul r11
imul r15, r12
add r14, rax
adc r15, rdx
mov rax, qword [rbp + 0xa8]
mov r9, rax
mul r10
add r14, rax
adc rdx, 0
mov r10, rdx
mov rax, qword [rbp + 0xa8]
mul r11
add r15, rax
adc rdx, 0
imul r9, r12
add r15, r10
adc r9, rdx
mov r10, r13
mov r11, r14
mov r12, r15
and r12, 3
mov r13, r15
and r13, 0xfffffffffffffffc
mov r14, r9
shrd r15, r9, 2
shr r9, 2
add r15, r13
adc r9, r14
add r10, r15
adc r11, r9
adc r12, 0
lea rcx, [rcx + 0x10]
sub r8, 0x10
jmp 0x5fdaee
cmp r8, 0
je 0x5fdc5f
xor r13, r13
xor r14, r14
xor r15, r15
add rcx, r8
shld r14, r13, 8
shl r13, 8
movzx r15, byte [rcx - 1]
xor r13, r15
dec rcx
dec r8
jne 0x5fdbaf
add r10, r13
adc r11, r14
adc r12, 1
mov rax, qword [rbp + 0xa0]
mov r15, rax
mul r10
mov r13, rax
mov r14, rdx
mov rax, qword [rbp + 0xa0]
mul r11
imul r15, r12
add r14, rax
adc r15, rdx
mov rax, qword [rbp + 0xa8]
mov r9, rax
mul r10
add r14, rax
adc rdx, 0
mov r10, rdx
mov rax, qword [rbp + 0xa8]
mul r11
add r15, rax
adc rdx, 0
imul r9, r12
add r15, r10
adc r9, rdx
mov r10, r13
mov r11, r14
mov r12, r15
and r12, 3
mov r13, r15
and r13, 0xfffffffffffffffc
mov r14, r9
shrd r15, r9, 2
shr r9, 2
add r15, r13
adc r9, r14
add r10, r15
adc r11, r9
adc r12, 0
ret