Function at 0x14008b494
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x68
lea rbp, [rsp + 0x60]
movups xmmword [rbp - 0x10], xmm6
mov qword [rbp - 0x18], 0xfffffffffffffffe
mov r12, rcx
movabs rax, 0xae3f559c8c3f57b0
imul rax, qword [0x1402aef40]
movabs rcx, 0x713d4509567d99a2
imul rcx, qword [0x1402aef48]
add rcx, rax
movabs rax, 0x926e3ef33a3637d3
add rax, rcx
cmp rdx, rax
ja 0x14008bb5b
mov rbx, r8
mov rsi, rdx
mov rcx, qword [r12]
mov r14, qword [r12 + 8]
sub r14, rcx
movabs rax, 0x80cd034ee8b69672
imul rax, qword [0x1402aef50]
movabs rdx, 0xb5653e91cd4dab8
imul rdx, qword [0x1402aef58]
add rdx, rax
movabs r8, 0x154191ae9231be46
add r8, rdx
mov rax, r14
cqo
idiv r8
mov r15, rax
mov rax, qword [r12 + 0x10]
sub rax, rcx
movabs rcx, 0x88b1a20715966285
imul rcx, qword [0x1402aef60]
movabs rdx, 0xc15fb273f8e7d10c
imul rdx, qword [0x1402aef68]
add rdx, rcx
movabs rcx, 0x598bea4009362d80
add rcx, rdx
cqo
idiv rcx
mov ecx, dword [0x1402aef70]
shr ecx, 0xd
xor cl, 0xab
mov rdx, rax
shr rdx, cl
mov rcx, qword [0x1402aef78]
mov r8, qword [str.Q_b_]
shrd r8, rcx, 0x1a
movabs rcx, 0xe1eb7f6549b13590
xor rcx, r8
sub rcx, rdx
add rdx, rax
cmp rdx, rsi
cmovbe rdx, rsi
movabs r8, 0x746e4ddea3d376bc
imul r8, qword [0x1402aef88]
movabs r9, 0x12a18ac66fed7474
imul r9, qword [0x1402aef90]
add r9, r8
movabs r8, 0xfa72a388d6a352d3
add r8, r9
cmp rax, rcx
cmovbe r8, rdx
mov rax, qword [0x1402aef98]
mov rcx, qword [0x1402aefa0]
shrd rcx, rax, 0x2a
movabs rax, 0x195cdff62d6b9426
xor rax, rcx
cmp r8, rax
ja 0x14008bb60
movabs rax, 0x152742e0d71a5b2a
imul rax, qword [0x1402aefa8]
movabs rcx, 0x7c6440993a053e2a
imul rcx, qword [0x1402aefb0]
add rcx, rax
movabs rax, 0xec14ce337424f0b4
add rax, rcx
mov rcx, rax
imul rcx, r8
movabs rax, 0xc1d6845ac6e806fe
imul rax, qword [0x1402aefb8]
movabs rdx, 0x15a44f98fe788113
imul rdx, qword [0x1402aefc0]
add rdx, rax
movabs rax, 0x85c468f1156c18f
add rax, rdx
cmp r8, rax
mov qword [rbp - 0x38], r8
jbe 0x14008b6a9
call fcn.1400031b3
jmp 0x14008b6ec
movabs rax, 0xa537d6381b66ef9c
imul rax, qword [0x1402aefc8]
movabs rdx, 0x3505fc42a70aed95
imul rdx, qword [0x1402aefd0]
add rdx, rax
movabs rax, 0xd6073b1082496b87
add rax, rdx
cmp r8, rax
jne 0x14008b6e7
xor r13d, r13d
jmp 0x14008b6ef
call fcn.1400d87f8
mov r13, rax
mov qword [rbp - 0x28], rsi
add r15, rsi
mov rax, qword [0x1402aefd8]
mov rcx, qword [0x1402aefe0]
shrd rcx, rax, 0x2c
movabs rax, 0x4814eb63671a31ef
xor rax, rcx
cmp r15, rax
je 0x14008b797
add r14, r13
mov qword [rbp - 0x30], r14
movabs rsi, 0x365cc0362e037f9b
movabs rdi, 0xb332be4b7cbf3e5d
xor eax, eax
mov r14, r15
mov rcx, rax
mov rax, qword [rbp - 0x30]
mov qword [rbp - 0x20], rcx
add rcx, rax
nop
mov rdx, rbx
call fcn.14008a37e
nop
mov rax, qword [0x1402aefe8]
mov rcx, qword [0x1402aeff0]
shrd rcx, rax, 0x1c
mov rax, qword [0x1402aeff8]
mov rdx, qword [0x1402af000]
shrd rdx, rax, 0x3b
xor rcx, rsi
mov r8, r14
add r8, rcx
xor rdx, rdi
mov rax, qword [rbp - 0x20]
add rax, 0x90
mov r14, r8
cmp r8, rdx
jne 0x14008b73b
mov r14, qword [r12]
mov rdi, qword [r12 + 8]
cmp r14, rdi
je 0x14008b9ef
mov qword [rbp - 0x20], r12
xor r10d, r10d
xorps xmm6, xmm6
movabs r8, 0x4b2bccc5dd435622
movabs r9, 0x1c7395a5e16b2b37
movabs r11, 0xd4ef75097614a22d
movabs rsi, 0x5f4e8652a77939bc
movabs rbx, 0xbd2cb2d5da31ff4d
movabs r15, 0x931cb1232d5e4b61
mov r12d, pe_nt_image_headers64
mov eax, dword [r14 + r12 - 0x78]
mov dword [r13 + r12 - 0x78], eax
mov qword [r13 + r12 - 0x70], r10
movups xmmword [r13 + r12 - 0x60], xmm6
movups xmm0, xmmword [r14 + r12 - 0x70]
movups xmm1, xmmword [r14 + r12 - 0x60]
movups xmmword [r13 + r12 - 0x60], xmm1
movups xmmword [r13 + r12 - 0x70], xmm0
mov rax, qword [0x1402af008]
mov rcx, qword [0x1402af010]
shrd rcx, rax, 0x1c
xor rcx, r8
mov qword [r14 + r12 - 0x60], rcx
mov rax, qword [0x1402af018]
mov rcx, qword [0x1402af020]
shrd rcx, rax, 0xe
xor rcx, r9
mov qword [r14 + r12 - 0x58], rcx
movzx eax, byte [0x1402af028]
movzx ecx, byte [reloc.WS2_32.dll_send]
imul eax, eax, 0x58
add ecx, ecx
lea ecx, [rcx + rcx*8]
neg ecx
add cl, al
add cl, 0xe6
mov byte [r14 + r12 - 0x70], cl
mov qword [r13 + r12 - 0x50], r10
movups xmmword [r13 + r12 - 0x40], xmm6
movups xmm0, xmmword [r14 + r12 - 0x50]
movups xmm1, xmmword [r14 + r12 - 0x40]
movups xmmword [r13 + r12 - 0x40], xmm1
movups xmmword [r13 + r12 - 0x50], xmm0
mov rax, qword [0x1402af030]
mov rcx, qword [0x1402af038]
shrd rcx, rax, 1
xor rcx, r11
mov qword [r14 + r12 - 0x40], rcx
mov rax, qword [0x1402af040]
imul rax, rsi
mov rcx, qword [0x1402af048]
imul rcx, rbx
add rcx, rax
add rcx, r15
mov qword [r14 + r12 - 0x38], rcx
mov al, byte [0x1402af050]
mov cl, byte [0x1402af051]
shr cl, 2
shl al, 6
or al, cl
xor al, 0xf2
mov byte [r14 + r12 - 0x50], al
movups xmm0, xmmword [r14 + r12 - 0x30]
movups xmm1, xmmword [r14 + r12 - 0x20]
movups xmmword [r13 + r12 - 0x20], xmm1
movups xmmword [r13 + r12 - 0x30], xmm0
movzx eax, byte [0x1402af052]
movzx ecx, byte [0x1402af053]
imul eax, eax, 0xffffff95
mov edx, ecx
shl edx, 6
lea ecx, [rdx + rcx*4]
add cl, al
add cl, 0x92
mov byte [r13 + r12 - 0x10], cl
movzx eax, byte [reloc.WS2_32.dll_WSACleanup]
movzx ecx, byte [reloc.WS2_32.dll_getsockopt]
imul eax, eax, 0x26
imul ecx, ecx, 0x73
add cl, al
add cl, 0xa3
cmp byte [r14 + r12 - 0x10], cl
je 0x14008b9b2
mov rcx, qword [r14 + r12]
mov qword [r13 + r12], rcx
mov rax, qword [rcx]
mov rsi, r8
mov r15, r9
mov rbx, rdi
mov rdi, r11
call qword [rax + reloc.WS2_32.dll_htonl]
mov r11, rdi
mov rdi, rbx
movabs rbx, 0xbd2cb2d5da31ff4d
xor r10d, r10d
mov r9, r15
movabs r15, 0x931cb1232d5e4b61
mov r8, rsi
movabs rsi, 0x5f4e8652a77939bc
mov al, byte [0x1402af056]
mov cl, byte [0x1402af057]
shr cl, 4
shl al, 4
or al, cl
xor al, 0xcb
mov byte [r13 + r12 - 0x10], al
lea rax, [r14 + r12]
add rax, 0xffffffffffffff88
mov ecx, dword [rax + 0x88]
mov dword [r13 + r12 + 0x10], ecx
mov rcx, qword [rax + 0x80]
mov qword [r13 + r12 + 8], rcx
mov ecx, 0x90
add r12, rcx
add rax, rcx
cmp rax, rdi
jne 0x14008b7f5
mov r12, qword [rbp - 0x20]
mov rax, qword [r12]
jmp 0x14008b9f2
mov rax, rdi
mov rdi, qword [rbp - 0x28]
test rax, rax
je 0x14008bb1e
mov rsi, qword [r12 + 8]
cmp rax, rsi
je 0x14008ba2b
mov rbx, rax
mov rcx, rbx
call fcn.14007c8c0
mov rax, rbx
add rax, 0x90
mov rbx, rax
cmp rax, rsi
jne 0x14008ba0c
mov rdx, qword [r12]
jmp 0x14008ba2e
mov rdx, rax
mov rax, qword [r12 + 0x10]
sub rax, rdx
movabs rcx, 0xcd992f9816d8a456
imul rcx, qword [0x1402af060]
movabs r8, 0xe1e5ac6cd2af5e1c
imul r8, qword [0x1402af068]
add r8, rcx
movabs rcx, 0x3f0b9d95e948c53
add rcx, r8
cmp rax, rcx
jbe 0x14008bb13
mov rcx, qword [rdx - 8]
mov r8, qword [0x1402af070]
mov r9, qword [0x1402af078]
shrd r9, r8, 0x1a
movabs r8, 0xc1b21e3137fd5031
xor r8, r9
add r8, rdx
sub r8, rcx
movabs rdx, 0x96285c45631f68b6
imul rdx, qword [0x1402af080]
movabs r9, 0x50a365f4d6e06d00
imul r9, qword [0x1402af088]
add r9, rdx
movabs rdx, 0xcf1e2cb6566685b0
add rdx, r9
cmp r8, rdx
jae 0x14008bb65
movabs rdx, 0x6f5f143754b03692
imul rdx, qword [0x1402af090]
movabs r8, 0x6bfb614ccd5e7f44
imul r8, qword [0x1402af098]
add r8, rdx
movabs rdx, 0x2d27a905308ac6b
add rax, rdx
add rax, r8
jmp 0x14008bb16
mov rcx, rdx
mov rdx, rax
call fcn.1400d883c
mov qword [r12], r13
lea rax, [rdi + rdi*8]
shl rax, 4
add rax, r13
mov qword [r12 + 8], rax
mov rax, qword [rbp - 0x38]
lea rax, [rax + rax*8]
shl rax, 4
add rax, r13
mov qword [r12 + 0x10], rax
movups xmm6, xmmword [rbp - 0x10]
add rsp, 0x68
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.14008a254
call fcn.14000327e
call fcn.1401aec6c
int3