Function at 0x14005bda0
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 - 0x5f0]
sub rsp, 0x6f0
mov r14d, edx
mov rdi, rcx
mov eax, dword [rcx + 0x30]
test eax, eax
jg 0x14005bdd3
mov al, 1
jmp 0x14005c6e7
movzx eax, byte [rcx + 0x10]
test al, al
je 0x14005bde2
cmp qword [rcx + 0x18], 0
jne 0x14005bdea
mov rax, qword [rcx]
mov dl, 1
call qword [rax + 0x20]
cmp r14d, 0xffffffff
jne 0x14005bdf4
mov r14d, dword [rdi + 0x28]
mov r15b, 1
call fcn.140052990
mov r12, rax
mov rsi, qword [rdi + 8]
xor r13d, r13d
test rsi, rsi
je 0x14005c679
nop
call fcn.140152060
mov rbx, rax
call fcn.140152044
cmp rbx, 0x989680
jne 0x14005be2c
imul rcx, rax, 0x64
jmp 0x14005be47
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 0x14005c2a0
cmp ebx, r14d
jle 0x14005c2a0
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x88]
test al, al
je 0x14005c2a0
cmp dword [0x14021c658], 0xb23a8c33
je 0x14005bec9
mov ecx, 0x6c0
call fcn.140111d34
mov qword [rbp + 0x630], rax
test rax, rax
je 0x14005bebd
mov rcx, rax
call fcn.140036570
mov rcx, rax
jmp 0x14005bec0
mov rcx, r13
mov qword [0x140229e08], rcx
jmp 0x14005bed0
mov rcx, qword [0x140229e08]
mov rax, qword [rcx]
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
call qword [rax + 0x28]
mov rbx, rax
mov qword [rbp + 0x640], rax
mov dword [rbp + 0x570], r13d
movaps xmm0, xmmword [rbp + 0x570]
movdqa xmmword [rbp + 0x2f0], xmm0
mov dword [rbp + 0xb0], r13d
movaps xmm1, xmmword [rbp + 0xb0]
movdqa xmmword [rbp + 0x2e0], xmm1
mov dword [rbp + 0xc0], r13d
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0x2d0], xmm0
mov dword [rbp + 0xd0], r13d
movaps xmm1, xmmword [rbp + 0xd0]
movdqa xmmword [rbp + 0x2c0], xmm1
mov dword [rbp + 0xe0], r13d
movaps xmm0, xmmword [rbp + 0xe0]
movdqa xmmword [rbp + 0x2b0], xmm0
mov dword [rbp + 0xf0], r13d
movaps xmm1, xmmword [rbp + 0xf0]
movdqa xmmword [rbp + 0x2a0], xmm1
mov dword [rbp + 0x100], r13d
movaps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x290], xmm0
mov dword [rbp + 0x110], r13d
movaps xmm1, xmmword [rbp + 0x110]
movdqa xmmword [rbp + 0x280], xmm1
mov dword [rbp + 0x120], r13d
movaps xmm0, xmmword [rbp + 0x120]
movdqa xmmword [rbp + 0x270], xmm0
mov dword [rbp + 0x130], r13d
movaps xmm1, xmmword [rbp + 0x130]
movdqa xmmword [rbp + 0x260], xmm1
mov dword [rbp + 0x140], r13d
movaps xmm0, xmmword [rbp + 0x140]
movdqa xmmword [rbp + 0x250], xmm0
mov dword [rbp + 0x150], r13d
movaps xmm1, xmmword [rbp + 0x150]
movdqa xmmword [rbp + 0x240], xmm1
mov dword [rbp + 0x160], r13d
movaps xmm0, xmmword [rbp + 0x160]
movdqa xmmword [rbp + 0x230], xmm0
mov dword [rbp + 0x170], r13d
movaps xmm1, xmmword [rbp + 0x170]
movdqa xmmword [rbp + 0x220], xmm1
mov dword [rbp + 0x180], r13d
movaps xmm0, xmmword [rbp + 0x180]
movdqa xmmword [rbp + 0x210], xmm0
mov dword [rbp + 0x190], r13d
movaps xmm1, xmmword [rbp + 0x190]
movdqa xmmword [rbp + 0x200], xmm1
mov dword [rbp + 0x1a0], r13d
movaps xmm0, xmmword [rbp + 0x1a0]
movdqa xmmword [rbp + 0x1f0], xmm0
mov dword [rbp + 0x1b0], r13d
movaps xmm1, xmmword [rbp + 0x1b0]
movdqa xmmword [rbp + 0x1e0], xmm1
mov dword [rsp + 0x50], 4
movsxd rax, r14d
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rbp + 0x1d0], xmm0
mov dword [rsp + 0x60], 4
mov qword [rsp + 0x68], rsi
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rbp + 0x1c0], xmm0
mov rcx, qword [0x14022a428]
test rcx, rcx
je 0x14005c1fb
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x50]
mov rcx, rax
test rax, rax
je 0x14005c1fb
lea rax, [rbp + 0x1c0]
mov qword [rbp + 0x10], rax
lea rax, [rbp + 0x1d0]
mov qword [rbp + 0x18], rax
lea rax, [rbp + 0x1e0]
mov qword [rbp + 0x20], rax
lea rax, [rbp + 0x1f0]
mov qword [rbp + 0x28], rax
lea rax, [rbp + 0x200]
mov qword [rbp + 0x30], rax
lea rax, [rbp + 0x210]
mov qword [rbp + 0x38], rax
lea rax, [rbp + 0x220]
mov qword [rbp + 0x40], rax
lea rax, [rbp + 0x230]
mov qword [rbp + 0x48], rax
lea rax, [rbp + 0x240]
mov qword [rbp + 0x50], rax
lea rax, [rbp + 0x250]
mov qword [rbp + 0x58], rax
lea rax, [rbp + 0x260]
mov qword [rbp + 0x60], rax
lea rax, [rbp + 0x270]
mov qword [rbp + 0x68], rax
lea rax, [rbp + 0x280]
mov qword [rbp + 0x70], rax
lea rax, [rbp + 0x290]
mov qword [rbp + 0x78], rax
lea rax, [rbp + 0x2a0]
mov qword [rbp + 0x80], rax
lea rax, [rbp + 0x2b0]
mov qword [rbp + 0x88], rax
lea rax, [rbp + 0x2c0]
mov qword [rbp + 0x90], rax
lea rax, [rbp + 0x2d0]
mov qword [rbp + 0x98], rax
lea rax, [rbp + 0x2e0]
mov qword [rbp + 0xa0], rax
lea rax, [rbp + 0x2f0]
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 + reloc.OLEAUT32.dll_VariantClear]
nop
lea rdx, [rbx - 0x18]
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x14005c22a
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x14005c220
mov eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14005c22a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
test r15b, r15b
je 0x14005c27d
xor r15b, r15b
lea rcx, [rbp + 0x590]
call fcn.140052090
nop
mov rax, qword [rbp + 0x5d0]
test rax, rax
je 0x14005c271
mov rcx, rsi
call rax
test eax, eax
je 0x14005c271
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
nop
lea rcx, [rbp + 0x5e0]
call fcn.14005da30
jmp 0x14005c66c
lea rcx, [rbp + 0x5e0]
call fcn.14005da30
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 0x14005c66c
cmp ebx, 0x3e8
jle 0x14005c658
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetThreadPriority]
cmp eax, 0x7fffffff
jne 0x14005c658
call qword [sym.imp.KERNEL32.dll_GetLastError]
movsxd rsi, eax
cmp dword [0x14021c658], 0xb23a8c33
je 0x14005c304
mov ecx, 0x6c0
call fcn.140111d34
mov qword [rbp + 0x648], rax
test rax, rax
je 0x14005c2f8
mov rcx, rax
call fcn.140036570
mov rcx, rax
jmp 0x14005c2fb
mov rcx, r13
mov qword [0x140229e08], rcx
jmp 0x14005c30b
mov rcx, qword [0x140229e08]
mov rax, qword [rcx]
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
call qword [rax + 0x28]
mov rbx, rax
mov qword [rbp + 0x450], rax
mov dword [rbp + 0x300], r13d
movaps xmm0, xmmword [rbp + 0x300]
movdqa xmmword [rbp + 0x560], xmm0
mov dword [rbp + 0x310], r13d
movaps xmm1, xmmword [rbp + 0x310]
movdqa xmmword [rbp + 0x550], xmm1
mov dword [rbp + 0x320], r13d
movaps xmm0, xmmword [rbp + 0x320]
movdqa xmmword [rbp + 0x540], xmm0
mov dword [rbp + 0x330], r13d
movaps xmm1, xmmword [rbp + 0x330]
movdqa xmmword [rbp + 0x530], xmm1
mov dword [rbp + 0x340], r13d
movaps xmm0, xmmword [rbp + 0x340]
movdqa xmmword [rbp + 0x520], xmm0
mov dword [rbp + 0x350], r13d
movaps xmm1, xmmword [rbp + 0x350]
movdqa xmmword [rbp + 0x510], xmm1
mov dword [rbp + 0x360], r13d
movaps xmm0, xmmword [rbp + 0x360]
movdqa xmmword [rbp + 0x500], xmm0
mov dword [rbp + 0x370], r13d
movaps xmm1, xmmword [rbp + 0x370]
movdqa xmmword [rbp + 0x580], xmm1
mov dword [rbp + 0x380], r13d
movaps xmm0, xmmword [rbp + 0x380]
movdqa xmmword [rbp + 0x4e0], xmm0
mov dword [rbp + 0x390], r13d
movaps xmm1, xmmword [rbp + 0x390]
movdqa xmmword [rbp + 0x4d0], xmm1
mov dword [rbp + 0x3a0], r13d
movaps xmm0, xmmword [rbp + 0x3a0]
movdqa xmmword [rbp + 0x4c0], xmm0
mov dword [rbp + 0x3b0], r13d
movaps xmm1, xmmword [rbp + 0x3b0]
movdqa xmmword [rbp + 0x4b0], xmm1
mov dword [rbp + 0x3c0], r13d
movaps xmm0, xmmword [rbp + 0x3c0]
movdqa xmmword [rbp + 0x4a0], xmm0
mov dword [rbp + 0x3d0], r13d
movaps xmm1, xmmword [rbp + 0x3d0]
movdqa xmmword [rbp + 0x490], xmm1
mov dword [rbp + 0x3e0], r13d
movaps xmm0, xmmword [rbp + 0x3e0]
movdqa xmmword [rbp + 0x480], xmm0
mov dword [rbp + 0x3f0], r13d
movaps xmm1, xmmword [rbp + 0x3f0]
movdqa xmmword [rbp + 0x470], xmm1
mov dword [rbp + 0x400], r13d
movaps xmm0, xmmword [rbp + 0x400]
movdqa xmmword [rbp + 0x460], xmm0
mov dword [rbp + 0x410], r13d
movaps xmm1, xmmword [rbp + 0x410]
movdqa xmmword [rbp + 0x4f0], xmm1
mov dword [rbp + 0x420], r13d
movaps xmm0, xmmword [rbp + 0x420]
movdqa xmmword [rbp + 0x440], xmm0
mov dword [rsp + 0x40], 4
mov qword [rsp + 0x48], rsi
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rbp + 0x430], xmm0
mov rcx, qword [0x14022a428]
test rcx, rcx
je 0x14005c620
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x50]
mov rcx, rax
test rax, rax
je 0x14005c620
lea rax, [rbp + 0x430]
mov qword [rsp + 0x70], rax
lea rax, [rbp + 0x440]
mov qword [rsp + 0x78], rax
lea rax, [rbp + 0x4f0]
mov qword [rbp - 0x80], rax
lea rax, [rbp + 0x460]
mov qword [rbp - 0x78], rax
lea rax, [rbp + 0x470]
mov qword [rbp - 0x70], rax
lea rax, [rbp + 0x480]
mov qword [rbp - 0x68], rax
lea rax, [rbp + 0x490]
mov qword [rbp - 0x60], rax
lea rax, [rbp + 0x4a0]
mov qword [rbp - 0x58], rax
lea rax, [rbp + 0x4b0]
mov qword [rbp - 0x50], rax
lea rax, [rbp + 0x4c0]
mov qword [rbp - 0x48], rax
lea rax, [rbp + 0x4d0]
mov qword [rbp - 0x40], rax
lea rax, [rbp + 0x4e0]
mov qword [rbp - 0x38], rax
lea rax, [rbp + 0x580]
mov qword [rbp - 0x30], rax
lea rax, [rbp + 0x500]
mov qword [rbp - 0x28], rax
lea rax, [rbp + 0x510]
mov qword [rbp - 0x20], rax
lea rax, [rbp + 0x520]
mov qword [rbp - 0x18], rax
lea rax, [rbp + 0x530]
mov qword [rbp - 0x10], rax
lea rax, [rbp + 0x540]
mov qword [rbp - 8], rax
lea rax, [rbp + 0x550]
mov qword [rbp], rax
lea rax, [rbp + 0x560]
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 + reloc.OLEAUT32.dll_VariantClear]
nop
lea rdx, [rbx - 0x18]
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x14005c64f
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x14005c645
mov eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14005c64f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rax, r13
xchg qword [rdi + 8], rax
jmp 0x14005c66c
cmp byte [rdi + 0x36], 0
je 0x14005c663
call fcn.140084ef0
mov ecx, dword [rdi + 0x2c]
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rsi, qword [rdi + 8]
test rsi, rsi
jne 0x14005be10
cmp byte [rdi + 0x37], 0
je 0x14005c688
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x28]
mov rcx, qword [0x14022a428]
test rcx, rcx
je 0x14005c6c6
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x78]
test rax, rax
je 0x14005c6c6
mov rcx, qword [0x14022a428]
test rcx, rcx
je 0x14005c6ba
mov rax, qword [rcx]
mov dl, 1
call qword [rax + 0x78]
mov rcx, rax
jmp 0x14005c6bd
mov rcx, r13
mov rax, qword [rcx]
mov rdx, rdi
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
movzx ebx, byte [rdi + 0x34]
lea rcx, [rdi + 0x18]
call fcn.14005d0e0
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 + 0x738]
add rsp, 0x6f0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret