joyce8/EMBER2024-capa huggingface dataset:
Function at 0x462b00
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x40302f
sub rsp, 0x20
mov qword [rsp + 0x18], rbp
lea rbp, [rsp + 0x18]
mov rdx, qword [rax]
mov rcx, qword [rax + 8]
mov rax, rdx
nop
call fcn.00409760
mov rbp, qword [rsp + 0x18]
add rsp, 0x20
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.004609c0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp 0x403000
cmp byte [0x00871f84], 0
je 0x462b15
mov rcx, qword [rax + 8]
mov rax, qword [rax]
jmp 0x45fae0
jmp 0x403000

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

Disassembly:
mov eax, dword [rax]
movabs rcx, 0xe7037ed1a0b428db
xor rcx, rax
xor rax, rbx
xor rax, qword [0x00872380]
movabs rdx, 0xa0761d6478bd642f
xor rdx, rax
mov rax, rcx
mul rdx
xor rax, rdx
mov rcx, rax
movabs rax, 0x1d8e4e27c47d124b
mul rcx
nop
nop
xor rax, rdx
ret
cmp byte [0x00871f84], 0
je 0x462b55
movq xmm0, rbx
pinsrd xmm0, dword [rax], 2
aesenc xmm0, xmmword [0x00872640]
aesenc xmm0, xmmword [0x00872650]
aesenc xmm0, xmmword [0x00872660]
movq rax, xmm0
ret
jmp 0x409960

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

Disassembly:
mov rax, qword [rax]
movabs rcx, 0xe7037ed1a0b428db
xor rcx, rax
xor rax, rbx
xor rax, qword [0x00872380]
movabs rdx, 0xa0761d6478bd642f
xor rdx, rax
mov rax, rcx
mul rdx
xor rax, rdx
mov rcx, rax
movabs rax, 0x1d8e4e27c47d1247
mul rcx
nop
nop
xor rax, rdx
ret
cmp byte [0x00871f84], 0
je 0x462b96
movq xmm0, rbx
pinsrq xmm0, qword [rax], 1
aesenc xmm0, xmmword [0x00872640]
aesenc xmm0, xmmword [0x00872650]
aesenc xmm0, xmmword [0x00872660]
movq rax, xmm0
ret
jmp 0x4099c0

Function at 0x4644e0
Capabilities:
Write file on windows

Disassembly:
sub rsp, 0x30
mov rcx, 0xfffffffffffffff4
mov qword [rsp], rcx
mov rax, qword [sym.imp.kernel32.dll_GetStdHandle]
call rax
mov rcx, rax
mov qword [rsp], rcx
lea rdx, [0x008725c0]
mov qword [rsp + 8], rdx
lea r8d, [0x00871fa4]
mov qword [rsp + 0x10], r8
lea r9, [rsp + 0x28]
mov qword [r9], 0
mov qword [rsp + 0x18], r9
mov qword [rsp + 0x20], 0
mov rax, qword [sym.imp.kernel32.dll_WriteFile]
call rax
call fcn.00462a60
add rsp, 0x30
ret

Function at 0x4653c0
Capabilities:
Access peb ldr_data

Disassembly:
sub rsp, 0x78
mov qword [rsp + 0x70], rbp
lea rbp, [rsp + 0x70]
mov qword [rsp], rax
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rcx
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x28], r8
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x38], r10
mov qword [rsp + 0x40], r11
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x50], rax
call fcn.0045f7c0
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
mov r14, qword [r14]
mov rax, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
Function at 0x4a45e0
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
xor edx, edx
jmp 0x4a45f8
movzx esi, byte [rbx + rdx]
inc rdx
imul eax, eax, 0x1000193
xor eax, esi
cmp rcx, rdx
jg 0x4a45e9
ret

Function at 0x4bfb20
Capabilities:
Encode data using xor

Disassembly:
mov rbx, qword [rsp + 8]
mov rsi, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdx, qword [rsp + 0x20]
test rdx, 0xf
jne 0x4bfb8b
mov rax, 0
movdqu xmm0, xmmword [rsi + rax]
movdqu xmm1, xmmword [rcx + rax]
pxor xmm0, xmm1
movdqu xmmword [rbx + rax], xmm0
add rax, 0x10
cmp rdx, rax
jne 0x4bfb44
ret
sub rdx, 1
mov dil, byte [rsi + rdx]
mov al, byte [rcx + rdx]
xor dil, al
mov byte [rbx + rdx], dil
test rdx, 7
jne 0x4bfb61
cmp rdx, 0
je 0x4bfbad
test rdx, 0xf
je 0x4bfb3d
test rdx, 7
jne 0x4bfb61
sub rdx, 8
mov rdi, qword [rsi + rdx]
mov rax, qword [rcx + rdx]
xor rdi, rax
mov qword [rbx + rdx], rdi
cmp rdx, 0x10
jge 0x4bfb3d
ret
Function at 0x4c2300
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
mov rcx, qword [rsp + 8]
mov rax, qword [rsp + 0x10]
mov rdx, qword [rsp + 0x18]
mov rbx, qword [rsp + 0x20]
movups xmm1, xmmword [rax]
movups xmm0, xmmword [rbx]
add rax, 0x10
pxor xmm0, xmm1
sub rcx, 0xc
je 0x4c233f
jb 0x4c2354
movups xmm1, xmmword [rax]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x10]
aesenc xmm0, xmm1
add rax, 0x20
movups xmm1, xmmword [rax]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x10]
aesenc xmm0, xmm1
add rax, 0x20
movups xmm1, xmmword [rax]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x10]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x20]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x30]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x40]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x50]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x60]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x70]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x80]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x90]
aesenclast xmm0, xmm1
movups xmmword [rdx], xmm0
ret
Function at 0x4c2480
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
mov rcx, qword [rsp + 8]
mov rax, qword [rsp + 0x10]
mov rbx, qword [rsp + 0x18]
mov rdx, qword [rsp + 0x20]
movups xmm0, xmmword [rax]
movups xmmword [rbx], xmm0
add rbx, 0x10
pxor xmm4, xmm4
cmp ecx, 0xc
je 0x4c2550
jb 0x4c25af
movups xmm2, xmmword [rax + 0x10]
movups xmmword [rbx], xmm2
add rbx, 0x10
aeskeygenassist xmm1, xmm2, 1
call fcn.004c22a0
aeskeygenassist xmm1, xmm0, 1
call fcn.004c22c0
aeskeygenassist xmm1, xmm2, 2
call fcn.004c22a0
aeskeygenassist xmm1, xmm0, 2
call fcn.004c22c0
aeskeygenassist xmm1, xmm2, 4
call fcn.004c22a0
aeskeygenassist xmm1, xmm0, 4
call fcn.004c22c0
aeskeygenassist xmm1, xmm2, 8
call fcn.004c22a0
aeskeygenassist xmm1, xmm0, 8
call fcn.004c22c0
aeskeygenassist xmm1, xmm2, 0x10
call fcn.004c22a0
aeskeygenassist xmm1, xmm0, 0x10
call fcn.004c22c0
aeskeygenassist xmm1, xmm2, 0x20
call fcn.004c22a0
aeskeygenassist xmm1, xmm0, 0x20
call fcn.004c22c0
aeskeygenassist xmm1, xmm2, 0x40
call fcn.004c22a0
jmp 0x4c261d
movq xmm2, qword [rax + 0x10]
aeskeygenassist xmm1, xmm2, 1
call fcn.004c2200
aeskeygenassist xmm1, xmm2, 2
call fcn.004c2260
aeskeygenassist xmm1, xmm2, 4
call fcn.004c2200
aeskeygenassist xmm1, xmm2, 8
call fcn.004c2260
aeskeygenassist xmm1, xmm2, 0x10
call fcn.004c2200
aeskeygenassist xmm1, xmm2, 0x20
call fcn.004c2260
aeskeygenassist xmm1, xmm2, 0x40
call fcn.004c2200
aeskeygenassist xmm1, xmm2, 0x80
call fcn.004c2260
jmp 0x4c261d
aeskeygenassist xmm1, xmm0, 1
call fcn.004c21c0
aeskeygenassist xmm1, xmm0, 2
call fcn.004c21c0
aeskeygenassist xmm1, xmm0, 4
call fcn.004c21c0
aeskeygenassist xmm1, xmm0, 8
call fcn.004c21c0
aeskeygenassist xmm1, xmm0, 0x10
call fcn.004c21c0
aeskeygenassist xmm1, xmm0, 0x20
call fcn.004c21c0
aeskeygenassist xmm1, xmm0, 0x40
call fcn.004c21c0
aeskeygenassist xmm1, xmm0, 0x80
call fcn.004c21c0
aeskeygenassist xmm1, xmm0, 0x1b
call fcn.004c21c0
aeskeygenassist xmm1, xmm0, 0x36
call fcn.004c21c0
sub rbx, 0x10
movups xmm1, xmmword [rbx]
movups xmmword [rdx], xmm1
dec rcx
movups xmm1, xmmword [rbx - 0x10]
aesimc xmm0, xmm1
movups xmmword [rdx + 0x10], xmm0
sub rbx, 0x10
add rdx, 0x10
dec rcx
jne 0x4c262a
movups xmm0, xmmword [rbx - 0x10]
movups xmmword [rdx + 0x10], xmm0
ret
Function at 0x4c2760
Capabilities:
Encode data using xor
Encrypt data using aes via x86 extensions

Disassembly:
mov rdi, qword [rsp + 8]
mov rsi, qword [rsp + 0x10]
mov rdx, qword [rsp + 0x18]
shr rdx, 2
dec rdx
movdqu xmm15, xmmword [0x00699bd0]
movdqu xmm14, xmmword [0x00699f30]
movdqu xmm0, xmmword [rsi]
movdqu xmm11, xmmword [rsi + 0x10]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0x20]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0x30]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0x40]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0x50]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0x60]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0x70]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0x80]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0x90]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0xa0]
cmp rdx, 0xc
jb 0x4c284b
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0xb0]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0xc0]
je 0x4c284b
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0xd0]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0xe0]
aesenclast xmm0, xmm11
pshufb xmm0, xmm15
pshufd xmm11, xmm0, 0xff
movdqu xmm12, xmm0
psrad xmm11, 0x1f
pand xmm11, xmm14
psrld xmm12, 0x1f
pslldq xmm12, 4
pslld xmm0, 1
pxor xmm0, xmm11
pxor xmm0, xmm12
movdqu xmmword [rdi + 0xe0], xmm0
pshufd xmm1, xmm0, 0x4e
pxor xmm1, xmm0
movdqu xmmword [rdi + 0xf0], xmm1
movdqu xmm2, xmm0
movdqu xmm3, xmm1
mov rax, 7
movdqu xmm11, xmm2
movdqu xmm12, xmm2
movdqu xmm13, xmm3
pclmulqdq xmm11, xmm0, 0
pclmulqdq xmm12, xmm0, 0x11
pclmulqdq xmm13, xmm1, 0
pxor xmm13, xmm11
pxor xmm13, xmm12
movdqu xmm4, xmm13
pslldq xmm4, 8
psrldq xmm13, 8
pxor xmm11, xmm4
pxor xmm12, xmm13
movdqu xmm2, xmm14
pclmulqdq xmm2, xmm11, 1
pshufd xmm11, xmm11, 0x4e
pxor xmm11, xmm2
movdqu xmm2, xmm14
pclmulqdq xmm2, xmm11, 1
pshufd xmm11, xmm11, 0x4e
pxor xmm2, xmm11
pxor xmm2, xmm12
movdqu xmmword [rdi + 0xc0], xmm2
pshufd xmm3, xmm2, 0x4e
pxor xmm3, xmm2
movdqu xmmword [rdi + 0xd0], xmm3
dec rax
lea rdi, [rdi - 0x20]
jne 0x4c28b0
ret
Function at 0x4d0000
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x4d01dc
sub rsp, 0x70
mov qword [rsp + 0x68], rbp
lea rbp, [rsp + 0x68]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x90], rdi
mov qword [rsp + 0xb0], r10
test rsi, rsi
je 0x4d0139
test r9, r9
je 0x4d0139
mov qword [rsp + 0x98], rsi
lea rbx, [rsi + 1]
mov qword [rsp + 0x58], rbx
cmp rcx, rbx
jl 0x4d005c
jae 0x4d00c0
jmp 0x4d01d0
mov qword [rsp + 0x90], rdi
mov qword [rsp + 0xa8], r9
mov qword [rsp + 0xa0], r8
lea rcx, [rsi + 5]
mov qword [rsp + 0x50], rcx
lea rax, [0x00602aa0]
call fcn.004493e0
mov rbx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x98]
mov rdi, qword [rsp + 0x90]
mov r8, qword [rsp + 0xa0]
mov r9, qword [rsp + 0xa8]
mov r10, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x50]
nop dword [rax + rax]
cmp rsi, rcx
ja 0x4d01c5
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x48], rcx
mov qword [rsp], rax
mov qword [rsp + 8], rsi
mov qword [rsp + 0x10], rcx
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x28], r8
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x38], r10
call fcn.004dacc0
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
mov r14, qword [r14]
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x58]
cmp rcx, rdx
jae 0x4d01b9
mov rsi, qword [rsp + 0x60]
mov qword [rsi + rcx*8], rax
jmp 0x4d0182
test r10, r10
jne 0x4d0142
xor edx, edx
jmp 0x4d0172
nop
cmp rcx, 1
jge 0x4d016a
lea rax, [0x00602aa0]
mov ebx, 1
mov rcx, rbx
call fcn.004493e0
mov r10, qword [rsp + 0xb0]
mov ecx, 1
mov qword [rax], r10
mov edx, 1
mov rbx, rdx
mov rbp, qword [rsp + 0x68]
add rsp, 0x70
ret
dec rdx
test rdx, rdx
jle 0x4d0191
mov rdi, qword [rsi + rdx*8 - 8]
test rdi, rdi
je 0x4d017f
mov rcx, qword [rsp + 0x48]
cmp rdx, rcx
ja 0x4d01ab
mov rax, rsi
mov rbx, rdx
mov rbp, qword [rsp + 0x68]
add rsp, 0x70
ret
mov rax, rcx
mov rcx, rdx
mov rdx, rax
call fcn.00463140
mov rax, rcx
mov rcx, rdx
nop
call fcn.004630c0
mov rdx, rcx
mov rcx, rsi
call fcn.00463140
mov rdx, rcx
mov rcx, rbx
call fcn.00463140
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x40], r10
call fcn.004609c0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
mov r10, qword [rsp + 0x40]
jmp fcn.004d0000
Function at 0x4d0240
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x4d03d3
sub rsp, 0x58
mov qword [rsp + 0x50], rbp
lea rbp, [rsp + 0x50]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x78], rdi
mov qword [rsp + 0x90], r9
lea r11, [r10 + rsi]
cmp rcx, r11
jb 0x4d03c7
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x98], r10
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x78], rdi
mov qword [rsp + 0x88], r8
mov qword [rsp + 0x90], r9
mov qword [rsp + 0x68], rbx
mov rbx, r11
call fcn.004cf600
mov rdx, qword [rsp + 0x98]
mov rsi, qword [rsp + 0x90]
xor eax, eax
jmp 0x4d02ca
inc rax
cmp rdx, rax
jle 0x4d03a8
mov rbx, qword [rsi + rax*8]
test rbx, rbx
je 0x4d02c7
mov rdi, qword [rsp + 0x80]
lea rcx, [rax + rdi]
mov r8, qword [rsp + 0x70]
cmp r8, rcx
jb 0x4d03bf
cmp rax, rcx
ja 0x4d03ba
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rcx
mov rcx, rax
shl rax, 3
sub r8, rcx
mov rsi, r8
neg r8
sar r8, 0x3f
and rax, r8
mov r8, qword [rsp + 0x60]
add rax, r8
mov qword [rsp], rax
mov qword [rsp + 8], rdi
mov qword [rsp + 0x10], rsi
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x18], rax
mov qword [rsp + 0x20], rdi
mov rsi, qword [rsp + 0x88]
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], rbx
call fcn.004dad80
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
mov r14, qword [r14]
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x48]
nop
cmp rcx, rdx
jbe 0x4d03b2
mov rbx, qword [rsp + 0x60]
mov qword [rbx + rdx*8], rax
mov rax, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x98]
mov rsi, qword [rsp + 0x90]
jmp 0x4d02c7
mov rbp, qword [rsp + 0x50]
add rsp, 0x58
ret
mov rax, rdx
call fcn.004630c0
call fcn.00463180
mov rdx, r8
call fcn.00463140
mov rdx, rcx
mov rcx, r11
call fcn.00463140
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x40], r10
mov qword [rsp + 0x48], r11
call fcn.004609c0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
mov r10, qword [rsp + 0x40]
mov r11, qword [rsp + 0x48]
jmp fcn.004d0240
Function at 0x4d5d80
Capabilities:
Encode data using base64

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x4d5f3c
sub rsp, 0x30
mov qword [rsp + 0x28], rbp
lea rbp, [rsp + 0x28]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x50], rdi
lea r9, [rsi + 7]
sar r9, 0x3f
shr r9, 0x3d
lea rbx, [r9 + rsi]
lea rbx, [rbx + 7]
sar rbx, 3
cmp rcx, rbx
jl 0x4d5dc7
nop
jae 0x4d5e3e
jmp 0x4d5f30
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x50], rdi
cmp rbx, 1
jne 0x4d5e0b
lea rax, [0x00602aa0]
mov ebx, 1
mov rcx, rbx
call fcn.004493e0
mov rsi, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
mov ebx, 1
mov ecx, 1
jmp 0x4d5e3e
mov qword [rsp + 0x20], rbx
lea rcx, [rbx + 4]
mov qword [rsp + 0x18], rcx
lea rax, [0x00602aa0]
call fcn.004493e0
mov rsi, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x18]
mov rdx, rsi
xor r9d, r9d
jmp 0x4d5e53
bswap r8
mov qword [rax + r9*8], r8
inc r9
mov r8, r10
cmp rsi, 8
jl 0x4d5e85
mov r10, r8
sub r8, rsi
add r8, 8
neg r8
sar r8, 0x3f
add rsi, 0xfffffffffffffff8
and r8, rsi
nop
mov r8, qword [rdi + r8]
cmp r9, rbx
jb 0x4d5e46
nop dword [rax + rax]
jmp 0x4d5f25
test rsi, rsi
jle 0x4d5e92
xor r8d, r8d
xor r9d, r9d
jmp 0x4d5eee
jmp 0x4d5e97
dec rbx
test rbx, rbx
jle 0x4d5ea6
mov rsi, qword [rax + rbx*8 - 8]
test rsi, rsi
je 0x4d5e94
cmp rbx, rcx
ja 0x4d5eb5
mov rbp, qword [rsp + 0x28]
add rsp, 0x30
ret
mov rdx, rcx
mov rcx, rbx
nop dword [rax + rax]
call fcn.00463140
cmp r8, 0x40
sbb r11, r11
lea r12, [r8 + 8]
movzx r13d, byte [rsi + rdi - 1]
mov rsi, rcx
mov rcx, r8
shl r13, cl
and r13, r11
or r9, r13
mov rcx, rsi
mov rsi, r10
mov r8, r12
test rsi, rsi
jle 0x4d5efe
lea r10, [rsi - 1]
cmp rdx, r10
ja 0x4d5ec5
jmp 0x4d5f19
lea rsi, [rbx - 1]
cmp rbx, rsi
jbe 0x4d5f0e
mov qword [rax + rbx*8 - 8], r9
jmp 0x4d5e92
mov rax, rsi
mov rcx, rbx
call fcn.004630c0
mov rax, r10
mov rcx, rdx
nop
call fcn.004630c0
mov rax, r9
mov rcx, rbx
call fcn.004630c0
mov rdx, rcx
mov rcx, rbx
call fcn.00463140
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], r8
call fcn.004609c0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
nop dword [rax]
jmp fcn.004d5d80
Function at 0x4e14e0
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0x18]
cmp r12, qword [r14 + 0x10]
jbe 0x4e177e
sub rsp, 0x98
mov qword [rsp + 0x90], rbp
lea rbp, [rsp + 0x90]
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xa8], rbx
mov qword [rsp + 0xb8], rdi
mov qword [rsp + 0xb0], rcx
mov rdx, qword [rax + 0x30]
mov rax, rbx
call rdx
mov rcx, qword [rax + 8]
mov qword [rsp + 0x50], rcx
mov rdx, qword [rcx + 0x10]
mov rbx, qword [rcx + 8]
lea rsi, [rdx - 1]
test rsi, rsi
jl 0x4e156b
mov rdx, qword [rbx + rdx*8 - 8]
bsr rdx, rdx
mov rdi, 0xffffffffffffffff
cmove rdx, rdi
shl rsi, 6
lea rdx, [rdx + rsi]
lea rdx, [rdx + 1]
jmp 0x4e156d
xor edx, edx
mov qword [rsp + 0x30], rdx
lea rsi, [rdx + 7]
sar rsi, 0x3f
shr rsi, 0x3d
lea rcx, [rsi + rdx]
lea rcx, [rcx + 7]
sar rcx, 3
mov qword [rsp + 0x40], rcx
lea rax, [0x00603220]
mov rbx, rcx
call fcn.004493e0
mov qword [rsp + 0x68], rax
xor ecx, ecx
xor edx, edx
xor ebx, ebx
xor esi, esi
jmp 0x4e15c2
mov rcx, rax
mov rdx, rbx
mov rbx, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x48]
mov rax, qword [rsp + 0x68]
test rcx, rcx
jne 0x4e173a
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x58], rdx
nop
mov rbx, qword [rsp + 0xb8]
mov rcx, rax
mov rdi, qword [rsp + 0x40]
mov rsi, rdi
mov r8, rsi
mov rax, qword [rsp + 0xb0]
call fcn.0046d500
nop dword [rax]
test rbx, rbx
jne 0x4e170d
mov r8, qword [rsp + 0x40]
test r8, r8
jbe 0x4e1773
mov rdi, qword [rsp + 0x68]
movzx edx, byte [rdi]
mov r9, qword [0x00811d78]
mov r10, qword [0x00811d70]
mov rax, qword [rsp + 0x30]
mov r11, rax
sar rax, 0x3f
shr rax, 0x3d
lea r12, [rax + r11]
sar r12, 3
shl r12, 3
mov rax, r11
sub rax, r12
cmp r9, rax
jbe 0x4e176b
movzx r9d, byte [r10 + rax]
and edx, r9d
mov byte [rdi], dl
cmp r8, 1
jbe 0x4e175e
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x38], rbx
movzx edx, byte [rdi + 1]
xor edx, 0x42
mov byte [rdi + 1], dl
mov byte [rsp + 0x70], 0
mov qword [rsp + 0x78], 0
movups xmmword [rsp + 0x80], xmm15
xor eax, eax
xor ebx, ebx
mov rcx, rbx
mov rsi, r8
call fcn.004d5d80
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x88], rcx
mov byte [rsp + 0x70], 0
lea rax, [rsp + 0x70]
mov rbx, qword [rsp + 0x50]
call fcn.004cc2a0
test rax, rax
jl 0x4e16e5
mov rax, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x58]
nop
jmp 0x4e15ad
mov rdx, qword [rsp + 0xa0]
mov rsi, qword [rdx + 0x38]
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x40]
mov rdi, rcx
call rsi
jmp 0x4e15ad
mov rax, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x58]
mov r8, rbx
mov r9, rcx
mov rbx, qword [rsp + 0x40]
mov rcx, rbx
mov rbp, qword [rsp + 0x90]
add rsp, 0x98
ret
mov rdi, rcx
mov r8, rbx
mov r9, rsi
mov rbx, qword [rsp + 0x40]
mov rcx, rbx
mov rsi, rdx
mov rbp, qword [rsp + 0x90]
add rsp, 0x98
ret
mov eax, 1
mov rcx, r8
call fcn.004630c0
mov rcx, r9
call fcn.004630c0
xor eax, eax
mov rcx, r8
call fcn.004630c0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
call fcn.004609c0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
jmp fcn.004e14e0
Function at 0x4eb800
Capabilities:
Encode data using xor

Disassembly:
mov rax, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x20]
mov rdx, qword [rsp + 8]
pxor xmm15, xmm15
pcmpeqd xmm14, xmm14
psubd xmm15, xmm14
movd xmm14, eax
pshufd xmm14, xmm14, 0
pxor xmm0, xmm0
pxor xmm1, xmm1
pxor xmm2, xmm2
pxor xmm3, xmm3
pxor xmm4, xmm4
pxor xmm5, xmm5
mov rax, 0x10
movdqu xmm13, xmm15
movdqu xmm12, xmm13
paddd xmm13, xmm15
pcmpeqd xmm12, xmm14
movdqu xmm6, xmmword [rdi]
movdqu xmm7, xmmword [rdi + 0x10]
movdqu xmm8, xmmword [rdi + 0x20]
movdqu xmm9, xmmword [rdi + 0x30]
movdqu xmm10, xmmword [rdi + 0x40]
movdqu xmm11, xmmword [rdi + 0x50]
add rdi, 0x60
pand xmm6, xmm12
pand xmm7, xmm12
pand xmm8, xmm12
pand xmm9, xmm12
pand xmm10, xmm12
pand xmm11, xmm12
pxor xmm0, xmm6
pxor xmm1, xmm7
pxor xmm2, xmm8
pxor xmm3, xmm9
pxor xmm4, xmm10
pxor xmm5, xmm11
dec rax
jne 0x4eb84d
movdqu xmmword [rdx], xmm0
movdqu xmmword [rdx + 0x10], xmm1
movdqu xmmword [rdx + 0x20], xmm2
movdqu xmmword [rdx + 0x30], xmm3
movdqu xmmword [rdx + 0x40], xmm4
movdqu xmmword [rdx + 0x50], xmm5
ret

Function at 0x4eb8e0
Capabilities:
Encode data using xor

Disassembly:
mov rax, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x20]
mov rdx, qword [rsp + 8]
pxor xmm15, xmm15
pcmpeqd xmm14, xmm14
psubd xmm15, xmm14
movd xmm14, eax
pshufd xmm14, xmm14, 0
pxor xmm0, xmm0
pxor xmm1, xmm1
pxor xmm2, xmm2
pxor xmm3, xmm3
mov rax, 0x10
movdqu xmm13, xmm15
movdqu xmm12, xmm13
paddd xmm13, xmm15
pcmpeqd xmm12, xmm14
movdqu xmm4, xmmword [rdi]
movdqu xmm5, xmmword [rdi + 0x10]
movdqu xmm6, xmmword [rdi + 0x20]
movdqu xmm7, xmmword [rdi + 0x30]
movdqu xmm8, xmmword [rdi + 0x40]
movdqu xmm9, xmmword [rdi + 0x50]
movdqu xmm10, xmmword [rdi + 0x60]
movdqu xmm11, xmmword [rdi + 0x70]
add rdi, 0x80
pand xmm4, xmm12
pand xmm5, xmm12
pand xmm6, xmm12
pand xmm7, xmm12
movdqu xmm12, xmm13
paddd xmm13, xmm15
pcmpeqd xmm12, xmm14
pand xmm8, xmm12
pand xmm9, xmm12
pand xmm10, xmm12
pand xmm11, xmm12
pxor xmm0, xmm4
pxor xmm1, xmm5
pxor xmm2, xmm6
pxor xmm3, xmm7
pxor xmm0, xmm8
pxor xmm1, xmm9
pxor xmm2, xmm10
pxor xmm3, xmm11
dec rax
jne 0x4eb925
movdqu xmmword [rdx], xmm0
movdqu xmmword [rdx + 0x10], xmm1
movdqu xmmword [rdx + 0x20], xmm2
movdqu xmmword [rdx + 0x30], xmm3
ret
Function at 0x4eea00
Capabilities:
Hash data using sha384
Hash data using sha512

Disassembly:
mov rcx, qword [rax + 0xd0]
cmp rcx, 6
jne 0x4eea85
movabs rcx, 0xcbbb9d5dc1059ed8
mov qword [rax], rcx
movabs rcx, 0x629a292a367cd507
mov qword [rax + 8], rcx
movabs rcx, 0x9159015a3070dd17
mov qword [rax + 0x10], rcx
movabs rcx, 0x152fecd8f70e5939
mov qword [rax + 0x18], rcx
movabs rcx, 0x67332667ffc00b31
mov qword [rax + 0x20], rcx
movabs rcx, 0x8eb44a8768581511
mov qword [rax + 0x28], rcx
movabs rcx, 0xdb0c2e0d64f98fa7
mov qword [rax + 0x30], rcx
movabs rcx, 0x47b5481dbefa4fa4
mov qword [rax + 0x38], rcx
nop dword [rax]
jmp 0x4eebe6
cmp rcx, 0xe
jne 0x4eeb00
movabs rcx, 0x8c3d37c819544da2
mov qword [rax], rcx
movabs rcx, 0x73e1996689dcd4d6
mov qword [rax + 8], rcx
movabs rcx, 0x1dfab7ae32ff9c82
mov qword [rax + 0x10], rcx
movabs rcx, 0x679dd514582f9fcf
mov qword [rax + 0x18], rcx
movabs rcx, 0xf6d2b697bd44da8
mov qword [rax + 0x20], rcx
movabs rcx, 0x77e36f7304c48942
mov qword [rax + 0x28], rcx
movabs rcx, 0x3f9d85a86a1d36c8
mov qword [rax + 0x30], rcx
movabs rcx, 0x1112e6ad91d692a1
mov qword [rax + 0x38], rcx
jmp 0x4eebe6
cmp rcx, 0xf
jne 0x4eeb77
movabs rcx, 0x22312194fc2bf72c
mov qword [rax], rcx
movabs rcx, 0x9f555fa3c84c64c2
mov qword [rax + 8], rcx
movabs rcx, 0x2393b86b6f53b151
mov qword [rax + 0x10], rcx
movabs rcx, 0x963877195940eabd
mov qword [rax + 0x18], rcx
movabs rcx, 0x96283ee2a88effe3
mov qword [rax + 0x20], rcx
movabs rcx, 0xbe5e1e2553863992
mov qword [rax + 0x28], rcx
movabs rcx, 0x2b0199fc2c85b8aa
mov qword [rax + 0x30], rcx
movabs rcx, 0xeb72ddc81c52ca2
mov qword [rax + 0x38], rcx
jmp 0x4eebe6
movabs rcx, 0x6a09e667f3bcc908
mov qword [rax], rcx
movabs rcx, 0xbb67ae8584caa73b
mov qword [rax + 8], rcx
movabs rcx, 0x3c6ef372fe94f82b
mov qword [rax + 0x10], rcx
movabs rcx, 0xa54ff53a5f1d36f1
mov qword [rax + 0x18], rcx
movabs rcx, 0x510e527fade682d1
mov qword [rax + 0x20], rcx
movabs rcx, 0x9b05688c2b3e6c1f
mov qword [rax + 0x28], rcx
movabs rcx, 0x1f83d9abfb41bd6b
mov qword [rax + 0x30], rcx
movabs rcx, 0x5be0cd19137e2179
mov qword [rax + 0x38], rcx
movups xmmword [rax + 0xc0], xmm15
ret