Function at 0x140054650
Capabilities:
Encode data using xor
Hide graphical window
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xb98]
sub rsp, 0xc70
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 [0x140076040]
xor rax, rsp
mov qword [rbp + 0xac0], rax
xor r12d, r12d
xorps xmm0, xmm0
movups xmmword [rbp + 0x620], xmm0
lea r15, [rbp + 0xb98]
movabs r14, 0xff00ff00ff00ff00
mov qword [rbp + 0x628], r14
mov qword [rbp + 0x630], r15
mov rax, qword [r15]
xor rax, r14
mov qword [rbp + 0x620], rax
mov qword [r15], r12
call fcn.140007940
mov rdi, rax
mov qword [rbp + 0x180], rax
lea esi, [r12 + 0xf]
movss xmm6, dword [0x14006bd28]
mov rcx, qword [0x140357710]
cmp byte [rcx + 5], r12b
je 0x140054b27
mov r9d, r12d
cmp byte [rcx + 0xa], r12b
je 0x140054925
mov rcx, qword [0x140357540]
movss xmm2, dword [rcx + 0xe0]
cvtps2pd xmm2, xmm2
mov byte [rsp + 0x50], 0xa0
mov byte [rsp + 0x51], 0xab
mov byte [rsp + 0x52], 0xb5
mov byte [rsp + 0x53], 0xc7
mov byte [rsp + 0x54], 0xbc
mov byte [rsp + 0x55], 0xb9
mov byte [rsp + 0x56], 0xb6
mov byte [rsp + 0x57], 0xa7
mov byte [rsp + 0x58], 0xf1
mov byte [rsp + 0x59], 0xbc
mov byte [rsp + 0x5a], 0xd4
mov byte [rsp + 0x5b], 0xc7
mov byte [rsp + 0x5c], 0xca
mov byte [rsp + 0x5d], 0xc3
mov byte [rsp + 0x5e], 0x91
mov byte [rsp + 0x5f], 0x9d
movzx eax, byte [rsp + 0x50]
movabs r11, 0x1040f5a22bb8c48d
mov r10, r11
lea rax, [rsp + 0x50]
sub r10, rax
nop dword [rax + rax]
lea rdx, [rsp + 0x50]
add rdx, r9
movsx r8, byte [rdx]
mov rcx, r9
and ecx, esi
cmp rcx, rsi
cmovae rcx, rsi
shl cl, 2
mov rax, r11
shr rax, cl
and al, sil
add dl, r10b
xor al, dl
xor al, r8b
mov byte [rsp + r9 + 0x50], al
inc r9
cmp r9, 0x10
jb 0x1400547c0
movq r8, xmm2
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x9c0]
call fcn.14004c310
mov byte [rbp - 0x78], 0xc0
mov byte [rbp - 0x77], 0xe0
mov byte [rbp - 0x76], 0xfc
mov byte [rbp - 0x75], 0xf2
mov byte [rbp - 0x74], 0xf1
mov byte [rbp - 0x73], 0xc0
mov byte [rbp - 0x72], 0x84
mov byte [rbp - 0x71], 0xc4
mov byte [rbp - 0x70], 0xd6
mov byte [rbp - 0x6f], 0xc5
mov byte [rbp - 0x6e], 0xd9
mov byte [rbp - 0x6d], 0xc7
mov byte [rbp - 0x6c], 0xc0
mov byte [rbp - 0x6b], 0x8f
mov byte [rbp - 0x6a], 0xcb
mov byte [rbp - 0x69], 0xc2
mov byte [rbp - 0x68], 0xa0
movzx eax, byte [rbp - 0x78]
mov r9, r12
movabs rbx, 0xb1997c872537039b
mov r10, rbx
lea rax, [rbp - 0x78]
sub r10, rax
nop
lea rdx, [rbp - 0x78]
add rdx, r9
movsx r8, byte [rdx]
mov rcx, r9
and ecx, esi
cmp rcx, rsi
cmovae rcx, rsi
shl cl, 2
mov rax, rbx
shr rax, cl
and al, sil
add dl, r10b
xor al, dl
xor al, r8b
mov byte [rbp + r9 - 0x78], al
inc r9
cmp r9, 0x11
jb 0x140054870
movss xmm0, dword [0x14006be18]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp - 0x78]
lea rcx, [rsp + 0x60]
call fcn.14000a650
mov dword [rbp + 0x3a0], 0x41700000
mov dword [rbp + 0x3a4], 0x41c80000
mov dword [rsp + 0x20], 0xff
mov edx, 0xff
mov r9d, edx
mov r8d, edx
lea rcx, [rbp + 0x6c8]
call fcn.140001aa0
call fcn.140007920
mov rbx, rax
lea rcx, [rbp + 0x6c8]
call fcn.140003a70
lea rdx, [rbp + 0x9c0]
lea r9, [rbp + 0x3a0]
jmp 0x140054af0
mov byte [rsp + 0x70], 0xc0
mov byte [rsp + 0x71], 0xe0
mov byte [rsp + 0x72], 0xfc
mov byte [rsp + 0x73], 0xf2
mov byte [rsp + 0x74], 0xf1
mov byte [rsp + 0x75], 0xc0
mov byte [rsp + 0x76], 0x84
mov byte [rsp + 0x77], 0xc4
mov byte [rsp + 0x78], 0xd6
mov byte [rsp + 0x79], 0xc5
mov byte [rsp + 0x7a], 0xd9
mov byte [rsp + 0x7b], 0xc7
mov byte [rsp + 0x7c], 0xc0
mov byte [rsp + 0x7d], 0x8f
mov byte [rsp + 0x7e], 0xcb
mov byte [rsp + 0x7f], 0xc2
mov byte [rbp - 0x80], 0xa0
movzx eax, byte [rsp + 0x70]
movabs rbx, 0xb1997c872537039b
mov r10, rbx
lea rax, [rsp + 0x70]
sub r10, rax
nop dword [rax]
nop word [rax + rax]
lea rdx, [rsp + 0x70]
add rdx, r9
movsx r8, byte [rdx]
mov rcx, r9
and ecx, esi
cmp rcx, rsi
cmovae rcx, rsi
shl cl, 2
mov rax, rbx
shr rax, cl
and al, sil
add dl, r10b
xor al, dl
xor al, r8b
mov byte [rsp + r9 + 0x70], al
inc r9
cmp r9, 0x11
jb 0x1400549a0
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0xa00]
call fcn.14004c310
mov byte [rbp - 0x60], 0xc0
mov byte [rbp - 0x5f], 0xe0
mov byte [rbp - 0x5e], 0xfc
mov byte [rbp - 0x5d], 0xf2
mov byte [rbp - 0x5c], 0xf1
mov byte [rbp - 0x5b], 0xc0
mov byte [rbp - 0x5a], 0x84
mov byte [rbp - 0x59], 0xc4
mov byte [rbp - 0x58], 0xd6
mov byte [rbp - 0x57], 0xc5
mov byte [rbp - 0x56], 0xd9
mov byte [rbp - 0x55], 0xc7
mov byte [rbp - 0x54], 0xc0
mov byte [rbp - 0x53], 0x8f
mov byte [rbp - 0x52], 0xcb
mov byte [rbp - 0x51], 0xc2
mov byte [rbp - 0x50], 0xa0
movzx eax, byte [rbp - 0x60]
mov r9, r12
mov r10, rbx
lea rax, [rbp - 0x60]
sub r10, rax
lea rdx, [rbp - 0x60]
add rdx, r9
movsx r8, byte [rdx]
mov rcx, r9
and ecx, esi
cmp rcx, rsi
cmovae rcx, rsi
shl cl, 2
mov rax, rbx
shr rax, cl
and al, sil
add dl, r10b
xor al, dl
xor al, r8b
mov byte [rbp + r9 - 0x60], al
inc r9
cmp r9, 0x11
jb 0x140054a40
movss xmm0, dword [0x14006be18]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x60]
call fcn.14000a650
mov dword [rbp + 0x3a8], 0x41700000
mov dword [rbp + 0x3ac], 0x41200000
mov dword [rsp + 0x20], 0xff
mov edx, 0xff
mov r9d, edx
mov r8d, edx
lea rcx, [rbp + 0x6d8]
call fcn.140001aa0
call fcn.140007920
mov rbx, rax
lea rcx, [rbp + 0x6d8]
call fcn.140003a70
lea rdx, [rbp + 0xa00]
lea r9, [rbp + 0x3a8]
mov qword [rsp + 0x40], r12
xorps xmm10, xmm10
movss dword [rsp + 0x38], xmm10
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rdx
mov rcx, qword [0x140357540]
mov rdx, qword [rcx + 0x3c18]
mov dword [rsp + 0x20], eax
movaps xmm2, xmm6
mov rcx, rbx
call fcn.140028a90
movss xmm6, dword [0x14006bc1c]
mov rax, qword [0x140357728]
cmp byte [rax + 0xc], 0
je 0x140054c64
call fcn.140007920
mov rbx, rax
mov dword [rsp + 0x20], 0xff
mov r9d, 0xff
xor r8d, r8d
mov edx, r9d
lea rcx, [rbp + 0x288]
call fcn.140001aa0
mov rcx, rax
call fcn.140003a70
mov r9d, eax
mov rcx, qword [0x140357728]
movd xmm2, dword [rcx + 0x10]
cvtdq2ps xmm2, xmm2
mov rcx, qword [0x140357768]
mov eax, dword [rcx + 0x10]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [rcx + 0xc]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x30], xmm0
movss dword [rbp - 0x2c], xmm1
movss dword [rsp + 0x28], xmm6
mov dword [rsp + 0x20], 0x50
lea rdx, [rbp - 0x30]
mov rcx, rbx
call fcn.1400288f0
call fcn.140007920
mov rbx, rax
mov dword [rsp + 0x20], 0xff
mov r9d, 0xff
xor r8d, r8d
lea edx, [r8 + 0x19]
lea rcx, [rbp + 0x200]
call fcn.140001aa0
mov rcx, rax
call fcn.140003a70
mov r9d, eax
mov rcx, qword [0x140357728]
mov edx, dword [rcx + 0x10]
inc edx
movd xmm2, edx
cvtdq2ps xmm2, xmm2
mov rcx, qword [0x140357768]
mov eax, dword [rcx + 0x10]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [rcx + 0xc]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x88], xmm0
movss dword [rbp + 0x8c], xmm1
movss dword [rsp + 0x28], xmm6
mov dword [rsp + 0x20], 0x50
lea rdx, [rbp + 0x88]
mov rcx, rbx
call fcn.1400288f0
mov rax, qword [0x140357710]
cmp byte [rax + 4], 0
je 0x1400551da
mov dword [rsp + 0x20], 0xff
mov edx, 0xff
mov r9d, edx
mov r8d, edx
lea rcx, [rbp + 0x1e8]
call fcn.140001aa0
mov rcx, rax
call fcn.140003a70
mov r9d, eax
mov rcx, qword [0x140357768]
mov eax, dword [rcx + 0x10]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [rcx + 0xc]
cdq
sub eax, edx
sar eax, 1
sub eax, 9
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x90], xmm0
movss dword [rbp + 0x94], xmm1
mov eax, dword [rcx + 0x10]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [rcx + 0xc]
cdq
sub eax, edx
sar eax, 1
sub eax, 2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x98], xmm0
movss dword [rbp + 0x9c], xmm1
movss xmm7, dword [0x14006bc48]
movss dword [rsp + 0x20], xmm7
lea r8, [rbp + 0x90]
lea rdx, [rbp + 0x98]
mov rcx, rdi
call fcn.1400281a0
mov dword [rsp + 0x20], 0xff
mov edx, 0xff
mov r9d, edx
mov r8d, edx
lea rcx, [rbp + 0x640]
call fcn.140001aa0
mov rcx, rax
call fcn.140003a70
mov r9d, eax
mov rcx, qword [0x140357768]
mov eax, dword [rcx + 0x10]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [rcx + 0xc]
cdq
sub eax, edx
sar eax, 1
add eax, 9
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xa0], xmm0
movss dword [rbp + 0xa4], xmm1
mov eax, dword [rcx + 0x10]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [rcx + 0xc]
cdq
sub eax, edx
sar eax, 1
add eax, 2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xa8], xmm0
movss dword [rbp + 0xac], xmm1
movss dword [rsp + 0x20], xmm7
lea r8, [rbp + 0xa0]
lea rdx, [rbp + 0xa8]
mov rcx, rdi
call fcn.1400281a0
mov dword [rsp + 0x20], 0xff
mov edx, 0xff
mov r9d, edx
mov r8d, edx
lea rcx, [rbp + 0x5e0]
call fcn.140001aa0
mov rcx, rax
call fcn.140003a70
mov r9d, eax
mov rcx, qword [0x140357768]
mov eax, dword [rcx + 0x10]
cdq
sub eax, edx
sar eax, 1
sub eax, 9
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [rcx + 0xc]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xb0], xmm0
movss dword [rbp + 0xb4], xmm1
mov eax, dword [rcx + 0x10]
cdq
sub eax, edx
sar eax, 1
sub eax, 2
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [rcx + 0xc]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xb8], xmm0
movss dword [rbp + 0xbc], xmm1
movss dword [rsp + 0x20], xmm7
lea r8, [rbp + 0xb0]
lea rdx, [rbp + 0xb8]
mov rcx, rdi
call fcn.1400281a0
mov dword [rsp + 0x20], 0xff
mov edx, 0xff
mov r9d, edx
mov r8d, edx
lea rcx, [rbp + 0x3c0]
call fcn.140001aa0
mov rcx, rax
call fcn.140003a70
mov r9d, eax
mov rcx, qword [0x140357768]
mov eax, dword [rcx + 0x10]
cdq
sub eax, edx
sar eax, 1
add eax, 9
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [rcx + 0xc]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xc0], xmm0
movss dword [rbp + 0xc4], xmm1
mov eax, dword [rcx + 0x10]
cdq
sub eax, edx
sar eax, 1
add eax, 2
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [rcx + 0xc]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xc8], xmm0
movss dword [rbp + 0xcc], xmm1
movss dword [rsp + 0x20], xmm7
lea r8, [rbp + 0xc0]
lea rdx, [rbp + 0xc8]
mov rcx, rdi
call fcn.1400281a0
mov dword [rsp + 0x20], 0xff
mov edx, 0xff
mov r9d, edx
mov r8d, edx
lea rcx, [rbp + 0x418]
call fcn.140001aa0
mov rcx, rax
call fcn.140003a70
mov r9d, eax
mov rcx, qword [0x140357768]
mov eax, dword [rcx + 0x10]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [rcx + 0xc]
cdq
sub eax, edx
sar eax, 1
sub eax, 8
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xd0], xmm0
movss dword [rbp + 0xd4], xmm1
mov eax, dword [rcx + 0x10]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [rcx + 0xc]
cdq
sub eax, edx
sar eax, 1
sub eax, 3
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xd8], xmm0
movss dword [rbp + 0xdc], xmm1
movss dword [rsp + 0x20], xmm6
lea r8, [rbp + 0xd0]
lea rdx, [rbp + 0xd8]
mov rcx, rdi
call fcn.1400281a0
mov dword [rsp + 0x20], 0xff
mov edx, 0xff
mov r9d, edx
mov r8d, edx
lea rcx, [rbp + 0x368]
call fcn.140001aa0
mov rcx, rax
call fcn.140003a70
mov r9d, eax
mov rcx, qword [0x140357768]
mov eax, dword [rcx + 0x10]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [rcx + 0xc]
cdq
sub eax, edx
sar eax, 1
add eax, 8
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xe0], xmm0
movss dword [rbp + 0xe4], xmm1
mov eax, dword [rcx + 0x10]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [rcx + 0xc]
cdq
sub eax, edx
sar eax, 1
add eax, 3
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xe8], xmm0
movss dword [rbp + 0xec], xmm1
movss dword [rsp + 0x20], xmm6
lea r8, [rbp + 0xe0]
lea rdx, [rbp + 0xe8]
mov rcx, rdi
call fcn.1400281a0
mov dword [rsp + 0x20], 0xff
mov edx, 0xff
mov r9d, edx
mov r8d, edx
lea rcx, [rbp + 0x380]
call fcn.140001aa0
mov rcx, rax
call fcn.140003a70
mov r9d, eax
mov rcx, qword [0x140357768]
mov eax, dword [rcx + 0x10]
cdq
sub eax, edx
sar eax, 1
sub eax, 8
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [rcx + 0xc]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xf0], xmm0
movss dword [rbp + 0xf4], xmm1
mov eax, dword [rcx + 0x10]
cdq
sub eax, edx
sar eax, 1
sub eax, 3
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [rcx + 0xc]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x28], xmm0
movss dword [rbp - 0x24], xmm1
movss dword [rsp + 0x20], xmm6
lea r8, [rbp + 0xf0]
lea rdx, [rbp - 0x28]
mov rcx, rdi
call fcn.1400281a0
mov dword [rsp + 0x20], 0xff
mov edx, 0xff
mov r9d, edx
mov r8d, edx
lea rcx, [rbp + 0x2a8]
call fcn.140001aa0
mov rcx, rax
call fcn.140003a70
mov r9d, eax
mov rcx, qword [0x140357768]
mov eax, dword [rcx + 0x10]
cdq
sub eax, edx
sar eax, 1
add eax, 8
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [rcx + 0xc]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x38], xmm0
movss dword [rbp - 0x34], xmm1
mov eax, dword [rcx + 0x10]
cdq
sub eax, edx
sar eax, 1
add eax, 3
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [rcx + 0xc]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x48], xmm0
movss dword [rbp - 0x44], xmm1
movss dword [rsp + 0x20], xmm6
lea r8, [rbp - 0x38]
lea rdx, [rbp - 0x48]
mov rcx, rdi
call fcn.1400281a0
mov rax, qword [0x140357710]
cmp byte [rax + 7], 0
jne 0x1400551f1
call qword [sym.imp.KERNEL32.dll_GetConsoleWindow]
xor edx, edx
jmp 0x1400551fc
call qword [sym.imp.KERNEL32.dll_GetConsoleWindow]
mov edx, 5
mov rcx, rax
call qword [sym.imp.USER32.dll_ShowWindow]
mov rax, qword [0x140357710]
mov rcx, qword [0x1403575f8]
cmp byte [rax + 8], 0
je 0x140055220
mov edx, 0x11
jmp 0x140055222
xor edx, edx
call qword [sym.imp.USER32.dll_SetWindowDisplayAffinity]
mov rax, qword [0x140357768]
mov rdx, qword [rax]
mov rax, qword [0x140357730]
add rdx, qword [rax]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x310]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005526a
mov rcx, r12
mov qword [rbp + 0x310], rcx
jmp 0x140055271
mov rcx, qword [rbp + 0x310]
mov rax, qword [0x140357798]
mov qword [rax], rcx
mov rax, qword [0x140357730]
mov rdx, qword [rbp + 0x310]
add rdx, qword [rax + 8]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x320]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400552bb
mov rcx, r12
mov qword [rbp + 0x320], rcx
jmp 0x1400552c2
mov rcx, qword [rbp + 0x320]
mov rax, qword [0x140357798]
mov qword [rax + 8], rcx
mov rax, qword [0x140357730]
mov rdx, qword [rbp + 0x320]
add rdx, qword [rax + 0x10]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x300]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005530d
mov rcx, r12
mov qword [rbp + 0x300], rcx
jmp 0x140055314
mov rcx, qword [rbp + 0x300]
mov rax, qword [0x140357798]
mov qword [rax + 0x10], rcx
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x398]
mov rdx, qword [rbp + 0x300]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140055354
mov rcx, r12
mov qword [rbp + 0x398], rcx
jmp 0x14005535b
mov rcx, qword [rbp + 0x398]
mov rax, qword [0x140357798]
mov qword [rax + 0x18], rcx
mov rax, qword [0x140357730]
mov rdx, qword [rbp + 0x398]
add rdx, qword [rax + 0x30]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x3e0]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400553a6
mov rcx, r12
mov qword [rbp + 0x3e0], rcx
jmp 0x1400553ad
mov rcx, qword [rbp + 0x3e0]
mov rax, qword [0x140357798]
mov qword [rax + 0x20], rcx
mov rax, qword [0x140357730]
mov rdx, qword [rbp + 0x3e0]
add rdx, qword [rax + 0x28]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x3b8]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400553f8
mov rcx, r12
mov qword [rbp + 0x3b8], rcx
jmp 0x1400553ff
mov rcx, qword [rbp + 0x3b8]
mov rax, qword [0x140357798]
mov qword [rax + 0x28], rcx
mov rax, qword [0x140357730]
mov rdx, qword [rbp + 0x3b8]
add rdx, qword [rax + 0x18]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x318]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005544a
mov rax, r12
mov qword [rbp + 0x318], rax
jmp 0x140055451
mov rax, qword [rbp + 0x318]
mov rcx, qword [0x140357798]
mov qword [rcx + 0x40], rax
mov rax, qword [0x140357730]
mov rdx, qword [rax + 0x38]
add rdx, qword [rcx + 0x28]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x348]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140055499
mov rax, r12
mov qword [rbp + 0x348], rax
jmp 0x1400554a0
mov rax, qword [rbp + 0x348]
mov rcx, qword [0x140357798]
mov qword [rcx + 0x68], rax
mov rax, qword [0x140357730]
mov rdx, qword [rax + 0x20]
add rdx, qword [rcx]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x358]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400554e7
mov rax, r12
mov qword [rbp + 0x358], rax
jmp 0x1400554ee
mov rax, qword [rbp + 0x358]
mov rcx, qword [0x140357798]
mov qword [rcx + 0x38], rax
mov rax, qword [0x140357730]
mov rdx, qword [rax + 0x40]
add rdx, qword [rcx]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x308]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140055535
mov rax, r12
mov qword [rbp + 0x308], rax
jmp 0x14005553c
mov rax, qword [rbp + 0x308]
mov rcx, qword [0x140357798]
mov qword [rcx + 0x58], rax
mov rax, qword [0x140357730]
mov r8, qword [rax + 0x60]
add r8, qword [rcx + 0x68]
lea rdx, [rbp + 0x2a8]
lea rcx, [0x140357608]
call fcn.14005ff70
mov r8, qword [0x140357798]
mov rcx, qword [rax]
mov qword [r8 + 0x78], rcx
mov rcx, qword [rax + 8]
mov qword [r8 + 0x80], rcx
mov rax, qword [rax + 0x10]
mov qword [r8 + 0x88], rax
mov rax, qword [0x140357730]
mov rdx, qword [rax + 0x78]
add rdx, qword [r8 + 0x40]
mov qword [rsp + 0x20], r12
mov r9d, 4
lea r8, [rbp + 0x2f4]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400555c9
mov eax, r12d
mov dword [rbp + 0x2f4], eax
jmp 0x1400555cf
mov eax, dword [rbp + 0x2f4]
mov rcx, qword [0x140357798]
mov byte [rcx + 0x94], al
mov rax, qword [0x140357730]
mov rdx, qword [rax + 0x58]
add rdx, qword [rcx + 0x58]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x2f8]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140055619
mov rax, r12
mov qword [rbp + 0x2f8], rax
jmp 0x140055620
mov rax, qword [rbp + 0x2f8]
mov rdx, qword [0x140357798]
mov qword [rdx + 0x30], rax
mov rax, qword [0x140357730]
mov rcx, qword [rax + 0x58]
mov rdx, qword [rdx + 0x58]
add rcx, 8
add rdx, rcx
mov qword [rsp + 0x20], r12
mov r9d, 4
lea r8, [rbp + 0x360]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005566e
mov eax, r12d
mov dword [rbp + 0x360], eax
jmp 0x140055674
mov eax, dword [rbp + 0x360]
mov rcx, qword [0x140357798]
mov dword [rcx + 0x70], eax
mov eax, dword [rbp + 0x360]
mov dword [rcx + 0x90], 0x7f7fffff
mov qword [rcx + 0x60], r12
mov edx, r12d
mov dword [rbp + 0x3b8], edx
test eax, eax
je 0x140059168
movzx edi, byte [rbp + 0x2f0]
movzx r15d, byte [rbp + 0x2f0]
movzx r14d, byte [rbp + 0x2f0]
movzx esi, byte [rbp + 0x2f0]
movsd xmm11, qword [0x14006bc90]
movsd xmm9, qword [0x14006be28]
movsd xmm13, qword [0x14006bc50]
movsd xmm14, qword [0x14006bcb0]
nop word [rax + rax]
mov rax, qword [0x140357730]
imul rdx, qword [rax + 0x70]
add rdx, qword [rcx + 0x30]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x350]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005572e
mov rbx, r12
mov qword [rbp + 0x350], rbx
jmp 0x140055735
mov rbx, qword [rbp + 0x350]
mov rax, qword [0x140357730]
mov rdx, qword [rax + 0x50]
add rdx, rbx
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x450]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005576e
mov qword [rbp + 0x450], r12
jmp 0x140055775
mov r12, qword [rbp + 0x450]
mov rax, qword [0x140357730]
mov rdx, qword [rax + 0x78]
add rdx, rbx
xor r13d, r13d
mov qword [rsp + 0x20], r13
lea r9d, [r13 + 4]
lea r8, [rbp + 0x458]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400557ad
mov dword [rbp + 0x458], r13d
lea rdx, [r12 + 0xa20]
mov qword [rsp + 0x20], r13
mov r9d, 8
lea r8, [rbp + 0x638]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400557de
mov qword [rbp + 0x638], r13
test r12, r12
je 0x140059136
mov rax, qword [0x140357730]
mov rdx, qword [rax + 0x68]
add rdx, r12
mov qword [rsp + 0x20], r13
mov r9d, 8
lea r8, [rbp + 0x3b0]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140055823
mov rax, r13
mov qword [rbp + 0x3b0], rax
jmp 0x14005582a
mov rax, qword [rbp + 0x3b0]
mov rcx, qword [0x140357798]
cmp r12, qword [rcx + 0x28]
je 0x14005913d
mov r9d, 0x6d
mov r8, rax
lea rdx, [rbp + 0x2a8]
mov rcx, qword [0x140357780]
call fcn.14004c9c0
movsd xmm0, qword [rbp + 0x2b8]
addsd xmm0, qword [0x14006bc70]
movsd qword [rbp + 0x2f8], xmm0
movsd xmm2, qword [rbp + 0x2a8]
movsd qword [rbp + 0x320], xmm2
movsd xmm0, qword [rbp + 0x2b0]
movsd qword [rbp + 0x358], xmm0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x418], xmm0
mov qword [rbp + 0x428], rax
lea rbx, [rbp + 0xb98]
mov rdx, rbx
lea rcx, [rbp + 0x418]
call fcn.14004c750
nop
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x380], xmm0
mov qword [rbp + 0x390], rax
mov rdx, rbx
lea rcx, [rbp + 0x380]
call fcn.14004c750
nop
mov rax, qword [0x140357768]
mov rdx, qword [rax]
mov rax, qword [0x140357730]
add rdx, qword [rax]
mov qword [rsp + 0x20], r13
mov r9d, 8
lea r8, [rbp + 0x4f8]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005591e
mov rbx, r13
mov qword [rbp + 0x4f8], rbx
jmp 0x140055925
mov rbx, qword [rbp + 0x4f8]
mov rax, qword [0x140357730]
mov rdx, qword [rax + 8]
add rdx, rbx
mov qword [rsp + 0x20], r13
mov r9d, 8
lea r8, [rbp + 0x4f0]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140055961
mov rdx, r13
mov qword [rbp + 0x4f0], rdx
jmp 0x140055968
mov rdx, qword [rbp + 0x4f0]
mov rax, qword [0x140357730]
add rdx, qword [rax + 0x10]
mov qword [rsp + 0x20], r13
mov r9d, 8
lea r8, [rbp + 0x4e8]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400559a1
mov rdx, r13
mov qword [rbp + 0x4e8], rdx
jmp 0x1400559a8
mov rdx, qword [rbp + 0x4e8]
mov qword [rsp + 0x20], r13
mov r9d, 8
lea r8, [rbp + 0x4e0]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400559d6
mov rdx, r13
mov qword [rbp + 0x4e0], rdx
jmp 0x1400559dd
mov rdx, qword [rbp + 0x4e0]
mov rax, qword [0x140357730]
add rdx, qword [rax + 0x30]
mov qword [rsp + 0x20], r13
mov r9d, 8
lea r8, [rbp + 0x4d8]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140055a13
mov qword [rbp + 0x4d8], r13
jmp 0x140055a1a
mov r13, qword [rbp + 0x4d8]
lea rdx, [rbx + 0x110]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x4d0]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140055a53
xor r12d, r12d
mov qword [rbp + 0x4d0], r12
jmp 0x140055a5a
mov r12, qword [rbp + 0x4d0]
lea rdx, [rbx + 0x120]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x4c8]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140055a92
xor ebx, ebx
mov qword [rbp + 0x4c8], rbx
jmp 0x140055a99
mov rbx, qword [rbp + 0x4c8]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x4c0]
mov rdx, rbx
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140055acf
xorps xmm6, xmm6
movsd qword [rbp + 0x4c0], xmm6
jmp 0x140055ad7
movsd xmm6, qword [rbp + 0x4c0]
lea rdx, [rbx + 0x20]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x4b8]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140055b10
xorps xmm8, xmm8
movsd qword [rbp + 0x4b8], xmm8
jmp 0x140055b19
movsd xmm8, qword [rbp + 0x4b8]
lea rdx, [rbx + 0x1d0]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x488]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140055b53
xorps xmm7, xmm7
movsd qword [rbp + 0x488], xmm7
jmp 0x140055b5b
movsd xmm7, qword [rbp + 0x488]
mov r8, r12
lea rdx, [rbp + 0x328]
lea rcx, [0x140357608]
call fcn.14005ff70
movsd xmm0, qword [rax]
movsd qword [rbp + 0x318], xmm0
movsd xmm0, qword [rax + 8]
movsd qword [rbp + 0x348], xmm0
movsd xmm0, qword [rax + 0x10]
movsd qword [rbp + 0x308], xmm0
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_asin
movaps xmm7, xmm0
mulsd xmm7, xmm11
mulsd xmm6, xmm9
movaps xmm1, xmm8
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2
movaps xmm8, xmm0
mulsd xmm8, xmm11
mulsd xmm8, xmm9
mulsd xmm8, xmm9
lea rdx, [r13 + 0x394]
xor r12d, r12d
mov qword [rsp + 0x20], r12
lea r9d, [r12 + 4]
lea r8, [rbp + 0x410]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140055c05
xorps xmm15, xmm15
movss dword [rbp + 0x410], xmm15
jmp 0x140055c0e
movss xmm15, dword [rbp + 0x410]
mulss xmm15, dword [0x14006bd6c]
mov rcx, qword [rbp + 0x380]
xor rcx, qword [rbp + 0x388]
mov qword [rbp + 0x380], rcx
mov rax, qword [rbp + 0x390]
mov qword [rax], rcx
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x368], xmm0
mov qword [rbp + 0x378], rax
lea r13, [rbp + 0xb98]
mov rdx, r13
lea rcx, [rbp + 0x368]
call fcn.14004c750
mulsd xmm7, xmm13
divsd xmm7, xmm14
mulsd xmm8, xmm13
divsd xmm8, xmm14
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm7
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
xorps xmm7, xmm7
cvtss2sd xmm7, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
xorps xmm11, xmm11
cvtss2sd xmm11, xmm0
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm8
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
xorps xmm12, xmm12
cvtss2sd xmm12, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
xorps xmm13, xmm13
cvtss2sd xmm13, xmm0
xorps xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
xorps xmm6, xmm6
cvtss2sd xmm6, xmm0
movsd qword [rbp + 0x300], xmm6
xorps xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
xorps xmm5, xmm5
cvtss2sd xmm5, xmm0
movsd qword [rbp - 0x30], xmm5
movaps xmm3, xmm6
mulsd xmm3, xmm7
movaps xmm9, xmm6
xorps xmm9, xmmword [0x14006c080]
movsd qword [rbp + 0x3a8], xmm9
movaps xmm4, xmm5
mulsd xmm4, xmm7
mov rcx, qword [rbp + 0x368]
xor rcx, qword [rbp + 0x370]
mov qword [rbp + 0x368], rcx
mov rax, qword [rbp + 0x378]
mov qword [rax], rcx
cvtpd2ps xmm0, xmm7
cvtps2pd xmm10, xmm0
movaps xmm1, xmm12
mulsd xmm1, xmm11
cvtpd2ps xmm0, xmm1
cvtps2pd xmm8, xmm0
movaps xmm2, xmm13
mulsd xmm2, xmm11
cvtpd2ps xmm0, xmm2
cvtps2pd xmm6, xmm0
movaps xmm1, xmm11
mulsd xmm1, xmm9
cvtpd2ps xmm0, xmm1
cvtps2pd xmm14, xmm0
movaps xmm2, xmm5
mulsd xmm2, xmm13
movaps xmm0, xmm12
mulsd xmm0, xmm3
addsd xmm2, xmm0
cvtpd2ps xmm0, xmm2
cvtps2pd xmm9, xmm0
movaps xmm1, xmm13
mulsd xmm1, xmm3
movaps xmm0, xmm5
mulsd xmm0, xmm12
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
cvtps2pd xmm7, xmm0
movaps xmm1, xmm5
mulsd xmm1, xmm11
cvtpd2ps xmm0, xmm1
cvtps2pd xmm5, xmm0
movsd xmm1, qword [rbp + 0x300]
movaps xmm2, xmm1
mulsd xmm2, xmm13
movaps xmm0, xmm12
mulsd xmm0, xmm4
subsd xmm2, xmm0
cvtpd2ps xmm0, xmm2
cvtps2pd xmm3, xmm0
mulsd xmm1, xmm12
mulsd xmm13, xmm4
addsd xmm1, xmm13
xorps xmm1, xmmword [0x14006c080]
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm1
cvtps2pd xmm2, xmm0
movsd xmm11, qword [rbp + 0x2f8]
subsd xmm11, qword [rbp + 0x308]
movsd xmm12, qword [rbp + 0x358]
subsd xmm12, qword [rbp + 0x348]
movsd xmm13, qword [rbp + 0x320]
subsd xmm13, qword [rbp + 0x318]
movaps xmm4, xmm13
mulsd xmm4, xmm6
movaps xmm0, xmm12
mulsd xmm0, xmm8
addsd xmm4, xmm0
movaps xmm1, xmm11
mulsd xmm1, xmm10
addsd xmm4, xmm1
movaps xmm8, xmm13
mulsd xmm8, xmm2
movaps xmm0, xmm12
mulsd xmm0, xmm3
addsd xmm8, xmm0
movaps xmm1, xmm11
mulsd xmm1, xmm5
addsd xmm8, xmm1
mulsd xmm13, xmm7
mulsd xmm12, xmm9
addsd xmm13, xmm12
mulsd xmm11, xmm14
addsd xmm13, xmm11
movsd xmm7, qword [0x14006bc40]
maxsd xmm7, xmm4
mov rbx, qword [0x140357768]
movd xmm6, dword [rbx + 0xc]
cvtdq2ps xmm6, xmm6
mulss xmm6, dword [0x14006bbe8]
mulss xmm15, dword [0x14006bc88]
divss xmm15, dword [0x14006bdbc]
movaps xmm0, xmm15
call sub.api_ms_win_crt_math_l1_1_0.dll_tanf
movaps xmm1, xmm6
divss xmm1, xmm0
cvtps2pd xmm3, xmm1
movd xmm2, dword [rbx + 0x10]
cvtdq2ps xmm2, xmm2
mulss xmm2, dword [0x14006bbe8]
cvtps2pd xmm1, xmm2
mulsd xmm8, xmm3
divsd xmm8, xmm7
subsd xmm1, xmm8
movsd qword [rbp + 0x358], xmm1
mulsd xmm13, xmm3
divsd xmm13, xmm7
cvtps2pd xmm0, xmm6
addsd xmm13, xmm0
movsd qword [rbp + 0x320], xmm13
movsd qword [rbp + 0x2e0], xmm13
movsd qword [rbp + 0x2e8], xmm1
mov rcx, qword [rbp + 0x418]
xor rcx, qword [rbp + 0x420]
mov qword [rbp + 0x418], rcx
mov rax, qword [rbp + 0x428]
mov qword [rax], rcx
xor r9d, r9d
mov r8, qword [rbp + 0x3b0]
lea rdx, [rbp + 0x640]
mov rcx, qword [0x140357780]
call fcn.14004c9c0
movsd xmm2, qword [rbp + 0x640]
movsd qword [rbp + 0x310], xmm2
movsd xmm0, qword [rbp + 0x648]
movsd qword [rbp + 0x348], xmm0
movsd xmm0, qword [rbp + 0x650]
movsd qword [rbp + 0x2f8], xmm0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x3c0], xmm0
mov qword [rbp + 0x3d0], rax
mov rdx, r13
lea rcx, [rbp + 0x3c0]
call fcn.14004c750
nop
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x380], xmm0
mov qword [rbp + 0x390], rax
mov rdx, r13
lea rcx, [rbp + 0x380]
call fcn.14004c750
nop
mov rax, qword [0x140357768]
mov rdx, qword [rax]
mov rax, qword [0x140357730]
add rdx, qword [rax]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x470]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005601a
mov rbx, r12
mov qword [rbp + 0x470], rbx
jmp 0x140056021
mov rbx, qword [rbp + 0x470]
mov rax, qword [0x140357730]
mov rdx, qword [rax + 8]
add rdx, rbx
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x468]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005605d
mov rdx, r12
mov qword [rbp + 0x468], rdx
jmp 0x140056064
mov rdx, qword [rbp + 0x468]
mov rax, qword [0x140357730]
add rdx, qword [rax + 0x10]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x460]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005609d
mov rdx, r12
mov qword [rbp + 0x460], rdx
jmp 0x1400560a4
mov rdx, qword [rbp + 0x460]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x5d8]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400560d2
mov rdx, r12
mov qword [rbp + 0x5d8], rdx
jmp 0x1400560d9
mov rdx, qword [rbp + 0x5d8]
mov rax, qword [0x140357730]
add rdx, qword [rax + 0x30]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x5d0]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140056112
mov r13, r12
mov qword [rbp + 0x5d0], r12
jmp 0x140056119
mov r13, qword [rbp + 0x5d0]
lea rdx, [rbx + 0x110]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x5c0]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005614b
mov qword [rbp + 0x5c0], r12
jmp 0x140056152
mov r12, qword [rbp + 0x5c0]
lea rdx, [rbx + 0x120]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x5b8]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005618a
xor ebx, ebx
mov qword [rbp + 0x5b8], rbx
jmp 0x140056191
mov rbx, qword [rbp + 0x5b8]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x5b0]
mov rdx, rbx
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400561c7
xorps xmm6, xmm6
movsd qword [rbp + 0x5b0], xmm6
jmp 0x1400561cf
movsd xmm6, qword [rbp + 0x5b0]
lea rdx, [rbx + 0x20]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x5a8]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140056208
xorps xmm8, xmm8
movsd qword [rbp + 0x5a8], xmm8
jmp 0x140056211
movsd xmm8, qword [rbp + 0x5a8]
lea rdx, [rbx + 0x1d0]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x5a0]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005624b
xorps xmm7, xmm7
movsd qword [rbp + 0x5a0], xmm7
jmp 0x140056253
movsd xmm7, qword [rbp + 0x5a0]
mov r8, r12
lea rdx, [rbp + 0x328]
lea rcx, [0x140357608]
call fcn.14005ff70
movsd xmm0, qword [rax]
movsd qword [rbp - 0x48], xmm0
movsd xmm0, qword [rax + 8]
movsd qword [rbp + 0x318], xmm0
movsd xmm0, qword [rax + 0x10]
movsd qword [rbp + 0x308], xmm0
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_asin
movaps xmm7, xmm0
mulsd xmm7, qword [0x14006bc90]
movsd xmm10, qword [0x14006be28]
mulsd xmm6, xmm10
movaps xmm1, xmm8
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2
movaps xmm9, xmm0
mulsd xmm9, qword [0x14006bc90]
mulsd xmm9, xmm10
mulsd xmm9, xmm10
lea rdx, [r13 + 0x394]
xor r12d, r12d
mov qword [rsp + 0x20], r12
lea r9d, [r12 + 4]
lea r8, [rbp + 0x40c]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005630a
xorps xmm15, xmm15
movss dword [rbp + 0x40c], xmm15
jmp 0x140056313
movss xmm15, dword [rbp + 0x40c]
mulss xmm15, dword [0x14006bd6c]
mov rcx, qword [rbp + 0x380]
xor rcx, qword [rbp + 0x388]
mov qword [rbp + 0x380], rcx
mov rax, qword [rbp + 0x390]
mov qword [rax], rcx
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x368], xmm0
mov qword [rbp + 0x378], rax
lea r13, [rbp + 0xb98]
mov rdx, r13
lea rcx, [rbp + 0x368]
call fcn.14004c750
mulsd xmm7, qword [0x14006bc50]
divsd xmm7, qword [0x14006bcb0]
mulsd xmm9, qword [0x14006bc50]
divsd xmm9, qword [0x14006bcb0]
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm7
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
xorps xmm7, xmm7
cvtss2sd xmm7, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
xorps xmm8, xmm8
cvtss2sd xmm8, xmm0
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm9
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
xorps xmm10, xmm10
cvtss2sd xmm10, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
xorps xmm11, xmm11
cvtss2sd xmm11, xmm0
movsd xmm3, qword [rbp + 0x300]
mulsd xmm3, xmm7
movsd xmm5, qword [rbp - 0x30]
movaps xmm4, xmm5
mulsd xmm4, xmm7
mov rcx, qword [rbp + 0x368]
xor rcx, qword [rbp + 0x370]
mov qword [rbp + 0x368], rcx
mov rax, qword [rbp + 0x378]
mov qword [rax], rcx
cvtpd2ps xmm0, xmm7
cvtps2pd xmm13, xmm0
movaps xmm1, xmm10
mulsd xmm1, xmm8
cvtpd2ps xmm0, xmm1
cvtps2pd xmm9, xmm0
movaps xmm2, xmm11
mulsd xmm2, xmm8
cvtpd2ps xmm0, xmm2
cvtps2pd xmm6, xmm0
movaps xmm1, xmm8
mulsd xmm1, qword [rbp + 0x3a8]
cvtpd2ps xmm0, xmm1
cvtps2pd xmm14, xmm0
movaps xmm2, xmm5
mulsd xmm2, xmm11
movaps xmm0, xmm10
mulsd xmm0, xmm3
addsd xmm2, xmm0
cvtpd2ps xmm0, xmm2
cvtps2pd xmm12, xmm0
movaps xmm1, xmm11
mulsd xmm1, xmm3
movaps xmm0, xmm5
mulsd xmm0, xmm10
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
cvtps2pd xmm7, xmm0
movaps xmm1, xmm5
mulsd xmm1, xmm8
cvtpd2ps xmm0, xmm1
cvtps2pd xmm5, xmm0
movsd xmm1, qword [rbp + 0x300]
movaps xmm2, xmm1
mulsd xmm2, xmm11
movaps xmm0, xmm10
mulsd xmm0, xmm4
subsd xmm2, xmm0
cvtpd2ps xmm0, xmm2
cvtps2pd xmm3, xmm0
mulsd xmm1, xmm10
mulsd xmm11, xmm4
addsd xmm1, xmm11
xorps xmm1, xmmword [0x14006c080]
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm1
cvtps2pd xmm2, xmm0
movsd xmm10, qword [rbp + 0x2f8]
subsd xmm10, qword [rbp + 0x308]
movsd xmm11, qword [rbp + 0x348]
subsd xmm11, qword [rbp + 0x318]
movsd xmm0, qword [rbp + 0x310]
subsd xmm0, qword [rbp - 0x48]
movsd qword [rbp + 0x310], xmm0
movaps xmm4, xmm0
mulsd xmm4, xmm6
movaps xmm0, xmm11
mulsd xmm0, xmm9
addsd xmm4, xmm0
movaps xmm1, xmm10
mulsd xmm1, xmm13
addsd xmm4, xmm1
movsd xmm9, qword [rbp + 0x310]
movaps xmm8, xmm9
mulsd xmm8, xmm2
movaps xmm0, xmm11
mulsd xmm0, xmm3
addsd xmm8, xmm0
movaps xmm1, xmm10
mulsd xmm1, xmm5
addsd xmm8, xmm1
mulsd xmm9, xmm7
mulsd xmm11, xmm12
addsd xmm9, xmm11
mulsd xmm10, xmm14
addsd xmm9, xmm10
movsd xmm7, qword [0x14006bc40]
maxsd xmm7, xmm4
mov rbx, qword [0x140357768]
movd xmm6, dword [rbx + 0xc]
cvtdq2ps xmm6, xmm6
mulss xmm6, dword [0x14006bbe8]
mulss xmm15, dword [0x14006bc88]
divss xmm15, dword [0x14006bdbc]
movaps xmm0, xmm15
call sub.api_ms_win_crt_math_l1_1_0.dll_tanf
movaps xmm1, xmm6
divss xmm1, xmm0
cvtps2pd xmm3, xmm1
movd xmm2, dword [rbx + 0x10]
cvtdq2ps xmm2, xmm2
mulss xmm2, dword [0x14006bbe8]
cvtps2pd xmm1, xmm2
movaps xmm0, xmm3
mulsd xmm0, xmm8
divsd xmm0, xmm7
subsd xmm1, xmm0
movsd qword [rbp + 0x348], xmm1
mulsd xmm9, xmm3
divsd xmm9, xmm7
cvtps2pd xmm0, xmm6
addsd xmm9, xmm0
movsd qword [rbp + 0x310], xmm9
movsd qword [rbp + 0x2d0], xmm9
movsd qword [rbp + 0x2d8], xmm1
mov rcx, qword [rbp + 0x3c0]
xor rcx, qword [rbp + 0x3c8]
mov qword [rbp + 0x3c0], rcx
mov rax, qword [rbp + 0x3d0]
mov qword [rax], rcx
movsd xmm0, qword [rbp + 0x2a8]
movsd qword [rbp - 0x48], xmm0
movsd xmm1, qword [rbp + 0x2b0]
movsd qword [rbp + 0x3a0], xmm1
movsd xmm0, qword [rbp + 0x2b8]
movsd qword [rbp + 0x2f8], xmm0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x418], xmm0
mov qword [rbp + 0x428], rax
mov rdx, r13
lea rcx, [rbp + 0x418]
call fcn.14004c750
nop
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x380], xmm0
mov qword [rbp + 0x390], rax
mov rdx, r13
lea rcx, [rbp + 0x380]
call fcn.14004c750
nop
mov rax, qword [0x140357768]
mov rdx, qword [rax]
mov rax, qword [0x140357730]
add rdx, qword [rax]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x598]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400566e6
mov rbx, r12
mov qword [rbp + 0x598], rbx
jmp 0x1400566ed
mov rbx, qword [rbp + 0x598]
mov rax, qword [0x140357730]
mov rdx, qword [rax + 8]
add rdx, rbx
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x590]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140056729
mov rdx, r12
mov qword [rbp + 0x590], rdx
jmp 0x140056730
mov rdx, qword [rbp + 0x590]
mov rax, qword [0x140357730]
add rdx, qword [rax + 0x10]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x578]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140056769
mov rdx, r12
mov qword [rbp + 0x578], rdx
jmp 0x140056770
mov rdx, qword [rbp + 0x578]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x588]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005679e
mov rdx, r12
mov qword [rbp + 0x588], rdx
jmp 0x1400567a5
mov rdx, qword [rbp + 0x588]
mov rax, qword [0x140357730]
add rdx, qword [rax + 0x30]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x580]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400567de
mov r13, r12
mov qword [rbp + 0x580], r12
jmp 0x1400567e5
mov r13, qword [rbp + 0x580]
lea rdx, [rbx + 0x110]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x570]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140056817
mov qword [rbp + 0x570], r12
jmp 0x14005681e
mov r12, qword [rbp + 0x570]
lea rdx, [rbx + 0x120]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x500]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140056856
xor ebx, ebx
mov qword [rbp + 0x500], rbx
jmp 0x14005685d
mov rbx, qword [rbp + 0x500]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x568]
mov rdx, rbx
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140056893
xorps xmm6, xmm6
movsd qword [rbp + 0x568], xmm6
jmp 0x14005689b
movsd xmm6, qword [rbp + 0x568]
lea rdx, [rbx + 0x20]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x560]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400568d4
xorps xmm8, xmm8
movsd qword [rbp + 0x560], xmm8
jmp 0x1400568dd
movsd xmm8, qword [rbp + 0x560]
lea rdx, [rbx + 0x1d0]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x558]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140056917
xorps xmm7, xmm7
movsd qword [rbp + 0x558], xmm7
jmp 0x14005691f
movsd xmm7, qword [rbp + 0x558]
mov r8, r12
lea rdx, [rbp + 0x1e8]
lea rcx, [0x140357608]
call fcn.14005ff70
movsd xmm0, qword [rax]
movsd qword [rbp - 0x38], xmm0
movsd xmm0, qword [rax + 8]
movsd qword [rbp + 0x318], xmm0
movsd xmm0, qword [rax + 0x10]
movsd qword [rbp + 0x308], xmm0
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_asin
movaps xmm7, xmm0
mulsd xmm7, qword [0x14006bc90]
movsd xmm10, qword [0x14006be28]
mulsd xmm6, xmm10
movaps xmm1, xmm8
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2
movaps xmm9, xmm0
mulsd xmm9, qword [0x14006bc90]
mulsd xmm9, xmm10
mulsd xmm9, xmm10
lea rdx, [r13 + 0x394]
xor r12d, r12d
mov qword [rsp + 0x20], r12
lea r9d, [r12 + 4]
lea r8, [rbp + 0x408]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400569d6
xorps xmm15, xmm15
movss dword [rbp + 0x408], xmm15
jmp 0x1400569df
movss xmm15, dword [rbp + 0x408]
mulss xmm15, dword [0x14006bd6c]
mov rcx, qword [rbp + 0x380]
xor rcx, qword [rbp + 0x388]
mov qword [rbp + 0x380], rcx
mov rax, qword [rbp + 0x390]
mov qword [rax], rcx
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x368], xmm0
mov qword [rbp + 0x378], rax
lea r13, [rbp + 0xb98]
mov rdx, r13
lea rcx, [rbp + 0x368]
call fcn.14004c750
mulsd xmm7, qword [0x14006bc50]
divsd xmm7, qword [0x14006bcb0]
mulsd xmm9, qword [0x14006bc50]
divsd xmm9, qword [0x14006bcb0]
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm7
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
xorps xmm7, xmm7
cvtss2sd xmm7, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
xorps xmm8, xmm8
cvtss2sd xmm8, xmm0
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm9
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
xorps xmm11, xmm11
cvtss2sd xmm11, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
xorps xmm6, xmm6
cvtss2sd xmm6, xmm0
movsd xmm3, qword [rbp + 0x300]
mulsd xmm3, xmm7
movsd xmm4, qword [rbp - 0x30]
movaps xmm10, xmm4
mulsd xmm10, xmm7
mov rcx, qword [rbp + 0x368]
xor rcx, qword [rbp + 0x370]
mov qword [rbp + 0x368], rcx
mov rax, qword [rbp + 0x378]
mov qword [rax], rcx
cvtpd2ps xmm0, xmm7
cvtps2pd xmm13, xmm0
movaps xmm1, xmm11
mulsd xmm1, xmm8
cvtpd2ps xmm0, xmm1
cvtps2pd xmm7, xmm0
movaps xmm2, xmm6
mulsd xmm2, xmm8
cvtpd2ps xmm0, xmm2
cvtps2pd xmm5, xmm0
movsd xmm1, qword [rbp + 0x3a8]
mulsd xmm1, xmm8
cvtpd2ps xmm0, xmm1
cvtps2pd xmm14, xmm0
movaps xmm2, xmm3
mulsd xmm2, xmm11
movaps xmm0, xmm4
mulsd xmm0, xmm6
addsd xmm2, xmm0
cvtpd2ps xmm0, xmm2
cvtps2pd xmm12, xmm0
mulsd xmm3, xmm6
movaps xmm0, xmm4
mulsd xmm0, xmm11
subsd xmm3, xmm0
cvtpd2ps xmm0, xmm3
cvtps2pd xmm9, xmm0
movaps xmm1, xmm4
mulsd xmm1, xmm8
cvtpd2ps xmm0, xmm1
cvtps2pd xmm4, xmm0
movsd xmm2, qword [rbp + 0x300]
mulsd xmm2, xmm6
movaps xmm0, xmm10
mulsd xmm0, xmm11
subsd xmm2, xmm0
cvtpd2ps xmm0, xmm2
cvtps2pd xmm3, xmm0
mulsd xmm10, xmm6
movsd xmm0, qword [rbp + 0x300]
mulsd xmm0, xmm11
addsd xmm10, xmm0
xorps xmm10, xmmword [0x14006c080]
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm10
cvtps2pd xmm1, xmm0
movsd xmm6, qword [rbp + 0x2f8]
subsd xmm6, qword [rbp + 0x308]
movsd xmm11, qword [rbp + 0x3a0]
subsd xmm11, qword [rbp + 0x318]
movsd xmm10, qword [rbp - 0x48]
subsd xmm10, qword [rbp - 0x38]
movaps xmm2, xmm11
mulsd xmm2, xmm7
movaps xmm0, xmm10
mulsd xmm0, xmm5
addsd xmm2, xmm0
mulsd xmm13, xmm6
addsd xmm2, xmm13
movaps xmm8, xmm11
mulsd xmm8, xmm3
movaps xmm0, xmm10
mulsd xmm0, xmm1
addsd xmm8, xmm0
movaps xmm1, xmm6
mulsd xmm1, xmm4
addsd xmm8, xmm1
mulsd xmm11, xmm12
mulsd xmm10, xmm9
addsd xmm11, xmm10
mulsd xmm6, xmm14
addsd xmm11, xmm6
movsd xmm7, qword [0x14006bc40]
maxsd xmm7, xmm2
mov rbx, qword [0x140357768]
xorps xmm6, xmm6
cvtsi2ss xmm6, dword [rbx + 0xc]
movss xmm9, dword [0x14006bbe8]
mulss xmm6, xmm9
mulss xmm15, dword [0x14006bc88]
divss xmm15, dword [0x14006bdbc]
movaps xmm0, xmm15
call sub.api_ms_win_crt_math_l1_1_0.dll_tanf
movaps xmm1, xmm6
divss xmm1, xmm0
cvtps2pd xmm3, xmm1
xorps xmm2, xmm2
cvtsi2ss xmm2, dword [rbx + 0x10]
mulss xmm2, xmm9
cvtps2pd xmm12, xmm2
movaps xmm0, xmm3
mulsd xmm0, xmm8
divsd xmm0, xmm7
subsd xmm12, xmm0
movsd qword [rbp - 0x28], xmm12
mulsd xmm11, xmm3
divsd xmm11, xmm7
cvtps2pd xmm0, xmm6
addsd xmm11, xmm0
movsd qword [rbp + 0x3a0], xmm11
movsd qword [rbp + 0x6b8], xmm11
movsd qword [rbp + 0x6c0], xmm12
mov rcx, qword [rbp + 0x418]
xor rcx, qword [rbp + 0x420]
mov qword [rbp + 0x418], rcx
mov rax, qword [rbp + 0x428]
mov qword [rax], rcx
movsd xmm14, qword [rbp + 0x358]
movaps xmm0, xmm14
movsd xmm15, qword [rbp + 0x348]
subsd xmm0, xmm15
andps xmm0, xmmword [0x14006c070]
cvtpd2ps xmm8, xmm0
cvtps2pd xmm0, xmm8
mulsd xmm0, qword [0x14006bc30]
cvtpd2ps xmm7, xmm0
mov rax, qword [0x140357798]
movsd xmm1, qword [rbp + 0x2b0]
subsd xmm1, qword [rax + 0x80]
movsd xmm2, qword [rbp + 0x2a8]
subsd xmm2, qword [rax + 0x78]
movsd xmm0, qword [rbp + 0x2b8]
subsd xmm0, qword [rax + 0x88]
mulsd xmm2, xmm2
mulsd xmm1, xmm1
addsd xmm2, xmm1
mulsd xmm0, xmm0
addsd xmm2, xmm0
cvtpd2ps xmm1, xmm2
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x140056d7f
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x140056d87
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
cvtss2sd xmm0, xmm0
divsd xmm0, qword [0x14006bc98]
cvtsd2ss xmm0, xmm0
movss dword [rbp + 0x398], xmm0
mov rax, qword [0x140357778]
cmp byte [rax + 0xc], 0
je 0x140058f8b
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x3c0], xmm0
mov qword [rbp + 0x3d0], rax
mov rdx, r13
lea rcx, [rbp + 0x3c0]
call fcn.14004c750
nop
mov rax, qword [0x140357730]
mov rdx, qword [rax + 0xc0]
mov rbx, qword [rbp + 0x3b0]
add rdx, rbx
mov qword [rsp + 0x20], r12
mov r9d, 4
lea r8, [rbp + 0x404]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140056e1a
xorps xmm6, xmm6
movss dword [rbp + 0x404], xmm6
jmp 0x140056e22
movss xmm6, dword [rbp + 0x404]
mov rax, qword [0x140357730]
mov rdx, qword [rax + 0xc8]
add rdx, rbx
mov qword [rsp + 0x20], r12
mov r9d, 4
lea r8, [rbp + 0x400]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140056e62
xorps xmm0, xmm0
movss dword [rbp + 0x400], xmm0
jmp 0x140056e6a
movss xmm0, dword [rbp + 0x400]
addss xmm0, dword [0x14006bba4]
comiss xmm0, xmm6
setae dl
mov rcx, qword [rbp + 0x3c0]
xor rcx, qword [rbp + 0x3c8]
mov qword [rbp + 0x3c0], rcx
mov rax, qword [rbp + 0x3d0]
mov qword [rax], rcx
mov rax, qword [0x140357740]
test dl, dl
je 0x140056f02
movss xmm2, dword [rax + 8]
movss xmm1, dword [rax + 4]
movss xmm0, dword [rax]
mov rax, qword [0x140357540]
movss dword [rbp + 0x600], xmm0
movss dword [rbp + 0x604], xmm1
movss dword [rbp + 0x608], xmm2
movss xmm0, dword [rax + 0x37d0]
movss dword [rbp + 0x60c], xmm0
lea rcx, [rbp + 0x600]
call fcn.140003a70
mov edx, eax
lea rcx, [rbp + 0x198]
call fcn.14004cc90
movups xmm0, xmmword [rbp + 0x198]
jmp 0x140056f61
movss xmm2, dword [rax + 0x18]
movss xmm1, dword [rax + 0x14]
movss xmm0, dword [rax + 0x10]
mov rax, qword [0x140357540]
movss dword [rbp + 0x610], xmm0
movss dword [rbp + 0x614], xmm1
movss dword [rbp + 0x618], xmm2
movss xmm0, dword [rax + 0x37d0]
movss dword [rbp + 0x61c], xmm0
lea rcx, [rbp + 0x610]
call fcn.140003a70
mov edx, eax
lea rcx, [rbp + 0x188]
call fcn.14004cc90
movups xmm0, xmmword [rbp + 0x188]
movups xmmword [0x140357808], xmm0
mov rax, qword [0x140357778]
cmp byte [rax + 0xc], 0
je 0x140058f84
cmp byte [rax + 0x10], 0
je 0x1400571bc
mov ecx, dword [rax + 8]
test ecx, ecx
jne 0x14005711a
call fcn.140007920
mov rbx, rax
mov rcx, qword [0x140357778]
movss xmm6, dword [rcx]
lea rcx, [0x140357808]
call fcn.140003a70
cvtpd2ps xmm10, xmm14
mulss xmm7, xmm9
cvtps2pd xmm1, xmm7
movaps xmm0, xmm1
addsd xmm0, qword [rbp + 0x310]
cvtpd2ps xmm9, xmm0
movss dword [rbp + 0x18], xmm9
movss dword [rbp + 0x1c], xmm10
movsd xmm2, qword [rbp + 0x320]
subsd xmm2, xmm1
cvtpd2ps xmm7, xmm2
movss dword [rbp + 0xf8], xmm7
movss dword [rbp + 0xfc], xmm10
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x18]
lea rdx, [rbp + 0xf8]
mov rcx, rbx
call fcn.1400281a0
call fcn.140007920
mov rbx, rax
mov rcx, qword [0x140357778]
movss xmm6, dword [rcx]
lea rcx, [0x140357808]
call fcn.140003a70
cvtpd2ps xmm8, xmm15
movss dword [rbp + 0x20], xmm7
movss dword [rbp + 0x24], xmm8
movss dword [rbp + 0x28], xmm7
movss dword [rbp + 0x2c], xmm10
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x20]
lea rdx, [rbp + 0x28]
mov rcx, rbx
call fcn.1400281a0
call fcn.140007920
mov rbx, rax
mov rcx, qword [0x140357778]
movss xmm6, dword [rcx]
lea rcx, [0x140357808]
call fcn.140003a70
movss dword [rbp + 0x30], xmm9
movss dword [rbp + 0x34], xmm8
movss dword [rbp + 0x38], xmm7
movss dword [rbp + 0x3c], xmm8
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x30]
lea rdx, [rbp + 0x38]
mov rcx, rbx
call fcn.1400281a0
call fcn.140007920
mov rbx, rax
mov rcx, qword [0x140357778]
movss xmm6, dword [rcx]
lea rcx, [0x140357808]
call fcn.140003a70
movss dword [rbp + 0x40], xmm9
movss dword [rbp + 0x44], xmm8
movss dword [rbp + 0x48], xmm9
movss dword [rbp + 0x4c], xmm10
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x48]
mov rcx, rbx
call fcn.1400281a0
movss xmm9, dword [0x14006bbe8]
mov rbx, qword [rbp + 0x3b0]
jmp 0x1400571b5
cmp ecx, 1
jne 0x14005716e
lea rcx, [0x140357808]
call fcn.140003a70
mov rcx, qword [0x140357778]
cvttss2si r10d, dword [rcx]
cvttss2si r9d, xmm8
cvttss2si r8d, xmm7
cvttsd2si edx, xmm14
mulss xmm7, xmm9
cvtps2pd xmm0, xmm7
movsd xmm2, qword [rbp + 0x320]
subsd xmm2, xmm0
cvttsd2si ecx, xmm2
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r10d
call fcn.140052870
jmp 0x1400571b5
cmp ecx, 2
jne 0x1400571bc
lea rcx, [0x140357808]
call fcn.140003a70
mov rcx, qword [0x140357778]
movss xmm0, dword [rcx]
mov dword [rsp + 0x28], eax
movss dword [rsp + 0x20], xmm0
movss xmm0, dword [0x14006bd70]
movaps xmm3, xmm0
movaps xmm2, xmm0
lea rdx, [rbp + 0x2a8]
lea rcx, [rbp + 0x640]
call fcn.14004ff20
mov rax, qword [0x140357778]
cmp byte [rax + 0xf], 0
je 0x14005848a
movaps xmm0, xmmword [0x14006c030]
movups xmmword [rsp + 0x60], xmm0
lea rcx, [rsp + 0x60]
call fcn.140003a70
mov dword [rbp + 0x3e0], eax
mov r9d, 0x6d
mov r8, rbx
lea rdx, [rbp + 0x850]
mov rcx, qword [0x140357780]
call fcn.14004c9c0
mov r9d, 2
mov r8, rbx
lea rdx, [rbp + 0x868]
mov rcx, qword [0x140357780]
call fcn.14004c9c0
mov r9d, 0x42
mov r8, rbx
lea rdx, [rbp + 0x880]
mov rcx, qword [0x140357780]
call fcn.14004c9c0
mov r9d, 9
mov r8, rbx
lea rdx, [rbp + 0x898]
mov rcx, qword [0x140357780]
call fcn.14004c9c0
mov r9d, 0x26
mov r8, rbx
lea rdx, [rbp + 0x8b0]
mov rcx, qword [0x140357780]
call fcn.14004c9c0
mov r9d, 0xa
mov r8, rbx
lea rdx, [rbp + 0x8c8]
mov rcx, qword [0x140357780]
call fcn.14004c9c0
mov r9d, 0x27
mov r8, rbx
lea rdx, [rbp + 0x8e0]
mov rcx, qword [0x140357780]
call fcn.14004c9c0
mov r9d, 0xb
mov r8, rbx
lea rdx, [rbp + 0x8f8]
mov rcx, qword [0x140357780]
call fcn.14004c9c0
mov r9d, 0x28
mov r8, rbx
lea rdx, [rbp + 0x910]
mov rcx, qword [0x140357780]
call fcn.14004c9c0
mov r9d, 0x4e
mov r8, rbx
lea rdx, [rbp + 0x928]
mov rcx, qword [0x140357780]
call fcn.14004c9c0
mov r9d, 0x47
mov r8, rbx
lea rdx, [rbp + 0x940]
mov rcx, qword [0x140357780]
call fcn.14004c9c0
mov r9d, 0x4f
mov r8, rbx
lea rdx, [rbp + 0x958]
mov rcx, qword [0x140357780]
call fcn.14004c9c0
mov r9d, 0x48
mov r8, rbx
lea rdx, [rbp + 0x970]
mov rcx, qword [0x140357780]
call fcn.14004c9c0
mov r9d, 0x4b
mov r8, rbx
lea rdx, [rbp + 0x988]
mov rcx, qword [0x140357780]
call fcn.14004c9c0
mov r9d, 0x52
mov r8, rbx
lea rdx, [rbp + 0x9a0]
mov rcx, qword [0x140357780]
call fcn.14004c9c0
lea rax, [fcn.140001a90]
mov qword [rsp + 0x20], rax
lea r9, [0x14001c8f0]
mov edx, 0x10
mov r8d, edx
lea rcx, [rbp + 0x750]
call fcn.140061334
nop
lea rax, [rbp + 0x750]
mov qword [rbp + 0x2f8], rax
lea r14, [rbp + 0x850]
mov qword [rbp + 0x308], 0x10
nop
movups xmm0, xmmword [r14]
movups xmmword [rbp - 0x60], xmm0
movsd xmm1, qword [r14 + 0x10]
movsd qword [rbp - 0x50], xmm1
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x328], xmm0
mov qword [rbp + 0x338], rax
mov rdx, r13
lea rcx, [rbp + 0x328]
call fcn.14004c750
nop
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x3c0], xmm0
mov qword [rbp + 0x3d0], rax
mov rdx, r13
lea rcx, [rbp + 0x3c0]
call fcn.14004c750
nop
mov rax, qword [0x140357768]
mov rdx, qword [rax]
mov rax, qword [0x140357730]
add rdx, qword [rax]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x550]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005746b
mov rbx, r12
mov qword [rbp + 0x550], rbx
jmp 0x140057472
mov rbx, qword [rbp + 0x550]
mov rax, qword [0x140357730]
mov rdx, qword [rax + 8]
add rdx, rbx
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x548]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400574ae
mov rdx, r12
mov qword [rbp + 0x548], rdx
jmp 0x1400574b5
mov rdx, qword [rbp + 0x548]
mov rax, qword [0x140357730]
add rdx, qword [rax + 0x10]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x540]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400574ee
mov rdx, r12
mov qword [rbp + 0x540], rdx
jmp 0x1400574f5
mov rdx, qword [rbp + 0x540]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x538]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140057523
mov rdx, r12
mov qword [rbp + 0x538], rdx
jmp 0x14005752a
mov rdx, qword [rbp + 0x538]
mov rax, qword [0x140357730]
add rdx, qword [rax + 0x30]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x530]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140057563
mov r13, r12
mov qword [rbp + 0x530], r12
jmp 0x14005756a
mov r13, qword [rbp + 0x530]
lea rdx, [rbx + 0x110]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x520]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005759c
mov qword [rbp + 0x520], r12
jmp 0x1400575a3
mov r12, qword [rbp + 0x520]
lea rdx, [rbx + 0x120]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x518]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400575db
xor ebx, ebx
mov qword [rbp + 0x518], rbx
jmp 0x1400575e2
mov rbx, qword [rbp + 0x518]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x510]
mov rdx, rbx
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140057618
xorps xmm6, xmm6
movsd qword [rbp + 0x510], xmm6
jmp 0x140057620
movsd xmm6, qword [rbp + 0x510]
lea rdx, [rbx + 0x20]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x5c8]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140057659
xorps xmm8, xmm8
movsd qword [rbp + 0x5c8], xmm8
jmp 0x140057662
movsd xmm8, qword [rbp + 0x5c8]
lea rdx, [rbx + 0x1d0]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x508]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005769c
xorps xmm7, xmm7
movsd qword [rbp + 0x508], xmm7
jmp 0x1400576a4
movsd xmm7, qword [rbp + 0x508]
mov r8, r12
lea rdx, [rbp + 0x200]
lea rcx, [0x140357608]
call fcn.14005ff70
movsd xmm0, qword [rax]
movsd qword [rbp - 0x38], xmm0
movsd xmm0, qword [rax + 8]
movsd qword [rbp - 0x48], xmm0
movsd xmm0, qword [rax + 0x10]
movsd qword [rbp + 0x318], xmm0
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_asin
movaps xmm7, xmm0
mulsd xmm7, qword [0x14006bc90]
movsd xmm10, qword [0x14006be28]
mulsd xmm6, xmm10
movaps xmm1, xmm8
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2
movaps xmm9, xmm0
mulsd xmm9, qword [0x14006bc90]
mulsd xmm9, xmm10
mulsd xmm9, xmm10
lea rdx, [r13 + 0x394]
xor r12d, r12d
mov qword [rsp + 0x20], r12
lea r9d, [r12 + 4]
lea r8, [rbp + 0x3fc]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140057756
xorps xmm0, xmm0
movss dword [rbp + 0x3fc], xmm0
jmp 0x14005775e
movss xmm0, dword [rbp + 0x3fc]
mulss xmm0, dword [0x14006bd6c]
movss dword [rbp + 0x2f4], xmm0
mov rcx, qword [rbp + 0x3c0]
xor rcx, qword [rbp + 0x3c8]
mov qword [rbp + 0x3c0], rcx
mov rax, qword [rbp + 0x3d0]
mov qword [rax], rcx
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x5e0], xmm0
mov qword [rbp + 0x5f0], rax
lea r13, [rbp + 0xb98]
mov rdx, r13
lea rcx, [rbp + 0x5e0]
call fcn.14004c750
mulsd xmm7, qword [0x14006bc50]
divsd xmm7, qword [0x14006bcb0]
mulsd xmm9, qword [0x14006bc50]
divsd xmm9, qword [0x14006bcb0]
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm7
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
xorps xmm7, xmm7
cvtss2sd xmm7, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
xorps xmm8, xmm8
cvtss2sd xmm8, xmm0
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm9
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
xorps xmm10, xmm10
cvtss2sd xmm10, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
xorps xmm5, xmm5
cvtss2sd xmm5, xmm0
movsd xmm3, qword [rbp + 0x300]
mulsd xmm3, xmm7
movsd xmm6, qword [rbp - 0x30]
movaps xmm4, xmm6
mulsd xmm4, xmm7
mov rcx, qword [rbp + 0x5e0]
xor rcx, qword [rbp + 0x5e8]
mov qword [rbp + 0x5e0], rcx
mov rax, qword [rbp + 0x5f0]
mov qword [rax], rcx
cvtpd2ps xmm0, xmm7
cvtps2pd xmm13, xmm0
movaps xmm1, xmm10
mulsd xmm1, xmm8
cvtpd2ps xmm0, xmm1
cvtps2pd xmm11, xmm0
movaps xmm2, xmm5
mulsd xmm2, xmm8
cvtpd2ps xmm0, xmm2
cvtps2pd xmm7, xmm0
movaps xmm1, xmm8
mulsd xmm1, qword [rbp + 0x3a8]
cvtpd2ps xmm0, xmm1
cvtps2pd xmm15, xmm0
movaps xmm2, xmm6
mulsd xmm2, xmm5
movaps xmm0, xmm3
mulsd xmm0, xmm10
addsd xmm2, xmm0
cvtpd2ps xmm0, xmm2
cvtps2pd xmm12, xmm0
mulsd xmm3, xmm5
movaps xmm0, xmm6
mulsd xmm0, xmm10
subsd xmm3, xmm0
cvtpd2ps xmm0, xmm3
cvtps2pd xmm9, xmm0
movaps xmm1, xmm6
mulsd xmm1, xmm8
cvtpd2ps xmm0, xmm1
cvtps2pd xmm6, xmm0
movsd xmm1, qword [rbp + 0x300]
movaps xmm2, xmm1
mulsd xmm2, xmm5
movaps xmm0, xmm4
mulsd xmm0, xmm10
subsd xmm2, xmm0
cvtpd2ps xmm0, xmm2
cvtps2pd xmm14, xmm0
mulsd xmm1, xmm10
mulsd xmm4, xmm5
addsd xmm1, xmm4
xorps xmm1, xmmword [0x14006c080]
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm1
cvtps2pd xmm2, xmm0
movsd xmm5, qword [rbp - 0x50]
subsd xmm5, qword [rbp + 0x318]
movsd xmm3, qword [rbp - 0x58]
subsd xmm3, qword [rbp - 0x48]
movsd xmm8, qword [rbp - 0x60]
subsd xmm8, qword [rbp - 0x38]
movaps xmm4, xmm8
mulsd xmm4, xmm7
movaps xmm0, xmm3
mulsd xmm0, xmm11
addsd xmm4, xmm0
movaps xmm1, xmm5
mulsd xmm1, xmm13
addsd xmm4, xmm1
mulsd xmm14, xmm3
movaps xmm0, xmm8
mulsd xmm0, xmm2
addsd xmm14, xmm0
mulsd xmm6, xmm5
addsd xmm14, xmm6
mulsd xmm8, xmm9
mulsd xmm3, xmm12
addsd xmm8, xmm3
mulsd xmm15, xmm5
addsd xmm8, xmm15
movsd xmm7, qword [0x14006bc40]
maxsd xmm7, xmm4
mov rbx, qword [0x140357768]
xorps xmm6, xmm6
cvtsi2ss xmm6, dword [rbx + 0xc]
movss xmm9, dword [0x14006bbe8]
mulss xmm6, xmm9
movss xmm0, dword [rbp + 0x2f4]
mulss xmm0, dword [0x14006bc88]
divss xmm0, dword [0x14006bdbc]
call sub.api_ms_win_crt_math_l1_1_0.dll_tanf
movaps xmm1, xmm6
divss xmm1, xmm0
cvtps2pd xmm3, xmm1
xorps xmm2, xmm2
cvtsi2ss xmm2, dword [rbx + 0x10]
mulss xmm2, xmm9
cvtps2pd xmm1, xmm2
mulsd xmm14, xmm3
divsd xmm14, xmm7
subsd xmm1, xmm14
mulsd xmm8, xmm3
divsd xmm8, xmm7
cvtps2pd xmm0, xmm6
addsd xmm8, xmm0
mov rcx, qword [rbp + 0x328]
xor rcx, qword [rbp + 0x330]
mov rax, qword [rbp + 0x338]
mov qword [rax], rcx
mov rbx, qword [rbp + 0x2f8]
movsd qword [rbx], xmm8
movsd qword [rbx + 8], xmm1
add r14, 0x18
add rbx, 0x10
mov qword [rbp + 0x2f8], rbx
sub qword [rbp + 0x308], 1
jne 0x1400573d0
call fcn.140007920
mov rcx, qword [0x140357778]
movss xmm3, dword [rcx + 4]
addss xmm3, xmm3
movsd xmm1, qword [rbp + 0x778]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x770]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 8], xmm0
movss dword [rbp + 0xc], xmm1
movsd xmm2, qword [rbp + 0x758]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x750]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x70], xmm0
movss dword [rbp + 0x74], xmm2
movss dword [rsp + 0x20], xmm3
mov ebx, dword [rbp + 0x3e0]
mov r9d, ebx
lea r8, [rbp + 8]
lea rdx, [rbp + 0x70]
mov rcx, rax
call fcn.1400281a0
call fcn.140007920
mov rcx, qword [0x140357778]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x778]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x770]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x80], xmm0
movss dword [rbp + 0x84], xmm1
movsd xmm2, qword [rbp + 0x768]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x760]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x78], xmm0
movss dword [rbp + 0x7c], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x80]
lea rdx, [rbp + 0x78]
mov rcx, rax
call fcn.1400281a0
call fcn.140007920
mov rcx, qword [0x140357778]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x778]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x770]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x68], xmm0
movss dword [rbp + 0x6c], xmm1
movsd xmm2, qword [rbp + 0x788]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x780]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x60], xmm0
movss dword [rbp + 0x64], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x68]
lea rdx, [rbp + 0x60]
mov rcx, rax
call fcn.1400281a0
call fcn.140007920
mov rcx, qword [0x140357778]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x778]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x770]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x58], xmm0
movss dword [rbp + 0x5c], xmm1
movsd xmm2, qword [rbp + 0x798]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x790]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x50], xmm0
movss dword [rbp + 0x54], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x58]
lea rdx, [rbp + 0x50]
mov rcx, rax
call fcn.1400281a0
call fcn.140007920
mov rcx, qword [0x140357778]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x788]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x780]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x10], xmm0
movss dword [rbp + 0x14], xmm1
movsd xmm2, qword [rbp + 0x7a8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x7a0]
cvtpd2ps xmm0, xmm0
movss dword [rbp], xmm0
movss dword [rbp + 4], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x10]
lea rdx, [rbp]
mov rcx, rax
call fcn.1400281a0
call fcn.140007920
mov rcx, qword [0x140357778]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x798]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x790]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 8], xmm0
movss dword [rbp - 4], xmm1
movsd xmm2, qword [rbp + 0x7b8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x7b0]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x10], xmm0
movss dword [rbp - 0xc], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp - 8]
lea rdx, [rbp - 0x10]
mov rcx, rax
call fcn.1400281a0
call fcn.140007920
mov rcx, qword [0x140357778]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x7c8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x7c0]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x18], xmm0
movss dword [rbp - 0x14], xmm1
movsd xmm2, qword [rbp + 0x7a8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x7a0]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x20], xmm0
movss dword [rbp - 0x1c], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x20]
mov rcx, rax
call fcn.1400281a0
call fcn.140007920
mov rcx, qword [0x140357778]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x7d8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x7d0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x178], xmm0
movss dword [rbp + 0x17c], xmm1
movsd xmm2, qword [rbp + 0x7b8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x7b0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x168], xmm0
movss dword [rbp + 0x16c], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x178]
lea rdx, [rbp + 0x168]
mov rcx, rax
call fcn.1400281a0
call fcn.140007920
mov rcx, qword [0x140357778]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x768]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x760]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x160], xmm0
movss dword [rbp + 0x164], xmm1
movsd xmm2, qword [rbp + 0x7f8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x7f0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x158], xmm0
movss dword [rbp + 0x15c], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x160]
lea rdx, [rbp + 0x158]
mov rcx, rax
call fcn.1400281a0
call fcn.140007920
mov rcx, qword [0x140357778]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x768]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x760]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x150], xmm0
movss dword [rbp + 0x154], xmm1
movsd xmm2, qword [rbp + 0x7e8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x7e0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x148], xmm0
movss dword [rbp + 0x14c], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x150]
lea rdx, [rbp + 0x148]
mov rcx, rax
call fcn.1400281a0
call fcn.140007920
mov rcx, qword [0x140357778]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x7f8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x7f0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x140], xmm0
movss dword [rbp + 0x144], xmm1
movsd xmm2, qword [rbp + 0x818]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x810]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x138], xmm0
movss dword [rbp + 0x13c], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x140]
lea rdx, [rbp + 0x138]
mov rcx, rax
call fcn.1400281a0
call fcn.140007920
mov rcx, qword [0x140357778]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x7e8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x7e0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x170], xmm0
movss dword [rbp + 0x174], xmm1
movsd xmm2, qword [rbp + 0x808]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x800]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x130], xmm0
movss dword [rbp + 0x134], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x170]
lea rdx, [rbp + 0x130]
mov rcx, rax
call fcn.1400281a0
call fcn.140007920
mov rcx, qword [0x140357778]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x818]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x810]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x128], xmm0
movss dword [rbp + 0x12c], xmm1
movsd xmm2, qword [rbp + 0x828]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x820]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x120], xmm0
movss dword [rbp + 0x124], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x128]
lea rdx, [rbp + 0x120]
mov rcx, rax
call fcn.1400281a0
call fcn.140007920
mov rcx, qword [0x140357778]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x808]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x800]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x118], xmm0
movss dword [rbp + 0x11c], xmm1
movsd xmm2, qword [rbp + 0x838]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x830]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x110], xmm0
movss dword [rbp + 0x114], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x118]
lea rdx, [rbp + 0x110]
mov rcx, rax
call fcn.1400281a0
nop
lea r9, [fcn.140001a90]
mov edx, 0x10
mov r8d, edx
lea rcx, [rbp + 0x750]
call fcn.140060fe8
mov rax, qword [0x140357778]
movsd xmm11, qword [rbp + 0x3a0]
movsd xmm12, qword [rbp - 0x28]
movsd xmm14, qword [rbp + 0x358]
movsd xmm15, qword [rbp + 0x348]
movzx r14d, byte [rbp + 0x2f0]
cmp byte [rax + 0xf], 0
je 0x14005848a
xorps xmm0, xmm0
movups xmmword [rbp + 0x328], xmm0
movabs rax, 0xff00ff00ff00ff00
mov qword [rbp + 0x330], rax
mov qword [rbp + 0x338], r13
mov r12, qword [r13]
xor r12, rax
mov qword [rbp + 0x328], r12
xor r13d, r13d
lea rax, [rbp + 0xb98]
mov qword [rax], r13
mov rdx, qword [rbp + 0x350]
add rdx, 0x18
mov qword [rsp + 0x20], r13
lea r9d, [r13 + 8]
lea r8, [rbp + 0x478]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400581ba
mov eax, r13d
mov qword [rbp + 0x478], rax
jmp 0x1400581c1
mov rax, qword [rbp + 0x478]
mov qword [rbp + 0x2f8], rax
lea rdx, [rax + 0x90]
mov qword [rsp + 0x20], r13
mov r9d, 8
lea r8, [rbp + 0x480]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400581fd
mov rbx, r13
mov qword [rbp + 0x480], rbx
jmp 0x140058204
mov rbx, qword [rbp + 0x480]
lea rdx, [rbx + 0x40]
mov qword [rsp + 0x20], r13
mov r9d, 4
lea r8, [rbp + 0x3f8]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140058235
mov eax, r13d
mov dword [rbp + 0x3f8], eax
jmp 0x14005823b
mov eax, dword [rbp + 0x3f8]
mov dword [rbp + 0x2f4], eax
mov ecx, eax
inc rcx
mov eax, 2
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400613a4
mov r13, rax
lea rdx, [rbx + 0x38]
xor ebx, ebx
mov qword [rsp + 0x20], rbx
lea r9d, [rbx + 8]
lea r8, [rbp + 0x2c8]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140058295
mov edx, ebx
mov qword [rbp + 0x2c8], rbx
jmp 0x14005829c
mov rdx, qword [rbp + 0x2c8]
mov r9d, dword [rbp + 0x2f4]
add r9, r9
mov qword [rsp + 0x20], rbx
mov r8, r13
lea rcx, [0x140357608]
call fcn.14004c210
mov rdx, qword [rbp + 0x2f8]
add rdx, 0x73
mov qword [rsp + 0x20], rbx
mov r9d, 1
lea r8, [rbp + 0x2f0]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400582ef
mov byte [rbp + 0x2f0], bl
jmp 0x1400582f6
movzx ebx, byte [rbp + 0x2f0]
cmp bl, 2
jne 0x140058311
mov edx, 0xff00ff00
lea rcx, [rbp + 0x298]
call fcn.14004cc90
jmp 0x1400583bf
cmp bl, 3
jne 0x14005832c
mov edx, 0xffff0000
lea rcx, [rbp + 0x278]
call fcn.14004cc90
jmp 0x1400583bf
cmp bl, 4
jne 0x140058344
mov edx, 0xff800080
lea rcx, [rbp + 0x268]
call fcn.14004cc90
jmp 0x1400583bf
cmp bl, 5
jne 0x14005835c
mov edx, 0xff00ffff
lea rcx, [rbp + 0x258]
call fcn.14004cc90
jmp 0x1400583bf
cmp bl, 6
jne 0x140058374
mov edx, 0xff00ffff
lea rcx, [rbp + 0x218]
call fcn.14004cc90
jmp 0x1400583bf
test bl, bl
je 0x14005837d
cmp bl, 1
jne 0x1400583bf
mov edx, 0xffffffff
lea rcx, [rbp + 0x248]
call fcn.14004cc90
test bl, bl
jne 0x1400583bf
mov rcx, r13
call fcn.140061300
mov ecx, 0xa
call fcn.1400613a4
mov r13, rax
movsd xmm0, qword [str.None]
movsd qword [rax], xmm0
movzx eax, word [0x14006b800]
mov word [r13 + 8], ax
mov rcx, r13
call fcn.14004f5f0
mov rdx, rax
lea rcx, [rbp + 0x6f0]
call fcn.140046e10
nop
lea rcx, [rbp + 0x6f0]
call fcn.140046f30
mov rbx, rax
mov dword [rsp + 0x20], 0xff
xor r9d, r9d
xor edx, edx
mov r8d, 0xff
lea rcx, [rbp + 0x238]
call fcn.140001aa0
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x60], xmm0
movaps xmm1, xmm14
subsd xmm1, qword [0x14006bc78]
cvttsd2si r8d, xmm1
movsd xmm8, qword [rbp + 0x320]
movaps xmm0, xmm8
subsd xmm0, qword [0x14006bc68]
cvttsd2si edx, xmm0
mov qword [rsp + 0x30], rbx
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [rsp + 0x60]
movss xmm0, dword [0x14006bd28]
movd ecx, xmm0
call fcn.14004f660
nop
lea rcx, [rbp + 0x6f0]
call fcn.140046d80
nop
movabs rax, 0xff00ff00ff00ff00
xor r12, rax
lea rax, [rbp + 0xb98]
mov qword [rax], r12
mov rax, qword [0x140357778]
jmp 0x140058493
movsd xmm8, qword [rbp + 0x320]
movzx ecx, byte [rax + 0x15]
test cl, cl
je 0x140058b45
cmp byte [rax + 0x14], 0
je 0x140058863
mov rdx, qword [rbp + 0x350]
add rdx, 0xaf0
xor r12d, r12d
mov qword [rsp + 0x20], r12
lea r9d, [r12 + 8]
lea r8, [rbp + 0x490]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400584e7
mov r13d, r12d
mov qword [rbp + 0x490], r12
jmp 0x1400584ee
mov r13, qword [rbp + 0x490]
test r13, r13
jne 0x14005850b
lea rdx, str.Biscote___AI
lea rcx, [rbp + 0x678]
call fcn.140046e10
jmp 0x14005868a
lea rdx, [r13 + 0x10]
mov qword [rsp + 0x20], r12
mov r9d, 4
lea r8, [rbp + 0x3f4]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005853c
mov ebx, r12d
mov dword [rbp + 0x3f4], ebx
jmp 0x140058542
mov ebx, dword [rbp + 0x3f4]
test ebx, ebx
je 0x1400584f3
lea rdx, [r13 + 8]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x498]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140058575
mov qword [rbp + 0x498], r12
jmp 0x14005857c
mov r12, qword [rbp + 0x498]
test r12, r12
jne 0x140058599
lea rdx, str.Biscote___AI
lea rcx, [rbp + 0x678]
call fcn.140046e10
jmp 0x14005868a
movsxd rcx, ebx
mov eax, 2
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400613a4
mov r13, rax
lea ecx, [rbx + rbx]
movsxd r9, ecx
mov qword [rsp + 0x20], 0
mov r8, rax
mov rdx, r12
lea rcx, [0x140357608]
call fcn.14004c210
xor r12d, r12d
mov r9d, r12d
mov rdx, r13
lea ecx, [rbx - 1]
mov r8d, r12d
movzx ecx, cl
test ebx, ebx
cmovne r8d, ecx
and r8d, 3
lea ecx, [rbx - 1]
nop word [rax + rax]
mov eax, r12d
test ebx, ebx
cmovne eax, ecx
cmp r9d, eax
jge 0x140058625
add r8d, 3
inc r9d
movzx eax, r8w
and ax, 7
add word [rdx], ax
add rdx, 2
jmp 0x140058600
mov rdx, r13
lea rcx, [rbp + 0x430]
call fcn.14005f590
nop
mov rcx, r13
call fcn.140061300
lea rdx, [rbp + 0x1d0]
lea rcx, [rbp + 0x430]
call fcn.14005f4e0
mov rbx, qword [rax]
lea rdx, [rbp + 0x1c8]
lea rcx, [rbp + 0x430]
call fcn.14005f500
lea r9, [rbp - 0x40]
mov r8, rbx
mov rdx, qword [rax]
lea rcx, [rbp + 0x678]
call fcn.1400600b0
nop
lea rcx, [rbp + 0x430]
call fcn.14005f520
nop
mov r13, qword [rbp + 0x350]
lea rdx, [r13 + 0x438]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x4a0]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400586c6
mov rdx, r12
mov qword [rbp + 0x4a0], rdx
jmp 0x1400586cd
mov rdx, qword [rbp + 0x4a0]
mov qword [rsp + 0x20], r12
mov r9d, 0x80
lea r8, [rbp + 0xa40]
lea rcx, [0x140357608]
call fcn.14004c210
lea rdx, [rbp + 0xa40]
lea rcx, [rbp + 0x328]
call fcn.14005f590
nop
lea rdx, [rbp + 0x1c0]
lea rcx, [rbp + 0x328]
call fcn.14005f4e0
mov rbx, qword [rax]
lea rdx, [rbp + 0x1b8]
lea rcx, [rbp + 0x328]
call fcn.14005f500
lea r9, [rbp - 0x3f]
mov r8, rbx
mov rdx, qword [rax]
lea rcx, [rbp + 0x730]
call fcn.1400600b0
nop
lea rcx, [rbp + 0x328]
call fcn.14005f520
nop
mov ecx, 0x1e
mov rax, qword [0x140357778]
cmp byte [rax + 0x15], 0
mov eax, 0xf
cmove ecx, eax
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
movaps xmm1, xmm14
subsd xmm1, xmm0
xorps xmm7, xmm7
cvtsd2ss xmm7, xmm1
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm8
lea r8, [0x14006b808]
lea rdx, [rbp + 0x678]
lea rcx, [rbp + 0x430]
call fcn.140046fc0
nop
lea r8, [rbp + 0x730]
mov rdx, rax
lea rcx, [rbp + 0x698]
call fcn.14005ff00
nop
mov r8d, 1
lea rdx, [0x14006b804]
mov rcx, rax
call fcn.140046f40
mov rdx, rax
lea rcx, [rbp + 0x710]
call fcn.140046de0
nop
lea rcx, [rbp + 0x698]
call fcn.140046d80
nop
lea rcx, [rbp + 0x430]
call fcn.140046d80
lea rcx, [rbp + 0x710]
call fcn.140046f30
mov rdx, rax
lea rcx, [rbp + 0x328]
call fcn.140046e10
movups xmm0, xmmword [0x140357808]
movdqa xmmword [rsp + 0x60], xmm0
mov r8, rax
lea rdx, [rsp + 0x60]
unpcklps xmm6, xmm7
movq rcx, xmm6
call fcn.140053df0
nop
lea rcx, [rbp + 0x710]
call fcn.140046d80
nop
lea rcx, [rbp + 0x730]
call fcn.140046d80
nop
lea rcx, [rbp + 0x678]
call fcn.140046d80
mov rax, qword [0x140357778]
jmp 0x140058b4f
test cl, cl
je 0x140058b45
mov rdx, qword [rbp + 0x350]
add rdx, 0xaf0
xor r12d, r12d
mov qword [rsp + 0x20], r12
lea r9d, [r12 + 8]
lea r8, [rbp + 0x4a8]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400588a9
mov r13d, r12d
mov qword [rbp + 0x4a8], r12
jmp 0x1400588b0
mov r13, qword [rbp + 0x4a8]
test r13, r13
jne 0x1400588cd
lea rdx, str.Biscote___AI
lea rcx, [rbp + 0x658]
call fcn.140046e10
jmp 0x140058a4a
lea rdx, [r13 + 0x10]
mov qword [rsp + 0x20], r12
mov r9d, 4
lea r8, [rbp + 0x3f0]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x1400588fe
mov ebx, r12d
mov dword [rbp + 0x3f0], ebx
jmp 0x140058904
mov ebx, dword [rbp + 0x3f0]
test ebx, ebx
je 0x1400588b5
lea rdx, [r13 + 8]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x4b0]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140058937
mov qword [rbp + 0x4b0], r12
jmp 0x14005893e
mov r12, qword [rbp + 0x4b0]
test r12, r12
jne 0x14005895b
lea rdx, str.Biscote___AI
lea rcx, [rbp + 0x658]
call fcn.140046e10
jmp 0x140058a4a
movsxd rcx, ebx
mov eax, 2
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400613a4
mov r13, rax
lea ecx, [rbx + rbx]
movsxd r9, ecx
mov qword [rsp + 0x20], 0
mov r8, rax
mov rdx, r12
lea rcx, [0x140357608]
call fcn.14004c210
xor r12d, r12d
mov r9d, r12d
mov rdx, r13
lea ecx, [rbx - 1]
mov r8d, r12d
movzx ecx, cl
test ebx, ebx
cmovne r8d, ecx
and r8d, 3
lea ecx, [rbx - 1]
nop dword [rax]
mov eax, r12d
test ebx, ebx
cmovne eax, ecx
cmp r9d, eax
jge 0x1400589e5
add r8d, 3
inc r9d
movzx eax, r8w
and ax, 7
add word [rdx], ax
add rdx, 2
jmp 0x1400589c0
mov rdx, r13
lea rcx, [rbp + 0x430]
call fcn.14005f590
nop
mov rcx, r13
call fcn.140061300
lea rdx, [rbp + 0x1b0]
lea rcx, [rbp + 0x430]
call fcn.14005f4e0
mov rbx, qword [rax]
lea rdx, [rbp + 0x1e0]
lea rcx, [rbp + 0x430]
call fcn.14005f500
lea r9, [rbp - 0x3e]
mov r8, rbx
mov rdx, qword [rax]
lea rcx, [rbp + 0x658]
call fcn.1400600b0
nop
lea rcx, [rbp + 0x430]
call fcn.14005f520
nop
lea rcx, [rbp + 0x658]
call fcn.140046f30
movss xmm10, dword [0x14006be18]
movss dword [rsp + 0x20], xmm10
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x6e8]
call fcn.14000a650
mov ecx, 0x1e
mov rax, qword [0x140357778]
cmp byte [rax + 0x15], 0
mov eax, 0xf
cmove ecx, eax
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
movaps xmm1, xmm14
subsd xmm1, xmm0
xorps xmm7, xmm7
cvtsd2ss xmm7, xmm1
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm8
lea rax, [rbp + 0x328]
mov qword [rsp + 0x60], rax
lea rcx, [rbp + 0x658]
call fcn.140046f30
mov rbx, rax
movzx edx, dil
lea rcx, [rbp + 0x328]
call fcn.14004ac20
nop
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rbx + r8], 0
jne 0x140058ae5
mov rdx, rbx
lea rcx, [rbp + 0x328]
call fcn.14004ac40
nop
movups xmm0, xmmword [0x140357808]
movdqa xmmword [rsp + 0x60], xmm0
lea r8, [rbp + 0x328]
lea rdx, [rsp + 0x60]
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq rcx, xmm0
call fcn.140053df0
nop
lea rcx, [rbp + 0x658]
call fcn.140046d80
mov rax, qword [0x140357778]
mov r13, qword [rbp + 0x350]
jmp 0x140058b58
mov r13, qword [rbp + 0x350]
xor r12d, r12d
movss xmm10, dword [0x14006be18]
cmp byte [rax + 0x14], 0
je 0x140058ce9
lea rdx, [r13 + 0x438]
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x528]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140058b97
mov rdx, r12
mov qword [rbp + 0x528], rdx
jmp 0x140058b9e
mov rdx, qword [rbp + 0x528]
mov qword [rsp + 0x20], r12
mov r9d, 0x80
lea r8, [rbp + 0xa40]
lea rcx, [0x140357608]
call fcn.14004c210
lea rdx, [rbp + 0xa40]
lea rcx, [rbp + 0x430]
call fcn.14005f590
nop
lea rdx, [rbp + 0x1d8]
lea rcx, [rbp + 0x430]
call fcn.14005f4e0
mov rbx, qword [rax]
lea rdx, [rbp + 0x1a8]
lea rcx, [rbp + 0x430]
call fcn.14005f500
lea r9, [rbp - 0x3d]
mov r8, rbx
mov rdx, qword [rax]
lea rcx, [rbp + 0x698]
call fcn.1400600b0
nop
lea rcx, [rbp + 0x430]
call fcn.14005f520
nop
mov ecx, 0x1e
mov rax, qword [0x140357778]
cmp byte [rax + 0x14], 0
mov eax, 0xf
cmove ecx, eax
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
movaps xmm1, xmm14
subsd xmm1, xmm0
xorps xmm7, xmm7
cvtsd2ss xmm7, xmm1
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm8
lea rax, [rbp + 0x328]
mov qword [rsp + 0x60], rax
lea rcx, [rbp + 0x698]
call fcn.140046f30
mov rbx, rax
movzx edx, r15b
lea rcx, [rbp + 0x328]
call fcn.14004ac20
nop
mov r13, 0xffffffffffffffff
mov r8, r13
nop word [rax + rax]
inc r8
cmp byte [rbx + r8], 0
jne 0x140058c90
mov rdx, rbx
lea rcx, [rbp + 0x328]
call fcn.14004ac40
nop
movups xmm0, xmmword [0x140357808]
movdqa xmmword [rsp + 0x60], xmm0
lea r8, [rbp + 0x328]
lea rdx, [rsp + 0x60]
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq rcx, xmm0
call fcn.140053df0
nop
lea rcx, [rbp + 0x698]
call fcn.140046d80
mov rax, qword [0x140357778]
jmp 0x140058cf0
mov r13, 0xffffffffffffffff
cmp byte [rax + 0x13], 0
je 0x140058eff
cvttss2si edx, dword [rbp + 0x398]
lea rcx, [rbp + 0x5e0]
call fcn.14005fd20
nop
mov r9d, 1
lea r8, [0x14006b814]
xor edx, edx
lea rcx, [rbp + 0x5e0]
call fcn.14004b010
mov rdx, rax
lea rcx, [rbp + 0x3c0]
call fcn.140046de0
nop
mov r8d, 2
lea rdx, [0x14006b810]
lea rcx, [rbp + 0x3c0]
call fcn.140046f40
mov rdx, rax
lea rcx, [rbp + 0x430]
call fcn.140046de0
nop
lea rcx, [rbp + 0x3c0]
call fcn.140046d80
nop
lea rcx, [rbp + 0x5e0]
call fcn.140046d80
lea rcx, [rbp + 0x430]
call fcn.140046f30
movss dword [rsp + 0x20], xmm10
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x2c0]
call fcn.14000a650
lea rax, [rbp + 0x328]
mov qword [rsp + 0x60], rax
lea rcx, [rbp + 0x430]
call fcn.140046f30
mov rbx, rax
movzx edx, sil
lea rcx, [rbp + 0x328]
call fcn.14004ac20
nop
mov r8, r13
inc r8
cmp byte [rbx + r8], 0
jne 0x140058dd3
mov rdx, rbx
lea rcx, [rbp + 0x328]
call fcn.14004ac40
nop
mov dword [rsp + 0x20], 0xff
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x228]
call fcn.140001aa0
addsd xmm15, qword [0x14006bc58]
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm15
movss xmm0, dword [rbp + 0x2c0]
mulss xmm0, xmm9
cvtps2pd xmm1, xmm0
movsd xmm7, qword [rbp + 0x310]
movaps xmm2, xmm7
subsd xmm2, xmm1
cvtpd2ps xmm3, xmm2
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x60], xmm0
lea r8, [rbp + 0x328]
lea rdx, [rsp + 0x60]
unpcklps xmm3, xmm6
movq rcx, xmm3
call fcn.140053df0
lea rax, [rbp + 0x328]
mov qword [rsp + 0x60], rax
lea rcx, [rbp + 0x430]
call fcn.140046f30
mov rbx, rax
movzx edx, r14b
lea rcx, [rbp + 0x328]
call fcn.14004ac20
nop
mov r8, r13
nop dword [rax]
inc r8
cmp byte [rbx + r8], 0
jne 0x140058e90
mov rdx, rbx
lea rcx, [rbp + 0x328]
call fcn.14004ac40
nop
movss xmm0, dword [rbp + 0x2c0]
mulss xmm0, xmm9
cvtps2pd xmm1, xmm0
subsd xmm7, xmm1
xorps xmm2, xmm2
cvtsd2ss xmm2, xmm7
movups xmm0, xmmword [0x140357808]
movdqa xmmword [rsp + 0x60], xmm0
lea r8, [rbp + 0x328]
lea rdx, [rsp + 0x60]
unpcklps xmm2, xmm6
movq rcx, xmm2
call fcn.140053df0
nop
lea rcx, [rbp + 0x430]
call fcn.140046d80
mov rax, qword [0x140357778]
cmp byte [rax + 0x11], 0
je 0x140058f84
lea rcx, [0x140357808]
call fcn.140003a70
mov r9d, eax
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm14
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm8
movss dword [rbp + 0x108], xmm0
movss dword [rbp + 0x10c], xmm1
mov rax, qword [0x140357768]
mov eax, dword [rax + 0xc]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x100], xmm0
mov dword [rbp + 0x104], 0
movss xmm0, dword [0x14006bc48]
movss dword [rsp + 0x20], xmm0
lea r8, [rbp + 0x108]
lea rdx, [rbp + 0x100]
mov rcx, qword [rbp + 0x180]
call fcn.1400281a0
mov rbx, qword [0x140357768]
mov eax, dword [rbx + 0xc]
cdq
sub eax, edx
sar eax, 1
xorps xmm0, xmm0
cvtsi2sd xmm0, eax
subsd xmm11, xmm0
mov eax, dword [rbx + 0x10]
cdq
sub eax, edx
sar eax, 1
xorps xmm0, xmm0
cvtsi2sd xmm0, eax
subsd xmm12, xmm0
mulsd xmm12, xmm12
mulsd xmm11, xmm11
addsd xmm12, xmm11
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm12
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x140058fdb
xorps xmm6, xmm6
sqrtss xmm6, xmm1
jmp 0x140058fe6
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm6, xmm0
xorps xmm1, xmm1
xor eax, eax
movups xmmword [rbp + 0x328], xmm1
mov qword [rbp + 0x338], rax
lea rdx, [rbp + 0xb98]
lea rcx, [rbp + 0x328]
call fcn.14004c750
nop
mov rax, qword [0x140357730]
mov rdx, qword [rax + 0xc0]
mov rbx, qword [rbp + 0x3b0]
add rdx, rbx
mov qword [rsp + 0x20], r12
mov r9d, 4
lea r8, [rbp + 0x3ec]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x140059054
xorps xmm7, xmm7
movss dword [rbp + 0x3ec], xmm7
jmp 0x14005905c
movss xmm7, dword [rbp + 0x3ec]
mov rax, qword [0x140357730]
mov rdx, qword [rax + 0xc8]
add rdx, rbx
mov qword [rsp + 0x20], r12
mov r9d, 4
lea r8, [rbp + 0x3e8]
lea rcx, [0x140357608]
call fcn.14004c210
test al, al
jne 0x14005909c
xorps xmm0, xmm0
movss dword [rbp + 0x3e8], xmm0
jmp 0x1400590a4
movss xmm0, dword [rbp + 0x3e8]
addss xmm0, dword [0x14006bba4]
comiss xmm0, xmm7
setae dl
mov rcx, qword [rbp + 0x328]
xor rcx, qword [rbp + 0x330]
mov qword [rbp + 0x328], rcx
mov rax, qword [rbp + 0x338]
mov qword [rax], rcx
mov rcx, qword [0x140357798]
test dl, dl
je 0x140059110
mov rax, qword [0x140357728]
movd xmm0, dword [rax + 0x10]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm6
jbe 0x140059110
movss xmm0, dword [rcx + 0x90]
comiss xmm0, xmm6
jbe 0x140059110
movss dword [rcx + 0x90], xmm6
mov rax, qword [rbp + 0x450]
mov qword [rcx + 0x60], rax
movsd xmm9, qword [0x14006be28]
movsd xmm11, qword [0x14006bc90]
movsd xmm13, qword [0x14006bc50]
movsd xmm14, qword [0x14006bcb0]
jmp 0x140059140
mov rcx, qword [0x140357798]
xor r12d, r12d
mov edx, dword [rbp + 0x3b8]
inc edx
mov dword [rbp + 0x3b8], edx
cmp edx, dword [rcx + 0x70]
jb 0x1400556f0
movabs r14, 0xff00ff00ff00ff00
lea r15, [rbp + 0xb98]
mov rax, qword [0x140357728]
cmp byte [rax], 0
je 0x14005919d
cmp qword [rcx + 0x60], 0
je 0x14005919d
mov ecx, dword [0x140356728]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x14005919d
mov rcx, qword [0x140357798]
mov rcx, qword [rcx + 0x60]
call fcn.14004dd90
nop
mov rax, qword [rbp + 0x620]
xor rax, r14
mov qword [r15], rax
mov rcx, qword [rbp + 0xac0]
xor rcx, rsp
call fcn.140060cf0
lea r11, [rsp + 0xc70]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
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