Function at 0x1400319f0
Capabilities:
Terminate process

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x448
mov rax, qword [0x1401d08e8]
xor rax, rsp
mov qword [rsp + 0x440], rax
xorps xmm0, xmm0
movaps xmmword [rsp + 0x430], xmm0
cmp qword [0x1401d3280], 0
jne 0x140031a45
call fcn.1400324c0
test eax, eax
jne 0x140031c8e
cmp qword [0x1401d3280], 0
je 0x140031c8e
cmp ecx, 2
jge 0x140031bf1
movsxd rax, ecx
lea rcx, [0x1401d3280]
mov rcx, qword [rcx + rax*8]
not rcx
test rdx, rcx
jne 0x140031a89
mov rcx, qword [rsp + 0x440]
xor rcx, rsp
call fcn.140093b80
nop
add rsp, 0x448
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
and rcx, rdx
mov qword [rsp + rax*8 + 0x430], rcx
xor r13d, r13d
mov ecx, 0x39
xor edx, edx
call fcn.140033e40
mov qword [rsp + 0x20], rax
mov byte [rsp + 0x30], 0
mov ebp, 1
lea rsi, [rsp + 0x430]
lea r14, [rsp + 0x30]
lea r12, [0x140175a6e]
xor r15d, r15d
jmp 0x140031af7
mov eax, 0x3ff
sub eax, r13d
movsxd r8, eax
mov rcx, r14
mov rdx, rdi
call fcn.140120e60
mov rcx, r14
call fcn.14010b390
mov r13, rax
inc ebp
cmp ebp, 0x47
je 0x140031c3b
mov eax, ebp
call fcn.140033b60
test eax, eax
js 0x140031aec
mov rcx, rsi
mov edx, ebp
call fcn.140033ba0
test eax, eax
je 0x140031aec
mov rcx, rsi
mov edx, ebp
call fcn.140033ba0
test eax, eax
js 0x140031bf1
mov ecx, ebp
call fcn.1400330d0
test rax, rax
je 0x140031bf1
mov rdi, rax
cmp byte [rax], 0
je 0x140031bf1
cmp byte [rsp + 0x30], 0
je 0x140031acb
test r15, r15
je 0x140031be9
mov rcx, r15
call fcn.14010b390
mov rbx, rax
mov rcx, r12
call fcn.14010b390
mov rsi, rax
mov qword [rsp + 0x28], r15
movsxd r15, r13d
mov rcx, qword [rsp + 0x20]
call fcn.14010b390
mov r13, rax
mov rcx, rdi
call fcn.14010b390
add rbx, r15
add rbx, rsi
add rax, r13
add rax, rbx
mov ecx, 0x3ff
sub ecx, r15d
movsxd r8, ecx
cmp rax, 0x3ff
ja 0x140031cac
mov rcx, r14
mov rdx, r12
call fcn.140120e60
mov rcx, r14
call fcn.14010b390
shl rax, 0x20
movabs r8, 0x3ff00000000
sub r8, rax
sar r8, 0x20
mov rcx, r14
mov rdx, qword [rsp + 0x28]
call fcn.140120e60
mov r15, rdi
lea rsi, [rsp + 0x430]
jmp 0x140031ae1
mov r15, rdi
jmp 0x140031aec
mov ecx, 1
xor edx, edx
xor r8d, r8d
call fcn.140034050
mov ecx, 1
mov edx, 0x3a
xor r8d, r8d
call fcn.140034050
mov ecx, 1
xor edx, edx
xor r8d, r8d
call fcn.140034050
mov rcx, qword [rsp + 0x440]
xor rcx, rsp
call fcn.140093b80
mov ecx, 1
call fcn.140116780
test r15, r15
je 0x140031cf0
mov rsi, r15
mov eax, 0x3ff
sub eax, r13d
movsxd r8, eax
lea rdi, [rsp + 0x30]
mov rcx, rdi
mov rdx, qword [rsp + 0x20]
call fcn.140120e60
mov rcx, rdi
call fcn.14010b390
shl rax, 0x20
movabs r8, 0x3ff00000000
sub r8, rax
sar r8, 0x20
mov rcx, rdi
mov rdx, r15
call fcn.140120e60
jmp 0x140031cf0
mov ecx, 1
xor edx, edx
xor r8d, r8d
call fcn.140034050
mov ecx, 1
mov edx, 0x3b
jmp 0x140031c0a
lea rdi, [rsp + 0x30]
mov rcx, rdi
mov rdx, qword [rsp + 0x20]
call fcn.140120e60
mov rcx, rdi
call fcn.14010b390
shl rax, 0x20
movabs r8, 0x3ff00000000
sub r8, rax
sar r8, 0x20
mov rcx, rdi
mov rdx, qword [rsp + 0x28]
call fcn.140120e60
mov rcx, rdi
call fcn.14010b390
movzx ebx, byte [rsp + 0x30]
mov ecx, 1
xor edx, edx
xor r8d, r8d
call fcn.140034050
test bl, bl
je 0x140031c00
lea r9, [rsp + 0x30]
mov ecx, 1
mov edx, 0x38
mov r8d, 1
call fcn.140034050
jmp 0x140031c12