Function at 0x1401937ec
Capabilities:
Create thread

Disassembly:
mov rax, rsp
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rax - 0x58]
sub rsp, 0x120
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
mov rax, qword [0x140231eb8]
xor rax, rsp
mov qword [rbp - 8], rax
mov r15b, r8b
mov rsi, rdx
xor r12d, r12d
mov dword [rsp + 0x48], r12d
mov qword [rbp - 0x48], r12
mov qword [rbp - 0x38], r12
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x38], r12
lea ebx, [r12 + 7]
mov qword [rbp - 0x30], rbx
mov word [rbp - 0x48], r12w
mov edi, 0x1000
cmp qword [r9 + 0x10], r12
jne 0x1401939d1
mov qword [rsp + 0x78], r12
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x78], xmm0
xor r8d, r8d
lea rdx, [0x1401dbff0]
lea rcx, [rsp + 0x78]
call fcn.1400041b8
nop
mov qword [rbp - 0x28], r12
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x18], xmm0
lea r8d, [r12 + 0xe]
lea rdx, str.ExternalViewer
lea rcx, [rbp - 0x28]
call fcn.1400041b8
nop
mov qword [rsp + 0x58], r12
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
lea r8d, [r12 + 6]
lea rdx, [0x1401dceb0]
lea rcx, [rsp + 0x58]
call fcn.1400041b8
nop
lea r9, [rsp + 0x78]
lea r8, [rbp - 0x48]
lea rdx, [rbp - 0x28]
lea rcx, [rsp + 0x58]
call fcn.1401161b8
nop
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x140193914
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, rdi
jb 0x14019390f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140193f42
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x68], xmm0
mov word [rsp + 0x58], r12w
mov rdx, qword [rbp - 0x10]
cmp rdx, 8
jb 0x140193964
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, rdi
jb 0x14019395f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140193f48
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rbp - 0x18], xmm0
mov word [rbp - 0x28], r12w
mov rdx, qword [rbp - 0x70]
cmp rdx, 8
jb 0x1401939b3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, rdi
jb 0x1401939ae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140193f4e
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rbp - 0x78], xmm0
mov word [rsp + 0x78], r12w
lea rcx, [rbp - 0x48]
call fcn.1400fd86c
jmp 0x1401939dd
mov rdx, r9
lea rcx, [rbp - 0x48]
call fcn.140004958
cmp qword [rbp - 0x38], r12
jne 0x1401939eb
mov r14b, r12b
jmp 0x140193ec8
mov qword [rbp - 0x68], r12
mov qword [rbp - 0x58], r12
mov qword [rbp - 0x50], r12
mov rdx, rsi
cmp qword [rsi + 0x18], 8
jb 0x140193a04
mov rdx, qword [rsi]
mov r8, qword [rsi + 0x10]
lea rcx, [rbp - 0x68]
call fcn.1400042c0
nop
lea rcx, [rbp - 0x68]
call fcn.1401296f8
lea rcx, [rbp - 0x48]
call fcn.1400cb9f4
movabs rbx, 0x7ffffffffffffffe
mov r14d, 1
test al, al
jne 0x140193c01
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x70], 7
mov word [rsp + 0x58], r12w
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 0x48]
call fcn.140162fb0
cmp qword [rsp + 0x68], r12
je 0x140193baf
lea eax, [r14 + 0x1f]
mov word [rsp + 0x40], ax
mov rax, qword [rsp + 0x68]
cmp rax, rbx
je 0x140193f54
lea r9, [rsp + 0x58]
cmp qword [rsp + 0x70], 8
cmovae r9, qword [rsp + 0x58]
mov qword [rsp + 0x30], r14
lea rcx, [rsp + 0x40]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x58]
mov dl, byte [rsp + 0x40]
lea rcx, [rbp - 0x28]
call fcn.140004684
mov dword [rsp + 0x48], r14d
lea rdx, [rbp - 0x68]
cmp qword [rbp - 0x50], 8
cmovae rdx, qword [rbp - 0x68]
mov r8, qword [rbp - 0x58]
lea rcx, [rbp - 0x28]
call fcn.140006c24
mov qword [rsp + 0x78], r12
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x78], xmm0
movups xmm6, xmmword [rax]
movups xmmword [rsp + 0x78], xmm6
movups xmm7, xmmword [rax + 0x10]
movdqu xmmword [rbp - 0x78], xmm7
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 7
mov word [rax], r12w
lea edi, [r14 + 2]
mov dword [rsp + 0x48], edi
mov rdx, qword [rbp - 0x50]
cmp rdx, 8
jb 0x140193b5c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140193b57
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140193f5a
call fcn.1401af36c
mov qword [rbp - 0x58], r12
mov qword [rbp - 0x50], 7
mov word [rbp - 0x68], r12w
movups xmmword [rbp - 0x68], xmm6
movups xmmword [rbp - 0x58], xmm7
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rbp - 0x78], xmm0
mov word [rsp + 0x78], r12w
and edi, 0xfffffffd
mov dword [rsp + 0x48], edi
movdqu xmmword [rbp - 0x78], xmm0
mov word [rsp + 0x78], r12w
and edi, 0xfffffffe
mov dword [rsp + 0x48], edi
lea rcx, [rbp - 0x28]
call fcn.140006b94
mov edi, 0x1000
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x140193bed
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, rdi
jb 0x140193be8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140193f60
call fcn.1401af36c
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x70], 7
mov word [rsp + 0x58], r12w
mov ecx, dword [0x14027f398]
mov rax, qword gs:[0x58]
mov edx, 4
mov rcx, qword [rax + rcx*8]
lea rdi, [0x14025c1c0]
mov eax, dword [rdx + rcx]
cmp dword [0x14025c290], eax
jg 0x140193f66
mov r8b, r14b
mov rdx, rsi
mov rcx, rdi
call fcn.140194fa0
mov qword [rbp - 0x28], r12
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x18], xmm0
xor r8d, r8d
lea rdx, [0x1401dbff0]
lea rcx, [rbp - 0x28]
call fcn.1400041b8
nop
mov qword [rsp + 0x78], r12
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x78], xmm0
xor r8d, r8d
lea rdx, [0x1401dbff0]
lea rcx, [rsp + 0x78]
call fcn.1400041b8
nop
lea rax, [rsp + 0x58]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x70], r12
mov rdi, qword [rbp - 0x38]
lea rsi, [rbp - 0x48]
cmp qword [rbp - 0x30], 8
cmovae rsi, qword [rbp - 0x48]
cmp rdi, rbx
ja 0x140193fa5
mov qword [rsp + 0x70], 7
cmp rdi, 8
jae 0x140193cdf
mov qword [rsp + 0x68], rdi
mov r8d, 0x10
mov rdx, rsi
lea rcx, [rsp + 0x58]
call fcn.1401b1520
jmp 0x140193d66
mov rax, rdi
or rax, 7
cmp rax, rbx
jbe 0x140193cfb
movabs rax, 0x7fffffffffffffff
lea rcx, [rax + rax]
jmp 0x140193d2d
mov rbx, rax
mov ecx, 0xa
cmp rax, rcx
cmovb rbx, rcx
lea rcx, [rbx + 1]
movabs rax, 0x7fffffffffffffff
cmp rcx, rax
ja 0x140193fab
add rcx, rcx
cmp rcx, 0x1000
jb 0x140193d34
call fcn.14000417c
jmp 0x140193d43
test rcx, rcx
je 0x140193d40
call fcn.1401af330
jmp 0x140193d43
mov rax, r12
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x70], rbx
lea r8, [rdi*2 + 2]
mov rdx, rsi
mov rcx, rax
call fcn.1401b1520
nop
mov r9b, r15b
xor r9b, r14b
lea rax, [rbp - 0x28]
mov qword [rsp + 0x28], rax
lea rsi, [0x14025c1c0]
mov qword [rsp + 0x20], rsi
lea r8, [rbp - 0x68]
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x58]
call fcn.1401977f8
test al, al
sete bl
mov rdx, qword [rbp - 0x70]
mov edi, 0x1000
cmp rdx, 8
jb 0x140193ddb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, rdi
jb 0x140193dd6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140193fb1
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rbp - 0x78], xmm0
mov word [rsp + 0x78], r12w
mov rdx, qword [rbp - 0x10]
cmp rdx, 8
jb 0x140193e2a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, rdi
jb 0x140193e25
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140193fb7
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rbp - 0x18], xmm0
mov word [rbp - 0x28], r12w
test bl, bl
je 0x140193e4d
mov rcx, rsi
call fcn.1401924c0
mov r14b, r12b
jmp 0x140193e7a
test r15b, r15b
je 0x140193e71
cmp qword [0x14025c1c0], r12
je 0x140193e71
mov r8, rsi
mov edx, 0x10000
lea rcx, [0x1401927b0]
call fcn.1401bcb68
jmp 0x140193e7a
mov rcx, rsi
call fcn.1401924c0
nop
mov rdx, qword [rbp - 0x50]
cmp rdx, 8
jb 0x140193eb6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x68]
mov rax, rcx
cmp rdx, rdi
jb 0x140193eb1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140193fbd
call fcn.1401af36c
mov qword [rbp - 0x58], r12
mov ebx, 7
mov qword [rbp - 0x50], rbx
mov word [rbp - 0x68], r12w
mov rdx, qword [rbp - 0x30]
cmp rdx, 8
jb 0x140193f00
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, rdi
jb 0x140193efb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140193f3c
call fcn.1401af36c
mov qword [rbp - 0x38], r12
mov qword [rbp - 0x30], rbx
mov word [rbp - 0x48], r12w
mov al, r14b
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.1401af480
lea r11, [rsp + 0x120]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.140006bf8
nop
call fcn.1401b6544
nop
call fcn.1401b6544
int3
lea rcx, [0x14025c290]
call fcn.1401afbd8
cmp dword [0x14025c290], 0xffffffff
jne 0x140193c2f
mov rcx, rdi
call fcn.1401916d0
lea rcx, [0x1401d8ff0]
call fcn.1401af704
nop
lea rcx, [0x14025c290]
call fcn.1401afb78
jmp 0x140193c2f
call fcn.140006bf8
int3
call fcn.140006b74
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
int3