joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1400950f0
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x50
mov rax, qword [0x14034a8c0]
xor rax, rsp
mov qword [rsp + 0x48], rax
call fcn.14007b080
mov rcx, qword [0x140350848]
lea rdx, [rsp + 0x28]
mov rdi, rax
call qword [sym.imp.USER32.dll_GetClientRect]
mov ecx, dword [rsp + 0x30]
sub ecx, dword [rsp + 0x28]
movd xmm1, ecx
mov ecx, dword [rsp + 0x34]
sub ecx, dword [rsp + 0x2c]
cvtdq2ps xmm1, xmm1
movd xmm0, ecx
lea rcx, [rsp + 0x40]
cvtdq2ps xmm0, xmm0
movss dword [rdi + 8], xmm1
movss dword [rdi + 0xc], xmm0
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x40]
xorps xmm1, xmm1
sub rax, qword [0x140350850]
xorps xmm0, xmm0
cvtsi2ss xmm0, qword [0x140350858]
mov ecx, reloc.WS2_32.dll_recvfrom
cvtsi2ss xmm1, rax
divss xmm1, xmm0
movss dword [rdi + 0x10], xmm1
mov rax, qword [rsp + 0x40]
mov qword [0x140350850], rax
call qword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
mov ecx, reloc.WS2_32.dll_recv
and al, 1
mov byte [rdi + 0x128], al
call qword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
mov ecx, reloc.WS2_32.dll_select
and al, 1
mov byte [rdi + 0x129], al
call qword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
and al, 1
mov byte [rdi + 0x12b], 0
mov byte [rdi + 0x12a], al
call fcn.14007b080
cmp byte [rax + 0x3a7], 0
lea rbx, [rax + 0x110]
je 0x14009521d
cvttss2si ecx, dword [rbx]
lea rdx, [rsp + 0x38]
cvttss2si eax, dword [rax + 0x114]
mov dword [rsp + 0x38], ecx
mov rcx, qword [0x140350848]
mov dword [rsp + 0x3c], eax
call qword [sym.imp.USER32.dll_ClientToScreen]
mov edx, dword [rsp + 0x3c]
mov ecx, dword [rsp + 0x38]
call qword [sym.imp.USER32.dll_SetCursorPos]
mov dword [rbx], 0xff7fffff
mov dword [rbx + 4], 0xff7fffff
call qword [sym.imp.USER32.dll_GetActiveWindow]
cmp rax, qword [0x140350848]
jne 0x140095279
lea rcx, [rsp + 0x20]
call qword [sym.imp.USER32.dll_GetCursorPos]
test eax, eax
je 0x140095279
mov rcx, qword [0x140350848]
lea rdx, [rsp + 0x20]
call qword [sym.imp.USER32.dll_ScreenToClient]
test eax, eax
je 0x140095279
movd xmm0, dword [rsp + 0x20]
movd xmm1, dword [rsp + 0x24]
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm1, xmm1
movss dword [rbx], xmm0
movss dword [rbx + 4], xmm1
cmp byte [rdi + 0xc8], 0
je 0x140095289
mov eax, 0xffffffff
jmp 0x14009528e
call fcn.14007b090
cmp dword [reloc.WS2_32.dll_htonl], eax
je 0x1400952a1
mov dword [reloc.WS2_32.dll_htonl], eax
call fcn.1400952d0
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.140278120
mov rbx, qword [rsp + 0x60]
add rsp, 0x50
pop rdi
ret
Function at 0x140095730
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbx
sub rsp, 0x80
mov rax, qword [0x14034a8c0]
xor rax, rsp
mov qword [rsp + 0x70], rax
movzx eax, byte [rcx]
mov ebx, edx
test al, al
je 0x140095768
cmp al, 0x25
jne 0x14009575d
cmp byte [rcx + 1], al
jne 0x140095768
inc rcx
movzx eax, byte [rcx + 1]
inc rcx
test al, al
jne 0x140095751
cmp byte [rcx], 0x25
jne 0x140095839
cmp byte [rcx + 1], 0x25
je 0x140095839
xorps xmm3, xmm3
mov r8, rcx
cvtss2sd xmm3, xmm2
mov edx, 0x40
lea rcx, [rsp + 0x30]
movq r9, xmm3
call fcn.14007ba50
cmp byte [rsp + 0x30], 0x20
lea rcx, [rsp + 0x30]
jne 0x1400957ad
inc rcx
cmp byte [rcx], 0x20
je 0x1400957a5
lea eax, [rbx - 4]
cmp eax, 1
jbe 0x140095827
movzx edx, byte [rcx]
movzx r8d, dl
cmp dl, 0x2d
jne 0x1400957c6
movzx r8d, byte [rcx + 1]
lea rax, [rcx + 1]
xorps xmm1, xmm1
cmovne rax, rcx
cmp r8b, 0x2b
lea rcx, [rax + 1]
cmovne rcx, rax
movzx eax, byte [rcx]
cmp al, 0x30
jl 0x140095816
movss xmm2, dword [0x1402809a0]
nop dword [rax]
cmp al, 0x39
ja 0x140095816
movsx eax, byte [rcx]
inc rcx
sub eax, 0x30
mulss xmm1, xmm2
movd xmm0, eax
movzx eax, byte [rcx]
cvtdq2ps xmm0, xmm0
addss xmm0, xmm1
movaps xmm1, xmm0
cmp al, 0x30
jge 0x1400957f0
cmp dl, 0x2d
jne 0x140095834
xorps xmm1, xmmword [0x140280a20]
movaps xmm0, xmm1
jmp 0x14009583c
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atof]
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movaps xmm0, xmm1
jmp 0x14009583c
movaps xmm0, xmm2
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.140278120
add rsp, 0x80
pop rbx
ret

Function at 0x140095860
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbx
sub rsp, 0x80
mov rax, qword [0x14034a8c0]
xor rax, rsp
mov qword [rsp + 0x70], rax
movzx eax, byte [rcx]
mov ebx, edx
test al, al
je 0x140095898
cmp al, 0x25
jne 0x14009588d
cmp byte [rcx + 1], al
jne 0x140095898
inc rcx
movzx eax, byte [rcx + 1]
inc rcx
test al, al
jne 0x140095881
cmp byte [rcx], 0x25
jne 0x14009595b
cmp byte [rcx + 1], 0x25
je 0x14009595b
mov r8, rcx
movaps xmm3, xmm2
lea rcx, [rsp + 0x30]
movq r9, xmm2
mov edx, 0x40
call fcn.14007ba50
cmp byte [rsp + 0x30], 0x20
lea rcx, [rsp + 0x30]
jne 0x1400958d9
inc rcx
cmp byte [rcx], 0x20
je 0x1400958d1
lea eax, [rbx - 4]
cmp eax, 1
jbe 0x14009594d
movzx edx, byte [rcx]
movzx r8d, dl
cmp dl, 0x2d
jne 0x1400958f2
movzx r8d, byte [rcx + 1]
lea rax, [rcx + 1]
xorps xmm1, xmm1
cmovne rax, rcx
cmp r8b, 0x2b
lea rcx, [rax + 1]
cmovne rcx, rax
movzx eax, byte [rcx]
cmp al, 0x30
jl 0x14009593c
movsd xmm2, qword [0x140284a18]
cmp al, 0x39
ja 0x14009593c
movsx eax, byte [rcx]
inc rcx
sub eax, 0x30
mulsd xmm1, xmm2
movd xmm0, eax
movzx eax, byte [rcx]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm0
cmp al, 0x30
jge 0x140095918
cmp dl, 0x2d
jne 0x140095956
xorps xmm1, xmmword [0x140284a70]
movaps xmm0, xmm1
jmp 0x14009595e
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atof]
movaps xmm1, xmm0
movaps xmm0, xmm1
jmp 0x14009595e
movaps xmm0, xmm2
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.140278120
add rsp, 0x80
pop rbx
ret
Function at 0x1400a4410
Capabilities:
Terminate process

Disassembly:
sub rsp, 0xe8
mov rax, qword [0x14034a8c0]
xor rax, rsp
mov qword [rsp + 0xd0], rax
lea rdx, [0x140350930]
mov ecx, reloc.WLDAP32.dll_Ordinal_32
call sub.d3d9.dll_Direct3DCreate9Ex
test eax, eax
jns 0x1400a444a
mov ecx, 3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov eax, dword [0x140350a1c]
lea rdx, [0x140350938]
mov rcx, qword [0x140350930]
mov r8d, 1
mov r9, qword [0x1403509b0]
mov qword [rsp + 0x38], rdx
lea rdx, [0x140350940]
mov dword [0x140350940], eax
mov eax, dword [0x140350a20]
mov qword [0x140350958], 1
mov dword [0x140350968], 1
mov qword [0x140350960], r9
mov dword [0x140350948], 0x15
mov dword [0x140350944], eax
mov dword [0x14035096c], 1
mov dword [0x140350970], 0x50
mov qword [rsp + 0xe0], rdi
xor edi, edi
mov qword [0x14035094c], rdi
mov qword [0x140350974], rdi
mov dword [0x140350954], edi
mov dword [0x14035097c], edi
mov rax, qword [rcx]
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rdx
xor edx, edx
mov dword [rsp + 0x20], 0x40
call qword [rax + 0xa0]
test eax, eax
jns 0x1400a4521
mov rcx, qword [0x140350930]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov ecx, 4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
xor ecx, ecx
mov qword [rsp + 0xf0], rbx
call fcn.1400784e0
mov rcx, qword [0x1403509b0]
call fcn.140094fe0
mov rcx, qword [0x140350938]
call fcn.140094400
call fcn.14007b080
lea rcx, [rsp + 0x40]
mov rbx, rax
mov qword [rax + 0x18], rdi
call fcn.140086280
movss xmm2, dword [0x140280ae4]
lea rax, [0x140284f58]
mov qword [rsp + 0x78], rax
lea r9, [rsp + 0x40]
mov byte [rsp + 0x60], dil
lea rdx, str.C:WindowsFonts_tahoma.ttf
mov byte [rsp + 0x4c], dil
mov dword [rsp + 0x58], 5
mov dword [rsp + 0x5c], 5
mov dword [rsp + 0x90], 0x3f99999a
mov rcx, qword [rbx + 0x98]
mov qword [rsp + 0x20], rax
call fcn.140087200
xor ecx, ecx
call fcn.14008cb90
call fcn.14007b580
movdqa xmm3, xmmword [0x1402850a0]
xorps xmm1, xmm1
movdqa xmm2, xmmword [0x1402850b0]
movdqa xmm0, xmmword [0x140285080]
movups xmmword [rax + 0xc0], xmm0
mov dword [rax + 0xc], edi
movdqa xmm0, xmmword [0x140285090]
movups xmmword [rax + 0xd0], xmm0
mov dword [rax + 0x10], 0x3f800000
movups xmmword [rax + 0x230], xmm1
mov dword [rax + 0x28], 0x3f800000
movdqa xmm1, xmmword [0x1402850c0]
xorps xmm0, xmm0
movups xmmword [rax + 0x220], xmm0
mov dword [rax + 0x40], 0x3f800000
movups xmmword [rax + 0x240], xmm0
mov qword [rax + 0x34], rdi
movups xmmword [rax + 0xf0], xmm2
mov word [rax + 0x98], di
movups xmmword [rax + 0x110], xmm3
movups xmmword [rax + 0xe0], xmm3
movups xmmword [rax + 0x1c0], xmm1
movups xmmword [rax + 0x1d0], xmm1
movups xmmword [rax + 0x250], xmm2
movups xmmword [rax + 0x270], xmm2
movups xmmword [rax + 0x260], xmm2
movups xmmword [rax + 0x1f0], xmm3
movups xmmword [rax + 0x210], xmm3
movups xmmword [rax + 0x200], xmm3
mov rcx, qword [0x140350930]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rbx, qword [rsp + 0xf0]
xor eax, eax
mov rdi, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.140278120
add rsp, 0xe8
ret
Function at 0x1400b6370
Capabilities:
Convert ip address from string

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x88
mov rax, qword [0x14034a8c0]
xor rax, rsp
mov qword [rsp + 0x78], rax
mov r13, qword [rcx]
mov ebp, r8d
mov rsi, rcx
lea r8, [rsp + 0x20]
mov ebx, 2
xor r14d, r14d
mov ecx, ebx
mov r15, r9
mov r12, qword [r13 + 0x11b0]
mov rdi, rdx
mov dword [r9], r14d
call qword [sym.imp.WS2_32.dll_inet_pton]
test eax, eax
jle 0x1400b63dc
mov r9d, ebp
lea rdx, [rsp + 0x20]
mov r8, rdi
mov ecx, ebx
call fcn.1400d5020
jmp 0x1400b64ba
mov ebx, reloc.WS2_32.dll_socket
lea r8, [rsp + 0x58]
mov ecx, ebx
mov rdx, rdi
call qword [sym.imp.WS2_32.dll_inet_pton]
test eax, eax
jle 0x1400b640c
mov r9d, ebp
lea rdx, [rsp + 0x58]
mov r8, rdi
mov ecx, ebx
call fcn.1400d5020
jmp 0x1400b64ba
mov ecx, dword [rsi + 0x440]
sub ecx, 1
je 0x1400b6430
cmp ecx, 1
je 0x1400b641f
mov ebx, r14d
call fcn.1400b6eb0
test al, al
mov eax, 2
cmove ebx, eax
jmp 0x1400b6435
mov ebx, 2
cmp dword [rsi + 0xbc], 3
lea r8, [0x140280928]
xorps xmm0, xmm0
lea rcx, [rsp + 0x68]
movups xmmword [rsp + 0x28], xmm0
setne r14b
mov dword [rsp + 0x2c], ebx
inc r14d
mov r9d, ebp
mov edx, ntohs
mov dword [rsp + 0x30], r14d
movups xmmword [rsp + 0x38], xmm0
movups xmmword [rsp + 0x48], xmm0
call fcn.1400d2ec0
lea rcx, [rsp + 0x58]
call fcn.1400b6200
lea r9, [rsp + 0x28]
mov r8d, ebp
mov rdx, rdi
mov rcx, rsi
movups xmm0, xmmword [rax]
movups xmmword [r12], xmm0
call fcn.1400b6b10
test al, al
je 0x1400b64a9
mov dword [r15], 1
jmp 0x1400b64b8
lea rdx, str.getaddrinfo___thread_failed_to_start_n
mov rcx, r13
call fcn.1400c2450
xor eax, eax
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.140278120
add rsp, 0x88
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
jmp 0x1400b6370
Function at 0x1400c2390
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x30
cmp qword [rcx + 0x718], 0
mov rsi, r9
mov rbp, r8
movsxd rbx, edx
mov rdi, rcx
je 0x1400c23ee
mov dl, 1
call fcn.1400b11b0
mov rax, qword [rdi + 0x670]
mov r9, rsi
mov r8, rbp
mov qword [rsp + 0x20], rax
mov edx, ebx
mov rcx, rdi
call qword [rdi + 0x718]
xor edx, edx
mov rcx, rdi
mov ebx, eax
call fcn.1400b11b0
mov eax, ebx
jmp 0x1400c2430
cmp ebx, 2
ja 0x1400c242e
mov r9, qword [rdi + 0x668]
lea rdx, [0x140286c30]
lea rcx, [rbx + rbx*2]
add rcx, rdx
mov edx, 2
lea r8d, [rdx - 1]
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fwrite
mov r9, qword [rdi + 0x668]
mov r8d, 1
mov rdx, rsi
mov rcx, rbp
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fwrite
xor eax, eax
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret

Function at 0x1400c2450
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], r9
push rdi
sub rsp, 0x160
mov rax, qword [0x14034a8c0]
xor rax, rsp
mov qword [rsp + 0x140], rax
cmp byte [rcx + 0xea6], 0
mov rdi, rcx
jne 0x1400c2493
cmp qword [rcx + 0x678], 0
je 0x1400c2570
mov r8, rdx
mov qword [rsp + 0x158], rbx
mov edx, 0x100
lea r9, [rsp + 0x180]
lea rcx, [rsp + 0x30]
call fcn.1400d2fd0
lea rax, [rsp + 0x30]
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rax + rbx], 0
jne 0x1400c24c1
mov rcx, qword [rdi + 0x678]
test rcx, rcx
je 0x1400c2508
cmp byte [rdi + 0x1528], 0
jne 0x1400c2508
lea rdx, [rsp + 0x30]
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
mov byte [rcx], al
lea rcx, [rcx + 1]
test al, al
jne 0x1400c24f0
mov byte [rdi + 0x1528], 1
cmp byte [rdi + 0xea6], 0
je 0x1400c2568
mov byte [rsp + rbx + 0x30], 0xa
inc rbx
cmp rbx, 0x102
jae 0x1400c25c1
cmp qword [rdi + 0x718], 0
mov byte [rsp + rbx + 0x30], 0
je 0x1400c2589
mov dl, 1
mov rcx, rdi
call fcn.1400b11b0
mov rax, qword [rdi + 0x670]
lea r8, [rsp + 0x30]
mov r9, rbx
mov qword [rsp + 0x20], rax
xor edx, edx
mov rcx, rdi
call qword [rdi + 0x718]
xor edx, edx
mov rcx, rdi
call fcn.1400b11b0
mov rbx, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x140]
xor rcx, rsp
call fcn.140278120
add rsp, 0x160
pop rdi
ret
mov r9, qword [rdi + 0x668]
lea rcx, [0x140286c30]
mov edx, 2
lea r8d, [rdx - 1]
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fwrite
mov r9, qword [rdi + 0x668]
lea rcx, [rsp + 0x30]
mov r8d, 1
mov rdx, rbx
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fwrite
jmp 0x1400c2568
call fcn.140278a80
int3
Function at 0x1400c25d0
Capabilities:
Write file on windows

Disassembly:
test rcx, rcx
je 0x1400c2734
mov r11, rsp
mov qword [r11 + 0x10], rdx
mov qword [r11 + 0x18], r8
mov qword [r11 + 0x20], r9
push rdi
sub rsp, 0x860
mov rax, qword [0x14034a8c0]
xor rax, rsp
mov qword [rsp + 0x840], rax
cmp byte [rcx + 0xea6], 0
mov rdi, rcx
je 0x1400c271c
mov r8, rdx
mov qword [r11 - 0x10], rbx
mov edx, 0x801
lea r9, [r11 + 0x18]
lea rcx, [rsp + 0x30]
call fcn.1400d2fd0
movsxd rcx, eax
mov rbx, 0xffffffffffffffff
cmp rcx, 0x801
jb 0x1400c2691
mov rcx, qword [rsp + 0x878]
mov rax, rbx
nop word [rax + rax]
cmp byte [rcx + rax + 1], 0
lea rax, [rax + 1]
jne 0x1400c2650
cmp byte [rax + rcx - 1], 0xa
jne 0x1400c2678
lea r8, str...._n
mov edx, 5
lea rcx, [rsp + 0x82c]
jmp 0x1400c268c
lea r8, [0x1402807a8]
mov edx, 4
lea rcx, [rsp + 0x82d]
call fcn.1400d2ec0
lea rax, [rsp + 0x30]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1400c2696
cmp qword [rdi + 0x718], 0
je 0x1400c26de
mov dl, 1
mov rcx, rdi
call fcn.1400b11b0
mov rax, qword [rdi + 0x670]
lea r8, [rsp + 0x30]
mov r9, rbx
mov qword [rsp + 0x20], rax
xor edx, edx
mov rcx, rdi
call qword [rdi + 0x718]
xor edx, edx
mov rcx, rdi
call fcn.1400b11b0
jmp 0x1400c2714
mov r9, qword [rdi + 0x668]
lea rcx, [0x140286c30]
mov edx, 2
lea r8d, [rdx - 1]
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fwrite
mov r9, qword [rdi + 0x668]
lea rcx, [rsp + 0x30]
mov r8d, 1
mov rdx, rbx
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fwrite
mov rbx, qword [rsp + 0x858]
mov rcx, qword [rsp + 0x840]
xor rcx, rsp
call fcn.140278120
add rsp, 0x860
pop rdi
ret
Function at 0x1400c4d90
Capabilities:
Read file on windows

Disassembly:
sub rsp, 0x28
call sub.api_ms_win_crt_stdio_l1_1_0.dll__read
cdqe
add rsp, 0x28
ret

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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x30
cmp byte [0x140350c50], 0
mov esi, r8d
mov rdi, qword [rsp + 0x68]
je 0x1400c5d0f
test rdi, rdi
je 0x1400c5d0f
mov eax, dword [0x140350c54]
test eax, eax
jne 0x1400c5d07
mov r8d, dword [rsp + 0x60]
lea rsi, str.recv
mov r9, rsi
lea rcx, str.LIMIT__s:_d__s_reached_memlimit_n
mov rdx, rdi
call fcn.1400c59b0
mov ecx, 2
call sub.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func
mov r9d, dword [rsp + 0x60]
lea rdx, str.LIMIT__s:_d__s_reached_memlimit_n
mov rcx, rax
mov qword [rsp + 0x20], rsi
mov r8, rdi
call fcn.1400d2e90
mov rcx, qword [0x140350c48]
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fflush
call sub.api_ms_win_crt_runtime_l1_1_0.dll__errno
mov dword [rax], ntohs
mov eax, 0xffffffff
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret
dec eax
mov dword [0x140350c54], eax
call qword [sym.imp.WS2_32.dll_recv]
mov ebx, eax
test rdi, rdi
je 0x1400c5d37
mov r8d, dword [rsp + 0x60]
lea rcx, str.RECV__s:_d_recv__lu____ld_n
mov r9d, esi
mov dword [rsp + 0x20], eax
mov rdx, rdi
call fcn.1400c59b0
mov rsi, qword [rsp + 0x48]
mov eax, ebx
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret

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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x30
cmp byte [0x140350c50], 0
mov esi, r8d
mov rdi, qword [rsp + 0x68]
je 0x1400c5e5f
test rdi, rdi
je 0x1400c5e5f
mov eax, dword [0x140350c54]
test eax, eax
jne 0x1400c5e57
mov r8d, dword [rsp + 0x60]
lea rsi, str.send
mov r9, rsi
lea rcx, str.LIMIT__s:_d__s_reached_memlimit_n
mov rdx, rdi
call fcn.1400c59b0
mov ecx, 2
call sub.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func
mov r9d, dword [rsp + 0x60]
lea rdx, str.LIMIT__s:_d__s_reached_memlimit_n
mov rcx, rax
mov qword [rsp + 0x20], rsi
mov r8, rdi
call fcn.1400d2e90
mov rcx, qword [0x140350c48]
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fflush
call sub.api_ms_win_crt_runtime_l1_1_0.dll__errno
mov dword [rax], ntohs
mov eax, 0xffffffff
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret
dec eax
mov dword [0x140350c54], eax
call qword [sym.imp.WS2_32.dll_send]
mov ebx, eax
test rdi, rdi
je 0x1400c5e87
mov r8d, dword [rsp + 0x60]
lea rcx, str.SEND__s:_d_send__lu____ld_n
mov r9d, esi
mov dword [rsp + 0x20], eax
mov rdx, rdi
call fcn.1400c59b0
mov rsi, qword [rsp + 0x48]
mov eax, ebx
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret
Function at 0x1400d53a0
Capabilities:
Convert ip address from string

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x88
mov rax, qword [0x14034a8c0]
xor rax, rsp
mov qword [rsp + 0x78], rax
mov r13, qword [rcx]
mov ebp, r8d
mov rsi, rcx
lea r8, [rsp + 0x20]
mov ebx, 2
xor r14d, r14d
mov ecx, ebx
mov r15, r9
mov r12, qword [r13 + 0x11b0]
mov rdi, rdx
mov dword [r9], r14d
call qword [sym.imp.WS2_32.dll_inet_pton]
test eax, eax
jle 0x1400b63dc
mov r9d, ebp
lea rdx, [rsp + 0x20]
mov r8, rdi
mov ecx, ebx
call fcn.1400d5020
jmp 0x1400b64ba
mov ebx, reloc.WS2_32.dll_socket
lea r8, [rsp + 0x58]
mov ecx, ebx
mov rdx, rdi
call qword [sym.imp.WS2_32.dll_inet_pton]
test eax, eax
jle 0x1400b640c
mov r9d, ebp
lea rdx, [rsp + 0x58]
mov r8, rdi
mov ecx, ebx
call fcn.1400d5020
jmp 0x1400b64ba
mov ecx, dword [rsi + 0x440]
sub ecx, 1
je 0x1400b6430
cmp ecx, 1
je 0x1400b641f
mov ebx, r14d
call fcn.1400b6eb0
test al, al
mov eax, 2
cmove ebx, eax
jmp 0x1400b6435
mov ebx, 2
cmp dword [rsi + 0xbc], 3
lea r8, [0x140280928]
xorps xmm0, xmm0
lea rcx, [rsp + 0x68]
movups xmmword [rsp + 0x28], xmm0
setne r14b
mov dword [rsp + 0x2c], ebx
inc r14d
mov r9d, ebp
mov edx, ntohs
mov dword [rsp + 0x30], r14d
movups xmmword [rsp + 0x38], xmm0
movups xmmword [rsp + 0x48], xmm0
call fcn.1400d2ec0
lea rcx, [rsp + 0x58]
call fcn.1400b6200
lea r9, [rsp + 0x28]
mov r8d, ebp
mov rdx, rdi
mov rcx, rsi
movups xmm0, xmmword [rax]
movups xmmword [r12], xmm0
call fcn.1400b6b10
test al, al
je 0x1400b64a9
mov dword [r15], 1
jmp 0x1400b64b8
lea rdx, str.getaddrinfo___thread_failed_to_start_n
mov rcx, r13
call fcn.1400c2450
xor eax, eax
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.140278120
add rsp, 0x88
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
jmp 0x1400b6370
Function at 0x1400d91f0
Capabilities:
Encode data using xor

Disassembly:
push r14
push r15
sub rsp, 0x1f8
mov rax, qword [0x14034a8c0]
xor rax, rsp
mov qword [rsp + 0x1c0], rax
cmp byte [0x140350f10], 0
mov r14, rcx
jne 0x1400d9229
call fcn.140156360
test eax, eax
je 0x1400d9247
mov byte [0x140350f10], 1
xor eax, eax
mov rcx, qword [rsp + 0x1c0]
xor rcx, rsp
call fcn.140278120
add rsp, 0x1f8
pop r15
pop r14
ret
mov rcx, qword [r14 + 0xcf8]
test rcx, rcx
je 0x1400d9266
mov edx, 0x400
call fcn.140157400
call fcn.140156360
test eax, eax
jne 0x1400d9229
mov qword [rsp + 0x218], rbx
xor r15d, r15d
mov qword [rsp + 0x220], rbp
mov qword [rsp + 0x228], rsi
mov qword [rsp + 0x1f0], rdi
movaps xmmword [rsp + 0x1e0], xmm6
movaps xmmword [rsp + 0x1d0], xmm7
movsd xmm7, qword [0x14028c6d8]
nop dword [rax]
nop word [rax + rax]
mov rsi, r15
lea rbp, [rsp + 0x80]
nop dword [rax + rax]
lea rcx, [rsp + 0x30]
call fcn.1400b6200
mov ecx, 1
movups xmm6, xmmword [rax]
movups xmmword [rsp + 0x20], xmm6
call fcn.1400c2340
lea rcx, [rsp + 0x40]
lea rdi, [rsi + 3]
call fcn.1400b6200
lea rcx, [rsp + 0x50]
movsxd rbx, dword [rax + 8]
call fcn.1400b6200
mov rdx, rbx
lea rcx, [rdi - 2]
add rdx, qword [rax]
movq rax, xmm6
imul rdx, rdi
imul rcx, rax
shl rdx, 8
xor rdx, rcx
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x20], rdx
call fcn.1400b6200
lea rcx, [rsp + 0x70]
mov rbx, rax
call fcn.1400b6200
mov ecx, dword [rbx + 8]
lea rbp, [rbp + 0x10]
add ecx, dword [rax]
lea eax, [rsi + 4]
imul ecx, eax
lea eax, [rsi + 2]
imul eax, dword [rsp + 0x28]
inc rsi
shl ecx, 0x10
xor ecx, eax
mov dword [rsp + 0x28], ecx
movups xmm0, xmmword [rsp + 0x20]
movups xmmword [rbp - 0x10], xmm0
cmp rsi, 4
jb 0x1400d92c0
movaps xmm2, xmm7
lea rcx, [rsp + 0x80]
mov edx, 0x40
call fcn.140156090
call fcn.140156360
test eax, eax
je 0x1400d92b0
mov edx, 0x100
mov byte [rsp + 0xc0], r15b
lea rcx, [rsp + 0xc0]
call fcn.140157190
movaps xmm7, xmmword [rsp + 0x1d0]
movaps xmm6, xmmword [rsp + 0x1e0]
mov rdi, qword [rsp + 0x1f0]
mov rsi, qword [rsp + 0x228]
mov rbp, qword [rsp + 0x220]
mov rbx, qword [rsp + 0x218]
cmp byte [rsp + 0xc0], r15b
je 0x1400d93fd
mov edx, 0x400
lea rcx, [rsp + 0xc0]
call fcn.140157400
call fcn.140156360
test eax, eax
jne 0x1400d9229
lea rdx, str.libcurl_is_now_using_a_weak_random_seed__n
mov rcx, r14
call fcn.1400c25d0
call fcn.140156360
test eax, eax
mov ecx, reloc.WLDAP32.dll_Ordinal_35
cmovne ecx, r15d
mov eax, ecx
jmp 0x1400d922b