joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140034c30
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x20
movzx r14d, byte [rcx + 0x20]
mov ebp, r8d
mov rbx, qword [rdx]
xor r14d, 3
mov rdi, rdx
mov rsi, rcx
test rbx, rbx
je 0x140034cf8
mov qword [rsp + 0x40], r15
lea r15, fcn.140042df0
nop dword [rax]
mov eax, ebp
dec ebp
test eax, eax
je 0x140034cdd
cmp byte [rbx + 9], 6
jne 0x140034c90
lea rdx, [rbx + 0x40]
mov r8d, 0xffffffff
mov rcx, rsi
call fcn.140034c30
movzx ecx, byte [rbx + 8]
mov eax, ecx
xor eax, 3
test r14d, eax
je 0x140034cb1
movzx eax, byte [rsi + 0x20]
and cl, 0xf8
and al, 3
mov rdi, rbx
or cl, al
mov byte [rbx + 8], cl
jmp 0x140034cd5
mov rax, qword [rbx]
mov qword [rdi], rax
cmp rbx, qword [rsi + 0x28]
jne 0x140034cc4
mov rax, qword [rbx]
mov qword [rsi + 0x28], rax
movzx eax, byte [rbx + 9]
mov rdx, rbx
sub eax, 4
mov rcx, rsi
call qword [r15 + rax*8]
mov rbx, qword [rdi]
test rbx, rbx
jne 0x140034c70
mov r15, qword [rsp + 0x40]
mov rax, rdi
mov rbx, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x50]
add rsp, 0x20
pop r14
pop rdi
pop rsi
ret
mov rax, rdx
jmp 0x140034ce5

