Function at 0x140031590
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
mov rbp, rsp
sub rsp, 0x50
movdqa xmm0, xmmword [0x1401b3730]
mov rdi, rcx
movdqu xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x20], 0x100465b
xor edx, edx
nop dword [rax + rax]
lea eax, [rdx - 0xc]
xor byte [rbp + rdx - 0x30], al
inc rdx
cmp rdx, 0x12
jb 0x1400315c0
mov rsi, 0xffffffffffffffff
mov byte [rbp - 0x1d], 0
mov rax, rsi
lea rcx, [rbp - 0x30]
inc rax
cmp byte [rcx + rax], 0
jne 0x1400315e2
mov rbx, qword [rdi + 0x18]
mov rcx, rdi
mov r8, qword [rdi + 0x10]
cmp rbx, 0x10
jb 0x1400315ff
mov rcx, qword [rdi]
mov qword [rsp + 0x78], r14
cmp r8, rax
jne 0x14003161a
lea rdx, [rbp - 0x30]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140031a8a
movdqa xmm0, xmmword [0x1401b36e0]
xor ecx, ecx
movdqu xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x20], 0x100465b
lea eax, [rcx - 0xc]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0x12
jb 0x140031630
mov r14, qword [rdi + 0x10]
lea rcx, [rbp - 0x30]
mov byte [rbp - 0x1d], 0
mov rax, rsi
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x140031650
mov rcx, rdi
cmp rbx, 0x10
jb 0x140031665
mov rcx, qword [rdi]
cmp r14, rax
jne 0x14003167e
mov r8, r14
lea rdx, [rbp - 0x30]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140031a8a
movdqa xmm0, xmmword [0x1401b3d30]
xor ecx, ecx
movdqu xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x20], 0x35366968
mov dword [rbp - 0x1c], 0x1004a57
nop dword [rax + rax]
lea eax, [rcx - 0xc]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0x16
jb 0x1400316a0
mov byte [rbp - 0x19], 0
lea rcx, [rbp - 0x30]
mov rax, rsi
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1400316c0
mov rcx, rdi
cmp rbx, 0x10
jb 0x1400316d5
mov rcx, qword [rdi]
cmp r14, rax
jne 0x1400316ee
mov r8, r14
lea rdx, [rbp - 0x30]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140031a8a
movdqa xmm0, xmmword [0x1401b3d30]
xor ecx, ecx
movdqu xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x20], 0x34366968
mov dword [rbp - 0x1c], 0x1004a57
nop dword [rax + rax]
lea eax, [rcx - 0xc]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0x16
jb 0x140031710
mov byte [rbp - 0x19], 0
lea rcx, [rbp - 0x30]
mov rax, rsi
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x140031730
mov rcx, rdi
cmp rbx, 0x10
jb 0x140031745
mov rcx, qword [rdi]
cmp r14, rax
jne 0x14003175e
mov r8, r14
lea rdx, [rbp - 0x30]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140031a8a
movdqa xmm0, xmmword [0x1401b3d30]
xor ecx, ecx
movdqu xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x20], 0x33366968
mov dword [rbp - 0x1c], 0x1004a57
nop dword [rax + rax]
lea eax, [rcx - 0xc]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0x16
jb 0x140031780
mov byte [rbp - 0x19], 0
lea rcx, [rbp - 0x30]
mov rax, rsi
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1400317a0
mov rcx, rdi
cmp rbx, 0x10
jb 0x1400317b5
mov rcx, qword [rdi]
cmp r14, rax
jne 0x1400317ce
mov r8, r14
lea rdx, [rbp - 0x30]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140031a8a
movdqa xmm0, xmmword [0x1401b3ef0]
xor ecx, ecx
movdqu xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x20], 0xb1aec7df
mov word [rbp - 0x1c], 0x100
nop word [rax + rax]
lea eax, [rcx - 0x21]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0x14
jb 0x1400317f0
mov byte [rbp - 0x1b], 0
lea rcx, [rbp - 0x30]
mov rax, rsi
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x140031810
mov rcx, rdi
cmp rbx, 0x10
jb 0x140031825
mov rcx, qword [rdi]
cmp r14, rax
jne 0x14003183e
mov r8, r14
lea rdx, [rbp - 0x30]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140031a8a
movdqa xmm0, xmmword [0x1401b3c40]
xor ecx, ecx
movdqu xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x20], 0x3336443d
mov dword [rbp - 0x1c], 0x7c6f6757
mov dword [rbp - 0x18], 0x1004e53
nop dword [rax]
nop word [rax + rax]
lea eax, [rcx - 0xc]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0x1a
jb 0x140031870
mov byte [rbp - 0x15], 0
lea rcx, [rbp - 0x30]
mov rax, rsi
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x140031890
mov rcx, rdi
cmp rbx, 0x10
jb 0x1400318a5
mov rcx, qword [rdi]
cmp r14, rax
jne 0x1400318be
mov r8, r14
lea rdx, [rbp - 0x30]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140031a8a
movdqa xmm0, xmmword [0x1401b3c40]
xor ecx, ecx
movdqu xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x20], 0x36364953
mov dword [rbp - 0x1c], 0x7c6f6757
mov dword [rbp - 0x18], 0x1004e53
nop dword [rax]
nop word [rax + rax]
lea eax, [rcx - 0xc]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0x1a
jb 0x1400318f0
mov byte [rbp - 0x15], 0
lea rcx, [rbp - 0x30]
mov rax, rsi
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x140031910
mov rcx, rdi
cmp rbx, 0x10
jb 0x140031925
mov rcx, qword [rdi]
cmp r14, rax
jne 0x14003193e
mov r8, r14
lea rdx, [rbp - 0x30]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140031a8a
movdqa xmm0, xmmword [0x1401b3c50]
xor ecx, ecx
movdqu xmmword [rbp - 0x30], xmm0
mov word [rbp - 0x20], 0x47
mov byte [rbp - 0x1e], 1
nop word [rax + rax]
lea eax, [rcx - 0xc]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0x11
jb 0x140031960
mov byte [rbp - 0x1e], 0
lea rcx, [rbp - 0x30]
mov rax, rsi
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x140031980
mov rcx, rdi
cmp rbx, 0x10
jb 0x140031995
mov rcx, qword [rdi]
cmp r14, rax
jne 0x1400319ae
mov r8, r14
lea rdx, [rbp - 0x30]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140031a8a
movdqa xmm0, xmmword [0x1401b3bf0]
xor ecx, ecx
movdqa xmm1, xmmword [str.arYWzfinhxnNQ]
movdqu xmmword [rbp - 0x30], xmm0
mov byte [rbp - 0x10], 1
movdqu xmmword [rbp - 0x20], xmm1
nop
lea eax, [rcx - 0xc]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0x1f
jb 0x1400319d0
mov byte [rbp - 0x10], 0
lea rcx, [rbp - 0x30]
mov rax, rsi
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1400319f0
mov rcx, rdi
cmp rbx, 0x10
jb 0x140031a05
mov rcx, qword [rdi]
cmp r14, rax
jne 0x140031a1a
mov r8, r14
lea rdx, [rbp - 0x30]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140031a8a
movdqa xmm0, xmmword [0x1401b3ee0]
xor ecx, ecx
movdqu xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x20], 0xb1ae878a
mov word [rbp - 0x1c], 0x100
nop word [rax + rax]
lea eax, [rcx - 0x21]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0x14
jb 0x140031a40
mov byte [rbp - 0x1b], 0
lea rax, [rbp - 0x30]
nop dword [rax + rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x140031a60
mov rcx, rdi
cmp rbx, 0x10
jb 0x140031a75
mov rcx, qword [rdi]
cmp r14, rsi
jne 0x140031ac1
mov r8, r14
lea rdx, [rbp - 0x30]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140031ac1
cmp rbx, 0x10
jb 0x140031abd
mov rcx, qword [rdi]
lea rdx, [rbx + 1]
cmp rdx, 0x1000
jb 0x140031ab8
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140031b1e
mov rcx, r8
call fcn.14012eab4
mov al, 1
jmp 0x140031af6
cmp rbx, 0x10
jb 0x140031af4
mov rcx, qword [rdi]
lea rdx, [rbx + 1]
cmp rdx, 0x1000
jb 0x140031aef
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140031b1e
mov rcx, r8
call fcn.14012eab4
xor al, al
mov r14, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x80]
mov byte [rdi], 0
mov qword [rdi + 0x18], reloc.WS2_32.dll_ntohs
mov qword [rdi + 0x10], 0
add rsp, 0x50
pop rdi
pop rsi
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3