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

Disassembly:
sub rsp, 0x38
cmp byte [rcx + 0xf1e], 0
movsxd r10, r9d
je 0x14008cce4
cmp r8d, 0xff
jne 0x14008cc21
lea eax, [r10 - 0xec]
cmp eax, 0x13
ja 0x14008cc0b
lea r8, [0x140000000]
mov r9, qword [r8 + r10*8 + 0xf4960]
mov r8, rdx
lea rdx, str._s_IAC__s_n
add rsp, 0x38
jmp fcn.1400686f0
mov r8, rdx
mov r9d, r10d
lea rdx, str._s_IAC__d_n
add rsp, 0x38
jmp fcn.1400686f0
cmp r8d, 0xfb
jne 0x14008cc33
lea r9, str.WILL
jmp 0x14008cc71
cmp r8d, 0xfc
jne 0x14008cc45
lea r9, str.WONT
jmp 0x14008cc71
cmp r8d, 0xfd
jne 0x14008cc57
lea r9, [0x1400f5384]
jmp 0x14008cc71
xor r9d, r9d
lea rax, str.DONT
cmp r8d, 0xfe
cmove r9, rax
test r9, r9
je 0x14008cccd
cmp r10d, 0x27
jg 0x14008cca4
lea r8, [0x140000000]
mov r8, qword [r8 + r10*8 + 0xf4f80]
test r8, r8
jne 0x14008ccb4
mov r8, rdx
mov dword [rsp + 0x20], r10d
lea rdx, str._s__s__d_n
call fcn.1400686f0
add rsp, 0x38
ret
cmp r10d, 0xff
jne 0x14008cc8b
lea r8, str.EXOPL
mov qword [rsp + 0x20], r8
mov r8, rdx
lea rdx, str._s__s__s_n
call fcn.1400686f0
add rsp, 0x38
ret
mov r9d, r8d
mov dword [rsp + 0x20], r10d
mov r8, rdx
lea rdx, str._s__d__d_n
call fcn.1400686f0
add rsp, 0x38
ret

Function at 0x14008d030
Capabilities:
Send data
Send data on socket

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
push rdi
sub rsp, 0x20
mov rbp, qword [rcx]
mov edi, r8d
mov esi, edx
mov byte [rax + 0x10], 0xff
xor r9d, r9d
mov byte [rax + 0x11], sil
mov rbx, rcx
mov byte [rax + 0x12], dil
mov rcx, qword [rcx + 0x4c0]
lea rdx, [rax + 0x10]
lea r8d, [r9 + 3]
call qword [sym.imp.WS2_32.dll_send]
test eax, eax
jns 0x14008d08f
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea rdx, str.Sending_data_failed___d_
mov rcx, rbp
mov r8d, eax
call fcn.140068570
mov rcx, qword [rbx]
lea rdx, str.SENT
mov r9d, edi
mov r8d, esi
call fcn.14008cbc0
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
Function at 0x14008d240
Capabilities:
Send data
Send data on socket

Disassembly:
cmp edx, 0x1f
jne 0x14008d3e8
push rbp
push rdi
push r14
sub rsp, 0x20
mov rbp, qword [rcx]
mov r14, rcx
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], r15
mov rdi, qword [rbp + 0x1e0]
lea rsi, [rdi + 0x1cb8]
lea rbx, [rdi + 0x1eb8]
mov qword [rbx], rsi
cmp rsi, rbx
jae 0x14008d2a5
lea rax, [rsi + 1]
mov byte [rsi], 0xff
mov qword [rbx], rax
cmp rax, rbx
jae 0x14008d2a5
mov byte [rax], 0xfa
inc qword [rbx]
mov rax, qword [rbx]
cmp rax, rbx
jae 0x14008d2a5
mov byte [rax], dl
inc qword [rbx]
movzx ecx, word [rdi + 0x1ca8]
call qword [sym.imp.WS2_32.dll_htons]
movzx ecx, word [rdi + 0x1caa]
movzx r15d, ax
mov word [rsp + 0x48], ax
call qword [sym.imp.WS2_32.dll_htons]
mov r9, qword [rbx]
movzx ecx, ax
cmp r9, rbx
jae 0x14008d2dc
mov byte [r9], r15b
inc qword [rbx]
mov r9, qword [rbx]
mov r15, qword [rsp + 0x58]
cmp r9, rbx
jae 0x14008d332
movzx eax, byte [rsp + 0x49]
mov byte [r9], al
inc qword [rbx]
mov r9, qword [rbx]
cmp r9, rbx
jae 0x14008d332
mov byte [r9], cl
inc qword [rbx]
mov r9, qword [rbx]
cmp r9, rbx
jae 0x14008d332
shr cx, 8
mov byte [r9], cl
inc qword [rbx]
mov r9, qword [rbx]
cmp r9, rbx
jae 0x14008d332
mov byte [r9], 0xff
inc qword [rbx]
mov r9, qword [rbx]
cmp r9, rbx
jae 0x14008d332
mov byte [r9], 0xf0
mov r9, qword [rbx]
inc r9
mov qword [rdi + 0x1ec0], r9
lea r8, [rdi + 0x1cba]
sub r9, rsi
mov qword [rbx], rsi
sub r9, 2
mov edx, 0x3e
mov rcx, rbp
call fcn.14008ccf0
mov rcx, qword [r14 + 0x4c0]
xor r9d, r9d
mov rdx, rsi
lea r8d, [r9 + 3]
call qword [sym.imp.WS2_32.dll_send]
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x40]
test eax, eax
jns 0x14008d394
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea rdx, str.Sending_data_failed___d_
mov rcx, rbp
mov r8d, eax
call fcn.140068570
lea rdx, [rdi + 0x1cbb]
mov r8d, 4
mov rcx, r14
call fcn.14008d0c0
mov rcx, qword [r14 + 0x4c0]
lea rdx, [rdi + 0x1cbf]
xor r9d, r9d
lea r8d, [r9 + 2]
call qword [sym.imp.WS2_32.dll_send]
test eax, eax
jns 0x14008d3e0
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea rdx, str.Sending_data_failed___d_
mov rcx, rbp
mov r8d, eax
call fcn.140068570
add rsp, 0x20
pop r14
pop rdi
pop rbp
ret
Function at 0x14008eb50
Capabilities:
Receive data
Receive data on socket

Disassembly:
push rbx
push rdi
push r14
sub rsp, 0xd0
mov rax, qword [0x140108240]
xor rax, rsp
mov qword [rsp + 0xc0], rax
mov rbx, qword [rcx + 0xa00]
lea rax, [rsp + 0x30]
mov rdi, qword [rcx]
mov r14, rcx
mov dword [rsp + 0x30], 0x80
xor r9d, r9d
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x40]
mov r8d, dword [rbx + 0x15c]
mov rdx, qword [rbx + 0x168]
add r8d, 4
mov rcx, qword [rbx + 0x18]
mov qword [rsp + 0x20], rax
call qword [sym.imp.WS2_32.dll_recvfrom]
cmp dword [rbx + 0x150], 0
mov dword [rbx + 0x154], eax
jne 0x14008ebe5
movsxd r8, dword [rsp + 0x30]
lea rcx, [rbx + 0xd0]
lea rdx, [rsp + 0x40]
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [rsp + 0x30]
mov dword [rbx + 0x150], eax
mov r8d, dword [rbx + 0x154]
mov qword [rsp + 0xf8], rbp
mov qword [rsp + 0x100], rsi
cmp r8d, 4
jge 0x14008ec46
lea rdx, str.Received_too_short_packet
mov rcx, rdi
call fcn.140068570
mov dword [rbx + 0xc], 7
xor eax, eax
mov rsi, qword [rsp + 0x100]
mov rbp, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0xc0]
xor rcx, rsp
call fcn.1400a2310
add rsp, 0xd0
pop r14
pop rdi
pop rbx
ret
mov rdx, qword [rbx + 0x168]
movzx eax, byte [rdx]
movzx ecx, byte [rdx + 1]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc], ecx
sub ecx, 3
je 0x14008ed01
sub ecx, 1
je 0x14008ed74
sub ecx, 1
je 0x14008ecb0
cmp ecx, 1
je 0x14008ec93
lea r8, str.Internal_error:_Unexpected_packet
mov rcx, rdi
lea rdx, [0x1400a6774]
call fcn.140068570
jmp 0x14008ed74
add r8d, 0xfffffffe
add rdx, 2
mov rcx, rbx
call fcn.14008e880
test eax, eax
je 0x14008ed74
jmp 0x14008ec1a
movzx ecx, byte [rdx + 2]
lea eax, [r8 - 4]
movsxd rbp, eax
lea rsi, [rdx + 4]
movzx eax, byte [rdx + 3]
mov r8, rbp
shl ecx, 8
xor edx, edx
or ecx, eax
mov dword [rbx + 8], ecx
mov rcx, rsi
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x14008ed74
sub rax, rsi
cmp rax, rbp
jae 0x14008ed74
mov r8, rsi
lea rdx, str.TFTP_error:__s_n
mov rcx, rdi
call fcn.1400686f0
jmp 0x14008ed74
cmp r8d, 4
jle 0x14008ed74
movzx eax, byte [rdx + 3]
movzx ecx, byte [rdx + 2]
shl ecx, 8
or ecx, eax
movzx eax, word [rbx + 0x48]
inc eax
movzx eax, ax
cmp eax, ecx
jne 0x14008ed74
lea eax, [r8 - 4]
mov rcx, r14
lea r8, [rdx + 4]
movsxd r9, eax
mov edx, 1
call fcn.140068490
mov esi, eax
test eax, eax
je 0x14008ed53
mov edx, 5
mov rcx, rbx
call fcn.14008f840
mov eax, esi
jmp 0x14008ec1a
mov eax, dword [rbx + 0x154]
mov rcx, rdi
sub eax, 4
cdqe
add qword [rdi + 0xf8], rax
mov rdx, qword [rdi + 0xf8]
call fcn.140077aa0
mov rcx, r14
call fcn.140077d80
test eax, eax
je 0x14008ec18
mov edx, 5
mov rcx, rbx
call fcn.14008f840
mov eax, Ordinal_45
jmp 0x14008ec1a
Function at 0x1400a1c50
Capabilities:
Authenticate hmac
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rdi
push r14
sub rsp, 0x20
mov eax, dword [rcx + 0x18]
mov rbx, rcx
mov ebp, r8d
mov r14, rdx
lea ecx, [rax + rax]
mov eax, dword [rbx + 0x20]
add rax, 0x18
add rcx, rax
call qword [str.0_n_]
mov rdi, rax
test rax, rax
jne 0x1400a1c92
mov rbx, qword [rsp + 0x50]
add rsp, 0x20
pop r14
pop rdi
pop rbp
ret
lea rcx, [rax + 0x18]
mov qword [rax], rbx
mov qword [rax + 8], rcx
mov eax, dword [rbx + 0x18]
add rax, rcx
mov qword [rsp + 0x48], rsi
mov qword [rdi + 0x10], rax
cmp ebp, dword [rbx + 0x1c]
jbe 0x1400a1cd9
call qword [rbx]
mov rcx, qword [rdi + 8]
mov r8d, ebp
mov rdx, r14
call qword [rbx + reloc.WS2_32.dll_htonl]
mov r14d, dword [rbx + 0x18]
add r14, qword [rdi + 0x10]
mov rdx, qword [rdi + 8]
mov rcx, r14
call qword [rbx + reloc.WS2_32.dll_recv]
mov rcx, qword [rdi + 8]
mov ebp, dword [rbx + 0x20]
call qword [rbx]
mov rcx, qword [rdi + 0x10]
call qword [rbx]
xor esi, esi
test rbp, rbp
je 0x1400a1d32
mov rsi, rbp
nop dword [rax + rax]
movzx eax, byte [r14]
lea rdx, [rsp + 0x40]
xor al, 0x36
mov r8d, 1
mov byte [rsp + 0x40], al
mov rcx, qword [rdi + 8]
call qword [rbx + reloc.WS2_32.dll_htonl]
movzx eax, byte [r14]
lea rdx, [rsp + 0x40]
xor al, 0x5c
lea r14, [r14 + 1]
mov byte [rsp + 0x40], al
mov r8d, 1
mov rcx, qword [rdi + 0x10]
call qword [rbx + reloc.WS2_32.dll_htonl]
sub rbp, 1
jne 0x1400a1cf0
mov eax, dword [rbx + 0x1c]
cmp rsi, rax
jae 0x1400a1d73
nop word [rax + rax]
mov rcx, qword [rdi + 8]
lea rdx, [0x1400f85c2]
mov r8d, 1
call qword [rbx + reloc.WS2_32.dll_htonl]
mov rcx, qword [rdi + 0x10]
lea rdx, [0x1400f85c3]
mov r8d, 1
call qword [rbx + reloc.WS2_32.dll_htonl]
mov eax, dword [rbx + 0x1c]
inc rsi
cmp rsi, rax
jb 0x1400a1d40
mov rsi, qword [rsp + 0x48]
mov rax, rdi
mov rbx, qword [rsp + 0x50]
add rsp, 0x20
pop r14
pop rdi
pop rbp
ret

