Function at 0x18009d9a0
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
lea rbp, [rsp - 0x120]
sub rsp, 0x220
mov rax, qword [0x1800e8400]
xor rax, rsp
mov qword [rbp + 0x110], rax
mov rbx, rcx
test edx, edx
je 0x18009e098
cmp edx, 1
jne 0x18009e0a2
call qword [sym.imp.KERNEL32.dll_DisableThreadLibraryCalls]
mov ecx, 0x38
call fcn.1800a3df0
mov rdi, rax
mov qword [rsp + 0x30], rax
xorps xmm0, xmm0
xor eax, eax
xorps xmm1, xmm1
movups xmmword [rdi], xmm1
movups xmmword [rdi + 0x10], xmm1
movups xmmword [rdi + 0x20], xmm1
mov qword [rdi + 0x30], rax
mov word [rdi], ax
lea rcx, [rdi + 0x18]
movups xmmword [rcx], xmm0
xor esi, esi
mov qword [rcx + 0x10], rsi
mov qword [rcx + 0x18], rsi
mov r8d, 4
lea rdx, [0x1800d00c8]
call fcn.18001f390
nop
mov qword [rdi + 8], rbx
mov dword [rbp + 8], esi
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x20], xmm0
movups xmmword [rbp + 0x30], xmm0
movups xmmword [rbp + 0x40], xmm0
movups xmmword [rbp + 0x50], xmm0
movups xmmword [rbp + 0x60], xmm0
mov qword [rbp + 0x70], rax
movups xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x20], rsi
mov qword [rbp + 0x28], rsi
mov r8d, 0xa
lea rdx, str.HelloWorld
lea rcx, [rbp + 0x10]
call fcn.18001f390
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x40], rsi
mov qword [rbp + 0x48], rsi
mov r8d, 0xf
lea rdx, str.HelloWorld0000
lea rcx, [rbp + 0x30]
call fcn.18001f390
nop
mov byte [rbp + 0x50], sil
xorps xmm0, xmm0
movups xmmword [rbp + 0x58], xmm0
mov qword [rbp + 0x68], rsi
mov qword [rbp + 0x70], rsi
mov r8d, 7
lea rdx, str.server1
lea rcx, [rbp + 0x58]
call fcn.18001f390
nop
mov qword [rbp + 0x80], rdi
lea rax, [rbp + 3]
mov qword [rbp + 0x88], rax
lea rax, [rbp]
mov qword [rbp + 0x90], rax
lea rax, [rbp + 1]
mov qword [rbp + 0x98], rax
lea rax, [rbp + 2]
mov qword [rbp + 0xa0], rax
lea rax, [rbp + 8]
mov qword [rbp + 0xa8], rax
lea rax, [rbp + 0x10]
mov qword [rbp + 0xb0], rax
lea rax, [rbp + 4]
mov qword [rbp + 0xb8], rax
mov qword [rbp + 0xc0], rbx
mov qword [rbp - 0x48], rsi
mov ecx, 0x50
call fcn.1800a3df0
lea rcx, vtable.std::_Func_impl_no_alloc_class__int___cdecl_DllMain_struct_HINSTANCE______ptr64__unsigned_long_int__void____ptr64_::_5::_lambda_1___void___.0
mov qword [rax], rcx
movups xmm0, xmmword [rbp + 0x80]
movups xmmword [rax + 8], xmm0
movups xmm1, xmmword [rbp + 0x90]
movups xmmword [rax + 0x18], xmm1
movups xmm0, xmmword [rbp + 0xa0]
movups xmmword [rax + 0x28], xmm0
movups xmm1, xmmword [rbp + 0xb0]
movups xmmword [rax + 0x38], xmm1
movsd xmm0, qword [rbp + 0xc0]
movsd qword [rax + 0x48], xmm0
mov qword [rbp - 0x48], rax
lea rdx, [0x1800ea300]
lea rcx, [rbp - 0x80]
call fcn.18009efe0
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x18009dbae
mov rax, qword [rcx]
lea rdx, [rbp - 0x80]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rbp - 0x48], rsi
mov qword [rbp + 0x80], rdi
lea rax, [rbp]
mov qword [rbp + 0x88], rax
lea rax, [rbp + 1]
mov qword [rbp + 0x90], rax
lea rax, [rbp + 2]
mov qword [rbp + 0x98], rax
lea rax, [rbp + 8]
mov qword [rbp + 0xa0], rax
lea rax, [rbp + 0x10]
mov qword [rbp + 0xa8], rax
mov qword [rbp + 0xb0], rbx
mov qword [rbp - 8], rsi
mov ecx, 0x40
call fcn.1800a3df0
lea rcx, vtable.std::_Func_impl_no_alloc_class__int___cdecl_DllMain_struct_HINSTANCE______ptr64__unsigned_long_int__void____ptr64_::_5::_lambda_2___void___.0
mov qword [rax], rcx
movups xmm0, xmmword [rbp + 0x80]
movups xmmword [rax + 8], xmm0
movups xmm1, xmmword [rbp + 0x90]
movups xmmword [rax + 0x18], xmm1
movups xmm0, xmmword [rbp + 0xa0]
movups xmmword [rax + 0x28], xmm0
movsd xmm1, qword [rbp + 0xb0]
movsd qword [rax + 0x38], xmm1
mov qword [rbp - 8], rax
lea rdx, [0x1800ea340]
lea rcx, [rbp - 0x40]
call fcn.18009efe0
mov rcx, qword [rbp - 8]
test rcx, rcx
je 0x18009dc6a
mov rax, qword [rcx]
lea rdx, [rbp - 0x40]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rbp - 8], rsi
lea rax, vtable.std::_Func_impl_no_alloc_class__int___cdecl_DllMain_struct_HINSTANCE______ptr64__unsigned_long_int__void____ptr64_::_5::_lambda_3___void___.0
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x78], rax
lea rdx, [0x1800ea380]
lea rcx, [rsp + 0x40]
call fcn.18009efe0
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x18009dcb1
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], esi
mov r9, rbx
lea r8, [0x18009d950]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
test rax, rax
je 0x18009dee5
movabs rax, 0x3ad95d37a2af76b0
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x80], rax
movabs rax, 0x9d9634cfa177d7d1
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x88], rax
movabs rax, 0x8dc29bacdd7879dc
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x90], rax
movabs rax, 0x367564a8507bc252
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x98], rax
movabs rax, 0xa083df2b079e6c76
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xa0], rax
movabs rax, 0x52056b2bf1835ec2
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xa8], rax
movabs rax, 0x51858be80f200744
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xb0], rax
movabs rcx, 0x618c9b7d423e7e5a
mov qword [rsp + 0x30], rcx
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xb8], rax
movabs rax, 0x5caa2e52c1cc03e3
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xd0], rax
movabs rax, 0xf8e457efd81bbba4
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xd8], rax
movabs rax, 0xe4acf28cb91d0dbd
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xe0], rax
movabs rax, 0x16101ec13c1aab26
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xe8], rax
movabs rax, 0xceeab15e27fa0217
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xf0], rax
movabs rax, 0x206d1f0b85e03ba8
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xf8], rax
movabs rax, 0x51858be821446621
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x100], rax
mov qword [rsp + 0x30], rcx
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x108], rax
movdqa xmm0, xmmword [rbp + 0x80]
xorps xmm0, xmmword [rbp + 0xd0]
movdqa xmmword [rbp + 0x80], xmm0
movdqa xmm1, xmmword [rbp + 0x90]
xorps xmm1, xmmword [rbp + 0xe0]
movdqa xmmword [rbp + 0x90], xmm1
movdqa xmm0, xmmword [rbp + 0xa0]
xorps xmm0, xmmword [rbp + 0xf0]
movdqa xmmword [rbp + 0xa0], xmm0
movdqa xmm1, xmmword [rbp + 0xb0]
xorps xmm1, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0xb0], xmm1
lea rdx, [rbp + 0x80]
jmp 0x18009e075
movabs rax, 0x33de0e36ada562a5
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xd0], rax
movabs rax, 0xd881238ebd69d884
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xd8], rax
movabs rax, 0x8dc093e5cd7463d4
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xe0], rax
movabs rax, 0x63307aaf5d3ace5c
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xe8], rax
movabs rax, 0xee9ed23b4d946b79
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xf0], rax
movabs rax, 0x20437b6ae09253dc
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xf8], rax
movabs rax, 0x5caa2e52c1cc03e3
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x80], rax
movabs rax, 0xf8e457efd81bbba4
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x88], rax
movabs rax, 0xe4acf28cb91d0dbd
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x90], rax
movabs rax, 0x16101ec13c1aab26
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x98], rax
movabs rax, 0xceeab15e27fa0217
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xa0], rax
movabs rax, 0x206d1f0b85e03ba8
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xa8], rax
movdqa xmm0, xmmword [rbp + 0xd0]
xorps xmm0, xmmword [rbp + 0x80]
movdqa xmmword [rbp + 0xd0], xmm0
movdqa xmm1, xmmword [rbp + 0xe0]
xorps xmm1, xmmword [rbp + 0x90]
movdqa xmmword [rbp + 0xe0], xmm1
movdqa xmm0, xmmword [rbp + 0xf0]
xorps xmm0, xmmword [rbp + 0xa0]
movdqa xmmword [rbp + 0xf0], xmm0
lea rdx, [rbp + 0xd0]
call fcn.18009d010
nop
lea rcx, [rbp + 0x58]
call fcn.18001f4d0
lea rcx, [rbp + 0x30]
call fcn.18001f4d0
lea rcx, [rbp + 0x10]
call fcn.18001f4d0
jmp 0x18009e0a2
call fcn.18009a8e0
call fcn.180042e00
mov eax, 1
mov rcx, qword [rbp + 0x110]
xor rcx, rsp
call fcn.1800a3dc0
lea r11, [rsp + 0x220]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret