joyce8/EMBER2024-capa huggingface dataset:
Function at 0x18001e560
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x10]
sub rsp, 0x110
mov rax, qword [0x1801551e0]
xor rax, rsp
mov qword [rbp], rax
mov rsi, r8
mov r12, rdx
mov r13, rcx
mov qword [rbp - 8], r8
xor r15d, r15d
movzx ebx, byte [rsp + 0x40]
movzx edi, byte [rsp + 0x40]
nop dword [rax]
nop dword [rax + rax]
mov dword [rsp + 0x44], 0xdfc4df
mov byte [rsp + 0x48], 1
mov edx, r15d
lea rcx, [rbp - 0x28]
call fcn.18000eac0
mov r14, rax
mov word [rsp + 0x4c], Ordinal_35
mov byte [rsp + 0x4e], 0
lea rax, [rsp + 0x4c]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x18001e5e4
mov rdx, qword [rsi + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, rcx
jb 0x18001e7a8
mov rax, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x18001e614
mov rax, qword [rsi]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x4c]
mov r8, rsi
movzx edx, bl
lea rcx, [rbp - 0x48]
call fcn.180051cb0
nop
mov r9, r14
lea r8, [rbp - 0x48]
movzx edx, dil
lea rcx, [rbp - 0x68]
call fcn.180051ac0
nop
xor r14d, r14d
cmp byte [rsp + 0x48], r14b
je 0x18001e675
mov ecx, r14d
nop word [rax + rax]
lea eax, [rcx - 3]
xor byte [rsp + rcx + 0x44], al
inc rcx
cmp rcx, 3
jb 0x18001e660
mov byte [rsp + 0x48], r14b
mov qword [rsp + 0x78], r14
mov qword [rbp - 0x78], r14
mov qword [rbp - 0x70], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x78], 0
mov r8d, 3
lea rdx, [rsp + 0x44]
lea rcx, [rsp + 0x78]
call fcn.180040990
nop
lea r8, [rbp - 0x68]
cmp qword [rbp - 0x50], 0x10
cmovae r8, qword [rbp - 0x68]
mov r9, qword [rbp - 0x58]
xor edx, edx
lea rcx, [rsp + 0x78]
call fcn.1800519b0
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r14
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x58], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x68], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
lea rcx, [rsp + 0x78]
call fcn.180040890
nop
lea rdx, [rsp + 0x58]
cmp qword [rsp + 0x70], 0x10
cmovae rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x68]
mov rcx, r13
call fcn.180053f40
movss xmm1, dword [r12]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___float____ptr64]
mov word [rsp + 0x50], Ordinal_46
mov byte [rsp + 0x52], 0
lea rdx, [rsp + 0x50]
mov rcx, rax
call fcn.180047a90
nop
lea rcx, [rsp + 0x58]
call fcn.180040890
nop
lea rcx, [rbp - 0x68]
call fcn.180040890
nop
lea rcx, [rbp - 0x48]
call fcn.180040890
nop
lea rcx, [rbp - 0x28]
call fcn.180040890
inc r15d
add r12, 4
cmp r15d, 4
jl 0x18001e5b0
mov rcx, rsi
call fcn.180040890
mov rcx, qword [rbp]
xor rcx, rsp
call fcn.1801127f0
mov rbx, qword [rsp + 0x168]
add rsp, 0x110
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.18000c960
nop
int3
Function at 0x1800255d0
Capabilities:
Encode data using xor

Disassembly:
push rbx
sub rsp, 0x20
cmp byte [rdx + 0x23], 0
mov rbx, rcx
je 0x1800255f6
xor eax, eax
lea r8d, [rax - 3]
xor byte [rax + rdx], r8b
inc rax
cmp rax, 0x22
jb 0x1800255e1
mov byte [rdx + 0x23], 0
call fcn.180047a90
mov rax, rbx
add rsp, 0x20
pop rbx
ret

Function at 0x180025610
Capabilities:
Encode data using xor

Disassembly:
push rbx
sub rsp, 0x20
cmp byte [rdx + 0x27], 0
mov rbx, rcx
je 0x180025636
xor eax, eax
lea r8d, [rax - 3]
xor byte [rax + rdx], r8b
inc rax
cmp rax, 0x26
jb 0x180025621
mov byte [rdx + 0x27], 0
call fcn.180047a90
mov rax, rbx
add rsp, 0x20
pop rbx
ret

Function at 0x180025650
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x27], 0
je 0x180025673
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0x26
jb 0x180025660
mov byte [rcx + 0x27], 0
mov rax, rcx
ret
Function at 0x180028d30
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x12], 0
je 0x180028d53
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0x11
jb 0x180028d40
mov byte [rcx + 0x12], 0
mov rax, rcx
ret
Function at 0x1800290f0
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x13], 0
je 0x180029113
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0x12
jb 0x180029100
mov byte [rcx + 0x13], 0
mov rax, rcx
ret
Function at 0x18002a130
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x1c], 0
je 0x18002a153
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0x1b
jb 0x18002a140
mov byte [rcx + 0x1c], 0
mov rax, rcx
ret

Function at 0x18002a160
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0xa], 0
je 0x18002a183
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 9
jb 0x18002a170
mov byte [rcx + 0xa], 0
mov rax, rcx
ret
Function at 0x180036690
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x21], 0
je 0x1800366b3
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0x20
jb 0x1800366a0
mov byte [rcx + 0x21], 0
mov rax, rcx
ret

Function at 0x1800366c0
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 5], 0
je 0x1800366e3
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 4
jb 0x1800366d0
mov byte [rcx + 5], 0
mov rax, rcx
ret

Function at 0x1800366f0
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x19], 0
je 0x180036713
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0x18
jb 0x180036700
mov byte [rcx + 0x19], 0
mov rax, rcx
ret

Function at 0x180036720
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x2b], 0
je 0x180036743
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0x2a
jb 0x180036730
mov byte [rcx + 0x2b], 0
mov rax, rcx
ret

Function at 0x180036750
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x34], 0
je 0x180036773
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0x33
jb 0x180036760
mov byte [rcx + 0x34], 0
mov rax, rcx
ret

Function at 0x180036780
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x18], 0
je 0x1800367a3
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0x17
jb 0x180036790
mov byte [rcx + 0x18], 0
mov rax, rcx
ret

Function at 0x1800367b0
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0xf], 0
je 0x1800367d3
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0xe
jb 0x1800367c0
mov byte [rcx + 0xf], 0
mov rax, rcx
ret

Function at 0x1800367e0
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0xe], 0
je 0x180036803
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0xd
jb 0x1800367f0
mov byte [rcx + 0xe], 0
mov rax, rcx
ret

Function at 0x180036810
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x43], 0
je 0x180036833
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0x42
jb 0x180036820
mov byte [rcx + 0x43], 0
mov rax, rcx
ret

Function at 0x180036840
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x24], 0
je 0x180036863
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0x23
jb 0x180036850
mov byte [rcx + 0x24], 0
mov rax, rcx
ret

Function at 0x180036880
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x16], 0
je 0x1800368a3
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0x15
jb 0x180036890
mov byte [rcx + 0x16], 0
mov rax, rcx
ret
Function at 0x1800368b0
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x17], 0
je 0x1800368d3
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0x16
jb 0x1800368c0
mov byte [rcx + 0x17], 0
mov rax, rcx
ret

Function at 0x1800368e0
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x14], 0
je 0x180036903
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0x13
jb 0x1800368f0
mov byte [rcx + 0x14], 0
mov rax, rcx
ret

Function at 0x180036910
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x15], 0
je 0x180036933
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0x14
jb 0x180036920
mov byte [rcx + 0x15], 0
mov rax, rcx
ret

Function at 0x180036940
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x26], 0
je 0x180036963
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0x25
jb 0x180036950
mov byte [rcx + 0x26], 0
mov rax, rcx
ret

Function at 0x180036970
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x50
mov r9, r8
mov rbx, rdx
mov rdi, rcx
mov qword [rsp + 0x40], rcx
xor esi, esi
cmp byte [r8 + 7], sil
je 0x1800369a4
mov eax, esi
lea ecx, [rax - 3]
xor byte [r8 + rax], cl
inc rax
cmp rax, 6
jb 0x180036990
mov byte [r8 + 7], sil
lea rax, [r8 + 6]
mov qword [rsp + 0x20], rsi
movdqa xmm0, xmmword [0x180136dd0]
movdqu xmmword [rsp + 0x30], xmm0
mov byte [rsp + 0x20], sil
cmp r9, rax
je 0x1800369d9
mov r8d, 6
mov rdx, r9
lea rcx, [rsp + 0x20]
call fcn.180040990
nop
mov r9, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0x10
jb 0x1800369e7
mov rbx, qword [rbx]
mov r8, rbx
xor edx, edx
lea rcx, [rsp + 0x20]
call fcn.1800519b0
mov qword [rdi], rsi
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], rsi
movups xmm0, xmmword [rax]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdi + 0x10], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
lea rcx, [rsp + 0x20]
call fcn.180040890
mov rax, rdi
add rsp, 0x50
pop rdi
pop rsi
pop rbx
ret
Function at 0x180036a40
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x50
mov r9, r8
mov rbx, rdx
mov rdi, rcx
mov qword [rsp + 0x40], rcx
xor esi, esi
cmp byte [r8 + 0xb], sil
je 0x180036a74
mov eax, esi
lea ecx, [rax - 3]
xor byte [r8 + rax], cl
inc rax
cmp rax, 0xa
jb 0x180036a60
mov byte [r8 + 0xb], sil
lea rax, [r8 + 0xa]
mov qword [rsp + 0x20], rsi
movdqa xmm0, xmmword [0x180136dd0]
movdqu xmmword [rsp + 0x30], xmm0
mov byte [rsp + 0x20], sil
cmp r9, rax
je 0x180036aa9
mov r8d, 0xa
mov rdx, r9
lea rcx, [rsp + 0x20]
call fcn.180040990
nop
mov r9, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0x10
jb 0x180036ab7
mov rbx, qword [rbx]
mov r8, rbx
xor edx, edx
lea rcx, [rsp + 0x20]
call fcn.1800519b0
mov qword [rdi], rsi
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], rsi
movups xmm0, xmmword [rax]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdi + 0x10], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
lea rcx, [rsp + 0x20]
call fcn.180040890
mov rax, rdi
add rsp, 0x50
pop rdi
pop rsi
pop rbx
ret

Function at 0x180036b10
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x50
mov r9, r8
mov rbx, rdx
mov rdi, rcx
mov qword [rsp + 0x40], rcx
xor esi, esi
cmp byte [r8 + 6], sil
je 0x180036b44
mov eax, esi
lea ecx, [rax - 3]
xor byte [r8 + rax], cl
inc rax
cmp rax, 5
jb 0x180036b30
mov byte [r8 + 6], sil
lea rax, [r8 + 5]
mov qword [rsp + 0x20], rsi
movdqa xmm0, xmmword [0x180136dd0]
movdqu xmmword [rsp + 0x30], xmm0
mov byte [rsp + 0x20], sil
cmp r9, rax
je 0x180036b79
mov r8d, 5
mov rdx, r9
lea rcx, [rsp + 0x20]
call fcn.180040990
nop
mov r9, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0x10
jb 0x180036b87
mov rbx, qword [rbx]
mov r8, rbx
xor edx, edx
lea rcx, [rsp + 0x20]
call fcn.1800519b0
mov qword [rdi], rsi
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], rsi
movups xmm0, xmmword [rax]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdi + 0x10], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
lea rcx, [rsp + 0x20]
call fcn.180040890
mov rax, rdi
add rsp, 0x50
pop rdi
pop rsi
pop rbx
ret
Function at 0x18003a910
Capabilities:
Encode data using xor

Disassembly:
push rbx
sub rsp, 0x30
mov rbx, rdx
xor r8d, r8d
mov rdx, rcx
mov qword [rsp + 0x20], rbx
cmp byte [rcx + 0x3d], r8b
je 0x18003a943
mov ecx, r8d
nop dword [rax]
lea eax, [rcx - 3]
xor byte [rcx + rdx], al
inc rcx
cmp rcx, 0x3c
jb 0x18003a930
mov byte [rdx + 0x3d], r8b
lea rcx, [rdx + 0x3c]
mov qword [rbx], r8
mov qword [rbx + 0x10], r8
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], r8b
cmp rdx, rcx
je 0x18003a96c
mov r8d, reloc.WLDAP32.dll_Ordinal_60
mov rcx, rbx
call fcn.180040990
mov rax, rbx
add rsp, 0x30
pop rbx
ret

Function at 0x18003aad0
Capabilities:
Encode data using xor

Disassembly:
push rbx
sub rsp, 0x30
mov rbx, rdx
xor r8d, r8d
mov rdx, rcx
mov qword [rsp + 0x20], rbx
cmp byte [rcx + 0x1d], r8b
je 0x18003ab03
mov ecx, r8d
nop dword [rax]
lea eax, [rcx - 3]
xor byte [rcx + rdx], al
inc rcx
cmp rcx, 0x1c
jb 0x18003aaf0
mov byte [rdx + 0x1d], r8b
lea rcx, [rdx + 0x1c]
mov qword [rbx], r8
mov qword [rbx + 0x10], r8
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], r8b
cmp rdx, rcx
je 0x18003ab2c
mov r8d, Ordinal_33
mov rcx, rbx
call fcn.180040990
mov rax, rbx
add rsp, 0x30
pop rbx
ret

Function at 0x18003ab40
Capabilities:
Encode data using xor

Disassembly:
push rbx
sub rsp, 0x30
mov rbx, rdx
xor r8d, r8d
mov rdx, rcx
mov qword [rsp + 0x20], rbx
cmp byte [rcx + 0x38], r8b
je 0x18003ab73
mov ecx, r8d
nop dword [rax]
lea eax, [rcx - 3]
xor byte [rcx + rdx], al
inc rcx
cmp rcx, 0x37
jb 0x18003ab60
mov byte [rdx + 0x38], r8b
lea rcx, [rdx + 0x37]
mov qword [rbx], r8
mov qword [rbx + 0x10], r8
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], r8b
cmp rdx, rcx
je 0x18003ab9c
mov r8d, gethostname
mov rcx, rbx
call fcn.180040990
mov rax, rbx
add rsp, 0x30
pop rbx
ret

Function at 0x18003abb0
Capabilities:
Encode data using xor

Disassembly:
push rbx
sub rsp, 0x30
mov rbx, rdx
xor r8d, r8d
mov rdx, rcx
mov qword [rsp + 0x20], rbx
cmp byte [rcx + 0x32], r8b
je 0x18003abe3
mov ecx, r8d
nop dword [rax]
lea eax, [rcx - 3]
xor byte [rcx + rdx], al
inc rcx
cmp rcx, 0x31
jb 0x18003abd0
mov byte [rdx + 0x32], r8b
lea rcx, [rdx + 0x31]
mov qword [rbx], r8
mov qword [rbx + 0x10], r8
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], r8b
cmp rdx, rcx
je 0x18003ac0c
mov r8d, Ordinal_50
mov rcx, rbx
call fcn.180040990
mov rax, rbx
add rsp, 0x30
pop rbx
ret

Function at 0x18003ac20
Capabilities:
Encode data using xor

Disassembly:
push rbx
sub rsp, 0x30
mov rbx, rdx
xor r8d, r8d
mov rdx, rcx
mov qword [rsp + 0x20], rbx
cmp byte [rcx + 0x28], r8b
je 0x18003ac53
mov ecx, r8d
nop dword [rax]
lea eax, [rcx - 3]
xor byte [rcx + rdx], al
inc rcx
cmp rcx, 0x27
jb 0x18003ac40
mov byte [rdx + 0x28], r8b
lea rcx, [rdx + 0x27]
mov qword [rbx], r8
mov qword [rbx + 0x10], r8
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], r8b
cmp rdx, rcx
je 0x18003ac7c
mov r8d, Ordinal_41
mov rcx, rbx
call fcn.180040990
mov rax, rbx
add rsp, 0x30
pop rbx
ret
Function at 0x18003ac90
Capabilities:
Encode data using xor

Disassembly:
push rbx
sub rsp, 0x30
mov rbx, rdx
xor r8d, r8d
mov rdx, rcx
mov qword [rsp + 0x20], rbx
cmp byte [rcx + 0x18], r8b
je 0x18003acc3
mov ecx, r8d
nop dword [rax]
lea eax, [rcx - 3]
xor byte [rcx + rdx], al
inc rcx
cmp rcx, 0x17
jb 0x18003acb0
mov byte [rdx + 0x18], r8b
lea rcx, [rdx + 0x17]
mov qword [rbx], r8
mov qword [rbx + 0x10], r8
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], r8b
cmp rdx, rcx
je 0x18003acec
mov r8d, reloc.WS2_32.dll_socket
mov rcx, rbx
call fcn.180040990
mov rax, rbx
add rsp, 0x30
pop rbx
ret

Function at 0x18003ad00
Capabilities:
Encode data using xor

Disassembly:
push rbx
sub rsp, 0x30
mov rbx, rdx
xor r8d, r8d
mov rdx, rcx
mov qword [rsp + 0x20], rbx
cmp byte [rcx + 0x19], r8b
je 0x18003ad33
mov ecx, r8d
nop dword [rax]
lea eax, [rcx - 3]
xor byte [rcx + rdx], al
inc rcx
cmp rcx, 0x18
jb 0x18003ad20
mov byte [rdx + 0x19], r8b
lea rcx, [rdx + 0x18]
mov qword [rbx], r8
mov qword [rbx + 0x10], r8
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], r8b
cmp rdx, rcx
je 0x18003ad5c
mov r8d, Ordinal_26
mov rcx, rbx
call fcn.180040990
mov rax, rbx
add rsp, 0x30
pop rbx
ret

Function at 0x18003afb0
Capabilities:
Encode data using xor

Disassembly:
push rbx
sub rsp, 0x30
mov rbx, rdx
xor r8d, r8d
mov rdx, rcx
mov qword [rsp + 0x20], rbx
cmp byte [rcx + 0x27], r8b
je 0x18003afe3
mov ecx, r8d
nop dword [rax]
lea eax, [rcx - 3]
xor byte [rcx + rdx], al
inc rcx
cmp rcx, 0x26
jb 0x18003afd0
mov byte [rdx + 0x27], r8b
lea rcx, [rdx + 0x26]
mov qword [rbx], r8
mov qword [rbx + 0x10], r8
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], r8b
cmp rdx, rcx
je 0x18003b00c
mov r8d, Ordinal_41
mov rcx, rbx
call fcn.180040990
mov rax, rbx
add rsp, 0x30
pop rbx
ret

Function at 0x18003b020
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x23], 0
je 0x18003b043
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0x22
jb 0x18003b030
mov byte [rcx + 0x23], 0
ret

Function at 0x18003b050
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x1f], 0
je 0x18003b073
xor eax, eax
nop dword [rax + rax]
lea edx, [rax - 3]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0x1e
jb 0x18003b060
mov byte [rcx + 0x1f], 0
ret

Function at 0x18003b080
Capabilities:
Encode data using xor

Disassembly:
push rbx
sub rsp, 0x30
mov rbx, rdx
xor r8d, r8d
mov rdx, rcx
mov qword [rsp + 0x20], rbx
cmp byte [rcx + 0x1f], r8b
je 0x18003b0b3
mov ecx, r8d
nop dword [rax]
lea eax, [rcx - 3]
xor byte [rcx + rdx], al
inc rcx
cmp rcx, 0x1e
jb 0x18003b0a0
mov byte [rdx + 0x1f], r8b
lea rcx, [rdx + 0x1e]
mov qword [rbx], r8
mov qword [rbx + 0x10], r8
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], r8b
cmp rdx, rcx
je 0x18003b0dc
mov r8d, reloc.WLDAP32.dll_Ordinal_30
mov rcx, rbx
call fcn.180040990
mov rax, rbx
add rsp, 0x30
pop rbx
ret
Function at 0x18003b0f0
Capabilities:
Encode data using xor

Disassembly:
push rbx
sub rsp, 0x30
mov rbx, rdx
xor r8d, r8d
mov rdx, rcx
mov qword [rsp + 0x20], rbx
cmp byte [rcx + 0x1f], r8b
je 0x18003b123
mov ecx, r8d
nop dword [rax]
lea eax, [rcx - 3]
xor byte [rdx + rcx], al
inc rcx
cmp rcx, 0x1e
jb 0x18003b110
mov byte [rdx + 0x1f], r8b
lea rcx, [rdx + 0x1e]
mov qword [rbx], r8
mov qword [rbx + 0x10], r8
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], r8b
cmp rdx, rcx
je 0x18003b14c
mov r8d, reloc.WLDAP32.dll_Ordinal_30
mov rcx, rbx
call fcn.180040990
mov rax, rbx
add rsp, 0x30
pop rbx
ret

Function at 0x18003b450
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rdi
push r14
sub rsp, 0x20
cmp qword [rcx + 0x68], 0
mov rbx, r8
mov r14, rdx
mov rdi, rcx
je 0x18003b487
mov rbx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
jmp qword [sym.imp.MSVCP140.dll_protected_virtual:_long_long___int64____cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::xsputn_char_const____ptr64__long_long___int64_____ptr64]
mov rax, qword [rcx + 0x40]
mov qword [rsp + 0x30], rbp
mov qword [rsp + 0x38], rsi
mov rsi, rbx
mov r9, qword [rax]
test r9, r9
je 0x18003b4a8
mov rax, qword [rcx + 0x58]
mov ecx, dword [rax]
jmp 0x18003b4aa
xor ecx, ecx
movsxd rbp, ecx
test rbx, rbx
jle 0x18003b503
test ecx, ecx
jle 0x18003b4e3
cmp rbx, rbp
mov rcx, r9
cmovl rbp, rbx
mov r8, rbp
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rdi + 0x58]
sub rbx, rbp
add r14, rbp
sub dword [rax], ebp
mov rcx, qword [rdi + 0x40]
movsxd rax, ebp
add qword [rcx], rax
test rbx, rbx
jle 0x18003b503
mov r9, qword [rdi + 0x80]
test r9, r9
je 0x18003b503
mov r8, rbx
mov edx, 1
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
sub rbx, rax
mov rbp, qword [rsp + 0x30]
sub rsi, rbx
mov rbx, qword [rsp + 0x40]
mov rax, rsi
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret
Function at 0x18003b530
Capabilities:
Read file on windows

Disassembly:
push rbp
push rsi
push r14
sub rsp, 0x30
mov rbp, r8
mov r14, rdx
mov rsi, rcx
test r8, r8
jg 0x18003b552
xor eax, eax
add rsp, 0x30
pop r14
pop rsi
pop rbp
ret
cmp qword [rcx + 0x68], 0
je 0x18003b568
add rsp, 0x30
pop r14
pop rsi
pop rbp
jmp qword [sym.imp.MSVCP140.dll_protected_virtual:_long_long___int64____cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::xsgetn_char____ptr64__long_long___int64_____ptr64]
mov rax, qword [rcx + 0x38]
mov qword [rsp + 0x28], rbx
mov rbx, rbp
mov rdx, qword [rax]
test rdx, rdx
je 0x18003b584
mov rax, qword [rcx + 0x50]
mov ecx, dword [rax]
jmp 0x18003b586
xor ecx, ecx
mov qword [rsp + 0x20], rdi
movsxd rax, ecx
test ecx, ecx
je 0x18003b5c0
cmp rax, rbp
mov rdi, rbp
mov rcx, r14
cmovb rdi, rax
mov r8, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsi + 0x50]
sub rbx, rdi
add r14, rdi
mov r8, rbx
sub dword [rax], edi
mov rcx, qword [rsi + 0x38]
movsxd rax, edi
add qword [rcx], rax
cmp qword [rsi + 0x80], 0
je 0x18003b667
mov r9, qword [rsi + 0x18]
lea rax, [rsi + 0x70]
cmp qword [r9], rax
jne 0x18003b5fb
mov rcx, qword [rsi + 0x88]
mov rdx, qword [rsi + 0x90]
mov qword [r9], rcx
sub edx, ecx
mov rax, qword [rsi + 0x38]
mov qword [rax], rcx
mov rax, qword [rsi + 0x50]
mov dword [rax], edx
mov rdi, r8
cmp r8, 0xfff
jbe 0x18003b641
nop word [rax + rax]
mov r9, qword [rsi + 0x80]
mov edx, 1
mov r8d, 0xfff
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
sub rbx, rax
add r14, rax
mov rdi, rbx
cmp rax, 0xfff
jne 0x18003b680
cmp rbx, rax
ja 0x18003b610
mov r8, rdi
test rdi, rdi
je 0x18003b667
mov r9, qword [rsi + 0x80]
mov r8, rbx
mov edx, 1
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov r8, rdi
sub r8, rax
sub rbp, r8
mov rdi, qword [rsp + 0x20]
mov rax, rbp
mov rbx, qword [rsp + 0x28]
add rsp, 0x30
pop r14
pop rsi
pop rbp
ret
sub rbp, rbx
jmp 0x18003b66a