Function at 0x18007ff30
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x158]
sub rsp, 0x230
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x180310040]
xor rax, rsp
mov qword [rbp + 0x80], rax
mov r13, rcx
xor r14d, r14d
mov edi, r14d
mov dword [rsp + 0x50], r14d
lea ebx, [r14 + 1]
cmp byte [rcx + 8], r14b
je 0x18007fff1
mov ecx, ebx
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x18007fff1
cmp byte [0x180311682], dil
jne 0x18007fff1
lea rdx, [rbp]
mov rcx, qword [0x180313008]
call fcn.180066b10
mov edi, ebx
cmp qword [rax + 8], r14
jne 0x18007fff1
xor sil, sil
jmp 0x18007fff4
movzx esi, bl
test bl, dil
je 0x180080024
cmp byte [rbp + 0x10], 0
je 0x180080024
cmp qword [0x1803110d0], 0
je 0x180080024
mov rdx, qword [rbp + 8]
test rdx, rdx
je 0x180080024
mov rcx, qword [rbp]
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
call r8
nop
test sil, sil
je 0x180080070
cmp qword [0x1803110d0], 0
je 0x180081cee
mov rdx, qword [r13 + 0x38]
test rdx, rdx
je 0x180081cee
mov rcx, qword [r13 + 0x30]
mov rax, qword [rcx]
cmp byte [r13 + 0x40], 0
je 0x180080061
call qword [rax + 0xb0]
mov qword [r13 + 0x38], r14
jmp 0x180081cee
call qword [rax + 0xb8]
mov qword [r13 + 0x38], r14
jmp 0x180081cee
mov ecx, dword [0x1803110b4]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
mov ecx, dword [rdx + rax]
cmp dword [0x180313164], ecx
jle 0x1800800d9
lea rcx, [0x180313164]
call fcn.18009cab8
cmp dword [0x180313164], 0xffffffff
jne 0x1800800d9
mov qword [0x180313168], r14
lea rcx, [rbp - 0x48]
call fcn.18008f500
mov rdx, qword [rax]
mov qword [0x180313168], rdx
mov qword [0x180313170], 0xa
lea rcx, [0x180313164]
call fcn.18009ca4c
lea rcx, [rbp - 0x40]
call fcn.18008f500
mov rcx, qword [rbp - 0x40]
mov rdx, rcx
sub rdx, qword [0x180313168]
movabs rax, 0x431bde82d7b634db
imul rdx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, qword [0x180313170]
je 0x180080126
mov r8d, 0xff
cmovl ebx, r8d
test bl, bl
js 0x180081cee
mov qword [0x180313168], rcx
mov rcx, qword [0x180313008]
add rcx, 0x18
lea rdx, [rbp - 0x60]
call fcn.180067bc0
mov rdi, qword [0x180313008]
cmp qword [rdi + 0x28], 0
jne 0x180080157
xorps xmm6, xmm6
jmp 0x1800801ee
mov rbx, qword [rdi + 0x20]
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 0xc
lea rdx, str.getEyeHeight
lea rcx, [rsp + 0x20]
call fcn.180005470
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180311770]
call fcn.18006fb60
mov r8, rax
mov rdx, qword [rdi + 0x28]
mov rcx, rbx
call fcn.180065fa0
movaps xmm6, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x1800801e7
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800801e2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800801e2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009cfb4
mov rdi, qword [0x180313008]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm6
movsd xmm11, qword [rbp - 0x58]
addsd xmm11, xmm0
movsd qword [rbp - 0x40], xmm11
lea rcx, [rdi + 0x18]
lea rdx, [rsp + 0x40]
call fcn.180068140
movsd xmm14, qword [rsp + 0x40]
movsd xmm0, qword [0x180300830]
movsd xmm8, qword [0x180300950]
comisd xmm8, xmm14
jb 0x18008023f
addsd xmm14, xmm0
comisd xmm8, xmm14
jae 0x180080233
movsd xmm0, qword [0x180300958]
movsd xmm15, qword [0x180300818]
comisd xmm14, xmm15
jbe 0x18008026c
nop word [rax + rax]
addsd xmm14, xmm0
comisd xmm14, xmm15
ja 0x180080260
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp - 0x10], r14
mov byte [rbp - 8], 0
mov r12, qword [0x1803110d0]
mov qword [rbp - 0x18], r12
lea rax, vtable.EntityPlayer.0
mov qword [rbp - 0x20], rax
xorps xmm13, xmm13
movsd qword [rsp + 0x50], xmm13
movsd qword [rsp + 0x78], xmm13
mov rcx, qword [0x180313008]
add rcx, 0x70
lea rdx, [rbp]
call fcn.180082030
nop
mov rdi, qword [rbp]
movsd xmm10, qword [0x180300758]
mov rbx, qword [rbp + 8]
cmp rdi, rbx
je 0x180080c50
nop word [rax + rax]
cmp qword [rdi + 0x10], 0
je 0x180080c43
mov rax, qword [0x180313008]
mov rdx, qword [rdi + 0x10]
mov r8, qword [rax + 0x28]
cmp rdx, r8
je 0x180080c43
test rdx, rdx
je 0x180080326
test r8, r8
je 0x180080326
mov rcx, qword [rdi + 8]
mov rax, qword [rcx]
mov r9, qword [rax + 0xc0]
call r9
cmp al, 1
je 0x180080c43
mov rcx, rdi
call fcn.1800687a0
cmp eax, 0xa
jl 0x180080c43
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x28], rax
lea rdx, [rbp - 0x38]
mov rcx, rdi
call fcn.180068870
nop
mov rsi, qword [rbp - 0x38]
mov r15, qword [rbp - 0x30]
test r15, r15
jne 0x18008036f
movaps xmm7, xmm13
movaps xmm12, xmm13
movaps xmm6, xmm13
jmp 0x18008053f
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x68], r14
mov r8d, 4
lea rdx, str.minZ
lea rcx, [rbp - 0x80]
call fcn.180005470
nop
lea rdx, [rbp - 0x80]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r15
mov rcx, rsi
call r9
movaps xmm7, xmm0
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x1800803f9
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800803f4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180080d0d
call fcn.18009cfb4
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r14
mov r8d, 4
lea rdx, str.maxZ
lea rcx, [rsp + 0x58]
call fcn.180005470
nop
lea rdx, [rsp + 0x58]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r15
mov rcx, rsi
call r9
movaps xmm12, xmm0
mov rdx, qword [rsp + 0x70]
cmp rdx, 0xf
jbe 0x18008049b
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180080496
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180080d14
call fcn.18009cfb4
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], 0xf
mov byte [rsp + 0x58], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
mov r8d, 4
lea rdx, str.minZ
lea rcx, [rsp + 0x20]
call fcn.180005470
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r15
mov rcx, rsi
call r9
movaps xmm6, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x18008053f
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008053a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180080d1b
call fcn.18009cfb4
subsd xmm12, xmm6
mulsd xmm12, xmm10
addsd xmm12, xmm7
test r15, r15
jne 0x180080564
movaps xmm7, xmm13
movaps xmm8, xmm13
movaps xmm6, xmm13
jmp 0x180080734
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x68], r14
mov r8d, 4
lea rdx, str.minY
lea rcx, [rbp - 0x80]
call fcn.180005470
nop
lea rdx, [rbp - 0x80]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r15
mov rcx, rsi
call r9
movaps xmm7, xmm0
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x1800805ee
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800805e9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180080d22
call fcn.18009cfb4
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r14
mov r8d, 4
lea rdx, str.maxY
lea rcx, [rsp + 0x58]
call fcn.180005470
nop
lea rdx, [rsp + 0x58]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r15
mov rcx, rsi
call r9
movaps xmm8, xmm0
mov rdx, qword [rsp + 0x70]
cmp rdx, 0xf
jbe 0x180080690
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008068b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180080d29
call fcn.18009cfb4
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], 0xf
mov byte [rsp + 0x58], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
mov r8d, 4
lea rdx, str.minY
lea rcx, [rsp + 0x20]
call fcn.180005470
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r15
mov rcx, rsi
call r9
movaps xmm6, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x180080734
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008072f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180080d30
call fcn.18009cfb4
subsd xmm8, xmm6
mulsd xmm8, xmm10
addsd xmm8, xmm7
test r15, r15
jne 0x180080759
movaps xmm9, xmm13
movaps xmm6, xmm13
movaps xmm7, xmm13
jmp 0x180080929
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x68], r14
mov r8d, 4
lea rdx, str.minX
lea rcx, [rbp - 0x80]
call fcn.180005470
nop
lea rdx, [rbp - 0x80]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r15
mov rcx, rsi
call r9
movaps xmm9, xmm0
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x1800807e4
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800807df
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180080d37
call fcn.18009cfb4
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r14
mov r8d, 4
lea rdx, str.maxX
lea rcx, [rsp + 0x58]
call fcn.180005470
nop
lea rdx, [rsp + 0x58]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r15
mov rcx, rsi
call r9
movaps xmm6, xmm0
mov rdx, qword [rsp + 0x70]
cmp rdx, 0xf
jbe 0x180080885
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180080880
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180080d3e
call fcn.18009cfb4
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], 0xf
mov byte [rsp + 0x58], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
mov r8d, 4
lea rdx, str.minX
lea rcx, [rsp + 0x20]
call fcn.180005470
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r15
mov rcx, rsi
call r9
movaps xmm7, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x180080929
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180080924
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180080d45
call fcn.18009cfb4
subsd xmm6, xmm9
mulsd xmm6, xmm10
addsd xmm6, xmm7
mov rcx, qword [0x180313008]
add rcx, 0xa0
call fcn.1800697a0
movaps xmm7, xmm0
cmp qword [rdi + 0x10], 0
jne 0x180080964
xorps xmm7, xmm7
movaps xmm10, xmm13
xorps xmm2, xmm2
unpckhpd xmm2, xmm7
jmp 0x1800809b9
lea rdx, [rsp + 0x58]
mov rcx, rdi
call fcn.180067bc0
mov rbx, rax
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.180067ee0
movsd xmm2, qword [rbx + 0x10]
subsd xmm2, qword [rax + 0x10]
movsd xmm1, qword [rbx + 8]
subsd xmm1, qword [rax + 8]
movsd xmm10, qword [rbx]
subsd xmm10, qword [rax]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm7
mulsd xmm2, xmm0
mulsd xmm1, xmm0
mulsd xmm10, xmm0
movaps xmm7, xmm1
mov rbx, qword [rbp + 8]
addsd xmm12, xmm2
addsd xmm7, xmm8
addsd xmm10, xmm6
movaps xmm9, xmm12
subsd xmm9, qword [rbp - 0x50]
movaps xmm6, xmm7
subsd xmm6, xmm11
movaps xmm8, xmm10
subsd xmm8, qword [rbp - 0x60]
movaps xmm1, xmm8
mulsd xmm1, xmm8
movaps xmm0, xmm9
mulsd xmm0, xmm9
addsd xmm1, xmm0
xorps xmm0, xmm0
ucomisd xmm0, xmm1
ja 0x180080a0c
xorps xmm0, xmm0
sqrtsd xmm0, xmm1
jmp 0x180080a14
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
xorps xmm6, xmmword [0x180300ad0]
divsd xmm6, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_atan
movaps xmm11, xmm0
movaps xmm6, xmm13
mulsd xmm11, qword [0x180300800]
ucomisd xmm8, xmm13
jp 0x180080a41
je 0x180080a61
movaps xmm1, xmm8
movaps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2
movaps xmm6, xmm0
subsd xmm6, qword [0x180300778]
mulsd xmm6, qword [0x180300800]
subsd xmm11, qword [rsp + 0x48]
subsd xmm6, xmm14
movsd xmm8, qword [0x180300950]
comisd xmm8, xmm6
jb 0x180080a90
movsd xmm0, qword [0x180300830]
addsd xmm6, xmm0
comisd xmm8, xmm6
jae 0x180080a85
comisd xmm6, xmm15
jbe 0x180080aab
movsd xmm0, qword [0x180300958]
nop
addsd xmm6, xmm0
comisd xmm6, xmm15
ja 0x180080aa0
subsd xmm12, qword [rbp - 0x50]
subsd xmm7, qword [rbp - 0x40]
subsd xmm10, qword [rbp - 0x60]
mulsd xmm7, xmm7
mulsd xmm10, xmm10
addsd xmm7, xmm10
mulsd xmm12, xmm12
addsd xmm7, xmm12
xorps xmm0, xmm0
ucomisd xmm0, xmm7
ja 0x180080ae6
xorps xmm0, xmm0
sqrtsd xmm0, xmm7
jmp 0x180080aee
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movss xmm1, dword [r13 + 0x18]
cvtps2pd xmm1, xmm1
movsd xmm10, qword [0x180300758]
comisd xmm1, xmm0
jb 0x180080ba9
comisd xmm0, xmm10
jbe 0x180080ba9
movaps xmm7, xmm6
movsd xmm8, qword [0x180300ac0]
andps xmm7, xmm8
movss xmm0, dword [r13 + 0x1c]
cvtps2pd xmm0, xmm0
comisd xmm0, xmm7
jb 0x180080ba9
cmp qword [r13 + 0x38], 0
je 0x180080b6f
mov rdx, qword [r13 + 0x38]
mov r8, qword [rdi + 0x10]
cmp rdx, r8
je 0x180080d4c
test rdx, rdx
je 0x180080b6f
test r8, r8
je 0x180080b6f
mov rcx, qword [r13 + 0x30]
mov rax, qword [rcx]
mov r9, qword [rax + 0xc0]
call r9
cmp al, 1
je 0x180080d4c
cmp qword [rbp - 0x10], 0
je 0x180080b8a
movsd xmm0, qword [rsp + 0x50]
andps xmm0, xmm8
comisd xmm0, xmm7
jbe 0x180080c14
mov r12, qword [rdi + 8]
mov qword [rbp - 0x18], r12
mov rax, qword [rdi + 0x10]
mov qword [rbp - 0x10], rax
movsd qword [rsp + 0x50], xmm6
movsd qword [rsp + 0x78], xmm11
jmp 0x180080c14
cmp qword [r13 + 0x38], 0
je 0x180080c14
mov rdx, qword [r13 + 0x38]
mov r8, qword [rdi + 0x10]
cmp rdx, r8
je 0x180080bdc
test rdx, rdx
je 0x180080c14
test r8, r8
je 0x180080c14
mov rcx, qword [r13 + 0x30]
mov rax, qword [rcx]
mov r9, qword [rax + 0xc0]
call r9
cmp al, 1
jne 0x180080c14
cmp qword [0x1803110d0], 0
je 0x180080c14
mov rdx, qword [r13 + 0x38]
test rdx, rdx
je 0x180080c14
mov rcx, qword [r13 + 0x30]
mov rax, qword [rcx]
cmp byte [r13 + 0x40], 0
je 0x180080c06
mov r8, qword [rax + 0xb0]
jmp 0x180080c0d
mov r8, qword [rax + 0xb8]
call r8
mov qword [r13 + 0x38], r14
cmp byte [rbp - 0x28], 0
je 0x180080c3d
cmp qword [0x1803110d0], 0
je 0x180080c3d
test r15, r15
je 0x180080c3d
mov rax, qword [rsi]
mov r8, qword [rax + 0xb0]
mov rdx, r15
mov rcx, rsi
call r8
nop
movsd xmm11, qword [rbp - 0x40]
add rdi, 0x20
cmp rdi, rbx
jne 0x1800802e0
mov rdi, qword [rbp - 0x10]
lea rcx, [rbp]
call fcn.180081f70
test rdi, rdi
je 0x180081cc4
lea rcx, [r13 + 0x30]
lea rdx, [rbp - 0x18]
call fcn.180065de0
mov rcx, qword [0x180313008]
add rcx, 0xa0
call fcn.1800697a0
movaps xmm6, xmm0
lea rdx, [rbp - 0x80]
lea rcx, [rbp - 0x20]
call fcn.180067bc0
mov rbx, rax
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 0x20]
call fcn.180067ee0
movsd xmm15, qword [rbx + 0x10]
subsd xmm15, qword [rax + 0x10]
movsd xmm14, qword [rbx + 8]
subsd xmm14, qword [rax + 8]
movsd xmm13, qword [rbx]
subsd xmm13, qword [rax]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm6
mulsd xmm15, xmm0
mulsd xmm14, xmm0
mulsd xmm13, xmm0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x28], rax
mov rdi, qword [rbp - 0x10]
test rdi, rdi
jne 0x180080d97
mov qword [rbp - 0x30], r14
mov byte [rbp - 0x28], al
mov r12, qword [rbp - 0x18]
mov qword [rbp - 0x38], r12
jmp 0x180080e4b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov r12, qword [rdi + 8]
mov qword [rbp - 0x18], r12
mov rdi, qword [rdi + 0x10]
mov qword [rbp - 0x10], rdi
movsd qword [rsp + 0x50], xmm6
movsd qword [rsp + 0x78], xmm11
cmp byte [rbp - 0x28], 0
je 0x180080d92
cmp qword [0x1803110d0], 0
je 0x180080d92
test r15, r15
je 0x180080d92
mov rax, qword [rsi]
mov r8, qword [rax + 0xb0]
mov rdx, r15
mov rcx, rsi
call r8
nop
jmp 0x180080c54
movups xmmword [rsp + 0x58], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x68], xmm1
mov r8d, 0xb
lea rdx, str.boundingBox
lea rcx, [rsp + 0x58]
call fcn.180005470
nop
lea rdx, [rsp + 0x58]
lea rcx, [0x180311770]
call fcn.18006fa60
mov r12, qword [rbp - 0x18]
mov rcx, qword [r12]
mov r9, qword [rcx + 0x2f8]
mov r8, rax
mov rdx, rdi
mov rcx, r12
call r9
mov r14, rax
mov qword [rbp - 0x38], r12
mov byte [rbp - 0x28], 0
mov qword [rbp - 0x30], rax
mov rdx, qword [rsp + 0x70]
cmp rdx, 0xf
jbe 0x180080e38
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180080e33
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180080e33
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009cfb4
movdqa xmm0, xmmword [0x1803009a0]
movdqu xmmword [rsp + 0x68], xmm0
mov byte [rsp + 0x58], 0
test r14, r14
jne 0x180080e5f
xorps xmm8, xmm8
xorps xmm7, xmm7
xorps xmm6, xmm6
jmp 0x18008101c
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 4
lea rdx, str.maxZ
lea rcx, [rsp + 0x20]
call fcn.180005470
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [r12]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, r12
call r9
movaps xmm8, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x180080ef4
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180080eef
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180080eef
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009cfb4
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 4
lea rdx, str.minY
lea rcx, [rsp + 0x20]
call fcn.180005470
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [r12]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, r12
call r9
movaps xmm7, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x180080f88
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180080f83
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180080f83
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009cfb4
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 4
lea rdx, str.minX
lea rcx, [rsp + 0x20]
call fcn.180005470
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [r12]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, r12
call r9
movaps xmm6, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x18008101c
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180081017
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180081017
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009cfb4
xorps xmm12, xmm12
movaps xmm2, xmm15
addsd xmm2, xmm8
movaps xmm1, xmm14
addsd xmm1, xmm7
movaps xmm0, xmm13
addsd xmm0, xmm6
movsd qword [rbp + 0x20], xmm0
movsd qword [rbp + 0x28], xmm1
movsd qword [rbp + 0x30], xmm2
test r14, r14
jne 0x18008105c
xorps xmm8, xmm8
xorps xmm7, xmm7
xorps xmm6, xmm6
jmp 0x180081219
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 4
lea rdx, str.minZ
lea rcx, [rsp + 0x20]
call fcn.180005470
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [r12]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, r12
call r9
movaps xmm8, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x1800810f1
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800810ec
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800810ec
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009cfb4
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 4
lea rdx, str.minY
lea rcx, [rsp + 0x20]
call fcn.180005470
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [r12]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, r12
call r9
movaps xmm7, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x180081185
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180081180
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180081180
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009cfb4
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 4
lea rdx, str.maxX
lea rcx, [rsp + 0x20]
call fcn.180005470
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [r12]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, r12
call r9
movaps xmm6, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x180081219
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180081214
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180081214
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009cfb4
movaps xmm2, xmm15
addsd xmm2, xmm8
movaps xmm1, xmm14
addsd xmm1, xmm7
movaps xmm0, xmm13
addsd xmm0, xmm6
movsd qword [rbp + 0x38], xmm0
movsd qword [rbp + 0x40], xmm1
movsd qword [rbp + 0x48], xmm2
test r14, r14
jne 0x180081255
xorps xmm8, xmm8
xorps xmm7, xmm7
xorps xmm6, xmm6
jmp 0x180081412
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 4
lea rdx, str.maxZ
lea rcx, [rsp + 0x20]
call fcn.180005470
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [r12]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, r12
call r9
movaps xmm8, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x1800812ea
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800812e5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800812e5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009cfb4
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 4
lea rdx, str.minY
lea rcx, [rsp + 0x20]
call fcn.180005470
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [r12]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, r12
call r9
movaps xmm7, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x18008137e
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180081379
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180081379
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009cfb4
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 4
lea rdx, str.maxX
lea rcx, [rsp + 0x20]
call fcn.180005470
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [r12]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, r12
call r9
movaps xmm6, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x180081412
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008140d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18008140d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009cfb4
movaps xmm2, xmm15
addsd xmm2, xmm8
movaps xmm1, xmm14
addsd xmm1, xmm7
movaps xmm0, xmm13
addsd xmm0, xmm6
movsd qword [rbp + 0x50], xmm0
movsd qword [rbp + 0x58], xmm1
movsd qword [rbp + 0x60], xmm2
test r14, r14
jne 0x18008144e
xorps xmm8, xmm8
xorps xmm7, xmm7
xorps xmm6, xmm6
jmp 0x18008160b
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 4
lea rdx, str.minZ
lea rcx, [rsp + 0x20]
call fcn.180005470
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [r12]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, r12
call r9
movaps xmm8, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x1800814e3
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800814de
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800814de
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009cfb4
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 4
lea rdx, str.minY
lea rcx, [rsp + 0x20]
call fcn.180005470
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [r12]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, r12
call r9
movaps xmm7, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x180081577
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180081572
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180081572
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009cfb4
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 4
lea rdx, str.minX
lea rcx, [rsp + 0x20]
call fcn.180005470
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [r12]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, r12
call r9
movaps xmm6, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x18008160b
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180081606
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180081606
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009cfb4
movaps xmm2, xmm15
addsd xmm2, xmm8
movaps xmm1, xmm14
addsd xmm1, xmm7
movaps xmm0, xmm13
addsd xmm0, xmm6
movsd qword [rbp + 0x68], xmm0
movsd qword [rbp + 0x70], xmm1
movsd qword [rbp + 0x78], xmm2
movsd xmm11, qword [0x180300838]
movsd xmm6, qword [0x180300940]
lea rbx, [rbp + 0x20]
movsd xmm10, qword [rbp - 0x40]
nop
movups xmm8, xmmword [rbx]
movsd xmm9, qword [rbx + 0x10]
subsd xmm9, qword [rbp - 0x50]
movaps xmm7, xmm8
unpckhpd xmm7, xmm8
subsd xmm7, xmm10
subsd xmm8, qword [rbp - 0x60]
movaps xmm1, xmm8
mulsd xmm1, xmm8
movaps xmm0, xmm9
mulsd xmm0, xmm9
addsd xmm1, xmm0
xorps xmm0, xmm0
ucomisd xmm0, xmm1
ja 0x18008169c
xorps xmm0, xmm0
sqrtsd xmm0, xmm1
jmp 0x1800816a4
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
xorps xmm7, xmmword [0x180300ad0]
divsd xmm7, xmm0
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_atan
movaps xmm7, xmm0
movaps xmm2, xmm12
mulsd xmm7, qword [0x180300800]
ucomisd xmm8, xmm12
jp 0x1800816cf
je 0x1800816ef
movaps xmm1, xmm8
movaps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2
movaps xmm2, xmm0
subsd xmm2, qword [0x180300778]
mulsd xmm2, qword [0x180300800]
comisd xmm12, xmm2
jbe 0x1800816fe
addsd xmm2, qword [0x180300830]
movaps xmm0, xmm2
minsd xmm0, xmm11
movaps xmm11, xmm0
maxsd xmm2, xmm6
movaps xmm6, xmm2
add rbx, 0x18
lea rax, [rbp + 0x80]
cmp rbx, rax
jne 0x180081650
movsd xmm0, qword [0x180300818]
comisd xmm11, xmm0
movsd xmm10, qword [0x180300940]
movsd xmm1, qword [0x180300958]
jbe 0x18008174a
addsd xmm11, xmm1
comisd xmm6, xmm0
jbe 0x180081754
addsd xmm6, xmm1
test r14, r14
jne 0x180081766
xorps xmm9, xmm9
xorps xmm8, xmm8
jmp 0x180081925
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 4
lea rdx, str.maxZ
lea rcx, [rsp + 0x20]
call fcn.180005470
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [r12]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, r12
call r9
movaps xmm12, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x1800817fb
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800817f6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800817f6
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009cfb4
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 4
lea rdx, str.maxY
lea rcx, [rsp + 0x20]
call fcn.180005470
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [r12]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, r12
call r9
movaps xmm9, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x180081890
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008188b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18008188b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009cfb4
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 4
lea rdx, str.maxX
lea rcx, [rsp + 0x20]
call fcn.180005470
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180311920]
call fcn.18006fa60
mov rcx, qword [r12]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r14
mov rcx, r12
call r9
movaps xmm8, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x180081925
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180081920
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180081920
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009cfb4
addsd xmm15, xmm12
subsd xmm15, qword [rbp - 0x50]
addsd xmm14, xmm9
subsd xmm14, qword [rbp - 0x40]
addsd xmm13, xmm8
subsd xmm13, qword [rbp - 0x60]
mulsd xmm13, xmm13
mulsd xmm15, xmm15
addsd xmm13, xmm15
xorps xmm0, xmm0
ucomisd xmm0, xmm13
ja 0x180081969
xorps xmm0, xmm0
sqrtsd xmm0, xmm13
jmp 0x180081972
movaps xmm0, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
xorps xmm14, xmmword [0x180300ad0]
divsd xmm14, xmm0
movaps xmm0, xmm14
call sub.api_ms_win_crt_math_l1_1_0.dll_atan
mulsd xmm0, qword [0x180300800]
movsd qword [rbp - 0x48], xmm0
subsd xmm6, xmm11
movsd xmm0, qword [0x180300950]
comisd xmm0, xmm6
jb 0x1800819ba
movsd xmm1, qword [0x180300830]
addsd xmm6, xmm1
comisd xmm0, xmm6
jae 0x1800819b0
movsd xmm0, qword [0x180300818]
comisd xmm6, xmm0
jbe 0x1800819da
movsd xmm1, qword [0x180300958]
addsd xmm6, xmm1
comisd xmm6, xmm0
ja 0x1800819d0
movsd xmm1, qword [0x180300ac0]
andps xmm6, xmm1
mulsd xmm6, qword [0x180300758]
movsd xmm0, qword [rsp + 0x50]
andps xmm0, xmm1
movaps xmm4, xmm0
subsd xmm4, xmm6
movsd xmm14, qword [0x180300850]
movsd xmm5, qword [0x180300840]
movsd xmm15, qword [0x1803007e0]
movsd xmm12, qword [0x1803007a8]
movsd xmm13, qword [0x180300820]
movsd xmm11, qword [0x1803007c0]
movsd xmm9, qword [0x1803007d8]
movsd xmm3, qword [0x180300808]
movsd xmm8, qword [0x180300790]
movsd xmm2, qword [0x180300770]
comisd xmm0, xmm6
jbe 0x180081b9e
comisd xmm8, xmm4
jbe 0x180081a96
xorps xmm1, xmm1
movsd xmm0, qword [rsp + 0x50]
comisd xmm0, xmm1
jbe 0x180081a79
movaps xmm0, xmm2
jmp 0x180081a7d
movaps xmm0, xmm10
mulsd xmm0, xmm4
movsd xmm4, qword [rsp + 0x40]
addsd xmm4, xmm0
movsd qword [rsp + 0x40], xmm4
jmp 0x180081ba1
movss xmm0, dword [r13 + 0x20]
cvtps2pd xmm1, xmm0
movaps xmm0, xmm1
comisd xmm4, xmm9
jb 0x180081ac1
mulsd xmm0, xmm14
cvttsd2si ecx, xmm0
mulsd xmm1, xmm5
movsd xmm0, qword [rsp + 0x50]
jmp 0x180081b58
comisd xmm4, xmm11
jb 0x180081b2d
mulsd xmm0, xmm5
cvttsd2si ecx, xmm0
movsd xmm6, qword [0x180300828]
mulsd xmm1, xmm6
cvttsd2si eax, xmm1
mov dword [rbp - 0x40], eax
mov dword [rbp - 0x3c], ecx
movsd xmm0, qword [rsp + 0x50]
comisd xmm0, xmmword [0x180300660]
jbe 0x180081afb
movaps xmm1, xmm2
jmp 0x180081aff
movaps xmm1, xmm10
lea rcx, [rbp - 0x40]
call fcn.1800822a0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm3
mulsd xmm0, xmm1
movsd xmm1, qword [rsp + 0x40]
addsd xmm1, xmm0
movsd qword [rsp + 0x40], xmm1
xorps xmm1, xmm1
jmp 0x180081ba9
mulsd xmm0, xmm3
cvttsd2si ecx, xmm0
movsd xmm0, qword [rsp + 0x50]
comisd xmm4, xmm12
jb 0x180081b53
mulsd xmm1, xmm13
cvttsd2si eax, xmm1
mov dword [rbp - 0x40], ecx
mov dword [rbp - 0x3c], eax
jmp 0x180081b62
mulsd xmm1, xmm15
cvttsd2si eax, xmm1
mov dword [rbp - 0x3c], ecx
mov dword [rbp - 0x40], eax
comisd xmm0, xmmword [0x180300660]
jbe 0x180081b71
movaps xmm1, xmm2
jmp 0x180081b75
movaps xmm1, xmm10
lea rcx, [rbp - 0x40]
call fcn.1800822a0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm3
mulsd xmm0, xmm1
movsd xmm1, qword [rsp + 0x40]
addsd xmm1, xmm0
movsd qword [rsp + 0x40], xmm1
xorps xmm1, xmm1
movsd xmm6, qword [0x180300828]
subsd xmm7, qword [rbp - 0x48]
movsd xmm4, qword [0x180300ac0]
andps xmm7, xmm4
mulsd xmm7, qword [0x180300758]
movsd xmm0, qword [rsp + 0x78]
andps xmm0, xmm4
movaps xmm4, xmm0
subsd xmm4, xmm7
comisd xmm0, xmm7
jbe 0x180081cae
comisd xmm8, xmm4
jbe 0x180081c0b
movsd xmm0, qword [rsp + 0x78]
comisd xmm0, xmm1
ja 0x180081bf2
movaps xmm2, xmm10
mulsd xmm2, xmm4
movsd xmm0, qword [rsp + 0x48]
addsd xmm0, xmm2
movsd qword [rsp + 0x48], xmm0
jmp 0x180081cae
movss xmm0, dword [r13 + 0x24]
cvtps2pd xmm1, xmm0
movaps xmm0, xmm1
comisd xmm4, xmm9
jb 0x180081c2d
mulsd xmm0, xmm14
cvttsd2si ecx, xmm0
mulsd xmm1, xmm5
jmp 0x180081c67
comisd xmm4, xmm11
jb 0x180081c42
mulsd xmm0, xmm5
cvttsd2si ecx, xmm0
mulsd xmm1, xmm6
jmp 0x180081c67
mulsd xmm0, xmm3
cvttsd2si ecx, xmm0
comisd xmm4, xmm12
jb 0x180081c62
mulsd xmm1, xmm13
cvttsd2si eax, xmm1
mov dword [rbp - 0x40], ecx
mov dword [rbp - 0x3c], eax
jmp 0x180081c71
mulsd xmm1, xmm15
cvttsd2si eax, xmm1
mov dword [rbp - 0x40], eax
mov dword [rbp - 0x3c], ecx
movsd xmm0, qword [rsp + 0x78]
comisd xmm0, xmmword [0x180300660]
ja 0x180081c85
movaps xmm2, xmm10
lea rcx, [rbp - 0x40]
call fcn.1800822a0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm3
mulsd xmm0, xmm2
movsd xmm1, qword [rsp + 0x48]
addsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
mov rcx, qword [0x180313008]
add rcx, 0x18
lea rdx, [rsp + 0x40]
call fcn.180068e30
nop
cmp byte [rbp - 8], 0
je 0x180081cee
cmp qword [0x1803110d0], 0
je 0x180081cee
test rdi, rdi
je 0x180081cee
mov rax, qword [r12]
mov r8, qword [rax + 0xb0]
mov rdx, rdi
mov rcx, r12
call r8
nop
mov rcx, qword [rbp + 0x80]
xor rcx, rsp
call fcn.18009c9f0
lea r11, [rsp + 0x230]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret