Function at 0x180022680
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r14
push r15
lea rbp, [rsp - 0x47]
sub rsp, 0x90
mov rax, qword [0x180229ec0]
xor rax, rsp
mov qword [rbp + 0x3f], rax
xor r15d, r15d
mov ecx, dword [0x18022ee00]
mov rax, qword gs:[0x58]
lea r14, [rax + rcx*8]
nop dword [rax]
nop dword [rax + rax]
movdqa xmm0, xmmword [0x180198c60]
movdqu xmmword [rbp - 0x29], xmm0
mov word [rbp - 0x19], 0x100
mov rax, r15
nop word [rax + rax]
lea ecx, [rax + 0x4c]
xor byte [rbp + rax - 0x29], cl
inc rax
cmp rax, 0x10
jb 0x1800226f0
mov byte [rbp - 0x18], r15b
lea rdx, [rbp - 0x29]
xor ecx, ecx
call qword [sym.imp.USER32.dll_FindWindowA]
test rax, rax
jne 0x180022723
cmp byte [reloc.WS2_32.dll_accept], r15b
jne 0x1800226d0
jmp 0x1800228a4
mov rbx, qword [0x18022bc78]
test rbx, rbx
jne 0x180022766
call fcn.180026b00
mov rcx, qword [rax + 0x10]
mov rax, qword [0x18022bc80]
mov rbx, qword [rcx + rax*8]
test rbx, rbx
jne 0x18002275f
lea r8d, [rbx + 0x63]
lea rdx, str.E:Nexhub1337coreclient_sharedRegistry.h
lea rcx, str.instance___nullptr
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
mov qword [0x18022bc78], rbx
mov qword [0x18022c700], rbx
mov rdi, qword [0x18022bc88]
test rdi, rdi
jne 0x1800227b0
call fcn.180026b00
mov r9, qword [rax + 0x10]
mov rax, qword [0x18022bc90]
mov rdi, qword [r9 + rax*8]
test rdi, rdi
jne 0x1800227a9
lea r8d, [rdi + 0x63]
lea rdx, str.E:Nexhub1337coreclient_sharedRegistry.h
lea rcx, str.instance___nullptr
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
mov qword [0x18022bc88], rdi
mov qword [0x18022c6f8], rdi
mov rbx, qword [0x1802290f0]
mov rsi, qword [0x1802290f8]
cmp rbx, rsi
je 0x18002284d
nop
mov rax, qword [rdi]
mov qword [rbp - 0x11], r15
lea r9, [rbp - 0x11]
mov r8, rbx
lea rdx, [rbp - 9]
mov rcx, rdi
call qword [rax + 0x58]
mov rdi, rax
mov rcx, qword [rbx + 0x40]
test rcx, rcx
je 0x1800227fa
mov rdx, qword [rcx]
call qword [rdx + reloc.WS2_32.dll_recv]
mov rcx, qword [rdi]
mov qword [rbx + 0x40], rcx
test rcx, rcx
je 0x18002280d
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
mov rcx, qword [rbp - 9]
test rcx, rcx
je 0x180022824
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
test al, al
je 0x180022824
mov qword [rbp - 9], r15
mov rcx, qword [rbp - 0x11]
test rcx, rcx
je 0x18002283b
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
test al, al
je 0x18002283b
mov qword [rbp - 0x11], r15
add rbx, 0x48
cmp rbx, rsi
je 0x18002284d
mov rdi, qword [0x18022c6f8]
jmp 0x1800227d0
mov ecx, 0x1f4
call qword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, 4
mov rax, qword [r14]
mov eax, dword [rcx + rax]
cmp dword [0x18022c8c8], eax
jg 0x1800228db
call fcn.1800ca850
lea r8, [0x18022c8b0]
lea rdx, [0x180030540]
mov rcx, qword [0x18022c8c0]
call fcn.1800ca5b0
mov rcx, qword [0x18022c8c0]
call fcn.1800ca840
mov byte [0x18022c04c], 1
mov byte [reloc.WS2_32.dll_accept], 0
mov rcx, qword [rbp + 0x3f]
xor rcx, rsp
call fcn.1800cbe10
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
lea rcx, [0x18022c8c8]
call fcn.1800cbe98
jmp 0x18002286b
lea rcx, [0x18022c8c8]
call fcn.1800cbf04
cmp dword [0x18022c8c8], 0xffffffff
jne 0x18002286b
xorps xmm0, xmm0
movups xmmword [rbp + 0x1f], xmm0
mov qword [rbp + 0x2f], r15
mov qword [rbp + 0x37], r15
mov r8d, 0x75
lea rdx, str.0G____41_________0___F_GB_A___________1_G4_30____F_G__A___________7_7____________30___A___________7_7____________31__
lea rcx, [rbp + 0x1f]
call fcn.18000d700
mov r10d, r15d
mov r9, r15
cmp qword [rbp + 0x2f], r15
jbe 0x18002296a
nop word [rax + rax]
lea rcx, [rbp + 0x1f]
cmp qword [rbp + 0x37], 0xf
seta r8b
cmova rcx, qword [rbp + 0x1f]
movzx ecx, byte [r9 + rcx]
xor cl, 4
lea rax, [rbp + 0x1f]
test r8b, r8b
cmovne rax, qword [rbp + 0x1f]
mov byte [r9 + rax], cl
inc r10d
lea r9, [r9 + 1]
movsxd rax, r10d
cmp rax, qword [rbp + 0x2f]
jb 0x180022930
movups xmm0, xmmword [rbp + 0x1f]
movups xmmword [rbp - 1], xmm0
movups xmm1, xmmword [rbp + 0x2f]
movups xmmword [rbp + 0xf], xmm1
lea rdi, [rbp - 1]
movq rcx, xmm0
psrldq xmm1, 8
movq rax, xmm1
cmp rax, 0xf
cmova rdi, rcx
movdqa xmm1, xmmword [0x180198b70]
movdqu xmmword [rbp - 0x29], xmm1
movdqa xmm0, xmm1
psrldq xmm0, 1
movd eax, xmm0
movd ecx, xmm1
xor al, cl
mov byte [rbp - 0x28], al
xor byte [rbp - 0x27], cl
xor byte [rbp - 0x26], cl
xor byte [rbp - 0x25], cl
xor byte [rbp - 0x24], cl
xor byte [rbp - 0x23], cl
xor byte [rbp - 0x22], cl
xor byte [rbp - 0x21], cl
xor byte [rbp - 0x20], cl
xor byte [rbp - 0x1f], cl
xor byte [rbp - 0x1e], cl
xor byte [rbp - 0x1d], cl
xor byte [rbp - 0x1c], cl
xor byte [rbp - 0x1b], cl
xor byte [rbp - 0x1a], cl
mov byte [rbp - 0x19], 0
lea rcx, [rbp - 0x28]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rsi, rax
movsxd rcx, dword [rax + 0x3c]
mov ebx, dword [rcx + rax + 0x50]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x1f], xmm0
mov qword [rbp + 0x2f], rax
mov r8, rdi
lea rdx, [rbp + 0x1f]
lea rcx, [0x18022c888]
call fcn.180022560
mov r11, qword [rbp + 0x27]
mov r10, qword [rbp + 0x1f]
sub r11, r10
sar r11, 2
sub rbx, r11
je 0x180022adc
mov edx, r15d
mov r9d, r15d
test r11, r11
je 0x180022a70
nop
mov rax, r15
nop dword [rax]
nop word [rax + rax]
mov r8d, dword [r10 + rax*4]
lea eax, [rdx + r9]
movzx eax, byte [rax + rsi]
cmp eax, r8d
je 0x180022a67
cmp r8d, 0xffffffff
jne 0x180022ac9
inc edx
mov eax, edx
cmp rax, r11
jb 0x180022a50
mov ebx, r9d
add rbx, rsi
test r10, r10
je 0x180022b33
mov rax, qword [rbp + 0x2f]
sub rax, r10
sar rax, 2
lea rdx, [rax*4]
mov rax, r10
cmp rdx, 0x1000
jb 0x180022ab3
add rdx, 0x27
mov r10, qword [r10 - 8]
sub rax, r10
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180022b15
mov rcx, r10
call fcn.1800cbd7c
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x1f], xmm0
mov qword [rbp + 0x2f], r15
jmp 0x180022b33
inc r9d
mov eax, r9d
cmp rax, rbx
jae 0x180022adc
mov edx, r15d
jmp 0x180022a40
test r10, r10
je 0x180022b30
mov rax, qword [rbp + 0x2f]
sub rax, r10
sar rax, 2
lea rdx, [rax*4]
mov rax, r10
cmp rdx, 0x1000
jb 0x180022b1c
add rdx, 0x27
mov r10, qword [r10 - 8]
sub rax, r10
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180022b1c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r10
call fcn.1800cbd7c
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x1f], xmm0
mov qword [rbp + 0x2f], r15
mov rbx, r15
movsxd rax, dword [rbx + 3]
lea rcx, [rbx + 7]
add rcx, rax
mov qword [0x18022c8c0], rcx
mov rdx, qword [rbp + 0x17]
cmp rdx, 0xf
jbe 0x1800228cd
inc rdx
mov rcx, qword [rbp - 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180022b82
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180022b82
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800cbd7c
nop
jmp 0x1800228cd