Function at 0x140012f70
Capabilities:
Create thread

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
sub rsp, 0xa0
mov qword [rsp + 0x40], 0xfffffffffffffffe
mov qword [rsp + 0xe8], rbx
mov rax, qword [0x14025a030]
xor rax, rsp
mov qword [rsp + 0x90], rax
mov r13, r8
mov r12, rdx
mov rbp, rcx
mov dword [rsp + 0x30], 0
mov ecx, 0x1e8
call sub.MSVCR90.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__
mov qword [rsp + 0x38], rax
test rax, rax
je 0x140012fd4
mov rcx, rax
call fcn.140010f90
mov rdi, rax
jmp 0x140012fd6
xor edi, edi
mov qword [rsp + 0x38], rdi
test rdi, rdi
jne 0x140012fe8
lea eax, [rdi + 8]
jmp 0x140013161
mov r8, r12
lea rdx, [rsp + 0x50]
mov rcx, rbp
call fcn.140012db0
nop
test rbp, rbp
je 0x140013004
lea rbx, [rbp + 8]
jmp 0x140013006
xor ebx, ebx
lea rsi, [rsp + 0x58]
cmp qword [rsp + 0x70], 8
cmovae rsi, qword [rsp + 0x58]
mov ecx, 0x90
call sub.MSVCR90.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__
mov qword [rsp + 0x48], rax
test rax, rax
je 0x14001303e
mov r8, rbx
mov rdx, rsi
mov rcx, rax
call fcn.14001a640
mov rsi, rax
jmp 0x140013040
xor esi, esi
test rsi, rsi
jne 0x140013069
lea rcx, [rsp + 0x50]
call qword [sym.imp.MSVCP90.dll_public:_void___cdecl_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void____ptr64]
nop
mov rcx, rdi
call fcn.140011200
mov rcx, rdi
call sub.MSVCR90.dll_void___cdecl_operator_delete_void____ptr64_
lea eax, [rsi + 8]
jmp 0x140013161
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 1]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov rbx, rax
test rax, rax
jne 0x1400130bd
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov r8, qword [rsi]
mov edx, 1
mov rcx, rsi
call qword [r8]
nop
lea rcx, [rsp + 0x50]
call qword [sym.imp.MSVCP90.dll_public:_void___cdecl_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void____ptr64]
nop
mov rcx, rdi
call fcn.140011200
mov rcx, rdi
call sub.MSVCR90.dll_void___cdecl_operator_delete_void____ptr64_
mov eax, ebx
jmp 0x140013161
lea rax, [rsp + 0x30]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 4
mov r9, rbp
lea r8, [0x140012220]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
nop
test rax, rax
jne 0x140013130
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
cmp rbx, 0xffffffffffffffff
je 0x140013101
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov r8, qword [rsi]
mov edx, 1
mov rcx, rsi
call qword [r8]
nop
lea rcx, [rsp + 0x50]
call qword [sym.imp.MSVCP90.dll_public:_void___cdecl_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void____ptr64]
nop
mov rcx, rdi
call fcn.140011200
mov rcx, rdi
call sub.MSVCR90.dll_void___cdecl_operator_delete_void____ptr64_
mov eax, ebp
jmp 0x140013161
mov qword [rdi], rax
mov eax, dword [rsp + 0x30]
mov dword [rdi + 8], eax
mov qword [rdi + 0x10], rbx
mov qword [rdi + 0x20], rsi
mov qword [rdi + 0x28], r12
mov qword [rsp + 0x38], 0
mov qword [r13], rdi
lea rcx, [rsp + 0x50]
call qword [sym.imp.MSVCP90.dll_public:_void___cdecl_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void____ptr64]
nop
xor eax, eax
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.140155650
mov rbx, qword [rsp + 0xe8]
add rsp, 0xa0
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret