Function at 0x14003e408
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xd0
mov rax, qword [0x14031f010]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov r14, r8
mov rbx, rdx
mov rdi, rcx
mov qword [rbp - 0x61], rcx
call fcn.140081f80
mov r15, rax
xor r13d, r13d
test rax, rax
jne 0x14003e524
movups xmm0, xmmword [0x14030a980]
movups xmmword [rbp - 0x61], xmm0
movsd xmm1, qword [0x14030a990]
movsd qword [rbp - 0x51], xmm1
movzx eax, word [0x14030a998]
mov word [rbp - 0x49], ax
cmp byte [0x14030a999], r13b
je 0x14003e4b1
mov r8d, r13d
lea r9, [rbp - 0x61]
mov eax, 0x24924925
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x38
mov al, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
inc r9
cmp r8d, 0x1a
jl 0x14003e481
lea rdx, [rbp - 0x61]
lea rcx, [0x140334610]
call fcn.14004c074
mov rcx, rax
call fcn.14004c258
mov byte [rbp - 0x69], r13b
mov qword [rdi], r13
mov qword [rdi + 0x10], r13
mov r14d, reloc.WS2_32.dll_ntohs
mov qword [rdi + 0x18], r14
mov byte [rdi], r13b
lea rax, [rbp - 0x69]
or rsi, 0xffffffffffffffff
inc rsi
cmp byte [rax + rsi], r13b
jne 0x14003e4e9
mov rcx, rdi
cmp rsi, r14
ja 0x14003e513
mov qword [rdi + 0x10], rsi
mov r8, rsi
lea rdx, [rbp - 0x69]
call fcn.14012dc80
mov byte [rdi + rsi], r13b
jmp 0x14003e8d8
lea r9, [rbp - 0x69]
mov rdx, rsi
call fcn.14004cc58
jmp 0x14003e8d8
cmp qword [rbx + 0x18], 0x10
jb 0x14003e52e
mov rbx, qword [rbx]
mov r8, rbx
mov edx, 0x2712
mov rcx, r15
call fcn.1400851d0
movups xmm0, xmmword [0x140309fb8]
movups xmmword [rbp - 0x61], xmm0
movzx eax, word [0x140309fc8]
mov word [rbp - 0x51], ax
mov al, byte [0x140309fca]
mov byte [rbp - 0x4f], al
mov r8d, r13d
lea r9, [rbp - 0x61]
mov eax, 0x24924925
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x38
mov al, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
inc r9
cmp r8d, 0x13
jl 0x14003e564
lea rax, [rbp - 0x61]
or rsi, 0xffffffffffffffff
mov rcx, rsi
inc rcx
cmp byte [rax + rcx], r13b
jne 0x14003e59f
mov rdx, qword [r14 + 0x10]
movabs rbx, 0x7fffffffffffffff
mov rax, rbx
sub rax, rdx
cmp rax, rcx
jb 0x14003e929
cmp qword [r14 + 0x18], 0x10
jb 0x14003e5cf
mov r14, qword [r14]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rcx
lea r9, [rbp - 0x61]
lea rcx, [rbp - 0x41]
call fcn.140050174
lea rdx, [rbp - 0x41]
cmp qword [rbp - 0x29], 0x10
cmovae rdx, qword [rbp - 0x41]
xor ecx, ecx
call fcn.1400832a0
mov r13, rax
mov rdx, qword [rbp - 0x29]
cmp rdx, 0x10
jb 0x14003e63e
inc rdx
mov rcx, qword [rbp - 0x41]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e639
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003e92f
call fcn.14005e360
and qword [rbp - 0x31], 0
mov r14d, reloc.WS2_32.dll_ntohs
mov qword [rbp - 0x29], r14
mov byte [rbp - 0x41], 0
mov r8, r13
mov edx, 0x2727
mov rcx, r15
call fcn.1400851d0
movsd xmm0, qword [str.LINS_R_B]
movsd qword [rbp - 0x61], xmm0
movzx eax, word [0x14030a920]
mov word [rbp - 0x59], ax
cmp byte [0x14030a921], 0
je 0x14003e6b9
xor r8d, r8d
lea r9, [rbp - 0x61]
mov eax, 0x24924925
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x38
mov al, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
inc r9
cmp r8d, 0xa
jl 0x14003e689
lea rax, [rbp - 0x61]
mov rcx, rsi
inc rcx
cmp byte [rax + rcx], 0
jne 0x14003e6c0
mov rdx, qword [0x1403328c0]
sub rbx, rdx
cmp rbx, rcx
jb 0x14003e935
lea rax, [0x1403328b0]
cmp qword [reloc.WS2_32.dll_ntohs], 0x10
cmovae rax, qword [0x1403328b0]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, [rbp - 0x61]
lea rcx, [rbp - 1]
call fcn.140050174
nop
lea r8, [rbp - 1]
cmp qword [rbp + 0x17], 0x10
cmovae r8, qword [rbp - 1]
mov edx, 0x271f
mov rcx, r15
call fcn.1400851d0
xor ebx, ebx
mov qword [rbp - 0x21], rbx
mov qword [rbp - 0x11], rbx
mov qword [rbp - 9], r14
mov byte [rbp - 0x21], bl
lea r8, [0x14003e3e4]
mov edx, 0x4e2b
mov rcx, r15
call fcn.1400851d0
lea r8, [rbp - 0x21]
mov edx, 0x2711
mov rcx, r15
call fcn.1400851d0
mov rcx, r15
call fcn.140082030
mov r10d, eax
test eax, eax
je 0x14003e8f9
movups xmm0, xmmword [str.ZOIPb_38]
movups xmmword [rbp - 0x61], xmm0
movsd xmm1, qword [0x14030af40]
movsd qword [rbp - 0x51], xmm1
mov eax, dword [0x14030af48]
mov dword [rbp - 0x49], eax
mov al, byte [0x14030af4c]
mov byte [rbp - 0x45], al
mov r8d, ebx
lea r9, [rbp - 0x61]
mov eax, 0x24924925
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x38
mov al, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
inc r9
cmp r8d, 0x1d
jl 0x14003e7a5
mov ecx, r10d
call fcn.1400834f0
mov rbx, rax
lea rdx, [rbp - 0x61]
lea rcx, [0x140334610]
call fcn.14004c074
mov rcx, rax
mov rdx, rbx
call fcn.14004c074
mov rcx, rax
call fcn.14004c258
mov rcx, r15
call fcn.140082060
mov rcx, r13
call fcn.140083310
xor ebx, ebx
mov byte [rbp - 0x69], bl
mov qword [rdi], rbx
mov qword [rdi + 0x10], rbx
mov qword [rdi + 0x18], r14
mov byte [rdi], bl
lea rax, [rbp - 0x69]
inc rsi
cmp byte [rax + rsi], bl
jne 0x14003e829
mov rcx, rdi
cmp rsi, r14
ja 0x14003e84e
mov qword [rdi + 0x10], rsi
mov r8, rsi
lea rdx, [rbp - 0x69]
call fcn.14012dc80
mov byte [rdi + rsi], bl
jmp 0x14003e85b
lea r9, [rbp - 0x69]
mov rdx, rsi
call fcn.14004cc58
nop
mov rdx, qword [rbp - 9]
cmp rdx, 0x10
jb 0x14003e896
inc rdx
mov rcx, qword [rbp - 0x21]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e891
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003e91d
call fcn.14005e360
mov byte [rbp - 0x21], bl
mov qword [rbp - 9], r14
mov qword [rbp - 0x11], rbx
mov rdx, qword [rbp + 0x17]
cmp rdx, 0x10
jb 0x14003e8d8
inc rdx
mov rcx, qword [rbp - 1]
cmp rdx, 0x1000
mov rax, rcx
jb 0x14003e8d3
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003e923
call fcn.14005e360
mov rax, rdi
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.14005e190
add rsp, 0xd0
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov rcx, r15
call fcn.140082060
mov rcx, r13
call fcn.140083310
movups xmm0, xmmword [rbp - 0x21]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rbp - 0x11]
movups xmmword [rdi + 0x10], xmm1
jmp 0x14003e896
call fcn.14015e7b0
nop
call fcn.14015e7b0
int3
call fcn.140037be8
int3
call fcn.14015e7b0
int3
call fcn.140037be8
int3