Function at 0x140092b31
Capabilities:
Create thread

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xe8
movdqa xmmword [rsp + 0xd0], xmm8
movdqa xmmword [rsp + 0xc0], xmm7
movdqa xmmword [rsp + 0xb0], xmm6
mov r14, r8
mov rbx, rdx
mov rdi, rcx
lea rsi, [rcx + 0x40]
mov rcx, rsi
call fcn.14008ea32
cmp byte [rdi + 0xc4], 0
je 0x140092b9a
mov rcx, rbx
call fcn.14008f37c
xor ebx, ebx
mov rcx, rsi
call fcn.14008ea67
mov eax, 1
jmp 0x140093047
mov rcx, qword [rdi + 0x50]
mov rax, qword [rdi + 0x60]
cmp rax, rcx
jne 0x140092bb8
lea rcx, [rdi + 0x48]
call fcn.1400924bc
mov rcx, qword [rdi + 0x50]
mov rax, qword [rdi + 0x60]
mov rdx, qword [rdi + 0x58]
add rdx, rax
xor r8d, r8d
cmp rdx, rcx
cmovae r8, rcx
sub rdx, r8
mov rcx, qword [rdi + 0x48]
shl rdx, 4
mov qword [rcx + rdx], rbx
mov byte [rcx + rdx + 8], 1
inc rax
mov qword [rdi + 0x60], rax
lock inc qword [rdi + 0x108]
mov rax, qword [rdi + 0x100]
test rax, rax
je 0x140092c1a
lock dec qword [rdi + 0x100]
inc dword [rdi + 0xc0]
add rdi, 0xc8
mov rcx, rdi
call fcn.14008f38f
jmp 0x14009303d
mov rax, qword [rdi + 0xf8]
cmp rax, qword [rdi + 0xf0]
je 0x14009303d
mov r13, qword [rdi + 0x98]
test r13, r13
je 0x140093187
lock inc qword [r13]
jle 0x140093187
mov rbx, qword [rdi + 0xb8]
mov rax, qword [rdi + 0x30]
mov r8, qword [rdi + 0x38]
mov rcx, qword [r8 + 0x10]
dec rcx
and rcx, 0xfffffffffffffff0
lea rdx, [rcx + rax]
add rdx, 0x10
lea rcx, [rsp + 0x60]
call qword [r8 + 0x28]
mov rbp, qword [rdi + 0x10]
test rbp, rbp
je 0x140092c88
mov rax, qword [rdi + 0x18]
mov qword [rsp + 0x38], rax
jmp 0x140092c88
mov r15, qword [rsp + 0x60]
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x40], rax
mov r12, qword [rsp + 0x70]
mov rcx, qword [r14]
mov rdx, qword [r14 + 8]
call fcn.14008f7a3
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x50], rdx
test rbp, rbp
jne 0x140092d5e
mov rax, qword [0x1400fd1f0]
test rax, rax
je 0x140092cd4
dec rax
mov qword [rsp + 0x38], rax
jmp 0x140092d5e
lea rdx, str.RUST_MIN_STACKfatal_runtime_error:_assertion_failed:_thread_info.stack_guard.get__.is_none____thread_info.thread.get__.is_none___n
lea r14, [rsp + 0x60]
mov r8d, 0xe
mov rcx, r14
call fcn.14008a48b
cmp byte [r14 + 0x18], 3
jne 0x140092d40
mov r14, qword [rsp + 0x60]
test r14, r14
je 0x140092d4a
lea rbp, [rsp + 0x60]
mov rax, qword [rbp + 8]
mov qword [rsp + 0x38], rax
mov r8, qword [rbp + 0x10]
mov rcx, rbp
mov rdx, r14
call fcn.140017562
mov al, byte [rbp]
mov byte [rsp + 0x48], al
mov rbp, qword [rbp + 8]
mov rcx, r14
mov rdx, qword [rsp + 0x38]
call fcn.14000cbda
mov rax, rbp
cmp byte [rsp + 0x48], 0
jne 0x140092d4a
jmp 0x140092d4f
lea rcx, [rsp + 0x60]
call fcn.140011f49
mov eax, 0x200000
mov qword [rsp + 0x38], rax
inc rax
mov qword [0x1400fd1f0], rax
test r15, r15
je 0x140092d98
xor ecx, ecx
mov rdx, r15
mov r8, r12
call fcn.1400892dd
test rax, rax
jne 0x140093187
lea rcx, [rsp + 0x60]
mov qword [rcx], r15
mov rax, qword [rsp + 0x40]
mov qword [rcx + 8], rax
mov qword [rcx + 0x10], r12
call fcn.14000ccf6
mov rcx, rax
jmp 0x140092d9a
xor ecx, ecx
call fcn.140089007
mov qword [rsp + 0x90], rax
lock inc qword [rax]
jle 0x140093187
mov rbp, rax
mov ecx, 0x30
mov edx, 8
call fcn.14008f7ca
mov r15, rax
mov eax, 1
mov qword [r15], rax
mov qword [r15 + 8], rax
pxor xmm0, xmm0
movdqu xmmword [r15 + 0x10], xmm0
mov qword [rsp + 0x98], r15
lock inc qword [r15]
jle 0x140093187
xor ecx, ecx
call fcn.14008a2dd
mov r14, rax
test rax, rax
je 0x140092e0c
lock inc qword [r14]
jle 0x140093187
mov rcx, r14
jmp 0x140092e0e
xor ecx, ecx
call fcn.14008a2dd
mov qword [rsp + 0x40], r15
add r15, 0x10
lea rcx, [rsp + 0x60]
mov qword [rcx], rax
call case.0x140080d73.180
mov rcx, qword [r15]
test rcx, rcx
je 0x140092e3c
lock inc qword [rcx + 0x18]
jle 0x14009317c
mov ecx, 0x38
mov edx, 8
call fcn.14008f7ca
mov r12, rax
mov qword [rax], rbp
mov rax, qword [rsp + 0x40]
mov qword [r12 + 8], rax
mov qword [r12 + 0x10], r14
mov rax, qword [rsp + 0x58]
mov qword [r12 + 0x18], rax
mov rax, qword [rsp + 0x50]
mov qword [r12 + 0x20], rax
mov qword [r12 + 0x28], r13
mov qword [r12 + 0x30], rbx
mov ecx, 0x10
mov edx, 8
call fcn.14008a2ad
mov r14, rax
mov qword [rax], r12
lea rax, [0x1400d2148]
mov qword [r14 + 8], rax
and qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0x10000
lea r8, [0x14008a321]
xor ecx, ecx
mov rdx, qword [rsp + 0x38]
mov r9, r14
call qword [sym.imp.kernel32.dll_CreateThread]
test rax, rax
je 0x140093077
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x38], rbp
lock inc qword [rdi + 0xf8]
inc qword [rdi + 0xb8]
mov rcx, qword [rdi + 0x88]
mov rdx, qword [rdi + 0x90]
mov r8, rbx
call fcn.14008f600
mov r14, rax
cmp qword [rdi + 0x78], 0
je 0x1400930e3
mov r13, qword [rdi + 0x68]
mov r12, qword [rdi + 0x70]
mov rbp, r12
and rbp, r14
shr r14, 0x39
mov qword [rsp + 0x88], r14
movd xmm0, r14d
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm6, xmm0, 0
lea r15, [r13 - 0x20]
xor eax, eax
mov qword [rsp + 0x50], rax
lea r14, [rsp + 0x60]
pcmpeqd xmm7, xmm7
xor eax, eax
mov qword [rsp + 0x58], rax
movdqu xmm8, xmmword [r13 + rbp]
movdqa xmm0, xmm6
pcmpeqb xmm0, xmm8
pmovmskb eax, xmm0
mov word [rsp + 0x60], ax
mov rcx, r14
call case.0x140017a0e.404
test rax, rax
je 0x140092f91
add rdx, rbp
and rdx, r12
mov rax, rdx
shl rax, 5
mov rcx, r15
sub rcx, rax
cmp qword [rcx], rbx
jne 0x140092f6a
jmp 0x140092ff7
cmp qword [rsp + 0x58], 0
mov eax, 1
jne 0x140092fc3
movdqa xmmword [rsp + 0xa0], xmm8
mov rcx, r12
lea rdx, [rsp + 0xa0]
mov r8, rbp
call case.0x140017a0e.446
mov qword [rsp + 0x80], rdx
pcmpeqb xmm8, xmm7
pmovmskb ecx, xmm8
test ecx, ecx
jne 0x1400930f8
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x50]
add rbp, rax
add rbp, 0x10
add rax, 0x10
mov qword [rsp + 0x50], rax
and rbp, r12
jmp 0x140092f51
neg rdx
shl rdx, 5
mov rax, qword [r13 + rdx - 8]
mov qword [rsp + 0x70], rax
movdqu xmm0, xmmword [r13 + rdx - 0x18]
movdqa xmmword [rsp + 0x60], xmm0
mov rax, qword [rsp + 0x38]
mov qword [r13 + rdx - 0x18], rax
mov rax, qword [rsp + 0x40]
mov qword [r13 + rdx - 0x10], rax
mov rax, qword [rsp + 0x48]
mov qword [r13 + rdx - 8], rax
lea rcx, [rsp + 0x60]
call fcn.14008e68f
mov rcx, rsi
call fcn.14008ea67
xor eax, eax
mov rdx, rbx
movaps xmm6, xmmword [rsp + 0xb0]
movaps xmm7, xmmword [rsp + 0xc0]
movaps xmm8, xmmword [rsp + 0xd0]
add rsp, 0xe8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, qword [r14]
mov rax, qword [r14 + 8]
call qword [rax]
mov rcx, qword [r14]
mov rdx, qword [r14 + 8]
call fcn.14008992c
mov rcx, r14
call fcn.140045451
call fcn.14000f205
mov rbx, rax
lea rcx, [rsp + 0x98]
call fcn.14008e773
lea rcx, [rsp + 0x90]
call fcn.14008e764
mov rcx, rbx
call fcn.14008f010
cmp al, 0xd
jne 0x140092b88
mov rax, qword [rdi + 0xf8]
test rax, rax
je 0x140092b88
mov rcx, rbx
call fcn.14001be52
jmp 0x14009303d
lea rcx, [rdi + 0x68]
lea rdx, [rdi + 0x88]
call fcn.1400a1e53
jmp 0x140092f09
mov rdx, qword [rsp + 0x80]
mov al, byte [r13 + rdx]
test al, al
js 0x14009311b
movdqa xmm0, xmmword [r13]
pmovmskb eax, xmm0
bsf edx, eax
mov al, byte [r13 + rdx]
and al, 1
movzx eax, al
sub qword [rdi + 0x78], rax
lea rax, [rdx - 0x10]
and rax, r12
mov rcx, qword [rsp + 0x88]
mov byte [r13 + rdx], cl
mov byte [rax + r13 + 0x10], cl
inc qword [rdi + 0x80]
shl rdx, 5
mov rax, r13
sub rax, rdx
neg rdx
mov qword [r13 + rdx - 0x20], rbx
mov rcx, qword [rsp + 0x38]
mov qword [rax - 0x18], rcx
mov rcx, qword [rsp + 0x40]
mov qword [rax - 0x10], rcx
mov rcx, qword [rsp + 0x48]
mov qword [rax - 8], rcx
and qword [rsp + 0x60], 0
jmp 0x140093033
add rcx, 0x10
xor edx, edx
call fcn.1400893e4
ud2