Function at 0x1400522a0
Capabilities:
Encode data using xor
Terminate process

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xd0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
mov rax, qword [0x140130138]
xor rax, rsp
mov qword [rbp - 9], rax
mov qword [rbp - 0x39], rcx
lea rcx, [0x140149600]
call fcn.140065b80
movups xmm0, xmmword [0x1400c97d0]
movups xmmword [rbp - 0x71], xmm0
movzx eax, word [0x1400c97e0]
mov word [rbp - 0x61], ax
xor ebx, ebx
lea esi, [rbx + 4]
lea r14d, [rbx + 0x1f]
mov r12d, dword [reloc.WS2_32.dll_accept]
cmp byte [0x1400c97e1], bl
je 0x1400524b0
mov r8d, ebx
cmp r12d, 2
jl 0x140052469
movdqa xmm5, xmmword [0x14011ea10]
movdqa xmm4, xmmword [0x1400c9a20]
movd xmm6, esi
movdqa xmm7, xmmword [str.4444]
movd xmm8, r14d
movdqa xmm0, xmmword [0x1400c9a10]
movdqa xmmword [rbp - 0x49], xmm0
lea rcx, [rbp - 0x6d]
mov edx, dword [rbp - 0x49]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14011ea40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14011ea40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x140052362
cmp r8d, 0x12
jge 0x1400524b0
movsxd rax, r8d
lea r9, [rbp - 0x71]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x12
jl 0x140052480
mov qword [rbp - 0x29], rbx
mov qword [rbp - 0x19], rbx
mov edi, reloc.WS2_32.dll_ntohs
mov qword [rbp - 0x11], rdi
lea rax, [rbp - 0x71]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400524d0
lea rdx, [rbp - 0x71]
lea rcx, [rbp - 0x29]
call fcn.140010a10
lea rdx, [rbp - 0x29]
lea rcx, [0x140149600]
call fcn.140068630
cmp byte [0x140149810], 0
jne 0x1400526c6
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x79]
call fcn.140051510
mov rdi, rax
cmp byte [rax + 0xf], 0
je 0x140052695
cmp r12d, 2
jl 0x14005265f
movdqa xmm5, xmmword [0x14011ea10]
movdqa xmm4, xmmword [0x1400c9a20]
movd xmm6, esi
movdqa xmm7, xmmword [str.4444]
movd xmm8, r14d
movdqa xmm0, xmmword [0x1400c9a10]
movdqa xmmword [rbp - 0x49], xmm0
mov rcx, rax
mov edx, dword [rbp - 0x49]
nop dword [rax]
movd xmm2, ebx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14011ea40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [rbx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14011ea40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
pxor xmm2, xmm0
movd dword [rcx + 4], xmm2
add ebx, 8
lea rcx, [rcx + 8]
cmp ebx, 0x10
jl 0x140052560
jmp 0x140052695
mov r8, rdi
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4ec4ec4f
mul ebx
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, bl
sub al, cl
add al, 0x31
xor byte [r8], al
inc ebx
lea r8, [r8 + 1]
cmp ebx, 0x10
jl 0x140052670
lea rcx, [0x140149818]
call fcn.140010620
xor r9d, r9d
mov r8, rdi
mov rdx, rax
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
mov ecx, 0x1194
call qword [sym.imp.KERNEL32.dll_Sleep]
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov qword [rbp - 0x29], rbx
mov qword [rbp - 0x19], rbx
mov qword [rbp - 0x11], rdi
mov byte [rbp - 0x29], 0
movups xmm0, xmmword [0x1400c97f8]
movups xmmword [rbp - 0x71], xmm0
mov eax, dword [0x1400c9808]
mov dword [rbp - 0x61], eax
movzx eax, word [0x1400c980c]
mov word [rbp - 0x5d], ax
movzx eax, byte [0x1400c980e]
mov byte [rbp - 0x5b], al
mov ecx, ebx
cmp r12d, 2
jl 0x140052845
movdqa xmm5, xmmword [0x14011ea10]
movdqa xmm4, xmmword [0x1400c9a20]
movd xmm6, esi
movdqa xmm7, xmmword [str.4444]
movd xmm8, r14d
movdqa xmm0, xmmword [0x1400c9a10]
movdqa xmmword [rbp - 0x49], xmm0
lea rdx, [rbp - 0x6d]
mov r8d, dword [rbp - 0x49]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14011ea40]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
pxor xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14011ea40]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
pxor xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x10
jl 0x140052741
cmp ecx, 0x17
jge 0x14005287c
movsxd rax, ecx
lea r8, [rbp - 0x71]
add r8, rax
nop
mov eax, 0x4ec4ec4f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x34
movzx eax, cl
sub al, dl
add al, 0x31
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x17
jl 0x140052850
lea rdx, [rbp - 0x71]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140010f30
lea rdx, [rbp - 0x29]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call fcn.14004f3a0
mov qword [rbp - 0x71], rbx
mov qword [rbp - 0x61], rbx
mov qword [rbp - 0x59], rbx
lea r15, [rbp - 0x29]
mov r13, qword [rbp - 0x11]
cmp r13, 0x10
setae byte [rbp - 0x79]
mov rsi, qword [rbp - 0x29]
cmovae r15, rsi
mov r14, qword [rbp - 0x19]
cmp r14, 0x10
jae 0x1400528d4
movups xmm0, xmmword [r15]
movups xmmword [rbp - 0x71], xmm0
jmp 0x14005294d
mov rdi, r14
or rdi, 0xf
movabs rax, 0x7fffffffffffffff
cmp rdi, rax
cmova rdi, rax
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x14005292b
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140052bbd
mov rcx, rax
call fcn.1400bbea8
mov rcx, rax
test rax, rax
je 0x140052924
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14005293a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
test rcx, rcx
je 0x140052937
call fcn.1400bbea8
jmp 0x14005293a
mov rax, rbx
mov qword [rbp - 0x71], rax
lea r8, [r14 + 1]
mov rdx, r15
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp - 0x61], r14
mov qword [rbp - 0x59], rdi
lea rdx, [rbp - 0x71]
lea rcx, [0x140149600]
call fcn.140066e90
cmp byte [0x140149810], 0
jne 0x140052b46
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x79]
call fcn.140051550
mov rdi, rax
cmp byte [rax + 0xf], 0
je 0x140052b15
cmp r12d, 2
jl 0x140052adf
movdqa xmm5, xmmword [0x14011ea10]
movdqa xmm4, xmmword [0x1400c9a20]
mov eax, 4
movd xmm6, eax
movdqa xmm7, xmmword [str.4444]
mov eax, Ordinal_33
movd xmm8, eax
movdqa xmm0, xmmword [0x1400c9a10]
movdqa xmmword [rbp - 0x49], xmm0
mov rcx, rdi
mov edx, dword [rbp - 0x49]
nop dword [rax]
nop dword [rax + rax]
movd xmm2, ebx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14011ea40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [rbx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14011ea40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
pxor xmm2, xmm0
movd dword [rcx + 4], xmm2
add ebx, 8
lea rcx, [rcx + 8]
cmp ebx, 0x10
jl 0x1400529e0
jmp 0x140052b15
mov r8, rdi
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4ec4ec4f
mul ebx
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, bl
sub al, cl
add al, 0x31
xor byte [r8], al
inc ebx
lea r8, [r8 + 1]
cmp ebx, 0x10
jl 0x140052af0
lea rcx, [0x140149818]
call fcn.140010620
xor r9d, r9d
mov r8, rdi
mov rdx, rax
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
mov ecx, 0x1194
call qword [sym.imp.KERNEL32.dll_Sleep]
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
nop
cmp byte [rbp - 0x79], 0
je 0x140052b81
lea rdx, [r13 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x140052b78
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140052b78
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rsi
call fcn.1400bbea0
nop
mov rcx, qword [rbp - 9]
xor rcx, rsp
call fcn.1400bbe80
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140001d50
int3