joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1400b8e50
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x20
cmp qword [rcx + 0x53e0], 0
lea rbx, [rcx + 0x53e8]
mov rsi, r8
mov rbp, rdx
mov rdi, rcx
je 0x1400b8ef7
mov r9d, dword [rbx + 4]
mov qword [rsp + 0x30], r14
xor r14d, r14d
test r9d, r9d
jns 0x1400b8eaa
mov eax, r9d
mov rcx, rbx
cdq
sub eax, edx
mov edx, r14d
sar eax, 1
add eax, r9d
test eax, eax
cmovg edx, eax
call fcn.1400bad70
mov r8, rsi
mov dword [rbx], r14d
mov rdx, rbp
mov rcx, rbx
call fcn.1400a40c0
mov eax, dword [rbx]
mov edx, 1
mov r9, qword [rdi + 0x53e0]
test eax, eax
lea ecx, [rax - 1]
mov rax, qword [rdi + 0x53f0]
cmove ecx, r14d
test rax, rax
movsxd r8, ecx
lea rcx, [0x1407804af]
cmovne rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov r14, qword [rsp + 0x30]
jmp 0x1400b8eff
mov rcx, rbx
call fcn.1400a40c0
mov rbx, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret

Function at 0x1400b9470
Capabilities:
Hash data with crc32

Disassembly:
sub rsp, 8
movzx r9d, byte [rcx]
lea r8, [rcx + 1]
mov r10, qword [0x1407804d8]
mov r11d, 0xffffffff
mov eax, r11d
test r9b, r9b
je 0x1400b94d3
mov qword [rsp], rbx
lea rbx, [0x140564b30]
nop dword [rax]
cmp r9b, 0x23
jne 0x1400b94b3
cmp byte [r8], r9b
jne 0x1400b94b3
cmp byte [r8 + 1], r9b
cmove eax, r11d
movzx edx, al
movzx ecx, r9b
movzx r9d, byte [r8]
xor rdx, rcx
shr eax, 8
inc r8
xor eax, dword [rbx + rdx*4]
test r9b, r9b
jne 0x1400b94a0
mov rbx, qword [rsp]
movsxd rcx, dword [r10 + 0x5390]
xor r8d, r8d
not eax
test ecx, ecx
jle 0x1400b9507
mov r10, qword [r10 + 0x5398]
mov r9, rcx
mov edx, r8d
lea rcx, [r10 + 8]
cmp dword [rcx], eax
je 0x1400b950e
inc r8d
inc rdx
add rcx, 0x48
cmp rdx, r9
jl 0x1400b94f4
xor eax, eax
add rsp, 8
ret
movsxd rax, r8d
lea rcx, [rax + rax*8]
lea rax, [r10 + rcx*8]
add rsp, 8
ret
Function at 0x1400d0a60
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbx
mov rax, qword [0x1407804d8]
xor r11d, r11d
mov rbx, qword [rax + 0x42f8]
mov edx, dword [rbx + 4]
bt edx, 0x18
jae 0x1400d0a8a
mov eax, dword [rbx + 0x74]
test eax, eax
movzx ecx, al
cmovg ecx, r11d
jmp 0x1400d0a8c
xor cl, cl
mov r8, qword [rbx + 0x188]
xorps xmm1, xmm1
mov byte [rbx + 0x203], cl
movss xmm0, dword [r8 + 0x64]
ucomiss xmm0, xmm1
jp 0x1400d0aad
jne 0x1400d0aad
xor al, al
jmp 0x1400d0ab0
movzx eax, cl
shr edx, 0x19
and dl, 1
mov byte [rbx + 0x204], al
mov byte [rbx + 0x201], dl
movss xmm0, dword [r8 + 0x68]
ucomiss xmm0, xmm1
jp 0x1400d0ad1
jne 0x1400d0ad1
xor dl, dl
mov byte [rbx + 0x202], dl
xor dl, 1
mov byte [rbx + 0x214], dl
test cl, cl
jle 0x1400d0b75
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov rdi, r11
nop word [rax + rax]
mov rsi, qword [rbx + 0x28]
movsx r8, byte [rsi + rdi]
mov rdx, r8
cmp r8d, r11d
je 0x1400d0b56
movsx eax, cl
cmp edx, eax
jl 0x1400d0b56
movsx rax, byte [rdx + rsi]
mov r10, rdx
mov r9, qword [rbx + 0x18]
imul r8, r8, 0x68
imul rdx, rax, 0x68
movzx eax, byte [r8 + r9 + 0x52]
movzx ecx, byte [rdx + r9 + 0x52]
mov byte [rdx + r9 + 0x52], al
mov byte [r8 + r9 + 0x52], cl
mov rdx, qword [rbx + 0x28]
movzx eax, byte [rdx + rdi]
movzx ecx, byte [r10 + rdx]
mov byte [r10 + rdx], al
mov byte [rdx + rdi], cl
movsx eax, byte [rbx + 0x203]
inc r11d
inc rdi
movzx ecx, al
cmp r11d, eax
jl 0x1400d0b00
mov rdi, qword [rsp + 0x18]
mov rsi, qword [rsp + 0x10]
pop rbx
ret
Function at 0x1400d1570
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x30
mov r9, qword [rcx + 0x188]
mov r10, rcx
movsxd rax, edx
imul rbx, rax, 0x68
add rbx, qword [rcx + 0x18]
mov dword [rcx + 0x7c], edx
test dword [rbx], 0x10000
movss xmm0, dword [rbx + 0x34]
je 0x1400d15ac
addss xmm0, dword [rcx + 0x94]
lea rsi, [r9 + 0xe0]
movss dword [rsi], xmm0
movss xmm1, dword [rcx + 0xc8]
addss xmm1, dword [rcx + 0x84]
movss dword [r9 + 0xf8], xmm0
subss xmm0, dword [r9 + 0x18]
movss dword [r9 + 0xe4], xmm1
subss xmm0, dword [r9 + 0x124]
movss dword [r9 + 0x128], xmm0
mov eax, dword [rcx + 0x90]
mov dword [r9 + 0x118], eax
movsx eax, byte [rbx + 0x62]
mov dword [r9 + 0x138], eax
movss dword [r9 + 0x204], xmm1
mov eax, dword [rbx + 0x34]
mov dword [r9 + 0x200], eax
mov eax, dword [rbx + 0x38]
mov dword [r9 + 0x208], eax
mov eax, dword [rbx + 0x3c]
mov dword [r9 + 0x1a4], eax
cmp byte [rbx + 0x5a], 0
jne 0x1400d1647
maxss xmm1, dword [rcx + 0x88]
movss dword [r9 + 0xe4], xmm1
movzx eax, byte [rbx + 0x60]
mov byte [r9 + 0x9b], al
cmp byte [rbx + 0x60], 0
je 0x1400d166d
mov rax, qword [0x1407804d8]
xor ecx, ecx
mov dword [rax + 0x3f54], ecx
mov dword [rax + 0x3f5c], ecx
test dword [r10 + 4], 0x100000
je 0x1400d1682
mov r8d, 2
jmp 0x1400d1702
movups xmm0, xmmword [rbx + 0x20]
mov rax, qword [r9 + 0x280]
movss xmm4, dword [rbx + 0x20]
movss xmm3, dword [rbx + 0x24]
movss xmm2, dword [rbx + 0x28]
movss xmm1, dword [rbx + 0x2c]
movups xmmword [r9 + 0x220], xmm0
movss dword [rsp + 0x20], xmm4
movss dword [rsp + 0x24], xmm3
movss dword [rsp + 0x28], xmm2
movss dword [rsp + 0x2c], xmm1
movss dword [rax + 0x88], xmm4
movss dword [rax + 0x8c], xmm3
movss dword [rax + 0x90], xmm2
movss dword [rax + 0x94], xmm1
mov rax, qword [r9 + 0x280]
movups xmm0, xmmword [rsp + 0x20]
movsxd rdx, dword [rax + 0x58]
mov rcx, qword [rax + 0x60]
add rdx, rdx
movups xmmword [rcx + rdx*8 - 0x10], xmm0
movzx r8d, byte [rbx + 0x57]
mov rdx, qword [r9 + 0x280]
mov rcx, qword [r10 + 0x1a0]
call fcn.1400c6830
mov rdi, qword [0x1407804d8]
cmp byte [rdi + 0x53d4], 0
je 0x1400d1747
cmp byte [rbx + 0x60], 0
jne 0x1400d1747
xor r8d, r8d
lea rdx, [0x140570da8]
mov rcx, rsi
call fcn.1400b8f60
mov dword [rdi + 0x5408], 0x7f7fffff
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret
Function at 0x1400d3e40
Capabilities:
Hash data with crc32

Disassembly:
mov rax, qword [0x1407804d8]
mov rdx, qword [rax + 0x42f8]
cmp ecx, 0xffffffff
jne 0x1400d3e5a
cmp dword [rdx + 0x7c], ecx
cmovne ecx, dword [rdx + 0x7c]
cmp ecx, dword [rdx + 0x74]
mov eax, 0xffffffff
cmove ecx, eax
test byte [rdx + 4], 7
je 0x1400d3ed7
mov r10d, dword [rdx]
lea r8, [0x140570d99]
movzx eax, word [rdx + 0x80]
lea r11, [0x140564b30]
not r10d
mov byte [rdx + 0x200], cl
mov ecx, r10d
mov byte [rdx + 0x20e], 1
mov word [rdx + 0x82], ax
mov r9b, reloc.WLDAP32.dll_Ordinal_35
cmp r9b, 0x23
jne 0x1400d3eb3
cmp byte [r8], r9b
jne 0x1400d3eb3
cmp byte [r8 + 1], r9b
cmove ecx, r10d
movzx edx, cl
movzx eax, r9b
movzx r9d, byte [r8]
xor rdx, rax
shr ecx, 8
inc r8
xor ecx, dword [r11 + rdx*4]
test r9b, r9b
jne 0x1400d3ea0
not ecx
jmp fcn.1400b44c0
ret
Function at 0x1400e2660
Capabilities:
Hash data with crc32

Disassembly:
push rdi
sub rsp, 0x20
test dword [rcx + 0x10], 0x100000
mov rdi, rdx
je 0x1400e26ec
movzx r9d, byte [rdx]
lea r8, [rdx + 1]
mov r10d, 0xffffffff
mov eax, r10d
test r9b, r9b
je 0x1400e26c0
lea r11, [0x140564b30]
nop
cmp r9b, 0x23
jne 0x1400e26a3
cmp byte [r8], r9b
jne 0x1400e26a3
cmp byte [r8 + 1], r9b
cmove eax, r10d
movzx edx, al
movzx ecx, r9b
movzx r9d, byte [r8]
xor rdx, rcx
shr eax, 8
inc r8
xor eax, dword [r11 + rdx*4]
test r9b, r9b
jne 0x1400e2690
mov rcx, qword [0x1407804d8]
not eax
cmp dword [rcx + 0x3edc], eax
jne 0x1400e26d7
mov dword [rcx + 0x3ee0], eax
cmp dword [rcx + 0x3f08], eax
jne 0x1400e2746
mov byte [rcx + 0x3f0c], 1
add rsp, 0x20
pop rdi
ret
mov qword [rsp + 0x30], rbx
xor edx, edx
mov rbx, qword [0x1407804d8]
mov rcx, rdi
mov qword [rsp + 0x38], rsi
mov r8, qword [rbx + 0x3e90]
movsxd rax, dword [r8 + 0xd0]
mov r8, qword [r8 + 0xd8]
mov r8d, dword [r8 + rax*4 - 4]
call fcn.1400a38d0
cmp dword [rbx + 0x3ec4], eax
mov esi, eax
mov rbx, qword [rsp + 0x30]
jne 0x1400e273f
mov r8, rdi
mov edx, reloc.WS2_32.dll_inet_addr
mov ecx, eax
call fcn.1400ba210
mov eax, esi
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
Function at 0x1400e7720
Capabilities:
Create process on windows

