Function at 0x1000a450
Capabilities:
Create thread

Disassembly:
mov rax, rsp
sub rsp, 0x88
test edx, edx
mov qword [rax + 8], rbx
mov qword [rax - 0x10], r13
mov r13, rcx
movsxd rbx, edx
jle 0x1000a6ed
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov rcx, rbx
mov qword [rax + 0x20], rdi
call sub.MSVCR80.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__
test rax, rax
mov rdi, rax
mov rbp, rax
mov qword [rsp + 0x50], rax
je 0x1000a6d5
mov r8, rbx
xor edx, edx
mov rcx, rax
call sub.MSVCR80.dll_memset
mov r8d, ebx
mov rdx, rbp
mov rcx, r13
call fcn.10004db0
cmp eax, ebx
je 0x1000a4c4
mov rcx, rbp
call sub.MSVCR80.dll_void___cdecl_operator_delete_void____ptr64_
jmp 0x1000a6d5
mov r8d, dword [rdi]
xor eax, eax
mov qword [rsp + 0x80], r12
mov r12d, dword [rdi + 4]
mov qword [rsp + 0x68], r15
lea r15, [rdi + 8]
mov rdi, r15
mov rcx, 0xffffffffffffffff
mov dword [rsp + 0x30], r8d
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx + r15]
mov rcx, 0xffffffffffffffff
mov rdi, rdx
mov qword [rsp + 0x38], rdx
repne scasb al, byte [rdi]
not rcx
add rcx, rdx
cmp r8d, r12d
mov qword [rsp + 0x40], rcx
ja 0x1000a6c0
mov eax, r12d
xor eax, r8d
test eax, 0xffff0000
jne 0x1000a6c0
cmp byte [r15], 0
je 0x1000a6c0
cmp byte [rdx], 0
je 0x1000a6c0
cmp byte [rcx], 0
je 0x1000a6c0
mov ecx, r12d
mov eax, 0x66666667
sub ecx, r8d
add ecx, 1
imul ecx
mov esi, edx
sar esi, 2
mov eax, esi
shr eax, 0x1f
add esi, eax
lea eax, [rsi + rsi*4]
add eax, eax
cmp ecx, eax
je 0x1000a570
add esi, 1
mov ecx, 0x58
mov qword [rsp + 0x70], r14
call sub.MSVCR80.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__
xor edx, edx
lea r8d, [rdx + 0x58]
mov rcx, rax
mov r14, rax
call sub.MSVCR80.dll_memset
mov ecx, 0x218
call sub.MSVCR80.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__
xor edi, edi
mov qword [rax], r13
mov qword [rax + 8], r14
mov dword [r13 + 0x60], 1
mov qword [rsp + 0x48], rax
mov rbx, rdi
mov ecx, 0x310
call sub.MSVCR80.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__
xor edx, edx
mov r8d, 0x310
mov rcx, rax
mov rbp, rax
call sub.MSVCR80.dll_memset
lea rcx, [rbp + 0x10]
mov dword [rsp + 0x28], 0x80
mov qword [rsp + 0x20], rcx
mov r9d, 0xffffffff
mov r8, r15
xor edx, edx
xor ecx, ecx
mov qword [rbp], r13
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov r8, qword [rsp + 0x38]
lea rdx, [rbp + 0x110]
mov dword [rsp + 0x28], 0x80
mov qword [rsp + 0x20], rdx
mov r9d, 0xffffffff
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov r8, qword [rsp + 0x40]
lea rdx, [rbp + 0x210]
mov dword [rsp + 0x28], 0x80
mov qword [rsp + 0x20], rdx
mov r9d, 0xffffffff
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov eax, dword [rsp + 0x30]
mov edx, edi
imul edx, esi
add eax, edx
mov dword [rbp + 8], eax
lea ecx, [rax + rsi - 1]
cmp ecx, r12d
mov dword [rbp + 0xc], ecx
jb 0x1000a670
mov edi, 0x14
mov dword [rbp + 0xc], r12d
mov rbx, rdi
lea rcx, [0x1000a1a0]
mov r8, rbp
xor edx, edx
call qword [sym.imp.MSVCR80.dll__beginthread]
add edi, 1
add rbx, 1
cmp edi, 0xa
mov qword [r14 + rbx*8 - 8], rax
jle 0x1000a5b3
mov r8, qword [rsp + 0x48]
lea rcx, [0x1000a3b0]
xor edx, edx
call qword [sym.imp.MSVCR80.dll__beginthread]
mov rcx, qword [rsp + 0x50]
mov qword [r13 + 0x48], rax
call sub.MSVCR80.dll_void___cdecl_operator_delete_void____ptr64_
mov r14, qword [rsp + 0x70]
jmp 0x1000a6c8
mov rcx, rbp
call sub.MSVCR80.dll_void___cdecl_operator_delete_void____ptr64_
mov r12, qword [rsp + 0x80]
mov r15, qword [rsp + 0x68]
mov rsi, qword [rsp + 0xa0]
mov rbp, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa8]
mov r13, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x90]
add rsp, 0x88
ret