Function at 0x180031090
Capabilities:
Resume thread

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov rcx, qword [0x1801af158]
lea r8, [0x1801af118]
lea rdx, [0x1800301f0]
call fcn.1800c4778
test eax, eax
je 0x1800310cb
cmp eax, 3
jne 0x1800315c9
mov rdi, qword [0x1801af158]
xor r14d, r14d
mov ebx, r14d
xor eax, eax
mov r13d, 1
lock cmpxchg dword [0x1801b069c], r13d
je 0x180031113
nop dword [rax + rax]
cmp rbx, 0x20
jae 0x1800310fa
xor ecx, ecx
jmp 0x1800310fd
mov ecx, r13d
call qword [sym.imp.KERNEL32.dll_Sleep]
inc rbx
xor eax, eax
lock cmpxchg dword [0x1801b069c], r13d
jne 0x1800310f0
cmp qword [0x1801b06a0], r14
je 0x1800315c2
mov r12d, 5
test rdi, rdi
jne 0x180031137
mov ecx, r13d
call fcn.1800c4674
mov ebp, eax
jmp 0x180031164
mov ecx, dword [0x1801b1dec]
mov ebx, r14d
test ecx, ecx
je 0x18003115f
mov r8, qword [0x1801b1de0]
mov rax, r8
nop
cmp rdi, qword [rax]
je 0x1800311a8
inc ebx
add rax, 0x38
cmp ebx, ecx
jb 0x180031150
mov ebp, 4
mov eax, r14d
xchg dword [0x1801b069c], eax
test ebp, ebp
jne 0x1800315c9
mov rdx, qword [0x1801b1408]
cmp rdx, qword [0x1801b1410]
mov rax, qword [0x1801af158]
mov qword [rsp + 0x90], rax
je 0x180031250
mov qword [rdx], rax
add qword [0x1801b1408], 8
jmp 0x180031264
cmp ebx, 0xffffffff
je 0x18003115f
mov eax, ebx
imul rdx, rax, 0x38
test byte [rdx + r8 + 0x20], 2
jne 0x180031248
mov r8d, r13d
lea rcx, [rsp + 0x20]
mov edx, ebx
call fcn.1800c41bc
mov ebp, eax
test eax, eax
jne 0x180031164
mov edx, r13d
mov ecx, ebx
call fcn.1800c4568
mov r15, qword [rsp + 0x20]
mov ebp, eax
test r15, r15
je 0x180031164
mov eax, dword [rsp + 0x2c]
test eax, eax
je 0x180031231
mov rbx, r15
mov esi, eax
nop dword [rax + rax]
mov r8d, dword [rbx]
xor edx, edx
lea ecx, [rdx + 0x5a]
call qword [sym.imp.KERNEL32.dll_OpenThread]
mov rdi, rax
test rax, rax
je 0x180031228
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_ResumeThread]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
add rbx, 4
sub rsi, r13
jne 0x180031200
mov rcx, qword [0x1801b06a0]
mov r8, r15
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x180031164
mov ebp, r12d
jmp 0x180031164
lea r8, [rsp + 0x90]
lea rcx, [0x1801b1400]
call fcn.180033e10
mov rcx, qword [0x1801af150]
lea r8, [0x1801af110]
lea rdx, [0x180030290]
call fcn.1800c4778
test eax, eax
jne 0x1800315c9
mov rdi, qword [0x1801af150]
mov rbx, r14
lock cmpxchg dword [0x1801b069c], r13d
je 0x1800312c3
nop dword [rax + rax]
cmp rbx, 0x20
jae 0x1800312aa
xor ecx, ecx
jmp 0x1800312ad
mov ecx, r13d
call qword [sym.imp.KERNEL32.dll_Sleep]
inc rbx
xor eax, eax
lock cmpxchg dword [0x1801b069c], r13d
jne 0x1800312a0
cmp qword [0x1801b06a0], r14
je 0x1800315c2
test rdi, rdi
jne 0x1800312e1
mov ecx, r13d
call fcn.1800c4674
mov ebp, eax
jmp 0x18003130c
mov ecx, dword [0x1801b1dec]
mov ebx, r14d
test ecx, ecx
je 0x180031307
mov r8, qword [0x1801b1de0]
mov rax, r8
cmp rdi, qword [rax]
je 0x180031350
inc ebx
add rax, 0x38
cmp ebx, ecx
jb 0x1800312f8
mov ebp, 4
mov eax, r14d
xchg dword [0x1801b069c], eax
test ebp, ebp
jne 0x1800315c9
mov rdx, qword [0x1801b1408]
cmp rdx, qword [0x1801b1410]
mov rax, qword [0x1801af150]
mov qword [rsp + 0x98], rax
je 0x180031400
mov qword [rdx], rax
add qword [0x1801b1408], 8
jmp 0x180031414
cmp ebx, 0xffffffff
je 0x180031307
mov eax, ebx
imul rdx, rax, 0x38
test byte [rdx + r8 + 0x20], 2
jne 0x1800313f8
mov r8d, r13d
lea rcx, [rsp + 0x30]
mov edx, ebx
call fcn.1800c41bc
mov ebp, eax
test eax, eax
jne 0x18003130c
mov edx, r13d
mov ecx, ebx
call fcn.1800c4568
mov r15, qword [rsp + 0x30]
mov ebp, eax
test r15, r15
je 0x18003130c
mov eax, dword [rsp + 0x3c]
test eax, eax
je 0x1800313e1
mov rbx, r15
mov esi, eax
nop dword [rax]
nop word [rax + rax]
mov r8d, dword [rbx]
xor edx, edx
lea ecx, [rdx + 0x5a]
call qword [sym.imp.KERNEL32.dll_OpenThread]
mov rdi, rax
test rax, rax
je 0x1800313d8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_ResumeThread]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
add rbx, 4
sub rsi, r13
jne 0x1800313b0
mov rcx, qword [0x1801b06a0]
mov r8, r15
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x18003130c
mov ebp, r12d
jmp 0x18003130c
lea r8, [rsp + 0x98]
lea rcx, [0x1801b1400]
call fcn.180033e10
mov rcx, qword [0x1801af148]
lea r8, [0x1801af108]
lea rdx, [0x180030380]
call fcn.1800c4778
test eax, eax
jne 0x1800315c9
mov rdi, qword [0x1801af148]
mov rbx, r14
lock cmpxchg dword [0x1801b069c], r13d
je 0x180031473
nop dword [rax + rax]
cmp rbx, 0x20
jae 0x18003145a
xor ecx, ecx
jmp 0x18003145d
mov ecx, r13d
call qword [sym.imp.KERNEL32.dll_Sleep]
inc rbx
xor eax, eax
lock cmpxchg dword [0x1801b069c], r13d
jne 0x180031450
cmp qword [0x1801b06a0], r14
je 0x1800315c2
test rdi, rdi
jne 0x180031492
mov ecx, r13d
call fcn.1800c4674
mov r12d, eax
jmp 0x1800314c5
mov ecx, dword [0x1801b1dec]
mov ebx, r14d
test ecx, ecx
je 0x1800314bf
mov r8, qword [0x1801b1de0]
mov rax, r8
nop dword [rax]
cmp rdi, qword [rax]
je 0x18003150c
inc ebx
add rax, 0x38
cmp ebx, ecx
jb 0x1800314b0
mov r12d, 4
xchg dword [0x1801b069c], r14d
test r12d, r12d
jne 0x1800315c9
mov rdx, qword [0x1801b1408]
cmp rdx, qword [0x1801b1410]
mov rax, qword [0x1801af148]
mov qword [rsp + 0xa0], rax
je 0x1800315a8
mov qword [rdx], rax
movzx eax, r13b
add qword [0x1801b1408], 8
jmp 0x1800315cb
cmp ebx, 0xffffffff
je 0x1800314bf
mov eax, ebx
imul rdx, rax, 0x38
test byte [rdx + r8 + 0x20], 2
jne 0x1800314c5
mov r8d, r13d
lea rcx, [rsp + 0x40]
mov edx, ebx
call fcn.1800c41bc
mov r12d, eax
test eax, eax
jne 0x1800314c5
mov edx, r13d
mov ecx, ebx
call fcn.1800c4568
mov rbp, qword [rsp + 0x40]
mov r12d, eax
test rbp, rbp
je 0x1800314c5
mov eax, dword [rsp + 0x4c]
test eax, eax
je 0x180031591
mov rdi, rbp
mov esi, eax
nop dword [rax]
mov r8d, dword [rdi]
xor edx, edx
lea ecx, [rdx + 0x5a]
call qword [sym.imp.KERNEL32.dll_OpenThread]
mov rbx, rax
test rax, rax
je 0x180031588
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_ResumeThread]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
add rdi, 4
sub rsi, r13
jne 0x180031560
mov rcx, qword [0x1801b06a0]
mov r8, rbp
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1800314c5
lea r8, [rsp + 0xa0]
lea rcx, [0x1801b1400]
call fcn.180033e10
movzx eax, r13b
jmp 0x1800315cb
xchg dword [0x1801b069c], r14d
xor al, al
mov rbx, qword [rsp + 0xa8]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret