Function at 0x140006154
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x138]
sub rsp, 0x210
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x1400dc9c0]
xor rax, rsp
mov qword [rbp + 0xf8], rax
xor r15d, r15d
movdqa xmm0, xmmword [0x1400ceb90]
movdqu xmmword [rbp + 0x40], xmm0
movdqa xmm1, xmmword [0x1400ceb80]
movdqu xmmword [rbp + 0x50], xmm1
movdqa xmm0, xmmword [0x1400ceb40]
movdqu xmmword [rbp + 0x60], xmm0
mov word [rbp + 0x70], reloc.WS2_32.dll_socket
mov ecx, r15d
lea edi, [r15 + 1]
mov al, byte [rbp + 0x40]
xor byte [rbp + rcx + 0x41], al
add rcx, rdi
cmp rcx, 0x30
jb 0x1400061c6
mov byte [rbp + 0x71], r15b
lea rax, [rbp + 0x41]
mov qword [rbp - 0x70], rax
lea rcx, [rbp + 0x41]
or rbx, 0xffffffffffffffff
mov rax, rbx
inc rax
cmp byte [rcx + rax], r15b
jne 0x1400061ed
mov qword [rbp - 0x68], rax
movaps xmm0, xmmword [rbp - 0x70]
movdqa xmmword [rbp - 0x70], xmm0
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0xd8]
call fcn.140006d30
nop
lea rcx, [rbp + 0xb8]
call fcn.14000f9ac
nop
call fcn.14000f8d0
mov edx, eax
lea rcx, [rbp + 0x40]
call fcn.140005f68
nop
lea rcx, [rbp + 0x78]
call fcn.14000fb1c
nop
mov cl, 0x1a
mov dword [rbp - 0x70], 0x27773c1a
xor eax, eax
mov byte [rbp - 0x6c], al
mov rax, r15
xor byte [rbp + rax - 0x6f], cl
add rax, rdi
cmp rax, 3
jae 0x14000625f
mov cl, byte [rbp - 0x70]
jmp 0x14000624d
mov byte [rbp - 0x6c], r15b
mov cl, 0x25
mov dword [rbp - 0x20], 0x18560325
xor eax, eax
mov byte [rbp - 0x1c], al
mov rax, r15
xor byte [rbp + rax - 0x1f], cl
add rax, rdi
cmp rax, 3
jae 0x140006286
mov cl, byte [rbp - 0x20]
jmp 0x140006274
mov byte [rbp - 0x1c], r15b
mov cl, 0x7a
mov dword [rsp + 0x40], 0x4712457a
xor eax, eax
mov byte [rsp + 0x44], al
mov rax, r15
xor byte [rsp + rax + 0x41], cl
add rax, rdi
cmp rax, 3
jae 0x1400062b0
mov cl, byte [rsp + 0x40]
jmp 0x14000629d
mov byte [rsp + 0x44], r15b
lea rax, [rsp + 0x41]
mov rcx, rbx
inc rcx
cmp byte [rax + rcx], r15b
jne 0x1400062bd
movabs r12, 0x7fffffffffffffff
mov rax, r12
mov rdx, qword [rbp + 0xc8]
sub rax, rdx
cmp rax, rcx
jb 0x140006cb8
lea rax, [rbp + 0xb8]
mov r13d, reloc.WS2_32.dll_ntohs
cmp qword [rbp + 0xd0], r13
cmova rax, qword [rbp + 0xb8]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x41]
lea rcx, [rbp]
call fcn.140003320
nop
lea rax, [rbp - 0x1f]
mov r8, rbx
inc r8
cmp byte [rax + r8], r15b
jne 0x140006327
lea rdx, [rbp - 0x1f]
lea rcx, [rbp]
call fcn.140002d40
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], r15
mov qword [rbp - 0x38], r15
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x50], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x40], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], r13
mov byte [rax], r15b
lea rdx, [rbp + 0x40]
cmp qword [rbp + 0x58], r13
cmova rdx, qword [rbp + 0x40]
mov r8, qword [rbp + 0x50]
lea rcx, [rbp - 0x50]
call fcn.140002d40
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x80], r15
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x68], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x78], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], r13
mov byte [rax], r15b
lea rax, [rbp - 0x6f]
mov r8, rbx
inc r8
cmp byte [rax + r8], r15b
jne 0x1400063b4
lea rdx, [rbp - 0x6f]
lea rcx, [rsp + 0x68]
call fcn.140002d40
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], r15
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x48], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x58], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], r13
mov byte [rax], r15b
lea rdx, [rbp + 0x78]
cmp qword [rbp + 0x90], r13
cmova rdx, qword [rbp + 0x78]
mov r8, qword [rbp + 0x88]
lea rcx, [rsp + 0x48]
call fcn.140002d40
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x98], xmm0
movups xmm6, xmmword [rax + 0x10]
movups xmmword [rbp + 0xa8], xmm6
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], r13
mov byte [rax], r15b
mov r14d, 0x1000
mov rdx, qword [rsp + 0x60]
cmp rdx, r13
jbe 0x140006478
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, r14
jb 0x140006473
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006cbe
call fcn.14007a194
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], r13
mov byte [rsp + 0x48], r15b
mov rdx, qword [rbp - 0x80]
cmp rdx, r13
jbe 0x1400064be
inc rdx
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, r14
jb 0x1400064b9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006cc4
call fcn.14007a194
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x80], r13
mov byte [rsp + 0x68], r15b
mov rdx, qword [rbp - 0x38]
cmp rdx, r13
jbe 0x140006502
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, r14
jb 0x1400064fd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006cca
call fcn.14007a194
mov qword [rbp - 0x40], r15
mov qword [rbp - 0x38], r13
mov byte [rbp - 0x50], r15b
mov rdx, qword [rbp + 0x18]
cmp rdx, r13
jbe 0x140006544
inc rdx
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, r14
jb 0x14000653f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006cd0
call fcn.14007a194
mov qword [rbp + 0x10], r15
mov qword [rbp + 0x18], r13
mov byte [rbp], r15b
call fcn.140013660
mov rsi, rax
test rax, rax
jne 0x1400065f6
movdqa xmm0, xmmword [0x1400cedf0]
movdqu xmmword [rbp - 0x70], xmm0
mov word [rbp - 0x60], 0x79
mov rcx, r15
mov al, byte [rbp - 0x70]
xor byte [rbp + rcx - 0x6f], al
add rcx, rdi
cmp rcx, 0x10
jb 0x140006577
mov byte [rbp - 0x5f], r15b
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], r15
mov qword [rbp - 8], r15
lea rax, [rbp - 0x6f]
inc rbx
cmp byte [rax + rbx], r15b
jne 0x14000659e
mov r8, rbx
lea rdx, [rbp - 0x6f]
lea rcx, [rbp - 0x20]
call fcn.140003018
mov rdx, qword [rbp - 8]
cmp rdx, r13
jbe 0x140006b2b
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, r14
jb 0x1400065ec
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006d0f
call fcn.14007a194
jmp 0x140006b2b
mov rax, r12
mov rcx, qword [rbp + 0xe8]
sub rax, rcx
movq rdx, xmm6
cmp rax, rdx
jb 0x140006cd6
lea r9, [rbp + 0xd8]
cmp qword [rbp + 0xf0], r13
cmova r9, qword [rbp + 0xd8]
lea rax, [rbp + 0x98]
cmp qword [rbp + 0xb0], r13
cmova rax, qword [rbp + 0x98]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x70]
call fcn.140003320
lea r8, [rbp - 0x70]
cmp qword [rbp - 0x58], r13
cmova r8, qword [rbp - 0x70]
mov edx, 0x2712
mov rcx, rsi
call fcn.140017a60
mov rdx, qword [rbp - 0x58]
cmp rdx, r13
jbe 0x1400066a5
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, r14
jb 0x1400066a0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006cdc
call fcn.14007a194
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x30], r15
mov qword [rbp + 0x38], r13
mov byte [rbp + 0x20], r15b
lea r8, [0x140006130]
mov edx, 0x4e2b
mov rcx, rsi
call fcn.140017a60
lea r8, [rbp + 0x20]
mov edx, 0x2711
mov rcx, rsi
call fcn.140017a60
mov rcx, rsi
call fcn.1400136d0
test eax, eax
je 0x1400067db
mov ecx, eax
call fcn.140014320
xorps xmm0, xmm0
movups xmmword [rbp], xmm0
mov qword [rbp + 0x10], r15
mov qword [rbp + 0x18], r15
inc rbx
cmp byte [rax + rbx], r15b
jne 0x140006703
mov r8, rbx
mov rdx, rax
lea rcx, [rbp]
call fcn.140003018
nop
mov cl, WSAStartup
mov dword [rbp - 0x70], 0x1b133472
mov dword [rbp - 0x6c], 0x4816171e
mov word [rbp - 0x68], 0x52
mov rax, r15
xor byte [rbp + rax - 0x6f], cl
add rax, rdi
cmp rax, 8
jae 0x140006747
mov cl, byte [rbp - 0x70]
jmp 0x140006735
mov byte [rbp - 0x67], r15b
lea r8, [rbp]
lea rdx, [rbp - 0x6f]
lea rcx, [rbp - 0x50]
call fcn.140002db8
nop
mov rdx, qword [rbp + 0x18]
cmp rdx, r13
jbe 0x140006793
inc rdx
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, r14
jb 0x14000678e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006ce2
call fcn.14007a194
lea rcx, [rbp - 0x50]
call fcn.1400086d0
nop
mov rdx, qword [rbp - 0x38]
cmp rdx, r13
jbe 0x140006ad7
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, r14
jb 0x140006ad2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006c9d
jmp 0x140006ad2
mov cl, 0x68
mov dword [rsp + 0x40], 0x4090e68
mov word [rsp + 0x44], 0xd1b
xor eax, eax
mov byte [rsp + 0x46], al
mov rax, r15
xor byte [rsp + rax + 0x41], cl
add rax, rdi
cmp rax, 5
jae 0x140006808
mov cl, byte [rsp + 0x40]
jmp 0x1400067f5
mov byte [rsp + 0x46], r15b
lea rcx, [rsp + 0x41]
mov rax, rbx
inc rax
cmp byte [rcx + rax], r15b
jne 0x140006815
lea rcx, [rbp + 0x20]
mov r14, qword [rbp + 0x38]
cmp r14, r13
seta r13b
mov rsi, qword [rbp + 0x20]
cmp r14, 0xf
cmova rcx, rsi
mov r15, qword [rbp + 0x30]
cmp r15, rax
jne 0x140006862
mov r8, r15
lea rdx, [rsp + 0x41]
call fcn.1400ab2d0
test eax, eax
jne 0x140006862
xor r15d, r15d
mov dil, r15b
lea r13d, [rax + 0xf]
jmp 0x140006adf
mov cl, 0x31
mov dword [rsp + 0x40], 0x44434531
mov word [rsp + 0x44], 0x54
xor r14d, r14d
mov eax, r14d
xor byte [rsp + rax + 0x41], cl
add rax, rdi
cmp rax, 4
jae 0x14000688c
mov cl, byte [rsp + 0x40]
jmp 0x140006879
mov byte [rsp + 0x45], r14b
lea rcx, [rsp + 0x41]
mov rax, rbx
inc rax
cmp byte [rcx + rax], r14b
jne 0x140006899
lea rcx, [rbp + 0x20]
test r13b, r13b
cmovne rcx, rsi
cmp r15, rax
jne 0x1400069da
mov r8, r15
lea rdx, [rsp + 0x41]
call fcn.1400ab2d0
test eax, eax
jne 0x1400069da
movdqa xmm0, xmmword [str.2k_G]
movdqu xmmword [rbp - 0x50], xmm0
movdqa xmm1, xmmword [0x1400ceca0]
movdqu xmmword [rbp - 0x40], xmm1
mov dword [rbp - 0x30], 0x405d5412
mov dword [rbp - 0x2c], 0x5e575a12
mov word [rbp - 0x28], 0x1c42
xor eax, eax
mov byte [rbp - 0x26], al
xor r15d, r15d
mov ecx, r15d
mov al, byte [rbp - 0x50]
xor byte [rbp + rcx - 0x4f], al
add rcx, rdi
cmp rcx, 0x29
jb 0x140006904
mov byte [rbp - 0x26], r15b
xorps xmm0, xmm0
movups xmmword [rbp], xmm0
mov qword [rbp + 0x10], r15
mov qword [rbp + 0x18], r15
lea rax, [rbp - 0x4f]
inc rbx
cmp byte [rax + rbx], r15b
jne 0x14000692b
mov r8, rbx
lea rdx, [rbp - 0x4f]
lea rcx, [rbp]
call fcn.140003018
nop
lea rcx, [rbp]
call fcn.1400086d0
mov rcx, rdi
call fcn.140079f10
mov qword [rbp - 0x70], rax
lea rcx, [rbp - 0x18]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r15d
mov r9, rax
lea r8, [0x1400034f4]
xor edx, edx
xor ecx, ecx
call fcn.140080f88
mov qword [rbp - 0x20], rax
test rax, rax
je 0x140006cee
cmp dword [rbp - 0x18], r15d
jne 0x140006ce8
mov rdx, qword [rbp + 0x18]
mov r13d, reloc.WS2_32.dll_ntohs
cmp rdx, r13
jbe 0x140006ad7
inc rdx
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006ad2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006ca3
jmp 0x140006ad2
mov cl, 0x6a
mov dword [rsp + 0x40], 0x50122f6a
mov word [rsp + 0x44], 0x4a
mov rax, r14
xor byte [rsp + rax + 0x41], cl
add rax, rdi
cmp rax, 4
jae 0x140006a01
mov cl, byte [rsp + 0x40]
jmp 0x1400069ee
mov byte [rsp + 0x45], r14b
lea rax, [rsp + 0x41]
inc rbx
cmp byte [rax + rbx], r14b
jne 0x140006a0b
sub r12, r15
cmp r12, rbx
jb 0x140006cfd
lea rax, [rbp + 0x20]
test r13b, r13b
cmovne rax, rsi
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x41]
lea rcx, [rbp]
call fcn.140003320
nop
lea rcx, [rbp]
call fcn.1400086d0
mov rcx, rdi
call fcn.140079f10
mov qword [rbp - 0x70], rax
lea rcx, [rbp - 0x18]
mov qword [rsp + 0x28], rcx
xor r15d, r15d
mov dword [rsp + 0x20], r15d
mov r9, rax
lea r8, [0x1400034f4]
xor edx, edx
xor ecx, ecx
call fcn.140080f88
mov qword [rbp - 0x20], rax
test rax, rax
je 0x140006ca9
cmp dword [rbp - 0x18], r15d
jne 0x140006d03
mov rdx, qword [rbp + 0x18]
lea r13d, [r15 + 0xf]
cmp rdx, r13
jbe 0x140006ad7
inc rdx
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006ad2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006d09
call fcn.14007a194
mov r14, qword [rbp + 0x38]
mov rsi, qword [rbp + 0x20]
cmp r14, r13
jbe 0x140006b19
lea rdx, [r14 + 1]
mov rax, rsi
mov r14d, 0x1000
cmp rdx, r14
jb 0x140006b0f
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006d0f
mov rcx, rsi
call fcn.14007a194
jmp 0x140006b1f
mov r14d, 0x1000
mov qword [rbp + 0x30], r15
mov qword [rbp + 0x38], r13
mov byte [rbp + 0x20], r15b
mov rdx, qword [rbp + 0xb0]
cmp rdx, r13
jbe 0x140006b68
inc rdx
mov rcx, qword [rbp + 0x98]
mov rax, rcx
cmp rdx, r14
jb 0x140006b62
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006d15
call fcn.14007a194
nop
mov rdx, qword [rbp + 0x90]
cmp rdx, r13
jbe 0x140006ba1
inc rdx
mov rcx, qword [rbp + 0x78]
mov rax, rcx
cmp rdx, r14
jb 0x140006b9c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006d1b
call fcn.14007a194
mov qword [rbp + 0x88], r15
mov qword [rbp + 0x90], r13
mov byte [rbp + 0x78], r15b
mov rdx, qword [rbp + 0x58]
cmp rdx, r13
jbe 0x140006bea
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, r14
jb 0x140006be4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006d21
call fcn.14007a194
nop
mov rdx, qword [rbp + 0xd0]
cmp rdx, r13
jbe 0x140006c27
inc rdx
mov rcx, qword [rbp + 0xb8]
mov rax, rcx
cmp rdx, r14
jb 0x140006c21
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006d27
call fcn.14007a194
nop
mov rdx, qword [rbp + 0xf0]
cmp rdx, r13
jbe 0x140006c5f
inc rdx
mov rcx, qword [rbp + 0xd8]
mov rax, rcx
cmp rdx, r14
jb 0x140006c5a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006c97
call fcn.14007a194
mov al, dil
mov rcx, qword [rbp + 0xf8]
xor rcx, rsp
call fcn.140079ef0
lea r11, [rsp + 0x210]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.1400814a8
nop
call fcn.1400814a8
nop
call fcn.1400814a8
nop
mov dword [rbp - 0x18], r15d
mov ecx, 6
call fcn.140076e80
nop
call fcn.140001ac8
nop
call fcn.1400814a8
nop
call fcn.1400814a8
nop
call fcn.1400814a8
nop
call fcn.1400814a8
int3
call fcn.140001ac8
int3
call fcn.1400814a8
nop
call fcn.1400814a8
nop
call fcn.140081070
nop
mov dword [rbp - 0x18], r15d
mov ecx, 6
call fcn.140076e80
nop
call fcn.140001ac8
nop
call fcn.140081070
nop
call fcn.1400814a8
nop
call fcn.1400814a8
nop
call fcn.1400814a8
nop
call fcn.1400814a8
nop
call fcn.1400814a8
nop
call fcn.1400814a8
int3