Disassembly:
push rbp
sub rsp, 0x140
lea rbp, [rsp + 0x50]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x14072a340]
xor rax, rsp
mov qword [rbp + 0xe0], rax
movabs rax, 0x6ffbf486c9ec0f37
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x20], rax
movabs rax, 0xdc80b1f421ced793
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x28], rax
movabs rax, 0xdf9ba15de6bbaf02
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x30], rax
movabs rax, 0x1aa94e441450b18e
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x38], rax
movabs rax, 0xa98099997d6ff21d
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x40], rax
movabs rax, 0x648969d84e5c4974
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x48], rax
movabs rax, 0x3e1484c46407f7e0
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x50], rax
movabs rax, 0x48182e5e25380ab1
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x58], rax
movabs rax, 0x30e1f12873892b01
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x60], rax
movabs rax, 0xe0fad82335a61890
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x68], rax
movabs rax, 0x6f8bf4f2c9980f5f
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x80], rax
movabs rax, 0xdcafb1db21f4d7e0
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x88], rax
movabs rax, 0xdffda134e6ccaf71
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x90], rax
movabs rax, 0x1ad14e2d1422b1fa
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x98], rax
movabs rax, 0xa9af99fe7d08f233
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xa0], rax
movabs rax, 0x64ed69b74e2e4904
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xa8], rax
movabs rax, 0x3e6784b06464f795
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xb0], rax
movabs rax, 0x48712e29254b0a9e
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xb8], rax
movabs rax, 0x3088f15a73fd2b67
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xc0], rax
movabs rax, 0xe0fad82335a618e8
mov qword [rbp], rax
mov rax, qword [rbp]
vmovdqu ymm0, ymmword [rbp + 0x80]
mov qword [rbp + 0xc8], rax
vpxor ymm1, ymm0, ymmword [rbp + 0x20]
vmovdqu ymm0, ymmword [rbp + 0x40]
vmovdqa xmm2, xmmword [rbp + 0x60]
lea r8, [rbp + 0x20]
vxorps xmm2, xmm2, xmmword [rbp + 0xc0]
lea rdx, str.open
vmovdqa ymmword [rbp + 0x20], ymm1
vpxor ymm1, ymm0, ymmword [rbp + 0xa0]
xor eax, eax
vmovdqa xmmword [rbp + 0x60], xmm2
mov dword [rsp + 0x28], eax
xor r9d, r9d
vmovdqa ymmword [rbp + 0x40], ymm1
mov qword [rsp + 0x20], rax
xor ecx, ecx
vzeroupper
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
cmp eax, 0x20
setle al
mov rcx, qword [rbp + 0xe0]
xor rcx, rsp
call fcn.1402cf370
add rsp, 0x140
pop rbp
ret
Function at 0x1400f8a10
Capabilities:
Set registry value

