Function at 0x1400c3e40
Capabilities:
Encode data using xor

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 - 0x218]
sub rsp, 0x2f0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
mov rax, qword [0x1403a1b88]
xor rax, rsp
mov qword [rbp + 0x1c8], rax
mov r13, rcx
xor r12d, r12d
lea rcx, [rbp - 0x48]
call fcn.1400d65f0
nop
mov rdx, rax
lea rcx, [rbp + 0x168]
call fcn.1400dbbc0
nop
mov rdx, qword [rbp - 0x30]
cmp rdx, 0x10
jb 0x1400c3eda
inc rdx
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c3ed5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a1b
call fcn.140279bcc
movdqa xmm0, xmmword [0x1402d3d30]
movdqu xmmword [rbp - 0x38], xmm0
mov byte [rbp - 0x48], 0
lea rcx, [rbp + 0x1a8]
call fcn.1400d3de0
nop
mov dword [rsp + 0x58], 0xa6a0a4ea
mov dword [rsp + 0x5c], 0xa5bb8ea4
mov word [rsp + 0x60], 0xe9
mov byte [rsp + 0x62], 1
mov rcx, r12
nop word [rax + rax]
lea eax, [rcx - 0x34]
xor byte [rsp + rcx + 0x58], al
inc rcx
cmp rcx, 9
jb 0x1400c3f20
mov byte [rsp + 0x62], 0
lea rdx, [r13 + 0x20]
lea rcx, [rbp - 0x28]
call fcn.1400cf800
mov r14, rax
mov dword [rsp + 0x48], 0xa1b9a2ea
mov dword [rsp + 0x4c], 0xb7bba3b5
mov word [rsp + 0x50], 0xe9
mov byte [rsp + 0x52], 1
mov rcx, r12
nop dword [rax]
nop dword [rax + rax]
lea eax, [rcx - 0x34]
xor byte [rsp + rcx + 0x48], al
inc rcx
cmp rcx, 9
jb 0x1400c3f70
mov byte [rsp + 0x52], 0
mov rdx, r13
lea rcx, [rbp + 0xf8]
call fcn.1400cf800
mov rsi, rax
mov dword [rsp + 0x38], 0xa2afa3ea
mov dword [rsp + 0x3c], 0x100ecb5
mov rcx, r12
nop word [rax + rax]
lea eax, [rcx - 0x34]
xor byte [rsp + rcx + 0x38], al
inc rcx
cmp rcx, 6
jb 0x1400c3fb0
mov byte [rsp + 0x3f], 0
lea rdx, [r13 + 0x150]
lea rcx, [rbp + 0x58]
call fcn.1400cf800
mov rdi, rax
mov dword [rsp + 0x68], 0xbcabbeea
mov dword [rsp + 0x6c], 0xbdbdb8a3
mov dword [rsp + 0x70], 0xebb1bd
mov byte [rsp + 0x74], 1
mov rcx, r12
nop dword [rax + rax]
lea eax, [rcx - 0x34]
xor byte [rsp + rcx + 0x68], al
inc rcx
cmp rcx, 0xb
jb 0x1400c4000
mov byte [rsp + 0x74], 0
xorps xmm0, xmm0
movups xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x58], 3
mov qword [rbp - 0x50], reloc.WS2_32.dll_ntohs
mov eax, dword [0x1402c8f88]
mov word [rbp - 0x68], ax
movzx eax, byte [0x1402c8f8a]
mov byte [rbp - 0x66], al
mov byte [rbp - 0x65], 0
lea rdx, [rbp - 0x68]
lea rcx, [rbp + 0x38]
call fcn.1400cf800
mov r10, rax
mov dword [rsp + 0x40], 0xaabeb4b8
mov word [rsp + 0x44], 0xed
mov byte [rsp + 0x46], 1
mov rcx, r12
nop dword [rax + rax]
lea eax, [rcx - 0x34]
xor byte [rsp + rcx + 0x40], al
inc rcx
cmp rcx, 5
jb 0x1400c4070
mov byte [rsp + 0x46], 0
lea rax, [rsp + 0x40]
mov rbx, 0xffffffffffffffff
mov r9, rbx
inc r9
cmp byte [rax + r9], 0
jne 0x1400c4094
lea r8, [rsp + 0x40]
xor edx, edx
mov rcx, r10
call fcn.1400d64e0
xorps xmm0, xmm0
movups xmmword [rbp + 0x18], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x28], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x18], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x28], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
lea rax, [rsp + 0x68]
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x1400c40e2
lea rdx, [rsp + 0x68]
lea rcx, [rbp + 0x18]
call fcn.1400c3cc0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xd8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xe8], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov r9, rdi
lea r8, [rbp + 0xd8]
movzx edx, byte [rsp + 0x30]
lea rcx, [rbp - 0x48]
call fcn.1400b6140
nop
lea rax, [rsp + 0x38]
mov r8, rbx
nop
inc r8
cmp byte [rax + r8], 0
jne 0x1400c4140
lea rdx, [rsp + 0x38]
lea rcx, [rbp - 0x48]
call fcn.1400c3cc0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xb8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xc8], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov r9, rsi
lea r8, [rbp + 0xb8]
movzx edx, byte [rsp + 0x30]
lea rcx, [rbp + 0x98]
call fcn.1400b6140
nop
lea rax, [rsp + 0x48]
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x1400c41a0
lea rdx, [rsp + 0x48]
lea rcx, [rbp + 0x98]
call fcn.1400c3cc0
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x78], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x78], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov r9, r14
lea r8, [rsp + 0x78]
movzx edx, byte [rsp + 0x30]
lea rcx, [rbp + 0x78]
call fcn.1400b6140
nop
lea rax, [rsp + 0x58]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1400c41f6
mov r8, rbx
lea rdx, [rsp + 0x58]
lea rcx, [rbp + 0x78]
call fcn.1400c3cc0
xorps xmm0, xmm0
movups xmmword [rbp - 8], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 8], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp - 8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 8], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
lea rdx, [rbp + 0x168]
cmp qword [rbp + 0x180], 0x10
cmovae rdx, qword [rbp + 0x168]
mov r8, qword [rbp + 0x178]
lea rcx, [rbp - 8]
call fcn.1400c3cc0
movups xmm7, xmmword [rax]
movups xmmword [rbp + 0x188], xmm7
movups xmm6, xmmword [rax + 0x10]
movups xmmword [rbp + 0x198], xmm6
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov rdx, qword [rbp + 0x10]
cmp rdx, 0x10
jb 0x1400c42c3
inc rdx
mov rcx, qword [rbp - 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c42be
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a21
call fcn.140279bcc
movdqa xmm0, xmmword [0x1402d3d30]
movdqu xmmword [rbp + 8], xmm0
mov byte [rbp - 8], 0
mov rdx, qword [rbp + 0x90]
cmp rdx, 0x10
jb 0x1400c4312
inc rdx
mov rcx, qword [rbp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c430d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a27
call fcn.140279bcc
movdqa xmm0, xmmword [0x1402d3d30]
movdqu xmmword [rbp + 0x88], xmm0
mov byte [rbp + 0x78], 0
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x1400c4363
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c435d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a2d
call fcn.140279bcc
nop
mov rdx, qword [rbp + 0xb0]
cmp rdx, 0x10
jb 0x1400c43a4
inc rdx
mov rcx, qword [rbp + 0x98]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c439f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a33
call fcn.140279bcc
movdqa xmm0, xmmword [0x1402d3d30]
movdqu xmmword [rbp + 0xa8], xmm0
mov byte [rbp + 0x98], 0
mov rdx, qword [rbp + 0xd0]
cmp rdx, 0x10
jb 0x1400c43fd
inc rdx
mov rcx, qword [rbp + 0xb8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c43f7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a39
call fcn.140279bcc
nop
mov rdx, qword [rbp - 0x30]
cmp rdx, 0x10
jb 0x1400c4438
inc rdx
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c4433
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a3f
call fcn.140279bcc
movdqa xmm0, xmmword [0x1402d3d30]
movdqu xmmword [rbp - 0x38], xmm0
mov byte [rbp - 0x48], 0
mov rdx, qword [rbp + 0xf0]
cmp rdx, 0x10
jb 0x1400c448b
inc rdx
mov rcx, qword [rbp + 0xd8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c4485
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a45
call fcn.140279bcc
nop
mov rdx, qword [rbp + 0x30]
cmp rdx, 0x10
jb 0x1400c44c6
inc rdx
mov rcx, qword [rbp + 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c44c1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a4b
call fcn.140279bcc
movdqa xmm0, xmmword [0x1402d3d30]
movdqu xmmword [rbp + 0x28], xmm0
mov byte [rbp + 0x18], 0
mov rdx, qword [rbp + 0x50]
cmp rdx, 0x10
jb 0x1400c4512
inc rdx
mov rcx, qword [rbp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c450d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a51
call fcn.140279bcc
movdqa xmm0, xmmword [0x1402d3d30]
movdqu xmmword [rbp + 0x48], xmm0
mov byte [rbp + 0x38], 0
mov rdx, qword [rbp - 0x50]
cmp rdx, 0x10
jb 0x1400c455e
inc rdx
mov rcx, qword [rbp - 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c4559
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a57
call fcn.140279bcc
mov qword [rbp - 0x58], r12
mov qword [rbp - 0x50], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x68], 0
mov rdx, qword [rbp + 0x70]
cmp rdx, 0x10
jb 0x1400c45a9
inc rdx
mov rcx, qword [rbp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c45a4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a5d
call fcn.140279bcc
movdqa xmm0, xmmword [0x1402d3d30]
movdqu xmmword [rbp + 0x68], xmm0
mov byte [rbp + 0x58], 0
mov rdx, qword [rbp + 0x110]
cmp rdx, 0x10
jb 0x1400c45fb
inc rdx
mov rcx, qword [rbp + 0xf8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c45f6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a63
call fcn.140279bcc
movdqa xmm0, xmmword [0x1402d3d30]
movdqu xmmword [rbp + 0x108], xmm0
mov byte [rbp + 0xf8], 0
mov rdx, qword [rbp - 0x10]
cmp rdx, 0x10
jb 0x1400c464d
inc rdx
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c4648
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a69
call fcn.140279bcc
movdqa xmm0, xmmword [0x1402d3d30]
movdqu xmmword [rbp - 0x18], xmm0
mov byte [rbp - 0x28], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], r12
mov qword [rbp - 0x70], r12
lea r14, [rbp + 0x188]
movq rsi, xmm7
movdqa xmm0, xmm6
psrldq xmm0, 8
movq r15, xmm0
cmp r15, 0x10
cmovae r14, rsi
movabs rbx, 0x7fffffffffffffff
movq rdi, xmm6
cmp rdi, rbx
ja 0x1400c4a6f
mov qword [rbp - 0x70], reloc.WS2_32.dll_ntohs
cmp rdi, 0x10
jae 0x1400c46c5
mov qword [rbp - 0x78], rdi
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0x78], xmm0
jmp 0x1400c470a
mov rax, rdi
or rax, 0xf
cmp rax, rbx
ja 0x1400c46e0
mov rbx, rax
mov ecx, reloc.WLDAP32.dll_Ordinal_22
cmp rax, rcx
cmovb rbx, rcx
lea rdx, [rbx + 1]
lea rcx, [rsp + 0x78]
call fcn.1400c3b00
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x78], rdi
mov qword [rbp - 0x70], rbx
lea r8, [rdi + 1]
mov rdx, r14
mov rcx, rax
call fcn.14027d780
lea rdx, [rsp + 0x78]
lea rcx, [rbp + 0x138]
call fcn.1400d9630
nop
lea rax, [rbp + 0xf8]
mov qword [rsp + 0x38], rax
lea rdx, [rbp + 0x168]
lea rcx, [rbp + 0xf8]
call fcn.1400b6030
mov rdi, rax
lea rax, [rbp + 0x58]
mov qword [rsp + 0x40], rax
lea rdx, [r13 + 0x170]
lea rcx, [rbp + 0x58]
call fcn.1400b6030
mov rbx, rax
lea rdx, [rbp + 0x138]
lea rcx, [rbp + 0x38]
call fcn.1400b6030
nop
mov r9, rdi
mov r8, rbx
mov rdx, rax
lea rcx, [rbp - 0x28]
call fcn.1400c6710
mov rbx, rax
lea rax, [rbp + 0x138]
cmp rax, rbx
je 0x1400c4808
mov rdx, qword [rbp + 0x150]
cmp rdx, 0x10
jb 0x1400c47cd
inc rdx
mov rcx, qword [rbp + 0x138]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c47c8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a75
call fcn.140279bcc
movdqa xmm0, xmmword [0x1402d3d30]
movdqu xmmword [rbp + 0x148], xmm0
mov byte [rbp + 0x138], 0
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0x138], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0x148], xmm1
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], 0
mov rdx, qword [rbp - 0x10]
cmp rdx, 0x10
jb 0x1400c4843
inc rdx
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c483e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a75
call fcn.140279bcc
mov qword [rbp + 0x130], r12
mov byte [rsp + 0x20], 0
mov r9b, 1
lea r8, [rbp + 0xf8]
lea rdx, [rbp + 0x138]
lea rcx, [rbp + 0x158]
call fcn.1400b2a00
nop
lea rdx, str.success
lea rcx, [rbp + 0x158]
call fcn.1400ae560
mov rcx, rax
call fcn.1400b1740
test al, al
je 0x1400c49f3
movzx edx, byte [rbp + 0x158]
lea rcx, [rbp + 0x160]
call fcn.1400c6f80
nop
mov rdx, qword [rbp + 0x150]
cmp rdx, 0x10
jb 0x1400c48e5
inc rdx
mov rcx, qword [rbp + 0x138]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c48e0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a7b
call fcn.140279bcc
movdqa xmm0, xmmword [0x1402d3d30]
movdqu xmmword [rbp + 0x148], xmm0
mov byte [rbp + 0x138], 0
cmp r15, 0x10
jb 0x1400c4934
lea rdx, [r15 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x1400c492b
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a81
mov rcx, rsi
call fcn.140279bcc
nop
mov rdx, qword [rbp + 0x1c0]
cmp rdx, 0x10
jb 0x1400c4976
inc rdx
mov rcx, qword [rbp + 0x1a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c4970
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a87
call fcn.140279bcc
nop
mov rdx, qword [rbp + 0x180]
cmp rdx, 0x10
jb 0x1400c49b3
inc rdx
mov rcx, qword [rbp + 0x168]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c49ae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c49ed
call fcn.140279bcc
mov rcx, qword [rbp + 0x1c8]
xor rcx, rsp
call fcn.140279b70
lea r11, [rsp + 0x2f0]
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]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14029cb2c
nop
lea rdx, str.message
lea rcx, [rbp + 0x158]
call fcn.1400ae560
lea rdx, [rbp - 0x28]
mov rcx, rax
call fcn.1400ae810
mov rcx, rax
call fcn.1400d0ad0
nop
call fcn.14029cb2c
nop
call fcn.14029cb2c
nop
call fcn.14029cb2c
nop
call fcn.14029cb2c
nop
call fcn.14029cb2c
nop
call fcn.14029cb2c
nop
call fcn.14029cb2c
nop
call fcn.14029cb2c
nop
call fcn.14029cb2c
nop
call fcn.14029cb2c
nop
call fcn.14029cb2c
nop
call fcn.14029cb2c
nop
call fcn.14029cb2c
nop
call fcn.14029cb2c
int3
call fcn.1400c37e0
nop
call fcn.14029cb2c
nop
call fcn.14029cb2c
nop
call fcn.14029cb2c
nop
call fcn.14029cb2c
int3