Function at 0x14003f85c
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r13
push r14
push r15
lea rbp, [rsp - 0x10]
sub rsp, 0x110
mov rax, qword [0x140327010]
xor rax, rsp
mov qword [rbp + 8], rax
mov rbx, rdx
mov rsi, rcx
mov qword [rbp - 0x40], rcx
xor r15d, r15d
call fcn.1400831d0
mov r14, rax
test rax, rax
jne 0x14003f8e0
mov dword [rsi], r15d
mov byte [rsp + 0x40], r15b
lea rcx, [rsi + 8]
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov qword [rcx + 0x10], r15
mov qword [rcx + 0x18], r15
lea rax, [rsp + 0x40]
or rdi, 0xffffffffffffffff
inc rdi
cmp byte [rax + rdi], r15b
jne 0x14003f8c5
mov r8, rdi
lea rdx, [rsp + 0x40]
call fcn.14004e360
jmp 0x14003fccd
cmp qword [rbx + 0x18], 0x10
jb 0x14003f8ea
mov rbx, qword [rbx]
mov r8, rbx
mov edx, 0x2712
mov rcx, r14
call fcn.140086420
xorps xmm0, xmm0
movups xmmword [rbp - 0x18], xmm0
mov qword [rbp - 8], r15
mov r13d, reloc.WS2_32.dll_ntohs
mov qword [rbp], r13
mov byte [rbp - 0x18], r15b
lea r8, [0x14003f838]
mov edx, 0x4e2b
mov rcx, r14
call fcn.140086420
lea r8, [rbp - 0x18]
mov edx, 0x2711
mov rcx, r14
call fcn.140086420
movsd xmm0, qword [str._ERJW_VY]
movsd qword [rsp + 0x48], xmm0
movzx eax, word [0x1403134c0]
mov word [rsp + 0x50], ax
mov ebx, 0x24924925
cmp byte [0x1403134c1], r15b
je 0x14003f995
mov r8d, r15d
lea r9, [rsp + 0x48]
mov eax, ebx
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, 0x35
xor byte [r9], al
inc r8d
inc r9
cmp r8d, 0xa
jl 0x14003f968
lea rax, [rsp + 0x48]
or rdi, 0xffffffffffffffff
mov rcx, rdi
inc rcx
cmp byte [rax + rcx], r15b
jne 0x14003f9a1
mov rdx, qword [0x1403788f8]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, rcx
jb 0x14003fd91
lea rax, [0x1403788e8]
cmp qword [reloc.WS2_32.dll_ntohs], 0x10
cmovae rax, qword [0x1403788e8]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x48]
lea rcx, [rbp - 0x80]
call fcn.1400528e8
nop
movsd xmm0, qword [0x140313890]
movsd qword [rsp + 0x48], xmm0
movzx eax, word [0x140313898]
mov word [rsp + 0x50], ax
mov al, byte [0x14031389a]
mov byte [rsp + 0x52], al
mov r8d, r15d
lea r9, [rsp + 0x48]
mov eax, ebx
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, 0x35
xor byte [r9], al
inc r8d
inc r9
cmp r8d, 0xb
jl 0x14003fa28
lea rax, [rsp + 0x48]
mov r8, rdi
inc r8
cmp byte [rax + r8], r15b
jne 0x14003fa5d
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x80]
call fcn.14004917c
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x68], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x58], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x68], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], r13
mov byte [rax], r15b
lea rdx, [0x140378948]
cmp qword [reloc.WS2_32.dll_ntohs], 0x10
cmovae rdx, qword [0x140378948]
mov r8, qword [0x140378958]
lea rcx, [rsp + 0x58]
call fcn.14004917c
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x28], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x38], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x28], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], r13
mov byte [rax], r15b
mov r13d, 0x1000
mov rdx, qword [rsp + 0x70]
cmp rdx, 0x10
jb 0x14003fb31
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, r13
jb 0x14003fb2c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003fd97
call fcn.140060840
movdqa xmm0, xmmword [0x140314410]
movdqu xmmword [rsp + 0x68], xmm0
mov byte [rsp + 0x58], r15b
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x14003fb7b
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, r13
jb 0x14003fb76
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003fd7f
call fcn.140060840
movdqa xmm0, xmmword [0x140314410]
movdqu xmmword [rbp - 0x70], xmm0
mov byte [rbp - 0x80], r15b
lea r8, [rbp - 0x38]
cmp qword [rbp - 0x20], 0x10
cmovae r8, qword [rbp - 0x38]
mov edx, 0x271f
mov rcx, r14
call fcn.140086420
mov rcx, r14
call fcn.140083280
mov r10d, eax
test eax, eax
je 0x14003fcf8
movups xmm0, xmmword [0x140313618]
movups xmmword [rbp - 0x60], xmm0
movsd xmm0, qword [0x140313628]
movsd qword [rbp - 0x50], xmm0
mov ecx, dword [0x140313630]
mov dword [rbp - 0x48], ecx
cmp byte [0x140313633], r15b
je 0x14003fc18
mov r8d, r15d
lea r9, [rbp - 0x60]
mov eax, ebx
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, 0x35
xor byte [r9], al
inc r8d
inc r9
cmp r8d, 0x1c
jl 0x14003fbeb
mov ecx, r10d
call fcn.140084740
mov rbx, rax
lea rdx, [rbp - 0x60]
lea rcx, [0x14037a940]
call fcn.14004d1b4
mov rcx, rax
mov rdx, rbx
call fcn.14004d1b4
mov rcx, rax
call fcn.14004d40c
mov dword [rsi], r15d
mov byte [rsp + 0x40], r15b
lea rcx, [rsi + 8]
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov qword [rcx + 0x10], r15
mov qword [rcx + 0x18], r15
lea rax, [rsp + 0x40]
inc rdi
cmp byte [rax + rdi], r15b
jne 0x14003fc65
mov r8, rdi
lea rdx, [rsp + 0x40]
call fcn.14004e360
jmp 0x14003fd44
call fcn.140060840
movdqa xmm0, xmmword [0x140314410]
mov byte [rbp - 0x38], r15b
movdqu xmmword [rbp - 0x28], xmm0
mov rdx, qword [rbp]
cmp rdx, 0x10
jb 0x14003fccd
inc rdx
mov rcx, qword [rbp - 0x18]
cmp rdx, r13
mov rax, rcx
jb 0x14003fcc8
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003fd8b
call fcn.140060840
mov rax, rsi
mov rcx, qword [rbp + 8]
xor rcx, rsp
call fcn.140060670
lea r11, [rsp + 0x110]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop rdi
pop rbp
ret
mov dword [rbp - 0x40], r15d
lea r8, [rbp - 0x40]
mov edx, 0x200002
mov rcx, r14
call fcn.1400832f0
mov rcx, r14
call fcn.1400832b0
mov eax, dword [rbp - 0x40]
mov dword [rsi], eax
lea rcx, [rsi + 8]
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov qword [rcx + 0x10], r15
mov qword [rcx + 0x18], r15
lea rdx, [rbp - 0x18]
cmp qword [rbp], 0x10
cmovae rdx, qword [rbp - 0x18]
mov r8, qword [rbp - 8]
call fcn.14004e420
nop
mov rdx, qword [rbp - 0x20]
cmp rdx, 0x10
jb 0x14003fc85
inc rdx
mov rcx, qword [rbp - 0x38]
cmp rdx, r13
mov rax, rcx
jb 0x14003fc80
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003fd85
jmp 0x14003fc80
call fcn.1401657c0
nop
call fcn.1401657c0
nop
call fcn.1401657c0
nop
call fcn.1400382c0
nop
call fcn.1401657c0
int3