Function at 0x4348d0
Capabilities:
Create thread

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
xor r13d, r13d
movzx ebp, byte [rcx + 0x5b]
sub ebp, 1
mov byte [rcx + 0x58], 1
mov rsi, rcx
test ebp, ebp
jle 0x434bd3
nop dword [rax]
movzx eax, byte [rsi + 0x5a]
lea eax, [r13 + rax + 1]
cdq
idiv ebp
movsxd rbx, edx
lea rax, [rbx + rbx*2]
lea rax, [rbx + rax*4]
shl rax, 3
mov edx, dword [rsi + rax + 0x68]
lea r12, [rsi + rax + 0x60]
test edx, edx
je 0x4349cb
mov r14, qword [r12]
test r14, r14
je 0x4349cb
cmp qword [r14 + 0x10], 0
je 0x4349a8
mov r15, qword [r14]
nop dword [rax + rax]
mov r8d, 1
mov edx, 0xffffffff
mov rcx, r15
call qword [0x0060da28]
mov edi, eax
cmp eax, 0xc0
je 0x434948
mov rcx, qword [r14]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test edi, edi
je 0x4349a8
mov rcx, r14
call fcn.0040c4a0
mov qword [r12], 0
mov eax, 1
mov dword [r12 + 8], 0
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rdi, qword [r14 + 0x20]
mov rcx, r14
call fcn.0040c4a0
mov qword [r12], 0
mov dword [r12 + 8], 0
mov eax, edi
test edi, edi
jne 0x434990
lea rax, [rbx + rbx*2]
lea rax, [rbx + rax*4]
cmp qword [rsi + rax*8 + 0x60], 0
je 0x4349e8
add r13d, 1
cmp r13d, ebp
jne 0x434900
cmp ebp, r13d
je 0x434b24
lea rax, [rsi + 0x60]
mov rdi, r12
mov rcx, qword [r12 + 0x28]
movabs rdx, 0x4ec4ec4ec4ec4ec5
sub rdi, rax
movdqu xmm0, xmmword [rsi + 0x38]
mov rax, rdi
sar rax, 3
imul rax, rdx
mov byte [rsi + 0x5a], al
mov rax, qword [rsi + 0x48]
movups xmmword [r12 + 0x20], xmm0
mov qword [r12 + 0x30], rax
mov qword [rsi + 0x38], 0
mov dword [rsi + 0x48], 0
test rcx, rcx
je 0x434ba8
mov qword [rsi + 0x40], rcx
call qword [0x0060de98]
mov dword [rsi + 0x54], eax
mov eax, dword [0x0060de60]
mov qword [r12], 0
test eax, eax
jne 0x434b00
mov ecx, 0x28
call qword [0x0060de80]
mov rbx, rax
test rbx, rbx
je 0x434bc9
cmp byte [0x0060de64], 0
je 0x434b50
mov rax, qword [0x0060dff0]
test rax, rax
je 0x434aa6
mov ecx, 0xc8
call rax
test eax, eax
jne 0x434b50
lea rax, [0x004348b0]
mov qword [rbx + 0x18], r12
mov r9, rbx
xor edx, edx
mov qword [rbx + 0x10], rax
lea rax, [rbx + 8]
lea r8, [0x0040c470]
xor ecx, ecx
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0
call qword [sym.imp.msvcrt.dll__beginthreadex]
mov qword [rbx], rax
test rax, rax
je 0x434b50
cmp qword [rbx + 0x10], 0
je 0x434b77
mov qword [r12], rbx
xor eax, eax
jmp 0x434990
mov rcx, qword [0x0066ea40]
test rcx, rcx
je 0x434b12
call qword [0x0060dee0]
mov ecx, 0x28
call fcn.00410e20
mov rbx, rax
jmp 0x434a75
movsxd rbp, ebp
lea rdx, [rsi + 0x38]
lea rax, [rbp + rbp*2]
lea rax, [rbp + rax*4]
lea rcx, [rsi + rax*8 + 0x60]
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp fcn.00434590
mov qword [rbx], 0
mov qword [rbx + 8], 0
mov qword [rbx + 0x10], 0
mov qword [rbx + 0x18], 0
mov qword [rbx + 0x20], 0
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
lea rdx, [r12 + 0x20]
mov rcx, r12
mov dword [rbx + 8], eax
call fcn.00434590
mov dword [r12 + 8], 1
cdqe
mov qword [rbx + 0x20], rax
jmp 0x434aed
cmp qword [rsi + 0x40], 0
je 0x434a51
movsxd rcx, dword [rsi + 0x54]
call fcn.00410f70
mov qword [rsi + 0x40], rax
test rax, rax
jne 0x434a51
mov eax, 7
jmp 0x434990
xor r12d, r12d
jmp 0x4349e8