Function at 0x140002260
Capabilities:
Create thread

Disassembly:
sub rsp, 0x58
xor edx, edx
mov qword [rsp + 0x50], rdi
lea rcx, [0x140050a68]
movaps xmmword [rsp + 0x40], xmm7
lea r8d, [rdx + 0x40]
call fcn.140015930
lea rdx, [rsp + 0x60]
mov qword [rsp + 0x60], 0
lea rcx, [0x140050a70]
call fcn.14003cc50
xor edi, edi
test al, al
je 0x1400022bd
mov qword [rsp + 0x28], rdi
lea r8, [0x140002050]
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
lea rdx, [rsp + 0x60]
mov qword [rsp + 0x60], rdi
lea rcx, str.3
call fcn.14003cc50
test al, al
je 0x1400022f4
mov qword [rsp + 0x28], rdi
lea r8, [0x140001e10]
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
lea rdx, [rsp + 0x60]
mov qword [rsp + 0x60], rdi
lea rcx, [0x140050aa0]
call fcn.14003cc50
test al, al
je 0x14000232b
mov qword [rsp + 0x28], rdi
lea r8, [0x140001cd0]
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
movss xmm7, dword [0x140057228]
xorps xmm0, xmm0
movaps xmm1, xmm7
call fcn.14001b070
lea rcx, [0x140050ac0]
mov qword [rsp + 0x60], rdi
lea rdx, [rsp + 0x60]
call fcn.14003cc50
test al, al
je 0x140002375
mov qword [rsp + 0x28], rdi
lea r8, [0x140001dd0]
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov rax, qword [0x140061d70]
mov rcx, qword [rax + 0x3ef8]
cmp byte [rcx + 0xbb], dil
jne 0x1400023a6
mov eax, dword [rcx + 0x1b4]
movss xmm1, dword [0x140056fc0]
neg eax
sbb ecx, ecx
add ecx, 6
call fcn.14003eac0
mov qword [rsp + 0x68], rbx
call fcn.140046310
mov rdx, qword [0x140061d70]
mov rax, qword [rdx + 0x3ef8]
cmp byte [rax + 0xbb], dil
jne 0x140002485
mov rbx, qword [rdx + 0x4bc0]
test rbx, rbx
je 0x140002485
xor r9d, r9d
mov qword [rsp + 0x20], rdi
xor r8d, r8d
lea rdx, [0x140050ad8]
mov rcx, rbx
call fcn.1400481e0
test al, al
je 0x14000247e
movsx rax, word [rbx + 0x70]
imul rcx, rax, 0x2c
mov rax, qword [rbx + 8]
mov ecx, dword [rcx + rax]
call fcn.1400186d0
lea r8, [0x140060050]
lea rdx, [0x140050ae0]
call fcn.14004a770
lea r8, [0x140060051]
lea rdx, [0x140050af0]
call fcn.14004a770
mov rdx, qword [0x140061d70]
mov rax, qword [rdx + 0x3ef8]
cmp byte [rax + 0xbb], dil
jne 0x140002485
mov r8, qword [rdx + 0x4bc0]
test r8, r8
je 0x140002485
movsx rax, word [r8 + 0x70]
imul rcx, rax, 0x2c
mov rax, qword [r8 + 8]
test byte [rcx + rax + 4], 8
jne 0x140002485
mov rax, qword [rdx + 0x3ef8]
dec dword [rax + 0xf0]
jmp 0x140002485
mov rdx, qword [0x140061d70]
mov rax, qword [rdx + 0x3ef8]
cmp byte [rax + 0xbb], dil
jne 0x140002653
mov rbx, qword [rdx + 0x4bc0]
test rbx, rbx
je 0x140002653
xor r9d, r9d
mov qword [rsp + 0x20], rdi
xor r8d, r8d
lea rdx, [0x140050af8]
mov rcx, rbx
call fcn.1400481e0
test al, al
je 0x14000264c
movsx rax, word [rbx + 0x70]
imul rcx, rax, 0x2c
mov rax, qword [rbx + 8]
mov ecx, dword [rcx + rax]
call fcn.1400186d0
lea r8, [0x140060054]
lea rdx, [0x140050b00]
call fcn.14004a770
movaps xmm1, xmm7
xorps xmm0, xmm0
call fcn.14001b070
lea r8, [0x14006005c]
lea rdx, [0x140050b08]
call fcn.14004a770
mov rax, qword [0x140061d70]
mov rcx, qword [rax + 0x3ef8]
cmp byte [rcx + 0xbb], dil
jne 0x140002542
mov eax, dword [rcx + 0x1b4]
movss xmm1, dword [0x140056fc0]
neg eax
sbb ecx, ecx
add ecx, 6
call fcn.14003eac0
lea rcx, [0x140050b18]
call fcn.14003c2d0
cmp dword [0x140060058], edi
lea rcx, [0x140050b28]
sete dl
call fcn.14003e330
mov ecx, dword [0x140060058]
test al, al
movaps xmm1, xmm7
xorps xmm0, xmm0
cmovne ecx, edi
mov dword [0x140060058], ecx
call fcn.14001b070
cmp dword [0x140060058], 1
lea rcx, [0x140050b30]
sete dl
call fcn.14003e330
mov ecx, dword [0x140060058]
test al, al
mov edx, 1
movaps xmm1, xmm7
cmovne ecx, edx
xorps xmm0, xmm0
mov dword [0x140060058], ecx
call fcn.14001b070
cmp dword [0x140060058], 2
lea rcx, [0x140050b38]
sete dl
call fcn.14003e330
mov ecx, dword [0x140060058]
lea r9, [0x1400610a8]
test al, al
mov edx, 2
lea rax, [0x1400610b0]
mov qword [rsp + 0x28], rax
cmovne ecx, edx
lea rax, [0x1400610ac]
mov dword [0x140060058], ecx
mov qword [rsp + 0x20], rax
call fcn.14004aca0
mov rdx, qword [0x140061d70]
mov rax, qword [rdx + 0x3ef8]
cmp byte [rax + 0xbb], dil
jne 0x140002653
mov r8, qword [rdx + 0x4bc0]
test r8, r8
je 0x140002653
movsx rax, word [r8 + 0x70]
imul rcx, rax, 0x2c
mov rax, qword [r8 + 8]
test byte [rcx + rax + 4], 8
jne 0x140002653
mov rax, qword [rdx + 0x3ef8]
dec dword [rax + 0xf0]
jmp 0x140002653
mov rdx, qword [0x140061d70]
mov rax, qword [rdx + 0x3ef8]
cmp byte [rax + 0xbb], dil
jne 0x14000272c
mov rbx, qword [rdx + 0x4bc0]
test rbx, rbx
je 0x14000272c
xor r9d, r9d
mov qword [rsp + 0x20], rdi
xor r8d, r8d
lea rdx, [0x140050b50]
mov rcx, rbx
call fcn.1400481e0
test al, al
je 0x140002725
movsx rax, word [rbx + 0x70]
imul rcx, rax, 0x2c
mov rax, qword [rbx + 8]
mov ecx, dword [rcx + rax]
call fcn.1400186d0
lea r8, [0x140060052]
lea rdx, [0x140050b58]
call fcn.14004a770
movaps xmm1, xmm7
xorps xmm0, xmm0
call fcn.14001b070
lea r8, [0x140060053]
lea rdx, [0x140050b68]
call fcn.14004a770
mov rdx, qword [0x140061d70]
mov rax, qword [rdx + 0x3ef8]
cmp byte [rax + 0xbb], dil
jne 0x14000272c
mov r8, qword [rdx + 0x4bc0]
test r8, r8
je 0x14000272c
movsx rax, word [r8 + 0x70]
imul rcx, rax, 0x2c
mov rax, qword [r8 + 8]
test byte [rcx + rax + 4], 8
jne 0x14000272c
mov rax, qword [rdx + 0x3ef8]
dec dword [rax + 0xf0]
jmp 0x14000272c
mov rdx, qword [0x140061d70]
mov rax, qword [rdx + 0x3ef8]
movaps xmm7, xmmword [rsp + 0x40]
cmp byte [rax + 0xbb], dil
jne 0x1400027d5
mov rbx, qword [rdx + 0x4bc0]
test rbx, rbx
je 0x1400027d5
xor r9d, r9d
mov qword [rsp + 0x20], rdi
xor r8d, r8d
lea rdx, [0x140050b78]
mov rcx, rbx
call fcn.1400481e0
test al, al
je 0x1400027ce
movsx rax, word [rbx + 0x70]
imul rcx, rax, 0x2c
mov rax, qword [rbx + 8]
mov ecx, dword [rcx + rax]
call fcn.1400186d0
mov rdx, qword [0x140061d70]
mov rax, qword [rdx + 0x3ef8]
cmp byte [rax + 0xbb], dil
jne 0x1400027d5
mov r8, qword [rdx + 0x4bc0]
test r8, r8
je 0x1400027d5
movsx rax, word [r8 + 0x70]
imul rcx, rax, 0x2c
mov rax, qword [r8 + 8]
test byte [rcx + rax + 4], 8
jne 0x1400027d5
mov rax, qword [rdx + 0x3ef8]
dec dword [rax + 0xf0]
jmp 0x1400027d5
mov rdx, qword [0x140061d70]
mov rax, qword [rdx + 0x3ef8]
mov rdi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x68]
cmp byte [rax + 0xbb], 0
jne 0x140002809
mov eax, dword [rax + 0x1b4]
movss xmm1, dword [0x140056fc0]
neg eax
sbb ecx, ecx
add ecx, 6
call fcn.14003eac0
call fcn.1400467b0
add rsp, 0x58
jmp fcn.140017b30