Function at 0x180080f30
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 [0x180312040]
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 0x180080ff3
mov ecx, ebx
call qword [sym.imp.USER32.dll_GetKeyState]
bt ax, 0xf
jae 0x180080ff3
cmp byte [0x1803136d0], dil
jne 0x180080ff3
lea rdx, [rbp]
mov rcx, qword [0x180315058]
call fcn.180066b40
mov edi, ebx
cmp qword [rax + 8], r14
jne 0x180080ff3
xor sil, sil
jmp 0x180080ff6
movzx esi, bl
test bl, dil
je 0x180081026
cmp byte [rbp + 0x10], 0
je 0x180081026
cmp qword [0x180313110], 0
je 0x180081026
mov rdx, qword [rbp + 8]
test rdx, rdx
je 0x180081026
mov rcx, qword [rbp]
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
call r8
nop
test sil, sil
je 0x180081072
cmp qword [0x180313110], 0
je 0x180082cd6
mov rdx, qword [r13 + 0x40]
test rdx, rdx
je 0x180082cd6
mov rcx, qword [r13 + 0x38]
mov rax, qword [rcx]
cmp byte [r13 + 0x48], 0
je 0x180081063
call qword [rax + 0xb0]
mov qword [r13 + 0x40], r14
jmp 0x180082cd6
call qword [rax + 0xb8]
mov qword [r13 + 0x40], r14
jmp 0x180082cd6
mov ecx, dword [0x1803130f8]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
mov ecx, dword [rdx + rax]
cmp dword [0x1803151b4], ecx
jle 0x1800810ce
lea rcx, [0x1803151b4]
call fcn.18009cfb8
cmp dword [0x1803151b4], 0xffffffff
jne 0x1800810ce
mov qword [0x1803151b8], r14
mov edx, 0xa
lea rcx, [0x1803151b8]
call fcn.18008f980
lea rcx, [0x1803151b4]
call fcn.18009cf58
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rdi, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rdi, 0x989680
jne 0x1800810ec
imul rcx, rax, 0x64
jmp 0x180081107
cqo
idiv rdi
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rdi
add rcx, rax
mov rdx, rcx
sub rdx, qword [0x1803151b8]
movabs rax, 0x431bde82d7b634db
imul rdx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, qword [0x1803151c0]
je 0x180081147
mov r8d, 0xff
cmovl ebx, r8d
test bl, bl
js 0x180082cd6
mov qword [0x1803151b8], rcx
mov rcx, qword [0x180315058]
add rcx, 0x18
lea rdx, [rbp - 0x60]
call fcn.180067bf0
mov rdi, qword [0x180315058]
cmp qword [rdi + 0x28], 0
jne 0x180081178
xorps xmm6, xmm6
jmp 0x18008120f
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.180005870
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x1803137b8]
call fcn.180070ba0
mov r8, rax
mov rdx, qword [rdi + 0x28]
mov rcx, rbx
call fcn.180065fd0
movaps xmm6, xmm0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0x10
jb 0x180081208
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180081203
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180081203
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009d55c
mov rdi, qword [0x180315058]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm6
movsd xmm12, qword [rbp - 0x58]
addsd xmm12, xmm0
movsd qword [rbp - 0x48], xmm12
lea rcx, [rdi + 0x18]
lea rdx, [rsp + 0x40]
call fcn.180068170
movsd xmm14, qword [rsp + 0x40]
movsd xmm0, qword [0x180301c98]
movsd xmm8, qword [0x180301dc0]
comisd xmm8, xmm14
jb 0x180081260
addsd xmm14, xmm0
comisd xmm8, xmm14
jae 0x180081254
movsd xmm0, qword [0x180301dc8]
movsd xmm15, qword [0x180301c80]
comisd xmm14, xmm15
jbe 0x18008128c
nop dword [rax + rax]
addsd xmm14, xmm0
comisd xmm14, xmm15
ja 0x180081280
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 [0x180313110]
mov qword [rbp - 0x18], r12
lea rax, vtable.EntityPlayer.0
mov qword [rbp - 0x20], rax
xorps xmm13, xmm13
movsd qword [rsp + 0x50], xmm13
xorps xmm10, xmm10
movsd qword [rbp - 0x40], xmm10
mov rcx, qword [0x180315058]
add rcx, 0x70
lea rdx, [rbp]
call fcn.180082fb0
nop
mov rdi, qword [rbp]
movsd xmm9, qword [0x180301bc0]
mov rbx, qword [rbp + 8]
cmp rdi, rbx
je 0x180081ce5
cmp qword [rdi + 0x10], 0
je 0x180081c56
mov rax, qword [0x180315058]
mov rdx, qword [rdi + 0x10]
mov r8, qword [rax + 0x28]
cmp rdx, r8
je 0x180081c56
test rdx, rdx
je 0x180081344
test r8, r8
je 0x180081344
mov rcx, qword [rdi + 8]
mov rax, qword [rcx]
mov r9, qword [rax + 0xc0]
call r9
cmp al, 1
sete al
test al, al
jne 0x180081c56
mov rcx, rdi
call fcn.1800687d0
cmp eax, 0xa
jl 0x180081c56
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.1800688a0
nop
mov rsi, qword [rbp - 0x38]
mov r15, qword [rbp - 0x30]
test r15, r15
jne 0x18008138d
movaps xmm7, xmm13
movaps xmm11, xmm13
movaps xmm6, xmm13
jmp 0x18008155d
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.180005870
nop
lea rdx, [rbp - 0x80]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x180081417
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180081412
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180081c5f
call fcn.18009d55c
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.180005870
nop
lea rdx, [rsp + 0x58]
lea rcx, [0x180313968]
call fcn.180070aa0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r15
mov rcx, rsi
call r9
movaps xmm11, xmm0
mov rdx, qword [rsp + 0x70]
cmp rdx, 0x10
jb 0x1800814b9
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800814b4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180081c66
call fcn.18009d55c
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.180005870
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x18008155d
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180081558
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180081c6d
call fcn.18009d55c
subsd xmm11, xmm6
mulsd xmm11, xmm9
addsd xmm11, xmm7
test r15, r15
jne 0x180081582
movaps xmm7, xmm13
movaps xmm10, xmm13
movaps xmm6, xmm13
jmp 0x180081752
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.180005870
nop
lea rdx, [rbp - 0x80]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x18008160c
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180081607
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180081c74
call fcn.18009d55c
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.180005870
nop
lea rdx, [rsp + 0x58]
lea rcx, [0x180313968]
call fcn.180070aa0
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x338]
mov r8, rax
mov rdx, r15
mov rcx, rsi
call r9
movaps xmm10, xmm0
mov rdx, qword [rsp + 0x70]
cmp rdx, 0x10
jb 0x1800816ae
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800816a9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180081c7b
call fcn.18009d55c
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.180005870
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x180081752
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008174d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180081c82
call fcn.18009d55c
subsd xmm10, xmm6
mulsd xmm10, xmm9
addsd xmm10, xmm7
test r15, r15
jne 0x180081777
movaps xmm8, xmm13
movaps xmm6, xmm13
movaps xmm7, xmm13
jmp 0x180081947
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.180005870
nop
lea rdx, [rbp - 0x80]
lea rcx, [0x180313968]
call fcn.180070aa0
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 [rbp - 0x68]
cmp rdx, 0x10
jb 0x180081802
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800817fd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180081c89
call fcn.18009d55c
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.180005870
nop
lea rdx, [rsp + 0x58]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x1800818a3
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008189e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180081c90
call fcn.18009d55c
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.180005870
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x180081947
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180081942
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180081c97
call fcn.18009d55c
subsd xmm6, xmm8
mulsd xmm6, xmm9
addsd xmm6, xmm7
mov rcx, qword [0x180315058]
add rcx, 0xa0
call fcn.1800697d0
movaps xmm7, xmm0
cmp qword [rdi + 0x10], 0
jne 0x180081984
xorps xmm7, xmm7
movaps xmm9, xmm13
xorps xmm8, xmm8
unpckhpd xmm8, xmm7
jmp 0x1800819dc
lea rdx, [rsp + 0x58]
mov rcx, rdi
call fcn.180067bf0
mov rbx, rax
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.180067f10
movsd xmm8, qword [rbx + 0x10]
subsd xmm8, qword [rax + 0x10]
movsd xmm1, qword [rbx + 8]
subsd xmm1, qword [rax + 8]
movsd xmm9, qword [rbx]
subsd xmm9, qword [rax]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm7
mulsd xmm8, xmm0
mulsd xmm1, xmm0
mulsd xmm9, xmm0
movaps xmm7, xmm1
mov rbx, qword [rbp + 8]
addsd xmm8, xmm11
addsd xmm7, xmm10
addsd xmm9, xmm6
subsd xmm8, qword [rbp - 0x50]
movaps xmm6, xmm7
subsd xmm6, xmm12
subsd xmm9, qword [rbp - 0x60]
movaps xmm11, xmm8
mulsd xmm11, xmm8
movaps xmm12, xmm9
mulsd xmm12, xmm9
movaps xmm1, xmm12
addsd xmm1, xmm11
xorps xmm0, xmm0
ucomisd xmm0, xmm1
ja 0x180081a2c
xorps xmm0, xmm0
sqrtsd xmm0, xmm1
jmp 0x180081a34
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
xorps xmm6, xmmword [0x1803021c0]
divsd xmm6, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_atan
movaps xmm10, xmm0
movaps xmm6, xmm13
mulsd xmm10, qword [0x180301c68]
ucomisd xmm9, xmm13
jp 0x180081a61
je 0x180081a81
movaps xmm1, xmm9
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2
movaps xmm6, xmm0
subsd xmm6, qword [0x180301be0]
mulsd xmm6, qword [0x180301c68]
subsd xmm10, qword [rsp + 0x48]
subsd xmm6, xmm14
movsd xmm8, qword [0x180301dc0]
comisd xmm8, xmm6
jb 0x180081ab0
movsd xmm0, qword [0x180301c98]
addsd xmm6, xmm0
comisd xmm8, xmm6
jae 0x180081aa5
comisd xmm6, xmm15
jbe 0x180081acb
movsd xmm0, qword [0x180301dc8]
nop
addsd xmm6, xmm0
comisd xmm6, xmm15
ja 0x180081ac0
subsd xmm7, qword [rbp - 0x48]
mulsd xmm7, xmm7
addsd xmm7, xmm12
addsd xmm7, xmm11
xorps xmm0, xmm0
ucomisd xmm0, xmm7
ja 0x180081af0
xorps xmm0, xmm0
sqrtsd xmm0, xmm7
jmp 0x180081af8
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movss xmm1, dword [r13 + 0x20]
cvtps2pd xmm1, xmm1
movsd xmm9, qword [0x180301bc0]
comisd xmm1, xmm0
jb 0x180081bb7
comisd xmm0, xmm9
jbe 0x180081bb7
movaps xmm7, xmm6
movsd xmm8, qword [0x1803021b0]
andps xmm7, xmm8
movss xmm0, dword [r13 + 0x24]
cvtps2pd xmm0, xmm0
comisd xmm0, xmm7
jb 0x180081bb7
cmp qword [r13 + 0x40], 0
je 0x180081b7e
mov rdx, qword [r13 + 0x40]
mov r8, qword [rdi + 0x10]
cmp rdx, r8
je 0x180081c9e
test rdx, rdx
je 0x180081b7e
test r8, r8
je 0x180081b7e
mov rcx, qword [r13 + 0x38]
mov rax, qword [rcx]
mov r9, qword [rax + 0xc0]
call r9
cmp al, 1
sete al
test al, al
jne 0x180081c9e
cmp qword [rbp - 0x10], 0
je 0x180081b99
movsd xmm0, qword [rsp + 0x50]
andps xmm0, xmm8
comisd xmm0, xmm7
jbe 0x180081c27
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 [rbp - 0x40], xmm10
jmp 0x180081c27
cmp qword [r13 + 0x40], 0
je 0x180081c27
mov rdx, qword [r13 + 0x40]
mov r8, qword [rdi + 0x10]
cmp rdx, r8
je 0x180081bef
test rdx, rdx
je 0x180081c27
test r8, r8
je 0x180081c27
mov rcx, qword [r13 + 0x38]
mov rax, qword [rcx]
mov r9, qword [rax + 0xc0]
call r9
cmp al, 1
sete al
test al, al
je 0x180081c27
cmp qword [0x180313110], 0
je 0x180081c27
mov rdx, qword [r13 + 0x40]
test rdx, rdx
je 0x180081c27
mov rcx, qword [r13 + 0x38]
mov rax, qword [rcx]
cmp byte [r13 + 0x48], 0
je 0x180081c19
mov r8, qword [rax + 0xb0]
jmp 0x180081c20
mov r8, qword [rax + 0xb8]
call r8
mov qword [r13 + 0x40], r14
cmp byte [rbp - 0x28], 0
je 0x180081c50
cmp qword [0x180313110], 0
je 0x180081c50
test r15, r15
je 0x180081c50
mov rax, qword [rsi]
mov r8, qword [rax + 0xb0]
mov rdx, r15
mov rcx, rsi
call r8
nop
movsd xmm12, qword [rbp - 0x48]
add rdi, 0x20
jmp 0x1800812f0
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 [rbp - 0x40], xmm10
cmp byte [rbp - 0x28], 0
je 0x180081ce3
cmp qword [0x180313110], 0
je 0x180081ce3
test r15, r15
je 0x180081ce3
mov rax, qword [rsi]
mov r8, qword [rax + 0xb0]
mov rdx, r15
mov rcx, rsi
call r8
nop
jmp 0x180081ce9
mov rdi, qword [rbp - 0x10]
lea rcx, [rbp]
call fcn.180082ef0
test rdi, rdi
je 0x180082cac
lea rcx, [r13 + 0x38]
lea rdx, [rbp - 0x18]
call fcn.180065e10
mov rcx, qword [0x180315058]
add rcx, 0xa0
call fcn.1800697d0
movaps xmm6, xmm0
lea rdx, [rbp - 0x80]
lea rcx, [rbp - 0x20]
call fcn.180067bf0
mov rbx, rax
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 0x20]
call fcn.180067f10
movsd xmm14, qword [rbx + 0x10]
subsd xmm14, qword [rax + 0x10]
movsd xmm15, qword [rbx + 8]
subsd xmm15, qword [rax + 8]
movsd xmm13, qword [rbx]
subsd xmm13, qword [rax]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm6
mulsd xmm14, xmm0
mulsd xmm15, 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 0x180081d9e
mov qword [rbp - 0x30], r14
mov byte [rbp - 0x28], al
mov r12, qword [rbp - 0x18]
mov qword [rbp - 0x38], r12
jmp 0x180081e52
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.180005870
nop
lea rdx, [rsp + 0x58]
lea rcx, [0x1803137b8]
call fcn.180070aa0
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, 0x10
jb 0x180081e3f
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180081e3a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180081e3a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009d55c
movdqa xmm0, xmmword [0x180301e10]
movdqu xmmword [rsp + 0x68], xmm0
mov byte [rsp + 0x58], 0
test r14, r14
jne 0x180081e66
xorps xmm7, xmm7
xorps xmm6, xmm6
xorps xmm8, xmm8
jmp 0x180082023
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.180005870
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x180081efa
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180081ef5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180081ef5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009d55c
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.180005870
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x180081f8e
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180081f89
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180081f89
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009d55c
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.180005870
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x180082023
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008201e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18008201e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009d55c
xorps xmm12, xmm12
addsd xmm7, xmm14
addsd xmm6, xmm15
movaps xmm0, xmm13
addsd xmm0, xmm8
movsd qword [rbp + 0x20], xmm0
movsd qword [rbp + 0x28], xmm6
movsd qword [rbp + 0x30], xmm7
test r14, r14
jne 0x18008205d
xorps xmm7, xmm7
xorps xmm6, xmm6
xorps xmm8, xmm8
jmp 0x18008221a
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.180005870
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x1800820f1
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800820ec
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800820ec
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009d55c
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.180005870
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x180082185
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180082180
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180082180
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009d55c
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.180005870
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x18008221a
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180082215
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180082215
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009d55c
addsd xmm7, xmm14
addsd xmm6, xmm15
movaps xmm0, xmm13
addsd xmm0, xmm8
movsd qword [rbp + 0x38], xmm0
movsd qword [rbp + 0x40], xmm6
movsd qword [rbp + 0x48], xmm7
test r14, r14
jne 0x180082250
xorps xmm7, xmm7
xorps xmm6, xmm6
xorps xmm8, xmm8
jmp 0x18008240d
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.180005870
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x1800822e4
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800822df
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800822df
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009d55c
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.180005870
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x180082378
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180082373
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180082373
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009d55c
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.180005870
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x18008240d
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180082408
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180082408
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009d55c
addsd xmm7, xmm14
addsd xmm6, xmm15
movaps xmm0, xmm13
addsd xmm0, xmm8
movsd qword [rbp + 0x50], xmm0
movsd qword [rbp + 0x58], xmm6
movsd qword [rbp + 0x60], xmm7
test r14, r14
jne 0x180082443
xorps xmm7, xmm7
xorps xmm6, xmm6
xorps xmm8, xmm8
jmp 0x180082600
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.180005870
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x1800824d7
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800824d2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800824d2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009d55c
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.180005870
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x18008256b
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180082566
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180082566
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009d55c
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.180005870
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x180082600
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800825fb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800825fb
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009d55c
addsd xmm7, xmm14
addsd xmm6, xmm15
movaps xmm0, xmm13
addsd xmm0, xmm8
movsd qword [rbp + 0x68], xmm0
movsd qword [rbp + 0x70], xmm6
movsd qword [rbp + 0x78], xmm7
movsd xmm11, qword [0x180301ca0]
movsd xmm6, qword [0x180301db0]
lea rbx, [rbp + 0x20]
movsd xmm10, qword [rbp - 0x48]
nop dword [rax]
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 0x18008268c
xorps xmm0, xmm0
sqrtsd xmm0, xmm1
jmp 0x180082694
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
xorps xmm7, xmmword [0x1803021c0]
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 [0x180301c68]
ucomisd xmm8, xmm12
jp 0x1800826bf
je 0x1800826df
movaps xmm1, xmm8
movaps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2
movaps xmm2, xmm0
subsd xmm2, qword [0x180301be0]
mulsd xmm2, qword [0x180301c68]
comisd xmm12, xmm2
jbe 0x1800826ee
addsd xmm2, qword [0x180301c98]
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 0x180082640
movsd xmm0, qword [0x180301c80]
comisd xmm11, xmm0
movsd xmm10, qword [0x180301db0]
movsd xmm1, qword [0x180301dc8]
jbe 0x18008273a
addsd xmm11, xmm1
comisd xmm6, xmm0
jbe 0x180082744
addsd xmm6, xmm1
test r14, r14
jne 0x180082756
movaps xmm9, xmm12
movaps xmm8, xmm12
jmp 0x180082915
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.180005870
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x1800827eb
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800827e6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800827e6
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009d55c
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.180005870
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x180082880
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008287b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18008287b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009d55c
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.180005870
nop
lea rdx, [rsp + 0x20]
lea rcx, [0x180313968]
call fcn.180070aa0
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, 0x10
jb 0x180082915
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180082910
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180082910
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009d55c
addsd xmm9, xmm14
subsd xmm9, qword [rbp - 0x50]
addsd xmm8, xmm15
subsd xmm8, qword [rbp - 0x48]
addsd xmm13, xmm12
subsd xmm13, qword [rbp - 0x60]
mulsd xmm13, xmm13
mulsd xmm9, xmm9
addsd xmm13, xmm9
xorps xmm0, xmm0
ucomisd xmm0, xmm13
ja 0x180082959
xorps xmm0, xmm0
sqrtsd xmm0, xmm13
jmp 0x180082962
movaps xmm0, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
xorps xmm8, xmmword [0x1803021c0]
divsd xmm8, xmm0
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_atan
movaps xmm14, xmm0
mulsd xmm14, qword [0x180301c68]
subsd xmm6, xmm11
movsd xmm0, qword [0x180301dc0]
comisd xmm0, xmm6
jb 0x1800829aa
movsd xmm1, qword [0x180301c98]
addsd xmm6, xmm1
comisd xmm0, xmm6
jae 0x1800829a0
movsd xmm0, qword [0x180301c80]
comisd xmm6, xmm0
jbe 0x1800829ca
movsd xmm1, qword [0x180301dc8]
addsd xmm6, xmm1
comisd xmm6, xmm0
ja 0x1800829c0
andps xmm6, xmmword [0x1803021b0]
mulsd xmm6, qword [0x180301bc0]
movsd xmm0, qword [rsp + 0x50]
andps xmm0, xmmword [0x1803021b0]
movaps xmm4, xmm0
subsd xmm4, xmm6
movsd xmm15, qword [0x180301cb8]
movsd xmm5, qword [0x180301ca8]
movsd xmm12, qword [0x180301c10]
movsd xmm13, qword [0x180301c88]
movsd xmm11, qword [0x180301c28]
movsd xmm9, qword [0x180301c40]
movsd xmm3, qword [0x180301c70]
movsd xmm8, qword [0x180301bf8]
movsd xmm2, qword [0x180301bd8]
comisd xmm0, xmm6
jbe 0x180082aea
comisd xmm8, xmm4
jbe 0x180082a7a
xorps xmm1, xmm1
movsd xmm0, qword [rsp + 0x50]
comisd xmm0, xmm1
jbe 0x180082a60
movaps xmm0, xmm2
jmp 0x180082a64
movaps xmm0, xmm10
mulsd xmm0, xmm4
movsd xmm4, qword [rsp + 0x40]
addsd xmm4, xmm0
movsd qword [rsp + 0x40], xmm4
jmp 0x180082aed
movss xmm0, dword [r13 + 0x28]
cvtps2pd xmm1, xmm0
movaps xmm0, xmm1
comisd xmm4, xmm9
jb 0x180082b5a
mulsd xmm0, xmm15
mulsd xmm1, xmm5
cvttsd2si ecx, xmm0
cvttsd2si eax, xmm1
mov dword [rbp - 0x48], eax
mov dword [rbp - 0x44], ecx
movsd xmm0, qword [rsp + 0x50]
comisd xmm0, xmmword [0x180301ac8]
jbe 0x180082abd
movaps xmm1, xmm2
jmp 0x180082ac1
movaps xmm1, xmm10
lea rcx, [rbp - 0x48]
call fcn.180083220
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 [0x180301c48]
subsd xmm7, xmm14
andps xmm7, xmmword [0x1803021b0]
mulsd xmm7, qword [0x180301bc0]
movsd xmm14, qword [rbp - 0x40]
movaps xmm0, xmm14
andps xmm0, xmmword [0x1803021b0]
movaps xmm4, xmm0
subsd xmm4, xmm7
comisd xmm0, xmm7
jbe 0x180082c96
comisd xmm8, xmm4
jbe 0x180082bf5
comisd xmm14, xmm1
ja 0x180082b41
movaps xmm2, xmm10
mulsd xmm2, xmm4
movsd xmm0, qword [rsp + 0x48]
addsd xmm0, xmm2
movsd qword [rsp + 0x48], xmm0
jmp 0x180082c96
comisd xmm4, xmm11
jb 0x180082b72
mulsd xmm0, xmm5
mulsd xmm1, qword [0x180301c90]
jmp 0x180082a9a
mulsd xmm0, xmm3
cvttsd2si ecx, xmm0
movsd xmm0, qword [rsp + 0x50]
comisd xmm4, xmm12
jb 0x180082b9b
mulsd xmm1, xmm13
cvttsd2si eax, xmm1
mov dword [rbp - 0x48], ecx
mov dword [rbp - 0x44], eax
jmp 0x180082aae
movsd xmm6, qword [0x180301c48]
mulsd xmm1, xmm6
cvttsd2si eax, xmm1
mov dword [rbp - 0x48], eax
mov dword [rbp - 0x44], ecx
comisd xmm0, xmmword [0x180301ac8]
jbe 0x180082bc0
movaps xmm1, xmm2
jmp 0x180082bc4
movaps xmm1, xmm10
lea rcx, [rbp - 0x48]
call fcn.180083220
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 0x180082af5
movss xmm0, dword [r13 + 0x2c]
cvtps2pd xmm1, xmm0
movaps xmm0, xmm1
comisd xmm4, xmm9
jb 0x180082c17
mulsd xmm0, xmm15
cvttsd2si ecx, xmm0
mulsd xmm1, xmm5
jmp 0x180082c54
comisd xmm4, xmm11
jb 0x180082c30
mulsd xmm0, xmm5
cvttsd2si ecx, xmm0
mulsd xmm1, qword [0x180301c90]
jmp 0x180082c54
mulsd xmm0, xmm3
cvttsd2si ecx, xmm0
comisd xmm4, xmm12
jb 0x180082c50
mulsd xmm1, xmm13
cvttsd2si eax, xmm1
mov dword [rbp - 0x40], ecx
mov dword [rbp - 0x3c], eax
jmp 0x180082c5e
mulsd xmm1, xmm6
cvttsd2si eax, xmm1
mov dword [rbp - 0x40], eax
mov dword [rbp - 0x3c], ecx
comisd xmm14, xmmword [0x180301ac8]
ja 0x180082c6d
movaps xmm2, xmm10
lea rcx, [rbp - 0x40]
call fcn.180083220
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 [0x180315058]
add rcx, 0x18
lea rdx, [rsp + 0x40]
call fcn.180068e60
nop
cmp byte [rbp - 8], 0
je 0x180082cd6
cmp qword [0x180313110], 0
je 0x180082cd6
test rdi, rdi
je 0x180082cd6
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.18009ce10
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