Function at 0x1400a2c60
Capabilities:
Parse pe header

Disassembly:
sub rsp, 0x28
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x1400a2caa
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x1400a2caa
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
jne 0x1400a2caa
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x1400a2caa
cmp dword [rcx + 0x84], 0xe
jbe 0x1400a2caa
cmp dword [rcx + 0xf8], 0
setne al
jmp 0x1400a2cac
xor al, al
add rsp, 0x28
ret
Function at 0x140002650
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 8], rbx
push rbp
mov rbp, rsp
sub rsp, 0x30
mov rbx, rcx
test dl, dl
je 0x140002746
lea rcx, [rbp + 0x20]
call fcn.14002cc50
nop
mov dl, reloc.WS2_32.dll_WSASetLastError
lea rcx, [rbp + 0x20]
call fcn.14002c590
mov dl, WSAStartup
lea rcx, [rbp + 0x20]
call fcn.14002c590
mov dl, reloc.WS2_32.dll_WSAGetLastError
lea rcx, [rbp + 0x20]
call fcn.14002c590
mov dl, 0x67
lea rcx, [rbp + 0x20]
call fcn.14002c590
mov dl, WSAStartup
lea rcx, [rbp + 0x20]
call fcn.14002c590
mov dl, 0x61
lea rcx, [rbp + 0x20]
call fcn.14002c590
mov dl, 0x6d
lea rcx, [rbp + 0x20]
call fcn.14002c590
mov dl, 0x69
lea rcx, [rbp + 0x20]
call fcn.14002c590
mov dl, WSAGetLastError
lea rcx, [rbp + 0x20]
call fcn.14002c590
mov dl, 0x66
lea rcx, [rbp + 0x20]
call fcn.14002c590
mov dl, reloc.WS2_32.dll_WSAGetLastError
lea rcx, [rbp + 0x20]
call fcn.14002c590
mov dl, reloc.WS2_32.dll_WSAStartup
lea rcx, [rbp + 0x20]
call fcn.14002c590
mov dl, 0x2e
lea rcx, [rbp + 0x20]
call fcn.14002c590
mov dl, 0x63
lea rcx, [rbp + 0x20]
call fcn.14002c590
mov dl, reloc.WS2_32.dll_WSAGetLastError
lea rcx, [rbp + 0x20]
call fcn.14002c590
mov dl, 0x6d
lea rcx, [rbp + 0x20]
call fcn.14002c590
lea rdx, [rbp + 0x20]
mov rcx, rbx
call fcn.14002c290
nop
lea rcx, [rbp + 0x20]
call fcn.14002c5b0
mov rax, rbx
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rbp
ret
mov dword [rbp - 0x10], 0x616f7373
mov dword [rbp - 0xc], 0x632e6d70
mov word [rbp - 7], WSASetLastError
mov byte [rbp - 8], reloc.WS2_32.dll_WSAGetLastError
lea rdx, [rbp - 0x10]
call fcn.14002c160
mov rax, rbx
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rbp
ret
Function at 0x140002780
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
mov qword [rsp + 8], rcx
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0xb0
movzx esi, dl
mov rbx, rcx
xor edi, edi
mov dword [rbp + 0x47], edi
call fcn.14002cc50
mov dword [rbp + 0x47], 1
mov word [rbp + 0x2a], 0x656e
mov dword [rbp + 0x30], 0x6c6c64
mov word [rbp + 0x27], 0x654b
mov dword [rbp + 0x2c], 0x2e32336c
mov byte [rbp + 0x29], WSACleanup
mov dword [rbp + 0x38], 0x69547465
mov dword [rbp + 0x40], 0x746e75
mov byte [rbp + 0x37], 0x47
mov dword [rbp + 0x3c], 0x6f436b63
lea rcx, [rbp + 0x27]
call fcn.140114370
mov rcx, rax
lea rdx, [rbp + 0x37]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14000280e
call rax
mov edi, eax
mov dword [rbp - 0x39], 0x70747468
test sil, sil
je 0x1400028d6
mov dword [rbp + 0xe], 0x69742664
mov word [rbp + 0xb], 0x253d
mov dword [rbp - 0x16], 0x73726576
mov byte [rbp - 0x2f], reloc.WS2_32.dll_WSAGetLastError
mov dword [rbp - 0x35], 0x2f2f3a73
mov dword [rbp + 0x13], 0x64253d65
mov dword [rbp + 2], 0x26732525
mov dword [rbp - 0x28], 0x2e736f66
mov dword [rbp - 0xe], 0x67267325
mov word [rbp - 0x11], 0x6e6f
mov dword [rbp - 6], 0x26732525
mov dword [rbp - 0x21], 0x6162662f
mov dword [rbp - 0x2c], 0x6e696d61
mov word [rbp - 0x1b], 0x702e
mov dword [rbp - 2], 0x3d726176
mov dword [rbp - 0xa], 0x3d646975
mov word [rbp - 0x18], 0x3f70
mov dword [rbp + 6], 0x756c6176
mov word [rbp - 0x23], 0x6d6f
mov byte [rbp + 0xa], 0x65
mov byte [rbp + 0x17], 0
mov word [rbp - 0x1d], 0x6b63
mov byte [rbp + 0xd], 0x25
mov byte [rbp + 0x12], WSASetLastError
mov byte [rbp - 0x24], 0x63
mov byte [rbp - 0x12], 0x69
mov word [rbp - 0x31], 0x7270
mov byte [rbp - 0x19], 0x68
mov word [rbp - 0x2e], 0x7267
mov byte [rbp - 0xf], 0x3d
lea rdx, [rbp - 0x39]
jmp 0x14000298d
mov dword [rbp - 7], 0x253d7261
mov word [rbp + 9], 0x7426
mov dword [rbp - 0xd], 0x7325253d
mov word [rbp - 0x1a], 0x7372
mov dword [rbp - 0x2b], 0x6d6f632e
mov dword [rbp + 3], 0x253d6575
mov word [rbp - 0x12], 0x6726
mov word [rbp + 0xc], 0x656d
mov dword [rbp - 2], 0x61762673
mov dword [rbp - 0x1f], 0x763f7068
mov dword [rbp - 0x32], 0x6f73732f
mov word [rbp + 7], 0x6425
mov dword [rbp - 0x17], 0x253d6e6f
mov word [rbp - 0x2e], 0x7061
mov dword [rbp - 0x25], 0x6b636162
mov word [rbp - 0xf], 0x6469
mov byte [rbp + 2], WSAGetLastError
mov word [rbp - 0x27], 0x662f
mov byte [rbp - 0x2c], WSASetLastError
mov word [rbp - 9], 0x7626
mov word [rbp - 0x21], 0x702e
mov word [rbp + 0xf], 0x6425
mov word [rbp - 0x34], 0x2f3a
mov byte [rbp - 0x1b], 0x65
mov byte [rbp - 0x10], 0x75
mov byte [rbp - 3], 0x25
mov byte [rbp - 0x13], reloc.WS2_32.dll_WSAStartup
mov byte [rbp - 0x18], 0x69
mov byte [rbp + 0xb], 0x69
mov byte [rbp + 0xe], 0x3d
mov byte [rbp - 0x35], reloc.WS2_32.dll_WSAStartup
mov byte [rbp + 0x11], 0
lea rdx, [rbp - 0x39]
mov r8d, edi
mov rcx, rbx
call fcn.14002bc00
mov rax, rbx
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
Function at 0x140002c40
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 8], rbx
push rbp
mov rbp, rsp
sub rsp, 0x40
lea rdx, [rbp - 0x20]
mov dword [rbp - 0x13], 0x72656c6c
mov rbx, rcx
mov dword [rbp - 0x18], 0x74736e49
mov word [rbp - 0x1e], 0x626f
mov word [rbp - 0x1b], 0x5c6c
mov word [rbp - 0xb], 0x78
mov word [rbp - 0xe], 0x7475
mov byte [rbp - 0x19], 0x43
mov word [rbp - 0x20], 0x6c47
mov byte [rbp - 0x14], 0x61
mov byte [rbp - 0xf], 0x4d
mov byte [rbp - 0xc], 0x65
mov byte [rbp - 0x1c], 0x61
call fcn.14002c160
mov rax, rbx
mov rbx, qword [rsp + 0x50]
add rsp, 0x40
pop rbp
ret

Function at 0x140002cb0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 8], rbx
push rbp
mov rbp, rsp
sub rsp, 0x40
lea rdx, [rbp - 0x20]
mov dword [rbp - 0x19], 0x6e494549
mov rbx, rcx
mov dword [rbp - 0x20], 0x626f6c47
mov word [rbp - 0x1c], 0x6c61
mov dword [rbp - 0xc], 0x786574
mov dword [rbp - 0x12], 0x72656c6c
mov byte [rbp - 0x1a], 0x5c
mov word [rbp - 0xe], 0x754d
mov word [rbp - 0x14], 0x6174
mov byte [rbp - 0x15], reloc.WS2_32.dll_WSAStartup
call fcn.14002c160
mov rax, rbx
mov rbx, qword [rsp + 0x50]
add rsp, 0x40
pop rbp
ret

Function at 0x140002d10
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 8], rbx
push rbp
mov rbp, rsp
sub rsp, 0x40
lea rdx, [rbp - 0x20]
mov dword [rbp - 0x18], 0x736e4946
mov rbx, rcx
mov dword [rbp - 0x1f], 0x61626f6c
mov word [rbp - 0x14], 0x6174
mov word [rbp - 0xe], 0x754d
mov word [rbp - 0x11], 0x656c
mov dword [rbp - 0xc], 0x786574
mov word [rbp - 0x1a], 0x465c
mov byte [rbp - 0xf], WSACleanup
mov byte [rbp - 0x1b], WSAGetLastError
mov byte [rbp - 0x20], 0x47
mov byte [rbp - 0x12], WSAGetLastError
call fcn.14002c160
mov rax, rbx
mov rbx, qword [rsp + 0x50]
add rsp, 0x40
pop rbp
ret
Function at 0x1400711c0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x48
cmp byte [rcx + 8], 0
mov r9, rcx
je 0x1400711fb
xor ecx, ecx
cmp dword [r9 + 0x3d0], ecx
jle 0x1400711f6
sub r8, rdx
nop dword [rax + rax]
movzx eax, byte [r8 + rdx]
inc ecx
xor byte [rdx], al
lea rdx, [rdx + 1]
cmp ecx, dword [r9 + 0x3d0]
jl 0x1400711e0
add rsp, 0x48
ret
lea rdx, str.Object_not_Initialized
lea rcx, [rsp + 0x20]
call fcn.140071260
lea rdx, [0x14014daa0]
lea rcx, [rsp + 0x20]
call fcn.14009f8dc
int3

Function at 0x140071abb
Capabilities:
Authenticate hmac

Disassembly:
invalid
pop rbp
jns 0x140071ace
cmp byte [rax], bh
sub byte [rsi + 0x2e], ah
cmp byte [rax + 0x78], bl
cmp byte [rax], ch
cmp byte cs:[rax + 0x78], bl
js 0x140071ae0
and ebp, dword [r15 + rsi]
and ebp, dword [rdi + rsi]
cmp eax, 0x7dde346c
jrcxz 0x140071b24
fidivr word [rbp - 0x1d]
jnp 0x140071a93
jmp 0x127830028
jp 0x140071a91
jnp 0x140071a95
jno 0x140071a91
jp 0x140071a95
jbe 0x140071a92
jo 0x140071a93
jns 0x140071a9d
jo 0x140071aa2
jp 0x140071b05
jge 0x140071b17
push r13
xor dword [rdx + 0x59], edx
jnp 0x140071b20
pop rsp
sub byte [rdx + 0x2b], bh
invalid
sub eax, 0x415c3529
je 0x140071afc
enter 0xffffffffffffc6b1, 0xffffffffffffffb3
invalid
jo 0x140071ad2
ret 0xcc32
pop rax
and al, 0x72
cmp edx, dword [rbp + 0x54]

Function at 0x140071b31
Capabilities:
Authenticate hmac

Disassembly:
mov al, 0x71
stosd dword [rdi], eax
push 0xffffffffffffffb1
imul esp, dword [rdi - 0x50954f91], 0xb570ab71
lodsb al, byte [esi]
outsb dx, byte [rsi]
stosb byte [rdi], al
insd dword [rdi], dx
mov cl, reloc.WS2_32.dll_WSAStartup
stosd dword [rdi], eax
jo 0x140071bb5
invalid
movsxd rsp, dword [rbx + 0x7c]
sub word [rbp + 0x2a], bp

Function at 0x140071b49
Capabilities:
Authenticate hmac

Disassembly:
mov al, 0x71
stosd dword [rdi], eax
push 0xffffffffffffffb1
imul esp, dword [rdi - 0x50954f91], 0xb570ab71
lodsb al, byte [esi]
outsb dx, byte [rsi]
stosb byte [rdi], al
insd dword [rdi], dx
mov cl, reloc.WS2_32.dll_WSAStartup
stosd dword [rdi], eax
jo 0x140071bb5
invalid
movsxd rsp, dword [rbx + 0x7c]
sub word [rbp + 0x2a], bp

Function at 0x14007427c
Capabilities:
Authenticate hmac

Disassembly:
push 0x366a777e
push rdx
jno 0x1400742d9
invalid
mov esp, 0xbc32c832
xor ch, byte [rax]
jno 0x14007430a
pop rax
jo 0x140074323
sub al, 0x5c
jge 0x140074351
xor dh, byte [rbp + 0x4e]
sub byte [rcx], bh
push rdx
jno 0x140074355
jae 0x140074347
je 0x140074321
sub al, 0x2b
invalid
in eax, dx
invalid
out 0xcd, eax
out dx, al
fnstsw word [rax + rbx*8]
fdivr qword [rdx + rbx*8]
xlatb
Function at 0x140080a14
Capabilities:
Write file on windows

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 r14
sub rsp, 0x30
cmp byte [rcx + 0x97f], 0
mov rbp, r9
mov r14, r8
movsxd rsi, edx
mov rdi, rcx
je 0x140080ad5
cmp qword [rcx + 0x260], 0
je 0x140080a8a
call fcn.140076fa8
mov dl, 1
mov rcx, rdi
mov bl, al
call fcn.1400772b0
mov rcx, qword [rdi + 0x1d0]
mov r9, rbp
mov qword [rsp + 0x20], rcx
mov r8, r14
mov rcx, rdi
mov edx, esi
call qword [rdi + 0x260]
mov dl, bl
mov rcx, rdi
call fcn.1400772b0
jmp 0x140080ad5
mov ecx, esi
test edx, edx
je 0x140080a9a
sub ecx, 1
je 0x140080a9a
cmp ecx, 1
jne 0x140080ad5
mov r9, qword [rdi + 0x1c8]
lea rax, [0x140121ff8]
mov edx, 2
lea rcx, [rsi + rsi*2]
add rcx, rax
lea r8d, [rdx - 1]
call fcn.1400ca658
mov r9, qword [rdi + 0x1c8]
mov r8d, 1
mov rdx, rbp
mov rcx, r14
call fcn.1400ca658
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x30
pop r14
ret

Function at 0x140080cd4
Capabilities:
Receive data
Receive data on socket

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, r9
xor r9d, r9d
call qword [sym.imp.WS2_32.dll_recv]
movsxd rcx, eax
cmp rcx, 0xffffffffffffffff
jne 0x140080d0d
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
and qword [rbx], 0
mov ecx, 0x38
cmp eax, 0x2733
lea edx, [rcx + 0x19]
cmove ecx, edx
mov eax, ecx
jmp 0x140080d12
mov qword [rbx], rcx
xor eax, eax
add rsp, 0x20
pop rbx
ret

Function at 0x140080e24
Capabilities:
Send data
Send data on socket

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r14
sub rsp, 0x130
mov rax, qword [0x140150068]
xor rax, rsp
mov qword [rsp + 0x120], rax
mov rbx, qword [rsp + 0x180]
mov rdi, r8
movsxd r8, edx
mov rsi, r9
mov rdx, qword [rcx + 0x18]
mov rbp, rcx
mov r14, qword [rdx + r8*8 + 0x160]
call fcn.140081364
test eax, eax
je 0x140080e79
mov dword [rbx], 0x1b
or rax, 0xffffffffffffffff
jmp 0x140080ee3
xor r9d, r9d
mov r8d, esi
mov rdx, rdi
mov rcx, r14
call qword [sym.imp.WS2_32.dll_send]
and dword [rbx], 0
movsxd rsi, eax
cmp rsi, 0xffffffffffffffff
jne 0x140080ee0
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edi, eax
cmp eax, 0x2733
jne 0x140080eb0
xor esi, esi
mov dword [rbx], 0x51
jmp 0x140080ee0
mov r8d, 0x100
lea rdx, [rsp + 0x20]
mov ecx, edi
call fcn.140093854
mov r8, rax
lea rdx, str.Send_failure:__s
mov rcx, rbp
call fcn.140080af0
mov dword [rbp + 0xc1c], edi
mov dword [rbx], 0x37
mov rax, rsi
mov rcx, qword [rsp + 0x120]
xor rcx, rsp
call fcn.14009caf0
add rsp, 0x130
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x140081364
Capabilities:
Receive data
Receive data on socket

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 r14
sub rsp, 0x20
mov rbx, rdx
mov r14, rcx
movsxd rdx, r8d
mov rdi, rdx
shl rdi, 5
mov rax, qword [rbx + 0x2c8]
mov rsi, qword [rdi + rbx + 0x1b0]
sub rsi, qword [rdi + rbx + 0x1b8]
test byte [rax + 0x84], 3
je 0x14008147e
lea rax, [0x140080d4c]
cmp qword [rbx + rdx*8 + 0x188], rax
jne 0x14008147e
cmp qword [rdi + rbx + 0x1a8], 0
je 0x1400813da
test rsi, rsi
je 0x14008147e
mov rbp, qword [rbx + rdx*8 + 0x160]
or r8, 0xffffffffffffffff
or rdx, r8
mov rcx, rbp
xor r9d, r9d
call fcn.14008ba5c
cmp eax, 0xffffffff
je 0x14008147e
test al, 1
je 0x14008147e
mov rcx, qword [rdi + rbx + 0x1a8]
test rcx, rcx
jne 0x140081455
mov eax, dword [r14 + 0x5f4]
lea ecx, [rax + rax]
mov qword [rdi + rbx + 0x1b0], rcx
call qword [section..data]
mov qword [rdi + rbx + 0x1a8], rax
mov rcx, rax
test rax, rax
jne 0x14008143b
lea eax, [rcx + 0x1b]
jmp 0x140081480
and qword [rdi + rbx + 0x1b8], 0
and qword [rdi + rbx + 0x1c0], 0
mov rsi, qword [rdi + rbx + 0x1b0]
mov rdx, qword [rdi + rbx + 0x1b8]
xor r9d, r9d
add rdx, rcx
mov r8d, esi
mov rcx, rbp
call qword [sym.imp.WS2_32.dll_recv]
movsxd rcx, eax
test eax, eax
jle 0x14008147e
add qword [rdi + rbx + 0x1b8], rcx
xor eax, eax
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret

Function at 0x140081868
Capabilities:
Get local ipv4 addresses
Get socket information

Disassembly:
push rbx
push rbp
push rsi
push rdi
sub rsp, 0x1c8
mov rax, qword [0x140150068]
xor rax, rsp
mov qword [rsp + 0x1b0], rax
mov rdi, r8
mov rbx, rdx
mov r8d, 0x80
mov rsi, rcx
xor edx, edx
mov dword [rsp + 0x20], r8d
lea rcx, [rsp + 0x30]
mov rbp, r9
call fcn.14009f240
lea r8, [rsp + 0x20]
mov rcx, rbx
lea rdx, [rsp + 0x30]
call qword [sym.imp.WS2_32.dll_getsockname]
test eax, eax
je 0x1400818e9
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov r8d, 0x100
lea rdx, [rsp + 0xb0]
mov ecx, eax
mov ebx, eax
call fcn.140093854
mov r8d, ebx
lea rdx, str.getsockname___failed_with_errno__d:__s
jmp 0x14008192f
mov edx, dword [rsp + 0x20]
lea rcx, [rsp + 0x30]
mov r9, rbp
mov r8, rdi
call fcn.14008149c
test al, al
jne 0x14008193a
call fcn.1400ad258
mov ebx, dword [rax]
call fcn.1400ad258
mov r8d, 0x100
lea rdx, [rsp + 0xb0]
mov ecx, ebx
mov rdi, rax
call fcn.140093854
mov r8d, dword [rdi]
lea rdx, str.ssloc_inet_ntop___failed_with_errno__d:__s
mov r9, rax
mov rcx, rsi
call fcn.140080af0
mov rcx, qword [rsp + 0x1b0]
xor rcx, rsp
call fcn.14009caf0
add rsp, 0x1c8
pop rdi
pop rsi
pop rbp
pop rbx
ret