joyce8/EMBER2024-capa huggingface dataset:
Function at 0x18006b18c
Capabilities:
Hash data using sha224
Hash data using sha256

Disassembly:
and dword [rcx], 0
and dword [rcx + 4], 0
test edx, edx
jne 0x18006b1d1
mov dword [rcx + 8], 0x6a09e667
mov dword [rcx + 0xc], 0xbb67ae85
mov dword [rcx + 0x10], 0x3c6ef372
mov dword [rcx + 0x14], 0xa54ff53a
mov dword [rcx + 0x18], 0x510e527f
mov dword [rcx + 0x1c], 0x9b05688c
mov dword [rcx + 0x20], 0x1f83d9ab
mov dword [rcx + 0x24], 0x5be0cd19
jmp 0x18006b209
mov dword [rcx + 8], 0xc1059ed8
mov dword [rcx + 0xc], 0x367cd507
mov dword [rcx + 0x10], 0x3070dd17
mov dword [rcx + 0x14], 0xf70e5939
mov dword [rcx + 0x18], 0xffc00b31
mov dword [rcx + 0x1c], 0x68581511
mov dword [rcx + 0x20], 0x64f98fa7
mov dword [rcx + 0x24], 0xbefa4fa4
mov dword [rcx + 0x68], edx
xor eax, eax
ret

Function at 0x18006bee8
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x28
xor esi, esi
mov r15, r9
mov r13, r8
mov rdi, rdx
mov rbx, rcx
test rdx, rdx
je 0x18006bf4d
mov rdx, r8
mov rcx, r9
sub rdx, r9
mov r8, qword [rbx + 0x80]
cmp r8, 0x40
jae 0x18006bf4d
mov al, byte [rdx + rcx]
inc rsi
xor al, byte [r8 + rbx + 0x40]
mov byte [rcx], al
inc rcx
inc qword [rbx + 0x80]
sub rdi, 1
jne 0x18006bf23
cmp rdi, 0x40
jb 0x18006c050
mov rax, rsi
lea rbp, [r9 - 0x40]
sub rax, rbx
lea r15, [rbx + 0x40]
add rbp, rax
mov r12, rdi
shr r12, 6
mov r14, r13
imul rax, r12, 0xffffffffffffffc0
sub r14, r9
mov qword [rsp + 0x78], r12
add rdi, rax
mov rax, r12
shl rax, 6
add rsi, rax
mov rdx, r15
mov rcx, rbx
call fcn.18006b988
inc dword [rbx + 0x30]
lea r8, [r14 + rbp]
mov rcx, r15
lea rbx, [r14 + rbp]
lea r15, [r14 + rbp]
mov edx, 8
lea r9, [r14 + rbp]
lea r10, [r14 + rbp]
lea r11, [r14 + rbp]
lea r13, [r14 + rbp]
lea r12, [r14 + rbp]
mov al, byte [rcx + r8]
xor al, byte [rcx]
mov byte [rcx + rbp], al
mov al, byte [rcx + r9 + 1]
xor al, byte [rcx + 1]
mov byte [rcx + rbp + 1], al
mov al, byte [rcx + r10 + 2]
xor al, byte [rcx + 2]
mov byte [rcx + rbp + 2], al
mov al, byte [rcx + r11 + 3]
xor al, byte [rcx + 3]
mov byte [rcx + rbp + 3], al
mov al, byte [rcx + r15 + 4]
xor al, byte [rcx + 4]
mov byte [rcx + rbp + 4], al
mov al, byte [rcx + r13 + 5]
xor al, byte [rcx + 5]
mov byte [rcx + rbp + 5], al
mov al, byte [rbx + rcx + 6]
xor al, byte [rcx + 6]
mov byte [rcx + rbp + 6], al
mov al, byte [r12 + rcx + 7]
xor al, byte [rcx + 7]
mov byte [rcx + rbp + 7], al
lea rcx, [rcx + 8]
sub rdx, 1
jne 0x18006bfc1
mov rbx, qword [rsp + 0x70]
add rbp, 0x40
sub qword [rsp + 0x78], 1
lea r15, [rbx + 0x40]
jne 0x18006bf8b
mov r15, qword [rsp + 0x88]
mov r13, qword [rsp + 0x80]
test rdi, rdi
je 0x18006c096
lea rbp, [rbx + 0x40]
mov rcx, rbx
mov rdx, rbp
call fcn.18006b988
inc dword [rbx + 0x30]
test rdi, rdi
je 0x18006c08f
sub rsi, rbx
mov rcx, rdi
lea rdx, [rsi + r13]
lea r8, [rsi + r15]
mov al, byte [rdx + rbp - 0x40]
xor al, byte [rbp]
mov byte [r8 + rbp - 0x40], al
inc rbp
sub rcx, 1
jne 0x18006c07a
mov qword [rbx + 0x80], rdi
xor eax, eax
add rsp, 0x28
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x18006c1f4
Capabilities:
Encode data using xor

Disassembly:
mov r11, rsp
push rbx
push rdi
sub rsp, 0x78
mov rax, qword [0x1800c33b0]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0xc0]
mov rbx, rdx
mov rdi, qword [rsp + 0xc8]
lea rdx, [r11 - 0x38]
mov qword [r11 - 0x48], rdx
mov edx, 1
mov qword [r11 - 0x50], rdi
mov qword [r11 - 0x58], rax
mov rax, qword [rsp + 0xb0]
mov qword [r11 - 0x60], rax
mov qword [r11 - 0x68], r9
mov r9, r8
mov r8, rbx
call fcn.18006c0ac
test eax, eax
jne 0x18006c2a1
mov r11, qword [rsp + 0xb8]
lea rax, [rsp + 0x50]
xor r10d, r10d
xor r9d, r9d
sub r11, rax
lea rax, [rsp + 0x50]
add rax, r9
inc r9
movzx r8d, byte [r11 + rax]
movzx eax, byte [rax]
xor r8d, eax
or r10d, r8d
cmp r9, 0x10
jb 0x18006c269
test r10d, r10d
je 0x18006c29f
mov rdx, rbx
mov rcx, rdi
call fcn.180053ed4
mov eax, 0xffffffaa
jmp 0x18006c2a1
xor eax, eax
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.180084a40
add rsp, 0x78
pop rdi
pop rbx
ret
Function at 0x18006c68c
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
mov rbp, rsp
sub rsp, 0x50
mov rax, qword [0x1800c33b0]
xor rax, rsp
mov qword [rbp - 8], rax
xor esi, esi
mov rbx, rcx
xor edx, edx
mov qword [rbp - 0x20], rsi
lea rcx, [rbp - 0x18]
lea edi, [rsi + 0x10]
mov r8d, edi
call sub.VCRUNTIME140.dll_memset
lea rax, [rbp - 0x20]
mov r8d, edi
lea r9, [rbp - 0x18]
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x18]
mov rcx, rbx
call fcn.1800684ac
test eax, eax
jne 0x18006c85a
movzx eax, byte [rbp - 0x17]
lea r10d, [rsi + 4]
movzx r8d, byte [rbp - 0x18]
movzx r9d, byte [rbp - 0x10]
movzx ecx, byte [rbp - 0x14]
shl r8d, 8
or r8d, eax
shl r9d, 8
movzx eax, byte [rbp - 0x16]
shl r8d, 8
or r8d, eax
shl ecx, 8
movzx eax, byte [rbp - 0x15]
shl r8d, 8
or r8, rax
mov qword [rbx + 0xd8], rsi
movzx eax, byte [rbp - 0x13]
or ecx, eax
shl r8, 0x20
movzx eax, byte [rbp - 0x12]
shl ecx, 8
or eax, ecx
mov qword [rbx + 0x58], rsi
movzx ecx, byte [rbp - 0xc]
shl eax, 8
or r8, rax
shl ecx, 8
movzx eax, byte [rbp - 0x11]
or r8, rax
movzx eax, byte [rbp - 0xf]
or r9d, eax
mov qword [rbx + 0x118], r8
movzx eax, byte [rbp - 0xe]
shl r9d, 8
or r9d, eax
movzx eax, byte [rbp - 0xd]
shl r9d, 8
or r9, rax
movzx eax, byte [rbp - 0xb]
or ecx, eax
shl r9, 0x20
movzx eax, byte [rbp - 0xa]
shl ecx, 8
or eax, ecx
shl eax, 8
or r9, rax
movzx eax, byte [rbp - 9]
or r9, rax
mov qword [rbx + 0x98], r9
mov eax, r9d
mov rcx, r8
and eax, 1
shl rcx, 0x3f
imul edx, eax, 0xe1000000
mov rax, r9
shr rax, 1
mov r9, rcx
or r9, rax
mov rax, r8
shr rax, 1
mov ecx, edx
shl rcx, 0x20
mov r8, rcx
xor r8, rax
movsxd rax, r10d
sar r10d, 1
mov qword [rbx + rax*8 + 0x58], r9
mov qword [rbx + rax*8 + 0xd8], r8
test r10d, r10d
jg 0x18006c7a6
mov r8d, 2
mov ecx, r8d
lea r9, [rbx + 0x58]
lea r10, [rbx + 0xd8]
lea r9, [r9 + rcx*8]
mov rsi, qword [r9]
lea r10, [r10 + rcx*8]
mov rdi, qword [r10]
cmp rcx, 1
jle 0x18006c849
sub r10, rbx
lea rdx, [rbx + 0x60]
sub r9, rbx
lea r11, [rcx - 1]
mov rax, qword [rdx + 0x80]
xor rax, rdi
mov qword [r10 + rdx - 0x58], rax
mov rax, rsi
xor rax, qword [rdx]
mov qword [r9 + rdx - 0x58], rax
lea rdx, [rdx + 8]
sub r11, 1
jne 0x18006c825
lea eax, [r8 + r8]
add rcx, rcx
mov r8d, eax
cmp eax, 8
jle 0x18006c7f8
xor eax, eax
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.180084a40
mov rbx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
add rsp, 0x50
pop rbp
ret
Function at 0x18006ca18
Capabilities:
Encode data using xor

Disassembly:
mov r11, rsp
push rbx
push rsi
push rdi
sub rsp, 0x80
mov rax, qword [0x1800c33b0]
xor rax, rsp
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0xe0]
lea r10, [r11 - 0x38]
mov rbx, qword [rsp + 0xd8]
mov rdi, rdx
mov rdx, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0xe8]
mov qword [r11 - 0x48], r10
mov qword [r11 - 0x50], rbx
mov qword [r11 - 0x58], rsi
mov qword [r11 - 0x60], rax
mov rax, qword [rsp + 0xc8]
mov qword [r11 - 0x68], rax
mov qword [r11 - 0x70], rdx
xor edx, edx
mov qword [r11 - 0x78], r9
mov r9, r8
mov r8, rdi
call fcn.18006cafc
test eax, eax
jne 0x18006cae2
xor r10d, r10d
xor r9d, r9d
test rbx, rbx
je 0x18006cae0
mov r11, qword [rsp + 0xd0]
lea rax, [rsp + 0x60]
sub r11, rax
lea rax, [rsp + 0x60]
add rax, r9
inc r9
movzx r8d, byte [r11 + rax]
movzx eax, byte [rax]
xor r8d, eax
or r10d, r8d
cmp r9, rbx
jb 0x18006caab
test r10d, r10d
je 0x18006cae0
mov rdx, rdi
mov rcx, rsi
call fcn.180053ed4
mov eax, 0xffffffee
jmp 0x18006cae2
xor eax, eax
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.180084a40
add rsp, 0x80
pop rdi
pop rsi
pop rbx
ret

Function at 0x18006cb74
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
mov rax, qword [0x1800c33b0]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov r15, qword [rcx + 0x158]
lea rax, [r8 - 4]
mov r14, qword [rcx + 0x160]
mov rsi, r8
shl r15, 3
mov rbx, rdx
shl r14, 3
mov rdi, rcx
cmp rax, 0xc
ja 0x18006ccd3
lea rdx, [rcx + 0x168]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
test r15, r15
jne 0x18006cbde
test r14, r14
je 0x18006cccf
mov r12d, reloc.WS2_32.dll_recv
lea rcx, [rbp - 0x20]
mov r8d, r12d
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov rax, r14
mov byte [rbp - 0x19], r14b
shr rax, 0x38
lea rdx, [rdi + 0x188]
mov byte [rbp - 0x20], al
lea r8, [rbp - 0x20]
mov rax, r14
mov byte [rbp - 0x11], r15b
shr rax, 0x30
mov rcx, rdx
mov byte [rbp - 0x1f], al
mov rax, r14
shr rax, 0x28
mov byte [rbp - 0x1e], al
mov rax, r14
shr rax, 0x20
mov byte [rbp - 0x1d], al
mov rax, r14
shr rax, 0x18
mov byte [rbp - 0x1c], al
mov rax, r14
shr rax, 0x10
mov byte [rbp - 0x1b], al
mov rax, r14
shr rax, 8
mov byte [rbp - 0x1a], al
mov rax, r15
shr rax, 0x38
mov byte [rbp - 0x18], al
mov rax, r15
shr rax, 0x30
mov byte [rbp - 0x17], al
mov rax, r15
shr rax, 0x28
mov byte [rbp - 0x16], al
mov rax, r15
shr rax, 0x20
mov byte [rbp - 0x15], al
mov rax, r15
shr rax, 0x18
mov byte [rbp - 0x14], al
mov rax, r15
shr rax, 0x10
mov byte [rbp - 0x13], al
mov rax, r15
shr rax, 8
mov byte [rbp - 0x12], al
sub r8, rdi
mov al, byte [r8 + rcx - 0x188]
xor byte [rcx], al
inc rcx
sub r12, 1
jne 0x18006cc97
mov r8, rdx
mov rcx, rdi
call fcn.18006c87c
test rsi, rsi
je 0x18006cccf
sub rdi, rbx
mov al, byte [rdi + rbx + 0x188]
xor byte [rbx], al
inc rbx
sub rsi, 1
jne 0x18006ccbd
xor eax, eax
jmp 0x18006ccd8
mov eax, 0xffffffec
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.180084a40
add rsp, 0x40
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
Function at 0x18006cdbc
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x50
mov rax, qword [0x1800c33b0]
xor rax, rsp
mov qword [rsp + 0x48], rax
and qword [rsp + 0x30], 0
mov rdi, r9
mov r15, r8
mov r14d, edx
mov rbx, rcx
test r9, r9
je 0x18006cfba
movabs rax, 0x2000000000000000
cmp r9, rax
jae 0x18006cfba
mov rsi, qword [rsp + 0xb8]
cmp rsi, rax
jae 0x18006cfba
xor edx, edx
lea rbp, [rcx + 0x178]
mov rcx, rbp
lea r8d, [rdx + 0x10]
call sub.VCRUNTIME140.dll_memset
xor edx, edx
lea r12, [rbx + 0x188]
mov rcx, r12
lea r8d, [rdx + 0x10]
call sub.VCRUNTIME140.dll_memset
and qword [rbx + 0x158], 0
mov r8d, recv
and qword [rbx + 0x160], 0
mov dword [rbx + 0x198], r14d
cmp rdi, r8
jne 0x18006ce7c
mov rdx, r15
mov rcx, rbp
call sub.VCRUNTIME140.dll_memcpy
mov byte [rbx + 0x187], 1
jmp 0x18006cf37
xor edx, edx
lea rcx, [rsp + 0x38]
lea r8d, [rdx + 0x10]
call sub.VCRUNTIME140.dll_memset
mov rcx, rdi
shl rcx, 3
mov rax, rcx
shr rax, 0x18
mov byte [rsp + 0x44], al
mov rax, rcx
shr rax, 0x10
mov byte [rsp + 0x45], al
mov al, dil
shl al, 3
shr rcx, 8
mov byte [rsp + 0x46], cl
mov byte [rsp + 0x47], al
test rdi, rdi
je 0x18006cf06
mov r14d, reloc.WS2_32.dll_recv
cmp rdi, r14
cmovb r14, rdi
test r14, r14
je 0x18006cef0
mov rdx, r15
mov rcx, rbp
sub rdx, rbx
mov r8, r14
mov al, byte [rdx + rcx - 0x178]
xor byte [rcx], al
inc rcx
sub r8, 1
jne 0x18006cede
mov r8, rbp
mov rdx, rbp
mov rcx, rbx
call fcn.18006c87c
add r15, r14
sub rdi, r14
jne 0x18006cec0
lea rdx, [rsp + 0x38]
mov rcx, rbp
sub rdx, rbx
mov r8d, reloc.WS2_32.dll_recv
mov al, byte [rdx + rcx - 0x178]
xor byte [rcx], al
inc rcx
sub r8, 1
jne 0x18006cf17
mov r8, rbp
mov rdx, rbp
mov rcx, rbx
call fcn.18006c87c
lea rax, [rsp + 0x30]
mov r8d, reloc.WS2_32.dll_recv
lea r9, [rbx + 0x168]
mov qword [rsp + 0x20], rax
mov rdx, rbp
mov rcx, rbx
call fcn.1800684ac
test eax, eax
jne 0x18006cfbf
mov rbp, qword [rsp + 0xb0]
mov qword [rbx + 0x160], rsi
test rsi, rsi
je 0x18006cfb6
mov edi, reloc.WS2_32.dll_recv
cmp rsi, rdi
cmovb rdi, rsi
test rdi, rdi
je 0x18006cfa0
mov rdx, rbp
mov rcx, r12
sub rdx, rbx
mov r8, rdi
mov al, byte [rdx + rcx - 0x188]
xor byte [rcx], al
inc rcx
sub r8, 1
jne 0x18006cf8e
mov r8, r12
mov rdx, r12
mov rcx, rbx
call fcn.18006c87c
add rbp, rdi
sub rsi, rdi
jne 0x18006cf71
xor eax, eax
jmp 0x18006cfbf
mov eax, 0xffffffec
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.180084a40
add rsp, 0x50
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x18006d6bc
Capabilities:
Encode data using xor

Disassembly:
mov rax, qword [rsp + 0x50]
test rax, rax
jne 0x18006d5e8
mov eax, 0xfffffff3
ret
mov qword [rsp + 0x50], rax
jmp 0x18006d6bc
mov r11, rsp
push rbx
push rsi
push rdi
sub rsp, 0x80
mov rax, qword [0x1800c33b0]
xor rax, rsp
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0xd0]
lea r10, [r11 - 0x38]
mov rbx, qword [rsp + 0xe8]
mov rdi, rdx
mov rdx, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0xd8]
mov qword [r11 - 0x48], rbx
mov qword [r11 - 0x50], r10
mov qword [r11 - 0x58], rsi
mov qword [r11 - 0x60], rax
mov rax, qword [rsp + 0xc8]
mov qword [r11 - 0x68], rax
mov qword [r11 - 0x70], rdx
mov edx, 1
mov qword [r11 - 0x78], r9
mov r9, r8
mov r8, rdi
call fcn.18006d150
test eax, eax
jne 0x18006d781
xor r9d, r9d
xor r10b, r10b
test rbx, rbx
je 0x18006d77f
mov r11, qword [rsp + 0xe0]
xor eax, eax
movzx r8d, byte [rax + r11]
inc r10b
movzx eax, byte [rsp + rax + 0x60]
xor r8d, eax
movzx eax, r10b
or r9d, r8d
cmp rax, rbx
jb 0x18006d74c
test r9d, r9d
je 0x18006d77f
mov rdx, rdi
mov rcx, rsi
call fcn.180053ed4
mov eax, 0xfffffff1
jmp 0x18006d781
xor eax, eax
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.180084a40
add rsp, 0x80
pop rdi
pop rsi
pop rbx
ret
Function at 0x18006f294
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x20
mov eax, dword [rdx]
lea r15, [rcx + 0x44]
mov ebp, dword [r8]
mov rsi, r8
mov r14, rdx
mov rdi, rcx
mov r12d, reloc.WS2_32.dll_recv
xor eax, dword [r15]
mov rcx, rdi
mov edx, eax
mov ebx, eax
call fcn.18006f23c
xor eax, ebp
lea r15, [r15 - 4]
mov ebp, ebx
sub r12, 1
jne 0x18006f2c9
mov ecx, dword [rdi + 4]
mov rbp, qword [rsp + 0x48]
xor ecx, eax
mov eax, dword [rdi]
mov rdi, qword [rsp + 0x58]
xor eax, ebx
mov rbx, qword [rsp + 0x40]
mov dword [r14], eax
mov dword [rsi], ecx
mov rsi, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop r14
pop r12
ret

Function at 0x18006f314
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x20
mov eax, dword [rdx]
mov rsi, r8
mov ebp, dword [r8]
mov r14, rdx
mov rdi, rcx
mov r15, rcx
mov r12d, reloc.WS2_32.dll_recv
xor eax, dword [r15]
mov rcx, rdi
mov edx, eax
mov ebx, eax
call fcn.18006f23c
xor eax, ebp
lea r15, [r15 + 4]
mov ebp, ebx
sub r12, 1
jne 0x18006f348
mov ecx, dword [rdi + 0x40]
mov rbp, qword [rsp + 0x48]
xor ecx, eax
mov eax, dword [rdi + 0x44]
mov rdi, qword [rsp + 0x58]
xor eax, ebx
mov rbx, qword [rsp + 0x40]
mov dword [r14], eax
mov dword [rsi], ecx
mov rsi, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop r14
pop r12
ret
Function at 0x1800716fc
Capabilities:
Encode data using xor

Disassembly:
push rbx
sub rsp, 0x40
mov rax, qword [0x1800c33b0]
xor rax, rsp
mov qword [rsp + 0x38], rax
mov rax, qword [rcx]
lea rdx, [rsp + 0x28]
mov r9, qword [rcx + 0x60]
mov rbx, rcx
mov r8d, dword [rax + 0x174]
not r8d
and r8d, 1
call qword [r9 + 0x690]
mov edx, 1
mov rcx, rbx
call fcn.180071dd4
test eax, eax
jne 0x180071852
cmp dword [rbx + 0xd8], 0x16
je 0x18007176a
mov r8b, 0xa
mov dl, 2
mov rcx, rbx
call fcn.180072020
mov eax, 0xffff8900
jmp 0x180071852
mov rdx, qword [rbx + 0xc8]
cmp byte [rdx], 0x14
jne 0x180071840
mov rax, qword [rbx]
mov ecx, dword [rax + 0x174]
shr rcx, 1
and ecx, 1
lea rax, [rcx*8 + 0x10]
cmp qword [rbx + 0x110], rax
jne 0x180071840
xor r8d, r8d
mov byte [rsp + 0x20], 0
lea r9, [rdx + rcx*8]
lea r10d, [r8 + 0xc]
movzx ecx, byte [r9 + r8 + 4]
movzx edx, byte [rsp + r8 + 0x28]
mov eax, ecx
mov al, byte [rsp + 0x20]
xor edx, ecx
or edx, eax
inc r8
mov byte [rsp + 0x20], dl
cmp r8, r10
jb 0x1800717ae
mov al, byte [rsp + 0x20]
test al, al
jne 0x180071840
lea rcx, [rbx + 0x1bc]
mov qword [rbx + 0x1a8], r10
mov r8, r10
lea rdx, [rsp + 0x28]
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rbx + 0x60]
cmp dword [rax + 0xb0c], 0
je 0x180071825
mov rax, qword [rbx]
test byte [rax + 0x174], 1
jne 0x18007181c
mov dword [rbx + 8], 0xa
test byte [rax + 0x174], 1
je 0x180071828
mov dword [rbx + 8], recv
jmp 0x180071828
inc dword [rbx + 8]
mov rax, qword [rbx]
test byte [rax + 0x174], 2
je 0x18007183c
mov rcx, rbx
call fcn.180071ed8
xor eax, eax
jmp 0x180071852
mov r8b, 0x32
mov dl, 2
mov rcx, rbx
call fcn.180072020
mov eax, 0xffff8180
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.180084a40
add rsp, 0x40
pop rbx
ret

Function at 0x180071fc8
Capabilities:
Hash data using sha384
Hash data using sha512

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov rcx, qword [rcx + 0x60]
add rcx, 0x484
call fcn.1800679f8
mov rcx, qword [rbx + 0x60]
add rcx, 0x4dc
call fcn.180064ca0
mov rcx, qword [rbx + 0x60]
xor edx, edx
add rcx, 0x538
call fcn.18006b18c
mov rcx, qword [rbx + 0x60]
mov edx, 1
add rcx, 0x5a8
add rsp, 0x20
pop rbx
jmp fcn.180062834
Function at 0x180073694
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r14
push r15
sub rsp, 0x30
mov r14, r9
mov r15, r8
mov r11, rdx
mov rsi, rcx
test rcx, rcx
je 0x18007382b
test rdx, rdx
je 0x18007382b
mov r10, qword [rsp + 0x80]
cmp r10, 0x3d
jb 0x180073824
mov rbx, qword [rsp + 0x78]
cmp byte [rbx], 0x16
jne 0x180073824
cmp byte [rbx + 3], 0
jne 0x180073824
cmp byte [rbx + 4], 0
jne 0x180073824
cmp byte [rbx + 0x13], 0
jne 0x180073824
cmp byte [rbx + 0x14], 0
jne 0x180073824
cmp byte [rbx + 0x15], 0
jne 0x180073824
movzx ecx, byte [rbx + 0x3b]
lea rax, [r10 - 0x3d]
cmp rcx, rax
ja 0x180073824
movzx r8d, byte [rcx + rbx + 0x3c]
lea rax, [r10 - 0x3c]
cmp r8, rax
ja 0x180073824
mov rbp, qword [rsp + 0x70]
lea rdx, [rbx + 0x3d]
add rdx, rcx
mov qword [rsp + 0x20], rbp
mov rcx, r15
call r11
test eax, eax
je 0x180073830
mov rdi, qword [rsp + 0x90]
cmp rdi, 0x1c
jae 0x180073777
mov eax, 0xffff9600
jmp 0x180073830
mov rdx, rbx
mov r8d, 0x19
mov rbx, qword [rsp + 0x88]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
lea rax, [rbx + 0x1c]
mov byte [rbx + 0xd], 3
lea r8, [rbx + rdi]
mov qword [rsp + 0x50], rax
mov r9, r14
mov word [rbx + 0x19], 0xfffe
lea rdx, [rsp + 0x50]
mov qword [rsp + 0x20], rbp
mov rcx, r15
call rsi
test eax, eax
je 0x1800737c4
mov eax, 0xffff9400
jmp 0x180073830
mov rcx, qword [rsp + 0x98]
mov rax, qword [rsp + 0x50]
sub rax, rbx
mov qword [rcx], rax
sub al, 0x1c
mov byte [rbx + 0x1b], al
mov rax, qword [rcx]
sub rax, 0x19
shr rax, 0x10
mov byte [rbx + 0x16], al
mov byte [rbx + 0xe], al
mov rax, qword [rcx]
sub rax, 0x19
shr rax, 8
mov byte [rbx + 0x17], al
mov byte [rbx + 0xf], al
mov al, byte [rcx]
sub al, 0x19
mov byte [rbx + 0x18], al
mov byte [rbx + 0x10], al
mov rax, qword [rcx]
sub rax, 0xd
shr rax, 8
mov byte [rbx + 0xb], al
mov al, byte [rcx]
sub al, 0xd
mov byte [rbx + 0xc], al
mov eax, 0xffff9580
jmp 0x180073830
mov eax, 0xffff8700
jmp 0x180073830
mov eax, 0xffff8f00
mov rbx, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r14
pop rdi
ret
Function at 0x1800755b8
Capabilities:
Encode data using xor

Disassembly:
xor eax, eax
test rdx, rdx
je 0x1800755ca
xor al, byte [rcx]
inc rcx
sub rdx, 1
jne 0x1800755bf
mov byte [rsp + 0x10], al
mov al, byte [rsp + 0x10]
ret

Function at 0x180076e14
Capabilities:
Encode data using xor

Disassembly:
push rbx
sub rsp, 0x20
cmp dword [rcx + 0xc], 0
mov r10, rdx
mov r9, rcx
je 0x180076f0f
mov rax, qword [rcx + 0x1a8]
lea rcx, [rax + rax]
lea rax, [rcx + 1]
cmp r8, rax
jne 0x180076ef7
movzx eax, byte [rdx]
cmp rax, rcx
jne 0x180076ef7
cmp qword [r9 + 0x1a8], 0
lea r8, [rdx + 1]
lea r11, [r9 + 0x1b0]
mov byte [rsp + 0x30], 0
jbe 0x180076e96
mov rbx, r11
sub r8, r11
movzx ecx, byte [r8 + rbx]
movzx edx, byte [rbx]
mov eax, ecx
mov al, byte [rsp + 0x30]
xor edx, ecx
or edx, eax
inc rbx
mov rax, rbx
mov byte [rsp + 0x30], dl
sub rax, r11
cmp rax, qword [r9 + 0x1a8]
jb 0x180076e6e
mov al, byte [rsp + 0x30]
test al, al
jne 0x180076ef7
mov r8, qword [r9 + 0x1a8]
inc r10
add r8, r10
mov byte [rsp + 0x30], al
cmp qword [r9 + 0x1a8], 0
lea r10, [r9 + 0x1bc]
jbe 0x180076eef
mov r11, r10
sub r8, r10
movzx ecx, byte [r8 + r11]
movzx edx, byte [r11]
mov eax, ecx
mov al, byte [rsp + 0x30]
xor edx, ecx
or edx, eax
inc r11
mov rax, r11
mov byte [rsp + 0x30], dl
sub rax, r10
cmp rax, qword [r9 + 0x1a8]
jb 0x180076ec6
mov al, byte [rsp + 0x30]
test al, al
je 0x180076f21
mov rcx, r9
mov r8b, 0x28
mov dl, 2
call fcn.180072020
mov eax, 0xffff8680
add rsp, 0x20
pop rbx
ret
cmp r8, 1
jne 0x180076efa
cmp byte [rdx], 0
jne 0x180076efa
mov dword [rcx + 0x1a0], r8d
xor eax, eax
jmp 0x180076f09