Disassembly:
mov qword [rsp + 8], rbx
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0xb0
mov rax, qword [0x14072a340]
xor rax, rsp
mov qword [rbp + 0x47], rax
mov dword [rbp + 0x1f], 4
mov dword [rbp + 0x23], 3
xorps xmm0, xmm0
movups xmmword [rbp + 0x27], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x37], xmm1
mov r8d, 0x5f
lea rdx, str.SoftwareMicrosoftWindows_NTCurrentVersionImage_File_Execution_Optionscsrss.exePerfOptions
lea rcx, [rbp + 0x27]
call fcn.140024900
nop
xorps xmm0, xmm0
movups xmmword [rbp - 9], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 7], xmm1
mov r8d, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rdx, str.CpuPriorityClass
lea rcx, [rbp - 9]
call fcn.140024900
lea rdx, [rbp + 0x27]
cmp qword [rbp + 0x3f], 7
cmova rdx, qword [rbp + 0x27]
xor ebx, ebx
mov qword [rsp + 0x40], rbx
lea rax, [rbp + 0x17]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], 0x20006
mov dword [rsp + 0x20], ebx
xor r9d, r9d
xor r8d, r8d
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x1400f8b09
lea rdx, [rbp - 9]
cmp qword [rbp + 0xf], 7
cmova rdx, qword [rbp - 9]
mov dword [rsp + 0x28], 4
lea rax, [rbp + 0x1f]
mov qword [rsp + 0x20], rax
lea r9d, [rbx + 4]
xor r8d, r8d
mov rcx, qword [rbp + 0x17]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, qword [rbp + 0x17]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea rcx, [rbp - 9]
call fcn.1400232a0
xorps xmm0, xmm0
movups xmmword [rbp - 9], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 7], xmm1
mov r8d, 0xa
lea rdx, str.IoPriority
lea rcx, [rbp - 9]
call fcn.140024900
lea rdx, [rbp + 0x27]
cmp qword [rbp + 0x3f], 7
cmova rdx, qword [rbp + 0x27]
mov qword [rsp + 0x40], rbx
lea rax, [rbp + 0x17]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], 0x20006
mov dword [rsp + 0x20], ebx
xor r9d, r9d
xor r8d, r8d
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x1400f8bb7
lea rdx, [rbp - 9]
cmp qword [rbp + 0xf], 7
cmova rdx, qword [rbp - 9]
mov dword [rsp + 0x28], 4
lea rax, [rbp + 0x23]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rcx, qword [rbp + 0x17]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, qword [rbp + 0x17]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea rcx, [rbp - 9]
call fcn.1400232a0
nop
lea rcx, [rbp + 0x27]
call fcn.1400232a0
mov rcx, qword [rbp + 0x47]
xor rcx, rsp
call fcn.1402cf370
mov rbx, qword [rsp + 0xc0]
add rsp, 0xb0
pop rbp
ret
Function at 0x1401295b0
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
sub rsp, 0x70
mov rax, qword [0x14072a340]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rbx, rdx
mov rsi, rcx
mov qword [rsp + 0x48], rcx
xor ebp, ebp
mov ecx, 0x90
call fcn.1402cf390
mov rdi, rax
mov qword [rsp + 0x48], rax
xorps xmm0, xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x50], xmm0
movups xmmword [rax + 0x60], xmm0
movups xmmword [rax + 0x70], xmm0
movups xmmword [rax + 0x80], xmm0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], bpl
movups xmmword [rax + 0x20], xmm0
mov qword [rax + 0x30], rbp
mov qword [rax + 0x38], reloc.WS2_32.dll_ntohs
mov byte [rax + 0x20], bpl
movups xmmword [rax + 0x40], xmm0
mov qword [rax + 0x50], rbp
mov qword [rax + 0x58], reloc.WS2_32.dll_ntohs
mov byte [rax + 0x40], bpl
lea rcx, [rax + 0x70]
mov rdx, rbx
call fcn.14005adc0
nop
mov byte [rdi + 0x88], 1
lea ecx, [rbp + 8]
call fcn.1402cf390
mov qword [rax], rdi
mov qword [rsp + 0x50], rax
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], ebp
mov r9, rax
lea r8, [0x14012a480]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rsp + 0x30], rax
test rax, rax
je 0x1401296e1
cmp dword [rsp + 0x38], ebp
je 0x1401296d5
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x50]
call qword [sym.imp.MSVCP140.dll__Thrd_detach]
test eax, eax
jne 0x1401296d5
mov qword [rsi], rdi
mov rax, rsi
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.1402cf370
mov rbx, qword [rsp + 0xa0]
add rsp, 0x70
pop rdi
pop rsi
pop rbp
ret
mov ecx, 1
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
mov dword [rsp + 0x38], ebp
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
Function at 0x14012bc30
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x50
mov r10, r8
mov rbx, rdx
mov rdi, rcx
mov qword [rsp + 0x28], rcx
xor esi, esi
cmp byte [r8 + 6], sil
je 0x14012bc64
mov eax, esi
lea ecx, [rax - 0x7b]
xor byte [r8 + rax], cl
inc rax
cmp rax, 5
jb 0x14012bc50
mov byte [r8 + 6], sil
add r8, 5
lea r9, [rsp + 0x20]
mov rdx, r10
lea rcx, [rsp + 0x30]
call fcn.140025b90
nop
mov r9, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0xf
jbe 0x14012bc89
mov rbx, qword [rbx]
mov r8, rbx
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.140025aa0
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], rsi
movups xmm0, xmmword [rax]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdi + 0x10], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0xf
jbe 0x14012bd03
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14012bcfe
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14012bcfe
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1402cf3d4
mov rax, rdi
add rsp, 0x50
pop rdi
pop rsi
pop rbx
ret

Function at 0x14012bd10
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x50
mov r10, r8
mov rbx, rdx
mov rdi, rcx
mov qword [rsp + 0x28], rcx
xor esi, esi
cmp byte [r8 + 7], sil
je 0x14012bd44
mov eax, esi
lea ecx, [rax - 0x7b]
xor byte [r8 + rax], cl
inc rax
cmp rax, 6
jb 0x14012bd30
mov byte [r8 + 7], sil
add r8, 6
lea r9, [rsp + 0x20]
mov rdx, r10
lea rcx, [rsp + 0x30]
call fcn.140025b90
nop
mov r9, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0xf
jbe 0x14012bd69
mov rbx, qword [rbx]
mov r8, rbx
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.140025aa0
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], rsi
movups xmm0, xmmword [rax]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdi + 0x10], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0xf
jbe 0x14012bde3
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14012bdde
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14012bdde
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1402cf3d4
mov rax, rdi
add rsp, 0x50
pop rdi
pop rsi
pop rbx
ret
Function at 0x14012bdf0
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x50
mov r10, r8
mov rbx, rdx
mov rdi, rcx
mov qword [rsp + 0x28], rcx
xor esi, esi
cmp byte [r8 + 8], sil
je 0x14012be24
mov eax, esi
lea ecx, [rax - 0x7b]
xor byte [r8 + rax], cl
inc rax
cmp rax, 7
jb 0x14012be10
mov byte [r8 + 8], sil
add r8, 7
lea r9, [rsp + 0x20]
mov rdx, r10
lea rcx, [rsp + 0x30]
call fcn.140025b90
nop
mov r9, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0xf
jbe 0x14012be49
mov rbx, qword [rbx]
mov r8, rbx
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.140025aa0
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], rsi
movups xmm0, xmmword [rax]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdi + 0x10], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0xf
jbe 0x14012bec3
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14012bebe
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14012bebe
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1402cf3d4
mov rax, rdi
add rsp, 0x50
pop rdi
pop rsi
pop rbx
ret

Function at 0x14012bed0
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x50
mov r10, r8
mov rbx, rdx
mov rdi, rcx
mov qword [rsp + 0x28], rcx
xor esi, esi
cmp byte [r8 + 9], sil
je 0x14012bf04
mov eax, esi
lea ecx, [rax - 0x7b]
xor byte [r8 + rax], cl
inc rax
cmp rax, 8
jb 0x14012bef0
mov byte [r8 + 9], sil
add r8, 8
lea r9, [rsp + 0x20]
mov rdx, r10
lea rcx, [rsp + 0x30]
call fcn.140025b90
nop
mov r9, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0xf
jbe 0x14012bf29
mov rbx, qword [rbx]
mov r8, rbx
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.140025aa0
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], rsi
movups xmm0, xmmword [rax]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdi + 0x10], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0xf
jbe 0x14012bfa3
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14012bf9e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14012bf9e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1402cf3d4
mov rax, rdi
add rsp, 0x50
pop rdi
pop rsi
pop rbx
ret
Function at 0x14012bfb0
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x50
mov r10, r8
mov rbx, rdx
mov rdi, rcx
mov qword [rsp + 0x28], rcx
xor esi, esi
cmp byte [r8 + 0xa], sil
je 0x14012bfe4
mov eax, esi
lea ecx, [rax - 0x7b]
xor byte [r8 + rax], cl
inc rax
cmp rax, 9
jb 0x14012bfd0
mov byte [r8 + 0xa], sil
add r8, 9
lea r9, [rsp + 0x20]
mov rdx, r10
lea rcx, [rsp + 0x30]
call fcn.140025b90
nop
mov r9, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0xf
jbe 0x14012c009
mov rbx, qword [rbx]
mov r8, rbx
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.140025aa0
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], rsi
movups xmm0, xmmword [rax]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdi + 0x10], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0xf
jbe 0x14012c083
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14012c07e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14012c07e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1402cf3d4
mov rax, rdi
add rsp, 0x50
pop rdi
pop rsi
pop rbx
ret

Function at 0x14012c090
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x70
mov r10, r8
mov rdi, rdx
mov rsi, rcx
mov qword [rsp + 0x28], rcx
xor ebx, ebx
cmp byte [r8 + 0xb], bl
je 0x14012c0c4
mov ecx, ebx
lea eax, [rcx - 0x7b]
xor byte [r8 + rcx], al
inc rcx
cmp rcx, 0xa
jb 0x14012c0b0
mov byte [r8 + 0xb], bl
add r8, 0xa
lea r9, [rsp + 0x20]
mov rdx, r10
lea rcx, [rsp + 0x50]
call fcn.140025b90
nop
cmp byte [rdi + 0xb], 0
je 0x14012c0f4
lea eax, [rbx - 0x7b]
xor byte [rdi + rbx], al
inc rbx
cmp rbx, 0xa
jb 0x14012c0e1
mov byte [rdi + 0xb], 0
lea r8, [rdi + 0xa]
lea r9, [rsp + 0x20]
mov rdx, rdi
lea rcx, [rsp + 0x30]
call fcn.140025b90
nop
lea r9, [rsp + 0x50]
lea r8, [rsp + 0x30]
movzx edx, byte [rsp + 0x20]
mov rcx, rsi
call fcn.1400258b0
nop
mov rdx, qword [rsp + 0x48]
cmp rdx, 0xf
jbe 0x14012c164
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14012c15e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14012c15e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1402cf3d4
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 0xf
jbe 0x14012c1a4
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14012c19f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14012c19f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1402cf3d4
mov rax, rsi
add rsp, 0x70
pop rdi
pop rsi
pop rbx
ret