Function at 0x140105270
Capabilities:
Create thread
Resume thread

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x80
movsxd rbp, edx
mov r14, rcx
xor r15d, r15d
mov rdi, qword [rcx + 8]
lea rbx, [rdi + 0x78]
mov byte [rsp + 0x38], r15b
mov qword [rsp + 0x30], rbx
lea r12d, [r15 + 1]
test rbx, rbx
je 0x1401052c9
mov rax, qword [rbx]
test rax, rax
jne 0x1401052bc
lock cmpxchg qword [rbx], r12
je 0x1401052c4
mov rcx, rbx
call fcn.140107130
mov byte [rsp + 0x38], r12b
cmp byte [rdi + 0x86], 0
je 0x14010532b
mov rax, r12
lock cmpxchg qword [rbx], r15
je 0x1401052e4
mov rcx, rbx
call fcn.1401076f0
mov byte [rsp + 0x38], 0
movabs rax, 0x7fffffffffffffff
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x48], r15d
mov dword [rsp + 0x4c], r12d
lea rdx, [rsp + 0x40]
mov rcx, r14
call fcn.1401059b0
mov rax, qword [rbx]
test rax, rax
jne 0x14010531e
lock cmpxchg qword [rbx], r12
je 0x140105326
mov rcx, rbx
call fcn.140107130
mov byte [rsp + 0x38], 1
cmp byte [rdi + 0x84], 0
jne 0x1401054d8
mov rcx, qword [rdi + 0x50]
mov esi, 0xffffffff
test rcx, rcx
je 0x140105396
mov rdx, qword [rcx + 0x60]
mov qword [rsp + 0x50], rdx
mov rax, qword [rcx + 0x68]
mov qword [rsp + 0x58], rax
mov rax, qword [rcx + 0x70]
mov qword [rsp + 0x60], rax
test rdx, rdx
je 0x140105369
lock inc dword [rdx]
lea rdx, [rsp + 0x50]
lea rcx, [rdi + 0xc0]
call fcn.14003d4d0
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x1401053d4
mov eax, esi
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x1401053d4
mov rcx, qword [rsp + 0x50]
jmp 0x1401053cf
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], r15
lea rdx, [rsp + 0x68]
lea rcx, [rdi + 0xc0]
call fcn.14003d4d0
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x1401053d4
mov eax, esi
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x1401053d4
mov rcx, qword [rsp + 0x68]
call fcn.14021b810
mov word [rdi + 0x84], 1
mov byte [rdi + 0x88], 0
mov dword [rdi + 0x8c], r15d
mov eax, r15d
xchg byte [rdi + 0x87], al
lea rax, [rdi + 0xa0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 4
mov r9, r14
lea r8, [0x140105530]
mov edx, dword [rdi + 0x90]
xor ecx, ecx
call fcn.1402246a0
mov qword [rdi + 0x98], rax
test rax, rax
jne 0x140105445
lea rcx, str.QThread::start:_Failed_to_create_thread
call fcn.14010c830
mov word [rdi + 0x84], 0x100
jmp 0x1401054d8
mov dword [rdi + 0x94], ebp
cmp ebp, 7
ja case.0x140105461.7
lea rdx, [0x140000000]
mov ecx, dword [rdx + rbp*4 + 0x105510]
add rcx, rdx
jmp rcx
mov esi, 0xfffffff1
jmp case.0x140105461.2
mov esi, 0xfffffffe
jmp case.0x140105461.2
mov esi, r15d
jmp case.0x140105461.2
mov esi, r12d
jmp case.0x140105461.2
mov esi, 2
jmp case.0x140105461.2
mov esi, SHCreateThread
jmp case.0x140105461.2
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetThreadPriority]
mov esi, eax
mov edx, esi
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.KERNEL32.dll_SetThreadPriority]
test eax, eax
jne 0x1401054b9
lea rcx, str.QThread::start:_Failed_to_set_thread_priority
call fcn.14010c830
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.KERNEL32.dll_ResumeThread]
cmp eax, 0xffffffff
jne 0x1401054d8
lea rcx, str.QThread::start:_Failed_to_resume_new_thread
call fcn.14010c830
nop
cmp byte [rsp + 0x38], 0
je 0x1401054f1
mov rax, r12
lock cmpxchg qword [rbx], r15
je 0x1401054f1
mov rcx, rbx
call fcn.1401076f0
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret