joyce8/EMBER2024-capa huggingface dataset:
Function at 0x139c242c0
Capabilities:
Check for software breakpoints

Disassembly:
mov eax, 0x28
call fcn.139ce6750
sub rsp, rax
mov r11, rcx
cmp dword [rsp + 0x50], r9d
jne 0x139c243b8
movzx r10d, byte [r8]
lea eax, [r10 - 0x6a]
cmp al, 1
ja 0x139c243b8
mov qword [rsp + 0x20], rbx
lea rdx, [r8 + 1]
cmp r10b, 0x6b
jne 0x139c24370
lea ebx, [r9 - 3]
xor eax, eax
test ebx, ebx
jle 0x139c2431a
movzx ecx, byte [rdx]
inc rdx
cmp cl, 0xba
je 0x139c2431a
cmp cl, 0xbb
jne 0x139c2435d
inc eax
cmp eax, ebx
jl 0x139c24304
sub ebx, eax
test eax, eax
jne 0x139c24374
call fcn.139b47980
lea r8, [0x13996e998]
mov edx, 0x56
lea rcx, [0x13996e980]
call fcn.139b47aa0
mov edx, 0x8a
xor r8d, r8d
lea ecx, [r8 + 4]
call fcn.139b47ba0
mov rbx, qword [rsp + 0x20]
mov eax, 0xffffffff
add rsp, 0x28
ret
call fcn.139b47980
lea r8, [0x13996e998]
mov edx, 0x4e
jmp 0x139c24331
lea ebx, [r9 - 2]
movsxd rax, ebx
cmp byte [rax + rdx], 0xcc
je 0x139c243a1
call fcn.139b47980
lea r8, [0x13996e998]
mov edx, 0x5f
lea rcx, [0x13996e980]
call fcn.139b47aa0
mov edx, 0x8b
jmp 0x139c24342
mov r8d, ebx
mov rcx, r11
call fcn.139d168d0
mov eax, ebx
mov rbx, qword [rsp + 0x20]
add rsp, 0x28
ret
call fcn.139b47980
lea r8, [0x13996e998]
mov edx, 0x43
lea rcx, [0x13996e980]
call fcn.139b47aa0
xor r8d, r8d
mov edx, 0x89
lea ecx, [r8 + 4]
call fcn.139b47ba0
mov eax, 0xffffffff
add rsp, 0x28
ret
Function at 0x139c35b50
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbp
push rbx
push rsi
push r12
push r13
push r14
push r15
mov rbp, rsp
mov eax, 0x50
call fcn.139ce6750
sub rsp, rax
mov rax, qword [0x139d4c1c0]
xor rax, rsp
mov qword [rbp - 8], rax
mov r13, qword [rbp + 0x68]
xor r15d, r15d
mov rax, qword [rbp + 0x60]
mov r14d, r8d
mov qword [rbp - 0x28], r9
mov r12, rdx
mov rsi, rcx
mov qword [rbp - 0x20], r13
mov ebx, dword [r13]
mov qword [rbp - 0x18], rax
test ebx, ebx
jns 0x139c35baf
mov dword [r13], 0xffffffff
jmp 0x139c35d30
movzx r8d, byte [rax]
movzx r9d, byte [rax + 4]
movzx ecx, byte [rax + 6]
shl r8d, 0x18
shl r9d, 0x18
shl ecx, 8
mov qword [rsp + 0x90], rdi
lea rdi, [rax + 1]
movzx eax, byte [rax + 1]
shl eax, 0x10
or r8d, eax
movzx eax, byte [rdi + 1]
shl eax, 8
or r8d, eax
movzx eax, byte [rdi + 2]
or r8d, eax
movzx eax, byte [rdi + 4]
shl eax, 0x10
or r9d, eax
mov dword [rbp - 0x30], r8d
movzx eax, byte [rdi + 6]
or ecx, eax
mov byte [rbp - 0xd], r8b
or r9d, ecx
mov eax, r8d
shr eax, 0x18
mov byte [rbp - 0x10], al
mov eax, r8d
shr eax, 0x10
mov byte [rbp - 0xf], al
mov eax, r8d
shr eax, 8
mov byte [rbp - 0xe], al
mov eax, r9d
shr eax, 0x18
mov byte [rbp - 0xc], al
mov eax, r9d
shr eax, 0x10
mov byte [rbp - 0xb], al
mov eax, r9d
shr eax, 8
mov dword [rbp - 0x2c], r9d
mov byte [rbp - 0xa], al
mov byte [rbp - 9], r9b
test r14d, r14d
je 0x139c35d24
mov r13, qword [rbp - 0x28]
sub r12, rsi
movzx edx, r9b
movzx r10d, r8b
nop
dec r14d
test ebx, ebx
jne 0x139c35cc3
mov rdx, r13
lea rcx, [rbp - 0x30]
call fcn.139c35100
mov r8d, dword [rbp - 0x30]
mov eax, r8d
mov r9d, dword [rbp - 0x2c]
movzx r10d, r8b
shr eax, 0x18
movzx edx, r9b
mov byte [rbp - 0x10], al
mov eax, r8d
shr eax, 0x10
mov byte [rbp - 0xf], al
mov eax, r8d
shr eax, 8
mov byte [rbp - 0xe], al
mov eax, r9d
shr eax, 0x18
mov byte [rbp - 0xc], al
mov eax, r9d
shr eax, 0x10
mov byte [rbp - 0xb], al
mov eax, r9d
shr eax, 8
mov byte [rbp - 0xa], al
inc r15d
mov byte [rbp - 0xd], r8b
mov byte [rbp - 9], dl
movsxd rax, ebx
movzx ecx, byte [rbp + rax - 0x10]
xor cl, byte [rsi]
mov byte [r12 + rsi], cl
inc rsi
inc ebx
and ebx, 7
test r14d, r14d
jne 0x139c35c60
mov r13, qword [rbp - 0x20]
test r15d, r15d
je 0x139c35d24
mov rcx, qword [rbp - 0x18]
mov eax, r8d
shr eax, 0x18
mov byte [rdi + 2], r10b
mov byte [rdi + 6], dl
mov byte [rcx], al
mov eax, r8d
shr eax, 0x10
mov byte [rdi], al
mov eax, r9d
shr eax, 0x18
mov byte [rdi + 3], al
mov eax, r9d
shr eax, 0x10
shr r8d, 8
shr r9d, 8
mov byte [rdi + 5], r9b
mov byte [rdi + 1], r8b
mov byte [rdi + 4], al
mov dword [r13], ebx
mov rdi, qword [rsp + 0x90]
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.139ce5c70
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rsi
pop rbx
pop rbp
ret
Function at 0x139c3d3f0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], r9
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, gethostbyaddr
call fcn.139ce6750
sub rsp, rax
mov r10, r9
mov rbx, r8
mov r9, qword [rsp + 0xa0]
mov r14, rdx
mov rbp, rcx
mov edi, dword [r9]
mov dword [rsp + 0x80], edi
test edi, edi
je 0x139c3d468
mov rdx, qword [rsp + 0x98]
nop dword [rax]
test rbx, rbx
je 0x139c3d461
mov eax, edi
dec rbx
movzx ecx, byte [rax + rdx]
xor cl, byte [rbp]
inc rbp
mov byte [r14], cl
inc r14
inc edi
and edi, 0xf
jne 0x139c3d440
mov dword [rsp + 0x80], edi
mov r8, qword [rsp + 0x90]
mov esi, 1
movzx r12d, byte [r8 + 0xc]
lea r15, [r8 + 0xc]
mov r11, qword [rsp + 0xa8]
shl r12d, 8
movzx eax, byte [r8 + 0xd]
lea r13d, [rsi + 0xb]
or r12d, eax
movzx eax, byte [r8 + 0xe]
shl r12d, 8
or r12d, eax
movzx eax, byte [r8 + 0xf]
shl r12d, 8
or r12d, eax
cmp rbx, 0x10
jb 0x139c3d59e
mov eax, 0x10000000
mov edi, r13d
mov qword [rsp + 0x20], r8
mov rdx, rbx
shr rdx, 4
mov r9, r10
cmp rdx, rax
cmova rdx, rax
add r12d, edx
mov r13, rdx
mov eax, r12d
mov ecx, r12d
sub r13, rax
cmp rax, rdx
cmovae r13, rdx
xor r12d, r12d
cmp rax, rdx
mov r8, r13
mov rdx, r14
cmovae r12d, ecx
mov rcx, rbp
call r11
mov r8, qword [rsp + 0x90]
mov eax, r12d
shr eax, 0x18
mov byte [r15], al
mov eax, r12d
shr eax, 0x10
mov byte [r8 + 0xd], al
mov eax, r12d
shr eax, 8
mov byte [r8 + 0xe], al
mov byte [r8 + 0xf], r12b
test r12d, r12d
jne 0x139c3d55d
mov r8d, edi
mov eax, esi
mov rdx, r15
nop dword [rax + rax]
movzx ecx, byte [rdx - 1]
lea rdx, [rdx - 1]
add eax, ecx
mov byte [rdx], al
shr eax, 8
add r8d, 0xffffffff
jne 0x139c3d540
mov r8, qword [rsp + 0x90]
mov r10, qword [rsp + 0x88]
mov eax, 0x10000000
mov r11, qword [rsp + 0xa8]
shl r13, 4
sub rbx, r13
add r14, r13
add rbp, r13
cmp rbx, 0x10
jae 0x139c3d4c0
mov edi, dword [rsp + 0x80]
mov r13d, reloc.WS2_32.dll_inet_ntoa
mov r9, qword [rsp + 0xa0]
test rbx, rbx
je 0x139c3d641
mov rax, qword [rsp + 0x98]
xorps xmm0, xmm0
mov qword [rsp + 0x20], r8
mov r9, r10
mov r8, rsi
mov rdx, rax
mov rcx, rax
movups xmmword [rax], xmm0
call r11
mov rcx, qword [rsp + 0x90]
inc r12d
mov eax, r12d
shr eax, 0x18
mov byte [r15], al
mov eax, r12d
shr eax, 0x10
mov byte [rcx + 0xd], al
mov eax, r12d
shr eax, 8
mov byte [rcx + 0xe], al
mov byte [rcx + 0xf], r12b
test r12d, r12d
jne 0x139c3d617
nop dword [rax + rax]
movzx eax, byte [r15 - 1]
lea r15, [r15 - 1]
add esi, eax
mov byte [r15], sil
shr esi, 8
add r13d, 0xffffffff
jne 0x139c3d600
mov rdx, qword [rsp + 0x98]
nop
mov ecx, edi
inc edi
movzx eax, byte [rcx + rbp]
xor al, byte [rcx + rdx]
mov byte [rcx + r14], al
sub rbx, 1
jne 0x139c3d620
mov rax, qword [rsp + 0xa0]
mov dword [rax], edi
jmp 0x139c3d644
mov dword [r9], edi
mov rbx, qword [rsp + 0x70]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x139c3d720
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], r9
push rbx
push rsi
push rdi
push r12
push r15
mov eax, gethostbyaddr
call fcn.139ce6750
sub rsp, rax
mov rsi, qword [rsp + 0x88]
mov r10, r9
mov rdi, r8
mov r15, rdx
mov r12, rcx
mov ebx, dword [rsi]
test ebx, ebx
jns 0x139c3d765
mov dword [rsi], 0xffffffff
add rsp, 0x30
pop r15
pop r12
pop rdi
pop rsi
pop rbx
ret
mov qword [rsp + 0x60], rbp
mov rbp, qword [rsp + 0x80]
test ebx, ebx
je 0x139c3d798
test rdi, rdi
je 0x139c3d798
mov eax, ebx
dec rdi
movzx ecx, byte [rax + rbp]
xor cl, byte [r12]
inc r12
mov byte [r15], cl
inc r15
inc ebx
and ebx, 0xf
jne 0x139c3d776
mov r9, qword [rsp + 0x90]
cmp rdi, 0x10
jb 0x139c3d869
mov qword [rsp + 0x28], r13
mov rsi, r15
mov r13, rdi
mov qword [rsp + 0x20], r14
shr r13, 4
mov r14, r12
imul rax, r13, 0xfffffffffffffff0
sub rsi, rbp
sub r14, rbp
add rdi, rax
mov rax, r13
shl rax, 4
add r15, rax
mov qword [rsp + 0x68], r15
add r12, rax
mov r15, qword [rsp + 0x78]
nop word [rax + rax]
mov r8, r15
mov rdx, rbp
mov rcx, rbp
call r9
cmp ebx, 0x10
jae 0x139c3d835
mov edx, reloc.WS2_32.dll_ntohs
mov eax, ebx
sub edx, ebx
add rax, rbp
shr edx, 3
inc edx
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [r14 + rax]
xor rcx, qword [rax]
mov qword [rsi + rax], rcx
lea rax, [rax + 8]
sub rdx, 1
jne 0x139c3d820
mov r9, qword [rsp + 0x90]
add rsi, 0x10
add r14, 0x10
xor ebx, ebx
sub r13, 1
jne 0x139c3d7f0
mov r15, qword [rsp + 0x68]
mov r10, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x88]
mov r14, qword [rsp + 0x20]
mov r13, qword [rsp + 0x28]
test rdi, rdi
je 0x139c3d896
mov r8, r10
mov rdx, rbp
mov rcx, rbp
call r9
nop word [rax + rax]
mov ecx, ebx
inc ebx
movzx eax, byte [rcx + r12]
xor al, byte [rcx + rbp]
mov byte [rcx + r15], al
sub rdi, 1
jne 0x139c3d880
mov dword [rsi], ebx
mov rbp, qword [rsp + 0x60]
add rsp, 0x30
pop r15
pop r12
pop rdi
pop rsi
pop rbx
ret
Function at 0x139c3de00
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push r14
mov eax, 0x20
call fcn.139ce6750
sub rsp, rax
cmp qword [rcx + 0x38], 0
mov rbx, r8
mov r14, rdx
mov rbp, rcx
je 0x139c3de30
mov eax, 0xfffffffe
add rsp, 0x20
pop r14
pop rbp
pop rbx
ret
mov rcx, qword [rcx + 0x30]
movabs rax, 0x2000000000000000
add rcx, rbx
cmp rcx, rax
ja 0x139c3df22
cmp rcx, rbx
jb 0x139c3df22
mov qword [rsp + 0x40], rsi
mov esi, dword [rbp + 0x174]
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x50], r12
mov qword [rbp + 0x30], rcx
test esi, esi
je 0x139c3dea5
test rbx, rbx
je 0x139c3df02
movzx eax, byte [r14]
dec rbx
mov ecx, esi
inc r14
xor byte [rcx + rbp + 0x40], al
inc esi
and esi, 0xf
jne 0x139c3de70
lea r12, [rbp + 0x60]
lea rdi, [rbp + 0x40]
mov rdx, r12
mov rcx, rdi
call fcn.139c3f4b0
jmp 0x139c3dead
lea r12, [rbp + 0x60]
lea rdi, [rbp + 0x40]
mov qword [rsp + 0x58], r15
mov r15, rbx
and r15, 0xfffffffffffffff0
je 0x139c3ded2
mov r9, r15
mov r8, r14
mov rdx, r12
mov rcx, rdi
call fcn.139c3f2f0
add r14, r15
sub rbx, r15
mov r15, qword [rsp + 0x58]
test rbx, rbx
je 0x139c3df02
mov esi, ebx
sub r14, rbp
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [r14 + rdi - 0x40]
xor byte [rdi], al
lea rdi, [rdi + 1]
sub rbx, 1
jne 0x139c3def0
mov rdi, qword [rsp + 0x48]
xor eax, eax
mov r12, qword [rsp + 0x50]
mov dword [rbp + 0x174], esi
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop r14
pop rbp
pop rbx
ret
mov eax, 0xffffffff
add rsp, 0x20
pop r14
pop rbp
pop rbx
ret
Function at 0x139c3f2f0
Capabilities:
Encode data using add xor sub operations
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
movzx r10d, byte [rcx + 0xf]
lea rbp, [r8 + 0xe]
mov rdi, rcx
lea r12, [0x139976600]
sub rdi, r8
mov r15, r9
mov rsi, rdx
mov r11, rcx
nop dword [rax]
movzx ecx, byte [rbp + 1]
mov rbx, rbp
movzx eax, r10b
mov r14d, reloc.WS2_32.dll_ntohs
xor rcx, rax
mov rdx, rcx
and ecx, 0xf
add rcx, rcx
and rdx, 0xfffffffffffffff0
mov r8, qword [rsi + rcx*8]
mov r10, qword [rsi + rcx*8 + 8]
mov rax, r8
mov rcx, r10
shr rax, 4
and ecx, 0xf
shr r10, 4
shl r8, 0x3c
or r10, r8
xor rax, qword [r12 + rcx*8]
xor rax, qword [rdx + rsi]
xor r10, qword [rdx + rsi + 8]
nop
movzx ecx, byte [rbx]
mov r9, rax
movzx edx, byte [rdi + rbx]
lea rbx, [rbx - 1]
xor rdx, rcx
shl rax, 0x3c
mov rcx, r10
shr r9, 4
shr r10, 4
mov r8, rdx
or rax, r10
and edx, 0xf
add rdx, rdx
and ecx, 0xf
and r8, 0xfffffffffffffff0
xor rax, qword [rsi + rdx*8 + 8]
xor r9, qword [r12 + rcx*8]
mov rcx, rax
xor r9, qword [rsi + rdx*8]
and ecx, 0xf
mov rdx, rax
mov r10, r9
shl r10, 0x3c
mov rax, r9
shr rax, 4
xor rax, qword [r12 + rcx*8]
xor rax, qword [r8 + rsi]
shr rdx, 4
or r10, rdx
xor r10, qword [r8 + rsi + 8]
sub r14, 1
jne 0x139c3f380
mov rdx, rax
mov byte [r11 + 7], al
shr rdx, 0x20
add rbp, 0x10
mov ecx, edx
mov byte [r11 + 3], dl
shr ecx, 0x18
sub rdi, 0x10
mov byte [r11], cl
mov ecx, edx
shr ecx, 0x10
mov byte [r11 + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [r11 + 2], cl
mov ecx, eax
shr ecx, 0x18
mov byte [r11 + 4], cl
mov ecx, eax
shr ecx, 0x10
mov byte [r11 + 5], cl
mov ecx, eax
shr ecx, 8
mov byte [r11 + 6], cl
mov rcx, r10
shr rcx, 0x20
mov eax, ecx
mov byte [r11 + 0xb], cl
shr eax, 0x18
mov byte [r11 + 8], al
mov eax, ecx
shr eax, 0x10
mov byte [r11 + 9], al
mov eax, ecx
shr eax, 8
mov byte [r11 + 0xa], al
mov eax, r10d
shr eax, 0x18
mov byte [r11 + 0xc], al
mov eax, r10d
shr eax, 0x10
mov byte [r11 + 0xd], al
mov eax, r10d
shr eax, 8
mov byte [r11 + 0xe], al
mov byte [r11 + 0xf], r10b
sub r15, 0x10
jne 0x139c3f330
mov rbx, qword [rsp + 0x20]
mov rbp, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x38]
pop r15
pop r14
pop r12
ret
Function at 0x139c3f4b0
Capabilities:
Encode data using add xor sub operations
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
movzx eax, byte [rcx + 0xf]
lea rsi, [0x139976600]
mov r8d, eax
mov r11, rcx
and eax, 0xf
and r8, 0xfffffffffffffff0
add rax, rax
mov rbx, rdx
mov edi, recv
mov r10, qword [rdx + rax*8 + 8]
mov r9, qword [rdx + rax*8]
mov rcx, r10
and ecx, 0xf
shr r10, 4
mov rax, r9
shl r9, 0x3c
shr rax, 4
or r10, r9
xor rax, qword [rsi + rcx*8]
xor rax, qword [r8 + rdx]
xor r10, qword [r8 + rdx + 8]
movzx ecx, byte [rdi + r11]
mov r9, rax
mov r8d, ecx
shl rax, 0x3c
and ecx, 0xf
shr r9, 4
add rcx, rcx
and r8, 0xfffffffffffffff0
lea rdx, [rbx + rcx*8]
mov rcx, r10
shr r10, 4
and ecx, 0xf
or rax, r10
xor rax, qword [rdx + 8]
xor r9, qword [rsi + rcx*8]
mov rcx, rax
xor r9, qword [rdx]
and ecx, 0xf
mov rdx, rax
mov r10, r9
shl r10, 0x3c
mov rax, r9
shr rax, 4
xor rax, qword [rsi + rcx*8]
xor rax, qword [r8 + rbx]
shr rdx, 4
or r10, rdx
xor r10, qword [r8 + rbx + 8]
sub rdi, 1
jns 0x139c3f510
mov rbx, qword [rsp + 8]
mov rdx, rax
mov rsi, qword [rsp + 0x10]
mov rdi, qword [rsp + 0x18]
mov byte [r11 + 7], al
shr rdx, 0x20
mov ecx, edx
mov byte [r11 + 3], dl
shr ecx, 0x18
mov byte [r11], cl
mov ecx, edx
shr ecx, 0x10
mov byte [r11 + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [r11 + 2], cl
mov ecx, eax
shr ecx, 0x18
mov byte [r11 + 4], cl
mov ecx, eax
shr ecx, 0x10
mov byte [r11 + 5], cl
mov ecx, eax
shr ecx, 8
mov byte [r11 + 6], cl
mov rcx, r10
shr rcx, 0x20
mov eax, ecx
mov byte [r11 + 0xb], cl
shr eax, 0x18
mov byte [r11 + 8], al
mov eax, ecx
shr eax, 0x10
mov byte [r11 + 9], al
mov eax, ecx
shr eax, 8
mov byte [r11 + 0xa], al
mov eax, r10d
shr eax, 0x18
mov byte [r11 + 0xc], al
mov eax, r10d
shr eax, 0x10
mov byte [r11 + 0xd], al
mov eax, r10d
shr eax, 8
mov byte [r11 + 0xe], al
mov byte [r11 + 0xf], r10b
ret
Function at 0x139c43780
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Encrypt data using salsa20 or chacha

Disassembly:
push rbp
push rsi
push rdi
mov eax, 0xb0
call fcn.139ce6750
sub rsp, rax
mov rax, qword [0x139d4c1c0]
xor rax, rsp
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0xf0]
mov rbp, r8
mov dword [rsp + 0x60], 0x61707865
mov rsi, rdx
mov dword [rsp + 0x64], 0x3320646e
mov rdi, rcx
mov dword [rsp + 0x68], 0x79622d32
mov dword [rsp + 0x6c], 0x6b206574
movups xmm0, xmmword [r9]
movups xmm1, xmmword [r9 + 0x10]
movups xmmword [rsp + 0x70], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x80], xmm1
movups xmmword [rsp + 0x90], xmm0
test r8, r8
je 0x139c43961
mov qword [rsp + 0xd8], rbx
mov qword [rsp + 0xe0], r14
nop
mov ebx, 0x40
lea rdx, [rsp + 0x60]
cmp rbp, rbx
lea rcx, [rsp + 0x20]
cmovb rbx, rbp
call fcn.139c43980
xor eax, eax
test rbx, rbx
je 0x139c4393b
cmp rbx, 0x40
jb 0x139c43909
lea rdx, [rdi - 1]
add rdx, rbx
lea rcx, [rsp + rbx + 0x1f]
cmp rdi, rcx
ja 0x139c4385f
lea rcx, [rsp + 0x20]
cmp rdx, rcx
jae 0x139c43909
lea rcx, [rsi - 1]
add rcx, rbx
cmp rdi, rcx
ja 0x139c43874
cmp rdx, rsi
jae 0x139c43909
mov r10, rbx
and r10, 0xffffffffffffffc0
mov rdx, rsi
lea r8, [rsp + 0x20]
lea r11, [rsp + 0x30]
sub rdx, rdi
sub r8, rdi
lea r14, [rsp + 0x40]
sub r11, rdi
lea rcx, [rdi + 0x10]
sub r14, rdi
nop dword [rax]
movdqu xmm0, xmmword [r8 + rcx - 0x10]
add rax, 0x40
movdqu xmm1, xmmword [rdx + rcx - 0x10]
movdqu xmm2, xmmword [rcx + r8]
lea rcx, [rcx + 0x40]
pxor xmm1, xmm0
movdqu xmm0, xmmword [rdx + rcx - 0x40]
movdqu xmmword [rcx - 0x50], xmm1
pxor xmm2, xmm0
movdqu xmm0, xmmword [rdx + rcx - 0x30]
movdqu xmm1, xmmword [rcx + r11 - 0x40]
movdqu xmmword [rcx - 0x40], xmm2
pxor xmm1, xmm0
movdqu xmm0, xmmword [rdx + rcx - 0x20]
movdqu xmm2, xmmword [rcx + r14 - 0x40]
movdqu xmmword [rcx - 0x30], xmm1
pxor xmm2, xmm0
movdqu xmmword [rcx - 0x20], xmm2
cmp rax, r10
jb 0x139c438a0
cmp rax, rbx
jae 0x139c4393b
lea rcx, [rsp + 0x20]
mov r8, rsi
sub r8, rcx
mov r9, rdi
lea rcx, [rsp + 0x20]
sub r9, rcx
nop
lea rdx, [rsp + 0x20]
add rdx, rax
inc rax
movzx ecx, byte [rdx + r8]
xor cl, byte [rdx]
mov byte [rdx + r9], cl
cmp rax, rbx
jb 0x139c43920
inc dword [rsp + 0x90]
add rdi, rbx
add rsi, rbx
sub rbp, rbx
jne 0x139c43810
mov r14, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0xa0]
xor rcx, rsp
call fcn.139ce5c70
add rsp, 0xb0
pop rdi
pop rsi
pop rbp
ret
Function at 0x139c46c30
Capabilities:
Encode data using xor

Disassembly:
mov eax, reloc.WS2_32.dll_getservbyport
call fcn.139ce6750
sub rsp, rax
cmp dword [rsp + 0x68], 0
je 0x139c46c59
lea rax, [0x139c45290]
mov qword [rsp + 0x68], rax
add rsp, 0x38
jmp fcn.139c3d0a0
lea rax, [0x139c44440]
mov qword [rsp + 0x68], rax
add rsp, 0x38
jmp fcn.139c3cde0

Function at 0x139c498d0
Capabilities:
Hash data using sha1

Disassembly:
push rbx
mov eax, 0x20
call fcn.139ce6750
sub rsp, rax
mov rbx, rcx
call fcn.139be4900
test eax, eax
jne 0x139c498f1
add rsp, 0x20
pop rbx
ret
lea rcx, [rbx + 0x5c]
add rsp, 0x20
pop rbx
jmp fcn.139bb71c0

Function at 0x139c4c0a0
Capabilities:
Hash data using sha512

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
mov eax, 0x20
call fcn.139ce6750
sub rsp, rax
mov rbx, rdx
mov rdi, rcx
add rcx, 0x40
xor edx, edx
mov r8d, 0xb0
call fcn.139d16f70
movabs rsi, 0x1f83d9abfb41bd6b
movabs rbp, 0x5be0cd19137e2179
mov qword [rdi + 0x30], rsi
movabs rcx, 0x6a09e667f3bcc908
mov qword [rdi + 0x38], rbp
movabs rdx, 0xbb67ae8584caa73b
mov qword [rdi], rcx
movabs r8, 0x3c6ef372fe94f82b
mov qword [rdi + 8], rdx
movabs r9, 0xa54ff53a5f1d36f1
mov qword [rdi + 0x10], r8
movabs r10, 0x510e527fade682d1
mov qword [rdi + 0x18], r9
movabs r11, 0x9b05688c2b3e6c1f
mov qword [rdi + 0x20], r10
mov qword [rdi + 0x28], r11
movzx eax, byte [rbx]
mov qword [rdi + 0xe8], rax
mov rax, qword [rbx]
xor rax, rcx
mov qword [rdi], rax
mov rax, qword [rbx + 8]
xor rax, rdx
mov qword [rdi + 8], rax
mov rax, qword [rbx + 0x10]
xor rax, r8
mov qword [rdi + 0x10], rax
mov rax, qword [rbx + 0x18]
xor rax, r9
mov qword [rdi + 0x18], rax
mov rax, qword [rbx + 0x20]
xor rax, r10
mov qword [rdi + 0x20], rax
mov rax, qword [rbx + 0x28]
xor rax, r11
mov qword [rdi + 0x28], rax
mov rax, qword [rbx + 0x30]
xor rax, rsi
mov rsi, qword [rsp + 0x40]
mov qword [rdi + 0x30], rax
mov rax, qword [rbx + 0x38]
mov rbx, qword [rsp + 0x30]
xor rax, rbp
mov rbp, qword [rsp + 0x38]
mov qword [rdi + 0x38], rax
add rsp, 0x20
pop rdi
ret
Function at 0x139c4df70
Capabilities:
Hash data using sha256

Disassembly:
xorps xmm0, xmm0
movups xmmword [rcx + 0x20], xmm0
movups xmmword [rcx + 0x30], xmm0
movups xmmword [rcx + 0x40], xmm0
movups xmmword [rcx + 0x50], xmm0
movups xmmword [rcx + 0x60], xmm0
movups xmmword [rcx + 0x70], xmm0
mov dword [rcx], 0x6a09e667
mov dword [rcx + 4], 0xbb67ae85
mov dword [rcx + 8], 0x3c6ef372
mov dword [rcx + 0xc], 0xa54ff53a
mov dword [rcx + 0x10], 0x510e527f
mov dword [rcx + 0x14], 0x9b05688c
mov dword [rcx + 0x18], 0x1f83d9ab
mov dword [rcx + 0x1c], 0x5be0cd19
movzx eax, byte [rdx]
mov qword [rcx + 0x78], rax
mov eax, dword [rdx]
xor eax, 0x6a09e667
mov dword [rcx], eax
mov eax, dword [rdx + 4]
xor eax, 0xbb67ae85
mov dword [rcx + 4], eax
mov eax, dword [rdx + 8]
xor eax, 0x3c6ef372
mov dword [rcx + 8], eax
mov eax, dword [rdx + 0xc]
xor eax, 0xa54ff53a
mov dword [rcx + 0xc], eax
mov eax, dword [rdx + 0x10]
xor eax, 0x510e527f
mov dword [rcx + 0x10], eax
mov eax, dword [rdx + 0x14]
xor eax, 0x9b05688c
mov dword [rcx + 0x14], eax
mov eax, dword [rdx + 0x18]
xor eax, 0x1f83d9ab
mov dword [rcx + 0x18], eax
mov eax, dword [rdx + 0x1c]
xor eax, 0x5be0cd19
mov dword [rcx + 0x1c], eax
ret
Function at 0x139c73260
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push r12
push r13
push r14
push r15
mov eax, 0x40
call fcn.139ce6750
sub rsp, rax
mov r12, rdx
test rdx, rdx
mov rdx, r8
mov r15, r9
mov rbp, r8
je 0x139c73483
mov rbx, qword [rsp + 0xa8]
lea r14, [r9 + 1]
mov rsi, qword [rsp + 0xa0]
mov r13, qword [rsp + 0x98]
mov r9, qword [rsp + 0x90]
mov qword [rsp + 0x30], rbx
shr r14, 1
mov r8, r14
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], r13
call fcn.139c73050
test eax, eax
je 0x139c734be
mov r8d, 0x186
mov qword [rsp + 0x70], rdi
lea rdx, [0x139999c90]
mov rcx, rbx
call fcn.139b4a4d0
mov rdi, rax
test rax, rax
jne 0x139c7334c
call fcn.139b47980
lea r8, [0x139999cf0]
mov edx, 0x187
lea rcx, [0x139999c90]
call fcn.139b47aa0
xor r8d, r8d
lea ecx, [rdi + 0x39]
mov edx, 0xc0100
call fcn.139b47ba0
xor eax, eax
mov rdi, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rsi
ret
mov r9, qword [rsp + 0x90]
sub rbp, r14
mov qword [rsp + 0x30], rbx
mov r8, r14
mov qword [rsp + 0x28], rdi
mov rcx, r12
mov qword [rsp + 0x20], r13
lea rdx, [r15 + rbp]
call fcn.139c73050
test eax, eax
jne 0x139c73393
mov r9d, 0x18d
lea r8, [0x139999c90]
mov rdx, rbx
mov rcx, rdi
call fcn.139b4a610
jmp 0x139c7332a
xor ecx, ecx
test rbx, rbx
je 0x139c73461
cmp rbx, 0x40
jb 0x139c73432
lea rdx, [rsi - 1]
lea rax, [rbx - 1]
add rdx, rbx
add rax, rdi
cmp rsi, rax
ja 0x139c733c0
cmp rdx, rdi
jae 0x139c73432
mov r8, rbx
and r8, 0xffffffffffffffc0
mov rdx, rdi
lea rax, [rsi + 0x10]
sub rdx, rsi
movdqu xmm0, xmmword [rax - 0x10]
add rcx, 0x40
movdqu xmm1, xmmword [rdx + rax - 0x10]
movdqu xmm2, xmmword [rdx + rax]
lea rax, [rax + 0x40]
pxor xmm1, xmm0
movdqu xmmword [rax - 0x50], xmm1
movdqu xmm0, xmmword [rax - 0x40]
movdqu xmm1, xmmword [rdx + rax - 0x30]
pxor xmm2, xmm0
movdqu xmmword [rax - 0x40], xmm2
movdqu xmm0, xmmword [rax - 0x30]
pxor xmm1, xmm0
movdqu xmmword [rax - 0x30], xmm1
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm1, xmmword [rdx + rax - 0x20]
pxor xmm1, xmm0
movdqu xmmword [rax - 0x20], xmm1
cmp rcx, r8
jb 0x139c733d1
cmp rcx, rbx
jae 0x139c73461
mov r8, rdi
lea rax, [rcx + rsi]
sub r8, rsi
mov rdx, rbx
sub rdx, rcx
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [rax + r8]
xor byte [rax], cl
lea rax, [rax + 1]
sub rdx, 1
jne 0x139c73450
mov r9d, 0x192
lea r8, [0x139999c90]
mov rdx, rbx
mov rcx, rdi
call fcn.139b4a610
mov eax, 1
jmp 0x139c7332c
mov rax, qword [rsp + 0xa8]
mov r8, r15
mov r9, qword [rsp + 0x90]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x20], rax
call fcn.139c73050
test eax, eax
jne 0x139c734c5
xor eax, eax
jmp 0x139c73331
mov eax, 1
jmp 0x139c73331
Function at 0x139c7b300
Capabilities:
Encode data using xor

Disassembly:
mov r10, rcx
test rdx, rdx
je 0x139c7b388
test r8, r8
je 0x139c7b388
mov rax, qword [rcx + 0x28]
cmp r8, rax
mov r9, rax
cmovb r9, r8
test r9, r9
je 0x139c7b346
add rcx, 0x34
mov r11, rdx
sub r11, r10
nop
movzx eax, byte [r11 + rcx - 0x34]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub r9, 1
jne 0x139c7b330
mov rax, qword [r10 + 0x28]
cmp r8, rax
jbe 0x139c7b388
sub r8, rax
cmp r8, 0x10
jbe 0x139c7b35c
mov r8d, reloc.WS2_32.dll_recv
jmp 0x139c7b361
test r8, r8
je 0x139c7b388
xor ecx, ecx
nop dword [rax]
nop word [rax + rax]
mov rax, qword [r10 + 0x28]
add rax, rcx
movzx eax, byte [rax + rdx]
xor byte [r10 + rcx + 0x54], al
inc rcx
cmp rcx, r8
jb 0x139c7b370
ret