Function at 0x4fcb50
Capabilities:
Create thread

Disassembly:
push rbp
push rsi
push rbx
sub rsp, 0x90
mov rbp, rsp
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x88], 0
mov qword [rbp + 0x70], 0
mov qword [rbp + 0x68], 0
mov qword [rbp + 0x58], 0
mov qword [rbp + 0x48], rbp
mov qword [rbp + 0xb0], rcx
mov qword [rbp + 0xb8], rdx
nop
mov rax, qword [rbp + 0xb0]
cmp qword [rax + 0x660], 0
jne 0x4fcbf5
mov rcx, qword [0x004b8810]
mov dl, 1
call fcn.004c7400
mov qword [rbp + 0x78], rax
mov rax, qword [rbp + 0x78]
mov rcx, qword [rbp + 0xb0]
mov qword [rax + 0x18], rcx
mov rax, qword [rbp + 0xb0]
lea rcx, [rax + 0x660]
cmp qword [rbp + 0x78], 0
jne 0x4fcbe8
mov rdx, qword [rbp + 0x78]
jmp 0x4fcbf0
mov rax, qword [rbp + 0x78]
lea rdx, [rax + 0x70]
call fcn.00415fa0
mov rcx, qword [rbp + 0xb8]
mov rax, qword [rbp + 0xb0]
mov rdx, qword [rax + 0x660]
call fcn.00415fa0
mov rax, qword [rbp + 0xb0]
cmp byte [rax + 0x698], 0
je 0x4fcfbf
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax + 0x660]
mov rcx, rax
mov rax, qword [rax]
call qword [rax + 0x28]
test eax, eax
jne 0x4fcfbf
lea rcx, [rbp + 0x58]
mov rax, qword [rbp + 0xb0]
mov rdx, qword [rax + 0x660]
call fcn.00415fa0
lea rcx, [rbp + 0x40]
mov rax, qword [rbp + 0xb0]
mov rdx, qword [rax + 0x660]
lea r8, [0x004fd0a4]
call fcn.00415ff0
mov rcx, qword [rbp + 0x40]
mov rax, qword [rbp + 0x40]
mov rbx, qword [rax]
call qword [rbx + 0x30]
mov dword [rbp + 0x84], 0
mov rcx, rbp
call fcn.004fc4e0
mov rcx, qword [rbp + 0xb0]
lea rdx, [rbp + 0x68]
lea r8, [0x004fd0c0]
call fcn.004c5100
mov rcx, qword [rbp + 0x68]
mov dl, 0x7c
mov rax, qword [0x00bb8678]
call qword [rax]
mov ecx, 1
mov dword [rbp + 0x3c], eax
mov dword [rbp + 0x64], ecx
mov eax, dword [rbp + 0x3c]
cmp dword [rbp + 0x64], eax
jg 0x4fcdbe
mov eax, dword [rbp + 0x3c]
add eax, 1
mov dword [rbp + 0x3c], eax
nop
lea rcx, [rbp + 0x70]
mov rdx, qword [rbp + 0x68]
mov r8d, dword [rbp + 0x64]
mov r9b, 0x7c
mov rbx, qword [0x00bb8a78]
call qword [rbx]
mov rcx, qword [0x00bc3698]
call fcn.00413950
xor rcx, rcx
mov ebx, eax
mov dword [rbp + 0x60], ecx
cmp dword [rbp + 0x60], ebx
jg 0x4fcda3
add ebx, 1
mov rax, qword [0x00bc3698]
movsxd rcx, dword [rbp + 0x60]
mov rdx, rcx
add rcx, rcx
add rcx, rcx
add rcx, rcx
sub rcx, rdx
mov rcx, qword [rax + rcx*8]
mov rdx, qword [rbp + 0x70]
mov rax, qword [0x00bb6bc0]
call qword [rax]
test al, al
je 0x4fcd96
mov rax, qword [0x00bc3698]
movsxd rcx, dword [rbp + 0x60]
mov rdx, rcx
add rcx, rcx
add rcx, rcx
add rcx, rcx
sub rcx, rdx
cmp byte [rax + rcx*8 + 0x30], 0
je 0x4fcda3
mov rcx, rbp
mov rax, qword [0x00bc3698]
movsxd rdx, dword [rbp + 0x60]
mov r8, rdx
add rdx, rdx
add rdx, rdx
add rdx, rdx
sub rdx, r8
mov rdx, qword [rax + rdx*8]
lea r8, [0x004fd0d4]
call fcn.004fb4e0
jmp 0x4fcda3
add dword [rbp + 0x60], 1
cmp dword [rbp + 0x60], ebx
jne 0x4fcd17
nop
jmp 0x4fcdae
add dword [rbp + 0x64], 1
mov eax, dword [rbp + 0x3c]
cmp dword [rbp + 0x64], eax
jne 0x4fccde
nop
mov rcx, qword [rbp + 0xb0]
call fcn.004c1ad0
test al, al
je 0x4fcdf6
mov rax, qword [rbp + 0xb0]
cmp qword [rax + 0x598], 0
je 0x4fcdf6
mov rcx, rbp
lea rdx, [0x004fd118]
lea r8, [0x004fd0d4]
call fcn.004fb4e0
mov rcx, qword [rbp + 0xb0]
call fcn.004c1b00
test al, al
je 0x4fce2d
mov rax, qword [rbp + 0xb0]
cmp qword [rax + 0x598], 0
je 0x4fce2d
mov rcx, rbp
lea rdx, [0x004fd140]
lea r8, [0x004fd0d4]
call fcn.004fb4e0
mov rcx, qword [rbp + 0xb0]
call fcn.004c1b30
test al, al
je 0x4fce5d
cmp qword [0x00b2dbf8], 0
je 0x4fce5d
mov rcx, rbp
lea rdx, [0x004fd164]
lea r8, [0x004fd0d4]
call fcn.004fb4e0
mov rcx, qword [rbp + 0x58]
mov rax, qword [rbp + 0x58]
mov rbx, qword [rax]
call qword [rbx + 0x18]
nop
xor rax, rax
mov ebx, dword [rbp + 0x84]
sub ebx, 1
mov dword [rbp + 0x64], eax
cmp dword [rbp + 0x64], ebx
jg 0x4fcebf
add ebx, 1
mov rcx, qword [rbp + 0x58]
mov rax, qword [rbp + 0x88]
movsxd rdx, dword [rbp + 0x64]
add rdx, rdx
mov rdx, qword [rax + rdx*8]
mov rax, qword [rbp + 0x88]
movsxd r8, dword [rbp + 0x64]
add r8, r8
mov r8, qword [rax + r8*8 + 8]
mov rax, qword [rbp + 0x58]
mov rsi, qword [rax]
call qword [rsi + 0x50]
add dword [rbp + 0x64], 1
cmp dword [rbp + 0x64], ebx
jne 0x4fce83
nop
jmp 0x4fceca
mov rcx, qword [rbp + 0x58]
mov rax, qword [rbp + 0x58]
mov rbx, qword [rax]
call qword [rbx + 0x20]
mov rax, qword [rbp + 0xb0]
cmp byte [rax + 0x710], 0
jne 0x4fcfbf
mov rax, qword [rbp + 0xb0]
cmp byte [rax + 0x711], 0
jne 0x4fcf09
call sub.kernel32.dll_GetCurrentThreadId
cmp eax, dword [0x00b32188]
jne 0x4fcf5a
mov ecx, 0xfa
call fcn.004ac300
test al, al
jne 0x4fcf5a
xor rcx, rcx
xor rdx, rdx
lea r8, [fcn.004fa1f0]
mov r9, qword [rbp + 0xb0]
mov dword [rsp + 0x20], 0
mov rax, qword [rbp + 0xb0]
lea rax, [rax + 0x6e8]
mov qword [rsp + 0x28], rax
call sub.kernel32.dll_CreateThread
mov rcx, qword [rbp + 0xb0]
mov qword [rcx + 0x6e0], rax
mov rax, qword [rbp + 0xb0]
cmp qword [rax + 0x6e0], 0
jne 0x4fcfa6
mov rcx, qword [rbp + 0xb0]
call fcn.004c07e0
test al, al
je 0x4fcf98
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax + 0x6f0]
mov rcx, rax
xor rdx, rdx
mov r8b, 1
mov rax, qword [rax]
call qword [rax + 0x68]
mov rcx, qword [rbp + 0xb0]
call fcn.004fa1f0
jmp 0x4fcfbf
mov rax, qword [rbp + 0xb0]
mov rcx, qword [rax + 0x6e0]
mov edx, 1
call sub.kernel32.dll_SetThreadPriority
nop
lea rcx, [rbp + 0x40]
call fcn.00415f60
lea rcx, [rbp + 0x58]
call fcn.00415f60
lea rcx, [rbp + 0x68]
mov edx, 2
call fcn.00410160
lea rcx, [rbp + 0x88]
mov rdx, qword [0x004fb490]
call fcn.00413ec0
mov rax, qword [rbp + 0xb8]
lea rsp, [rbp + 0x90]
pop rbx
pop rsi
pop rbp
ret