joyce8/EMBER2024-capa huggingface dataset:
Function at 0x50eb40
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 0x50eb7f
jb 0x50eb94
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 0x50ec00
Capabilities:
Decrypt 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 0x50ec3f
jb 0x50ec54
movups xmm1, xmmword [rax]
aesdec xmm0, xmm1
movups xmm1, xmmword [rax + 0x10]
aesdec xmm0, xmm1
add rax, 0x20
movups xmm1, xmmword [rax]
aesdec xmm0, xmm1
movups xmm1, xmmword [rax + 0x10]
aesdec xmm0, xmm1
add rax, 0x20
movups xmm1, xmmword [rax]
aesdec xmm0, xmm1
movups xmm1, xmmword [rax + 0x10]
aesdec xmm0, xmm1
movups xmm1, xmmword [rax + 0x20]
aesdec xmm0, xmm1
movups xmm1, xmmword [rax + 0x30]
aesdec xmm0, xmm1
movups xmm1, xmmword [rax + 0x40]
aesdec xmm0, xmm1
movups xmm1, xmmword [rax + 0x50]
aesdec xmm0, xmm1
movups xmm1, xmmword [rax + 0x60]
aesdec xmm0, xmm1
movups xmm1, xmmword [rax + 0x70]
aesdec xmm0, xmm1
movups xmm1, xmmword [rax + 0x80]
aesdec xmm0, xmm1
movups xmm1, xmmword [rax + 0x90]
aesdeclast xmm0, xmm1
movups xmmword [rdx], xmm0
ret
Function at 0x50ecc0
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 0x50ed90
jb 0x50edef
movups xmm2, xmmword [rax + 0x10]
movups xmmword [rbx], xmm2
add rbx, 0x10
aeskeygenassist xmm1, xmm2, 1
call fcn.0050eae0
aeskeygenassist xmm1, xmm0, 1
call fcn.0050eb00
aeskeygenassist xmm1, xmm2, 2
call fcn.0050eae0
aeskeygenassist xmm1, xmm0, 2
call fcn.0050eb00
aeskeygenassist xmm1, xmm2, 4
call fcn.0050eae0
aeskeygenassist xmm1, xmm0, 4
call fcn.0050eb00
aeskeygenassist xmm1, xmm2, 8
call fcn.0050eae0
aeskeygenassist xmm1, xmm0, 8
call fcn.0050eb00
aeskeygenassist xmm1, xmm2, 0x10
call fcn.0050eae0
aeskeygenassist xmm1, xmm0, 0x10
call fcn.0050eb00
aeskeygenassist xmm1, xmm2, 0x20
call fcn.0050eae0
aeskeygenassist xmm1, xmm0, 0x20
call fcn.0050eb00
aeskeygenassist xmm1, xmm2, 0x40
call fcn.0050eae0
jmp 0x50ee5d
movq xmm2, qword [rax + 0x10]
aeskeygenassist xmm1, xmm2, 1
call fcn.0050ea40
aeskeygenassist xmm1, xmm2, 2
call fcn.0050eaa0
aeskeygenassist xmm1, xmm2, 4
call fcn.0050ea40
aeskeygenassist xmm1, xmm2, 8
call fcn.0050eaa0
aeskeygenassist xmm1, xmm2, 0x10
call fcn.0050ea40
aeskeygenassist xmm1, xmm2, 0x20
call fcn.0050eaa0
aeskeygenassist xmm1, xmm2, 0x40
call fcn.0050ea40
aeskeygenassist xmm1, xmm2, 0x80
call fcn.0050eaa0
jmp 0x50ee5d
aeskeygenassist xmm1, xmm0, 1
call fcn.0050ea00
aeskeygenassist xmm1, xmm0, 2
call fcn.0050ea00
aeskeygenassist xmm1, xmm0, 4
call fcn.0050ea00
aeskeygenassist xmm1, xmm0, 8
call fcn.0050ea00
aeskeygenassist xmm1, xmm0, 0x10
call fcn.0050ea00
aeskeygenassist xmm1, xmm0, 0x20
call fcn.0050ea00
aeskeygenassist xmm1, xmm0, 0x40
call fcn.0050ea00
aeskeygenassist xmm1, xmm0, 0x80
call fcn.0050ea00
aeskeygenassist xmm1, xmm0, 0x1b
call fcn.0050ea00
aeskeygenassist xmm1, xmm0, 0x36
call fcn.0050ea00
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 0x50ee6a
movups xmm0, xmmword [rbx - 0x10]
movups xmmword [rdx + 0x10], xmm0
ret
Function at 0x50efa0
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 [0x0066bc00]
movdqu xmm14, xmmword [0x0066bef0]
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 0x50f08b
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0xb0]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0xc0]
je 0x50f08b
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 0x50f0f0
ret
Function at 0x521000
Capabilities:
Encode data using base64

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x521200
sub rsp, 0x38
mov qword [rsp + 0x30], rbp
lea rbp, [rsp + 0x30]
mov rcx, qword [rsp + 0x60]
lea rbx, [rcx + 7]
sar rbx, 0x3f
shr rbx, 0x3d
lea rbx, [rbx + rcx]
lea rbx, [rbx + 7]
sar rbx, 3
mov rdx, qword [rsp + 0x50]
cmp rbx, rdx
jg 0x52114a
ja 0x5211f5
mov rax, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x68]
mov r8, rcx
xor r9d, r9d
jmp 0x521080
bswap rdi
mov qword [rax + r9*8], rdi
inc r9
mov rdi, r10
mov rcx, r11
cmp rcx, 8
jl 0x5210ad
mov r10, rdi
sub rdi, rcx
add rdi, 8
neg rdi
sar rdi, 0x3f
lea r11, [rcx - 8]
and rdi, r11
nop
mov rdi, qword [rsi + rdi]
cmp rbx, r9
ja 0x521070
jmp 0x5211ea
test rcx, rcx
jle 0x52110e
xor edi, edi
xor r9d, r9d
jmp 0x5210e0
cmp rdi, 0x40
sbb r11, r11
lea r12, [rdi + 8]
movzx r13d, byte [rcx + rsi - 1]
mov rcx, rdi
shl r13, cl
and r13, r11
or r9, r13
mov rcx, r10
mov rdi, r12
nop dword [rax]
test rcx, rcx
jle 0x5210f3
lea r10, [rcx - 1]
cmp r8, r10
ja 0x5210b9
jmp 0x5211df
lea rsi, [rbx - 1]
nop word [rax + rax]
cmp rbx, rsi
jbe 0x5211d4
mov qword [rax + rbx*8 - 8], r9
jmp 0x521113
dec rbx
test rbx, rbx
jle 0x521125
mov rsi, qword [rax + rbx*8 - 8]
nop dword [rax]
test rsi, rsi
je 0x521110
cmp rdx, rbx
jb 0x5211cc
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x80], rdx
mov rbp, qword [rsp + 0x30]
add rsp, 0x38
ret
cmp rbx, 1
jne 0x52118b
lea rax, [0x005ef7a0]
mov qword [rsp], rax
mov qword [rsp + 8], 1
mov qword [rsp + 0x10], 1
call fcn.00444f80
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x60]
mov ebx, 1
mov edx, 1
jmp 0x52105e
mov qword [rsp + 0x20], rbx
lea rax, [0x005ef7a0]
mov qword [rsp], rax
mov qword [rsp + 8], rbx
lea rax, [rbx + 4]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x10], rax
call fcn.00444f80
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
jmp 0x52105e
mov rcx, rbx
call fcn.0045f040
mov rax, rsi
mov rcx, rbx
call fcn.0045efc0
mov rax, r10
mov rcx, r8
call fcn.0045efc0
mov rax, r9
mov rcx, rbx
call fcn.0045efc0
mov rcx, rbx
call fcn.0045f040
nop
nop
call fcn.0045cde0
jmp fcn.00521000
Function at 0x52f980
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 0x52f9cd
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 0x52fa60
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 0x52faa5
movdqu xmmword [rdx], xmm0
movdqu xmmword [rdx + 0x10], xmm1
movdqu xmmword [rdx + 0x20], xmm2
movdqu xmmword [rdx + 0x30], xmm3
ret
Function at 0x532bc0
Capabilities:
Hash data using sha384
Hash data using sha512

Disassembly:
mov rax, qword [rsp + 8]
mov rcx, qword [rax + 0xd0]
cmp rcx, 6
jne 0x532c4c
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
xorps xmm0, xmm0
movups xmmword [rax + 0xc0], xmm0
ret
cmp rcx, 0xe
jne 0x532cc6
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 0x532c41
cmp rcx, 0xf
jne 0x532d45
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
nop dword [rax + rax]
jmp 0x532c41
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
jmp 0x532c41
Function at 0x5399a0
Capabilities:
Encode data using base64

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x539ae0
sub rsp, 0x38
mov qword [rsp + 0x30], rbp
lea rbp, [rsp + 0x30]
mov rax, qword [rsp + 0x58]
mov rcx, rax
sar rax, 0x3f
shr rax, 0x3d
add rax, rcx
sar rax, 3
shl rax, 3
sub rcx, rax
lea rax, [rcx - 8]
neg rax
cmp rax, 8
je 0x539ad5
mov rdx, qword [rsp + 0x48]
nop dword [rax]
test rdx, rdx
je 0x539ab2
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
lea rax, [0x005efe20]
mov qword [rsp], rax
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rdx
call fcn.00444f80
mov rcx, qword [rsp + 0x20]
cmp rcx, 8
sbb eax, eax
mov rdx, qword [rsp + 0x18]
mov rbx, qword [rsp + 0x40]
movzx esi, byte [rbx]
shr sil, cl
and esi, eax
mov byte [rdx], sil
mov rsi, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x28]
mov r8d, 1
jmp 0x539a94
cmp rdi, 0x20
sbb r9d, r9d
movzx r10d, byte [r8 + rbx - 1]
mov r11, rcx
mov rcx, rdi
shl r10d, cl
and r10d, r9d
mov byte [rdx + r8], r10b
movzx r9d, byte [rbx + r8]
mov rcx, r11
shr r9b, cl
and r9d, eax
or r10d, r9d
mov byte [rdx + r8], r10b
inc r8
cmp rsi, r8
jg 0x539a5f
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x70], rsi
mov rbp, qword [rsp + 0x30]
add rsp, 0x38
ret
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rdx
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x70], rax
mov rbp, qword [rsp + 0x30]
add rsp, 0x38
ret
mov rdx, qword [rsp + 0x48]
jmp 0x539ab2
call fcn.0045cde0
jmp fcn.005399a0
Function at 0x555ca0
Capabilities:
Encode data using base64

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x555f8e
sub rsp, 0x78
mov qword [rsp + 0x70], rbp
lea rbp, [rsp + 0x70]
mov rax, qword [rsp + 0x90]
mov rcx, qword [rax]
test rcx, rcx
je 0x555f4e
mov rdx, qword [rax + 8]
cmp rdx, 2
jge 0x555f25
mov rdx, qword [0x0077c750]
mov rbx, qword [0x0077c758]
nop dword [rax + rax]
test rdx, rdx
jne 0x555f0b
nop
mov rdx, qword [rcx + 0x10]
mov rcx, qword [rcx + 8]
lea rbx, [rdx - 1]
test rbx, rbx
jl 0x555f04
mov rcx, qword [rcx + rdx*8 - 8]
bsr rcx, rcx
mov rdx, 0xffffffffffffffff
cmove rcx, rdx
shl rbx, 6
lea rcx, [rcx + rbx]
lea rcx, [rcx + 1]
lea rdx, [rcx + 7]
sar rdx, 0x3f
shr rdx, 0x3d
lea rcx, [rdx + rcx]
lea rcx, [rcx + 7]
sar rcx, 3
mov rdx, qword [rsp + 0xb8]
mov rbx, rcx
sub rcx, rdx
add rcx, 0xfffffffffffffff5
test rcx, rcx
jl 0x555edc
mov qword [rsp + 0x68], rbx
mov rcx, qword [rsp + 0x80]
mov qword [rsp], rcx
mov rcx, qword [rsp + 0x88]
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x18], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x28], rax
nop dword [rax]
call fcn.00555fa0
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x38]
mov r8, qword [rsp + 0x48]
cmp qword [rsp + 0x58], 0
jne 0x555ec2
mov rdx, qword [rsp + 0x68]
nop dword [rax]
cmp rdx, rsi
jne 0x555e9a
mov rdx, rsi
sub rsi, rcx
mov rbx, qword [rsp + 0xb8]
xor esi, ebx
dec rsi
shr rsi, 0x3f
and rax, rsi
mov rcx, rdx
sub rdx, rbx
cmp rcx, rdx
jb 0x555f85
sub rcx, rdx
mov rsi, rdx
sub rdx, r8
sar rdx, 0x3f
and rdx, rsi
add rdx, rdi
cmp rbx, rcx
jne 0x555f65
lea rcx, [rax - 1]
neg rax
mov rsi, qword [rsp + 0xb0]
xor edi, edi
nop
jmp 0x555e80
movzx r8d, byte [rdi + rsi]
and r8d, ecx
movzx r9d, byte [rdi + rdx]
and r9d, eax
or r8d, r9d
mov byte [rsi + rdi], r8b
inc rdi
nop dword [rax]
cmp rbx, rdi
jg 0x555e62
xorps xmm0, xmm0
movups xmmword [rsp + 0xc8], xmm0
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rax, qword [0x0077c710]
mov rcx, qword [0x0077c718]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], rcx
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov qword [rsp + 0xc8], rdx
mov qword [rsp + 0xd0], rbx
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rax, qword [0x0077c710]
mov rcx, qword [0x0077c718]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], rcx
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
xor ecx, ecx
jmp 0x555d3f
mov qword [rsp + 0xc8], rdx
mov qword [rsp + 0xd0], rbx
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
cmp rdx, 0x7fffffff
jle 0x555f45
mov rdx, qword [0x0077c740]
mov rbx, qword [0x0077c748]
nop dword [rax]
jmp 0x555d00
xor edx, edx
xor ebx, ebx
jmp 0x555d00
mov rdx, qword [0x0077c760]
mov rbx, qword [0x0077c768]
nop dword [rax]
jmp 0x555d00
lea rax, [0x005efca0]
mov qword [rsp], rax
lea rax, [0x0066bdc0]
mov qword [rsp + 8], rax
nop dword [rax]
call fcn.00432ca0
mov rax, rdx
call fcn.0045f080
nop
call fcn.0045cde0
jmp fcn.00555ca0
Function at 0x559320
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x559540
sub rsp, 0x78
mov qword [rsp + 0x70], rbp
lea rbp, [rsp + 0x70]
lea rax, [0x005f22c0]
mov qword [rsp], rax
call fcn.0040cb40
mov rax, qword [rsp + 8]
mov qword [rsp + 0x68], rax
xor ecx, ecx
xor edx, edx
xor ebx, ebx
jmp 0x5593ba
movzx r8d, byte [rsi + rcx]
movzx r9d, byte [rdx + rdi]
xor r8d, r9d
mov byte [rcx + rsi], r8b
inc rdi
inc rsi
cmp rdi, rax
jge 0x559392
cmp rbx, rsi
jle 0x559392
ja 0x55936a
jmp 0x55952f
mov rax, qword [rsp + 0x68]
movzx edi, byte [rax + 3]
lea r8d, [rdi + 1]
mov byte [rax + 3], r8b
cmp dil, 0xff
je 0x5594e8
mov rcx, rsi
mov rdx, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x88]
cmp rcx, rsi
jge 0x559525
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x60], rbx
mov rax, qword [rsp + 0x98]
mov rcx, qword [rax + 0x38]
mov rdx, qword [rsp + 0xa0]
mov qword [rsp], rdx
mov rbx, qword [rsp + 0xa8]
mov qword [rsp + 8], rbx
mov rsi, qword [rsp + 0xb0]
mov qword [rsp + 0x10], rsi
mov rdi, qword [rsp + 0xb8]
mov qword [rsp + 0x18], rdi
call rcx
mov rax, qword [rsp + 0x98]
mov rcx, qword [rax + 0x38]
mov rdx, qword [rsp + 0xa0]
mov qword [rsp], rdx
mov rbx, qword [rsp + 0x68]
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], 4
mov qword [rsp + 0x18], 4
call rcx
mov rax, qword [rsp + 0x98]
mov rcx, qword [rax + 0x30]
mov rdx, qword [rsp + 0xa0]
mov qword [rsp], rdx
mov rbx, qword [rsp + 0x60]
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], 0
mov rbx, qword [rsp + 0x48]
mov qword [rsp + 0x18], rbx
call rcx
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x58], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0x40], rcx
mov rdx, qword [rsp + 0x30]
mov qword [rsp + 0x50], rdx
mov rbx, qword [rsp + 0x98]
mov rsi, qword [rbx + 0x20]
mov rdi, qword [rsp + 0xa0]
mov qword [rsp], rdi
nop
call rsi
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x38]
xor edi, edi
jmp 0x559381
movzx edi, byte [rax + 2]
lea r8d, [rdi + 1]
mov byte [rax + 2], r8b
cmp dil, 0xff
jne 0x5593ad
movzx edi, byte [rax + 1]
lea r8d, [rdi + 1]
mov byte [rax + 1], r8b
cmp dil, 0xff
jne 0x5593ad
movzx edi, byte [rax]
inc edi
mov byte [rax], dil
nop dword [rax]
jmp 0x5593ad
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rax, rsi
mov rcx, rbx
call fcn.0045efc0
nop
nop dword [rax + rax]
call fcn.0045cde0
jmp fcn.00559320
Function at 0x56db00
Capabilities:
Parse credit card information

Disassembly:
movzx eax, byte [rsp + 8]
lea ecx, [rax - 0x61]
cmp cl, 0x19
ja 0x56db13
mov byte [rsp + 0x18], 0
ret
lea ecx, [rax - 0x41]
cmp cl, 0x19
jbe 0x56db0d
lea ecx, [rax - 0x30]
nop
cmp cl, 9
jbe 0x56db0d
mov rcx, qword [rsp + 0x10]
cmp rcx, 3
jne 0x56dca0
cmp al, 0x2c
ja 0x56dc76
lea edx, [rax - 0x21]
nop
cmp dl, 1
ja 0x56db4b
mov byte [rsp + 0x18], 0
ret
cmp al, 0x24
je 0x56db45
cmp al, 0x26
jae 0x56db45
cmp al, 0x2f
ja 0x56dc38
nop dword [rax + rax]
cmp al, 0x26
ja 0x56dc11
cmp al, 0x24
jne 0x56dc07
cmp rcx, 2
jg 0x56dbc9
cmp rcx, 1
je 0x56dbc1
nop dword [rax]
cmp rcx, 2
jne 0x56dba3
cmp al, 0x2f
jne 0x56db94
mov eax, 1
mov byte [rsp + 0x18], al
ret
cmp al, 0x3b
je 0x56db8a
cmp al, 0x2c
je 0x56db8a
cmp al, 0x3f
sete al
jmp 0x56db8f
cmp rcx, 7
jne 0x56dbba
cmp al, 0x21
jne 0x56dbb3
mov byte [rsp + 0x18], 0
ret
add eax, 0xffffffd8
cmp al, 2
jbe 0x56dbad
mov byte [rsp + 0x18], 1
nop
ret
cmp al, 0x3f
sete byte [rsp + 0x18]
ret
cmp rcx, 5
jne 0x56dbef
cmp al, 0x40
jne 0x56dbe0
mov eax, 1
mov byte [rsp + 0x18], al
ret
cmp al, 0x2f
je 0x56dbd3
cmp al, 0x3f
je 0x56dbd3
cmp al, 0x3a
sete al
jmp 0x56dbd8
cmp rcx, 6
je 0x56dc01
cmp rcx, 7
jne 0x56dba3
mov byte [rsp + 0x18], 0
ret
mov byte [rsp + 0x18], 1
ret
cmp al, 0x26
je 0x56db70
jmp 0x56dba3
lea edx, [rax - 0x2b]
cmp dl, 1
jbe 0x56db70
lea edx, [rax - 0x2d]
cmp dl, 1
ja 0x56dc2b
mov byte [rsp + 0x18], 0
ret
cmp al, 0x2f
je 0x56db70
jmp 0x56dba3
cmp al, 0x3d
ja 0x56dc56
lea edx, [rax - 0x3a]
nop
cmp dl, 1
jbe 0x56db70
cmp al, 0x3d
je 0x56db70
jmp 0x56dba3
lea edx, [rax - 0x3f]
nop dword [rax]
cmp dl, 1
jbe 0x56db70
cmp al, 0x5f
je 0x56dc25
cmp al, 0x7e
je 0x56dc25
jmp 0x56dba3
lea edx, [rax - 0x3a]
nop dword [rax]
cmp dl, 4
jbe 0x56db45
cmp al, 0x5b
je 0x56db45
cmp al, 0x5d
je 0x56db45
jmp 0x56db53
cmp rcx, 4
je 0x56db34
jmp 0x56db53
Function at 0x589060
Capabilities:
Encode data using xor

Disassembly:
mov rdi, qword [rsp + 8]
mov rsi, qword [rsp + 0x10]
mov r15, qword [rsp + 0x18]
mov r8, qword [rdi]
mov r9, qword [rdi + 8]
mov r10, qword [rdi + 0x10]
mov r11, qword [rdi + 0x18]
mov r12, qword [rdi + 0x20]
cmp r15, 0x10
jb 0x589127
add r8, qword [rsi]
adc r9, qword [rsi + 8]
adc r10, 1
lea rsi, [rsi + 0x10]
mov rax, r11
mul r8
mov rbx, rax
mov rcx, rdx
mov rax, r11
mul r9
add rcx, rax
adc rdx, 0
mov r13, r11
imul r13, r10
add r13, rdx
mov rax, r12
mul r8
add rcx, rax
adc rdx, 0
mov r8, rdx
mov r14, r12
imul r14, r10
mov rax, r12
mul r9
add r13, rax
adc r14, rdx
add r13, r8
adc r14, 0
mov r8, rbx
mov r9, rcx
mov r10, r13
and r10, 3
mov rbx, r13
and rbx, 0xfffffffffffffffc
add r8, rbx
adc r9, r14
adc r10, 0
shrd r13, r14, 2
shr r14, 2
add r8, r13
adc r9, r14
adc r10, 0
sub r15, 0x10
cmp r15, 0x10
jae 0x58908c
test r15, r15
je 0x58916a
mov rbx, 1
xor rcx, rcx
xor r13, r13
add rsi, r15
shld rcx, rbx, 8
shl rbx, 8
mov r13b, byte [rsi - 1]
xor rbx, r13
dec rsi
dec r15
jne 0x58913c
add r8, rbx
adc r9, rcx
adc r10, 0
mov r15, 0x10
jmp 0x58909b
mov qword [rdi], r8
mov qword [rdi + 8], r9
mov qword [rdi + 0x10], r10
ret