Function at 0x140036770
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rdi
push r12
push r15
sub rsp, 0x20
mov rbp, rdx
mov rbx, r8
movzx edx, byte [rdx + 0x3c]
mov r12, rcx
lea rdx, [rdx*8 + 0x28]
call fcn.140033eb0
lea r8, [rbp + 0x68]
mov rdi, rax
mov word [rax + 9], 8
mov byte [rax + 0xb], 0
mov qword [rax + 0x20], r8
mov qword [rax + 0x10], rbx
movzx edx, byte [rbp + 0x3d]
movzx r15d, byte [rbp + 0x3c]
add edx, 0x20
mov ecx, edx
shr ecx, 3
and cl, 0x20
sub dl, cl
mov byte [rbp + 0x3d], dl
test r15b, r15b
je 0x140036854
mov qword [rsp + 0x40], rsi
xor ebx, ebx
mov qword [rsp + 0x48], r14
lea rsi, [rax + 0x28]
mov r14d, r15d
nop dword [rax + rax]
mov edx, 0x30
mov rcx, r12
call fcn.140033eb0
mov qword [rax + 0x10], 0xffffffffffffffff
lea rsi, [rsi + 8]
lea rbx, [rbx + 2]
lea rcx, [rax + 0x10]
mov word [rax + 9], 0x105
mov qword [rax + 0x20], rcx
mov rcx, qword [rbp + 0x28]
movzx edx, word [rcx + rbx - 2]
mov ecx, edx
shl edx, 0x18
shr ecx, 0xe
xor edx, ebp
and cl, 1
mov dword [rax + 0x28], edx
mov byte [rax + 0xb], cl
mov qword [rsi - 8], rax
sub r14, 1
jne 0x1400367f0
mov r14, qword [rsp + 0x48]
mov rax, rdi
mov rsi, qword [rsp + 0x40]
mov byte [rdi + 0xb], r15b
jmp 0x140036858
mov byte [rax + 0xb], r15b
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
add rsp, 0x20
pop r15
pop r12
pop rdi
ret
Function at 0x1400410f0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x20
mov rbx, rdx
mov r14, r9
sub rdx, rcx
mov edi, r8d
sub rdx, 0x68
mov rbp, rcx
sar rdx, 2
call fcn.1400420f0
test rax, rax
jne 0x1400411a2
lea rsi, [rbp + 0x68]
lea r15, [0x1400cded0]
sub rbx, 4
cmp rbx, rsi
jbe 0x14004116b
mov eax, dword [rbx]
movzx edx, al
mov ecx, eax
shr ecx, 8
movzx r8d, cl
movzx ecx, word [r15 + rdx*2]
and cx, 7
cmp cx, 2
jne 0x14004116f
cmp edi, r8d
jb 0x140041134
cmp edx, 0x2c
jne 0x14004116b
shr eax, 0x10
cmp edi, eax
ja 0x140041134
xor eax, eax
jmp 0x1400411ac
cmp cx, 1
jne 0x140041134
cmp r8d, edi
jne 0x140041134
cmp edx, 0x12
jne 0x1400411c5
mov edi, eax
mov rdx, rbx
sub rdx, rbp
shr edi, 0x10
sub rdx, 0x68
mov r8d, edi
sar rdx, 2
mov rcx, rbp
call fcn.1400420f0
test rax, rax
je 0x140041134
mov qword [r14], rax
lea rax, str.local
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop r14
pop rdi
ret
cmp edx, 0x2d
je 0x140041261
cmp edx, 0x36
je 0x14004123c
cmp edx, 0x39
jne 0x14004116b
mov ecx, eax
shr rcx, 0x10
movzx edx, cl
mov rcx, qword [rbp + 0x20]
not rdx
mov rdx, qword [rcx + rdx*8]
add rdx, 0x18
mov qword [r14], rdx
mov r9d, dword [rbx - 4]
cmp r9b, 0x12
jne 0x140041230
mov ecx, r9d
shr ecx, 8
movzx edx, cl
lea ecx, [r8 + 2]
cmp edx, ecx
jne 0x140041230
shr eax, 8
lea rcx, str.method
xor eax, r9d
test eax, 0xffff0000
lea rax, str.field
cmove rax, rcx
jmp 0x1400411ac
lea rax, str.field
jmp 0x1400411ac
mov rcx, rax
mov rax, qword [rbp + 0x20]
shr rcx, 0x10
not rcx
mov rcx, qword [rax + rcx*8]
lea rax, str.global
add rcx, 0x18
mov qword [r14], rcx
jmp 0x1400411ac
mov rdx, qword [rbp + 0x58]
shr eax, 0x10
test rdx, rdx
jne 0x140041283
lea rdx, [0x1400dcd04]
mov qword [r14], rdx
lea rax, str.upvalue
jmp 0x1400411ac
test eax, eax
je 0x14004129f
nop word [rax + rax]
movzx ecx, byte [rdx]
inc rdx
test cl, cl
jne 0x140041290
add eax, 0xffffffff
jne 0x140041290
mov qword [r14], rdx
lea rax, str.upvalue
jmp 0x1400411ac
Function at 0x1400412b0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rax, qword [rcx + 0x38]
mov rsi, r8
add rax, 8
mov rbx, rcx
cmp rdx, rax
jbe 0x1400413c4
mov r9, qword [rdx]
movzx eax, r9b
and al, 7
cmp al, 3
jne 0x1400412ed
and r9, 0xfffffffffffffff8
sub rdx, r9
mov r9, qword [rdx]
mov rcx, rdx
test r9b, 3
jne 0x140041308
movzx eax, byte [r9 - 3]
lea rax, [rax*8 + 0x10]
sub rcx, rax
jmp 0x14004130f
and r9, 0xfffffffffffffff8
sub rcx, r9
mov rdi, qword [rcx - 8]
movabs rax, 0x7fffffffffff
and rdi, rax
mov r8, rdx
mov rdx, rdi
mov rcx, rbx
call fcn.140041f10
cmp eax, 0xffffffff
je 0x1400413c4
mov rcx, qword [rdi + 0x20]
lea r8, [0x1400cded0]
mov eax, eax
sub rcx, 0x68
add rax, 0x1a
mov r10d, dword [rcx + rax*4]
lea rdx, [rcx + rax*4]
movzx eax, r10b
movzx r8d, word [r8 + rax*2]
shr r8d, 0xb
cmp r8d, 9
jne 0x140041394
mov eax, r10d
shr eax, 8
movzx r9d, al
cmp r10b, 0x45
lea r8d, [r9 - 3]
cmovne r8d, r9d
mov r9, rsi
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
jmp fcn.1400410f0
cmp r8d, 0x16
je 0x1400413c4
mov rax, qword [rbx + 0x10]
mov rdx, qword [rax + r8*8 + 0x1a8]
lea rax, str.metamethod
add rdx, 0x18
mov qword [rsi], rdx
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov rbx, qword [rsp + 0x30]
xor eax, eax
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret

Function at 0x140042ee0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov r10, rcx
mov rbx, r8
shr r10, 0x20
mov r11d, edx
xor r10d, edx
ror r10d, 0x1c
bswap r10d
cmp r9d, 0xc
jbe 0x140042f73
mov r9d, r9d
add r9, 0xfffffffffffffff4
add r9, rbx
mov r8, r9
nop
add r10d, dword [r8 + 4]
add r11d, dword [r8 + 8]
mov edx, r10d
add ecx, dword [r8]
xor r11d, r10d
ror edx, 0x12
mov r8, rbx
sub r11d, edx
add rbx, 0xc
xor ecx, r11d
mov eax, r11d
ror eax, 0x15
sub ecx, eax
mov edx, ecx
mov eax, ecx
xor eax, r10d
ror edx, 7
sub eax, edx
mov r10d, eax
cmp r8, r9
jb 0x140042f10
ror eax, 0x10
mov edx, r10d
xor edx, r11d
sub edx, eax
xor ecx, edx
mov eax, edx
ror eax, 0x1c
sub ecx, eax
mov eax, ecx
xor ecx, r10d
ror eax, 0x12
sub ecx, eax
mov eax, ecx
mov rbx, qword [rsp + 8]
ret
mov rbx, qword [rsp + 8]
mov eax, r10d
ret
Function at 0x1400596e0
Capabilities:
Generate random numbers via rtlgenrandom

Disassembly:
push rbx
sub rsp, 0x20
mov rax, qword [0x1400f68d0]
mov rbx, rcx
test rax, rax
jne 0x14005972c
xor r8d, r8d
lea rcx, str.advapi32.dll
xor edx, edx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExA]
test rax, rax
je 0x14005979b
lea rdx, str.SystemFunction036
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1400f68d0], rax
test rax, rax
je 0x14005979b
mov edx, 0x20
mov rcx, rbx
call rax
test al, al
je 0x14005979b
mov rax, qword [rbx]
cmp rax, 2
jae 0x14005974a
add rax, 2
mov qword [rbx], rax
mov rax, qword [rbx + 8]
cmp rax, 0x40
jae 0x14005975c
add rax, 0x40
mov qword [rbx + 8], rax
mov rax, qword [rbx + 0x10]
cmp rax, 0x200
jae 0x140059772
add rax, 0x200
mov qword [rbx + 0x10], rax
mov rax, qword [rbx + 0x18]
cmp rax, 0x20000
jae 0x140059788
add rax, 0x20000
mov qword [rbx + 0x18], rax
mov rcx, rbx
call fcn.1400597b0
mov eax, 1
add rsp, 0x20
pop rbx
ret
xor eax, eax
add rsp, 0x20
pop rbx
ret
Function at 0x14005bc10
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r15
sub rsp, 0x30
movzx eax, byte [rdx]
xor r12d, r12d
mov rbp, r9
mov r15, r8
mov rbx, rdx
mov rsi, rcx
mov edi, 0xa
test al, al
je 0x14005bc75
movsx edx, al
inc rbx
cmp edx, 0x66
je 0x14005bc5c
cmp edx, 0x69
je 0x14005bd17
cmp edx, 0x6c
jne 0x14005bc6e
mov rax, qword [rsi + 0x10]
mov rcx, rsi
mov dword [rax + 0xefc], edx
call fcn.140045dc0
movzx eax, byte [rbx]
test al, al
jne 0x14005bc43
mov rbx, qword [0x1400f68e0]
mov qword [rsp + 0x50], r14
lea r14, [rsi + 0x10]
test rbx, rbx
je 0x14005bd56
cmp qword [r14], rbx
jne 0x14005bd4d
mov rcx, qword [0x1400f6968]
mov edx, 0xffffffff
mov dword [0x1400f6970], 1
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea rcx, [0x1400f6940]
call qword [sym.imp.KERNEL32.dll_DeleteCriticalSection]
and byte [rbx + 0x91], 0x7f
mov rcx, rbx
call fcn.140058380
mov rcx, rsi
mov dword [rbx + 0xefc], r12d
call fcn.140045dc0
mov r8d, dword [0x1400f6900]
xor r9d, r9d
sub r8d, dword [0x1400f6908]
mov rdx, qword [0x1400f6908]
sub qword [rbx + 0x10], r8
mov rcx, qword [rbx + 8]
call qword [rbx]
mov qword [0x1400f6900], r12
mov qword [0x1400f68f8], r12
mov qword [0x1400f68e0], r12
jmp 0x14005bd56
movzx eax, byte [rbx]
mov edi, r12d
cmp al, 0x30
jl 0x14005bd43
cmp al, 0x39
ja 0x14005bd3b
inc rbx
movzx ecx, al
lea edi, [rdi + rdi*4]
lea edi, [rdi - 0x18]
movzx eax, byte [rbx]
lea edi, [rcx + rdi*2]
cmp al, 0x30
jge 0x14005bd21
test edi, edi
jg 0x14005bc6e
mov edi, 1
jmp 0x14005bc6e
test rbx, rbx
jne 0x14005be44
cmp qword [0x1400f6928], r12
mov rax, qword [r14]
mov qword [0x1400f68e0], rax
mov dword [0x1400f6918], edi
mov qword [0x1400f68e8], r15
mov qword [0x1400f68f0], rbp
mov dword [0x1400f691c], r12d
mov qword [0x1400f6910], rsi
mov qword [0x1400f6908], r12
mov qword [0x1400f6900], r12
mov qword [0x1400f68f8], r12
jne 0x14005be07
xor r8d, r8d
lea rcx, str.winmm.dll
xor edx, edx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExA]
mov qword [0x1400f6928], rax
test rax, rax
je 0x14005be07
lea rdx, str.timeBeginPeriod
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400f6928]
lea rdx, str.timeEndPeriod
mov qword [0x1400f6930], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp qword [0x1400f6930], r12
mov qword [0x1400f6938], rax
je 0x14005bdfe
test rax, rax
jne 0x14005be07
mov qword [0x1400f6928], r12
jmp 0x14005be44
lea rcx, [0x1400f6940]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
lea r9, [0x1400f68e0]
mov qword [rsp + 0x28], r12
lea r8, [0x14005bf80]
mov dword [0x1400f6970], r12d
xor edx, edx
mov dword [rsp + 0x20], r12d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [0x1400f6968], rax
mov r14, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r12
pop rdi
ret
Function at 0x14005e430
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x20], rbx
push rsi
push rdi
xor r11d, r11d
mov r10d, edx
mov edi, r8d
mov rbx, rcx
mov esi, 0xffffffff
test edx, edx
jne 0x14005e471
mov eax, dword [rcx]
test eax, eax
je 0x14005e461
bsf ecx, eax
cmp ecx, r8d
jb 0x14005e46b
mov ecx, r8d
shr eax, cl
mov dword [rbx], eax
xor eax, eax
mov rbx, qword [rsp + 0x30]
pop rdi
pop rsi
ret
shr eax, cl
mov dword [rbx], eax
sub edi, ecx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], r14
mov qword [rsp + 0x28], r15
mov r15d, 1
cmp edi, 0x12
jbe 0x14005e513
mov edx, r9d
and r9b, 0x30
shr edx, 0x18
lea r8d, [rdx - 1]
cmp r9b, 0x20
jne 0x14005e4bf
mov eax, 0x38e38e39
mov r14d, 0x3f
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
sub r14d, edx
jmp 0x14005e520
bsr ecx, dword [rbx + r10*4]
imul eax, r10d, 0x1d
mov esi, r10d
sub eax, edi
add eax, ecx
mov ecx, r15d
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x1400cddb0]
cvttsd2si eax, xmm0
sub ecx, eax
mov eax, 0x38e38e39
sub ecx, edx
imul ecx
mov eax, r8d
sar edx, 1
mov r14d, edx
add edx, 0x3e
shr r14d, 0x1f
add r14d, edx
cdq
and edx, 7
add eax, edx
sar eax, 3
sub esi, eax
add esi, 0x3d
jmp 0x14005e520
mov r14d, esi
cmp edi, 9
jb 0x14005e5bd
nop
mov ecx, dword [rbx + r10*4]
mov r8d, r10d
mov eax, ecx
and ecx, 0x1ff
shr eax, 9
imul r9d, ecx, 0x1dcd65
mov dword [rbx + r10*4], eax
cmp r10d, r11d
je 0x14005e579
nop dword [rax]
nop word [rax + rax]
dec r8d
and r8d, 0x3f
mov edx, dword [rbx + r8*4]
mov eax, edx
shr eax, 9
and edx, 0x1ff
add eax, r9d
imul r9d, edx, 0x1dcd65
mov dword [rbx + r8*4], eax
cmp r8d, r11d
jne 0x14005e550
cmp r11d, r14d
je 0x14005e59c
cmp r11d, esi
je 0x14005e59c
test r9d, r9d
je 0x14005e593
dec r11d
and r11d, 0x3f
mov dword [rbx + r11*4], r9d
cmp dword [rbx + r10*4], 0
jne 0x14005e5b1
jmp 0x14005e5a8
cmp dword [rbx + r10*4], 0
jne 0x14005e5b1
cmp r10d, r11d
je 0x14005e627
dec r10d
and r10d, 0x3f
dec esi
add edi, 0xfffffff7
cmp edi, 9
jae 0x14005e520
test edi, edi
je 0x14005e627
mov r9d, dword [rbx + r10*4]
mov ecx, edi
mov eax, r9d
shl r15d, cl
dec r15d
shr eax, cl
and r9d, r15d
mov dword [rbx + r10*4], eax
mov esi, 0x3b9aca00
sar esi, cl
imul r9d, esi
cmp r10d, r11d
je 0x14005e617
nop dword [rax]
dec r10d
mov ecx, edi
and r10d, 0x3f
mov edx, dword [rbx + r10*4]
mov eax, edx
shr eax, cl
add eax, r9d
mov r9d, edx
and r9d, r15d
mov dword [rbx + r10*4], eax
imul r9d, esi
cmp r10d, r11d
jne 0x14005e5f0
test r9d, r9d
je 0x14005e627
dec r11d
and r11d, 0x3f
mov dword [rbx + r11*4], r9d
mov r14, qword [rsp + 0x20]
mov eax, r11d
mov rbp, qword [rsp + 0x18]
mov r15, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x30]
pop rdi
pop rsi
ret
Function at 0x1400772b0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
mov ebp, r9d
mov r10, r8
mov r11, rdx
mov r14, rcx
test r9b, 1
jne 0x1400773ed
nop dword [rax]
cmp r11, r10
je 0x1400773ed
mov rsi, qword [r14]
xor ebx, ebx
movzx eax, word [r11]
xor edi, edi
lea rcx, [rax + rax*2]
mov edx, dword [rsi + rcx*8]
lea r11, [rsi + rcx*8]
mov r8d, edx
mov eax, edx
shr r8d, 0x1c
cmp r8d, 8
jne 0x14007731f
shr edx, 0x10
cmp dl, 1
jne 0x140077325
or ebx, dword [r11 + 4]
movzx eax, ax
jmp 0x1400772f4
cmp r8d, 5
jne 0x14007732a
movzx eax, ax
jmp 0x1400772f4
mov ecx, dword [r10]
and eax, 0x3000000
or ebx, eax
mov eax, ecx
and eax, 0xf0000000
cmp eax, 0x10000000
je 0x140077383
movzx eax, cx
lea rcx, [rax + rax*2]
mov eax, dword [rsi + rcx*8]
lea r10, [rsi + rcx*8]
mov r9d, eax
mov ecx, eax
shr ecx, 0x1c
cmp ecx, 8
jne 0x14007736e
shr eax, 0x10
cmp al, 1
jne 0x140077373
or edi, dword [r10 + 4]
movzx eax, r9w
jmp 0x140077345
cmp ecx, 5
jne 0x140077379
movzx eax, r9w
jmp 0x140077345
and r9d, 0x3000000
or edi, r9d
test bpl, 4
je 0x140077393
cmp ebx, edi
jne 0x140077420
jmp 0x1400773b6
test bpl, 8
jne 0x1400773b6
mov eax, edi
and eax, ebx
cmp eax, edi
jne 0x140077420
cmp r8d, 4
je 0x1400773ed
mov eax, dword [r10]
and eax, 0xf0000000
cmp eax, 0x40000000
je 0x1400773ed
mov ecx, dword [r10]
mov eax, ecx
shr eax, 0x1c
cmp r8d, eax
jne 0x140077420
mov eax, dword [r10 + 4]
cmp dword [r11 + 4], eax
jne 0x140077420
test r8d, r8d
je 0x140077416
and edx, 0xe0000000
cmp edx, 0x20000000
jne 0x140077409
or ebp, 4
test bpl, 1
je 0x1400772e0
mov eax, 1
mov rbx, qword [rsp + 0x10]
mov rbp, qword [rsp + 0x18]
mov rsi, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x28]
pop r14
ret
cmp r8d, 1
jne 0x1400773ed
cmp r11, r10
jne 0x140077420
jmp 0x1400773ed
xor ecx, edx
test ecx, 0xc000000
je 0x1400773ed
xor eax, eax
jmp 0x1400773f2
Function at 0x14007b190
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov eax, 0x4500
shr r8, 2
or dx, ax
mov word [rcx + 0xb8], 0x7fff
mov word [rcx + 0xbc], dx
mov word [rcx + 0xba], r8w
jmp fcn.140084a10

Function at 0x14007d5d0
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov eax, dword [rcx + 0x6c]
mov esi, r8d
inc eax
mov rdi, rdx
mov dword [rcx + 0x6c], eax
mov rbx, rcx
cmp eax, 0x14
jg 0x14007d625
call fcn.14007d790
mov rdx, rdi
mov rcx, rbx
call fcn.14007daa0
dec dword [rbx + 0x6c]
mov r8d, esi
mov rdx, rdi
mov rcx, rbx
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
jmp fcn.14007dcd0
mov edx, 0x8d0
call fcn.14007bdf0
int3
Function at 0x1400814e0
Capabilities:
Parse pe header

Disassembly:
sub rsp, 0x28
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x14008152a
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x14008152a
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
jne 0x14008152a
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x14008152a
cmp dword [rcx + 0x84], 0xe
jbe 0x14008152a
cmp dword [rcx + 0xf8], 0
setne al
jmp 0x14008152c
xor al, al
add rsp, 0x28
ret
Function at 0x140084a10
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 0x20], rdi
push r14
sub rsp, 0x20
mov rdi, rcx
lea r14, [0x140000000]
mov ecx, dword [rcx + 0xa8]
mov eax, ecx
and eax, 0xfff0000
cmp eax, 0x3ff0000
je 0x140084aca
bt ecx, 0x10
jb 0x140084a68
movzx eax, byte [rdi + 0xbd]
test byte [rax + r14 + 0xce520], 0x60
jne 0x140084a68
mov rcx, rdi
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
jmp fcn.140081770
mov eax, ecx
and eax, 0xb0000
cmp eax, 0xb0000
je 0x140084aa6
movzx r8d, byte [rdi + 0xbd]
movzx eax, byte [r8 + r14 + 0xce520]
and al, 0x60
cmp al, 0x40
jne 0x140084aa6
cmp r8b, 0x47
je 0x140084aa6
mov rcx, rdi
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
jmp fcn.14007b100
and ecx, 0x110000
cmp ecx, 0x110000
je 0x140084aca
movzx eax, byte [rdi + 0xbd]
movzx eax, byte [rax + r14 + 0xce520]
and al, 0x60
cmp al, 0x60
je 0x140084a93
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rbp
mov ebp, 0x7ffd
mov qword [rsp + 0x40], rsi
nop
movzx edx, byte [rdi + 0xbd]
movzx r8d, word [rdi + 0xb8]
mov r10d, dword [rdi + 0x28]
shl edx, 0x11
cmp r8d, r10d
jb 0x140084b29
mov rax, qword [rdi + 0x20]
lea r9, [rax + r8*8]
movzx eax, byte [rax + r8*8 + 5]
shl eax, 0xa
add edx, eax
mov rax, qword [r9]
mov qword [rdi + 0xc0], rax
cmp r8w, bp
jae 0x140084b29
mov rax, qword [r9 + 8]
mov qword [rdi + 0xc8], rax
movzx r8d, word [rdi + 0xba]
cmp r8d, r10d
jb 0x140084b62
mov rax, qword [rdi + 0x20]
movzx ecx, byte [rax + r8*8 + 5]
lea r9, [rax + r8*8]
mov rax, qword [rax + r8*8]
mov qword [rdi + 0xd0], rax
cmp r8w, bp
jae 0x140084b6b
mov rax, qword [r9 + 8]
mov qword [rdi + 0xd8], rax
jmp 0x140084b6b
mov ecx, r8d
and ecx, 0x3ff
lea esi, [rcx + rdx]
xor ebx, ebx
mov r9d, ebx
and r9d, 0x1ffff
or r9d, esi
mov r8d, r9d
mov ecx, r9d
ror r8d, 0xb
and ecx, 0xfffff800
sub r8d, r9d
mov eax, r9d
shl eax, 0xb
sub ecx, eax
shr r8d, 0x12
shl ecx, 3
mov eax, 0x5e1d27b
or r8d, ecx
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 9
imul eax, eax, 0x3e9
sub r8d, eax
mov ecx, dword [r14 + r8*4 + 0xcf2d0]
mov eax, ecx
and eax, 0xffffff
cmp eax, r9d
je 0x140084beb
lea eax, [r8 + 1]
mov ecx, dword [r14 + rax*4 + 0xcf2d0]
mov eax, ecx
and eax, 0xffffff
cmp eax, r9d
jne 0x140084c03
mov eax, ecx
mov rcx, rdi
shr rax, 0x18
call qword [r14 + rax*8 + 0xcede0]
movzx edx, ax
test edx, edx
jne 0x140084c1d
cmp ebx, 0xfffff
je 0x140084c40
mov eax, ebx
shr eax, 0xa
or ebx, eax
xor ebx, 0xffc00
jmp 0x140084b70
cmp edx, 5
jae 0x140084c56
cmp edx, 1
je 0x140084ae0
cmp edx, 2
jne 0x140084c4a
mov edx, dword [rdi + 0xb8]
mov rcx, rdi
call fcn.14007b1c0
jmp 0x140084c64
mov rcx, rdi
call fcn.140081770
jmp 0x140084c64
cmp edx, 3
je 0x140084c7f
mov eax, 0xffff
jmp 0x140084c64
mov rax, qword [rdi + 0x20]
movzx eax, byte [rax + rdx*8 + 4]
shl eax, 0x18
add eax, edx
mov rbp, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret
mov edx, 0x18
mov rcx, rdi
call fcn.140045a80
int3
Function at 0x1400856c0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
movzx eax, byte [rcx + 0xd4]
lea r14, [rcx + 0xb8]
movzx r12d, word [r14]
and al, 0x1f
mov rdi, rcx
cmp al, 0xe
jne 0x140085728
movzx edx, word [rcx + 0x208]
cmp edx, r12d
jbe 0x140085728
movzx eax, word [rcx + 0x226]
cmp eax, r12d
jbe 0x140085728
nop
cmp eax, edx
jb 0x14008587d
mov ecx, eax
mov rax, qword [rdi + 0x20]
movzx eax, word [rax + rcx*8 + 6]
cmp eax, r12d
ja 0x140085710
movzx eax, word [rdi + 0x228]
cmp eax, r12d
jbe 0x140085881
mov rbx, qword [rdi + 0x20]
mov ebp, 0x8000
mov dword [rsp + 0x50], ebp
nop word [rax + rax]
lea r13, [rbx + rax*8]
movzx eax, word [rbx + rax*8]
movzx ecx, word [rbx + rax*8 + 2]
lea rdx, [rbx + rax*8]
cmp r14, rdx
je 0x14008587d
movzx r9d, word [r14 + 2]
cmp byte [rbx + r9*8 + 5], 0x1e
lea r8, [rbx + r9*8]
jne 0x140085783
movzx r9d, word [r8]
lea r8, [rbx + r9*8]
cmp byte [rbx + rcx*8 + 5], 0x1e
lea r10, [rbx + rcx*8]
jne 0x140085796
movzx ecx, word [r10]
lea r10, [rbx + rcx*8]
movzx r11d, byte [r14 + 5]
lea eax, [r11 - 0x38]
cmp al, 1
jbe 0x1400857a9
movzx eax, word [r14]
jmp 0x1400857b1
movzx eax, word [r14]
movzx eax, word [rbx + rax*8]
movzx r15d, ax
movzx eax, byte [rdx + 5]
sub al, 0x38
cmp al, 1
jbe 0x1400857c4
movzx eax, word [rdx]
jmp 0x1400857cb
movzx eax, word [rdx]
movzx eax, word [rbx + rax*8]
movzx esi, ax
cmp r9d, ecx
je 0x140085852
cmp r9d, ebp
jae 0x1400857e0
cmp ecx, ebp
jb 0x140085869
cmp r11b, 0x38
jne 0x140085845
xor r11d, r11d
xor edx, edx
cmp byte [r8 + 5], 0x29
mov ebp, r9d
jne 0x140085812
movzx eax, word [r8 + 2]
cmp ax, word [rsp + 0x50]
jae 0x140085812
movzx ebp, word [r8]
mov r11d, dword [rbx + rax*8]
cmp ebp, ecx
jne 0x140085812
test r11d, r11d
jne 0x140085869
cmp byte [r10 + 5], 0x29
jne 0x14008583a
movzx eax, word [r10 + 2]
mov r8d, 0x8000
cmp ax, r8w
jae 0x14008583a
movzx ecx, word [r10]
mov edx, dword [rbx + rax*8]
cmp r9d, ecx
jne 0x14008583a
test edx, edx
jne 0x140085869
cmp ebp, ecx
jne 0x140085852
cmp r11d, edx
je 0x140085852
jmp 0x140085869
movzx eax, byte [r10 + 4]
xor al, byte [r8 + 4]
test al, 0x1f
jne 0x140085869
cmp r15d, esi
je 0x14008587d
mov rcx, rdi
mov r8d, esi
mov edx, r15d
call fcn.140085ff0
test eax, eax
jne 0x14008587d
movzx eax, word [r13 + 6]
cmp eax, r12d
jbe 0x140085881
mov ebp, 0x8000
jmp 0x140085750
xor eax, eax
jmp 0x140085886
mov eax, 1
mov rbx, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
Function at 0x1400859c0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
push r15
movzx esi, dx
mov r14, rcx
movzx r9d, word [rcx + rsi*2 + 0x1a2]
cmp r9d, r8d
jbe 0x140085a5d
mov r11, qword [rcx + 0x20]
mov eax, r8d
lea rbp, [r11 + rax*8]
nop word [rax + rax]
movzx eax, byte [r11 + r9*8 + 4]
lea rbx, [r11 + r9*8]
movzx ecx, word [rbx]
and al, 0x1f
cmp ecx, r8d
je 0x140085aa1
test al, al
jne 0x140085a53
movzx r9d, word [r11 + rcx*8 + 2]
movzx r10d, word [rbp + 2]
cmp esi, 0x42
je 0x140085a3c
movzx edx, byte [r11 + r10*8 + 4]
xor dl, byte [r11 + r9*8 + 4]
test dl, 0x1f
jne 0x140085a53
cmp r9d, r10d
je 0x140085a86
cmp r9d, 0x8000
jae 0x140085a86
cmp r10d, 0x8000
jae 0x140085a86
movzx r9d, word [rbx + 6]
cmp r9d, r8d
ja 0x140085a00
movzx eax, word [r14 + rsi*2 + 0x192]
cmp eax, r8d
jbe 0x140085a86
mov rdx, qword [r14 + 0x20]
nop
lea rcx, [rdx + rax*8]
movzx eax, word [rdx + rax*8]
cmp eax, r8d
je 0x140085aac
movzx eax, word [rcx + 6]
cmp eax, r8d
ja 0x140085a70
xor eax, eax
mov rbx, qword [rsp + 0x18]
mov rbp, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x30]
pop r15
pop r14
ret
xor ecx, ecx
test al, al
setne cl
mov eax, ecx
jmp 0x140085a88
test byte [rcx + 4], 0x1f
mov ecx, 0
setne cl
mov eax, ecx
jmp 0x140085a88