Function at 0x14004d280
Capabilities:
Terminate thread

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x5e0]
sub rsp, 0x6e0
mov r14d, edx
mov rdi, rcx
mov eax, dword [rcx + 0x30]
test eax, eax
jg 0x14004d2b3
mov al, 1
jmp 0x14004db55
movzx eax, byte [rcx + 0x10]
test al, al
je 0x14004d2c2
cmp qword [rcx + 0x18], 0
jne 0x14004d2ca
mov rax, qword [rcx]
mov dl, 1
call qword [rax + 0x20]
cmp r14d, 0xffffffff
jne 0x14004d2d4
mov r14d, dword [rdi + 0x28]
mov r15b, 1
call fcn.1400260d0
mov r12, rax
mov rsi, qword [rdi + 8]
xor r13d, r13d
test rsi, rsi
je 0x14004dae7
nop
call fcn.14008d8b8
mov rbx, rax
call fcn.14008d89c
cmp rbx, 0x989680
jne 0x14004d30c
imul rcx, rax, 0x64
jmp 0x14004d327
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rcx, rax
movabs rax, 0x431bde82d7b634db
imul rcx
mov rbx, rdx
sar rbx, 0x12
mov rax, rbx
shr rax, 0x3f
add rbx, rax
sub ebx, r12d
test r14d, r14d
js 0x14004d747
cmp ebx, r14d
jle 0x14004d747
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x88]
test al, al
je 0x14004d747
call fcn.140002000
mov r10, qword [rax]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, 0xffffffff
mov r8d, r9d
lea rdx, str.JRThread::Stop
mov rcx, rax
call qword [r10 + 0x28]
mov rbx, rax
mov qword [rbp + 0x620], rax
mov dword [rbp + 0x440], r13d
movaps xmm0, xmmword [rbp + 0x440]
movdqa xmmword [rbp + 0x2e0], xmm0
mov dword [rbp + 0x560], r13d
movaps xmm1, xmmword [rbp + 0x560]
movdqa xmmword [rbp + 0x2d0], xmm1
mov dword [rbp + 0xb0], r13d
movaps xmm0, xmmword [rbp + 0xb0]
movdqa xmmword [rbp + 0x2c0], xmm0
mov dword [rbp + 0xc0], r13d
movaps xmm1, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0x2b0], xmm1
mov dword [rbp + 0xd0], r13d
movaps xmm0, xmmword [rbp + 0xd0]
movdqa xmmword [rbp + 0x2a0], xmm0
mov dword [rbp + 0xe0], r13d
movaps xmm1, xmmword [rbp + 0xe0]
movdqa xmmword [rbp + 0x290], xmm1
mov dword [rbp + 0xf0], r13d
movaps xmm0, xmmword [rbp + 0xf0]
movdqa xmmword [rbp + 0x280], xmm0
mov dword [rbp + 0x100], r13d
movaps xmm1, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x270], xmm1
mov dword [rbp + 0x110], r13d
movaps xmm0, xmmword [rbp + 0x110]
movdqa xmmword [rbp + 0x260], xmm0
mov dword [rbp + 0x120], r13d
movaps xmm1, xmmword [rbp + 0x120]
movdqa xmmword [rbp + 0x250], xmm1
mov dword [rbp + 0x130], r13d
movaps xmm0, xmmword [rbp + 0x130]
movdqa xmmword [rbp + 0x240], xmm0
mov dword [rbp + 0x140], r13d
movaps xmm1, xmmword [rbp + 0x140]
movdqa xmmword [rbp + 0x230], xmm1
mov dword [rbp + 0x150], r13d
movaps xmm0, xmmword [rbp + 0x150]
movdqa xmmword [rbp + 0x220], xmm0
mov dword [rbp + 0x160], r13d
movaps xmm1, xmmword [rbp + 0x160]
movdqa xmmword [rbp + 0x210], xmm1
mov dword [rbp + 0x170], r13d
movaps xmm0, xmmword [rbp + 0x170]
movdqa xmmword [rbp + 0x200], xmm0
mov dword [rbp + 0x180], r13d
movaps xmm1, xmmword [rbp + 0x180]
movdqa xmmword [rbp + 0x1f0], xmm1
mov dword [rbp + 0x190], r13d
movaps xmm0, xmmword [rbp + 0x190]
movdqa xmmword [rbp + 0x1e0], xmm0
mov dword [rbp + 0x1a0], r13d
movaps xmm1, xmmword [rbp + 0x1a0]
movdqa xmmword [rbp + 0x1d0], xmm1
mov dword [rsp + 0x40], 4
movsxd rax, r14d
mov qword [rsp + 0x48], rax
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rbp + 0x1c0], xmm0
mov dword [rsp + 0x50], 4
mov qword [rsp + 0x58], rsi
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rbp + 0x1b0], xmm0
mov rcx, qword [0x1400fac38]
test rcx, rcx
je 0x14004d6a2
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x50]
mov rcx, rax
test rax, rax
je 0x14004d6a2
lea rax, [rbp + 0x1b0]
mov qword [rbp + 0x10], rax
lea rax, [rbp + 0x1c0]
mov qword [rbp + 0x18], rax
lea rax, [rbp + 0x1d0]
mov qword [rbp + 0x20], rax
lea rax, [rbp + 0x1e0]
mov qword [rbp + 0x28], rax
lea rax, [rbp + 0x1f0]
mov qword [rbp + 0x30], rax
lea rax, [rbp + 0x200]
mov qword [rbp + 0x38], rax
lea rax, [rbp + 0x210]
mov qword [rbp + 0x40], rax
lea rax, [rbp + 0x220]
mov qword [rbp + 0x48], rax
lea rax, [rbp + 0x230]
mov qword [rbp + 0x50], rax
lea rax, [rbp + 0x240]
mov qword [rbp + 0x58], rax
lea rax, [rbp + 0x250]
mov qword [rbp + 0x60], rax
lea rax, [rbp + 0x260]
mov qword [rbp + 0x68], rax
lea rax, [rbp + 0x270]
mov qword [rbp + 0x70], rax
lea rax, [rbp + 0x280]
mov qword [rbp + 0x78], rax
lea rax, [rbp + 0x290]
mov qword [rbp + 0x80], rax
lea rax, [rbp + 0x2a0]
mov qword [rbp + 0x88], rax
lea rax, [rbp + 0x2b0]
mov qword [rbp + 0x90], rax
lea rax, [rbp + 0x2c0]
mov qword [rbp + 0x98], rax
lea rax, [rbp + 0x2d0]
mov qword [rbp + 0xa0], rax
lea rax, [rbp + 0x2e0]
mov qword [rbp + 0xa8], rax
mov rax, qword [rcx]
mov dword [rsp + 0x28], 0x14
lea rdx, [rbp + 0x10]
mov qword [rsp + 0x20], rdx
lea r9, str.Hard_killing_thread__handle_x___it_exceeded_timeout_d_MS
mov r8, rbx
mov edx, 1
call qword [rax + 8]
nop
lea rdx, [rbx - 0x18]
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x14004d6d1
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x14004d6c7
mov eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14004d6d1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
test r15b, r15b
je 0x14004d724
xor r15b, r15b
lea rcx, [rbp + 0x580]
call fcn.140002db0
nop
mov rax, qword [rbp + 0x5c0]
test rax, rax
je 0x14004d718
mov rcx, rsi
call rax
test eax, eax
je 0x14004d718
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
nop
lea rcx, [rbp + 0x5d0]
call fcn.140029b60
jmp 0x14004dada
lea rcx, [rbp + 0x5d0]
call fcn.140029b60
mov edx, 1
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TerminateThread]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, r13
xchg qword [rdi + 8], rax
jmp 0x14004dada
cmp ebx, 0x3e8
jle 0x14004dac6
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetThreadPriority]
cmp eax, 0x7fffffff
jne 0x14004dac6
call qword [sym.imp.KERNEL32.dll_GetLastError]
movsxd rsi, eax
call fcn.140002000
mov r10, qword [rax]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, 0xffffffff
mov r8d, r9d
lea rdx, str.JRThread::Stop
mov rcx, rax
call qword [r10 + 0x28]
mov rbx, rax
mov qword [rbp + 0x630], rax
mov dword [rbp + 0x2f0], r13d
movaps xmm0, xmmword [rbp + 0x2f0]
movdqa xmmword [rbp + 0x550], xmm0
mov dword [rbp + 0x300], r13d
movaps xmm1, xmmword [rbp + 0x300]
movdqa xmmword [rbp + 0x540], xmm1
mov dword [rbp + 0x310], r13d
movaps xmm0, xmmword [rbp + 0x310]
movdqa xmmword [rbp + 0x530], xmm0
mov dword [rbp + 0x320], r13d
movaps xmm1, xmmword [rbp + 0x320]
movdqa xmmword [rbp + 0x520], xmm1
mov dword [rbp + 0x330], r13d
movaps xmm0, xmmword [rbp + 0x330]
movdqa xmmword [rbp + 0x510], xmm0
mov dword [rbp + 0x340], r13d
movaps xmm1, xmmword [rbp + 0x340]
movdqa xmmword [rbp + 0x500], xmm1
mov dword [rbp + 0x350], r13d
movaps xmm0, xmmword [rbp + 0x350]
movdqa xmmword [rbp + 0x4f0], xmm0
mov dword [rbp + 0x360], r13d
movaps xmm1, xmmword [rbp + 0x360]
movdqa xmmword [rbp + 0x570], xmm1
mov dword [rbp + 0x370], r13d
movaps xmm0, xmmword [rbp + 0x370]
movdqa xmmword [rbp + 0x4d0], xmm0
mov dword [rbp + 0x380], r13d
movaps xmm1, xmmword [rbp + 0x380]
movdqa xmmword [rbp + 0x4c0], xmm1
mov dword [rbp + 0x390], r13d
movaps xmm0, xmmword [rbp + 0x390]
movdqa xmmword [rbp + 0x4b0], xmm0
mov dword [rbp + 0x3a0], r13d
movaps xmm1, xmmword [rbp + 0x3a0]
movdqa xmmword [rbp + 0x4a0], xmm1
mov dword [rbp + 0x3b0], r13d
movaps xmm0, xmmword [rbp + 0x3b0]
movdqa xmmword [rbp + 0x490], xmm0
mov dword [rbp + 0x3c0], r13d
movaps xmm1, xmmword [rbp + 0x3c0]
movdqa xmmword [rbp + 0x480], xmm1
mov dword [rbp + 0x3d0], r13d
movaps xmm0, xmmword [rbp + 0x3d0]
movdqa xmmword [rbp + 0x470], xmm0
mov dword [rbp + 0x3e0], r13d
movaps xmm1, xmmword [rbp + 0x3e0]
movdqa xmmword [rbp + 0x460], xmm1
mov dword [rbp + 0x3f0], r13d
movaps xmm0, xmmword [rbp + 0x3f0]
movdqa xmmword [rbp + 0x450], xmm0
mov dword [rbp + 0x400], r13d
movaps xmm1, xmmword [rbp + 0x400]
movdqa xmmword [rbp + 0x4e0], xmm1
mov dword [rbp + 0x410], r13d
movaps xmm0, xmmword [rbp + 0x410]
movdqa xmmword [rbp + 0x430], xmm0
mov dword [rsp + 0x60], 4
mov qword [rsp + 0x68], rsi
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rbp + 0x420], xmm0
mov rcx, qword [0x1400fac38]
test rcx, rcx
je 0x14004da8e
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x50]
mov rcx, rax
test rax, rax
je 0x14004da8e
lea rax, [rbp + 0x420]
mov qword [rsp + 0x70], rax
lea rax, [rbp + 0x430]
mov qword [rsp + 0x78], rax
lea rax, [rbp + 0x4e0]
mov qword [rbp - 0x80], rax
lea rax, [rbp + 0x450]
mov qword [rbp - 0x78], rax
lea rax, [rbp + 0x460]
mov qword [rbp - 0x70], rax
lea rax, [rbp + 0x470]
mov qword [rbp - 0x68], rax
lea rax, [rbp + 0x480]
mov qword [rbp - 0x60], rax
lea rax, [rbp + 0x490]
mov qword [rbp - 0x58], rax
lea rax, [rbp + 0x4a0]
mov qword [rbp - 0x50], rax
lea rax, [rbp + 0x4b0]
mov qword [rbp - 0x48], rax
lea rax, [rbp + 0x4c0]
mov qword [rbp - 0x40], rax
lea rax, [rbp + 0x4d0]
mov qword [rbp - 0x38], rax
lea rax, [rbp + 0x570]
mov qword [rbp - 0x30], rax
lea rax, [rbp + 0x4f0]
mov qword [rbp - 0x28], rax
lea rax, [rbp + 0x500]
mov qword [rbp - 0x20], rax
lea rax, [rbp + 0x510]
mov qword [rbp - 0x18], rax
lea rax, [rbp + 0x520]
mov qword [rbp - 0x10], rax
lea rax, [rbp + 0x530]
mov qword [rbp - 8], rax
lea rax, [rbp + 0x540]
mov qword [rbp], rax
lea rax, [rbp + 0x550]
mov qword [rbp + 8], rax
mov rax, qword [rcx]
mov dword [rsp + 0x28], 0x14
lea rdx, [rsp + 0x70]
mov qword [rsp + 0x20], rdx
lea r9, str.GetThreadPriority_returned_error__errno_d
mov r8, rbx
mov edx, 1
call qword [rax + 8]
nop
lea rdx, [rbx - 0x18]
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x14004dabd
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x14004dab3
mov eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14004dabd
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rax, r13
xchg qword [rdi + 8], rax
jmp 0x14004dada
cmp byte [rdi + 0x36], 0
je 0x14004dad1
call fcn.140054340
mov ecx, dword [rdi + 0x2c]
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rsi, qword [rdi + 8]
test rsi, rsi
jne 0x14004d2f0
cmp byte [rdi + 0x37], 0
je 0x14004daf6
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x28]
mov rcx, qword [0x1400fac38]
test rcx, rcx
je 0x14004db34
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x78]
test rax, rax
je 0x14004db34
mov rcx, qword [0x1400fac38]
test rcx, rcx
je 0x14004db28
mov rax, qword [rcx]
mov dl, 1
call qword [rax + 0x78]
mov rcx, rax
jmp 0x14004db2b
mov rcx, r13
mov rax, qword [rcx]
mov rdx, rdi
call qword [rax + 8]
movzx ebx, byte [rdi + 0x34]
lea rcx, [rdi + 0x18]
call fcn.14004e570
mov rcx, r13
xchg qword [rdi + 8], rcx
mov edx, r13d
xchg byte [rdi + 0x34], dl
mov dword [rdi + 0x40], r13d
movzx eax, bl
mov rbx, qword [rsp + 0x728]
add rsp, 0x6e0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret