joyce8/EMBER2024-capa huggingface dataset:
Function at 0x3b22b79a0
Capabilities:
Hash data using fnv

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x3b22b7bdb
push rbp
mov rbp, rsp
sub rsp, 0x78
mov ebx, dword [rax + 0x2c]
test ebx, ebx
jne 0x3b22b7a3a
mov qword [rsp + 0x88], rax
lea rbx, [0x3b2437c00]
mov rcx, rax
lea rax, [0x3b25a8880]
call fcn.3b22917c0
test cl, cl
jne 0x3b22b7a23
mov rax, qword [rsp + 0x88]
call fcn.3b22b6d00
mov ecx, 1
mov rdi, rax
mov rsi, rbx
lea rax, [rsp + 0x28]
lea rbx, [0x3b2499930]
call fcn.3b22730a0
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], rbx
call fcn.3b22b8d40
mov rcx, qword [rsp + 0x88]
xor edx, edx
jmp 0x3b22b7a57
lea rdx, [0x3b24330a0]
cmp rax, rdx
jne 0x3b22b7a45
test byte [rbx], al
mov rax, rbx
add rsp, 0x78
pop rbp
ret
call fcn.3b22873a0
add rsp, 0x78
pop rbp
ret
mov rbx, rdx
lea rcx, [0x3b24097a0]
call fcn.3b222bb60
inc rdx
cmp rbx, rdx
jle 0x3b22b7aa1
mov rsi, qword [rax + rdx*8]
cmp qword [rsi + 0x30], rcx
jne 0x3b22b7a54
lea rax, [0x3b25a8880]
lea rbx, [0x3b2437c00]
lea rdi, [0x3b24330a0]
nop dword [rax + rax]
call fcn.3b2291980
lea rdx, [0x3b24330a0]
cmp rax, rdx
jne 0x3b22b7bcb
test byte [rbx], al
mov rax, rbx
add rsp, 0x78
pop rbp
nop
ret
lea rcx, [0x3b23fcf60]
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x68], 0
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x58], rcx
lea rax, [0x3b2413700]
call fcn.3b222eee0
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x58]
test byte [rcx], al
cmp dword [0x3b262eca0], 0
nop
je 0x3b22b7afb
mov rbx, rax
lea rax, [0x3b2413700]
call fcn.3b2234ac0
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rcx]
mov qword [rax], rdx
movups xmm0, xmmword [rcx + 8]
movups xmmword [rax + 8], xmm0
movups xmm0, xmmword [rcx + 0x18]
movups xmmword [rax + 0x18], xmm0
movups xmm0, xmmword [rcx + 0x28]
movups xmmword [rax + 0x28], xmm0
mov rbx, qword [rsp + 0x48]
xor ecx, ecx
xor edi, edi
xor esi, esi
mov r8d, esi
mov rax, qword [rsp + 0x50]
call fcn.3b2221a00
call fcn.3b2287460
mov rsi, qword [rsp + 0x70]
mov dword [rsi + 0x28], eax
mov dword [rsi + 0x2c], 0
mov rcx, qword [rsp + 0x88]
mov edx, dword [rcx + 0x10]
xor eax, eax
jmp 0x3b22b7b62
imul edx, edx, 0x1000193
xor edx, 0x2a
mov eax, 1
test rax, rax
jle 0x3b22b7b54
mov dword [rsi + 0x10], edx
cmp dword [0x3b262eca0], 0
je 0x3b22b7b83
call fcn.3b228bb00
mov qword [r11], rcx
mov rdx, qword [rsi + 0x30]
mov qword [r11 + 8], rdx
mov qword [rsi + 0x30], rcx
lea rax, [0x3b25a8880]
lea rbx, [0x3b2437c00]
lea rdi, [0x3b24330a0]
nop dword [rax]
call fcn.3b2291980
lea rdx, [0x3b24330a0]
cmp rax, rdx
jne 0x3b22b7bbc
test byte [rbx], al
mov rax, rbx
add rsp, 0x78
pop rbp
ret
mov rbx, rdx
lea rcx, [0x3b24097a0]
call fcn.3b222bb60
mov rbx, rdx
lea rcx, [0x3b24097a0]
call fcn.3b222bb60
nop
mov qword [rsp + 8], rax
call fcn.3b2289ba0
mov rax, qword [rsp + 8]
jmp fcn.3b22b79a0
Function at 0x3b22e8540
Capabilities:
Hash data using fnv

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x3b22e8c7f
push rbp
mov rbp, rsp
sub rsp, 0x10
mov qword [rsp + 0x20], rax
movabs rcx, 0xcbf29ce484222325
jmp 0x3b22e856d
lea rax, [rdx + 0x10]
dec rbx
mov rcx, rsi
test rbx, rbx
jle 0x3b22e87f1
mov rdx, rax
mov rsi, qword [rax]
nop dword [rax]
test rsi, rsi
je 0x3b22e881d
mov edi, dword [rsi + 0x10]
shr edi, 1
mov r8, qword [rax + 8]
and edi, 0x3f
lea rax, [0x3b24a0020]
jmp qword [rax + rdi*8]
mov rax, rcx
add rsp, 0x10
pop rbp
ret
lea rax, [0x3b2402600]
lea rbx, [0x3b249bc30]
call fcn.3b2258620
inc rax
cmp rax, r8
jge 0x3b22e8842
mov r9, qword [rsi + rax*8]
xor r10d, r10d
nop
jmp 0x3b22e8877
lea rdi, [0x3b2402680]
mov rsi, rcx
movabs rcx, 0x100000001b3
jmp 0x3b22e8563
movzx r11d, r9b
xor rcx, r11
inc r10
shr r9, 8
movabs r11, 0x100000001b3
imul rcx, r11
cmp r10, 8
jl 0x3b22e885b
jmp 0x3b22e8830
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.3b2289ba0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.3b22e8540

Function at 0x3b22e8e20
Capabilities:
Hash data using fnv

Disassembly:
test byte [rax], al
mov rcx, rbx
and ebx, 0x7f
shl rbx, 5
lea rdx, [rax + rbx]
xor eax, eax
jmp 0x3b22e8e37
inc rax
cmp rax, 4
jge 0x3b22e8e4f
lea rbx, [rdx + rax*8]
mov rbx, qword [rbx]
cmp rbx, rcx
jne 0x3b22e8e34
mov eax, 1
ret
xor eax, eax
movabs rbx, 0xcbf29ce484222325
jmp 0x3b22e8e60
inc rax
cmp rax, 4
jge 0x3b22e8e6e
mov rsi, qword [rdx + rax*8]
xor edi, edi
jmp 0x3b22e8e97
and ebx, 3
lea rdx, [rdx + rbx*8]
xchg qword [rdx], rcx
xor eax, eax
ret
movzx r8d, sil
xor rbx, r8
inc rdi
shr rsi, 8
movabs r8, 0x100000001b3
imul rbx, r8
cmp rdi, 8
jl 0x3b22e8e7b
jmp 0x3b22e8e5d
Function at 0x3b22f8e00
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x3b22f8f4e
push rbp
mov rbp, rsp
sub rsp, 0x68
movups xmmword [rsp + 0x40], xmm15
mov qword [rsp + 0x30], 0
mov rax, qword [0x3b23da1e8]
call fcn.3b22e90a0
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x28], rbx
movups xmmword [rsp + 0x50], xmm15
mov qword [rsp + 0x60], 0
lea rcx, [0x3b22f8f60]
mov qword [rsp + 0x50], rcx
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x58], rcx
lea rcx, [rsp + 0x40]
mov qword [rsp + 0x60], rcx
mov qword [rsp], rax
mov qword [rsp + 8], rbx
mov byte [rsp + 0x10], 0x2b
call fcn.3b2223f40
xorps xmm15, xmm15
mov r14, qword [0x3b262ebe8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rcx, qword [rsp + 0x18]
cmp rcx, 0xffffffffffffffff
je 0x3b22f8f12
mov rdx, qword [rsp + 0x28]
nop dword [rax + rax]
cmp rdx, rcx
jb 0x3b22f8f48
mov qword [rsp + 0x20], rcx
mov rsi, qword [rsp + 0x50]
mov rax, qword [rsp + 0x38]
mov rbx, rcx
lea rdx, [rsp + 0x50]
call rsi
mov rax, qword [rsp + 0x20]
lea rcx, [rax + 1]
mov rbx, qword [rsp + 0x28]
cmp rbx, rcx
jb 0x3b22f8f3d
mov rsi, qword [rsp + 0x50]
sub rbx, rax
dec rbx
mov rdi, rbx
neg rdi
sar rdi, 0x3f
and rcx, rdi
mov rdi, qword [rsp + 0x38]
lea rax, [rdi + rcx]
lea rdx, [rsp + 0x50]
call rsi
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x48]
add rsp, 0x68
pop rbp
ret
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x28]
lea rdx, [rsp + 0x50]
call rcx
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x48]
add rsp, 0x68
pop rbp
ret
mov rax, rcx
mov rcx, rbx
call fcn.3b228bf60
call fcn.3b228bee0
nop
call fcn.3b2289ba0
jmp fcn.3b22f8e00
Function at 0x3b2339e20
Capabilities:
Parse credit card information

Disassembly:
lea ecx, [rax - 0x61]
cmp cl, 0x19
jbe 0x3b2339e38
lea ecx, [rax - 0x41]
cmp cl, 0x19
jbe 0x3b2339e38
lea ecx, [rax - 0x30]
cmp cl, 9
ja 0x3b2339e40
xor eax, eax
ret
cmp rbx, 3
je 0x3b2339e4c
cmp rbx, 4
jne 0x3b2339e79
cmp al, 0x2c
ja 0x3b2339e66
lea ecx, [rax - 0x21]
cmp cl, 1
jbe 0x3b2339e76
cmp al, 0x24
je 0x3b2339e76
nop dword [rax]
cmp al, 0x26
jae 0x3b2339e76
jmp 0x3b2339e79
lea ecx, [rax - 0x3a]
cmp cl, 4
jbe 0x3b2339e76
cmp al, 0x5b
je 0x3b2339e76
cmp al, 0x5d
jne 0x3b2339e79
xor eax, eax
ret
cmp al, 0x2f
ja 0x3b2339eb2
nop dword [rax]
cmp al, 0x26
ja 0x3b2339e91
cmp al, 0x24
je 0x3b2339ed1
cmp al, 0x26
je 0x3b2339ed1
jmp 0x3b2339f4b
lea ecx, [rax - 0x2b]
cmp cl, 1
jbe 0x3b2339ed1
lea ecx, [rax - 0x2d]
nop dword [rax]
cmp cl, 1
jbe 0x3b2339f48
cmp al, 0x2f
je 0x3b2339ed1
jmp 0x3b2339f4b
cmp al, 0x3d
ja 0x3b2339ec9
lea ecx, [rax - 0x3a]
cmp cl, 1
jbe 0x3b2339ed1
nop
cmp al, 0x3d
je 0x3b2339ed1
jmp 0x3b2339f4b
lea ecx, [rax - 0x3f]
cmp cl, 1
ja 0x3b2339f40
cmp rbx, 2
jg 0x3b2339f07
cmp rbx, 1
je 0x3b2339f01
nop dword [rax]
cmp rbx, 2
jne 0x3b2339f4b
cmp al, 0x2f
je 0x3b2339ef2
cmp al, 0x3b
je 0x3b2339ef2
cmp al, 0x2c
jne 0x3b2339ef9
mov ecx, 1
jmp 0x3b2339efe
cmp al, 0x3f
sete cl
mov eax, ecx
ret
cmp al, 0x3f
sete al
ret
cmp rbx, 5
jne 0x3b2339f2a
cmp al, 0x40
je 0x3b2339f19
cmp al, 0x2f
je 0x3b2339f19
cmp al, 0x3f
jne 0x3b2339f22
mov ecx, 1
nop
jmp 0x3b2339f27
cmp al, 0x3a
sete cl
mov eax, ecx
ret
cmp rbx, 6
je 0x3b2339f39
cmp rbx, 7
jne 0x3b2339f4b
xor eax, eax
ret
mov eax, 1
ret
cmp al, 0x5f
je 0x3b2339f48
cmp al, 0x7e
jne 0x3b2339f4b
xor eax, eax
ret
cmp rbx, 7
jne 0x3b2339f61
cmp al, 0x21
je 0x3b2339f5d
lea ecx, [rax - 0x28]
cmp cl, 2
ja 0x3b2339f61
xor eax, eax
nop
ret
mov eax, 1
ret
Function at 0x3b2343340
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x3b2343486
push rbp
mov rbp, rsp
sub rsp, 0x50
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x78], rdi
nop dword [rax]
cmp rcx, r9
jb 0x3b2343476
mov qword [rsp + 0x90], r9
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x60], rax
mov qword [rsp], rax
mov qword [rsp + 8], r9
mov qword [rsp + 0x10], rcx
mov qword [rsp + 0x18], rax
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x40], r8
call fcn.3b234dd40
xorps xmm15, xmm15
mov r14, qword [0x3b262ebe8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x48]
test rax, rax
je 0x3b234345b
mov rbx, qword [rsp + 0x90]
mov rsi, rbx
sar rbx, 1
lea rcx, [rsi + rbx]
mov rdx, qword [rsp + 0x70]
cmp rdx, rcx
jb 0x3b2343471
cmp rsi, rcx
ja 0x3b2343469
sub rdx, rsi
mov rdi, rdx
neg rdx
mov r8, rsi
shl rsi, 3
sar rdx, 0x3f
and rsi, rdx
mov rdx, qword [rsp + 0x60]
add rdx, rsi
mov rcx, qword [rsp + 0x68]
cmp rcx, r8
jb 0x3b2343461
mov qword [rsp], rdx
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
mov qword [rsp + 0x18], rdx
sub rcx, r8
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x30], rax
call fcn.3b234de80
xorps xmm15, xmm15
mov r14, qword [0x3b262ebe8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
add rsp, 0x50
pop rbp
ret
mov rax, r8
call fcn.3b228bf60
mov rax, rsi
call fcn.3b228bf60
call fcn.3b228bf20
mov rdx, rcx
mov rcx, r9
nop dword [rax]
call fcn.3b228bf20
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
call fcn.3b2289ba0
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]
jmp fcn.3b2343340
Function at 0x3b23434e0
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x3b2343626
push rbp
mov rbp, rsp
sub rsp, 0x50
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x78], rdi
nop dword [rax]
cmp rcx, r9
jb 0x3b2343616
mov qword [rsp + 0x90], r9
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x60], rax
mov qword [rsp], rax
mov qword [rsp + 8], r9
mov qword [rsp + 0x10], rcx
mov qword [rsp + 0x18], rax
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x40], r8
call fcn.3b234dde0
xorps xmm15, xmm15
mov r14, qword [0x3b262ebe8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x48]
test rax, rax
je 0x3b23435fb
mov rbx, qword [rsp + 0x90]
mov rsi, rbx
sar rbx, 1
lea rcx, [rsi + rbx]
mov rdx, qword [rsp + 0x70]
cmp rdx, rcx
jb 0x3b2343611
cmp rsi, rcx
ja 0x3b2343609
sub rdx, rsi
mov rdi, rdx
neg rdx
mov r8, rsi
shl rsi, 3
sar rdx, 0x3f
and rsi, rdx
mov rdx, qword [rsp + 0x60]
add rdx, rsi
mov rcx, qword [rsp + 0x68]
cmp rcx, r8
jb 0x3b2343601
mov qword [rsp], rdx
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
mov qword [rsp + 0x18], rdx
sub rcx, r8
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x30], rax
call fcn.3b234df20
xorps xmm15, xmm15
mov r14, qword [0x3b262ebe8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
add rsp, 0x50
pop rbp
ret
mov rax, r8
call fcn.3b228bf60
mov rax, rsi
call fcn.3b228bf60
call fcn.3b228bf20
mov rdx, rcx
mov rcx, r9
nop dword [rax]
call fcn.3b228bf20
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
call fcn.3b2289ba0
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]
jmp fcn.3b23434e0
Function at 0x3b2367e80
Capabilities:
Encode data using add xor sub operations
Encode data using xor

Disassembly:
movd xmm0, dword [rsp + 8]
mov rsi, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
movdqu xmm1, xmmword [rsi]
movdqu xmm2, xmmword [rsi + 0x10]
movdqu xmm3, xmmword [rsi + 0x20]
movdqu xmm4, xmmword [rsi + 0x30]
pxor xmm1, xmm0
add rsi, 0x40
sub rcx, 0x40
cmp rcx, 0x40
jb 0x3b2367f55
movdqa xmm0, xmmword [0x3b249b200]
movdqa xmm5, xmm1
movdqa xmm6, xmm2
movdqa xmm7, xmm3
movdqa xmm8, xmm4
pclmulqdq xmm1, xmm0, 0
pclmulqdq xmm2, xmm0, 0
pclmulqdq xmm3, xmm0, 0
pclmulqdq xmm4, xmm0, 0
movdqu xmm11, xmmword [rsi]
movdqu xmm12, xmmword [rsi + 0x10]
movdqu xmm13, xmmword [rsi + 0x20]
movdqu xmm14, xmmword [rsi + 0x30]
pclmulqdq xmm5, xmm0, 0x11
pclmulqdq xmm6, xmm0, 0x11
pclmulqdq xmm7, xmm0, 0x11
pclmulqdq xmm8, xmm0, 0x11
pxor xmm1, xmm5
pxor xmm2, xmm6
pxor xmm3, xmm7
pxor xmm4, xmm8
pxor xmm1, xmm11
pxor xmm2, xmm12
pxor xmm3, xmm13
pxor xmm4, xmm14
add rdi, 0x40
add rsi, 0x40
sub rcx, 0x40
cmp rcx, 0x40
jge 0x3b2367ec1
movdqa xmm0, xmmword [0x3b249b210]
movdqa xmm5, xmm1
pclmulqdq xmm1, xmm0, 0
pclmulqdq xmm5, xmm0, 0x11
pxor xmm1, xmm5
pxor xmm1, xmm2
movdqa xmm5, xmm1
pclmulqdq xmm1, xmm0, 0
pclmulqdq xmm5, xmm0, 0x11
pxor xmm1, xmm5
pxor xmm1, xmm3
movdqa xmm5, xmm1
pclmulqdq xmm1, xmm0, 0
pclmulqdq xmm5, xmm0, 0x11
pxor xmm1, xmm5
pxor xmm1, xmm4
cmp rcx, 0x10
jb 0x3b2367fd7
movdqu xmm10, xmmword [rsi]
movdqa xmm5, xmm1
pclmulqdq xmm1, xmm0, 0
pclmulqdq xmm5, xmm0, 0x11
pxor xmm1, xmm5
pxor xmm1, xmm10
sub rcx, 0x10
add rsi, 0x10
cmp rcx, 0x10
jge 0x3b2367fab
pcmpeqb xmm3, xmm3
pclmulqdq xmm0, xmm1, 1
psrldq xmm1, 8
pxor xmm1, xmm0
movdqa xmm2, xmm1
movq xmm0, qword [0x3b249af00]
psrlq xmm3, 0x20
psrldq xmm2, 4
pand xmm1, xmm3
pclmulqdq xmm1, xmm0, 0
pxor xmm1, xmm2
movdqa xmm0, xmmword [0x3b249b220]
movdqa xmm2, xmm1
pand xmm1, xmm3
pclmulqdq xmm1, xmm0, 0x10
pand xmm1, xmm3
pclmulqdq xmm1, xmm0, 0
pxor xmm1, xmm2
pextrd eax, xmm1, 1
mov dword [rsp + 0x28], eax
ret
Function at 0x3b237a080
Capabilities:
Encode data using base64

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x3b237a1b0
push rbp
mov rbp, rsp
sub rsp, 0x68
mov qword [rsp + 0x80], rbx
mov rcx, qword [rax]
mov qword [rsp + 0x18], rcx
movups xmm0, xmmword [rax + 8]
movups xmmword [rsp + 0x20], xmm0
movups xmm0, xmmword [rax + 0x18]
movups xmmword [rsp + 0x30], xmm0
lea rax, [rsp + 0x18]
call fcn.3b2379da0
movups xmmword [rsp + 0x40], xmm15
movups xmmword [rsp + 0x48], xmm15
movups xmmword [rsp + 0x58], xmm15
mov rcx, qword [rsp + 0x18]
mov qword [rsp + 0x40], rcx
mov rcx, qword [rsp + 0x20]
mov qword [rsp + 0x48], rcx
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0x50], rcx
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0x58], rcx
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x60], rcx
mov rcx, qword [rsp + 0x80]
xor eax, eax
jmp 0x3b237a114
inc rax
mov rcx, rbx
cmp rax, 5
jge 0x3b237a157
mov rdx, qword [rsp + rax*8 + 0x40]
imul rsi, rax, 0x33
mov rdi, rsi
sar rsi, 0x3f
shr rsi, 0x3d
add rsi, rdi
mov r8, rsi
and rsi, 0xfffffffffffffff8
sub rdi, rsi
mov rbx, rcx
mov rcx, rdi
shl rdx, cl
cmp rcx, 0x40
sbb rsi, rsi
and rdx, rsi
mov qword [rsp + 0x10], rdx
xor ecx, ecx
jmp 0x3b237a183
test byte [rcx], al
mov rax, rcx
mov ebx, 0x20
mov rcx, rbx
add rsp, 0x68
pop rbp
ret
test byte [rbx], al
movzx edi, byte [rsp + rcx + 0x10]
movzx r9d, byte [rbx + rsi]
or r9d, edi
mov byte [rbx + rsi], r9b
inc rcx
mov r8, rdx
cmp rcx, 8
jge 0x3b237a10e
mov rdx, r8
sar r8, 3
lea rsi, [r8 + rcx]
cmp rsi, 0x20
jge 0x3b237a10e
nop
jb 0x3b237a16a
mov rax, rsi
mov ecx, 0x20
call fcn.3b228bea0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.3b2289ba0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp fcn.3b237a080
Function at 0x3b237b580
Capabilities:
Hash data using sha384
Hash data using sha512

Disassembly:
mov rcx, qword [rax + 0xd0]
cmp rcx, 6
jne 0x3b237b605
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 0x3b237b766
cmp rcx, 0xe
jne 0x3b237b680
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 0x3b237b766
cmp rcx, 0xf
jne 0x3b237b6f7
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 0x3b237b766
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
Function at 0x3b23aa320
Capabilities:
Create thread

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
cmp edx, 1
je 0x3b23aa340
mov eax, 1
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
ret
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_HeapCreate]
mov rdi, qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov rbx, rax
call rdi
mov rsi, qword [sym.imp.KERNEL32.dll_HeapUnlock]
mov rcx, rax
call rsi
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
xor edx, edx
mov ecx, 2
mov r8d, eax
call qword [sym.imp.KERNEL32.dll_OpenThread]
lea r8, [0x3b23aa040]
xor edx, edx
xor ecx, ecx
mov r9, rax
lea rax, [rsp + 0x3c]
mov dword [rsp + 0x20], 0
mov qword [rsp + 0x28], rax
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov rbp, qword [sym.imp.KERNEL32.dll_SetThreadPriority]
mov edx, 0xf
mov rcx, rax
call rbp
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov edx, 0xfffffff1
mov rcx, rax
call rbp
call rdi
mov rcx, rax
call rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_HeapDestroy]
mov eax, 1
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
ret

Function at 0x3b23aa990
Capabilities:
Enumerate gui resources

Disassembly:
test dl, dl
je 0x3b23aa9a0
mov rax, rcx
ret
jmp fcn.3b23aaf60

Function at 0x3b23aa9b0
Capabilities:
Log keystrokes

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x58
mov ebx, ecx
mov edi, edx
mov rsi, r8
xor edx, edx
mov ebp, r9d
movzx ecx, cl
call qword [sym.imp.USER32.dll_MapVirtualKeyA]
cmp ebx, 0x5d
jg 0x3b23aaaa0
cmp ebx, 0x20
jle 0x3b23aaa10
movabs rcx, 0x1c000000000038ff
lea edx, [rbx - 0x21]
bt rcx, rdx
jae 0x3b23aaa15
test rsi, rsi
je 0x3b23aaa50
test bpl, bpl
je 0x3b23aaac0
mov rcx, rsi
mov edx, 0x101
jmp 0x3b23aaa33
cmp ebx, 0x13
je 0x3b23aa9ee
test rsi, rsi
je 0x3b23aaa53
mov rcx, rsi
test bpl, bpl
je 0x3b23aaad8
mov edx, 0x100
test edi, edi
jne 0x3b23aaaca
xor r9d, r9d
movsxd r8, ebx
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop rbp
jmp qword [sym.imp.USER32.dll_PostMessageW]
or edi, 1
mov word [rsp + 0x28], bx
lea rdx, [rsp + 0x20]
mov r8d, 0x28
mov ecx, 1
mov dword [rsp + 0x20], 1
mov word [rsp + 0x2a], ax
mov dword [rsp + 0x2c], edi
mov dword [rsp + 0x30], 0
mov qword [rsp + 0x38], 0
call qword [sym.imp.USER32.dll_SendInput]
nop
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop rbp
ret
cmp ebx, 0xa3
je 0x3b23aa9ee
lea edx, [rbx - 0xa5]
cmp edx, 0xf
jbe 0x3b23aa9ee
jmp 0x3b23aaa15
mov ecx, esi
call fcn.3b23aaf60
mov rcx, rax
mov edx, 0x101
jmp 0x3b23aaa33
call fcn.3b23aaf60
mov rcx, rax
jmp 0x3b23aaa26

Function at 0x3b23aaf60
Capabilities:
Enumerate gui resources

Disassembly:
sub rsp, 0x38
mov qword [rsp + 0x28], 0
lea rdx, [rsp + 0x20]
mov dword [rsp + 0x28], ecx
lea rcx, [0x3b23aaec0]
mov qword [rsp + 0x20], 0
call qword [sym.imp.USER32.dll_EnumWindows]
mov rax, qword [rsp + 0x20]
add rsp, 0x38
ret
Function at 0x3b23ac140
Capabilities:
Get graphical window text

Disassembly:
push rsi
push rbx
sub rsp, 0x28
mov rbx, rcx
call fcn.3b23abd70
lea rcx, str.is_valid_failed.
test al, al
jne 0x3b23ac168
mov rax, rcx
add rsp, 0x28
pop rbx
pop rsi
ret
lea rsi, [rbx + 8]
mov rcx, qword [rbx]
mov r8d, 0x200
mov rdx, rsi
call qword [sym.imp.USER32.dll_GetWindowTextA]
lea rcx, [0x3b259a394]
test eax, eax
jle 0x3b23ac159
mov ecx, 0x64
mov edx, 8
call sub.msvcrt.dll_calloc
mov rcx, rax
test rax, rax
je 0x3b23ac159
mov rdx, rsi
call sub.msvcrt.dll_strcpy
mov rcx, rax
mov rax, rcx
add rsp, 0x28
pop rbx
pop rsi
ret

