Function at 0x14004f630
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
mov rbp, rsp
sub rsp, 0x30
mov rax, qword [0x140cec080]
xor rax, rsp
mov qword [rbp - 8], rax
mov qword [rbp - 0x10], rcx
mov rbx, rcx
cmp edx, 0x46
je 0x14004f8ef
cmp edx, 0x4b
je 0x14004f8ef
cmp edx, 0x37
je 0x14004f89e
cmp edx, 0x3c
je 0x14004f89e
xor ecx, ecx
cmp edx, 0x2c
jne 0x14004f6d2
mov dword [rbp - 0x10], 0x100e68b
mov edx, ecx
nop word [rax + rax]
lea eax, [rdx - 0x2d]
xor byte [rbp + rdx - 0x10], al
inc rdx
cmp rdx, 2
jb 0x14004f690
mov qword [rbx], rcx
lea rax, [rbp - 0x10]
mov qword [rbx + 0x10], rcx
mov r8, 0xffffffffffffffff
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], cl
mov byte [rbp - 0xd], cl
nop
inc r8
cmp byte [rax + r8], cl
jne 0x14004f6c0
lea rdx, [rbp - 0x10]
jmp 0x14004f93d
cmp edx, 0x1a
jne 0x14004f732
mov dword [rbp - 0x10], 0x100e78b
mov rdx, rcx
nop dword [rax]
nop word [rax + rax]
lea eax, [rdx - 0x2d]
xor byte [rbp + rdx - 0x10], al
inc rdx
cmp rdx, 2
jb 0x14004f6f0
mov qword [rbx], rcx
lea rax, [rbp - 0x10]
mov qword [rbx + 0x10], rcx
mov r8, 0xffffffffffffffff
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], cl
mov byte [rbp - 0xd], cl
nop
inc r8
cmp byte [rax + r8], cl
jne 0x14004f720
lea rdx, [rbp - 0x10]
jmp 0x14004f93d
cmp edx, 0x14
jne 0x14004f792
mov dword [rbp - 0x10], 0x100e08b
mov rdx, rcx
nop dword [rax]
nop word [rax + rax]
lea eax, [rdx - 0x2d]
xor byte [rbp + rdx - 0x10], al
inc rdx
cmp rdx, 2
jb 0x14004f750
mov qword [rbx], rcx
lea rax, [rbp - 0x10]
mov qword [rbx + 0x10], rcx
mov r8, 0xffffffffffffffff
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], cl
mov byte [rbp - 0xd], cl
nop
inc r8
cmp byte [rax + r8], cl
jne 0x14004f780
lea rdx, [rbp - 0x10]
jmp 0x14004f93d
cmp edx, 0xd
jne 0x14004f7f2
mov dword [rbp - 0x10], 0x100e28b
mov rdx, rcx
nop dword [rax]
nop word [rax + rax]
lea eax, [rdx - 0x2d]
xor byte [rbp + rdx - 0x10], al
inc rdx
cmp rdx, 2
jb 0x14004f7b0
mov qword [rbx], rcx
lea rax, [rbp - 0x10]
mov qword [rbx + 0x10], rcx
mov r8, 0xffffffffffffffff
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], cl
mov byte [rbp - 0xd], cl
nop
inc r8
cmp byte [rax + r8], cl
jne 0x14004f7e0
lea rdx, [rbp - 0x10]
jmp 0x14004f93d
cmp edx, 0xb
mov rdx, rcx
jne 0x14004f852
mov dword [rbp - 0x10], 0x100ec8b
nop dword [rax]
nop word [rax + rax]
lea eax, [rdx - 0x2d]
xor byte [rbp + rdx - 0x10], al
inc rdx
cmp rdx, 2
jb 0x14004f810
mov qword [rbx], rcx
lea rax, [rbp - 0x10]
mov qword [rbx + 0x10], rcx
mov r8, 0xffffffffffffffff
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], cl
mov byte [rbp - 0xd], cl
nop
inc r8
cmp byte [rax + r8], cl
jne 0x14004f840
lea rdx, [rbp - 0x10]
jmp 0x14004f93d
mov dword [rbp - 0x10], 0x52585a7a
mov word [rbp - 0xc], 0x100
nop
lea eax, [rdx + 0x34]
xor byte [rbp + rdx - 0x10], al
inc rdx
cmp rdx, 4
jb 0x14004f860
mov qword [rbx], rcx
lea rax, [rbp - 0x10]
mov qword [rbx + 0x10], rcx
mov r8, 0xffffffffffffffff
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], cl
mov byte [rbp - 0xb], cl
nop
inc r8
cmp byte [rax + r8], cl
jne 0x14004f890
jmp 0x14004f939
xor ecx, ecx
mov dword [rbp - 0x10], 0x6645454d
mov edx, ecx
mov dword [rbp - 0xc], 0x100504c
lea eax, [rdx + 0x1f]
xor byte [rbp + rdx - 0x10], al
inc rdx
cmp rdx, 6
jb 0x14004f8b0
mov qword [rbx], rcx
lea rax, [rbp - 0x10]
mov qword [rbx + 0x10], rcx
mov r8, 0xffffffffffffffff
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], cl
mov byte [rbp - 9], cl
nop
inc r8
cmp byte [rax + r8], cl
jne 0x14004f8e0
lea rdx, [rbp - 0x10]
jmp 0x14004f93d
xor ecx, ecx
mov dword [rbp - 0x10], 0x5959477d
mov edx, ecx
mov word [rbp - 0xc], 0x100
lea eax, [rdx + 0x34]
xor byte [rbp + rdx - 0x10], al
inc rdx
cmp rdx, 4
jb 0x14004f900
mov qword [rbx], rcx
lea rax, [rbp - 0x10]
mov qword [rbx + 0x10], rcx
mov r8, 0xffffffffffffffff
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], cl
mov byte [rbp - 0xb], cl
nop
inc r8
cmp byte [rax + r8], cl
jne 0x14004f930
lea rdx, [rbp - 0x10]
mov rcx, rbx
call fcn.14002caf0
mov rax, rbx
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.140138a50
mov rbx, qword [rsp + 0x48]
add rsp, 0x30
pop rbp
ret