Function at 0x180079fd0
Capabilities:
Encode data using xor
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov rax, qword [rcx]
mov rdi, rdx
mov rsi, rcx
cmp qword [rax + 0x78], 0
jne 0x18007a021
cmp qword [rax + 0x128], 0
je 0x18007a017
cmp qword [rax + 0x138], 0
je 0x18007a017
cmp qword [rax + 0x140], 0
je 0x18007a017
cmp qword [rax + 0x130], 0
jne 0x18007a021
mov eax, 0xffff8a00
jmp 0x18007a0eb
mov r10, qword [rdx]
mov rax, r8
sub rax, r10
cmp rax, 2
jl 0x18007a0e6
movzx ebx, byte [r10]
movzx eax, byte [r10 + 1]
add r10, 2
shl ebx, 8
or rbx, rax
mov qword [rdx], r10
cmp rbx, 1
jb 0x18007a0e6
sub r8, r10
cmp rbx, r8
ja 0x18007a0e6
mov rax, qword [rcx]
mov r11, qword [rax + 0x78]
test r11, r11
je 0x18007a097
mov rcx, qword [rax + 0x80]
mov r9, rbx
mov r8, r10
mov rdx, rsi
call r11
test eax, eax
je 0x18007a0df
mov r8b, reloc.WS2_32.dll_WSAStartup
mov dl, 2
mov rcx, rsi
call fcn.180072020
mov eax, 0xffff9380
jmp 0x18007a0eb
cmp rbx, qword [rax + 0x140]
jne 0x18007a083
mov r8, qword [rax + 0x138]
mov byte [rsp + 0x30], 0
test rbx, rbx
je 0x18007a0d7
sub r8, r10
mov r9, rbx
movzx ecx, byte [r8 + r10]
movzx edx, byte [r10]
mov eax, ecx
mov al, byte [rsp + 0x30]
xor edx, ecx
or edx, eax
inc r10
mov byte [rsp + 0x30], dl
sub r9, 1
jne 0x18007a0b7
mov al, byte [rsp + 0x30]
test al, al
jne 0x18007a083
add qword [rdi], rbx
xor eax, eax
jmp 0x18007a0eb
mov eax, 0xffff8400
mov rbx, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
Function at 0x18007a304
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x28
cmp dword [rcx + 0xc], 0
mov r9, rcx
je 0x18007a395
mov rcx, qword [rcx + 0x1a8]
lea rax, [rcx + 1]
cmp r8, rax
jne 0x18007a37e
movzx eax, byte [rdx]
cmp rax, rcx
jne 0x18007a37e
cmp qword [r9 + 0x1a8], 0
lea r8, [rdx + 1]
lea r10, [r9 + 0x1bc]
mov byte [rsp + 0x30], 0
jbe 0x18007a376
mov r11, r10
sub r8, r10
movzx ecx, byte [r8 + r11]
movzx edx, byte [r11]
mov eax, ecx
mov al, byte [rsp + 0x30]
xor edx, ecx
or edx, eax
inc r11
mov rax, r11
mov byte [rsp + 0x30], dl
sub rax, r10
cmp rax, qword [r9 + 0x1a8]
jb 0x18007a34d
mov al, byte [rsp + 0x30]
test al, al
je 0x18007a3a7
mov rcx, r9
mov r8b, 0x28
mov dl, 2
call fcn.180072020
mov eax, 0xffff8700
add rsp, 0x28
ret
cmp r8, 1
jne 0x18007a381
cmp byte [rdx], 0
jne 0x18007a381
mov dword [rcx + 0x1a0], r8d
xor eax, eax
jmp 0x18007a390