Function at 0x3b23b23f0
Capabilities:
Write file on windows

Disassembly:
push rsi
push rbx
sub rsp, 0x38
mov rbx, rcx
lea rax, [rsp + 0x58]
mov ecx, 2
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x68], r9
mov qword [rsp + 0x28], rax
call fcn.3b23b32c0
mov r8d, 0x1b
mov edx, 1
lea rcx, str.Mingw_w64_runtime_failure:_n
mov r9, rax
call sub.msvcrt.dll_fwrite
mov rsi, qword [rsp + 0x28]
mov ecx, 2
call fcn.3b23b32c0
mov rdx, rbx
mov rcx, rax
mov r8, rsi
call sub.msvcrt.dll_vfprintf
call sub.msvcrt.dll_abort
nop
nop dword [rax]

Function at 0x3b23b2460
Capabilities:
Allocate or change rwx memory

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x50
movsxd rsi, dword [0x3b2633784]
mov rbx, rcx
test esi, esi
jle 0x3b23b2590
mov rax, qword [0x3b2633788]
xor r9d, r9d
add rax, 0x18
nop word [rax + rax]
mov r8, qword [rax]
cmp rbx, r8
jb 0x3b23b24ab
mov rdx, qword [rax + 8]
mov edx, dword [rdx + 8]
add r8, rdx
cmp rbx, r8
jb 0x3b23b2535
add r9d, 1
add rax, 0x28
cmp r9d, esi
jne 0x3b23b2490
mov rcx, rbx
call fcn.3b23b2cc0
mov rdi, rax
test rax, rax
je 0x3b23b25b2
mov rax, qword [0x3b2633788]
lea rbx, [rsi + rsi*4]
shl rbx, 3
add rax, rbx
mov qword [rax + 0x20], rdi
mov dword [rax], 0
call fcn.3b23b2e00
mov edx, dword [rdi + 0xc]
mov r8d, 0x30
lea rcx, [rax + rdx]
mov rax, qword [0x3b2633788]
lea rdx, [rsp + 0x20]
mov qword [rax + rbx + 0x18], rcx
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x3b23b2597
mov eax, dword [rsp + 0x44]
lea edx, [rax - 4]
and edx, 0xfffffffb
je 0x3b23b252e
lea edx, [rax - 0x40]
and edx, 0xffffffbf
jne 0x3b23b2540
add dword [0x3b2633784], 1
add rsp, 0x50
pop rbx
pop rsi
pop rdi
ret
cmp eax, 2
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x38]
mov r8d, 0x40
mov eax, 4
cmove r8d, eax
add rbx, qword [0x3b2633788]
mov qword [rbx + 8], rcx
mov r9, rbx
mov qword [rbx + 0x10], rdx
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
jne 0x3b23b252e
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.__VirtualProtect_failed_with_code_0x_x
mov edx, eax
call fcn.3b23b23f0
nop dword [rax]
xor esi, esi
jmp 0x3b23b24b8
mov rax, qword [0x3b2633788]
mov edx, dword [rdi + 8]
lea rcx, str.__VirtualQuery_failed_for__d_bytes_at_address__p
mov r8, qword [rax + rbx + 0x18]
call fcn.3b23b23f0
mov rdx, rbx
lea rcx, str.Address__p_has_no_image_section
call fcn.3b23b23f0
nop
nop word cs:[rax + rax]
nop dword [rax]